./0000775000175000017500000000000012176660654010640 5ustar vborosvboros./Parallel/0000775000175000017500000000000012176660653012373 5ustar vborosvboros./Parallel/CheckPointLoader.h0000664000175000017500000000723612176660653015732 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCHECKPOINTLOADER_H #define ESYS_LSMCHECKPOINTLOADER_H #include "Model/BondedInteraction.h" #include "Parallel/IterativeReader.h" #include "Model/Particle.h" #include "Model/BondedInteractionCpData.h" #include #include #include namespace esys { namespace lsm { typedef std::vector StringVector; /** * Objects of this class load particle and interaction check-point * data from file and initialise a specified object via the * CheckPointLoader::loadInto method. */ class CheckPointLoader { public: class ParticleData : public CParticle { public: ParticleData() : CParticle() { } void read(std::istream &iStream) { loadCheckPointData(iStream); } }; class ConnectionData : public BondedInteractionCpData { public: ConnectionData() : BondedInteractionCpData() { } void read(std::istream &iStream) { loadCheckPointData(iStream); } }; class ParticleReader : public IterativeReader > { public: typedef IterativeReader >::Iterator Iterator; ParticleReader(std::istream &iStream) : IterativeReader >(iStream) { } virtual void initialise() { int numParticles = 0; getIStream() >> numParticles; setNumElements(numParticles); IterativeReader >::initialise(); } }; class ConnectionReader : public IterativeReader > { public: ConnectionReader(std::istream &iStream) : IterativeReader >(iStream) { } virtual void initialise() { int numConnections = 0; getIStream() >> numConnections; setNumElements(numConnections); IterativeReader >::initialise(); } }; CheckPointLoader(const StringVector &fileNames) : m_fileNames(fileNames) { } template void loadInto(TmplLsmData &lsmData) { for ( StringVector::const_iterator it = m_fileNames.begin(); it != m_fileNames.end(); it++ ) { std::ifstream iStream(it->c_str()); ParticleReader pReader(iStream); lsmData.template addParticles(pReader.getIterator()); int numConnectionGroups = 0; iStream >> numConnectionGroups; for (int i = 0; i < numConnectionGroups; i++) { ConnectionReader cReader(iStream); lsmData.addConnections(cReader.getIterator()); } } } private: StringVector m_fileNames; }; } } #endif ./Parallel/GeometryReader.h0000664000175000017500000001367512176660653015476 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGEOMETRYREADER_H #define ESYS_LSMGEOMETRYREADER_H #include "Foundation/vec3.h" #include "Parallel/IterativeReader.h" #include "Geometry/GeometryInfo.h" #include "Geometry/SimpleParticleData.h" #include #include #include typedef std::vector BoolVector; typedef std::vector IntVector; typedef std::vector Vec3Vector; /** * Earth Systems Science Computational Centre namespace. */ namespace esys { /** * Lattice Solid Model namespace. */ namespace lsm { class ParticleIterator : public IStreamIterator { public: typedef IStreamIterator::value_type value_type; ParticleIterator(std::istream &iStream, int numElements, bool is2d = true) : IStreamIterator(iStream, numElements), m_is2d(is2d) { } protected: virtual void readDataFromStream() { IStreamIterator::readDataFromStream(); double mass = M_PI*m_data.getRadius() * m_data.getRadius(); if (!m_is2d) { mass *= (4.0/3.0)*m_data.getRadius(); } m_data.setMass(mass); } private: bool m_is2d; }; /** * Creates iterator for parsing particle data from a stream. */ class ParticleReader : public IterativeReader { public: /** * Constructs reader. */ ParticleReader(std::istream &iStream, bool is2d); /** * Reads from iStream to determine the number * of particles expected in the stream and constructs * an iterator. */ virtual void initialise(); /** * Returns particle type as string. */ const std::string &getParticleType(); protected: virtual ParticleIterator *createNewIterator(); private: std::string m_particleType; bool m_is2d; }; /** * Represents a connections between a pair of particles. */ class SimpleConnectionData { public: typedef SimpleParticleData::Id Id; typedef SimpleParticleData::Tag Tag; SimpleConnectionData(); SimpleConnectionData(Id p1Id, Id p2Id, Tag tag); bool operator==(const SimpleConnectionData &particleData) const; const Id &getP1Id() const; const Id &getP2Id() const; const Tag &getTag() const; void read(std::istream &istream); void write(std::ostream &write) const; private: Id m_particle1Id; Id m_particle2Id; Tag m_tag; }; std::istream &operator>>(std::istream &iStream, SimpleConnectionData &connectionData); std::ostream &operator<<(std::ostream &oStream, const SimpleConnectionData &connectionData); /** * Creates iterator for parsing particle-connection data from a stream. */ class ConnectionReader : public IterativeReader > { public: /** * Constructs reader. */ ConnectionReader(std::istream &iStream); /** * Reads from iStream to determine the number * of connections expected in the stream and * creates an iterator. */ virtual void initialise(); private: }; /** * Objects of this class can be used to parse geometry (.geo) files * generated by gengeo. */ class GeometryReader { public: typedef ParticleReader::Iterator ParticleIterator; typedef ConnectionReader::Iterator ConnectionIterator; /** * Initialises the reader. Reads file meta header-info. * * @param fileName Name of geometry file. * * @throws std::runtime_error if file does not exist or is an * unsuitable format. */ GeometryReader(const std::string &fileName); /** * Initialises the reader. Reads file meta header-info. * * @param iStream Input stream from which geometry data is read. * * @throws std::runtime_error if stream data is in an * unsuitable format. */ GeometryReader(std::istream &iStream); /** * */ virtual ~GeometryReader(); /** * Returns the name of the file associated with this * geometry reader. */ const std::string &getFileName() const; /** * Returns particle type as string. */ const std::string &getParticleType(); /** * Returns a GeometryInfo object containing data * associated with the file/stream of this reader. */ const GeometryInfo &getGeometryInfo() const; /** * Returns iterator for enumerating particle data from file. */ ParticleIterator &getParticleIterator(); /** * Returns iterator for enumerating particle-connection data from file. */ ConnectionIterator &getConnectionIterator(); protected: /** * Reads/parses meta header-information from geometry file. */ void initialise(); private: GeometryReader(const GeometryReader &geoReader); GeometryReader &operator=(const GeometryReader &geoReader) const; class Impl; Impl *m_pImpl; }; } // namespace lsm } // namespace esys #endif ./Parallel/BMesh2D_cmd.cpp0000664000175000017500000000267212176660653015115 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/BMesh2D_cmd.h" #include "Parallel/sublattice_cmd.h" BondedMesh2DIGCommand::BondedMesh2DIGCommand(const MpiRankAndComm& globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDBONDEDMESH2DIG) {} void BondedMesh2DIGCommand::appendMesh2DParam(const BMesh2DIP &MeshPrms) { append(MeshPrms.getName().c_str()); append(MeshPrms.getMeshName().c_str()); append(MeshPrms.k); append(MeshPrms.brk); } void BondedMesh2DIGCommand::appendGapBuildPrms(const MeshGapBuildPrms &buildPrms) { append(buildPrms.getTypeString().c_str()); append(buildPrms.m_maxGap); } void BondedMesh2DIGCommand::appendTagBuildPrms(const MeshTagBuildPrms &buildPrms) { append(buildPrms.getTypeString().c_str()); append(buildPrms.m_tag); append(buildPrms.m_mask); } ./Parallel/ASubLattice.h0000664000175000017500000001216112176660653014705 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ASUBLATTICE_H #define __ASUBLATTICE_H // -- project includes -- #include "Model/EWallInteractionGroup.h" #include "Model/BWallInteractionGroup.h" #include "Model/SoftBWallInteractionGroup.h" #include "Model/ViscWallIG.h" #include "Parallel/CheckPointable.h" #include "Foundation/vec3.h" // -- system includes -- #include #include using std::string; class MpiWTimers; class TML_Comm; /*! \brief Abstract base class for sublattices. */ class ASubLattice : public esys::lsm::CheckPointable { private: std::string m_particleType; protected: // -- neighbortable -- public: typedef std::pair ParticleIdPair; typedef std::vector ParticleIdPairVector; typedef std::vector IdVector; virtual ~ASubLattice(); void setNTSize(int); virtual void setParticleType(const std::string &particleType) { m_particleType = particleType; } virtual const std::string &getParticleType() const { return m_particleType; } virtual void setTimeStepSize(double dt) = 0; virtual vector getCommCoords() const=0; virtual vector getCommDims() const=0; virtual void receiveParticles()=0; virtual void receiveConnections()=0; virtual void addWall()=0; virtual void addElasticWIG()=0; virtual void addBondedWIG()=0; virtual void addDirBondedWIG()=0; virtual void addViscWIG()=0; virtual void initNeighborTable(const Vec3&,const Vec3&)=0; virtual void initNeighborTable(const Vec3&,const Vec3&,const vector&)=0; virtual void addPairIG()=0; virtual void addTaggedPairIG()=0; virtual void addTriMesh()=0; virtual void addTriMeshIG()=0; virtual void addBondedTriMeshIG()=0; virtual void addMesh2D()=0; virtual void addMesh2DIG()=0; virtual void addBondedMesh2DIG()=0; virtual void addSingleIG()=0; virtual void addBondedIG()=0; virtual void addCappedBondedIG()=0; virtual void addShortBondedIG()=0; virtual void addRotBondedIG()=0; virtual void addRotThermBondedIG()=0; virtual void addDamping()=0; //virtual void addRotDamping()=0; virtual void setExIG()=0; virtual void initComplex(); virtual void removeIG()=0; virtual void getWallPos()=0; virtual void getWallForce()=0; virtual const MPI_Comm &getWorkerComm() const = 0; virtual void rebuildParticleArray()=0; virtual void rebuildInteractions()=0; virtual void searchNeighbors()=0; virtual void checkNeighbors()=0; virtual void updateInteractions()=0; virtual int getNumParticles() = 0; virtual std::pair findParticleNearestTo(const Vec3 &pt) = 0; virtual std::pair getParticlePosn(int particleId) = 0; // virtual ParticleIdPairVector getBondGroupIdPairs(const std::string &groupName) = 0; virtual void oneStep()=0; virtual void exchangePos()=0; // moving stuff around virtual void moveParticleTo()=0; virtual void moveTaggedParticlesBy() = 0; virtual void moveSingleParticleTo(int particleId, const Vec3 &posn)=0; virtual void moveWallBy()=0; virtual void setWallNormal()=0; virtual void applyForceToWall()=0; virtual void setVelocityOfWall()=0; virtual void setParticleVelocity()=0; virtual void setParticleDensity()=0; virtual void setTaggedParticleVel()=0; virtual void setParticleAngularVelocity(){}; virtual void setParticleNonDynamic()=0; virtual void setParticleNonRot()=0; virtual void tagParticleNearestTo()=0; virtual void moveSingleNode()=0; virtual void moveTaggedNodes()=0; virtual void translateMeshBy(const std::string &meshName, const Vec3 &translation)=0; virtual void setTimer(MpiWTimers &timers) = 0; virtual void do2dCalculations(bool do2d) = 0; // field functions virtual void countParticles()=0; // "new" field functions virtual void addScalarParticleField()=0; virtual void addVectorParticleField()=0; virtual void addScalarInteractionField()=0; virtual void addVectorInteractionField()=0; virtual void addVectorTriangleField()=0; virtual void addScalarTriangleField()=0; virtual void sendFieldData()=0; virtual void addVectorWallField()=0; // output virtual void printStruct()=0; virtual void printData()=0; virtual void printTimes()=0; // -- mesh data exchange -- virtual void getMeshNodeRef()=0; virtual void getMeshFaceRef()=0; virtual void getMesh2DStress()=0; virtual void getTriMeshForce()=0; virtual void getParticleData(const IdVector &particleIdVector)=0; // checkpointing virtual void loadCheckPointData(std::istream&){}; }; #endif //__ASUBLATTICE_H ./Parallel/GeometryReader.cpp0000664000175000017500000001671112176660653016023 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/GeometryReader.h" #include "Foundation/console.h" #include #include #include #include namespace esys { namespace lsm { //=============================================================================== ParticleReader::ParticleReader(std::istream &iStream, bool is2d) : IterativeReader(iStream), m_is2d(is2d) { } void ParticleReader::initialise() { std::string token; while ((!getIStream().eof()) && (token != "BeginParticles")) { getIStream() >> token; } if (token != "BeginParticles") { throw std::runtime_error("Could not find 'BeginParticles' token in stream."); } getIStream() >> m_particleType; int numParticles = 0; getIStream() >> numParticles; setNumElements(numParticles); IterativeReader::initialise(); } ParticleIterator *ParticleReader::createNewIterator() { return new ParticleIterator(getIStream(), getNumElements(), m_is2d); } const std::string &ParticleReader::getParticleType() { if (!this->isInitialised()) { initialise(); } return m_particleType; } //=============================================================================== SimpleConnectionData::SimpleConnectionData() : m_particle1Id(-1), m_particle2Id(-1), m_tag(-1) { } SimpleConnectionData::SimpleConnectionData(Id p1Id, Id p2Id, Tag tag) : m_particle1Id(p1Id), m_particle2Id(p2Id), m_tag(tag) { } bool SimpleConnectionData::operator==( const SimpleConnectionData &particleData ) const { return ( (getP1Id() == particleData.getP1Id()) && (getP2Id() == particleData.getP2Id()) && (getTag() == particleData.getTag()) ); } const SimpleConnectionData::Id &SimpleConnectionData::getP1Id() const { return m_particle1Id; } const SimpleConnectionData::Id &SimpleConnectionData::getP2Id() const { return m_particle2Id; } const SimpleConnectionData::Tag &SimpleConnectionData::getTag() const { return m_tag; } void SimpleConnectionData::read(std::istream &istream) { istream >> m_particle1Id >> m_particle2Id >> m_tag; } void SimpleConnectionData::write(std::ostream &oStream) const { oStream << getP1Id() << " " << getP2Id() << " " << getTag(); } std::istream &operator>>(std::istream &iStream, SimpleConnectionData &connectionData) { connectionData.read(iStream); return iStream; } std::ostream &operator<<(std::ostream &oStream, const SimpleConnectionData &connectionData) { connectionData.write(oStream); return oStream; } //=============================================================================== ConnectionReader::ConnectionReader(std::istream &iStream) : IterativeReader >(iStream) { } void ConnectionReader::initialise() { std::string token; while ((!getIStream().eof()) && (token != "BeginConnect")) { getIStream() >> token; } if (token != "BeginConnect") { throw std::runtime_error("Could not find 'BeginConnect' token in stream."); } int numConnections = 0; getIStream() >> numConnections; setNumElements(numConnections); IterativeReader >::initialise(); } //=============================================================================== class GeometryReader::Impl { public: Impl(const std::string &fileName); Impl(std::istream &iStream); ~Impl(); void initialise(); void initialiseFile(); void initialiseStream(); typedef std::auto_ptr ParticleReaderPtr; typedef std::auto_ptr ConnectionReaderPtr; typedef std::auto_ptr IStreamPtr; std::string m_fileName; GeometryInfo m_geoInfo; IStreamPtr m_iStreamPtr; std::istream *m_pIStream; ParticleReaderPtr m_particleReaderPtr; ConnectionReaderPtr m_connectionReaderPtr; }; GeometryReader::Impl::Impl(const std::string &fileName) : m_fileName(fileName), m_geoInfo(), m_iStreamPtr(), m_pIStream(NULL), m_particleReaderPtr(), m_connectionReaderPtr() { } GeometryReader::Impl::Impl(std::istream &iStream) : m_fileName(), m_geoInfo(), m_iStreamPtr(), m_pIStream(&iStream), m_particleReaderPtr(), m_connectionReaderPtr() { } void GeometryReader::Impl::initialiseStream() { m_geoInfo.read(*m_pIStream); m_particleReaderPtr = ParticleReaderPtr(new ParticleReader(*m_pIStream, m_geoInfo.is2d())); m_connectionReaderPtr = ConnectionReaderPtr(new ConnectionReader(*m_pIStream)); } void GeometryReader::Impl::initialiseFile() { m_iStreamPtr = IStreamPtr(new std::ifstream(m_fileName.c_str())); m_pIStream = m_iStreamPtr.get(); // check if file is open if(!(*m_pIStream)){ throw std::runtime_error("Can not open geometry description file " + m_fileName); } console.Debug() << "Reading geometry file " << m_fileName << " open \n"; initialiseStream(); } void GeometryReader::Impl::initialise() { if (m_pIStream == NULL) { initialiseFile(); } else { initialiseStream(); } } GeometryReader::Impl::~Impl() { } GeometryReader::GeometryReader(const std::string &fileName) : m_pImpl(new Impl(fileName)) { m_pImpl->initialise(); } GeometryReader::GeometryReader(std::istream &iStream) : m_pImpl(new Impl(iStream)) { m_pImpl->initialise(); } GeometryReader::~GeometryReader() { delete m_pImpl; } const GeometryInfo &GeometryReader::getGeometryInfo() const { return m_pImpl->m_geoInfo; } const std::string &GeometryReader::getFileName() const { return m_pImpl->m_fileName; } const std::string &GeometryReader::getParticleType() { return m_pImpl->m_particleReaderPtr->getParticleType(); } GeometryReader::ParticleIterator &GeometryReader::getParticleIterator() { return m_pImpl->m_particleReaderPtr->getIterator(); } GeometryReader::ConnectionIterator &GeometryReader::getConnectionIterator() { return m_pImpl->m_connectionReaderPtr->getIterator(); } } // namespace lsm } // namespace esys ./Parallel/MeshReader.h0000664000175000017500000000432012176660653014562 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH_READER_H #define __MESH_READER_H //-- Project includes #include "Model/MeshData.h" #include "Parallel/IterativeReader.h" //-- STL includes -- #include using std::string; namespace esys { namespace lsm //!Lattice Solid Model namespace. { /*! \class NodeReader \brief read a block of nodes from a Finley mesh file. \author Steffen Abe $Date$ $Revision$ */ class NodeReader : public IterativeReader > { public: NodeReader(std::istream&); virtual void initialise(); }; /*! \class TriReader \brief read a block of triangles from a Finley mesh file. \author Steffen Abe $Date$ $Revision$ */ class TriReader : public IterativeReader > { public: TriReader(std::istream&); virtual void initialise(); }; /*! \class MeshReader \brief class to read triangle meshes from Finley mesh format files \author Steffen Abe $Date$ $Revision$ */ class MeshReader { private: class Impl; Impl *m_impl_ptr; // pointer to the implementation public: // types typedef NodeReader::Iterator NodeIterator; typedef TriReader::Iterator TriIterator; // functions MeshReader(const string&); ~MeshReader(); NodeIterator &getNodeIterator(); TriIterator &getTriIterator(); }; } // end namespace lsm } // end namespace esys #endif // __MESH_READER_H ./Parallel/mpibuf.cpp0000664000175000017500000001246312176660653014367 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mpibuf.h" #include AMPIBufferPP::AMPIBufferPP(MPI_Comm comm):AMPIBuffer(comm) {} void AMPIBuffer::append(const Vec3 & V) { append(V.X()) ; append(V.Y()) ; append(V.Z()) ; } Vec3 AMPIBuffer::pop_vector() { double x=pop_double(); double y=pop_double(); double z=pop_double(); return Vec3(x,y,z); } /*! Constructor. Allocates the buffer and sets the MPI communicator to be used for send/receive operations. \param comm the MPI communicator \param s the size of the buffer */ CMPIBuffer::CMPIBuffer(MPI_Comm comm,int s):AMPIBufferPP(comm) { m_buffersize=s; m_buffer=new char[m_buffersize]; // get increments for int,double MPI_Pack_size(1,MPI_INT,m_comm,&m_int_increment); MPI_Pack_size(1,MPI_DOUBLE,m_comm,&m_dbl_increment); m_position=0; } CMPIBuffer::~CMPIBuffer() { delete m_buffer; } /*! Sends the contents of the buffer to a given destination. \param dest the rank of the destination process in the current communicator \param tag the message tag \warning It is not checked if the destination actually exists. */ void CMPIBuffer::sendTo(int dest,int tag) { MPI_Send(m_buffer,m_position,MPI_PACKED,dest,tag,m_comm); } /*! Recieves a message from a given source and stores it in the buffer. It is assumed that the buffer is large enough the take the message. If no source and no tag are given, any message from any source is accepted. \warning No check if the buffer is big enough \param src rank of the sender in the current communicator, defaults to MPI_ANY_SOURCE \param tag the message tag, defaults to MPI_ANY_TAG */ void CMPIBuffer::receiveFrom(int src,int tag) { MPI_Recv(m_buffer,m_buffersize,MPI_PACKED,src,tag,m_comm,&m_status) ; m_position=0; } /*! Append an integer to the buffer. \warning No check for overflow */ void CMPIBuffer::append(int i) { MPI_Pack(&i,1,MPI_INT,m_buffer,m_buffersize,&m_position,m_comm); } /*! Append a double to the buffer. \warning No check for overflow */ void CMPIBuffer::append(double d) { MPI_Pack(&d,1,MPI_DOUBLE,m_buffer,m_buffersize,&m_position,m_comm); } /*! Append a string to the buffer. The string appended is a normal (zero-terminated) C-string, but is internally handeled by packing the length frist and then the string. \warning No check for overflow */ void CMPIBuffer::append(const char* str) { int len=strlen(str); MPI_Pack(&len,1,MPI_INT,m_buffer,m_buffersize,&m_position,m_comm); MPI_Pack((void *)str,len,MPI_CHAR,m_buffer,m_buffersize,&m_position,m_comm); } /*! Append an integer to the buffer with overflow check. If the buffer is big enough the integer is appended, if not nothing is done. \return true if the append succeded, false otherwise */ bool CMPIBuffer::append_checked(int i) { bool res; if(m_position+m_int_increment class TRotSubLattice : public TSubLattice { protected: // functions doing the actual work adding interaction groups virtual bool doAddPIG(const string&,const string&,CVarMPIBuffer&,bool tagged=false); virtual bool doAddDamping(const string&,CVarMPIBuffer&); public: TRotSubLattice(const esys::lsm::CLatticeParam &prm, int rank, MPI_Comm comm, MPI_Comm worker_comm); virtual ~TRotSubLattice(); virtual void setParticleAngularVelocity(); virtual void addRotBondedIG(); virtual void addRotThermBondedIG(); }; #include "Parallel/RotSubLattice.hpp" #endif //__ROTSUBLATTICE_H ./Parallel/SubLattice.h0000664000175000017500000001750212176660653014610 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SUBLATTICE_H #define __SUBLATTICE_H // -- project includes -- #include "Parallel/mpibuf.h" #include "Parallel/mpivbuf.h" #include "Parallel/ASubLattice.h" #include "Parallel/LatticeParam.h" #include "Foundation/Timer.h" #include "Model/TriMesh.h" #include "Model/Mesh2D.h" // -- interactions -- #include "Model/Interaction.h" #include "Model/EWallInteractionGroup.h" #include "Model/BWallInteractionGroup.h" #include "Model/ViscWallIG.h" #include "Model/SoftBWallInteractionGroup.h" #include "Model/RotBondedInteraction.h" #include "Model/RotElasticInteraction.h" #include "Model/RotFricInteraction.h" // -- fields -- #include "Fields/FieldSlave.h" #include "Fields/ScalarParticleFieldSlave.h" #include "Fields/VectorParticleFieldSlave.h" #include "Fields/ScalarInteractionFieldSlave.h" //--- TML includes --- #include "tml/comm/comm.h" #include "tml/comm/comm_world.h" //--- MPI includes --- #include //--- STL includes --- #include #include #include using std::vector; using std::map; using std::string; template class ParallelParticleArray; class AParallelInteractionStorage; /*! \brief Class for a Sublattice. */ template class TSubLattice : public ASubLattice { protected: typedef ParallelParticleArray ParticleArray; // -- particles storage-- ParticleArray *m_ppa; // -- interaction storage -- map m_dpis; //! dynamic interactions map m_bpis; //! persistent interactions typedef map*> NameIGroupMap; NameIGroupMap m_singleParticleInteractions; //! Body/gravitational force interactions // -- special interaction groups -- map m_damping; map*> m_WIG; map m_walls; map m_mesh; map m_mesh2d; // -- parameters -- double m_dt; // time step for integration double m_nrange; // search range for neighbor table // double m_rmax; // max. particle radius double m_alpha; // search range padding int m_last_ns; // timestamp of last neighborsearch // Temporary storage of connections map > m_temp_conn; // -- MPI -- int m_rank; //!< rank in m_comm MPI_Comm m_comm; TML_Comm m_tml_comm; MPI_Comm m_worker_comm; //!< MPI communicator between workers (excl. master) TML_Comm m_tml_worker_comm; //!< TML version of the communicator between workers (excl. master) // int m_num_workers; /** * Process partitioning, non-zero entries are taken literally, * zero entries are computed via MPI_Dims_create. */ esys::lsm::CLatticeParam::ProcessDims m_dims; // -- times -- double packtime; double unpacktime; double commtime; double forcetime; // -- fields -- // -- "new" fields -- map m_field_slaves; MpiWTimers *m_pTimers; // -- private functions -- void calcForces(); void zeroForces(); void integrate(double); void integrateTherm(double dt); void zeroHeat(); void thermExpansion(); void calcHeatFrict(); void calcHeatTrans(); // functions doing the actual work adding interaction groups virtual bool doAddPIG(const string&,const string&,CVarMPIBuffer&,bool tagged=false); virtual bool doAddDamping(const string&,CVarMPIBuffer&); public: TSubLattice(const esys::lsm::CLatticeParam &prm, int rank, MPI_Comm comm, MPI_Comm worker_comm); virtual ~TSubLattice(); virtual void setTimeStepSize(double dt); virtual vector getCommCoords() const {return m_ppa->getCommCoords();}; virtual vector getCommDims() const {return m_ppa->getCommDims();}; virtual void receiveParticles(); virtual void receiveConnections(); virtual const MPI_Comm &getWorkerComm() const {return m_worker_comm;} virtual void initNeighborTable(const Vec3&,const Vec3&); virtual void initNeighborTable(const Vec3&,const Vec3&,const vector&); virtual void addWall(); virtual void addElasticWIG(); virtual void addBondedWIG(); virtual void addDirBondedWIG(); virtual void addViscWIG(); virtual void addTriMesh(); virtual void addTriMeshIG(); virtual void addBondedTriMeshIG(); virtual void addMesh2D(); virtual void addMesh2DIG(); virtual void addBondedMesh2DIG(); virtual void addPairIG(); virtual void addTaggedPairIG(); virtual void addSingleIG(); virtual void addBondedIG(); virtual void addCappedBondedIG(); virtual void addShortBondedIG(); virtual void addRotBondedIG(); virtual void addRotThermBondedIG(); virtual void addDamping(); virtual void setExIG(); virtual void removeIG(); virtual void getWallPos(); virtual void getWallForce(); virtual void oneStep(); virtual void oneStepTherm(); virtual void exchangePos(); void setTimeStep(double dt){m_dt=dt;}; virtual void rebuildParticleArray(); virtual void rebuildInteractions(); virtual void searchNeighbors(); virtual void updateInteractions(); virtual void checkNeighbors(); void resetDisplacements(); virtual void do2dCalculations(bool do2d); virtual int getNumParticles(); std::pair findParticleNearestTo(const Vec3 &pt); std::pair getParticlePosn(int particleId); AParallelInteractionStorage *findPis(const std::string &groupName); // virtual ParticleIdPairVector getBondGroupIdPairs(const std::string &groupName); template ParticleIdPairVector getBondGroupIdPairs(TmplPis *pBondPis); virtual void moveParticleTo(); virtual void moveTaggedParticlesBy(); virtual void moveSingleParticleTo(int particleId, const Vec3 &posn); virtual void moveWallBy(); virtual void setWallNormal(); virtual void applyForceToWall(); virtual void setParticleVelocity(); virtual void setVelocityOfWall(); virtual void setParticleNonDynamic(); virtual void setParticleNonRot(); virtual void setParticleNonTrans(); virtual void setParticleDensity(); virtual void setTaggedParticleVel(); virtual void tagParticleNearestTo(); virtual void moveSingleNode(); virtual void moveTaggedNodes(); virtual void translateMeshBy(const std::string &meshName, const Vec3 &translation); virtual void sendDataToMaster(); virtual void countParticles(); virtual void printStruct(); virtual void printData(); virtual void printTimes(); //-- "new" field functions -- virtual void addScalarParticleField(); virtual void addVectorParticleField(); virtual void addScalarInteractionField(); virtual void addVectorInteractionField(); virtual void addScalarTriangleField(); virtual void addVectorTriangleField(); virtual void sendFieldData(); virtual void addVectorWallField(); // -- checkpointing -- virtual void saveSnapShotData(std::ostream &oStream); virtual void saveCheckPointData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); // -- timer -- virtual void setTimer(MpiWTimers &timers) {m_pTimers = &timers;} // -- mesh data exchange -- virtual void getMeshNodeRef(); virtual void getMeshFaceRef(); virtual void getMesh2DStress(); virtual void getTriMeshForce(); virtual void getParticleData(const IdVector &particleIdVector); }; #include "Parallel/SubLattice.hpp" #endif ./Parallel/CMakeLists.txt0000664000175000017500000000123012176660653015127 0ustar vborosvboros#=========================================================== ADD_LIBRARY(Parallel SHARED ASubLattice.cpp LatticeMaster.cpp mpia2abuf.cpp mpibarrier.cpp mpibuf.cpp mpicmdbuf.cpp mpisgbuf.cpp mpisgvbuf.cpp mpivbuf.cpp SubLatticeControler.cpp SubLattice.cpp CheckPointer.cpp CheckPointController.cpp CheckPointParams.cpp MpiInfo.cpp GeometryReader.cpp CheckPointInfo.cpp CheckPointLoader.cpp LatticeParam.cpp BroadCast_cmd.cpp BMesh2D_cmd.cpp GetRef_cmd.cpp Mesh2DReader.cpp) TARGET_LINK_LIBRARIES(Parallel Foundation Geometry TmlMessage TmlType TmlComm Fields ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS Parallel DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Parallel/CheckPointer.h0000664000175000017500000000310112176660653015115 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef CHECKPOINTER_H #define CHECKPOINTER_H // --- MPI includes --- #include //--- TML includes --- #include "tml/comm/comm.h" #include #include namespace esys { namespace lsm { class CheckPointable; } } /** * Saves the state of a model. */ class CheckPointer { public: /** */ CheckPointer(esys::lsm::CheckPointable &checkPointable, MPI_Comm mpiComm=MPI_COMM_WORLD); /** */ virtual ~CheckPointer(); /** * Saves the state of a model. */ virtual void saveRestartable(); virtual void saveDump(); virtual void saveThroughMaster(TML_Comm&); virtual void loadCheckPoint(); /** * Saves the state of a model to specified stream. */ virtual void save(std::ostream &oStream); MPI_Comm getMpiComm() const; void setMpiComm(MPI_Comm mpiComm); private: esys::lsm::CheckPointable *m_pCheckPointable; MPI_Comm m_mpiComm; }; #endif ./Parallel/LatticeParam.h0000664000175000017500000000362512176660653015120 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMLATTICEPARAM_H #define ESYS_LSMLATTICEPARAM_H class AMPIBuffer; #include #include #include namespace esys { namespace lsm { /** * Parameters for the sublattice. */ class CLatticeParam { public: typedef std::vector ProcessDims; CLatticeParam( const std::string &particleType, double nrange, double alpha, const ProcessDims &dims = ProcessDims(3, 0) ); void setSearchRange(double nr,double a){m_nrange=nr;m_alpha=a;}; void setParticleType(const std::string& pt){m_particle_type=pt;} void packInto(AMPIBuffer*) const; double nrange()const {return m_nrange;}; double alpha()const {return m_alpha;}; const ProcessDims &processDims() const {return m_dims;} const std::string &particle_type() const {return m_particle_type;}; friend std::ostream& operator<<(std::ostream &oStream,const CLatticeParam &prms); static CLatticeParam extractLatticeParam(AMPIBuffer *pBuff); protected: std::string m_particle_type; double m_alpha; //!< pair creation cutoff double m_nrange; //!< searchrange ProcessDims m_dims; }; } } #endif ./Parallel/mpicmdbuf.cpp0000664000175000017500000000316612176660653015053 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mpicmdbuf.h" #include "console.h" /*! Constructor. Sets the MPI communicator to be used for broadcast operations and the rank of root process; \param comm the MPI communicator \param root the rank of the root process */ CMPILCmdBuffer::CMPILCmdBuffer(MPI_Comm comm,int root) { int rank; m_comm=comm; m_root=root; MPI_Comm_rank(m_comm, &rank); m_isroot=(rank==root); } /*! Broadcast a command to all members of the communicator. If the calling process is not the root process, prints an error message and does nothing. \param cmd the command */ void CMPILCmdBuffer::broadcast(int cmd) { if(m_isroot){ MPI_Bcast(&cmd,1,MPI_INT,m_root,m_comm); } else { console.Error() << "Error in CMPILCmdBuffer::broadcast : trying to broadcast from non-root process !\n"; } } /*! receive broadcast and return the received command */ int CMPILCmdBuffer::receive() { int cmd; MPI_Bcast(&cmd,1,MPI_INT,m_root,m_comm); return cmd; } ./Parallel/Mesh2DReaderImpl.cpp0000664000175000017500000000351612176660653016133 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Mesh2DReaderImpl.h" // --- Project includes --- #include "Foundation/console.h" // --- STL includes --- #include using std::runtime_error; // --- IO includes --- #include using std::ifstream; namespace esys { namespace lsm { /*! construct Mesh2DReader implementation from file \param filename the name of the file */ Mesh2DReader::Impl::Impl(const string& filename) :m_file_name(filename) { } void Mesh2DReader::Impl::initialise() { // open file m_istream_ptr=IStreamPtr(new ifstream(m_file_name.c_str())); istream* the_istream=m_istream_ptr.get(); // check if file is open if(!(*m_istream_ptr)){ throw runtime_error("Can not open 2D mesh file " + m_file_name); } console.XDebug() << "Reading 2D mesh file " << m_file_name << " open \n"; // initialize reader with stream m_node_reader_ptr=NodeReaderPtr(new Node2DReader(*the_istream)); m_edge_reader_ptr=EdgeReaderPtr(new Edge2DReader(*the_istream)); console.XDebug() << "end Mesh2DReader::Impl::initialise\n"; } } // end namespace lsm } // end namespace esys ./Parallel/LatticeParam.cpp0000664000175000017500000000425512176660653015453 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/mpibuf.h" #include "Parallel/LatticeParam.h" namespace esys { namespace lsm { //---------------------------------------------- // CLatticeParam functions //---------------------------------------------- CLatticeParam::CLatticeParam( const std::string & s, double r, double a, const ProcessDims &dims ) { m_particle_type=s; m_nrange=r; m_alpha=a; m_dims = dims; } void CLatticeParam::packInto(AMPIBuffer *B) const { B->append(m_nrange); B->append(m_alpha); B->append(m_particle_type.c_str()); B->append(static_cast(m_dims[0])); B->append(static_cast(m_dims[1])); B->append(static_cast(m_dims[2])); } CLatticeParam CLatticeParam::extractLatticeParam(AMPIBuffer *B) { double nrange = B->pop_double(); double alpha = B->pop_double(); std::string particleType = B->pop_string(); CLatticeParam::ProcessDims dims = CLatticeParam::ProcessDims(3, 0); dims[0] = B->pop_int(); dims[1] = B->pop_int(); dims[2] = B->pop_int(); return CLatticeParam(particleType, nrange, alpha, dims); } ostream& operator<<(ostream& ost,const CLatticeParam& CP) { ost << "CLatticeParam\n"; ost << "ptype : " << CP.m_particle_type << endl; ost << "nrange : " << CP.m_nrange << endl; ost << "alpha : " << CP.m_alpha << endl; return ost; } } } ./Parallel/MeshReader.cpp0000664000175000017500000000631312176660653015121 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "MeshReader.h" #include "MeshReaderImpl.h" // -- STL includes -- #include using std::runtime_error; namespace esys { namespace lsm //!Lattice Solid Model namespace. { // ==== NodeReader functions ========== /*! construct NodeReader \param instream the stream to read from */ NodeReader::NodeReader(std::istream& instream) : IterativeReader >(instream) {} /*! initialize node reader */ void NodeReader::initialise() { string token; while ((!getIStream().eof()) && (token != "3D-Nodes")) { getIStream() >> token; } if (token != "3D-Nodes") { throw runtime_error("Could not find '3D-Nodes' token in stream."); } int nr_nodes = 0; getIStream() >> nr_nodes; setNumElements(nr_nodes); IterativeReader >::initialise(); } // ==== TriReader Functions =========== /*! construct TriReader \param instream the stream to read from */ TriReader::TriReader(std::istream& instream) : IterativeReader >(instream) {} /*! initialize triangle reader */ void TriReader::initialise() { string token; while ((!getIStream().eof()) && (token != "Tri3")) { getIStream() >> token; } if (token != "Tri3") { throw runtime_error("Could not find 'Tri3' token in stream."); } int nr_nodes = 0; getIStream() >> nr_nodes; setNumElements(nr_nodes); IterativeReader >::initialise(); } // ==== MeshReader functions ========== /*! construct a mesh reader to read from file \param filename the name of the file to read from */ MeshReader::MeshReader(const string& filename) : m_impl_ptr(new Impl(filename)) { m_impl_ptr->initialise(); } /*! destroy a mesh reader. Closes all accociated files. */ MeshReader::~MeshReader() { delete m_impl_ptr; } /*! return iterator for nodes in file/stream */ MeshReader::NodeIterator &MeshReader::getNodeIterator() { return m_impl_ptr->m_node_reader_ptr->getIterator(); } /*! return iterator for triangles in file/stream */ MeshReader::TriIterator &MeshReader::getTriIterator() { return m_impl_ptr->m_tri_reader_ptr->getIterator(); } } // end namespace lsm } // end namespace esys ./Parallel/BroadCast_cmd.h0000664000175000017500000000421612176660653015234 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BROADCAST_CMD_H #define __BROADCAST_CMD_H #include "Parallel/mpicmdbuf.h" #include "Parallel/mpivbuf.h" #include "Parallel/mpibarrier.h" #include "Parallel/RankAndComm.h" /*! \brief base class for broadcast commands */ class BroadcastCommand { private: int m_commandId; CVarMPIBuffer m_varBuffer; CMPIBarrier m_barrier; CMPILCmdBuffer m_cmdBuffer; public: BroadcastCommand(const MpiRankAndComm &rankAndComm, int cmdId); virtual ~BroadcastCommand(){} /** * Appends namedWithType.getTypeString() and namedWithType.getName() * strings to the data buffer. */ template void appendTypeAndName(const TmplData &namedWithType); /** * Appends specified argument data (basic type) to the buffer. */ template void append(const TmplData &basicTypeData); /** * Packs the specified data into the data-buffer. */ template void packInto(const TmplPackable&); /** * Returns the command id of this broadcast-command. */ const int& getCommandId() const; /** * Broadcasts the command (ie the command id). */ void broadcastCommand(); /** * Broadcasts the data buffer. */ void broadcastBuffer(); /** * Barrier wait. */ void wait(const std::string &barrierName); /** * Broadcasts command and data buffer, then does * a barrier wait. */ void broadcast(); }; #include "Parallel/BroadCast_cmd.hpp" #endif // BROADCAST_CMD_H ./Parallel/vec3_mpi.cpp0000664000175000017500000000177512176660653014616 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "vec3_mpi.h" #include "tml/type/gettype.h" //bool vec3_mpi.initialized=false; template <> MPI_Datatype SGetType::operator()(const Vec3&) { if(!vec3_mpi.initialized){ MPI_Type_contiguous(3,MPI_DOUBLE,&vec3_mpi.type); MPI_Type_commit(&vec3_mpi.type); vec3_mpi.initialized=true; } return vec3_mpi.type; } ./Parallel/SubLattice.cpp0000664000175000017500000000131412176660653015135 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/SubLattice.h" ./Parallel/CheckPointParams.h0000664000175000017500000000333512176660653015743 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef CHECKPOINTPARAMS_H #define CHECKPOINTPARAMS_H #include #include #include class AMPIBuffer; /** * Parameters associated with check-point file creation. */ class CheckPointParams { public: CheckPointParams(const std::string &fileNamePrefix, int time, int rank, int prec); ~CheckPointParams(); /** * Returns full check-point file (prefix plus time and rank identifier). */ std::string getFileName() const; int getPrecision() const {return m_prec;}; void packInto(AMPIBuffer *mpiBuff) const; static CheckPointParams unpackFrom(AMPIBuffer *mpiBuff, MPI_Comm mpiComm=MPI_COMM_WORLD); //friend std::ostream& operator<<(std::ostream &oStream, const CheckPointParams &checkPointParams); protected: CheckPointParams(); private: /** * Prefix of check-point file names. */ std::string m_fileNamePrefix; /** * The simulation time at which checkpoint is created. */ int m_time; /** * Rank of mpi process. */ int m_rank; int m_prec; //! flag for binary checkpoints }; #endif ./Parallel/CheckPointable.cpp0000664000175000017500000000174112176660653015755 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/CheckPointable.h" namespace esys { namespace lsm { CheckPointable::CheckPointable() { } CheckPointable::~CheckPointable() { } void CheckPointable::saveSnapShotData(std::ostream &oStream) { oStream << "not implemented" << std::endl; } } } ./Parallel/mpibarrier.cpp0000664000175000017500000000302212176660653015230 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // -- project includes -- #include "mpibarrier.h" // -- system includes -- #include CMPIBarrier::CMPIBarrier(MPI_Comm comm) { m_comm=comm; MPI_Comm_rank(m_comm,&m_id); } /*! Wait on the barrier. The message and the time waited are output to console.XDebug() \param msg the message */ void CMPIBarrier::wait(const char* msg) { m_time=MPI_Wtime(); if(m_id==0){ console.XDebug()<< "Master waiting on Barrier ( " << msg << " )\n"; } else { console.XDebug()<< "Worker " << m_id << " waiting on Barrier ( " << msg << " )\n"; } MPI_Barrier(m_comm); double p_time=MPI_Wtime(); if(m_id==0){ console.XDebug()<< "Master past Barrier ( " << msg << " ) after " << p_time-m_time << " sec \n"; } else { console.XDebug()<< "Worker " << m_id << " past Barrier ( " << msg << " ) after " << p_time-m_time << " sec \n"; } } ./Parallel/mpibuf.h0000664000175000017500000000604712176660653014035 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPIBUF_H #define __MPIBUF_H //--- MPI includes --- #include //--- Project includes --- #include "Foundation/vec3.h" // --- STL includes --- #include /*! \class AMPIBuffer \brief Abstract base class for MPI send/recv buffer \author Steffen Abe $Revision$ $Date$ */ class AMPIBuffer { protected: MPI_Comm m_comm; //!< the MPI Communicator used for the send/recv operations MPI_Status m_status; public: AMPIBuffer(MPI_Comm comm){m_comm=comm;}; virtual ~AMPIBuffer(){}; virtual void clear()=0; virtual void append(int)=0; virtual void append(double)=0; virtual void append(const char*)=0; virtual void append(const Vec3 &) ; virtual int pop_int()=0; virtual double pop_double()=0; virtual void pop_doubles(double*,int)=0; virtual std::string pop_string()=0; virtual Vec3 pop_vector() ; const MPI_Status& status(){return m_status;}; }; /*! \class AMPIBufferPP \brief Abstarct base class for Point-to-Point communication buffers Adds sendTo and receiveFrom to the base class \author Steffen Abe $Revision$ $Date$ */ class AMPIBufferPP : public AMPIBuffer { public: AMPIBufferPP(MPI_Comm comm); virtual ~AMPIBufferPP(){}; virtual void sendTo(int,int)=0; virtual void receiveFrom(int src=MPI_ANY_SOURCE,int tag=MPI_ANY_TAG)=0; }; /*! \class CMPIBuffer \brief Constant size MPI send/recv buffer CMPIBuffer implements a send/receive buffer. MPI_pack/MPI_unpack is used the transfer arbitrary data. Type information is not transported. i.e. the user has to know the type of the content of a received message. \author Steffen Abe $Revision$ $Date$ */ class CMPIBuffer : public AMPIBufferPP { private: char* m_buffer; int m_buffersize; //!< the size of the buffer int m_position; //!< the current end of the content int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double public: CMPIBuffer(MPI_Comm,int); virtual ~CMPIBuffer(); virtual void clear(){m_position=0;}; virtual void sendTo(int,int); virtual void receiveFrom(int src=MPI_ANY_SOURCE,int tag=MPI_ANY_TAG); virtual void append(int); virtual void append(double); virtual void append(const char*); bool append_checked(int); bool append_checked(double); virtual int pop_int(); virtual double pop_double(); virtual void pop_doubles(double*,int); virtual std::string pop_string(); }; #endif //__MPIBUF_H ./Parallel/CheckPointInfo.cpp0000664000175000017500000001071012176660653015741 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/StringUtil.h" #include "Parallel/CheckPointInfo.h" #include "Geometry/GeometryInfo.h" #include "Foundation/version.h" #include "bzrversion.h" namespace esys { namespace lsm { class CheckPointInfo::Impl { public: Impl() : m_numTimeSteps(0), m_timeStepSize(0.0), m_timeStep(0), m_geoInfo(), m_fileNames(), m_bzrVersion(s_bzr_revision) { } ~Impl() { } bool operator==(const Impl &impl) const { return ( (m_numTimeSteps == impl.m_numTimeSteps) && (m_timeStepSize == impl.m_timeStepSize) && (m_timeStep == impl.m_timeStep) && (m_geoInfo == impl.m_geoInfo) && (m_fileNames == impl.m_fileNames) ); } void read(std::istream &iStream) { string magic; int version; iStream >> magic >> version; iStream >> m_numTimeSteps >> m_timeStepSize >> m_timeStep; m_geoInfo.read(iStream); std::string fileNames; /* * Skip over any blank lines. */ while (fileNames.size() <= 0) { std::getline(iStream, fileNames); fileNames = StringUtil::trim(fileNames); } m_fileNames = StringUtil::splitStrings(fileNames, " "); } /*! write checkpoint info to output stream \param oStream the output stream */ void write(std::ostream &oStream) const { const char delim = '\n'; oStream << "V " << lsm_version_info::CheckPointVersion << delim << m_numTimeSteps << delim << m_timeStepSize << delim << m_timeStep << delim; // ESyS-Particle version info oStream << lsm_version_info::ESySParticleVersion << m_bzrVersion << delim ; m_geoInfo.writeWithoutVersion(oStream); oStream << delim << StringUtil::join( m_fileNames.begin(), m_fileNames.end(), std::string(" "), StringUtil::StdOStreamOp() ); } int m_numTimeSteps; double m_timeStepSize; int m_timeStep; GeometryInfo m_geoInfo; StringVector m_fileNames; int m_bzrVersion; }; CheckPointInfo::CheckPointInfo() : m_pImpl(new CheckPointInfo::Impl) { } CheckPointInfo::~CheckPointInfo() { delete m_pImpl; } bool CheckPointInfo::operator==(const CheckPointInfo &cpInfo) const { return (*m_pImpl == *(cpInfo.m_pImpl)); } const GeometryInfo &CheckPointInfo::getGeometryInfo() const { return m_pImpl->m_geoInfo; } void CheckPointInfo::setGeometryInfo(const GeometryInfo &geoInfo) { m_pImpl->m_geoInfo = geoInfo; } const StringVector &CheckPointInfo::getLatticeDataFiles() const { return m_pImpl->m_fileNames; } void CheckPointInfo::setLatticeDataFiles(const StringVector &fileNames) { m_pImpl->m_fileNames = fileNames; } void CheckPointInfo::setNumTimeSteps(int numTimeSteps) { m_pImpl->m_numTimeSteps = numTimeSteps; } void CheckPointInfo::setTimeStep(int timeStep) { m_pImpl->m_timeStep = timeStep; } int CheckPointInfo::getTimeStep() const { return m_pImpl->m_timeStep; } void CheckPointInfo::setTimeStepSize(double timeStepSize) { m_pImpl->m_timeStepSize = timeStepSize; } void CheckPointInfo::read(std::istream &iStream) { m_pImpl->read(iStream); } void CheckPointInfo::write(std::ostream &oStream) const { m_pImpl->write(oStream); } } } ./Parallel/CheckPointController.h0000664000175000017500000001143012176660653016636 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef CHECKPOINTCONTROLLER_H #define CHECKPOINTCONTROLLER_H // --- MPI includes --- #include // --- Project includes --- #include "Geometry/GeometryInfo.h" #include "Foundation/StringUtil.h" #include "Foundation/BoundingBox.h" // --- STL includes --- #include /** * Controls the issue of check-pointing commands to slave processes. */ class CheckPointController { public: /** * Default constructor. * * Default parameters cause isCheckPoint to return false. */ CheckPointController(); /** * Instantiates and sets the parameters which determine when * a check-point should occur. * * @see setCheckpointParams */ CheckPointController( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, bool writeThroughMaster ); /** * */ virtual ~CheckPointController(); /** * Determines whether specified argument is a check-point * time (see isCheckPoint). If currentTime is a check-point, * issues commands to slave processes to perform check-point. * * @param currentTime Parameter used to determine whether * a check point should occur. */ virtual void performCheckPoint(int currentTime); virtual void performSnapShot(int currentTime); /** * Issues the check-point command to slave processes. * * @param currentTime The check-point time. */ virtual void issueCheckPointCmd(int currentTime); virtual void issueCheckPointCmdWTM(int currentTime); virtual void issueSnapShotCmd(int currentTime); virtual void issueCheckPointLoadingCmd(const std::string&); /** * Returns whether specified time is a check-point time. * * @param time This value is checked against the checkpoint * parameters. */ bool isCheckPoint(int time); /** * Sets the parameters which determine when a check-point should occur. */ void setCheckPointParams( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, bool writeThroughMaster, int precision=12 ); std::string getLatticeDataFileName(const std::string &fileNamePrefix, int timeStep, int rank, bool bin=false); esys::lsm::StringVector getLatticeDataFiles(int timeStep, int size); esys::lsm::StringVector getLatticeDataFiles(int timeStep); /** * Set 2-D information to true if the particle data are two-dimensional; * otherwise set to false. */ void set_is2d(bool do2d); /** * Set the LSMGeometry version for use in geometry files. */ void setLsmGeoVersion(float version); /** * Set the periodicity of the x, y and z dimensions. */ void setPeriodicDimensions(esys::lsm::BoolVector periodicDimensions); /** * Sets the spatial extent in which particles are tracked. */ void setGeometryInfo(const esys::lsm::GeometryInfo &geoInfo); /** * Sets geometry info. */ void setSpatialDomain(const esys::lsm::BoundingBox &bBox); /** * Returns geometry info. */ esys::lsm::GeometryInfo getGeometryInfo() const; /** * */ int getNumTimeSteps() const; /** * Sets the number of time steps. */ void setNumTimeSteps(int numTimeSteps); /*! get time step size */ double getTimeStepSize() const; /** * Sets the time step size. */ void setTimeStepSize(double timeStepSize); void setPrecision(int precision){m_precision=precision;}; bool spatialDomainHasBeenSet() const; MPI_Comm getMpiComm() const; void setMpiComm(MPI_Comm mpiComm); protected: /** * */ MPI_Comm m_mpiComm; /** * Prefix of check-point files. */ std::string m_fileNamePrefix; /** * */ int m_beginTime; /** * */ int m_endTime; /** * */ int m_timeInterval; /** * */ esys::lsm::GeometryInfo m_geoInfo; /** * */ int m_numTimeSteps; /** * */ double m_timeStepSize; bool m_spatialDomainHasBeenSet; /*! If set, pipe all write operations through master process. Useful on installations where only proc. 0 can write to files */ bool m_writeThroughMaster; int m_precision; //! output precision (digits) }; #endif ./Parallel/mpicmdbuf.h0000664000175000017500000000255412176660653014520 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPICMDBUF_H #define __MPICMDBUF_H #include /*! \class CMPILCmdBuffer \brief Class for sending commands from the LatticeMaster to the SubLatticeControler \author Steffen Abe $Revision$ $Date$ The difference to a AMPIBuffer is that it is fixed size,fixed type (int) and supports Broadcasts. It thus does not share the interface with AMPIBuffer -> no inheritance */ class CMPILCmdBuffer { private: MPI_Comm m_comm; //!< the MPI Communicator used for the send/recv operations MPI_Status m_status; int m_root; bool m_isroot; public: CMPILCmdBuffer(MPI_Comm,int); virtual ~CMPILCmdBuffer(){}; void broadcast(int); int receive(); }; #endif //__MPICMDBUF_H ./Parallel/mpisgvbuf.h0000664000175000017500000000524112176660653014550 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPISGVBUF_H #define __MPISGVBUF_H #include "Parallel/mpisgbuf.h" #include /*! \class CMPIVarSGBufferRoot \brief class for variable size scatter/gather buffer, root component \author Steffen Abe $Revision$ $Date$ */ class CMPIVarSGBufferRoot: public AMPISGBufferRoot { private: char* m_vbuffer; char* m_dummy_vbuffer; //! //--- MPI includes --- #include //--- TML includes --- #include "tml/comm/comm_world.h" // -- STL includes -- #include #include #include #include #include // forward decls. // includes are in the .cpp class CheckPointController; namespace esys { namespace lsm { class GeometryInfo; class BodyForceIGP; } } /*! Class for the initialisation and control of a group of sublattices \author Steffen Abe, David Place, Shane Latham $Revision$ $Date$ */ class MpiWTimers; namespace esys { namespace lsm { typedef std::vector IntVector; } } class CLatticeMaster { public: typedef std::vector RunnableVector; typedef std::pair ParticleIdPair; typedef std::vector ParticleIdPairVector; typedef std::vector MeshNodeDataVector; typedef std::vector MeshTriDataVector; typedef std::pair TriMeshDataPair; private: std::string m_timingFileName; MpiWTimers *m_pTimers; CheckPointController *m_pCheckPointController; // for restart checkpoints CheckPointController *m_pSnapShotController; // for viz/analysis dumps esys::lsm::CLatticeParam::ProcessDims m_processDims; protected: typedef std::vector ConnIdVector; map m_temp_conn; vector m_save_fields; // -- variables for global model geometry GeometryInfo m_geo_info; bool m_bbx_has_been_set; bool m_geometry_is_initialized; // ---- int m_global_rank; int m_global_size; int m_max_ts; int m_center_id; double m_total_time; int m_t ; double m_dt; bool m_isInitialized ; bool m_first_time; std::string m_particle_type; RunnableVector m_preRunnableVector; RunnableVector m_postRunnableVector; TML_Comm m_tml_global_comm; MPI_Comm m_global_comm, m_local_comm; MPI_Group m_mpi_local_group; // needs to be member in order to free at desctruction void runRunnables(RunnableVector::iterator begin, RunnableVector::iterator end); void runPreRunnables(); void runPostRunnables(); void saveTimingData(); TriMeshDataPair readTriMesh(const std::string &fileName,int); TriMeshDataPair readTriMesh(const std::string &fileName); void readAndDistributeMesh2D(const std::string&,int); MpiRankAndComm getGlobalRankAndComm() const { return MpiRankAndComm(m_global_rank, m_global_comm); } public: CLatticeMaster(); ~CLatticeMaster(); std::string getLsmVersion() const { return std::string(PACKAGE_VERSION); } int getNumWorkerProcesses() const; int getTimeStep() const {return m_t;} double getTimeStepSize() const {return m_dt;} void setTimeStepSize(double dt); void init(); void setupWorkers(int numWorkers); void run(); void runInit(); void runOneStep(); void runEnd(); void oneStep(); void searchNeighbors(bool); bool checkNeighbors(); void updateInteractions(); void addBondedIG(const CBondedIGP&); void addCappedBondedIG(int,const std::string&,double,double,double); void addShortBondedIG(int,const std::string&,double,double); void addPairIG(const CElasticIGP &prms); void addPairIG(const CFrictionIGP &prms); void addPairIG(const FractalFrictionIGP &prms); void addPairIG(const CAdhesiveFrictionIGP &prms); void addPairIG(const CRotElasticIGP &prms); void addPairIG(const CRotFrictionIGP &prms); void addPairIG(const CHertzianElasticIGP &prms); void addPairIG(const CHertzianViscoElasticFrictionIGP &prms); void addPairIG(const CHertzianViscoElasticIGP &prms); void addPairIG(const CLinearDashpotIGP &prms); void addPairIG(const CRotThermElasticIGP &prms); void addPairIG(const CRotThermFrictionIGP &prms); void addTaggedPairIG(const CRotFrictionIGP &prms,int,int,int,int); void addTaggedPairIG(const CFrictionIGP &prms,int,int,int,int); void addTaggedPairIG(const CHertzianElasticIGP &prms,int,int,int,int); void addTaggedPairIG(const CHertzianViscoElasticFrictionIGP &prms,int,int,int,int); void addTaggedPairIG(const CHertzianViscoElasticIGP &prms,int,int,int,int); void addTaggedPairIG(const CLinearDashpotIGP &prms,int,int,int,int); void addTaggedPairIG(const CRotElasticIGP &prms,int,int,int,int); void addTaggedPairIG(const CElasticIGP &prms,int,int,int,int); void removeIG(const std::string&); void readAndDistributeTriMesh(const std::string&,const std::string&,int); void readAndDistributeTriMesh(const std::string&,const std::string&); void createTriMesh( const std::string &meshName, const MeshNodeDataVector &mndVector, const MeshTriDataVector &mtdVector ); void addMesh2D(const std::string&,const std::string&,int); void addMesh2DIG(const ETriMeshIP &prms); void addTriMesh(const std::string &meshName, const std::string &fileName); void addTriMeshIG(const ETriMeshIP &prms); void addBondedTriMeshIG(const BTriMeshIP &triMeshPrms, const MeshTagBuildPrms &buildPrms); void addBondedTriMeshIG(const BTriMeshIP &triMeshPrms, const MeshGapBuildPrms &buildPrms); void addBondedMesh2DIG(const BMesh2DIP&, const MeshTagBuildPrms&); void addBondedMesh2DIG(const BMesh2DIP&, const MeshGapBuildPrms&); void addDamping(const CDampingIGP &dampingIGP); void addDamping(const CLocalDampingIGP &dampingIGP); void addDamping(const ABCDampingIGP &dampingIGP); void addSingleIG(const esys::lsm::GravityIGP &gravityIGP); void addSingleIG(const esys::lsm::BuoyancyIGP &buoyancyIGP); void addExIG(const std::string&,const std::string&); void setNumSteps(int s); int getNumSteps() const {return m_max_ts;}; int getSteps() const {return m_t;}; void addRotBondedIG(int,const std::string&,double,double,double,double,double,double,double,double,bool,bool,double); void addRotThermBondedIG(const CRotThermBondedIGP &prms); // ParticleIdPairVector getBondGroupIdPairs(const std::string &groupName); // --- wall related fucntions --- void addWall(const std::string&,const Vec3&,const Vec3&); void addWallIG(const CEWallIGP&); void addWallIG(const CBWallIGP&); void addWallIG(const CVWallIGP&); void addWallIG(const CSoftBWallIGP&); Vec3 getWallPosn(const std::string&); Vec3 getWallForce(const std::string&); // void initSoftBondedWall(const string&,const Vec3&,const Vec3&,double,double,double,int); void moveParticleTo(int particleTag, const Vec3 &posn); void moveTaggedParticlesBy(int particleTag, const Vec3 &displacement); void moveSingleParticleTo(int particleId, const Vec3 &posn); Vec3 getParticlePosn(int particleId); void setParticleNonDynamic(int); void setParticleNonRot(int); void setParticleNonTrans(int); void setParticleVel(int,const Vec3&); void setParticleAngVel(int,const Vec3&); void setParticleDensity(int tag,int mask,double rho); void setTaggedParticleVel(int tag,const Vec3&); void moveWallBy(const std::string&,const Vec3&); void setWallNormal(const std::string&,const Vec3&); void setVelocityOfWall(const std::string&,const Vec3&); void tagParticleNearestTo(int,int,const Vec3&); /** * Returns the id of the particle which is closest to the * specified point. */ int findParticleNearestTo(const Vec3& pos); void applyForceToWall(const std::string&,const Vec3&); // --- Mesh movement functions --- void moveSingleNodeBy(const std::string&,int,const Vec3&); void moveTaggedNodesBy(const std::string&,int,const Vec3&); void translateMeshBy(const std::string&,const Vec3&); void saveTimingDataToFile(const std::string &fileNamePrefix); /** * Enforces particles to be restricted to motion in the x-y plane. */ void do2dCalculations(bool do2d); /** * Sets explicit process partitioning info for MPI_Dims_create. * * @param dims Dimension process partition vector. * dims[0] x-partitioning, * dims[1] y-partitioning and * dims[2] z-partitioning. A zero value for a dimension * is converted to a non-zero value using MPI_Dims_create */ void setProcessDims(const esys::lsm::CLatticeParam::ProcessDims &dims); const esys::lsm::CLatticeParam::ProcessDims &getProcessDims() const; /*! * Specifies a file in which timing results are written. * * \param fileName Name of file, overwritten if it exists. */ void setTimingFileName(const std::string &fileName); /*! * Returns the name of the file to which timing results are written. * * \return Name of file, empty std::string if no timing results are being * recorded. */ const std::string &getTimingFileName() const; const std::string &getParticleType() const { return m_particle_type; } int getNumParticles(); //! field saving functions void addScalarParticleSaveField(const std::string&,const std::string&,const std::string&,int,int,int); void addTaggedScalarParticleSaveField(const std::string&,const std::string&,const std::string&,int,int,int,int,int); void addVectorParticleSaveField(const std::string&,const std::string&,const std::string&,int,int,int); void addTaggedVectorParticleSaveField(const std::string&,const std::string&,const std::string&,int,int,int,int,int); void addScalarInteractionSaveField(const std::string&,const std::string&,const std::string&,const std::string&,const std::string&,int,int,int,bool checked=false); void addVectorInteractionSaveField(const std::string&,const std::string&,const std::string&,const std::string&,const std::string&,int,int,int,bool checked=false); void addTaggedScalarInteractionSaveField(const std::string&,const std::string&,const std::string&,const std::string&,const std::string&,int,int,int,int,int,bool); void addTaggedScalarParticleDistributionSaver(const std::string&,const std::string&,const std::string&,int,int,int,int,int,int,double,double,int); void addVectorTriangleSaveField(const string&,const string&,const string&,const string&,int,int,int); void addScalarTriangleSaveField(const string&,const string&,const string&,const string&,int,int,int); void addVectorWallField(const string&,const string&,vector,const string&,int,int,int); // fields with trigger void addVectorParticleSaveFieldWT(const std::string&,const std::string&,const std::string&,int,int,int,const MaxTrigParams&); void addTaggedVectorParticleSaveFieldWT(const std::string&,const std::string&,const std::string&,int,int,int,int,int,const MaxTrigParams&); /** * Initialises parameters for performing model checkpointing. * * @param fileNamePrefix Path prefix for checkpoint files. Multiple checkpoint * files may be generated for a single timestep snapshot. * @param beginTime Time to begin checkpointing. Time of first checkpoint. * @param endTime End time for checkpointing. Time of last checkpoint. * @param timeInterval Time interval between checkpoint file generation. * @param precision the output precision (digits) */ void performCheckPoints( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision ); /** * Initialises parameters for performing model checkpointing with writing done * through master process. * * @param fileNamePrefix Path prefix for checkpoint files. Multiple checkpoint * files may be generated for a single timestep snapshot. * @param beginTime Time to begin checkpointing. Time of first checkpoint. * @param endTime End time for checkpointing. Time of last checkpoint. * @param precision the output precision (digits) * @param timeInterval Time interval between checkpoint file generation. */ void performCheckPointsThroughMaster( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision ); void initSnapShotController(const std::string&,int,int,int); //! initialization functions void makeLattice( const char *particleType, double gridSize, double verletDist ); void makeLattice( const char *particleType, double gridSize, double verletDist, double dt ); /** * Adds reference to an object whose 'run' method is executed at * the beginning of the runOneStep method. */ void addPreTimeStepRunnable(esys::lsm::Runnable &runnable); /** * Returns vector of Runnable objects (which are run pre-time-step). */ const RunnableVector &getPreTimeStepRunnableVector() const { return m_preRunnableVector; } /** * Returns vector of Runnable objects (which are run pre-time-step). */ RunnableVector &getPreTimeStepRunnableVector() { return m_preRunnableVector; } /** * Adds reference to an object whose 'run' method is executed at * the end of the runOneStep method. */ void addPostTimeStepRunnable(esys::lsm::Runnable &runnable); /** * Returns vector of Runnable objects (which are run post-time-step). */ const RunnableVector &getPostTimeStepRunnableVector() const { return m_postRunnableVector; } /** * Returns vector of Runnable objects (which are run post-time-step). */ RunnableVector &getPostTimeStepRunnableVector() { return m_postRunnableVector; } /** * Defines the bounding box in which particles may roam. */ void setSpatialDomain(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt); /** * Defines the bounding box in which particles may roam. */ void setSpatialDomain( const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt, const esys::lsm::IntVector &circDimVector ); /** * Returns whether the setSpacialDomain method has been called with a * non-zero volume bounding box. */ //bool haveSetSpatialDomain() const; /** * Gathers slave dimensions and coordinates. */ void getSlaveSpatialDomains(); /** * Template method for reading geometry from a specified file. * The template parameter is the type of particles created from * the particle data contained in the geometry file. * * @param fileName the name of the file containing geometry info. */ template void readGeometry(const std::string &fileName); /** * Reads an initial particle configuration from a geometry file. * * @param fileName Name of file containing geometry information. */ void readGeometryFile(const std::string &fileName); /** * Reads particle and interaction configuration from a check-point * summary file. * * @param fileName Name of file containing summary of check-point * data. */ void loadCheckPointData(const std::string &checkPointFileName); /** * Adds enumeration of particles to the lattice. * * @param it Iterator object with next() and hasNext() methods. * The TmplIterator::next() method is required to * return an object which can accepted as a constructor * argument for the CParticle class. */ template void addParticles(TmplIterator &it); /** * Adds enumeration of connections/bonds to the lattice. * * @param it Iterator object with next() and hasNext() methods. * The TmplIterator::next() method is required to * return an object which can accepted as a constructor * argument for the SimpleConnectionData class. */ template void addConnections(TmplIterator &it); //--- function for mesh data exchange --- template void visitMeshFaceReferences(const string &meshName); template void visitMesh2dNodeReferences(const string &meshName, TmplVisitor &visitor); template void visitMesh2dEdgeStress(const string &meshName, TmplVisitor &visitor); template void visitTriMeshFaceForce( const string &meshName, TmplVisitor &visitor ); typedef std::vector IdVector; template void visitParticlesOfType( const IdVector &particleIdVector, TmplVisitor &visitor ); template void visitParticles(const IdVector &particleIdVector, TmplVisitor &visitor); void setVerbosity(bool); }; #include "Parallel/LatticeMaster.hpp" #endif ./Parallel/mpivbuf.cpp0000664000175000017500000002014512176660653014551 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- Project includes --- #include "mpivbuf.h" #include "console.h" //--- system includes --- #include // for exit() #include /*! Constructor. Allocates the buffer and sets the MPI communicator to be used for send/receive operations. If the initial buffer size is not given a buffer of initial size 16 is allocated. \param comm the MPI communicator \param s the initial size of the buffer, defaults to 16 */ CVarMPIBuffer::CVarMPIBuffer(MPI_Comm comm,int size):AMPIBufferPP(comm) { m_buffersize=size; m_buffer=new char[m_buffersize]; for(int i=0;im_buffersize){ growTo(size); } int n_src=m_status.MPI_SOURCE; // necessary in case of overlapping MPI_ANY_SOURCE transactions MPI_Recv(m_buffer,size,MPI_PACKED,n_src,tag+2048,m_comm,&m_status) ; } /*! Grows the buffer to a given size. If the buffer is already larger that the given size, nothing is done. Used by receiveFrom. \param size size to which the buffer is grown */ void CVarMPIBuffer::growTo(int size) { if(size>m_buffersize){ char *temp = new char[size]; memcpy((void*)temp,m_buffer,size_t(m_position)); delete [] m_buffer; m_buffer = temp; m_buffersize = size; } } /*! Grows the buffer to twice its current size, thus guaranteeing that append works in amortized constant time. */ void CVarMPIBuffer::grow() { growTo(m_buffersize*2); } /*! Append an integer to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer */ void CVarMPIBuffer::append(int i) { if(m_position+m_int_increment>m_buffersize){ // to small, grow grow(); } MPI_Pack(&i,1,MPI_INT,m_buffer,m_buffersize,&m_position,m_comm); } /*! Append a double to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void CVarMPIBuffer::append(double d) { if(m_position+m_dbl_increment>m_buffersize){ // to small, grow grow(); } MPI_Pack(&d,1,MPI_DOUBLE,m_buffer,m_buffersize,&m_position,m_comm); } /*! Append a string to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void CVarMPIBuffer::append(const char* str) { int len=strlen(str); while (m_position+m_int_increment+len>m_buffersize) { grow(); } MPI_Pack(&len,1,MPI_INT,m_buffer,m_buffersize,&m_position,m_comm); MPI_Pack((void *)str,len,MPI_CHAR,m_buffer,m_buffersize,&m_position,m_comm); } /*! Pops an integer from the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them ans an int. \warning No check for underflow \return The int. */ int CVarMPIBuffer::pop_int() { int res; MPI_Unpack(m_buffer,m_buffersize,&m_position,&res,1,MPI_INT,m_comm); return res; } /*! Pops a double from the buffer. \warning No check for underflow \return the double. \sa CMPIBuffer::pop_int() */ double CVarMPIBuffer::pop_double() { double res; MPI_Unpack(m_buffer,m_buffersize,&m_position,&res,1,MPI_DOUBLE,m_comm); return res; } /*! pop an array of doubles from a buffer */ void CVarMPIBuffer::pop_doubles(double *dbl, int ndb) { MPI_Unpack(m_buffer,m_buffersize,&m_position,dbl,ndb,MPI_DOUBLE,m_comm); } /*! Pops a string from the buffer. The first for bytes are interpreted as int, giving the length of the string (without terminating '\0'), the rest as the characters. \warning no consistency check, i.e. it is not checked if the length is smaller than the buffersize. \return the double. \sa CVarMPISingle::pop_int() */ std::string CVarMPIBuffer::pop_string() { int len = 0; MPI_Unpack(m_buffer,m_buffersize,&m_position,&len,1,MPI_INT,m_comm); char *res=new char[len+1]; // +1 for terminating '\0' MPI_Unpack(m_buffer,m_buffersize,&m_position,res,len,MPI_CHAR,m_comm); res[len]='\0'; std::string poppedString = res; delete [] res; return poppedString; } /*! Broadcast a message to all members of the communicator. \param root the root of the broadcast */ void CVarMPIBuffer::broadcast(int root) { MPI_Bcast(&m_position,1,MPI_INT,root,m_comm); MPI_Bcast(m_buffer,m_position,MPI_PACKED,root,m_comm); } /*! receive broadcast \param root the root of the broadcast */ void CVarMPIBuffer::receiveBroadcast(int root) { int size; MPI_Bcast(&size,1,MPI_INT,root,m_comm); if(size>m_buffersize){ growTo(size); } MPI_Bcast(m_buffer,m_buffersize,MPI_PACKED,root,m_comm); } ./Parallel/mpi_tag_defs.h0000664000175000017500000000242612176660653015171 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPI_TAG_DEFS_H #define __MPI_TAG_DEFS_H const int SUBLATTICE_INIT_TAG=1; const int SUBLATTICE_PARTICLE_TAG=2; const int SUBLATTICE_NSP_TAG=3; const int SUBLATTICE_SHARED_PARTICLE_TAG=4; const int SUBLATTICE_NBI_TAG=5; const int SUBLATTICE_BOND_TAG=6; const int SUBLATTICE_DT_TAG=7; const int SUBLATTICE_XCHG_TAG=8; const int SUBLATTICE_NBP_TAG=9; const int SUBLATTICE_BOUNDARY_PARTICLE_TAG=10; const int SUBLATTICE_SPACE_TAG=11; const int SUBLATTICE_LPARAM_TAG=12; const int NEIGHBOR_XCHG_TAG=256; const int PARTICLE_XCHG_TAG=257; const int PARTICLE_XCHG2_TAG=258; const int FIELD_DESC_TAG=512; #endif ./Parallel/SubLatticeControler.cpp0000664000175000017500000005327112176660653017036 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/SubLatticeControler.h" // -- project includes -- #include "Parallel/mpi_tag_defs.h" #include "Parallel/sublattice_cmd.h" #include "Parallel/mpicmdbuf.h" #include "Parallel/mpibarrier.h" #include "Foundation/console.h" #include "Model/Particle.h" #include "Model/RotParticle.h" #include "Model/RotParticleVi.h" #include "Model/RotThermParticle.h" #include "Parallel/CheckPointer.h" #include "Parallel/RotSubLattice.h" #include "Parallel/MpiWrap.h" #include CSubLatticeControler::CSubLatticeControler() : m_lattice(NULL), m_pCheckPointer(NULL), m_pSnapShooter(NULL), m_timingFileName(), m_timersPtr(new MpiWTimers()) { // console.Debug() << "CSubLatticeControler::CSubLatticeControler()" << "\n"; m_pCheckPointer = new CheckPointer(*this); m_pSnapShooter = new CheckPointer(*this); m_timersPtr->zeroise("RebuildParticleArray"); m_timersPtr->zeroise("RebuildInteractions"); m_timersPtr->zeroise("NeighbourSearch"); m_timersPtr->zeroise("CheckNeighbours"); m_timersPtr->zeroise("CheckPoint"); m_timersPtr->zeroise("BoundaryDataExchange"); m_timersPtr->zeroise("ForceCalculation"); m_timersPtr->zeroise("UpdateInteractions"); m_timersPtr->zeroise("UpdateBondedInteractions"); m_timersPtr->zeroise("UpdateDynamicInteractions"); } CSubLatticeControler::~CSubLatticeControler() { console.Debug() << "CSubLatticeControler::~CSubLatticeControler(): slave " << m_global_rank << " finalizing...\n"; console.Debug() << "CSubLatticeControler::~CSubLatticeControler():" << "deleting checkpointer...\n"; delete m_pCheckPointer; delete m_pSnapShooter; console.Debug() << "CSubLatticeControler::~CSubLatticeControler():" << "deleting sublattice...\n"; delete m_lattice; // cleanup MPI Groups & Communicators MPI_Group_free(&m_global_group); MPI_Group_free(&m_local_group); MPI_Comm_free(&m_local_comm); console.Debug() << "CSubLatticeControler::~CSubLatticeControler(): exit.\n"; } /*! Initialize MPI communicators */ void CSubLatticeControler::initMPI() { std::cout << "CSubLatticeControler::initMPI()\n"; // global communicator = MPI_COMM_WORLD m_global_comm=MPI_COMM_WORLD; m_tml_global_comm.setComm(m_global_comm); // -- local communicator = global comm - proc(0) // get global MPI_Group MPI_Comm_group(MPI_COMM_WORLD,&m_global_group); // subtract id 0 from global group int id0=0; MPI_Group_excl(m_global_group,1,&id0,&m_local_group); // create communicator MPI_Comm_create(MPI_COMM_WORLD,m_local_group,&m_local_comm); m_tml_local_comm.setComm(m_local_comm); m_tml_global_comm.barrier("CSubLatticeControler::initMPI"); // get size of the global communicator and my rank in it m_global_size=m_tml_global_comm.size(); m_global_rank=m_tml_global_comm.rank(); // get size of the local (i.e. workers only) communicator and my rank in it m_local_size=m_tml_local_comm.size(); m_local_rank=m_tml_local_comm.rank(); // tell checkpointers about the mpi communicators m_pCheckPointer->setMpiComm(m_global_comm); m_pSnapShooter->setMpiComm(m_global_comm); std::cout << "slave started at local/global rank " << m_local_rank << " / " << m_global_rank << "\n"; } /*! make a new Lattice of the correct type \todo make it throw an exeption if it fails */ void CSubLatticeControler::makeLattice() { console.Debug() << "CSubLatticeControler::makeLattice()\n" ; CVarMPIBuffer param_buffer(m_global_comm); // get lattice parameters param_buffer.receiveBroadcast(0); console.Debug() << "got params " << "\n"; CLatticeParam clp = CLatticeParam::extractLatticeParam(¶m_buffer); // make the lattice, depending of the type if (clp.particle_type()=="Basic") { console.Debug() << "making lattice with basic particles\n"; m_lattice=new TSubLattice(clp,m_global_rank,m_global_comm,m_local_comm); } else if (clp.particle_type()=="Rot") { console.Debug() << "making lattice with simple rotational particles\n"; m_lattice=new TRotSubLattice(clp,m_global_rank,m_global_comm,m_local_comm); } else if (clp.particle_type()=="RotVi") { console.Debug() << "making lattice with simple Verlet-integration rotational particles\n"; m_lattice = new TRotSubLattice(clp,m_global_rank,m_global_comm,m_local_comm); } else if (clp.particle_type()=="RotTherm") { console.Debug() << "making lattice with thermal Verlet-integration rotational particles\n"; m_lattice = new TRotSubLattice(clp,m_global_rank,m_global_comm,m_local_comm); } else { std::stringstream msg; msg << "ERROR! Trying to make lattice from unknown particles: " << clp.particle_type(); throw std::runtime_error(msg.str()); } m_lattice->setTimer(*m_timersPtr); console.Debug() << "end CSubLatticeControler::makeLattice()\n" ; } void CSubLatticeControler::saveCheckPointData(std::ostream &oStream) { if (m_lattice != NULL) { m_lattice->saveCheckPointData(oStream); } } void CSubLatticeControler::saveSnapShotData(std::ostream &oStream) { if (m_lattice != NULL) { m_lattice->saveSnapShotData(oStream); } } void CSubLatticeControler::loadCheckPointData(std::istream &iStream) { if (m_lattice != NULL) { m_lattice->loadCheckPointData(iStream); } } /*! Initialize lattice. All boundaries are assumed to be open, i.e. not circular. Recieves all necessary data from Master */ void CSubLatticeControler::initLattice() { console.XDebug() << "CSubLatticeControler::initLattice: enter\n"; // get corners vector bbox; console.XDebug() << "CSubLatticeControler::initLattice: receiving bbox\n"; m_tml_global_comm.recv_broadcast_cont_packed(bbox,0); if(bbox.size()!=2){ console.Critical()<<"CRITICAL ERROR: bbox.size()!=2\n"; } console.XDebug() << "CSubLatticeControler::initLattice: initialising ntable," << "bbox = " << bbox[0] << ", " << bbox[1] << "\n"; // init neighbbor table m_lattice->initNeighborTable(bbox[0],bbox[1]); // send back ppa dims and coords console.XDebug() << "CSubLatticeControler::initLattice: sending dims\n"; vector commdims=m_lattice->getCommDims(); m_tml_global_comm.send_gather(commdims,0); vector commcoords=m_lattice->getCommCoords(); console.XDebug() << "CSubLatticeControler::initLattice: sending coords\n"; m_tml_global_comm.send_gather(commcoords,0); console.XDebug() << "CSubLatticeControler::initLattice: exit\n"; } void CSubLatticeControler::setTimeStepSize() { console.Debug() << "enter CSubLatticeControler::setTimeStepSize()\n" ; CVarMPIBuffer buffer(m_global_comm); // get double parameter console.Debug() << "CSubLatticeControler::setTimeStepSize: receiving data...\n"; buffer.receiveBroadcast(0); console.Debug() << "CSubLatticeControler::setTimeStepSize: broadcast received\n"; console.Debug() << "CSubLatticeControler::setTimeStepSize: popping double...\n"; const double dt = buffer.pop_double(); console.Debug() << "CSubLatticeControler::setTimeStepSize: popped double = " << dt << "\n"; console.Debug() << "CSubLatticeControler::setTimeStepSize: setting time step size\n"; m_lattice->setTimeStepSize(dt); console.Debug() << "CSubLatticeControler::setTimeStepSize: done setting time step size.\n"; console.Debug() << "end CSubLatticeControler::setTimeStepSize()\n" ; } /*! Initialize lattice with at least one circular boundary condition. Receives all necessary data from Master */ void CSubLatticeControler::initLatticeCirc() { console.Debug() << "CSubLatticeControler::initLatticeCirc: enter\n"; // get corners vector bbox; console.Debug() << "CSubLatticeControler::initLatticeCirc:" << " receiving bounding box...\n"; m_tml_global_comm.recv_broadcast_cont_packed(bbox,0); if(bbox.size()!=2){ console.Error()<<"CRITICAL ERROR: bbox.size()!=2\n"; } // get circular/non-circular boundary conditions vector cv; vector circ; console.Debug() << "CSubLatticeControler::initLatticeCirc:" << " circular boundary prms...\n"; m_tml_global_comm.recv_broadcast_cont(cv,0); for(vector::iterator iter=cv.begin(); iter!=cv.end(); iter++){ bool c=(*iter==1); console.XDebug() << "circ " << c << "\n"; circ.push_back(c); } console.Debug() << "CSubLatticeControler::initLatticeCirc:" << " initialising neighbour table...\n"; m_lattice->initNeighborTable(bbox[0],bbox[1],circ); console.Debug() << "CSubLatticeControler::initLatticeCirc:" << " sending mpi-comm dimensions...\n"; vector commdims=m_lattice->getCommDims(); m_tml_global_comm.send_gather(commdims,0); console.Debug() << "CSubLatticeControler::initLatticeCirc:" << " sending mpi-comm coordinates...\n"; vector commcoords=m_lattice->getCommCoords(); m_tml_global_comm.send_gather(commcoords,0); console.Debug() << "CSubLatticeControler::initLatticeCirc: exit\n"; } void CSubLatticeControler::performTiming() { CVarMPIBuffer buffer(m_global_comm); // get check-point parameters buffer.receiveBroadcast(0); std::string fileNamePrefix = buffer.pop_string(); std::stringstream sStream; sStream << fileNamePrefix << MpiInfo(m_global_comm).rank() << ".csv"; setTimingFileName(sStream.str()); } void CSubLatticeControler::saveTimingData() { if (getTimingFileName() != "") { m_timersPtr->appendData(getTimingFileName()); m_timersPtr->zeroise(); } } void CSubLatticeControler::searchNeighbors() { m_lattice->searchNeighbors(); return; } void CSubLatticeControler::do2dCalculations() { console.Debug() << "enter CSubLatticeControler::do2dCalculations()\n" ; CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); // get boolean parameter console.Debug() << "CSubLatticeControler::do2dCalculations: receiving data...\n"; buffer.receiveBroadcast(0); console.Debug() << "CSubLatticeControler::do2dCalculations: broadcast received\n"; console.Debug() << "CSubLatticeControler::do2dCalculations: popping bool...\n"; const bool do2d = static_cast(buffer.pop_int()); console.Debug() << "CSubLatticeControler::do2dCalculations: popped bool\n"; console.Debug() << "CSubLatticeControler::do2dCalculations: setting bool\n"; m_lattice->do2dCalculations(do2d); console.Debug() << "CSubLatticeControler::do2dCalculations: done setting bool.\n"; console.Debug() << "end CSubLatticeControler::do2dCalculations()\n" ; } void CSubLatticeControler::getNumParticles() { int numParticles = m_lattice->getNumParticles(); vector numParticlesVector(1, numParticles); m_tml_global_comm.send_gather(numParticlesVector, 0); } void CSubLatticeControler::findParticleNearestToPoint() { console.Debug() << "CSubLatticeControler::findParticleNearestToPoint: enter\n"; CVarMPIBuffer buffer(m_global_comm); // get boolean parameter console.Debug() << "CSubLatticeControler::findParticleNearestToPoint: receiving point...\n"; buffer.receiveBroadcast(0); const Vec3 pt = buffer.pop_vector(); vector > distIdVector(1, m_lattice->findParticleNearestTo(pt)); console.Debug() << "CSubLatticeControler::findParticleNearestToPoint: " << "sending distance data...\n"; m_tml_global_comm.send_gather(distIdVector, 0); console.Debug() << "CSubLatticeControler::findParticleNearestToPoint: exit\n"; } void CSubLatticeControler::getParticlePosn() { console.Debug() << "CSubLatticeControler::getParticlePosn: enter\n"; CVarMPIBuffer buffer(m_global_comm); // get boolean parameter console.Debug() << "CSubLatticeControler::getParticlePosn: receiving particle id...\n"; buffer.receiveBroadcast(0); const int particleId = buffer.pop_int(); vector > idPosnVector(1, m_lattice->getParticlePosn(particleId)); console.Debug() << "CSubLatticeControler::getParticlePosn: sending posn data...\n"; m_tml_global_comm.send_gather(idPosnVector, 0); console.Debug() << "CSubLatticeControler::getParticlePosn: exit\n"; } void CSubLatticeControler::getIdParticleData() { console.Debug() << "CSubLatticeControler::getIdParticleData: enter\n"; ASubLattice::IdVector particleIdVector; console.Debug() << "CSubLatticeControler::getIdParticleData: receiving particle id's\n"; m_tml_global_comm.recv_broadcast_cont(particleIdVector, 0); console.Debug() << "CSubLatticeControler::getIdParticleData:" << " received " << particleIdVector.size() << " particle id's\n"; m_lattice->getParticleData(particleIdVector); console.Debug() << "CSubLatticeControler::getIdParticleData: exit\n"; } void CSubLatticeControler::moveSingleParticle() { console.Debug() << "CSubLatticeControler::moveSingleParticle: enter\n"; CVarMPIBuffer buffer(m_global_comm); console.Debug() << "CSubLatticeControler::moveSingleParticle:" " receiving id and position\n"; buffer.receiveBroadcast(0); // get data from master const int particleId = buffer.pop_int(); const Vec3 posn = buffer.pop_vector(); console.Debug() << "CSubLatticeControler::moveSingleParticle:" << " received id=" << particleId << " and position=" << posn << "\n"; m_lattice->moveSingleParticleTo(particleId, posn); console.Debug() << "CSubLatticeControler::moveSingleParticle: exit\n"; } /*! Translate mesh by given amount. Receive data from master and call function in SubLattice with the received parameters */ void CSubLatticeControler::translateMeshBy() { console.Debug() << "CSubLatticeControler::translateMeshBy: enter\n"; CVarMPIBuffer buffer(m_global_comm); console.Debug() << "CSubLatticeControler::translateMeshBy:" " receiving mesh-name and translation\n"; buffer.receiveBroadcast(0); // get data from master const std::string meshName(buffer.pop_string()); const Vec3 translation(buffer.pop_vector()); console.Debug() << "CSubLatticeControler::translateMeshBy:" << " received name=\"" << meshName << "\" and translation=(" << translation << ")\n"; m_lattice->translateMeshBy(meshName, translation); console.Debug() << "CSubLatticeControler::translateMeshBy: exit\n"; } /*! Set console verbosity. On/off recieved from master. */ void CSubLatticeControler::setVerbosity() { CVarMPIBuffer buffer(m_global_comm); buffer.receiveBroadcast(0); const bool verbose = static_cast(buffer.pop_int()); if (verbose){ console.SetVerbose(Con::all); }else { console.SetVerbose(Con::silent); } } /*! gets command messages from master and calls the functions of SubLattice */ void CSubLatticeControler::run() { CMPILCmdBuffer cmd_buffer(m_global_comm,0); int command=0; bool is_error=false; #ifdef _ENABLE_DEBUG_FILE console.SetVerbose(); #endif do{ command=cmd_buffer.receive(); console.Debug() << "CSubLatticeControler::run:" << "rank=" << m_global_rank << "->Received command=" << command << "\n"; switch(command){ case CMD_PRINT : m_lattice->printData(); break; case CMD_CALC : { m_timersPtr->start("ForceCalculation"); m_lattice->oneStep(); m_timersPtr->stop("ForceCalculation"); break; } case CMD_XCHANGE : { m_timersPtr->start("BoundaryDataExchange"); m_lattice->exchangePos(); m_timersPtr->stop("BoundaryDataExchange"); break; } case CMD_NSEARCH : searchNeighbors(); break; case CMD_CHECKNEIGHBORS : { m_timersPtr->start("CheckNeighbours"); m_lattice->checkNeighbors(); m_timersPtr->stop("CheckNeighbours"); break; } case CMD_UPDATE : { m_timersPtr->start("UpdateInteractions"); m_lattice->updateInteractions(); m_timersPtr->stop("UpdateInteractions"); break; } case CMD_PMOVE : m_lattice->moveParticleTo(); break; case CMD_PMOVETAGGEDBY : m_lattice->moveTaggedParticlesBy(); break; case CMD_PSETND : m_lattice->setParticleNonDynamic(); break; case CMD_PSETNR : m_lattice->setParticleNonRot(); break; case CMD_PVEL : m_lattice->setParticleVelocity(); break; case CMD_PANGVEL : m_lattice->setParticleAngularVelocity(); break; case CMD_PDENS : m_lattice->setParticleDensity(); break; case CMD_PTVEL : m_lattice->setTaggedParticleVel(); break; case CMD_WMOVE : m_lattice->moveWallBy(); break; case CMD_WNORM : m_lattice->setWallNormal(); break; case CMD_WFORCE : m_lattice->applyForceToWall(); break; case CMD_COUNT : m_lattice->countParticles(); break; case CMD_ADDBONDEDIG : m_lattice->addBondedIG(); break; case CMD_ADDSHORTBONDEDIG : m_lattice->addShortBondedIG(); break; case CMD_ADDCAPPEDBONDEDIG : m_lattice->addCappedBondedIG(); break; case CMD_ADDROTBONDEDIG : m_lattice->addRotBondedIG(); break; case CMD_ADDROTTHERMBONDEDIG : m_lattice->addRotThermBondedIG(); break; case CMD_ADDPIG : m_lattice->addPairIG(); break; case CMD_ADDTAGPIG : m_lattice->addTaggedPairIG(); break; case CMD_GETNUMPARTICLES : getNumParticles();break; case CMD_ADDSIG : m_lattice->addSingleIG(); break; case CMD_ADDDAMP : m_lattice->addDamping(); break; case CMD_ADDTRIMESHIG : m_lattice->addTriMeshIG(); break; case CMD_ADDTRIMESH : m_lattice->addTriMesh(); break; case CMD_ADDMESH2D : m_lattice->addMesh2D(); break; case CMD_ADDMESH2DIG : m_lattice->addMesh2DIG(); break; case CMD_MAKELATTICE : makeLattice(); break; case CMD_INITLATTICE : initLattice(); break; case CMD_INITLATTICECIRC : initLatticeCirc(); break; case CMD_INITCOMPLEX : m_lattice->initComplex(); break; case CMD_ADDWALL : m_lattice->addWall(); break; case CMD_ADDEWALLIG : m_lattice->addElasticWIG(); break; case CMD_ADDBWALLIG : m_lattice->addBondedWIG(); break; case CMD_ADDVWALLIG : m_lattice->addViscWIG(); break; case CMD_ADDBBWALLIG : m_lattice->addDirBondedWIG(); break; case CMD_EXIG : m_lattice->setExIG(); break; case CMD_ADD_SPF : m_lattice->addScalarParticleField(); break; case CMD_ADD_VPF : m_lattice->addVectorParticleField(); break; case CMD_ADD_SIF : m_lattice->addScalarInteractionField(); break; case CMD_ADD_VIF : m_lattice->addVectorInteractionField(); break; case CMD_ADD_VTF : m_lattice->addVectorTriangleField(); break; case CMD_ADD_STF : m_lattice->addScalarTriangleField(); break; case CMD_ADD_VWF : m_lattice->addVectorWallField(); break; case CMD_SEND_FIELDS : m_lattice->sendFieldData(); break; case CMD_RECEIVEPARTICLES : m_lattice->receiveParticles();break; case CMD_RECEIVECONNECTIONS : m_lattice->receiveConnections();break; case CMD_SAVECHECKPOINT : { m_timersPtr->start("CheckPoint"); m_pCheckPointer->saveRestartable(); m_timersPtr->stop("CheckPoint"); break; } case CMD_SAVESNAPSHOT : { m_timersPtr->start("SnapShot"); m_pSnapShooter->saveDump(); m_timersPtr->stop("SnapShot"); break; } case CMD_SAVECHECKPOINTWTM : { m_timersPtr->start("CheckPointWTM"); m_pCheckPointer->saveThroughMaster(m_tml_global_comm); m_timersPtr->stop("CheckPointWTM"); break; } case CMD_LOADCHECKPOINT : { m_timersPtr->start("LoadCheckPoint"); m_pCheckPointer->loadCheckPoint(); m_timersPtr->stop("LoadCheckPoint"); break; } case CMD_PTAG : m_lattice->tagParticleNearestTo();break; case CMD_FINDNEARESTPARTICLE: findParticleNearestToPoint();break; case CMD_GETPARTICLEPOSN: getParticlePosn();break; case CMD_GETWALLPOS: m_lattice->getWallPos();break; case CMD_GETWALLFORCE: m_lattice->getWallForce();break; case CMD_DO2DCALCULATIONS : do2dCalculations();break; case CMD_PERFORMTIMING : performTiming();break; case CMD_SAVETIMINGDATA : saveTimingData();break; case CMD_MOVENODE : m_lattice->moveSingleNode();break; case CMD_MOVETAGGEDNODES : m_lattice->moveTaggedNodes();break; case CMD_TRANSLATEMESHBY : translateMeshBy();break; case CMD_ADDBONDEDTRIMESHIG : m_lattice->addBondedTriMeshIG(); break; case CMD_ADDBONDEDMESH2DIG : m_lattice->addBondedMesh2DIG() ; break; case CMD_REMOVEIG : m_lattice->removeIG() ; break; case CMD_GETMESHNODEREF : m_lattice->getMeshNodeRef() ; break; case CMD_GETMESHFACEREF : m_lattice->getMeshFaceRef() ; break; case CMD_GETMESH2DSTRESS : m_lattice->getMesh2DStress() ; break; case CMD_GETTRIMESHFORCE : m_lattice->getTriMeshForce() ; break; case CMD_GETIDPARTICLEDATA : getIdParticleData(); break; case CMD_IDPARTICLEMOVE : moveSingleParticle(); break; case CMD_SETTIMESTEPSIZE: setTimeStepSize(); break; case CMD_SETVERBOSITY : setVerbosity(); break; case CMD_FINISH : break; default: { console.Error() << m_global_rank << " got unknown command : " << command << "\n"; is_error=true; } } std::stringstream msg; msg << "cmd=" << command; m_tml_global_comm.barrier(msg.str().c_str()); //m_tml_global_comm.barrier(); } while ((command!=CMD_FINISH)&&(!is_error)); #ifdef __TIMING m_lattice->printTimes(); #endif //__TIMING m_timersPtr->clear(); m_tml_global_comm.barrier("Final"); #ifdef HAVE_MPI_COMM_SPAWN MPI_Comm_disconnect(&m_global_comm); #endif } ./Parallel/mpisgbuf.cpp0000664000175000017500000001737012176660653014723 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mpisgbuf.h" #include // NULL #include //-- AMPISGBufferRoot member functions---- /*! Constructor for AMPISGBufferRoot \param comm the MPI communicator */ AMPISGBufferRoot::AMPISGBufferRoot(MPI_Comm comm) { m_comm=comm; MPI_Comm_rank(comm,&m_rank); MPI_Comm_size(comm,&m_size); MPI_Pack_size(1,MPI_INT,m_comm,&m_int_increment); MPI_Pack_size(1,MPI_DOUBLE,m_comm,&m_dbl_increment); } void AMPISGBufferRoot::append(const Vec3 &v,int nslice) { append(v.X(),nslice); append(v.Y(),nslice); append(v.Z(),nslice); } Vec3 AMPISGBufferRoot::pop_vector(int nslice) { double x[3] ; pop_doubles(nslice,x,3); return Vec3(x[0],x[1],x[2]); } //-- CMPISGBufferRoot member functions---- /*! Constructor for CMPISGBufferRoot \param comm the MPI communicator \param buffersize buffer size per slice */ CMPISGBufferRoot::CMPISGBufferRoot(MPI_Comm comm,int buffersize):AMPISGBufferRoot(comm) { m_buffersize=buffersize; m_buffer=new char[m_buffersize*m_size]; m_dummy_buffer=new char[m_buffersize]; m_position=new int[m_size]; for(int i=0;iresize(size); } /*! Default implementation for complex init. Just prints an error message. */ void ASubLattice::initComplex() { CMPIBarrier barrier(MPI_COMM_WORLD); CVarMPIBuffer buffer(MPI_COMM_WORLD); console.XDebug()<<"ASubLattice::initComplex()\n"; console.Critical() << "Complex init not implemented for this type of lattice!\n"; buffer.receiveBroadcast(0); barrier.wait("ASubLattice::initComplex()"); } ./Parallel/CheckPointParams.cpp0000664000175000017500000000342212176660653016273 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/CheckPointParams.h" #include "Parallel/MpiInfo.h" #include "Parallel/mpibuf.h" #include #include CheckPointParams::CheckPointParams() : m_fileNamePrefix(), m_time(-1), m_rank(-1), m_prec(12) { } CheckPointParams::CheckPointParams ( const std::string &fileNamePrefix, int time, int rank, int prec ) : m_fileNamePrefix(fileNamePrefix), m_time(time), m_rank(rank), m_prec(prec) {} CheckPointParams::~CheckPointParams() { } std::string CheckPointParams::getFileName() const { std::stringstream name; name << m_fileNamePrefix << "_t=" << m_time << "_" << m_rank << ".txt"; return name.str(); } void CheckPointParams::packInto(AMPIBuffer *pMpiBuff) const { pMpiBuff->append(m_fileNamePrefix.c_str()); pMpiBuff->append(m_time); pMpiBuff->append(m_prec); } CheckPointParams CheckPointParams::unpackFrom(AMPIBuffer *pMpiBuff, MPI_Comm mpiComm) { CheckPointParams prms; prms.m_fileNamePrefix = pMpiBuff->pop_string(); prms.m_time = pMpiBuff->pop_int(); prms.m_prec = pMpiBuff->pop_int(); prms.m_rank = MpiInfo(mpiComm).rank(); return prms; } ./Parallel/Mesh2DReader.h0000664000175000017500000000443612176660653014760 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH_2D_READER_H #define __MESH_2D_READER_H //-- Project includes #include "Model/MeshData2D.h" #include "Parallel/IterativeReader.h" //-- STL includes -- #include using std::string; namespace esys { namespace lsm //!Lattice Solid Model namespace. { /*! \class Node2DReader \brief read a block of 2D nodes from a Finley mesh file. \author Steffen Abe $Date$ $Revision$ */ class Node2DReader : public IterativeReader > { public: Node2DReader(std::istream&); virtual void initialise(); }; /*! \class Edge2DReader \brief read a block of edges from a Finley 2D mesh file. \author Steffen Abe $Date$ $Revision$ */ class Edge2DReader : public IterativeReader > { public: Edge2DReader(std::istream&); virtual void initialise(); }; /*! \class Mesh2DReader \brief class to read 2D meshes, or more precisely, the edges thereof, from Finley mesh format files \author Steffen Abe $Date$ $Revision$ */ class Mesh2DReader { private: class Impl; Impl *m_impl_ptr; // pointer to the implementation public: // types typedef Node2DReader::Iterator NodeIterator; typedef Edge2DReader::Iterator EdgeIterator; // functions Mesh2DReader(const string&); ~Mesh2DReader(); NodeIterator &getNodeIterator(); EdgeIterator &getEdgeIterator(); }; } // end namespace lsm } // end namespace esys #endif // __MESH_READER_H ./Parallel/Mesh2DReaderImpl.h0000664000175000017500000000321612176660653015575 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH2DREADERIMPL_H #define __MESH2DREADERIMPL_H // --- Project includes --- #include "Mesh2DReader.h" // --- STL includes --- #include using std::string; // --- IO includes --- #include using std::istream; namespace esys { namespace lsm { /*! \class Mesh2DReader::Impl \brief implementation details for the 2d mesh reader. Decouples Interface from implementation. \author Steffen Abe $Date$ $Revision$ */ class Mesh2DReader::Impl { public: // types typedef std::auto_ptr NodeReaderPtr; typedef std::auto_ptr EdgeReaderPtr; typedef std::auto_ptr IStreamPtr; // variables NodeReaderPtr m_node_reader_ptr; EdgeReaderPtr m_edge_reader_ptr; IStreamPtr m_istream_ptr; string m_file_name; // functions Impl(const string&); void initialise(); }; } } #endif // __MESH2DREADERIMPL_H ./Parallel/MpiInfo.cpp0000664000175000017500000000175612176660653014451 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/MpiInfo.h" #include "Parallel/mpibuf.h" MpiInfo::MpiInfo(MPI_Comm comm) : m_comm(comm) { } MpiInfo::~MpiInfo() { } int MpiInfo::rank() const { int rank; MPI_Comm_rank(m_comm, &rank); return rank; } int MpiInfo::size() const { int size; MPI_Comm_size(m_comm, &size); return size; } ./Parallel/mpibarrier.h0000664000175000017500000000236012176660653014701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPIBARRIER_H #define __MPIBARRIER_H // -- system includes -- #include // -- project includes -- /*! \class CMPIBarrier \brief A convenience class encapsulating an MPI barrier. Includes timing of the wait and a debug message ( via console.XDebug() ) \author Steffen Abe $Revision$ $Date$ */ class CMPIBarrier { private: MPI_Comm m_comm; //!< the MPI Communicator used int m_id; //!< the rank of the process double m_time; public: CMPIBarrier(MPI_Comm comm=MPI_COMM_WORLD); void wait(const char*); }; #endif // __MPIBARRIER_H ./Parallel/Mesh2DReader.cpp0000664000175000017500000000735212176660653015313 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Mesh2DReader.h" #include "Mesh2DReaderImpl.h" // --- Project includes --- #include "Foundation/console.h" // -- STL includes -- #include using std::runtime_error; namespace esys { namespace lsm //!Lattice Solid Model namespace. { // ==== Node2DReader functions ========== /*! construct Node2DReader \param instream the stream to read from */ Node2DReader::Node2DReader(std::istream& instream) : IterativeReader >(instream) { console.XDebug() << "Node2DReader constructor\n"; } /*! initialize node reader */ void Node2DReader::initialise() { console.XDebug() << "Node2DReader::initialise()\n"; string token; while ((!getIStream().eof()) && (token != "2D-Nodes")) { getIStream() >> token; } if (token != "2D-Nodes") { throw runtime_error("Could not find '2D-Nodes' token in stream."); } int nr_nodes = 0; getIStream() >> nr_nodes; setNumElements(nr_nodes); IterativeReader >::initialise(); console.XDebug() << "end Node2DReader::initialise()\n"; } // ==== Edge2DReader Functions =========== /*! construct Edge2DReader \param instream the stream to read from */ Edge2DReader::Edge2DReader(std::istream& instream) : IterativeReader >(instream) {} /*! initialize edge reader */ void Edge2DReader::initialise() { string token; while ((!getIStream().eof()) && (token != "Line2")) { getIStream() >> token; } if (token != "Line2") { throw runtime_error("Could not find 'Line2' token in stream."); } int nr_nodes = 0; getIStream() >> nr_nodes; setNumElements(nr_nodes); IterativeReader >::initialise(); } // ==== Mesh2DReader functions ========== /*! construct a 2d mesh reader \param filename the name of the file to read from */ Mesh2DReader::Mesh2DReader(const string& filename) : m_impl_ptr(new Impl(filename)) { m_impl_ptr->initialise(); } /*! destroy a 2d mesh reader. Closes all accociated files. */ Mesh2DReader::~Mesh2DReader() { delete m_impl_ptr; } /*! return iterator for nodes in file/stream */ Mesh2DReader::NodeIterator &Mesh2DReader::getNodeIterator() { console.XDebug() << "Mesh2DReader::getNodeIterator\n"; return m_impl_ptr->m_node_reader_ptr->getIterator(); console.XDebug() << "end Mesh2DReader::getNodeIterator\n"; } /*! return iterator for triangles in file/stream */ Mesh2DReader::EdgeIterator &Mesh2DReader::getEdgeIterator() { console.XDebug() << "Mesh2DReader::getEdgeIterator\n"; return m_impl_ptr->m_edge_reader_ptr->getIterator(); console.XDebug() << "end Mesh2DReader::getEdgeIterator\n"; } } // end namespace lsm } // end namespace esys ./Parallel/MeshReaderImpl.h0000664000175000017500000000317112176660653015407 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESHREADERIMPL_H #define __MESHREADERIMPL_H // --- Project includes --- #include "MeshReader.h" // --- STL includes --- #include using std::string; // --- IO includes --- #include using std::istream; namespace esys { namespace lsm { /*! \class MeshReader::Impl \brief implementation details for the mesh reader. Decouples Interface from implementation. \author Steffen Abe $Date$ $Revision$ */ class MeshReader::Impl { public: // types typedef std::auto_ptr NodeReaderPtr; typedef std::auto_ptr TriReaderPtr; typedef std::auto_ptr IStreamPtr; // variables NodeReaderPtr m_node_reader_ptr; TriReaderPtr m_tri_reader_ptr; IStreamPtr m_istream_ptr; string m_file_name; // functions Impl(const string&); void initialise(); }; } } #endif // __MESHREADERIMPL_H ./Parallel/vec3_mpi.h0000664000175000017500000000167012176660653014255 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VEC3_MPI_H #define __VEC3_MPI_H //--- MPI includes --- #include //--- project includes --- #include "vec3.h" struct svec3_mpi{ MPI_Datatype type; bool initialized; }; static svec3_mpi vec3_mpi={MPI_DATATYPE_NULL,false}; #endif //__VEC3_MPI_H ./Parallel/sublattice_cmd.h0000664000175000017500000000722612176660653015535 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SUBLATTICE_CMD_H #define __SUBLATTICE_CMD_H const int CMD_FINISH=1024; const int CMD_PRINT=1025; const int CMD_CALC=1026; const int CMD_XCHANGE=1027; const int CMD_NSEARCH=1028; const int CMD_UPDATE=1029; const int CMD_CHECKNEIGHBORS=1030; const int CMD_PMOVE=1031; const int CMD_WALL=1033; const int CMD_WMOVE=1034; const int CMD_COUNT=1035; const int CMD_INITLATTICE=1036; const int CMD_INIT2DTRILOCAL=1037; const int CMD_ADDEWALLIG=1038; const int CMD_ADDBONDEDIG=1039; const int CMD_MAKELATTICE=1041; const int CMD_ADDPIG=1042; const int CMD_EXIG=1043; const int CMD_INIT2DRANDOM=1044; const int CMD_ADDDAMP=1045; const int CMD_PVEL=1046; const int CMD_INIT3DTRILOCAL=1047; const int CMD_ADDSIG=1048; const int CMD_INITCOMPLEX=1049; const int CMD_ADDBWALLIG=1050; const int CMD_RECEIVEPARTICLES=1051; const int CMD_INITLATTICECIRC=1052; const int CMD_PSETND=1053; const int CMD_SAVECHECKPOINT=1054; const int CMD_GETSOFTBONDEDWALL=1055; const int CMD_WFORCE=1056; const int CMD_PTAG=1057; const int CMD_GETVISCWALL=1058; const int CMD_WVEL=1059; const int CMD_PERFORMTIMING = 1060; const int CMD_SAVETIMINGDATA = 1061; const int CMD_ADDROTBONDEDIG=1062; const int CMD_GETNUMPARTICLES=1063; const int CMD_ADDROTDAMP=1064; const int CMD_ADDTRIMESHIG = 1065; const int CMD_MOVENODE = 1066; const int CMD_MOVETAGGEDNODES = 1067; const int CMD_DO2DCALCULATIONS = 1068; const int CMD_ADDTRIMESH = 1069; const int CMD_ADDBONDEDTRIMESHIG = 1071; const int CMD_PSETNR=1072; const int CMD_ADDMESH2D = 1073; const int CMD_ADDBONDEDMESH2DIG = 1074; const int CMD_FINDNEARESTPARTICLE = 1075; const int CMD_GETPARTICLEPOSN = 1076; const int CMD_GETIDPARTICLEDATA = 1077; const int CMD_IDPARTICLEMOVE = 1078; const int CMD_PANGVEL = 1079; const int CMD_ADDWALL = 1080; const int CMD_ADDVWALLIG = 1081; const int CMD_ADDBBWALLIG =1082; const int CMD_SETTIMESTEPSIZE =1083; const int CMD_ADDSHORTBONDEDIG=1084; const int CMD_ADDCAPPEDBONDEDIG=1085; const int CMD_ADDTAGPIG=1086; const int CMD_ADDMESH2DIG=1087; const int CMD_PDENS=1088; const int CMD_REMOVEIG=1089; const int CMD_SAVESNAPSHOT=1090; const int CMD_LOADCHECKPOINT=1091; const int CMD_SAVECHECKPOINTWTM=1092; const int CMD_TRANSLATEMESHBY=1093; const int CMD_PMOVETAGGEDBY=1094; const int CMD_GETWALLPOS=1095; const int CMD_RECEIVECONNECTIONS=1096; const int CMD_PTVEL = 1097; const int CMD_SETVERBOSE = 1099; const int CMD_PSETNT = 1100; const int CMD_WNORM = 1101; const int CMD_GETWALLFORCE=1102; const int CMD_ADDROTTHERMBONDEDIG=1103; const int CMD_GETBONDGROUPIDPAIRS=1104; const int CMD_SETVERBOSITY=1105; // --------------------------------- const int CMD_ADD_SPF=2051; const int CMD_ADD_VPF=2052; const int CMD_SEND_FIELDS=2053; const int CMD_ADD_SIF=2054; const int CMD_ADD_VIF=2055; const int CMD_ADD_VTF=2056; const int CMD_ADD_STF=2057; const int CMD_ADD_VWF=2058; // ------------------------------- const int CMD_GETMESHNODEREF=4096; const int CMD_GETMESHFACEREF=4097; const int CMD_GETMESH2DSTRESS=4098; const int CMD_GETTRIMESHFORCE=4099; #endif //__SUBLATTICE_CMD_H ./Parallel/BroadCast_cmd.hpp0000664000175000017500000000220612176660653015571 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template void BroadcastCommand::packInto(const TmplPackable &packable) { packable.packInto(&(m_varBuffer)); } template void BroadcastCommand::appendTypeAndName(const TmplData &namedWithType) { m_varBuffer.append(namedWithType.getTypeString().c_str()); m_varBuffer.append(namedWithType.getName().c_str()); } template void BroadcastCommand::append(const TmplData &data) { m_varBuffer.append(data); } ./Parallel/CheckPointable.h0000664000175000017500000000227612176660653015426 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCHECKPOINTABLE_H #define ESYS_LSMCHECKPOINTABLE_H #include namespace esys { namespace lsm { /** * Interface for objects capable of saving/loading checkpoint data. */ class CheckPointable { public: CheckPointable(); virtual ~CheckPointable(); virtual void saveCheckPointData(std::ostream &oStream) = 0; virtual void saveSnapShotData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream) = 0; }; } } #endif ./Parallel/IterativeReader.h0000664000175000017500000000643512176660653015633 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMITERATIVEREADER_H #define ESYS_LSMITERATIVEREADER_H #include #include namespace esys { namespace lsm { /** * */ template class IStreamIterator { public: typedef TmplData value_type; IStreamIterator(std::istream &iStream, int numElements); virtual ~IStreamIterator(); /** * Returns true if there are any elements remaining in * the stream. */ bool hasNext() const; /** * Returns the next element in the stream. */ const TmplData &next(); /** * Returns the number of elements remaining in the stream. */ int getNumRemaining() const; protected: IStreamIterator(const IStreamIterator &it); IStreamIterator &operator=(const IStreamIterator &it); virtual void readDataFromStream(); std::istream *m_pIStream; TmplData m_data; int m_numRemaining; }; /** * Template class which provides an iterator for reading * multiple data-items from a stream. * * @param TmplData data class. * The operator<<(std::istream &iStream, TmplData &data) * operator is used to assign stream data inside the * methods of the IterativeReader::Iterator class. */ template class IterativeReader { public: typedef TmplIterator Iterator; IterativeReader(std::istream &iStream); virtual ~IterativeReader(); /** * Creates the iterator using the istream and * using the value returned by getNumElements. */ virtual void initialise(); /** * Returns the number of elements to be read from the stream. */ int getNumElements() const; /** * Returns whether this reader is initialised, that is, * whether an iterator has been created. */ bool isInitialised() const; Iterator &getIterator(); protected: typedef std::auto_ptr IteratorAutoPtr; void setNumElements(int numElements); std::istream &getIStream(); const std::istream &getIStream() const; /** * Returns a new Iterator object. Caller of this method is * to take ownership for the returned object. */ virtual Iterator *createNewIterator(); private: int m_numElements; std::istream *m_pIStream; IteratorAutoPtr m_iteratorPtr; }; } } #include "Parallel/IterativeReader.hpp" #endif ./Parallel/mpisgvbuf.cpp0000664000175000017500000002643512176660653015113 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mpisgvbuf.h" //#include "console.h" #include //-- CMPIVarSGBufferRoot member functions ---- /*! Constructor for CMPISGBufferRoot \param comm the MPI communicator \param isize initial buffer size per slice, default 16 byte */ CMPIVarSGBufferRoot::CMPIVarSGBufferRoot(MPI_Comm comm,int isize):AMPISGBufferRoot(comm) { m_vbuffersize=isize; m_vbuffer=new char[m_vbuffersize*m_size]; m_dummy_vbuffer=new char[m_vbuffersize]; m_position=new int[m_size]; m_rpos=new int[m_size]; m_recvcount=new int[m_size]; // setup initial displacements in buffer m_displ=new int[m_size]; for(int i=0;im_vbuffersize){ char *temp=m_vbuffer; int vbs_old=m_vbuffersize; m_vbuffersize=size; m_vbuffer=new char[m_vbuffersize*m_size]; for(int i=0;imax_recv) ? m_recvcount[i] : max_recv; } if(max_recv>m_vbuffersize){ growTo(max_recv); } m_recvcount[0]=1; // get data MPI_Gatherv(m_dummy_vbuffer,1,MPI_PACKED,m_vbuffer,m_recvcount,m_displ,MPI_PACKED,m_rank,m_comm); } /*! Send data to all other members of the communicator, using MPI_Scatter/MPI_Scatterv */ void CMPIVarSGBufferRoot::scatter() { //console.XDebug() << "CMPIVarSGBufferRoot::scatter()\n"; //console.XDebug() << "m_vbuffersize " << m_vbuffersize << "\n"; // distribute buffer size for(int j=1;jm_vbuffersize){ // to small, grow grow(); } MPI_Pack(&i,1,MPI_INT,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); } /*! Append a double to a given slice of the buffer. \param d the double \param nslice the nr. of the slice \warning No check for overflow */ void CMPIVarSGBufferRoot::append(double d,int nslice) { if((m_position[nslice]-m_displ[nslice])+m_dbl_increment>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&d,1,MPI_DOUBLE,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); } /*! Append a C-string to a given slice of the buffer. \param str the string \param nslice the nr. of the slice \warning No check for overflow */ void CMPIVarSGBufferRoot::append(const char* str,int nslice) { int len=strlen(str); //console.XDebug()<< "append string,len " << str << " , " << len << "\n"; if((m_position[nslice]-m_displ[nslice])+m_int_increment+len>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&len,1,MPI_INT,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); MPI_Pack((void *)str,len,MPI_CHAR,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); } /*! Pops an integer from a given slice of the the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them as an int. \param nslice the nr. of the slice \return the int. \warning No check for underflow */ int CMPIVarSGBufferRoot::pop_int(int nslice) { int res; MPI_Unpack(m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),&res,1,MPI_INT,m_comm); return res; } /*! Pops an double from a given slice of the the buffer. \param nslice the nr. of the slice \return the double. \warning No check for underflow */ double CMPIVarSGBufferRoot::pop_double(int nslice) { double res; MPI_Unpack(m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),&res,1,MPI_DOUBLE,m_comm); return res; } void CMPIVarSGBufferRoot::pop_doubles(int nslice, double *dbl, int ndb) { MPI_Unpack(m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),dbl,ndb,MPI_DOUBLE,m_comm); } //-- CMPIVarSGBufferLeaf member functions ---- /*! Constuctor for CMPISGBufferLeaf \param comm the MPI communicator \param root rank of the root process \param isize initial size of the communication buffer, default 16 */ CMPIVarSGBufferLeaf::CMPIVarSGBufferLeaf(MPI_Comm comm,int root,int isize):AMPISGBufferLeaf(comm,root) { m_vbuffersize=isize; m_vbuffer=new char[m_vbuffersize]; m_position=0; } CMPIVarSGBufferLeaf::~CMPIVarSGBufferLeaf() { delete m_vbuffer; } /*! Grows the buffer to twice its current size, thus guaranteeing that append works in amortized constant time. */ void CMPIVarSGBufferLeaf::grow() { char *temp=m_vbuffer; m_vbuffersize+=m_vbuffersize; m_vbuffer=new char[m_vbuffersize]; memcpy((void*)m_vbuffer,(void*)temp,size_t(m_position)); delete temp; } /*! Grows the buffer to a given size. If the buffer is already larger that the given size, nothing is done. Used by receiveFrom. \param size size to which the buffer is grown */ void CMPIVarSGBufferLeaf::growTo(int size) { if(size>m_vbuffersize){ char *temp=m_vbuffer; m_vbuffersize=size; m_vbuffer=new char[m_vbuffersize]; memcpy((void*)m_vbuffer,(void*)temp,size_t(m_position)); delete temp; } } void CMPIVarSGBufferLeaf::clear() { m_position=0; } /*! Send data to the root process, using MPI_Gather/MPI_Gatherv */ void CMPIVarSGBufferLeaf::send() { // send size of data MPI_Gather(&m_position,1,MPI_INT,NULL,0,MPI_INT,m_root,m_comm); // send data MPI_Gatherv(m_vbuffer,m_position,MPI_PACKED,NULL,NULL,NULL,MPI_PACKED,m_root,m_comm); } /*! Receive data from root process, using MPI_Scatter/MPI_Scatterv. The buffer grows to fit the data, if neccesary. */ void CMPIVarSGBufferLeaf::receive() { //console.XDebug() << "CMPIVarSGBufferLeaf::receive()\n"; // get size of data MPI_Scatter(NULL,0,MPI_INT,&m_data_size,1,MPI_INT,m_root,m_comm); //console.XDebug() << "recv. data size : " << m_data_size << "\n"; // if buffer to small, grow if(m_data_size>m_vbuffersize){ growTo(m_data_size); } //console.XDebug() << "buffersize : " << m_vbuffersize << "\n"; // get data MPI_Scatterv(NULL,NULL,NULL,MPI_PACKED,m_vbuffer,m_data_size,MPI_PACKED,m_root,m_comm); } /*! Append an integer to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer */ void CMPIVarSGBufferLeaf::append(int i) { if(m_position+m_int_increment>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&i,1,MPI_INT,m_vbuffer,m_vbuffersize,&m_position,m_comm); } /*! Append a double to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void CMPIVarSGBufferLeaf::append(double d) { if(m_position+m_dbl_increment>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&d,1,MPI_DOUBLE,m_vbuffer,m_vbuffersize,&m_position,m_comm); } /*! Append a string to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void CMPIVarSGBufferLeaf::append(const char* str) { int len=strlen(str); if(m_position+m_int_increment+len #include #include // -- STL includes -- #include #include #include using std::runtime_error; // -- IO includes -- #include using std::cerr; using std::flush; using std::endl; using esys::lsm::CLatticeParam; //---------------------------------------------- // TSubLattice functions //---------------------------------------------- /*! construct SubLattice \param param Lattice parameters \param rank the MPI rank \param comm the MPI communicator */ template TSubLattice::TSubLattice( const CLatticeParam ¶m, int rank, MPI_Comm comm, MPI_Comm worker_comm ) : m_ppa(NULL), m_dpis(), m_bpis(), m_singleParticleInteractions(), m_damping(), m_WIG(), m_mesh(), m_mesh2d(), m_dt(0), m_nrange(0), m_alpha(0), m_last_ns(0), m_temp_conn(), m_rank(0), m_comm(MPI_COMM_NULL), m_tml_comm(MPI_COMM_NULL), m_worker_comm(MPI_COMM_NULL), m_tml_worker_comm(MPI_COMM_NULL), m_dims(3, 0), packtime(0), unpacktime(0), commtime(0.0), forcetime(0.0), m_field_slaves(), m_pTimers(NULL) { // cout << "TSubLattice::TSubLattice at " << rank << endl << flush; // -- MPI stuff -- m_rank=rank; // set global communicator m_comm=comm; m_tml_comm.setComm(m_comm); m_dims = param.processDims(); m_worker_comm=worker_comm; // MPI_Comm_size(m_worker_comm,&m_num_workers); m_tml_worker_comm.setComm(m_worker_comm); // -- set parameters m_alpha=param.alpha(); m_nrange=param.nrange(); // cout << "dt,nrange,alpha : " << m_dt << " , " << m_nrange << " , " << m_alpha << "\n"; commtime=0.0; packtime=0.0; unpacktime=0.0; forcetime=0.0; m_last_ns=-1; } template TSubLattice::~TSubLattice() { console.Debug() << "TSubLattice::~TSubLattice(): enter\n"; console.Debug() << "TSubLattice::~TSubLattice():" << " deleting wall interaction groups...\n"; for( typename map*>::iterator vit=m_WIG.begin(); vit!=m_WIG.end(); vit++ ) { delete vit->second; } console.Debug() << "TSubLattice::~TSubLattice():" << " deleting particle array...\n"; if (m_ppa != NULL) delete m_ppa; console.Debug() << "TSubLattice::~TSubLattice(): exit\n"; } /*! Initialize particle storage. The dimensions are global. \param min minimum corner \param max maximum corner */ template void TSubLattice::initNeighborTable(const Vec3& min,const Vec3& max) { console.XDebug() << "TSubLattice::initNeighborTable(" << min << "," << max << ")\n"; // make size fit range double xsize=max.X()-min.X(); xsize=m_nrange*ceil(xsize/m_nrange); double ysize=max.Y()-min.Y(); ysize=m_nrange*ceil(ysize/m_nrange); double zsize=max.Z()-min.Z(); zsize=m_nrange*ceil(zsize/m_nrange); Vec3 grow=Vec3(xsize,ysize,zsize)-(max-min); // size increase Vec3 nmin=min-0.5*grow; // distribute symmetrically Vec3 nmax=max+0.5*grow; console.XDebug() << "range=" << m_nrange << ", new min,max: " << nmin << ", " << nmax << "\n"; // construct particle array TML_Comm *ntcomm=new TML_Comm(m_worker_comm); m_ppa=new ParallelParticleArray(ntcomm,m_dims,nmin,nmax,m_nrange,m_alpha); //m_ppa=new ParallelParticleArray(ntcomm,3,nmin,nmax,m_nrange); // makeFields(); // put here to make sure ppa is initialized before makeFields console.XDebug() << "end TSubLattice::initNeighborTable\n"; } template void TSubLattice::do2dCalculations(bool do2d) { T::setDo2dCalculations(do2d); } template int TSubLattice::getNumParticles() { return m_ppa->getInnerSize(); } /*! Initialize particle storage with some circular boundaries. The dimensions are global. \param min minimum corner \param max maximum corner */ template void TSubLattice::initNeighborTable(const Vec3& min,const Vec3& max,const vector& circ) { console.XDebug() << "TSubLattice::initNeighborTable(" << min << "," << max << ") circ\n"; double xsize,ysize,zsize; // if dimension is circular, check if size fits range, otherwise make it fit // x - dim if(circ[0]) { xsize=max.X()-min.X(); if(fabs(xsize/m_nrange-lrint(xsize/m_nrange))>1e-6) { //console.Critical() << "circular x-dimension doesn't fit range !\n"; console.Info() << "Circular x-size incompatible with range, adjusting...\n"; m_nrange = xsize/floor(xsize/m_nrange); console.Info() << "New range = " << m_nrange << "\n"; } //xsize+=2.0*m_nrange; // padding on the circular ends } else { xsize=max.X()-min.X(); xsize=m_nrange*ceil(xsize/m_nrange); } // y - dim if(circ[1]) { ysize=max.Y()-min.Y(); if(fabs(ysize/m_nrange-lrint(ysize/m_nrange))>1e-6) { console.Critical() << "circular y-dimension doesn't fit range !\n"; } ysize+=2.0*m_nrange; // padding on the circular ends } else { ysize=max.Y()-min.Y(); ysize=m_nrange*ceil(ysize/m_nrange); } // z - dim if(circ[2]) { zsize=max.Z()-min.Z(); if(fabs(zsize/m_nrange-lrint(zsize/m_nrange))>1e-6) { console.Critical() << "circular z-dimension doesn't fit range !\n"; } zsize+=2.0*m_nrange; // padding on the circular ends } else { zsize=max.Z()-min.Z(); zsize=m_nrange*ceil(zsize/m_nrange); } Vec3 grow=Vec3(xsize,ysize,zsize)-(max-min); // size increase Vec3 nmin=min-0.5*grow; // distribute symmetrically Vec3 nmax=max+0.5*grow; console.XDebug() << "range, new min, max: " << m_nrange << " " << nmin << nmax << "\n"; // construct particle array TML_Comm *ntcomm=new TML_Comm(m_worker_comm); m_ppa=new ParallelParticleArray(ntcomm,m_dims,circ,nmin,nmax,m_nrange,m_alpha); // makeFields(); // put here to make sure ppa is initialized before makeFields console.XDebug() << "end TSubLattice::initNeighborTable (circ)\n"; } /*! Receive particle from a TML Communicator \param comm the Communicator \warning the type of particle is not checked */ template void TSubLattice::receiveParticles() { console.XDebug() << "TSubLattice::receiveParticles: enter\n"; vector recv_buffer; CMPIBarrier barrier(m_comm); m_tml_comm.recv_broadcast_cont_packed(recv_buffer,0); console.XDebug() << "recvd " << recv_buffer.size() << " particles \n"; m_ppa->insert(recv_buffer); barrier.wait("TSubLattice::receiveParticles"); console.XDebug() << "TSubLattice::receiveParticles: exit\n"; } /*! Receive connections from a TML Communicator \param comm the Communicator */ template void TSubLattice::receiveConnections() { console.XDebug() << "TSubLattice::receiveConnections: enter\n"; vector recv_buffer; CMPIBarrier barrier(m_comm); m_tml_comm.recv_broadcast_cont_packed(recv_buffer,0); console.XDebug() << "recvd " << recv_buffer.size() << " connections \n"; vector::iterator it; for (it = recv_buffer.begin(); it != recv_buffer.end(); it+=3) { if ( (m_ppa->getParticlePtrByIndex( *(it+1)) == NULL ) || (m_ppa->getParticlePtrByIndex( *(it+2)) == NULL ) ) { continue; } m_temp_conn[*(it)].push_back(*(it+1)); m_temp_conn[*(it)].push_back(*(it+2)); } barrier.wait("TSubLattice::receiveConnections"); console.XDebug() << "TSubLattice::receiveConnections: exit\n"; } /*! Add wall to the sublattice. Parameters received from the master */ template void TSubLattice::addWall() { console.XDebug() << "TSubLattice::addWall: enter\n" ; CVarMPIBuffer param_buffer(m_comm); param_buffer.receiveBroadcast(0); string name=param_buffer.pop_string(); Vec3 ipos=param_buffer.pop_vector(); Vec3 inorm=param_buffer.pop_vector(); m_walls[name]=new CWall(ipos,inorm); console.XDebug() << "TSubLattice::addWall: exit\n" ; } /*! add elastic wall interaction group. Parameters received from the master */ template void TSubLattice::addElasticWIG() { console.XDebug() << "TSubLattice::addElasticWIG: enter\n" ; CVarMPIBuffer param_buffer(m_comm); // receive params from master param_buffer.receiveBroadcast(0); CEWallIGP* wigp=extractEWallIGP(¶m_buffer); string wallname=wigp->getWallName(); map::iterator iter=m_walls.find(wallname); if(iter!=m_walls.end()){ AWallInteractionGroup* newCEWIG = new CEWallInteractionGroup( &m_tml_worker_comm, m_walls[wallname], wigp ); newCEWIG->Update(m_ppa); m_WIG.insert(make_pair(wigp->getName(),newCEWIG)); } else { std::stringstream msg; msg << "wall name '" << wallname << "' not found in map of walls"; throw std::runtime_error(msg.str().c_str()); } delete wigp; console.XDebug() << "TSubLattice::addElasticWIG: exit\n" ; } /*! add bonded wall interaction group. Parameters received from the master */ template void TSubLattice::addBondedWIG() { console.XDebug() << "TSubLattice::addBondedWIG: enter\n" ; CVarMPIBuffer param_buffer(m_comm); // receive params from master param_buffer.receiveBroadcast(0); CBWallIGP* wigp=extractBWallIGP(¶m_buffer); string wallname=wigp->getWallName(); map::iterator iter=m_walls.find(wallname); if(iter!=m_walls.end()){ AWallInteractionGroup* newCBWIG=new CBWallInteractionGroup(&m_tml_worker_comm,m_walls[wallname],wigp); newCBWIG->Update(m_ppa); m_WIG.insert(make_pair(wigp->getName(),newCBWIG)); } else { console.Error() << "wall name " << wallname << " not found in map of walls\n"; } delete wigp; console.XDebug() << "TSubLattice::addBondedWIG: exit\n" ; } /*! add bonded wall interaction group with direction dependend elasticity . Parameters received from the master */ template void TSubLattice::addDirBondedWIG() { console.XDebug() << "TSubLattice::addDirBondedWIG: enter\n" ; CVarMPIBuffer param_buffer(m_comm); // receive params from master param_buffer.receiveBroadcast(0); CSoftBWallIGP* wigp=extractSoftBWallIGP(¶m_buffer); string wallname=wigp->getWallName(); map::iterator iter=m_walls.find(wallname); if(iter!=m_walls.end()){ AWallInteractionGroup* newCDWIG=new CSoftBWallInteractionGroup(&m_tml_worker_comm,m_walls[wallname],wigp); newCDWIG->Update(m_ppa); m_WIG.insert(make_pair(wigp->getName(),newCDWIG)); } else { console.Error() << "wall name " << wallname << " not found in map of walls\n"; } delete wigp; console.XDebug() << "TSubLattice::addDirBondedWIG: exit\n" ; } /*! get position of a wall */ template void TSubLattice::getWallPos() { console.XDebug() << "TSubLattice::getWallPosition: enter\n" ; CVarMPIBuffer param_buffer(m_comm); Vec3 pos; // receive params from master param_buffer.receiveBroadcast(0); std::string wname=param_buffer.pop_string(); console.XDebug() << "Wall name: " << wname << "\n"; // find wall map::iterator iter=m_walls.find(wname); if(iter!=m_walls.end()){ pos=(iter->second)->getPos(); console.XDebug() << "Wall pos: " << pos << "\n"; } else { pos=Vec3(0.0,0.0,0.0); } vector vpos; vpos.push_back(pos); m_tml_comm.send_gather(vpos,0); console.XDebug() << "TSubLattice::getWallPosition: exit\n" ; } /*! get force acting on a wall */ template void TSubLattice::getWallForce() { console.XDebug() << "TSubLattice::getWallForce: enter\n" ; CVarMPIBuffer param_buffer(m_comm); Vec3 force; // receive params from master param_buffer.receiveBroadcast(0); std::string wname=param_buffer.pop_string(); console.XDebug() << "Wall name: " << wname << "\n"; // find wall map::iterator iter=m_walls.find(wname); if(iter!=m_walls.end()){ force=(iter->second)->getForce(); console.XDebug() << "Wall force: " << force << "\n"; } else { force=Vec3(0.0,0.0,0.0); } vector vforce; vforce.push_back(force); m_tml_comm.send_gather(vforce,0); console.XDebug() << "TSubLattice::getWallForce: exit\n" ; } /*! add wall with viscous drag */ template void TSubLattice::addViscWIG() { console.XDebug() << "TSubLattice::addViscWIG: enter\n" ; CVarMPIBuffer param_buffer(m_comm); // receive params from master param_buffer.receiveBroadcast(0); CVWallIGP* wigp=extractVWallIGP(¶m_buffer); string wallname=wigp->getWallName(); map::iterator iter=m_walls.find(wallname); if(iter!=m_walls.end()){ AWallInteractionGroup* newCVWIG=new CViscWallIG(&m_tml_worker_comm,m_walls[wallname],wigp); newCVWIG->Update(m_ppa); m_WIG.insert(make_pair(wigp->getName(),newCVWIG)); } else { console.Error() << "wall name " << wallname << " not found in map of walls\n"; } delete wigp; console.XDebug() << "TSubLattice::addViscWIG: exit\n" ; } /*! Add a PairInteractionGroup to the lattice */ template void TSubLattice::addPairIG() { console.XDebug() << "TSubLattice::addPairIG()\n"; CVarMPIBuffer param_buffer(m_comm,2000); // get params param_buffer.receiveBroadcast(0); string type = param_buffer.pop_string(); console.XDebug()<< "PIG type: " << type.c_str() << "\n"; string name = param_buffer.pop_string(); console.XDebug()<< "PIG name: " << name.c_str() << "\n"; doAddPIG(name,type,param_buffer,false); console.XDebug() << "end TSubLattice::addPairIG()\n"; } /*! Add a tagged PairInteractionGroup to the lattice */ template void TSubLattice::addTaggedPairIG() { console.XDebug() << "TSubLattice::addTaggedPairIG()\n"; CVarMPIBuffer param_buffer(m_comm,2000); // get params param_buffer.receiveBroadcast(0); string type = param_buffer.pop_string(); console.XDebug()<< "PIG type: " << type.c_str() << "\n"; string name = param_buffer.pop_string(); console.XDebug()<< "PIG name: " << name.c_str() << "\n"; doAddPIG(name,type,param_buffer,true); console.XDebug() << "end TSubLattice::addTaggedPairIG()\n"; } /*! do the actual work adding the PIG \param name the name of the PIG \param type the type of the PIG \param param_buffer the buffer containing the rest of the parameters */ template bool TSubLattice::doAddPIG(const string& name,const string& type,CVarMPIBuffer& param_buffer, bool tagged) { bool res=false; AParallelInteractionStorage* new_pis = NULL; if(type=="Elastic") { CElasticIGP eigp; eigp.m_k=param_buffer.pop_double(); eigp.m_scaling=static_cast(param_buffer.pop_int()); if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); console.XDebug() << "tag1, mask1, tag2, mask2 " << tag1 << " , " << mask1 << " , " << tag2 << " , " << mask2 << "\n"; new_pis=new ParallelInteractionStorage_NE_T(m_ppa,eigp,tag1,mask1,tag2,mask2); }else{ new_pis=new ParallelInteractionStorage_NE(m_ppa,eigp); } res=true; } else if (type=="Friction") { CFrictionIGP figp; figp.k=param_buffer.pop_double(); figp.mu=param_buffer.pop_double(); figp.k_s=param_buffer.pop_double(); figp.dt=param_buffer.pop_double(); figp.m_scaling=static_cast(param_buffer.pop_int()); console.XDebug() << "k,mu,k_s,dt: " << figp.k << " , " << figp.mu << " , " << figp.k_s << " , " << figp.dt << "\n"; new_pis=new ParallelInteractionStorage_ED(m_ppa,figp); res=true; } else if (type=="AdhesiveFriction") { CAdhesiveFrictionIGP figp; figp.k=param_buffer.pop_double(); figp.mu=param_buffer.pop_double(); figp.k_s=param_buffer.pop_double(); figp.dt=param_buffer.pop_double(); figp.r_cut=param_buffer.pop_double(); console.XDebug() << "k,mu,k_s,dt,r_cut: " << figp.k << " , " << figp.mu << " , " << figp.k_s << " , " << figp.dt << " " << figp.r_cut << "\n"; new_pis=new ParallelInteractionStorage_ED(m_ppa,figp); res=true; } else if (type=="FractalFriction") { FractalFrictionIGP figp; figp.k=param_buffer.pop_double(); figp.mu_0=param_buffer.pop_double(); figp.k_s=param_buffer.pop_double(); figp.dt=param_buffer.pop_double(); console.XDebug() << "k,mu_0,k_s,dt: " << figp.k << " , " << figp.mu_0 << " , " << figp.k_s << " , " << figp.dt << "\n"; figp.x0=param_buffer.pop_double(); figp.y0=param_buffer.pop_double(); figp.dx=param_buffer.pop_double(); figp.dy=param_buffer.pop_double(); figp.nx=param_buffer.pop_int(); figp.ny=param_buffer.pop_int(); console.XDebug() <<"x0,y0,dx,dy,nx,ny: " << figp.x0 << " , " << figp.y0 << " , " << figp.dx << " , " << figp.dy << " ," << figp.nx << " , " << figp.ny << "\n"; figp.mu = boost::shared_ptr(new double[figp.nx*figp.ny]); for(int i=0;i(m_ppa,figp); res=true; } else if(type=="VWFriction") { VWFrictionIGP figp; figp.k=param_buffer.pop_double(); figp.mu=param_buffer.pop_double(); figp.k_s=param_buffer.pop_double(); figp.dt=param_buffer.pop_double(); figp.m_alpha=param_buffer.pop_double(); console.XDebug() << "k,mu,k_s,dt,alpha: " << figp.k << " , " << figp.mu << " , " << figp.k_s << " , " << figp.dt << "\n"; new_pis=new ParallelInteractionStorage_ED(m_ppa,figp); res=true; } else if(type=="RotElastic"){ CRotElasticIGP reigp; reigp.m_kr=param_buffer.pop_double(); new_pis=new ParallelInteractionStorage_NE(m_ppa,reigp); res=true; } else if (type=="RotFriction"){ CRotFrictionIGP rfigp; rfigp.k=param_buffer.pop_double(); rfigp.mu_s=param_buffer.pop_double(); rfigp.mu_d=param_buffer.pop_double(); rfigp.k_s=param_buffer.pop_double(); rfigp.dt=param_buffer.pop_double(); rfigp.scaling=static_cast(param_buffer.pop_int()); rfigp.meanR_scaling=static_cast(param_buffer.pop_int()); console.XDebug() << "k,mu_s,mu_d,k_s,dt,scaling: " << rfigp.k << " , " << rfigp.mu_s << " , " << rfigp.mu_d << " , " << rfigp.k_s << " , " << rfigp.dt << " , " << rfigp.scaling << "\n"; if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); console.XDebug() << "tag1, mask1, tag2, mask2 " << tag1 << " , " << mask1 << " , " << tag2 << " , " << mask2 << "\n"; new_pis=new ParallelInteractionStorage_ED_T(m_ppa,rfigp,tag1,mask1,tag2,mask2); } else { new_pis=new ParallelInteractionStorage_ED(m_ppa,rfigp); } res=true; } else if (type == "RotThermElastic") { CRotThermElasticIGP eigp; eigp.m_kr = param_buffer.pop_double(); eigp.diffusivity = param_buffer.pop_double(); console.XDebug() << "k=" << eigp.m_kr << " , " << "diffusivity=" << eigp.diffusivity << "\n"; new_pis = new ParallelInteractionStorage_NE< CRotThermParticle, CRotThermElasticInteraction >( m_ppa, eigp ); res=true; } else if (type == "RotThermFriction") { CRotThermFrictionIGP rfigp; rfigp.k=param_buffer.pop_double(); rfigp.mu_s=param_buffer.pop_double(); rfigp.mu_d=param_buffer.pop_double(); rfigp.k_s=param_buffer.pop_double(); rfigp.diffusivity=param_buffer.pop_double(); rfigp.dt=param_buffer.pop_double(); console.XDebug() << "k=" << rfigp.k << " , " << "mu_d=" << rfigp.mu_d << " , " << "mu_s=" << rfigp.mu_s << " , " << "k_s=" << rfigp.k_s << " , " << "diffusivity=" << rfigp.diffusivity << " , " << "dt=" << rfigp.dt << "\n"; new_pis = new ParallelInteractionStorage_ED< CRotThermParticle, CRotThermFrictionInteraction >( m_ppa, rfigp ); res=true; } else if(type=="HertzianElastic") { CHertzianElasticIGP heigp; heigp.m_E=param_buffer.pop_double(); heigp.m_nu=param_buffer.pop_double(); if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); new_pis=new ParallelInteractionStorage_NE_T(m_ppa,heigp,tag1,mask1,tag2,mask2); }else{ new_pis=new ParallelInteractionStorage_NE(m_ppa,heigp); } res=true; } else if(type=="HertzianViscoElasticFriction") { CHertzianViscoElasticFrictionIGP hvefigp; hvefigp.m_A=param_buffer.pop_double(); hvefigp.m_E=param_buffer.pop_double(); hvefigp.m_nu=param_buffer.pop_double(); hvefigp.mu=param_buffer.pop_double(); hvefigp.k_s=param_buffer.pop_double(); hvefigp.dt=param_buffer.pop_double(); if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); new_pis=new ParallelInteractionStorage_NE_T(m_ppa,hvefigp,tag1,mask1,tag2,mask2); }else{ new_pis=new ParallelInteractionStorage_NE(m_ppa,hvefigp); } res=true; } else if(type=="HertzianViscoElastic") { CHertzianViscoElasticIGP hveigp; hveigp.m_A=param_buffer.pop_double(); hveigp.m_E=param_buffer.pop_double(); hveigp.m_nu=param_buffer.pop_double(); if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); new_pis=new ParallelInteractionStorage_NE_T(m_ppa,hveigp,tag1,mask1,tag2,mask2); }else{ new_pis=new ParallelInteractionStorage_NE(m_ppa,hveigp); } res=true; } else if(type=="LinearDashpot") { CLinearDashpotIGP heigp; heigp.m_damp=param_buffer.pop_double(); heigp.m_cutoff=param_buffer.pop_double(); if(tagged){ int tag1=param_buffer.pop_int(); int mask1=param_buffer.pop_int(); int tag2=param_buffer.pop_int(); int mask2=param_buffer.pop_int(); new_pis=new ParallelInteractionStorage_NE_T(m_ppa,heigp,tag1,mask1,tag2,mask2); }else{ new_pis=new ParallelInteractionStorage_NE(m_ppa,heigp); } res=true; } else { cerr << "Unknown interaction group name " << type << " in TSubLattice::addPairIG()" << endl; } // add InteractionGroup to map if(res) m_dpis.insert(make_pair(name,new_pis)); return res; } /*! Add a Triangle Mesh */ template void TSubLattice::addTriMesh() { console.XDebug() << "TSubLattice::addTriMesh()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // data buffers vector node_recv_buffer; vector tri_recv_buffer; // receive params param_buffer.receiveBroadcast(0); // extract name string name = param_buffer.pop_string(); console.XDebug()<< "TriMesh name: " << name.c_str() << "\n"; // receive nodes m_tml_comm.recv_broadcast_cont_packed(node_recv_buffer,0); console.XDebug() << "recvd " << node_recv_buffer.size() << " nodes \n"; // receive triangles m_tml_comm.recv_broadcast_cont_packed(tri_recv_buffer,0); console.XDebug() << "recvd " << tri_recv_buffer.size() << " triangles \n"; // load mesh into new TriMesh TriMesh* new_tm=new TriMesh(); new_tm->LoadMesh(node_recv_buffer,tri_recv_buffer); m_mesh.insert(make_pair(name,new_tm)); console.XDebug() << "end TSubLattice::addTriMesh()\n"; } /*! Add a TriMesh interaction group */ template void TSubLattice::addTriMeshIG() { console.XDebug() << "TSubLattice::addTriMeshIG()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive params param_buffer.receiveBroadcast(0); // extract name & type string type = param_buffer.pop_string(); console.XDebug()<< "TriMeshIG type: " << type.c_str() << "\n"; string name = param_buffer.pop_string(); console.XDebug()<< "TriMeshIG name: " << name.c_str() << "\n"; string meshname = param_buffer.pop_string(); console.XDebug()<< "TriMeshIG mesh name: " << meshname.c_str() << "\n"; // get pointer to mesh TriMesh* tmp=NULL; if (m_mesh.find(meshname) != m_mesh.end()) { tmp = m_mesh[meshname]; } if(tmp==NULL){ throw runtime_error("unknown mesh name in TSubLattice::addTriMeshIG:" + meshname); } // switch on type,extract params & construc new TriMeshIG if(type=="Elastic") { AParallelInteractionStorage* new_pis; ETriMeshIP tmi; tmi.k=param_buffer.pop_double(); new_pis = new TriMesh_PIS_NE(tmp,m_ppa,tmi); m_dpis.insert(make_pair(name,new_pis)); } else { // unknown type-> throw throw runtime_error("unknown type in TSubLattice::addTriMeshIG:" + type); } console.XDebug() << "end TSubLattice::addTriMeshIG()\n"; } /*! Add a bonded TriMesh interaction group */ template void TSubLattice::addBondedTriMeshIG() { console.XDebug() << "TSubLattice::addBondedTriMeshIG()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive params BTriMeshIP param; param_buffer.receiveBroadcast(0); // extract name.meshname & params string name = param_buffer.pop_string(); console.XDebug()<< "BTriMeshIG name: " << name.c_str() << "\n"; string meshname = param_buffer.pop_string(); console.XDebug()<< "BTriMeshIG mesh name: " << meshname.c_str() << "\n"; param.k = param_buffer.pop_double(); console.XDebug()<< "BTriMeshIG k : " << param.k << "\n"; param.brk = param_buffer.pop_double(); console.XDebug()<< "BTriMeshIG r_break: " << param.brk << "\n"; string buildtype = param_buffer.pop_string(); console.XDebug()<< "BTriMeshIG build type: " << buildtype.c_str() << "\n"; // get pointer to mesh TriMesh* tmp=NULL; if (m_mesh.find(meshname) != m_mesh.end()) { tmp = m_mesh[meshname]; } if(tmp==NULL){ throw runtime_error("unknown mesh name in TSubLattice::addTriMeshIG:" + meshname); } // setup new interaction storage TriMesh_PIS_EB* new_pis=new TriMesh_PIS_EB(tmp,m_ppa,param); // switch on buildtype, extract buildparam & build if(buildtype=="BuildByTag"){ int tag=param_buffer.pop_int(); int mask=param_buffer.pop_int(); new_pis->buildFromPPATagged(tag,mask); m_bpis.insert(make_pair(name,new_pis)); } else if(buildtype=="BuildByGap"){ double max_gap=param_buffer.pop_double(); new_pis->buildFromPPAByGap(max_gap); m_bpis.insert(make_pair(name,new_pis)); } else { // unknown type-> throw throw runtime_error("unknown build type in TSubLattice::addBondedTriMeshIG:" + buildtype); } console.XDebug() << "end TSubLattice::addBondedTriMeshIG()\n"; } /*! Add a 2D mesh. Receive all data from master */ template void TSubLattice::addMesh2D() { console.XDebug() << "TSubLattice::addMesh2D()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // data buffers vector node_recv_buffer; vector edge_recv_buffer; // receive params param_buffer.receiveBroadcast(0); // extract name string name = param_buffer.pop_string(); console.XDebug()<< "Mesh2D name: " << name.c_str() << "\n"; // receive nodes m_tml_comm.recv_broadcast_cont_packed(node_recv_buffer,0); console.XDebug() << "recvd " << node_recv_buffer.size() << " nodes \n"; // receive edges m_tml_comm.recv_broadcast_cont_packed(edge_recv_buffer,0); console.XDebug() << "recvd " << edge_recv_buffer.size() << " edges \n"; // load mesh into new 2D Mesh Mesh2D* new_tm=new Mesh2D(); new_tm->LoadMesh(node_recv_buffer,edge_recv_buffer); m_mesh2d.insert(make_pair(name,new_tm)); console.XDebug() << "end TSubLattice::addMesh2D()\n"; } /*! Add a (non-bonded) LineMesh (2D) interaction group */ template void TSubLattice::addMesh2DIG() { console.XDebug() << "TSubLattice::addMesh2DIG()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive params param_buffer.receiveBroadcast(0); // extract name & type string type = param_buffer.pop_string(); console.XDebug()<< "Mesh2DIG type: " << type.c_str() << "\n"; string name = param_buffer.pop_string(); console.XDebug()<< "Mesh2DIG name: " << name.c_str() << "\n"; string meshname = param_buffer.pop_string(); console.XDebug()<< "Mesh2DIG mesh name: " << meshname.c_str() << "\n"; // get pointer to mesh Mesh2D* tmp=NULL; if (m_mesh2d.find(meshname) != m_mesh2d.end()) { tmp = m_mesh2d[meshname]; } if(tmp==NULL){ throw runtime_error("unknown mesh name in TSubLattice::addMesh2DIG:" + meshname); } // switch on type,extract params & construc new Mesh2DIG if(type=="Elastic") { AParallelInteractionStorage* new_pis; ETriMeshIP tmi; tmi.k=param_buffer.pop_double(); new_pis = new Mesh2D_PIS_NE(tmp,m_ppa,tmi); m_dpis.insert(make_pair(name,new_pis)); } else { // unknown type-> throw throw runtime_error("unknown type in TSubLattice::addMesh2DIG:" + type); } console.XDebug() << "end TSubLattice::addTriMeshIG()\n"; } /*! add bonded interactions with 2d mesh get parameters from master */ template void TSubLattice::addBondedMesh2DIG() { console.XDebug() << "TSubLattice::addBondedMesh2DIG()\n"; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive params BMesh2DIP param; param_buffer.receiveBroadcast(0); // extract name.meshname & params string name = param_buffer.pop_string(); console.XDebug() << "BMesh2DIG name: " << name.c_str() << "\n"; string meshname = param_buffer.pop_string(); console.XDebug() << "BMesh2DIG mesh name: " << meshname.c_str() << "\n"; param.k = param_buffer.pop_double(); console.XDebug() << "BMesh2DIG k : " << param.k << "\n"; param.brk = param_buffer.pop_double(); console.XDebug() << "BMesh2DIG r_break: " << param.brk << "\n"; string buildtype = param_buffer.pop_string(); console.XDebug() << "BMesh2DIG build type: " << buildtype.c_str() << "\n"; // get pointer to mesh Mesh2D* tmp=NULL; if (m_mesh2d.find(meshname) != m_mesh2d.end()) { tmp = m_mesh2d[meshname]; } if(tmp==NULL){ throw runtime_error("unknown mesh name in TSubLattice::addBondedMesh2DIG:" + meshname); } // setup new interaction storage Mesh2D_PIS_EB* new_pis=new Mesh2D_PIS_EB(tmp,m_ppa,param); // switch on buildtype, extract buildparam & build if(buildtype=="BuildByTag"){ int tag=param_buffer.pop_int(); int mask=param_buffer.pop_int(); new_pis->buildFromPPATagged(tag,mask); m_bpis.insert(make_pair(name,new_pis)); } else if(buildtype=="BuildByGap"){ double max_gap=param_buffer.pop_double(); new_pis->buildFromPPAByGap(max_gap); m_bpis.insert(make_pair(name,new_pis)); } else { // unknown type-> throw throw runtime_error("unknown build type in TSubLattice::addBondedMesh2DIG:" + buildtype); } console.XDebug() << "end TSubLattice::addBonded2DMeshIG()\n"; } /*! Add a SingleInteractionGroup to the lattice \todo currently gravity is hardwired, change this */ template void TSubLattice::addSingleIG() { console.XDebug() << "TSubLattice::addSingleIG()\n"; CVarMPIBuffer param_buffer(m_comm); // get params param_buffer.receiveBroadcast(0); string type = param_buffer.pop_string(); console.XDebug()<< "SIG type: " << type.c_str() << "\n"; // setup InteractionGroup if(type=="Gravity"){ esys::lsm::BodyForceIGP prms = esys::lsm::BodyForceIGP::extract(¶m_buffer); // add to map m_singleParticleInteractions.insert( std::pair*>( prms.Name(), new esys::lsm::BodyForceGroup(prms, *m_ppa) ) ); } else if (type=="Buoyancy"){ esys::lsm::BuoyancyIGP prms = esys::lsm::BuoyancyIGP::extract(¶m_buffer); // add to map m_singleParticleInteractions.insert( std::pair*>( prms.Name(), new esys::lsm::BuoyancyForceGroup(prms, *m_ppa) ) ); } else { throw std::runtime_error( std::string("Trying to setup SIG of unknown type: ") + type ); } console.XDebug() << "end TSubLattice::addSingleIG()\n"; } /*! Add a DampingGroup to the lattice. Receive the parameters from master. */ template void TSubLattice::addDamping() { console.XDebug() << "TSubLattice::addDamping()\n"; CVarMPIBuffer param_buffer(m_comm); // get params param_buffer.receiveBroadcast(0); string type = param_buffer.pop_string(); console.XDebug()<< "Damping type: " << type.c_str() << "\n"; // setup InteractionGroup doAddDamping(type,param_buffer); console.XDebug() << "end TSubLattice::addDamping()\n"; } /*! Do the work for adding the damping \param type the type of damping \param param_buffer the buffer containing the parameters */ template bool TSubLattice::doAddDamping(const string& type,CVarMPIBuffer& param_buffer) { AParallelInteractionStorage* DG; string damping_name; bool res; if(type=="Damping") { CDampingIGP *params=extractDampingIGP(¶m_buffer); DG=new ParallelInteractionStorage_Single >(m_ppa,*params); damping_name="Damping"; res=true; } else if (type=="ABCDamping"){ ABCDampingIGP *params=extractABCDampingIGP(¶m_buffer); DG=new ParallelInteractionStorage_Single >(m_ppa,*params); damping_name=params->getName(); res=true; } else if (type=="LocalDamping"){ CLocalDampingIGP *params=extractLocalDampingIGP(¶m_buffer); DG=new ParallelInteractionStorage_Single >(m_ppa,*params); damping_name=params->getName(); res=true; }else { std::stringstream msg; msg << "Trying to setup Damping of unknown type: " << type; console.Error() << msg.str() << "\n"; throw std::runtime_error(msg.str()); res=false; } // add to map if(res) { m_damping.insert(make_pair(damping_name,DG)); m_damping[damping_name]->update(); } return res; } /*! Add bonded interaction group to the lattice. Receive the parameters from master. The bonds are created from the neighbor table. */ template void TSubLattice::addBondedIG() { console.XDebug() << "TSubLattice::addBondedIG()\n"; CVarMPIBuffer param_buffer(m_comm); // get params CBondedIGP param; param_buffer.receiveBroadcast(0); param.tag=param_buffer.pop_int(); string name = param_buffer.pop_string(); param.k=param_buffer.pop_double(); param.rbreak=param_buffer.pop_double(); param.m_scaling=static_cast(param_buffer.pop_int()); console.XDebug() << "Got BondedIG parameters: " << param.tag << " " << name.c_str() << " " << param.k << " " << param.rbreak << "\n"; // setup InteractionGroup ParallelInteractionStorage_EB *B_PIS = new ParallelInteractionStorage_EB(m_ppa,param); // set unbreakable if rbeak<0 if(param.rbreak<0){ B_PIS->setUnbreakable(true); console.XDebug() << "set bpis unbreakable\"n"; } vector vi(2,-1); for(size_t i=0;itryInsert(vi); } // add InteractionGroup to map m_bpis.insert(make_pair(name,B_PIS)); console.XDebug() << "end TSubLattice::addBondedIG()\n"; } /*! Add bonded interaction group to the lattice. Receive the parameters from master. The bonds are created from the neighbor table. */ template void TSubLattice::addCappedBondedIG() { console.XDebug() << "TSubLattice::addCappedBondedIG()\n"; CVarMPIBuffer param_buffer(m_comm); // get params param_buffer.receiveBroadcast(0); int tag=param_buffer.pop_int(); string name = param_buffer.pop_string(); double k=param_buffer.pop_double(); double rbreak=param_buffer.pop_double(); double maxforce=param_buffer.pop_double(); console.XDebug() << "Got CappedBondedIG parameters: " << tag << " " << name.c_str() << " " << k << " " << rbreak << " " << maxforce << "\n"; // setup InteractionGroup CCappedBondedIGP param; param.k=k; param.rbreak=rbreak; param.tag = tag; param.m_force_limit=maxforce; ParallelInteractionStorage_EB *B_PIS = new ParallelInteractionStorage_EB(m_ppa,param); // set unbreakable if rbeak<0 if(rbreak<0){ B_PIS->setUnbreakable(true); console.XDebug() << "set bpis unbreakable\"n"; } // recv broadcast connection data /*console.XDebug() << "rank=" << m_tml_comm.rank() << "TSubLattice::addCappedBondedIG(): receiving conn_data.\n"; vector conn_data; m_tml_comm.recv_broadcast_cont(conn_data,0); console.XDebug() << "rank=" << m_tml_comm.rank() << "TSubLattice::addBondedIG(): conn_data.size()=" << conn_data.size() << "\n"; */ vector vi(2,-1); for(size_t i=0;itryInsert(vi); } // add InteractionGroup to map m_bpis.insert(make_pair(name,B_PIS)); console.XDebug() << "end TSubLattice::addCappedBondedIG()\n"; } template void TSubLattice::addRotBondedIG() { console.Error() << "TSubLattice::addRotBondedIG() => trying to add rotational bonded IG to nonrotational model\n"; } template void TSubLattice::addRotThermBondedIG() { console.Error() << "TSubLattice::addRotThermBondedIG() => trying to add rotational thermal bonded IG to nonrotational model\n"; } /*! Add short bonded interaction group to the lattice. Receive the parameters from master. The bonds are created from the neighbor table. */ template void TSubLattice::addShortBondedIG() { console.XDebug() << "TSubLattice::addShortBondedIG()\n"; CVarMPIBuffer param_buffer(m_comm); // get params param_buffer.receiveBroadcast(0); int tag=param_buffer.pop_int(); string name = param_buffer.pop_string(); double k=param_buffer.pop_double(); double rbreak=param_buffer.pop_double(); console.XDebug() << "Got ShortBondedIG parameters: " << tag << " " << name.c_str() << " " << k << " " << rbreak << "\n"; // setup InteractionGroup CBondedIGP param; param.k=k; param.rbreak=rbreak; param.tag = tag; ParallelInteractionStorage_EB *B_PIS = new ParallelInteractionStorage_EB(m_ppa,param); // recv broadcast connection data /*console.XDebug() << "rank=" << m_tml_comm.rank() << "TSubLattice::addShortBondedIG(): receiving conn_data.\n"; vector conn_data; m_tml_comm.recv_broadcast_cont(conn_data,0); console.XDebug() << "rank=" << m_tml_comm.rank() << "TSubLattice::addShortBondedIG(): conn_data.size()=" << conn_data.size() << "\n";*/ vector vi(2,-1); for(size_t i=0;itryInsert(vi); } // add InteractionGroup to map m_bpis.insert(make_pair(name,B_PIS)); console.XDebug() << "end TSubLattice::addShortBondedIG()\n"; } /*! Set excluding IG. The names of 2 interaction groups are received from the master. The 1st is set to be excluding the 2nd. If one of the named IGs does not exist, the operation is ignored and a warning emitted. */ template void TSubLattice::setExIG() { console.XDebug() << "TSubLattice::addExIG()\n"; CVarMPIBuffer pbuffer(m_comm); // get params pbuffer.receiveBroadcast(0); string s1 = pbuffer.pop_string(); string s2 = pbuffer.pop_string(); //console.XDebug()<< s1.c_str() << " " << s2.c_str() << "\n"; map::iterator bonded_ig=m_bpis.find(s1); map::iterator dynamic_ig=m_dpis.find(s2); if((bonded_ig!=m_bpis.end())&&(dynamic_ig!=m_dpis.end())) { // map iterators point to [key,value] pairs, therefore it->second // is the pointer to the PIS here dynamic_ig->second->addExIG(bonded_ig->second); } else { console.Error() << "TSubLattice::setExIG() - nonexisting interaction group \n"; } console.XDebug() << "end TSubLattice::addExIG()\n"; } /*! Remove interaction group. The name of the group is received from the master. \warning Doesn't deal yet with removal of dependent items, i.e. savers */ template void TSubLattice::removeIG() { console.XDebug() << "TSubLattice::removeIG()\n"; CVarMPIBuffer pbuffer(m_comm); bool found=false; // get params pbuffer.receiveBroadcast(0); string igname = pbuffer.pop_string(); // look for name in map of non-bondend particle pair interactions map::iterator iter=m_dpis.find(igname); // if found, remove interaction if(iter!=m_dpis.end()){ found=true; delete m_dpis[igname]; m_dpis.erase(iter); } else { // if not found, look in unbonded wall interactions typename map*>::iterator it2=m_WIG.find(igname); if(it2!=m_WIG.end()){ found=true; delete m_WIG[igname]; m_WIG.erase(it2); } } if(!found) { console.Error() << "TSubLattice::removeIG() - nonexisting interaction group - ignore removal\n"; } } /*! Exchange positions of shared particles with the other sublattices. */ template void TSubLattice::exchangePos() { console.XDebug() << "TSubLattice::exchangePos() \n" ; m_ppa->exchange(&T::getExchangeValues,&T::setExchangeValues); console.XDebug() << "end TSubLattice::exchangePos()\n" ; } /*! Reset the forces on all particles and walls to 0 */ template void TSubLattice::zeroForces() { console.XDebug() << "TSubLattice::zeroForces()\n"; // particles m_ppa->forAllParticles(&T::zeroForce); // trimeshes for(map::iterator iter=m_mesh.begin(); iter!=m_mesh.end(); iter++){ (iter->second)->zeroForces(); } // 2d meshes for(map::iterator iter=m_mesh2d.begin(); iter!=m_mesh2d.end(); iter++){ (iter->second)->zeroForces(); } // walls for(typename map::iterator iter=m_walls.begin(); iter!=m_walls.end(); iter++) { (iter->second)->zeroForce(); } console.XDebug() << "end TSubLattice::zeroForces() \n"; } /*! Calculate the forces for all interactions contained in the sublattice. Interactions contained in more than one sublattice are calculated in each of them. Slightly more computation, but less communication, i.e. saves one syncronisation point (exchange of forces). */ template void TSubLattice::calcForces() { console.XDebug() << "TSubLattice::calcForces() \n"; // the walls for(typename map*>::iterator it=m_WIG.begin();it!=m_WIG.end();it++) { (it->second)->calcForces(); } // single particle IGs for( typename NameIGroupMap::iterator siter=this->m_singleParticleInteractions.begin(); siter != m_singleParticleInteractions.end(); siter++ ) { (siter->second)->calcForces(); } // dynamically created IGs for(typename map::iterator iter=m_dpis.begin();iter!=m_dpis.end();iter++) { (iter->second)->calcForces(); } // bonded IGs for(typename map::iterator iter=m_bpis.begin();iter!=m_bpis.end();iter++) { (iter->second)->calcForces(); } // last, but not least - damping for(typename map::iterator iter=m_damping.begin();iter!=m_damping.end();iter++) { (iter->second)->calcForces(); } console.XDebug() << "end TSubLattice::calcForces() \n"; } /*! Calculate the forces for all interactions contained in the sublattice. Interactions contained in more than one sublattice are calculated in each of them. Slightly more computation, but less communication, i.e. saves one syncronisation point (exchange of forces). */ template void TSubLattice::setTimeStepSize(double dt) { m_dt = dt; console.XDebug() << "TSubLattice::setTimeStepSize() \n"; // the walls for(typename map*>::iterator it=m_WIG.begin();it!=m_WIG.end();it++) { (it->second)->setTimeStepSize(dt); } // single particle IGs for( typename NameIGroupMap::iterator siter=this->m_singleParticleInteractions.begin(); siter != m_singleParticleInteractions.end(); siter++ ) { (siter->second)->setTimeStepSize(dt); } // dynamically created IGs for(typename map::iterator iter=m_dpis.begin();iter!=m_dpis.end();iter++) { (iter->second)->setTimeStepSize(dt); } // bonded IGs for(typename map::iterator iter=m_bpis.begin();iter!=m_bpis.end();iter++) { (iter->second)->setTimeStepSize(dt); } // last, but not least - damping for(typename map::iterator iter=m_damping.begin();iter!=m_damping.end();iter++) { (iter->second)->setTimeStepSize(dt); } console.XDebug() << "end TSubLattice::setTimeStepSize() \n"; } /*! Do the time integration for the particles owned by the SubLattice by 1st order method \param dt the time step */ template void TSubLattice::integrate(double dt) { console.XDebug() << "TSubLattice::integrate \n"; m_ppa->forAllParticles(&T::integrate,dt); m_ppa->forAllParticles(&T::rescale) ; console.XDebug() << "end TSubLattice::integrate \n"; } /*! Do one step, i.e. calculate forces, velocities, positions */ template void TSubLattice::oneStep() { zeroForces(); calcForces(); integrate(m_dt); if (this->getParticleType() == "RotTherm") { this->oneStepTherm(); } } /*! Do one step, i.e. calculate forces, velocities, positions */ template void TSubLattice::oneStepTherm() { zeroHeat(); // ???? combine? calcHeatFrict(); calcHeatTrans(); integrateTherm(m_dt); thermExpansion() ; } /*! Do the time integration for the particles owned by the SubLattice for temprature \param dt the time step */ template void TSubLattice::integrateTherm(double dt) { console.XDebug() << "TSubLattice::integrateTherm \n"; m_ppa->forAllParticles(&T::integrateTherm,dt); // m_ppa->forAllParticles(&T::rescale) ; console.XDebug() << "end TSubLattice::integrateTherm \n"; } template void TSubLattice::thermExpansion() { console.XDebug() << "TSubLattice::thermExpansion() \n"; m_ppa->forAllParticles(&T::thermExpansion); // m_ppa->forAllParticles(&T::rescale) ; console.XDebug() << "end TSubLattice::thermExpansion() \n"; } /*! Reset the HeatSources on all particles and walls to 0 */ template void TSubLattice::zeroHeat() { console.XDebug() << "TSubLattice::zeroHeat()\n"; // particles m_ppa->forAllParticles(&T::zeroHeat); /* // walls for(typename vector*>::iterator iter=m_WIG.begin();iter!=m_WIG.end();iter++) { (*iter)->zeroForce(); } */ console.XDebug() << "end TSubLattice::zeroHeat() \n"; } /*! Calculate the Heat Sources for all interactions contained in the sublattice. Interactions contained in more than one sublattice are calculated in each of them. Slightly more computation, but less communication, i.e. saves one syncronisation point (exchange of forces). */ template void TSubLattice::calcHeatFrict() { console.XDebug() << "TSubLattice::calcHeatFrict() \n"; // dynamically created IGs for( typename map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++ ) { (iter->second)->calcHeatFrict(); } console.XDebug() << "end TSubLattice::calcHeatFrict() \n"; } template void TSubLattice::calcHeatTrans() { console.XDebug() << "TSubLattice::calcHeatTrans() \n"; // dynamically created IGs for( typename map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++ ) { (iter->second)->calcHeatTrans(); } // bonded IGs for( typename map::iterator iter=m_bpis.begin(); iter!=m_bpis.end(); iter++ ) { (iter->second)->calcHeatTrans(); } console.XDebug() << "end TSubLattice::calcHeatTrans() \n"; } /*! rebuild particle array */ template void TSubLattice::rebuildParticleArray() { m_ppa->rebuild(); } /*! rebuild interactions */ template void TSubLattice::rebuildInteractions() { CMPIBarrier barrier(m_worker_comm); m_pTimers->start("RebuildInteractions"); m_pTimers->resume("NeighbourSearch"); for(typename map::iterator iter=m_bpis.begin(); iter!=m_bpis.end(); iter++) { console.Debug() << "exchg & rebuild BPIS " << iter->first << " at node " << m_rank << "\n"; (iter->second)->exchange(); (iter->second)->rebuild(); } for(typename map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++) { console.Debug() << "exchg & rebuild DPIS " << iter->first << " at node " << m_rank << "\n"; (iter->second)->exchange(); m_pTimers->pause("RebuildInteractions"); m_pTimers->pause("NeighbourSearch"); barrier.wait("dpis::exchange"); m_pTimers->resume("RebuildInteractions"); m_pTimers->resume("NeighbourSearch"); (iter->second)->rebuild(); } resetDisplacements(); m_pTimers->stop("RebuildInteractions"); } /*! Search neighbors - rebuild particle array and interactions */ template void TSubLattice::searchNeighbors() { console.Debug() << "CSubLattice::searchNeighbors()\n"; CMPIBarrier barrier(getWorkerComm()); m_pTimers->start("NeighbourSearch"); m_pTimers->start("RebuildParticleArray"); rebuildParticleArray(); m_pTimers->stop("RebuildParticleArray"); m_pTimers->pause("NeighbourSearch"); barrier.wait("PPA rebuild"); rebuildInteractions(); m_pTimers->stop("NeighbourSearch"); console.Debug() << "end CSubLattice::searchNeighbors()\n"; } /*! Update the interaction groups from an existing Neighbortable \todo check for rebuild Neighbortable */ template void TSubLattice::updateInteractions() { console.Debug() << "updateInteractions() \n"; console.Debug() << "m_ppa->getTimeStamp() " << m_ppa->getTimeStamp() << " m_last_ns " << m_last_ns << "\n"; bool need_update=false; m_pTimers->start("UpdateBondedInteractions"); for(typename map::iterator iter=m_bpis.begin(); iter!=m_bpis.end(); iter++) { bool n=(iter->second)->update(); need_update=need_update || n; } m_pTimers->stop("UpdateBondedInteractions"); if((m_ppa->getTimeStamp() > m_last_ns) || need_update) { m_pTimers->start("UpdateDynamicInteractions"); for(typename map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++) { bool n=(iter->second)->update(); need_update=need_update || n; } m_pTimers->stop("UpdateDynamicInteractions"); for(typename map*>::iterator it=m_WIG.begin(); it!=m_WIG.end(); it++) { (it->second)->Update(m_ppa); } for(typename map::iterator iter=m_damping.begin(); iter!=m_damping.end(); iter++){ (iter->second)->update(); } m_last_ns=m_ppa->getTimeStamp(); } console.Debug() << "end TSubLattice::updateInteractions()\n"; } /*! check if any of the owned particles has moved futher than the search range for the neighbor table 5 Flops(1 dotproduct)/particle looked at */ template void TSubLattice::checkNeighbors() { console.Debug() << "TSubLattice::checkNeighbors()\n"; CMPISGBufferLeaf buffer(m_comm,0,8); double mdsqr=0; // squared max. displacement double alpha=0.5*m_alpha; double srsqr=alpha*alpha; // squared search range vector displ; // displacements int res; // result 0/1 // --- particles --- // get displacement data m_ppa->forAllParticlesGet(displ,&T::getDisplacement); // find maximum particle displacement vector::iterator it=displ.begin(); while((it!=displ.end())&&(mdsqrsrsqr){ res=1; } else { res=0; } // --- mesh --- // only needed if res==0 if(res==0){ for(map::iterator iter=m_mesh.begin(); iter!=m_mesh.end(); iter++){ //std::cerr << "check mesh " << iter->first << std::endl; if(iter->second->hasMovedBy(alpha)){ res=1; } } } buffer.append(res); buffer.send(); console.Debug() << "end TSubLattice::checkNeighbors()\n"; } /*! Reset the displacement of all particles & meshes */ template void TSubLattice::resetDisplacements() { console.Debug() << "slave " << m_rank << " resetDisplacements()\n"; m_ppa->forAllParticles(&T::resetDisplacement); for(map::iterator iter=m_mesh.begin(); iter!=m_mesh.end(); iter++){ iter->second->resetCurrentDisplacement(); } console.Debug() << "slave " << m_rank << " end resetDisplacements()\n"; } /*! Move all particles with a given tag to a given position. Parameters (tag,posn) are received from master. */ template void TSubLattice::moveParticleTo() { console.Debug() << "TSubLattice::moveParticleTo()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); Vec3 mv=buffer.pop_vector(); m_ppa->forParticleTag(tag,(void (T::*)(Vec3))(&T::moveToRel),mv); console.Debug() << "end TSubLattice::moveParticleTo()\n"; } /*! Move all particles with a given tag by a specified displacement. Parameters (tag,displacement) are received from master. */ template void TSubLattice::moveTaggedParticlesBy() { console.Debug() << "TSubLattice::moveTaggedParticlesBy()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master const int tag = buffer.pop_int(); const Vec3 dx = buffer.pop_vector(); m_ppa->forParticleTag(tag, (void (T::*)(Vec3))(&T::moveBy),dx); console.Debug() << "end TSubLattice::moveTaggedParticlesBy()\n"; } template void TSubLattice::moveSingleParticleTo(int particleId, const Vec3 &posn) { m_ppa->forParticle(particleId, (void (T::*)(Vec3))(&T::moveTo), posn); } /*! Move mesh (tri or 2d) node by a given amount. Parameters (name,id,displacement) are received from master. */ template void TSubLattice::moveSingleNode() { console.Debug() << "TSubLattice::moveSingleNode()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string name=string(buffer.pop_string()); int id=buffer.pop_int(); Vec3 disp=buffer.pop_vector(); console.XDebug() << "name :" << name << " id : " << id << " disp " << disp << "\n"; map::iterator tm=m_mesh.find(name); if (tm!=m_mesh.end()){ (tm->second)->moveNode(id,disp); } else { map::iterator m2d=m_mesh2d.find(name); if(m2d!=m_mesh2d.end()){ (m2d->second)->moveNode(id,disp); } } console.Debug() << "end TSubLattice::moveSingleNode()\n"; } /*! Move tagged trimesh nodes by a given amount. Parameters (name,tag,displacement) are received from master. */ template void TSubLattice::moveTaggedNodes() { console.Error() << "TSubLattice::moveTaggedNodes() NOT IMPLEMENTED\n"; throw std::runtime_error( "TSubLattice::moveTaggedNodes() NOT IMPLEMENTED\n" ); #if 0 CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string name=string(buffer.pop_string()); int tag=buffer.pop_int(); Vec3 disp=buffer.pop_vector(); #endif } /*! translate mesh by given amount \param meshName the name of the mesh to be moved \param translation the translation vector */ template void TSubLattice::translateMeshBy(const std::string &meshName, const Vec3 &translation) { map::iterator tm=m_mesh.find(meshName); if (tm != m_mesh.end()){ (tm->second)->translateBy(translation); } map::iterator m2d=m_mesh2d.find(meshName); if(m2d!=m_mesh2d.end()){ (m2d->second)->translateBy(translation); } } template std::pair TSubLattice::findParticleNearestTo(const Vec3 &pt) { console.Debug() << "TSubLattice::findParticleNearestTo: enter\n"; const T *pClosest = NULL; double minDistSqrd = std::numeric_limits::max(); typename ParticleArray::ParticleIterator it = m_ppa->getInnerParticleIterator(); while (it.hasNext()) { const T &p = it.next(); const double distSqrd = (pt - p.getPos()).norm2(); if (distSqrd < minDistSqrd) { minDistSqrd = distSqrd; pClosest = &p; } } console.Debug() << "TSubLattice::findParticleNearestTo: exit\n"; return ( (pClosest != NULL) ? std::make_pair(sqrt(minDistSqrd), pClosest->getID()) : std::make_pair(std::numeric_limits::max(), -1) ); } /*! \todo DO DOCUMENTATION */ template std::pair TSubLattice::getParticlePosn(int particleId) { const T *particle = NULL; typename ParticleArray::ParticleIterator it = m_ppa->getInnerParticleIterator(); while (it.hasNext()) { const T &p = it.next(); if (p.getID() == particleId) { particle = &p; } } if (particle != NULL) { return std::make_pair(particleId, particle->getPos()); } return std::make_pair(-1,Vec3::ZERO); } /*! \todo DO DOCUMENTATION */ template void TSubLattice::getParticleData(const IdVector &particleIdVector) { console.Debug() << "TSubLattice::getParticleData: enter\n"; typedef std::set IdSet; typedef std::vector ParticleVector; ParticleVector particleVector; typename ParticleArray::ParticleIterator it = m_ppa->getInnerParticleIterator(); if (particleIdVector.size() > 0) { IdSet idSet(particleIdVector.begin(), particleIdVector.end()); console.Debug() << "TSubLattice::getParticleData: iterating over particles\n"; while (it.hasNext()) { const T &p = it.next(); if (idSet.find(p.getID()) != idSet.end()) { particleVector.push_back(p); } } } else { m_ppa->getAllInnerParticles(particleVector); } console.Debug() << "TSubLattice::getParticleData:" << " sending particle data of size " << particleVector.size() << "\n"; m_tml_comm.send_gather_packed(particleVector, 0); console.Debug() << "TSubLattice::getParticleData: exit\n"; } /*! Tag particle closest to given position. Params received from master. */ template void TSubLattice::tagParticleNearestTo() { console.Debug() << "TSubLattice::tagParticleNearestTo()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); int mask=buffer.pop_int(); Vec3 pos=buffer.pop_vector(); // warning - this is ugly T* part_ptr=m_ppa->getParticlePtrByPosition(pos); if(part_ptr!=NULL){ int old_tag=part_ptr->getTag(); int new_tag=(old_tag & (~mask)) | (tag & mask); part_ptr->setTag(new_tag); cout << "pos, realpos: " << pos << " " << part_ptr->getPos() << " old tag, new tag " << old_tag << " " << part_ptr->getTag() << endl; } console.Debug() << "end TSubLattice::tagParticleNearestTo()\n"; } /*! Make tagged particles non-dynamic i.e. don't update velocity (rot+lin). Parameters (tag) are received from master. */ template void TSubLattice::setParticleNonDynamic() { console.Debug() << "TSubLattice::setParticleNonDynamic()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); m_ppa->forParticleTag(tag,(void (T::*)())(&T::setNonDynamic)); console.Debug() << "end TSubLattice::setParticleNonDynamic()\n"; } /*! Make tagged particles non-rotational, i.e. don't update rotational velocity & position Parameters (tag) are received from master. */ template void TSubLattice::setParticleNonRot() { console.Debug() << "TSubLattice::setParticleNonRot()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); m_ppa->forParticleTag(tag,(void (T::*)())(&T::setNonDynamicRot)); console.Debug() << "end TSubLattice::setParticleNonRot()\n"; } /*! Make tagged particles lieanr non-dynamic, i.e. don't update linear velocity Parameters (tag) are received from master. */ template void TSubLattice::setParticleNonTrans() { console.Debug() << "TSubLattice::setParticleNonTrans()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); m_ppa->forParticleTag(tag,(void (T::*)())(&T::setNonDynamicLinear)); console.Debug() << "end TSubLattice::setParticleNonTrans()\n"; } /*! Set the velocity of a tagged group of particles. Parameters are received from master. */ template void TSubLattice::setTaggedParticleVel() { console.Debug() << "TSubLattice::setTaggedParticleVel()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); Vec3 v=buffer.pop_vector(); m_ppa->forParticleTag(tag,(void (T::*)(Vec3))(&T::setVel),v); console.XDebug() << "end TSubLattice::setTaggedParticleVel()\n"; } /*! Move wall by a given vector. Parameters are received from master. */ template void TSubLattice::moveWallBy() { console.XDebug() << "TSubLattice::moveWallBy()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string wname=buffer.pop_string(); Vec3 mv=buffer.pop_vector(); typename map::iterator iter=m_walls.find(wname); if(iter!=m_walls.end()) { (iter->second)->moveBy(mv); } } /*! Change wall orientation by a given vector. Parameters are received from master. */ template void TSubLattice::setWallNormal() { console.XDebug() << "TSubLattice::setWallNormal()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string wname=buffer.pop_string(); Vec3 wn=buffer.pop_vector(); typename map::iterator iter=m_walls.find(wname); if(iter!=m_walls.end()) { (iter->second)->setNormal(wn); } } /*! Apply given force to a wall. Parameters are received from master. */ template void TSubLattice::applyForceToWall() { console.XDebug() << "TSubLattice::applyForceToWall()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string wname=buffer.pop_string(); Vec3 f=buffer.pop_vector(); typename map*>::iterator iter=m_WIG.find(wname); if(iter!=m_WIG.end()) { (iter->second)->applyForce(f); } } /*! Set the velocity of a wall. Only for visc. walls, i.e. m_vel is set, but position is not affected. Parameters are received from master. */ template void TSubLattice::setVelocityOfWall() { console.XDebug() << "TSubLattice::setVelocityOfWall()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master string wname=buffer.pop_string(); Vec3 v=buffer.pop_vector(); typename map*>::iterator iter=m_WIG.find(wname); if(iter!=m_WIG.end()) { (iter->second)->setVelocity(v); } } /*! Set the velocity of a particle. Parameters are received from master. */ template void TSubLattice::setParticleVelocity() { console.Debug() << "TSubLattice::setParticleVelocity()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int id=buffer.pop_int(); Vec3 mv=buffer.pop_vector(); m_ppa->forParticle(id,(void (T::*)(Vec3))(&T::setVel),mv); console.XDebug() << "end TSubLattice::setParticleVelocity()\n"; } /*! Set the density of a tagged group of particles. Parameters are received from master. */ template void TSubLattice::setParticleDensity() { console.Debug() << "TSubLattice::setParticleDensity()\n"; CVarMPIBuffer buffer(m_comm); buffer.receiveBroadcast(0); // get data from master int tag=buffer.pop_int(); int mask=buffer.pop_int(); double rho=buffer.pop_double(); m_ppa->forParticleTagMask(tag,mask,(void (T::*)(double))(&T::setDensity),rho); console.XDebug() << "end TSubLattice::setParticleVelocity()\n"; } /*! Send data of owned particles to the master */ template void TSubLattice::sendDataToMaster() { console.Debug() << "TSubLattice::sendDataToMaster()\n"; vector positions; vector radii; vector ids; m_ppa->forAllParticlesGet(positions,(Vec3 (T::*)() const)(&T::getPos)); m_ppa->forAllParticlesGet(radii,(double (T::*)() const)(&T::getRad)); m_ppa->forAllParticlesGet(ids,(int (T::*)() const)(&T::getID)); m_tml_comm.send_gather(positions,0); m_tml_comm.send_gather(radii,0); m_tml_comm.send_gather(ids,0); console.Debug() << "end TSubLattice::sendDataToMaster()\n"; } /*! Send number of owned particles to the master */ template void TSubLattice::countParticles() { console.Debug()<<"TSubLattice::countParticles()\n"; CMPIVarSGBufferLeaf buffer(m_comm,0); //-- pack particles into buffer buffer.append(m_ppa->size()); // send buffer.send(); } /*! Print structural information */ template void TSubLattice::printStruct() { cout<< "My Rank : " << m_rank << "\n" ; if(m_ppa!=NULL) { cout << *m_ppa << endl; } } template void TSubLattice::printData() { cout << "Data: my rank : " << m_rank << "particles : \n" ; m_ppa->forAllParticles((void (T::*)())(&T::print)); } template void TSubLattice::printTimes() { console.Debug() << "time spent calculating force : " << forcetime << " sec\n"; console.Debug() << "time spent communicating : " << commtime << " sec\n"; console.Debug() << "time spent packing : " << packtime << " sec\n"; console.Debug() << "time spent unpacking : " << unpacktime << " sec\n"; } //-------------- FIELD FUNCTIONS ---------------- /*! add scalar per-particle field to saver list */ template void TSubLattice::addScalarParticleField() { // cout << "TSubLattice::addScalarParticleField\n"; string fieldname; int id,is_tagged; m_tml_comm.recv_broadcast_cont(fieldname,0); //cout << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast(id,0); //cout << "recvd. id: " << id << "\n"; m_tml_comm.recv_broadcast(is_tagged,0); //cout << "recvd. is_tagged: " << is_tagged << "\n"; typename T::ScalarFieldFunction rdf=T::getScalarFieldFunction(fieldname); ScalarParticleFieldSlave *new_spfs; if(is_tagged==0) { new_spfs=new ScalarParticleFieldSlave(&m_tml_comm,m_ppa,rdf); } else { int tag,mask; m_tml_comm.recv_broadcast(tag,0); console.XDebug() << "recvd. tag: " << tag << "\n"; m_tml_comm.recv_broadcast(mask,0); console.XDebug() << "recvd. mask: " << mask << "\n"; new_spfs=new ScalarParticleFieldSlaveTagged(&m_tml_comm,m_ppa,rdf,tag,mask); } m_field_slaves.insert(make_pair(id,new_spfs)); } /*! add vector per-particle field to saver list */ template void TSubLattice::addVectorParticleField() { console.XDebug() << "TSubLattice::addVectorParticleField\n"; string fieldname; int id,is_tagged; m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast(id,0); console.XDebug() << "recvd. id: " << id << "\n"; m_tml_comm.recv_broadcast(is_tagged,0); console.XDebug() << "recvd. is_tagged: " << is_tagged << "\n"; typename T::VectorFieldFunction rdf=T::getVectorFieldFunction(fieldname); VectorParticleFieldSlave *new_vpfs; if(is_tagged==0) { new_vpfs=new VectorParticleFieldSlave(&m_tml_comm,m_ppa,rdf); } else { int tag,mask; m_tml_comm.recv_broadcast(tag,0); console.XDebug() << "recvd. tag: " << tag << "\n"; m_tml_comm.recv_broadcast(mask,0); console.XDebug() << "recvd. mask: " << mask << "\n"; new_vpfs=new VectorParticleFieldSlaveTagged(&m_tml_comm,m_ppa,rdf,tag,mask); } m_field_slaves.insert(make_pair(id,new_vpfs)); console.Debug() << "end TSubLattice::addVectorParticleField\n"; } /*! add scalar per-interaction field to saver list */ template void TSubLattice::addScalarInteractionField() { console.XDebug() << "TSubLattice::addScalarInteractionField\n"; string fieldname; string igname; string igtype; int id,is_tagged,tag,mask,is_checked; m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast(id,0); console.XDebug() << "recvd. id: " << id << "\n"; m_tml_comm.recv_broadcast_cont(igname,0); console.XDebug() << "recvd. interaction group name: " << igname << "\n"; m_tml_comm.recv_broadcast_cont(igtype,0); console.XDebug() << "recvd. interaction group name: " << igtype << "\n"; m_tml_comm.recv_broadcast(is_tagged,0); console.XDebug() << "recvd. is_tagged: " << is_tagged << "\n"; // get interaction group map::iterator it=m_dpis.find(igname); if(is_tagged==1) { m_tml_comm.recv_broadcast(tag,0); m_tml_comm.recv_broadcast(mask,0); } m_tml_comm.recv_broadcast(is_checked,0); console.XDebug() << "recvd. is_checked: " << is_checked << "\n"; if(it!=m_dpis.end()) { console.XDebug() << "found interaction group in dynamic\n"; AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewScalarFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); m_field_slaves.insert(make_pair(id,new_sifs)); } else { it=m_bpis.find(igname); if(it!=m_bpis.end()){ console.XDebug() << "found interaction group in bonded\n"; AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewScalarFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); m_field_slaves.insert(make_pair(id,new_sifs)); } else // not in dynamic or bonded -> try damping { //typename map*>::iterator it2=m_damping.find(igname); it=m_damping.find(igname); if(it!=m_damping.end()) // found it in damping { AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewScalarFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); m_field_slaves.insert(make_pair(id,new_sifs)); } else // still not found -> unknown name -> error { cerr << "ERROR : unknown interaction group name in addScalarInteractionField " << endl; } } } console.XDebug() << "end TSubLattice::addScalarInteractionField\n"; } /*! add per-interaction vector field to saver list */ template void TSubLattice::addVectorInteractionField() { console.Debug() << "TSubLattice::addVectorInteractionField\n"; string fieldname; string igname; string igtype; int id,is_tagged,tag,mask,is_checked; m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast(id,0); console.XDebug() << "recvd. id: " << id << "\n"; m_tml_comm.recv_broadcast_cont(igname,0); console.XDebug() << "recvd. interaction group name: " << igname << "\n"; m_tml_comm.recv_broadcast_cont(igtype,0); console.XDebug() << "recvd. interaction group type: " << igtype << "\n"; m_tml_comm.recv_broadcast(is_tagged,0); console.XDebug() << "recvd. is_tagged: " << is_tagged << "\n"; // get interaction group map::iterator it=m_dpis.find(igname); if(is_tagged==1) { m_tml_comm.recv_broadcast(tag,0); m_tml_comm.recv_broadcast(mask,0); } m_tml_comm.recv_broadcast(is_checked,0); console.XDebug() << "recvd. is_checked: " << is_checked << "\n"; if(it!=m_dpis.end()) { console.XDebug() << "found interaction group in dynamic\n"; AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewVectorFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); if(new_sifs!=NULL){ m_field_slaves.insert(make_pair(id,new_sifs)); } else { console.Error()<<"ERROR: could not generate Field Slave for field " << fieldname << "\n"; } } else { it=m_bpis.find(igname); if(it!=m_bpis.end()){ console.XDebug() << "found interaction group in bonded\n"; AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewVectorFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); m_field_slaves.insert(make_pair(id,new_sifs)); } else // not in dynamic or bonded -> try damping { //typename map*>::iterator it2=m_damping.find(igname); it=m_damping.find(igname); if(it!=m_damping.end()) // found it in damping { AFieldSlave* new_sifs; new_sifs=(it->second)->generateNewVectorFieldSlave(&m_tml_comm,fieldname,is_checked,is_tagged,tag,mask); m_field_slaves.insert(make_pair(id,new_sifs)); } else // still not found -> unknown name -> error { cerr << "ERROR : unknown interaction group name in addScalarInteractionField " << endl; } } } console.Debug() << "end TSubLattice::addVectorInteractionField\n"; } /*! Add a per-triangle (in case of a TriMesh) of per-edge (in case of a Mesh2D) vector field saver. Data received from master. */ template void TSubLattice::addVectorTriangleField() { console.Debug() << "TSubLattice::addVectorTriangleField()\n"; string fieldname; string meshname; int id; // receive params m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast_cont(meshname,0); console.XDebug() << "recvd. meshname: " << meshname << "\n"; m_tml_comm.recv_broadcast(id,0); console.XDebug() << "recvd. id: " << id << "\n"; map::iterator tm=m_mesh.find(meshname); // if meshname is in trimesh map if (tm!=m_mesh.end()){ // get reader function Triangle::VectorFieldFunction rdf=Triangle::getVectorFieldFunction(fieldname); // check it if(rdf==NULL){ console.Critical() << "NULL rdf !!!\n"; } VectorTriangleFieldSlave* new_vfs=new VectorTriangleFieldSlave(&m_tml_comm,tm->second,rdf); m_field_slaves.insert(make_pair(id,new_vfs)); } else { map::iterator m2d=m_mesh2d.find(meshname); if(m2d!=m_mesh2d.end()){ Edge2D::VectorFieldFunction rdf=Edge2D::getVectorFieldFunction(fieldname); // check it if(rdf==NULL){ console.Critical() << "NULL rdf !!!\n"; } VectorEdge2DFieldSlave* new_efs= new VectorEdge2DFieldSlave(&m_tml_comm,m2d->second,rdf); m_field_slaves.insert(make_pair(id,new_efs)); } } console.Debug() << "end TSubLattice::addVectorTriangleField()\n"; } /*! Add a per-triangle scalar field saver. Data received from master. */ template void TSubLattice::addScalarTriangleField() { console.Debug() << "TSubLattice::addScalarTriangleField()\n"; string fieldname; string meshname; int id; // receive params m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast_cont(meshname,0); console.XDebug() << "recvd. meshname: " << meshname << "\n"; m_tml_comm.recv_broadcast(id,0); console.XDebug() << "recvd. id: " << id << "\n"; // get reader function Triangle::ScalarFieldFunction rdf=Triangle::getScalarFieldFunction(fieldname); // check it if(rdf==NULL){ console.Critical() << "NULL rdf !!!\n"; } ScalarTriangleFieldSlave* new_vtfs=new ScalarTriangleFieldSlave(&m_tml_comm,m_mesh[meshname],rdf); m_field_slaves.insert(make_pair(id,new_vtfs)); console.Debug() << "end TSubLattice::addScalarTriangleField()\n"; } /*! Add vector wall field. Data received from master. */ template void TSubLattice::addVectorWallField() { console.XDebug() << "begin TSubLattice::addVectorWallField()\n"; string fieldname; string tmp_wallname; vector wallnames; int nwall; int id; // receive params m_tml_comm.recv_broadcast_cont(fieldname,0); console.XDebug() << "recvd. fieldname: " << fieldname << "\n"; m_tml_comm.recv_broadcast(nwall,0); console.XDebug() << "recvd. nwall: " << nwall << "\n"; for(int i=0;i::iterator cwalliter=m_walls.find(*(wallnames.begin())); if(cwalliter==m_walls.end()){ // 1st wall name invalid -> exit std::stringstream msg; msg << "ERROR in addVectorWallField: wallname '" << *(wallnames.begin()) << " 'invalid. Valid wall names: "; for (map::const_iterator it = m_walls.begin(); it != m_walls.end(); it++) { msg << "'" << it->first << "' "; } console.Error() << msg.str() << "\n"; throw std::runtime_error(msg.str()); } else { // first wall valid -> try to get slave // get summation flag from wall int sumflag=(cwalliter->second)->getFieldSummationFlag(fieldname); // if process 1, send summation flag back to master if(m_tml_comm.rank()==1){ m_tml_comm.send(sumflag,0); } m_tml_comm.barrier(); //field slave AWallFieldSlave* new_fs=(cwalliter->second)->generateVectorFieldSlave(&m_tml_comm,fieldname); // try to insert other walls vector::iterator niter=wallnames.begin(); if(niter!=wallnames.end()) niter++ ; // jump past 1st wall - already got it while(niter!=wallnames.end()){ string wname=*niter; map::iterator iter=m_walls.find(wname); if(iter==m_walls.end()){ // wall name invalid -> exit std::stringstream msg; msg << "ERROR in addVectorWallField: wallname '" << wname << " 'invalid"; for (map::const_iterator it = m_walls.begin(); it != m_walls.end(); it++) { msg << "'" << it->first << "' "; } console.Error() << msg.str() << "\n"; throw std::runtime_error(msg.str()); } else { new_fs->addWall(iter->second); } niter++; } if(new_fs!=NULL){ m_field_slaves.insert(make_pair(id,new_fs)); } else { console.Error() << "ERROR in addVectorWallField: got NULL Slave\n"; } } console.XDebug() << "end TSubLattice::addVectorWallField()\n"; } /*! send field data to master */ template void TSubLattice::sendFieldData() { console.Debug() << "TSubLattice::sendFieldData()\n"; // receive id's of field to send int id; m_tml_comm.recv_broadcast(id,0); console.Debug() << "received field id " << id << " for data collection\n" ; if(m_field_slaves[id] != NULL) { m_field_slaves[id]->sendData(); } else { // can not happen cerr << "NULL pointer in m_field_slaves!" << endl; } // call the sending function of the field console.Debug() << "end TSubLattice::sendFieldData()\n"; } // ---- Checkpointing ---------- /*! save snapshot data, i.e. for viz/postprocessing */ template void TSubLattice::saveSnapShotData(std::ostream &oStream) { // get precision of output stream and set it to 9 significant digits std::streamsize oldprec=oStream.precision(9); // // Save particle check-point data // ParticleArray &particleArray = dynamic_cast(*m_ppa); typename ParticleArray::ParticleIterator particleIt(particleArray.getInnerParticleIterator()); const std::string delim = "\n"; oStream << particleIt.getNumRemaining() << delim; while (particleIt.hasNext()) { particleIt.next().saveSnapShotData(oStream); oStream << delim; } // // Save Bonded interaction check-point data. // typedef std::map NameBondedInteractionsMap; typename NameBondedInteractionsMap::iterator it; oStream << m_bpis.size() << delim; for (it = m_bpis.begin(); it != m_bpis.end(); it++) { it->second->saveSnapShotData(oStream); oStream << delim; } // dump trimeshdata (if exists) oStream << "TMIG " << m_mesh.size() << delim; for(typename map::iterator tm_iter=m_mesh.begin(); tm_iter!=m_mesh.end(); tm_iter++){ oStream << tm_iter->first << delim; tm_iter->second->writeCheckPoint(oStream,delim); } // restore output stream to old precision oStream.precision(oldprec); } /*! save checkpoint data, i.e. for restarting */ template void TSubLattice::saveCheckPointData(std::ostream &oStream) { const std::string delim = "\n"; // // Save particle check-point data // m_ppa->saveCheckPointData(oStream); // // Save Bonded interaction check-point data. // typedef std::map NameBondedInteractionsMap; typename NameBondedInteractionsMap::iterator it; oStream << m_bpis.size() << delim; for (it = m_bpis.begin(); it != m_bpis.end(); it++) { it->second->saveCheckPointData(oStream); oStream << delim; } // // Save Non-bonded interaction check-point data // int count_save=0; for(std::map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++){ if(iter->second->willSave()) count_save++; } oStream << count_save << delim; for(std::map::iterator iter=m_dpis.begin(); iter!=m_dpis.end(); iter++){ if(iter->second->willSave()) { iter->second->saveCheckPointData(oStream); oStream << delim; } } // Save walls (name, pos, normal) oStream << "Walls " << m_walls.size() << delim; for(map::iterator w_iter=m_walls.begin(); w_iter!=m_walls.end(); w_iter++){ oStream << w_iter->first << delim; w_iter->second->writeCheckPoint(oStream,delim); } // dump trimeshdata (if exists) oStream << "TriMesh " << m_mesh.size() << delim; for(typename map::iterator tm_iter=m_mesh.begin(); tm_iter!=m_mesh.end(); tm_iter++){ oStream << tm_iter->first << delim; tm_iter->second->writeCheckPoint(oStream,delim); } // dump 2D mesh data (if exists) oStream << "Mesh2D " << m_mesh2d.size() << delim; for(typename map::iterator tm_iter=m_mesh2d.begin(); tm_iter!=m_mesh2d.end(); tm_iter++){ oStream << tm_iter->first << delim; tm_iter->second->writeCheckPoint(oStream,delim); } } template void TSubLattice::loadCheckPointData(std::istream &iStream) { // get particles m_ppa->loadCheckPointData(iStream); // rebuild neighbor table CMPIBarrier barrier(getWorkerComm()); m_ppa->rebuild(); barrier.wait("PPA rebuild"); //-- get bonds -- // get nr. of bonded interaction group in the checkpoint file unsigned int nr_bonded_ig; iStream >> nr_bonded_ig; // compare with existing bonded particle interaction storage (bpis) // barf if not equal if(nr_bonded_ig!=m_bpis.size()){ std::cerr << "number of bonded interaction groups differ between snapshot and script!" << std::endl; } else { // numbers fit -> read data for (map::iterator it = m_bpis.begin(); it != m_bpis.end(); it++) { // for all interaction groups it->second->loadCheckPointData(iStream); } } //-- get nonbonded interactions -- // get nr. of non-bonded interaction group in the checkpoint file unsigned int nr_nonbonded_ig; iStream >> nr_nonbonded_ig; // compare with existing non-bonded (dynamic) particle interaction storage (dpis) // barf if not equal if(nr_nonbonded_ig!=m_dpis.size()){ std::cerr << "number of dynamic interaction groups differ between snapshot and script!" << std::endl; } else { // numbers fit -> read data for (map::iterator it = m_dpis.begin(); it != m_dpis.end(); it++) { // for all interaction groups it->second->loadCheckPointData(iStream); } } //--- load walls --- string token; iStream >> token; if(token!="Walls") { // found wrong token -> barf std::cerr << "expected Walls , got " << token << std::endl; } // nr. of walls int nwalls; iStream >> nwalls; // read wall names & data string wname; for(int i=0;i> wname; new_wall->loadCheckPoint(iStream); m_walls[wname]=new_wall; } // --- load meshes -- int nmesh; string mname; // Trimesh (3D) iStream >> token; if(token!="TriMesh") { // found wrong token -> barf std::cerr << "expected TriMesh , got " << token << std::endl; } // nr. of meshes iStream >> nmesh; // read wall names & data for(int i=0;i> mname; new_tm->loadCheckPoint(iStream); m_mesh.insert(make_pair(mname,new_tm)); } // Mesh2D iStream >> token; if(token!="Mesh2D") { // found wrong token -> barf std::cerr << "expected Mesh2D , got " << token << std::endl; } // nr. of meshes iStream >> nmesh; // read wall names & data for(int i=0;i> mname; new_m2d->loadCheckPoint(iStream); m_mesh2d.insert(make_pair(mname,new_m2d)); } } // -- mesh data exchange functions -- /*! send back node ids of given mesh, get mesh name from master */ template void TSubLattice::getMeshNodeRef() { console.XDebug() << "TSubLattice::getMeshNodeRef()\n"; vector ref_vec; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive mesh name param_buffer.receiveBroadcast(0); string meshname=param_buffer.pop_string(); console.XDebug() << "Mesh name: " << meshname << "\n"; // find mesh & collect node ids into array map::iterator tm=m_mesh.find(meshname); if (tm!=m_mesh.end()){ for(TriMesh::corner_iterator iter=(tm->second)->corners_begin(); iter!=(tm->second)->corners_end(); iter++){ ref_vec.push_back(iter->getID()); } } else { map::iterator m2d=m_mesh2d.find(meshname); if(m2d!=m_mesh2d.end()){ for(Mesh2D::corner_iterator iter=(m2d->second)->corners_begin(); iter!=(m2d->second)->corners_end(); iter++){ ref_vec.push_back(iter->getID()); } } else { console.Critical() << "ERROR - WRONG MESH NAME IN getMeshNodeRef() !! \n"; } } // send back to master m_tml_comm.send_gather(ref_vec,0); console.XDebug() << "end TSubLattice::getMeshNodeRef()\n"; } /*! send back face (edge in 2D, triangle in 3d) ids of given mesh, get mesh name from master */ template void TSubLattice::getMeshFaceRef() { console.XDebug() << "TSubLattice::getMeshFaceRef()\n"; vector ref_vec; // MPI buffer CVarMPIBuffer param_buffer(m_comm); // receive mesh name param_buffer.receiveBroadcast(0); string meshname=param_buffer.pop_string(); console.XDebug() << "Mesh name: " << meshname << "\n"; // find mesh & collect node ids into array map::iterator tm=m_mesh.find(meshname); if (tm!=m_mesh.end()){ for(TriMesh::triangle_iterator iter=(tm->second)->triangles_begin(); iter!=(tm->second)->triangles_end(); iter++){ ref_vec.push_back(iter->getID()); } } else { map::iterator m2d=m_mesh2d.find(meshname); if(m2d!=m_mesh2d.end()){ for(Mesh2D::edge_iterator iter=(m2d->second)->edges_begin(); iter!=(m2d->second)->edges_end(); iter++){ ref_vec.push_back(iter->getID()); } } else { console.Critical() << "ERROR - WRONG MESH NAME IN getMeshNodeRef() !! \n"; } } // send back to master m_tml_comm.send_gather(ref_vec,0); console.XDebug() << "end TSubLattice::getMeshNodeRef()\n"; } /*! send back stress on faces of given mesh, get mesh name from master */ template void TSubLattice::getMesh2DStress() { console.XDebug() << "TSubLattice::getMesh2DStress()\n"; // receive mesh name // MPI buffer CVarMPIBuffer param_buffer(m_comm); param_buffer.receiveBroadcast(0); string meshname=param_buffer.pop_string(); console.XDebug() << "Mesh name: " << meshname << "\n"; // find mesh & collect data map::iterator m2d=m_mesh2d.find(meshname); if(m2d!=m_mesh2d.end()){ vector > data_vec; // get data data_vec=(m2d->second)->forAllEdgesGetIndexed(&Edge2D::getForceDensity); // send data to master m_tml_comm.send_gather(data_vec,0); } else { console.Critical() << "ERROR - WRONG MESH NAME IN getMesh2DStress() !! \n"; } console.XDebug() << "end TSubLattice::getMesh2DStress()\n"; } /*! send back stress on faces of given mesh, get mesh name from master */ template void TSubLattice::getTriMeshForce() { console.XDebug() << "TSubLattice::getTriMeshStress(): enter\n"; // receive mesh name // MPI buffers CVarMPIBuffer param_buffer(m_comm); param_buffer.receiveBroadcast(0); const std::string meshName = param_buffer.pop_string(); console.XDebug() << "Mesh name: " << meshName << "\n"; // find mesh & collect data map::iterator m=m_mesh.find(meshName); if(m != m_mesh.end()){ vector > data_vec; // get data data_vec=(m->second)->forAllTrianglesGetIndexed(&Triangle::getForce); // send data to master m_tml_comm.send_gather(data_vec,0); } else { std::stringstream msg; msg << "Invalid mesh name: " << meshName << ". No such triangular mesh."; throw std::runtime_error(msg.str().c_str()); } console.XDebug() << "TSubLattice::getTriMeshStress(): exit\n"; } ./Parallel/mpisgbuf.h0000664000175000017500000000763612176660653014374 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPISGBUF_H #define __MPISGBUF_H #include #include #include "Parallel/mpibuf.h" /*! \class AMPISGBufferRoot \brief Abstract base class for scatter/gather buffer, root component \author Steffen Abe $Revision$ $Date$ */ class AMPISGBufferRoot { protected: MPI_Comm m_comm; //!< the MPI communicator used for the scatter/gather operations int m_rank; //!< the rank in this communicator int m_size; //!< size of the communicator int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double MPI_Status m_status; public: AMPISGBufferRoot(MPI_Comm); virtual ~AMPISGBufferRoot(){}; virtual void clear()=0; virtual void gather()=0; virtual void scatter()=0; virtual void append(int,int)=0; virtual void append(double,int)=0; virtual void append(const char*,int)=0; virtual void append(const Vec3 &,int); virtual int pop_int(int)=0; virtual double pop_double(int)=0; virtual void pop_doubles(int,double *,int)=0; virtual Vec3 pop_vector(int); const MPI_Status& status(){return m_status;}; }; /*! \class AMPISGBufferLeaf \brief Abstract base class for scatter/gather buffer, leaf component \author Steffen Abe $Revision$ $Date$ */ class AMPISGBufferLeaf : public AMPIBuffer { protected: int m_root; //!< rank of the root process int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double public: AMPISGBufferLeaf(MPI_Comm,int); virtual ~AMPISGBufferLeaf(){}; virtual void clear()=0; virtual void send()=0; virtual void receive()=0; virtual void append(int)=0; virtual void append(double)=0; virtual int pop_int()=0; virtual double pop_double()=0; virtual void pop_doubles(double *,int)=0; virtual std::string pop_string()=0; const MPI_Status& status(){return m_status;}; }; /*! \class CMPISGBufferRoot \brief Buffer for MPI scatter/gather, root component \author Steffen Abe $Revision$ $Date$ */ class CMPISGBufferRoot : public AMPISGBufferRoot { private: char* m_buffer; char* m_dummy_buffer; //! using std::runtime_error; // --- IO includes --- #include using std::ifstream; namespace esys { namespace lsm { /*! construct MeshReader implementation from file \param filename the name of the file */ MeshReader::Impl::Impl(const string& filename) :m_file_name(filename) { } void MeshReader::Impl::initialise() { // open file m_istream_ptr=IStreamPtr(new ifstream(m_file_name.c_str())); istream* the_istream=m_istream_ptr.get(); // check if file is open if(!(*m_istream_ptr)){ throw runtime_error("Can not open mesh file " + m_file_name); } console.Debug() << "Reading mesh file " << m_file_name << " open \n"; // initialize reader with stream m_node_reader_ptr=NodeReaderPtr(new NodeReader(*the_istream)); m_tri_reader_ptr=TriReaderPtr(new TriReader(*the_istream)); } } // end namespace lsm } // end namespace esys ./Parallel/SubLatticeControler.h0000664000175000017500000000546512176660653016505 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SUBLATTICECONTROLER_H #define __SUBLATTICECONTROLER_H //--- MPI --- #include //--- TML includes --- #include "tml/comm/comm.h" #include "tml/comm/comm_world.h" #include "Parallel/SubLattice.h" #include "Parallel/CheckPointable.h" #include "Foundation/Timer.h" #include class CheckPointer; /*! \class CSubLatticeControler \brief class for control of a SubLattice Does initialisation and control of a TSubLattice and comunicates with the TLatticeMaster \author Steffen Abe $Revision$ $Date$ */ class CSubLatticeControler : esys::lsm::CheckPointable { private: int m_global_rank; int m_global_size; int m_local_rank; int m_local_size; MPI_Comm m_global_comm; // global MPI communicator MPI_Comm m_local_comm; // MPI communicator of the spawned workers MPI_Group m_global_group, m_local_group; // MPI groups TML_Comm m_tml_global_comm; TML_Comm m_tml_local_comm; ASubLattice* m_lattice; CheckPointer* m_pCheckPointer; // for restatable checkpoints CheckPointer* m_pSnapShooter; // for visualization dumps std::string m_timingFileName; typedef boost::shared_ptr MpiWTimersPtr; MpiWTimersPtr m_timersPtr; public: CSubLatticeControler(); ~CSubLatticeControler(); void initMPI(); void makeLattice(); void initLattice(); void initLatticeCirc(); void init2DTriangularLocal(); void init3DTriangularLocal(); void searchNeighbors(); void performTiming(); void saveTimingData(); void getIdParticleData(); void setTimeStepSize(); void setTimingFileName(const std::string &timingFileName) {m_timingFileName=timingFileName;} const std::string &getTimingFileName() const {return m_timingFileName;} void do2dCalculations(); void getNumParticles(); void findParticleNearestToPoint(); void getParticlePosn(); void moveSingleParticle(); // void getBondGroupIdPairs(); void translateMeshBy(); void run(); void setVerbosity(); virtual void saveCheckPointData(std::ostream &oStream); virtual void saveSnapShotData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); }; #endif //__SUBLATTICECONTROLER_H ./Parallel/MpiInfo.h0000664000175000017500000000213212176660653014103 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MPIINFO_H #define MPIINFO_H #include /** * Convenience class for obtaining rank of current process * (and size of a specified MPI_Comm). */ class MpiInfo { public: /** * Rank and size for specified MPI_Comm. */ MpiInfo(MPI_Comm comm = MPI_COMM_WORLD); virtual ~MpiInfo(); /** * */ int rank() const; /** * */ int size() const; private: MPI_Comm m_comm; }; #endif ./Parallel/MpiWrap.h0000664000175000017500000000160212176660653014122 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MPIWRAP_H #include #if HAVE_CONFIG_H #include "config.h" #endif #if HAVE_MPI_COMM_DISCONNECT #else inline int MPI_Comm_disconnect(MPI_Comm *comm) { return MPI_Comm_free(comm); } #endif #endif ./Parallel/mpia2abuf.h0000664000175000017500000000331312176660653014412 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPIA2ABUFFER_H #define __MPIA2ABUFFER_H #include /*! \class CMPIA2ABuffer \brief class for a MPI-buffer supporting all-to-all communication \author Steffen Abe $Revision$ $Date$ */ class CMPIA2ABuffer { private: MPI_Comm m_comm; int m_rank; //!< the rank in this communicator int m_size; //!< size of the communicator int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double MPI_Status m_status; char* m_buffer_s; //!< send buffer char* m_buffer_r; //!< receive buffer int m_buffersize; //!< the size of the buffer per slice int *m_position_s; //!< the current end of the content in each slice of the send buffer int *m_position_r; //!< the current end of the content in each slice of the receive buffer public: CMPIA2ABuffer(MPI_Comm,int); virtual ~CMPIA2ABuffer(); virtual void clear(); virtual void all2all(); virtual void append(int,int); virtual void append(double,int); virtual int pop_int(int); virtual double pop_double(int); }; #endif //__MPIA2ABUFFER_H ./Parallel/BMesh2D_cmd.h0000664000175000017500000000235412176660653014557 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BMESH2D_CMD_H #define __BMESH2D_CMD_H // -- project includes -- #include "Parallel/BroadCast_cmd.h" #include "Model/BMesh2DIP.h" #include "Model/BTriMeshIP.h" /*! \class BondedMesh2DIGCommand \brief command for adding bonded interactions with 2d mesh $Revision$ */ class BondedMesh2DIGCommand : public BroadcastCommand { public: BondedMesh2DIGCommand(const MpiRankAndComm&); void appendMesh2DParam(const BMesh2DIP&); void appendGapBuildPrms(const MeshGapBuildPrms&); void appendTagBuildPrms(const MeshTagBuildPrms&); }; #endif //__BMESH2D_CMD_H ./Parallel/Makefile.am0000664000175000017500000000522412176660653014432 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libParallel.la AM_CPPFLAGS += \ $(SILO_CPPFLAGS) \ -I$(top_builddir) \ -I$(top_srcdir)/Foundation \ -I$(top_srcdir)/Model \ -I$(top_srcdir)/Fields \ -I$(top_srcdir)/Interface \ -I$(top_srcdir)/MainBE \ -I$(top_srcdir)/Socket AM_LDFLAGS += $(SILO_LDFLAGS) libParallel_la_LDFLAGS = libParallel_la_SOURCES = \ ASubLattice.cpp \ ASubLattice.h \ LatticeMaster.cpp \ LatticeMaster.h \ mpia2abuf.cpp \ mpia2abuf.h \ mpibarrier.cpp \ mpibarrier.h \ mpibuf.cpp \ mpibuf.h \ mpicmdbuf.cpp \ mpicmdbuf.h \ mpisgbuf.cpp \ mpisgbuf.h \ mpisgvbuf.cpp \ mpisgvbuf.h \ mpi_tag_defs.h \ mpivbuf.cpp \ mpivbuf.h \ sublattice_cmd.h \ SubLatticeControler.cpp \ SubLatticeControler.h \ SubLattice.cpp \ SubLattice.h \ SubLattice.hpp \ RotSubLattice.h \ RotSubLattice.hpp \ CheckPointer.cpp \ CheckPointController.cpp \ CheckPointParams.cpp \ MpiInfo.cpp \ CheckPointer.h \ CheckPointController.h \ CheckPointParams.h \ MpiInfo.h \ GeometryReader.cpp \ GeometryReader.h \ CheckPointInfo.cpp \ CheckPointLoader.cpp \ CheckPointInfo.h \ CheckPointLoader.h \ LatticeParam.cpp \ LatticeParam.h \ MpiWrap.h \ BroadCast_cmd.h \ BroadCast_cmd.hpp \ BroadCast_cmd.cpp \ BMesh2D_cmd.h \ BMesh2D_cmd.cpp \ GetRef_cmd.h \ GetRef_cmd.cpp \ RankAndComm.h \ LatticeMaster.hpp libParallel_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/ppa/src/libppa.la \ $(top_builddir)/tml/message/libTmlMessage.la \ $(top_builddir)/tml/type/libTmlType.la \ $(top_builddir)/Model/libModel.la \ $(top_builddir)/tml/comm/libTmlComm.la \ $(top_builddir)/Fields/libFields.la noinst_HEADERS = \ MeshReaderImpl.h \ Mesh2DReaderImpl.h ./Parallel/CheckPointer.cpp0000664000175000017500000000660612176660653015465 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/CheckPointer.h" #include "Parallel/CheckPointParams.h" #include "Parallel/CheckPointable.h" #include "Parallel/mpivbuf.h" #include "Parallel/mpibarrier.h" #include "Foundation/console.h" //--- TML includes --- #include "tml/comm/comm.h" #include #include using esys::lsm::CheckPointable; CheckPointer::CheckPointer(CheckPointable &checkPointable, MPI_Comm mpiComm) : m_pCheckPointable(&checkPointable), m_mpiComm(mpiComm) { } CheckPointer::~CheckPointer() { } MPI_Comm CheckPointer::getMpiComm() const { return m_mpiComm; } void CheckPointer::setMpiComm(MPI_Comm mpiComm) { m_mpiComm = mpiComm; } void CheckPointer::saveRestartable() { CVarMPIBuffer buffer(getMpiComm()); // get check-point parameters buffer.receiveBroadcast(0); CheckPointParams checkPointParams = CheckPointParams::unpackFrom(&buffer, getMpiComm()); // Write the check-point info to file. std::ofstream oStream(checkPointParams.getFileName().c_str()); // set output precision console.Debug() << "output precision: " << checkPointParams.getPrecision() << "\n"; oStream.precision(checkPointParams.getPrecision()); m_pCheckPointable->saveCheckPointData(oStream); oStream.close(); } void CheckPointer::saveDump() { CVarMPIBuffer buffer(getMpiComm()); // get check-point parameters buffer.receiveBroadcast(0); CheckPointParams checkPointParams = CheckPointParams::unpackFrom(&buffer, getMpiComm()); // Write the check-point info to file. std::ofstream oStream(checkPointParams.getFileName().c_str()); m_pCheckPointable->saveSnapShotData(oStream); oStream.close(); } void CheckPointer::saveThroughMaster(TML_Comm& comm) { CVarMPIBuffer buffer(getMpiComm()); CMPIBarrier barrier(getMpiComm()); console.Debug() << "CheckPointer::saveThroughMaster" << "\n"; // get check-point parameters buffer.receiveBroadcast(0); CheckPointParams checkPointParams = CheckPointParams::unpackFrom(&buffer, getMpiComm()); // Write the check-point info to string stream. std::ostringstream oStream; save(oStream); console.Debug() << "string length : " << oStream.str().size() << "\n"; string str_data=oStream.str(); barrier.wait("CheckPoint_1"); comm.send_gather(str_data,0); } void CheckPointer::loadCheckPoint() { CVarMPIBuffer buffer(getMpiComm()); // get check-point parameters buffer.receiveBroadcast(0); CheckPointParams checkPointParams = CheckPointParams::unpackFrom(&buffer, getMpiComm()); // Write the check-point info to file. std::ifstream iStream(checkPointParams.getFileName().c_str()); m_pCheckPointable->loadCheckPointData(iStream); iStream.close(); } void CheckPointer::save(std::ostream &oStream) { m_pCheckPointable->saveCheckPointData(oStream); } ./Parallel/CheckPointController.cpp0000664000175000017500000002635312176660653017203 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/CheckPointController.h" #include "Parallel/mpicmdbuf.h" #include "Parallel/mpibarrier.h" #include "Parallel/sublattice_cmd.h" #include "Parallel/MpiInfo.h" #include "Parallel/CheckPointParams.h" #include "Parallel/mpivbuf.h" #include "Parallel/CheckPointInfo.h" //--- TML includes --- #include "tml/comm/comm.h" #include #include #include #include #include #include #include using std::multimap; using std::vector; using std::string; using std::istream_iterator; using std::back_inserter; using std::ostringstream; /*! default constructor */ CheckPointController::CheckPointController() : m_mpiComm(MPI_COMM_WORLD), m_fileNamePrefix(""), m_beginTime(-1), m_endTime(-1), m_timeInterval(-1), m_geoInfo(), m_numTimeSteps(0), m_timeStepSize(0.0), m_writeThroughMaster(false), m_precision(12) { m_spatialDomainHasBeenSet=false; } CheckPointController::CheckPointController( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, bool writeThroughMaster ) : m_mpiComm(MPI_COMM_WORLD), m_fileNamePrefix(fileNamePrefix), m_beginTime(beginTime), m_endTime(endTime), m_timeInterval(timeInterval), m_geoInfo(), m_numTimeSteps(0), m_timeStepSize(0.0), m_writeThroughMaster(writeThroughMaster), m_precision(12) { m_spatialDomainHasBeenSet=false; } CheckPointController::~CheckPointController() { } /*! Issue checkpointing command, i.e. broadcast command via MPI to worker processes, if currentTime is a time at which a checkpoint needs to be taken \param currentTime the current time step */ void CheckPointController::performCheckPoint(int currentTime) { if (isCheckPoint(currentTime)) { if(m_writeThroughMaster){ issueCheckPointCmdWTM(currentTime); } else { issueCheckPointCmd(currentTime); } } } /*! Issue snapshot command, i.e. broadcast command via MPI to worker processes, if currentTime is a time at which a snapshot needs to be taken \param currentTime the current time step */ void CheckPointController::performSnapShot(int currentTime) { if (isCheckPoint(currentTime)) { issueSnapShotCmd(currentTime); } } MPI_Comm CheckPointController::getMpiComm() const { return m_mpiComm; } void CheckPointController::setMpiComm(MPI_Comm mpiComm) { m_mpiComm = mpiComm; } /*! Broadcast checkpointing command to workers and write info file (*_0.txt) \param currentTime the current time step */ void CheckPointController::issueCheckPointCmd(int currentTime) { CMPILCmdBuffer cmd_buffer(getMpiComm(), MpiInfo(getMpiComm()).rank()); CMPIBarrier barrier(getMpiComm()); cmd_buffer.broadcast(CMD_SAVECHECKPOINT); CVarMPIBuffer buffer(getMpiComm()); // send check-point parameters CheckPointParams checkPointParams(m_fileNamePrefix, currentTime, MpiInfo(getMpiComm()).rank(),m_precision); checkPointParams.packInto(&buffer); buffer.broadcast(0); buffer.clear(); std::ofstream oStream(checkPointParams.getFileName().c_str()); esys::lsm::CheckPointInfo cpInfo; cpInfo.setLatticeDataFiles(getLatticeDataFiles(currentTime)); cpInfo.setGeometryInfo(getGeometryInfo()); cpInfo.setTimeStep(currentTime); cpInfo.setTimeStepSize(getTimeStepSize()); cpInfo.setNumTimeSteps(getNumTimeSteps()); cpInfo.write(oStream); oStream.close(); barrier.wait("CheckPoint"); } /*! checkpointing with writing through master \param currentTime the current time step */ void CheckPointController::issueCheckPointCmdWTM(int currentTime) { CMPILCmdBuffer cmd_buffer(getMpiComm(), MpiInfo(getMpiComm()).rank()); CMPIBarrier barrier(getMpiComm()); cmd_buffer.broadcast(CMD_SAVECHECKPOINTWTM); CVarMPIBuffer buffer(getMpiComm()); // send check-point parameters CheckPointParams checkPointParams(m_fileNamePrefix, currentTime, MpiInfo(getMpiComm()).rank(),m_precision); checkPointParams.packInto(&buffer); buffer.broadcast(0); buffer.clear(); std::ofstream oStream(checkPointParams.getFileName().c_str()); esys::lsm::CheckPointInfo cpInfo; cpInfo.setLatticeDataFiles(getLatticeDataFiles(currentTime)); cpInfo.setGeometryInfo(getGeometryInfo()); cpInfo.setTimeStep(currentTime); cpInfo.setTimeStepSize(getTimeStepSize()); cpInfo.setNumTimeSteps(getNumTimeSteps()); cpInfo.write(oStream); oStream.close(); barrier.wait("CheckPoint_1"); // receive data from workers multimap worker_data; TML_Comm global_comm(MPI_COMM_WORLD); global_comm.gather(worker_data); console.Debug() << "worker data size: " << worker_data.size() << "\n"; barrier.wait("CheckPoint_2"); } /*! save meta-data and issue snapshot command to worker processes N.B.: the "binary" flag is forced to false of non-restart snapshots \param currentTime The current time step. */ void CheckPointController::issueSnapShotCmd(int currentTime) { CMPILCmdBuffer cmd_buffer(getMpiComm(), MpiInfo(getMpiComm()).rank()); CMPIBarrier barrier(getMpiComm()); cmd_buffer.broadcast(CMD_SAVESNAPSHOT); CVarMPIBuffer buffer(getMpiComm()); // send check-point parameters CheckPointParams checkPointParams(m_fileNamePrefix, currentTime, MpiInfo(getMpiComm()).rank(),false); checkPointParams.packInto(&buffer); buffer.broadcast(0); buffer.clear(); ofstream oStream(checkPointParams.getFileName().c_str()); esys::lsm::CheckPointInfo cpInfo; cpInfo.setLatticeDataFiles(getLatticeDataFiles(currentTime)); cpInfo.setGeometryInfo(getGeometryInfo()); cpInfo.setTimeStep(currentTime); cpInfo.setTimeStepSize(getTimeStepSize()); cpInfo.setNumTimeSteps(getNumTimeSteps()); cpInfo.write(oStream); oStream.close(); barrier.wait("SnapShot"); } /*! read meta-data and issue checkpoint loading command to worker processes \param metafile_name the name of the file with the meta-data */ void CheckPointController::issueCheckPointLoadingCmd(const std::string& metafile_name) { console.Debug() << "CheckPointController::issueCheckPointLoadingCmd()\n"; CMPILCmdBuffer cmd_buffer(getMpiComm(), MpiInfo(getMpiComm()).rank()); CMPIBarrier barrier(getMpiComm()); // send command to workers cmd_buffer.broadcast(CMD_LOADCHECKPOINT); CVarMPIBuffer buffer(getMpiComm()); // read meta-data std::ifstream iStream(metafile_name.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin,geo_version,version; vector filenames; string dummystring; int currentTime; iStream >> dummystring >> version; iStream >> dummy >> dummy >> currentTime; iStream >> dummystring >> geo_version; // get bounding box iStream >> dummystring; iStream >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry iStream >> dummystring >> dummy >> dummy >> dummy; // dimension info (2D/3D) iStream >> dummystring >> dummystring; // get file names copy(istream_iterator(iStream),istream_iterator(),back_inserter(filenames)); iStream.close(); // --- generate checkpoint parameters // get nr. of filenames int nr_fnames=filenames.size(); console.Debug() << "read " << nr_fnames << " file names\n"; // extract prefix from filenames string::size_type p=(filenames.begin())->find("_t"); string prefix=(filenames.begin())->substr(0,p); console.Debug() << "found file prefix: " << prefix << " time step: " << currentTime <<"\n"; // construct check-point parameters and distribute to workers CheckPointParams checkPointParams(prefix, currentTime, MpiInfo(getMpiComm()).rank(),m_precision); checkPointParams.packInto(&buffer); buffer.broadcast(0); buffer.clear(); barrier.wait("loadCheckPoint"); } /*! Generate the filename for the checkpoint file to be written by a given worker \param fileNamePrefix global filename prefix \param timeStep current time step \param rank the MPI rank of the worker */ std::string CheckPointController::getLatticeDataFileName(const std::string &fileNamePrefix, int timeStep, int rank,bool bin) { return CheckPointParams(fileNamePrefix, timeStep, rank,bin).getFileName(); } /*! Generate the filenames for the checkpoint files to be written by all workers \param timeStep current time step \param size number of workers */ esys::lsm::StringVector CheckPointController::getLatticeDataFiles(int timeStep, int size) { esys::lsm::StringVector fileNames; for (int rank = 1; rank < size; rank++) { fileNames.push_back(getLatticeDataFileName(m_fileNamePrefix, timeStep, rank)); } return fileNames; } /*! Generate the filenames for the checkpoint files to be written by all workers \param timeStep current time step */ esys::lsm::StringVector CheckPointController::getLatticeDataFiles(int timeStep) { MpiInfo mpiInfo; return getLatticeDataFiles(timeStep, MpiInfo(getMpiComm()).size()); } bool CheckPointController::isCheckPoint(int time) { return ( ( (time >= m_beginTime) && (time <= m_endTime) && (((time - m_beginTime) % m_timeInterval) == 0) ) || (time == m_endTime) ); } void CheckPointController::setCheckPointParams( const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, bool writeThroughMaster, int precision ) { m_fileNamePrefix = fileNamePrefix; m_beginTime = beginTime; m_endTime = endTime; m_timeInterval = timeInterval; m_writeThroughMaster = writeThroughMaster; m_precision = precision; } void CheckPointController::set_is2d(bool do2d) { m_geoInfo.set_is2d(do2d); } void CheckPointController::setLsmGeoVersion(float version) { m_geoInfo.setLsmGeoVersion(version); } void CheckPointController::setPeriodicDimensions(esys::lsm::BoolVector periodicDimensions) { m_geoInfo.setPeriodicDimensions(periodicDimensions); } void CheckPointController::setSpatialDomain(const esys::lsm::BoundingBox &bbox) { m_geoInfo.setBBox(bbox.getMinPt(),bbox.getMaxPt()); m_spatialDomainHasBeenSet=true; } void CheckPointController::setGeometryInfo(const esys::lsm::GeometryInfo &geoInfo) { m_geoInfo = geoInfo; } esys::lsm::GeometryInfo CheckPointController::getGeometryInfo() const { return m_geoInfo; } int CheckPointController::getNumTimeSteps() const { return m_numTimeSteps; } void CheckPointController::setNumTimeSteps(int numTimeSteps) { m_numTimeSteps = numTimeSteps; } double CheckPointController::getTimeStepSize() const { return m_timeStepSize; } void CheckPointController::setTimeStepSize(double timeStepSize) { m_timeStepSize = timeStepSize; } /*! return true if the spatial domain has been set, false otherwise */ bool CheckPointController::spatialDomainHasBeenSet() const { return m_spatialDomainHasBeenSet; } ./Parallel/mpivbuf.h0000664000175000017500000000455412176660653014224 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPIVBUF_H #define __MPIVBUF_H #include #include #include "Parallel/mpibuf.h" /*! \class CVarMPIBuffer \brief MPI send/recv buffer with automagically adjusted size CVarMPIBuffer implements a send/receive buffer with variable size. The buffer grows automatically if neccesary with each append operation and when the a message is received. It is never automatically shrunk. Both append and send/recv operations slower than a constant size buffer (CMPIBuffer) \author Steffen Abe $Revision$ $Date$ \todo implement checks for locking \todo use exeption handling for error checking */ class CVarMPIBuffer : public AMPIBufferPP { private: char* m_buffer; int m_buffersize; //!< the size of the buffer int m_position; //!< the current end of the content int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double bool m_lock; MPI_Request m_req[2]; MPI_Status m_stat[2];//!< for the ISendTo/Wait stuff protected: void grow(); void growTo(int); public: CVarMPIBuffer(MPI_Comm,int size=16); virtual ~CVarMPIBuffer(); virtual void clear(){m_position=0;}; virtual void sendTo(int,int); virtual void NBsendTo(int,int); virtual void initSendTo(int,int); virtual void wait(); virtual void receiveFrom(int src=MPI_ANY_SOURCE,int tag=MPI_ANY_TAG); virtual void append(int); virtual void append(double); virtual void append(const char*); virtual void append(const Vec3 &V) { AMPIBufferPP::append(V); } ; virtual int pop_int(); virtual double pop_double(); virtual void pop_doubles(double*,int); virtual std::string pop_string(); virtual void broadcast(int); virtual void receiveBroadcast(int); }; #endif //__MPIVBUF_H ./Parallel/LatticeMaster.cpp0000664000175000017500000027371612176660653015660 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/LatticeMaster.h" #ifdef HAVE_CONFIG_H #include "config.h" #endif //--- IO includes -- #include #include #include #include using std::ifstream; using std::ofstream; using std::fstream; using std::ios; // -- STL includes -- #include #include using std::map; // -- project includes -- #include "Model/TempPartStore.h" #include "Parallel/mpi_tag_defs.h" #include "Parallel/mpicmdbuf.h" #include "Parallel/mpisgvbuf.h" #include "Parallel/sublattice_cmd.h" #include "Parallel/mpibarrier.h" #include "Parallel/BroadCast_cmd.h" #include "Parallel/BMesh2D_cmd.h" #include "Model/Damping.h" #include "Model/LocalDamping.h" #include "Model/ElasticInteractionGroup.h" #include "Model/Wall.h" #include "Model/BWallInteractionGroup.h" #include "Model/ViscWallIG.h" #include "Model/SoftBWallInteractionGroup.h" #include "Model/BodyForceGroup.h" #include "Foundation/Timer.h" #include "Foundation/PathSearcher.h" #include "Foundation/StringUtil.h" #include "Foundation/Functional.h" #include "Fields/ParticleFieldMaster.h" #include "Fields/ScalarParticleDistributionMaster.h" #include "Fields/InteractionFieldMaster.h" #include "Fields/VectorInteractionFieldMaster.h" #include "Fields/VectorTriangleFieldMaster.h" #include "Fields/ScalarTriangleFieldMaster.h" #include "Fields/WallFieldMaster.h" #include "Fields/TriggeredVectorParticleFieldMaster.h" #include "Parallel/CheckPointInfo.h" #include "Parallel/CheckPointLoader.h" #include "Parallel/CheckPointController.h" #include "Parallel/GeometryReader.h" #include "Foundation/BoundingBox.h" #include "Parallel/MeshReader.h" #include "Parallel/Mesh2DReader.h" #include "Model/MeshData2D.h" #include "Parallel/MpiInfo.h" #include "Parallel/MpiWrap.h" #include #include #include #include using namespace esys::lsm; //std::string CLatticeMaster::s_workerExeName="ESySParticleBEWorker"; CLatticeMaster::CLatticeMaster() : m_timingFileName(), m_pTimers(new MpiWTimers()), m_pCheckPointController(new CheckPointController()), m_pSnapShotController(new CheckPointController()), m_processDims(3, 0), m_save_fields(), m_global_rank(0), m_global_size(0), m_max_ts(0), m_center_id(0), m_total_time(0), m_t(0), m_dt(0), m_isInitialized(false), m_particle_type(), m_bbx_has_been_set(false), m_geometry_is_initialized(false), m_preRunnableVector(), m_postRunnableVector(), m_tml_global_comm(MPI_COMM_NULL), m_global_comm(MPI_COMM_NULL) { m_first_time=true; } CLatticeMaster::~CLatticeMaster() { console.Debug() << "CLatticeMaster::~CLatticeMaster: enter\n"; delete m_pTimers; delete m_pCheckPointController; delete m_pSnapShotController; for (vector::iterator it = m_save_fields.begin(); it != m_save_fields.end(); it++) { delete (*it); } m_save_fields.clear(); // cleanup MPI groups and communicators // MPI_Group_free(&m_mpi_global_group); MPI_Group_free(&m_mpi_local_group); //MPI_Comm_free(&m_local_comm); console.Debug() << "CLatticeMaster::~CLatticeMaster: exit\n"; } void CLatticeMaster::init() { MPI_Comm_size(MPI_COMM_WORLD, &m_global_size); MPI_Comm_rank(MPI_COMM_WORLD, &m_global_rank); console.Debug() << "Master has rank " << m_global_rank << "\n" ; console.Debug() << "Global size is " << m_global_size << "\n" ; } void CLatticeMaster::setupWorkers(int ns) { // setup communicators and check size m_global_comm=MPI_COMM_WORLD; MPI_Comm_size(m_global_comm, &m_global_size); m_tml_global_comm.setComm(m_global_comm); // -- local communicator = global comm - proc(0) // get global MPI_Group MPI_Group mpi_global_group; MPI_Comm_group(MPI_COMM_WORLD,&mpi_global_group); // subtract id 0 from global group int id0=0; MPI_Group_excl(mpi_global_group,1,&id0,&m_mpi_local_group); // create communicator MPI_Comm_create(MPI_COMM_WORLD,m_mpi_local_group,&m_local_comm); // free global group MPI_Group_free(&mpi_global_group); m_tml_global_comm.barrier(); if(m_global_size!=ns+1){ cerr << "wrong number of processes !! aborting" << endl << flush; exit(255); // should send abort command to workers } } int CLatticeMaster::getNumWorkerProcesses() const { return m_global_size - 1; } void CLatticeMaster::setNumSteps(int s) { m_max_ts=s; m_pCheckPointController->setNumTimeSteps(s); m_pSnapShotController->setNumTimeSteps(s); } void CLatticeMaster::saveTimingDataToFile(const std::string &fileNamePrefix) { std::stringstream sStream; sStream << fileNamePrefix << m_global_rank << ".csv"; setTimingFileName(sStream.str()); CMPILCmdBuffer cmdBuffer(m_global_comm, MpiInfo(m_global_comm).rank()); CMPIBarrier barrier(m_global_comm); cmdBuffer.broadcast(CMD_PERFORMTIMING); CVarMPIBuffer buffer(m_global_comm); // send timing filename prefix buffer.append(fileNamePrefix.c_str()); buffer.broadcast(0); buffer.clear(); m_tml_global_comm.barrier("performTiming"); } void CLatticeMaster::setTimingFileName(const std::string &fileName) { m_timingFileName = fileName; } const std::string &CLatticeMaster::getTimingFileName() const { return m_timingFileName; } void CLatticeMaster::do2dCalculations(bool do2d) { // Set the 2-D or 3-D dimension information for checkpoint files. m_pCheckPointController->set_is2d(do2d); m_pSnapShotController->set_is2d(do2d); CMPILCmdBuffer cmdBuffer(m_global_comm, MpiInfo(m_global_comm).rank()); CMPIBarrier barrier(m_global_comm); cmdBuffer.broadcast(CMD_DO2DCALCULATIONS); CVarMPIBuffer buffer(m_global_comm); buffer.append(static_cast(do2d)); buffer.broadcast(0); m_tml_global_comm.barrier("do2dCalculations cmd"); } /*! Make a lattice from particles of the given type. Does not set up neighbor tables. \param ptype the type of particle \param nrange search range \param alpha pair search cutoff */ void CLatticeMaster::makeLattice(const char* ptype, double nrange, double alpha) { console.XDebug() << "CLatticeMaster::makeLattice( ptype=" << ptype << " , nrange=" << nrange << ", alpha=" << alpha << " )\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); m_particle_type = string(ptype); //send command to slave cmd_buffer.broadcast(CMD_MAKELATTICE); // send lattice parameters CLatticeParam clp(ptype, nrange, alpha, getProcessDims()); clp.packInto(&buffer); buffer.broadcast(0); buffer.clear(); m_tml_global_comm.barrier("CLatticeMaster::makeLattice"); //m_tml_global_comm.barrier(); console.XDebug() << "end CLatticeMaster::makeLattice\n"; } /*! make lattice and set time step size \param ptype the type of particle \param nrange search range \param alpha pair search cutoff \param dt time step */ void CLatticeMaster::makeLattice(const char* ptype, double nrange, double alpha, double dt) { makeLattice(ptype, nrange, alpha); setTimeStepSize(dt); } /*! set the time step size \param dt time step */ void CLatticeMaster::setTimeStepSize(double dt) { m_pCheckPointController->setTimeStepSize(dt); m_pSnapShotController->setTimeStepSize(dt); m_dt = dt; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_SETTIMESTEPSIZE); cmd.append(m_dt); cmd.broadcast(); } void CLatticeMaster::setProcessDims(const CLatticeParam::ProcessDims &dims) { m_processDims = dims; } const CLatticeParam::ProcessDims &CLatticeMaster::getProcessDims() const { return m_processDims; } /*! Define model bounding box and setup neighbor tables in Workers. Non-circular version. \param minBBoxPt minimum point of the bounding box \param maxBBoxPt maximum point of the bounding box */ void CLatticeMaster::setSpatialDomain(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt) { console.Debug() << "CLatticeMaster::setSpatialDomain: enter\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); // check if domain has already been set if(m_geometry_is_initialized){ console.Warning() << "Spatial Domain has already been set and can not be changed - this call does nothing.\n"; } else { // set geometry info according to parameters // no need to set circular bc - defaults to (0,0,0) anyway m_geo_info.setBBox(minBBoxPt,maxBBoxPt); m_bbx_has_been_set=true; // none of the boundaries circular -> simple initLattice cmd_buffer.broadcast(CMD_INITLATTICE); esys::lsm::Vec3Vector corners; corners.push_back(minBBoxPt); corners.push_back(maxBBoxPt); // send data to workers m_tml_global_comm.broadcast_cont_packed(corners); getSlaveSpatialDomains(); m_tml_global_comm.barrier(std::string("cmd=") + StringUtil::toString(CMD_INITLATTICE)); m_geometry_is_initialized=true; } console.Debug() << "CLatticeMaster::setSpatialDomain: exit\n"; } /*! Define model bounding box and setup neighbor tables in Workers. Circular boundary version. \param minBBoxPt minimum point of the bounding box \param maxBBoxPt maximum point of the bounding box \param circDimVector a vector of ints containing the circular boundary condition flags for all dimensions */ void CLatticeMaster::setSpatialDomain( const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt, const esys::lsm::IntVector &circDimVector ) { console.Debug() << "CLatticeMaster::setSpatialDomain circular: enter\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); esys::lsm::BoolVector periodicDimensions; // check if domain has already been set if(m_geometry_is_initialized){ console.Warning() << "Spatial Domain has already been set and can not be changed - this call does nothing.\n"; } else { // check if we actually need the circular part or if the periodic dimensions are (false,false,false) if((circDimVector[0]!=0) || (circDimVector[1]!=0) || (circDimVector[2]!=0)) { // we have at least one periodic dimension // set geometry info according to parameters m_geo_info.setBBox(minBBoxPt,maxBBoxPt); // need to set circular bc for (int i = 0; i <= 2; i++) periodicDimensions.push_back(bool(circDimVector[i])); m_geo_info.setPeriodicDimensions(periodicDimensions); m_bbx_has_been_set=true; // at least one boundary circular -> initLatticeCirc console.XDebug()<< "Circular Lattice Init\n"; cmd_buffer.broadcast(CMD_INITLATTICECIRC); esys::lsm::Vec3Vector corners; corners.push_back(minBBoxPt); corners.push_back(maxBBoxPt); console.XDebug()<< "Broadcasting bounding-box corners\n"; m_tml_global_comm.broadcast_cont_packed(corners); // send circ. markers m_tml_global_comm.broadcast_cont(circDimVector); getSlaveSpatialDomains(); m_tml_global_comm.barrier("CMD_INITLATTICECIRC"); console.Debug() << "CLatticeMaster::setSpatialDomain circular: exit\n"; m_geometry_is_initialized=true; m_bbx_has_been_set=true; } else { // all dimensions non-periodic -> call non-circular version of setSpatialDomain setSpatialDomain(minBBoxPt,maxBBoxPt); } } } void CLatticeMaster::getSlaveSpatialDomains() { console.XDebug() <<"CLatticeMaster::getSlaveSpatialDomains: enter\n"; // get slave dimensions and coordinates multimap slavedims; multimap slavecoords; console.XDebug() <<"CLatticeMaster::getSlaveSpatialDomains: gathering dims\n"; m_tml_global_comm.gather(slavedims); console.XDebug() <<"CLatticeMaster::getSlaveSpatialDomains: gathering coords\n"; m_tml_global_comm.gather(slavecoords); console.XDebug() <<"CLatticeMaster::getSlaveSpatialDomains: received dims & coords\n"; // extract slave dimensions from received data int dim_x,dim_y,dim_z; // dimensions in x,y,z direction multimap::iterator iter=slavedims.find(1); dim_x=iter->second; iter++; dim_y=iter->second; iter++; dim_z=iter->second; // setup coord->rank mapping for slaves int nslaves=dim_x*dim_y*dim_z; // number of slaves for(int i=0;i::iterator coord_iter=slavecoords.find(i+1); // slaves are 1..n //cx=coord_iter->second; coord_iter++; //cy=coord_iter->second; coord_iter++; //cz=coord_iter->second; } console.XDebug() <<"CLatticeMaster::getSlaveSpatialDomains: exit\n"; } /*! read geometry file calls appropriate reader function depending on particle type \param fileName the name of the geometry file */ void CLatticeMaster::readGeometryFile(const string& fileName) { console.Debug()<<"CLatticeMaster::readGeometryFile( " << fileName << ")\n"; if (m_particle_type == "Basic"){ readGeometry(fileName); } else if (m_particle_type == "Rot") { readGeometry(fileName); } else if (m_particle_type == "RotVi") { readGeometry(fileName); } else if (m_particle_type == "RotTherm") { readGeometry(fileName); } else { throw std::runtime_error( std::string("Unknown particle type: ") + m_particle_type ); } } /*! Load data from a save checkpoint in order to restart the simulation. Control flow: CLatticeMaster::loadCheckPointData() (i.e. here) -> CheckPointController::issueCheckPointLoadingCmd() -> [on worker] CheckPointer::loadCheckPoint() -> SubLattice::loadCheckPointData() \param checkPointFileName the name of the base file (*_0.txt) of the checkpoint */ void CLatticeMaster::loadCheckPointData(const string &checkPointFileName) { CheckPointInfo cpInfo; std::ifstream iStream(checkPointFileName.c_str()); if (!iStream) { throw std::runtime_error( std::string("Could not open file ") + checkPointFileName ); } // read geometry info from checkpoint file and initialise geometry cpInfo.read(iStream); GeometryInfo geoInfo = cpInfo.getGeometryInfo(); // check if geometry info has been set previously if(m_bbx_has_been_set){ // check if old & new geometry are identical (the "compatible" check of readGeometry is not sufficient) if(!m_geo_info.isIdenticalGeometry(geoInfo)){ std::cerr << "Geometry info read from file is different from previously set geometry (bounding box, circular boundaries) - Model may not run properly!" << std::endl; } } else { m_geo_info=geoInfo; // set geometry meta-info // set model spatial domain -> sets geometry info & initializes neighbor table in workers if(m_geo_info.hasAnyPeriodicDimensions()){ setSpatialDomain(m_geo_info.getBBoxCorners()[0],m_geo_info.getBBoxCorners()[1],m_geo_info.getPeriodicDimensions()); } else { setSpatialDomain(m_geo_info.getBBoxCorners()[0],m_geo_info.getBBoxCorners()[1]); } m_bbx_has_been_set=true; // flag that spatial domain has been set } m_t=cpInfo.getTimeStep(); std::cout << "set time step to " << m_t << std::endl; // read data m_pCheckPointController->issueCheckPointLoadingCmd(checkPointFileName); searchNeighbors(true); updateInteractions(); } /*! add a wall to the sublattice \param wname the name of the wall \param ipos initial position of the wall \param inorm initial normal of the wall */ void CLatticeMaster::addWall(const string& wname, const Vec3& ipos,const Vec3& inorm) { console.Debug() << "CLatticeMaster::addWall("<< wname << " , " << ipos << " , " << inorm << ")\n" ; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_ADDWALL); cmd.append(wname.c_str()); cmd.append(ipos); cmd.append(inorm); //send command to slave cmd.broadcast(); console.Debug() << "end CLatticeMaster::initWall() \n"; } /*! add a elastic all interaction to model \param param the interaction parameters (name of the wall, name of the interaction, spring constant) */ void CLatticeMaster::addWallIG(const CEWallIGP& param) { console.Debug() << "CLatticeMaster::addWallIG( -elastic- " << param.getWallName() << " , " << param.getName() << " , " << param.getSpringConst() << ")\n" ; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_ADDEWALLIG); //send command to slave cmd.packInto(param); //send command to slave cmd.broadcast(); console.Debug() << "end CLatticeMaster::addWallIG() \n"; } /*! add a bonded wall interaction to model \param param the interaction parameters (name of the wall, name of the interaction, spring constant) */ void CLatticeMaster::addWallIG(const CBWallIGP& param) { console.Debug() << "CLatticeMaster::addWallIG( -bonded- " << param.getWallName() << " , " << param.getName() << " , " << param.getSpringConst() << " , " << param.getTag() << ")\n" ; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_ADDBWALLIG); //send command to slave cmd.packInto(param); //send command to slave cmd.broadcast(); console.Debug() << "end CLatticeMaster::addWallIG() \n"; } /*! add a viscous wall interaction to model \param param the interaction parameters (name of the wall, name of the interaction, spring constant) */ void CLatticeMaster::addWallIG(const CVWallIGP& param) { console.Debug() << "CLatticeMaster::addWallIG( -viscous- " << param.getWallName() << " , " << param.getName() << " , " << param.getSpringConst() << " , " << param.getNu() << " , " << param.getTag() << ")\n" ; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_ADDBWALLIG); //send command to slave cmd.packInto(param); //send command to slave cmd.broadcast(); console.Debug() << "end CLatticeMaster::addWallIG() \n"; } /*! add a bonded wall interaction with direction-dependent spring constant to model \param param the interaction parameters (name of the wall, name of the interaction, spring constant) */ void CLatticeMaster::addWallIG(const CSoftBWallIGP& param) { console.Debug() << "CLatticeMaster::addWallIG( -directional bonded- " << param.getWallName() << " , " << param.getName() << " , " << param.getNormalK() << " , " << param.getShearK() << " , " << param.getTag() << " , " << param.getScaling() << ")\n" ; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_ADDBBWALLIG); //send command to slave cmd.packInto(param); //send command to slave cmd.broadcast(); console.Debug() << "end CLatticeMaster::addWallIG() \n"; } /*! Get position of a wall. Returns (0,0,0) for a non-existing wall. \param WallName the name of the wall */ Vec3 CLatticeMaster::getWallPosn(const std::string& WallName) { console.Debug() << "CLatticeMaster::getWallPosn: enter\n"; Vec3 wpos=Vec3(0.0,0.0,0.0); // setup command BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETWALLPOS); // pack name into command buffer cmd.append(WallName.c_str()); // broadcast command buffer cmd.broadcast(); // collect data multimap posmap; m_tml_global_comm.gather(posmap); wpos=(posmap.find(1))->second; console.Debug() << "CLatticeMaster::getWallPosn: exit\n"; return wpos; } /*! Get force acting on a wall. Returns (0,0,0) for a non-existing wall. \param WallName the name of the wall */ Vec3 CLatticeMaster::getWallForce(const std::string& WallName) { console.Debug() << "CLatticeMaster::getWallForce: enter\n"; Vec3 wforce=Vec3(0.0,0.0,0.0); // setup command BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETWALLFORCE); // pack name into command buffer cmd.append(WallName.c_str()); // broadcast command buffer cmd.broadcast(); // collect data multimap forcemap; m_tml_global_comm.gather(forcemap); for(multimap::iterator iter=forcemap.begin(); iter!=forcemap.end(); iter++){ wforce=wforce+iter->second; } console.Debug() << "CLatticeMaster::getWallForce: exit\n"; return wforce; } /*! Move all particles with a given tag to a given displacement relative to their original position. \param id the tag of the particles to be moved \param d the displacement */ void CLatticeMaster::moveParticleTo(int tag, const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PMOVE); buffer.append(tag); buffer.append(d) ; buffer.broadcast(m_global_rank); barrier.wait("moveParticleTo"); } /*! Move all particles with a given tag by a given displacement relative to their current position. \param tag the tag of the particles to be moved \param d the displacement */ void CLatticeMaster::moveTaggedParticlesBy(int tag, const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PMOVETAGGEDBY); buffer.append(tag); buffer.append(d) ; buffer.broadcast(m_global_rank); barrier.wait("moveTaggedParticlesBy"); // force ntable rebuild searchNeighbors(true); } void CLatticeMaster::moveSingleParticleTo(int particleId, const Vec3& posn) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_IDPARTICLEMOVE); buffer.append(particleId); buffer.append(posn) ; buffer.broadcast(m_global_rank); barrier.wait("moveSingleParticleTo"); } /*! Move a node in a TriMeshIG by a given amount. \param tm_name the name of the TriMeshIG \param id the node id \param d the displacement */ void CLatticeMaster::moveSingleNodeBy(const string& name,int id,const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_MOVENODE); buffer.append(name.c_str()); buffer.append(id) ; buffer.append(d); buffer.broadcast(m_global_rank); barrier.wait("moveSingleNodeBy"); } /*! Move all nodes with a given tag in a TriMeshIG by a given amount. \param tm_name the name of the TriMeshIG \param tag the tag \param d the displacement */ void CLatticeMaster::moveTaggedNodesBy(const string& name,int tag,const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_MOVETAGGEDNODES); buffer.append(name.c_str()); buffer.append(tag) ; buffer.append(d); buffer.broadcast(m_global_rank); barrier.wait("moveTaggedNodesBy"); } /*! Move a whole mesh by a given amount. \param meshName the name of the mesh to be moved \param translation the vector by which the mesh is translated */ void CLatticeMaster::translateMeshBy( const string &meshName, const Vec3& translation ) { console.Debug() << "CLatticeMaster::translateMeshBy(): enter \n"; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_TRANSLATEMESHBY); cmd.append(meshName.c_str()); cmd.append(translation); //send command to slave cmd.broadcast(); console.Debug() << "CLatticeMaster::translateMeshBy(): exit \n"; } /*! Add a given tag to the particle closest to a given position. Only the bits set in the mask will be influenced, i.e. new_tag=(old_tag & !mask) | (tag & mask). \param tag the tag \param mask the mask \param pos the position */ void CLatticeMaster::tagParticleNearestTo(int tag,int mask,const Vec3& pos) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PTAG); buffer.append(tag); buffer.append(mask) ; buffer.append(pos); buffer.broadcast(m_global_rank); barrier.wait("tagParticleNearestTo"); } /*! Add a given tag to the particle closest to a given position. Only the bits set in the mask will be influenced, i.e. new_tag=(old_tag & !mask) | (tag & mask). \param tag the tag \param mask the mask \param pos the position */ int CLatticeMaster::findParticleNearestTo(const Vec3& pos) { console.Debug() << "CLatticeMaster::findParticleNearestTo: enter\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_FINDNEARESTPARTICLE); buffer.append(pos); buffer.broadcast(m_global_rank); typedef std::pair DistIdPair; typedef multimap RankPairMMap; RankPairMMap rankPairMMap; m_tml_global_comm.gather(rankPairMMap); RankPairMMap::const_iterator it = rankPairMMap.begin(); DistIdPair nearest = it->second; console.Debug() << "CLatticeMaster::findParticleNearestTo:" << " nearest=" << it->second.second << ", distance = " << it->second.first << "\n"; for ( it++; it != rankPairMMap.end(); it++ ) { console.Debug() << "CLatticeMaster::findParticleNearestTo:" << " particle=" << it->second.second << ", distance = " << it->second.first << "\n"; if (it->second.first < nearest.first) { console.Debug() << "CLatticeMaster::findParticleNearestTo:" << " nearest=" << it->second.second << ", distance = " << it->second.first << "\n"; nearest = it->second; } } barrier.wait( (std::string("cmd=")+StringUtil::toString(CMD_FINDNEARESTPARTICLE)).c_str() ); console.Debug() << "CLatticeMaster::findParticleNearestTo: exit\n"; return nearest.second; } Vec3 CLatticeMaster::getParticlePosn(int particleId) { console.Debug() << "CLatticeMaster::getParticlePosn: enter\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_GETPARTICLEPOSN); buffer.append(particleId); buffer.broadcast(m_global_rank); typedef std::pair IdVec3Pair; typedef multimap RankPairMMap; RankPairMMap rankPairMMap; m_tml_global_comm.gather(rankPairMMap); IdVec3Pair idPosnPair(-1,Vec3()); for ( RankPairMMap::const_iterator it = rankPairMMap.begin(); it != rankPairMMap.end(); it++ ) { if ((it->second.first) > 0) { idPosnPair = it->second; } } barrier.wait( (std::string("cmd=") + StringUtil::toString(CMD_GETPARTICLEPOSN)).c_str() ); console.Debug() << "CLatticeMaster::getParticlePosn: exit\n"; return idPosnPair.second; } /*! Set all particles with a given tag to be non-dynamic, i.e. to have infinite mass \param tag the tag */ void CLatticeMaster::setParticleNonDynamic(int tag) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PSETND); buffer.append(tag); buffer.broadcast(m_global_rank); barrier.wait("setParticleNonDynamic"); } /*! Set all particles with a given tag to be non-rotational, i.e. to have infinite rotational inertia \param tag the tag */ void CLatticeMaster::setParticleNonRot(int tag) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PSETNR); buffer.append(tag); buffer.broadcast(m_global_rank); barrier.wait("setParticleNonRot"); } /*! Set all particles with a given tag to be linear non-dynamic, i.e. switch off velocity updates \param tag the tag */ void CLatticeMaster::setParticleNonTrans(int tag) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PSETNT); buffer.append(tag); buffer.broadcast(m_global_rank); barrier.wait("setParticleNonTrans"); } /*! set the velocity of a particle \param id the id of the particle to be moved \param V the velocity */ void CLatticeMaster::setParticleVel(int id,const Vec3& V) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PVEL); buffer.append(id); buffer.append(V) ; buffer.broadcast(m_global_rank); barrier.wait("setParticleVel"); } /*! set the velocity of all particles with a given tag \param tag the tag \param V the velocity */ void CLatticeMaster::setTaggedParticleVel(int tag,const Vec3& V) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PTVEL); buffer.append(tag); buffer.append(V) ; buffer.broadcast(m_global_rank); barrier.wait("setTaggedParticleVel"); } /*! set the density (i.e. adjust mass) of all particles with a given tag \param tag the tag \param mask the tag mask \param rho the density */ void CLatticeMaster::setParticleDensity(int tag,int mask,double rho) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PDENS); buffer.append(tag); buffer.append(mask); buffer.append(rho) ; buffer.broadcast(m_global_rank); barrier.wait("setParticleDensity"); } /*! Call the SubLattice function to set the angular velocity of a particle. If the SubLattice is not a RotSubLattice the called function is a NOP. \param id the id of the particle \param A the angular velocity */ void CLatticeMaster::setParticleAngVel(int id,const Vec3& A) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_PANGVEL); buffer.append(id); buffer.append(A) ; buffer.broadcast(m_global_rank); barrier.wait("setParticleAngVel"); } /*! move a wall to by given vector \param id the nr of the wall to be moved \param d the movement */ void CLatticeMaster::moveWallBy(const string& name,const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_WMOVE); buffer.append(name.c_str()); buffer.append(d); buffer.broadcast(m_global_rank); barrier.wait("moveWallBy"); } /*! set a wall Normal by given vector \param id the nr of the wall normal to change \param d the normal */ void CLatticeMaster::setWallNormal(const string& name,const Vec3& d) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_WNORM); buffer.append(name.c_str()); buffer.append(d); buffer.broadcast(m_global_rank); barrier.wait("setWallNormal"); } /*! apply a given force to a wall \param id the nr of the wall \param f the force */ void CLatticeMaster::applyForceToWall(const string& name,const Vec3& f) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_WFORCE); buffer.append(name.c_str()); buffer.append(f); buffer.broadcast(m_global_rank); barrier.wait("applyForceToWall"); } /*! set velocity of a wall. Only affects ViscWall, i.e. wall position doesn't get updatet !! \param id the nr of the wall \param v the velocity */ void CLatticeMaster::setVelocityOfWall(const string& name,const Vec3& v) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer buffer(m_global_comm); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_WVEL); buffer.append(name.c_str()); buffer.append(v); buffer.broadcast(m_global_rank); barrier.wait("setVelocityOfWall"); } /*! perform a single time step */ void CLatticeMaster::oneStep() { m_pTimers->start("OneStepForceAndExchange"); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); m_pTimers->start("ForceCalculation"); cmd_buffer.broadcast(CMD_CALC); // local calculations barrier.wait("oneStep.1"); m_pTimers->stop("ForceCalculation"); m_pTimers->start("BoundaryDataExchange"); cmd_buffer.broadcast(CMD_XCHANGE); // exchange boundary data barrier.wait("oneStep.2"); m_pTimers->stop("BoundaryDataExchange"); console.Debug() << "=== TIME STEP ===\n"; //-- times -- console.Timing() << "Force calculation " << m_pTimers->getTiming("ForceCalculation") << "\n"; console.Timing() << "Boundary exchange " << m_pTimers->getTiming("BoundaryDataExchange") << "\n"; m_pTimers->stop("OneStepForceAndExchange"); console.Timing() << "one step " << m_pTimers->getTiming("OneStepForceAndExchange") << "\n"; //--- } /*! neighbor search. A check if the search is necessary is performed first \param force if true, force neighborsearch even if displacement is below threshold */ void CLatticeMaster::searchNeighbors(bool force) { console.Debug() << "CLatticeMaster::searchNeighbors\n" ; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); bool need_search=true; if(!force){ need_search=checkNeighbors(); } if(need_search){ cmd_buffer.broadcast(CMD_NSEARCH); barrier.wait("searchNeighbors"); } console.Debug() << "end CLatticeMaster::searchNeighbors\n" ; } /*! Test if neighbor search is necessary. */ bool CLatticeMaster::checkNeighbors() { console.Debug() << "CLatticeMaster::checkNeighbors()\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); CMPISGBufferRoot buffer(m_global_comm,8); bool res=false; cmd_buffer.broadcast(CMD_CHECKNEIGHBORS); buffer.gather(); int i=1; while((i to be implemented i++; } barrier.wait("checkNeighbors"); console.Debug() << "end CLatticeMaster::checkNeighbors(), res= " << res << "\n"; return res; } /*! */ void CLatticeMaster::updateInteractions() { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::updateInteractions()\n"; // send the command cmd_buffer.broadcast(CMD_UPDATE); barrier.wait("updateInteractions"); console.XDebug() << "end CLatticeMaster::updateInteractions()\n"; } /*! add a scalar particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ void CLatticeMaster::addScalarParticleSaveField( const string& filename, const string& fieldname, const string& savetype, int t_0, int t_end, int dt ) { console.Debug() << "CLatticeMaster::addScalarParticleSaveField(" << filename << "," << fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_SPF); AFieldMaster* new_fm = new ScalarParticleFieldMaster( &m_tml_global_comm, fieldname, filename, savetype, t_0, t_end, dt ); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addScalarParticleSaveField"); console.Debug() << "end CLatticeMaster::addScalarParticleSaveField()\n"; } /*! add a scalar particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param tag tag of the particles for which the field is saved \param mask the mask used in tag comparisons */ void CLatticeMaster::addTaggedScalarParticleSaveField(const string& filename, const string& fieldname,const string& savetype, int t_0,int t_end,int dt,int tag,int mask) { console.Debug() << "CLatticeMaster::addTaggedScalarParticleSaveField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_SPF); AFieldMaster* new_fm=new ScalarParticleFieldMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt,tag,mask); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addTaggedScalarParticleSaveField"); console.Debug() << "end CLatticeMaster::addTaggedScalarParticleSaveField()\n"; } /*! save the distribution/histogram of a scalar field on tagged particles \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format (WINDOW or GLOBAL) \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between adding samples into the distribution \param t_snap time between snapshot saves \param tag tag of the particles for which the field is saved \param mask the mask used in tag comparisons \param x_0 minimum data size in distribution \param x_max maximum data size in distribution \param nx number of bins */ void CLatticeMaster::addTaggedScalarParticleDistributionSaver(const string& filename,const string& fieldname,const string& savetype,int t_0,int t_end,int dt,int t_snap,int tag,int mask,double x_0,double x_max,int nx) { console.Debug() << "CLatticeMaster::addTaggedScalarParticleDistributionSaver(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_SPF); AFieldMaster* new_fm=new ScalarParticleDistributionMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt,t_snap,x_0,x_max,nx,tag,mask); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addTaggedScalarParticleDistributionSaver"); console.Debug() << "end CLatticeMaster::addTaggedScalarParticleSaveField()\n"; } /*! add a vector particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ void CLatticeMaster::addVectorParticleSaveField(const string& filename,const string& fieldname,const string& savetype,int t_0,int t_end,int dt) { console.Debug() << "CLatticeMaster::addVectorParticleSaveField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VPF); AFieldMaster* new_fm=new VectorParticleFieldMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addVectorParticleSaveField"); console.Debug() << "end CLatticeMaster::addVectorParticleSaveField()\n"; } /*! add a vector particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param tag tag of the particles for which the field is saved \param mask the mask used in tag comparisons */ void CLatticeMaster::addTaggedVectorParticleSaveField(const string& filename,const string& fieldname,const string& savetype,int t_0,int t_end,int dt,int tag, int mask) { console.Debug() << "CLatticeMaster::addTaggedVectorParticleSaveField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << "," << tag << "," << mask << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VPF); AFieldMaster* new_fm=new VectorParticleFieldMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt,tag,mask); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addTaggedVectorParticleSaveField"); console.Debug() << "end CLatticeMaster::addTaggedVectorParticleSaveField()\n"; } /*! add a vector particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param tprms trigger parameters */ void CLatticeMaster::addVectorParticleSaveFieldWT(const string& filename,const string& fieldname,const string& savetype,int t_0,int t_end,int dt,const MaxTrigParams &tprms) { console.Debug() << "CLatticeMaster::addVectorParticleSaveField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VPF); AFieldMaster* new_fm=new TriggeredVectorParticleFieldMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt,tprms); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addVectorParticleSaveField"); console.Debug() << "end CLatticeMaster::addVectorParticleSaveField()\n"; } /*! add a vector particle field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param tag tag of the particles for which the field is saved \param mask the mask used in tag comparisons \param tprms trigger parameters */ void CLatticeMaster::addTaggedVectorParticleSaveFieldWT(const string& filename,const string& fieldname,const string& savetype,int t_0,int t_end,int dt,int tag, int mask,const MaxTrigParams &tprms) { console.Debug() << "CLatticeMaster::addTaggedVectorParticleSaveField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << "," << tag << "," << mask << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VPF); AFieldMaster* new_fm=new TriggeredVectorParticleFieldMaster(&m_tml_global_comm,fieldname,filename,savetype,t_0,t_end,dt,tag,mask,tprms); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addTaggedVectorParticleSaveField"); console.Debug() << "end CLatticeMaster::addTaggedVectorParticleSaveField()\n"; } /*! add a vector wall field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param walls names of the walls \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ void CLatticeMaster::addVectorWallField(const string& filename, const string& fieldname, vector walls, const string& savetype, int t_0, int t_end, int dt) { console.Debug() << "CLatticeMaster::addVectorWallField(" << filename << ","<< fieldname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); //send command to slaves cmd_buffer.broadcast(CMD_ADD_VWF); // create master VectorWallFieldMaster* new_fm=new VectorWallFieldMaster(&m_tml_global_comm,fieldname,filename,walls,savetype,t_0,t_end,dt); m_save_fields.push_back(new_fm); m_tml_global_comm.barrier(); console.Debug() << "end CLatticeMaster::addVectorWallField()\n"; } /*! Setup parameters for restart checkpoints \param fileNamePrefix Path prefix for checkpoint files. Multiple snapshot files may be generated for a single timestep snapshot. \param beginTime Time to begin checkpointing. Time of first snapshot. \param endTime End time for checkpointing. Time of last snapshot. \param timeInterval Time interval between snapshot file generation. \param saveBinary Saves the data in binary format if true, ascii if false */ void CLatticeMaster::performCheckPoints( const string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision ) { m_pCheckPointController->setGeometryInfo(m_geo_info); m_pCheckPointController->setCheckPointParams( fileNamePrefix, beginTime, endTime, timeInterval, false, precision ); m_pCheckPointController->setMpiComm(m_global_comm); } /*! Setup parameters for restart checkpoints written though the master process \param fileNamePrefix Path prefix for checkpoint files. Multiple snapshot files may be generated for a single timestep snapshot. \param beginTime Time to begin checkpointing. Time of first snapshot. \param endTime End time for checkpointing. Time of last snapshot. \param timeInterval Time interval between snapshot file generation. \param saveBinary Saves the data in binary format if true, ascii if false */ void CLatticeMaster::performCheckPointsThroughMaster( const string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision ) { // check if spatial extent of the model has been set and warn if not if(!m_bbx_has_been_set){ console.Warning() << "Setting up Checkpointer : Model Spatial Domain has not been set - checkpoint headers will contain invalid geometry info \n"; } m_pSnapShotController->setGeometryInfo(m_geo_info); m_pCheckPointController->setCheckPointParams( fileNamePrefix, beginTime, endTime, timeInterval, true, precision ); m_pCheckPointController->setMpiComm(m_global_comm); } /*! Initialises parameters for performing model snapshots. \param fileNamePrefix Path prefix for checkpoint files. Multiple snapshot files may be generated for a single timestep snapshot. \param beginTime Time to begin checkpointing. Time of first snapshot. \param endTime End time for checkpointing. Time of last snapshot. \param timeInterval Time interval between snapshot file generation. */ void CLatticeMaster::initSnapShotController( const string &fileNamePrefix, int beginTime, int endTime, int timeInterval ) { console.Debug() << "CLatticeMaster::initSnapShotController\n"; // check if spatial extent of the model has been set and warn if not if(!m_bbx_has_been_set){ console.Warning() << "Setting up Snapshot Controller : Model Spatial Domain has not been set - snapshot headers will contain invalid geometry info \n"; } m_pSnapShotController->setGeometryInfo(m_geo_info); m_pSnapShotController->setCheckPointParams( fileNamePrefix, beginTime, endTime, timeInterval, false ); m_pSnapShotController->setMpiComm(m_global_comm); console.Debug() << "end CLatticeMaster::initSnapShotController\n"; } /*! add a scalar interaction field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param igname the name of the interaction group from which the field is taken \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param checked choose between normal and checked field (defaults to false) */ void CLatticeMaster::addScalarInteractionSaveField( const string& filename, const string& fieldname, const string& igtype, const string& igname, const string& savetype, int t_0, int t_end, int dt, bool checked ) { console.Debug() << "CLatticeMaster::addScalarInteractionSaveField(" << filename << "," << fieldname << "," << igname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_SIF); AFieldMaster* new_fm = new ScalarInteractionFieldMaster( &m_tml_global_comm, fieldname, igtype, igname, filename, savetype, t_0, t_end, dt, checked ); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addScalarInteractionSaveField"); console.Debug() << "end CLatticeMaster::addScalarInteractionSaveField()\n"; } /*! add a vector field on the triangles of a given trimesh to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param meshname the name of the mesh from which the field is taken \param savetype the format in which the data is to be saved \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ void CLatticeMaster::addVectorTriangleSaveField(const string& filename, const string& fieldname, const string& meshname, const string& savetype, int t_0,int t_end,int dt) { console.Debug() << "CLatticeMaster::addVectorTriangleSaveField\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VTF); AFieldMaster* new_fm = new VectorTriangleFieldMaster(&m_tml_global_comm,fieldname,meshname,filename,savetype,t_0,t_end,dt); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addVectorTriangleSaveField"); console.Debug() << "end CLatticeMaster::addVectorTriangleSaveField\n"; } /*! add a scalar field on the triangles of a given trimesh to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param meshname the name of the mesh from which the field is taken \param savetype the format in which the data is to be saved \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ void CLatticeMaster::addScalarTriangleSaveField(const string& filename, const string& fieldname, const string& meshname, const string& savetype, int t_0,int t_end,int dt) { console.Debug() << "CLatticeMaster::addScalarTriangleSaveField\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_STF); AFieldMaster* new_fm = new ScalarTriangleFieldMaster(&m_tml_global_comm,fieldname,meshname,filename,savetype,t_0,t_end,dt); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addScalarTriangleSaveField"); console.Debug() << "end CLatticeMaster::addScalarTriangleSaveField\n"; } /*! add a vector interaction field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param igname the name of the interaction group from which the field is taken \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param checked choose between normal and checked field (defaults to false) */ void CLatticeMaster::addVectorInteractionSaveField(const string& filename,const string& fieldname,const string& igtype, const string& igname,const string& savetype,int t_0,int t_end,int dt,bool checked) { console.Debug() << "CLatticeMaster::addVectorInteractionSaveField()\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_VIF); AFieldMaster* new_fm = new VectorInteractionFieldMaster(&m_tml_global_comm,fieldname,igtype,igname,filename,savetype,t_0,t_end,dt,checked); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addVectorInteractionSaveField"); console.Debug() << "end CLatticeMaster::addVectorInteractionSaveField()\n"; } /*! add a scalar interaction field to the list of fields to be saved \param filename the name of the file the field is saved into \param fieldname the name of the field \param igname the name of the interaction group from which the field is taken \param savetype output file format \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves \param tag the particle tag \param mask the mask used for tag comparisons \param checked choice between "full" and "checked" fields */ void CLatticeMaster::addTaggedScalarInteractionSaveField(const string& filename, const string& fieldname,const string& igtype,const string& igname,const string& savetype, int t_0,int t_end,int dt,int tag,int mask, bool checked) { console.Debug() << "CLatticeMaster::addTaggedScalarInteractionSaveField(" << filename << ","<< fieldname << "," << igname << "," << t_0 << "," << t_end << "," << dt << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); //send cmd to slave cmd_buffer.broadcast(CMD_ADD_SIF); AFieldMaster* new_fm=new ScalarInteractionFieldMaster(&m_tml_global_comm,fieldname,igtype,igname,filename,savetype,t_0,t_end,dt,tag,mask,checked); m_save_fields.push_back(new_fm); barrier.wait("CLatticeMaster::addTaggedScalarInteractionSaveField"); console.Debug() << "end CLatticeMaster::addTaggedScalarInteractionSaveField()\n"; } /*! Initialisation to run the simulation */ void CLatticeMaster::runInit() { if (!m_isInitialized) { m_pTimers->start("TotalRunTime"); console.Debug() << "timer resolution : " << MPI_Wtick() << "\n" ; m_isInitialized = true ; //m_t=0 ; m_pTimers->clear(); } } /*! Finalize after running the simulation */ void CLatticeMaster::runEnd() { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); console.Debug() << "total time: " << m_pTimers->getTiming("TotalRunTime") << " seconds for " << m_max_ts-1 << " time steps\n" ; cmd_buffer.broadcast(CMD_FINISH); barrier.wait("runEnd"); barrier.wait("runEnd2"); } void CLatticeMaster::saveTimingData() { if (!getTimingFileName().empty()) { m_pTimers->start("WorkerTimingDataSave"); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); cmd_buffer.broadcast(CMD_SAVETIMINGDATA); barrier.wait("saveTimingData"); m_pTimers->stop("WorkerTimingDataSave"); m_pTimers->appendData(getTimingFileName()); } } void CLatticeMaster::addPreTimeStepRunnable(Runnable &runnable) { m_preRunnableVector.push_back(&runnable); } void CLatticeMaster::addPostTimeStepRunnable(Runnable &runnable) { m_postRunnableVector.push_back(&runnable); } void CLatticeMaster::runRunnables(RunnableVector::iterator begin, RunnableVector::iterator end) { for (RunnableVector::iterator it = begin; it != end; it++) { (*it)->run(); } } void CLatticeMaster::runPreRunnables() { runRunnables( m_preRunnableVector.begin(), m_preRunnableVector.end() ); } void CLatticeMaster::runPostRunnables() { runRunnables( m_postRunnableVector.begin(), m_postRunnableVector.end() ); } /** * Perform a single time step of the simulation. */ void CLatticeMaster::runOneStep() { runInit(); m_pTimers->start("RunOneStep"); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CMPIBarrier barrier(m_global_comm); // Field saving of initial state (if required) if(m_first_time){ m_pTimers->start("FieldMasterCollect"); m_pTimers->pause("FieldMasterCollect"); m_pTimers->start("FieldMasterWrite"); m_pTimers->pause("FieldMasterWrite"); for(vector::iterator iter=m_save_fields.begin(); iter!=m_save_fields.end(); iter++){ if((*iter)->needSave(0)){ m_pTimers->resume("FieldMasterCollect"); cmd_buffer.broadcast(CMD_SEND_FIELDS); (*iter)->collect(); barrier.wait("runOneStep.collect"); m_pTimers->pause("FieldMasterCollect"); m_pTimers->resume("FieldMasterWrite"); (*iter)->write(); m_pTimers->pause("FieldMasterWrite"); } } m_pTimers->stop("FieldMasterCollect"); m_pTimers->stop("FieldMasterWrite"); } // Save a check-point of the initial state (if required) m_pTimers->start("NeighbourSearch"); if(m_first_time){ searchNeighbors(true); m_pCheckPointController->performCheckPoint(0); m_pSnapShotController->performSnapShot(0); m_first_time=false; } m_pTimers->stop("NeighbourSearch"); m_t++ ; console.Info() << "Begining time step: " << m_t << "\n" ; m_pTimers->start("LoadingMechanism"); runPreRunnables(); m_pTimers->stop("LoadingMechanism"); m_pTimers->start("NeighbourSearch"); searchNeighbors(false); m_pTimers->stop("NeighbourSearch"); // barrier.wait("runOneStep.2"); m_pTimers->start("UpdateInteractions"); updateInteractions(); m_pTimers->stop("UpdateInteractions"); m_pTimers->start("CalcForcesAndExchange"); oneStep(); m_pTimers->stop("CalcForcesAndExchange"); m_pTimers->start("SavingData"); // saving fields /* bool app; if(m_t==1){ app=false; // if 1st time step -> new file } else { app=true; // else append } */ // new field saving m_pTimers->start("FieldMasterCollect"); m_pTimers->pause("FieldMasterCollect"); m_pTimers->start("FieldMasterWrite"); m_pTimers->pause("FieldMasterWrite"); for(vector::iterator iter=m_save_fields.begin(); iter!=m_save_fields.end(); iter++){ if((*iter)->needSave(m_t)){ m_pTimers->resume("FieldMasterCollect"); cmd_buffer.broadcast(CMD_SEND_FIELDS); (*iter)->collect(); barrier.wait("runOneStep.collect"); m_pTimers->pause("FieldMasterCollect"); m_pTimers->resume("FieldMasterWrite"); (*iter)->write(); m_pTimers->pause("FieldMasterWrite"); } } m_pTimers->stop("FieldMasterCollect"); m_pTimers->stop("FieldMasterWrite"); // Save a check-point (if required) m_pTimers->start("CheckPoint"); // force ntable rebuild before checkpoint if(m_pCheckPointController->isCheckPoint(m_t)){ searchNeighbors(true); } m_pCheckPointController->performCheckPoint(m_t); m_pTimers->stop("CheckPoint"); // write a snapshot (if required) m_pTimers->start("SnapShot"); m_pSnapShotController->performSnapShot(m_t); m_pTimers->stop("SnapShot"); m_pTimers->stop("SavingData"); runPostRunnables(); m_pTimers->stop("RunOneStep"); m_pTimers->stop("TotalRunTime", true); saveTimingData(); console.Timing() << "updateInteractions : " << m_pTimers->getTiming("UpdateInteractions") << " seconds\n" ; console.Timing() << "searchNeighbors : " << m_pTimers->getTiming("NeighbourSearch") << " seconds\n" ; console.Timing() << "one step : " << m_pTimers->getTiming("CalcForcesAndExchange") << " seconds\n" ; console.Timing() << "saving data : " << m_pTimers->getTiming("SavingData") << " seconds\n" ; console.Info() << "End of time step: " << m_t << "\n" ; } /*! run the simulation */ void CLatticeMaster::run() { while (m_t < m_max_ts) { runOneStep(); } runEnd(); } /* CLatticeMaster::ParticleIdPairVector CLatticeMaster::getBondGroupIdPairs( const std::string &groupName ) { console.XDebug() << "CLatticeMaster::getBondGroupIdPairs(): enter\n"; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETBONDGROUPIDPAIRS); cmd.append(groupName.c_str()); cmd.broadcastCommand(); cmd.broadcastBuffer(); typedef std::pair DistIdPair; typedef multimap ParticleIdPairMMap; ParticleIdPairMMap idPairMMap; m_tml_global_comm.gather(idPairMMap); ParticleIdPairVector idPairVector; idPairVector.reserve(idPairMMap.size()); std::transform( idPairMMap.begin(), idPairMMap.end(), std::back_insert_iterator(idPairVector), ext::select2nd() ); cmd.wait("CMD_GETBONDGROUPIDPAIRS"); console.XDebug() << "CLatticeMaster::getBondGroupIdPairs(): exit\n"; return idPairVector; } */ /*! Create and add a new bonded IG \param name the name of the bonded IG \param k spring constant of the created bonds \param dist maximum distance between two particles to create bond \param break_dist (relative) breaking distance of bonds */ void CLatticeMaster::addBondedIG(const CBondedIGP &prms) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm,20); CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::addBondedIG()\n "; // send the command cmd_buffer.broadcast(CMD_ADDBONDEDIG); // send parameters pbuffer.append(prms.tag); pbuffer.append(prms.getName().c_str()); pbuffer.append(prms.k); pbuffer.append(prms.rbreak); pbuffer.append(static_cast(prms.m_scaling)); pbuffer.broadcast(0); barrier.wait("addBondedIG()"); console.XDebug() << "end CLatticeMaster::addBondedIG()" << "\n"; } /*! Create and add a new bonded IG with force limit \param name the name of the bonded IG \param k spring constant of the created bonds \param dist maximum distance between two particles to create bond \param break_dist (relative) breaking distance of bonds \param maxforce the maximum force */ void CLatticeMaster::addCappedBondedIG(int tag,const string& name,double k,double break_dist,double maxforce) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm,20); CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::addCappedBondedIG()\n "; // send the command cmd_buffer.broadcast(CMD_ADDCAPPEDBONDEDIG); // send parameters pbuffer.append(tag); pbuffer.append(name.c_str()); pbuffer.append(k); pbuffer.append(break_dist); pbuffer.append(maxforce); pbuffer.broadcast(0); // broadcast connection data // m_tml_global_comm.broadcast_cont(m_temp_conn[tag]); barrier.wait("addCappedBondedIG()"); console.XDebug() << "end CLatticeMaster::addCappedBondedIG()" << "\n"; } /*! Create and add a new short bonded IG \param name the name of the bonded IG \param k spring constant of the created bonds \param dist maximum distance between two particles to create bond \param break_dist (relative) breaking distance of bonds */ void CLatticeMaster::addShortBondedIG(int tag,const string& name,double k,double break_dist) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm,20); CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::addShortBondedIG()\n "; // send the command cmd_buffer.broadcast(CMD_ADDSHORTBONDEDIG); // send parameters pbuffer.append(tag); pbuffer.append(name.c_str()); pbuffer.append(k); pbuffer.append(break_dist); pbuffer.broadcast(0); // broadcast connection data //console.XDebug() << "broadcast " << m_temp_conn[0].size() << " connection data" << "\n"; //m_tml_global_comm.broadcast_cont(m_temp_conn[tag]); barrier.wait("addShortBondedIG()"); console.XDebug() << "end CLatticeMaster::addShortBondedIG()" << "\n"; } void CLatticeMaster::addRotBondedIG( int tag, const string& name, double kr, double ks, double kt, double kb, double max_nForce, double max_shForce, double max_tMoment, double max_bMoment, bool scaling, bool meanR_scaling, double truncated ) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm, 256); // 20 need change ? CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::addRotBondedIG()\n "; // send the command cmd_buffer.broadcast(CMD_ADDROTBONDEDIG); // send parameters pbuffer.append(tag); pbuffer.append(name.c_str()); pbuffer.append(kr); pbuffer.append(ks); pbuffer.append(kt); pbuffer.append(kb); pbuffer.append(max_nForce); pbuffer.append(max_shForce); pbuffer.append(max_tMoment); pbuffer.append(max_bMoment); pbuffer.append(static_cast(scaling)); pbuffer.append(static_cast(meanR_scaling)); pbuffer.append(truncated); pbuffer.broadcast(0); // broadcast connection data //m_tml_global_comm.broadcast_cont(m_temp_conn[tag]); barrier.wait("addRotBondedIG()"); console.XDebug() << "end CLatticeMaster::addRotBondedIG()" << "\n"; } void CLatticeMaster::addRotThermBondedIG( const CRotThermBondedIGP &prms ) { CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm, 256); // 20 need change ? CMPIBarrier barrier(m_global_comm); console.XDebug() << "CLatticeMaster::addRotThermBondedIG()\n "; // send the command cmd_buffer.broadcast(CMD_ADDROTTHERMBONDEDIG); // send parameters pbuffer.append(prms.tag); pbuffer.append(prms.getName().c_str()); pbuffer.append(prms.kr); pbuffer.append(prms.ks); pbuffer.append(prms.kt); pbuffer.append(prms.kb); pbuffer.append(prms.max_nForce); pbuffer.append(prms.max_shForce); pbuffer.append(prms.max_tMoment); pbuffer.append(prms.max_bMoment); pbuffer.append(prms.diffusivity); pbuffer.broadcast(0); // broadcast connection data //m_tml_global_comm.broadcast_cont(m_temp_conn[tag]); barrier.wait("addRotThermBondedIG()"); console.XDebug() << "end CLatticeMaster::addRotThermBondedIG()" << "\n"; } int CLatticeMaster::getNumParticles() { BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETNUMPARTICLES); cmd.broadcastCommand(); // get slave dimensions and coordinates typedef multimap RankNumParticlesMMap; RankNumParticlesMMap numParticlesMMap; m_tml_global_comm.gather(numParticlesMMap); int numParticles = 0; for ( RankNumParticlesMMap::const_iterator it = numParticlesMMap.begin(); it != numParticlesMMap.end(); it++ ) { numParticles += it->second; } cmd.wait("CLatticeMaster::getNumParticles"); return numParticles; } class IGPCommand : public BroadcastCommand { public: IGPCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDPIG) { } IGPCommand(const MpiRankAndComm &globalRankAndComm, int commandId) : BroadcastCommand(globalRankAndComm, commandId) { } void appendIGP(const AIGParam &prms) { appendTypeAndName(prms); } private: }; void CLatticeMaster::addPairIG(const CElasticIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_k); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CFrictionIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const FractalFrictionIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu_0); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(prms.x0); igpCmd.append(prms.y0); igpCmd.append(prms.dx); igpCmd.append(prms.dy); igpCmd.append(prms.nx); igpCmd.append(prms.ny); for (int i = 0; i < (prms.nx*prms.ny); i++) { igpCmd.append((prms.mu.get())[i]); } igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CAdhesiveFrictionIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(prms.r_cut); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CLinearDashpotIGP & prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_damp); igpCmd.append(prms.m_cutoff); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CHertzianElasticIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CHertzianViscoElasticFrictionIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_A); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.append(prms.mu); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CHertzianViscoElasticIGP &prms) { IGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_A); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.broadcast(); } //--- // rotational interactions //--- class RotIGPCommand : public IGPCommand { public: RotIGPCommand(const MpiRankAndComm &globalRankAndComm) : IGPCommand(globalRankAndComm, CMD_ADDPIG) { } void appendIGP(const AIGParam &prms) { appendTypeAndName(prms); } private: }; void CLatticeMaster::addPairIG(const CRotElasticIGP &prms) { RotIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_kr); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CRotFrictionIGP &prms) { RotIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu_s); igpCmd.append(prms.mu_d); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(static_cast(prms.scaling)); igpCmd.append(static_cast(prms.meanR_scaling)); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CRotThermElasticIGP &prms) { RotIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_kr); igpCmd.append(prms.diffusivity); igpCmd.broadcast(); } void CLatticeMaster::addPairIG(const CRotThermFrictionIGP &prms) { RotIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu_s); igpCmd.append(prms.mu_d); igpCmd.append(prms.k_s); igpCmd.append(prms.diffusivity); igpCmd.append(prms.dt); igpCmd.broadcast(); } //--- // creation of tagged pair interaction groups //--- // --- RotFriction --- class TaggedIGPCommand : public IGPCommand { public: TaggedIGPCommand(const MpiRankAndComm &globalRankAndComm) : IGPCommand(globalRankAndComm, CMD_ADDTAGPIG) { } void appendIGP(const AIGParam &prms) { appendTypeAndName(prms); } private: }; void CLatticeMaster::addTaggedPairIG( const CRotFrictionIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu_s); igpCmd.append(prms.mu_d); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(static_cast(prms.scaling)); igpCmd.append(static_cast(prms.meanR_scaling)); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } // --- NRotFriction --- void CLatticeMaster::addTaggedPairIG( const CFrictionIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.k); igpCmd.append(prms.mu); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } void CLatticeMaster::addTaggedPairIG( const CLinearDashpotIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_damp); igpCmd.append(prms.m_cutoff); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } // --- Hertzian Elastic --- void CLatticeMaster::addTaggedPairIG( const CHertzianElasticIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } // --- Hertzian ViscoElasticFriction --- void CLatticeMaster::addTaggedPairIG( const CHertzianViscoElasticFrictionIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_A); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.append(prms.mu); igpCmd.append(prms.k_s); igpCmd.append(prms.dt); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } // --- Hertzian ViscoElastic --- void CLatticeMaster::addTaggedPairIG( const CHertzianViscoElasticIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_A); igpCmd.append(prms.m_E); igpCmd.append(prms.m_nu); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } // --- tagged elastic --- void CLatticeMaster::addTaggedPairIG( const CElasticIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_k); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } void CLatticeMaster::addTaggedPairIG( const CRotElasticIGP &prms, int tag1, int mask1, int tag2, int mask2 ) { TaggedIGPCommand igpCmd(getGlobalRankAndComm()); igpCmd.appendIGP(prms); igpCmd.append(prms.m_kr); igpCmd.append(static_cast(prms.m_scaling)); igpCmd.append(tag1); igpCmd.append(mask1); igpCmd.append(tag2); igpCmd.append(mask2); igpCmd.broadcast(); } /*! Remove interaction group. Send name of the interactiongroup to workers \param name the name of the interaction group which is to be removed */ void CLatticeMaster::removeIG(const std::string& name) { BroadcastCommand cmd(getGlobalRankAndComm(),CMD_REMOVEIG); cmd.append(name.c_str()); cmd.broadcast(); } //--- // creation of interaction groups between particles and meshes //--- /*! Broadcast command to add a (non-bonded) trimesh IG */ class TriMeshIGCommand : public BroadcastCommand { public: TriMeshIGCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDTRIMESHIG) { } }; /*! add(non-bonded) trimesh IG */ void CLatticeMaster::addTriMeshIG(const ETriMeshIP &prms) { TriMeshIGCommand cmd(getGlobalRankAndComm()); cmd.appendTypeAndName(prms); cmd.append(prms.getMeshName().c_str()); cmd.append(prms.k); cmd.broadcast(); } /*! Broadcast command to add a (non-bonded) interaction group between particles and a 2D mesh */ class Mesh2DIGCommand : public BroadcastCommand { public: Mesh2DIGCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDMESH2DIG) { } }; /*! add(non-bonded) interaction group between particles and a 2D mesh */ void CLatticeMaster::addMesh2DIG(const ETriMeshIP &prms) { Mesh2DIGCommand cmd(getGlobalRankAndComm()); cmd.appendTypeAndName(prms); cmd.append(prms.getMeshName().c_str()); cmd.append(prms.k); cmd.broadcast(); } class BondedTriMeshIGCommand : public BroadcastCommand { public: BondedTriMeshIGCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDBONDEDTRIMESHIG) { } void appendTriMeshPrms(const BTriMeshIP &triMeshPrms) { append(triMeshPrms.getName().c_str()); append(triMeshPrms.getMeshName().c_str()); append(triMeshPrms.k); append(triMeshPrms.brk); } void appendTagBuildPrms(const MeshTagBuildPrms &buildPrms) { append(buildPrms.getTypeString().c_str()); append(buildPrms.m_tag); append(buildPrms.m_mask); } void appendGapBuildPrms(const MeshGapBuildPrms &buildPrms) { append(buildPrms.getTypeString().c_str()); append(buildPrms.m_maxGap); } }; /*! add bonded trimesh IG by particle tag \param triMeshPrms the interaction parameters, i.e. k , r_break.... \param buildPrms the build parameters, i.e. the tag & mask */ void CLatticeMaster::addBondedTriMeshIG(const BTriMeshIP &triMeshPrms, const MeshTagBuildPrms &buildPrms) { console.Debug() << "CLatticeMaster::addBondedTriMeshIG with tag build prms\n"; BondedTriMeshIGCommand bndTriMeshCmd(getGlobalRankAndComm()); console.Debug() << "CLatticeMaster::addBondedTriMeshIG appending mesh prms to command...\n"; bndTriMeshCmd.appendTriMeshPrms(triMeshPrms); console.Debug() << "CLatticeMaster::addBondedTriMeshIG appending mesh build prms to command...\n"; bndTriMeshCmd.appendTagBuildPrms(buildPrms); console.Debug() << "CLatticeMaster::addBondedTriMeshIG broadcasting...\n"; bndTriMeshCmd.broadcast(); console.Debug() << "end CLatticeMaster::addBondedTriMeshIG\n"; } /*! add bonded trimesh IG by distance between particle & mesh \param triMeshPrms the interaction parameters, i.e. k , r_break.... \param buildPrms the build parameters, i.e. the max. dist */ void CLatticeMaster::addBondedTriMeshIG(const BTriMeshIP &triMeshPrms, const MeshGapBuildPrms &buildPrms) { console.Debug() << "CLatticeMaster::addBondedTriMeshIG with gap build prms\n"; BondedTriMeshIGCommand bndTriMeshCmd(getGlobalRankAndComm()); console.Debug() << "CLatticeMaster::addBondedTriMeshIG appending mesh prms to command...\n"; bndTriMeshCmd.appendTriMeshPrms(triMeshPrms); console.Debug() << "CLatticeMaster::addBondedTriMeshIG appending mesh build prms to command...\n"; bndTriMeshCmd.appendGapBuildPrms(buildPrms); console.Debug() << "CLatticeMaster::addBondedTriMeshIG broadcasting...\n"; bndTriMeshCmd.broadcast(); console.Debug() << "end CLatticeMaster::addBondedTriMeshIG\n"; } /*! add bonded interactions with 2d mesh using a gap parameter */ void CLatticeMaster::addBondedMesh2DIG(const BMesh2DIP &igp, const MeshGapBuildPrms &buildPrms) { console.Debug() << "CLatticeMaster::addBondedMesh2DIG with Mesh2DGapBuildPrms\n"; BondedMesh2DIGCommand cmd(getGlobalRankAndComm()); console.Debug() << "made cmd\n"; cmd.appendMesh2DParam(igp); console.Debug() << "appended IGP\n"; cmd.appendGapBuildPrms(buildPrms); console.Debug() << "appended buildParams\n"; cmd.broadcast(); console.Debug() << "end CLatticeMaster::addBondedMesh2DIG\n"; } /*! add bonded interactions with 2d mesh using tag/mask parameters */ void CLatticeMaster::addBondedMesh2DIG(const BMesh2DIP &igp, const MeshTagBuildPrms &buildPrms) { console.Debug() << "CLatticeMaster::addBondedMesh2DIG with Mesh2DGapBuildPrms\n"; BondedMesh2DIGCommand cmd(getGlobalRankAndComm()); console.Debug() << "made cmd\n"; cmd.appendMesh2DParam(igp); console.Debug() << "appended IGP\n"; cmd.appendTagBuildPrms(buildPrms); console.Debug() << "appended buildParams\n"; cmd.broadcast(); console.Debug() << "end CLatticeMaster::addBondedMesh2DIG\n"; } #if 0 /*! add a group of bonded triangle mesh (surface) to particle interactions \param name the name of the itneraction group \param meshname the name of the mesh \param k spring constant \param r_break (relative) breaking distance \param buildtype the way to initially build the IG \param buildparam the parameters for building the IG */ void CLatticeMaster::addBondedTriMeshIG(const std::string& name, const std::string& meshname, double k, double r_break, const std::string& buildtype, std::list buildparams) { console.XDebug() << "begin CLatticeMaster::addBondedTriMeshIG\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm); CMPIBarrier barrier(m_global_comm); // send command cmd_buffer.broadcast(CMD_ADDBONDEDTRIMESHIG); // send data pbuffer.append(name.c_str()); pbuffer.append(meshname.c_str()); pbuffer.append(k); pbuffer.append(r_break); pbuffer.append(buildtype.c_str()); if(buildtype=="BuildByTag"){ console.XDebug() << "BuildByTag\n"; // extract build parameters list::iterator iter=buildparams.begin(); pbuffer.append(int(iter->Content.l)); iter++; // tag pbuffer.append(int(iter->Content.l)); // send params pbuffer.broadcast(0); } else if (buildtype=="BuildByGap"){ list::iterator iter=buildparams.begin(); pbuffer.append(iter->Content.d); // max. gap // send params pbuffer.broadcast(0); } else { throw std::runtime_error(std::string("Unknown BTriMeshInteraction build type: ")+buildtype); } barrier.wait("readBondedTriMeshIG"); console.XDebug() << "end CLatticeMaster::addBondedTriMeshIG\n"; } #endif /*! add a triangle mesh \param name the name of the mesh \param filename the name of the mesh file */ void CLatticeMaster::addTriMesh(const string& meshName, const string& fileName) { console.XDebug() << "begin CLatticeMaster::addTriMesh\n"; readAndDistributeTriMesh(meshName, fileName); console.XDebug() << "end CLatticeMaster::addTriMesh\n"; } /*! Read a triangle mesh from a file and distribute the data to the workers. The tags on the mesh data are ignored, i.e. the whole file is read as a single mesh. \param meshName the name of the mesh \param meshFileName the filename */ void CLatticeMaster::readAndDistributeTriMesh(const std::string& meshName, const std::string& meshFileName) { TriMeshDataPair meshData = readTriMesh(meshFileName); createTriMesh(meshName, meshData.first, meshData.second); } /*! Read a triangle mesh from a file and distribute the data to the workers. \param meshName the name of the mesh \param meshFileName the filename \param tag the tag in the mesh data determining if a triangle belongs to this mesh or not */ void CLatticeMaster::readAndDistributeTriMesh( const std::string& meshName, const std::string& meshFileName, int tag) { TriMeshDataPair meshData = readTriMesh(meshFileName,tag); createTriMesh(meshName, meshData.first, meshData.second); } /*! Read triangle mesh data from file and return data as pair. Tags are ignored, i.e. the whole file is read as a single mesh. \param meshfilename the filename */ CLatticeMaster::TriMeshDataPair CLatticeMaster::readTriMesh(const std::string& meshfilename) { console.XDebug() << "CLatticeMaster::readTriMesh(" << meshfilename << ")\n"; // buffers MeshNodeDataVector node_send_buffer; MeshTriDataVector tri_send_buffer; // mesh reader MeshReader reader(meshfilename); // --- Nodes --- MeshReader::NodeIterator &niter=reader.getNodeIterator(); // read nodes into vector while(niter.hasNext()){ node_send_buffer.push_back(niter.next()); } // --- Triangles --- MeshReader::TriIterator &titer=reader.getTriIterator(); // read triangles into vector while(titer.hasNext()){ tri_send_buffer.push_back(titer.next()); } return TriMeshDataPair(node_send_buffer, tri_send_buffer); } /*! read a triangle mesh from a file and distribute the data to the workers \param meshfilename the filename \param tag the tag in the mesh data determining if a triangle belongs to this mesh or not */ CLatticeMaster::TriMeshDataPair CLatticeMaster::readTriMesh(const std::string& meshfilename,int tag) { console.XDebug() << "CLatticeMaster::readTriMesh(" << meshfilename << ")\n"; // buffers vector node_buffer; vector tri_buffer; // mesh reader MeshReader reader(meshfilename); // --- Nodes --- MeshReader::NodeIterator &niter=reader.getNodeIterator(); // read nodes into vector while(niter.hasNext()){ node_buffer.push_back(niter.next()); } // --- Triangles --- MeshReader::TriIterator &titer=reader.getTriIterator(); // read triangles into vector while(titer.hasNext()){ MeshTriData mtd=titer.next(); if(mtd.tag==tag){ tri_buffer.push_back(mtd); } } console.XDebug() << "end CLatticeMaster::readTriMesh\n"; return TriMeshDataPair(node_buffer, tri_buffer); } /*! create a triangle mesh from a vector of nodes and a vector of triangles \param meshName the name assigned to the triangle mesh \param node_send_buffer the vector of nodes \param tri_send_buffer the vector of triangles */ void CLatticeMaster::createTriMesh( const std::string &meshName, const MeshNodeDataVector &node_send_buffer, const MeshTriDataVector &tri_send_buffer ) { console.XDebug() << "CLatticeMaster::distributeTriMesh: enter\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm); // send command cmd_buffer.broadcast(CMD_ADDTRIMESH); pbuffer.append(meshName.c_str()); pbuffer.broadcast(0); CMPIBarrier barrier(m_global_comm); // distribute the node vector m_tml_global_comm.broadcast_cont_packed(node_send_buffer); // distribute the triangle vector m_tml_global_comm.broadcast_cont_packed(tri_send_buffer); barrier.wait("distributeTriMesh"); console.XDebug() << "CLatticeMaster::distributeTriMesh: exit\n"; } /*! add a 2D mesh \param name the name of the mesh \param filename the name of the mesh file \param tag the tag of the edges that are included into the mesh */ void CLatticeMaster::addMesh2D(const string& name, const string& filename, int tag) { console.XDebug() << "CLatticeMaster::addMesh2D( " << name << " , " << filename << ")\n"; CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); CVarMPIBuffer pbuffer(m_global_comm); // send command cmd_buffer.broadcast(CMD_ADDMESH2D); pbuffer.append(name.c_str()); pbuffer.broadcast(0); readAndDistributeMesh2D(filename,tag); console.XDebug() << "end CLatticeMaster::addMesh2D\n"; } /*! read a 2D mesh from a file and distribute the data to the workers \param meshfilename the filename \param tag the tag of the edges that are included into the mesh */ void CLatticeMaster::readAndDistributeMesh2D(const std::string& meshfilename,int tag) { console.XDebug() << "CLatticeMaster::readAndDistributeMesh2D(" << meshfilename << ")\n"; CMPIBarrier barrier(m_global_comm); vector node_send_buffer; vector edge_send_buffer; // mesh reader Mesh2DReader reader(meshfilename); // --- Nodes --- Mesh2DReader::NodeIterator &niter=reader.getNodeIterator(); console.XDebug() << "Node reader initialized\n"; // read nodes into vector while(niter.hasNext()){ node_send_buffer.push_back(niter.next()); } // --- Edges --- Mesh2DReader::EdgeIterator &eiter=reader.getEdgeIterator(); console.XDebug() << "Edge reader initialized\n"; // read triangles into vector while(eiter.hasNext()){ MeshEdgeData2D med=eiter.next(); if(med.tag==tag){ edge_send_buffer.push_back(med); } } // distribute the node vector m_tml_global_comm.broadcast_cont_packed(node_send_buffer); // distribute the triangle vector m_tml_global_comm.broadcast_cont_packed(edge_send_buffer); barrier.wait("readAndDistributeMesh2D"); console.XDebug() << "end CLatticeMaster::readAndDistributeMesh2D\n"; } class SIGCommand : public BroadcastCommand { public: SIGCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDSIG) { } void appendGravityIGP(const esys::lsm::GravityIGP &gravityIGP) { append(gravityIGP.getTypeString().c_str()); packInto(gravityIGP); } void appendBuoyancyIGP(const esys::lsm::BuoyancyIGP &buoyancyIGP) { append(buoyancyIGP.getTypeString().c_str()); packInto(buoyancyIGP); } }; void CLatticeMaster::addSingleIG(const esys::lsm::GravityIGP &gravityIGP) { SIGCommand sigCmd(getGlobalRankAndComm()); sigCmd.appendGravityIGP(gravityIGP); sigCmd.broadcast(); } void CLatticeMaster::addSingleIG(const esys::lsm::BuoyancyIGP &buoyancyIGP) { SIGCommand sigCmd(getGlobalRankAndComm()); sigCmd.appendBuoyancyIGP(buoyancyIGP); sigCmd.broadcast(); } #if 0 /*! add body force \param type the type of force, i.e. Gravity,... \param prms the interaction parameters */ void CLatticeMaster::addBodyForce(const string& type, const esys::lsm::BodyForceIGP &prms) { console.XDebug() << "begin CLatticeMaster::addBodyForce\n"; if (type == "Gravity") { console.XDebug()<<"Body force type is " << type << "\n"; CVarMPIBuffer pbuffer(MPI_COMM_WORLD,20); CMPIBarrier barrier(MPI_COMM_WORLD); CMPILCmdBuffer cmd_buffer(MPI_COMM_WORLD,m_global_rank); //send the command cmd_buffer.broadcast(CMD_ADDSIG); // console.Debug()<<"adding Gravity IG\n"; pbuffer.append(type.c_str()); prms.packInto(&pbuffer); pbuffer.broadcast(0); barrier.wait("addBodyForce()"); } else { throw std::runtime_error( std::string("Unknown body force type: ") + type ); } console.XDebug() << "end CLatticeMaster::addBodyForce\n"; } void CLatticeMaster::addSingleIG(const string& type, const string& name, list params) { console.XDebug()<<"CLatticeMaster::addSingleIG\n"; if(type=="Gravity"){ list::iterator iter=params.begin(); double x = iter->Content.d; iter++; double y = iter->Content.d; iter++; double z = iter->Content.d; addBodyForce(type, esys::lsm::BodyForceIGP(name, Vec3(x, y, z))); }else{ throw std::runtime_error( std::string("Unknown body force type: ") + type ); } console.XDebug()<<"end CLatticeMaster::addSingleIG\n"; } #endif class DampingCommand : public BroadcastCommand { public: DampingCommand(const MpiRankAndComm &globalRankAndComm) : BroadcastCommand(globalRankAndComm, CMD_ADDDAMP) { } }; void CLatticeMaster::addDamping(const CDampingIGP &dampingIGP) { DampingCommand dampCmd(getGlobalRankAndComm()); dampCmd.append(dampingIGP.getTypeString().c_str()); dampCmd.packInto(dampingIGP); dampCmd.broadcast(); } void CLatticeMaster::addDamping(const CLocalDampingIGP &dampingIGP) { DampingCommand dampCmd(getGlobalRankAndComm()); dampCmd.append(dampingIGP.getTypeString().c_str()); dampCmd.packInto(dampingIGP); dampCmd.broadcast(); } void CLatticeMaster::addDamping(const ABCDampingIGP &dampingIGP) { DampingCommand dampCmd(getGlobalRankAndComm()); dampCmd.append(dampingIGP.getTypeString().c_str()); dampCmd.packInto(dampingIGP); dampCmd.broadcast(); } #if 0 /*! Add damping to a lattice. Send parameters to slaves */ void CLatticeMaster::addDamping(const string& type,list params) { console.XDebug()<<"CLatticeMaster::addDamping\n"; CVarMPIBuffer pbuffer(m_global_comm,20); CMPIBarrier barrier(m_global_comm); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); //send the command cmd_buffer.broadcast(CMD_ADDDAMP); if(type=="Damping"){ // console.Debug()<<"adding Damping\n"; pbuffer.append("Damping"); CDampingIGP igp; list::iterator iter=params.begin(); igp.setName("damp"); igp.setVRef(Vec3(0.0,0.0,0.0)); igp.setVisc(iter->Content.d); console.XDebug()<< "visc : " << iter->Content.d; iter++; igp.setTimeStep(iter->Content.d); console.XDebug()<< "dt : " << iter->Content.d; iter++; igp.setMaxIter(iter->Content.l); igp.packInto(&pbuffer); pbuffer.broadcast(0); }else{ console.Error()<<"trying to add Damping of unknown type\n"; } barrier.wait("addDamping()"); console.XDebug()<<"end CLatticeMaster::addDamping\n"; } #endif /*! set IG s1 as excluding IG in s2, i.e. an two particles interacting in s1 can't interact in s2 */ void CLatticeMaster::addExIG(const string& s1,const string& s2) { console.XDebug()<<"CLatticeMaster::addExIG\n"; CVarMPIBuffer pbuffer(m_global_comm,20); CMPIBarrier barrier(m_global_comm); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); //send the command cmd_buffer.broadcast(CMD_EXIG); pbuffer.append(s1.c_str()); pbuffer.append(s2.c_str()); pbuffer.broadcast(0); barrier.wait("addExIG()"); console.XDebug()<<"end CLatticeMaster::addExIG\n"; // update interactions - relevant in case the exclusion is added _during_ a run updateInteractions(); } #if 0 /*! Get the list of face ids for a given mesh, i.e. edge ids in 2D, triangle ids in 3D \param meshname */ void CLatticeMaster::getMeshFaceReferences(const string& meshname) { console.XDebug()<<"CLatticeMaster::getMeshFaceReferences( " << meshname << ")\n"; GetFaceRefCommand cmd(getGlobalRankAndComm(),meshname); // broadcast command cmd.broadcast(); // receive data (multimap) multimap ref_mmap; m_tml_global_comm.gather(ref_mmap); // collate into set set ref_set; //== this is the set of node ids == for(multimap::iterator iter=ref_mmap.begin(); iter!=ref_mmap.end(); iter++){ ref_set.insert(iter->second); } console.XDebug()<<"end CLatticeMaster::getMeshFaceReferences()\n"; } /*! Get the list of stresses for a given mesh. \param meshname */ void CLatticeMaster::getMesh2DEdgeStress(const string& meshname) { console.XDebug()<<"CLatticeMaster::getMesh2DEdgeStress( " << meshname << ")\n"; multimap > temp_mm; map m_data; //=== map of id, value === BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETMESH2DSTRESS); cmd.append(meshname.c_str()); cmd.broadcastCommand(); // get data from slaves m_tml_global_comm.gather(temp_mm); // add data together for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ if(m_data.find((iter->second).first)==m_data.end()){ // id not in m_data -> insert m_data.insert(iter->second); } else { // id is in m_data -> add m_data[(iter->second).first]+=(iter->second).second; } } console.XDebug()<<"end CLatticeMaster::getMesh2DEdgeStress()\n"; } #endif /*! Set local console verbosity and send command to workers to set console verbosity there */ void CLatticeMaster::setVerbosity(bool verbose) { // master if (verbose){ console.SetVerbose(Con::all); } else { console.SetVerbose(Con::silent); } // workers BroadcastCommand cmd(getGlobalRankAndComm(), CMD_SETVERBOSITY); cmd.append(static_cast(verbose)); cmd.broadcast(); } ./Parallel/GetRef_cmd.h0000664000175000017500000000240712176660653014546 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __GETREF_CMD_H #define __GETREF_CMD_H // -- project includes -- #include "Parallel/BroadCast_cmd.h" /*! \class GetNodeRefCommand \brief command for getting mesh node reference list $Revision$ $Date$ */ class GetNodeRefCommand : public BroadcastCommand { public: GetNodeRefCommand(const MpiRankAndComm&,const string&); }; /*! \class GetFaceRefCommand \brief command for getting mesh node reference list $Revision$ $Date$ */ class GetFaceRefCommand : public BroadcastCommand { public: GetFaceRefCommand(const MpiRankAndComm&,const string&); }; #endif // __GETREF_CMD_H ./Parallel/mpia2abuf.cpp0000664000175000017500000000546412176660653014756 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mpia2abuf.h" CMPIA2ABuffer::CMPIA2ABuffer(MPI_Comm comm,int buffersize) { m_comm=comm; MPI_Comm_rank(comm,&m_rank); MPI_Comm_size(comm,&m_size); MPI_Pack_size(1,MPI_INT,m_comm,&m_int_increment); MPI_Pack_size(1,MPI_DOUBLE,m_comm,&m_dbl_increment); m_buffersize=buffersize; m_buffer_s=new char[m_buffersize*m_size]; m_buffer_r=new char[m_buffersize*m_size]; m_position_s=new int[m_size]; m_position_r=new int[m_size]; for(int i=0;i #include using namespace esys::lsm; /*! read model geometry from file \param fileName the name of the input file */ template void CLatticeMaster::readGeometry(const std::string &fileName) { console.Debug() << "begin CLatticeMaster::readGeometry: fileName=" << fileName << "\n"; // setup geometry reader and get geometry info from header file GeometryReader geoReader(fileName); GeometryInfo geoInfo = geoReader.getGeometryInfo(); // check if geometry info has been set previously if(m_bbx_has_been_set){ // check if old & new geometry are compatible if(!m_geo_info.isCompatible(geoInfo)){ std::cerr << "Geometry info read from file is incompatible with previously set geometry (bounding box, circular boundaries) - Model may not run properly!" << std::endl; } // set only the geometry version, the other geometry info remains unchanged m_geo_info.setLsmGeoVersion(geoInfo.getLsmGeoVersion()); } else { m_geo_info=geoInfo; // set full geometry meta-info // set model spatial domain -> sets geometry info & initializes neighbor table in workers if(m_geo_info.hasAnyPeriodicDimensions()){ setSpatialDomain(m_geo_info.getBBoxCorners()[0],m_geo_info.getBBoxCorners()[1],m_geo_info.getPeriodicDimensions()); } else { setSpatialDomain(m_geo_info.getBBoxCorners()[0],m_geo_info.getBBoxCorners()[1]); } m_bbx_has_been_set=true; // flag that spatial domain has been set } // read particles GeometryReader::ParticleIterator &particleIt = geoReader.getParticleIterator(); console.XDebug()<< "Number of particles: " << particleIt.getNumRemaining() << "\n"; if (geoReader.getParticleType() != "Simple") { throw std::runtime_error( (std::string("Unknown particle type ") + geoReader.getParticleType()).c_str() ); } addParticles(particleIt); // read connections GeometryReader::ConnectionIterator &connectionIt = geoReader.getConnectionIterator(); console.XDebug()<< "Number of connections: " << connectionIt.getNumRemaining() << "\n"; addConnections(connectionIt); console.Debug()<<"end CLatticeMaster::readGeometry\n"; } template void CLatticeMaster::visitMeshFaceReferences(const string &meshName) { throw std::runtime_error("CLatticeMaster::visitMeshFaceReferences: Not implemented."); } template void CLatticeMaster::visitMesh2dNodeReferences(const string &meshName, TmplVisitor &visitor) { console.XDebug()<<"CLatticeMaster::visitMesh2dNodeReferences( " << meshName << ")\n"; GetNodeRefCommand cmd(getGlobalRankAndComm(),meshName); // broadcast command cmd.broadcast(); // receive data (multimap) std::multimap ref_mmap; m_tml_global_comm.gather(ref_mmap); // collate into set std::set ref_set; //== this is the set of node ids == for(std::multimap::iterator iter=ref_mmap.begin(); iter!=ref_mmap.end(); iter++){ ref_set.insert(iter->second); } for (std::set::const_iterator it = ref_set.begin(); it != ref_set.end(); it++) { visitor.visitNodeRef(*it); } console.XDebug()<<"end CLatticeMaster::visitMesh2dNodeReferences()\n"; } template void CLatticeMaster::visitMesh2dEdgeStress(const string &meshName, TmplVisitor &visitor) { console.XDebug()<<"CLatticeMaster::visitMesh2dEdgeStress( " << meshName << ")\n"; std::multimap > temp_mm; std::map data; //=== map of id, value === BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETMESH2DSTRESS); cmd.append(meshName.c_str()); cmd.broadcastCommand(); cmd.broadcastBuffer(); // get data from slaves m_tml_global_comm.gather(temp_mm); // add data together for(std::multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ if(data.find((iter->second).first)==data.end()){ // id not in data -> insert data.insert(iter->second); } else { // id is in data -> add data[(iter->second).first]+=(iter->second).second; } } for (std::map::const_iterator it = data.begin(); it != data.end(); it++) { visitor.visitRefStressPair(it->first, it->second); } cmd.wait("visitMesh2dEdgeStress"); console.XDebug()<<"end CLatticeMaster::visitMesh2dEdgeStress()\n"; } template void CLatticeMaster::visitTriMeshFaceForce( const string &meshName, TmplVisitor &visitor ) { console.XDebug()<<"CLatticeMaster::visitTriMeshFaceForce( " << meshName << ")\n"; std::multimap > temp_mm; std::map data; //=== map of id, value === BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETTRIMESHFORCE); cmd.append(meshName.c_str()); cmd.broadcastCommand(); cmd.broadcastBuffer(); // get data from slaves m_tml_global_comm.gather(temp_mm); // add data together for(std::multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ if(data.find((iter->second).first)==data.end()){ // id not in data -> insert data.insert(iter->second); } else { // id is in data -> add data[(iter->second).first]+=(iter->second).second; } } for (std::map::const_iterator it = data.begin(); it != data.end(); it++) { visitor.visitRefForcePair(it->first, it->second); } cmd.wait("visitTriMeshFaceStress"); console.XDebug()<<"end CLatticeMaster::visitTriMeshFaceForce()\n"; } template void CLatticeMaster::visitParticlesOfType( const IdVector &particleIdVector, TmplVisitor &visitor ) { console.Debug() << "CLatticeMaster::visitParticlesOfType: enter\n"; typedef std::multimap ParticleMMap; ParticleMMap particleMMap; console.Debug() << "CLatticeMaster::visitParticlesOfType: broadcasting command\n"; BroadcastCommand cmd(getGlobalRankAndComm(), CMD_GETIDPARTICLEDATA); cmd.broadcastCommand(); console.Debug() << "CLatticeMaster::visitParticlesOfType: broadcasting particle id's\n"; m_tml_global_comm.broadcast_cont(particleIdVector); console.Debug() << "CLatticeMaster::visitParticlesOfType:" << " gathering particle data from workers\n"; m_tml_global_comm.gather_packed(particleMMap); console.Debug() << "CLatticeMaster::visitParticlesOfType:" << " gathered " << particleMMap.size() << " particles\n"; console.Debug() << "CLatticeMaster::visitParticlesOfType:" << " visiting particle data\n"; for( typename ParticleMMap::iterator iter=particleMMap.begin(); iter != particleMMap.end(); iter++ ) { iter->second.visit(visitor); } cmd.wait("visitParticles"); console.Debug() << "CLatticeMaster::visitParticlesOfType: exit\n"; } template void CLatticeMaster::visitParticles( const IdVector &particleIdVector, TmplVisitor &visitor ) { console.Debug() << "CLatticeMaster::visitParticles: enter\n"; if (m_particle_type == "Basic") { visitParticlesOfType(particleIdVector, visitor); } else if (m_particle_type == "Rot") { visitParticlesOfType(particleIdVector, visitor); } else if (m_particle_type == "RotVi") { visitParticlesOfType(particleIdVector, visitor); } else if (m_particle_type == "RotTherm") { visitParticlesOfType(particleIdVector, visitor); } else { throw std::runtime_error( std::string("Unknown particle type: ") + m_particle_type ); } console.Debug() << "CLatticeMaster::visitParticles: exit\n"; } template void CLatticeMaster::addParticles(TmplIterator &particleIt) { CMPIBarrier barrier(m_global_comm); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); // cast storage pointer to correct type vector particleVector; console.XDebug() << "CLatticeMaster::addParticles:" << " Reserving vector memory for particles.\n"; const int numBroadcastParticles = 50000; particleVector.reserve(numBroadcastParticles); console.XDebug() << "CLatticeMaster::addParticles:" << " Beginning add-particle loop..." << "\n"; for (int i = 0; particleIt.hasNext(); i++) { const TmplParticle particle(particleIt.next()); particleVector.push_back(particle); if (((i+1) % 5000) == 0) { console.XDebug() << "CLatticeMaster::addParticles:" << "Adding particle with id " << particleVector.rbegin()->getID() << "\n"; } if (((i+1) % numBroadcastParticles) == 0) { console.XDebug() << "CLatticeMaster::addParticles:" << " Broadcasting receive cmd...." << "\n"; cmd_buffer.broadcast(CMD_RECEIVEPARTICLES); console.XDebug() << "CLatticeMaster::addParticles: Broadcasting particles...." << "\n"; m_tml_global_comm.broadcast_cont_packed(particleVector); barrier.wait("CLatticeMaster::addParticles: Post particle broadcast."); barrier.wait("CLatticeMaster::addParticles: Post Command."); particleVector.clear(); particleVector.reserve(numBroadcastParticles); } } console.XDebug() << "CLatticeMaster::addParticles: Done add-particle loop..." << "\n"; console.XDebug() << "CLatticeMaster::addParticles: Broadcasting final particle-receive cmd" << "\n"; cmd_buffer.broadcast(CMD_RECEIVEPARTICLES); console.XDebug() << "CLatticeMaster::addParticles:" << " Broadcasting final set of particles...\n"; m_tml_global_comm.broadcast_cont_packed(particleVector); barrier.wait("Post final particle broadcast."); barrier.wait("Post final particle-broadcast command."); // -- build ntable console.XDebug() << "CLatticeMaster::addParticles: " << "Building ntable (searchNeighbours)...\n"; searchNeighbors(true); console.XDebug() << "CLatticeMaster::addParticles: exit\n"; } template void CLatticeMaster::addConnections(TmplIterator &connectionIt) { console.XDebug() << "CLatticeMaster::addConnections: enter\n"; CMPIBarrier barrier(m_global_comm); CMPILCmdBuffer cmd_buffer(m_global_comm,m_global_rank); const int numBroadcastConnections = 100000; vector connectionBuffer; connectionBuffer.reserve(numBroadcastConnections); int i = 0; for (; connectionIt.hasNext(); i++) { typename TmplIterator::value_type data = connectionIt.next(); connectionBuffer.push_back(data.getTag()); connectionBuffer.push_back(data.getP1Id()); connectionBuffer.push_back(data.getP2Id()); if ((i+1) % 50000 == 0) { console.XDebug() << "Adding connection number " << i << "\n"; } if ((i+1) % numBroadcastConnections == 0) { console.XDebug() << "CLatticeMaster::addConnections:" << " Broadcasting receive cmd...." << "\n"; cmd_buffer.broadcast(CMD_RECEIVECONNECTIONS); console.XDebug() << "CLatticeMaster::addConnections: Broadcasting connections...." << "\n"; m_tml_global_comm.broadcast_cont_packed(connectionBuffer); barrier.wait("CLatticeMaster::addConnections: Post connection broadcast."); barrier.wait("CLatticeMaster::addConnections: Post Command."); connectionBuffer.clear(); connectionBuffer.reserve(numBroadcastConnections); } //m_temp_conn[data.getTag()].push_back(data.getP1Id()); //m_temp_conn[data.getTag()].push_back(data.getP2Id()); } console.XDebug() << "CLatticeMaster::addConnections: Done add-connection loop..." << "\n"; console.XDebug() << "CLatticeMaster::addConnections: Broadcasting final connection-receive cmd" << "\n"; cmd_buffer.broadcast(CMD_RECEIVECONNECTIONS); console.XDebug() << "CLatticeMaster::addConnections:" << " Broadcasting final set of connections...\n"; m_tml_global_comm.broadcast_cont_packed(connectionBuffer); barrier.wait("Post final connection broadcast."); barrier.wait("Post final connection-broadcast command."); console.XDebug()<< "Added " << i << " connections..." << "\n"; // -- build ntable searchNeighbors(true); console.XDebug() << "CLatticeMaster::addConnections: exit\n"; } ./Parallel/BroadCast_cmd.cpp0000664000175000017500000000265712176660653015576 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "BroadCast_cmd.h" BroadcastCommand::BroadcastCommand(const MpiRankAndComm &globalRankAndComm, int commandId) : m_commandId(commandId), m_varBuffer(globalRankAndComm.getComm(), 2000), m_barrier(globalRankAndComm.getComm()), m_cmdBuffer(globalRankAndComm.getComm(), globalRankAndComm.getRank()) { } const int& BroadcastCommand::getCommandId() const { return m_commandId; } void BroadcastCommand::broadcastCommand() { m_cmdBuffer.broadcast(getCommandId()); } void BroadcastCommand::broadcastBuffer() { m_varBuffer.broadcast(0); } void BroadcastCommand::wait(const std::string &msg) { m_barrier.wait(msg.c_str()); } void BroadcastCommand::broadcast() { broadcastCommand(); broadcastBuffer(); wait("BroadcastCommand::broadcast"); } ./Parallel/CheckPointInfo.h0000664000175000017500000000355212176660653015414 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCHECKPOINTINFO_H #define ESYS_LSMCHECKPOINTINFO_H #include #include namespace esys { namespace lsm { class GeometryInfo; typedef std::vector StringVector; /** * Summary of LSM check-point information. */ class CheckPointInfo { public: CheckPointInfo(); ~CheckPointInfo(); bool operator==(const CheckPointInfo &cpInfo) const; const GeometryInfo &getGeometryInfo() const; void setGeometryInfo(const GeometryInfo &geoInfo); const StringVector &getLatticeDataFiles() const; void setLatticeDataFiles(const StringVector &fileNames); int getNumTimeSteps() const; void setNumTimeSteps(int numTimeSteps); int getTimeStep() const; void setTimeStep(int timeStep); double getTimeStepSize() const; void setTimeStepSize(double timeStepSize); void read(std::istream &iStream); void write(std::ostream &oStream) const; protected: CheckPointInfo(const CheckPointInfo &cpInfo); CheckPointInfo &operator=(const CheckPointInfo &cpInfo); private: class Impl; Impl *m_pImpl; }; } } #endif ./Parallel/RankAndComm.h0000664000175000017500000000216012176660653014675 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RANKANDCOMM_H #define __RANKANDCOMM_H //--- MPI includes --- #include class MpiRankAndComm { public: MpiRankAndComm(int globalRank, MPI_Comm globalComm) : m_globalRank(globalRank), m_globalComm(globalComm) { } int getRank() const { return m_globalRank; } MPI_Comm getComm() const { return m_globalComm; } private: int m_globalRank; MPI_Comm m_globalComm; }; #endif // __RANKANDCOMM_H ./Parallel/RotSubLattice.hpp0000664000175000017500000002060512176660653015633 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! Construct RotSubLattice. Calls constructor of base class. \param param Lattice parameters \param rank the MPI rank \param comm the MPI communicator */ template TRotSubLattice::TRotSubLattice(const esys::lsm::CLatticeParam &prm, int rank, MPI_Comm comm, MPI_Comm worker_comm): TSubLattice(prm,rank,comm,worker_comm) {} /*! Destructor */ template TRotSubLattice::~TRotSubLattice() {} /*! Set the angular velocity of a particle. Parameters are received from master. */ template void TRotSubLattice::setParticleAngularVelocity() { console.Debug() << "TSubLattice::setParticleAngularVelocity()\n"; CVarMPIBuffer buffer(this->m_comm); buffer.receiveBroadcast(0); // get data from master int id=buffer.pop_int(); Vec3 mv=buffer.pop_vector(); this->m_ppa->forParticle(id,(void (T::*)(Vec3))(&T::setAngVel),mv); console.XDebug() << "end TSubLattice::setParticleAngularVelocity()\n"; } /*! do the actual work adding the pair interaction group (PIG) \param name the name of the PIG \param type the type of the PIG \param param_buffer the buffer containing the rest of the parameters */ template bool TRotSubLattice::doAddPIG(const string& name,const string& type,CVarMPIBuffer& param_buffer,bool tagged) { bool res; // try interactions defined in the base class res=TSubLattice::doAddPIG(name,type,param_buffer,tagged); if(!res){ // if not successfull, try interactions defined here } return res; } /*! Do the work for adding the damping \param type the type of damping \param param_buffer the buffer containing the parameters */ template bool TRotSubLattice::doAddDamping(const string& type,CVarMPIBuffer& param_buffer) { bool res=false; AParallelInteractionStorage* DG=NULL; string damping_name; if (type=="RotDamping") { CDampingIGP *params=extractDampingIGP(¶m_buffer); console.Debug() << "add rotational damping\n"; DG=new ParallelInteractionStorage_Single >(this->m_ppa,*params); // dodgy damping_name="RotDamping"; res=true; // add to map this->m_damping.insert(make_pair(damping_name,DG)); this->m_damping[damping_name]->update(); } else if (type=="RotLocalDamping") { CLocalDampingIGP *params=extractLocalDampingIGP(¶m_buffer); console.Debug() << "add rotational damping\n"; DG=new ParallelInteractionStorage_Single >(this->m_ppa,*params); // dodgy damping_name="RotLocalDamping"; res=true; // add to map this->m_damping.insert(make_pair(damping_name,DG)); this->m_damping[damping_name]->update(); } else { res=TSubLattice::doAddDamping(type,param_buffer); } return res; } /*! Add bonded interaction group to the lattice. Receive the parameters from master. The bonds are created from the neighbor table. */ template void TRotSubLattice::addRotBondedIG() { console.XDebug() << "TSubLattice::addRotBondedIG()\n"; CVarMPIBuffer param_buffer(this->m_comm); vector conns; // get params param_buffer.receiveBroadcast(0); int tag=param_buffer.pop_int(); string name=string(param_buffer.pop_string()); double kr = param_buffer.pop_double(); double ks = param_buffer.pop_double(); double kt = param_buffer.pop_double(); double kb = param_buffer.pop_double(); double max_nForce = param_buffer.pop_double(); double max_shForce = param_buffer.pop_double(); double max_tMoment = param_buffer.pop_double(); double max_bMoment = param_buffer.pop_double(); bool scaling = static_cast(param_buffer.pop_int()); bool meanR_scaling = static_cast(param_buffer.pop_int()); double truncated = param_buffer.pop_double(); conns = TSubLattice::m_temp_conn[tag]; console.XDebug() << "Got RotBondedIG parameters: tag=" << tag << ", name=" << name.c_str() << ", kr=" << kr << ", ks=" << ks << ", kt=" << kt << ", kb=" << kb << ", nFrc=" << max_nForce << ", sFrc=" << max_shForce << ", tMom=" << max_tMoment << ", bMom=" << max_bMoment << ", scaling=" << scaling << "\n"; // setup InteractionGroup CRotBondedIGP param; param.tag=tag; param.kr=kr; param.ks=ks; param.kt=kt; param.kb=kb; param.max_nForce = max_nForce ; param.max_shForce = max_shForce ; param.max_tMoment = max_tMoment ; param.max_bMoment = max_bMoment ; param.scaling = scaling; param.meanR_scaling = meanR_scaling; param.truncated = truncated; ParallelInteractionStorage_EB *B_PIS = new ParallelInteractionStorage_EB(this->m_ppa,param); // recv broadcast connection data // console.XDebug() << "rank=" << this->m_tml_comm.rank() << "TSubLattice::addRotBondedIG(): receiving conn_data.\n"; // vector conn_data; // this->m_tml_comm.recv_broadcast_cont(conn_data,0); // console.XDebug() << "rank=" <m_tml_comm.rank() << "TSubLattice::addRotBondedIG(): conn_data.size()=" << conn_data.size() << "\n"; vector vi(2,-1); for(size_t i=0;itryInsert(vi); } // add InteractionGroup to map this->m_bpis.insert(make_pair(name,B_PIS)); console.XDebug() << "end TSubLattice::addRotBondedIG()\n"; } /*! Add thermal bonded interaction group to the lattice. Receive the parameters from master. The bonds are created from the neighbor table. */ template void TRotSubLattice::addRotThermBondedIG() { console.XDebug() << "TRotSubLattice::addRotThermBondedIG()\n"; CVarMPIBuffer param_buffer(this->m_comm); vector conns; // get params param_buffer.receiveBroadcast(0); int tag=param_buffer.pop_int(); string name=string(param_buffer.pop_string()); double kr = param_buffer.pop_double(); double ks = param_buffer.pop_double(); double kt = param_buffer.pop_double(); double kb = param_buffer.pop_double(); double max_nForce = param_buffer.pop_double(); double max_shForce = param_buffer.pop_double(); double max_tMoment = param_buffer.pop_double(); double max_bMoment = param_buffer.pop_double(); double diffusivity = param_buffer.pop_double(); conns = TSubLattice::m_temp_conn[tag]; console.XDebug() << "Got RotThermBondedIG parameters: tag=" << tag << ", name=" << name.c_str() << ", kr=" << kr << ", ks=" << ks << ", kt=" << kt << ", kb=" << kb << ", nFrc=" << max_nForce << ", sFrc=" << max_shForce << ", tMom=" << max_tMoment << ", bMom=" << max_bMoment << ", diffusivity=" << diffusivity << "\n"; // setup InteractionGroup CRotThermBondedIGP param; param.tag = tag; param.kr=kr; param.ks=ks; param.kt=kt; param.kb=kb; param.max_nForce = max_nForce ; param.max_shForce = max_shForce ; param.max_tMoment = max_tMoment ; param.max_bMoment = max_bMoment ; param.diffusivity = diffusivity ; ParallelInteractionStorage_E *B_PIS = new ParallelInteractionStorage_EB(this->m_ppa,param); // recv broadcast connection data // console.XDebug() << "rank=" << this->m_tml_comm.rank() << "TSubLattice::addRotThermBondedIG(): receiving conn_data.\n"; // vector conn_data; // this->m_tml_comm.recv_broadcast_cont(conn_data,0); // console.XDebug() << "rank=" <m_tml_comm.rank() << "TSubLattice::addRotThermBondedIG(): conn_data.size()=" << conn_data.size() << "\n"; vector vi(2,-1); for(size_t i=0;itryInsert(vi); } // add InteractionGroup to map this->m_bpis.insert(make_pair(name,B_PIS)); console.XDebug() << "end TRotSubLattice::addRotThermBondedIG()\n"; } ./Parallel/GetRef_cmd.cpp0000664000175000017500000000244712176660653015105 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/GetRef_cmd.h" #include "Parallel/sublattice_cmd.h" /*! constructor for GetNodeRefCommand \param globalRankAndComm \param meshname */ GetNodeRefCommand::GetNodeRefCommand(const MpiRankAndComm& globalRankAndComm,const string& meshname) : BroadcastCommand(globalRankAndComm, CMD_GETMESHNODEREF) { append(meshname.c_str()); } /*! constructor for GetFaceRefCommand \param globalRankAndComm \param meshname */ GetFaceRefCommand::GetFaceRefCommand(const MpiRankAndComm& globalRankAndComm,const string& meshname) : BroadcastCommand(globalRankAndComm, CMD_GETMESHFACEREF) { append(meshname.c_str()); } ./Parallel/IterativeReader.hpp0000664000175000017500000000632612176660653016172 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { template IStreamIterator::IStreamIterator(std::istream &iStream, int numParticles) : m_pIStream(&iStream), m_numRemaining(numParticles) { } template IStreamIterator::~IStreamIterator() { } template bool IStreamIterator::hasNext() const { return (m_numRemaining > 0); } template void IStreamIterator::readDataFromStream() { m_data.read(*m_pIStream); } template const TmplData &IStreamIterator::next() { m_numRemaining--; readDataFromStream(); return m_data; } template int IStreamIterator::getNumRemaining() const { return m_numRemaining; } //=============================================================================== template IterativeReader::IterativeReader(std::istream &iStream) : m_numElements(-1), m_pIStream(&iStream), m_iteratorPtr() { } template IterativeReader::~IterativeReader() { } template int IterativeReader::getNumElements() const { return m_numElements; } template void IterativeReader::setNumElements(int numElements) { m_numElements = numElements; } template std::istream &IterativeReader::getIStream() { return *m_pIStream; } template const std::istream &IterativeReader::getIStream() const { return *m_pIStream; } template TmplIterator *IterativeReader::createNewIterator() { return new TmplIterator(*m_pIStream, getNumElements()); } template void IterativeReader::initialise() { m_iteratorPtr = IteratorAutoPtr(createNewIterator()); } template bool IterativeReader::isInitialised() const { return (m_iteratorPtr.get() != NULL); } template typename IterativeReader::Iterator &IterativeReader::getIterator() { if (!isInitialised()) { initialise(); } return (*(m_iteratorPtr)); } } } ./Fields/0000775000175000017500000000000012176660653012045 5ustar vborosvboros./Fields/ScalarParticleDistributionMaster.h0000664000175000017500000000322712176660653020667 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALARPARTICLEDISTRIBUTIONMASTER_H #define __SCALARPARTICLEDISTRIBUTIONMASTER_H //--- project includes --- #include "ParticleFieldMaster.h" #include "realdist.h" class TML_Comm; /*! \class ScalarParticleDistributionMaster \brief Class for master part of the distribution/histogram of a scalar field which is defined on particles \author Steffen Abe $Revision$ $Date$ */ class ScalarParticleDistributionMaster : public ScalarParticleFieldMaster { protected: RealDist* m_dist; int m_dt_write; bool m_is_global; bool m_is_writing_time; public: ScalarParticleDistributionMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,double,double,int); ScalarParticleDistributionMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,double,double,int,int,int); ~ScalarParticleDistributionMaster(); virtual bool needSave(int); virtual void collect(); virtual void write(); }; #endif //__SCALARPARTICLEDISTRIBUTIONMASTER_H ./Fields/field_const.h0000664000175000017500000000223412176660653014510 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FIELD_CONST_H #define __FIELD_CONST_H enum { WRITE_TYPE_DX = 0, WRITE_TYPE_POV, WRITE_TYPE_SUM, WRITE_TYPE_MAX, WRITE_TYPE_RAW_SERIES, WRITE_TYPE_RAW2, WRITE_TYPE_RAW, WRITE_TYPE_RAW_WITH_ID, WRITE_TYPE_RAW_WITH_POS_ID, WRITE_TYPE_SILO }; enum { COLL_TYPE_FULL = 1, COLL_TYPE_SUM, COLL_TYPE_MAX, COLL_TYPE_FULL2 = 5, COLL_TYPE_FULL_DX, COLL_TYPE_FULL_WITH_ID, COLL_TYPE_FULL_WITH_POS_ID }; #endif // __FIELD_CONST_H ./Fields/CheckedScalarInteractionFieldSlaveTagged.hpp0000664000175000017500000000631312176660653022510 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param pis a pointer to the interaction storage \param rdf the particle member function to access the data */ template CheckedScalarInteractionFieldSlaveTagged::CheckedScalarInteractionFieldSlaveTagged(TML_Comm* comm,TParallelInteractionStorage* pis,typename T::CheckedScalarFieldFunction rdf,int tag,int mask):CheckedScalarInteractionFieldSlave(comm,pis,rdf) { m_tag=tag; m_mask=mask; } /*! send full field data and position of the interaction */ template void CheckedScalarInteractionFieldSlaveTagged::SendDataFull() { vector > > raw_data; vector > data; // get raw field data from interaction storage raw_data=this->m_pis->forAllTaggedInnerInteractionsGetWithPos(this->m_rdf,m_tag,m_mask); // filter data for(vector > >::iterator iter=raw_data.begin(); iter!=raw_data.end(); iter++){ if(iter->second.first){ data.push_back(make_pair(iter->first,iter->second.second)); } } // send data to master this->m_comm->send_gather(data,0); } /*! send sum only */ template void CheckedScalarInteractionFieldSlaveTagged::SendDataSum() { vector >data_vec; // get data from interactions this->m_pis->forAllTaggedInnerInteractionsGet(data_vec,this->m_rdf,m_tag,m_mask); // sum data double sum=0.0; for(vector >::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++) { if(iter->first) sum+=iter->second; } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send maximum only */ template void CheckedScalarInteractionFieldSlaveTagged::SendDataMax() { vector >data_vec; // get data from interactions this->m_pis->forAllTaggedInnerInteractionsGet(data_vec,this->m_rdf,m_tag,m_mask); // get max double max; bool is_set=false; for(vector >::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ if(iter->first) { if(is_set){ max=(iter->second > max) ? iter->second : max; } else { max=iter->second; is_set=true; } } } vector max_vec; max_vec.push_back(max); this->m_comm->send_gather(max_vec,0); } ./Fields/FieldSlave.h0000664000175000017500000000200012176660653014224 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FIELD_SLAVE_H #define __FIELD_SLAVE_H class TML_Comm; /*! \class AFieldSlave \brief Abstract base class for slave part of field */ class AFieldSlave { private: protected: TML_Comm * m_comm; public: AFieldSlave(TML_Comm*); virtual ~AFieldSlave() { } virtual void sendData()=0; }; #endif //__FIELD_SLAVE_H ./Fields/ScalarTriangleFieldSlave.h0000664000175000017500000000303712176660653017053 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALAR_TRIANGLE_FIELD_SLAVE_H #define __SCALAR_TRIANGLE_FIELD_SLAVE_H // -- project includes -- #include "Fields/FieldSlave.h" #include "Model/TriMesh.h" #include "tml/comm/comm.h" // == STL includes -- #include using std::map; using std::multimap; /*! \class ScalarTriangleFieldSlave \brief Slave part for saving a scalar field defined on the triangles in a given TriMesh \author Steffen Abe $Date$ $Revision$ */ class ScalarTriangleFieldSlave : public AFieldSlave { private: map m_data; protected: TriMesh *m_mesh; Triangle::ScalarFieldFunction m_rdf; virtual void SendDataFull(); virtual void SendDataFullDX(); public: ScalarTriangleFieldSlave(TML_Comm*,TriMesh*,Triangle::ScalarFieldFunction); virtual ~ScalarTriangleFieldSlave() { } virtual void sendData(); }; #endif // __SCALAR_TRIANGLE_FIELD_SLAVE_H ./Fields/MaxTrigger.cpp0000664000175000017500000000312112176660653014617 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Fields/MaxTrigger.h" #include MaxTrigger::MaxTrigger(double on,double off) { std::cout << "MaxTrigger ( " << on << "," << off << ")" << std::endl; m_on_level=on; m_off_level=off; } bool MaxTrigger::Off(const map& data) { bool res=false; map::const_iterator iter=data.begin(); while ((iter!=data.end()) && !res){ double m=iter->second.norm(); // std::cout << "trigger : data,m,m_on " << iter->second << " " << m << " " << m_on_level << std::endl; res=(m>m_off_level); iter++; } return !res; } bool MaxTrigger::On(const map& data) { bool res=false; map::const_iterator iter=data.begin(); while ((iter!=data.end()) && !res){ double m=iter->second.norm(); // std::cout << "trigger : data,m,m_on " << iter->second << " " << m << " " << m_on_level << std::endl; res=(m>m_on_level); iter++; } return res; } ./Fields/CMakeLists.txt0000664000175000017500000000042112176660653014602 0ustar vborosvborosFILE(GLOB FIELDS_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(Fields SHARED ${FIELDS_SRC_LIB}) TARGET_LINK_LIBRARIES(Fields ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS Fields DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Fields/VectorInteractionFieldMaster.h0000664000175000017500000000454212176660653020005 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTORINTERACTIONFIELDMASTER_H #define __VECTORINTERACTIONFIELDMASTER_H //--- project includes --- #include "FieldMaster.h" #include "Foundation/vec3.h" #include "Foundation/quintuple.h" //--- STL includes --- #include #include #include using std::map; using std::vector; /*! \class VectorInteractionFieldMaster \brief Class for master part of a vector field which is defined on all particles \author Steffen Abe $Revision$ $Date$ */ class VectorInteractionFieldMaster : public AFieldMaster { public: typedef std::pair, Vec3> IVecData2; typedef std::pair, Vec3> DataWithID; typedef std::pair, Vec3> DataWithPosID; protected: vector m_data2; // vector of groups vector m_data_with_id; vector m_data_with_pos_id; vector > m_data; // vector of pairs vector m_sum_vec; virtual void writeAsDX(); virtual void writeAsSUM(); virtual void writeAsMAX(){}; virtual void writeAsRAW_SERIES(){}; virtual void writeAsRAW2(); virtual void writeAsRawWithID(); virtual void writeAsRawWithPosID(); void collectFull(); void collectSum(); void collectMax(); void collectFull2(); void collectFullWithID(); void collectFullWithPosID(); public: VectorInteractionFieldMaster(TML_Comm*,const string&,const string&,const string&,const string&,const string&,int,int,int,bool); virtual ~VectorInteractionFieldMaster(){}; virtual void collect(); }; #endif // __VECTORINTERACTIONFIELDMASTER_H ./Fields/CheckedScalarInteractionFieldSlave.h0000664000175000017500000000315512176660653021035 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_H #define __CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_H // -- project includes -- #include "InteractionFieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class ScalarInteractionFieldSlave \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class CheckedScalarInteractionFieldSlave : public InteractionFieldSlave { private: virtual void SendDataFull(); virtual void SendDataFull2(); virtual void SendDataWithID(); virtual void SendDataSum(); virtual void SendDataMax(); protected: typename T::CheckedScalarFieldFunction m_rdf; public: CheckedScalarInteractionFieldSlave(TML_Comm*,TParallelInteractionStorage*,typename T::CheckedScalarFieldFunction); }; #include "CheckedScalarInteractionFieldSlave.hpp" #endif //__CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_H ./Fields/TriggeredVectorParticleFieldMaster.cpp0000664000175000017500000001036212176660653021456 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Fields/TriggeredVectorParticleFieldMaster.h" TriggeredVectorParticleFieldMaster::TriggeredVectorParticleFieldMaster(TML_Comm* comm, const string& fieldname, const string& filename, const string& savetype, int t0, int tend, int dt, const MaxTrigParams& tp) : VectorParticleFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_save_map_buffer=new RingBuffer >(tp.buff_size); m_pos_map_buffer=new RingBuffer >(tp.buff_size); m_Trigger=new MaxTrigger(tp.trig_on_value,tp.trig_off_value); m_tail_size=tp.tail_size; m_is_triggered=false; m_is_writing_tail=false; m_base_file_name=filename; m_file_count=0; m_ts=0; } TriggeredVectorParticleFieldMaster::TriggeredVectorParticleFieldMaster(TML_Comm* comm, const string& fieldname, const string& filename, const string& savetype, int t0, int tend, int dt, int tag, int mask, const MaxTrigParams& tp) : VectorParticleFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt,tag,mask) { m_save_map_buffer=new RingBuffer >(tp.buff_size); m_pos_map_buffer=new RingBuffer >(tp.buff_size); m_Trigger=new MaxTrigger(tp.trig_on_value,tp.trig_off_value); m_tail_size=tp.tail_size; m_is_triggered=false; m_is_writing_tail=false; m_base_file_name=filename; m_file_count=0; m_ts=0; } TriggeredVectorParticleFieldMaster::~TriggeredVectorParticleFieldMaster() { delete m_save_map_buffer; delete m_pos_map_buffer; delete m_Trigger; } void TriggeredVectorParticleFieldMaster::write() { m_ts++; // check if already triggered if(m_is_triggered){ // write // check if in tail if(m_is_writing_tail){ // if in tail --> write data, decrement tail counter // check if still below limit if(m_Trigger->On(m_save_map)){ // if above limit -> back to normal writing mode m_is_writing_tail=false; } else { m_tail_counter--; } if(m_tail_counter==0){ // if end of tail reached --> unset tail flag m_is_triggered=false; m_is_writing_tail=false; } } else { // if not in tail --> check off_trigger if(m_Trigger->Off(m_save_map)){ // if off_trigger --> set tail flag, init tail counter, write data std::cout << "trigger off at " << m_file_name << m_ts << std::endl; m_is_writing_tail=true; m_tail_counter=m_tail_size; } } VectorParticleFieldMaster::write(); } else { // if not yet triggered --> check on_trigger if(m_Trigger->On(m_save_map)){ // if on_trigger --> set flag, write out buffer, write data IncrementFilename(); std::cout << "trigger " << m_file_name << " on at " << m_ts << std::endl; m_is_triggered=true; m_is_writing_tail=false; m_save_map_buffer->insert(m_save_map); m_pos_map_buffer->insert(m_pos_map); for(int i=0;isize();i++){ m_save_map=(*m_save_map_buffer)[i]; m_pos_map=(*m_pos_map_buffer)[i]; VectorParticleFieldMaster::write(); } } else { // if not --> put data in buffer m_save_map_buffer->insert(m_save_map); m_pos_map_buffer->insert(m_pos_map); } } // cleanup maps m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } void TriggeredVectorParticleFieldMaster::IncrementFilename() { ostringstream fn; m_file_count++; fn << m_base_file_name << "." << m_file_count; m_file_name=fn.str(); } ./Fields/VectorEdge2DFieldSlave.h0000664000175000017500000000275412176660653016402 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTOR_EDGE2D_FIELD_SLAVE_H #define __VECTOR_EDGE2D_FIELD_SLAVE_H // -- project includes -- #include "Fields/FieldSlave.h" #include "Model/Mesh2D.h" #include "tml/comm/comm.h" // == STL includes -- #include using std::map; /*! \class VectorEdge2DFieldSlave \brief Slave part for saving a vector field defined on the edges in a given Mesh2D \author Steffen Abe $Date$ $Revision$ */ class VectorEdge2DFieldSlave : public AFieldSlave { private: map m_data; protected: Mesh2D *m_mesh; Edge2D::VectorFieldFunction m_rdf; virtual void SendDataFull(); virtual void SendDataFullDX(); public: VectorEdge2DFieldSlave(TML_Comm*,Mesh2D*,Edge2D::VectorFieldFunction); virtual ~VectorEdge2DFieldSlave() { } virtual void sendData(); }; #endif //__VECTOR_EDGE2D_FIELD_SLAVE_H ./Fields/VectorWallFieldSlave.hpp0000664000175000017500000000317112176660653016601 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- project includes --- #include "Foundation/console.h" /*! Constructor \param comm \param wall \param rdf the function to read the field from the wall */ template VectorWallFieldSlave::VectorWallFieldSlave(TML_Comm* comm,typename WallType::VectorFieldFunction rdf) : AWallFieldSlave(comm) { console.XDebug() << "VectorWallFieldSlave::VectorWallFieldSlave()\n"; m_rdf=rdf; } /*! send data back to master */ template void VectorWallFieldSlave::sendData() { console.XDebug() << "VectorWallFieldSlave::sendData()\n"; vector > data; // get data from wall int cnt=0; for(typename vector::const_iterator iter=m_wall.begin(); iter!=m_wall.end(); iter++){ data.push_back(make_pair(cnt,((*iter)->*m_rdf)())); cnt++; } // send it to master m_comm->send_gather(data,0); console.XDebug() << " end VectorWallFieldSlave::sendData()\n"; } ./Fields/VectorTriangleFieldSlave.h0000664000175000017500000000303412176660653017105 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTOR_TRIANGLE_FIELD_SLAVE_H #define __VECTOR_TRIANGLE_FIELD_SLAVE_H // -- project includes -- #include "Fields/FieldSlave.h" #include "Model/TriMesh.h" #include "tml/comm/comm.h" // == STL includes -- #include using std::map; using std::multimap; /*! \class VectorTriangleFieldSlave \brief Slave part for saving a vector field defined on the triangles in a given TriMesh \author Steffen Abe $Date$ $Revision$ */ class VectorTriangleFieldSlave : public AFieldSlave { private: map m_data; protected: TriMesh *m_mesh; Triangle::VectorFieldFunction m_rdf; virtual void SendDataFull(); virtual void SendDataFullDX(); public: VectorTriangleFieldSlave(TML_Comm*,TriMesh*,Triangle::VectorFieldFunction); virtual ~VectorTriangleFieldSlave() { } virtual void sendData(); }; #endif // __VECTOR_TRIANGLE_FIELD_SLAVE_H ./Fields/VectorParticleFieldSlave.hpp0000664000175000017500000000324112176660653017443 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param ppa a pointer to the particle array \param rdf the particle member function to access the data */ template VectorParticleFieldSlave::VectorParticleFieldSlave(TML_Comm* comm,ParallelParticleArray* ppa,typename T::VectorFieldFunction rdf):AFieldSlave(comm) { m_ppa=ppa; m_rdf=rdf; } /*! send data back to master */ template void VectorParticleFieldSlave::sendData() { vector > data_vec; vector > pos_vec; data_vec=m_ppa->forAllInnerParticlesGetIndexed(m_rdf); pos_vec=m_ppa->forAllInnerParticlesGetIndexed(typename T::VectorFieldFunction(&T::getPos)); // send data to master m_comm->send_gather(data_vec,0); m_comm->send_gather(pos_vec,0); } ./Fields/VectorEdge2DFieldSlave.cpp0000664000175000017500000000416712176660653016735 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Fields/VectorEdge2DFieldSlave.h" #include "Fields/field_const.h" #include "console.h" /*! constructor \param comm the TML communicator used for sending the data back to the master \param mesh the mesh on which the field is defined \param rdf the particle member function to access the data */ VectorEdge2DFieldSlave::VectorEdge2DFieldSlave(TML_Comm* comm,Mesh2D* mesh,Edge2D::VectorFieldFunction rdf) :AFieldSlave(comm) { m_mesh=mesh; m_rdf=rdf; } /*! Send data back to master. Recieve the collection type and call the appropriate sending function */ void VectorEdge2DFieldSlave::sendData() { int coll_type; m_comm->recv_broadcast(coll_type,0); switch(coll_type){ case COLL_TYPE_FULL: SendDataFull();break; case COLL_TYPE_FULL_DX: SendDataFullDX();break; default: std::cerr << "unknown collection type" << std::endl; } } /*! Send data as id,value pairs */ void VectorEdge2DFieldSlave::SendDataFull() { console.XDebug() << "VectorEdgeFieldSlave::SendDataFull\n"; vector > data_vec; // get data data_vec=m_mesh->forAllEdgesGetIndexed(m_rdf); // send data to master m_comm->send_gather(data_vec,0); console.XDebug() << "end VectorEdgeFieldSlave::SendDataFull\n"; } /*! send data in a for saving as DX format \warning NOT IMPLEMENTED */ void VectorEdge2DFieldSlave::SendDataFullDX() { console.XDebug() << "VectorEdgeFieldSlave::SendDataFullDX() - NOT IMPLEMENTED\n"; } ./Fields/ScalarParticleDistributionMaster.cpp0000664000175000017500000001056212176660653021222 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/comm/comm.h" #include "ScalarParticleDistributionMaster.h" /*! Constructor without tagging info. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are WINDOW and GLOBAL \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt_coll the intervall between timesteps for collecting data \param dt_save the intervall between timesteps for saving the distribution \param x0 minimum value of the field \param xmax maximum value of the field \param nx number of bins in the histogram */ ScalarParticleDistributionMaster::ScalarParticleDistributionMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt_coll,int dt_save,double x0,double xmax, int nx) :ScalarParticleFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt_coll) { m_dt_write=dt_save; m_dist=new RealDist(x0,xmax,nx); m_is_global=(savetype==string("GLOBAL")); } /*! Constructor with tagging info. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are WINDOW and GLOBAL \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt_coll the intervall between timesteps for collecting data \param dt_save the intervall between timesteps for saving the distribution \param x0 minimum value of the field \param xmax maximum value of the field \param nx number of bins in the histogram \param tag the tag of the particles to be saved \param mask the mask to be applied to the tag */ ScalarParticleDistributionMaster::ScalarParticleDistributionMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt_coll,int dt_save,double x0,double xmax, int nx,int tag, int mask) :ScalarParticleFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt_coll,tag,mask) { m_dt_write=dt_save; m_dist=new RealDist(x0,xmax,nx); m_is_global=(savetype==string("GLOBAL")); } /*! Destructor, deletes the distribution */ ScalarParticleDistributionMaster::~ScalarParticleDistributionMaster() { if(m_dist) delete m_dist; } /*! check if collecting or writing is necessary at current timestep \param t the timestep */ bool ScalarParticleDistributionMaster::needSave(int t) { bool need_collect; need_collect=(((t-m_t0) % m_dt)==0) && (t>=m_t0) && (t<=m_tend); m_is_writing_time=(((t-m_t0) % m_dt_write)==0) && (t>=m_t0) && (t<=m_tend); return need_collect; } /*! collect data and add into the distribution */ void ScalarParticleDistributionMaster::collect() { // send field id to slave m_comm->broadcast(m_id); // get data from slave collectFull(); // add into distribution for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ m_dist->AddSample(iter->second); } // clean up m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } /*! write data */ void ScalarParticleDistributionMaster::write() { if(m_is_writing_time){ m_dist->Write(m_file_name); if(!m_is_global) m_dist->Clear(); } } ./Fields/VectorInteractionFieldSlave.h0000664000175000017500000000314112176660653017616 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTOR_INTERACTION_FIELD_SLAVE_H #define __VECTOR_INTERACTION_FIELD_SLAVE_H // -- project includes -- #include "Fields/InteractionFieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class VectorInteractionFieldSlave \brief class for slave part of vector field defined on the interactions \author Steffen Abe $Revision$ $Date$ */ template class VectorInteractionFieldSlave : public InteractionFieldSlave { private: virtual void SendDataFull(); virtual void SendDataFull2(); virtual void SendDataWithID(); virtual void SendDataWithPosID(); virtual void SendDataSum(); virtual void SendDataMax(); protected: typename T::VectorFieldFunction m_rdf; public: VectorInteractionFieldSlave(TML_Comm*,TParallelInteractionStorage*,typename T::VectorFieldFunction); }; #include "VectorInteractionFieldSlave.hpp" #endif // __VECTOR_INTERACTION_FIELD_SLAVE_H ./Fields/InteractionFieldSlave.h0000664000175000017500000000304212176660653016433 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __INTERACTIONFIELDSLAVE_H #define __INTERACTIONFIELDSLAVE_H // -- project includes -- #include "FieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class InteractionFieldSlave \brief abstract base class for slave part of scalar field defined on the interactions \author Steffen Abe $Revision$ $Date$ */ template class InteractionFieldSlave : public AFieldSlave { private: protected: TParallelInteractionStorage* m_pis; virtual void SendDataFull()=0; virtual void SendDataFull2()=0; virtual void SendDataWithID()=0; virtual void SendDataWithPosID(); virtual void SendDataSum()=0; virtual void SendDataMax()=0; public: InteractionFieldSlave(TML_Comm*,TParallelInteractionStorage*); virtual void sendData(); }; #include "InteractionFieldSlave.hpp" #endif // __INTERACTIONFIELDSLAVE_H ./Fields/VectorWallFieldSlave.h0000664000175000017500000000242212176660653016237 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTORWALLFIELDSLAVE_H #define __VECTORWALLFIELDSLAVE_H // --- TML includes --- #include "tml/comm/comm.h" #include "Fields/WallFieldSlave.h" /*! \class VectorWallFieldSlave \brief Class for slave part of vector valued field defined on a Wall $Revision$ $Date$ */ template class VectorWallFieldSlave : public AWallFieldSlave { protected: typename WallType::VectorFieldFunction m_rdf; public: VectorWallFieldSlave(TML_Comm*,typename WallType::VectorFieldFunction); virtual void sendData(); }; #include "VectorWallFieldSlave.hpp" #endif // __VECTORWALLFIELDSLAVE_H ./Fields/ScalarInteractionFieldSlaveTagged.hpp0000664000175000017500000000526012176660653021241 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param pis a pointer to the interaction storage \param rdf the particle member function to access the data */ template ScalarInteractionFieldSlaveTagged::ScalarInteractionFieldSlaveTagged(TML_Comm* comm,TParallelInteractionStorage* pis,typename T::ScalarFieldFunction rdf,int tag,int mask):ScalarInteractionFieldSlave(comm,pis,rdf) { m_tag=tag; m_mask=mask; } /*! send full field data and position of the interaction */ template void ScalarInteractionFieldSlaveTagged::SendDataFull() { vector > data; // get data data=this->m_pis->forAllTaggedInnerInteractionsGetWithPos(this->m_rdf,m_tag,m_mask); // send data to master this->m_comm->send_gather(data,0); } /*! send sum only */ template void ScalarInteractionFieldSlaveTagged::SendDataSum() { vector data_vec; // get data from interactions this->m_pis->forAllTaggedInnerInteractionsGet(data_vec,this->m_rdf,m_tag,m_mask); // sum data double sum=0.0; for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ sum+=*iter; } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send maximum only */ template void ScalarInteractionFieldSlaveTagged::SendDataMax() { vector data_vec; // get data from interactions this->m_pis->forAllTaggedInnerInteractionsGet(data_vec,this->m_rdf,m_tag,m_mask); // sum data double max=*(data_vec.begin()); for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ max=(*iter > max) ? *iter : max; } vector max_vec; max_vec.push_back(max); this->m_comm->send_gather(max_vec,0); } ./Fields/ScalarInteractionFieldSlaveTagged.h0000664000175000017500000000303712176660653020701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H #define __SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H // -- project includes -- #include "ScalarInteractionFieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class ScalarInteractionFieldSlave \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class ScalarInteractionFieldSlaveTagged : public ScalarInteractionFieldSlave { private: virtual void SendDataFull(); virtual void SendDataSum(); virtual void SendDataMax(); protected: int m_tag; int m_mask; public: ScalarInteractionFieldSlaveTagged(TML_Comm*,TParallelInteractionStorage*,typename T::ScalarFieldFunction,int,int); }; #include "ScalarInteractionFieldSlaveTagged.hpp" #endif //__SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H ./Fields/FieldMaster.cpp0000664000175000017500000001110612176660653014747 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "FieldMaster.h" #include "field_const.h" //--- IO includes --- #include #include using std::cerr; using std::cout; using std::endl; using std::ostringstream; int AFieldMaster::s_field_count=0; /*! construct AFieldMaster \param comm the TML communicator to be used \param fieldname the name of the field to be saved \param filename the name of the output file \param savetype the output file format. Recognized formats: DX, POV \param t0 first timestep to be saved \param tend last timestep to be saved \param dt save every dt timesteps */ AFieldMaster::AFieldMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt) { cout << "constructing FieldMaster for field " << fieldname << endl; m_comm=comm; m_field_name=fieldname; m_file_name=filename; m_t0=t0; m_tend=tend; m_dt=dt; m_save_count=0; m_id=s_field_count; s_field_count++; if(savetype=="DX"){ m_write_type=WRITE_TYPE_DX; } else if(savetype=="POV"){ m_write_type=WRITE_TYPE_POV; } else if(savetype=="SILO"){ m_write_type=WRITE_TYPE_SILO; } else if(savetype=="SUM"){ m_write_type=WRITE_TYPE_SUM; } else if(savetype=="MAX"){ m_write_type=WRITE_TYPE_MAX; } else if(savetype=="RAW_SERIES"){ m_write_type=WRITE_TYPE_RAW_SERIES; } else if(savetype=="RAW2"){ m_write_type= WRITE_TYPE_RAW2; } else if(savetype=="RAW"){ m_write_type=WRITE_TYPE_RAW; } else if(savetype=="RAW_WITH_ID"){ m_write_type=WRITE_TYPE_RAW_WITH_ID; }else if(savetype=="RAW_WITH_POS_ID"){ m_write_type=WRITE_TYPE_RAW_WITH_POS_ID; } else { cerr << "AFieldMaster: unknown output file format '" << savetype << "', defaulting to DX" << endl; } } bool AFieldMaster::needSave(int t) { return (((t-m_t0) % m_dt)==0) && (t>=m_t0) && (t<=m_tend); } /*! make filename for current save \return the filename */ string AFieldMaster::makeFilename() { ostringstream fn; string suffix; switch (m_write_type){ case WRITE_TYPE_DX : suffix=".dx"; break; case WRITE_TYPE_POV : suffix=".pov"; break; case WRITE_TYPE_SILO : suffix=".silo"; break; case WRITE_TYPE_RAW2 : suffix=".dat"; break; case WRITE_TYPE_RAW : suffix=".dat"; break; case WRITE_TYPE_RAW_WITH_ID : suffix=".dat"; break; case WRITE_TYPE_RAW_WITH_POS_ID : suffix=".dat"; break; default : cerr << "AFieldMaster: wrong m_write_type in makeFilename" << endl; // can't happen } fn << m_file_name << "." << m_save_count << suffix; m_save_count++; return fn.str(); } #if HAVE_SILO DBfile* AFieldMaster::openSiloFile(bool& exists) { //generate filename string fn = makeFilename(); DBfile* dbfile = NULL; // check if file exists and append data if so if (DBInqFile(fn.c_str()) > 0) { exists = true; // open existing SILO file, try HDF5 format first dbfile = DBOpen(fn.c_str(), DB_HDF5, DB_APPEND); if (!dbfile) dbfile = DBOpen(fn.c_str(), DB_PDB, DB_APPEND); } else { exists = false; // create new SILO file, prefer HDF5 format if available dbfile = DBCreate(fn.c_str(), DB_CLOBBER, DB_LOCAL, NULL, DB_HDF5); if (!dbfile) dbfile = DBCreate(fn.c_str(), DB_CLOBBER, DB_LOCAL, NULL, DB_PDB); } return dbfile; } #endif /*! call the actual write function, depending on m_write_type */ void AFieldMaster::write() { switch (m_write_type){ case WRITE_TYPE_DX : writeAsDX(); break; case WRITE_TYPE_POV : writeAsPOV(); break; case WRITE_TYPE_SILO : writeAsSILO(); break; case WRITE_TYPE_SUM : writeAsSUM(); break; case WRITE_TYPE_MAX : writeAsMAX(); break; case WRITE_TYPE_RAW_SERIES : writeAsRAW_SERIES(); break; case WRITE_TYPE_RAW : writeAsRAW(); break; case WRITE_TYPE_RAW2 : writeAsRAW2(); break; case WRITE_TYPE_RAW_WITH_ID : writeAsRawWithID(); break; case WRITE_TYPE_RAW_WITH_POS_ID : writeAsRawWithPosID(); break; default : cerr << "AFieldMaster: wrong m_write_type in write" << endl; } } ./Fields/VectorTriangleFieldMaster.cpp0000664000175000017500000001027712176660653017630 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "VectorTriangleFieldMaster.h" #include "field_const.h" #include "console.h" //--- IO includes --- #include #include using std::ofstream; using std::endl; /*! Constructor. Send paramters to slaves \param comm the communicator \param fieldname the name of the field to be saved \param meshname the name of the mesh from which the field is taken \param filename the name of the file the field is saved into \param savetype the format in which the data is to be saved \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ VectorTriangleFieldMaster::VectorTriangleFieldMaster(TML_Comm* comm, const string& fieldname, const string& meshname, const string& filename, const string& savetype, int t_0,int t_end,int dt) :AFieldMaster(comm,fieldname,filename,savetype,t_0,t_end,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast_cont(meshname); m_comm->broadcast(m_id); } /*! Destructor - does nothing */ VectorTriangleFieldMaster::~VectorTriangleFieldMaster() {} /*! Call the actual collection function according to the savetype */ void VectorTriangleFieldMaster::collect() { // send field id to slave m_comm->broadcast(m_id); if(m_write_type==WRITE_TYPE_DX){ collectFullDX(); } else { collectFull(); } } /*! Call the actual writing function according to the savetype */ void VectorTriangleFieldMaster::write() { switch (m_write_type){ case WRITE_TYPE_DX: writeAsDX(); break; case WRITE_TYPE_RAW: writeAsRAW(); break; default : cerr << "AFieldMaster: wrong m_write_type in write" << endl; } } /*! write the field in a DX-compatible file */ void VectorTriangleFieldMaster::writeAsDX() { console.XDebug() << "VectorTriangleFieldMaster::writeAsDX() - NOT IMPLEMENTED"; } /*! Write the field as raw id,value groups */ void VectorTriangleFieldMaster::writeAsRAW() { console.XDebug() << "VectorTriangleFieldMaster::writeAsRAW\n"; //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(map::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->first << " " << iter->second << endl; } // clean up out_file.close(); m_data.clear(); console.XDebug() << "end VectorTriangleFieldMaster::writeAsRAW\n"; } /*! collect the field data from the slaves, just id & field value for each triangle */ void VectorTriangleFieldMaster::collectFull() { console.XDebug() << "VectorTriangleFieldMaster::collectFull\n"; multimap > temp_mm; // send type of collect to slaves int coll_type=COLL_TYPE_FULL; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // add data together for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ if(m_data.find((iter->second).first)==m_data.end()){ // id not in m_data -> insert m_data.insert(iter->second); } else { // id is in m_data -> add m_data[(iter->second).first]+=(iter->second).second; } } console.XDebug() << "end VectorTriangleFieldMaster::collectFull\n"; } /*! collect the field data from the slaves, including node and connectivity info */ void VectorTriangleFieldMaster::collectFullDX() { console.XDebug() << "VectorTriangleFieldMaster::collectFullDX() - NOT IMPLEMENTED"; } ./Fields/VectorParticleFieldSlaveTagged.h0000664000175000017500000000266612176660653020231 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTOR_PARTICLE_FIELD_SLAVE_TAGGED_H #define __VECTOR_PARTICLE_FIELD_SLAVE_TAGGED__H // -- project includes -- #include "VectorParticleFieldSlave.h" class TML_Comm; template class ParallelParticleArray; /*! \class VectorParticleFieldSlaveTagged \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class VectorParticleFieldSlaveTagged : public VectorParticleFieldSlave { private: int m_tag,m_mask; protected: public: VectorParticleFieldSlaveTagged(TML_Comm*,ParallelParticleArray*,typename T::VectorFieldFunction,int,int); virtual void sendData(); }; #include "VectorParticleFieldSlaveTagged.hpp" #endif //__SCALAR_PARTICLE_FIELD_SLAVE_TAGGED__H ./Fields/ParticleFieldMaster.h0000664000175000017500000000506112176660653016103 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARTICLEFIELDMASTER_H #define __PARTICLEFIELDMASTER_H //--- project includes --- #include "FieldMaster.h" #include "vec3.h" //--- STL includes --- #include using std::map; class TML_Comm; /*! \class ScalarParticleFieldMaster \brief Class for master part of a scalar field which is defined on all particles \author Steffen Abe $Revision$ $Date$ */ class ScalarParticleFieldMaster : public AFieldMaster { protected: map m_save_map; map m_rad_map; map m_pos_map; virtual void writeAsDX(); virtual void writeAsPOV(); virtual void writeAsSILO(); virtual void writeAsSUM(); virtual void writeAsMAX(); virtual void writeAsRAW_SERIES(); virtual void writeAsRawWithPosID(); void collectFull(); void collectSum(); public: ScalarParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int); ScalarParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,int); virtual ~ScalarParticleFieldMaster(){}; virtual void collect(); }; /*! \class VectorParticleFieldMaster \brief Class for master part of a vector field which is defined on all particles \author Steffen Abe $Revision$ $Date$ */ class VectorParticleFieldMaster : public AFieldMaster { protected: map m_save_map; map m_pos_map; virtual void writeAsDX(); virtual void writeAsPOV(); virtual void writeAsSILO(); virtual void writeAsSUM(); virtual void writeAsMAX(); virtual void writeAsRAW_SERIES(); virtual void writeAsRAW2(); virtual void writeAsRawWithID(); public: VectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int); VectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,int); virtual ~VectorParticleFieldMaster(){}; void collect(); }; #endif //__PARTICLEFIELDMASTER_H ./Fields/InteractionFieldMaster.cpp0000664000175000017500000003513712176660653017161 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "InteractionFieldMaster.h" #include "field_const.h" #include "console.h" //--- IO includes --- #include #include //--- STL inculdes --- #include #include using std::cout; using std::endl; using std::ofstream; using std::string; using std::multimap; /*! Constructor. Setup master and broadcast parameters to slaves \param comm the communicator \param fieldname the name of the field to be saved \param igtype the type of interaction group for which the field is saved \param igname the name of the interaction group for which the field is saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving \param checked choose between "full" and "checked" fields */ ScalarInteractionFieldMaster::ScalarInteractionFieldMaster(TML_Comm* comm,const string& fieldname,const string& igtype,const string& igname,const string& filename,const string& savetype,int t0,int tend,int dt,bool checked) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); m_comm->broadcast_cont(igname); m_comm->broadcast_cont(igtype); int is_tagged=0; m_comm->broadcast(is_tagged); int is_checked=checked ? 1 : 0; m_comm->broadcast(is_checked); } /*! Constructor. Setup master and broadcast parameters to slaves \param comm the communicator \param fieldname the name of the field to be saved \param igtype the type of interaction group for which the field is saved \param igname the name of the interaction group for which the field is saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving \param tag the tag of the particles to be saved \param mask the mask to be applied to the tag \param checked choose between "full" and "checked" fields */ ScalarInteractionFieldMaster::ScalarInteractionFieldMaster(TML_Comm* comm,const string& fieldname,const string& igtype,const string& igname,const string& filename,const string& savetype,int t0,int tend,int dt,int tag,int mask,bool checked) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); m_comm->broadcast_cont(igname); m_comm->broadcast_cont(igtype); int is_tagged=1; m_comm->broadcast(is_tagged); m_comm->broadcast(tag); m_comm->broadcast(mask); int is_checked=checked ? 1 : 0; m_comm->broadcast(is_checked); } void ScalarInteractionFieldMaster::collect() { // send field id to slave m_comm->broadcast(m_id); switch(m_write_type){ case WRITE_TYPE_SUM: collectSum(); break; case WRITE_TYPE_RAW2: collectFull2();break; case WRITE_TYPE_RAW_WITH_ID: collectFullWithID(); break; case WRITE_TYPE_RAW_WITH_POS_ID: collectFullWithPosID(); break; default: collectFull(); } // if(m_write_type==WRITE_TYPE_SUM){ // collectSum(); // } else if (m_write_type==5){ // collectFull2(); // } else if (m_write_ // } else { // collectFull(); // } } /*! collect full data set */ void ScalarInteractionFieldMaster::collectFull() { multimap > temp_mm; // send type of collect to slaves int coll_type=COLL_TYPE_FULL; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data.push_back(iter->second); } } /*! collect full data set, both particle positions */ void ScalarInteractionFieldMaster::collectFull2() { multimap temp_mm; // send type of collect to slaves int coll_type=5; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data2.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data2\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data2\n"; } /*! collect data and info */ void ScalarInteractionFieldMaster::collectFullWithID() { // debug output console.XDebug() << "ScalarInteractionFieldMaster::collectFullWithID()\n"; multimap temp_mm; // send type of collect to slaves int coll_type=COLL_TYPE_FULL_WITH_ID; m_comm->broadcast(coll_type); console.XDebug() << "after bcast coll_type\n"; // get data from slaves m_comm->gather(temp_mm); console.XDebug() << "after gather temp_mm \n"; // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data_with_id.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data_with_id\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data_with_id\n"; } /*! collect data and info */ void ScalarInteractionFieldMaster::collectFullWithPosID() { multimap temp_mm; // debug output console.XDebug() << "ScalarInteractionFieldMaster::collectFullWithPosID()\n"; // send type of collect to slaves int coll_type=COLL_TYPE_FULL_WITH_POS_ID; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data_with_pos_id.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data_with_id\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data_with_id\n"; } /*! collect sum of values only */ void ScalarInteractionFieldMaster::collectSum() { multimap temp_mm; // send type of collect to slaves int coll_type=COLL_TYPE_SUM; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_sum_vec.push_back(iter->second); } } /*! write data out as OpenDX compatible file \todo desciption */ void ScalarInteractionFieldMaster::writeAsDX() { //generate filename string fn=makeFilename(); // write header ofstream out_file(fn.c_str()); out_file << "points = " << m_data.size() << endl; out_file << "format = ascii" << endl; out_file << "dependency = positions, positions" << endl; out_file << "interleaving = field" << endl; out_file << "field = locations, " << m_field_name << endl; out_file << "structure = 3-vector, scalar" << endl; out_file << "type = float, float " << endl; out_file << "header = marker \"Start\\n\"" << endl; out_file << endl << "end" << endl; out_file << "Start" << endl; // write data for(vector >::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->first << " " << iter->second << endl; } out_file.close(); m_data.erase(m_data.begin(),m_data.end()); } /*! write data as pos1,pos2,value groups */ void ScalarInteractionFieldMaster::writeAsRAW2() { //generate filename string fn=makeFilename(); // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data2.size() << " vectors to be written\n"; for(vector::iterator iter=m_data2.begin(); iter!=m_data2.end(); iter++) { #if 0 out_file << (iter->first).template get<0>() << " " << (iter->first).template get<1>() << " " << (iter->first).template get<2>() << " " << (iter->first).template get<3>() << " " << (iter->first).template get<4>() << " " << iter->second << endl; #else out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << (iter->first).get<3>() << " " << (iter->first).get<4>() << " " << iter->second << endl; #endif count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data2.clear(); } /*! write data as pid1,pid2,ipos,value groups */ void ScalarInteractionFieldMaster::writeAsRawWithID() { //generate filename string fn=makeFilename(); // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data_with_id.size() << " vectors to be written\n"; for(vector::iterator iter=m_data_with_id.begin(); iter!=m_data_with_id.end(); iter++) { out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << iter->second << endl; count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data_with_id.clear(); } /*! write data as pid1,pid2,ipos,value groups */ void ScalarInteractionFieldMaster::writeAsRawWithPosID() { //generate filename string fn=makeFilename(); // debug output console.XDebug() << "ScalarInteractionFieldMaster::writeAsRawWithPosID() " << fn << "\n"; // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data_with_id.size() << " vectors to be written\n"; for(vector::iterator iter=m_data_with_pos_id.begin(); iter!=m_data_with_pos_id.end(); iter++) { out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << (iter->first).get<3>() << " " << (iter->first).get<4>() << " " << iter->second << endl; count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data_with_pos_id.clear(); } /*! write data as pos1,value pairs */ void ScalarInteractionFieldMaster::writeAsRAW() { // make filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(vector >::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->first << " " << iter->second << endl; } out_file.close(); // clean up m_data.erase(m_data.begin(),m_data.end()); } /*! sum data and write them out into a single continuous file */ void ScalarInteractionFieldMaster::writeAsSUM() { // sum data double sum_data=0.0; for(vector::iterator iter=m_sum_vec.begin(); iter!=m_sum_vec.end(); iter++){ sum_data+=*iter; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // set output precision to 10 significant digits, scientific format out_file.setf(ios_base::scientific, ios_base::floatfield); out_file.precision(10); // write data out_file << sum_data << endl; // close file out_file.close(); //clean up m_sum_vec.erase(m_sum_vec.begin(),m_sum_vec.end()); } /*! get the maximum of the data and write it out into a single continuous file */ void ScalarInteractionFieldMaster::writeAsMAX() { // sum data double max_data=*(m_sum_vec.begin()); for(vector::iterator iter=m_sum_vec.begin(); iter!=m_sum_vec.end(); iter++){ max_data=(*iter > max_data) ? *iter : max_data; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << max_data << endl; // close file out_file.close(); //clean up m_sum_vec.erase(m_sum_vec.begin(),m_sum_vec.end()); } /*! write data as a raw series of values, one row of values per time step, all timesteps into the same file */ void ScalarInteractionFieldMaster::writeAsRAW_SERIES() { cerr << "ScalarInteractionFieldMaster::writeAsRAW_SERIES not implemented" << endl; } ./Fields/ScalarInteractionFieldSlave.h0000664000175000017500000000315012176660653017561 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALAR_INTERACTION_FIELD_SLAVE_H #define __SCALAR_INTERACTION_FIELD_SLAVE_H // -- project includes -- #include "Fields/InteractionFieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class ScalarInteractionFieldSlave \brief class for slave part of scalar field defined on the interactions \author Steffen Abe $Revision$ $Date$ */ template class ScalarInteractionFieldSlave : public InteractionFieldSlave { protected: virtual void SendDataFull(); virtual void SendDataFull2(); virtual void SendDataWithID(); virtual void SendDataWithPosID(); virtual void SendDataSum(); virtual void SendDataMax(); protected: typename T::ScalarFieldFunction m_rdf; public: ScalarInteractionFieldSlave(TML_Comm*,TParallelInteractionStorage*,typename T::ScalarFieldFunction); }; #include "Fields/ScalarInteractionFieldSlave.hpp" #endif //__SCALAR_INTERACTION_FIELD_SLAVE_H ./Fields/VectorInteractionFieldSlave.hpp0000664000175000017500000000661212176660653020164 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include /*! constructor \param comm the TML communicator used for sending the data back to the master \param pis a pointer to the interaction storage \param rdf the particle member function to access the data */ template VectorInteractionFieldSlave::VectorInteractionFieldSlave(TML_Comm* comm,TParallelInteractionStorage* pis,typename T::VectorFieldFunction rdf) :InteractionFieldSlave(comm,pis) { m_rdf=rdf; } /*! send full field data and position of the interaction */ template void VectorInteractionFieldSlave::SendDataFull() { vector > data; data=this->m_pis->forAllInnerInteractionsGetWithPos(m_rdf); // send data to master this->m_comm->send_gather(data,0); } /*! send full field data and position of the interaction */ template void VectorInteractionFieldSlave::SendDataFull2() { vector,Vec3> > data; data=this->m_pis->forAllInnerInteractionsGetRaw2(m_rdf); // send data to master this->m_comm->send_gather(data,0); } /*! send full field data and position of the interaction */ template void VectorInteractionFieldSlave::SendDataWithID() { vector, Vec3> > data; // debug output console.XDebug() << "VectorInteractionFieldSlave::SendDataWithID()\n"; data=this->m_pis->forAllInnerInteractionsGetDataWithID(m_rdf); // debug output console.XDebug() << "sending " << data.size() << " data\n"; // send data to master this->m_comm->send_gather(data,0); } /*! send full field data, position of the interaction and pos. and Id of the particles */ template void VectorInteractionFieldSlave::SendDataWithPosID() { vector, Vec3> > data; // debug output console.XDebug() << "VectorInteractionFieldSlave::SendDataWithPosID()\n"; data=this->m_pis->forAllInnerInteractionsGetDataWithPosID(m_rdf); // debug output console.XDebug() << "sending " << data.size() << " data\n"; // send data to master this->m_comm->send_gather(data,0); } /*! send sum only */ template void VectorInteractionFieldSlave::SendDataSum() { vector data_vec; // get data from interactions this->m_pis->forAllInnerInteractionsGet(data_vec,m_rdf); // sum data Vec3 sum=Vec3(0.0,0.0,0.0); for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ sum=sum+(*iter); } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send max of the field */ template void VectorInteractionFieldSlave::SendDataMax() {} ./Fields/WallFieldMaster.h0000664000175000017500000000271312176660653015240 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __WALLFIELDMASTER_H #define __WALLFIELDMASTER_H // --- project includes --- #include "FieldMaster.h" #include "vec3.h" // --- STL includes --- #include #include using std::vector; using std::map; class TML_Comm; /*! \class VectorWallFieldMaster \brief Master part of vector field on walls $Revision$ $Date$ */ class VectorWallFieldMaster : public AFieldMaster { protected: virtual void writeAsRAW_SERIES(); virtual void writeAsSILO(); map m_data; int m_sum_flag; // decides if field is sum of all slaves (force...) or not (pos...) public: VectorWallFieldMaster(TML_Comm*,const string&,const string&,vector,const string&,int,int,int); virtual ~VectorWallFieldMaster(){}; virtual void collect(); }; #endif // __WALLFIELDMASTER_H ./Fields/VectorInteractionFieldMaster.cpp0000664000175000017500000002667012176660653020346 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "VectorInteractionFieldMaster.h" #include "console.h" #include "field_const.h" //--- IO includes --- #include #include //--- STL inculdes --- #include #include using std::cout; using std::endl; using std::ofstream; using std::string; using std::multimap; /*! Constructor. Setup master and broadcast parameters to slaves \param comm the communicator \param fieldname the name of the field to be saved \param igtype the type of interaction group for which the field is saved \param igname the name of the interaction group for which the field is saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving \param checked choose between "full" and "checked" fields */ VectorInteractionFieldMaster::VectorInteractionFieldMaster(TML_Comm* comm,const string& fieldname,const string& igtype,const string& igname,const string& filename,const string& savetype,int t0,int tend,int dt,bool checked) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); m_comm->broadcast_cont(igname); m_comm->broadcast_cont(igtype); int is_tagged=0; m_comm->broadcast(is_tagged); int is_checked=checked ? 1 : 0; m_comm->broadcast(is_checked); } void VectorInteractionFieldMaster::collect() { m_comm->broadcast(m_id); switch(m_write_type){ case WRITE_TYPE_SUM: collectSum(); break; case WRITE_TYPE_RAW2: collectFull2();break; case WRITE_TYPE_RAW_WITH_ID: collectFullWithID(); break; case WRITE_TYPE_RAW_WITH_POS_ID: collectFullWithPosID(); break; default: collectFull(); } } /*! collect data and info */ void VectorInteractionFieldMaster::collectFullWithID() { multimap temp_mm; console.XDebug() << "VectorInteractionFieldMaster::collectFullWithID()\n"; // send type of collect to slaves int coll_type=COLL_TYPE_FULL_WITH_ID; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data_with_id.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data_with_id\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data_with_id\n"; } /*! collect data and info */ void VectorInteractionFieldMaster::collectFullWithPosID() { multimap temp_mm; // debug output console.XDebug() << "VectorInteractionFieldMaster::collectFullWithPosID()\n"; // send type of collect to slaves int coll_type=COLL_TYPE_FULL_WITH_POS_ID; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data_with_pos_id.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data_with_id\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data_with_id\n"; } /*! write data out as OpenDX compatible file \todo desciption */ void VectorInteractionFieldMaster::writeAsDX() { //generate filename string fn=makeFilename(); // write header ofstream out_file(fn.c_str()); out_file << "points = " << m_data.size() << endl; out_file << "format = ascii" << endl; out_file << "dependency = positions, positions" << endl; out_file << "interleaving = field" << endl; out_file << "field = locations, " << m_field_name << endl; out_file << "structure = 3-vector, 3-vector" << endl; out_file << "type = float, float " << endl; out_file << "header = marker \"Start\\n\"" << endl; out_file << endl << "end" << endl; out_file << "Start" << endl; // write data for(vector >::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->first << " " << iter->second << endl; } out_file.close(); m_data.erase(m_data.begin(),m_data.end()); } /*! sum data and write them out into a single continuous file */ void VectorInteractionFieldMaster::writeAsSUM() { // sum data Vec3 sum_data=Vec3(0.0,0.0,0.0); for(vector::iterator iter=m_sum_vec.begin(); iter!=m_sum_vec.end(); iter++){ sum_data=sum_data+(*iter); } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << sum_data << endl; // close file out_file.close(); //clean up m_sum_vec.erase(m_sum_vec.begin(),m_sum_vec.end()); } /*! write data as pos1,pos2,value groups */ void VectorInteractionFieldMaster::writeAsRAW2() { //generate filename string fn=makeFilename(); // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data2.size() << " vectors to be written\n"; for(vector::iterator iter=m_data2.begin(); iter!=m_data2.end(); iter++) { #if 0 out_file << (iter->first).template get<0>() << " " << (iter->first).template get<1>() << " " << (iter->first).template get<2>() << " " << (iter->first).template get<3>() << " " << (iter->first).template get<4>() << " " << iter->second << endl; #else out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << (iter->first).get<3>() << " " << (iter->first).get<4>() << " " << iter->second << endl; #endif count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data2.clear(); } /*! write data as pid1,pid2,ipos,value groups */ void VectorInteractionFieldMaster::writeAsRawWithID() { //generate filename string fn=makeFilename(); // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data_with_id.size() << " vectors to be written\n"; for(vector::iterator iter=m_data_with_id.begin(); iter!=m_data_with_id.end(); iter++) { out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << iter->second << endl; count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data_with_id.clear(); } /*! write data as pid1,pid2,ipos,value groups */ void VectorInteractionFieldMaster::writeAsRawWithPosID() { //generate filename string fn=makeFilename(); // debug output console.XDebug() << "VectorInteractionFieldMaster::writeAsRawWithPosID() " << fn << "\n"; // write data ofstream out_file(fn.c_str()); // check if file is sucessfully opened if(!out_file){ console.Error() << "can not open output file " << fn << "\n"; } else { int count=0; console.XDebug() << m_data_with_id.size() << " vectors to be written\n"; for(vector::iterator iter=m_data_with_pos_id.begin(); iter!=m_data_with_pos_id.end(); iter++) { out_file << (iter->first).get<0>() << " " << (iter->first).get<1>() << " " << (iter->first).get<2>() << " " << (iter->first).get<3>() << " " << (iter->first).get<4>() << " " << iter->second << endl; count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " vectors written\n"; } } console.XDebug() << "finished writing " << count << " vectors \n"; // close file out_file.close(); } //clean up m_data_with_pos_id.clear(); } /*! collect full data set */ void VectorInteractionFieldMaster::collectFull() { multimap > temp_mm; // send type of collect to slaves int coll_type=1; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data.push_back(iter->second); } } /*! collect full data set, both particle positions */ void VectorInteractionFieldMaster::collectFull2() { multimap temp_mm; // send type of collect to slaves int coll_type=5; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map console.XDebug() << temp_mm.size() << " data sets collected\n"; int count=0; for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_data2.push_back(iter->second); count++; // write debug message every 10k writes if((count % 10000)==0){ console.XDebug() << count << " data pushed into m_data2\n"; } } console.XDebug() << "finished inserting " << count << " data into m_data2\n"; } /*! collect sum of values only */ void VectorInteractionFieldMaster::collectSum() { multimap temp_mm; // send type of collect to slaves m_comm->broadcast(m_write_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_sum_vec.push_back(iter->second); } } ./Fields/ScalarTriangleFieldMaster.cpp0000664000175000017500000001032012176660653017560 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "ScalarTriangleFieldMaster.h" #include "field_const.h" #include "console.h" //--- IO includes --- #include #include using std::ofstream; using std::endl; /*! Constructor. Send paramters to slaves \param comm the communicator \param fieldname the name of the field to be saved \param meshname the name of the mesh from which the field is taken \param filename the name of the file the field is saved into \param savetype the format in which the data is to be saved \param t_0 first timestep to be saved \param t_end last timestep to be saved \param dt timesteps between saves */ ScalarTriangleFieldMaster::ScalarTriangleFieldMaster(TML_Comm* comm, const string& fieldname, const string& meshname, const string& filename, const string& savetype, int t_0,int t_end,int dt) :AFieldMaster(comm,fieldname,filename,savetype,t_0,t_end,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast_cont(meshname); m_comm->broadcast(m_id); } /*! Destructor - does nothing */ ScalarTriangleFieldMaster::~ScalarTriangleFieldMaster() {} /*! Call the actual collection function according to the savetype */ void ScalarTriangleFieldMaster::collect() { // send field id to slave m_comm->broadcast(m_id); if(m_write_type==WRITE_TYPE_DX){ collectFullDX(); } else { collectFull(); } } /*! Call the actual writing function according to the savetype */ void ScalarTriangleFieldMaster::write() { switch (m_write_type){ case WRITE_TYPE_DX: writeAsDX(); break; case WRITE_TYPE_RAW: writeAsRAW(); break; default : cerr << "ScalarTriangleFieldMaster: wrong m_write_type in write" << endl; } } /*! write the field in a DX-compatible file */ void ScalarTriangleFieldMaster::writeAsDX() { console.XDebug() << "ScalarTriangleFieldMaster::writeAsDX() - NOT IMPLEMENTED"; } /*! Write the field as raw id,value groups */ void ScalarTriangleFieldMaster::writeAsRAW() { console.XDebug() << "ScalarTriangleFieldMaster::writeAsRAW\n"; //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(map::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->first << " " << iter->second << endl; } // clean up out_file.close(); m_data.clear(); console.XDebug() << "end ScalarTriangleFieldMaster::writeAsRAW\n"; } /*! collect the field data from the slaves, just id & field value for each triangle */ void ScalarTriangleFieldMaster::collectFull() { console.XDebug() << "ScalarTriangleFieldMaster::collectFull\n"; multimap > temp_mm; // send type of collect to slaves int coll_type=COLL_TYPE_FULL; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); // add data together for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ if(m_data.find((iter->second).first)==m_data.end()){ // id not in m_data -> insert m_data.insert(iter->second); } else { // id is in m_data -> add m_data[(iter->second).first]+=(iter->second).second; } } console.XDebug() << "end ScalarTriangleFieldMaster::collectFull\n"; } /*! collect the field data from the slaves, including node and connectivity info */ void ScalarTriangleFieldMaster::collectFullDX() { console.XDebug() << "ScalarTriangleFieldMaster::collectFullDX() - NOT IMPLEMENTED"; } ./Fields/TriggeredVectorParticleFieldMaster.h0000664000175000017500000000334312176660653021124 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIGGERED_VECTOR_PARTICLE_FIELD_MASTER_H #define __TRIGGERED_VECTOR_PARTICLE_FIELD_MASTER_H //--- project includes --- #include "Fields/ParticleFieldMaster.h" #include "Foundation/RingBuffer.h" #include "Fields/MaxTrigger.h" // --- STL includes --- #include using std::map; class TriggeredVectorParticleFieldMaster : public VectorParticleFieldMaster { private: RingBuffer > *m_save_map_buffer; RingBuffer > *m_pos_map_buffer; string m_base_file_name; int m_file_count; int m_tail_size; int m_tail_counter; int m_ts; bool m_is_triggered; bool m_is_writing_tail; MaxTrigger* m_Trigger; void IncrementFilename(); public: TriggeredVectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,const MaxTrigParams&); TriggeredVectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,int,const MaxTrigParams&); virtual ~TriggeredVectorParticleFieldMaster(); virtual void write(); }; #endif // __TRIGGERED_VECTOR_PARTICLE_FIELD_MASTER_H ./Fields/VectorTriangleFieldSlave.cpp0000664000175000017500000000414512176660653017444 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Fields/VectorTriangleFieldSlave.h" #include "Fields/field_const.h" #include "console.h" /*! constructor \param comm the TML communicator used for sending the data back to the master \param mesh the mesh on which the field is defined \param rdf the particle member function to access the data */ VectorTriangleFieldSlave::VectorTriangleFieldSlave(TML_Comm* comm,TriMesh* mesh,Triangle::VectorFieldFunction rdf) :AFieldSlave(comm) { m_mesh=mesh; m_rdf=rdf; } /*! Send data back to master. Recieve the collection type and call the appropriate sending function */ void VectorTriangleFieldSlave::sendData() { int coll_type; m_comm->recv_broadcast(coll_type,0); switch(coll_type){ case COLL_TYPE_FULL: SendDataFull();break; case COLL_TYPE_FULL_DX: SendDataFullDX();break; default: std::cerr << "unknown collection type" << std::endl; } } /*! Send data as id,value pairs */ void VectorTriangleFieldSlave::SendDataFull() { console.XDebug() << "VectorTriangleFieldSlave::SendDataFull\n"; vector > data_vec; // get data data_vec=m_mesh->forAllTrianglesGetIndexed(m_rdf); // send data to master m_comm->send_gather(data_vec,0); console.XDebug() << "end VectorTriangleFieldSlave::SendDataFull\n"; } /*! send data in a for saving as DX format */ void VectorTriangleFieldSlave::SendDataFullDX() { console.XDebug() << "VectorTriangleFieldSlave::SendDataFullDX() - NOT IMPLEMENTED\n"; } ./Fields/FieldSlave.cpp0000664000175000017500000000140012176660653014562 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "FieldSlave.h" AFieldSlave::AFieldSlave(TML_Comm* comm) { m_comm=comm; } ./Fields/ScalarParticleFieldSlaveTagged.h0000664000175000017500000000275412176660653020172 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALARPARTICLEFIELDSLAVETAGGED_H #define __SCALARPARTICLEFIELDSLAVETAGGED_H // -- project includes -- #include "ScalarParticleFieldSlave.h" class TML_Comm; template class ParallelParticleArray; /*! \class ScalarParticleFieldSlaveTagged \brief class for slave part of scalar field defined on tagged particles \author Steffen Abe $Revision$ $Date$ */ template class ScalarParticleFieldSlaveTagged : public ScalarParticleFieldSlave { private: int m_tag,m_mask; virtual void SendDataFull(); virtual void SendDataSum(); virtual void SendDataMax(); protected: public: ScalarParticleFieldSlaveTagged(TML_Comm*,ParallelParticleArray*,typename T::ScalarFieldFunction,int,int); }; #include "ScalarParticleFieldSlaveTagged.hpp" #endif //__SCALARPARTICLEFIELDSLAVETAGGED_H ./Fields/Makefile.am0000664000175000017500000000500212176660653014076 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libFields.la AM_CPPFLAGS += $(SILO_CPPFLAGS) -I$(top_srcdir)/Foundation -I$(top_srcdir)/Model AM_LDFLAGS += $(SILO_LDFLAGS) libFields_la_SOURCES =\ CheckedScalarInteractionFieldSlave.h \ CheckedScalarInteractionFieldSlave.hpp \ CheckedScalarInteractionFieldSlaveTagged.h \ CheckedScalarInteractionFieldSlaveTagged.hpp \ InteractionFieldMaster.cpp \ InteractionFieldMaster.h \ InteractionFieldSlave.hpp \ InteractionFieldSlave.h \ ParticleFieldMaster.cpp \ ParticleFieldMaster.h \ TriggeredVectorParticleFieldMaster.cpp \ TriggeredVectorParticleFieldMaster.h \ ScalarParticleDistributionMaster.h \ ScalarParticleDistributionMaster.cpp \ ScalarParticleFieldSlaveTagged.h \ ScalarParticleFieldSlaveTagged.hpp \ VectorParticleFieldSlaveTagged.h \ VectorParticleFieldSlaveTagged.hpp \ ScalarInteractionFieldSlave.h \ ScalarInteractionFieldSlave.hpp \ ScalarInteractionFieldSlaveTagged.h \ ScalarInteractionFieldSlaveTagged.hpp \ ScalarParticleFieldSlave.h \ ScalarParticleFieldSlave.hpp \ ScalarTriangleFieldMaster.h \ ScalarTriangleFieldMaster.cpp \ ScalarTriangleFieldSlave.h \ ScalarTriangleFieldSlave.cpp \ VectorInteractionFieldSlave.h \ VectorInteractionFieldSlave.hpp \ VectorInteractionFieldMaster.h \ VectorInteractionFieldMaster.cpp \ VectorParticleFieldSlave.h \ VectorParticleFieldSlave.hpp \ VectorTriangleFieldMaster.h \ VectorTriangleFieldMaster.cpp \ VectorTriangleFieldSlave.h \ VectorTriangleFieldSlave.cpp \ VectorEdge2DFieldSlave.h \ VectorEdge2DFieldSlave.cpp \ MaxTrigger.cpp \ MaxTrigger.h libFields_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/tml/type/libTmlType.la \ $(top_builddir)/tml/comm/libTmlComm.la \ $(top_builddir)/Model/libModel.la noinst_HEADERS = ./Fields/CheckedScalarInteractionFieldSlave.hpp0000664000175000017500000001160112176660653021370 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; using std::make_pair; // -- IO includes -- #include using std::cout; using std::endl; using std::cerr; // --- project includes --- #include "Foundation/triplet.h" #include "Foundation/console.h" using esys::lsm::triplet; /*! constructor \param comm the TML communicator used for sending the data back to the master \param pis a pointer to the interaction storage \param rdf the particle member function to access the data */ template CheckedScalarInteractionFieldSlave::CheckedScalarInteractionFieldSlave(TML_Comm* comm,TParallelInteractionStorage* pis,typename T::CheckedScalarFieldFunction rdf):InteractionFieldSlave(comm,pis) { this->m_rdf=rdf; } /*! send full field data and position of the interaction \todo replace cerr by exception */ template void CheckedScalarInteractionFieldSlave::SendDataFull() { vector > > raw_data; // position, [valid ?, data] vector > data; // position, data // get raw data raw_data=this->m_pis->forAllInnerInteractionsGetWithPos(this->m_rdf); // filter data for(vector > >::iterator iter=raw_data.begin(); iter!=raw_data.end(); iter++){ if(iter->second.first){ data.push_back(make_pair(iter->first,iter->second.second)); } } // send data to master this->m_comm->send_gather(data,0); } /*! send full field data and position of the interaction \todo replace cerr by exception */ template void CheckedScalarInteractionFieldSlave::SendDataFull2() { vector,pair > > raw_data; vector,double> > data; // get raw data raw_data=this->m_pis->forAllInnerInteractionsGetRaw2(this->m_rdf); // filter data for(vector,pair > >::iterator iter=raw_data.begin(); iter!=raw_data.end(); iter++){ if(iter->second.first){ data.push_back(make_pair(iter->first,iter->second.second)); } } // send data to master this->m_comm->send_gather(data,0); } /*! send sum only */ template void CheckedScalarInteractionFieldSlave::SendDataSum() { vector > data_vec; // get data from interactions this->m_pis->forAllInnerInteractionsGet(data_vec,this->m_rdf); // sum data double sum=0.0; for(vector >::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ if(iter->first) sum+=iter->second; } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send maximum only */ template void CheckedScalarInteractionFieldSlave::SendDataMax() { vector > data_vec; // get data from interactions this->m_pis->forAllInnerInteractionsGet(data_vec,this->m_rdf); // sum data double max; bool is_set=false; for(vector >::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ if(iter->first) { if(is_set){ max=(iter->second > max) ? iter->second : max; } else { max=iter->second; is_set=true; } } } vector max_vec; max_vec.push_back(max); this->m_comm->send_gather(max_vec,0); } /*! send data together with info */ template void CheckedScalarInteractionFieldSlave::SendDataWithID() { vector, pair > > raw_data; vector, double> > data; // get raw data raw_data=this->m_pis->forAllInnerInteractionsGetDataWithID(this->m_rdf); console.XDebug() << "got " << raw_data.size() << " raw data\n"; // filter data for(vector, pair > >::iterator iter=raw_data.begin(); iter!=raw_data.end(); iter++){ if(iter->second.first){ data.push_back(make_pair(iter->first,iter->second.second)); } } console.XDebug() << "got " << data.size() << " filtered data\n"; // send data to master this->m_comm->send_gather(data,0); } ./Fields/ScalarTriangleFieldSlave.cpp0000664000175000017500000000414712176660653017411 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Fields/ScalarTriangleFieldSlave.h" #include "Fields/field_const.h" #include "console.h" /*! constructor \param comm the TML communicator used for sending the data back to the master \param mesh the mesh on which the field is defined \param rdf the particle member function to access the data */ ScalarTriangleFieldSlave::ScalarTriangleFieldSlave(TML_Comm* comm,TriMesh* mesh,Triangle::ScalarFieldFunction rdf) :AFieldSlave(comm) { m_mesh=mesh; m_rdf=rdf; } /*! Send data back to master. Recieve the collection type and call the appropriate sending function */ void ScalarTriangleFieldSlave::sendData() { int coll_type; m_comm->recv_broadcast(coll_type,0); switch(coll_type){ case COLL_TYPE_FULL: SendDataFull();break; case COLL_TYPE_FULL_DX: SendDataFullDX();break; default: std::cerr << "unknown collection type" << std::endl; } } /*! Send data as id,value pairs */ void ScalarTriangleFieldSlave::SendDataFull() { console.XDebug() << "ScalarTriangleFieldSlave::SendDataFull\n"; vector > data_vec; // get data data_vec=m_mesh->forAllTrianglesGetIndexed(m_rdf); // send data to master m_comm->send_gather(data_vec,0); console.XDebug() << "end ScalarTriangleFieldSlave::SendDataFull\n"; } /*! send data in a for saving as DX format */ void ScalarTriangleFieldSlave::SendDataFullDX() { console.XDebug() << "ScalarTriangleFieldSlave::SendDataFullDX() - NOT IMPLEMENTED\n"; } ./Fields/InteractionFieldMaster.h0000664000175000017500000000475012176660653016623 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __INTERACTIONFIELDMASTER_H #define __INTERACTIONFIELDMASTER_H //--- project includes --- #include "FieldMaster.h" #include "vec3.h" #include "Foundation/quintuple.h" #include "Foundation/triplet.h" //--- STL includes --- #include using std::vector; //class TML_Comm; /*! \class ScalarInteractionFieldMaster \brief Class for master part of a scalar field which is defined on all particles \author Steffen Abe $Revision$ $Date$ */ class ScalarInteractionFieldMaster : public AFieldMaster { public: typedef std::pair, double> IVecData2; typedef std::pair, double> DataWithID; typedef std::pair, double> DataWithPosID; protected: vector m_data2; // vector of groups vector m_data_with_id; vector m_data_with_pos_id; vector > m_data; // vector of pairs vector m_sum_vec; virtual void writeAsDX(); virtual void writeAsSUM(); virtual void writeAsMAX(); virtual void writeAsRAW_SERIES(); virtual void writeAsRAW2(); virtual void writeAsRAW(); virtual void writeAsRawWithID(); virtual void writeAsRawWithPosID(); void collectFull(); void collectSum(); void collectMax(); void collectFull2(); void collectFullWithID(); void collectFullWithPosID(); public: ScalarInteractionFieldMaster(TML_Comm*,const string&,const string&,const string&,const string&,const string&,int,int,int,bool); ScalarInteractionFieldMaster(TML_Comm*,const string&,const string&,const string&,const string&,const string&,int,int,int,int,int,bool); virtual ~ScalarInteractionFieldMaster(){}; void collect(); }; #endif //__INTERACTIONFIELDMASTER_H ./Fields/ScalarParticleFieldSlaveTagged.hpp0000664000175000017500000000624012176660653020524 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param ppa a pointer to the particle array \param rdf the particle member function to access the data \param tag the tag \param mask the mask */ template ScalarParticleFieldSlaveTagged::ScalarParticleFieldSlaveTagged(TML_Comm* comm,ParallelParticleArray* ppa,typename T::ScalarFieldFunction rdf,int tag,int mask):ScalarParticleFieldSlave(comm,ppa,rdf) { m_tag=tag; m_mask=mask; } /*! send full field date, position and size of the particles */ template void ScalarParticleFieldSlaveTagged::SendDataFull() { vector > data_vec; vector > rad_vec; vector > pos_vec; data_vec = this->m_ppa->forAllInnerTaggedParticlesGetIndexed( this->m_rdf, m_tag, m_mask ); pos_vec = this->m_ppa->forAllInnerTaggedParticlesGetIndexed( typename T::VectorFieldFunction(&T::getPos), m_tag, m_mask ); rad_vec = this->m_ppa->forAllInnerTaggedParticlesGetIndexed( typename T::ScalarFieldFunction(&T::getRad), m_tag, m_mask ); // send data to master this->m_comm->send_gather(data_vec,0); this->m_comm->send_gather(pos_vec,0); this->m_comm->send_gather(rad_vec,0); } /*! send sum only */ template void ScalarParticleFieldSlaveTagged::SendDataSum() { vector data_vec; // get data from particles this->m_ppa->forAllTaggedInnerParticlesGet(data_vec,this->m_rdf,m_tag,m_mask); // sum data double sum=0.0; for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ sum+=*iter; } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send maximum only */ template void ScalarParticleFieldSlaveTagged::SendDataMax() { vector data_vec; // get data from particles this->m_ppa->forAllTaggedInnerParticlesGet( data_vec, this->m_rdf, m_tag, m_mask ); // sum data double max=*(data_vec.begin()); for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ max=(*iter > max) ? *iter : max; } vector max_vec; max_vec.push_back(max); this->m_comm->send_gather(max_vec,0); } ./Fields/ScalarParticleFieldSlave.hpp0000664000175000017500000000615412176660653017414 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param ppa a pointer to the particle array \param rdf the particle member function to access the data */ template ScalarParticleFieldSlave::ScalarParticleFieldSlave(TML_Comm* comm,ParallelParticleArray* ppa,typename T::ScalarFieldFunction rdf):AFieldSlave(comm) { m_ppa=ppa; m_rdf=rdf; } /*! send full field date, position and size of the particles */ template void ScalarParticleFieldSlave::SendDataFull() { vector > data_vec; vector > rad_vec; vector > pos_vec; data_vec=m_ppa->forAllInnerParticlesGetIndexed(m_rdf); pos_vec=m_ppa->forAllInnerParticlesGetIndexed(typename T::VectorFieldFunction(&T::getPos)); rad_vec=m_ppa->forAllInnerParticlesGetIndexed(typename T::ScalarFieldFunction(&T::getRad)); // send data to master m_comm->send_gather(data_vec,0); m_comm->send_gather(pos_vec,0); m_comm->send_gather(rad_vec,0); } /*! send sum only */ template void ScalarParticleFieldSlave::SendDataSum() { vector data_vec; // get data from particles m_ppa->forAllInnerParticlesGet(data_vec,m_rdf); // sum data double sum=0.0; for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ sum+=*iter; } vector sum_vec; sum_vec.push_back(sum); m_comm->send_gather(sum_vec,0); } /*! send maximum only */ template void ScalarParticleFieldSlave::SendDataMax() { vector data_vec; // get data from particles m_ppa->forAllInnerParticlesGet(data_vec,m_rdf); // sum data double max=*(data_vec.begin()); for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ max=(*iter > max) ? *iter : max; } vector max_vec; max_vec.push_back(max); m_comm->send_gather(max_vec,0); } /*! send data back to master */ template void ScalarParticleFieldSlave::sendData() { int coll_type; m_comm->recv_broadcast(coll_type,0); switch(coll_type){ case 1: SendDataFull();break; case 2: SendDataSum();break; case 3: SendDataMax();break; default: std::cerr << "unknown collection type" << std::endl; } } ./Fields/WallFieldSlave.h0000664000175000017500000000223412176660653015055 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __WALLFIELDSLAVE_H #define __WALLFIELDSLAVE_H // --- project includes --- #include "Fields/FieldSlave.h" // --- STL includes --- #include using std::vector; class CWall; /*! \class AWallFieldSlave \brief Abstract base class for slave part of field defined on a Wall $Revision$ $Date$ */ class AWallFieldSlave : public AFieldSlave { protected: vector m_wall; public: AWallFieldSlave(TML_Comm*); void addWall(CWall*); }; #endif // __WALLFIELDSLAVE_H ./Fields/WallFieldSlave.cpp0000664000175000017500000000205412176660653015410 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "WallFieldSlave.h" #include "Foundation/console.h" /*! Constructor \param comm the communicator \param w the walls */ AWallFieldSlave::AWallFieldSlave(TML_Comm* comm) : AFieldSlave(comm) {} /*! add a wall pointer \param wallp */ void AWallFieldSlave::addWall(CWall* wallp) { console.XDebug() << "AWallFieldSlave::addWall()\n"; m_wall.push_back(wallp); } ./Fields/ScalarParticleFieldSlave.h0000664000175000017500000000276512176660653017060 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALAR_PARTICLE_FIELD_SLAVE_H #define __SCALAR_PARTICLE_FIELD_SLAVE_H // -- project includes -- #include "FieldSlave.h" template class ParallelParticleArray; class TML_Comm; /*! \class ScalarParticleFieldSlave \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class ScalarParticleFieldSlave : public AFieldSlave { private: virtual void SendDataFull(); virtual void SendDataSum(); virtual void SendDataMax(); protected: typename T::ScalarFieldFunction m_rdf; ParallelParticleArray* m_ppa; public: ScalarParticleFieldSlave(TML_Comm*,ParallelParticleArray*,typename T::ScalarFieldFunction); virtual void sendData(); }; #include "ScalarParticleFieldSlave.hpp" #endif //__SCALAR_PARTICLE_FIELD_SLAVE_H ./Fields/MaxTrigger.h0000664000175000017500000000222012176660653014263 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MAX_TRIGGER_H #define __MAX_TRIGGER_H // --- project includes --- #include "Foundation/vec3.h" // --- STL includes --- #include using std::map; struct MaxTrigParams { double trig_on_value; double trig_off_value; int buff_size; int tail_size; }; class MaxTrigger { private: double m_on_level; double m_off_level; public: MaxTrigger(double,double); bool Off(const map& ); bool On(const map& ); }; #endif // __MAX_TRIGGER_H ./Fields/InteractionFieldSlave.hpp0000664000175000017500000000373512176660653017004 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "field_const.h" template InteractionFieldSlave::InteractionFieldSlave(TML_Comm* comm,TParallelInteractionStorage* pis):AFieldSlave(comm) { m_pis=pis; } /*! Dummy implementation for SendDataWithPosID - does nothing except writing an error message to stderr. */ template void InteractionFieldSlave::SendDataWithPosID() { std::cerr << "SendDataWithPosID is not implemented for this type of InteractionFieldSaver" << std::endl; } /*! Send data back to master. Determine the type of data (full/sum) to send back from the received coll_type and call the sendDataFull or sendDataSum. */ template void InteractionFieldSlave::sendData() { // debug output console.XDebug() << "InteractionFieldSlave::sendData()\n"; int coll_type; m_comm->recv_broadcast(coll_type,0); // debug output console.XDebug() << "received coll_type=" << coll_type << "\n"; switch(coll_type){ case COLL_TYPE_FULL : SendDataFull();break; case COLL_TYPE_SUM : SendDataSum();break; case COLL_TYPE_MAX : SendDataMax();break; case COLL_TYPE_FULL2 : SendDataFull2();break; case COLL_TYPE_FULL_WITH_ID : SendDataWithID();break; case COLL_TYPE_FULL_WITH_POS_ID : SendDataWithPosID();break; default: std::cerr << "unknown collection type" << std::endl; } } ./Fields/FieldMaster.h0000664000175000017500000000463012176660653014420 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FIELDMASTER_H #define __FIELDMASTER_H #ifdef HAVE_CONFIG_H #include "config.h" #endif #if HAVE_SILO #include #endif //--- STL includes --- #include using std::string; // --- project includes --- #include "Foundation/console.h" class TML_Comm; /*! \class AFieldMaster \brief Abstract base class for master part of field */ class AFieldMaster { private: static int s_field_count; protected: TML_Comm *m_comm; string m_field_name; string m_file_name; int m_t0,m_tend,m_dt; int m_id; int m_save_count; int m_write_type; // DX, POV. SILO, SUM, MAX, RAW_SERIES etc string makeFilename(); #if HAVE_SILO DBfile* openSiloFile(bool& exists); #endif virtual void writeAsDX(){console.Error()<<"writeAsDX NOT IMPLEMENTED\n";}; virtual void writeAsPOV(){console.Error()<<"writeAsPOV NOT IMPLEMENTED\n";}; virtual void writeAsSILO(){console.Error()<<"writeAsSILO NOT IMPLEMENTED\n";}; virtual void writeAsSUM(){console.Error()<<"writeAsSUM NOT IMPLEMENTED\n";}; virtual void writeAsMAX(){console.Error()<<"writeAsMAX NOT IMPLEMENTED\n";}; virtual void writeAsRAW_SERIES(){console.Error()<<"writeAsRAW_SERIES NOT IMPLEMENTED\n";}; virtual void writeAsRAW2(){console.Error()<<"writeAsRAW2 NOT IMPLEMENTED\n";}; virtual void writeAsRAW(){console.Error()<<"writeAsRAW NOT IMPLEMENTED\n";}; virtual void writeAsRawWithID(){console.Error()<<"writeAsRawWithID NOT IMPLEMENTED\n";}; virtual void writeAsRawWithPosID(){console.Error()<<"writeAsRawWithPosID NOT IMPLEMENTED\n";}; public: AFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int); virtual ~AFieldMaster(){}; virtual bool needSave(int); virtual void collect()=0; virtual void write(); }; #endif //__FIELDMASTER_H ./Fields/ParticleFieldMaster.cpp0000664000175000017500000004546312176660653016450 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "ParticleFieldMaster.h" #include "field_const.h" //--- IO includes --- #include #include //--- STL inculdes --- #include #include using std::cout; using std::endl; using std::ofstream; using std::string; using std::multimap; //==== SCALAR PFM === /*! Constructor. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving */ ScalarParticleFieldMaster::ScalarParticleFieldMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); int is_tagged=0; m_comm->broadcast(is_tagged); } /*! Constructor. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving \param tag the tag of the particles to be saved \param mask the mask to be applied to the tag */ ScalarParticleFieldMaster::ScalarParticleFieldMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt,int tag,int mask):AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); int is_tagged=1; m_comm->broadcast(is_tagged); m_comm->broadcast(tag); m_comm->broadcast(mask); } void ScalarParticleFieldMaster::collect() { // send field id to slave m_comm->broadcast(m_id); if((m_write_type==WRITE_TYPE_SUM)||(m_write_type==WRITE_TYPE_MAX)) { collectSum(); } else { collectFull(); } } /*! collect the full set of data, i.e. value, and posn,size of particles */ void ScalarParticleFieldMaster::collectFull() { multimap > temp_mm; multimap > temp_pos_mm; multimap > temp_rad_mm; // send type of collect to slaves int coll_type=1; m_comm->broadcast(coll_type); // get data from slaves m_comm->gather(temp_mm); m_comm->gather(temp_pos_mm); m_comm->gather(temp_rad_mm); // collate receive data from multimap into single map for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_save_map.insert(iter->second); } for(multimap >::iterator iter=temp_pos_mm.begin(); iter!=temp_pos_mm.end(); iter++){ m_pos_map.insert(iter->second); } for(multimap >::iterator iter=temp_rad_mm.begin(); iter!=temp_rad_mm.end(); iter++){ m_rad_map.insert(iter->second); } } /*! collect sum of values only */ void ScalarParticleFieldMaster::collectSum() { multimap temp_mm; // send type of collect to slaves m_comm->broadcast(m_write_type); // get data from slaves m_comm->gather(temp_mm); // collate receive data from multimap into single map for(multimap::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_save_map.insert(*iter); } } /*! write data out as OpenDX compatible file \todo desciption */ void ScalarParticleFieldMaster::writeAsDX() { //generate filename string fn=makeFilename(); // write header ofstream out_file(fn.c_str()); out_file << "points = " << m_save_map.size() << endl; out_file << "format = ascii" << endl; out_file << "dependency = positions, positions" << endl; out_file << "interleaving = field" << endl; out_file << "field = locations, " << m_field_name << endl; out_file << "structure = 3-vector, scalar" << endl; out_file << "type = float, float " << endl; out_file << "header = marker \"Start\\n\"" << endl; out_file << endl << "end" << endl; out_file << "Start" << endl; // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << m_pos_map[iter->first] << " " << iter->second << endl; } out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } /*! write data out as Povray(>=3.0) compatible file \warning not fully impl. */ void ScalarParticleFieldMaster::writeAsPOV() { //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // work out object size Vec3 vmin,vmax; for(map::iterator iter=m_pos_map.begin(); iter!=m_pos_map.end(); iter++){ vmin=cmin(vmin,iter->second); vmax=cmax(vmax,iter->second); } // fit camera position //Vec3 lookat=0.5*(vmin+vmax); // write camera etc. out_file << "#include \"colors.inc\"" << endl; out_file << "background { color Black }" << endl; out_file << " camera {" << endl; out_file << "location <0, 2, -3>" << endl; out_file << "look_at <0, 1, 2>" << endl; out_file << "}" << endl<< endl; out_file << "light_source { <2, 4, -3> color White}" << endl; // write particles for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << "sphere { <" << m_pos_map[iter->first].X() << " , " << m_pos_map[iter->first].Y() << " , " << m_pos_map[iter->first].Z() << " > , " << m_rad_map[iter->first] << endl; out_file << " texture { rgb < 1.0,0.5,0.5 > } }" << endl; //<< iter->second << endl; } // close file out_file.close(); } /*! write data out as SILO file (if supported) */ void ScalarParticleFieldMaster::writeAsSILO() { #if HAVE_SILO bool append; DBfile* dbfile = openSiloFile(append); if (!dbfile) { console.Error() << "writeAsSILO not supported"; return; } // prepare data std::vector x, y, z, radius, data; x.clear(); y.clear(); z.clear(); radius.clear(); data.clear(); for (map::iterator iter=m_save_map.begin(); iter != m_save_map.end(); iter++) { // the mesh is only needed if we are not appending if (!append) { const Vec3& v = m_pos_map[iter->first]; x.push_back(v.X()); y.push_back(v.Y()); z.push_back(v.Z()); } radius.push_back(m_rad_map[iter->first]); data.push_back(iter->second); } // write mesh first if needed if (!append) { float* coords[] = { &x[0], &y[0], &z[0] }; DBPutPointmesh(dbfile, "mesh", 3, coords, m_save_map.size(), DB_FLOAT, NULL); } // and now the fields DBPutPointvar1(dbfile, "radius", "mesh", &radius[0], radius.size(), DB_FLOAT, NULL); DBPutPointvar1(dbfile, m_field_name.c_str(), "mesh", &data[0], data.size(), DB_FLOAT, NULL); // close file DBClose(dbfile); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); #else console.Error() << "writeAsSILO not supported\n"; #endif } /*! sum data and write them out into a single continuous file \warning n */ void ScalarParticleFieldMaster::writeAsSUM() { // sum data double sum_data=0.0; for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ sum_data+=iter->second; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << sum_data << endl; // close file out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } /*! find max datum and write it out into a single continuous file */ void ScalarParticleFieldMaster::writeAsMAX() { // get max data double max_data=(m_save_map.begin())->second; for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ max_data=(iter->second > max_data) ? iter->second : max_data; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << max_data << endl; // close file out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } /*! write data as a raw series of values, one row of values per time step, all timesteps into the same file */ void ScalarParticleFieldMaster::writeAsRAW_SERIES() { // open file ofstream out_file(m_file_name.c_str(),ios::app); // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << iter->second << " "; } out_file << endl; out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } /*! write data as raw id, position, radius, value, one time step per file */ void ScalarParticleFieldMaster::writeAsRawWithPosID() { //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << iter->first << " " << m_pos_map[iter->first] << " " << m_rad_map[iter->first] << " "<< iter->second << endl; } // close file out_file.close(); // clean up m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); m_rad_map.erase(m_rad_map.begin(),m_rad_map.end()); } // === VECTOR PFM === /*! Constructor. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving */ VectorParticleFieldMaster::VectorParticleFieldMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); int is_tagged=0; m_comm->broadcast(is_tagged); } /*! Constructor. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved into or the base for the generation of the filenames if the saving format requires multiple files \param savetype the way to save data, currently supported are DX,SUM \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving \param tag the tag of the particles to be saved \param mask the mask to be applied to the tag */ VectorParticleFieldMaster::VectorParticleFieldMaster(TML_Comm* comm,const string& fieldname,const string& filename,const string& savetype,int t0,int tend,int dt,int tag,int mask) :AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { m_comm->broadcast_cont(fieldname); m_comm->broadcast(m_id); int is_tagged=1; m_comm->broadcast(is_tagged); m_comm->broadcast(tag); m_comm->broadcast(mask); } void VectorParticleFieldMaster::collect() { multimap > temp_mm; multimap > temp_pos_mm; // send field id to slaves m_comm->broadcast(m_id); //receive data from fields m_comm->gather(temp_mm); m_comm->gather(temp_pos_mm); // collate receive data from multimap into single map for(multimap >::iterator iter=temp_mm.begin(); iter!=temp_mm.end(); iter++){ m_save_map.insert(iter->second); } for(multimap >::iterator iter=temp_pos_mm.begin(); iter!=temp_pos_mm.end(); iter++){ m_pos_map.insert(iter->second); } } /*! write data out as OpenDX compatible file \todo desciption */ void VectorParticleFieldMaster::writeAsDX() { //generate filename string fn=makeFilename(); // write header ofstream out_file(fn.c_str()); out_file << "points = " << m_save_map.size() << endl; out_file << "format = ascii" << endl; out_file << "dependency = positions, positions" << endl; out_file << "interleaving = field" << endl; out_file << "field = locations, " << m_field_name << endl; out_file << "structure = 3-vector, 3-vector" << endl; out_file << "type = float, float " << endl; out_file << "header = marker \"Start\\n\"" << endl; out_file << endl << "end" << endl; out_file << "Start" << endl; // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << m_pos_map[iter->first] << " " << iter->second << endl; } out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } /*! write data out as Povray(>=3.0) compatible file \warning not impl. */ void VectorParticleFieldMaster::writeAsPOV() { } /*! write data out as SILO file (if supported) */ void VectorParticleFieldMaster::writeAsSILO() { #if HAVE_SILO bool append; DBfile* dbfile = openSiloFile(append); if (!dbfile) { console.Error() << "writeAsSILO not supported"; return; } // prepare data std::vector x, y, z; std::vector vx, vy, vz; x.clear(); y.clear(); z.clear(); vx.clear(); vy.clear(); vz.clear(); for (map::iterator iter=m_save_map.begin(); iter != m_save_map.end(); iter++) { if (!append) { const Vec3& m = m_pos_map[iter->first]; x.push_back(m.X()); y.push_back(m.Y()); z.push_back(m.Z()); } const Vec3& v = iter->second; vx.push_back(v.X()); vy.push_back(v.Y()); vz.push_back(v.Z()); } // write mesh first if needed if (!append) { float* coords[] = { &x[0], &y[0], &z[0] }; DBPutPointmesh(dbfile, "mesh", 3, coords, m_save_map.size(), DB_FLOAT, NULL); } float* vdata[] = { &vx[0], &vy[0], &vz[0] }; DBPutPointvar(dbfile, m_field_name.c_str(), "mesh", 3, vdata, m_save_map.size(), DB_FLOAT, NULL); // close file DBClose(dbfile); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); #else console.Error() << "writeAsSILO not supported\n"; #endif } /*! sum data and write them out into a single continuous file \warning untested */ void VectorParticleFieldMaster::writeAsSUM() { Vec3 sum_data=Vec3(0.0,0.0,0.0); for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ sum_data+=iter->second; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << sum_data << endl; // close file out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } /*! get max datum and write it out into a single continuous file \warning untested */ void VectorParticleFieldMaster::writeAsMAX() { Vec3 max_data=(m_save_map.begin())->second; for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ max_data=(iter->second.norm2() > max_data.norm2()) ? iter->second : max_data; } // open file for appending ofstream out_file(m_file_name.c_str(),ios::app); // write data out_file << max_data << endl; // close file out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } /*! write data as a raw series of values, one row of values per time step, all timesteps into the same file */ void VectorParticleFieldMaster::writeAsRAW_SERIES() { // open file ofstream out_file(m_file_name.c_str(),ios::app); // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << iter->second << " "; } out_file << endl; out_file.close(); m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } /*! write data as raw position, value pairs, one time step per file */ void VectorParticleFieldMaster::writeAsRAW2() { //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << m_pos_map[iter->first] << " " << iter->second << endl; } // close file out_file.close(); // clean up m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } /*! write data as raw id, position, value triples, one time step per file */ void VectorParticleFieldMaster::writeAsRawWithID() { //generate filename string fn=makeFilename(); // open file ofstream out_file(fn.c_str()); // write data for(map::iterator iter=m_save_map.begin(); iter!=m_save_map.end(); iter++){ out_file << iter->first << " " << m_pos_map[iter->first] << " " << iter->second << endl; } // close file out_file.close(); // clean up m_save_map.erase(m_save_map.begin(),m_save_map.end()); m_pos_map.erase(m_pos_map.begin(),m_pos_map.end()); } ./Fields/ScalarInteractionFieldSlave.hpp0000664000175000017500000001001412176660653020116 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; #include "Foundation/quadtuple.h" #include "pis/pi_storage.h" /*! constructor \param comm the TML communicator used for sending the data back to the master \param pis a pointer to the interaction storage \param rdf the particle member function to access the data */ template ScalarInteractionFieldSlave::ScalarInteractionFieldSlave(TML_Comm* comm,TParallelInteractionStorage* pis,typename T::ScalarFieldFunction rdf):InteractionFieldSlave(comm,pis) { m_rdf=rdf; } /*! send full field data and position of the interaction */ template void ScalarInteractionFieldSlave::SendDataFull() { vector > data; data=this->m_pis->forAllInnerInteractionsGetWithPos(m_rdf); // send data to master this->m_comm->send_gather(data,0); } /*! send full field data and position of the interaction */ template void ScalarInteractionFieldSlave::SendDataFull2() { vector,double> > data; data=this->m_pis->forAllInnerInteractionsGetRaw2(m_rdf); // send data to master this->m_comm->send_gather(data,0); } /*! send full field data, position of the interaction and pos. and Id of the particles. Data format is pid1, pid2, pos1, pos2, ipos, val */ template void ScalarInteractionFieldSlave::SendDataWithPosID() { vector, double> > data; // debug output console.XDebug() << "ScalarInteractionFieldSlave::SendDataWithPosID()\n"; data=this->m_pis->forAllInnerInteractionsGetDataWithPosID(m_rdf); // debug output console.XDebug() << "sending " << data.size() << " data\n"; // send data to master this->m_comm->send_gather(data,0); } /*! send sum only */ template void ScalarInteractionFieldSlave::SendDataSum() { vector data_vec; // get data from interactions this->m_pis->forAllInnerInteractionsGet(data_vec,m_rdf); // sum data double sum=0.0; for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ sum+=*iter; } vector sum_vec; sum_vec.push_back(sum); this->m_comm->send_gather(sum_vec,0); } /*! send full field data and position of the interaction */ template void ScalarInteractionFieldSlave::SendDataWithID() { vector, double> > data; // debug output console.XDebug() << "ScalarInteractionFieldSlave::SendDataWithID()\n"; data=this->m_pis->forAllInnerInteractionsGetDataWithID(m_rdf); // debug output console.XDebug() << "sending " << data.size() << " data\n"; // send data to master this->m_comm->send_gather(data,0); } /*! send maximum only */ template void ScalarInteractionFieldSlave::SendDataMax() { vector data_vec; // get data from interactions this->m_pis->forAllInnerInteractionsGet(data_vec,m_rdf); // sum data double max=*(data_vec.begin()); for(vector::iterator iter=data_vec.begin(); iter!=data_vec.end(); iter++){ max=(*iter > max) ? *iter : max; } vector max_vec; max_vec.push_back(max); this->m_comm->send_gather(max_vec,0); } ./Fields/CheckedVectorInteractionFieldSlave.h0000664000175000017500000000320112176660653021062 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CHECKED_VECTOR_INTERACTION_FIELD_SLAVE_H #define __CHECKED_VECTOR_INTERACTION_FIELD_SLAVE_H // -- project includes -- #include "InteractionFieldSlave.h" template class TParallelInteractionStorage; class TML_Comm; /*! \class ScalarInteractionFieldSlave \brief class for slave part of vector field defined on the particles \author Steffen Abe $Revision: 450 $ $Date: 2004-10-04 06:51:59 +0100 (Mon, 04 Oct 2004) $ */ template class CheckedVectorInteractionFieldSlave : public InteractionFieldSlave { private: virtual void SendDataFull(); virtual void SendDataFull2(); virtual void SendDataSum(); virtual void SendDataMax(); protected: typename T::CheckedVectorFieldFunction m_rdf; public: CheckedVectorInteractionFieldSlave(TML_Comm*,TParallelInteractionStorage*,typename T::CheckedVectorFieldFunction); }; #include "CheckedVectorInteractionFieldSlave.hpp" #endif //__CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_H ./Fields/VectorParticleFieldSlave.h0000664000175000017500000000263112176660653017105 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTOR_PARTICLE_FIELD_SLAVE_H #define __VECTOR_PARTICLE_FIELD_SLAVE_H // -- project includes -- #include "FieldSlave.h" template class ParallelParticleArray; class TML_Comm; /*! \class VectorParticleFieldSlave \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class VectorParticleFieldSlave : public AFieldSlave { private: protected: typename T::VectorFieldFunction m_rdf; ParallelParticleArray* m_ppa; public: VectorParticleFieldSlave(TML_Comm*,ParallelParticleArray*,typename T::VectorFieldFunction); virtual void sendData(); }; #include "VectorParticleFieldSlave.hpp" #endif //__SCALAR_PARTICLE_FIELD_SLAVE_H ./Fields/WallFieldMaster.cpp0000664000175000017500000001247112176660653015575 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- TML includes --- #include "tml/comm/comm.h" // --- Project includes --- #include "Fields/WallFieldMaster.h" // --- STL includes --- #include using std::multimap; // --- IO includes --- #include #include using std::ofstream; using std::endl; /*! write the data out as series of raw data, i.e. x_0,0 y_0,0 z_0,0 x_1,0 y_1,0 z_1,0... x_0,1 y_0,1 z_0,1 x_1,1 y_1,1 z_1,1... ... where x_i,j is the x-value from wall i at time j */ void VectorWallFieldMaster::writeAsRAW_SERIES() { console.XDebug() << "VectorWallFieldMaster::writeAsRAW_SERIES()\n"; // open file ofstream out_file(m_file_name.c_str(),ios::app); // set output precision to 10 significant digits, scientific format out_file.setf(ios_base::scientific, ios_base::floatfield); out_file.precision(10); // write data for(map::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ out_file << iter->second << " "; } out_file << endl; out_file.close(); m_data.clear(); } /*! write data out as SILO file (if supported) */ void VectorWallFieldMaster::writeAsSILO() { #if HAVE_SILO bool append; DBfile* dbfile = openSiloFile(append); if (!dbfile) { console.Error() << "writeAsSILO not supported"; return; } // prepare data structures std::vector x, y, z; x.clear(); y.clear(); z.clear(); for (map::iterator iter=m_data.begin(); iter != m_data.end(); iter++) { const Vec3& v = iter->second; x.push_back(v.X()); y.push_back(v.Y()); z.push_back(v.Z()); } float* coords[] = { &x[0], &y[0], &z[0] }; // this is not very nice - the mesh is defined by the Position field // which _must_ be written before any other fields if (m_field_name == "Position") DBPutPointmesh(dbfile, "Position", 3, coords, m_data.size(), DB_FLOAT, NULL); else { if (!append || DBInqVarExists(dbfile, "Position") == 0) console.Error() << "writeAsSILO: You have to write out the Position first\n"; else DBPutPointvar(dbfile, m_field_name.c_str(), "Position", 3, coords, m_data.size(), DB_FLOAT, NULL); } // close file DBClose(dbfile); #else console.Error() << "writeAsSILO not supported\n"; #endif m_data.clear(); } /*! Constructor. Set up the Master and broadcast parameters to the slaves. \param comm the communicator \param fieldname the name of the field to be saved \param filename the name of the file to be saved \param walls the names of the walls \param savetype the way in which the data are to be saved - only RAW_SERIES supported at the moment \param t0 the first timestep to be saved \param tend the last timestep to be saved \param dt the interval between timesteps to be saving */ VectorWallFieldMaster::VectorWallFieldMaster(TML_Comm* comm, const string& fieldname, const string& filename, vector walls, const string& savetype, int t0, int tend, int dt) : AFieldMaster(comm,fieldname,filename,savetype,t0,tend,dt) { console.XDebug() << "VectorWallFieldMaster::VectorWallFieldMaster()\n"; m_comm->broadcast_cont(fieldname); console.XDebug() << "bcast fieldname\n"; m_comm->broadcast(int(walls.size())); for(vector::iterator iter=walls.begin(); iter!=walls.end(); iter++){ m_comm->broadcast_cont(*iter); } m_comm->broadcast(m_id); m_comm->receive(m_sum_flag,1); console.XDebug() << "m_sum_flag = " << m_sum_flag << "\n"; m_comm->barrier(); console.XDebug() << "end VectorWallFieldMaster::VectorWallFieldMaster()\n"; } void VectorWallFieldMaster::collect() { console.XDebug() << "VectorWallFieldMaster::collect()\n"; multimap > recv_data; // send field id to slave m_comm->broadcast(m_id); // get data from slaves m_comm->gather(recv_data); if(m_sum_flag==0){ // don't sum -> take data from node 1 multimap >::iterator it_lower=recv_data.lower_bound(1); multimap >::iterator it_upper=recv_data.upper_bound(1); for(multimap >::iterator iter=it_lower; iter!=it_upper; iter++){ m_data.insert(iter->second); } } else if(m_sum_flag==1){ int nslaves=m_comm->size(); for(int i=1;i >::iterator it_lower=recv_data.lower_bound(i); multimap >::iterator it_upper=recv_data.upper_bound(i); for(multimap >::iterator iter=it_lower; iter!=it_upper; iter++){ m_data[(iter->second).first]+=(iter->second).second; } } } console.XDebug() << "end VectorWallFieldMaster::collect()\n"; } ./Fields/ScalarTriangleFieldMaster.h0000664000175000017500000000311512176660653017231 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SCALARTRIANGLEFIELDMASTER_H #define __SCALARTRIANGLEFIELDMASTER_H //--- project includes --- #include "FieldMaster.h" //--- STL includes --- #include using std::map; /*! \class ScalarTriangleFieldMaster \brief Master part of a scalar field which is defined on the triangles in a given triangle mesh \author Steffen Abe $Revision$ $Date$ */ class ScalarTriangleFieldMaster : public AFieldMaster { protected: map m_data; // id,value virtual void writeAsDX(); virtual void writeAsRAW(); virtual void writeAsSUM(){}; virtual void writeAsMAX(){}; virtual void writeAsRAW_SERIES(){}; void collectFull(); void collectFullDX(); public: ScalarTriangleFieldMaster(TML_Comm*,const string&,const string&,const string&,const string&,int,int,int); ~ScalarTriangleFieldMaster(); virtual void collect(); virtual void write(); }; #endif //__SCALARTRIANGLEFIELDMASTER_H ./Fields/VectorParticleFieldSlaveTagged.hpp0000664000175000017500000000355212176660653020564 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //-- STL includes -- #include #include using std::vector; using std::pair; // -- IO includes -- #include using std::cout; using std::endl; /*! constructor \param comm the TML communicator used for sending the data back to the master \param ppa a pointer to the particle array \param rdf the particle member function to access the data \param tag the tag \param mask the mask */ template VectorParticleFieldSlaveTagged::VectorParticleFieldSlaveTagged(TML_Comm* comm,ParallelParticleArray* ppa,typename T::VectorFieldFunction rdf,int tag,int mask):VectorParticleFieldSlave(comm,ppa,rdf) { m_tag=tag; m_mask=mask; } template void VectorParticleFieldSlaveTagged::sendData() { vector > data_vec; vector > pos_vec; data_vec = this->m_ppa->forAllInnerTaggedParticlesGetIndexed( this->m_rdf, m_tag, m_mask ); pos_vec = this->m_ppa->forAllInnerTaggedParticlesGetIndexed( typename T::VectorFieldFunction(&T::getPos), m_tag, m_mask ); // send data to master this->m_comm->send_gather(data_vec,0); this->m_comm->send_gather(pos_vec,0); } ./Fields/CheckedScalarInteractionFieldSlaveTagged.h0000664000175000017500000000314412176660653022147 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H #define __CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H // -- project includes -- #include "CheckedScalarInteractionFieldSlave.h" //template class TParallelInteractionStorage; //class TML_Comm; /*! \class ScalarInteractionFieldSlave \brief class for slave part of scalar field defined on the particles \author Steffen Abe $Revision$ $Date$ */ template class CheckedScalarInteractionFieldSlaveTagged : public CheckedScalarInteractionFieldSlave { private: virtual void SendDataFull(); virtual void SendDataSum(); virtual void SendDataMax(); protected: int m_tag; int m_mask; public: CheckedScalarInteractionFieldSlaveTagged(TML_Comm*,TParallelInteractionStorage*,typename T::CheckedScalarFieldFunction,int,int); }; #include "CheckedScalarInteractionFieldSlaveTagged.hpp" #endif //__CHECKED_SCALAR_INTERACTION_FIELD_SLAVE_TAGGED_H ./Fields/VectorTriangleFieldMaster.h0000664000175000017500000000313512176660653017270 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VECTORTRIANGLEFIELDMASTER_H #define __VECTORTRIANGLEFIELDMASTER_H //--- project includes --- #include "FieldMaster.h" #include "vec3.h" //--- STL includes --- #include using std::map; /*! \class VectorTriangleFieldMaster \brief Master part of a vector field which is defined on the triangles in a given triangle mesh \author Steffen Abe $Revision$ $Date$ */ class VectorTriangleFieldMaster : public AFieldMaster { protected: map m_data; // id,value virtual void writeAsDX(); virtual void writeAsRAW(); virtual void writeAsSUM(){}; virtual void writeAsMAX(){}; virtual void writeAsRAW_SERIES(){}; void collectFull(); void collectFullDX(); public: VectorTriangleFieldMaster(TML_Comm*,const string&,const string&,const string&,const string&,int,int,int); ~VectorTriangleFieldMaster(); virtual void collect(); virtual void write(); }; #endif //__VECTORTRIANGLEFIELDMASTER_H ./tml/0000775000175000017500000000000012176660653011433 5ustar vborosvboros./tml/CMakeLists.txt0000664000175000017500000000022612176660653014173 0ustar vborosvborosADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/tml/comm") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/tml/message") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/tml/type") ./tml/Doxyfile0000664000175000017500000012640312176660653013147 0ustar vborosvboros# Doxyfile 1.3.2 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project # # All text after a hash (#) is considered a comment and will be ignored # The format is: # TAG = value [value, ...] # For lists items can also be appended using: # TAG += value [value, ...] # Values that contain spaces should be placed between quotes (" ") #--------------------------------------------------------------------------- # General configuration options #--------------------------------------------------------------------------- # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. PROJECT_NAME = TML "Template Message Library" # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or # if some version control system is used. PROJECT_NUMBER = # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. OUTPUT_DIRECTORY = dox # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. # The default language is English, other supported languages are: # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en # (Japanese with English messages), Korean, Norwegian, Polish, Portuguese, # Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. OUTPUT_LANGUAGE = English # This tag can be used to specify the encoding used in the generated output. # The encoding is not always determined by the language that is chosen, # but also whether or not the output is meant for Windows or non-Windows users. # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES # forces the Windows encoding (this is the default for the Windows binary), # whereas setting the tag to NO uses a Unix-style encoding (the default for # all platforms other than Windows). USE_WINDOWS_ENCODING = NO # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in # documentation are documented, even if no documentation was available. # Private class members and static file members will be hidden unless # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES EXTRACT_ALL = NO # If the EXTRACT_PRIVATE tag is set to YES all private members of a class # will be included in the documentation. EXTRACT_PRIVATE = NO # If the EXTRACT_STATIC tag is set to YES all static members of a file # will be included in the documentation. EXTRACT_STATIC = NO # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) # defined locally in source files will be included in the documentation. # If set to NO only classes defined in header files are included. EXTRACT_LOCAL_CLASSES = YES # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all # undocumented members of documented classes, files or namespaces. # If set to NO (the default) these members will be included in the # various overviews, but no documentation section is generated. # This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_MEMBERS = NO # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all # undocumented classes that are normally visible in the class hierarchy. # If set to NO (the default) these classes will be included in the various # overviews. This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_CLASSES = NO # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all # friend (class|struct|union) declarations. # If set to NO (the default) these declarations will be included in the # documentation. HIDE_FRIEND_COMPOUNDS = NO # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any # documentation blocks found inside the body of a function. # If set to NO (the default) these blocks will be appended to the # function's detailed documentation block. HIDE_IN_BODY_DOCS = NO # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will # include brief member descriptions after the members that are listed in # the file and class documentation (similar to JavaDoc). # Set to NO to disable this. BRIEF_MEMBER_DESC = YES # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend # the brief description of a member or function before the detailed description. # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the # brief descriptions will be completely suppressed. REPEAT_BRIEF = YES # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then # Doxygen will generate a detailed section even if there is only a brief # description. ALWAYS_DETAILED_SEC = NO # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited # members of a class in the documentation of that class as if those members were # ordinary class members. Constructors, destructors and assignment operators of # the base classes will not be shown. INLINE_INHERITED_MEMB = NO # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full # path before files name in the file list and in the header files. If set # to NO the shortest path that makes the file name unique will be used. FULL_PATH_NAMES = NO # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag # can be used to strip a user-defined part of the path. Stripping is # only done if one of the specified strings matches the left-hand part of # the path. It is allowed to use relative paths in the argument list. STRIP_FROM_PATH = # The INTERNAL_DOCS tag determines if documentation # that is typed after a \internal command is included. If the tag is set # to NO (the default) then the documentation will be excluded. # Set it to YES to include the internal documentation. INTERNAL_DOCS = NO # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate # file names in lower-case letters. If set to YES upper-case letters are also # allowed. This is useful if you have classes or files whose names only differ # in case and if your file system supports case sensitive file names. Windows # users are advised to set this option to NO. CASE_SENSE_NAMES = YES # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter # (but less readable) file names. This can be useful is your file systems # doesn't support long names like on DOS, Mac, or CD-ROM. SHORT_NAMES = NO # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen # will show members with their full class and namespace scopes in the # documentation. If set to YES the scope will be hidden. HIDE_SCOPE_NAMES = NO # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen # will put a list of the files that are included by a file in the documentation # of that file. SHOW_INCLUDE_FILES = YES # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen # will interpret the first line (until the first dot) of a JavaDoc-style # comment as the brief description. If set to NO, the JavaDoc # comments will behave just like the Qt-style comments (thus requiring an # explict @brief command for a brief description. JAVADOC_AUTOBRIEF = NO # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen # treat a multi-line C++ special comment block (i.e. a block of //! or /// # comments) as a brief description. This used to be the default behaviour. # The new default is to treat a multi-line C++ comment block as a detailed # description. Set this tag to YES if you prefer the old behaviour instead. MULTILINE_CPP_IS_BRIEF = NO # If the DETAILS_AT_TOP tag is set to YES then Doxygen # will output the detailed description near the top, like JavaDoc. # If set to NO, the detailed description appears after the member # documentation. DETAILS_AT_TOP = NO # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented # member inherits the documentation from any documented member that it # reimplements. INHERIT_DOCS = YES # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. INLINE_INFO = YES # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen # will sort the (detailed) documentation of file and class members # alphabetically by member name. If set to NO the members will appear in # declaration order. SORT_MEMBER_DOCS = YES # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC # tag is set to YES, then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. DISTRIBUTE_GROUP_DOC = NO # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. TAB_SIZE = 4 # The GENERATE_TODOLIST tag can be used to enable (YES) or # disable (NO) the todo list. This list is created by putting \todo # commands in the documentation. GENERATE_TODOLIST = YES # The GENERATE_TESTLIST tag can be used to enable (YES) or # disable (NO) the test list. This list is created by putting \test # commands in the documentation. GENERATE_TESTLIST = YES # The GENERATE_BUGLIST tag can be used to enable (YES) or # disable (NO) the bug list. This list is created by putting \bug # commands in the documentation. GENERATE_BUGLIST = YES # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or # disable (NO) the deprecated list. This list is created by putting # \deprecated commands in the documentation. GENERATE_DEPRECATEDLIST= YES # This tag can be used to specify a number of aliases that acts # as commands in the documentation. An alias has the form "name=value". # For example adding "sideeffect=\par Side Effects:\n" will allow you to # put the command \sideeffect (or @sideeffect) in the documentation, which # will result in a user-defined paragraph with heading "Side Effects:". # You can put \n's in the value part of an alias to insert newlines. ALIASES = # The ENABLED_SECTIONS tag can be used to enable conditional # documentation sections, marked by \if sectionname ... \endif. ENABLED_SECTIONS = # The MAX_INITIALIZER_LINES tag determines the maximum number of lines # the initial value of a variable or define consists of for it to appear in # the documentation. If the initializer consists of more lines than specified # here it will be hidden. Use a value of 0 to hide initializers completely. # The appearance of the initializer of individual variables and defines in the # documentation can be controlled using \showinitializer or \hideinitializer # command in the documentation regardless of this setting. MAX_INITIALIZER_LINES = 30 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources # only. Doxygen will then generate output that is more tailored for C. # For instance, some of the names that are used will be different. The list # of all members will be omitted, etc. OPTIMIZE_OUTPUT_FOR_C = NO # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources # only. Doxygen will then generate output that is more tailored for Java. # For instance, namespaces will be presented as packages, qualified scopes # will look different, etc. OPTIMIZE_OUTPUT_JAVA = NO # Set the SHOW_USED_FILES tag to NO to disable the list of files generated # at the bottom of the documentation of classes and structs. If set to YES the # list will mention the files that were used to generate the documentation. SHOW_USED_FILES = YES #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- # The QUIET tag can be used to turn on/off the messages that are generated # by doxygen. Possible values are YES and NO. If left blank NO is used. QUIET = NO # The WARNINGS tag can be used to turn on/off the warning messages that are # generated by doxygen. Possible values are YES and NO. If left blank # NO is used. WARNINGS = YES # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings # for undocumented members. If EXTRACT_ALL is set to YES then this flag will # automatically be disabled. WARN_IF_UNDOCUMENTED = YES # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for # potential errors in the documentation, such as not documenting some # parameters in a documented function, or documenting parameters that # don't exist or using markup commands wrongly. WARN_IF_DOC_ERROR = YES # The WARN_FORMAT tag determines the format of the warning messages that # doxygen can produce. The string should contain the $file, $line, and $text # tags, which will be replaced by the file and line number from which the # warning originated and the warning text. WARN_FORMAT = "$file:$line: $text" # The WARN_LOGFILE tag can be used to specify a file to which warning # and error messages should be written. If left blank the output is written # to stderr. WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- # The INPUT tag can be used to specify the files and/or directories that contain # documented source files. You may enter file names like "myfile.cpp" or # directories like "/usr/src/myproject". Separate the files or directories # with spaces. INPUT = tml/include tml/include/comm tml/include/pack tml/include/type tml/comm tml/message tml/type # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank the following patterns are tested: # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp # *.h++ *.idl *.odl *.cs FILE_PATTERNS = # The RECURSIVE tag can be used to turn specify whether or not subdirectories # should be searched for input files as well. Possible values are YES and NO. # If left blank NO is used. RECURSIVE = NO # The EXCLUDE tag can be used to specify files and/or directories that should # excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. EXCLUDE = # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories # that are symbolic links (a Unix filesystem feature) are excluded from the input. EXCLUDE_SYMLINKS = NO # If the value of the INPUT tag contains directories, you can use the # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude # certain files from those directories. EXCLUDE_PATTERNS = # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see # the \include command). EXAMPLE_PATH = # If the value of the EXAMPLE_PATH tag contains directories, you can use the # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank all files are included. EXAMPLE_PATTERNS = # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # searched for input files to be used with the \include or \dontinclude # commands irrespective of the value of the RECURSIVE tag. # Possible values are YES and NO. If left blank NO is used. EXAMPLE_RECURSIVE = NO # The IMAGE_PATH tag can be used to specify one or more files or # directories that contain image that are included in the documentation (see # the \image command). IMAGE_PATH = # The INPUT_FILTER tag can be used to specify a program that doxygen should # invoke to filter for each input file. Doxygen will invoke the filter program # by executing (via popen()) the command , where # is the value of the INPUT_FILTER tag, and is the name of an # input file. Doxygen will then use the output that the filter program writes # to standard output. INPUT_FILTER = # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using # INPUT_FILTER) will be used to filter the input files when producing source # files to browse (i.e. when SOURCE_BROWSER is set to YES). FILTER_SOURCE_FILES = NO #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- # If the SOURCE_BROWSER tag is set to YES then a list of source files will # be generated. Documented entities will be cross-referenced with these sources. SOURCE_BROWSER = NO # Setting the INLINE_SOURCES tag to YES will include the body # of functions and classes directly in the documentation. INLINE_SOURCES = NO # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct # doxygen to hide any special comment blocks from generated source code # fragments. Normal C and C++ comments will always remain visible. STRIP_CODE_COMMENTS = YES # If the REFERENCED_BY_RELATION tag is set to YES (the default) # then for each documented function all documented # functions referencing it will be listed. REFERENCED_BY_RELATION = YES # If the REFERENCES_RELATION tag is set to YES (the default) # then for each documented function all documented entities # called/used by that function will be listed. REFERENCES_RELATION = YES # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen # will generate a verbatim copy of the header file for each class for # which an include is specified. Set to NO to disable this. VERBATIM_HEADERS = YES #--------------------------------------------------------------------------- # configuration options related to the alphabetical class index #--------------------------------------------------------------------------- # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index # of all compounds will be generated. Enable this if the project # contains a lot of classes, structs, unions or interfaces. ALPHABETICAL_INDEX = NO # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns # in which this list will be split (can be a number in the range [1..20]) COLS_IN_ALPHA_INDEX = 5 # In case all classes in a project start with a common prefix, all # classes will be put under the same header in the alphabetical index. # The IGNORE_PREFIX tag can be used to specify one or more prefixes that # should be ignored while generating the index headers. IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- # If the GENERATE_HTML tag is set to YES (the default) Doxygen will # generate HTML output. GENERATE_HTML = YES # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. HTML_OUTPUT = html # The HTML_FILE_EXTENSION tag can be used to specify the file extension for # each generated HTML page (for example: .htm,.php,.asp). If it is left blank # doxygen will generate files with .html extension. HTML_FILE_EXTENSION = .html # The HTML_HEADER tag can be used to specify a personal HTML header for # each generated HTML page. If it is left blank doxygen will generate a # standard header. HTML_HEADER = # The HTML_FOOTER tag can be used to specify a personal HTML footer for # each generated HTML page. If it is left blank doxygen will generate a # standard footer. HTML_FOOTER = # The HTML_STYLESHEET tag can be used to specify a user-defined cascading # style sheet that is used by each HTML page. It can be used to # fine-tune the look of the HTML output. If the tag is left blank doxygen # will generate a default style sheet HTML_STYLESHEET = # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. HTML_ALIGN_MEMBERS = YES # If the GENERATE_HTMLHELP tag is set to YES, additional index files # will be generated that can be used as input for tools like the # Microsoft HTML help workshop to generate a compressed HTML help file (.chm) # of the generated HTML documentation. GENERATE_HTMLHELP = NO # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can # be used to specify the file name of the resulting .chm file. You # can add a path in front of the file if the result should not be # written to the html output dir. CHM_FILE = # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can # be used to specify the location (absolute path including file name) of # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run # the HTML help compiler on the generated index.hhp. HHC_LOCATION = # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag # controls if a separate .chi index file is generated (YES) or that # it should be included in the master .chm file (NO). GENERATE_CHI = NO # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag # controls whether a binary table of contents is generated (YES) or a # normal table of contents (NO) in the .chm file. BINARY_TOC = NO # The TOC_EXPAND flag can be set to YES to add extra items for group members # to the contents of the HTML help documentation and to the tree view. TOC_EXPAND = NO # The DISABLE_INDEX tag can be used to turn on/off the condensed index at # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. DISABLE_INDEX = NO # This tag can be used to set the number of enum values (range [1..20]) # that doxygen will group on one line in the generated HTML documentation. ENUM_VALUES_PER_LINE = 4 # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be # generated containing a tree-like index structure (just like the one that # is generated for HTML Help). For this to work a browser that supports # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are # probably better off using the HTML help feature. GENERATE_TREEVIEW = NO # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree # is shown. TREEVIEW_WIDTH = 250 #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will # generate Latex output. GENERATE_LATEX = NO # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `latex' will be used as the default path. LATEX_OUTPUT = latex # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # invoked. If left blank `latex' will be used as the default command name. LATEX_CMD_NAME = latex # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to # generate index for LaTeX. If left blank `makeindex' will be used as the # default command name. MAKEINDEX_CMD_NAME = makeindex # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact # LaTeX documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_LATEX = NO # The PAPER_TYPE tag can be used to set the paper type that is used # by the printer. Possible values are: a4, a4wide, letter, legal and # executive. If left blank a4wide will be used. PAPER_TYPE = a4wide # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX # packages that should be included in the LaTeX output. EXTRA_PACKAGES = # The LATEX_HEADER tag can be used to specify a personal LaTeX header for # the generated latex document. The header should contain everything until # the first chapter. If it is left blank doxygen will generate a # standard header. Notice: only use this tag if you know what you are doing! LATEX_HEADER = # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated # is prepared for conversion to pdf (using ps2pdf). The pdf file will # contain links (just like the HTML output) instead of page references # This makes the output suitable for online browsing using a pdf viewer. PDF_HYPERLINKS = NO # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of # plain latex in the generated Makefile. Set this option to YES to get a # higher quality PDF documentation. USE_PDFLATEX = NO # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. # command to the generated LaTeX files. This will instruct LaTeX to keep # running if errors occur, instead of asking the user for help. # This option is also used when generating formulas in HTML. LATEX_BATCHMODE = NO # If LATEX_HIDE_INDICES is set to YES then doxygen will not # include the index chapters (such as File Index, Compound Index, etc.) # in the output. LATEX_HIDE_INDICES = NO #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output # The RTF output is optimised for Word 97 and may not look very pretty with # other RTF readers or editors. GENERATE_RTF = NO # The RTF_OUTPUT tag is used to specify where the RTF docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `rtf' will be used as the default path. RTF_OUTPUT = rtf # If the COMPACT_RTF tag is set to YES Doxygen generates more compact # RTF documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_RTF = NO # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated # will contain hyperlink fields. The RTF file will # contain links (just like the HTML output) instead of page references. # This makes the output suitable for online browsing using WORD or other # programs which support those fields. # Note: wordpad (write) and others do not support links. RTF_HYPERLINKS = NO # Load stylesheet definitions from file. Syntax is similar to doxygen's # config file, i.e. a series of assigments. You only have to provide # replacements, missing definitions are set to their default value. RTF_STYLESHEET_FILE = # Set optional variables used in the generation of an rtf document. # Syntax is similar to doxygen's config file. RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- # If the GENERATE_MAN tag is set to YES (the default) Doxygen will # generate man pages GENERATE_MAN = NO # The MAN_OUTPUT tag is used to specify where the man pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `man' will be used as the default path. MAN_OUTPUT = man # The MAN_EXTENSION tag determines the extension that is added to # the generated man pages (default is the subroutine's section .3) MAN_EXTENSION = .3 # If the MAN_LINKS tag is set to YES and Doxygen generates man output, # then it will generate one additional man file for each entity # documented in the real man page(s). These additional files # only source the real man page, but without them the man command # would be unable to find the correct page. The default is NO. MAN_LINKS = NO #--------------------------------------------------------------------------- # configuration options related to the XML output #--------------------------------------------------------------------------- # If the GENERATE_XML tag is set to YES Doxygen will # generate an XML file that captures the structure of # the code including all documentation. Note that this # feature is still experimental and incomplete at the # moment. GENERATE_XML = NO # The XML_OUTPUT tag is used to specify where the XML pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `xml' will be used as the default path. XML_OUTPUT = xml # The XML_SCHEMA tag can be used to specify an XML schema, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_SCHEMA = # The XML_DTD tag can be used to specify an XML DTD, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_DTD = #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will # generate an AutoGen Definitions (see autogen.sf.net) file # that captures the structure of the code including all # documentation. Note that this feature is still experimental # and incomplete at the moment. GENERATE_AUTOGEN_DEF = NO #--------------------------------------------------------------------------- # configuration options related to the Perl module output #--------------------------------------------------------------------------- # If the GENERATE_PERLMOD tag is set to YES Doxygen will # generate a Perl module file that captures the structure of # the code including all documentation. Note that this # feature is still experimental and incomplete at the # moment. GENERATE_PERLMOD = NO # If the PERLMOD_LATEX tag is set to YES Doxygen will generate # the necessary Makefile rules, Perl scripts and LaTeX code to be able # to generate PDF and DVI output from the Perl module output. PERLMOD_LATEX = NO # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be # nicely formatted so it can be parsed by a human reader. This is useful # if you want to understand what is going on. On the other hand, if this # tag is set to NO the size of the Perl module output will be much smaller # and Perl will parse it just the same. PERLMOD_PRETTY = YES # The names of the make variables in the generated doxyrules.make file # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. # This is useful so different doxyrules.make files included by the same # Makefile don't overwrite each other's variables. PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- # Configuration options related to the preprocessor #--------------------------------------------------------------------------- # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will # evaluate all C-preprocessor directives found in the sources and include # files. ENABLE_PREPROCESSING = YES # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro # names in the source code. If set to NO (the default) only conditional # compilation will be performed. Macro expansion can be done in a controlled # way by setting EXPAND_ONLY_PREDEF to YES. MACRO_EXPANSION = NO # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES # then the macro expansion is limited to the macros specified with the # PREDEFINED and EXPAND_AS_PREDEFINED tags. EXPAND_ONLY_PREDEF = NO # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files # in the INCLUDE_PATH (see below) will be search if a #include is found. SEARCH_INCLUDES = YES # The INCLUDE_PATH tag can be used to specify one or more directories that # contain include files that are not input files but should be processed by # the preprocessor. INCLUDE_PATH = # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # patterns (like *.h and *.hpp) to filter out the header-files in the # directories. If left blank, the patterns specified with FILE_PATTERNS will # be used. INCLUDE_FILE_PATTERNS = # The PREDEFINED tag can be used to specify one or more macro names that # are defined before the preprocessor is started (similar to the -D option of # gcc). The argument of the tag is a list of macros of the form: name # or name=definition (no spaces). If the definition and the = are # omitted =1 is assumed. PREDEFINED = # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then # this tag can be used to specify a list of macro names that should be expanded. # The macro definition that is found in the sources will be used. # Use the PREDEFINED tag if you want to use a different macro definition. EXPAND_AS_DEFINED = # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then # doxygen's preprocessor will remove all function-like macros that are alone # on a line, have an all uppercase name, and do not end with a semicolon. Such # function macros are typically used for boiler-plate code, and will confuse the # parser if not removed. SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration::addtions related to external references #--------------------------------------------------------------------------- # The TAGFILES option can be used to specify one or more tagfiles. # Optionally an initial location of the external documentation # can be added for each tagfile. The format of a tag file without # this location is as follows: # TAGFILES = file1 file2 ... # Adding location for the tag files is done as follows: # TAGFILES = file1=loc1 "file2 = loc2" ... # where "loc1" and "loc2" can be relative or absolute paths or # URLs. If a location is present for each tag, the installdox tool # does not have to be run to correct the links. # Note that each tag file must have a unique name # (where the name does NOT include the path) # If a tag file is not located in the directory in which doxygen # is run, you must also specify the path to the tagfile here. TAGFILES = # When a file name is specified after GENERATE_TAGFILE, doxygen will create # a tag file that is based on the input files it reads. GENERATE_TAGFILE = # If the ALLEXTERNALS tag is set to YES all external classes will be listed # in the class index. If set to NO only the inherited external classes # will be listed. ALLEXTERNALS = NO # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed # in the modules index. If set to NO, only the current project's groups will # be listed. EXTERNAL_GROUPS = YES # The PERL_PATH should be the absolute path and name of the perl script # interpreter (i.e. the result of `which perl'). PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or # super classes. Setting the tag to NO turns the diagrams off. Note that this # option is superceded by the HAVE_DOT option below. This is only a fallback. It is # recommended to install and use dot, since it yields more powerful graphs. CLASS_DIAGRAMS = YES # If set to YES, the inheritance and collaboration graphs will hide # inheritance and usage relations if the target is undocumented # or is not a class. HIDE_UNDOC_RELATIONS = YES # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is # available from the path. This tool is part of Graphviz, a graph visualization # toolkit from AT&T and Lucent Bell Labs. The other options in this section # have no effect if this option is set to NO (the default) HAVE_DOT = YES # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect inheritance relations. Setting this tag to YES will force the # the CLASS_DIAGRAMS tag to NO. CLASS_GRAPH = YES # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect implementation dependencies (inheritance, containment, and # class references variables) of the class with other documented classes. COLLABORATION_GRAPH = YES # If the UML_LOOK tag is set to YES doxygen will generate inheritance and # colloborations diagrams in a style similiar to the OMG's Unified Modeling # Language. UML_LOOK = YES # If set to YES, the inheritance and collaboration graphs will show the # relations between templates and their instances. TEMPLATE_RELATIONS = NO # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT # tags are set to YES then doxygen will generate a graph for each documented # file showing the direct and indirect include dependencies of the file with # other documented files. INCLUDE_GRAPH = YES # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and # HAVE_DOT tags are set to YES then doxygen will generate a graph for each # documented header file showing the documented files that directly or # indirectly include this file. INCLUDED_BY_GRAPH = YES # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will # generate a call dependency graph for every global function or class method. # Note that enabling this option will significantly increase the time of a run. # So in most cases it will be better to enable call graphs for selected # functions only using the \callgraph command. CALL_GRAPH = NO # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen # will graphical hierarchy of all classes instead of a textual one. GRAPHICAL_HIERARCHY = YES # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images # generated by dot. Possible values are png, jpg, or gif # If left blank png will be used. DOT_IMAGE_FORMAT = png # The tag DOT_PATH can be used to specify the path where the dot tool can be # found. If left blank, it is assumed the dot tool can be found on the path. DOT_PATH = # The DOTFILE_DIRS tag can be used to specify one or more directories that # contain dot files that are included in the documentation (see the # \dotfile command). DOTFILE_DIRS = # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width # (in pixels) of the graphs generated by dot. If a graph becomes larger than # this value, doxygen will try to truncate the graph, so that it fits within # the specified constraint. Beware that most browsers cannot cope with very # large images. MAX_DOT_GRAPH_WIDTH = 1024 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height # (in pixels) of the graphs generated by dot. If a graph becomes larger than # this value, doxygen will try to truncate the graph, so that it fits within # the specified constraint. Beware that most browsers cannot cope with very # large images. MAX_DOT_GRAPH_HEIGHT = 1024 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the # graphs generated by dot. A depth value of 3 means that only nodes reachable # from the root by following a path via at most 3 edges will be shown. Nodes that # lay further from the root node will be omitted. Note that setting this option to # 1 or 2 may greatly reduce the computation time needed for large code bases. Also # note that a graph may be further truncated if the graph's image dimensions are # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). # If 0 is used for the depth value (the default), the graph is not depth-constrained. MAX_DOT_GRAPH_DEPTH = 0 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will # generate a legend page explaining the meaning of the various boxes and # arrows in the dot generated graphs. GENERATE_LEGEND = YES # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will # remove the intermediate dot files that are used to generate # the various graphs. DOT_CLEANUP = YES #--------------------------------------------------------------------------- # Configuration::addtions related to the search engine #--------------------------------------------------------------------------- # The SEARCHENGINE tag specifies whether or not a search engine should be # used. If set to NO the values of all tags below this one will be ignored. SEARCHENGINE = NO # The CGI_NAME tag should be the name of the CGI script that # starts the search engine (doxysearch) with the correct parameters. # A script with this name will be generated by doxygen. CGI_NAME = search.cgi # The CGI_URL tag should be the absolute URL to the directory where the # cgi binaries are located. See the documentation of your http daemon for # details. CGI_URL = # The DOC_URL tag should be the absolute URL to the directory where the # documentation is located. If left blank the absolute path to the # documentation, with file:// prepended to it, will be used. DOC_URL = # The DOC_ABSPATH tag should be the absolute path to the directory where the # documentation is located. If left blank the directory on the local machine # will be used. DOC_ABSPATH = # The BIN_ABSPATH tag must point to the directory where the doxysearch binary # is installed. BIN_ABSPATH = /usr/local/bin/ # The EXT_DOC_PATHS tag can be used to specify one or more paths to # documentation generated for other projects. This allows doxysearch to search # the documentation for these projects as well. EXT_DOC_PATHS = ./tml/message/0000775000175000017500000000000012176660653013057 5ustar vborosvboros./tml/message/CMakeLists.txt0000664000175000017500000000043412176660653015620 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(TmlMessage SHARED ${MODEL_SRC_LIB}) TARGET_LINK_LIBRARIES(TmlMessage ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS TmlMessage DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./tml/message/pack.cpp0000664000175000017500000000312112176660653014476 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/message/packed_message_interface.h" //---- // partial specialisations of the pack/unpack functions // for simple data types. //--- int --- template<> void TML_PackedMessageInterface::pack(const int& i) { append(i); } template<> void TML_PackedMessageInterface::unpack(int& i) { i=pop_int(); } //--- double ---- template<> void TML_PackedMessageInterface::pack(const double& d) { append(d); } template<> void TML_PackedMessageInterface::unpack(double& d) { d=pop_double(); } /*! Pack a Vec3 into a TML packed message \param p the Vec3 */ template<> void TML_PackedMessageInterface::pack(const Vec3& v) { append(v.X()); append(v.Y()); append(v.Z()); } /*! Unpack a Vec3 from a TML packed message \param p the Vec3 */ template<> void TML_PackedMessageInterface::unpack(Vec3& v) { double db[3]; pop_doubles(db,3); v=Vec3(db[0],db[1],db[2]); } ./tml/message/multi_message_slab.cpp0000664000175000017500000000562112176660653017426 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/message/multi_message_slab.h" #include "tml/message/packed_multi_message.h" /*! construct TML_PackedMultiMessageSlab \param msg the multimessage to which the slab belongs \param idx the index */ TML_PackedMultiMessageSlab::TML_PackedMultiMessageSlab(TML_PackedMultiMessage* msg,int idx) { m_msg=msg; m_idx=idx; } /*! reset the packing pointer */ void TML_PackedMultiMessageSlab::begin_pack() { m_msg->begin_pack(m_idx); } /*! reset the unpacking pointer */ void TML_PackedMultiMessageSlab::begin_unpack() { m_msg->begin_unpack(m_idx); } /*! pack integer into the slab \param i the interger */ void TML_PackedMultiMessageSlab::append(int i) { m_msg->append(i,m_idx); } /*! pack a double into the slab \param d the double */ void TML_PackedMultiMessageSlab::append(double d) { m_msg->append(d,m_idx); } /*! pack a STL string into the slab \param s the string */ void TML_PackedMultiMessageSlab::append(const string& s) { m_msg->append(s,m_idx); } /*! Append a Vec3 to the message buffer. Calls append(double) per element */ void TML_PackedMultiMessageSlab::append(const Vec3& v) { m_msg->append(v[0],m_idx); m_msg->append(v[1],m_idx); m_msg->append(v[2],m_idx); } /*! pack a booleam value into the slab \param b the boolean value */ void TML_PackedMultiMessageSlab::append(bool b) { m_msg->append(b,m_idx); } /*! pop an int from the slab */ int TML_PackedMultiMessageSlab::pop_int() { return m_msg->pop_int(m_idx); } /*! pop a double from the slab */ double TML_PackedMultiMessageSlab::pop_double() { return m_msg->pop_double(m_idx); } /*! pop an array of doubles from the slab \warning not implemented */ void TML_PackedMultiMessageSlab::pop_doubles(double*,int) {} /*! pop a STL string from the slab \warning not implemented */ string TML_PackedMultiMessageSlab::pop_string() { string s; return s; } /*! Pop a Vec3 of the buffer. Calls pop_double per element */ Vec3 TML_PackedMultiMessageSlab::pop_vec3() { Vec3 res; res[0]=m_msg->pop_double(m_idx); res[1]=m_msg->pop_double(m_idx); res[2]=m_msg->pop_double(m_idx); return res; } /*! pop a boolean value from the slab */ bool TML_PackedMultiMessageSlab::pop_bool() { return m_msg->pop_bool(m_idx); } ./tml/message/pack.h0000664000175000017500000000335512176660653014154 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _PACK_H #define _PACK_H //--- project includes --- #include "tml/message/packed_message_interface.h" /*! \file pack.h */ /*! \fn TML_pack(TML_Packed_Message*,const T&); \brief templated function to pack objects into a TML_Packed_Message Implemented as separate template function and not as member function of the object to be packed for the following reasons: a) it forces redefinition in each derived class, even if there is a packing function for the base class b) it makes packing for builtin types consistent */ template void TML_pack(TML_PackedMessageInterface*,const T&); /*! \fn TML_unpack(TML_Packed_Message*,T&); \brief templated function to unpack objects from a TML_Packed_Message Implemented as separate template function and not as member function of the object to be packed for the following reasons: a) it forces redefinition in each derived class, even if there is a packing function for the base class b) it makes packing for builtin types consistent */ template void TML_unpack(TML_PackedMessageInterface*,T&); #endif //_PACK_H ./tml/message/packed_message_interface.h0000664000175000017500000000314712176660653020210 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PACKED_MESSAGE_INTERFACE_H #define __PACKED_MESSAGE_INTERFACE_H //--- project includes --- #include "Foundation/vec3.h" // for append(Vec3), pop_vec3() //--- STL includes --- #include using std::string; /*! \class TML_PackedMessageInterface \brief Abstract base/interface class for packed messages to be used in TML_Pack */ class TML_PackedMessageInterface { public: virtual void begin_pack()=0; virtual void begin_unpack()=0; virtual void append(int)=0; virtual void append(double)=0; virtual void append(const string&)=0; virtual void append(const Vec3&)=0; virtual void append(bool)=0; virtual int pop_int()=0; virtual double pop_double()=0; virtual void pop_doubles(double*,int)=0; virtual string pop_string()=0; virtual Vec3 pop_vec3()=0; virtual bool pop_bool()=0; template void pack(const T&); template void unpack(T&); }; #endif //__PACKED_MESSAGE_INTERFACE_H ./tml/message/pack.hpp0000664000175000017500000000173712176660653014516 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template<> template void TML_PackedMessageInterface::pack >(const pair& p) { pack(p.first); pack(p.second); } template void TML_PackedMessageInterface::unpack >(pair& p) { unpack(p.first); unpack(p.second); } ./tml/message/packed_multi_message.h0000664000175000017500000000446612176660653017407 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PACKED_MULTI_MESSAGE_H #define __PACKED_MULTI_MESSAGE_H //--- MPI --- #include //--- project includes --- #include "tml/message/multi_message_slab.h" //--- STL includes --- #include using std::string; /*! \class TML_PackedMultiMessage \brief Message buffer for sending and receiving packed data to mutltiple receivers. Data types are not checked. The implementation has been derived from the old CMPIVarSGBufferRoot class */ class TML_PackedMultiMessage { private: MPI_Comm m_comm; char* m_vbuffer; int m_vbuffersize; //!< the size of the buffer per slice int *m_position; //!< the current end of the content in each slice int *m_rpos; //!< the number of bytes in the slice (i.e. m_position-m_displ) int *m_recvcount;//!< the buffer for the transfer of the size of the vbuffer int *m_displ; // /*! Constructor. Allocates the buffer and sets the MPI communicator to be used for pack/unpack operations. If the initial buffer size is not given a buffer of initial size 64 is allocated. \param comm the MPI communicator \param s the initial size of the buffer */ TML_Packed_Message::TML_Packed_Message(MPI_Comm comm,unsigned int s) { m_comm=comm; m_buffersize=s; m_buffer=new char[m_buffersize]; m_pack_pos=0; m_unpack_pos=0; MPI_Pack_size(1,MPI_INT,m_comm,&m_int_increment); MPI_Pack_size(1,MPI_DOUBLE,m_comm,&m_dbl_increment); } /*! Destructor. Free buffer. */ TML_Packed_Message::~TML_Packed_Message() { delete [] m_buffer; } /*! Grows the buffer to a given size. If the buffer is already larger that the given size, nothing is done. Used by receiveFrom. \param size size to which the buffer is grown */ void TML_Packed_Message::growTo(int size) { if(size>m_buffersize){ char *temp = new char[size]; memcpy((void*)temp,m_buffer,size_t(m_pack_pos)); delete [] m_buffer; m_buffer = temp; m_buffersize = size; } } /*! Grows the buffer to twice its current size, thus guaranteeing that append works in amortized constant time. */ void TML_Packed_Message::grow() { growTo(2*m_buffersize); } /*! Append an integer to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer */ void TML_Packed_Message::append(int i) { while(m_pack_pos+m_int_increment>m_buffersize){ // to small, grow grow(); } MPI_Pack(&i,1,MPI_INT,m_buffer,m_buffersize,&m_pack_pos,m_comm); } /*! Append a double to the buffer. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void TML_Packed_Message::append(double d) { while(m_pack_pos+m_dbl_increment>m_buffersize){ // to small, grow grow(); } MPI_Pack(&d,1,MPI_DOUBLE,m_buffer,m_buffersize,&m_pack_pos,m_comm); } /*! Append a STL string to the buffer. The string is internally handeled by packing the length frist and then the string. If necessary, the buffer is enlarged. \warning currently does not check if there is enough free space to allocate larger buffer \sa grow() */ void TML_Packed_Message::append(const string& str) { int len=str.size(); while (m_pack_pos+m_int_increment+len>m_buffersize){ grow(); } MPI_Pack(&len,1,MPI_INT,m_buffer,m_buffersize,&m_pack_pos,m_comm); MPI_Pack((void *)str.c_str(),len,MPI_CHAR,m_buffer,m_buffersize,&m_pack_pos,m_comm); } /*! Append a Vec3 to the message buffer. Calls append(double) per element */ void TML_Packed_Message::append(const Vec3& v) { append(v[0]); append(v[1]); append(v[2]); } /*! Append a boolean to the message buffer. The bool gest transported as an int (1/0) because MPI doesn't have a native boolean type. Therefore calls append(int). */ void TML_Packed_Message::append(bool b) { int i; if(b){i=1;} else {i=0;} append(i); } /*! Pops an integer from the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them as an int. \warning No check for underflow \return the int. */ int TML_Packed_Message::pop_int() { int res; MPI_Unpack(m_buffer,m_buffersize,&m_unpack_pos,&res,1,MPI_INT,m_comm); return res; } /*! Pops a double from the buffer. \warning No check for underflow \return the double. \sa CMPIBuffer::pop_int() */ double TML_Packed_Message::pop_double() { double res; MPI_Unpack(m_buffer,m_buffersize,&m_unpack_pos,&res,1,MPI_DOUBLE,m_comm); return res; } /*! pop a C-array of doubles from a buffer. Faster than doing multiple pop_double operations \param dbl the array \param ndb the number of doubles to be popped \warning No check for underflow */ void TML_Packed_Message::pop_doubles(double *dbl,int ndb) { MPI_Unpack(m_buffer,m_buffersize,&m_unpack_pos,dbl,ndb,MPI_DOUBLE,m_comm); } /*! Pops a string from the buffer. The first for bytes are interpreted as int, giving the length of the string (without terminating '\0'), the rest as the characters. \warning no consistency check, i.e. it is not checked if the length is smaller than the buffersize. \return the double. \sa CMPISingle::pop_int() */ string TML_Packed_Message::pop_string() { int len; char* res; MPI_Unpack(m_buffer,m_buffersize,&m_unpack_pos,&len,1,MPI_INT,m_comm); res=new char[len+1]; // +1 for terminating '\0' MPI_Unpack(m_buffer,m_buffersize,&m_unpack_pos,res,len,MPI_CHAR,m_comm); res[len]='\0'; string str=string(res); delete [] res; return str; } /*! Pop a Vec3 of the buffer. Calls pop_double per element */ Vec3 TML_Packed_Message::pop_vec3() { Vec3 res; res[0]=pop_double(); res[1]=pop_double(); res[2]=pop_double(); return res; } /*! Pop a boolean value of the buffer. Booleans are transported as int (0/1) */ bool TML_Packed_Message::pop_bool() { bool res; int i; i=pop_int(); res=(i==1); return res; } ./tml/message/packed_multi_message.cpp0000664000175000017500000001521612176660653017735 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/message/packed_multi_message.h" //--- I/O --- #include #include using std::cout; using std::endl; using std::flush; /*! Constructor for TML_PackedMultiMessage \param comm the MPI communicator \param isize initial buffer size per slice, default 64 byte */ TML_PackedMultiMessage::TML_PackedMultiMessage(MPI_Comm comm,int isize) { m_comm=comm; MPI_Comm_size(m_comm,&m_size); m_vbuffersize=isize; m_vbuffer=new char[m_vbuffersize*m_size]; m_position=new int[m_size]; m_rpos=new int[m_size]; m_recvcount=new int[m_size]; // setup initial displacements in buffer m_displ=new int[m_size]; for(int i=0;im_vbuffersize){ char *temp=m_vbuffer; int vbs_old=m_vbuffersize; m_vbuffersize=size; m_vbuffer=new char[m_vbuffersize*m_size]; for(int i=0;im_vbuffersize){ // to small, grow grow(); } MPI_Pack(&i,1,MPI_INT,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); m_rpos[nslice]=m_position[nslice]-m_displ[nslice]; } /*! Append a double to a given slice of the buffer. \param d the double \param nslice the nr. of the slice \warning No check for overflow */ void TML_PackedMultiMessage::append(double d,int nslice) { if((m_position[nslice]-m_displ[nslice])+m_dbl_increment>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&d,1,MPI_DOUBLE,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); m_rpos[nslice]=m_position[nslice]-m_displ[nslice]; } /*! Append a STL-string to a given slice of the buffer. \param str the string \param nslice the nr. of the slice \warning No check for overflow */ void TML_PackedMultiMessage::append(const string& str,int nslice) { int len=str.size(); if((m_position[nslice]-m_displ[nslice])+m_int_increment+len>m_vbuffersize){ // to small, grow grow(); } MPI_Pack(&len,1,MPI_INT,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); MPI_Pack((void *)str.c_str(),len,MPI_CHAR,m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),m_comm); m_rpos[nslice]=m_position[nslice]-m_displ[nslice]; } /*! Append boolean value to a given slice of the buffer. \param b the boolean \param nslice the nr. of the slice */ void TML_PackedMultiMessage::append(bool b, int nslice) { int i; if(b) {i=1;} else {i=0;} append(i,nslice); } /*! Pops an integer from a given slice of the the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them as an int. \param nslice the nr. of the slice \return the int. \warning No check for underflow */ int TML_PackedMultiMessage::pop_int(int nslice) { int res; MPI_Unpack(m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),&res,1,MPI_INT,m_comm); return res; } /*! Pops a double from a given slice of the the buffer. \param nslice the nr. of the slice \return the double. \warning No check for underflow */ double TML_PackedMultiMessage::pop_double(int nslice) { double res; MPI_Unpack(m_vbuffer,m_vbuffersize*m_size,&(m_position[nslice]),&res,1,MPI_DOUBLE,m_comm); return res; } /*! Pops a string from a given slice of the the buffer. \param nslice the nr. of the slice \return the string. \warning Not implemented \todo implement */ //string TML_PackedMultiMessage::pop_string(int nslice) string TML_PackedMultiMessage::pop_string() { return ""; } /*! Pops a boolean from a given slice of the the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them as a boolean (via pop_int()). \param nslice the nr. of the slice \return the boolean value \warning No check for underflow */ bool TML_PackedMultiMessage::pop_bool(int nslice) { int i=pop_int(nslice); return (i==1); } ./tml/message/Makefile.am0000664000175000017500000000175212176660653015120 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libTmlMessage.la libTmlMessage_la_SOURCES = multi_message_slab.cpp pack.cpp packed_message.cpp packed_multi_message.cpp message.h multi_message_slab.h packed_message.h packed_message_interface.h packed_multi_message.h pack.h pack.hpp libTmlMessage_la_LIBADD = ./tml/message/packed_message.h0000664000175000017500000000425012176660653016164 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PACKED_MESSAGE_H #define __PACKED_MESSAGE_H //--- MPI --- #include //--- project includes --- #include "tml/message/packed_message_interface.h" #include "Foundation/vec3.h" // for append(Vec3), pop_vec3() //--- STL includes --- #include using std::string; /*! \class TML_Packed_Message \brief Message buffer for sending and receiving packed data. Data types are not checked. The implementation has been derived from the old CVarMPIBuffer class */ class TML_Packed_Message : public TML_PackedMessageInterface { protected: MPI_Comm m_comm; char* m_buffer; int m_buffersize; //!< the size of the buffer int m_pack_pos; //!< the current end of the content int m_unpack_pos; //!< the current pos for unpacking int m_int_increment,m_dbl_increment; //!< the "packing size" of int/double void grow(); void growTo(int); public: TML_Packed_Message(MPI_Comm,unsigned int size=64); virtual ~TML_Packed_Message(); char* buffer(){return m_buffer;}; // make protected ? int size(){return m_pack_pos;}; virtual void begin_pack(){m_pack_pos=0;}; virtual void begin_unpack(){m_unpack_pos=0;}; virtual void append(int); virtual void append(double); virtual void append(const string&); virtual void append(const Vec3&); virtual void append(bool); virtual int pop_int(); virtual double pop_double(); virtual void pop_doubles(double*,int); virtual string pop_string(); virtual Vec3 pop_vec3(); virtual bool pop_bool(); }; #endif //__PACKED_MESSAGE_H ./tml/message/multi_message_slab.h0000664000175000017500000000331312176660653017067 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MULTI_MESSAGE_SLAB_H #define __MULTI_MESSAGE_SLAB_H //--- MPI --- #include //--- project includes--- #include "tml/message/packed_message_interface.h" #include "Foundation/vec3.h" // for append(Vec3), pop_vec3() //--- forward declarations --- class TML_PackedMultiMessage; /*! \class TML_PackedMultiMessageSlab \brief Handle class to access multimessages via a packed message interface */ class TML_PackedMultiMessageSlab : public TML_PackedMessageInterface { private: TML_PackedMultiMessage *m_msg; int m_idx; public: TML_PackedMultiMessageSlab(TML_PackedMultiMessage*,int); virtual void begin_pack(); virtual void begin_unpack(); virtual void append(int); virtual void append(double); virtual void append(const string&); virtual void append(const Vec3&); virtual void append(bool); virtual int pop_int(); virtual double pop_double(); virtual void pop_doubles(double*,int); virtual string pop_string(); virtual Vec3 pop_vec3(); virtual bool pop_bool(); }; #endif //__MULTI_MESSAGE_SLAB_H ./tml/message/message.h0000664000175000017500000000221612176660653014655 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESSAGE_H #define __MESSAGE_H #include /*! \class TML_Message \brief Abstract base class for MPI message \author Steffen Abe $Revision$ $Date$ */ class TML_Message { protected: MPI_Status m_status; public: virtual ~TML_Message(){}; virtual void clear()=0; virtual size_t size(); template virtual void append(T)=0; template virtual pop(T&)=0; const MPI_Status& status(){return m_status;}; }; #endif // __MESSAGE_H ./tml/Makefile.am0000664000175000017500000000137412176660653013474 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am SUBDIRS = message type comm #benchmark ./tml/test/0000775000175000017500000000000012176660653012412 5ustar vborosvboros./tml/test/test_pack.h0000664000175000017500000000152312176660653014541 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TEST_PACK_H #define __TEST_PACK_H //--- TML --- #include "pack.h" #include "comm.h" bool test_group_pack(TML_Comm *comm, int rank); #endif //__TEST_PACK_H ./tml/test/test_sc.cpp0000664000175000017500000001326012176660653014564 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "test_sc.h" //--- I/O includes --- #include using std::cout; using std::endl; using std::flush; //--- STL --- #include #include #include using std::vector; using std::set; using std::multimap; // test scatter bool test_scatter(TML_Comm *comm, int rank) { bool res=true; if(rank==0){ // rank 0 is sender // prepare send data multimap sdata; sdata.insert(pair(1,3.5)); sdata.insert(pair(1,4.5)); sdata.insert(pair(2,5.5)); sdata.insert(pair(2,6.5)); sdata.insert(pair(2,7.5)); comm->scatter(sdata); } else { // other ranks receive vector rdata; comm->recv_scatter(rdata,0); // test if(rank==1){ res=(rdata.size()==2)&&(rdata[0]==3.5)&&(rdata[1]==4.5); } else if(rank==2){ res=(rdata.size()==3)&&(rdata[0]==5.5)&&(rdata[1]==6.5)&&(rdata[2]==7.5); } } return res; } // test gather bool test_gather(TML_Comm *comm, int rank) { vector sdata; multimap rdata; bool res=true; // setup data if(rank==0){ sdata.push_back(2.2); sdata.push_back(3.3); comm->send_gather(sdata,2); } else if(rank==1){ sdata.push_back(4.4); sdata.push_back(5.5); sdata.push_back(6.6); comm->send_gather(sdata,2); } else { // rank 2 == root -> receive comm->gather(rdata); // test res=(rdata.count(0)==2) && (rdata.count(1)==3) && (rdata.count(2)==0); if(res){ multimap::const_iterator iter; iter=rdata.find(0); res=res&&(iter->second==2.2); iter++; res=res&&(iter->second==3.3); iter=rdata.find(1); res=res&&(iter->second==4.4); iter++; res=res&&(iter->second==5.5); iter++; res=res&&(iter->second==6.6); } } return res; } // test scatter packed bool test_scatter_packed(TML_Comm *comm, int rank) { bool res=true; if(rank==0){ // rank 0 is sender // prepare send data multimap sdata; sdata.insert(pair(1,3.5)); sdata.insert(pair(1,4.5)); sdata.insert(pair(2,5.5)); sdata.insert(pair(2,6.5)); sdata.insert(pair(2,7.5)); comm->scatter_packed(sdata); } else { // other ranks receive vector rdata; comm->recv_scatter_packed(rdata,0); // test if(rank==1){ res=(rdata.size()==2)&&(rdata[0]==3.5)&&(rdata[1]==4.5); } else if(rank==2){ res=(rdata.size()==3)&&(rdata[0]==5.5)&&(rdata[1]==6.5)&&(rdata[2]==7.5); } } return res; } // test broadcast bool test_broadcast(TML_Comm *comm, int rank) { bool res=true; if(rank==0){ // rank 0 is sender comm->broadcast(42); } else { int data; comm->recv_broadcast(data,0); // test res=(data==42); } return res; } // test broadcast_cont bool test_broadcast_cont(TML_Comm *comm, int rank) { bool res=true; vector sdata; vector rdata; if(rank==0){ // rank 0 is sender sdata.push_back(3.14159); sdata.push_back(1.41421); comm->broadcast_cont(sdata); } else { comm->recv_broadcast_cont(rdata,0); //test if(rdata.size()==2){ res=(rdata[0]==3.14159) && (rdata[1]==1.41421); }else{ res=false; cout << "process " << rank << "received wrong size " << rdata.size() << endl; } } return res; } // test broadcast_cont_packed bool test_broadcast_cont_packed(TML_Comm *comm, int rank) { bool res=true; vector sdata; vector rdata; if(rank==0){ // rank 0 is sender sdata.push_back(3.14159); sdata.push_back(1.41421); comm->broadcast_cont_packed(sdata); } else { comm->recv_broadcast_cont_packed(rdata,0); //test if(rdata.size()==2){ res=(rdata[0]==3.14159) && (rdata[1]==1.41421); }else{ res=false; cout << "process " << rank << "received wrong size " << rdata.size() << endl; } } return res; } bool test_group_sc(TML_Comm *comm, int rank) { bool res=true; if(test_scatter(comm,rank)){ cout << "test_scatter sucessfull" << endl; }else{ res=false; cout << "test_scatter failed" << endl; } if(test_gather(comm,rank)){ cout << "test_gather sucessfull" << endl; }else{ res=false; cout << "test_gather failed" << endl; } if(test_scatter_packed(comm,rank)){ cout << "test_scatter_packed sucessfull" << endl; }else{ res=false; cout << "test_scatter_packed failed" << endl; } if(test_broadcast(comm,rank)){ cout << "test_broadcast sucessfull" << endl; }else{ res=false; cout << "test_broadcast failed" << endl; } if(test_broadcast_cont(comm,rank)){ cout << "test_broadcast_cont sucessfull" << endl; } else{ res=false; cout << "test_broadcast_cont failed" << endl; } if(test_broadcast_cont_packed(comm,rank)){ cout << "test_broadcast_cont_packed sucessfull" << endl; } else{ res=false; cout << "test_broadcast_cont_packed failed" << endl; } cout << "finished test_group_sc"<< endl; return res; } ./tml/test/test_pack.cpp0000664000175000017500000001741712176660653015105 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "test_pack.h" //--- I/O includes --- #include using std::cout; using std::endl; using std::flush; //--- STL --- #include using std::vector; //--- project includes --- #include "packed_message.h" #include "packed_multi_message.h" // test 1 : // pack and unpack some buildin data types (no communication) bool test_pack(TML_Comm *comm, int rank) { bool res=true; TML_Packed_Message msg(comm->comm(),4); // force grow() int j,i=42; double e,d=2.718; if(rank==0){ // pack msg.pack(i); msg.pack(d); cout << "packed size: " << msg.size() << endl; // unpack msg.begin_unpack(); msg.unpack(j); msg.unpack(e); cout << "unpacked : " << j << " , " << e << endl; // ckeck res=(j==42)&&(e=2.718); } return res; } // test 2 // pack/unpack some buildin data types (no communication), checked // pack/unpack buildin data types to/from multi-message bool test_pack_multi(TML_Comm *comm, int rank) { bool res=true; TML_PackedMultiMessage msg(comm->comm(),4); // force grow() int j,i=42; double e,d=2.718; if(rank==0){ // pack msg[1].pack(i); msg[1].pack(d); //cout << "packed size: " << msg.size() << endl; // unpack msg.begin_unpack(1); msg[1].unpack(j); msg[1].unpack(e); cout << "multi unpacked : " << j << " , " << e << endl; // ckeck res=(j==42)&&(e=2.718); } return res; } // test 3 : // packed send and receive a container of builtin values bool test_container_packed(TML_Comm *comm, int rank) { vector vdata0; vector vdata1; bool res=true; if(rank==0){ vdata0.push_back(69); vdata0.push_back(70); comm->send_cont_packed(vdata0,1,false,3); }else if (rank==1){ comm->receive_cont_packed(vdata1,0,false,3); std::cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ std::cout << *iter << " "; } std::cout << std::endl; // check if(vdata1.size()==2){ res=(vdata1[0]==69)&&(vdata1[1]==70); } else { res=false; } } return res; } // test 4: // packed sendrecv container of builtin values bool test_container_sendrecv_packed(TML_Comm *comm, int rank) { vector vdata0; vector vdata1; bool res=true; if(rank==0){ //vdata0.push_back(69); //vdata0.push_back(70); comm->sendrecv_cont_packed(vdata0,vdata1,MPI_PROC_NULL,1,0); cout << "rank " << rank << " received packed cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ cout << *iter << " "; } // check if(vdata1.size()==3){ res=(vdata1[0]==42)&&(vdata1[1]==43)&&(vdata1[2]==44); } else { res=false; } }else if (rank==1){ vdata0.push_back(42); vdata0.push_back(43); vdata0.push_back(44); comm->sendrecv_cont_packed(vdata0,vdata1,0,MPI_PROC_NULL,0); cout << "rank " << rank << " received packed cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ cout << *iter << " "; } cout << endl; // check if(vdata1.size()==2){ res=(vdata1[0]==69)&&(vdata1[1]==70); } else { res=false; } } return res; } // test 5: // packed replace sendrecv container of builtin values bool test_container_sendrecv_packed_replace(TML_Comm *comm, int rank) { vector vdata; bool res=true; if(rank==0){ vdata.push_back(69); vdata.push_back(70); comm->sendrecv_cont_packed_replace(vdata,1,1,0); cout << "rank " << rank << " received packed cont.: \n"; for(std::vector::iterator iter=vdata.begin(); iter!=vdata.end(); iter++){ cout << *iter << " "; } // check if(vdata.size()==3){ res=(vdata[0]==42)&&(vdata[1]==43)&&(vdata[2]==44); } else { res=false; } }else if (rank==1){ vdata.push_back(42); vdata.push_back(43); vdata.push_back(44); comm->sendrecv_cont_packed_replace(vdata,0,0,0); cout << "rank " << rank << " received packed cont.: \n"; for(std::vector::iterator iter=vdata.begin(); iter!=vdata.end(); iter++){ cout << *iter << " "; } cout << endl; // check if(vdata.size()==2){ res=(vdata[0]==69)&&(vdata[1]==70); } else { res=false; } } return res; } // packed send/receive of user defined type // new pack/unpack functions template<> void TML_PackedMessageInterface::pack >(const pair& p) { append(p.first); append(p.second); } template<> void TML_PackedMessageInterface::unpack >(pair& p) { p.first=pop_int(); p.second=pop_double(); } bool test_container_packed_user(TML_Comm *comm, int rank) { vector > vdata0; vector > vdata1; bool res=true; if(rank==0){ vdata0.push_back(pair(69,2.718)); vdata0.push_back(pair(42,3.14159)); comm->send_cont_packed(vdata0,1,false,3); }else if (rank==1){ comm->receive_cont_packed(vdata1,0,false,3); std::cout << "rank " << rank << " received cont.: \n"; for(std::vector >::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ std::cout << "(" << iter->first << "," << iter->second << ") " ; } std::cout << std::endl; // check if(vdata1.size()==2){ res=(vdata1[0].first==69)&&(vdata1[0].second==2.718)&& (vdata1[1].first==42)&&(vdata1[1].second==3.14159); } else { res=false; } } return res; } // do all tests in this group bool test_group_pack(TML_Comm *comm, int rank) { bool res=true; cout << "begin test group packed" << endl; // test 1 if(test_pack(comm,rank)){ cout << "pack/unpack test sucessfull" << endl; }else{ res=false; cout << "pack/unpack test failed" << endl; } // multi message pack/unpack if(test_pack_multi(comm,rank)){ cout << "multi message pack/unpack test sucessfull" << endl; }else{ res=false; cout << "multi message pack/unpack test failed" << endl; } // test 3 if(test_container_packed(comm,rank)){ cout << "test_container_packed sucessfull" << endl; }else{ res=false; cout << "test_container_packed failed" << endl; } // test 3 user def if(test_container_packed_user(comm,rank)){ cout << "test_container_packed_user sucessfull" << endl << flush; }else{ res=false; cout << "test_container_packed_user failed" << endl<< flush; } MPI_Barrier(MPI_COMM_WORLD); cout << "past barrier" << endl << flush; // test 4 if(test_container_sendrecv_packed(comm,rank)){ cout << "test_container_sendrecv_packed sucessfull" << endl << flush; }else{ res=false; cout << "test_container_sendrecv_packed failed" << endl << flush; } MPI_Barrier(MPI_COMM_WORLD); // test 5 if(test_container_sendrecv_packed_replace(comm,rank)){ cout << "test_container_sendrecv_packed_replace sucessfull" << endl << flush; }else{ res=false; cout << "test_container_sendrecv_packed_replace failed" << endl << flush; } MPI_Barrier(MPI_COMM_WORLD); cout << "finished test group packed" << endl << flush; return res; } ./tml/test/test_cart.cpp0000664000175000017500000000736512176660653015121 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "test_cart.h" //--- TML --- #include //--- I/O includes --- #include using std::cout; using std::endl; //--- STL --- #include using std::vector; // construct cartesian communicator TML_CartComm cart_comm_build(TML_Comm *comm, bool circular) { std::vector dims; std::vector period; dims.push_back(comm->size()); period.push_back(circular); return TML_CartComm(comm,1,dims,period); } // construct cartesian communicator without given dimensions bool test_cart_comm_build(TML_Comm *comm) { std::vector period; TML_CartComm *cc=new TML_CartComm(comm,3,vector(3,0),vector(3,false)); delete cc; return true; } // get coords bool test_get_coords(TML_CartComm *comm,int rank) { bool res=true; vector mycoords=comm->get_coords(); // my own coords vector othercoords=comm->get_coords(1); // coords of rank 1 // check own coords if(mycoords.size()==1){ cout << "own coords of rank " << rank << " : " << mycoords[0] << endl; if(mycoords[0]!=rank){ res=false; } } else { res=false; } //check other coords if(othercoords.size()==1){ cout << "coords of rank 1 from rank " << rank << " : " << othercoords[0] << endl; if(othercoords[0]!=1){ res=false; } } else { res=false; } return res; } // test shift functions // because they are based on the sendrecv* stuff, only one (shift_cont) is tested bool test_shift(TML_CartComm *comm,int rank,bool circ) { bool res=true; std::vector vdata0,vdata1; // setup data vdata0.push_back(rank+69); vdata0.push_back(rank+70); // shift by 1 in direction 0 comm->shift_cont(vdata0,vdata1,0,1,42); //check result if(circ){ // circular boudary cond. }else{ //open boundary cond. if(rank==0){ // shouldn't get any if(vdata1.size()!=0){ res=false; cout << "rank 0 shouldn't have received anything" << endl; } } else { // should get 69,70 if(vdata1.size()==2){ res=(vdata1[0]==69) && (vdata1[1]=70); cout << "rank 1 received : " << vdata1[0] << " " << vdata1[1] << endl; } else { cout << "rank 1 wrong recv. size " << vdata1.size() << endl; res=false; } } } return res; } // do all tests in this group bool test_group_cart(TML_Comm *comm, int rank) { bool res=true; // build 2 cartesian comms (circular/open) TML_CartComm circular_comm=cart_comm_build(comm,true); TML_CartComm open_comm=cart_comm_build(comm,false); // tests if(test_get_coords(&circular_comm,rank)){ cout << "test_get_coords sucessfull" << endl; }else{ res=false; cout << "test_get_coords failed" << endl; } if(test_cart_comm_build(comm)){ cout << "test_cart_comm sucessfull" << endl; }else{ res=false; cout << "test_cart_comm failed" << endl; } // shift with open bcond if(test_shift(&open_comm,rank,false)){ cout << "test_shift with open boundarys sucessfull" << endl; }else{ res=false; cout << "test_shift with open boundarys failed" << endl; } cout << "finished test group cartesian" << endl; return res; } ./tml/test/test.cpp0000664000175000017500000000477712176660653014114 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- MPI --- #include //--- TML --- #include "comm_world.h" //--- Test groups --- #include "test_comm.h" #include "test_pack.h" #include "test_cart.h" #include "test_sc.h" //--- System includes --- #include using std::cout; using std::endl; using std::flush; //--- STL --- #include using std::vector; int main(int argc, char** argv) { bool res=true; MPI_Init(&argc,&argv); TML_CommWorld worldcomm; int rank=worldcomm.rank(); // normal communication if(test_group_comm(&worldcomm,rank)){ cout << "TML_Comm tests sucessfull" << endl << flush; }else{ res=false; cout << "TML_Comm tests failed" << endl << flush; } MPI_Barrier(MPI_COMM_WORLD); // packed communication if(worldcomm.size()==3){ // currently requires 3 nodes if(test_group_pack(&worldcomm,rank)){ cout << "TML_Comm packed communication tests sucessfull" << endl << flush; }else{ res=false; cout << "TML_Comm packed communication tests failed" << endl << flush; } } MPI_Barrier(MPI_COMM_WORLD); // cartesian communicator communication if(test_group_cart(&worldcomm,rank)){ cout << "TML_CartComm communication tests sucessfull" << endl << flush; }else{ res=false; cout << "TML_CartComm communication tests failed" << endl << flush; } MPI_Barrier(MPI_COMM_WORLD); // scatter/gather tests if(worldcomm.size()==3){ // currently requires 3 node if(test_group_sc(&worldcomm,rank)){ cout << "scatter/gather tests sucessfull" << endl << flush; } else{ res=false; cout << "scatter/gather tests failed" << endl << flush; } } MPI_Barrier(MPI_COMM_WORLD); MPI_Finalize(); if(res){ cout << rank << " finalized - all tests succeeded" << endl; } else { cout << rank << " finalized - some tests failed" << endl; } return 0; } ./tml/test/test_comm.h0000664000175000017500000000150712176660653014560 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TEST_COMM_H #define __TEST_COMM_H //--- TML --- #include "comm_world.h" bool test_group_comm(TML_Comm *comm, int rank); #endif //__TEST_COMM_H ./tml/test/test_cart_old.cpp0000664000175000017500000000326412176660653015751 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- MPI --- #include //--- TML --- #include "comm_world.h" #include "cart_comm.h" //--- System includes --- #include //--- STL --- #include int main(int argc, char** argv) { int data0,data1=0; std::vector dims; std::vector vdata0,vdata1; std::vector period; MPI_Init(&argc,&argv); TML_CommWorld worldcomm; dims.push_back(worldcomm.size()); period.push_back(true); TML_CartComm cartcomm(&worldcomm,1,dims,period); data0=cartcomm.rank()+42; vdata0.push_back(cartcomm.rank()+69); vdata0.push_back(cartcomm.rank()+70); cartcomm.shift_cont(vdata0,vdata1,0,1,0); std::cout << "rank " << worldcomm.rank() << " recveived cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ std::cout << *iter << " "; } std::cout << std::endl; //cartcomm.shift(data0,data1,0,1,0); //std::cout << "rank " << worldcomm.rank() << " recveived: " << data1 << std::endl; MPI_Finalize(); return 0; } ./tml/test/test.rpo0000664000175000017500000001421512176660653014116 0ustar vborosvborosM test/test.cpp D /home/steffen/src/tml A '-c' '-Wall' '-ansi' '-frepo' '-I/home/steffen/src/tml/comm' '-I/usr/local/include/oompi' '-I/usr/lib/lam/include/' '-Itest' '-Icomm' '-o' 'test/test.o' O _ZSt14__copy_trivialIiEPT_PKS0_S3_S1_ O _ZSt11__copy_aux2IiEPT_S1_S1_S1_5_BoolILb1EE O _ZSt11__copy_aux2IiEPT_PKS0_S3_S1_5_BoolILb1EE O _ZSt10__copy_auxIPiS0_iET0_T_S2_S1_PT1_ O _ZSt10__copy_auxIPKiPiiET0_T_S4_S3_PT1_ O _ZSt12__value_typeIPKiEPNSt15iterator_traitsIT_E10value_typeERKS3_ O _ZSt10__copy_ni2IPiSt17__normal_iteratorIS0_St6vectorIiSaIiEEEET0_T_S7_S6_5_BoolILb1EE O _ZSt10__copy_ni2IPKiPiET0_T_S4_S3_5_BoolILb0EE O _ZNKSt17__normal_iteratorIPKiSt6vectorIiSaIiEEE4baseEv O _ZSt10__copy_ni1ISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_5_BoolILb1EE O _ZNSt23__malloc_alloc_templateILi0EE13_S_oom_mallocEj O _ZNSt24__copy_backward_dispatchIPiS0_5_BoolILb1EEE4copyEPKiS5_S0_ O _ZNSt24__default_alloc_templateILb1ELi0EE22_S_node_allocator_lockE O _ZSt10__copy_ni1ISt17__normal_iteratorIPKiSt6vectorIiSaIiEEEPiET0_T_S9_S8_5_BoolILb1EE O _ZSt13__destroy_auxISt17__normal_iteratorIPiSt6vectorIiSaIiEEEEvT_S6_5_BoolILb1EE O _ZSt4copyISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_ O _ZNSt24__default_alloc_templateILb1ELi0EE9_S_refillEj O _ZNSt24__default_alloc_templateILb1ELi0EE11_S_round_upEj O _ZNSt23__malloc_alloc_templateILi0EE8allocateEj O _ZSt19__copy_backward_auxIPiS0_ET0_T_S2_S1_ O _ZNSt24__default_alloc_templateILb1ELi0EE5_LockD1Ev O _ZNSt24__default_alloc_templateILb1ELi0EE5_LockD2Ev O _ZNSt24__default_alloc_templateILb1ELi0EE5_LockC1Ev O _ZNSt24__default_alloc_templateILb1ELi0EE5_LockC2Ev O _ZNSt24__default_alloc_templateILb1ELi0EE17_S_freelist_indexEj O _ZNSt24__default_alloc_templateILb1ELi0EE12_S_free_listE O _ZNSt23__malloc_alloc_templateILi0EE10deallocateEPvj O _ZSt4copyISt17__normal_iteratorIPKiSt6vectorIiSaIiEEEPiET0_T_S9_S8_ O _ZSt9__destroyISt17__normal_iteratorIPiSt6vectorIiSaIiEEEiEvT_S6_PT0_ O _ZSt24__uninitialized_copy_auxISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_5_BoolILb1EE O _ZNSt24__default_alloc_templateILb1ELi0EE8allocateEj O _ZSt38__copy_backward_output_normal_iteratorIPiSt17__normal_iteratorIS0_St6vectorIiSaIiEEEET0_T_S7_S6_5_BoolILb1EE O _ZNSt24__default_alloc_templateILb1ELi0EE10deallocateEPvj O _ZSt24__uninitialized_copy_auxISt17__normal_iteratorIPKiSt6vectorIiSaIiEEEPiET0_T_S9_S8_5_BoolILb1EE O _ZSt8_DestroyISt17__normal_iteratorIPiSt6vectorIiSaIiEEEEvT_S6_ O _ZSt20__uninitialized_copyISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_iET0_T_S7_S6_PT1_ O _ZSt12__value_typeISt17__normal_iteratorIPiSt6vectorIiSaIiEEEEPNSt15iterator_traitsIT_E10value_typeERKS7_ O _ZNSt12simple_allocIiSt24__default_alloc_templateILb1ELi0EEE8allocateEj O _ZSt37__copy_backward_input_normal_iteratorISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_5_BoolILb1EE O _ZNSt12simple_allocIiSt24__default_alloc_templateILb1ELi0EEE10deallocateEPij O _ZNKSs6_M_repEv O _ZSt20__uninitialized_copyISt17__normal_iteratorIPKiSt6vectorIiSaIiEEEPiiET0_T_S9_S8_PT1_ O _ZSt12__value_typeIPiEPNSt15iterator_traitsIT_E10value_typeERKS2_ O _ZNSt17__normal_iteratorIPKiSt6vectorIiSaIiEEEC1ERKS1_ O _ZNSt17__normal_iteratorIPKiSt6vectorIiSaIiEEEC2ERKS1_ O _ZNSaIiEC1ERKS_ O _ZNSaIiEC2ERKS_ O _ZNKSt18_Vector_alloc_baseIiSaIiELb1EE13get_allocatorEv O _ZNKSt17__normal_iteratorIPKiSt6vectorIiSaIiEEEmiERKS5_ O _ZSt7destroyISt17__normal_iteratorIPiSt6vectorIiSaIiEEEEvT_S6_ O _ZNSt17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv O _ZNKSt17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv O _ZSt18uninitialized_copyISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_ O _ZNSt18_Vector_alloc_baseIiSaIiELb1EE11_M_allocateEj O _ZSt13copy_backwardISt17__normal_iteratorIPiSt6vectorIiSaIiEEES5_ET0_T_S7_S6_ O _ZSt10_ConstructIiiEvPT_RKT0_ O _ZNSt18_Vector_alloc_baseIiSaIiELb1EE13_M_deallocateEPij O _ZNSt18_Vector_alloc_baseIiSaIiELb1EEC1ERKS0_ O _ZNSt18_Vector_alloc_baseIiSaIiELb1EEC2ERKS0_ O _ZNKSs4dataEv O _ZNKSs7_M_dataEv O _ZNKSs4sizeEv O _ZSteqIPiS0_St6vectorIiSaIiEEEbRKSt17__normal_iteratorIT_T1_ERKS4_IT0_S6_E O _ZNSt17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS0_ O _ZNSt17__normal_iteratorIPiSt6vectorIiSaIiEEEC2ERKS0_ O _ZNSolsEl O _ZNSolsEm O _ZSt18uninitialized_copyISt17__normal_iteratorIPKiSt6vectorIiSaIiEEEPiET0_T_S9_S8_ O _ZNKSt6vectorIiSaIiEE3endEv O _ZNKSt6vectorIiSaIiEE5beginEv O _ZNSt12_Vector_baseIiSaIiEEC1EjRKS0_ O _ZNSt12_Vector_baseIiSaIiEEC2EjRKS0_ O _ZNKSt6vectorIiSaIiEE13get_allocatorEv O _ZNKSt6vectorIiSaIiEE4sizeEv C _ZNSt6vectorIiSaIiEE13_M_insert_auxESt17__normal_iteratorIPiS1_ERKi O _ZSt9constructIiiEvPT_RKT0_ O _ZSt7destroyIPiEvT_S1_ O _ZNSt12_Vector_baseIiSaIiEED1Ev O _ZNSt12_Vector_baseIiSaIiEED2Ev O _ZNSt12_Vector_baseIiSaIiEEC1ERKS0_ O _ZNSt12_Vector_baseIiSaIiEEC2ERKS0_ O _ZNKSs7compareERKSs O _ZNSolsEPFRSoS_E O _ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_ O _ZNKSt17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv O _ZNSt17__normal_iteratorIPiSt6vectorIiSaIiEEEppEi O _ZStneIPiS0_St6vectorIiSaIiEEEbRKSt17__normal_iteratorIT_T1_ERKS4_IT0_S6_E O _ZNSt6vectorIiSaIiEE3endEv O _ZNSt6vectorIiSaIiEE5beginEv O _ZNSolsEi O _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc O _ZTVSo O _ZTVSt9basic_iosIcSt11char_traitsIcEE O _ZNSt6vectorIiSaIiEEC1ERKS1_ O _ZNSt6vectorIiSaIiEEC2ERKS1_ O _ZNSt6vectorIiSaIiEE9push_backERKi O _ZNSt6vectorIiSaIiEED1Ev O _ZNSt6vectorIiSaIiEED2Ev O _ZNSt6vectorIiSaIiEEC1ERKS0_ O _ZNSt6vectorIiSaIiEEC2ERKS0_ O _ZNSaIiED1Ev O _ZNSaIiED2Ev O _ZNSaIiEC1Ev O _ZNSaIiEC2Ev O _ZTVSt15messages_bynameIwE O _ZTVSt8messagesIwE O _ZTVSt15messages_bynameIcE O _ZTVSt8messagesIcE O _ZTVSt10moneypunctIwLb0EE O _ZTVSt10moneypunctIcLb0EE O _ZTVSt14collate_bynameIwE O _ZTVSt14collate_bynameIcE O _ZTVSt7collateIwE O _ZTVSt7collateIcE O _ZTVSt8numpunctIwE O _ZTVSt8numpunctIcE O _ZTVSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE O _ZTVSt23__codecvt_abstract_baseIwc11__mbstate_tE O _ZTVSt23__codecvt_abstract_baseIcc11__mbstate_tE O _ZTVSt12ctype_bynameIcE O _ZTVSt21__ctype_abstract_baseIwE O _ZTVSt21__ctype_abstract_baseIcE O _ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_ O _ZSt30__lexicographical_compare_3wayIPKaS1_EiT_S2_T0_S3_ O _ZSt3minIiERKT_S2_S2_ O _ZSt23lexicographical_compareIPKaS1_EbT_S2_T0_S3_ O _ZSt3minIjERKT_S2_S2_ ./tml/test/test_comm.cpp0000664000175000017500000002410312176660653015110 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "test_comm.h" //--- I/O includes --- #include using std::cout; using std::endl; using std::flush; //--- STL --- #include #include #include using std::vector; using std::set; using std::pair; //--- other includes --- #include "vec3.h" #include "vec3_mpi.h" // test communicator construction bool test_const(TML_Comm *comm, int rank) { bool res=true; vector ids; ids.push_back(0); TML_Comm newcomm=comm->include(ids); cout << "rank " << rank << "past 1" << endl << flush; int nrank=newcomm.rank(); cout << "rank " << rank << "past 2" << endl << flush; if(rank==0){ res=(nrank==0); } else { res=(nrank==MPI_UNDEFINED); } MPI_Barrier(MPI_COMM_WORLD); return res; } // send and receive simple data types bool test_simple(TML_Comm *comm, int rank) { int data0,data1=0; bool res=true; if(rank==0){ data0=69; comm->send(data0,1,0); } else if(rank==1){ comm->receive(data1,0,0); cout << "rank " << rank << " received: " << data1 << endl; res=(data1==69); } return res; } // test 2 : // sendrecv simple data bool test_simple_sendrecv(TML_Comm *comm, int rank) { int data0,data1=0; bool res=true; if(rank==0){ data0=69; comm->sendrecv(data0,data1,1,1,2); cout << "rank " << rank << " received: " << data1 << endl; res=(data1==42); res=true; } else if(rank==1){ data0=42; comm->sendrecv(data0,data1,0,0,2); cout << "rank " << rank << " received: " << data1 << endl; res=(data1==69); } return res; } // test 3 : // send and receive array data bool test_array(TML_Comm *comm, int rank) { return true; } // test 4 : // sendrecv array data bool test_array_sendrecv(TML_Comm *comm, int rank) { return true; } // test 5 : // send and receive container bool test_container(TML_Comm *comm, int rank) { vector vdata0; vector vdata1; bool res=true; // test with sequence container (vector) if(rank==0){ vdata0.push_back(69); vdata0.push_back(70); comm->send_cont(vdata0,1,0); }else if (rank==1){ vdata0.push_back(71); comm->receive_cont(vdata1,0,0); std::cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ std::cout << *iter << " "; } std::cout << std::endl; // check if(vdata1.size()==3){ res=(vdata1[0]==71)&&(vdata1[1]==69)&&(vdata1[2]==70); } else { res=false; } } // test with associative container (set) set mdata0; set mdata1; if(rank==0){ mdata0.insert(69.0); mdata0.insert(70.0); comm->send_cont(mdata0,1,0); }else if (rank==1){ comm->receive_cont(mdata1,0,0); std::cout << "rank " << rank << " received cont.: \n"; for(std::set::iterator iter=mdata1.begin(); iter!=mdata1.end(); iter++){ std::cout << *iter << " "; } std::cout << std::endl; // check if(mdata1.size()==2){ res=(mdata1.find(69)!=mdata1.end())&&(mdata1.find(70)!=mdata1.end()); } else { res=false; } } return res; } // test 6 : // sendrecv container bool test_container_sendrecv (TML_Comm *comm, int rank) { vector vdata0; vector vdata1; bool res=true; if(rank==0){ vdata0.push_back(69); vdata0.push_back(70); comm->sendrecv_cont(vdata0,vdata1,1,1,0); cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ cout << *iter << " "; } // check if(vdata1.size()==3){ res=(vdata1[0]==42)&&(vdata1[1]==43)&&(vdata1[2]==44); } else { res=false; } }else if (rank==1){ vdata0.push_back(42); vdata0.push_back(43); vdata0.push_back(44); comm->sendrecv_cont(vdata0,vdata1,0,0,0); cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ cout << *iter << " "; } cout << endl; // check if(vdata1.size()==2){ res=(vdata1[0]==69)&&(vdata1[1]==70); } else { res=false; } } return res; } // test 7 : // sendrecv_replace container bool test_container_sendrecv_replace (TML_Comm *comm, int rank) { vector vdata; bool res=true; if(rank==0){ vdata.push_back(69); vdata.push_back(70); comm->sendrecv_cont_replace(vdata,1,1,0); cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata.begin(); iter!=vdata.end(); iter++){ cout << *iter << " "; } // check if(vdata.size()==3){ res=(vdata[0]==42)&&(vdata[1]==43)&&(vdata[2]==44); } else { res=false; } }else if (rank==1){ vdata.push_back(42); vdata.push_back(43); vdata.push_back(44); comm->sendrecv_cont_replace(vdata,0,0,0); cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata.begin(); iter!=vdata.end(); iter++){ cout << *iter << " "; } cout << endl; // check if(vdata.size()==2){ res=(vdata[0]==69)&&(vdata[1]==70); } else { res=false; } } return res; } // send and receive container of complex data (Vec3) bool test_container_vec3(TML_Comm *comm, int rank) { vector vdata0; vector vdata1; bool res=true; // test with sequence container (vector) if(rank==0){ vdata0.push_back(Vec3(1.0,2.0,3.0)); vdata0.push_back(Vec3(4.0,5.0,6.0)); comm->send_cont(vdata0,1,0); }else if (rank==1){ comm->receive_cont(vdata1,0,0); std::cout << "rank " << rank << " received cont.: \n"; for(std::vector::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ std::cout << *iter << " "; } std::cout << std::endl; // check if(vdata1.size()==2){ res=(vdata1[0].X()=1.0)&&(vdata1[0].Y()==2.0)&&(vdata1[0].Z()==3.0)&& (vdata1[1].X()=4.0)&&(vdata1[1].Y()==5.0)&&(vdata1[1].Z()==6.0); } else { res=false; } } return res; } // send and receive pairs bool test_pair(TML_Comm *comm, int rank) { pair data0,data1; bool res=true; if(rank==0){ data0=make_pair(42,2.71828); comm->send(data0,1,0); } else if(rank==1){ comm->receive(data1,0,0); cout << "rank " << rank << " received: [" << data1.first << "," << data1.second <<"]"<< endl; res=(data1.first==42)&&(data1.second==2.71828); cout << "diff: " << data1.second-2.71828 << endl; } return res; } // send and receive map bool test_container_map(TML_Comm *comm, int rank) { map vdata0; map vdata1; bool res=true; // test with sequence container (vector) if(rank==0){ vdata0[2]=2.71828; vdata0[5]=3.14159; comm->send_cont(vdata0,1,0); }else if (rank==1){ comm->receive_cont(vdata1,0,0); cout << "rank " << rank << " received map.: \n"; for(map::iterator iter=vdata1.begin(); iter!=vdata1.end(); iter++){ cout << "[" << iter->first << "," << iter->second << "] "; } cout << endl; // check if(vdata1.size()==2){ res=(vdata1[2]==2.71828)&&(vdata1[5]==3.14159); } else { res=false; } } return res; } // test summation and distribution to all bool test_sum_all(TML_Comm *comm, int rank) { bool res=true; double data=rank; double sum; sum=comm->sum_all(data); // check int n=comm->size(); double expected_sum=double((n*(n-1))/2); cout << "comm size= " << n << " expected sum = " << expected_sum << " sum= " << sum << endl; res=(sum==expected_sum); return res; } bool test_group_comm(TML_Comm *comm, int rank) { bool res=true; cout << "begin test group comm" << endl; if(test_const(comm,rank)){ cout << "test_const sucessfull" << endl; }else{ res=false; cout << "test_const failed" << endl; } // test 1 if(test_simple(comm,rank)){ cout << "test_simple sucessfull" << endl; }else{ res=false; cout << "test_simple failed" << endl; } // test pair if(test_pair(comm,rank)){ cout << "test_pair sucessfull" << endl; }else{ res=false; cout << "test_pair failed" << endl; } // test 2 if(test_simple_sendrecv(comm,rank)){ cout << "test_simple_sendrecv sucessfull" << endl; }else{ res=false; cout << "test_simple_sendrecv failed" << endl; } // test 5 if(test_container(comm,rank)){ cout << "test_container sucessfull" << endl; }else{ res=false; cout << "test_container failed" << endl; } if(test_container_vec3(comm,rank)){ cout << "test_container_vec3 sucessfull" << endl; }else{ res=false; cout << "test_container_vec3 failed" << endl; } if(test_container_map(comm,rank)){ cout << "test_container_map sucessfull" << endl; }else{ res=false; cout << "test_container_map failed" << endl; } // test 6 if(test_container_sendrecv(comm,rank)){ cout << "test_container_sendrecv sucessfull" << endl; }else{ res=false; cout << "test_container_sendrecv failed" << endl; } // test 7 if(test_container_sendrecv_replace(comm,rank)){ cout << "test_container_sendrecv_replace sucessfull" << endl; }else{ res=false; cout << "test_container_sendrecv_replace failed" << endl; } // test sum_all if(test_sum_all(comm,rank)){ cout << "test_sum_all sucessfull" << endl; }else{ res=false; cout << "test_sum_all failed" << endl; } cout << "finished test group comm" << endl; return res; } ./tml/test/test_sc.h0000664000175000017500000000147112176660653014232 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TEST_SC_H #define __TEST_SC_H //--- TML --- #include "comm.h" bool test_group_sc(TML_Comm *comm, int rank); #endif //__TEST_SC_H ./tml/test/tesp_sc.cpp0000664000175000017500000000226712176660653014565 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "test_comm.h" //--- I/O includes --- #include using std::cout; using std::endl; using std::flush; //--- STL --- #include #include #include using std::vector; using std::set; using std::multimap; // test scatter bool test_scatter(TML_Comm *comm, int rank) { bool res=true; return res; } // test gather bool test_gather(TML_Comm *comm, int rank) { bool res=true; return res; } bool test_group_sc(TML_Comm *comm, int rank) { bool res=true; return res; } ./tml/test/test_cart.h0000664000175000017500000000152312176660653014554 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TEST_CART_H #define __TEST_CART_H //--- TML --- #include "pack.h" #include "comm.h" bool test_group_cart(TML_Comm *comm, int rank); #endif //__TEST_CART_H ./tml/type/0000775000175000017500000000000012176660653012414 5ustar vborosvboros./tml/type/gettype.hpp0000664000175000017500000001123012176660653014603 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //=== PAIR ==== template MPI_Datatype SGetType::operator()(const pair& P) { if(!tml_pair::initialized){ MPI_Aint addr_first,addr_second; MPI_Aint disp[2]; MPI_Datatype type[2]; int blocklen[2]={1,1}; MPI_Address((void*)&P.first,&addr_first); MPI_Address((void*)&P.second,&addr_second); disp[0]=MPI_Aint(0); disp[1]=addr_second-addr_first; type[0]=GetType(P.first); type[1]=GetType(P.second); MPI_Type_struct(2,blocklen,disp,type,&tml_pair::type); MPI_Type_commit(&tml_pair::type); tml_pair::initialized=true; } return tml_pair::type; } // === TRIPLET=== template MPI_Datatype SGetType::operator()(const esys::lsm::triplet &PP) { if(!tml_trip::initialized){ esys::lsm::triplet P(PP); MPI_Aint addr[3]; MPI_Aint disp[3]; MPI_Datatype type[3]; int blocklen[3]={1,1,1}; MPI_Address(static_cast(&(P.template get<0>())), &(addr[0])); MPI_Address(static_cast(&(P.template get<1>())), &(addr[1])); MPI_Address(static_cast(&(P.template get<2>())), &(addr[2])); disp[0]=MPI_Aint(0); disp[1]=addr[1]-addr[0]; disp[2]=addr[2]-addr[0]; type[0]=GetType(P.template get<0>()); type[1]=GetType(P.template get<1>()); type[2]=GetType(P.template get<2>()); MPI_Type_struct(3,blocklen,disp,type,&tml_trip::type); MPI_Type_commit(&tml_trip::type); tml_trip::initialized = true; } return tml_trip::type; } //=== QUAD === template MPI_Datatype SGetType::operator()(const esys::lsm::quadtuple &PP) { if(!tml_quad::initialized){ esys::lsm::quadtuple P(PP); MPI_Aint addr[4]; MPI_Aint disp[4]; MPI_Datatype type[4]; int blocklen[4]={1,1,1,1}; MPI_Address(static_cast(&(P.template get<0>())), &(addr[0])); MPI_Address(static_cast(&(P.template get<1>())), &(addr[1])); MPI_Address(static_cast(&(P.template get<2>())), &(addr[2])); MPI_Address(static_cast(&(P.template get<3>())), &(addr[3])); disp[0]=MPI_Aint(0); disp[1]=addr[1]-addr[0]; disp[2]=addr[2]-addr[0]; disp[3]=addr[3]-addr[0]; type[0]=GetType(P.template get<0>()); type[1]=GetType(P.template get<1>()); type[2]=GetType(P.template get<2>()); type[3]=GetType(P.template get<3>()); MPI_Type_struct(4,blocklen,disp,type,&tml_quad::type); MPI_Type_commit(&tml_quad::type); tml_quad::initialized = true; } return tml_quad::type; } //=== QUINT === template MPI_Datatype SGetType::operator()(const esys::lsm::quintuple &PP) { if(!tml_quin::initialized){ esys::lsm::quintuple P(PP); MPI_Aint addr[5]; MPI_Aint disp[5]; MPI_Datatype type[5]; int blocklen[5]={1,1,1,1,1}; MPI_Address(static_cast(&(P.template get<0>())), &(addr[0])); MPI_Address(static_cast(&(P.template get<1>())), &(addr[1])); MPI_Address(static_cast(&(P.template get<2>())), &(addr[2])); MPI_Address(static_cast(&(P.template get<3>())), &(addr[3])); MPI_Address(static_cast(&(P.template get<4>())), &(addr[4])); disp[0]=MPI_Aint(0); disp[1]=addr[1]-addr[0]; disp[2]=addr[2]-addr[0]; disp[3]=addr[3]-addr[0]; disp[4]=addr[4]-addr[0]; type[0]=GetType(P.template get<0>()); type[1]=GetType(P.template get<1>()); type[2]=GetType(P.template get<2>()); type[3]=GetType(P.template get<3>()); type[4]=GetType(P.template get<4>()); MPI_Type_struct(5,blocklen,disp,type,&tml_quin::type); MPI_Type_commit(&tml_quin::type); tml_quin::initialized = true; } return tml_quin::type; } ./tml/type/CMakeLists.txt0000664000175000017500000000042312176660653015153 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(TmlType SHARED ${MODEL_SRC_LIB}) TARGET_LINK_LIBRARIES(TmlType ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS TmlType DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./tml/type/gettype.h0000664000175000017500000000631212176660653014250 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __GETTYPE_H #define __GETTYPE_H //--- MPI --- #include //--- STL includes --- #include #include #include #include using std::pair; /*! \class SGetType \brief static function object to extract MPI type from data in a consistent way */ class SGetType { public: template MPI_Datatype operator()(const T &); template MPI_Datatype operator()(const pair&); template MPI_Datatype operator()(const esys::lsm::triplet &trip); template MPI_Datatype operator()(const esys::lsm::quadtuple &quad); template MPI_Datatype operator()(const esys::lsm::quintuple &quin); }; /** * std::pair MPI-type initialisation stuff. */ template struct tml_pair { static MPI_Datatype type; static bool initialized; }; template MPI_Datatype tml_pair::type=MPI_DATATYPE_NULL; template bool tml_pair::initialized=false; /** * triplet MPI-type initialisation stuff. */ template struct tml_trip { static MPI_Datatype type; static bool initialized; }; template MPI_Datatype tml_trip::type=MPI_DATATYPE_NULL; template bool tml_trip::initialized=false; /** * Quadtuple MPI-type initialisation stuff. */ template struct tml_quad { static MPI_Datatype type; static bool initialized; }; template MPI_Datatype tml_quad::type=MPI_DATATYPE_NULL; template bool tml_quad::initialized=false; /** * Quintuple MPI-type initialisation stuff. */ template struct tml_quin { static MPI_Datatype type; static bool initialized; }; template MPI_Datatype tml_quin::type=MPI_DATATYPE_NULL; template bool tml_quin::initialized=false; static SGetType GetType; #include "tml/type/gettype.hpp" #endif //__GETTYPE_H ./tml/type/gettype.cpp0000664000175000017500000000236112176660653014603 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/type/gettype.h" // get MPI type for buildin types // should eventually cover all MPI data types template <> MPI_Datatype SGetType::operator()(const signed char&) { return MPI_CHAR; } template <> MPI_Datatype SGetType::operator()(const char&) { return MPI_CHAR; } template <> MPI_Datatype SGetType::operator()(const int&) { return MPI_INT; } template <> MPI_Datatype SGetType::operator()(const float&) { return MPI_FLOAT; } template <> MPI_Datatype SGetType::operator()(const double&) { return MPI_DOUBLE; } ./tml/type/Makefile.am0000664000175000017500000000145612176660653014456 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libTmlType.la libTmlType_la_SOURCES = gettype.cpp gettype.h gettype.hpp ./tml/comm/0000775000175000017500000000000012176660653012366 5ustar vborosvboros./tml/comm/cart_comm.cpp0000664000175000017500000001214312176660653015037 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/comm/cart_comm.h" #include "Foundation/console.h" //--- I/0 --- #include #include /*! Constructor, using an STL vector for boundary conditions and optionally prescribing dimensions. Dimensions are choosen according to the size of the communicator via MPI_Create_dims. \param old_comm the old communicator \param dims the dimensions \param circular circular boundaries */ TML_CartComm::TML_CartComm(TML_Comm* old_comm, vector dims, vector circular) { const unsigned int ndims = 3; while (dims.size() < ndims) { dims.push_back((dims.size() > 0 ? 1 : 0)); } int *mpi_dims=new int[ndims]; for(unsigned int i=0;isize(),ndims,mpi_dims); console.Debug() << "ndims = " << ndims << "\n"; std::stringstream str; str << "dims = ["; if (ndims > 0) { str << mpi_dims[0]; for (unsigned int i = 1; i < ndims; i++) { str << ", " << mpi_dims[i]; } } str << "]"; console.Debug() << str.str() << "\n"; for(unsigned int i=0;icomm(), ndims, mpi_dims, l_circ, 0, &m_comm); m_ndims=ndims; // clean up delete [] mpi_dims; delete [] l_circ; } /*! Constructor, using STL vectors for dimensions and boundary conditions \param old_comm the old communicator \param ndims the number of dimensions \param dims the dimensions \param circular circular boundaries */ TML_CartComm::TML_CartComm(TML_Comm* old_comm, unsigned int ndims, const vector &dims, const vector &circular) { // do checks if((dims.size()!=ndims) || (circular.size()!=ndims)){ std::cerr << "wrong nr. of dims in TML_CartComm constructor" << std::endl; exit(1); } m_dims=dims; int nelem=1; for(std::vector::const_iterator iter=dims.begin(); iter!=dims.end(); iter++){ nelem*=*iter; } if(nelem!=old_comm->size()){ std::cerr << "wrong nr. of processes TML_CartComm constructor" << std::endl; exit(1); } // C-arrays for dims and boundary conditions int *l_dims=new int[ndims]; int *l_circ=new int[ndims]; // fill in for(unsigned int i=0;icomm(),ndims,l_dims,l_circ,0,&m_comm); m_ndims=ndims; delete [] l_dims; delete [] l_circ; } /*! Constructor, using C arrays for dimensions and boundary conditions \param old_comm the old communicator \param ndims the number of dimensions \param dims the dimensions \param circular circular boundaries \warning no checking of nr. of dims and boundary cond. */ TML_CartComm::TML_CartComm(TML_Comm* old_comm,unsigned int ndims,int* dims,int* circular) { int nelem=1; // check number of processes for(unsigned int i=0;isize()){ std::cerr << "wrong nr. of processes TML_CartComm constructor" << std::endl; exit(1); } // generate new communicator MPI_Cart_create(old_comm->comm(),ndims,dims,circular,0,&m_comm); m_ndims=ndims; } /*! Get cartesian coordinates of a given process in the communicator \param rank the rank of the process */ vector TML_CartComm::get_coords(int rank) { int *coords=new int[m_ndims]; MPI_Cart_coords(m_comm,rank,m_ndims,coords); vector res=vector(coords,&(coords[m_ndims])); delete [] coords; return res; } /*! Get cartesian coordinates of local process */ vector TML_CartComm::get_coords() const { int *coords=new int[m_ndims]; MPI_Cart_coords(m_comm,rank(),m_ndims,coords); vector res=vector(coords,&(coords[m_ndims])); delete [] coords; return res; } /*! Get size of the communicator in all directions */ vector TML_CartComm::get_all_dims() const { vector res; for(int i=0;i void TML_CartComm::shift(T send_data,P& recv_data,int dir,int dist,int tag) { int source,dest; if(dir void TML_CartComm::shift_array(T* send_data,int send_count,P* recv_data,int recv_count,int dir,int dist,int tag) { int source,dest; if(dir void TML_CartComm::shift_cont(T send_data,P& recv_data,int dir,int dist,int tag) { int source,dest; if(dir void TML_CartComm::shift_packed(T send_data,P& recv_data,int dir,int dist,int tag) { int source,dest; if(dir void TML_CartComm::shift_array_packed(T* send_data,int send_count,P* recv_data,int recv_count,int dir,int dist,int tag) { int source,dest; if(dir void TML_CartComm::shift_cont_packed(T send_data,P& recv_data,int dir,int dist,int tag) { int source,dest; if(dir void TML_Comm::broadcast(T data) { MPI_Bcast(&data,1,GetType(data),rank(),m_comm); } /*! broadcast an array of known size \param data the array to be broadcast \param ndata the size of the array (nr. of elements) */ template void TML_Comm::broadcast_array(T* data,int ndata) { MPI_Bcast(data,ndata,GetType(*data),rank(),m_comm); } /*! broadcast the content of a STL container of simple types. Uses 2 MPI broadcasts for size and data. \param data the data to be broadcast */ template void TML_Comm::broadcast_cont(const T& data) { int data_size=data.size(); // setup buffer typename T::value_type *buffer=new typename T::value_type[data_size]; // put data into buffer int count=0; for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ void* buf=reinterpret_cast(&(buffer[count])); // get memory adress for buffer element new(buf)(typename T::value_type)(*iter); // initialize object at this adress // the placement new stuff (see Stroustrup, p.255ff) is necessary // because assignment buffer[count]=(*iter) doesn't work if the // T::value_type contains constant member data. Initialization by // calling the copy constructor directly doesn't work for builtin // types count++; } // broadcast size broadcast(data_size); // broadcast buffer broadcast_array(buffer,data_size); // clean up delete [] buffer; } /*! broadcast the content of a STL container of packable objects. Uses 2 MPI broadcasts for size and data. \param data the data to be broadcast */ template void TML_Comm::broadcast_cont_packed(const T &data) { TML_Packed_Message* msg=new TML_Packed_Message(m_comm); int nb_data=data.size(); msg->pack(nb_data); // pack number of items first // pack data for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ msg->pack(*iter); } // broadcast size broadcast(msg->size()); // broadcast data broadcast_array(msg->buffer(),msg->size()); delete msg; } /*! Receive broadcast of single data from a given node \param data the data to be broadcast \param root the node which sent the broadcast */ template void TML_Comm::recv_broadcast(T& data,int root) { MPI_Bcast(&data,1,GetType(data),root,m_comm); } /*! Receive broadcast of an array of known size \param data the array to be broadcast \param ndata the size of the array (nr. of elements) \param root the node which sent the broadcast */ template void TML_Comm::recv_broadcast_array(T* data,int ndata,int root) { MPI_Bcast(data,ndata,GetType(*data),root,m_comm); } /*! Receive broadcast of the content of a STL container of simple types from a given node. Uses 2 MPI broadcasts for size and data. \param data the data to be broadcast \param root the node which sent the broadcast */ template void TML_Comm::recv_broadcast_cont(T& data,int root) { int data_size; //get size recv_broadcast(data_size,root); // setup recv buffer typename T::value_type *buffer=new typename T::value_type[data_size]; //get data recv_broadcast_array(buffer,data_size,root); // insert into container for(int i=0;i void TML_Comm::recv_broadcast_cont_packed(T& data,int root) { int msg_size; // total size of the message int nb_data; // number of data (i.e. the expected data.size()) //get size recv_broadcast(msg_size,root); //setup message TML_Packed_Message* msg=new TML_Packed_Message(m_comm,msg_size); //get data recv_broadcast_array(msg->buffer(),msg_size,root); // extract nuber of items nb_data=msg->pop_int(); // unpack data for(int i=0;iunpack(tv); data.insert(data.end(),tv); } // clean up delete msg; } /*! scatter the content of a multimap. The key of the multimap is used to decide where to send the data. Uses one MPI_Scatter (sizes) and one MPI_Scatterv (data) call. \param data the multimap containing the data to be scattered \todo checks, handling of out of range indices */ template void TML_Comm::scatter(const multimap data) { // put data into buffer int total_size=data.size(); T* buffer=new T[total_size]; int comm_size=size(); int *size_buffer=new int[comm_size]; int *offs_buffer=new int[comm_size]; int count=0; int count_p=0; for(int i=0;i::const_iterator begin=data.find(i); typename multimap::const_iterator end=data.upper_bound(i); if(begin!=data.end()){ for(typename multimap::const_iterator iter=begin; iter!=end; iter++){ buffer[count]=iter->second; count++; } } size_buffer[i]=count-count_p; count_p=count; } // send size info int dummy; MPI_Scatter(size_buffer,1,MPI_INT,&dummy,1,MPI_INT,rank(),m_comm); // construct offsets from sizes offs_buffer[0]=0; for(int i=1;i void TML_Comm::recv_scatter(T& data,int root) { // receive size int size; MPI_Scatter(NULL,0,MPI_INT,&size,1,MPI_INT,root,m_comm); // allocate buffer buffer typename T::value_type *buffer=new typename T::value_type[size]; // receive data MPI_Scatterv(NULL,NULL,NULL,MPI_INT,buffer,size,GetType(*buffer),root,m_comm); // put data in container for(int i=0;i void TML_Comm::gather(multimap& data) { int dummy=0; int comm_size=size(); int *size_buffer=new int[comm_size]; int *offs_buffer=new int[comm_size]; // receive sizes MPI_Gather(&dummy,1,MPI_INT,size_buffer,1,MPI_INT,rank(),m_comm); int totalsize=0; for(int i=0;i(i,buffer[j])); } } // clean up delete [] size_buffer; delete [] offs_buffer; delete [] buffer; } /*! Gather data from all other processes in the communicator into a multimap. The multimap-key will be set according to the rank of the process where the data came from. Debug version (output data) \param data the multimap */ template void TML_Comm::gather_debug(multimap& data) { int dummy=0; int comm_size=size(); int *size_buffer=new int[comm_size]; int *offs_buffer=new int[comm_size]; // receive sizes MPI_Gather(&dummy,1,MPI_INT,size_buffer,1,MPI_INT,rank(),m_comm); int totalsize=0; for(int i=0;i(i,buffer[j])); } } // clean up delete [] size_buffer; delete [] offs_buffer; delete [] buffer; } /*! Send data to be gathered by a root process. \param data the data (a container) \param root the root process */ template void TML_Comm::send_gather(T& data,int root) { // send size int size=data.size(); MPI_Gather(&size,1,MPI_INT,NULL,0,MPI_INT,root,m_comm); // setup send buffer typename T::value_type *buffer=new typename T::value_type[size]; // put data into send buffer int count=0; for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ buffer[count]=*iter; count++; } // send data MPI_Gatherv(buffer,size,GetType(*buffer),NULL,NULL,NULL,MPI_INT,root,m_comm); // clean up delete [] buffer; } /*! Send data to be gathered by a root process. Debug version. \param data the data (a container) \param root the root process */ template void TML_Comm::send_gather_debug(T& data,int root) { // send size int size=data.size(); console.Debug() << "send size :" << size << "\n"; MPI_Gather(&size,1,MPI_INT,NULL,0,MPI_INT,root,m_comm); // setup send buffer typename T::value_type *buffer=new typename T::value_type[size]; // put data into send buffer int count=0; for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ buffer[count]=*iter; count++; } console.Debug() << "send count :" << count << "\n"; // send data MPI_Gatherv(buffer,size,GetType(*buffer),NULL,NULL,NULL,MPI_INT,root,m_comm); // clean up delete [] buffer; } /*! Scatter the content of a multimap of packable objects. The key of the multimap is used to decide where to send the data. Uses one MPI_Scatter (sizes) and one MPI_Scatterv (data) call. \param data the multimap containing the data to be scattered \todo checks, handling of out of range indices */ template void TML_Comm::scatter_packed(const multimap data) { int comm_size=size(); // construct new packed multimessage TML_PackedMultiMessage *msg=new TML_PackedMultiMessage(m_comm); // pack data for(int i=1;i::const_iterator begin=data.find(i); typename multimap::const_iterator end=data.upper_bound(i); (*msg)[i].pack(int(data.count(i))); if(begin!=data.end()){ for(typename multimap::const_iterator iter=begin; iter!=end; iter++){ (*msg)[i].pack(iter->second); } } } // send size int dummy; MPI_Scatter(msg->sizes(),1,MPI_INT,&dummy,1,MPI_INT,rank(),m_comm); // send data T dummy2; MPI_Datatype data_type=GetType(*(msg->buffer())); MPI_Scatterv(msg->buffer(),msg->sizes(),msg->offsets(),data_type, &dummy2,0,data_type,rank(),m_comm); // clean up delete msg; } /*! receive scattered packed data \param data the received data \param root the process which scattered the data */ template void TML_Comm::recv_scatter_packed(T& data,int root) { // receive size int msg_size; MPI_Scatter(NULL,0,MPI_INT,&msg_size,1,MPI_INT,root,m_comm); // construct packed message of sufficient size TML_Packed_Message* msg=new TML_Packed_Message(m_comm,msg_size); // recceive data MPI_Datatype data_type=GetType(*(msg->buffer())); MPI_Scatterv(NULL,NULL,NULL,MPI_INT,msg->buffer(),msg_size,data_type,root,m_comm); // extract number of items msg->begin_unpack(); int nitems=msg->pop_int(); // unpack data typename T::value_type item; for(int i=0;iunpack(item); data.insert(data.end(),item); } // clean up delete msg; } template void TML_Comm::gather_packed(multimap &data) { console.Debug() << "TML_Comm::gather_packed: enter\n"; int dummy=0; int comm_size=size(); int *size_buffer=new int[comm_size]; int *offs_buffer=new int[comm_size]; // receive sizes console.Debug() << "TML_Comm::gather_packed: gathering sizes\n"; MPI_Gather(&dummy,1,MPI_INT,size_buffer,1,MPI_INT,rank(),m_comm); int totalsize=0; for(int i=0;ibuffer(), size_buffer, offs_buffer, GetType(*(msg->buffer())),rank(),m_comm ); // put data into multimap console.Debug() << "TML_Comm::gather_packed: unpacking into multi-map\n"; for(int i=0;i 0) { const int numElems = msg->pop_int(); for(int j=0; j < numElems; j++){ //console.Debug() // << "TML_Comm::gather_packed:" // << " unpacking object (" << i << "," << j << ")\n"; T t; msg->unpack(t); data.insert(pair(i, t)); } } } console.Debug() << "TML_Comm::gather_packed: done unpacking into multi-map\n"; // clean up delete [] size_buffer; delete [] offs_buffer; delete msg; console.Debug() << "TML_Comm::gather_packed: exit\n"; } template void TML_Comm::send_gather_packed(const T &data, int root) { console.Debug() << "TML_Comm::send_gather_packed: enter\n"; // setup send buffer TML_Packed_Message* msg = new TML_Packed_Message( m_comm, std::max(static_cast(64), data.size()*sizeof(typename T::value_type)) ); // put data into send buffer const int numElems = data.size(); msg->pack(numElems); for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ msg->pack(*iter); } // send size int size = msg->size(); console.Debug() << "TML_Comm::send_gather_packed: sending data size...\n"; MPI_Gather(&size,1,MPI_INT,NULL,0,MPI_INT,root,m_comm); // send data console.Debug() << "TML_Comm::send_gather_packed: sending data...\n"; MPI_Gatherv( msg->buffer(), msg->size(), GetType(*(msg->buffer())), NULL, NULL, NULL, MPI_INT, root, m_comm ); // clean up delete msg; console.Debug() << "TML_Comm::send_gather_packed: exit\n"; } template T TML_Comm::sum_all(const T& data) { T res; MPI_Datatype data_type=GetType(data); MPI_Allreduce((void*)(&data),(void*)(&res),1,data_type,MPI_SUM,m_comm); return res; } ./tml/comm/comm.h0000664000175000017500000001032512176660653013473 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __COMM_H #define __COMM_H //--- MPI --- #include //--- project includes --- #include "Foundation/console.h" //--- TML includes --- #include "tml/type/gettype.h" //--- STL includes --- #include #include #include #include #undef barrier using std::vector; using std::multimap; using std::pair; using std::string; /*! \class TML_Comm \brief abstract base class for communicator \author Steffen Abe $Revision$ $Date$ */ class TML_Comm { protected: MPI_Status m_status; MPI_Comm m_comm; public: bool isNull() const {return m_comm==MPI_COMM_NULL;}; int rank() const; int size(); MPI_Comm comm() const {return m_comm;}; // assignment TML_Comm& operator=(const TML_Comm&); void setComm(MPI_Comm); // construction of new communicators TML_Comm(); TML_Comm(MPI_Comm); TML_Comm include(const vector&); TML_Comm exclude(const vector&); // send/recv for single data template void send(T,int,int=0); template void receive(T&,int,int=MPI_ANY_TAG); // send/recv for C-arrays with known dimension template void send_array(T*,int,int,int=0); template void receive_array(T*,int,int,int=MPI_ANY_TAG); // send/recv for STL containers template void send_cont(const T&,int,int=0); template void receive_cont(T&,int,int=MPI_ANY_TAG); // send/recv for STL containers of packable objects template void send_cont_packed(T,int,bool,int=0); template void receive_cont_packed(T&,int,bool,int=MPI_ANY_TAG); // sendrecv for single data template void sendrecv(T,P&,int,int,int=0); // sendrecv for C-arrays with known dimension template void sendrecv_array(T*,int,P*,int,int,int,int=0); // sendrecv for STL containers template void sendrecv_cont(T,P&,int,int,int=0); template void sendrecv_cont_replace(T&,int,int,int=0); // sendrecv for STL containers of packable objects template void sendrecv_cont_packed(T,P&,int,int,bool,int=0); template void sendrecv_cont_packed_replace(T&,int,int,bool,int=0); // broadcast template void broadcast(T); template void broadcast_array(T*,int); template void broadcast_cont(const T&); template void broadcast_cont_packed(const T &); // receive_broadcast template void recv_broadcast(T&,int); template void recv_broadcast_array(T*,int,int); template void recv_broadcast_cont(T&,int); template void recv_broadcast_cont_packed(T&,int); // scatter/gather template void scatter(const multimap); template void recv_scatter(T&,int); template void gather(multimap&); template void send_gather(T&,int); // debug versions template void gather_debug(multimap&); template void send_gather_debug(T&,int); // scatter/gather packed template void scatter_packed(const multimap); template void recv_scatter_packed(T&,int); template void gather_packed(multimap&); template void send_gather_packed(const T &,int); // reduce ops template T sum_all(const T&); // syncronisation void barrier(); void barrier(const string&); }; #include "tml/comm/comm.hpp" #include "tml/comm/comm_coll.hpp" #endif //__COMM_H ./tml/comm/comm.hpp0000664000175000017500000003543712176660653014046 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- point to point communication primitives for TML_Comm --- #include "tml/message/packed_message.h" //--- STL --- #include using std::map; /*! send a C-array of data with known dimensions \param data the data to be sent \param ndata the size of the array (nr. of elements) \param dest the rank of the destination process the data is sent to \param tag the message tag \warning no checks */ template void TML_Comm::send_array(T* data,int ndata,int dest,int tag) { MPI_Send(data,ndata,GetType(*data),dest,tag,m_comm); } /*! receive a C-array of data with known dimensions \param data the data to be received \param ndata the number of integers to be received \param source the rank of the destination process the data comes from \param tag the message tag \warning no checks */ template void TML_Comm::receive_array(T* data,int ndata,int source,int tag) { MPI_Recv(data,ndata,GetType(*data),source,tag,m_comm,&m_status); } /*! send and receive a C-array of data with known dimensions \param send_data the data to be sent \param send_count the number of integers to be sent \param recv_data the data to be received \param recv_count the number of integers to be received \param dest the rank of the destination process the data is sent to \param source the rank of the destination process the data comes from \param tag the message tag \warning no checks */ template void TML_Comm::sendrecv_array(T* send_data,int send_count,P* recv_data,int recv_count,int dest,int source,int tag) { MPI_Sendrecv(send_data,send_count,GetType(*send_data),dest,tag,recv_data,recv_count,GetType(*recv_data),source,tag,m_comm,&m_status); } /*! send single data \param data the data to be sent \param dest the rank of the destination process the data is sent to \param tag the message tag */ template void TML_Comm::send(T data,int dest,int tag) { MPI_Send(&data,1,GetType(data),dest,tag,m_comm); } /*! receive single data \param data the data to be received \param source the rank of the destination process the data comes from \param tag the message tag \warning no checks */ template void TML_Comm::receive(T& data,int source ,int tag) { MPI_Recv(&data,1,GetType(data),source,tag,m_comm,&m_status); } /*! send and receive single data \param send_data the data to be sent \param recv_data the data to be received \param dest the rank of the destination process the data is sent to \param source the rank of the destination process the data comes from \param tag the message tag \warning no checks */template void TML_Comm::sendrecv(T send_data,P& recv_data,int dest,int source,int tag) { MPI_Sendrecv(&send_data,1,GetType(send_data),dest,tag,&recv_data,1,GetType(recv_data),source,tag,m_comm,&m_status); } /*! Send an STL container or anything that has iterators, begin() and end(). Uses 2 send operations for size and data. \param data the data to be sent \param dest the rank of the destination process the data is sent to \param tag the message tag */ template void TML_Comm::send_cont(const T& data, int dest, int tag) { int data_size=data.size(); // setup buffer typename T::value_type *buffer=new typename T::value_type[data_size]; // put data into buffer int count=0; for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ void* buf=reinterpret_cast(&(buffer[count])); // get memory adress for buffer element new(buf)(typename T::value_type)(*iter); // initialize object at this adress // the placement new stuff (see Stroustrup, p.255ff) is necessary // because assignment buffer[count]=(*iter) doesn't work if the // T::value_type contains constant member data. Initialization by // calling the copy constructor directly doesn't work for builtin // types count++; } //send size send(data_size,dest,tag); //send data send_array(buffer,data_size,dest,tag+1024); // clean up delete [] buffer; } /*! Receive an STL container or anything that has iterators, begin() and end(). Single item insert (a.insert(p,t)) is used instead of range insert to be compatible with both sequence and associative containers; \param data the data to be received \param source the rank of the destination process the data is coming from \param tag the message tag */ template void TML_Comm::receive_cont(T& data,int source,int tag) { int data_size; //get size receive(data_size,source,tag); // setup recv buffer typename T::value_type *buffer=new typename T::value_type[data_size]; //get data receive_array(buffer,data_size,source,tag+1024); // insert into container for(int i=0;i void TML_Comm::sendrecv_cont(T send_data,P& recv_data,int dest,int source,int tag) { int send_count=send_data.size(); int recv_count; // setup send buffer typename T::value_type *send_buffer=new typename T::value_type[send_count]; // put data into send buffer int count=0; for(typename T::const_iterator iter=send_data.begin(); iter!=send_data.end(); iter++){ void* buf=reinterpret_cast(&(send_buffer[count])); // get memory adress for buffer element new(buf)(typename T::value_type)(*iter); // initialize object at this adress (see send_cont) count++; } //send/receive size sendrecv(send_count,recv_count,dest,source,tag); // check for recv from Null process -> set recv_count to 0 if so if(source==MPI_PROC_NULL){ recv_count=0; } // setup recv buffer typename T::value_type *recv_buffer=new typename T::value_type[recv_count]; //send/receive data sendrecv_array(send_buffer,send_count,recv_buffer,recv_count,dest,source,tag+1024); // insert into container for(int i=0;i void TML_Comm::sendrecv_cont_replace(T& data,int dest,int source,int tag) { int send_count=data.size(); int recv_count; // setup send buffer typename T::value_type *send_buffer=new typename T::value_type[send_count]; // put data into send buffer int count=0; for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ void* buf=reinterpret_cast(&(send_buffer[count])); // get memory adress for buffer element new(buf)(typename T::value_type)(*iter); // initialize object at this adress count++; } //send/receive size sendrecv(send_count,recv_count,dest,source,tag); // check for recv from Null process -> set recv_count to 0 if so if(source==MPI_PROC_NULL){ recv_count=0; } // setup recv buffer typename T::value_type *recv_buffer=new typename T::value_type[recv_count]; //send/receive data sendrecv_array(send_buffer,send_count,recv_buffer,recv_count,dest,source,tag+1024); // replace data data.erase(data.begin(),data.end()); // insert into container for(int i=0;i void TML_Comm::send_cont_packed(T data, int dest ,bool checked ,int tag) { TML_Packed_Message* msg=new TML_Packed_Message(m_comm); int nb_data=data.size(); msg->pack(nb_data); // pack number of items first // pack data for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ msg->pack(*iter); } //send size send(msg->size(),dest,tag); //send data send_array(msg->buffer(),msg->size(),dest,tag+1024); delete msg; } /*! Receive an STL container or anything that has iterators and insert(). Uses 2 receive operations for size and data. If the "checked" option is set, a checked message buffer is used to detect type mismatches between pack and unpack operations. \param data the data to be received \param source the rank of the destination process the data is coming from \param checked use checked message buffer if true \param tag the message tag \warning checked stuff not yet implemented */ template void TML_Comm::receive_cont_packed(T& data,int source,bool checked,int tag) { int msg_size; // total size of the message int nb_data; // number of data (i.e. the expected data.size()) //get size receive(msg_size,source,tag); TML_Packed_Message* msg=new TML_Packed_Message(m_comm,msg_size); //get data receive_array(msg->buffer(),msg_size,source,tag+1024); // extract nuber of items nb_data=msg->pop_int(); // unpack data for(int i=0;iunpack(tv); data.insert(data.end(),tv); } delete msg; } /*! send and receive an STL container or anything that has iterators, begin() and end() and insert(). Uses 2 MPI_Sendrecv operations for size and data. If the "checked" option is set, a checked message buffer is used to detect type mismatches between pack and unpack operations. \param send_data the data to be sent \param recv_data the data to be received \param dest the rank of the destination process the data is sent to \param source the rank of the destination process the data comes from \param tag the message tag \warning checked stuff not yet implemented */ template void TML_Comm::sendrecv_cont_packed(T send_data, P& recv_data, int dest, int source, bool checked,int tag) { TML_Packed_Message* send_msg=new TML_Packed_Message(m_comm); int send_nb_data=send_data.size(); int send_msg_size; int recv_nb_data; int recv_msg_size; send_msg->pack(send_nb_data); // pack number of items first // pack data for(typename T::const_iterator iter=send_data.begin(); iter!=send_data.end(); iter++){ send_msg->pack(*iter); } send_msg_size=send_msg->size(); //send/receive size sendrecv(send_msg_size,recv_msg_size,dest,source,tag); // check for recv from Null process -> set recv_count to 0 if so if(source==MPI_PROC_NULL){ recv_msg_size=0; } // setup receive message TML_Packed_Message* recv_msg=new TML_Packed_Message(m_comm,recv_msg_size); //send/receive data sendrecv_array(send_msg->buffer(),send_msg_size,recv_msg->buffer(),recv_msg_size,dest,source,tag+1024); if(source!=MPI_PROC_NULL){ // if the source exists // extract nuber of items recv_nb_data=recv_msg->pop_int(); // unpack data typename T::value_type tv; for(int i=0;iunpack(tv); recv_data.insert(recv_data.end(),tv); } } delete send_msg; delete recv_msg; } /*! send and receive an STL container or anything that has iterators, begin() and end() and insert(). In input data is replaced by the received data. Uses 2 MPI_Sendrecv operations for size and data. If the "checked" option is set, a checked message buffer is used to detect type mismatches between pack and unpack operations. \param data the data to be sent and received \param dest the rank of the destination process the data is sent to \param source the rank of the destination process the data comes from \param tag the message tag \warning checked stuff not yet implemented */ template void TML_Comm::sendrecv_cont_packed_replace(T& data, int dest, int source, bool checked,int tag) { TML_Packed_Message* send_msg=new TML_Packed_Message(m_comm); int send_nb_data=data.size(); int send_msg_size; int recv_nb_data; int recv_msg_size; send_msg->pack(send_nb_data); // pack number of items first // pack data for(typename T::const_iterator iter=data.begin(); iter!=data.end(); iter++){ send_msg->pack(*iter); } send_msg_size=send_msg->size(); //send/receive size sendrecv(send_msg_size,recv_msg_size,dest,source,tag); // check for recv from Null process -> set recv_count to 0 if so if(source==MPI_PROC_NULL){ recv_msg_size=0; } // setup receive message TML_Packed_Message* recv_msg=new TML_Packed_Message(m_comm,recv_msg_size); //send/receive data sendrecv_array(send_msg->buffer(),send_msg_size,recv_msg->buffer(),recv_msg_size,dest,source,tag+1024); // extract nuber of items recv_nb_data=recv_msg->pop_int(); // replace data data.erase(data.begin(),data.end()); for(int i=0;iunpack(tv); data.insert(data.end(),tv); } delete send_msg; delete recv_msg; } ./tml/comm/comm_world.cpp0000664000175000017500000000144412176660653015237 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- Project includes --- #include "tml/comm/comm_world.h" TML_CommWorld::TML_CommWorld() { m_comm=MPI_COMM_WORLD; } ./tml/comm/cart_comm.h0000664000175000017500000000427312176660653014511 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CARTCOMM_H #define __CARTCOMM_H //--- MPI --- #include //--- project includes --- #include "tml/comm/comm.h" //--- STL --- #include using std::vector; /*! \class TML_CartComm \brief class for a cartesian communicator \author Steffen Abe $Revision$ $Date$ */ class TML_CartComm : public TML_Comm { private: int m_ndims; vector m_dims; public: // constructor TML_CartComm(TML_Comm *comm, vector dims, vector circular); TML_CartComm(TML_Comm *comm, unsigned int ndims, const vector &dims, const vector &circular); TML_CartComm(TML_Comm*,unsigned int,int*,int*); vector get_coords(int); //!< get coords of a process vector get_coords() const; //!< get own coords vector get_all_dims() const; //!< get size of communicator in all directions int get_dim(int); //!< get size of communicator in one direction int get_ndim() const {return m_ndims;}; //! shift ops template void shift(T,P&,int,int,int=0); template void shift_array(T*,int,P*,int,int,int,int=0); template void shift_cont(T,P&,int,int,int=0); //! packed shift ops template void shift_packed(T,P&,int,int,int=0); template void shift_array_packed(T*,int,P*,int,int,int,int=0); template void shift_cont_packed(T,P&,int,int,int=0); // shift_replace ops? }; #include "tml/comm/cart_comm.hpp" #endif // __CARTCOMM_H ./tml/comm/comm_world.h0000664000175000017500000000201712176660653014701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __COMM_WORLD_H #define __COMM_WORLD_H //--- MPI --- #include //--- TML --- #include "tml/comm/comm.h" /*! \class TML_CommWorld \brief abstract base class for communicator \author Steffen Abe $Revision$ $Date$ */ class TML_CommWorld : public TML_Comm { public: //! constructor TML_CommWorld(); }; #endif //__COMM_WORLD_H ./tml/comm/Makefile.am0000664000175000017500000000210512176660653014420 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libTmlComm.la libTmlComm_la_SOURCES = cart_comm.cpp comm.cpp comm_world.cpp cart_comm.h cart_comm.hpp comm_coll.hpp comm.h comm.hpp comm_world.h libTmlComm_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/tml/message/libTmlMessage.la \ $(top_builddir)/tml/type/libTmlType.la ./tml/comm/comm.cpp0000664000175000017500000001002612176660653014024 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "tml/comm/comm.h" #include "Foundation/console.h" //--- I/O --- /*! Default constructor for TML_comm. Sets the MPI communicator to MPI_COMM_NULL; */ TML_Comm::TML_Comm() { m_comm=MPI_COMM_NULL; } /*! construct TML_Comm from MPI communicator \param comm the MPI communicator */ TML_Comm::TML_Comm(MPI_Comm comm) { m_comm=comm; } /*! set the undelying MPI communicator \param comm the MPI communicator */ void TML_Comm::setComm(MPI_Comm comm) { m_comm=comm; } TML_Comm& TML_Comm::operator=(const TML_Comm& rhs) { // MPI_Comm_dup(rhs.m_comm,&m_comm); m_comm=rhs.m_comm; return *this; } int TML_Comm::rank() const { int rank; if(m_comm!=MPI_COMM_NULL){ MPI_Comm_rank(m_comm,&rank); } else { rank=MPI_UNDEFINED; } return rank; } int TML_Comm::size() { int size; if(m_comm!=MPI_COMM_NULL){ MPI_Comm_size(m_comm,&size); } else { size=MPI_UNDEFINED; } return size; } /*! Construct a new communicator containing the processes which are given as input \param ids the ranks of the processes which form the new communicator in the current communicator \todo error handling */ TML_Comm TML_Comm::include(const vector& ids) { TML_Comm newcomm; MPI_Group grp,ngrp; // extract group MPI_Comm_group(m_comm,&grp); // vector->array int nids=ids.size(); int *ranks=new int[nids]; for(int i=0;i& ids) { TML_Comm newcomm; MPI_Group grp,ngrp; // extract group MPI_Comm_group(m_comm,&grp); // vector->array int nids=ids.size(); int *ranks=new int[nids]; for(int i=0;iv2.data[0] ? v1.data[0] : v2.data[0]; res.data[1]=v1.data[1]>v2.data[1] ? v1.data[1] : v2.data[1]; res.data[2]=v1.data[2]>v2.data[2] ? v1.data[2] : v2.data[2]; return res; } Vec3 cmin(const Vec3& v1,const Vec3& v2) { Vec3 res; res.data[0]=v1.data[0]data[1] ? data[0] : data[1] ); m=( m>data[2] ? m : data[2] ); return m; } double Vec3::min() const { double m; m=( data[0]> (istream& istr,Vec3& V) { istr >> V.data[0]; istr >> V.data[1]; istr >> V.data[2]; return istr; } // n+1-ary operators Vec3::Vec3(const VDMulVadd& v) { mul_add_and_assign(&v.v1,&v.v2,v.d); } Vec3& Vec3::operator=(const VDMulVadd& v) { mul_add_and_assign(&v.v1,&v.v2,v.d); return *this; } Vec3::Vec3(const VDMul& v) { mul_and_assign(&v.v,v.d); } Vec3& Vec3::operator=(const VDMul& v) { mul_and_assign(&v.v,v.d); return *this; } void Vec3::mul_add_and_assign(const Vec3* v1,const Vec3* v2,const double& d) { data[0]=v1->data[0]*d+v2->data[0]; data[1]=v1->data[1]*d+v2->data[1]; data[2]=v1->data[2]*d+v2->data[2]; } void Vec3::mul_and_assign(const Vec3* v,const double& d) { data[0]=v->data[0]*d; data[1]=v->data[1]*d; data[2]=v->data[2]*d; } ./ntable/util/vec3.h0000664000175000017500000000626312176660653014101 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VEC3_H #define __VEC3_H #include #include #include #include "Error.h" using std::ostream; using std::istream; using std::string; class Mat3; class VecErr:public MError { public: VecErr(const string&); virtual ~VecErr(){}; }; struct VDMulVadd; struct VDMul; class Vec3 { protected: double data[3]; public: // constructors Vec3(); Vec3(double,double,double); Vec3(const Vec3&); // vec-vec operators Vec3& operator=(const Vec3&); Vec3& operator-=(const Vec3&); Vec3& operator+=(const Vec3&); Vec3 operator+(const Vec3&) const; Vec3 operator-(const Vec3&) const; double operator*(const Vec3&) const; inline Vec3 operator-() { return Vec3(-data[0],-data[1],-data[2]); } ; // vec-dbl ops Vec3 operator*(double) const; Vec3 operator/(double) const; double norm() const; double norm2() const; Vec3 unit() const; Vec3 unit_s() const; //safe version (throw exceptions) double max() const; double min() const; bool operator==(const Vec3&); bool operator!=(const Vec3&); friend Vec3 cmax(const Vec3&,const Vec3&); friend Vec3 cmin(const Vec3&,const Vec3&); friend Vec3 cross(const Vec3&,const Vec3&); friend Vec3 operator*(double,const Vec3&); //n+1-ary operators void mul_add_and_assign(const Vec3*,const Vec3*,const double&); void mul_and_assign(const Vec3*,const double&); Vec3(const VDMulVadd&); Vec3& operator=(const VDMulVadd&); Vec3(const VDMul&); Vec3& operator=(const VDMul&); //access stuff inline double X() const {return data[0];}; inline double Y() const {return data[1];}; inline double Z() const {return data[2];}; inline double operator[](int i) const {return data[i];}; inline double& operator[](int i) {return data[i];}; // in/output friend ostream& operator << (ostream&,const Vec3&); friend istream& operator >> (istream&,Vec3&); friend class Mat3; }; //------------------------------ // stuff for 'n+1-ary' ops // see Stroustrup, p.675 f. //------------------------------ struct VDMul { const Vec3& v; const double d; VDMul(const Vec3& vv, const double& dd):v(vv),d(dd){} // operator Vec3(){return Vec3(v.x*d,v.y*d,v.z*d);}; }; inline VDMul operator*(const Vec3& vv, const double& dd) { return VDMul(vv,dd); } struct VDMulVadd { const Vec3& v1; const Vec3& v2; const double& d; VDMulVadd(const VDMul vd,const Vec3& vv):v1(vd.v),v2(vv),d(vd.d){} //operator Vec3(); }; inline VDMulVadd operator+(const VDMul vd,const Vec3& vv) { return VDMulVadd(vd,vv); } #endif ./ntable/util/Error.h0000664000175000017500000000173212176660653014326 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ERROR_H #define __ERROR_H #include #include using namespace std; class MError { protected: string message; public: MError(const string& m){message="Error : "+m;}; virtual ~MError(){}; void print_err() const{cerr << message << endl;}; }; #endif //__ERROR_H ./ntable/src/0000775000175000017500000000000012176660653012673 5ustar vborosvboros./ntable/src/nt_block.h0000664000175000017500000000426012176660653014641 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __NT_BLOCK_H #define __NT_BLOCK_H //--- project includes --- #include "ntable/src/ntb_iter.h" #include "ntable/src/ntable.h" //--- forward decls --- template class NTBlock; template bool operator==(const NTBlock&,const NTBlock&); template bool operator!=(const NTBlock&,const NTBlock&); template ostream& operator<<(ostream &, const NTBlock&); /*! \class NTBlock \brief representation of a slab of the search array of a NeigborTable */ template class NTBlock { public: // types typedef NTBlock_iter iterator; typedef NTBlock_iter const_iterator; // dodgy typedef T value_type; private: NeighborTable *m_table; int m_xmin,m_xmax,m_ymin,m_ymax,m_zmin,m_zmax; public: NTBlock(); NTBlock(NeighborTable*,int,int,int,int,int,int); unsigned int size(); // begin and end iterators iterator begin(); iterator end(); /* iterator rbegin(); */ /* iterator rend(); */ //!< number of particles at a given gridpoint unsigned int nparts_at_gridpoint(int x,int y,int z) const {return m_table->nparts_at_gridpoint(m_table->index(x,y,z));}; // access ops T* ptr(int,int,int,int); T& ref(int,int,int,int); //comparison friend bool operator== <>(const NTBlock&,const NTBlock&); friend bool operator!= <>(const NTBlock&,const NTBlock&); friend ostream& operator<< <>(ostream &, const NTBlock &); friend class NTBlock_iter; }; #include "ntable/src/nt_block.hpp" #endif //__NT_BLOCK_H ./ntable/src/nt_block.hpp0000664000175000017500000001110612176660653015176 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! construct empty block */ template NTBlock::NTBlock() : m_table(NULL), m_xmin(0), m_xmax(0), m_ymin(0), m_ymax(0), m_zmin(0), m_zmax(0) { } /*! Construct a NTBlock from a pointer to a NeigborTable and the min and max inices in each dimension \param t the pointer to the NeighborTable \param xmin the minimum x index \param xmax the maximum x index \param ymin the minimum y index \param ymax the maximum y index \param zmin the minimum z index \param zmax the maximum z index */ template NTBlock::NTBlock(NeighborTable* t,int xmin,int xmax,int ymin,int ymax,int zmin,int zmax) : m_table(t), m_xmin(xmin), m_xmax(xmax), m_ymin(ymin), m_ymax(ymax), m_zmin(zmin), m_zmax(zmax) { } /*! get the number of particles in the block */ template unsigned int NTBlock::size() { unsigned int np=0; for (iterator it = begin(); it != end(); it++, np++) { // keep going } return np; } /*! Return an iterator pointing to the first particle in the slab \todo check for end */ template typename NTBlock::iterator NTBlock::begin() { // find the first occupied site in the search array int ix=m_xmin; int iy=m_ymin; int iz=m_zmin; bool end=false; while(!end && m_table->nparts_at_gridpoint(m_table->index(ix,iy,iz))==0){ if(ix typename NTBlock::iterator NTBlock::end() { return iterator(this,m_xmax+1,m_ymax+1,m_zmax+1,0); } /*! Return an iterator pointing to the last particle in the slab \todo check for end */ // template // iterator NTBlock::rbegin() // { // } /*! Return an iterator pointing before the first particle in the slab */ // template // iterator NTBlock::rend() // {} /*! Return pointer to particle at index. */ template T* NTBlock::ptr(int ix,int iy,int iz,int j) { typename NeighborTable::indextype a_idx; a_idx.first=m_table->index(ix,iy,iz); a_idx.second=j; return m_table->ptr(a_idx); } /*! Return reference to particle at index. */ template T& NTBlock::ref(int ix,int iy,int iz,int j) { typename NeighborTable::indextype a_idx; a_idx.first=m_table->index(ix,iy,iz); a_idx.second=j; return m_table->ref(a_idx); } /*! equality operator */ template bool operator== (const NTBlock& b1,const NTBlock& b2) { return (b1.m_table==b2.m_table && b1.m_xmin==b2.m_xmin && b1.m_xmax==b2.m_xmax && b1.m_ymin==b2.m_ymin && b1.m_ymax==b2.m_ymax && b1.m_zmin==b2.m_zmin && b1.m_zmax==b2.m_zmax); } /*! inequality operator */ template bool operator!=(const NTBlock& b1,const NTBlock& b2) { return (b1.m_table!=b2.m_table || b1.m_xmin!=b2.m_xmin || b1.m_xmax!=b2.m_xmax || b1.m_ymin!=b2.m_ymin || b1.m_ymax!=b2.m_ymax || b1.m_zmin!=b2.m_zmin || b1.m_zmax!=b2.m_zmax); } /*! output operator for NTBlock \param ost the output stream \param NTB the NTBlock */ template ostream& operator<<(ostream& ost,const NTBlock& NTB) { ost << "---NTBlock---"<< endl; ost << "range: " << endl; ost << "x: " << NTB.m_xmin << "-" << NTB.m_xmax << endl; ost << "y: " << NTB.m_ymin << "-" << NTB.m_ymax << endl; ost << "z: " << NTB.m_zmin << "-" << NTB.m_zmax << endl; ost << "indices:" << endl; for (int ix=NTB.m_xmin;ix<=NTB.m_xmax;ix++){ for (int iy=NTB.m_ymin;iy<=NTB.m_ymax;iy++){ for (int iz=NTB.m_zmin;iz<=NTB.m_zmax;iz++){ ost << NTB.m_table->index(ix,iy,iz) << " "; } } } ost << endl; return ost; } ./ntable/src/ntb_iter.h0000664000175000017500000000343012176660653014652 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __NTB_BLOCK_H #define __NTB_BLOCK_H //--- project includes --- #include "ntable/src/ntable.h" //---system includes--- #include //--- STL includes --- #include #include #include using std::slice; using std::vector; using std::list; //--- forward decls --- template class NTBlock_iter; template bool operator==(const NTBlock_iter&,const NTBlock_iter&); template bool operator!=(const NTBlock_iter&,const NTBlock_iter&); template class NTBlock; /*! \class NTBlock_iter \brief iterator for a NTBlock */ template class NTBlock_iter { private: NTBlock *m_block; int m_ix,m_iy,m_iz,m_ig; public: NTBlock_iter(NTBlock*,int,int,int,int); //! move ops NTBlock_iter& operator++(); NTBlock_iter operator++(int); //! access ops T* operator->(); T& operator*(); //comparison friend bool operator== <>(const NTBlock_iter&,const NTBlock_iter&); friend bool operator!= <>(const NTBlock_iter&,const NTBlock_iter&); }; #include "ntable/src/ntb_iter.hpp" #endif //__NTB_ITER_H ./ntable/src/handle.hpp0000664000175000017500000000255112176660653014642 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template T_Handle::T_Handle(T* t): m_rep(t), m_count(new int(1)) {} template T_Handle::T_Handle(const T_Handle& h): m_rep(h.m_rep), m_count(h.m_count) { (*m_count)++; } template T_Handle::~T_Handle() { if(--(*m_count)==0){ delete m_rep; delete m_count; } } template T_Handle& T_Handle::operator=(const T_Handle& h) { if(m_rep!=h.m_rep){ if(--(*m_count)==0){ delete m_rep; delete m_count; } m_rep=h.m_rep; m_count=h.m_count; (*m_count)++; } return *this; } /*template void T_Handle::destroy() { if (m_count!=1) { throw HandleException; } else { } }*/ ./ntable/src/ntb_iter.hpp0000664000175000017500000000603112176660653015212 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! Construct block iterator \param ntb the block over which to iterate \param ix the index in the x-dimension \param iy the index in the y-dimension \param iz the index in the z-dimension \param ig the index at the gridpoint */ template NTBlock_iter::NTBlock_iter(NTBlock* ntb,int ix,int iy,int iz,int ig) : m_block(ntb), m_ix(ix), m_iy(iy), m_iz(iz), m_ig(ig) { } /*! prefix increment operator \warning not impl. */ template NTBlock_iter& NTBlock_iter::operator++() { } /*! postfix increment operator */ template NTBlock_iter NTBlock_iter::operator++(int) { NTBlock_iter t=*this; if(m_ig+1(m_block->nparts_at_gridpoint(m_ix,m_iy,m_iz))){ m_ig++; } else { m_ig=0; bool found=false; bool end=false; while(!found && !end){ if(m_ixm_xmax){ m_ix++; } else { m_ix=m_block->m_xmin; if(m_iym_ymax){ m_iy++; } else { m_iy=m_block->m_ymin; if(m_izm_zmax){ m_iz++; } else { m_ix=m_block->m_xmax+1;// end iter m_iy=m_block->m_ymax+1; m_iz=m_block->m_zmax+1; end=true; } } } if(!end) found=m_block->nparts_at_gridpoint(m_ix,m_iy,m_iz)>0; } } return t; } /*! prefix decrement operator \warning not impl. */ // template // NTBlock_iter& NTBlock_iter::operator--() // {} /*! postfix decrement operator */ // template // NTBlock_iter NTBlock_iter::operator--(int) // {} /*! access operator \todo what happens if end() is dereferenced ? */ template T* NTBlock_iter::operator->() { return m_block->ptr(m_ix,m_iy,m_iz,m_ig); } /*! dereference operator \todo what happens if end() is dereferenced ? */ template T& NTBlock_iter::operator*() { return m_block->ref(m_ix,m_iy,m_iz,m_ig); } /*! equality operator */ template bool operator== (const NTBlock_iter& b1,const NTBlock_iter& b2) { return (b1.m_block==b2.m_block && b1.m_ix==b2.m_ix && b1.m_iy==b2.m_iy && b1.m_iz==b2.m_iz && b1.m_ig==b2.m_ig); } /*! inequality operator */ template bool operator!= (const NTBlock_iter& b1,const NTBlock_iter& b2) { return (b1.m_block!=b2.m_block || b1.m_ix!=b2.m_ix || b1.m_iy!=b2.m_iy || b1.m_iz!=b2.m_iz || b1.m_ig!=b2.m_ig); } ./ntable/src/handle_exception.h0000664000175000017500000000157112176660653016361 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __HANDLE_EXCEPTION_H #define __HANDLE_EXCEPTION_H /*! \class HandleException \brief exception thrown by member functions of T_Handle */ class HandleException {}; #endif //__HANDLE_EXCEPTION_H ./ntable/src/ntable.h0000664000175000017500000001315112176660653014312 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __NTABLE_H #define __NTABLE_H #include "Foundation/console.h" //--- project includes --- #include "Foundation/vec3.h" #include "ntable/src/dslice.h" #include "ntable/src/handle.h" #include "Geometry/Triangle.h" #include "Geometry/AEdge.h" //--- STL includes --- #include #include #include #include #if HAVE_CONFIG_H #include #endif /* #if HAVE_HASH_MAP */ /* #include */ /* #else */ #include /* #endif */ using std::valarray; using std::vector; using std::list; using std::pair; using std::make_pair; //--- IO includes --- #include //--- forward declarations --- template class NTSlab; template class NTBlock; template class NTSlab_iter; /*! \class NeighborTable \brief class for neighbor search */ template class NeighborTable { public: // types typedef valarray::iterator> > arraytype; typedef vector::iterator> pointtype; typedef pair indextype; typedef list > pairlist; typedef list particlelist; /* #if HAVE_HASH_MAP */ /* typedef std::hash_map IdParticleMap; */ /* #else */ typedef std::map IdParticleMap; /* #endif */ typedef typename list::iterator iterator; private: // member variables list m_list; //!< list of particles arraytype m_array; //!< search array IdParticleMap m_idParticleMap; //!< mapping between particle-id and particle-pointer Vec3 m_p0_global; //!< minimum corner of global search space double m_dim; //!< grid spacing of search array double m_alpha; //!< padding factor (dim=2*rmax+alpha) int m_global_idx; //!< minimum corner index (x component) int m_global_idy; //!< minimum corner index (y component) int m_global_idz; //!< minimum corner index (z component) int m_xsize; //!< number of grid point, x direction int m_ysize; //!< number of grid point, y direction int m_zsize; //!< number of grid point, z direction bool m_valid; Vec3 m_min_corner; //!< minimum corner of the search array Vec3 m_max_corner; //!< maximum corner of the search array // private member functions void clear_search_array(); int index(const Vec3&); // index from position void addPairsToList(T_Handle,int,int); void addPairsToListLocal(T_Handle,int); void addPairsToListFlagged(T_Handle,int,int); void addPairsToListLocalFlagged(T_Handle,int); arraytype *array(){return &m_array;}; public: //! Constructors NeighborTable(); NeighborTable(int,int,int,double,double,const Vec3&,int,int,int); ~NeighborTable(); void insert(const T&); //!< particle insertion void insert(iterator i,const T& data){insert(data);}; //!< STL compat. insert void build(); //!< build search array inline int index(int,int,int) const; // total index from x,y,z indices //!< iterators iterator begin(){return m_list.begin();}; iterator end(){return m_list.end();}; //!< number of particles at a given gridpoint unsigned int nparts_at_gridpoint(unsigned int idx) const { return (m_array[idx]).size(); } // check in posn. is in inner part bool isInInner(const Vec3&); //!< dimensions int xsize(){return m_xsize;}; int ysize(){return m_ysize;}; int zsize(){return m_zsize;}; int size(){return m_list.size();}; Vec3 base_point() const {return m_p0_global;}; int base_idx_x() const {return m_global_idx;}; int base_idx_y() const {return m_global_idy;}; int base_idx_z() const {return m_global_idz;}; //!< partial access functions NTSlab xy_slab(int); NTSlab xz_slab(int); NTSlab yz_slab(int); NTBlock block(int,int,int,int,int,int); NTBlock block(const Vec3&,const Vec3&); NTBlock inner(); // access ops T* ptr(NeighborTable::indextype); T& ref(NeighborTable::indextype); T* ptr_by_id(int); T *getNearestPtr(const Vec3&); // erase particle (not meant to be used directly) void erase(NeighborTable::indextype); // neigbor list creation T_Handle getFullList(); T_Handle getNewList(); T_Handle getParticlesAtPlane(const Vec3&,const Vec3&); // distance as parameter ?? T_Handle getParticlesNearTriangle(const Triangle&); T_Handle getParticlesNearEdge(const AEdge*); T_Handle getParticlesNearPoint(const Vec3&); T_Handle getAllParticles(); //!output template friend std::ostream& operator<<(std::ostream &, const NeighborTable &); }; #include "ntable/src/ntable.hpp" #endif // __NTABLE_H ./ntable/src/nt_slab.h0000664000175000017500000000440612176660653014472 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __NT_SLAB_H #define __NT_SLAB_H //--- project includes --- #include "nts_iter.h" #include "ntable.h" #include "dslice.h" //--- forward decls --- template class NTSlab; template bool operator==(const NTSlab&,const NTSlab&); template bool operator!=(const NTSlab&,const NTSlab&); template ostream& operator<<(ostream &, const NTSlab &); /*! \class NTSlab \brief representation of a slab of the search array of a NeigborTable */ template class NTSlab { public: // types typedef NTSlab_iter iterator; typedef NTSlab_iter const_iterator; // dodgy typedef T value_type; private: NeighborTable *m_table; DSlice m_sl; public: NTSlab(); NTSlab(NeighborTable*,DSlice); unsigned int slab_size()const {return m_sl.size();} unsigned int size()const; // begin and end iterators iterator begin(); iterator end(); iterator rbegin(); iterator rend(); //!< number of particles at a given gridpoint unsigned int nparts_at_gridpoint(unsigned int idx) const {return m_table->nparts_at_gridpoint(m_sl[idx]);}; // access ops T* ptr(typename NeighborTable::indextype); T& ref(typename NeighborTable::indextype); // insert ops void insert(iterator,const T&); // erase ops void erase(iterator); void erase(iterator,iterator); //comparison friend bool operator== <>(const NTSlab&,const NTSlab&); friend bool operator!= <>(const NTSlab&,const NTSlab&); friend ostream& operator<< <>(ostream &, const NTSlab &); }; #include "nt_slab.hpp" #endif //__NT_SLAB_H ./ntable/src/Makefile.am0000664000175000017500000000215712176660653014734 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES = libntable.la libntable_la_SOURCES = \ dslice.cpp \ dslice.h \ handle.hpp \ ntb_iter.h \ nt_block.hpp \ nt_slab.h \ handle_exception.h \ ntable.h \ ntb_iter.hpp \ nts_iter.h \ nt_slab.hpp \ handle.h \ ntable.hpp \ nt_block.h \ nts_iter.hpp libntable_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la ./ntable/src/dslice.h0000664000175000017500000000257512176660653014320 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __DSLICE_H #define __DSLICE_H //--- IO includes --- #include using std::ostream; using std::endl; class DSlice { private: int m_start; int m_length1,m_length2; int m_stride1,m_stride2; public: DSlice(int st,int l1,int s1,int l2,int s2): m_start(st),m_length1(l1),m_length2(l2),m_stride1(s1),m_stride2(s2) {} inline unsigned int size() const {return m_length1*m_length2;} inline int operator[](int idx) const {return m_start+(idx%m_length1)*m_stride1+(idx/m_length1)*m_stride2;} friend bool operator==(const DSlice&,const DSlice&); friend bool operator!=(const DSlice&,const DSlice&); friend ostream& operator<< (ostream&,const DSlice&); }; #endif //__DSLICE_H ./ntable/src/handle.h0000664000175000017500000000235512176660653014304 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __HANDLE_H #define __HANDLE_H //--- project includes --- #include "handle_exception.h" /*! \class T_Handle \brief Template class for a handle/ref. counted pointer Extended version of the example in Stroustrup, p. 783 */ template class T_Handle { private: T* m_rep; int* m_count; public: T_Handle(T*); T_Handle(const T_Handle&); ~T_Handle(); T_Handle& operator=(const T_Handle&); inline T* operator->() {return m_rep;}; inline T& operator*(){return *m_rep;}; //void destroy(); }; #include "handle.hpp" #endif // __HANDLE_H ./ntable/src/ntable.hpp0000664000175000017500000005107112176660653014655 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "nt_block.h" /*! construct an empty, uninitialized NeighborTable -> not usable */ template NeighborTable::NeighborTable() : m_list(), m_array(), m_idParticleMap(), m_p0_global(), m_dim(0), m_alpha(0), m_global_idx(0), m_global_idy(0), m_global_idz(0), m_xsize(0), m_ysize(0), m_zsize(0), m_valid(false) { } /*! construct neigbortable with known dimensions \param x nr. of grid points in x-direction \param y nr. of grid points in y-direction \param z nr. of grid points in z-direction \param range grid spacing \param alpha pair search cutoff \param p0_global minimal corner (origin) of the global search space \param ix x-index of the local origin \param iy y-index of the local origin \param iz z-index of the local origin */ template NeighborTable::NeighborTable( int x, int y, int z, double range, double alpha, const Vec3& p0_global, int ix, int iy, int iz ) : m_p0_global(p0_global), m_dim(range), m_alpha(alpha), m_xsize(x), m_ysize(y), m_zsize(z), m_valid(true) { m_global_idx=ix; m_global_idy=iy; m_global_idz=iz; m_min_corner=Vec3(m_p0_global.X()+m_dim*double(m_global_idx), m_p0_global.Y()+m_dim*double(m_global_idy), m_p0_global.Z()+m_dim*double(m_global_idz)); m_max_corner=Vec3(m_p0_global.X()+m_dim*double(m_global_idx+m_xsize), m_p0_global.Y()+m_dim*double(m_global_idy+m_ysize), m_p0_global.Z()+m_dim*double(m_global_idz+m_zsize)); console.Debug() << "Ntable corners : " << m_min_corner << " - " << m_max_corner << "\n"; m_array.resize(m_xsize*m_ysize*m_zsize); } /*! destruct NeighborTable */ template NeighborTable::~NeighborTable() { } /*! clean up the search array */ template void NeighborTable::clear_search_array() { for(unsigned int iter=0;iter int NeighborTable::index(const Vec3& pos) { int idx=-1; int ix=int(floor((pos.X()-m_p0_global.X())/m_dim))-m_global_idx; int iy=int(floor((pos.Y()-m_p0_global.Y())/m_dim))-m_global_idy; int iz=int(floor((pos.Z()-m_p0_global.Z())/m_dim))-m_global_idz; if((ix>=0)&&(ix=0)&&(iy=0)&&(iz int NeighborTable::index(int x,int y,int z) const { return m_ysize*m_zsize*x+m_zsize*y+z; } /*! check if a position is in the inner part \param pos the position */ template bool NeighborTable::isInInner(const Vec3& pos) { bool res; int ix=int(floor((pos.X()-m_p0_global.X())/m_dim))-m_global_idx; int iy=int(floor((pos.Y()-m_p0_global.Y())/m_dim))-m_global_idy; int iz=int(floor((pos.Z()-m_p0_global.Z())/m_dim))-m_global_idz; if(m_zsize<3) { // 2D-> ignore Z res=((ix>0) && (ix0) && (iy0) && (ix0) && (iy0) && (iz void NeighborTable::insert(const T& t) { // put into list typename list::iterator iter=m_list.insert(m_list.end(),t); // put into array int idx=index(iter->getPos()); if(idx!=-1){ // m_idParticleMap.insert(IdParticleMap::value_type(iter->getID(),&(*iter))); m_idParticleMap.insert(make_pair(iter->getID(),&(*iter))); m_array[idx].push_back(iter); } else { // outside -> delete typename list::iterator h=iter; iter--; m_list.erase(h); } } /*! Build or rebuild the search array, calls clean_search_array. Particles outside the search space are removed from the list */ template void NeighborTable::build() { clear_search_array(); // clean out id map m_idParticleMap.clear(); for(typename list::iterator iter=m_list.begin(); iter!=m_list.end(); iter++){ int idx=index(iter->getPos()); int id=iter->getID(); if(idx!=-1){ m_array[idx].push_back(iter); m_idParticleMap[id]=&(*iter); } else { // outside -> delete typename list::iterator h=iter; iter--; // delete from list m_list.erase(h); } } } /*! Return pointer to particle at index. */ template T* NeighborTable::ptr(NeighborTable::indextype idx) { return &(*(m_array[idx.first][idx.second])); } /*! Return reference to particle at index. */ template T& NeighborTable::ref(NeighborTable::indextype idx) { return *(m_array[idx.first][idx.second]); } /*! Return pointer to particle with given id. Return NULL if the table doesn't contain the particle. \param id the id of the particle */ template T* NeighborTable::ptr_by_id(int id) { T* pParticle = NULL; typename IdParticleMap::iterator it = m_idParticleMap.find(id); if (it != m_idParticleMap.end()) { pParticle = it->second; } // debug output if(pParticle!=NULL){ if(id!=pParticle->getID()){ console.Debug() << "inconsistent idParticleMap: " << id << " vs. " << pParticle->getID() << "\n"; } } return pParticle; } /*! Return pointer to particle nearest to given position. Returns NULL if position is outside search area. \param pos position */ template T *NeighborTable::getNearestPtr(const Vec3& pos) { T* res=NULL; // get grid index for pos int idx=index(pos); double dist=3.0*(m_dim*m_dim); // squared max. dist (grid diagonal) if(idx!=-1){ for(typename pointtype::iterator iter=m_array[idx].begin(); iter!=m_array[idx].end(); iter++){ double ndist=(pos-(*iter)->getPos()).norm2(); res=(ndist void NeighborTable::erase(NeighborTable::indextype idx) { m_idParticleMap.erase(m_array[idx.first][idx.second]->getID()); m_list.erase(m_array[idx.first][idx.second]); m_array[idx.first].erase(m_array[idx.first].begin()+idx.second); } /*! Return representation for a slab of the search array in the xy-plane. \param z position of the slab in z-direction */ template NTSlab NeighborTable::xy_slab(int z) { return NTSlab(this,DSlice(z,m_ysize,m_zsize,m_xsize,m_ysize*m_zsize)); } /*! Return representation for a slab of the search array in the xz-plane. \param y position of the slab in y-direction */ template NTSlab NeighborTable::xz_slab(int y) { return NTSlab(this,DSlice(y*m_zsize,m_zsize,1,m_xsize,m_ysize*m_zsize)); } /*! Return representation for a slab of the search array in the yz-plane. \param x position of the slab in x-direction */ template NTSlab NeighborTable::yz_slab(int x) { return NTSlab(this,DSlice(x*m_ysize*m_zsize,m_zsize,1,m_ysize,m_zsize)); } /* Return block of the search array \param xmin minimum index in x-dimension \param xmax maximum index in x-dimension \param ymin minimum index in y-dimension \param ymax maximum index in y-dimension \param zmin minimum index in z-dimension \param zmax maximum index in z-dimension */ template NTBlock NeighborTable::block(int xmin,int xmax,int ymin,int ymax,int zmin,int zmax) { return NTBlock(this,xmin,xmax,ymin,ymax,zmin,zmax); } /* Return block of the search array. \param vmin minimum position \param vmax maximum position */ template NTBlock NeighborTable::block(const Vec3& vmin,const Vec3& vmax) { // minimum corner index int xmin=int(floor((vmin.X()-m_p0_global.X())/m_dim))-m_global_idx; int ymin=int(floor((vmin.Y()-m_p0_global.Y())/m_dim))-m_global_idy; int zmin=int(floor((vmin.Z()-m_p0_global.Z())/m_dim))-m_global_idz; // check for minimum outside xmin=(xmin < 0) ? 0 : xmin; ymin=(ymin < 0) ? 0 : ymin; zmin=(zmin < 0) ? 0 : zmin; // maximum corner index int xmax=int(floor((vmax.X()-m_p0_global.X())/m_dim))-m_global_idx; int ymax=int(floor((vmax.Y()-m_p0_global.Y())/m_dim))-m_global_idy; int zmax=int(floor((vmax.Z()-m_p0_global.Z())/m_dim))-m_global_idz; // check for maximum outside xmax=(xmax < m_xsize) ? xmax : m_xsize-1; ymax=(ymax < m_ysize) ? ymax : m_ysize-1; zmax=(zmax < m_zsize) ? zmax : m_zsize-1; return NTBlock(this,xmin,xmax,ymin,ymax,zmin,zmax); } /*! Return the inner region, i.e. excluding the boundary, as a NTBlock */ template NTBlock NeighborTable::inner() { return NTBlock(this,1,m_xsize-2,1,m_ysize-2,1,m_zsize-2); } /*! Add pairs containing the particles at two given gridpoints to list. \param list the pairlist \param idx1 the index of the first gridpoint \param idx2 the index of the second gridpoint */ template void NeighborTable::addPairsToList(T_Handle list,int idx1,int idx2) { for(typename pointtype::iterator iter=m_array[idx1].begin(); iter!=m_array[idx1].end(); iter++){ for(typename pointtype::iterator iter2=m_array[idx2].begin(); iter2!=m_array[idx2].end(); iter2++){ double dist2=((*iter)->getPos()-(*iter2)->getPos()).norm2(); double dmax=(*iter)->getRad()+(*iter2)->getRad()+m_alpha; if(dist2<=(dmax*dmax)){ if((*iter)->getID()<(*iter2)->getID()){ list->push_back(make_pair(&(**iter),&(**iter2))); } else { list->push_back(make_pair(&(**iter2),&(**iter))); } } } } } /*! Add pairs containing the particles at one given gridpoint to list. \param list the pairlist \param idx the index of the gridpoint */ template void NeighborTable::addPairsToListLocal(T_Handle list,int idx) { if(m_array[idx].size()>=2){ // at least 2 particles here, or no pairs for(typename pointtype::iterator iter=m_array[idx].begin(); iter!=m_array[idx].end()-1; iter++){ for(typename pointtype::iterator iter2=iter+1; iter2!=m_array[idx].end(); iter2++){ double dist2=((*iter)->getPos()-(*iter2)->getPos()).norm2(); double dmax=(*iter)->getRad()+(*iter2)->getRad()+m_alpha; if(dist2<=(dmax*dmax)){ if((*iter)->getID()<(*iter2)->getID()){ list->push_back(make_pair(&(**iter),&(**iter2))); } else { list->push_back(make_pair(&(**iter2),&(**iter))); } } } } } } /*! Add pairs containing at least one flagged particle at two given gridpoints to list. \param list the pairlist \param idx1 the index of the first gridpoint \param idx2 the index of the second gridpoint */ template void NeighborTable::addPairsToListFlagged(T_Handle list,int idx1,int idx2) { for(typename pointtype::iterator iter=m_array[idx1].begin(); iter!=m_array[idx1].end(); iter++){ if((*iter)->isFlagged()){ for(typename pointtype::iterator iter2=m_array[idx2].begin(); iter2!=m_array[idx2].end(); iter2++){ if((*iter2)->isFlagged()){ if((*iter)->getID()<(*iter2)->getID()){ list->push_back(make_pair(&(**iter),&(**iter2))); } else { list->push_back(make_pair(&(**iter2),&(**iter))); } } } } } } /*! Add pairs containing at least one flagged particle at one given gridpoint to list. \param list the pairlist \param idx the index of the gridpoint */ template void NeighborTable::addPairsToListLocalFlagged(T_Handle list,int idx) { if(m_array[idx].size()>=2){ // at least 2 particles here, or no pairs for(typename pointtype::iterator iter=m_array[idx].begin(); iter!=m_array[idx].end()-1; iter++){ if((*iter)->isFlagged()){ for(typename pointtype::iterator iter2=iter+1; iter2!=m_array[idx].end(); iter2++){ if((*iter2)->isFlagged()){ if((*iter)->getID()<(*iter2)->getID()){ list->push_back(make_pair(&(**iter),&(**iter2))); } else { list->push_back(make_pair(&(**iter2),&(**iter))); } } } } } } } /*! Create a full list of pair of neighboring particles and return handle to it. */ template T_Handle::pairlist> NeighborTable::getFullList() { T_Handle::pairlist> list=new typename NeighborTable::pairlist; for(int ix=0;ix0) ? ix-1 : ix; int ymin=(iy>0) ? iy-1 : iy; int zmin=(iz>0) ? iz-1 : iz; for(int i=xmin;i<=xmax;i++){ for(int j=ymin;j<=ymax;j++){ for(int k=zmin;k<=zmax;k++){ int idx1=index(ix,iy,iz); int idx2=index(i,j,k); if(idx2>idx1){ addPairsToList(list,idx1,idx2); } } } } } } } return list; } /*! Create a list of all pairs of neighboring particles involving a "flagged" particles and return handle to it. */ template T_Handle::pairlist> NeighborTable::getNewList() { T_Handle::pairlist> nlist=new typename NeighborTable::pairlist; for(int ix=0;ix0) ? ix-1 : ix; int ymin=(iy>0) ? iy-1 : iy; int zmin=(iz>0) ? iz-1 : iz; for(int i=xmin;i<=xmax;i++){ for(int j=ymin;j<=ymax;j++){ for(int k=zmin;k<=zmax;k++){ int idx1=index(ix,iy,iz); int idx2=index(i,j,k); if(idx2>idx1){ addPairsToListFlagged(nlist,idx1,idx2); } } } } } } } for(typename list::iterator iter=m_list.begin(); iter!=m_list.end(); iter++){ iter->setFlag(false); } return nlist; } /*! Get list of all particles along a given plane. Naive implementation, i.e. check all particles for distance to plane. The plane is given by one point an the normal. \param orig The origin of the plane \param normal The normal of the plane */ template T_Handle::particlelist> NeighborTable::getParticlesAtPlane(const Vec3& orig, const Vec3& normal) { T_Handle::particlelist> nlist=new typename NeighborTable::particlelist; console.Debug() << "NeighborTable::getParticlesAtPlane: m_dim = " << m_dim << "\n"; for(typename list::iterator iter=m_list.begin(); iter!=m_list.end(); iter++){ double dist=(iter->getPos()-orig)*normal; if(fabs(dist)push_back(&(*iter)); } } console.Debug() << "NeighborTable::getParticlesAtPlane: found = " << nlist->size() << "particles\n"; return nlist; } /*! Get list of all particles near a given triangle. Checks all particles at grid within range of the bounding box of the triangle; (could be improved) \param T the triangle */ template T_Handle::particlelist> NeighborTable::getParticlesNearTriangle(const Triangle& Tr) { T_Handle::particlelist> nlist=new typename NeighborTable::particlelist; // work out search area from bounding box of the triangle Vec3 v_min=Tr.getBoundingBoxMin()-Vec3(m_dim,m_dim,m_dim); Vec3 v_max=Tr.getBoundingBoxMax()+Vec3(m_dim,m_dim,m_dim); // check if completely outside if((v_min.X()m_min_corner.X())&&(v_max.Y()>m_min_corner.Y())&&(v_max.Z()>m_min_corner.Z())){ NTBlock TriangleBlock=block(v_min,v_max); for(typename NTBlock::iterator iter=TriangleBlock.begin(); iter!=TriangleBlock.end(); iter++){ if(Tr.sep(iter->getPos()) < iter->getRad()+m_alpha){ nlist->push_back(&(*iter)); } } } return nlist; } /*! Get list of all particles near a given edge. Checks all particles at grid within range of the bounding box of the triangle; (could be improved - search area via Bresenham) \param E the Edge */ template T_Handle::particlelist> NeighborTable::getParticlesNearEdge(const AEdge* E) { T_Handle::particlelist> nlist=new typename NeighborTable::particlelist; // get search area via bounding box Vec3 v_min=E->getBoundingBoxMin()-Vec3(m_dim,m_dim,m_dim); Vec3 v_max=E->getBoundingBoxMax()+Vec3(m_dim,m_dim,m_dim); // check if completely outside if((v_min.X()m_min_corner.X())&&(v_max.Y()>m_min_corner.Y())&&(v_max.Z()>m_min_corner.Z())){ NTBlock SearchBlock=block(v_min,v_max); for(typename NTBlock::iterator iter=SearchBlock.begin(); iter!=SearchBlock.end(); iter++){ if(E->sep(iter->getPos()) < iter->getRad()+m_alpha){ nlist->push_back(&(*iter)); } } } return nlist; } /*! Get list of all particles near a given point. \param p the point */ template T_Handle::particlelist> NeighborTable::getParticlesNearPoint(const Vec3& p) { T_Handle::particlelist> nlist=new typename NeighborTable::particlelist; // get search area via bounding box Vec3 v_min=p-Vec3(m_dim,m_dim,m_dim); Vec3 v_max=p+Vec3(m_dim,m_dim,m_dim); // check if completely outside if((v_min.X()m_min_corner.X())&&(v_max.Y()>m_min_corner.Y())&&(v_max.Z()>m_min_corner.Z())){ NTBlock SearchBlock=block(v_min,v_max); for(typename NTBlock::iterator iter=SearchBlock.begin(); iter!=SearchBlock.end(); iter++){ if((p-iter->getPos()).norm() < iter->getRad()+m_alpha){ nlist->push_back(&(*iter)); } } } return nlist; } /*! Get list of all particles */ template T_Handle::particlelist> NeighborTable::getAllParticles() { T_Handle::particlelist> nlist=new typename NeighborTable::particlelist; for(typename list::iterator iter=m_list.begin(); iter!=m_list.end(); iter++){ nlist->push_back(&(*iter)); } return nlist; } /*! output operator for NeighborTable \param ost the output stream \param NT the NeighborTable */ template std::ostream& operator<<(std::ostream& ost, const NeighborTable& NT) { ost << "---NeighborTable---" << endl; ost << "3d array dimensions (x,y,z),size : (" << NT.m_xsize << "," << NT.m_ysize<< "," << NT.m_zsize << "), " << NT.m_array.size() << endl; ost << "search range : " << NT.m_dim << endl; ost << "--list--" << endl; ost << (NT.m_list).size() << " elements" << endl; for(typename list::const_iterator iter=(NT.m_list).begin(); iter!=(NT.m_list).end(); iter++){ ost << iter->getID() << " " << iter->getPos() << endl; } ost << "---search array---" << endl; for(int ix=0;ixgetID() << " "; } ost << endl; } } } return ost; } ./ntable/src/dslice.cpp0000664000175000017500000000264612176660653014652 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "dslice.h" bool operator==(const DSlice& s1,const DSlice& s2) { return (s1.m_start==s2.m_start && s1.m_length1==s2.m_length1 && s1.m_stride1==s2.m_stride1 && s1.m_length2==s2.m_length2 && s1.m_stride2==s2.m_stride2); } bool operator!=(const DSlice& s1,const DSlice& s2) { return (s1.m_start!=s2.m_start || s1.m_length1!=s2.m_length1 || s1.m_stride1!=s2.m_stride1 || s1.m_length2!=s2.m_length2 || s1.m_stride2!=s2.m_stride2); } ostream& operator<< (ostream& ost,const DSlice& s) { ost << "DSlice: " << endl; ost << "start: " << s.m_start << endl; ost << "length1, stride1 : " << s.m_length1 << ", " << s.m_stride1 << endl; ost << "length2, stride2 : " << s.m_length2 << ", " << s.m_stride2 << endl; return ost; } ./ntable/src/nts_iter.hpp0000664000175000017500000000570212176660653015237 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! Construct a NTSlab iterator */ template NTSlab_iter::NTSlab_iter(NTSlab *a,typename NeighborTable::indextype idx): m_slab(a),m_curr(idx) {} /*! prefix increment operator \warning not impl. */ template NTSlab_iter& NTSlab_iter::operator++() { return *this; } /*! postfix increment operator */ template NTSlab_iter NTSlab_iter::operator++(int) { NTSlab_iter t=*this; if(m_curr.second+1 < static_cast(m_slab->nparts_at_gridpoint(m_curr.first))) { m_curr.second++; } else { m_curr.second=0; m_curr.first++; while( (m_curr.first < static_cast(m_slab->slab_size())) && (m_slab->nparts_at_gridpoint(m_curr.first) == 0) ){ m_curr.first++; } } return t; } /*! prefix decrement operator \warning not impl. */ template NTSlab_iter& NTSlab_iter::operator--() { return *this; } /*! postfix decrement operator */ template NTSlab_iter NTSlab_iter::operator--(int) { NTSlab_iter t=*this; if(m_curr.second>0) { m_curr.second--; } else { m_curr.first--; while((m_curr.first>=0)&& m_slab->nparts_at_gridpoint(m_curr.first)==0){ m_curr.first--; } if(m_curr.first!=-1){ m_curr.second=m_slab->nparts_at_gridpoint(m_curr.first)-1; } } return t; } /*! access operator \todo what happens if end() is dereferenced ? */ template T* NTSlab_iter::operator->() { return m_slab->ptr(m_curr); } /*! dereference operator \todo what happens if end() is dereferenced ? */ template T& NTSlab_iter::operator*() { return m_slab->ref(m_curr); } /* get current index */ template typename NeighborTable::indextype NTSlab_iter::index() const { return m_curr; } /*! equality operator */ template bool operator== (const NTSlab_iter& i1,const NTSlab_iter& i2) { return (i1.m_slab==i2.m_slab && i1.m_curr.first==i2.m_curr.first && i1.m_curr.second==i2.m_curr.second); } /*! inequality operator */ template bool operator!= (const NTSlab_iter& i1,const NTSlab_iter& i2) { return (i1.m_slab!=i2.m_slab || i1.m_curr.first!=i2.m_curr.first || i1.m_curr.second!=i2.m_curr.second); } ./ntable/src/nts_iter.h0000664000175000017500000000361212176660653014675 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __NTS_ITER_H #define __NTS_ITER_H //--- project includes --- #include "ntable.h" //---system includes--- #include //--- STL includes --- #include #include #include using std::slice; using std::vector; using std::list; //--- forward decls --- template class NTSlab_iter; template bool operator==(const NTSlab_iter&,const NTSlab_iter&); template bool operator!=(const NTSlab_iter&,const NTSlab_iter&); template class NTSlab; /*! \class NTSlab_iter \brief iterator for a NTSlab */ template class NTSlab_iter { private: NTSlab *m_slab; typename NeighborTable::indextype m_curr; public: NTSlab_iter(NTSlab*,typename NeighborTable::indextype); //! move ops NTSlab_iter& operator++(); NTSlab_iter operator++(int); NTSlab_iter& operator--(); NTSlab_iter operator--(int); //! access ops T* operator->(); T& operator*(); typename NeighborTable::indextype index() const; //comparison friend bool operator== <>(const NTSlab_iter&,const NTSlab_iter&); friend bool operator!= <>(const NTSlab_iter&,const NTSlab_iter&); }; #include "nts_iter.hpp" #endif //__NTS_ITER_H ./ntable/src/nt_slab.hpp0000664000175000017500000001175412176660653015036 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! Construct an empty NTSlab */ template NTSlab::NTSlab():m_sl(0,0,0,0,0) { m_table=NULL; } /*! Construct a NTSlab from a pointer to a NeigborTable and an valarray slice \param a the pointer to the search array \param s the DSlice containing the slab parameters */ template NTSlab::NTSlab(NeighborTable* t,DSlice s):m_table(t),m_sl(s) { } /*! get the number of particles in the slab */ template unsigned int NTSlab::size()const { unsigned int np=0; for(unsigned int i=0;inparts_at_gridpoint(m_sl[i]); } return np; } /*! Return an iterator pointing to the first particle in the slab \todo check for end */ template typename NTSlab::iterator NTSlab::begin() { // find the first occupied site in the search array unsigned int i=0; while( (inparts_at_gridpoint(m_sl[i]) == 0) ){ i++; } return typename NTSlab::iterator( this, typename NeighborTable::indextype(i,0) ); } /*! Return an iterator pointing past the last particle in the slab */ template typename NTSlab::iterator NTSlab::end() { return typename NTSlab::iterator( this, typename NeighborTable::indextype(m_sl.size(),0) ); } /*! Return an iterator pointing to the last particle in the slab \todo check for end */ template typename NTSlab::iterator NTSlab::rbegin() { int j; // find the last occupied site in the search array int i=m_sl.size()-1; while((i>-1)&& nparts_at_gridpoint(i)==0){ i--; } j=nparts_at_gridpoint(i)-1; if(i==-1) j=0; // rend return typename NTSlab::iterator( this, typename NeighborTable::indextype(i,j) ); } /*! Return an iterator pointing before the first particle in the slab */ template typename NTSlab::iterator NTSlab::rend() { return typename NTSlab::iterator( this, typename NeighborTable::indextype(-1,0) ); } /*! Return pointer to particle at index. Does the translation from the slab index to the array index. \param idx the index */ template T* NTSlab::ptr(typename NeighborTable::indextype idx) { typename NeighborTable::indextype a_idx; a_idx.first=m_sl[idx.first]; a_idx.second=idx.second; return m_table->ptr(a_idx); } /*! Return reference to particle at index. Does the translation from the slab index to the array index. \param idx the index */ template T& NTSlab::ref(typename NeighborTable::indextype idx) { typename NeighborTable::indextype a_idx; a_idx.first=m_sl[idx.first]; a_idx.second=idx.second; return m_table->ref(a_idx); } /*! Insert single item. The iterator parameter is only there to ensure inteface compatibility with STL containers and ignored otherwise. \param data the item to be inserted */ template void NTSlab::insert(typename NTSlab::iterator,const T& data) { m_table->insert(data); } /*! erase single item \param */ template void NTSlab::erase(typename NTSlab::iterator pos) { // check if iter points into this slab ? // erase item typename NeighborTable::indextype a_idx; a_idx.first=m_sl[pos.index().first]; a_idx.second=pos.index().second; m_table->erase(a_idx); } /*! erase range \param \param */ template void NTSlab::erase(typename NTSlab::iterator begin,typename NTSlab::iterator end) { // do it backwards, because erase invalidates all iterators behind begin--; end--; for(typename NTSlab::iterator iter=end; iter!=begin; iter--){ erase(iter); } } template bool operator== (const NTSlab& s1,const NTSlab& s2) { return(s1.m_table==s2.m_table && s1.m_sl==s2.m_sl); } template bool operator!= (const NTSlab& s1,const NTSlab& s2) { return (s1.m_table!=s2.m_table || s1.m_sl!=s2.m_sl); } /*! output operator for NTSlab \param ost the output stream \param NTS the NTSlab */ template ostream& operator<< (ostream& ost,const NTSlab& NTS) { ost << "---NTSlab---" << endl; ost << "indices:" << endl; for(unsigned int i=0;i using std::vector; //--- IO includes --- #include using std::cout; using std::endl; int main(int argc,char **argv) { NeighborTable NT(3,3,4,1.0,Vec3(0.0,0.0,0.0),0,0,0); NT.insert(CBasicParticle(1,Vec3(0.50,1.50,2.50),1.0)); NT.insert(CBasicParticle(2,Vec3(0.54,0.82,2.34),1.0)); NT.insert(CBasicParticle(3,Vec3(0.46,2.00,0.14),1.0)); NT.insert(CBasicParticle(4,Vec3(4.00,2.00,1.00),1.0)); // outside NT.insert(CBasicParticle(5,Vec3(1.08,1.38,3.19),1.0)); NT.insert(CBasicParticle(6,Vec3(0.49,0.31,2.49),1.0)); NT.insert(CBasicParticle(7,Vec3(1.26,1.49,1.40),1.0)); cout << NT << endl; // test slabs and slab iterators NTSlab NTS1=NT.xy_slab(2); cout << "xy_slab(2), size:" << NTS1.size() << endl; for(NTSlab::iterator iter=NTS1.begin(); iter!=NTS1.end(); iter++){ cout << iter->getID() << " "; } cout << endl; cout << "xy_slab(2) backwards" << endl; for(NTSlab::iterator iter=NTS1.rbegin(); iter!=NTS1.rend(); iter--){ cout << iter->getID() << " "; } cout << endl; NTSlab NTS2=NT.xz_slab(1); cout << "xz_slab(1)" << endl; for(NTSlab::iterator iter=NTS2.begin(); iter!=NTS2.end(); iter++){ cout << iter->getID() << " "; } cout << endl; NTSlab NTS3=NT.yz_slab(1); cout << "yz_slab(1)" << endl; for(NTSlab::iterator iter=NTS3.begin(); iter!=NTS3.end(); iter++){ cout << iter->getID() << " "; } cout << endl; // test insert NTS1.insert(NTS1.end(),CBasicParticle(8,Vec3(1.29,1.47,1.42),1.0)); cout << NT << endl; // test nblist T_Handle::pairlist> plist=NT.getFullList(); cout << "nr. of pairs found: " << plist->size() << endl; for(NeighborTable::pairlist::iterator iter=plist->begin(); iter!=plist->end(); iter++){ cout << iter->first->getID() << "," << iter->second->getID() << endl; } plist->erase(plist->begin(),plist->end()); cout << "erased" << endl; // test access by id CBasicParticle *P1=NT.ptr_by_id(2); cout << "P1 : " << P1->getPos() << endl; // test block NTBlock NTB=NT.block(1,1,1,2,1,3); cout << NTB << endl; // test block iter cout << "block iter" << endl; for(NTBlock::iterator iter=NTB.begin(); iter!=NTB.end(); iter++){ cout << iter->getID() << " "; } cout << endl; // inner block NTBlock IB=NT.inner(); cout << IB << endl; // test particles along plane cout << "particles at plane (1,0,0)(1,0,0)" << endl; Vec3 Orig=Vec3(1.0,0.0,0.0); Vec3 Normal=Vec3(1.0,0.0,0.0); T_Handle::particlelist> parlist=NT.getParticlesAtPlane(Orig,Normal); for(NeighborTable::particlelist::iterator iter=parlist->begin(); iter!=parlist->end(); iter++){ cout << (*iter)->getID() << " "; } cout << endl; // test getAllParticles parlist=NT.getAllParticles(); cout << "all particles " << endl; for(NeighborTable::particlelist::iterator iter=parlist->begin(); iter!=parlist->end(); iter++){ cout << (*iter)->getID() << " "; } cout << endl; // test getNearest Vec3 pos=Vec3(1.0,1.0,1.0); cout << "particle closest to " << pos << " " << (NT.getNearestPtr(pos))->getID() << endl; return 0; } ./CMakeLists.txt0000664000175000017500000000214512176660653013401 0ustar vborosvborosPROJECT(Esys C CXX) CMAKE_MINIMUM_REQUIRED(VERSION 2.8) FIND_PACKAGE(Boost COMPONENTS system filesystem python thread REQUIRED) INCLUDE(FindPythonLibs) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/Foundation) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/Parallel) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}) SET(CMAKE_C_COMPILER mpicc) SET(CMAKE_CXX_COMPILER mpicxx) ADD_DEFINITIONS(-DPACKAGE_NAME="esys") ADD_DEFINITIONS(-DPACKAGE_VERSION="2.1") #=========================================================== ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Foundation") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Fields") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Geometry") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Model") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/pis") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Tools") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/ntable") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/tml") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/ppa/src") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Parallel") #=========================================================== ./ChangeLog0000664000175000017500000000122312176660653012407 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# For information on source code changes, please visit the ESyS-Particle Bazaar repository: https://code.launchpad.net/~esys-p-dev/esys-particle/trunk ./Doxyfile0000664000175000017500000016472312176660653012362 0ustar vborosvboros# Doxyfile 1.5.6 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project # # All text after a hash (#) is considered a comment and will be ignored # The format is: # TAG = value [value, ...] # For lists items can also be appended using: # TAG += value [value, ...] # Values that contain spaces should be placed between quotes (" ") #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- # This tag specifies the encoding used for all characters in the config file # that follow. The default is UTF-8 which is also the encoding used for all # text before the first occurrence of this tag. Doxygen uses libiconv (or the # iconv built into libc) for the transcoding. See # http://www.gnu.org/software/libiconv for the list of possible encodings. DOXYFILE_ENCODING = UTF-8 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. PROJECT_NAME = ESyS-Particle # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or # if some version control system is used. PROJECT_NUMBER = 2.2.2 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. OUTPUT_DIRECTORY = Doc # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create # 4096 sub-directories (in 2 levels) under the output directory of each output # format and will distribute the generated files over these directories. # Enabling this option can be useful when feeding doxygen a huge amount of # source files, where putting all generated files in the same directory would # otherwise cause performance problems for the file system. CREATE_SUBDIRS = NO # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. # The default language is English, other supported languages are: # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, # Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, # Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), # Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, # Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, # and Ukrainian. OUTPUT_LANGUAGE = English # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will # include brief member descriptions after the members that are listed in # the file and class documentation (similar to JavaDoc). # Set to NO to disable this. BRIEF_MEMBER_DESC = YES # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend # the brief description of a member or function before the detailed description. # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the # brief descriptions will be completely suppressed. REPEAT_BRIEF = YES # This tag implements a quasi-intelligent brief description abbreviator # that is used to form the text in various listings. Each string # in this list, if found as the leading text of the brief description, will be # stripped from the text and the result after processing the whole list, is # used as the annotated text. Otherwise, the brief description is used as-is. # If left blank, the following values are used ("$name" is automatically # replaced with the name of the entity): "The $name class" "The $name widget" # "The $name file" "is" "provides" "specifies" "contains" # "represents" "a" "an" "the" ABBREVIATE_BRIEF = # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then # Doxygen will generate a detailed section even if there is only a brief # description. ALWAYS_DETAILED_SEC = NO # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all # inherited members of a class in the documentation of that class as if those # members were ordinary class members. Constructors, destructors and assignment # operators of the base classes will not be shown. INLINE_INHERITED_MEMB = NO # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full # path before files name in the file list and in the header files. If set # to NO the shortest path that makes the file name unique will be used. FULL_PATH_NAMES = YES # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag # can be used to strip a user-defined part of the path. Stripping is # only done if one of the specified strings matches the left-hand part of # the path. The tag can be used to show relative paths in the file list. # If left blank the directory from which doxygen is run is used as the # path to strip. STRIP_FROM_PATH = # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells # the reader which header file to include in order to use a class. # If left blank only the name of the header file containing the class # definition is used. Otherwise one should specify the include paths that # are normally passed to the compiler using the -I flag. STRIP_FROM_INC_PATH = # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter # (but less readable) file names. This can be useful is your file systems # doesn't support long names like on DOS, Mac, or CD-ROM. SHORT_NAMES = NO # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen # will interpret the first line (until the first dot) of a JavaDoc-style # comment as the brief description. If set to NO, the JavaDoc # comments will behave just like regular Qt-style comments # (thus requiring an explicit @brief command for a brief description.) JAVADOC_AUTOBRIEF = NO # If the QT_AUTOBRIEF tag is set to YES then Doxygen will # interpret the first line (until the first dot) of a Qt-style # comment as the brief description. If set to NO, the comments # will behave just like regular Qt-style comments (thus requiring # an explicit \brief command for a brief description.) QT_AUTOBRIEF = NO # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen # treat a multi-line C++ special comment block (i.e. a block of //! or /// # comments) as a brief description. This used to be the default behaviour. # The new default is to treat a multi-line C++ comment block as a detailed # description. Set this tag to YES if you prefer the old behaviour instead. MULTILINE_CPP_IS_BRIEF = NO # If the DETAILS_AT_TOP tag is set to YES then Doxygen # will output the detailed description near the top, like JavaDoc. # If set to NO, the detailed description appears after the member # documentation. DETAILS_AT_TOP = NO # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented # member inherits the documentation from any documented member that it # re-implements. INHERIT_DOCS = YES # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce # a new page for each member. If set to NO, the documentation of a member will # be part of the file/class/namespace that contains it. SEPARATE_MEMBER_PAGES = NO # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. TAB_SIZE = 8 # This tag can be used to specify a number of aliases that acts # as commands in the documentation. An alias has the form "name=value". # For example adding "sideeffect=\par Side Effects:\n" will allow you to # put the command \sideeffect (or @sideeffect) in the documentation, which # will result in a user-defined paragraph with heading "Side Effects:". # You can put \n's in the value part of an alias to insert newlines. ALIASES = # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C # sources only. Doxygen will then generate output that is more tailored for C. # For instance, some of the names that are used will be different. The list # of all members will be omitted, etc. OPTIMIZE_OUTPUT_FOR_C = NO # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java # sources only. Doxygen will then generate output that is more tailored for # Java. For instance, namespaces will be presented as packages, qualified # scopes will look different, etc. OPTIMIZE_OUTPUT_JAVA = NO # Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran # sources only. Doxygen will then generate output that is more tailored for # Fortran. OPTIMIZE_FOR_FORTRAN = NO # Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL # sources. Doxygen will then generate output that is tailored for # VHDL. OPTIMIZE_OUTPUT_VHDL = NO # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want # to include (a tag file for) the STL sources as input, then you should # set this tag to YES in order to let doxygen match functions declarations and # definitions whose arguments contain STL classes (e.g. func(std::string); v.s. # func(std::string) {}). This also make the inheritance and collaboration # diagrams that involve STL classes more complete and accurate. BUILTIN_STL_SUPPORT = NO # If you use Microsoft's C++/CLI language, you should set this option to YES to # enable parsing support. CPP_CLI_SUPPORT = NO # Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. # Doxygen will parse them like normal C++ but will assume all classes use public # instead of private inheritance when no explicit protection keyword is present. SIP_SUPPORT = NO # For Microsoft's IDL there are propget and propput attributes to indicate getter # and setter methods for a property. Setting this option to YES (the default) # will make doxygen to replace the get and set methods by a property in the # documentation. This will only work if the methods are indeed getting or # setting a simple type. If this is not the case, or you want to show the # methods anyway, you should set this option to NO. IDL_PROPERTY_SUPPORT = YES # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC # tag is set to YES, then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. DISTRIBUTE_GROUP_DOC = NO # Set the SUBGROUPING tag to YES (the default) to allow class member groups of # the same type (for instance a group of public functions) to be put as a # subgroup of that type (e.g. under the Public Functions section). Set it to # NO to prevent subgrouping. Alternatively, this can be done per class using # the \nosubgrouping command. SUBGROUPING = YES # When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum # is documented as struct, union, or enum with the name of the typedef. So # typedef struct TypeS {} TypeT, will appear in the documentation as a struct # with name TypeT. When disabled the typedef will appear as a member of a file, # namespace, or class. And the struct will be named TypeS. This can typically # be useful for C code in case the coding convention dictates that all compound # types are typedef'ed and only the typedef is referenced, never the tag name. TYPEDEF_HIDES_STRUCT = NO #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in # documentation are documented, even if no documentation was available. # Private class members and static file members will be hidden unless # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES EXTRACT_ALL = YES # If the EXTRACT_PRIVATE tag is set to YES all private members of a class # will be included in the documentation. EXTRACT_PRIVATE = YES # If the EXTRACT_STATIC tag is set to YES all static members of a file # will be included in the documentation. EXTRACT_STATIC = YES # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) # defined locally in source files will be included in the documentation. # If set to NO only classes defined in header files are included. EXTRACT_LOCAL_CLASSES = YES # This flag is only useful for Objective-C code. When set to YES local # methods, which are defined in the implementation section but not in # the interface are included in the documentation. # If set to NO (the default) only methods in the interface are included. EXTRACT_LOCAL_METHODS = NO # If this flag is set to YES, the members of anonymous namespaces will be # extracted and appear in the documentation as a namespace called # 'anonymous_namespace{file}', where file will be replaced with the base # name of the file that contains the anonymous namespace. By default # anonymous namespace are hidden. EXTRACT_ANON_NSPACES = NO # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all # undocumented members of documented classes, files or namespaces. # If set to NO (the default) these members will be included in the # various overviews, but no documentation section is generated. # This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_MEMBERS = NO # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all # undocumented classes that are normally visible in the class hierarchy. # If set to NO (the default) these classes will be included in the various # overviews. This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_CLASSES = NO # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all # friend (class|struct|union) declarations. # If set to NO (the default) these declarations will be included in the # documentation. HIDE_FRIEND_COMPOUNDS = NO # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any # documentation blocks found inside the body of a function. # If set to NO (the default) these blocks will be appended to the # function's detailed documentation block. HIDE_IN_BODY_DOCS = NO # The INTERNAL_DOCS tag determines if documentation # that is typed after a \internal command is included. If the tag is set # to NO (the default) then the documentation will be excluded. # Set it to YES to include the internal documentation. INTERNAL_DOCS = NO # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate # file names in lower-case letters. If set to YES upper-case letters are also # allowed. This is useful if you have classes or files whose names only differ # in case and if your file system supports case sensitive file names. Windows # and Mac users are advised to set this option to NO. CASE_SENSE_NAMES = YES # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen # will show members with their full class and namespace scopes in the # documentation. If set to YES the scope will be hidden. HIDE_SCOPE_NAMES = NO # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen # will put a list of the files that are included by a file in the documentation # of that file. SHOW_INCLUDE_FILES = YES # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. INLINE_INFO = YES # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen # will sort the (detailed) documentation of file and class members # alphabetically by member name. If set to NO the members will appear in # declaration order. SORT_MEMBER_DOCS = YES # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the # brief documentation of file, namespace and class members alphabetically # by member name. If set to NO (the default) the members will appear in # declaration order. SORT_BRIEF_DOCS = NO # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the # hierarchy of group names into alphabetical order. If set to NO (the default) # the group names will appear in their defined order. SORT_GROUP_NAMES = NO # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be # sorted by fully-qualified names, including namespaces. If set to # NO (the default), the class list will be sorted only by class name, # not including the namespace part. # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. # Note: This option applies only to the class list, not to the # alphabetical list. SORT_BY_SCOPE_NAME = NO # The GENERATE_TODOLIST tag can be used to enable (YES) or # disable (NO) the todo list. This list is created by putting \todo # commands in the documentation. GENERATE_TODOLIST = YES # The GENERATE_TESTLIST tag can be used to enable (YES) or # disable (NO) the test list. This list is created by putting \test # commands in the documentation. GENERATE_TESTLIST = YES # The GENERATE_BUGLIST tag can be used to enable (YES) or # disable (NO) the bug list. This list is created by putting \bug # commands in the documentation. GENERATE_BUGLIST = YES # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or # disable (NO) the deprecated list. This list is created by putting # \deprecated commands in the documentation. GENERATE_DEPRECATEDLIST= YES # The ENABLED_SECTIONS tag can be used to enable conditional # documentation sections, marked by \if sectionname ... \endif. ENABLED_SECTIONS = # The MAX_INITIALIZER_LINES tag determines the maximum number of lines # the initial value of a variable or define consists of for it to appear in # the documentation. If the initializer consists of more lines than specified # here it will be hidden. Use a value of 0 to hide initializers completely. # The appearance of the initializer of individual variables and defines in the # documentation can be controlled using \showinitializer or \hideinitializer # command in the documentation regardless of this setting. MAX_INITIALIZER_LINES = 30 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated # at the bottom of the documentation of classes and structs. If set to YES the # list will mention the files that were used to generate the documentation. SHOW_USED_FILES = YES # If the sources in your project are distributed over multiple directories # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy # in the documentation. The default is NO. SHOW_DIRECTORIES = YES # Set the SHOW_FILES tag to NO to disable the generation of the Files page. # This will remove the Files entry from the Quick Index and from the # Folder Tree View (if specified). The default is YES. SHOW_FILES = YES # Set the SHOW_NAMESPACES tag to NO to disable the generation of the # Namespaces page. This will remove the Namespaces entry from the Quick Index # and from the Folder Tree View (if specified). The default is YES. SHOW_NAMESPACES = YES # The FILE_VERSION_FILTER tag can be used to specify a program or script that # doxygen should invoke to get the current version for each file (typically from # the version control system). Doxygen will invoke the program by executing (via # popen()) the command , where is the value of # the FILE_VERSION_FILTER tag, and is the name of an input file # provided by doxygen. Whatever the program writes to standard output # is used as the file version. See the manual for examples. FILE_VERSION_FILTER = #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- # The QUIET tag can be used to turn on/off the messages that are generated # by doxygen. Possible values are YES and NO. If left blank NO is used. QUIET = NO # The WARNINGS tag can be used to turn on/off the warning messages that are # generated by doxygen. Possible values are YES and NO. If left blank # NO is used. WARNINGS = YES # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings # for undocumented members. If EXTRACT_ALL is set to YES then this flag will # automatically be disabled. WARN_IF_UNDOCUMENTED = YES # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for # potential errors in the documentation, such as not documenting some # parameters in a documented function, or documenting parameters that # don't exist or using markup commands wrongly. WARN_IF_DOC_ERROR = YES # This WARN_NO_PARAMDOC option can be abled to get warnings for # functions that are documented, but have no documentation for their parameters # or return value. If set to NO (the default) doxygen will only warn about # wrong or incomplete parameter documentation, but not about the absence of # documentation. WARN_NO_PARAMDOC = YES # The WARN_FORMAT tag determines the format of the warning messages that # doxygen can produce. The string should contain the $file, $line, and $text # tags, which will be replaced by the file and line number from which the # warning originated and the warning text. Optionally the format may contain # $version, which will be replaced by the version of the file (if it could # be obtained via FILE_VERSION_FILTER) WARN_FORMAT = "$file:$line: $text" # The WARN_LOGFILE tag can be used to specify a file to which warning # and error messages should be written. If left blank the output is written # to stderr. WARN_LOGFILE = doxy_warnings.txt #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- # The INPUT tag can be used to specify the files and/or directories that contain # documented source files. You may enter file names like "myfile.cpp" or # directories like "/usr/src/myproject". Separate the files or directories # with spaces. INPUT = Parallel \ Model \ Foundation \ Fields \ Geometry \ Python \ Tools \ ntable \ pis \ ppa \ tml # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is # also the default input encoding. Doxygen uses libiconv (or the iconv built # into libc) for the transcoding. See http://www.gnu.org/software/libiconv for # the list of possible encodings. INPUT_ENCODING = UTF-8 # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank the following patterns are tested: # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 FILE_PATTERNS = *.h \ *.hpp \ *.cpp \ *.c # The RECURSIVE tag can be used to turn specify whether or not subdirectories # should be searched for input files as well. Possible values are YES and NO. # If left blank NO is used. RECURSIVE = YES # The EXCLUDE tag can be used to specify files and/or directories that should # excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. EXCLUDE = shake_* # The EXCLUDE_SYMLINKS tag can be used select whether or not files or # directories that are symbolic links (a Unix filesystem feature) are excluded # from the input. EXCLUDE_SYMLINKS = NO # If the value of the INPUT tag contains directories, you can use the # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude # certain files from those directories. Note that the wildcards are matched # against the file with absolute path, so to exclude all test directories # for example use the pattern */test/* EXCLUDE_PATTERNS = # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names # (namespaces, classes, functions, etc.) that should be excluded from the # output. The symbol name can be a fully qualified name, a word, or if the # wildcard * is used, a substring. Examples: ANamespace, AClass, # AClass::ANamespace, ANamespace::*Test EXCLUDE_SYMBOLS = # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see # the \include command). EXAMPLE_PATH = # If the value of the EXAMPLE_PATH tag contains directories, you can use the # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank all files are included. EXAMPLE_PATTERNS = # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # searched for input files to be used with the \include or \dontinclude # commands irrespective of the value of the RECURSIVE tag. # Possible values are YES and NO. If left blank NO is used. EXAMPLE_RECURSIVE = NO # The IMAGE_PATH tag can be used to specify one or more files or # directories that contain image that are included in the documentation (see # the \image command). IMAGE_PATH = # The INPUT_FILTER tag can be used to specify a program that doxygen should # invoke to filter for each input file. Doxygen will invoke the filter program # by executing (via popen()) the command , where # is the value of the INPUT_FILTER tag, and is the name of an # input file. Doxygen will then use the output that the filter program writes # to standard output. If FILTER_PATTERNS is specified, this tag will be # ignored. INPUT_FILTER = # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern # basis. Doxygen will compare the file name with each pattern and apply the # filter if there is a match. The filters are a list of the form: # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER # is applied to all files. FILTER_PATTERNS = # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using # INPUT_FILTER) will be used to filter the input files when producing source # files to browse (i.e. when SOURCE_BROWSER is set to YES). FILTER_SOURCE_FILES = NO #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- # If the SOURCE_BROWSER tag is set to YES then a list of source files will # be generated. Documented entities will be cross-referenced with these sources. # Note: To get rid of all source code in the generated output, make sure also # VERBATIM_HEADERS is set to NO. SOURCE_BROWSER = NO # Setting the INLINE_SOURCES tag to YES will include the body # of functions and classes directly in the documentation. INLINE_SOURCES = NO # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct # doxygen to hide any special comment blocks from generated source code # fragments. Normal C and C++ comments will always remain visible. STRIP_CODE_COMMENTS = YES # If the REFERENCED_BY_RELATION tag is set to YES # then for each documented function all documented # functions referencing it will be listed. REFERENCED_BY_RELATION = YES # If the REFERENCES_RELATION tag is set to YES # then for each documented function all documented entities # called/used by that function will be listed. REFERENCES_RELATION = YES # If the REFERENCES_LINK_SOURCE tag is set to YES (the default) # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will # link to the source code. Otherwise they will link to the documentstion. REFERENCES_LINK_SOURCE = YES # If the USE_HTAGS tag is set to YES then the references to source code # will point to the HTML generated by the htags(1) tool instead of doxygen # built-in source browser. The htags tool is part of GNU's global source # tagging system (see http://www.gnu.org/software/global/global.html). You # will need version 4.8.6 or higher. USE_HTAGS = NO # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen # will generate a verbatim copy of the header file for each class for # which an include is specified. Set to NO to disable this. VERBATIM_HEADERS = YES #--------------------------------------------------------------------------- # configuration options related to the alphabetical class index #--------------------------------------------------------------------------- # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index # of all compounds will be generated. Enable this if the project # contains a lot of classes, structs, unions or interfaces. ALPHABETICAL_INDEX = YES # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns # in which this list will be split (can be a number in the range [1..20]) COLS_IN_ALPHA_INDEX = 5 # In case all classes in a project start with a common prefix, all # classes will be put under the same header in the alphabetical index. # The IGNORE_PREFIX tag can be used to specify one or more prefixes that # should be ignored while generating the index headers. IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- # If the GENERATE_HTML tag is set to YES (the default) Doxygen will # generate HTML output. GENERATE_HTML = YES # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. HTML_OUTPUT = html # The HTML_FILE_EXTENSION tag can be used to specify the file extension for # each generated HTML page (for example: .htm,.php,.asp). If it is left blank # doxygen will generate files with .html extension. HTML_FILE_EXTENSION = .html # The HTML_HEADER tag can be used to specify a personal HTML header for # each generated HTML page. If it is left blank doxygen will generate a # standard header. HTML_HEADER = # The HTML_FOOTER tag can be used to specify a personal HTML footer for # each generated HTML page. If it is left blank doxygen will generate a # standard footer. HTML_FOOTER = # The HTML_STYLESHEET tag can be used to specify a user-defined cascading # style sheet that is used by each HTML page. It can be used to # fine-tune the look of the HTML output. If the tag is left blank doxygen # will generate a default style sheet. Note that doxygen will try to copy # the style sheet file to the HTML output directory, so don't put your own # stylesheet in the HTML output directory as well, or it will be erased! HTML_STYLESHEET = # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. HTML_ALIGN_MEMBERS = YES # If the GENERATE_HTMLHELP tag is set to YES, additional index files # will be generated that can be used as input for tools like the # Microsoft HTML help workshop to generate a compiled HTML help file (.chm) # of the generated HTML documentation. GENERATE_HTMLHELP = NO # If the GENERATE_DOCSET tag is set to YES, additional index files # will be generated that can be used as input for Apple's Xcode 3 # integrated development environment, introduced with OSX 10.5 (Leopard). # To create a documentation set, doxygen will generate a Makefile in the # HTML output directory. Running make will produce the docset in that # directory and running "make install" will install the docset in # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find # it at startup. GENERATE_DOCSET = NO # When GENERATE_DOCSET tag is set to YES, this tag determines the name of the # feed. A documentation feed provides an umbrella under which multiple # documentation sets from a single provider (such as a company or product suite) # can be grouped. DOCSET_FEEDNAME = "Doxygen generated docs" # When GENERATE_DOCSET tag is set to YES, this tag specifies a string that # should uniquely identify the documentation set bundle. This should be a # reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen # will append .docset to the name. DOCSET_BUNDLE_ID = org.doxygen.Project # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML # documentation will contain sections that can be hidden and shown after the # page has loaded. For this to work a browser that supports # JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox # Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). HTML_DYNAMIC_SECTIONS = NO # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can # be used to specify the file name of the resulting .chm file. You # can add a path in front of the file if the result should not be # written to the html output directory. CHM_FILE = # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can # be used to specify the location (absolute path including file name) of # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run # the HTML help compiler on the generated index.hhp. HHC_LOCATION = # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag # controls if a separate .chi index file is generated (YES) or that # it should be included in the master .chm file (NO). GENERATE_CHI = NO # If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING # is used to encode HtmlHelp index (hhk), content (hhc) and project file # content. CHM_INDEX_ENCODING = # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag # controls whether a binary table of contents is generated (YES) or a # normal table of contents (NO) in the .chm file. BINARY_TOC = NO # The TOC_EXPAND flag can be set to YES to add extra items for group members # to the contents of the HTML help documentation and to the tree view. TOC_EXPAND = NO # The DISABLE_INDEX tag can be used to turn on/off the condensed index at # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. DISABLE_INDEX = NO # This tag can be used to set the number of enum values (range [1..20]) # that doxygen will group on one line in the generated HTML documentation. ENUM_VALUES_PER_LINE = 4 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index # structure should be generated to display hierarchical information. # If the tag value is set to FRAME, a side panel will be generated # containing a tree-like index structure (just like the one that # is generated for HTML Help). For this to work a browser that supports # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are # probably better off using the HTML help feature. Other possible values # for this tag are: HIERARCHIES, which will generate the Groups, Directories, # and Class Hiererachy pages using a tree view instead of an ordered list; # ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which # disables this behavior completely. For backwards compatibility with previous # releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE # respectively. GENERATE_TREEVIEW = YES # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree # is shown. TREEVIEW_WIDTH = 250 # Use this tag to change the font size of Latex formulas included # as images in the HTML documentation. The default is 10. Note that # when you change the font size after a successful doxygen run you need # to manually remove any form_*.png images from the HTML output directory # to force them to be regenerated. FORMULA_FONTSIZE = 10 #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will # generate Latex output. GENERATE_LATEX = NO # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `latex' will be used as the default path. LATEX_OUTPUT = latex # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # invoked. If left blank `latex' will be used as the default command name. LATEX_CMD_NAME = latex # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to # generate index for LaTeX. If left blank `makeindex' will be used as the # default command name. MAKEINDEX_CMD_NAME = makeindex # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact # LaTeX documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_LATEX = NO # The PAPER_TYPE tag can be used to set the paper type that is used # by the printer. Possible values are: a4, a4wide, letter, legal and # executive. If left blank a4wide will be used. PAPER_TYPE = a4wide # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX # packages that should be included in the LaTeX output. EXTRA_PACKAGES = # The LATEX_HEADER tag can be used to specify a personal LaTeX header for # the generated latex document. The header should contain everything until # the first chapter. If it is left blank doxygen will generate a # standard header. Notice: only use this tag if you know what you are doing! LATEX_HEADER = # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated # is prepared for conversion to pdf (using ps2pdf). The pdf file will # contain links (just like the HTML output) instead of page references # This makes the output suitable for online browsing using a pdf viewer. PDF_HYPERLINKS = NO # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of # plain latex in the generated Makefile. Set this option to YES to get a # higher quality PDF documentation. USE_PDFLATEX = NO # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. # command to the generated LaTeX files. This will instruct LaTeX to keep # running if errors occur, instead of asking the user for help. # This option is also used when generating formulas in HTML. LATEX_BATCHMODE = NO # If LATEX_HIDE_INDICES is set to YES then doxygen will not # include the index chapters (such as File Index, Compound Index, etc.) # in the output. LATEX_HIDE_INDICES = NO #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output # The RTF output is optimized for Word 97 and may not look very pretty with # other RTF readers or editors. GENERATE_RTF = NO # The RTF_OUTPUT tag is used to specify where the RTF docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `rtf' will be used as the default path. RTF_OUTPUT = rtf # If the COMPACT_RTF tag is set to YES Doxygen generates more compact # RTF documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_RTF = NO # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated # will contain hyperlink fields. The RTF file will # contain links (just like the HTML output) instead of page references. # This makes the output suitable for online browsing using WORD or other # programs which support those fields. # Note: wordpad (write) and others do not support links. RTF_HYPERLINKS = NO # Load stylesheet definitions from file. Syntax is similar to doxygen's # config file, i.e. a series of assignments. You only have to provide # replacements, missing definitions are set to their default value. RTF_STYLESHEET_FILE = # Set optional variables used in the generation of an rtf document. # Syntax is similar to doxygen's config file. RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- # If the GENERATE_MAN tag is set to YES (the default) Doxygen will # generate man pages GENERATE_MAN = NO # The MAN_OUTPUT tag is used to specify where the man pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `man' will be used as the default path. MAN_OUTPUT = man # The MAN_EXTENSION tag determines the extension that is added to # the generated man pages (default is the subroutine's section .3) MAN_EXTENSION = .3 # If the MAN_LINKS tag is set to YES and Doxygen generates man output, # then it will generate one additional man file for each entity # documented in the real man page(s). These additional files # only source the real man page, but without them the man command # would be unable to find the correct page. The default is NO. MAN_LINKS = NO #--------------------------------------------------------------------------- # configuration options related to the XML output #--------------------------------------------------------------------------- # If the GENERATE_XML tag is set to YES Doxygen will # generate an XML file that captures the structure of # the code including all documentation. GENERATE_XML = NO # The XML_OUTPUT tag is used to specify where the XML pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `xml' will be used as the default path. XML_OUTPUT = xml # The XML_SCHEMA tag can be used to specify an XML schema, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_SCHEMA = # The XML_DTD tag can be used to specify an XML DTD, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_DTD = # If the XML_PROGRAMLISTING tag is set to YES Doxygen will # dump the program listings (including syntax highlighting # and cross-referencing information) to the XML output. Note that # enabling this will significantly increase the size of the XML output. XML_PROGRAMLISTING = YES #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will # generate an AutoGen Definitions (see autogen.sf.net) file # that captures the structure of the code including all # documentation. Note that this feature is still experimental # and incomplete at the moment. GENERATE_AUTOGEN_DEF = NO #--------------------------------------------------------------------------- # configuration options related to the Perl module output #--------------------------------------------------------------------------- # If the GENERATE_PERLMOD tag is set to YES Doxygen will # generate a Perl module file that captures the structure of # the code including all documentation. Note that this # feature is still experimental and incomplete at the # moment. GENERATE_PERLMOD = NO # If the PERLMOD_LATEX tag is set to YES Doxygen will generate # the necessary Makefile rules, Perl scripts and LaTeX code to be able # to generate PDF and DVI output from the Perl module output. PERLMOD_LATEX = NO # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be # nicely formatted so it can be parsed by a human reader. This is useful # if you want to understand what is going on. On the other hand, if this # tag is set to NO the size of the Perl module output will be much smaller # and Perl will parse it just the same. PERLMOD_PRETTY = YES # The names of the make variables in the generated doxyrules.make file # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. # This is useful so different doxyrules.make files included by the same # Makefile don't overwrite each other's variables. PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- # Configuration options related to the preprocessor #--------------------------------------------------------------------------- # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will # evaluate all C-preprocessor directives found in the sources and include # files. ENABLE_PREPROCESSING = YES # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro # names in the source code. If set to NO (the default) only conditional # compilation will be performed. Macro expansion can be done in a controlled # way by setting EXPAND_ONLY_PREDEF to YES. MACRO_EXPANSION = NO # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES # then the macro expansion is limited to the macros specified with the # PREDEFINED and EXPAND_AS_DEFINED tags. EXPAND_ONLY_PREDEF = NO # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files # in the INCLUDE_PATH (see below) will be search if a #include is found. SEARCH_INCLUDES = YES # The INCLUDE_PATH tag can be used to specify one or more directories that # contain include files that are not input files but should be processed by # the preprocessor. INCLUDE_PATH = # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # patterns (like *.h and *.hpp) to filter out the header-files in the # directories. If left blank, the patterns specified with FILE_PATTERNS will # be used. INCLUDE_FILE_PATTERNS = # The PREDEFINED tag can be used to specify one or more macro names that # are defined before the preprocessor is started (similar to the -D option of # gcc). The argument of the tag is a list of macros of the form: name # or name=definition (no spaces). If the definition and the = are # omitted =1 is assumed. To prevent a macro definition from being # undefined via #undef or recursively expanded use the := operator # instead of the = operator. PREDEFINED = # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then # this tag can be used to specify a list of macro names that should be expanded. # The macro definition that is found in the sources will be used. # Use the PREDEFINED tag if you want to use a different macro definition. EXPAND_AS_DEFINED = # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then # doxygen's preprocessor will remove all function-like macros that are alone # on a line, have an all uppercase name, and do not end with a semicolon. Such # function macros are typically used for boiler-plate code, and will confuse # the parser if not removed. SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration::additions related to external references #--------------------------------------------------------------------------- # The TAGFILES option can be used to specify one or more tagfiles. # Optionally an initial location of the external documentation # can be added for each tagfile. The format of a tag file without # this location is as follows: # TAGFILES = file1 file2 ... # Adding location for the tag files is done as follows: # TAGFILES = file1=loc1 "file2 = loc2" ... # where "loc1" and "loc2" can be relative or absolute paths or # URLs. If a location is present for each tag, the installdox tool # does not have to be run to correct the links. # Note that each tag file must have a unique name # (where the name does NOT include the path) # If a tag file is not located in the directory in which doxygen # is run, you must also specify the path to the tagfile here. TAGFILES = # When a file name is specified after GENERATE_TAGFILE, doxygen will create # a tag file that is based on the input files it reads. GENERATE_TAGFILE = # If the ALLEXTERNALS tag is set to YES all external classes will be listed # in the class index. If set to NO only the inherited external classes # will be listed. ALLEXTERNALS = NO # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed # in the modules index. If set to NO, only the current project's groups will # be listed. EXTERNAL_GROUPS = YES # The PERL_PATH should be the absolute path and name of the perl script # interpreter (i.e. the result of `which perl'). PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base # or super classes. Setting the tag to NO turns the diagrams off. Note that # this option is superseded by the HAVE_DOT option below. This is only a # fallback. It is recommended to install and use dot, since it yields more # powerful graphs. CLASS_DIAGRAMS = YES # You can define message sequence charts within doxygen comments using the \msc # command. Doxygen will then run the mscgen tool (see # http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the # documentation. The MSCGEN_PATH tag allows you to specify the directory where # the mscgen tool resides. If left empty the tool is assumed to be found in the # default search path. MSCGEN_PATH = # If set to YES, the inheritance and collaboration graphs will hide # inheritance and usage relations if the target is undocumented # or is not a class. HIDE_UNDOC_RELATIONS = YES # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is # available from the path. This tool is part of Graphviz, a graph visualization # toolkit from AT&T and Lucent Bell Labs. The other options in this section # have no effect if this option is set to NO (the default) HAVE_DOT = YES # By default doxygen will write a font called FreeSans.ttf to the output # directory and reference it in all dot files that doxygen generates. This # font does not include all possible unicode characters however, so when you need # these (or just want a differently looking font) you can specify the font name # using DOT_FONTNAME. You need need to make sure dot is able to find the font, # which can be done by putting it in a standard location or by setting the # DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory # containing the font. DOT_FONTNAME = FreeSans # By default doxygen will tell dot to use the output directory to look for the # FreeSans.ttf font (which doxygen will put there itself). If you specify a # different font using DOT_FONTNAME you can set the path where dot # can find it using this tag. DOT_FONTPATH = # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect inheritance relations. Setting this tag to YES will force the # the CLASS_DIAGRAMS tag to NO. CLASS_GRAPH = YES # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect implementation dependencies (inheritance, containment, and # class references variables) of the class with other documented classes. COLLABORATION_GRAPH = YES # If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen # will generate a graph for groups, showing the direct groups dependencies GROUP_GRAPHS = YES # If the UML_LOOK tag is set to YES doxygen will generate inheritance and # collaboration diagrams in a style similar to the OMG's Unified Modeling # Language. UML_LOOK = NO # If set to YES, the inheritance and collaboration graphs will show the # relations between templates and their instances. TEMPLATE_RELATIONS = YES # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT # tags are set to YES then doxygen will generate a graph for each documented # file showing the direct and indirect include dependencies of the file with # other documented files. INCLUDE_GRAPH = YES # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and # HAVE_DOT tags are set to YES then doxygen will generate a graph for each # documented header file showing the documented files that directly or # indirectly include this file. INCLUDED_BY_GRAPH = YES # If the CALL_GRAPH and HAVE_DOT options are set to YES then # doxygen will generate a call dependency graph for every global function # or class method. Note that enabling this option will significantly increase # the time of a run. So in most cases it will be better to enable call graphs # for selected functions only using the \callgraph command. CALL_GRAPH = YES # If the CALLER_GRAPH and HAVE_DOT tags are set to YES then # doxygen will generate a caller dependency graph for every global function # or class method. Note that enabling this option will significantly increase # the time of a run. So in most cases it will be better to enable caller # graphs for selected functions only using the \callergraph command. CALLER_GRAPH = YES # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen # will graphical hierarchy of all classes instead of a textual one. GRAPHICAL_HIERARCHY = YES # If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES # then doxygen will show the dependencies a directory has on other directories # in a graphical way. The dependency relations are determined by the #include # relations between the files in the directories. DIRECTORY_GRAPH = YES # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images # generated by dot. Possible values are png, jpg, or gif # If left blank png will be used. DOT_IMAGE_FORMAT = png # The tag DOT_PATH can be used to specify the path where the dot tool can be # found. If left blank, it is assumed the dot tool can be found in the path. DOT_PATH = # The DOTFILE_DIRS tag can be used to specify one or more directories that # contain dot files that are included in the documentation (see the # \dotfile command). DOTFILE_DIRS = # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of # nodes that will be shown in the graph. If the number of nodes in a graph # becomes larger than this value, doxygen will truncate the graph, which is # visualized by representing a node as a red box. Note that doxygen if the # number of direct children of the root node in a graph is already larger than # DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. DOT_GRAPH_MAX_NODES = 50 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the # graphs generated by dot. A depth value of 3 means that only nodes reachable # from the root by following a path via at most 3 edges will be shown. Nodes # that lay further from the root node will be omitted. Note that setting this # option to 1 or 2 may greatly reduce the computation time needed for large # code bases. Also note that the size of a graph can be further restricted by # DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. MAX_DOT_GRAPH_DEPTH = 0 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent # background. This is enabled by default, which results in a transparent # background. Warning: Depending on the platform used, enabling this option # may lead to badly anti-aliased labels on the edges of a graph (i.e. they # become hard to read). DOT_TRANSPARENT = YES # Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output # files in one run (i.e. multiple -o and -T options on the command line). This # makes dot run faster, but since only newer versions of dot (>1.8.10) # support this, this feature is disabled by default. DOT_MULTI_TARGETS = NO # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will # generate a legend page explaining the meaning of the various boxes and # arrows in the dot generated graphs. GENERATE_LEGEND = YES # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will # remove the intermediate dot files that are used to generate # the various graphs. DOT_CLEANUP = YES #--------------------------------------------------------------------------- # Configuration::additions related to the search engine #--------------------------------------------------------------------------- # The SEARCHENGINE tag specifies whether or not a search engine should be # used. If set to NO the values of all tags below this one will be ignored. SEARCHENGINE = NO ./pis/0000775000175000017500000000000012176660653011432 5ustar vborosvboros./pis/pi_storage_ne.hpp0000664000175000017500000001155612176660653014771 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template ParallelInteractionStorage_NE::ParallelInteractionStorage_NE(AParallelParticleArray* ppa,const typename I::ParameterType& param):TParallelInteractionStorage(ppa) { m_param=param; m_update_timestamp=0; } template void ParallelInteractionStorage_NE::addExIG(AParallelInteractionStorage* eg) { m_exIG.push_back(eg); } /*! check if a potential interaction is in one of the excluding IGs \param tv the potential interaction */ template bool ParallelInteractionStorage_NE:: isExcluded(const vector tv) { bool in_exig=false; if(m_exIG.size()>0){ // if there is an ExIG vector::iterator exiter=m_exIG.begin(); while(exiter!=m_exIG.end() && (!in_exig)){ // not yet excluded and more excluders to check in_exig=(*exiter)->isIn(tv); exiter++; } } return in_exig; } /*! Update interactions. Do full dynamic search. */ template bool ParallelInteractionStorage_NE::update() { console.XDebug() << "ParallelInteractionStorage_NE::Update\n"; int count_l=0; bool res=true; if(m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update // clean out old interactions this->m_interactions.clear(); m_set.erase(m_set.begin(),m_set.end()); // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(!isExcluded(tv)){ this->m_interactions.push_back(InteractionType(iter->first,iter->second,m_param)); m_set.insert(pair(iter->first->getID(),iter->second->getID())); count_l++; } } } else { // m_ppa not rebuild since last update -> just get additional interactions // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getNewPairList(); //cout << "got NewPairList: "; for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // cout << iter->first->getID() << "-" << iter->second->getID() << endl; // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(!isExcluded(tv)){ this->m_interactions.push_back(InteractionType(iter->first,iter->second,m_param)); m_set.insert(pair(iter->first->getID(),iter->second->getID())); count_l++; } } } m_update_timestamp = this->m_ppa->getTimeStamp(); console.XDebug() << "added " << count_l << " pairs to EIG\n"; console.XDebug() << "end ParallelInteractionStorage_NE::Update\n"; return res; } /*! \warning evil hack, only checks 1st & 2nd id -> change from pair to vector */ template bool ParallelInteractionStorage_NE::isIn(const vector& pids) { bool res; res=m_set.find(make_pair(pids[0],pids[1]))!=m_set.end(); return res; } /*! */ template void ParallelInteractionStorage_NE::calcForces() { console.Debug() << "calculating " << this->m_interactions.size() << " interaction forces\n"; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcForces(); } } template void ParallelInteractionStorage_NE::calcHeatTrans() { console.Debug() << "calculating " << this->m_interactions.size() << " interaction heat transfers\n" ; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcHeatTrans(); } } ./pis/trimesh_pis_eb.hpp0000664000175000017500000003262012176660653015142 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" template const int TriMesh_PIS_EB::m_exchg_tag=44; /*! constructor \param mesh_p a pointer to the triangle mesh \param ppa_p a pointer to the particle array \param param the interaction parameters */ template TriMesh_PIS_EB::TriMesh_PIS_EB(TriMesh* mesh_p,ParallelParticleArray* ppa_p,typename IType::ParameterType param) : TriMesh_PIS(mesh_p,ppa_p),m_comm(ppa_p->getComm()) { console.XDebug() << "TriMesh_PIS_EB constructor\n"; m_param=param; this->m_update_timestamp = 0; } template void TriMesh_PIS_EB::setTimeStepSize(double dt) { } /*! Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the tri/edge/corner (v[0]) and particle (v[1]) ids, the 3rd an indicator if tri (v[2]==0),edge (v[2]==1)or corner (v[2]==2) interaction. If there is no 3rd value or it is not 0 (tri), "false" is returned. \param v vector of particle ids \warning log(N) */ template bool TriMesh_PIS_EB::isIn(const std::vector& v) { bool res=false; if(v.size()<3){ res=false; } else { switch (v[2]){ case 0: res=m_tri_int_set.find(make_pair(v[0],v[1]))!=m_tri_int_set.end(); break; default: console.Error() << "wrong value in argument of TriMesh_PIS::isIn !!\n"; break; } } return res; } /*! calculate all the forces */ template void TriMesh_PIS_EB::calcForces() { console.XDebug() << "TriMesh_PIS_EB calculating " << m_triangle_interactions.size() << " triangle forces\n"; // calculate forces for triangle interactions for(typename list::iterator tri_iter=m_triangle_interactions.begin(); tri_iter!=m_triangle_interactions.end(); tri_iter++){ tri_iter->calcForces(); } } /*! */ template bool TriMesh_PIS_EB::update() { console.XDebug() << "TriMesh_PIS_EB::update on node " << m_comm.rank() << "\n"; bool res=false; typename list::iterator iter=m_triangle_interactions.begin(); while(iter!=m_triangle_interactions.end()){ if(iter->broken()){ res=true; typename list::iterator er_iter=iter; iter++; // remove ids from map m_tri_int_set.erase(make_pair(er_iter->getTid(),er_iter->getPid())); // remove interaction m_triangle_interactions.erase(er_iter); } else { iter++; } } console.XDebug() << "end TriMesh_PIS_EB::update on node " << m_comm.rank() << "\n"; return res; } /*! helper function to do the actual shifting of values in exchange() \param dim dimension, 0->x, 1->y, 2->z \param dir direction, 1->up, -1->down */ template void TriMesh_PIS_EB::exchange_boundary(int dim,int dir) { console.XDebug() << "TriMesh_PIS_EB::exchange_boundary(" << dim << "," << dir << ") at node " << m_comm.rank() << "\n"; std::set bdry_ids; std::vector recv_tri_buffer; std::vector send_tri_buffer; // --- setup data to send --- // get boundary bdry_ids = this->m_ppa->getBoundarySlabIds(dim,dir); // for all interactions for(typename list::iterator iter=m_triangle_interactions.begin(); iter!=m_triangle_interactions.end(); iter++){ int pid=iter->getPid(); if(bdry_ids.find(pid)!=bdry_ids.end()) { // if particle in interaction is in bdry -> put in buffer send_tri_buffer.push_back(*iter); } } // ---- shift ---- m_comm.shift_cont_packed(send_tri_buffer,recv_tri_buffer,dim,dir,m_exchg_tag); // insert received data for(typename std::vector::iterator iter=recv_tri_buffer.begin(); iter!=recv_tri_buffer.end(); iter++){ tryInsert(*iter); } console.XDebug() << "end TriMesh_PIS_EB::exchange_boundary\n"; } /*! */ template void TriMesh_PIS_EB::exchange() { console.XDebug() << "TriMesh_PIS_EB::exchange\n"; for(int i=0;i<3;i++){ if(m_comm.get_dim(i)>1){ // -- up -- exchange_boundary(i,1); // -- down -- exchange_boundary(i,-1); } } console.XDebug() << "end TriMesh_PIS_EB::exchange\n"; } /*! Rebuild interactions after moving particles or interactions between processes. Set particle pointers accordig to particle IDs and remove interactionw which include unavailable particles. */ template void TriMesh_PIS_EB::rebuild() { console.XDebug() << "TriMesh_PIS_EB::rebuild on node " << m_comm.rank() << "\n"; ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // should be a dynamic_cast // for all triangle interactions typename list::iterator ti_iter=m_triangle_interactions.begin(); while(ti_iter!=m_triangle_interactions.end()){ int pid=ti_iter->getPid(); ParticleType *part_p=t_ppa->getParticlePtrByIndex(pid); if(part_p!=NULL) { // particle is available in m_ppa -> setup pointer in interaction ti_iter->setPP(part_p); Triangle *tri_p = this->m_mesh->getTriangleById(ti_iter->getTid()); ti_iter->setTP(tri_p); ti_iter++; } else { // particle is not available in m_ppa -> remove interaction const typename list::iterator er_iter=ti_iter; ti_iter++; m_tri_int_set.erase(make_pair(er_iter->getTid(),pid)); m_triangle_interactions.erase(er_iter); } } console.XDebug() << "end TriMesh_PIS_EB::rebuild on node " << m_comm.rank() << "\n"; } /*! Insert interactions newly created from particle Ids and parameters. If insertion is impossible because the interaction is already in, or one of the particles is not in the associated PPA nothing happens. Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the tri/edge/corner (pids[0]) and particle (pids[1]) ids, the 3rd an indicator if tri (pids[2]==0),edge (pids[2]==1)or corner (pids[2]==2) interaction. If there is no 3rd value or it is not in [0,1,2], nothing happens. \param pids the particle Ids */ template void TriMesh_PIS_EB::tryInsert(const std::vector& pids) { ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // should be dynamic_cast if(pids.size()<3){ bool is_in=isIn(pids); // interaction already in ParticleType *part_p=t_ppa->getParticlePtrByIndex(pids[1]); if((!is_in) && (part_p!=NULL)){ switch (pids[2]){ case 0: { Triangle *tri_p = this->m_mesh->getTriangleById(pids[0]); if (tri_p!=NULL){ m_triangle_interactions.push_back( typename IType::TriIntType( part_p, tri_p, m_param, this->m_ppa->isInInner(part_p->getPos()) ) ); m_tri_int_set.insert(make_pair(pids[0],pids[1])); } } break; default : { console.Error() << "Error: pids[2]= " << pids[2] << "\n"; // Can't happen !! } } } } } /*! */ template void TriMesh_PIS_EB::tryInsert(const typename IType::TriIntType& In) { ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // check if interaction is already in bool is_in=(m_tri_int_set.find(make_pair(In.getTid(),In.getPid()))!=m_tri_int_set.end()); ParticleType *part_p=t_ppa->getParticlePtrByIndex(In.getPid()); if((!is_in) && (part_p!=NULL)){ m_triangle_interactions.push_back(In); m_tri_int_set.insert(make_pair(In.getTid(),In.getPid())); } } /*! */ template void TriMesh_PIS_EB::buildFromPPATagged(int tag,int mask) { console.XDebug() << "TriMesh_PIS_EB::buildFromPPATagged(" << tag << "," << mask << ")\n"; set id_set; // for all triangles for ( TriMesh::triangle_iterator tri_iter = this->m_mesh->triangles_begin(); tri_iter != this->m_mesh->triangles_end(); tri_iter++ ){ // get particles near triangle typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)this->m_ppa)->getParticlesNearTriangle(*tri_iter); console.XDebug() << "triangle " << tri_iter->getID() << " nr. of particles : " << plh->size() << "\n"; // for all particles found for(typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++){ // if valid interaction console.XDebug() << "interaction : " << tri_iter->getID() << " " << (*p_iter)->getID() << "\n"; if(id_set.find((*p_iter)->getID())==id_set.end()){ pair dist=tri_iter->dist((*p_iter)->getPos()); console.XDebug() << "is valid: " << dist.first << " dist : " << dist.second << "\n"; if(dist.first){ int ptag=(*p_iter)->getTag(); // if tag is correct, add interaction if((ptag & mask)==(tag & mask)){ console.XDebug() << "Insert !!\n"; bool in_flag = this->m_ppa->isInInner((*p_iter)->getPos()); m_triangle_interactions.push_back(typename IType::TriIntType((*p_iter),&(*tri_iter),m_param,in_flag)); m_tri_int_set.insert(make_pair(tri_iter->getID(),(*p_iter)->getID())); id_set.insert((*p_iter)->getID()); } } } } } console.XDebug() << "end TriMesh_PIS_EB::buildFromPPATagged()"; } /*! */ template void TriMesh_PIS_EB::buildFromPPAByGap(double gmax) { console.XDebug() << "TriMesh_PIS_EB::buildFromPPAByGap(" << gmax << ")\n"; set id_set; // for all triangles for ( TriMesh::triangle_iterator tri_iter = this->m_mesh->triangles_begin(); tri_iter != this->m_mesh->triangles_end(); tri_iter++ ){ // get particles near triangle typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)this->m_ppa)->getParticlesNearTriangle(*tri_iter); console.XDebug() << "triangle " << tri_iter->getID() << " nr. of particles : " << plh->size() << "\n"; // for all particles found for(typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++){ // if valid interaction console.XDebug() << "interaction : " << tri_iter->getID() << " " << (*p_iter)->getID() << "\n"; if(id_set.find((*p_iter)->getID())==id_set.end()){ pair dist=tri_iter->dist((*p_iter)->getPos()); console.XDebug() << "is valid: " << dist.first << " dist : " << dist.second << "\n"; if(dist.first){ // check gap double gap=fabs(dist.second-(*p_iter)->getRad()); console.XDebug() << "radius: " << (*p_iter)->getRad() << " gap : " << gap << "\n"; // if small enough, add if(gapm_ppa->isInInner((*p_iter)->getPos()); m_triangle_interactions.push_back(typename IType::TriIntType((*p_iter),&(*tri_iter),m_param,in_flag)); m_tri_int_set.insert(make_pair(tri_iter->getID(),(*p_iter)->getID())); id_set.insert((*p_iter)->getID()); } } } } } console.XDebug() << "end TriMesh_PIS_EB::buildFromPPAByGap()"; } /*! save snapshot (i.e. viz/postprocess) data \param oStream a reference to the stream where the data is written */ template void TriMesh_PIS_EB::saveSnapShotData(std::ostream &oStream) { const std::string delim = "\n"; typedef typename IType::TriIntType::CheckPointable CheckPointable; // stage 1: count how many interactions with "inner" particles we have int icount=0; for(typename list::iterator it=m_triangle_interactions.begin(); it!=m_triangle_interactions.end(); it++){ if(it->isInner()) icount++; } // stage 2: write data oStream << IType::getType() << delim; oStream << icount << delim; for(typename list::iterator it=m_triangle_interactions.begin(); it!=m_triangle_interactions.end(); it++){ if(it->isInner()) CheckPointable(*it).saveCheckPointData(oStream); oStream << delim; } } ./pis/CMakeLists.txt0000664000175000017500000000040212176660653014166 0ustar vborosvborosFILE(GLOB PIS_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(pis SHARED ${PIS_SRC_LIB}) TARGET_LINK_LIBRARIES(pis ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS pis DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./pis/pi_storage.hpp0000664000175000017500000002334112176660653014302 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/vec3.h" #include "Fields/ScalarInteractionFieldSlave.h" #include "Fields/CheckedScalarInteractionFieldSlave.h" #include "Fields/ScalarInteractionFieldSlaveTagged.h" #include "Fields/CheckedScalarInteractionFieldSlaveTagged.h" #include "Fields/VectorInteractionFieldSlave.h" #include "ppa/src/pp_array.h" template bool TParallelInteractionStorage::InteractionIterator::isInner(const Iterator &it) { return m_ppa->isInInner(it->getPosFirst()); } template TParallelInteractionStorage::InteractionIterator::InteractionIterator( Iterator begin, Iterator end, AParallelParticleArray* ppa ) : m_numRemaining(0), m_it(end), m_end(end), m_ppa(ppa) { m_numRemaining = 0; for (Iterator it = begin; it != end; it++) { if (isInner(it)) { m_numRemaining++; } } m_it = begin; m_end = end; } template bool TParallelInteractionStorage::InteractionIterator::hasNext() { return (m_numRemaining > 0); } template typename TParallelInteractionStorage::InteractionIterator::Interaction & TParallelInteractionStorage::InteractionIterator::next() { while (!isInner(m_it)) { m_it++; } Interaction &i = *m_it; m_it++; m_numRemaining--; return i; } template int TParallelInteractionStorage::InteractionIterator::getNumRemaining() { return m_numRemaining; } template typename TParallelInteractionStorage::InteractionIterator TParallelInteractionStorage::getInnerInteractionIterator() { return InteractionIterator(m_interactions.begin(), m_interactions.end(), m_ppa); } /*! For all interactions with the lower particle in the inner area of the ntable call a function reading a value and return the results in a vector of pairs \param rdf the function */ template template vector > TParallelInteractionStorage::forAllInnerInteractionsGetWithPos(P (I::*rdf)() const) { vector > res; for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ Vec3 pos=iter->getPosFirst(); if(m_ppa->isInInner(pos)) res.push_back(make_pair(iter->getPos(),((*iter).*rdf)())); } return res; } /*! For all interactions with the lower particle in the inner area of the ntable call a function reading a value and return the results in a vector of <,value> groups \param rdf the function */ template template vector::Raw2Data,P> > TParallelInteractionStorage::forAllInnerInteractionsGetRaw2(P (I::*rdf)() const) { vector > res; for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ if(m_ppa->isInInner(iter->getPosFirst())) { const Raw2Data data = iter->getRaw2Data(); res.push_back(pair(data,((*iter).*rdf)())); } } return res; } /*! For all interactions with the lower particle in the inner area of the ntable call a function reading a value and return the results in a vector of <,value> groups \param rdf the function */ template template vector::DataWithPosID,P> > TParallelInteractionStorage::forAllInnerInteractionsGetDataWithPosID(P (I::*rdf)() const) { vector > res; for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ if(m_ppa->isInInner(iter->getPosFirst())) { vector ids=iter->getAllID(); int id1=ids[0]; int id2; if(ids.size()>=2) { id2=ids[1]; } else { id2=-1; } const Raw2Data data = iter->getRaw2Data(); Vec3 pos1=data.get<0>(); Vec3 pos2=data.get<2>(); Vec3 ipos=data.get<4>(); res.push_back(pair(DataWithPosID(id1,id2,pos1,pos2,ipos),((*iter).*rdf)())); } } return res; } /*! For all interactions with the lower particle in the inner area of the ntable call a function reading a value and return the results in a vector of <,value> groups \param rdf the function */ template template vector::DataWithID,P> > TParallelInteractionStorage::forAllInnerInteractionsGetDataWithID(P (I::*rdf)() const) { vector > res; for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ if(m_ppa->isInInner(iter->getPosFirst())) { vector ids=iter->getAllID(); int id1=ids[0]; int id2; if(ids.size()>=2) { id2=ids[1]; } else { id2=-1; } Vec3 pos=iter->getPos(); res.push_back(pair(DataWithID(id1,id2,pos),((*iter).*rdf)())); } } return res; } /*! For all interactions with the lower particle in the inner area of the ntable call a function reading a value and return the results in a container particle ids \cont the container \param rdf the function */ template template void TParallelInteractionStorage::forAllInnerInteractionsGet(P& cont,typename P::value_type (I::*rdf)()const) { for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ Vec3 pos=iter->getPosFirst(); if(m_ppa->isInInner(pos)) cont.push_back(((*iter).*rdf)()); } } /*! For all interactions with the lower particle in the inner area of the ntable and one of the particles having the specified tag call a function reading a value and return the results in a vector of pairs \param rdf the function \param tag the tag \param mask the mask used in tag comparison */ template template vector > TParallelInteractionStorage::forAllTaggedInnerInteractionsGetWithPos(P (I::*rdf)() const,int tag,int mask) { vector > res; for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ Vec3 pos=iter->getPosFirst(); if(iter->hasTag(tag,mask)){ if(m_ppa->isInInner(pos)) res.push_back(make_pair(iter->getPos(),((*iter).*rdf)())); } } return res; } /*! For all interactions with the lower particle in the inner area of the ntable and one of the particles having the specified tag call a function reading a value and return the results in a container \cont the container \param rdf the function \param tag the tag \param mask the mask used in tag comparison */ template template void TParallelInteractionStorage::forAllTaggedInnerInteractionsGet(P& cont,typename P::value_type (I::*rdf)()const,int tag,int mask) { for(typename list::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ Vec3 pos=iter->getPosFirst(); if(iter->hasTag(tag,mask)){ if(m_ppa->isInInner(pos)) cont.push_back(((*iter).*rdf)()); } } } /*! generate new scalar field saver from the PIS \param comm \param fieldname \param is_checked \param is_tagged \param tag \param mask */ template AFieldSlave* TParallelInteractionStorage::generateNewScalarFieldSlave(TML_Comm* comm,const string& fieldname,int is_checked,int is_tagged,int tag,int mask) { InteractionFieldSlave* new_ifs; if(is_checked==0){ typename I::ScalarFieldFunction rdf=I::getScalarFieldFunction(fieldname); if(is_tagged==0){ new_ifs=new ScalarInteractionFieldSlave(comm,this,rdf); } else { new_ifs=new ScalarInteractionFieldSlaveTagged(comm,this,rdf,tag,mask); } } else { typename I::CheckedScalarFieldFunction rdf=I::getCheckedScalarFieldFunction(fieldname); if(is_tagged==0){ new_ifs=new CheckedScalarInteractionFieldSlave(comm,this,rdf); } else { new_ifs=new CheckedScalarInteractionFieldSlaveTagged(comm,this,rdf,tag,mask); } } return new_ifs; } /*! generate new vector field saver from the PIS \param comm \param fieldname \param is_checked \param is_tagged \param tag \param mask */ template AFieldSlave* TParallelInteractionStorage::generateNewVectorFieldSlave(TML_Comm* comm,const string& fieldname,int is_checked,int is_tagged,int tag,int mask) { InteractionFieldSlave* new_ifs = NULL; if(is_checked==0){ typename I::VectorFieldFunction rdf=I::getVectorFieldFunction(fieldname); if(is_tagged==0){ new_ifs=new VectorInteractionFieldSlave(comm,this,rdf); } else { // new_ifs=new VectorInteractionFieldSlaveTagged(comm,this,rdf,tag,mask); } } else { // typename I::CheckedVectorFieldFunction rdf=I::getCheckedVectorFieldFunction(fieldname); if(is_tagged==0){ // new_ifs=new CheckedVectorInteractionFieldSlave(comm,this,rdf); } else { // new_ifs=new CheckedVectorInteractionFieldSlaveTagged(comm,this,rdf,tag,mask); } } return new_ifs; } ./pis/pi_storage_e.h0000664000175000017500000000426012176660653014245 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_E_H #define __PARALLEL_INTERACTION_STORAGE_E_H //--- project includes --- #include "pi_storage.h" #include "tml/comm/cart_comm.h" //--- STL includes --- #include #include #include using std::vector; using std::pair; using std::make_pair; using std::set; class AParallelParticleArray; /*! \class ParallelInteractionStorage_E \brief parallel interaction storage array with exchange */ template class ParallelInteractionStorage_E : public TParallelInteractionStorage { public: // types // typedef I ParallelInteractionStorage_E::interaction_type; typedef TParallelInteractionStorage Inherited; typedef typename Inherited::InteractionIterator InteractionIterator; bool m_unbreakable; private: static const int m_exchg_tag; void exchange_boundary(int,int); protected: TML_CartComm m_comm; set > m_set; // evil hack, should be std::vector, not pair typename I::ParameterType m_param; public: ParallelInteractionStorage_E(AParallelParticleArray *, const typename I::ParameterType &); virtual void setUnbreakable(bool); virtual void exchange(); virtual void rebuild(); virtual void tryInsert(const I&); virtual void tryInsert(const std::vector&); virtual bool isIn(const std::vector&); virtual void setTimeStepSize(double){} //!< does nothing virtual void calcForces(); }; #include "pis/pi_storage_e.hpp" #endif // __PARALLEL_INTERACTION_STORAGE_E_H ./pis/mesh2d_pis.hpp0000664000175000017500000000374012176660653014204 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! constructor \param mesh_p \param ppa_p */ template Mesh2D_PIS::Mesh2D_PIS(Mesh2D* mesh_p,ParallelParticleArray* ppa_p): AParallelInteractionStorage(ppa_p) { m_mesh=mesh_p; } template Mesh2D_PIS::~Mesh2D_PIS() {} /*! add excluding IG \param exig_p */ template void Mesh2D_PIS::addExIG(AParallelInteractionStorage* exig_p) { std::cerr << "Setting an exclusing in a Mesh2D interaction group is not supported" << std::endl; } template AFieldSlave* Mesh2D_PIS::generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int) { AFieldSlave* new_fs=NULL; return new_fs; } template AFieldSlave* Mesh2D_PIS::generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int) { AFieldSlave* new_fs=NULL; return new_fs; } template void Mesh2D_PIS::saveCheckPointData(std::ostream& ost) { console.Error() << "Mesh2D_PIS::saveCheckPointData NOT IMPLEMENTED\n"; } template void Mesh2D_PIS::loadCheckPointData(std::istream& ost) { console.Error() << "Mesh2D_PIS::loadCheckPointData NOT IMPLEMENTED\n"; } ./pis/trimesh_pis.h0000664000175000017500000000274012176660653014134 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIMESH_PIS_H #define __TRIMESH_PIS_H // --- project includes --- #include "pis/pi_storage.h" // --- STL includes --- #include #include /*! \brief Abstract base class for parallel storage of interactions between a triangle mesh and particles */ template class TriMesh_PIS : public AParallelInteractionStorage { protected: int m_update_timestamp; TriMesh* m_mesh; public: TriMesh_PIS(TriMesh*,ParallelParticleArray*); virtual ~TriMesh_PIS(); virtual void addExIG(AParallelInteractionStorage*); virtual AFieldSlave* generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int); virtual AFieldSlave* generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int); }; #include "pis/trimesh_pis.hpp" #endif //__TRIMESH_PIS_H ./pis/mesh2d_pis.h0000664000175000017500000000322312176660653013640 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH2D_PIS_H #define __MESH2D_PIS_H // --- project includes --- #include "pi_storage.h" // --- STL includes --- #include #include using std::set; using std::list; /*! \class Mesh2D_PIS \brief Abstract base class for parallel storage of interactions between a 2D mesh and particles \author Steffen Abe $Revision$ $Date$ */ template class Mesh2D_PIS : public AParallelInteractionStorage { protected: int m_update_timestamp; Mesh2D* m_mesh; public: Mesh2D_PIS(Mesh2D*,ParallelParticleArray*); virtual ~Mesh2D_PIS(); virtual void addExIG(AParallelInteractionStorage*); virtual AFieldSlave* generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int); virtual AFieldSlave* generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int); virtual void saveCheckPointData(std::ostream&); virtual void loadCheckPointData(std::istream&); }; #include "mesh2d_pis.hpp" #endif //__MESH2D_PIS_H ./pis/trimesh_pis.hpp0000664000175000017500000000314612176660653014475 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! constructor \param mesh_p \param ppa_p */ template TriMesh_PIS::TriMesh_PIS(TriMesh* mesh_p,ParallelParticleArray* ppa_p): AParallelInteractionStorage(ppa_p) { m_mesh=mesh_p; } template TriMesh_PIS::~TriMesh_PIS() {} /*! add excluding IG \param exig_p */ template void TriMesh_PIS::addExIG(AParallelInteractionStorage* exig_p) { std::cerr << "Setting an exclusing in a Mesh2D interaction group is not supported" << std::endl; } template AFieldSlave* TriMesh_PIS::generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int) { AFieldSlave* new_fs=NULL; return new_fs; } template AFieldSlave* TriMesh_PIS::generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int) { AFieldSlave* new_fs=NULL; return new_fs; } ./pis/trimesh_pis_ne.hpp0000664000175000017500000001454312176660653015162 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" /*! constructor \param mesh_p \param ppa_p \param param */ template TriMesh_PIS_NE::TriMesh_PIS_NE(TriMesh* mesh_p,ParallelParticleArray* ppa_p,typename IType::ParameterType param) :TriMesh_PIS(mesh_p,ppa_p) { m_param=param; this->m_update_timestamp=0; } /*! destructor */ template TriMesh_PIS_NE::~TriMesh_PIS_NE() {} /*! Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the tri/edge/corner (v[0]) and particle (v[1]) ids, the 3rd an indicator if tri (v[2]==0),edge (v[2]==1)or corner (v[2]==2) interaction. If there is no 3rd value or it is not in [0,1,2], "false" is returned. \param v vector of particle ids \warning log(N) */ template bool TriMesh_PIS_NE::isIn(const std::vector& v) { bool res=false; if(v.size()<3){ res=false; } else { switch (v[2]){ case 0: res=m_tri_int_set.find(make_pair(v[0],v[1]))!=m_tri_int_set.end(); break; case 1: res=m_edge_int_set.find(make_pair(v[0],v[1]))!=m_edge_int_set.end(); break; case 2: res=m_corner_int_set.find(make_pair(v[0],v[1]))!=m_corner_int_set.end(); break; default: console.Error() << "wrong value in argument of TriMesh_PIS::isIn !!\n"; break; } } return res; } /*! calculate all the forces */ template void TriMesh_PIS_NE::calcForces() { console.XDebug() << "TriMesh_PIS_NE calculating " << m_triangle_interactions.size() << " triangle forces , " << m_edge_interactions.size() << "edge forces and " << m_corner_interactions.size() << "corner forces\n"; // calculate forces for triangle interactions for(typename std::vector::iterator tri_iter=m_triangle_interactions.begin(); tri_iter!=m_triangle_interactions.end(); tri_iter++){ tri_iter->calcForces(); } // calculate forces for edge interactions for(typename std::vector::iterator edge_iter=m_edge_interactions.begin(); edge_iter!=m_edge_interactions.end(); edge_iter++){ edge_iter->calcForces(); } // calculate forces for corner interactions for(typename std::vector::iterator corner_iter=m_corner_interactions.begin(); corner_iter!=m_corner_interactions.end(); corner_iter++){ corner_iter->calcForces(); } } /*! update the interactions */ template bool TriMesh_PIS_NE::update() { console.XDebug() << "TriMesh_PIS_NE::update\n"; bool res=false; //int count_edge=0; //int count_tri=0; if(this->m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update console.XDebug() << "TriMesh_PIS_NE doing update\n"; // clean out old interactions m_triangle_interactions.clear(); m_edge_interactions.clear(); m_corner_interactions.clear(); m_tri_int_set.clear(); m_edge_int_set.clear(); m_corner_int_set.clear(); // -- get triangle interactions -- // for all triangles for( TriMesh::triangle_iterator tri_iter = this->m_mesh->triangles_begin(); tri_iter != this->m_mesh->triangles_end(); tri_iter++){ // get list of particles near this triangle typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)this->m_ppa)->getParticlesNearTriangle(*tri_iter); // for all particles found for( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++ ){ bool iflag = this->m_ppa->isInInner((*p_iter)->getPos()); m_triangle_interactions.push_back(typename IType::TriIntType(*p_iter,&(*tri_iter),m_param,iflag)); m_tri_int_set.insert(make_pair(tri_iter->getID(),(*p_iter)->getID())); } } // -- get edge interactions // for all edges for( TriMesh::edge_iterator ed_iter = this->m_mesh->edges_begin(); ed_iter != this->m_mesh->edges_end(); ed_iter++ ){ typename ParallelParticleArray::ParticleListHandle plh = ((ParallelParticleArray*)(this->m_ppa))->getParticlesNearEdge(&(*ed_iter)); for ( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++ ){ bool iflag = this->m_ppa->isInInner((*p_iter)->getPos()); m_edge_interactions.push_back(typename IType::EdgeIntType(*p_iter,&(*ed_iter),m_param,iflag)); //m_particle_id_set.insert((*p_iter)->getID()); } } // --- get corner interactions for ( TriMesh::corner_iterator co_iter = this->m_mesh->corners_begin(); co_iter != this->m_mesh->corners_end(); co_iter++ ){ typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)(this->m_ppa))->getParticlesNearPoint(co_iter->getPos()); for ( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++ ){ bool iflag = this->m_ppa->isInInner((*p_iter)->getPos()); m_corner_interactions.push_back(typename IType::CornerIntType(*p_iter,&(*co_iter),m_param,iflag)); //m_particle_id_set.insert((*p_iter)->getID()); } } // set timestamp this->m_update_timestamp = this->m_ppa->getTimeStamp(); } console.XDebug() << "end ElasticTriMeshIG::Update\n"; return res; } ./pis/pi_storage_ne.h0000664000175000017500000000400212176660653014415 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_NE_H #define __PARALLEL_INTERACTION_STORAGE_NE_H //--- project includes --- #include "pis/pi_storage.h" //--- STL includes --- #include //--- IO includes --- /*! \brief parallel storage array without exchange for dynamically created interactions (elastic) */ template class ParallelInteractionStorage_NE : public TParallelInteractionStorage { protected: int m_update_timestamp; vector m_exIG; // > m_set; // evil hack, should be vector, not pair typename I::ParameterType m_param; bool isExcluded(const vector); //&){};//!< do nothing virtual bool isIn(const vector&); virtual void calcForces(); virtual void setTimeStepSize(double dt) { } virtual void calcHeatTrans(); }; #include "pis/pi_storage_ne.hpp" #endif // __PARALLEL_INTERACTION_STORAGE_NE_H ./pis/pi_storage_single.h0000664000175000017500000000325612176660653015306 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_SINGLE_H #define __PARALLEL_INTERACTION_STORAGE_SINGLE_H #include "pis/pi_storage.h" #include //--- IO includes --- /*! \brief parallel storage array without exchange for dynamically created single particle interactions (i.e. Damping...) */ template class ParallelInteractionStorage_Single : public TParallelInteractionStorage { protected: typename I::ParameterType m_param; public: ParallelInteractionStorage_Single(AParallelParticleArray*,const typename I::ParameterType&); virtual void addExIG(AParallelInteractionStorage*){}; // do nothing virtual bool update(); virtual void exchange(){}; //!< do nothing virtual void rebuild(){}; //!< do nothing virtual void tryInsert(const vector&){};//!< do nothing virtual bool isIn(const vector&){return true;}; virtual void calcForces(); virtual void setTimeStepSize(double dt); }; #include "pi_storage_single.hpp" #endif //__PARALLEL_INTERACTION_STORAGE_SINGLE_H ./pis/mesh2d_pis_ne.hpp0000664000175000017500000001202312176660653014660 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" /*! constructor \param mesh_p pointer to the 2d mesh \param ppa_p pointer to the particle array \param param */ template Mesh2D_PIS_NE::Mesh2D_PIS_NE(Mesh2D* mesh_p,ParallelParticleArray* ppa_p,typename IType::ParameterType param) :Mesh2D_PIS(mesh_p,ppa_p) { m_param=param; this->m_update_timestamp=0; } /*! destructor */ template Mesh2D_PIS_NE::~Mesh2D_PIS_NE() {} /*! Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the edge/corner (v[0]) and particle (v[1]) ids, the 3rd an indicator if edge (v[2]==0)or corner (v[2]==1) interaction. If there is no 3rd value or it is not in [0,1], "false" is returned. \param v vector of particle ids \warning log(N) */ template bool Mesh2D_PIS_NE::isIn(const std::vector& v) { bool res=false; if(v.size()<3){ res=false; } else { switch (v[2]){ case 0: res=m_edge_int_set.find(make_pair(v[0],v[1]))!=m_edge_int_set.end(); break; case 1: res=m_corner_int_set.find(make_pair(v[0],v[1]))!=m_corner_int_set.end(); break; default: console.Error() << "wrong value in argument of Mesh2D_PIS::isIn !!\n"; break; } } return res; } /*! calculate all the forces */ template void Mesh2D_PIS_NE::calcForces() { console.XDebug() << "Mesh2D_PIS_NE calculating " << m_edge_interactions.size() << " line forces , " << m_corner_interactions.size() << "corner forces\n"; // calculate forces for edge interactions for(typename std::vector::iterator tri_iter=m_edge_interactions.begin(); tri_iter!=m_edge_interactions.end(); tri_iter++){ tri_iter->calcForces(); } // calculate forces for corner interactions for(typename std::vector::iterator corner_iter=m_corner_interactions.begin(); corner_iter!=m_corner_interactions.end(); corner_iter++){ corner_iter->calcForces(); } } /*! update the interactions */ template bool Mesh2D_PIS_NE::update() { console.XDebug() << "Mesh2D_PIS_NE::update\n"; bool res=false; //int count_edge=0; //int count_tri=0; if(this->m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update console.XDebug() << "Mesh2D_PIS_NE doing update\n"; // clean out old interactions m_edge_interactions.clear(); m_corner_interactions.clear(); m_edge_int_set.clear(); m_corner_int_set.clear(); // -- get edge interactions // for all edges for( Mesh2D::edge_iterator ed_iter = this->m_mesh->edges_begin(); ed_iter != this->m_mesh->edges_end(); ed_iter++ ){ typename ParallelParticleArray::ParticleListHandle plh = ((ParallelParticleArray*)(this->m_ppa))->getParticlesNearEdge(&(*ed_iter)); for ( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++ ){ bool iflag = this->m_ppa->isInInner((*p_iter)->getPos()); m_edge_interactions.push_back(typename IType::EdgeIntType(*p_iter,&(*ed_iter),m_param,iflag)); //m_particle_id_set.insert((*p_iter)->getID()); } } // --- get corner interactions for ( Mesh2D::corner_iterator co_iter = this->m_mesh->corners_begin(); co_iter != this->m_mesh->corners_end(); co_iter++ ){ typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)(this->m_ppa))->getParticlesNearPoint(co_iter->getPos()); for ( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++ ){ bool iflag = this->m_ppa->isInInner((*p_iter)->getPos()); m_corner_interactions.push_back(typename IType::CornerIntType(*p_iter,&(*co_iter),m_param,iflag)); //m_particle_id_set.insert((*p_iter)->getID()); } } // set timestamp this->m_update_timestamp = this->m_ppa->getTimeStamp(); } console.XDebug() << "end ElasticMesh2DIG::Update\n"; return res; } ./pis/pi_storage_ed_t.hpp0000664000175000017500000001105112176660653015270 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template ParallelInteractionStorage_ED_T::ParallelInteractionStorage_ED_T(AParallelParticleArray* ppa,const typename I::ParameterType& param,int tag1, int mask1, int tag2, int mask2):ParallelInteractionStorage_ED(ppa,param) { if(tag1<=tag2){ // sort tags so that m_tag1<=m_tag2 m_tag1=tag1; m_mask1=mask1; m_tag2=tag2; m_mask2=mask2; } else { m_tag1=tag2; m_mask1=mask2; m_tag2=tag1; m_mask2=mask1; } } /*! Update interactions. Do full dynamic search. */ template bool ParallelInteractionStorage_ED_T::update() { console.XDebug() << "ParallelInteractionStorage_ED_T::update at node " << this->m_comm.rank() << "\n"; int count_l=0; bool res=true; if (this->m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update console.XDebug() << "node " << this->m_comm.rank() << " ppa has been rebuilt\n"; // clean out old interactions if not flagged as persistent typename list::iterator iter = this->m_interactions.begin(); while(iter != this->m_interactions.end()){ if(iter->isPersistent()){ iter++; //console.XDebug() << "node " << m_comm.rank() << "persistent interaction\n"; }else{ typename list::iterator er_iter=iter; // get particle ids and remove pair from set vector rm_pids=iter->getAllID(); this->m_set.erase(make_pair(rm_pids[0],rm_pids[1])); iter++; this->m_interactions.erase(er_iter); } } // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ //--- check particle tags --- // get tags int t1=iter->first->getTag(); int t2=iter->second->getTag(); // sort tags if(t1>t2){ int th=t1; t1=t2; t2=th; } // tags fit -> go on if(((t1 & m_mask1)==(m_tag1 & m_mask1)) && ((t2 & m_mask2)==(m_tag2 & m_mask2))){ // check vs. ExIG vector tv; // ids in pair int id1=iter->first->getID(); int id2=iter->second->getID(); tv.push_back(id1); tv.push_back(id2); if((!(this->isExcluded(tv)))&&(!this->isIn(tv))){ // if not already in or in ExIG this->m_interactions.push_back(InteractionType(iter->first,iter->second,this->m_param)); this->m_set.insert(make_pair(id1,id2)); count_l++; } } } } else { // m_ppa not rebuild since last update -> just get additional interactions console.XDebug() << "node " << this->m_comm.rank() << " ppa not rebuilt\n"; // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getNewPairList(); for ( typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++ ){ //--- check particle tags --- // get tags int t1=iter->first->getTag(); int t2=iter->second->getTag(); // sort tags if(t1>t2){ int th=t1; t1=t2; t2=th; } // tags fit -> go on if(((t1 & m_mask1)==(m_tag1 & m_mask1)) && ((t2 & m_mask2)==(m_tag2 & m_mask2))){ // check vs. ExIG vector tv; // ids in pair int id1=iter->first->getID(); int id2=iter->second->getID(); tv.push_back(id1); tv.push_back(id2); if((!(this->isExcluded(tv)))&&(!(this->isIn(tv)))) { this->m_interactions.push_back(InteractionType(iter->first,iter->second, this->m_param)); this->m_set.insert(make_pair(id1,id2)); count_l++; } } } } this->m_update_timestamp = this->m_ppa->getTimeStamp(); console.Debug() << "added " << count_l << " pairs to ParallelInteractionStorage_ED_T\n"; return res; } ./pis/pi_storage.cpp0000664000175000017500000000143112176660653014271 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// #include "pis/pi_storage.h" ./pis/pi_storage_ed.hpp0000664000175000017500000002052312176660653014751 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template ParallelInteractionStorage_ED::ParallelInteractionStorage_ED(AParallelParticleArray* ppa,const typename I::ParameterType& param):ParallelInteractionStorage_E(ppa,param) { m_update_timestamp=0; } template void ParallelInteractionStorage_ED::addExIG(AParallelInteractionStorage* eg) { console.Debug() << "setExIG " << eg << "\n"; m_exIG.push_back(eg); // clean out excluded interactions typename list::iterator iter = this->m_interactions.begin(); while(iter != this->m_interactions.end()){ // check if in exIG vector rm_pids=iter->getAllID(); if(eg->isIn(rm_pids)){ console.XDebug() << "removing excluded: " << rm_pids[0] << " - " << rm_pids[1] << "\n"; typename list::iterator er_iter=iter; // get particle ids and remove pair from set this->m_set.erase(make_pair(rm_pids[0],rm_pids[1])); iter++; this->m_interactions.erase(er_iter); } else { iter++; } } } /*! check if a potential interaction is in one of the excluding IGs \param tv the potential interaction */ template bool ParallelInteractionStorage_ED:: isExcluded(const vector tv) { bool in_exig=false; if(m_exIG.size()>0){ // if there is an ExIG vector::iterator exiter=m_exIG.begin(); while(exiter!=m_exIG.end() && (!in_exig)){ // not yet excluded and more excluders to check in_exig=(*exiter)->isIn(tv); exiter++; } } return in_exig; } template void ParallelInteractionStorage_ED::setTimeStepSize( double dt ) { console.Debug() << "setting time step size for " << this->m_interactions.size() << " interaction forces\n" ; this->m_param.setTimeStepSize(dt); for ( typename std::list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->setTimeStepSize(dt); } } /*! Update interactions. Do full dynamic search. */ template bool ParallelInteractionStorage_ED::update() { //std::cout << "ParallelInteractionStorage_ED::update at node " << m_comm.rank() << std::endl << std::flush; int count_l=0; bool res=true; if (this->m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update console.XDebug() << "node " << this->m_comm.rank() << " ppa has been rebuilt\n"; // clean out old interactions if not flagged as persistent typename list::iterator iter = this->m_interactions.begin(); while(iter != this->m_interactions.end()){ if(iter->isPersistent()){ iter++; //console.XDebug() << "node " << m_comm.rank() << "persistent interaction\n"; }else{ typename list::iterator er_iter=iter; // get particle ids and remove pair from set vector rm_pids=iter->getAllID(); this->m_set.erase(make_pair(rm_pids[0],rm_pids[1])); iter++; this->m_interactions.erase(er_iter); } } // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; // ids in pair int id1=iter->first->getID(); int id2=iter->second->getID(); tv.push_back(id1); tv.push_back(id2); if((!isExcluded(tv))&&(!this->isIn(tv))){ // if not already in or in ExIG this->m_interactions.push_back( InteractionType(iter->first,iter->second,this->m_param) ); this->m_set.insert(make_pair(id1,id2)); count_l++; } } } else { // m_ppa not rebuild since last update -> just get additional interactions console.XDebug() << "node " << this->m_comm.rank() << " ppa not rebuilt\n"; // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getNewPairList(); for ( typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++ ){ // check vs. ExIG vector tv; // ids in pair int id1=iter->first->getID(); int id2=iter->second->getID(); tv.push_back(id1); tv.push_back(id2); if((!isExcluded(tv))&&(!this->isIn(tv))){ this->m_interactions.push_back( InteractionType(iter->first,iter->second, this->m_param) ); this->m_set.insert(make_pair(id1,id2)); count_l++; } } } m_update_timestamp = this->m_ppa->getTimeStamp(); console.Debug() << "added " << count_l << " pairs to ParallelInteractionStorage_ED\n"; // std::cout << "end ParallelInteractionStorage_ED::update at node " << m_comm.rank() << std::endl << std::flush; return res; } template void ParallelInteractionStorage_ED::calcHeatFrict() { console.Debug() << "calculating " << this->m_interactions.size() << " frictional heatings\n" ; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcHeatFrict(); } } template void ParallelInteractionStorage_ED::calcHeatTrans() { console.Debug() << "calculating " << this->m_interactions.size() << " heat transfers\n" ; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcHeatTrans(); } } /*! save checkpoint (i.e. restart) data */ template void ParallelInteractionStorage_ED::saveCheckPointData(std::ostream &oStream) { const std::string delim = "\n"; typename ParallelInteractionStorage_E::InteractionIterator it = this->getInnerInteractionIterator(); oStream << InteractionType::getType() << delim; oStream << it.getNumRemaining(); if (it.hasNext()) { oStream << delim; it.next().saveRestartData(oStream); while (it.hasNext()) { oStream << delim; it.next().saveRestartData(oStream); } } } /*! Read interaction data from input stream pointing to a restartable checkpoint file. The stream needs to be already positioned at the right place. \param iStream the input stream \warning return type may change to bool at some stage */ template void ParallelInteractionStorage_ED::loadCheckPointData(std::istream &iStream) { // read interaction type from stream std::string cp_interaction_type; iStream >> cp_interaction_type; // compare interaction type in stream with type of this IG // in not equal, signal error if(cp_interaction_type!=InteractionType::getType()){ std::cerr << "interaction types differ between checkpoint " << cp_interaction_type << " and scipt " << InteractionType::getType() << std::endl; } else { // correct type -> read data // read nr. of bonds in IG int nconn; iStream >> nconn; std::cerr << "reading " << nconn << " " << InteractionType::getType() << " interactions " << std::endl; // -- read bonds for(int i=0;itryInsert(new_bond); } } } ./pis/mesh2d_pis_eb.h0000664000175000017500000000572512176660653014317 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH2D_PIS_EB_H #define __MESH2D_PIS_EB_H #include "tml/comm/cart_comm.h" #include "pis/mesh2d_pis.h" #include /*! \brief Class for parallel storage of interactions between a 2D mesh and particles which does require exchange of interactions across process boundaries but where interactions are not dynamically formed */ template class Mesh2D_PIS_EB : public Mesh2D_PIS { private: static const int m_edge_exchg_tag; static const int m_corner_exchg_tag; void exchange_boundary(int,int); protected: typename IType::ParameterType m_param; TML_CartComm m_comm; std::set > m_edge_int_set; // for isIn, pairs std::set > m_corner_int_set; // for isIn, pairs std::list m_edge_interactions; std::list m_corner_interactions; public: // --- iterator class === class InteractionIterator { public: typedef typename IType::TriIntType Interaction; typedef typename list::iterator Iterator; InteractionIterator(Iterator begin, Iterator end, AParallelParticleArray* ppa); bool hasNext(); Interaction &next(); int getNumRemaining(); protected: bool isInner(const Iterator &it); private: int m_numRemaining; Iterator m_it; Iterator m_end; AParallelParticleArray *m_ppa; }; // --- member functions --- Mesh2D_PIS_EB(Mesh2D*,ParallelParticleArray*,typename IType::ParameterType); virtual bool isIn(const vector&); virtual void setTimeStepSize(double dt); virtual void calcForces(); virtual bool update(); virtual void exchange(); virtual void rebuild(); virtual void tryInsert(const typename IType::TriIntType&); virtual void tryInsert(const typename IType::CornerIntType&); virtual void tryInsert(const vector&); InteractionIterator getInnerInteractionIterator(); void buildFromPPATagged(int,int); void buildFromPPAByGap(double); virtual void saveSnapShotData(std::ostream&); virtual void saveCheckPointData(std::ostream&); virtual void loadCheckPointData(std::istream&); }; #include "pis/mesh2d_pis_eb.hpp" #endif //__MESH2D_PIS_EB_H ./pis/pi_storage.h0000664000175000017500000001174012176660653013742 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_H #define __PARALLEL_INTERACTION_STORAGE_H //--- MPI includes --- #include //--- STL includes --- #include #include #include #include using std::list; using std::vector; using std::pair; //--- Project includes --- #include "Foundation/vec3.h" #include "Foundation/quintuple.h" #include "Foundation/triplet.h" #include "Parallel/CheckPointable.h" #include "tml/comm/comm.h" // forward declared class to avoid circular include class AFieldSlave; class AParallelParticleArray; /*! \class AParallelInteractionStorage \brief abstract base class for parallel interaction storage array */ class AParallelInteractionStorage : public esys::lsm::CheckPointable { protected: AParallelParticleArray* m_ppa; public: AParallelInteractionStorage(AParallelParticleArray* ppa){m_ppa=ppa;}; virtual ~AParallelInteractionStorage(){}; virtual void exchange()=0; virtual void rebuild()=0; virtual bool update()=0; // virtual void tryInsert(const vector&)=0; virtual bool isIn(const vector&)=0; virtual void calcForces()=0; virtual void calcHeatFrict() {} virtual void calcHeatTrans() {} virtual void setTimeStepSize(double dt)=0; virtual void addExIG(AParallelInteractionStorage*){}; // do nothing virtual AFieldSlave* generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int)=0; virtual AFieldSlave* generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int)=0; virtual void saveCheckPointData(std::ostream&) { throw std::runtime_error("saveCheckPointData not implemented in subclass."); } virtual void loadCheckPointData(std::istream&) { throw std::runtime_error("loadCheckPointData not implemented in subclass."); } virtual void saveSnapShotData(std::ostream&) { throw std::runtime_error(" saveSnapShotData not implemented in subclass."); } virtual bool willSave(){ return false;}; }; /*! \class TParallelInteractionStorage \brief templated abstract base class for parallel interaction storage array. Adds the vector of interactions and access functions to AParallelInteractionStorage */ template class TParallelInteractionStorage : public AParallelInteractionStorage { public: typedef I interaction_type; protected: list m_interactions; public: TParallelInteractionStorage(AParallelParticleArray* ppa):AParallelInteractionStorage(ppa){}; virtual ~TParallelInteractionStorage(){}; class InteractionIterator { public: typedef I Interaction; typedef typename list::iterator Iterator; InteractionIterator(Iterator begin, Iterator end, AParallelParticleArray* ppa); bool hasNext(); Interaction &next(); int getNumRemaining(); protected: bool isInner(const Iterator &it); private: int m_numRemaining; Iterator m_it; Iterator m_end; AParallelParticleArray *m_ppa; }; InteractionIterator getInnerInteractionIterator(); //!< types typedef esys::lsm::quintuple Raw2Data; typedef esys::lsm::triplet DataWithID; typedef esys::lsm::quintuple DataWithPosID; //!< access functions template vector > forAllInnerInteractionsGetWithPos(P (I::*rdf)() const); template vector > forAllInnerInteractionsGetRaw2(P (I::*rdf)() const); template vector > forAllInnerInteractionsGetDataWithID(P (I::*rdf)() const); template vector > forAllInnerInteractionsGetDataWithPosID(P (I::*rdf)() const); template void forAllInnerInteractionsGet(P&,typename P::value_type (I::*rdf)() const); //!< access functions with tags template vector > forAllTaggedInnerInteractionsGetWithPos(P (I::*rdf)() const,int,int); template void forAllTaggedInnerInteractionsGet(P&,typename P::value_type (I::*rdf)() const,int,int); //!< generate FieldSlave of correct type virtual AFieldSlave* generateNewScalarFieldSlave(TML_Comm*,const string&,int,int,int,int); // const ? virtual AFieldSlave* generateNewVectorFieldSlave(TML_Comm*,const string&,int,int,int,int); }; #include "pis/pi_storage.hpp" #endif //__PARALLEL_INTERACTION_STORAGE_H ./pis/trimesh_pis_ne.h0000664000175000017500000000403212176660653014612 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIMESH_PIS_NE_H #define __TRIMESH_PIS_NE_H // --- project includes --- #include "pis/trimesh_pis.h" /*! \class TriMesh_PIS_NE \brief Class for parallel storage of interactions between a triangle mesh and particles which doesn't require exchange of interactions across process boundaries \author Steffen Abe $Revision$ $Date$ */ template class TriMesh_PIS_NE : public TriMesh_PIS { protected: typename IType::ParameterType m_param; set > m_tri_int_set; // for isIn set > m_edge_int_set; // for isIn set > m_corner_int_set; // for isIn vector m_triangle_interactions; vector m_edge_interactions; vector m_corner_interactions; public: TriMesh_PIS_NE(TriMesh*,ParallelParticleArray*,typename IType::ParameterType); ~TriMesh_PIS_NE(); virtual bool isIn(const vector&); /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual bool update(); virtual void exchange(){}; //!< do nothing virtual void rebuild(){}; //!< do nothing virtual void tryInsert(const vector&){};//!< do nothing }; #include "trimesh_pis_ne.hpp" #endif // __TRIMESH_PIS_NE_H ./pis/pi_storage_single.hpp0000664000175000017500000000471212176660653015644 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" template ParallelInteractionStorage_Single::ParallelInteractionStorage_Single(AParallelParticleArray* ppa,const typename I::ParameterType& param):TParallelInteractionStorage(ppa) { m_param=param; } template bool ParallelInteractionStorage_Single::update() { console.XDebug() << "CDampingGroup::Update()\n" ; // empty particle list first this->m_interactions.erase( this->m_interactions.begin(), this->m_interactions.end() ); // build new particle list typename ParallelParticleArray

::ParticleListHandle plh = ((ParallelParticleArray

*)this->m_ppa)->getAllParticles(); for( typename ParallelParticleArray

::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++ ){ this->m_interactions.push_back(I(*iter,&m_param)); } console.XDebug() << "end CDampingGroup::Update()\n" ; return true; } template void ParallelInteractionStorage_Single::calcForces() { console.Debug() << "calculating " << this->m_interactions.size() << " damping forces\n" ; for( typename std::list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcForces(); } } template void ParallelInteractionStorage_Single::setTimeStepSize( double dt ) { console.Debug() << "Setting time step size for " << this->m_interactions.size() << " damping forces\n"; m_param.setTimeStepSize(dt); for ( typename std::list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->setTimeStepSize(dt); } } ./pis/pi_storage_ne_t.hpp0000664000175000017500000000747212176660653015316 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template ParallelInteractionStorage_NE_T::ParallelInteractionStorage_NE_T(AParallelParticleArray* ppa,const typename I::ParameterType& param,int tag1, int mask1, int tag2, int mask2):ParallelInteractionStorage_NE(ppa,param) { if(tag1<=tag2){ // sort tags so that m_tag1<=m_tag2 m_tag1=tag1; m_mask1=mask1; m_tag2=tag2; m_mask2=mask2; } else { m_tag1=tag2; m_mask1=mask2; m_tag2=tag1; m_mask2=mask1; } } /*! Update interactions. Do full dynamic search. */ template bool ParallelInteractionStorage_NE_T::update() { console.XDebug() << "ParallelInteractionStorage_NE_T::Update\n"; int count_l=0; bool res=true; if(this->m_update_timestamp != this->m_ppa->getTimeStamp()){// m_ppa rebuild since last update // clean out old interactions this->m_interactions.clear(); this->m_set.erase(this->m_set.begin(),this->m_set.end()); // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ //--- check particle tags --- // get tags int t1=iter->first->getTag(); int t2=iter->second->getTag(); // sort tags if(t1>t2){ int th=t1; t1=t2; t2=th; } // tags fit -> go on if(((t1 & m_mask1)==(m_tag1 & m_mask1)) && ((t2 & m_mask2)==(m_tag2 & m_mask2))){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(!this->isExcluded(tv)){ this->m_interactions.push_back(InteractionType(iter->first,iter->second,this->m_param)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); count_l++; } } } } else { // m_ppa not rebuild since last update -> just get additional interactions // get list of pairs from m_ppa typename ParallelParticleArray::PairListHandle plh = ((ParallelParticleArray*)this->m_ppa)->getNewPairList(); for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ //--- check particle tags --- // get tags int t1=iter->first->getTag(); int t2=iter->second->getTag(); // sort tags if(t1>t2){ int th=t1; t1=t2; t2=th; } // tags fit -> go on if(((t1 & m_mask1)==(m_tag1 & m_mask1)) && ((t2 & m_mask2)==(m_tag2 & m_mask2))){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(!this->isExcluded(tv)){ this->m_interactions.push_back(InteractionType(iter->first,iter->second,this->m_param)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); count_l++; } } } } this->m_update_timestamp = this->m_ppa->getTimeStamp(); console.XDebug() << "added " << count_l << " pairs to EIG\n"; console.XDebug() << "end ParallelInteractionStorage_NE_T::Update\n"; return res; } ./pis/mesh2d_pis_ne.h0000664000175000017500000000363512176660653014331 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH2D_PIS_NE_H #define __MESH2D_PIS_NE_H // --- project includes --- #include "pis/mesh2d_pis.h" /*! \class Mesh2D_PIS_NE \brief Class for parallel storage of interactions between a 2D mesh and particles which doesn't require exchange of interactions across process boundaries \author Steffen Abe $Revision: $ $Date: $ */ template class Mesh2D_PIS_NE : public Mesh2D_PIS { protected: typename IType::ParameterType m_param; set > m_edge_int_set; // for isIn set > m_corner_int_set; // for isIn vector m_edge_interactions; vector m_corner_interactions; public: Mesh2D_PIS_NE(Mesh2D*,ParallelParticleArray*,typename IType::ParameterType); ~Mesh2D_PIS_NE(); virtual bool isIn(const vector&); /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual bool update(); virtual void exchange(){}; //!< do nothing virtual void rebuild(){}; //!< do nothing virtual void tryInsert(const vector&){};//!< do nothing }; #include "mesh2d_pis_ne.hpp" #endif // __MESH2D_PIS_NE_H ./pis/pi_storage_ed_t.h0000664000175000017500000000310012176660653014724 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_ED_T_H #define __PARALLEL_INTERACTION_STORAGE_ED_T_H //--- project includes --- #include "pi_storage_ed.h" //--- STL includes --- //--- IO includes --- /*! \class ParallelInteractionStorage_ED_T Parallel storage array with exchange for dynamically created interactions (friction etc.) between particles with defined tags. An interaction is only created if particle tag & mask agree */ template class ParallelInteractionStorage_ED_T : public ParallelInteractionStorage_ED { protected: int m_tag1, m_tag2; // particle tags int m_mask1, m_mask2; // tag masks public: ParallelInteractionStorage_ED_T(AParallelParticleArray*,const typename I::ParameterType&, int,int,int,int); virtual bool update(); virtual bool willSave(){ return true;}; }; #include "pis/pi_storage_ed_t.hpp" #endif // __PARALLEL_INTERACTION_STORAGE_ED_H ./pis/pi_storage_ne_t.h0000664000175000017500000000312212176660653014742 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_NE_T_H #define __PARALLEL_INTERACTION_STORAGE_NE_T_H //--- project includes --- #include "pi_storage_ed.h" //--- STL includes --- //--- IO includes --- /*! \class ParallelInteractionStorage_NE_T Parallel storage array with exchange for dynamically created interactions without exchange (elastic etc.) between particles with defined tags. An interaction is only created if particle tag & mask agree */ template class ParallelInteractionStorage_NE_T : public ParallelInteractionStorage_NE { protected: int m_tag1, m_tag2; // particle tags int m_mask1, m_mask2; // tag masks public: ParallelInteractionStorage_NE_T(AParallelParticleArray*,const typename I::ParameterType&, int,int,int,int); virtual bool update(); virtual bool willSave(){ return true;}; }; #include "pis/pi_storage_ne_t.hpp" #endif // __PARALLEL_INTERACTION_STORAGE_NE_T_H ./pis/pi_storage_e.hpp0000664000175000017500000001772112176660653014613 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template const int ParallelInteractionStorage_E::m_exchg_tag=43; /*! Construct parallel interaction storage \param PPA a pointer to the particle array \param param the interaction parameters */ template ParallelInteractionStorage_E::ParallelInteractionStorage_E( AParallelParticleArray* PPA, const typename I::ParameterType& param ) : TParallelInteractionStorage(PPA), m_comm(PPA->getComm()), m_param(param) { m_unbreakable=false; } /*! */ template void ParallelInteractionStorage_E::exchange() { for(int i=0;i<3;i++){ if(m_comm.get_dim(i)>1){ // -- up -- exchange_boundary(i,1); // -- down -- exchange_boundary(i,-1); } } } /*! helper function to do the actual shifting of values in exchange() \param dim dimension, 0->x, 1->y, 2->z \param dir direction, 1->up, -1->down */ template void ParallelInteractionStorage_E::exchange_boundary(int dim,int dir) { console.XDebug() << "PIS_E::exchange_boundary(" << dim << "," << dir << ") at node " << m_comm.rank() << "\n"; set bdry_ids; vector recv_buffer; vector send_buffer; // get boundary bdry_ids = this->m_ppa->getBoundarySlabIds(dim,dir); // for all interactions for( typename list::iterator iter = this->m_interactions.begin(); iter != this->m_interactions.end(); iter++ ){ vector pids=iter->getAllID(); // get particle IDs bool flag=false; // check if any id is in boundary slab vector::iterator it2=pids.begin(); while(it2!=pids.end() && !flag){ flag=(bdry_ids.find(*it2)!=bdry_ids.end()); it2++; } if(flag){ send_buffer.push_back(*iter); } } // shift m_comm.shift_cont_packed(send_buffer,recv_buffer,dim,dir,m_exchg_tag); // try to insert the received interactions for(typename vector::iterator iter=recv_buffer.begin(); iter!=recv_buffer.end(); iter++){ tryInsert(*iter); } // clean buffers send_buffer.clear(); recv_buffer.clear(); console.XDebug() << "end PIS_E::exchange_boundary(" << dim << "," << dir << ") at node " << m_comm.rank() << "\n"; } /*! rebuild all interactions, i.e. set particle pointers according to particle indices */ template void ParallelInteractionStorage_E::rebuild() { console.XDebug() << "PIS_E::rebuild at node " << m_comm.rank() << "\n"; console.XDebug() << "size pre rebuild: " << this->m_interactions.size() << "\n"; // -- DEBUG --- for(typename list::iterator iter = this->m_interactions.begin(); iter!=this->m_interactions.end(); iter++){ vector pids=iter->getAllID(); console.XDebug() << pids[0] << " - " << pids[1] << "\n"; } // --- END DEBUG --- vector pptr; ParallelParticleArray

* t_ppa=(ParallelParticleArray

*)(this->m_ppa); typename list::iterator iter = this->m_interactions.begin(); while(iter != this->m_interactions.end()){ vector pids=iter->getAllID(); vector::const_iterator it2=pids.begin(); bool flag=true; // check if the particles with the stored IDs are here while(it2!=pids.end() && flag){ P* ptr=t_ppa->getParticlePtrByIndex(*it2); if(ptr!=NULL){ pptr.push_back(ptr); } else { flag=false; } it2++; } if(flag){ // if all particle IDs are valid -> set particle pointers iter->setPP(pptr); iter->checkIDs(); iter++; } else { // if not -> erase interactions const typename list::iterator er_iter=iter; iter++; this->m_interactions.erase(er_iter); m_set.erase(make_pair(pids[0],pids[1])); } pptr.clear(); } console.XDebug() << "size post rebuild: " << this->m_interactions.size() << "\n"; // cout << "end PIS_E::rebuild at node " << m_comm.rank() << endl; } /*! Try to insert interaction into the PIS. If insertion is impossible because the interaction is already in, or one of the particles is not in the associated PPA nothing happens. \param In the interaction */ template void ParallelInteractionStorage_E::tryInsert(const InteractionType& In) { bool flag=true; ParallelParticleArray

* t_ppa=(ParallelParticleArray

*)(this->m_ppa); // check if interaction is already in vector pids=In.getAllID(); flag=!isIn(pids); // try to get particle pointers from ppa vector::const_iterator iter=pids.begin(); while(iter!=pids.end() && flag){ P* ptr=t_ppa->getParticlePtrByIndex(*iter); if(ptr!=NULL){ //pptr.push_back(ptr); } else { flag=false; } iter++; } if(flag){ this->m_interactions.push_back(In); m_set.insert(make_pair(pids[0],pids[1])); } } /*! \warning evil hack, only checks 1st & 2nd id -> change from pair to vector */ template bool ParallelInteractionStorage_E::isIn(const vector& pids) { bool res; if(pids[0] > pids [1]){ console.Debug()<< "flipped PIDS : " << pids[0] << "," << pids[1] << "\n"; } res=m_set.find(make_pair(pids[0],pids[1]))!=m_set.end(); return res; } /*! Insert interactions newly created from particle Ids and parameters. If insertion is impossible because the interaction is already in, or one of the particles is not in the associated PPA nothing happens. \param pids the particle Ids */ template void ParallelInteractionStorage_E::tryInsert(const vector& pids) { vector pptr; bool flag=true; ParallelParticleArray

* t_ppa=(ParallelParticleArray

*)(this->m_ppa); // check if interaction is already in flag=!isIn(pids); // try to get particle pointers from ppa vector::const_iterator iter=pids.begin(); while(iter!=pids.end() && flag){ P* ptr=t_ppa->getParticlePtrByIndex(*iter); if(ptr!=NULL){ pptr.push_back(ptr); } else { flag=false; } iter++; } if(flag){ // initialize interaction from particle pointers and interaction parameters InteractionType new_interaction(pptr[0],pptr[1],m_param); vector allid=new_interaction.getAllID(); console.XDebug() << allid[0] << " , " << allid[1] << "\n"; // insert interaction this->m_interactions.push_back(new_interaction); this->m_set.insert(make_pair(pids[0],pids[1])); } } /*! calculate all forces */ template void ParallelInteractionStorage_E::calcForces() { console.Debug() << "calculating " << this->m_interactions.size() << " interaction forces\n" ; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcForces(); } } /*! set the interactions "unbreakable" -> turns update into a NO-OP \param b true -> unbreakable, false -> breakable */ template void ParallelInteractionStorage_E::setUnbreakable(bool b) { m_unbreakable=b; } ./pis/mesh2d_pis_eb.hpp0000664000175000017500000004563312176660653014661 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template const int Mesh2D_PIS_EB::m_edge_exchg_tag=45; template const int Mesh2D_PIS_EB::m_corner_exchg_tag=46; /*! constructor \param mesh_p a pointer to the triangle mesh \param ppa_p a pointer to the particle array \param param the interaction parameters */ template Mesh2D_PIS_EB::Mesh2D_PIS_EB(Mesh2D* mesh_p,ParallelParticleArray* ppa_p,typename IType::ParameterType param) :Mesh2D_PIS(mesh_p,ppa_p),m_comm(ppa_p->getComm()) { console.XDebug() << "Mesh2D_PIS_EB constructor\n"; m_param=param; this->m_update_timestamp=0; } /*! Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the edge/corner (v[0]) and particle (v[1]) ids, the 3rd an indicator if tri edge (v[2]==1)or corner (v[2]==2) interaction. If there is no 3rd value or it is not 1 (edge), "false" is returned. \param v vector of particle ids \warning log(N) */ template bool Mesh2D_PIS_EB::isIn(const std::vector& v) { bool res=false; if(v.size()<3){ res=false; } else { switch (v[2]){ case 1: res=m_edge_int_set.find(make_pair(v[0],v[1]))!=m_edge_int_set.end(); break; case 2: res=m_edge_int_set.find(make_pair(v[0],v[1]))!=m_corner_int_set.end(); break; default: console.Error() << "wrong value in argument of Mesh2D_PIS::isIn !!\n"; break; } } return res; } /*! calculate all the forces */ template void Mesh2D_PIS_EB::calcForces() { console.XDebug() << "Mesh2D_PIS_EB calculating " << m_edge_interactions.size() << " edge forces and" << m_corner_interactions.size() << " corner forces\n"; // calculate forces for edge interactions for(typename list::iterator ed_iter=m_edge_interactions.begin(); ed_iter!=m_edge_interactions.end(); ed_iter++){ ed_iter->calcForces(); } // calculate forces for corner interactions for(typename list::iterator c_iter=m_corner_interactions.begin(); c_iter!=m_corner_interactions.end(); c_iter++){ c_iter->calcForces(); } } /*! */ template bool Mesh2D_PIS_EB::update() { console.XDebug() << "Mesh2D_PIS_EB::update on node " << m_comm.rank() << "\n"; bool res=false; // edge interactions typename list::iterator iter=m_edge_interactions.begin(); while(iter!=m_edge_interactions.end()){ if(iter->broken()){ res=true; typename list::iterator er_iter=iter; iter++; // remove ids from map m_edge_int_set.erase(make_pair(er_iter->getTid(),er_iter->getPid())); // remove interaction m_edge_interactions.erase(er_iter); } else { iter++; } } // corner interactions typename list::iterator c_iter=m_corner_interactions.begin(); while(c_iter!=m_corner_interactions.end()){ if(c_iter->broken()){ res=true; typename list::iterator cr_iter=c_iter; c_iter++; // remove ids from map m_corner_int_set.erase(make_pair(cr_iter->getCid(),cr_iter->getPid())); // remove interaction m_corner_interactions.erase(cr_iter); } else { c_iter++; } } console.XDebug() << "end Mesh2D_PIS_EB::update on node " << m_comm.rank() << "\n"; return res; } /*! */ template void Mesh2D_PIS_EB::exchange() { console.XDebug() << "TriMesh_PIS_EB::exchange\n"; for(int i=0;i<3;i++){ if(m_comm.get_dim(i)>1){ // -- up -- exchange_boundary(i,1); // -- down -- exchange_boundary(i,-1); } } console.XDebug() << "end TriMesh_PIS_EB::exchange\n"; } /*! helper function to do the actual shifting of values in exchange() \param dim dimension, 0->x, 1->y, 2->z \param dir direction, 1->up, -1->down */ template void Mesh2D_PIS_EB::exchange_boundary(int dim,int dir) { console.XDebug() << "Mesh2D_PIS_EB::exchange_boundary(" << dim << "," << dir << ") at node " << m_comm.rank() << "\n"; std::set bdry_ids; std::vector recv_tri_buffer; std::vector send_tri_buffer; std::vector recv_corner_buffer; std::vector send_corner_buffer; // --- setup data to send --- // get boundary bdry_ids = this->m_ppa->getBoundarySlabIds(dim,dir); // --- edges --- // for all interactions for(typename std::list::iterator iter=m_edge_interactions.begin(); iter!=m_edge_interactions.end(); iter++){ int pid=iter->getPid(); if(bdry_ids.find(pid)!=bdry_ids.end()) { // if particle in interaction is in bdry -> put in buffer send_tri_buffer.push_back(*iter); } } // shift m_comm.shift_cont_packed(send_tri_buffer,recv_tri_buffer,dim,dir,m_edge_exchg_tag); // insert received data for(typename std::vector::iterator iter=recv_tri_buffer.begin(); iter!=recv_tri_buffer.end(); iter++){ tryInsert(*iter); } // --- corners --- // for all interactions for(typename std::list::iterator iter=m_corner_interactions.begin(); iter!=m_corner_interactions.end(); iter++){ int pid=iter->getPid(); if(bdry_ids.find(pid)!=bdry_ids.end()) { // if particle in interaction is in bdry -> put in buffer send_corner_buffer.push_back(*iter); } } // shift m_comm.shift_cont_packed(send_corner_buffer,recv_corner_buffer,dim,dir,m_corner_exchg_tag); // insert received data for(typename std::vector::iterator iter=recv_corner_buffer.begin(); iter!=recv_corner_buffer.end(); iter++){ tryInsert(*iter); } console.XDebug() << "end Mesh2D_PIS_EB::exchange_boundary\n"; } template void Mesh2D_PIS_EB::setTimeStepSize(double dt) { } /*! Rebuild interactions after moving particles or interactions between processes. Set particle pointers accordig to particle IDs and remove interactionw which include unavailable particles. */ template void Mesh2D_PIS_EB::rebuild() { console.XDebug() << "Mesh2D_PIS_EB::rebuild on node " << m_comm.rank() << "\n"; ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // should be a dynamic_cast // for all edge interactions typename std::list::iterator ti_iter=m_edge_interactions.begin(); while(ti_iter!=m_edge_interactions.end()){ int pid=ti_iter->getPid(); ParticleType *part_p=t_ppa->getParticlePtrByIndex(pid); if(part_p!=NULL) { // particle is available in m_ppa -> setup pointer in interaction ti_iter->setPP(part_p); Edge2D *ed_p = this->m_mesh->getEdgeById(ti_iter->getTid()); ti_iter->setTP(ed_p); ti_iter++; } else { // particle is not available in m_ppa -> remove interaction const typename list::iterator er_iter=ti_iter; ti_iter++; m_edge_int_set.erase(make_pair(er_iter->getTid(),pid)); m_edge_interactions.erase(er_iter); } } // and now for the corners typename list::iterator ci_iter=m_corner_interactions.begin(); while(ci_iter!=m_corner_interactions.end()){ int pid=ci_iter->getPid(); ParticleType *part_p=t_ppa->getParticlePtrByIndex(pid); if(part_p!=NULL) { // particle is available in m_ppa -> setup pointer in interaction ci_iter->setPP(part_p); Corner2D *co_p = this->m_mesh->getCornerById(ci_iter->getCid()); ci_iter->setCP(co_p); ci_iter++; } else { // particle is not available in m_ppa -> remove interaction const typename list::iterator cr_iter=ci_iter; ci_iter++; m_corner_int_set.erase(make_pair(cr_iter->getCid(),pid)); m_corner_interactions.erase(cr_iter); } } console.XDebug() << "end Mesh2D_PIS_EB::rebuild on node " << m_comm.rank() << "\n"; } /*! */ template void Mesh2D_PIS_EB::tryInsert(const typename IType::TriIntType& In) { console.XDebug() << "Mesh2D_PIS_EB::tryInsert(const typename IType::TriIntType& In)\n"; ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // check if interaction is already in bool is_in=(m_edge_int_set.find(make_pair(In.getTid(),In.getPid()))!=m_edge_int_set.end()); ParticleType *part_p=t_ppa->getParticlePtrByIndex(In.getPid()); if((!is_in) && (part_p!=NULL)){ m_edge_interactions.push_back(In); m_edge_int_set.insert(make_pair(In.getTid(),In.getPid())); } } /*! */ template void Mesh2D_PIS_EB::tryInsert(const typename IType::CornerIntType& In) { console.XDebug() << "Mesh2D_PIS_EB::tryInsert(const typename IType::CornerIntType& In)\n"; ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // check if interaction is already in bool is_in=(m_corner_int_set.find(make_pair(In.getCid(),In.getPid()))!=m_corner_int_set.end()); ParticleType *part_p=t_ppa->getParticlePtrByIndex(In.getPid()); if((!is_in) && (part_p!=NULL)){ m_corner_interactions.push_back(In); m_corner_int_set.insert(make_pair(In.getCid(),In.getPid())); } } /*! Insert interactions newly created from particle Ids and parameters. If insertion is impossible because the interaction is already in, or one of the particles is not in the associated PPA nothing happens. Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the tri/edge/corner (pids[0]) and particle (pids[1]) ids, the 3rd an indicator if edge (pids[2]==1)or corner (pids[2]==2) interaction. If there is no 3rd value or it is not in [1,2], nothing happens. \param pids the particle Ids */ template void Mesh2D_PIS_EB::tryInsert(const vector& pids) { console.XDebug() << "Mesh2D_PIS_EB::(const vector& pids)\n"; ParallelParticleArray* t_ppa = (ParallelParticleArray*)(this->m_ppa); // should be dynamic_cast if(pids.size()<3){ bool is_in=isIn(pids); // interaction already in ParticleType *part_p=t_ppa->getParticlePtrByIndex(pids[1]); if((!is_in) && (part_p!=NULL)){ switch (pids[2]){ case 1: { // edge Edge2D *edge_p = this->m_mesh->getEdgeById(pids[0]); if(edge_p!=NULL){ m_edge_interactions.push_back( typename IType::TriIntType( part_p, edge_p, m_param, this->m_ppa->isInInner(part_p->getPos()) ) ); m_edge_int_set.insert(make_pair(pids[0],pids[1])); } else { console.Error() << "ERROR: Wrong edge id " << pids[0] << " in Mesh2D_PIS_EB::tryInsert\n"; } } break; case 2: { Corner2D *corner_p = this->m_mesh->getCornerById(pids[0]); if(corner_p!=NULL){ m_corner_interactions.push_back( typename IType::CornerIntType( part_p, corner_p, m_param, this->m_ppa->isInInner(part_p->getPos()) ) ); m_corner_int_set.insert(make_pair(pids[0],pids[1])); } else { console.Error() << "ERROR: Wrong corner id " << pids[0] << " in Mesh2D_PIS_EB::tryInsert\n"; } } break; default : console.Error() << "Error: pids[2]= " << pids[2] << "\n"; // Can't happen !! } } } } /*! */ template void Mesh2D_PIS_EB::buildFromPPATagged(int tag ,int mask) { console.XDebug() << "Mesh2D_PIS_EB::buildFromPPATagged(" << tag << "," << mask << ")\n"; set id_set; // for all edges for( Mesh2D::edge_iterator ed_iter = this->m_mesh->edges_begin(); ed_iter != this->m_mesh->edges_end(); ed_iter++){ // get particles near edge typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)this->m_ppa)->getParticlesNearEdge(&(*ed_iter)); console.Debug() << "edge " << ed_iter->getID() << " nr. of particles : " << plh->size() << "\n"; // for all particles found for( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++){ // if valid interaction console.Debug() << "interaction : " << ed_iter->getID() << " " << (*p_iter)->getID() << "\n"; if(id_set.find((*p_iter)->getID())==id_set.end()){ pair dist=ed_iter->dist((*p_iter)->getPos()); console.Debug() << "is valid: " << dist.first << " dist : " << dist.second << "\n"; if(dist.first){ int ptag=(*p_iter)->getTag(); // if tag is correct, add interaction if((ptag & mask)==(tag & mask)){ console.Debug() << "Inserting " << (*p_iter)->getID() << " !!\n"; bool in_flag = this->m_ppa->isInInner((*p_iter)->getPos()); m_edge_interactions.push_back(typename IType::TriIntType((*p_iter),&(*ed_iter),m_param,in_flag)); m_edge_int_set.insert(make_pair(ed_iter->getID(),(*p_iter)->getID())); id_set.insert((*p_iter)->getID()); } } } } } console.XDebug() << "end Mesh2D_PIS_EB::buildFromPPATagged()"; } /*! build interactions according to given maximum gap between particle and 2d edge \param gmax the maximum gap */ template void Mesh2D_PIS_EB::buildFromPPAByGap(double gmax) { console.XDebug() << "Mesh2D_PIS_EB::buildFromPPAByGap(" << gmax << ")\n"; set id_set; // for all edges for( Mesh2D::edge_iterator ed_iter = this->m_mesh->edges_begin(); ed_iter != this->m_mesh->edges_end(); ed_iter++ ){ // get particles near edge typename ParallelParticleArray::ParticleListHandle plh= ((ParallelParticleArray*)this->m_ppa)->getParticlesNearEdge(&(*ed_iter)); console.Debug() << "edge " << ed_iter->getID() << " nr. of particles : " << plh->size() << "\n"; // for all particles found for( typename ParallelParticleArray::ParticleListIterator p_iter=plh->begin(); p_iter!=plh->end(); p_iter++){ // if valid interaction console.Debug() << "interaction : " << ed_iter->getID() << " " << (*p_iter)->getID() << "\n"; if(id_set.find((*p_iter)->getID())==id_set.end()){ pair dist=ed_iter->dist((*p_iter)->getPos()); console.Debug() << "is valid: " << dist.first << " dist : " << dist.second << "\n"; if(dist.first){ // check ga double gap=fabs(dist.second-(*p_iter)->getRad()); console.Debug() << "radius: " << (*p_iter)->getRad() << " gap : " << gap << "\n"; // if small enough, add if(gapgetID() << " !!\n"; bool in_flag = this->m_ppa->isInInner((*p_iter)->getPos()); m_edge_interactions.push_back(typename IType::TriIntType((*p_iter),&(*ed_iter),m_param,in_flag)); m_edge_int_set.insert(make_pair(ed_iter->getID(),(*p_iter)->getID())); id_set.insert((*p_iter)->getID()); } } } } } } template typename Mesh2D_PIS_EB::InteractionIterator Mesh2D_PIS_EB::getInnerInteractionIterator() { return InteractionIterator( m_edge_interactions.begin(), m_edge_interactions.end(), this->m_ppa ); } template void Mesh2D_PIS_EB::saveSnapShotData(std::ostream& ost) { const std::string delim = "\n"; typedef typename IType::TriIntType::CheckPointable CheckPointable; InteractionIterator it = getInnerInteractionIterator(); ost << IType::getType() << delim; ost << it.getNumRemaining(); while (it.hasNext()){ ost << delim; CheckPointable(it.next()).saveSnapShotData(ost); } } template void Mesh2D_PIS_EB::saveCheckPointData(std::ostream& ost) { const std::string delim = "\n"; typedef typename IType::TriIntType::CheckPointable CheckPointable; InteractionIterator it = getInnerInteractionIterator(); ost << IType::getType() << delim; ost << it.getNumRemaining(); while (it.hasNext()){ ost << delim; CheckPointable(it.next()).saveCheckPointData(ost); } } template void Mesh2D_PIS_EB::loadCheckPointData(std::istream& ost) { console.Critical() << "Mesh2D_PIS_EB::loadCheckPointData NOT IMPLEMENTED\n"; } // --- Iterator members --- template Mesh2D_PIS_EB::InteractionIterator::InteractionIterator(Iterator begin, Iterator end, AParallelParticleArray* ppa) : m_numRemaining(0), m_it(end), m_end(end), m_ppa(ppa) { m_numRemaining = 0; for (Iterator it = begin; it != end; it++) { if (isInner(it)) { m_numRemaining++; } } m_it = begin; m_end = end; } template bool Mesh2D_PIS_EB::InteractionIterator::hasNext() { return (m_numRemaining > 0); } template typename IType::TriIntType& Mesh2D_PIS_EB::InteractionIterator::next() { while (!isInner(m_it)) { m_it++; } Interaction &i = *m_it; m_it++; m_numRemaining--; return i; } template int Mesh2D_PIS_EB::InteractionIterator::getNumRemaining() { return m_numRemaining; } template bool Mesh2D_PIS_EB::InteractionIterator::isInner(const Iterator& it) { return m_ppa->isInInner(it->getPos()); } ./pis/Makefile.am0000664000175000017500000000237512176660653013475 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am noinst_LIBRARIES = libpis.a libpis_a_SOURCES = \ pi_storage_eb.h pi_storage_eb.hpp pi_storage_ed.h \ pi_storage_ed.hpp pi_storage_e.h pi_storage_e.hpp \ pi_storage.h pi_storage.hpp pi_storage_ne.h \ pi_storage_ne.hpp pi_storage.cpp trimesh_pis.h \ trimesh_pis.hpp trimesh_pis_ne.h trimesh_pis_ne.hpp \ mesh2d_pis_eb.h mesh2d_pis_eb.hpp mesh2d_pis.h \ pi_storage_single.h trimesh_pis_eb.h mesh2d_pis.hpp \ pi_storage_single.hpp trimesh_pis_eb.hpp \ mesh2d_pis_ne.h mesh2d_pis_ne.hpp ./pis/pi_storage_eb.h0000664000175000017500000000340712176660653014411 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_EB_H #define __PARALLEL_INTERACTION_STORAGE_EB_H //--- project includes --- #include "pis/pi_storage_e.h" //--- STL includes --- #include //--- IO includes --- /*! \class ParallelInteractionStorage_EB \brief parallel storage array with exchange for bonded/breakable interactions */ template class ParallelInteractionStorage_EB : public ParallelInteractionStorage_E { public: // typedef I ParallelInteractionStorage_EB::interaction_type; typedef ParallelInteractionStorage_E Inherited; typedef typename Inherited::InteractionIterator InteractionIterator; bool m_unbreakable; public: ParallelInteractionStorage_EB(AParallelParticleArray*,const typename I::ParameterType&); virtual bool update(); void setUnbreakable(bool); virtual void calcHeatTrans(); virtual void saveCheckPointData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); virtual void saveSnapShotData(std::ostream&); }; #include "pis/pi_storage_eb.hpp" #endif // __PARALLEL_INTERACTION_STORAGE_EB_H ./pis/trimesh_pis_eb.h0000664000175000017500000000402512176660653014600 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIMESH_PIS_EB_H #define __TRIMESH_PIS_EB_H // --- STL includes --- #include // --- project includes --- #include "tml/comm/cart_comm.h" #include "pis/trimesh_pis.h" /*! \brief Class for parallel storage of interactions between a triangle mesh and particles which does require exchange of interactions across process boundaries but where interactions are not dynamically formed */ template class TriMesh_PIS_EB : public TriMesh_PIS { private: static const int m_exchg_tag; void exchange_boundary(int,int); protected: typename IType::ParameterType m_param; TML_CartComm m_comm; set > m_tri_int_set; // for isIn, pairs list m_triangle_interactions; public: TriMesh_PIS_EB(TriMesh*,ParallelParticleArray*,typename IType::ParameterType); virtual bool isIn(const vector&); virtual void setTimeStepSize(double dt); virtual void calcForces(); virtual bool update(); virtual void exchange(); virtual void rebuild(); virtual void tryInsert(const typename IType::TriIntType&); virtual void tryInsert(const vector&); virtual void saveSnapShotData(std::ostream&); void buildFromPPATagged(int,int); void buildFromPPAByGap(double); }; #include "pis/trimesh_pis_eb.hpp" #endif // __TRIMESH_PIS_EB_H ./pis/pi_storage_eb.hpp0000664000175000017500000001272412176660653014753 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template ParallelInteractionStorage_EB::ParallelInteractionStorage_EB(AParallelParticleArray* ppa,const typename I::ParameterType& param):ParallelInteractionStorage_E(ppa,param) { m_unbreakable=false; } /*! Update interactions. Check for broken interactions and remove them. */ template bool ParallelInteractionStorage_EB::update() { bool res=false; if(!m_unbreakable){ console.XDebug() << "PIS_E::updating\n"; typename list::iterator iter = this->m_interactions.begin(); while (iter != this->m_interactions.end()){ if(iter->broken()){ res=true; typename list::iterator er_iter=iter; // get IDs to remove from set vector pids=iter->getAllID(); this->m_set.erase(make_pair(pids[0],pids[1])); iter++; // remove interaction this->m_interactions.erase(er_iter); } else { iter++; } } } else { console.XDebug() << "PIS_E::not updating\n"; } return res; } /*! save snapshot (i.e. viz/postprocess) data */ template void ParallelInteractionStorage_EB::saveSnapShotData(std::ostream &oStream) { const std::string delim = "\n"; typedef typename InteractionType::CheckPointable CheckPointable; typename ParallelInteractionStorage_E::InteractionIterator it = this->getInnerInteractionIterator(); oStream << InteractionType::getType() << delim; oStream << it.getNumRemaining(); if (it.hasNext()) { oStream << delim; CheckPointable(it.next()).saveCheckPointData(oStream); while (it.hasNext()) { oStream << delim; CheckPointable(it.next()).saveCheckPointData(oStream); } } } /*! save checkpoint (i.e. restart) data */ template void ParallelInteractionStorage_EB::saveCheckPointData(std::ostream &oStream) { const std::string delim = "\n"; // typedef typename InteractionType::CheckPointable CheckPointable; typename ParallelInteractionStorage_E::InteractionIterator it = this->getInnerInteractionIterator(); oStream << InteractionType::getType() << delim; oStream << it.getNumRemaining(); if (it.hasNext()) { oStream << delim; it.next().saveRestartData(oStream); while (it.hasNext()) { oStream << delim; it.next().saveRestartData(oStream); } } } /*! Read interaction data from input stream pointing to a restartable checkpoint file. The stream needs to be already positioned at the right place. \param iStream the input stream \warning return type may change to bool at some stage */ template void ParallelInteractionStorage_EB::loadCheckPointData(std::istream &iStream) { // read interaction type from stream std::string cp_interaction_type; iStream >> cp_interaction_type; // compare interaction type in stream with type of this IG // in not equal, signal error if(cp_interaction_type!=InteractionType::getType()){ std::cerr << "interaction types differ between checkpoint " << cp_interaction_type << " and scipt " << InteractionType::getType() << std::endl; } else { // correct type -> read data // read nr. of bonds in IG int nconn; iStream >> nconn; std::cerr << "reading " << nconn << " " << InteractionType::getType() << " interactions " << std::endl; ParallelParticleArray

* t_ppa=(ParallelParticleArray

*)(this->m_ppa); // -- read bonds for(int i=0;i pids=new_bond.getAllID(); P* ptr1=t_ppa->getParticlePtrByIndex(pids[0]); P* ptr2=t_ppa->getParticlePtrByIndex(pids[1]); if((ptr1!=NULL) && (ptr2!=NULL)){ new_bond.setPP(ptr1,ptr2); } else { std::cerr << "trying to insert bond: particles with Id " << pids[0] << " , " << pids[1] << "not present!" << std::endl; } // insert it into interaction storage this->tryInsert(new_bond); } } } template void ParallelInteractionStorage_EB::calcHeatTrans() { console.Debug() << "calculating " << this->m_interactions.size() << " heat interaction transfers\n" ; for( typename list::iterator it = this->m_interactions.begin(); it != this->m_interactions.end(); it++ ){ it->calcHeatTrans(); } } /*! set the interactions "unbreakable" -> turns update into a NO-OP \param b true -> unbreakable, false -> breakable */ template void ParallelInteractionStorage_EB::setUnbreakable(bool b) { m_unbreakable=b; } ./pis/pi_storage_ed.h0000664000175000017500000000375612176660653014422 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_INTERACTION_STORAGE_ED_H #define __PARALLEL_INTERACTION_STORAGE_ED_H //--- project includes --- #include "pi_storage_e.h" //--- STL includes --- #include using std::vector; //--- IO includes --- /*! \class ParallelInteractionStorage_ED \brief parallel storage array with exchange for dynamically created interactions (friction etc.) */ template class ParallelInteractionStorage_ED : public ParallelInteractionStorage_E { public: // typedef I ParallelInteractionStorage_ED::interaction_type; protected: int m_update_timestamp; vector m_exIG; //); //= 1.5.2 aclocal -I Config # version >= 1.8.2 autoheader # version >= 2.59 automake -a -c # version >= 1.8.2 autoconf # version >= 2.59 # generate bzr revision header file if bzr version-info then bzr version-info --custom --template="static int s_bzr_revision={revno};\n" > bzrversion.h echo "bzr version header generated" elif [ -e bzrversion.h ] then echo "using existing bzrversion.h" else echo "static int s_bzr_revision=-1;" > bzrversion.h echo "writing dummy bzr revision -1 to header file" fi ./README0000664000175000017500000000670012176660653011522 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ESyS-Particle: HPC Discrete Element Modelling Software https://launchpad.net/esys-particle/ OVERVIEW ESyS-Particle is a software package for particle-based numerical modelling. The software implements the Discrete Element Method (DEM), a widely used technique for modelling processes involving large deformations, granular flow and/or fragmentation. ESyS-Particle is designed for execution on parallel supercomputers, clusters or multi-core PCs running a Linux-based OS. The C++ simulation engine implements spatial domain decomposition via the Message Passing Interface (MPI). A Python wrapper API provides flexibility in the design of numerical models, specification of modelling parameters and contact logic, and analysis of simulation data. ESyS-Particle has been utilised to simulate earthquake nucleation, comminution in shear cells, silo flow, rock fragmentation, and fault gouge evolution, to name but a few applications. FEATURES * MPI parallel simulation engine * Python API for simulation setup and execution * scriptable setup of model geometry * non-rotational and rotational spherical particles * triangular meshes for specifying boundary conditions and walls * scriptable visualisation of particle assemblies utilising POVray and VTK * a variety of particle-particle and particle-wall interaction laws * linear elastic repulsion between unbonded contacting particles * linear elastic bonds between bonded particle-pairs * both non-rotational and rotational frictional interactions between unbonded particles * rotational bonds implementing torsion and bending stiffnesses in addition to normal and shear stiffnesses * heat transfer via conduction between contacting particles DEVELOPMENT HISTORY ESyS-Particle has been developed in-house within the Earth Systems Science Computational Centre (ESSCC) at the University of Queensland, Brisbane, Australia since 1994. The software was originally called the Lattice Solid Model and later LSMEarth before the Australian Computational Earth Systems Simulator (ACcESS) Major National Research Facility commenced funding software development in 2002. From 2002-2007, ACcESS MNRF funding resulted in rapid development of ESyS-Particle into commercial-grade DEM software, released freely under the Open Software License v3.0 (http://www.opensource.org/licenses/osl-3.0.php). ESyS-Particle software development continues to be funded under the Australian Government AuScope National Collaborative Infrastructure Strategy. One of the key developers, Steffen Abe, is now based at RWTH Aachen, Germany and continues to actively contribute towards ESyS-Particle development. CONTRIBUTORS See the AUTHORS file for a list of contributors to ESyS-Particle. GET INVOLVED The ESyS-Particle software development team is always willing to welcome new developers interested in contributing to the code-base. If you would like to contribute, please contact Dion Weatherley (d.weatherley@uq.edu.au). ./COPYRIGHT0000664000175000017500000000077312176660653012141 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ./configure.ac0000664000175000017500000003360612176660653013135 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. # Boilerplate. AC_INIT([ESyS-Particle], [2.2.2], [d.weatherley@uq.edu.au]) AC_PREREQ([2.59]) AC_LANG([C++]) AC_SUBST([PACKAGE_HOMEPAGE], [https://launchpad.net/esys-particle/]) AC_CONFIG_SRCDIR([tml/type/gettype.cpp]) AC_CONFIG_HEADERS([config.h]) # autoconf generates (in configure) a prefix variable test inside the test for # the python script directory based on information in python.m4. Depending on # the version of this macro definition, the prefix variable test does not pass # the default prefix value to the prefix variable. (This happens in the # python.m4 associated with aclocal 1.9 and 1.10. The version with aclocal 1.11 # corrects the problem.) In this case general libraries are installed in # /usr/lib rather than the default /usr/local/lib, and Python 2.6 libraries are # installed in /usr/lib/python2.6/dist-packages rather than the default # /usr/local/lib/python2.6/dist-packages (.../python2.5/site-packages if Python # 2.5 is being used). # # Although autoconf automatically generates a test for the value # of the prefix variable, this test occurs too late in the configure script if # based on a problematic python.m4. Repeating the test here generates the test # earlier in configure and is a safeguard in the event that a newer python.m4 # returns to the problem encountered with the aclocal 1.10 version. test "x$prefix" = "xNONE" && prefix=$ac_default_prefix test "x$exec_prefix" = "xNONE" && exec_prefix=$prefix AM_INIT_AUTOMAKE([]) #AM_PATH_CPPUNIT([1.10.0], ,[AC_MSG_ERROR([Dud CppUnit version found, must be >= 1.10.0.])]) AM_PATH_PYTHON([2.6]) # # These are the new Libtool macros. Add them and remove the deprecated macros # (not forgetting AC_CONFIG_SUBDIRS near the end of this file) if updating # the Libtool requirements for ESyS-Particle. Be sure to give the user base # plenty of warning before requiring a new version of Libtool (which will be # necessary if the Libtool developers decide no longer to support the deprecated # macros). # #LT_CONFIG_LTDL_DIR([libltdl]) #LT_INIT([dlopen]) #LT_PREREQ([2.0]) #LT_LANG([C++]) #LTDL_INIT([subproject convenience]) # # These Libtool macros are deprecated. Remove them if updating the Libtool # requirements for ESyS-Particle. # AC_LIBTOOL_DLOPEN AC_LIBLTDL_CONVENIENCE([libltdl]) AC_PROG_LIBTOOL AC_SUBST([INCLTDL]) AC_SUBST([LIBLTDL]) # # Process the escript option --with-escript= # AC_ARG_WITH( [escript], AS_HELP_STRING([--with-escript=], [Compile with Escript support @<:@default=no@:>@.]), [ case "${withval}" in yes) AC_MSG_ERROR([bad value ${withval} for --with-escript, require directory path]) ;; no) withEscript=false; escriptRoot= ;; "") withEscript=true; escriptRoot=. ;; *) withEscript=true;escriptRoot=${withval};; esac ], [ withEscript=false escriptRoot= ] ) if test "x$withEscript" = xtrue; then # # Check whether the path exists. # AC_CHECK_FILE( [$escriptRoot], [AC_SUBST(ESCRIPT_ROOT, $escriptRoot)], [AC_MSG_ERROR([Path $escriptRoot does not exist!])] ) fi AM_CONDITIONAL([ESCRIPT_ENABLED], [test x$withEscript = xtrue]) # # Process the VTK option --enable-vtk # AC_ARG_ENABLE( [vtk], AS_HELP_STRING( [--enable-vtk], [Enable Python Visualization Toolkit support (requires vtk python modules).] ), [ if test "x${enableval}" = "xyes"; then wants_vtk=true else wants_vtk=false fi ], [ wants_vtk=false ] ) if test "x$wants_vtk" = "xtrue" ; then AC_PATH_PROG([VTKPYTHON], [vtkpython], "no") if test "$VTKPYTHON" = "no" ; then AC_MSG_WARN([VTK support enabled but 'vtkpython' executable not found in the path!]) else AC_MSG_NOTICE([VTK support enabled]) fi else AC_MSG_NOTICE([VTK support disabled]) fi AM_CONDITIONAL([VTK_ENABLED], [test "x${wants_vtk}" = "xtrue"]) # # Process the POV-Ray option --disable-povray # AC_ARG_ENABLE( [povray], AS_HELP_STRING( [--disable-povray], [Disable POV-Ray ray-tracer support @<:@default=enabled if povray found in the PATH@:>@.] ), [ if test "x${enableval}" = "xyes"; then wants_povray=true else wants_povray=false fi ], [ wants_povray=true; pov_auto=true ] ) if test "x$wants_povray" = "xtrue" ; then AC_PATH_PROG([POVRAY_EXE], [povray], "no") if test "$POVRAY_EXE" = "no" ; then if test "x${pov_auto}" = "x" ; then AC_MSG_WARN([POV-Ray support enabled but 'povray' executable not found in the path!]) else wants_povray=false AC_MSG_NOTICE([POV-Ray support disabled]) fi else AC_MSG_NOTICE([POV-Ray support enabled]) fi else AC_MSG_NOTICE([POV-Ray support disabled]) fi AM_CONDITIONAL([POVRAY_ENABLED], [test "x${wants_povray}" = "xtrue"]) # # Process the docs option --enable-docs # wants_epydoc=false wants_pdfdoc=false AC_ARG_ENABLE( [docs], AS_HELP_STRING( [--enable-docs], [Generate HTML and PDF documentation on install (requires epydoc,pdflatex,bibtex) @<:@default=no@:>@.] ), [ if test "x${enableval}" = "xyes"; then wants_epydoc=true wants_pdfdoc=true fi ] ) # # Process the Epydoc option --with-epydoc[=path/to/epydoc] # AC_ARG_WITH( [epydoc], AS_HELP_STRING( [--with-epydoc@<:@=path/to/epydoc@:>@], [Generate python API documentation in HTML format on install using epydoc @<:@default=no@:>@.] ), [ case "${withval}" in yes) wants_epydoc=true; epydocDir="" ;; *) wants_epydoc=true; epydocDir="${withval}" ;; esac ] ) if test "x$wants_epydoc" = "xtrue" ; then if test -n "${epydocDir}" ; then AC_PATH_PROG([EPYDOC_EXE], [epydoc], "no", "${epydocDir}") else AC_PATH_PROG([EPYDOC_EXE], [epydoc], "no") fi if test "$EPYDOC_EXE" = "no" ; then AC_MSG_WARN([epydoc not found! HTML documentation disabled.]) wants_epydoc=false else AC_MSG_NOTICE([epydoc found. HTML documentation enabled.]) fi else AC_MSG_NOTICE([HTML documentation disabled.]) fi AM_CONDITIONAL([EPYDOC_ENABLED], [test "x${wants_epydoc}" = "xtrue"]) # # Process the latex option --with-latex[=path/to/latex] # AC_ARG_WITH( [latex], AS_HELP_STRING( [--with-latex@<:@=path/to/latex@:>@], [Generate documentation in PDF format (requires pdflatex and bibtex) @<:@default=no@:>@.] ), [ case "${withval}" in yes) wants_pdfdoc=true; latexDir="" ;; *) wants_pdfdoc=true; latexDir="${withval}" ;; esac ] ) if test "x$wants_pdfdoc" = "xtrue" ; then if test -n "${latexDir}" ; then AC_PATH_PROG([PDFLATEX], [pdflatex], "no", "${latexDir}") AC_PATH_PROG([BIBTEX], [bibtex], "no", "${latexDir}") else AC_PATH_PROG([PDFLATEX], [pdflatex], "no") AC_PATH_PROG([BIBTEX], [bibtex], "no") fi if test "$PDFLATEX" = "no" -o "$BIBTEX" = "no"; then AC_MSG_WARN([pdflatex and/or bibtex not found! PDF documentation disabled.]) wants_pdfdoc=false else AC_MSG_NOTICE([PDF documentation enabled.]) fi else AC_MSG_NOTICE([PDF documentation disabled.]) fi AM_CONDITIONAL([PDFDOC_ENABLED], [test "x${wants_pdfdoc}" = "xtrue"]) # # Process the TAU profiling option --enable-tau= # AC_ARG_ENABLE( [tau], AS_HELP_STRING( [--enable-tau=], [Turn on TAU profiling, using TauMakefile to define compiler, compiler-settings, etc.] ), [ case "${enableval}" in yes) AC_MSG_ERROR([bad value ${enableval} for --enable-tau, require TAU Makefile path]) ;; no) tauProfiling=false; tauMakefile= ;; *) tauProfiling=true;tauMakefile=${enableval};; esac ], [ tauProfiling=false tauMakefile= ] ) if test "x$tauProfiling" = xtrue; then # # Check whether the TAU makefile exists. # AC_CHECK_FILE( [$tauMakefile], [AC_SUBST(TAU_MAKEFILE, $tauMakefile)], [AC_MSG_ERROR([Makefile $tauMakefile does not exist!])] ) fi AM_CONDITIONAL([TAU_PROFILING], [test x$tauProfiling = xtrue]) # # Process the SILO option --with-silo # silo_prefix="" AC_ARG_WITH( [silo], AS_HELP_STRING( [--without-silo], [Disable SILO database output support @<:@default=detect@:>@] ), [ case "${withval}" in no) wants_silo=false ;; yes) wants_silo=true ;; *) wants_silo=true; silo_prefix="${withval}" ;; esac ], [ wants_silo=true ] ) # Checks for programs. AC_PROG_CXX([icpc ecpc g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC]) AC_PROG_CC([icc ecc gcc cc CC cl KCC RCC xlC]) AC_PROG_CPP AM_PROG_LEX AC_PROG_YACC AC_PROG_LN_S AC_CHECK_TOOL([CP], [cp]) AC_CHECK_TOOL([FIND], [find]) AC_PATH_PROG([LAMINFO], [laminfo]) AM_CONDITIONAL([HAVE_LAM_MPI], [test -n "$LAMINFO"]) # # Check whether we are using mpic++ or mpiCC as the C++ compiler. # If we are using mpiCC or mpic++ then don't worry about trying to # find libmpi and libmpi++ # if expr x"$CXX" : x'.*mpic[+][+].*' '|' x"$CXX" : ".*mpiCC.*"; then AM_CONDITIONAL([HAVE_SGI_MPI], [false]) else AC_CHECK_LIB([mpi], [MPI_Init], , [AC_MSG_ERROR([MPI library not found...please install MPI])]) AC_CHECK_LIB([mpi++], [MPI_Abort]) AC_PATH_PROG([MPIVIS], [mpivis]) AM_CONDITIONAL([HAVE_SGI_MPI], [test -n "$MPIVIS"]) fi # Checks for libraries. AC_CHECK_LIB([python$PYTHON_VERSION], [Py_Main]) PYTHON_SYS_PREFIX=`$PYTHON -c "from __future__ import print_function;import sys;print(sys.prefix)"` PYTHON_CPPFLAGS="-I$PYTHON_SYS_PREFIX/include/python$PYTHON_VERSION" AC_SUBST([PYTHON_CPPFLAGS]) # Check for boost library PYTHON_MAJOR_VERSION=`python -c "from __future__ import print_function;import sys;print(sys.version_info[[0]])"` PYTHON_MINOR_VERSION=`python -c "from __future__ import print_function;import sys;print(sys.version_info[[1]])"` if [[ $PYTHON_MAJOR_VERSION -ge 4 ]]; then BOOST_REQUIRE([1.47.0]) elif [[ $PYTHON_MAJOR_VERSION -ge 3 ]]; then if [[ $PYTHON_MINOR_VERSION -ge 2 ]]; then BOOST_REQUIRE([1.47.0]) else BOOST_REQUIRE([1.41.0]) fi else BOOST_REQUIRE([1.34.1]) fi # Check for boost filesystem and python libraries BOOST_FILESYSTEM BOOST_PYTHON # check for SILO library if test "x${wants_silo}" = "xtrue"; then CPPFLAGS_SAVED="${CPPFLAGS}" LDFLAGS_SAVED="${LDFLAGS}" if test "x${silo_prefix}" != "x"; then SILO_CPPFLAGS="-I${silo_prefix}/include" SILO_LDFLAGS="-L${silo_prefix}/lib" AC_SUBST([SILO_CPPFLAGS]) AC_SUBST([SILO_LDFLAGS]) CPPFLAGS="${CPPFLAGS} ${SILO_CPPFLAGS}" LDFLAGS="${LDFLAGS} ${SILO_LDFLAGS}" fi ac_cv_silo=0 # Try HDF5-enabled SILO first AC_CHECK_LIB([siloh5], [DBClose], [AC_CHECK_HEADER(silo.h, [ac_cv_silo_h5=1])], [ac_cv_silo_h5=0], [-lhdf5 -lz] ) if test $ac_cv_silo_h5 -eq 0; then # Now check for SILO without HDF5 AC_CHECK_LIB([silo], [DBClose], [AC_CHECK_HEADER(silo.h, [ac_cv_silo=1])], [ac_cv_silo=0] ) fi if test $ac_cv_silo_h5 -eq 0 -a $ac_cv_silo -eq 0 ; then wants_silo=false AC_MSG_WARN([ The SILO library was not found. SILO output will not be available. ]) else if test $ac_cv_silo -eq 1; then SILO_LDFLAGS="-lsilo -lm" else SILO_LDFLAGS="-lsiloh5 -lhdf5 -lz -lm" fi AC_DEFINE([HAVE_SILO], 1, [Define to 1 if the SILO library is available]) fi CPPFLAGS="${CPPFLAGS_SAVED}" LDFLAGS="${LDFLAGS_SAVED}" fi AM_CONDITIONAL(SILO_ENABLED, test x$wants_silo = xtrue) # Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_HEADER_STDBOOL AC_HEADER_TIME AC_CHECK_HEADERS([arpa/inet.h fcntl.h hash_map malloc.h mpi.h netdb.h netinet/in.h stddef.h stdlib.h string.h sys/ioctl.h asm/ioctls.h sys/socket.h sys/time.h unistd.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_C_INLINE AC_TYPE_SIZE_T # Checks for library functions. AC_PROG_GCC_TRADITIONAL AC_FUNC_MALLOC AC_FUNC_REALLOC AC_FUNC_STRTOD AC_FUNC_VPRINTF AC_CHECK_FUNCS([bzero floor gethostbyname gettimeofday memset pow socket sqrt strdup strerror strtol]) AC_CHECK_FUNCS([MPI_Init], ,[AC_MSG_ERROR([MPI_Init not working...check your MPI installation])]) # We want a versioned documentation directory lsmdatadocdir="${datarootdir}/doc/${PACKAGE_TARNAME}-${PACKAGE_VERSION}" AC_SUBST([lsmdatadocdir]) # Output. AC_CONFIG_SUBDIRS([libltdl]) # Remove when adding the LT* macros above. AC_CONFIG_FILES([ Makefile ntable/src/Makefile ntable/Makefile tml/comm/Makefile tml/message/Makefile tml/type/Makefile tml/Makefile ppa/src/Makefile ppa/Makefile pis/Makefile Foundation/Makefile Geometry/Makefile Model/Makefile Parallel/Makefile Fields/Makefile Tools/Makefile Tools/dump2geo/Makefile Tools/dump2pov/Makefile Tools/mesh2pov/Makefile Tools/rotextract/Makefile Tools/StressCalculator/Makefile Tools/ExtractGrains/Makefile Tools/dump2silo/Makefile Tools/dump2vtk/Makefile Tools/ExtractFractures/Makefile Tools/ForceChains/Makefile Tools/ExtractStrain/Makefile Python/Makefile Python/MpiPython/Makefile Python/BoostPythonUtil/Makefile Python/epydoc/Makefile Python/esys/Makefile Python/esys/lsm/Makefile Python/esys/lsm/util/Makefile Python/esys/lsm/geometry/Makefile Python/esys/lsm/vis/Makefile Python/esys/lsm/vis/core/Makefile Python/esys/lsm/vis/vtk/Makefile Python/esys/lsm/vis/povray/Makefile Doc/Tutorial/Makefile ]) AC_OUTPUT ./Tools/0000775000175000017500000000000012176660653011737 5ustar vborosvboros./Tools/rotextract/0000775000175000017500000000000012176660653014136 5ustar vborosvboros./Tools/rotextract/CMakeLists.txt0000664000175000017500000000027212176660653016677 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== ADD_EXECUTABLE(rotextract ${SRC}) INSTALL(TARGETS rotextract DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/rotextract/rextract.cpp0000664000175000017500000001130212176660653016473 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- project include --- #include "../../Foundation/vec3.h" #include "rextract.h" //--- STL includes --- #include #include #include #include #include using std::ostringstream; using std::istream_iterator; using std::back_inserter; using std::ifstream; using std::make_pair; using std::vector; using std::sqrt; Rextract::Rextract(const string& ifn,const string& ofn,int tag) { m_infilebase=ifn; m_outfilename=ofn; m_tag=tag; m_count=0; m_sumpart=0; m_initialized=false; } void Rextract::read_frame(int t) { // make filename ostringstream infilename; infilename << m_infilebase << "_t=" << t << "_0.txt"; std::cout << "header file: " << infilename.str() << std::endl; ifstream headerfile((infilename.str()).c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; string dummystring; vector filenames; int version; // read headerfile headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; headerfile >> dummy >> dummy >> dummy; } else { cout << "pre- V.1 version" << endl; version=0; headerfile >> dummy >> dummy; } headerfile >> dummystring >> dummy; // geometry version // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); // if first frame, get particle numbers if(!m_initialized){ for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ int npart; ifstream datafile(iter->c_str()); datafile >> npart; m_sumpart+=npart; datafile.close(); } m_angvel_rms=vector(m_sumpart); m_rad=vector(m_sumpart); m_initialized=true; } // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 force; Vec3 vel; Vec3 angvel; Vec3 circ_shift; double rad; double mass; double q1,q2,q3,q4; int id; int tag; // get main files for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); datafile >> npart; std::cout << "file: " << *iter << " particles: " << npart << std::endl; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; } else { datafile >> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; } // if correct tag -> add angvel^2 if(tag==m_tag){ m_angvel_rms[id]+=angvel*angvel; if(m_count==0){ m_rad[id]=rad; m_tag_set.insert(id); } } } datafile.close(); } m_count++; } void Rextract::write_data() { ofstream outfile(m_outfilename.c_str()); for(set::iterator iter=m_tag_set.begin(); iter!=m_tag_set.end(); iter++){ outfile << m_rad[*iter] << " " << sqrt(m_angvel_rms[*iter]/double(m_count)) << endl; } outfile.close(); } void Rextract::write_data_bin(double x0,double dx,int nb) { vector r_2(nb,0.0); vector r_m(nb,0.0); vector omega_2(nb,0.0); vector omega_m(nb,0.0); vector count(nb,0); ofstream outfile(m_outfilename.c_str()); for(set::iterator iter=m_tag_set.begin(); iter!=m_tag_set.end(); iter++){ double r=m_rad[*iter]; double omega=sqrt(m_angvel_rms[*iter]/double(m_count)); int idx=int(floor((r-x0)/dx)); if((idx>=0) && (idx #include using std::istream_iterator; using std::back_inserter; using std::ifstream; using std::make_pair; GVMap::GVMap(int tag) { m_min_tag=tag; } void GVMap::read(const string& infilename, bool is_rot) { ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; string dummystring; vector filenames; int version; // clean multimap m_map.clear(); // read headerfile headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; headerfile >> dummy >> dummy >> dummy; } else { cout << "pre- V.1 version" << endl; version=0; headerfile >> dummy >> dummy; } headerfile >> dummystring >> dummy; // geometry version // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); // get main files for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles gdata gd; int npart; Vec3 oldpos; Vec3 initpos; Vec3 force; Vec3 angvel, circ_shift; double rad; int id; int tag; double q1,q2,q3,q4; datafile >> npart; for(int i=0;i> gd.pos >> rad >> id >> tag >> gd.mass >> initpos >> oldpos >> gd.vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; } else { datafile >> gd.pos >> rad >> id >> tag >> gd.mass >> initpos >> oldpos >> gd.vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; } } else { datafile >> gd.pos >> rad >> id >> tag >> gd.mass >> initpos >> oldpos >> gd.vel >> force; } // put pos,vel,mass into map if(tag>=m_min_tag){ m_map.insert(make_pair(tag,gd)); // put tag into set m_tag_set.insert(tag); } } } } void GVMap::calc() { for(set::iterator iter=m_tag_set.begin(); iter!=m_tag_set.end(); iter++){ Vec3 sum_pos=Vec3(0.0,0.0,0.0); Vec3 sum_vel=Vec3(0.0,0.0,0.0); double sum_mass=0; pair iter_pair=m_map.equal_range(*iter); // 1st pass -> get grain center/velocity for(mm_iter it2=iter_pair.first; it2!=iter_pair.second; it2++){ gdata g=it2->second; // cout << g.pos << " - " << g.vel << " - " << g.mass << endl; // sum weigthed position sum_pos+=g.pos*g.mass; // sum weigthed velocities sum_vel+=g.vel*g.mass; // sum weight sum_mass+=g.mass; } // calc mass center of the grain Vec3 center=sum_pos/sum_mass; // calc vel. of mass center Vec3 grain_vel=sum_vel/sum_mass; cout << "mass, center, velocity of grain [ " << *iter << " ] : " << sum_mass << " ( " << center << " ) , ( " << grain_vel << " )" << endl; // 2nd pass -> get rotation Vec3 sum_angvel=Vec3(0.0,0.0,0.0); for(mm_iter it2=iter_pair.first; it2!=iter_pair.second; it2++){ gdata g=it2->second; Vec3 r=g.pos-center; Vec3 angvel=cross(r,g.vel-grain_vel)/(r*r); cout << "[" << it2->first << "] " << angvel << " - " << g.mass << endl; sum_angvel+=angvel*g.mass; } Vec3 grain_angvel=sum_angvel/sum_mass; cout << "angular velocity of grain [ " << *iter << " ] : " << grain_angvel << endl; m_vel[*iter]=grain_vel; m_angvel[*iter]=grain_angvel; } } ./Tools/rotextract/gvmap.h0000664000175000017500000000274212176660653015426 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __GVMAP_H #define __GVMAP_H //--- project include --- #include "../../Foundation/vec3.h" //--- STL includes --- #include #include #include #include #include using std::multimap; using std::pair; using std::set; using std::string; using std::vector; /*! \struct gdata \brief structure used for the "interesting" data of each particle */ struct gdata { Vec3 vel; Vec3 pos; double mass; }; /*! \class GVMap \brief data structure of grain velocity/rotation claculations */ class GVMap { private: multimap m_map; set m_tag_set; map m_vel; map m_angvel; int m_min_tag; typedef multimap::iterator mm_iter; public: GVMap(int); void read(const string&,bool); void calc(); }; #endif //__GVMAP_H ./Tools/rotextract/rextract.h0000664000175000017500000000254112176660653016145 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __REXTRACT_H #define __REXTRACT_H //--- STL includes --- #include #include #include #include using std::set; using std::vector; using std::map; using std::string; /*! \class Rextract \brief class for the extraction of RMS and Stddev of angvel from snapshots */ class Rextract { private: vector m_angvel_rms; vector m_rad; set m_tag_set; string m_infilebase; string m_outfilename; int m_tag; int m_count; int m_sumpart; bool m_initialized; public: Rextract(const string&,const string&,int); void read_frame(int); void write_data(); void write_data_bin(double,double,int); }; #endif // __REXTRACT_H ./Tools/rotextract/Makefile.am0000664000175000017500000000205712176660653016176 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = rotextract AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry rotextract_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Parallel/libParallel.la rotextract_SOURCES = \ main.cpp \ gvmap.h \ gvmap.cpp \ rextract.h \ rextract.cpp ./Tools/rotextract/main.cpp0000664000175000017500000000635312176660653015575 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::cout; using std::cerr; using std::endl; using std::string; using std::ostringstream; // --- project includes --- #include "gvmap.h" #include "rextract.h" int main(int argc,char** argv) { string infilename; string ofilename; string basefilename; //int t0_frame=0; int tstart=0; int nt=0; int dt=0; int ret=0; int tag=0; double x0=0.0,dx=0.0; int nb=0; bool options_valid=true; bool rex=false; bool rp=false; bool binned=false; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-tag"){ if(argc>args_read){ tag=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-r"){ rex=true; args_read++; } else if(option=="-rl"){ rp=true; args_read++; } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-b"){ if(argc>args_read+2){ x0=atof(argv[args_read+1]); dx=atof(argv[args_read+2]); nb=atoi(argv[args_read+3]); binned=true; args_read+=4; } else { options_valid=false; } } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ if(rp){ // extract from per-particle rotations Rextract R(basefilename,ofilename,tag); for(int i=0;i using std::string; void saveSiloSnap(const string&,const string&,int,bool,const string&,bool); void saveSiloSnapSliced(const string&,const string&,int,bool,const string&,double,double); #endif // __FRAME_SILO_H ./Tools/dump2silo/frame_silo.cpp0000664000175000017500000004073112176660653016506 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "frame_silo.h" // --- project includes --- #include "vec3.h" #include // --- STL includes --- #include #include #include #include #include #include #include #include using std::vector; using std::string; using std::ifstream; using std::istream_iterator; using std::back_inserter; using std::map; using std::pair; using std::make_pair; using std::ostringstream; typedef vector FloatVec; typedef vector IntVec; struct Arr3 { void reserve(int n) { x.reserve(n); y.reserve(n); z.reserve(n); } void push_back(const Vec3& v) { x.push_back(v.X()); y.push_back(v.Y()); z.push_back(v.Z()); } FloatVec x; FloatVec y; FloatVec z; }; struct nr_part{ Vec3 pos; Vec3 vel; Vec3 force; double rad; double mass; int tag; }; struct ParticleData { void append(int i, int t, float r, float m, const Vec3& p, const Vec3& v, const Vec3& f) { id.push_back(i); tag.push_back(t); rad.push_back(r); mass.push_back(m); pos.push_back(p); vel.push_back(v); force.push_back(f); } void append(int i, int t, float r, float m, const Vec3& p, const Vec3& v, const Vec3& f, const Vec3& av) { append(i, t, r, m, p, v, f); angvel.push_back(av); } void reserve(int n, bool rot=true) { id.reserve(n); tag.reserve(n); rad.reserve(n); mass.reserve(n); pos.reserve(n); vel.reserve(n); force.reserve(n); if (rot) angvel.reserve(n); } IntVec id; IntVec tag; FloatVec rad; FloatVec mass; Arr3 pos; Arr3 vel; Arr3 force; FloatVec q1,q2,q3,q4; Arr3 angvel; }; DBfile* openSiloFile(const string& filename) { DBfile* dbfile = NULL; // check if file exists and append data if so if (DBInqFile(filename.c_str()) > 0) { // open existing SILO file, try HDF5 format first dbfile = DBOpen(filename.c_str(), DB_HDF5, DB_APPEND); if (!dbfile) dbfile = DBOpen(filename.c_str(), DB_PDB, DB_APPEND); } else { // create new SILO file, prefer HDF5 format if available dbfile = DBCreate(filename.c_str(), DB_CLOBBER, DB_LOCAL, NULL, DB_HDF5); if (!dbfile) dbfile = DBCreate(filename.c_str(), DB_CLOBBER, DB_LOCAL, NULL, DB_PDB); } return dbfile; } void writeBonds(DBfile* dbfile, const ParticleData& data, const vector >& bonds, map& id2idx) { vector nodes; vector strain; for (vector >::const_iterator iter=bonds.begin(); iter!=bonds.end(); iter++) { int i1 = id2idx[iter->first]; int i2 = id2idx[iter->second]; nodes.push_back(i1); nodes.push_back(i2); Vec3 pos1(data.pos.x[i1], data.pos.y[i1], data.pos.z[i1]); Vec3 pos2(data.pos.x[i2], data.pos.y[i2], data.pos.z[i2]); double r1=data.rad[i1]; double r2=data.rad[i2]; double strn=((pos1-pos2).norm()-(r1+r2))/(r1+r2); strain.push_back((float)strn); } int nodesPerElement = 2; int numBonds = bonds.size(); int elType = DB_ZONETYPE_BEAM; DBPutZonelist2(dbfile, "bonds", numBonds, 3, &nodes[0], nodesPerElement*numBonds, 0, 0, 0, &elType, &nodesPerElement, &numBonds, 1, NULL); DBPutUcdvar1(dbfile, "strain", "fullmesh", &strain[0], strain.size(), NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); } int getVersion(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector getFilenames(const string& infilename, int version) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1)||(version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } void readParticles(ParticleData& data, vector< pair >& bonds, const string& infilename, bool rot) { int version=getVersion(infilename); vector filenames=getFilenames(infilename,version); for (vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++) { cout << *iter << endl; ifstream datafile(iter->c_str()); // get particles int npart; int id, tag; float rad, mass; Vec3 initpos, oldpos, pos, vel, force, angvel; datafile >> npart; data.reserve(npart, rot); if (version < 2) { for (int i=0; i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force; if (rot) { float q1, q2, q3, q4; datafile >> q1 >> q2 >> q3 >> q4 >> angvel; data.append(id, tag, rad, mass, pos, vel, force, angvel); } else { data.append(id, tag, rad, mass, pos, vel, force); } } } else { Vec3 circ_shift; for (int i=0; i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift; if (rot) { float q1, q2, q3, q4; datafile >> q1 >> q2 >> q3 >> q4 >> angvel; data.append(id, tag, rad, mass, pos, vel, force, angvel); } else { data.append(id, tag, rad, mass, pos, vel, force); } } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if (version>0) { datafile >> type; if ((type=="Bonded") || (rot==true && type=="RotBonded")) { datafile >> nbond; for (int i=0; i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for (int i=0; i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } datafile.close(); } } void readParticlesSliced(ParticleData& data, vector< pair >& bonds, const string& infilename, bool rot, double minZ, double maxZ) { int version=getVersion(infilename); vector filenames=getFilenames(infilename,version); for (vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++) { cout << *iter << endl; ifstream datafile(iter->c_str()); // get particles int npart; int id, tag; float rad, mass; Vec3 initpos, oldpos, pos, vel, force, angvel; datafile >> npart; data.reserve(npart, rot); if (version < 2) { for (int i=0; i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force; // flatten in Z to middle of slice area pos.Z() = (minZ+maxZ)*0.5; if (rot) { float q1, q2, q3, q4; datafile >> q1 >> q2 >> q3 >> q4 >> angvel; // only append if in slice if ((pos.Z() > minZ) && (pos.Z() < maxZ)) { data.append(id, tag, rad, mass, pos, vel, force, angvel); } } else { // only append if in slice if ((pos.Z() > minZ) && (pos.Z() < maxZ)) { data.append(id, tag, rad, mass, pos, vel, force); } } } } else { Vec3 circ_shift; for (int i=0; i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift; // flatten in Z to middle of slice area pos.Z() = (minZ+maxZ)*0.5; if (rot) { float q1, q2, q3, q4; datafile >> q1 >> q2 >> q3 >> q4 >> angvel; // only append if in slice if ((pos.Z() > minZ) && (pos.Z() < maxZ)) { data.append(id, tag, rad, mass, pos, vel, force, angvel); } } else { // only append if in slice if ((pos.Z() > minZ) && (pos.Z() < maxZ)) { data.append(id, tag, rad, mass, pos, vel, force); } } } } datafile.close(); } } void saveSiloSnap(const string& infilename, const string& outfilename, int iframe, bool with_list, const string& listfilename, bool rot) { ParticleData data; vector< pair > bonds; map id2idx; readParticles(data, bonds, infilename, rot); // generate reverse mapping between particle id and point idx int count=0; for (IntVec::const_iterator iter=data.id.begin(); iter!=data.id.end(); iter++) { id2idx.insert(make_pair(*iter, count)); count++; } // open output file ostringstream silofilename; silofilename << outfilename << iframe << ".silo"; DBfile* dbfile = openSiloFile(silofilename.str()); if (!dbfile) { cerr << "Could not open output file " << silofilename.str() << endl; return; } float* coords[] = { &data.pos.x[0], &data.pos.y[0], &data.pos.z[0] }; DBPutUcdmesh(dbfile, "fullmesh", 3, NULL, coords, data.pos.x.size(), bonds.size(), "bonds", NULL, DB_FLOAT, NULL); // write bonds writeBonds(dbfile, data, bonds, id2idx); // FIXME: Have to decide whether to use pointmesh or not! if (1) { DBPutUcdvar1(dbfile, "radius", "fullmesh", &data.rad[0], data.rad.size(), NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "tag", "fullmesh", (float*)&data.tag[0], data.tag.size(), NULL, 0, DB_INT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "id", "fullmesh", (float*)&data.id[0], data.id.size(), NULL, 0, DB_INT, DB_NODECENT, NULL); coords[0] = &data.vel.x[0]; coords[1] = &data.vel.y[0]; coords[2] = &data.vel.z[0]; char* varnames[] = { "velx", "vely", "velz" }; DBPutUcdvar(dbfile, "velocity", "fullmesh", 3, varnames, coords, data.vel.x.size(), NULL, 0, DB_FLOAT, DB_NODECENT, NULL); if (rot) { coords[0] = &data.angvel.x[0]; coords[1] = &data.angvel.y[0]; coords[2] = &data.angvel.z[0]; char* varnames[] = { "angvelx", "angvely", "angvelz" }; DBPutUcdvar(dbfile, "angular_velocity", "fullmesh", 3, varnames, coords, data.angvel.x.size(), NULL, 0, DB_FLOAT, DB_NODECENT, NULL); } } else { DBPutPointmesh(dbfile, "mesh", 3, coords, data.pos.x.size(), DB_FLOAT, NULL); DBPutPointvar1(dbfile, "radius", "mesh", &data.rad[0], data.rad.size(), DB_FLOAT, NULL); DBPutPointvar1(dbfile, "tag", "mesh", (float*)&data.tag[0], data.tag.size(), DB_INT, NULL); DBPutPointvar1(dbfile, "id", "mesh", (float*)&data.id[0], data.id.size(), DB_INT, NULL); coords[0] = &data.vel.x[0]; coords[1] = &data.vel.y[0]; coords[2] = &data.vel.z[0]; DBPutPointvar(dbfile, "velocity", "mesh", 3, coords, data.vel.x.size(), DB_FLOAT, NULL); if (rot) { coords[0] = &data.angvel.x[0]; coords[1] = &data.angvel.y[0]; coords[2] = &data.angvel.z[0]; DBPutPointvar(dbfile, "angular_velocity", "mesh", 3, coords, data.angvel.x.size(), DB_FLOAT, NULL); } // if option set, read list file int ng_id_map; // current grain id if (with_list) { map ng_id_map; vector grId; ifstream listfile(listfilename.c_str()); int id, nid; while (!listfile.eof()) { listfile >> id >> nid; ng_id_map[id]=nid; } listfile.close(); for (IntVec::const_iterator iter=data.id.begin(); iter!=data.id.end(); iter++) { grId.push_back(ng_id_map[*iter]); } DBPutPointvar1(dbfile, "grainId", "mesh", (float*)&grId[0], grId.size(), DB_INT, NULL); } } // close file DBClose(dbfile); } /*! writes a slice, doesn't write bonds */ void saveSiloSnapSliced(const string& infilename, const string& outfilename, int iframe, bool with_list, const string& listfilename, double slz_min, double slz_max) { cout << "saveSiloSnapSliced(" << slz_min << ", " << slz_max << ")" << endl; ParticleData data; vector< pair > bonds; map id2idx; readParticles(data, bonds, infilename, true); // generate reverse mapping between particle id and point idx int count=0; for (IntVec::const_iterator iter=data.id.begin(); iter!=data.id.end(); iter++) { id2idx.insert(make_pair(*iter, count)); count++; } // open output file ostringstream silofilename; silofilename << outfilename << iframe << ".silo"; DBfile* dbfile = openSiloFile(silofilename.str()); if (!dbfile) { cerr << "Could not open output file " << silofilename.str() << endl; return; } float* coords[] = { &data.pos.x[0], &data.pos.y[0], &data.pos.z[0] }; DBPutPointmesh(dbfile, "mesh", 3, coords, data.pos.x.size(), DB_FLOAT, NULL); DBPutPointvar1(dbfile, "radius", "mesh", &data.rad[0], data.rad.size(), DB_FLOAT, NULL); DBPutPointvar1(dbfile, "tag", "mesh", (float*)&data.tag[0], data.tag.size(), DB_INT, NULL); DBPutPointvar1(dbfile, "id", "mesh", (float*)&data.id[0], data.id.size(), DB_INT, NULL); coords[0] = &data.vel.x[0]; coords[1] = &data.vel.y[0]; coords[2] = &data.vel.z[0]; DBPutPointvar(dbfile, "velocity", "mesh", 3, coords, data.vel.x.size(), DB_FLOAT, NULL); coords[0] = &data.angvel.x[0]; coords[1] = &data.angvel.y[0]; coords[2] = &data.angvel.z[0]; DBPutPointvar(dbfile, "angular_velocity", "mesh", 3, coords, data.angvel.x.size(), DB_FLOAT, NULL); // if option set, read list file int ng_id_map; // current grain id if (with_list) { map ng_id_map; vector grId; ifstream listfile(listfilename.c_str()); int id, nid; while (!listfile.eof()) { listfile >> id >> nid; ng_id_map[id]=nid; } listfile.close(); for (IntVec::const_iterator iter=data.id.begin(); iter!=data.id.end(); iter++) { grId.push_back(ng_id_map[*iter]); } DBPutPointvar1(dbfile, "grainId", "mesh", (float*)&grId[0], grId.size(), DB_INT, NULL); } // close file DBClose(dbfile); } ./Tools/dump2silo/Makefile.am0000664000175000017500000000210712176660653015711 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = dump2silo AM_CPPFLAGS += $(SILO_CPPFLAGS) -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry AM_LDFLAGS += $(SILO_LDFLAGS) dump2silo_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Parallel/libParallel.la dump2silo_SOURCES = \ main.cpp \ frame_silo.h \ frame_silo.cpp ./Tools/dump2silo/main.cpp0000664000175000017500000000656612176660653015322 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::cerr; using std::endl; using std::ostringstream; // --- project includes --- #include "frame_silo.h" int main(int argc,char** argv) { string infilename; string ofilename; string basefilename; string listfilename; bool with_rot=false; bool options_valid=true; bool with_list=false; bool with_slice_z=false; int t0_frame=0; int tstart=0; int nt=0; int dt=0; int ret=0; double slice_zmin=0.0,slice_zmax=0.0; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-list"){ if(argc>args_read){ listfilename=string(argv[args_read+1]); with_list=true; args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-t0"){ if(argc>args_read){ t0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-sz"){ if(argc>args_read+1){ with_slice_z=true; slice_zmin=atof(argv[args_read+1]); slice_zmax=atof(argv[args_read+2]); args_read+=3; } else { options_valid=false; } } else if(option=="-rot") { with_rot=true; options_valid=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ for (int i=0; i using std::string; void do_single_frame_vtk(const string&,const string&,int,bool,const string&,bool,double); void do_single_frame_vtk_r(const string&,const string&,int,bool,const string&,bool,double,bool,const string&,bool,bool); void do_single_frame_sliced_vtk(const string&,const string&,int,bool,const string&,double,double); void do_single_frame_sliced_vtk_r(const string&,const string&,int,bool,const string&,double,double); void do_single_frame_vtk_single_r(const string&,const string&,int,int,bool,bool,double); void writeMeshFile(const string&,const string&,int); #endif // __FRAME_H ./Tools/dump2vtk/frame_vtk.cpp0000664000175000017500000011350412176660653016201 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "frame_vtk.h" // --- project includes --- #include "vec3.h" // --- STL includes --- #include #include #include #include #include #include #include #include #include using std::vector; using std::string; using std::ifstream; using std::istream_iterator; using std::back_inserter; using std::map; using std::pair; using std::make_pair; using std::ostringstream; struct nr_part{ Vec3 pos; Vec3 init_pos; Vec3 vel; Vec3 force; Vec3 circ_shift; double rad; double mass; int tag; int proc_id; }; struct r_part{ Vec3 pos; Vec3 init_pos; Vec3 vel; Vec3 force; Vec3 circ_shift; double rad; double mass; int tag; double q1,q2,q3,q4; Vec3 angvel; int proc_id; }; struct bond { int id1; int id2; int tag; bond(int,int,int); }; bond::bond(int i1,int i2,int t) { id1=i1; id2=i2; tag=t; } /*! Write bonds to vtk file. \param vtkfile the output file stream \param data_map STL map containing particle data, particle ID as key. Used for bond strains. \param bonds bond data: particle ids and bond tag \param id2idx mapping between particle ID and index */ template void write_bonds(ostream& vtkfile,map& data_map,vector& bonds, map& id2idx) { vtkfile << "\n"; vtkfile << "\n"; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ vtkfile << id2idx[iter->id1] << " " << id2idx[iter->id2] << endl; } vtkfile << ""; // offsets vtkfile << "\n"; for (size_t i = 1; i < bonds.size()*2; i+=2) vtkfile << i+1 << "\n"; vtkfile << "\n"; // element type vtkfile << "\n"; const int CELL_LINE_TYPE = 3; for (size_t i = 0; i < bonds.size(); i++) vtkfile << CELL_LINE_TYPE << "\n"; vtkfile << "\n"; vtkfile << "\n"; // bond data vtkfile << "\n"; // bond strain vtkfile << "\n"; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ Vec3 pos1=data_map[iter->id1].pos; Vec3 pos2=data_map[iter->id2].pos; double r1=data_map[iter->id1].rad; double r2=data_map[iter->id2].rad; double strain=((pos1-pos2).norm()-(r1+r2))/(r1+r2); vtkfile << strain << endl; if ((pos1-pos2).norm() > 2.1) { // cerr << "excessive bond length " << (pos1-pos2).norm() << " in bond between " << iter->first << " at [" << pos1 << "] tag " << data_map[iter->first].tag << // " and " << iter->second << " at [" << pos2 << "] tag " << data_map[iter->second].tag <\n"; // bond tag vtkfile << "\n"; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ vtkfile << iter->tag << "\n"; } vtkfile << "\n"; vtkfile << "\n"; } /*! Write bonds to vtk file. Version with bonded mesh IG. \param vtkfile the output file stream \param data_map STL map containing particle data, particle ID as key. Used for bond strains. \param bonds bond data: particle ids and bond tag \param mesh_bonds mesh bond data: particle ids and triangle id -> bond tag \param id2idx mapping between particle ID and index */ template void write_bonds_with_mesh(ostream& vtkfile, map& data_map, vector& bonds, vector& mesh_bonds, map& id2idx) { vtkfile << "\n"; vtkfile << "\n"; // bonds for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ vtkfile << id2idx[iter->id1] << " " << id2idx[iter->id2] << endl; } // mesh bonds for(vector::iterator iter=mesh_bonds.begin(); iter!=mesh_bonds.end(); iter++){ vtkfile << id2idx[iter->id1] << " " << id2idx[iter->id2] << endl; } vtkfile << ""; // offsets vtkfile << "\n"; for (size_t i = 1; i < (bonds.size()+mesh_bonds.size())*2; i+=2) vtkfile << i+1 << "\n"; vtkfile << "\n"; // element type vtkfile << "\n"; const int CELL_LINE_TYPE = 3; for (size_t i = 0; i < (bonds.size()+mesh_bonds.size()); i++) vtkfile << CELL_LINE_TYPE << "\n"; vtkfile << "\n"; vtkfile << "\n"; // bond data vtkfile << "\n"; // bond strain vtkfile << "\n"; // bonds for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ Vec3 pos1=data_map[iter->id1].pos; Vec3 pos2=data_map[iter->id2].pos; double r1=data_map[iter->id1].rad; double r2=data_map[iter->id2].rad; double strain=((pos1-pos2).norm()-(r1+r2))/(r1+r2); vtkfile << strain << endl; } // mesh bonds -> currently set to 0 for(vector::iterator iter=mesh_bonds.begin(); iter!=mesh_bonds.end(); iter++){ vtkfile << "0.0" << endl; } vtkfile << "\n"; // bond tag vtkfile << "\n"; // bonds for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ vtkfile << iter->tag << "\n"; } // mesh bonds for(vector::iterator iter=mesh_bonds.begin(); iter!=mesh_bonds.end(); iter++){ vtkfile << iter->tag << "\n"; } vtkfile << "\n"; // "mesh" flag - only written if there is a bonded mesh interaction // used to distinguish between normal and mesh bonded interactions vtkfile << "\n"; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ vtkfile << "0 \n"; } for(vector::iterator iter=mesh_bonds.begin(); iter!=mesh_bonds.end(); iter++){ vtkfile << "1 \n"; } vtkfile << "\n"; vtkfile << "\n"; } /*! write vtu file header \param vtkfile the ofstream connected to the output file \param np nr. of particles \param nb nr. of bonds */ void write_vtu_header(ofstream& vtkfile,int np, int nb) { vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; } /*! write base vtu file footer \param vtkfile the ofstream connected to the output file */ void write_vtu_footer(ofstream& vtkfile) { vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; } /*! finalize particle data section in vtu file \param vtkfile the ofstream connected to the output file */ void write_vtu_particle_data_end(ofstream& vtkfile) { vtkfile << "\n"; } /*! write base particle data to vtu file \param vtkfile the ofstream connected to the output file \param datamap \param unwrap */ void write_vtu_rot_base_data(ofstream& vtkfile,map& datamap, bool unwrap) { // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ if(unwrap){ vtkfile << (iter->second).pos-(iter->second).circ_shift << endl; } else { vtkfile << (iter->second).pos << endl; } } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).rad << endl;; } vtkfile << "\n"; // tag vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).tag << endl;; } vtkfile << "\n"; // tag vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).mass << endl;; } vtkfile << "\n"; // id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << iter->first << endl;; } vtkfile << "\n"; // velocity vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).vel << endl;; } vtkfile << "\n"; // angular velocity vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).angvel << endl;; } vtkfile << "\n"; // displacement vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << ((iter->second).pos-(iter->second).circ_shift)-(iter->second).init_pos << endl; } vtkfile << "\n"; // initial position vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).init_pos << endl; } vtkfile << "\n"; // process id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).proc_id << endl; } vtkfile << "\n"; } /*! write base particle data to vtu file \param vtkfile the ofstream connected to the output file \param datamap \param unwrap */ void write_vtu_nr_base_data(ofstream& vtkfile,map& datamap, bool unwrap) { // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ if(unwrap){ vtkfile << (iter->second).pos-(iter->second).circ_shift << endl; } else { vtkfile << (iter->second).pos << endl; } } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).rad << endl;; } vtkfile << "\n"; // tag vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).tag << endl;; } vtkfile << "\n"; // tag vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).mass << endl;; } vtkfile << "\n"; // id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << iter->first << endl;; } vtkfile << "\n"; // velocity vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).vel << endl;; } vtkfile << "\n"; // displacement vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << ((iter->second).pos-(iter->second).circ_shift)-(iter->second).init_pos << endl; } vtkfile << "\n"; // initial position vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).init_pos << endl; } vtkfile << "\n"; // process id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).proc_id << endl; } vtkfile << "\n"; } /*! Get snapshot version. \param infilename the file name of the header file (incl. the _0.txt part) */ int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } /*! Get data file names from the header file \param infilename the file name of the header file (incl. the _0.txt part) \param the snapshot version \param relpath */ vector get_filenames(const string& infilename, int version, bool relpath=false) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); if(!headerfile){ std::cerr << "header file " << infilename << " doesn't exist - exiting " << std::endl; std::exit(1); } float dummy,xmax,ymax,zmax,xmin,ymin,zmin,geo_version; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1)||(version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> geo_version; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // v. 1.1 geometry files didn't have dimension info if((geo_version>1.15) || (version>2) ){ headerfile >> dummystring >> dummystring; } // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; if(relpath){ // get path to header file boost::filesystem::path if_path(infilename); if_path.remove_filename(); // change paths in date file names vector mod_fn; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++) { boost::filesystem::path np(*iter); boost::filesystem::path p=if_path; p/=(np.filename()); mod_fn.push_back(p.string()); } filenames=mod_fn; } return filenames; } /*! Read snapshot with non-rotational particles and write it to vtk unstructured grid (.vtu) file \param infilename the name of the header file \param outfilename the "base" name of the output file \param iframe the frame number \param with_list \param listfilename */ void do_single_frame_vtk(const string& infilename,const string& outfilename,int iframe,bool with_list,const string& listfilename,bool remove_xbonds,double bond_remove_dist) { int version=get_version(infilename); vector filenames=get_filenames(infilename,version); map datamap; vector bonds; map id2idx; bool hasMeshBondedInteractions=false; int proc_cnt=0; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ proc_cnt++; cout << *iter << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles Vec3 circ_shift; int npart; nr_part data; int id; Vec3 pos; Vec3 oldpos; Vec3 initpos; datafile >> npart; if(version<2){ for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force; data.proc_id=proc_cnt; datamap[id]=data; } } else { for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force >> data.circ_shift; data.proc_id=proc_cnt; datamap[id]=data; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; for(int ni=0;ni0){ datafile >> type; if(type=="Bonded"){ datafile >> nbond; if(remove_xbonds){ for(int i=0;i> b1 >> b2 >> tag; double dist=(datamap[b1].pos-datamap[b2].pos).norm(); if(dist < bond_remove_dist){ if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } else { for(int i=0;i> b1 >> b2 >> tag; if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } datafile.close(); } // generate reverse mapping between particle id and point idx int count=0; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); count++; } // open output file ostringstream vtkfilename; vtkfilename << outfilename << iframe << ".vtu"; ofstream vtkfile(vtkfilename.str().c_str()); // write header write_vtu_header(vtkfile, datamap.size(), bonds.size()); // write particle base data write_vtu_nr_base_data(vtkfile,datamap,false); // end particle data write_vtu_particle_data_end(vtkfile); // write bonds if(hasMeshBondedInteractions) { // write_bonds_with_mesh(vtkfile,datamap,bonds,id2idx); } else { write_bonds(vtkfile,datamap,bonds,id2idx); } // write footer write_vtu_footer(vtkfile); // close file vtkfile.close(); } /*! Read snapshot with rotational particles and write it to vtk unstructured grid (.vtu) file \param infilename the name of the header file \param outfilename the "base" name of the output file \param iframe the frame number \param with_list \param listfilename \param remove_xbonds if "true", bonds crossing a circular boundary are not written to the file \param bond_remove_dist distance threshold to detect if a bond is crossing a circular boundary \param with_brklist \param brklistname \param unwrap if "true", the model is unwrapped, i.e. movements across a circular boundary are taken into account \param relpath if "true" the filenames in the header file are taken to be relative to the path of the header */ void do_single_frame_vtk_r(const string& infilename,const string& outfilename,int iframe,bool with_list,const string& listfilename,bool remove_xbonds,double bond_remove_dist,bool with_brklist,const string& brklistname, bool unwrap, bool relpath) { int version=get_version(infilename); vector filenames=get_filenames(infilename,version,relpath); map datamap; map ng_id_map; map ng_mass_map; vector bonds; vector mesh_bonds; map id2idx; map id_brk_map; bool hasMeshBondedInteractions=false; int proc_cnt=0; int meshbond_count=1; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ proc_cnt++; cout << *iter << " , " << proc_cnt << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; r_part data; int id; Vec3 pos; Vec3 oldpos; datafile >> npart; if(version < 2){ for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; data.proc_id=proc_cnt; datamap[id]=data; } } else { for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force >> data.circ_shift >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; data.proc_id=proc_cnt; if(unwrap){ data.pos=data.pos-data.circ_shift; } datamap[id]=data; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; for(int ni=0;ni0){ datafile >> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; if(remove_xbonds){ for(int i=0;i> b1 >> b2 >> tag; double dist=(datamap[b1].pos-datamap[b2].pos).norm(); if(dist < bond_remove_dist){ if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } else { for(int i=0;i> b1 >> b2 >> tag; if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } else if ((type=="BondedMesh2D") || (type=="BondedTriMesh")){ hasMeshBondedInteractions=true; datafile >> nbond; for(int i=0;i> b1 >> b2 >> ap_pos; // add anchor point to point list r_part ap; ap.pos=ap_pos; ap.init_pos=ap_pos; ap.vel=Vec3(0,0,0); ap.force=Vec3(0,0,0); ap.circ_shift=Vec3(0,0,0); ap.rad=0.0; ap.mass=0.0; ap.tag=-1*b2; ap.q1=0; ap.q2=0; ap.q3=0; ap.q4=0; ap.angvel=Vec3(0,0,0); ap.proc_id=proc_cnt; int ap_id=-1*meshbond_count; datamap[ap_id]=ap; mesh_bonds.push_back(bond(b1,ap_id,b2)); meshbond_count++; } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } datafile.close(); } // generate reverse mapping between particle id and point idx int count=0; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); count++; } // if option set, read list file into ng_id_map; if(with_list){ ifstream listfile(listfilename.c_str()); int id, nid; float gmass; while(!listfile.eof()){ listfile >> id >> nid >> gmass; ng_id_map[id]=nid; ng_mass_map[id]=gmass; } listfile.close(); } // if option set, read fracture list file int id_brk_map; if(with_brklist){ std::cerr << "opening " << brklistname << std::endl; ifstream brklistfile(brklistname.c_str()); int id, nbrk; while(!brklistfile.eof()){ brklistfile >> id >> nbrk; id_brk_map[id]=nbrk; } brklistfile.close(); } // open output file ostringstream vtkfilename; vtkfilename << outfilename << iframe << ".vtu"; ofstream vtkfile(vtkfilename.str().c_str()); // write header write_vtu_header(vtkfile, datamap.size(), bonds.size()+mesh_bonds.size()); // write particle base data write_vtu_rot_base_data(vtkfile,datamap,unwrap); if(with_list){ // id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << ng_id_map[iter->first] << endl;; } vtkfile << "\n"; // mass vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << ng_mass_map[iter->first] << endl;; } vtkfile << "\n"; } // if option set , number of broken bonds per particle if(with_brklist){ vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << id_brk_map[iter->first] << endl;; } vtkfile << "\n"; } // end particle data write_vtu_particle_data_end(vtkfile); // write bonds if(hasMeshBondedInteractions) { write_bonds_with_mesh(vtkfile,datamap,bonds,mesh_bonds,id2idx); } else { write_bonds(vtkfile,datamap,bonds,id2idx); } // write footer write_vtu_footer(vtkfile); // close file vtkfile.close(); } /*! write particles of single tag from frame \param infilename the input file name \param outfilename the output file name base \param iframe frame nr. \param ptag particle tag to write out \param unwrap unwrap x-circular boundaries */ void do_single_frame_vtk_single_r(const string& infilename,const string& outfilename,int iframe,int ptag,bool unwrap,bool remove_xbonds,double bond_remove_dist) { int version=get_version(infilename); vector filenames=get_filenames(infilename,version); map datamap; map ng_id_map; vector bonds; map id2idx; bool hasMeshBondedInteractions=false; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles Vec3 circ_shift; int npart; r_part data; int id; Vec3 pos; Vec3 oldpos; Vec3 initpos; datafile >> npart; if(version < 2){ for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; if(data.tag==ptag){ datamap[id]=data; } } } else { for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force >> circ_shift >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; if(unwrap){ data.pos-=circ_shift; } if(data.tag==ptag){ datamap[id]=data; } } } // get bonds // get bonds int ngrp; int nbond; string type; datafile >> ngrp; for(int ni=0;ni0){ datafile >> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; if(remove_xbonds){ for(int i=0;i> b1 >> b2 >> tag; double dist=(datamap[b1].pos-datamap[b2].pos).norm(); if((b1==ptag) && (b2==ptag)){ if(dist < bond_remove_dist){ if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } } else { for(int i=0;i> b1 >> b2 >> tag; if((datamap[b1].tag==ptag) && (datamap[b2].tag==ptag)){ if(version > 2){ bonds.push_back(bond(b1,b2,tag)); } else { bonds.push_back(bond(b1,b2,ni)); } } } } } else if ((type=="BondedMesh2D") || (type=="BondedTriMesh")){ hasMeshBondedInteractions=true; datafile >> nbond; for(int i=0;i> b1 >> b2 >> ap; } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; if((datamap[b1].tag==ptag) && (datamap[b2].tag==ptag)){ bonds.push_back(bond(b1,b2,ni)); } } } } datafile.close(); } // generate reverse mapping between particle id and point idx int count=0; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); count++; } // open output file ostringstream vtkfilename; vtkfilename << outfilename << iframe << ".vtu"; ofstream vtkfile(vtkfilename.str().c_str()); // write header write_vtu_header(vtkfile, datamap.size(), bonds.size()); // write particle base data write_vtu_rot_base_data(vtkfile,datamap,unwrap); // end particle data write_vtu_particle_data_end(vtkfile); // write bonds if(hasMeshBondedInteractions) { //write_bonds_with_mesh(vtkfile,datamap,bonds,id2idx); } else { write_bonds(vtkfile,datamap,bonds,id2idx); } // write footer write_vtu_footer(vtkfile); // close file vtkfile.close(); } void do_single_frame_sliced_vtk(const string&,const string&,int,bool,const string&,double,double) {} /*! write a slice , doesn't write bonds */ void do_single_frame_sliced_vtk_r(const string& infilename,const string& outfilename,int iframe,bool with_list,const string& listfilename, double slz_min,double slz_max) { cout << "do_single_frame_sliced_vtk_r(.. " << slz_min << "," << slz_max << ")" << endl; int version=get_version(infilename); vector filenames=get_filenames(infilename,version); map datamap; map ng_id_map; vector > bonds; map id2idx; bool hasMeshBondedInteractions=false; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles //float dummy=0.0; Vec3 circ_shift; int npart=0; r_part data; int id; Vec3 pos; Vec3 oldpos; Vec3 initpos; datafile >> npart; if(version < 2){ for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; if((data.pos.Z()>slz_min) && (data.pos.Z()> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force >> circ_shift >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; if((data.pos.Z()>slz_min) && (data.pos.Z()::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); count++; } // if option set, read list file int ng_id_map; if(with_list){ ifstream listfile(listfilename.c_str()); int id, nid; while(!listfile.eof()){ listfile >> id >> nid; ng_id_map[id]=nid; } listfile.close(); } // open output file ostringstream vtkfilename; vtkfilename << outfilename << iframe << ".xml"; ofstream vtkfile(vtkfilename.str().c_str()); // write header vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write particle pos (flatten in Z to middle of slice area) vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).pos.X() << " " << (iter->second).pos.Y() << " " << (slz_min+slz_max)*0.5 << endl;; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).rad << endl;; } vtkfile << "\n"; // tag vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).tag << endl;; } vtkfile << "\n"; // id vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << iter->first << endl;; } vtkfile << "\n"; // velocity vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).vel << endl;; } vtkfile << "\n"; // angular velocity vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << (iter->second).angvel << endl;; } vtkfile << "\n"; // if option set , current grain id if(with_list){ vtkfile << "\n"; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ vtkfile << ng_id_map[iter->first] << " 0 0" << endl;; } vtkfile << "\n"; } vtkfile << "\n"; // write empty cell block (no bonds) vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close file vtkfile.close(); } void writeMeshFile(const string& infilename,const string& outfilename, int snapNum){ ifstream datafile(infilename.c_str()); string header,skip; int numMeshIG; while (datafile >> header != NULL){ if (header == "TMIG"){ datafile >> numMeshIG; for(int ni=0;ni> meshName; datafile >> skip; datafile >> numNodes; ostringstream vtkfilename; vtkfilename << outfilename << "_Mesh" << ni << "_" << snapNum << ".vtk"; ofstream outputfile(vtkfilename.str().c_str()); outputfile << "# vtk DataFile Version 1.0\n"; outputfile << meshName << " \n"; outputfile << "ASCII\n\n"; outputfile << "DATASET POLYDATA\n"; outputfile << "POINTS " << numNodes << " float\n"; for(int nn=0;nn> skip >> skip >> skip >> X >> Y >> Z; outputfile << X << " " << Y << " " << Z << "\n"; } datafile >> skip; datafile >> numTri; outputfile << "\nPOLYGONS " << numTri << " " << numTri*4 << "\n"; for(int nn=0;nn> skip >> skip >> P1 >> P2 >> P3; outputfile << "3 " << P1 << " " << P2 << " " << P3 << "\n"; } } } } } ./Tools/dump2vtk/main.cpp0000664000175000017500000001242312176660653015145 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::cerr; using std::endl; using std::ostringstream; // --- project includes --- #include "frame_vtk.h" int main(int argc,char** argv) { string infilename; string ofilename; string basefilename; string listfilename; string brklistfilename; bool with_rot=false; bool with_mesh=false; bool options_valid=true; bool with_list=false; bool with_brklist=false; bool with_slice_z=false; bool unwrap=false; bool single_tag=false; bool remove_xbonds=false; bool relative_path=false; // determines how the file names in the header file are treated double xbond_dist=0.0; int ptag=0; int t0_frame=0; int tstart=0; int nt=0; int dt=0; int ret=0; double slice_zmin=0.0,slice_zmax=0.0; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-list"){ if(argc>args_read){ listfilename=string(argv[args_read+1]); with_list=true; args_read+=2; } else { options_valid=false; } } else if(option=="-brklist"){ if(argc>args_read){ brklistfilename=string(argv[args_read+1]); with_brklist=true; args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-t0"){ if(argc>args_read){ t0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-sz"){ if(argc>args_read+1){ with_slice_z=true; slice_zmin=atof(argv[args_read+1]); slice_zmax=atof(argv[args_read+2]); args_read+=3; } else { options_valid=false; } } else if(option=="-rxb"){ if(argc>args_read+1){ remove_xbonds=true; xbond_dist=atof(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-single_tag"){ if(argc>args_read){ single_tag=true; ptag=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-rot") { with_rot=true; options_valid=true; args_read++; } else if(option=="-relative-path") { relative_path=true; options_valid=true; args_read++; } else if(option=="-unwrap") { unwrap=true; args_read++; } else if(option=="-mesh") { with_mesh=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ for(int i=0;i #include #include #include #include #include using std::cout; using std::cerr; using std::endl; using std::string; using std::atoi; using std::vector; using std::ofstream; int main(int argc,char** argv) { string infilename; string outfilename; bool options_valid=true; int args_read=1; while(args_readargs_read){ infilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ outfilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ cout << "converting mesh " << infilename << " to POV object " << outfilename << endl; // --- setup reader MeshReader meshReader(infilename); // storage ... vector node_vector; vector tri_vector; // --- read data in // nodes MeshReader::NodeIterator &niter=meshReader.getNodeIterator(); cout << "will read " << niter.getNumRemaining() << " nodes" << endl; while(niter.hasNext()){ node_vector.push_back(niter.next()); } cout << "have read " << node_vector.size() << " nodes" << endl; // triangles MeshReader::TriIterator &titer=meshReader.getTriIterator(); cout << "will read " << titer.getNumRemaining() << " triangles" << endl; while(titer.hasNext()){ tri_vector.push_back(titer.next()); } cout << "have read " << tri_vector.size() << " triangles" << endl; // write povray file ofstream outfile(outfilename.c_str()); outfile << "mesh2 {" << endl; outfile << " vertex_vectors {" << endl; outfile << " " << node_vector.size() ; for(vector::iterator iter=node_vector.begin(); iter!=node_vector.end(); iter++){ outfile << ",\n <" << iter->x << "," << iter->y << "," << iter->z << ">"; } outfile << "\n }" << endl; outfile << " face_indices {" << endl; outfile << " " << tri_vector.size(); for(vector::iterator iter=tri_vector.begin(); iter!=tri_vector.end(); iter++){ outfile << ",\n <" << iter->p1 << "," << iter->p2 << "," << iter->p3 << ">"; } outfile << "\n }" << endl; // texture hardwired - replace with CL option outfile << " pigment {rgb <0.3,0.6,0.9>}" << endl; outfile << "}" << endl; outfile.close(); } return 0; } ./Tools/dump2geo/0000775000175000017500000000000012176660653013461 5ustar vborosvboros./Tools/dump2geo/CMakeLists.txt0000664000175000017500000000026612176660653016225 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== ADD_EXECUTABLE(dump2geo ${SRC}) INSTALL(TARGETS dump2geo DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/dump2geo/frame_geo.cpp0000664000175000017500000003047412176660653016121 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /* frame_geo.cpp: Written by Feng Chen, Vince Boros and Michele Griffa between November 2010 and January 2011, based on ../dump2vtk/frame_vtk.cpp (https://answers.launchpad.net/esys-particle/+question/132497). */ #include "frame_geo.h" // --- project includes --- #include "vec3.h" // --- STL includes --- #include #include #include #include #include #include #include #include using std::vector; using std::string; using std::ifstream; using std::istream_iterator; using std::back_inserter; using std::map; using std::pair; using std::make_pair; using std::ostringstream; string dimension; struct nr_part{ Vec3 pos; Vec3 vel; Vec3 force; double rad; double mass; int tag; int id; }; struct r_part{ Vec3 pos; Vec3 init_pos; Vec3 vel; Vec3 force; Vec3 circ_shift; double rad; double mass; int tag; int id; double q1,q2,q3,q4; Vec3 angvel; int proc_id; }; struct bond { int id1; int id2; int tag; bond(int,int,int); }; bond::bond(int i1,int i2,int t) { id1=i1; id2=i2; tag=t; } int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector get_filenames(const string& infilename, int version, string& dimension, float* geo_pbdry=NULL, double* bdbx=NULL) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin,geo_version; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1)||(version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> geo_version; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; //double boundingBox[6]={xmin,ymin,zmin,xmax,ymax,zmax}; if (bdbx!=NULL) { bdbx[0]=xmin,bdbx[1]=ymin,bdbx[2]=zmin; bdbx[3]=xmax,bdbx[4]=ymax,bdbx[5]=zmax; } //std::cerr << bdbx[0] << " " << bdbx[1]<< " " << bdbx[2]<< " " << bdbx[3]<< " " << bdbx[4]<< " " << bdbx[5] << endl; //geo_pbdry[0] = geo_version; geo_pbdry[0] = 1.2; // periodic bdry headerfile >> dummystring >> geo_pbdry[1] >> geo_pbdry[2] >> geo_pbdry[3]; // v. 1.1 geometry files didn't have dimension info if(geo_version>1.15){ headerfile >> dummystring >> dimension; } // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); //================================== //================================== cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } void do_single_frame_geo(const string& infilename,const string& outfilename,int iframe,const string& listfilename) { int version=get_version(infilename); string dimension; float geo_pbdry[4]; double bdbx[6]; vector filenames=get_filenames(infilename,version,dimension,geo_pbdry,bdbx); std::cerr << bdbx[0] << " " << bdbx[1]<< " " << bdbx[2]<< " " << bdbx[3]<< " " << bdbx[4]<< " " << bdbx[5] << endl; map datamap; vector bonds; map id2idx; map idx2id; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles Vec3 circ_shift; int npart; nr_part data; int id; Vec3 pos; Vec3 oldpos; Vec3 initpos; datafile >> npart; if(version<2){ for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force; data.id = id; datamap[id]=data; } } else { for(int i=0;i> data.pos >> data.rad >> id >> data.tag >> data.mass >> initpos >> oldpos >> data.vel >> data.force >> circ_shift; data.id = id; datamap[id]=data; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; for(int ni=0;ni0){ datafile >> type; if(type=="Bonded"){ datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; bonds.push_back(bond(b1,b2,tag)); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; bonds.push_back(bond(b1,b2,tag)); } } } datafile.close(); } // generate reverse mapping between particle id and point idx int count=0; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); idx2id.insert(make_pair(count, iter->first)); count++; } // open output file ostringstream geofilename; geofilename << outfilename << iframe << ".geo"; ofstream geofile(geofilename.str().c_str()); geofile << "LSMGeometry " << geo_pbdry[0] << endl; geofile << "BoundingBox " << bdbx[0] << " " << bdbx[1] << " " << bdbx[2] << " " << bdbx[3] << " " << bdbx[4] << " " << bdbx[5] << endl; geofile << "PeriodicBoundaries " << geo_pbdry[1] << " " << geo_pbdry[2] << " " << geo_pbdry[3] << endl; geofile << "Dimension " << dimension << endl; geofile << "BeginParticles" << endl; geofile << "Simple" << endl; geofile << datamap.size() << endl; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ //geofile << (iter->second).pos << " "<< (iter->second).rad << " "<< geopid++ << " " << (iter->second).tag << endl; geofile << (iter->second).pos << " "<< (iter->second).rad << " "<< (iter->second).id << " " << (iter->second).tag << endl; // geopid++; } geofile << "EndParticles" << endl; //write bond info geofile << "BeginConnect" << endl; geofile << bonds.size() << endl; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ geofile << iter->id1 << " " << iter->id2 << " " << iter->tag << endl; } geofile << "EndConnect" << endl; geofile.close(); } void do_single_frame_geo_r(const string& infilename,const string& outfilename,int iframe,bool with_list,const string& listfilename,bool remove_xbonds,double bond_remove_dist,bool with_brklist,const string& brklistname) { int version=get_version(infilename); string dimension; float geo_pbdry[4]; double bdbx[6]; vector filenames=get_filenames(infilename,version,dimension,geo_pbdry,bdbx); std::cerr << bdbx[0] << " " << bdbx[1]<< " " << bdbx[2]<< " " << bdbx[3]<< " " << bdbx[4]<< " " << bdbx[5] << endl; map datamap; map ng_id_map; map ng_mass_map; vector bonds; map id2idx; map id_brk_map; int proc_cnt=0; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ proc_cnt++; cout << *iter << " , " << proc_cnt << endl; ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; r_part data; int id; Vec3 pos; Vec3 oldpos; datafile >> npart; if(version < 2){ for(int i=0;i> data.pos >> data.rad >> data.id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; data.proc_id=proc_cnt; id = data.id; datamap[id]=data; } } else { for(int i=0;i> data.pos >> data.rad >> data.id >> data.tag >> data.mass >> data.init_pos >> oldpos >> data.vel >> data.force >> data.circ_shift >> data.q1 >> data.q2 >> data.q3 >> data.q4 >> data.angvel; data.proc_id=proc_cnt; id = data.id; datamap[id]=data; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; for(int ni=0;ni0){ datafile >> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; if(remove_xbonds){ for(int i=0;i> b1 >> b2 >> dummy; double dist=(datamap[b1].pos-datamap[b2].pos).norm(); if(dist < bond_remove_dist){ bonds.push_back(bond(b1,b2,ni)); } } } else { for(int i=0;i> b1 >> b2 >> dummy; bonds.push_back(bond(b1,b2,ni)); } } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> tag; bonds.push_back(bond(b1,b2,tag)); } } } datafile.close(); } // generate reverse mapping between particle id and point idx int count=0; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ id2idx.insert(make_pair(iter->first,count)); count++; } // if option set, read list file into ng_id_map; if(with_list){ ifstream listfile(listfilename.c_str()); int id, nid; float gmass; while(!listfile.eof()){ listfile >> id >> nid >> gmass; ng_id_map[id]=nid; ng_mass_map[id]=gmass; } listfile.close(); } // if option set, read fracture list file int id_brk_map; if(with_brklist){ std::cerr << "opening " << brklistname << std::endl; ifstream brklistfile(brklistname.c_str()); int id, nbrk; while(!brklistfile.eof()){ brklistfile >> id >> nbrk; id_brk_map[id]=nbrk; } brklistfile.close(); } //std::cerr << "I am being called!!!!!!!!!!!!!!!!!!" << std::endl; // open output file ostringstream geofilename; geofilename << outfilename << iframe << ".geo"; ofstream geofile(geofilename.str().c_str()); geofile << "LSMGeometry " << geo_pbdry[0] << endl; geofile << "BoundingBox " << bdbx[0] << " " << bdbx[1] << " " << bdbx[2] << " " << bdbx[3] << " " << bdbx[4] << " " << bdbx[5] << endl; geofile << "PeriodicBoundaries " << geo_pbdry[1] << " " << geo_pbdry[2] << " " << geo_pbdry[3] << endl; geofile << "Dimension " << dimension << endl; geofile << "BeginParticles" << endl; geofile << "Simple" << endl; geofile << datamap.size() << endl; for(map::iterator iter=datamap.begin(); iter!=datamap.end(); iter++){ //geofile << (iter->second).pos << " "<< (iter->second).rad << " "<< geopid++ << " " << (iter->second).tag << endl; geofile << (iter->second).pos << " "<< (iter->second).rad << " "<< (iter->second).id << " " << (iter->second).tag << endl; } geofile << "EndParticles" << endl; //write bond info geofile << "BeginConnect" << endl; geofile << bonds.size() << endl; for(vector::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ geofile << iter->id1 << " " << iter->id2 << " " << iter->tag << endl; } geofile << "EndConnect" << endl; geofile.close(); } ./Tools/dump2geo/Makefile.am0000664000175000017500000000205612176660653015520 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## Makefile.am for dump2geo include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = dump2geo AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry dump2geo_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Parallel/libParallel.la dump2geo_SOURCES = \ main.cpp \ frame_geo.h \ frame_geo.cpp ./Tools/dump2geo/main.cpp0000664000175000017500000000713212176660653015114 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::cerr; using std::endl; using std::ostringstream; // --- project includes --- #include "frame_geo.h" int main(int argc,char** argv) { string infilename; string ofilename; string basefilename; string listfilename; string brklistfilename; bool with_rot=false; bool options_valid=true; bool with_list=false; bool with_brklist=false; bool remove_xbonds=false; double xbond_dist=0.0; int t0_frame=0; int tstart=0; int nt=0; int dt=0; int ret=0; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-list"){ if(argc>args_read){ listfilename=string(argv[args_read+1]); with_list=true; args_read+=2; } else { options_valid=false; } } else if(option=="-brklist"){ if(argc>args_read){ brklistfilename=string(argv[args_read+1]); with_brklist=true; args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-t0"){ if(argc>args_read){ t0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-rxb"){ if(argc>args_read+1){ remove_xbonds=true; xbond_dist=atof(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-rot") { with_rot=true; options_valid=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ for(int i=0;i using std::string; /*! \author Feng Chen, Vince Boros, Michele Griffa */ void do_single_frame_geo(const string&,const string&,int,const string&); /*! \author Feng Chen, Vince Boros, Michele Griffa */ void do_single_frame_geo_r(const string&,const string&,int,bool,const string&,bool,double,bool,const string&); #endif // __FRAME_GEO_H ./Tools/ForceChains/0000775000175000017500000000000012176660653014123 5ustar vborosvboros./Tools/ForceChains/CMakeLists.txt0000664000175000017500000000033312176660653016662 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== ADD_EXECUTABLE(fcconv ${SRC}) TARGET_LINK_LIBRARIES(fcconv Foundation) INSTALL(TARGETS fcconv DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/ForceChains/vtk.h0000664000175000017500000000143412176660653015102 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- STL includes --- #include using std::string; void convert_to_vtk(const string&,const string&); ./Tools/ForceChains/vvf.cpp0000664000175000017500000000604212176660653015432 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "vvf.h" //--- IO includes --- #include #include using std::ifstream; using std::ofstream; using std::cout; using std::endl; using std::flush; //--- project includes --- #include "vec3.h" /*! Convert a file containing interaction forces in RAW2 format into a .vvf file (PFC dump) \param ifname name of the input file \param ofname name of the output file */ void convert_to_vvf(const string& ifname,const string& ofname) { Vec3 ppos1; // particle 1 position Vec3 ppos2; // particle 2 position Vec3 ipos; // interaction position Vec3 force; // interaction force double r1,r2; // particle radii; int cnt=0; // counter // open input file ifstream infile(ifname.c_str()); // open output file ofstream outfile(ofname.c_str()); // write vvf header outfile << "1025,1000000" << endl; outfile << "I7,S11,S9,F19.11,F19.11,F19.11,F19.11,F19.11,F19.11,F19.11,I3" << endl << flush; outfile << "EVENT_LABEL,EVENT_DATE,EVENT_TIME,PFC_CFORCE_LOCX,PFC_CFORCE_LOCY,PFC_CFORCE_LOCZ,PFC_CFORCE_LENGTH,PFC_CFORCE_FX,PFC_CFORCE_FY,PFC_CFORCE_FZ,PFC_CFORCE_TENSION" << endl; while(!infile.eof()){// until end of input file // read line infile >> ppos1 >> r1 >> ppos2 >> r2 >> ipos >> force; // if force non-zero -> write line if(force.norm()>0.0) { cnt++; // event label (count) outfile.flags(ios_base::fixed|ios_base::right); outfile.width(7); outfile << cnt; // dummy event date outfile.flags(ios_base::fixed|ios_base::right); outfile.width(11); outfile << "01-04-2000"; // dummy event time outfile.flags(ios_base::fixed|ios_base::right); outfile.width(9); outfile << "01:23:45"; outfile.flags(ios_base::scientific|ios_base::right); outfile.precision(11); outfile.width(19); outfile << ipos.X() ; outfile.width(19); outfile << ipos.Y(); outfile.width(19); outfile << ipos.Z(); outfile.width(19); outfile << r1+r2; outfile.width(19); outfile << force.X(); outfile.width(19); outfile << force.Y(); outfile.width(19); outfile << force.Z(); // dummy "tension" outfile.flags(ios_base::fixed|ios_base::right); outfile.width(3); outfile << "1" << endl; } } cout << cnt << " lines written" << endl; // close files infile.close(); outfile.close(); } ./Tools/ForceChains/Makefile.am0000664000175000017500000000164712176660653016167 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = fcconv AM_CPPFLAGS += -I$(top_srcdir)/Foundation fcconv_LDADD = \ $(top_builddir)/Foundation/libFoundation.la fcconv_SOURCES = \ main.cpp \ vvf.cpp \ vvf.h \ vtk.cpp \ vtk.h ./Tools/ForceChains/vvf.h0000664000175000017500000000143412176660653015077 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- STL includes --- #include using std::string; void convert_to_vvf(const string&,const string&); ./Tools/ForceChains/vtk.cpp0000664000175000017500000001163112176660653015435 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "vtk.h" //--- IO includes --- #include #include using std::ifstream; using std::ofstream; using std::cout; using std::endl; using std::flush; //--- STL includes --- #include #include #include using std::map; using std::vector; using std::pair; using std::make_pair; //--- project includes --- #include "vec3.h" struct idata { int p1; int p2; Vec3 force; }; /*! Convert a file containing interaction forces in RAW2 format into a vtk-xml file \param ifname name of the input file \param ofname name of the output file */ void convert_to_vtk(const string& ifname,const string& ofname) { map rev_pos_map; map pos_map; vector interactions; Vec3 ppos1; // particle 1 position Vec3 ppos2; // particle 2 position Vec3 ipos; // interaction position Vec3 force; // interaction force double r1,r2; // particle radii; int pcnt=0; // particle counter // open input file ifstream infile(ifname.c_str()); while(!infile.eof()){// until end of input file int pnr1,pnr2; // read line infile >> ppos1 >> r1 >> ppos2 >> r2 >> ipos >> force; if(force.norm()>0) { // if force !=(0,0,0) , otherwise ignore interaction // try to find particle 1 in map map::iterator iter=rev_pos_map.find(ppos1); if(iter!=rev_pos_map.end()){ // particle already in // cout << " found ppos1 : " << ppos1 << " id: " << iter->second << endl; pnr1=iter->second; } else { // particle not yet in -> insert & update count rev_pos_map.insert(make_pair(ppos1,pcnt)); pos_map.insert(make_pair(pcnt,ppos1)); pnr1=pcnt; pcnt++; } // same thing for ppos2 iter=rev_pos_map.find(ppos2); if(iter!=rev_pos_map.end()){ // particle already in // cout << " found ppos2 : " << ppos2 << " id: " << iter->second << endl; pnr2=iter->second; } else { // particle not yet in -> insert & update count rev_pos_map.insert(make_pair(ppos2,pcnt)); pos_map.insert(make_pair(pcnt,ppos2)); pnr2=pcnt; pcnt++; } // add interaction idata new_int; new_int.p1=pnr1; new_int.p2=pnr2; new_int.force=force; interactions.push_back(new_int); } } // close input file infile.close(); // open output file ofstream outfile(ofname.c_str()); // write header outfile << "\n"; outfile << "\n"; outfile << "\n"; // write point data outfile << "\n"; outfile << "\n"; for(map::iterator iter=pos_map.begin(); iter!=pos_map.end(); iter++){ outfile << iter->second << endl; } outfile << "\n"; outfile << "\n"; // write interaction (cell) data outfile << "\n"; outfile << "\n"; for(vector::iterator iter=interactions.begin(); iter!=interactions.end(); iter++){ outfile << iter->p1 << " " << iter->p2 << endl; } outfile << ""; // offsets outfile << "\n"; for (size_t i = 1; i < interactions.size()*2; i+=2) outfile << i+1 << "\n"; outfile << "\n"; // element type outfile << "\n"; const int CELL_LINE_TYPE = 3; for (size_t i = 0; i < interactions.size(); i++) outfile << CELL_LINE_TYPE << "\n"; outfile << "\n"; outfile << "\n"; // bond data outfile << "\n"; // bond strain outfile << "\n"; for(vector::iterator iter=interactions.begin(); iter!=interactions.end(); iter++){ outfile << iter->force.norm() << endl; } outfile << "\n"; outfile << "\n"; // write footer outfile << "\n"; outfile << "\n"; outfile << "\n"; // close output file outfile.close(); } ./Tools/ForceChains/main.cpp0000664000175000017500000000363112176660653015556 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include using std::cout; using std::cerr; using std::endl; using std::string; // --- Project includes --- #include "vvf.h" #include "vtk.h" int main(int argc,char** argv) { bool options_valid=true; string ofilename; string ifilename; bool write_to_vtk=false; bool write_to_vvf=false; // process args int args_read=1; while(args_readargs_read){ ifilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-vvf"){ write_to_vvf=true; args_read++; } else if(option=="-vtk"){ write_to_vtk=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } // DO STUFF if(options_valid){ if(write_to_vvf){ convert_to_vvf(ifilename,ofilename); } else if(write_to_vtk){ convert_to_vtk(ifilename,ofilename); } } return 0; } ./Tools/dump2pov/0000775000175000017500000000000012176660653013513 5ustar vborosvboros./Tools/dump2pov/colormap3.h0000664000175000017500000000207212176660653015564 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __COLORMAP3_H #define __COLORMAP3_H #include "colormap.h" // --- STL includes --- #include using std::vector; class ColorMap3 : public ColorMap { private: Vec3 m_c0,m_c1,m_c2; double m_x0,m_x1,m_x2; public: ColorMap3(const Vec3&,const Vec3&,const Vec3&,double,double,double); virtual ~ColorMap3(){} virtual Vec3 getColor(double) const; }; #endif // __COLORMAP3_H ./Tools/dump2pov/CMakeLists.txt0000664000175000017500000000033712176660653016256 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== ADD_EXECUTABLE(dump2pov ${SRC}) TARGET_LINK_LIBRARIES(dump2pov libLsmPy) INSTALL(TARGETS dump2pov DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/dump2pov/campos.h0000664000175000017500000000206312176660653015147 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CAMPOS_H #define __CAMPOS_H // -- Project includes -- #include "../../Foundation/vec3.h" // -- STL includes -- #include #include #include using std::map; using std::pair; using std::string; class CameraPos { private: map > m_posmap; public: CameraPos(const string&); pair getCamPos(int); }; #endif //__CAMPOS_H ./Tools/dump2pov/frame.cpp0000664000175000017500000004137712176660653015325 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "frame.h" #include #include #include #include #include #include #include #include #include #include #include "vec3.h" using std::cout; using std::endl; using std::ifstream; using std::ofstream; using std::string; using std::vector; using std::copy; using std::istream_iterator; using std::back_inserter; using std::map; using std::ostringstream; using std::atoi; using std::pair; using std::make_pair; int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } void do_single_frame(const string& infilename,const string& outfilename,int iframe, const vector& incfile,int camdir,const ColorMap *cm, int field,Vec3 clook,Vec3 cpos,bool use_cam,bool bonds_only) { map posmap; map radmap; map colormap; vector > bonds; int version=get_version(infilename.c_str()); ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; string dummystring; vector filenames; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); // test for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); std::cerr << iter->c_str() << std::endl; vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 circshift; double rad; double mass; int id; int tag; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force; if(version>1) datafile >> circshift ; posmap[id]=pos; radmap[id]=rad; double c_temp; switch(field){ case 1: c_temp=pos.X(); break; case 2: c_temp=pos.Y(); break; case 3: c_temp=pos.Z(); break; case 4: c_temp=rad; break; case 5: c_temp=double(id); break; case 6: c_temp=double(tag); break; case 7: c_temp=mass; break; case 8: c_temp=initpos.X(); break; case 9: c_temp=initpos.Y(); break; case 10: c_temp=initpos.Z(); break; case 11: c_temp=vel.X(); break; case 12: c_temp=vel.Y(); break; case 13: c_temp=vel.Z(); break; case 14: c_temp=(pos-initpos).norm();; break; default: c_temp=0.0; } colormap[id]=cm->getColor(c_temp); } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ datafile >> type; if(type=="Bonded"){ datafile >> nbond; for(int i=0;i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } datafile.close(); } // calculate camera position Vec3 lookat; Vec3 loc; Vec3 light1_loc,light2_loc; if(use_cam){ lookat=clook; loc=cpos; light1_loc=clook+Vec3(0.0,50.0,0.0); light1_loc=cpos+Vec3(0.0,10.0,0.0); } else { float cdist=0.0; switch(camdir){ case 1: {// camera x loc=lookat+Vec3(xmax+cdist,0.0,0.0); light1_loc=lookat+Vec3(xmax+2*cdist,0.0,cdist); light2_loc=lookat+Vec3(xmax+2*cdist,0.0,-1.0*cdist); } break; case 2: {// camera y loc=lookat+Vec3(0.0,ymax+cdist,0.0); light1_loc=lookat+Vec3(0.0,ymax+2*cdist,cdist); light2_loc=lookat+Vec3(0.0,ymax+2*cdist,-1.0*cdist); } break; default: {// camera z loc=lookat+Vec3(0.0,0.0,zmax+cdist); light1_loc=lookat+Vec3(cdist,0.0,zmax+2*cdist); light2_loc=lookat+Vec3(-1.0*cdist,0.0,zmax+2*cdist); } break; } } // open output file ostringstream povfilename; povfilename << outfilename << iframe << ".pov"; ofstream povfile(povfilename.str().c_str()); // comment povfile << "//generated by dump2pov\n\n"; // write camera, lights povfile << "#include \"colors.inc\" \n"; for(vector::const_iterator iter=incfile.begin(); iter!=incfile.end(); iter++){ povfile << "#include \"" << *iter <<"\" \n"; } povfile << "background { color White } \n"; povfile << "camera { \n location <" << loc.X() << "," << loc.Y() << "," << loc.Z() << "> \n look_at <" << lookat.X() << "," << lookat.Y() << "," << lookat.Z() << "> \n}\n"; povfile << "light_source { <" << light1_loc.X() << "," << light1_loc.Y() << "," << light1_loc.Z() << "> color White}\n"; povfile << "light_source { <" << light2_loc.X() << "," << light2_loc.Y() << "," << light2_loc.Z() << "> color White}\n\n"; // write particles povfile << "union{\n"; for(map::iterator iter=posmap.begin(); iter!=posmap.end(); iter++){ Vec3 pos=iter->second; float rad=radmap[iter->first]; Vec3 color=colormap[iter->first]; povfile << "sphere { <" << pos.X() << " , " << pos.Y() << " , " << pos.Z() << ">, " << rad << " " ; povfile << "pigment { rgb < " << color.X() << " , " << color.Y() << " , " << color.Z() << "> } }\n"; } // write bonds for(vector >::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ // get endpoints Vec3 p1=posmap[iter->first]; Vec3 p2=posmap[iter->second]; // get radii float r1=radmap[iter->first]; float r2=radmap[iter->second]; // sanity check if((p1-p2).norm()<2.0*(r1+r2)){ // cull circular bonds // calc color Vec3 color=0.5*(colormap[iter->first]+colormap[iter->second]); // write povfile << "cone { < " << p1.X() << "," << p1.Y() << "," << p1.Z() << "> " << r1*0.75 << " < " << p2.X() << "," << p2.Y() << "," << p2.Z() << "> " << r2*0.75 << " "; povfile << "pigment { rgb < " << color.X() << " , " << color.Y() << " , " << color.Z() << "> } }\n"; } } povfile << "}\n"; povfile.close(); } void do_single_frame_r(const string& infilename,const string& outfilename,int iframe, const vector& incfile,int camdir,const ColorMap *cm, int field,Vec3 clook,Vec3 cpos,bool use_cam,bool bonds_only,bool no_bonds,map& p_orig) { map posmap; map radmap; map colormap; vector > bonds; int version=get_version(infilename.c_str()); ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; string dummystring; vector filenames; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); // test double ct_min=1000; double ct_max=-1000; for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 angvel; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; posmap[id]=pos; radmap[id]=rad; double c_temp; switch(field){ case 1: c_temp=pos.X(); break; case 2: c_temp=pos.Y(); break; case 3: c_temp=pos.Z(); break; case 4: c_temp=rad; break; case 5: c_temp=double(id); break; case 6: c_temp=double(tag); break; case 7: c_temp=mass; break; case 8: c_temp=initpos.X(); break; case 9: c_temp=initpos.Y(); break; case 10: c_temp=initpos.Z(); break; case 11: c_temp=vel.X(); break; case 12: c_temp=vel.Y(); break; case 13: c_temp=vel.Z(); break; case 14: c_temp=(pos-initpos).norm(); break; case 15: c_temp=(pos-p_orig[id]).norm(); break; case 16: c_temp=p_orig[id].Z(); break; default: c_temp=0.0; } ct_max=c_temp > ct_max ? c_temp : ct_max; ct_min=c_temp < ct_min ? c_temp : ct_min; colormap[id]=cm->getColor(c_temp); } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; posmap[id]=pos; radmap[id]=rad; double c_temp; switch(field){ case 1: c_temp=pos.X(); break; case 2: c_temp=pos.Y(); break; case 3: c_temp=pos.Z(); break; case 4: c_temp=rad; break; case 5: c_temp=double(id); break; case 6: c_temp=double(tag); break; case 7: c_temp=mass; break; case 8: c_temp=initpos.X(); break; case 9: c_temp=initpos.Y(); break; case 10: c_temp=initpos.Z(); break; case 11: c_temp=vel.X(); break; case 12: c_temp=vel.Y(); break; case 13: c_temp=vel.Z(); break; case 14: c_temp=(pos-initpos).norm(); break; case 15: c_temp=(pos-p_orig[id]).norm(); break; case 16: c_temp=p_orig[id].Z(); break; default: c_temp=0.0; } ct_max=c_temp > ct_max ? c_temp : ct_max; ct_min=c_temp < ct_min ? c_temp : ct_min; colormap[id]=cm->getColor(c_temp); } } std::cout << "min/max : " << ct_min << " / " << ct_max << std::endl; // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ datafile >> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; for(int i=0;i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> b1 >> b2 >> dummy; bonds.push_back(make_pair(b1,b2)); } } datafile.close(); } // calculate camera position Vec3 lookat; Vec3 loc; Vec3 light1_loc,light2_loc; if(use_cam){ lookat=clook; loc=cpos; light1_loc=clook+Vec3(0.0,50.0,0.0); light1_loc=cpos+Vec3(0.0,10.0,0.0); } else { float cdist=0.0; switch(camdir){ case 1: {// camera x loc=lookat+Vec3(xmax+cdist,0.0,0.0); light1_loc=lookat+Vec3(xmax+2*cdist,0.0,cdist); light2_loc=lookat+Vec3(xmax+2*cdist,0.0,-1.0*cdist); } break; case 2: {// camera y loc=lookat+Vec3(0.0,ymax+cdist,0.0); light1_loc=lookat+Vec3(0.0,ymax+2*cdist,cdist); light2_loc=lookat+Vec3(0.0,ymax+2*cdist,-1.0*cdist); } break; default: {// camera z loc=lookat+Vec3(0.0,0.0,zmax+cdist); light1_loc=lookat+Vec3(cdist,0.0,zmax+2*cdist); light2_loc=lookat+Vec3(-1.0*cdist,0.0,zmax+2*cdist); } break; } } // open output file ostringstream povfilename; povfilename << outfilename << iframe << ".pov"; ofstream povfile(povfilename.str().c_str()); // comment povfile << "//generated by dump2pov\n\n"; // write camera, lights povfile << "#include \"colors.inc\" \n"; for(vector::const_iterator iter=incfile.begin(); iter!=incfile.end(); iter++){ povfile << "#include \"" << *iter <<"\" \n"; } povfile << "background { color White } \n"; // povfile << "camera { \n location <" << loc.X() << "," << loc.Y() << "," << loc.Z() << "> \n look_at <" << lookat.X() << "," << lookat.Y() << "," << lookat.Z() << "> \n}\n"; // povfile << "light_source { <" << light1_loc.X() << "," << light1_loc.Y() << "," << light1_loc.Z() << "> color White}\n"; // povfile << "light_source { <" << light2_loc.X() << "," << light2_loc.Y() << "," << light2_loc.Z() << "> color White}\n\n"; // write particles povfile << "union{\n"; if(!bonds_only){ for(map::iterator iter=posmap.begin(); iter!=posmap.end(); iter++){ Vec3 pos=iter->second; float rad=radmap[iter->first]; Vec3 color=colormap[iter->first]; povfile << "sphere { <" << pos.X() << " , " << pos.Y() << " , " << pos.Z() << ">, " << rad << " " ; povfile << "pigment { rgb < " << color.X() << " , " << color.Y() << " , " << color.Z() << "> } }\n"; } } // write bonds if(!no_bonds){ for(vector >::iterator iter=bonds.begin(); iter!=bonds.end(); iter++){ // get endpoints Vec3 p1=posmap[iter->first]; Vec3 p2=posmap[iter->second]; // get radii float r1=radmap[iter->first]; float r2=radmap[iter->second]; // sanity check if((p1-p2).norm()<2.0*(r1+r2)){ // cull circular bonds // calc color Vec3 color=0.5*(colormap[iter->first]+colormap[iter->second]); // write povfile << "cone { < " << p1.X() << "," << p1.Y() << "," << p1.Z() << "> " << r1*0.75 << " < " << p2.X() << "," << p2.Y() << "," << p2.Z() << "> " << r2*0.75 << " "; povfile << "pigment { rgb < " << color.X() << " , " << color.Y() << " , " << color.Z() << "> } }\n"; } } } povfile << "}\n"; povfile.close(); } map get_frame_disp_r(const string& infilename) { map posmap; int version=get_version(infilename.c_str()); ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; string dummystring; vector filenames; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2)|| (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 angvel; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; posmap[id]=pos; } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; posmap[id]=pos; } } datafile.close(); } return posmap; } ./Tools/dump2pov/mesh.cpp0000664000175000017500000000455212176660653015161 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "mesh.h" // --- Project includes --- #include "Parallel/MeshReader.h" #include "Model/MeshData.h" using esys::lsm::MeshReader; // --- System includes --- #include #include #include using std::vector; using std::ifstream; using std::ofstream; using std::endl; void do_mesh(const string& infilename,const string& outfilename) { // --- setup reader MeshReader meshReader(infilename); // storage ... vector node_vector; vector tri_vector; // --- read data in // nodes MeshReader::NodeIterator &niter=meshReader.getNodeIterator(); while(niter.hasNext()){ node_vector.push_back(niter.next()); } // triangles MeshReader::TriIterator &titer=meshReader.getTriIterator(); while(titer.hasNext()){ tri_vector.push_back(titer.next()); } // write povray file ofstream outfile(outfilename.c_str()); outfile << "mesh2 {" << endl; outfile << " vertex_vectors {" << endl; outfile << " " << node_vector.size() ; for(vector::iterator iter=node_vector.begin(); iter!=node_vector.end(); iter++){ outfile << ",\n <" << iter->x << "," << iter->y << "," << iter->z << ">"; } outfile << "\n }" << endl; outfile << " face_indices {" << endl; outfile << " " << tri_vector.size(); for(vector::iterator iter=tri_vector.begin(); iter!=tri_vector.end(); iter++){ outfile << ",\n <" << iter->p1 << "," << iter->p2 << "," << iter->p3 << ">"; } outfile << "\n }" << endl; // texture hardwired - replace with CL option outfile << " pigment {rgbf <0.3,0.3,0.3,0.3>}" << endl; outfile << "}" << endl; outfile.close(); } ./Tools/dump2pov/README0000664000175000017500000000220212176660653014367 0ustar vborosvborosdump2pov -i INFILE -t TSTART NT DT -o OUTFILE [-color PARAMS] [-geo PARAMS] [-field NR] [-dir NR] Convert a number of checkpoint files into povray files. -i INFILE : the base name of the checkpoints -t TSTART NT DT : first checkpoint, nr. of frames (0..NT), time steps between frames example: --------- dump2pov -i chk -t 10 2 50 would read chk_t=10_0.txt,chk_t=60_0.txt, chk_t=110_0.txt -o OUTFILE : base name for output files, i.e. if OUFILE is frame, the output fiels are frame0.pov,frame1.pov .... -field NR : the scalar field used for coloring the particles, currently avaliabe: 1: x-position 2: y-position 3: z-position 4: radius 5: id 6: tag 7: mass 8: initial x-position 9: initial y-position 10: initial z-position 11: x-velocity 12: y-velocity 13: z-velocity -color R1,G1,B1,R2,G2,B2,X1,X2 : field values between X1 and X2 are mapped to a color between the rgb-colors (R1,B1,G1) and (R2,G2,B2) -geo X1,X2,N,R : "geologic coloring" initial between X1 and X2 are mapped to N alternating light brown/dark brown layers. R (0-1.0) is the amount of randomness in the layer thickness. -dir 1 : look along x ./Tools/dump2pov/colormap.h0000664000175000017500000000167712176660653015513 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __COLORMAP_H #define __COLORMAP_H #include "vec3.h" class ColorMap { protected: Vec3 c_min,c_max; double x_min,x_max; public: ColorMap(){}; ColorMap(const Vec3&,const Vec3&,double,double); virtual Vec3 getColor(double) const; }; #endif // __COLORMAP_H ./Tools/dump2pov/campos.cpp0000664000175000017500000000372712176660653015512 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "campos.h" // -- IO includes -- #include #include using std::ifstream; using std::make_pair; CameraPos::CameraPos(const string& filename) { ifstream infile(filename.c_str()); int npos; infile >> npos; for(int i=0;i> t; infile >> x >> y >> z; Vec3 pos=Vec3(x,y,z); infile >> x >> y >> z; Vec3 lookat=Vec3(x,y,z); m_posmap.insert(make_pair(t,make_pair(pos,lookat))); } } pair CameraPos::getCamPos(int ts) { Vec3 pos; Vec3 lookat; map >::iterator iter=m_posmap.upper_bound(ts); if(iter==m_posmap.begin()){ pos=(iter->second).first; lookat=(iter->second).second; } else if(iter!=m_posmap.end()) { map >::iterator iter2=iter; iter--; Vec3 pos1=(iter->second).first; Vec3 lookat1=(iter->second).second; Vec3 pos2=(iter2->second).first; Vec3 lookat2=(iter2->second).second; double ts1=double(iter->first); double ts2=double(iter2->first); double frac=(double(ts)-ts1)/(ts2-ts1); pos=pos1+frac*(pos2-pos1); lookat=lookat1+frac*(lookat2-lookat1); } else { iter--; // blow up if map is empty pos=(iter->second).first; lookat=(iter->second).second; } return make_pair(pos,lookat); } ./Tools/dump2pov/geocolormap.h0000664000175000017500000000205512176660653016175 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __GEOCOLORMAP_H #define __GEOCOLORMAP_H #include "colormap.h" // --- STL includes --- #include using std::vector; class GeoColorMap : public ColorMap { private: vector m_bdry; public: GeoColorMap(const Vec3&,const Vec3&,double,double,int,double); virtual ~GeoColorMap() { } virtual Vec3 getColor(double) const; }; #endif // __GEOCOLORMAP_H ./Tools/dump2pov/geocolormap.cpp0000664000175000017500000000347712176660653016541 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "geocolormap.h" //-- system includes -- #include using std::rand; GeoColorMap::GeoColorMap(const Vec3& c0,const Vec3& cm,double x0,double xm,int nlayer,double rd) :ColorMap(c0,cm,x0,xm) { // calc initial layer thickness double sum_l=0.0; for(int i=0;i::iterator iter=m_bdry.begin(); iter!=m_bdry.end(); iter++){ (*iter)=(*iter)*scale; std::cout << "new layer: " << *iter << std::endl; } } Vec3 GeoColorMap::getColor(double x) const { Vec3 res; if(xx_max){ res=c_max; } else { double l=x_min; int count=0; vector::const_iterator iter=m_bdry.begin(); while((iter!=m_bdry.end()) && (lx_max){ res=c_max; } else { res=c_min+(c_max-c_min)*(x-x_min)/(x_max-x_min); } return res; } ./Tools/dump2pov/Makefile.am0000664000175000017500000000244512176660653015554 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = dump2pov AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry dump2pov_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Model/libModel.la \ $(top_builddir)/Parallel/libParallel.la \ $(top_builddir)/tml/message/libTmlMessage.la \ $(top_builddir)/tml/type/libTmlType.la dump2pov_SOURCES = \ colormap.cpp \ colormap3.cpp \ frame.cpp \ mesh.cpp \ geocolormap.cpp\ main.cpp \ campos.cpp \ colormap.h \ colormap3.h \ frame.h \ geocolormap.h \ mesh.h \ campos.h ./Tools/dump2pov/frame.h0000664000175000017500000000231612176660653014760 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRAME_H #define __FRAME_H // -- project includes -- #include "colormap.h" // -- STL includes -- #include #include #include using std::string; using std::vector; using std::map; void do_single_frame(const string&,const string&,int,const vector&,int,const ColorMap*,int,Vec3,Vec3,bool,bool); void do_single_frame_r(const string&,const string&,int,const vector&,int,const ColorMap*,int,Vec3,Vec3,bool,bool,bool,map&); map get_frame_disp_r(const string&); #endif // __FRAME_H ./Tools/dump2pov/mesh.h0000664000175000017500000000146312176660653014624 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH_H #define __MESH_H #include using std::string; void do_mesh(const string&,const string&); #endif // __MESH_H ./Tools/dump2pov/main.cpp0000664000175000017500000001721012176660653015144 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include #include #include #include // --- Project includes --- #include "frame.h" #include "mesh.h" #include "colormap.h" #include "colormap3.h" #include "geocolormap.h" #include "campos.h" #include "../../Foundation/vec3.h" using std::cout; using std::cerr; using std::endl; using std::string; using std::ostringstream; using std::atoi; using std::vector; int main(int argc,char** argv) { vector includefilename; string infilename; string ofilename; string basefilename; int t0_frame=0; int disp0_frame=0; int tstart=0; int nt=0; int dt=0; int camdir=0; bool options_valid=true; Vec3 campos,lookat; bool cam_set=false; bool with_mesh=false; bool with_rot=false; ColorMap* color_map=NULL; int field=-1; string camerafilename; bool with_campos=false; CameraPos* camera_descr=NULL; bool bonds_only=false; bool no_bonds=false; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-t0"){ if(argc>args_read){ t0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-disp0"){ if(argc>args_read){ disp0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-inc"){ if(argc>args_read){ includefilename.push_back(string(argv[args_read+1])); args_read+=2; } else { options_valid=false; } } else if(option=="-campos"){ if(argc>args_read){ camerafilename=string(argv[args_read+1]); with_campos=true; cam_set=true; args_read+=2; } else { options_valid=false; } } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-dir"){ if(argc>args_read){ camdir=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-field"){ if(argc>args_read){ field=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-camera"){ if(argc>args_read+5){ double lookx=atof(argv[args_read+1]); double looky=atof(argv[args_read+2]); double lookz=atof(argv[args_read+3]); double cposx=atof(argv[args_read+4]); double cposy=atof(argv[args_read+5]); double cposz=atof(argv[args_read+6]); cam_set=true; lookat=Vec3(lookx,looky,lookz); campos=Vec3(cposx,cposy,cposz); args_read+=7; } else { options_valid=false; } } else if(option=="-color"){ if(argc>args_read+7){ double r0=atof(argv[args_read+1]); double g0=atof(argv[args_read+2]); double b0=atof(argv[args_read+3]); double r1=atof(argv[args_read+4]); double g1=atof(argv[args_read+5]); double b1=atof(argv[args_read+6]); double x0=atof(argv[args_read+7]); double x1=atof(argv[args_read+8]); color_map=new ColorMap(Vec3(r0,g0,b0),Vec3(r1,g1,b1),x0,x1); args_read+=9; } else { options_valid=false; } } else if(option=="-color3"){ if(argc>args_read+11){ double r0=atof(argv[args_read+1]); double g0=atof(argv[args_read+2]); double b0=atof(argv[args_read+3]); double r1=atof(argv[args_read+4]); double g1=atof(argv[args_read+5]); double b1=atof(argv[args_read+6]); double r2=atof(argv[args_read+7]); double g2=atof(argv[args_read+8]); double b2=atof(argv[args_read+9]); double x0=atof(argv[args_read+10]); double x1=atof(argv[args_read+11]); double x2=atof(argv[args_read+12]); color_map=new ColorMap3(Vec3(r0,g0,b0),Vec3(r1,g1,b1),Vec3(r2,g2,b2),x0,x1,x2); args_read+=13; } else { options_valid=false; } } else if(option=="-geo"){ if(argc>args_read+3){ double x0=atof(argv[args_read+1]); double x1=atof(argv[args_read+2]); int nl=atoi(argv[args_read+3]); double rd=atof(argv[args_read+4]); color_map=new GeoColorMap(Vec3(0.64,0.48,0.395),Vec3(0.40,0.34,0.265),x0,x1,nl,rd); field=9; args_read+=5; } else { options_valid=false; } } else if(option=="-mesh") { with_mesh=true; args_read++; } else if(option=="-rot") { with_rot=true; args_read++; } else if(option=="-bonds") { bonds_only=true; args_read++; } else if(option=="-nobonds") { no_bonds=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ map oldposmap; // read camera description file if(with_campos){ camera_descr=new CameraPos(camerafilename); } if(with_rot){ ostringstream filename; filename << basefilename << "_t=" << disp0_frame << "_0.txt"; oldposmap=get_frame_disp_r(filename.str()); } for(int i=0;i change if mesh is distributed ostringstream mesh_infilename; mesh_infilename << basefilename << "_t=" << tstart+i*dt << "_1.txt"; ostringstream mesh_outfilename; mesh_outfilename << "mesh_include_t=" << i+t0_frame << "_1.inc"; // write mesh include do_mesh(mesh_infilename.str(),mesh_outfilename.str()); // add mesh to include files includefilename.push_back(mesh_outfilename.str()); } // setup camera position if(with_campos){ pair cp=camera_descr->getCamPos(tstart+i*dt); campos=cp.first; lookat=cp.second; } // write frame if(with_rot){ do_single_frame_r(filename.str(),ofilename,i+t0_frame,includefilename,camdir,color_map,field,lookat,campos,cam_set,bonds_only,no_bonds,oldposmap); } else { do_single_frame(filename.str(),ofilename,i+t0_frame,includefilename,camdir,color_map,field,lookat,campos,cam_set,bonds_only); } } } if(color_map!=NULL) delete color_map; if(camera_descr!=NULL) delete camera_descr; return 0; } ./Tools/dump2pov/colormap3.cpp0000664000175000017500000000221312176660653016114 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "colormap3.h" ColorMap3::ColorMap3(const Vec3& c0,const Vec3& c1,const Vec3& c2,double x0 ,double x1 ,double x2) { m_c0=c0; m_c1=c1; m_c2=c2; m_x0=x0; m_x1=x1; m_x2=x2; } Vec3 ColorMap3::getColor(double x) const { Vec3 res; if(xm_x2){ res=m_c2; } else { if(x #include namespace esys { namespace lsm { class ParticleData { public: ParticleData() : m_pos(), m_rad() { } ParticleData(const Vec3 &pos, double rad) : m_pos(pos), m_rad(rad) { } bool operator==(const ParticleData &pd) const { return ((getPos() == pd.getPos()) && (getRad() == pd.getRad())); } const Vec3 &getPos() const { return m_pos; } const double &getRad() const { return m_rad; } static bool is3d() { return s_is3d; } static bool is2d() { return !s_is3d; } static bool is3d(bool is3d) { s_is3d = is3d; return s_is3d; } static const double FOUR_THIRDS_PI; double getVolume() const { return ( is3d() ? FOUR_THIRDS_PI*getRad()*getRad()*getRad() : M_PI*getRad()*getRad() ); } void read(std::istream &iStream) { iStream >> m_pos >> m_rad; } void write(std::ostream &oStream) const { oStream << m_pos << " " << m_rad; } private: Vec3 m_pos; double m_rad; static bool s_is3d; }; } } namespace std { inline std::istream &operator>>(std::istream &iStream, esys::lsm::ParticleData &pd) { pd.read(iStream); return iStream; } inline std::ostream &operator<<(std::ostream &oStream, const esys::lsm::ParticleData &pd) { pd.write(oStream); return oStream; } } namespace esys { namespace lsm { class Contact { public: Contact() { } Contact( const ParticleData &pd1, const ParticleData &pd2, const Vec3 &forcePos, const Vec3 &force ) : m_pd1(pd1), m_pd2(pd2), m_forcePos(forcePos), m_force(force) { } Contact(const Contact &data) : m_pd1(data.getParticle1()), m_pd2(data.getParticle2()), m_forcePos(data.getForcePos()), m_force(data.getForce()) { } const ParticleData &getParticle1() const { return m_pd1; } const ParticleData &getParticle2() const { return m_pd2; } const Vec3 &getCentrePos1() const { return getParticle1().getPos(); } double getVolume1() const { return getParticle1().getVolume(); } const Vec3 &getCentrePos2() const { return getParticle2().getPos(); } double getVolume2() const { return getParticle2().getVolume(); } const Vec3 &getForcePos() const { return m_forcePos; } const Vec3 &getForce() const { return m_force; } bool operator==(const Contact &data) const { return ( (m_pd1 == data.m_pd1) && (m_pd2 == data.m_pd2) && (m_forcePos == data.m_forcePos) && (m_force == data.m_force) ); } void write(std::ostream &oStream) const { oStream << m_pd1 << " " << m_pd2 << " " << m_forcePos << " " << m_force; } void read(std::istream &iStream) { iStream >> m_pd1 >> m_pd2 >> m_forcePos >> m_force; } private: ParticleData m_pd1; ParticleData m_pd2; Vec3 m_forcePos; Vec3 m_force; }; } } inline std::istream &operator>>(std::istream &iStream, esys::lsm::Contact &contact) { contact.read(iStream); return iStream; } inline std::ostream &operator<<(std::ostream &oStream, const esys::lsm::Contact &contact) { contact.write(oStream); return oStream; } #endif ./Tools/StressCalculator/VtkPiece.cpp0000664000175000017500000000133112176660653017450 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/VtkPiece.h" ./Tools/StressCalculator/EigenvalueCalculator.cpp0000664000175000017500000000161412176660653022040 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/EigenvalueCalculator.h" namespace esys { namespace lsm { const double EigenvalueCalculator::ONE_THIRD = 1.0/3.0; const double EigenvalueCalculator::SQRT_THREE = sqrt(3.0); } } ./Tools/StressCalculator/InteractionToStressConverter.cpp0000664000175000017500000004223612176660653023625 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/InteractionToStressConverter.h" #include "Tools/StressCalculator/VtkStructuredGrid.h" #include "Tools/StressCalculator/GaussianGridder.h" #include "Tools/StressCalculator/Raw2InteractionReader.h" #include "Tools/StressCalculator/ContactCollection.h" #include "Tools/StressCalculator/EigenvalueCalculator.h" #include "Geometry/SphereBoxVolCalculator.h" #include "Geometry/CircleBoxVolCalculator.h" namespace esys { namespace lsm { template std::string getDetailsString(const TmplSphere &sphere, const TmplBox &box) { std::stringstream msg; msg << "box = (" << box.getMinPt() << ", " << box.getMaxPt() << ")" << ", sphere = (" << sphere.getCentre() << ", " << sphere.getRadius() << ")"; return msg.str(); } template void checkIntersectionVolume(double vol, const TmplSphere &sphere, const TmplBox &box) { if (isnan(vol)) { std::stringstream msg; msg << "nan encountered during volume calculation: " << getDetailsString(sphere, box); throw std::runtime_error(msg.str()); } else if ((vol < 0.0) && (fabs(vol) > 1.0e-6)) { std::stringstream msg; msg << "Negative intersection volume " << vol << ". " << getDetailsString(sphere, box); throw std::runtime_error(msg.str()); } else if (vol > (box.getVolume() + (box.getVolume()*1.0e-6))) { std::stringstream msg; msg << "Volume " << vol << " larger than box volume " << box.getVolume() << ". " << getDetailsString(sphere, box); throw std::runtime_error(msg.str()); } else if (vol > (sphere.getVolume() + (sphere.getVolume()*1.0e-6))) { std::stringstream msg; msg << "Volume " << vol << " larger than sphere volume " << sphere.getVolume() << ". " << getDetailsString(sphere, box); throw std::runtime_error(msg.str()); } } class ThreeDIntersectionCalker : public SphereBoxVolCalculator { public: ThreeDIntersectionCalker(const BoundingBox &box) : SphereBoxVolCalculator(Box(box.getMinPt(), box.getMaxPt())) { } double getVolume(const Sphere &sphere) { const double vol = SphereBoxVolCalculator::getVolume(sphere); checkIntersectionVolume(vol, sphere, getBox()); return vol; } }; class TwoDIntersectionCalker : public CircleBoxVolCalculator { public: TwoDIntersectionCalker(const BoundingBox &box) : CircleBoxVolCalculator(Box(box.getMinPt(), box.getMaxPt())) { } double getVolume(const Sphere &sphere) { const double vol = CircleBoxVolCalculator::getVolume(sphere); checkIntersectionVolume(vol, sphere, getBox()); return vol; } }; class PointDataType : public vtk::DataTypeTuple< vtk::Float64Type, vtk::Float64Type, vtk::Matrix3Type, vtk::Float64Type > { public: typedef vtk::DataTypeTuple< vtk::Float64Type, vtk::Float64Type, vtk::Matrix3Type, vtk::Float64Type > Inherited; PointDataType() : Inherited( vtk::Float64Type("|sMax-sMin|"), vtk::Float64Type("Real(sMax-sMin)"), vtk::Matrix3Type("stressTensor"), vtk::Float64Type("radius") ) { } }; class PointDataTypeForGrid : public vtk::DataTypeTuple< vtk::Float64Type, vtk::Float64Type, vtk::Matrix3Type > { public: typedef vtk::DataTypeTuple< vtk::Float64Type, vtk::Float64Type, vtk::Matrix3Type > Inherited; PointDataTypeForGrid() : Inherited( vtk::Float64Type("|sMax-sMin|"), vtk::Float64Type("Real(sMax-sMin)"), vtk::Matrix3Type("stressTensor") ) { } }; typedef vtk::Vec3Type PointType; typedef vtk::UnstructuredPiece Piece; typedef vtk::UnstructuredPiece PieceForGrid; typedef EigenvalueCalculator::ComplexRealImagComparer RealImagComparer; typedef EigenvalueCalculator::ComplexAbsRealImagComparer AbsRealImagComparer; typedef EigenvalueCalculator::ComplexNormComparer NormComparer; InteractionToStressConverter::InteractionToStressConverter(const BoundingBox &bBox, double gridSpacing) : m_gridSpacing(gridSpacing), m_bBox(bBox), m_stressCalculator(), m_stressTensorCollection(m_stressCalculator), m_regTensorGrid(bBox, gridSpacing), m_regDevStressGrid(bBox, gridSpacing), m_irrStressTensorGrid(bBox, gridSpacing) { } double InteractionToStressConverter::getRealDevStress(const Tensor &stressTensor) const { StressTensor::ComplexVector eigenvals = stressTensor.getEigenvalues(); double devStress = 0.0; if (is3d()) { std::sort(eigenvals.begin(), eigenvals.end(), RealImagComparer()); devStress = (eigenvals[2].real() - eigenvals[0].real()); } else { // // In 2d, make sure we only ever subtract \sigma_1 and \sigma_2, // so we sort by absolute value. This ensures that the zero-eigenvalue // (corresponding to the z-dimension) will be sorted into the // eigenvals[0] element. // std::sort(eigenvals.begin(), eigenvals.end(), AbsRealImagComparer()); devStress = fabs(eigenvals[2].real() - eigenvals[1].real()); } return devStress; } double InteractionToStressConverter::getNormDevStress(const Tensor &stressTensor) const { StressTensor::ComplexVector eigenvals = stressTensor.getEigenvalues(); std::sort(eigenvals.begin(), eigenvals.end(), NormComparer()); return ( is3d() ? std::norm(eigenvals[2] - eigenvals[0]) : std::norm(eigenvals[2] - eigenvals[1]) ); } bool InteractionToStressConverter::is3d() const { return ParticleData::is3d(); } void InteractionToStressConverter::addRaw2Interactions(std::istream &iStream) { Raw2InteractionReader reader(iStream); ContactCollection contacts; contacts.addInteractions(reader); m_stressTensorCollection.addContactIterators(contacts.getContactIteratorIterator()); } void InteractionToStressConverter::writeVtkUnstructuredXml(std::ostream &oStream) { StressTensCollection::StressTensorIterator it = m_stressTensorCollection.getIterator(); Piece piece(PointType("points"), PointDataType()); while (it.hasNext()) { StressTensCollection::StressTensorIterator::reference stressTensor = it.next(); const double realDevStress = getRealDevStress(stressTensor); const double normDevStress = getNormDevStress(stressTensor); piece.setPoint( stressTensor.getPos(), PointDataType::DataValueTuple( normDevStress, realDevStress, stressTensor.getTensor(), stressTensor.getRad() ) ); } // Write the xml document header oStream << "" << std::endl; vtk::UnstructuredGrid grid; grid.addPiece(piece); grid.writeXml(oStream); } void InteractionToStressConverter::writeVtkUnstructuredXmlGridInformation(std::ostream &oStream) { TensorGrid ®ularGrid = getTensorRegularGrid(); TensorGrid::CellIterator cellIt = regularGrid.getCellIterator(); PieceForGrid piece(PointType("points"), PointDataTypeForGrid()); while (cellIt.hasNext()) { TensorGrid::Cell::Iterator posValIt = cellIt.next().getIterator(); while (posValIt.hasNext()) { const TensorGrid::Cell::PosValuePair &pair = posValIt.next(); const double realDevStress = getRealDevStress(pair.getValue()); const double normDevStress = getNormDevStress(pair.getValue()); piece.setPoint( pair.getPos(), PointDataTypeForGrid::DataValueTuple( normDevStress, realDevStress, pair.getValue().getTensor() ) ); } } // Write the xml document header oStream << "" << std::endl; vtk::UnstructuredGrid grid; grid.addPiece(piece); grid.writeXml(oStream); } void InteractionToStressConverter::writeUnstructuredDx(std::ostream &oStream) { oStream << "points = " << m_stressTensorCollection.size() << std::endl; oStream << "format = ascii" << std::endl; oStream << "dependency = positions, positions" << std::endl; oStream << "interleaving = field" << std::endl; oStream << "field = locations, principleStressDiff" << std::endl; oStream << "structure = 3-vector, scalar" << std::endl; oStream << "type = float, float" << std::endl; oStream << "header = marker \"Start\\n\"" << std::endl << std::endl; oStream << "end" << std::endl; oStream << "Start" << std::endl; StressTensCollection::StressTensorIterator it = m_stressTensorCollection.getIterator(); while (it.hasNext()) { StressTensCollection::StressTensorIterator::reference stressTensor = it.next(); const double val = getRealDevStress(stressTensor); oStream << stressTensor.getPos() << " " << val << "\n"; } } void InteractionToStressConverter::writeFlatUnstructured(std::ostream &oStream) { StressTensCollection::StressTensorIterator it = m_stressTensorCollection.getIterator(); while (it.hasNext()) { StressTensCollection::StressTensorIterator::reference stressTensor = it.next(); const double val = getRealDevStress(stressTensor); oStream << stressTensor.getPos() << " " << stressTensor.getRad() << " " << val << "\n"; } } class StrctPointDataType : public vtk::DataTypeTuple< vtk::Float64Type > { public: typedef vtk::DataTypeTuple< vtk::Float64Type > Inherited; StrctPointDataType() : Inherited( vtk::Float64Type("sMax-sMin") ) { } }; typedef vtk::Vec3Type StrctPointType; typedef vtk::StructuredPiece StrctPiece; StressTensorPtrGrid &InteractionToStressConverter::getTensorIrregularGrid() { if (m_irrStressTensorGrid.size() <= 0) { calcTensorIrregularGrid(); } return m_irrStressTensorGrid; } double InteractionToStressConverter::getMaxRadius() { StressTensorPtrGrid::ValueIterator it = getTensorIrregularGrid().getValueIterator(); double maxRadius = -1.0; while (it.hasNext()) { StressTensorPtrGrid::const_reference stressTensor = it.next(); if (stressTensor->getRad() > maxRadius) { maxRadius = stressTensor->getRad(); } } return maxRadius; } void InteractionToStressConverter::calcTensorIrregularGrid() { m_irrStressTensorGrid = StressTensorPtrGrid(m_bBox, m_gridSpacing); StressTensCollection::StressTensorIterator it = m_stressTensorCollection.getIterator(); while (it.hasNext()) { StressTensCollection::StressTensorIterator::reference stressTensor = it.next(); m_irrStressTensorGrid.insert(stressTensor.getPos(), &stressTensor); } } TensorGrid &InteractionToStressConverter::getTensorRegularGrid() { if (m_regTensorGrid.size() <= 0) { calcTensorRegularGrid(); } return m_regTensorGrid; } template Matrix3 getBoxTensor( TmplCellIterator cellIt, TmplIntsectVolCalker intersectCalker ) { Matrix3 tensor; while (cellIt.hasNext()) { typename TmplCellIterator::value_type::Iterator pairIt = cellIt.next().getIterator(); while (pairIt.hasNext()) { const StressTensor *stressTensor = pairIt.next().getValue(); const typename TmplIntsectVolCalker::Sphere sphere(stressTensor->getPos(), stressTensor->getRad()); const double intersectVol = intersectCalker.getVolume(sphere); // std::cout << "sphere: " << sphere.getCentre() << ", " << sphere.getRadius() << ", vol: " << intersectVol << std::endl; tensor += ((stressTensor->getTensor())*intersectVol); } } // // Return the average stress over the cell. // return tensor*(1.0/intersectCalker.getBox().getVolume()); } void InteractionToStressConverter::calcTensorRegularGrid() { StressTensorPtrGrid &irregularGrid = getTensorIrregularGrid(); m_regTensorGrid = TensorGrid(m_bBox, m_gridSpacing); const double maxRadius = (getMaxRadius() + m_gridSpacing); TensorGrid::CellIterator regCellIt = m_regTensorGrid.getCellIterator(); while (regCellIt.hasNext()) { TensorGrid::Cell ®Cell = regCellIt.next(); StressTensorPtrGrid::CellIterator irrCellIt = irregularGrid.getCellIterator(regCell.getPos(), maxRadius); if (is3d()) { m_regTensorGrid.insert( regCell.getPos(), Tensor( regCell.getPos(), getBoxTensor( irrCellIt, ThreeDIntersectionCalker(regCell.getBox()) ) ) ); } else { m_regTensorGrid.insert( regCell.getPos(), Tensor( regCell.getPos(), getBoxTensor( irrCellIt, TwoDIntersectionCalker(regCell.getBox()) ) ) ); } } } DoubleGrid &InteractionToStressConverter::getDevRegularGrid() { if (m_regDevStressGrid.size() <= 0) { calcDevRegularGrid(); } return m_regDevStressGrid; } void InteractionToStressConverter::calcDevRegularGrid() { const TensorGrid ®ularTensorGrid = getTensorRegularGrid(); m_regDevStressGrid = DoubleGrid(m_bBox, m_gridSpacing); TensorGrid::CellConstIterator cellIt = regularTensorGrid.getCellIterator(); while (cellIt.hasNext()) { TensorGrid::Cell::ConstIterator pairIt = cellIt.next().getIterator(); while (pairIt.hasNext()) { const Tensor &tensor = pairIt.next().getValue(); m_regDevStressGrid.insert( tensor.getPos(), getRealDevStress(tensor) ); } } } void InteractionToStressConverter::writeVtkStructuredXml(std::ostream &oStream) { TensorGrid ®ularGrid = getTensorRegularGrid(); StrctPiece piece(StrctPointType("points"), StrctPointDataType()); piece.setExtent(regularGrid.getMinVecIndex(), regularGrid.getMaxVecIndex()); TensorGrid::CellIterator cellIt = regularGrid.getCellIterator(); while (cellIt.hasNext()) { TensorGrid::Cell::Iterator posValIt = cellIt.next().getIterator(); while (posValIt.hasNext()) { const TensorGrid::Cell::PosValuePair &pair = posValIt.next(); piece.setPoint( pair.getPos(), StrctPiece::PointData( getRealDevStress(pair.getValue()) //pair.getValue().getTensor() ) ); } } // Write the xml document header oStream << "" << std::endl; vtk::StructuredGrid grid; grid.setExtent(piece.getMinExtent(), piece.getMaxExtent()); grid.addPiece(piece); grid.writeXml(oStream); } void InteractionToStressConverter::writeFlatStructured(std::ostream &oStream) { DoubleGrid regular = getDevRegularGrid(); DoubleGrid::CellIterator cellIt = regular.getCellIterator(); while (cellIt.hasNext()) { DoubleGrid::Cell::Iterator posValIt = cellIt.next().getIterator(); while (posValIt.hasNext()) { const DoubleGrid::Cell::PosValuePair &pair = posValIt.next(); oStream << pair.getPos() << " " << pair.getValue() << "\n"; } } } } } ./Tools/StressCalculator/VtkUnstructuredGrid.h0000664000175000017500000000627412176660653021420 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKUNSTRUCTUREDGRID_H #define ESYS_LSM_VTKUNSTRUCTUREDGRID_H #include #include #include #include #include "Tools/StressCalculator/VtkDataType.h" #include "Tools/StressCalculator/VtkDataArray.h" #include "Tools/StressCalculator/VtkDataTypeTuple.h" #include "Tools/StressCalculator/VtkPiece.h" namespace esys { namespace lsm { namespace vtk { template class UnstructuredPiece : public Piece { public: typedef Piece Inherited; typedef typename Inherited::PointType PointType; typedef typename Inherited::PointValue PointValue; typedef typename Inherited::PointDataTypeTuple PointDataTypeTuple; typedef typename Inherited::PointData PointData; UnstructuredPiece(const PointType &pointType, const PointDataTypeTuple &pointDataType) : Inherited(pointType, pointDataType) { } virtual void writeXml(std::ostream &oStream) { oStream << "" << std::endl; this->writePointsXml(oStream); this->writePointDataXml(oStream); this->writeCellsXml(oStream); this->writeCellDataXml(oStream); oStream << ""; } private: }; class UnstructuredGrid { private: typedef std::vector PiecePtrVector; public: UnstructuredGrid() : m_pieceVector() { } virtual ~UnstructuredGrid() { } void addPiece(XmlPiece &piece) { m_pieceVector.push_back(&piece); } virtual void writeXml(std::ostream &oStream) { oStream << "\n" << "" << std::endl; for ( PiecePtrVector::const_iterator it = m_pieceVector.begin(); it != m_pieceVector.end(); it++ ) { (*it)->writeXml(oStream); oStream << "\n"; } oStream << "\n"; oStream << ""; } private: PiecePtrVector m_pieceVector; }; } } } #endif ./Tools/StressCalculator/ContactCollection.h0000664000175000017500000000750312176660653021021 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCONTACTCOLLECTION_H #define ESYS_LSMCONTACTCOLLECTION_H #include "Foundation/vec3.h" #include "Foundation/StlIterator.h" #include "Tools/StressCalculator/Contact.h" #include "Tools/StressCalculator/Vec3Comparer.h" #include #include namespace esys { namespace lsm { class ContactCollection { public: typedef esys::lsm::Contact Contact; typedef esys::lsm::Vec3XyzComparer Vec3Comparer; typedef std::vector ContactVector; typedef ForwardIterator ContactIterator; typedef std::map ContactMap; class ContactIteratorIterator { public: typedef ForwardIterator ContactMapIterator; ContactIteratorIterator(ContactMap &map) : m_contactMapIterator(map) { } bool hasNext() const { return m_contactMapIterator.hasNext(); } ContactIterator next() { return ContactIterator(m_contactMapIterator.next().second); } ContactIterator current() const { return ContactIterator(m_contactMapIterator.current().second); } private: ContactMapIterator m_contactMapIterator; }; ContactCollection() : m_contactMap() { } void addContact(const Contact &contact) { ContactMap::iterator it = m_contactMap.find(contact.getCentrePos1()); if (it == m_contactMap.end()) { it = (m_contactMap.insert(ContactMap::value_type(contact.getCentrePos1(), ContactVector()))).first; } it->second.push_back(contact); } void addContactWithReverse(const Contact &contact) { addContact(contact); addContact( Contact( contact.getParticle2(), contact.getParticle1(), contact.getForcePos(), contact.getForce()*-1.0 ) ); } template void addInteraction(const TmplInteractionData &interactionData) { if (interactionData.getForce() != Vec3::ZERO) { addContactWithReverse( Contact( interactionData.getParticle1(), interactionData.getParticle2(), interactionData.getForcePos(), interactionData.getForce() ) ); } } template void addInteractions(TmplIterator &iterator) { while (iterator.hasNext()) { addInteraction(iterator.next()); } } ContactVector getContactVector(const Vec3 ¢rePt) const { ContactMap::const_iterator it = m_contactMap.find(centrePt); if (it != m_contactMap.end()) { return it->second; } return ContactVector(); } ContactIteratorIterator getContactIteratorIterator() { return ContactIteratorIterator(m_contactMap); } private: ContactMap m_contactMap; }; } } #endif ./Tools/StressCalculator/StressTensor.h0000664000175000017500000000456412176660653020074 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSTRESSTENSOR_H #define ESYS_LSMSTRESSTENSOR_H #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Tools/StressCalculator/EigenvalueCalculator.h" #include "Tools/StressCalculator/Contact.h" #include #include namespace esys { namespace lsm { class Tensor { public: typedef EigenvalueCalculator::Complex Complex; typedef EigenvalueCalculator::ComplexVector ComplexVector; Tensor() : m_pos(), m_tensor() { } Tensor(const Vec3 &pos, const Matrix3 &tensor) : m_pos(pos), m_tensor(tensor) { } virtual ~Tensor() { } const Vec3 &getPos() const { return m_pos; } const Matrix3 &getTensor() const { return m_tensor; } ComplexVector getEigenvalues() const { return EigenvalueCalculator().getEigenvalues(getTensor()); } private: Vec3 m_pos; Matrix3 m_tensor; }; class StressTensor : public Tensor { public: typedef EigenvalueCalculator::Complex Complex; typedef EigenvalueCalculator::ComplexVector ComplexVector; StressTensor(const Vec3 &pos, const Matrix3 &tensor, double radius) : Tensor(pos, tensor), m_radius(radius) { } StressTensor(const ParticleData &particleData, const Matrix3 &tensor) : Tensor(particleData.getPos(), tensor), m_radius(particleData.getRad()) { } virtual ~StressTensor() { } double getRad() const { return m_radius; } private: double m_radius; }; } } #endif ./Tools/StressCalculator/StressTensorCollection.cpp0000664000175000017500000000134712176660653022437 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/StressTensorCollection.h" ./Tools/StressCalculator/InteractionToStressConverter.h0000664000175000017500000001272112176660653023266 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMINTERACTIONTOSTRESSCONVERTOR_H #define ESYS_LSMINTERACTIONTOSTRESSCONVERTOR_H #include "Tools/StressCalculator/StressTensorCalculator.h" #include "Tools/StressCalculator/StressTensorCollection.h" #include "Tools/StressCalculator/VtkUnstructuredGrid.h" #include "Tools/StressCalculator/CartesianGrid.h" #include "Tools/StressCalculator/Vec3Comparer.h" #include "Foundation/BoundingBox.h" #include #include namespace std { template <> struct less { bool operator()(const Vec3 &v1, const Vec3 &v2) const { return esys::lsm::Vec3XyzComparer()(v1, v2); } }; } namespace esys { namespace lsm { typedef CartesianGrid DoubleGrid; typedef CartesianGrid StressTensorPtrGrid; typedef CartesianGrid TensorGrid; class InteractionToStressConverter { public: typedef StressTensorCollection StressTensCollection; typedef StressTensCollection::StressCalculator StressTensorCalculator; InteractionToStressConverter(const BoundingBox &box, double gridSpacing); /** * Reads RAW2 interaction data from the specified stream and converts * it to stress tensor values (unstructured grid of tensors). */ void addRaw2Interactions(std::istream &iStream); /** * Writes VTK UnstructuredGrid XML format file of tensor point-data * and eigenvalue point-data. */ void writeVtkUnstructuredXml(std::ostream &oStream); void writeVtkUnstructuredXmlGridInformation(std::ostream &oStream); /** * Writes VTK StructuredGrid XML format file of * eigenvalue point-data to the specified output-stream. * The irregular point data * is converted to a regular grid using the * bounding-box and grid-spacing values of this object. * * @param oStream vtx xml written to this stream. * * @see getDevRegularGrid */ void writeVtkStructuredXml(std::ostream &oStream); StressTensorPtrGrid &getTensorIrregularGrid(); void calcTensorIrregularGrid(); /** * Converts irregular grid of average particle stress tensors (\sigma_{ij}) * to a regular grid. * * @param bBox - regular grid is restricted to this bounding box * (all irregular point data are considered even if * they are outside this bounding box. * @param gridSpacing - distance between regular grid points * (x, y and z dimensions). */ TensorGrid &getTensorRegularGrid(); void calcTensorRegularGrid(); /** * Converts irregular grid of average particle stress tensor data * a regular grid using the volume of intersection between a sphere * and the box formed by a grid-cell. * * @param bBox - regular grid is restricted to this bounding box * (all irregular point data are considered even if * they are outside this bounding box. But the regular * grid cells are contained in the box. * @param gridSpacing - distance between regular grid points * (x, y and z dimensions). */ DoubleGrid &getDevRegularGrid(); void calcDevRegularGrid(); /** * Writes "x y z \sigma_{max}-\sigma_{min})" records * to the specifed file. * The irregular point data is converted to a regular * grid specified by bBox and gridSpacing parameters. * * @see getRegularGrid */ void writeFlatStructured(std::ostream &oStream); /** * Writes "x y z r \sigma_{max}-\sigma_{min})" records * to the specifed file. * An (x,y,z) value is the centre point of the spherical * particle of radius r. * * @see getRegularGrid */ void writeFlatUnstructured ( std::ostream &oStream ); /** * Writes open-dx format file of unstructured point data * (\sigma_{max}-\sigma_{min}) to the specified stream. * * @param oStream Data is written to this stream. */ void writeUnstructuredDx(std::ostream &oStream); double getMaxRadius(); protected: double getRealDevStress(const Tensor &stressTensor) const; double getNormDevStress(const Tensor &stressTensor) const; bool is3d() const; private: double m_gridSpacing; BoundingBox m_bBox; StressTensorCalculator m_stressCalculator; StressTensCollection m_stressTensorCollection; TensorGrid m_regTensorGrid; DoubleGrid m_regDevStressGrid; StressTensorPtrGrid m_irrStressTensorGrid; }; } } #endif ./Tools/StressCalculator/VtkPiece.h0000664000175000017500000001007112176660653017116 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKPIECE_H #define ESYS_LSM_VTKPIECE_H #include #include #include #include #include "Tools/StressCalculator/VtkDataType.h" #include "Tools/StressCalculator/VtkDataArray.h" #include "Tools/StressCalculator/VtkDataTypeTuple.h" namespace esys { namespace lsm { namespace vtk { class XmlPiece { public: virtual void writeXml(std::ostream &oStream) = 0; }; template class Piece : public XmlPiece { public: typedef TmplPointType PointType; typedef typename PointType::value_type PointValue; typedef TmplPointDataTypeTuple PointDataTypeTuple; typedef typename PointDataTypeTuple::DataValueTuple PointData; Piece(const PointType &pointType, const PointDataTypeTuple &pointDataType) : m_pointData(pointDataType), m_pointValueArray(pointType), m_pointIndexMap() { } virtual ~Piece() { } int getIndex(const PointValue &point) const { typename PointIndexMap::const_iterator it = m_pointIndexMap.find(point); return ((it != m_pointIndexMap.end()) ? it->second : -1); } void setPoint(const PointValue &point, const PointData &data) { int index = getIndex(point); if (index < 0) { index = m_pointValueArray.size(); m_pointIndexMap.insert( typename PointIndexMap::value_type(point, index) ); m_pointValueArray.setData(index, point); } m_pointData.setData(index, data); } int getNumPoints() const { return m_pointValueArray.size(); } int getNumCells() const { return 0; } virtual void writeXml(std::ostream &oStream) = 0; virtual void writePointsXml(std::ostream &oStream) { oStream << "" << "\n"; m_pointValueArray.writeXml(oStream); oStream << "\n" << "\n"; } virtual void writePointDataXml(std::ostream &oStream) { oStream << "" << "\n"; m_pointData.writeXml(oStream); oStream << "\n" << "\n"; } virtual void writeCellsXml(std::ostream &oStream) { oStream << "" << "\n"; DataArray connectivity(Int32Type("connectivity")); connectivity.writeXml(oStream); oStream << "\n"; DataArray offsets(Int32Type("offsets")); offsets.writeXml(oStream); oStream << "\n"; DataArray types(UInt8Type("types")); types.writeXml(oStream); oStream << "\n" << "\n"; } virtual void writeCellDataXml(std::ostream &oStream) { oStream << "" << "\n"; oStream << "" << "\n"; } private: typedef DataArray PointValueArray; typedef std::map PointIndexMap; PointDataTypeTuple m_pointData; PointValueArray m_pointValueArray; PointIndexMap m_pointIndexMap; }; } } } #endif ./Tools/StressCalculator/VtkDataType.h0000664000175000017500000001217512176660653017613 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKDATATYPE_H #define ESYS_LSM_VTKDATATYPE_H #include #include #include #include #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" namespace esys { namespace lsm { namespace vtk { typedef std::string ValueTypeName; typedef std::string FormatTypeName; static const ValueTypeName UInt8 = "UInt8"; static const ValueTypeName Int16 = "Int16"; static const ValueTypeName UInt16 = "UInt16"; static const ValueTypeName Int32 = "Int32"; static const ValueTypeName UInt32 = "UInt32"; static const ValueTypeName Int64 = "Int64"; static const ValueTypeName UInt64 = "UInt64"; static const ValueTypeName Float32 = "Float32"; static const ValueTypeName Float64 = "Float64"; static const FormatTypeName ascii = "ascii"; static const FormatTypeName binary = "binary"; static const FormatTypeName appended = "appended"; template std::string quote(const TmplType &thing) { std::stringstream sStream; sStream << "\"" << thing << "\""; return sStream.str(); } template class DataType { public: typedef TmplValueType value_type; DataType( const ValueTypeName &valueTypeName, const std::string &dataName, unsigned int numComponents, const FormatTypeName &format = ascii, unsigned int offset = 0 ) : m_valueTypeName(valueTypeName), m_dataName(dataName), m_numComponents(numComponents), m_format(format), m_offset(offset) { } std::string getXmlAttributeString() const { std::stringstream sStream; sStream << "type=" << quote(m_valueTypeName) << " " << "Name=" << quote(m_dataName) << " " << "NumberOfComponents=" << quote(m_numComponents) << " " << "format=" << quote(m_format); if (m_format == appended) { sStream << " offset=" << quote(m_offset); } return sStream.str(); } private: ValueTypeName m_valueTypeName; std::string m_dataName; unsigned int m_numComponents; FormatTypeName m_format; unsigned int m_offset; }; class Float64Type : public DataType { public: typedef DataType Inherited; Float64Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(Float64, name, 1, format, offset) { } }; class Float32Type : public DataType { public: typedef DataType Inherited; Float32Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(Float32, name, 1, format, offset) { } }; class UInt8Type : public DataType { public: typedef DataType Inherited; UInt8Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(UInt8, name, 1, format, offset) { } }; class Int32Type : public DataType { public: typedef DataType Inherited; Int32Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(Int32, name, 1, format, offset) { } }; class Vec3Type : public DataType { public: typedef DataType Inherited; Vec3Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(Float64, name, 3, format, offset) { } }; class Matrix3Type : public DataType { public: typedef DataType Inherited; Matrix3Type( const std::string &name, const FormatTypeName &format=ascii, int offset=0 ) : Inherited(Float64, name, 9, format, offset) { } }; } } } #endif ./Tools/StressCalculator/GaussianGridder.h0000664000175000017500000000474212176660653020467 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGAUSSIANGRIDDER_H #define ESYS_LSMGAUSSIANGRIDDER_H #include "Foundation/vec3.h" #include namespace esys { namespace lsm { class GaussianGridder { public: GaussianGridder(double stdDeviation) : m_stdDeviation(stdDeviation) { } static const double SQRT_2PI; double getWeight(const Vec3 ®Pos, const Vec3 &irrPos) const { return exp( - ((irrPos-regPos).norm2())/(2.0*m_stdDeviation*m_stdDeviation))/(SQRT_2PI*m_stdDeviation); } template void transform(const TmplCartesianGrid &irregular, TmplCartesianGrid ®ular) const { typename TmplCartesianGrid::CellIterator regIt = regular.getCellIterator(); const double radius = 3.99*m_stdDeviation; while (regIt.hasNext()) { const typename TmplCartesianGrid::Cell ®Cell = regIt.next(); typename TmplCartesianGrid::CellConstIterator irrIt = irregular.getCellIterator(regCell.getPos(), radius); typename TmplCartesianGrid::value_type value; value *= 0.0; double weightSum = 0.0; while (irrIt.hasNext()) { typename TmplCartesianGrid::Cell::ConstIterator pairIt = irrIt.next().getIterator(); while (pairIt.hasNext()) { const typename TmplCartesianGrid::Cell::PosValuePair &pair = pairIt.next(); const double weight = getWeight(regCell.getPos(), pair.getPos()); weightSum += weight; value += (pair.getValue()*weight); } } if (weightSum != 0) { value /= weightSum; } regular.insert(regCell.getPos(), value); } } private: double m_stdDeviation; }; } } #endif ./Tools/StressCalculator/VtkDataTypeTuple.h0000664000175000017500000001222312176660653020617 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKDATATYPETUPLE_H #define ESYS_LSM_VTKDATATYPETUPLE_H #include #include #include #include namespace esys { namespace lsm { namespace vtk { template class DataArray; class NullDataType { public: typedef char value_type; }; // Specialisation for the NullDataType DataArray template <> class DataArray { public: typedef NullDataType::value_type value_type; DataArray(const NullDataType &dataType) { } void setData(int , const value_type &) { } void writeXml(std::ostream &) { } }; // Forward declaration template < typename DT0=NullDataType, typename DT1=NullDataType, typename DT2=NullDataType, typename DT3=NullDataType, typename DT4=NullDataType, typename DT5=NullDataType, typename DT6=NullDataType, typename DT7=NullDataType, typename DT8=NullDataType, typename DT9=NullDataType > class DataTypeTuple; // Implementation template class DataTypeTuple { public: typedef boost::tuple< typename DT0::value_type, typename DT1::value_type, typename DT2::value_type, typename DT3::value_type, typename DT4::value_type, typename DT5::value_type, typename DT6::value_type, typename DT7::value_type, typename DT8::value_type, typename DT9::value_type > DataValueTuple; typedef DataArray DA0; typedef DataArray DA1; typedef DataArray DA2; typedef DataArray DA3; typedef DataArray DA4; typedef DataArray DA5; typedef DataArray DA6; typedef DataArray DA7; typedef DataArray DA8; typedef DataArray DA9; typedef boost::tuple< DA0,DA1,DA2,DA3,DA4,DA5,DA6,DA7,DA8,DA9 > DataArrayTuple; DataTypeTuple( const DT0 &dt0 = DT0(), const DT1 &dt1 = DT1(), const DT2 &dt2 = DT2(), const DT3 &dt3 = DT3(), const DT4 &dt4 = DT4(), const DT5 &dt5 = DT5(), const DT6 &dt6 = DT6(), const DT7 &dt7 = DT7(), const DT8 &dt8 = DT8(), const DT9 &dt9 = DT9() ) : m_dataArrayTuple( DA0(dt0), DA1(dt1), DA2(dt2), DA3(dt3), DA4(dt4), DA5(dt5), DA6(dt6), DA7(dt7), DA8(dt8), DA9(dt9) ) { } void setData(int index, const DataValueTuple &data) { m_dataArrayTuple.template get<0>().setData(index, data.template get<0>()); m_dataArrayTuple.template get<1>().setData(index, data.template get<1>()); m_dataArrayTuple.template get<2>().setData(index, data.template get<2>()); m_dataArrayTuple.template get<3>().setData(index, data.template get<3>()); m_dataArrayTuple.template get<4>().setData(index, data.template get<4>()); m_dataArrayTuple.template get<5>().setData(index, data.template get<5>()); m_dataArrayTuple.template get<6>().setData(index, data.template get<6>()); m_dataArrayTuple.template get<7>().setData(index, data.template get<7>()); m_dataArrayTuple.template get<8>().setData(index, data.template get<8>()); m_dataArrayTuple.template get<9>().setData(index, data.template get<9>()); } void writeXml(std::ostream &oStream) { m_dataArrayTuple.template get<0>().writeXml(oStream); m_dataArrayTuple.template get<1>().writeXml(oStream); m_dataArrayTuple.template get<2>().writeXml(oStream); m_dataArrayTuple.template get<3>().writeXml(oStream); m_dataArrayTuple.template get<4>().writeXml(oStream); m_dataArrayTuple.template get<5>().writeXml(oStream); m_dataArrayTuple.template get<6>().writeXml(oStream); m_dataArrayTuple.template get<7>().writeXml(oStream); m_dataArrayTuple.template get<8>().writeXml(oStream); m_dataArrayTuple.template get<9>().writeXml(oStream); } private: DataArrayTuple m_dataArrayTuple; }; } } } #endif ./Tools/StressCalculator/VtkDataArray.h0000664000175000017500000000435412176660653017750 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKDATAARRAY_H #define ESYS_LSM_VTKDATAARRAY_H #include #include #include #include #include "Tools/StressCalculator/VtkDataType.h" namespace esys { namespace lsm { namespace vtk { template class DataArray { public: typedef TmplDataType DataType; typedef typename DataType::value_type value_type; DataArray(const DataType &dataType) : m_dataType(dataType), m_valueVector() { m_valueVector.reserve(512); } void setData(int index, const value_type &val) { if (static_cast(m_valueVector.size()) <= index) { m_valueVector.resize(index+1); } m_valueVector.at(index) = val; } int size() const { return m_valueVector.size(); } std::string getXmlAttributeString() const { return m_dataType.getXmlAttributeString(); } void writeXml(std::ostream &oStream) { oStream << "" << "\n"; for (typename ValueVector::const_iterator it = m_valueVector.begin(); it != m_valueVector.end(); it++) { oStream << (*it) << "\n"; } oStream << ""; } private: typedef std::vector ValueVector; DataType m_dataType; ValueVector m_valueVector; }; } } } #endif ./Tools/StressCalculator/VtkStructuredGrid.cpp0000664000175000017500000000134212176660653021377 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/VtkStructuredGrid.h" ./Tools/StressCalculator/StressTensorCalculator.cpp0000664000175000017500000000134712176660653022435 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/StressTensorCalculator.h" ./Tools/StressCalculator/VtkDataTypeTuple.cpp0000664000175000017500000000134112176660653021151 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/VtkDataTypeTuple.h" ./Tools/StressCalculator/ContactCollection.cpp0000664000175000017500000000134212176660653021347 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/ContactCollection.h" ./Tools/StressCalculator/CartesianGrid.h0000664000175000017500000003055112176660653020130 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCARTESIANGRID_H #define ESYS_LSMCARTESIANGRID_H #include "Foundation/vec3.h" #include "Geometry/Vec3L.h" #include "Foundation/BoundingBox.h" #include "Foundation/StlIterator.h" #include #include #include #include #include #include namespace esys { namespace lsm { template class CartesianGrid { public: typedef TmplValue value_type; typedef value_type& reference; typedef const value_type& const_reference; typedef value_type* pointer; class Cell { public: class PosValuePair { public: PosValuePair(const Vec3 &pos, reference value) : m_pos(pos), m_pValue(&value) { } const Vec3 &getPos() const { return m_pos; } const_reference getValue() const { return *m_pValue; } reference getValue() { return *m_pValue; } private: Vec3 m_pos; pointer m_pValue; }; typedef std::vector PosValueVector; typedef ForwardIterator Iterator; typedef ForwardConstIterator ConstIterator; Cell() : m_pos(), m_pointerVector(), m_pGrid(NULL) { } void insertRef(reference value) { m_pointerVector.push_back(PosValuePair(getPos(), value)); } void insertRef(const Vec3 &pos, reference value) { m_pointerVector.push_back(PosValuePair(pos, value)); } void setPos(const Vec3 &pos) { m_pos = pos; } const Vec3 &getPos() const { return m_pos; } CartesianGrid &getGrid() { return *m_pGrid; } const CartesianGrid &getGrid() const { return *m_pGrid; } void setGrid(CartesianGrid &grid) { m_pGrid = &grid; } BoundingBox getBox() const { return BoundingBox( getPos() - getGrid().getGridSpacing()/2.0, getPos() + getGrid().getGridSpacing()/2.0 ); } /** * Return the number of elements in this cell. */ int size() const { return m_pointerVector.size(); } /** * Clears all elements from this cell. */ void clear() { m_pointerVector.clear(); } ConstIterator getIterator() const { return ConstIterator(m_pointerVector); } Iterator getIterator() { return Iterator(m_pointerVector); } private: Vec3 m_pos; PosValueVector m_pointerVector; CartesianGrid *m_pGrid; }; class VecIndexIterator { public: VecIndexIterator(const Vec3L &minIdx, const Vec3L &maxIdx) : m_minIndex(minIdx), m_maxIndex(maxIdx), m_index(minIdx) { } bool hasNext() const { return (m_index[2] <= m_maxIndex[2]); } const Vec3L ¤t() { return m_index; } void increment() { m_index[0]++; if (m_index[0] > m_maxIndex[0]) { m_index[0] = m_minIndex[0]; m_index[1]++; if (m_index[1] > m_maxIndex[1]) { m_index[1] = m_minIndex[1]; m_index[2]++; } } } Vec3L next() { const Vec3L index = current(); increment(); return index; } private: Vec3L m_minIndex; Vec3L m_maxIndex; Vec3L m_index; }; template class TCellIterator { public: typedef TmplCell value_type; typedef TmplCellRef reference; TCellIterator(const Vec3L &minIdx, const Vec3L &maxIdx, TmplGridPointer pGrid) : m_idxIt(minIdx, maxIdx), m_pGrid(pGrid) { } bool hasNext() const { return m_idxIt.hasNext(); } reference next() { return m_pGrid->getCell(m_pGrid->getScalarIndex(m_idxIt.next())); } private: VecIndexIterator m_idxIt; TmplGridPointer m_pGrid; }; typedef TCellIterator CellIterator; typedef TCellIterator CellConstIterator; typedef std::vector ValueVector; class ValueIterator : public ForwardIterator { public: ValueIterator(ValueVector &v) : ForwardIterator(v) { } typename CartesianGrid::reference next() { return *(ForwardIterator::next()); } }; class ValueConstIterator : public ForwardConstIterator { public: ValueConstIterator(const ValueVector &v) : ForwardConstIterator(v) { } typename CartesianGrid::const_reference next() { return *(ForwardConstIterator::next()); } }; CartesianGrid(const BoundingBox &bBox, double gridSpacing) : m_bBox(bBox), m_gridSpacing(gridSpacing), m_dimensions(), m_minIndex(), m_maxIndex(), m_cellVector(), m_valuePoolPtr(new Pool(1024)), m_valueVector() { initialise(bBox, gridSpacing); } const Vec3L &getDimensions() const { return m_dimensions; } const BoundingBox &getBBox() const { return m_bBox; } const Vec3 &getMinPt() const { return getBBox().getMinPt(); } int getScalarIndex(int xIdx, int yIdx, int zIdx) const { return xIdx*m_dimensions.Z()*m_dimensions.Y() + yIdx*m_dimensions.Z() + zIdx; } Vec3L getVecIndex(const Vec3 &pt) const { const Vec3 relPos = Vec3((pt - getMinPt())/m_gridSpacing); const Vec3L index = Vec3L(int(nearbyint(relPos.X())), int(nearbyint(relPos.Y())), int(nearbyint(relPos.Z()))); return getMinVecIndex().max(getMaxVecIndex().min(index)); } Vec3 getPos(const Vec3L &index) const { return ( getMinPt() + (Vec3(index.X(), index.Y(), index.Z())*m_gridSpacing) ); } int getScalarIndex(const Vec3L &index) const { return getScalarIndex(index.X(), index.Y(), index.Z()); } int getScalarIndex(const Vec3 &pt) const { return getScalarIndex(getVecIndex(pt)); } const Vec3L &getMinVecIndex() const { return m_minIndex; } const Vec3L &getMaxVecIndex() const { return m_maxIndex; } void insert(const Vec3 &pos, const_reference data) { insertRef(pos, *(m_valuePoolPtr->construct(data))); } const Cell &getCell(int scalarIndex) const { return m_cellVector[scalarIndex]; } Cell &getCell(int scalarIndex) { return m_cellVector[scalarIndex]; } const Cell &getCell(const Vec3 &pos) const { return getCell(getScalarIndex(pos)); } Cell &getCell(const Vec3 &pos) { return getCell(getScalarIndex(pos)); } CellIterator getCellIterator(const Vec3 &pos, double radius) { return CellIterator( getVecIndex(pos - radius), getVecIndex(pos + radius), this ); } CellConstIterator getCellIterator(const Vec3 &pos, double radius) const { return CellConstIterator( getVecIndex(pos - radius), getVecIndex(pos + radius), this ); } CellIterator getCellIterator(const Vec3 &pos) { return getCellIterator(pos, 0.0); } CellConstIterator getCellIterator(const Vec3 &pos) const { return getCellIterator(pos, 0.0); } CellIterator getCellIterator() { return CellIterator( getMinVecIndex(), getMaxVecIndex(), this ); } CellConstIterator getCellIterator() const { return CellConstIterator( getMinVecIndex(), getMaxVecIndex(), this ); } ValueIterator getValueIterator() { return ValueIterator(m_valueVector); } ValueConstIterator getValueIterator() const { return ValueConstIterator(m_valueVector); } size_t size() const { return m_valueVector.size(); } double getGridSpacing() const { return m_gridSpacing; } void clear() { CellIterator cellIt = getCellIterator(); while (cellIt.hasNext()) { cellIt.next().clear(); } m_valuePoolPtr = PoolPtr(new Pool(1024)); m_valueVector.clear(); } protected: void insertRef(const Vec3 &pos, reference data) { getCell(pos).insertRef(pos, data); m_valueVector.push_back(&data); } void initialise(const BoundingBox &bBox, double gridSpacing) { m_bBox = bBox; m_gridSpacing = gridSpacing; const Vec3 dims = m_bBox.getSizes()/gridSpacing; m_dimensions = Vec3L(int(nearbyint(dims[0])), int(nearbyint(dims[1])), int(nearbyint(dims[2]))); m_dimensions = m_dimensions.max(Vec3L(1, 1, 1)); m_cellVector.clear(); m_cellVector.insert( m_cellVector.end(), m_dimensions.X()*m_dimensions.Y()*m_dimensions.Z(), Cell() ); m_valueVector.clear(); m_valueVector.reserve(m_cellVector.size()); m_minIndex = Vec3L(0, 0, 0); m_maxIndex = (m_dimensions - 1); for (int i = getMinVecIndex()[0]; i <= getMaxVecIndex()[0]; i++) { for (int j = getMinVecIndex()[1]; j <= getMaxVecIndex()[1]; j++) { for (int k = getMinVecIndex()[2]; k <= getMaxVecIndex()[2]; k++) { const Vec3L index(i, j, k); const Vec3 pos = getPos(index); Cell &cell = getCell(getScalarIndex(index)); if ((&(getCell(pos))) == (&(cell))) { cell.setPos(pos); cell.setGrid(*this); } else { std::stringstream sStream; sStream << "Couldn't set grid location for cell (" << i << "," << j << "," << k << "), pos = " << pos; throw std::runtime_error(sStream.str()); } } } } } private: typedef std::vector CellVector; typedef boost::object_pool Pool; typedef boost::shared_ptr PoolPtr; BoundingBox m_bBox; double m_gridSpacing; Vec3L m_dimensions; Vec3L m_minIndex; Vec3L m_maxIndex; CellVector m_cellVector; PoolPtr m_valuePoolPtr; ValueVector m_valueVector; }; } } #endif ./Tools/StressCalculator/StressTensorCalculator.h0000664000175000017500000000577312176660653022111 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSTRESSTENSORCACLULATOR_H #define ESYS_LSMSTRESSTENSORCACLULATOR_H #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Tools/StressCalculator/StressTensor.h" #include #include namespace esys { namespace lsm { class IntercentreStressTensorCalculator { public: IntercentreStressTensorCalculator() { } template void updateTensor(Matrix3 &tensor, const Vec3 &tensorPos, TmplContactReference &contact) { const Vec3 r = contact.getCentrePos2() - tensorPos; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { tensor(i,j) += contact.getForce()[i] * r[j]; } } } template StressTensor calculate(TmplContactIterator &it) { Matrix3 tensor; ParticleData tensorData; if (it.hasNext()) { tensorData = it.next().getParticle1(); updateTensor(tensor, tensorData.getPos(), it.current()); } while (it.hasNext()) { updateTensor(tensor, tensorData.getPos(), it.next()); } return StressTensor(tensorData, tensor); } }; class ContactPtTensorCalculator { public: ContactPtTensorCalculator() { } template void updateTensor(Matrix3 &tensor, const Vec3 &tensorPos, TmplContactReference &contact) { const Vec3 r = contact.getForcePos() - tensorPos; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { tensor(i,j) += r[i] * contact.getForce()[j]; } } } template StressTensor calculate(TmplContactIterator &it) { Matrix3 tensor; ParticleData tensorData; double volume = 1.0; if (it.hasNext()) { tensorData = it.next().getParticle1(); volume = it.current().getVolume1(); updateTensor(tensor, tensorData.getPos(), it.current()); } while (it.hasNext()) { updateTensor(tensor, tensorData.getPos(), it.next()); } return StressTensor(tensorData, tensor/volume); } }; } } #endif ./Tools/StressCalculator/Makefile.am0000664000175000017500000000337112176660653017274 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES = libStressCalculator.la AM_CPPFLAGS += -I$(top_srcdir) libStressCalculator_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la libStressCalculator_la_SOURCES = Raw2InteractionReader.h Raw2InteractionReader.cpp InteractionToStressConverter.h InteractionToStressConverter.cpp ContactCollection.cpp ContactCollection.h Contact.h StressTensorCalculator.cpp StressTensorCalculator.h StressTensorCollection.cpp StressTensorCollection.h StressTensor.h VtkUnstructuredGrid.cpp VtkUnstructuredGrid.h VtkDataTypeTuple.h VtkDataTypeTuple.cpp VtkDataArray.h VtkDataType.h CartesianGrid.cpp CartesianGrid.h Vec3Comparer.h VtkStructuredGrid.cpp VtkStructuredGrid.h GaussianGridder.cpp GaussianGridder.h VtkPiece.cpp VtkPiece.h EigenvalueCalculator.cpp EigenvalueCalculator.h Contact.cpp bin_PROGRAMS = raw2tostress raw2tostress_SOURCES = \ Main.cpp raw2tostress_LDADD = \ $(BOOST_FILESYSTEM_LIBS) \ libStressCalculator.la \ $(top_builddir)/Foundation/libFoundation.la ./Tools/StressCalculator/Main.cpp0000664000175000017500000001311412176660653016624 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Tools/StressCalculator/InteractionToStressConverter.h" #include "Foundation/StringUtil.h" #include "Foundation/BoundingBox.h" using namespace esys::lsm; BoundingBox getBBox(const std::string &arg) { typedef std::vector DoubleVector; DoubleVector vec = StringUtil::split >(arg, ","); BoundingBox bBox; if (vec.size() == 6) { bBox = BoundingBox(Vec3(vec[0], vec[1], vec[2]), Vec3(vec[3], vec[4], vec[5])); } else { std::stringstream msg; msg << "Bounding box argument " << arg << " does not contain 6 comma separated elements."; throw std::runtime_error(msg.str()); } return bBox; } int main(int argc, char *argv[]) { try { if (argc > 4) { BoundingBox bBox = getBBox(argv[1]); double gridSpacing = StringUtil::to(argv[2]); std::string inputRaw2File = argv[3]; std::string outputUnstrXmlGridFile = argv[4]; std::string outputStrctFlatFile = ""; if (argc > 5) { outputStrctFlatFile = argv[5]; } std::string outputUnstrXmlFile = ""; if (argc > 6) { outputUnstrXmlFile = argv[6]; } std::string outputUnstrFlatFile = ""; if (argc > 7) { outputUnstrFlatFile = argv[7]; } ParticleData::is3d(bBox.getSizes().Z() != 0.0); std::cout << "Dim = " << (ParticleData::is3d() ? "3D" : "2D") << ", BBox = " << bBox << ", grid spacing = " << gridSpacing << std::endl; std::ifstream iStream(inputRaw2File.c_str()); std::cerr << "Reading from file " << inputRaw2File << std::endl; InteractionToStressConverter converter(bBox, gridSpacing); converter.addRaw2Interactions(iStream); std::cerr << "Writing to file " << outputUnstrXmlGridFile << std::endl; std::ofstream oStreamStrct(outputUnstrXmlGridFile.c_str()); converter.writeVtkUnstructuredXmlGridInformation(oStreamStrct); if (!outputStrctFlatFile.empty()) { std::cerr << "Writing to file " << outputStrctFlatFile << std::endl; std::ofstream oStreamFlat(outputStrctFlatFile.c_str()); converter.writeFlatStructured(oStreamFlat); } if (!outputUnstrXmlFile.empty()) { std::cerr << "Writing to file " << outputUnstrXmlFile << std::endl; std::ofstream oStreamUnstr(outputUnstrXmlFile.c_str()); converter.writeVtkUnstructuredXml(oStreamUnstr); } if (!outputUnstrFlatFile.empty()) { std::cerr << "Writing to file " << outputUnstrFlatFile << std::endl; std::ofstream oStreamUnstr(outputUnstrFlatFile.c_str()); converter.writeFlatUnstructured(oStreamUnstr); } } else { std::cerr << "Usage: " << argv[0] << " bbox gridSpacing input_raw2_file" << " outputUnstrXmlGridFile [outputStrctFlatFile [outputUnstrXmlFile [outputUnstrFlatFile]]" << std::endl << "Converts RAW2 interaction record data (centrePt1 rad1 centrePt2 rad2 contactPt force)" << std::endl << "to stress values (sigma_{max}-sigma_{min})." << std::endl << std::endl << "bbox - bounding box for regular grid generation. Specified as a comma" << std::endl << " separated list of six values \"minX,minY,minZ,maxX,maxY,maxZ\"" << std::endl << "gridSpacing - distance between points of the regular grid." << std::endl << "input_raw2_file - RAW2 interaction data output from LSM" << std::endl << " VectorInteractionFieldSaver." << std::endl << "outputUnstrXmlGridFile - A VTK unstructured grid is written to this" << std::endl << " file containing dev-stress and the full tensor."<< std::endl << "outputStrctFlatFile - Simple ascii records (one record per line:" << std::endl << " \"x y z \\sigma_{dev}\") are written to this file."<< std::endl << "outputUnstrXmlFile - A per particle VTK unstructured grid of tensor," << std::endl << " particle radius and dev-stress data are written" << std::endl << " to this file." << std::endl << "outputUnstrFlatFile - Simple ascii records (one record per line:" << std::endl << " \"x y z \\sigma_{dev}\") are written to this file."<< std::endl << std::endl << std::endl; } } catch (std::runtime_error &e) { std::cerr << "EXCEPTION: " << e.what() << std::endl; throw; } catch (const char *e) { std::cerr << "EXCEPTION: " << std::string(e) << std::endl; throw; } catch (...) { std::cerr << "EXCEPTION: " << "Unknown exception." << std::endl; throw; } return 0; } ./Tools/StressCalculator/Raw2InteractionReader.cpp0000664000175000017500000000134612176660653022102 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/Raw2InteractionReader.h" ./Tools/StressCalculator/VtkStructuredGrid.h0000664000175000017500000001054412176660653021050 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_VTKSTRUCTUREDGRID_H #define ESYS_LSM_VTKSTRUCTUREDGRID_H #include #include #include #include #include "Foundation/vec3.h" #include "Geometry/Vec3L.h" #include "Tools/StressCalculator/VtkPiece.h" namespace esys { namespace lsm { namespace vtk { template class StructuredPiece : public Piece { public: typedef Piece Inherited; typedef typename Inherited::PointType PointType; typedef typename Inherited::PointValue PointValue; typedef typename Inherited::PointDataTypeTuple PointDataTypeTuple; typedef typename Inherited::PointData PointData; StructuredPiece(const PointType &pointType, const PointDataTypeTuple &pointDataType) : Inherited(pointType, pointDataType), m_minExtent(), m_maxExtent() { } virtual ~StructuredPiece() { } void setExtent(const Vec3L &minIndex, const Vec3L &maxIndex) { m_minExtent = minIndex; m_maxExtent = maxIndex; } virtual void writeXml(std::ostream &oStream) { oStream << "" << std::endl; this->writePointsXml(oStream); this->writePointDataXml(oStream); this->writeCellDataXml(oStream); oStream << ""; } const Vec3L &getMinExtent() const { return m_minExtent; } const Vec3L &getMaxExtent() const { return m_maxExtent; } protected: private: Vec3L m_minExtent; Vec3L m_maxExtent; }; class StructuredGrid { private: typedef std::vector PiecePtrVector; public: StructuredGrid() : m_pieceVector(), m_minExtent(), m_maxExtent() { } virtual ~StructuredGrid() { } void setExtent(const Vec3L &minIndex, const Vec3L &maxIndex) { m_minExtent = minIndex; m_maxExtent = maxIndex; } template void addPiece(TmplStructuredPiece &piece) { XmlPiece &xmlPiece = dynamic_cast(piece); m_pieceVector.push_back(&xmlPiece); } virtual void writeXml(std::ostream &oStream) { oStream << "\n" << "" << std::endl; for ( PiecePtrVector::const_iterator it = m_pieceVector.begin(); it != m_pieceVector.end(); it++ ) { (*it)->writeXml(oStream); oStream << "\n"; } oStream << "\n"; oStream << ""; } private: PiecePtrVector m_pieceVector; Vec3L m_minExtent; Vec3L m_maxExtent; }; } } } #endif ./Tools/StressCalculator/Contact.cpp0000664000175000017500000000155612176660653017342 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/Contact.h" namespace esys { namespace lsm { bool ParticleData::s_is3d = true; const double ParticleData::FOUR_THIRDS_PI = ((4.0/3.0)*M_PIl); } } ./Tools/StressCalculator/EigenvalueCalculator.h0000664000175000017500000001540212176660653021505 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMEIGENVALUECALCULATOR_H #define ESYS_LSMEIGENVALUECALCULATOR_H #include "Foundation/Matrix3.h" #include #include #include #include namespace esys { namespace lsm { class EigenvalueCalculator { public: typedef std::complex Complex; typedef std::vector ComplexVector; static const double ONE_THIRD; static const double SQRT_THREE; inline double cbrt(double a) { // cube root is antisymmetric return (a < 0) ? -std::pow(-a, ONE_THIRD) : std::pow(a, ONE_THIRD); } bool hasComplexEigenvalues(const Matrix3 &a) const { double b = -(a(0, 0) + a(1, 1) + a(2, 2)); double a00a11 = a(0, 0) * a(1, 1); double a11a22 = a(1, 1) * a(2, 2); double a00a22 = a(0, 0) * a(2, 2); double a10a01 = a(1, 0) * a(0, 1); double a12a21 = a(1, 2) * a(2, 1); double a20a02 = a(2, 0) * a(0, 2); double c = a00a11 + a11a22 + a00a22 - a10a01 - a12a21 - a20a02; double a10a01a22 = a10a01 * a(2, 2); double a12a21a00 = a12a21 * a(0, 0); double a20a02a11 = a20a02 * a(1, 1); double a00a11a22 = a00a11 * a(2, 2); double a01a12a20 = a(0, 1) * a( 1, 2) * a( 2, 0); double a02a10a21 = a(0, 2) * a( 1, 0) * a( 2, 1); double d = a10a01a22 + a12a21a00 + a20a02a11 - a00a11a22 - a01a12a20 - a02a10a21; double bb = b * b; double Q = (3.0 * c - bb) / 9.0; double R = (9.0 * b * c - 27.0 * d - 2.0 * bb * b) / 54.0; return (Q * Q * Q > -(R * R)); } class ComplexRealImagComparer { public: bool operator()(const Complex &c1, const Complex &c2) const { return ( (c1.real() < c2.real()) || ( (c1.real() == c2.real()) && (c1.imag() < c2.imag()) ) ); } }; class ComplexAbsRealImagComparer { public: bool operator()(const Complex &c1, const Complex &c2) const { return ( (fabs(c1.real()) < fabs(c2.real())) || ( (fabs(c1.real()) == fabs(c2.real())) && (fabs(c1.imag()) < fabs(c2.imag())) ) ); } }; class ComplexNormComparer { public: bool operator()(const Complex &c1, const Complex &c2) const { return (std::norm(c1) < std::norm(c2)); } }; ComplexVector getEigenvalues(const Matrix3 &a) { ComplexVector e(3, Complex(0.0, 0.0)); double b = -(a(0, 0) + a(1, 1) + a(2, 2)); double a00a11 = a(0, 0) * a(1, 1); double a11a22 = a(1, 1) * a(2, 2); double a00a22 = a(0, 0) * a(2, 2); double a10a01 = a(1, 0) * a(0, 1); double a12a21 = a(1, 2) * a(2, 1); double a20a02 = a(2, 0) * a(0, 2); double c = a00a11 + a11a22 + a00a22 - a10a01 - a12a21 - a20a02; double a10a01a22 = a10a01 * a(2, 2); double a12a21a00 = a12a21 * a(0, 0); double a20a02a11 = a20a02 * a(1, 1); double a00a11a22 = a00a11 * a(2, 2); double a01a12a20 = a(0, 1) * a(1, 2) * a(2, 0); double a02a10a21 = a(0, 2) * a(1, 0) * a(2, 1); double d = a10a01a22 + a12a21a00 + a20a02a11 - a00a11a22 - a01a12a20 - a02a10a21; double bb = b * b; double Q = (3.0 * c - bb) / 9.0; double R = (9.0 * b * c - 27.0 * d - 2.0 * bb * b) / 54.0; double D = Q * Q * Q + R * R; double nOTb = -ONE_THIRD * b; if (D > 0) { // one real and two Complex conjugate double sqrtD = sqrt(D); double S = cbrt(R + sqrtD); double T = cbrt(R - sqrtD); double SpT = S + T; e[0] = nOTb + SpT; double x = nOTb - 0.5 * SpT; double y = 0.5 * SQRT_THREE * (S - T); e[1] = Complex(x, y); e[2] = Complex(x, -y); } else if (D < 0) { // all real and unequal double sqrtD = sqrt(-D); Complex S = std::pow(Complex(R, sqrtD), ONE_THIRD); // T == S.conj() e[0] = nOTb + 2.0 * S.real(); double x = nOTb - S.real(); double y = SQRT_THREE * S.imag(); e[1] = x - y; e[2] = x + y; } else { // all real and at least two equal double S = cbrt(R); // T == S e[0] = nOTb + 2.0 * S; e[1] = nOTb - S; e[2] = e[1]; } std::sort(e.begin(), e.end(), ComplexRealImagComparer()); return e; } void printEigenvalues(const Matrix3 &a) { std::cout << "a: " << a(0, 0) << " " << a(0, 1) << " " << a(0, 2) << std::endl << " " << a(1, 0) << " " << a(1, 1) << " " << a(1, 2) << std::endl << " " << a(2, 0) << " " << a(2, 1) << " " << a(2, 2) << std::endl; if (hasComplexEigenvalues(a)) std::cout << "Complex eigenvalues" << std::endl; else std::cout << "Real eigenvalues" << std::endl; ComplexVector e = getEigenvalues(a); std::cout << "e0: " << e[0] << std::endl; std::cout << "e1: " << e[1] << std::endl; std::cout << "e2: " << e[2] << std::endl; std::cout << std::endl; } }; } } inline std::ostream &operator<<(std::ostream &oStream, const esys::lsm::EigenvalueCalculator::ComplexVector &vec) { esys::lsm::EigenvalueCalculator::ComplexVector::const_iterator it = vec.begin(); if (it != vec.end()) { oStream << (*it); it++; } for (; it != vec.end(); it++) { oStream << " " << (*it); } return oStream; } #endif ./Tools/StressCalculator/VtkUnstructuredGrid.cpp0000664000175000017500000000134412176660653021744 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/VtkUnstructuredGrid.h" ./Tools/StressCalculator/CartesianGrid.cpp0000664000175000017500000000133712176660653020463 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/StressCalculator/CartesianGrid.h" ./Tools/StressCalculator/StressTensorCollection.h0000664000175000017500000000425712176660653022107 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSTRESSTENSORCOLLECTION_H #define ESYS_LSMSTRESSTENSORCOLLECTION_H #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Foundation/StlIterator.h" #include "Tools/StressCalculator/StressTensor.h" #include #include namespace esys { namespace lsm { template class StressTensorCollection { public: typedef TmplStressTensorCalculator StressCalculator; typedef std::vector StressTensorVector; typedef ForwardIterator StressTensorIterator; StressTensorCollection(StressCalculator &stressCalculator) : m_stressTensorVector(), m_pStressCalculator(&stressCalculator) { } template void addContactIterator(TmplContactIterator it) { m_stressTensorVector.push_back(m_pStressCalculator->calculate(it)); } template void addContactIterators(TmplContactIteratorIterator it) { while (it.hasNext()) { addContactIterator(it.next()); } } StressTensorIterator getIterator() { return StressTensorIterator(m_stressTensorVector); } int size() const { return m_stressTensorVector.size(); } private: StressTensorVector m_stressTensorVector; StressCalculator *m_pStressCalculator; }; } } #endif ./Tools/StressCalculator/Raw2InteractionReader.h0000664000175000017500000000312412176660653021543 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRAW2INTERACTIONREADER_H #define ESYS_LSMRAW2INTERACTIONREADER_H #include "Foundation/vec3.h" #include "Foundation/StringUtil.h" #include "Tools/StressCalculator/Contact.h" #include namespace esys { namespace lsm { class Raw2InteractionReader { public: typedef Contact InteractionData; Raw2InteractionReader(std::istream &iStream)\ : m_pIStream(&iStream) { } bool hasNext() const { return ((m_pIStream->peek()) != std::istream::traits_type::eof()); } InteractionData next() { InteractionData data; data.read(*m_pIStream); return data; } private: Raw2InteractionReader(); Raw2InteractionReader(const Raw2InteractionReader &reader); Raw2InteractionReader &operator=(const Raw2InteractionReader &reader); std::istream *m_pIStream; }; } } #endif ./Tools/StressCalculator/Vec3Comparer.h0000664000175000017500000000346012176660653017701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMVEC3COMPARE_H #define ESYS_LSMVEC3COMPARE_H #include "Foundation/vec3.h" namespace esys { namespace lsm { class Vec3XyzComparer { public: bool operator()(const Vec3 &v1, const Vec3 &v2) const { return ( (v1.X() < v2.X()) || ( (v1.X() == v2.X()) && ( (v1.Y() < v2.Y()) || ( (v1.Y() == v2.Y()) && (v1.Z() < v2.Z()) ) ) ) ); } }; class Vec3ZyxComparer { public: bool operator()(const Vec3 &v1, const Vec3 &v2) const { return ( (v1.Z() < v2.Z()) || ( (v1.Z() == v2.Z()) && ( (v1.Y() < v2.Y()) || ( (v1.Y() == v2.Y()) && (v1.X() < v2.X()) ) ) ) ); } }; } } #endif ./Tools/MacroFrictionCalculator/0000775000175000017500000000000012176660653016510 5ustar vborosvboros./Tools/MacroFrictionCalculator/WallForcesToFrictionConverter.cpp0000664000175000017500000000742012176660653025151 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/MacroFrictionCalculator/WallForcesToFrictionConverter.h" #include "Tools/MacroFrictionCalculator/WallForceReader.h" #include "Tools/MacroFrictionCalculator/MacroFrictionCalculator.h" #include "Tools/MacroFrictionCalculator/LinearWindowAverager.h" #include #include namespace esys { namespace lsm { class WallForcesToFrictionConverter::Impl { public: Impl( const std::string &wallForcesFile, const std::string &instFrictionFile, const std::string &avrgFrictionFile, int halfWindowSize, int wallId1, int wallId2, int normalDimIndex, int shearDimIndex ) : m_wallForcesFile(wallForcesFile), m_instFrictionFile(instFrictionFile), m_avrgFrictionFile(avrgFrictionFile), m_halfWindowSize(halfWindowSize), m_wallId1(wallId1), m_wallId2(wallId2), m_normalDimIndex(normalDimIndex), m_shearDimIndex(shearDimIndex) { } typedef MacroFrictionCalculator::FrictionVector FrictionVector; void writeLines(const std::string &fileName, const FrictionVector &vec) { std::ofstream oStream(fileName.c_str()); FrictionVector::const_iterator it = vec.begin(); if (it != vec.end()) { oStream << std::setw(12) << std::setprecision(12) << (*it); it++; } for (; it != vec.end(); it++) { oStream << "\n" << std::setw(12) << std::setprecision(12) << (*it); } } void convert() { std::ifstream iStream(m_wallForcesFile.c_str()); WallForceReader reader(m_wallId1, m_wallId2, iStream); MacroFrictionCalculator calker(m_normalDimIndex, m_shearDimIndex); calker.add(reader); writeLines(m_instFrictionFile, calker.getFrictionVector()); LinearWindowAverager avgr(calker.getFrictionVector(), m_halfWindowSize, 0, calker.getFrictionVector().size(), 1); writeLines(m_avrgFrictionFile, avgr.getAveragedVector()); } const std::string m_wallForcesFile; const std::string m_instFrictionFile; const std::string m_avrgFrictionFile; int m_halfWindowSize; int m_wallId1; int m_wallId2; int m_normalDimIndex; int m_shearDimIndex; }; WallForcesToFrictionConverter::WallForcesToFrictionConverter( const std::string &wallForcesFile, const std::string &instFrictionFile, const std::string &avrgFrictionFile, int halfWindowSize, int wallId1, int wallId2, int normalDimIndex, int shearDimIndex ) : m_implPtr( new Impl( wallForcesFile, instFrictionFile, avrgFrictionFile, halfWindowSize, wallId1, wallId2, normalDimIndex, shearDimIndex ) ) { } void WallForcesToFrictionConverter::convert() { m_implPtr->convert(); } } } ./Tools/MacroFrictionCalculator/WallForceReader.h0000664000175000017500000001107712176660653021670 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMWALLFORCEREADER_H #define ESYS_LSMWALLFORCEREADER_H #include "Foundation/vec3.h" #include "Foundation/StringUtil.h" #include #include #include namespace esys { namespace lsm { class WallForcesRecord { public: typedef int WallId; class WallForce { public: WallForce() : m_id(-1), m_force() { } WallForce(WallId id, const Vec3 &force) : m_id(id), m_force(force) { } WallForce( StringUtil::StringVector::const_iterator begin, StringUtil::StringVector::const_iterator end ) : m_id(-1), m_force() { if (end-begin >= 4) { m_id = StringUtil::to(*begin); for (int i = 0; i < 3; i++) { m_force[i] = StringUtil::to(*(begin + i + 1)); } } } const WallId &getId() const { return m_id; } const Vec3 getForce() const { return m_force; } private: WallId m_id; Vec3 m_force; }; WallForcesRecord(const std::string &line) { parseLine(line); } void parseLine(const std::string &line) { StringUtil::StringVector elemVector = StringUtil::splitStrings(StringUtil::trim(line), " "); const int elemsPerWallForce = 4; m_wallForceVector.clear(); m_wallForceVector.reserve(elemVector.size()/elemsPerWallForce); if ((elemVector.size() % elemsPerWallForce) == 0) { for ( StringUtil::StringVector::const_iterator it = elemVector.begin(); it != elemVector.end(); it += elemsPerWallForce ) { const WallForce wallForce(it, it + elemsPerWallForce); if (wallForce.getId() >= static_cast(m_wallForceVector.size())) { m_wallForceVector.insert(m_wallForceVector.end(), wallForce.getId()-m_wallForceVector.size()+1, WallForce()); } m_wallForceVector[wallForce.getId()] = wallForce; } } else { std::stringstream msg; msg << "Record '" << line << "' does not contain a number of elements divisible by " << elemsPerWallForce; throw std::runtime_error(msg.str()); } } const WallForce &get(WallId id) const { return m_wallForceVector[id]; } private: typedef std::vector WallForceVector; WallForceVector m_wallForceVector; }; class WallForceReader { public: typedef std::pair WallForcePair; typedef WallForcesRecord::WallId WallId; WallForceReader(WallId wallId1, WallId wallId2, std::istream &iStream) : m_pIStream(&iStream), m_lineBuffer(), m_wallId1(wallId1), m_wallId2(wallId2) { } WallForceReader(WallId wallId1, WallId wallId2) : m_pIStream(NULL), m_lineBuffer(), m_wallId1(wallId1), m_wallId2(wallId2) { } void setStream(std::istream &iStream) { m_pIStream = &iStream; } bool hasNext() const { return ((m_pIStream != NULL) && ((m_pIStream->peek()) != std::istream::traits_type::eof())); } WallForcePair next() { m_pIStream->getline(m_lineBuffer, MAX_LINE_SIZE); WallForcesRecord record(m_lineBuffer); return WallForcePair(record.get(m_wallId1).getForce(), record.get(m_wallId2).getForce()); } private: static const int MAX_LINE_SIZE = 4096; std::istream *m_pIStream; char m_lineBuffer[MAX_LINE_SIZE]; WallId m_wallId1; WallId m_wallId2; }; } } #endif ./Tools/MacroFrictionCalculator/MacroFrictionCalculator.h0000664000175000017500000000415312176660653023435 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMMACROFRICTIONCALCULATOR_H #define ESYS_LSMMACROFRICTIONCALCULATOR_H #include "Foundation/vec3.h" #include namespace esys { namespace lsm { class MacroFrictionCalculator { public: typedef std::pair WallForcePair; typedef std::vector FrictionVector; MacroFrictionCalculator(int normalDimIndex, int shearDimIndex) : m_normalDimIndex(normalDimIndex), m_shearDimIndex(shearDimIndex), m_frictionVector() { } double getFriction(const WallForcePair &forcePair) const { const double normalStress = (forcePair.first[m_normalDimIndex] - forcePair.second[m_normalDimIndex]); if (normalStress != 0.0) { const double shearStress = forcePair.first[m_shearDimIndex] - forcePair.second[m_shearDimIndex]; return shearStress/normalStress; } return 0.0; } void add(const WallForcePair &forcePair) { m_frictionVector.push_back(getFriction(forcePair)); } template void add(TmplIterator it) { while (it.hasNext()) { add(it.next()); } } const FrictionVector &getFrictionVector() const { return m_frictionVector; } private: int m_normalDimIndex; int m_shearDimIndex; FrictionVector m_frictionVector; }; } } #endif ./Tools/MacroFrictionCalculator/MacroFrictionCalculator.cpp0000664000175000017500000000143312176660653023766 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/MacroFrictionCalculator/MacroFrictionCalculator.h" namespace esys { namespace lsm { } } ./Tools/MacroFrictionCalculator/LinearWindowAverager.h0000664000175000017500000000474612176660653022753 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMLINEARWINDOWAVERAGER_H #define ESYS_LSMLINEARWINDOWAVERAGER_H #include #include "Foundation/vec3.h" #include namespace esys { namespace lsm { class LinearWindowAverager { public: typedef std::vector ValueVector; LinearWindowAverager( const ValueVector &valVector, int halfWindowSize, int beginIndex, int endIndex, int skipSize ) : m_valVector(valVector), m_avValVector(), m_halfWindowSize(halfWindowSize), m_beginIndex(beginIndex), m_endIndex(min(endIndex, static_cast(valVector.size()))), m_skipSize(skipSize) { } const ValueVector &getAveragedVector() { if (m_avValVector.size() <= 0) { calculateAverageVals(); } return m_avValVector; } protected: void calculateAverageVals() { m_avValVector.clear(); const int halfWindowSize = max(0, m_halfWindowSize); for (int i = m_beginIndex; i < m_endIndex; i += m_skipSize) { double avSum = 0.0; double weightSum = 0.0; const int endJ = min(static_cast(m_valVector.size()), i + halfWindowSize+1); for (int j = max(0, i - halfWindowSize); j < endJ; j++) { const double weight = (1.0 - (static_cast(abs(i-j))/(halfWindowSize+1))); weightSum += weight; avSum += weight*m_valVector[j]; } m_avValVector.push_back(avSum/weightSum); } } private: ValueVector m_valVector; ValueVector m_avValVector; int m_halfWindowSize; int m_beginIndex; int m_endIndex; int m_skipSize; }; } } #endif ./Tools/MacroFrictionCalculator/WallForcesToFrictionConverter.h0000664000175000017500000000255012176660653024615 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMWALLFORCESTOFRICTIONCONVERTER_H #define ESYS_LSMWALLFORCESTOFRICTIONCONVERTER_H #include #include namespace esys { namespace lsm { class WallForcesToFrictionConverter { public: WallForcesToFrictionConverter( const std::string &wallForcesFile, const std::string &instFrictionFile, const std::string &avrgFrictionFile, int halfWindowSize, int wallId1, int wallId2, int normalDimIndex, int shearDimIndex ); void convert(); private: class Impl; typedef boost::shared_ptr ImplPtr; ImplPtr m_implPtr; }; } } #endif ./Tools/MacroFrictionCalculator/LinearWindowAverager.cpp0000664000175000017500000000143012176660653023271 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/MacroFrictionCalculator/LinearWindowAverager.h" namespace esys { namespace lsm { } } ./Tools/MacroFrictionCalculator/Makefile.am0000664000175000017500000000242312176660653020545 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES = libMacroFrictionCalc.la AM_CPPFLAGS += -I$(top_srcdir) libMacroFrictionCalc_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la libMacroFrictionCalc_la_SOURCES = MacroFrictionCalculator.cpp MacroFrictionCalculator.h LinearWindowAverager.cpp LinearWindowAverager.h WallForceReader.cpp WallForceReader.h WallForcesToFrictionConverter.cpp WallForcesToFrictionConverter.h bin_PROGRAMS = forcetofric forcetofric_SOURCES = \ Main.cpp forcetofric_LDADD = \ libMacroFrictionCalc.la ./Tools/MacroFrictionCalculator/Main.cpp0000664000175000017500000000652512176660653020110 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Foundation/StringUtil.h" #include "Tools/MacroFrictionCalculator/WallForcesToFrictionConverter.h" using namespace esys::lsm; int main(int argc, char *argv[]) { try { if (argc > 7) { std::string wallForcesFile = argv[1]; std::string instFrictionFile = argv[2]; std::string avrgFrictionFile = argv[3]; const int halfWindowSize = StringUtil::to(argv[4]); const int wallId1 = StringUtil::to(argv[5]); const int wallId2 = StringUtil::to(argv[6]); const int normalDimIndex = StringUtil::to(argv[7]); const int shearDimIndex = StringUtil::to(argv[8]); WallForcesToFrictionConverter converter( wallForcesFile, instFrictionFile, avrgFrictionFile, halfWindowSize, wallId1, wallId2, normalDimIndex, shearDimIndex ); converter.convert(); } else { std::cerr << "Usage: " << argv[0] << " wallForcesFile instFrictionFile avrgFrictionFile halfWindowSize wallId1 wallId2 normalDimIndex shearDimIndex" << std::endl << "Converts wall-forces record data (id1 F1_x F1_y F1_z id2 F2_x F2_y F2_z ...)" << std::endl << "to instantaneuos and effective friction values" << std::endl << std::endl << "wallForcesFile - wall-force data read from this file." << std::endl << "instFrictionFile - Instantaneous macro friction values written to this file." << std::endl << "avrgFrictionFile - Averaged/effective friction values written to this file." << std::endl << "halfWindowSize - Size of the averaging window is 1+(2*halfWindowSize)." << std::endl << "wallId1 - integer specifying first wall whose forces are used in instantaneous friction calculation." << std::endl << "wallId2 - integer specifying second wall whose forces are used in instantaneous friction calculation." << std::endl << "normalDimIndex - integer {0, 1, 2} specifying the dimension in which the \"normal\"" << std::endl << " force acts (0 is x dim, 1 is y dim, 2 is z dim)." << std::endl << "shearDimIndex - integer {0, 1, 2} specifying the dimension in which the \"shear\"" << std::endl << " force acts (0 is x dim, 1 is y dim, 2 is z dim)." << std::endl << std::endl << std::endl; } } catch (std::runtime_error &e) { std::cerr << e.what() << std::endl; throw; } catch (...) { std::cerr << "Unknown exception." << std::endl; throw; } return 0; } ./Tools/MacroFrictionCalculator/WallForceReader.cpp0000664000175000017500000000142312176660653022215 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Tools/MacroFrictionCalculator/WallForceReader.h" namespace esys { namespace lsm { } } ./Tools/ExtractFractures/0000775000175000017500000000000012176660653015230 5ustar vborosvboros./Tools/ExtractFractures/CMakeLists.txt0000664000175000017500000000035012176660653017766 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== ADD_EXECUTABLE(fracextract ${SRC}) TARGET_LINK_LIBRARIES(fracextract Geometry) INSTALL(TARGETS fracextract DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/ExtractFractures/fracframe.h0000664000175000017500000000333512176660653017333 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRACFRAME_H #define __FRACFRAME_H //--- system includes --- #include #include #include #include #include using std::string; using std::vector; using std::set; using std::pair; using std::map; //--- project includes --- #include "Foundation/vec3.h" class FracFrame { private: // bond data struct bdata { int id1,id2,tag; }; class cmp { public: bool operator ()(const bdata&, const bdata&); }; set m_bonds; map posmap; map radmap; map tagmap; // private helper functions int get_version(const string&); vector get_filenames(const string&, int); public: // types struct fdata { Vec3 pos; Vec3 normal; double size; int id1, id2; int tag; }; FracFrame(); void readFile(const string&); void readFileRot(const string&,bool); void readFileTagged(const string&,int); void readFileRotTagged(const string&,int); vector getFrac(FracFrame&); }; #endif // __FRACFRAME_H ./Tools/ExtractFractures/fracwriter.h0000664000175000017500000000301012176660653017543 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRACWRITER_H #define __FRACWRITER_H // --- project includes --- #include "fracframe.h" #include "Foundation/vec3.h" #include "Geometry/Plane3D.h" // --- STL includes --- #include #include using std::vector; using std::string; struct fwdata { Vec3 pos; Vec3 normal; double size; int time; int id1,id2; int tag; fwdata(const FracFrame::fdata&,int); }; class FracWriter { private: vector m_data; map m_nbrk_map; Vec3 m_c1,m_c2,m_c3,m_c4; bool with_plane; void writePlane(const string&); public: FracWriter(); void addData(const vector&,int); void addPlane(const Plane3D&); void write(const string&); void writeText(const string&); void writeProfile(double,double,int,const string&); void writeParticleList(const string&); }; #endif //__FRACWRITER_H ./Tools/ExtractFractures/FitPlane.cpp0000664000175000017500000000176612176660653017450 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "FitPlane.h" // --- project includes --- #include "Geometry/PointCloud.h" Plane3D fitPlaneToFracture(const vector& fd) { PointCloud PC; for(vector::const_iterator iter=fd.begin(); iter!=fd.end(); iter++){ PC.addPoint(iter->pos); } return PC.getFitPlane(); } ./Tools/ExtractFractures/frac_dist.h0000664000175000017500000000214012176660653017334 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _FRAC_DIST_H #define _FRAC_DIST_H //--- STL includes --- #include #include using std::string; using std::vector; //--- project includes --- #include "fracframe.h" // for fdata class FracDist { private: vector m_dist; double m_dmin,m_dmax,m_dx; int m_nbin,m_ntotal; public: FracDist(const vector,double,double,int); void write(const string&); }; #endif // _FRAC_DIST_H ./Tools/ExtractFractures/Makefile.am0000664000175000017500000000220012176660653017256 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = fracextract AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry fracextract_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Parallel/libParallel.la \ $(top_builddir)/Geometry/libGgGeometry.la fracextract_SOURCES = \ fracframe.cpp \ fracframe.h \ fracwriter.cpp \ fracwriter.h \ FitPlane.h \ FitPlane.cpp \ frac_dist.h \ frac_dist.cpp \ main.cpp ./Tools/ExtractFractures/FitPlane.h0000664000175000017500000000167712176660653017116 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FIT_PLANE_H #define __FIT_PLANE_H // --- project includes --- #include "fracframe.h" #include "Geometry/Plane3D.h" // --- STL includes --- #include using std::vector; Plane3D fitPlaneToFracture(const vector&); #endif // __FIT_PLANE_H ./Tools/ExtractFractures/fracwriter.cpp0000664000175000017500000001746712176660653020123 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "fracwriter.h" // --- IO includes --- #include #include #include using std::ostringstream; using std::ofstream; using std::endl; fwdata::fwdata(const FracFrame::fdata& fd,int t) { pos=fd.pos; normal=fd.normal; size=fd.size; id1=fd.id1; id2=fd.id2; time=t; tag=fd.tag; } /*! constructor */ FracWriter::FracWriter() { with_plane=false; } /*! add point data to the writer */ void FracWriter::addData(const vector& newdata,int t) { for(vector::const_iterator iter=newdata.begin(); iter!=newdata.end(); iter++){ m_data.push_back(fwdata(*iter,t)); m_nbrk_map[iter->id1]++; m_nbrk_map[iter->id2]++; } std::cerr << "added " << newdata.size() << " fractures" << std::endl; } /*! add a plane to the data writer */ void FracWriter::addPlane(const Plane3D& P) { with_plane=true; Vec3 center=P.getPos(); double maxdist=0.0; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ double dist=(center-(iter->pos)).norm(); maxdist=(dist > maxdist) ? dist : maxdist; } Vec3 v1=maxdist*P.GetV(); Vec3 v2=maxdist*P.GetU(); m_c1=center-v1-v2; m_c2=center+v1-v2; m_c3=center+v1+v2; m_c4=center-v1+v2; } /*! write data int VTK-XML file \param filename the filename */ void FracWriter::write(const string& filename) { // open file ofstream outfile(filename.c_str()); // write VTK-XML header outfile << "\n"; outfile << "\n"; outfile << "\n"; // write positions outfile << "\n"; outfile << "\n"; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->pos << endl; } outfile << "\n"; outfile << "\n"; // write times outfile << "\n"; outfile << "\n"; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->time << endl; } outfile << "\n"; // write radii outfile << "\n"; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->size << endl; } outfile << "\n"; // write normals outfile << "\n"; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->normal.X() << " " << iter->normal.Y() << " " << iter->normal.Z() << endl; } outfile << "\n"; // write (ex-)bond tags outfile << "\n"; for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->tag << endl; } outfile << "\n"; outfile << "\n"; // write empty cell block outfile << "\n"; outfile << "\n"; outfile << ""; outfile << "\n"; outfile << "\n"; outfile << "\n"; outfile << "\n"; outfile << "\n"; // write footer outfile << "\n"; outfile << "\n"; outfile << "\n"; // close file outfile.close(); // if we have a plane, setup filename and write it if(with_plane){ ostringstream planefilename; planefilename << "plane_" << filename; writePlane(planefilename.str()); } } /*! write data as text file \param filename the filename */ void FracWriter::writeText(const string& filename) { // open file ofstream outfile(filename.c_str()); // write positions & times for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ outfile << iter->pos << " " << iter->size << " " << iter->time << " " << iter->normal << " " << iter->id1 << " " << iter->id2 << endl; } // close file outfile.close(); } /*! write data as text file \param filename the filename */ void FracWriter::writeParticleList(const string& filename) { // open file ofstream outfile(filename.c_str()); // write positions & times for(map::iterator iter=m_nbrk_map.begin(); iter!=m_nbrk_map.end(); iter++){ outfile << iter->first << " " << iter->second << endl; } // close file outfile.close(); } /*! write fracture distribution profile (y-direction) \param ymin minimum y-coordinate \param ymax maximum y-coordinate \nbin number of bins in the distribution \param filename the filename */ void FracWriter::writeProfile(double ymin,double ymax,int nbin,const string& filename) { // open file ofstream outfile(filename.c_str()); vector prof=vector(nbin,0.0); // calculate profile for(vector::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ int bnr=int(floor(nbin*((iter->pos.Y()-ymin)/(ymax-ymin)))); if((bnr>=0) && (bnrsize)*(iter->size); } } // write profile for(int i=0;i\n"; outfile << "\n"; outfile << "\n"; // write positions outfile << "\n"; outfile << "\n"; outfile << m_c1 << endl; outfile << m_c2 << endl; outfile << m_c3 << endl; outfile << m_c4 << endl; outfile << "\n"; outfile << "\n"; // write cells outfile << "\n"; outfile << "\n"; outfile << "0 1 2 3\n"; outfile << "\n"; outfile << "\n"; outfile << "4\n"; outfile << "\n"; outfile << "\n"; outfile << "9\n"; outfile << "\n"; outfile << "\n"; // write dummy cell data outfile << "\n"; outfile << "\n"; outfile << "1.0\n"; outfile << "\n"; outfile << "\n"; outfile << "\n"; outfile << "\n"; outfile << "\n"; // close file outfile.close(); } ./Tools/ExtractFractures/fracframe.cpp0000664000175000017500000002752012176660653017670 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "fracframe.h" //--- system includes --- #include #include #include #include using std::multimap; using std::map; using std::ifstream; using std::cout; using std::cerr; using std::endl; using std::istream_iterator; using std::back_inserter; //--- project includes --- #include "Foundation/vec3.h" FracFrame::FracFrame() {} bool FracFrame::cmp::operator()(const bdata& b1,const bdata& b2) { bool res=false; if(b1.id1!=b2.id1){ res=(b1.id1> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector FracFrame::get_filenames(const string& infilename, int version) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1)||(version==2) || (version==3)) { headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } /*! read connection data from file \param infilename the filename */ void FracFrame::readFile(const string& infilename) { int version=get_version(infilename.c_str()); vector filenames=get_filenames(infilename,version); // test for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; double rad; double mass; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force; posmap[id]=pos; radmap[id]=rad; } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift; posmap[id]=pos; radmap[id]=rad; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ datafile >> type; if(type=="Bonded"){ datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } datafile.close(); } } /*! read connection data involving particles with a particular tag from file \param infilename the filename \param rtag the particle tag */ void FracFrame::readFileTagged(const string& infilename, int rtag) { int version=get_version(infilename.c_str()); vector filenames=get_filenames(infilename,version); // test for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; double rad; double mass; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force; posmap[id]=pos; radmap[id]=rad; } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift; posmap[id]=pos; radmap[id]=rad; } } // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ datafile >> type; if(type=="Bonded"){ datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } datafile.close(); } } /*! read connection data from a file (rotational particles) \param infilename the filename \param init_pos if true, write fractures at _initial_ particle positions */ void FracFrame::readFileRot(const string& infilename,bool init_pos) { int version=get_version(infilename.c_str()); vector filenames=get_filenames(infilename,version); // test for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 angvel; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; if(init_pos) { posmap[id]=initpos; } else { posmap[id]=pos; } radmap[id]=rad; } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; if(init_pos) { posmap[id]=initpos; } else { posmap[id]=pos; } radmap[id]=rad; } } cout << "nr. of particles: " << posmap.size() << endl; // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ for (int j=0;j> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; cout << "nbond: " << nbond << endl; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; m_bonds.insert(bond); } } cout << "nr. of bonds is:" << m_bonds.size() << endl; datafile.close(); } } /*! read connection data involving particles with a particular tag from a file (rotational particles) \param infilename the filename \param rtag the particle tag */ void FracFrame::readFileRotTagged(const string& infilename,int rtag) { int version=get_version(infilename.c_str()); vector filenames=get_filenames(infilename,version); set idset; // set of ids of particles with the correct tag // test for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ ifstream datafile(iter->c_str()); vector pdata; // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 angvel; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; if(tag==rtag){ posmap[id]=pos; radmap[id]=rad; idset.insert(id); } } } else { Vec3 circ_shift; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; if(tag==rtag){ posmap[id]=pos; radmap[id]=rad; idset.insert(id); } } } cout << "nr. of particles: " << posmap.size() << endl; // get bonds int ngrp; int nbond; string type; datafile >> ngrp; if(version>0){ datafile >> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; cout << "nbond: " << nbond << endl; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; if((idset.find(bond.id1)!=idset.end()) || (idset.find(bond.id2)!=idset.end())){ m_bonds.insert(bond); } } } } else { // pre - V1 snapshot -> assume bondend pair IG datafile >> nbond; for(int i=0;i> bond.id1 >> bond.id2 >> bond.tag; if((idset.find(bond.id1)!=idset.end()) || (idset.find(bond.id2)!=idset.end())){ m_bonds.insert(bond); } } } cout << "nr. of bonds is:" << m_bonds.size() << endl; datafile.close(); } } /*! get the fracture as difference in the bonds between two frames \param F2 the newer frame */ vector FracFrame::getFrac(FracFrame& F2) { vector res; // debug output std::cout << "nr. of particles old: " << radmap.size() << " bonds: " << m_bonds.size() << std::endl; std::cout << "nr. of particles new: " << F2.radmap.size() << " bonds: " << F2.m_bonds.size() << std::endl; // find bonds in this but not in F2 for(set::const_iterator iter=m_bonds.begin(); iter!=m_bonds.end(); iter++){ if((F2.m_bonds).find(*iter)==(F2.m_bonds).end()){ fdata nfd; // cout << "bond [" << iter->first << "-" << iter->second << "] broken" << endl; // check if both particles are in new frame map::iterator op1=F2.radmap.find(iter->id1); if(op1==F2.radmap.end()) std::cout << "particle " << iter->id1 << " gone" << std::endl; map::iterator op2=F2.radmap.find(iter->id2); if(op2==F2.radmap.end()) std::cout << "particle " << iter->id2 << " gone" << std::endl; if((op1!=F2.radmap.end())&&(op2!=F2.radmap.end())){ // particle posn Vec3 pos1=F2.posmap[iter->id1]; Vec3 pos2=F2.posmap[iter->id2]; // particle rad double r1=F2.radmap[iter->id1]; double r2=F2.radmap[iter->id2]; // contact normal nfd.normal=(pos2-pos1).unit(); // contact pos. double compr=(pos2-pos1).norm()/(r1+r2); nfd.pos=pos1+r1*compr*nfd.normal; // size nfd.size=0.5*(r1+r2); nfd.id1=iter->id1; nfd.id2=iter->id2; nfd.tag=iter->tag; res.push_back(nfd); } } } return res; } ./Tools/ExtractFractures/main.cpp0000664000175000017500000001376212176660653016671 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /* -i inputfile_prefix -o outputfile_name -ip output fractures at _initial_ particle positions */ // --- System includes --- #include #include #include #include using std::cout; using std::cerr; using std::endl; using std::string; using std::ostringstream; // --- Project includes --- #include "fracframe.h" #include "fracwriter.h" #include "FitPlane.h" #include "frac_dist.h" #include "Geometry/Plane3D.h" int main(int argc,char** argv) { bool options_valid=true; bool is_rot=false; bool is_tagged=false; bool do_fitplane=false; bool write_distrib=false; bool write_profile=false; bool write_list=false; bool write_format_vtk=false; bool write_ip=false; string ofilename; string basefilename; string listbasename; string prof_file; int t0_frame=0; int tstart=0; int nt=0; int dt=0; int tag=0; double dist_min=0.0; double dist_max=0.0; double ymin=0.0, ymax=0.0; int prof_nbin=0; int dist_nbin=0; string dist_filename; // process args int args_read=1; while(args_readargs_read){ basefilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-tag"){ if(argc>args_read){ tag=atoi(argv[args_read+1]); is_tagged=true; args_read+=2; } else { options_valid=false; } } else if(option=="-t0"){ if(argc>args_read){ t0_frame=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-dist"){ if(argc>args_read+3){ write_distrib=true; dist_filename=string(argv[args_read+1]); dist_min=atof(argv[args_read+2]); dist_max=atof(argv[args_read+3]); dist_nbin=atoi(argv[args_read+4]); args_read+=5; } else { options_valid=false; } } else if(option=="-prof"){ if(argc>args_read+3){ write_profile=true; prof_file=string(argv[args_read+1]); ymin=atof(argv[args_read+2]); ymax=atof(argv[args_read+3]); prof_nbin=atoi(argv[args_read+4]); args_read+=5; } else { options_valid=false; } } else if(option=="-list"){ if(argc>args_read){ listbasename=string(argv[args_read+1]); write_list=true; args_read+=2; } else { options_valid=false; } } else if(option=="-rot"){ is_rot=true; args_read++; } else if(option=="-pl"){ do_fitplane=true; args_read++; } else if (option=="-vtk"){ write_format_vtk=true; args_read++; } else if (option=="-ip"){ write_ip=true; args_read++; } else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; if(nt<2){ options_valid=false; } } else { options_valid=false; } } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } // DO STUFF if(options_valid){ FracWriter FW; FracFrame F1; ostringstream infilename1; // make filename infilename1 << basefilename << "_t=" << tstart << "_0.txt"; if(is_tagged){ if(is_rot){ F1.readFileRotTagged(infilename1.str(),tag); } else { F1.readFileTagged(infilename1.str(),tag); } } else { if(is_rot){ F1.readFileRot(infilename1.str(),write_ip); } else { F1.readFile(infilename1.str()); } } for(int i=1;i newfrac=F1.getFrac(F2); F1=F2; if(write_distrib){ FracDist fd=FracDist(newfrac,dist_min,dist_max,dist_nbin); fd.write(dist_filename); } else { FW.addData(newfrac,tstart+i*dt); if (write_list) { ostringstream listfilename; listfilename << listbasename << "_t=" << tstart+i*dt << "_0.txt"; FW.writeParticleList(listfilename.str()); } if(do_fitplane){ Plane3D Pl=fitPlaneToFracture(newfrac); cout << "Normal: [" << Pl.getNormal() << "] Position: [" << Pl.getPos() << "]" << endl; cout << "Spanning vectors: [" << Pl.GetU() << "] [" << Pl.GetV() << "]" << endl; FW.addPlane(Pl); } } } if(!write_distrib){ if(write_profile){ FW.writeProfile(ymin,ymax,prof_nbin,prof_file); } else if (write_format_vtk) { FW.write(ofilename); } else { FW.writeText(ofilename); } } } return 0; } ./Tools/ExtractFractures/frac_dist.cpp0000664000175000017500000000376612176660653017706 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "frac_dist.h" //--- IO includes --- #include #include using std::ofstream; using std::endl; /*! \param data the fracture data (pos,dir,size) \param dmin distribution minimum \param dmax distribution maximum \param nbin nr. of bins for distribution */ FracDist::FracDist(const vector data ,double dmin,double dmax,int nbin) { m_dist=vector(nbin,0); m_dmin=dmin; m_dmax=dmax; m_nbin=nbin; m_ntotal=0; m_dx=(m_dmax-m_dmin)/double(m_nbin); for(vector::const_iterator iter1=data.begin(); iter1!=data.end(); iter1++){ Vec3 pos1=iter1->pos; for(vector::const_iterator iter2=iter1+1; iter2!=data.end(); iter2++){ Vec3 pos2=iter2->pos; double dist=(pos2-pos1).norm(); int idx=int(floor((dist-m_dmin)/m_dx)); m_ntotal++; if((idx>=0) && (idx #include #include #include #include #include #include using std::istream_iterator; using std::back_inserter; using std::ifstream; using std::vector; using std::map; using std::cerr; using std::cout; using std::endl; using std::floor; // --- project includes --- #include "Foundation/vec3.h" int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector get_filenames(const string& infilename, int version) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2) || (version==3)){ headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } /*! read snapshot and write y-profile of x-displacement \param infilename name of the input file (the *_0.txt) \param outfilename name of the output file \param ymin minimum of the y-range \param ymax maximum of the y-range \param nbin number of bins \param dir direction of binning : 0->x, 1->y, 2->z \param mintag minimum particle tag considered */ void read_and_write_profile_r(const string& infilename,const string& outfilename,double min,double max,int nbin, bool debug_on,bool grad,int dir,int mintag) { int version=get_version(infilename); if(version<2) { cerr << "snapshot version (" << version << ") < 2 - can't calculate displacements" << endl; } else { vector filenames=get_filenames(infilename,version); double binsize=(max-min)/double(nbin); vector mass_vec=vector(nbin,0.0); vector disp_vec=vector(nbin,0.0); for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); Vec3 pos,initpos,oldpos,vel,force,angvel,circ_shift; double rad,mass,q1,q2,q3,q4; int id,tag,npart; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; if(tag>=mintag){ double xdisp=pos.X()-(circ_shift.X()+initpos.X()); switch(dir){ case 0 : bin_idx=int(floor(pos.X()-min)/binsize); break; case 1 : bin_idx=int(floor(pos.Y()-min)/binsize); break; case 2 : bin_idx=int(floor(pos.Z()-min)/binsize); } // check validity of bin if((bin_idx>=0) && (bin_idx disp=vector(nbin,0.0);; for(int i=0;ix, 1->y, 2->z */ void read_and_write_profile_rel(const string& infilename1, const string& infilename2, const string& outfilename, double min, double max, int nbin, bool debug_on, bool grad, int dir) { int version=get_version(infilename1); if(version<2) { cerr << "snapshot version (" << version << ") < 2 - can't calculate displacements" << endl; } else { double binsize=(max-min)/double(nbin); // read 1st file vector filenames=get_filenames(infilename1,version); map posmap_1; // positions map dispmap_1; // displacements map massmap_1; // mass for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); Vec3 pos,initpos,oldpos,vel,force,angvel,circ_shift; double rad,mass,q1,q2,q3,q4; int id,tag,npart; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; double xdisp=pos.X()-(circ_shift.X()+initpos.X()); switch(dir){ case 0 : posmap_1[id]=pos.X();break; case 1 : posmap_1[id]=pos.Y();break; case 2 : posmap_1[id]=pos.Z(); } dispmap_1[id]=xdisp; massmap_1[id]=mass; } datafile.close(); } // read 2nd file filenames=get_filenames(infilename2,version); map posmap_2; // positions map dispmap_2; // displacements map massmap_2; // mass map rmap; // radius for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); Vec3 pos,initpos,oldpos,vel,force,angvel,circ_shift; double rad,mass,q1,q2,q3,q4; int id,tag,npart; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; double xdisp=pos.X()-(circ_shift.X()+initpos.X()); switch(dir){ case 0 : posmap_2[id]=pos.X();break; case 1 : posmap_2[id]=pos.Y();break; case 2 : posmap_2[id]=pos.Z(); } dispmap_2[id]=xdisp; massmap_2[id]=mass; rmap[id]=rad; } datafile.close(); } // binning vector disp_vec=vector(nbin,0.0); vector mass_vec=vector(nbin,0.0); for(map::iterator iter=posmap_2.begin(); iter!=posmap_2.end(); iter++){ int idx=iter->first; // calc min/max dims of sphere double xmin=iter->second-rmap[idx]; double xmax=iter->second+rmap[idx]; // get min/max bins int bin_idx_min=int(floor((xmin-min)/binsize)); bin_idx_min = bin_idx_min < 0 ? 0 : bin_idx_min; int bin_idx_max=int(floor((xmax-min)/binsize)); bin_idx_max= bin_idx_max > nbin-1 ? nbin-1 : bin_idx_max; // std::cerr << iter->second << " " << rmap[idx] << " " << xmin << " " << xmax << " - " << bin_idx_min << " " << bin_idx_max << std::endl; // calculate how much goes into which bin for(int i=bin_idx_min;i<=bin_idx_max;i++){ double bin_floor=double(i)*binsize+min; double bin_ceil=double(i+1)*binsize+min; if((xmin>bin_floor) && (xmaxbin_floor) && (xmax>bin_ceil)){ // lower cap // calc cap volume double h=xmin-bin_floor; double R=rmap[idx]; double vcap=1.0471976*h*h*(3*R-h); // 1/3*pi*h^2*(3R-h) double vsph=4.1887902*R*R*R; // 4/3*pi*R^3 // calc cap mass double mass=massmap_2[idx]*(vcap/vsph); mass_vec[i]+=mass; disp_vec[i]+=mass*(dispmap_2[idx]-dispmap_1[idx]); } else if ((xminbin_ceil)){ // segment //calc segment volume double h=binsize; double d=iter->second-bin_floor; double R=rmap[idx]; double vseg=3.1415927*h*(R*R-d*d-h*d-h*h/3.0); // pi*h*(R^2-h^2-hd-1/3h^2) double vsph=4.1887902*R*R*R; // 4/3*pi*R^3 // calc segment mass double mass=massmap_2[idx]*(vseg/vsph); mass_vec[i]+=mass; disp_vec[i]+=mass*(dispmap_2[idx]-dispmap_1[idx]); } else { // can't happen std::cerr << "impossible case, xmin=" << xmin << " xmax= " << xmax << " bin:" << bin_floor << " - " << bin_ceil << std::endl; } } } // generate profile vector disp=vector(nbin,0.0); for(int i=0;i filenames=get_filenames(infilename,version); int xcell=int(ceil((xmax-xmin)/cellsize)); double xcelldim=(xmax-xmin)/double(xcell); int ycell=int(ceil((ymax-ymin)/cellsize)); double ycelldim=(ymax-ymin)/double(ycell); int zcell=int(ceil((zmax-zmin)/cellsize)); double zcelldim=(zmax-zmin)/double(zcell); int ncell=xcell*ycell*zcell; std::cout << "grid dim: " << xcell << " , " << ycell << " , " << zcell << " total cells : " << ncell << std::endl; vector mass_vec=vector(ncell,0.0); vector disp_vec=vector(ncell,0.0); for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); Vec3 pos,initpos,oldpos,vel,force,angvel,circ_shift; double rad,mass,q1,q2,q3,q4; int id,tag,npart; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; double xdisp=pos.X()-(circ_shift.X()+initpos.X()); xbin_idx=int(floor(pos.X()-xmin)/xcelldim); ybin_idx=int(floor(pos.Y()-ymin)/ycelldim); zbin_idx=int(floor(pos.Z()-zmin)/zcelldim); // calc index if((xbin_idx>=0)&&(xbin_idx=0)&&(ybin_idx=0)&&(zbin_idx disp=vector(ncell,0.0);; for(int i=0;i filenames=get_filenames(infilename,version); int xcell=int(ceil((xmax-xmin)/cellsize)); double xcelldim=(xmax-xmin)/double(xcell); int ycell=int(ceil((ymax-ymin)/cellsize)); double ycelldim=(ymax-ymin)/double(ycell); int zcell=int(ceil((zmax-zmin)/cellsize)); double zcelldim=(zmax-zmin)/double(zcell); int ncell=xcell*ycell*zcell; std::cout << "grid dim: " << xcell << " , " << ycell << " , " << zcell << " total cells : " << ncell << std::endl; vector mass_vec=vector(ncell,0.0); for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); Vec3 pos,initpos,oldpos,vel,force,angvel,circ_shift; double rad,mass,q1,q2,q3,q4; int id,tag,npart; datafile >> npart; for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; xbin_idx=int(floor(pos.X()-xmin)/xcelldim); ybin_idx=int(floor(pos.Y()-ymin)/ycelldim); zbin_idx=int(floor(pos.Z()-zmin)/zcelldim); // calc index if((xbin_idx>=0)&&(xbin_idx=0)&&(ybin_idx=0)&&(zbin_idx using std::string; void read_and_write_profile_r(const string&,const string&,double,double,int,bool,bool,int,int); void read_and_write_profile_rel(const string&,const string&,const string&,double,double,int,bool,bool,int); void read_and_write_disp_grid(const string&,const string&,double,double,double,double,double,double,double,bool,int,int); void read_and_write_poros_grid(const string&,const string&,double,double,double,double,double,double,double); #endif // __READ_EXPROF_H ./Tools/ExtractProfile/Makefile.am0000664000175000017500000000163612176660653016734 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = profextract AM_CPPFLAGS += -I$(top_srcdir)/Foundation profextract_LDADD = \ $(top_builddir)/Foundation/libFoundation.la profextract_SOURCES = \ main.cpp \ read.cpp \ read.h ./Tools/ExtractProfile/main.cpp0000664000175000017500000001116012176660653016321 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include using std::cerr; using std::endl; using std::string; // --- project includes --- #include "read.h" int main(int argc,char** argv) { string infilename; string infilename2; string outfilename; int ret=0; int mintag=0; bool options_valid=true; bool debug_on=false; bool grad_on=false; bool poros_on=false; bool diff_on=false; double xmin=0.0,xmax=0.0; double ymin=0.0,ymax=0.0; double zmin=0.0,zmax=0.0; double csize=0.0; bool dim3_on=false; int nbin=0; int dir=0; int udim=0, gdim=0; // process args int args_read=1; while(args_readargs_read){ infilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-diff"){ if(argc>args_read+1){ infilename=string(argv[args_read+1]); infilename2=string(argv[args_read+2]); diff_on=true; args_read+=3; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ outfilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-debug"){ if(argc>=args_read){ debug_on=true; } else { options_valid=false; } args_read++; } else if(option=="-grad"){ if(argc>=args_read){ grad_on=true; } else { options_valid=false; } args_read++; }else if(option=="-b"){ if(argc>args_read+2){ ymin=atof(argv[args_read+1]); ymax=atof(argv[args_read+2]); nbin=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } }else if(option=="-grad_t"){ if(argc>args_read+1){ udim=atoi(argv[args_read+1]); gdim=atoi(argv[args_read+2]); args_read+=3; grad_on=true; } else { options_valid=false; } }else if(option=="-3d"){ if(argc>args_read+6){ xmin=atof(argv[args_read+1]); xmax=atof(argv[args_read+2]); ymin=atof(argv[args_read+3]); ymax=atof(argv[args_read+4]); zmin=atof(argv[args_read+5]); zmax=atof(argv[args_read+6]); csize=atof(argv[args_read+7]); dim3_on=true; args_read+=8; } else { options_valid=false; } }else if(option=="-poros"){ if(argc>args_read+6){ xmin=atof(argv[args_read+1]); xmax=atof(argv[args_read+2]); ymin=atof(argv[args_read+3]); ymax=atof(argv[args_read+4]); zmin=atof(argv[args_read+5]); zmax=atof(argv[args_read+6]); csize=atof(argv[args_read+7]); poros_on=true; args_read+=8; } else { options_valid=false; } }else if(option=="-dir"){ if(argc>args_read){ dir=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-mintag"){ if(argc>args_read){ mintag=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ if(dim3_on){ read_and_write_disp_grid(infilename,outfilename,xmin,xmax,ymin,ymax,zmin,zmax,csize,grad_on,udim,gdim); ret=0; } else if (poros_on) { read_and_write_poros_grid(infilename,outfilename,xmin,xmax,ymin,ymax,zmin,zmax,csize); ret=0; } else if (diff_on) { read_and_write_profile_rel(infilename,infilename2,outfilename,ymin,ymax,nbin,debug_on,grad_on,dir); } else { read_and_write_profile_r(infilename,outfilename,ymin,ymax,nbin,debug_on,grad_on,dir,mintag); ret=0; } } else { cerr << "Options invalid" << endl; ret=1; } return ret; } ./Tools/slip2vtk/0000775000175000017500000000000012176660653013515 5ustar vborosvboros./Tools/slip2vtk/slip2vtk2d.cpp0000664000175000017500000011110112176660653016220 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "slip2vtk2d.h" // --- STL includes --- #include #include #include #include using std::ostringstream; using std::map; using std::make_pair; using std::vector; // --- I/O includes --- #include using std::ofstream; using std::ifstream; // --- project includes --- #include "Foundation/vec3.h" /*! write VTK header \param outfile the output file \param nx \param nt \param x0 \param dx \param dt */ void write_vtk_header(ofstream& outfile, int nx, int nt, double x0,double dx, double dt) { outfile << "# vtk DataFile Version 2.0" << std::endl; outfile << "slip data" << std::endl; outfile << "ASCII" << std::endl; outfile << "DATASET RECTILINEAR_GRID" << std::endl; outfile << "DIMENSIONS " << nx << " " << nt << " 1 " << std::endl; outfile << "X_COORDINATES " << nx << " float" << std::endl; for(int i=0;i read_file_to_map(const string& filename) { map res; // open input file ifstream infile(filename.c_str()); // read data while(!infile.eof()){ Vec3 pos,disp; infile >> pos >> disp; if(!infile.fail()){ res.insert(make_pair(pos.X(),disp.X())); } } // close input file infile.close(); return res; } /*! read line of a RAW_SERIES file into map \param infile the input file \pos_vec vector of particle x-positions */ map read_line_to_map(ifstream& infile, const vector& pos_vec) { map res; // read data int ndata=pos_vec.size(); for(int i=0;i> disp; res.insert(make_pair(pos_vec[i],disp.X())); } return res; } /*! get displacement at given point from map (linear interpolation) \param x \param dispmap */ double get_disp_from_map_linear(const map& dispmap,double x) { double disp; map::const_iterator it1=dispmap.upper_bound(x); // the one "above" (x>px) // check if there is one "below" (x::const_iterator it2=it1; it2--; disp=it2->second+((x-it2->first)/(it1->first-it2->first))*(it1->second-it2->second); } else { disp=it1->second; } return disp; } /*! convert a number of file pairs containing particle displacements above/below a 1D fault in a 2D medium to a vtk-file (rect. grid) of the relative displacement \param infilebase_up base file name for data above the fault \param infilebase_down base file name for data below the fault \param outfilename file name for the putput file \param t0 \param nt \param dt \param tlen length of the output data in t-direction \param x0 minimum x-value \param x1 maximum x-value \param nx nr. of grid points in x */ void slip2vtk2d(const string& infilebase_up, const string& infilebase_down, const string& outfilename, int t0, int nt, int dt, double tlen, double x0, double x1, int nx) { std::cout << "slip2vtk2d" << std::endl; map upper_map,lower_map; ostringstream infilename_up,infilename_down; vector disp_old(nx); // open output file ofstream outfile(outfilename.c_str()); // write header write_vtk_header(outfile,nx,((nt-t0)/dt)-1 ,x0,(x1-x0)/double(nx),tlen/(double(nt))); // first ts -> fill up disp_old infilename_up << infilebase_up << "." << t0 << ".dat"; infilename_down << infilebase_down << "." << t0 << ".dat"; upper_map=read_file_to_map(infilename_up.str()); lower_map=read_file_to_map(infilename_down.str()); double dx=(x1-x0)/double(nx); for(int i=0;i upper_map,lower_map; vector disp_old(nx); // open output file ofstream outfile(outfilename.c_str()); // write header write_vtk_header(outfile,nx,((nt-t0)/dt)-1 ,x0,(x1-x0)/double(nx),tlen/(double(nt))); // first ts -> fill up disp_old infilename_up << infilebase_up << "." << t0 << ".dat"; infilename_down << infilebase_down << "." << t0 << ".dat"; upper_map=read_file_to_map(infilename_up.str()); lower_map=read_file_to_map(infilename_down.str()); double dx=(x1-x0)/double(nx); for(int i=0;i pos_up; vector pos_down; int np_up,np_down; // open "up" pos file ifstream pos_up_file(posfile_up.c_str()); // read data while(!pos_up_file.eof()){ Vec3 v; pos_up_file >> v; if(!pos_up_file.eof()){ pos_up.push_back(v.X()); } } np_up=pos_up.size(); // close file pos_up_file.close(); // open "down" pos file ifstream pos_down_file(posfile_down.c_str()); // read data while(!pos_down_file.eof()){ Vec3 v; pos_down_file >> v; if(!pos_down_file.eof()){ pos_down.push_back(v.X()); } } np_down=pos_down.size(); // close file pos_down_file.close(); cout << "found " << np_up << " particles up and " << np_down << " particles down" << endl; // --- read displacement data , output slip -- map upper_map,lower_map; // open disp files ifstream disp_up_file(infile_up.c_str()); ifstream disp_down_file(infile_down.c_str()); // open output file ofstream outfile(outfilename.c_str()); // write header write_vtk_header(outfile,nx,((nt-t0)/dt)-1 ,x0,(x1-x0)/double(nx),tlen/(double(nt))); // first ts -> fill up disp_old vector disp_old(nx); for(int t=0;t pos_up; vector pos_down; int np_up,np_down; // open "up" pos file ifstream pos_up_file(posfile_up.c_str()); // read data while(!pos_up_file.eof()){ Vec3 v; pos_up_file >> v; if(!pos_up_file.eof()){ pos_up.push_back(v.X()); } } np_up=pos_up.size(); // close file pos_up_file.close(); // open "down" pos file ifstream pos_down_file(posfile_down.c_str()); // read data while(!pos_down_file.eof()){ Vec3 v; pos_down_file >> v; if(!pos_down_file.eof()){ pos_down.push_back(v.X()); } } np_down=pos_down.size(); // close file pos_down_file.close(); cout << "found " << np_up << " particles up and " << np_down << " particles down" << endl; // --- read displacement data , output slip -- map upper_map,lower_map; // open disp files ifstream disp_up_file(infile_up.c_str()); ifstream disp_down_file(infile_down.c_str()); // open output file ofstream outfile(outfilename.c_str()); // first ts -> fill up disp_init vector disp_init(nx); vector disp_old(nx); vector disp_new(nx); for(int t=0;t<=t0;t++){ upper_map=read_line_to_map(disp_up_file,pos_up); lower_map=read_line_to_map(disp_down_file,pos_down); double dx=(x1-x0)/double(nx); for(int i=0;i pos_up; vector pos_down; int np_up,np_down; // open "up" pos file ifstream pos_up_file(posfile_up.c_str()); // read data while(!pos_up_file.eof()){ Vec3 v; pos_up_file >> v; if(!pos_up_file.eof()){ pos_up.push_back(v.X()); } } np_up=pos_up.size(); // close file pos_up_file.close(); // open "down" pos file ifstream pos_down_file(posfile_down.c_str()); // read data while(!pos_down_file.eof()){ Vec3 v; pos_down_file >> v; if(!pos_down_file.eof()){ pos_down.push_back(v.X()); } } np_down=pos_down.size(); // close file pos_down_file.close(); cout << "found " << np_up << " particles up and " << np_down << " particles down" << endl; // --- read displacement data , output slip -- map upper_map,lower_map; // open disp files ifstream disp_up_file(infile_up.c_str()); ifstream disp_down_file(infile_down.c_str()); // open output file ofstream outfile(outfilename.c_str()); // first ts -> fill up disp_old vector disp_old(nx); for(int t=0;t<=t0;t++){ upper_map=read_line_to_map(disp_up_file,pos_up); lower_map=read_line_to_map(disp_down_file,pos_down); double dx=(x1-x0)/double(nx); for(int i=0;i upper_map,lower_map; // open output file ofstream outfile(outfilename.c_str()); // ---- further steps ---- for(int t=t0+1;t upper_map,lower_map; ostringstream infilename_up,infilename_down; vector disp_old(nx); vector disp_field(nx*(nt-t0)/dt); // first ts -> fill up disp_old infilename_up << infilebase_up << "." << t0 << ".dat"; infilename_down << infilebase_down << "." << t0 << ".dat"; upper_map=read_file_to_map(infilename_up.str()); lower_map=read_file_to_map(infilename_down.str()); double dx=(x1-x0)/double(nx); for(int i=0;i threshold // open output file ofstream outfile(outfilename.c_str()); for(int i=0;ithr; iy++; } //outfile << endl; if(found){ outfile << i << " " << iy << endl; } } // close output file outfile.close(); } /*! get the time for each trace when the displacement first exceeds a given threshold using velocity files as input */ void vel2rf(const string& infilename_up, const string& infilename_down, const string& outfilename, int t0, int nt, int dt, int ofs, double x0, double x1, int nx, double px0, double px1, int npx, double thr) { map upper_map,lower_map; vector disp_old(nx); vector disp_field(nx*(nt-t0)/dt); vector posvec; // setup position vector double dpx=(px1-px0)/double(npx); for(int i=0;i fill up disp_old // read stuff before start of delayed file if(ofs>0){ // std::cout << "ofs = " << ofs << std::endl; for(int i=0;i threshold // open output file ofstream outfile(outfilename.c_str()); for(int i=0;ithr; iy++; } //outfile << endl; if(found){ outfile << i << " " << iy << endl; } } // close output file outfile.close(); } /*! get total slip distribution at time t from posfiles & RAW_SERIES \param infile_up file name for displacement data above the fault \param infile_down base file name for displacement data below the fault \param posfile_up file name for position data above the fault \param posfile_down base file name for position data below the fault \param outfilename file name for the putput file \param t0 start time \param te end time \param x0 minimum x-value \param x1 maximum x-value \param nx nr. of grid points in x */ void slip2d_total_rs(const string&infile_up, const string& infile_down, const string& posfile_up, const string& posfile_down, const string& outfilename, int t0, int te,double x0,double x1,int nx) { cout << "slip2d_total_rs: displacement from " << infile_up << " , " << infile_down << " pos. from " << posfile_up << " , " << posfile_down << endl; // --- get position vector, nr of. particles vector pos_up; vector pos_down; int np_up,np_down; // open "up" pos file ifstream pos_up_file(posfile_up.c_str()); // read data while(!pos_up_file.eof()){ Vec3 v; pos_up_file >> v; if(!pos_up_file.eof()){ pos_up.push_back(v.X()); } } np_up=pos_up.size(); // close file pos_up_file.close(); // open "down" pos file ifstream pos_down_file(posfile_down.c_str()); // read data while(!pos_down_file.eof()){ Vec3 v; pos_down_file >> v; if(!pos_down_file.eof()){ pos_down.push_back(v.X()); } } np_down=pos_down.size(); // close file pos_down_file.close(); cout << "found " << np_up << " particles up and " << np_down << " particles down" << endl; // --- read displacement data , output slip -- map upper_map,lower_map; // open disp files ifstream disp_up_file(infile_up.c_str()); ifstream disp_down_file(infile_down.c_str()); // open output file ofstream outfile(outfilename.c_str()); // first ts -> fill up disp_old vector disp_old(nx); upper_map=read_line_to_map(disp_up_file,pos_up); lower_map=read_line_to_map(disp_down_file,pos_down); double dx=(x1-x0)/double(nx); for(int i=0;i pos_up; vector pos_down; int np_up,np_down; // open "up" pos file ifstream pos_up_file(posfile_up.c_str()); // read data while(!pos_up_file.eof()){ Vec3 v; pos_up_file >> v; if(!pos_up_file.eof()){ pos_up.push_back(v.X()); } } np_up=pos_up.size(); // close file pos_up_file.close(); // open "down" pos file ifstream pos_down_file(posfile_down.c_str()); // read data while(!pos_down_file.eof()){ Vec3 v; pos_down_file >> v; if(!pos_down_file.eof()){ pos_down.push_back(v.X()); } } np_down=pos_down.size(); // close file pos_down_file.close(); cout << "found " << np_up << " particles up and " << np_down << " particles down" << endl; // --- read displacement data , output slip -- map upper_map,lower_map; // open disp files ifstream disp_up_file(infile_up.c_str()); ifstream disp_down_file(infile_down.c_str()); // open output file ofstream outfile(outfilename.c_str()); // first ts -> fill up disp_old vector disp_old(nx); upper_map=read_line_to_map(disp_up_file,pos_up); lower_map=read_line_to_map(disp_down_file,pos_down); double dx=(x1-x0)/double(nx); for(int i=0;i upper_map,lower_map; ostringstream infilename_up,infilename_down; vector disp_old(nx); // open output file ofstream outfile(outfilename.c_str()); // first ts -> fill up disp_old infilename_up << infilebase_up << "." << t0 << ".dat"; infilename_down << infilebase_down << "." << t0 << ".dat"; upper_map=read_file_to_map(infilename_up.str()); lower_map=read_file_to_map(infilename_down.str()); double dx=(x1-x0)/double(nx); for(int i=0;i using std::string; // 1D displacement data to 2D x-x_0(x,t) void slip2vtk2d(const string&,const string&,const string&,int,int,int,double,double,double,int); // 1D displacement data to 2D dx(x,t) void slip2vtk2d_rate(const string&,const string&,const string&,int,int,int,double,double,double,int); // 1D displacement data to 2D dx(x,t) using RAW_SERIES and initial pos. file void slip2vtk2d_rate_rs(const string&, const string&, const string&, const string&, const string&, int,int,int,double,double,double,int); // 1D displacement data to 2D dx(x,t) using RAW_SERIES and initial pos. file - output format raw void slip2raw2d_rs(const string&, const string&, const string&, const string&, const string&, int,int,int,double,double,int,int,int); // 1D displacement data to 2D dx(x,t) using series of RAW2 displacement files- output format raw void slip2raw2d(const string&, const string&, const string&, int,int,int,double,double,int); // 1D displacement data to 2D v(x,t) using RAW_SERIES and initial pos. file - output format raw void slip2raw2d_rate_rs(const string&, const string&, const string&, const string&, const string&, int,int,int,double,double,int); // 1D displacement data 1D dx(t) (x=x_0) void slip_x2slip_t2d(const string&,const string&,const string&,int,int,int,double); // get rupture from (displacement exceeding threshold) void slip2rf(const string&,const string&,const string&,int,int,int,double,double,int,double); // get total slip distribution at time t from posfiles & RAW_SERIES void slip2d_total_rs(const string&, const string&, const string&, const string&, const string&, int,int,double,double,int); // rupture from from velocity files void vel2rf(const string&,const string&,const string&,int,int,int,int,double,double,int,double,double,int,double); // moment rate function from displacement data using RAW_SERIES and initial pos. file void slip2momrate_rs(const string&, const string&, const string&, const string&, const string&, int,int,int,double,double,int); #endif // __SLIP2VTK2D_H ./Tools/slip2vtk/Makefile.am0000664000175000017500000000172112176660653015552 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## Makefile.am for slip2vtk include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = slip2vtk AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry slip2vtk_LDADD = \ $(top_builddir)/Foundation/libFoundation.la slip2vtk_SOURCES = \ main.cpp \ slip2vtk2d.h \ slip2vtk2d.cpp ./Tools/slip2vtk/main.cpp0000664000175000017500000001613212176660653015150 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::string; using std::cerr; using std::endl; using std::ostringstream; // --- project includes --- #include "slip2vtk2d.h" /* use -rs POS_UP POS_DOWN: use pos.files & RAW_SERIES files for disp -i DISP_UP DISP_DOWN: displacement files -o OUTPUT_FILE -ro OUTPUT_FILE raw output -shift SHIFT circular shift data if slip not centered (default 0) -vtk output vtk format -t T0 NT DT -x X0 X1 NX -tl t-dimension of outfput grid (if -vtk) -r: output rate -td T0 T1 : total slip beween t0 and t1 -rf get rupture fron (from displacements) -rfv THR OFS get rupture front from velocities -mr output moment rate file -ip STEPS interpolate steps between data points (only for raw output) default : 1 == no added points */ int main(int argc,char** argv) { string ofilename; string basefilename_up; string basefilename_down; string posfilename_up; string posfilename_down; bool options_valid=true; bool rate=false; bool convert_to_vtk=false; bool single_point=false; bool tlset=false; bool get_rf=false; bool get_rf_vel=false; bool use_raw_series=false; bool output_raw=false; bool get_total_disp=false; bool get_momrate=false; int tstart=0; int nt=0; int dt=0; int tend=0; double x0=0.0, px0=0.0; double x1=0.0, px1=0.0; double tlen=0.0; // length of the resulting data in t-direction double ofs=0.0; double thr=0.0; int shift=0; int nx=0, npx=0; int ips=1; // process args int args_read=1; while((args_readargs_read){ basefilename_up=string(argv[args_read+1]); basefilename_down=string(argv[args_read+2]); args_read+=3; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-ip"){ if(argc>args_read){ ips=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-shift"){ if(argc>args_read){ shift=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } }else if(option=="-ro"){ if(argc>args_read){ ofilename=argv[args_read+1]; output_raw=true; args_read+=2; } else { options_valid=false; } }else if(option=="-sp"){ if(argc>args_read){ x0=atof(argv[args_read+1]); single_point=true; args_read+=2; } else { options_valid=false; } }else if(option=="-rf"){ if(argc>args_read){ thr=atof(argv[args_read+1]); get_rf=true; args_read+=2; } else { options_valid=false; } }else if(option=="-rfv"){ if(argc>args_read+1){ thr=atof(argv[args_read+1]); ofs=atof(argv[args_read+2]); get_rf_vel=true; args_read+=3; } else { options_valid=false; } }else if(option=="-t"){ if(argc>args_read+2){ tstart=atoi(argv[args_read+1]); nt=atoi(argv[args_read+2]); dt=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-tl"){ if(argc>args_read){ tlen=atof(argv[args_read+1]); tlset=true; args_read+=2; } else { options_valid=false; } } else if(option=="-rs"){ if(argc>args_read){ posfilename_up=argv[args_read+1]; posfilename_down=argv[args_read+2]; use_raw_series=true; args_read+=3; } else { options_valid=false; } } else if(option=="-td"){ if(argc>args_read){ tstart=atoi(argv[args_read+1]); tend=atoi(argv[args_read+2]); get_total_disp=true; args_read+=3; } else { options_valid=false; } } else if(option=="-x"){ if(argc>args_read+2){ x0=atof(argv[args_read+1]); x1=atof(argv[args_read+2]); nx=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if(option=="-px"){ if(argc>args_read+2){ px0=atof(argv[args_read+1]); px1=atof(argv[args_read+2]); npx=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else if (option=="-r"){ rate=true; args_read++; } else if (option=="-mr"){ get_momrate=true; args_read++; } else if (option=="-vtk"){ convert_to_vtk=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(convert_to_vtk){ if(!tlset) tlen=double(nt); if(rate){ if(use_raw_series){ slip2vtk2d_rate_rs(basefilename_up,basefilename_down,posfilename_up,posfilename_down,ofilename,tstart,nt,dt,tlen,x0,x1,nx); } else { slip2vtk2d_rate(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,tlen,x0,x1,nx); } } else { slip2vtk2d(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,tlen,x0,x1,nx); } } else if (single_point){ slip_x2slip_t2d(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,x0); } else if (get_rf){ slip2rf(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,x0,x1,nx,thr); }else if (get_total_disp){ slip2d_total_rs(basefilename_up,basefilename_down,posfilename_up,posfilename_down,ofilename,tstart,tend,x0,x1,nx); }else if (output_raw){ if(use_raw_series){ if(rate){ slip2raw2d_rate_rs(basefilename_up,basefilename_down,posfilename_up,posfilename_down,ofilename,tstart,nt,dt,x0,x1,nx); } else { slip2raw2d_rs(basefilename_up,basefilename_down,posfilename_up,posfilename_down,ofilename,tstart,nt,dt,x0,x1,nx,shift,ips); } } else { slip2raw2d(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,x0,x1,nx); } } else if (get_rf_vel) { vel2rf(basefilename_up,basefilename_down,ofilename,tstart,nt,dt,ofs,x0,x1,nx,px0,px1,npx,thr); } else if (get_momrate) { slip2momrate_rs(basefilename_up,basefilename_down,posfilename_up,posfilename_down,ofilename,tstart,nt,dt,x0,x1,nx); } else { std::cout << "What do you want ??" << std::endl; } } ./Tools/pfcconvert/0000775000175000017500000000000012176660653014110 5ustar vborosvboros./Tools/pfcconvert/pfcc.h0000664000175000017500000000174012176660653015176 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PFCC_H #define __PFCC_H // --- project includes --- #include "../../Foundation/vec3.h" //--- STL includes --- #include using std::pair; void pfc_convert(const string&,const string&,const Vec3&,const Vec3&,int,int,int,double); pair read_bbx(const string&); #endif //__PFCC_H ./Tools/pfcconvert/pfcc.cpp0000664000175000017500000001027512176660653015534 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "pfcc.h" #include // --- STL includes --- #include #include #include using std::ifstream; using std::map; using std::vector; using std::make_pair; /*! convert pfc (vvf) file to geo \param infilename the input file \param outfilename the output file \param bbx_min the minimum corner of the bounding box \param bbx_max the maximum corner of the bounding box \param cx circular boundary cond. in x-dir \param cy circular boundary cond. in y-dir \param cz circular boundary cond. in z-dir \param scale scaling factor */ void pfc_convert(const string& infilename,const string& outfilename,const Vec3& bbx_min,const Vec3& bbx_max,int cx,int cy,int cz,double scale) { string ins; string::size_type idx; map colmap; ifstream infile(infilename.c_str()); // read 1st line -> dummy,nr.of particles infile >> ins; idx=ins.find(","); string s2=ins.substr(idx+1); int npart=atoi(s2.c_str()); cout << "npart= " << npart << endl; // read 2nd line (formatting) -> throw away infile >> ins; //read 3rd line (colum description) infile >> ins; // split into strings int count=0; string::size_type idx_old=0; do { idx=ins.find(",",idx_old); s2=ins.substr(idx_old,idx-idx_old); colmap.insert(make_pair(s2,count)); count++; idx_old=idx+1; } while (idx!=string::npos); // exctact locations of the interesting columns int id_col=colmap["EVENT_LABEL"]; int posx_col=colmap["PFC_BALL_LOCX"]; int posy_col=colmap["PFC_BALL_LOCY"]; int posz_col=colmap["PFC_BALL_LOCZ"]; int rad_col=colmap["PFC_BALL_RADIUS"]; int tag_col=colmap["PFC_BALL_ATTR"]; // write geo header ofstream outfile(outfilename.c_str()); outfile << "LSMGeometry 1.2" << endl; outfile << "BoundingBox " << bbx_min << " " << bbx_max << endl; outfile << "PeriodicBoundaries " << cx << " " << cy << " " << cz << endl; outfile << "Dimensions 3D" << endl; outfile << "BeginParticles" << endl; outfile << "Simple" << endl; outfile << npart << endl; vector temp(count); for(int ipart=0;ipart> temp[j]; } int pid=atoi((temp[id_col]).c_str()); Vec3 pos=Vec3(atof((temp[posx_col]).c_str()),atof((temp[posy_col]).c_str()),atof((temp[posz_col]).c_str())); double rad=atof((temp[rad_col]).c_str()); int tag=atoi((temp[tag_col]).c_str()); // write geo line outfile << pos << " " << rad << " " << pid << " " << tag << endl; } // write geo footer outfile << "EndParticles" << endl; outfile << "BeginConnect" << endl; outfile << "0" << endl; outfile << "EndConnect" << endl; // close files outfile.close(); infile.close(); } /*! read bounding box file */ pair read_bbx(const string& filename) { Vec3 min,max; double xmin=0.0,ymin=0.0,zmin=0.0; double xmax=0.0,ymax=0.0,zmax=0.0; double tmp=0.0; string id,dummy; ifstream infile(filename.c_str()); for(int i=0;i<6;i++){ infile >> id >> dummy >> tmp; if(id=="wx1"){ xmax=tmp; } else if(id=="wx2"){ xmin=tmp; } else if(id=="wy1"){ ymax=tmp; } else if(id=="wy2"){ ymin=tmp; } else if(id=="wz1"){ zmax=tmp; } else if(id=="wz2"){ zmin=tmp; } } infile.close(); if (xmin>xmax) { tmp=xmin;xmin=xmax;xmax=tmp; } if (ymin>ymax) { tmp=ymin;ymin=ymax;ymax=tmp; } if (zmin>zmax) { tmp=zmin;zmin=zmax;zmax=tmp; } min=Vec3(xmin,ymin,zmin); max=Vec3(xmax,ymax,zmax); return make_pair(min,max); } ./Tools/pfcconvert/Makefile.am0000664000175000017500000000165412176660653016152 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = pfc2geo AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/Geometry pfc2geo_LDADD = \ $(top_builddir)/Foundation/libFoundation.la pfc2geo_SOURCES = \ main.cpp \ pfcc.h \ pfcc.cpp ./Tools/pfcconvert/main.cpp0000664000175000017500000000503012176660653015536 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include #include #include using std::cout; using std::cerr; using std::endl; using std::string; using std::ostringstream; // --- project includes --- #include "pfcc.h" #include "../../Foundation/vec3.h" int main(int argc,char** argv) { string infilename; string ofilename; string bbxfilename; int ret=0; Vec3 bbx_min,bbx_max; int cx=0,cy=0,cz=0; double scale=0.0; bool options_valid=true; // process args int args_read=1; while(args_readargs_read){ infilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ ofilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-bbx"){ if(argc>args_read){ bbxfilename=argv[args_read+1]; args_read+=2; } else { options_valid=false; } } else if(option=="-scale"){ if(argc>args_read){ scale=atof(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-circ"){ if(argc>args_read+3){ cx=atoi(argv[args_read+1]); cy=atoi(argv[args_read+2]); cz=atoi(argv[args_read+3]); args_read+=4; } else { options_valid=false; } } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ pair bbx=read_bbx(bbxfilename); cout << "bounding box: " << bbx.first << " , " << bbx.second << endl; pfc_convert(infilename,ofilename,bbx.first,bbx.second,cx,cy,cz,scale); ret=0; } else { ret=1; } return ret; } ./Tools/ExtractStrain/0000775000175000017500000000000012176660653014532 5ustar vborosvboros./Tools/ExtractStrain/SnapFileHelp.cpp0000664000175000017500000000466112176660653017557 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "SnapFileHelp.h" // --- Project includes --- #include "Foundation/vec3.h" // --- STL includes --- #include #include #include using std::istream_iterator; using std::back_inserter; using std::ifstream; using std::make_pair; using std::set; int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector get_filenames(const string& infilename, int version) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2) || (version==3)){ headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } ./Tools/ExtractStrain/CMakeLists.txt0000664000175000017500000000044412176660653017274 0ustar vborosvborosFILE(GLOB SRC "*.cpp") #=========================================================== INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/ntable/src) ADD_EXECUTABLE(strainextract ${SRC}) TARGET_LINK_LIBRARIES(strainextract Foundation) INSTALL(TARGETS strainextract DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/ExtractStrain/DataExtractor.cpp0000664000175000017500000001665712176660653020022 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "DataExtractor.h" #include "SnapFileHelp.h" // --- Project includes --- #include "ntable/src/handle.h" // --- std. includes --- #include using std::atan; using std::sqrt; // --- IO includes --- #include using std::ifstream; using std::ofstream; /*! constructor \param x nr. of grid points in x-direction \param y nr. of grid points in y-direction \param z nr. of grid points in z-direction \param range grid spacing \param p0_global minimal corner (origin) of the global search space */ DataExtractor::DataExtractor(int x,int y,int z,double range,const Vec3& p0_global): m_data(x,y,z,range,0.0,p0_global,0,0,0) { } /*! read snapshot \param filename the name of the "metadata" file, usually *_0.txt */ void DataExtractor::read(const string& infilename) { ifstream headerfile(infilename.c_str()); int version=get_version(infilename); vector filenames=get_filenames(infilename,version); // get main files for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 force; Vec3 vel; Vec3 angvel; Vec3 circ_shift; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; DataParticle dp=DataParticle(pos,initpos,rad,id); m_data.insert(dp); } } else { for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; DataParticle dp=DataParticle(pos,initpos,rad,id); m_data.insert(dp); } } datafile.close(); } std::cout << "inserted " << m_data.size() << " particles " << std::endl; // m_data.build(); } /*! write tensor data as unstructured grid VTK-XML file \param filename the name of the output file \param dataname the name of the data in the VTK file */ void DataExtractor::writeTensorDataVtk(const string& filename,const string& dataname) { } /*! write scalar data as unstructured grid VTK-XML file \param filename the name of the output file \param dataname the name of the data in the VTK file */ void DataExtractor::writeScalarDataVtk(const string& filename,const string& dataname) { ofstream vtkfile(filename.c_str()); // write the file // write header vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(NeighborTable::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ vtkfile << iter->getPos() << " "; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(NeighborTable::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ vtkfile << iter->getRad() << " "; } vtkfile << "\n"; vtkfile << "\n"; // data vtkfile << "\n"; vtkfile << "\n"; for(NeighborTable::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ vtkfile << iter->getScalarData() << " "; } vtkfile << "\n"; vtkfile << "\n"; // write empty cell block vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close file vtkfile.close(); } /*! extract best fit strain tensors from the data and write the result into the tensor data member of the particles \param rad the search radius for the neighbour particles */ void DataExtractor::StrainToTensorData(double rad) { // for each particle for(NeighborTable::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ // get list of neighbours T_Handle::particlelist> plist=m_data.getParticlesNearPoint(iter->getPos()); std::cout << "pos: " << iter->getPos() << " list size : " << plist->size() << std::endl; if(plist->size()>3){ // init sums Matrix3 M; Vec3 Su,Sv,Sw; // for each neighbour for(NeighborTable::particlelist::iterator n_iter=plist->begin(); n_iter!=plist->end(); n_iter++){ // get relative position & displacement Vec3 disp=(*n_iter)->getDisplacement()-iter->getDisplacement(); Vec3 rpos=(*n_iter)->getPos()-iter->getPos(); // --- udate sums // M M(0,0)+=rpos.X()*rpos.X(); M(0,1)+=rpos.X()*rpos.Y(); M(0,2)+=rpos.X()*rpos.Z(); M(1,1)+=rpos.Y()*rpos.Y(); M(1,2)+=rpos.Y()*rpos.Z(); M(2,2)+=rpos.Z()*rpos.Z(); // Su,v,w Su+=disp.X()*rpos; Sv+=disp.Y()*rpos; Sw+=disp.Z()*rpos; } // make M symmetric M(1,0)=M(0,1); M(2,0)=M(0,2); M(2,1)=M(1,2); // solve equations to get displacement gradient tensor components Vec3 Du=M.solve(Su); Vec3 Dv=M.solve(Sv); Vec3 Dw=M.solve(Sw); // make deformation gradient tensor Matrix3 A; A(0,0)=Du.X()+1; A(0,1)=Du.Y(); A(0,2)=Du.Z(); A(1,0)=Dv.X(); A(1,1)=Dv.Y()+1; A(1,2)=Dv.Z(); A(2,0)=Dw.X(); A(2,1)=Dw.Y(); A(2,2)=Dw.Z()+1; // right Cauchy-Green deformation tensor Matrix3 C=A.trans()*A; // write to tensor data member of the particle iter->setTensorData(C); } } } /*! write maximum shear strain to scalar data member. Needs strain tensor calculation done before */ void DataExtractor::MaxShearToScalarData() { for(NeighborTable::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ // get eigenvalues of tensor data Vec3 D1,D2,D3; double e1,e2,e3; (iter->getTensorData()).eigen(D1,D2,D3,e1,e2,e3); // set scalar data to max shear strain iter->setScalarData(atan(sqrt(e3/e1))); } } ./Tools/ExtractStrain/DataParticle.cpp0000664000175000017500000000157212176660653017600 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "DataParticle.h" DataParticle::DataParticle(const Vec3& pos,const Vec3& initpos,double rad,int id) { m_pos=pos; m_initpos=initpos; m_rad=rad; m_id=id; } DataParticle::~DataParticle() {} ./Tools/ExtractStrain/SnapFileHelp.h0000664000175000017500000000154012176660653017215 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- STL includes --- #include #include using std::vector; using std::string; int get_version(const string&); vector get_filenames(const string&, int); ./Tools/ExtractStrain/Makefile.am0000664000175000017500000000202612176660653016566 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = strainextract AM_CPPFLAGS += -I$(top_srcdir)/Foundation -I$(top_srcdir)/ntable/src strainextract_LDADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/ntable/src/libntable.la strainextract_SOURCES = \ main.cpp \ DataParticle.cpp \ DataExtractor.cpp \ SnapFileHelp.cpp ./Tools/ExtractStrain/DataParticle.h0000664000175000017500000000337212176660653017245 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- Project includes --- #include "vec3.h" #include "Matrix3.h" /*! \class DataParticle \brief helper class for a minimal particles just containing the data needed for strain extraction */ class DataParticle { private: Vec3 m_pos; Vec3 m_initpos; double m_rad; int m_id; // data Matrix3 m_tensor_data; double m_scalar_data; public: DataParticle(const Vec3&,const Vec3&,double,int); ~DataParticle(); inline Vec3 getPos() const {return m_pos;}; inline double getRad() const {return m_rad;}; inline Vec3 getDisplacement() const{return m_pos-m_initpos;}; inline int getID() const {return m_id;}; inline bool isFlagged() const {return false;}; inline void setFlag(){}; inline void setTensorData(const Matrix3& M){m_tensor_data=M;}; inline void setTensorData(int i, int j, double d){m_tensor_data(i,j)=d;}; inline Matrix3 getTensorData() const {return m_tensor_data;}; inline double getTensorData(int i,int j){return m_tensor_data(i,j);}; inline void setScalarData(double d){m_scalar_data=d;}; inline double getScalarData(){return m_scalar_data;}; }; ./Tools/ExtractStrain/main.cpp0000664000175000017500000000505512176660653016167 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- System includes --- #include #include using std::cerr; using std::endl; using std::string; // --- project includes --- #include "DataExtractor.h" int main(int argc,char** argv) { string infilename; string outfilename; string dataname; int ret; int xdim=0, ydim=0, zdim=0; double gsize=0.0, srange=0.0; bool options_valid=true; bool debug_on=false; // process args int args_read=1; while(args_readargs_read){ infilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-o"){ if(argc>args_read){ outfilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-strain"){ if(argc>args_read){ srange=atof(argv[args_read+1]); dataname="strain"; args_read+=2; } else { options_valid=false; } } else if(option=="-grid"){ if(argc>args_read+3){ xdim=atoi(argv[args_read+1]); ydim=atoi(argv[args_read+2]); zdim=atoi(argv[args_read+3]); gsize=atof(argv[args_read+4]); args_read+=5; } else { options_valid=false; } } else if(option=="-debug"){ if(argc>=args_read){ debug_on=true; } else { options_valid=false; } args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ DataExtractor D(xdim,ydim,zdim,gsize,Vec3(0.0,0.0,0.0)); D.read(infilename); D.StrainToTensorData(srange); D.MaxShearToScalarData(); D.writeScalarDataVtk(outfilename,dataname); ret=0; } else { cerr << "Options invalid" << endl; ret=1; } return ret; } ./Tools/ExtractStrain/DataExtractor.h0000664000175000017500000000230212176660653017445 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // --- project includes --- #include "DataParticle.h" #include "ntable.h" /*! \class DataExtractor \brief class for the extraction of data from snapshots */ class DataExtractor { private: NeighborTable m_data; public: DataExtractor(int,int,int,double,const Vec3&); // I/O void read(const string&); void writeTensorDataVtk(const string&,const string&); void writeScalarDataVtk(const string&,const string&); // data extraction void StrainToTensorData(double); void MaxShearToScalarData(); }; ./Tools/ExtractGrains/0000775000175000017500000000000012176660653014515 5ustar vborosvboros./Tools/ExtractGrains/CMakeLists.txt0000664000175000017500000000042412176660653017255 0ustar vborosvboros#=========================================================== ADD_EXECUTABLE(grainextract main.cpp graph.cpp readSnap.cpp probdist.cpp Frac.cpp Triangle2d.cpp) TARGET_LINK_LIBRARIES(grainextract Foundation) INSTALL(TARGETS grainextract DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Tools/ExtractGrains/Triangle2d.cpp0000664000175000017500000000417512176660653017223 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Triangle2d.h" #include Triangle2D::Triangle2D(const Vec3& p0,const Vec3& p1,const Vec3& p2,int id):m_p0(p0),m_p1(p1),m_p2(p2),m_id(id) {} bool Triangle2D::isIn(const Vec3& P) const { bool res; int icount=1; // get intersection with 0-1edge double dy0=P.Y()-m_p0.Y(); double dy1=P.Y()-m_p1.Y(); double dy2=P.Y()-m_p2.Y(); // std::cout << "dy0,dy1,dy2 : " << dy0 << " , " << dy1 << " , " << dy2 << std::endl; if(dy0*dy1<0){ // get x-coord. of intersection double x=m_p0.X()+dy0*((m_p1.X()-m_p0.X())/(m_p1.Y()-m_p0.Y())); //std::cout << "x0 : " << x << std::endl; if(P.X()>x) { icount=icount*2; } else { icount=icount*-2; } } // set intesection with 0-2 edge if(dy0*dy2<0){ // get x-coord. of intersection double x=m_p0.X()+dy0*((m_p2.X()-m_p0.X())/(m_p2.Y()-m_p0.Y())); // std::cout << "x1 : " << x << std::endl; if(P.X()>x) { icount=icount*2; } else { icount=icount*-2; } } // set intesection with 1-2 edge if(dy1*dy2<0){ // get x-coord. of intersection double x=m_p1.X()+dy1*((m_p2.X()-m_p1.X())/(m_p2.Y()-m_p1.Y())); // std::cout << "x2 : " << x << std::endl; if(P.X()>x) { icount=icount*2; } else { icount=icount*-2; } } // check result : if we have 2 intersections and the point is once left & once right , we get 1, -2, 2 -> -4 if (icount==-4){ res=true; } else { res=false; } return res; } ./Tools/ExtractGrains/readSnap.h0000664000175000017500000000206312176660653016424 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __READSNAP_H #define __READSNAP_H // --- STL incldes --- #include using std::string; // --- Project includes --- #include "graph.h" Graph readSnap(const string&,int,int,int btag=-1); void readSnap(const string&,int,int,Graph&,int btag=-1); Graph readGeo(const string&,int,int,int btag=-1); void readGeo(const string&,int,int,Graph&,int btag=-1); #endif // __READSNAP_H ./Tools/ExtractGrains/readSnap.cpp0000664000175000017500000002733712176660653016772 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "readSnap.h" #include #include #include using std::istream_iterator; using std::back_inserter; using std::ifstream; using std::make_pair; using std::set; //--- Project includes --- #include "Foundation/vec3.h" int get_version(const string& infilename) { string dummystring; int version; ifstream headerfile(infilename.c_str()); // read token headerfile >> dummystring; if(dummystring=="V"){ // if V -> new version headerfile >> version ; cout << "version : " << version << endl; } else { cout << "pre- V.1 version" << endl; version=0; } headerfile.close(); return version; } vector get_filenames(const string& infilename, int version) { cout << "infilename : " << infilename << endl; ifstream headerfile(infilename.c_str()); float dummy,xmax,ymax,zmax,xmin,ymin,zmin; vector filenames; string dummystring; if(version==0){ headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else if ((version==1) || (version==2) || (version==3)){ headerfile >> dummystring >> dummy; headerfile >> dummy >> dummy >> dummy; headerfile >> dummystring >> dummy; } else { cerr << "unknown checkpoint version " << version << endl; } // get bounding box headerfile >> dummystring; headerfile >> xmin >> ymin >> zmin >> xmax >> ymax >> zmax ; // ignore periodic bdry headerfile >> dummystring >> dummy >> dummy >> dummy; // ignore dimension headerfile >> dummystring >> dummystring; // get file names copy(istream_iterator(headerfile),istream_iterator(),back_inserter(filenames)); headerfile.close(); cout << "nr. of filenames: " << filenames.size() << endl; return filenames; } /*! read snapshot and create a graph from the data \param infilename the name of the header file of the snapshot, i.e. *_0.txt \param mintag the smallest particle tag considered \param btag if btag!= -1, consider only bonds tagged with btag */ Graph readSnap(const string& infilename,int mintag,int maxtag,int btag) { ifstream headerfile(infilename.c_str()); Graph g; //float dummy=0.0,xmax=0.0,ymax=0.0,zmax=0.0,xmin=0.0,ymin=0.0,zmin=0.0; string dummystring; set idset; set > edgeset; int version=get_version(infilename); vector filenames=get_filenames(infilename,version); // get main files for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 force; Vec3 vel; Vec3 angvel; Vec3 circ_shift; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; std::cerr << "parts :" << npart << std::endl; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; // if correct tag -> add id to set if((tag>=mintag) && (tag<=maxtag)) { idset.insert(id); g.setVertexData(id,pdata(tag,mass,pos,rad,vel,angvel)); } } } else { for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; // if correct tag -> add id to set if((tag>=mintag) && (tag <= maxtag)){ idset.insert(id); g.setVertexData(id,pdata(tag,mass,pos,rad,vel,angvel)); } } } // get bonds int ngroup; int nbond; int p1,p2,bondtag; string type; datafile >> ngroup; std::cerr << "groups :" << ngroup << std::endl; if(version>0){ for(int i=0;i> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; std::cerr << "bonds :" << nbond << std::endl; for(int j=0;j> p1 >> p2 >> bondtag; if((btag==-1) || (bondtag==btag)){ // if bond tag fits or is ignored if((idset.find(p1)!=idset.end()) && (idset.find(p2)!=idset.end())){ edgeset.insert(make_pair(p1,p2)); } else { // std::cerr << "bond with missing particle: " << p1 << " - " << p2 << std::endl; } } } } } } else { // pre - V1 snapshot -> assume bondend pair IG for(int i=0;i> nbond; for(int j=0;j> p1 >> p2 >> btag; if((btag==-1) || (bondtag==btag)){ // if bond tag fits or is ignored if((idset.find(p1)!=idset.end()) && (idset.find(p2)!=idset.end())){ edgeset.insert(make_pair(p1,p2)); } } } } } } for(set >::iterator iter=edgeset.begin(); iter!=edgeset.end(); iter++){ g.insert(*iter); } cout << "size of idset: " << idset.size() << " size of edgeset : " << edgeset.size() << endl; cout << "nr. of vertices and edges: " << g.numV() << " , " << g.numE() << endl; g.removeDoubles(); cout << "nr. of vertices and edges after removal of doubles: " << g.numV() << " , " << g.numE() << endl; cout << endl; return g; } /*! read snapshot into existing graph \param infilename the name of the header file of the snapshot, i.e. *_0.txt \param mintag the smallest particle tag considered \param g the existing graph \param btag if btag!= -1, consider only bonds tagged with btag */ void readSnap(const string& infilename,int mintag, int maxtag, Graph& g, int btag) { ifstream headerfile(infilename.c_str()); std::cerr << "bond tag: " << btag << std::endl; //float dummy=0.0,xmax=0.0,ymax=0.0,zmax=0.0,xmin=0.0,ymin=0.0,zmin=0.0; string dummystring; set idset; set > edgeset; int version=get_version(infilename); vector filenames=get_filenames(infilename,version); // get main files for(vector::iterator iter=filenames.begin(); iter!=filenames.end(); iter++){ cout << *iter << endl; ifstream datafile(iter->c_str()); // get particles int npart; Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 force; Vec3 vel; Vec3 angvel; Vec3 circ_shift; double rad; double mass; double q1,q2,q3,q4; int id; int tag; datafile >> npart; std::cerr << "parts :" << npart << std::endl; if(version<2){ for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> q1 >> q2 >> q3 >> q4 >> angvel; // if correct tag -> add id to set if((tag>=mintag) && (tag <= maxtag)) { idset.insert(id); g.setVertexData(id,pdata(tag,mass,pos,rad,vel,angvel)); } } } else { for(int i=0;i> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circ_shift >> q1 >> q2 >> q3 >> q4 >> angvel; // if correct tag -> add id to set if((tag>=mintag) && (tag <= maxtag)){ idset.insert(id); g.setVertexData(id,pdata(tag,mass,pos,rad,vel,angvel)); } } } // get bonds int ngroup; int nbond; int p1,p2,bondtag; string type; datafile >> ngroup; std::cerr << "groups :" << ngroup << std::endl; if(version>0){ for(int i=0;i> type; if((type=="Bonded") || (type=="RotBonded")){ datafile >> nbond; std::cerr << "bonds :" << nbond << std::endl; for(int j=0;j> p1 >> p2 >> bondtag; if((btag==-1) || (bondtag==btag)){ // if bond tag fits or is ignored edgeset.insert(make_pair(p1,p2)); } } } } } else { // pre - V1 snapshot -> assume bondend pair IG for(int i=0;i> nbond; for(int j=0;j> p1 >> p2 >> bondtag; if((btag==-1) || (bondtag==btag)){ // if bond tag fits or is ignored if((idset.find(p1)!=idset.end()) && (idset.find(p2)!=idset.end())){ edgeset.insert(make_pair(p1,p2)); } } } } } } for(set >::iterator iter=edgeset.begin(); iter!=edgeset.end(); iter++){ if((idset.find(iter->first)!=idset.end()) && (idset.find(iter->second)!=idset.end())){ g.insert(*iter); } } cout << "size of idset: " << idset.size() << " size of edgeset : " << edgeset.size() << endl; cout << "nr. of vertices and edges: " << g.numV() << " , " << g.numE() << endl; g.removeDoubles(); cout << "nr. of vertices and edges after removal of doubles: " << g.numV() << " , " << g.numE() << endl; cout << endl; } /*! Read geometry file and create a graph from the data \param infilename the name of the geometry file \param mintag the smallest particle tag considered \param btag if btag!= -1, consider only bonds tagged with btag */ Graph readGeo(const string& infilename,int mintag,int maxtag,int btag) { Graph g; return g; } /*! Read geometry file into existing graph \param infilename the name of the geometry file \param mintag the smallest particle tag considered \param g the existing graph \param btag if btag!= -1, consider only bonds tagged with btag */ void readGeo(const string& infilename,int mintag,int maxtag,Graph& g,int btag) { string dummy; Vec3 pos; double rad; int nparts,nbonds; int id; int tag; set idset; set > edgeset; // open file ifstream ifile(infilename.c_str()); // read and forget 6 lines ifile >> dummy >> dummy; ifile >> dummy >> dummy >> dummy >> dummy >> dummy >> dummy >> dummy ; ifile >> dummy >> dummy >> dummy >> dummy ; ifile >> dummy >> dummy; ifile >> dummy; ifile >> dummy; // number of particles ifile >> nparts; // read particles std::cout << "nr. of particles " << nparts << std::endl; for(int i=0;i> pos >> rad >> id >> tag; // if correct tag -> add id to set if((tag>=mintag) && (tag <=maxtag)){ idset.insert(id); double mass=(4.0/3.0)*3.14159*rad*rad*rad; g.setVertexData(id,pdata(tag,mass,pos,rad,Vec3(0.0,0.0,0.0),Vec3(0.0,0.0,0.0))); } } // read bonds ifile >> dummy >> dummy; ifile >> nbonds; std::cout << "nr. of bonds " << nbonds << std::endl; int p1,p2,bondtag; for(int j=0;j> p1 >> p2 >> bondtag; if((btag==-1) || (bondtag==btag)){ // if bond tag fits or is ignored if((idset.find(p1)!=idset.end()) && (idset.find(p2)!=idset.end())){ edgeset.insert(make_pair(p1,p2)); } else { std::cout << "no insert: " << p1 << " [" << (idset.find(p1)!=idset.end()) << " " << p2 << " [" << (idset.find(p2)!=idset.end()) << "]" << std::endl; } } } for(set >::iterator iter=edgeset.begin(); iter!=edgeset.end(); iter++){ if((idset.find(iter->first)!=idset.end()) && (idset.find(iter->second)!=idset.end())){ g.insert(*iter); } } cout << "size of idset: " << idset.size() << " size of edgeset : " << edgeset.size() << endl; cout << "nr. of vertices and edges: " << g.numV() << " , " << g.numE() << endl; g.removeDoubles(); cout << "nr. of vertices and edges after removal of doubles: " << g.numV() << " , " << g.numE() << endl; cout << endl; // close file ifile.close(); } ./Tools/ExtractGrains/graph.cpp0000664000175000017500000010427512176660653016333 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "graph.h" #include "Matrix3.h" #include "Triangle2d.h" #include #include #include #include #include using std::pow; using std::cout; using std::cerr; using std::endl; using std::sort; using std::multimap; using std::make_pair; using std::ostringstream; using std::ofstream; // --- #include "probdist.h" Graph::Graph() {} Graph::~Graph() {} /*! get number of vertices */ int Graph::numV() const { return m_data.size(); } /*! get number of egdes */ int Graph::numE() const { int nedges=0; for(map >::const_iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ nedges+=iter->second.size(); } return nedges/2; } /*! insert a new edge \param E the edge */ void Graph::insert(const Edge& E) { // check if the id's are inside // if((E.i \param p the edge */ void Graph::insert(const pair& p) { // check if the id's are inside // if((p.first >::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ iter->second.sort(); iter->second.unique(); } } void Graph::remove(const Edge& E) { } bool Graph::isEdge(int i,int j) { list::iterator iter=find(m_data[i].begin(),m_data[i].end(),j); return (iter!=m_data[i].end()); } int Graph::getGrainID(int i) const { int res; map::const_iterator it=cid.find(i); if(it!=cid.end()){ res=it->second; } else { res=-1; } return res; } double Graph::getParticleMass(int i) const { double res; map::const_iterator it=m_vertex_data.find(i); if(it!=m_vertex_data.end()){ res=it->second.mass; } else { res=0.0; } return res; } Graph::adjIterator Graph::IterBegin(int i) { return m_data[i].begin(); } Graph::adjIterator Graph::IterEnd(int i) { return m_data[i].end(); } void Graph::makeConnComp() { ccnt=1; for(map >::iterator iter=m_data.begin(); iter!=m_data.end(); iter++){ if(cid[iter->first]==0){ //ccR(iter->first); dfsIter(iter->first); ccnt++; } } cout << ccnt-1 << " components found" << endl; } void Graph::ccR(int i) { cid[i]=ccnt; for(list::iterator iter=m_data[i].begin(); iter!=m_data[i].end(); iter++){ if(cid[*iter]==0){ ccR(*iter); } } } /*! Iterative depth first search. Avoids possible issues with recursion depth in very large components \param u starting node */ void Graph::dfsIter(int u) { list to_visit; // int vcnt=0; // count visited if(cid[u]==0){ // node is "white" to_visit.push_back(u); while(!to_visit.empty()){ int v=to_visit.back(); to_visit.pop_back(); if(cid[v]==0){ // v has not been visited yet cid[v]=ccnt; // mark v as visited // vcnt++; // std::cerr << " v " << vcnt << std::endl; // add unvisited neigbours to "to visit" list for(list::iterator iter=m_data[v].begin(); iter!=m_data[v].end(); iter++){ if(cid[*iter]==0){ to_visit.push_back(*iter); } } } } } } void Graph::setVertexData(int n,const pdata& pd) { m_vertex_data[n]=pd; cid[n]=0; m_data[n].sort(); // dummy to make sure the node is inserted } // fix undefined if not found pdata Graph::getVertexData(int i) const { pdata res; map::const_iterator iter=m_vertex_data.find(i); if(iter!=m_vertex_data.end()){ res=iter->second; } return res; } void Graph::printGrainPCount(ostream& ost) { vector pcv(ccnt,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ pcv[(iter->second)-1]++; } for(int i=0;i pmv(ccnt,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } for(int i=0;i pmv(ccnt,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } // write pid,gid,gmass for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ outfile << iter->first << " " << iter->second << " " << pmv[(iter->second)-1] << endl; } outfile.close(); } /*! print grain list with per-grain rotation vectors \param filename the name of the file written */ void Graph::printRotList(const string& filename) { // setup grain - particle map multimap grain_particle_map; for(map::const_iterator iter=cid_begin(); iter!=cid_end(); iter++){ int part_idx=iter->first; int grain_idx=(iter->second)-1; grain_particle_map.insert(make_pair(grain_idx,part_idx)); } // calculate center of mass for each grain vector grain_center(ccnt,Vec3(0.0,0.0,0.0)); vector grain_vel(ccnt,Vec3(0.0,0.0,0.0)); vector grain_mass(ccnt,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; grain_mass[id]+=pd.mass; grain_center[id]+=pd.pos*pd.mass; grain_vel[id]+=pd.vel*pd.mass; } for(int i=0;i0){ grain_center[i]=grain_center[i]/grain_mass[i]; grain_vel[i]=grain_vel[i]/grain_mass[i]; } else { grain_center[i]=Vec3(0.0,0.0,0.0); grain_vel[i]=Vec3(0.0,0.0,0.0); } } // calculate rotations vector grain_angvel(ccnt,Vec3(0.0,0.0,0.0)); for(int i=0;i::iterator grain_begin=grain_particle_map.lower_bound(i); multimap::iterator grain_end=grain_particle_map.upper_bound(i); int npart_g=grain_particle_map.count(i); // nr. of particles in grain npart_g=npart_g>5 ? 5 : npart_g; if(npart_g>1){ // calc axis direction Vec3 axis=Vec3(0.0,0.0,0.0); multimap::iterator iter1=grain_begin; multimap::iterator iter2=grain_begin; iter2++; int cnt=0; std::cout << "grain " << i << " ---- " << std::endl; for(int j=0;jsecond]).vel-grain_vel[j]; for(int k=1;ksecond]).vel-grain_vel[k]; Vec3 temp_axis=cross(v1,v2).unit(); // force positive z if(temp_axis.Z()<0.0) temp_axis=-1.0*temp_axis; axis+=temp_axis; cnt++; // std::cout << temp_axis << std::endl; iter2++; } iter1++; } axis=(axis/double(cnt)).unit(); std::cout << "axis,mass " << axis << " " << grain_mass[i] << std::endl; // convert per-particle velocity to grain rotation for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ // vector from axis to position Vec3 d=(m_vertex_data[iter->second]).pos-grain_center[iter->first]; Vec3 r=d-axis*(axis*d); // rotation should be velocity x r / (r.r) Vec3 vcm=(m_vertex_data[iter->second]).vel-grain_vel[iter->first]; // velocity rel. to center of mass Vec3 rot=cross(r,vcm)/(r*r); // std::cout << "rot, d_axis " << rot << " " << rot.unit()-axis << std::endl; grain_angvel[i]+=rot*(m_vertex_data[iter->second]).mass; } } else { multimap::iterator grain_begin=grain_particle_map.find(i); grain_angvel[i]=(m_vertex_data[grain_begin->second]).angvel.unit(); } } // write gid,mass,center, angvel ofstream outfile(filename.c_str()); for(int i=0;i0){ outfile << i << " " << grain_mass[i] << " " << (grain_angvel[i]/grain_mass[i]).norm() << " " << grain_center[i] << " " << grain_angvel[i]/grain_mass[i] << endl; } } outfile.close(); } void Graph::printGrainCountDist(const string& filename) { // get counts and min/max vector pcv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ pcv[(iter->second)-1]++; } sort(pcv.begin(),pcv.end()); cout << "min, max counts: " << pcv.front() << " , " << pcv.back() << endl; // setup distribution ProbDist PD(double(pcv.front()),double(pcv.back()),2.5,0); // fill in data for(vector::iterator iter=pcv.begin(); iter!=pcv.end(); iter++){ PD.AddSample(double(*iter)); } // write to file PD.Write(filename.c_str(),1.0); } /*! output grain mass distribution \param filename the output filename \param base the base for the exponential bin size \param cum cumulative or not */ void Graph::printGrainMassDist(const string& filename,double base,int cum) { cout << "Graph::printGrainMassDist( " << filename << " " << base << " " << cum << " )" << std::endl; // get masses and min/max vector pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } sort(pmv.begin(),pmv.end()); cout << "min, max mass : " << pmv.front() << " , " << pmv.back() << endl; // setup distribution ProbDist PD(pmv.front(),pmv.back(),base,cum); // fill in data for(vector::iterator iter=pmv.begin(); iter!=pmv.end(); iter++){ PD.AddSample(*iter); } PD.Write(filename.c_str(),1.0); } /*! print grain size distribution - cumulative mass over diameter \param filename the output filename \param base the base for the exponential bin size \param cum cumulative or not */ void Graph::printGrainDiamDist(const string& filename,double base,int cum) { cout << "Graph::printGrainDiamDist( " << filename << " " << base << " " << cum << " )" << std::endl; // get masses and min/max vector pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } sort(pmv.begin(),pmv.end()); // setup distribution double min_dia=cbrt(pmv.front()); double max_dia=cbrt(pmv.back()); cout << "min, max diameter : " << min_dia << " , " << max_dia << endl; ProbDist PD(min_dia,max_dia,base,cum); // fill in data for(vector::iterator iter=pmv.begin(); iter!=pmv.end(); iter++){ double grain_mass=*iter; double diameter=cbrt(grain_mass); PD.AddSample(diameter); } PD.Write(filename.c_str(),1.0); } /*! print grain size distribution - cumulative mass over diameter \param filename the output filename \param base the base for the exponential bin size \param cum cumulative or not */ void Graph::printSieveDist(const string& filename,double base) { cout << " Sieving: " << filename << " " << base << std::endl; // get masses and min/max vector pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } sort(pmv.begin(),pmv.end()); // setup distribution double min_dia=cbrt(pmv.front()); double max_dia=cbrt(pmv.back()); cout << "min, max diameter : " << min_dia << " , " << max_dia << endl; ProbDist PD(min_dia,max_dia,base,2); // fill in data for(vector::iterator iter=pmv.begin(); iter!=pmv.end(); iter++){ double grain_mass=*iter; double diameter=cbrt(grain_mass); PD.AddSample(diameter,grain_mass); } PD.Write(filename.c_str(),1.0); } /*! get the sieving size of the x-th percentile \param p the percentile (in percent!) */ double Graph::getPercentile(double p) { double res=0.0; // get masses and min/max double tmass=0.0; // total mass vector pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; tmass+=pd.mass; } double pmass=(p/100.0)*tmass; // percentile mass sort(pmv.begin(),pmv.end()); double smass=0.0; // sum mass vector::iterator iter=pmv.begin(); while((iter!=pmv.end()) && (smass pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } // for each particle, get posn and grain mass -> update profile vector mass_vec=vector(nbin,0.0); vector gd_vec=vector(nbin,0.0); vector gm_vec=vector(nbin,0.0); double binsize=(ymax-ymin)/double(nbin); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; double ypos=pd.pos.Y(); // y-position of particle double gmass=pmv[id]; // mass of grain the particle belongs to double pmass=pd.mass; // particle mass // calc bin index int bin_idx=int(floor(ypos-ymin)/binsize); if((bin_idx>=0) && (bin_idx pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } int xcell=int(ceil((xmax-xmin)/cellsize)); double xcelldim=(xmax-xmin)/double(xcell); int ycell=int(ceil((ymax-ymin)/cellsize)); double ycelldim=(ymax-ymin)/double(ycell); int zcell=int(ceil((zmax-zmin)/cellsize)); double zcelldim=(zmax-zmin)/double(zcell); int ncell=xcell*ycell*zcell; // for each particle, get posn and grain mass -> update profile vector mass_vec=vector(ncell,0.0); vector gd_vec=vector(ncell,0.0); vector gm_vec=vector(ncell,0.0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; Vec3 pos=pd.pos; // position of particle double gmass=pmv[id]; // mass of grain the particle belongs to double pmass=pd.mass; // particle mass // calc bin index int xbin_idx; int ybin_idx; int zbin_idx; xbin_idx=int(floor(pos.X()-xmin)/xcelldim); ybin_idx=int(floor(pos.Y()-ymin)/ycelldim); zbin_idx=int(floor(pos.Z()-zmin)/zcelldim); // calc index if((xbin_idx>=0)&&(xbin_idx=0)&&(ybin_idx=0)&&(zbin_idx pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } // for each particle, get posn and grain mass -> update profile vector mass_vec=vector(nbin,0.0); vector matrix_vec=vector(nbin,0.0); double binsize=(ymax-ymin)/double(nbin); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; double ypos=pd.pos.Y(); // y-position of particle double gmass=pmv[id]; // mass of grain the particle belongs to double pmass=pd.mass; // particle mass // calc bin index int bin_idx=int(floor(ypos-ymin)/binsize); if((bin_idx>=0) && (bin_idx pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } int xcell=int(ceil((xmax-xmin)/cellsize)); double xcelldim=(xmax-xmin)/double(xcell); int ycell=int(ceil((ymax-ymin)/cellsize)); double ycelldim=(ymax-ymin)/double(ycell); int zcell=int(ceil((zmax-zmin)/cellsize)); double zcelldim=(zmax-zmin)/double(zcell); int ncell=xcell*ycell*zcell; // for each particle, get posn and grain mass -> update profile vector mass_vec=vector(ncell,0.0); vector matrix_vec=vector(ncell,0.0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; Vec3 pos=pd.pos; // position of particle double gmass=pmv[id]; // mass of grain the particle belongs to double pmass=pd.mass; // particle mass // calc bin index int xbin_idx; int ybin_idx; int zbin_idx; xbin_idx=int(floor(pos.X()-xmin)/xcelldim); ybin_idx=int(floor(pos.Y()-ymin)/ycelldim); zbin_idx=int(floor(pos.Z()-zmin)/zcelldim); // calc index if((xbin_idx>=0)&&(xbin_idx=0)&&(ybin_idx=0)&&(zbin_idx pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } // setup inverse map multimap inv_map; for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ inv_map.insert(make_pair(iter->second,iter->first)); } // write out data int count=0; for(int i=0;imin_mass){ // setup file name ostringstream filename; filename << basefilename << "." << count << ".xml"; ofstream vtkfile(filename.str().c_str()); // write the file // write header vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // get bounds pair::iterator,multimap::iterator> bounds=inv_map.equal_range(i+1); // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(multimap::iterator iter=bounds.first; iter!=bounds.second; iter++){ pdata pd=m_vertex_data[iter->second]; vtkfile << pd.pos<< endl;; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(multimap::iterator iter=bounds.first; iter!=bounds.second; iter++){ pdata pd=m_vertex_data[iter->second]; vtkfile << pd.rad<< endl;; } vtkfile << "\n"; vtkfile << "\n"; // write empty cell block vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close file vtkfile.close(); // update counter count++; } } } /*! write out all grains larger than a certain size as VTK-XML files \param filename ile name */ void Graph::printAllAsVtk(const string& filename) { // get masses vector pmv(ccnt-1,0); for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=(iter->second)-1; pdata pd=m_vertex_data[iter->first]; pmv[id]+=pd.mass; } // setup inverse map multimap inv_map; for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ inv_map.insert(make_pair(iter->second,iter->first)); } // write out data // open file ofstream vtkfile(filename.c_str()); int count=0; // write the file // write header vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=m_vertex_data.begin(); iter!=m_vertex_data.end(); iter++){ vtkfile << iter->second.pos<< endl;; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(map::iterator iter=m_vertex_data.begin(); iter!=m_vertex_data.end(); iter++){ vtkfile << iter->second.rad<< endl;; } vtkfile << "\n"; // grain mass vtkfile << "\n"; for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ vtkfile << pmv[(iter->second)-1] << endl; } vtkfile << "\n"; vtkfile << "\n"; // write empty cell block vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close file vtkfile.close(); // update counter count++; } /*! generate cross section \param Pos the position of the plane \param W spanning vector in-plane \param V spanning vector in-plane \param filename the filename \param xdim image width \param ydim image height \param write_ppm if true, output PPM file \param filter_singles if true, filter out single particle grains */ void Graph::printCrossSection(const Vec3& Pos,const Vec3& W,const Vec3& V,const string& filename, int xdim, int ydim,double xmin, double xmax, double ymin, double ymax,bool write_ppm,bool filter_singles) { // define plane normal and local coordinate transform Vec3 normal=cross(W,V).unit(); Matrix3 invtrans=Matrix3(W,V,normal); invtrans.invert(); map pmap; vector trivec; // get particles intersecting plane for(map::iterator iter=cid.begin(); iter!=cid.end(); iter++){ int id=iter->second; pdata pd=m_vertex_data[iter->first]; double dist=(pd.pos-Pos)*normal; if(fabs(dist) 1e-5){ std::cout << "z>0, particle pos: " << pd.pos << std::endl; } pdata2d pd2; int pid=iter->first; pd2.gid=id+1; pd2.pos2d=pos2d; pd2.rad=rad; pmap[pid]=pd2; std::cout << "found particle " << pid << " grain id : " << id << " - orig:" << pd.pos << " | " << pd.rad << " section: " << pos2d << " | " << rad << std::endl; } } // generate triangles for(map::iterator iter=pmap.begin(); // for all particles in cross section iter!=pmap.end(); iter++){ int id=iter->first; // std::cout << "id : " << id << " conn: " ; vector cpv; // get connected particles for(list::iterator liter=m_data[id].begin(); liter!=m_data[id].end(); liter++){ int id2=*liter; // check if connected particle is in cross section map::iterator citer=pmap.find(id2); if((citer!=pmap.end()) && (id2>id)){ cpv.push_back(id2); // std:: cout << id2 << " "; } } // std::cout << std::endl; if(cpv.size()>2){ for(unsigned int i=0;isecond.gid; Vec3 P0=iter->second.pos2d; Vec3 P1=pmap[cpv[i]].pos2d; Vec3 P2=pmap[cpv[j]].pos2d; trivec.push_back(Triangle2D(P0,P1,P2,tid)); } } } } } // open file ofstream outfile(filename.c_str()); if(write_ppm){ outfile << "P3" << " " << xdim << " " << ydim << " 255" << endl; } // write image data int npc=int(ceil(cbrt(double(ccnt)))); int cf=127/(npc+1); std::cout << "npc : " << npc << " cf: " << cf << endl; for (int iy=0;iy::iterator iter=pmap.begin(); iter!=pmap.end(); iter++){ double dx=iter->second.pos2d.X()-px; double dy=iter->second.pos2d.Y()-py; double dist=sqrt(dx*dx+dy*dy); if(distsecond.rad){ id=iter->second.gid; inside=true; } } // check if inside triangle // for(vector::iterator iter=trivec.begin(); // iter!=trivec.end(); // iter++){ // if(iter->isIn(Vec3(px,py,0.0))){ // id=iter->Id(); // // std::cout << " in Triangle" << std::endl; // } // } // check if between 3 particles if(!inside){ map distmap; for(map::iterator iter=pmap.begin(); iter!=pmap.end(); iter++){ double dx=iter->second.pos2d.X()-px; double dy=iter->second.pos2d.Y()-py; double dist=sqrt(dx*dx+dy*dy)-iter->second.rad; if(distmap.size()<3) { distmap[dist]=iter->second; } else { double dist3=distmap.rbegin()->first; if (distsecond; if(distmap.size()>3) distmap.erase(dist3); } } } if(distmap.size()==3){ map::iterator iter=distmap.begin(); pdata2d pd1=iter->second; iter++; pdata2d pd2=iter->second; iter++; pdata2d pd3=iter->second; if((pd1.gid==pd2.gid) && (pd1.gid==pd3.gid) && (iter->first<0.5)){ Triangle2D Tr(pd1.pos2d,pd2.pos2d,pd3.pos2d,0); if(Tr.isIn(Vec3(px,py,0.0))){ id=pd1.gid; } } } } if(write_ppm){ if(id>0){ // convert id to color int red=128+(id/(npc*npc))*cf; int green=128+((id/npc)%npc)*cf; int blue=128+(id%npc)*cf; //std::cout << "id, rgb: " << id << "[ " << red << " , " << green << " , " << blue << " ]" << endl; outfile << red << " " << green << " " << blue << endl; } else { outfile << "0 0 0" << endl; } } else { outfile << id << " " ; } } if(!write_ppm) outfile << endl; } // close file outfile.close(); } ./Tools/ExtractGrains/Frac.h0000664000175000017500000000305012176660653015537 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRAC_H #define __FRAC_H #include "graph.h" #include #include #include #include using std::map; using std::multimap; using std::set; using std::ostream; using std::string; class Frac { private: multimap m_old_grain_map; multimap m_new_grain_to_particle_map; map m_new_grain_map; map > m_grain_to_grain_map; map m_tag_map; map m_old_grain_mass_map; map m_new_grain_mass_map; map get_move_vectors(const Graph&); map get_grain_mass(const Graph&); public: Frac(const Graph&, const Graph&); void writeMassRatio(ostream&,double); int writeAllMass(ostream&,double,int,bool with_tag=false); void writeAsVtk(const string&,float,const Graph&,bool); pair getSplitAbrasion(Graph&, double,double); }; #endif //__FRAC_H ./Tools/ExtractGrains/graph.h0000664000175000017500000000670212176660653015774 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __GRAPH_H #define __GRAPH_H // --- project includes --- #include "Foundation/vec3.h" // --- STL includes --- #include #include #include #include #include #include using std::list; using std::vector; using std::pair; using std::map; using std::ostream; using std::endl; using std::string; struct pdata{ int tag; double mass; Vec3 pos; double rad; Vec3 vel; Vec3 angvel; pdata(int t=-1, double m=0.0, Vec3 p=Vec3(0.0,0.0,0.0), double r=0.0, Vec3 v=Vec3(0.0,0.0,0.0), Vec3 av=Vec3(0.0,0.0,0.0)) :tag(t),mass(m),pos(p),rad(r),vel(v),angvel(av){}; }; struct pdata2d{ int gid; // grain id Vec3 pos2d; // projected position double rad; // radius }; /*! \class Graph \brief Graph class, partially based on Sedgewick, "Alg. in C++", progs. 17.1, 17.9 and 17.10 */ class Graph { public: // types struct Edge{ int i,j; Edge(int v=-1,int w=-1):i(v),j(w){} }; struct Node{ int id; Node(int i=-1):id(i){}; }; typedef list::iterator adjIterator; private: map > m_data; map cid; // component id for conn. component map m_vertex_data; map m_grain_mass; map m_grain_rot; int ccnt; void ccR(int); void dfsIter(int); public: // methods Graph(); ~Graph(); int numV() const; int numE() const; int getGrainID(int) const; double getParticleMass(int) const; void insert(const Edge&); void insert(const pair&); void setVertexData(int,const pdata&); pdata getVertexData(int i) const; void remove(const Edge&); bool isEdge(int,int); void removeDoubles(); adjIterator IterBegin(int); adjIterator IterEnd(int); map::const_iterator cid_begin() const {return cid.begin();}; map::const_iterator cid_end() const {return cid.end();}; void makeConnComp(); void printGrainPCount(ostream&); void printGrainMass(ostream&); void printIdList(const string&); void printRotList(const string&); void printGrainCountDist(const string&); void printGrainDiamDist(const string&,double,int); void printGrainMassDist(const string&,double,int); void printSieveDist(const string&,double); double getPercentile(double); void writeAvgGrainSizeProfile(const string&,double,double,int) ; void writeAvgGrainSizeGrid(const string&,double,double,double,double,double,double,double) ; void writeMatrixFractionProfile(const string&,double,double,int,double) ; void writeMatrixFractionGrid(const string&,double,double,double,double,double,double,double,double) ; void printGrainsAsVtk(const string&,double); void printAllAsVtk(const string&); void printCrossSection(const Vec3&,const Vec3&,const Vec3&,const string&,int,int,double,double,double,double,bool,bool); }; #endif //__GRAPH_H ./Tools/ExtractGrains/Tritest.cpp0000664000175000017500000000170412176660653016661 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Triangle2d.h" #include "../../Foundation/vec3.h" #include using namespace std; int main(int argc,char** argv) { Triangle2D T(Vec3(0.0,1.0,0.0),Vec3(1.5,2.0,0.0),Vec3(2.0,0.0,0.0),1); cout << "isIn: " << T.isIn(Vec3(1.1,0.8,0.0)) << endl; return 0; } ./Tools/ExtractGrains/probdist.h0000664000175000017500000000247512176660653016524 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef PROBDIST_H #define PROBDIST_H #include #include class ProbDist { public: ProbDist (double MinSize, double MaxSize, double BaseConst, int DistType); ~ProbDist (); void AddSample (double evsize); void AddSample (double evsize,double weight); void Write (const char *filename, double EvRate); private: long nbins; int disttype; double maxsize, minsize, binsize, base; long Nevents; void Create (); void Destroy (); long *Edist; double *Vdist; void AddEvSize (double evsize); void AddEvSize (double evsize,double weight); }; #endif ./Tools/ExtractGrains/Makefile.am0000664000175000017500000000203112176660653016545 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am bin_PROGRAMS = grainextract AM_CPPFLAGS += -I$(top_srcdir)/Foundation grainextract_LDADD = \ $(top_builddir)/Foundation/libFoundation.la grainextract_SOURCES = \ main.cpp \ graph.h \ graph.cpp \ readSnap.h \ readSnap.cpp \ probdist.h \ probdist.cpp \ Frac.h \ Frac.cpp \ Triangle2d.h \ Triangle2d.cpp ./Tools/ExtractGrains/probdist.cpp0000664000175000017500000001050512176660653017050 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "probdist.h" ProbDist::ProbDist (double MinSize, double MaxSize, double BaseConst, int DistType) { minsize = MinSize; maxsize = MaxSize; base = BaseConst; nbins = (long)(log(maxsize/minsize)/log(base)); nbins++; //fprintf (stderr, "Info: PDF nbins = %7d\n", nbins); Nevents = 0; disttype = DistType; Create (); } void ProbDist::Create () { Edist = new long[nbins]; Vdist = new double[nbins]; for (long i=0;i 0) { //fprintf (stderr, "Info: i=%ld ; Edist[i] = %ld\n", i, Edist[i]); sizebin = minsize*powf(base, i)*(base - 1.0); midbin = minsize*(powf(base, i) + powf(base, i+1))/2.0; //fprintf (stderr, "Info: sizebin=%8.6e ; midbin = %8.6e\n", sizebin, midbin); if (disttype==0) { probdensity = (double)(Edist[i])/Nevents/sizebin; //fprintf (stderr, "Info: probdensity=%8.6e ; Nevents = %ld\n", probdensity, Nevents); fprintf (evfile, "%8.6e %8.6e %8.6e %8.6e %8.6e %8.6e %8.6e %7ld\n", midbin, probdensity, midbin*EvRate, probdensity/EvRate, log(midbin),log(probdensity),Vdist[i], Edist[i]); } else if (disttype==1) { probdensity = (double)(Edist[i]); fprintf (evfile, "%8.6e %8.6e %8.6e %8.6e %8.6e %8.6e\n", midbin, probdensity, midbin*EvRate, probdensity/EvRate, log(midbin),log(probdensity)); } else if (disttype==2) { fprintf (evfile, "%8.6e %7ld %8.6e %8.6e %8.6e %8.6e \n", midbin,Edist[i],Vdist[i], log(midbin),log(double(Edist[i])),log(Vdist[i])); } } } fclose (evfile); } void ProbDist::AddEvSize (double evsize) { long index, i; if (disttype==0) { index = (long)(log(evsize/minsize)/log(base)); if ((index>=0)&&(index=0)&&(indexMINMASS -fvtk FILENAME EXP : -fv : write new grain id as fake vector field -profile FILENAME YMIN YMAX NBIN write y-profile of equiv. diameter -mprofile FILENAME YMIN YMAX NBIN SIZE_LIMIT write y-profile of matrix fraction -grid FILENAME XMIN XMAX YMIN YMAX ZMIN ZMAX CELLDIM -crossxy POS FILENAME W H FS : cross section in x-y plane, FS: 1 to filter singles, 0 not to filter -crossxz POS FILENAME W H FS : cross section in x-z plane -crossyz POS FILENAME W H FS : cross section in x-z plane -ppm : if cross section, save as PPM -abrasion FILENAME : output splitting/abrasion generated area. FILENAME: original (time step 0) data -btag TAG : only consider bonds with tag TAG */ #include #include #include #include #include #include // --- Project includes --- #include "graph.h" #include "readSnap.h" #include "Frac.h" using std::cout; using std::cerr; using std::endl; using std::string; using std::ofstream; int main(int argc, char** argv) { string infilename; string infilename2; string countoutfilename; string massoutfilename; string countdistfilename; string massdistfilename; string sdistfilename; string rmassfilename; string vtkfilename; string listfilename; string rotlistfilename; string diadistfilename; string profilename; string crossfilename; string originalFileName; bool options_valid=true; double massdistbase=0.0; double minmass=0.0; double diadistbase=0.0; double sdistbase=0.0; double xmin=0.0,xmax=0.0,ymin=0.0,ymax=0.0,zmin=0.0,zmax=0.0; double celldim=0.0, slimit=0.0; double cross_pos=0.0; double matrix_cutoff=0.0; double split_ratio=0.0; double perc=0.0; float exp=0.0; int mintag=-1; int maxtag=std::numeric_limits::max(); // defaults to largerst representable integer std::cerr << "maxtag=" << maxtag << std::endl; int rmf_count=0; int ret=0; int nbin=0; int cum=0; int cross_width=0, cross_height=0; int btag=-1; bool printcount=false; bool printmass=false; bool printcountdist=false; bool printmassdist=false; bool is_diff=false; bool writemassratio=false; bool writeallmass=false; bool writeallvtk=false; bool writegrains=false; bool writeidlist=false; bool writerotlist=false; bool writefracvtk=false; bool fakevectors=false; bool writemasstagged=false; bool printdiadist=false; bool writeprofile=false; bool writemprofile=false; bool writegrid=false; bool writematrixfraction=false; bool crossxy=false; bool crossxz=false; bool crossyz=false; bool write_as_ppm=false; bool cross_filter_singles=false; bool abrasion=false; bool writesdist=false; bool getperc=false; bool readgeoformat=false; // process args int args_read=1; while(args_readargs_read){ infilename=string(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-oc"){ if(argc>args_read){ countoutfilename=string(argv[args_read+1]); printcount=true; args_read+=2; } else { options_valid=false; } } else if(option=="-list"){ if(argc>args_read){ listfilename=string(argv[args_read+1]); writeidlist=true; args_read+=2; } else { options_valid=false; } } else if(option=="-rotlist"){ if(argc>args_read){ rotlistfilename=string(argv[args_read+1]); writerotlist=true; args_read+=2; } else { options_valid=false; } } else if(option=="-om"){ if(argc>args_read){ massoutfilename=string(argv[args_read+1]); printmass=true; args_read+=2; } else { options_valid=false; } } else if(option=="-dm"){ if(argc>args_read+2){ massdistfilename=string(argv[args_read+1]); massdistbase=atof(argv[args_read+2]); cum=atoi(argv[args_read+3]); printmassdist=true; args_read+=4; } else { options_valid=false; } } else if(option=="-profile"){ if(argc>args_read+3){ profilename=string(argv[args_read+1]); ymin=atof(argv[args_read+2]); ymax=atof(argv[args_read+3]); nbin=atoi(argv[args_read+4]); writeprofile=true; args_read+=5; } else { options_valid=false; } } else if(option=="-mprofile"){ if(argc>args_read+4){ profilename=string(argv[args_read+1]); ymin=atof(argv[args_read+2]); ymax=atof(argv[args_read+3]); nbin=atoi(argv[args_read+4]); matrix_cutoff=atof(argv[args_read+5]); writemprofile=true; args_read+=6; } else { options_valid=false; } } else if(option=="-grid"){ if(argc>args_read+7){ profilename=string(argv[args_read+1]); xmin=atof(argv[args_read+2]); xmax=atof(argv[args_read+3]); ymin=atof(argv[args_read+4]); ymax=atof(argv[args_read+5]); zmin=atof(argv[args_read+6]); zmax=atof(argv[args_read+7]); celldim=atof(argv[args_read+8]); writegrid=true; args_read+=9; } else { options_valid=false; } } else if(option=="-matrix"){ if(argc>args_read+8){ profilename=string(argv[args_read+1]); xmin=atof(argv[args_read+2]); xmax=atof(argv[args_read+3]); ymin=atof(argv[args_read+4]); ymax=atof(argv[args_read+5]); zmin=atof(argv[args_read+6]); zmax=atof(argv[args_read+7]); celldim=atof(argv[args_read+8]); slimit=atof(argv[args_read+9]); writematrixfraction=true; args_read+=10; } else { options_valid=false; } } else if(option=="-dd"){ if(argc>args_read+2){ diadistfilename=string(argv[args_read+1]); diadistbase=atof(argv[args_read+2]); cum=atoi(argv[args_read+3]); printdiadist=true; args_read+=4; } else { options_valid=false; } } else if(option=="-ds"){ if(argc>args_read+1){ sdistfilename=string(argv[args_read+1]); sdistbase=atof(argv[args_read+2]); writesdist=true; args_read+=3; } else { options_valid=false; } } else if(option=="-p"){ if(argc>args_read){ perc=atof(argv[args_read+1]); getperc=true; args_read+=2; } else { options_valid=false; } } else if(option=="-vtk"){ if(argc>args_read+1){ vtkfilename=string(argv[args_read+1]); minmass=atof(argv[args_read+2]); writegrains=true; args_read+=3; } else { options_valid=false; } } else if(option=="-avtk"){ if(argc>args_read+1){ vtkfilename=string(argv[args_read+1]); writeallvtk=true; args_read+=2; } else { options_valid=false; } } else if(option=="-fvtk"){ if(argc>args_read+1){ vtkfilename=string(argv[args_read+1]); exp=atof(argv[args_read+2]); writefracvtk=true; args_read+=3; } else { options_valid=false; } } else if(option=="-dc"){ if(argc>args_read){ countdistfilename=string(argv[args_read+1]); printcountdist=true; args_read+=2; } else { options_valid=false; } } else if(option=="-tag"){ if(argc>args_read){ mintag=atoi(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-tagrange"){ if(argc>args_read+1){ mintag=atoi(argv[args_read+1]); maxtag=atoi(argv[args_read+2]); std::cerr << "maxtag=" << maxtag << std::endl; args_read+=3; } else { options_valid=false; } } else if(option=="-minmass"){ if(argc>args_read){ minmass=atof(argv[args_read+1]); args_read+=2; } else { options_valid=false; } } else if(option=="-diff"){ if(argc>args_read+1){ infilename=string(argv[args_read+1]); infilename2=string(argv[args_read+2]); args_read+=3; is_diff=true; } else { options_valid=false; } } else if(option=="-rmass"){ if(argc>args_read){ rmassfilename=string(argv[args_read+1]); writemassratio=true; args_read+=2; } else { options_valid=false; } } else if(option=="-rmf"){ if(argc>args_read+1){ rmassfilename=string(argv[args_read+1]); rmf_count=atoi(argv[args_read+2]); writeallmass=true; args_read+=3; } else { options_valid=false; } } else if(option=="-crossxy"){ if(argc>args_read+8){ cross_pos=atof(argv[args_read+1]); xmin=atof(argv[args_read+2]); xmax=atof(argv[args_read+3]); ymin=atof(argv[args_read+4]); ymax=atof(argv[args_read+5]); crossfilename=string(argv[args_read+6]); cross_width=atoi(argv[args_read+7]); cross_height=atoi(argv[args_read+8]); cross_filter_singles=(atoi(argv[args_read+9])==1); crossxy=true; args_read+=10; } else { options_valid=false; } }else if(option=="-crossxz"){ if(argc>args_read+8){ cross_pos=atof(argv[args_read+1]); xmin=atof(argv[args_read+2]); xmax=atof(argv[args_read+3]); ymin=atof(argv[args_read+4]); ymax=atof(argv[args_read+5]); crossfilename=string(argv[args_read+6]); cross_width=atoi(argv[args_read+7]); cross_height=atoi(argv[args_read+8]); cross_filter_singles=(atoi(argv[args_read+9])==1); crossxz=true; args_read+=10; } else { options_valid=false; } }else if(option=="-crossyz"){ if(argc>args_read+8){ cross_pos=atof(argv[args_read+1]); xmin=atof(argv[args_read+2]); xmax=atof(argv[args_read+3]); ymin=atof(argv[args_read+4]); ymax=atof(argv[args_read+5]); crossfilename=string(argv[args_read+6]); cross_width=atoi(argv[args_read+7]); cross_height=atoi(argv[args_read+8]); cross_filter_singles=(atoi(argv[args_read+9])==1); crossyz=true; args_read+=10; } else { options_valid=false; } }else if(option=="-rmft"){ if(argc>args_read+1){ rmassfilename=string(argv[args_read+1]); rmf_count=atoi(argv[args_read+2]); writeallmass=true; writemasstagged=true; args_read+=3; } else { options_valid=false; } } else if(option=="-fv"){ fakevectors=true; args_read++; } else if(option=="-ppm"){ write_as_ppm=true; args_read++; } else if(option=="-abrasion"){ if(argc>args_read+2){ originalFileName=string(argv[args_read+1]); split_ratio=atof(argv[args_read+2]); minmass=atof(argv[args_read+3]); abrasion=true; args_read+=4; } else { options_valid=false; } } else if(option=="-btag"){ if(argc>args_read){ btag=atoi(argv[args_read+1]); std::cerr << "bond tag: " << btag << std::endl; args_read+=2; } else { options_valid=false; } } else if(option=="-geo"){ readgeoformat=true; args_read++; } else { cerr << "Unknown option " << option << endl; options_valid = false; break; } } if(options_valid){ // read data from snapshots into graph Graph g; if(readgeoformat){ readGeo(infilename,mintag,maxtag,g,btag); } else { readSnap(infilename,mintag,maxtag,g,btag); } g.makeConnComp(); if(is_diff){ // differential between snapshots Graph g2(readSnap(infilename2,mintag,maxtag,btag)); g2.makeConnComp(); Frac fr(g,g2); if(writemassratio){ ofstream outfile(rmassfilename.c_str()); fr.writeMassRatio(outfile,minmass); outfile.close(); } if(writeallmass){ ofstream outfile(rmassfilename.c_str()); ret=fr.writeAllMass(outfile,minmass,rmf_count,writemasstagged); outfile.close(); } if(writefracvtk){ fr.writeAsVtk(vtkfilename,exp,g2,fakevectors); } if(abrasion){ Graph orig(readSnap(originalFileName,mintag,maxtag)); pair abratio=fr.getSplitAbrasion(orig,split_ratio,minmass); std::cout << "Split: " << abratio.first << " Abrasion: " << abratio.second << std::endl; } } else { // single snapshot data if(printcount){ ofstream outfile(countoutfilename.c_str()); g.printGrainPCount(outfile); outfile.close(); } if(printmass){ ofstream outfile(massoutfilename.c_str()); g.printGrainMass(outfile); outfile.close(); } if(printcountdist){ g.printGrainCountDist(countdistfilename); } if(printmassdist){ g.printGrainMassDist(massdistfilename,massdistbase,cum); } if(printdiadist){ g.printGrainDiamDist(diadistfilename,diadistbase,cum); } if(writesdist){ g.printSieveDist(sdistfilename,sdistbase); } if(getperc){ std::cout << "Diameter at " << perc << " percentile mass : " << g.getPercentile(perc) << std::endl; } if(writegrains){ g.printGrainsAsVtk(vtkfilename,minmass); } if(writeallvtk){ g.printAllAsVtk(vtkfilename); } if(writeidlist){ g.printIdList(listfilename); } if(writerotlist){ g.printRotList(rotlistfilename); } if(writeprofile){ g.writeAvgGrainSizeProfile(profilename,ymin,ymax,nbin); } if(writemprofile){ g.writeMatrixFractionProfile(profilename,ymin,ymax,nbin,matrix_cutoff); } if(writegrid){ g.writeAvgGrainSizeGrid(profilename,xmin,xmax,ymin,ymax,zmin,zmax,celldim); } if(writematrixfraction){ g.writeMatrixFractionGrid(profilename,xmin,xmax,ymin,ymax,zmin,zmax,celldim,slimit); } if(crossxy){ g.printCrossSection(Vec3(0.0,0.0,cross_pos),Vec3(1.0,0.0,0.0),Vec3(0.0,1.0,0.0),crossfilename,cross_width,cross_height,xmin,xmax,ymin,ymax,write_as_ppm,cross_filter_singles); } if(crossxz){ g.printCrossSection(Vec3(0.0,cross_pos,0.0),Vec3(1.0,0.0,0.0),Vec3(0.0,0.0,-1.0),crossfilename,cross_width,cross_height,xmin,xmax,ymin,ymax,write_as_ppm,cross_filter_singles); } if(crossyz){ g.printCrossSection(Vec3(cross_pos,0.0,0.0),Vec3(0.0,0.0,-1.0),Vec3(0.0,1.0,0.0),crossfilename,cross_width,cross_height,xmin,xmax,ymin,ymax,write_as_ppm,cross_filter_singles); } ret=0; } }else { ret=1; } return ret; } ./Tools/ExtractGrains/Frac.cpp0000664000175000017500000003427312176660653016105 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Frac.h" #include #include #include using std::make_pair; using std::cout; using std::endl; using std::cerr; using std::ostringstream; using std::ofstream; Frac::Frac(const Graph& g_old,const Graph& g_new) { // setup old grain map from old graph for(map::const_iterator iter=g_old.cid_begin(); iter!=g_old.cid_end(); iter++){ int part_idx=iter->first; int grain_idx=iter->second; m_old_grain_map.insert(make_pair(grain_idx,part_idx)); // cout << "particle " << part_idx << " in old grain " << grain_idx << endl; } // get inverse map for new graph for(map::const_iterator iter=g_new.cid_begin(); iter!=g_new.cid_end(); iter++){ int part_idx=iter->first; int grain_idx=iter->second; m_new_grain_map.insert(make_pair(part_idx,grain_idx)); m_new_grain_to_particle_map.insert(make_pair(grain_idx,part_idx)); // cout << "particle " << part_idx << " in new grain " << grain_idx << endl; } // setup old->new map for(multimap::const_iterator iter=m_old_grain_map.begin(); iter!=m_old_grain_map.end(); iter++){ int new_grain_id=m_new_grain_map[iter->second]; m_grain_to_grain_map[iter->first].insert(new_grain_id); } // setup grain mass maps // old for(map::const_iterator iter=g_old.cid_begin(); iter!=g_old.cid_end(); iter++){ int part_idx=iter->first; int grain_idx=iter->second; m_old_grain_mass_map[grain_idx]+=g_old.getParticleMass(part_idx); } // new for(map::const_iterator iter=g_new.cid_begin(); iter!=g_new.cid_end(); iter++){ int part_idx=iter->first; int grain_idx=iter->second; m_new_grain_mass_map[grain_idx]+=g_new.getParticleMass(part_idx); } // setup mapping from old grain idx to particle tag (assuming all particles of a grain have the same tag) for(map::const_iterator iter=g_old.cid_begin(); iter!=g_old.cid_end(); iter++){ int part_idx=iter->first; int grain_idx=iter->second; int tag=g_old.getVertexData(part_idx).tag; m_tag_map.insert(make_pair(grain_idx,tag)); // cout << "particle " << part_idx << " in old grain " << grain_idx << endl; } } void Frac::writeMassRatio(ostream& ost,double minmass) { for(map >::iterator m_iter=m_grain_to_grain_map.begin(); m_iter!=m_grain_to_grain_map.end(); m_iter++){ list mass_list; if(m_iter->second.size()>1){ for(set::iterator s_iter=m_iter->second.begin(); s_iter!=m_iter->second.end(); s_iter++){ mass_list.push_back(m_new_grain_mass_map[*s_iter]); // cout << "old [ mass ], new [ mass ] : " << m_iter->first << " [ " << m_old_grain_mass_map[m_iter->first] << // " ] , " << *s_iter << " [ " << m_new_grain_mass_map[*s_iter] << " ] " << endl; } mass_list.sort(); double ratio=mass_list.back()/m_old_grain_mass_map[m_iter->first]; if(ratio>1){ cerr << "error: ratio > 1" << endl; } else if (m_old_grain_mass_map[m_iter->first]>minmass) { ost << ratio << " " << m_old_grain_mass_map[m_iter->first] << endl; } } } } /*! write out all fragment masses */ int Frac::writeAllMass(ostream& ost,double minmass,int count,bool with_tag) { int local_count=0; for(map >::iterator m_iter=m_grain_to_grain_map.begin(); m_iter!=m_grain_to_grain_map.end(); m_iter++){ list mass_list; if(m_iter->second.size()>1){ for(set::iterator s_iter=m_iter->second.begin(); s_iter!=m_iter->second.end(); s_iter++){ mass_list.push_back(m_new_grain_mass_map[*s_iter]); cout << "old [ mass ], new [ mass ] : " << m_iter->first << " [ " << m_old_grain_mass_map[m_iter->first] << " ] , " << *s_iter << " [ " << m_new_grain_mass_map[*s_iter] << " ] " << endl; } mass_list.sort(); double ratio=mass_list.back()/m_old_grain_mass_map[m_iter->first]; if(ratio>1){ cerr << "error: ratio > 1" << endl; } else if (m_old_grain_mass_map[m_iter->first]>minmass){ // ost << m_iter->first << " " << m_old_grain_mass_map[m_iter->first] << " "; for(list::reverse_iterator iter=mass_list.rbegin(); iter!=mass_list.rend(); iter++){ ost << *iter/m_old_grain_mass_map[m_iter->first] << " " << count+local_count; if(with_tag) { ost << " " << m_tag_map[m_iter->first] << " "; } ost << endl; } local_count++; } } } return local_count; } /*! output fractured particles as VTK-XML files. The particles are "exploded", i.e. the fragments are moved out from the center for better visibility. \param basefilename the base filename, i.e. the files will be called basfilename.0.xml, basefilename.1.xml... \param exp the relative amount by which the new fragments are moved \param g_new \param fakevec */ void Frac::writeAsVtk(const string& basefilename, float exp, const Graph& g_new, bool fakevec) { int old_grain_count=0; // get vectors for "exploding" grains map exp_vec=get_move_vectors(g_new); // get fragment masses map mass_map=get_grain_mass(g_new); // run trough grain to grain map for(map >::iterator m_iter=m_grain_to_grain_map.begin(); m_iter!=m_grain_to_grain_map.end(); m_iter++){ // only use grains which have actually broken if(m_iter->second.size()>1){ // for each "old" grain, generate a new filename ostringstream filename; filename << basefilename << "." << old_grain_count << ".xml"; cout << "filename: " << filename.str() << endl; // open file ofstream vtkfile(filename.str().c_str()); // -- write out the grain (using new grain ID as a additional field) // for each particle in the old grain multimap::iterator grain_begin=m_old_grain_map.lower_bound(m_iter->first); multimap::iterator grain_end=m_old_grain_map.upper_bound(m_iter->first); int np=m_old_grain_map.count(m_iter->first); cout << "--" << m_iter->first << "--[" << np << "]--" << endl; // write file header vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ // get the data pdata pd=g_new.getVertexData(iter->second); int ngid=m_new_grain_map[iter->second]; vtkfile << pd.pos+exp_vec[ngid]*exp << endl; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ // get the data pdata pd=g_new.getVertexData(iter->second); vtkfile << pd.rad << endl; } vtkfile << "\n"; // new grain id // setup per-grain lookup table map look_up; int idcount=0; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ int ngid=m_new_grain_map[iter->second]; if(look_up.find(ngid)==look_up.end()){ // ngid not yet in table look_up.insert(make_pair(ngid,idcount)); idcount++; } } // write data if(fakevec){ vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ vtkfile << look_up[m_new_grain_map[iter->second]] << " 0 0" << endl; } } else { vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ vtkfile << look_up[m_new_grain_map[iter->second]] << endl; } } // clear lookup table look_up.erase(look_up.begin(),look_up.end()); vtkfile << "\n"; // fragment mass if(fakevec){ vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ vtkfile << mass_map[m_new_grain_map[iter->second]] << " 0 0" << endl; } } else { vtkfile << "\n"; for(multimap::iterator iter=grain_begin; iter!=grain_end; iter++){ vtkfile << mass_map[m_new_grain_map[iter->second]] << endl; } } vtkfile << "\n"; vtkfile << "\n"; // write empty cell block (no bonds) vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close the file vtkfile.close(); old_grain_count++; } } } /*! calculate the vectors for "exploding" the grain -> get centers of the new fragment \param g the graph from which the positions are taken */ map Frac::get_move_vectors(const Graph& g) { map res; map mass_map; Vec3 center; double total_mass=0.0; for(multimap::iterator iter=m_old_grain_map.begin(); iter!=m_old_grain_map.end(); iter++){ int ngid=m_new_grain_map[iter->second]; Vec3 pos=g.getVertexData(iter->second).pos; double mass=g.getVertexData(iter->second).mass; res[ngid]+=mass*pos; mass_map[ngid]+=mass; } // calculate center*mass for(map::iterator iter=res.begin(); iter!=res.end(); iter++){ center+=iter->second; } // calc total mass for(map::iterator iter=mass_map.begin(); iter!=mass_map.end(); iter++){ total_mass+=iter->second; } center=center/total_mass; // calc fragment centers for(map::iterator iter=res.begin(); iter!=res.end(); iter++){ iter->second=(iter->second/mass_map[iter->first])-center; } return res; } /*! get mass of new grain fragments \param g the graph from which the masses are taken */ map Frac::get_grain_mass(const Graph& g) { map mass_map; for(multimap::iterator iter=m_old_grain_map.begin(); iter!=m_old_grain_map.end(); iter++){ int ngid=m_new_grain_map[iter->second]; double mass=g.getVertexData(iter->second).mass; mass_map[ngid]+=mass; } return mass_map; } /* get the amount of new surface generated, split between grain splitting and abrasion \param orig the original set of bonds \param ratio the size ratio threshold above which a fracture event counts as splitting \param minmass minimum mass of the original grain */ pair Frac::getSplitAbrasion(Graph &orig, double ratio, double minmass) { double split_area=0.0; double ab_area=0.0; // iterate through grain-to-grain map for(map >::iterator m_iter=m_grain_to_grain_map.begin(); m_iter!=m_grain_to_grain_map.end(); m_iter++){ // only use grains which have actually broken and are larger than minmass if((m_iter->second.size()>1)&& (m_old_grain_mass_map[m_iter->first]>minmass)){ // std::cout << "old grain id: " << m_iter->first << std::endl; // get largest new grain double maxmass=0.0; for(set::iterator s_iter1=m_iter->second.begin(); s_iter1!=m_iter->second.end(); s_iter1++){ double nmass=m_new_grain_mass_map[*s_iter1]; maxmass=(nmass>maxmass) ? nmass : maxmass; //std::cout << "new grain id, mass: " << *s_iter1 << " , " << nmass << std::endl; } // mass ratio double mrat=maxmass/m_old_grain_mass_map[m_iter->first]; // std::cout << "old grain mass, ratio" << m_old_grain_mass_map[m_iter->first]<< " , " << mrat << std::endl; // for all pairs of new grains for(set::iterator s_iter1=m_iter->second.begin(); s_iter1!=m_iter->second.end(); s_iter1++){ for(set::iterator s_iter2=m_iter->second.begin(); s_iter2!=m_iter->second.end(); s_iter2++){ if(*s_iter1<*s_iter2){ // std::cout << " id1,id2: " << *s_iter1 << " , " << *s_iter2 << std::endl; // for all pairs of particles within the pair of grains for(multimap::const_iterator p_iter1=m_new_grain_to_particle_map.lower_bound(*s_iter1); p_iter1!=m_new_grain_to_particle_map.upper_bound(*s_iter1); p_iter1++){ for(multimap::const_iterator p_iter2=m_new_grain_to_particle_map.lower_bound(*s_iter2); p_iter2!=m_new_grain_to_particle_map.upper_bound(*s_iter2); p_iter2++){ if(orig.isEdge(p_iter1->second,p_iter2->second)) { double r1=orig.getVertexData(p_iter1->second).rad; double r2=orig.getVertexData(p_iter2->second).rad; double rb=0.5*(r1+r2); double area=0.785398*rb*rb; // std::cout << p_iter1->second << " - " << p_iter2->second << " A: " << area << std::endl; if(mrat>ratio) { ab_area+=area; } else { split_area+=area; } } } } } } } } } return make_pair(split_area,ab_area); } ./Python/0000775000175000017500000000000012176660653012120 5ustar vborosvboros./Python/esys/0000775000175000017500000000000012176660653013103 5ustar vborosvboros./Python/esys/CMakeLists.txt0000664000175000017500000000023612176660653015644 0ustar vborosvborosADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/esys/lsm") INSTALL(FILES ${CMAKE_SOURCE_DIR}/Python/esys/__init__.py DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/py) ./Python/esys/__init__.py0000664000175000017500000000131112176660653015210 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# # Init file for esys package. ./Python/esys/lsm/0000775000175000017500000000000012176660653013676 5ustar vborosvboros./Python/esys/lsm/RotThermalParticlePy.cpp0000664000175000017500000003010612176660653020460 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/RotThermalParticlePy.h" #include namespace esys { namespace lsm { RotThermalParticlePy::RotThermalParticlePy() : CRotThermParticle() { } RotThermalParticlePy::RotThermalParticlePy(int id, const Vec3Py &posn, double radius, double mass) : CRotThermParticle(radius, mass, posn, Vec3(), Vec3(), id, true) { } RotThermalParticlePy::RotThermalParticlePy(const CRotThermParticle &p) : CRotThermParticle(p) { } RotThermalParticlePy::RotThermalParticlePy(const RotThermalParticlePy &p) : CRotThermParticle(p) { } Vec3Py RotThermalParticlePy::getPosn() const { return Vec3Py(getPos()); } void RotThermalParticlePy::setPosn(const Vec3Py &posn) { setPos(posn); } Vec3Py RotThermalParticlePy::getInitialPosn() const { return Vec3Py(getInitPos()); } Vec3Py RotThermalParticlePy::getLinearVelocity() const { return Vec3Py(getVel()); } void RotThermalParticlePy::setLinearVelocity(const Vec3Py &vel) { return setVel(vel); } Vec3Py RotThermalParticlePy::getLinearForce() const { return Vec3Py(m_force); } void RotThermalParticlePy::setLinearForce(const Vec3Py &force) { setForce(force); } Vec3Py RotThermalParticlePy::getLinearAcceleration() const { return Vec3Py(getForce()*getInvMass()); } void RotThermalParticlePy::setLinearAcceleration(const Vec3Py &accel) { setForce(accel*getMass()); } Vec3Py RotThermalParticlePy::getAngularVelocity() const { return Vec3Py(getAngVel()); } void RotThermalParticlePy::setAngularVelocity(const Vec3Py &vel) { setAngVel(vel); } Vec3Py RotThermalParticlePy::getAngularAcceleration() const { return getMoment()*getInvInertRot(); } void RotThermalParticlePy::setAngularAcceleration(const Vec3Py &accel) { setMoment(accel*getInertRot()); } Vec3Py RotThermalParticlePy::getAngularForce() const { return Vec3Py(m_moment); } void RotThermalParticlePy::setAngularForce(const Vec3Py &moment) { setMoment(moment); } QuaternionPy RotThermalParticlePy::getOrientation() const { return QuaternionPy(getQuat()); } void RotThermalParticlePy::setOrientation(const QuaternionPy &quat) { setQuat(quat); } using boost::python::extract; boost::python::tuple RotThermalParticlePy::PickleSuite::getstate(boost::python::object pcObj) { const RotThermalParticlePy &p = extract(pcObj); boost::python::list l; l.append(p.getTag()); l.append(p.getID()); l.append(p.getPosn()); l.append(p.getInitialPosn()); l.append(p.getLinearVelocity()); l.append(p.getLinearForce()); l.append(p.getRad()); l.append(p.getMass()); l.append(p.getInertRot()); l.append(p.getAngularVelocity()); l.append(p.getAngularForce()); l.append(p.getOrientation()); l.append(p.getEquilibRadius()); l.append(p.getEquilibTemperature()); l.append(p.getCp()); l.append(p.getThermExpansion0()); l.append(p.getThermExpansion1()); l.append(p.getThermExpansion2()); l.append(p.getTemperature()); return boost::python::make_tuple(pcObj.attr("__dict__"), l); } void RotThermalParticlePy::PickleSuite::setstate( boost::python::object pcObj, boost::python::tuple state ) { // restore the object's __dict__ boost::python::dict d = boost::python::extract( pcObj.attr("__dict__") )(); d.update(state[0]); RotThermalParticlePy &p = extract(pcObj); boost::python::list l = extract(state[1]); int i = -1; p.setTag(extract(l[++i])); p.setID(extract(l[++i])); p.setPosn(extract(l[++i])); p.setInitPos(extract(l[++i])); p.setLinearVelocity(extract(l[++i])); p.setLinearForce(extract(l[++i])); p.setRad(extract(l[++i])); p.setMass(extract(l[++i])); p.setInertRot(extract(l[++i])); p.setAngularVelocity(extract(l[++i])); p.setAngularForce(extract(l[++i])); p.setOrientation(extract(l[++i])); p.setEquilibRadius(extract(l[++i])); p.setEquilibTemperature(extract(l[++i])); p.setCp(extract(l[++i])); p.setThermExpansion0(extract(l[++i])); p.setThermExpansion1(extract(l[++i])); p.setThermExpansion2(extract(l[++i])); p.setTemperature(extract(l[++i])); } bool RotThermalParticlePy::PickleSuite::getstate_manages_dict() { return true; } using boost::python::arg; void exportRotThermalParticle() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "RotThermalSphere", "EXPERIMENTAL Rotational sphere with additional thermal properties.\n" ) .def(boost::python::init<>()) .def(boost::python::init()) .def(boost::python::init( ( arg("id"), arg("posn"), arg("radius"), arg("mass") ), "Construct a rotational spherical particle.\n" "@type id: int\n" "@kwarg id: Unique identifier for particle.\n" "@type posn: L{Vec3}\n" "@kwarg posn: Initial position of particle, centre-point of sphere.\n" "@type radius: float\n" "@kwarg radius: The radius of the sphere.\n" "@type mass: float\n" "@kwarg mass: Mass of particle.\n" )) .def("getId", &RotThermalParticlePy::getID, "Returns the unique ID of the particle\n") .def("getTag", &RotThermalParticlePy::getTag, "Returns the non-unique tag of the particle\n") .def("setTag", &RotThermalParticlePy::setTag, "Specifies the tag of the particle\n") .def("getInitialPosn", &RotThermalParticlePy::getInitialPosn, "Returns the initial position of the particle\n") .def("getInitialPosition", &RotThermalParticlePy::getInitialPosn, "Returns the initial position of the particle\n") .def("getPosn", &RotThermalParticlePy::getPosn, "Returns the current position of the particle\n") .def("getPosition", &RotThermalParticlePy::getPosn, "Returns the current position of the particle\n") .def("setPosn", &RotThermalParticlePy::setPosn, "Specifies the position of the particle\n") .def("setPosition", &RotThermalParticlePy::setPosn, "Specifies the position of the particle\n") .def("getOrientation", &RotThermalParticlePy::getOrientation, "Returns the current orientation of the particle\n") .def("setOrientation", &RotThermalParticlePy::setOrientation, "Specifies the orientation of the particle\n") .def("getLinearVelocity", &RotThermalParticlePy::getLinearVelocity, "Returns the current translational velocity of the particle\n") .def("setLinearVelocity", &RotThermalParticlePy::setLinearVelocity, "Specifies the current translational velocity of the particle\n") .def("getAngularVelocity", &RotThermalParticlePy::getAngularVelocity, "Returns the current angular velocity of the particle\n") .def("setAngularVelocity", &RotThermalParticlePy::setAngularVelocity, "Specifies the angular velocity of the particle\n") .def("getLinearAcceleration", &RotThermalParticlePy::getLinearAcceleration, "Returns the current translational acceleration of the particle\n") .def("setLinearAcceleration", &RotThermalParticlePy::setLinearAcceleration, "Specifies the translational acceleration of the particle\n") .def("getAngularAcceleration", &RotThermalParticlePy::getAngularAcceleration, "Returns the current angular acceleration of the particle\n") .def("setAngularAcceleration", &RotThermalParticlePy::setAngularAcceleration, "Specifies the angular acceleration of the particle\n") .def("getRad", &RotThermalParticlePy::getRad, "Returns the radius of the particle\n") .def("getRadius", &RotThermalParticlePy::getRad, "Returns the radius of the particle\n") .def("getCentre", &RotThermalParticlePy::getPosn, "Returns the current position of the particle\n") .def("getCenter", &RotThermalParticlePy::getPosn, "Returns the current position of the particle\n") .def("getMass", &RotThermalParticlePy::getMass, "Returns the mass of the particle\n") .def("getEquilibRadius", &RotThermalParticlePy::getEquilibRadius, "Returns the thermal equilibrium radius of the particle\n") .def("setEquilibRadius", &RotThermalParticlePy::setEquilibRadius, "Specifies the thermal equilibrium radius of the particle\n") .def("getEquilibTemperature", &RotThermalParticlePy::getEquilibTemperature, "Returns the thermal equilibrium temperature of the particle\n") .def("setEquilibTemperature", &RotThermalParticlePy::setEquilibTemperature, "Specifies the thermal equilibrium temperature of the particle\n") .def("getTemperature", &RotThermalParticlePy::getTemperature, "Returns the current temperature of the particle\n") .def("setTemperature", &RotThermalParticlePy::setTemperature, "Specifies the temperature of the particle\n") .def("getCp", &RotThermalParticlePy::getCp, "Returns the thermal conductivity of the particle\n") .def("setCp", &RotThermalParticlePy::setCp, "Specifies the thermal conductivity of the particle\n") .def("getExpansionCoeff0", &RotThermalParticlePy::getThermExpansion0, "Returns the X-component of the thermal expansion coefficient of the particle\n") .def("setExpansionCoeff0", &RotThermalParticlePy::setThermExpansion0, "Specifies the X-component of the thermal expansion coefficient of the particle\n") .def("getExpansionCoeff1", &RotThermalParticlePy::getThermExpansion1, "Returns the Y-component of the thermal expansion coefficient of the particle\n") .def("setExpansionCoeff1", &RotThermalParticlePy::setThermExpansion1, "Specifies the Y-component of the thermal expansion coefficient of the particle\n") .def("getExpansionCoeff2", &RotThermalParticlePy::getThermExpansion2, "Returns the Z-component of the thermal expansion coefficient of the particle\n") .def("setExpansionCoeff2", &RotThermalParticlePy::setThermExpansion2, "Specifies the Z-component of the thermal expansion coefficient of the particle\n") ; } } } ./Python/esys/lsm/ParticleFieldSaverPrmsPy.cpp0000664000175000017500000002520212176660653021266 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ParticleFieldSaverPrmsPy.h" namespace esys { namespace lsm { ParticleFieldSaverPrmsPy::ParticleFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } ParticleScalarFieldSaverPrmsPy::ParticleScalarFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : ParticleFieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } ParticleVectorFieldSaverPrmsPy::ParticleVectorFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : ParticleFieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } TaggedParticleScalarFieldSaverPrmsPy::TaggedParticleScalarFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ) : ParticleScalarFieldSaverPrmsPy (fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr) { m_tag=tag; m_mask=mask; } TaggedParticleVectorFieldSaverPrmsPy::TaggedParticleVectorFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ) : ParticleVectorFieldSaverPrmsPy (fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr) { m_tag=tag; m_mask=mask; } using boost::python::arg; void exportParticleFieldSaverPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< ParticleFieldSaverPrmsPy, boost::python::bases >( "ParticleFieldSaverPrms", "Base class describing parameters for saving particle-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Base class for particle field savers\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; boost::python::class_< ParticleScalarFieldSaverPrmsPy, boost::python::bases >( "ParticleScalarFieldSaverPrms", "Parameters for saving scalar particle-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines particle scalar field saver parameters\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'e_kin'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data is saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'MAX'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; boost::python::class_< ParticleVectorFieldSaverPrmsPy, boost::python::bases >( "ParticleVectorFieldSaverPrms", "Parameters for saving vector particle-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines particle vector field saver parameters\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'force'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data is saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'MAX'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ); boost::python::class_< TaggedParticleScalarFieldSaverPrmsPy, boost::python::bases >( "TaggedParticleScalarFieldSaverPrms", "Parameters for saving scalar data of tagged particles to file.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr"), arg("tag"), arg("mask") ), "Defines tagged particle scalar field saver parameters\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'e_kin'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data is saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'MAX'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" "@type tag: int\n" "@kwarg tag: the tag of the particles\n" "@type mask: int\n" "@kwarg mask: the tag mask\n" ) ) ; boost::python::class_< TaggedParticleVectorFieldSaverPrmsPy, boost::python::bases >( "TaggedParticleVectorFieldSaverPrms", "Parameters for saving vector data of tagged particles to file.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr"), arg("tag"), arg("mask") ), "Defines tagged particle vector field saver parameters\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'force'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data is saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'MAX'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" "@type tag: int\n" "@kwarg tag: the tag of the particles\n" "@type mask: int\n" "@kwarg mask: the tag mask\n" ) ); } } } ./Python/esys/lsm/LmParticleAdder.cpp0000664000175000017500000000133112176660653017374 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Python/esys/lsm/LmParticleAdder.h" ./Python/esys/lsm/CheckPointParamsPy.h0000664000175000017500000000432712176660653017561 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCHECKPOINTPARAMSPY_H #define ESYS_LSMCHECKPOINTPARAMSPY_H //--- STL includes --- #include //--- Boost includes --- #include namespace esys { namespace lsm { /*! \class CheckPointPrmsPy \brief $Revision$ $Date$ */ class CheckPointPrmsPy { private: std::string m_fileNamePrefix; int m_beginTimeStep; int m_endTimeStep; int m_timeStepIncr; protected: std::string getFileName(int, int rank=0) const; public: CheckPointPrmsPy(const std::string&,int, int, int); std::string getFileNamePrefix() const {return m_fileNamePrefix;}; int getBeginTimeStep() const {return m_beginTimeStep;}; int getEndTimeStep() const {return m_endTimeStep;}; int getTimeStepIncr() const {return m_timeStepIncr;}; boost::python::list getFileNameList() const; }; // class /*! \class RestartCheckPointPrmsPy \brief Parameter class for restart checkpointers, differs from CheckPointPrmsPy by having an additional "binary" flag */ class RestartCheckPointPrmsPy : public CheckPointPrmsPy { private: int m_Precision; public: RestartCheckPointPrmsPy(const std::string&,int, int, int, int); RestartCheckPointPrmsPy(const std::string&,int, int, int); int getPrecision() const {return m_Precision;}; }; void exportCheckPointPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMCHECKPOINTPARAMSPY_H ./Python/esys/lsm/InteractionGroupPy.cpp0000664000175000017500000000373712176660653020221 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/InteractionGroupPy.h" #include "Python/esys/lsm/LsmMpiPy.h" namespace esys { namespace lsm { InteractionGroupPy::InteractionGroupPy( LsmMpiPy &lsm, const std::string &name ) : m_pLsm(&lsm), m_name(name) { } using boost::python::arg; void exportInteractionGroup() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "InteractionGroup", "Base class for interaction groups.", boost::python::no_init ) .def( "getName", &InteractionGroupPy::getName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "Returns the name of this interaction group.\n" "@rtype: str\n" "@return: Name of this interaction group." ) ; } } } ./Python/esys/lsm/RotParticlePy.cpp0000664000175000017500000001721212176660653017146 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include #include "Python/esys/lsm/RotParticlePy.h" namespace esys { namespace lsm { RotParticlePy::RotParticlePy() : CRotParticle() { } RotParticlePy::RotParticlePy(const RotParticlePy &p) : CRotParticle(p) { } RotParticlePy::RotParticlePy(const CRotParticle &p) : CRotParticle(p) { } // dynamic & rotational default to true RotParticlePy::RotParticlePy(int id, const Vec3Py &posn, double radius, double mass) : CRotParticle(radius, mass, posn, Vec3(), Vec3(), id,true,true) { } Vec3Py RotParticlePy::getInitialPosn() const { return Vec3Py(getInitPos()); } Vec3Py RotParticlePy::getPosn() const { return Vec3Py(getPos()); } void RotParticlePy::setPosn(const Vec3Py& posn) { setPos(posn); } QuaternionPy RotParticlePy::getOrientation() const { return QuaternionPy(getQuat()); } void RotParticlePy::setOrientation(const QuaternionPy& quat) { setQuat(quat); } Vec3Py RotParticlePy::getVelocity() const { return Vec3Py(getVel()); } Vec3Py RotParticlePy::getLinearVelocity() const { return Vec3Py(getVel()); } void RotParticlePy::setLinearVelocity(const Vec3Py& vel) { return setVel(vel); } Vec3Py RotParticlePy::getAngularVelocity() const { return Vec3Py(getAngVel()); } void RotParticlePy::setAngularVelocity(const Vec3Py& vel) { setAngVel(vel); } Vec3Py RotParticlePy::getAcceleration() const { return Vec3Py(getForce()*getInvMass()); } Vec3Py RotParticlePy::getLinearAcceleration() const { return Vec3Py(getForce()*getInvMass()); } void RotParticlePy::setLinearAcceleration(const Vec3Py& accel) { setForce(accel*getMass()); } Vec3Py RotParticlePy::getAngularAcceleration() const { return getMoment()*getInvInertRot(); } void RotParticlePy::setAngularAcceleration(const Vec3Py& accel) { setMoment(accel*getInertRot()); } Vec3Py RotParticlePy::getLinearForce() const { return Vec3Py(m_force); } void RotParticlePy::setLinearForce(const Vec3Py& force) { setForce(force); } Vec3Py RotParticlePy::getAngularForce() const { return Vec3Py(m_moment); } void RotParticlePy::setAngularForce(const Vec3Py& moment) { setMoment(moment); } using boost::python::arg; void exportRotParticle() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_("RotSphere","Class defining the properties of spheres with translational and rotational degrees of freedom.\n") .def(boost::python::init<>()) .def(boost::python::init()) .def(boost::python::init( ( arg("id"), arg("posn"), arg("radius"), arg("mass") ), "Construct a rotational spherical particle.\n" "@type id: int\n" "@kwarg id: Unique identifier for particle.\n" "@type posn: L{Vec3}\n" "@kwarg posn: Initial position of particle, centre-point of sphere.\n" "@type radius: float\n" "@kwarg radius: The radius of the sphere.\n" "@type mass: float\n" "@kwarg mass: Mass of particle.\n" )) .def("getId", &RotParticlePy::getID, "Returns the unique ID of the particle\n") .def("getTag", &RotParticlePy::getTag, "Returns the non-unique tag of the particle\n") .def("setTag", &RotParticlePy::setTag, "Specifies the tag of the particle\n") .def("getInitialPosn", &RotParticlePy::getInitialPosn, "Returns the initial position of the particle\n") .def("getInitialPosition", &RotParticlePy::getInitialPosn, "Returns the initial position of the particle\n") .def("getPosn", &RotParticlePy::getPosn, "Returns the current position of the particle\n") .def("getPosition", &RotParticlePy::getPosn, "Returns the current position of the particle\n") .def("setPosn", &RotParticlePy::setPosn, "Specifies the position of the particle\n") .def("setPosition", &RotParticlePy::setPosn, "Specifies the position of the particle\n") .def("getOrientation", &RotParticlePy::getOrientation, "Returns the current orientation of the particle\n") .def("setOrientation", &RotParticlePy::setOrientation, "Specifies the orientation of the particle\n") .def("getVelocity", &RotParticlePy::getVelocity, "Returns the current translational velocity of the particle\n") .def("getLinearVelocity", &RotParticlePy::getLinearVelocity, "Returns the current translational velocity of the particle\n") .def("setLinearVelocity", &RotParticlePy::setLinearVelocity, "Specifies the current translational velocity of the particle\n") .def("getAngularVelocity", &RotParticlePy::getAngularVelocity, "Returns the current angular velocity of the particle\n") .def("setAngularVelocity", &RotParticlePy::setAngularVelocity, "Specifies the angular velocity of the particle\n") .def("getAcceleration", &RotParticlePy::getAcceleration, "Returns the current translational acceleration of the particle\n") .def("getLinearAcceleration", &RotParticlePy::getLinearAcceleration, "Returns the current translational acceleration of the particle\n") .def("setLinearAcceleration", &RotParticlePy::setLinearAcceleration, "Specifies the translational acceleration of the particle\n") .def("getAngularAcceleration", &RotParticlePy::getAngularAcceleration, "Returns the current angular acceleration of the particle\n") .def("setAngularAcceleration", &RotParticlePy::setAngularAcceleration, "Specifies the angular acceleration of the particle\n") .def("getRad", &RotParticlePy::getRad, "Returns the radius of the particle\n") .def("getRadius", &RotParticlePy::getRad, "Returns the radius of the particle\n") .def("getCentre", &RotParticlePy::getPosn, "Returns the current position of the particle\n") .def("getCenter", &RotParticlePy::getPosn, "Returns the current position of the particle\n") .def("getMass", &RotParticlePy::getMass, "Returns the mass of the particle\n") ; } } } ./Python/esys/lsm/InteractionFieldSaverPrmsPy.cpp0000664000175000017500000003457612176660653022020 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/InteractionFieldSaverPrmsPy.h" namespace esys { namespace lsm { InteractionFieldSaverPrmsPy::InteractionFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_interactionName(interactionName) { } InteractionScalarFieldSaverPrmsPy::InteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : InteractionFieldSaverPrmsPy( interactionName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } CheckedInteractionScalarFieldSaverPrmsPy::CheckedInteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : InteractionFieldSaverPrmsPy( interactionName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } TaggedInteractionScalarFieldSaverPrmsPy::TaggedInteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ) : InteractionScalarFieldSaverPrmsPy( interactionName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { m_tag=tag; m_mask=mask; } InteractionVectorFieldSaverPrmsPy::InteractionVectorFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : InteractionFieldSaverPrmsPy( interactionName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } CheckedInteractionVectorFieldSaverPrmsPy::CheckedInteractionVectorFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : InteractionFieldSaverPrmsPy( interactionName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } using boost::python::arg; void exportInteractionFieldSaverPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< InteractionFieldSaverPrmsPy, boost::python::bases >( "InteractionFieldSaverPrms", "Base class describing parameters for saving interaction-data to" " file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Base class for interaction field savers\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) .def( "getInteractionName", &InteractionFieldSaverPrmsPy::getInteractionName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "Returns the name of the interaction associated with these saver parameters.\n" "@rtype: string\n" "@return: Interaction name." ) ; boost::python::class_< InteractionScalarFieldSaverPrmsPy, boost::python::bases >( "InteractionScalarFieldSaverPrms", "Parameters for saving scalar interaction-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines interaction scalar field saver parameters\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'e_pot_normal'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'RAW2'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; boost::python::class_< CheckedInteractionScalarFieldSaverPrmsPy, boost::python::bases >( "CheckedInteractionScalarFieldSaverPrms", "Parameters for saving checked scalar interaction-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines checked interaction scalar field saver parameters\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'e_pot_normal'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'RAW2'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ); boost::python::class_< TaggedInteractionScalarFieldSaverPrmsPy, boost::python::bases >( "TaggedInteractionScalarFieldSaverPrms", "Parameters for saving scalar data on tagged interactions to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr"), arg("tag"), arg("mask") ), "Defines tagged interaction scalar field saver parameters\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'e_pot_normal'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'RAW2'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" "@type tag: int\n" "@kwarg tag: the tag of the particles\n" "@type mask: int\n" "@kwarg mask: the tag mask\n" ) ) ; boost::python::class_< InteractionVectorFieldSaverPrmsPy, boost::python::bases >( "InteractionVectorFieldSaverPrms", "Parameters for saving vector interaction-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines interaction vector field saver parameters\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'normal_force'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'RAW2'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ); boost::python::class_< CheckedInteractionVectorFieldSaverPrmsPy, boost::python::bases >( "CheckedInteractionVectorFieldSaverPrms", "Parameters for saving checked vector interaction-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("interactionName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines checked interaction vector field saver parameters\n" "@type interactionName: string\n" "@kwarg interactionName: Name of the interaction group for" " which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'normal_force'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'SUM' or 'RAW2'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ); } } } ./Python/esys/lsm/BondInteractionGroupPy.cpp0000664000175000017500000001010112176660653021003 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/BondInteractionGroupPy.h" #include "Python/esys/lsm/LsmMpiPy.h" #include "Python/BoostPythonUtil/PythonIterIterator.h" namespace esys { namespace lsm { typedef LsmMpiPy::ParticleIdPair ParticleIdPair; typedef LsmMpiPy::ParticleIdPairVector ParticleIdPairVector; BondInteractionGroupPy::BondInteractionGroupPy( LsmMpiPy &lsm, const std::string &name ) : InteractionGroupPy(lsm, name) { } void BondInteractionGroupPy::createInteractions( boost::python::object &iterable ) { // // Convert the ID-pairs in iterable to // std::vector< std::pair > // bpu::PythonIterIterator it(iterable); ParticleIdPairVector idPairVector; while (it.hasNext()) { boost::python::object pair = it.next(); idPairVector.push_back( ParticleIdPair( boost::python::extract(pair[0]), boost::python::extract(pair[1]) ) ); } getLsm().createBonds(getName(), idPairVector); } void BondInteractionGroupPy::createInteraction(int id1, int id2) { boost::python::list pairList; pairList.append(boost::python::make_tuple(id1, id2)); createInteractions(pairList); } ParticleIdPairSetPy BondInteractionGroupPy::getIdPairSet() { ParticleIdPairVector idPairVector = getLsm().getBondGroupIdPairs(getName()); ParticleIdPairSetPy idPairSet; idPairSet.insert(idPairVector.begin(), idPairVector.end()); return idPairSet; } void exportBondInteractionGroup() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< BondInteractionGroupPy, boost::python::bases >( "BondInteractionGroup", "Base class for bonded interaction groups.", boost::python::no_init ) .def( "createInteraction", &BondInteractionGroupPy::createInteraction, ( boost::python::arg("id1"), boost::python::arg("id2") ), "Creates a bond between particles with specified ID's.\n" "@type id1: int\n" "@kwarg id1: Particle ID.\n" "@type id2: int\n" "@kwarg id2: Particle ID.\n" ) .def( "createInteractions", &BondInteractionGroupPy::createInteractions, (boost::python::arg("idPairIterable")), "Creates bonds between particles with specified ID's.\n" "@type idPairIterable: iterable\n" "@kwarg idPairIterable: Supports C{iter(idPairIterable)} and" " each element in an iteration is a particle id pair.\n" ) .def( "getIdPairSet", &BondInteractionGroupPy::getIdPairSet, "Returns pairs of particle-id's indicating pair-wise bonds.\n" "@rtype: L{ParticleIdPairSet}\n" "@return: Set of L{ParticleIdPair} objects.\n" ) ; } } } ./Python/esys/lsm/MeshBuildParamsPy.h0000664000175000017500000000301212176660653017374 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMTRIMESHBUILDPARAMSPY_H #define ESYS_LSMTRIMESHBUILDPARAMSPY_H /*--------------------------------------------------- * * wrapper classes for TriMesh build parameters * *--------------------------------------------------*/ //--- project includes --- #include "Model/BTriMeshIP.h" namespace esys { namespace lsm { /*! \class MeshTagBuildPrmsPy \brief wrapper for MeshTagBuildPrms */ class MeshTagBuildPrmsPy : public MeshTagBuildPrms { public: MeshTagBuildPrmsPy(int, int); }; /*! \class MeshGapBuildPrmsPy \brief wrapper for MeshGapBuildPrms */ class MeshGapBuildPrmsPy : public MeshGapBuildPrms { public: MeshGapBuildPrmsPy(double); }; void exportMeshBuildPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMTRIMESHBUILDPARAMSPY_H ./Python/esys/lsm/BondedMesh2DPrmsPy.cpp0000664000175000017500000001067112176660653017760 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/InteractionParamsPy.h" #include "Python/esys/lsm/BondedMesh2DPrmsPy.h" namespace esys { namespace lsm { NRotBondedLinMeshPrmsPy::NRotBondedLinMeshPrmsPy( const std::string& interactionName, const std::string& meshName, double normalK, double breakDistance, const MeshTagBuildPrmsPy& buildPrms ) : BMesh2DIP(interactionName, meshName, normalK, breakDistance), m_tagPrmsPtr(TagBuildPrmsPtr(new MeshTagBuildPrmsPy(buildPrms))), m_gapPrmsPtr() { } NRotBondedLinMeshPrmsPy::NRotBondedLinMeshPrmsPy( const std::string& interactionName, const std::string& meshName, double normalK, double breakDistance, const MeshGapBuildPrmsPy& buildPrms ) : BMesh2DIP(interactionName, meshName, normalK, breakDistance), m_tagPrmsPtr(), m_gapPrmsPtr(GapBuildPrmsPtr(new MeshGapBuildPrmsPy(buildPrms))) { } using boost::python::arg; void exportBondedMesh2dPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "NRotBondedLinMeshPrms", "Parameters for specifying linear elastic bonds between particles\n" "and a piece-wise linear mesh surface.", boost::python::init< const std::string &, const std::string &, double, double, const MeshTagBuildPrmsPy & >( ( arg("name"), arg("meshName"), arg("normalK"), arg("breakDistance"), arg("buildPrms") ) ) ) .def( boost::python::init< const std::string &, const std::string &, double, double, const MeshGapBuildPrmsPy & >( ( arg("name"), arg("meshName"), arg("normalK"), arg("breakDistance"), arg("buildPrms") ), "Parameters defining bonded elastic-brittle interactions between particles and 2D mesh walls\n" "@type name: string\n" "@kwarg name: name of interaction group.\n" "@type meshName: string\n" "@kwarg meshName: name of the 2D linear mesh for which elastic" " bonds will be created.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for linear elastic bond force" " calculation.\n" "@type breakDistance: float\n" "@kwarg breakDistance: When distance between mesh and particle exceeds" " this distance, the bond breaks.\n" "@type buildPrms: L{MeshTagBuildPrms} or L{MeshGapBuildPrms}\n" "@kwarg buildPrms: Object which specifies the method of bond creation." ) ) .def( "getName", &NRotBondedLinMeshPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name of this interaction group." ) .def( "getMeshName", &NRotBondedLinMeshPrmsPy::getMeshName, boost::python::return_value_policy(), "@rtype: string\n" "@return: name of the mesh for which the bonded interactions apply." ) ; ; } } } ./Python/esys/lsm/ElasticTriMeshPrmsPy.h0000664000175000017500000000250512176660653020104 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMELASTICTRIMESHPRMSPY_H #define ESYS_LSMELASTICTRIMESHPRMSPY_H #include "Model/ETriMeshIP.h" #include using std::string; namespace esys { namespace lsm { /*! \class NRotElasticTriMeshPrmsPy \brief class for elastic triangular mesh interactions in python interface */ class NRotElasticTriMeshPrmsPy : public ETriMeshIP { public: NRotElasticTriMeshPrmsPy( const string &interactionName, const string &meshName, double normalK ); }; void exportElasticTriMeshPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMELASTICTRIMESHPRMSPY_H ./Python/esys/lsm/CMakeLists.txt0000664000175000017500000000342212176660653016437 0ustar vborosvboros#=========================================================== ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/esys/lsm/util") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/esys/lsm/geometry") ADD_LIBRARY(libLsmPy SHARED LsmMpiPy.cpp RunnablePy.cpp CheckPointParamsPy.cpp InteractionParamsPy.cpp InteractionGroupPy.cpp BondInteractionGroupPy.cpp BondedTriMeshPrmsPy.cpp BondedMesh2DPrmsPy.cpp MeshBuildParamsPy.cpp WallPrmsPy.cpp ParticlePy.cpp FieldSaverPrmsPy.cpp ParticleFieldSaverPrmsPy.cpp InteractionFieldSaverPrmsPy.cpp ElasticTriMeshPrmsPy.cpp WallFieldSaverPrmsPy.cpp TriangleFieldSaverPrmsPy.cpp RotParticlePy.cpp LmParticleAdder.cpp TriggerPrmsPy.cpp ElasticMesh2DPrmsPy.cpp ParticleIdPairSetPy.cpp ParticleIdPairPy.cpp ParticleIdPairVectorPy.cpp RotParticleViPy.cpp RotThermalParticlePy.cpp) ADD_LIBRARY(LsmPy SHARED LsmMpiPy.cpp RunnablePy.cpp CheckPointParamsPy.cpp InteractionParamsPy.cpp InteractionGroupPy.cpp BondInteractionGroupPy.cpp BondedTriMeshPrmsPy.cpp BondedMesh2DPrmsPy.cpp MeshBuildParamsPy.cpp WallPrmsPy.cpp ParticlePy.cpp FieldSaverPrmsPy.cpp ParticleFieldSaverPrmsPy.cpp InteractionFieldSaverPrmsPy.cpp ElasticTriMeshPrmsPy.cpp WallFieldSaverPrmsPy.cpp TriangleFieldSaverPrmsPy.cpp RotParticlePy.cpp LmParticleAdder.cpp TriggerPrmsPy.cpp ElasticMesh2DPrmsPy.cpp ParticleIdPairSetPy.cpp ParticleIdPairPy.cpp ParticleIdPairVectorPy.cpp RotParticleViPy.cpp RotThermalParticlePy.cpp) TARGET_LINK_LIBRARIES(libLsmPy Parallel Foundation Geometry Model libFoundationPy BoostPythonUtil ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) TARGET_LINK_LIBRARIES(LsmPy Parallel Foundation Geometry Model libFoundationPy BoostPythonUtil ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS libLsmPy DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) INSTALL(TARGETS LsmPy DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Python/esys/lsm/RotParticleViPy.h0000664000175000017500000000472512176660653017117 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMROTPARTICLEVIPY_H #define ESYS_LSMROTPARTICLEVIPY_H #include "Model/RotParticleVi.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/util/QuaternionPy.h" namespace esys { namespace lsm { class RotParticleViPy : public CRotParticleVi { public: RotParticleViPy(); RotParticleViPy(const RotParticleViPy &p); RotParticleViPy(const CRotParticleVi &p); RotParticleViPy(int id, const Vec3Py &posn, double radius, double mass); Vec3Py getPosn() const; void setPosn(const Vec3Py &posn); Vec3Py getInitialPosn() const; Vec3Py getLinearVelocity() const; Vec3Py getVelocity() const; void setLinearVelocity(const Vec3Py &vel); Vec3Py getLinearForce() const; void setLinearForce(const Vec3Py &force); Vec3Py getLinearAcceleration() const; Vec3Py getAcceleration() const; void setLinearAcceleration(const Vec3Py &accel); Vec3Py getAngularVelocity() const; void setAngularVelocity(const Vec3Py &vel); Vec3Py getAngularVelocityT() const; void setAngularVelocityT(const Vec3Py &vel); Vec3Py getAngularForce() const; void setAngularForce(const Vec3Py &force); Vec3Py getAngularAcceleration() const; void setAngularAcceleration(const Vec3Py &accel); QuaternionPy getOrientation() const; void setOrientation(const QuaternionPy &quat); class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getstate(boost::python::object pcObj); static void setstate(boost::python::object pcObj, boost::python::tuple state); static bool getstate_manages_dict(); }; }; void exportRotParticleVi(); } } #endif ./Python/esys/lsm/ParticlePy.cpp0000664000175000017500000001427712176660653016471 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ParticlePy.h" namespace esys { namespace lsm { ParticlePy::ParticlePy() : CParticle() { } ParticlePy::ParticlePy(int id, const Vec3Py &posn, double radius, double mass) : CParticle(radius, mass, posn, Vec3(), Vec3(), id, true) { } ParticlePy::ParticlePy(const CParticle &p) : CParticle(p) { } ParticlePy::ParticlePy(const ParticlePy &p) : CParticle(p) { } Vec3Py ParticlePy::getPosn() const { return Vec3Py(getPos()); } void ParticlePy::setPosn(const Vec3Py &posn) { setPos(posn); } Vec3Py ParticlePy::getVelocity() const { return Vec3Py(getVel()); } void ParticlePy::setVelocity(const Vec3Py &vel) { setVel(vel); } Vec3Py ParticlePy::getInitialPosn() const { return Vec3Py(getInitPos()); } Vec3Py ParticlePy::getAcceleration() const { return Vec3Py(getForce()*getInvMass()); } void ParticlePy::setAcceleration(const Vec3Py &accel) { setForce(accel*getMass()); } Vec3Py ParticlePy::getForce() const { return Vec3Py(getForce()); } void ParticlePy::setForce(const Vec3Py &force) { setForce(force); } using boost::python::arg; void exportParticle() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_("NRotSphere","Class defining the properties of non-rotational spheres.\n") .def(boost::python::init<>()) .def(boost::python::init()) .def( boost::python::init( ( arg("id"), arg("posn"), arg("radius"), arg("mass") ), "Construct a non-rotational spherical particle.\n" "@type id: int\n" "@kwarg id: Unique identifier for particle.\n" "@type posn: L{Vec3}\n" "@kwarg posn: Initial position of particle, centre-point of sphere." "@type radius: float\n" "@kwarg radius: The radius of the sphere.\n" "@type mass: float\n" "@kwarg mass: Mass of particle." ) ) .def("getId", &ParticlePy::getID, "Returns the unique ID of the particle\n") .def("getTag", &ParticlePy::getTag, "Returns the non-unique tag of the particle\n") .def("setTag", &ParticlePy::setTag, "Specifies the particle's tag\n") .def("getPosn", &ParticlePy::getPosn, "Returns the current position of the particle's centre of mass\n") .def("getPosition", &ParticlePy::getPosn, "Returns the current position of the particle's centre of mass\n") .def("setPosn", &ParticlePy::setPosn, "Specifies the position of the particle's centre of mass\n") .def("setPosition", &ParticlePy::setPosn, "Specifies the position of the particle's centre of mass\n") .def("getInitialPosn", &ParticlePy::getInitialPosn, "Returns the initial position of the particle's centre of mass\n") .def("getInitialPosition", &ParticlePy::getInitialPosn, "Returns the initial position of the particle's centre of mass\n") .def("getVelocity", &ParticlePy::getVelocity, "Returns the current velocity of the particle\n") .def("getLinearVelocity", &ParticlePy::getVelocity, "Returns the current velocity of the particle\n") .def("setVelocity", &ParticlePy::setVelocity, "Specifies the velocity of the particle\n") .def("setLinearVelocity", &ParticlePy::setVelocity, "Specifies the velocity of the particle\n") .def("getAcceleration", &ParticlePy::getAcceleration, "Returns the current acceleration of the particle\n") .def("getLinearAcceleration", &ParticlePy::getAcceleration, "Returns the current acceleration of the particle\n") .def("setAcceleration", &ParticlePy::setAcceleration, "Specifies the acceleration of the particle\n") .def("setLinearAcceleration", &ParticlePy::setAcceleration, "Specifies the acceleration of the particle\n") .def("getRadius", &ParticlePy::getRad, "Returns the radius of the particle\n") .def("getRad", &ParticlePy::getRad, "Returns the radius of the particle\n") .def("getCenter", &ParticlePy::getPosn, "Returns the current position of the particle's centre of mass\n") .def("getCentre", &ParticlePy::getPosn, "Returns the current position of the particle's centre of mass\n") .def("getMass", &ParticlePy::getMass, "Returns the mass of the particle\n") .def("getForce", &ParticlePy::getForce, "Returns the current net force acting on the particle\n") .def("getLinearForce", &ParticlePy::getForce, "Returns the current net force acting on the particle\n") .def("setForce", &ParticlePy::setForce, "Specifies the net force acting on the particle\n") .def("setLinearForce", &ParticlePy::setForce, "Specifies the net force acting on the particle\n") ; } } } ./Python/esys/lsm/ElasticTriMeshPrmsPy.cpp0000664000175000017500000000462412176660653020443 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ElasticTriMeshPrmsPy.h" namespace esys { namespace lsm { NRotElasticTriMeshPrmsPy::NRotElasticTriMeshPrmsPy( const string &interactionName, const string &meshName, double normalK ) : ETriMeshIP(interactionName, meshName, normalK) { } using boost::python::arg; void exportElasticTriMeshPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "NRotElasticTriMeshPrms", "Defines linear elastic contact interaction between particles and a" " triangular mesh surface.", boost::python::init< const std::string &, const std::string &, double >( ( arg("name"), arg("meshName"), arg("normalK") ), "Parameters defining elastic contacts between particles and a triangle mesh wall\n" "@type name: string\n" "@kwarg name: Name assigned to the group of interactions.\n" "@type meshName: string\n" "@kwarg meshName: Name of the mesh for which the interactions apply.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the linear elastic contact interaction." ) ); } } } ./Python/esys/lsm/util/0000775000175000017500000000000012176660653014653 5ustar vborosvboros./Python/esys/lsm/util/Vec3Py.h0000664000175000017500000000370612176660653016143 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMVEC3PY_H #define ESYS_LSMVEC3PY_H #include #include "Foundation/vec3.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/Util.h" #include namespace esys { namespace lsm { class Vec3Py : public Vec3 { public: Vec3Py(); Vec3Py(double x, double y, double z); Vec3Py(const Vec3Py &v); Vec3Py(const Vec3 &v); Vec3Py(const boost::python::object &pyOb); int len() const; double getItem(int i) const; void setItem(int i, double val); Vec3Py operator-(const Vec3Py &v) const; Vec3Py operator+(const Vec3Py &v) const; Vec3Py operator+(double s) const; Vec3Py operator-(double s) const; Vec3Py operator*(double s) const; Vec3Py operator/(double s) const; Vec3Py rotatePy(const Vec3Py &axis, const Vec3Py &axisPt) const; double norm() const; double dot(const Vec3Py &v) const; Vec3Py cross(const Vec3Py &v) const; std::string toString() const; boost::python::list toList() const; boost::python::tuple toTuple() const; int getIndex(int i) const; }; void exportVec3(); } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::Vec3Py &vec); #endif ./Python/esys/lsm/util/CMakeLists.txt0000664000175000017500000000104512176660653017413 0ustar vborosvboros#=========================================================== ADD_LIBRARY(libFoundationPy SHARED Vec3Py.cpp BoundingBoxPy.cpp BoundingSpherePy.cpp RngPy.cpp SetPy.cpp VectorPy.cpp QuaternionPy.cpp) ADD_LIBRARY(FoundationPy SHARED ExportModuleUtil.cpp) TARGET_LINK_LIBRARIES(libFoundationPy ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) TARGET_LINK_LIBRARIES(FoundationPy ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS libFoundationPy DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) INSTALL(TARGETS FoundationPy DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Python/esys/lsm/util/BoundingSpherePy.cpp0000664000175000017500000001117312176660653020607 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include #include "Python/esys/lsm/util/BoundingSpherePy.h" using namespace boost::python; using namespace esys::lsm; namespace esys { namespace lsm { BoundingSpherePy::BoundingSpherePy() : BoundingSphere() { } BoundingSpherePy::BoundingSpherePy(const Vec3Py ¢rePt, double radius) : BoundingSphere(centrePt, radius) { } BoundingSpherePy::BoundingSpherePy(const Vec3 ¢rePt, double radius) : BoundingSphere(centrePt, radius) { } BoundingSpherePy::BoundingSpherePy(const BoundingSpherePy &v) : BoundingSphere(v) { } BoundingSpherePy::BoundingSpherePy(const BoundingSphere &v) : BoundingSphere(v) { } BoundingSpherePy::BoundingSpherePy(const boost::python::object &pyCentre, double radius) { if (esys::lsm::bpu::len(pyCentre) == 3) { *this = BoundingSpherePy(Vec3Py(pyCentre), radius); } else { const std::string objectString = boost::python::extract(boost::python::str(pyCentre))(); std::stringstream msg; msg << "Could not extract (x,y,z) elements from: " << objectString; throw runtime_error(msg.str()); } } bool BoundingSpherePy::operator==(const BoundingSpherePy &bSphere) const { return BoundingSphere::operator ==(bSphere); } Vec3Py BoundingSpherePy::getCentrePy() const { return getCentre(); } class BoundingSpherePyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(BoundingSpherePy const& bSphere) { return boost::python::make_tuple(bSphere.getCentrePy(), bSphere.getRadius()); } }; using boost::python::arg; void exportBoundingSphere() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif class_( "BoundingSphere", "A sphere - centre point and radius.", init<>() ) .def( init( ( arg("bSphere") ) ) ) .def( init( ( arg("seq"), arg("radius") ) ) ) .def( init( ( arg("centrePt")=Vec3Py(0,0,0), arg("radius")=0.0 ), "Creates sphere with specified centre and radius.\n" "@type centrePt: L{Vec3}\n" "@kwarg centrePt: Centre of sphere.\n" "@type radius: float\n" "@kwarg radius: Radius of sphere." ) ) .def( "getCentre", &BoundingSpherePy::getCentrePy, "Returns centre point of this sphere.\n" "@rtype: L{Vec3}" ) .def( "getCenter", &BoundingSpherePy::getCentrePy, "Returns centre point of this sphere.\n" "@rtype: L{Vec3}" ) .def( "getRadius", &BoundingSpherePy::getRadius, "Returns radius of this sphere.\n" "@rtype: float" ) .def( self == self//, "Tests equality of spheres - equality of centre point and radius." ) .def(self_ns::str(self)) .def_pickle(BoundingSpherePyPickleSuite()) ; } } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::BoundingSpherePy &bSphere) { oStream << bSphere.getCentre()[0] << " " << bSphere.getCentre()[1] << " " << bSphere.getCentre()[2] << " " << bSphere.getRadius(); return oStream; } ./Python/esys/lsm/util/InstallInfo.tmpl0000664000175000017500000000241412176660653017774 0ustar vborosvboros""" Provides install path infomation. """ import os from esys.lsm.util.pathSearcher import PathSearcher installDir = "%s" binDir = os.path.join(installDir, "bin") libDir = os.path.join(installDir, "lib") pythonPkgDir = "%s" esysPkgDir = os.path.join(pythonPkgDir, "esys") lsmPkgDir = os.path.join(esysPkgDir, "lsm") pkgName = "%s" version = "%s" pkgHomePageUrl = "%s" pkgDataDir = "%s" povrayExe = "%s" _haveVtk = %s _havePovray = %s def getPovrayExePath(): """ Attempts to return the absolute path of the "povray" executable using the "PATH" environment variable. If the exe can't be found on the "PATH" then this function returns the "povray" path which was found during installation. This function is a workaround for for the SGI MPT mpirun, which seems to alter the user "PATH" environment. """ absPath=PathSearcher().find("povray") if ((absPath == None) or (absPath == "")): absPath = povrayExe return absPath def getDataFilePath(dataFileName): """ Returns path for specified data file. Looks on path C{L{pkgDataDir}:Data:.} """ return PathSearcher(pkgDataDir+":Data:.").which(dataFileName) def haveVtk(): return _haveVtk def havePovray(): return _havePovray ./Python/esys/lsm/util/ExportModuleUtil.cpp0000664000175000017500000000203712176660653020646 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/util/BoundingSpherePy.h" #include "Python/esys/lsm/util/RngPy.h" BOOST_PYTHON_MODULE(FoundationPy) { esys::lsm::exportVec3(); esys::lsm::exportBoundingBox(); esys::lsm::exportBoundingSphere(); esys::lsm::exportRng(); } ./Python/esys/lsm/util/__init__.py0000664000175000017500000000154712176660653016773 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from FoundationPy import * import FileUtil import OptParse import pathSearcher from process import * __doc__ = \ """ @undocumented: FileUtil, InstallInfo, OptParse, pathSearcher """ ./Python/esys/lsm/util/VectorPy.hpp0000664000175000017500000001022312176660653017135 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Python/BoostPythonUtil/PythonIterIterator.h" #include namespace esys { namespace lsm { template VectorPy::VectorPy() : Inherited() { } template VectorPy::VectorPy(const VectorPy &vec) : Inherited(vec) { } template VectorPy::VectorPy(const Inherited &vec) : Inherited(vec) { } template VectorPy::VectorPy(boost::python::object &iterable) : Inherited() { bpu::PythonIterIterator it(iterable); while (it.hasNext()) { this->push_back(it.next()); } } template void VectorPy::append(const_reference e) { this->push_back(e); } template size_t VectorPy::getIndex(int i) const { if (i < 0) { i += this->size(); } if ((i >= static_cast(this->size())) || (i < 0)) { PyErr_SetString(PyExc_IndexError, "Index out of range"); boost::python::throw_error_already_set(); } return static_cast(i); } template typename VectorPy::reference VectorPy::getItem(int i) { return (*this)[getIndex(i)]; } template void VectorPy::setItem(int i, const_reference e) { (*this)[getIndex(i)] = e; } template boost::python::tuple VectorPy::PickleSuite::getinitargs(VectorPy const& v) { return boost::python::make_tuple(boost::python::list(v)); } template boost::python::class_ > VectorPy::exportVector( const std::string &pyClassName, const std::string &pyClassDocString ) { return boost::python::class_ >( pyClassName.c_str(), pyClassDocString.c_str(), boost::python::init<>() ) .def( boost::python::init &>( (boost::python::arg("iterable")) ) ) .def( boost::python::init( (boost::python::arg("iterable")), ( std::string() + "Constructs vec of elements from specifed sequence.\n" + "@type iterable: iterable\n" + "@kwarg iterable: copy and insert elements from C{iterable}" + " into this vec.\n" ).c_str() ) ) .def( "__iter__", boost::python::iterator< VectorPy, boost::python::return_internal_reference<> >() ) .def( "__len__", &VectorPy::size ) .def( "__getitem__", &VectorPy::getItem, boost::python::return_internal_reference<>() ) .def( "__setitem__", &VectorPy::setItem ) .def( "append", &VectorPy::append, (boost::python::arg("elem")), "Appends an element to the end of this vector.\n" "@type elem: object\n" "@kwarg elem: Copy this element as the new last element." ) .def( "clear", &VectorPy::clear, "Removes all elements from this vector." ) .def( boost::python::self == boost::python::self ) .def_pickle(typename VectorPy::PickleSuite()) ; } } } ./Python/esys/lsm/util/process.py0000664000175000017500000001216712176660653016712 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from pathSearcher import * import esys.lsm.Logging import os import subprocess import string import threading def getLogger(): return esys.lsm.Logging.getLogger("esys.lsm.util") class ThreadedWriter(threading.Thread): def __init__(self, readFrom=None, writeToList=[]): threading.Thread.__init__(self) self.readFrom = readFrom self.writeToList = writeToList self.lineList = [] def run(self): if (self.readFrom != None): line = self.readFrom.readline() while (line != ""): for f in self.writeToList: f.write(line) self.lineList.append(line) line = self.readFrom.readline() def getLineList(self): self.join() return self.lineList class Process: def __init__( self, exePath, exeArgList=None, combineStdOutAndStdErr=True, printOutput=False ): self.exePath = PathSearcher().which(exePath) if (exeArgList == None): exeArgList = [] self.exeArgList = exeArgList self.printOutput = printOutput self.combineStdOutAndStdErr = combineStdOutAndStdErr self.popen = None self.stdOutWriter = None self.stdErrWriter = None def getExePath(self): return self.exePath def getExeArgList(self): return self.exeArgList def getCommandLine(self): return \ str(self.getExePath()) + " " + \ string.join(map(str, self.getExeArgList()), " ") def wait(self): try: getLogger().info( "Waiting on process with id=" + \ str(self.popen.pid) + \ ", cmd=" + \ self.getCommandLine() ) return self.popen.wait() except: getLogger().error( "Exception while waiting for cmd=" +\ self.getCommandLine() ) raise def runNoWait(self): if (self.printOutput): stdOutList = [os.sys.stdout] stdErrList = [os.sys.stderr] else: stdOutList = [] stdErrList = [] try: getLogger().info( "Creating process with cmd=" + self.getCommandLine() ) if (self.combineStdOutAndStdErr): self.popen = \ subprocess.Popen( self.getCommandLine().split(), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True ) else: self.popen = \ subprocess.Popen( self.getCommandLine().split(), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, close_fds=True ) self.stdOutWriter = ThreadedWriter(self.popen.stdout, stdOutList) self.stdErrWriter = ThreadedWriter(self.popen.stderr, stdErrList) getLogger().info("stdout = " + str(self.popen.stdout)) getLogger().info("stderr = " + str(self.popen.stderr)) getLogger().info("stdin = " + str(self.popen.stdin)) self.stdOutWriter.start() self.stdErrWriter.start() except: getLogger().error( "popen failed for cmd=" + self.getCommandLine() + "\n" ) raise def run(self): self.runNoWait() return self.wait() def getStdInFile(self): return self.popen.stdin def getStdOutFile(self): return self.popen.stdout def getStdErrFile(self): return self.popen.stderr def isRunning(self): return (self.popen.poll() == -1) def getExitStatus(self): pollVal = self.popen.poll() if (pollVal == -1): return None return pollVal def getStdOutLineList(self): return self.stdOutWriter.getLineList() def getStdOutString(self): return string.join(self.stdOutWriter.getLineList(), "") def getStdErrLineList(self): return self.stdErrWriter.getLineList() def getStdErrString(self): return string.join(self.stdErrWriter.getLineList(), "") ./Python/esys/lsm/util/pathSearcher.py0000664000175000017500000000275612176660653017650 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import os import string class PathSearcher: def __init__(self, pathString=os.environ["PATH"], pathDelimiter=":"): self.searchList = string.split(pathString, pathDelimiter) def contains(self, fileName): for dir in self.searchList: if os.path.exists(os.path.join(dir, fileName)): return True return False def which(self, fileName): for dir in self.searchList: fileNamePath = os.path.join(dir, fileName) if os.path.exists(fileNamePath): return fileNamePath return fileName def find(self, fileName): for dir in self.searchList: fileNamePath = os.path.join(dir, fileName) if os.path.exists(fileNamePath): return fileNamePath return "" ./Python/esys/lsm/util/BoundingBoxPy.h0000664000175000017500000000341712176660653017560 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBOUNDINGBOXPY_H #define ESYS_LSMBOUNDINGBOXPY_H #include #include "Foundation/BoundingBox.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/Util.h" #include "Python/esys/lsm/util/Vec3Py.h" #include namespace esys { namespace lsm { class BoundingBoxPy : public BoundingBox { public: BoundingBoxPy(); BoundingBoxPy(const Vec3Py &minPt, const Vec3Py &maxPt); BoundingBoxPy(const Vec3 &minPt, const Vec3 &maxPt); BoundingBoxPy(const BoundingBoxPy &v); BoundingBoxPy(const BoundingBox &v); BoundingBoxPy(const boost::python::object &pyMin, const boost::python::object &pyMax); bool operator==(const BoundingBoxPy &bBox) const; Vec3Py getMinPtPy() const; Vec3Py getMaxPtPy() const; Vec3Py getSizePy() const; Vec3Py getCentrePy() const; bool intersectsWithVec3Py(const Vec3Py &pt) const; }; void exportBoundingBox(); } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::BoundingBoxPy &vec); #endif ./Python/esys/lsm/util/VectorPy.cpp0000664000175000017500000000136112176660653017133 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/util/SetPy.h" ./Python/esys/lsm/util/QuaternionPy.h0000664000175000017500000000362612176660653017471 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMQUATERNIONPY_H #define ESYS_LSMQUATERNIONPY_H #include #include "Foundation/Quaternion.h" #include namespace esys { namespace lsm { class Vec3Py; class QuaternionPy : public Quaternion { public: QuaternionPy(); QuaternionPy(double q0, double q1, double q2, double q3); QuaternionPy(const Vec3Py &v); QuaternionPy(const QuaternionPy &q); QuaternionPy(const Quaternion &q); QuaternionPy(const boost::python::object &pyOb); int len() const; double getItem(int i) const; void setItem(int i, double val); double norm() const; Vec3Py asAngleAxis() const; boost::python::tuple asAngleAxisPair() const; std::string toString() const; boost::python::list toList() const; boost::python::tuple toTuple() const; int getIndex(int i) const; class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(QuaternionPy const& q); }; }; void exportQuaternion(); } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::QuaternionPy &vec); #endif //ESYS_LSMQUATERNIONPY_H ./Python/esys/lsm/util/QuaternionPy.cpp0000664000175000017500000001562312176660653020024 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/util/QuaternionPy.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/Util.h" using namespace boost::python; using namespace esys::lsm; namespace esys { namespace lsm { QuaternionPy::QuaternionPy() : Quaternion() { } QuaternionPy::QuaternionPy( double q0, double q1, double q2, double q3 ) : Quaternion(q0, Vec3(q1, q2, q3)) { } QuaternionPy::QuaternionPy(const Vec3Py &v) : Quaternion( cos(v.norm()/2.0), v*(sin(v.norm()/2.0)/v.norm()) ) { } QuaternionPy::QuaternionPy(const QuaternionPy &q) : Quaternion(q) { } QuaternionPy::QuaternionPy(const Quaternion &q) : Quaternion(q) { } QuaternionPy::QuaternionPy(const boost::python::object &pyOb) { if (esys::lsm::bpu::len(pyOb) == 4) { *this = QuaternionPy( boost::python::extract(pyOb[0]), boost::python::extract(pyOb[1]), boost::python::extract(pyOb[2]), boost::python::extract(pyOb[3]) ); } else { std::stringstream msg; msg << "Could not extract (q0,q1,q2,q3) elements from: " << boost::python::extract(boost::python::str(pyOb))(); throw runtime_error(msg.str()); } } int QuaternionPy::len() const { return 4; } int QuaternionPy::getIndex(int i) const { const int origI = i; if (i < 0) { i += len(); } if ((i >= len()) || i < 0) { std::stringstream msg; msg << "Index " << origI << " out of range [0,4)"; PyErr_SetString(PyExc_IndexError, msg.str().c_str()); throw_error_already_set(); } return i; } double QuaternionPy::getItem(int i) const { return ((i=getIndex(i)) == 0) ? return_sca() : return_vec()[i-1]; } void QuaternionPy::setItem(int i, double val) { i = getIndex(i); if (i == 0) { set_scalar(val); } else { Vec3 v = return_vec(); v[i-1] = val; set_vector(v); } } std::string QuaternionPy::toString() const { return StringUtil::toString(*this); } boost::python::list QuaternionPy::toList() const { boost::python::list l; l.append(getItem(0)); l.append(getItem(1)); l.append(getItem(2)); l.append(getItem(3)); return l; } boost::python::tuple QuaternionPy::toTuple() const { return boost::python::tuple(toList()); } boost::python::tuple QuaternionPy::PickleSuite::getinitargs(QuaternionPy const& q) { return q.toTuple(); } Vec3Py QuaternionPy::asAngleAxis() const { return Vec3Py(Quaternion::asAngleAxis()); } boost::python::tuple QuaternionPy::asAngleAxisPair() const { Quaternion::AngleAxisPair p = Quaternion::asAngleAxisPair(); return boost::python::make_tuple(p.first, Vec3Py(p.second)); } using boost::python::arg; void exportQuaternion() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif class_( "Quaternion", "A quaternion.", init<>() ) .def(init()) .def(init()) .def(init()) .def( init( (arg("q0"), arg("q1"), arg("q2"), arg("q3") ), "Constructs quaternion with specifed component values.\n" "@type q0: float\n" "@kwarg q0: Scalar part, index 0.\n" "@type q1: float\n" "@kwarg q1: index 1\n" "@type q2: float\n" "@kwarg q2: index 2\n" "@type q3: float\n" "@kwarg q3: index 3\n" ) ) .def( "normalise", &QuaternionPy::normalize, "Normalises this quaternion.\n" ) .def( "normalize", &QuaternionPy::normalize, "Normalizes this quaternion.\n" ) .def( "asAngleAxis", &QuaternionPy::asAngleAxis, "Returns angle and axis rotation representation, where" " angle is the magnitude of the returned " " L{Vec3} object.\n" "@rtype: L{Vec3}\n" "@return: angle and axis rotation representation." ) .def( "asAngleAxisPair", &QuaternionPy::asAngleAxis, "Returns angle and axis rotation representation as a" " two element tuple, the first element is the" " angle and the second element is the" " L{Vec3} axis.\n" "@rtype: (float, L{Vec3})\n" "@return: angle and axis rotation tuple-pair." ) .def(self_ns::str(self)) .def(boost::python::self == boost::python::self) .def("__len__", &QuaternionPy::len) .def("__getitem__", &QuaternionPy::getItem) .def("__setitem__", &QuaternionPy::setItem) .def( "toList", &QuaternionPy::toList, "Returns a python list of 4 elements.\n" "@rtype: list of four floats\n" "@return: C{[self[0],self[1],self[2],self[3]]}" ) .def( "toTuple", &QuaternionPy::toTuple, "Returns a python tuple of 4 elements.\n" "@rtype: tuple of four floats\n" "@return: C{(self[0],self[1],self[2],self[3])}" ) .def_pickle(QuaternionPy::PickleSuite()) ; } } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::QuaternionPy &quat) { oStream << quat.return_sca() << " " << quat.return_vec()[0] << " " << quat.return_vec()[1] << " " << quat.return_vec()[2]; return oStream; } ./Python/esys/lsm/util/VectorPy.h0000664000175000017500000000344112176660653016601 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMVECTORPY_H #define ESYS_LSMVECTORPY_H #include #include #include namespace esys { namespace lsm { template class VectorPy : public std::vector { public: typedef std::vector Inherited; typedef typename Inherited::const_reference const_reference; typedef typename Inherited::reference reference; class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(VectorPy const& v); }; VectorPy(); VectorPy(const VectorPy &vec); VectorPy(const Inherited &vec); VectorPy(boost::python::object &iterable); void append(const_reference e); size_t getIndex(int i) const; reference getItem(int i); void setItem(int i, const_reference e); static boost::python::class_ exportVector( const std::string &pyClassName, const std::string &pyClassDocString ); }; } } #include "Python/esys/lsm/util/VectorPy.hpp" #endif ./Python/esys/lsm/util/SetPy.cpp0000664000175000017500000000136112176660653016424 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/util/SetPy.h" ./Python/esys/lsm/util/BoundingSpherePy.h0000664000175000017500000000314712176660653020256 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBOUNDINGSPHEREPY_H #define ESYS_LSMBOUNDINGSPHEREPY_H #include #include "Foundation/BoundingSphere.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/Util.h" #include "Python/esys/lsm/util/Vec3Py.h" #include namespace esys { namespace lsm { class BoundingSpherePy : public BoundingSphere { public: BoundingSpherePy(); BoundingSpherePy(const Vec3Py ¢rePt, double radius); BoundingSpherePy(const Vec3 ¢rePt, double radius); BoundingSpherePy(const BoundingSpherePy &v); BoundingSpherePy(const BoundingSphere &v); BoundingSpherePy(const boost::python::object &pyCentre, double radius); bool operator==(const BoundingSpherePy &bBox) const; Vec3Py getCentrePy() const; }; void exportBoundingSphere(); } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::BoundingSpherePy &vec); #endif ./Python/esys/lsm/util/Makefile.am0000664000175000017500000000456012176660653016714 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am if VTK_ENABLED HAVE_VTK_BOOLEAN=True else HAVE_VTK_BOOLEAN=False endif if POVRAY_ENABLED HAVE_POVRAY_BOOLEAN=True else HAVE_POVRAY_BOOLEAN=False endif lsmutil_LTLIBRARIES = libFoundationPy.la FoundationPy.la libFoundationPy_la_LDFLAGS = -shared libFoundationPy_la_SOURCES = Vec3Py.cpp \ Vec3Py.h \ BoundingBoxPy.cpp \ BoundingBoxPy.h \ BoundingSpherePy.cpp \ BoundingSpherePy.h \ RngPy.cpp \ RngPy.h \ SetPy.cpp \ SetPy.h \ SetPy.hpp \ VectorPy.cpp \ VectorPy.h \ VectorPy.hpp \ QuaternionPy.cpp \ QuaternionPy.h libFoundationPy_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Python/BoostPythonUtil/libBoostPythonUtil.la \ $(BOOST_PYTHON_LIBS) FoundationPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) FoundationPy_la_SOURCES = ExportModuleUtil.cpp FoundationPy_la_LIBADD = libFoundationPy.la dist_lsmutil_PYTHON = \ __init__.py \ FileUtil.py \ OptParse.py \ pathSearcher.py \ process.py nodist_lsmutil_PYTHON = \ InstallInfo.py CLEANFILES = InstallInfo.py EXTRA_DIST=InstallInfo.tmpl InstallInfo.py: InstallInfo.tmpl Makefile $(PYTHON) -c 'import string,os;\ file("InstallInfo.py", "w").write(\ string.join(\ file(\ os.path.join("$(srcdir)", "InstallInfo.tmpl"),\ "r"\ ).readlines(), "")\ %\ (\ "$(prefix)",\ "$(pythondir)",\ "$(PACKAGE_NAME)",\ "$(VERSION)",\ "$(PACKAGE_HOMEPAGE)",\ "$(pkgdatadir)",\ "$(POVRAY_EXE)",\ "$(HAVE_VTK_BOOLEAN)",\ "$(HAVE_POVRAY_BOOLEAN)"\ )\ )' ./Python/esys/lsm/util/SetPy.hpp0000664000175000017500000001253412176660653016435 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Python/BoostPythonUtil/PythonIterIterator.h" #include namespace esys { namespace lsm { template SetPy::SetPy() : Inherited() { } template SetPy::SetPy(const SetPy &set) : Inherited(set) { } template SetPy::SetPy(const Inherited &set) : Inherited(set) { } template SetPy::SetPy(boost::python::object &iterable) : Inherited() { bpu::PythonIterIterator it(iterable); while (it.hasNext()) { this->insert(it.next()); } } template SetPy SetPy::getUnion(const SetPy &set) const { SetPy resultSet; std::set_union( this->begin(), this->end(), set.begin(), set.end(), InsertIterator(resultSet, resultSet.begin()) ); return resultSet; } template SetPy SetPy::getDifference(const SetPy &set) const { SetPy resultSet; std::set_difference( this->begin(), this->end(), set.begin(), set.end(), InsertIterator(resultSet, resultSet.begin()) ); return resultSet; } template SetPy SetPy::getIntersection(const SetPy &set) const { SetPy resultSet; std::set_intersection( this->begin(), this->end(), set.begin(), set.end(), InsertIterator(resultSet, resultSet.begin()) ); return resultSet; } template boost::python::tuple SetPy::PickleSuite::getinitargs(SetPy const& s) { return boost::python::make_tuple(boost::python::list(s)); } template boost::python::class_ > SetPy::exportSet( const std::string &pyClassName, const std::string &pyClassDocString ) { return boost::python::class_ >( pyClassName.c_str(), pyClassDocString.c_str(), boost::python::init<>() ) .def( boost::python::init &>( (boost::python::arg("iterable")) ) ) .def( boost::python::init( (boost::python::arg("iterable")), ( std::string() + "Constructs set of elements from specifed sequence.\n" + "@type iterable: iterable\n" + "@kwarg iterable: copy and insert elements from C{iterable}" + " into this set.\n" ).c_str() ) ) .def( "union", &SetPy::getUnion, (boost::python::arg("set")), ( std::string() + "Returns new set which is the union of this set and C{set}.\n" + "@type set: " + pyClassName + "\n" + "@kwarg set: Set with which union is performed.\n" + "@rtype: " + pyClassName + "\n" "@return: new set which is the union of two sets." ).c_str() ) .def( "difference", &SetPy::getDifference, (boost::python::arg("set")), ( std::string() + "Returns new set which contains elements of this set not " + " contained in the specified C{set}.\n" + "@type set: " + pyClassName + "\n" + "@kwarg set: Set with which difference is performed.\n" + "@rtype: " + pyClassName + "\n" "@return: new set which is the difference of two sets." ).c_str() ) .def( "intersection", &SetPy::getIntersection, (boost::python::arg("set")), ( std::string() + "Returns new set which contains elements common to this set " + " and the specified C{set}.\n" + "@type set: " + pyClassName + "\n" + "@kwarg set: Set with which intersection is performed.\n" + "@rtype: " + pyClassName + "\n" "@return: new set which is the intersection of two sets." ).c_str() ) .def( "__iter__", boost::python::iterator< SetPy, boost::python::return_internal_reference<> >() ) .def( "__len__", &SetPy::size ) .def( boost::python::self == boost::python::self ) .def_pickle(typename SetPy::PickleSuite()) ; } } } ./Python/esys/lsm/util/SetPy.h0000664000175000017500000000341212176660653016070 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSETPY_H #define ESYS_LSMSETPY_H #include #include #include namespace esys { namespace lsm { template > class SetPy : public std::set { public: typedef std::set Inherited; class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(SetPy const& s); }; SetPy(); SetPy(const SetPy &set); SetPy(const Inherited &set); SetPy(boost::python::object &iterable); SetPy getUnion(const SetPy &set) const; SetPy getDifference(const SetPy &set) const; SetPy getIntersection(const SetPy &set) const; static boost::python::class_ exportSet( const std::string &pyClassName, const std::string &pyClassDocString ); protected: typedef std::insert_iterator InsertIterator; }; } } #include "Python/esys/lsm/util/SetPy.hpp" #endif ./Python/esys/lsm/util/BoundingBoxPy.cpp0000664000175000017500000001325712176660653020116 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include #include "Python/esys/lsm/util/BoundingBoxPy.h" using namespace boost::python; using namespace esys::lsm; namespace esys { namespace lsm { BoundingBoxPy::BoundingBoxPy() : BoundingBox() { } BoundingBoxPy::BoundingBoxPy(const Vec3Py &minPt, const Vec3Py &maxPt) : BoundingBox(minPt, maxPt) { } BoundingBoxPy::BoundingBoxPy(const Vec3 &minPt, const Vec3 &maxPt) : BoundingBox(minPt, maxPt) { } BoundingBoxPy::BoundingBoxPy(const BoundingBoxPy &v) : BoundingBox(v) { } BoundingBoxPy::BoundingBoxPy(const BoundingBox &v) : BoundingBox(v) { } BoundingBoxPy::BoundingBoxPy(const boost::python::object &pyMin, const boost::python::object &pyMax) { if ((esys::lsm::bpu::len(pyMin) == 3) && (esys::lsm::bpu::len(pyMax) == 3)) { *this = BoundingBoxPy(Vec3Py(pyMin), Vec3Py(pyMax)); } else { std::string objectString; if (esys::lsm::bpu::len(pyMin) != 3) { objectString = boost::python::extract(boost::python::str(pyMin))(); } else { objectString = boost::python::extract(boost::python::str(pyMax))(); } std::stringstream msg; msg << "Could not extract (x,y,z) elements from: " << objectString; throw runtime_error(msg.str()); } } bool BoundingBoxPy::intersectsWithVec3Py(const Vec3Py &pt) const { return this->contains(pt); } bool BoundingBoxPy::operator==(const BoundingBoxPy &bBox) const { return ( (getMinPt() == bBox.getMinPt()) && (getMaxPt() == bBox.getMaxPt()) ); } Vec3Py BoundingBoxPy::getMinPtPy() const { return Vec3Py(BoundingBox::getMinPt()); } Vec3Py BoundingBoxPy::getMaxPtPy() const { return Vec3Py(BoundingBox::getMaxPt()); } Vec3Py BoundingBoxPy::getSizePy() const { return Vec3Py(getMaxPt()-getMinPt()); } Vec3Py BoundingBoxPy::getCentrePy() const { return Vec3Py((getMaxPt()+getMinPt())*0.5); } class BoundingBoxPyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(BoundingBoxPy const& bBox) { return boost::python::make_tuple(bBox.getMinPtPy(), bBox.getMaxPtPy()); } }; using boost::python::arg; void exportBoundingBox() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif class_( "BoundingBox", "An axis aligned box.", init<>() ) .def(init()) .def(init()) .def( init( ( arg("minPt"), arg("maxPt") ), "Construct box by specifying lower left corner and\n" "upper right corner coordinates.\n" "@type minPt: L{Vec3}\n" "@kwarg minPt: lower left corner coordinate.\n" "@type maxPt: L{Vec3}\n" "@kwarg maxPt: upper right corner coordinate." ) ) .def( "getMinPt", &BoundingBoxPy::getMinPtPy, "Returns lower left corner coordinate.\n" "@rtype: L{Vec3}" ) .def( "getMaxPt", &BoundingBoxPy::getMaxPtPy, "Returns upper right corner coordinate.\n" "@rtype: L{Vec3}" ) .def( "getSize", &BoundingBoxPy::getSizePy, "Returns side-lengths for each coordinate component.\n" "@rtype: L{Vec3}" ) .def( "getCentre", &BoundingBoxPy::getCentrePy, "Returns the centre point of this box.\n" "@rtype: L{Vec3}" ) .def( "getCenter", &BoundingBoxPy::getCentrePy, "Returns the centre point of this box.\n" "@rtype: L{Vec3}" ) .def( "intersectsWith", &BoundingBoxPy::intersectsWithVec3Py, "Returns C{True} if the specified point intersects" " with this box.\n" "@type pt: L{esys.lsm.util.Vec3}\n" "@kwarg pt: A point.\n" "@rtype: L{bool}" ) .def(self == self) .def(self_ns::str(self)) .def_pickle(BoundingBoxPyPickleSuite()) ; } } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::BoundingBoxPy &bBox) { oStream << bBox.getMinPt()[0] << " " << bBox.getMinPt()[1] << " " << bBox.getMinPt()[2]; oStream << " " << bBox.getMaxPt()[0] << " " << bBox.getMaxPt()[1] << " " << bBox.getMaxPt()[2]; return oStream; } ./Python/esys/lsm/util/OptParse.py0000664000175000017500000001433012176660653016763 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines L{OptionParser} class which extends C{optparse.OptionParser} class by adding 'string_list', 'int_list' and 'float_list' option types. Also defines L{LogOptionParser} which extends L{OptionParser} and adds support for L{esys.lsm.Logging} options. """ import optparse import re import string import copy def getListFromString(opt, str, mapCallable): """ Parses a given string to extract a list. The expected format of the string is '[e1,e2,e3,...]'. Returns C{map(mapCallable, [e1,e2,e3,...])}. @type opt: string @param opt: Command line option, only used for for creating messages when raising OptionValueException @type str: string @param str: The option value string @type mapCallable: callable @param mapCallable: Callable object which converts a string list element into another type, eg int, float, etc @rtype: list @return: list of converted-type elements. """ regex = re.compile("\[(.*)\]") match = regex.match(str) if (match != None): try: return map(mapCallable, string.split(match.group(1), ",")) except ValueError: raise \ optparse.OptionValueError( ( "option %s: Could not convert string elements of"+\ " %r to type." ) % (opt, str) ) else: raise \ optparse.OptionValueError( "option %s: invalid list value: %r" % (opt, str) ) def checkIntList(option, opt, value): """ Extracts a list of integers from a specified value. @param option: The option. @type opt: string @param opt: The command line option string. @type value: string @param value: The value passed to the option. @rtype: list @return: list of ints """ return getListFromString(opt, value, int) def checkFloatList(option, opt, value): """ Extracts a list of floats from a specified value. @type opt: string @param opt: The command line option string. @type value: string @param value: The value passed to the option. @rtype: list @return: list of floats """ return getListFromString(opt, value, float) def checkStringList(option, opt, value): """ Extracts a list of strings from a specified value. @type opt: string @param opt: The command line option string. @type value: string @param value: The value passed to the option. @rtype: list @return: list of floats """ return getListFromString(opt, value, str) class ListOption(optparse.Option): """ Extends optparse.Option class by adding 'string_list', 'int_list' and 'float_list' types """ TYPES = optparse.Option.TYPES + ("int_list", "float_list", "string_list") TYPE_CHECKER = copy.copy(optparse.Option.TYPE_CHECKER) TYPE_CHECKER["int_list"] = checkIntList TYPE_CHECKER["float_list"] = checkFloatList TYPE_CHECKER["string_list"] = checkStringList class OptionParser(optparse.OptionParser): """ Command line option parser which extends C{optparse.OptionParser} by adding "int_list", "float_list" and "string_list" types. """ def __init__( self, usage=None, option_list=None, option_class=ListOption, version=None, conflict_handler="error", description=None, formatter=None, add_help_option=1, prog=None ): """ Initialises this parser, arguments as per C{optparse.OptionParser}. """ optparse.OptionParser.__init__( self, usage=usage, option_list=option_list, option_class=option_class, version=version, conflict_handler=conflict_handler, description=description, formatter=formatter, add_help_option=add_help_option, prog=prog ) from esys.lsm import Logging class LogOptionParser(OptionParser): """ Command line option parser which extends L{OptionParser} by adding a default logging option. """ def __init__( self, usage=None, option_list=None, option_class=ListOption, version=None, conflict_handler="error", description=None, formatter=None, add_help_option=1, prog=None ): """ Initialises this parser, arguments as per L{OptionParser}. """ OptionParser.__init__( self, usage=usage, option_list=option_list, option_class=option_class, version=version, conflict_handler=conflict_handler, description=description, formatter=formatter, add_help_option=add_help_option, prog=prog ) self.addDefaultOptions() def addDefaultOptions(self): self.add_option( "-l", "--log-level", dest="logLevel", type="string", default="WARNING", metavar="L", help=\ "The level of logging output (default L=\"WARNING\")" ) def initialiseLogging(self, options): logLevel = options.logLevel if ((logLevel != None) and (len(logLevel) > 0)): Logging.basicConfig() Logging.getLogger("").setLevel(Logging.getLevel(logLevel)) def parse_args (self, args=None, values=None): (options,values) = OptionParser.parse_args(self, args, values) self.initialiseLogging(options) return (options,values) ./Python/esys/lsm/util/FileUtil.py0000664000175000017500000000200612176660653016740 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import os import os.path def removeDirs(dir): """ Recursively removes directory and all contents and subdirectories. """ for f in os.listdir(dir): absFile = os.path.join(dir, f) if (os.path.isdir(absFile)): removeDirs(absFile) else: os.remove(absFile) os.rmdir(dir) ./Python/esys/lsm/util/RngPy.cpp0000664000175000017500000000350512176660653016421 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Foundation/Rng.h" namespace esys { namespace lsm { void seedDefaultRng(unsigned int seed) { rng::s_zeroOneUniform.seed(seed); } using boost::python::arg; void exportRng() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif #if (BOOST_VERSION / 100000 >= 1) && (BOOST_VERSION / 100 % 1000 >= 34) boost::python::docstring_options doc_str_opt(true,false); #endif boost::python::def( "seedDefaultRng", &seedDefaultRng, ( arg("seed")=1234567891 ), "Seeds the default C{[0,1]} uniform pseudo-random number generator.\n" "@type seed: int\n" "@kwarg seed: unsigned integer seed value." ); } } } ./Python/esys/lsm/util/Vec3Py.cpp0000664000175000017500000001575612176660653016506 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/util/Vec3Py.h" using namespace boost::python; using namespace esys::lsm; namespace esys { namespace lsm { Vec3Py::Vec3Py() : Vec3() { } Vec3Py::Vec3Py(double x, double y, double z) : Vec3(x,y,z) { } Vec3Py::Vec3Py(const Vec3Py &v) : Vec3(v) { } Vec3Py::Vec3Py(const Vec3 &v) : Vec3(v) { } Vec3Py::Vec3Py(const boost::python::object &pyOb) { if (esys::lsm::bpu::len(pyOb) == 3) { *this = Vec3Py( boost::python::extract(pyOb[0]), boost::python::extract(pyOb[1]), boost::python::extract(pyOb[2]) ); } else { std::stringstream msg; msg << "Could not extract (x,y,z) elements from: " << boost::python::extract(boost::python::str(pyOb))(); throw runtime_error(msg.str()); } } int Vec3Py::len() const { return 3; } int Vec3Py::getIndex(int i) const { if (i < 0) i += len(); if ((i >= len()) || i < 0) { PyErr_SetString(PyExc_IndexError, "Index out of range"); throw_error_already_set(); } return i; } double Vec3Py::getItem(int i) const { return (*this)[getIndex(i)]; } void Vec3Py::setItem(int i, double val) { (*this)[getIndex(i)] = val; } Vec3Py Vec3Py::operator-(const Vec3Py &v) const { return Vec3Py(Vec3::operator-(v)); } Vec3Py Vec3Py::operator+(const Vec3Py &v) const { return Vec3Py(Vec3::operator+(v)); } Vec3Py Vec3Py::operator+(double s) const { return Vec3Py(Vec3::operator+(s)); } Vec3Py Vec3Py::operator-(double s) const { return Vec3Py(Vec3::operator-(s)); } Vec3Py Vec3Py::operator*(double s) const { return Vec3Py(Vec3::operator*(s)); } Vec3Py Vec3Py::operator/(double s) const { return Vec3Py(Vec3::operator/(s)); } double Vec3Py::norm() const { return Vec3::norm(); } Vec3Py Vec3Py::rotatePy(const Vec3Py &axis, const Vec3Py &axisPt) const { return rotate(axis, axisPt); } double Vec3Py::dot(const Vec3Py &v) const { return ::dot(*this, v); } Vec3Py Vec3Py::cross(const Vec3Py &v) const { return ::cross(*this, v); } std::string Vec3Py::toString() const { return StringUtil::toString(*this); } boost::python::list Vec3Py::toList() const { boost::python::list l; l.append(getItem(0)); l.append(getItem(1)); l.append(getItem(2)); return l; } boost::python::tuple Vec3Py::toTuple() const { return boost::python::tuple(toList()); } class Vec3PyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(Vec3Py const& v) { return v.toTuple(); } }; using boost::python::arg; void exportVec3() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif class_( "Vec3", "A 3D coordinate.", init<>() ) .def(init()) .def(init()) .def( init( ( arg("x"), arg("y"), arg("z") ), "Constructs coordinate with specifed component values.\n" "@type x: float\n" "@kwarg x: index 0\n" "@type y: float\n" "@kwarg y: index 1\n" "@type z: float\n" "@kwarg z: index 2\n" ) ) .def(self == self) .def(self - self) .def(self + self) .def(self + double(0.0)) .def(self - double(0.0)) .def(self * double(0.0)) .def(self / double(0.0)) .def( "dot", &Vec3Py::dot, ( arg("v") ), "Returns the dot product of this 3 element vector with\n" "the specified L{Vec3}.\n" "@type v: L{Vec3}\n" "@kwarg v: dot product with this\n" "@rtype: float" ) .def( "rotate", &Vec3Py::rotatePy, ( arg("axis"), arg("axisPt") ), "Returns a point which is this point rotated about a specified axis.\n" "@type axis: L{Vec3}\n" "@kwarg axis: axis of rotation and counter-clockwise angle of rotation" " C{= axis.norm()} radians.\n" "@type axisPt: L{Vec3}\n" "@kwarg axisPt: The C{axis} of rotation is assumed to pass through" " this point.\n" "@rtype: L{Vec3}\n" "@return: The point which is the rotation of this (self) coordinate" " about the specified axis." ) .def( "cross", &Vec3Py::cross, ( arg("v") ), "Returns the cross product of this 3 element vector with\n" "the specified L{Vec3}.\n" "@type v: L{Vec3}\n" "@kwarg v: cross product with this\n" "@rtype: L{Vec3}" ) .def( "norm", &Vec3Py::norm, "Returns the magnitude of this 3 element vector.\n" "@rtype: float\n" "@return: math.sqrt(self.dot(self))." ) .def(self_ns::str(self)) .def("__len__", &Vec3Py::len) .def("__getitem__", &Vec3Py::getItem) .def("__setitem__", &Vec3Py::setItem) .def( "toList", &Vec3Py::toList, "Returns a python list of 3 elements.\n" "@rtype: list of three floats\n" "@return: [self[0],self[1],self[2]]" ) .def( "toTuple", &Vec3Py::toTuple, "Returns a python tuple of 3 elements.\n" "@rtype: tuple of three floats\n" "@return: (self[0],self[1],self[2])" ) .def_pickle(Vec3PyPickleSuite()) ; } } } std::ostream &operator<<(std::ostream &oStream, const esys::lsm::Vec3Py &vec) { oStream << vec[0] << " " << vec[1] << " " << vec[2]; return oStream; } ./Python/esys/lsm/util/RngPy.h0000664000175000017500000000144612176660653016070 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRNGPY_H #define ESYS_LSMRNGPY_H namespace esys { namespace lsm { void exportRng(); } } #endif ./Python/esys/lsm/ParticleIdPairPy.cpp0000664000175000017500000000731112176660653017551 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ParticleIdPairPy.h" namespace esys { namespace lsm { ParticleIdPairPy::ParticleIdPairPy(int id1, int id2) : Inherited(std::min(id1, id2), std::max(id1,id2)) { } ParticleIdPairPy::ParticleIdPairPy(const Inherited &pair) : Inherited( std::min(pair.first, pair.second), std::max(pair.first, pair.second) ) { } bool ParticleIdPairPy::operator<(const ParticleIdPairPy &pair) const { bool result = first < pair.first; if (!result && (first == pair.first)) { result = second < pair.second; } return result; } int ParticleIdPairPy::len() const { return 2; } int ParticleIdPairPy::getItem(int i) { const int origI = i; if (i < 0) { i += len(); } if ((i >= len()) || i < 0) { std::stringstream msg; msg << "Index " << origI << " out of range."; PyErr_SetString(PyExc_IndexError, msg.str().c_str()); boost::python::throw_error_already_set(); } int item = INT_MIN; if (i == 0) { item = first; } else if (i == 1) { item = second; } return item; } long ParticleIdPairPy::hash() const { return first*second; } boost::python::tuple ParticleIdPairPy::PickleSuite::getinitargs(ParticleIdPairPy const& p) { return boost::python::make_tuple(p.first, p.second); } void exportParticleIdPair() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "ParticleIdPair", "Pair of particle Id's.", boost::python::init( ( boost::python::arg("id1"), boost::python::arg("id2") ), "Construct pair with specified id's.\n" "@type id1: int\n" "@kwarg id1: Particle Id.\n" "@type id2: int\n" "@kwarg id2: Particle Id.\n" ) ) .def( "__getitem__", &ParticleIdPairPy::getItem, (boost::python::arg("idx")), "Returns id of indexed element.\n" "@type idx: int\n" "@kwarg idx: index value 0 or 1.\n" ) .def( "__len__", &ParticleIdPairPy::len, "Returns 2.\n" "@rtype: int\n" "@return: length of pair (always 2).\n" ) .def(boost::python::self < boost::python::self) .def(boost::python::self == boost::python::self) .def("__hash__", &ParticleIdPairPy::hash) .def_pickle(ParticleIdPairPy::PickleSuite()) ; } } } ./Python/esys/lsm/WallFieldSaverPrmsPy.h0000664000175000017500000000630612176660653020073 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMWALLFIELDSAVERPRMSPY_H #define ESYS_LSMWALLFIELDSAVERPRMSPY_H #include "Python/esys/lsm/FieldSaverPrmsPy.h" #include #include #include namespace esys { namespace lsm { class WallFieldSaverPrmsPy : public FieldSaverPrmsPy { public: typedef std::vector StringVector; WallFieldSaverPrmsPy( const std::string &wallName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); WallFieldSaverPrmsPy( const boost::python::list &wallNameList, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); WallFieldSaverPrmsPy( const boost::python::tuple &wallNameList, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); boost::python::list getWallNameList() const; const std::vector &getWallNameVector() const; protected: void setWallNames(const StringVector &wallNameVec); void setWallNames(const boost::python::list &wallNameList); void setWallNames(const boost::python::tuple &wallNameTuple); private: StringVector m_wallNameVector; }; class WallVectorFieldSaverPrmsPy : public WallFieldSaverPrmsPy { public: WallVectorFieldSaverPrmsPy( const std::string &wallName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); WallVectorFieldSaverPrmsPy( const boost::python::list &wallNameList, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); WallVectorFieldSaverPrmsPy( const boost::python::tuple &wallNameTuple, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; void exportWallFieldSaverPrms(); } // namespace lsm } // namespace esys #endif ./Python/esys/lsm/CheckPointParamsPy.cpp0000664000175000017500000001473212176660653020115 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Foundation/StringUtil.h" #include "Python/esys/lsm/CheckPointParamsPy.h" namespace esys { namespace lsm { CheckPointPrmsPy::CheckPointPrmsPy( const std::string &fileNamePrefix, int beginTimeStep, int endTimeStep, int timeStepIncr ) : m_fileNamePrefix(fileNamePrefix), m_beginTimeStep(beginTimeStep), m_endTimeStep(endTimeStep), m_timeStepIncr(timeStepIncr) { } boost::python::list CheckPointPrmsPy::getFileNameList() const { boost::python::list fileNameList; for (int i = getBeginTimeStep(); i < getEndTimeStep(); i += getTimeStepIncr()) { fileNameList.append(getFileName(i)); } fileNameList.append(getFileName(getEndTimeStep())); return fileNameList; } std::string CheckPointPrmsPy::getFileName(int timeStep, int rank) const { return (getFileNamePrefix()+ "_t=" + StringUtil::toString(timeStep) + "_" + StringUtil::toString(rank) + ".txt"); } /*! Construct RestartCheckPointPrmsPy with full set of arguments */ RestartCheckPointPrmsPy::RestartCheckPointPrmsPy( const std::string &fileNamePrefix, int beginTimeStep, int endTimeStep, int timeStepIncr, int Precision) : CheckPointPrmsPy(fileNamePrefix,beginTimeStep,endTimeStep,timeStepIncr), m_Precision(Precision) {} /*! Construct RestartCheckPointPrmsPy with precision defaulting to 12 digits */ RestartCheckPointPrmsPy::RestartCheckPointPrmsPy( const std::string &fileNamePrefix, int beginTimeStep, int endTimeStep, int timeStepIncr) : CheckPointPrmsPy(fileNamePrefix,beginTimeStep,endTimeStep,timeStepIncr), m_Precision(12) {} using boost::python::arg; void exportCheckPointPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "CheckPointPrms", "Parameters for specifying check-pointing intervals.", boost::python::init( ( arg("fileNamePrefix"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines CheckPoint snapshot saver parameters\n" "@type fileNamePrefix: string\n" "@kwarg fileNamePrefix: prefix of files where checkpoint data" " is saved.\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: time step when checkpoint saving begins.\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: time step when checkpoint saving stops.\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: a checkpoint is made every" "C{timeStepIncr} time-steps.\n" ) ) .def( "getFileNamePrefix", &CheckPointPrmsPy::getFileNamePrefix, "@rtype: string\n" "@return: prefix of files where checkpoint data is saved.\n" ) .def( "getBeginTimeStep", &CheckPointPrmsPy::getBeginTimeStep, "@rtype: int" "@return: Timestep when snapshot saving commences" ) .def( "getEndTimeStep", &CheckPointPrmsPy::getEndTimeStep, "@rtype: int" "@return: Timestep when snapshot saving ceases" ) .def( "getTimeStepIncr", &CheckPointPrmsPy::getTimeStepIncr, "@rtype: int" "@return: Number of timesteps between each snapshot" ) .def( "getFileNameList", &CheckPointPrmsPy::getFileNameList, "@rtype: list\n" "@return: List of 'master' check-point file names." ) ; boost::python::class_ >( "RestartCheckPointPrms", "Parameters for specifying check-pointing intervals.", boost::python::init( ( arg("fileNamePrefix"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr"), arg("Precision") ), "Defines CheckPoint snapshot saver parameters with the output precision defaulting " "to 12 digits. This function is provided for backward compatibility.\n" "@type fileNamePrefix: string\n" "@kwarg fileNamePrefix: prefix of files where checkpoint data" " is saved.\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: time step when checkpoint saving begins.\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: time step when checkpoint saving stops.\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: a checkpoint is made every " "C{timeStepIncr} time-steps.\n" "@type Precision: int\n" "@kwarg Precision: the number of digits in the output data, defaulting to twelve " "when not specified.\n" ) ) .def( boost::python::init( ( arg("fileNamePrefix"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ) ) ) .def( "getPrecision", &RestartCheckPointPrmsPy::getPrecision, "@rtype: int\n" "@return: output precision of checkpoint files.\n" ) ; } } } ./Python/esys/lsm/MeshBuildParamsPy.cpp0000664000175000017500000000556212176660653017743 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/MeshBuildParamsPy.h" namespace esys { namespace lsm { /*! constructor for MeshTagBuildPrmsPy \param tag \param mask */ MeshTagBuildPrmsPy::MeshTagBuildPrmsPy(int tag, int mask) : MeshTagBuildPrms(tag, mask) { } /*! constructor for MeshGapBuildPrmsPy \param maxGap */ MeshGapBuildPrmsPy::MeshGapBuildPrmsPy(double maxGap) : MeshGapBuildPrms(maxGap) { } using boost::python::arg; void exportMeshBuildPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "MeshTagBuildPrms", "Parameters for bonding particles to a mesh which uses\n" "particle-tags as the criterion for creating bonds.", boost::python::init( ( arg("tag"), arg("mask") ), "Build parameters for particles with a specified tag\n" "@type tag: int\n" "@kwarg tag: particle tag, particles with this tag will be\n" " bonded to the specified mesh.\n" "@type mask: int\n" "@kwarg mask: mask applied (anded) to particle tag before" " being compared with C{tag}.\n" ) ); boost::python::class_( "MeshGapBuildPrms", "Parameters for bonding particles to a mesh which uses\n" "distance-to-mesh criterion for creating bonds.", boost::python::init( (arg("maxDistance")), "Build parameters for particles within a specified distance of a mesh wall\n" "@type maxDistance: float\n" "@kwarg maxDistance: Particles which are closer than C{maxDistance}" " to the mesh get bonded to the mesh.\n" ) ); } } } ./Python/esys/lsm/InteractionGroupPy.h0000664000175000017500000000277712176660653017671 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMINTERACTIONGROUPPY_H #define ESYS_LSMINTERACTIONGROUPPY_H #include namespace esys { namespace lsm { class LsmMpiPy; /** * Base class for python-exposed interaction group. * Delegates calls to LsmMpiPy object. */ class InteractionGroupPy { public: InteractionGroupPy( LsmMpiPy &lsmMpi, const std::string &name ); const std::string &getName() const { return m_name; } protected: LsmMpiPy &getLsm() { return *m_pLsm; } const LsmMpiPy &getLsm() const { return *m_pLsm; } private: LsmMpiPy *m_pLsm; std::string m_name; }; void exportInteractionGroup(); } // namespace lsm } // namespace esys #endif // ESYS_LSMINTERACTIONGROUPPY_H ./Python/esys/lsm/InteractionFieldSaverPrmsPy.h0000664000175000017500000000723512176660653021455 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMINTERACTIONFIELDSAVERPRMSPY_H #define ESYS_LSMINTERACTIONFIELDSAVERPRMSPY_H #include "Python/esys/lsm/FieldSaverPrmsPy.h" //--- STL includes --- #include //--- Boost includes --- #include namespace esys { namespace lsm { class InteractionFieldSaverPrmsPy : public FieldSaverPrmsPy { public: InteractionFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); const std::string &getInteractionName() const { return m_interactionName; } private: std::string m_interactionName; }; class InteractionScalarFieldSaverPrmsPy : public InteractionFieldSaverPrmsPy { public: InteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; class CheckedInteractionScalarFieldSaverPrmsPy : public InteractionFieldSaverPrmsPy { public: CheckedInteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; class TaggedInteractionScalarFieldSaverPrmsPy : public InteractionScalarFieldSaverPrmsPy { public: TaggedInteractionScalarFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ); int getTag() const {return m_tag;}; int getMask() const {return m_mask;}; protected: int m_tag; int m_mask; }; class InteractionVectorFieldSaverPrmsPy : public InteractionFieldSaverPrmsPy { public: InteractionVectorFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; class CheckedInteractionVectorFieldSaverPrmsPy : public InteractionFieldSaverPrmsPy { public: CheckedInteractionVectorFieldSaverPrmsPy( const std::string &interactionName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; void exportInteractionFieldSaverPrms(); } // namespace lsm } // namespace esys #endif ./Python/esys/lsm/WallPrmsPy.cpp0000664000175000017500000001676512176660653016473 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/InteractionParamsPy.h" #include "Python/esys/lsm/WallPrmsPy.h" namespace esys { namespace lsm { /*! constructor of non-rotational elastic wall parameters \param name the name of the interaction \param wname the name of the wall \param normalSpringK the spring constant for the elastic interactions */ NRotElasticWallPrmsPy::NRotElasticWallPrmsPy( const std::string& name, const std::string& wname, double normalSpringK ) : CEWallIGP(name,wname,normalSpringK) { } /*! constructor of non-rotational bonded wall parameters \param name the name of the interaction \param wname the name of the wall \param normalSpringK the spring constant for the elastic interactions \param particleTag the tag of the particles to which the wall is bonded (if build via bond and not via distance) */ NRotBondedWallPrmsPy::NRotBondedWallPrmsPy( const std::string& name, const std::string& wname, double normalSpringK, int particleTag ) : CBWallIGP(name,wname,normalSpringK,particleTag,-1) { } /*! constructor of non-rotational bonded wall parameters \param name the name of the interaction \param wname the name of the wall \param normalSpringK the spring constant for the elastic interactions \param particleTag the tag of the particles to which the wall is bonded \param tagMask the particle tag mask (which bits of the tag are significant) */ NRotBondedWallPrmsPy::NRotBondedWallPrmsPy( const std::string& name, const std::string& wname, double normalSpringK, int particleTag, int tagMask ) : CBWallIGP(name,wname,normalSpringK,particleTag,tagMask) { } /*! constructor of non-rotational bonded wall parameters with directional stiffness \param name the name of the interaction \param wname the name of the wall \param SpringKx the spring constant for the elastic interactions \param SpringKy the spring constant for the elastic interactions \param SpringKz the spring constant for the elastic interactions \param particleTag the tag of the particles to which the wall is bonded (if build via bond and not via distance) */ NRotSoftBondedWallPrmsPy::NRotSoftBondedWallPrmsPy( const std::string& name, const std::string& wname, double normalK, double shearK, int particleTag, int tagMask, bool scaling ) : CSoftBWallIGP(name,wname,normalK,shearK,particleTag,tagMask,scaling) {} using boost::python::arg; void exportWallPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "NRotBondedWallPrms", "Parameters for linear elastic bond between particles and" " a wall.", boost::python::init( ( arg("name"), arg("wallName"), arg("normalK"), arg("particleTag"), arg("tagMask") ), "Parameters defining bonded elastic interactions between particles and a planar wall\n" "@type name: string\n" "@kwarg name: Name assigned to the created interaction group.\n" "@type wallName: string\n" "@kwarg wallName: The name of an existing wall.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the linear elastic force" " calculation.\n" "@type particleTag: int\n" "@kwarg particleTag: Particles with this tag are bonded to the wall.\n" "@type tagMask: int\n" "@kwarg tagMask: the tag mask (default: -1) shows the significant" " bits of the tag.\n" ) ) .def(boost::python::init( ( arg("name"), arg("wallName"), arg("normalK"), arg("particleTag") ) )); boost::python::class_ >( "NRotSoftBondedWallPrms", "Parameters for soft linear elastic bonds between particles and" " a wall. Soft bonds may have differing normal and shear stiffnesses.", boost::python::init( ( arg("name"), arg("wallName"), arg("normalK"), arg("shearK"), arg("particleTag"), arg("tagMask"), arg("scaling") ), "Parameters defining soft bonded interactions between particles and a planar wall\n" "@type name: string\n" "@kwarg name: Name assigned to the created interaction group.\n" "@type wallName: string\n" "@kwarg wallName: The name of an existing wall.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the normal elastic forces.\n" "@type shearK: float\n" "@kwarg shearK: spring constant for the shear elastic forces.\n" "@type particleTag: int\n" "@kwarg particleTag: Particles with this tag are bonded to the wall.\n" "@type tagMask: int\n" "@kwarg tagMask: the tag mask.\n" "@type scaling: bool\n" "@kwarg scaling: toggle whether to scale elastic constants by radius.\n" ) ); boost::python::class_ >( "NRotElasticWallPrms", "Parameters for linear elastic contact between particles and" " a wall.", boost::python::init< const std::string&, const std::string&, double >( ( arg("name"), arg("wallName"), arg("normalK") ), "Parameters defining elastic contacts between particles and a planar wall\n" "@type name: string\n" "@kwarg name: Name assigned to the created interaction group.\n" "@type wallName: string\n" "@kwarg wallName: The name of an existing wall.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the linear elastic force" " calculation.\n" ) ) ; } } } ./Python/esys/lsm/ParticleIdPairSetPy.h0000664000175000017500000000174012176660653017672 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEIDPAIRSETPY_H #define ESYS_LSMPARTICLEIDPAIRSETPY_H #include #include namespace esys { namespace lsm { typedef SetPy ParticleIdPairSetPy; void exportParticleIdPairSet(); } } #endif ./Python/esys/lsm/__init__.py0000664000175000017500000000514012176660653016007 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# # Init file for esys.lsm package. import Logging from util import InstallInfo from LsmPy import * __doc__ = \ """ Lattice Solid Model discrete element simulation package. For an introduction, see the tutorial at the U{%(pkgName)s home page <%(pkgHomePageUrl)s>}. @organization: The University of Queensland Earth Systems Science Computational\ Centre (ESSCC) (Brisbane, Queensland, Australia) U{www.uq.edu.au/esscc} @copyright: (C) 2003-2013 by The University of Queensland Earth Systems Science\ Computational Centre @license: Open Software License version 3.0\ U{www.opensource.org/licenses/osl-3.0.php} @undocumented: Logging """%{"pkgHomePageUrl":InstallInfo.pkgHomePageUrl,"pkgName":InstallInfo.pkgName} LsmPy.__doc__ = \ """ Dynamic linked library module defining classes for creating particle models - this library exposes C++ implementations in Python. @group Model: LsmMpi,*Sphere*,Runnable @group Interaction Types: *InteractionGroup,*InteractionPrms,*GravityPrms, *BuoyancyPrms,*DampingPrms,*ElasticPrms,*FrictionPrms,*BondPrms, *MeshPrms,*WallPrms,*BeamPrms,*DashpotPrms,*TriggerPrms,*2DPrms @group Saving Data: *SaverPrms @group Saving Model State: *CheckPointPrms @group Miscellaneous: __*,set*,check*,*BuildPrms,ParticleIdPair* """ checkMpiDimensions.__doc__ = \ """ Checks validity of C{numProcesses} and C{mpiDimList} arguments. C{numProcesses} should be positive, C{mpiDimList} should contain 3 elements and the product of non-zero elements should be a divisor of C{numProcesses}. Raises C{ValueError} if arguments are determined to be invalid. @type numProcesses: int @kwarg numProcesses: number of mpi worker processes. @type mpiDimList: list of three ints @kwarg mpiDimList: MPI cartesian communicator list. @raises ValueError: if C{numProcesses} and C{mpiDimList} are not consistent. """ checkParticleType.__doc__ = \ """ Raises C{ValueError} if particle type is invalid. @type particleType: string @kwarg particleType: Type of particle. """ ./Python/esys/lsm/RotParticleViPy.cpp0000664000175000017500000002411712176660653017447 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/RotParticleViPy.h" #include namespace esys { namespace lsm { RotParticleViPy::RotParticleViPy() : CRotParticleVi() { } RotParticleViPy::RotParticleViPy(int id, const Vec3Py &posn, double radius, double mass) : CRotParticleVi(radius, mass, posn, Vec3(), Vec3(), id, true) { } RotParticleViPy::RotParticleViPy(const CRotParticleVi &p) : CRotParticleVi(p) { } RotParticleViPy::RotParticleViPy(const RotParticleViPy &p) : CRotParticleVi(p) { } Vec3Py RotParticleViPy::getPosn() const { return Vec3Py(getPos()); } void RotParticleViPy::setPosn(const Vec3Py &posn) { setPos(posn); } Vec3Py RotParticleViPy::getInitialPosn() const { return Vec3Py(getInitPos()); } Vec3Py RotParticleViPy::getLinearVelocity() const { return Vec3Py(getVel()); } Vec3Py RotParticleViPy::getVelocity() const { return Vec3Py(getVel()); } void RotParticleViPy::setLinearVelocity(const Vec3Py &vel) { return setVel(vel); } Vec3Py RotParticleViPy::getLinearForce() const { return Vec3Py(m_force); } void RotParticleViPy::setLinearForce(const Vec3Py &force) { setForce(force); } Vec3Py RotParticleViPy::getLinearAcceleration() const { return Vec3Py(getForce()*getInvMass()); } Vec3Py RotParticleViPy::getAcceleration() const { return Vec3Py(getForce()*getInvMass()); } void RotParticleViPy::setLinearAcceleration(const Vec3Py &accel) { setForce(accel*getMass()); } Vec3Py RotParticleViPy::getAngularVelocity() const { return Vec3Py(getAngVel()); } void RotParticleViPy::setAngularVelocity(const Vec3Py &vel) { setAngVel(vel); } Vec3Py RotParticleViPy::getAngularVelocityT() const { return Vec3Py(getAngVel_t()); } void RotParticleViPy::setAngularVelocityT(const Vec3Py &vel) { setAngVel_t(vel); } Vec3Py RotParticleViPy::getAngularAcceleration() const { return getMoment()*getInvInertRot(); } void RotParticleViPy::setAngularAcceleration(const Vec3Py &accel) { setMoment(accel*getInertRot()); } Vec3Py RotParticleViPy::getAngularForce() const { return Vec3Py(m_moment); } void RotParticleViPy::setAngularForce(const Vec3Py &moment) { setMoment(moment); } QuaternionPy RotParticleViPy::getOrientation() const { return QuaternionPy(getQuat()); } void RotParticleViPy::setOrientation(const QuaternionPy &quat) { setQuat(quat); } using boost::python::extract; boost::python::tuple RotParticleViPy::PickleSuite::getstate(boost::python::object pcObj) { const RotParticleViPy &p = extract(pcObj); boost::python::list l; l.append(p.getTag()); l.append(p.getID()); l.append(p.getPosn()); l.append(p.getInitialPosn()); l.append(p.getLinearVelocity()); l.append(p.getLinearForce()); l.append(p.getRad()); l.append(p.getMass()); l.append(p.getInertRot()); l.append(p.getAngularVelocity()); l.append(p.getAngularForce()); l.append(p.getOrientation()); return boost::python::make_tuple(pcObj.attr("__dict__"), l); } void RotParticleViPy::PickleSuite::setstate( boost::python::object pcObj, boost::python::tuple state ) { // restore the object's __dict__ boost::python::dict d = boost::python::extract( pcObj.attr("__dict__") )(); d.update(state[0]); RotParticleViPy &p = extract(pcObj); boost::python::list l = extract(state[1]); int i = -1; p.setTag(extract(l[++i])); p.setID(extract(l[++i])); p.setPosn(extract(l[++i])); p.setInitPos(extract(l[++i])); p.setLinearVelocity(extract(l[++i])); p.setLinearForce(extract(l[++i])); p.setRad(extract(l[++i])); p.setMass(extract(l[++i])); p.setInertRot(extract(l[++i])); p.setAngularVelocity(extract(l[++i])); p.setAngularForce(extract(l[++i])); p.setOrientation(extract(l[++i])); } bool RotParticleViPy::PickleSuite::getstate_manages_dict() { return true; } using boost::python::arg; void exportRotParticleVi() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "RotSphereVi", "EXPERIMENTAL Rotational sphere using Verlet 2nd order time integration.\n" ) .def(boost::python::init<>()) .def(boost::python::init()) .def(boost::python::init( ( arg("id"), arg("posn"), arg("radius"), arg("mass") ), "Construct a rotational spherical particle.\n" "@type id: int\n" "@kwarg id: Unique identifier for particle.\n" "@type posn: L{Vec3}\n" "@kwarg posn: Initial position of particle, centre-point of sphere.\n" "@type radius: float\n" "@kwarg radius: The radius of the sphere.\n" "@type mass: float\n" "@kwarg mass: Mass of particle.\n" )) .def("getId", &RotParticleViPy::getID, "Returns the unique ID of the particle\n") .def("getTag", &RotParticleViPy::getTag, "Returns the non-unique tag of the particle\n") .def("setTag", &RotParticleViPy::setTag, "Specifies the tag of the particle\n") .def("getInitialPosn", &RotParticleViPy::getInitialPosn, "Returns the initial position of the particle\n") .def("getInitialPosition", &RotParticleViPy::getInitialPosn, "Returns the initial position of the particle\n") .def("getPosn", &RotParticleViPy::getPosn, "Returns the current position of the particle\n") .def("getPosition", &RotParticleViPy::getPosn, "Returns the current position of the particle\n") .def("setPosn", &RotParticleViPy::setPosn, "Specifies the position of the particle\n") .def("setPosition", &RotParticleViPy::setPosn, "Specifies the position of the particle\n") .def("getOrientation", &RotParticleViPy::getOrientation, "Returns the current orientation of the particle\n") .def("setOrientation", &RotParticleViPy::setOrientation, "Specifies the orientation of the particle\n") .def("getVelocity", &RotParticleViPy::getVelocity, "Returns the current translational velocity of the particle\n") .def("getLinearVelocity", &RotParticleViPy::getLinearVelocity, "Returns the current translational velocity of the particle\n") .def("setLinearVelocity", &RotParticleViPy::setLinearVelocity, "Specifies the current translational velocity of the particle\n") .def("getAngularVelocity", &RotParticleViPy::getAngularVelocity, "Returns the angular velocity of the particle at time t - 0.5*dt\n") .def("setAngularVelocity", &RotParticleViPy::setAngularVelocity, "Specifies the angular velocity of the particle at time t - 0.5*dt\n") .def("getAngularVelocityT", &RotParticleViPy::getAngularVelocityT, "Returns the angular velocity of the particle at time t\n") .def("setAngularVelocityT", &RotParticleViPy::setAngularVelocityT, "Specifies the angular velocity of the particle at time t\n") .def("getAcceleration", &RotParticleViPy::getAcceleration, "Returns the current translational acceleration of the particle\n") .def("getLinearAcceleration", &RotParticleViPy::getLinearAcceleration, "Returns the current translational acceleration of the particle\n") .def("setLinearAcceleration", &RotParticleViPy::setLinearAcceleration, "Specifies the translational acceleration of the particle\n") .def("getAngularAcceleration", &RotParticleViPy::getAngularAcceleration, "Returns the current angular acceleration of the particle\n") .def("setAngularAcceleration", &RotParticleViPy::setAngularAcceleration, "Specifies the angular acceleration of the particle\n") .def("getRad", &RotParticleViPy::getRad, "Returns the radius of the particle\n") .def("getRadius", &RotParticleViPy::getRad, "Returns the radius of the particle\n") .def("getCentre", &RotParticleViPy::getPosn, "Returns the current position of the particle\n") .def("getCenter", &RotParticleViPy::getPosn, "Returns the current position of the particle\n") .def("getMass", &RotParticleViPy::getMass, "Returns the mass of the particle\n") ; } } } ./Python/esys/lsm/ElasticMesh2DPrmsPy.cpp0000664000175000017500000000705712176660653020155 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ElasticMesh2DPrmsPy.h" namespace esys { namespace lsm { NRotElasticLinMeshPrmsPy::NRotElasticLinMeshPrmsPy( const string &interactionName, const string &meshName, double normalK ) : ETriMeshIP(interactionName, meshName, normalK) { } NRotElasticMesh2DPrmsPy::NRotElasticMesh2DPrmsPy( const string &interactionName, const string &meshName, double normalK ) : ETriMeshIP(interactionName, meshName, normalK) { } using boost::python::arg; void exportElasticMesh2DPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "NRotElasticLinMeshPrms", "Defines linear elastic contact interaction between particles and a" " piece-wise linear mesh surface.\n", boost::python::init< const std::string &, const std::string &, double >( ( arg("name"), arg("meshName"), arg("normalK") ), "Parameters defining elastic contact interactions between particles and 2D mesh walls\n" "@type name: string\n" "@kwarg name: Name assigned to the group of interactions.\n" "@type meshName: string\n" "@kwarg meshName: Name of the mesh for which the interactions apply.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the linear elastic contact interaction." ) ); boost::python::class_( "NRotElasticMesh2DPrms", "Defines linear elastic contact interaction between particles and a" " 2D mesh.\n" "DEPRECATED: Use NRotElasticLinMeshPrms instead.", boost::python::init< const std::string &, const std::string &, double >( ( arg("name"), arg("meshName"), arg("normalK") ), "Parameters defining elastic contact interactions between particles and 2D mesh walls\n" "@type name: string\n" "@kwarg name: Name assigned to the group of interactions.\n" "@type meshName: string\n" "@kwarg meshName: Name of the mesh for which the interactions apply.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for the linear elastic contact interaction." ) ); } } } ./Python/esys/lsm/TriangleFieldSaverPrmsPy.cpp0000664000175000017500000001252312176660653021272 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Python/esys/lsm/TriangleFieldSaverPrmsPy.h" #include #include namespace esys { namespace lsm { TriangleScalarFieldSaverPrmsPy::TriangleScalarFieldSaverPrmsPy( const std::string& meshName, const std::string& fieldName, const std::string& fileName, const std::string& fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ): FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_MeshName(meshName) {} TriangleVectorFieldSaverPrmsPy::TriangleVectorFieldSaverPrmsPy( const std::string& meshName, const std::string& fieldName, const std::string& fileName, const std::string& fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ): FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_MeshName(meshName){} using boost::python::arg; void exportTriangleFieldSaverPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< TriangleScalarFieldSaverPrmsPy, boost::python::bases >( "TriangleScalarFieldSaverPrms", "Class describing parameters for saving data located on a triangle mesh to" " file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("meshName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Parameters defining a scalar field saver for triangle meshes\n" "@type meshName: string\n" "@kwarg meshName: Name of the mesh for which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field - 'pressure'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data - 'RAW'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; boost::python::class_< TriangleVectorFieldSaverPrmsPy, boost::python::bases >( "TriangleVectorFieldSaverPrms", "Class describing parameters for saving data located on a triangle mesh to" " file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("meshName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Parameters defining a vector field saver for triangle meshes\n" "@type meshName: string\n" "@kwarg meshName: Name of the mesh for which data are saved\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field - 'force'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data - 'RAW'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; } } // namespace lsm } // namespace esys ./Python/esys/lsm/ElasticMesh2DPrmsPy.h0000664000175000017500000000332412176660653017613 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMELASTICMESH2DPRMSPY_H #define ESYS_LSMELASTICMESH2DPRMSPY_H #include "Model/ETriMeshIP.h" #include using std::string; namespace esys { namespace lsm { /*! \class NRotElasticMesh2DPrmsPy \brief class for elastic 2D mesh interactions in python interface. Deprecated: use NRotElasticLinMeshPrmsPy. */ class NRotElasticMesh2DPrmsPy : public ETriMeshIP { public: NRotElasticMesh2DPrmsPy( const string &interactionName, const string &meshName, double normalK ); }; /*! \class NRotElasticLinMeshPrmsPy \brief Class for elastic piece-wise linear mesh interactions in the python interface. */ class NRotElasticLinMeshPrmsPy : public ETriMeshIP { public: NRotElasticLinMeshPrmsPy( const string &interactionName, const string &meshName, double normalK ); }; void exportElasticMesh2DPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMELASTICMESH2DPRMSPY_H ./Python/esys/lsm/doc/0000775000175000017500000000000012176660653014443 5ustar vborosvboros./Python/esys/lsm/doc/Util.py0000664000175000017500000000320412176660653015731 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Provides simple functions for accessing documentation strings. """ from esys.lsm.util import InstallInfo __substDict = dict() __substDict["version"] = InstallInfo.version __substDict["pkgName"] = InstallInfo.pkgName __sectionDict = dict() def setSectionDoc(sectionName, docStr): """ Sets the epydoc formatted documentation for the specified section (performs substitutions on docStr). @type sectionName: str @param sectionName: Name of a section. @type docStr: str @param docStr: Documentation string. @rtype: str @return: the epydoc doc string with substitutions. """ __sectionDict[sectionName] = (docStr % __substDict) return __sectionDict[sectionName] def getSectionDoc(sectionName): """ Returns epydoc formatted documentation for the specified section. @type sectionName: str @param sectionName: Name of a section. @rtype: str @return: epydoc doc string. """ return __sectionDict[sectionName] ./Python/esys/lsm/doc/__init__.py0000664000175000017500000000151512176660653016556 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Documentation package. @group Getting Started: Installation, Overview @group Tutorials: GravityTut, InitialConfigTut, VisualisationTut @undocumented: Util """ ./Python/esys/lsm/doc/Installation.py0000664000175000017500000001024412176660653017457 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# __docformat__ = "restructuredtext en" import esys.lsm.doc.Util __installDoc = \ """ Installation ============ Package Dependencies -------------------- In order to build the %(pkgName)s software, the following packages are required: - boost version 1.32 or later (including boost-python): http://www.boost.org - python version 2.3 or later: http://www.python.org - MPI: http://www.mpi-forum.org (known to work with with LAM/MPI version 6.7 or later http://www.lam-mpi.org and with SGI's MPT http://techpubs.sgi.com/) - CppUnit version 1.10 or later http://cppunit.sourceforge.net/cppunit-wiki Optional packages include: - epydoc version 2.1 or later for building python API HTML documentation: http://epydoc.sourceforge.net - docutils version 0.3.5 or later for building tutorial documentation: http://docutils.sourceforge.net - povray version 3.6 or later for rendering simulation data: http://www.povray.org - VTK version 4.2 or later for rendering simulation data: http://www.vtk.org Building the Source Package --------------------------- %(pkgName)s uses the autotools (autoconf, automake and libtool) build system to compile source code. After the lsmearth-%(version)s.tar.gz source has been downloaded and unziped/untared, change into the %(pkgName)s top level source directory which contains the ``configure`` script. The ``configure`` shell script attempts to guess correct values for various system-dependent variables used during compilation. A typical invocation of the ``configure`` script on a system with LAM-MPI installed would be:: $ ./configure CC=mpicc CXX=mpic++ --prefix=/opt/pkgs/lsmearth-%(version)s On an MPT system (Altix 3700, for example), the invocation of ``configure`` would be:: $ ./configure CC=gcc CXX=g++ --prefix=/opt/pkgs/lsmearth-%(version)s In both these cases, the ``CC`` and ``CXX`` configure variables are used to set the C and C++ compilers, respectively. The ``--prefix=/opt/pkgs/lsmearth-%(version)s`` option sets the root installation path, so that in these cases the %(pkgName)s executables, libraries, etc will be installed under ``/opt/pkgs/lsmearth-%(version)s/bin``, ``/opt/pkgs/lsmearth-%(version)s/lib``, etc. Running:: $ ./configure --help will list the command line options (and brief descriptions) for the ``configure`` script. Once the ``configure`` script has been run, and the various ``Makefile`` files have been generated, the binaries can be built by issuing the:: $ make command. Parallel builds are supported, so on multiple (or hyper-threaded) CPU machines:: $ make -j N will cause ``N`` files to compile simultaneously. Issuing the:: $ make install command installs binary, data and python package and module files. The installation can be tested with:: $ make installcheck which runs a series of unit-tests using the **installed** package binaries. Environment Variables --------------------- Typically, there are three environment variables which need to be set before being able to run an %(pkgName)s python script: ``PATH``, ``LD_LIBRARAY_PATH`` and ``PYTHONPATH``. Assuming that the ``configure`` script was run with the ``--prefix=/opt/pkgs/lsmearth-%(version)s`` option, these environment variables would be set as follows:: $ export PATH=/opt/pkgs/lsmearth-%(version)s/bin:$PATH $ export LD_LIBRARAY_PATH=/opt/pkgs/lsmearth-%(version)s/lib:$LD_LIBRARY_PATH $ export PYTHONPATH=/opt/pkgs/lsmearth-%(version)s/lib/python2.3/site-packages:$PYTHONPATH :summary: Installation documentation. """ __doc__ = esys.lsm.doc.Util.setSectionDoc("InstallSection", __installDoc) ./Python/esys/lsm/doc/GravityTut.py0000664000175000017500000002737712176660653017157 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# __docformat__ = "restructuredtext en" import esys.lsm.doc.Util from esys.lsm.util import Vec3,BoundingBox from esys.lsm import LsmMpi, NRotSphere, GravityPrms __gravTutSection = \ """ Tutorial 1: A Particle Falling Due To Gravity ============================================== This tutorial analyses a simple model where a particle falls due to the influence of gravity. There are no fixed objects, and no interactions between particles, just a spherical particle falling in space. Although the example is very simple, it does illustrate the important basic features of running a simulation. The Complete Script ------------------- The complete script for the simulation is as follows:: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox sim = LsmMpi(numWorkerProcesses=4, mpiDimList=[2,2,1]) sim.initVerletModel( particleType = "NRotSphere", gridSpacing = 2.5, verletDist = 0.5 ) domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20, 20, 20)) sim.setSpatialDomain(domain) particle = NRotSphere(id=0, posn=Vec3(0,0,0), radius=1.0, mass=1.0) sim.createParticle(particle) sim.createInteractionGroup( GravityPrms(name="earth-gravity", acceleration=Vec3(0,-9.81,0)) ) sim.setTimeStepSize(0.001) sim.setNumTimeSteps(10000) sim.run() Before explaining the above statements, the command line for running this script is demonstrated. Executing an LSM Simulation Python Script ----------------------------------------- If the above script is saved to the file ``GravitySim.py``, the linux/unix command line for running the script under LAM MPI is:: $ mpiexec -machinefile hosts.txt -np 1 /absolute/path/to/lsm/mpipython GravitySim.py where the file ``hosts.txt`` contains information about the various MPI hosts. In its simplest form, the ``hosts.txt`` file can contain just a single line of text:: localhost which causes all MPI processes to be invoked on the local machine. To execute the script, e.g. on an SGI Altix, using SGI's MPI implementation (MPT) the command line is:: $ mpirun -up 5 -np 1 /absolute/path/to/lsm/mpipython GravitySim.py In both these cases the initial number of MPI processes is specified by the ``-np`` option and should always have value ``1``. The python script is used to specifiy a number of dynamically created MPI processes and the simulation computations are distributed across these dynamically created processes. The MPT ``mpirun`` command requires the ``-up`` option to specify the *MPI universe size*, which is just the number of all MPI processes. Analysing the Script -------------------- Importing Packages and Modules ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In order to use the LSM python library to run simulations, it must be *imported* into the script. The first two lines:: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox achieve the import. The first statement imports a multitude of classes and functions into the current python *namespace* from the `esys.lsm` *package*. The second ``import`` statement imports the two specified classes into the the namespace: `Vec3` and `BoundingBox`. Objects of class ``Vec3`` are 3-element vectors of floating point values (representing 3D points, for example) and objects of class ``BoundingBox`` represent an axis-aligned rectangular-prism/box. There are a number of subpackages defined within the `esys.lsm` top-level package. Each subpackage defines classes and functions which may be imported to provide various functionality: `esys.lsm.benchmarks` Defines modules and packages which in turn define simlation scripts which are used for performance analysis. `esys.lsm.doc` Defines documentation-only python modules with scripting tutorials. `esys.lsm.examples` Defines sub-packages and modules of example simulation scripts. `esys.lsm.geometry` Defines modules for generating initial packings/configurations of LSM particles and bonds. `esys.lsm.sim` Base classes for different types of simulations and helper classes for running *suites* of simulations. `esys.lsm.util` Utility package providing basic common functionality. `esys.lsm.vis` Visualisation packages and modules. Creating and Initialising the Simulation Object ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Once the LSM modules have been imported, the simulation object is created and initialised:: sim = LsmMpi(numWorkerProcesses=4, mpiDimList=[2,2,1]) sim.initVerletModel( particleType = "NRotSphere", gridSpacing = 2.5, verletDist = 0.5 ) The first statement creates an `LsmMpi` object. ``LsmMpi`` objects provide the means to define and run LSM simulations. Here, two arguments are provided to the ``LsmMpi`` *constructor*: ``numWorkerProcesses`` The number of MPI *worker* processes which are dynamically created. ``mpiDimList`` A 3 element list of integers which specify a regular axis-aligned grid decomposition of the rectangular domain. Each domain-cell of the grid is assigned to an MPI process. The individual MPI processes are then responsible for performing calculations on particles which lie in their assigned cell. The second statement, is a call to the `LsmMpi.initVerletModel` *method* of the ``sim`` object. This method defines the type of discrete-element particles which are to be used in the simulation and also initialises data-structures used in the contact detection algorithm. The three arguments are defined as follows: ``particleType`` A string defining the type of discrete-element particle. In this example, particles are non-rotational spheres ``"NRotSphere"``. ``gridSpacing`` A regular grid of cubic cells is used to efficiently determine the neighbouring particles of each particle. This argument defines the length of the cubic cell sides and needs to be greater than the maximum particle radius. ``verletDist`` This distance determines the frequency with which neighbour-lists/contacts are updated. If any particle moves further than this distance during the course of a simulation, then the neighbour lists (and interactions/contacts) are updated. Optimal values for ``gridSpacing`` and ``verletDist`` are simulation dependent and the parameters must obey the constraint ``gridSpacing > maxRadius + verletDist``, where ``maxRadius`` is the maximum radius of all particles. Smaller ``verletDist`` values will lead to smaller neighbour/contact lists and faster force calculations. However, a small ``verletDist`` value also means more frequent recalculation of the neighbour lists. Setting the Spatial Domain ^^^^^^^^^^^^^^^^^^^^^^^^^^ The next step in parameterising the simulation is to specify the spatial domain over which particles are *tracked*. The LSM allows the specification of a rectangular box as the bounding domain:: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20, 20, 20)) sim.setSpatialDomain(domain) Here, the ``domain`` variable has been set as a `BoundingBox` object. The ``BoundingBox`` constructor takes two `Vec3` arguments, a minimum point (lower left back corner) ``Vec3(-20,-20,-20)`` and a maximum point (upper right front corner) ``Vec3(20, 20, 20)``. This domain specifies a cube with side length ``40`` and centred at the origin. The `LsmMpi.setSpatialDomain` method is called to specify the simulation domain. Equivently, the domain could have been set in a single statement as follows:: sim.setSpatialDomain(BoundingBox(Vec3(-20,-20,-20), Vec3(20, 20, 20))) Creating a Spherical Particle ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Now that the internal contact detection object and spatial domain have been initialised, objects relating to the actual discrete element physics can be created. First a particle is constructed within the model:: particle = NRotSphere(id=0, posn=Vec3(0,0,0), radius=1.0, mass=1.0) sim.createParticle(particle) The ``particle`` variable is assigned to a `NRotSphere` object and this object is then provided as an argument to the `LsmMpi.createParticle` method. Inside the ``sim.createParticle`` method, an identical **copy** of the ``particle`` argument is constructed and added internally to the ``LsmMpi`` simulation ``sim`` object. Creating the Gravity Interaction Group ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In order to create simulations of interest, not only must the initial particle conditions of a simulation be specified but also, forces imparted on particles also should to be introduced. Within the LSM scripting environment, these different types of forces are termed *interaction groups*. Creating an interaction group within the model specifies how discrete-element particles interact with each other and also how they interact with other entities within the model. Gravity is introduced into the model by creating an interaction group as follows:: sim.createInteractionGroup( GravityPrms(name="earth-gravity", acceleration=Vec3(0,-9.81,0)) ) The `LsmMpi.createInteractionGroup` method, of the ``sim`` object, is called with a `GravityPrms` argument. The ``GravityPrms`` argument specifies that a gravity interaction group is created in the model, and this gravity group causes all particles in the model to be subjected to a *gravitational* force with acceleration ``acceleration=Vec3(0,-9.81,0)``. All interaction groups have an associated `InteractionPrms` subclass, and the constructors of these ``InteractionPrms`` subclasses always have a ``name`` argument. This ``name`` argument is used to uniquely identify an interaction group when manipulating the group using the ``LsmMpi`` interface. Running the Simulation ^^^^^^^^^^^^^^^^^^^^^^ To execute the time-stepping scheme for integrating the equations of motion, the time-step size and number of time-steps are specified before calling the `LsmMpi.run` method of the ``sim`` object:: sim.setTimeStepSize(0.000025) sim.setNumTimeSteps(600000) sim.run() Instead of executing all time-steps via the ``run`` method, individual steps may be specified in a loop as follows:: sim.setTimeStepSize(0.000025) maxTime = 600000*sim.getTimeStepSize() t = 0.0 while (t < maxTime): sim.runTimeStep() t += sim.getTimeStepSize() Here, the `LsmMpi.runTimeStep` method is called within a ``while`` loop to execute individual time-steps. This form of performing the integration allows the execution of arbitrary additional code before and after each time-step. Summary ------- This simple gravity simulation example illustrates the basic steps involved in all LSM simulations scripts: 1. Construct and initialise an LSM simulation object (`LsmMpi`). 2. Specify the spatial domain. 3. Create an initial configuration of particles within the model. 4. Specify inter-particle interactions and/or interactions between particles and the environment. 5. Executing the time integration. Of course, the purpose of running simulations is to produce data. In this simple gravity example, neither saving data or visualisation of particles has been covered. These topics are examined in subsequent tutorials. """ __doc__ = \ esys.lsm.doc.Util.setSectionDoc("GravityTutSection",__gravTutSection) \ + "\n:summary: A simple gravity simulation.\n" ./Python/esys/lsm/doc/VisualisationTut.py0000664000175000017500000001766312176660653020361 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# __docformat__ = "restructuredtext en" import esys.lsm.doc.Util from esys.lsm.vis.core import Scene, Camera, Sphere, GlyphData from esys.lsm.geometry import SimpleSphere, SimpleBlock, CubicBlock from esys.lsm.geometry import HexagBlock, RandomBoxPacker, ParticleCollection from esys.lsm.geometry import RandomSpherePacker __visualisationTutSection = \ """ Tutorial 3: Visualisation ========================= The `esys.lsm.vis` package provides sub-packages and modules for rendering data to screen and/or image files. This tutorial covers the fundamentals of the API. POV-Ray and VTK Renderers ------------------------- The `esys.lsm.vis` package provides a Python API which delegates calls to 3rd-party *render* software. Currently, there are two *renderer* modules, ``esys.lsm.vis.povray``, which delegates calls to POV-ray_ ray-tracing software, and ``esys.lsm.vis.vtk`` which delegates calls to Kitwares VTK_ scientific visualisation library. .. _POV-Ray: http://www.povray.org .. _VTK: http://www.vtk.org The main reason for the existence of the ``esys.lsm.vis`` package is to allow the same Python code to be executed to produce images using either VTK or POV-Ray as the *render engine*. The ``esys.lsm.vis`` API also hopefully simplifies visualisation tasks with a minimal loss in flexibility. Scenes, Cameras and Objects --------------------------- There are four basic steps when creating a visualisation of a data-set: (1) Creating a `Scene` object (2) Adding objects to the Scene (3) Positioning the `Camera` to view the objects (4) Rendering the ``Scene`` to produce an image Here is an example script which renders two spheres:: import esys.lsm.vis.povray import esys.lsm.vis.vtk renpkg = esys.lsm.vis.povray scene = renpkg.Scene() scene.add(renpkg.Sphere(center=[0.0, 0.0, 0.0], radius=1.0)) scene.add(renpkg.Sphere(center=[2.0, 0.0, 0.0], radius=0.75)) scene.getCamera().setPosn([0.0, 0.0, -4.0]) scene.getCamera().setLookAt([1.0, 0.0, 0.0]) scene.render(size=[512,384], offScreen=False, interactive=True) As usual, the script begins with ``import`` statements to load packages and define classes/functions. Here, the ``esys.lsm.vis.povray`` and ``esys.lsm.vis.vtk`` modules are both imported into the script. Next, the ``esys.lsm.vis.povray`` package is assigned to the ``renpkg`` variable and the classes from this package will be used to construct the scene and generate an image. An object of class ``renpkg.Scene`` is created and assigned to the ``scene`` variable. ``Scene`` objects are containers for objects appearing in a visualisation. Two calls to the `Scene.add` method are then used to add two `Sphere` objects to the scene. The camera is then positioned at coordinate ``(0,0,-4)`` with a call to the `Camera.getPosn` method and the camera is *pointed at* the coordinate ``(1,0,0)`` which is situated between the two spheres. Lastly, the scene is rendered as an image with the call to the `Scene.render` method. The call to the ``render`` method is passed three arguments: ``size`` A pair of ``int`` values specifying the size of the image. In the above example, the image size is 512 pixels wide and 384 pixels high. ``offScreen`` A ``bool`` indicating whether a window is displayed to screen. In the above example, this argument is set to ``False`` so that a window is displayed on-screen. ``interactive`` A ``bool`` indicating whether the displayed window allows interaction. Typically, this means that the ``render`` method will *pause* until the user exits the window (by typing the letter ``q``). The ``esys.lsm.vis.vtk.Scene`` renderer window allows the user to manipulate the camera (zoom, translate and rotate) with the mouse. The ``interactive`` argument only has effect if ``offScreen`` is set to ``True``. The ``Scene.render`` method also accepts ``fileName`` and ``imageType`` arguments for saving an image to file, see `Scene.render` documentation for details. Simple Animations ----------------- Here, the camera is rotated about the look-at point to generate a simple animation:: import esys.lsm.vis.povray import esys.lsm.vis.vtk import math renpkg = esys.lsm.vis.vtk scene = renpkg.Scene() scene.add(renpkg.Sphere(center=[-3.5, 0.0, 0.0], radius=1.75)) scene.add(renpkg.Cube(minPt=[-1.0, 0.0, 0.0], sideLength=2.75)) scene.getCamera().setPosn([2.0, 6.0, -6.0]) scene.getCamera().setLookAt([0.0, 0.0, 0.0]) numFrames = 300 deltaRadians = 2.0*math.pi/numFrames for i in xrange(0,numFrames): scene.getCamera().rotatePosn( axis = [0, deltaRadians, 0], axisPt = scene.getCamera().getLookAt() ) scene.render(size=[512,384], offScreen=False, interactive=False) scene.render(size=[512,384], offScreen=False, interactive=True) After the imports, VTK is chosen as the renderer package (that is, ``esys.lsm.vis.vtk`` assigned to ``renpkg``), and two objects are added to the scene: a sphere and a cube. The initial position and look-at position of the camera is set before entering the ``for`` loop to generate the frames. The `Camera.rotatePosn` method is used to incrementally rotate the camera position about a *y*-vector which passes through the camera look-at coordinate. The scene is rendered on-screen in each step of the ``for`` loop with the ``interactive`` parameter set to ``False``. At completion of the ``for`` loop, the final frame is rendered once again, but this time with ``interactive=True`` so that the script pauses until the render window is exited. Visualising a Data-Set Using GlyphData -------------------------------------- An alternative to creating individual objects within a scene as was done with the ``scene.add(Sphere(centre=(0,0,0), radius=1.0))`` statements is to use a `GlyphData` object. ``GlyphData`` objects are used to generate multiple *glyphs* (spheres, arrows, cylinders, disks,...) of the same type for a given set of data. The following example script uses a ``GlyphData`` object to display disks with orientation information from a table of values:: import esys.lsm.vis.povray import esys.lsm.vis.vtk # # Create table of data # # table = [ # x, y, z, radius, degrees [ 0, 0, 0, 0.20, 10.0] [ 1, 0, 0, 0.30, 40.0] [ 1, 1, 0, 0.40, 60.0] [ 0, 1, 0, 0.50, 80.0] [ 2, 0, 0, 0.40, 100.0] [ 2, 1, 0, 0.30, 120.0] [ 2, 2, 0, 0.30, 140.0] ] numRows = len(table) renpkg = esys.lsm.vis.povray diskExtractor = \\ renpkg.DiskExtractor( radiusMap = lambda idx: table[idx][3], centerMap = lambda idx: table[idx][0:3], radiusScale = 1.0 ) disks = renpkg.GlyphData(xrange(0, numRows), diskExtractor) arrowExtractor = \\ renpkg.ArrowExtractor( tailPtMap = lambda idx: table[idx][0:3] vecMap = lambda idx: getVector(table[idx][3], table[idx][0:3], table[idx][4]) ) arrows = renpkg.GlyphData(xrange(0, numRows), arrowExtractor) scene = renpgk.Scene() scene.add(disks) scene.add(arrows) scene.getCamera().setPosn((1,1,-5)) scene.getCamera().setLookAt((1,1,0)) scene.render(offScreen=False, interactive=True, size=[512,512]) """ __doc__ = \ esys.lsm.doc.Util.setSectionDoc("VisualisationSection",__visualisationTutSection) \ + "\n:summary: Visualising data tutorial.\n" ./Python/esys/lsm/doc/InitialConfigTut.py0000664000175000017500000003742712176660653020246 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# __docformat__ = "restructuredtext en" import esys.lsm.doc.Util from esys.lsm.util import Vec3, BoundingBox, seedDefaultRng from esys.lsm.geometry import SimpleSphere,SimpleBlock, CubicBlock from esys.lsm.geometry import HexagBlock, RandomBoxPacker, ParticleCollection from esys.lsm.geometry import RandomSpherePacker __initCfgTutSection = \ """ Tutorial 2: Creating Initial Configurations of Particles ======================================================== Part of designating the initial conditions for a discrete element simulation is to specify a starting configuration of particles. The `esys.lsm.geometry` package provides classes for generating basic initial *packings* of spherical particles. This tutorial demonstrates the use of these classes for generating various types of packings. Regular Sphere Packings of Uniformly Sized Spheres -------------------------------------------------- There are three classes for generating rectangular blocks of regularly-packed particles: `esys.lsm.geometry.SimpleBlock` Spheres packed such that their centre points form a regular grid. Each sphere has a maximum of six contacting neighbours. `esys.lsm.geometry.CubicBlock` Spheres packed in a cubic close packing. `esys.lsm.geometry.HexagBlock` Spheres packed in a hexagonal close packing. A good introduction to sphere packing, which defines *cubic close* and *hexagonal close* packings, can be found at http://mathworld.wolfram.com/SpherePacking.html. The following Python code illustrates the generation of three packing configurations:: from esys.lsm.geometry import SimpleBlock,CubicBlock,HexagBlock simpleBlk = SimpleBlock(dimCount = [10,20,5], radius = 0.5) cubicBlk = CubicBlock(dimCount = [20,20,20], radius = 0.25) hexagBlk = HexagBlock(dimCount = [5,10,15], radius = 1.0) The ``SimpleBlock``, ``CubicBlock`` and ``HexagBlock`` constructors each take two arguments: ``dimCount`` A three-element list of integers indicating the number of particles in each axis direction. ``radius`` The radius of each particle in the packing. Thus, the ``simpleBlk`` packing, consists of ``10*20*5=1000`` particles of radius ``0.5`` arranged in an axis-aligned block which is ``10`` particles wide in the *x* direction, ``20`` particles high in the *y* direction and ``5`` particles deep in the *z* direction. Similarly, the ``cubicBlk`` packing consists of ``20*20*20=8000`` particles of radius ``0.25`` and the ``hexagBlk`` packing consists of ``5*10*15=750`` particles of radius ``1.0``. The ``cubicBlk`` and ``hexagBlk`` packings are produced by arranging 2D layers of spheres on top of one another. The 2D layers themselves are produced by arranging linear rows of spheres in a regular triangular packing. By default, each row is aligned with the *x* axis and the 2D layers are generated parallel to the *x*-*z* plane. This default arrangement is referred to as an ``XZY`` *orientation* (``XZ`` layers packed in the ``Y`` direction). The ``HexagBlock`` and ``CubicBlock`` constructors accept an additional ``orientation`` keyword argument, for specifying alternative orientations. For example, the above assignment statements involving the ``cubicBlk`` and ``hexagBlk`` variables are equivalent to:: from esys.lsm.geometry import SimpleBlock,CubicBlock,HexagBlock,Orientation cubicBlk = CubicBlock(dimCount = [20,20,20], radius = 0.25, orientation = Orientation.XZY) hexagBlk = HexagBlock(dimCount = [5,10,15], radius = 1.0, orientation = Orientation.XZY) Alternative ``orientation`` values produce different layer packings. For example:: hexagBlk = HexagBlock(dimCount = [5,10,15], radius = 1.0, orientation = Orientation.YZX) specifies an ``YZX`` orientation. This produces a packing where ``10`` linear-rows (each row consisting of ``5`` particles) parallel with the *y*-axis, are stacked into a layer which is parallel with the *y*-*z* plane. ``15`` of these *y*-*z* layers are then packed in the *x* direction to form the block. Packings of Randomly Sized Spheres ---------------------------------- The following script generates a packing of randomly sized spheres within an axis-aligned box:: from esys.lsm.geometry import RandomBoxPacker from esys.lsm.util import Vec3, BoundingBox, seedDefaultRng minR = 0.2 maxR = 1.0 seedDefaultRng(123454321) rndPkr = \\ RandomBoxPacker( minRadius = minR, maxRadius = maxR, cubicPackRadius = maxR, maxInsertFails = 32000, bBox = BoundingBox(Vec3(0,0,0), Vec3(10,20,5)), circDimList = [False,False,False], tolerance = 0.01*minR ) rndPkr.generate() rndBlk = rndPkr.getSimpleSphereCollection() print "Number of Spheres = ", len(rndBlk) These statements generate a packing of spheres with random radius values ranging between 0.2 and 1.0. After initialising the minimum radius (``minR``) and maximum radius (``maxR``) variables, a `RandomBoxPacker` object is created and assigned to the ``rndPkr`` variable. The ``RandomBoxPacker`` constructor accepts the following arguments: ``minRadius`` Minimum radius of generated spheres. ``maxRadius`` Maximum radius of generated spheres. ``cubicPackRadius`` Initial randomly sized seed particles are generated at positions corresponding to a regular cubic-packed grid of spheres with radius ``cubicPackRadius``. ``maxInsertFails`` Stopping criterion for terminating the random insertion algorithm. Algorithm terminates after ``maxInsertFails`` number of attempts at fitting a randomly generated particle into the box. ``bBox`` A box specifying the region into which particles are packed. A 2D packing can be generated by specifying a zero sized *z* dimension, eg ``bBox=BoundingBox(Vec3(1,1,0),Vec3(21,21,0))`` will generate a 2D packing in the *x*-*y* plane. ``circDimList`` A list of 3 boolean values indicating which (if any) of the box dimensions is circular (note, only a single dimension may be circular). ``tolerance`` Generated particles may overlap by no more than this amount. The construction of the ``RandomBoxPacker`` object does not produce the packing, the packing is generated by the call to the `RandomBoxPacker.generate` method (ie the ``rndPkr.generate()`` statement). The collection of random-sized particles is assigned to the ``rndBlk`` variable. In this example, with the above parameters, the ``rndBlk`` collection contains ``len(rndBlk) == 3501`` `SimpleSphere` objects. The packing algorithm (executed in the ``RandomBoxPacker.generate`` method) has two main parts: the generation of an initial group of *seed* spheres and random insertion of *fill-in* spheres. The seed sphere radii are selected from a uniformly random distribution, and the seed sphere centre positions cooincide with the centre points of spheres of radius ``cubicPackRadius`` arranged in a regular cubic close packing. Fill-in spheres are then generated by randomly choosing locations within the specifed ``bBox`` box and attempting to find a sphere which touches neighbouring spheres (or touches neighbouring spheres and a side of the box) and which has radius in lying in the interval ``[minRadius,maxRadius]``. If no sphere can be found which fits with neighbouring spheres and the boundary then this is recorded as a failed insertion attempt and another random location is selected. When there have been ``maxInsertFails`` *consecutive* failed insertion attempts, the algorithm stops and the ``RandomBoxPacker.generate`` method returns. Useful Methods for Manipulating `SimpleSphere` Collections ---------------------------------------------------------- The `SimpleBlock`, `CubicBlock` and `HexagBlock` are all subclasses of the `ParticleCollection` class while the `RandomBoxPacker` and `RandomSpherePacker` classes provide a ``getParticleCollection`` method for obtaining a ``ParticleCollection`` object. An object of class ``ParticleCollection`` is simply a list/group/collection of `SimpleSphere` objects. The ``ParticleCollection`` class provides methods which are useful for manipulating the group of `SimpleSphere` objects. This section provides some examples of using these methods. Geometrical Transformations: Translation and Rotation ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Once a basic arrangement of spheres has been generated it is often useful to be able to translate, or rotate all of the spheres in the collection. Objects of class `ParticleCollection` provide the `ParticleCollection.translate` and `ParticleCollection.rotate` methods which translate and rotate all ``SimpleSphere`` objects contained in the collection:: from esys.lsm.geometry import SimpleBlock from esys.lsm.util import Vec3 from math import pi smplBlk = SimpleBlock(dimCount=[10,3,1], radius=0.5) smplBlk.translate(translation = Vec3(-5, 0, 0)) smplBlk.rotate(axis = Vec3(0, 0, pi/4.0), pt = Vec3(0, 0, 0)) Here the ``smplBlk`` variable is assigned to a collection of 30 ``SimpleSphere`` objects arranged in a regular grid. The ``translate`` method translates all particles in the collection by ``5`` units in the negative *x* direction. All the ``SimpleSphere`` objects are then rotated by ``pi/4.0`` radians counterclockwise about the *z* axis. Iterating ^^^^^^^^^ The ``ParticleCollection`` class supports the python *iterable* concept, meaning that individual elements of the collection can be enumerated in a loop as follows:: from esys.lsm.geometry import SimpleBlock from esys.lsm.util import Vec3 from math import pi smplBlk = SimpleBlock(dimCount=[10,3,1], radius=0.5) for ss in smplBlk: ss.translate(Vec3(-5,0,0)) ss.rotate(axis = Vec3(0, 0, pi/4.0), pt = Vec3(0, 0, 0)) During each iteration in the ``for`` loop, the *loop variable* ``ss`` is assigned to a ``SimpleSphere`` object in the ``smplBlk`` collection. The above statements result in a final state which is equivalent to the transformations performed by directly calling methods of the ``smplBlk`` object. That is, the above ``for`` loop is equivalent to:: smplBlk = SimpleBlock(dimCount=[10,3,1], radius=0.5) smplBlk.translate(translation = Vec3(-5, 0, 0)) smplBlk.rotate(axis = Vec3(0, 0, pi/4.0), pt = Vec3(0, 0, 0)) Saving to File ^^^^^^^^^^^^^^ Often it is the case that it is desired to run multiple simulations with the same initial configuration of spheres. Rather than generating the packing for each simulation, it is convenient to save the initial configuration of spheres to file and read in this configuration before executing the simulation. Saving the configuration to file is also convenient when it is time consuming to generate the initial configuration, that is, often it is much faster to read a packing of spheres from file rather than compute the positions of particles in the packing each time the data is needed. There are two options for *serializing* the data: custom file formats and Python's built-in serialization modules pickle_ and cPickle_. .. _pickle: http://www.python.org/doc/2.4.2/lib/module-pickle.html .. _cPickle: http://www.python.org/doc/2.4.2/lib/module-cPickle.html Custom File Formats ~~~~~~~~~~~~~~~~~~~ Python's I/O interfaces and simple conversion from basic types to strings (and vice versa) make it relatively simple to save any kind of data to file:: from esys.lsm.geometry import HexagBlock hexagBlk = HexagBlock(dimCount=[10,10,10], radius=0.25) f = file("HexagBlk.txt", "w") for ss in hexagBlk: f.write( "%%s %%s %%s %%s\\n" %% (ss.getId(), ss.getRadius(), ss.getCentre(), ss.getMass()) ) f.close() After constructing the hexagonal close packing of 1000 spheres (and assigning it to the ``hexagBlk`` variable), the file_ ``"HexagBlk.txt"`` is opened in *write* mode. The ``for`` loop then iterates over each ``SimpleSphere`` object in the ``hexagBlk`` collection and writes a line to the ``"HexagBlk.txt"`` file. The ``(%%s %%s %%s %%s\\n) %% (...)`` argument to the ``f.write`` method call is a `string formatting operation`__ and is semantically similar to ``sprintf`` in C. __ http://www.python.org/doc/2.4.2/lib/typesseq-strings.html .. _file: http://www.python.org/doc/2.4.2/lib/built-in-funcs.html#l2h-25 The data can be read from file to reconstruct a ``HexagBlock`` as follows:: from esys.lsm.geometry import HexagBlock, SimpleSphere from esys.lsm.util import Vec3 hexagBlk = HexagBlock() for line in file("HexagBlk.txt", "r"): elemList = line.split(" ") hexagBlk.createParticle( SimpleSphere( id = int(elemList[0]), radius = float(elemList[1]), centre = Vec3(map(float,elemList[2:5])), mass = float(elemList[5]) ) ) First the ``hexagBlk`` variable is assigned to an empty ``ParticleCollection`` object. The ``for`` loop iterates over each line in the ``"HexagBlk,txt"`` file. The ``line`` string is split into a list of string elements, which are delimited by the ``" "`` space character, and this list is assigned to the ``elemList`` variable. In the next statement, a ``SimpleSphere`` object is created within the ``hexagBlk`` collection by calling the ``hexagBlk.createParticle`` method. The arguments to the ``SimpleSphere`` constructor are converted from strings to either an ``int`` value or ``float`` values. The call to ``map(float, elemList[2:5])`` converts the ``elemList[2:5]`` list-slice of three string elements to a list of three ``float`` elements. Saving data in a custom file format offers the advantage of easily being able to observe the data in a text file. Explicity saving data in a specific format may also make it possible to use other software to visualise/analyse the data. Pickling ~~~~~~~~ Python's pickle_ and cPickle_ modules provide a convenient mechanism for serializing Python objects. In Python-speak, serialization is called *pickling* and de-serialization is called *unpickling*. The following Python code pickles the same data as that of the `Custom File Formats`_ section:: from esys.lsm.geometry import HexagBlock import pickle hexagBlk = HexagBlock(dimCount=[10,10,10], radius=0.25) f = file("HexagBlk.pkl", "w") pickle.dump(obj = hexagBlk, file = f, protocol = pickle.HIGHEST_PROTOCOL) f.close() As usual, the ``hexagBlk`` is assigned to a hexagonal close-packed collection of ``SimpleSphere`` objects. The file ``HexagBlk.pkl`` is opened in *write* mode, and the call to the ``pickle.dump`` function takes care of pickling the ``hexagBlk`` object to file. The data is unpickled by executing:: import pickle f = file("HexagBlk.pkl", "r") hexagBlk = pickle.load(file = f) f.close() The ``HexagBlk.pkl`` file is opened in *read* mode and the call to ``pickle.load`` unpickles the data from the file into the original pickled object and this is assigned to the ``hexagBlk`` variable. The advantage of the pickling technique is that it requires far fewer lines of code and the user doesn't have to know the internal structure of the data being saved. The main disadvantage is that the saved data-file is not human-readable and is only loadable by Python. """ __doc__ = \ esys.lsm.doc.Util.setSectionDoc("InitialConfigSection",__initCfgTutSection) \ + "\n:summary: Creating packings of spheres and saving/loading packing-data from file.\n" ./Python/esys/lsm/doc/Makefile.am0000664000175000017500000000164512176660653016505 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmdoc_PYTHON = \ __init__.py \ Installation.py \ InitialConfigTut.py \ GravityTut.py \ Overview.py \ Util.py \ VisualisationTut.py ./Python/esys/lsm/doc/Overview.py0000664000175000017500000001242512176660653016627 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# __docformat__ = "restructuredtext en" import esys.lsm.doc.Util import esys.lsm.util.InstallInfo __esysParticleOverviewSection = \ """ %(pkgName)s Overview ================================== The Lattice Solid Model (LSM) [MoraPAGEOPH1994]_, [PlaceJCompPhys1999]_ is a particle-based model similar to the Distinct Element Model [CundallGeotech1979]_. The model consists of particles which are characterized by their shape, mass, position, orientation and velocity. The particles interact with their nearest neighbours by imparting contact forces. Typically, Discrete Element Model (DEM) particles are spherical and the contact forces consist of a linear elastic normal component and linear elastic tangential component. %(pkgName)s is a parallel implementation of the LSM with a Python_ scripting interface. .. _Python: http://www.python.org Particle Types -------------- Currently, there exist three types of %(pkgName)s spherical particles: *non-rotational*, *rotational*, *thermal-rotational*: Non-rotational Spheres Non-rotational spherical particles possess no rotational degrees of freedom. Objects of class `esys.lsm.NRotSphere` represent non-rotational spherical particles. Rotational Spheres Rotational spherical particles possess orientation information. Particles of this type change orientation according to the applied moments. Objects of class `esys.lsm.RotSphere` represent rotational spherical particles. Thermal Rotational Spheres Thermal rotational spherical particles are the same as "Rotational Spheres" with the addition of thermal properties (temperature and thermal expansion). Objects of class `esys.lsm.RotThermalSphere` represent thermal rotational spherical particles. Inter-particle Interactions --------------------------- Interactions between model particles are also classified as *non-rotational* and *rotational*. Two spherical particles involved in a non-rotational interaction have all forces applied at the centre of mass. Two spherical particles involved in a rotational interaction experience moments due to forces which are, typically, applied at a *contact point*. The inter-particle interactions include: Non-rotational Elastic Purely linear elastic repulsion of particles when in contact. Non-rotational Bonded Linear elastic attraction and repulsion while bond remains intact. Bond *breaks* when a threshold separation distance is reached. Non-rotational Friction Linear elastic repulsion, linear elastic shear rigidity and Coulomb dynamic friction law. Rotational Elastic Linear elastic repulsion as well as linear elastic shear rigidity. Rotational Bonded Linear elastic tension, compression, shear, torsion and bending forces while bond remains intact. Bond *breaks* if a threshold force limit is reached. Rotational Friction Linear elastic repulsion, linear elastic shear rigidity and Coulomb dynamic friction law. Thermal Non-rotational Elastic Linear elastic repulsion as well as heat transfer. Thermal Rotational Bonded Same as "Rotational Bonded" with addition of heat transfer. Thermal Rotational Friction Same as "Rotational Friction" with addition of heat transfer and heat generation during frictional slip. Fixed objects ------------- Particles not only interact with other particles, but also with *fixed* objects within the model. These fixed objects are not subject to the laws of motion and provide a means of imposing particular types of boundary conditions. Fixed objects include: Walls An infinite plane characterized by position and normal direction. Linear Mesh A piecewise linear mesh which can be used to represent a surface in 2D. Triangular mesh A triangular mesh which can be used to represent a surface in 3D. """ __citSection = \ """ References ========== .. [CundallGeotech1979] P.A. Cundall and O.A.D Strack (1979) "A Discrete Numerical Model for Granular Assemblies", *Ge\'otechnique*, **vol. 29**, pp. 47-65. .. [MoraPAGEOPH1994] P. Mora and D. Place (1994) "Simulation of the Stick-Slip Instability", *Pure Appl. Geophys.*, **vol. 143**, pp. 61-87. .. [PlaceJCompPhys1999] D. Place and P. Mora (1999) "The Lattice Solid Model to Simulate the Physics of Rocks and Earthquakes: Incorporation of Friction", *J. Comp. Physics*, **vol. 150**, pp. 332-372. """ __doc__ = \ esys.lsm.doc.Util.setSectionDoc("ESySParticleOverviewSection",__esysParticleOverviewSection) \ + esys.lsm.doc.Util.setSectionDoc("CitationSection",__citSection) \ + ("\n:summary: %s overview.\n" % esys.lsm.util.InstallInfo.pkgName) ./Python/esys/lsm/LsmMpiPy.h0000664000175000017500000003225512176660653015570 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_LSMMPIPY_H #define ESYS_LSM_LSMMPIPY_H // --- boost includes --- #include #include // --- STL includes --- #include #include #include // --- Project includes --- #include "Parallel/LatticeMaster.h" #include "Python/esys/lsm/InteractionGroupPy.h" #include "Python/esys/lsm/BondInteractionGroupPy.h" using std::string; namespace esys { namespace lsm { void exportLsm(); class ParticleScalarFieldSaverPrmsPy; class ParticleVectorFieldSaverPrmsPy; class TaggedParticleScalarFieldSaverPrmsPy; class TaggedParticleVectorFieldSaverPrmsPy; class InteractionScalarFieldSaverPrmsPy; class CheckedInteractionScalarFieldSaverPrmsPy; class TaggedInteractionScalarFieldSaverPrmsPy; class InteractionVectorFieldSaverPrmsPy; class CheckedInteractionVectorFieldSaverPrmsPy; class WallVectorFieldSaverPrmsPy; class TriangleScalarFieldSaverPrmsPy; class TriangleVectorFieldSaverPrmsPy; class NRotBondPrmsPy; class CappedNRotBondPrmsPy; class NRotShortBondPrmsPy; class NRotElasticPrmsPy; class HertzianElasticPrmsPy; class HertzianViscoElasticFrictionPrmsPy; class HertzianViscoElasticPrmsPy; class LinearDashpotPrmsPy; class NRotFrictionPrmsPy; class RotBondPrmsPy; class RotThermBondPrmsPy; class BrittleBeamPrmsPy; class FrictionPrmsPy; class RotFrictionPrmsPy; class RotThermFrictionPrmsPy; class RotElasticPrmsPy; class RotThermElasticPrmsPy; class VWFrictionPrmsPy; class DampingPrmsPy; class LocalDampingPrmsPy; class RotLocalDampingPrmsPy; class ABCDampingPrmsPy; class NRotBondedWallPrmsPy; class NRotSoftBondedWallPrmsPy; class NRotElasticWallPrmsPy; class CheckPointPrmsPy; class RestartCheckPointPrmsPy; class NRotElasticTriMeshPrmsPy; class NRotElasticMesh2DPrmsPy; class NRotElasticLinMeshPrmsPy; class NRotBondedTriMeshPrmsPy; class NRotBondedLinMeshPrmsPy; class RunnablePy; class Vec3Py; class BoundingBoxPy; class GravityPrmsPy; class BuoyancyPrmsPy; class MaxTriggerPrmsPy; void checkMpiDimensions(int numProcesses, const std::vector &mpiDimVector); void checkMpiDimensionsPy(int numProcesses, const boost::python::list &mpiDimList); void checkParticleType(const std::string &particleType); /*! \brief Wrapper to make LatticeMaster methods available in Python */ class LsmMpiPy { public: typedef CLatticeMaster::ParticleIdPair ParticleIdPair; typedef CLatticeMaster::ParticleIdPairVector ParticleIdPairVector; typedef CLatticeMaster::MeshNodeDataVector MeshNodeDataVector; typedef CLatticeMaster::MeshTriDataVector MeshTriDataVector; typedef CLatticeMaster::TriMeshDataPair TriMeshDataPair; LsmMpiPy( int numWorkerProcesses, const boost::python::list &mpiDimList ); virtual ~LsmMpiPy(); int getNumWorkerProcesses() const; void initVerletModel( const std::string &particleType, double gridSpacing, double verletDist ); double getTimeStepSize() const; void setTimeStepSize(double dt); void setTimingFileName(const std::string &fileNamePrefix); void setSlaveTimingFileName(const std::string &fileNamePrefix); std::string getParticleType() const; std::string getLsmVersion() const; void readGeometry(const std::string &fileName); int getNumParticles(); int getTimeStep() const; void createParticles(boost::python::object &iterable); void createParticle(boost::python::object &particle); void createConnections(boost::python::object &iterable); // --- interaction creation functions --- void createNRotElasticInteractGrp(const NRotElasticPrmsPy &prms); void createNRotBondInteractGrp(const NRotBondPrmsPy &bondPrms); void createCappedNRotBondInteractGrp(const CappedNRotBondPrmsPy &bondPrms); void createNRotShortBondInteractGrp(const NRotShortBondPrmsPy &bondPrms); void createNRotFrictionInteractGrp(const NRotFrictionPrmsPy &prms); void createRotBondInteractGrp(const RotBondPrmsPy &bondPrms); BondInteractionGroupPy createRotThermBondInteractGrp(const RotThermBondPrmsPy &bondPrms); void createBrittleBeamInteractGrp(const BrittleBeamPrmsPy &bondPrms); void createFrictionInteractGrp(const FrictionPrmsPy &prms); void createRotFrictionInteractGrp(const RotFrictionPrmsPy &prms); void createRotThermFrictionInteractGrp(const RotThermFrictionPrmsPy &prms); void createRotElasticInteractGrp(const RotElasticPrmsPy &prms); void createRotThermElasticInteractGrp(const RotThermElasticPrmsPy &prms); void createDamping(const DampingPrmsPy &prms); void createLocalDamping(const LocalDampingPrmsPy &prms); void createRotLocalDamping(const RotLocalDampingPrmsPy &prms); void createABCDamping(const ABCDampingPrmsPy &prms); void createGravity(const GravityPrmsPy&); void createBuoyancy(const BuoyancyPrmsPy&); void createVWFrictionIG(const VWFrictionPrmsPy&); void createHertzianElasticIG(const HertzianElasticPrmsPy &prms); void createHertzianViscoElasticFrictionIG(const HertzianViscoElasticFrictionPrmsPy &prms); void createHertzianViscoElasticIG(const HertzianViscoElasticPrmsPy &prms); void createLinearDashpotIG(const LinearDashpotPrmsPy &prms); // --- remove interactions --- void removeInteractionGrp(const std::string&); // --- tagged interaction creation functions --- void createRotFrictionInteractGrpTag(const RotFrictionPrmsPy &prms,int,int,int,int); void createNRotFrictionInteractGrpTag(const NRotFrictionPrmsPy &prms,int,int,int,int); void createLinearDashpotInteractGrpTag(const LinearDashpotPrmsPy &prms,int,int,int,int); void createRotElasticInteractGrpTag(const RotElasticPrmsPy &prms,int,int,int,int); void createElasticInteractGrpTag(const NRotElasticPrmsPy &prms,int,int,int,int); void createExclusion( const std::string &interactionName1, const std::string &interactionName2 ); // --- particle property setting functions --- void setParticleVel(int,const Vec3Py&); void setParticleAngVel(int,const Vec3Py&); void setParticleDensity(int,int,double); void setTaggedParticleVel(int,const Vec3Py&); void setVelocityOfWall(const std::string&,const Vec3Py&); void tagParticleNearestTo(int,int,const Vec3Py&); void setParticleNonDynamic(int); void setParticleNonRot(int); void setParticleNonTrans(int); // ---- checkpointing ----------- void createCheckPointer(const RestartCheckPointPrmsPy &prms); void createCheckPointerThroughMaster(const RestartCheckPointPrmsPy &prms); // write through master void createSnapShots(const CheckPointPrmsPy &prms); void loadCheckPoint(const std::string&); // ------------------------------ int getNumTimeSteps() const; void setNumTimeSteps(int numTimeSteps); // --- Mesh functions --- void readMeshWithTag(const std::string &fileName, const std::string &meshName, int tag); void readMesh(const std::string &fileName, const std::string &meshName); void createTriMesh( const std::string &meshName, const boost::python::object &nodeSequence, const boost::python::object &triSequence ); void translateMesh(const std::string&,const Vec3Py&); void readMesh2D(const std::string &fileName, const std::string &meshName, int tag); void createNRotElasticTriMeshInteractGrp(const NRotElasticTriMeshPrmsPy &prms); void createNRotBondedTriMeshInteractGrp(const NRotBondedTriMeshPrmsPy &prms); void createNRotElasticMesh2DInteractGrp(const NRotElasticMesh2DPrmsPy &prms); void createNRotElasticLinMeshInteractGrp(const NRotElasticLinMeshPrmsPy &prms); void createNRotBondedLinMeshInteractGrp(const NRotBondedLinMeshPrmsPy &prms); void moveSingleMeshNodeBy(const std::string& meshname, int id, const Vec3Py& d); void addPreTimeStepRunnable(RunnablePy &runnable); void addPostTimeStepRunnable(RunnablePy &runnable); void force2dComputations(bool do2d); void setBBoxSpatialDomain(const BoundingBoxPy &domain); void setBBoxSpatialDomainWithCirc( const BoundingBoxPy &domain, const boost::python::list &circDimList ); void setSpatialDomain(const Vec3Py &minPt, const Vec3Py &maxPt); int findClosestParticle(const Vec3Py &pt); Vec3Py getParticlePosn(int particleId); // --- move particles --- void moveTaggedParticlesTo(int tag, const Vec3Py &pt); void moveTaggedParticlesBy(int tag, const Vec3Py &displacement); void moveSingleParticleTo(int particleId, const Vec3Py &pt); // --- wall related functions --- void createWall(const string &name, const Vec3Py &posn, const Vec3Py &normal); void createNRotBondedWall(const NRotBondedWallPrmsPy &prms); void createNRotElasticWall(const NRotElasticWallPrmsPy &prms); void createNRotSoftBondedWall(const NRotSoftBondedWallPrmsPy &prms); void moveWallBy(const string&, const Vec3Py &disp); void setWallNormal(const string&, const Vec3Py &wn); void applyForceToWall(const string&, const Vec3Py&); Vec3Py getWallPosition(const std::string&); Vec3Py getWallForce(const std::string&); void runTimeStep(); void run(); // Exit the simulation after running a series of single steps // of the time-integration method. void exit(); void SetVerbosityPy(bool); // --- field saving functions --- void createParticleScalarFieldSaver( const ParticleScalarFieldSaverPrmsPy &prms ); void createParticleVectorFieldSaver(const ParticleVectorFieldSaverPrmsPy&); void createInteractionScalarFieldSaver(const InteractionScalarFieldSaverPrmsPy &prms); void createCheckedInteractionScalarFieldSaver(const CheckedInteractionScalarFieldSaverPrmsPy &prms); void createInteractionVectorFieldSaver(const InteractionVectorFieldSaverPrmsPy&); void createCheckedInteractionVectorFieldSaver(const CheckedInteractionVectorFieldSaverPrmsPy &prms); void createTaggedParticleScalarFieldSaver(const TaggedParticleScalarFieldSaverPrmsPy&); void createTaggedParticleVectorFieldSaver(const TaggedParticleVectorFieldSaverPrmsPy&); void createTaggedInteractionScalarFieldSaver(const TaggedInteractionScalarFieldSaverPrmsPy&); void addTaggedScalarParticleDistributionSaver(const string&,const string&,const string&,int,int,int,int,int,int,double,double,int); void addVectorTriangleSaveField(const TriangleVectorFieldSaverPrmsPy&); void addScalarTriangleSaveField(const TriangleScalarFieldSaverPrmsPy&); void addVectorWallField(const WallVectorFieldSaverPrmsPy &prms); // --- fields with trigger --- void createParticleVectorFieldSaverWithTrigger(const MaxTriggerPrmsPy&,const ParticleVectorFieldSaverPrmsPy&); void createTaggedParticleVectorFieldSaverWithTrigger(const MaxTriggerPrmsPy&,const TaggedParticleVectorFieldSaverPrmsPy&); void visitNodeRefs2d(const std::string &meshName, boost::python::object pyObject); void visitRefStressPairs2d(const std::string &meshName, boost::python::object pyObject); void visitRefForcePairs(const std::string &meshName, boost::python::object pyObject); void visitParticlesWithId( const boost::python::list &idList, boost::python::object &pyObject ); void visitParticles( boost::python::object &pyObject ); boost::python::list getParticleList(); boost::python::list getParticleWithIdList( const boost::python::list &idList ); void createBonds( const std::string &groupName, const ParticleIdPairVector &idPairVector ); void updateInteractions(); ParticleIdPairVector getBondGroupIdPairs( const std::string &groupName ); void setVerbosityPy(bool verbose); protected: typedef std::map InteractionNameTypeMap; InteractionNameTypeMap &getNameTypeMap(); const InteractionNameTypeMap &getNameTypeMap() const; const CLatticeMaster &getLatticeMaster() const; CLatticeMaster &getLatticeMaster(); private: class Impl; typedef boost::shared_ptr ImplPtr; ImplPtr m_implPtr; }; void setVerbosityPy(bool verbose); } } #endif ./Python/esys/lsm/TriggerPrmsPy.h0000664000175000017500000000221612176660653016626 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ESYS_TRIGGERPRMSPY_H #define __ESYS_TRIGGERPRMSPY_H //--- STL includes --- #include //--- Boost includes --- #include //--- Proejct includes --- #include "Fields/MaxTrigger.h" namespace esys { namespace lsm { class MaxTriggerPrmsPy : public MaxTrigParams { public: MaxTriggerPrmsPy(double,double,int,int); }; void exportTriggerPrms(); } // namespace lsm } // namespace esys #endif // __ESYS_TRIGGERPRMSPY_H ./Python/esys/lsm/BondInteractionGroupPy.h0000664000175000017500000000364512176660653020467 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBONDINTERACTIONGROUPPY_H #define ESYS_LSMBONDINTERACTIONGROUPPY_H #include #include "Python/esys/lsm/ParticleIdPairSetPy.h" namespace boost { namespace python { class object; } } namespace esys { namespace lsm { class LsmMpiPy; /** * Bond interaction group, delegates to an LsmMpiPy object. */ class BondInteractionGroupPy : public InteractionGroupPy { public: BondInteractionGroupPy( LsmMpiPy &lsm, const std::string &name ); /** * Creates a bond between particles with specified ID's. * @param id1 Particle ID. * @param id2 Particle ID. */ void createInteraction(int id1, int id2); /** * Creates bonds between specified pairs of particles. * * @param iterable Sequence of particle ID pairs. */ void createInteractions(boost::python::object &iterable); /** * Return particle-id pairs indicating which particles * are bonded to one another. */ ParticleIdPairSetPy getIdPairSet(); }; void exportBondInteractionGroup(); } // namespace lsm } // namespace esys #endif // ESYS_LSMBONDINTERACTIONGROUPPY_H ./Python/esys/lsm/ParticleIdPairVectorPy.cpp0000664000175000017500000000265012176660653020735 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/ParticleIdPairVectorPy.h" namespace esys { namespace lsm { void exportParticleIdPairVector() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif ParticleIdPairVectorPy::exportVector( "ParticleIdPairVector", "Vector of particle ID pairs." ); } } } ./Python/esys/lsm/Logging.py0000664000175000017500000000217212176660653015640 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import logging import string strLevelDict = dict() strLevelDict["INFO"] = logging.INFO strLevelDict["WARNING"] = logging.WARNING strLevelDict["ERROR"] = logging.ERROR strLevelDict["DEBUG"] = logging.DEBUG strLevelDict["CRITICAL"] = logging.CRITICAL def getLevel(levelString): return strLevelDict[string.upper(levelString)] def getStringLevelList(): return strLevelDict.keys() getLogger = logging.getLogger basicConfig = logging.basicConfig ./Python/esys/lsm/InteractionParamsPy.h0000664000175000017500000003321212176660653020004 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMINTERACTIONPARAMSPY_H #define ESYS_LSMINTERACTIONPARAMSPY_H /*--------------------------------------------------- * * wrapper classes for interaction parameters * *--------------------------------------------------*/ //--- project includes --- #include "Model/BondedInteraction.h" #include "Model/CappedBondedInteraction.h" #include "Model/ElasticInteraction.h" #include "Model/RotElasticInteraction.h" #include "Model/FrictionInteraction.h" #include "Model/RotBondedInteraction.h" #include "Model/VWFrictionInteraction.h" #include "Model/RotFricInteraction.h" #include "Model/RotThermBondedInteraction.h" #include "Model/RotThermFricInteraction.h" #include "Model/RotThermElasticInteraction.h" #include "Model/DampingIGP.h" #include "Model/LocalDampingIGP.h" #include "Model/ABCDampingIGP.h" #include "Model/BodyForceGroup.h" #include "Model/HertzianElasticInteraction.h" #include "Model/HertzianViscoElasticFrictionInteraction.h" #include "Model/HertzianViscoElasticInteraction.h" #include "Model/LinearDashpotInteraction.h" //--- STL includes --- #include namespace esys { namespace lsm { class Vec3Py; /** * Base class for python-exposed interaction parameter classes. * Purely artificial base class to aid documentation. */ class InteractionPrmsPy { public: InteractionPrmsPy(); }; /*! \class DampingPrmsPy \brief wrapper for CDampingIGP */ class DampingPrmsPy : public CDampingIGP { public: DampingPrmsPy( const std::string &type, const std::string &name, double viscosity, int maxIterations ); }; class LinDampingPrmsPy : public DampingPrmsPy { public: LinDampingPrmsPy( const std::string &name, double viscosity, int maxIterations ); }; class RotDampingPrmsPy : public DampingPrmsPy { public: RotDampingPrmsPy( const std::string &name, double viscosity, int maxIterations ); }; /*! \class LocalDampingPrmsPy \brief wrapper for CLocalDampingIGP */ class LocalDampingPrmsPy : public CLocalDampingIGP { public: LocalDampingPrmsPy( const std::string &name, double viscosity ); }; /*! \class RotLocalDampingPrmsPy \brief wrapper for CLocalDampingIGP */ class RotLocalDampingPrmsPy : public CLocalDampingIGP { public: RotLocalDampingPrmsPy( const std::string &name, double viscosity ); }; /*! \class ABCDampingPrmsPy \brief wrapper for ABCDampingIGP */ class ABCDampingPrmsPy : public ABCDampingIGP { public: ABCDampingPrmsPy( const std::string &type, const std::string &name, double viscosity, int maxIterations, const Vec3& vref, const Vec3& pos, const Vec3& normal, double c1 ); }; /*! \class NRotBondPrmsPy \brief wrapper for CBondedIGP */ class NRotBondPrmsPy : public CBondedIGP { public: NRotBondPrmsPy(const std::string&,double,double,int); NRotBondPrmsPy(const std::string&,double,double,int,bool); }; /*! \class CappedNRotBondPrmsPy \brief wrapper for CCappedBondedIGP */ class CappedNRotBondPrmsPy : public CCappedBondedIGP { public: CappedNRotBondPrmsPy(const std::string&,double,double,double,int); }; /*! \class NRotShortBondPrmsPy \brief wrapper for CBondedIGP (used in construction of short bonded IG) */ class NRotShortBondPrmsPy : public CBondedIGP { public: NRotShortBondPrmsPy(const std::string&,double,double,int); }; /*! \class NRotElasticPrmsPy \brief wrapper for CElasticIGP */ class NRotElasticPrmsPy : public CElasticIGP { public: NRotElasticPrmsPy( const std::string &name, double normalK ); NRotElasticPrmsPy( const std::string &name, double normalK, bool scaling ); }; /*! \class HertzianElasticPrmsPy \brief wrapper for CHertzianElasticIGP */ class HertzianElasticPrmsPy : public CHertzianElasticIGP { public: HertzianElasticPrmsPy(const std::string&,double,double); }; /*! \class HertzianViscoElasticFrictionPrmsPy \brief wrapper for CHertzianViscoElasticFrictionIGP */ class HertzianViscoElasticFrictionPrmsPy : public CHertzianViscoElasticFrictionIGP { public: HertzianViscoElasticFrictionPrmsPy( const std::string&, double, double, double, double, double ); }; /*! \class HertzianViscoElasticPrmsPy \brief wrapper for CHertzianViscoElasticIGP */ class HertzianViscoElasticPrmsPy : public CHertzianViscoElasticIGP { public: HertzianViscoElasticPrmsPy(const std::string&,double,double,double); }; /*! \class LinearDashpotPrmsPy \brief wrapper for CLinearDashpotIGP */ class LinearDashpotPrmsPy : public CLinearDashpotIGP { public: LinearDashpotPrmsPy(const std::string&,double,double); }; /*! \class NRotFrictionPrmsPy \brief wrapper for CFrictionIGP */ class NRotFrictionPrmsPy : public CFrictionIGP { public: NRotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK, bool scaling ); NRotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK ); }; /*! \class BrittleBeamPrmsPy \brief wrapper for CRotBondedIGP */ class BrittleBeamPrmsPy : public CRotBondedIGP { private: std::string m_name; // unused ?? public: BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag ); BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag, bool meanR_scaling ); BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag, bool meanR_scaling, double truncated ); }; /*! \class RotBondPrmsPy \brief wrapper for CRotBondedIGP */ class RotBondPrmsPy : public CRotBondedIGP { private: std::string m_name; // unused ?? public: RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag ); RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling ); RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling, bool meanR_scaling ); RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling, bool meanR_scaling, double truncated ); }; /*! \class FrictionPrmsPy \brief wrapper for CRotFrictionIGP */ class FrictionPrmsPy : public CRotFrictionIGP { public: FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient bool rigid, bool meanR_scaling ); FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu // max static frictional coefficient ); FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient bool rigid ); }; /*! \class RotFrictionPrmsPy \brief wrapper for CRotFrictionIGP */ class RotFrictionPrmsPy : public CRotFrictionIGP { public: RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK ); RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling ); RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling, bool rigid ); RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling, bool rigid, bool meanR_scaling ); }; /*! \class RotElasticPrmsPy \brief wrapper for CRotElasticIGP */ class RotElasticPrmsPy : public CRotElasticIGP { public: RotElasticPrmsPy( const std::string& name, double normalK ); RotElasticPrmsPy( const std::string& name, double normalK, bool scaling ); }; /*! \class RotThermElasticPrmsPy \brief wrapper for CRotThermElasticIGP */ class RotThermElasticPrmsPy : public CRotThermElasticIGP { public: RotThermElasticPrmsPy( const std::string &name, double normalK, double diffusivity ); }; /*! \class RotThermFrictionPrmsPy \brief wrapper for CRotThermFrictionIGP */ class RotThermFrictionPrmsPy : public CRotThermFrictionIGP { public: RotThermFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, double diffusivity ); }; /*! \class RotThermBondPrmsPy \brief wrapper for CRotThermBondedIGP */ class RotThermBondPrmsPy : public CRotThermBondedIGP { public: static const int INVALID_BOND_TAG; RotThermBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, double diffusivity, int aTag ); }; /*! \class GravityParamsPy \brief wrapper for GravityIGP */ class GravityPrmsPy : public GravityIGP { public: GravityPrmsPy( const std::string &name, const Vec3Py &acceleration ); }; /*! \class BuoyancyParamsPy \brief wrapper for BuoyancyIGP */ class BuoyancyPrmsPy : public BuoyancyIGP { public: BuoyancyPrmsPy( const std::string &name, const Vec3Py &acceleration, const double &fluidDensity, const double &fluidHeight ); }; /*! \class VWFrictionPrmsPy \brief wrapper for VWFrictionIGP */ class VWFrictionPrmsPy : public VWFrictionIGP { public: VWFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK, double alpha ); }; void exportInteractionPrms(); } // namespace lsm } // namespace esys #endif // ESYS_LSMINTERACTIONPARAMSPY_H ./Python/esys/lsm/LmParticleAdder.hpp0000664000175000017500000000773212176660653017414 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/BoostPythonUtil/Util.h" #include "Python/BoostPythonUtil/PythonIterIterator.h" #include using namespace boost::mpl::placeholders; namespace esys { namespace lsm { template struct Wrap { }; template class PtrWrap { public: PtrWrap(WrappedT &t) : m_p(&t) { } template void operator()(Wrap wrappedT) { (*m_p)(wrappedT); } private: WrappedT *m_p; }; class ExtractIndexer { public: ExtractIndexer(boost::python::object pyOb) : m_currIndex(-1), m_extractIndex(-1), m_pyOb(pyOb) { } int getExtractIndex() const { return m_extractIndex; } template void operator()(Wrap) { ++m_currIndex; if (m_extractIndex < 0) { boost::python::extract extractor(m_pyOb); if (extractor.check()) { m_extractIndex = m_currIndex; } } } private: int m_currIndex; int m_extractIndex; boost::python::object m_pyOb; }; typedef bpu::PythonIterIterator PyObjectIterator; typedef std::vector PyListVector; template class LmAdder { public: LmAdder(CLatticeMaster &lm, PyListVector &pyListVector) : m_currIndex(-1), m_pLm(&lm), m_pPyListVector(&pyListVector) { } template void operator()(Wrap) { ++(this->m_currIndex); typedef bpu::PythonIterIterator TRefIterator; TRefIterator it((*m_pPyListVector)[m_currIndex]); this->m_pLm->template addParticles(it); } private: int m_currIndex; CLatticeMaster *m_pLm; PyListVector *m_pPyListVector; }; template void LmParticleAdder::addParticles( boost::python::object &iterable, CLatticeMaster &lm ) { PyObjectIterator it(iterable); const size_t numTypes = boost::mpl::size::type::value; PyListVector pyListVector; pyListVector.reserve(numTypes); for (size_t i = 0; i < numTypes; i++) { pyListVector.push_back(boost::python::list()); } while (it.hasNext()) { boost::python::object pyOb = it.next(); ExtractIndexer extractIndex(pyOb); boost::mpl::for_each >( PtrWrap(extractIndex) ); if (extractIndex.getExtractIndex() >= 0) { pyListVector[extractIndex.getExtractIndex()].append(pyOb); } else { throw std::runtime_error( boost::python::extract( std::string("Could not extract C++ type from python object:") + boost::python::str(pyOb) ) ); } } boost::mpl::for_each >(LmAdder(lm, pyListVector)); } } } ./Python/esys/lsm/benchmarks/0000775000175000017500000000000012176660653016013 5ustar vborosvboros./Python/esys/lsm/benchmarks/Util.py0000664000175000017500000001454212176660653017310 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Common functionality between benchmarks. """ from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * from time import time import math import sys logger = Logging.getLogger("benchmarks.Util") def getDimList(numParticles): ppd = int(math.ceil(math.pow(numParticles, (1.0/3.0)))) return [ppd,ppd,ppd] def getParticleCollection(numParticles, iterable): pIter = iter(iterable) pColl = ParticleCollection() for i in xrange(0, numParticles): pColl.createParticle(pIter.next()) return pColl def getSimpleBlock(numParticles, radius): return \ getParticleCollection( numParticles, SimpleBlock(getDimList(numParticles), radius) ) def getHexagBlock(numParticles, radius): return \ getParticleCollection( numParticles, HexagBlock(getDimList(numParticles), radius) ) class BenchSim(LsmMpi): def __init__( self, numTimeSteps=10000, numParticles=1000, spawnExe = "", spawnArgList = None ): self.logger = Logging.getLogger(str(self.__class__.__name__)) if (spawnArgList == None): spawnArgList = [] self.logger.info("Constructing LsmMpi") LsmMpi.__init__(self,1,[1,0,0], spawnExe, spawnArgList) self.logger.info("Setting number of time steps to %d" % numTimeSteps) self.setNumTimeSteps(numTimeSteps) self.logger.info("Initialising attributes") self.numParticles = numParticles self.startTime = 0 self.stopTime = 0 self.runTime = 0 def doTimedRun(self): logger.info("Getting number of particles.") numParticles = self.getNumParticles() logger.info("Running simulation, %d particles." % numParticles) self.startTime = time() self.run() self.stopTime = time() self.runTime = self.stopTime - self.startTime if (numParticles != self.getNumParticles()): raise \ Exception( "Mismatch between number of particles at start of" +\ " simulation (%d) and number at end of simulation (%d)." \ % (numParticles, self.getNumParticles()) ) def getRunTime(self): return self.runTime class SimSuite: def __init__(self, benchSimClass): self.simClass = benchSimClass self.simList = [] self.outputFileName = None self.logger = Logging.getLogger("benchmarks.SimSuite") def __iter__(self): return iter(self.simList) def runSimulations(self): self.logger.info("Running simulations...") for sim in self.simList: sim.runSimulation() print "Run time for ",sim.getNumParticles(), " = ",sim.getRunTime() if (self.outputFileName != None): f = file(self.outputFileName, "w") else: f = sys.stdout for sim in self.simList: f.write(str(sim.getNumParticles()) + " ") f.write(str(sim.getRunTime()) + "\n") def run(self): self.runSimulations() def createSim( self, numTimeSteps, numParticles, spawnCmd, spawnCmdArgList ): return \ self.simClass( numTimeSteps, numParticles, spawnCmd, spawnCmdArgList ) def createSims( self, numTimeSteps, numParticlesList, outputFileName, spawnCmdLineList = None, verboseLsm = False ): setVerbosity(verboseLsm) self.outputFileName = outputFileName if ((spawnCmdLineList == None) or (len(spawnCmdLineList)==0)): spawnCmdLineList = [""] self.logger.info("Creating " + str(self.simClass) + " simulations...") self.simList = \ [ self.createSim(numTimeSteps,numParticles,spawnCmdLineList[0],spawnCmdLineList[1:]) for numParticles in numParticlesList ] def getOptionParser(): parser = \ OptParse.LogOptionParser( usage =\ "usage: %prog [options]\n\n" +\ "Runs a suite of benchmark simulations for varying number of particles. " ) parser.add_option( "-n", "--num-time-steps", dest="numTimeSteps", type="int", metavar="N", default=10000, help=\ "The number of time steps for which a simulation is run."+\ " (default N=10000)" ) parser.add_option( "-p", "--num-particles-list", dest="numParticlesList", type="int_list", metavar="L", default=[1000], help=\ "A list specifying the number of particles in each simulation"+\ " (default L=[1000]). One simulation is run for each element in"+\ " this list." ) parser.add_option( "-o", "--output-file-name", dest="outputFileName", type="string", metavar="F", default=None, help=\ "Timing data for each simulation is written to this file"+\ " (default F=None)." ) parser.add_option( "-s", "--spawn-cmd-line-list", dest="spawnCmdLineList", type="string_list", metavar="C", default=None, help=\ "A list specifying the command and arguments used to spawn MPI"+\ " worker processes (default L=[1000])." ) parser.add_option( "-v", "--verbose-lsm", dest="verboseLsm", action="store_true", default=False, help=\ "Generates (lots of) debug output during simulation run" +\ " (default no debug output)" ) return parser ./Python/esys/lsm/benchmarks/__init__.py0000664000175000017500000000146712176660653020134 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Package containing various simulations to be used as a basis for performance analysis. """ import compress import Gravity import gouge2d ./Python/esys/lsm/benchmarks/compress/0000775000175000017500000000000012176660653017646 5ustar vborosvboros./Python/esys/lsm/benchmarks/compress/__init__.py0000664000175000017500000000136512176660653021764 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Elastically bonded block-compression simulations. """ import compbench ./Python/esys/lsm/benchmarks/compress/compbench.py0000664000175000017500000000632112176660653022160 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines L{runSimulation} function which executes compression simulation. """ from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox, InstallInfo from time import * class Loading(Runnable): """ Objects of this class provide the loading mechanism for a compression simulation. """ def __init__(self,lsm): Runnable.__init__(self) self.theLSM=lsm def run(self): """ Moves upper and lower walls by an increment. """ self.theLSM.moveWallBy("lowerWall",Vec3(0.0,0.00005,0.0)) self.theLSM.moveWallBy("upperWall",Vec3(0.0,-0.00005,0.0)) def runSimulation(): """ Initialises elastic block model and runs the compression simulation. """ #setVerbosity(True) mySim=LsmMpi(1,[0,0,0]) mySim.initVerletModel("RotSphere", 2.5, 0.5) mySim.setTimeStepSize(0.01) mySim.setSpatialDomain(BoundingBox(Vec3(-5.0,-5.0,-5.0),Vec3(15.0,25.0,15.0))) mySim.readGeometry( InstallInfo.getDataFilePath("bench_block_10x20x10_r0.15.geo") ); # setup interactions bip=RotBondPrms(0,"bonded",0.5,0.15,0.04,0.017,0.0025,0.0125,0.00125,0.00125) fip=RotFrictionPrms( "friction", 1.0, 0.6, 0.6, 1.0) dip=DampingPrms("Damping","damping1",0.01,50) rdip=DampingPrms("RotDamping","damping2",0.01,50) mySim.createInteractionGroup(bip) mySim.createInteractionGroup(fip) mySim.createExclusion("bonded","friction") mySim.createInteractionGroup(dip) mySim.createInteractionGroup(rdip) # create walls mySim.createWall("lowerWall",Vec3(0.0,0.0,0.0),Vec3(0.0,1.0,0.0)) mySim.createWall("upperWall",Vec3(0.0,20.0,0.0),Vec3(0.0,-1.0,0.0)) wp1=NRotElasticWallPrms("upperWallInteraction","upperWall",1.0) wp2=NRotElasticWallPrms("lowerWallInteraction","lowerWall",1.0); mySim.createInteractionGroup(wp1) mySim.createInteractionGroup(wp2) # setup savers nb_prm=InteractionScalarFieldSaverPrms("bonded","count","nbonds","SUM",0,12000,4) mySim.createFieldSaver(nb_prm) mySim.createFieldSaver( WallVectorFieldSaverPrms( fileName="wf.dat", fieldName="Force", wallName=["lowerWall","upperWall"], fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=12000, timeStepIncr=4 ) ) # add loading function lf=Loading(mySim) mySim.addPreTimeStepRunnable(lf) mySim.setNumTimeSteps(12000) start_time=time() mySim.run() stop_time=time() print "runtime: ", stop_time-start_time, " seconds" if (__name__ == "__main__"): runSimulation() ./Python/esys/lsm/benchmarks/compress/Makefile.am0000664000175000017500000000145212176660653021704 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmbenchmarkscompress_PYTHON = \ __init__.py \ compbench.py ./Python/esys/lsm/benchmarks/gouge2d/0000775000175000017500000000000012176660653017347 5ustar vborosvboros./Python/esys/lsm/benchmarks/gouge2d/gengouge.sh0000775000175000017500000000041112176660653021502 0ustar vborosvboros#!/bin/sh ((XDIM=$1*40)) ((YDIM=$2*40)) ((GOUGE=$2*12)) ((ROUGH=$2*5)) gengeo -x $XDIM -cx -y $YDIM -gouge $GOUGE -gougeMinRadius 0.2 -fault $ROUGH -faultMinRadius 0.2 -minDrivingTag 3 -maxDrivingTag 4 -distanceFromBBoxEdge 1.5 -o bench_gouge.geo -t 10000 -rs 42 ./Python/esys/lsm/benchmarks/gouge2d/__init__.py0000664000175000017500000000127612176660653021466 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import gouge2dbench ./Python/esys/lsm/benchmarks/gouge2d/gouge2dbench.py0000664000175000017500000001031612176660653022256 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines L{runSimulation} function which executes gouge shear simulation. """ from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox, InstallInfo, pathSearcher from time import * import os import sys import popen2 class Loading(Runnable): """ Objects of this class provide the loading mechanism for a compression simulation. """ def __init__(self,lsm,dt,v): Runnable.__init__(self) self.theLSM=lsm self.dx=v*dt def run(self): """ Moves upper and lower walls by an increment parallel to the gouge axis and applies a constant force perpendicular to it. """ t=self.theLSM.getTimeStep() if(t<1000): dx_cur=self.dx*(t/1000.0) else: dx_cur=self.dx self.theLSM.moveWallBy("lowerWall",Vec3(dx_cur,0.0,0.0)) self.theLSM.moveWallBy("upperWall",Vec3(-1.0*dx_cur,0.0,0.0)) self.theLSM.applyForceToWall("upperWallInteraction",Vec3(0.0,-0.25,0.0)); self.theLSM.applyForceToWall("lowerWallInteraction",Vec3(0.0,0.25,0.0)); def runSimulation(): """ Initialises elastic block model and runs the compression simulation. """ dt=0.02 v=0.002 nt=10000 ncpu_x=int(sys.argv[1]) ncpu_y=int(sys.argv[2]) ## setVerbosity(True) mySim=LsmMpi(ncpu_x*ncpu_y,[ncpu_x,ncpu_y,1]) mySim.initVerletModel("RotSphere", 2.5, 0.5) mySim.setTimeStepSize(dt) mySim.force2dComputations(True) # read geometry mySim.readGeometry("bench_gouge.geo") # setup interactions bip=RotBondPrms(0,"bonded",0.5,0.15,0.04,0.017,0.025,0.125,0.0125,0.0125) fip=RotFrictionPrms("friction", 1.0, 0.6, 0.6, 1.0) dip=DampingPrms("Damping","damping1",0.01,50) rdip=DampingPrms("RotDamping","damping2",0.01,50) mySim.createInteractionGroup(bip) mySim.createInteractionGroup(fip) mySim.createExclusion("bonded","friction") mySim.createInteractionGroup(dip) mySim.createInteractionGroup(rdip) # create walls mySim.createWall("lowerWall",Vec3(0.0,0.0,0.0),Vec3(0.0,1.0,0.0)) mySim.createWall("upperWall",Vec3(0.0,40.0,0.0),Vec3(0.0,-1.0,0.0)) wp1=NRotBondedWallPrms("upperWallInteraction","upperWall",1.0,4) wp2=NRotBondedWallPrms("lowerWallInteraction","lowerWall",1.0,3); mySim.createInteractionGroup(wp1) mySim.createInteractionGroup(wp2) # setup savers mySim.createFieldSaver( WallVectorFieldSaverPrms( fileName="wf.dat", fieldName="Force", wallName=["lowerWall","upperWall"], fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=nt, timeStepIncr=10 ) ) mySim.createFieldSaver( WallVectorFieldSaverPrms( fileName="wp.dat", fieldName="Position", wallName=["lowerWall","upperWall"], fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=nt, timeStepIncr=10 ) ) ek_prm=ParticleScalarFieldSaverPrms("e_kin","ekin.dat","SUM",0,nt,10) mySim.createFieldSaver(ek_prm) # add loading function lf=Loading(mySim,dt,v) mySim.addPreTimeStepRunnable(lf) mySim.setNumTimeSteps(nt) nparts=mySim.getNumParticles() print "Particles in the model: ", nparts start_time=time() mySim.run() stop_time=time() run_time=stop_time-start_time # calculate relative performance perf=(nparts*nt)/run_time # print results print "runtime : ", run_time, " seconds" print "performance : ", perf, " particles*timesteps/second" if (__name__ == "__main__"): runSimulation() ./Python/esys/lsm/benchmarks/gouge2d/Makefile.am0000664000175000017500000000143612176660653021407 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmbenchmarksgouge2d_PYTHON = \ __init__.py \ gouge2dbench.py ./Python/esys/lsm/benchmarks/Makefile.am0000664000175000017500000000154612176660653020055 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am SUBDIRS = compress gouge2d lsmbenchmarks_PYTHON = \ __init__.py \ BondedBlock.py \ Util.py \ Gravity.py ./Python/esys/lsm/benchmarks/Gravity.py0000664000175000017500000001035012176660653020011 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Module for running a suite of gravity benchmark simulations. Defines L{GravitySim} class whose instances can be used to run a single simple gravitational simulation. """ from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * from esys.lsm.benchmarks import Util from time import time import math import sys class GravitySim(Util.BenchSim): def __init__( self, numTimeSteps=10000, numParticles=1000, spawnExe = "", spawnArgList = None ): Util.BenchSim.__init__( self, numTimeSteps, numParticles, spawnExe, spawnArgList ) # # Set the time step size so that particles don't # move further than the verletDist. # This is so the sim doesn't need to update neighbour # lists. # self.gravAcceleration = Vec3(0,0,-9.8) self.logger.info("Initialising model") displDist = 2.0 a = self.gravAcceleration.norm() timeStepSize = math.sqrt(displDist/a)/(2.0*numTimeSteps) self.initVerletModel( particleType = "NRotSphere", gridSpacing = 4.0, verletDist = displDist ) self.setTimeStepSize(dt = timeStepSize) def getSimTime(self): return self.getNumTimeSteps()*self.getTimeStepSize() def createParticles(self): """ Creates a regularly packed block of particles within the model. """ # # Create a block of regular packed particles. # blk = Util.getSimpleBlock(self.numParticles, radius=1.0) # # Now determine how far particles will displace under # gravitational acceleration and set the rectangular # simulation domain accordingly. # blkBox = blk.getParticleBBox() maxDisplacement = \ self.gravAcceleration*self.getSimTime()*self.getSimTime() self.logger.info("Max displacement = %f" % maxDisplacement.norm()) absDisplacement = Vec3([abs(maxDisplacement[i]) for i in range(0,3)]) domainBox = \ BoundingBox( blkBox.getMinPt() - absDisplacement, blkBox.getMaxPt() + absDisplacement ) self.logger.info("Setting spatial domain.") self.setSpatialDomain(domainBox) # # Finally create the model particles. # self.logger.info("Creating model particles.") LsmMpi.createParticles(self,blk) def createGravity(self): """ Creates the gravitational body-force within the model. """ self.logger.info("Creating gravity interaction group.") self.createInteractionGroup( GravityPrms( name="9.8m/s", acceleration = self.gravAcceleration ) ) def runSimulation(self): self.createParticles() self.createGravity() self.doTimedRun() def runSimulations( numTimeSteps, numParticlesList, outputFileName, spawnCmdLineList, verboseLsm ): suite = Util.SimSuite(GravitySim) suite.createSims( numTimeSteps, numParticlesList, outputFileName, spawnCmdLineList, verboseLsm ) suite.runSimulations() if (__name__ == "__main__"): parser = Util.getOptionParser() (options, argList) = parser.parse_args() runSimulations( options.numTimeSteps, options.numParticlesList, options.outputFileName, options.spawnCmdLineList, options.verboseLsm ) ./Python/esys/lsm/benchmarks/BondedBlock.py0000664000175000017500000001013112176660653020527 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Module for running a suite of bonded-block benchmark simulations. Defines L{BondedBlockSim} class whose instances can be used to run a single simple I{quivering} elastic block simulation. """ from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * from esys.lsm.benchmarks import Util import random class BondedBlockSim(Util.BenchSim): def __init__( self, numTimeSteps=10000, numParticles=1000, spawnExe = "", spawnArgList = None ): Util.BenchSim.__init__( self, numTimeSteps, numParticles, spawnExe, spawnArgList ) self.normalK = 1.0 self.radius = 1.0 self.verletDist = self.radius/2.0 self.logger.info("Initialising model") timeStepSize = 0.0001 self.initVerletModel( particleType = "NRotSphere", gridSpacing = 4.0, verletDist = self.verletDist ) self.setTimeStepSize(dt=timeStepSize) def getRandomOffset(self): return Vec3([random.random() for i in range(0,3)])*(self.radius/20) def createParticlesAndBonds(self): """ Creates a hexagonnaly close packed block of particles within the model along with linear elastic bonds connecting neighbouring particles. """ # # Create a block of hcc particles. # blk = Util.getHexagBlock(self.numParticles, self.radius) # # Determine neighbouring particles # conns = DistConnections(0.01*self.radius, 0, blk) # # initialize RNG # random.seed(42) # # Perurb the initial positions of the particles. # for p in blk: p.setPosn(p.getPosn() + self.getRandomOffset()) # # Set up the spatial domain. # blkBox = blk.getParticleBBox() domainBox = \ BoundingBox( blkBox.getMinPt() - 2.0*self.radius, blkBox.getMaxPt() + 2.0*self.radius ) self.logger.info("Setting spatial domain.") self.setSpatialDomain(domainBox) # # Create the model particles. # self.createParticles(blk) # # Create the linear elastic bonds between particles. # self.logger.info("Creating bonded interaction group...") self.createConnections(conns) self.createInteractionGroup( NRotBondPrms( tag=0, name="bonds", normalK=self.normalK, breakDistance=self.radius*10.0 ) ) self.logger.info("Creating " + str(len(conns)) + " bonds...") def runSimulation(self): self.createParticlesAndBonds() self.doTimedRun() def runSimulations( numTimeSteps, numParticlesList, outputFileName, spawnCmdLineList, verboseLsm ): suite = Util.SimSuite(BondedBlockSim) suite.createSims( numTimeSteps, numParticlesList, outputFileName, spawnCmdLineList, verboseLsm ) suite.runSimulations() if (__name__ == "__main__"): parser = Util.getOptionParser() (options, argList) = parser.parse_args() runSimulations( options.numTimeSteps, options.numParticlesList, options.outputFileName, options.spawnCmdLineList, options.verboseLsm ) ./Python/esys/lsm/WallPrmsPy.h0000664000175000017500000000415012176660653016121 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMWALLPRMSPY_H #define ESYS_LSMWALLPRMSPY_H // --- project includes --- #include "Python/esys/lsm/util/Vec3Py.h" #include "Model/EWallInteractionGroup.h" #include "Model/BWallInteractionGroup.h" #include "Model/SoftBWallInteractionGroup.h" // --- STL includes --- #include using namespace esys::lsm; namespace esys { namespace lsm { /*! \class NRotElasticWallPrmsPy \brief wrapper for CEWallIGP $Revision$ $Date$ */ class NRotElasticWallPrmsPy : public CEWallIGP { public: NRotElasticWallPrmsPy( const std::string&, const std::string&, double ); }; /*! \class NRotBondedWallPrmsPy \brief wrapper for CBWallIGP $Revision$ $Date$ */ class NRotBondedWallPrmsPy : public CBWallIGP { private: public: NRotBondedWallPrmsPy(const std::string&,const std::string&,double,int); NRotBondedWallPrmsPy(const std::string&,const std::string&,double,int,int); }; /*! \class NRotSoftBondedWallPrmsPy \brief wrapper for CSoftBWallIGP $Revision$ $Date$ */ class NRotSoftBondedWallPrmsPy : public CSoftBWallIGP { private: public: NRotSoftBondedWallPrmsPy(const std::string&,const std::string&,double,double,int,int,bool); }; void exportWallPrms(); } // namespace lsm } // namespace esys #endif // ESYS_LSMWALLPRMSPY_H ./Python/esys/lsm/ParticleIdPairPy.h0000664000175000017500000000272312176660653017220 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEIDPAIRPY_H #define ESYS_LSMPARTICLEIDPAIRPY_H #include #include namespace esys { namespace lsm { typedef std::pair ParticleIdPair; class ParticleIdPairPy : public ParticleIdPair { public: typedef ParticleIdPair Inherited; ParticleIdPairPy(int id1, int id2); ParticleIdPairPy(const Inherited &pair); bool operator<(const ParticleIdPairPy &pair) const; int len() const; int getItem(int i); long hash() const; class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(ParticleIdPairPy const& s); }; }; void exportParticleIdPair(); } } #endif ./Python/esys/lsm/WallFieldSaverPrmsPy.cpp0000664000175000017500000002467112176660653020433 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/WallFieldSaverPrmsPy.h" #include "Python/BoostPythonUtil/ListConverter.h" namespace esys { namespace lsm { WallFieldSaverPrmsPy::WallFieldSaverPrmsPy( const std::string &wallName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_wallNameVector() { StringVector nameVec; nameVec.push_back(wallName); setWallNames(nameVec); } WallFieldSaverPrmsPy::WallFieldSaverPrmsPy( const boost::python::list &wallNameList, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_wallNameVector() { setWallNames(wallNameList); } WallFieldSaverPrmsPy::WallFieldSaverPrmsPy( const boost::python::tuple &wallNameTuple, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : FieldSaverPrmsPy( fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ), m_wallNameVector() { setWallNames(wallNameTuple); } const WallFieldSaverPrmsPy::StringVector & WallFieldSaverPrmsPy::getWallNameVector() const { return m_wallNameVector; } boost::python::list WallFieldSaverPrmsPy::getWallNameList() const { return bpu::vectorToList(getWallNameVector()); } void WallFieldSaverPrmsPy::setWallNames( const StringVector &wallNameVector ) { m_wallNameVector = wallNameVector; } void WallFieldSaverPrmsPy::setWallNames( const boost::python::list &wallNameList ) { setWallNames(bpu::listToVector(wallNameList)); } void WallFieldSaverPrmsPy::setWallNames( const boost::python::tuple &wallNameTuple ) { setWallNames(bpu::tupleToVector(wallNameTuple)); } WallVectorFieldSaverPrmsPy::WallVectorFieldSaverPrmsPy( const std::string &wallName, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : WallFieldSaverPrmsPy( wallName, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } WallVectorFieldSaverPrmsPy::WallVectorFieldSaverPrmsPy( const boost::python::list &wallNameList, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : WallFieldSaverPrmsPy( wallNameList, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } WallVectorFieldSaverPrmsPy::WallVectorFieldSaverPrmsPy( const boost::python::tuple &wallNameTuple, const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : WallFieldSaverPrmsPy( wallNameTuple, fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr ) { } using boost::python::arg; void exportWallFieldSaverPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< WallFieldSaverPrmsPy, boost::python::bases >( "WallFieldSaverPrms", "Base class describing parameters for saving wall-data to" " file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ) ) ) .def( boost::python::init< const boost::python::tuple &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ) ) ) .def( boost::python::init< const boost::python::list &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Base class for wall field savers\n" "@type wallName: str or tuple or list of str\n" "@kwarg wallName: Name of the wall(s) for" " which data are saved.\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'Position'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'RAW_SERIES'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps" ) ) .def( "getWallNames", &WallFieldSaverPrmsPy::getWallNameList, "Returns the list of wall names associated with these saver parameters.\n" "@rtype: list of str\n" "@return: Wall name list." ) ; boost::python::class_< WallVectorFieldSaverPrmsPy, boost::python::bases >( "WallVectorFieldSaverPrms", "Parameters for saving vector wall-data to file.", boost::python::init< const std::string &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ) ) ) .def( boost::python::init< const boost::python::tuple &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ) ) ) .def( boost::python::init< const boost::python::list &, const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("wallName"), arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Defines parameters for a vector wall field saver\n" "@type wallName: str or tuple or list of str\n" "@kwarg wallName: Name of the wall(s) for" " which data are saved.\n" "@type fieldName: string\n" "@kwarg fieldName: Name of the data field, e.g. 'Position'\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where data are saved\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data, e.g. 'RAW_SERIES'\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: start saving data at this time step\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: finish saving data at this time step\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: save data every timeStepIncr time steps\n" ) ) ; } } } ./Python/esys/lsm/vis/0000775000175000017500000000000012176660653014477 5ustar vborosvboros./Python/esys/lsm/vis/core/0000775000175000017500000000000012176660653015427 5ustar vborosvboros./Python/esys/lsm/vis/core/color.py0000664000175000017500000002200612176660653017117 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines L{RgbColor} base class and L{Colors} pseudo class. """ import string from exception import raiseNotImplemented class RgbColor(object): """ Represents a named color as a C{(red, green, blue)} tuple. """ def __init__(self, red, green, blue, name=None): """ Initialises a color object. @type red: float @param red: Red value between 0.0 and 1.0 inclusive. @type green: float @param green: Green value between 0.0 and 1.0 inclusive. @type blue: float @param blue: Blue value between 0.0 and 1.0 inclusive. @type name: str @param name: The name assigned to this color object. """ self.rgb = (red, green, blue) self.name = name def __len__(self): return 3 def __getitem__(self, i): return self.rgb[i] def getRgb(self): """ Returns red, green and blue intensities as a C{(r,g,b)} tuple. @rtype: tuple @return: C{(r,g,b)} tuple. """ return self.rgb def getName(self): """ Returns the name associated with this color. @rtype: str @return: The name associated with this color. """ return self.name def setName(self, name): """ Sets the name associated with this color. @type name: str @param name: Name assigned to this color. """ self.name = name def __mul__(self, fraction): return \ RgbColor( self.rgb[0]*fraction, self.rgb[1]*fraction, self.rgb[2]*fraction ) class Colors: """ Defines class-scope variables representing particular color instances. """ def __init__(self): """ Raises C{NotImplementedError}, this class may not be instantiated. @raise NotImplementedError: Always. """ raiseNotImplementedError( "This class is not designed for instantiation." ) # # From Povray colors.inc # Red = RgbColor(1, 0, 0) Green = RgbColor(0, 1, 0) Blue = RgbColor(0, 0, 1) Yellow = RgbColor(1, 1, 0) Cyan = RgbColor(0, 1, 1) Magenta = RgbColor(1, 0, 1) White = RgbColor(1, 1, 1) Black = RgbColor(0, 0, 0) # These grays are useful for fine-tuning lighting RgbColor(values # and for other areas where subtle variations of grays are needed. # PERCENTAGE GRAYS: Gray05 = White*0.05 Gray10 = White*0.10 Gray15 = White*0.15 Gray20 = White*0.20 Gray25 = White*0.25 Gray30 = White*0.30 Gray35 = White*0.35 Gray40 = White*0.40 Gray45 = White*0.45 Gray50 = White*0.50 Gray55 = White*0.55 Gray60 = White*0.60 Gray65 = White*0.65 Gray70 = White*0.70 Gray75 = White*0.75 Gray80 = White*0.80 Gray85 = White*0.85 Gray90 = White*0.90 Gray95 = White*0.95 # OTHER GRAYS DimGray = RgbColor(0.329412, 0.329412, 0.329412) DimGrey = RgbColor(0.329412, 0.329412, 0.329412) Gray = RgbColor(0.752941, 0.752941, 0.752941) Grey = RgbColor(0.752941, 0.752941, 0.752941) LightGray = RgbColor(0.658824, 0.658824, 0.658824) LightGrey = RgbColor(0.658824, 0.658824, 0.658824) VLightGray = RgbColor(0.80, 0.80, 0.80) VLightGrey = RgbColor(0.80, 0.80, 0.80) Aquamarine = RgbColor(0.439216, 0.858824, 0.576471) BlueViolet = RgbColor(0.62352, 0.372549, 0.623529) Brown = RgbColor(0.647059, 0.164706, 0.164706) CadetBlue = RgbColor(0.372549, 0.623529, 0.623529) Coral = RgbColor(1.0, 0.498039, 0.0) CornflowerBlue = RgbColor(0.258824, 0.258824, 0.435294) DarkGreen = RgbColor(0.184314, 0.309804, 0.184314) DarkOliveGreen = RgbColor(0.309804, 0.309804, 0.184314) DarkOrchid = RgbColor(0.6, 0.196078, 0.8) DarkSlateBlue = RgbColor(0.119608, 0.137255, 0.556863) DarkSlateGray = RgbColor(0.184314, 0.309804, 0.309804) DarkSlateGrey = RgbColor(0.184314, 0.309804, 0.309804) DarkTurquoise = RgbColor(0.439216, 0.576471, 0.858824) Firebrick = RgbColor(0.556863, 0.137255, 0.137255) ForestGreen = RgbColor(0.137255, 0.556863, 0.137255) Gold = RgbColor(0.8, 0.498039, 0.196078) Goldenrod = RgbColor(0.858824, 0.858824, 0.439216) GreenYellow = RgbColor(0.576471, 0.858824, 0.439216) IndianRed = RgbColor(0.309804, 0.184314, 0.184314) Khaki = RgbColor(0.623529, 0.623529, 0.372549) LightBlue = RgbColor(0.74902, 0.847059, 0.847059) LightSteelBlue = RgbColor(0.560784, 0.560784, 0.737255) LimeGreen = RgbColor(0.196078, 0.8, 0.196078) Maroon = RgbColor(0.556863, 0.137255, 0.419608) MediumAquamarine = RgbColor(0.196078, 0.8, 0.6) MediumBlue = RgbColor(0.196078, 0.196078, 0.8) MediumForestGreen = RgbColor(0.419608, 0.556863, 0.137255) MediumGoldenrod = RgbColor(0.917647, 0.917647, 0.678431) MediumOrchid = RgbColor(0.576471, 0.439216, 0.858824) MediumSeaGreen = RgbColor(0.258824, 0.435294, 0.258824) MediumSlateBlue = RgbColor(0.498039, 0.0, 1.0) MediumSpringGreen = RgbColor(0.498039, 1.0, 0.0) MediumTurquoise = RgbColor(0.439216, 0.858824, 0.858824) MediumVioletRed = RgbColor(0.858824, 0.439216, 0.576471) MidnightBlue = RgbColor(0.184314, 0.184314, 0.309804) Navy = RgbColor(0.137255, 0.137255, 0.556863) NavyBlue = RgbColor(0.137255, 0.137255, 0.556863) Orange = RgbColor(1, 0.5, 0.0) OrangeRed = RgbColor(1.0, 0.25, 0.0) Orchid = RgbColor(0.858824, 0.439216, 0.858824) PaleGreen = RgbColor(0.560784, 0.737255, 0.560784) Pink = RgbColor(0.737255, 0.560784, 0.560784) Plum = RgbColor(0.917647, 0.678431, 0.917647) Salmon = RgbColor(0.435294, 0.258824, 0.258824) SeaGreen = RgbColor(0.137255, 0.556863, 0.419608) Sienna = RgbColor(0.556863, 0.419608, 0.137255) SkyBlue = RgbColor(0.196078, 0.6, 0.8) SlateBlue = RgbColor(0.0, 0.498039, 1.0) SpringGreen = RgbColor(0.0, 1.0, 0.498039) SteelBlue = RgbColor(0.137255, 0.419608, 0.556863) Tan = RgbColor(0.858824, 0.576471, 0.439216) Thistle = RgbColor(0.847059, 0.74902, 0.847059) Turquoise = RgbColor(0.678431, 0.917647, 0.917647) Violet = RgbColor(0.309804, 0.184314, 0.309804) VioletRed = RgbColor(0.8, 0.196078, 0.6) Wheat = RgbColor(0.847059, 0.847059, 0.74902) YellowGreen = RgbColor(0.6, 0.8, 0.196078) SummerSky = RgbColor(0.22, 0.69, 0.87) RichBlue = RgbColor(0.35, 0.35, 0.67) Brass = RgbColor(0.71, 0.65, 0.26) Copper = RgbColor(0.72, 0.45, 0.20) Bronze = RgbColor(0.55, 0.47, 0.14) Bronze2 = RgbColor(0.65, 0.49, 0.24) Silver = RgbColor(0.90, 0.91, 0.98) BrightGold = RgbColor(0.85, 0.85, 0.10) OldGold = RgbColor(0.81, 0.71, 0.23) Feldspar = RgbColor(0.82, 0.57, 0.46) Quartz = RgbColor(0.85, 0.85, 0.95) Mica = Black NeonPink = RgbColor(1.00, 0.43, 0.78) DarkPurple = RgbColor(0.53, 0.12, 0.47) NeonBlue = RgbColor(0.30, 0.30, 1.00) CoolCopper = RgbColor(0.85, 0.53, 0.10) MandarinOrange = RgbColor(0.89, 0.47, 0.20) LightWood = RgbColor(0.91, 0.76, 0.65) MediumWood = RgbColor(0.65, 0.50, 0.39) DarkWood = RgbColor(0.52, 0.37, 0.26) SpicyPink = RgbColor(1.00, 0.11, 0.68) SemiSweetChoc = RgbColor(0.42, 0.26, 0.15) BakersChoc = RgbColor(0.36, 0.20, 0.09) Flesh = RgbColor(0.96, 0.80, 0.69) NewTan = RgbColor(0.92, 0.78, 0.62) NewMidnightBlue = RgbColor(0.00, 0.00, 0.61) VeryDarkBrown = RgbColor(0.35, 0.16, 0.14) DarkBrown = RgbColor(0.36, 0.25, 0.20) DarkTan = RgbColor(0.59, 0.41, 0.31) GreenCopper = RgbColor(0.32, 0.49, 0.46) DkGreenCopper = RgbColor(0.29, 0.46, 0.43) DustyRose = RgbColor(0.52, 0.39, 0.39) HuntersGreen = RgbColor(0.13, 0.37, 0.31) Scarlet = RgbColor(0.55, 0.09, 0.09) MedPurple = RgbColor(0.73, 0.16, 0.96) LightPurple = RgbColor(0.87, 0.58, 0.98) VeryLightPurple = RgbColor(0.94, 0.81, 0.99) _nameRgbColorDict = dict() for attribute in dir(Colors): attr = getattr(Colors, attribute) if (isinstance(attr, RgbColor)): attr.setName(attribute) _nameRgbColorDict[string.upper(attr.getName())] = attr def findColor(colorName): """ Performs a case-insensitive search for a color with name colorName. Returns None if no color matching colorName is found. """ if (_nameRgbColorDict.has_key(string.upper(colorName))): return _nameRgbColorDict[string.upper(colorName)] return None ./Python/esys/lsm/vis/core/arrow.py0000664000175000017500000000475612176660653017147 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Arrow} base class""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class Arrow(object): """ Objects of this class represent arrows with conical head and cylindrical tail. """ def __init__(self, tailPt, headPt, tailRadius, headRadius, headLength): """ Initialises arrow. """ self.headPt = tuple(headPt) self.tailPt = tuple(tailPt) self.tailRadius = tailRadius self.headRadius = headRadius self.headLength = headLength def getTailPt(self): """ Returns the coordinate of the tail of this arrow. @return: Tail coordinate of this arrow. """ return self.tailPt def getHeadPt(self): """ Returns the coordinate of the pointy head of this arrow. @return: Head coordinate of this arrow. """ return self.headPt def getHeadRadius(self): """ Returns the max radius of the head of this arrow. @return: Radius of base of this arrow's conical head. """ return self.headRadius def getTailRadius(self): """ Returns the radius of the cylindrical tail of this arrow. @return: Radius of this arrow's cylindrical tail. """ return self.tailRadius def getHeadLength(self): """ Returns the height of the cone which forms the head of this arrow. @return: Height of cone which forms the head of this arrow. """ return self.headLength def getLength(self): """ Returns the distance between this arrows head-point and tail-point. @rtype: float @return: length of this arrow from head-point to tail-point. """ return (Vec3(self.getHeadPt())-Vec3(self.getTailPt())).norm() ./Python/esys/lsm/vis/core/triangulatedSurface.py0000664000175000017500000000250312176660653021775 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{TriangulatedSurface} class. """ class TriangulatedSurface(object): def __init__(self, nodeSequence, faceSequence): """ Initialise the mesh data. @type nodeSequence: iterable @param nodeSequence: The list of triangle vertices. @type faceSequence: iterable @param faceSequence: A list three-tuples, with each three-tuple representing a triangular facet. Each three-tuple element is an index into the nodeSequence array indicating a vertex of the triangular facet. """ self.nodeSequence = list(nodeSequence) self.faceSequence = list(faceSequence) ./Python/esys/lsm/vis/core/cylinder.py0000664000175000017500000000600512176660653017613 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Cylinder} and L{Disk} base classes""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class Cylinder(object): """ Objects of this class represent cylinders. """ def __init__(self, endPt1, endPt2, radius): """ Initialises cylinder with center-end-point coordinates and radius. @type endPt1: sequence of 3 floats @param endPt1: Center coordinate of one end. @type endPt2: sequence of 3 floats @param endPt2: Center coordinate of other end. @type radius: float @param radius: Radius of cylinder. """ self.endPt1 = tuple(endPt1) self.endPt2 = tuple(endPt2) self.radius = radius def getEndPt1(self): """ Returns the coordinate of the center coordinate of end 1. @return: Center coordinate of end 1. """ return self.endPt1 def getEndPt2(self): """ Returns the coordinate of the center coordinate of end 2. @return: Center coordinate of end 2. """ return self.endPt2 def getCenter(self): """ Returns the coordinate of the center of this cylinder. @return: Center coordinate of this cylinder. """ return (Vec3(self.getEndPt1()) + Vec3(self.getEndPt2()))*0.5 def getHeight(self): """ Returns the height of this cylinder. @rtype: float @return: Center coordinate of this cylinder. """ return (Vec3(self.getEndPt1()) - Vec3(self.getEndPt2())).norm() def getRadius(self): """ Returns the radius of this cylinder. @return: Radius of this cylinder. """ return self.radius class Disk(Cylinder): """ Objects of this class represent cylinders. """ def __init__(self, center, radius, height, direction=None): if (direction == None): direction = core.Vec3(0,0,1) direction = core.Vec3(direction) nrm = direction.norm() if (nrm == 0.0): direction = core.Vec3(0,0,1) nrm = 1.0 center = core.Vec3(centre) direction = direction/nrm Cylinder.__init__( self, endPt1 = center - (direction*(height*0.5)), endPt2 = center + (direction*(height*0.5)), radius = radius ) ./Python/esys/lsm/vis/core/modifier.py0000664000175000017500000000301012176660653017571 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines classes which relate to I{modifying} renderable objects. """ class Modifiable(object): def __init__(self): self.idModDict = dict() def getModifierList(self): pairList = self.idModDict.values() pairList.sort(lambda a,b: a[0]-b[0]) return [e[1] for e in pairList] def applySingle(self, modifier): if (modifier != None): self.idModDict[id(modifier.__class__)] = \ (len(self.idModDict),modifier) def applySequence(self, sequence): for modifier in sequence: self.applySingle(modifier) def apply(self, modifiers): if ((modifiers != None) and (hasattr(modifiers, "__iter__"))): self.applySequence(modifiers) else: self.applySingle(modifiers) class Modifier(object): def __init__(self): pass ./Python/esys/lsm/vis/core/pointExtractor.py0000664000175000017500000000263112176660653021030 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{PointExtractor} class. """ from extractor import Extractor class PointExtractor(Extractor): """ Extracts a point from a data-record. """ def __init__( self, pointMap = lambda dataRecord: dataRecord.getPoint() ): """ Constructs the extractor. @type pointMap: callable @param pointMap: Callable which accepts a single argument and returns a 3 float-element sequence. """ self.pointMap = pointMap def getPoint(self, dataRecord): """ Returns a point associated with the specifed C{dataRecord}. @rtype: 3 float-element sequence @return: A coordinate. """ return self.pointMap(dataRecord) ./Python/esys/lsm/vis/core/edgeData.py0000664000175000017500000000360512176660653017503 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{EdgeData} class. """ from edgeExtractor import EdgeExtractor class EdgeData(object): """ Used to render data which contains piecewise linear I{edges}. """ def __init__(self, data, edgeExtractor): """ Constructor. @type data: iterable @param data: Record-data elements containing piecewise-linear coordinates. @type edgeExtractor: L{EdgeExtractor} @param edgeExtractor: The object used to extract edge-endpoints from the C{data}. """ self.data = data self.edgeExtractor = edgeExtractor def getData(self): """ Returns the I{iterable} data associated with this C{EdgeData} object. @rtype: object @return: The I{iterable} object which contains the end-points of piecewise linear edges. """ return self.data def getEdgeExtractor(self): """ Returns the I{extractor} object used to obtain end-points from the data-records contained in the C{self.getData()} iterable. @rtype: L{EdgeExtractor} @return: L{EdgeExtractor} object used to obtain edge-points data points. """ return self.edgeExtractor ./Python/esys/lsm/vis/core/camera.py0000664000175000017500000000662512176660653017242 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Camera} base class""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class Camera(object): """ Objects of this class represent a camera. """ def __init__(self): """ Initialises camera object. """ pass def getPosn(self): """ Returns the position coordinate of this camera. @return: Position coordinate of this camera. """ raiseNotImplemented() def setPosn(self, coord): """ Sets the position coordinate of this camera. @type coord: iterable of 3 C{float} elements @param coord: New position of this camera. """ raiseNotImplemented() def rotatePosn(self, axis, axisPt): """ Rotates the camera position about the specified axis. @type axis: iterable of 3 C{float} elements @param axis: Axis of rotation and angle of rotation (C{ = axis.norm()} radians). @type axisPt: iterable of 3 C{float} elements @param axisPt: Axis of rotation is assumed to pass through this point. """ self.setPosn(Vec3(self.getPosn()).rotate(Vec3(axis),Vec3(axisPt))) def rotate(self, axis, axisPt): """ Rotates the camera position and look-at coordinate about the specified axis. @type axis: iterable of 3 C{float} elements @param axis: Axis of rotation and angle of rotation (C{ = axis.norm()} radians). @type axisPt: iterable of 3 C{float} elements @param axisPt: Axis of rotation is assumed to pass through this point. """ self.setPosn(Vec3(self.getPosn()).rotate(Vec3(axis),Vec3(axisPt))) self.setLookAt(Vec3(self.getLookAt()).rotate(Vec3(axis),Vec3(axisPt))) def getLookAt(self): """ Returns the coordinate at which this camera is looking. @return: The coordinate being looked-at by this camera. """ raiseNotImplemented() def setLookAt(self, coord): """ Sets the coordinate at which this camera is looking. @type coord: iterable of 3 C{float} elements @param coord: New coordinate to be looked-at by this camera. """ raiseNotImplemented() def setZoom(self, factor): """ Decrease the scale of the projection area by the specified factor. A value greater than 1 is a zoom-in, a value less than 1 is a zoom-out. @type factor: float @param factor: Zoom multiplier C{factor > 0.0}. """ raiseNotImplemented() def getZoom(self): """ Returns the zoom factor. @see: L{setZoom} @rtype: float @return: The zoom factor. """ raiseNotImplemented() ./Python/esys/lsm/vis/core/__init__.py0000664000175000017500000000276212176660653017547 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines common base classes for render packages. """ from arrow import * from arrowExtractor import * from box import * from camera import * from capsule import * from color import * from cone import * from cylinder import * from cylinderExtractor import * from edgeData import * from edgeExtractor import * from exception import * from extractor import * from glyphData import * from imageFormat import * from modifier import * from pointExtractor import * from scene import * from sphere import * from sphereExtractor import * from surfaceData import * from triangulatedSurface import * from esys.lsm.util import Vec3 ./Python/esys/lsm/vis/core/imageFormat.py0000664000175000017500000000600012176660653020230 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{ImageFormat} class and functions for mapping a file name extension to an associated C{ImageFormat} object. """ import string import os import os.path class ImageFormat(object): """ Class representing an image format. """ def __init__(self, name): """ Constructor. @type name: str @param name: Name assigned to this image format. """ self.name = name def getName(self): """ Returns the name associated with this image format. @rtype: str """ return self.name def __str__(self): return self.getName() PNG = ImageFormat("PNG") PNM = ImageFormat("PNM") _nameFormatDict = dict() _nameFormatDict[string.upper(str(PNG))] = PNG _nameFormatDict[string.upper(str(PNM))] = PNM def _getDelimitedFormatNameString(): return ", ".join(map(str,_nameFormatDict.keys())) def getFormatFromName(formatName, ext=None): """ Returns the C{ImageFormat} object which corresponds to a specified image-format name (string). @type formatName: str @param formatName: The name of an image format, one of: %s @type ext: str @param ext: File name extension for error message string. """ % _getDelimitedFormatNameString() if _nameFormatDict.has_key(string.upper(formatName)): return _nameFormatDict[string.upper(formatName)] raise \ ValueError( ( "No image format found which matched extension '%s'," + " valid image file formats are: %s" ) % (ext, _getDelimitedFormatNameString()) ) def getFormatFromExtension(fileName): """ Returns the C{ImageFormat} object which corresponds to a specified file name. Uses the C{fileName} extension to try and deduce the corresponding C{ImageFormat} object. @type fileName: str @param fileName: A file name. @rtype: C{ImageFormat} @return: An C{ImageFormat} object corresponding to the specified file name (and corresponding file name extension). """ (base, ext) = os.path.splitext(fileName) if (len(ext) > 0): formatName = string.lstrip(ext, ".") else: raise ValueError( "Could not determine image format from file " + "name " + fileName + ", no extension." ) return getFormatFromName(formatName, ext) ./Python/esys/lsm/vis/core/extractor.py0000664000175000017500000000165412176660653020022 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{Extractor} base class. """ class Extractor(object): """ Objects of this class are used in conjunction with L{esys.lsm.vis.core.GlyphData} objects in order to I{extract} glyph information from record-data. """ pass ./Python/esys/lsm/vis/core/glyphData.py0000664000175000017500000000320712176660653017720 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines L{GlyphData} base class. """ class GlyphData(object): """ An object which is rendered as multiple glyphs (of the same type) at a collection of points in space. """ def __init__(self, data, glyphExtractor): """ Constructs the object. @type data: iterable @param data: The data which is to be rendered as multiple glyphs. @type glyphExtractor: """ self.data = data self.glyphExtractor = glyphExtractor def getData(self): """ Returns the C{data} object associated with this C{GlyphData} object. @rtype: iterable @return: The C{data} object which is used to generate glyphs. """ return self.data def getGlyphExtractor(self): """ Returns the object which is used to extract individual glyph data from each element of the C{self.getData()} iterable. """ return self.glyphExtractor ./Python/esys/lsm/vis/core/exception.py0000664000175000017500000000502712176660653020003 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines helper function L{raiseNotImplemented} for raising an exception in abstract methods of base classes. """ import esys.lsm.Logging import logging import string import traceback import sys _defaultLogger = esys.lsm.Logging.getLogger("esys.lsm.vis.core") _doRaiseWhenNotImplemented = True def raiseExceptionWhenNotImplemented(doRaise=None): """ Return value of this function used in L{raiseNotImplemented}. @type doRaise: bool @param doRaise: If specified, sets whether L{raiseNotImplemented} is to raise an exception. @rtype: bool @return: True when L{raiseNotImplemented} is to raise a C{NotImplementedError} exception. """ global _doRaiseWhenNotImplemented if (doRaise != None): _doRaiseWhenNotImplemented = doRaise return _doRaiseWhenNotImplemented def raiseNotImplemented(msg = "", logger = _defaultLogger): """ Raises a NotImplementedError exception and logs the back-trace using the specified logger. The exception is raised only if L{raiseExceptionWhenNotImplemented} returns true, otherwise only the back-trace is logged and no exception is thrown. @type msg: str @param msg: Exception message string passed to NotImplementedError constructor. @type logger: C{logging.Logger} @param logger: The C{Logger.error} message is used to log the lines of a back-trace. """ try: raise NotImplementedError(msg) except: if (logger != None): traceBackMsg = \ traceback.format_exception( sys.exc_type, sys.exc_value, sys.exc_traceback ) for line in traceBackMsg: for subLine in string.split(string.strip(line), "\n"): logger.error(subLine) if (raiseExceptionWhenNotImplemented()): raise ./Python/esys/lsm/vis/core/sphere.py0000664000175000017500000000254512176660653017275 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Sphere} base class""" from exception import raiseNotImplemented class Sphere(object): """ Objects of this class represent spheres. """ def __init__(self, center, radius): """ Initialises sphere with center-coordinate and radius. """ self.center = center self.radius = radius def getCenter(self): """ Returns the coordinate of the center of this sphere. @return: Center coordinate of this sphere. """ return self.center def getRadius(self): """ Returns the radius of this sphere. @return: Radius of this sphere. """ return self.radius ./Python/esys/lsm/vis/core/cylinderExtractor.py0000664000175000017500000001106212176660653021506 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{CylinderExtractor} class. """ from color import Colors from extractor import Extractor class CylinderExtractor(Extractor): """ Objects of this class can be used in conjunction with the L{esys.lsm.vis.core.GlyphData} class for extracting cylinder info from data-records. """ def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), endPt1Map = lambda dataRecord: dataRecord.getEndPt1(), endPt2Map = lambda dataRecord: dataRecord.getEndPt2(), modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): """ Constructs the extractor. @type radiusMap: callable @param radiusMap: A callable which accepts a single data-record argument and returns a radius (float) value. @type endPt1Map: callable @param endPt1Map: A callable which accepts a single data-record argument and returns a 3 float-element sequence (ie a 3D coordinate). @type endPt2Map: callable @param endPt2Map: A callable which accepts a single data-record argument and returns a 3 float-element sequence (ie a 3D coordinate). @type modifierMap: callable @param modifierMap: A callable which accepts a single data-record argument and returns an object modifier (or sequence of modifiers). """ self.radiusMap = radiusMap self.endPt1Map = endPt1Map self.endPt2Map = endPt2Map self.modifierMap = modifierMap self.radiusScale = radiusScale def getRadius(self, dataRecord): return self.radiusMap(dataRecord)*self.radiusScale def getEndPt1(self, dataRecord): return self.endPt1Map(dataRecord) def getEndPt2(self, dataRecord): return self.endPt2Map(dataRecord) def getModifier(self, dataRecord): return self.modifierMap(dataRecord) def getRadiusScale(self): return self.radiusScale class DiskExtractor(Extractor): """ Objects of this class can be used in conjunction with the L{esys.lsm.vis.core.GlyphData} class for extracting cylinder info from data-records. """ def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), heightMap = lambda dataRecord: 0.001, directionMap = lambda dataRecord: None, modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): """ Constructs the extractor. @type radiusMap: callable @param radiusMap: A callable which accepts a single data-record argument and returns a radius (float) value. @type centerMap: callable @param centerMap: A callable which accepts a single data-record argument and returns a 3 float-element sequence (ie a 3D coordinate). @type heightMap: callable @param heightMap: A callable which accepts a single data-record argument and returns a float (height of the cylinder). @type modifierMap: callable @param modifierMap: A callable which accepts a single data-record argument and returns a color. """ self.radiusMap = radiusMap self.centerMap = centerMap self.heightMap = heightMap self.directionMap = directionMap self.modifierMap = modifierMap self.radiusScale = radiusScale def getRadius(self, dataRecord): return self.radiusMap(dataRecord)*self.radiusScale def getCenter(self, dataRecord): return self.centerMap(dataRecord) def getHeight(self, dataRecord): return self.heightMap(dataRecord) def getDirection(self, dataRecord): return self.directionMap(dataRecord) def getModifier(self, dataRecord): return self.modifierMap(dataRecord) def getRadiusScale(self): return self.radiusScale ./Python/esys/lsm/vis/core/Makefile.am0000664000175000017500000000265512176660653017473 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Python.am lsmviscore_PYTHON = \ __init__.py \ arrow.py \ arrowExtractor.py \ box.py \ camera.py \ capsule.py \ color.py \ cone.py \ cylinder.py \ cylinderExtractor.py \ edgeData.py \ edgeExtractor.py \ exception.py \ extractor.py \ glyphData.py \ imageFormat.py \ modifier.py \ pointExtractor.py \ scene.py \ sphere.py \ sphereExtractor.py \ surfaceData.py \ triangulatedSurface.py AM_CPPFLAGS += $(PYTHON_CPPFLAGS) ./Python/esys/lsm/vis/core/box.py0000664000175000017500000000263712176660653016601 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Box} base class""" from esys.lsm.util import Vec3 class Box: """ A rectangular box. """ def __init__(self, minPt, maxPt): """ Constructs axis-aligned box. @type minPt: sequence of 3 floats @param minPt: lower left back corner coordinate. @type maxPt: sequence of 3 floats @param maxPt: upper right front corner coordinate. """ self.minPt = minPt self.maxPt = maxPt def getMinPt(self): return self.minPt def getMaxPt(self): return self.maxPt def getCenter(self): return (Vec3(self.getMaxPt())+Vec3(self.getMinPt()))*0.5 def getSideLength(self): return (Vec3(self.getMaxPt())-Vec3(self.getMinPt())) ./Python/esys/lsm/vis/core/capsule.py0000664000175000017500000001114312176660653017435 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Capsule} base class""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class Capsule(object): """ Objects of this class represent capsules, a cylinder capped with a hemisphere at each end. """ def __init__(self, radius, endPt1=None, endPt2=None, segEndPt1=None, segEndPt2=None): """ Initialises capsule with center-end-point coordinates and radius. @type radius: float @param radius: Radius of capsule. @type endPt1: sequence of 3 floats @param endPt1: Coordinate of one end ("apex" of hemisphere). @type endPt2: sequence of 3 floats @param endPt2: Center coordinate of other end ("apex" of hemisphere). @type segEndPt1: sequence of 3 floats @param segEndPt1: Coordinate of one end ("apex" of hemisphere). @type segEndPt2: sequence of 3 floats @param segEndPt2: Center coordinate of other end ("apex" of hemisphere). """ self.radius = radius if (endPt1 != None) and (endPt2 != None): endPt1 = Vec3(endPt1) endPt2 = Vec3(endPt2) centre = 0.5*(endPt1 + endPt2) direction = (endPt2 - endPt1) length = direction.norm() direction /= length self.segEndPt1 = centre - (0.5*length)*direction self.segEndPt2 = centre + (0.5*length)*direction elif (segEndPt1 != None) and (segEndPt2 != None): self.segEndPt1 = Vec3(segEndPt1) self.segEndPt2 = Vec3(segEndPt2) else: raise Exception("Must specified end-points or segment-end-points, not both.") def getSegmentEndPt1(self): """ Returns the coordinate of the center coordinate of end 1. @return: Center coordinate of end 1. """ return self.segEndPt1 def getSegmentEndPt2(self): """ Returns the coordinate of the center coordinate of end 2. @return: Center coordinate of end 2. """ return self.segEndPt2 def getCenter(self): """ Returns the coordinate of the center of this capsule. @return: Center coordinate of this capsule. """ return (self.getSegmentEndPt1() + self.getSegmentEndPt2())*0.5 def getSegmentDirection(self): """ Returns the direction vector of the central axis. @return: Direction of longitudinal axis. """ d = (self.getSegmentEndPt2() - self.getSegmentEndPt1()) d /= d.norm() return d; def getLength(self): """ Returns the length of this capsule. @rtype: float @return: Distance between hemi-sphere apexes. """ return \ 2.0*self.radius() \ +\ (Vec3(self.getSegmentEndPt1()) - Vec3(self.getSegmentEndPt2())).norm() def getSegmentLength(self): """ Returns the segment-length of this capsule. @rtype: float @return: minimum distance between end-points of cylinder. """ return \ (Vec3(self.getSegmentEndPt1()) - Vec3(self.getSegmentEndPt2())).norm() def getRadius(self): """ Returns the radius of this capsule. @return: Radius of this capsule. """ return self.radius class CapsuleDisk: """ Objects of this class represent 2-dimensional capsules. """ def __init__( self, center, length, radius, height = None ): self.center = tuple(center) self.length = length self.radius = radius if (height == None): height = 0.05*radius self.height = height def getCenter(self): return self.center def getLength(self): return self.length def getHeight(self): return self.height def getSegmentLength(self): return self.length - (2.0*self.radius) def getRadius(self): return self.radius ./Python/esys/lsm/vis/core/edgeExtractor.py0000664000175000017500000000633212176660653020605 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{EdgeExtractor} class. """ from extractor import Extractor class EdgeExtractor(Extractor): """ Objects can be used in conjunction with L{EdgeData} objects to extract piecewise-linear edges from data-records. Each linear segment of an edge is rendered as a truncated cone, hence there is a radius associated with each point on the edge and a color associated with each linear segment on the edge. """ def __init__( self, pointListMap = lambda dataRecord: dataRecord.getPointList(), radiusListMap = lambda dataRecord: 1.0, colorValListMap = lambda dataRecord: 0, radiusScale = 1.0 ): """ Constructor. @type pointListMap: callable @param pointListMap: Callable which takes a single data-record as an argument and returns a list of coordinates representing the end-points of the linear segments of the edge. @type radiusListMap: callable @param radiusListMap: Callable which takes a single data-record as an argument and returns a list of radii values. @type colorValListMap: callable @param colorValListMap: Callable which takes a single data-record as an argument and returns a list of color values. Each color value is associated with a linear segment of the edge. @type radiusScale: float @param radiusScale: Scale which is multiplied by all radii. """ self.radiusListMap = radiusListMap self.pointListMap = pointListMap self.colorValListMap = colorValListMap self.radiusScale = radiusScale def getRadiusScale(self): """ Returns the radius scaling factor. @rtype: float """ return self.radiusScale def getRadiusList(self, dataRecord): """ Returns the radii associated with each segment end-point. @rtype: sequence of floats @return: Sequence of float radii values. """ return self.radiusListMap(dataRecord) def getPointList(self, dataRecord): """ Returns the coordinates (3 float-element sequence) of each segment end-point. @rtype: sequence of coordinates @return: Sequence of coordinate values. """ return self.pointListMap(dataRecord) def getColorValList(self, dataRecord): """ Returns the color of each segment. @rtype: sequence of colors @return: Sequence of color objects. """ return self.colorValListMap(dataRecord) ./Python/esys/lsm/vis/core/arrowExtractor.py0000664000175000017500000000410712176660653021031 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Arrow} base class""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class ArrowExtractor(object): def __init__( self, tailPtMap, vecMap, tailRadiusMap = lambda record: 0.10, headRadiusMap = lambda record: 0.25, headLengthMap = lambda record: 0.75, modifierMap = lambda record: None, lengthScale = 1.0 ): self.tailPtMap = tailPtMap self.vecMap = vecMap self.tailRadiusMap = tailRadiusMap self.headRadiusMap = headRadiusMap self.headLengthMap = headLengthMap self.modifierMap = modifierMap self.lengthScale = lengthScale def getTailPt(self, record): return self.tailPtMap(record) def getVec(self, record): return self.vecMap(record) def getHeadPt(self, record): return \ ( Vec3(self.getTailPt(record)) + (Vec3(self.getVec(record))*self.getLengthScale()) ) def getHeadRadius(self, record): return self.headRadiusMap(record) def getTailRadius(self, record): return self.tailRadiusMap(record) def getHeadLength(self, record): return self.headLengthMap(record) def getModifier(self, record): return self.modifierMap(record) def getLengthScale(self): return self.lengthScale ./Python/esys/lsm/vis/core/cone.py0000664000175000017500000000660512176660653016734 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{TruncatedCone} and L{Cone} base classes""" from exception import raiseNotImplemented from esys.lsm.util import Vec3 class TruncatedCone(object): """ Objects of this class represent truncated cones. """ def __init__(self, endPt1, endPt2, radius1, radius2=0): """ Initialises cone with center-end-point coordinates and corresponding radii. @type endPt1: sequence of 3 floats @param endPt1: Center coordinate of one end. @type endPt2: sequence of 3 floats @param endPt2: Center coordinate of other end. @type radius1: float @param radius1: End 1 radius. @type radius2: float @param radius2: End 2 radius. """ self.endPt1 = tuple(endPt1) self.endPt2 = tuple(endPt2) self.radius1 = radius1 self.radius2 = radius2 def getEndPt1(self): """ Returns the coordinate of the center coordinate of end 1. @return: Center coordinate of end 1. """ return self.endPt1 def getEndPt2(self): """ Returns the coordinate of the center coordinate of end 2. @return: Center coordinate of end 2. """ return self.endPt2 def getCenter(self): """ Returns the coordinate of the center of this cone. @return: Center coordinate of this cone. """ return (Vec3(self.getEndPt1()) + Vec3(self.getEndPt2()))*0.5 def getHeight(self): """ Returns the height of this cone. @rtype: float @return: Center coordinate of this cone. """ return (Vec3(self.getEndPt1()) - Vec3(self.getEndPt2())).norm() def getRadius1(self): """ Returns the end 1 radius of this cone. @return: End 1 radius. """ return self.radius1 def getRadius2(self): """ Returns the end 2 radius of this cone. @return: End 2 radius. """ return self.radius2 class Cone(TruncatedCone): """ Objects of this class represent cones. """ def __init__(self, basePt, tipPt, radius): """ Initialises cone with center-end-point coordinates and corresponding radii. @type basePt: sequence of 3 floats @param basePt: Center coordinate of one end. @type tipPt: sequence of 3 floats @param tipPt: Center coordinate of other end. @type radius: float @param radius: Radius at C{basePt}. """ TruncatedCone.__init__(self, basePt, tipPt, radius, 0) def getBasePt(self): return self.getEndPt1() def getTipPt(self): return self.getEndPt2() def getRadius(self): return self.getRadius1() ./Python/esys/lsm/vis/core/scene.py0000664000175000017500000001115612176660653017102 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{Scene} base class. """ from exception import raiseNotImplemented from color import Colors from camera import Camera from imageFormat import ImageFormat, PNG, PNM class RenderDefaults: """ Class for setting default rendering options. """ def __init__(self, defaultOffScreen, defaultSize, defaultInteractive): """ Constructs default values. These values will be returned by the L{get} method in for arguments passed with the C{None} value. """ self.defaultOffScreen = defaultOffScreen self.defaultSize = defaultSize self.defaultInteractive = defaultInteractive def get(self, offScreen = None, size = None, interactive = None): """ Returns tuple of default options. If an argument is C{None}, then a default value is returned, if the argument is not C{None} then the value is returned unaltered. """ if (offScreen == None): offScreen = self.defaultOffScreen if (size == None): size = self.defaultSize if (interactive == None): interactive = self.defaultInteractive return (offScreen, size, interactive) _renderDefaults = \ RenderDefaults( defaultOffScreen = False, defaultSize = [256,256], defaultInteractive = True ) class Scene(object): """ A container for scene objects. """ def __init__(self, renderDefaults = None): """ Constructs a scene object. """ if (renderDefaults == None): renderDefaults = _renderDefaults self.objectList = [] self.renderDefaults = renderDefaults def initialise(self): """ Initialises the scene, eg sets the background. """ self.setBackground(Colors.White) def add(self, object): """ Adds a specified object to the scene. @type object: object @param object: Object to be rendered in the scene. """ self.objectList.append(object) def clear(self): """ Removes all objects from the scene, does not alter camera. """ self.objectList = [] def setBackground(self, color): """ Sets the background color of the scene. @type color: RGB color @param color: Backgroung RGB color. """ raiseNotImplemented() def getCamera(self): """ Returns a L{Camera} object for this scene. @rtype: L{Camera} @return: The L{Camera} associated with this scene. """ def getRenderDefaults( self, offScreen = None, interactive = None, size = None ): """ Returns tuple of default render arguments. """ return self.renderDefaults.get(offScreen, interactive, size) def render( self, offScreen = None, interactive = None, fileName = None, imageFormat = None, size = None ): """ Renders an image of the scene. @type offScreen: bool @param offScreen: If C{False} the image is displayed on-screen in a visible window else the rendered image is not displayed. @type interactive: bool @param interactive: If C{True} and C{offScreen==True} this method will remain I{paused} until a **quit** is received in the image window. If C{offScreen==False} this option has no effect. @type fileName: str @param fileName: The name of the file to which the image is written. The C{fileName} extension (eg ".png", ) is used as the image type if C{imageFomat} is not specified. @type imageFormat: L{ImageFormat} @param imageFormat: The type of image produced: L{PNG}, L{PNM}. @type size: sequence of 2 int @param size: The image width C{size[0]} and height C{size[1]}. """ raiseNotImplemented() ./Python/esys/lsm/vis/core/sphereExtractor.py0000664000175000017500000000455312176660653021172 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{SphereExtractor} class. """ from color import Colors from extractor import Extractor class SphereExtractor(Extractor): """ Objects of this class can be used in conjunction with the L{esys.lsm.vis.core.GlyphData} class for extracting sphere info from data-records. """ def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), modifierMap = lambda dataRecord: Colors.Red, radiusScale = 1.0 ): """ Constructs the extractor. @type radiusMap: callable @param radiusMap: A callable which accepts a single data-record argument and returns a radius (float) value. @type centerMap: callable @param centerMap: A callable which accepts a single data-record argument and returns a 3 float-element sequence (ie a 3D coordinate). @type modifierMap: callable @param modifierMap: A callable which accepts a single data-record argument and returns an object modifier (or sequence of modifiers). @type radiusScale: float @param radiusScale: Scaling factor applied to all sphere radii. """ self.radiusMap = radiusMap self.centerMap = centerMap self.modifierMap = modifierMap self.radiusScale = radiusScale def getRadiusScale(self): return self.radiusScale def getRadius(self, dataRecord): return self.radiusMap(dataRecord)*self.getRadiusScale() def getCenter(self, dataRecord): return self.centerMap(dataRecord) def getModifier(self, dataRecord): return self.modifierMap(dataRecord) ./Python/esys/lsm/vis/core/surfaceData.py0000664000175000017500000000357212176660653020232 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{SurfaceData} class. """ from pointExtractor import PointExtractor class SurfaceData(object): """ Represents a topographic surface. """ def __init__(self, data, pointExtractor): """ Constructs the object. @type data: iterable @param data: Object containing data which specifies discrete points on a surface. @type pointExtractor: L{PointExtractor} @param pointExtractor: An object to extract surface coordinates from the specified C{data}. """ self.data = data self.pointExtractor = pointExtractor def getData(self): """ Returns the I{iterable} data associated with this C{SurfaceData} object. @rtype: object @return: The I{iterable} object which contains the surface coordinates. """ return self.data def getPointExtractor(self): """ Returns the I{extractor} object used to obtain points from the data-records contained in the C{self.getData()} iterable. @rtype: L{PointExtractor} @return: L{PointExtractor} object used to obtain surface data points. """ return self.pointExtractor ./Python/esys/lsm/vis/povray/0000775000175000017500000000000012176660653016017 5ustar vborosvboros./Python/esys/lsm/vis/povray/color.py0000664000175000017500000000340112176660653017505 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis.core.exception import raiseNotImplemented from esys.lsm.vis import core import string class RgbColor(core.RgbColor): """ Extends L{core.RgbColor} by implementing the L{writeSdl} method. """ def writeSdl(self, f): f.write("rgb <") f.write(string.join(map(str,self), ",")) f.write(">") class Colors: def __init__(self): raiseNotImplemented( "This class is not designed for instantiation." ) _nameRgbColorDict = dict() for attribute in dir(core.Colors): attr = getattr(core.Colors, attribute) if (isinstance(attr, core.RgbColor)): setattr(Colors, attribute, RgbColor(attr[0], attr[1], attr[2])) _nameRgbColorDict[string.upper(attr.getName())] = getattr(Colors, attribute) def findColor(colorName): """ Performs a case-insensitive search for a color with name colorName. Returns None if no color matching colorName is found. """ if (_nameRgbColorDict.has_key(string.upper(colorName))): return _nameRgbColorDict[string.upper(colorName)] return None ./Python/esys/lsm/vis/povray/arrow.py0000664000175000017500000000367312176660653017534 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Arrow} class""" from esys.lsm.vis import core from cylinder import Cylinder from cone import Cone from csg import Union from modifier import Modifiable class Arrow(core.Arrow, Modifiable): def __init__(self, tailPt, headPt, tailRadius, headRadius, headLength): core.Arrow.__init__( self, tailPt, headPt, tailRadius, headRadius, headLength ) Modifiable.__init__(self) def writeSdl(self, f): tailPt = core.Vec3(self.getTailPt()) tipPt = core.Vec3(self.getHeadPt()) dir = tipPt - tailPt arrowLength = dir.norm() if (arrowLength > 0.0): u = Union() dir = dir/arrowLength basePt = tipPt - dir*self.getHeadLength() if (arrowLength > self.getHeadLength()): u.append( Cylinder( endPt1=tailPt, endPt2=basePt, radius=self.getTailRadius() ) ) u.append( Cone(basePt=basePt, tipPt=tipPt, radius=self.getHeadRadius()) ) u.apply(self.getModifierList()) u.writeSdl(f) ./Python/esys/lsm/vis/povray/triangulatedSurface.py0000664000175000017500000000303112176660653022362 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{TriangulatedSurface} class. """ from esys.lsm.vis import core from modifier import Modifiable class TriangulatedSurface(core.TriangulatedSurface, Modifiable): def __init__(self, nodeSequence, faceSequence): core.TriangulatedSurface.__init__(self, nodeSequence, faceSequence) Modifiable.__init__(self) def writeSdl(self, f): f.write("mesh2 {\n") f.write(" vertex_vectors {\n") f.write(" %s" % len(self.nodeSequence)) for node in self.nodeSequence: f.write(",\n <%s,%s,%s>" % tuple(node)) f.write("\n }\n") f.write(" face_indices {\n") f.write(" %s" % len(self.faceSequence)) for face in self.faceSequence: f.write(",\n <%s,%s,%s>" % tuple(face)) f.write("\n }\n") Modifiable.writeSdl(self, f) f.write("}") ./Python/esys/lsm/vis/povray/cylinder.py0000664000175000017500000000466112176660653020211 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Cylinder} base class""" from esys.lsm.vis import core from modifier import Modifiable class Cylinder(core.Cylinder, Modifiable): def __init__(self, endPt1, endPt2, radius): core.Cylinder.__init__(self, endPt1, endPt2, radius) Modifiable.__init__(self) def writeSdl(self, f): f.write("cylinder {") f.write( "\n<" + ",".join( map( str, core.Vec3(self.getEndPt1())-core.Vec3(self.getCenter()) ) ) + "> " ) f.write( "\n<" + ",".join( map( str, core.Vec3(self.getEndPt2())-core.Vec3(self.getCenter()) ) ) + "> " ) f.write(str(self.getRadius())) f.write(" ") Modifiable.writeSdl(self, f) f.write(" translate <") f.write(",".join(map(str,self.getCenter()))) f.write(">") f.write("}") class Disk(Cylinder): """ Objects of this class represent cylinders. """ def __init__(self, center, radius, height=None, direction=None): if (height == None): height = radius*0.01 if (direction == None): direction = core.Vec3(0,0,1) direction = core.Vec3(direction) nrm = direction.norm() if (nrm == 0.0): direction = core.Vec3(0,0,1) nrm = 1.0 center = core.Vec3(center) direction = direction/nrm Cylinder.__init__( self, endPt1 = center - (direction*(height*0.5)), endPt2 = center + (direction*(height*0.5)), radius = radius ) ./Python/esys/lsm/vis/povray/modifier.py0000664000175000017500000001004312176660653020165 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines classes which relate to I{modifying} renderable objects. """ from esys.lsm.vis import core from color import RgbColor class Modifiable(core.Modifiable): def __init__(self): core.Modifiable.__init__(self) def apply(self, modifier): if (isinstance(modifier, RgbColor)): modifier = Pigment(modifier) core.Modifiable.apply(self, modifier) def applySingle(self, modifier): if (isinstance(modifier, RgbColor)): modifier = Pigment(modifier) core.Modifiable.applySingle(self, modifier) def writeSdl(self, f): for modifier in self.getModifierList(): modifier.writeSdl(f) class Modifier(core.Modifier): def __init__(self): pass def writeSdl(self, f): core.raiseNotImplementedError("Not implemented.") class Pigment(Modifier): def __init__(self, pigment, transmit=0.0): self.pigment = pigment self.transmit = transmit def writeSdl(self, f): f.write("pigment {") self.pigment.writeSdl(f) if (self.transmit > 0.0): f.write(" image_map { transmit ") f.write(str(self.transmit) + "}") f.write("}") class Finish(Modifier): def __init__( self, ambient=0.2, diffuse=0.5, reflection=0.25, specular=0.4, roughness=0.01 ): self.ambient = ambient self.diffuse = diffuse self.reflection = reflection self.specular = specular self.roughness = roughness def writeSdl(self, f): f.write("finish {") f.write(" ambient ") f.write(str(self.ambient)) f.write(" diffuse ") f.write(str(self.diffuse)) f.write(" reflection ") f.write(str(self.reflection)) f.write(" specular ") f.write(str(self.specular)) f.write(" roughness ") f.write(str(self.roughness)) f.write("}") class Orientation(Modifier): def __init__(self, matrix=None): self.matrix = [[1.0,0.0,0.0], [0.0,1.0,0.0], [0.0,0.0,1.0], [0.0,0.0,0.0]] if (matrix != None): for i in range(0, matrix.getNumRows()): for j in range (0, matrix.getNumCols()): self.matrix[j][i] = matrix(i,j) def writeSdl(self, f): f.write("matrix <") f.write(" %s," % ",".join(map(str,self.matrix[0]))) f.write(" %s," % ",".join(map(str,self.matrix[1]))) f.write(" %s," % ",".join(map(str,self.matrix[2]))) f.write(" %s" % ",".join(map(str,self.matrix[3]))) f.write(">") class Scale(Modifier): def __init__(self, scale=1.0): if (hasattr(scale,"__iter__")): self.scale = tuple(scale) else: self.scale = (scale,scale,scale) def writeSdl(self, f): f.write(" scale <%s> " % ",".join(map(str,self.scale))) class Pattern: def __init__(self): pass class Checker(Pattern,Modifiable): def __init__(self, color0=None, color1=None): Pattern.__init__(self) Modifiable.__init__(self) self.color0 = color0 self.color1 = color1 def writeSdl(self, f): f.write("checker ") if (self.color0 != None): self.color0.writeSdl(f) f.write(" ") if (self.color1 != None): self.color1.writeSdl(f) Modifiable.writeSdl(self, f) ./Python/esys/lsm/vis/povray/edgeData.py0000664000175000017500000000155112176660653020071 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from glyphData import GlyphData class EdgeData(GlyphData): def __init__(self, data, edgeExtractor): GlyphData.__init__(self, data, edgeExtractor) ./Python/esys/lsm/vis/povray/camera.py0000664000175000017500000000612612176660653017626 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import string from esys.lsm.vis import core from object import LightSource class Camera(core.Camera): def __init__(self, posn, lookAt, angle=70.0): core.Camera.__init__(self) self.posn = posn self.lookAt = lookAt self.angle = angle self.type = "orthographic" self.right = (-1.0,0.0,0.0) # right-handed coordinate system self.up = ( 0.0,1.0,0.0) self.direction = ( 0.0,0.0,0.1) self.setZoom(1.0) def getPosn(self): return self.posn def setPosn(self, posn): self.posn = posn def getLookAt(self): return self.lookAt def setLookAt(self, lookAt): self.lookAt = lookAt def setDirection(self, dir): self.direction = dir def setZoom(self, factor): self.zoomFactor = factor def getZoom(self): return self.zoomFactor def setAspect(self, sizeTuple): ratio = abs(float(sizeTuple[0])/float(sizeTuple[1])) self.right = (-ratio,0.0,0.0) # right handed coordinate system self.up = (0.0,1.0,0.0) def getUp(self): return core.Vec3(self.up)*(2.05/self.zoomFactor) def getRight(self): return core.Vec3(self.right)*(2.05/self.zoomFactor) def writeSdl(self, f): f.write("camera {\n") f.write(str(self.type)) f.write("\nlocation <") f.write(string.join(map(str,self.posn), ",")) f.write(">\ndirection <") f.write(string.join(map(str,self.direction), ",")) #f.write(">\nangle ") #f.write(str(self.angle)) f.write(">\nup <") f.write(string.join(map(str, self.getUp()),",")) f.write(">\nright <") f.write(string.join(map(str, self.getRight()),",")) f.write( ">\nlook_at <" + string.join(map(str,self.lookAt), ",") + ">" ) f.write("\n}") class LightedCamera(Camera): def __init__(self, posn, lookAt, angle=70.0): Camera.__init__(self, posn, lookAt, angle) self.lightSource = LightSource(posn=self.getPosn()) def setLightSource(self, lightSource): self.lightSource = lightSource self.lightSource.setPosn(self.getPosn()) def setPosn(self, posn): Camera.setPosn(self, posn) self.lightSource.setPosn(posn) def writeSdl(self, f): Camera.writeSdl(self, f) self.lightSource.writeSdl(f) ./Python/esys/lsm/vis/povray/object.py0000664000175000017500000000430612176660653017642 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import string from color import Colors from esys.lsm.vis.core import Vec3 def writeVec(f, vec): f.write("<") f.write(string.join(map(str,vec), ",")) f.write(">") class Background(object): def __init__(self, color): self.color = color def writeSdl(self, f): f.write("background {") self.color.writeSdl(f) f.write("}") class Plane(object): def __init__(self, posn, normal): self.posn = Vec3(posn) self.normal = Vec3(normal) self.normal = self.normal/(self.normal.norm()) self.pigment = None def setPigment(self, pigment): self.pigment = pigment def writeSdl(self, f): d = self.posn.dot(self.normal) f.write("\nplane {") writeVec(f, self.normal) f.write(",%s " % d) if (self.pigment != None): self.pigment.writeSdl(f) f.write("}") class LightSource(object): def __init__(self, posn, color=Colors.White, type="shadowless"): self.posn = posn self.color = color self.type = type def getPosn(self): return self.posn def setPosn(self, posn): self.posn = posn def getColor(self): return self.color def setColor(self, color): self.color = color def writeSdl(self, f): f.write("light_source {\n<") f.write(string.join(map(str,self.getPosn()), ",")) f.write(">\n") self.getColor().writeSdl(f) f.write("\n") f.write(str(self.type)) f.write("\n}") ./Python/esys/lsm/vis/povray/__init__.py0000664000175000017500000000354112176660653020133 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ PovRay (Point of vision Ray-tracer) render package. Creates PovRay Scene Description Language representation of scenes and renders images using povray executable. """ from arrow import * from arrowExtractor import * from box import * from camera import * from capsule import * from color import * from cone import * from csg import * from cylinder import * from cylinderExtractor import * from edgeData import * from edgeExtractor import * from glyphData import * from modifier import * from object import * from povRenderer import * from scene import * from sphere import * from sphereExtractor import * from triangulatedSurface import * from esys.lsm.vis.core.surfaceData import * from esys.lsm.vis.core.pointExtractor import * ./Python/esys/lsm/vis/povray/glyphData.py0000664000175000017500000000300012176660653020277 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from modifier import Finish, Pigment from color import Colors class GlyphData(core.GlyphData): def __init__(self, data, glyphExtractor): core.GlyphData.__init__(self, data, glyphExtractor) self.finish = Finish() self.pigment = Pigment(Colors.Red) def getFinish(self): return self.finish def setFinish(self, finish): self.finish = finish def getPigment(self): return self.pigment def setPigment(self, pigment): self.pigment = pigment def writeSdl(self, f): f.write("union {\n") for record in self.getData(): self.getGlyphExtractor().writeSdl(f, record) f.write("\n") self.getFinish().writeSdl(f) f.write("\n") self.getPigment().writeSdl(f) f.write("\n}") ./Python/esys/lsm/vis/povray/sphere.py0000664000175000017500000000233312176660653017660 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Sphere} base class""" from esys.lsm.vis import core from modifier import Modifiable class Sphere(core.Sphere, Modifiable): def __init__(self, center, radius): core.Sphere.__init__(self, center, radius) Modifiable.__init__(self) def writeSdl(self, f): f.write("sphere {<0,0,0> ") f.write(str(self.getRadius())) f.write("\n") Modifiable.writeSdl(self, f) f.write("\ntranslate <") f.write(",".join(map(str,self.getCenter()))) f.write(">") f.write("}") ./Python/esys/lsm/vis/povray/povRenderer.py0000664000175000017500000001747612176660653020703 0ustar vborosvboros0############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines various classes which control the parameters (arguments) for running of a povray process. """ import string import os import tempfile import esys.lsm.Logging from esys.lsm.vis.core.exception import raiseNotImplemented from esys.lsm.vis import core from esys.lsm.util import process logger = esys.lsm.Logging.getLogger("esys.lsm.vis.povray") class Option: def __init__(self, name): self.name = name def getName(self): return self.name def getArgList(self): raiseNotImplemented("Implement this method in derived class.") class SingleOption(Option): def __init__(self, name, arg, val = None): Option.__init__(self, name) self.arg = arg self.value = val def getArg(self): return self.arg def getValue(self): return self.value def setValue(self, val): self.value = val def getArgList(self): if (self.getValue() != None): return ["+" + self.getArg() + str(self.getValue())] return [] class BoolOption(SingleOption): def __init__(self, name, arg, val = None): SingleOption.__init__(self, name, arg, val = None) def getValue(self): return bool(SingleOption.getValue(self)) def getArgList(self): if (self.getValue() != None): argChar = "-" if (self.getValue()): argChar = "+" return [argChar + self.getArg()] return [] class BoolValOption(SingleOption): def __init__(self, name, arg, val = None): SingleOption.__init__(self, name, arg, val) def getArgList(self): if (self.getValue() != None): if (len(str(self.getValue())) > 0): return ["+" + self.getArg() + str(self.getValue())] else: return ["-" + self.getArg()] return [] class ListOption(SingleOption): def __init__(self, name, arg, val = None): SingleOption.__init__(self, name, arg) self.setValue([]) def appendValue(self, val): self.getValue().append(val) def getArgList(self): return \ [ "+" + self.getArg() + str(val) \ for val in self.getValue() ] class DisplayPauseOption(Option): def __init__(self, name): Option.__init__(self, name) self.display = BoolOption("Display", "D", None) self.pause = BoolOption("Pause", "P", None) self.noPause = BoolOption("Pause", "P", False) def setOffScreen(self, offScreen): self.display.setValue(not offScreen) def getOffScreen(self): return (not self.display.getValue()) def setPause(self, pause): self.pause.setValue(pause) def getPause(self): return self.pause.getValue() def getArgList(self): argList = self.display.getArgList() if (self.getOffScreen()): argList += self.noPause.getArgList() else: argList += self.pause.getArgList() return argList _formatCharDict = dict() _formatCharDict[str(core.PNG)] = "N" _formatCharDict[str(core.PNM)] = "P" from esys.lsm.util import InstallInfo class PovProcess(process.Process): def __init__(self, argList, combineStdOutAndStdErr=True): process.Process.__init__( self, InstallInfo.getPovrayExePath(), argList, combineStdOutAndStdErr, printOutput=False ) class PovSdlInput: def __init__(self): self.tempFile = tempfile.mkstemp() self.file = os.fdopen(self.tempFile[0], 'wa') self.fileName = self.tempFile[1] def __del__(self): self.close() os.remove(self.getFileName()) def getFile(self): return self.file def getFileName(self): return self.fileName def close(self): if (self.file != None): self.file.close() self.file = None class PovRenderer: def __init__(self): self.nameOptDict = dict() self.initialiseOptionDict() def initialiseOptionDict(self): self.nameOptDict["Quality"] = SingleOption("Quality", "Q") self.nameOptDict["Quality"].setValue(11) self.nameOptDict["Antialias"] = SingleOption("Antialias", "A") self.nameOptDict["Antialias"].setValue(0.1) self.nameOptDict["DisplayPause"] = DisplayPauseOption("DisplayPause") self.nameOptDict["Height"] = SingleOption("Height", "H") self.nameOptDict["Width"] = SingleOption("Width", "W") self.nameOptDict["Input_File_Name"] = SingleOption("Input_File_Name", "I") self.nameOptDict["Output_To_File"] = \ BoolValOption("Output_To_File", "F") self.nameOptDict["Output_File_Name"] = SingleOption("Output_File_Name", "O") self.nameOptDict["Library_Path"] = ListOption("Library_Path", "L") self.nameOptDict["All_Console"] = \ BoolValOption("All_Console", "G", "A") def getOption(self, optionName): return self.nameOptDict[optionName] def setOffScreen(self, doOffScreen): self.getOption("DisplayPause").setOffScreen(doOffScreen) def getOffScreen(self): return self.getOption("DisplayPause").getOffScreen() def setInteractive(self, interactive): self.getOption("DisplayPause").setPause(interactive) def getInteractive(self): return self.getOption("DisplayPause").getPause() def getImageFormat(self, fileName): return core.getFormatFromExtension(fileName) def getImageFormatChar(self, imageFormat): return _formatCharDict[str(imageFormat)] def setFileName(self, fileName, imageFormat=None): self.getOption("Output_File_Name").setValue(fileName) if (fileName != None): if (imageFormat == None): imageFormat = self.getImageFormat(fileName) self.getOption("Output_To_File").setValue( self.getImageFormatChar(imageFormat) ) else: self.getOption("Output_To_File").setValue("") def getFileName(self): return self.getOption("Output_File_Name").getValue() def setSize(self, size): self.getOption("Width").setValue(size[0]) self.getOption("Height").setValue(size[1]) def getSize(self): return \ [ self.getOption("Width").getValue(), self.getOption("Height").getValue() ] def clear(self): pass def getArgList(self): argList = [] for opt in self.nameOptDict.values(): argList += opt.getArgList() return argList def openInput(self): self.sdlInput = PovSdlInput() return self.sdlInput.getFile() def getInput(self): return self.sdlInput.getFile() def closeInput(self): self.sdlInput.close() self.getOption("Input_File_Name").setValue(self.sdlInput.getFileName()) process = PovProcess(self.getArgList()) logger.info("Running process: " + process.getCommandLine()) process.run() logger.info("povray output = " + str(process.getStdOutLineList())) ./Python/esys/lsm/vis/povray/cylinderExtractor.py0000664000175000017500000000552512176660653022105 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from cylinder import Cylinder, Disk import string class CylinderExtractor(core.CylinderExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), endPt1Map = lambda dataRecord: dataRecord.getEndPt1(), endPt2Map = lambda dataRecord: dataRecord.getEndPt2(), modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): core.CylinderExtractor.__init__( self, radiusMap, endPt1Map, endPt2Map, modifierMap, radiusScale ) def getGlyph(self, record): """ Returns the cylinder associated with the data in C{record}. """ glyph = \ Cylinder( endPt1=self.getEndPt1(record), endPt2=self.getEndPt2(record), radius=self.getRadius(record) ) glyph.apply(self.getModifier(record)) return glyph def writeSdl(self, f, record): self.getGlyph(record).writeSdl(f) class DiskExtractor(core.DiskExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), heightMap = lambda dataRecord: 0.001, directionMap = lambda dataRecord: None, modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): core.DiskExtractor.__init__( self, radiusMap, centerMap, heightMap, directionMap, modifierMap, radiusScale ) def getGlyph(self, record): """ Returns the cylinder associated with the data in C{record}. """ glyph = \ Disk( center = self.getCenter(record), radius = self.getRadius(record), height = self.getHeight(record), direction = self.getDirection(record) ) glyph.apply(self.getModifier(record)) return glyph def writeSdl(self, f, record): self.getGlyph(record).writeSdl(f) ./Python/esys/lsm/vis/povray/Makefile.am0000664000175000017500000000256312176660653020061 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Python.am lsmvispovray_PYTHON = \ __init__.py \ arrow.py \ arrowExtractor.py \ box.py \ camera.py \ capsule.py \ color.py \ cone.py \ csg.py \ cylinder.py \ cylinderExtractor.py \ edgeData.py \ edgeExtractor.py \ glyphData.py \ modifier.py \ object.py \ povRenderer.py \ scene.py \ sphere.py \ sphereExtractor.py \ triangulatedSurface.py AM_CPPFLAGS += $(PYTHON_CPPFLAGS) ./Python/esys/lsm/vis/povray/box.py0000664000175000017500000000330312176660653017160 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Box} and L{Cube} classes""" from esys.lsm.vis import core from modifier import Modifiable class Box(core.Box, Modifiable): def __init__(self, minPt, maxPt): core.Box.__init__(self, minPt, maxPt) Modifiable.__init__(self) def writeSdl(self, f): halfSize = self.getSideLength()*0.5 f.write("box {<" + ",".join(map(str, halfSize*-1.0)) + ">") f.write(",<" + ",".join(map(str, halfSize)) + "> ") Modifiable.writeSdl(self, f) f.write(" translate <") f.write(",".join(map(str,self.getCenter()))) f.write(">") f.write("}") class Cube(Box): """ Box with all sides the same length. """ def __init__(self, minPt, sideLength): """ Constructs axis-aligned cube. @type minPt: sequence of 3 floats @param minPt: lower left back corner coordinate. @type sideLength: float @param sideLength: length of all sides. """ Box.__init__(self, minPt, core.Vec3(minPt)+sideLength) ./Python/esys/lsm/vis/povray/csg.py0000664000175000017500000000272212176660653017150 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Constructive solid geometry classes: L{Union}. """ from modifier import Modifiable class Union(Modifiable): """ Union of objects. """ def __init__(self, *args): Modifiable.__init__(self) self.objList = [] for arg in args: self.append(arg) def __iter__(self): return iter(self.objList) def __getattr__(self, attr): return getattr(self.objList, attr) def writeBegin(self, f): f.write("\nunion {\n") def writeEnd(self,f): f.write("\n}") def writeObjects(self,f): for obj in iter(self): obj.writeSdl(f) f.write("\n") def writeSdl(self, f): self.writeBegin(f) self.writeObjects(f) Modifiable.writeSdl(self, f) self.writeEnd(f) ./Python/esys/lsm/vis/povray/capsule.py0000664000175000017500000000677512176660653020044 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Capsule} base class""" from esys.lsm.vis import core from modifier import Modifiable from csg import Union from box import Box from cylinder import Disk class Capsule(core.Capsule, Modifiable): """ Objects of this class represent capsules, a capsule capped with a hemisphere at each end. """ def __init__(self, radius, endPt1=None, endPt2=None, segEndPt1=None, segEndPt2=None): """ Initialises capsule with center-end-point coordinates and radius. @type radius: float @param radius: Radius of capsule. @type endPt1: sequence of 3 floats @param endPt1: Coordinate of one end ("apex" of hemisphere). @type endPt2: sequence of 3 floats @param endPt2: Center coordinate of other end ("apex" of hemisphere). @type segEndPt1: sequence of 3 floats @param segEndPt1: Coordinate of one end ("apex" of hemisphere). @type segEndPt2: sequence of 3 floats @param segEndPt2: Center coordinate of other end ("apex" of hemisphere). """ core.Capsule.__init__(self,radius,endPt1,endPt2,segEndPt1,segEndPt2) Modifiable.__init__(self) def writeSdl(self, f): radius = self.getRadius() f.write("\nsphere_sweep {\nlinear_spline\n2\n") f.write("<%s,0,0> %s\n" % (-self.getSegmentLength()*0.5,radius)) f.write("<%s,0,0> %s\n" % (self.getSegmentLength()*0.5,radius)) Modifiable.writeSdl(self, f) f.write("\ntranslate <%s,%s,%s>\n" % tuple(self.getCenter())) f.write("}") class CapsuleDisk(core.CapsuleDisk, Modifiable): """ Objects of this class represent a cylinder with a capsule cross-section. """ def __init__( self, center, length, radius, height = None ): core.CapsuleDisk.__init__(self,center,length,radius,height) Modifiable.__init__(self) def writeSdl(self, f): csg = Union() halfSegLength = 0.5*self.getSegmentLength() box = \ Box( core.Vec3(-halfSegLength, -self.getRadius(), -0.5*self.getHeight()), core.Vec3(halfSegLength, self.getRadius(), 0.5*self.getHeight()) ) csg.append(box) csg.append( Disk( center = core.Vec3(-halfSegLength, 0, 0), radius = self.getRadius(), height = self.getHeight(), direction = (0,0,1) ) ) csg.append( Disk( center = core.Vec3(halfSegLength, 0, 0), radius = self.getRadius(), height = self.getHeight(), direction = (0,0,1) ) ) csg.writeBegin(f) csg.writeObjects(f) Modifiable.writeSdl(self,f) f.write("\ntranslate <%s,%s,%s>\n" % tuple(self.getCenter())) csg.writeEnd(f) ./Python/esys/lsm/vis/povray/edgeExtractor.py0000664000175000017500000000452012176660653021172 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from modifier import Pigment from color import Colors import string class EdgeExtractor(core.EdgeExtractor): def __init__( self, pointListMap = lambda dataRecord: dataRecord.getPointList(), radiusListMap = lambda dataRecord: 1.0, colorValListMap = lambda dataRecord: Pigment(Colors.Red), radiusScale = 1.0 ): core.EdgeExtractor.__init__( self, pointListMap, radiusListMap, colorValListMap, radiusScale ) def getResizedList(self, lst, newLen): if (not hasattr(lst, "__iter__")): newLst = [lst] else: newLst = list(lst) if (len(newLst) < newLen): newLst = newLst*((newLen/(len(newLst))) + 1) del newLst[newLen:] return newLst def writeSdl(self, f, record): ptList = self.getPointList(record) numPts = len(ptList) radiusList = \ self.getResizedList(self.getRadiusList(record), numPts) colorList = \ self.getResizedList(self.getColorValList(record), numPts) for i in range(0, numPts-1): f.write("cone {\n<") f.write(string.join(map(str,ptList[i]), ",")) f.write(">,") f.write(str(radiusList[i]*self.getRadiusScale())) f.write("\n<") f.write(string.join(map(str,ptList[i+1]), ",")) f.write(">,") f.write(str(radiusList[i+1]*self.getRadiusScale())) f.write("\n") if (hasattr(colorList[i], "writeSdl")): colorList[i].writeSdl(f) f.write("}\n") ./Python/esys/lsm/vis/povray/arrowExtractor.py0000664000175000017500000000356112176660653021424 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from arrow import Arrow class ArrowExtractor(core.ArrowExtractor): def __init__( self, tailPtMap, vecMap, tailRadiusMap = lambda record: 0.10, headRadiusMap = lambda record: 0.25, headLengthMap = lambda record: 0.75, modifierMap = lambda record: None, lengthScale = 1.0 ): core.ArrowExtractor.__init__( self, tailPtMap, vecMap, tailRadiusMap, headRadiusMap, headLengthMap, modifierMap, lengthScale ) def getGlyph(self, record): """ Returns the arrow associated with the data in C{record}. """ glyph = \ Arrow( tailPt = self.getTailPt(record), headPt = self.getHeadPt(record), tailRadius = self.getTailRadius(record), headRadius = self.getHeadRadius(record), headLength = self.getHeadLength(record) ) glyph.apply(self.getModifier(record)) return glyph def writeSdl(self, f, record): self.getGlyph(record).writeSdl(f) ./Python/esys/lsm/vis/povray/cone.py0000664000175000017500000000515512176660653017323 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Cone} base class""" from esys.lsm.vis import core from modifier import Modifiable class TruncatedCone(core.TruncatedCone, Modifiable): def __init__(self, endPt1, endPt2, radius1, radius2 = 0): core.TruncatedCone.__init__( self, endPt1, endPt2, radius1, radius2 ) Modifiable.__init__(self) def writeSdl(self, f): f.write("cone {") f.write( "\n<" + ",".join( map( str, core.Vec3(self.getEndPt1())-core.Vec3(self.getCenter()) ) ) + "> " ) f.write(" %s" % self.getRadius1()) f.write( "\n<" + ",".join( map( str, core.Vec3(self.getEndPt2())-core.Vec3(self.getCenter()) ) ) + "> " ) f.write(str(self.getRadius2())) f.write(" ") Modifiable.writeSdl(self, f) f.write("\ntranslate <") f.write(",".join(map(str,self.getCenter()))) f.write(">\n") f.write("}") class Cone(TruncatedCone): """ Objects of this class represent cones. """ def __init__(self, basePt, tipPt, radius): """ Initialises cone with center-end-point coordinates and corresponding radii. @type basePt: sequence of 3 floats @param basePt: Center coordinate of one end. @type tipPt: sequence of 3 floats @param tipPt: Center coordinate of other end. @type radius: float @param radius: Radius at C{basePt}. """ TruncatedCone.__init__(self, basePt, tipPt, radius, 0) def getBasePt(self): return self.getEndPt1() def getTipPt(self): return self.getEndPt2() def getRadius(self): return self.getRadius1() ./Python/esys/lsm/vis/povray/scene.py0000664000175000017500000001054612176660653017474 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import string import os import os.path import itertools from esys.lsm.vis import core from povRenderer import PovRenderer from object import Background from camera import LightedCamera from color import Colors, RgbColor class Renderer: def __init__(self): self.povRenderer = None self.background = Background(color=Colors.White) self.camera = self.getDefaultCamera() def getDefaultCamera(self): return LightedCamera(posn=[0,0,-10], lookAt=[0,0,0]) def getCamera(self): return self.camera def setCamera(self, camera): self.camera = camera def getPovRenderer(self): if (self.povRenderer == None): self.povRenderer = PovRenderer() return self.povRenderer def setOffScreen(self, doOffScreen): self.getPovRenderer().setOffScreen(doOffScreen) def getOffScreen(self): return self.getPovRenderer().getOffScreen() def setInteractive(self, interactive): self.getPovRenderer().setInteractive(interactive) def getInteractive(self): return self.getPovRenderer().getInteractive() def setSize(self, size): self.getPovRenderer().setSize(size) def getSize(self): return self.getPovRenderer().getSize() def clear(self): pass def setBackground(self, color): self.background = Background(color) def getBackground(self): return self.background def getRendererObjectList(self): return [self.getBackground(), self.getCamera()] def getImageFormat(self, fileName): return core.getFormatFromExtension(fileName) def getObjectList(self): return self.objectList def setObjectList(self, objectList): self.objectList = objectList def writeSdl(self, f, objectList): self.getCamera().setAspect(self.getSize()) for o in itertools.chain(self.getRendererObjectList(), objectList): o.writeSdl(f) f.write("\n") def render(self, objectList, fileName = None, imageFormat = None): if (fileName != None): if (imageFormat == None): imageFormat = self.getImageFormat(fileName) self.getPovRenderer().setFileName(fileName, imageFormat) f = self.getPovRenderer().openInput() self.writeSdl(f, objectList) self.getPovRenderer().closeInput() class RenderDefaults(core.RenderDefaults): pass class Scene(core.Scene): def __init__(self, renderDefaults=None): self.renderer = None core.Scene.__init__(self, renderDefaults) self.initialise() def getRenderer(self): if (self.renderer == None): self.renderer = Renderer() return self.renderer def setBackground(self, color): self.getRenderer().setBackground( RgbColor(color[0],color[1],color[2],color.getName()) ) def getCamera(self): return self.getRenderer().getCamera() def setCamera(self, camera): return self.getRenderer().setCamera(camera) def clear(self): core.Scene.clear(self) self.getRenderer().clear() def render( self, offScreen = None, interactive = None, fileName = None, imageFormat = None, size = None ): (offScreen, size, interactive) = \ self.getRenderDefaults(offScreen, size, interactive) self.getRenderer().clear() self.getRenderer().setOffScreen(offScreen) self.getRenderer().setInteractive(interactive) self.getRenderer().setSize(size) self.getRenderer().setObjectList(self.objectList) self.getRenderer().render(self.objectList, fileName, imageFormat) ./Python/esys/lsm/vis/povray/sphereExtractor.py0000664000175000017500000000320712176660653021555 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from color import RgbColor from sphere import Sphere import string class SphereExtractor(core.SphereExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), modifierMap = lambda dataRecord: RgbColor(1,1,1), radiusScale = 1.0 ): core.SphereExtractor.__init__( self, radiusMap, centerMap, modifierMap, radiusScale ) def getGlyph(self, record): """ Returns the sphere associated with the data in C{record}. """ glyph = \ Sphere( radius=self.getRadius(record), center=self.getCenter(record) ) glyph.apply(self.getModifier(record)) return glyph def writeSdl(self, f, record): self.getGlyph(record).writeSdl(f) ./Python/esys/lsm/vis/vtk/0000775000175000017500000000000012176660653015303 5ustar vborosvboros./Python/esys/lsm/vis/vtk/color.py0000664000175000017500000000342112176660653016773 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis.core.exception import raiseNotImplemented from esys.lsm.vis import core from modifier import Modifier import string class RgbColor(core.RgbColor, Modifier): """ Extends L{core.RgbColor} by implementing the L{applyTo} method. """ def applyTo(self, actor): actor.GetProperty().SetColor(self.getRgb()) class Colors: def __init__(self): raiseNotImplemented( "This class is not designed for instantiation." ) _nameRgbColorDict = dict() for attribute in dir(core.Colors): attr = getattr(core.Colors, attribute) if (isinstance(attr, core.RgbColor)): setattr(Colors, attribute, RgbColor(attr[0], attr[1], attr[2])) _nameRgbColorDict[string.upper(attr.getName())] = getattr(Colors, attribute) def findColor(colorName): """ Performs a case-insensitive search for a color with name colorName. Returns None if no color matching colorName is found. """ if (_nameRgbColorDict.has_key(string.upper(colorName))): return _nameRgbColorDict[string.upper(colorName)] return None ./Python/esys/lsm/vis/vtk/arrow.py0000664000175000017500000000447512176660653017021 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Arrow} class""" from esys.lsm.vis import core from util import computeRotateWxyz from modifier import Modifiable import vtk as kwvtk # Kitware's vtk package class Arrow(core.Arrow, Modifiable): def __init__(self, tailPt, headPt, tailRadius, headRadius, headLength): core.Arrow.__init__( self, tailPt, headPt, tailRadius, headRadius, headLength ) Modifiable.__init__(self) def getVtkSource(self): arrow = kwvtk.vtkArrowSource() scale = self.getLength() arrow.SetTipLength(self.getHeadLength()/scale) arrow.SetTipRadius(self.getHeadRadius()/scale) arrow.SetShaftRadius(self.getTailRadius()/scale) arrow.SetTipResolution(10) arrow.SetShaftResolution(10) return arrow def getVtkMapper(self): return kwvtk.vtkPolyDataMapper() def getActor(self): arrow = self.getVtkSource() arrowMapper = self.getVtkMapper() arrowMapper.SetInput(arrow.GetOutput()) arrowActor = kwvtk.vtkActor() arrowActor.SetMapper(arrowMapper) arrowLength = self.getLength() arrowActor.SetScale([arrowLength]*3) (theta, axis) = \ computeRotateWxyz( (1,0,0), core.Vec3(self.getHeadPt())-core.Vec3(self.getTailPt()) ) arrowActor.RotateWXYZ(theta, axis[0], axis[1], axis[2]) arrowActor.SetPosition(self.getTailPt()) self.applyModifiers(arrowActor) return arrowActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/vtk/triangulatedSurface.py0000664000175000017500000000400312176660653021646 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{TriangulatedSurface} class. """ from esys.lsm.vis import core import vtk as kwvtk from modifier import Modifiable class TriangulatedSurface(core.TriangulatedSurface, Modifiable): def __init__(self, nodeSequence, faceSequence): core.TriangulatedSurface.__init__(self, nodeSequence, faceSequence) Modifiable.__init__(self) def getVtkIdList(self, idList): vtkIdList = kwvtk.vtkIdList() for id in idList: vtkIdList.InsertNextId(id) return vtkIdList def getVtkData(self): pts = kwvtk.vtkPoints() cls = kwvtk.vtkCellArray() ptIndex = 0 for node in self.nodeSequence: pts.InsertNextPoint(node) for face in self.faceSequence: cls.InsertNextCell(self.getVtkIdList(face)) vtkPolyData = kwvtk.vtkPolyData() vtkPolyData.SetPoints(pts) vtkPolyData.SetPolys(cls) return vtkPolyData def getVtkMapper(self): mapper = kwvtk.vtkPolyDataMapper() mapper.SetInput(self.getVtkData()) return mapper def getActor(self): polyMapper = self.getVtkMapper() polyActor = kwvtk.vtkActor() polyActor.SetMapper(polyMapper) self.applyModifiers(polyActor) return polyActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/vtk/cylinder.py0000664000175000017500000000535412176660653017475 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from util import computeRotateWxyz from modifier import Modifiable import vtk as kwvtk import math class Cylinder(core.Cylinder, Modifiable): def __init__(self, endPt1, endPt2, radius): core.Cylinder.__init__(self, endPt1, endPt2, radius) Modifiable.__init__(self) def getVtkSource(self): cylinder = kwvtk.vtkCylinderSource() cylinder.SetRadius(self.getRadius()) cylinder.SetCenter(self.getCenter()) cylinder.SetHeight(self.getHeight()) cylinder.SetResolution(10) return cylinder def getVtkMapper(self): return kwvtk.vtkPolyDataMapper() def getActor(self): cylinder = self.getVtkSource() cylinderMapper = self.getVtkMapper() cylinderMapper.SetInput(cylinder.GetOutput()) cylinderActor = kwvtk.vtkActor() cylinderActor.SetMapper( cylinderMapper ) cylinderActor.SetOrigin(self.getCenter()) yDir = core.Vec3(0,1,0) # original vtk cylinder-source axis direction axisDir = core.Vec3(self.getEndPt2())-core.Vec3(self.getEndPt1()) (theta, rotAxis) = computeRotateWxyz(yDir, axisDir) cylinderActor.RotateWXYZ( theta, rotAxis[0], rotAxis[1], rotAxis[2] ) self.applyModifiers(cylinderActor) return cylinderActor def addActor(self, addTo): addTo.AddActor(self.getActor()) class Disk(Cylinder): """ Objects of this class represent cylinders. """ def __init__(self, center, radius, height, direction=None): if (direction == None): direction = core.Vec3(0,0,1) direction = core.Vec3(direction) nrm = direction.norm() if (nrm == 0.0): direction = core.Vec3(0,0,1) nrm = 1.0 center = core.Vec3(center) direction = direction/nrm Cylinder.__init__( self, endPt1 = center - (direction*(height*0.5)), endPt2 = center + (direction*(height*0.5)), radius = radius ) ./Python/esys/lsm/vis/vtk/modifier.py0000664000175000017500000000226212176660653017455 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines classes which relate to I{modifying} renderable objects. """ from esys.lsm.vis import core class Modifiable(core.Modifiable): def __init__(self): core.Modifiable.__init__(self) def applyModifiers(self, actor): for modifier in self.getModifierList(): if (modifier != None): modifier.applyTo(actor) class Modifier(core.Modifier): def __init__(self): pass def applyTo(self, actor): core.raiseNotImplemented("Not implemented.") ./Python/esys/lsm/vis/vtk/pointExtractor.py0000664000175000017500000000214412176660653020703 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import vtk as kwvtk from esys.lsm.vis import core class PointExtractor(core.PointExtractor): def __init__( self, pointMap = lambda dataRecord: dataRecord.getPoint() ): core.PointExtractor.__init__(self, pointMap) def getVtkPoints(self, data): vtkPoints = kwvtk.vtkPoints() for dataRecord in data: vtkPoints.InsertNextPoint(self.getPoint(dataRecord)) return vtkPoints ./Python/esys/lsm/vis/vtk/glyphExtractor.py0000664000175000017500000000545512176660653020705 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ """ import types import vtk as kwvtk from esys.lsm.vis import core typeVtkDataArrayDict = dict() typeVtkDataArrayDict[types.IntType] = kwvtk.vtkIntArray typeVtkDataArrayDict[types.FloatType] = kwvtk.vtkDoubleArray typeVtkDataArrayDict[types.LongType] = kwvtk.vtkLongArray def getVtkDataArrayClass(thing): if (hasattr(thing, "__len__")): return typeVtkDataArrayDict[type(thing[0])] return typeVtkDataArrayDict[type(thing)] class FieldMap: def __init__(self, name, map): self.name = name self.map = map self.vtkDataArray = None self.componentIdxList = [] def initialise(self, record): val = self.map(record) self.vtkDataArray = getVtkDataArrayClass(val)() self.vtkDataArray.SetName(self.name) self.vtkDataArray.SetNumberOfComponents(getattr(val, "__len__", lambda:1)()) self.componentIdxList = range(0,self.vtkDataArray.GetNumberOfComponents()) def insertNext(self, record): tupleIdx = self.vtkDataArray.GetNumberOfTuples() tupyl = self.map(record) for j in self.componentIdxList: self.vtkDataArray.InsertComponent(tupleIdx, j, tupyl[j]) def getVtkDataArray(self): return self.vtkDataArray class GlyphExtractor: def __init__(self, pointsMap, fieldMapList): self.pointsMap = pointsMap self.fieldMapList = fieldMapList def addRecordToVtkData(self, record, vtkPoints): vtkPoints.InsertNextPoint(self.pointsMap(record)) for fieldMap in self.fieldMapList: fieldMap.insertNext(record) def getVtkData(self, data): rIt = iter(data) record = rIt.next() for fieldMap in self.fieldMapList: fieldMap.initialise(record) vtkPoints = kwvtk.vtkPoints() self.addRecordToVtkData(record, vtkPoints) for record in rIt: self.addRecordToVtkData(record, vtkPoints) vtkUnstrGrid = kwvtk.vtkUnstructuredGrid() vtkUnstrGrid.SetPoints(vtkPoints) for fieldMap in self.fieldMapList: vtkUnstrGrid.GetPointData().AddArray(fieldMap.getVtkDataArray()) return vtkUnstrGrid ./Python/esys/lsm/vis/vtk/edgeData.py0000664000175000017500000000422412176660653017355 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core import vtk as kwvtk class EdgeData(core.EdgeData): def __init__(self, data, edgeExtractor): core.EdgeData.__init__(self, data, edgeExtractor) def getVtkData(self): return self.getEdgeExtractor().getVtkData(self.getData()) def getVtkTube(self): vtkData = self.getVtkData() vtkTube = kwvtk.vtkTubeFilter() vtkTube.SetVaryRadiusToVaryRadiusByScalar() vtkTube.SetNumberOfSides(16) vtkTube.SetInput(vtkData) radiusRange = \ vtkData.GetPointData().GetArray( self.getEdgeExtractor().getRadiusFieldName() ).GetRange( self.getEdgeExtractor().getRadiusFieldComponentIndex() ) vtkTube.SetRadius(radiusRange[0]) vtkTube.SetRadiusFactor(radiusRange[0]/float(radiusRange[1])) return vtkTube def getVtkMapper(self): vtkMapper = kwvtk.vtkPolyDataMapper() vtkMapper.SetInput(self.getVtkTube().GetOutput()) vtkMapper.ScalarVisibilityOn() vtkMapper.SetScalarModeToUsePointFieldData() vtkMapper.ColorByArrayComponent( self.getEdgeExtractor().getColorFieldName(), self.getEdgeExtractor().getColorFieldComponentIndex(), ) return vtkMapper def getActor(self): vtkActor = kwvtk.vtkActor() vtkActor.SetMapper(self.getVtkMapper()) return vtkActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/vtk/camera.py0000664000175000017500000000323712176660653017112 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core class Camera(core.Camera): def __init__(self, vtkCamera): core.Camera.__init__(self) self.vtkCamera = vtkCamera self.SetUseHorizontalViewAngle(True) self.SetViewAngle(70.0) self.SetParallelProjection(True) self.SetClippingRange(0.0001, 1.0e8) self.setZoom(1.0) def __getattr__(self, attr): return getattr(self.vtkCamera, attr) def getPosn(self): return self.vtkCamera.GetPosition() def setZoom(self, factor): self.zoomFactor = factor self.Zoom(factor) def getZoom(self): return self.zoomFactor def setPosn(self, posn): self.vtkCamera.SetPosition(posn) def getLookAt(self): return self.vtkCamera.GetFocalPoint() def setLookAt(self, lookAt): self.vtkCamera.SetFocalPoint(lookAt) def setAngle(self, angle): self.vtkCamera.SetViewAngle(angle) def getAngle(self): return self.vtkCamera.GetViewAngle() ./Python/esys/lsm/vis/vtk/__init__.py0000664000175000017500000000302212176660653017411 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ VTK (Visualization Tool Kit) render package. Uses VTK to render images of scenes. """ from arrow import * from arrowExtractor import * from box import * from camera import * from color import * from cone import * from cylinder import * from cylinderExtractor import * from edgeData import * from edgeExtractor import * from glyphData import * from glyphExtractor import * from modifier import * from pointExtractor import * from scene import * from sphere import * from sphereExtractor import * from surfaceData import * from triangulatedSurface import * from util import * ./Python/esys/lsm/vis/vtk/glyphData.py0000664000175000017500000000176612176660653017604 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core class GlyphData(core.GlyphData): def __init__(self, data, glyphExtractor): core.GlyphData.__init__(self, data, glyphExtractor) def addActor(self, addTo): extractor = self.getGlyphExtractor() for record in self.getData(): extractor.addActor(record, addTo) ./Python/esys/lsm/vis/vtk/sphere.py0000664000175000017500000000315312176660653017145 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from modifier import Modifiable import vtk as kwvtk class Sphere(core.Sphere, Modifiable): def __init__(self, center, radius): core.Sphere.__init__(self, center, radius) Modifiable.__init__(self) def getVtkSource(self): sphere = kwvtk.vtkSphereSource() sphere.SetRadius(self.getRadius()) sphere.SetCenter(self.getCenter()) sphere.SetPhiResolution(10) sphere.SetThetaResolution(10) return sphere def getVtkMapper(self): return kwvtk.vtkPolyDataMapper() def getActor(self): sphere = self.getVtkSource() sphereMapper = self.getVtkMapper() sphereMapper.SetInput(sphere.GetOutput()) sphereActor = kwvtk.vtkActor() sphereActor.SetMapper(sphereMapper) self.applyModifiers(sphereActor) return sphereActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/vtk/cylinderExtractor.py0000664000175000017500000000536212176660653021370 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from cylinder import Cylinder, Disk class CylinderExtractor(core.CylinderExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), endPt1Map = lambda dataRecord: dataRecord.getEndPt1(), endPt2Map = lambda dataRecord: dataRecord.getEndPt2(), modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): core.CylinderExtractor.__init__( self, radiusMap, endPt1Map, endPt2Map, modifierMap, radiusScale ) def addActor(self, record, addTo): """ Adds the cylinder-actor associated with the data in C{record} to C{addTo}. """ glyph = \ Cylinder( endPt1=self.getEndPt1(record), endPt2=self.getEndPt2(record), radius=self.getRadius(record) ) glyph.apply(self.getModifier(record)) glyph.addActor(addTo) class DiskExtractor(core.DiskExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), heightMap = lambda dataRecord: 0.001, directionMap = lambda dataRecord: None, modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): core.DiskExtractor.__init__( self, radiusMap, centerMap, heightMap, directionMap, modifierMap, radiusScale ) def addActor(self, record, addTo): """ Adds the disk-actor associated with the data in C{record} to C{addTo}. """ glyph = \ Disk( center = self.getCenter(record), radius = self.getRadius(record), height = self.getHeight(record), direction = self.getDirection(record) ) glyph.apply(self.getModifier(record)) glyph.addActor(addTo) ./Python/esys/lsm/vis/vtk/Makefile.am0000664000175000017500000000254412176660653017344 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Python.am lsmvisvtk_PYTHON = \ __init__.py \ arrow.py \ arrowExtractor.py \ box.py \ camera.py \ color.py \ cone.py \ cylinder.py \ cylinderExtractor.py \ edgeData.py \ edgeExtractor.py \ glyphData.py \ glyphExtractor.py \ modifier.py \ pointExtractor.py \ scene.py \ sphere.py \ sphereExtractor.py \ surfaceData.py \ triangulatedSurface.py \ util.py AM_CPPFLAGS += $(PYTHON_CPPFLAGS) ./Python/esys/lsm/vis/vtk/box.py0000664000175000017500000000411712176660653016450 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """Defines the L{Box} and L{Cube} classes""" from esys.lsm.vis import core from modifier import Modifiable import vtk as kwvtk class Box(core.Box,Modifiable): def __init__(self, minPt, maxPt): core.Box.__init__(self, minPt, maxPt) Modifiable.__init__(self) def getVtkSource(self): box = kwvtk.vtkCubeSource() minPt = self.getMinPt() maxPt = self.getMaxPt() box.SetBounds( minPt[0], maxPt[0], minPt[1], maxPt[1], minPt[2], maxPt[2] ) return box def getVtkMapper(self): return kwvtk.vtkPolyDataMapper() def getActor(self): box = self.getVtkSource() boxMapper = self.getVtkMapper() boxMapper.SetInput(box.GetOutput()) boxActor = kwvtk.vtkActor() boxActor.SetMapper(boxMapper) self.applyModifiers(boxActor) return boxActor def addActor(self, addTo): addTo.AddActor(self.getActor()) class Cube(Box): """ Box with all sides the same length. """ def __init__(self, minPt, sideLength): """ Constructs axis-aligned cube. @type minPt: sequence of 3 floats @param minPt: lower left back corner coordinate. @type sideLength: float @param sideLength: length of all sides. """ Box.__init__(self, minPt, core.Vec3(minPt)+sideLength) ./Python/esys/lsm/vis/vtk/util.py0000664000175000017500000000253412176660653016636 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Common function and class definitions. """ import math from esys.lsm.vis import core def computeRotateWxyz(v1, v2): """ Returns the angle (in degrees) and axis of rotation required to rotate v1 onto v2. @type v1: sequence of 3 floats @param v1: Vector to be rotated. @type v2: sequence of 3 floats @param v2: C{v1} rotated parallel to this vector. @rtype: tuple @return: C{(angle, axis)} rotation which rotates C{v1} parallel to C{v2}. """ vv1 = core.Vec3(v1) vv2 = core.Vec3(v2) theta = (math.acos(vv2.dot(vv1)/(vv2.norm()*vv1.norm())))*(180.0/math.pi) rotAxis = vv2.cross(vv1) return (theta, rotAxis/(-(rotAxis.norm()))) ./Python/esys/lsm/vis/vtk/edgeExtractor.py0000664000175000017500000000634012176660653020460 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core import vtk as kwvtk class EdgeExtractor(core.EdgeExtractor): def __init__( self, pointListMap = lambda dataRecord: dataRecord.getPointList(), radiusListMap = lambda dataRecord: 1.0, colorValListMap = lambda dataRecord: 0, radiusScale = 1.0 ): core.EdgeExtractor.__init__( self, pointListMap, radiusListMap, colorValListMap, radiusScale ) def getResizedList(self, lst, newLen): if (not hasattr(lst, "__iter__")): newLst = [lst] else: newLst = list(lst) if (len(newLst) < newLen): newLst = newLst*((newLen/(len(newLst))) + 1) del newLst[newLen:] return newLst def getVtkIdList(self, idList): vtkIdList = kwvtk.vtkIdList() for id in idList: vtkIdList.InsertNextId(id) return vtkIdList def getVtkData(self, data): pts = kwvtk.vtkPoints() cls = kwvtk.vtkCellArray() radiusArray = kwvtk.vtkDoubleArray() radiusArray.SetName(self.getRadiusFieldName()) radiusArray.SetNumberOfComponents(1) colorArray = kwvtk.vtkDoubleArray() colorArray.SetName(self.getColorFieldName()) colorArray.SetNumberOfComponents(1) ptIndex = 0 for record in data: ptList = self.getPointList(record) numPts = len(ptList) radiusList = \ self.getResizedList(self.getRadiusList(record), numPts) colorList = \ self.getResizedList(self.getColorValList(record), numPts) for i in range(0, numPts): pts.InsertNextPoint(ptList[i]) radiusArray.InsertNextValue(radiusList[i]*self.getRadiusScale()) colorArray.InsertNextValue(colorList[i]) cls.InsertNextCell(self.getVtkIdList(range(ptIndex,ptIndex+numPts))) ptIndex += numPts vtkPolyData = kwvtk.vtkPolyData() vtkPolyData.SetPoints(pts) vtkPolyData.SetLines(cls) vtkPolyData.GetPointData().SetScalars(radiusArray) vtkPolyData.GetPointData().AddArray(colorArray) vtkPolyData.GetPointData().SetActiveScalars(radiusArray.GetName()) return vtkPolyData def getColorFieldName(self): return "pointDataColorField" def getColorFieldComponentIndex(self): return 0 def getRadiusFieldName(self): return "pointDataRadiusField" def getRadiusFieldComponentIndex(self): return 0 ./Python/esys/lsm/vis/vtk/arrowExtractor.py0000664000175000017500000000351012176660653020702 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from arrow import Arrow class ArrowExtractor(core.ArrowExtractor): def __init__( self, tailPtMap, vecMap, tailRadiusMap = lambda record: 0.10, headRadiusMap = lambda record: 0.25, headLengthMap = lambda record: 0.75, modifierMap = lambda record: None, lengthScale = 1.0 ): core.ArrowExtractor.__init__( self, tailPtMap, vecMap, tailRadiusMap, headRadiusMap, headLengthMap, modifierMap, lengthScale ) def addActor(self, record, addTo): """ Adds the arrow-actor associated with the data in C{record} to C{addTo}. """ glyph = \ Arrow( tailPt = self.getTailPt(record), headPt = self.getHeadPt(record), tailRadius = self.getTailRadius(record), headRadius = self.getHeadRadius(record), headLength = self.getHeadLength(record) ) glyph.apply(self.getModifier(record)) glyph.addActor(addTo) ./Python/esys/lsm/vis/vtk/cone.py0000664000175000017500000000327212176660653016605 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from modifier import Modifiable import vtk as kwvtk class Cone(core.Cone, Modifiable): def __init__(self, basePt, tipPt, radius): core.Cone.__init__(self, basePt, tipPt, radius) Modifiable.__init__(self) def getVtkSource(self): cone = kwvtk.vtkConeSource() cone.SetRadius(self.getRadius()) cone.SetCenter(self.getCenter()) cone.SetHeight(self.getHeight()) cone.SetDirection( core.Vec3(self.getTipPt())-core.Vec3(self.getBasePt()) ) cone.SetResolution(10) return cone def getVtkMapper(self): return kwvtk.vtkPolyDataMapper() def getActor(self): cone = self.getVtkSource() coneMapper = self.getVtkMapper() coneMapper.SetInput(cone.GetOutput()) coneActor = kwvtk.vtkActor() coneActor.SetMapper(coneMapper) self.applyModifiers(coneActor) return coneActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/vtk/scene.py0000664000175000017500000001350512176660653016756 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ """ import string import os import os.path from esys.lsm.vis import core from camera import Camera import vtk as kwvtk formatWriterDict = dict() formatWriterDict[str(core.PNG)] = kwvtk.vtkPNGWriter formatWriterDict[str(core.PNM)] = kwvtk.vtkPNMWriter class Renderer: def __init__(self): self.vtkRenderWindow = None self.vtkRenderer = None self.vtkInteractor = None self.camera = None self.interactive = True def getVtkRenderWindow(self): if (self.vtkRenderWindow == None): self.vtkRenderWindow = self.createVtkRenderWindow() self.vtkRenderWindow.AddRenderer(self.getVtkRenderer()) return self.vtkRenderWindow def createVtkRenderWindow(self): return kwvtk.vtkRenderWindow() def createVtkRenderer(self): return kwvtk.vtkRenderer() def getVtkRenderer(self): if (self.vtkRenderer == None): self.vtkRenderer = self.createVtkRenderer() return self.vtkRenderer def setOffScreen(self, doOffScreen): self.getVtkRenderWindow().SetOffScreenRendering(int(doOffScreen)) def getOffScreen(self): return \ bool( self.getVtkRenderWindow().GetOffScreenRendering() ) def getInteractive(self): return self.interactive def setInteractive(self, interactive): self.interactive = bool(interactive) def getCamera(self): if (self.camera == None): self.camera = Camera(self.getVtkRenderer().GetActiveCamera()) return self.camera def getVtkInteractor(self): if (self.vtkInteractor == None): self.vtkInteractor = kwvtk.vtkRenderWindowInteractor() self.vtkInteractor.SetInteractorStyle( kwvtk.vtkInteractorStyleTrackballCamera() ) return self.vtkInteractor def updateInteractor(self): if ((not self.getOffScreen()) and self.getInteractive()): if (not self.getVtkInteractor().GetRenderWindow()): self.getVtkInteractor().SetRenderWindow(self.getVtkRenderWindow()) if (not self.getVtkInteractor().GetInitialized()): self.getVtkInteractor().Initialize() if (not self.getVtkInteractor().GetEnabled()): self.getVtkInteractor().Enable() elif (self.getVtkInteractor().GetEnabled()): self.getVtkInteractor().Disable() def getOffScreen(self): return self.getVtkRenderWindow().GetOffScreenRendering() def setSize(self, size): if (size != None): self.getVtkRenderWindow().SetSize(size) def getSize(self): return self.getVtkRenderWindow().GetSize() def getImageWriter(self, imageFormat): return formatWriterDict[string.upper(str(imageFormat))]() def getImageFormat(self, fileName): return core.getFormatFromExtension(fileName) def clear(self): self.getVtkRenderer().RemoveAllProps() self.getVtkRenderer().GetProps().RemoveAllItems() def add(self, iteratable): vtkRenderer = self.getVtkRenderer() for thing in iteratable: thing.addActor(vtkRenderer) def setBackground(self, color): self.getVtkRenderer().SetBackground(color.getRgb()) def startInteractor(self): if (self.getVtkInteractor().GetEnabled()): self.getVtkInteractor().Start() def render(self, fileName = None, imageFormat = None): self.getVtkRenderWindow().Render() if (fileName != None): if (imageFormat == None): imageFormat = self.getImageFormat(fileName) imageInput = kwvtk.vtkRenderLargeImage() imageInput.SetMagnification(1) imageInput.SetInput(self.getVtkRenderer()) writer = self.getImageWriter(imageFormat) writer.SetInput(imageInput.GetOutput()) writer.SetFileName(fileName) writer.Write() class RenderDefaults(core.RenderDefaults): pass class Scene(core.Scene): def __init__(self, renderDefaults=None): self.renderer = None core.Scene.__init__(self, renderDefaults) self.initialise() def getRenderer(self): if (self.renderer == None): self.renderer = Renderer() return self.renderer def setBackground(self, color): self.getRenderer().setBackground(color) def clear(self): core.Scene.clear(self) self.getRenderer().clear() def getCamera(self): return self.getRenderer().getCamera() def render( self, offScreen = None, interactive = None, fileName = None, imageFormat = None, size = None ): (offScreen, size, interactive) = \ self.getRenderDefaults(offScreen, size, interactive) self.getRenderer().clear() self.getRenderer().add(self.objectList) self.getRenderer().setOffScreen(offScreen) self.getRenderer().setInteractive(interactive) self.getRenderer().setSize(size) self.getRenderer().updateInteractor() self.getRenderer().render(fileName, imageFormat) self.getRenderer().startInteractor() ./Python/esys/lsm/vis/vtk/sphereExtractor.py0000664000175000017500000000304212176660653021036 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.vis import core from sphere import Sphere class SphereExtractor(core.SphereExtractor): def __init__( self, radiusMap = lambda dataRecord: dataRecord.getRadius(), centerMap = lambda dataRecord: dataRecord.getCenter(), modifierMap = lambda dataRecord: None, radiusScale = 1.0 ): core.SphereExtractor.__init__( self, radiusMap, centerMap, modifierMap, radiusScale ) def addActor(self, record, addTo): """ Adds the sphere-actor associated with the data in C{record} to C{addTo}. """ glyph = \ Sphere( center=self.getCenter(record), radius=self.getRadius(record) ) glyph.apply(self.getModifier(record)) glyph.addActor(addTo) ./Python/esys/lsm/vis/vtk/surfaceData.py0000664000175000017500000000336712176660653020110 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import vtk as kwvtk from esys.lsm.vis import core class SurfaceData(core.SurfaceData): def __init__(self, data, pointExtractor): core.SurfaceData.__init__(self, data, pointExtractor) def getVtkPolyData(self): vtkPolyData = kwvtk.vtkPolyData() vtkPolyData.SetPoints( self.getPointExtractor().getVtkPoints(self.getData()) ) return vtkPolyData def getVtkDelaunay(self): vtkDelny = kwvtk.vtkDelaunay2D() vtkDelny.SetInput(self.getVtkPolyData()) return vtkDelny def getVtkPolyDataNormals(self): vtkNormals = kwvtk.vtkPolyDataNormals() vtkNormals.SetInput(self.getVtkDelaunay().GetOutput()) return vtkNormals def getVtkMapper(self): vtkMapper = kwvtk.vtkPolyDataMapper() vtkMapper.SetInput(self.getVtkPolyDataNormals().GetOutput()) return vtkMapper def getActor(self): vtkActor = kwvtk.vtkActor() vtkActor.SetMapper(self.getVtkMapper()) return vtkActor def addActor(self, addTo): addTo.AddActor(self.getActor()) ./Python/esys/lsm/vis/__init__.py0000664000175000017500000000152112176660653016607 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Visualisation. """ import core from esys.lsm.util import InstallInfo if (InstallInfo.haveVtk()): import vtk if (InstallInfo.havePovray()): import povray ./Python/esys/lsm/vis/Makefile.am0000664000175000017500000000161212176660653016533 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Python.am if VTK_ENABLED VTK = vtk endif if POVRAY_ENABLED POVRAY = povray endif SUBDIRS = core $(VTK) $(POVRAY) lsmvis_PYTHON = __init__.py AM_CPPFLAGS += $(PYTHON_CPPFLAGS) ./Python/esys/lsm/examples/0000775000175000017500000000000012176660653015514 5ustar vborosvboros./Python/esys/lsm/examples/DisplacementPlotter.py0000664000175000017500000001477612176660653022067 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# #!/bin/env python import sys import string from math import sqrt from optparse import OptionParser from esys.lsm.util import InstallInfo if (InstallInfo.haveVtk()): from esys.lsm.vis.vtk import * class Data: """ Objects store position and displacement vectors. """ def __init__(self, point, displacement): """ Initialise data. @type point: 3 element sequence of floats @param point: position of displacement. @type displacement: 3 element sequence of floats @param displacement: displacement at point. """ self.point = point self.displacement = displacement def getPoint(self): """ Returns position. @return: data position @rtype: 3 element sequence of floats """ return self.point def getDisplacement(self): """ Returns displacement. @return: data displacement @rtype: 3 element sequence of floats """ return self.displacement def getDisplacementMagnitude(self): """ Returns displacement magnitude. @rtype: float @return: magnitude of seld.getDisplacement() vector """ return \ sqrt( sum( map(lambda x:x*x, self.displacement) ) ) def surfaceRenderDisplacements(fileName, zField, subsample, scaleMultiplier, imageSize): """ Renders a surface of displacements data. @param fileName: name of the data file. @type zField: string C{in ["dx", "dy", "dm", "vx", "vy", "vm"]}. @param zField: Which component of the data is used for the surface heights. @type subsample: int C{>= 1} @param subsample: A subset of data is rendered for C{subsample > 1}. @type scaleMultiplier: float @param scaleMultiplier: Scale factor for surface heights. """ dataList = [] f = file(fileName, "r") xrange=[1000000,-10000000] yrange=[1000000,-10000000] drange=[1000000,-10000000] i = 0 for line in f.readlines(): if ((i % subsample) == 0): elemList = string.split(string.strip(line), " ") elemList = map(float, elemList) if ((len(zField) > 6) and (zField[0]=="v")): dataList.append( Data(elemList[0:3], elemList[6:9]) ) else: dataList.append( Data(elemList[0:3], elemList[3:6]) ) i += 1 xList = [d.getPoint()[0] for d in dataList] yList = [d.getPoint()[1] for d in dataList] dList = \ [d.getDisplacementMagnitude() for d in dataList] \ +\ [d.getDisplacement()[0] for d in dataList] \ +\ [d.getDisplacement()[1] for d in dataList] xrange = [min(xList), max(xList)] yrange = [min(yList), max(yList)] drange = [min(dList), max(dList)] scaleFactor = 1.0 if (drange[1] > 0.0): scaleFactor = \ scaleMultiplier \ * \ (max([xrange[1]-xrange[0], yrange[1]-yrange[0]])/2.0)/drange[1] if (zField[1] == "x"): extr = lambda x : [x.getPoint()[0], x.getPoint()[1], scaleFactor*x.getDisplacement()[0]] elif (zField[1] == "y"): extr = lambda x : [x.getPoint()[0], x.getPoint()[1], scaleFactor*x.getDisplacement()[1]] else: extr = lambda x : [x.getPoint()[0], x.getPoint()[1], scaleFactor*x.getDisplacementMagnitude()] scene = Scene() scene.setBackground(Colors.LightBlue) scene.add(SurfaceData(dataList, PointExtractor(extr))) scene.render(offScreen=False, size=imageSize) def getOptionParser(): """ Returns an object for parsing command line arguemnts. @rtype: C{optparse.OptionParser} @return: a parser initialised with some relevent command line options. """ usage = "usage: %prog [options] \n\n" usage += "Displays a fitted surface of displacement/velocity data" usage += " from the\nfile" usage += " . This file is expected to contain lines\nof" usage += " the form \"px py pz dx dy dz vx vy vz\"." usage += " The pz and vz components\nare ignored." parser = OptionParser(usage=usage) parser.add_option( "-z", "--z-component", dest="zComponent", metavar="Z", default="dmag", help=\ "Defines the component of the displacement or velocity which " +\ "is used as the surface height," +\ "Z={'dx', 'dy', 'dmagnitude', 'vx', 'vy', 'vmagnitude'}" +\ " (default Z=\"dmagnitude\")." ) parser.add_option( "-s", "--subsample", dest="subsample", metavar="S", type = "int", default=1, help=\ "Only every S-th data point is read from file, rest are skipped " +\ " (default S=1)." ) parser.add_option( "-x", "--scale-multiplier", dest="scaleMultiplier", metavar="S", type = "float", default=1.0, help=\ "Scale heights by this amount." +\ " (default S=1.0)." ) parser.add_option( "-i", "--image-size", dest="imageSize", metavar="P", type = "int", default=1024, help=\ "Size of the image will be PxP pixels." +\ " (default P=1024)." ) return parser __doc__ = \ """ Defines functions for rendering displacement data as a 3D surface. This module can be as a C{__main__} and has the following usage:: %s """ % (" " + string.replace(getOptionParser().format_help(), "\n", "\n ")) if (__name__ == "__main__"): parser = getOptionParser() (options, args) = parser.parse_args(sys.argv[1:]) fileName = args[0] surfaceRenderDisplacements( fileName, options.zComponent, options.subsample, options.scaleMultiplier, [options.imageSize, options.imageSize] ) ./Python/esys/lsm/examples/__init__.py0000664000175000017500000002777512176660653017647 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Example LSM python modules and packages. Example Simulations =================== MPI and C{mpirun} ----------------- The Lattice Solid Model implementation takes advantage of the MPI (Message Passing Interface U{http://www.mpi-forum.org/}) to provide parallel execution. MPI programs are executed in an MPI environment, usually by invoking the C{mpirun} command. Unfortunately, different implementations of MPI, (eg LAM, SGI's MPT, MPICH, etc) do not necessarily share the same command-line options for the C{mpirun} command. To make running LSM simulations a little easier for users, the ESyS-Particle software provides some wrappers scripts which invoke the appropriate C{mpirun} command. Running Simulations on the Altix 3700 ------------------------------------- The folling sub-sections explain the details of running LSM simulations on the ess.esscc.uq.edu.au, an SGI Altix-3700 supercluster. In the examples, running the C{esys.lsm.examples.waveprop.WaveSim} particle-wave-propagation python-module is used to illustrate command syntax. Initialising the user environment - environment modules ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ On the Altix 3700, ess.esscc.uq.edu.au, I{Environment Modules} U{http://modules.sourceforge.net/} is used for setting up user environments for various locally installed software. To define the assorted C{module} commands and make the various packages available, at a bash prompt execute:: user@ess$ source /opt/modules/default/init/bash user@ess$ export MODULEPATH=$MODULEPATH:/raid2/tools/modulefiles Generally, it is a good idea to put these two commands into a C{~/.bashrc} file as follows:: # # Initialise the environment-modules stuff # if [ -f /opt/modules/default/init/bash ]; then source /opt/modules/default/init/bash export MODULEPATH=$MODULEPATH:/raid2/tools/modulefiles # # Load environments for various favourite modules. # module load gnuplot-4.0.0 module load pbspro5.4 fi To set up the environment for running LSM simulations, execute:: user@ess$ module load lsm/sgimpi If the environment has been successfully loaded, executing:: user@ess$ which mptrunLsm should return a valid path to the C{mptrunLsm} script. Running esys.lsm.examples.waveprop.WaveSim - mptrunLsm ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To run the L{esys.lsm.examples.waveprop.WaveSim} python module using the SGI's MPT (Message Passing Toolkit), execute the following at the command prompt:: user@ess$ mkdir MyWaveSim user@ess$ cd MyWaveSim user@ess$ nice -n 15 mptrunLsm esys.lsm.examples.waveprop.WaveSim This command will begin executing a wave propagation simulation, generating some output to stdout and creating various data files in the current working directory. Notice the use of C{nice}, to lower the execution priority of the simulation, this is a courtesy to other users when running longer multi-cpu jobs in the interactive CPU set on multi-user systems. The C{mptrunLsm} script simply examines the first command line argument (treating it as a python module name) and B{exec}'s the associated python-script ($LSMDIR/lib/python2.3/site-packages/esys/lsm/examples/waveprop/WaveSim.py) as an MPI python process with appropriate C{mpirun} command line arguments. The L{esys.lsm.examples.waveprop.WaveSim} module accepts several command line options which control various parameters of the simulation. The C{--help} option:: user@ess$ mptrunLsm esys.lsm.examples.waveprop.WaveSim --help causes the listing of the available command line options including descriptions of options and default values. Visualisation ~~~~~~~~~~~~~ The wave-propagation simulation writes particle position and displacement data to C{particle_*.txt} text files. Two-dimensional wave propagation I{snap-shots} can be visualised using the L{esys.lsm.examples.DisplacementPlotter} module. To visualise the displacement data in file C{particle_9.txt}, execute the following at the command prompt:: user@ess$ lsmpython esys.lsm.examples.DisplacementPlotter particle_9.txt This will display a VTK (Visualisation ToolKit) window with the particle displacement magnitude plotted as a 3D surface. The window is interactive: spin the camera by dragging with left mouse button, translate camera by dragging with middle mouse-button and zoom the camera by dragging the right mouse-button and close the window by typing 'q'. Here, the C{lsmpython} script is used to run the C{DisplacementPlotter} python module. This module does not rely on an MPI implementation so can be run directly under python. The C{lsmpython} script is provided as a convenience for running modules specified by module-name (C{esys.lsm.examples.DisplacementPlotter}) as opposed to being specified by module-script-filename ($LSMDIR/lib/python2.3/site-packages/esys/lsm/examplesDisplacementPlotter.py) E{-} less typing and running a python-module is independent of the install location. The L{esys.lsm.examples.DisplacementPlotter} accepts command line options:: user@ess$ lsmpython esys.lsm.examples.DisplacementPlotter --help will print valid command line options, descriptions and default values. A L{esys.lsm.examples.waveprop.WaveSim} simulation also produces seismograph data files. This seismograph data can be visualised with C{gnuplot} U{http://www.gnuplot.info/}. For example, running the WaveSim module with default parameters produces the seismograph data file C{srcToCorner_265.000_229.631_0.000.txt}. This file contains data for a seismograph placed at coordinate M{(265.000,229.631,0.000)} (this seismograph is a member of a group of seismographs which are positioned on a line extending from the source disturbance to a corner of the particle block, hence the "srcToCorner_" file name prefix). Each line of the file contains 10 values separated by whitespace: time, displacement (dx,dy,dz), velocity (vx,vy,vz) and acceleration (ax,ay,az). The M{x} component of the displacement can be plotted using:: user@ess$ module load gnuplot-4.0.0 user@ess$ gnuplot . . . Terminal type set to 'x11' gnuplot> plot 'srcToCorner_265.000_229.631_0.000.txt' using 1:2 with line which produces a line plot of M{x}-displacement (column 2 of data file) versus time (column 1 of the data file). To gnuplot the displacement magnitude M{sqrt(S{delta}x*S{delta}x + S{delta}y*S{delta}y+S{delta}z*S{delta}z)}:: gnuplot> plot 'srcToCorner_265.000_229.631_0.000.txt' using 1:(sqrt($2*$2+$3*$3+$4*$4)) with line Another dataset produced during the simulation is "record-section" data. Again, this is seismograph displacement, velocity and acceleration data, but it is for multiple seismographs. The M{x}-displacement record-section data can be displayed in C{gnuplot} using:: gnuplot> plot 'srcToCorner_record_section_reordered.txt' using 1:($2*0.0004 + $3) with line This plots multiple seismograph datasets on a single set of axes and allows the visualisation of P-wave and S-wave propagation. The 'srcToCorner_record_section_reordered.txt' file contains 11 columns of data (time, distance-to-source, displacement(dx,dy,dz), velocity(vx,vy,vz), acceleration(ax,ay,az)). Submitting Simulation Jobs using PBS Pro ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To set up the environment for PBS Pro U{http://www.pbspro.com}, load the C{pbspro5.4} module:: module load pbspro5.4 To submit a script through PBS:: qsub qsubScript.sh An example C{qsubScript.sh} script for for submitting a wave propagation simulation to PBS:: #!/bin/bash ### Job name must be <= 15 characters #PBS -N MyWaveSim ### Specify a PBS queue, q1 - 2 to 4 CPU jobs, q2 - 8 to 32 CPU jobs #PBS -q q2 ### Specify required number of CPUs #PBS -l ncpus=18 ### Redirecting Output and Error files #PBS -e /raid2/user/MyWaveSim/out.err #PBS -o /raid2/user/MyWaveSim/out.err ### Mailing ALerts: a -abort, b -begin execution and e -end execution #PBS -m abe #PBS -M user@uq.edu.au # # Setup user paths to run LSM stuff # source /opt/modules/default/init/bash export MODULEPATH=$MODULEPATH:/raid2/tools/modulefiles module load lsm/sgimpi export LSMPYTHONPKGDIR=$LSMDIR/lib/python2.3/site-packages/esys/lsm # # Where we want data to be saved, create $OUTPUTDIR # if it doesn't exist. # export OUTPUTDIR=/raid2/user/MyWaveSim if [ -d $OUTPUTDIR ]; then echo Output dir $OUTPUTDIR exists. else echo Creating $OUTPUTDIR ... mkdir $OUTPUTDIR cd $OUTPUTDIR fi cd $OUTPUTDIR # # Remove any existing data files. # rm srcTo*.txt surf*.txt particle_*.txt out.err out.log # # Use mpirun and dplace to place MPI processes on CPU's. # mpirun -up 128 -np 1 \\ `which dplace` -e -c0-31 \\ `which mpipython` \\ $LSMPYTHONPKGDIR/examples/waveprop/WaveSim.py \\ -b[512,320,1] \\ -m8000 \\ -n16 \\ -s0.35 \\ -d[4,4,1] """ from simple import * from waveprop import * import Wave2d from esys.lsm.util import InstallInfo if (InstallInfo.haveVtk()): import DisplacementPlotter ./Python/esys/lsm/examples/Wave2d.py0000664000175000017500000002266012176660653017224 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# #!/bin/env mpipython from esys.lsm import LsmMpi, setVerbosity from esys.lsm import NRotBondedWallPrms from esys.lsm.sim import * from esys.lsm.util import * from esys.lsm.geometry import * from sets import Set from itertools import ifilter from itertools import chain import time class MyExpSourcePrms(ExpSourcePrms): def getPosn(self, t): d = Vec3() for i in range(0, 3): d[i] = self.a[i]*math.exp(-(((t-self.t0[i])*self.b[i])**2)) #print "Moving source by |" + str(d) + "|" + str(d.norm()) return d class MyCircularSourcePrms(SourcePrms): def __init__(self, posn, startTime=0.5, freq=0.05, radius=0.05): SourcePrms.__init__(self, posn) self.startTime = startTime self.freq = freq self.radius = radius def getPosn(self, t): d = Vec3(0,0,0) theta = self.freq*2.0*math.pi*(t-self.startTime) if ((t >= self.startTime) and (theta <= 2.0*math.pi)): d = \ Vec3( self.radius*math.cos(theta)-self.radius, self.radius*math.sin(theta), 0 ) print "Moving source by |" + str(d) + "|=" + str(d.norm()) return d class MyLinearSineSourcePrms(SourcePrms): def __init__( self, posn, startTime=0.5, freq=0.02, magnitude=[0, 0.10,0] ): SourcePrms.__init__(self, posn) self.startTime = startTime self.freq = freq self.magnitude = magnitude def getPosn(self, t): d = Vec3(0,0,0) theta = self.freq*2.0*math.pi*(t-self.startTime) if ((t >= self.startTime) and (theta <= 1.0*math.pi)): d = \ Vec3( self.magnitude[0]*math.sin(theta), self.magnitude[1]*math.sin(theta), self.magnitude[2]*math.sin(theta) ) print "Moving source by |" + str(d) + "|=" + str(d.norm()) return d class PVisitor: """ Objects of this class are used in conjunction with the waveProp.visitParticlesWithId method to collect model particle data. """ def __init__(self): self.particleList = [] def __iter__(self): return iter(self.particleList) def visitAParticle(self, particle): self.particleList.append(particle) def visitNRotSphere(self, p): self.visitAParticle(p) def visitRotSphere(self, p): self.visitAParticle(p) def writeDisplacementData( idList, index, lsm, fileNamePrefix="displacement_" ): """ Writes particle displacement data to file. Each line of the file is 'px py pz dx dy dz' where p=(px,py,pz) is the particle position and d=(dx,dy,dz) is the current particle displacement (ie position relative to initial position). @param idList: list of particle id's. @param index: integer used to generate file name. @param lsm: a LSM object. @param fileNamePrefix: prefix of file where displacement data is saved. """ # # Collect data for all particles with id's specified # in the idList. # visitor = PVisitor() lsm.visitParticlesWithId(idList, visitor) f = file(fileNamePrefix + "%d.txt" % (index), "w") for p in visitor: f.write( str(p.getPosn()) +\ " " + str(p.getPosn()-p.getInitialPosn()) + "\n" ) f.close() if (__name__ == "__main__"): # Create a 2d cubic close-packing of particles. radius = 1.0 (nx,ny,nz) = (160, 160, 1) particles = CubicBlock([nx,ny,nz], radius) bBox = particles.getParticleBBox() centrePt = (bBox.getMinPt() + bBox.getMaxPt())*0.5 # # Calculate bonds between particles. The DistConnections # object creates connections for a pair of particles which # are less than a specified distance appart. # connections = DistConnections(0.25, 0, particles) # # Generate lots of debug output by setting verbosity to True. # #setVerbosity(True) # # Create the wave propagation model, # Two worker processes, approx half the # the particles on one worker, half the particles # on the other worker, mpiDimList=[2,1,1] implies # splitting the domain in the 0 coordinate (x-coordinate). # waveProp = \ WavePropagation( domainBox = bBox, do2d = (nz==1), numWorkerProcesses = 2, mpiDimList = [2,1,1], timeStepSize=0.04 ) # # Tag outer boundary particles so they can be bonded to # fixed walls. # tag = 1 for p in \ ifilter( lambda x:\ abs( x.getPosn()[0]-x.getRadius()-bBox.getMinPt()[0] ) < 0.01, particles ): p.setTag(tag) tag += 1 for p in \ ifilter( lambda x:\ abs( x.getPosn()[1]-x.getRadius()-bBox.getMinPt()[1] ) < 0.01, particles ): p.setTag(tag) tag += 1 for p in \ ifilter( lambda x:\ abs( x.getPosn()[0]+x.getRadius()-bBox.getMaxPt()[0] ) < 0.01, particles ): p.setTag(tag) tag += 1 for p in \ ifilter( lambda x:\ abs( x.getPosn()[1]+x.getRadius()-bBox.getMaxPt()[1] ) < 0.01, particles ): p.setTag(tag) # # Create the model particles # waveProp.createParticles(particles) # # Create the linear elastic bonds between particles. # The {0:1.0} argument is a dictionary with a # single (key=0, value=1.0) entry. All connections with # tag=0 will have a corresponding linear-elastic-bond created with # spring constant of 1.0. # waveProp.createBonds(connections, {0:1.0}) # # Create the source disturbance which generates the wave. # A single particle is displaced over a small distance. # The source is created in the centre of the particle model. # approxSourcePosn = centrePt waveProp.createSources(MyLinearSineSourcePrms(approxSourcePosn)) sourcePosn = waveProp.sourceList[0].getInitialPosn() print "Source posn = " + str(sourcePosn) # # Create the walls and the elastic bonds between walls # and the tagged particles. # wallBondSpringK = 1.0 waveProp.createWall( NRotBondedWallPrms( wallBondSpringK, # spring constant bBox.getMinPt(), # plane/wall postition Vec3(1, 0, 0), # plane/wall normal 1 # particles with this tag get bonded to the wall ) ) waveProp.createWall( NRotBondedWallPrms( wallBondSpringK, bBox.getMinPt(), Vec3(0, 1, 0), 2 ) ) waveProp.createWall( NRotBondedWallPrms( wallBondSpringK, bBox.getMaxPt(), Vec3(-1, 0, 0), 3 ) ) waveProp.createWall( NRotBondedWallPrms( wallBondSpringK, bBox.getMaxPt(), Vec3(0, -1, 0), 4 ) ) # # Create a line of seismographs through the particle block # pt1 = Vec3(bBox.getMinPt()) pt2 = Vec3(sourcePosn) numSeismos = 20 diff = pt2-pt1 interSeismoDistance = max([radius*2, diff.norm()/float(numSeismos)]) incr = (diff/diff.norm())*interSeismoDistance seismographPosnList = [] for i in range(0, numSeismos): seismographPosnList.append(pt1 + incr*float(i)) waveProp.createSeismographGroup( seismographPosnList, "seismo_line_", sourcePosn ) # # Run the model # numTimeSteps = 4000 idList = [p.getId() for p in particles] j = 0 t1 = None for i in range(0, numTimeSteps): if (t1 == None): t1 = time.time() waveProp.runTimeStep() if ((i % 5) == 0): t2 = time.time() waveProp.saveSeismoData() t3 = time.time() print \ "t = " + str(waveProp.getTime()) + ", step number = " + str(i) \ + \ ", seismo data output time = " \ + \ str(t3-t2) + " sec" if ((i % 50) == 0): t2 = time.time() writeDisplacementData(idList, j, waveProp) j += 1 t3 = time.time() print \ "t = " + str(waveProp.getTime()) + ", step num = " + str(i) \ + \ ", run time = " + str(t2-t1) + " sec, displ data time = " \ + \ str(t3-t2) + " sec" t1 = None waveProp.writeReorderedRecordSectionData() ./Python/esys/lsm/examples/Makefile.am0000664000175000017500000000153112176660653017550 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am SUBDIRS = . waveprop simple lsmexamples_PYTHON = \ __init__.py \ DisplacementPlotter.py \ Wave2d.py ./Python/esys/lsm/examples/simple/0000775000175000017500000000000012176660653017005 5ustar vborosvboros./Python/esys/lsm/examples/simple/__init__.py0000664000175000017500000000141212176660653021114 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Package containing basic example scripts for running LSM simulations. """ import compress3d ./Python/esys/lsm/examples/simple/compress3d.py0000664000175000017500000000637612176660653021455 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Example simulation of compression of an elastically bonded block of non-rotational spheres. """ from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox, InstallInfo class Loading(Runnable): """ Loading mechanism which moves the walls. """ def __init__(self,lsm): """ Initialise loading object with a reference to an L{LsmMpi} object. @type lsm: L{esys.lsm.LsmMpi} @param lsm: Model object which will move the model wall. """ Runnable.__init__(self) self.theLSM=lsm def run(self): """ Moves walls in compressive fashion. """ self.theLSM.moveWallBy("lowerWall",Vec3(0.0,0.0001,0.0)) self.theLSM.moveWallBy("upperWall",Vec3(0.0,-0.0001,0.0)) def runSimulation(): """ Runs a compression simulation on an elastic block. Outputs wall-forces and wall-positions to file. """ setVerbosity(True) mySim=LsmMpi(2,[0,0,0]) mySim.initVerletModel("NRotSphere", 2.5, 0.5) mySim.setTimeStepSize(0.02) mySim.setSpatialDomain(BoundingBox(Vec3(-5.0,0.0,-5.0),Vec3(15.0,10.0,15.0))) mySim.readGeometry( InstallInfo.getDataFilePath("cube10r0.2.geo") ); # setup interactions bip=NRotBondPrms(1,"bonded",1.0,1.05) fip=NRotFrictionPrms("friction",1.0,0.6,1.0) mySim.createInteractionGroup(bip) mySim.createInteractionGroup(fip) mySim.createExclusion("bonded","friction") # wall parameters mySim.createWall("lowerWall",Vec3(0.0,0.0,0.0),Vec3(0.0,1.0,0.0)) mySim.createWall("upperWall",Vec3(0.0,10.0,0.0),Vec3(0.0,-1.0,0.0)) wp1=NRotElasticWallPrms("upperWallInteraction","upperWall",1.0) wp2=NRotElasticWallPrms("lowerWallInteraction","lowerWall",1.0) # setup savers mySim.createFieldSaver( WallVectorFieldSaverPrms( fileName="wf2.dat", fieldName="Force", wallName=["lowerWall","upperWall"], fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=10, timeStepIncr=1 ) ) mySim.createFieldSaver( WallVectorFieldSaverPrms( fileName="wp2.dat", fieldName="Position", wallName=["lowerWall","upperWall"], fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=10, timeStepIncr=1 ) ) # create walls mySim.createInteractionGroup(wp1) mySim.createInteractionGroup(wp2) # add loading function lf=Loading(mySim) mySim.addPreTimeStepRunnable(lf) mySim.setNumTimeSteps(10) mySim.run() if (__name__=="__main__"): runSimulation() ./Python/esys/lsm/examples/simple/Makefile.am0000664000175000017500000000144212176660653021042 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmexamplessimple_PYTHON = \ __init__.py \ compress3d.py ./Python/esys/lsm/examples/waveprop/0000775000175000017500000000000012176660653017357 5ustar vborosvboros./Python/esys/lsm/examples/waveprop/WaveSim.py0000664000175000017500000004753612176660653021323 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# #!/bin/env mpipython from esys.lsm import LsmMpi, setVerbosity, NRotBondedWallPrms from esys.lsm.sim import * from esys.lsm.util import * from esys.lsm.geometry import * from OptionParser import OptionParser from sets import Set from itertools import ifilter from itertools import chain import time import sys class MyLinearSineSourcePrms(SourcePrms): """ Objects define linear spatial trajectory (sinusoidal time-frequency) for a particle-source-disturbance. """ def __init__(self, posn, startTime=0.5, freq=0.02, magnitude=[0, 0.10, 0]): """ Initialises trajectory parameters. @type posn: L{Vec3} @param posn: The approx location of the source-disturbance. @type startTime: float @param startTime: The time at which the disturbance begins. @type freq: float @param freq: The: frequency of the sinusoidal disturbance. @type magnitude: L{Vec3} @param magnitude: The direction and maximum displacement of the source. """ SourcePrms.__init__(self, posn) self.startTime = startTime self.freq = freq self.magnitude = magnitude def getPosn(self, t): """ Returns the position of the disturbance at the specified time. @type t: float @param t: Time for which position is returned. @rtype: L{Vec3} @return: Position of disturbance at time t. """ d = Vec3(0,0,0) theta = self.freq*2.0*math.pi*(t-self.startTime) if ((t >= self.startTime) and (theta <= 1.0*math.pi)): d = \ Vec3( self.magnitude[0]*math.sin(theta), self.magnitude[1]*math.sin(theta), self.magnitude[2]*math.sin(theta) ) print "Moving source by |" + str(d) + "|=" + str(d.norm()) return d # # Define particle tag values for particles which are to be # elastically bonded to fixed walls # (LEFT_TAG, RIGHT_TAG, TOP_TAG, BOTTOM_TAG, FRONT_TAG, BACK_TAG) =\ (101, 102, 103, 104, 105, 106) UPPER_BOND_TAG = 10 LOWER_BOND_TAG = 11 class WaveSim: """ Wrapper class for 2D and 3D wave propagation simulation. """ def __init__(self, options=None): """ Initialises simulation parameters. The C{options} argument, is an object with the following attributes: - C{radius} - Particle radius (float) - C{sourceDepth} - Relative depth of source disturbance (float in [0,1]). - C{sourceFrequency} - Frequency of sinusoidal source disturbance (float) - C{sourceMaxDisplacement} - Maximum relative displacement of source disturbance (list of 3 floats) - C{upperSpringK} - Spring constant for upper elastic medium - C{lowerSpringK} - Spring constant for lower elastic medium - C{upperMediumDepth} - Depth of upper elastic medium (float in [0,1]) - C{particlesPerDim} - Size of particle block (list of 3 ints) - C{particleDataIncr} - Particle data is saved every C{particleDataIncr} time steps (int) - C{seismoDataIncr} - Seismograph data is saved every C{seismoDataIncr} time steps (int) - C{numWorkerProcesses} - Number of MPI worker processes (int) - C{mpiDimList} - Spatial division of domain amongst MPI workers (list of 3 ints) - C{timeStepSize} - Time step size for explicit integration (float) - C{maxNumTimeSteps} - Number of time steps to run the simulation (float) - C{verbosity} - If True output lots of LSM debugging info (bool) @type options: object @param options: An object with attributes as specified above. """ if (options != None): self.radius = options.radius self.sourceDepth = options.sourceDepth self.sourceFrequency = options.sourceFrequency self.sourceMaxDisplacement=options.sourceMaxDisplacement self.upperSpringK = options.upperSpringK self.lowerSpringK = options.lowerSpringK self.upperMediumDepth= options.upperMediumDepth self.particlesPerDim = options.particlesPerDim self.particleDataIncr= options.particleDataIncr self.seismoDataIncr = options.seismoDataIncr self.numWorkerProcesses = options.numWorkerProcesses self.mpiDimList = options.mpiDimList self.timeStepSize = options.timeStepSize self.maxNumTimeSteps = options.maxNumTimeSteps self.verbosity = options.verbosity else: self.verbosity = False self.radius = 1.0 self.sourceDepth = 0.5 self.sourceFrequency=0.02 self.sourceMaxDisplacement=[0.1,0.1,0.0] self.upperSpringK = 1.0 self.lowerSpringK = 1.0 self.upperMediumDepth = 0.25 self.particlesPerDim = [160, 160, 1] self.particleDataIncr= 100 self.seismoDataIncr = 10 self.numWorkerProcesses = 2 self.mpiDimList = [2, 1, 1] self.timeStepSize = 0.05 self.maxNumTimeSteps = 2000 self.wallBondSpringK = 1.0 self.particleBBox = None self.particleBlock = None self.lsmWaveSim = None def is3d(self): """ Returns True if this is a 3D simulation (ie whether (self.particlesPerDim[2] > 1). @return: True if this is a 3D simulation, False if it is 2D. """ return (self.particlesPerDim[2] > 1) def is2d(self): """ Returns True if this is a 3D simulation (ie (not self.is3d()). @return: True if this is a 2D simulation, False if it is 3D. """ return (not self.is3d()) def createParticleBlock(self): """ Creates a cubic close-packing of particles. @return: Collection of L{SimpleSphere} objects. """ return CubicBlock(self.particlesPerDim, self.radius) def getParticleBlock(self): """ Returns the collection/sequence of particles which represent an elastic block. @return: Collection of L{SimpleSphere} objects. """ if (self.particleBlock == None): self.particleBlock = self.createParticleBlock() return self.particleBlock def getParticleBBox(self): """ Returns bounding box of the elastic block of particles. @rtype: L{BoundingBox} @return: Axis aligned bounding box. """ if (self.particleBBox == None): self.particleBBox = self.getParticleBlock().getParticleBBox() return self.particleBBox def tagBoundaryParticles(self): """ Tags outer boundary particles so they can be bonded to fixed walls. """ bBox = self.getParticleBBox() particles = self.getParticleBlock() distTol = 0.1*self.radius for p in \ ifilter( lambda x:\ abs( x.getPosn()[0]-x.getRadius()-bBox.getMinPt()[0] ) < distTol, particles ): p.setTag(LEFT_TAG) for p in \ ifilter( lambda x:\ abs( x.getPosn()[1]-x.getRadius()-bBox.getMinPt()[1] ) < distTol, particles ): p.setTag(BOTTOM_TAG) for p in \ ifilter( lambda x:\ abs( x.getPosn()[0]+x.getRadius()-bBox.getMaxPt()[0] ) < distTol, particles ): p.setTag(RIGHT_TAG) for p in \ ifilter( lambda x:\ abs( x.getPosn()[1]+x.getRadius()-bBox.getMaxPt()[1] ) < distTol, particles ): p.setTag(TOP_TAG) if (self.is3d()): for p in \ ifilter( lambda x:\ abs( x.getPosn()[2]-x.getRadius()-bBox.getMinPt()[2] ) < distTol, particles ): p.setTag(BACK_TAG) for p in \ ifilter( lambda x:\ abs( x.getPosn()[2]+x.getRadius()-bBox.getMaxPt()[2] ) < distTol, particles ): p.setTag(FRONT_TAG) def createLsmWaveSim(self): """ Create the uninitialised wave propagation model ie the L{WavePropagation} object. """ # Two worker processes imply that approx half the # the particles on one worker, half the particles # on the other worker, mpiDimList=[2,1,1] implies # splitting the domain in the 0 coordinate (x-coordinate). # self.lsmWaveSim = \ WavePropagation( domainBox = self.getParticleBBox(), do2d = (self.is2d()), numWorkerProcesses = self.numWorkerProcesses, mpiDimList = self.mpiDimList, timeStepSize=self.timeStepSize ) # # Generate lots of debug output by setting verbosity to True. # if (self.verbosity): setVerbosity(True) def getLsmWaveSim(self): if (self.lsmWaveSim == None): self.createLsmWaveSim() return self.lsmWaveSim def createParticles(self): """ Create initial configuration of particles in the model """ self.tagBoundaryParticles() self.getLsmWaveSim().createParticles(self.getParticleBlock()) def createBonds(self): """ Creates linear elastic bonds between particles. Two regions of bonds created with different elastic constants. """ xzPlaneDepth = \ self.getParticleBBox().getMaxPt()[1] \ - \ self.getParticleBBox().getSize()[1]*self.upperMediumDepth allParticles = Set(self.getParticleBlock()) upperParticles = \ Set( ifilter( lambda p: p.getPosn()[1] >= xzPlaneDepth, self.getParticleBlock() ) ) lowerParticles = allParticles.difference(upperParticles) # # The DistConnections object creates connections # for a pair of particles which are less than a # specified distance (self.radius/4.0) appart. # connections = DistConnections(self.radius/4.0) connections.addParticles(upperParticles, UPPER_BOND_TAG) connections.addParticles(lowerParticles, LOWER_BOND_TAG) # # Create the linear elastic bonds between particles. # The {TAG1:springK1, TAG2:springK2} argument is a dictionary # with a two (key, value) entries. All connections with # a tag of UPPER_BOND_TAG will have a corresponding # linear-elastic-bond created with spring constant of # self.upperSpringTag. # self.getLsmWaveSim().createBonds( connections, { UPPER_BOND_TAG:self.upperSpringK, LOWER_BOND_TAG:self.lowerSpringK } ) def createSource(self): """ Create the source disturbance which generates the wave. A single particle is displaced over a small distance. The source is created centred in the x and z coords, at a specified y coord depth. """ bBox = self.getParticleBBox() size = bBox.getSize() centrePt = (bBox.getMinPt() + bBox.getMaxPt())/2.0 approxSourcePosn = centrePt approxSourcePosn[1] = bBox.getMaxPt()[1] - self.sourceDepth*size[1] self.getLsmWaveSim().createSources( MyLinearSineSourcePrms( posn=approxSourcePosn, freq=self.sourceFrequency, magnitude=self.sourceMaxDisplacement ) ) sourcePosn = self.getLsmWaveSim().sourceList[0].getInitialPosn() print "Source posn = " + str(sourcePosn) def createBoundaryWalls(self): """ Create the walls and the elastic bonds between walls and the tagged particles, leave the maximum y side as a free surface (no elastic wall). """ bBox = self.getParticleBBox() waveProp = self.getLsmWaveSim() waveProp.createWall( NRotBondedWallPrms( self.wallBondSpringK, # spring constant bBox.getMinPt(), # plane/wall postition Vec3(1, 0, 0), # plane/wall normal LEFT_TAG # particles with this tag get bonded to the wall ) ) waveProp.createWall( NRotBondedWallPrms( self.wallBondSpringK, bBox.getMinPt(), Vec3(0, 1, 0), BOTTOM_TAG ) ) waveProp.createWall( NRotBondedWallPrms( self.wallBondSpringK, bBox.getMaxPt(), Vec3(-1, 0, 0), RIGHT_TAG ) ) if (self.is3d()): waveProp.createWall( NRotBondedWallPrms( self.wallBondSpringK, bBox.getMinPt(), Vec3(0, 0, 1), BACK_TAG ) ) waveProp.createWall( NRotBondedWallPrms( self.wallBondSpringK, bBox.getMaxPt(), Vec3(0, 0, -1), FRONT_TAG ) ) def createLineOfSeismos( self, pt1, pt2, srcPt, numSeismos, fileNamePrefix ): """ Create a line of seismographs through the particle block, between two specified points. @type pt1: L{Vec3} @param pt1: End point of line @type pt2: L{Vec3} @param pt2: other end-point of line @type srcPt: L{Vec3} @param srcPt: location of source point-disturbance. """ diff = pt2-pt1 # # Don't place seismos any closer together than two times # particle radius. # interSeismoDistance = \ max( [ self.radius*2, diff.norm()/float(numSeismos) ] ) incr = (diff/diff.norm())*interSeismoDistance seismographPosnList = [] for i in range(0, numSeismos): seismographPosnList.append(pt1 + incr*float(i)) self.getLsmWaveSim().createSeismographGroup( seismographPosnList, fileNamePrefix, srcPt ) def createSeismographs(self): """ Creates lines of seismographs through the particle block """ sourcePosn = self.getLsmWaveSim().sourceList[0].getInitialPosn() # # Create line of seismos from corner of block to the position # of the source disturbance. # bBox = self.getParticleBBox() pt1 = Vec3(bBox.getMaxPt()) pt2 = Vec3(sourcePosn) self.createLineOfSeismos(pt1, pt2, sourcePosn, 20, "srcToCorner_") # # Create grid of numX by numZ seismos on the top surface (maximum y). # numX = 25 numZ = 25 if (self.is2d()): numZ = 1 xDiff = bBox.getMaxPt()[0]-bBox.getMinPt()[0] xIncr = max(self.radius*2.0, xDiff/float(numX)) zDiff = bBox.getMaxPt()[2]-bBox.getMinPt()[2] zIncr = max(self.radius*2.0, zDiff/float(numZ)) xCoordList = [bBox.getMinPt()[0] + x*xIncr for x in range(0, numX)] zCoordList = [bBox.getMinPt()[2] + z*zIncr for z in range(0, numZ)] seismoPosnList = [] y = bBox.getMaxPt()[1] for x in xCoordList: for z in zCoordList: seismoPosnList.append(Vec3(x, y, z)) self.getLsmWaveSim().createSeismographGroup( seismoPosnList, "surfaceGrid_", sourcePosn ) def getOutputParticleIdList(self): """ Returns a list of particle ids, particles with id in this list have their position and displacement data written to file. @rtype: list of particle ids @return: List of particle ids. """ return [p.getId() for p in self.getParticleBlock()] def runTimeSteps(self): """ Runs the model for self.maxNumTimeSteps time steps. """ numTimeSteps = self.maxNumTimeSteps idList = self.getOutputParticleIdList() waveProp = self.getLsmWaveSim() waveProp.setParticleDataIdList(idList) j = 0 t1 = None for i in range(0, numTimeSteps): if (t1 == None): t1 = time.time() waveProp.runTimeStep() if ((i % self.seismoDataIncr) == 0): t2 = time.time() waveProp.saveSeismoData() t3 = time.time() print \ "t = " + str(waveProp.getTime()) +\ ", step number = " + str(i) \ + \ ", seismo data output time = " \ + \ str(t3-t2) + " sec" if ((i % self.particleDataIncr) == 0): t2 = time.time() waveProp.writeParticleData(j, "particle_") j += 1 t3 = time.time() print \ "t = " + str(waveProp.getTime()) + ", step num = " + str(i)\ + \ ", run time = " + str(t2-t1) + " sec, displ data time = " \ + \ str(t3-t2) + " sec" t1 = None waveProp.writeReorderedRecordSectionData() def runSim(self): """ Sets up wave propagation model and executes simulation. """ self.createLsmWaveSim() self.createParticles() self.createBoundaryWalls() self.createBonds() self.createSource() self.createSeismographs() self.runTimeSteps() def getOptionParser(): """ Returns the L{OptionParser} object useful for parsing command line options related to wave-propagation simulation. """ return OptionParser() __doc__=\ """ Wave propagation simulation module. Contains WaveSim convenience class for initialising LSM particle model and running wave propagation simulation. This module may be run as a C{__main__} from the command line as follows:: %s """ % (" " + string.replace(getOptionParser().format_help(), "\n", "\n ")) if (__name__=="__main__"): parser = getOptionParser() (options, args) = parser.parse_args(sys.argv[1:]) waveSim = WaveSim(options) waveSim.runSim() ./Python/esys/lsm/examples/waveprop/FixedLidWaveSim.py0000664000175000017500000000366012176660653022722 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# #!/bin/env mpipython """ Defines single class L{FixedLidWaveSim.FixedLidWaveSim} which extends L{WaveSim.WaveSim}. """ from WaveSim import * from OptionParser import OptionParser import time import sys class FixedLidWaveSim(WaveSim): """ Extends L{WaveSim.WaveSim} class, overides the L{createBoundaryWalls} walls method simply by adding a "fixed lid" instead of having a free-surface. """ def createBoundaryWalls(self): """ Create the walls and the elastic bonds between walls and the tagged particles. Create an elastic wall at the surface (maximum y) in addition to walls on other sides of the particle block. """ # # Create walls on all sides except the maximum y # WaveSim.createBoundaryWalls(self) # # Create the wall on the max y side # self.getLsmWaveSim().createWall( NRotBondedWallPrms( self.wallBondSpringK, self.getParticleBBox().getMaxPt(), Vec3(0, -1, 0), TOP_TAG ) ) if (__name__=="__main__"): parser = OptionParser() (options, args) = parser.parse_args(sys.argv[1:]) waveSim = FixedLidWaveSim(options) waveSim.runSim() ./Python/esys/lsm/examples/waveprop/OptionParser.py0000664000175000017500000002272712176660653022370 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines classes for parsing command line options of wave propagation simulations. """ import optparse import re import string import copy def getListFromString(opt, str, mapCallable): """ Parses a given string to extract a list. The expected format of the string is '[e1,e2,e3,...]'. Returns C{map(mapCallable, [e1,e2,e3,...])}. @type opt: string @param opt: Command line option, only used for for creating messages when raising OptionValueException @type str: string @param str: The option value string @type mapCallable: callable @param mapCallable: Callable object which converts a string list element into another type, eg int, float, etc @rtype: list @return: list of converted-type elements. """ regex = re.compile("\[(.*)\]") match = regex.match(str) if (match != None): try: return map(mapCallable, string.split(match.group(1), ",")) except ValueError: raise \ optparse.OptionValueError( ( "option %s: Could not convert string elements of"+\ " %r to type." ) % (opt, str) ) else: raise \ optparse.OptionValueError( "option %s: invalid list value: %r" % (opt, str) ) def checkIntList(option, opt, value): """ Extracts a list of integers from a specified value. @param option: The option. @type opt: string @param opt: The command line option string. @type value: string @param value: The value passed to the option. @rtype list @return: list of ints """ return getListFromString(opt, value, int) def checkFloatList(option, opt, value): """ Extracts a list of floats from a specified value. @type opt: string @param opt: The command line option string. @type value: string @param value: The value passed to the option. @rtype list @return: list of floats """ return getListFromString(opt, value, float) class ImprovedOption(optparse.Option): """ Extends optparse.Option class by adding 'int_list' and 'float_list' types """ TYPES = optparse.Option.TYPES + ("int_list", "float_list",) TYPE_CHECKER = copy.copy(optparse.Option.TYPE_CHECKER) TYPE_CHECKER["int_list"] = checkIntList TYPE_CHECKER["float_list"] = checkFloatList class OptionParser(optparse.OptionParser): """ Command line option parser for use in conjunction with simple wave propagation simulations. """ def __init__(self, usage=None): """ Initialises this parser with options. @type usage: string @param usage: Usage string, if None, default value is given. """ if (usage==None): usage =\ "usage: %prog [options]\n\n" +\ "Runs wave propagation simulation. A rectangular block of" +\ "\nparticles acts as the elastic medium. Two different spring" +\ "\nconstants can be specified to create non-homogeneity." +\ "\nA single point source disturbance creates a wave in the" +\ "elastic block." optparse.OptionParser.__init__( self, usage=usage, option_class=ImprovedOption ) self.add_option( "-n", "--mpi-worker-processes", dest="numWorkerProcesses", type="int", metavar="N", default=2, help=\ "Defines the number of MPI worker processes " +\ "(default N=2)" ) self.add_option( "-d", "--mpi-dim-list", dest="mpiDimList", type="int_list", metavar="D", default=[2,0,0], help=\ "Defines the spatial grid division of domain among "+\ " MPI worker processes (default D=[2,0,0])" ) self.add_option( "-t", "--time-step-size", dest="timeStepSize", type="float", metavar="T", default=0.05, help=\ "Defines time step size used in explicit integration scheme "+\ "(default T=0.05)" ) self.add_option( "-r", "--radius", dest="radius", type="float", metavar="R", default=1.0, help=\ "Defines radius of particles "+\ "(default R=1.0)" ) self.add_option( "-m", "--max-time-steps", dest="maxNumTimeSteps", type="int", metavar="M", default=2000, help=\ "Defines max number of time step iterations "+\ "(default M=2000)" ) self.add_option( "-b", "--block-size", dest="particlesPerDim", type="int_list", metavar="B", default=[128,128,1], help=\ "Defines the size of the particle block as number of " +\ "particles per dimension component "+\ "(default B=[128,128,1])" ) self.add_option( "-P", "--particle-data-incr", dest="particleDataIncr", type="int", metavar="N", default=100, help=\ "Defines the frequency at which particle displacement data is " +\ "saved to file. Data is saved every N time steps "+\ "(default N=100)" ) self.add_option( "-S", "--seismo-data-incr", dest="seismoDataIncr", type="int", metavar="N", default=10, help=\ "Defines the frequency at which seismograph data is " +\ "saved to file. Data is saved every N time steps "+\ "(default N=10)" ) self.add_option( "-v", "--verbosity", dest="verbosity", action="store_true", default=False, help=\ "Generates (lots of) debug output during simulation run" +\ " (default no debug output)" ) self.add_option( "-s", "--source-depth", dest="sourceDepth", type="float", default=0.5, metavar="D", help=\ "Specifies the depth of the source disturbance as a value" +\ " between 0.0 and 1.0. A value of 0.0 places the source at" +\ " the surface of the particle-block, a value of 0.5 places the" +\ " source at the centre of the block, a value of 1.0 places" +\ " places the source at the bottom of the particle-block, etc" " (default D=0.5). The source is centred in the particle block" +\ " with respect to the x and z dimensions." ) self.add_option( "-f", "--source-frequency", dest="sourceFrequency", type="float", default=0.02, metavar="F", help=\ "Specifies the frequency of the sinusoidal source disturbance" +\ " (default F=0.02)" ) self.add_option( "-D", "--source-max-displacement", dest="sourceMaxDisplacement", type="float_list", default=[0.1,0.1,0.0], metavar="M", help=\ "Specifies the maximum relative displacement point of" +\ " the source disturbance "+\ " (default F=[0.1,0.1,0.0]). If the point-source is located at" +\ " point X, then the source particle will be moved on the line" +\ " between the point X and the point X+F." ) self.add_option( "-U", "--upper-medum-depth", dest="upperMediumDepth", type="float", metavar="D", default=0.25, help=\ "Specifies the depth of the --upper-spring-K bonds as a value" +\ " between 0.0 and 1.0. A 0.0 value implies no upper-spring-K" +\ " bonds, a 0.5 value creates half the bonds as upper-spring-K" +\ " and half the bonds as lower-spring-K, a 1.0 value " " creates all bonds as upper-spring-K, etc" +\ " (default D=0.25)" ) self.add_option( "-u", "--upper-spring-K", dest="upperSpringK", type="float", metavar="K", default=1.0, help=\ "Defines bond spring constant for 'upper' particle region"+\ " (default K=1.0)" ) self.add_option( "-l", "--lower-spring-K", dest="lowerSpringK", type="float", metavar="K", default=1.0, help=\ "Defines bond spring constant for 'lower' particle region"+\ " (default K=1.0)" ) ./Python/esys/lsm/examples/waveprop/__init__.py0000664000175000017500000000142612176660653021473 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Wave propagation example package. """ import WaveSim import FixedLidWaveSim import OptionParser ./Python/esys/lsm/examples/waveprop/Makefile.am0000664000175000017500000000154212176660653021415 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmexampleswaveprop_PYTHON = \ __init__.py \ OptionParser.py \ FixedLidWaveSim.py \ WaveSim.py ./Python/esys/lsm/tools/0000775000175000017500000000000012176660653015036 5ustar vborosvboros./Python/esys/lsm/tools/ExportModuleTools.cpp0000664000175000017500000000154212176660653021214 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/tools/MacroFrictionCalculatorPy.h" BOOST_PYTHON_MODULE(MacroFrictionCalcPy) { esys::lsm::exportMacroFrictionCalculator(); }; ./Python/esys/lsm/tools/MacroFrictionCalculatorPy.h0000664000175000017500000000154012176660653022271 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_MACROFRICTIONCALCULATOR_H #define ESYS_LSM_MACROFRICTIONCALCULATOR_H namespace esys { namespace lsm { void exportMacroFrictionCalculator(); } } #endif ./Python/esys/lsm/tools/MacroFrictionCalculatorPy.cpp0000664000175000017500000001764712176660653022643 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Tools/MacroFrictionCalculator/MacroFrictionCalculator.h" #include "Tools/MacroFrictionCalculator/LinearWindowAverager.h" #include "Tools/MacroFrictionCalculator/WallForceReader.h" #include "Foundation/StlIterator.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/ListConverter.h" #include "Python/esys/lsm/tools/MacroFrictionCalculatorPy.h" #include "Python/esys/lsm/util/Vec3Py.h" using namespace boost::python; using namespace esys::lsm; #include #include #include namespace esys { namespace lsm { class WallForcePairPy : public std::pair { public: typedef std::pair WallForcePair; WallForcePairPy(const Vec3Py &v1, const Vec3Py &v2) : WallForcePair(v1, v2) { } WallForcePairPy(const WallForcePairPy &pair) : WallForcePair(pair.first, pair.second) { } WallForcePairPy(const Vec3 &v1, const Vec3 &v2) : WallForcePair(v1, v2) { } WallForcePairPy(const WallForceReader::WallForcePair &pair) : WallForcePair(pair.first, pair.second) { } WallForcePairPy(const list &l1, const list &l2) : WallForcePair() { const int llen = Vec3Py().len(); if ((bpu::len(l1) == llen) && (bpu::len(l2) == llen)) { const Vec3Py first1 = Vec3Py( extract(l1[0])(), extract(l1[1])(), extract(l1[2])() ); const Vec3Py second1 = Vec3Py( extract(l2[0])(), extract(l2[1])(), extract(l2[2])() ); first = first1; second = second1; } else { std::stringstream msg; msg << "Lists " << extract(boost::python::str(l1))() << " (len=" << bpu::len(l1) << ")" << " and " << extract(boost::python::str(l2))() << " (len=" << bpu::len(l2) << ")" << " do not both have length " << llen; throw std::runtime_error(msg.str()); } } int len() const { return 2; } const Vec3 &getItem(int i) const { if (i == 0) { return first; } else if (i == 1) { return second; } throwIndexOutOfRange(i); return Vec3::ZERO; } void setItem(int i, const Vec3 &v) { if (i == 0) { first = v; } else if (i == 1) { second = v; } throwIndexOutOfRange(i); } std::string toString() const { return extract(boost::python::str(first))() + extract(boost::python::str(second))(); } protected: void throwIndexOutOfRange(int i) const { std::stringstream msg; msg << "Index i = " << i << " out of range (0,2)."; throw std::runtime_error(msg.str()); } }; class WallForceReaderPy { public: WallForceReaderPy(int wallId1, int wallId2, const std::string &fileName) : m_iFStreamPtr(new std::ifstream(fileName.c_str())), m_it(wallId1, wallId2, *m_iFStreamPtr) { } bool hasNext() const { return m_it.hasNext(); } WallForceReader::WallForcePair next() { return m_it.next(); } private: typedef boost::shared_ptr IFStreamPtr; IFStreamPtr m_iFStreamPtr; WallForceReader m_it; }; class MacroFrictionCalculatorPy { public: MacroFrictionCalculatorPy( int normalDimIndex, int shearDimIndex ) : m_fricnCalker(normalDimIndex, shearDimIndex) { } class Extractor { public: MacroFrictionCalculator::WallForcePair operator()(object pyOb) { extract pair(pyOb); if (pair.check()) { return pair(); } else { std::stringstream msg; msg << "Could not extract C++ WallForcePairPy object from list element: " << extract(str(pyOb))(); throw runtime_error(msg.str()); } } }; void addList(const list &wallForceList) { typedef MacroFrictionCalculator::WallForcePair WallForcePair; typedef std::vector WallForceVector; const WallForceVector wallForceVector( bpu::listToVector(wallForceList) ); m_fricnCalker.add(ForwardConstIterator(wallForceVector)); } void addReader(const WallForceReaderPy &wallForceReader) { m_fricnCalker.add(wallForceReader); } list getFrictionList() const { return bpu::vectorToList(m_fricnCalker.getFrictionVector()); } private: MacroFrictionCalculator m_fricnCalker; }; class LinearWindowAveragerPy { public: LinearWindowAveragerPy( const list &valList, int halfWindowSize, int beginIndex, int endIndex, int skipSize ) : m_linearAverager( bpu::listToVector(valList), halfWindowSize, beginIndex, endIndex, skipSize ) { } list getAveragedList() { return bpu::vectorToList(m_linearAverager.getAveragedVector()); } private: LinearWindowAverager m_linearAverager; }; void exportMacroFrictionCalculator() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif class_("WallForceReader", init()); class_("WallForcePair", init()) .def(init()) .def(init()) .def(self == self) .def_readwrite("first", &WallForcePairPy::first) .def_readwrite("second", &WallForcePairPy::second) .def("__str__", &WallForcePairPy::toString) ; class_("MacroFrictionCalculator", init()) .def("getFrictionList", &MacroFrictionCalculatorPy::getFrictionList) .def("add", &MacroFrictionCalculatorPy::addList) .def("add", &MacroFrictionCalculatorPy::addReader) ; class_("LinearWindowAverager", init()) .def("getAveragedList", &LinearWindowAveragerPy::getAveragedList) ; } } } ./Python/esys/lsm/tools/__init__.py0000664000175000017500000000131612176660653017150 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from MacroFrictionCalcPy import * ./Python/esys/lsm/tools/Makefile.am0000664000175000017500000000270012176660653017071 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmtools_LTLIBRARIES = libMacroFrictionCalcPy.la MacroFrictionCalcPy.la libMacroFrictionCalcPy_la_LDFLAGS = -shared libMacroFrictionCalcPy_la_SOURCES = MacroFrictionCalculatorPy.cpp MacroFrictionCalculatorPy.h libMacroFrictionCalcPy_la_LIBADD = \ $(top_builddir)/Tools/MacroFrictionCalculator/libMacroFrictionCalc.la \ $(top_builddir)/Python/BoostPythonUtil/libBoostPythonUtil.la MacroFrictionCalcPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) MacroFrictionCalcPy_la_SOURCES = ExportModuleTools.cpp MacroFrictionCalcPy_la_LIBADD = \ $(top_builddir)/Python/esys/lsm/util/libFoundationPy.la \ libMacroFrictionCalcPy.la lsmtools_PYTHON = __init__.py ./Python/esys/lsm/Makefile.am0000664000175000017500000000543712176660653015743 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am SUBDIRS = \ util \ . \ geometry \ vis lsm_PYTHON = __init__.py Logging.py AM_CPPFLAGS += $(SILO_CPPFLAGS) AM_LDFLAGS += $(SILO_LDFLAGS) lsm_LTLIBRARIES = libLsmPy.la LsmPy.la libLsmPy_la_LDFLAGS = -shared libLsmPy_la_SOURCES = LsmMpiPy.cpp \ LsmMpiPy.h \ RunnablePy.cpp \ RunnablePy.h \ CheckPointParamsPy.cpp \ CheckPointParamsPy.h \ InteractionParamsPy.cpp \ InteractionParamsPy.h \ InteractionGroupPy.cpp \ InteractionGroupPy.h \ BondInteractionGroupPy.cpp \ BondInteractionGroupPy.h \ BondedTriMeshPrmsPy.cpp \ BondedTriMeshPrmsPy.h \ BondedMesh2DPrmsPy.cpp \ BondedMesh2DPrmsPy.h \ MeshBuildParamsPy.cpp \ MeshBuildParamsPy.h \ WallPrmsPy.cpp \ WallPrmsPy.h \ ParticlePy.cpp \ ParticlePy.h \ FieldSaverPrmsPy.cpp \ FieldSaverPrmsPy.h \ ParticleFieldSaverPrmsPy.cpp \ ParticleFieldSaverPrmsPy.h \ InteractionFieldSaverPrmsPy.cpp \ InteractionFieldSaverPrmsPy.h \ ElasticTriMeshPrmsPy.cpp \ ElasticTriMeshPrmsPy.h \ WallFieldSaverPrmsPy.cpp \ WallFieldSaverPrmsPy.h \ TriangleFieldSaverPrmsPy.cpp \ TriangleFieldSaverPrmsPy.h \ RotParticlePy.cpp \ RotParticlePy.h \ LmParticleAdder.cpp \ LmParticleAdder.h \ LmParticleAdder.hpp \ TriggerPrmsPy.cpp \ TriggerPrmsPy.h \ ElasticMesh2DPrmsPy.cpp \ ElasticMesh2DPrmsPy.h \ ParticleIdPairSetPy.cpp \ ParticleIdPairSetPy.h \ ParticleIdPairPy.cpp \ ParticleIdPairPy.h \ ParticleIdPairVectorPy.cpp \ ParticleIdPairVectorPy.h \ RotParticleViPy.cpp \ RotParticleViPy.h \ RotThermalParticlePy.cpp \ RotThermalParticlePy.h libLsmPy_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Model/libModel.la \ $(top_builddir)/Parallel/libParallel.la \ $(top_builddir)/Python/BoostPythonUtil/libBoostPythonUtil.la \ $(top_builddir)/Python/esys/lsm/util/libFoundationPy.la LsmPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) LsmPy_la_SOURCES = ExportModuleLsm.cpp LsmPy_la_LIBADD = libLsmPy.la ./Python/esys/lsm/TriggerPrmsPy.cpp0000664000175000017500000000341112176660653017157 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/TriggerPrmsPy.h" namespace esys { namespace lsm { MaxTriggerPrmsPy::MaxTriggerPrmsPy(double on,double off,int buff,int tail) { trig_on_value=on; trig_off_value=off; buff_size=buff; tail_size=tail; } using boost::python::arg; void exportTriggerPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "MaxTriggerPrms", "Parameter class for max trigger", boost::python::init(( arg("on_value"), arg("off_value"), arg("buffer_size"), arg("tail_size")) )); } } // namespace lsm } // namespace esys ./Python/esys/lsm/ParticleIdPairVectorPy.h0000664000175000017500000000176212176660653020405 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEIDPAIRVECTORPY_H #define ESYS_LSMPARTICLEIDPAIRVECTORPY_H #include #include namespace esys { namespace lsm { typedef VectorPy ParticleIdPairVectorPy; void exportParticleIdPairVector(); } } #endif ./Python/esys/lsm/RotThermalParticlePy.h0000664000175000017500000000454212176660653020132 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMTHERMALROTPARTICLEPY_H #define ESYS_LSMTHERMALROTPARTICLEPY_H #include "Model/RotThermParticle.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/util/QuaternionPy.h" namespace esys { namespace lsm { class RotThermalParticlePy : public CRotThermParticle { public: RotThermalParticlePy(); RotThermalParticlePy(const RotThermalParticlePy &p); RotThermalParticlePy(const CRotThermParticle &p); RotThermalParticlePy(int id, const Vec3Py &posn, double radius, double mass); Vec3Py getPosn() const; void setPosn(const Vec3Py &posn); Vec3Py getInitialPosn() const; Vec3Py getLinearVelocity() const; void setLinearVelocity(const Vec3Py &vel); Vec3Py getLinearForce() const; void setLinearForce(const Vec3Py &force); Vec3Py getLinearAcceleration() const; void setLinearAcceleration(const Vec3Py &accel); Vec3Py getAngularVelocity() const; void setAngularVelocity(const Vec3Py &vel); Vec3Py getAngularForce() const; void setAngularForce(const Vec3Py &force); Vec3Py getAngularAcceleration() const; void setAngularAcceleration(const Vec3Py &accel); QuaternionPy getOrientation() const; void setOrientation(const QuaternionPy &quat); class PickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getstate(boost::python::object pcObj); static void setstate(boost::python::object pcObj, boost::python::tuple state); static bool getstate_manages_dict(); }; }; void exportRotThermalParticle(); } } #endif ./Python/esys/lsm/sim/0000775000175000017500000000000012176660653014466 5ustar vborosvboros./Python/esys/lsm/sim/ExportModuleWavePropagation.cpp0000664000175000017500000000151612176660653022653 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/sim/WavePropagationPy.h" BOOST_PYTHON_MODULE(WavePropagationPy) { esys::lsm::exportWavePropagation(); }; ./Python/esys/lsm/sim/WavePropagation.py0000664000175000017500000006722312176660653020160 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.lsm.util import * from esys.lsm import NRotBondPrms, DampingPrms, Runnable import WavePropagationPy import math import weakref from sets import Set import itertools class SourcePrms: """ Base class for point-source distubance which generates elastic wave. """ def __init__(self, posn): """ @param posn: The desired location for the source disturbance. """ self.initialPosn = Vec3(posn) def getInitialPosn(self): """ Returns the desired location of the source disturbance. """ return self.initialPosn def getPosn(self, t): """ Returns relative position of source disturbance for time t. @param t: time. """ raise NotImplementedException() class ExpSourcePrms(SourcePrms): """ Describes (time, position) trajectory information for a source particle. """ def __init__( self, posn = Vec3(0.0, 0.0, 0.0), a = (0.20, 0.25, 0.00), b = (0.50, 0.50, 0.50), t0 = (5.00, 4.00, 6.00) ): """ Constructs and exponential (Gaussian in time) source. @type posn: L{Vec3} @param posn: coordinate location of the source. @type a: L{list}/L{tuple} @param a: sequence of 3 elements defining the magnitude/amplitude of the (x,y,z) components. @type b: L{list}/{tuple} @param b: sequence of 3 elements defining the period of the (x,y,z) components. @type t0: float @param t0: sequence of 3 elements defining the time at which the maximum amplitude is achieved for each (x,y,z) component. """ SourcePrms.__init__(self, posn) self.a = Vec3(a) self.b = Vec3(b) self.t0 = Vec3(t0) def getPosn(self, t): d = Vec3() for i in range(0, 3): d[i] = self.a[i]*math.exp(-((t-self.t0[i])/self.b[i])**2) return d class CircularSourcePrms(SourcePrms): """ Defines circular trajectory (time, position) for source disturbance. """ def __init__(self, posn, startTime=0.5, freq=0.05, radius=0.05): SourcePrms.__init__(self, posn) self.startTime = startTime self.freq = freq self.radius = radius def getPosn(self, t): d = Vec3(0,0,0) theta = self.freq*2.0*math.pi*(t-self.startTime) if ((t >= self.startTime) and (theta <= 2.0*math.pi)): d = \ Vec3( self.radius*math.cos(theta)-self.radius, self.radius*math.sin(theta), 0 ) print "Moving source by |" + str(d) + "|=" + str(d.norm()) return d class WaveSource(Runnable): """ Helper class which moves a source particle during each time step. """ def __init__(self, prms, lsm): """ Constructs the source Runnable. @param prms: object which governs the source particle trajectory. This object is expected to define a getPosn(t) method which returns a relative position for time t, and also define a getInitialPosn() method which returns the location of the source disturbance. @type lsm: L{esys.lsm.sim.WavePropagation.WavePropagation} @param lsm: a WavePropagation lattice solid model object. A source particle in this model is moved according to the trajectory specifed by the prms argument. """ Runnable.__init__(self) self.prms = prms self.lsmProxy = weakref.proxy(lsm) self.particleId = \ self.getLsm().findClosestParticle( self.getPrms().getInitialPosn() ) self.initialPosn = \ self.getLsm().getParticlePosn(self.getParticleId()) def getLsm(self): return self.lsmProxy def getPrms(self): return self.prms def getParticleId(self): return self.particleId def getInitialPosn(self): return self.initialPosn def run(self): posn = \ self.getInitialPosn() \ + \ self.getPrms().getPosn(self.getLsm().getTime()) self.getLsm().moveParticleTo(self.getParticleId(), posn) class Seismograph: """ Helper class whose objects represent seismographs. """ def __init__(self, posn, lsm): """ @type posn: Three float squence @param posn: the approximate location of the seismograph. @param lsm: a lattice solid model object. """ self.lsmProxy = weakref.proxy(lsm) self.particleId = \ self.getLsm().findClosestParticle(posn) self.posn = self.getLsm().getParticlePosn(self.particleId) def getLsm(self): """ Returns LSM object which is used to obtain displacement, velocity and acceleration data. """ return self.lsmProxy def getParticleId(self): """ Returns the id of the particle which is used to obtain seismograph data. """ return self.particleId def getInitialPosn(self): """ Returns the initial position of the of this seismograph, this position is just the particle initial position. """ return self.posn def cmpRecordSetElemList(elemList1, elemList2): """ Compare-function used with the list.sort method to order record section data by distance-to-source. """ c = cmp(elemList1[1],elemList2[1]) if (c == 0): return cmp(elemList1[0],elemList2[0]) return c class SeismographGroup: """ Objects of this class represent a collection of seismographs. """ def __init__(self, seismoList, name, fileNamePrefix, sourcePosn): """ @type seismoList: list @param seismoList: List of Seismograph objects. @type name: string @param name: Name of this group. @type fileNamePrefix: string @param fileNamePrefix: For all Seismograph objects, data is saved to files with this prefix. @type sourcePosn: L{esys.lsm.util.FoundationPy.Vec3} @param sourcePosn: Location of source disturbance, used to calculate distance from source to seismograph. """ self.name = name self.fileNamePrefix = fileNamePrefix self.seismoList = seismoList self.seismoIdSet = Set([s.getParticleId() for s in self.seismoList]) self.sourcePosn = Vec3(sourcePosn) def inGroup(self, seismoData): """ Returns whether the specfied SeismographData object is from a Seismograph in this group. @type seismoData: L{SeismographData} @param seismoData: Determine whether this data belongs to a Seismograph object in this group. @return: True if seismoData came from a seismograph in this group. """ return (seismoData.particleId in self.seismoIdSet) def getRecordSectionFileName(self): """ Returns the name of the file in which record section data is saved. """ return self.fileNamePrefix + "record_section.txt" def getSeismoDataFileName(self, posn): """ Returns the name of a seismograph data file for the specified posn. @param posn: A Vec3 object specifying the position of the seismograph. @rtype string @return: File name for seismograph data at spatial coordinate posn. """ fileName = (self.fileNamePrefix + "%3.3f_%3.3f_%3.3f") % posn.toTuple() fileName += ".txt" return fileName def initialiseSeismoDataFiles(self): """ Creates/overwrites empty seismograph data files. """ fileName = self.getRecordSectionFileName() f = file(fileName, "w") f.close() for seismo in self.seismoList: fileName = self.getSeismoDataFileName(seismo.getInitialPosn()) f = file(fileName, "w") f.write( "# " + ("%3.3f %3.3f %3.3f" %\ seismo.getInitialPosn().toTuple()) ) f.close() def save(self, time, seismoDataList): """ Saves seismograph data to files. Appends record section info as well as individual seismo data file. """ for seismoData in itertools.ifilter(self.inGroup, seismoDataList): self.saveSeismoData(time, seismoData) self.saveRecordSectionData(time, seismoData) def saveSeismoData(self, time, seismoData): """ Appends the specfied seismograph data to file. Each seismograph data record is appended to a different file. Each line in the file is of the form 't dx dy dz vx vy vz ax ay az' where d=(dx,dy,dz) is the displacement vector, v=(vx,vy,vz) is the velocity vector and a=(ax,ay,az) is the acceleration vector. @type time: float @param time: the time the data was recorded @type seismoData: L{SeismographData} @param seismoData: Data in this object is saved to file. The file name is determined by the data's position. """ fileName = \ self.getSeismoDataFileName( seismoData.posn ) f = file(fileName, "a") f.write(str(time)) f.write(" " + str(seismoData.displacement)) f.write(" " + str(seismoData.velocity)) f.write(" " + str(seismoData.acceleration)) f.write("\n") f.close() def saveRecordSectionData( self, time, seismoData ): """ Appends record-set style seismograph data to file. Each seismograph data record is appended to a record-set file. Each line in the file is of the form 't d ux uy uz vx vy vz ax ay az' where t is the time, d is the distance from the seismograph to the sourcePosn d=(dx,dy,dz) is the displacement vector, v=(vx,vy,vz) is the velocity vector and a=(ax,ay,az) is the acceleration vector. @type time: float @param time: the time the data was recorded @type seismoData: L{SeismographData} @param seismoData: This data is saved to record the section file. """ fileName = self.getRecordSectionFileName() f = file(fileName, "a") f.write(str(time)) f.write(" " + str((seismoData.posn-self.sourcePosn).norm())) f.write(" " + str(seismoData.displacement)) f.write(" " + str(seismoData.velocity)) f.write(" " + str(seismoData.acceleration)) f.write("\n") f.close() def writeReorderedRecordSectionData(self): """ Re-orders record set data for more convenient plotting in gnuplot. Reads time-ordered record section data and re-orders according to distance-to-source. """ f = file(self.getRecordSectionFileName(), "r") recordList = [] for line in f.readlines(): line = string.strip(line) if (len(line) > 0): recordList.append(map(float, string.split(line, " "))) f.close() # # Separate each seismo's data into a list # distDict = dict() for record in recordList: if (not distDict.has_key(record[1])): distDict[record[1]] = [] distDict[record[1]].append(record) f = file(self.fileNamePrefix + "record_section_reordered.txt", "w") distKeyList = distDict.keys() distKeyList.sort() for dist in distKeyList: distDict[dist].sort(cmpRecordSetElemList) for recordElemList in distDict[dist]: f.write(string.join(map(str, recordElemList), " ")) f.write("\n") f.write("\n") f.close() class SeismographGroupCollection: """ Represents a collection/list of SeismographGroup objects. """ def __init__(self, lsm): """ @type lsm: L{esys.lsm.sim.WavePropagation.WavePropagation} @param lsm: Seismo data is collected from this object. """ self.lsmRef = weakref.ref(lsm) self.idSeismoDict = dict() self.seismoGroupList = [] def getLsm(self): """ Returns the LSM object associated with this collection. @rtype: L{esys.lsm.sim.WavePropagation.WavePropagation} """ return self.lsmRef() def createSeismograph(self, posn): """ Creates a seismograph at the specified position. @type posn: L{Vec3} @param posn: Approximate location of seismograph. @rtype: L{Seismograph} @return: Newly created Seismograph object. """ return Seismograph(posn, self.getLsm()) def getSeismograph(self, posn): """ Returns seismograph for the given position. Only allows a unique instance of a seismograph for a particular spatial region. @rtype: L{Seismograph} """ seismo = self.createSeismograph(posn) if (not self.idSeismoDict.has_key(seismo.getParticleId())): self.idSeismoDict[seismo.particleId] = seismo return self.idSeismoDict[seismo.particleId] def createGroup(self, posnIterable, fileNamePrefix, sourcePosn): """ Creates multiple seismographs from a sequence of locations. @type posnIterable: sequence of L{Vec3} @param posnIterable: sequence of seismograph approximate locations. @type fileNamePrefix: string @param fileNamePrefix: prefix of file where seimo data is saved. @type sourcePosn: L{Vec3} @param sourcePosn: Location of source disturbance. """ seismoList = [self.getSeismograph(p) for p in posnIterable] self.seismoGroupList.append( SeismographGroup( seismoList, str(len(self.seismoGroupList)), fileNamePrefix, sourcePosn ) ) self.seismoGroupList[-1].initialiseSeismoDataFiles() def getSeismographData(self): """ Returns a sequence of SeismographData objects representing seismograph data for the current time step. """ visitor = ParticleDataVisitor() self.getLsm().visitParticlesWithId(self.idSeismoDict.keys(), visitor) return visitor.seismoDataList def saveSeismoData(self): """ Saves seismograph data for each group of seismographs. """ # # Start by getting the data for all seismographs so # there is only one MPI gather call to the worker processes. # time = self.getLsm().getTime() seismoDataList = self.getSeismographData() # # Now each group writes the data to the appropriate files. # for seismoGroup in self.seismoGroupList: seismoGroup.save(time, seismoDataList) def writeReorderedRecordSectionData(self): """ Writes reordered seismo data to file, data is ordered by distance-to-source then by time. """ for seismoGroup in self.seismoGroupList: seismoGroup.writeReorderedRecordSectionData() class SeismographData: """ Objects of this class represent seismograph data at a particular instant in time. """ def __init__(self, posn, displacement, velocity, acceleration, particleId): self.posn = Vec3(posn) self.displacement = Vec3(displacement) self.velocity = Vec3(velocity) self.acceleration = Vec3(acceleration) self.particleId = particleId class ParticleDataVisitor: """ Helper class whose objects are used to collect seismograph data, from multiple locations, at a particular instant in time. Used in conjunction with the esys.lsm.sim.WavePropagation.WavePropagation.visitParticlesWithId method. """ def __init__(self): self.seismoDataList = [] def visitAParticle(self, p): """ Converts the Particle data object p into a SeismographData object. @type p: L{esys.lsm.LsmPy.NRotSphere} or L{esys.lsm.LsmPy.RotSphere} @param p: Particle being visited. """ self.seismoDataList.append( SeismographData( posn = p.getInitialPosn(), displacement = p.getPosn() - p.getInitialPosn(), velocity = p.getVelocity(), acceleration = p.getAcceleration(), particleId = p.getId() ) ) def visitNRotSphere(self, p): self.visitAParticle(p) def visitRotSphere(self, p): self.visitAParticle(p) class PVisitor: """ Objects of this class are used in conjunction with the WavePropagation.visitParticlesWithId method to collect model particle data. Objects simply collect the visited particle data into a list. Used in conjunction with the esys.lsm.sim.WavePropagation.WavePropagation.visitParticlesWithId method. """ def __init__(self): """ Initialise with empty particle list. """ self.particleList = [] def __iter__(self): """ Returns the iterator of the particle list. """ return iter(self.particleList) def visitAParticle(self, particle): """ Simply adds the specified particle data to the visited list. @type particle: L{esys.lsm.LsmPy.NRotSphere} or L{esys.lsm.LsmPy.RotSphere} @param particle: Particle data. """ self.particleList.append(particle) def visitNRotSphere(self, p): self.visitAParticle(p) def visitRotSphere(self, p): self.visitAParticle(p) class WavePropagation(WavePropagationPy.WavePropagation): """ Wave propagation model, extends the esys.lsm.sim.WavePropagationPy.WavePropagation by providing convenient methods for saving data, creating partices/bonds and creating seismographs. """ def __init__( self, domainBox, numWorkerProcesses = 2, mpiDimList = [0,0,0], do2d = False, timeStepSize = 0.05, dampingViscosity = 0.0 ): """ Initialise a wave propagation model. @type domainBox: L{BoundingBox} @param domainBox: a BoundingBox which specifies the model particle domain. @type numWorkerProcesses: int @param numWorkerProcesses: the number of MPI worker processes used in model computations. @type mpiDimList: list @param mpiDimList: sequence of 3 int elements specifying the domain decomposition used for the MPI worker processes. @type do2d: bool @param do2d: if True, forces the model to perform 2d calculations (particles move only in the x-y plane). @type timeStepSize: float @param timeStepSize: size of the time-step in the explicit integration scheme. @type dampingViscosity: float @param dampingViscosity: if > 0 a damping viscosity is applied to particles. """ WavePropagationPy.WavePropagation.__init__( self, numWorkerProcesses, mpiDimList ) self.initVerletModel( "NRotSphere", 2.5, 0.20 ) self.setTimeStepSize(dt=timeStepSize) self.setSpatialDomain(domainBox) self.force2dComputations(do2d) if (dampingViscosity > 0.0): self.createDamping( DampingPrms( type="Damping", name="dampie-damp", viscosity = dampingViscosity, maxIterations=100 ) ) self.sourceList = [] self.seismoGroups = SeismographGroupCollection(self) def createParticles(self, particles): """ Creates model particles. @type particles: sequence @param particles: A sequence of L{esys.lsm.geometry.SimpleSphere} objects. """ WavePropagationPy.WavePropagation.createParticles(self, particles) def createBonds(self, connections, tagBondPrmDict): """ Creates elastic bonds between particles. @type connections: sequence of L{esys.lsm.geometry.GeometryPy.TaggedIdConnection} @param connections: create a bond for each connection which has a tag key in the tagBondPrmDict dictionary. @type tagBondPrmDict: dict of tag:float @param tagBondPrmDict: a dictionary of (connectionTag:normalK) pairs. Connections with tag connectionTag will have a corresponding linear elastic bond created with spring constant normalK. """ self.createConnections(connections) for tag in tagBondPrmDict.keys(): if (isinstance(tagBondPrmDict[tag], float)): bondPrms = \ NRotBondPrms( name = "BondageTag_" + str(tag), normalK = tagBondPrmDict[tag], breakDistance = 10.0, tag = tag ) else: bondPrms = tagBondPrmDict[tag] self.createInteractionGroup(bondPrms) def addSource(self, source): """ Add a source disturbance to the model. @type source: L{WaveSource} @param source: source disturbance object """ self.sourceList.append(source) self.addPreTimeStepRunnable(source) def createSource(self, prm): """ Creates a propagation source (a WaveSource object) within the model. @type prm: L{SourcePrms} @param prm: parameters for creating a WaveSource object. """ self.addSource(WaveSource(prm, self)) def getTime(self): """ Returns simulation time value (simply number of time steps multiplied by the time step size). @rtype: float @return: Simulation time. """ return self.getTimeStep()*self.getTimeStepSize() def createSources(self, sourcesPrms): """ Creates multiple propagation sources. @type sourcesPrms: sequence of L{SourcePrms} objects @param sourcesPrms: A WaveSource is created for each object in this sequence. """ if (not hasattr(sourcesPrms, "__iter__")): sourcesPrms = [sourcesPrms] for prm in sourcesPrms: self.createSource(prm) def createSeismographGroup( self, posnIteratable, fileNamePrefix, sourcePosn ): """ Creates a group of seismographs (a SeismographGroup obect) from a specified sequence of spatial locations. @type posnIteratable: sequence of L{Vec3} @param posnIteratable: a sequence of coordinates which indicate the locations of seismographs. A Seismograph object is created for each point in posnIteratable. @type fileNamePrefix: string @param fileNamePrefix: Seismograph data is saved to files with this file name prefix. @type sourcePosn: L{Vec3} @param sourcePosn: location of the point-source disturbance. """ self.seismoGroups.createGroup( posnIteratable, fileNamePrefix, sourcePosn ) def saveSeismoData(self): """ Appends seismograph data to file for the current time step. """ self.seismoGroups.saveSeismoData() def writeReorderedRecordSectionData(self): """ Reads time-ordered record-section data from file and writes a distance-from-source ordered file. """ self.seismoGroups.writeReorderedRecordSectionData() def getParticleDataFileName(self, idx, fileNamePrefix): """ Returns the name of the file where particle data is saved for the specifed index. @type idx: int @param idx: The snap-shot/frame number @type fileNamePrefix: string @param fileNamePrefix: The returned file name is a concatenation of this prefix with a suffix formed using the index argument. """ return (fileNamePrefix + "%d.txt") % (idx,) def writeParticleDataOrig(self, idList, index, fileNamePrefix="particle_"): """ Pure python-implemented version of saving particle displacement data, the C++ implementation provided by esys.lsm.sim.WavePropagation.WavePropagation class is faster. Writes particle displacement and velocity data to file. Each line of the file is 'px py pz dx dy dz vx vy vz' where p=(px,py,pz) is the particle position, d=(dx,dy,dz) is the current particle displacement (ie position relative to initial position) and (vx,vy,vz) is the particle velocity. @type idList: sequence of int @param idList: list of particle id's for which data will be saved. @type index: int @param index: integer used to generate file name. @type fileNamePrefix: string @param fileNamePrefix: prefix of file where displacement data is saved. """ # # Collect data for all particles with id's specified # in the idList. # visitor = PVisitor() self.visitParticlesWithId(idList, visitor) f = file(self.getParticleDataFileName(index, fileNamePrefix), "w") for p in visitor: f.write( str(p.getPosn()) +\ " " +\ str(p.getPosn()-p.getInitialPosn()) +\ " " +\ str(p.getVelocity()) +\ "\n" ) f.close() def writeParticleData(self, index, fileNamePrefix="particle_"): """ Writes particle displacement and velocity data to file. Each line of the file is 'px py pz dx dy dz vx vy vz' where p=(px,py,pz) is the particle position, d=(dx,dy,dz) is the current particle displacement (ie position relative to initial position) and (vx,vy,vz) is the particle velocity. Particle data is saved for all particles with an id in the list returned by the self.getParticleDataIdList. @type index: int @param index: integer used to generate file name. @type fileNamePrefix: string @param fileNamePrefix: prefix of file where displacement data is saved. """ # # Collect data for all particles with id's specified # in the idList. # self.writeParticleDataToFile( self.getParticleDataFileName(index, fileNamePrefix) ) ./Python/esys/lsm/sim/coupled/0000775000175000017500000000000012176660653016121 5ustar vborosvboros./Python/esys/lsm/sim/coupled/LsmMpiEscriptPy.cpp0000664000175000017500000000340112176660653021667 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Parallel/LatticeMaster.h" #include "Python/esys/lsm/sim/coupled/LsmMpiEscriptPy.h" #include "Python/esys/lsm/LsmMpiPy.h" #include "Python/esys/lsm/util/Vec3Py.h" namespace esys { namespace lsm { class LsmMpiEscriptPy : public LsmMpiPy { public: LsmMpiEscriptPy(int numWorkers, const boost::python::list &dimList) : LsmMpiPy(numWorkers, dimList) { } }; void exportLsmMpiEscript() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "LsmMpiEscript", boost::python::init() ); } } } ./Python/esys/lsm/sim/coupled/SimpleGougeConfig.py0000664000175000017500000001315212176660653022043 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.escript import * from esys.finley import Rectangle,Brick from esys.finley import Merge from esys.lsm.geometry import * from esys.lsm.util import * from MeshToVtkConverter import MeshToVtkConverter def roundToInt(flt): return int(round(flt)) class SimpleGougeMesh: def __init__( self, boundingBox1, boundingBox2, gridSize, ): self.bBox1 = boundingBox1 self.bBox2 = boundingBox2 self.gridSize = gridSize self.mesh = None def getDim(self): dim = 3 if (self.bBox1.getMinPt()[2] == self.bBox1.getMaxPt()[2]): dim = 2 return dim def getGridPointsPerDim(self): sizes = (self.bBox1.getSize(), self.bBox2.getSize()) return \ ( map(roundToInt, (sizes[0]/self.gridSize).toList()), map(roundToInt, (sizes[1]/self.gridSize).toList()) ) def generate(self): (numGridPts1, numGridPts2) = self.getGridPointsPerDim() periodic0 = True if (self.getDim() == 2): mesh1 = \ Rectangle( numGridPts1[0], numGridPts1[1], order=1, l0=self.bBox1.getSize()[0], l1=self.bBox1.getSize()[1], periodic0=periodic0 ) mesh2 = \ Rectangle( numGridPts2[0], numGridPts2[1], order=1, l0=self.bBox2.getSize()[0], l1=self.bBox2.getSize()[1], periodic0=periodic0 ) else: mesh1 = \ Brick( numGridPts1[0], numGridPts1[1], numGridPts1[2], order=1, l0=self.bBox1.getSize()[0], l1=self.bBox1.getSize()[1], l2=self.bBox1.getSize()[2], periodic0=periodic0 ) mesh2 = \ Brick( numGridPts2[0], numGridPts2[1], numGridPts2[2], order=1, l0=self.bBox2.getSize()[0], l1=self.bBox2.getSize()[1], l2=self.bBox2.getSize()[2], periodic0=periodic0 ) x1 = mesh1.getX() x2 = mesh2.getX() # # To get the same identical tags on the particle boundary elements # of both meshes, reflect about the y-axis. # x2[1] = -x2[1] x2[1] += abs(inf(x2[1])) # # Now translate the meshes so they correspond to the # specified bounding boxes. # for d in range(0, self.getDim()): x1[d] += self.bBox1.getMinPt()[d] x2[d] += self.bBox2.getMinPt()[d] mesh1.setX(x1) mesh2.setX(x2) self.mesh = Merge([mesh1, mesh2]) def write(self, fileName): self.mesh.write(fileName) class SimpleGougeConfig: def __init__( self, particleGougePrms, continuumBlockHeight, fileNamePrefix="gouge", gridSize = None ): self.gougeBlock = GougeBlock(particleGougePrms) if (gridSize == None): gridSize = 2.0*particleGougePrms.getMinRadius() self.gridSize = gridSize self.continuumHeight = continuumBlockHeight self.fileNamePrefix = fileNamePrefix self.meshGenerator = None def generateDomain(self): self.gougeBlock.generate() particleBBox = self.gougeBlock.getDomainBoundingBox() minPt = particleBBox.getMinPt() maxPt = particleBBox.getMaxPt() upperMinPt = Vec3(minPt[0], maxPt[1], minPt[2]) upperMaxPt = maxPt + Vec3(0, self.continuumHeight, 0) lowerMinPt = minPt - Vec3(0, self.continuumHeight, 0) lowerMaxPt = Vec3(maxPt[0], minPt[1], maxPt[2]) self.meshGenerator = \ SimpleGougeMesh( BoundingBox(lowerMinPt, lowerMaxPt), BoundingBox(upperMinPt, upperMaxPt), self.gridSize ) self.meshGenerator.generate() def getParticleGeometryXmlFileName(self): return self.fileNamePrefix + "ParticlesVtk.xml" def getMeshXmlFileName(self): return self.fileNamePrefix + "MeshVtk.xml" def getParticleGeometryFileName(self): return self.fileNamePrefix + ".geo" def getMeshFileName(self): return self.fileNamePrefix + ".msh" def writeVtkXml(self): self.write() self.gougeBlock.writeVtkXml(self.getParticleGeometryXmlFileName()) MeshToVtkConverter(self.getMeshFileName(), self.getMeshXmlFileName()).convert() def write(self): self.gougeBlock.write(self.getParticleGeometryFileName()) self.meshGenerator.write(self.getMeshFileName()) ./Python/esys/lsm/sim/coupled/__init__.py0000664000175000017500000000141712176660653020235 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from SimpleGougeConfig import * from SimpleGouge import * from MeshToVtkConverter import * ./Python/esys/lsm/sim/coupled/LsmMpiEscriptPy.h0000664000175000017500000000150012176660653021332 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMLSMMPIESCRIPT_H #define ESYS_LSMLSMMPIESCRIPT_H namespace esys { namespace lsm { void exportLsmMpiEscript(); } } #endif ./Python/esys/lsm/sim/coupled/ExportModuleLsmEscript.cpp0000664000175000017500000000151512176660653023264 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/sim/coupled/LsmMpiEscriptPy.h" BOOST_PYTHON_MODULE(LsmEscriptPy) { esys::lsm::exportLsmMpiEscript(); }; ./Python/esys/lsm/sim/coupled/Makefile.am0000664000175000017500000000271312176660653020160 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmsimcoupled_LTLIBRARIES = libLsmEscriptPy.la LsmEscriptPy.la libLsmEscriptPy_la_LDFLAGS = -shared libLsmEscriptPy_la_SOURCES = \ LsmMpiEscriptPy.cpp LsmMpiEscriptPy.h libLsmEscriptPy_la_LIBADD = \ $(top_builddir)/Python/BoostPythonUtil/libBoostPythonUtil.la LsmEscriptPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) LsmEscriptPy_la_SOURCES = ExportModuleLsmEscript.cpp LsmEscriptPy_la_LIBADD = \ $(top_builddir)/Python/esys/lsm/libLsmPy.la \ libLsmEscriptPy.la lsmsimcoupled_PYTHON = \ __init__.py \ SimpleGouge.py \ SimpleGougeConfig.py \ MeshToVtkConverter.py \ DxToVtkConverter.py ./Python/esys/lsm/sim/coupled/MeshToVtkConverter.py0000664000175000017500000002251312176660653022252 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import os import re import string VTK_LINE = 3 VTK_PIXEL = 8 VTK_VOXEL = 11 class ParseError(Exception): pass def findFileMatch(regExprString, f): expr = re.compile(regExprString) line = f.readline() match = expr.match(line) while ((match == None) and (len(line) > 0)): line = f.readline() match = expr.match(line) return match class Node: def __init__(self, mshLine=None, ptLine=None): self.id = None self.idCirc = None self.tag = None self.pt = [0.0]*3 if (mshLine != None): self.initFromMeshLine(mshLine) elif (ptLine != None): self.initFromPtLine(ptLine) def initFromMeshLine(self, line): elemList = string.split(string.strip(line), " ") self.id = int(elemList[0]) self.idCirc = int(elemList[1]) self.tag = int(elemList[2]) ptList = map(float, elemList[3:]) self.pt = [0.0]*3 self.pt[0:len(ptList)] = ptList def initFromPtLine(self, line): elemList = string.split(string.strip(line), " ") ptList = map(float, elemList) self.pt = [0.0]*3 self.pt[0:len(ptList)] = ptList def translateBy(self, displacement): self.pt[0:len(displacement)] = \ [self.pt[i] + displacement[i] for i in range(0, len(displacement))] def writePt(self, f): f.write(string.join(map(str, self.pt), " ")) numNodesVtkCellTypeDict = dict() numNodesVtkCellTypeDict[2] = VTK_LINE numNodesVtkCellTypeDict[4] = VTK_PIXEL numNodesVtkCellTypeDict[8] = VTK_VOXEL class Cell: def __init__(self, meshLine=None, nodeIdLine=None): self.id = None self.tag = None self.nodeIdList = [] if (meshLine != None): self.initFromMeshLine(meshLine) elif (nodeIdLine != None): self.initFromNodeIdLine(nodeIdLine) def initFromMeshLine(self, line): elemList = string.split(string.strip(line), " ") self.id = int(elemList[0]) self.tag = int(elemList[1]) self.nodeIdList = map(int, elemList[2:]) def initFromNodeIdLine(self, line): elemList = string.split(string.strip(line), " ") self.nodeIdList = map(int, elemList) def getIndexMapList(self): indexMapList = range(0, len(self.nodeIdList)) if (len(self.nodeIdList) == 4): indexMapList = [0, 1, 3, 2] if (len(self.nodeIdList) == 8): indexMapList = [0, 1, 3, 2, 4, 5, 7, 6] return indexMapList def getNumNodes(self): return len(self.nodeIdList) def getVtkCellType(self): return numNodesVtkCellTypeDict[self.getNumNodes()] def writeNodeIdList(self, f): nodeIdList = [self.nodeIdList[i] for i in self.getIndexMapList()] f.write(string.join(map(str, nodeIdList))) class NodeList: def __init__(self): self.f = None self.nodeList = [] def __len__(self): return len(self.nodeList) def __getitem__(self, i): return self.nodeList[i] def __setitem__(self, i, node): self.nodeList[i] = node def findMatch(self, regExprString): return findFileMatch(regExprString, self.f) def getDim(self): return self.dim def findNodes(self): match = self.findMatch("^(\d)D-Nodes\s*(\d*)") if (match != None): self.dim = int(match.group(1)) self.numNodes = int(match.group(2)) else: raise ParseError("No nodes header found in file " + self.fileName) def append(self, node): self.nodeList.append(node) def readNodes(self): self.findNodes() for i in range(0, self.numNodes): self.append(Node(self.f.readline())) def read(self, f): self.f = f self.readNodes() self.f = None def writeVtkPointsDataArray(self, f): f.write("\n" % 3) for node in self.nodeList: node.writePt(f) f.write("\n") f.write("\n") class CellList: def __init__(self): self.f = None self.cellType = None self.nodesPerCell = None self.cellList = [] def append(self, cell): self.cellList.append(cell) def __len__(self): return len(self.cellList) def __getitem__(self, i): return self.cellList[i] def __setitem__(self, i, cell): self.cellList[i] = cell def findCells(self): match = findFileMatch("^(\D+)(\d+)\s*(\d+)", self.f) if (match != None): self.cellType = match.group(1) self.nodesPerCell = int(match.group(2)) self.numCells = int(match.group(3)) else: raise ParseError("No cells header found in file " + self.fileName) def append(self, cell): self.cellList.append(cell) def readCells(self): self.findCells() for i in range(0, self.numCells): self.append(Cell(self.f.readline())) def read(self, f): self.f = f self.readCells() self.f = None def writeVtkCellsDataArray(self, f): self.writeVtkConnectivity(f) self.writeVtkOffsets(f) self.writeVtkTypes(f) def writeVtkConnectivity(self, f): f.write( "\n" ) for cell in self.cellList: cell.writeNodeIdList(f) f.write("\n") f.write("\n") def writeVtkOffsets(self, f): f.write( "\n" ) offset = 0 for cell in self.cellList: offset += cell.getNumNodes() f.write(str(offset)) f.write("\n") f.write("\n") def getVtkCellType(self): if (self.cellType == "Line"): return VTK_LINE elif (self.cellType == "Rec"): return VTK_PIXEL elif (self.cellType == "Hex"): return VTK_VOXEL def writeVtkTypes(self, f): f.write( "\n" ) for cell in self.cellList: f.write(str(cell.getVtkCellType())) f.write("\n") f.write("\n") class UnstructuredGrid: def __init__(self, nodeList, cellList): self.nodeList = nodeList self.cellList = cellList def getNumNodes(self): return len(self.nodeList) def getNumCells(self): return len(self.cellList) def writeVtkXml(self, fileName): f = file(fileName, "w") f.write("\n") f.write("\n") f.write("\n") f.write( "\n"\ %\ (self.getNumNodes(), self.getNumCells()) ) f.write("\n") self.nodeList.writeVtkPointsDataArray(f) f.write("\n") f.write("\n") f.write("\n") f.write("\n") self.cellList.writeVtkCellsDataArray(f) f.write("\n") f.write("\n") f.write("\n") f.write("\n") f.write("\n") f.write("\n") class MeshReader: def __init__(self, fileName): self.fileName = fileName self.f = None self.dim = None self.nodeList = NodeList() self.cellList = CellList() self.bndryCellList = CellList() def getNumNodes(self): return len(self.nodeList) def getNumCells(self): return len(self.cellList) def getNumBndryCells(self): return len(self.bndryCellList) def read(self): self.f = file(self.fileName, "r") self.nodeList.read(self.f) self.cellList.read(self.f) self.bndryCellList.read(self.f) self.f.close() self.f = None def writeVtkXml(self, fileName): UnstructuredGrid(self.nodeList, self.cellList).writeVtkXml(fileName) class MeshToVtkConverter: def __init__(self, meshFileName, vtkXmlFileName): self.meshFileName = meshFileName self.vtkXmlFileName = vtkXmlFileName def convert(self): meshData = MeshReader(self.meshFileName) meshData.read() meshData.writeVtkXml(self.vtkXmlFileName) ./Python/esys/lsm/sim/coupled/SimpleGouge.py0000664000175000017500000002732412176660653020723 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from esys.finley import ReadMesh from esys.linearPDEs import LinearPDE from numarray import identity from esys.escript import * from LsmEscriptPy import * from esys.lsm.util import Vec3 import re import os import logging logger = logging.getLogger("esys.lsm.sim.coupled.SimpleGouge") def getLogger(): return logger class NeighbourListPrms: def __init__( self, gridSpacing, updateDisplDist ): self.gridSpacing = gridSpacing self.updateDisplDist = updateDisplDist class LsmGougePrms: def __init__( self, numWorkerProcesses, mpiDimList, lsmGeomFileName, meshFileName, timeStepSize, neighbourListPrms, bondPrms, frictionPrms, dampingPrms, bondedMeshPrms, chkptPrms, bBox = None ): self.numWorkerProcesses = numWorkerProcesses self.mpiDimList = mpiDimList self.lsmGeomFileName = lsmGeomFileName self.meshFileName = meshFileName self.timeStepSize = timeStepSize self.neighbourListPrms = neighbourListPrms self.bondPrms = bondPrms self.frictionPrms = frictionPrms self.dampingPrms = dampingPrms self.bondedMeshPrms = bondedMeshPrms self.chkptPrms = chkptPrms self.dim = None self.bBox = bBox def getNumWorkerProcesses(self): return self.numWorkerProcesses def getMpiDimList(self): return self.mpiDimList def getMeshFileName(self): return self.meshFileName def getMeshName(self): return self.bondedMeshPrms.getMeshName() def getDim(self): if (self.dim == None): regex = re.compile("^Dimension\s+(\d)D") f = file(self.lsmGeomFileName, "r") line = f.readline() match = regex.match(line) while (len(line) > 0) and (match == None): line = f.readline() match = regex.match(line) f.close() if (match != None): self.dim = int(match.group(1)) else: raise Exception( "Could not locate dimension info in file " \ + \ str(self.lsmGeomFileName) ) return self.dim def is2d(self): return (self.getDim() == 2) def initialise(self, lsm): lsm.initVerletModel( self.getParticleType(), self.neighbourListPrms.gridSpacing, self.neighbourListPrms.updateDisplDist, ) lsm.setTimeStepSize(self.timeStepSize) if (self.bBox != None): lsm.setSpatialDomain(self.bBox.getMinPt(), self.bBox.getMaxPt()) lsm.readGeometry(self.lsmGeomFileName) if (self.is2d()): lsm.force2dComputations() lsm.createInteractionGroup(self.bondPrms) lsm.createInteractionGroup(self.frictionPrms) lsm.createExclusion(self.bondPrms.getName(), self.frictionPrms.getName()) lsm.createDamping(self.dampingPrms) if (self.is2d()): lsm.readMesh2D(self.meshFileName, self.getMeshName(), 20) else: lsm.readMesh(self.meshFileName, self.getMeshName()) lsm.createInteractionGroup(self.bondedMeshPrms) lsm.createCheckPointer(self.chkptPrms) class LsmSimpleGouge(LsmMpiEscript): def __init__(self, gougePrms): self.gougePrms = gougePrms LsmMpiEscript.__init__( self, self.gougePrms.getNumWorkerProcesses(), self.gougePrms.getMpiDimList() ) self.initialise() def initialise(self): self.gougePrms.initialise(self) def is2d(self): return self.gougePrms.is2d() def getDim(self): return self.gougePrms.getDim() def getMeshFileName(self): return self.gougePrms.getMeshFileName() def getMeshName(self): return self.gougePrms.getMeshName() def visitRefStressPairs(self, visitor): if (self.is2d): LsmMpiEscript.visitRefStressPairs2d(self, self.getMeshName(), visitor) else: LsmMpiEscript.visitRefStressPairs(self, self.getMeshName(), visitor) def visitNodeRefs(self, visitor): if (self.is2d): LsmMpiEscript.visitNodeRefs2d(self, self.getMeshName(), visitor) else: LsmMpiEscript.visitNodeRefs(self, self.getMeshName(), visitor) def moveNodeBy(self, nodeRef, displacement): self.moveSingleMeshNodeBy(self.getMeshName(), nodeRef, displacement) class EscriptGougePrms: def __init__( self, lameLambda, # Lame coeff lameMu, # Lame coeff density = 1.0, viscosity = 0.0, pressure = 0.001, shearForce = 0.005, maxTime = 1000, timeStepSize = 0.05, saveDxIncr = 10, outputDir = "." ): self.lameLambda = lameLambda self.lameMu = lameMu self.density = density self.viscosity = viscosity self.pressure = pressure self.shearForce = shearForce self.maxTime = maxTime self.timeStepSize = timeStepSize self.outputDir = outputDir self.saveDxIncr = saveDxIncr class NodeRefVisitor: def __init__(self, data, lsm): self.data = data self.lsm = lsm def visitNodeRef(self, nodeRef): displArray = numarray.array([0.0]*self.lsm.getDim()) self.data.getRefValue(nodeRef, displArray) displVec = Vec3() for i in range(0, self.lsm.getDim()): displVec[i] = displArray[i] getLogger().debug("Moving node " + str(nodeRef) + " by " + str(displVec)) self.lsm.moveNodeBy(nodeRef, displVec) class RefStressVisitor: def __init__(self, data, dim): self.data = data self.dim = dim def visitRefStressPair(self, ref, stressVec): getLogger().debug("Setting stress on boundary element " + str(ref) + " to " + str(stressVec)) self.data.setRefValue( ref, numarray.array(stressVec.toList()[0:self.dim]) ) class EscriptSimpleGouge: def __init__(self, lsm, prms=None): self.lsm = lsm self.prms = prms if (self.prms == None): self.initialisePrmsFromLsm() def initialisePrmsFromLsm(self): pass def getDim(self): return self.lsm.getDim() def getMeshFileName(self): return self.lsm.getMeshFileName() def updateImpactStresses(self, stressData): if (self.lsm != None): self.lsm.visitRefStressPairs( RefStressVisitor(data=stressData, dim=self.lsm.getDim()) ) def updateLsmMeshPosn(self, displacementData): if (self.lsm != None): self.lsm.visitNodeRefs(NodeRefVisitor(displacementData, self.lsm)) def run(self): # material parameter lam = self.prms.lameLambda mu = self.prms.lameMu rho = self.prms.density nu = self.prms.viscosity # set up boundary conditions pres = self.prms.pressure shear = self.prms.shearForce getLogger().info("Reading mesh from " + self.getMeshFileName()) domain=ReadMesh(self.getMeshFileName()) impact_forces=escript.Vector(0,FunctionOnBoundary(domain)) impact_forces.expand() getLogger().info("Shape = " + str(impact_forces.getShape())) x=FunctionOnBoundary(domain).getX() getLogger().info("Initialising pressure and shearing boundary conditions...") snapDist = 0.001 external_forces = \ (abs(x[1]-sup(x[1]))-snapDist).whereNegative()*[-shear,-pres] \ + \ (abs(x[1]-inf(x[1]))-snapDist).whereNegative()*[shear,pres] getLogger().info("Setting up PDE...") mypde = LinearPDE(domain) mypde.setLumpingOn() mypde.setValue(D=rho*identity(mypde.getDim())) getLogger().info("Initialising solution at t=0...") u = Vector(0,ContinuousFunction(domain)) u_last = Vector(0,ContinuousFunction(domain)) v = Vector(0,ContinuousFunction(domain)) v_last = Vector(0,ContinuousFunction(domain)) a = Vector(0,ContinuousFunction(domain)) a_last = Vector(0,ContinuousFunction(domain)) # initialise iteration prms tend = self.prms.maxTime dt = self.prms.timeStepSize # dt=1./5.*sqrt(rho/(lam+2*mu))*Lsup(domain.getSize()) getLogger().info("time step size = " + str(dt)) n=0 t=0 getLogger().info("Beginning iteration...") while (t < tend): getLogger().info("Running LSM time step..."); self.lsm.runTimeStep() getLogger().info("Updating impact forces from LSM..."); self.updateImpactStresses(impact_forces) getLogger().info( "(inf(impactForces), sup(impact_forces)) = (" + \ str(inf(impact_forces)) + ", " + str(sup(impact_forces)) + ")" ) # ... update FEM ... getLogger().info("Initialising PDE coefficients...") g=grad(u) stress=(lam*trace(g))*identity(mypde.getDim())+mu*(g+transpose(g)) mypde.setValue( X = -(1.0/(1.0+(nu*dt/2.0)))*stress, Y = - nu*v_last-(nu*dt/2.0)*a_last, y=external_forces+impact_forces ) getLogger().info("Solving PDE...") a=mypde.getSolution() getLogger().info("Updating displacements...") # u_new=2*u-u_last+dt**2*a # u_last=u # u=u_new v_new = v_last + (dt/2.0)*(a + a_last) v_last = v v = v_new u_new = u_last + dt*v + ((dt**2)/2.0)*a u_last = u u = u_new a_last = a getLogger().info("Updating LSM mesh node positions...") displacement = u - u_last self.updateLsmMeshPosn(displacement) t+=dt n+=1 getLogger().info(str(n) + "-th time step, t=" + str(t)) getLogger().info("a=" + str(inf(a)) + ", " + str(sup(a))) getLogger().info("u=" + str(inf(u)) + ", " + str(sup(u))) getLogger().info("inf(u-u_last) = " + str(inf(displacement))) getLogger().info("sup(u-u_last) = " + str(sup(displacement))) # ... save current acceleration and displacement if ((self.prms.saveDxIncr > 0) and ((n%self.prms.saveDxIncr) == 0)): u.saveDX(os.path.join(self.prms.outputDir, "displ.%i.dx"%(n/self.prms.saveDxIncr))) class SimpleGouge: def __init__( self, lsmGougePrms, escriptPrms ): self.lsmPrms = lsmGougePrms self.escriptPrms = escriptPrms def run(self): lsm = LsmSimpleGouge(self.lsmPrms) escriptSim = EscriptSimpleGouge(lsm, self.escriptPrms) escriptSim.run() ./Python/esys/lsm/sim/coupled/DxToVtkConverter.py0000664000175000017500000000623612176660653021735 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# import MeshToVtkConverter from MeshToVtkConverter import CellList from MeshToVtkConverter import Node, NodeList from MeshToVtkConverter import UnstructuredGrid, ParseError import re import string class Cell(MeshToVtkConverter.Cell): def getIndexMapList(self): return range(0, len(self.nodeIdList)) class DxObject: def __init__(self, id, dxClass, type, rank, shape, items): self.id = id self.dxClass = dxClass self.type = type self.rank = rank self.shape = shape self.items = items def getNumItems(self): return self.items class DxData: def __init__(self): self.cellList = CellList() self.nodeList = NodeList() self.f = None def findNextObjectLine(self): regex = re.compile( "\s*object\s+(\d+)\s+class\s+(.+)\s+type\s+(.+)\s+rank\s+(\d+)\s+" +\ "shape\s+(\d+)\s+items\s+(\d+)\s+data\s+follows" ) line = self.f.readline() match = regex.match(line) while ((len(line) > 0) and (match == None)): line = self.f.readline() match = regex.match(line) if (match != None): return \ DxObject( id = int(match.group(1)), dxClass = match.group(2), type = match.group(3), rank = int(match.group(4)), shape = int(match.group(5)), items = int(match.group(6)) ) else: raise ParseError("Object match not found.") def readNodes(self): dxObject = self.findNextObjectLine() for i in range(0, dxObject.getNumItems()): self.nodeList.append(Node(ptLine=self.f.readline())) def readCells(self): dxObject = self.findNextObjectLine() for i in range(0, dxObject.getNumItems()): self.cellList.append(Cell(nodeIdLine=self.f.readline())) def getPosition(self, line): return map(float, string.split(string.strip(line), " ")) def translateNodes(self): dxObject = self.findNextObjectLine() for i in range(0, dxObject.getNumItems()): self.nodeList[i].translateBy(self.getPosition(self.f.readline())) def read(self, fileName): self.f = file(fileName, "r") self.readNodes() self.readCells() self.translateNodes() def writeVtkXml(self, fileName): UnstructuredGrid(self.nodeList, self.cellList).writeVtkXml(fileName) ./Python/esys/lsm/sim/__init__.py0000664000175000017500000000135412176660653016602 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# from WavePropagation import * import WavePropagation ./Python/esys/lsm/sim/WavePropagationPy.h0000664000175000017500000000150012176660653020252 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_WAVEPROPAGATION_H #define ESYS_WAVEPROPAGATION_H namespace esys { namespace lsm { void exportWavePropagation(); } } #endif ./Python/esys/lsm/sim/WavePropagationPy.cpp0000664000175000017500000000767512176660653020630 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include #include "Parallel/LatticeMaster.h" #include "Python/BoostPythonUtil/ListConverter.h" #include "Python/esys/lsm/sim/WavePropagationPy.h" #include "Python/esys/lsm/LsmMpiPy.h" namespace esys { namespace lsm { class ParticleDataWriter { public: ParticleDataWriter(const std::string &fileName) : m_oStream(fileName.c_str()) { } template void visitParticle(const TmplParticle &p) { m_oStream << p.getPos() << " " << p.getPos()-p.getInitPos() << " " << p.getVel() << "\n"; } template void visitRotParticle(const TmplParticle &p) { visitParticle(p); } template void visitRotParticleVi(const TmplParticle &p) { visitParticle(p); } template void visitRotThermParticle(const TmplParticle &p) { visitParticle(p); } private: std::ofstream m_oStream; }; class WavePropagationPy : public LsmMpiPy { public: WavePropagationPy(int numWorkers, const boost::python::list &dimList) : LsmMpiPy(numWorkers, dimList) { } void writeParticleDataToFilePyIdList( const boost::python::list &idList, const std::string &fileName ) { ParticleDataWriter visitor(fileName); getLatticeMaster().visitParticles( bpu::listToVector(idList), visitor ); } void writeParticleDataToFile( const std::string &fileName ) { ParticleDataWriter visitor(fileName); getLatticeMaster().visitParticles( m_idVector, visitor ); } void setParticleDataIdList(const boost::python::list &idList) { m_idVector = bpu::listToVector(idList); } boost::python::list getParticleDataIdList() const { return bpu::vectorToList(m_idVector); } private: typedef std::vector IdVector; IdVector m_idVector; }; void exportWavePropagation() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "WavePropagation", boost::python::init() ) .def( "writeParticleDataToFile", &WavePropagationPy::writeParticleDataToFile ) .def( "writeParticleDataToFile", &WavePropagationPy::writeParticleDataToFilePyIdList ) .def( "setParticleDataIdList", &WavePropagationPy::setParticleDataIdList ) .def( "getParticleDataIdList", &WavePropagationPy::getParticleDataIdList ) ; } } } ./Python/esys/lsm/sim/Makefile.am0000664000175000017500000000264412176660653016530 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am AM_CPPFLAGS += $(SILO_CPPFLAGS) AM_LDFLAGS += $(SILO_LDFLAGS) lsmsim_PYTHON = \ __init__.py \ WavePropagation.py if ESCRIPT_ENABLED COUPLED = coupled endif SUBDIRS = $(COUPLED) ## lsmsim_LTLIBRARIES = libWavePropagationPy.la WavePropagationPy.la libWavePropagationPy_la_LDFLAGS = -shared libWavePropagationPy_la_SOURCES = \ WavePropagationPy.cpp WavePropagationPy.h libWavePropagationPy_la_LIBADD = \ $(top_builddir)/Python/esys/lsm/libLsmPy.la WavePropagationPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) WavePropagationPy_la_SOURCES = ExportModuleWavePropagation.cpp WavePropagationPy_la_LIBADD = libWavePropagationPy.la ./Python/esys/lsm/InteractionParamsPy.cpp0000664000175000017500000020632212176660653020343 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/InteractionParamsPy.h" #include "Python/esys/lsm/util/Vec3Py.h" namespace esys { namespace lsm { InteractionPrmsPy::InteractionPrmsPy() { } /*! constructor for DampingPrmsPy \param type the type of damping, "Damping" or "RotDamping" \param name \param viscosity the damping constant \param dt the time step \param maxIteration the maximum number of iterations */ DampingPrmsPy::DampingPrmsPy( const std::string &type, const std::string &name, double viscosity, int maxIterations ) : CDampingIGP(type,name, viscosity, 0.0, maxIterations) { } LinDampingPrmsPy::LinDampingPrmsPy( const std::string &name, double viscosity, int maxIterations ) : DampingPrmsPy("Damping", name, viscosity, maxIterations) { } RotDampingPrmsPy::RotDampingPrmsPy( const std::string &name, double viscosity, int maxIterations ) : DampingPrmsPy("RotDamping", name, viscosity, maxIterations) { } LocalDampingPrmsPy::LocalDampingPrmsPy( const std::string &name, double viscosity ) : CLocalDampingIGP ("LocalDamping",name,viscosity,0.0) { } RotLocalDampingPrmsPy::RotLocalDampingPrmsPy( const std::string &name, double viscosity ) : CLocalDampingIGP ("RotLocalDamping",name,viscosity,0.0) { } /*! constructor for ABCDampingPrmsPy \param name \param viscosity the damping constant \param dt the time step \param maxIteration the max. nr of iterations */ ABCDampingPrmsPy::ABCDampingPrmsPy( const std::string &type, const std::string &name, double viscosity, int maxIterations, const Vec3& vref, const Vec3& pos, const Vec3& normal, double c1 ) : ABCDampingIGP(type,name, viscosity, 0.0, maxIterations,vref,pos,normal,c1) { } /*! constructor with scaling parameter for NRotBondPrmsPy \param name \param normalK \param breakDistance \param aTag \param scaling scaling of normal stiffness with particle size */ NRotBondPrmsPy::NRotBondPrmsPy( const std::string &name, double normalK, double breakDistance, int aTag, bool scaling ) : CBondedIGP(name, aTag, normalK, breakDistance,scaling) { } /*! Constructor without scaling parameter for NRotBondPrmsPy. Scaling is set to "true" by default and a warning message is given. \param name \param normalK \param breakDistance \param aTag */ NRotBondPrmsPy::NRotBondPrmsPy( const std::string &name, double normalK, double breakDistance, int aTag ) : CBondedIGP(name, aTag, normalK, breakDistance,true) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " NRotBondedPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! constructor for CappedNRotBondPrmsPy \param name \param normalK \param breakDistance \param maxForce \param aTag */ CappedNRotBondPrmsPy::CappedNRotBondPrmsPy( const std::string &name, double normalK, double breakDistance, double maxForce, int aTag ) : CCappedBondedIGP(name, aTag, normalK, breakDistance,maxForce) { } /*! constructor for NRotShortBondPrmsPy \param name \param normalK \param breakDistance \param aTag */ NRotShortBondPrmsPy::NRotShortBondPrmsPy( const std::string &name, double normalK, double breakDistance, int aTag ) : CBondedIGP(name, aTag, normalK, breakDistance) { } /*! constructor for NRotElasticPrmsPy \param name \param normalK \param scaling scaling of normal stiffness with particle size */ NRotElasticPrmsPy::NRotElasticPrmsPy( const std::string &name, double normalK, bool scaling ) : CElasticIGP(name, normalK, scaling) { } /*! Constructor without scaling parameter for NRotElasticPrmsPy. Scaling is set to "true" by default and a warning message is given. \param name \param normalK */ NRotElasticPrmsPy::NRotElasticPrmsPy( const std::string &name, double normalK ) : CElasticIGP(name, normalK) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " NRotElasticPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! constructor for HertzianElasticPrmsPy \param name \param E Youngs Modulus \param nu poisson ratio */ HertzianElasticPrmsPy::HertzianElasticPrmsPy( const std::string &name, double E, double nu ) : CHertzianElasticIGP(name, E, nu) {} /*! constructor for HertzianViscoElasticFrictionPrmsPy \param name \param A Damping Constant \param E Youngs Modulus \param nu poisson ratio \param dynamicMu friction coefficient \param shearK spring constant */ HertzianViscoElasticFrictionPrmsPy::HertzianViscoElasticFrictionPrmsPy( const std::string &name, double A, double E, double nu, double dynamicMu, double shearK ) : CHertzianViscoElasticFrictionIGP(name, A, E, nu, dynamicMu, shearK, 0.0) {} /*! constructor for HertzianViscoElasticPrmsPy \param name \param A Damping Constant \param E Youngs Modulus \param nu poisson ratio */ HertzianViscoElasticPrmsPy::HertzianViscoElasticPrmsPy( const std::string &name, double A, double E, double nu ) : CHertzianViscoElasticIGP(name, A, E, nu) {} /*! constructor for LinearDashpotPrmsPy \param name \param damp damping coefficient ("viscosity") \param cutoff interaction range, relative to particle radii */ LinearDashpotPrmsPy::LinearDashpotPrmsPy( const std::string &name, double damp, double cutoff ) : CLinearDashpotIGP(name, damp, cutoff) {} /*! constructor for NRotFrictionPrmsPy \param name \param normalK \param dynamicMu \param shearK \param scaling scaling of normal stiffness with particle size */ NRotFrictionPrmsPy::NRotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK, bool scaling ) :CFrictionIGP(name, normalK, dynamicMu, shearK, 0.0,scaling) { } /*! Constructor without scaling parameter for NRotFrictionPrmsPy. Scaling is set to "true" by default and a warning message is given. \param name \param normalK \param dynamicMu \param shearK */ NRotFrictionPrmsPy::NRotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK ) : CFrictionIGP(name, normalK, dynamicMu, shearK, 0.0,false) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " NRotFrictionPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! Constructor without scaling parameter for RotBondPrmsPy. Scaling is set to "true" by default and a warning message is given. \param name \param normalK \param shearK \param torsionK \param bendingK \param normalBrkForce \param shearBrkForce \param torsionBrkForce \param bendingBrkForce \param aTag */ RotBondPrmsPy::RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag ) : CRotBondedIGP( name,normalK,shearK,torsionK,bendingK,normalBrkForce,shearBrkForce, torsionBrkForce,bendingBrkForce,aTag,true,true,1.0) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " RotBondPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! constructor for RotBondPrmsPy \param name \param normalK \param shearK \param torsionK \param bendingK \param normalBrkForce \param shearBrkForce \param torsionBrkForce \param bendingBrkForce \param aTag \param scaling scaling of normal stiffness with particle size */ RotBondPrmsPy::RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling ) : CRotBondedIGP( name,normalK,shearK,torsionK,bendingK,normalBrkForce,shearBrkForce, torsionBrkForce,bendingBrkForce,aTag,scaling,true,1.0) { } /*! constructor for RotBondPrmsPy \param name \param normalK \param shearK \param torsionK \param bendingK \param normalBrkForce \param shearBrkForce \param torsionBrkForce \param bendingBrkForce \param aTag \param scaling scaling of normal stiffness with particle size \param meanR_scaling scales stiffness using mean of two particles sizes instead of the minimum particle size */ RotBondPrmsPy::RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling, bool meanR_scaling ) : CRotBondedIGP( name,normalK,shearK,torsionK,bendingK,normalBrkForce,shearBrkForce, torsionBrkForce,bendingBrkForce,aTag,scaling,meanR_scaling,1.0) { } /*! constructor for RotBondPrmsPy \param name \param normalK \param shearK \param torsionK \param bendingK \param normalBrkForce \param shearBrkForce \param torsionBrkForce \param bendingBrkForce \param aTag \param scaling scaling of normal stiffness with particle size \param meanR_scaling scales stiffness using mean of two particles sizes instead of the minimum particle size \param truncated a factor determining amount by which tensile strength is truncated in the failure criterion. */ RotBondPrmsPy::RotBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, int aTag, bool scaling, bool meanR_scaling, double truncated ) : CRotBondedIGP( name,normalK,shearK,torsionK,bendingK,normalBrkForce,shearBrkForce, torsionBrkForce,bendingBrkForce,aTag,scaling,meanR_scaling,truncated) { } /*! constructor for RotThermBondPrmsPy \param name \param normalK \param shearK \param torsionK \param bendingK \param normalBrkForce \param shearBrkForce \param torsionBrkForce \param bendingBrkForce \param diffusivity \param aTag */ RotThermBondPrmsPy::RotThermBondPrmsPy( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double normalBrkForce, double shearBrkForce, double torsionBrkForce, double bendingBrkForce, double diffusivity, int aTag ) : CRotThermBondedIGP( name,normalK,shearK,torsionK,bendingK, normalBrkForce,shearBrkForce,torsionBrkForce,bendingBrkForce, diffusivity,aTag ) { std::cerr << " -- WARNING : EXPERIMENTAL FEATURE --- " << std::endl; std::cerr << " RotThermBond interactions are not fully tested yet " << std::endl; std::cerr << " Use at your own risk " << std::endl; } /*! constructor for BrittleBeamPrmsPy \param name \param youngsModulus \param poissonsRatio \param cohesion \param tanAngle \param aTag */ BrittleBeamPrmsPy::BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag ) : CRotBondedIGP( name,youngsModulus,poissonsRatio,cohesion,tanAngle,aTag,true,1.0) { } /*! constructor for BrittleBeamPrmsPy \param name \param youngsModulus \param poissonsRatio \param cohesion \param tanAngle \param aTag \param meanR_scaling */ BrittleBeamPrmsPy::BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag, bool meanR_scaling ) : CRotBondedIGP( name,youngsModulus,poissonsRatio,cohesion,tanAngle,aTag,meanR_scaling,1.0) { } /*! constructor for BrittleBeamPrmsPy \param name \param youngsModulus \param poissonsRatio \param cohesion \param tanAngle \param aTag \param meanR_scaling \param truncated */ BrittleBeamPrmsPy::BrittleBeamPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int aTag, bool meanR_scaling, double truncated ) : CRotBondedIGP( name,youngsModulus,poissonsRatio,cohesion,tanAngle,aTag,meanR_scaling,truncated) { } FrictionPrmsPy::FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient bool rigid, bool meanR_scaling ) : CRotFrictionIGP(name, youngsModulus, poissonsRatio, dynamicMu, staticMu, 0.0, rigid, meanR_scaling) { } FrictionPrmsPy::FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient bool rigid ) : CRotFrictionIGP(name, youngsModulus, poissonsRatio, dynamicMu, staticMu, 0.0, rigid, true) { } FrictionPrmsPy::FrictionPrmsPy( const std::string &name, double youngsModulus, double poissonsRatio, double dynamicMu, // sliding frictional coefficient double staticMu // max static frictional coefficient ) : CRotFrictionIGP(name, youngsModulus, poissonsRatio, dynamicMu, staticMu, 0.0, false, true) { } /*! Constructor for RotFrictionPrmsPy \param name \param normalK \param dynamicMu \param staticMu \param shearK */ RotFrictionPrmsPy::RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK ) : CRotFrictionIGP(name, normalK, dynamicMu, staticMu, shearK, 0.0, true, false, true) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " RotFrictionPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! Constructor for RotFrictionPrmsPy \param name \param normalK \param dynamicMu \param staticMu \param shearK \param scaling scaling of normal stiffness with particle size */ RotFrictionPrmsPy::RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling ) : CRotFrictionIGP(name, normalK, dynamicMu, staticMu, shearK, 0.0, scaling, false, true) { } RotFrictionPrmsPy::RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling, bool rigid ) : CRotFrictionIGP(name, normalK, dynamicMu, staticMu, shearK, 0.0, scaling, rigid, true) { } RotFrictionPrmsPy::RotFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, bool scaling, bool rigid, bool meanR_scaling ) : CRotFrictionIGP(name, normalK, dynamicMu, staticMu, shearK, 0.0, scaling, rigid, meanR_scaling) { } /*! Constructor for RotThermFrictionPrmsPy \param name \param normalK \param dynamicMu \param staticMu \param shearK \param diffusivity */ RotThermFrictionPrmsPy::RotThermFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, // sliding frictional coefficient double staticMu, // max static frictional coefficient double shearK, double diffusivity ) : CRotThermFrictionIGP( name, normalK, dynamicMu, staticMu, shearK, diffusivity, 0.0 ) { std::cerr << " -- WARNING : EXPERIMENTAL FEATURE --- " << std::endl; std::cerr << " RotThermFriction interactions are not fully tested yet " << std::endl; std::cerr << " Use at your own risk " << std::endl; } /*! Constructor for RotElasticPrmsPy \param name \param normalK */ RotElasticPrmsPy::RotElasticPrmsPy( const std::string &name, double normalK ) : CRotElasticIGP(name, normalK, true) { std::cerr << "\n--- WARNING ---\n"; std::cerr << "ESyS-Particle 2.0 by default scales elastic stiffness"; std::cerr << " according to particle dimensions.\n"; std::cerr << "To disable scaling set \"scaling=False\" in the"; std::cerr << " RotFrictionPrms argument list.\n"; std::cerr << "To remove this warning set \"scaling=True\".\n"; std::cerr << "For more information about scaling"; std::cerr << " refer to the ESyS-Particle Tutorial available at:\n"; std::cerr << "https://twiki.esscc.uq.edu.au/bin/view/"; std::cerr << "ESSCC/DocumentationAndPresentations\n" << endl; } /*! Constructor for RotElasticPrmsPy \param name \param normalK \param scaling scaling of normal stiffness with particle size */ RotElasticPrmsPy::RotElasticPrmsPy( const std::string &name, double normalK, bool scaling ) : CRotElasticIGP(name, normalK, scaling) { } /*! constructor for RotThermElasticPrmsPy \param name \param normalK \param diffusivity */ RotThermElasticPrmsPy::RotThermElasticPrmsPy( const std::string &name, double normalK, double diffusivity ) : CRotThermElasticIGP(name, normalK, diffusivity) { std::cerr << " -- WARNING : EXPERIMENTAL FEATURE --- " << std::endl; std::cerr << " RotThermElastic interactions are not fully tested yet " << std::endl; std::cerr << " Use at your own risk " << std::endl; } /*! constructor for GravityPrmsPy \param name \param accel the graviational acceleration */ GravityPrmsPy::GravityPrmsPy(const std::string &name,const Vec3Py& accel) : GravityIGP(name, accel) { } /*! constructor for BuoyancyPrmsPy \param name \param accel the graviational acceleration */ BuoyancyPrmsPy::BuoyancyPrmsPy(const std::string &name,const Vec3Py& accel, const double& fluidDensity, const double& fluidHeight) : BuoyancyIGP(name, accel, fluidDensity, fluidHeight) { } /*! constructor for VWFrictionPrmsPy \param name \param normalK \param dynamicMu \param shearK \param alpha */ VWFrictionPrmsPy::VWFrictionPrmsPy( const std::string &name, double normalK, double dynamicMu, double shearK, double alpha ) : VWFrictionIGP(name, normalK, dynamicMu, shearK, 0.0, alpha) { } using boost::python::arg; /*! export the interfaces to Python via boost */ void exportInteractionPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "InteractionPrms", "Base class for interaction parameters.", boost::python::init<>() ) ; boost::python::class_ >( "DampingPrms", "Viscous damping parameters.", boost::python::init( ( arg("type"), arg("name"), arg("viscosity"), arg("maxIterations")=100 ), "Parameters defining damping of individual particle motions or rotations\n" "@type type: string\n" "@kwarg type: Type of damping: 'Damping', 'RotDamping'\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Viscosity coefficient for damping\n" "@type maxIterations: int\n" "@kwarg maxIterations: maximum number of viscosity iterations\n" ) ); boost::python::class_ >( "LinDampingPrms", "Linear velocity damping parameters.", boost::python::init( ( arg("name"), arg("viscosity"), arg("maxIterations")=100 ), "Parameters defining damping of individual particle motions\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Viscosity coefficient for damping\n" "@type maxIterations: int\n" "@kwarg maxIterations: maximum number of viscosity iterations\n" ) ); boost::python::class_ >( "RotDampingPrms", "Rotational/angular velocity damping parameters.", boost::python::init( ( arg("name"), arg("viscosity"), arg("maxIterations")=100 ), "Parameters defining damping of individual particle rotations\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Viscosity coefficient for damping\n" "@type maxIterations: int\n" "@kwarg maxIterations: maximum number of viscosity iterations\n" ) ); boost::python::class_ >( "LocalDampingPrms", "Local damping parameters for translational hysteretic damping.", boost::python::init( ( arg("name"), arg("viscosity") ), "Parameters defining hysteretic damping of individual particle motions\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Damping coefficient\n" ) ) ; boost::python::class_ >( "RotLocalDampingPrms", "Local damping parameters for rotational hysteretic damping.", boost::python::init( ( arg("name"), arg("viscosity") ), "Parameters defining hysteretic damping of individual particle rotations\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Damping coefficient\n" ) ) ; boost::python::class_ >( "ABCDampingPrms", "Class defining Viscous damping parameters for absorbing boundary conditions.", boost::python::init( ( arg("type"), arg("name"), arg("viscosity"), arg("maxIterations"), arg("Vref"), arg("pos"), arg("normal"), arg("c1") ), "Parameters defining absorbing boundary conditions.\n" "@type type: string\n" "@kwarg type: Type of damping: 'Damping', 'RotDamping'\n" "@type name: string\n" "@kwarg name: Name of the interaction\n" "@type viscosity: float\n" "@kwarg viscosity: Viscosity coefficient for damping\n" "@type maxIterations: int\n" "@kwarg maxIterations: maximum number of viscosity iterations\n" "@type Vref: vec3\n" "@kwarg Vref: reference velocity\n" "@type pos: vec3\n" "@kwarg pos: position of origin of absorbing boundary plane\n" "@type normal: vec3\n" "@kwarg normal: normal vector of absorbing boundary plane\n" "@type c1: float\n" "@kwarg c1: exponent defining rate of decay of damping with distance from absorbing boundary plane\n" ) ) ; boost::python::class_ >( "NRotBondPrms", "Parameters for linear elastic bonded interactions with a specified breaking distance (or strain).", boost::python::init( ( arg("name"), arg("normalK"), arg("breakDistance"), arg("tag"), arg("scaling") ), "Parameters for breakable linear elastic bonded interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type breakDistance: float\n" "@kwarg breakDistance: When particles are separated by this distance" " the bond breaks.\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), normal stiffness is scaled" " with with particle size.\n" ) ) .def(boost::python::init( ( arg("name"), arg("normalK"), arg("breakDistance"), arg("tag") ) )) .def( "getName", &NRotBondPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "CappedNRotBondPrms", "Parameters defining linear elastic bonded interactions with a capped separation distance.", boost::python::init( ( arg("name"), arg("normalK"), arg("breakDistance"), arg("maxForce"), arg("tag") ), "Parameters for capped linear elastic bonded interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type breakDistance: float\n" "@kwarg breakDistance: When particles are separated by this distance" " the bond breaks.\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" ) ) .def( "getName", &CappedNRotBondPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "NRotShortBondPrms", "Parameters for short linear elastic bond interactions. A bonded interaction where the equilibrium distance is determined by the initial separation of the particles, thus permitting overlapping particles.", boost::python::init( ( arg("name"), arg("normalK"), arg("breakDistance"), arg("tag") ), "Parameters for short linear elastic bonded interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type breakDistance: float\n" "@kwarg breakDistance: When particles are separated by this distance" " the bond breaks.\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" ) ) .def( "getName", &NRotShortBondPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "NRotElasticPrms", "Parameters for linear elastic contact interactions.", boost::python::init( ( arg("name"), arg("normalK"), arg("scaling") ), "Parameters for linear elastic contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), normal stiffness is scaled" " with particle size.\n" ) ) .def(boost::python::init( ( arg("name"), arg("normalK") ) )) .def( "getName", &NRotElasticPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_ >( "HertzianElasticPrms", "Parameters for Hertzian elastic contact interactions.", boost::python::init( ( arg("name"), arg("E"), arg("nu") ), "Parameters for Hertzian elastic contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type E: float\n" "@kwarg E: Young's modulus used for force calculation.\n" "@type nu: float\n" "@kwarg nu: poisson ratio used for force calculation.\n" ) ) .def( "getName", &HertzianElasticPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_< HertzianViscoElasticFrictionPrmsPy, boost::python::bases >( "HertzianViscoElasticFrictionPrms", "Parameters for Hertzian viscoelastic contact interactions with friction.", boost::python::init< const std::string &, double, double, double, double, double >( ( arg("name"), arg("A"), arg("E"), arg("nu"), arg("dynamicMu"), arg("shearK") ), "Parameters for Hertzian viscoelastic and frictional interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type A: float\n" "@kwarg A: Damping constant used for force calculation.\n" "@type E: float\n" "@kwarg E: Young's modulus used for force calculation.\n" "@type nu: float\n" "@kwarg nu: poisson ratio used for force calculation.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type shearK: float\n" "@kwarg shearK: spring constant used when calculating linear" " viscoelastic shear force.\n" ) ) .def( "getName", &HertzianViscoElasticFrictionPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_< HertzianViscoElasticPrmsPy, boost::python::bases >( "HertzianViscoElasticPrms", "Parameters for Hertzian viscoelastic contact interactions.", boost::python::init( ( arg("name"), arg("A"), arg("E"), arg("nu") ), "Parameters for Hertzian viscoelastic contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type A: float\n" "@kwarg A: Damping constant used for force calculation.\n" "@type E: float\n" "@kwarg E: Young's modulus used for force calculation.\n" "@type nu: float\n" "@kwarg nu: poisson ratio used for force calculation.\n" ) ) .def( "getName", &HertzianViscoElasticPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_< LinearDashpotPrmsPy, boost::python::bases >( "LinearDashpotPrms", "Parameters for linear dashpot interactions. This interaction group can be used in parallel with C{NRotElasticPrms} to define spring-dashpot interactions.", boost::python::init( ( arg("name"), arg("damp"), arg("cutoff") ), "Define parameters for linear dashpot interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type damp: float\n" "@kwarg damp: damping coefficient (viscosity) used for force" " calculation.\n" "@type cutoff: float\n" "@kwarg cutoff: interaction range relative to particle radii.\n" ) ) .def( "getName", &LinearDashpotPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_ >( "NRotFrictionPrms", "Parameters for non-rotational friction, a Coulomb frictional" " law with shear-stiffness. Forces are applied at particle centres," " not at the contact point.", boost::python::init( ( arg("name"), arg("normalK"), arg("dynamicMu"), arg("shearK"), arg("scaling") ), "Define parameters for linear elastic frictional contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type shearK: float\n" "@kwarg shearK: spring constant used when calculating linear" " elastic shear force.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), normal stiffness is scaled" " with particle size.\n" ) ) .def(boost::python::init( ( arg("name"), arg("normalK"), arg("dynamicMu"), arg("shearK") ) )) .def( "getName", &NRotFrictionPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions." ) ; boost::python::class_ >( "VWFrictionPrms", "Parameters for velocity weakening friction. Forces are applied at particle centres," " not at the contact point.", boost::python::init< const std::string &, double, double, double, double >( ( arg("name"), arg("normalK"), arg("staticMu"), arg("shearK"), arg("alpha") ), "Define parameters for velocity weakening frictional contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type shearK: float\n" "@kwarg shearK: spring constant used when calculating linear" " elastic shear force.\n" "@type alpha: float\n" "@kwarg alpha: coefficient for the amount of weakening\n" ) ) .def( "getName", &VWFrictionPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "BrittleBeamPrms", "Parameters for rotational bonded interactions based on elastic beam" " theory with a Mohr-Coulomb failure criterion.\n", boost::python::init< const std::string &, double, double, double, double, int, bool, double >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("cohesion"), arg("tanAngle"), arg("tag"), arg("meanR_scaling"), arg("truncated") ), "Parameters defining elastic-brittle beam interactions between bonded particles.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type youngsModulus: float\n" "@kwarg youngsModulus: Youngs Modulus for bonds (stress units).\n" "@type poissonsRatio: float\n" "@kwarg poissonsRatio: Poisson's ratio for bonds (dimensionless).\n" "@type cohesion: float\n" "@kwarg cohesion: Mohr-Coulomb cohesion factor (stress units).\n" "@type tanAngle: float\n" "@kwarg tanAngle: tan(angle of internal friction) for Mohr-Coulomb failure criterion (dimensionless).\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" "@type meanR_scaling: bool\n" "@kwarg meanR_scaling: use mean particle radius instead of " "min particle radius as the radius of bonds\n" "@type truncated: double\n" "@kwarg truncated: factor by which to truncate tensile strength\n" ) ) .def( boost::python::init< const std::string &, double, double, double, double, int, bool >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("cohesion"), arg("tanAngle"), arg("tag"), arg("meanR_scaling") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, int >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("cohesion"), arg("tanAngle"), arg("tag") ) ) ) .def( "getName", &BrittleBeamPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions." ) ; boost::python::class_ >( "FrictionPrms", "Parameters for rotational friction, a Coulomb frictional" " law with shear stiffness. Forces are applied at the contact" " point, which generates moments. Normal and shear stiffnesses are" " specified via a contact Young's Modulus and Poisson's Ratio.", boost::python::init< const std::string &, double, double, double, double >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu") // max static frictional coefficient ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, bool >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("rigid") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, bool, bool >( ( arg("name"), arg("youngsModulus"), arg("poissonsRatio"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("rigid"), arg("meanR_scaling") ), "Parameters defining beam-like frictional interactions between rotational particles.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type youngsModulus: float\n" "@kwarg youngsModulus: elastic contact modulus" " used when calculating linear elastic normal force.\n" "@type poissonsRatio: float\n" "@kwarg poissonsRatio: contact Poisson's Ratio" " used when calculating linear elastic shear force.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type staticMu: float\n" "@kwarg staticMu: friction coefficient which governs the" " transition from static contact to dynamic frictional sliding.\n" "@type rigid: bool\n" "@kwarg rigid: When True (default is False), rigid body rotations of" " touching particle-pairs are taken into account.\n" "@type meanR_scaling: bool\n" "@kwarg meanR_scaling: use mean particle" " radius instead of min particle radius as the radius of bonds.\n" ) ) .def( "getName", &FrictionPrmsPy::getName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "RotElasticPrms", "Parameters defining elastic contacts between rotational particles.", boost::python::init< const std::string &, double, bool >( ( arg("name"), arg("normalK"), arg("scaling") ), "Parameters for rotational elastic contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating linear elastic normal force.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), elastic stiffnesses are scaled" " according to particle dimensions.\n" ) ) .def( boost::python::init< const std::string &, double >( ( arg("name"), arg("normalK") ) ) ) .def( "getName", &RotElasticPrmsPy::getName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "RotFrictionPrms", "Parameters for rotational friction, a Coulomb frictional" " law with shear stiffness. Forces are applied at the contact" " point, which generates moments.", boost::python::init< const std::string &, double, double, double, double >( ( arg("name"), arg("normalK"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("shearK") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, bool >( ( arg("name"), arg("normalK"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("shearK"), arg("scaling") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, bool, bool >( ( arg("name"), arg("normalK"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("shearK"), arg("scaling"), arg("rigid") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, bool, bool, bool >( ( arg("name"), arg("normalK"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("shearK"), arg("scaling"), arg("rigid"), arg("meanR_scaling") ), "Parameters defining frictional interactions between rotational particles.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating linear elastic normal force.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type staticMu: float\n" "@kwarg staticMu: friction coefficient which governs the" " transition from static contact to dynamic frictional sliding.\n" "@type shearK: float\n" "@kwarg shearK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating linear elastic shear force.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), elastic stiffnesses are scaled" " according to particle dimensions.\n" "@type rigid: bool\n" "@kwarg rigid: When True (default is False), rigid body rotations of" " touching particle-pairs are taken into account.\n" "@type meanR_scaling: bool\n" "@kwarg meanR_scaling: use mean particle radius instead of " "min particle radius as the radius of bonds\n" ) ) .def( "getName", &RotFrictionPrmsPy::getName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "RotBondPrms", "Parameters for rotational bonded interactions. Parameters include" " spring constants for normal, shear, torsion and bending forces.\n", boost::python::init< const std::string &, double, double, double, double, double, double, double, double, int >( ( arg("name"), arg("normalK"), arg("shearK"), arg("torsionK"), arg("bendingK"), arg("normalBrkForce"), arg("shearBrkForce"), arg("torsionBrkForce"), arg("bendingBrkForce"), arg("tag") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, double, double, double, double, int, bool >( ( arg("name"), arg("normalK"), arg("shearK"), arg("torsionK"), arg("bendingK"), arg("normalBrkForce"), arg("shearBrkForce"), arg("torsionBrkForce"), arg("bendingBrkForce"), arg("tag"), arg("scaling") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, double, double, double, double, int, bool, bool >( ( arg("name"), arg("normalK"), arg("shearK"), arg("torsionK"), arg("bendingK"), arg("normalBrkForce"), arg("shearBrkForce"), arg("torsionBrkForce"), arg("bendingBrkForce"), arg("tag"), arg("scaling"), arg("meanR_scaling") ) ) ) .def( boost::python::init< const std::string &, double, double, double, double, double, double, double, double, int, bool, bool, double >( ( arg("name"), arg("normalK"), arg("shearK"), arg("torsionK"), arg("bendingK"), arg("normalBrkForce"), arg("shearBrkForce"), arg("torsionBrkForce"), arg("bendingBrkForce"), arg("tag"), arg("scaling"), arg("meanR_scaling"), arg("truncated") ), "Parameters defining brittle-elastic interactions between rotational particles.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating linear elastic normal force.\n" "@type shearK: float\n" "@kwarg shearK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating linear elastic shear force.\n" "@type torsionK: float\n" "@kwarg torsionK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating elastic torsion force.\n" "@type bendingK: float\n" "@kwarg bendingK: elastic contact modulus if C{scaling} is True" " (default) or spring constant if C{scaling} is False, used when" " calculating elastic bending force.\n" "@type normalBrkForce: float\n" "@kwarg normalBrkForce: A breaking stress if C{scaling} is True" " (default) or a breaking force if C{scaling} is False.\n" "@type shearBrkForce: float\n" "@kwarg shearBrkForce: A breaking stress if C{scaling} is True" " (default) or a breaking force if C{scaling} is False.\n" "@type torsionBrkForce: float\n" "@kwarg torsionBrkForce: A breaking stress if C{scaling} is True" " (default) or a breaking force if C{scaling} is False.\n" "@type bendingBrkForce: float\n" "@kwarg bendingBrkForce: A breaking stress if C{scaling} is True" " (default) or a breaking force if C{scaling} is False.\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" "@type scaling: bool\n" "@kwarg scaling: When True (default), elastic stiffnesses and" " breaking forces are scaled according to particle dimensions.\n" "@type meanR_scaling: bool\n" "@kwarg meanR_scaling: use mean particle radius instead of " "min particle radius as the radius of bonds\n" "@type truncated: double\n" "@kwarg truncated: factor by which to truncate tensile strength\n" ) ) .def( "getName", &RotBondPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "RotThermalElasticPrms", "EXPERIMENTAL " "Parameters for linear elastic contact interactions" " with heat transfer.\n", boost::python::init( ( arg("name"), arg("normalK"), arg("diffusivity") ), "Parameters for thermal-elastic contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type diffusivity: float\n" "@kwarg diffusivity: Thermal diffusivity.\n" ) ) .def( "getName", &RotThermElasticPrmsPy::getName, boost::python::return_value_policy() ) ; boost::python::class_ >( "RotThermalFrictionPrms", "EXPERIMENTAL " "Parameters for rotational friction, a Coulomb frictional" " force law with shear stiffness and heat generation due to friction." " Forces are applied at the contact point, which generates moments.\n", boost::python::init< const std::string &, double, double, double, double, double >( ( arg("name"), arg("normalK"), arg("dynamicMu"), // sliding frictional coefficient arg("staticMu"), // max static frictional coefficient arg("shearK"), arg("diffusivity") ), "Parameters for thermal-frictional contact interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type dynamicMu: float\n" "@kwarg dynamicMu: friction coefficient" " when contact is sliding.\n" "@type staticMu: float\n" "@kwarg staticMu: friction coefficient which governs the" " transition from static contact to dynamic frictional sliding.\n" "@type shearK: float\n" "@kwarg shearK: spring constant used when calculating linear" " elastic shear force.\n" "@type diffusivity: float\n" "@kwarg diffusivity: Thermal diffusivity.\n" ) ) .def( "getName", &RotThermFrictionPrmsPy::getName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "RotThermalBondPrms", "EXPERIMENTAL " "Parameters for rotational, thermal bonded interactions.\n", boost::python::init< const std::string &, double, double, double, double, double, double, double, double, double, int >( ( arg("name"), arg("normalK"), arg("shearK"), arg("torsionK"), arg("bendingK"), arg("normalBrkForce"), arg("shearBrkForce"), arg("torsionBrkForce"), arg("bendingBrkForce"), arg("diffusivity"), arg("tag") ), "Parameters for thermal-brittle-elastic bonded interactions.\n" "@type name: string\n" "@kwarg name: Name assigned to this group of interactions.\n" "@type normalK: float\n" "@kwarg normalK: spring constant used when calculating linear" " elastic normal force.\n" "@type shearK: float\n" "@kwarg shearK: spring constant used when calculating linear" " elastic shear force.\n" "@type torsionK: float\n" "@kwarg torsionK: spring constant used when calculating" " elastic torsion force.\n" "@type bendingK: float\n" "@kwarg bendingK: spring constant used when calculating" " elastic bending force.\n" "@type normalBrkForce: float\n" "@kwarg normalBrkForce: When the normal force between particles" " exceeds this amount, the bond breaks." "@type shearBrkForce: float\n" "@kwarg shearBrkForce: When the shear force between particles" " exceeds this amount, the bond breaks." "@type torsionBrkForce: float\n" "@kwarg torsionBrkForce: When the torsion force between particles" " exceeds this amount, the bond breaks." "@type bendingBrkForce: float\n" "@kwarg bendingBrkForce: When the bending force between particles" " exceeds this amount, the bond breaks." "@type diffusivity: float\n" "@kwarg diffusivity: Thermal diffusivity.\n" "@type tag: int\n" "@kwarg tag: Connections which are tagged with C{tag}" " will be created with these parameters.\n" ) ) .def( "getName", &RotThermBondPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions." ) ; boost::python::class_ >( "GravityPrms", "Parameters for describing gravitational body force.", boost::python::init( ( arg("name"), arg("acceleration") ), "Gravitational like body force applied to all particles.\n" "@type name: string\n" "@kwarg name: name of this interaction.\n" "@type acceleration: L{Vec3}\n" "@kwarg acceleration: Acceleration vector (magnitude and direction).\n" ) ) .def( "getName", &GravityPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; boost::python::class_ >( "BuoyancyPrms", "Parameters for describing simple buoyancy body forces.", boost::python::init( ( arg("name"), arg("acceleration"), arg("fluidDensity"), arg("fluidHeight") ), "Simple Buoyancy-like body force applied to all (submerged) particles.\n" "@type name: string\n" "@kwarg name: name of this interaction.\n" "@type acceleration: L{Vec3}\n" "@kwarg acceleration: Acceleration vector (magnitude and direction).\n" "@type fluidDensity: float\n" "@kwarg fluidDensity: density of the fluid.\n" "@type fluidHeight: float\n" "@kwarg fluidHeight: height of the fluid in direction of buoyancy force.\n" ) ) .def( "getName", &GravityPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name assigned to this group of interactions.\n" ) ; } } } ./Python/esys/lsm/RunnablePy.h0000664000175000017500000000172712176660653016135 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Foundation/Runnable.h" namespace esys { namespace lsm { class RunnablePy : public Runnable, public boost::python::wrapper { public: virtual void run(); void defaultRun(); }; void exportRunnable(); } } ./Python/esys/lsm/BondedTriMeshPrmsPy.h0000664000175000017500000000442212176660653017713 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBONDEDTRIMESHPRMSPY_H #define ESYS_LSMBONDEDTRIMESHPRMSPY_H //--- Project includes --- #include "Python/esys/lsm/MeshBuildParamsPy.h" #include "Model/BTriMeshIP.h" //--- STL includes --- #include //--- Boost includes --- #include using std::string; namespace esys { namespace lsm { /*! \class NRotBondedTriMeshPrmsPy \brief class for bonded TriMesh interactions in python interface */ class NRotBondedTriMeshPrmsPy : public BTriMeshIP { private: typedef boost::shared_ptr TagBuildPrmsPtr; typedef boost::shared_ptr GapBuildPrmsPtr; const TagBuildPrmsPtr m_tagPrmsPtr; const GapBuildPrmsPtr m_gapPrmsPtr; public: NRotBondedTriMeshPrmsPy( const string &name, const string &meshName, double normalK, double breakDistance, const MeshTagBuildPrmsPy &buildPrms ); NRotBondedTriMeshPrmsPy( const string &name, const string &meshName, double normalK, double breakDistance, const MeshGapBuildPrmsPy &buildPrms ); bool haveTagBuildPrms() const {return (m_tagPrmsPtr.get() != NULL);}; bool haveGapBuildPrms() const {return (m_gapPrmsPtr.get() != NULL);}; const MeshTagBuildPrmsPy &getTagBuildPrms() const {return *(m_tagPrmsPtr.get());}; const MeshGapBuildPrmsPy &getGapBuildPrms() const {return *(m_gapPrmsPtr.get());}; }; void exportBondedTriMeshPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMBONDEDTRIMESHPRMSPY_H ./Python/esys/lsm/ParticleFieldSaverPrmsPy.h0000664000175000017500000000605112176660653020734 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEFIELDSAVERPRMSPY_H #define ESYS_LSMPARTICLEFIELDSAVERPRMSPY_H #include "Python/esys/lsm/FieldSaverPrmsPy.h" //--- STL includes --- #include //--- Boost includes --- #include namespace esys { namespace lsm { class ParticleFieldSaverPrmsPy : public FieldSaverPrmsPy { public: ParticleFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); private: }; class ParticleScalarFieldSaverPrmsPy : public ParticleFieldSaverPrmsPy { public: ParticleScalarFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; class ParticleVectorFieldSaverPrmsPy : public ParticleFieldSaverPrmsPy { public: ParticleVectorFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); }; class TaggedParticleScalarFieldSaverPrmsPy : public ParticleScalarFieldSaverPrmsPy { private: int m_tag; int m_mask; public: TaggedParticleScalarFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ); int getTag() const {return m_tag;} int getMask() const {return m_mask;} }; class TaggedParticleVectorFieldSaverPrmsPy : public ParticleVectorFieldSaverPrmsPy { private: int m_tag; int m_mask; public: TaggedParticleVectorFieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr, int tag, int mask ); int getTag() const {return m_tag;} int getMask() const {return m_mask;} }; void exportParticleFieldSaverPrms(); } // namespace lsm } // namespace esys #endif ./Python/esys/lsm/geometry/0000775000175000017500000000000012176660653015531 5ustar vborosvboros./Python/esys/lsm/geometry/IteratorPy.hpp0000664000175000017500000000372412176660653020352 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include namespace esys { namespace lsm { template IteratorPy::IteratorPy(const Iterator &it) : m_it(it) { } template typename IteratorPy::value_type IteratorPy::next() { if (m_it.hasNext()) { return m_it.next(); } boost::python::objects::stop_iteration_error(); return m_it.next(); // to avoid compiler warning } template void IteratorPy::exportIterator( const std::string &pythonName, const std::string &pythonDocReturnType ) { boost::python::class_ >( pythonName.c_str(), boost::python::no_init ) .def( "next", &IteratorPy::next, boost::python::return_internal_reference<>(), ( std::string("Returns the next object in the sequence.\n") + "@rtype: L{" + pythonDocReturnType + "}\n" + "@raise StopIteration: if there is no next element." ).c_str() ) .def( "__iter__", boost::python::objects::identity_function(), "Returns self." ) ; } } } ./Python/esys/lsm/geometry/CMakeLists.txt0000664000175000017500000000135512176660653020275 0ustar vborosvboros#=========================================================== ADD_LIBRARY(lsmgeometry SHARED SimpleBlockPy.cpp MiscPy.cpp DistConnectionsPy.cpp TaggedIdConnectionPy.cpp IteratorPy.cpp ParticleCollectionPy.cpp CubicBlockPy.cpp GrainCollectionPy.cpp GrainPy.cpp PackerPy.cpp GougeConfigPrmsPy.cpp GougeConfigPy.cpp HexagBlockPy.cpp SimpleSpherePy.cpp SimpleSphereNeighboursPy.cpp SimpleSphereCollectionPy.cpp) ADD_LIBRARY(GeometryPy SHARED ExportModuleGeometry.cpp) TARGET_LINK_LIBRARIES(lsmgeometry ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) TARGET_LINK_LIBRARIES(GeometryPy ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS lsmgeometry DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) INSTALL(TARGETS GeometryPy DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Python/esys/lsm/geometry/ParticleCollectionPy.h0000664000175000017500000000373312176660653022000 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLECOLLECTIONPY_H #define ESYS_LSMPARTICLECOLLECTIONPY_H #include "Foundation/console.h" #include "Geometry/ParticleCollection.h" #include "Python/esys/lsm/geometry/IteratorPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" namespace esys { namespace lsm { class ParticleCollectionPy : public ParticleCollection { public: typedef ParticleCollection Inherited; typedef Inherited::ParticlePoolPtr ParticlePoolPtr; typedef IteratorPy::ParticleIterator> ParticleIteratorPy; ParticleCollectionPy(); ParticleCollectionPy(const Inherited &particleCollection); ParticleCollectionPy(const ParticleCollectionPy &particleCollection); ParticleCollectionPy(ParticlePoolPtr particlePoolPtr); BoundingBoxPy getParticleBBoxPy() const; ParticleIteratorPy getParticleIteratorPy(); SimpleSpherePy &createParticlePy(const SimpleSpherePy &p); void rotatePy(const Vec3Py &rotation, const Vec3Py &pt); void translateByPy(const Vec3Py &translation); friend class ParticleCollectionPyPickleSuite; private: }; void exportParticleCollection(); } } #endif ./Python/esys/lsm/geometry/IteratorPy.h0000664000175000017500000000257612176660653020016 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMITERATORPY_H #define ESYS_LSMITERATORPY_H #include #include namespace esys { namespace lsm { template < typename TmplIterator > class IteratorPy { public: typedef TmplIterator Iterator; typedef typename Iterator::value_type value_type; IteratorPy(const Iterator &it); /** * Returns the next item in the sequence. */ value_type next(); static void exportIterator( const std::string &pythonName, const std::string &pythonDocReturnType="object" ); private: Iterator m_it; }; } } #include "Python/esys/lsm/geometry/IteratorPy.hpp" #endif ./Python/esys/lsm/geometry/TaggedIdConnectionPy.h0000664000175000017500000000210512176660653021701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMTAGGEDIDCONNECTIONPY_H #define ESYS_LSMTAGGEDIDCONNECTIONPY_H #include "Geometry/BasicInteraction.h" namespace esys { namespace lsm { class TaggedIdConnectionPy : public BasicInteraction { public: TaggedIdConnectionPy(Id id1, Id id2, Tag tag=0); TaggedIdConnectionPy(const TaggedIdConnectionPy &idConn); }; void exportTaggedIdConnection(); } } #endif ./Python/esys/lsm/geometry/MiscPy.h0000664000175000017500000000145312176660653017111 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_MISCPY_H #define ESYS_LSM_MISCPY_H namespace esys { namespace lsm { void exportMisc(); } } #endif ./Python/esys/lsm/geometry/PackerPy.cpp0000664000175000017500000006256312176660653017767 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Foundation/console.h" #include "Python/esys/lsm/geometry/PackerPy.h" #include "Python/BoostPythonUtil/ListConverter.h" namespace esys { namespace lsm { //========================================================================== //========================================================================== //========================================================================== PackerPy::PackerPy(NTablePtr nTablePtr) : Inherited(nTablePtr) { } PackerPy::PackerPy(ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr) : Inherited(particlePoolPtr, nTablePtr) { } PackerPy::SimpleSphereIteratorPy PackerPy::getSimpleSphereIteratorPy() { return Inherited::getParticleIterator(); } SimpleSphereCollectionPy PackerPy::getSimpleSphereCollectionPy() { return getParticleCollection(); } void PackerPy::generate() { this->get_override("generate")(); } //========================================================================== //========================================================================== //========================================================================== BoxPackerPy::BoxPackerPy( ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ) : Inherited( particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance ) { } //========================================================================== //========================================================================== //========================================================================== CubicBoxPackerPy::CubicBoxPackerPy( double radius, const BoundingBoxPy &bBox, const boost::python::list &periodicDimensions, double tolerance ) : Inherited( ParticleGeneratorPtr( new ParticleGenerator(radius) ), ParticlePoolPtr(new ParticlePool(4096)), NTablePtr( new NTable ( bBox, (4.0*radius), // table grid size bpu::listToVector(periodicDimensions), 4*radius ) ), bBox, bpu::listToVector(periodicDimensions), tolerance, radius ) { } //========================================================================== //========================================================================== //========================================================================== RandomSpherePackerPy::RandomSpherePackerPy( double minRadius, double maxRadius, double cubicPackRadius, int maxInsertionFailures, const BoundingSpherePy &bSphere, double tolerance, bool do2d ) : Inherited( ParticleGeneratorPtr(new ParticleGenerator(minRadius, maxRadius)), ParticlePoolPtr(new ParticlePool(4096)), NTablePtr( new NTable ( do2d ? bSphere.get2dBBox() : bSphere.getBBox(), (8.0*minRadius), // table grid size BoolVector(3, false), 4*max(maxRadius, cubicPackRadius) ) ), bSphere, tolerance, cubicPackRadius, maxInsertionFailures, do2d ) { } //========================================================================== //========================================================================== //========================================================================== RandomBoxPackerPy::RandomBoxPackerPy( double minRadius, double maxRadius, double cubicPackRadius, int maxInsertionFailures, const BoundingBoxPy &bBox, const boost::python::list &periodicDimensions, double tolerance ) : Inherited( ParticleGeneratorPtr(new ParticleGenerator(minRadius, maxRadius)), ParticlePoolPtr(new ParticlePool(4096)), NTablePtr( new NTable ( bBox, (8.0*minRadius), // table grid size bpu::listToVector(periodicDimensions), 4*max(maxRadius, cubicPackRadius) ) ), bBox, bpu::listToVector(periodicDimensions), tolerance, cubicPackRadius, maxInsertionFailures ) { } RandomBoxPackerPy::RandomBoxPackerPy( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector ) : Inherited( particleGeneratorPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius, maxInsertionFailures, fitPlaneVector ) { } //========================================================================== //========================================================================== //========================================================================== RndGrainGenPy::RndGrainGenPy( double minGrainRadius, double maxGrainRadius, double minParticleRadius, double maxParticleRadius ) : Inherited(minGrainRadius, maxGrainRadius), m_minParticleRadius(minParticleRadius), m_maxParticleRadius(maxParticleRadius) { } const double &RndGrainGenPy::getMinParticleRadius() const { return m_minParticleRadius; } const double &RndGrainGenPy::getMaxParticleRadius() const { return m_maxParticleRadius; } RndGrainGenPy::Grain RndGrainGenPy::getGrain(const Particle &p) { return this->get_override("getGrain")(p); } GrainRandomBoxPackerPy::GrainRandomBoxPackerPy( ParticleGrainGen &particleGrainGen, double cubicPackRadius, int maxInsertionFailures, const BoundingBox &bBox, const boost::python::list &circDimList, double tolerance ) : Inherited( ParticleGrainGenPtr(), ParticlePoolPtr(new ParticlePool(4096)), NTablePtr( new NTable ( bBox, (8.0*particleGrainGen.getMinGrainRadius()), // table grid size bpu::listToVector(circDimList), 4*max(particleGrainGen.getMinGrainRadius(), cubicPackRadius) ) ), bBox, bpu::listToVector(circDimList), tolerance, cubicPackRadius, maxInsertionFailures ) { setParticleGrainGen(particleGrainGen); } GrainRandomBoxPackerPy::GrainRandomBoxPackerPy( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector, GrainPoolPtr grainPoolPtr ) : Inherited( particleGrainGenPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius, maxInsertionFailures, fitPlaneVector, grainPoolPtr ) { } GrainRandomBoxPackerPy::GrainIteratorPy GrainRandomBoxPackerPy::getGrainIteratorPy() { return Inherited::getGrainIterator(); } const GrainRandomBoxPackerPy::GrainCollection & GrainRandomBoxPackerPy::getGrainCollectionPy() const { return Inherited::getGrainCollection(); } //========================================================================== //========================================================================== //========================================================================== using boost::python::arg; using boost::python::args; using boost::python::return_value_policy; using boost::python::copy_const_reference; using boost::python::return_by_value; using boost::python::pure_virtual; void exportPacker() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "Packer", "Base class for sphere packers." " The L{generate} method is over-ridden in subclasses to" " create sphere packings.", boost::python::no_init ) .def( "getSimpleSphereIterator", &PackerPy::getSimpleSphereIteratorPy, "Returns an iterator which can be used to iterate over all" " spheres in the packing.\n" "@return: iterator" "@rtype: iterable\n" ) .def( "getNumSpheres", &PackerPy::getNumParticles, "Returns the number of spheres generated in the packing.\n" "@rtype: int\n" "@return: number of spheres in packing." ) .def( "getSimpleSphereCollection", &PackerPy::getSimpleSphereCollectionPy, "Returns generated spheres as a L{SimpleSphereCollection}.\n" "@rtype: L{SimpleSphereCollection}" ) .def( "generate", boost::python::pure_virtual(&PackerPy::Inherited::generate), "Causes this I{packer} to create spheres in a packing." ) ; boost::python::class_< BoxPackerBasePy, boost::python::bases, boost::noncopyable > ( "BoxPackerBase", "Base class for L{BoxPacker}.", boost::python::no_init ); boost::python::class_< BoxPackerPy, boost::python::bases, boost::noncopyable > ( "BoxPacker", "Base class of I{packers} which generate packings within a rectangular" " region.", boost::python::no_init ) ; boost::python::class_< CubicBoxPackerBasePy, boost::python::bases, boost::noncopyable> ( "CubicBoxPackerBase", "Base class for L{CubicBoxPacker}.", boost::python::no_init ) ; boost::python::class_< CubicBoxPackerPy, boost::noncopyable, boost::python::bases >( "CubicBoxPacker", "Instances generate a regular cubic close packing of identically" " sized spheres within the confines of a specified box.", boost::python::init< double, const BoundingBoxPy &, const boost::python::list &, double >( ( arg("radius"), arg("bBox"), arg("circDimList")=boost::python::list(bpu::vectorToList(BoolVector(3,false))), arg("tolerance")=0.001 ) , "Constructor.\n" "@type radius: float\n" "@kwarg radius: Radius of generated spheres.\n" "@type bBox: L{BoundingBox}\n" "@kwarg bBox: box specifying the region into which spheres" " are packed. A 2D packing can be generated by specifying a\n" " zero sized I{z} dimension, eg bBox=BoundingBox(Vec3(1,1,0),Vec3(21,21,0))\n" " will generate a 2D packing in the I{x}-I{y} plane.\n" "@type circDimList: list of 3 bool elements\n" "@kwarg circDimList: list indication which (if any) of the box dimensions\n" " is circular (note, only a single dimension may be circular).\n" "@type tolerance: float\n" "@kwarg tolerance: Generated spheres may overlap by no more than\n" " this amount.\n" ) ) .def( "generate", &CubicBoxPackerPy::generate, "Generates cubic packing of spheres." ) ; //======================================================================== boost::python::class_< RndCubicBoxPackerBasePy, boost::python::bases, boost::noncopyable> ( "RndCubicBoxPackerBase", "Base class for L{RandomSpherePacker}.", boost::python::no_init ) ; boost::python::class_< RandomSpherePackerBasePy, boost::python::bases, boost::noncopyable> ( "RandomSpherePackerBase", "Base class for L{RandomSpherePacker}.", boost::python::no_init ) ; boost::python::class_< RandomSpherePackerPy, boost::noncopyable, boost::python::bases >( "RandomSpherePacker", "Instances generate a packing of randomly sized spheres" " within the confines of a specified sphere.", boost::python::init< double, double, double, int, const BoundingSpherePy &, double, bool >( ( arg("minRadius"), arg("maxRadius"), arg("cubicPackRadius"), arg("maxInsertFails"), arg("bSphere"), arg("tolerance")=0.001, arg("do2d")=false ) , "Constructor.\n" "@type minRadius: float\n" "@kwarg minRadius: Minimum radius of generated spheres.\n" "@type maxRadius: float\n" "@kwarg maxRadius: Maximum radius of generated spheres.\n" "@type cubicPackRadius: float\n" "@kwarg cubicPackRadius: Initial randomly sized I{seed} spheres\n" " are generated at positions corresponding to a regular cubic-packed grid\n" " of spheres with radius C{cubicPackRadius}.\n" "@type maxInsertFails: int\n" "@kwarg maxInsertFails: Stopping criterion for terminating the random.\n" " insertion algorithm. Algorithm terminates after C{maxInsertFails}\n" " number of attempts at fitting a randomly generated sphere into the\n" " box.\n" "@type bSphere: L{BoundingSphere}\n" "@kwarg bSphere: Sphere specifying the region into which sub-spheres" " are packed.\n" "@type tolerance: float\n" "@kwarg tolerance: Generated spheres may overlap by no more than\n" " this amount.\n" "@type do2d: bool\n" "@kwarg do2d: All generated spheres are on the M{z=0} plane.\n" ) ) .def( "generate", &RandomSpherePackerPy::generate, "Generates packing of randomly sized spheres." ) ; //======================================================================== boost::python::class_< RandomBoxPackerBasePy, boost::python::bases, boost::noncopyable> ( "RandomBoxPackerBase", "Base class for L{RandomBoxPacker}.", boost::python::no_init ) ; boost::python::class_< RandomBoxPackerPy, boost::noncopyable, boost::python::bases >( "RandomBoxPacker", "Instances generate a packing of randomly sized spheres" " within the confines of a specified box.", boost::python::init< double, double, double, int, const BoundingBoxPy &, const boost::python::list &, double >( ( arg("minRadius"), arg("maxRadius"), arg("cubicPackRadius"), arg("maxInsertFails"), arg("bBox"), arg("circDimList")=boost::python::list(bpu::vectorToList(BoolVector(3,false))), arg("tolerance")=0.001 ) , "Constructor.\n" "@type minRadius: float\n" "@kwarg minRadius: Minimum radius of generated spheres.\n" "@type maxRadius: float\n" "@kwarg maxRadius: Maximum radius of generated spheres.\n" "@type cubicPackRadius: float\n" "@kwarg cubicPackRadius: Initial randomly sized I{seed} spheres\n" " are generated at positions corresponding to a regular cubic-packed grid\n" " of spheres with radius C{cubicPackRadius}.\n" "@type maxInsertFails: int\n" "@kwarg maxInsertFails: Stopping criterion for terminating the random.\n" " insertion algorithm. Algorithm terminates after C{maxInsertFails}\n" " number of attempts at fitting a randomly generated spheres into the\n" " box.\n" "@type bBox: L{esys.lsm.util.FoundationPy.BoundingBox}\n" "@kwarg bBox: box specifying the region into which spheres" " are packed. A 2D packing can be generated by specifying a\n" " zero sized I{z} dimension, eg bBox=BoundingBox(Vec3(1,1,0),Vec3(21,21,0))\n" " will generate a 2D packing in the I{x}-I{y} plane.\n" "@type circDimList: list of 3 bool elements\n" "@kwarg circDimList: list indication which (if any) of the box dimensions\n" " is circular (note, only a single dimension may be circular).\n" "@type tolerance: float\n" "@kwarg tolerance: Generated spheres may overlap by no more than\n" " this amount.\n" ) ) .def( "generate", &RandomBoxPackerPy::generate, "Generates packing of randomly sized spheres." ) ; boost::python::class_ ( "RndGrainGen", "Virtual class used to generate grains for L{GrainRandomBoxPacker} instances.", boost::python::init ( ( arg("minGrainRadius"), arg("maxGrainRadius"), arg("minParticleRadius"), arg("maxParticleRadius") ), "Constructs a grain generator.\n" "@type minGrainRadius: float\n" "@kwarg minGrainRadius: minimum radius for a grain.\n" "@type maxGrainRadius: float\n" "@kwarg maxGrainRadius: maximum radius for a grain.\n" "@type minParticleRadius: float\n" "@kwarg minParticleRadius: minimum radius of a grain subsphere.\n" "@type maxParticleRadius: float\n" "@kwarg maxParticleRadius: maximum radius of a grain subsphere.\n" ) ) .def( "getMinGrainRadius", &RndGrainGenPy::getMinGrainRadius, return_value_policy(), "Returns the desired minimum radius for a grain." ) .def( "getMaxGrainRadius", &RndGrainGenPy::getMaxGrainRadius, return_value_policy(), "Returns the desired maximum radius for a grain." ) .def( "getMinParticleRadius", &RndGrainGenPy::getMinParticleRadius, return_value_policy(), "Returns the minimum radius for grain subsphere." ) .def( "getMaxParticleRadius", &RndGrainGenPy::getMaxParticleRadius, return_value_policy(), "Returns the maximum radius for grain subsphere." ) .def( "getGrain", pure_virtual(&RndGrainGenPy::Inherited::getGrain), ( arg("sphere") ) ) // This second "getGrain" binding is only for storing the Epytext, so that // Epydoc will not report mark-up errors (which happens if the strings // are with the first "getGrain" (pure_virtual) binding). .def( "getGrain", &RndGrainGenPy::Inherited::getGrain, "Method to be overridden in child classes. This method is expected to\n" "return a L{Grain} object which lies entirely within a I{sphere}.\n" "The sphere object passed to this method has C{getRadius} and\n" "C{getCentre} methods.\n" "@type sphere: L{SimpleSphere}\n" "@kwarg sphere: Specifes position and maximum radius of grain which is\n" "to be returned by this method.\n" "@rtype: L{Grain}\n" "@return: A L{Grain} which lies entirely within the specified C{sphere}.\n" ) ; boost::python::class_< GrainCubicBoxPackerPy, boost::python::bases, boost::noncopyable> ( "GrainCubicBoxPacker", "Base class for L{GrainRndBoxPacker}.", boost::python::no_init ) ; boost::python::class_< GrainRndBoxPackerPy, boost::python::bases, boost::noncopyable> ( "GrainRndBoxPacker", "Base class for L{GrainRandomBoxPackerBase}.", boost::python::no_init ) ; boost::python::class_< GrainRandomBoxPackerBasePy, boost::python::bases, boost::noncopyable> ( "GrainRandomBoxPackerBase", "Base class for L{GrainRandomBoxPacker}.", boost::python::no_init ) ; boost::python::class_< GrainRandomBoxPackerPy, boost::noncopyable, boost::python::bases >( "GrainRandomBoxPacker", "Instances generate a packing of randomly sized aggregate grains" " within the confines of a specified box.", boost::python::init< RndGrainGenPy &, double, int, const BoundingBoxPy &, const boost::python::list &, double >( ( arg("grainGenerator"), arg("cubicPackRadius"), arg("maxInsertFails"), arg("bBox"), arg("circDimList")=boost::python::list(bpu::vectorToList(BoolVector(3,false))), arg("tolerance")=0.001 ) , "Constructor.\n" "@type grainGenerator: L{RndGrainGen}\n" "@kwarg grainGenerator: object for generating grains within a\n" " specifed sphere.\n" "@type cubicPackRadius: float\n" "@kwarg cubicPackRadius: Initial randomly sized I{seed} grains\n" " are generated at positions corresponding to a regular cubic-packed grid\n" " of spheres with radius C{cubicPackRadius}.\n" "@type maxInsertFails: int\n" "@kwarg maxInsertFails: Stopping criterion for terminating the random.\n" " insertion algorithm. Algorithm terminates after C{maxInsertFails}\n" " number of attempts at fitting a randomly generated sphere into the\n" " box.\n" "@type bBox: L{BoundingBox}\n" "@kwarg bBox: box specifying the region into which grains" " are packed. A 2D packing can be generated by specifying a\n" " zero sized I{z} dimension, eg bBox=BoundingBox(Vec3(1,1,0),Vec3(21,21,0))\n" " will generate a 2D packing in the I{x}-I{y} plane.\n" "@type circDimList: list of 3 bool elements\n" "@kwarg circDimList: list indicating which (if any) of the box dimensions\n" " is circular (note, only a single dimension may be circular).\n" "@type tolerance: float\n" "@kwarg tolerance: Generated spheres may overlap by no more than\n" " this amount.\n" ) ) .def( "generate", &GrainRandomBoxPackerPy::generate, "Generates packing of randomly sized grains." ) .def( "getNumGrains", &GrainRandomBoxPackerPy::getNumGrains, "Returns the number of grains in the packing." ) .def( "getGrainIterator", &GrainRandomBoxPackerPy::getGrainIteratorPy, "Returns an iterator for enumerating grains in the packing." ) .def( "getGrainCollection", &GrainRandomBoxPackerPy::getGrainCollectionPy, "Returns the collection of grains in the packing.", return_value_policy() ) ; } } } ./Python/esys/lsm/geometry/PackerPy.h0000664000175000017500000001531412176660653017424 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPACKERPY_H #define ESYS_LSMPACKERPY_H #include "Geometry/Packer.h" #include "Geometry/BoxPacker.h" #include "Geometry/CubicBoxPacker.h" #include "Geometry/RandomBoxPacker.h" #include "Geometry/RandomSpherePacker.h" #include "Geometry/GrainRandomBoxPacker.h" #include "Geometry/PackerGenerators.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/util/BoundingSpherePy.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/geometry/IteratorPy.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/GrainPy.h" #include "Python/esys/lsm/geometry/GrainCollectionPy.h" namespace boost { namespace python { class list; class tuple; } } namespace esys { namespace lsm { class PackerPy : public Packer, public boost::python::wrapper > { public: typedef Packer Inherited; typedef SimpleSphereCollectionPy::SimpleSphereIteratorPy SimpleSphereIteratorPy; PackerPy(NTablePtr nTablePtr); PackerPy(ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr); SimpleSphereIteratorPy getSimpleSphereIteratorPy(); SimpleSphereCollectionPy getSimpleSphereCollectionPy(); virtual void generate(); }; typedef BoxPacker BoxPackerBasePy; class BoxPackerPy : public BoxPackerBasePy { public: typedef BoxPackerBasePy Inherited; BoxPackerPy( ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ); }; typedef ConstRadiusGen ConstRadiusGenPy; typedef CubicBoxPacker CubicBoxPackerBasePy; class CubicBoxPackerPy : public CubicBoxPackerBasePy { public: typedef CubicBoxPackerBasePy Inherited; CubicBoxPackerPy( double radius, const BoundingBoxPy &bBox, const boost::python::list &periodicDimensions, double tolerance ); }; typedef RndRadiusGen RndRadiusGenPy; template class PackerWrap { public: typedef CubicBoxPacker CubicBoxPackerBase; typedef RandomBoxPacker RandomBoxPackerBase; }; typedef PackerWrap::CubicBoxPackerBase RndCubicBoxPackerBasePy; typedef PackerWrap::RandomBoxPackerBase RandomBoxPackerBasePy; class RandomBoxPackerPy : public RandomBoxPackerBasePy { public: typedef RandomBoxPackerBasePy Inherited; RandomBoxPackerPy( double minRadius, double maxRadius, double cubicPackRadius, int maxInsertionFailures, const BoundingBoxPy &bBox, const boost::python::list &periodicDimensions, double tolerance ); RandomBoxPackerPy( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector ); }; typedef RandomSpherePacker RandomSpherePackerBasePy; class RandomSpherePackerPy : public RandomSpherePackerBasePy { public: typedef RandomSpherePackerBasePy Inherited; RandomSpherePackerPy( double minRadius, double maxRadius, double cubicPackRadius, int maxInsertionFailures, const BoundingSpherePy &bSphere, double tolerance, bool do2d ); }; typedef GrainRndRadiusGen RndGrainGenBasePy; class RndGrainGenPy : public RndGrainGenBasePy, public boost::python::wrapper { public: typedef RndGrainGenBasePy Inherited; RndGrainGenPy( double minGrainRadius, double maxGrainRadius, double minParticleRadius, double maxParticleRadius ); const double &getMinParticleRadius() const; const double &getMaxParticleRadius() const; virtual Grain getGrain(const Particle &p); private: double m_minParticleRadius; double m_maxParticleRadius; }; typedef PackerWrap::CubicBoxPackerBase GrainCubicBoxPackerPy; typedef PackerWrap::RandomBoxPackerBase GrainRndBoxPackerPy; typedef GrainRandomBoxPacker GrainRandomBoxPackerBasePy; class GrainRandomBoxPackerPy : public GrainRandomBoxPackerBasePy { public: typedef GrainRandomBoxPackerBasePy Inherited; typedef Inherited::Grain Grain; typedef Inherited::GrainCollection::GrainIteratorPy GrainIteratorPy; GrainRandomBoxPackerPy( ParticleGrainGen &particleGrainGen, double cubicPackRadius, int maxInsertionFailures, const BoundingBox &bBox, const boost::python::list &circDimList, double tolerance ); GrainRandomBoxPackerPy( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector, GrainPoolPtr grainPoolPtr ); GrainIteratorPy getGrainIteratorPy(); const GrainCollection &getGrainCollectionPy() const; }; void exportPacker(); } } #endif ./Python/esys/lsm/geometry/SingleParticleGrainGen.py0000664000175000017500000000354212176660653022427 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines the L{SingleParticleGrainGen} class which extends L{RndGrainGen}. """ from esys.lsm.util import * from esys.lsm.geometry.GeometryPy import * class SingleParticleGrainGen(RndGrainGen): """ Grain generator which can be used in conjunction with the L{GougeConfigPrms} and L{GrainRandomBoxPacker} classes. Generates grains which consist of a single particle. @see: getGrain """ def __init__(self, minGRadius, maxGRadius): """ Initialise generator. @type minGRadius: float @param minGRadius: minimum grain radius @type maxGRadius: float @param maxGRadius: maximum grain radius """ RndGrainGen.__init__( self, minGRadius, maxGRadius, minGRadius, maxGRadius ) def getGrain(self, p): """ Returns a grain consisting of a single particle which is I{copy-constructed} from C{p}. @type p: L{SimpleSphere} @param p: a particle @rtype: L{Grain} @return: A grain consisting of a single particle. """ g = Grain() g.createParticle(p) return g ./Python/esys/lsm/geometry/SimpleBlockPy.h0000664000175000017500000000220312176660653020414 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSIMPLEBLOCKPY_H #define ESYS_LSMSIMPLEBLOCKPY_H #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" namespace boost { namespace python { class list; } } namespace esys { namespace lsm { class SimpleBlockPy : public SimpleSphereCollectionPy { public: SimpleBlockPy(); SimpleBlockPy(const boost::python::list &dimCount, double radius=0.5); private: }; void exportSimpleBlock(); } } #endif ./Python/esys/lsm/geometry/GrainPy.cpp0000664000175000017500000000535412176660653017615 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Foundation/console.h" #include "Python/esys/lsm/geometry/GrainPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" namespace esys { namespace lsm { GrainPy::GrainPy() : Inherited() { } GrainPy::GrainPy(Id id) : Inherited(id) { } GrainPy::GrainPy(ParticlePoolPtr particlePoolPtr) : Inherited(particlePoolPtr) { } GrainPy::GrainPy(Id id, ParticlePoolPtr particlePoolPtr) : Inherited(id, particlePoolPtr) { } boost::python::tuple GrainPy::getinitargs() { return boost::python::make_tuple(getId()); } using boost::python::arg; void exportGrain() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< GrainPy, boost::python::bases >( "Grain", "Represents an aggregation of particles.", boost::python::init<>( "Constructs an empty grain with default id." ) ) .def( boost::python::init( ( boost::python::arg("id") ), "Constructs an empty grain with specified Id.\n" "@type id: int\n" "@kwarg id: Grain Id." ) ) .def( "getId", &GrainPy::getId, "Returns the Id of this grain.\n" "@rtype: int\n" "@return: Grain Id." ) .def( "setId", &GrainPy::setId, ( arg("id") ), "Sets the id of this grain.\n" "@type id: int\n" "@kwarg id: The new grain Id." ) .def("__getinitargs__", &GrainPy::getinitargs) ; } } } ./Python/esys/lsm/geometry/SimpleSpherePy.cpp0000664000175000017500000002347712176660653021163 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/geometry/SimpleSpherePy.h" namespace esys { namespace lsm { SimpleSpherePy SimpleSpherePy::INVALID = SimpleSpherePy(Vec3Py(Vec3::ZERO), 0.0, -1, -1, -1.0); SimpleSpherePy::SimpleSpherePy( const Vec3Py ¢er, double radius, int id, int tag, double mass ) : SimpleParticle(center, radius, id, tag) { if (mass >= 0.0) { setMass(mass); } } SimpleSpherePy::SimpleSpherePy( int id, const Vec3Py &posn, double radius, double mass ) : SimpleParticle(posn, radius, id, 0) { if (mass >= 0.0) { setMass(mass); } } SimpleSpherePy::SimpleSpherePy(const SimpleSpherePy &particle) : SimpleParticle(particle) { } void SimpleSpherePy::setPosnPy(const Vec3Py posn) { setPos(posn); } bool SimpleSpherePy::operator==(const SimpleSpherePy &p) const { return (getID() == p.getID()); } Vec3Py SimpleSpherePy::getPosnPy() const { return Vec3Py(getPos()); } void SimpleSpherePy::translateByPy(const Vec3Py &translation) { translateBy(translation); } void SimpleSpherePy::rigidRotatePy(const Vec3Py &axis, const Vec3Py &pt) { rotate(axis, pt); } class SimpleSpherePyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(SimpleSpherePy const& p) { return boost::python::make_tuple( p.getPosnPy(), p.getRadius(), p.getId(), p.getTag(), p.getMass() ); } }; using boost::python::arg; void exportSimpleSphere() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "SimpleSphere", boost::python::init< const Vec3Py &, double, int, int, double >( ( arg("centre")=Vec3Py(Vec3::ZERO), arg("radius")=1.0, arg("id")=0, arg("tag")=0, arg("mass")=-1.0 ) ) ) .def( boost::python::init< const SimpleSpherePy & >( ( arg("p") ) ) ) .def( boost::python::init< int, const Vec3Py &, double, double >( ( arg("id"), arg("posn"), arg("radius"), arg("mass") ), "Constructs a spherical particle.\n" "@type centre: L{esys.lsm.util.Vec3}\n" "@kwarg centre: Centre point of the spherical particle.\n" "@type radius: float\n" "@kwarg radius: Radius of the spherical particle.\n" "@type id: int\n" "@kwarg id: Unique identifier for the particle.\n" "@type tag: int\n" "@kwarg tag: Label for the particle.\n" "@type mass: float\n" "@kwarg mass: The mass of the spherical particle.\n" ) ) .def( "getRadius", &SimpleSpherePy::getRad, "Returns the radius of this sphere.\n" "@rtype: float\n" "@return: Radius of this sphere." ) .def( "getRad", &SimpleSpherePy::getRad, "Returns the radius of this sphere.\n" "@rtype: float\n" "@return: Radius of this sphere." ) .def( "getCenter", &SimpleSpherePy::getPosnPy, "Returns the centre point of this sphere.\n" "@rtype: L{esys.lsm.util.Vec3}\n" "@return: Returns the centre point of this sphere.\n" ) .def( "getCentre", &SimpleSpherePy::getPosnPy, "Returns the centre point of this sphere.\n" "@rtype: L{esys.lsm.util.Vec3}\n" "@return: Returns the centre point of this sphere.\n" ) .def( "getPosn", &SimpleSpherePy::getPosnPy, "Returns the centre point of this sphere.\n" "@rtype: L{esys.lsm.util.Vec3}\n" "@return: Returns the centre point of this sphere.\n" ) .def( "getPos", &SimpleSpherePy::getPosnPy, "Returns the centre point of this sphere.\n" "@rtype: L{esys.lsm.util.Vec3}\n" "@return: Returns the centre point of this sphere.\n" ) .def( "getId", &SimpleSpherePy::getID, "Returns the id associated with this particle.\n" "@rtype: int\n" "@return: Particle ID." ) .def( "getTag", &SimpleSpherePy::getTag, "Returns the tag assigned to this particle.\n" "@rtype: int\n" "@return: tag value assigned to this particle." ) .def( "getMass", &SimpleSpherePy::getMass, "Returns the mass of this particle.\n" "@rtype: float\n" "@return: mass" ) /* .def( "getVolume", &SimpleSpherePy::getVolume, "Returns the volume of this particle.\n" "@rtype: float\n" "@return: volume" ) */ .def( "setRadius", &SimpleSpherePy::setRad, (arg("radius")), "Sets the radius of this sphere.\n" "@type radius: float\n" "@kwarg radius: radius." ) .def( "setRad", &SimpleSpherePy::setRad, (arg("radius")), "Sets the radius of this sphere.\n" "@type radius: float\n" "@kwarg radius: radius." ) .def( "setCenter", &SimpleSpherePy::setPosnPy, (arg("position")), "Sets the centre-point of this sphere.\n" "@type position: L{esys.lsm.util.Vec3}\n" "@kwarg position: centre point." ) .def( "setCentre", &SimpleSpherePy::setPosnPy, (arg("position")), "Sets the centre-point of this sphere.\n" "@type position: L{esys.lsm.util.Vec3}\n" "@kwarg position: centre point." ) .def( "setPosn", &SimpleSpherePy::setPosnPy, (arg("position")), "Sets the centre-point of this sphere.\n" "@type position: L{esys.lsm.util.Vec3}\n" "@kwarg position: centre point." ) .def( "setPos", &SimpleSpherePy::setPosnPy, (arg("position")), "Sets the centre-point of this sphere.\n" "@type position: L{esys.lsm.util.Vec3}\n" "@kwarg position: centre point." ) .def( "translate", &SimpleSpherePy::translateByPy, (arg("translation")), "Moves the centre-point of this sphere by a specified translation.\n" "@type translation: L{esys.lsm.util.Vec3}\n" "@kwarg translation: Vector added to the current centre-point position." ) .def( "rotate", &SimpleSpherePy::rigidRotatePy, ( arg("axis"), arg("pt") ), "Performs rigid body rotation of the sphere about a specified axis.\n" "@type axis: L{esys.lsm.util.Vec3}\n" "@kwarg axis: The direction and magnitude of the axis of rotation.\n" "@type pt: L{esys.lsm.util.Vec3}\n" "@kwarg pt: Point through which the axis passes.\n" ) .def( "setId", &SimpleSpherePy::setID, (arg("id")), "Sets the ID of this spherical particle.\n" "@type id: int\n" "@kwarg id: Identifier for this particle." ) .def( "setTag", &SimpleSpherePy::setTag, (arg("tag")), "Sets the tag associated with this particle.\n" "@type tag: int\n" "@kwarg tag: Identifier for this particle." ) .def( "setMass", &SimpleSpherePy::setMass, (arg("mass")), "Sets the mass of this particle.\n" "@type mass: float\n" "@kwarg mass: the new mass." ) .def( "__eq__", &SimpleSpherePy::operator==, (arg("p")), "Equality operator for particles," " simply compares particle ID values.\n" "@rtype: bool\n" "@return: self.getId() == p.getId()" ) .def( "__hash__", &SimpleSpherePy::getID, "Returns a hash value for use in dictionaries and sets.\n" "@rtype: int\n" "@return: self.getId()" ) .def_pickle(SimpleSpherePyPickleSuite()) ; } } } ./Python/esys/lsm/geometry/ExportModuleGeometry.cpp0000664000175000017500000000412312176660653022400 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/ParticleCollectionPy.h" #include "Python/esys/lsm/geometry/GrainPy.h" #include "Python/esys/lsm/geometry/GrainCollectionPy.h" #include "Python/esys/lsm/geometry/PackerPy.h" #include "Python/esys/lsm/geometry/SimpleBlockPy.h" #include "Python/esys/lsm/geometry/CubicBlockPy.h" #include "Python/esys/lsm/geometry/HexagBlockPy.h" #include "Python/esys/lsm/geometry/TaggedIdConnectionPy.h" #include "Python/esys/lsm/geometry/DistConnectionsPy.h" #include "Python/esys/lsm/geometry/GougeConfigPy.h" #include "Python/esys/lsm/geometry/GougeConfigPrmsPy.h" #include "Python/esys/lsm/geometry/MiscPy.h" #include "Python/esys/lsm/geometry/SimpleSphereNeighboursPy.h" BOOST_PYTHON_MODULE(GeometryPy) { esys::lsm::exportOrientation(); esys::lsm::exportGougeConfigPrms(); esys::lsm::exportGougeConfig(); esys::lsm::exportSimpleSphere(); esys::lsm::exportSimpleSphereCollection(); esys::lsm::exportParticleCollection(); esys::lsm::exportGrain(); esys::lsm::exportGrainCollection(); esys::lsm::exportPacker(); esys::lsm::exportCubicBlock(); esys::lsm::exportHexagBlock(); esys::lsm::exportSimpleBlock(); esys::lsm::exportTaggedIdConnection(); esys::lsm::exportDistConnections(); esys::lsm::exportMisc(); esys::lsm::exportSimpleSphereNeighbours(); } ./Python/esys/lsm/geometry/__init__.py0000664000175000017500000000223312176660653017642 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines modules and classes which can be used to generate various packings of particles and creating bonds/connections to be used in conjunction with the LSM. """ from esys.lsm.util import * from GeometryPy import * import SphericalGrainGen import SingleParticleGrainGen GeometryPy.__doc__ =\ """ Dynamic linked library module defining classes for creating packings of particles and connections between particles - This library exposes C++ implementations in Python. """ ./Python/esys/lsm/geometry/SimpleSphereCollectionPy.cpp0000664000175000017500000001620212176660653023163 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" namespace esys { namespace lsm { SimpleSphereCollectionPy::SimpleSphereCollectionPy() : Inherited() { } SimpleSphereCollectionPy::SimpleSphereCollectionPy( const Inherited &particleCollection ) : Inherited(particleCollection) { } SimpleSphereCollectionPy::SimpleSphereCollectionPy( const SimpleSphereCollectionPy &ssphereCollection ) : Inherited(ssphereCollection) { } SimpleSphereCollectionPy::SimpleSphereCollectionPy( ParticlePoolPtr particlePoolPtr ) : Inherited(particlePoolPtr) { } BoundingBoxPy SimpleSphereCollectionPy::getParticleBBoxPy() const { return BoundingBoxPy( ParticleCollection::getParticleBBox() ); } SimpleSphereCollectionPy::SimpleSphereIteratorPy SimpleSphereCollectionPy::getSimpleSphereIteratorPy() { return SimpleSphereIteratorPy( ParticleCollection::getParticleIterator() ); } SimpleSpherePy &SimpleSphereCollectionPy::createParticlePy(const SimpleSpherePy &p) { return ParticleCollection::createParticle(p); } void SimpleSphereCollectionPy::rotatePy(const Vec3Py &rotation, const Vec3Py &pt) { rotate(rotation, pt); } void SimpleSphereCollectionPy::translateByPy(const Vec3Py &translation) { translateBy(translation); } class SimpleSphereCollectionPyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getstate(boost::python::object pcObj) { const SimpleSphereCollectionPy &pc = boost::python::extract(pcObj); boost::python::list l; SimpleSphereCollectionPy::ParticleConstIterator it = pc.getParticleIterator(); while (it.hasNext()) { l.append(it.next()); } return boost::python::make_tuple(pcObj.attr("__dict__"), l); } static void setstate(boost::python::object pcObj, boost::python::tuple state) { // restore the object's __dict__ boost::python::dict d = boost::python::extract(pcObj.attr("__dict__"))(); d.update(state[0]); SimpleSphereCollectionPy &pc = boost::python::extract(pcObj); boost::python::list l = boost::python::extract(state[1]); for (int i = 0; i < bpu::len(l); i++) { pc.createParticle( boost::python::extract(l[i]) ); } } static bool getstate_manages_dict() { return true; } }; using boost::python::arg; void exportSimpleSphereCollection() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "SimpleSphereCollection", "A collection of L{SimpleSphere} objects.", boost::python::init<>() ) .def( "getBBox", &SimpleSphereCollectionPy::getParticleBBoxPy, "Returns the axis aligned bounding box which contains all spheres in\n" "this collection.\n" "@rtype: L{esys.lsm.util.BoundingBox}\n" "@return: tight bounding box for all spheres in this collection." ) .def( "getNumSpheres", &SimpleSphereCollectionPy::getNumParticles, "Returns the number of spheres in this collection.\n" "@rtype: int\n" "@return: number of spheres in this collection" ) .def( "__iter__", &SimpleSphereCollectionPy::getSimpleSphereIteratorPy, "Returns an iterator for enumerating spheres in this collection.\n" "@rtype: L{SimpleSphereCollectionIterator}\n" "@return: Sphere iterator.", boost::python::return_value_policy< boost::python::return_by_value, boost::python::with_custodian_and_ward_postcall<0, 1> >() ) .def( "__len__", &SimpleSphereCollectionPy::getNumParticles, "Returns number of spheres in this collection.\n" "@rtype: int\n" "@return: number of spheres." ) .def( "create", &SimpleSphereCollectionPy::createParticlePy, ( arg("sphere") ), boost::python::return_internal_reference<>(), "Creates a sphere in this collection, lifetime of sphere\n" "is tied to this collection.\n" "@type sphere: L{SimpleSphere}\n" "@kwarg sphere: A copy of this sphere is created.\n" "@rtype: L{SimpleSphere}\n" "@return: reference to newly created sphere." ) .def( "translate", &SimpleSphereCollectionPy::translateByPy, ( arg("translation") ), "Translates all spheres in this collection by the specified amount.\n" "@type translation: L{esys.lsm.util.Vec3}\n" "@kwarg translation: spheres are translated by this amount." ) .def( "rotate", &SimpleSphereCollectionPy::rotatePy, ( arg("axis"), arg("axisPt") ), "Rotates all spheres in this collection about a specifed axis\n" "of rotation which passes through a specified point.\n" "@type axis: L{esys.lsm.util.FoundationPy.Vec3}\n" "@kwarg axis: axis of rotation, all spheres are rotated" " by C{axis.norm()}\n" " radians about the axis whose direction is C{axis/axis.norm()}.\n" "@type axisPt: L{esys.lsm.util.FoundationPy.Vec3}\n" "@kwarg axisPt: the axis of rotation is assumed to pass though" " this point." ) .def_pickle(SimpleSphereCollectionPyPickleSuite()) ; SimpleSphereCollectionPy::SimpleSphereIteratorPy::exportIterator( "SimpleSphereCollectionIterator" ); } } } ./Python/esys/lsm/geometry/HexagBlockPy.h0000664000175000017500000000235612176660653020230 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMHEXAGBLOCKPY_H #define ESYS_LSMHEXAGBLOCKPY_H #include "Geometry/ClosePackOrientation.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" namespace boost { namespace python { class list; } } namespace esys { namespace lsm { class HexagBlockPy : public SimpleSphereCollectionPy { public: HexagBlockPy(); HexagBlockPy( const boost::python::list &dimCount, double radius, const ClosePackOrientation &orientation ); private: }; void exportHexagBlock(); } } #endif ./Python/esys/lsm/geometry/SphericalGrainGen.py0000664000175000017500000002304612176660653021435 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# """ Defines classes, instances of which, can be used to generate spherical grains packed with randomly sized circular particles. """ from esys.lsm import Logging from esys.lsm.util import * from esys.lsm.geometry.GeometryPy import * def getLogger(): return Logging.getLogger("esys.lsm.geometry") class ScaledMinMaxGrainGen(RndGrainGen): """ Grain generator which can be used in conjunction with the L{GougeConfigPrms} and L{GrainRandomBoxPacker} classes. Generates grains which consist of a particles packed into a circle/sphere. The minimum and maximum particle radii are scaled with respect to grain size. @see: getGrain """ def __init__( self, minGRadius, maxGRadius, do2d=False, radiusScale=(0.1, 0.4), maxInsertFails=5000 ): """ Initialise the generator. @type minGRadius: float @param minGRadius: minimum grain radius @type maxGRadius: float @param maxGRadius: maximum grain radius @type do2d: bool @param do2d: If True, grain particles all occur on the M{z=0} plane (ie particles packed into a circle). @type radiusScale: tuple of two floats @param radiusScale: Randomly generated spherical particles will have radii which will lie in the range C{(radiusScale[0]*minGRadius,radiusScale[1]*maxGRadius)}. """ self.do2d = do2d self.maxInsertFails = maxInsertFails self.minPRadiusScale = radiusScale[0] self.maxPRadiusScale = radiusScale[1] minPRadius = self.minPRadiusScale*minGRadius maxPRadius = self.maxPRadiusScale*maxGRadius RndGrainGen.__init__( self, minGRadius, maxGRadius, minPRadius, maxPRadius ) def getGrain(self, p): """ Uses L{RandomSpherePacker} to create a grain consisting of randomly sized particles packed into a sphere with centre C{p.getPosn()} and radius C{p.getRadius()}. The random particle radii will lie in the range C{(self.minPRadiusScale*p.getRadius(),self.maxPRadiusScale*p.getRadius())} @type p: L{SimpleSphere} @param p: C{p.getPosn()} and C{p.getRadius()} determine the size and position of the returned grain. @rtype: L{Grain} @return: A I{spherical} grain of randomly sized particles. """ minRadius=p.getRadius()*self.minPRadiusScale packer = \ RandomSpherePacker( minRadius=minRadius, maxRadius=p.getRadius()*self.maxPRadiusScale, cubicPackRadius=p.getRadius()*self.maxPRadiusScale, maxInsertFails=self.maxInsertFails, bSphere=BoundingSphere(p.getPosn(), p.getRadius()), do2d=self.do2d, tolerance = 0.1*minRadius ) packer.generate() g = Grain() for p in packer.getParticleIterator(): g.createParticle(p) getLogger().info( "Created grain of " + str(g.getNumParticles()) + " particles" ) return g class ScaledMaxGrainGen(RndGrainGen): """ Grain generator which can be used in conjunction with the L{GougeConfigPrms} and L{GrainRandomBoxPacker} classes. Generates grains which consist of a particles packed into a circle/sphere. The maximum particle radius is scaled with respect to grain size, the minimum particle radius is independent of grain size. @see: getGrain """ def __init__( self, minGRadius, maxGRadius, do2d=False, minPRadius=None, radiusScale=0.1, maxInsertFails=5000 ): """ Initialise the generator. @type minGRadius: float @param minGRadius: minimum grain radius @type maxGRadius: float @param maxGRadius: maximum grain radius @type do2d: bool @param do2d: If True, grain particles all occur on the M{z=0} plane (ie particles packed into a circle). @type minPRadius: float @param minPRadius: The minimum radius of randomly generated particles. @type radiusScale: float @param radiusScale: Randomly generated spherical particles will have radii which will lie in the range C{(minPRadius,radiusScale*maxGRadius)}. """ if (minPRadius == None): minPRadius = minGRadius*0.15 self.do2d = do2d self.maxInsertFails = maxInsertFails self.minPRadius = minPRadius self.maxPRadiusScale = radiusScale maxPRadius = self.maxPRadiusScale*maxGRadius RndGrainGen.__init__( self, minGRadius, maxGRadius, minPRadius, maxPRadius ) def getGrain(self, p): """ Uses L{RandomSpherePacker} to create a grain consisting of randomly sized particles packed into a sphere with centre C{p.getPosn()} and radius C{p.getRadius()}. The random particle radii will lie in the range C{(self.minPRadius,self.maxPRadiusScale*p.getRadius())} @type p: L{SimpleSphere} @param p: C{p.getPosn()} and C{p.getRadius()} determine the size and position of the returned grain. @rtype: L{Grain} @return: A I{spherical} grain of randomly sized particles. """ minRadius = self.minPRadius maxRadius = p.getRadius()*self.maxPRadiusScale packer = \ RandomSpherePacker( minRadius=minRadius, maxRadius=maxRadius, cubicPackRadius=maxRadius, maxInsertFails=self.maxInsertFails, bSphere=BoundingSphere(p.getPosn(), p.getRadius()), do2d=self.do2d, tolerance = 0.1*minRadius ) packer.generate() g = Grain() for p in packer.getParticleIterator(): g.createParticle(p) getLogger().info( "Created grain of " + str(g.getNumParticles()) + " particles" ) return g class AbsGrainGen(RndGrainGen): """ Grain generator which can be used in conjunction with the L{GougeConfigPrms} and L{GrainRandomBoxPacker} classes. Generates grains which consist of a particles packed into a circle/sphere. Spherical particle radii are generated independent of grain size. @see: getGrain """ def __init__( self, minGRadius, maxGRadius, do2d=False, minPRadius=None, maxPRadius=None, maxInsertFails=5000 ): """ Initialise the generator. @type minGRadius: float @param minGRadius: minimum grain radius @type maxGRadius: float @param maxGRadius: maximum grain radius @type do2d: bool @param do2d: If True, grain particles all occur on the M{z=0} plane (ie particles packed into a circle). @type minPRadius: float @param minPRadius: The minimum radius of randomly generated particles. @type maxPRadius: float @param maxPRadius: The maximum radius of randomly generated particles. """ if (maxPRadius == None): maxPRadius = maxGRadius*0.4 if (minPRadius == None): minPRadius = maxPRadius*0.15 self.do2d = do2d self.maxInsertFails = maxInsertFails self.minPRadius = minPRadius self.maxPRadius = maxPRadius RndGrainGen.__init__( self, minGRadius, maxGRadius, minPRadius, maxPRadius ) def getGrain(self, p): """ Uses L{RandomSpherePacker} to create a grain consisting of randomly sized particles packed into a sphere with centre C{p.getPosn()} and radius C{p.getRadius()}. The random particle radii will lie in the range C{(self.minPRadius,self.maxPRadius)} @type p: L{SimpleSphere} @param p: C{p.getPosn()} and C{p.getRadius()} determine the size and position of the returned grain. @rtype: L{Grain} @return: A I{spherical} grain of randomly sized particles. """ minRadius = self.minPRadius maxRadius = self.maxPRadius packer = \ RandomSpherePacker( minRadius=minRadius, maxRadius=maxRadius, cubicPackRadius=maxRadius, maxInsertFails=self.maxInsertFails, bSphere=BoundingSphere(p.getPosn(), p.getRadius()), do2d=self.do2d, tolerance = 0.1*minRadius ) packer.generate() g = Grain() for p in packer.getParticleIterator(): g.createParticle(p) getLogger().info( "Created grain of " + str(g.getNumParticles()) + " particles" ) return g ./Python/esys/lsm/geometry/GougeConfigPrmsPy.cpp0000664000175000017500000000765312176660653021617 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/geometry/GougeConfigPrmsPy.h" #include "Python/BoostPythonUtil/ListConverter.h" namespace esys { namespace lsm { ParticleRndPackPrmsPy::ParticleRndPackPrmsPy(double size, double minRadius, double maxRadius) : Inherited(size, minRadius, maxRadius) { } GrainRndPackPrmsPy::GrainRndPackPrmsPy( double size, ParticleGrainGenPy &grainGen, int connTag ) : Inherited(size, grainGen, connTag) { } GougeConfigPrmsPy::GougeConfigPrmsPy( const BoundingBoxPy &bBox, double padRadius, const ParticleRndPackPrmsPy &roughnessPrms, const GrainRndPackPrmsPy &gougePrms, int maxInsertionFailures, const boost::python::list &periodicDimensionList, double tolerance, double connectionTolerance, int blockConnTag ) : Inherited( bBox, padRadius, XZ, roughnessPrms, gougePrms, bpu::listToVector(periodicDimensionList), maxInsertionFailures, tolerance, connectionTolerance, blockConnTag ) { } using boost::python::arg; void exportGougeConfigPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "ParticleRndPackPrms", boost::python::init< double, double, double >( ( arg("size"), arg("minRadius"), arg("maxRadius") ) ) ); boost::python::class_( "GrainRndPackPrms", boost::python::init< double, GrainRndPackPrmsPy::ParticleGrainGenPy &, int >( ( arg("size"), arg("grainGenerator"), arg("connTag")=0 ) ) ); boost::python::class_( "GougeConfigPrms", boost::python::init< const BoundingBoxPy &, double, const ParticleRndPackPrmsPy &, const GrainRndPackPrmsPy &, int, const boost::python::list &, double, double, int >( ( arg("bBox"), arg("padRadius"), arg("rndBlockPrms"), arg("rndGougePrms"), arg("maxInsertFails"), arg("circDimList")=bpu::vectorToList(BoolVector(3,false)), arg("overlapTol")=0.001, arg("connectionTol")=0.01, arg("blockConnTag")=0 ) ) ) .def("getMinParticleRadius", &GougeConfigPrmsPy::getMinRadius) .def("getMaxParticleRadius", &GougeConfigPrmsPy::getMaxRadius) .def("is2d", &GougeConfigPrmsPy::is2d) ; } } } ./Python/esys/lsm/geometry/SimpleBlockPy.cpp0000664000175000017500000000551712176660653020762 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/SimpleBlockPy.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Geometry/SimpleBlock.h" namespace esys { namespace lsm { SimpleBlockPy::SimpleBlockPy() : SimpleSphereCollectionPy() { } SimpleBlockPy::SimpleBlockPy( const boost::python::list &dimCount, double radius ) : SimpleSphereCollectionPy() { SimpleBlockGenerator generator = SimpleBlockGenerator( boost::python::extract(dimCount[0]), boost::python::extract(dimCount[1]), boost::python::extract(dimCount[2]), radius ); generator.createParticles(*this); } using boost::python::arg; void exportSimpleBlock() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< SimpleBlockPy, boost::python::bases, boost::noncopyable >( "SimpleBlock", "A regular packing of spheres.", boost::python::init< const boost::python::list &, boost::python::optional >( (arg("dimCount"), arg("radius")), "Creates a collection of C{dimCount[0]*dimCount[2]*dimCount[2]}" " spheres arranged in a regular rectangular lattice packing.\n" "@type dimCount: list of 3 elements\n" "@kwarg dimCount: number of particles in each packing dimension\n" "@type radius: float\n" "@kwarg radius: Radius of spheres in the packing\n" ) ) .def( boost::python::init<>() ) ; } } } ./Python/esys/lsm/geometry/GougeConfigPy.h0000664000175000017500000000365712176660653020422 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_GOUGEBLOCKPY_H #define ESYS_LSM_GOUGEBLOCKPY_H #include #include "Foundation/console.h" #include "Geometry/GougeConfig.h" #include "Python/esys/lsm/geometry/PackerPy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/geometry/TaggedIdConnectionPy.h" namespace esys { namespace lsm { class GougeConfigPrmsPy; class GougeConfigPy : public GougeConfig { public: typedef GougeConfig Inherited; GougeConfigPy(const GougeConfigPrmsPy &prms); void writeVtkXml(const std::string &fileName); boost::python::list getCircDimList() const; BoundingBoxPy getParticleBoundingBox(); BoundingBoxPy getDomainBoundingBox(); boost::python::list getConnectionList() const; class BBoxVisitor { public: BBoxVisitor(); BoundingBoxPy getBBox() const; template void visitSimpleParticle(TmplParticle &particle); private: Vec3 m_minPt; Vec3 m_maxPt; }; private: }; void exportGougeConfig(); } } #endif ./Python/esys/lsm/geometry/DistConnectionsPy.cpp0000664000175000017500000002147412176660653021664 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/geometry/DistConnectionsPy.h" #include "Python/esys/lsm/geometry/SimpleBlockPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/geometry/TaggedIdConnectionPy.h" #include "Python/esys/lsm/geometry/IteratorPy.h" #include "Geometry/DistConnections.h" namespace esys { namespace lsm { template class PythonIterIterator { public: PythonIterIterator(boost::python::object iter) : m_hasNext(true), m_next(), m_iter(iter) { update(); } bool hasNext() const { return m_hasNext; } TmplExtractType next() { boost::python::object next = m_next; update(); return boost::python::extract(next); } void update() { try { m_next = m_iter.attr("next")(); } catch (boost::python::error_already_set &e) { if (!PyErr_ExceptionMatches(PyExc_StopIteration)) { throw; } PyErr_Clear(); m_hasNext = false; } } private: bool m_hasNext; boost::python::object m_next; boost::python::object m_iter; }; class DistConnectionsPy : public DistConnections { public: DistConnectionsPy( double maxDist=0.01, Tag defaultTag = 0, boost::python::object iteratable = boost::python::object() ) : DistConnections( maxDist, defaultTag ) { if (iteratable != boost::python::object()) { addParticles(iteratable); } } void pythonObjectAddParticles(boost::python::object &iteratable) { create( PythonIterIterator(iteratable.attr("__iter__")()) ); } void pythonObjectAddParticlesWithTag( boost::python::object &iteratable, int connectionTag ) { create( PythonIterIterator(iteratable.attr("__iter__")()), connectionTag ); } void addParticles(boost::python::object &iteratable) { pythonObjectAddParticles(iteratable); } void addParticlesWithTag( boost::python::object &iteratable, int connectionTag ) { pythonObjectAddParticlesWithTag(iteratable, connectionTag); } typedef IteratorPy< DistConnections::Iterator > IteratorPy2; IteratorPy2 getIterator() const { return IteratorPy2( DistConnections< SimpleSpherePy, TaggedIdConnectionPy >::getIterator() ); } }; using boost::python::arg; void exportDistConnections() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "ConnectionFinder", boost::python::init< boost::python::optional< double, int, boost::python::object & > >( ( arg("maxDist"), arg("bondTag"), arg("pList") ), "@type maxDist: float\n" "@kwarg maxDist: Threshhold distance governing which particles" " are connected.\n" "@type bondTag: int\n" "@kwarg bondTag: Default tag given to the connections.\n" "@type pList: iterable\n" "@kwarg pList: Iterable whose next method returns a SimpleSphere" " object." ) ) .def( "getNumParticles", &DistConnectionsPy::getNumParticles, "Returns the number of particles which have been added to this" " connection finder.\n" "@rtype: int\n" "@return: The number of particles added to this connection finder." ) .def( "getNumConnections", &DistConnectionsPy::getNumConnections, "Returns the number of connections found by this connection finder.\n" "@rtype: int\n" "@return: number of L{TaggedIdConnection} objects in this collection." ) .def("__iter__", &DistConnectionsPy::getIterator) .def("__len__", &DistConnectionsPy::getNumConnections) .def( "addParticles", &DistConnectionsPy::pythonObjectAddParticles, ( arg("pList") ), "Adds SimpleSphere objects to this connection finder and determines" " any new connections.\n" "@type pList: iterable\n" "@kwarg pList: Iterator returning L{SimpleSphere} objects." ) .def( "addParticles", &DistConnectionsPy::pythonObjectAddParticlesWithTag, ( arg("pList"), arg("bondTag") ), "Adds SimpleSphere objects to this connection finder and determines" " any new connections.\n" //"@type pList: iterable\n" //"@kwarg pList: Iterator returning L{SimpleSphere} objects.\n" "@type bondTag: int\n" "@kwarg bondTag: New connections are assigned this tag." ) ; boost::python::class_( "DistConnections", boost::python::init< boost::python::optional< double, int, boost::python::object & > >( ( arg("maxDist"), arg("connTag"), arg("iterable") ), "@type maxDist: float\n" "@kwarg maxDist: Threshhold distance governing which particles" " are connected.\n" "@type connTag: int\n" "@kwarg connTag: Default tag given to the connections.\n" "@type iterable: iterable\n" "@kwarg iterable: Iterable whose next method returns a SimpleSphere" " object." ) ) .def( "getNumParticles", &DistConnectionsPy::getNumParticles, "Returns the number of particles which have been added to this" " connection finder.\n" "@rtype: int\n" "@return: The number of particles added to this connection finder." ) .def( "getNumConnections", &DistConnectionsPy::getNumConnections, "Returns the number of connections found by this connection finder.\n" "@rtype: int\n" "@return: number of L{TaggedIdConnection} objects in this collection." ) .def("__iter__", &DistConnectionsPy::getIterator) .def("__len__", &DistConnectionsPy::getNumConnections) .def( "addParticles", &DistConnectionsPy::pythonObjectAddParticles, ( arg("iterable") ), "Adds SimpleSphere objects to this connection finder and determines" " any new connections.\n" "@type iterable: iterable\n" "@kwarg iterable: Iterator returning L{SimpleSphere} objects." ) .def( "addParticles", &DistConnectionsPy::pythonObjectAddParticlesWithTag, ( arg("iterable"), arg("connTag") ), "Adds SimpleSphere objects to this connection finder and determines" " any new connections.\n" //"@type iterable: iterable\n" //"@kwarg iterable: Iterator returning L{SimpleSphere} objects.\n" "@type connTag: int\n" "@kwarg connTag: New connections are assigned this tag." ) ; DistConnectionsPy::IteratorPy2::exportIterator( "TaggedIdConnectionIterator" ); } } } ./Python/esys/lsm/geometry/GougeConfigPrmsPy.h0000664000175000017500000000450112176660653021251 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_GOUGEBLOCKPRMS_H #define ESYS_LSM_GOUGEBLOCKPRMS_H #include "Foundation/console.h" #include "Python/esys/lsm/geometry/GougeConfigPy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" namespace boost { namespace python { class list; } } namespace esys { namespace lsm { typedef GougeConfigPy::GougeConfPrms GougeConfigPrmsBasePy; class ParticleRndPackPrmsPy : public GougeConfigPrmsBasePy::ParticleRndPackPrms { public: typedef GougeConfigPrmsBasePy::ParticleRndPackPrms Inherited; ParticleRndPackPrmsPy(double size, double minRadius, double maxRadius); }; class GrainRndPackPrmsPy : public GougeConfigPrmsBasePy::GrainRPackPrms { public: typedef GougeConfigPrmsBasePy::GrainRPackPrms Inherited; typedef Inherited::ParticleGrainGen ParticleGrainGenPy; GrainRndPackPrmsPy( double size, ParticleGrainGenPy &grainGen, int connTag ); }; class GougeConfigPrmsPy : public GougeConfigPrmsBasePy { public: typedef GougeConfigPrmsBasePy Inherited; GougeConfigPrmsPy( const BoundingBoxPy &bBox, double padRadius, const ParticleRndPackPrmsPy &roughnessPrms, const GrainRndPackPrmsPy &gougePrms, int maxInsertionFailures, const boost::python::list &periodicDimList, double tolerance = DBL_EPSILON*128, double connectionTolerance = DBL_EPSILON*128*10, int blockConnTag=0 ); }; void exportGougeConfigPrms(); } } #endif ./Python/esys/lsm/geometry/MiscPy.cpp0000664000175000017500000001302112176660653017436 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/geometry/MiscPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/util/Vec3Py.h" namespace esys { namespace lsm { class SolidBoxPy : public BoundingBoxPy { public: SolidBoxPy() : BoundingBoxPy() { } SolidBoxPy(const Vec3Py &minPt, const Vec3Py &maxPt) : BoundingBoxPy(minPt, maxPt) { } SolidBoxPy(const SolidBoxPy &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } SolidBoxPy(const BoundingBoxPy &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } SolidBoxPy(const BoundingBox &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } /** * Arvo's algorithm for axis-aligned solid-box/solid-sphere intersection. */ bool intersectsWithSphere(const Vec3 ¢re, double radius) const { double distSqrd = 0.0; for (int i = 0; i < 3; i++) { if (centre[i] < getMinPt()[i]) { const double diff = centre[i] - getMinPt()[i]; distSqrd += diff*diff; } else if (centre[i] > getMaxPt()[i]) { const double diff = centre[i] - getMaxPt()[i]; distSqrd += diff*diff; } } return (distSqrd <= (radius*radius)); } bool intersectsWithSpherePy(const Vec3Py ¢re, double radius) const { return intersectsWithSphere(centre, radius); } bool intersects(const SimpleSpherePy &p) const { return intersectsWithSphere(p.getPos(), p.getRad()); } }; class HollowBoxPy : public BoundingBoxPy { public: HollowBoxPy() : BoundingBoxPy() { } HollowBoxPy(const Vec3Py &minPt, const Vec3Py &maxPt) : BoundingBoxPy(minPt, maxPt) { } HollowBoxPy(const HollowBoxPy &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } HollowBoxPy(const BoundingBoxPy &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } HollowBoxPy(const BoundingBox &box) : BoundingBoxPy(box.getMinPt(), box.getMaxPt()) { } /** * Arvo's algorithm for axis-aligned hollow-box/solid-sphere intersection. */ bool intersectsWithSphere(const Vec3 ¢re, double radius) const { double distSqrd = 0; bool face = false; for(int i = 0; i < 3; i++) { if(centre[i] < getMinPt()[i]) { face = true; const double diff = (centre[i] - getMinPt()[i]); distSqrd += diff*diff; } else if (centre[i] > getMaxPt()[i]) { face = true; const double diff = centre[i] - getMaxPt()[i]; distSqrd += diff*diff; } else if ((centre[i] - getMinPt()[i]) <= radius ) { face = true; } else if ((getMaxPt()[i] - centre[i]) <= radius) { face = true; } } return (face && (distSqrd <= radius*radius)); } bool intersectsWithSpherePy(const Vec3Py ¢re, double radius) const { return intersectsWithSphere(centre, radius); } bool intersects(const SimpleSpherePy &p) const { return intersectsWithSphere(p.getPos(), p.getRad()); } }; void exportMisc() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "SolidBox" ) .def(boost::python::init<>()) .def(boost::python::init()) .def(boost::python::init()) .def(boost::python::init()) .def("intersects", &SolidBoxPy::intersects) .def("intersects", &SolidBoxPy::intersectsWithSpherePy) ; boost::python::class_ >( "HollowBox" ) .def(boost::python::init<>()) .def(boost::python::init()) .def(boost::python::init()) .def(boost::python::init()) .def("intersects", &HollowBoxPy::intersects) .def("intersects", &HollowBoxPy::intersectsWithSpherePy) ; } } } ./Python/esys/lsm/geometry/HexagBlockPy.cpp0000664000175000017500000000630712176660653020563 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/HexagBlockPy.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Geometry/HexagBlock.h" namespace esys { namespace lsm { HexagBlockPy::HexagBlockPy() : SimpleSphereCollectionPy() { } HexagBlockPy::HexagBlockPy( const boost::python::list &dimCount, double radius, const ClosePackOrientation &orientation ) : SimpleSphereCollectionPy() { HexagBlock::BlockGenerator generator = HexagBlock::BlockGenerator( boost::python::extract(dimCount[0]), boost::python::extract(dimCount[1]), boost::python::extract(dimCount[2]), radius, orientation ); generator.createParticles(*this); } using boost::python::arg; void exportHexagBlock() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< HexagBlockPy, boost::python::bases, boost::noncopyable >( "HexagBlock", "Collection of particles arranged in a hexagonal close " " packing.", boost::python::init< const boost::python::list &, double, const ClosePackOrientation & >( ( arg("dimCount"), arg("radius")=0.5, arg("orientation")=DEFAULT_ORIENT ) ) ) .def( boost::python::init< >( "Creates a collection of C{dimCount[0]*dimCount[2]*dimCount[2]}" " spheres arranged in a cubic close packing.\n" "@type dimCount: list of 3 elements\n" "@kwarg dimCount: number of particles in each packing dimension\n" "@type radius: float\n" "@kwarg radius: Radius of spheres in the packing\n" "@type orientation: L{Orientation}\n" "@kwarg orientation: orientation of the axis-aligned layers" " in the packing." ) ) ; } } } ./Python/esys/lsm/geometry/CubicBlockPy.h0000664000175000017500000000241312176660653020213 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBLOCKPY_H #define ESYS_LSMCUBICBLOCKPY_H #include "Geometry/ClosePackOrientation.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" namespace boost { namespace python { class list; } } namespace esys { namespace lsm { class CubicBlockPy : public SimpleSphereCollectionPy { public: CubicBlockPy(); CubicBlockPy( const boost::python::list &dimCount, double radius, const ClosePackOrientation &orientation ); private: }; void exportOrientation(); void exportCubicBlock(); } } #endif ./Python/esys/lsm/geometry/SimpleSpherePy.h0000664000175000017500000000316112176660653020614 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_SIMPLEPARTICLEPY_H #define ESYS_LSM_SIMPLEPARTICLEPY_H #include #include "Python/esys/lsm/util/Vec3Py.h" namespace esys { namespace lsm { class SimpleSpherePy : public SimpleParticle { public: SimpleSpherePy( const Vec3Py ¢re, double radius, int id = 0, int tag = 0, double mass = -1.0 // indicates use of default mass ); SimpleSpherePy( int id, const Vec3Py &posn, double radius, double mass ); SimpleSpherePy(const SimpleSpherePy &particle); bool operator==(const SimpleSpherePy &p) const; Vec3Py getPosnPy() const; void setPosnPy(const Vec3Py posn); void translateByPy(const Vec3Py &translation); void rigidRotatePy(const Vec3Py &axis, const Vec3Py &pt); static SimpleSpherePy INVALID; }; void exportSimpleSphere(); } } #endif ./Python/esys/lsm/geometry/IteratorPy.cpp0000664000175000017500000000137312176660653020343 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Python/esys/lsm/geometry/IteratorPy.h" ./Python/esys/lsm/geometry/GrainCollectionPy.cpp0000664000175000017500000000601712176660653021626 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/GrainCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" namespace esys { namespace lsm { GrainCollectionPy::GrainCollectionPy() : Inherited() { } GrainCollectionPy::GrainCollectionPy(ParticlePoolPtr particlePoolPtr) : Inherited(particlePoolPtr) { } GrainCollectionPy::GrainCollectionPy( ParticlePoolPtr particlePoolPtr, GrainPoolPtr grainPoolPtr ) : Inherited(particlePoolPtr, grainPoolPtr) { } GrainPy &GrainCollectionPy::createGrainPy() { return Inherited::createGrain(); } GrainPy &GrainCollectionPy::createGrainWithIdPy(GrainPy::Id id) { return Inherited::createGrain(id); } GrainCollectionPy::GrainIteratorPy GrainCollectionPy::getGrainIteratorPy() { return GrainIteratorPy(Inherited::getGrainIterator()); } void exportGrainCollection() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "GrainCollection", boost::python::init<>() ) .def("getGrainIterator", &GrainCollectionPy::getGrainIteratorPy) .def("getNumParticles", &GrainCollectionPy::getNumParticles) .def("getNumGrains", &GrainCollectionPy::getNumGrains) .def("__iter__", &GrainCollectionPy::getGrainIteratorPy) .def("__len__", &GrainCollectionPy::getNumGrains) .def( "createGrain", &GrainCollectionPy::createGrainPy, boost::python::return_value_policy< boost::python::reference_existing_object >() ) .def( "createGrain", &GrainCollectionPy::createGrainWithIdPy, boost::python::return_value_policy< boost::python::reference_existing_object >() ) ; GrainCollectionPy::GrainIteratorPy::exportIterator( "GrainCollectionGrainIterator" ); } } } ./Python/esys/lsm/geometry/Makefile.am0000664000175000017500000000406612176660653017573 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lsmgeometry_LTLIBRARIES = libGeometryPy.la GeometryPy.la libGeometryPy_la_LDFLAGS = -shared libGeometryPy_la_SOURCES = SimpleBlockPy.cpp SimpleBlockPy.h MiscPy.cpp \ MiscPy.h DistConnectionsPy.cpp DistConnectionsPy.h TaggedIdConnectionPy.cpp \ TaggedIdConnectionPy.h IteratorPy.cpp IteratorPy.h IteratorPy.hpp ParticleCollectionPy.cpp \ ParticleCollectionPy.h CubicBlockPy.cpp CubicBlockPy.h GrainCollectionPy.cpp \ GrainCollectionPy.h GrainPy.cpp GrainPy.h PackerPy.cpp PackerPy.h GougeConfigPrmsPy.cpp \ GougeConfigPrmsPy.h GougeConfigPy.cpp GougeConfigPy.h HexagBlockPy.cpp HexagBlockPy.h \ SimpleSpherePy.cpp SimpleSpherePy.h \ SimpleSphereNeighboursPy.cpp SimpleSphereNeighboursPy.h \ SimpleSphereCollectionPy.h SimpleSphereCollectionPy.cpp libGeometryPy_la_LIBADD = \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Python/BoostPythonUtil/libBoostPythonUtil.la \ $(top_builddir)/Python/esys/lsm/libLsmPy.la \ $(top_builddir)/Python/esys/lsm/util/libFoundationPy.la GeometryPy_la_LDFLAGS = -module -shared -shrext $(PYTHON_DLL_EXT) GeometryPy_la_SOURCES = ExportModuleGeometry.cpp GeometryPy_la_LIBADD = libGeometryPy.la lsmgeometry_PYTHON = \ __init__.py \ SingleParticleGrainGen.py \ SphericalGrainGen.py ./Python/esys/lsm/geometry/SimpleSphereCollectionPy.h0000664000175000017500000000401312176660653022625 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSIMPLESPHERECOLLECTIONPY_H #define ESYS_LSMSIMPLESPHERECOLLECTIONPY_H #include "Foundation/console.h" #include "Geometry/ParticleCollection.h" #include "Python/esys/lsm/geometry/IteratorPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" namespace esys { namespace lsm { class SimpleSphereCollectionPy : public ParticleCollection { public: typedef ParticleCollection Inherited; typedef Inherited::ParticlePoolPtr ParticlePoolPtr; typedef IteratorPy::ParticleIterator> SimpleSphereIteratorPy; SimpleSphereCollectionPy(); SimpleSphereCollectionPy(const Inherited &particleCollection); SimpleSphereCollectionPy(const SimpleSphereCollectionPy &ssphereCollection); SimpleSphereCollectionPy(ParticlePoolPtr particlePoolPtr); BoundingBoxPy getParticleBBoxPy() const; SimpleSphereIteratorPy getSimpleSphereIteratorPy(); SimpleSpherePy &createParticlePy(const SimpleSpherePy &p); void rotatePy(const Vec3Py &rotation, const Vec3Py &pt); void translateByPy(const Vec3Py &translation); friend class SimpleSphereCollectionPyPickleSuite; private: }; void exportSimpleSphereCollection(); } } #endif ./Python/esys/lsm/geometry/DistConnectionsPy.h0000664000175000017500000000151212176660653021320 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMDISTCONNECTIONSPY_H #define ESYS_LSMDISTCONNECTIONSPY_H namespace esys { namespace lsm { void exportDistConnections(); } } #endif ./Python/esys/lsm/geometry/SimpleSphereNeighboursPy.h0000664000175000017500000000153612176660653022646 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSIMPLESPHERENEIGHBOURSPY_H #define ESYS_LSMSIMPLESPHERENEIGHBOURSPY_H namespace esys { namespace lsm { void exportSimpleSphereNeighbours(); } } #endif ./Python/esys/lsm/geometry/ParticleCollectionPy.cpp0000664000175000017500000001571612176660653022337 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/ParticleCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" namespace esys { namespace lsm { ParticleCollectionPy::ParticleCollectionPy() : Inherited() { } ParticleCollectionPy::ParticleCollectionPy( const Inherited &particleCollection ) : Inherited(particleCollection) { } ParticleCollectionPy::ParticleCollectionPy( const ParticleCollectionPy &particleCollection ) : Inherited(particleCollection) { } ParticleCollectionPy::ParticleCollectionPy( ParticlePoolPtr particlePoolPtr ) : Inherited(particlePoolPtr) { } BoundingBoxPy ParticleCollectionPy::getParticleBBoxPy() const { return BoundingBoxPy( ParticleCollection::getParticleBBox() ); } ParticleCollectionPy::ParticleIteratorPy ParticleCollectionPy::getParticleIteratorPy() { return ParticleIteratorPy( ParticleCollection::getParticleIterator() ); } SimpleSpherePy &ParticleCollectionPy::createParticlePy(const SimpleSpherePy &p) { return ParticleCollection::createParticle(p); } void ParticleCollectionPy::rotatePy(const Vec3Py &rotation, const Vec3Py &pt) { rotate(rotation, pt); } void ParticleCollectionPy::translateByPy(const Vec3Py &translation) { translateBy(translation); } class ParticleCollectionPyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getstate(boost::python::object pcObj) { const ParticleCollectionPy &pc = boost::python::extract(pcObj); boost::python::list l; ParticleCollectionPy::ParticleConstIterator it = pc.getParticleIterator(); while (it.hasNext()) { l.append(it.next()); } return boost::python::make_tuple(pcObj.attr("__dict__"), l); } static void setstate(boost::python::object pcObj, boost::python::tuple state) { // restore the object's __dict__ boost::python::dict d = boost::python::extract(pcObj.attr("__dict__"))(); d.update(state[0]); ParticleCollectionPy &pc = boost::python::extract(pcObj); boost::python::list l = boost::python::extract(state[1]); for (int i = 0; i < bpu::len(l); i++) { pc.createParticle( boost::python::extract(l[i]) ); } } static bool getstate_manages_dict() { return true; } }; using boost::python::arg; void exportParticleCollection() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "ParticleCollection", "A collection of L{SimpleSphere} objects.", boost::python::init<>() ) .def( "getParticleBBox", &ParticleCollectionPy::getParticleBBoxPy, "Returns the axis aligned bounding box of all particles in\n" "this collection.\n" "@rtype: L{esys.lsm.util.FoundationPy.BoundingBox}\n" "@return: tight bounding box for all particles in this collection." ) .def( "getNumParticles", &ParticleCollectionPy::getNumParticles, "Returns the number of particles in this collection.\n" "@rtype: int\n" "@return: number of particles" ) .def( "__iter__", &ParticleCollectionPy::getParticleIteratorPy, "Returns an iterator for enumerating particles in this collection.\n" "@rtype: ParticleCollectionParticleIterator\n" "@return: particle iterator.", boost::python::return_value_policy< boost::python::return_by_value, boost::python::with_custodian_and_ward_postcall<0, 1> >() ) .def( "__len__", &ParticleCollectionPy::getNumParticles, "Returns number of particles in this collection.\n" "@rtype: int\n" "@return: number of particles." ) .def( "createParticle", &ParticleCollectionPy::createParticlePy, ( arg("particle") ), boost::python::return_internal_reference<>(), "Creates a particle in this collection, lifetime of particle\n" "is tied to this collection.\n" "@type particle: L{SimpleSphere}\n" "@kwarg particle: A copy of this particle is created.\n" "@rtype: L{SimpleSphere}\n" "@return: reference to newly created particle." ) .def( "translate", &ParticleCollectionPy::translateByPy, ( arg("translation") ), "Translates all particles in this collection by the specified amount.\n" "@type translation: L{esys.lsm.util.FoundationPy.Vec3}\n" "@kwarg translation: particles are translated by this amount." ) .def( "rotate", &ParticleCollectionPy::rotatePy, ( arg("axis"), arg("pt") ), "Rotates all particles in this collection about a specifed axis\n" "of rotation which passes through a specified point.\n" "@type axis: L{esys.lsm.util.FoundationPy.Vec3}\n" "@kwarg axis: axis of rotation, all particles are rotated" " by C{axis.norm()}\n" " radians about the axis whose direction is C{axis/axis.norm()}.\n" "@type pt: L{esys.lsm.util.FoundationPy.Vec3}\n" "@kwarg pt: the axis of rotation is assumed to pass though" " this point." ) .def_pickle(ParticleCollectionPyPickleSuite()) ; // ParticleCollectionPy::ParticleIteratorPy::exportIterator( // "ParticleCollectionParticleIterator" // ); } } } ./Python/esys/lsm/geometry/SimpleSphereNeighboursPy.cpp0000664000175000017500000001323612176660653023201 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ParticleIdPairVectorPy.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/geometry/SimpleSphereNeighboursPy.h" #include "Python/esys/lsm/geometry/SimpleBlockPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/geometry/IteratorPy.h" #include "Python/BoostPythonUtil/PythonIterIterator.h" #include "Python/BoostPythonUtil/ListConverter.h" #include "Geometry/SphereNeighbours.h" namespace esys { namespace lsm { class SimpleSphereNeighboursPy : public SphereNeighbours { public: typedef SphereNeighbours Inherited; SimpleSphereNeighboursPy( double maxDist, const BoundingBoxPy &bBox, const boost::python::list &circDimList ) : Inherited( maxDist, bBox, bpu::listToVector(circDimList) ) { } IdPairVector getNeighboursPy(boost::python::object &iteratable) { return getNeighbours( bpu::PythonIterIterator(iteratable) ); } typedef IteratorPy SSNIteratorPy; SSNIteratorPy getIteratorPy() const { return getIterator(); } }; using boost::python::arg; void exportSimpleSphereNeighbours() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "SimpleSphereNeighbours", "Discovers pairs of spheres which are closer than a specified\n" "threshold distance.\n", boost::python::init< double, const BoundingBoxPy &, const boost::python::list & >( ( arg("maxDist") = 0.01, arg("bBox") = BoundingBoxPy(Vec3Py(-10,-10,-10), Vec3Py(10,10,10)), arg("circDimList") = boost::python::list( boost::python::make_tuple(false,false,false) ) ), "Construct the neighbour-finding object.\n" "@type maxDist: float\n" "@kwarg maxDist: Threshhold distance governing which spheres" " are determined to be neighbours.\n" "@type bBox: L{BoundingBox}\n" "@kwarg bBox: Initial box for look-up grid. Also indicates locations" " of fixed circular boundaries.\n" "@type circDimList: list of 3 boolean elements\n" "@kwarg circDimList: Default tag given to the connections.\n" ) ) .def( "getNumSpheres", &SimpleSphereNeighboursPy::getNumSpheres, "Returns the number of spheres which have been added to this" " neighbour finder via the L{getNeighbours} method.\n" "@rtype: int\n" "@return: The number of spheres added to this neighbour finder." ) .def( "getNumIdPairs", &SimpleSphereNeighboursPy::getNumIdPairs, "Returns the total number of neighbouring pairs of spheres " " found during calls to the L{getNeighbours} method.\n" "@rtype: int\n" "@return: number of C{ParticleIdPair} objects in this collection." ) .def( "__iter__", &SimpleSphereNeighboursPy::getIteratorPy, "Iterator for enumerating sequence of" " all C{ParticleIdPair}" " neighbours discovered during L{getNeighbours} calls.\n" "@rtype: L{SsNeighbourParticleIdPairIterator}\n" "@return: Iterator for enumerating sequence of" " C{ParticleIdPair} objects." ) .def("__len__", &SimpleSphereNeighboursPy::getNumIdPairs) .def( "getNeighbours", &SimpleSphereNeighboursPy::getNeighboursPy, ( arg("iterable") ), "Returns a sequence of" " C{ParticleIdPair} objects which" " indicate neighbouring pairs of particles. Only returns" " pairs of id's from particles within the specified sequence.\n" "@type iterable: iterable\n" "@kwarg iterable: Sequence of L{SimpleSphere} objects.\n" "@rtype: C{ParticleIdPairVector}\n" "@return: Sequence of id pairs indicating spheres which are closer" " than the threshold distance.\n" ) ; SimpleSphereNeighboursPy::SSNIteratorPy::exportIterator( "SsNeighbourParticleIdPairIterator" ); } } } ./Python/esys/lsm/geometry/GougeConfigPy.cpp0000664000175000017500000001164712176660653020753 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/BoostPythonUtil/ListConverter.h" #include "Python/esys/lsm/geometry/GougeConfigPy.h" #include "Python/esys/lsm/geometry/GougeConfigPrmsPy.h" #include "Geometry/VtkXmlWriter.h" namespace esys { namespace lsm { GougeConfigPy::GougeConfigPy(const GougeConfigPrmsPy &prms) : Inherited(prms) { } void GougeConfigPy::writeVtkXml(const std::string &fileName) { ParticleDataVisitor particleData; visitParticles(particleData); visitConnections(particleData); VtkXmlWriter vtkWriter; vtkWriter.setData(particleData); vtkWriter.writeToFile(fileName); } GougeConfigPy::BBoxVisitor::BBoxVisitor() : m_minPt(DBL_MAX), m_maxPt(-DBL_MAX) { } BoundingBoxPy GougeConfigPy::BBoxVisitor::getBBox() const { return BoundingBoxPy(m_minPt, m_maxPt); } template void GougeConfigPy::BBoxVisitor::visitSimpleParticle(TmplParticle &particle) { for (int i = 0; i < 3; i++) { if ((particle.getPos()[i]-particle.getRad()) < m_minPt[i]) { m_minPt[i] = particle.getPos()[i]-particle.getRad(); } if ((particle.getPos()[i]+particle.getRad()) > m_maxPt[i]) { m_maxPt[i] = particle.getPos()[i]+particle.getRad(); } } } boost::python::list GougeConfigPy::getConnectionList() const { return bpu::vectorToList(getConnectionSet()); } boost::python::list GougeConfigPy::getCircDimList() const { return bpu::vectorToList(getPrms().getPeriodicDimensions()); } BoundingBoxPy GougeConfigPy::getParticleBoundingBox() { BoundingBoxPy bBox; if (getNumParticles() > 0) { BBoxVisitor bBoxVisitor; visitParticles(bBoxVisitor); bBox = bBoxVisitor.getBBox(); } return bBox; } BoundingBoxPy GougeConfigPy::getDomainBoundingBox() { BoundingBoxPy bBox = getParticleBoundingBox(); Vec3Py minPt = bBox.getMinPt(); Vec3Py maxPt = bBox.getMaxPt(); for (int i = 0; i < 3; i++) { if (m_nTablePtr->getPeriodicDimensions()[i]) { minPt[i] = m_nTablePtr->getBBox().getMinPt()[i]; maxPt[i] = m_nTablePtr->getBBox().getMaxPt()[i]; } } if (getPrms().is2d()) { minPt[2] = 0.0; maxPt[2] = 0.0; } return BoundingBoxPy(minPt, maxPt); } void exportGougeConfig() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "GougeConfig", boost::python::init() ) .def("generate", &GougeConfigPy::generate) .def("getNumParticles", &GougeConfigPy::getNumParticles) .def("getNumGrains", &GougeConfigPy::getNumGrains) .def("getParticleCollection", &GougeConfigPy::getParticleCollection) .def("getGrainCollection", &GougeConfigPy::getGrainCollection) .def("getConnectionList", &GougeConfigPy::getConnectionList) .def("write", &GougeConfigPy::writeToFile) .def("writeVtkXml", &GougeConfigPy::writeVtkXml) .def("getParticleBoundingBox", &GougeConfigPy::getParticleBoundingBox) .def("getParticleBBox", &GougeConfigPy::getParticleBoundingBox) .def("getDomainBoundingBox", &GougeConfigPy::getDomainBoundingBox) .def("getDomainBBox", &GougeConfigPy::getDomainBoundingBox) .def("getCircDimList", &GougeConfigPy::getCircDimList) .def("tagGougeParticles", &GougeConfigPy::tagGougeParticles) .def("tagRndBlockParticles", &GougeConfigPy::tagRndBlockParticles) .def("tagDrivingPlateParticles", &GougeConfigPy::tagDrivingPlateParticles) ; } } } ./Python/esys/lsm/geometry/GrainPy.h0000664000175000017500000000260412176660653017255 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRAINPY_H #define ESYS_LSMGRAINPY_H #include "Geometry/Grain.h" #include "Python/esys/lsm/geometry/ParticleCollectionPy.h" namespace boost { namespace python { class tuple; } } namespace esys { namespace lsm { class GrainPy : public Grain { public: typedef Grain Inherited; typedef Inherited::ParticlePoolPtr ParticlePoolPtr; typedef Inherited::Id Id; GrainPy(); GrainPy(Id id); GrainPy(ParticlePoolPtr particlePoolPtr); GrainPy(Id id, ParticlePoolPtr particlePoolPtr); boost::python::tuple getinitargs(); private: }; void exportGrain(); } } #endif ./Python/esys/lsm/geometry/GrainCollectionPy.h0000664000175000017500000000326412176660653021274 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRAINCOLLECTIONPY_H #define ESYS_LSMGRAINCOLLECTIONPY_H #include "Foundation/console.h" #include "Geometry/GrainCollection.h" #include "Python/esys/lsm/geometry/GrainPy.h" #include "Python/esys/lsm/geometry/ParticleCollectionPy.h" namespace esys { namespace lsm { class GrainCollectionPy : public GrainCollection { public: typedef GrainCollection Inherited; typedef IteratorPy GrainIteratorPy; typedef Inherited::ParticlePoolPtr ParticlePoolPtr; typedef Inherited::GrainPoolPtr GrainPoolPtr; GrainCollectionPy(); GrainCollectionPy(ParticlePoolPtr particlePoolPtr); GrainCollectionPy( ParticlePoolPtr particlePoolPtr, GrainPoolPtr grainPoolPtr ); GrainIteratorPy getGrainIteratorPy(); GrainPy &createGrainPy(); GrainPy &createGrainWithIdPy(GrainPy::Id id); private: }; void exportGrainCollection(); } } #endif ./Python/esys/lsm/geometry/CubicBlockPy.cpp0000664000175000017500000000770612176660653020560 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/geometry/CubicBlockPy.h" #include "Python/esys/lsm/geometry/SimpleSphereCollectionPy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Geometry/CubicBlock.h" namespace esys { namespace lsm { CubicBlockPy::CubicBlockPy() : SimpleSphereCollectionPy() { } CubicBlockPy::CubicBlockPy( const boost::python::list &dimCount, double radius, const ClosePackOrientation &orientation ) : SimpleSphereCollectionPy() { CubicBlock::BlockGenerator generator = CubicBlock::BlockGenerator( boost::python::extract(dimCount[0]), boost::python::extract(dimCount[1]), boost::python::extract(dimCount[2]), radius, orientation ); generator.createParticles(*this); } using boost::python::arg; void exportOrientation() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::enum_( "Orientation" ) .value("DEFAULT", DEFAULT_ORIENT) .value("XYZ", XYZ) .value("XZY", XZY) .value("YXZ", YXZ) .value("YZX", YZX) .value("ZXY", ZXY) .value("ZYX", ZYX) ; } void exportCubicBlock() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< CubicBlockPy, boost::python::bases, boost::noncopyable >( "CubicBlock", "Collection of particles arranged in a cubic close " " (face centred cubic) packing.", boost::python::init< const boost::python::list &, double, const ClosePackOrientation & >( ( arg("dimCount"), arg("radius")=0.5, arg("orientation")=DEFAULT_ORIENT ) ) ) .def( boost::python::init< >( "Creates a collection of C{dimCount[0]*dimCount[2]*dimCount[2]}" " spheres arranged in a cubic close packing.\n" "@type dimCount: list of 3 elements\n" "@kwarg dimCount: number of particles in each packing dimension\n" "@type radius: float\n" "@kwarg radius: Radius of spheres in the packing\n" "@type orientation: L{Orientation}\n" "@kwarg orientation: orientation of the axis-aligned layers" " in the packing." ) ) ; } } } ./Python/esys/lsm/geometry/TaggedIdConnectionPy.cpp0000664000175000017500000000465512176660653022250 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/geometry/TaggedIdConnectionPy.h" namespace esys { namespace lsm { TaggedIdConnectionPy::TaggedIdConnectionPy(Id id1, Id id2, Tag tag) : BasicInteraction(id1, id2, tag) { } TaggedIdConnectionPy::TaggedIdConnectionPy(const TaggedIdConnectionPy &idConn) : BasicInteraction(idConn) { } class TaggedIdConnectionPyPickleSuite : public boost::python::pickle_suite { public: static boost::python::tuple getinitargs(TaggedIdConnectionPy const& conn) { return boost::python::make_tuple(conn.getP1Id(), conn.getP2Id(), conn.getTag()); } }; using boost::python::arg; void exportTaggedIdConnection() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "TaggedIdConnection", "Instances represent some kind of relationship (connection)\n" "between a pair of Id's.", boost::python::init( ( arg("id1"), arg("id2"), arg("tag")=0 ) ) ) .def(boost::python::init()) .def("getId1", &TaggedIdConnectionPy::first) .def("getId2", &TaggedIdConnectionPy::second) .def("getTag", &TaggedIdConnectionPy::getTag) .def_pickle(TaggedIdConnectionPyPickleSuite()) ; } } } ./Python/esys/lsm/ParticlePy.h0000664000175000017500000000271512176660653016130 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEPY_H #define ESYS_LSMPARTICLEPY_H #include "Model/Particle.h" #include "Python/esys/lsm/util/Vec3Py.h" namespace esys { namespace lsm { class ParticlePy : public CParticle { public: ParticlePy(); ParticlePy(int id, const Vec3Py &posn, double radius, double mass); ParticlePy(const ParticlePy &p); ParticlePy(const CParticle &p); Vec3Py getPosn() const; void setPosn(const Vec3Py &posn); Vec3Py getVelocity() const; void setVelocity(const Vec3Py &vel); Vec3Py getInitialPosn() const; Vec3Py getAcceleration() const; void setAcceleration(const Vec3Py &accel); Vec3Py getForce() const; void setForce(const Vec3Py &force); }; void exportParticle(); } } #endif ./Python/esys/lsm/ParticleIdPairSetPy.cpp0000664000175000017500000000262612176660653020231 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/ParticleIdPairSetPy.h" namespace esys { namespace lsm { void exportParticleIdPairSet() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif ParticleIdPairSetPy::exportSet( "ParticleIdPairSet", "Set of particle ID pairs." ); } } } ./Python/esys/lsm/BondedTriMeshPrmsPy.cpp0000664000175000017500000001070312176660653020245 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include "Python/esys/lsm/InteractionParamsPy.h" #include "Python/esys/lsm/BondedTriMeshPrmsPy.h" #include "Python/esys/lsm/MeshBuildParamsPy.h" namespace esys { namespace lsm { NRotBondedTriMeshPrmsPy::NRotBondedTriMeshPrmsPy( const string &interactionName, const string &meshName, double normalK, double breakDistance, const MeshTagBuildPrmsPy &buildPrms) : BTriMeshIP(interactionName, meshName, normalK, breakDistance), m_tagPrmsPtr(TagBuildPrmsPtr(new MeshTagBuildPrmsPy(buildPrms))), m_gapPrmsPtr() { } NRotBondedTriMeshPrmsPy::NRotBondedTriMeshPrmsPy( const string &interactionName, const string &meshName, double normalK, double breakDistance, const MeshGapBuildPrmsPy &buildPrms ) : BTriMeshIP(interactionName, meshName, normalK, breakDistance), m_tagPrmsPtr(), m_gapPrmsPtr(GapBuildPrmsPtr(new MeshGapBuildPrmsPy(buildPrms))) { } using boost::python::arg; void exportBondedTriMeshPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_ >( "NRotBondedTriMeshPrms", "Parameters for specifying linear elastic bonds between particles\n" "and a triangular mesh surface.", boost::python::init< const std::string &, const std::string &, double, double, const MeshTagBuildPrmsPy & >( ( arg("name"), arg("meshName"), arg("normalK"), arg("breakDistance"), arg("buildPrms") ) ) ).def( boost::python::init< const std::string &, const std::string &, double, double, const MeshGapBuildPrmsPy & >( ( arg("name"), arg("meshName"), arg("normalK"), arg("breakDistance"), arg("buildPrms") ), "Parameters defining bonded elastic interactions between particles and triangle mesh walls\n" "@type name: string\n" "@kwarg name: name of interaction group.\n" "@type meshName: string\n" "@kwarg meshName: name of the triangular mesh for which elastic" " bonds will be created.\n" "@type normalK: float\n" "@kwarg normalK: spring constant for linear elastic bond force" " calculation.\n" "@type breakDistance: float\n" "@kwarg breakDistance: When distance between mesh and particle exceeds" " this distance, the bond breaks.\n" "@type buildPrms: L{MeshTagBuildPrms} or L{MeshGapBuildPrms}\n" "@kwarg buildPrms: Object which specifies the method of bond creation." ) ) .def( "getName", &NRotBondedTriMeshPrmsPy::getName, boost::python::return_value_policy(), "@rtype: string\n" "@return: Name of this interaction group." ) .def( "getMeshName", &NRotBondedTriMeshPrmsPy::getMeshName, boost::python::return_value_policy(), "@rtype: string\n" "@return: name of the mesh for which the bonded interactions apply." ) ; } } } ./Python/esys/lsm/RunnablePy.cpp0000664000175000017500000000421612176660653016464 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/RunnablePy.h" namespace esys { namespace lsm { void RunnablePy::run() { boost::python::override overrideMethod = this->get_override("run"); if (overrideMethod) { overrideMethod(); } else { defaultRun(); } } void RunnablePy::defaultRun() { PyErr_SetString( PyExc_NotImplementedError, "run method needs to be implemented in derived class" ); boost::python::throw_error_already_set(); } void exportRunnable() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_< RunnablePy, boost::noncopyable >( "Runnable", "Base class with overridable C{run} method, that is subclassed to implement user-defined subroutines called each timestep of a simulation.\n" ) .def( "run", &Runnable::run, "Method called each timestep, overridden by subclasses of the Runnable base class.", &RunnablePy::defaultRun ) ; } } } ./Python/esys/lsm/BondedMesh2DPrmsPy.h0000664000175000017500000000431412176660653017422 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBONDEDMESH2DPARAMSPY_H #define ESYS_LSMBONDEDMESH2DPARAMSPY_H #include "Python/esys/lsm/MeshBuildParamsPy.h" #include "Model/BMesh2DIP.h" #include #include namespace esys { namespace lsm { /*! \class NRotBondedLinMeshPrmsPy \brief class for bonded Mesh2D interactions in python interface */ class NRotBondedLinMeshPrmsPy : public BMesh2DIP { private: typedef boost::shared_ptr TagBuildPrmsPtr; typedef boost::shared_ptr GapBuildPrmsPtr; const TagBuildPrmsPtr m_tagPrmsPtr; const GapBuildPrmsPtr m_gapPrmsPtr; public: NRotBondedLinMeshPrmsPy( const std::string &name, const std::string &meshName, double normalK, double breakDistance, const MeshTagBuildPrmsPy &buildPrms ); NRotBondedLinMeshPrmsPy( const std::string &name, const std::string &meshName, double normalK, double breakDistance, const MeshGapBuildPrmsPy &buildPrms ); bool haveTagBuildPrms() const {return (m_tagPrmsPtr.get() != NULL);} bool haveGapBuildPrms() const {return (m_gapPrmsPtr.get() != NULL);} const MeshTagBuildPrmsPy &getTagBuildPrms() const {return *(m_tagPrmsPtr.get());} const MeshGapBuildPrmsPy &getGapBuildPrms() const {return *(m_gapPrmsPtr.get());} }; // class void exportBondedMesh2dPrms(); } // namespace lsm } // namespace esys #endif // ESYS_LSMBONDEDMESH2DPARAMSPY_H ./Python/esys/lsm/FieldSaverPrmsPy.h0000664000175000017500000000375612176660653017261 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMFIELDSAVERPRMSPY_H #define ESYS_LSMFIELDSAVERPRMSPY_H //--- STL includes --- #include //--- Boost includes --- #include namespace esys { namespace lsm { class FieldSaverPrmsPy { public: FieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ); const std::string &getFieldName() const { return m_fieldName; } const std::string &getFileName() const { return m_fileName; } const std::string &getFileFormat() const { return m_fileFormat; } int getBeginTimeStep() const { return m_beginTimeStep; } int getEndTimeStep() const { return m_endTimeStep; } int getTimeStepIncr() const { return m_timeStepIncr; } private: std::string m_fieldName; std::string m_fileName; std::string m_fileFormat; int m_beginTimeStep; int m_endTimeStep; int m_timeStepIncr; }; // class void exportFieldSaverPrms(); } // namespace lsm } // namespace esys #endif //ESYS_LSMCHECKPOINTPARAMSPY_H ./Python/esys/lsm/TriangleFieldSaverPrmsPy.h0000664000175000017500000000326312176660653020740 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMTRIANGLEFIELDSAVERPRMSPY_H #define ESYS_LSMTRIANGLEFIELDSAVERPRMSPY_H #include "Python/esys/lsm/FieldSaverPrmsPy.h" #include #include #include namespace esys { namespace lsm { class TriangleScalarFieldSaverPrmsPy : public FieldSaverPrmsPy { public: TriangleScalarFieldSaverPrmsPy(const std::string&,const std::string&,const std::string&, const std::string&,int,int,int); const std::string& getMeshName() const {return m_MeshName;} private: std::string m_MeshName; }; class TriangleVectorFieldSaverPrmsPy : public FieldSaverPrmsPy { public: TriangleVectorFieldSaverPrmsPy(const std::string&,const std::string&,const std::string&, const std::string&,int,int,int); const std::string& getMeshName() const {return m_MeshName;} private: std::string m_MeshName; }; void exportTriangleFieldSaverPrms(); } // namespace lsm } // namespace esys #endif // ESYS_LSMTRIANGLEFIELDSAVERPRMSPY_H ./Python/esys/lsm/RotParticlePy.h0000664000175000017500000000402012176660653016604 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMROTPARTICLEPY_H #define ESYS_LSMROTPARTICLEPY_H #include "Model/RotParticle.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/util/QuaternionPy.h" namespace esys { namespace lsm { class RotParticlePy : public CRotParticle { public: RotParticlePy(); RotParticlePy(const RotParticlePy &p); RotParticlePy(const CRotParticle &p); RotParticlePy(int id, const Vec3Py &posn, double radius, double mass); Vec3Py getInitialPosn() const; Vec3Py getPosn() const; void setPosn(const Vec3Py& posn); QuaternionPy getOrientation() const; void setOrientation(const QuaternionPy& quat); Vec3Py getVelocity() const; Vec3Py getLinearVelocity() const; void setLinearVelocity(const Vec3Py& vel); Vec3Py getAngularVelocity() const; void setAngularVelocity(const Vec3Py& vel); Vec3Py getAcceleration() const; Vec3Py getLinearAcceleration() const; void setLinearAcceleration(const Vec3Py& accel); Vec3Py getAngularAcceleration() const; void setAngularAcceleration(const Vec3Py& accel); Vec3Py getLinearForce() const; void setLinearForce(const Vec3Py& force); Vec3Py getAngularForce() const; void setAngularForce(const Vec3Py& force); }; void exportRotParticle(); } } #endif ./Python/esys/lsm/LmParticleAdder.h0000664000175000017500000000224612176660653017047 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMLMPARTICLEADDER_H #define ESYS_LSMLMPARTICLEADDER_H #include "Parallel/LatticeMaster.h" #include namespace esys { namespace lsm { template class LmParticleAdder { typedef TmplMplVector MplVector; typedef TmplLsmParticle LsmParticle; public: void addParticles(boost::python::object &iterable, CLatticeMaster &lm); }; } } #include "Python/esys/lsm/LmParticleAdder.hpp" #endif ./Python/esys/lsm/ExportModuleLsm.cpp0000664000175000017500000000402612176660653017507 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/ParticlePy.h" #include "Python/esys/lsm/RotParticlePy.h" #include "Python/esys/lsm/RotParticleViPy.h" #include "Python/esys/lsm/RotThermalParticlePy.h" #include "Python/esys/lsm/ParticleFieldSaverPrmsPy.h" #include "Python/esys/lsm/InteractionFieldSaverPrmsPy.h" #include "Python/esys/lsm/WallFieldSaverPrmsPy.h" #include "Python/esys/lsm/TriangleFieldSaverPrmsPy.h" #include "Python/esys/lsm/FieldSaverPrmsPy.h" #include "Python/esys/lsm/LsmMpiPy.h" #include "Python/esys/lsm/InteractionGroupPy.h" #include "Python/esys/lsm/ParticleIdPairPy.h" #include "Python/esys/lsm/ParticleIdPairSetPy.h" #include "Python/esys/lsm/ParticleIdPairVectorPy.h" #include "Python/esys/lsm/BondInteractionGroupPy.h" BOOST_PYTHON_MODULE(LsmPy) { esys::lsm::exportFieldSaverPrms(); esys::lsm::exportParticleFieldSaverPrms(); esys::lsm::exportInteractionFieldSaverPrms(); esys::lsm::exportWallFieldSaverPrms(); esys::lsm::exportTriangleFieldSaverPrms(); esys::lsm::exportParticle(); esys::lsm::exportRotParticle(); esys::lsm::exportRotParticleVi(); esys::lsm::exportRotThermalParticle(); esys::lsm::exportInteractionGroup(); esys::lsm::exportParticleIdPair(); esys::lsm::exportParticleIdPairSet(); esys::lsm::exportParticleIdPairVector(); esys::lsm::exportBondInteractionGroup(); esys::lsm::exportLsm(); } ./Python/esys/lsm/LsmMpiPy.cpp0000664000175000017500000024023612176660653016123 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include #include #include #include "Python/esys/lsm/ParticlePy.h" #include "Python/esys/lsm/RotParticlePy.h" #include "Python/esys/lsm/RotParticleViPy.h" #include "Python/esys/lsm/RotThermalParticlePy.h" #include "Python/esys/lsm/LsmMpiPy.h" #include "Parallel/LatticeMaster.h" #include "Foundation/StringUtil.h" #include "Python/BoostPythonUtil/ListConverter.h" #include "Python/BoostPythonUtil/PythonIterIterator.h" #include "Python/esys/lsm/util/Vec3Py.h" #include "Python/esys/lsm/util/BoundingBoxPy.h" #include "Python/esys/lsm/RunnablePy.h" #include "Python/esys/lsm/geometry/SimpleSpherePy.h" #include "Python/esys/lsm/geometry/TaggedIdConnectionPy.h" #include "Python/esys/lsm/CheckPointParamsPy.h" #include "Python/esys/lsm/InteractionParamsPy.h" #include "Python/esys/lsm/MeshBuildParamsPy.h" #include "Python/esys/lsm/BondedTriMeshPrmsPy.h" #include "Python/esys/lsm/ElasticMesh2DPrmsPy.h" #include "Python/esys/lsm/ElasticTriMeshPrmsPy.h" #include "Python/esys/lsm/BondedMesh2DPrmsPy.h" #include "Python/esys/lsm/WallPrmsPy.h" #include "Python/esys/lsm/ParticleFieldSaverPrmsPy.h" #include "Python/esys/lsm/InteractionFieldSaverPrmsPy.h" #include "Python/esys/lsm/WallFieldSaverPrmsPy.h" #include "Python/esys/lsm/TriangleFieldSaverPrmsPy.h" #include "Python/esys/lsm/LmParticleAdder.h" #include "Python/esys/lsm/TriggerPrmsPy.h" #include "Foundation/console.h" using namespace boost; using namespace esys::lsm; #include #include #include #include namespace esys { namespace lsm { class LsmMpiPy::Impl { public: Impl() : m_latticeMaster(), m_nameTypeMap() { } CLatticeMaster m_latticeMaster; LsmMpiPy::InteractionNameTypeMap m_nameTypeMap; }; void throwValueError(const std::string &msg) { PyErr_SetString(PyExc_ValueError, msg.c_str()); boost::python::throw_error_already_set(); } std::string joinIntVector( const std::vector &v, const std::string &delim ) { return StringUtil::join< std::vector, StringUtil::StdOStreamOp::const_iterator> >(v, delim); } void checkParticleTypePy(const std::string &particleType) { if ( (particleType != "NRotSphere") && (particleType != "RotSphere") && (particleType != "RotSphereVi") && (particleType != "RotThermalSphere") ) { throwValueError( std::string() + "Invalid particle type, needs to be one of" + " 'NRotSphere', 'RotSphere', 'RotSphereVi' or 'RotThermalSphere'" + ", got particleType='" + particleType + "'" ); } } void checkMpiDimensions( int numProcesses, const std::vector &mpiDimVector ) { if (numProcesses > 0) { if (mpiDimVector.size() == 3) { int prod = 1; for (unsigned int i = 0; i < mpiDimVector.size(); i++) { const int dim = mpiDimVector[i]; if (dim > 0) { prod *= dim; } else if (dim < 0) { throwValueError( std::string() + "MPI dimension list contains negative element, values" + " must" + " be >= 0, got MPI dimension list=" + joinIntVector(mpiDimVector, ",") ); } } if ((numProcesses % prod) != 0) { throwValueError( std::string() + "Inconsistency beween numProcesses and MPI dimension list," + " numProcesses must be a multiple of the product of" + " non-zero" + " MPI dimension list elements, got (numProcesses % product)=(" + StringUtil::toString(numProcesses) + " % " + StringUtil::toString(prod) + ") = " + StringUtil::toString(numProcesses % prod) ); } } else { throwValueError( "mpiDimList must have 3 elements, got mpiDimList=" + joinIntVector(mpiDimVector, ",") ); } } else { throwValueError( std::string() + "Number of processes must be greater than 0, got numProcesses=" + StringUtil::toString(numProcesses) ); } } void checkMpiDimensionsPy( int numWorkerProcesses, const boost::python::list &mpiDimList ) { checkMpiDimensions(numWorkerProcesses, bpu::listToVector(mpiDimList)); } LsmMpiPy::LsmMpiPy( int numWorkerProcesses, const python::list &mpiDimList ) : m_implPtr(new Impl) { getLatticeMaster().setupWorkers(numWorkerProcesses); getLatticeMaster().setProcessDims( bpu::listToVector(mpiDimList) ); } LsmMpiPy::~LsmMpiPy() { } LsmMpiPy::InteractionNameTypeMap &LsmMpiPy::getNameTypeMap() { return m_implPtr->m_nameTypeMap; } const LsmMpiPy::InteractionNameTypeMap &LsmMpiPy::getNameTypeMap() const { return m_implPtr->m_nameTypeMap; } int LsmMpiPy::getNumWorkerProcesses() const { return getLatticeMaster().getNumWorkerProcesses(); } void LsmMpiPy::initVerletModel( const std::string &particleType, double gridSpacing, double verletDist ) { checkParticleTypePy(particleType); std::string lmParticleType; if (particleType == "RotSphere") { lmParticleType = "Rot"; } else if (particleType == "RotSphereVi") { lmParticleType = "RotVi"; } else if (particleType == "RotThermalSphere") { lmParticleType = "RotTherm"; } else { lmParticleType = "Basic"; } getLatticeMaster().makeLattice( lmParticleType.c_str(), gridSpacing, verletDist ); } double LsmMpiPy::getTimeStepSize() const { return getLatticeMaster().getTimeStepSize(); } void LsmMpiPy::setTimeStepSize(double dt) { getLatticeMaster().setTimeStepSize(dt); } std::string LsmMpiPy::getLsmVersion() const { return getLatticeMaster().getLsmVersion(); } void LsmMpiPy::setTimingFileName(const std::string &fileName) { getLatticeMaster().setTimingFileName(fileName); } void LsmMpiPy::setSlaveTimingFileName(const std::string &fileName) { getLatticeMaster().saveTimingDataToFile(fileName); } void LsmMpiPy::createConnections(boost::python::object &iteratable) { bpu::PythonIterIterator it(iteratable); getLatticeMaster().addConnections(it); } void LsmMpiPy::createParticles(boost::python::object &iteratable) { if (getParticleType() == "NRotSphere") { LmParticleAdder< boost::mpl::vector, CParticle > adder; adder.addParticles(iteratable, getLatticeMaster()); } else if (getParticleType() == "RotSphere") { LmParticleAdder< boost::mpl::vector, CRotParticle > adder; adder.addParticles(iteratable, getLatticeMaster()); } else if (getParticleType() == "RotSphereVi") { LmParticleAdder< boost::mpl::vector, CRotParticleVi > adder; adder.addParticles(iteratable, getLatticeMaster()); } else if (getParticleType() == "RotThermalSphere") { LmParticleAdder< boost::mpl::vector, CRotThermParticle > adder; adder.addParticles(iteratable, getLatticeMaster()); } else { throw std::runtime_error( std::string("Unknown particle type:") + getLatticeMaster().getParticleType() ); } } void LsmMpiPy::createParticle(boost::python::object &particle) { boost::python::list l; l.append(particle); createParticles(l); } std::string LsmMpiPy::getParticleType() const { const std::string lmParticleType = getLatticeMaster().getParticleType(); if (lmParticleType == "Rot") { return "RotSphere"; } else if (lmParticleType == "RotTherm") { return "RotThermalSphere"; } else if (lmParticleType == "RotVi") { return "RotSphereVi"; } else { return "NRotSphere"; } } void LsmMpiPy::readGeometry(const std::string &fileName) { getLatticeMaster().readGeometryFile(fileName); } int LsmMpiPy::getNumParticles() { return getLatticeMaster().getNumParticles(); } int LsmMpiPy::getTimeStep() const { return getLatticeMaster().getTimeStep(); } // --- interaction creation functions --- void LsmMpiPy::createNRotElasticInteractGrp( const NRotElasticPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createHertzianElasticIG( const HertzianElasticPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createHertzianViscoElasticFrictionIG( const HertzianViscoElasticFrictionPrmsPy &prms ) { HertzianViscoElasticFrictionPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addPairIG(p); } void LsmMpiPy::createHertzianViscoElasticIG( const HertzianViscoElasticPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createLinearDashpotIG( const LinearDashpotPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createNRotBondInteractGrp( const NRotBondPrmsPy &bondPrms ) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addBondedIG(bondPrms); } void LsmMpiPy::createCappedNRotBondInteractGrp( const CappedNRotBondPrmsPy &bondPrms ) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addCappedBondedIG( bondPrms.tag, bondPrms.getName(), bondPrms.k, bondPrms.rbreak, bondPrms.m_force_limit ); } void LsmMpiPy::createNRotShortBondInteractGrp( const NRotShortBondPrmsPy &bondPrms ) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addShortBondedIG( bondPrms.tag, bondPrms.getName(), bondPrms.k, bondPrms.rbreak ); } void LsmMpiPy::createNRotFrictionInteractGrp( const NRotFrictionPrmsPy &prms ) { NRotFrictionPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addPairIG(p); } void LsmMpiPy::createRotBondInteractGrp(const RotBondPrmsPy &bondPrms) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addRotBondedIG( bondPrms.tag, bondPrms.getName(), bondPrms.kr, bondPrms.ks, bondPrms.kt, bondPrms.kb, bondPrms.max_nForce, bondPrms.max_shForce, bondPrms.max_tMoment, bondPrms.max_bMoment, bondPrms.scaling, bondPrms.meanR_scaling, bondPrms.truncated ); } BondInteractionGroupPy LsmMpiPy::createRotThermBondInteractGrp( const RotThermBondPrmsPy &bondPrms ) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addRotThermBondedIG(bondPrms); return BondInteractionGroupPy(*this, bondPrms.getName()); } void LsmMpiPy::createBrittleBeamInteractGrp(const BrittleBeamPrmsPy &bondPrms) { getNameTypeMap()[bondPrms.getName()] = bondPrms.getTypeString(); getLatticeMaster().addRotBondedIG( bondPrms.tag, bondPrms.getName(), bondPrms.kr, bondPrms.ks, bondPrms.kt, bondPrms.kb, bondPrms.max_nForce, bondPrms.max_shForce, bondPrms.max_tMoment, bondPrms.max_bMoment, bondPrms.scaling, bondPrms.meanR_scaling, bondPrms.truncated ); } void LsmMpiPy::createFrictionInteractGrp(const FrictionPrmsPy &prms) { FrictionPrmsPy p=prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addPairIG(p); } void LsmMpiPy::createRotFrictionInteractGrp(const RotFrictionPrmsPy &prms) { RotFrictionPrmsPy p=prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addPairIG(p); } void LsmMpiPy::createRotThermFrictionInteractGrp( const RotThermFrictionPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createVWFrictionIG(const VWFrictionPrmsPy &prms) { VWFrictionPrmsPy p=prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createRotElasticInteractGrp(const RotElasticPrmsPy& prms) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createRotThermElasticInteractGrp( const RotThermElasticPrmsPy &prms ) { getNameTypeMap()[prms.getName()] = prms.getTypeString(); getLatticeMaster().addPairIG(prms); } void LsmMpiPy::createDamping(const DampingPrmsPy &prms) { DampingPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getLatticeMaster().addDamping(p); } void LsmMpiPy::createLocalDamping(const LocalDampingPrmsPy &prms) { LocalDampingPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getLatticeMaster().addDamping(p); } void LsmMpiPy::createRotLocalDamping(const RotLocalDampingPrmsPy &prms) { RotLocalDampingPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getLatticeMaster().addDamping(p); } void LsmMpiPy::createABCDamping(const ABCDampingPrmsPy &prms) { ABCDampingPrmsPy p = prms; p.setTimeStepSize(getTimeStepSize()); getLatticeMaster().addDamping(p); } void LsmMpiPy::createGravity(const GravityPrmsPy& prms) { getLatticeMaster().addSingleIG(prms); } void LsmMpiPy::createBuoyancy(const BuoyancyPrmsPy& prms) { getLatticeMaster().addSingleIG(prms); } void LsmMpiPy::removeInteractionGrp(const std::string& name) { getLatticeMaster().removeIG(name); } // ---------------------------------------------- // tagged interaction creation functions // ---------------------------------------------- void LsmMpiPy::createRotFrictionInteractGrpTag(const RotFrictionPrmsPy &prms, int tag1, int mask1, int tag2, int mask2) { RotFrictionPrmsPy p=prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addTaggedPairIG(p,tag1,mask1,tag2,mask2); } void LsmMpiPy::createNRotFrictionInteractGrpTag(const NRotFrictionPrmsPy &prms, int tag1, int mask1, int tag2, int mask2) { NRotFrictionPrmsPy p=prms; p.setTimeStepSize(getTimeStepSize()); getNameTypeMap()[p.getName()] = p.getTypeString(); std::cerr << "createNRotFrictionInteractGrpTag " << tag1 << " , "<< mask1 << " , "<< tag2 << " , "<< mask2 << " , " << std::endl; getLatticeMaster().addTaggedPairIG(p,tag1,mask1,tag2,mask2); } void LsmMpiPy::createLinearDashpotInteractGrpTag(const LinearDashpotPrmsPy &prms, int tag1, int mask1, int tag2, int mask2) { LinearDashpotPrmsPy p=prms; getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addTaggedPairIG(p,tag1,mask1,tag2,mask2); } void LsmMpiPy::createElasticInteractGrpTag(const NRotElasticPrmsPy &prms, int tag1, int mask1, int tag2, int mask2) { NRotElasticPrmsPy p=prms; getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addTaggedPairIG(p,tag1,mask1,tag2,mask2); } void LsmMpiPy::createRotElasticInteractGrpTag( const RotElasticPrmsPy& prms, int tag1, int mask1, int tag2, int mask2 ) { RotElasticPrmsPy p=prms; getNameTypeMap()[p.getName()] = p.getTypeString(); getLatticeMaster().addTaggedPairIG(p,tag1,mask1,tag2,mask2); } // ---------------------------------------------- // interaction group exclusion // ---------------------------------------------- void LsmMpiPy::createExclusion( const std::string &interactionName1, const std::string &interactionName2 ) { getLatticeMaster().addExIG(interactionName1, interactionName2); } // -- checkpoint & snapshot setup --- // restart checkpoints void LsmMpiPy::createCheckPointer(const RestartCheckPointPrmsPy &prms) { getLatticeMaster().performCheckPoints( prms.getFileNamePrefix(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getPrecision() ); } void LsmMpiPy::createCheckPointerThroughMaster(const RestartCheckPointPrmsPy &prms) { getLatticeMaster().performCheckPointsThroughMaster( prms.getFileNamePrefix(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getPrecision() ); } // visualisation snapshots void LsmMpiPy::createSnapShots(const CheckPointPrmsPy &prms) { getLatticeMaster().initSnapShotController( prms.getFileNamePrefix(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } void LsmMpiPy::loadCheckPoint(const std::string& filename) { getLatticeMaster().loadCheckPointData(filename); } int LsmMpiPy::getNumTimeSteps() const { return getLatticeMaster().getNumSteps(); } void LsmMpiPy::setNumTimeSteps(int numTimeSteps) { getLatticeMaster().setNumSteps(numTimeSteps); } //------------------- // Mesh related functions //------------------- /*! read triangle mesh from file */ void LsmMpiPy::readMeshWithTag(const std::string &fileName, const std::string &meshName,int tag) { getLatticeMaster().readAndDistributeTriMesh(meshName, fileName, tag); } /*! read triangle mesh from file ignoring tag */ void LsmMpiPy::readMesh(const std::string &fileName, const std::string &meshName) { getLatticeMaster().readAndDistributeTriMesh(meshName, fileName); } /* create triangle mesh from within the python script */ void LsmMpiPy::createTriMesh( const std::string &meshName, const boost::python::object &nodeSequence, const boost::python::object &triSequence ) { const std::size_t numNodes = bpu::len(nodeSequence); MeshNodeDataVector nodeVector; for (std::size_t i = 0; i < numNodes; i++) { boost::python::object node = nodeSequence[i]; int tag = 0; if (bpu::len(node) > 2) { tag = boost::python::extract(node[2]); } nodeVector.push_back( MeshNodeData( boost::python::extract(node[0]), Vec3Py(node[1]), tag ) ); } const std::size_t numTriangles = bpu::len(triSequence); MeshTriDataVector triVector; for (std::size_t i = 0; i < numTriangles; i++) { boost::python::object triangle = triSequence[i]; int tag = 0; if (bpu::len(triangle) > 2) { tag = boost::python::extract(triangle[2]); } triVector.push_back( MeshTriData( boost::python::extract(triangle[0]), boost::python::extract(triangle[1][0]), boost::python::extract(triangle[1][1]), boost::python::extract(triangle[1][2]), tag ) ); } getLatticeMaster().createTriMesh(meshName, nodeVector, triVector); } void LsmMpiPy::readMesh2D( const std::string &fileName, const std::string &meshName, int tag ) { getLatticeMaster().addMesh2D(meshName, fileName,tag); } void LsmMpiPy::translateMesh( const std::string &meshName, const Vec3Py &translation ) { getLatticeMaster().translateMeshBy(meshName, translation); } void LsmMpiPy::createNRotElasticTriMeshInteractGrp( const NRotElasticTriMeshPrmsPy &prms ) { getLatticeMaster().addTriMeshIG(prms); } void LsmMpiPy::createNRotBondedTriMeshInteractGrp( const NRotBondedTriMeshPrmsPy &prms ) { if (prms.haveTagBuildPrms()) { getLatticeMaster().addBondedTriMeshIG(prms, prms.getTagBuildPrms()); } else if (prms.haveGapBuildPrms()) { getLatticeMaster().addBondedTriMeshIG(prms, prms.getGapBuildPrms()); } else { throw std::runtime_error("Unknown bonded triangular mesh build prms."); } } void LsmMpiPy::createNRotElasticMesh2DInteractGrp( const NRotElasticMesh2DPrmsPy &prms ) { getLatticeMaster().addMesh2DIG(prms); } void LsmMpiPy::createNRotElasticLinMeshInteractGrp( const NRotElasticLinMeshPrmsPy &prms ) { getLatticeMaster().addMesh2DIG(prms); } void LsmMpiPy::createNRotBondedLinMeshInteractGrp( const NRotBondedLinMeshPrmsPy &prms ) { if (prms.haveTagBuildPrms()) { getLatticeMaster().addBondedMesh2DIG(prms, prms.getTagBuildPrms()); } else if (prms.haveGapBuildPrms()) { getLatticeMaster().addBondedMesh2DIG(prms, prms.getGapBuildPrms()); } else { throw std::runtime_error("Unknown bonded triangular mesh build prms."); } } void LsmMpiPy::moveSingleMeshNodeBy( const string& meshname, int id, const Vec3Py& d ) { getLatticeMaster().moveSingleNodeBy(meshname,id,d); } void LsmMpiPy::addPreTimeStepRunnable(RunnablePy &runnable) { getLatticeMaster().addPreTimeStepRunnable(runnable); } void LsmMpiPy::addPostTimeStepRunnable(RunnablePy &runnable) { getLatticeMaster().addPostTimeStepRunnable(runnable); } void LsmMpiPy::runTimeStep() { getLatticeMaster().runOneStep(); } void LsmMpiPy::run() { getLatticeMaster().run(); } // Exit the simulation after running a series of single steps // of the time-integration method. void LsmMpiPy::exit() { getLatticeMaster().runEnd(); } void LsmMpiPy::force2dComputations(bool do2d) { getLatticeMaster().do2dCalculations(do2d); } void LsmMpiPy::setBBoxSpatialDomain(const BoundingBoxPy &domain) { getLatticeMaster().setSpatialDomain( domain.getMinPt(), domain.getMaxPt() ); } void LsmMpiPy::setBBoxSpatialDomainWithCirc( const BoundingBoxPy &domain, const boost::python::list &circDimList ) { getLatticeMaster().setSpatialDomain( domain.getMinPt(), domain.getMaxPt(), bpu::listToVector(circDimList) ); } void LsmMpiPy::setSpatialDomain(const Vec3Py &minPt, const Vec3Py &maxPt) { getLatticeMaster().setSpatialDomain(minPt, maxPt); } int LsmMpiPy::findClosestParticle(const Vec3Py &pt) { return getLatticeMaster().findParticleNearestTo(pt); } Vec3Py LsmMpiPy::getParticlePosn(int particleId) { return Vec3Py(getLatticeMaster().getParticlePosn(particleId)); } // ----------------------- // moving particles // ----------------------- void LsmMpiPy::moveTaggedParticlesTo(int tag, const Vec3Py &pt) { getLatticeMaster().moveParticleTo(tag, pt); } void LsmMpiPy::moveTaggedParticlesBy(int tag, const Vec3Py &displacement) { getLatticeMaster().moveTaggedParticlesBy(tag, displacement); } void LsmMpiPy::moveSingleParticleTo(int particleId, const Vec3Py &pt) { getLatticeMaster().moveSingleParticleTo(particleId, pt); } // ----------------------- // Wall related functions // ----------------------- void LsmMpiPy::createWall( const string& name, const Vec3Py& pos, const Vec3Py& norm ) { getLatticeMaster().addWall(name,pos,norm); } void LsmMpiPy::moveWallBy(const string& name, const Vec3Py &disp) { getLatticeMaster().moveWallBy(name,disp); } void LsmMpiPy::setWallNormal(const string& name, const Vec3Py &wn) { getLatticeMaster().setWallNormal(name,wn); } void LsmMpiPy::createNRotBondedWall( const NRotBondedWallPrmsPy &prms ) { getLatticeMaster().addWallIG(prms); } void LsmMpiPy::createNRotElasticWall( const NRotElasticWallPrmsPy &prms ) { getLatticeMaster().addWallIG(prms); } void LsmMpiPy::createNRotSoftBondedWall(const NRotSoftBondedWallPrmsPy &prms) { getLatticeMaster().addWallIG(prms); } void LsmMpiPy::applyForceToWall(const string& name, const Vec3Py &Frc) { getLatticeMaster().applyForceToWall(name,Frc); } Vec3Py LsmMpiPy::getWallPosition(const std::string& name) { return Vec3Py(getLatticeMaster().getWallPosn(name)); } Vec3Py LsmMpiPy::getWallForce(const std::string& name) { return Vec3Py(getLatticeMaster().getWallForce(name)); } // --- particle property setting functions --- void LsmMpiPy::setParticleVel(int id,const Vec3Py &V) { getLatticeMaster().setParticleVel(id,V); } void LsmMpiPy::setParticleAngVel(int id,const Vec3Py &AV) { getLatticeMaster().setParticleAngVel(id,AV); } void LsmMpiPy::setParticleDensity(int tag,int mask, double rho) { getLatticeMaster().setParticleDensity(tag,mask,rho); } void LsmMpiPy::setTaggedParticleVel(int tag, const Vec3Py &V) { getLatticeMaster().setTaggedParticleVel(tag,V); } void LsmMpiPy::setVelocityOfWall(const std::string &name,const Vec3Py &V) { getLatticeMaster().setVelocityOfWall(name,V); } void LsmMpiPy::tagParticleNearestTo(int tag,int mask,const Vec3Py &Pos) { getLatticeMaster().tagParticleNearestTo(tag,mask,Pos); } void LsmMpiPy::setParticleNonDynamic(int tag) { getLatticeMaster().setParticleNonDynamic(tag); } void LsmMpiPy::setParticleNonRot(int tag) { getLatticeMaster().setParticleNonRot(tag); } void LsmMpiPy::setParticleNonTrans(int id) { getLatticeMaster().setParticleNonTrans(id); } // ------------------------------ // field saving functions // ------------------------------ void LsmMpiPy::createParticleScalarFieldSaver( const ParticleScalarFieldSaverPrmsPy &prms ) { getLatticeMaster().addScalarParticleSaveField( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } void LsmMpiPy::createParticleVectorFieldSaver(const ParticleVectorFieldSaverPrmsPy &prms) { getLatticeMaster().addVectorParticleSaveField( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } void LsmMpiPy::createInteractionScalarFieldSaver( const InteractionScalarFieldSaverPrmsPy &prms ) { if ( getNameTypeMap().find(prms.getInteractionName()) != getNameTypeMap().end() ) { getLatticeMaster().addScalarInteractionSaveField( prms.getFileName(), prms.getFieldName(), getNameTypeMap()[prms.getInteractionName()], prms.getInteractionName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } else { std::stringstream msg; msg << "No interaction named '" << prms.getInteractionName() << "' has been created in this model."; throw std::runtime_error(msg.str().c_str()); } } void LsmMpiPy::createCheckedInteractionScalarFieldSaver( const CheckedInteractionScalarFieldSaverPrmsPy &prms ) { if ( getNameTypeMap().find(prms.getInteractionName()) != getNameTypeMap().end() ) { getLatticeMaster().addScalarInteractionSaveField( prms.getFileName(), prms.getFieldName(), getNameTypeMap()[prms.getInteractionName()], prms.getInteractionName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), true ); } else { std::stringstream msg; msg << "No interaction named '" << prms.getInteractionName() << "' has been created in this model."; throw std::runtime_error(msg.str().c_str()); } } void LsmMpiPy::createTaggedInteractionScalarFieldSaver( const TaggedInteractionScalarFieldSaverPrmsPy &prms ) { if ( getNameTypeMap().find(prms.getInteractionName()) != getNameTypeMap().end() ) { getLatticeMaster().addTaggedScalarInteractionSaveField( prms.getFileName(), prms.getFieldName(), getNameTypeMap()[prms.getInteractionName()], prms.getInteractionName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getTag(), prms.getMask(), false ); } else { std::stringstream msg; msg << "No interaction named '" << prms.getInteractionName() << "' has been created in this model."; throw std::runtime_error(msg.str().c_str()); } } void LsmMpiPy::createInteractionVectorFieldSaver( const InteractionVectorFieldSaverPrmsPy &prms ) { if ( getNameTypeMap().find(prms.getInteractionName()) != getNameTypeMap().end() ) { getLatticeMaster().addVectorInteractionSaveField( prms.getFileName(), prms.getFieldName(), getNameTypeMap()[prms.getInteractionName()], prms.getInteractionName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } else { std::stringstream msg; msg << "No interaction named '" << prms.getInteractionName() << "' has been created in this model."; throw std::runtime_error(msg.str().c_str()); } } void LsmMpiPy::createCheckedInteractionVectorFieldSaver( const CheckedInteractionVectorFieldSaverPrmsPy &prms ) { if ( getNameTypeMap().find(prms.getInteractionName()) != getNameTypeMap().end() ) { getLatticeMaster().addVectorInteractionSaveField( prms.getFileName(), prms.getFieldName(), getNameTypeMap()[prms.getInteractionName()], prms.getInteractionName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), true ); } else { std::stringstream msg; msg << "No interaction named '" << prms.getInteractionName() << "' has been created in this model."; throw std::runtime_error(msg.str().c_str()); } } void LsmMpiPy::createTaggedParticleScalarFieldSaver(const TaggedParticleScalarFieldSaverPrmsPy& prms) { getLatticeMaster().addTaggedScalarParticleSaveField( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getTag(), prms.getMask()); } void LsmMpiPy::createTaggedParticleVectorFieldSaver(const TaggedParticleVectorFieldSaverPrmsPy& prms) { getLatticeMaster().addTaggedVectorParticleSaveField( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getTag(), prms.getMask()); } void LsmMpiPy::addTaggedScalarParticleDistributionSaver( const string &filename, const string& fieldname, const string& savetype, int t_0,int t_end,int dt,int t_snap, int tag,int mask, double x_0,double x_max,int nx ) { getLatticeMaster().addTaggedScalarParticleDistributionSaver( filename,fieldname, savetype,t_0,t_end,dt,t_snap,tag,mask,x_0,x_max,nx ); } void LsmMpiPy::addVectorTriangleSaveField(const TriangleVectorFieldSaverPrmsPy& prms) { getLatticeMaster().addVectorTriangleSaveField( prms.getFileName(), prms.getFieldName(), prms.getMeshName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } void LsmMpiPy::addScalarTriangleSaveField(const TriangleScalarFieldSaverPrmsPy& prms) { getLatticeMaster().addScalarTriangleSaveField( prms.getFileName(), prms.getFieldName(), prms.getMeshName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } /*! wrap LatticeMaster::addVectorWallField */ void LsmMpiPy::addVectorWallField( const WallVectorFieldSaverPrmsPy &prms ) { getLatticeMaster().addVectorWallField( prms.getFileName(), prms.getFieldName(), prms.getWallNameVector(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr() ); } // --- with trigger --- /*! wrap */ void LsmMpiPy::createParticleVectorFieldSaverWithTrigger( const MaxTriggerPrmsPy &tprms, const ParticleVectorFieldSaverPrmsPy &prms) { const MaxTrigParams mtp=MaxTrigParams(tprms); getLatticeMaster().addVectorParticleSaveFieldWT( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), mtp ); } /*! wrap */ void LsmMpiPy::createTaggedParticleVectorFieldSaverWithTrigger( const MaxTriggerPrmsPy &tprms, const TaggedParticleVectorFieldSaverPrmsPy& prms) { const MaxTrigParams mtp=MaxTrigParams(tprms); getLatticeMaster().addTaggedVectorParticleSaveFieldWT( prms.getFileName(), prms.getFieldName(), prms.getFileFormat(), prms.getBeginTimeStep(), prms.getEndTimeStep(), prms.getTimeStepIncr(), prms.getTag(), prms.getMask(), mtp ); } /*! set verbosity via LatticeMaster - call gets communicated to Workers */ void LsmMpiPy::setVerbosityPy(bool verbose) { getLatticeMaster().setVerbosity(verbose); } // ------ const CLatticeMaster &LsmMpiPy::getLatticeMaster() const { return m_implPtr->m_latticeMaster; } CLatticeMaster &LsmMpiPy::getLatticeMaster() { return m_implPtr->m_latticeMaster; } /*! Global setVerbosity call. Only influences the Master */ void setVerbosityPy(bool verbose) { if (verbose) { console.SetVerbose(Con::all); } else { console.SetVerbose(Con::silent); } } class NodeRefVisitor { public: NodeRefVisitor(boost::python::object pyObject) : m_pyObject(pyObject) { } void visitNodeRef(int nodeRef) { m_pyObject.attr("visitNodeRef")(nodeRef); } private: boost::python::object m_pyObject; }; class RefStressVisitor { public: RefStressVisitor(boost::python::object pyObject) : m_pyObject(pyObject) { } void visitRefStressPair(int nodeRef, const Vec3 &force) { m_pyObject.attr("visitRefStressPair")(nodeRef, Vec3Py(force)); } private: boost::python::object m_pyObject; }; void LsmMpiPy::visitNodeRefs2d(const std::string &meshName, boost::python::object pyObject) { NodeRefVisitor visitor(pyObject); getLatticeMaster().visitMesh2dNodeReferences(meshName, visitor); } void LsmMpiPy::visitRefStressPairs2d( const std::string &meshName, boost::python::object pyObject ) { RefStressVisitor visitor(pyObject); getLatticeMaster().visitMesh2dEdgeStress(meshName, visitor); } void LsmMpiPy::updateInteractions() { // getLatticeMaster().updateInteractions(); } class ParticleVisitor { public: ParticleVisitor(boost::python::object pyObject) : m_pyObject(pyObject) { } void visitParticle(const CParticle &particle) { m_pyObject.attr("visitNRotSphere")(ParticlePy(particle)); } void visitRotParticle(const CRotParticle &particle) { m_pyObject.attr("visitRotSphere")(RotParticlePy(particle)); } void visitRotParticleVi(const CRotParticleVi &particle) { m_pyObject.attr("visitRotSphereVi")(RotParticleViPy(particle)); } void visitRotThermParticle(const CRotThermParticle &particle) { m_pyObject.attr("visitRotThermalSphere")(RotThermalParticlePy(particle)); } private: boost::python::object m_pyObject; }; class ListGatherVisitor { public: ListGatherVisitor() : m_pyList() { } void visitParticle(const CParticle &particle) { m_pyList.append(ParticlePy(particle)); } void visitRotParticle(const CRotParticle &particle) { m_pyList.append(RotParticlePy(particle)); } void visitRotParticleVi(const CRotParticleVi &particle) { m_pyList.append(RotParticleViPy(particle)); } void visitRotThermParticle(const CRotThermParticle &particle) { m_pyList.append(RotThermalParticlePy(particle)); } const boost::python::list &getList() const { return m_pyList; } private: boost::python::list m_pyList; }; void LsmMpiPy::visitParticlesWithId( const boost::python::list &idList, boost::python::object &pyObject ) { ParticleVisitor visitor(pyObject); getLatticeMaster().visitParticles( bpu::listToVector(idList), visitor ); } boost::python::list LsmMpiPy::getParticleList() { ListGatherVisitor visitor; getLatticeMaster().visitParticles( CLatticeMaster::IdVector(), visitor ); return visitor.getList(); } boost::python::list LsmMpiPy::getParticleWithIdList( const boost::python::list &idList ) { ListGatherVisitor visitor; getLatticeMaster().visitParticles( bpu::listToVector(idList), visitor ); return visitor.getList(); } void LsmMpiPy::createBonds( const std::string &groupName, const ParticleIdPairVector &idPairVector ) { //getLatticeMaster().createBonds(groupName, idPairVector); } LsmMpiPy::ParticleIdPairVector LsmMpiPy::getBondGroupIdPairs( const std::string &groupName ) { //return getLatticeMaster().getBondGroupIdPairs(groupName); } /*! export the interfaces to Python via boost */ void exportLsm() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif setVerbosityPy(false); exportRunnable(); exportCheckPointPrms(); exportInteractionPrms(); exportMeshBuildPrms(); exportBondedTriMeshPrms(); exportElasticTriMeshPrms(); exportElasticMesh2DPrms(); exportBondedMesh2dPrms(); exportWallPrms(); exportTriggerPrms(); using boost::python::arg; boost::python::def( "checkMpiDimensions", &checkMpiDimensionsPy, ( arg("numProcesses"), arg("mpiDimList") ) ); boost::python::def( "checkParticleType", &checkParticleTypePy, ( arg("particleType") ) ); boost::python::def( "setVerbosity", &setVerbosityPy ); boost::python::class_( "LsmMpi", "Lattice Solid Model (parallelised using Message Passing Interface)" " container class for defining particle simulations.\n", boost::python::init< int, const python::list & >( ( arg("numWorkerProcesses"), arg("mpiDimList") ), "Sets up MPI worker processes for use in a cartesian grid decomposition" " of the particle domain.\n" "@type numWorkerProcesses: int\n" "@kwarg numWorkerProcesses: The number of MPI worker processes.\n" "@type mpiDimList: list of 3 ints\n" "@kwarg mpiDimList: List of 3 elements specifying the decomposition of" " the simulation domain among worker processes. For example," " C{[3,2,4]} indicates a rectangular grid where the M{x}-axis of the" " domain is divided into 3, the M{y}-axis is divided in 2 and the" " M{z}-axis is divided into 4. A zero value in the list indicates" " that dimension discretization is chosen according to the" " numWorkerProcesses argument, for example," " C{(numWorkerProcesses=16, mpiDimList=[2,2,0])} implies that the" " M{z}-axis of the will be divided into 4 parts (ie four two-by-two" " cells). Particles in each domain cell are handled by a MPI worker process.\n" ) ) .def( "getNumWorkerProcesses", &LsmMpiPy::getNumWorkerProcesses, "@rtype: int\n" "@return: Number of spawned MPI worker processes." ) .def( "initVerletModel", &LsmMpiPy::initVerletModel, ( arg("particleType"), arg("gridSpacing"), arg("verletDist") ), "Initialises simulation data structures.\n" "@type particleType: string\n" "@kwarg particleType: Specifies the type discrete-element" " particles.\n" "@type gridSpacing: float\n" "@kwarg gridSpacing: The size of the grid-spacing used by the" " contact detection algorithm. For spherical particles," " C{gridSpacing} must be greater than double the maximum particle radius.\n" "@type verletDist: float\n" "@kwarg verletDist: When the magnitude of a" " particle-displacement exceeds this amount, the neighbour lists" " (used in the contact detection) are updated.\n" ) .def( "initNeighborSearch", &LsmMpiPy::initVerletModel, ( arg("particleType"), arg("gridSpacing"), arg("verletDist") ), "Initialises simulation data structures.\n" "@type particleType: string\n" "@kwarg particleType: Specifies the type discrete-element" " particles.\n" "@type gridSpacing: float\n" "@kwarg gridSpacing: The size of the grid-spacing used by the" " contact detection algorithm. For spherical particles," " C{gridSpacing} must be greater than double the maximum particle radius.\n" "@type verletDist: float\n" "@kwarg verletDist: When the magnitude of a" " particle-displacement exceeds this amount, the neighbour lists" " (used in the contact detection) are updated.\n" ) .def( "initNeighbourSearch", &LsmMpiPy::initVerletModel, ( arg("particleType"), arg("gridSpacing"), arg("verletDist") ), "Initialises simulation data structures.\n" "@type particleType: string\n" "@kwarg particleType: Specifies the type discrete-element" " particles.\n" "@type gridSpacing: float\n" "@kwarg gridSpacing: The size of the grid-spacing used by the" " contact detection algorithm. For spherical particles," " C{gridSpacing} must be greater than double the maximum particle radius.\n" "@type verletDist: float\n" "@kwarg verletDist: When the magnitude of a" " particle-displacement exceeds this amount, the neighbour lists" " (used in the contact detection) are updated.\n" ) .def( "setTimeStepSize", &LsmMpiPy::setTimeStepSize, (arg("dt")), "Sets the size of the time step used in the integration method.\n" "@type dt: float\n" "@kwarg dt: time step size used in explicit " " time-stepping scheme." ) .def( "getParticleType", &LsmMpiPy::getParticleType, "@rtype: string\n" "@return: A string indicating the type of discrete-element" " particles in the model." ) .def( "getTimeStepSize", &LsmMpiPy::getTimeStepSize, "Returns the current time-step size.\n" "@rtype: float\n" "@return: time step size for the current time-step." ) .def( "getNumTimeSteps", &LsmMpiPy::getNumTimeSteps, "Returns the maximum number of time-steps which will" " be executed by the L{run} method.\n" "@rtype: int\n" "@return: Returns the maximum number of time-steps to execute." ) .def( "setNumTimeSteps", &LsmMpiPy::setNumTimeSteps, (arg("numTimeSteps")), "Sets the maximum number of time-steps for the L{run}" " method to execute.\n" "@type numTimeSteps: int\n" "@kwarg numTimeSteps: The number of time-steps to execute in the" " L{run} method." ) .def( "getTimeStep", &LsmMpiPy::getTimeStep, "Returns the current time-step number (number of time-steps" " executed so far).\n" "@rtype: int\n" "@return: Number of time-steps executed." ) .def( "readGeometry", &LsmMpiPy::readGeometry, (arg("fileName")), "Reads particle-model setup from file.\n" "@type fileName: string\n" "@kwarg fileName: A file containing domain, particle and" " connection data." ) .def( "getNumParticles", &LsmMpiPy::getNumParticles, "Returns the current number of particles in the model.\n" "@rtype: int\n" "@return: Number of particles." ) .def( "createConnections", &LsmMpiPy::createConnections, (arg("iterable")), "Method for establishing bonds between particles.\n" "@type iterable: iterator\n" "@kwarg iterable: An object supporting the I{iterator protocol}" " (ie supports C{iter(iterable)} which forms a sequence of " "L{esys.lsm.geometry.TaggedIdConnection" "} objects," " indicating an association between particles with the specified" " id's." ) .def("setTimingFileName", &LsmMpiPy::setTimingFileName, (arg("fileName")), "Method to switch on the saving of timing information and set the filename.\n" "@type fileName: string\n" "@kwarg fileName: the name of the file to which the timing data is saved\n" ) .def("setSlaveTimingFileName", &LsmMpiPy::setSlaveTimingFileName, (arg("fileName")), "Method to switch on the saving of timing information and set the filename prefix for the slaves.\n" "@type fileName: string\n" "@kwarg fileName: the prefix of the file name to which the timing data is saved\n" ) .def( "createParticles", &LsmMpiPy::createParticles, (arg("iterable")), "Creates discrete-element particles within the model.\n" "@type iterable: iterator\n" "@kwarg iterable: An object supporting the I{iterator protocol}" " (ie supports C{iter(iterable)} which forms a sequence of " "L{esys.lsm.geometry.SimpleSphere" "} objects." " A model particle is created for each element " " object in the sequence." ) .def( "createParticle", &LsmMpiPy::createParticle, (arg("particle")), "Creates a discrete-element particle within the model.\n" "@type particle: object\n" "@kwarg particle: An object from which a particle can be constructed." ) .def( "createInteractionGroup", &LsmMpiPy::createDamping, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createLocalDamping, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotLocalDamping, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createABCDamping, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createGravity, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createBuoyancy, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotElasticTriMeshInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotBondedTriMeshInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotElasticMesh2DInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotElasticLinMeshInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotBondedLinMeshInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotBondInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotShortBondInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createCappedNRotBondInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotFrictionInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotElasticInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotBondInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotThermBondInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createBrittleBeamInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createFrictionInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotFrictionInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotThermFrictionInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createVWFrictionIG, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotElasticInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createRotThermElasticInteractGrp, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createHertzianElasticIG, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createHertzianViscoElasticFrictionIG, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createHertzianViscoElasticIG, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createLinearDashpotIG, (arg("prms")) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotElasticWall, ( arg("prms") ) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotBondedWall, ( arg("prms") ) ) .def( "createInteractionGroup", &LsmMpiPy::createNRotSoftBondedWall, (arg("prms")), "Creates a group of interactions with specified properties," " or a model-wall which is described by an infinite plane.\n" "@type prms: L{esys.lsm.InteractionPrms" "}\n" "@kwarg prms: An object describing the type of interaction" " and any parameters associated with that interaction," " or parameters describing the planar wall geometry" " and the interactions to which particles are subjected when" " they encounter the wall. For non-rotational soft bonded walls," " elastic coefficients are direction dependent.\n" ) .def( "removeInteractionGroup", &LsmMpiPy::removeInteractionGrp, (arg("name")), "Removes the interaction group with the specified name\n" "@type name: string\n" "@kwarg name: name of interaction group to remove\n" ) .def( "createDamping", &LsmMpiPy::createDamping, (arg("prms")), "Creates viscosity within the model.\n" "@type prms: L{DampingPrms}\n" "@kwarg prms: Object describing the type of damping and" " the parameters associated with the damping.\n" "\n@status: Deprecated, use" " C{createInteractionGroup(DampingPrms(...))}.\n" ) .def( "createGravity", &LsmMpiPy::createGravity, (arg("prms")), "Creates a gravitational body force within the model.\n" "@type prms: L{GravityPrms}\n" "@kwarg prms: Parameters specifying gravitational acceleration.\n" ) .def( "createBuoyancy", &LsmMpiPy::createBuoyancy, (arg("prms")), "Creates a buoyancy body force within the model.\n" "@type prms: L{BuoyancyPrms}\n" "@kwarg prms: Parameters specifying buoyancy force.\n" ) .def( "createInteractionGroupTagged", &LsmMpiPy::createRotFrictionInteractGrpTag, ( arg("prms"), arg("tag1"), arg("mask1"), arg("tag2"), arg("mask2") ) ) .def( "createInteractionGroupTagged", &LsmMpiPy::createNRotFrictionInteractGrpTag, ( arg("prms"), arg("tag1"), arg("mask1"), arg("tag2"), arg("mask2") ) ) .def( "createInteractionGroupTagged", &LsmMpiPy::createLinearDashpotInteractGrpTag, ( arg("prms"), arg("tag1"), arg("mask1"), arg("tag2"), arg("mask2") ) ) .def( "createInteractionGroupTagged", &LsmMpiPy::createElasticInteractGrpTag, ( arg("prms"), arg("tag1"), arg("mask1"), arg("tag2"), arg("mask2") ) ) .def( "createInteractionGroupTagged", &LsmMpiPy::createRotElasticInteractGrpTag, ( arg("prms"), arg("tag1"), arg("mask1"), arg("tag2"), arg("mask2") ), "Creates a tagged interaction group between particles with the specified tags\n" "@type prms: L{NRotFrictionPrms}, L{NRotElasticPrms}, L{LinearDashpotPrms}, L{RotElasticPrms} etc.\n" "@kwarg prms: Parameters defining type of interaction to create\n" "@type tag1: int\n" "@kwarg tag1: tag of first group of particles involved in interaction\n" "@type mask1: int\n" "@kwarg mask1: mask of first group of particles involved in interaction\n" "@type tag2: int\n" "@kwarg tag2: tag of second group of particles involved in interaction\n" "@type mask2: int\n" "@kwarg mask2: mask of second group of particles involved in interaction\n" ) .def( "createExclusion", &LsmMpiPy::createExclusion, ( arg("interactionName1"), arg("interactionName2") ), "Creates an I{interaction exclusion}. When a pair of particles" " come into contact, a decision is made as to the types of " " interactions to which the pair are subjected." " An exclusion precludes a pair of particles from being" " subjected to the interaction C{interactionName2} if" " they are already subjected to C{interactionName1}." " This is necessary, for instance, in fracture models, where" " particles are initially elastically bonded, but after fracture" " occurs particles are subjected to a frictional type of" " interaction.\n" "@type interactionName1: string\n" "@kwarg interactionName1: Name of an existing interaction.\n" "@type interactionName2: string\n" "@kwarg interactionName2: Name of an existing interaction.\n" ) .def( "createWall", &LsmMpiPy::createWall, ( arg("name"), arg("posn"), arg("normal") ), "Creates a model wall, an infinite plane specified as point-on-plane" " and normal-to-plane.\n" "@type name: str\n" "@kwarg name: Name assigned to the wall. This name can be used to" "to reference this wall in other wall-related methods.\n" "@type posn: L{esys.lsm.util.Vec3}\n" "@kwarg posn: A point on the plane which describes the position of" " the wall.\n" "@type normal: L{esys.lsm.util.Vec3}\n" "@kwarg normal: The normal to the plane describing the orientation of" " the wall.\n" ) .def( "getWallPosition", &LsmMpiPy::getWallPosition, ( arg("name") ), "Get position of named wall. Returns (0,0,0) for unknown walls.\n" "@type name: str\n" "@kwarg name: Name of the wall.\n" ) .def( "getWallForce", &LsmMpiPy::getWallForce, ( arg("name") ), "Get force acting on named wall. Returns (0,0,0) for unknown walls.\n" "@type name: str\n" "@kwarg name: Name of the wall.\n" ) .def( "createRestartCheckPointer", &LsmMpiPy::createCheckPointer, (arg("prms")), "Causes simulation to periodically save the entire model state" " to file in a way neccessary to restart the simulation.\n" "@type prms: L{CheckPointPrms}\n" "@kwarg prms: Object describing when and where to save model state.\n" ) .def( "createCheckPointerWriteThroughMaster", &LsmMpiPy::createCheckPointerThroughMaster, (arg("prms")), "Causes simulation to periodically save the entire model state" " to file in a way neccessary to restart the simulation.\n" "@type prms: L{CheckPointPrms}\n" "@kwarg prms: Object describing when and where to save model state.\n" ) .def( "createCheckPointer", &LsmMpiPy::createSnapShots, (arg("prms")), "Causes simulation to periodically save the entire model state" " to file for post-processing / visualisation.\n" "@type prms: L{CheckPointPrms}\n" "@kwarg prms: Object describing when and where to save model state.\n" ) .def( "loadCheckPoint", &LsmMpiPy::loadCheckPoint, (arg("filename")), "Load stored model state from a checkpoint file\n" "@type prms: string\n" "@kwarg prms: name of the checkpoint file.\n" ) .def( "readMesh", &LsmMpiPy::readMesh, ( arg("fileName"), arg("meshName") ), "Creates a 3D triangulated surface mesh within the model which" " is loaded from file.\n" "@type fileName: string\n" "@kwarg fileName: Name of file from which surface-mesh is read.\n" "@type meshName: string\n" "@kwarg meshName: Name assigned to the created mesh.\n" ) .def( "readMesh", &LsmMpiPy::readMeshWithTag, ( arg("fileName"), arg("meshName"), arg("tag") ), "@type tag: int\n" "@kwarg tag: Only elements with tag C{tag} are created in the model" " (optional).\n" ) .def( "createTriMesh", &LsmMpiPy::createTriMesh, ( arg("meshName"), arg("nodeSequence"), arg("faceSequence") ), "Creates a 3D triangulated surface mesh within the model.\n" "@type meshName: string\n" "@kwarg meshName: Name assigned to the created mesh.\n" "@type nodeSequence: indexable\n" "@kwarg nodeSequence: Indexable sequence of node data, each element is" " a tuple C{(nodeId,coordinate,optionalNodeTag)}.\n" "@type faceSequence: indexable\n" "@kwarg faceSequence: Indexable sequence of triangle data, each" " element is a tuple" " C{(faceId,(nodeId0,nodeId1,nodeId2),optionalFaceTag)}.\n" ) .def( "readMesh2D", &LsmMpiPy::readMesh2D, ( arg("fileName"), arg("meshName"), arg("tag") ), "Creates a 2D I{linear} surface mesh within the model which" " is loaded from file.\n" "@type fileName: string\n" "@kwarg fileName: Name of file from which surface-mesh is read.\n" "@type meshName: string\n" "@kwarg meshName: Name assigned to the created mesh.\n" "@type tag: int\n" "@kwarg tag: Only elements with tag C{tag} are created in the model." ) .def( "moveSingleMeshNodeBy", &LsmMpiPy::moveSingleMeshNodeBy, ( arg("meshName"), arg("nodeId"), arg("delta") ), "Moves an individual mesh node/vertex.\n" "@type meshName: string\n" "@kwarg meshName: Name which identifies an existing mesh.\n" "@type nodeId: int\n" "@kwarg nodeId: The identifier of the node which is to be moved.\n" "@type delta: L{Vec3}\n" "@kwarg delta: The node is moved by this amount.\n" ) .def( "translateMeshBy", &LsmMpiPy::translateMesh, ( arg("meshName"), arg("translation") ), "Rigidly translates a whole mesh \n" "@type meshName: string\n" "@kwarg meshName: Name which identifies an existing mesh.\n" "@type translation: L{Vec3}\n" "@kwarg translation: The mesh is translated by this vector.\n" ).def( "setWallNormal", &LsmMpiPy::setWallNormal, ( arg("wallName"), arg("norm") ), "Sets a wall Normal to the supplied vector.\n" "@type wallName: str\n" "@kwarg wallName: Name of the wall whose normal is to be changed.\n" "@type d: L{Vec3}\n" "@kwarg d: The new normal vector of the wall." ) .def( "setSpatialDomain", &LsmMpiPy::setSpatialDomain, ( arg("minPt"), arg("maxPt") ) ) .def( "setSpatialDomain", &LsmMpiPy::setBBoxSpatialDomain, (arg("bBox")) ) .def( "setSpatialDomain", &LsmMpiPy::setBBoxSpatialDomainWithCirc, ( arg("bBox"), arg("circDimList") ), "Defines the rectangular particle domain for this model.\n" "@type bBox: L{BoundingBox}\n" "@kwarg bBox: Defines rectangular domain.\n" "@type circDimList: list of 3 bool\n" "@kwarg circDimList: List of 3 boolean elements indicating in which" " dimension the circular boundary occurs. For example," " C{[True,False,False]} indicates a circular boundary at the" " M{x=}C{bBox.getMinPt()[0]} and M{x=}bBox.getMaxPt()[0]" " planes of the rectangular domain specified by C{bBox}.\n" ) .def( "findClosestParticle", &LsmMpiPy::findClosestParticle, (arg("pt")), "Returns the Id of the particle closest to a specified point.\n" "@type posn: L{Vec3}\n" "@kwarg posn: Finds particle closest to this point.\n" "@rtype: int\n" "@return: Id of particle closest to C{posn}." ) .def( "getParticlePosn", &LsmMpiPy::getParticlePosn, (arg("id")), "Returns the location of a particle with a specified Id.\n" "@type id: int\n" "@kwarg id: Particle Id.\n" "@rtype: L{Vec3}\n" "@return: Position of particle." ) .def( "moveParticleTo", &LsmMpiPy::moveSingleParticleTo, ( arg("id"), arg("posn") ), "Sets the absolute position of a particle.\n" "@type id: int\n" "@kwarg id: Id of the particle to be moved.\n" "@type posn: L{Vec3}\n" "@kwarg posn: New position of particle." ) .def( "moveTaggedParticlesBy", &LsmMpiPy::moveTaggedParticlesBy, ( arg("tag"), arg("displacement") ), "Translates the position of a particle by a specified displacment.\n" "@type tag: int\n" "@kwarg tag: Tag of all particles which are to be moved.\n" "@type displacement: L{Vec3}\n" "@kwarg displacement: Amount by which particle positions are translated." ) .def( "moveWallBy", &LsmMpiPy::moveWallBy, ( arg("wallName"), arg("d") ), "Moves a model wall by a specified displacement.\n" "@type wallName: str\n" "@kwarg wallName: Name of the wall which is to be moved.\n" "@type d: L{Vec3}\n" "@kwarg d: The displacement vector, the wall is displaced" " by this amount.\n" ) .def( "applyForceToWall", &LsmMpiPy::applyForceToWall, ( arg("interactionName"), arg("force") ), "A wall is displaced in the normal direction so that the total" " force applied to the wall attains a specified value.\n" "@type interactionName: str\n" "@kwarg interactionName: Name of the interaction group governing" " interactions between the wall and particles.\n" "@type force: L{Vec3}\n" "@kwarg force: Wall is displaced in the direction of the normal," " so that net wall force is C{force.n}." ) .def( "setParticleVelocity", &LsmMpiPy::setParticleVel, ( arg("id"), arg("Velocity") ), "Set the velocity of a particle \n" "@type id: int\n" "@kwarg id: the ID of the particle \n" "@type Velocity: L{Vec3}\n" "@kwarg Velocity: The velocity of the particle.\n" ) .def( "setParticleAngularVelocity", &LsmMpiPy::setParticleAngVel, ( arg("id"), arg("angularVelocity") ), "Set the angular velocity of a rotational particle \n" "@type id: int\n" "@kwarg id: the ID of the particle \n" "@type angularVelocity: L{Vec3}\n" "@kwarg angularVelocity: The angular velocity of the particle.\n" ) .def( "setParticleDensity", &LsmMpiPy::setParticleDensity, ( arg("tag"), arg("mask"), arg("Density") ), "Set the density of a group of tagged particles \n" "@type tag: int\n" "@kwarg tag: the tag of the particles \n" "@type mask: int\n" "@kwarg mask: the tag mask \n" "@type Density: float\n" "@kwarg Density: The density of the particle.\n" ) .def( "setTaggedParticleVelocity", &LsmMpiPy::setTaggedParticleVel, ( arg("tag"), arg("Velocity") ), "Set the velocity of a group of tagged particles \n" "@type tag: int\n" "@kwarg tag: the tag of the particles \n" "@type Velocity: L{Vec3}\n" "@kwarg Velocity: The velocity of the particle.\n" ) .def( "setVelocityOfWall", &LsmMpiPy::setVelocityOfWall, (arg("name"),arg("velocity")), "Set the velocity of a wall with viscous drag. This does not" " influence the position of the wall, only the viscous drag" " applied to particles interacting with the wall. Therefore" " it is meaningless for walls without viscous drag.\n" "@type name: str\n" "@kwarg name: the name of the wall\n" "@type velocity: L{Vec3}\n" "@kwarg velocity: The velocity of the wall.\n" ) .def( "tagParticleNearestTo", &LsmMpiPy::tagParticleNearestTo, (arg("tag"),arg("mask"),arg("Position")), "Finds the particle nearest a specified position and sets its tag to the value provided\n" "@type tag: int\n" "@kwarg tag: the tag to assign to the particle\n" "@type mask: int\n" "@kwarg mask: the tag mask to apply when tagging the particle\n" "@type Position: C{vec3}\n" "@kwarg Position: the position nearest the particle to tag\n" ) .def( "setParticleNonDynamic", &LsmMpiPy::setParticleNonDynamic, (arg("tag")), "Make the particle non-dynamic, i.e. the particle still interacts \n" "with other particles the usual way but doesn't move in response to \n" "forces applied to it. Useful if the particle is moved in order to \n" "create a deformation source.\n" "@type tag: int\n" "@kwarg tag: the tag of the particle.\n" ) .def( "setParticleNonRotational", &LsmMpiPy::setParticleNonRot, (arg("tag")), "Set the particle with tag C{tag} to be non-rotational," " i.e. it still participates in \n" "rotational (RotFriction, RotBonded, etc) interactions but doesn't" " rotate in response to applied torque. Only applicable if the" " particle type is rotational.\n" "@type tag: int\n" "@kwarg tag: the tag of the particle." ) .def( "addPreTimeStepRunnable", &LsmMpiPy::addPreTimeStepRunnable, (arg("runnable")), "Adds a L{Runnable} object to the list of runnables. The L{Runnable.run}\n" "method is called before the execution of a time-step. This method can be\n" "used to introduce a loading mechanism (apply force to walls," " move walls, etc).\n" "@type runnable: L{Runnable}\n" "@kwarg runnable: An object which has a C{run} method which takes" " no arguments.\n" ) .def( "addPostTimeStepRunnable", &LsmMpiPy::addPostTimeStepRunnable, (arg("runnable")), "Like the L{addPreTimeStepRunnable} method, except the C{run} method" " of C{runnable} gets called at the end of a time-step.\n" "@type runnable: L{Runnable}\n" "@kwarg runnable: An object which has a C{run} method which takes" " no arguments.\n" ) .def( "createFieldSaver", &LsmMpiPy::createParticleScalarFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createParticleVectorFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createInteractionScalarFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createCheckedInteractionScalarFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createInteractionVectorFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createCheckedInteractionVectorFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createTaggedParticleScalarFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createTaggedParticleVectorFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createTaggedInteractionScalarFieldSaver, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createParticleVectorFieldSaverWithTrigger, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::createTaggedParticleVectorFieldSaverWithTrigger, (arg("prms")) ) .def( "createFieldSaver", &LsmMpiPy::addVectorWallField, (arg("prms")), "Causes specified data to be saved periodically to file.\n" "@type prms: L{FieldSaverPrms}\n" "@kwarg prms: An object specifing where, when and what data are" " to be saved.\n" ) #if 0 .def( "addTaggedScalarParticleDistributionSaver", &LsmMpiPy::addTaggedScalarParticleDistributionSaver ) #endif .def( "addVectorTriangleSaveField", &LsmMpiPy::addVectorTriangleSaveField, (arg("prms")), "Add a vector triangle field saver to the simulation\n" "@type prms: L{TriangleVectorFieldSaverPrms}\n" "@kwarg prms: An object specifing where, when and what data are" " to be saved.\n" ) .def( "addScalarTriangleSaveField", &LsmMpiPy::addScalarTriangleSaveField, (arg("prms")), "Add a scalar triangle field saver to the simulation\n" "@type prms: L{TriangleScalarFieldSaverPrms}\n" "@kwarg prms: An object specifing where, when and what data are" " to be saved.\n" ) .def( "force2dComputations", &LsmMpiPy::force2dComputations, "Ensures particles only move in the M{x-y} plane and that" " rotations only occur about the M{z}-axis.\n" ) .def( "runTimeStep", &LsmMpiPy::runTimeStep, "Runs a single step of the time-integration method.\n" ) .def( "run", &LsmMpiPy::run, "Runs multiple steps of the time-integration method.\n" ) .def( "exit", &LsmMpiPy::exit, "Exits the simulation after running a series of single" "steps of the time-integration method.\n" ) .def( "visitNodeRefs2d", &LsmMpiPy::visitNodeRefs2d, ( arg("meshName"), arg("nodeRefVisitor") ), "Method for visiting mesh node Id's.\n" "@type meshName: string\n" "@kwarg meshName: name of the mesh whose nodes will be visited.\n" "@type nodeRefVisitor: L{object}\n" "@kwarg nodeRefVisitor: object which has a method named" "C{visitNodeRef} which takes a single integer argument.\n" ) .def( "visitRefStressPairs2d", &LsmMpiPy::visitRefStressPairs2d, ( arg("meshName"), arg("refStressVisitor") ), "Method for visiting mesh C{(element-Id, stress)} pairs.\n" "@type meshName: string\n" "@kwarg meshName: name of the mesh whose elements will be visited.\n" "@type refStressVisitor: L{object}\n" "@kwarg refStressVisitor: object which has a method named" "C{visitRefStressPair} which two arguments, an integer element-id" " argument and a L{Vec3} stress" " argument.\n" ) .def( "visitParticlesWithId", &LsmMpiPy::visitParticlesWithId, ( arg("idList"), arg("particleVisitor") ), "Method for visiting particle data.\n" "@type idList: list\n" "@kwarg idList: List of particle-id values specifying which particles" " are to be visited.\n" "@type particleVisitor: L{object}\n" "@kwarg particleVisitor: object which has a method named" "C{visitParticle} which accepts a single particle argument." ) .def( "getParticleList", &LsmMpiPy::getParticleList ) .def( "getParticleList", &LsmMpiPy::getParticleWithIdList, ( arg("idList") ), "Returns a I{copy} of particles with specified id's. If the C{idList}" " argument is not specified (or is empty) then all particles are" " returned in the list.\n" "@type idList: list\n" "@kwarg idList: Optional list of particle-id values specifying which" " particles are to be returned.\n" "@rtype: list\n" "@return: Python C{list} containing particles with specified id." " If C{idList} is empty, then all particles are returned in the list.\n" ) .def( "getLsmVersion", &LsmMpiPy::getLsmVersion, "Returns " PACKAGE_NAME " version string.\n" "@rtype: string\n" "@return: " PACKAGE_NAME " version." ) .def( "setVerbosity", &LsmMpiPy::setVerbosityPy, ( arg("verbose") ), "Set verbosity for Master and Workers\n" "@type verbose: bool\n" "@kwarg verbose: Toggle whether to print verbose debug information to stdout\n" ) ; } } } ./Python/esys/lsm/FieldSaverPrmsPy.cpp0000664000175000017500000001103512176660653017601 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include "Python/esys/lsm/FieldSaverPrmsPy.h" namespace esys { namespace lsm { FieldSaverPrmsPy::FieldSaverPrmsPy( const std::string &fieldName, const std::string &fileName, const std::string &fileFormat, int beginTimeStep, int endTimeStep, int timeStepIncr ) : m_fieldName(fieldName), m_fileName(fileName), m_fileFormat(fileFormat), m_beginTimeStep(beginTimeStep), m_endTimeStep(endTimeStep), m_timeStepIncr(timeStepIncr) { } using boost::python::arg; void exportFieldSaverPrms() { // Check that Boost 1.34.0 or higher is being used. // If so, disable auto-generation of C++ signatures for Epydoc // (which stumbles over indentation in the auto-generated strings). #if ((BOOST_VERSION / 100000 >= 1) \ && (BOOST_VERSION / 100 % 1000 >= 34)) \ || (BOOST_VERSION / 100000 >= 2) boost::python::docstring_options no_autogen(true,false); #endif boost::python::class_( "FieldSaverPrms", "Base class for parameters defining field savers to store model data.", boost::python::init< const std::string &, const std::string &, const std::string &, int, int, int >( ( arg("fieldName"), arg("fileName"), arg("fileFormat"), arg("beginTimeStep"), arg("endTimeStep"), arg("timeStepIncr") ), "Base class for field saver parameters.\n" "@type fieldName: string\n" "@kwarg fieldName: Name of a data-field.\n" "@type fileName: string\n" "@kwarg fileName: Name of the file where the data is saved.\n" "@type fileFormat: string\n" "@kwarg fileFormat: Format of the data which is saved to file.\n" "@type beginTimeStep: int\n" "@kwarg beginTimeStep: Time step when first data is saved.\n" "@type endTimeStep: int\n" "@kwarg endTimeStep: Time step when last data is saved.\n" "@type timeStepIncr: int\n" "@kwarg timeStepIncr: Number of time steps between data saves.\n" ) ) .def( "getFieldName", &FieldSaverPrmsPy::getFieldName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "Returns name of save field.\n" "@rtype: string\n" "@return: Field name\n" ) .def( "getFileName", &FieldSaverPrmsPy::getFileName, boost::python::return_value_policy< boost::python::copy_const_reference >(), "Returns name of file where data is to be saved.\n" "@rtype: string\n" "@return: File name.\n" ) .def("getFileFormat", &FieldSaverPrmsPy::getFileFormat, boost::python::return_value_policy< boost::python::copy_const_reference >(), "Returns format of saved data.\n" "@rtype: string\n" "@return: Name of saved data format." ) .def( "getBeginTimeStep", &FieldSaverPrmsPy::getBeginTimeStep, "Returns time step when data is first saved.\n" "@rtype: int\n" "@return: Time step." ) .def( "getEndTimeStep", &FieldSaverPrmsPy::getEndTimeStep, "Returns time step when data is last saved.\n" "@rtype: int\n" "@return: Time step." ) .def( "getTimeStepIncr", &FieldSaverPrmsPy::getTimeStepIncr, "Returns number of time steps between data saves.\n" "@rtype: int\n" "@return: number of time steps." ) ; } } } ./Python/esys/Makefile.am0000664000175000017500000000140112176660653015133 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am SUBDIRS = lsm esys_PYTHON = __init__.py ./Python/CMakeLists.txt0000664000175000017500000000025412176660653014661 0ustar vborosvborosADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/BoostPythonUtil") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/MpiPython") ADD_SUBDIRECTORY("${CMAKE_SOURCE_DIR}/Python/esys") ./Python/MpiPython/0000775000175000017500000000000012176660653014047 5ustar vborosvboros./Python/MpiPython/CMakeLists.txt0000664000175000017500000000046312176660653016612 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== #ADD_EXECUTABLE(esysparticle ${MODEL_SRC_LIB}) #TARGET_LINK_LIBRARIES(esysparticle Parallel libLsmPy ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) #INSTALL(TARGETS esysparticle DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ./Python/MpiPython/mpipython0000775000175000017500000000051312176660653016023 0ustar vborosvboros#!/bin/sh echo "WARNING:" echo "=======" echo echo "The use of 'mpipython' to execute ESyS-Particle simulations" echo "is deprecated as of ESyS-Particle v2.2." echo echo "Instead, use a commandline similar to:" echo "mpirun -np 3 esysparticle myscript.py" echo echo "Now executing: \"esysparticle $*\"..." echo esysparticle $* ./Python/MpiPython/MpiPythonMain.cpp0000664000175000017500000000337712176660653017321 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #if HAVE_CONFIG_H #include #endif #include #include #include #include "Foundation/PathUtil.h" #include #include #include using namespace boost; //--project includes-- #include "Foundation/console.h" #include "Parallel/SubLatticeControler.h" int main( int argc, char **argv ) { esys::lsm::setPathEnv(argc, argv); int status = MPI_Init(&argc, &argv); if (status != MPI_SUCCESS) { std::cerr << argv[0] << ": MPI_Init failed, exiting." << std::endl; return status; } // get rank int myrank; MPI_Comm_rank(MPI_COMM_WORLD,&myrank); if(myrank==0){ // if rank==0 --> master // start python // std::cout << "master start\n"; Py_Initialize(); status = Py_Main(argc, argv); Py_Finalize(); } else { // if rank!=0 --> slave // start worker // std::cout << "slave start\n"; CSubLatticeControler SLC; SLC.initMPI(); SLC.run(); } MPI_Finalize(); return status; } ./Python/MpiPython/Makefile.am0000664000175000017500000000265612176660653016114 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am PYTHON_LTLDFLAGS = -L$(PYTHON_SYS_PREFIX)/lib -lpython$(PYTHON_VERSION) bin_SCRIPTS = \ mpipython EXTRA_DIST = $(bin_SCRIPTS) bin_PROGRAMS=esysparticle esysparticle_LDADD= \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Parallel/libParallel.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/Model/libModel.la \ $(top_builddir)/tml/message/libTmlMessage.la \ $(top_builddir)/tml/type/libTmlType.la \ $(BOOST_FILESYSTEM_LIBS) esysparticle_LDFLAGS = $(AM_LDFLAGS) $(PYTHON_LTLDFLAGS) esysparticle_SOURCES=MpiPythonMain.cpp AM_CPPFLAGS += \ -I$(top_builddir) \ -I$(top_srcdir)/Foundation \ -I$(top_srcdir)/Model ./Python/BoostPythonUtil/0000775000175000017500000000000012176660653015246 5ustar vborosvboros./Python/BoostPythonUtil/ListConverter.cpp0000664000175000017500000000141512176660653020556 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Python/BoostPythonUtil/ListConverter.h" #include ./Python/BoostPythonUtil/CMakeLists.txt0000664000175000017500000000045612176660653020013 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(BoostPythonUtil SHARED ${MODEL_SRC_LIB}) TARGET_LINK_LIBRARIES(BoostPythonUtil ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS BoostPythonUtil DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/py) ./Python/BoostPythonUtil/ListConverter.h0000664000175000017500000000565212176660653020232 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_BPULISTCONVERTER_H #define ESYS_LSM_BPULISTCONVERTER_H #include #include "Python/BoostPythonUtil/Util.h" #include namespace esys { namespace lsm { namespace bpu { template class DefaultExtractor { public: typedef TmplValueType value_type; value_type operator()(const boost::python::object &pyObject) const { return boost::python::extract(pyObject); } }; template std::vector listToVector(const boost::python::list &pythonList) { DefaultExtractor extractor; std::vector vec; const int numElements = esys::lsm::bpu::len(pythonList); vec.reserve(numElements); for (int i = 0; i < numElements; i++) { vec.push_back(extractor(pythonList[i])); } return vec; } template std::vector tupleToVector(const boost::python::tuple &pythonTulple) { DefaultExtractor extractor; std::vector vec; const int numElements = esys::lsm::bpu::len(pythonTulple); vec.reserve(numElements); for (int i = 0; i < numElements; i++) { vec.push_back(extractor(pythonTulple[i])); } return vec; } template std::vector listToVector(const boost::python::list &pythonList, TmplExtractor extractor=TmplExtractor()) { std::vector vec; const int numElements = esys::lsm::bpu::len(pythonList); vec.reserve(numElements); for (int i = 0; i < numElements; i++) { vec.push_back(extractor(pythonList[i])); } return vec; } template boost::python::list vectorToList(const TmplVector &vec) { boost::python::list pythonList; for ( typename TmplVector::const_iterator it = vec.begin(); it != vec.end(); it++ ) { pythonList.append(*it); } return pythonList; } } } } #endif ./Python/BoostPythonUtil/Util.h0000664000175000017500000000214112176660653016332 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_BPUUTIL_H #define ESYS_LSM_BPUUTIL_H #include namespace esys { namespace lsm { namespace bpu { inline boost::python::object iter(const boost::python::object &pyOb) { return pyOb.attr("__iter__")(); } inline int len(const boost::python::object &pyOb) { return boost::python::extract(pyOb.attr("__len__")()); } } } } #endif ./Python/BoostPythonUtil/Makefile.am0000664000175000017500000000165412176660653017310 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Python.am lib_LTLIBRARIES = libBoostPythonUtil.la libBoostPythonUtil_la_SOURCES = ListConverter.h ListConverter.cpp Util.h \ PythonIterIterator.h PythonIterIterator.hpp libBoostPythonUtil_la_LIBADD = $(BOOST_PYTHON_LIBS) ./Python/BoostPythonUtil/PythonIterIterator.hpp0000664000175000017500000000350312176660653021577 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { namespace bpu { template PythonIterIterator::PythonIterIterator( boost::python::object &iteratable ) : m_hasNext(true), m_next(), m_iter(iteratable.attr("__iter__")()) { update(); } template bool PythonIterIterator::hasNext() const { return m_hasNext; } template TmplExtractType PythonIterIterator::next() { boost::python::object next = m_next; update(); return boost::python::extract(next); } template void PythonIterIterator::update() { try { m_next = m_iter.attr("next")(); } catch (boost::python::error_already_set &e) { if (!PyErr_ExceptionMatches(PyExc_StopIteration)) { throw; } PyErr_Clear(); m_hasNext = false; } } } } } ./Python/BoostPythonUtil/PythonIterIterator.h0000664000175000017500000000253212176660653021240 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_BPUPYTHONITERITERATOR_H #define ESYS_LSM_BPUPYTHONITERITERATOR_H #include namespace esys { namespace lsm { namespace bpu { template class PythonIterIterator { public: typedef TmplExtractType value_type; PythonIterIterator(boost::python::object &iteratable); bool hasNext() const; value_type next(); void update(); private: bool m_hasNext; boost::python::object m_next; boost::python::object m_iter; }; } } } #include "Python/BoostPythonUtil/PythonIterIterator.hpp" #endif ./Python/epydoc/0000775000175000017500000000000012176660653013403 5ustar vborosvboros./Python/epydoc/AuScopeBanner.gif0000664000175000017500000003754712176660653016577 0ustar vborosvborosGIF89abž÷ÿÿÿ9uìììþþþ”лÉç‘΄ÀˆÄ›Ùïv2³²²ŸÞŒÉ£áò1845m¨J‰\ž¾éùw²m²f œº R†u½æbœk¦z¶Z” ¡Ö®ÕÕuUpmns®A|=xW‘TŽL†HƒD_™¾ÞñPŠééé9vyÂ#‡Èí¬’‚½Q¤Ó6j³HšÇEb­ðÑÈØìúéõýÐÚæ–Ô±‘\­ÏÆë·¥/x½Fˆ²ËéØˆqÍåõÃå3´QDn™v³Ýîöٶ¯_¬Ú¢Ìé¿Ôç…¹âÖÕÖ½ÌÜ©zlã’tЃVNˆ¨æ`š0tºQ_«©×òFZWXꟄt¯0‘Ë‘oªrÄÈÇǰÖïáêó\–«êJ„„‚’Ñ2m—§ºÏX’P³àÞ¦—;vÚÅÅ# –Ôg¢u¼q·ñúþõçådƒ—d¨˜×x³—ÓñƒÁq¬ÓÍÜ•ƒññò”Ò[z£c£Ég²ßjª*~Á‡È0µã†Ã†ºa¢f°|²îííƒÊíq°^ ”¹ëL0úýÿþÿÿúûü£Â žÔôîî:vc¤¨ÁàE~ ™Ërª ©Ý¢Üö`½ä¼àO…P†“§‚¡Ëh¦ô¥Vëìó?¾ìýþÿÐëúçèñðèê,bžÿH° Áƒ*\Ȱ¡Ã‡#JœH±¢Å‹3jÜȱ£Ç CŠI²¤É“(Sª\ɲ¥Ë—0cÊœI³¦Í›8sêÜɳ§ÏŸ@ƒ J´¨Ñ£H“*]Ê´©Ó§P£JJµªÕ«X³jÝʦ·®`ÊK¶¬Ù«_ ¦=˶­Û·pãÊõ¸ö…€xóêÝË·¯ß¿€ L¸°áÈ+^̸±ãÇ#KžL¹²å˘3kÞ̹³çË ñàÑ¢´éÓ¨S«^ͺµë×°cËžM»¶é ¥qën¡»‚ïßÀƒ N¼¸ñãÈ“+_μ¹óçЇóÞ½›wi#²kß¾÷ïàËÿO¾üwïæÓ«_Ͼ½û÷ðß{G¿¾ýõ\Ñ¿Ï?=€ÿðË/„àeÐ ¸´1Á‚|p²àƒ Bø 2è`…VˆG…pr¡„jÈ¡‡†(a†r‚"„&B¸âƒ*rø¢…2Öø 38bCA(ôˆÂ oÌòÆÑDÑPÀB8´Ò ³X`GSv Œ¡å–à4@ `„%øá‡À2Ê(ছ4ÐÐ ÔYg#(Àž 8à'~:pÀ 40(Rˆ6 <ÐG Dé’Vú@•FÚ¥™6Úi£˜Fú¨6u< h'l0(„ê@l8ÿÀçž(ЈuÒð@œoº¹ç(° é™ X0K˜a’p àl©¥›Vv ­vôaN¶òHy£šWÞ9™OÞj~öÉç·Úg¸¹æ(ÃvâÝÈ’àå–{>-µ` €“qs °°6i0†eûˆBl€ ¶×)Ì’‚j`­B\#õ §<ÃO¼¬ŸºývÇï¿ê§¯Ý¾êš¿.ÀêÙ»>ýøÛqÄü÷ïÿÿØÄÖ c¸PYÊxV4ž-Pd@ëØÎ|öÀMЂ4« è³à‚#;ÙÏ8X2 Àƒ+;ZÒ–Ö´§EmjU»ZÖ¶Öµ¯…ÍcëQÙΖ¼ãµímÁ›[ÝÿîF¥èíJ}[²7¸Â!.qq²S#·§ÇENs–ë\è.Ç9-~n‹£ Ô¬P‡«ÕµîpkŠÝì,P»Ûi)w£ØÝµ|¼¸ ¯xÇKÞòšç#èIÏWàšõ°§=îy¯ìhß¼òƒ>ö½ï~ŠŒ¤$)žó±‹‘ù+ýÜGÉI¶“ ex&ÊR"Ì”ý *è („!t ,?˜Á˜ÙR„&á qvKŠ…B3!0†4¥1ÍiP+Ô¨f5íik)ðØÄæ¼¢MmlsÜäF7»ш{KâßÀÀDÂ“"û(È s_T@纈ÅxR.Œ²’՞Ȩÿ:9ñuj¤]²Ü¸¼+éŽJ¼£c+‚wGã­MÌ;óü(½@VïzÙÚ!•@ˆLÆ“äódHéH’z”<í‚_IGjROªÔ?ûC¥LgJÓš¢T•ôÆ ¦ uÈòf@ý©/uVK›—½„ /ªÔ_ÎrhAmª ÙÂd.3†Î¤a4mHM²™íš>Ôf»IÄ)‘oZòÛ- 8s>±édœžªØÎ+ÂS‹òÔ=ïŠÅ¼ªjP¯ãéR—+º.~@Á`;àΠqDè·P;Ï¡ÈKÛ%ÚÇèUT-ä2ŽPŽrœô^›<)KW‹ZŠ'µæ­K]kÓÚÿÚö¶¸NhŽL¬"˜OnT1ˆT¦—d5;êP;˜Ô 9u¸( .1WxL*†Íœ!4¥yÃþè«=Ì&¹9ÄožUœkmká÷¦¸’iV|'岨×yÒ—¯˜ó+>M·OÂ"ÀŒ‡…]bרFǾ²rìezÙÙ«<”²xmåo‚‰[gÿ9׋Ni¿×Vù¬6šÝŒm½Þ—ýõ…s·å<çð³°â¾3¹ üX?GÐêfYì–YîvhÏ#a.À dõ6{ø€8Xx˜¸¸{ÍK½]1ÆjÇGkÆ÷j?Öc²Æ|¿']ÐwdוdYµ]Ö'lQ†MÅ&VäueEt^á—^_öVb_êWOíÇEïwmñÇmÞ¦OýUgùP¶XÕ–P &€˜Q˜h€Ä5@8†dX†fx†h˜†j¸†l Ø‚Afj!HK9¦|&k(¸Tw˜‚·æ‚ÅddÖuUÙµdZÅ]]¥C78eÜ—lxó}hÿÅl\FN^fNìE‹s~Ôffvù•m^t„ûå„÷÷_v&…yÆæé–…ƒ6€\ÈYˆ†€WÐPІ¶x‹¸˜‹º¸‹¼¸‹oXBÒõ¨f‡6|tˆ\%8‡ÉW|Ã2Ë‚À‡ÓEU0(ˆ¾Vˆ5eÙ‡ƒÆ6Vå…eŽˆ^΄af~c–‰pfF¸„l–„ ³møä„öç_¦SXnU˜ŠW8Y‚ÖPV€°x€t½Xy™ é‹rè|Ð(‚§F‚¯&‘ÆÈ‡©‡s(dÙ1/ˆ½6ƒMÖ]ÚVÛçWV%>‰â7‰äm—xŽt¥‰ÖöŽGØŽÚŠqÿV:¢H¥ˆX§¸gVøXØ„F€›a`s g°LÙ”Nù”P•󋹑¼çÇXŒwH‘{ˆ‘Ìh‘§¦‘X™B¸kÒ7ˆ¿fˆ×‡ˆÛ¨ˆ&YVáøƒãèVåø’D(“ë§„è~7¹„ñ8F<…>I`@©BɕՊ[hh =Ò° —$•’9™”Y™–iTyBÀ–›IŒÎ˜ŒÌ8|8vjϘ•XYš(Ô™ÏW–уÓGˆ4l#Ilݸƒwƒ’ËÖl’øl•Wæx—鸉z©fž¸Ž{É„rÆ_ó…ÿ4˜Txn&Y–˜þØnGÙGò †—¹ÜÙÞÉ ‡q6ÿ7q8'žåir$ÇqêYq·ž(çq4w.GžìŸö9žwž s<çs@g BGtG‡tJÇtâtP'uWguW—u[W)]')`—u“Wvg—vk·xo×vk7wjgw‚—w!Zx}x†7¢w‡¢ŠWw‰—¡m·¡‹÷x—2v’7y•çu‘‚y¢yW×yTW¡€aß9¤DZ¤FÊ‹™)–ÙŒU‰•\陣©•Pʤ/£‚Ë×‡ÒØ‘¼&ƒÔç5Ùˆ}$™ƒTÖ}—* „”X~v‰~eœ3éŽ[d“Ÿè—9)XËn͉g„in|†nÒ€ŠùGù˜GZ¨†z¨ˆŠIªšKÿª¤Tú¤Ì©QzšVJš,aÉ‘¬YI}À&’`J›:ˆlߨƒ¹‰ãf.©Nd_yI“ì¸9p u*£X¦¸§ùØgû8붘IÊ™‰Z¬Æz¬Èê† Ù¨Ëú¨Eµ•Ï:¥`)­^Ù¨Œ*cZz–×› Ê–aZ›¤z’ysª+É›jʪ討iV9k&«}yœ¡nø—§ûW˜¼z˜¾ª…‚ÚC°”Éú¯°Eº¨Á‡­‘а“º¤¥écÕJ¥Ž:LÙêšh‰²ªÚ'¦‹XªY~g:—NT—è“núªpÚ®ÐfÃÉ®÷T«€Éœãv¨x¯«H”®ÿ˜6ŠÐª'°<Û³>û”+ÂX©Rš°uø•ë°ÏÅ™~H]­i ù©‡ø]mY’¶©l«›©Ú›CتE¸® ƒ²* «ðZ§Êy«=©§ÏÙ§Ñ €¬Xȳ ù³t[·vÛ‹A›©W¹¤’j𠋇¹´Ô*¸cy­d鴜ʥ°’S;l ®d Ž)©µ,©ª–8²mª®œHœ|9§e;vz§ó³?ɧAY³ÔIhËðÃJ¬wûº°»˜·V9´¯&š~›»¸«´¶¸½Ë´Yº©©¸iù¥Þ*ªcʈ¸™µ¨Z¹\û›^‹—ÆÉ¹H¨m Ø‹½= _f»“0k¥ÿ»«~ê¶6k<ª0¬²›¾ê»¾8Ñ@ð¿Àñ[¿P¿ò‹¿ð;¿úK÷«¿wп|@¿Ü¿¬¿lÀýû¿øË \¿Œ¿¿¼À LÀlÁñL‚×°Ù‰0²×pÂàÂl0 ,ì°ðÂI÷&qB€Ð€ N€:³² À±b (ÝF(…B(©ÂÐ(‹B*RWXР“¢)_GyfGylç¢ÚxqÇv  5!Æ?ðdpª  C€Ž cWÅ–—£’²  ÐÄÚ  ŠzGL(¬XC¼(®R:XÀ¼' gPì›ÈŠÿ¼È÷2ò!.b#'ÉR"#BÉ Ò"¢É B""‚!#2#ÀÉ Ê1ʂɥ,É€#Ì #I06e$œ@$E‚$@Ô$O2 ~P¦Wâ¨%]ò%bBNdb&h¢&°Ð&½²:—x'y2+A| „rE‰u‚u–’y8ª)”B ‚  nP äÌO° è<ÆfŒÆH° ۰ƦR¨òW{,(ÒÚ œ P+þºÂ+½ò+Á‚&ÄÂFÇ&µ° ®ËÈ ÝÐìK»cÙ¬Dû™©°¹;­HK¸ÖÚ´Ô8¼¯Y¼{¼;ª‘kªÌ[®ä¸ªÓF²š»²a;O À`•ÿ`-P`•ðDpQ0‡pH€Äð Ûp Ž Ïh+˜j‹Ð©Šš…C íÐXÕw Ñ̺·Îz´Û·¼Ë\¾KÖÀ«· µžª–6Xµû–Xûˆ”k®*‰,-œdK½¢#3mdpFØ¥¡Ó<}G°ˆp5p¨àŸ€Ô· Žà½xJººÕ½ªPUÈZÝÙž]·\ ±}» ù·»»‚y¨Ñk¸šŠ¸]±ÜÚ¸‰hµá —“Û¼Ï&„Л®x}²—#ZÐ×Ü`g : Ø-`fPØ0ˆàÍÐ ¨ ½ m · ¯¤èÔõjº†ÿ¹Š¤`oœýÙä]ÞÿÚ—Ú¤|kѺ$Ö¨]ÖΘޚÉÑ€¸¥m±ÝJµßJÒÊ;®'¦-y¹+¹½½m|-ܧ°;° ›`ÜF€-\ð` ÐÍ ´@Ý­†°ÔMM¯2k¯ãË;‡Ðæâ*~¬è¥ Ö¹ëÞW ßÂ'ß›kÂk߰͸k©ßÈ»±<رrÛ)-àvMàoúfŠÜ3Í ÜÀÊ à ¾ ýоañðÐ  ò° ¼â0æÄ° JàáŠâ–½¶§‹P‡pÈ+çr~¤-d×*ãwxÚ3Þ•ªšôm–»­<ÞÖû¼ß¸¼CÿŽÒiZ×0‰ä&O@ ZÀäNŽ;yåS^å¾áÀå” p° ð€î@ ´€‘íáÆ˜"¾˜Gï`Ès^ë¶îu~ÖsˆçSªç–šÚ¿›‘¬=õ­­QËÖ³9Ò†äf:×Eî›kÊÛI®Eè éLnN® © ˜.å Îéñîn¡Î½Pê§^ÔCàá{ ·B'¸êœPͶ~¬»³·žïú•á‰rø¹q7sÿŸóÉpí9r¯rÿ^ð¯r¯Ÿ1gŸñùÙpàðqýùsA7tEwtI·tMwOuSGu zu:Êu8 v5JvU yWÜx0ÿêxŒ÷¡zx„§¢2 BpíÀ ß@äÀíyàíœ^XþÃ@îò°Œ¥Î ¨€C`V_ ¡w,£›2£]×ò›Âñ°ïd_ö@;Úv>K¼š¥M¥ ûÞºÑÄèj½¸RÛãŽËü]ªþèn¹Ð>²éW²Ó;92 <ÏäÀ =Ðð Cßí ®ý`Ó®ôL/Œð PÏ Íp7PõV¯ ŽpÃñþÔ3{Žoö¬ßú™ë®öìMÚÀnÖƒì…ûçOÛ©vì«÷Ë~›}/Ž»ùeÏíw=í¿­ÌßóÀ Œ/yü0ôÜ®àßþàf0á ÿ.ê»Ð ½àùŸ_ª` †P Õp £ ¾—MÝ`ÈWíúò?ÿjû¹?‚³oŒ¾®Œ PXPà‚&THa‚Â… ”$G$’LšTÂ㊉Vté¢Â¤šE)T^¹âÂ…;IPÌDqâ 7t¢á©€E–,„¶²`L;’6ÐtÌSH€¡ZÔO£BF*еÀ4ŒmÔHA´Ô:¨ÓàÀqã>×"Š Ñ"DPA‚ æG.Ue;6éèg¤.ÐrØ ή^»vÕprȳªSÕªR(l]·Žòà§“Ÿ¢TÁ`DdÀÿ`ܹuïæÝÛ÷oàÁ…'^ÜøqäÉ•/gÞÜùsèÑ¥O§îû‡D‡ØµCÌÎ]â‰BO>üx…å†ghP½ÁönoˆþöŠ3nìø1äÈ’NJi¥–^Љ¦šnÊi§ž~ j¨¢ŽBªƒ˜r *©d³ +­ àª+°Ä"Ë,´X‹-·àª‹.¹:É+¯½„èaÆjÀ­œgÈÉ#Å61¢‚ÌxB² 6@ä²fàpbÉ@!ƒŒS¢<%NKÍíZ{­( º9Ĉ۪sL2Ë4óL4ÓTsM6Ûî:îì+(¾ˆâ¤Ï½ó¾Ó"ñö\O:xoNöîœSÎ:ÿÌÿ#8ò¨D"É$PR)–\‚I&šlÂI§xBÃ' „â€(£&\ª) ž#ª©ª²àª¬¶òê«°ÆB ¬³ÒZ«­·ê"€Å¸áØÿšQ8 °Ãc¬…dž<¢È#•Dd‰@ºýáp¡œ’ +UËÒ5ØÂ B7Ûu÷]xã•w^zëÎú M>D'2Ï~Hàúü÷O…æ;ø>@õ¨ß@Zt?Gý“4ÀJÄ´ÀMôtÁP,ÂT'¬UWaÕpV¹úWw%ÑWµ€UQ.bÙÙ½d 08ÊÁ ZwÐÁ#Ìà‚ˆ\®EÄ Îœˆ‚‡%~øÿ!„{°7ƒ Î ƒÔÌeÍt–8cgÑTÆ{Ûvûm¸ã–;n|ùu8bˆý4Èàôô–/`‡îÛ»† Ï×p†'n´?Hÿ›TÀK35Ó™>UTR<5BUO¾ðÕ e¥U«—aÖ•×O´YXb‘ðgFgr„~Ö07iì±¥˜ÇHm‰ÂBˆ"„UBP^ë{ÎûÊÕj0í´3¢쟰º'j‰áûdp‚í¹Ë7ÿ|ôÓW·y.pÿý îÀþ÷ï ß}ûï—ÿþøù<Ìï~ÿ H?Ò/ôÃÃá—@ø9ð} äŸñwÀV~à ,Lqÿ‡;˜B„²Å"d!  £‹ Æ"Nôjô¡u¨Cl؇ÜP‡iP@}¨€4à‡Bl@‚xÄ báˆhÀœˆ'Fщiâ HE+B [LýÈÅ-Âïˋ|ö³-’ãkÄÝŒÖjqÁZØr"±„áo{äcò°ölщ»h2ª§'€OÑQFÀ÷Èï-a}“¤d%-yÉêÔíPwÃNÞö7¿ ,OŸÜ—|E°@ Ža‡CXâ,Â(þ<*R¢”¥¤©uJA—™æP%¡¤PÈB­ÂP¬À°¡Z•.D§›™LT³±Î.°ŒbG#,ÿÄ ;HE7“Æ8FiD8‚Óž¶<OÉ€;žÀvð1V«5Bq„MG@x$ùš£ @²üüÞ¶‡I„&T¡ ­¤&âÉVnq!ßðDÊ‚n¢9eà"ÖIN@q±´-!wËÉyl— •ƒLõK¤s˜) Ý1YV+ye™#êÕ3¡¬ÅÅ BÏ8#PÄ"iˆGS4݉SŽÐ8BŒdÇtAúøG1 P °VžÉ»Z>‡SŽ'@Ò Ï9Â#À.j ¥k]íz×y9ôa!eå*/š0°¡ôWÂ:ºÑ‚}ÔNˆ•Ø+)ƸY>.ÿc‘ãX.+·Òµtd›+YRVõ9•‰®eÊÌOS÷«h•>XÀÊø³dS›”PFb¤µ» =á å<Œ”N"@Aéèê4 Ð‚¯‚5žQ0Û!}ÐGá9Þûž ŠWìfW»Û•Ž^»ÑR>Ôa ì_÷V^BN°~5åÝ êJý,N–ŽÃ˜-7†KÊ%èS,ÍÜK9g²™se£s™NK+³žª.µ8‹K>Z»½ü,©K}À+ܸ‰ÅàViO B%¤‰cl G ‚‘=èáÓp rÁºŠ(D ÄiAu¡ƒ'8‡ºáãn}üc [¤Œ2x5ÊõRÉæÿM¯a ›JÅöµÉð…eÅw±ZjLrÓå~3Û_’S)ž#&茉LÒÝj§>íOo6 ­¥‚¥BñÃÐA8[¼á)Ì!Ó˜Æ1зàÄ(.Æ%rà ¤ñ • BæÁŽëú&‘1˜Ç<Àg#Ýl¢ÓÞ¨G›<Ò ÃÙÄj€½ZÌ߸QÆœkYófÔóŒ¨qmVÞ´ÖNÐ^}ld y±FÆÛx—¬dŒZÚFVå´ÙËQ÷†t¤VŽl}µ\ÙüZŽ¿. sL…‰2‹§/[3êh†" 2Ø­] ¡¬)U›HÃ+Öâ q¡È`ÿrà BWO0ñ‰Sìèäàhâ¬ô¢0e€Ãö`j ¾Ý|ü{ƒAktgÍel’1õ`æAPµÂ7€§W.ÉÜ”CKXyøNžl }»Þ}ï”%jdò6é…ò“ ÅØ¢×iÛ¥o–)‹_•zs俬˜?[æÐÚ”À¤™»} ï7‹Áh-¨éŽŸåyб µÌpw.”!AB˜ hBÃ[u¸Š!ÎHSüZQø…pÚƒZ Æ‘ÕÈcršãfÇ1ª{c„¯œ×ƒÙ1–0Éû<7nýö`ƒµÒ:õ5˜Ç „Ž ]÷»gèÄÿó{ñðÀÿ=ˆüãO@øÉ7þññ|N ßùÉþñ£O}æC¿ùį>ñ·|N|¿øÌ—¾÷³ÿ{f¤H§lò†YpâÑ ? Xà€R=¢­ÀÀ,ü 逦p€2{ phˆ•Y8¦]ñ?ð€…Q€…¸•8˜!‹è)ŸÂ‚µx‹·ˆ¦N(„R€êƒ2A`»¶ƒ1XtX*,PHƒ4€hÀ»'(ƒ/˜à;‚›„›†bH†ø‡‡;¼¿û‘ ùƒo(Žr€®€Çã±Ü°<Ì9Ùƒ¤#@¹‚yȧr0œ• e°› ÿ™ƒ¤00«”S5ÍŸ+ƒ®Øã=>ìCKš DA¤€ àƒAÄ 8Ä@LDE,DE$ÄG¼ƒGäCTDI´ÄI¬ÄC¼ÄCdÄCäODNÄPDP|ÄR\DM$ETÄp‡GÀƒkX‡l¨ÅD¸EYH„kØEpèE6˜`ôXÆòа @è@`¦Fx€F(‘X„`6p:<ÁH‘``ƒN0ÁBÐm !Âò¡è!" "+Z¢(‚"Ör;·[€=ŒT"Ô³^ Ýb€/È8Ø»&ð;AC¸»†TB¾ã á'Ü8çÊ ÿ3ø €«Mè§,̼äBZS¹ïÙCÜP9 ˜5<‘Ã=ÝØ±ÑHʽ ƒÁÈÈÖÓ´ú™óCŸüɹ!:¾²ÄZº$%€q:õb²ðJ¬l#2‘r,ù*)ɲ¯-³,ý™­Û,˜0t3³k™œ‘3;‹·¹@Öª·{ÄGA(…h¤Á{b€*ÈK‚Œƒ8È¿3¸ˆ ̈+8¾‹dh È'Ü€3ŽTƒ½ÜH=“ÔÂÊÉÜhÃïQCÜèHð‰ÉÝxLÈÔ œä¼™“Œ+Œ|Í/ IJ،ͶJ¨”²¦4J¦<²¤dº§;ÊÂÚ›(#Jÿf£©$©+3©ÉB).»,­ë%ÿê¬1 0°T·43°²›™³[ ò{lËÀPx¹ìü™ZÈKô„/(Hƒ ‚¿4¸‚#L¾›‚¬€xˆ‡aXÌ(ü ÎŒÈ+”.Ü L×¼<Þx‚׳IÔ|¤žÔG*¶ÜÈ8ðùO™ÏË #xÐrx¤# 9Ï”MQ6¡Íá\¶kÓÍÁÂ(Ü´6£Ã6Þ\ÊÝ+¨œºù²“º¯”ê2­tÎróJЪ)4+0²¼ÎC-´w¨G{¤·°$KAØÂ+(+HÏA`Ï¾ã»ø”Ï ðÁø‚A0ƒûÌÏ"iÌß°9ÿ øÐØÉï©B еLÝ0‚×ãµrà9ôþôOÞxÐÁà¸@íÌ?í9Ó$QE]Ô31Ñm¶¢|6¤ôMi›Ô­6KQLýÍ£{TâŒ/ãì6«SN¬·/㺮ô,2£©3»©ê,Rf:R7“&î´GsÒqÀÀ·À‚+µ‚"Ö*(‚AØÒ‚üA¾KV1Ó,Ö)ˆ‡?˜Œ ˜‡ý|.D…¤–£S³Ó;…$vÙ±Èë Ë£PíÌAÉrýžy°¼kÖdTxWèpÔ…T¤“TÍÍJÍWM=,j ÎN­×O­2ªÃÑäÔÑåÌJ^Ò,_ú/\Õt;±d·²ÄÎÿ³L»Ð¶ëN']€qh­5@À8L(,Vb%VcåËeÓü‚a-€Öo „i%ß(¹v%Ô9åVmeAEIßÐï!×Õ³Ðs¹B-(£TyZ©í®"óTÑÍT­Í(¥t²õZf‹:±Qªô¶«ÛQæìQ†}N¯ƒØé”ØdR³Š•U´“&{èÎ|˜3zûXz£‚=8+¸Ò“"PY–-V‚ôÁŒY™ÍKšý4µ¸‹$½êÚµ]ãÐmE×›äÖP{$^ÃÌÜË ˜ƒPZóÈ =Ú-D]˜{שm]×=zmJ{MѬå×­ÝWTêÍÜl:¨Ó¶âä¶ÿªËÑ« 7ÌÚʆí,™úʰÒ±4Óz·Õé„Ph¨€r¸„îÔÛ¶ã[í-(,5ÙÁ-ÂVÄeÜ1…Ùfe'¤Œ Xþ´ÃÞH½EúYðéÉ=å\ ÅÜ 5×ÞÍÓ€ÑÐÓuW¡íS4}]nà5­ ª ÒŸÆÿ1  . û   V ²  € Þ`.á îýŸÂ!22¡R!ºFµ€!¢!:ÁuLLÁ ò!"R#B¢$B"'j"=«",šG~³¢,²¢WØJhªëú[Í[zÓÞzkA{ßÁ=Yò Vb­‚|ÙeHÿˆ\D€‚ÉåÓhPÜHM¶yZÒÝ',§Ý IòÙ¼ŸË\ÎkP˜,ÍêêI€ò_Ëc]^dŽ]N•]±­]‚‘dêZà|Ê%Ûã¬Êa pË:µ³®3·]^W%Rçe³0803Ø„LËÈ[·Óâ¶Ûâ¶ÌÞ{c1ÖbUO—MVe7ø†'ÜgØY‚ àÍt+˜Bð‚*lÔcÚMà'èPÇMÈÃþÕÈy€+¹ò<•«¸âY7$äï1瓌f¸â8æ4`k%ad{ŽZGXñŠÔÝôMJF¬MÍ]…dßUà5X«üd]XQNÕèT^!=e²Ó•ÿfØ€?øÏp…ÉÕ ¨eÐâ&åØ9ËÞ.ÖÛRXðÅÒ*(Ö88È ¸.ƒU‡#á Cê 8½PÞH=ÅL8̼Íë9ÍÄ 8êÁh$Eê´Ò›µGr$ ¨x=•$Éð©æÐ½g¬ŽÍ|ÆdÚÅ×IöêJþÚKîÝýÝ‚E΄ƺ…7®tØä ÒV%°æÝ'X×|Bäp؃`ðZmA/Ö[]&éŽõØq8lÄFl0¦ÆÆQ˜\êª_ßHÍ*¤ju¥Ì9DTv®¼Ð{¤Z0«üí¹ÏN×8jÕcŸ×s««ÎjÖöí&ë{íçÜüçµäö‚m«ÕdQ^…N[ÿ†FU‡}h¸ˬÚ3òÙèâ(‡Ð`¸è‚=XL Ü{éÁnÒ½^.‚aeσtP80Wè e5F¹]»Ð'x5¨…%€eS#5Z;‚[ ìÉ5ß0ƒýîï“+_«þv¤UçÁˆoþ®'ãü~µðÖ®p­®Z½ÚÛëhC¯¦ è°Û‚&ØEëoSkßfë㦷»Ð™$8î~êQnä€'pnàn€k2£!Hi!ßÀ]Ù‚Û„5UãeÛΑÎ@„y¨0 ¼.“_ `ØqnÐd½`-ò0>t2&Ö–n!äGw&Ÿƒ9¨0ï#x†dÃr-ßtyåòGä0×Wd§s-óÜ>ó²U„-ÕâõÑQ6x …@ø8Wàn~`‡=çèñ@ׂ½tÁ=ô“elOÐQ°„&@†9XrHwt)hò2tÀ *?6MçtpWÔö¡à ö`rOa f a÷a÷ ààtÏ î`yg †àr¯÷wï  ¡*¡J¡j¡:€š¡º!¾!"þá!¢]€ƒÿãš1{1RàÀ†a'vç*PvM0!t¼ø c„2Xr&¿ö&„J?–#°qíúöp¿y­&¿ó3¿ã[¾žÇ>ë+?à뾡‡>¡ÿ=¢?ë?ñHzä[ú>ŸçyªŸ€ôc†õk¿Ë‚?ù£¿h°?üË‚GÐ?þó¿‡@ @W1@L@þ6€ê6šw“€`vt¾pnAßqMÜ5¸…22ùcù‹ðUhò&—ô9(x„¼¨…ô:›ÇyËwmIÐpRŸ]¬ u=ˆQç]ßýOñÇBs³%Uâõ²[‚(8¡¡ô¹Ç-à†qnÿ`>§‚èóÀ0oó6|¤7`|iŸ'Øöc1‚ÉÏtͽ|êJO¯WP—íÏ·]®5õR}ÝÅ~ÓŸÊMNýV§i‚!˜‡U€eà~¸sJ*‡<°Ç}(yÞ·-Üp$¨Eˆ"  Ô£¨ Ê «ˆÌ :…Šˆèèñ#È"G’,iò$Ê“1VÆHéò%̘2gÒ¬ió&Μ:wòìéóåB‡ 0èP H…*]jtiQ¨ N8ºtêUªV‘bEÚ鄯D»;4,T³L·–M+T’9Lù×Z ¹ä`ëù ‡^ßÏ0í{™ö¹Å)°3Y• Â4_=úé«¿>rrÎøþâÅG®<æb?§PÎs®ÿöÚ¡OáÑÌža=ö¡ju¬Ó;ºÇ¤ï‘F]R"Å= à R°‚$ ðŠÂ8üÅOxÆëÓŠæ‡6R(ÁsŸ#·¨™ öë>÷9Ü‚{Ü#6”Ï/$ò°‡>ŒZŸ"¼ïÈ:Çs¶€Ä?µ…Î1‹êHé #Àóý°pœ ëP÷“X¢#^(ƒ9À€ˆÁ # Öà3¢‘#ð‚<ÂÅŽ¬¡‹RX¼B¨q müb×è…;JaRxã¥à4®A $ ‰H(rcüȡȀx±#eXd%½€G=€f”‚+6ÙI|w¬",c9“ nÿ~Á#J;†Ä]Þ`‰ü“ÿRø‘˜Š²<&O2L „Ä0AŒ`eCòXjŠa°D"ÑEe23tÂ'@Xk#" G)X"e Ä•i D‚e Ã\ȎС eÈ„>ùéÏy®Ó#äœ&Ä@‡.6tß$D8-áÈu*”txD)Ú‹ZbéD&JSú‘R}d,õHîBS”ÌŒf6­™H´¨Òúf #DM(>³#‘Pä6GÀ)DÂ#Œüi½`O=ÒÁ¤#] ‰¢ñ¤_lgG6Θr›5(!ÀZJkza/ÿȦG|JV”1™X'!è †¦j“ ®P*-Q×»îQ¯M=)O«ØÅ2–_C5Õ©L8z$Þ0ª"#á»2µ”šÀc#ûEÍRµ#ÐŒÀAéÏHzµ j«âiOèU ™x­5å dl)‰Go ò‘r"× ™\–26«±»ÈE²’“4Î#éL‰ÕT2@Êøì*VéH“¹Ìf>óItªSß°&mÉ›GbÀ˜¸0Îh¾3žó¬ç=ó¹Ï~þ3 -èAºÐ†>4¢­èE3ºÑŽ~t†(M(—A2ÑÃ6¯9iƒ÷# Ã%Ój‰®nóÒ p…mY åTKÓaBãXJè^º”Ñæ†²»¡i,ƒ+Ö †ç¢½ÐŒcCí³Î5x7â^(ê®ÇH”ÝV×(ôŠÆÙV³ÜGð pîŠz¦ž‹Ày»][„õ½h’þEªÝQ=ßE9AÝòM Ó?Ñ^ù”déVâÉšõ1Õ¡‘DÍU½a`i!XÅSñ±zWç1”¦=Ò6µ“‚–EÂÅurýÕ‘_ º‘3ÙPa^‚E\*ÕÂ`»•ÿXeWPªQ2À ×ì–V v¡J­™KœŽ†€aG!L˜áM ¡®!¶¡¾!Æ¡Î!Ö¡Þ!æ¡î!ö¡þ! ¢ "!¢!""&¢"."#6¢#>"$F¢$N"%V¢%^"&f¢&n"'v¢'~"(†¢(Ž")–bê*¦¢*®"+¶¢+¾",Æ¢,Î"-Ö¢-Þ".æ¢.î"/ö¢/þ"0£0#1£1#2&£2.#36£3>£|L#5V£5^#6f£6n#7v£7~#8†£8Ž#9–ã6@˜£:®#;¶£;¾c;¢#<Îc8Ê#=Þÿ#>æ£>î#?ö£?þ#;~ $A¤A$B&¤B.$C6¤C>$DF¤DN$EV¤E^$Ff¤Fn$Gv¤G~$H†¤HŽ$I–¤Iž$J¦¤J€@®¤K¾$LƤLÎ$MÖ¤MÞ$Næ¤Nî$Oö$C¶¤O¥P%Q¥Q%R&¥R.%SBäGTF¥TN%UV¥U^%Vf¥Vn%Wv¥W~%X†¥XŽ%Y–¥Yž%Z¦¥Z®%[¶¥[¾%\Æ¥\Î%]Ö¥]Þå|„ì%_ö¥_þ%`¦`&a¦a&b&¦b.&c6¦c>&dF¦dN&eV¦e^&ff¦fn&gv¦g~&h†ÿ¦h:ÀG$€iž&j¦¦j®&k¶¦k¾&lƦlÎ&mÖ¦mÞ&næ¦nî&oö¦oþ&p§p'q§q'r&§r.'s6g|D§tN'uV§u^'vf§vn'wv§w~'x†§xŽ'y–§yž'z¦§z®'{¶§{¾'|Ƨ|Î'}Ö§}Þ'~"ÀGö§þ'€¨€(¨(‚&¨‚.(ƒ6¨ƒ>(„F¨„N(…V¨…^(†f¨†n(‡v¨‡~(ˆ†¨ˆŽh|Ä(œ(Ц¨Š®(‹¶¨‹¾(ŒÆ¨ŒÎ(Ö¨Þ(Žæ¨Žî(ö¨þ(©)‘©‘)’&©’.ÿ)“6©“ŽÂGX€”N)•V©•^)–f©–n)—v©—~)˜†©˜Ž)™–©™ž)š¦©š®)›¶©›¾)œÆ©œÎ)Ö©Þ)žæ©| ô©Ÿþ) ª *¡ª¡*¢&ª¢.*£6ª£>*¤Fª¤N*¥Vª¥^*¦fª¦n*§vª§~*¨†ª¨Ž*©’ÀGŒª¦ªª®*«¶ª«¾*¬Æª¬Î*­Öª­Þ*®æª®î*¯öª¯þ*°«°+±«±+²&«².+³6«³>ë|DL+µV«µ^+¶f«¶n+·v«·~+¸†«¸Ž+¹–«¹ž+º¦«º®+»¶«»¾+¼Æ«¼Î+½Öÿ«½Þ+¾æ«¾vÀGØ¿þ+À¬À,Á¬Á,Â&¬Â.,Ã6¬Ã>,ÄF¬ÄN,ÅV¬Å^,Æf¬Æn,Çv¬Ç~,Ȇ¬ÈŽ,É–¬|D+¤¬Ê®,˶¬Ë¾,ÌÆ¬ÌÎ,ÍÖ¬ÍÞ,Îæ¬Îî,Ïö¬Ïþ,ЭÐ-Ñ­Ñ-Ò&­Ò.-Ó6­Ó>-Ô¶ÂG°ÕV­Õ^-Öf­Ön-×v­×~-؆­ØŽ-Ù–­Ùž-Ú¦­Ú®-Û¶­Û¾-ÜÆ­ÜÎ-ÝÖ­ÝÞ-Þæ­Þî- |Äü-à®à.á®á.â&®â..ã6®ã>.äF®äN.åV®å^.æf®æn.çv®ç~ÿ.膮èŽ.é–®é~ÀGœ€ê®.ë¶®ë¾.ìÆ®ìÎ.íÖ®íÞ.îæ®îî.ïö®ïþ.ð¯ð/ñ¯ñ/ò&¯ò./ó6¯ó>/ôFï | T¯õ^/öf¯ön/÷v¯÷~/ø†¯øŽ/ù–¯ùž/ú¦¯ú®/û¶¯û¾/üƯüÎ/ýÖ¯ýÞ/þæ¯þî/ÿ¢ÀG¸°0°0'°/07°?0G°O0W°_0g°o0w°0‡°0 —° Ÿ° |Da¬0 ·° ¿0 ǰ Ï0 ×° ß0ç°ï0÷°ÿ0±1±1'ÿ±/17±?1Gqa|D`T±_1g±o1w±1‡±1—±Ÿ1§±¯1·±¿1DZÏ1×±ß1ç±ïq`|Ä^ü1 ² 2!²!2"'²"/2#7²#?2$G²$O2%W²%_2&g²&o2'w²'2(‡²(2)—ò^|z¤²*¯2+·²+¿2,Dz,Ï2-ײ-ß2.ç².ï2/÷²/ÿ20³031³132'³2/337³3§òG˜€4O35W³5_36g³6o37w³738‡³839—³9Ÿ3:§³:¯3;·³;¿3<dz<Ïÿ3=׳=ß3>ç³ | ô³?ÿ3@´@4A´A4B'´B/4C7´C?4DG´DO4EW´E_4Fg´Fo4Gw´G4H‡´H4IÃÀG@J§´J¯4K·´K¿4LÇ´LÏ4M×´Mß4Nç´Nï4O÷´Oÿ4PµP5QµQ5R'µMŸ´R7µS?5TGµTO5UWµU_5VgµVo5W¯4Sw5X‡µX5Y—µYŸ5Z§µZ¯õK„¼5\ǵ\Ï5]×µ]ß5^çµ^ï5_÷µ_ÿ5`ö]¯@¶a6b'v\¶b76`3¶cG6_C¶dW¶e_6fg¶fo6gwLöa„/…¶h6i—¶iŸ6j§¶j¯6k·¶k¿6lǶlÏ6m×¶@mç¶nï6o÷¶oÿ6p·p7q·q϶)&·r/7s77 ;./Python/epydoc/ACcESSLogoWatermark768x270.jpg0000664000175000017500000012544312176660653020504 0ustar vborosvborosÿØÿàJFIFHHÿáExifMM*ÿÛCÿÛCÿÀ"ÿÄ ÿÄY  !1AQ"aq#2‘¡B±Ñð3RSTbr’“Áá$5Cs‚ÒÓ%u”¢²´Âñ67cdtƒµ4D³ã…£ÃÿÄÿÄB!1AQa"q2‘¡ð#BR±ÁÑSbrá’$3‚ñCEs²“¢ÒÿÚ ?þþ)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR¼–#ó~÷ü)JõJð ÎI/ñÆ3îϯ,3ÃãìÏãIi?PkÝ+çÏ=ü±Ú³JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¬dz¾•‚@úò¨¯”³¬#Úäœà>øÿÚ£ú´Ú¬ör®•s¥Ðö£y"I•ðѰ‘YSw“ì`åHÎ=kw­k±ÑVBw.ÈÛÛŸ1Ÿ?*‰Ëª^KœLcSž!ùÀ—ûÜ×édÁßÈÒY!B bÚAæ7øWO è㉰è.HÌY„lXÔuEA®:ëì.d·»¼u–'Ä‘MmmŸQ†©ØÃ”d;YH r{ºw\Þ]8Š{“ìp¡Ò#ž0š3´žÛ_ìcÀ© oá‘‹1{e‰,NÙ$d󂣿—§hÍzË8|7¦=†Ål-ËÖs°ÅJ–>qè¡Àóú§ãŠ¥ôMd’¶Woœá`™>‚) îdbs“´ä–çžqƻۃßÖ¼ž/ø‡£/ð/9q‘ØK©°e$fÄÊ)šÎ)ÙAV$ ´Ði;ù:· ¹ŠáÊ’Æ{:2‘ë‚È#ÌcƾÊIÎH<ñÛöæª{™­dA+ÄäÛO ðÇgó`þ=æÚ_QGpV ½ÌxçHG™çèØ÷îPùÚ§ÃzBÝÖ ppÜ ##& ÔkÈÀ:½o¯£BŸ‘÷ý~òªW•lüGÖ=ÕêºUb”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥+àéZ“_[[2 ‰¢‡x%C¶ ¹îýu³!I'h$ù`N}ÜU[ªÞ›ûÙfĤ¤YÈú58Vàð\’ç×p”UT·yc± óëTÞAòßÏYº-ɺӠ9Ë ðdÏpÑàyîɵ±éÛ¾jæ؇duU!s.RLÁ|ÿñÊk7ÍÆ*À"uë¹5Ú¥)]³JR”¥)JR“õ•ŒòGlcŸ|f¸†Þ7šy(cžYR5_2ÎÄ(Éâ«Mkå&ÊÙš&ÜßH2>q6bµ\g” ¦ó%=ÕØc2Ú³vù‹H_©y±ÐuçPÝ¿jÊÍÇ ÐnÇm—RwªÏ9Î2–y­²ÏÏ/­-±ØMqmýV}ÇŸE'Ý_5®×õ2Â}BX¢lý¡ù¬@ÍÄD;,K$œTq™˜–f,Ää³I>¤œ’~5Ò·è¦:ݺMÓï5ß‘uιéE[¶[»˜¶XßsòÒ¿IM×1 *uX\(b¹˜wòxá(~‡ÆµÊLÿw1øYÜñÎÌþãç_éSEØæ÷½GIÙc¬} ƒøþKoÞüótýëôd}Ó@ÇÇúK[µ>ñ cßúqœu ꞟ¹ C«Ø{ 'X[Ý•›aœ÷'˵~_¥`ú.ÉÚåÀzxOMvëð•ô¥á’Ùë‡ê//×0ÜÃ:î†X¥SØÅ*H§Ó•cß9·Ýû~kò¶„dü±¥¤o"oÔ,Õ¼7(J›ˆ÷‚2 äsH¯ÔËœŒÉòc·Æ¹¸¼/«2®|áÁaáÊD#BfMt°˜“‰Vl¡2°L̉:éîÒ¾”¥*¥[¥)JR”¥)JR”¥+FãP´¶s÷Äø µÜÚ{z_²¼~WÓ–Áýð¨gTùÌv;m¢8#Õ›õþºŽž yùqäkÒ7m^¹mm¡ÙA%¤ÄLòê;öÞª\Ä2;(Uð˜“:Qõóµ+é¿Ë`þ¿øSò¾›ü¶ëÿ…U9ƒñýtÈô먿Š^þ]¾\Û·ùú:GëOøSçûùý moÊúoòØ?¯þü¯¦ÿ-ƒúÿáUNG ü]2=ãúéüR÷òíü[·ùúÙëOøSçûùý moÊúoòØ?¯þü¯¦ÿ-ƒúÿáUNG ü]2=ãúéüR÷òíü[·ùúÙëOøSçûùý moÊúoòØ?¯þõ‡P²¸EÌRÈA!²H$ãBªPF@ÀçŽÄþ©LŒêƒ·³ÍÀÇš¯éb>À|ê[>’»rí»fݰ•I¤@'¤ïðۦɈvuR@0n¤÷øö«°sŽMdœw®n¥©A§C¾BZGÈŠ% 3ŸPOGç7`=øÖw[jYÈUPI'^cMÏ*¸X($˜s[åÀÆ1ß$;ç$öíçŠæÜk:}±"K˜‹r±î™ÁðÁù`‘ÜsŠ€ßj÷—ÌÞ$…büØ£%PzdiñÛ,NyÆÑ€9dç/OÛŒý‚¹7})‹6Áí9:÷ 6Ô*¨Ø­| #©÷r‰ê9uò°›ªtå$¹B±¢‚?ÛÃÐWÕv$óÐø,dýÞ ¨rry¦O©ûÍV>’ÅuAäƒõ'èùT^³wªü>¾”X‹ÔúsLÑ÷úуÿqÛoøVôZÖ)nàÉìŒg?í€?nøÕ]¸ñÀôöû©žsöÙÏ£Ý[/¥1u¶ÞæSñþU‘Џ7 tèF¾ê¸£‘d‘•ÐŒ†C¸ݘp~Î=õì@ϸ8á´Èš¼ê{q™ ÀD}õß ZíY¸nÛ·r#:‰˜$¹’=Ýêê6e É€1Ó­Írr<¿oÛí¯9$dcY?g>\ükNþúZiŸ 0×wÆB¦@çÔ“…’@5 nòô• `€ò±FÇ$sõß»Ÿ†=àÔŒe¼<s9w‰ævgS¬ Þµ¹y-èuoÂ7÷ô÷ëÐTîãV±¶$Kq°üÕ&FÏ|a#íÀd æ¿TéÊHâAäV ¹þ¼Šqñý^~Ùó¥sҗϰ¨ƒ¡.dÆžUT⮕Wæyoˮ߰?uv>p\²3ÿý9û+ê½Q¦±äNžöŒcþÃ5Wd F=ùþïÑŠÅj=%ŠR„`0GåÏm+_Y»;ˆéÓ§—}úiVŒZÞ)ÂÝĤùH/ûáGíéÍtâ–9—trG"ò7FÁ×#ädyöÍS€1Ÿ·öþúŸô£†²|Öäžù8hãý%IûjîrýÑiц9”‘°Œ÷çSÚ¾ÎÙX FâwÓå¹úŠ”R”®¥Z¥)JR”¥yv*¬Gp¬Ãâ)ÌgjøÍp±pN3?¿¶;è9Ï;¿™Qæ÷ñž¨äƾe‹Ç–cÏpsÇÀ`cí&¾3;G²"dŽFDÙ‚’8$–ÆÑçÏÏk¯u‚©* 6™ ŽñÌzM]KjŠIˆÆ9i ÷öòïÊÖŠBPãÛ)‘¼ª²eÊä»° cnHÉÅE² öžFrN=üW¤å}__¼¸Ô§•å{I™ƒHUX™cûÄQ•ʬ‰$Ñí£hŠA edxÒ1;2°*U‰ <‚ Ñ\ÏLú$ZÅŽ.&Ú ³i®1Ñ•˜KR@`IÚ*ï¢ý#ÆÂø0îÄ]¸¨¼ 1VHÔAŽ\ª êya–KS±Èê³+ª8rœÆWv}®ÎG|`TZ¥S§éö²Åq§C-¼S¼Šð»D`‡„,ŠrÄ«;~®ÑÅDëÞúa×ÑXUÃ]kÖT:­ÇLŒÄ9ÎÚÉ ‘¬ÄO‰ôɾޑ¾Ø‹kjëd%‹()’’ dEd||¹Æìj¢ê>¶í™àÄr#.œìãÌãkŸá ö9ªþº:]ç̯b”“á1ðæ¨ügÏ”8qÇ—p3YôÎc°nk ܲ`L¨üj"?55FÅÂŽ5𶇦§uY~|éžØÇ¿Ï×ÝCŒðr=Gcå‘ñïöÖ+æ•ÒޥںѴ»bQˆXfrO‡ØÝ% 8V'ØàTåg*r=ÿ·#Ü|ª™òÏ¡ßúª{Óº¡¸O™ÎÙš$&'ëÂ8Ç™-ã'ºœžÄ×cŒ$‹Ú-±ÜÁöO»@zÀÖ®X½µ·?ÚOäCîéRªSõ~¯×JìUÊR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JSµ+˲ª’Ç'ÐÉøɬ;V×núôÞ£½G¨ {3gÜ’œw$ovììú’9W¹ïß‘øä»¾;×GU½ùýܳgèÔøp/¤jN¯µ’ÇМf¹Ÿ·Ý^kyÜ_ Nºítñtí\ÛÏɨÑ~Sñ"~¯EHÝÜm8 Œä<°F1ýüW_D±·È¤f(q,¤d… ª{·6îHÎ8Í}:‚×æÚŒŒ îf\g`wïÞ¤ãùÃßQð[€oýÞ HætßÊ`|k\‡‡Äå0;÷ßmc@u®î>"¥/tc¸žÕŽ|Eñ=¤á±ñBIŠàD«rÎèÚÝÁr ŠÌðO³ ûP·ÛLÓ s…~Ûò wS¡ýém²:°êò$õ¿J·)^EeÞ¼©‚<ÃrøþŠ÷^¨6:ŠêÌý{ÿZR”¥+çìþ8®¿Ô ¯Î.ßs¶DÉáÇæ¢“Â/äa±22I*§ï­ëº%„÷÷<øk¶(Æ7Ï3áÃsË–8 goeM~jÕµk½fö[ÛÇ,îp‘‚|8cÙŠ ~ª/ÞÇ,Ä’M^Á`Î!³9ËiLÍ›O ˜ˆxònjŽ30ë•|WHðÌBÿSu`{´Ö·µÞ¥Ôµù‹]Jc¶V&8˜ˆ#à‘Á–Lw‘ÆIú¡²#Ô¥zE¶¡B¨€DOsÔÉ<äó¯>î׳±f;’düùRŸüqû~µ6éÞ‰ÔuµK™óc§“¸O"4뜓Äq•8âWÂqìïäUǤôމ¤*›{8äœMÕÒ‰ç-ü \m‹á¨ú©fÉ+­Ç”èš1ÛAÈkÖ*ÝŒ ëÐÄCͦO‚~1±å­~{´Ðõ‹àÓL¾iÚ_çŸßYDö«®Õ.24™þuÅšŸ¹®óȯÒ[Gl ØãÓÓØ<‡âGëªÒ·IðÚ¶£¡ÌÇ–æ@>á×Ýxz.Ð5ËŒcX ã¬òïÔö¯ÌòôoSB }"äíïá43Ÿ°C,„ý‚¸w67ÖgmåÕ¡ô¹‚Hyþ1WÈdc¿•~´ÛÍ_´“úE|Ú%‘JJ©"0Ã+ÊG¡VR÷b²¾•¸=»(ê³)ï¾aòçXoE¡Žõ3¶ÐG}ôÔWæ^”O¨ôu8¾‰þÈó!û‚_§Tv>â?Íq¦´XïaÔ!Óíà»Ùã–ð}¦VBZ8ŠDùWo®‡±ôîA€°õý¼ûýæªã1#èʬ¹R$sIˆê4˜Ÿ*µƒÃ¶†ÌÙ€ ó<»šõJRªOÔ·"bu¥+ÎáëÛöü<ÿõ¯4Q‚ÒÈ‘(8Ý#ª½ˆßA®ƒSÐ}wfäy‚½È¯­+Cò¦˜¡d1ÿÍC÷}zû¥Ý¼¿½O ¾¾±¿ýÖ?·<ŠÌ˜?û|¨NÌ¿ûÖÅ+ÎõõÇØk!Î<¿a÷Ö+'Môÿ5]õ?ùÍÿ/û‰?ßQÓÉ'Ôšïu+nÕ$òúGáŸïþêàW–ÅÄÞ¸ùˆùW.ôñnOâÓÊV@ÏÝ‘ïç§ŠÙK+ÉúÏ—ý£ýâ²qƒñ'ôÖÖ}¶®¥ÁqŽFÍTDF¡‰VˆT`Ù‰‚××-uóŸ2¸HÝØ€ˆ¥œŸ%PI?f*©¿¼’þæIÜœ£Sœ$kõPg¶Éã–ç–&¸æ=*ñ‡s§Ù$ˆø1âªóØ\çãœóøT>•¸s[µ$,gaÈ™…Ÿ-ÀïçZb˜øLjÄr;ùÀ ‘’{{©ŽÞÿÑëúxâ±Úº:eŸÏïb·$…b]Èàˆ×Úb‘8 ÖÏ–k”ªÎÊŠ%˜…$óÜþuPĹ0=õ𷲺»b¶ð<¸8$ *ÿIɿٮ²ôÖ¤T R4Ê »‡ãV6ÑAÅ,q Q3Ç$ùžç¹95ö*¾xý½+·oÑ–‚Ž+;±å!TÀ‚OœûªêáP1=¶åØŸñå5[?Nê‹Ú(äã?G*ÁÊü®\ÖwVÿ¿Á,@yº2¯Øäl>¾Ë·0}î4d À ç €AÏ|‚—¥Ñvˆð;¡å0ã—e=yÐáS‘að#÷ÿ;À¨ÏK¾l$ü;‡Àá’>O'ןy'5&à'q3é“ýÙäþuñ†ÖEq çØ n~Ûˆ ãó8ò½sÛŽ ™òʯÿJ¹iZÆUŽcm7Ê'¼LFûÞ*u®QtŸÐUw¬_›ûÉsb&8~\“î5Âêr- Á® .%fŠÚOÒK·'qî"yvÆAƒ¹Ö©ç»‰uµhvÊ nNš“Èuè&L«j·9™]­Ï™îk¤qäsöb¢1?VäöðçQö쳕ϕ,<1城ôý»Ÿ˜z[0Þ‘ÄÚQ _ˆ€lèü³<¹m]KMšÚžÐg¨ÐÖ3Á>ßgl[NÖ·ÏCDá°{•8òq”?ÒÇkV@ÏÙöŸ°é\àJ°a£) §˜ ˆ#Þn¼ê@`ÈÜj*ß¶n"ŽdÁIcWSÛ€ÊãË‚9ÖÅEzZäÉm-³mÛræKÏ ŸBÀ*•Wª±t^³nàûÊ óØüë«m³¢·âŸ>~]©JR¦­éJR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JŽõê+ÿ›Úto¤º%G|¬#‰äcp!®O¥HepˆYˆ ™‰àQ¸œž8Õ[ª^µýä“dø`ì„p"^È·,}ç‘T=!ƒg(0÷eV ºfn¿Ò6ÕºŠ¯ˆ¹‘ hÌ`yi'ôù×?Èäú}§žIûþúÅ+­¢Ø›ëøÐŒÅñf=ÆÕ<.{{m€<ÈÉ«€ˆn:¢°Ìé'ÈoØURÄ(Ü<§I©žcó;8Ý—Üý+“Œ…+ôh|ÆÕä&fó©Ô¶¾5”w 2ÖòaÿL)Ï•ü3æ1žz“ Žà}˜=¾ïðÍ|®`ÛÉÌ‘º7bAe 0Ïr§‘Ïp+Ò61ìG *é ÎÒæ‚ºFØ6° óg¶¿½T$cû¨;ˆ÷~>Uô‘<'’':3!Iý¤~>™¯•y¤Æ„t=+™Î Y: ×§"±ËÀ<õ¢'ÓèÈ8Î+¿U÷MÝx7¯lÌv\'³Û‰c׎ °÷œ*°7 gËáû~é07x¸d'ÚO³my¨å ˆ®•†ÍmO1á>` ýÑY¯%€Ï»<ú}z¨ŸXê£èrÆÛn.³¶ |YÁ Ëç˜áY$c £ö¼Š]ÑweQï1>á'Ý[ÜqmØÀU,vÔ<úíæjŸë~ :Ö«$0¹6 ðÛ¨>IJ¶k‚<÷°Ú‡œF Œoj…Ò•êíÛ[H¶ÓÙA¹æuæN¦¼­ËuÚãnÆ|ºpÒ•hô?F‹ïXÕ#Ô6ë;YNê wmû ·®‡£ð¢á7®UL( Ì ’AÜ ºMeP.0`0!è+Ý)\*î__ R”¥f”¥)JR°N1ï8ûë @RN00Nxùò¥`>*3žÏrÏ¿ÔùUu¯| éúk=¶ž¥t¤«2¾ÛH˜y4«“)ºD1Æ1©þú©×ÏŒäcôzsÇ»š¶ìFÛKu#`„}Ñ ÇÙŠ¿è 8—ô=ËLyë§ž›Ôø_iÏ`>&¶éJWnGQõÿ‘ñ«²:¯ü)B@î@øÖ7\ü9ý¬Ök4¬dzþ¿»¿ê¬Ò•ÎÕ¡3é·‘KK(ËFD€ ù’¸ã½U9ãüæ®fý¾ßw­V:Öžlnب" ‰hNNì–Œž@ðò<×üqý)ið… ÒH ù A=üê¦) ãa¡í'CñÓá\jìh—kk¨Àò±°0¹ç `è7möÁÉí\‚1æÀæƒ9ïšä£›n®¾Ò0aæ ëØóªjÅX0Ü~s·íúþ#}f¡Z.ºKKÇ¨Û ìFÒG!î+’C† Œ™˜`qƒßöøW§Ãß·ˆ@èÓø—fC̾óuÅÅ :j9ƒÎO*õJR§­éZ—)âÁqeŽTƒz‘Ÿïìkn¼‘œñÛ±Èç#áýç†b>GëëjÁëùòùÕ6êUŠC)*À÷ ¤©àEy©'PéæÚëçQ¯Ñ\6[’aõ—ÓëïÜ;b£ßÝåðÑ^Rõ¶³uí°ÕN‡¨Ð‚<ÁùW)Ô£”;»ŽF·tëi{kpßR9AoèeÏpxRN<Èšµ£ueR!€e#³+r>yÏN‡§¡ò#·éçî©F‹­‹}¶—LLâ)NO‚O;[œødƒƒÎÎÈ#½Š[,Ö®G`C´”ϑҧÃÝJ¶ŒƒÐí¯˜…Oé_8ÝX A©ÃFAãöôö=¼»×z¯ ·žýk4¥)Y¥)JR•Ͼ<Æ8ìÇîàþ‘¿Šß9Çøý5ÇÕä1|ÞA‚C2N2¬2î.øíPbH[.Ç`c¦`ÈþºÔ¶kè L}Äo¤˜Òkã‚0~ßÃ#ïíñW|£[N[Nº ÆÙh€vÇ;²º–ôñQv©'’‡Ï²¾yÆäD\¬ÛXøÀånÀ‚qç\}CQ°¹‚[Y!7qJ¥vFAÇ9>Ð`}¥`¹  0*žÒ0‹wî2Y•‘˜«ˆ9F¾(ÛMMXÄ`ocl\â¸gË!C+¹‰ 31Ê55­¢ÛÁ¨hP$®ËHü=£&%ÚAAÁ÷žNzéaal 4iÇçÌá±é{?nÞyÇ<ˆÖšM¦šÑÚ3ư<ñÄ·ž3:‚Ø!XHÎÉ=λÉ$­ºGgoVbÇñ®F?†\MË£.=ÇgW` £9d, ´²‘">1ÓÂa¯œ=»my­‹j¨È§\ʪH ËNÕ½¶M3«ìîáž9àºÔDèyú6–P%‰² S!ðÙr œs;ŸXºbËŽ¤®p]¸=ý¿dcœ¼{ê¯úUÇo óŸ†øŸ9óÈCðíR‰°³J{ëË1øöÆ>áV=+ŽÄb=è¬NqlܵzË‹`(û° i#À@1¿:‡ÑØ;6q¾‘°ˆ-ܳy3™?mh1‘&eƒÖõÎ×džçM¼ñ¥yƒ»˜á²¸ ¿T`Œç£5VÕË‹_Ÿ›¦’ˆŠs¶V)W!•R’ óŒQŽ è-KJßs`Q±åŽÄÍÜ 2s,J ‘@ï,@ŒòÑ ®çú?|U›ìÈǯlܘlÖÕO´™YßËJãªpåïaîÙU`¶J¸H‘ å ïï¨ +$Áà‚F#¸Ç|ÿ¡¬W¶¯]­_QˆyL²E÷¡`1ý%_‡ßSóß¾}>ÅVZ{øwÖéqsÇÔ0ûT‘<â¬Ó’yïçå^ýSo.7tiÄÃå=Í· rºpš½…>ó±^#8Çíéû|kg>ïÛ¿aöâ½.9ÈϧŸ®»í¯2tù|ÌUª‘ô³2ê,€åd·“x†ÖB¤Ÿ\ñy©úç'žüÆ2j#Ófk¹†×¸;u< pÎø=Ã0P3€b*`푟1ïóÅz/G£&dFc˜¡ LÁ‰û륇Zé©;F‡Q½f”¥^©©JR”¥)JR”¥)JR”¥)JR”¥)JR”¥|f‘cFf`ªŠÌäù*ŒœþÉm±©<¬k yrÞ[‰ÅhטÅÞõ‹Ìÿu|)ý£Y÷NܤW2óñ‘°Ñ|¿É×öÖŸ·÷þÞê±úzËæ–‹#€²Ü+ç‚F½ÿƒ‡ à‚ÄÀªäc<çìõ­Á¨ßåÈ^Ãé_åÀoÑYÂ_L=ÃqйˆH–H“¯8ÓNDó¥§[lY”“"4Ôk¯>ŸF­¬Q÷ŠÁaƒÈíî5T~Q¾þ_sý¤ŸïPê7ÞW×'ÝâÈ?óWGø­³ÿ¦Þæ^ÛkßO1ï±ëkøâ>ºý:]Cj Ô  Ê ;¯õdcœ€ÙõlúTz¶%¹šàœM,¥s·{³ã8Î7Œ íÛ¸­zäÝe{·ª» LÄ?9>ú¨ä3QÁކüæ¾ðÌÐÍéõâtqï*rAøýS,Õ± Ëqr©ú9cY>†áöò3ïÈ*À雿ÌÂÄ—¶éáHK/õX°È÷UÿF]Ëq­í©eŸÄ±>R²>m*Æ¡™gFp9yb¥ê”ùP¾gºÓtðÇÁ%܃ȴîc‹>õX¤Ç¹øïW]~oë˃qÕˆÎD7·_pŽËÿÜgûs^³Ñ¨ ‘½ú(ÿìk_I9\<ؾÃR?-ÿ=¡ô¥+Ðן«ÇäÏNésê,¿I}rÑ£cý·³€7‹œõ¥YõéKu¶é͵„7ô®ÎÙ÷î”çí© ylK›—î¹\<€Ð{zœ: v-(ä‚|Øß:R”¨*zR”¥)JR”¬œ{ŽjºùBêÓlNµ“mÞ¢Œ²2çt6kÄŒuiÛèÿLF¬SÛ¾?üÅÕz£jÚíýÖíÑ$¦ÚÜy-ÉqèƒËñsW°ëᘖÆb9˜Pzë&;U }ãjÉ a®x› æbA=j;åÛöâ”­ý3O›T¿µÓàź™c Œ„Rs#°ÇhÐ3ž{)¯DÌ,Ж'Sî¼øˆRÆrk»Ó)wÔSÉ·Óâm³ÝmË3w1[©áäÇÖ')Alœ+^šOLèÚDj¶¶Qx€ ÜL×.@匬2¹þ aŽõÐÓ¬-´»8,mc+ „P$‘Ë;7v%Üù±$WB¼æ+sÄÉhT$ ‹ÁñgNQ^ ƒ·eA*ì ÎÂ`èaAØ ´×Mô¯Aò#í¬Ö JÀ‡ö”÷÷ƒ~êúR© 9ôÛM£öç5n6`r0zu†Õ¾é]Qç:e©vÎe…>m6OcâÁ±ÉŒXÜÅt4Í: *ÎÞÂØ¸‚Ø:Ä$`îUÝœî`$<2óÍtkæýÁòíŸ?£½ln9 1]À$ ;oZ‹h¬]QUˆ‚@‘¼}kU–¸ÙÕ/9Î%îDðçãç“È®–®wjwÇ9ÿ(qŸèñýßà+›^F÷ý[¿üÿØ×1ý¶þãù×  üà1êHÇíî®Öu5-Ü€Œð8™éþ5ËÁôïÛßYÁ=?ej®éì;,Ϝµ`3.ªHò$wüë§ùkTþY'õcÿrŸ–µOå’V?÷+™ƒè~ãLC÷Û{ù·üûö Û‰sñ·Äöý…tÿ,êg½äŸrû¨+ÉÕuÀùìýÿ5ØséÝx®v¡ûd8<äkíßæÜ÷»Dsçð¬s»7/¼yDsì*[Ó·7Wî³\Ï"­¼¶Gf]ۣ౉Ϟù59¨J/ù]ÃÚ1é—qÂýÕ=®ÿ£‰8e,d–b Î’#yÛoñWðòmI$“©2wμ©Z7¶0ÞÛ¼3AåXctl;:žÙ9ÁSMoR®2«)V¤A˜©ˆDƒÈì{÷ªšúÂm>v†eʰ> {/‘ɼ™IÊŸv ÑÁÎ?Oj¶îìἉâ„v òzûdĪ´ýNãN—tl&#ňŸeÁ;\y8óúÙíV-ì7° ­ÎC`26óW±ç¾pF$;ø\bbÁt d<â$©æ>¼ú¯ ƒ~Ÿ¨çÐ¥)WF µ7k\ÛGuÃ*‡ŽA†½°Àù0ÆA Š­µM*m:R…É1K‚A'k@ä‚2GcV•k\ÁÂ4S –'d#.sÜ7˜a‚ôáO?TÕ`Ú]ÛÝF²ÀêÊÜwSüSÊ0ó<‘ÍTcc¿žqŠÝ³¾žÂ_Ýÿƒ½ ÊH ƒµ‡b1_";x\sÙ!.KÚ=üIxyå­KjùHYvŽŸãÜLûêÚÈ=Ži\½/R‡P‡|gc¨úXXÈØƒùÈAÈ`1Ž u+¼Ž·20emA¯qÏ¥tƒA×ÏëjR”­ë5ƒîã·éªÛ¨uCUÙYLû-¤Ò±O²ng¸bIô,-Ö5þpÇçqeUIò‘¥É3Xê0« ŠHd ÍI₾yŒ»0’ ÁZÝÍÂÖo¶D¾d9ˆG¹¢6±³@ÔÀ™Óz†õǰý±™¬º9Q÷”0̺k¨­ËõÊÄœÀ÷ŠùsÁò®uEízµMŸƒ²Ï QÑ…&eŒÈ—lž®2w³»ŸqÕ¸[A@þt„ÊÄvíì ÏŸ éÎ3^b÷úcÒ×±onÞdGÝRÑ!”ÉfcD$tëè-ÿ¨=o Ž÷˜±ðB³\S"Ck»wŠ—ÚjpGuy¥ÌËÈ‚{V$!’Ü‹$:N0À•à€½Î©ak¸Ksaœ¢ò8ÁT ƒñÆ*·¸¹žêS4ò$ ØU8\í(QÆxÀÈá_Ï|ýæ½'ü!bðÃ6#êÖì[·vÝ€{¨,®Ú…hp™ëƒÿ]µÇ[6Õï=ËOt™Dc!Y$ÁÌhgRdZÖ±¡C R›üY6®}—\*‚Ä}läsØ V„šÎ§*,mw UUC³ÌmÝ@vl XçÏœ“Ì¥z 7¢ð8[°Éa.[°ìöøê·™]È,Á® +…ÒxÜEë—Úó%˪¨ümDªB‘!DÄ’uÔ*Çéž½¸ÓDvZ¨{»!…K…æêÙxo+ˆ‡<%³0*ë²½´¿·ŽæÒhî “”’&R{† ¬3†F®0Àcòmvô]QÐn%‰Ð“WwPt>—­ïžüŸ~A?9…ÕˆísT?½Ô¬¹',Àm4žµÓº®…)Kër"$ˆî¢ËÛJ3ÆÙ06·ó+ñ¤roNžêÝ;¨#XÑþk~«—²™Ô1ÇÖ{wãÇŒrr£ÄAõãQ‚d÷EuÁB¨ÚÅâ0º¥”}Æö”HÕ[Èh5Y˜ëW.álb—‰hª³}ô'MgsÚ ûëòTlUчuuaåÈ ŽjÖ<“Žß‰ó'ôŸwº¶ºƒäݽ΃ Gå›O™°‡žE¼Çw†xöc˜íç÷Å(îYôÍë„7R-²…EIJ炘ÀÏXŽ3Žr9¿ê1ÃØu.ËÆ4áÆpH€HÐë:÷ŠÖp·­3#.ðC2ž[ù˜ý*4<Y˜€ d’}ÏaŽüñR­'§ÝÙ./Ô¤`†Häv2Žè™î¸}Ã"µÓ,4äiB dÜNÀ°ç ä*v?TÞ¸:¯PV¶±c†ÊIqœnbqŽ7¶2~¨Ç5Å\-œ*‹¸¶ Û¥•Ô6“uß;Uái- ×H'’AùI×ÝùWZÞí.uƒo+YíÉɰSÛQŒv8È5ÞUmÙ>ÿO?…CúN"^òsƒìÇ=û’ä|F>|Œæ¦•ÒÁ»\³Ä} ÇfY€`ÆjÅ–,™Ûv%£ ØpéJR­T´¥)JR”¥)JR”¥)JR”¥)JR”¥)X'\þêkÿ ³ŒnR?‰SõNŒa‚åAïžd·Go,„Ž7g'ÈŸÇÇ|ÕS{r÷—2ÜÉÞV%GðQ}•_vÕqÅs½!‡k"˜kºiøI믲=ýª¾!ò¦Q»sÓ@'O•j’01€ÄúÖ)‚{ ÖÍ¥»Ý\EoוÂçÚ3í1àrÇáŽø®ˆP$±¬’` ;šç$ÌÇÆµ©VŠhúb¢ƒi U]쀳%¸$’FI89>úõù'JþGöcõWKø]ïæ[å"M¤{¤þ}&Ϫ·6ícùúøU”«OòN•üŽìÇê§ä+ùÙÕOáw¿™oàÝ¿ÏÖïV?ˆµ¿o?£¥YYÁûùõ«Hé:_•œù wûª¾Õm>e4 ›·Â9â7ö ù);~Ï*¯ˆÁÜà ve`X–DLjg¹ßNçK–Mµ L‚cb#Nÿ/¡\Úîh7?5Ô#Rp—#ÁlöÈØNxÈp¶}£Œá×Ð >Ð9È' ƒ¸r?çUíÜ6®%À'+y‘ðš«+Dtê=ãJ¸×°øÑ_˜z¬“ÔzÑ=ÿ(Ü/جþ¯Ò}È»¶·œ¤ŒoBEʸûO=Ï~Æ¿=uÄß©õE#Yc¸Sê³AÇó÷³Ö½÷¢5Òà‚Îeî !"+oI™±m†ÅÁ÷$TNƒìû{}¹¥+Ð Äõ®~¨é÷Y4-×m2Ä€1Çù4yæ<Žk±PO“ýEot xK}5ƒÉi*ùìÜd±ä n©é”8ã;¯%yM»×ƒ*íð¼GjõV=«Dlm©žð4÷sëÊ”¥*:š”¥)JR”¥+•®]|ÇGÔîÁÃAeq"þ „}ñÎò¸Éàs_• É$÷$Ÿ¾¿Hõ܆>–ÔðH.-ãÈô{¨C\ƒî5ùº»¾ŠXµu¿=B¨1¿õ~ÕÃô£vÚÎ 3¥*Ìù1²j×—®¹ù²¤dùKråIÄQÈ9!‰ì Vurü•ó}\ñ“= 'ŒàG9ï'û¹©ñìW tŽyWÜΠüA#çU°*nyK{ÀÒ­ºR•æëÒÒ”¥)Jù·ÕíùÇíä×Ò¼±чàp¾•«Žäàû§ÞTڑΡz|¾u>>+cð­*Ø»;®î[ÖâcëÞFü==Õ¯^EÌ»ž¬ÇâMr›R|Ïç[6‹¾êÕ=ÄJTàðdPAÈ‚xó«El,ÈÏÍm¿°ˆÿåãö>uYéÀ5ýÿæ"ïî“>uk§cñýU×ôZ)K¬@':@#içέáTyÚÀ'm¤ƒ´ ÕüŸgüšÛþ¯û´üŸgüšÛþ¯ûµ»JêpÓð'ûoÛòé­œƒ·ûWÿç°øV—äû?äÖßõx¿Ý§äû1œÚÛŸ…¼_îÖí)ÃOÀŸì¿o˦¹È½Á{Oað­x`·…˜Ã q;#TÈGh~µ±JVÀ @ |d4_ >¥)Y¬Ö À'¾+æÑ+©V êà ®¡•î#·¯õ¥`‰vúëX"]&j¬h-û›5f…rdˆrÑ Jÿ <çÏrƒÙ‡h¶¡íŸ²®b3÷åŽqßv>Õ{ÔZÚL·0¨H. QÚ9ybÈꤨŠ‘ØŒñqø5¶ ëB|h6YûôûC–ýj–"ÈYuÚFeé:Hí×åQªèéú„º}Âʇr £ÎHü׎7ICŽø*Ms©\ÅfFWRC)È­zíU*A ü ÕÃo¹UÖ:–¹°CÆL–Ê>$´8ïæL|qõqÚ¦µ†wò÷Tì[Ä&[ƒû[šžD8ÓGrÚ¸†°n$îoß­S89#Žü~ß®²A9Æ;{Ï¥Kº“KÿÎ.8YÕx˜%œo'ksËa±Ëˆ°Àñœ|@ý8ý¸¯7~ËX¸ÖÛq¨=Tì}üÇ#"¹Î…©3Ðò>[ÖÅܶS¤ð¶ ¹OÕ‘ ‘‡˜#Ë˸äU£cyí¼SÄ}—ƒÉF2<Ôç¸ívje'àqñ©_JݲÏ5™>ĉâ =ƒ¡U|{Ù>ý¾µoÑ×ÚÝái‰6îl? é¯=g¯J—å_)öX?«‘íþNéAØR½t(¼~žj?ÔV¦{ FZÝ–`G|Uùòà–8þÉ©x•Uãtq¹]J²ú« }Ø<Ôwm‹¶ÞÙûÊG¿qó´t<ÔŒGÂ+󿣠CrLÖì-æmÅ—E! r„žåG~霓ºÓom ñ`mƒ?IÒGæYs·=ðØ5l_Z½ÔÖì{lÆÇÑžU€ô)Œñßpç¥Á'' ù€~Ï¿ß÷Õ§ñØ(±v1í’¹..($ȦehØi\;˜db~é˜1¶´RàžÃ4NÓ›;¿ñåP¸ä’'IbwŽHØ2I2:09 ¬¤ ò ´ÕµÓ?(M˜ìµÒIá#ÔQr|•EÜj×"çÍÓ»Ž,z™&Ü¿¾I¹ûW?ìý룽¼8ð`Š<4VÀå”|óæGs\Ì_ú‹y2®íÓ²;”²T˜‚.cy…YÃ¥û,pÑ”Ë4@ÒOQ;{ªåGW "2²º†WRYYCRAÈ à‚*)yÔétµÃ¾e2 ‚)%†AÆâ¹8椖àGgbG‡o$œ²!Ÿ‡ašª$mîÍêÌG® 'ûð>ÉÇbnÚK\2ܶ€—cÊ ‰ŽUÖ¿q‘S)‚à“ÔFSÌoúVåÖ¡wzÀÜLJä‘ác\ú Êû²Ù=òkG‘ßžíê3X®Ž—doîã‡à cƒràã͸Aý,ö¸À=çU–wrI’gMgÜò© ÌÀIbH’w¥Nú~ØÛiñ0ónýÛÈØ‚,ük¹^B¨À€}žŸÝ^ëÔÚAnÚ ˆUQ§`$馦Nkªƒ*ªô|©JR¤­©JR”¥)JR”¥)JR”¥)JR”¥xfÁ˃úo{­[˘í-åšC… çÊ£¹Ë6y÷¬1 Iè7¬“°Ïvõê{ðØÆH,“ŸEɦ8îAŽã Nr…ØÀ~'½}®g’æyg”ååbíè2xœaq´@á^_xߺ×>逃P Gžç¹®eÇÎÄòØO@ùÄžæ²22G—¶¦}1dBÉzë’ÙŽŒû9GóὔϘzæ%m ÜM¼^WUxÎrHó õp$Œ ¶-mÒÚáŒa#AñŒà ±÷±ÉR/1œùaÀ'Ü*¾*ßÅËq©RG÷)|v¨î®t+‰÷‚"ªjW¦ 9c#‚8ó_y¯, ò=ûÏH2=ÕËó©¯K]€.,Ø’S3ÅŸ ÛUÔÛ ´<ÙŽ2MBþSôÂ&±Õ£\£ÇóئémËÆ]LÊñìH­ý6ëæw°LI d£¾Q½—û;€þŒñÍXZ¾—o¬i—6ãù*ýÌr(ß ©êcp­ä§Ù$W¨ô&3‡Ãbé7 „ûVÞ";#b4øX+ëWµ»g±X+¶Ý9Ozü«JÞÔ´ë*ö{´)4Wù®™ö%CÙ’EÃ)† ÷ †PÊAV؃¯pJ’¬ <ªSÒ}Bý?© _sÙ\äkÉ ReÆBIaÛr–LûY£ín`¼·ŠæÚTž ”ÅÓfê\‰ÊDŽÜþUúî•Vè_(Ö3Æë ÙÝ +Ü¢µœõÊ i fÇ « 9Ã(ÂÔâ.¢Ðç]ÑjÚ{ g›¸ý¡ä >ÑߊóW0÷í1V´ús•:î}Ú×£·‰µt—Ì,0Ac¯çÚ$äc ö ýµÁ›©t pLº®œ0pBÜFíÇ<,{Øü'ÐTvûå§íAÂâþAxQœzÉ?†qÛ‘| â°–/¹…´ç¸S·$7­›e=«¨?îSÓ$óéVGlóé_#ØÿLþŠÐÒ/_RÓío䇿¯yŒ Üd1£’ÑeÊ&æ1íföWã;s±H$àÇ)9õ ij¨^W0:&y‰SóÛ•H˜mŽD‚&câXš¨ä;¤vþ³}äŸï¯=Î{ùÒ¼2Ië­rfu;O¾ºz:–Ô¬€þR‡×êäöô9û>Ú´Ô`~à*§Ó®RÒò —Vt‰‹2®3ØŒàhƒŒýµ-ýÔÙ'¹ûâþæý<×[Ñ÷ìÚ¶âåÀ„Ü0 í ÛÏàuÚmáî"+f`%´ö€˜ïRÚTK÷ScüžçïõÓ÷Scüžçïõ×C×p¿Í_ŸnÝþG¥OǵøÇÁ¿nÿŸCRÚTK÷Ud;[Ý}†!ÿ˜VUÛc‹kž|ÙÓ?ßXõì/óWàǧ@zügk|ãçùDýv5.¥BÛªÐý[7?Òœ yv?¯º¤vM{gÉ_Ê®|=Û°ÙF Ü öñÎ*KX›7˜­·ÌÁs@9ÌÅl·Ì+Iìí]QÇu*¬Þ^Xê²µ¼ítŠB™Ü˜ÂóåNJžËFs_kn©pº·VÇçÀvy’¯O—<ð<ªâVãZºÛ#$ŒÈ`À9—®ð@Žu¬ b­*Aƒ¤Ž\ÅNk£ï‹¨ôÉÝ#Æ}%‰Ïٹǟ>üv­¿Ë:^2.íÇŰ~í ÿ}N1¢í¸ßWMÇÏ딂â!—âN¾bºß õ;(ÓU[žhövúÊ 1 8õÇz¸ê=>5>½Ã}˜T'œÎÔnøT/QÔn5CËìÆ ˆaRÅPÉîí¹ˆTñ¸»<'¶¬.;©X]@ ’4ÓIò¨o^LŒ †$D F°fFŸð®m)JáU ”t¾MÜçÈ[´‹nrIõ÷b¬ ‰tÅ«Em-Óg`©Ç;"'-ö¹#>aG­jõ ÕÍ­ü2ÛÌð—¶Q…c´”’\îC”n Œ2|óŽ;¸{‡ ‚Kޤ‚ò@€B»@:èyŽï[nÄ Ö:1µßå¼TÞ±;>Ú‚[uD躷 É1?¿ †BO  3Ž{ŠíCÔzdœ;I?ÆÆO'Ë(·lý¾‚¬[Ça®EÀ¤ý×Høˆ>`‘R öÚ!·ä|'—Xyïï©G¨ûÅg ö9®HÖt²3ó«qñm§îeð­Yú‡M‰NÉZcϱ 1ÉíË0UÇnÄ"¥8‹ $ݶ÷ƒÓóúå!tK(c·~ÿ:ûëÌ«¦]n# Šª È]vè|óÇ}ª°ý¾Êëêz´Ú“ GR%9Áän‘¸Àvã ÙsÜòyÀôçß\ n!1³'°ª,d’`ë@Ͼêï+¨'½b»;ŸÊ°‘ä“ððØsö‘\@p}ÇŠ˜ô­¡gžñ—/þb­!¨¹çë7j×…ñ6€äÁÉì¦OéñçX²&êv2|‡×º¦ƒó¢òתR½4oÜÏÈÒº@GÄŸ‰šVcð5šVk5ê 0Ý@.#\Ü[©8™!Á,¾Y1à²üáùÜWß·ßWAä‚ëº!B÷–ˆJ’Lð*’P÷2 ÊîÕ9` ’G#ÒBI¿mdÇÚ(ßÌ8Öæ5ULE’~ÑDŸ¼>ãËŸÇ•DiJW©R”¥)JR”¥+vÂÜÜÞ[BD’¨|y"ÒÇm¾5¦?AøTǦlHñ/œq†Šx¸Èø(Èå½*|5£zò')¹øA§}·ÜŠ’Ò縣”‚|šïkÛM¹a€Z? < Òf<çÈþwàb«^~üâ¥Qx$š+(ÉÛÒIƒdqì±r{ð\úsÆì‘Üãæxÿ3Àäž@æ§ô…Ñs•d‹JqÕ‡œ€•oˆl× j|HúVK Ì@PI'°¹'€™5dhzh±·ÌŠÄÀ4§¹Aù±s€2Kc»Îst=¡Û{t¹˜a…€>nw¸çé8šHÝÂ˔ǟsû{¿nõsÑøSoí®‡è¤ cшØnï¤Ø{EFvHÐC¯-zv¯T¥+­VéJR”¥)JR”¥)JR”¥)JR”¥)JR°ÇŸ>ÃãåP^¦Ô2 h³´˜Ô˜‘«ß.W*)9‰Ä@¤õùÆõ8òûG¡ûèsî©/îWQþ2×ûI?áS÷+¨öñmyÿâIÏÿêûëꘟä¹÷Ð÷í꘳s’—oÜVÏKÙy/˜dG˜áÈ8Þqâ0¡}}»`âp©ah,­¡·Ä~t‡—sÀÉf$ç¾0+r»ø[ (œâ_©bÉìtç§Æ¯ÚEDn`±þ­ {¶ú¥)VjZR”¥)X=Õf‡G­)Uv·mó]FáÂJÂu>X“,qî¼/1\аõ½mA ’‰^5ds+2‚¤î]»U‰ îïü#Šá~åuã-´“þyìF÷çÓ2%HsA1¶ÄÅs®Y|ç*’ ЈìÌíËÜj3Vn‡v.¬a$‚ñL÷Ê´Ÿé.ß^r*1û•ÔŒµþÒOøUÛÑtËÍ9¦YÞ†UÙË Pà4j0U›qÎxÆÙ°6±oÖœ[q•ŽêLNÇóšß—æªB• ;ù×é:bϨmÀ“è/¡V×j +œ“Ê2BǸÈd9d ä5ªèºŽ;A¨[˜ŽO‡*å ™r}¨e+9*vºƒí"ó_ª°=<¼ý=ùçï­[Ë[øZÞî®!pCE*C&RcŠõ\sááXq-H•TsÈzv:Pk¬»ç0<;‡ï*Ç–aúzí_’©Wv«òec;4š]Ü–,I" ”Ü[òxû–TÒiHòTóäû©m‰ðí¡½AŸnÖâ>@óÙ9†CïžõصŽÃ].ª%\å éÖëב®EÌ"ÞöËÄž!ê„Ò»2ôî½ "MRà•³žEíFŒ¿œ*ÖFªN?&߃ÛÎäG—ï_§ÝVEÄ;:G\ËÇxéPwèâv•oÚ¹ô®ºhä‡ £êGÞl®U¬Ñªþ5Òƒ¢ºžã4™æi-áãâ̧ìŸua®Ú_jí°õ§n¯øŸ,­›­¢Ûsÿiýª-_£ºÀXôå†W]‰/¤÷›–#ÿWÀýU­¯É®»+!¹–ÆÕ2 ï™å ŒíX¢dfÚO Ï®jô‚$!†5ÛQ$H;‘ U·(ïñ®O¤qV®[KV_Ǚʙˆ÷’Gå]_Gaî[w¹q Jå\ø$zióóØ<Õ7×ý+#K&»§DÒ\ê ö\vˆ£ÚR ,à ©Q.0d+rW–PTŒåŒ `÷œùú×;}ð÷Äד)Ù–A*|ã}`ë¬Et/ØLByÁƒ¦¿(ò¯È4«ó]ù<Óµ'{‹mÓ’Ì#OÑÉä–‡*c'Ÿj"<ødÕo{ÐKhX¥¬w±¯úKI‘² À")Œ3sè#`=k¿k†º8¶ÜÕÎX=3 5»Oî ý³¢ñXdÖ`ÆÛ*…Ò»2tî½ÃèÚž›e<ƒï~4N×Ü€º6§ÏmÖW ø¼j*ÇÙÿÔO÷¯ný*¿ çòßýûW¶ì-^úöÒÍ/us 8ñdT-þÈ% ®ý¿Eu5Át¹bó®%‚<í–UsÛóTŸuNºS¡5 7T¶Ôõ m6[  ‰ÞYX)ÈÇÞÅØµmØ]BáNEV–Ò‰æyéSÙÂÞwI´á3.bT¨‰©Þ­x"Ha†À QÆ€ʈ@û­MMöY^7¥¬Ã¿™FÌsœ}Ÿ}oŽ€V†§·V“ÛÂTI,arB…Þ d…cØq߃޼¥Ùkw±G¤– ÆäAå¿:ô„xH” ¹mõ8ªž•&ýÊêý%§Ù$ž_ý¯¾Ÿ¹]GøË_í$ÿ…^la1<ì¼óÛ};÷®o ïà ôÓ·î*3“ÛÎìrT=2>x®‡£¬]µuÚå¶QÃ…'bK¤IV0ÈÊ͘*7ó¡}R›oâo[dÏ¿k²þªŒäã8ôò«'SÒ"Ôš7y^'‰ ª¬'<ƒƒÁí†~¦£Òô½Úçæ÷J§Ê@ÑŸÄH¼gø@dà b¡Åàï›×.%²êÌ*VI IË ïÛÊkK¶n,01¨# ó¨µ+´ú«OÍw€y1IyðB‰3ðʇzÕ}3QÏ6w^™ðXö¨ ÷ÿÖ¨›7—FµpìnÝ@ØýN•G °ó[{ÌW>™>½»VøÒõàYÜþ̃ñ*Þkr-T—Û¬*xÝ$ЏÿeYÛݽþÚ-›Ìam\&'ØnÝ£Ÿ^ZHÖì§à~¹×»^—>¡8<¥º‘ãMŒ pv&@Ë‘ÇÕ=ð †Ó¥â•îå3·ñqnHÁòøfÌž‡Š•E p¢Ç$h‹µQ*Ç`?Ó]7£œ²½ÿ ƒ9–1È‘ uŸ*±o Iôû<Ï!…!DŽ08Ð" ìªî}Cº­{9qÝfAî*cǹÉûM«ªiqêKI#Fcfdd±¿ä’8€Gnþ,U£wö !r‰xX5Ø@«7P½²«¾'x#OËZ¬ #ŒžÃÌùŒÖ*W7JÜ!"¨dÁàH¯Á鸞cÈq\ù4 R<ÿ“‰óŽHØr{à8nÞï^+϶›Ùx‰•„y¬üã¼Ufàݘ+‰Jè6•¨ŽöW‘»û;¿U™~xW ÕH1Û¾T~š‡sùw?Øß”OËH3ZeoÂß\üŸZô3ƒÎŸ8ÏÛß]x´=RC‘máY]abÿp?¢»–.7½Ÿ~?ÑA¹ÏçHʧ€J 'ž@Á©­àñ–™Gâ 2uø{T‹fël„­á×]~ZùkQ« BUŠ5Â)IJû1¯ž{Är»w5gZ[GkpĸHÔ*ú“Îæo{I¬ÛÛCl‚Q5 £Ï#%¼Éõ$“[5ÚÂa³9®4KFÃC•{H’yíWmYÇ"ÇsÛ Û¿Ö”¥)WjjR”¥)X#9àvÇ? û«4¥*'©ôôs–šÏl3whH{åHõO˜^s žÚkY w¼L á€p œí`}T‘çÚ­ìA÷V½Äó®ÉâY÷WPqå•È8ã±R÷sq·t–µönd˜:n9ÔyÅV¹‡VÕaXëhvÜvê?j¨sŽÞT©íÏKZÉ—¶‘à$ƒ*äfòXò;c5Ä›¦µÿ{0ÏýØp ¬@?í~=ù—08›söy€ûÈs†òª­bàÙsiö¨í+¨ÚF¢„†±˜àã+‡¡ao>nYôííÃ:‹H³Ë9 øÏ!PsÇ畸ÉöL+bó«iÉ$ T€$əֵ®F“ˆ‰ún>…sôÛ u „‰‚WòD¿b íAæsä û˨4‹ ŒGopY€Âî=ð´ç“ÇbÄõ‚É,-ü 8“wrÒ¾ÒíÆ^FUfc€vª©íÊòkIôAy?Î5 ‡¹aÀƒ.s±FYÈÎ3†RqÎs]›8k˜kL¶Ô5ûš5É„¶:Nç.¤ ´™ ¸–ÚÚ£íBçEPcAÌÇ(žÚT8.õ†(4Ò9yýPIä»c3êFʦÚ^ƒžÙ§Ä×#p<(½ÉœnaÛyÆö@òïAo¼b8¢Ž4•öœdŸyÉ÷ú}ël>Ý£žáâÜ™–('YY=ϸ Í» Äæm òœk¯8&¼¨À÷óûÍz¥+¡V)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)J`z Æ û…f”¥cÐ}˜ƒîšR”¥)JR”¥)JR”¥)JR•‚î)è>áY¥)XÀôp¦ û…f”¥+FsŠÍ)JV6¯ û«4¥+ÎÕïÛáÚ³´zwý¿oðšR•‚ª|‡èýª<¿¿ôתR”Àôv÷R”¥bAJR”¬Ð p)è)JăáJÁU>Cô~ŠÆÅôüOë¯T¬Ò±µGý?¦˜°ì¬Ò”¥)JR±è>áLA÷ Í)JÆ û…0=Ü+4¥+ƒîÀôp¬Ò”¬`z¸SÐ}³JR±è>áLxïŒý«4¥)LÜf”¥+€|8ýÚ¾ƒî¬Ò”¯;Óñ?®³µGý?¦³JR”¥)x×­)X ãöý¼«4¥)XÀ<ãžù¬Ò”¬’?Mª<‡ÛÏé¬Ò”¬aû~ÞUšR”¬`À²³JR”¥)JR”¥)JR”¥+ɬҔ¥cÐ}ÕšR”¬mRsÛáÚ³JR•‚î+4¥+ØViJR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JT«ú¶ïAº²²Óm­î®g†k‰Òu™ü8SˆÊ,2ÄÙm“³$܉õRÚÖ‘sÖº–««Ý$6vÑ\Z؇ŽiD˜_™€QÈB´Mq),Ý(Ç ·„´®;[7VÕ²Ü0 .çDXêdö‰Úªbî”[h®-µÛŠ¡É*ƒ.ÒÚm§rÀU£ÓZÏåÝÛPe&s$wŸ$sÄåYT;3eÚꘅqÉï]ÐÊI”‘Ü àäw$L’`ˆ«rK›xŠ n!ŒÊÛcKø)¹†öäp¹<ö¬Oukm·ç76öû¾¯4qnþˆËŸ²©>Œé;~ ²7Ú…ÕØŠÎèÛÚ[BñˆÀB—3oñ#—Ø‘æÁTðØÄ±öq¿®¯MϯjXuž¤Ô]L"ÆÔ²Ác"aBG4>âªdñ«2oš%±tÚ]Ê7 ZØÊåÕœ(˜³ À&D*á´·M«h. žîò ˜Tf0FŠ ±HVÍÕÐŠÆæîŽ_Öyã!·Ææ(žEÉF”•ÚÀx#½C4N¦ÖužœÔµ8,¬äÔ­nͽ­´bD‚PÑɓŹ ¸,òœ‰{*1œîô ò¿Nu,ìÑC­3#2ÙOâê†1© `nÉÆI'›¢îç©éú4ª‘pʆ峕Ùq8kaÙLe¸A ¨a¡f„êÖ‡Î,Ü\ʯ‡Ä»(#Ú¶A ê ÁËæÕph÷7÷:eµÆ«o¥ó‰ÄÅÉåXð|Y¸hV7o¥l?W긯,çsVÓH¹,‘OŽîJ£³ dg#ŒÕcdÚüœXG©j:}´­tŒöZyÛòë `…[zÉ·s¨(OiÕ7¼“Oµ¿Ð®´=;RÓ#Y Ë×6 ñËo™bRîŠr%?„Ë2¯† {Z¦ ]{Ã3)[·QrÛ‹c!'vyƒ°UÎÊ ±#ZËc ´²r† j˾k“sÇøU ‘2Y²2N•ú8²‚` ì Ÿ€îkãÕ´²4Q\A$©ñG4o"c¾äV,¸óȪŸ¯#yº§§-ãšHæ8-DѲF.¯žÝÝÉ‚HØ>G‘Z=I£Útƽӓhâ[S<È$yd.Ñ\[£³4ŽÍ‰’b²¦Dl2H­-áÅ©ºCÞ¶îŠ L†ló4!zÌ@îbìZ-\¶ŽÙá¢æH*¹H$ÖX  êbí¨PõmÕž¢š…d5 Y™境rxŠ¥U³ˆñ#³Iq!Rʼn*³Ê©zW®úœÜspüC»ëÅú(ÛŸ/D8üÜyTXdB/\uÎ,ÛÎ’1`hÔ¨’H:kRbÁ³m¡½s!qªc–d1™Ž†¾’õWVèÛÉÔš]»XNá ¶ÛC¡<ádŠybË¥U2!Xmb-n!¸·Šê'V‚h’häÎÇ"‡VÉì N{y×Âý´å…)›1ne@¿=˜|cŸ8)âpÛÖ:öîY§Ð4 9…½–§,~3ÀBÆñÉ23Ï­lkƒ¦çÖõMñk=I©H1mnYmì$L©Hæ„Æå-ð# bš$ÚÅÌŽKT·0ÖŽ!­¡¸m£0T TûÍplä±Q:ŠÖ*ï«­ÇË3º©gÊ ßuP±"2…UbD1#Z·®.á·³žõ˜<[ËrZ6VßQ´‡Ã9ÚÅ‚¾Ö Ç5ÁéÞ¢n Ó¯/â¶X+«‹{kv“{ºÅo±´§Øå!‚áT 祠MO£zŽÎí¤x-K»uG‡,V:…<â3,J̃ Ic݉­¿“ý"Íô›ýi–OŸBúš0ˆ¼ecÆ fWö³žÞ”l-»Vñ˜›–î¢+eÒgÃ9cIšÙq7n\ÕUîZwe-¨*ÙI!œ»¨Ð4ë*ÂéÛÝnúÚâMrÆ ÒpÇʼ^±vÿ(¸çy+õ—Ûλ-yh’ˆêÝg8Ä-ÖÿBºÐôíKLf@//^@ÚƒÇ-¾e‰Kº(È”Dþ,ʾífÖ ˆn)f q à›s$±a2De@Änt:.cr lJº[¸A(S° ËP5«g_êkÝ'_Ñ4˜ µ’ NKTšI–S2 ïE³ŠLˆC¹w£û\œŽ*mU7YÿíŸI¯Ó¿üªÕ³PßE[Xbª{lX؇ îÒ¦²ì×q*I!ƒÈjHdÍU÷Ý_ÔŸ—ïô]#L°½kGbÖa3D‹gv7ÆHiöB÷w®†Ÿ¬uÔ×Ö‘_tý½œ“Ä—S¡mñ@Ì’.u UrG°üª{T2S­¼ÖŽ‚°5÷Òä\x~²ÛÄ?HÊ»·lÇ9Æp*q¤¿^BØjÑéë§noœ˜M¿ˆÃ}»vH[>&Ìà3åVî%´¶™S ­„cÄfK’@ $“ªõ3ÚiÛ{qó>(}ÐpÕM ªàÌV@Ú×A'y©¬×6öÊâx`RpiR%'Ð3²‚}Ù¯qËÈ$†Hå³µãut8àᔕ8<ªº¬ôä@?(WZ½Ku‰t[ L0 "h¥Fl™¥bÎ ˜@©Zÿ&’Èš–½f«,ë¶E´•Ë5»¥Ä‘„lô¨„G+mRåáÀ¹ÂW7³8*¨ä2R€…%³™Í“)ظ°1_óÎT!™”|Ì ®i`(²ç,9ж¤¸·…7Í<1&à»ä•7˹˜ ÇÈg'Ò£2uL_º{nŠÛ£y./EØÌžî4…W;‰Âw`YU à §¤zn>¥›QŠòîê+)‚+fEg¹¹.ó,rÆ1°±¨ÎvsXë”éò³¶Ÿàï ÌDņ˜nsâÌÃvÆ=‘ÅN¸L:5ä¹u­Ø{„ dÑJ°ñø˜œ›DT}ÒÍÄ´¨—/[@Zä–– ¬d9TF}ÀÙMXW½MymÕÖ=>ÚµÔQÈó2Ên¼s¹ØÂa3ã17óØ‰ŒW6Ó³¬LÑœH±KŒ‡8ÄbTçŒ69ªo¨4èîzïJÓIa…¬ì­ËÅ!IE¼qNAÈg…2ÝðƽÝéÖ½5×zH’ÚÞñ-|X¼id\Ü\ZÊ…¥gvGXÕö»0í.0¡ul5«‰d+¸p¦ìð±RI,Ù¤';.&ê5ÜÊ+…9õ@Ù@ 2ø€’u+¿\õYßu^¿¨kšGKØÛÍóéqqs·%£BdñZFhã 2˜%fd7 d[E‘K†q,gPVÞ’F¦c( Iñ¬ªŽ-¨[p+³°L¨@RYm´†` IÖ?@k¤:>›s©Ì,vÈ­áÆT<†I$U,Bà´ŠIç –ãã j§ZÒm5'!{‘3QˈÕ.f…c‚IHÔ±À‰ €+mB×G¼è)f±¾½Ô#ÒfW¶k¶TžÖif·‰í¤G†‘LZ5,àx™I …U÷£[A¡t=×QYx‰©]ؼRH\²+6 Ö‘Ida0Êàò7.HÆE`á­ðH–ãP²¤¡Y!J“áÙ‹A3 * MÎ0•^ª›ä+†0–,1 sH>µÍݨ›æææÜOüAš17lþ÷»n~¯nkîYTeˆQÛ$€3éÍ~u‚ÓN¸ÐL©¥õÇPJíÙv¨¸;O‹íö¥Ñ~Ì{væIñûiÏQ¶±–Æ\^,Ù_²[nßh}‹‘x5q&FƒCé7”²Å &’8£ÞWXÐg¶YˆQŸy¯0ÜÛÜ©k{ˆnpZc•Aô&6`>Ú©ºòßR¸›C¿’ÒãPÑâ´†K«hE_œ3™'24!š$Ûp› ÁÕé[ž—mz ì$ÔôK™‚šl’,ÖWÊÊеĞ,®$$2G(ˆ‰ULnªPìÇ+ª•1‘¡³‚wÍ“(ž»YøEFe»”f ‰\Œ1àtÕcuÕ}A©êךgKØÛJ– É=ÅÉ»#˜Ù’XbŽ3"²Æ¾Û¸Rù*,ê¨õ^‘×´ýVëVé[Ì|âG–[d™"™W2¿ÿÓÝÿü¶55Ë 5ã·n0ÂàÊx–Ù³ª—´ddN‡4tÔ¯nùËd ·6'†smÕrÈK£+g#™fbt5iÉ<#I,ÑGà4’HˆŠO`ÌÄ(Ï–H¯&êÙa q€à‰Ì±ˆH=ˆ”¶ÃŸ/j©>ŽÐ¬õëÍz-DÍ-­¤áã¶I¥Š3qu%Ò †:x’Ü„É+í‚8>z#A´×[VµÔ^âk-9[Z‹‰c‰..Ìè×;cu*¥ªÆÒN][V¯„´‚îkÍ68fäZû·c(Y}[Q3O85ºbî¿ -•ûn Iº}«S›7Ùè#1‘­^I$r ’9ãa‘"2²êIR=àâ½R2ê#ŽüŽ*•èé¥=3Ö¶­#46Ö7- 1$!šÆýd*mþ  žä×w¡¿ö/RÿYªá#­.a8|_´žÛvLJÚ0okBÔAó%¬WÚ#‰iîÁFÊWmA3®šF•5×õ94½ÿR¶Xe–Ö%tYw4LÆXЇº60äà:œã˿˦µYµËTºHbšà\™ë ˆ.î R¢G‘€)³nsí#U:þïzŸÿ¬ÿɧW{Okòqdš•ýÆŸk+]£Ij§™¿)Þ°·TemâM¹u2ªw:¦ìÈøeKfߴ㶸 l­k1$ë®Pu#q5âYn{*pw†\Ì.(¹ 4’4cVlW¶s¹Ž »i¤ãŠx¤qŽùTrÃí׺¡4}GJÓ߯ŸR¸·¤g ¼ܤçv“ J.F3ìšjúM>ÖëD»ÐôíOMD‘q}xò)Ô^'·&h”»¢à9ñD2xL³*øj ›­ô«CÕº@+&5™¬Åï¶} na³ú>>è3í{]êDÁÛ[¶Ã³2=»¬” oHl®Dk›y‘•€“¾2ëZ¸mª·rÊ– J•»gÂL'2’"®­Ê±e %²6€;’{`yœ×Æ«[‚ÂÞæ Êýa ÑÊWúA±ö⪎¯ˆÙ7Mô}„³[i×R¢JL…ÖâõbE‘ð ¤m$’9V% S±k_«4K^]+XÐZkIÒä[Ê­<²‰Ï„Ò‡q#6UÄN“F¸‰ƒ€qP&[BþsddU Ü9‰\ð` ÙyÍLø§Cpð[1xçÖ\)<1–,똩<‡[”²ƒ‚ÀÈ€HõÇ#÷WÎ+ˆ.'†`µÌR$[ø,Q›k{Ž S]l%Ô:“§RÞG¶“PÓ­"Iñ-íÕÌMÈ ’VRädf¬~žé‹›Žå,幘Ý4M+Ü´LÙ‰X(O (€L»6ÖÜA?XÖ—,%»)q®râæ[a4ÐÒÙ-F‚H5"^{—±Ã¶ÙZá~¨abfNºÀd*GJRªÕšR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JÐÕñ´ëÔÓÕZõíäŽØ3ˆÔK"”W.Ü.ÍÛùîWÍBúc¢,ìôâºæŸiu%Ä’1}³ˆ¢Â¬q«Žv™œäyU‡J•/\KmmPì™d9˲È>γ¿:‰ìÛ{‹qÆbŠÊÁOœ¤o ;rªÞï¤îl:›JÕú~ÖÞ8|5½$HRÏÁŒ–Òr~‘AãŠù\tßRiG{­ha2j&S,wŒê#ñÝ%•dA´°(xÞ)7`mdÆCY´©F.î’â×çRÙÒs òu ìtç3Qœ-­c2ÍÁte!r>\¤ #pdtŠ­4—Öì:–óTÔ¦†t»´œKwo&Æ77>ºÅˆ‘8‘#}¨6¢°UÈQÉ=q§Iy¥Ý†·etå‘õw’Yb\mŽFUF €Ê­,,Fý€±fR‡q›3%¦2²xa=’ ©Ò@#B" 0¶Â…Vº°îà‡!¥ã4ž`Àö ë3Uæ‰Ñsiúµesq ¾Ö¡hä0†ùµ¸T”@‹ì£03´Œ¨ )ŠBnoŽ¡õ5†‘ªè—‘éÿ3“NÔ£²h¥fïnÓjs„[rC–Dub¹gm“JÁÅÝlù²6w[†WÙdT¬  gNæk# irμ4dÛ«!¤–×϶•èûCÒ$³Ô4¯¦œäYWÃx­ÑIeã;£lŽà`ùÔn>˜ê'XÕ.4Yôóm«4¡®n‹™m’iZ]Â0»¼hY˜#/‹ð]ÀKN•‰¹žëÂ4gVYC@'‘I=æ‡ l¥¤—a•²¸HƇA§J­úc¦u]Ó¨¬.ŽöK)ÒTúf\B¥ãÜZ ‘'o´ä ëi½+¬Zôvµ£K"úöìM,èєŀËH=•?A'ž¨«F•±ÅÝ,ÌBK\µpè}«Q—ïlcÄ9òŠÀÂÚ ª Â%Ûk¨Ñnû\µ#‘åÎj¯¹èÝFó£´½ ¼0êZt÷øm&è$\Ý>ÏÆ)‘•°T0(ØÉeçê/Ö:´ZmÅãi¯6šÑÃoenþ¨V’âY˜ø~, (R<‚0Ê#ÚTܬ®6ò’bÙ9î8•œ¦é— fBŸ9Ö&µl–.Kh@h -°JÇ—j¯ú‡@Õ5N¡éÝRÞ(…½ƒÙ=Þù‘^? ùn% ¹>!Xó¤†#½õOêZÆ¡¡\ØÇÅa3½ÉyR2ªÓÚÈ6†åÎØŸæó©í`$€É$àêIà Ñq7Ú $ÙWDvy™ñju1·y©m…ÐK}«#>¢fÞ\±¦ƒÀ&fuÔrÍ@:ƒ¤ïgÔ×_éûıÕ@d“+ÁU ¼0Y»FrFñ´R€ mŧQÍ ¹ð¦Š]¿[Ѥãí¯­GnãÙlËAVV«)ÝYN„4ò#ZÞå´¼¹Z`ÊÊHea0ÊÃPFºùƒ¥Tóô¿WõÖñõý¬ï¼ÅnQÏbÉ1¬fF\¨’i>Œ1*‡,­#ê^’]ZËOM6T²¼Ò[`Þ„¢0"vPÎ…Z(Ý% åX6Pï,&´©N.îkl¹-‹d”D@¨3hÒ¼ó “¤ÄMD0¶‚º¶w72çwb\匾-ÊDˆj°Ÿ§:£¨î,cêYì Ó¬_{GdXËvؘiUäQ°ÈZ1³€±"ºÿNêýKÓÚ•œPüËMk™R6D·¾3°HÏ,,m Üû"§ô§­\ ¤Pªê¨«8‚€´w’O- E=VÜ0%Ù™ÑÙ٥ɶA@IÈ£­@µîŸÔµªÐµkhâk;™üåšTG_öYßlgÚ|FàŒw<kïOêWýY¡êöÑÄÖV f.¥Du0ÞÏ<›c>Ób9Œw$È©õ+ Џ¹#/ÙÛkK û/3:êuÐè;Ëa­¶y-㺗N£FHˆÓmƒ>uIßÛê(÷ÃKž+{è’àyÕšhô›RÐÌÚðåBÈÄFrFD£Hé­fã¨Qu–‚xe¥­£3F¬£V9ÈH£GvEß$+ïb»0ÒTé»×¥ê%{ŸŸÊ› ‘üÛo͒׈ü àøq©ýôûy=ŽÑß©nâÉDKp# –]ÊŒâU¿ 󈨭a!®æò¨cÉ–=¥×õ"²ºé¾£Óz’ó\é÷°™5/‹ã2ˆür*H£ie"ËÅ&î²`Þô™×,:¢}_R–Þå.-¦3\ÂáC\Î"f!!\G+FŒUr¨Ñ*Ê¥hqwJ"ߊд['Œ ˆ–R#˨:Dƒ h0`_ÃpÝUÏàw!HØó“5¦Ó½E¡uìö¿0—JÔnÃÜË,ã‹Q4’ci[…Y]9FÇó€ö†¬-ÕN§«ãNz»Hêä»Mo’HàˆÂîùÄBWPG‰‡k0S–Œ’ÅY#ˆ€du@O ,@&½++¨dee<†RHõÙO[»%ŠÛ9ÑQ¥$>B “¬Xå¨0# hP×GgXx)ŸÚ… žú˜ ëUçJôÆ£¥Ykú]ðŒC~¯µÌr+ïW†{vvˆñ’Фžì¤‚£>:[AêM+Ý2åtöÓ&[¹VXäv¸{©aŽÊd(XHK # HcÚ¬ŠVqø¹‚)BÞ£ €Ë®†¼ºY\-µáå.8A•|[«0b­¦¢GœhIªç¦:Jê×AÕô}e1¨ÌJ˜eIJ¯ƒ¤ ¯²9P:ƒÜ¨Ï¹Ñt÷[Xéótý¥Ö™&—1–5»v‘gŠÞr|TPT² ÅG1RÌ#” kÒ³ëwK;m³¸¸U–T:ˆ  ™Ôƒ±V=RÖTPn.D6Ã+åbŒd«‰×aª{Ò2[ô|ÚšVâîI šIde„O0¹†Yœ–$"¬qìI'b($±$ìË¡êÑBTò€²† ž*ˆüD¹IXx¿Wœùž;ÔÚ• ÄÜÒaˆ¿ëA“sMà—Â4v VÞ­h@+6x‚ßiæîIï5WÜôn£yÑÚ^^u-:{‰ü6“t ®nŸgŠ€cÈÊØ*ld²óõN—ëZ-6âñ´×›Mhá·²·T+Iq,Ì|?F†)Aeí*n T‹¼¤˜¶N{Ž%g)ºe™§Îu‰­e„K’Ú @,#R±åÚ«þ¡Ð5MS¨zwT·Š!o`öOw¾dW¾[‰B®OˆV<ãi!ˆÀ«”¨ë:ÛR”ªÀ3βLê{TémQ®0$›„“:ª… ä5ßZ©ï:«-º›RÖôhìÀºgHžy¡lÄëìÄÿU‹D1ž@ø×NÛþQþsoó¯É¿6ñâùÆßšîð›Ö4=kS¸¾0ÜÁ} &ò)4—&T™‰€áÕYžaœUNÐÙ°$žˆÍe» $D'àŒý•ô ƒÈ äêïX8«¦Ù¶Ukkl¶Hb¨F_#U9jd­dam-Àê\v¸?…Yç7†6a¿8ØP.‡éýKB:¿å‰>y-«ÁáʲåbùÖòÛ~¯ï©€{äúV®µÓºúõD}G¢)_ÂT1Þ;*ÆâÙ­r¥Ñ¢;”¤ƒç+€7Y§­\â½ØB׆êVP¦UR&u ']þŸV·Â·d mƒ¡ ÀÌF…*¯®úV¸ë/\1Àm-íà[—Y”*C:È#½¶]ò§ƒ“Ø×½w§õ+þ¬Ðõ{hâk+³Ò¢:˜ogžM±Ÿi±ŠF;’@äTú•‰¸ 0 )hÙÈg}w`í¶”8kd0—ñÝŽ¢s¬Di¶‚AžzÒª™ºªºW½Ô:oÀ¾µ¾ffµ¸•Ugi)Ri`Ü!ga ±NcÀeƒZÔ­-^kE¡UÕÀŽ%X‘ È#C:V÷l­Ü²ÎŒ™]+D®„hAWXt÷Që:õž·ÔËohš{FðZÀѳ…̰¢ˆ¤™UlI#É3»`"ŒÉëå2(ã³Ó5(¦ßZÞ4P•8•ã–2ï·Ÿ âFçÙØXgÔ:ó¤úzçWmNúI$¹–T›æ³]ƶÆETU" «#)ؤ¡£r qVmbs_K—<+iKv“ÂF ¤Ð6bKgcÊ+ÜÃaíÛ9Úë÷.¿ˆ9 ©\ *Œ±Ö¾Ý-£üæml™¤‚{»w¸¸–&Ù4s^&ì«~l°#Gž@hóÏœoòG]YEu§Çq¦k6w!KM¤–xÖEp³7°pÏÎ#VÉBrA³éPŒC†¸ÅQ¸œ‡\ÐÀæL†vƒ¸5)áKjâpÓ (ÙIX†ƒ1&D﮵]ØtTÖ+©èÍu_jEfyWÍ£–&‰á‰IQ!Œ°ò˜ÃìBaT¦… k?‘.ú{]K4ÓͳÁhö®d¹,ÒNÒÈs±„R2¼\!Ê€ÀòjÀ¥dâ®°`ÅIk‚îb£2¸C°€ lt[@¡€KfÖP|-l’J°32LDꪵÐúóL³:-…Þš¶"Ra¿ñn ¤ñS(YŽK§ƒ)RM¤WSªzsXÕ4 7OŠàj7ö×i5ÍÍÃEoâýÂ3(TyUyb€%·`Ò²qw ¥Ì¶ƒ+—‘lîDr Ÿ @'R&µKyÙk¥B7  ‚ƒ ‚7 ˜Òb [ÓÚž¯¡é6QÄ×r[´Ë$É›ÂÛ]¸l9c¸äqN¯éíKXÑ´›+âyí$‰¦Y&XÔµ16ÖnÛ8ã¸çµOéZ®&âp /سºH;¿µ:ê:DyÖ͆¶ÜIÍöªˆÐy[öcM]æ¡Ö‹ÔO&›{¡êf¬ ‚9ôéæ•l§x—®cbÀ”‘$UVUWWG<‹~—×µMvËX׆™f¶‰œ§|ïž,{Î_ÝævÚ6"($‹1äHÔ¼Ž‘¨îÎÁTg¶K9øÖD‘wFé"ž#\Žã*HããY\UÕXU@B² ™p­º†{È$u¬6Û<–¸F`æÞs²Ä1^[ ‚;Š÷UCtÿUôæ©{wÓb û;Ö,mî$L¨Þ]c•&š ´%Ùc–)Ád'p+V½+KWšÖ`º¸ÑÆe` ‰ ƒ±¤»enå% *èÙYIwFàƒU†›ÓÝEªëöº÷R‹{aa°ÛÚ@ÈÄ´LÏ ¨åT%c+3Ìò3a@Úr½-+§õ+N²Õµ©£ˆX]ÃpºÊ­!i$µeÝö—"'É=°=EOi[¶*ãfŠ­k„T…DÞ32$’Oå®Úå2ìËw‹™šYž"XÄ€¥@º/§õ-ç\–þ8‘/æ¶{s©)eŠKÖ}Á~©Äñàù>•ŽˆéýKB—ZmA"A{-«Ûør¬»–&¼.[oÕâhð|ŸJŸR°ø›Æ¿n-‡€táF\º˜öDÌÏ(¬¦Úpræûp¤‘½ÙÍ›Mw1´wªã¤úWPÓí:ŠÏTXâM^5‚6†T˜ømìR± F ‹…* 9ô5ÎÓ:g¬´Û[½ .=2òI<[ÓâI•…Å]PäK›m”fµŸÚÏ!©‰˜å[6ÓNs›'s·JFSplÇA1Îj®ôö£}Õ:©kFÇNBrÒ¢2/e™‚Fy`±²‘·¹àr*}JTOu®-µh‹K•`A‰uÔü*D¶¨×LÜlÍ$D€My¥)Jޤ¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”ªÛåA™t;-¬Wþv‡±#ÿÙÞúWŽ€¾6zV³exÄ6s4Òdò!hÙØÞAà”Œœ{CÖ½|¨ÿ˜¬¿éhðwµêyäÐu]j(Áõ‰l€vhb™û\.eÆ9ã«aì%»î;ºžöîZÍÿèíð®Uçàâî^3ˆ¤v¸—#·¶ˆ+—Ós/Uè÷— ÙÔnn®À,ÄÆò7<žG‹€|*ÍùDÔ–…óH˜‹Nt¶@¤†0¡NF9çÄÖý†.¶?“z³¢lÊíht‹q/¾f[÷˜ý²³œyf¾=]u}ªõ}µž™kùAôDŠAmœÇ$ÊÉs;?·°7A €:œÆTÔ®ö*ÅÈÝ»&î¤ nã„’tœ³:oQ¡6p·ÒOï-­$±g·o<$3@€­Î‹ùÏOõ%ïOÞ»7Ï,í爱;LñÀ³áyxrÜFÄwh=¸·ê„×oº’-[Kê-[GM5¬å‚’ìRI&ð¤ÌóÍL€û9BG8´äêÝ.=ZËHoK3CpV5µÙqK24ˆ@ŒaÒ0^Ù5Wj寷xv{DÝáËžÐÌ©#Ù*`wÞ¬á.Û¶·-È©t bà*Ù.ê‹ ö³ ÛœëPùY¿åRÕw¾{98ÿ2\Ý»ó_-fKÞ®ê™:v©-t½81º1çé¢iAÄâÈ …_(˜2' ûܳü©Äð²È°Ã ‘† WGš6‚@*îªGpǾ}ÌZʬºƒˆ!ÔüyH‡ÎåŽêg8Y‘ ÜNÑ'ŒS‘@7mú6Ó[$6c,{J #ÏÞ!$œêÄ‹Oé[†Hr©U$l¥„@å^õÞ‰NŸ±“YÐoÓÀšE’U%â ŒDA@w20ttVRmkš»ë?'«¨·±<’ZÇpÙxo)õVBž*®}•p¾U$ëM^Ê˧ïâyâiï­žÖÚugÎ63ª‚NÈг—ÆÐ@Ë`ÓZKgò`ÊQî.¡ºÃG5òxG’D©(÷8­m3]L=ËÄ—Ä[nD3!°˜ ‰žGIåYºÓâ-ÙÑ ÝÑO…\VèÅN½F½ëÆ•Ñú%î•gsÔZ\Ol³Kº´T…È$²mp3†`qæ;×gäâþòYu:K©/¬¬ž3kpìÎt“GˆÙ‹éʱîÂm%G´ÄðOBÃwÒÖš¾œÓE­ê[wux§c"D¡$FèÆæ FÌe?“íCNºÒÞÒÖ +»WU¾†-Ù™™qÑi¤a VR›c£(Â•ÎØ‡Ícs½ð.†E_W!äÕŠ´e ŽºV¸t+~À(¶¸*ÎÜpP5…tb9 jOÔ[ à#R ŽàüÎnj¨ù=Ö¦ÓîãÓ/K-ž°[ $c´]FïU$íBGÅHøöòm~ ÿ0ëôF¥ÿ‚š« M õ~Óî-C KLšúêÍ£âF {3K 0ö·2 xðsâÆ€c&¡Ãõk‰sD»y-–ü£ûX þ™©ñ!ýfÛÛ’Ö¬=Ì£ï¨u žl¬cÛ´fÿ”ÝMrvþKŒã'ù®ŸÎ;W”;©nGéëV"}Fé%) „Þ ƒv;ZG‘Ï—Ðû«‰ÑÚ¤šÏY˨J»f—GT›ÃM0K"ÙdxÙÂþhlsŒÖÍö­©õî©£iëª&O›Áä‘Ē[,§ÄNù|i£ÚøÜÙÁ§Šâ-³eƒ¶Nbñ”@XèÓFOͧe ÈPV Tñ‰â£=_Ò½;¦Á{m}}<’ßEjRv`G·¹˜°ðÑph œaÆ ¬i½aa­k:régR[L‰‘ ±âµ–Ne˜æ=ÐJùo¬¡€É5.ùPÿ0YÿÓÿø-B² Ëx»,¬b‚5À…YÕr¸  6ºÛÜ0B>ðe9°ÅÖÖpÊêŒU`ƒ–£îˆë_^™èË; t½q/¯¥Ÿæ«?#D`-ydѺœFj اµœªäžsè@iú_Tß˺E³X'Xì‘Þ@Nqâ8TÏ–A=ªÕÑÿÍ:_ýeÿ†Š©Î´–û§zÊÖZiaƒÂAÉw.åXÀÌ…{ ŠÛµëx³y³øT$À„ã´#`O}jgE³s -.SÃĸL¿ Á' ÓjÝÐ:n^²IõÝ~úé’yäŽÞ ÛÃ2,‹(äÇh å³ßÓÃuÐ=A§Åow5Ɖª8G†b O¤HåÈO9RTT.ŒcqÜžÿÉΫi.ˆšcMwvS\n…ÙVGŠiZu•ˆ.¡¤dl´¨ÝŒŒñ:âæo^д[[‰ ™„í XžâH7!eÊæ( idÁöÜ‚î6.îàÿ— pÊ%µRQÇMBÃNç—(²Û\-«öÌâÛ!óïqC¡×Ä ‘— &µ>Pžñ:§N{ ¹ƒH†ê? œƒku©\;ã8!#‰™‡9U#µIuÍf-oäþóQ„íwK$¸E<Ãrš…šÍ‘'rÎÐù×ËX¾RzyH%ÁA]hG˜#ƒP~—“[Ñ£V:N½VCóa– Ø&eùĨð:ŽYÙØû#+j· –ÖÕä?‰â.)þÐ&£³Z8Ë„“nãݲã|¯ÂSmü˜±Bz•«s§çK~—Ò®fm±Á£ÛÍ+“õcŠØ;±'ÑT“Ty—R,Ýhö |qÆy¸ ß÷  [ã9Çjkz—Ì>O4˜±6¥aah¸ïáx)-Áþ‰<&ÿZ+€¶Ý[û›ü‚:m “/‹óŒœ–3|äMÿê¶ø€áqá}A³o•0«Ãâ\%ù¶xŒ«6•®b3I`|>SŒC‚Õ°.k· Y¢óáæÊ ™?‹Ÿ+[]ž;Ž˜ÕnamÑO¢ÝÏŽ2’Z<ˆÃ²¬~+‡òpKtÒI?=»ä’Otó5ÄÐ5?Ÿ|ŸëÎÙ›MÓµVÏ­¥–Üü1‰}Ñcʺ'—¶PtâG=ݬ2 Ë¢R[ˆ£|˜;]Ã`ù`ùTi­á± ’˜¥ $d}àƒï«)unb,\á\êF„ºHóGº¬z«>TÙ–ÃJ*ÅOÏ&ìHÿB=*͆æÞä1·žÂÃ*Jž@bŒÀ9ã5Xüª›ô¯þ²oÿ€T80F.È ƒ˜èt>É©1ÇþRé’Áúט®ußFhV–3ÞEÔ²Ç<6Ï<{î­J™=ê›c)),À w䡲z==¨ß_ô¼o$’Vµ³ÕmàžBZG‰tó"‚çÚo œ bIϲ1Äꎇ·Òl"Õ´±5Ä0xo}krÆAá¤Ê­ŠO 1Û2† ¨ÆEuÕ3·¾ÓïúQ—M·ŽÒѵ(¤´µ½ÂYËâ¡?Y·1ñGËÈ®®Çq5nåÀöm0vľƒˆèªl•"T…Ö\>ìk3½KI’íÅȶ áÜäWfƒ &$› tÇKé:ΙóËýfk9þq,^ Ü[F6F«m˜Ën<çyÕ‹¡hV}=m«\iWòêrËld’Á0Ym£¸xQ|0ei òp1çP“é®›Õt‘uªÝ˜.¾s4{ôÿF6E-Îæö³ƒŽ;U£Øè]9g¨¾—p÷QˆÍåÌqÜÃw6ÛxÛ˜Ö=˜Êäaˆ±È¬c.1k¶ÅÛ¬3Â6€¶aÖ<΄hcS¶Â[m\6­/Ù“ÅXÜÕ’„e΢t÷ ª:~×Bê o&ê]fâ N[ƒá gŽÞ6U!Äó£Æ[Ä.‚ÈQ6© ±ú?FÖtIïm纊ïD4ùà FTlk4,Z@ŒSz)QÉ5ćEé´[«ë>—v&q:+ñ 7ÎÑšXÄr>ÜF=Ì1Ü ­.ˆ{3ª5  ïÊtpÎÅã$À$ˆÄVxÔ3¬nͼ»«¹ä¶Ô#{ìnÚ¾J"³áîÛÒØ\ºÚu€#3˜N€m…á\°Ì¨áܪb-\3p°:]V’Ýö©0OJÑlµÍs¨"Ô5lRÞòáâdš÷³ÞN¥OŽ8yñSý¤t}/S‚úÏYžòxm°5ŬŠË,/ 3,J $È €ãŠèš6¬kÝE±pmã‚îáá"æ+mÎד« Ê|(‘Þ¬m§zcH¿[­6øItѼ¨[ϹdÚX,h™½€F ÀÏÅÜ`ÛÂm(á‹@Û2‹¦rf¤4'M«l-°ÙÚ´~ÕÏ®°¹"æ„ H ÖÆ€ò~Q.å˜i«œjWhîBÀÕy¤fÿìŸC^:ylo5Λ¹rÒXÝ<Ð9.Šþ̹ÉÁmåQÛ“ÆNcW—Ú®©Ö—z–`º¡ÒÀ‚'$‰{q)"X·9–hö¿$ƒ‚¯&ÿXÓzºÃ\Ö´åÒÍü‰o:¦D2ÅáÇm,œË)Ý´.à°ElrMdY>­êÞ 6 Ò3/"à=¯úc,ÛZÔÞ²q\Ê/ Y²· ƒ6lñ–xš¦Ýt=¹·Ž÷¬´k)îÚÞæÂÎ)eWT1£ßjœö͵£¯ôÞ™ éï¨éG;ÞE$"ÔIwȪÂ3nÉ"´k™K`®ØÈ#$èu¥œ:[èV7ü «+(eðØ+ì{ý@¬CqØà×'¨zfÛ¤õ@[OE–UI`¹f-£–‰Þ/ è ‘ÒDevö[Á„N3)6³ !T­ØcáÌÚÀu­//‹ü%`.å7K°6³²¨2¢dû@ÖWªuF¡eÑZ]ébš¦§[¬ØÃ C%Ðc{Ųœ`<ÁÀ WÆËäÞÖêÅ.5Kû÷ÔîbI"È…!’E ‰QÞb„€ìÒ)r6ŒVzþÔúkLÔôåYÛIÀD ,v—øjÛW„H±DʰXƒ€¦¥úwTh·Z\7ϨÚBÝâ)gŽ9a‘Px‘´LÂBCjŸ`¦àÃ5s\·a_¥ïÝr,²A·hèHO³Ë]l…¶÷Ù1 RÅ£h³B°Á¨‰‰i$¼mÌé?¨t¨/l5r³YÄ[ò|æu–MªY … îÈ$†‹ÚB£8¿“¸!³ÕEÍÌQ3\Û•̈H>JøŒ ÷Ç©gNuHêC¨ˆ¬e·‚Ì•K– ±‚àõ›™€2Éo@t‘Þ*†I´ÖúǨm/ï屆)ïçIh£Ý"ÞÇÇ™²˜)#¶ÝìŒp X;ÒzV“~×Ö:¬÷Ò$/ DÓ[Jв•ö˜B¡ö0¹ {â ÖŽ¿Ö½IiãxQI¨\§ üE¾†!–(ù]²¶F;àçŽg ¤i}¥ë¦žn­h|âU”ƒ2[4Æg•wg‰Óºv€.WOvѼÞ4¾/1 möWhúFÏ|ñé]ÚV¸¡ˆWŒâth2$sƒ¨éYȤ«€„1ª‚0yH…j½ j·tÉqe4¬^ce$q¤ŽÄ–s±M³–(«¸òA$“ÐÐúOGÐ¥³…ä¹e(n®\K8CÝ#!Q"Vüï ˜pÌÀ$´©"û' Ýr‘gHèy‘ؘíQŒ=üAiÌæ &zŽ@÷fLêk>‡cs¬Zk’ ¾}e·€¬˜‹Ã?8|{Næÿ*—Ãó}9Ƶ éÚü[ê»,2ø±Ã‚7©b¨O*¤viZ —FÀ „ ™P'Eè5:w=ksnÙ ¥«œÎ1ÓR9ÀTbï¤t‹Ø´¸.ËäDÚD'ÂlCï£gÒ3‘\ñ•É©=)Xgw3 9A2c-”OS©¢¢!%UT¶Y Då³ä4*3kÒZE’j±[‹”‹X†Ho"ñóÉ|Lø+³èÙD®¨rv©ÆqÿäÛ¦¿ƒ}ÿ[ÿúê}Jb/‚H½p‰!ްÖËJÐáìµl…˜D 2`l$êz™êk‰¢tþŸÓñOž& q"É'/Šw"íNÕÀÇqÍ5¾ŸÓú‚(!ÔÅ-äi#ðeðŽç]§qÚÙì8®Ý+N%ÌüLíÄ™Ï'4Äo¾ÚyVü;y8y‡’X™Ûmõó¯›EÄÐ:+Äñ˜W—c#Ã+)*ÀðA Ôrä´6ÛQ´µ7kmª@ö÷P½ÁtÙ"ìP *2yã#%¥nØ‹î¥ZíÆS¡‰mþèšÑpöƒ-«jÃb9h~¹õ5¾ù9éëÉÞtùå‘‘‹´V’Ä!ÜÇ$¢M Þ'>ÂEÎTCé½+§ÒEÓá`×3¿‰<Ч! aUvFˆ¤à°bêQ±Ý8muÙ6ÊN„€y˜4\=”~"ÚE}|@A×xä= ÷'½;s<÷­ï‰q4“I¶ë ¾WihðÎæ88WÖÇ¡4-:îÛQz·ì^&kÁX«&v˜ðH H÷àÔΕ“‰Ä”Þ¹˜ÄDDt>=McÕ°àæm†A d²&s\-§tÝ\=fÍÓ#LóËâ»xa¶€ÅWcŽrI9¯zÞ§kðà’•·ËC'„êÌ»XnÃeX`‘ŽJ©ÏÚ¥GŹŸ‰¸›ç$–Ð@×}´òÒ¤áÛÉÃȼ8Œ2ÄÎÛo¯Gçé­6çQÓõIËÞiÛÁnþ7²ÉlòI•v}#–•˶Wv{ WOQÓíu[9¬ocñ-çP®ÚÊA ®ÝVˆç wiCqÉR]¥#!V Œ½ ê#ž´ÐWíH]k\/E²ÒlN›oâËfZCàݸ¸P³¤Œ@ NrLd%œãÚ5À›äû¦&˜Íó9¢ Ûš(nfHI'$,Åÿ6E…TÖ•²Þ¼¬Ì·Yõb‚Ç©ƒ©îukV³e•U­£*PT£ ‡m«JÇN²Óm–ÎÆÞ;kuÎ#ŒKpÎìÄ»»q¹Ý™ÎIÀ­ §´þŸŽâ-uÓºBÒïmïíVïçÎ^/ãzn(Èw.Á‘µ⺺GOiÚ$׳؉ėîqâËâÈÒºìWhÝ3äs‘JîRzë‚ã°`ªÁ˜™ s(3Ðê;É¢Ù²VÚ.RJ€¤Ž„€<ë…¬ôî¯5›ß‰‰±i^_ fS }þËn1Ûú×v”­ 1URĪNPN‹˜ÉÊN¦· ¡™‚€Ïˆ¶QO8 áë}=§õpE¨ Š[;Ƀ/„w:…mÇkdaF®ØÀ÷ViBÌUT±*“”¢æ ´R@&T30P£3%²è$î`mÒ”¥+ZÚ”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR¿ÿÙ./Python/epydoc/ACcESSLogoWatermark128x45.jpg0000664000175000017500000000657712176660653020420 0ustar vborosvborosÿØÿàJFIFHHÿáExifMM*ÿÛCÿÛCÿÀ-€"ÿÄ ÿÄ-!"1A#2QR%aq¡ÿÄÿÄ/!1A"2QBaq#Rb‘¡¢±ÁÿÚ ?ýüxxxyµ´xx¨ÿSªå.0lQ’!ü¯€G`Âô#@m€í²º>·¯r2!‰ ääÕ##Rµ¡êˆŠ6I?þ6Xª E4s6ò¬€'б|`øÒ,ˆÛ©‡§Üxïf±ƒž1©¼<óûë7‘µ'ôçÓÙ|œdÝ[.¬Ñ–ÿÁU›ªvr Ý(WÙ’€ÍÀòœ¯"2—•á©Ä>9ˆ™z5$PP±™2Eþ—EíÕéýã}}vë~žXÔ³…Z«S${À$h$cmŽH:Dê"‘¶¡f»‚>Â@³O·aÇß>/aðóëco޿μU—Ô¹´ñx¿Ÿáb¬RÇ`veRGÇë·Sëßœ’ME–·°¡Qœ´MàQV&Û€$×8œ^šü<Â+–"¹üu0á5¾Nå˰eQ5TvnÇ[?¯zü§o“ÊV¾/òã†*åûŽ¿ Ä~ú£húüõP¹rZÈQ…è$®Ë|‘Ÿ¥2 ÝfÈZèP&ªêÏ<Ñ5¦Ÿùm±k Xb¾F]¦ŽdIP…÷ÕêYŸ`ìi@}ú·Çåò¥'›€q tpýÑÎôWc`0üë¶õ¿_¿u´†5,Ì Ê©«¦p»A¯¿89ƈ‘KmÝÑôµðMP9ùÿzÕðò†w! ö£ª± vNÈ$ mŽ=G½mÚ óþ¡æsñ¹|\ôµ¤×ÇG¼V¤ |ŽZa¦Áiñøç–é°yHÛ»Ôš*iš7p»”QUfUk;†ðŒ‚° )¨ 10tíÔ²“²¯^æU4h‹]ÊH$ }áâ‡Óœå3Yq2\Už&=Ï÷QBö(ÿìÝ>õoÉ»lèøßâC2ÌÖÆH*E2°åX|ú£¥ÖE ¼òÇþþ0ùüÿá`²Lêù[ŒµýʤQÇïíRì3©ósÅûñ9|´óriÄ ¹}&Êv 6ÔûßL}ƒ`âõÃHß! ¸W¡XÓ9ºö­ñ›"¸Ð“vÚAêbü(<±üÞüs¥z%׉mÄfLΟÉ|·Jì;vfS ƒoèÇ÷æÖüµ¯ôßf#"“Ë Ÿ½°fý‡5ô}–E`¼ö'Uud` º•`XAÿÑ2~Œ9ø9<~^DÖf«‘…yzãä iöy²Í^u“´ÅÊ¡V ªê:ÿG×tò1i ØcìQÛØmÈZ,wšfæÉƹg‚C¤D±xöxZÚT€H¯plü› i¯‡ÁÆã¸Ì,LEAcËL€j¬ÈìÄsYÉ£1ü–ÿ;ëîc;\wÆÕ¡•Ëݤ×F)D’´¤&Ž>é›Rê î 7PGo+áðÿòÁÄ帛âÉ~~6´c+ û¦IÛ?Lìò>‰ÛM½ê¦/:cu¯!óˆã:LB¯º ì>ѱMÏ”r8žg‘3–~f(Ç›÷þŠžÄèŽÁ~)í´H˜²zþ,ÊÆÑEÔ‰ÐRHý¼‚ÔÉ1EHÆ,AÜ5WÝJU$îéc·9ʹ Áóóc:µËq•Êxò|uåÅU“ñÖÈ>ä*ÇjD€tu=XÝŽ#–‚ÒUO‹3Õ§¢€n¥ÐcMöºhHöÀïȯ‹ÍJ„qùXã,’QÈy„’!Ó|-°YKh¶½þ<çˆâ+ƒlŒ¼«-²ò;(@Åì…,Îà¤PºÐÞüu 4qº-úÕÚb #õþá[…Þˆ $U€$÷.¶µ ¹&ÿ_œÞ’þ®åy.A’x’³e®5dÔ錳bJ«Y]_äiªÁÃzD\jØÖ3ƒ™ŠWK…ÉâFôþ:yX¬ ߀½šS¨è4ͯwå8˜r“PäÊÓJÊ e]v;¡>õ°Tì© ®Cé\„ÈVµ±é!ô¦¨Tì#Ÿb’b]ììU%“¥˜¼}Ë#9húžüÛ¢Üb6wD¡$‚*«†k1]O©ý\¿ÊîÓš1aXZ‘”,E˜±a±H Sú{L ì\G¸ËÊÛ%(é $¤gÝšZ”m¢QÑË9]Dó;ŽžÍBÆÙ9.i‘v.ÌÅŠªìô@Ä»'ß²t5£ã@ŒŠå‚«I+ÊUxRä`›6qš5x_H´1öÐ-›¡f…'“@Yùã£ÌììåÒ–mñnH+#µÐLµ”è¿Æ¾ ­2®Å‹æ‡ ÅMŒ~äpAÁÕ (ñ$pldQäi[/˜ôÌÊæ³Ìä:= øþuž2TªÝ§°Ê§³éHPÁòclãÝÓäY¦ES LçJYHåVà÷˜‹ÍÁ#âfy±~çæUu*꬧ò¬)ýû`ûÿ>FaԘȕìsO´0`Á}zìƒk[ ÀìåÖr0$ØÈ€¬VÞsc|Q“ET€*³½üÞñöæø¯6)“ [‘3Íä1tív”È®(xšÊíü†…rRS „üÔYäNºe¡«4yžJþ<'µÕDÍà÷7§l¾íÚe–M5zNð bf“Z<,dBJj¡QT(44Ç= >4ÿUÐ#%,¦"€Øè4ÙŽ‡í˜þϘL¢ÁRn€²¼ ¼ÚŠ5Ÿ5Å‚;-~à?¼óõ×ç«ÅáùÐøÍyžL<$Œ‰Ef.•ÅH2ÝI¢ÉYÊYmÛ-PZ46)¢i¢ý5±üBüG„÷XùC’ýI–ýD›ÿL›ýH–óT“ýTœþZ™üR•èwŠéf•÷lïD£ÿJ¤ÿEªÿM©ÿD¤òS£ÿ\£ÿU¬ÿZ­ÿM²ÿO¹ÿT´ÿ[²ÿT»ÿ]»ÿ^¦éb¥þd¬ÿk©ücµÿd¼ÿi¾ÿlµüv¸ús®ïxœÙUÂÿ\Ãÿ\ÍÿTÉÿ^ÒÿJÉÿeÄÿlÃÿfËÿlËýsÄÿuÊÿ|ÊÿzÅýfÓÿfÛÿj×ývØþ{Óçfãÿfëÿkäþvçÿeóÿ<ÇÿŠƒ…†ˆ’‹•š”–›•—¡œ¤Ÿ ¦¡¢©¤¥®©ª¬§¨±¬®´®±µ±²¹µ¶½¹º»·¸¨µ·ù—Š×¨’þ¦„ô²ŽÁ½¾Î³§ÿ·¤±ÎºÿŪÿÊ·üϺáÇ“³Ü¦¹Ë†šìƒ©úޏô¡ºí˜™ÍÿÀѻ”ÆÒ­Ç˃ËÿŒÎÿ†Åø—ÈûŒÓÿ…×ÿ”ÓþšÔÿ•ÚÿÚÿŠÎä®Ïü¥Éû¥Úÿ«Üÿ¨ÔüµØû¯Êìˆæÿ™æÿ•òÿ©åÿ³âÿºäÿ½ëÿµéþ©óÿ¸òÿÅÂÃÉÆÇÍËËÊÇÈÐÎÎÕÓÓØ××ÝÛÛÙ×ÙÒÏÐÿÖÉàÞßÿÔÍþåÛÿáÎÈÚúÀÌôÄæþÃëÿÌëÿËäüÓíÿÜëýØæøÌóÿÅòÿÓôÿÜòÿÛùÿÞçêäããìëëèççúíèÿóíãìüãôÿêõþåùÿìùÿôôôüöôôûÿÿÿÿùøùðïðáßà!ù,ãFþa°@Ђ‰!&,`h!FŠ‚{€(8 †AôPX†ˆ[x€ˆáIŒž`´AÆŽc€ì‘" +M0™B&Á&€Ô,dÄ LP€<1dŒnòƒ"H ÈB‚ÄŠ¯<ƸhÑG!`ŠìX»CÈ,Bˆ!B„N,X²dÙ†͗¿d¾àѳf 7lôàéÛ¦Mb@x"ÖSHeË€a¤GP @™?*ô¹t Ò¢K“öü¹êÌ£_ƒ ¨¶žÚš/[Ö,9ÏäÅ}Ù@6ì¦ðb3`þ~£g‹^,N”qB·H‘.kœ€)ǯ»÷ïàÃþ‹O¾¼ùóèÓ«_Ͼ½û÷ðãËŸO¿¾ýø1vH2” ÃŸM,€¤H/øpÁB™C ™t”Jn CôàSA‘ÄN0•°D=tÐYà„ !¥‰ú÷ÔøCUWa…B]}µaŒ…ƒYB|1[;1ÆBÌExåµf(÷sèa††­aŽ5Ö™dƒá¡ÙºY[m¤…Öši™¹fÚi…ÀÚin¾)n¶q–™n»Y–‹}9(˜‚èqXakD¶Fra—^wQ]r E-¸àsß§ †*ꨤ–jꩨ¢*D 0áþÑC¸ÒA” ‰2@ „-B±’…Cap†f8ëOæ´F)4щ$ù`TA.&­S3Ö8ŽX‰°£V>Ù‚ Cže$;°ëÖEÄõ¤xéÅW•Ê1Xa‡ ƒŽI&eŠ]ö皀°'j¦1œšÃtÎ)§´Ý†Ye—¡ÉÛÀŠ*]®aÆbdiswÝ%\D±.õ¤*óÌ4×lóÍ8ç¼Þª H0@S!¤h+D¸"¨ L&´àëOþ”Ò@ ›, 1Z@ƒ€5 Ñ M¤ØÓ‚ULÁâOIñ$mA°Ò¸ÁVa¥W^dþYC©[ïÊûä]Ròå``dɨaŠW(d¾)f& zä†ðžŸ Òfj‡”šœ©Á©œ°õIðeƒmŒGäz8Ædl„n!©s[àµÅ¥D8 w:/üðÄo|Îù-„N&(?Ð 32HÓO Yä< ø@õ@1(¨¼'ȰÁõOtàüÔÛ{à 1èƒOTÓPÂõ7ùj”NÔ[Pâ÷ÌS_«çK‹²­ï=ÅÞúV¸tÄ|…;Ø› d .µü`?p \0E;Î^TRÎÈ€@p©_Š “¿Á±Ü 4·YÓœôÔ°žFb…DÂ8ã™Ë•®Oþ0L“öÀ1BécÁ1J&B:lA ÎÁBÌà„7ˆcÇË¢·ÈÅ.z±@c™†&ˆ1ŒR0ã»À„3 R8#œÐ9>á rlÂÚxF2ðqŒ`ø#˜Ð5б OcÂØ'ÈQ `P$’à„/,r‘@xBÏØ„2NRŒ^‚Áð„$\2“RÀd³ Æ! WjžЅ/xa VúBô@»2øÒ Š*Öæ`@̘’ "£‡9”3ºùÓf¡Ã˽F‡‚èœÄ$fÒ¸Æ5Ý<Ä7 aˆnŽ“œ…ç Ñ rÔƒäÇ0v± BÐAvþøL9õdѵ©š¬Am é'hêáž™‘Œ3õÐ sxÊ‹¨D'JÑúC,È( fÐÀ@£,H‚4úÑ&ÌÍhSšÑ4¤bLu0„À´ 6%éRúÑ A M†S“ÂRé fð°Ô2©¤pR>!§…AFÊÒ0! ©F'8Kä@† W ÓqB^îȆ1lA9$ÜÌ@†2"vf ¡´dÄÄ"2¾)aÁ^h°Ú‚‡2„d©±†nœ7l ið°‹{`Ñ;ýØ:ÄAŒ]ì¡ЍJ#ÙÌ<ažÑþa4¡™LÈ%Ö2’éK ûR6øAŸ­¨p‡KÜâF×ʈ«¸5“þÔŠ+9Õ,ƒ­A1¸Õ€¥”€Äj0 BÖ: fa¤N ÈJ ƒ`#áH¶H$-†M!Þº‘r$.®øèG{KZŽ´#ìà-CpR]èU¸K„éRbZǘ6܆L©ÔÁb…eÖMû À€†sˆgõ ‡3ˆ1;ÐÁw@BMŒ ‘Ly°Låö…_³«¤öò^׸HN²’—œ*ž)÷UùɱjB5‹ȺñȦƒää €Iš0]^mÈ‚HþÎfœ`lbƒ_ƒ€Àf¢<%mƒÉ b°e¸EYn>ØA݈‚¼ýH .@‘Œ¸ÀaO‚Ž”ºÐ¼ê+Âk@Ld‚Ó­Î26¾Œfê¹ÌmntžÙšðŠ#gìh†2tQM@Ä gxñhP¨ÞL¦ ‹é1èÅ<ª‰o†=˜Ììf;ûÙîq²>„—ØDhâšBŽV|DWÁˆ ²K’&„[ú x94^*äC&bBŸ 26ŒŒ€ bÈŠŽ„(„)hûÏBjD•Ak…Gä°úF†" •-KŠ—“èÀàÜÝ+_>aìRèP)p‡{æþ0@ˆxx_¥†&e†…X‚Hˆ%P‰@0&p(€BET,à,Ð:ð9Ç_ãâ@zCeQAlQ¤p±xS‚Kù¢8†yÀ–,T§Ø•0#H'¡ñW?–ÂQ¾÷ Î {…€º€ Ê0 ÃP Æ0®Åp ½VD„òÌÀ Ú®îʘ™¨ËE5•I6Aóö\J»ÂeÉE"J©+‘-Pgñ> ΪQ/:ªYC¡™jA ~6 }g#à2wÓ#@Ê7†÷Ǧ$ðR¶þ`xqˆ³/PªcÁ±‰ê)Mìé&[ZŠ2ljЃ è±øÐ 5Ç­Ê0Ì ä€P+®áP =ǃ±|  öÀ§ïÚµ^›|ñJtgÜW¯¹¹5³™6r™}¿ùÖ5o#@š5²9~Á# ›—Ù/0›Ç¢~ÈI›@ð›%¿¹g”i#0è×¢}«J{V¶Ê¹>€#ux¸$ 8`ˆ·K"‚%õ²x@W⤅Q›ÖrˆU9‹%‚&wrÏúa„0 ‹Q1¤CÉ€øpÍ€ ºÐ­é°æpõ@ö@ç€åP¶þ`»›†}  ÎíÀ÷`ìÀç0¾Šùµè›¾5S 1оíKO !îa4¿1Ðòë¾OPSóKM`¿™d¿=03`¿]PÀí;3àö;Cð>óËöËùÛ¾@ŒSóëI Àñk¿O€À ,?`¿Pe¿‹”À20reV:€V?@m!q³h²xZ0O¤8DY”Fir`)¾´K¿xL¿˜P‹%[&Ç•kR'µvF'¨áMrR ´ðcÏÄ&ÃK¦ëp¼Ç  ëÊûPÆd\ÆöpîPš³&»à ã0ìÐx á+ëÀ ú°§êûÇþ€l*Åà>@=@@€GAЇܹȋ܉ÄȆÜlÉŒœIŒÜA@„dÈ‹ŒÈNàŒÜÉA>É=à_°Éì޴ɇüMÊ©<ɲLH²LIà\ÊIPË›ŒÈxTÉŒ¼U«¼È>ÀF‡\ÉLð•lÈ÷hȤlÉYp#?`DP-K8,X`‹¶s @,Uy”HYДsPsÀrÐLXªƒ‰r9Ô´Cž¡MnÒOÚDâtNæDÅ…C§a]Üzã  ÞÊ îDýOƒPÇð ÐÀµüÐ `bÅ äÀŽ#XpÇ|Ò(Mþak€pçȹe4pnDÁ™}¦q[ ‚~sË}f܇Q°šü—A ulKð~ì'›:Q¶1ʸ@ÐÔ³©=ùWøG™ŠK™0ðg4œ›+…æ#9@xdQ²BpŠÇ$ñÂJ:%¬žd;Qú/QB†½9h1³¥v¢³@³;lPM`‰°Ðä±öÐÐÊà éÀË6ý€ð¤&]µ¼y¾@ä0¹P­)ÚªÝÒ6u=…J×Ç*¹b_º¢]+~•:]ëê5=á°à~0b ¦š°ö—gÿ–5V—_<Ú_"þ `çbj$ކ)¨ûx‘7y!³Sê{ƒE»“á:Û•yB„ Ð ]M‡‰€íPeŒG« äÀÍÍ®æ± ®æÍp(µ\Å»Ú ÞàåÑÚÉM]Øv¯Xge´­4ןäV·¼=,˜:ã5Y" ^<±!qo\34JóE@o##Q«<ê7x‰†-°€H¢$»:q B‰s‚Œr×f¬{mÞ–Ó•Û4°ŸðÓšŠ=ƒÏÎ0ä°µçQ1C¦»À| ÒlÀ ëqdÎ0}‘ éa´÷p¾Þçq Å+çàaö€çþÞçÅáòÕÉB^ aáq Œj"tËb‡nÃrf±’5²B7ÆÍª 1C@ðu[éۯʜvx…v€¶h×™«oÁ«.+%‚1äEþ¤ÄÑ8y½“³£†0'@°  [\ò]NÇÀçà±ãPÙçÁë€ãÀm`Ìà}°Ùü ̰ &öõ° MÛëÐ}áÎ.ÇæÐ –¡ âðŽÞaëà h¢ ãæÞAÌ §üPâ0 öžîݱçÀ í¾ß~žðÆÕÚÑ¢^Õ·™‹ë¶à–é0_!ÊÛßõájÒÔà ñvâ&þá>€ñ ÁÜôæÜÑÖàâœhhg=}ÃhíÒ¥kºÜ%0[àÍ8xý!—a“ñɈ\ú&¥Ð ࣀ0WÞM‰ådÊßéaê ðâ1 kŒïÝÑÙl àQ }ÁŸÚ}Q Z?ðË`îÁXZKÆÍ öµ` ç¾ ß1ælP äà#¶àÇÝÁÂ0(~` ƒ’ä ðŽ_QÅp&0ù&ðPHù“O…˜«‰ùM ”?#ð…&0“Ÿ}ó7ù¦_](`ú”Ÿ(€ù;²ù(ИJù>Ó®?ù±û&ÀT›O€ù# ˆ €ùÂ_~˜ŸªŸ‰!þú¿ïÍßTèú(°…NQÓÉ_ /¼E07’`š²YÐ;Xð»3µ¤€À¤`P2$D%ÂH%Q³¿q³Ò×zpÕC @ B˜° R @@K C‰ :”(Q;~ùééQäH’"ÛcWRd½Zl”í÷‹ aû<îkIs$³™lò[×g&›Z)I º«³eÂÈÙt†‡ aõØ-Ë9Ì#¯™yòìræl˜Ÿ™}îudG6ϲu÷ÈñaãǨJºuíÞÅ›Wï^¾}ýþXð`Â…ës„É!NÒ4Â!Rž ™ÌØK“$Œ#ƒþé²xñ&^"Gòä æ$IR‘<š ÑŒgŽÌ¤ËeÆ®¿dÒyH’.MjéBw“ÕŠ?‘¢3&)BÛµh0RNK~ÒE±ô.Ñ;qÌö_ܳù¢^½=dʘaƒ_T<ýñèÙÏ?<Ùã¿ýô@ Bp¢@&r° *è„2äÂB6äCCI¥ ˆ€Uè È Qñ|:ÒÇoô Œh8ªKœ™êéHüòxÑ£œ„Ù ?>~*—Æáš¦ùI brFúÃŒ¯÷„;n¹ç¦»n»é ö¶ Fà{ïRÜ‚c †Â- ¡ÐÂŸÈ ð ž(<ƒL(¼‡ §„ÂY¢pJ ?aÈøñÊùÎ PW=pǃ 6ðá8x² „pWà! Z`^ÝÕtx׈1æ­—"ìÀ ,¶Èb‹™Ü‹ï‹ÿÖ0c 7ØØo(ÿñª¿<&®AA2vðÁ„ì(„T( ¹d&Xņ ‚‰ü¦@…ÌþäA#¼„¤#øh4tFvÌD"AJ\D2¤0íI=ŠzÑ‘}d)i#É’VF üØ¢#araŶr̤ ä°G=rX¸Ø¢Jwb…8D"¯Û¥8¸ÁNt|ÃX 7¾  ¢W8È`Ãå,‡9ËÉ`‰|£Áçw¸À‘uL(\ ÔÈ7$á‰|™0»À`Ž{ƒÁ ,» DñÁA"Q@¼â‰+yÌÃAÔE†"´Ë]ë:B†`½ëñ YèÞ÷ÀG†9‚ kXÖ¾)5 AûÏÅú“±5H  „ ¢‘‘Ì P€2þA[ d£ @(¨@ÒeÏôÆ<¸h¬ƒ.ûÈà0Îan†ÍK$ä HŠq¶’ˆ.b3?Æ3œð&Gcƒ E¶Zt$l1 O ¶s ÅŸC1ÃÖŠ8P‚Ô ½KÞ²è·3ZàM\#ç¨EÅΊ…{A¸èE0Šq¸œÞ¨˜4Ô>ˆÁÖxÇA’.‹}kBÿha‰TôAºÇ8ÖŽo·ÛÛî6ðßOÆ“B#©<æµ ?XMô0i¯{ùúd(Í0J0Œ/•çKßLf 1Ë´z”CJlð…0ˆ! ÚÎö‚Åmnu»Û¸ÃtChèC ·R0&ÎtW Ü | Òvñ‹{‚ ÒÀm& ÂLÙøS ¼´p œ¹Üâê4v|ü¨x™8\¡áÀÞ"I ®¥BÒ©Bâ'½#Aœ¤ƒ'?é=ø¸‡ c˜ƒP©J7°R¬¯œåÐZ± ×­ÙP)HäK`6  0Y%Vá•QL` ˜)LqŠmø°€Éå!£þ˜¡bý¸4šñC’(cJµ m…‘%|¶¤Eš¡Jp2“]ìcçt§GH»B1½°ÊEjÑj±«ñÖË_s˜sÄÒ” Íb ¸Üé­%øhî׿½™àqtŽÁrEJSh€Îaôó 1R‘b@08A™ ÷¹,¾YйƒAw÷¦·0Îx©XÓü9§i´ì h¨.Íj¤îvGTDŽÀx]˜/}wHJR_‚TÇ€NZïªYíÁÀ…-x&6k   ÓB9[ñŒu¬C$ƒ@~Ì?À  À'9½‚" 0)ZìWþÍø¯Ñœñ7¾¡Ø{¬£ê¸fÌ` {ìÃßÿîEW˜Ñxž›¤KNxáo…ûÈÅLrñX{¶ÐÊl°Å3Ø di„byÈErfHÁ2ìINqØÓ•?¡ ª9ùÊÁð—×¼ 4_¹jÖ“ó›çœ=dðùÖô/´Ü2`ðBÌU³ö¼<9>—ÂÎW~s¥K RxyÍ¥.sœŸ¼ ^ðyÑ}~`îL|[ƒÁÆP:”ÁíeƒA9Ôv·ƒè°w:à/ï·Bì!ƒPÚCˆ…ˆ‹¬¬C:"‘ˆd¬Ã÷¸G?:2 t¾þk@ þ³@}N s«ØÆÞp1a ÃÊãfêpF3èòØ–ÄYò,? .rDM³ûè·HšqÎàGb'I=BK6ŒcIyXغ"O~¼i&ÐÓºL‘—ßüç"04ög Ò)h?ûgðö¯?>8Aü30„hÀþîÏ© °¿<Ó?˜Ð?)@Àö+芿ø‹?˜ýÿøÓ` ðûýƒ(@&@ÿË€M‰¿`Èh¿¨Àø›ô¿àÌW3è‚`ÂY“$ B" "0‚$ô¯2à5N:;Ø‚íñÙ*÷˜þ¬Ë¡x˜©+=؃у‹©˜A@]„cHÇãÎ#™Ïk€`ú¥‡ˆ€_Ú0l{€ÐC13…m˜7i" `,h@ê+ ™›Ñbšµ 6X†z¨‡â >x¸aÈ2s€DΫex œÈƒa`b†q° _(‹§Ø‡zÈ \ð™˜=`{°‡up>>¸{? H´Š^€>ôÆ`FÃÈ›2$¸)‡‚¨Ú®A’¢ã‚¢ P.æª3Ž*3Ú›ËÉ3г È.ær³'¢"—ê#ðâõâ›8 œœ²ž ¯Ú¡¢&Ò›Ýq¯ßHªXC¦jHþºµ!€wá¯ÿ0O%ï©B÷è*K%±:“6ˆ˜WŠ˜9À:(„AÈ…^èdHýð†Oð< CÁ6xˆ ‘ˆ€<$=xe"…n Éšì?ÌZ0†_(•H 3¨'•@ ü8v ’’\ȉ#a‡žÁ)™ 3ȃ¢ñ{°j˜)Ák²%‘’a†3É$ñ&]0ƒ>㛋$ʈŠ(Ƹ”˹,‰b¬"òb"A"®À1®…Ò(Ûѳæ‚çâ›èš4z‚S³€ àÆ5J)¾¹€fÄ€H{)€™*³ 0&`) È#ØG¾I‰½*¢úþDØ‚àÇGúGÀ[+‚wÙuÁƒôµ(Ì*0 %‡<ŸÓƒ*¥ÿðÚR†gx À`BX…N¨J…O ½’ (¹Ãþ©CÑS€ø°`ð„ó$>¤ZXZ€•`†]à…_$‰}ð^Ø…ì^ð\Ú…]¾§2ÿÐaн‘°aÈ…þ˜ƒ=àeè²qð…=˜ƒ©Øe °I%[`‡Ńä\Ëþì>P¤ËeQº´Ë$ÀY/'*³(š"cüK¾™ÆÀ1ø¢‰2Ì¢®bL‰Ú›ÈÔ.“r£Àù.ÌäÑMµÏÌþÆÐÜ›R#ÍáÒCÂÇ£¥êÇåÁûƒ"Èà/"ÐÍã—„Ìa#…9¥™h°3AŸ\Åfh† | /Ð"À‚6 UP…YX…èì„N ð6pT €dJOT8Û†nyèÍãuÿ`Çó7»€‰Q%¡qÅ«QÃZ‡qÀSŠ#‰{@ÕqȾ‘ !W‡ µ§+cWÕS®qÕf°¦%ÖbƵLF5.¾é†²ÑÂé€Å€‡ Eƒ@˜óJÌêjÌ#õ•қȄVrMs¬Ò™¼äwœ(*µ?ºÒA:Í÷RM€µãAäþYžtžJzLò/Nž5Õ*®J0T:Ÿ6Ðeà&sh‹;)‡4‚(ˆ‚5(ƒS"¤û20±E±½ªT¿"U] «< O¹„!ceÙ–5V`ø€øKÔ¿4²Àük? °d¿Àö›Ÿ]?9l¿'ø´¿˜ l?[±@¨]¿ØÀõZ&пŒŠ¿ ¨4œÀ°ÍÌø ÁšÔ€ÐY! èÁdžƒHÊv)‚1 ‚P¾Ղ"8"8‚# ƒ-Ð-<(QØ=_ª‡5„›}À)X‚%°UZ5Xƒ4ð‚þÒý„Õc=s …Qc¸†wU~¸‡a³`QÔÂ8—ÕÝÝKfè‚ß-/Xƒ¢Þä ^à%Ýâí‚5âý‚4P^àTÞðQÞáu^ë^ê-^õ‚ãMâõ‚ßÎð^/Xƒé ò½9ìÞóÞî^õMŽæÞ™sÞSrµ+‚¹2˜ƒRúßÿ¥ƒ`y¶”¼Á#Ãc`àc`‡‹Ý=a/èÜ+H7]5Hƒ4˜‚(…Ôý„O€VP7pƒ6èA@C6TecC¤Ë•åݦa‘†HpA‚8öÙøav—F'ðN€þ'bpñ!8âž)B(î#FN.ðâ#¶Îb&Xâ..ãˆbð'`bˆ)xãO‰âÔy‚§%ã&`ðâ ãø”@ö Ða`ô`žtÙ/p¢ú/9ø/' 'ðž/B€)˜€)ƒ?8üäÈ4¨`ˆ‚%°+@% FVX…OÀ88“‡ü„x’`‡C ?€U¹ V¬á`æÝÂ웿™×À ÄaÅÉQ‡ÚQ‡¢)ÐVè2¯˜‚¢ (©ÀARj4œÎ\R:Âæsœ©:êLw„$hÖ½‘×U5C žß$FãY*þhª§ú‚ØÛ0,ð\h\†sˆàÚ‡VX‚+¸‚)Ø`Òõ‚¦X¨‚%@ƒTгªŸgxdX˜¢ Ö]°¸a&é’(dvœuþæâª¨*zf- ÌjüѬœ‘êVØùÖ½I£Î‘Q¾1×:CWR+ç!8gó‚W+=LˆR5V3ªÕìp¡/~Íç"¨\ b†b‡_õ2t°‚+¨‚+X‚ Fƒ)¨ØR®à%/Hó1‚Øgðˆf(N>¸­‡MY“öë¿î­—:F“ ¤ÎéL)ì˜V®2f éâ Èé º®ÂA)¨ ¶€&Gi‚pþ˵>ò©•*Ýq/DR¤\ l"è\(†rp;?pë*¨‡&]‹më)è\‹õ‚Už ‰¶Aм´Áƒ·!VSìè–nàÙ«íÿ?€ 8`XÀƘ@Œ°XF0¤‘F4haa?°p`a#q‚d’ñ… œq¶„V,q≮˜Ç/®ÜB :踃ÎzÚx#Žþ±õÓˆ&üTòˆ?ð¼Ï&•\’Í4”XR‰q™TÂ$?Ñ8¢^$¢Dù#ù`“I&½]ÓH<ÜL‚@4×Xå%—`ÃO#ÔÄc%?ý @ 5üXsI%Õð£ $—lÒZN\¢<ä# %üü³ˆ?ï4ÂÈ4Ž*z‰&›ôÃ%?ŒÔDI&qö˜#¨¡Š:*©:¡Ó ª©“jª®¸Âj+¸ÀÚJ0¯²êJ1Æ£«®äY?öÔX*±Å«Õ;À#l2Í59Eòç&‘h’ ?—Àƒ'?ÒÀ“O%T“²Ù\bùD3ÉràP ?ð8e4ù@2Þ&ñ p6–ø&€MùLrMþ>š¼£É5ý°Þ;,œÓ5L¢ #™ÞÐé&V¾C@<œ¼Ó#ïb@#ü Êü< ×ÔÙí5Ñ@IðÄÂ#õv]3æ™k¾9ç{›èýH&Ô´S&—ø£É´›`³ÉÁ“äÉ#¢,2M×ÈÞÙðŽ·y½IÐý|ÍŽ'g’% #ðþïÊÆ»mI>™ lÀz‹¤þ®Ñ›«*Ü6>f0¾½)“ÐG6$± xlâ7ãGæLpZTœ&±ž|l½ÉFr2a¬c¾±‰4DÁ‰B<ððWÁ.‘àäCÜ`R>D!µGHÃN|"£(Å)eX<±âN°-ú„‹?ñ"X¬¨E@Q±Œf<#Ó¨Æ5²±n|#ã(Ç9Ò±Žv¼#ó¨Ç=ò±~‹™°U|@+9ú°Æ4Ô“x¬þI9{ÇÊ h ò`£76éG>²¡ŸiXPÚI&»g lHçÔéÇ{PùéL#Rñ¨Æ5ˆJæ@8×hå~ÖöŽjh>ÐbÎ+³Aœx¸Í&ú€ä%Ãd3aPþÐ)ùÁïü±šÖ¼&!ŠF6Bþ Æ"@¶&KÀ<|‹FÅâu‰kX©™˜„Ij æ;ªµ‰y±Ž`9‘ß v¾#ÔøÇ­M€o•°F,D!2•MÂ_‹HàÒ*@AUÂÕh%à JrâDŸüÉŠöcØÝ%¤a¯ùYÂ&­ÄÒî9®õ£…«¬áø þ›F=*R¥ÈDô`ƒ^²Ñˆ5‰âyÙx„ÙVœGLc•„N<¤DJp¸D,Þ1‰&ÚD[O,ÆæÓLÀî¡ð˜Æ$†ö.bi-L$?ª¡§H0âµF&ñJ¬ú€ ?,ÁTM4Ö¨˜(,‘°œ@¢j.µì¹â‘ÎEHã¢ãéǨ¡‰»Ý ³ Øæ”ÔÙÒ¶¶œc„%šø#H@"Èþ¥t¯—X„Vßv¶w0 a«ÊHã‹x‡%Ι41'M„D,ˆê¨J`C [<®K0â×hX¾·Ò\ý˜¼±%òT£&þÓXÓ‘øq¢Ý H+š&˜ XBÜÀmÕ •“FT£bÙ€6@ HÜ­8»aA€$Ù¶Ä&>q± €€H¼”¢(À&žW òĪ|³]N°§¸vaGñn`ÕÀ;¬‰žñ#`ÄÏD1¶Høcíå?¦±´lPcŸÑ(€5æ =iCüˆD×d— ë2b<ŽXDMûA5‰lÀRºæäÂrönàñðüq‰F4"«sí¦a²-ÅÃNZ„ÝáÒ¢¢¸Ò–¾´ªÁ o½£5Ù`¼llåƒ8£ÖÉ÷â3¡²ÒàD,F]²³7ù\„Ý"{#\Föƒ8üRq´œåôƒ—DÎ?ÈkhB¸ýð{¾•kl"ZÈx6kðÜÇ8qZ`4dš“hÐ3Öȇ>¾Ež~D’o»¦ã-ïyÓ»ÞöNK@;./Python/epydoc/ACcESSLogoWatermark1024x360.jpg0000664000175000017500000017726212176660653020554 0ustar vborosvborosÿØÿàJFIFHHÿáExifMM*ÿÛCÿÛCÿÀh"ÿÄ ÿÄ]!1AQa"q‘2¡±ð#BRTÁÑ3b’“¢Òá46CUrstu‚”²³´Óñ$57cDƒ•%&SV„µÔâd¤ÃÿÄÿÄE!1AQaq"‘ð2¡±ÁÑBR#Sráñ34Cb‚’¢²s$c“Ò5ÂÿÚ ?ýüR”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R•‰æî#Ýã÷ø{ü²¥u–n„³ƒžk9sí{°>gõu¬Xº¼ý|‘gJë%SöþÊ/ ;OÇöVoê×_ª+äßüð»)@s¸¥R”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JV,w±æÆs‚|¶ñßãﯷj –ßmž™ë×¼ì+ é¨Éå•$œ€[» '~àMi%Ô- Ï4Ê[}o%È÷’<º§¨ÕIÍe ·Ö¸çžžV¨4æQºœâxkA"ñ‹º×À(¯q7iÐAfº{àEtÉ1çØ›š@±¾Ù W*I¤~‘õõ#µõI;•€#1_æÔö÷U‚æ-͚ͪVEœå{²˜È=àóeH`ŒÕ Áyu TIQsžUÉ!CÈäœcººÞÇÖh=¦%Ò˜Úùb¯sÚ Cš\¸>ì;"ÀÇSÑr}­¤Õè<9üG¶ZKIk€ ÐŽ Î*í[kqJÖCªÙ]8† •yf ш\gàgßÇÛïÉäûÏ–Hý•#^ÇÌs\0-¤8Y®£Õn-¦Çqó]”¥+u”¥)DJR”D¥)DJR±b@È¢,©X±ØïƒÝãX‡ ’O»öÿ_¾‡â+ãè»)Zë­RÂË-w}ijQ=Ä1ïþ³)óÇý«A?pÌΤ³Ým ²û°Üœ¤ŠMnØäÜîôi#æ~+GM>óØ=\/§NsjaJ®äô• .yôžè~§u?etÿdíô]Kù;úµ/Ù5_Ü?§OOß÷¬Ô_lÓ|Ïš²©UÊzKЛÉAÉh#8=Û#·¼ã5°‡Ò Lw½’í™­fP éžUr=ç#åX:]@«†Aò“ù~´²5ZsÄÌù×nõßáÕM©Z ~%Ю°!Õì]D3Å’vI ?R6å?•¸Žd”f9Á22°'Þ ]UBZöýæ9¿âv¾{_ÌR”HÃÃÚo³‡î»éX‚J翟wêò¬½õ…½óåÊR”¢%)J"R”¢%)J"R”¢%+_w¨ZÙ°[™Ö"à”]‰®9ˆóóé^e×t¼ëŠOù9N:÷òoúª'M\Zé× °çsñüÖ¥ìn r/5Óâ·4­?áÝ3ôµþJoèÓðî™úZÿ%7ôk_´Aýô=?â7­~ÿY­|Xÿ¿?®ãæ·­?áÝ3ôµþJoèÓðî™úZÿ%7ôiöˆ?¾‡§üFõ¯ßë4ñcþvüþ»šÜR´ÿ‡tÏÒ×ù)¿£Oúgékü”ßÑ§Ú þúŸñÖ¿¬ÓÅùÛóúî>kqJÓþÓ?K_ä¦þ?韥¯òSFŸhƒûèzÄoZýþ³O?çoÏë¸ù­Å+OøwLý-’›ú4ü;¦~–¿ÉMýÈÔ@ãEÿäo—ŸŸÖiâÇüíùýw5¸¥jW[Ó]•éK3*ÙJ2I •ÀÉ8Éé[jÝcì±íxí Õ÷¥³\×}Ò sGºR•ÁÎ6ë[­—4®¾sÓûöðûï^KBÖÔX¸Š3ܼÀ¹Ç\(%‰ðÂëRàÑn!¢¹qáõðµ‚à’ïßÓæ½ô¨¼¼OeÄbyOq OñÈ?c§Cšñ·Ȳ$x´àðãßÝÔUgk´­5âƒè :€G_ÍFfˆúúµ4¥B?u¯ú þWÿÌýûë´qjíÏdë¶ü²©úš5û~U¯ÒŸø•ê×~U¨ˆÿz‚;wg¯E2¥E“Š,›¢\Gžü#ïÙ>ð>ï‹\ÓdÀj¬{¥ £§‹Ÿµ·ŸtÕiß[fa&¨s]ëºØKáán©]Ì’…x¤YÒB¬½zƒóÏwoÍå†sS‚°A‚2ÅowUÁË÷\Ò•Šä úКýR²²¥`2À’HÛéïÇßæžî `L÷F1·;Oø£é°\ÖÙsƒ@ä“C¿%`2H¹4½”¨ÔÜK§Ç†yŽû¢áN< rç?WSçán-QžK6oy‚ŸˆX˜;ãUÝ­Ò´Ñ•¤ù!æ£3F9péø×o#¦t¨Gî¶Lÿj.<¥ÿú~³ñ®ÁÅãYæ&]ŒýgöÖƒÚBkÅ9kºÕ8Ê×ícÞûúÛÏ­)**¼UhÛ<7 ‘ù"7úÕÉÛ˪½±kÚl¤ZìÉî2ÿ8ûâÃÊ¥n«Nþ%gÄ×çC¯ëÆVâV{‡ž~»ýeoi^xnay¡š9@ FVåc‚wǯENpAàƒ`Žøúü–à‚,dwJR••”¥)DJR”D¥+pªÄ¶1Œç»êß?…`šçæ‹&<£8Îø®¦ÇîÎ~¡¿Õ^ n™¶B@ñ g§‡A^n¹=qÔ’rs°ÏÇ«5ZMHn,÷éÏLþŠvéÉÚ\~öClùUŽ(ÿ®bA5£…ÎÄœ·*ã§^üùs×h9îÆß^[=íMïå‰b1¼¨#rFŽêÛ ì '™.I 3Žý·…c ÃÁ+ñIf>9¯/í½ï–'8½žéᦈjþŽ++Ð{,5°ÈÆv¼"ÀÁª¯?ªÛ\^MRè €Z'_ 41’GǿʬI%H‡4²Gï»¶:gÌw|»ü«Ýrhg¾i ‘%C@²@tH€6ÿ:ëC+}¡+¶>KçÊe ê†LXÜ6]WÿìrX‘'©èç$¶#&L}ØøcêdhÙd ÊÈAVT‚9H?1åÖ¬6õoíc› ?ïs¾%o¿E` ã9éá¤^Ìwd ŠWm•­5’Ÿân0×öÁ¥YWôò— ®äpzÛ×ëÉ{²w=~’»!VRÊËœ2±Rˆ#p~y¬z cpzþªŒùŒW˜ìE‚8#‘õõÑYƒaL´ž V æ‰Â\·Û”I眎qå È™¡æ\äô#6ðªgïúêW¡ëm [;§üIÀŠRqÙà+¹BH’Jädã§[E® ˆçuŽóȲ0OQøãª·ç y¾Ç€¼ýwSÚVr1œ÷ƒÔ{ó÷ûk:í+¿CÍ)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ¡÷Œqñ¶µÊØ–ç™Is,CÏ~äáAò=Õ&‘•Ùˆ ªÌÄôI? ªõKƾ»šïa¹#é´ceéùÛ±ÆÄŸ*¡í ü(‹A÷ä÷[Ý¢ýç_¥ÉA¨“c(rìL_çòZüŽñ“ß¿õ ©•üßç7Qæ,~ªÆ¼è·ëŸ^¾«œ²Êþoó2¿›üãXÒ”;¯ô$^ÛU»‚uöy$\àõV8q“Ó)‘Ó¦sáV¨`ê¼½q¸*FFûç®|*ŸÁÈ=Ç˨ëõàùûªÊÐn}fÂ[™ üCóìŒ&FøÊ9ïÜ÷Šëû.Zsá=FæúŠzRµ¥w¼æw¾<~]8ëÊÞR”®Ò¼”¥(‰JRˆ”¥`ÍÜu>¯S÷ëO‡Ö>¾ ‘ž„Ÿ…uè²$–{¿]xï/í,aiîî"·…zÉ+„Säy™r¨-ÞA8—-4²öšpKëåÊ<„óZÛ¶Îêߌ‘N${Ê íT¾£ªßêÓµÅýÌ—òób0&(DZéžP ÀÉ5ÐÓ{>Y©òx9ó¸à`Ñ>j†£_^ë?´:šÏ¢¶5oIvqHµ7l2ÍÆa„÷ebP%q°Ç1>ì ¯u/â D°“Pš›c ¡õhÈ=A1rÈÀÿ È=àÔgþø÷Òºñhôð¶6¸õs€s‰ï‘Žœ×Ì.DºÍD§2‹û­÷GáÏÇϺÍÝäbÒ;;“’ÎŘûÙ²O̔«J3Ó$ìï'ΫKQ—P¸i‘äE@‰‰Áúmœ±î›U­f¨iÙŠ2; »—g ¥š_ b‹þ~\-Ž¡Ä7w,Rm¡'ò%aÜY»Ž00GLÇÙËıb7%‰9ÎsÌÄœyd{ë€9†Ùï?ió®Á#¼ü’É+‹¤qq>x`:‹žç¹Ü’|º}cáÑ ä韰÷÷÷õÕÅ*5ªç'ÄüÍrÄó=~ÃXÒˆ²æþøl|·¦Frߟ·¯Î±¥`€yú¢°8a°p3ì\³ƒb©ºu©FFqߌü*Â͘.“ÂXØñ“”üÊž¾f¥ÿ—þ¯ë¯M¢;´°ù6¿í?×JLl' #ñ?¯U•y§`å™Ö8Ðs3€}»ó·N»ôÜWs8PÄà’N6$’v ­µRKùÌq-¢b"nr0 ‡Ç'8`;‡SV¥ºfn«{ ÉÇ>Y³è³,¢&îäÿ {œ|q×膣IJÊZ; bºcƒ#ŽœÊ: n à°ëœTYäyX¼®ò1êÎŘïâI#ïµbI?wìûŒW祚IM½ÄæÃnš=;\÷Èé ¸üø|¹Îç}kŠTKNg— O€îÏ»úþu…)CŸòD®G/~HùcᓟŸÂ¸¥+ðE3á'Ë^!ïì\|ŠÇÞr3SZ€ð«bòdÏÒ€y«ä}D|6ëSêô^Î é#®…ÃñúÿUÑÓbmùýr}R”¥^S¥)J"R”'Ÿš"¾¯¬âµwR¦pð;‘÷ê;ö¯\—ƒr3‘°9;y}¿ejd˜I<½“³=J ÆäÓ®*®¢F†í¹Àsƒc©ôìq%Ä Àç«{ ùñk“Œô»88ù~Ü÷÷Ž™æ[Í;d¬1I+7+— ½¢lõñÚ» HÄœ|H­}Íý‚+E+‰C«#ÆžÙu`CÊÊ9$g˜wõKÅŠ"×JðнÎm±º³“W䮸r=„1ŽsÈ;HО™!S×׺ÿØËqrñ¼—ˆbÃ1Khó˜âRyG2')${LrÙsG¤Ù£s3noÆ6@Îû*çî? ¦M´:gY%«Kêþ»jbíy{@“H”òœRJç¼c®jƺ¾»’I¦`ŠJ€˜]²sÐg¿ÄŒ{¶µý!Õhƒ}Ÿ8ˆK ´Û¡!¢…‘Ðú‚O^ýéû Y:èŸ)d­œ ­ÇEfìp:ki«éš%õ·a Ë‘‘€“ÆÄõB€·ŽU”©AŠKXÓÓM»0E9¸…‘dŽV³f œ‡RÇÚS‘Ì6#g8«(îy‰Éï'r}äïõÔ'ŠSÚ¿q‰—'9ö[ gÜ{÷¨¿£^ÙšohÇ¢¡šFJC9ÌnæÕŒp, Ír·ö÷³!C&«.Ô1Ñ‚ú¡µÎky;d›¥¥)_B&òW„JÞè7†ÞìBÍø›‘ÊG„£èy9_ñOžй© 6*CàWpzøõý•«NÝ^žm3þì¬-N5µÃÌ>–·c¶8;±ébÕ°F>°}ã­q^k;ukÀ92F y8ö\wç }zkå2Fè¤|OèÜæ8y´%ÔÀ#‚ùå+Æûýó\VX<¾@œý_ûTgË×§â²§\=ªvê¶s¶e‰3 ¼‘*‘ÊI;²¹Ø†òÀsâ=õOC4¶ò$±åZ6æS¸èrF|#©÷à‹NÆò;»h®í Ýv<Œ>’žý‰ÆvßÊ»ÞÎÕXbwߌ,ä°Ð¿:7Þ¯iå.-àÿÊ®öyí…î€|i\€î®k¦­%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"R”¢%)J"W`O€5Ía#ª+8Nq…’OpÖŸ—úü9X<ÇÓ¯à£|E~míLÄKu•8ÎVùÏúÇØ÷žE}[-J÷ׯ%‰ìóËôÄc!@{1óÉïÍkkÌêæ3Lãü ;cš:üM®lÏÞòA÷Fòó¤®Èãi$HÕy™ÙQ@ÁË1ÂŽ:øžžU€¼í¿N»}™ûøÔ£†¬{{†ºq„ƒèm±‘ß÷ ±åÆ*8"3JÈÅûÎGFÞJÑÞö·¹ü1gä£÷0Ikq,ãž2P0² ;¹>üãzóT¯Š-{;ˆn”m*b xúŒÐã|ýüÔTõ=ûük:ˆ¼¤ uBð?5™µîhàqæ:ŠÍpU†pWìû÷Ô—†.J\KjÇ :s®OåÇðïP{Æ9zt.>ý|z-n ­ÄS®Æ'Wëù že>L  Î)§Åó\R•×\„¥grM"C<’ÈÁ#Ž5.îÇ U“îè78ÕµÃþމTº×YÙ’Â& ¨=@ÁŽ26'™É¨¦ÔG§¤q0Þ=¨sWYãÍM Ní¬¼¸à:ñyã•WYi÷Ú„‚+Yî¤${1F_ßÚ8åQŽ¥ˆ¼ŠœXz5Ö®B½Ü¶Úzº³‰T‰XÎ?ʇ5wÚXZYD°Ú[ÅmàØ~Q,Þ,Ùf;’M{ÀÀúÆ~ÌW_jÌïö lcw¼H¡Ó׈]h½™Ú8¼‚om´Œ_?‡|ªªFzë:•ÜÄu좆>;7lÞïoú½ÃÑ·ûî |I™?¡îdW〪Ç[ª&ÌÏ¿€è:_/š²4zq O©ÁãÔôíç|*ÒOFz#íΡï"HŸêh›íýU§ºôXÀg«‚p@ŠêÜ(#»2Å)=Ý{xUǃùß0?«õV% êßWõѺí[MøÄŽ¡À?D:-3¿á5¾m$v®ŸUó­÷qžJZ¥ê’Ö“$ŽãÙ?$žxPÄxdíÝÁv0qM’][Onñ­ËòÍÆr°:íΣó»³å_BLJÈ}yÉ?1\°bªYz7*óv 6‚Aß¶sí)]ã{w´·p÷H¾à`õ#ö¥}$lŒs†ÇFÕwÎ=zz,— øãë?ª²¬ysË¿Ñúú~Êʹ rzš¾Øìº#Ïë·~’”§J]{Í,]^R•0È|ýÆ~çõÇ8ÎàÞNØûýUžµ×·T¿"=Evïõ‚³¥x¥Ôl $M{i{KˆSþg|«£ðÞ‘þÓ¼±{k¸ñýôVÛ\xkÀþË]ìþf‹îGïÊÚR¼)¨ÙL@†òÒBzr\BùÛ;r¹îß­z„€ä÷†=‡‡í¬G úÒØp6k~법qŽþ?¿ZÈŒÿ Åßúù¡ sõëÙAx¬ÿâí†ÛBOßëÆ}õ©Oo`ÏAl2:})2GÌTXíõ}c5æ5§ÿªŸüCÿFþÿ’æÍþÕþ£ò YŒzl@'åúë çÏÞ>¯ëª§·^~‹Q)%‡µí¬w>²±‡æö{øÃ0ëÎ3¸=6¯_îU¿M_öqÿR¤J´Øcüiþ¿¶¶øä+ÐE Ó˜ãqŒÛ˜×|ŒÒp1ßׯ&¯²ËZH$nß^pÜ«~š¿ìãþ¥?r­újÿ³ú•7Àð!Lò¿õ~›û³ÓøÝåûǾ6û<_Ê~]¿>åB?r­újÿ³ú”ýÊ·é«þÎ?êTßÀ|…0<ÈSú¿MýÙéünòýãß³Åü§çõÛóîT÷)'鑜øÆF<6}[W[p¬ãèÝÀÔqö3ÔóÄ|í®$ƒ‘·ðiû+ÕúoîÏÿ‘Þ^^_VSìñ/â|ºß—JåC,¸væÚòÚvžH¤ÁC‡=#ž¿<ÔÖ¸ß'? b¹«0A¥±‚¢mÅÙªF1¬4P¾÷xåDx¦ä¤PÛ!Á•Œ²uÉHDz¾æcœÿ „€àùUI8¥ÏáSœ-ºàgl±|Ômúõ;Œü 'å﮽åÚ©/ø`ôÇæU ÍÊî‡7ÀÏ¢Ã$t8¬†Ø'©©Ïq>_ýur=7ûŸÙU>úy¨Wl1K<‚(QÜò„Q¹' ÎgÚ=êjYià ʯ{)õ†lz{Rç~åx„úøjÅÙ¯Òf!€JĸPçlIùÔ¤(õ>5ÙÑè#1‰fåà9¬'Ý‘cœàùvWa»CÜ7,7¥;tÊÒ¦ƒ¥Æ¸õ`ÇÅ¥Ÿ´߯ÀÐèZcíE÷‰%=?÷5»Àð*à¯Ç|«¡öxxð"ŒoèãòóSˆØ8 úÛµþY£|æ37 Y0&6šþ2Ƚ{Â|°÷Öž~»Œs[È— ¹ÁüSmäyÐ÷ãèü3´üœ“¼1\2ƒàŽ7¨_ Ó<áì<[=ÞÙ¬ú- ‚À<ÚséšÆ;zrTC†í®m§»Šâ",±X{,s&yX‡b²Ì7©bœ1ÔïãßöyùžúÈ&9éà1Ÿ#ƒöûúÐŒ77¿op?²¦‚b0wIóÈ g“çä¤c8 GÄ7&ÚÆ@§pË;ä! d;H;÷Š­ò|züʦ|Xä‹5è1+ã»l&;º†?!ê\Oh¸»RæôcZÐ>ñçôè¨ê ñ(ôk{rF~¾I\‚Au®+psTT ³”—G39ÀP2I=Àu9ß=³R{šP²Ý¿b¤óÔ&;¹›<«Ÿ¬GBAÈðÅšHÓ^H9Œl#„F]÷ÉP߯¼N@#nlâ?^sõ×[E¢d‘‰eƒòÖÙ.ì×7ëמªÜ4=ÙèéWÉàþ!hÓ‡´ä­neÇåI+’|öuUv Ma½¢{„’²A[yÏÀ æºf€ Ç^mò;ƒõŽªÀ¢©Œù_Qœ×këÇ9Q™xjÂO ³ÂqÕ_˜gÝ o¬÷Íjn8VámçŽP:,«Ù¹òæRÀŸ(÷wNÈ9Ù±å€k™Ï~sŒ}Cí¨äÐéŸÿ 7Í„´Ž8+Š– Ÿá‹«¾œÇn.²T#C²»³ÔÀ¸‚D ‰ÍŒÆNUþ’’¿“°${·ÚuXî«÷Vu&ž§a¤–î.V/›#œ­£`»EÕ’/'§×OD¥)S©”® À'Âk×ð¯Ý?ÄÒáˆQ“Ô«>þê×MrͲ`.ã=çÇ<ã|nâærÍÈ»œã¹5äÜ‘ò=<*œÓÙØÞ8$sÓÓô4U¨¢Þ5`~YÈõÿUÎä’H;uß? ¼»«Wy´àŒ‚wéºó/]ºíâÈx ȽF\†'z¬ý,Òé'Ô´{í²y$ y€î—ÙK¦(µPÀêß0 €(ž×_¼-¬÷K#‰%wÃ2á›l)Û`cq×®º+²q‰¥áÛÿoî;clc¯wQ8ðøœ|x©·ºG\윻מÜWú/PÆû­ hkp8h'e»ÄfÆ»áù¤µu´¼ìnº‰$…^#€Œ,¹;†ó*¢Ö¬µ«9»=Uf*\ör’^Ù˜ƒûÓ(‚7†q½t£žÊ™ºè5ožü× œL¯fÚ6Þxð¹þßö”'G.•Ë'ŠÐà \×Y¯z½GñÑÒŸU+é+çÇ’”¥(ŠiÃ7$Á=¹#18‘AÏÐ|ƒå€ã;w¶ýÙ’äŽã¿ßåP›²Ô£Rp'V„ç¡' £âÈý2{ªÓà£ë þ¿ˆ÷íó¿éi8´Sgce·PkëÎÁ?.‹£§qtc?vÚ{â«àAùõ+R•ÃS®rNÄžþ§¡ÆÇ¿…K8bó–Il˜í 2Æ6:‘Ìýë¾O†3ã'¹é^«I­Ü3ûÔ‘“×uæPÝØ‚Au6žS Ìxþfµßáqþo¶=§þ`¡çë•m¯Ñ~úʱF ªÀä0æÇ›}¼·Ú²¯S`ÕuÈ]^R”¥e”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ,}“ƒò÷ŠŒqñ‚ÔZ©üeÎs¸ÊÂ1Íò9ÈåSΩ®¨˜€ˆ¥œì0rIòϧ•Uš•ã_]Ë9Ï!<±.v©!~'r|ÉÏö†£Â‹Ãi©$À®ZÑEÇãÀ${ªóɵ‚°_ÇzÅþx‡^íÁ÷FN=ÃjÆ”¯?õõþkž³DiQA,ä*€2K€$“€øVžh¶VÐÛí*æC¿µ#d±Éê7Àò¨w Ùv÷-u &;Qì‚=“+ ~äžâWÞ'ù$sw©Ç¼uù×kÙ–µÓEçko£“ÿQ|Õ%wLÊi{¹8¨õòýVŸZ¶7Z|Ê3ı퓘òHø§0ÇêZrŸ†øÜnÇìÍ\< £gpÃcÞ1ñÎþYUêíiyqáQÏ/]ã'(wþ |óçQûR*,˜p}Çw¼úκ–ä8 d\gôøq‚W†¹|®YJãαé\•QXÜ;sÛÙ$lÙ{bblœžLsFÇȆÀ'1¿Z/åŒj¼á˳ ñÎå ã ç\4}ýpn;Àßa¨ÀÇÏ߀|×^“C/‹§eýæ Žøqøuú=(¾1Ô·Ý'v÷¯®VT¥*â™2ëÔº»gìžÁXÓ@éå ´\{ Ï8ºà-× ð¾… ÜN©>©"Öl0@ÃÁäÆ\wòæÁ@ß|ûÿ¨W cêú†:~¾ÿ•s^fY3Üùç;žÕÐÀŠù¯HÈÛZÆÖ·ÈYõ=OšR”­‰JRˆ”¥(‰JRˆ”Èñ¥tË4pÆÏ#¬isÉ#°TE,ÌÝOLxô¦I~¨å`šú¯‰=ëðY³tå;üÕÖøËGÑKE$þ¹t2 ­«,Œ¤™ù„qŒX¸ëÊNÕ_ñOOtòØhÎÐZ))%âåf¸Ã‰¢‹=aÜt*MdNI$±brK’ÄûDœdäw’Nzç©ëi½š\“’ÐEˆÅ‡{‘ǧ#È®V£Ú!¥Ì„F ÈÅðk¿ùy§ú—¤]nì²YtèH vj%Ÿ©2Ê¥U±Ð¢+¶FC®µMJô“w}uqž¢I¤eþ'7/Õ^ WV8!ˆÈ˜+ƒ@»§Sdñø’¹oži ¾G‰€ÂR”©~§AÒ«§QYî~gËö ^¨/¯mH6×w0cv3ËÛ¦ÊÀq¯-(@<´P8‚<ºßÏ$áÁ#Ð¥¶|qĶ| _›”t»'À³Ò}•ôE”5µ¼òíe‚$ ²‡tVpI18É'©;Ÿ“e”x°3ŠúÖÔ·„xE ù "«>=ÕÄö¤qÆ!,¬.s··[FkŸ½‡ ³ìÙ$”J÷8Ú¼ÖIäú|¸P~*ǯGƒÒÝ;ü^R~±õTdþ¡õR>(9ÔS»ÿ ÖÎ]G;¼}^Yþó1ÿž±ÃZ%´·â:ùº?KŠËŽâwðéûÖ5Ø»©Âhªõùó¯ÙF­ cM´ûÞþl±>âNG¿Î¶•¯Ó,¬Ç…¥¿ü$­…zØ…EíÉ¡u™÷þþA)JT‹d¥)DJR”D¥)DP.+‹pK¾¾YBNñö—>ñÓjŠ“œy }gõU‘ÄfîÍŠ®d·&Tñ+ŒH£¸žSÍN*·Æ2wÙó8õWœö„eš—8vJp5‹cžr>#Ésµ Û!=œ÷긬•¹sç–ù¬iT” Çá¹Ö]98x]ãaŸÎ=¢œxa€8>Hj¬ÒuÓî9÷1H¼“ 8æPv`:s è:°{ì«yãš4–'ƒ*ÀŒcõзÏxÅz KY`>0æ÷hÀ#áÏ9]$`ÄÑUÅ×åÀò^šR•}N”¥(‰X¶6¼Ÿ–ýu•p@8ÏÃï÷éX<~üDx¦<Ãk0ú1ÈèÇ~Ž .}åzwü*F iêvž·g4eϵÛ÷Äådß»8Ç^„Õ^ÊD…\`‚A9uSÞ;`àøWÚL-Ÿ}Ù]@ßnüECRÒ»4G5Ú¿u×\Ž¿?³¯Ã­Æ=Ûùñ@pAð®z¬¦Ü/:´ÇÒE” Œ”e*HϲTóm̹Æ@3Ó»áÒª[+¹,nâðwLìèq·ÞÁÜ‚çUìW°¬öí•`9“ò‘° + ßÓËjï{;P×BØIñ nn2;ò¯éŸl <·Œò?;úò[ Wäó÷×5ÒVõAùù„¥)E”¥)DJR”D¬\áù¿Ã­e]ly£lxcy¬">uõú„êßñ7ÿ`´­’O~IÁñéßòùù׃Ÿ üGÕç]QIÏ‘ÑÐÃÜ~–<;ü»À¯AÆøÁÆ{ñ×9WÈo\ÁÆÁ¼ôî9ž:.‘tÀ®€àuãëç_zBþµ*±ËÛàdosx{dãδ~ŽÌmqªBàs=¼§rHY3ŒŒ²·øØÜU£}eo¨ÚÍiuC=Þª›V¼—!\DÀ&AÜäãÝõW‘|ÞÎÓ¸Àé/qhnãš¡œzÿªô­[0h/,e í ³îÿ—n8®¸ÃIº°Õn.KÚ]ÉÚ[ÊâјГÑ$Rã™2T­‹6ÃYŠ-/N=“;½¹Â‰ŽÍTdï°`£ ÆÙâròéåÝÝÊ\DÞÑÎä0$çÄ6ýýùÉ­¦˜üú6”Äî-Ý ÏAƒðQŒ{vµÞÒ—Uì.ª66'C©|w@¦“ò\‚=?¶5g“#eÓ2`wÜH.}âÍçà¤ë7rm¤KüKoü'ïÆûg®ÕâI&ŸM™¥‘ä)$RŽf%A€»ã¯]±¾ûí¶¯ý¬·¶sÚÛ§i<ÉË `¨/&AUˆ\±#r;ëÍèush褒W50ÝšhoˆÐâ@àQóà.î¯MØuq²6‚í<€P·m±“g¦j½o*«Î~þß”®ÙàšÚi ¸ŠH&Œ•x¤FWFüÖd2=A"º«í9žv^G\þkäÅ¥¤‚#E%)JÂÂﵓ±¹‚]ÿ,rx+GÇøÕ§ÔéÓ`Ž`sç¶*¦ü‘ƒá×õã§õ‹BÒA5¥´»‚ðDØò(6øŽíükÇÿJã÷tsUé"'¸;>?x+šS÷›ñü‚ï¥)^=\\‚AÜ×;±Î7òùW9Û®õÎ7 ''Ô’6$ããXä鎶H¯>~iÊ´´‰šm:ÑØàˆÕXçÿÃ-ß̧~+b™9Î{±ŸOꯟnm¬-¡l¨aÝÎIfñÆXŸØ €êáÜ"ŽÁºh8"½Ð 㡾¼åu›÷[þù%)J™l”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ”¥(‰JWLÒ¬(ò9 ˆŒìNÛHßlcžÕ‚@p(Ï_mÅ¢6$¸É¿´±6ê1ÎÛþPÛ`Ô‚6=Ý>ß×^Ûë¶½»šâBy]½…üÔ_eo,’G\îs^"IÆ{³õ×—ÕLgÏÎÐKYÛ`¯Q“ž„óä¹rÈdy8Ú0Úí×§uÇZÍ»**噀Q¾äìožìÖ¨ÅI8vÇ·º7)ìí°Ã§+JFÊ‚[n›ÒÝ,¬Œ¨ã§*ýVÂ÷ާ>C©*g¥Ù­•”0àsà<¤wÊØ-œuå8€­‡(Á;Ÿ¿•b¬ nwêzõ®y×Çê?²½KÖ1¬hÃ@hÁW—z=¾K¨hp%Î1ÝP~)µä’µèñc·Ò\ºã•,<ùG•Mù×Çê?²µZ½¿­Ø\Fç@eŒã'š2\ w“¸õ²?O#Eƒ[ÞæÕæ˺ÒVoa~Y¯*¼’pONã¿…QݽrNØÉ8ñè:ä|ÉÍc^`p;õéž¿çÍr×zHbš9Tá‘’@zœ£>P‘5l[MëÅ2œ¤ˆ®>#$xì~]3š¨IϸtïîýxøwT÷†o;K9-˜ûP6Pí¹$cÉ_#Þ|k§ìÉKd|\xžð¾àUÞ¬àœkLêqgB/œ^1]ù¿?Š”yÀî#öÖU€ c;–ÜO¸¬ë¼8|û«ËAÄšˆÒtMBô$HZ8;‡o3v1:E÷Hßjù|’Ç$–'v'¯1Ü“ïëñÞ®I÷¥,´ë;ÜO-ă;ò[€£ î2Òç»%SÒ—®ÿ³"Û§tdq?ô¶š+ÊÉüz®´¤Ý0eâ1U}H’;žO[JR•Ñ\å¿á$ë:Í¥›`'¹ÁÆ-á!¤ëžHü‹ï_NÄŠ‘¢¢…UPª W`£À6Sz0Óù`Ôu6_jIÎ&#¢Æ³sÞÆ0ÃWÆ­À1·p_ßïáçý£.ùˀ߉Éüëà»þÏ‹dÔ7HCɬíBÿãž«šR•Ï]¥)DJR”D¥)DJʼnqÞwú«*`yt¢Á4 ì¸$ g¾¨þ;âƒypú-Œ¥m l^HXIaÖ󆺙÷ë¿´‰ Ë{xM½® ™¶œ ÏâãÎ6vNì×Îd’I$’z“Ô÷ï]_fiƒÉÔÈ0ÒD@€A ‹uc¯uD.O´5%0Î!¼Žo•þ_;©JWrÈ6×o¬.2Wtó\ȰÛÅ$ó>ËHÒ;ì*|wÆÜž¸Þpç^q ßea¶„«\Ý2·,jz"míJÃ<©Ó#-€¯ t~Ó´HD66èÊ·íO1yµ¹Ü(åAµSÕk£Ó{ x²ó´m m‹÷Ž{à ïŽUÝ6‰úx‘÷9.ª½£Îì¥JXú?âÀH`²ŒŒÿâæ"LoÙÂ’0;þW(ÎÛšÝ/¢ëÒ=½ZÕO‚ÛÊããCüÑWiÈ›'¡?}¼«€zò5È´µ.½¥¬àî®:œúÖ9]6û;NÞ[#ñÉpol×Ìð;*2_F:ªþña)ÆÂNÞŸxŠ\}~ðÑ]ð?ÚÆÀÜ Ïµi,sl:žL¬›wLùd_Hr/‡Öm9Fs¿Ï÷czÙ¾ÓÔ4Û?ÁéÉnsùߢÁönÃÝÞÎ:“Åt??.çäÔµž È ¹†h$7#G,oŽieÐ×~¸Ûnúúº!…T9ÀEÈ> ,|kªâÊÚè(¸·†p„2 bWå`r “º• ®~æ½ €HïÇïÚzüqÝQjõGSá’ݦ0ëÍ‚]·#_•)4Ú_³x”ë-@÷Ï#Ϲ»âSI²~ŒQ( qõ÷äÔz·ÜDßý©r;À„ÿËC÷þªÐ׊ÔÙÔKÿÈûõÝÕA/ûWÿˆ¥d ØãÏ»åßîß5e…Àö°{ö?®¡íêjÔ´žÞ;{u7)[xTæD!cœtw½>µmúL_ÊGUOvÞí³÷ùS'ÄüÍuíG†´xU@¼:;3ÏO5ljh²ê‡5Åtàp|¾e[ÞµmúL_ÊGOZ¶ý&/å#ª‡'ÄüÍ2|OÌÖ­_ý×þCËþ_3òóOµÈzòýÑ*Þ7vÃY„ûåŒ}uÔoí[»q︄}¦ªlçbN>'ê®p¿üÓOëWÿr>.¾Ý«Œü¼ÓígÎÝo·˜óüªuK7¼·ðýõ>¢ƒïX®è/m®‹-¼ÑÈÉ‚Á1ÁÏ\tÎ6>;UHzq×p?UL8M2×­ÐrÀ! øã¾¶hÜö3>ûÚÛí¸gÈZÑîÚÒÿ嫽~xüû­$wK3 Ëv=œäËÀñ?´œÃ}ðwãYÜëaaNPIv<€ñ€ ÷d{Á¨· _Çy¦EaÛYo"“¿*ÁSËžÕ†zVÂü~23¶9>°ãî?UyOh™ô2jbi,s%pËI÷K†Ò1tAÁÏÑè<dzyÐàøÛÁÆà‹²MAEg6§w>A˜¨üØÏ(Ç^¡¹½ùëŠðFÄ_Y±$žÒDÉ$äIo6A'$å•Ož<Í+W«O%­¯­Bq-´Öó.FAå“[É”²žàk™¢tÓë c¤.2?`Üâ@sÛ´N3wC¦{+ڦǒw5kYˆvº˜ZëÀì0 Ç~¦E~?‡ø,3ãí÷÷׆º×V³Ô-"ºŽDB9„É#¨x[ Y\±‚A*ÝëƒãZ›N·$ »v„ÉÎþÑÂãm˜duÞ¥›Ùºé5réãÒM+Úý¦£~ Ü Û@]Ñ¿3…5ú6颙ڈ››m.‘ ‘Ñ t c¯ªË\PúeÎNËÙ¹ÛóeP{¼ÀîÛ¾¸Ð.b—FŠe2[O2:Q#4‘±'nV?Å;u¨åÿµÜ2ÛÇn±Ç*•fg,ä@AÈú[wžøèvPÀ3À+H £¹€`ÈAßö>Ïþjdö4º ag¿TÝDDm“kv´àÉòA‰¼…åµ¾ÜÓÇíXµº_þ¡ŒÓx ǹۉ¤ÝŒ‹õ¥j-õ›\%±»¶I$q‡™B†9;쩾>‘ÏvƦ¶<=2I Ä·1þ-ÒUX`Ü„69ÉPAÛ胷y¯>¿ª§<7Æ×º)ŽÖè½îœ0;7#··]Ë$<ŹFOdä©#)ØÈß膚6FI.¦Vs¾˜ÒFÓm ª ôq7B­?þQ4ÏsÈà‰Âkw)ÅÇâ9¾êåÖxoK×")}oøÐ1Ô@%ÄG¸¬˜`ãÅ2ž„wÕ)¯ðN©¢ž5:…€Ü\B§µ‰zþ>–@=µæM÷*jøÒõk-ZÙnl'ŽxˆÀ$Œ$©œ£Œîž ¶[°`BF1ÔõÎç劻¯Q¥vܹ‚ƒ¢}â«‹85yøäåT›M¥»½ÐãÄ­¬Ý'¾ëä-»¾æ•qiú§iq`N½9bQsm3ÿä. NY_|Òú¶‰©h³˜u v‹,BJx%Ÿj)@!†Ço¦?)FF{jáÔK_ÕŽ qYoq踳ée„ängG7#Ð×ë½jïò?¨â¬mûM2ÔÉGŒ’6>C—åçUÍO¸}¹´Ôë4«ðÊ‘öšâÿIÙ»Ùñ¾þ楘õiù]Wú&”ûäwiüÇ×Én«‘ËÞO¯'~¾îøSïÓÃcÐÖ`3rÆ£™‰À ¹bNÁF2Nã¦zŠð^€Ÿ ?!••€8 ýþº“hZSO0½œb°ÑÆd‘HÜíŽEž£p3]Ú_³•žüLs-¾HwÛ¬˜>Êî U#¡SÞãZ¾O³Ã4Êc‰”vq™±ÜغäWKO¤ðÚu:µÍiä¸dXjÌqm$”äš]þG¯Åmíeí­–a‚Ý—Ü$!šîù“^•bN‡ëþº×i ˦ÙàcšÝâÊÄçÏ-÷;VÅT‚IðÇ×ý_]vãqtlqåÌi? ¼Ómiîù…)JÝe)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JV "°MŸ—×ËÍ yF~ýZˆq-ÿgÙ£{saæë‘àŒ}#Ý¿²¤ìÒk‰R¤šG8Ô¹ñÇ\c»=‰À者òáï.%¹rr핪®HEÛ¦=¶®w´g1Eá´ûÒ`Öf/>~Yýkj$ÚÝ ûÄçÈ ñ漞úS­+‚¨.G^ïO{"½»µNK{™"RK°9Rzç¸o¿†+ÅJË\æ›i-=Á þ l+d5]HÿñÓ{ãõW?…u/Ó¥þSú«YJÛÅ›ûÙ?ïw—ùýqîþcóôý‚ÙþÔ¿N—ùOê®? j'c{>AööÜÝ×çŠÖÒ‚YºË!ò/$týG×½ßÌ~«ö 'Ü“r|r~=~ÚÆ”­©[ ïÕu‹G00¿\{DŸ øßÀžFš²RT« Œ˜#q¿qAø÷Vñ¼Ç#9kø^ [4ís]؃øùá\‰Þ7ØíŸêʵºuкµ·œ³¢‡ë€àaÝо¿e^­Žh{xp±æU¦À=yc…AúK¹2ëÑÀVÖÊ5ǃJòJHë‚A@|B€pj»©wH_Š51ŸÞÚÇ–-ã'qžrˆÆÕ¯W¥nÝ<#ÿ¶ÓóŸ5åõ$ºyIä»ô JW#¨ÏX|¨þ5Ç^T èîµ[~Ó¶ÃL'¹cùÆyœ‚Ôä¿ *cZU^ÒàcO¹?Y­õy)œ],Ž9%î¿™^®1ÆÆ×¡”¥F¥JR”D¥)DJR”D® l3÷ß>W5俹[;+«§ú6öóNÛgh¢g9þ/ÄàV@ÜCyÜ@ùšòZ¸ÓI&«6|³ú* õS¨ëÒÀ­›}9M¬j7^Ðó¾ÇÅð¤Žäç®Ùæ{‰¦žC™&šY\ø´ŽÎOĜ翮õÕ^²(ÛQÆÞÐ?ñiºõ¼õ^Vg™%{Ül—•Ðü½¶³^ÜÁin¥æ¸‘"EÇåH@üQ’ÌÇ^z²½i‚çU¸Ô]C-ŒJ‘çp&¹AĬ1ɱèX¸Æ³Ê!‰òuklîàzem§‹Æ™‘ð …úX¿Á[º&‘k¢iðXÀâÆeŒ4Ó6òJÇc–nŸš (é[ŒmÐm\P¾•å\\ç9Î$—M÷? ì½CZÐÖŠ> JR°¶JR”D®³ô›Ü1ïöqõÖg`O€5ƒ÷|Uúwýi¯œê·^ô!–1ZjÙë':甸ù*ŠÖW”œÜÒžò8þ%r¤ÿhóÝÎ?2JR•ßožxaÏ/k$qçÝ™W¦ÛïŸ}D$É |Í-3€’@¯SK¢•5)ÿãòC~¼›u=w¬¿r‘~šý3ý®½57á5Äwÿ¹õÎá2~YÅaû“Ld]¹ò1(ïÎä°ú½ÙÅot­0i‘Ë”ËÚ8bJãpª¾>_<Õ­Žx§kÞÀÖ´îiäWåÜ)`‰í8BÁÈÁ®Ü­­)Jí+©JRˆEòº%‰eWIQd Œn;Æ<Çí¨­¡=¯4ö¼òÛîYz¼#®BÈ;Žäc;5X•ÖÀœ€ ŒäuëóøxÕmFš=CiÀºðæùyƒÔ(¤ŒH)Üô>Xçñâ¯ò§L“¾wÜç¼t#â>]+ŠœêÚOÏqdK‚Í0Žz’œ¿Eü¾‰ð^øS+Æä2²²’l‚x9ïë·vF3ççÓɧv׌ºá÷Oyç…BHÝ÷†¡Àýÿ×]ˆÏYв0*Áа þIc⮺é“Ó;xT‡\c…5§:F¼³ò[^“åÀ 7_¤s³à`g±¶*V(ñðýy>>XØcsÖ©Å8 çðþ®‡¼ã}Mô-dËËgtàÉ€°JØËò‚y?”Ù·æñ,vtZâKa˜Ùá’Ï{žù¿UvýÇóМߑóóS WçØã8ߦq\×X] æ³ê­¥)JÊ.¹A¤`ƒ‚r0AØŒõæ¡z¿ãšæÁr &K|Œ¨Ü–‹Ägªõq¾'¨Í`À8{‡A4ÎÂ×yÚà2Óß÷âü–² pô=B§ pr7Ür=ãË}«‚$ŸÕV©¡Å}Í4bºÆza%ñ ÙŽ6q¸ÎNFH‚MÖò42¡G\‚îd~rø6àýUçui4ï!âØ~ëÀ°G˜Gô\é"tg#@÷]ùéÝãYàÔž£È9îÁØ×ÌwW]s“âj½dygÌU(þcÌ`©n“¯”ä¶¾rS`“¶ì½À9ü¥î ±éœâ¦èÁ”A#qŽíú…Sc®ÿ^ÿ?×RYh-.ö„‰ÏXœ“…$ïÈÄœû>êëèµÅ¥°Ìm§ y9o`ây|…n ê˜þ8š¾Š}JÁ[˜|·î ô ôßþÞY×h+©JRˆ•®ÔíÖòÂöÙ·K›Iá8ßfFo÷é[ëp0ñý_Ô)‘–š#^‡àV®®$8üð¾\·¸¼ÐuS+$.RXÉÄsÀNêÄnªs•aºÔõµý6òÖŽÝ!a̲Å)Ä‘¶3Œ–R~‹¨!¶‡è°Ü]\BØŠhå~ÆP:#è®ÈC)ñ85[ÝÙ\ØÉÙÏ\su†OÑa±Ï‡_+c³ÿ¤1¶9äv›]G)nÖ¾M¦­»…=¦¯sxÍZæé}¡«öSœØÀ–+q ’ö´ãÞ{Ñ¢>%L.8šÎ<‹xä†}¢;4Ïv {Dxá}ÙÞ£·ºåÝìo ,QÂø c†È%Ü–$Ô`x b´äc¼½7éÖ¸®¦‹ú=ì cãƒÆ•´D³¹Îs\*œ5 Š<4rTz¿nûKVÇÍáÆðAŠ&†4‚(ƒY60l®I>c;ž ŠaàCؼöOUuå`‚‘j:µ¾ž¥sÚ\`•…OOá9Ù\gÌì\Šþ{‰¯'2ÌÅä”±ÙA8TQe@Û”ëÎÌÒ;3³31,Y1cæIÜù׿I€ÝjÑY{@ïß”Û üF>8ò®|º™5r±•L.Yg‹oÞîkËyªÏÌæ·†îmØÍ|~‚³íc1[ÁØÇ!÷ªú«¾¸:`b¹¯FÑ@À¥Ñy$¥)YYJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJÃpÌ{¶ñ8__ë¬ëÉwr–O;ý±ól;ü÷u¬9Á ¸àdùV  Oaj/Ä÷ø cÇ6$ŸH)=Fã˜ôØŒ,Ÿ ùç¿ßîéð®û™^æin’ÎìÄw ¶Àw` ñëšó×–ÔMãÊçÿ ›ÓçÍò¹r?{˾Ð%r>ìã? ý”ÁëƒW·N³7×qÛŽl1ær3ìÆ§,zc8ÙsâqQ5¥Îk,¸†€<Í|‡'ÉjSK©lîC%´ì¬2¬±9ð@ÁϨÞ~‹qüŒŸÑ«b4TUEP5 8Q€“4n {É\âk£8'm÷ëî÷ýúU·u Ý[Í_fXÝ3Ž„ŽÞª‰"hex˜{q³ÆÃøK•>íÁ#;â¨êô§LYN/k…îØêyôõP͇´Þ:âŽ,|ÉuVKù]þÉÛå¿ß±¬—£Ž„uÞª(TÇ…î¿~´b2oÏ\a\líÇj‰ÔÿÒ5¹ƒˆž\·vvó)îb¤-Ÿ0P~;úÀ+ÝéMéá=ãoÌ‘ ÏjEO(<ï9ã¬zuê”øgÙÆ|³JUȾ éj…¯¦8:áfá­%³žKc áÀïƒÞ0ËŽÿ”UOèÏSÙ]é,ôµ”ÝB§©†| q¸ÙdRÇÁ“'é µÁÎ>^WTâF‘üv=Aÿ.ß%éôòxÂàNE;È€1~}»¾ÜÒ”¨”¥)DJR”D¥)DJ‰ñÅÁ¶áMÃKvàç¿È¨ÃÏ(Xb¥•_úJr¼9˾$¾¶Sþ¯;ŒüT}õ6™»µ·¼ŒÿØŠI¨%=˜WÏô¥+Õ›9=?¢•J¾}Zˆ´).1½Õü¯ÍùaŽ8‚õÜG ìAb0zÕ _Dú>#÷3f¾Ýäg¿·=GŽ+íG¦hÅ+A¡ÐLŸ+]f€uk qÜÐÇš›Ò”¯>½R”¢%)J"GˆÅu¸ÉQã·Ù]„àà3X1Éóá÷ÅcëÏ‘øskS÷›ø|þŠªÕO6£xÙÎg“êb1ðÅkë×|Ü×w-ã<ßT®?Uy+ÉÈnGžïwæW)ÜŸR•ïÓmFÌüL~Œ¨O̶¼³ÑÆu+AÿºÿW-ú¾ªÌBåˆïÿ°Ygßoø›ù…i)Ü sðu¯Ò'ø#ëöWez±Àô§íõeuvŽßXý¾¬¥)JW¯Ìýtüû•­ì>¿ÓóîR”¥+׿~º~}ÊmoaõþŸŸr± ÷}Ÿ«ã½0êsóûýü«*P î}Vhv$¥)YYJR”D¬TœœäýÏÆ²¥‹\ßÜ|1Ò´¶ú4ˆ.ÔWÙ“m‘ñÔãIÀÈ©p@9î'ûº|«I#d¬,{Cšzvô# Ž„RÕÌk›µÂÅVN~|ªvH^ZT¤ˆÅ]HÜöç¸ôÆë=N;ûv"þ•G6‘ã¹àÿâí¸?â>½á:CÈxô?Ü_Çת¬)V+hzkdú¯(Æ}‰vø±ýUÐxL;ˆærÇX?ª­·úOìã÷£Ôú{sµÄ×<_ê£û4Ûóúóú8€Ò§¿¹í3ó'þ[ÿé]« iÐHÃ=ó7–Äxy|k'úMìîŒÔ0oæpóøã¦_f“»~^GèûýÎ)VBèútgkHÉÇår>lF~Þ¤t¯TvÖÑã³¶?ĉ|ùIý½õ]ÿÒ­0±–gšÆç±ƒ¦q¼Õùc a¥wW4wòýþU¤v·3"‚g'§,lGÏúêaÃÍÄz5À’×Àä­®¤^ÆQߘÁ,®ÙÔ+ƒ±Ûj‘ Œ`xg÷kœí¾ÙÉîLJ†1ã¿…sµÒLÍ1³O§cân{ºQþ`ç‹ã*x 1¼8=Á€-¡Û¿Ê¿lÛMëÐÎWÉrù‹…,*ª8 @8^]Cs1O$q´FHÏ&Ir£,$:gåR›5)gn„­¼@“ŸÍ\Œ<õÞ üK }D¨#ñqFžày›Èsò=â ×Há¤ÜZç˜òÛz‹† _ó€ºÓ’!·-€xÍ×~½Í¨ùbÄ–$’rI$Ÿ™Ïדç@Ø9ç×õ ÆÝ+W­õ<ùú÷T(v\çrsŽñÔïïóñ© Ú•^²õÌ’<Ã; íÔ(|à‰ÛÂ÷¤1‚^CÈ  îÛd÷X“°“V­•ªZÁº}•Aþãv; ËdœýuÑöl%òø¤{‘`mç|J±¦fçî<7ñ’öƒÜ+šR»ãÕt9JR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJáŽ5Í:ÑZ¶I'Ã>X÷¨Oßö’-Œm•Œ‰' õ‘†N6öAæ#>G|Ôªþå,m¦¸oÈ\"“ŽiÑPpNý–{ª²i^YG%™Ø»s–mÉ?³»¥r½¥>Øüš|”\G!¢±ƒ×z*º‰6€ÖŸ½é@Wëæ?%‰Ù@ã'ï÷éó”®"¢²ÉÇ/wÄútó9©ßYmšéÁç¸?‹lB§b229úž¹÷TBÊÔÞ^Cn €Í† g•wf=üºÕ§ jˆ±…QU €UðéÝ]?fA¹î™ÔàÓ±—_{â€ÀÏÀŠÞ™€’óÓ׿æ»B€r ïøçÝYR•Ýúúù«‚óuÎ=”¥R”¥bÃ=øÇ_wÜ ®øŠ×Õ¯û`=‹…í2:ËŒã;7¸øÕÖ£\EmÛéæP2öî ³Èp¯‚w70Çzô=ÔµÑxšwõ,!íø×Ç•íß¹¶@ÆN ¯)\œmêÜ×ç9rsÝŸ¿Æ¬½ð\éñ9’ØÉ“¹ä8Sãí')ó ÷b«Aöí÷øÔ—†®»+©-Xán(NÖ!“ÈNýü¸Uݾ¡ šl€´ÙÅò?*õ¥>坮ޠsÖÇN8äòµž“´ã-–¤ƒ&ÎV‚fíÁ2ÄgeE8“¿'4§Úð?gË5õn£a§cue8ÌW¼lHú,}¥p;Ù+â¾_Ô,n4ÛÛ‹¥+5´ðeòºòޏeò"¾ì¹wÂ`?z,´wi«¬ÞOOó§í(vÉ⇊up(gÌÑx©JWMsÛDÕ§Ñu{èI=›*gX,MÓé&yN}–ôÖ›¨[jv°ÞZ8’ 2¹íÍŒ’®‡Ùe;ƒŽêù>¤ü;Åü;qÍf³v±g#ŸÆDwåw0$ÀŒš¡®Ñ@´uÆñü·åÓ§\tèhµ~1ÉþÉįºëôïÛ<¯¦iQ݉ô­r56· ³ãñ–’‘ÄmŒQˆç¹âíº @œ‘·\gïœ}uçÞ×Fâ×´µÀÕ8V|¯Ÿ‡Ã‘}ÖHÇ€æ89§¨Ï=ë…Í+æÏµÓ]~•k~¿#û,îE¿ºR±'ÁÀù;ج¬î#ååæT¬IØ‘îý]û~ªÕÞk:nž ½Ô-­Èü™$@ýß2ç¨À N}ã9h.4Ð\{O+ÍÉ]d.œõkmUÿ¤¤-á†qõ³ ù×"[y©äR,±Ç*d‘ѰW*À8;Œ‚õã+C{Ãz¤H H˜Ôc%­ˆ˜üQEM§vÍD.8©:*9Æø$6ÂEuë…ó1ûâ•Ï~ùý~UÅzŸÁyT«ÇÑ•òË¥ÜØ–­¥Û:¦ÜÆ …V \v«('»m÷GVÿ†õÙt J;Ä ð°ìnbRGi N6#RÛwwí[YšÑï€ß7 Öx$cýU$Þ ìq>é÷{5Çô9_PÒµö•¶¥måœÉ=¼£*ÊwSÞ¬6*êpX§cÔ÷ƒ‘‘ß^`ÛIA¢(Ø=ˆ^”86°A~$ŒÿŸeÍ+ƒÓ®<ÿï\nz8?X¿_‘ý–AŸúÝeJÄÎäc¿ïŠÅ¤ª†PÇ$)+’R2{¼¼wÆÕŸÇ®3çëò´±ÔÇ&¹õõY·Cî?eu·D÷~¡Y!Fw,ßë×3r#0葳|?`¬@žÀþIçÐ~cöUÎY~T’6ÿÂvoãã]UÉ9$øšâ¼‹²O©ü× ›$ŽGÅ+q¡/6«eäÎwïÂ?ô‡Ê´õ½ááRܞ厰ûHǺ¥Ó‹žÿÜaíÃçÝoûF¿˜ú¥d¯¹ÝÕYWW1òû÷cå߸ço¨~Êõ#€,q\ú~xù…Õ]Ô®žvñú‡ì§;xýCöRÇqõþ£æ‹º•Ô³ãåØ+.cù‡ëý•”YÒºûO/¯ú©ÎO@™#õàV ’1ÎF>~¨»)]K a‘¸¤ü<kµ[ùlm}f%F+2+«ç›{=GCÌW|bµ{ÛKÝ÷Z $f€ëþ‹RàÐ\p<|ù[jTnÓ‰,çÂÊÍo'CÎ3|¤ŒgaÌ?]o#$ã‘%CÑ‘•‡@z©#ëÞµŽh¥Ç#]}ˆ¼×NzüñÊ5íÝ þcÔ/E+älJù‘Ýö}uÆÿž>CöÔ—ëò?²ÙgCÐã±X®±Ðuè{·éƒÐÖQy¯Bµ¤ý ¾¯)lãäêz{ýøª÷yë?Y? œkú¼b±…ƒË&VgR1äeNK1Ø€vçÊzç}÷ßÏ®<³Óʼÿ´dcäcZA1‡5Ä“u~_Dª—µÎhiºÈã5ÕqJR¹ê²Úèäþ³cñÃâ ?1óÛ-¼ªÐN‡ßú…W;m©FÇè¯#˜Ø"ž½ ~Þ<½žKk‹ˆB³ÃI†Ï)å9ÆøÇ‡í®ç³=Í=ãmºã§•v½”É]и{,×–yëÑ[Ó4–¼Ž¦³|Š=—#§Å¾Ó\Óïó¥uFô êR”¬¢Áóìã®sò¨/é¦9ôKø¹N'} 1…sà÷sc8T÷þ®º&‚)£’9W$VVRØõÆÝ|uWÔÀÝDNaóPáÅzð£’1#KN ùþ8î©ücï÷÷׳Õ4Ù4éÊ´-“ ˜Ø¨;+`‘ιã8ÀÍk+̽®c‹sM?0z‚¹Ž¤´Š#”¥)Z¬%)J"R”¢%)J"W®ÆÜÜÝÁ·"†áA»¿4úë˶:ïŸ? –pÍ¡y¥¼qìÄ q’:Èê þ*áz~V{êm[`×CÚ’ Šoh/?€ÈõôVuNË[êOáõóXW g§]ü1ÕñÚ¹Û$·p'ÿ®Oß®+{¢é&úQ4¡’Ö6Rr?} ƒÈ7Ï(À,GQß¿2(ß3ÄlâG<bÉ®ª«^í­n—ô•¸á½7‘}~eÃH [«g*Õð@úGuöz÷˜]Îç¿nï…uÆ …P@Ø6ÀÀ ±Óå]µéà‰°Æ#nvò™Ô,Ÿ?ÙtØÀƆ­ú%)J™n”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ•‹ŽøÏž;ÍrNOujuKáci,Ùük‚¯\»t8ï=£×e#ŠÑïµïqZ =ñ_™¿®0\ 8“õë^ª)Äwý½ÀµFÌvû¶0y§ïßÁýá±å=Oßí¬‹31s–bK1;’IÉcæI$øgcÒ±$Hï¯-,®šWHë·WØ`qõä¹Oq{˺o®Ÿæ¸¥rH'èµ·k›ˆ­Ós$s‚p¹ö˜õdýU Ä5¢Ëˆzšúý–²äð¥ü3gÙÃ%ëîÒþ*#ž‘‚y˜m¸vïðßRð0ðç†Ý`Š(a#EQîQ€1Ü|}çm±^šôúxÄ1G« Üãÿ1äþcàºq´±¬oaGâ.Ï¡ÇT¥)V‰JRˆ”¥(‰]2IJG$l2’)FDzAsâ ù×upzq¬`ƒÁçŽ*« á(vUÄM ÒÂÀóC#£x§ùçväúè8îÏÆ¤|Kla¾í—è\ ldöo`žá¿uFëÊMƒ,‘ÕãCËøkޕӕÊm{›U_°\ÛóÆß]vÁ3C·›åt #ÔBîÞ{[ºðŒ/‘J²–VR¬„«)2•؆Sºv ƒµqWßpT×=íK]KŸ#]‘Ñe$Îq*ƒ×Ûb©í>÷M­¯­å¶™Iöd\ Må^¿ì¦ßàpvßÿßôŽÕQR«”›ð€ôs€ù]+]©ý§M¾œšÏòáZ’zQº9ì´«eëƒ%Ä®†B¢ßù^©¸ôÄ3"õ^ -ÙØ㛉%Þ$ ß5¥eº-+x…¿?™?\-N³Tîf‡ä:­Ýßk·Ù:¥ã)È*’öQqV"€ûˆÅuè¶mªku™æoX»Œ99cÙ©í%c’ßÞÕÉßüœê>®ÿ•Xþl{}bêù†VÂß•|V[¢QwéžÉ%÷wŒàVólƒO+ÚÆ³kik@÷ùýpPÏDÕ®š}û¿^Δ«J¢ÚiºÆ¥£ÊeÓ,rèh¤ßò¢e(Ãüa‘±“SÛOJñª­æŸm9ðI-¹=rJ*ä÷àž‹…]J†]<fHÚãüÙô°EüTñêfˆS@DK¾Êã>”­Êï¤Î[Îé9~}–zùW†J$VÒàCÜgžI0|Ñ0GúãÝUU* ÒþÈsyÜüÔ§_ª?ñ+Ð ñååÓÍL¯xó‰/*ÝGfŒpÎ%Œ€vúrv²“àyÇSŠ—ú6†êòãRÕîæšâED³ŽIäy"igf;rDŽ€Õ˜µ‘±†B( "ì›æð§Ð™gÔ=îsX 7Ç@0(g ¥¸%pFéŒwtòòý•å¿`¶—MÞ¶òüÊ6ÚsÝã^ÚÔk˧^¶qø¢£Ì±å^žÿ¯Â¼ä®Û‡³O'¥ üqÜ.ÓÍ5ÇÈãןõUu)Jòƒ€¹I]ÑÊð°’99ehÉS‚wHùŒ×M(0l`Žçæ€Ñ±ÈÈ^ÿÂWߦ\|ÒýX?i4ü%}údÿËMý*ðR·ñ$þñÿ÷;÷[owó;çûz’÷þ¾ý2å¦þ•? _~™?òÓJ¼§‰'÷ÿ¹ßºÆç3¾gë ù/áïÓ'þZoÛ\~½;¹ü}—¯wå=õá¥{WSHï»;±Ïå3}ä±úZ묀È'À}u©sˆ­Îâ¾ñýÓsñ™ýü•‹Ã€6"s†–C““ùG}þ'm‡Zí×S›L»Û%Ln=áÁ¦„1¥Zã½db=ò2øu9=ý+Õ«'>yŒï¹ò…¿Uz6‚tmiþ(9É?pd2n¸]*ËGâþõÇ’ª¶ÎÛw~£ïݸî®èç–ÍÒFØØÆî‡=Ùå `xgñé]$cç#>ï*â¼Ø°lpHÎ; ¹‚ÇLRÝCĤ;vâA¶D¨­œx‘ÊßÎíN(»Û‚Ù¼À•3ðçp?®£©ÛªÔ4Sfx®ÿ;R d8ýWíù©CqMÑK{u8êÆF¯p#õãì×\ëw÷*ÊóVؤC³\x1ÏS¸ßËjÔRŽÔÎñN•äz×nÕÙ,ŽÁy¯Zúÿ^ë"A',sœü³òú÷î¬~?ÕåJToëÏæ£\“¾49Ü }û³ñ ?³¿‰ò'ÑtGÒêéymÔ†D`A•Øã©Lõ‡–jX¡|ÏkÒI4O@1dž”3žx[1Ž{ƒZ?Én¸vÀÛÚ¤^Y®Jú¬CèìÇ1wùmï£-itCÛʹéùþ¯1^Рc`01ÓïášÂe!ü¥aó§ýêô¬ˆE‰½[t=âFIÇ$ýÒ o 9æñò?—EOõÜào¹ÆsÛNµ’HÑžhådaЩu#»b§=6ðÇZáÆ—öÛ#ýb> +0Hð8¯*-¦Á6ÒEƒDqÅWaæ¹|ß‘òóùt[xµÝJpd •DŸ6 7»9îN(½<6ÒÎU'ßíŸ~Ãú£4©›©Ô7 ™ãÔßÔ‚zwý+vË#pêó7õÛ9óR£Å7$[[©î%¥aïÀÇ׊ðO¯ê7¯j!S·,*Wîy‹3šÒR²íV¡À‡LòK¯È²f‘ܼü1|s^—ëå…‘bç,z’I%™ŽORH$“ï8Åqœ¶zýü+Š È5^¾f¬õ5ÜýuQ®Jq±'À×8 /ì4*À9;íîûôë[­#H—Pu–@Éj„r2O°„àçÏ ÜuÅIo•áŒâkÓ×°[5®qÏ=¾­n8bį5ôŠ0ì¡î$~[øî}œô854®ˆbXÑ,q¨DP6 £ì úŸï¯M§ˆAcÚ2|úü¸ø.œl´4®}JR”©ÖéJRˆ”¥(‹ÇwgÜ-«Ín?9nIèAÜü:šãSÒ®4éH`^oÅʲs¸VÆÊýÅvé•ÈÅZuÑ4)*:J«$n0Èã ƒ¶>¾ì|j¦«HÍH»Û áõÓ³‡Qۨ! ìáÁýÕ?ûo¿ŸL}uÅKõuç–Àó©Œ »)þbC&Üì*,é$c‘6I$¬;²É#Ìgì®ÐK©Fh8Z}~G!P|oŒÓ‡Äp~?ºé¥rw$ø“\T+D¥)DJR€°ëD]ÐDóJƼÏ+AŒ‚Äíä02rv$œU¥gh–V°Û®Ås ÎîÇ¡=:à ëEÃúI·Qy:<‹ˆÑÌH{ÈÛ ã®FUvÎI¯fµ©­ŒMm›™A Иס‘ïü”ño*íé"X¨›ÝsšZÞ@à›w—CÔÞ…‚&h‘Áè:cÇü”oˆïýfè[£¾A#pÒœÁþ9~Æ=Ç~Ù9ùž½ÝÙèMvG׉IôU,sž§Ìž§8ë’*_¦pàB³_âF·\•ÿ} á±…ÈØ`îO9±Í­™ïkM9Ä—8Ö· $Ù¡Àô4U`×Ìò@Á<ôŠÇéEªÒti/f˜4vªzŸeåÁªwßãÇcV P$Q¬Q Ž4U\cl`w÷ñ=:ÖKP 6ÀJí®æ›JÍ;i¹yûϪ$ùÃê•èãlb†Iw\×X¼þ\qÓ ·Ï—…sJUáJ”¥+(”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ”¥(‰JRˆ±`Á8¨.»ýíÑH­gh-ù–3ÈÄ3~[Œã”} ‘Í:eæÆøÅq˸9;tÖ* DϲµºŽ“cªÄ`¿µ†æ?ÉçEí#=͘weNätÈ;?ua‡ñ€« ¹¤¸´Œ‚ è¶sw  [›k¸7WŽþj Õ½œ´š=Ør-nó‘䓨,G€t8ÁöÎø€ßp¾½§gÖtÛ‚ ãµ€ ˆMÃCÎ~aN:Ž> Àð¬yOŽÞžûýñÐUè½¥¨f(—`ž/î×NlóŸJ{:å·=,Œz¯uò+)*ÊU†ÅXAð àŠâ¾³¸Ó¬®¶¹´µ¸n&‚9ß GŽAÖ¢NáéNdÒ,‰ïeŒ©Ç‡²Wo!°ÕÁíf7DðzÓ;×o?.ª}•'IY]-¤—Åü?K_1àžƒ4Áð¯¤ÏpÎäipŒïôæ>;I¶|7ÇÙÚ¼ËÓI´8Øs‡}·üç?-ýõ¿õ¬†MóhÎ<ñøñä/_깿ƒçû/™òµ´†ÖÁ#Â(•É@ö­íf /¾îxéUÀµ»}”ÿâ•£ÐÐw®·éŽWË–ú³wŽÃL½6Àú¼ª§ýfU#¡Î;úUßÀº%ΤÊ/¡0^]\4®ŒUœF Gb¥»ƒ¾ l\žýç\¾Ç|ýXû“ÔŸ¾ÕKQ¯“PÏ ±­e‚h’MUg¶n¸4,ÛÜç M]vó?—B}ñûMe\Šæ¨«ë‚ÃÇu×xWLâÍÄ]Ú©ÞÀª³à g<ŒvüžS½J«ÍÈdž>ÿi­˜÷ÆàøÜXàA¶óÈÁ®Aª7ú-ÆÈÒ×48‡ý ùßUàwOgkx—Q·S´–Ùí@Æ}¸s‚9å.»lw¨lÐOnæ9á’ªJõ\õW×Dð9éóÏ¿¾º&µ·¸CðA:g!f‰%_“† +¥µd$Œ?¡s}ÒxÉ»4$UΓّ¸Üo,¾‡#åV>%ò=+êxcB›&M'ObNø·DøeŸÙÜ|zGpèé£XŶß_ÛµXÕû§üKOù_Õ¨?ª¤þõŸöŸÝ|ÉY¤o#F=³pPIùWÔ1ðî‹;='N\tÍ´mõ:°[(­!y!Š(Wf(Ñ'ÁUT|qX>ÖgðÂëî^lt¥s|æ»e¾ÊwñJÐ?åi'§‘ø×uónºæ¡$*ºmÔp»Æicª#0ælÈ«–ÀëÒ¾–‚%‚4Š5 h‘¢¨ÀUE¨ÁFÃ¬Õ œç=Ý:þÍë:æêµOÕÀË ÛÍ€3é]—CM¥f˜;i..Iیㄭ&º’ɧÏ´#Â9PÀV-·vÇ'h­ÝcÊ7óÏÃ?×T¤`{Ó~óKlsïc®> ˆàZnˆéõú*¤éz‡èsô|+ÁzèsÿÕ®ãâ ýuÎþ#äms¿ª¢I\òõùyªÃJÁBÝBºúyzüþU?à½Gô9ÿˆiø/Qýâ¶7ñ#ûi¿ˆùÛOê¸ÿžOü<¼¼ÏËÍ>ÊÎîé×ÒúzüþU?à½Gô9ÿˆiø/Qýâ¶7ñ#ûi¿ˆùÛOê¸ÿžOü<¼¼ÏËÍ>ÊÎîé×ÒúzüþU?à½Gô9ÿˆiø/Qýâ¶7ñ#ûi¿ˆùÛOê¸ÿžOü<¼¼ÏËÍ>ÊÎîé×ÒúzüþU?à½Gô9ÿˆiø/Qýâ¶7ñ#ûi¿ˆùÛOê¸ÿžOü<¼¼ÏËÍ>ÊÎîé×ÒúzüþU?à½Gô9ÿˆk!¦j#8³Ÿ¦{'8?g\÷U­¿ˆùÛ\`œdŒxccïßåOê¸ºÉ ÿ·Ë°ó9ò´û++“uß®;çÇ–³J…¡°³‰Ô£ª{JÃe‹`ŒuëñÎk×­OÁȵƒ'¯±²²].ÉNE­¾|ãÃÄ Óú¦Oï[ÿ——Ÿ¯ËªÇÙ_ÑÍüyùzªµT¹#g=0ªIÏvî~ßî­¥¶‰¨Ü‘ËE{Í„ð ,}á|FvÚÈH1„HÐx"(ù:ž•Úƒ¿¿õxTñû)‚¼Iêå­ Õrs^‚¾4·n”_¼âF8ÇP~]9Q½?‡­mŠÉ972ŒRª"R:¿”AƉßpÁ©"€2`Ž€÷× Ðb¹®ŒQGÛSY8'“xý•†1¬ÐçÀë׎R±q°î߯€ÁûzyÖUÁÜâ KÊßÓËåþœ(%Ï ÝKyaugv K#€X°† ã8Ïεhºœ8浑†2JrÈżóµZ ¤véŠço×>Ÿ<×9þÍîs{ Î ‹<š#Ë¿u]Úv8õœW———â~óÃ,d‰"‘êOxï?X\l=Äý½U\F0vÀ`GF¿~Þw±´qíZÛ–ñ1!>{•ÈÏ—Ï­Vw²Ž &/s3Òî‘ý”GHz?æ?eR`ø‘®AP= sßû:ûÕ§ø&Äÿð–ÿÇØ+•Òl$ZÛ‚NùŒ0þwßßZUKÒVüwÝ/×åæ°4®êæü/õª«œ*“€Ç1ÏñÛ¦ýõ²·Òµ¯ÞíÝAü¹qƒÞä|ÕI«2;XcúÅè;8Õ6ëÜ7ãzíä'ß®¦g²š/•Ǹk@8'=ÖíÒâq>CáÔü~j)cÃlj.ß¶`3Ù&Ñ0}¢=·éôO*ôÈß)Ž4D¨W ª£•@9@ÝuvcÙÛϯÛ\(#99Ïßï0G¨Ø;œ¸à ü¼½†FÖ h¡ÃÏ•ØR”©ÖéJRˆ”¥(‰JRˆ”À=FiJ"ãÀ |1¿í¯Õ•¥Ðåž(ßm˜ ½pUÇ´»m±îWººÊd÷ý^«˜×XpÜCDN£áû, ç›õ°¢\,§Û´˜®sø¹T°ß¦q¿z‘×;ú¥75±‘FpÑùÇ~Úð8e}YøïÄ 8Æß_ëªR{;Nú-ŒÿÊqñòÇÁ@tÑ»¡iÿ”ã¿=8ü>ðËÄ‘ºàîJý ã½c”ð?\ °Ãa‡xeÈ? ü>uÐÚ}‹ZÒÜ‘ÐöI‘üÚ¨ïe:ýÙ›]74ßàsò /²pûätǯŸÍUPÁ-ÃòAHÇ¢ª³0ïîÒ¦ZO¬ ·¡^@9’í"ùLI*Ìp øž²t·HX’8׸"ª’¨®à§''¨;ì~ubgGÞóâ;êMý+4ía²KŽ+¸^|‹Yqqs†Kvš^P;IŽÏV,Ä3òŽŠŠp@É’>’âV¸ÔnZY†d‹>9»…_£Êª06RÂ\TƒŸ™ÿ·ÕL6ÇÄuøæ­É§d®B^Öä3†^3´sÅd‘_Æmöê6à~¿æ|¶–vö‹É éöØçng9fêzšõà œuÿ¿ÛA;HòÇßö×50hh 8P[€ªvWÈ%)JÊÍÀ¤¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”E âM~ÓÅì°›–y£†+u”DÒ3d±ç)&"³#dò®ÜÙ^ãx8Žö[Rk)RݧŒµÊÎ&讀b!”8qô²¡Ž-C½!ÝI©ëšn…lrbä £pn¯Ur?öâ Fùïå^RÝx?ŒtëˆK&KGØ`Y­Úž^¬ ¼¤ d²øäõ"ÒÄèÓö‰c’XÎã€ÒÝ­ h—c×À®dº©›;‹Hû¢ð±µ{U‹²ˆD•g/Í‚y²c\g¦þ5A°½Ð¾a[#!®³›qh+9pê¯:f6Xá7ºF¹Í ´ÐI³~X Tþ•WjÜY«Ùñ”$/±’ûI• V—³¼¦`$È žÙùN2¹é]¼kÅ×úUäF”#ŽæDŽI®%Ub½³rÅbLD¹Ág‘òÀÂáJ4“9Ñ4m¹cñw`2·Ç#‹Ê‰Ú¸šÙ\w ž… sî©¢óךáY•ç»»·±¶šîîU‚Þç–Wú*¹tÉ$±  YˆP UIsyéF6÷šŒS¸Q0Ár ‘ÏÉ ·†)¦ÇœgkÆwºÕç [\[Ù5µ­ÌÚÜ74š×–kaªÊñÌCN(Ü´|¬ÁTƒ[ !ñ!i–'2WìÞǃU’)ÀÄXh¬º‡QzXÙ)JׯÍÛÃgŠ>é ´ ¨Øm¸Õ)–…¯Zq7WI*ÁmtÖªò€¦b±E/h¨ *§µö¶É8Ê£½ÉÄŠQ4è"}µ%ü%3a$mÙB%$™'8„FGeîN lîÖ8ïXÓ5íJÅ í­äš h»$í !fpK8I1Pp9r3[É¢qÔ>(Kkw†—Û€E;q&èЬñKHõ­G$Áà¹Ûoe.Ûœ° X³c¯*ã¥V\-¨ñ„—³kݽœVRÜÅ–I Ë0 Ç ±HÑ‹0æÂž|힢µi}éY{»‹5ü »¶ÒÅ vçX£õ¨^IX&;Œ–ƒ°‹ìŽÜæ™ »žd÷-ÜjÉqC© _µ´µŽNKÉ‚?z›D’.ª¸Í» W AîxÕ-ø•xtéÎì×v¶¾¶.€Pn£†@ý`N¶¯kírç#8îâËírK« G³’{xEÌW‚6xûE‰ÖD\'2´ˆU”.CFÀÔKSÿÔØ¿ÒÚOü½•K” ¦†v‚cÏ\ku°µÀм8àŠî,(fÕE§’%¬u´Yi69 ©ïñªp桃iÍvf´ŠèJ·B¢Iî!ää0JN ÜÜÃ<ØåÉœÕQÇà‹Æ™‘]o9=€¸:¼Õ‰åÄùH½‚ÀâÉ 4_bH¿%ç¾ôœ½»C¤iovŠHNΦLÙ ‰YÂ÷‚ÎŽªµèÒ=%[ÜÜ¥®­dtó#* „vxQØà ‘Õd7«(Ô‹ƒ4{M7C±–8cõ›Ûx®î'(¦W3 ‘¹Á#FUTÏ(<ÇbNGÁ¶C%¼í'¨Ïa,ÐBŒ÷9c|² ¡G`äW;\.ЇºBæ±»›ãïsŸ¸ÑŠ$y*µP7\XÙDÍsݵÞÆm5mÞrŸ*³É˜R  ‚# ‚6 Á\Ônúúáôyä–ðYC¬©Q5Ը䅕yFe߈јó7ZöÏSôƒ¯Ã6©§I ˆÎ#…RÚ5”Ç’ÑÂ'IB¹å,îŠÌ1ÍÌãÓ:Pç‡ÆÈƒ¶ %%q'¢‰ºÎh§O&¥±¹¬,‘ò¹»Œq49ÍIÈÈÏÄ+š•_poK­I.™©ÆêVêY]¢Ü*7,¡£?½ÍÇ2e”’• é5^6Ö´þ&¼Ó †»xæ6öÖ¢ ²É4¶ËØ”b¢âEgÆ +•ÎFFŽc#⦇±›Í¸æØµÜ¾¤›¢X:¸Dl–ÜX÷ìÛ-vl8r*³Wåv¹J¤u]ŽxrîÚmR{wŠçšD¶U·{vGi xãYQ”06ÄÍŠõßk¼m}§KÄ+¤F Çö\<*â6™»hÙ¤Pàóìö Q ‚LŸa“Ü>,@küC´¸šÚ=Û.&ê6BÓíÌ··ÂŸ{º?Þ  KŽhä‚lP6®:T3ƒ8Žã_Ó'’íP^YKØÊè9Rehùã——¢±Ã«¨ör¼ÃØ]'ø§VitëXm®5 “µ”D‘Gk ZæY2J¶Ý—/6ÊŠ©Œhæ.•¾ã|Ñ!s¨ïâ¾èq&½Þ,ánuqÂï|‰ÃŒa­²KkÝ ÜIbù#•vÒ©”â®'á­^+>&dº¶›•™•aöarW··–Œ0çŽDæÂ•öI RŽ9â-CB¶ÓfÓ$„zÜ“‡i"Y•‘#‰Ð®HÇÓ'#¨5“£”I£p˜q1šáuv?ÃÔyÐjâ1ÈòÓF9 =¤.ˆ$òB§Ô­&qsÃÖº”¥ ÔºRݹ ·jHA°^oÉÏM³Pâ®$×bÖ£OVšöÚÅe°aŠ× /(ÒH‘•#¹ÝTwšºw½²8Äæ±åΡnvÐA®É&¨eníCbm<™šç°Ù!­ ‹» à ³…5‡ŠtË­it;F{›. ò ÝX¼eŽòI̼¤ åSœ¾F ’¾iѤââ9ŸL†)5¾Öûµ‰Í¸Œ92zØYR )çåĤmìÍÁ®júþ™¡X<|—ÅÄ1‹ÆŠX†Îe‰áŠÀdŒ“+ˆh΂áw±¨Ñˆä…‘½¤ÈÖ‚ñ»q²\EGÝ#š Y澟Xdd¯‘Žu°íÛ²YÈç7€¦Õ×4Ñ[Ã,óºÅ 1¼²Èç q©wv=ʪ ÜRºŽ©éC¶µÔõ ¸½^âDQ %£ò;£J±MDŽ…‘_!\ò•!а(Öum[Wà¸õ-.Þ<^[] Y Eˆlc‚î׈Í"1+$^À´›ÙF9­Í1“$NŽI<=ì}µ®Í‚KEäc5an5pxr¶HÙâxng¼[`lEäÏCRmˆì5ù¯ÒÀJÑX4 guäYÚ~ßxûaCôœ)nm”“§ÔxÕ4þ!‹@:sÊÒÜXÁëBè _]ìp݉‰ìûmÇh9ùz®v­xN$Iî‡SZµÅ€ÕF¶8¹æå)ÛÍ’c7öJç*6”^µÄš…§Á¥E‘¶{Í&&i-"{Ž[‘mÚ9öÃѹªmŽ‚¬#©’6µ²°D\e-{ÛŸ´d¸Ò Ø º·¿O„¾'Z×8D ^_î³s¨¶€ÀØ"³j×¥BxËŠÿs°C ª$ºØf‰dÇJB™¤QŽrXòÆ™!‹l¸ht×þ‘l,W[¸–6³åI¤¶híY¢†B ´°¤k*! ¹C$`Žp¸8«’I×—ÇyÛˆâÓ!ãݸ¿¨*Ìš¸ã{™¶G–é<6î ²ãb°n…á\ô¨Çqzþ“%ìh!º·WK˜2Yc™cçVBwh¤dÎãul•ɯ4~4â­a¦Ó¬áµ¸Ô'ìÚ ŒI 6F%72É–åfbaTæÈ\0 ìÊ+ ÒJó(÷Yà$Þí»o­Ñ@ÄßÝ/åÚ¨›áyÂ`ãÆî²ÚÅ]‚K€¹»ªWU*”N+âžÖ¢°â c¹‰ž#*òAŽÂfåÁ,1ÆH\1†åYX6°ø¯UÔ´­<>“e-åÜÎP2A$élмÏ4Š€äî5m™‰$¤QúYø™º7 €,{]î‹6@ /8ôΚ¨ÞɶF˜HÇ0ïð6‹»69èn‚”W–úäYY^^í¥­ÅÉŒ7!AËÉ͆åæäåæålg88ÅS—ú§¤ ÒÛU¾»Œ[\<`BÑÚ3FÒ!tŽh–t%AÈWb¤a°j}ªu® ½ÔZ5çÑõ1*)%VX­î"“—;ò—BTHI­¥t~Ëã–7H#.ÅÀ:òÓ†‘bê¿ Õ6Böl’9Âý²4·áDŽHÁù.xWŠÓ‰Íð[³õ!lO5ÀŸ´õŸXÆ1 \¼ÏÒææîÆòê§½u×½ÚgÛ¨UÃZë#dZ‰#ŒmcvP²y¤ä’rI<úagG#åÓÇ$‡sݾÍt÷4`8€«½ãе[1´·¹6âÛ Åˆ?msþöm¤+ËÚrý3œglàiÿ²´_àI?ú‚ÿü:qTÐ[ú@$-´º,× ÈÒ*Á6O)(ªìàF¬J*³0Ø)'ÄýØð?évßý&ûÿàUÓ,Š ³™"cÜæ>Z-i í°,Ù¬`úU14Ï–vdpåsZײ+-\ZH]Oñïán'^&ŠòU²k1i$QÓ‰ûNÕ]³‘ \¼¼˜Æ9îÆòªÔèú–“ª[Iu£¼rۤʹ¶ßŽHã¡I¡…Ø„™`¥}¬È`+ËOŽõ­Nî *Òmmòcõ¨ÑóFyn!¼²_’5 €pM?Å–@ÐÝ3sf{†ÎAq$Ù⇌]¿ÂŽ=ÅÚ—¾Àt,ißF÷h9¢U³JªxK‹5›nMZ1Í0k¨„¡%ŠæÍdicc:ŠA£ £ƒ]üaÅúž®ÙÚÛö-dÖ¶×W4JÒÈêá&T”Ÿ`¼P…Se5gìsxÞØ\Yâ4‡{®g w±8íIöȼ‡†‡øn Ív,8_KDà«>£v•g$vÆ-"x­å½–â Æ˜aewYòÃrDS#Ú+Ò·f’å…®–'2GVæH3Dnh±{ŽCA8ç Wjê)^"•¯ˆY#ÉààZ9$4°tMf vË×í£’8 óC—”;ˆ[—´*¤…çê$Œœä ½Sþ$â@¶QÇG†ÌצyË[v¢^ÆRasZ¯³ '~L°ôjÜW®jšÛè\.#C ÉܲÆÍ#Ñ;–˜4qÁAägr6Ï2­$Ò´InŒ1€¼¸¼ÆÀH©!²Ú' ñ•†jÛàG$“{é¡¡”é@$ÆÛÍ7‡X9VÅ*£±â®!е˜tŽ(ì¦ŠàÆ¢åDa‘e%cD’.fEhÕס\6ߎø›TÐ$ÓWNx]GtÒö°‰rbhr’F$lã®G…iö9|Hã‡Åito&7,jð:|w[\^’öˆœ# jF’CE¶ë“ÍðQJÅ¥Szž¹ÆòØž!·ì´í ²¼6ê-äŸÕÙù#–e–7vW$d†Cí¨ ]šq‡[ } [yí#úùŒad‘‹v+Ì®‘³ª’Ê@X-`Vßb“nÿ¡Ûdwˆ*#Œ<Õ])»²G{Zý¶=ÛsƈÍÈÒ.Ø «>öÜJ¸)UWñn«{ªË¢k ³MË?g7"$±Ímûì2‚ÆËʲÀq’Ý\AÅÚÔúùáý¡¶tœZöòˆ¹å¸åý©ÃGqœªŽRÎT‘’Ê•±M☉`ÚÏ¿qðö5ÕóŠ«Á< Yûd>–ŸN†·ßß‹m]X»çñ¶©UáN?ÐïíâÔ m^G9Kx#•^0páf·†6ŠUêŠ8Ø¡«r7í#I9YyÑ_•Ô«¯2†åu;« á”î ÔS@èvøäkŵѻpÇ àG˜Îk ,S6]À2F9„6Fí"Åã$ñ¿*"ñšh­á–yÝb†ÞYds…HÑK31𠪢óÒs´ï“¤›ˆ%äç‘A>؆&5 dv8êíSÞ)µ¸½áíVÚÔ3O%±(‹ô¤ìäI^5ñ2"2ßÍŽú§8;Ší8p\Û^Ø4‹<ÂCuOYˆª*™)hÔ©`¡Ô«³äíkI ²˜¼yàÖÅ¿e q£›³C7´€/"®®y#–(Äžoi.—`~n¶ÑÀ ,Ÿ<áMôOHÖ÷×qXêvƒå™Ö8çY ÁÚ¹ ‰*º«ÃÌHÉeérêKÅH¼5kmrÖmx.. qB#i9¹ŒRó}c®sÝQYìx?o£»¶Ô¦·¾ª4,v³JQ‹+¼wìe‘Aå牘r€ <£>9Õ®ô-3O{A®÷"7pGp ­»žnWJ‚XÔŽ††(]<-l/cŸb]<…ìÑ ‰Ý´äØ04‚Y›Î|ÌsY^ñ†<‘bí€í±uX9>JW£ê#VÓ,õ! €]ÅÚˆKö†?m— o£œò¯\b¶U_Ükú…·Á­Â`KæŠÙ¶DËz°°XFÍŽèwëQë ã^$°Î’–Ð5šÉë—¤C¸™žI"†Ý%YJAÙ©öp_,ò(e!¤{üGƒq²gÄâ÷ÐeVH· †ƒÉ<€2¥û[á°‰$‘вA±–\@ÑåÕÀ‹âîU#¤q¿ÞshñA î«<µÌŠ‘öÌñ¨Hœ"©esÈ©†æY=•®Åâž)Ð5Øl5ù£¹ŠGƒ¶@òˆ'`¢kyaŽ3”ö½—”e`>•ntæ—ż4¹¬ßn{EYh®3^öÛ>YZ|$5ÛeØ]´¿gºÇŸáq$g©Ûº±Ý]Tªû8Sáñ¥9á_[7½·k—=‡ªv|¹#—³çr<*K ýÃðÜZ›õ§ÐÒü°PÖÀ\ÉÓ—´9å骹â8¥;vÊâÖäÝ‚ZlVƒÔ©Äì2K½º&‡;¢ÐáFóƒØeo* ¡ñªkZÄÚBéÍna[–3›¡(oVp„vbÈçÎ~™åé½xø‰uN “RMEáaj–­eˆƒ+N›ódF¸ÏMüjÀ¿Ýçù=Oþ:Õ–iC¬l :HccšZçP.iuâ¯È"íUv¨½ÚGDHŽi×5¶CKEu¬ÞAWµ*¹âM[ФգÒ4I-ã!G¯Ë1Ë!C#•šdhc†%ösÊÌìöEGaâŽ)Ð5Ë}3_š+¸å{q(å„⇠³C,Æyó{»”*@5FÍhs_ç0È"ßý¡oz}‰ò9º•ÚÈØê,—h†dÙý˜yàY ü@?"­=_ZÓô;_[Ô&ìз$hª^Y¤Æy"Aô›’I £va]Ú^ š®Ÿk¨GÅÜ]ªFäU,À+ìó`d€HÀ'57¤çÕŒöé4h4pèm%Ñ®Ì'·V !›”.p^5OÍc[ýZÝu!@M5ÚÆpÖÝ£H³ÅÉÎ#™®ìÁ&H{#$Pvv•£HÉÃٽĒ ÇÝ£Lh¬¼ræÝŠ#¢Ñº§cà,vƶ…0“ºÚw¸ôeàØ=B²©TýÇqj²iÜ.©o%ȸeŒ³Æ„)¸šI•Ò$fÚ4Dg!‡Ò9+N.×ô Z=/Š–9a—“7*±†$b©p ¬rÂ"²+¨SŽR¥[aš¹Äۼÿû]½öÕ_•ßNp¶ûl7Äž~Ïgö[°+uÝsš¬ŠÞ¥@8--1ôç…MÓÝ,¦X–PDKN\‘ß$uÈð¨”\MÆšÕä7\ŧöÑCø«4– s*ÈóÊèÄœó;uT”t±ŽY#l¡ÑµŽÝ—¸¶‹MQ÷NIº«º7K2k"ŽGE¶GÈÒÐZÆÝîÖ20t®ÊW898#¡=çç\ÕEm)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQºå•!ŠI¤`±ÅÈìz*"–cðšì­F½ew©i7–RÅ÷qv¬ÅÂ,N@˜~-²ñó cÚ9"¶hÍ;Z\w`MðZ¸×7 Ä@Àøœ_EóôŽ©uÄWîŸa&¡r—s]$BÖâê8ÕùヴKb®HTE—2.K`ƒêâmGˆõ˜àŸWÑžÍ,ùÂÜ&}l¡e* I%ÃÈœ¥€*=“ÌNç8«sƒ¸bN¶»[™ žæîdc$ü‹ IˆÓ2"6yÞF;cÚº¤:¶žš¦›{§¹Ö­ä‰Y²BHT˜¤8ß V n@#¾º®×BÙÙ²&¹‘íc%·P¡\ p£Èì¹mÐÊè¾Wµòn{⦖—Ý‹7’v‹7‹õ¸e†¥øSÑõìŒÜÓÛéös÷“%½´ˆ‡©>Ü]›wnH´þŠ™{-i29Œ–,([O¸Æ·ü)—Ú%¾§c¨\Z]Xê¨ìà3s#•x¥ÏiY"p Qp7&´ èïW°»–M^K•çü|W""r#~ÄòKËùÜñ†#<«š×~œ·W•¬l¯l‘¾œ[V×ЂÒ6毑Âßn ;I1‰ÎtQº9¹¡×[C¬š!Ã88<ÒÐë’,¾’-Ù0]cCŒ• €ÑúŠ:œw«+;ˆ5.ã=DÖ/`X´Óõ•T¶Êêâ`ä4)4j{HÛ/ì>0UÆAä‹ÑÕÍ®­¥ßÛê1O¥ÅÝãÜö«qq<}¼ÍªÊŠ0ˆ¥'˜í¾jAÅmÄ%ä7ÇPB‚#™PåªY7 "6@;«`—O“M²w5±Áá™ËÈ 75Àû®È¢F8#¶Œzð5ÆY„žVÓ“µÍ"œÒFm Ñ5½Þ›Æ|­­ë­”n‰Ïovg¶ÈT m:©Žð³S ­jm{Ñî£}pŠ—E¼ý˜+ÉÝ·ãHŒ„Œ¯ÌÀWø ˆ¯„vú§vÖQ²‘k«‚9v±ÌcŒ0,ܽpzTï÷9bš¼=4v²[¼]©ÃKÚ»vž°Ý?m‰1²ìa@Ïös£’fNǺH£s†Ò .ûÄׯ8s 0kdŽÂö69^×ÂtÑÜúg¤OÑoþKþ”ùKZˆIMé(ÆêN²®Aé˜ã)ø2<ÅKt Ö´MBWZð|wi­aõ…AT¨ÂJÄ©%äåÀúX½ƒoÇ~è}jÓÕ½u®{ ÍÛòŒ|¿½v|Ù9úxÇ}gÅ…ºL‚f–˃M8SŽÐ 8¼p9¥¯…3¡Ò0Âæ˜gfë->èÉ~®oLuÍKðF“}©r ¬%Ñ Â¼ŽËJÄnÈêòçÕM¥EļiÝåÖºl´èeh¦Ž"ÑegD†.Í{5×ÛšCÁ †"áÔl`Ôìn¬.A0ÝDÑ?)Ã.wWSùÈá]{¹”gj«í½êÖÏ5´zÿa¦Ü0 n³¤³Æ ÂÉ0„¶6É‘ÀÉöHØÁ¤|,ŠMÏdsî¯|~%0U† 4ï½ëmøOªdÏ–=¬|í!Ìd‚;}à¼Ø¶ñä(÷ΛÑwþ{{þ‰›þrÊšŸþ¦Åþ–Òåìªaü{ÃÚä·ÐÝ[K§Éöâ&i}hA#+ÇÌ{‘^4æÃ@8;à®ø6þã‹“ˆVêÑm–öÊäÀÆnß’Ö(#uÚ#3‰_o#$oVN¢ªšOl~”µ§?x–ûµ\àªÍÓÌ4ð0ÆwGªp±† ÷†r?%ôýÑXÿ¢mçµ ˜ñï^èiig§Šæí%–K†@í(Bl¨wbŗ”(å9^8»ƒo¸‡T·¿¶º´‚8l¡¶dŸ¶ç/ÅÌŇg¯)YÔ °9  Ûqo GİÀÉ8µ¼µçJè^7ðZ)BÀsÊë’¤ŸeÅFÙ´ähD„9±¶A ×Ý›…dXã#˜Ũm1‚×ÈøÌnà Ý´Þ c5Ï*¯âMX·Ñíµ}gY{Ù®e€EgÏ$‰ÍÊ_™™SW”7e\±ä`™¿ ÿéÕÏú;^ÿzöµÇÑÞ§sfÑj:á¹–ÞËMƒšv´·aÊvyy#ˆ±æ b¤ú/jw ßèW3ÚI$ñ_Åk4&nÍò\J%`gg%e[¦FûM‘›ÆæN\ñŸto$ð*aŸjÕ¿iÙ$!¬uxì`¡›äÑA½ÿikå­àÏQïFRÅ¿:HT<Ú|Ép2âh•sùEŽP X¼Ã7|7m¨Åu=¼æéâ‘ ¹— "ŽE`ݤhrK‚1žüã¾£àíëw×pÇw-Õ­™»³ºˆœÅp—"– ÊÅJÈÀò²°È œ`ÜŠ_ëo¨ßà@÷hä€îG5j©l‘g4³ûFºop ÷šjøƒ‹5ud)O¥G¯4ˆ”ƒ2[Ý4€c˜$’D"Ï~ G//ÇÙé $Bát”Ò8y$ÏQ"ÙÚ†Ϙ‘­¦èúåµ$ÔuýPjM«ˆÇlí9÷¾Úiˆ`Š@&5V Œ9˜q/AÄzx³–C±H&¶WŸ³+! œËÏ«ËÌ7 ÀåE@5Äí÷¶ó$¤ É ÜI¡ÅVl Nži[¬³Ã|á‘’.£Û’FuPÏ6N(¯“4kÁV’³(Ž= Ä€£³µdl’p0ÊAóuÚ Šÿó WüÎøæ¶v~uqØßkíø$Hì­Zଣ›˜¯$…"ˆ±Ü·, O);Öï„8Fï‡//çžæÚh®bX¢XL¥Ð,¥Ç?i£±;ùVø­™¯t®kÚ\oHÉɬVZÙß6‘΅Ѷ¹®%Í&Ë6Ý`ÔÙÀÔ„¿»ë¿ógýéª]ǼS}¢z¥ŽœËÅÔO<·UÚ8ƒöh±ʇvYŠ’¡G. Èñê¨b}SGÕ’ËÖ%’ohOð4Ù2ªI7:±fêcÙ¹Nq“¸â mwOÓc{к¦Ÿl·Ghî€Tv«Ì]y¤S"8.ÊY mŸ.•ú<¯{^Ï 1ì-qÚæ‡\¢ÝήEÑ VEªdˆXÇ1æBö<9£{Kši¼ÐM’0kž+®'Ðõ{=*×TÖu—¾¸º¸Š8í;I$H–He™œ3°RÈUU»8‚åþ‘ÌãDÿÓ9ÿÑAÿR­sz;Ôî¬Ù5pÝ\A‹O‰švµ·Ã/ÒyIËÈ „Ž%ÁÁ%€À—èΟÃòèZŒ°O­ä*öÆLz½àrêݤqá唂2#Þx mñX÷G¨kÈc ÀA¢€ g$ƒ’2A+f‘æ'±²iÜÀ_ {·¹y²Fâ ` ÀPßE?½ëŸãéßeíi¸“ÿQmÒÙgR /€µ­&ýe³×#ŠÏ·ŠI’1q—1C!uŽhTöLJ’»ÊT'Øì5^ ¿Ô8¦z;«D¶ŽëMœÂænÜ­—aÚË™û&äËãqÌFøÜMÕË0™¥²ÀZ0àZà"hi±ÉÚO•e`E9Òà …ÍtS°œ´în縸QàXÏ…ôˆ­ØÍ6}\ÛZÏÑäŽwí€îïßÞ<ªØ×.-—‡õÝÐÛ¾›1FÈ*ÂX‹”ì32ÇRF+£ˆøjˈíR†hn ,Ö×H¡ž"øçVR@’'å^d$¨ee#x/ö=×eŽ; ž" ¦FÀ¤ \È)öymÖ%#òBÆqŠ€> £Ó %ð§°àZçom´ÛKAÉ ã›')dð˨,‹Æn¢‹Hs[±ÔA¼í³Ó;œtz2ŽQkÄœö-¯\V;–|wd+&qâ3Ý^/E [Q$ ®ž0{Æn"ñVÖ›£ZioàÛä’@Îç/,²) ,¬ìÇ@U*)ÁÜ}×·w7WV“¥Å¨Vß¶æV¤™nÒ$¸R6$çb¶v¦9®uí2øB6ž\6ž1d "ú¬7M$nЊÜ"2™*š^G9"ì]/ é4cˆ¬¼ô›RÛoÇê©ñE–zqX®nÒYd¸dÑB„ ʇv',ÊyBŽQ“•㋸6ûˆuK{ûk«H#†ÊfIûnrñÜ\ÌXvq:ò•@ËÙ`·ð¤|K “‹[Ë^q®…ãxߢ”) 0 ®¹*IöXV[6œ‡66È$â³p¬‹dc8C }´Æ _#ã1¸ €'vÓx5Œ×<ª¿‰4MbßG¶Õõeïf¹–Ÿ<’$k4O)~feNu^PÝ”ArÄs‘‚fü7ÿ§W?èí{ýëÚ×GzÍ›E¨ë†æ[x{-6iÚÒ݇(Ú@\ EåäŽ FÇ˜Š“è¼=¨iÜ7¡\Ïi$“ŬЙ»4[È]q(x•€Iœ” •n™í4ñº³ÆcÜÍCî°ÆÐÁxhÚ,4däç&–°C#'{ÌOc§s=ùŽ/¶›q³EÔh Uqˆú(ë¯{´Ï·P«† ¼Âל4u#wqm?®‹NÏÕû_cÕýk›Ÿ´Ž?¥Û¯/.z6q¶gUOXöÉ©‘ìps]²ˆàÔlžÄ­hØøôѱí-swØ5bäqXà‚¨>)·ŠïÒ ÚÎ¥ ¹¾Ñ-æPÅKE46QÈ¡”†RQˆ ¤œ‚ XÿØ÷…@—ý¶óþµh¸“u=c\¹Õm/¬íÒ_V1 áfííá‹›š(˜)猲lƒ±é¬þÇüSÿæ¿ÚõúutÈÉ"Ó†k|ÈX×´oË€h7´´c޽zZ¦#{%œ»D'•Îc‡†ßMÀš<ôíÔ«*ËMÓxkN»[^+XýbþT2É33¤†•Ù†cPB‚3Œ’MU¦ÞñG^]Ǫ4ËH^Hà/HæfT\²ÌÄ#s´’¨ñ Zšð¿ êšKêVÔP‚öÙmÄbk™BŒ¸“"uP£òåN|v¨úú9Õ,¯&}']õ;IƒFÌér c“ˆ˜G0Q°&Hù°“QDèXé÷NÇÊC z‰^/Ô¸îYÎ<ˆRJÙžÝ>Ø^Èš\$‚9Çvg¼ AiÉÇnŽD[„àœyoj&3‹{½^9ë0ŠÎý§vÞNPÿHîzžµíô–q-’ÁÓ-÷ËÐjM§ð æ‘®Ùjv7Öò[Ú²3­É”\KÏ Ct}ˆž1Ú $1ŽcË Û5ëâÎ ¿×õ{}BÚêÒ¡´‚Ý’s7hZ)ç”°ìâuå"P[9 U´Áö¸åñA`Ól. ‚¸š …ÓÌ4’Äb;Τ<4Am4`Þ@¢3Ïš°¢bŠ8XÑ#P6QB€1¶ÀUèën*½ÿƒ|?ÿnÛöUíU4þ5859ïtme,£žI™Oã⸅'bÏhr$AœY 9†FM-+ã ÔÇ$‚3+çE‚ân=B·ªŽBý4‘°È"y.h ;j·:E¬ô©ÿ˜i_æsÇaë Þ¨ ¶[0GÈZ>*àÝC_}1¡½µV²³õižã¶VšL©iTF’à1ÍOSÖ¥·Út·ZÆ”Í6šÖK#svBCeÎp¥ù3¾Ê[Ù­ß,f= CÁ1=Åüû£{H&ÇQgçæ°È¤ñµŽ, JÆ]ÄFA= ß*¿ôUý©¬œZÚ­Š…ðo ÝðÜ7ñ]Oo9º– Û™p¢$‘X7i’ãÏ~qß4¨5olš‰^Â×ÑcG_0TºF:=·«g¬ÙZëR‘–rÈf–$öv|ÏÁ• œ(å ô¥Ü¥þ áû]ygMÝÆAµ¸ÃÙß)Ž>ï£Ó9­Gp,ZÅçá; ³§j«HÜŒÑM"\£,Ê¡@.œÜد0ÉÓí ûdñ ZÓnkCÛL¦€áD– ±ž3Õl4î63Âl®qÈ×;k‰~\ZìðÜšÇ^ }uðbÅ4—Ž- ¢(ÊÜúÝ£¿+0NÆ\2TbŽ=Æ K8›Tmg€-õ'ŒE%Ìöý¢.yDÝK…9‰<Œñ3&I<¤džµÔÜ®jDº×›h›!Ü\>:‚sFÅvçÃã'Ùnù¾£ÃvwºÐ!&ÖŠ5¶p½¡ŠH˜:;)+Ús>LžÒ–æblÞYà/Ó8˜ß+&k¤–(ÜÖø`ðAËTj®Ž‘éçÙ¨h2'Ä[rÈ×AkpFjïÉi½ÿs0ÿÞÄUðÍ–¥sÄV–z™Ò/»;ÅiÊi sÆe·ÆAæb¦BsÒ"7ÍY<1ÂÖ…}“k˧Dgf±„Üvr¼±4jíòÆŒ¬RBpç)טs¯ð!¿Ô­¤_~ ½wÈFÓ³G,MÚBí±pÕŽH “œ¶xY>¦¥nÝCw6M…ÍcíÔ×´ŒàÙ4[ß­ χL|'iˆk£Þç³ksÓîœbÈ#'=tš—j7×PS‹-&¼…n# 0œ²ò§n®WŸ›¾@5çô¤¥ARyŠÛÞ)oÎ Ú~8Ímì=\ɨG¨qªu&‰‘»%í¤í{3”Yg˜«ˆÁ(±ûC#˜dçkÆ\'yħµ¥Å­ºÙ¥Â8¸íG7lЕäFã " çF;èÉØÝFŸtí{#l–æÄ#c ÛTÝ  ð5çGiÞí> 61òöµÒ™ð×´Û¬ÚüVjˆÀ¼µÀ84m?Þ-söšÕz-P4I±¹ÔB“ß…¶„ð,~f¥ºŽ=ç 6ˆ’Ä— akiÚ¿?cÏ„3l¥ùOdy}Œî2õãàîºáË«[©àç»7 Öý§*¯c|­Ú"l¡;0FùÍWGöIãÜ7ºpö·6[îätèU ßj‚M§k ,.èšùžŠ·á¿ýEºÿHk¿eånx“†tsX‘ôjÆ-Zá˜Íbòs¤“˜vW„;C&2)W<Á›’+o¥pmþŸÅ3kÒ]Z=´—Z”â3váo{~Ìh„|ÉÚ¯>RvÎZ÷.¡~Ú®“|tËæq+ŽWìšaÇG$L²@팿*º³d€¤œØ:ˆþÐǶsi˜ÀðÝÌÞ ;$m\EWqȬÍ<£Nö>'ÿRçì/Úý„0nÀÐ?{’&s/ðcÛµÅ܆ÝÝ’{\´—S’CΊTä(0Œ¼4‹ÿÂzeŽ S³7vñÊÉ¿²Ì0àg~^`ys¿.3UÊú>Õõ ˆ__×ÚîNÉO4Œ½è²\r,<ØÌCŽìà‹FÞÞX!¶pÁEŠˆ¡Txœ¹;“¹Þ ÖI ÙióL’DÂÆ‘Ðg.Ž9˜é „Œ†€Ž9^àqfÆä‹¿+^MWT´ÑìÞþôÈ-ãdV1FÒ°27*û+ÐÀÉ FNõ‹Já7‚mB i`”NñK4Emn»@¹ä‰XœH2¼ˆY·Î57¿±·Ô¬î,n“ž ˜Ú9¡îOs£è{™Aø‰4«‰$еDìÜ®—ÙÎcÉåYB†F*Pä’sÊ5Ó‹]ý»´óߺòâ#,ŃU›æÍp@9­õ&MÍþÁºˆ÷˜ ÚëÃ…š"ª¨¶FwŠøk÷)ue-¥ûÊ'/$â;«w†%ËI\²°å©WÜËy¼7u7ï×-o<»cñ’Ø3¶ÝÞÑ5ÅŸ£Ý^þö;¾#ÔDˆ…Lˆ³Iuq2©ÏeÚ¸T‰á˜=p™<Âaż3>½§ØØØËmj,ç7hD°´J‰Ù¤‡##¨®jÛµxº@é[+â/2L6ˆ4, ôºê,䚦Ý<¾¬²'DÙCp—[¬IÉÇZ½ q{ÿý.·ÿ#eÿîi[FŠÈq»j79é¾#·ß·{nxfîn‹‡âØ]GºÏkêäÃv· F#2`¨åÇÒë¶õîá=ã‡ô£as43Hn¦Ÿž~NY%ñˆÌ íÆ W’XΛPÀð\ý[ähÍ–´ïNyV"†Fêa{˜C[¤ddã·›¿ÁUü ñ}ÞwåƒQ#Èöñ®~Dsé$÷šËÏM³'ý²ð}€TƸ6ÿD×'Õ..­%†X®‘c„ÍÚ<©"“Ï.) †Îq€E8³ƒoõý^ßP¶º´†(m ·dœÍÚŠyå,;8yH”–ÎAÈdj!Ñ'ˆ6x›³[¹®-@4ó}ˆÇáæ}ûl^Ûæ¿U¦ô®=÷gS1§ãì52†h×á•B/ Æ…²0i«3Ó<þÎ:ómÖ½OÃñ%Š[<¦ÞxËm8^pŽËÊÊéÌ¥£pl0 €Ã$`Ã,ýjÅ#²Ôµ÷m&7 lmZऀ77/,¬‘Å“¾BɃÐgWcà“M(ÐHçZ\\Òâïv…Y°õñJg2vj§‘‘xž6µ¤9­ pk[ï_LhUVW‹ÑOïúßù+÷î«]À¿Ýçù=Oþ:Ôëƒ8Ró†¤ÔîæÖqv–ʂߵʘZbÜý¤i±í1ž‡8Ú¼¼9Á·ú6½>­=Õ¤°Ê·j#„ÍÚƒq uÏ‘-PýsK›Hâ kK›÷Ôn ²š{™ í$—<„Èò?²HçláÀ«Zà›]õmRKf”ÎêâUh®“$Í3bBK*¸bÞÑVÀ×Þz6¿‘­î¢ÕÒæÿ¥½¸¾í€–@PÅÙr‰Ü„ ÊÆFË{$=‘,:3a²Ç [\Ï ‡øµ—>M¦Æ+œš9G6ŸS'‰¾7Èñ.æ?Ä<<Ö2À¼Ù°(ןg¥?ü·Kÿ>“þ]«¢¤’p,Ó3è—I/S#E: ß<äcæ½\GíÄZL’Ζ×4s$ª­,°’T önb|°VÀu±SºŸ pÞ±¡JâûUKË1lÐ[ÙÆgh¡vš9;Eòª`+©UCžÓ<À ^$gI‘ÒH´¾ŽlöÑÃ2Kž½¢[Ù+çϘÕ‘$<7¢¢(PÚ}¼¤^t;w³HI=rkSÆ|1wıééiqm´{–sqÚá„Ë^NÎ7Üvg9ÇQŒïRm&Íôý/O±•‘ä³²¶¶wLò3ÃFÌœÀ7)*HÈ@;UIek´F7‰$s˜:[œAô§c=U˜¢{u“ÈZv:8Ú×c$60G7ËMße°¥)TÕÔ¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJR”D¥)DJU-¬úB×tý[Q±‚-8Ãiyqo’Þv¤R2)v[¥°HUô­­*ôjZm…øÀõ»H'`½GLˆ7?BNeÆIÁ5b]4°±’<7l•¶œ€áxÆàUxµ1L÷±…Û™÷Ö±ß8^úU}é+YŽöî;H´ãkÄÉIÎí;*32Ý*±eä(ôuZÈÓ[[Ìø,ÈÜ£ Í$jÍ€I dœNÝæ±6šXÇH^Ð œMŠÅnÖÒLS—ˆË‰en±C7UœðW}*¯âþ6Ô4mUtí.;I{;t’äÏ’°šNg½œÑà$!² öÏ@µ#àî!—ˆtÇžåaKËyÞÖdŒ©öáuFyACÊrÇ,ŒFeÚiY g xnªÎ@wŽ€ôõѺ˜Ÿ3 ïnë±î’Ú°R/#årÚR£œW«]hš-Æ¡f°´ñKnŠ'Fxñ,ÉeQãbyXã 0zç¥BÆÖ6·=Á¢ð,š{)žñ÷^Ö4¸ÖMgŠGJ‹p†³w¯iþõ`Y½jxqnŽ‘òF#*y^I7´ry°vØTSˆ¸úææÒ¸z¹¸ŽC —&¸æœ­¬(P‚¥Û˜È@æ37M+åt-s ÞI¦´ ]ÛÒÉè.ÔÄÈ™+‰ ÁV÷nhë\ôJµ)Tœ¼Gé KAy¨Z;Z‚ ‰ì!*çq#ÚªI=HÃ޽ ÃMkÄ–$iØ]Ûò­Õ©`Ü…³Ë$gbð¾€UFÜÛK¤–&x„²F|nÜM 8’k#9X‹U¯ðÀ{V#vm¹7Œ÷¬ð¤Ôª§Š8Ó[Ò5Ùt½> 9-¯b²[Ï4òIq7 ìçNvg~TUNcMkÏqêòpû*(,Å´mMP2Ic.rNþ¶n†g5¸À{Cš ‡F‘úÂÑÚØZ÷²¤%Ž-qleÀhä|kÑ\Ôªÿ„¸ÛðõÃé÷¶Ék|¨ÒFb,b™cýñB¹/ˆ=®RX r l ¯,O…å’ ®A#~¶9 ÄR²fÆw4ØìA‚AJT Ž8›QáÁ¦µ\7½¯¬Ç$˜õUääìæ‹ퟛ<ÙÂã9Ü𶾜C¥Çvyî#ØÞÄ™ “¨™³2Å*žxòÇÒó„ÖÆ -žÄ€A²(–ät‚ù…¨ž33 ³â4A †»®1Ï=”’•_k¼S©i¼S¥h¶éhÖ—­¦‰šX¤iÀ»½{y{7Y‘¨)˜Û ’y†Õ`Ö¯‰ñ¶7:ªFïmÇŸe³%lŽ‘­»‰Û]b…Õã¸\Gˆ#æ1Pžà¸ønö{ÄÔìÏjÖÆ6¶XBƒ,Róó ¤É—//(úYÎØ1 oÒ&­kªßÚéÐØÉii3B²KÒ9ìÙb‘ÙÒá”Í•SÊê2I²ôUµ] ßT‰TÍ5«»F™EÔAÒHÂXŽÙUÏ1R0NA©Ý¦lØõZà(Ù­í°KMpAÁ¾Š»fÓj%  ¤ÓïsI°C\[Fœ.²luçwJ¥¥ã>;‚7š}C j^IeÑõ(ãVwy‚ªŽöbï5ÓkÇœe|®ÖZT‹ #Zé—÷ ŒÀ•a¸p¤€H ‚@$Vÿ`œ‚wCC“â \š¡ÏÖ/o†ÀÛ5œá›®õwÐù]ßJ­î8£_³áFÖ/,¡µÔÆ ¶Þ¯sgsv ŽW0K*Ë–ßÏÊq°ØÔ‹…5›gD‹R¾G+Kr®aVŽHde D’HW 2ľ:…@ý<Œaí-½×]¸ År;35½íŒntbZ-ªi¡œà玊MJ§õ^?ÔïoÛOá{Q( È“öæ{‚»4‘EºG;‡‘_+í· 898«ŽôFŽ}bË´µfúÅœQFs`OhcsŸdIÌNþÉÁÄÃA9ÌMs…¶7H„á´GÀGU ×B ©²¹4é[1ƒæë¿ÃôWe+K ë–zý‚ÞÚ¤7g<A’Þ`hßA28:@*+»ÿHŽÄW6ÃfÚm® ÖòŠQsêêü¬áÌå Š§›÷°Ž\ äEši$mm>0KšãG¨w=º…K&¦ØÉëd„¹¢Æsg°ž¢ª¯ Þ¥a‘ÍsDÁâ•HÝNUÑÔ2°=ᔂ¨qN¥Ä7:ŒWÉh‹i/«E$d™$•[œÉ4 Œ ÆÁÎæ£lOs%¶»ìÑÉh¡× ße#¥c_ ;¥Ý²…ƒ´lôÁÝXT­V¹©.‘¤ßj'”µ´ Ñ+}ˆH€A!¥d ‚.HéUnéV¹ÔìmõlÎêe‰äŠ ¢p$&4tw¸tåYp• €Ë±ÜI–i˜ùk.ìÑ$ !£©¢;r’êb…ìä‡>ª…€ ƒAw`OäUÏJUicÅú¥Ï>$vbÅoµ`ˢ㳴†êH‰ÎS˜´)Î{,X¹iO”H[U ޳^ëy®çÉm$̈Æ×]ÊðÆÐ¿xöåYt¥*%*R´Q©ÜhÚö¥h±5Å·«vbegˆö×–ð?2£ÆÇ +ÃŒ6 ÈÆÛŽxÖö35ž‘ ÜJæ6–ÛKÔ'Œ:…b…âÔ8VV*N@e$`ŒÙ‹K,Ì24°48°—»n@iê;8~?Òꢅâ7—‡S]‚HéèUÛJ¦ÒØOëZ:Eœ”6×v3Ï´Ñ‹‡pÄgÃà3š²u-c³áÛoO1É‹yleRÈy•YDЬ§láÔ8!È£ô³Fc ©\Ç5ÁÍ.$ ±Ç?Ÿe˜õPÈZMÆ ž×4µÀwGŸ‡Ç·ÔªB׎øÊù]ì´¨/2Ú×L¿¸Tb2ÌW‘¸‚Fâ½_ºßHþ^þ‰ªÕ©‚`hºG Êr>?‡¥Ä5ðlĈ‘óX>WrÒ£¼EÄpö–/¦µžB‘[Ûç“´Ô±æ'uŽ0 H@${L*´‡ˆý!êq›ë FõBX§ca‰‚œ\–` ”fËÀŽ-,’³Ä62öï‘ûA=† ?/ÅI.ª8ž#Û$­Å±3sš;¸X®}~bîÚUgÂ|os©ß~Ö Ho[´XeDhCËf’ ¢b{9@F#—”¥ †Æ}oÅzŸÜXEa£­Ì3I!¹ŠI4r*¯)I¢`œ‚ Ï}>É7Œ ‘¹¦ýÒÜ›íƒÒìU'Úá0™Áqc\ì{Íq QŃèlZ±)TÊñ:«¦€ÎŒ¡•—EÔÙYXeYXJAR ‚A#j’ð¶»Å:–¤öúÖ”ÖV‹i,«1Óomd…R>ÖáÚ3Ì!ä˜òä)¬¿G,msÜèˆh²€»¦ŸØ­Y¬ŠG5¡²‚â&2{žƒÏËÒìV³YÔWJÒïµÁ6¶òI·G›°ÆwÛ”¢œàšª4¯HÚ¼úŒ:„6 eqp‘M$PNŽFìùÑÞá×åK{-°a±9Ã¥–v=ñ€ZÌ4I«¡ÜÒÞ]LP½Œy!Ϫ¡`àÛqè/¯‘WU)Tî«Ç ¸îou Ebeu‚HÒ8ß”åVb^VtÏTRº© ûø³"Ðlm"[½NEQ‰ìm•±Èe C¼ŽR%+ìᙀ*Ú÷¤¯9–×—µ)ø6^ÏÉŒ¡º óœ¹loSiáÕG#!d£îkL€cÝÜ9é¶ù…ói kã’gÅ“áµÎäzˆiâÎTG8W_N”¨'qšq{+¸’ÛRŠ3 “ØÜF¤hƒÈé^2[Ù<ÊÄ]Ä|_ªéã WTâiô‹˜ìÖÖ'¿Uh¡•fų²Ç—iÝN@ÞÀÏv*8â|‘ͪ‰»f±ž;œ-䙑º6ºîWle Ž{r¬ÊR ÜoÄwü;Ÿ%‚[;]K:Ië1É 4—$±rç9'# ÄQºi+s®¬ÐÀ$Ùô 2ÈØ˜é{[WBÎHz•9¥RÑq—ÏM„&ŠE±hú”‘ÈŒ2®Ž“u#pÊH#pjaÂzÏj—qëšcXE(ð9°»³í$g*ËÍr쯅ߕpGSµM&’XÚç¹ÑSy r3vsÚŠ†=\R¹¬keÜFCx¼ž=;Ÿ…ÎiU¿qî…}k§é‘ÛK3ÃÚÜ â’R Ë"Å,D3r± ó à Œìø+‰§â;K³x°%å¤Ê®°+"42©18W’FÏ2H¬y±ìÔéfl#P@ðÍuÈÐ$v&«Ô-Ʀ#1€â éîØÄÔ€r<ŠšÒ¼·×¶Úu¤÷·r­íÐÉ#¸FÜÎÄ…U³*¢“¸§\¹–>ÓÌpFz­ºÜÌý<’ƒol(=@fÆišIÜݭcpéí¬µÑ7ž€Ö.¬ZmDp–µÛœ÷}Ö1¥Ïw˜õ"úpUÏJ¥¡ãŽ&Ño#ƒ‰,‹Äû·5²Û\rŒö‚¡g&†•JƒqNµÄzkiÿ4Ó~—I%Ë-…ÝàÁ‘slê#æ ÄÉ8ÈØ‚ÜzAâÛI…½ÖŸim;+ÆŸ{ Ì„G%ʹ A BሠdŠš-³5®aÞ€^¨ËjÇíê.5‘Dâ׉0@°ÂZl(õÁõÁW*ªÒx›nµ++kí­í&¸Ž;‰Î‘¨Â"‰Ž̲ÈcNQ¿3‚£¾ÆšÎ•ÄK¤ëØ­Ÿn#7C4L`˜â ¥g¸‘{=Á”r퉭>Ç.ç4Üæ°Éµ¯% ÑªäƒÓÌwYȶ‡#Z^¹Ì ÝØgž0~6­+Á©ê6ú^Ÿs¨Ü0ìmá2lFdlb8Ó|•Ê¢ã©aÝP~â^ â;ÉÞâtË`D ^WÉŠ‘®9•}¹X¡Â€‚à¬,…ïŽIEGAÅÆ¬žÞç#cº•Ó1’2#eò@è\îÜùªÇ¥)Q)R”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQη–?„x¯‰-Bó9mjX‡ki4x÷²÷1©§ kfßµK‘6”. 'u3*½±´˜ªù¡«ÐÔ?¤}Tõ_ ÷‚ÎùPýJiôy8‡@PD3êä“ýêÖye„‘ÿ¸ x{=ûc¼Z' €ÿzY…ö²Ù?ð#Ôã²à1æéÇñ?S 9ûÔ×ÇÇü×é“Þ¼W6ßEÒïYp×÷7åIïŠß°…~ ›åžñ_LÚÈé–ÓHÁcŠÆED·Vcðš¦xæÇðn‹Â–dh-®@p”¥´’ƒŽþÑÛ'¿ßSN/Ôÿð|q£rÍmigûò¼HÓ‘¸?¼«®GBà÷U}I:¡¥Ø’iÚfø€ÿK…gKZgjË¿áçqów…¸‹â¡œ%oû¤â½KSº@ð*ÝÎÊÃ+ÿ‰&ÞÞ-ñžH]ˆ=3Œ×oLújìB\4¶À1Æfµf’ÇNg„È6ëÎ:àV§‡ô~5K1y¡‚Ú÷ η6QDL褬îy±°9Þµú­·hzµ–­¬«-ì“Çsý¬™šÌÄcnåO)e;ç$Õ§1²>xDЖ>ÅMx/c¢ o“‹‹«4Ñ|¬×º6Á)ŠPöÌe’WGQ¹²Ðu:ú·mp %})PHܵçù{/ù˜ëÏÄrš2éÏ »MJÆ;Øe3ˆ£ çèm’T$ÎÑÇš•Ï ‰!ž'òÙ4]Yœ¶$û „>ÞËaN ¹pC+&Ó=Ì!¯•»NÝpÝ`EyײéÏ4o‡RƸ2' Œ9¾éÍØã¸î¼œpöœ ©]!!íÿ Ì„lCGn¬¤â=ÝkQè¾Ê)®õ=BU5ºCLÀ1CpeiIÜ3ùIë‚Fw ïø*Åîø&æÑ½‘~u(ã'l¬©Øχ:°Ï‘¨êðè:­þ›©°µ[’!i%öV+«W‘BJÇŠÁÝCd0 6jãs=¤ØìÈeÉ`pº'à‡UP×û5Ïûž~èy`ž€Ù}sŽUé$i4o¨¯ˆÉ"0]e`v ‚A¨¾ΙÇWt,D->©dW;·ÍGy^ÀcÃz¸õgNÓ-$¼ºº…cTg@$FyˆªBŠI‘œìäo’@ɪ ŸV⫽iˆà7wR7pšûµ#p[’Iè¤Õ}(-ÓëàDf-¢ø/;ƒk¹KÔú²£FÖd‡ÉÛw]pïÈyxÒám8Ü]º³%¬šUê㙖‚FUɘ… d“¹ÅKÒžšöz]ó6(y E'¸Vr‰ O•Fx±N?·ŽDY#’ëEGGPÈèÞ¬¬Ž¬ ²²’H ‚A™ñXÞiò]i6pZ_Ú+J±ÚÄ¥ÌJ2ñãUS š&1`T“͵§ý˜³DÝC\wBÀ×µ¾ë½D&¬ôUÛöýcôîhÛ3˘Z DŸts]:ž2¢¼ §ÞêÑ!¿{É´ªŽ¸¼êÐÝkX$lZl€M’oŽŠæ„F4í,qv÷<ñ TYÆo* ô¯ÓA÷êfŸZ­2Yx‰ÖÚwoÁZ”qíô}^mà˜Á{Y G!Û+ÎHPÃ_Jý4~§öiõ%ã ðÖƒ'5ý„ =¶æ‘kÛÁâyÐs dDæ­Ç#[¥ÒE%xSøñ¾ÿ„ø¾ãï¦×g°žT’7;U«–?ö°x3Ìx~ûOøš+ðꢜZAãþ äÑ#¡…%Þ¬í{Q]'GÔ/ÉÃAnÆ=ðLÒb(ó2º¯ ¯ŸtýJãR×øa®O4–—ZEˆ’ZHáÔCÆÏœûA%Nwä ÔàX^”u.ÎÖÃJFö®$k¹À="‡Ø„ž#;»Ä|©.œ™´P;;YOìZÃnô°+Ô•˜µE­Ô7ðZsštãšäKCÁü>u}ˆî¤^y®b{;Wa’gŒ%ãIêeõp[}üÔŠÞz/Ô‹C¨i[ȶ<’ÊpÜr:ÆHñ“§ZÑéº/¤;;8¢ÓŒ–ÖŽ;hâ[½=~Ë2Èüá›#˜?´>‰­!µâÛ1ª§a,²ª]ŽxÝZ óÊeæ…ŒeUØHyN¡\0&•¢vê˜&ŠBí²DÈÞæx``q¸´Ö'á N0»HÿhöÜr½ì-c„¦ì8ž„“š°1DRº¸¯û›Ö¿Ñ÷îT'Ñ_ö–¯þumÿJ›q_÷7­£î?ܨO¢¿í-_üêÛþ •F/ÿ¯ÔÿòÇù±^“ýþþ?ÿKsé#ûš“üöÓýç¨Þs%§£Écb®d¸€2œ.o’ݰ{½™MêIé#ûš“üöÓýç­&‡§É©ú9¹³…KK#^I¯$BtAæÍu$€*XKF’êÚ5Ì.¾6ŽoÊ”3dÁŸxèžëx]Þ‹ìa]:ûPåS<×fØ9™b†8¤ä Ôyy˜ dªç8±µ 8o쮬çEx®!’6V€YO+ ôel2‘¸ ARú7×­,ÖëG½™-ÚYÅÅ«JB#ÈÊ±Ë f ,žÂVÇ7´´0l^ ×ìt]:y师ÎÑ8µ]ZY¥e*œ¨y]ÎTœàul”ë\\\ç4Ç@äݤÐu#Š6¦Ò>£i%¡­c„€‘ÍÖ;» ê«U—£ ‡‹WÔ¬C–1ÛžÞâ8ƒcĬäáZ‹Ý!µ¾0â Î&/©MoàÓÀ;HÑ¿ƒ!™?“Ì|`È=ØJ÷Z–¬êDB/SÈÀy$‘'˜/ Hù¼ ×£CÿÔ­Sü®§þí^|…šcØFæiÚo‘¹»NG¥> ‹»M£d€–¿RE{ޱøäƒéKoèë\i­æÐo­ÖŸÍêêçÖáŠÉüÖÒdc;#(5§ô[ý»­ÿ‘µÿ=8ÊÂ~×løŸM^X矚u.°{T|cñw‘æñ~ÐÈ®=Þk$í˜-O»2ÎkIæÕj# ÍCaqoòÈב ùo©&±JF9ãU¥ÓÉ—éÝ3C¿š7F gÖµ¶¶>”5"–ÖLlyîdk©ÔuìâÂB¤wóÈîüv]üÕâ¾üÜ;t‰Ë5¼Kã(ÁÝv2ÃsÙÌfE'ǨÈ­×^û‰øºê=1;iaÁf¥ãEد´üò°Œ•ds0]Ï]­þ‰éúÒK{îÒæÔ€ï ]éÌdC©UGYJ‚¡7'`pd‰¢ifŠ"Û–V=á®wˆ*«þPâÐOVàà•®ñß«wƒ,¡ÕO…Ío†A6îÎ qÑ[\=© _F°¿Î^hÍåg©¹iÀÓEµÈ43Ž/7j¨àî/³á»kÈ.mnnæxåV€Ä„Œ¡ Ú:œ“¸ÆF*ooé7K¸žN¿VžháV&ß du@N%ÎlœoŠz=]Ùê?…Æeõ˜»ÂBÌÉÉÙnÏÖ}®Nn¼»suÞ¬EŒ®ƒ†”†VQ¥++)Èe#@ ‚#"±ª0xònÓJ÷Øí{ƒIÚÚ @@#¿ªi~ÑàÅ·S XcšÒà7dMÙ¿ÄwZHZ5Ö«¤Ã-š4ÓXNÓ´ y!xÊHP ٣·(+ÍÆ Aô}¢ÛC§]ØÇwmj;(ðæÚæ$ }†%¦H‘`öÍYœOÅC‡ ³ž;?^Š÷Ÿ³™'T„aUÓÛT“˜HÌŒ§FFs]vðp¿ØE=¥‹Ë$@ÎAHî­¤Æ$‘ rûF}Šá—cQÂýšv·S§ñ4åçcÚFæºèŠgue¤äd)%fíK§Ôç Øámsi¥¦È à‹Ãºq•­Ð®¸7_Ôÿ[Zz¾¹Ú¢“É$šæ k[›v¶‰%c9ˆ«+¹@³v9}Æ1ß]V)ÁÞ£gÚ¯ v¾«oÚv‹¥öœýŠsóón~lósoÍœï[=øv9Œz[è©q2SOkšU@\‚¶ä;ª€XŒ ÛÕ| ¯Ù¦™è÷9Å£ ’EqW󪻜9›õ=”-"… ¼H¿‡|A½'ê]•–—{ws™€?Þ`¨¤W ?ÉyÔw‰¸wð ðõÚ/,öªVñ€Ãs_âáK§±”vH|>µÜF÷¼MÅ·úrvòBÞ©jœèªÌ+—‘„j ¢W%ˆ!NO]­ö‰éöÒ[kÒ÷¬ É ]éÌDÂE£†Ê²¡7$3œñ4C‘¾4Q|iY#ö¹Þ ÚMs†qm‰ew&­Þ ²ß'1…Ío†A$›o v2%Zœ5© [CÓï sHÐ,Sï“ÛÁø©Ið,Ê_ *•»Ô¢Ñøò÷Rš9%Š×T»wŽ.Pì9byÈ\‚àœ‘°=õ)ô_©5FÁF°©ê3ÉÂûˆ„‘âIï5¢Šn}$MÄ1O š­è’)£Ybp €xÜ2°2nG m‡Q­c,½Ô0KïP=è–ßp·šC6ŸDæfco=Û#®@$y©%Ï¥‚TƒJºyO$+,¤{a „®û¨ÐÛ#9oFš=ì77š½Ä/¼¶­in$R†c$ÐÌîŠpJ …T>0K¤á±èãž·Ž×ðÎn¶³Yá® µ^ÉF'Š8À $¹9A-Œ Îï8•µ»´¼pÚˆÛ¡¸·8ÌFwuobRò¶>1ŽÒ²›#ƒgÜâ粈ÛC"Õãƒü20HuŒfª@]s ÚÐÖ?p£œÁÃÏÐQuŽ>žk°$ìîï®B¿´¼ÖÅ’ äb,!AÐr/pÅ_5AÌïÁüp÷Wþ§%ÄÒ‡U'žÎô73§Nf…ŸÛ_ÎŒŒn [¯Å<>–¦ðê¶mN~T™c¶Bˆ틞œ¼™Îǵ{ tmsãt, Ú õn0—E¾‰ícgdŽk$lï/ÜCIº§dÙ9Ï{Êë³á=ÇQmRÞÙÒñ¤–Pý´‚4i¹¹ÂD¬±„<Í…e`3°Øb§ãÙ–ß‹âe‚-:fUÇ1Xܹ8!p2@ÏZ–p·ëöµ5§ªÛ8vÓ™y'¶· D*î²Ø”\ù‰æ!ˆRD_Ž_-QÕYtµe`YZ\2²œ‚¤ ‚Õ6‘’Ç«sgq{†œœ¼ºšKi¶r=>=mE©tOÒ‡@ÐÖC‡h. «¨8ÏZ®B“ÿe=+ü¨Ûþ­Døu¹ã).[…Ô§Uls*ÊYÀlddà‘ž•sþÑ?ÀÚWÿN´ÿ£T窧\¢*¢#jʈ *ª«¸UUU­btƒWàÆøÈ‡ÞÜýÀŒÕv£~©3glÚOFH ãhk6ѶÝ÷¿ÓÍ_SúUþÔÑÿÎ.ÿáÃVÅTþ•µ4ó‹¿øpÕ]ûÜ>®ÿÑÊÞ»ýÒoFÿîÕæÒ=#iºv—§ØIa}$–v[»£AÈíj…—š@ܤŒŒ€|jÂáî!¶â+)¯mášÞ8.^Ù–àÇÌY"Šbà£2…å˜ È9#­hÚDÚ,ÚV›,²iÖ$’XÚ¼’;B¥Ý¢,ÌÄ’Y‰$îMcÅ7œ=Ãz±··³kŸü4QÛCº¼÷ DÒrĨ ¬ Ì[ܱ€­¥ð%“†'¶WË·{Ÿc.¢vþ<à-"ñâŒI,¬tM‡vÀÀÓA€´nòãÏÕ{¢÷£Ž§Ôv–ÖòIt22½°[{A¾1“Ù0v'¨&²á×<7Ç7Z[ž[k©¦³öT¬™žÅñæLqŒŒ‡}i¸oHãnú‡«C É0´ËqgKØ1¸püªå†@ XÉ]¼ºý‡é·VÚ®¸Öd‘&kyK=·+¢·«1¨Æ9€,:nc#áE°Áà2-àÈ×0[\[ݶls€z9¡ïlqÌb›{gñß)aðÜ×Ð#uðá·§RucúP¹’-"ÆÙI uzZLs-¼E•OŠóº¶?9÷T‡‚lá´á­4Īæu3†’I›,zžDå|*=Æ0·p•Ž­h¦F€E|ñ¨Ë¤ˆ¥Ò¹- à¶?&7;í\ð7i¤[i—·pÚ]Ø«D¾±"ÃÐöŽÑ2I! ̈Â7RÀåC†À æ=Úµ€“îµ ’h,wü1}®kuî{È “NÓœ@[lMYÉ¡Ó×3McBÓuØ¡‡Q…¤X$2FQÌn¤©V^uö¹Ì Œ•SÝQ^4±¶Óx2{+8ÌVÐMh#Bï!P×hÄsÈÌädœpÀ¯'ñìzs[ÛèsÚÞ\ Ý9_X¶X‚±sÆèÝ11¾UWéaœø®êò÷=nþ¶º¸kd‚>nTuA‡,ÊJfVbT’ Úµ†9Øí+žH‰Ó·dnqÁÝ—l<_zë禒·V•°;|€-Ãw‹ºÇºzƒØ§ÿq—Ÿå5?ø QßEù†«þgüsR.þã/?Êj𢾌ï-,ïµ6»º·µW´…Q®'ŠfUL¬¡ˆ 8Þ¬¼´€“+(dûã P4€ÿf@òp?Ù5^•FúRÿÎ4ïôhÿš¸«ðÖþÓ?ÛíêÕ?éD†Õ´ÖR[LR¬ ƒspAlA‚6"«{=®n©–Ò-¯« î§öƒší+ö¸yœˆvW|?½EþM?ÝFñÿ÷_eþo§ÌËW”?½EþM?ÝFñÿ÷_eþo§ÌËOg¼þ'þ‹Ðÿvgÿ$‘Wµ@8û‡ i¾½m5þœ¬à(ËOhiaódýö>¤è.1?¡‚È;zàj¤R:#ZA®„uiò#÷W%‰³FèÞ-®æB<ÁÈüp¾nŸ]ÕxŠÇFáÄV’H¥ì‹Ë]¶ymŒžÞ,ó1'8íqWÖ…¤A¢i–Ú| žLf¸` ²Ÿñ˜aA'•®N*žà”AÆ·#•pŸ…9»{8RTcކ¯Š½í†–BÆì޼bûÏ“gÐ]v³Òª³Ø\;Ü_!>'£+Ô =jù%)JW5t’”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQNÇ„­¬uû­}.çy®žéÚÝ’1¦æ`¬9 Ñs×¾¼º§iú®°5yngËÛ¼–葘¥0ri˜sŽÐ( …M©S DÁÛÄ„;`ŽÀÜM⫥㕠ÓÂ[°ÆÝ¥æJÏß<»›¿ÁEø—…íø•mâækoTi™L(Œ_¶‚Ÿ ^ÌcrsÐWŸ^á5èôø¦¿¹‚-> iDÁË,jÒ¹aôŠÄ€°ßHÔ•†Ï+<0×ׄ\cÃNÒÿ½V ßù,ºŸ¿sñ6ïÉ÷¶}Û£Ò±KËcgŸgke{+X# ÆXF¡y›s9›sZ~#áË^$µ‚ÚâY 6óvÑÍ«8ÊtÃíÊà‚|ÕOuH©Z¶GµâF¸‡‚]»g“œfÍálèØæÜÐX@nÞ”8íABîx&ÂïE´Ñî.g‘¬9ýNøª áWncQìPY‡6³Þ8©)Q¾GÈ׸¸Fݬ½Ö€ €åHØØÂòÖ†—»sÈ¿yÝÏù($¼d5ƒ¬Ùß\ØOë"éb†8š$”œÈ0ÈIIndú ;*áp¾Y$ qvÁµ·Vk«³â+›{©n§´šŒ\Ð*7:ó—RÜû‚„¶ñò/¥G‰Áñ¸µÂÀ"¸<Š ƒñ GÆÉ±ímƒFùqDRÖ]é«y¤Ë¥M<…f³õI.¯jËËŽNv#˜Œc'­á¾·á¨n¡·¹šä]IŒfTR¦5ey6 †ÉÍIiY¼1ч!Îm $Aâú xlÞÙ6ûìnֺ͆žG9ç®V—_Ñ"×ôöÓæžKti¢›´‰UŸ1@ÃíƒûëF‹AÓ£Ó¡šIãŽIdJª®L®\‚lp>ºÜÒ±â?Ãð·vý¸­ÕWu|yÒxlñ<]£ÄÛ³vomÝs\ù(»èÿKÕç{»y_N¹”–˜Ä‚X%sÖF…™y\Û³tV;’t¶ž‹-’UkÝV[ˆÉŽ qnX~iv–r3â>«b•3uš–41²¸4 Hƒ‹K…tÎ:(]£Ó9ûÝK®ÍOrÐCOŒÙ»^[++]:Ú+;8V xW–8Ó8%˜’ÌÌwgbYŽä“QÛ>¶³â ž [¹Þ{–¹f·dŒD¾°0À0öÏ/vz÷Ô²•‘íßN?Ú4µ÷’àMI³ÈçŸ5)Š7l¶ìÈsÀi tÅ-v­¦[k}Ð&+…˜cž7R9S=7‡qÁ ‘Qþàû~æÖúâW¾aç’8„§iË"fLá¶öGLiYlÒ1ޝ!Ž ¹´$o çÝs@#¢Ïl… ½ †» €lt>gžêÃÜgÃד^Çuqw4°˜AcQg켃%Ÿ”IØgƦT¥bI+·Èâçšà >¯•˜ãdMÙC[dÐîy9²¡ZgZi:Ëêö··*]î µ)cÙÜ&.`9¹S¼rŠÖê>Ž,5ûË÷Ônã{Ë™®Z4ލÓ;9U$d€[ñÖ¬zT£U¨Þ$;¶†n¦Ùh6÷sž§'©Q.œ·a‰¥¡Åá¶ê Fq`qÇ’«?±fþ½þJÙSíJDÓ-´È¥yã¶í¹e*»v×Ü`¾ÈåiJŒwNù­­+j&™¡²H\ÐwCF@"ðàŸ™[G§†GcˆÚH'‚A¬“Ô’ÕkzTzÞ™s¦K+ÁÏcÍ,aY×±¸Šà`7²yš §=Ä‘¾+Íú <;c%ŒËp’]Itd•QX4‘ÃPnP!¹cå[êT~#Äf ãá—o-ÅPu|Ö–þ¬üë’Østoê™Ò°Ù¥kÝ#dv÷âljÁ&û’ÙÐÄæ62Æìi­Ž( âÒ¡šWZiZ̺Ìw·Ë+]1…Ò1õ¦f`G7±Í…ñï©+VÈöµ®¡ ÚñCÞ² |)eѱåŽsCŒgs ¿tã#>C”¨ÏðÍ¿ÇiÅÌÖÂÑå‘L(Œ\ʨ¤7>À›cƤԣèÜõͺ4 X à‚8'¢ËØÙXñ¹®«óDÅ@^=:É4ë ;ݤK;x­ÖG3¬H3ØHV—‰8j.$ŠÚï'µŠÙÞNHR6;(PÍÏùƒ cóŽ{ªMJ6G±âFºž pu“vhŠêz,:69ž›l Ý¶j…P°o ëêµúV“§ÚéÖåš+XùØÎI,îܸÎìÌp1“^> Э¸†ÃÔnd’³$ÑÍVttÈ8 ÊÅ[Èän+yJ âýÅÛºî&Éí“ðC <2ÐY´7oM Pð>+M¡hÉ¡éɦ¥Ä·qG$¬2¢²¤¤1‹ ±PÜÄghŽ€TkSôu¡_ÌóÀgÓä–t¶*Ð=Ya0Œ“¹Êž 75>¥nÙæcÝ#ds^ón"½ãw‘[N{ŽýÊÕÐBö67F×1‚š½ c‘€8* ¥z=ÐôÙÒæNßPš6 ­2ˆQ‡FìcUW`w¡e ‘ëºCžÊ¬þÅšwøR÷ù(?eouÞ ´×d²’kÛ˜ •œvH#H˜:FÌÁÛ˜lǘ‚ÛTÚ•±Õê šã).eí4Ünáê»ýJÀÒiÃ\ÑC_[…»;M޽ Xªòª¨9 ¡sãŒÔ;[àËMoT‹Tšöâ !ŽÄQ¤l„A#H¤–ÙbØ8îTΕ r>'nÅ®¢,QÁäd+ãd {Cš «W JR´[¨f‘Á–šF¯.±åÄÒËë9†Dc²üí‚£˜òô=õ3¥+y$|¤9îÜ@ €Àà`‘ÆÈ›¶6†´’êÉä䔥)Z-Ò”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥)JQ”¥ÿÙ./Python/epydoc/Makefile.am0000664000175000017500000000372112176660653015442 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# include $(top_srcdir)/Config/Python.am SUBDIRS = . EPYDOCSTYLESHEET = accessBlue.css EPYDOCSRCSTYLESHEET = $(srcdir)/$(EPYDOCSTYLESHEET) GIFFILES = $(srcdir)/AuScopeBannerCropped739x70.gif EXTRA_DIST = $(GIFFILES) $(EPYDOCSTYLESHEET) ## ## Hook for installing images and stylesheet for the ## the python epydoc API HTML documentation ## if EPYDOC_ENABLED ## ## Need to prefix paths with DESTDIR so that staging works ## correctly (ie make DESTDIR=/tmp/stage install) ## LSMDATADOCDIR = $(DESTDIR)$(lsmdatadocdir) PYTHONAPIDOCDIR = $(DESTDIR)$(pythonapidocdir) EPYDOCTOPDIR = $(PYTHONAPIDOCDIR)/html EPYDOCPUBLICDIR = $(EPYDOCTOPDIR)/public EPYDOCPRIVATEDIR = $(EPYDOCTOPDIR)/private install-exec-hook: if test -d "$(EPYDOCTOPDIR)"; then chmod 755 "$(EPYDOCTOPDIR)"; else ${INSTALL} -m 755 -d "$(EPYDOCTOPDIR)"; fi; \ if test -d "$(EPYDOCPUBLICDIR)"; then chmod 755 "$(EPYDOCPUBLICDIR)"; else ${INSTALL} -m 755 -d "$(EPYDOCPUBLICDIR)"; fi; \ if test -d "$(EPYDOCPRIVATEDIR)"; then chmod 755 "$(EPYDOCPRIVATEDIR)"; else ${INSTALL} -m 755 -d "$(EPYDOCPRIVATEDIR)"; fi; \ ${INSTALL} -m 644 $(EPYDOCSRCSTYLESHEET) $(PYTHONAPIDOCDIR) ; \ ${INSTALL} -m 644 $(GIFFILES) $(EPYDOCTOPDIR) ; \ ${INSTALL} -m 644 $(GIFFILES) $(EPYDOCPUBLICDIR) ; \ ${INSTALL} -m 644 $(GIFFILES) $(EPYDOCPRIVATEDIR) endif ./Python/epydoc/accessBlue.css0000664000175000017500000001064612176660653016175 0ustar vborosvboros/* Body color */ body { background: #ffffff; color: #000000; } /* Tables */ table.summary, table.details, table.index { background: #e8f0f8 ; color: #000000; } tr.summary, tr.details, tr.index { background: #70b0f0; color: #000000; text-align: left; font-size: 120%; } tr.group { background: #c0e0f8; color: #000000; text-align: left; font-size: 120%; font-style: italic; } /* Documentation page titles */ h2.module { margin-top: 0.2em; } h2.class { margin-top: 0.2em; } /* Headings */ h1.heading { font-size: +140%; font-style: italic; font-weight: bold; } h2.heading { font-size: +125%; font-style: italic; font-weight: bold; } h3.heading { font-size: +110%; font-style: italic; font-weight: normal; } /* Base tree */ pre.base-tree { font-size: 80%; margin: 0; } /* Details Sections */ table.func-details { background: #e8f0f8; color: #000000; border: 2px groove #c0d0d0; padding: 0 1em 0 1em; margin: 0.4em 0 0 0; } h3.func-detail { background: transparent; color: #000000; margin: 0 0 1em 0; } table.var-details { background: #e8f0f8; color: #000000; border: 2px groove #c0d0d0; padding: 0 1em 0 1em; margin: 0.4em 0 0 0; } h3.var-details { background: transparent; color: #000000; margin: 0 0 1em 0; } /* Function signatures */ .sig { background: transparent; color: #000000; font-weight: bold; } .sig-name { background: transparent; color: #006080; } .sig-arg, .sig-kwarg, .sig-vararg { background: transparent; color: #008060; } .sig-default { background: transparent; color: #602000; } .summary-sig { background: transparent; color: #000000; } .summary-sig-name { background: transparent; color: #204080; } .summary-sig-arg, .summary-sig-kwarg, .summary-sig-vararg { background: transparent; color: #008060; } /* Doctest blocks */ .py-src { background: transparent; color: #000000; } .py-prompt { background: transparent; color: #005050; font-weight: bold;} .py-string { background: transparent; color: #006030; } .py-comment { background: transparent; color: #003060; } .py-keyword { background: transparent; color: #600000; } .py-output { background: transparent; color: #404040; } pre.doctestblock { background: #f4faff; color: #000000; padding: .5em; margin: 1em; border: 1px solid #708890; } table pre.doctestblock { background: #dce4ec; color: #000000; padding: .5em; margin: 1em; border: 1px solid #708890; } /* Variable values */ pre.variable { background: #dce4ec; color: #000000; padding: .5em; margin: 0; border: 1px solid #708890; } .variable-linewrap { background: transparent; color: #604000; } .variable-ellipsis { background: transparent; color: #604000; } .variable-quote { background: transparent; color: #604000; } .re { background: transparent; color: #000000; } .re-char { background: transparent; color: #006030; } .re-op { background: transparent; color: #600000; } .re-group { background: transparent; color: #003060; } .re-ref { background: transparent; color: #404040; } /* Navigation bar */ table.navbar { background: transparent url(AuScopeBannerCropped739x70.gif) repeat-x; color: #0000ff; border: 2px groove #c0d0d0; height: 90px; } th.navbar { background: transparent #ffffff; color: #0000ff; font-size: 125%; } th.navselect { background: transparent #ffffff; color: #0000ff; font-size: 125%; } .nomargin { margin: 0; } /* Links */ a:link { background: transparent; color: #0000ff; } a:visited { background: transparent; color: #204080; } a.navbar:link { background: transparent; color: #0000ff; text-decoration: none; } a.navbar:visited { background: transparent; color: #204080; text-decoration: none; } /* Lists */ ul { margin-top: 0; } ./Python/epydoc/ACcESSLogoWatermark256x90.jpg0000664000175000017500000002233212176660653020405 0ustar vborosvborosÿØÿàJFIFHHÿáExifMM*ÿÛCÿÛCÿÀZ"ÿÄ ÿÄ@ !"1AQa#2q3B‘¡$RSTr‚’“Ò±ÁÓbc£³ÑÿÄÿÄ4!1"AQaq‘2R±#¡ÑðBÁáCb’ÿÚ ?þþ4ÓM4ÓM4hÓM4Ñ£M4ÓF4ÓM4ÓM4hÓM4Ñ£M4ÓF4ÓM4ÓM4hÓM4Ñ£M4ÓF4ÓM4ÓLëà û~Z4kîši£Fši¦i¦š4i¦šhѯ,qDBsŽl8Æq’3ŒŒþc_h\ñIccÜá]Xà{œNÏ\×w¶ûžäDYtVZõ”{7«1ð=W$†íèඣЙ¶íÊ&“Òa™¡˜wÇÆ)GÃÙK~`–²ß‰m†1Åó|Ë{]2 ¯T.ÓU^¤'[|$¶î¿rÚ¯¯Ÿ¦º¶šdci·ÝòžÁEîÛlœð‚#«bb XÐaØ—séEœœ)ÖŒe9ˆÊRhë«”aRHÆ%«Ø5¹Èä C—qÛàb³ß¥ u–Ô°üÃȧøkóÖçâx–È­“¤s1H6Ý¿¨¡ý™:x–ÁÀäæRc,©Œ ¥Oѯˆ,F$éR,3Òšg’aŸé#’1õûÒ~š¾ôÇê:˜b“ÎÀÜþâ×e"ƒæóÿŽžI'MÓË,Nó]§Úö¶ýwHnÓ²q^ÝYÏÊJr;jN¸1ýoõlW‘¸–xYú²H¨²¯6+b8P•\¶Fbaœ w…|¿ýÕlø±ccò³‰nZŽÖ5T<½í«Ï}ZéòåÊKæáq1JæÉ ò4v®i{šû¦¼³¢wgUÙf¿Ë¹úN0ÀçÛþXÕ}XÖ3bH3D$d@Aà‚}DZúö×Ï1_úøÝOùk”n×HöóV?û_[¤ðµùKTUp ËÄ8Î}eG¯Ï’SŽ>˜žÆš›Ç(_uª§Q9)[«½KÞ½>¿Oӛý|?î§üµ•Y\V §Ù”‚ñ¿msãá]ÄÒÕ?”’ÿÞnmMcdØëÂ¥E¢Íd<•9ei2Bûd 3ŽØÓñõYk$³àqc„nÖÜj!AhñÈTdrÏÄäÆÂ1Ýݼpw·öÕŠ[U ÇZÄ1g¸êJ‰ŸË“ ÿ†±¥ú2åg'Ø,ñ–ýÁ³ü5̩ӵºÙd‹¹Ie•˜…“·v$± ïòÔž¸ªzv vø‘"ù6góI‡[Ôåâéwcü\µ]š.¯š‹_¦–fÉ#tq\yóçÐþƒéå«öAÇÌwÿ¦°Ëf¼ëO9ö2È‘ƒù ß­%ûsm›4=¸ÚéÁXÌC­»d!Ž}$ãÜdjV­­ÖÑDc$Ï—’IXªݽD€HžàŒá½GZâ”1cÄäË8‹Í»» ËÔâŽï§y3lHÆ,¦‡U}ŽÜ¿mtå¿Eû%ÊÌ~K³/ð½D±8\C°p¤™8î#8©vÙi-f|iz|ýLq†&}&7$1åß&Câr$@Ÿ;IaÂRkô†ÕâA;¥{Ác‘ˆT°§±=€‘IÂi}0€gVíqÓ áœvÄ‘e—Üþ%~¸÷×Nðíö¹HÇ+r–©XÙrÑzLOÄ€¥ øñÉ$“Œ¾‹ªÈä—MžÜdÁ©B^©J=ÐoËSÓægà“j\eêw§ôä~·å«ši­=[ÓM4Ñ£Mh›·SE”ŒšõÉ!@@–P ‰2ˆQ£fn­jo-VÍ‚2 ‚iˆùô£gÇøñ×åý¢¿Úûõ-1q{qŒÙbO)Iº–;ûòuæ÷äus Ã Ë&\¦èaˆíKÓÏi‡ºžš¥×æÉrc,Ò­ÃH\@’Ùwô½nvïx“Ä1‹ø9‡$µ¹X4ãßš³NÈÙÊÈÈó•fõkðÏ„ZþïÊò=½Ï=Z‰9ÂFR&î7Á^v÷{ë–í{„›M¶fF(sˆˆâà bD#Øû÷\®y•VÜ"Y«È²#vì{©ʲû« ÷ì}ˆ'U»lî*ÒÇÆ`zdÓ&=–P=þAÀ,½¿uF«jÞÑm° ¼oÂxú\)ÁVÇlû”qÜg’œôa<¿™)¿§š±™Þ+Vžçv~ñ{Ú K§vËœkļÏóÌú§ôæƒnd…?Z¥eˆÀÈ™sðæ¬É’p2 ì5@ۮ˵\24mé ñ†ã‘È`þV‚{d`öbGN¯:Y†)ã'„¨®¹÷€8?Qœ®u«Ývh7. EiAã(‡Àì’ø”û´íÄ ›WM,²‡SÓÈ2ÀµL9/ÏŸhÓ2ãdÇ&7ÇOI'·÷ìëaRå{Ñ «ÈO¸ìÕ×9VFb +\¦ îl÷.cš'á,Då$ö_Ô¬(ß^JA×N©a-Ö†Ì}–dÅO³)ú«§ê™ÒugPJ2ŽÌ°üqì<ÒƒÉOó uÖ¿0D©Ç¹ëå~Ü÷<µªÝ¯ÃZhbrYÌÎc^ÍÓŒ¢ó!O­¸žãìFh©nµI7 aXSÍZó̶ŠHÑ<шå–2Üx£4 H<³c8â5añ¦ØöëV»ÒW±M¤g‹¹X쪇) ª{¨Ö}5y ò"'²S§¥ˆöxuÈ¡’J7Lq’´þ¡ýÆÃ¯Ï )úªÿŽ|95k’o”£i¶ÝÀ‹2¼kŸ-<À4 \ñŠw&TṈxsíRlÛdÒ<²T¤‘‹»e˜äœ+Ü÷=½Î¦ÇQBµÑEW€½KÃâyg+ŽØ9íÛØ¥|(Ïðܹ%º91O¼¶žüÄ %r]%R.¨O¢ù–9È«% ã#ŽDF¤_‘^ÜÃ<µ±×Zë›ÔP“:v+%™˜2K"JÆüJBÈVý(ì¡Z;£>? GQ?WœããŸá« ßøfó™$Ûc†FÉ-RIj‚IÉ=(]aÉ?žŽ¡Çú<ðºµKèÉrÀüoþ:Ùžo‡å“9áͼȅŸ7ñ‡>hE[^yÒá‡âÃrâ”#ÄY]À~ £ÑÜq]«Y¶ ù¼]OtÍ#J SF7iºï#Í õ‹J4’És–³Á/l²‡^í¶ÚH¡â^ŒnpÊe#´‘° áµúwnÛ(m5ü®ß]kAͤ1£;eØ(gf‘ÙˆU³€p1¨û¦Ã´o!~Ò£ –Q„”óŽtÑYáhå žü9ðÏr½Î¸ÁÕâÁ“(c‡ÉF˹D ¾Tw ¸eæSÅ=çé2gljrŸ?¬ê£%E­ ›PÚíìr[e¿éGjhÚ¡¸Gcˆæ óEËøI$ð±\ûrŒõÕ»bßFû·M¹%W©Í,1 ¤WyR$RÒž ‘š>!œ›]ð5Iú<ð²·#JwϹkåè‘æÕª¦ßN4¡R†¢+¢Â¥ˆ #3?©˜¹.Ìرl’s'<ºF Óãɯâ›á‰]ƒt­°îU+w¦àVKùóÄÀŠs.)V'}žþU®O„•$#!dW+Ÿp¬ŒàûãÇÇW?åtØŸýÕÿ†·am?Ø£ÿT¿óÓì-§ûê—ÿ&¼þ¬Á¸Å›wS.]vüX×Ííë¢sBöÎÕñ¼_ñãF|\¿³Eç8ôµ;rß&ÛÞ£yt’+0uytpFB¾HõÝ8ÈãNû iþÅú¥ÿž¥O·Ó²¨“À’¬cwA€0¬0Ã8ààg°V#‹®Ù—Q{³å¤@ŠJå»ùe’8¤‘ìi„sí•ä‹.6¡@7á,K9ZÕ{ù[W‰>VÇBiqü\Ÿã©ÕvÊ4*ÕÒ7î:‡/&b:ŽYÀ?ËÛHŸKÖu cÔeÇòâ߀å{Xl5}Ú/ƒ\Kl”dœ6ðsûÕý5¢±z×Ûk˜£™Z©b¬$N‚H20 ‘Ý~>•µxçËXçƒéÌ\sòåÈ6?ËŸÏVK4êÜ ¶aI‚ç1’¹Æx·f\àd©íòÖ7‡6–9Ù~‹<Øþ.tùâë#$éòã1THÂe±ÛLJd¸RûÑ|îQÌ5ŽQ!@FG ù_¯¦¨7,ɹ\’ÇO3ª¬Q‚ÇB" YˆP3ŽíÜ;•µVj{}jïøÒ2Î>O#4Œ£æ±\üq*ít)Uë¢?o¼9yÏå˜gâëa¨é:IažL¹dO.KºíÊIm Yðq£”å+”®ë·(¾G+íûëÐÇ£¸x‚©–kT÷—ìPÜTMÜòµ'Ü„{…xa®ÓK\WÛçªc¬è³#Cjc ã!M7B†ží·}Â-Ñém]isÆÍŠNPbH+²Ê‹}h¤¥yòÕíK-u¦Hì×´¼Sm²²Ã/SqŽfëD±"¢ÅMñæRE=ž¬¾b6`Ü|B”ZBl?B¦Ï Úç6d³m!ó“ÎX<Åj2Ɇ:“¸g34RáPßµZñó6Ï6Û šnó¶àYI‘kÆkÄ& ä²²HX0é£{{éÐÈd‘`ÅrìQÎÕ’^ÞìFW-ý(8âÊY²PRóÆâ1%Ø—ÿ®kñnñ– ’Ö¾ÎÕ šZñÁs¤“§‡wIeŽ:½X¢bû‚A†RU§h”Ÿ¢ë‘7½bâAå;rÛ¬´jÛÛÒ¤^:ìf S¶RwXY£@QØc>,¿^žØöÅuµ×½.ì‰̉N–êv÷H¸³e1‰¦Ye%“”%ÀÓ– &2Ó’¯YE–"hkY±¼ÃµÉ4ͪ¦:½I ÄYV> êa¬eº#ƒk¶íþZÅòóÜ'€…éq”X©Ÿ!A)¥ãŒd(K¸Fšì©Áw÷z2 ÿÎ>Úò_g"6_9Ômϯ/TIå>ïª!¼¨Ü?˜’g2dÄK;¯ˆcšêCVG1y•Ž96éš8cŠjiJÀ³X®=Èå°óAž™FãÒZïÔÃs}ݪÌô’D·%{ÒÁ%º”y&…6¡¸•ZmzüÅv%& g-± °±½n0í;䆽‹ç„܆¾dY*¶öá`S+#ýùŽ®a^r©“î¹0`úàŒƒÃÄðŒšªÜJ˜›IF*Ûl›–ÒâôÎ+‘ŒçnIlc6IÜÅVÛÚI É÷S[-7ª4šH"™¶ÙF^$¡µÃ Do¿’ÝRÏIŽ¡Ç>RxßAŠ7«1ëµD¯7Ù–@’3¿ÏRÅ‹­Fm W¶bœÄ#iyƒÓ'ñOUv®b¤õf‘íÞ/]åO(7Ÿ'·KvHdˆC&àe›·ó"cÕã7ímÞ±²ÓOZÚ×ßcÚzQRhT4â¶Ò+y™q#õzJœX¡²sÄvÁðc%ºO<^ÙF;Oþ!AŒ„©*pKĦl¨F'k­ÆíÍÊÛ,(jCä¶çâ4M¢¯ ’I,ü“¢s™ìUªØš8Fz‚irdŠDÎûöïZò¥¾äû–Ô»uH8¨ÊÖöèYlHÓVqy£Y$¢ZîH<Š'›^,·åm=hâŽÚîF¤æ†Y!Sg©zü¬G“J—ÞM¼J "<Ñ1 ªXÎÙJë'rŠ5É+x`%*'†ÒFÛш.l¶Ú1M9¢éÝ㡊J¤ ÛÄjýYiÈG§ %uqá¤ÜËÇ'PuJî¡èƼ•˜Àd3q+›c¹»Ü¿]賂ãJ{Ìn +Á#%ݤҖHåŠëµw°"c lщ¸(Lí¶½Ùw7B¼f²&Ý5V8Î3‹áám{ìÚã½ö½¼[$ “~nIBP‘Kd^?öÝe>Õ$Üj+›à4£Š+‘,±Õ®ÓÙ¯*G&í¸Å%„óK\‘åV a’Ü m+´ÓÌ ÏSyñ ¥i.U•ÑþÌ’ÇKl³Î$·OvëıF$˜­ÕÛìѵ¢®9# ;xÝ· çz4¦¬‹µí»}øÌV°û¤sDÅg‹ˆ&¬\d§[˜)"k{Í}ÊŽØ^µ}Veº èˆ"¤ÀîHÕúòy’J©Q•ˆGšf‰CBˆ®,>?+¼Ç$’[<¡8¨+CQ[ÕdËáBÀÚ¬˜FÍ×Lâ—GrЧU¹7AZKIVãÚ°6éÌMFÔ°# ŽŒökÇIZºÉmç ˆŠ ©*<ðH¬Í2MÃÄ…µmNÂöôÐÛlOÕ’ëý•·©P«;Ë+‹€ô£…2¡ Êý¦•óãÇòqûû€ØÕW—›¦˜$æÉÛíͯ~òóý|é5L»„þ~[ä*Âåz æjÖ§Š)FbÓùˆÄn²D*ªÈ2Ço¦šDÒP"=€¢¼ƒïÝymçN‰¶ ¬“º÷úìq¦ši®uÖši¦i¦š4i¬3V¯`bÄκ4I( 'k‡Vô¿æ¾ÍÅr³i S‘§ÔѨâ¥AÕÅjã®®“âÇY$ye‘%Âý⼓Í#«ä3Í+°-#“6í¾1`GBš c‚UE‘‚¸œa‚F$ä0HøLÓSº_™æ¯—šªûQ^”j(ô>Çùæýõ 4«,IZZé;@׊%…¤R²4Jˆ¢6‘IWe¸$1 dJÕãX’:ð¢@í$‘F« Ž$Wx”(»,Ò«2Ì%C¶si¡Ví[ïjß~ÿwîúèìÐ=¿±ö= EZ4‘$‰)ÕH¦N”Ñ­x•%Œ"9 WLË!àÀ®d~Þ¶Ï¿-[$ùx2fIéG“aT"ÎOó** —ñ…P¡°Ö}4n—æ~ïùä}´Qè}BmÛ¡3hRˆØe{:°!ѹ«ÍÅQ•Ç5gäCú ßY–­d”ΕàI˜ÈÍ2ÃÊÍ(ŒJÆ@¡ÉC“—F"5Æ}42“ÞK}íyíý±é£lNÑ íÁÇ7ûóõçPWlÛRT6ê)4\zS-Jë,|„‚0éÄv^$q†³5J®jÕØ4Þ`††2 ŒqëTƒ7OTúñÛ–5#MNé~i}Ýbvˆyðý¡öÖ¸lû@ŽHF×·fáÕˆQ¬#—¦IŒÈ‚..P³,I\ué¶­­ÌEöÚ`DŽÔ뱆8Éh㈘ɉ(©…RIP :Ÿ¦óüòÿéúzúúj6CòGÓð†Ã·“Ï×QZ•&H¢j•Z8„1µxŠB‡)ãåñ@¡;zFÑ¥8”ON¬ÂfG˜K^¯ðå„Hѧ¥òQ}*@í©Zj7Hª’Wn^9¾?^~¼êvǵô<Š?§MG5*ÀÖ®C¬*àõ*êé`oT äD{§¯o^ †H!s4>^Rñ£`õž„…”—‡2Hzm”õ¿§ÔÙ˦‹}_»íý±é¢Cíþz¿}G’¥IC,µkÈ!]„Æá  ÈBÁ”ƒoPŒåw žúÆÛvÞñˆ^6„F!5h1È%X‚*#Y@&8‰p9u3M¤v’W%/®±ü§§c·¦¡¦ßB(ÞèÓŽPE$IZŽHÃHâ7P+ yepŒ †’F.ÄÉ1FÒ$­4±‡Xä(¦HÖN=EG#’àœÂŠòÏzhUî¯Õ_*ý€ú(88â&ϳÉè馚j5:i¦š4i¦šhѯÿÙ./Python/epydoc/ACcESSLogoWatermark512x180.jpg0000664000175000017500000006271012176660653020464 0ustar vborosvborosÿØÿàJFIFHHÿáExifMM*ÿÛCÿÛCÿÀ´"ÿÄ ÿÄP !1A"Qa2q‘#BRT“¡Ñðbr±ÁÒ$3C’Ó6D‚á%Scsu”Ãñ4Udƒ²³´ÿÄÿÄ>!1AQ"aq2‘#BR¡±Ñð3b’ÁSráñCÒâ‚¢²ÿÚ ?ýüR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥(N¾'êó®¼»ù}{í­ùyùÿ^t¥v¥uåßCD|yð®Ô¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)\3>_ݾ½šÄücaûe¯ïâÿ]E™V50YÚHóõÏjÁ n@õ1ûÜ|ë2•‡øÂÃöÛ_ßÅþª÷ŽxfRÐÈ’ Ø-+®Æ‰RFÆÆÇÎÑŒ+)=ü¨;}?½ÇνiJT«4¥)JR”=? à°Gá¿ëçJW4¨ûœ¶2Ïbï!glGèÏs M¡ßa]Õo@7ò¨¶êþšS£˜³ßöd.>ô ?MÔÅ»Œ%QØwUc¿ 5rÚ˜kˆbÊÈš²R #ê®”é38ð·s_ÿc'ñíRÐ^Ú\ÛÜA8ô0Í ýF7aük ޾ò2ÿ¹HüÅâ7ºèßí`#Y4®ßëúÍF§JR”¥)JR”¥b½í¤Nc’æÝN™^h•—ÔmK†#cȃäk¯ã ÛmúªâÔ °‘ëœV5,Æ¡=¤OoÏ™JÃüaaûm¯ïâÿU?X~Ûkûø¿ÕXæÛûéýÃ÷×óìk—ï/Ì~úfR°ÿX~Ûkûø¿ÕOƶÚÿó®³Í·÷×û‡—ëûƒMK÷—æ?}Gγ)^QOáŒ3E0R¤I8ïzåÁ›[ÑÖõºõ©Ab ƒñ AÈ2;ŠR¼žh£Rò:¢6v£ëf!F¾w!¯uî+È>ÆYHùƒª‹\¶žû¢ÏÞ`?2*%•w`=H½ê^• :‡ïZú᜿Ã×ñ¬¨òØéÝÞ@~ȨOÔ²cöCQ[ö[ݽlôìü§Î°.!ÙÔÿù/?1R®ªêãjvˆ ‚>DH"»Uµ:R¼ÞTK¹ƒÍ˜ª¨X¯U&s!®ã$vÒ—øÆ®?A®[O~â/û™Wó"°YFäRçRÔ¨QÔ8ƒÿz#ë†aÿÓ¬ˆòøÙN’òN´Äg¿ÊN'ø|üª+~Ë{·­ž˜uŸ”ùÔC¡ÙÔüGXýEIRº£¬Š2·pÊAo[Økµ[¾Õ:R”¥)Jà$è Á’ð¨ÆþgËæ{ozû;TYÕ±ÏåRTg÷A;Oa$óµyÝß,©’8ÀÑ/#(ùlÿØk×z{ª²y|}ÒÝãó÷Ò[\;~gÄu[y5ÈÆ£ŠÆñ¾ï%ÑV- Æážs%ÌlXàUÀט*G!æ½r4k_u9CeóQ"Ü#ä¼Ê˜åV!wÈ€JìëCµs8j^>Û³ÁòÕ¬]¹Êpë®QÒT…#JÁ)';NH­¾;€µü&ç­–êZæ)VÓ¬5G½  À‘YX®µÈH »Ù’V $ÅËD羃«ì#tºè„ó«Å·S_ÄUf\¨:;Q‡æO±ìèhV‚«¶$n#6“12»‰˜÷’! T’{´gCzÛ!ôMuý³ìËœ*7{ˆ‹üû‹"Œ}b+ k\€ ¬( y.‹»:ãOÙ$ÌžÄö1ë[ܳ¿Ò+´3žÞ 'û ²²|‚éÈ•êj´À$A#Zî=;ï¶õäjá„ϰuµ¾rCib¸:Ø>Ae> úHNÁúG‰Øãð¾ÑÖÂÝðªÄÂÜS·¼ é'9‰I®­®'Q ð Ù¶"{Ns´ö]é\±±ë\×Z¶éJR”¥)JR”¥)JR”¥)JR”¥)\ NÀÐ=Ï¥*¨¯¥™‰S]æ±x¯ÿ)â5ÜÞûv×ú¾áþb¥3ÆúöIn(ÉŠ¿øjH-¯O‹?~ú:>B±lm^òî eßç?ª€rv?  ‘¾Äèz×›âîž'ˆ!2íŽðbcͳ=€í\Û¬nÝ…2$*öí?×´v¬]Ÿ—Ü?•[úV臞ћ´€MìTðyv,¼[·¢j¹‘µ6w—ÝøÇ!(IÙ(à2}O6~;®q÷^Éymqä# <ýè›jãþVo·Gê®Ãž‰R`h}Ú¾C#ÐTm·.â“Ñ ú×ñ­µJêX¤Ã`QçÛì;ú»×jõÔ¥pHf‡ÈýF´ç\õ”ž$ØLL¥=Å}wi™ÆÃÛBÃè…ú3ȺbÀÄ¥T?;¬X~"඘êÌvUœ“ù¹òÜQ~úXBïðv=õëÛ¨Š±õ_ãñM%­Š®Fõv®õmÄK0߈ê{4q¢ ´ˆÂµ&O«sÙRÂ{ùb…¿îö„ÛBõHŒ‡|æyΫu1‡Ád³“˜qðG‹;žðÜe €HÙTPÒ7è¡#½k…á¸e,ÁIZíÈ1܉ŽÀAèI9®Î+‰â[B–Œ vç;om¦N¨‚I$’I=É'dŸ‰'θ­ã‹ücaU|¥Ì÷²km-ìÖãû>îçoïx‘ìoÜUh£zj%1Œ×çI˜ým4®Iù“üj·öŸ¤…ÍT?ÜTþj{7ˆa,Q& Xæ7ÒëÜùÆõó5HbUŸ)ŽE$/­#Ú’§ß¸HØ ÷Ý}?DôÌêCbbB|š &€ž¢TýEHߘ"¡£üã­rWöW—Q [¸.M¼â;„oU“‚È.›ã­·‹£ßDv¨iXu`EÄ%HÊ“q çlÖ†ßFFjRt’3âQ°ÏüÖÃO^ý»†Ïñ5Þ¸ÖˆÖ€õóíßî®k=ñ˜ü`|ë»;O^ø?÷JW‡Çåý_¯»µBUî`VEZXÃó·ü<ûT 4‘Ü|ë"•æ“E Ür#-£xØ®ûȃXÛ~Ô‘ÜV±Îëñµéõ û좻ô?x¨}Ÿ—Ü?•Jçy[Íyxƒí4vÇߺŠ_×§}¶¼øçÞÛù·?þÏü~Ê}¿Ü:lü¾áü©³òû‡ò­…g€ÆMim+ÀKÉo ¹ñgfK,  ’N€²?'1?³Ÿß\Ö­Åöe憵=ýŽ“÷:Oÿ¯ÊáÃ9Êä׬yyŸ—k]Ÿ—Ü?•î7­zöʶWäæ'ösûëúÕÃtÞ$ŽÖìÄM1?g)u÷î³ü.ÿFµóq÷£áðùgè·;¯ÌùyyŸ—`tÏxÃÖhǧè¡#ËûÕ'—˦6*‡¹“Š2{;_D žÀ±$fXãíñèñÛ«*ÈáØ3<‚…ó$öзç³ëZÿ;3K“»'Ê& ß`ª¼H»mù6¾,~U¹uîp\´.΀A¤–faÜ1"ŽÕs3Y²£ýÐFbI$íÐ~=ê>æîæíÌ·¼„“®Mî®ýF•F»{ oÖ±k‘þÇóþuÃ` {x®¯Å2¨’(˜ˆ„íK »0÷¸±(Ñ÷›6nñWX-ï3±8$““¿A3ùj"5Ö¾ä“ÓoR¶~$ý}ÿ¦Éÿì;}]»VÙü[`gmÇ^^Ïþòž_*ŸŒœ-üÖƒDÜü ´~]€)[‡Ùw£ÂöØö!—¶ÄƒðÀÚ®<+ ˜Úæüb»á–2ÌÔ ç½w_àó®Ùlœxè‘Îi X¢ŽDklÝ·Áv9hí@ú@{1amº;:ÆïÅœ/.29`bG"6ßž…Qz’f“'"xÃhƒ~A—Äc¯BKü@­ë÷_†át%»s¼8Q¨õ Þ<êçvµd}ý!gp$÷ˆô'ñŒ»¿º¾r÷3÷ØO£|•ºòÞ‹l’kúþµ\1éßÏáW & ˆRòíYÕÉ0Ââo¢ m•¸¨ÐÐòØ‹jÕÞ*áU:˜LÌI I9;?â´•^ë2ÆI$öêOÈU;ì×ßþdÓúþ¿¯ª¶ÐÆX±Ûkà`„Ÿ´”;?2I¬Ið8Éÿd·£B|-|¡~¦C¿Q[ì«Àbå¶=Ž¡ò0« ñ†ö ŽÛ|û «§N7,T{(ó)ûdgùú0©ÊÀÇX&:·ÙÐÊÒ/=r^AAR@è®÷¡çåÛg>»’ͤq ˆªÀŠÜ¶ ¢©Ü(3µ)åJ¹¹$”Œé|˜ŽÄŸ^ÿÃìíëR{‹lK :“û3éW"hæNÏé½w¼™*ff:ùy}~Z¨™åHÑ™¤Ž&*Ü „*ò×»ÛÌ€u°'æj')•´¶º³Æ»îîô³Æ«ÜF‘«žr0$e1Ç­–`ÇÉIªì„—rÌÌC0%‰cæ}NÉïÿ•p}£Ç]áZÓ››«ªÙ,B•‰ˆ:„©Œ‰Þº¼ núº­ÜÛm¶¢€Ä‚R$ éy£·L«dc7—Ã$D’ñUœD6ÛsÄÁôá6ÈòU«ýžòÔÞ-œO Æ¢hÁ¼lÁ8JÊ8y!) €$Ø¥²¸c±‡y”\ÞøP TieuVŒ–cØ:€Äó©ã»³±x¦²£œ'ûJpx"+"°YYYŠ·º™UXŸulYâ=¡{Ûœ%ëVžÍ«­Á^ºª¢Ø{/jÏ43’¤Û*Jj$ ÕEÛ¯cñ6nÜKix«HYšá[ª÷4B‰ÓrcSrIˆÖµ‘kpö·\'œN^\—É”ü™ISò5Jú;¢ÜVG‘Ô«©ûJÀ†Ô_?#pAùVÖGY$C´tWS½íYCö‚ w¾}†Æ¾±Pø ÌøèÕ›½»<'Ôñeûnù.‡Â¥ëåUƒÃq7øs½›¬“ÜtŸŠÁø×UR«m lœÉ›˜M¤Í¹­Ôf=ä„ñPNöKFHRwÝJ“²IzÔ¸Û“gyÀ$*È@=c}«zû¤‘ó*Û+ä={ð®×³ïóléc/h…$œ•>á>gà;×K‡¹­ ™+ƒÞ1óûÍsJR·ëb”¥)JR”¥)JR”¥)JR•\ê,‡²ÚPŸä€ßÑ¿Šÿh!‘Ûl}±3˜èI'ÐäŸ'ä ­W•½öë¹fÙðÁð ì"BtH>^!%ü·³¯!Z>пɲUOŽì¨îí·My™UîhBñ0 ~~ãÌŒnûkæO߯åW~—±ðâ’ùÆž_r-ŽâaÍßé¸Öµ½GçïUBÎÙï.a·ÎG¶¶GwsØöU÷óÖ«lÃpÅH$qª(íØ*èoçç¿™?Ðömw æ÷má|ÜþƒóG n[˜vYýǯÀOÄùU3ªmxµµØßS „~²íâ'ë^cã¥ÓUQÑ^Gúþ·[K1l·xûˆ†‹…ñ#§ÝGË`KZïZ´ù÷;>¿_¯ÝåUûFÞŽ#P·WW–¡†ùàú“QâSMÂцÈõø?Ù˜ŸjÇóÉàÜO˜1è&ÿ½}w½úTÝP:bï»–Ù‰ pœÔoþ,@¶»lwBÛ'õ@Õ_—¾Î÷³¿¨4>êëðWy¼=²wQ¡½W2 ™ï[v[Uµ=@Òg¸ÇåPëLéÂádx[åé6¶‡~ôlÀ™'û˜Á*|„­;GçI$’I$’IÙ$÷$“Ü’|Íl/ÂNDÝgÉ[óXëhÓŽû îBÏ)úÌfÿÁö y^·€²-pêßjì;#î@¹õc\>ñ»}–|6ü*:OÚ; Î=©ÞÁÏŸÉEe)üíÔú؆ÝH Ãл’#‰Obì Ò†#éLv6Ïi œ+ 0ŽÊ<ÙŽ¹I#y¼ŽFÝÛdŸ-¦þ±Ke„[Ö@'É»LXxA4Vé½}IGøÃ}ûVÁ®_Ä5ÛÍl«¶JаÃ1ï™xšêp:Ú´¬¸D¦QÖ6žçqJR•¡[ô¥(ÌzRº³*Ì@P $¹Ù>]»ïÈI"µ?Qþ–ÞI,ðj“È¥’KévÐ)ˆ¶‹cÆ#¿ç\ˆ‰T‘HjçðÔ® Íø¼¨$¿‘ŠÀÿîí¶<ŒÀ—Ëq^ë+V˜®¿À£¢Þ¼5+eìW3 ;¨8;™ãXÙ²t‘Ün ¥q‚6cðA5)}šËd˜µöBêàÐiXD7è°¡X”|•¨º¹ô×F_õ.ÞÇŽ WÚ É1S¦[xö¡€ «J챫l•lø?9 –;«§×wšæD$ýVþ Ñ?3ç[·8Ά<±:„ÊZQ ¹•YòDfµ-p|Mð.l­=Æ2Aˆ x˜³çŠÐ $‘0xÝãaäÈÌŒ>¦Rûër~ ò ÆÊ%ÝíÕÔ6égà¥ÄÒL"2{W.#1PD`»:–¹üôüÊD&òѽ W>"­n#”‘õ2ŸŸÆC¥ºTôÓßkQÞ=±Œ˜¼'E„OµpDb|PR7£´ÖŸÆp÷ø{в.:C¦pë$ 3Ö|«o…á8‹ј‚™ÔUä F'¤cÒ«™†å”½>cÇp>Íò¨áßî?ÀYùRJôÚgt¬?Ëî¬ýw×oQéçõ×ÎîWnž÷ç͉ŸúëR}¿Üß™­½f¼m-—õ`‰~äü«&¨©Õnˆ¨,WH¡F®v^^jíùZÿ°¯ÿ2ÿô뺾ÐáB¨Öp÷0û¿¸ôñ~Ðjè://?Àö«Å*Žz²R;Z"ýs“ö쪟²²ñÝCq}{±·…Rüˆy ±»öåÛÍtjkÇðÎÊŠä³²¨eˆI¹ô¬‹ö˜€É É6óô«mkN¡·x2S> %Sèt¿ÚIø€Aò5²ê/+L•¹ŒñYP†Ml«ümðq Ã¿¡ÑÖŽxÛý’«ï© žd`Œí ŸŒVo[æ!Þù|{ÿŠÕ€v+cà21ÜÙÅaãÛ ŽEÞ‰EÒ¤š>`>Œ¡RuõżÖÒ¼3¡IP÷]v+ßÞ =аìAÝ-ç–ÞTš1ȇjÀë×d7˜*GfR4Gb+‡Ã_né%IÃq61 ãÍ{L޵£já´òFø`pb~r+pÒ«Øœì7¼b–’âIá)øÄIìÚîÈÄ‘ä¬Ú$XÈ×£·vÝämƒ)ùƒØŽ‡;WEY\jRïùÏcÿt;#·Ÿo?‘ÝkÞ¦¶hï–n>åÄi¦ô€#©?%ðØxùùÖèü•„y vûï#¶I<Q܆RFǘ§Œ°oÙd_xËæÃ¤ö ‘ëªS˜…FûQÓã·ãZŸúøÖÁéÌ„rÚ¥£°[†P»îñr,¬ ë|yaÜż˜U"òÒ{)Þ„*à{®¾Ž‡¶Õ½ô>ð yE$°ºK´n‡hêÚ*AóèFˆ#`‚6+…ÃÞ~ö¢»J\Sƒ ŽÄ™ZÜÚy õVS¼u ÿU¸üéU|N~+®÷L!¸=•û¥>žzçÕ6UÑÑ< ùW¢µzÝå×mµ½ÁìGCåÚÄWI]AS#Ï)JUµ*á¼ÔjHqË~dÿæ4 ƒ½öí¯/=K^Ïì¶—W%y‹{k‰øùðbi8ƒý ¤V¼‡',øè¯-åQí ¬Tªî5"¨m•+!*G˜*Aî+Ÿí6m­â¥­‚ሉ ¥YD¤äޤv­Î Ûh0B°D®­$à‹ëÒ Gå±·6ýWÍ*´öR·˜€O³»C-¸ ;ê)C©Fò–VãÉ X^lM«³„²ì±ZBž^r*};óªÍÕÛªµÌï$‚YÛ“b°²ÊÁA'ÑN€×€ï].ïì”›ƒu†UGË®J)Úòo= ÈÄoµqøhßãìX¹k…l0àílÝoæ!AÒÄ>˜*³¼×NÇcƒ¹}ˆ+ÎJ¸5ò×ÄUIÊʆ’Daã¤ü_Ì{(ÒîÙ/ÈVN®¸²‚@CÊÜ6 U]êŸuœ·‡&.íWÚ#k&µ”Ñr&S*•.„û¬¨vSDrÏbgÕXÓx5lÑDΦ ˜¤‘’Ø×´Æ 3®ûø‰ô|Œ, uê^ö_¶ø×àx±mÔ/ Â=å¸âÛ ÖHWÀñê+m[ÜØŒÎ+›gÚ^ÉᓊáMÄ:øŽ!-kÌ^Uà{Ü ²Î¾„l+]2²³+)VRU• ¬а: ‚ ƒØ×ôvc¥°MºNÜK8r6aXÈ5î™x‘ÊÀò"M{©$~CKgzW-€r×0øÖ…µìšÙì$Ïm¬€{#¸ï^æÇjü/òîlm·~ºNÌ'nã­xÛüÛ>!õ–ÎC®`PÉ¢Tô5‘ÒòøÈI×h¥_³š0ûv£îíVº¤tÛjúUôkgûÖHóþ5x~]ýÖöO`õþ>^F¼/ÿ!·£Ú—ˆÌK/ñ媙CûÀ»‡3i|‰r<½u¿OŽ»wÿÛ–k"ÛZ‰ æ¶ð‡ßr_Ã^@üÁøŠ£ã±^ÍdrKáÃÅoœŽ;¡eôŠ„By;k =ëͳ;Álï½¼³|92‰óõ¬{6Ó[.Ï*ΊB†`r5.6ÈÅu8d+¨° ã¿–~u“JRºÕ·JR”¥)JR”¥)JR”¯9cBîÁU31òPªÄ“õkíò¬·QÆÉE{a1­—ÊØã”.gU‘€ÙHT'qóX•Øzl ÔUlÁ¬jýDÎÃf}˧o&i ˆŸù$qöý‡Ô^nOq˵á Xüã^bÊó¸„WÏ2à-=dËyç?¯ZßÖñZCµ¼iƱÅ *"ªÙôÏ™=ÎÉ5ïJW•ßzõ@€¥u/¨ƒ¯á]««ÇêÀî”?ä~$V¤¿<¯¯Ïw3Ÿ¾F5Œª]•W»3Qå²N‡sÛνn[ÄíúÓH~÷jíf9]Û/ëOûÜ òGÅp¼çñ5Éݼ‰üÍHþOeg_ßÁÿRŸ“ù_Ù×÷ðÔ­š¾^žgËËÌ×5Ûþcï\þåòþ_·¾‹o»|Ç—ôúþöÖ?“ù_Ù×÷ðÔ©|.þÖþî! ,¾ð’6ÑhÝGerNË F¼õWzk¾ûýç_w•Jß³¬Ût¸ä£²H‚$h'±ü28dVVÊrA؃÷Gcÿ¥+¡[’Æ[äbã("EÙ@2FOÜ ×$=µÝJ¶k›üuÆ>^.Ðÿ»•vRAñчm¡Ñ]1ﳡ°~_mc\ÚÃwÃ4jèã¸>‡¾™O£)îwâ6—Á'5,%ѳF6È‘æ1T]².da€ß¿‘ïŒÏ­jtv wAü¼ûzꮸ<饥ãþq´ÎÄmm$› r'A\ý/&<»µk'`øë—½äÐ’)bñ±!v<¹)0øöTx$y#±õük‰jíÞé‰N—C³¸#oFƒ‰é+=—=Á†S±ýô?â·=* z×–1<‡”¨LR·m—@cÛ¹de'û[©šô¶Ü\¶Ž»2†¾FÇÌl|리C ˆ÷éÖ£ïñöùŒs¯%$¤¾(~e=›Èë±ë#‹Ÿ'xXŸ uW}˜oÜ}w*~Âým_:ñžÞ+ˆžcY#q¢Œ;Ÿ˜Ña䧸 ŠÖâ¸4â¡ tlñïtú‘Øî:c«¶Và›¡^ãÏ šÓÀëÓíò#Ëú:·àó̬¶—¯´m,S±%—ÑRB~’“Ø9ÑO#î¬._q·>%¡3Âäh•_¤£®Jt la­ñ}ØüÎÿÃúÿá£Þá/ðº˜t'ÂÃxhÜw"´UžËã"dçäzˆ­Ê äkš€éÛÖ»± !--»x,Ä÷dâ2~|I]ù·ǹ©úô–® ¶ÒâÌ:†Îâwlƒ ãqŠé#Uaö„úOO†ÕåÃçZç©,V ×(ðnr÷LŠÈš=-óò;ç몇‘l›–S‰á\„âx{„€ÊO…Õ€”¸†B°ûÐw‘¯ÄsP¥û7ÕÛD踆F̤Œƒ# ÖšºÍdnƒ#ÏáÆÀ†ŽH>jH%ÙHìC9vò¨ªØ7,uÆØ#[¹$î ÿöl­®Ï¤ü¼ÄL0ýÌ7hG –2§_2¬ýû~¯¯aªêp>Ùö-«bÝ”^% "KÙW þæ ùœn#é—ܽû·8†ˆ ÷  `81UJU…ºjüyIlñÈ?Æ*àtÞ@s¶ý䇸«¥ü[Ù»ý6Ç÷ÿˆŸß‘­nM߸߿ûüûõéþªÉôü @þ=›7)l¥cá6þ“D{˜%#ôÐc¯$ Þø^ Åu£ wRÅusep¨eŒ6%dˆžÞ"‡·¢U‰Q¢S¦. %Ì+ñà²9c÷÷Ôµ† lgŽæ;뤸‰¹G$[|µ±Ìé†Á¸°Ú° ‘\¾;Ú^Çp]xŸ®6µªIÄ6©ó8­þïd„e-kª³ XtÉŒn§LAÍl‰:¹a$– ‡Y­£Q$/Ìý(˜H  ¼¨‰åR-À[+<üµ®Ã²E¾ÃzŒ‘ëÛGÓ;4‘⹺Ë!·VefBX©.=Ú€ôu®Ç_ìý»ÞýwõùןãøÍ7•¹kvð´€^ºuA%@^¤L’ 3·ÜÛ°ÑjÒ†hy#˜Øt8œFjjó%s—¸† ái•!…NÇ6ePÎÚŸGékJ £Þ'e¢„UA䊪>¥à+_tÕ“Oxn™O‡l­3‚­{‹ÉŽ»ƒÇZÝl:³Ùëq’åû¤³^aîUúI ÝÆ!®1–s×°Ú:D“°í¥)]Ø¥)JR”¥)JR”¥(|޼ý*§Ô·æu²CùÉÏ)t{ˆA:y~qÆ¿º¬;ïfžxíâydôÙQdQòU{kzÙ&¹Þѿ˵ÊSãºÇDÙq; ºqZüEÍ)¤¸é¼bO¡ü¶¬bw÷÷ µt͉’áïm`Üp’6 ¬§‘ÑýD:ømûlŠ«"4Œˆƒ“;P<Ë1>döÖ×ÆÙ‹H­ÀDÛõ¤ozFøè±í¿ ô®³ìó/ëovÐÕä\áGc÷¨ë_‡MO¨‰ åöŽß-ü¢³€ʹ¥+Ð×B• Ÿµöœ|ºœ‡ý¡™Ü[æ5£ÿ ¾µæ{|*nº²†0Ø ‚;whŽý´AÑÝBâ –ÞÙÙÔ¯¤ŒÍE”2•;¿JÓ'ïúªw§®ý— ŠN’äúnñ†ùŽ?Sš¾·6·wçš•€'ôÆßø©ÞÎ÷XÊÌ¥YNа`G˜`Aì#cí¯.ŒÖ/+D5§ÈóS §× ×-IGª¶~#ãµG~1m“-gÈF±ÊÀ%Ô#ÓOŒ¯ë2Kð­m_PÏmiÔxoí9Ãu’F¹Ã2ìx‘±Œ‘J¤©îÑ © è ÿLäp²ÜFe´f" ØÔ˜dè«ùø2ë³F繡u÷Ò=Å¥ë6íÕ@Lÿ1#Á»‚;šÖã¸fW7ÐM»Æ‘™Ž‡p{“S=Õƒ;Ú^óleˇb€³ZÌ@S2 ÙhÝB‰‘G"]e*ûòÖòÖö¸´ž+˜\Y!u‘NÆõµ'L<Š2žÌí_$V]¥ýõƒø–WwŽ|ÚÞg‹–½#ÃäÀMTøŸg¥ö7¹nÞö%XàI02DÏiÍc…ãÞ‹nºív 2Éœ‚7€b6˜ˆúÔüG×ç\rg–ö5þ5óbuÇTÆ¡FUÜÀÉoi#Ìð?Y$üën¯êYÁ—ºPõ>¹ûãa÷Ö—ð»ó›–£Õü¿£×µn³÷.Úvë¯×¿Ê¾–šât2O"E2Hé`y÷weQØo¹ò¨®¢„Ýà2ÑGï4¸ë–G|˜DÒ óäT¯=|ó‡Šç;œÆÚÝO=×wŒÓË$ÍàF|kƒÉ˨c“üûWÓáA@¤ ZÖµ­yUE¢=¯·÷ÈÒÃLdÌß-«c‡¾x´¸JhLÛÞI%|]À#ß> Õ“¤òñás–—“-›•½ÓOfÐ/¡Üˆœ$„I@ê½ú·§fÀä¥á8ë©K)€ÚbY­˜ù,ì¨íã à°Z¥wÁN"Î Ûº„cx"òaóq\‡¼$CÛpsÖ ¯¯"–9Ñ%‰ÖHäPñº0dtaµta°Êø EwßÈŸ»üȯ–qÝCšÄ¨K „ðD "VX>ea™d‰I=ÉUŸ3R²u×TH¼NO‡m­š7üËÁù…qÛÙwƒx.[+;¶¥hóßbÅu×Ú– K£ "q±, o¸ëét6{wÖŽ¶Iò¿™ôfº9Xü$|;ïêò­ÐòdsGÆBöêî<|3]y$A) !Q‰E!¥2( ?Ý’<«vݰŽÚáöO%ož‘·½|¯ZÒâ¬ý´3‡!´ 3Œ’b©=Õ¹ÃßúE³sIUÔ@s¦ ã27;V£bK1>e‰?Y5—¿³dÜÁ¯²Toòþ}« ¹V*C) Žà‚AЂ4A‡Ò¼Z´:±Ì0b6˜2}'Ò´‚b7Á­Êàúù|{Ó—ö[î­Aí7#ÊâqÿîÉþª{UÏíþúOõW_øªÿ¢¼yO¯áç[ŸKpÿwüzþÎ6ÿ!ë±ò ýôæ¿àkP{MǬó®W?gv¯3$ôÛÏé3Ÿ©ôó¬èïÿëXúXû‡û¿úÖßšâ8a’w'„h]´6B¨Ù zèwí磭ו½õ­Ð o2KØuß—$ß5ûTQñF[±ößâÞÀëÍ­˜ë{ï³­ìýu­™He%X‚ –ˆ×§Ü=*þ#k hè—QA ‚@lˆ†©õ«.Þ6ÊøA 's89ÎÛÓzÜ»ø~ïó Ó_ø‘÷nµDy\”CIy>‡wñ5ûÀÔ—+‘™JÉw1R4T0@Aô!‚>Gb¡üVÔ*æ®Ò±>³?…GéIëOlyuŸ^6©n§º†âêâ`æÞ&YwÙ)±½”oD€Å—{ Ís¿ë¿Ÿ©úÏ­eYÙÏ}2Arf>ó~ŒkÛnçôU|Éõ:Q²@®EÇ~"ñ`¾+ŒªÉ;Qæ` ï¾6ŒÆã“c€3äÊ®=2|tó8!ÓIØl”ŽÃ=HâÃCá¯=Õ‚Û!gv7o:H}TH<¶3§ߪëàMt†Ê;k%´O¢‘4`þ±`y1v$÷:ßbjÕ$•;ˆ$rƒ¿_"4FÇÛ]{—߀·Ã&à£PÒN–0Xî ˆˆ­¶¸ÖÒÀo Õ'¨Œ‘‰ìz|w&þ‘ö™›ø‚>ï»±&µ†€ åÀ×À?/NÕÚL¶JU*÷“hö!XG±ê†`úî±üVÔ*äö•#ç üc‘•ií.³ëœmµNuMÔ2Ëoo+¼<Ú]|2üC¢O-),=666FªUÉ;î{쓾ÿƽíí¦º™`‚6ws ì£ô™›DQæO—ÌèUÛÄ^gÓârªæ0gÀ“ÒµÇ-XŒ€oé(ÜGw!ãIƒý¤G-Ûê‘óWØð°q¶kaiºè•vÖ¹ÈÝÝþ:$éAòP¢³ëÑðÖ›íŸx,·ûŽHø èÚRˆªwŒúþñçJÉãÓ!m$- ÿN?¡"týGº0õVߘ©*U¬ªêÈÀ`A¨?¿ÍL€AH"ò­9<2ÛÊðÌ…$вŸñȩՇb èוlü¶ Œ|¿ÝÜ >£È>.<Ù7åꤒ¾d{w¹±~1²‚HY‰ûù£öâA‡ªŠóœOs‡b`µ©ð¸ãcÒv;ŽÃvË['¯Fý{Àô¬*R•©TÒ³±¶¾×{oš´ŠÒ|kïɳéî‚>³¯=o¯{TÅÙK‘¼Ðqé$DíSGÎIXƒÇ¶€@Ú÷µ±ÂÙæÝ‹iuŽ 2dœ Ø|OCVZMn' 2Ç Ϥì+ªnAkk5?AZyËD‚±‚;l€ÏÑõª½µ¬·s¥¼+ÉÜüô«æÎÇ]•GrOÈI¤ ìÝ䳤{ñ$%¤mˆ¢A ©Èì* f;íð½ã1Pc£*£œ®‰3 3èù²Q¢ìïÍ‹ºÛ[Çq t‚–5ˆ”HVw$ '2"®ÚýÂæBHÉÜç;yÍdcìã±µŽÞ1°¾ó6´dr)ï¢Ç°ŠŽÀVm?¯ª•ÛU ªªU6á[ •)JT«4¥)JR”¥)JR”¥GdlCìí+Åe.câK…îòÞ”6›°Ù*;Ô/ä§í3ýÉüª×J¢ç bëj¹l3@Kl6 u5[Z¶ÆYdí$ŸÖ«–}9misÀ–Y D²+„⩎»ž'¸þÖ «)S·jÝ VÚÉŽ§Lž‚¤¨¨!@™øÒ”¥YR¥)JR 2 {ûŸhyeŒ”U`4JŽ!Žûï@®Ý‡Î°ÿ$í?iŸîOåVºV³pœ3±f´¥˜’L¶IÉ85Y³l’J‚Nç9?Q¸ÜxÇB`YDæÎ¦N;N@«Ç]‰ŽýI#^U›41\FðÏMƒOˆŽŽ>® °ùEzÒ¯E[j•Q 8 Ìã¦qÒ¦¤ åÛÒµöOðs‚½f’ÓÇÆÈÄž6î²[ìú˜&¨óÒÅ,j;òªMø,¿R}Ÿ)k ôñ –öð{ýzVì¥n'Å[.’G ÿ‰±°Ïε_áœÉ¶à¤/ÈVŠ‚üÞûÞã@ø‡¹?Og/¿Ê³!üÝ’<|´_Õæ?=š¿_g¥nšU‡Ú`ö€öw >ÃWoðGéT^Ÿè[, âß­Ü÷w+‘'ˆ‘Çx +²¢ó~|y(>'»F¯#°P®iZ—.ܺÚî1v€$ÆÃ` ¶­Ú·it[P«3rNäÎIÀ¬KÛ\„ kywò ^Uãù'u¾÷0òOñ ÷vúÍ_)Tgp„Ï,Gxéçä<ê³ÃÚ?dÿqÿ&ªt¤JA¸¹’@ÚÄ‹>^énR>  YmlíìãðíâH×׈%›C[g;w?Þ$ •J¾×fÎmÛU?{%¶y‰#ÌX–Ñ=Õ÷Üü÷õ®Ø"«stÅ„»d3ÀÄ’BÈA?êÇ_.C^B¬´©\³nèâ+1#iÞâ`mYdWʯONÛU%úIÆü+Å?$:øú«·ø®¼GIÝƒÞæ kÏ‹ywÑÐ?x«å+Tû;…?øÈÄ{íúþýj¯£Úû§ÓS~³øÕ6”U Ïtì7²‘"Çösf?/ ;yhè‹-¦>ÖÅx[BM·ÉŸ±›·¼ß!Ø Í¥_o†±dƒnÚ‚>Ñ–oîbOÈÕ‹m* ‰ëó¥)J¾§JR”¥+ÎXÒU(ñ¤ŠÝ™\¤vóSØùzü«Ò” #±¥Wnzk6Ú%’Ýþ©ýÍÿr@à€VQþqOÒRløW‰¯„èµ]÷÷·uw¥j¿Ã9“hý$§à¤ª6m6ê'¸$O¬*³éÈ-$\7´È¤2¡"F÷Ç“>|I!Aý€DœøÈnœ5ÑyÕ(á,V=Æü%+ɵædwø¢EIÒ¬NʹжÀYŒDlZIÕÕ t©-´Q¤(Ž£¹óï·ZóŽ4‰F•UU@ú‚ög¥zR•vÛTéJR”¥)JR”¥)JR”¥)JR”¥)^2I´òÃO,pÊñBºå,ŠŒR5Ù`@Ù w¬$æ)ûïùV·ÉõNVß;q5¼¨:{‘Çc2)áBÅäºY}¢a3Fe_guàÁdU ± ~q·z›1iVËâSw ÓÀÊŠaáHïÍù†RDmÄ`N»ö×V½–¹ÁÝ ¬¥ÝµÖ@Ü_]bü8Z /K—„M!rܤ1BÌÀû„oDœ±kÔ qÒ™·ÅOuq±¹Çä,Öh#¹Â[hçÜ’ÙfGmXñ=Ÿ†ût.[áÜGµ6Öå¿ YÅ m³ UÅyy+ ¢v®}»œBj.—"ã[¸5ú®qB©b¡m2˜ «»Õ¢n®ÄÁRâOi ‰¾8ÙÔB¦I®ùºí”HC†(Ä3˜ÇIוxIÕ‘›,´É‹Ë[Þcm ϲ^ز¼ÀXä ²+A:IrDŠñ@$—D#Yƒ ˜“Ô¢ë ÄÙ,È¿[ ‹ âÉ+û-Ô2 [ˆ@‹!xѵ ”…nØŒib ÈØb.°·vXeo ºfÈO$m ÂJÁ ÄÈÀ1‚\Íã“Ãĺ,‡7VE¢Ut’I$¸÷H#fZ³Íâ Q¥€ea‹L ´¸ ucP#b§P‰lZ[ǃ±Éfa½‰î'öf•lŠC,¬²L$¶Á–Õc_ÄNmâ)R5#ù[nm­gœ–[·¸X¬£°ë…¶Œ’º™„iqîNo¦âª§ø«1qƒé‹ qI‰ÍÚ›¥y-Ü=¬fG’äpxœ;bA* LßTÙf.òxó ¥ÞG -¥K›;ñaâ^1 ®ŸÅ‰šÜv$ Y{‚Á_-k‡7ð OyÖ¨P¨N…P_‚u[œF‰:°¶TSk,áu³H& ‡9 àW\·T¼Ø¬O ;ÃC9kc0–Œž …žIVUFåžq’u¢¦ï#iœÞuC]^\][â$¶ÕªcãF´YÍA$.òÞ™™r•c1•¢ÌE: f>ÃcÚÂ_j±ê¨î§@Ñ-JMÊ·=4[p-ïÝ©)±]Aõ̸èå·¸ÈÜc¤ÇL²$OqMqí"ÞNcÓÂ~!˜ÆvÀ) Ao‡†@ÖãS(bSV“ÄY– ‘ËBO»¨­Ëå•Ê\2ŠÌ¡^}ëBÉp£KH,Dx´‘gÇõEô÷V¯i‘°ºµ³öö·¿·Xe’ÐL±–@G¼£‹”bX;7úç(³”[dÖÎöuµK÷³ gË’2Iâ’\kmá,ª 7½´pµÌ6%o˜»¼lM好çO\Ú)º¼[뇼o ‹\Ëâ¹G™¢p‰ÙU|=ˆËÁe¿"ð8ác/·ZæÅžãç"ó!'ˆÇŸxrÄݘ0í½ƒg† 8f´±Í_t}m‚Àée±ÉÈžw¦t™Qq§–Òú^ÐA)•Ûe…0k`ç2k†Äßd™†Ö É$–GHaV#¸VšD Gp¤ë¾ª¤–ÝpÖvùhrö÷7r¬7 …k;hmL3po]Wm¶bQ‰R¬Ú/lÎâÆg}Œ.#7Q„©4R$гÜ –4ç®üw MT–ï­½Šß;KØV w̽ݬւJ©`ef-* ä„;€ÌDA´»Ëðò9œÃÌçèŽV‘¯1«V®_ÝŽ•mòyž.w/—àäëžn¼ÎŒLÓÌð{ÓÖ¬ýIoŽšÞÍìï¯2s[ ©1øØVîkx€÷ÞVñ#‚¸dR—+°ºeåç'Wá£ÇYå “½­íزOÓCs§fŽâÜÐÆò$cµ1««©1wVYŒWPœåµ‹æ¢¼ÅEctI¼ñ\ÂbÔ¡%eOc’#'wØœ霴XœR=·‰w7VGš¾·…Ñ’Ê£)rÁXF¨¥Êœ…,Ì–×VÙf)$]PX°b餉@„( Fgíj»Äp¨pXÖÚ@ŒaËbÁIˆ1N«!ë‹nâlfmo,”Ëqbl´ÇlH×R1Š( 3dGÔ‰Å1#2n®ÄÅ&p.æ\Ò\5‚Áne‘ä·à­nчä'ydX#U¦RC: çQ‡ùCÕ—žÊþÏ}…ŽÚÒosŒó 8chÓÞå¾hTòlyëUS{lŽ15™l…´¹–6RH‘³Ÿi†_ HI]âmÆÌÜä@Ù[<;” ¹ˆA߆{¥dŒu IÚHn‘†½Ä$êÈÔTQéÄÚ´ â.ŽÄDé•ëWèú»ö+é"½·8™#ŽþÊx/`i¤X¢&/¡WbtDžJÛò̹êiq´wrK–¶šæÍ!„HÌ[‹†FQ oтƈ”„.ÇS%Àf2¶Ý_}-Ÿ°ÝfÖÊ; f‰¤ðì&å3£‘窠f9rä!W>Zços%sq†šÆ×ÖÓÉ$öò1“ÙO)HܲB̈±Û±-î…PÍO“­|:Ë/5pG®ª¤™®Ö’³ G™È½~(ÒÚž[d £3ðýN–†ˆ&b0$:«¤¾±ÊÞäm.ã[+‰ÝZ |ø1Åirv–ø;––&;@á™’=qΫí¦L’.;)o}a`oý†îÐ,ó@xªËqK!hÕ¤ŒÉ¶FTbÀ-Ƶiêk<gi=­ód%¼µ¼Žâ[¨&–’+Y¡ã˜Ã¸vàB·RRã ƒÈÚ¾¹lUݶC§®,‘îïVöok‘­É{©¼YZV…Ø ì¨c÷P±QcZቺò€)𸹠-¦aƒ6Á¶9R3¹ÄeN²Hñ³ZmÉu9°BîWpF q‘UÞ]ôþ:þi®q·Råⵚå1qÍkv“M}ÂÞÌ\JªÑ,pÇ×*Í$2ÆPófcV\‡UØX]ÜY­®Fþ[(–köÇÛ ã±‰‡ ×.ÒFIï°@åTtU€¥ Fmú[‰|MÄW8¼ìI¹-ÜK›!<“ÇÂVÔqxñ£vìv—z˜šË5ˆÉu–X¦ÊÛõ«ÛËżFÚã•;¤”øAæf »RŠ£a™‚×XÇ/ߺQËj¬9–ž`,³ª–1»08K—¬ëÊÚÆÛ»å9#—ÜÜ Œ@‚wÔ,]Uж\[©¹º\ÄSIaìpÚc ¡ð¸YiE…"RVSV`³êœ}å¦JëÁ¾·|K𾳞ÛW‘9,D1<œŒŒ¬ª 2·>*9U^Û¦òûއ‡Â7 Š992ÆÊb·’ì¬Ê»b¬Ê®Í2©ßZIq=Aõ̸襷¸ÈÜc¤ÇL²GÜE\‘œÇ‡'†üC1Œí´¬‚+åpØPàÌpÜAâyPDcê0À¢&§ÎâA–¶c ¢¡$£ ² çëe :gUX­z¢ÞüßÚGkÇd-±ò_$9 d‰ÞäÈIT¨vM«ñ'–¸8_~‘È]å:{}(šêkñdÇ/ úæ÷"Duh¾êëglI4Ì6%o˜»¼lM好çO\Ú)º¼[뇼o ‹\Ëâ¹G™¢p‰ÙU|=ˆË޲ºÇôæ:Îö·¹‡Û;‹cxІ=ÖFT;Ð'ȑަºJÎæÃ§q¶—´0¤âXŸEµÜî ñ,;£+ ØŠ¢úÙЇ…:XÚ¬ä(À*´[VH‹xv½¯Kê(Üö•R·€A'£#£ª4ˆhÇ?—¿¾Ê êK\å•äöö8{«KuŠá":‹Å¼¹yÌÀ¡ÙrßUXÙ_m³F)ñ8̤F®FÑæY4¶êÍ:G0žETJ©Å€Yy³U'-Fìä-s"2׌ò¦;+ŽT… ,¼mÌÒ«Ä@v¹Ê2ŸÓ%½Ât–öáã9^œ¸‚äsÑÏrÊö<Á!ÂÅ,10F ¬FJñ5°éjà´±mK7-r‰ÔÖŽ†ÌœÍ:ÅÕÕ,@l¥í³q¾±‚lÏÍàÔ¦ÝÉU¸m–Òm6’xr*ÑqÕø«xo¦e»u±ÈŒV£…XÝ_ždÁiùÍHPFÅÙÌj,HsÕª¸ÌµÌ8Üœ¸ØCKëREüÔ®b‘Û!*÷ ²†Ž/|Ž$ˆ …èû+OÅ‘e®g™2Y içkk†–ä´²Éo:²»†7XG6àUX“ýÛáãpYÁiÔ6ÑÃkŒ»ÄÏmÇe/ ¹˜ß:3p·ˆñûü9øˆÌX&Ò k††mCÁt€Uí©€¯.ÐP`ΰŠ™¹ÅJˆ÷­“á¶ÇK2³ $ð# 3‚„‘V .­„`±ù …½ÿµÝ¼6‘[%™Iòo R4˜øK–ÕÌšŽ~J„‚›ç Ùƒ«±ƒ}’’;ØF2xíïìåRúÚYeH£ ! Îe‚ûòRµR¸ÂåïpÝ5#c.Rã§¥ö{Œx¼Kk›»oÙ$¸µ¸†eðœJƦD—é0ºÀÞÏÓÝ@-°WW™ñþ3ääÈ^ÝÇkyž,þ4²G " ‹°0P¾MžÁ,kÚX-Ëp‹Î ð:M©}AL’1ÍâTRÚlÈÕnæ¦akV£ ¹ž %–@ "lŸ–¸ãsì‚Ã2n%„Oc°o% +-¢ølˆò‡¸XÃF$†O¯å–$â¡Ê*^2Ïyø¾+5€Ö½Í¿…âxa‚ÜŒ¼tʼ¹°JÄ8Ëïʼ÷³?²ZàM¬óûœ"¸"àxGÞåËßQµ{Þu^ƒ’ Ë[œ_óê;«Ö´–ãÙ®½‘âêÆd•QeЕBÈÚ`Nãp86®‚tþS­Y!Åeñi4«H÷¢T‰œPÔHæyMi”øu:ÝD‰¶'5XÜ¢Ú_ØÏhê“Ûä-¼ W˜%J¼‘ºЕìYB²«õfnöË+ŒÆ¦H`¬n­äžl©´[²eWt[uWR¨Œlî8ëÆRÌi½:C—±¹È5ÂßÚáÝ"[ ÜWw1Ê2H¦RǼ¡}Òà¡!Šs9}HrKsm¼$üÄËsh±G%ì7[n3Gâ–ÚpâÃ@Àó é´& ¶Ó‰*¡4J‚è`”Ã[.¦a•Ÿ bDÔ™®7 µ£ëB¸2­ÀŒ7e ÁN­#"°aÉf-°y››¼Å­Ü¾c³¶Z]É$m"¬‚[$‘`2GɃ°#›ÌUI’nª´µö9#Èd28‹\”kid­%ÚJºfX’^0ÈxK;ÆJÅjÀJ[‚µ2ß§²Mê¹-13ã-rpÚÇŽÃÉ0’bñKI)çÃòrªä‘vˆ¥¬XìVB.£ÂÞIk"[[t•­ŒÓœc¼Büà#‘njr^ÿJ¬t±ã,PéÖáPÛ¶I¬‡F¡ï– è,@]…h÷þ¬à0U,úÞºÊ[Ťû°AuÕ¨‘y‡’{•·Éû$Ó%´×mg«k;—ò‚æS&Œu#<`”“ÈñÉ›³“#’Æ(ŸÚqPEqtJ(ˆÇ,):xMÏnÜ$]†T¶6@ÝkƒÓùȹqÞÁ7·6pÝ }ÇÌÁÉ;¾|uÄ~¶þU;weš²êLÝíž-²ù¼}½´2¥Ì¥´Ñ[CnMÏŠÁ„`ÆÎÅU‰R¡97%X½ž–ÀÌ êÁÐöt’L{È÷ÚBˆ’ 2KÜD)¸§<¢Úm4€ésP'¨$j Ĉõºêy.çé)ñRÉŽg!uoqÐCâ˼±BTò˜½ÿM«A'È ¾°ÇÙÝ<Ùå¼w‹c.KØõ`—-úW‘d`=]"e#ÞBÊTš¦?–ŠÓ¡£’ÆT|fK#5ú“í¢–ðI¾œ‚=áıט£2ø¤¾öÿjÇ^ß]Ç•÷‡ h1ÜøÇoecã*‰ nlYǰ%_³Ø,ðÌá  Eæ.®b3}•X™ФnIÒD+ ¯Äª³i}MÊ r ò-3¨J‚å„ï )tƒ©®eê˼+YÝ 8 £%›–—•åÌ…‡bW’Á0 ‡F –]{¶Ä™ðrn½Œf ®±f}ë´9ñßoÄ^öø‚kØdcêûëßaš\~_ ‘»ŠHTZ0Hƒ´Ñ»¬›S*’y©]é‚ׯ¨[½صXÖóg5í›OcöÃyã¹xþ72PEÀ?‡ @'bß Ú'@»¢ê¬SθfeÑ€72LTÍÎ!5÷´Í¶mD2ò­ãdu$ë#5oÈu†7›Öù«ØM¿(lí–bÉqÊ%Câ¨ðâGO· €¡ÆÈµÕ7‹º·êüÕûÛ¸³›ammtåH•¢†ÑdQ¦å°ÐžD¨¯ÕW*Õ¼-¯,[Éå£;jÕ,褈]&AN`í[6Ææ˜ÆT]0B« 3âÔ" ‰4¥)TÕÔ¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥*ÔxÌÅÝí›Mí„ë,^ê1w·dfÖŠòØàH¦×¬š® ŽuVɺAËà@8«®ñZ-” ªø· Íym$’L‰HÍ^q}UÉÝûŠúÂõÉ®JÔÚË4`-ç"¾”× ÅC0RªÄbÜu¶ÞêêÑ¢ÉI-”ò[Ü,^hÒH™•½ôcîíI°7ªŽê©"›?Òö®(³¸Œ†–;bkƒ'•ãG 7fT Õ]·IçZ]`nmÓÙ²÷/5¬–é4×^vÜ èê# V2?8݇}bX²à<l0G¹¤+s¹^øF:XeI]æL ªŸˆ¼Œm‚«•.–õ¢Ð¸FŽbJI ´@œVÒÆe,³‰{a7³!%Y$MsŽD`v wR¬¤«)8ñgqÒænpK#®BÚ$•ÑÓŒn¯Sj)7ï²Ç23.9èh¬“¶w\›«‰îoUXä[çà“ÆÑ!e€Ž0ª¹/ÓŠ©äq÷7KÕy,/ƘGÀßY…ÙñcÚ­JŽì·.¸ŽîUSÉÍT¶-›ÜE²ÌªŠtÁnÛ¶šä{²ðÆ ªÖ½pY±p*³9]as+¡´A>"Â$‰ðÏZÙ–Y;[ùïíàñX⼋ÈN•~,jƒ}‘–÷£ú’ ›K/,r–°ÝÏŽŠ8íïf7°ò¸> $Å‘¼I7ï©Fâ»*.˜‘ž[‹3wÔX››M({Hm¡ŽyDV8ÑÃr¦õÜèw¬5‹H—Œ‹Žª Â|"ݧX)iƒ“ÌÄèÁÖ ~ëº(‚9vÙˆ¶$–wV×T¯¹°w2¹^¥Åa®í,¯e‘g¼âc 4Q É3lxh\‘½ÈÇ]†ýó9ËPM|'+s8·‰mâ3;JT°^ ƒÜ)[$ïZŸ'pù¬‡UN¸œ®I%‰qË› F¸·¶kRfi$q\E¾ç&K&Á ‘ËdfÌàº*ê V;×ÌÙÛ™]|Aô;€Ë"~2ªÎPý$`=jC„O¨Õ«ÄtÞñ ·ÌX€JÄ24‚edoQ<[v&3kÂrà¶Ó$™WRÃAˆ“xÇõv#y„mumu2³Aí¬¶Æn ³ÙRÁC âBìTN-ÓߤØëÜÕÖ,–u±¶–ê+"ÅYÅÈCèÆ¥ÕÖ`…J° j&Ñ22õ•¯T^‰.,!–ç ìöÑCgxeMJÞ( 'ˆ7಼ ¡6wE^ZXÁœ¶¿¸‚×!jökÑs*E##øÌLŒ¥âÚɦ¨$·“‚Ø6­Ú&âkb-Ûm6î1™I[šŠ4.ô“ŠÈº÷¶úkŽ¥®[åª6–·­”9bJË™UÔ‘7êœ:bàÌ,ÒKeqqª4Q–‘'“ð匕dd*CƒåÙ‡%e'>ÿ-iޏÇ[\™™;ŸeµàœÔË´œ;ó‹ïhúöíZç©nñWÝ*—HÖÝú‚%mVÝd¹PóðP¡½ÏÎlò×C)QÛ/mžƒ7ÒG1’µ¾FÌÆ [{Alc`öüË=ðÀ¨ÓGãX^Û’É-|nH¹Ð2 ¦TŸ‘#§A“Ä\!^‡<ăoëK¸h#+Á™&¶NK#o‰±Ÿ!v\[Ûi kÍõ$‰ñ]ûî»î46}*ÕØÌ•Ô–ðdÕî É5Œ‘A &ÚRJª•SÄù@õ®sÿerÿû»oÿÛmXX³Æc¢Ée2¶w«\O´{,Vb‚%ª¼ ãke”CêìGžê«v­µ‚äMƸöÐ+$%²¡@F Òû£lïV½Ë‚øE jìt†€]’]t+¸ FL¦¢ê\TÙ™0),†þ3"cÔ,ñD&’4—~ôˆ›,¼{q¾Ýûåú‡†ha¸ö‰îîvmìl k›¹Uw¶XP@.ëȆ Ë‹kMEwukaa˜lFYo¡Í¾rç(öl¶ÚÞI"[‚vc™D!I w Ç’±¾Ãum]Ïuw,iClq70H "‘ô¡Ü¬Ï A ‘æà5ÏÂ"†e[nYA÷-• t«HPÂAÈ¡8¦u‰Uf¹lU¡-ÝRÊHb5T¦© Xƒ¶ ýŸUâ¯mr+íP>.'¾³º€Ã{ Q£9cb¤.tÚVâYw‘Qcd“ ™ùgb’k Å R(Äã_›U²òÙkL-“ßÞ™¼o7„ž#ò•‚.—k±³Üï°¨l—Xâq72Û]Ç ZXìÝàf–4•BMÈ+.¸`Ëæ F~'‚n˜ºÍ¥nl¹xr$œw8Öø±Öôu¿=…søAÿ³°ÿñþ¥BÍ›mȉ»vå³ §HQh©&píŒLƒ8©^½qMà…@µjÝÁ*[Qf¸0Ãîˆ#lï"$—¬q> 72G··šñl|k‹7…#Õ] ¥›i+$ÑQÁ÷®=ån³6V™[ø²^߆xb‚?„H}é¦<”EÏ#½ˆß@•ÑöÊãmòö8û¥ÜW1”äåŽñÌ›òxœ+¯¡#D$?àþÑ®"¼Í^Ì×wÞ ÄÅ,Ì6–Š©ó”ñ21Û7Ä—y¢©e­\» ¼¹5N¢ø´Ci‡.# (&2ZúÜKRÌ‚N*ŸÍu-*0 $àVÈ¥)ZµµJR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¥)JR”¨géü4–æÒKžÝ¯ bf”©¼}†Ÿ~'.L wÀ‚G™¥IY—Ýf\ƒá$dL‘&;I¨•V÷•[dƒ3ÐÀžð**犻k渳I[$-–ø—•} ZkÙƒð‘t"⺠Çz¹j²§°´º³l|ð$–oBÖça Qñàƒ‰ p^$APAجºS[ãÆÞ ø„€#8 *€GE`)¡3á_!¼#Ä $ƒŒ‚Y‰É'©ªå×ItíäKqŒŠI-âŠÛŸMÅ,q$¡&Q8HÕQLÂFà¡I*—˜¼~BÐXÞZC=  @> Å E8´L‹î«FU•IP@$V}+&åæn9ÑîK1ÓþÜø~X­Qm¿~F¬D62#¡¨L_Na0Ò<¸ëíåpU¦/4ò…=Ê,—Jè§C’£(m@èk:×ge-ÜÖ°,2_Ln.ÝYÉšbX™30–nÈwòì5›J5ÇbK;±`bKA’r€v EÚ(QT,é@‰H‚F õ¬ ,e†4Üd¶ö¹Ló¬lüS½¸˜¤dïGÃTiTH¬m º»½ŠK«áº˜-0¶O @±QáÆxŽ*»Kg½eÒ°Y‰$³À$’H@=À Ð; ÈUª™P€LÉÁ2r3“ÜÔ鬊X?B!žéof‰ZUîP8Y ,}Ðí¨À÷ú†¤/±öy+f´¾.-Ù‘ŒNXHÁ‘FVR¤v*öǑ"³)Y7K¹*dÄqfAÀÈÎaXÐ A@gD“ƒÜ÷¬ÆØ½åµû@­yi Ao9i Ç«+ ÷ø· ì pÍÜï½vü_f/ÎOÀ_o6þÊnvüÍ¿0þ\5̾<»kzíY”¬k¼ÞîŸxû³:w÷g1´æ+:Wî®á¶ðÛpï ¬ÜtwM]]5䨍ZwÊÉ¥`ÐVe+˜%˜¨ˆRI&11F;Iîk!TAT1™`&bs"{Àì*ú_%°³|lMl·]¬>$áâU $Š£‰eP8‚k²ƒ^¸îžÃbg{œu„v³¼MÈ3‰$d"It^4m½¨ï­ƒ5J—6éR¦å¦eu¶“92& çz*Ð!…»a„ChY´‘+ ±öM~™6MüvæÕ.9?5·.îb ˆ¹HçeKm}k^Ráñ³]Ë}%ª¹ížÎiƒH5³¯ŠPŽ«"•ÐÔ°âœXN2T¨‡q³°ðéÃwîïîùmåR(‡uSâÕ•Å«oz1;ÅU¿"º[ÿÉàýíÏýzËÈôÎ *a7Øøæh#Hb‘dš$HÚH%ÝôUÙ€Ù×™Üõ*fõâA7n’³¤›"`3"@Æð;Ty6`ŽU¸h‘¡`ÆÒ" tªz ˜æÄ­„+wYØ’Edq$’»òD<ÞBÄ"©<@‡HtÝ´Ñ\A‹†9 ‘&†E–ç”rÆÁãuÜÄmX¸«%+õÑ ]¸Xa¨˜œä$ïµ «F&Õ³¤%l0@6¬+ u–2ÜZØ[¥´ÞO °æäbÎÌ͆ÉcØ; ÂNÃ"ĉa¤ߌ¢@óqŽûÝÿhUñ4Ü_w^aîTÕ+Çî eŽ£,s’fNç~æ¤Q¢¢0@‡jÀ¼ÆX_Ëk=ݲM5”ž5¤¥$‚M©,#w(„©%IQ°uX·ý=…ÊL./ñ¶×€ŠÊVF ôC¼l QÙC–v3J ޱ¥Ýt‚ˆÉ9 nrhQC"°b A’0 ‘’íQ³áñ—6pØMe ²·xä†ÙŠ(ž.^Eˆ¦¸òc¯"I$w^·Xû+Ùm'ºf–ÆoÑÙœfÚžj”´^Îvòó¬ÚV5¾ using std::floor; // -- IO includes -- #include #include using std::ostringstream; using std::ofstream; RealDist::RealDist (double MinSize, double MaxSize, int Nbins) { minsize = MinSize; maxsize = MaxSize; nbins = Nbins; Nevents = 0; Create (); } void RealDist::Create () { int i; binsize = (maxsize-minsize)/nbins; Edist = new long[nbins]; for (i=0;i 0) evfile << double(i)*binsize+minsize+binsize*0.5 << " " << double(Edist[i]) << std::endl; } evfile.close(); } void RealDist::AddEvSize (double evsize) { int index; double Esize; Esize = (evsize - minsize); index = (int)(floor(Esize/binsize)); if ((index < nbins)&&(index >= 0)) Edist[index]++; } void RealDist::Clear() { for (int i=0;i using std::sqrt; /*! construct cubic equation of the form x^3+ax^2+bx+c \param a coefficient for x^2 \param b coefficient for x \param c constant coefficient */ CubicEquation::CubicEquation(double a,double b,double c) { m_a=a; m_b=b; m_c=c; } /*! Get the roots. Get one root (r_1) by a bisection method and the other 2 (if real) by solving the quadratic equation resulting from dividing the eqation by (x-r_1). Returns the roots as a STL-set so they are ordered. \param tol the precision of the calculation \param valid returns the validity of the result, i.e. if valid==false there was no positive root found */ set CubicEquation::getRealRoots(double tol) { set rootset; double root1; double x_0=-1.0*sqrt(1+m_a*m_a+m_b*m_b+m_c*m_c); double x_1=-1.0*x_0; if((f(x_0)*f(x_1))<0.0){ // change of sign within range // get one root root1=bisect(x_0,x_1,tol); rootset.insert(root1); // divide eq by (x-root1) => quadratic eq x^2+px+q double p=m_a+root1; double q=m_b+(m_a+root1)*root1; // solve quadratic eq. double d=0.25*p*p-q; if(d>=0.0){ // 2 real roots double dsr=sqrt(d); rootset.insert(-0.5*p-dsr); rootset.insert(-0.5*p+dsr); } } else { // throw some error // can't happen -> cubic eq has always at least 1 real root } return rootset; } /*! return x^3+ax^2+bx+c \param x */ double CubicEquation::f(double x) { return x*x*x+m_a*x*x+m_b*x+m_c; } double CubicEquation::bisect(double x_0,double x_1,double tol) { double res; if(x_1-x_0 RingBuffer::RingBuffer(int s) { m_buffer=vector(s); m_idx=0; m_size=s; } template< typename T> T& RingBuffer::operator[](int i) { int real_idx=(m_idx+i)%m_size; return m_buffer[real_idx]; } template< typename T> T RingBuffer::operator[] (int i) const { int real_idx=(m_idx+i)%m_size; return m_buffer[real_idx]; } template< typename T> void RingBuffer::insert(const T& data) { m_idx=(m_idx+1)%m_size; m_buffer[m_idx]=data; } ./Foundation/CMakeLists.txt0000664000175000017500000000044512176660653015510 0ustar vborosvborosFILE(GLOB FOUNDATION_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(Foundation SHARED ${FOUNDATION_SRC_LIB}) TARGET_LINK_LIBRARIES(Foundation ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS Foundation DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Foundation/BoundingBox.hpp0000664000175000017500000000434012176660653015675 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { BoundingBox::BoundingBox() : m_minPt(Vec3::ZERO), m_maxPt(Vec3::ZERO) { } BoundingBox::BoundingBox(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt) : m_minPt(minBBoxPt), m_maxPt(maxBBoxPt) { } BoundingBox::~BoundingBox() { } double BoundingBox::getVolume() const { Vec3 diff(m_maxPt-m_minPt); return diff.X()*diff.Y()*diff.Z(); } const Vec3 &BoundingBox::getMinPt() const { return m_minPt; } const Vec3 &BoundingBox::getMaxPt() const { return m_maxPt; } bool BoundingBox::operator==(const BoundingBox &bbox) const { return ( (getMinPt() == bbox.getMinPt()) && (getMaxPt() == bbox.getMaxPt()) ); } bool BoundingBox::contains(const Vec3 &pt, double tolerance) const { return ( (getMinPt().X() <= (pt.X() + tolerance)) && (getMinPt().Y() <= (pt.Y() + tolerance)) && (getMinPt().Z() <= (pt.Z() + tolerance)) && (getMaxPt().X() >= (pt.X() - tolerance)) && (getMaxPt().Y() >= (pt.Y() - tolerance)) && (getMaxPt().Z() >= (pt.Z() - tolerance)) ); } Vec3 BoundingBox::getSizes() const { return (getMaxPt() - getMinPt()); } std::ostream &operator<<(std::ostream &oStream, const BoundingBox &bbox) { oStream << bbox.getMinPt() << " " << bbox.getMaxPt(); return oStream; } } } ./Foundation/Rng.cpp0000664000175000017500000000150612176660653014201 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/Rng.h" namespace esys { namespace lsm { namespace rng { DefaultUniformRng s_zeroOneUniform(0.0, 1.0); } } } ./Foundation/Timer.cpp0000664000175000017500000001431412176660653014534 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Timer.h" //--- IO includes --- #include #include void MpiWTimer::zeroise() { m_startTime = 0.0; m_stopTime = 0.0; m_isPaused = false; m_pauseTime = 0.0; m_resumeTime = 0.0; m_elapsedTime = 0.0; } MpiWTimer::MpiWTimer() : m_name(), m_startTime(0), m_stopTime(0), m_isPaused(false), m_pauseTime(0), m_resumeTime(0), m_elapsedTime(0) { zeroise(); } MpiWTimer::MpiWTimer(const std::string &name) : m_name(name), m_startTime(0), m_stopTime(0), m_isPaused(false), m_pauseTime(0), m_resumeTime(0), m_elapsedTime(0) { zeroise(); } bool MpiWTimer::isPaused() const { return m_isPaused; } void MpiWTimer::isPaused(bool paused) { m_isPaused = paused; } void MpiWTimer::pause(const double &wTime) { if (!isPaused()) { isPaused(true); m_pauseTime = wTime; m_elapsedTime += ((m_pauseTime > m_resumeTime) ? m_pauseTime - m_resumeTime : 0.0); } } void MpiWTimer::resume(const double &wTime) { isPaused(false); m_resumeTime = wTime; } const std::string &MpiWTimer::getName() const { return m_name; } void MpiWTimer::setStart(const double &wTime) { m_startTime = wTime; m_elapsedTime = 0; resume(wTime); } void MpiWTimer::setStop(const double &wTime, bool elapseIsStopMinusStart) { m_stopTime = wTime; pause(wTime); if (elapseIsStopMinusStart) { m_elapsedTime = m_stopTime - m_startTime; } } double MpiWTimer::getTiming() const { return m_elapsedTime; } //======== TimingDataWriter ================= TimingDataWriter::TimingDataWriter(const std::string &fileName, MpiWTimers &timers) : m_fileName(fileName), m_pTimers(&timers), m_haveWrittenHeader(false), m_oFStreamPtr() { } const std::string &TimingDataWriter::getFileName() const { return m_fileName; } std::ostream &TimingDataWriter::getOStream() { if (m_oFStreamPtr.get() == NULL) { m_oFStreamPtr = OFStreamPtr(new std::ofstream(getFileName().c_str())); } return *m_oFStreamPtr; } void TimingDataWriter::writeHeader() { if (!m_haveWrittenHeader) { m_haveWrittenHeader = true; m_pTimers->writeHeader(getOStream()); } } void TimingDataWriter::appendData() { writeHeader(); m_pTimers->appendData(getOStream()); } //======== MpiWTimers ================= MpiWTimers::MpiWTimers() : m_timerMap(), m_fileNameWriterMap() { } /* void MpiWTimers::createTimer(const std::string &timerName) { } */ MpiWTimer *MpiWTimers::findTimer(const std::string &timerName) { NameMpiWTimerMap::iterator it = m_timerMap.find(timerName); if (it != m_timerMap.end()) { return &(it->second); } return NULL; } const MpiWTimer *MpiWTimers::findTimer(const std::string &timerName) const { NameMpiWTimerMap::const_iterator it = m_timerMap.find(timerName); if (it != m_timerMap.end()) { return &(it->second); } return NULL; } MpiWTimer &MpiWTimers::findOrCreateTimer(const std::string &timerName) { NameMpiWTimerMap::iterator it = m_timerMap.find(timerName); if (it == m_timerMap.end()) { it = (m_timerMap.insert(NameMpiWTimerMap::value_type(timerName, MpiWTimer(timerName)))).first; it->second.setStart(MPI_Wtime()); } return it->second; } bool MpiWTimers::timerExists(const std::string &timerName) const { return (m_timerMap.find(timerName) != m_timerMap.end()); } void MpiWTimers::start(const std::string &timerName) { findOrCreateTimer(timerName).setStart(MPI_Wtime()); } void MpiWTimers::stop(const std::string &timerName, bool elapseIsStopMinusStart) { const double time = MPI_Wtime(); findOrCreateTimer(timerName).setStop(time, elapseIsStopMinusStart); } double MpiWTimers::getTiming(const std::string &timerName) const { if (timerExists(timerName)) { findTimer(timerName)->getTiming(); } return -1.0; } void MpiWTimers::clear() { m_timerMap.clear(); m_fileNameWriterMap.clear(); } void MpiWTimers::pause(const std::string &name) { const double time = MPI_Wtime(); findOrCreateTimer(name).pause(time); } void MpiWTimers::resume(const std::string &name) { const double time = MPI_Wtime(); findOrCreateTimer(name).resume(time); } void MpiWTimers::zeroise(const std::string &name) { findOrCreateTimer(name).zeroise(); } void MpiWTimers::zeroise() { NameMpiWTimerMap::const_iterator it = m_timerMap.begin(); for (; it != m_timerMap.end(); it++) { zeroise(it->first); } } void MpiWTimers::writeHeader(std::ostream &oStream) { NameMpiWTimerMap::const_iterator it = m_timerMap.begin(); if (it != m_timerMap.end()) { oStream << it->first; it++; for (; it != m_timerMap.end(); it++) { oStream << "," << it->first; } oStream << std::endl; } } TimingDataWriter &MpiWTimers::getWriter(const std::string &fileName) { FileNameWriterMap::iterator it = m_fileNameWriterMap.find(fileName); if (it == m_fileNameWriterMap.end()) { it = m_fileNameWriterMap.insert( FileNameWriterMap::value_type( fileName, TimingDataWriter(fileName, *this) ) ).first; } return it->second; } void MpiWTimers::appendData(const std::string &fileName) { getWriter(fileName).appendData(); } void MpiWTimers::appendData(std::ostream &oStream) { NameMpiWTimerMap::const_iterator it = m_timerMap.begin(); if (it != m_timerMap.end()) { oStream << std::fixed << std::showpoint << std::setprecision(6) << std::setw(8) << it->second.getTiming(); it++; for (; it != m_timerMap.end(); it++) { oStream << ", " << std::fixed << std::showpoint << std::setprecision(6) << std::setw(8) << it->second.getTiming(); } oStream << "\n"; } } ./Foundation/BoundingSphere.cpp0000664000175000017500000000132412176660653016365 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/BoundingSphere.h" ./Foundation/Rng.h0000664000175000017500000000432312176660653013646 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRNG_H #define ESYS_LSMRNG_H #include namespace esys { namespace lsm { /** * Uniform distribution random number generator. */ template class UniformRng { public: typedef TmplRng Rng; typedef boost::uniform_real<> UniformReal; typedef boost::variate_generator Generator; /** * Construct RNG, note that (minRn < maxRn), ie strictly less than. * @param minRn minimum value in uniform dist range. * @param maxRn maximum value in uniform dist range. */ UniformRng(double minRn, double maxRn); /** * Generates a random number in this generators * range. */ double operator()(); /** * Seeds the RNG with default seed. */ void seed(); /** * Seeds the RNG with specifed seed. * @param s Unsigned int. */ template void seed(Tmpl &s); /** * Seeds the RNG with specifed sequence of values. * @param begin *begin is the first seed-value in sequence. * @param end Signifies termination of sequence. */ template void seed(TmplIt begin, TmplIt end); private: Rng m_rng; UniformReal m_uniform; Generator m_generator; }; typedef UniformRng<> DefaultUniformRng; namespace rng { extern DefaultUniformRng s_zeroOneUniform; } } } #include "Foundation/Rng.hpp" #endif ./Foundation/BoundingSphere.hpp0000664000175000017500000000466712176660653016407 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/BoundingSphere.h" namespace esys { namespace lsm { BoundingSphere::BoundingSphere() : m_centre(Vec3::ZERO), m_radius(0.0) { } BoundingSphere::BoundingSphere(const Vec3 ¢re, double radius) : m_centre(centre), m_radius(radius) { } BoundingSphere::~BoundingSphere() { } const Vec3 &BoundingSphere::getCentre() const { return m_centre; } double BoundingSphere::getRadius() const { return m_radius; } BoundingBox BoundingSphere::getBBox() const { return BoundingBox(getCentre()-getRadius(), getCentre()+getRadius()); } BoundingBox BoundingSphere::get2dBBox() const { return BoundingBox( Vec3(getCentre()[0]-getRadius(), getCentre()[1]-getRadius(), 0.0), Vec3(getCentre()[0]+getRadius(), getCentre()[1]+getRadius(), 0.0) ); } bool BoundingSphere::operator==(const BoundingSphere &bSphere) const { return ( (getCentre() == bSphere.getCentre()) && (getRadius() == bSphere.getRadius()) ); } bool BoundingSphere::contains(const Vec3 &pt, double tolerance) const { const double r = (getRadius() + tolerance); return ((getCentre()-pt).norm2() <= (r*r)); } bool BoundingSphere::contains( const BoundingSphere &bSphere, double tolerance ) const { const double r = (getRadius()-bSphere.getRadius() + tolerance); return ((getCentre()-bSphere.getCentre()).norm2() <= (r*r)); } std::ostream &operator<<(std::ostream &oStream, const BoundingSphere &bSphere) { oStream << bSphere.getCentre() << " " << bSphere.getRadius(); return oStream; } } } ./Foundation/quadtuple.h0000664000175000017500000000262412176660653015126 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMQUADTUPLE_H #define ESYS_LSMQUADTUPLE_H #include namespace esys { namespace lsm { template class quadtuple : public boost::tuple { public: typedef boost::tuple inherited; inline quadtuple() : inherited() { } inline quadtuple(const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4) : inherited(t1,t2,t3,t4) { } inline quadtuple(const quadtuple &quad) : inherited(quad) { } inline quadtuple &operator=(const quadtuple &quad) { inherited::operator=(quad); return *this; } }; } } #endif ./Foundation/vec3.hpp0000664000175000017500000001573612176660653014332 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VEC3_HPP #define __VEC3_HPP #include "Foundation/Matrix3.h" //the error... VEC3_INLINE VecErr::VecErr(const string& m):MError(m) { message.insert(0,"Vec3 "); } // constructors VEC3_INLINE Vec3::Vec3() { data[0]=0; data[1]=0; data[2]=0; } VEC3_INLINE Vec3::Vec3(double s) { data[0]=s; data[1]=s; data[2]=s; } VEC3_INLINE Vec3::Vec3(double a,double b,double c) { data[0]=a; data[1]=b; data[2]=c; } VEC3_INLINE Vec3::Vec3(const Vec3& rhs) { data[0]=rhs.data[0]; data[1]=rhs.data[1]; data[2]=rhs.data[2]; } // operators VEC3_INLINE Vec3& Vec3::operator=(const Vec3& rhs) { data[0]=rhs.data[0]; data[1]=rhs.data[1]; data[2]=rhs.data[2]; return *this; } VEC3_INLINE Vec3& Vec3::operator=(double s) { data[0]=s; data[1]=s; data[2]=s; return *this; } VEC3_INLINE Vec3& Vec3::operator-=(const Vec3& rhs) { data[0]-=rhs.data[0]; data[1]-=rhs.data[1]; data[2]-=rhs.data[2]; return *this; } VEC3_INLINE Vec3& Vec3::operator+=(const Vec3& rhs) { data[0]+=rhs.data[0]; data[1]+=rhs.data[1]; data[2]+=rhs.data[2]; return *this; } VEC3_INLINE Vec3 Vec3::operator+(const Vec3& rhs) const { return Vec3(data[0]+rhs.data[0], data[1]+rhs.data[1], data[2]+rhs.data[2]); } VEC3_INLINE Vec3 Vec3::operator-(const Vec3& rhs) const { return Vec3(data[0]-rhs.data[0], data[1]-rhs.data[1], data[2]-rhs.data[2]); } VEC3_INLINE Vec3 Vec3::operator-() const { return Vec3( -data[0],-data[1],-data[2] ); } VEC3_INLINE Vec3 Vec3::operator*(const Matrix3 &m) const { const double x = m(0,0)*data[0] + m(1,0)*data[1] + m(2,0)*data[2]; const double y = m(0,1)*data[0] + m(1,1)*data[1] + m(2,1)*data[2]; const double z = m(0,2)*data[0] + m(1,2)*data[1] + m(2,2)*data[2]; return Vec3(x,y,z); } VEC3_INLINE double Vec3::operator*(const Vec3& rhs) const { return data[0]*rhs.data[0]+data[1]*rhs.data[1]+data[2]*rhs.data[2]; } VEC3_INLINE Vec3 Vec3::operator*(double s) const { return Vec3(data[0]*s,data[1]*s,data[2]*s) ; } VEC3_INLINE Vec3& Vec3::operator*=(double rhs) { data[0]*=rhs; data[1]*=rhs; data[2]*=rhs; return *this; } VEC3_INLINE Vec3& Vec3::operator/=(double c) { data[0] /= c; data[1] /= c; data[2] /= c; return *this; } VEC3_INLINE Vec3 Vec3::operator/(double s) const { return Vec3(data[0]/s,data[1]/s,data[2]/s) ; } VEC3_INLINE Vec3 Vec3::operator+(double s) const { return Vec3(data[0]+s, data[1]+s, data[2]+s) ; } VEC3_INLINE Vec3 Vec3::operator-(double s) const { return Vec3(data[0]-s, data[1]-s, data[2]-s); } VEC3_INLINE Vec3 Vec3::rotate(const Vec3 &axis, const Vec3 &axisPt) const { const double phi = axis.norm(); if (phi > 0.0) { const Vec3 r = *this - axisPt; const Vec3 n = axis/phi; const double cosPhi = cos(phi); const Vec3 rotatedR = r*cosPhi + n*((dot(n, r))*(1-cosPhi)) + cross(r, n)*sin(phi); return rotatedR + axisPt; } return *this; } VEC3_INLINE Vec3 &Vec3::operator+=(double s) { data[0] += s; data[1] += s; data[2] += s; return *this; } VEC3_INLINE Vec3 &Vec3::operator-=(double s) { data[0] -= s; data[1] -= s; data[2] -= s; return *this; } // vector product // 9 Flops ( 6 mult, 3 sub ) VEC3_INLINE Vec3 cross(const Vec3& lhs,const Vec3& rhs) { return Vec3(lhs.data[1]*rhs.data[2]-lhs.data[2]*rhs.data[1], lhs.data[2]*rhs.data[0]-lhs.data[0]*rhs.data[2], lhs.data[0]*rhs.data[1]-lhs.data[1]*rhs.data[0]); } // dot product VEC3_INLINE double dot(const Vec3& v1, const Vec3& v2) { return v1.data[0] * v2.data[0] + v1.data[1] * v2.data[1] + v1.data[2] * v2.data[2]; } VEC3_INLINE Vec3 operator*(double f,const Vec3& rhs) { return Vec3(f*rhs.data[0], f*rhs.data[1], f*rhs.data[2]); } // euclidian norm // 6 Flops ( 3 mult, 2 add, 1 sqrt ) VEC3_INLINE double Vec3::norm() const { return sqrt(data[0]*data[0]+data[1]*data[1]+data[2]*data[2]); } // square of the euclidian norm // 5 Flops ( 3 mult, 2 add) VEC3_INLINE double Vec3::norm2() const { return data[0]*data[0]+data[1]*data[1]+data[2]*data[2]; } // returns unit vector in direction of the original vector // 9 Flops ( 3 mult, 2 add, 3 div, 1 sqrt ) VEC3_INLINE Vec3 Vec3::unit() const { return (*this)/norm(); } // per element min/max VEC3_INLINE Vec3 cmax(const Vec3& v1,const Vec3& v2) { Vec3 res; res.data[0]=v1.data[0]>v2.data[0] ? v1.data[0] : v2.data[0]; res.data[1]=v1.data[1]>v2.data[1] ? v1.data[1] : v2.data[1]; res.data[2]=v1.data[2]>v2.data[2] ? v1.data[2] : v2.data[2]; return res; } VEC3_INLINE Vec3 cmin(const Vec3& v1,const Vec3& v2) { Vec3 res; res.data[0]=v1.data[0]data[1] ? data[0] : data[1] ); return ( m>data[2] ? m : data[2] ); } VEC3_INLINE double Vec3::min() const { double m = ( data[0] V2.X()) ? V1.X() : V2.X(); double y=(V1.Y() > V2.Y()) ? V1.Y() : V2.Y(); double z=(V1.Z() > V2.Z()) ? V1.Z() : V2.Z(); return Vec3(x,y,z); } VEC3_INLINE Vec3 comp_min(const Vec3& V1,const Vec3& V2) { double x=(V1.X() < V2.X()) ? V1.X() : V2.X(); double y=(V1.Y() < V2.Y()) ? V1.Y() : V2.Y(); double z=(V1.Z() < V2.Z()) ? V1.Z() : V2.Z(); return Vec3(x,y,z); } // in/output VEC3_INLINE std::ostream& operator << (std::ostream& ostr,const Vec3& V) { const char delimiter = ' '; ostr << V.data[0] << delimiter << V.data[1] << delimiter << V.data[2]; return ostr; } VEC3_INLINE std::istream& operator >> (std::istream& istr,Vec3& V) { istr >> V.data[0] >> V.data[1] >> V.data[2]; return istr; } #endif // __VEC3_HPP ./Foundation/PathSearcher.h0000664000175000017500000000242312176660653015470 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPATHSEARCHER_H #define ESYS_LSMPATHSEARCHER_H #include #include namespace esys { namespace lsm { class PathSearcher { public: PathSearcher(const std::string &delimitedPathList, const std::string &delim = ":"); //bool exists(const std::string &fileName); boost::filesystem::path findPath(const std::string &fileName); std::string find(const std::string &fileName); private: typedef std::vector PathVector; PathVector m_pathVector; }; } } #endif ./Foundation/StringUtil.h0000664000175000017500000001221012176660653015216 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSTRINGUTIL_H #define ESYS_LSMSTRINGUTIL_H #include #include #include namespace esys { namespace lsm { typedef std::vector StringVector; /** * Convenience functions for string manipulation. */ namespace StringUtil { typedef esys::lsm::StringVector StringVector; template class StdOStreamOp { public: std::string operator()(const TmplIterator &it) const { std::stringstream sStream; sStream << *it; return sStream.str(); } }; template inline std::string join( TmplIterator begin, TmplIterator end, const std::string &delim, TmplStringOperator toStringOp = StdOStreamOp()) { std::string str; if (begin != end) { TmplIterator it = begin; str = toStringOp(begin); for (it++; it != end; it++) { str += delim + toStringOp(it); } } return str; } template inline std::string join( const TmplContainer &container, const std::string &delim, TmplStringOperator toStringOp = StdOStreamOp()) { typename TmplContainer::const_iterator it = container.begin(); typename TmplContainer::const_iterator end = container.end(); std::string str; if (it != end) { str = toStringOp(it); for (it++; it != end; it++) { str += delim + toStringOp(it); } } return str; } inline std::string joinStringVector( const StringVector &container, const std::string &delim ) { StringVector::const_iterator it = container.begin(); StringVector::const_iterator end = container.end(); std::string str; if (it != end) { str = *it; for (it++; it != end; it++) { str += delim + *it; } } return str; } template class StdIStreamOp { public: TmplData operator()(const std::string &str) const { std::stringstream sStream(str); TmplData data; sStream >> data; return data; } }; template TmplData to(const std::string &str) { return StdIStreamOp()(str); } template std::string toString(const TmplData &data) { std::stringstream sStream; sStream << data; return sStream.str(); } template inline std::vector split( const std::string &str, const std::string &delim, TmplStdStreamOp fromStringOp = StdIStreamOp() ) { std::vector vec; std::string::size_type prevPos = 0; std::string::size_type currPos = str.find(delim); while (currPos != std::string::npos) { vec.push_back( fromStringOp(str.substr(prevPos, currPos - prevPos)) ); prevPos = currPos + delim.length(); currPos = str.find(delim, prevPos); } if (prevPos < str.length()) { vec.push_back( fromStringOp(str.substr(prevPos, str.length())) ); } else if (prevPos == str.length()) { vec.push_back(fromStringOp("")); } return vec; } inline StringVector splitStrings(const std::string &str, const std::string &delim) { return split >(str, delim, StdIStreamOp()); } inline std::string trim(const std::string &str) { size_t b = 0; for (; (b < str.size()) && std::isspace(str.at(b)); b++) { // continue } size_t e = 0; if (str.size() > 0) { e = str.size()-1; for (; (e > b) && std::isspace(str.at(e)); e--) { // continue } } return ((e >= b) ? str.substr(b, e-b+1) : ""); } } } } #endif ./Foundation/Functional.h0000664000175000017500000000421112176660653015216 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMFUNCTIONAL_H #define ESYS_LSMFUNCTIONAL_H #if HAVE_CONFIG_H #include "config.h" #endif #if HAVE_EXT_FUNCTIONAL #include #endif #if HAVE_FUNCTIONAL #include #endif #if HAVE_STD__SELECT1ST_PAIR_ namespace ext { template struct select1st : public std::select1st<_Pair> {}; } #elif HAVE___GNU_CXX__SELECT1ST_PAIR_ namespace ext { template struct select1st : public __gnu_cxx::select1st<_Pair> {}; } #elif !HAVE_EXT__SELECT1ST_PAIR_ namespace ext { template struct select1st : public std::unary_function<_Pair, typename _Pair::first_type> { typename _Pair::first_type& operator()(_Pair& __x) const { return __x.first; } const typename _Pair::first_type& operator()(const _Pair& __x) const { return __x.first; } }; } #endif #if HAVE_STD__SELECT2ND_PAIR_ namespace ext { template struct select2nd : public std::select2nd<_Pair> {}; } #elif HAVE___GNU_CXX__SELECT2ND_PAIR_ namespace ext { template struct select2nd : public __gnu_cxx::select2nd<_Pair> {}; } #elif !HAVE_EXT__SELECT2ND_PAIR_ namespace ext { template struct select2nd : public std::unary_function<_Pair, typename _Pair::second_type> { typename _Pair::second_type& operator()(_Pair& __x) const { return __x.second; } const typename _Pair::second_type& operator()(const _Pair& __x) const { return __x.second; } }; } #endif #endif ./Foundation/vec3.cpp0000664000175000017500000000207212176660653014312 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/vec3.h" #include "Foundation/vec3.hpp" const Vec3 Vec3::ZERO = Vec3(0.0, 0.0, 0.0); bool Vec3::operator<(const Vec3& rhs) const { bool res; if(data[0]!=rhs.data[0]) { res=data[0] UniformRng::UniformRng(double minRn, double maxRn) : m_rng(), m_uniform(minRn, maxRn), m_generator(m_rng, m_uniform) { } template double UniformRng::operator()() { return m_generator(); } template void UniformRng::seed() { m_rng.seed(); } template template void UniformRng::seed(Tmpl &s) { m_rng.seed(s); } template template void UniformRng::seed(TmplIt first, TmplIt last) { m_rng.seed(first, last); } } } ./Foundation/RingBuffer.h0000664000175000017500000000216412176660653015152 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RINGBUFFER_H #define __RINGBUFFER_H // --- STL includes --- #include using std::vector; /*! class for a ringbuffer */ template class RingBuffer { private: vector m_buffer; int m_idx; int m_size; public: RingBuffer(int); T& operator[](int); T operator[] (int) const; void insert(const T&); inline int size() const {return m_size;}; }; #include "Foundation/RingBuffer.hpp" #endif // __RINGBUFFER_H ./Foundation/Quaternion.cpp0000664000175000017500000001553712176660653015611 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// // // ============================================================ // // Quaternion.cpp #include "Foundation/Quaternion.h" #include "Foundation/Quaternion.hpp" #if 0 // // ============================================================ // // CONSTRUCTORS, DESTRUCTORS // // ============================================================ // Quaternion::Quaternion() : vector(Vec3::ZERO), scalar(1.0) { } Quaternion::Quaternion(double d, const Vec3 &v) : vector(v), scalar(d) { } Quaternion::Quaternion(const Quaternion & q) : vector(q.vector), scalar(q.scalar) { } // // ============================================================ // // ASSIGNMENT // // ============================================================ // Quaternion& Quaternion::operator=(const Quaternion& q) { #if 0 if (&q == this) return *this; #endif vector = q.vector; scalar = q.scalar; return *this; } // // ============================================================ // // OUTPUT // // ============================================================ // std::ostream& operator<<(std::ostream& co, const Quaternion& q) { return q.output(co); } std::istream& operator>>(std::istream& ci, Quaternion& q) { return q.input(ci); } std::ostream& Quaternion::output(std::ostream& co) const { co << scalar << ' ' << vector; return co; } std::istream& Quaternion::input(std::istream& ci) { ci >> scalar >> vector; return ci; } bool Quaternion::operator==(const Quaternion &q) const { return ( (return_sca() == q.return_sca()) && (return_vec() == q.return_vec()) ); } bool Quaternion::operator!=(const Quaternion &q) const { return !(*this == q); } // // ============================================================ // // ARITHMETIC OPERATIONS // // ============================================================ // Quaternion Quaternion::operator+(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar + q2.scalar; qq.vector = vector + q2.vector; #endif return Quaternion(scalar + q2.scalar, vector + q2.vector); } Quaternion Quaternion::operator-(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar - q2.scalar; qq.vector = vector - q2.vector; #endif return Quaternion(scalar-q2.scalar, vector-q2.vector); } Quaternion Quaternion::operator-() const { #if 0 Quaternion qq; qq.scalar = -scalar; qq.vector = -vector; #endif return Quaternion(-scalar, -vector); } Quaternion operator*(double c, const Quaternion& q) { #if 0 Quaternion qq; qq.scalar = c * q.scalar; qq.vector = c * q.vector; #endif return Quaternion(c*q.scalar, c*q.vector); } Quaternion Quaternion::operator*(double c) const { return Quaternion(c * scalar, c * vector); } Quaternion Quaternion::operator*(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar * q2.scalar - dot(vector, q2.vector); qq.vector = scalar * q2.vector + q2.scalar * vector + cross(vector, q2.vector); #endif return Quaternion( scalar * q2.scalar - dot(vector, q2.vector), scalar * q2.vector + q2.scalar * vector + cross(vector, q2.vector) ); } Quaternion Quaternion::inverse() const { return Quaternion(scalar, -vector); } Quaternion Quaternion::operator/(const Quaternion& q2) const { return *this * q2.inverse(); } Quaternion& Quaternion::operator+=(const Quaternion& q) { scalar += q.scalar; vector += q.vector; return *this; } Quaternion& Quaternion::operator-=(const Quaternion& q) { scalar -= q.scalar; vector -= q.vector; return *this; } Quaternion& Quaternion::operator*=(double c) { scalar *= c; vector *= c; return *this; } Quaternion& Quaternion::operator*=(const Quaternion& q) { const double s = scalar * q.scalar - dot(vector, q.vector); vector = scalar * q.vector + q.scalar * vector + cross(vector, q.vector); scalar = s; return *this; } Quaternion& Quaternion::operator/=(const Quaternion& q) { Quaternion qq = q.inverse(); const double s = scalar * qq.scalar - dot(vector, qq.vector); vector = scalar * qq.vector + qq.scalar * vector + cross(vector, qq.vector); scalar = s; return *this; } void Quaternion::normalize() { double len = length(); if (len > 1.0e-8) { scalar /= len; vector /= len; } } double Quaternion::length() const { const double vlen = vector.norm(); return sqrt(scalar * scalar + vlen * vlen); } Matrix3 Quaternion::to_matrix() const { double m[3][3]; m[0][0] = scalar*scalar + vector.X()*vector.X() - vector.Y()*vector.Y() -vector.Z()*vector.Z(); m[0][1] = 2*(vector.X()*vector.Y() + scalar*vector.Z()); m[0][2] = 2*(vector.X()*vector.Z() - scalar*vector.Y()); m[1][0] = 2*(vector.X()*vector.Y() - scalar*vector.Z()); m[1][1] = scalar*scalar - vector.X()*vector.X() + vector.Y()*vector.Y() - vector.Z()*vector.Z(); m[1][2] = 2*(vector.Y()*vector.Z() + scalar*vector.X()); m[2][0] = 2*(vector.X()*vector.Z() + scalar*vector.Y()); m[2][1] = 2*(vector.Y()*vector.Z() - scalar*vector.X()); m[2][2] = scalar*scalar - vector.X()*vector.X() - vector.Y()*vector.Y() + vector.Z()*vector.Z(); // In 2D case m[2][2] is not so accurate! // m[2][2] = 0.0 ; /* m[0][0] = 1.0 - 2.0*vector.Y()*vector.Y() -2.0*vector.Z()*vector.Z(); m[0][1] = 2*(vector.X()*vector.Y() + scalar*vector.Z()); m[0][2] = 2*(vector.X()*vector.Z() - scalar*vector.Y()); m[1][0] = 2*(vector.X()*vector.Y() - scalar*vector.Z()); m[1][1] = 1.0 -2.0* vector.X()*vector.X() - 2.0*vector.Z()*vector.Z(); m[1][2] = 2*(vector.Y()*vector.Z() + scalar*vector.X()); m[2][0] = 2*(vector.X()*vector.Z() + scalar*vector.Y()); m[2][1] = 2*(vector.Y()*vector.Z() - scalar*vector.X()); m[2][2] = 1.0 - 2.0*vector.X()*vector.X() - 2.0*vector.Y()*vector.Y() ; */ return Matrix3(m); } Vec3 Quaternion::asAngleAxis() const { Vec3 v(this->vector); return (v *= (2*acos(this->scalar)/v.norm())); } Quaternion::AngleAxisPair Quaternion::asAngleAxisPair() const { return AngleAxisPair(2*acos(this->scalar), this->vector); } #endif // 0 ./Foundation/cube_eq.h0000664000175000017500000000222112176660653014516 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CUBE_EQ_H #define __CUBE_EQ_H // --- STL includes --- #include using std::set; /*! \class CubicEquation \brief A class for a cubic equation. Used for eigenvalue calculation on 3D matrices \author Steffen Abe $Revision$ $Date$ */ class CubicEquation { private: double m_a,m_b,m_c; double bisect(double,double,double); double f(double); public: CubicEquation(double,double,double); set getRealRoots(double); }; #endif //__CUBE_EQ_H ./Foundation/StlIterator.h0000664000175000017500000000571312176660653015400 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSTLITERATOR_H #define ESYS_LSMSTLITERATOR_H #include #include #include namespace esys { namespace lsm { template class ForwardConstIterator; template class ForwardIterator { public: typedef typename TmplIteratable::value_type value_type; typedef typename TmplIteratable::reference reference; typedef typename TmplIteratable::iterator iterator; inline ForwardIterator(TmplIteratable &container) : m_it(container.begin()), m_end(container.end()) { } inline ForwardIterator(const iterator &begin, const iterator &end) : m_it(begin), m_end(end) { } inline bool hasNext() const { return (m_it != m_end); } inline reference current() const { iterator it = m_it; it--; return *(it); } inline reference next() { reference ref = (*m_it); m_it++; return ref; } friend class ForwardConstIterator; private: iterator m_it; iterator m_end; }; template class ForwardConstIterator { public: typedef typename TmplIteratable::value_type value_type; typedef typename TmplIteratable::const_reference reference; typedef typename TmplIteratable::const_iterator iterator; inline ForwardConstIterator(const TmplIteratable &container) : m_it(container.begin()), m_end(container.end()) { } inline ForwardConstIterator(const iterator &begin, const iterator &end) : m_it(begin), m_end(end) { } inline ForwardConstIterator(const ForwardIterator &it) : m_it(it.m_it), m_end(it.m_end) { } inline bool hasNext() const { return (m_it != m_end); } inline reference current() const { iterator it = m_it; it--; return *(it); } inline reference next() { reference ref = (*m_it); m_it++; return ref; } private: iterator m_it; iterator m_end; }; } } #endif ./Foundation/Matrix3.h0000664000175000017500000000555012176660653014452 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MATRIX3_H #define __MATRIX3_H #define DO_INLINE_MATRIX3 1 #if DO_INLINE_MATRIX3 >= 1 #define MATRIX3_INLINE inline #else #define MATRIX3_INLINE #endif // --- IO includes --- #include using std::ostream; //! exception class for Matrix3 class MatSingularError { public: MATRIX3_INLINE MatSingularError() { }; }; class Vec3 ; /*! \class Matrix3 \brief 3x3 Matrix \author Steffen Abe $Revision$ $Date$ */ class Matrix3 { private: double m[3][3]; public: MATRIX3_INLINE Matrix3(); MATRIX3_INLINE Matrix3(const Vec3&, const Vec3&,const Vec3&); MATRIX3_INLINE Matrix3(const double[3][3]); MATRIX3_INLINE Matrix3(const Matrix3&); MATRIX3_INLINE virtual ~Matrix3(); MATRIX3_INLINE double det(); Vec3 solve(const Vec3&) const; Vec3 solve_homogeneous() const; void invert(); //!< in-situ inversion MATRIX3_INLINE Matrix3 inv(); //!< return inverse; MATRIX3_INLINE void transpose(); //!< transpose in situ MATRIX3_INLINE Matrix3 trans() const; //!< return transposed MATRIX3_INLINE Vec3 operator *(const Vec3&) const; MATRIX3_INLINE Matrix3 operator *(double) const; MATRIX3_INLINE Matrix3 operator /(double) const; MATRIX3_INLINE Matrix3 operator *(const Matrix3&) const; MATRIX3_INLINE Matrix3& operator +=(const Matrix3&); MATRIX3_INLINE Matrix3 operator +(const Matrix3&)const; MATRIX3_INLINE Matrix3 operator -(const Matrix3&)const; MATRIX3_INLINE bool operator==(const Matrix3&)const; MATRIX3_INLINE Matrix3 &operator=(const Matrix3&); MATRIX3_INLINE double trace() const; MATRIX3_INLINE double norm() const; MATRIX3_INLINE double operator()(int i, int j) const {return m[i][j];} MATRIX3_INLINE double& operator()(int i, int j){return m[i][j];} MATRIX3_INLINE friend Matrix3 operator*(double,const Matrix3&); //!< generate matrix from vector MATRIX3_INLINE friend Matrix3 star(const Vec3&); //!< generate unit matrix MATRIX3_INLINE static Matrix3 Unit(); //!< eigenvectors, eigenvalues void eigen(Vec3&,Vec3&,Vec3&,double&,double&,double&); // output MATRIX3_INLINE friend ostream& operator<<(ostream&,const Matrix3&); }; #if DO_INLINE_MATRIX3 >= 1 #include "Foundation/Matrix3.hpp" #endif #endif //__MATRIX3_H ./Foundation/Counter.cpp0000664000175000017500000000615612176660653015100 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Counter.h" #include "console.h" #include CCounter::CCounter() { Name = NULL ; Value = 0 ; Id = 0 ; } CCounter::CCounter(char *iName, int iId) { create(iName,iId) ; } CCounter::~CCounter() { if (Name) delete Name ; } void CCounter::create(char *iName, int iId) { Name = new char[strlen(iName)+1] ; strcpy(Name,iName) ; Id = iId ; Value = 0 ; } CCounter & CCounter::operator +=(int n) { Value += n ; return *this ; } CCounter & CCounter::operator -=(int n) { Value -= n ; return *this ; } CCounter & CCounter::operator ++() { Value += 1 ; return *this ; } CCounter & CCounter::operator --() { Value -= 1 ; return *this ; } CCounter & CCounter::operator ++(int) { Value += 1 ; return *this ; } CCounter & CCounter::operator --(int) { Value -= 1 ; return *this ; } CCounter & CCounter::reset() { Value = 0 ; return *this ; } char *CCounter::getName() { return Name ; } CCounter::operator int () { return Value ; } CCounterList::CCounterList() { } CCounterList::~CCounterList() { m_Counters.First() ; while (!m_Counters.IsEnd()) { delete m_Counters.Get() ; m_Counters.Clear() ; } } CCounterList & CCounterList::operator << (CCounter &Counter) { CCounter *newC = new CCounter(Counter.getName()) ; m_Counters.Append(newC) ; return *this ; } CCounter & CCounterList::counter(char *name) { m_Counters.First() ; while (!m_Counters.IsEnd()) { if (!strcmp(name,m_Counters.Get()->getName())) { return *m_Counters.Get() ; } m_Counters.Next() ; } console.Error() << "Internal Error, Cannot find Counter " << name << "\n" ; CCounter *newC = new CCounter ; return *newC ; } CCounterList & CCounterList::addCounter(char *name) { CCounter *newC = new CCounter(name) ; m_Counters.Append(newC) ; return *this ; } CCounter & CCounterList::operator()(char *name) { return counter(name) ; } ostream& CCounterList::print(ostream& Out) { m_Counters.First() ; while (!m_Counters.IsEnd()) { m_Counters.Get()->print(Out) ; Out << "\n" ; m_Counters.Next() ; } return Out ; } ostream& CCounter::print(ostream& Out) { Out << Name << " = " << Value ; return Out ; } ostream& operator<<(ostream& Out, CCounter &P) { return P.print(Out) ; } ostream& operator<<(ostream& Out, CCounterList &P) { return P.print(Out) ; } ./Foundation/console.cpp0000664000175000017500000001712412176660653015120 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Foundation/Counter.h" //--- IO includes --- #include #include #include #include #include using std::stringstream; using std::cout; #ifdef _ENABLE_DEBUG_FILE FCon console; #else Con console(&cout) ; #endif // _ENABLE_DEBUG_FILE BasicCon tconsole(&cout) ; int BasicCon::VLevel = Con::info ; bool BasicCon::mute = false ; bool BasicCon::quiet = false ; bool BasicCon::timing = false ; BasicCon::BasicCon(ostream *Ios) { os = Ios ; CurBuffer = new char[1024] ; } BasicCon::BasicCon() { CurBuffer = new char[1024] ; } BasicCon::~BasicCon() { if (CurBuffer) { delete [] CurBuffer ; } } void BasicCon::SetOStream(ostream *Ios) { os = Ios ; } /*! output stream on Output stream if not quiet \param str_os stream to output */ void BasicCon::process(ostringstream *str_os) { if (!quiet) { *os << str_os->str() ; os->flush() ; } } BasicCon & BasicCon::operator<<(const char* s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(char s){ if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(short s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(int s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(long s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(float s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(double s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(unsigned char s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(unsigned short s){ if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(unsigned int s){ if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(unsigned long s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(void* s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(Vec3 s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(const Matrix3& m) { if (mute) return *this ; ostringstream str_os ; str_os << m << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(CCounter &s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(CCounterList &s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } BasicCon & BasicCon::operator<<(const string &s) { if (mute) return *this ; ostringstream str_os ; str_os << s << '\0' ; process(&str_os) ; return *this ; } void BasicCon::SetVerbose(int vl) { VLevel = vl ; } /*! Show header before output lines in h is true \param level string of character to output \param h if true will ouput the string level */ void BasicCon::show(char *level,bool h) { flush() ; if (h) { *this << "[" << level << "] " ; } } BasicCon & BasicCon::Critical(bool h) { if ( VLevel <= critical) { mute = false ; show("crt",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Error(bool h) { if ( VLevel <= err) { mute = false ; show("err",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Warning(bool h) { if ( VLevel <= warning) { mute = false ; show("wrn",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Message(bool h) { if ( VLevel <= msg) { mute = false ; show("msg",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Info(bool h) { if ( VLevel <= info) { mute = false ; show("inf",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Debug(bool h) { if ( VLevel <= dbg) { mute = false ; show("dbg",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::XDebug(bool h) { if ( VLevel < dbg) { mute = false ; show("xbg",h) ; } else { mute = true ; } return *this ; } BasicCon & BasicCon::Timing(bool h) { if ( timing ) { mute = false ; show("tme",h) ; } else { mute = true ; } return *this ; } void BasicCon::flush() { os->flush() ; } /********************************************************************************/ /* class Con with history & sub-view for display */ /* */ /* Description: */ /* Handle message ouput on the console */ /********************************************************************************/ #include #include Con::Con() { CurCol=0 ; } Con::Con(ostream *Ios) : BasicCon(Ios) { CurCol=0 ; } Con::~Con() { } void Con::process(ostringstream *str_os) { const char *str ; int len ; int i ; BasicCon::process(str_os) ; str = (str_os->str()).c_str() ; len = strlen(str) ; for (i=0; iUpdateCon() ; } } FCon::FCon() : Con() { // get pid pid_t my_pid=getpid(); stringstream fnstr; fnstr << "debug.con." << my_pid; m_debugfile.open(fnstr.str().c_str()); os=&m_debugfile; } FCon::~FCon() { m_debugfile.close(); } ./Foundation/quintuple.h0000664000175000017500000000267012176660653015151 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMQUINTUPLE_H #define ESYS_LSMQUINTUPLE_H #include namespace esys { namespace lsm { template class quintuple : public boost::tuple { public: typedef boost::tuple inherited; inline quintuple() : inherited() { } inline quintuple(const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4, const T5 &t5) : inherited(t1,t2,t3,t4,t5) { } inline quintuple(const quintuple &quin) : inherited(quin) { } inline quintuple &operator=(const quintuple &quin) { inherited::operator=(quin); return *this; } }; } } #endif ./Foundation/console.h0000664000175000017500000001033412176660653014561 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _CONSOLE_H_ #define _CONSOLE_H_ //--project includes-- #include "Foundation/Matrix3.h" #include "Foundation/vec3.h" //--STL includes-- #include #include #include using std::string; using std::ostringstream; class CCounter; class CCounterList; /*! \class BasicCon \brief Handle message ouput on the console \author David Place, Steffen Abe $Revision$ $Date$ */ class BasicCon { public: enum VerboseLevel { all=0, dbg, info, msg, warning, err, critical, silent } ; protected: static int VLevel ; //!< current verbose level static bool mute,quiet ; //!< flag to mute console (loats output) or quiet console static bool timing; char *CurBuffer ; //!< buffer for output & process ostream *os ; //!< Output stream (cout usually) virtual void process(ostringstream *str_os) ; virtual void show(char *level,bool h) ; public: BasicCon(); BasicCon(ostream *Ios); virtual ~BasicCon() ; inline void SetQuiet(bool Q) { quiet = Q ; }; inline void SetTiming(bool T) { timing = T ; }; static void SetVerbose(int vl=all) ; //!< set verbose level inline static int GetVerbose() { return VLevel; } ; virtual void flush() ; virtual void SetOStream(ostream *Ios); BasicCon & Message(bool h=true) ; //!< set verbose level of next message to "msg" BasicCon & Error(bool h=true) ; //!< set verbose level of next message to "err" BasicCon & Warning(bool h=true) ; //!< set verbose level of next message to "wrn" BasicCon & Critical(bool h=true) ; //!< set verbose level of next message to "crt" BasicCon & Info(bool h=true) ; //!< set verbose level of next message to "inf" BasicCon & Debug(bool h=true) ; //!< set verbose level of next message to "dbg" BasicCon & XDebug(bool h=true) ; //!< set verbose level of next message to "xdg" BasicCon & Timing(bool h=true) ; //!< set verbose level of next message to "tme" BasicCon & operator<<(const char* s); BasicCon & operator<<(char s); BasicCon & operator<<(short s) ; BasicCon & operator<<(int s) ; BasicCon & operator<<(long s) ; BasicCon & operator<<(float s) ; BasicCon & operator<<(double s) ; BasicCon & operator<<(unsigned char s) ; BasicCon & operator<<(unsigned short s); BasicCon & operator<<(unsigned int s); BasicCon & operator<<(unsigned long s); BasicCon & operator<<(void* s) ; BasicCon & operator<<(Vec3 s); BasicCon & operator<<(const Matrix3&); BasicCon & operator<<(CCounter &s); BasicCon & operator<<(CCounterList &s); BasicCon & operator<<(const string&); } ; /*! \class ConsoleWindow \brief Console with history, and handle message output on a console window */ class ConsoleWindow { protected: static ConsoleWindow* Window ; virtual void UpdateCon() = 0 ; public: virtual ~ConsoleWindow() {} static bool immediate ; static void Update() ; static bool IsOpen() { return Window!=NULL ; } ; } ; /*! \class Con \brief console with window buffer */ class Con : public BasicCon { private: int CurCol ; char Buffer[4096] ; protected: virtual void process(ostringstream *str_os) ; Con(); public: Con(ostream *Ios); virtual ~Con() ; virtual char *GetLast(char *buff) ; } ; /*! \class FCon \brief console writing into per-process file */ class FCon : public Con { private: std::ofstream m_debugfile; public: FCon(); virtual ~FCon() ; }; #ifdef _ENABLE_DEBUG_FILE extern FCon console ; #else extern Con console ; #endif // _ENABLE_DEBUG_FILE extern BasicCon tconsole ; #endif ./Foundation/t_list.hpp0000664000175000017500000001374412176660653014765 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template void Stack::Push(T* V) { L.InsertAtStart(V) ; } template T* Stack::Pop() { L.First() ; T* t= L.Get() ; L.Clear() ; return t ; } template List::List() { Start = End = Current = NULL ; } template List::List(const List &L) { Node *Lcur ; Start = End = Current = NULL ; Lcur = L.Start ; while (Lcur) { Append(Lcur->Val) ; Lcur = Lcur->Next ; } } template List::~List() { Destroy() ; } /*! return the number of element in the list */ template int List::SizeList() { int i = 0; First() ; while (!IsEnd()) { i++ ; Next() ; } return i ; } /*! Insert an element at the begining of the list \param V pointer to element to be inserted */ template void List::InsertAtStart(T *V) { if (Start==NULL) { Start = new Node ; Start->Next = NULL ; Start->Prev = NULL ; Current = Start ; End = Start ; Current->Val = V ; } else { Node *Inter ; Inter = new Node ; Inter->Prev = NULL ; Inter->Next = Start ; Inter->Val = V ; Start->Prev = Inter ; Start = Inter ; } } template void List::Append(T *V) { if (Start==NULL) { Start = new Node ; Start->Next = NULL ; Start->Prev = NULL ; Current = Start ; End = Start ; Current->Val = V ; } else { Node *Inter ; Inter = new Node ; Inter->Prev = End ; Inter->Next = NULL ; Inter->Val = V ; End->Next = Inter ; End = Inter ; } } template void List::InsertAfter(T *V) { if ((Start==NULL)||(Current==NULL)||(Current->Next==NULL)) { Append(V) ; } else { Node *Inter ; Inter = new Node ; Inter->Prev = Current ; Inter->Next = Current->Next ; Inter->Val = V ; Current->Next->Prev = Inter ; Current->Next = Inter ; } } template void List::InsertBefore(T *V) { if ((Start==NULL)||(Current==NULL)) { Append(V) ; } else if (Start==Current) { InsertAtStart(V) ; } else { Node *Inter ; Inter = new Node ; Inter->Prev = Current->Prev ; Inter->Next = Current ; Inter->Val = V ; Current->Prev->Next = Inter ; Current->Prev = Inter ; } } template T* List::Get() { #ifdef _DEBUG if (!Current) { console.Critical() << "Invalid access in List via null pointer\n" ; } if (!Current->Val) { console.Warning() << "List just returned a null pointer\n" ; } #endif return Current->Val ; } template void List::Put(T *V) { if (Current) Current->Val = V ; } template void List::Clear() { if (Current) { if (Current==Start) { Start = Current->Next ; if (Start) Start->Prev = NULL ; else End=NULL ; delete Current ; Current = Start ; } else if (Current==End) { End = Current->Prev ; End->Next = NULL ; delete Current ; Current = NULL ; } else { Node *Inter ; Inter = Current->Next ; Current->Prev->Next = Current->Next ; Current->Next->Prev = Current->Prev ; delete Current ; Current = Inter ; } } } template void List::Destroy() { Current=Start ; while (Current) Clear() ; } template List& List::operator << (T *V) { InsertAfter(V) ; Next() ; return *this ; } template List& List::operator >> (T *V) { if (Current) V = Current->Val ; Next() ; return *this ; } template void List::Next() { if (Current) Current=Current->Next ; } template void List::Prev() { if (Current && Current->Prev) Current=Current->Prev ; } template void List::First() { Current = Start ; } template void List::Last() { Current = End ; } template int List::IsEnd() { return (Current==NULL) ; } template int List::IsStart() { return (Current==Start) ; } template void List::Swap() // echange current avec le suivant { Node *CS, *CP, *CSS, *C ; C = Current ; CS = C->Next ; CP = C->Prev ; CSS = CS->Next ; if (CP) CP->Next = CS ; CS->Prev = CP ; CS->Next = C ; C->Prev = CS ; C->Next = CSS ; if (CSS) CSS->Prev = C ; if (!CP) Start = CS ; if (!CSS) End = C ; } template List List::operator + (const List& L) { List This=*this; This+=L ; return This ; } template List& List::operator += (const List& L) { Node *Lcur ; Lcur = L.Start ; while (Lcur) { Append(Lcur->Val) ; Lcur = Lcur->Next ; } return *this ; } template List& List::operator = (const List& L) { Node *Lcur ; Destroy() ; Lcur = L.Start ; while (Lcur) { Append(Lcur->Val) ; Lcur = Lcur->Next ; } return *this ; } #if 0 template void ListWS::PushPos() { stack.Push(Current) ; } template void ListWS::PopPos() { Current = stack.Pop() ; } #endif ./Foundation/StringUtil.cpp0000664000175000017500000000131712176660653015557 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/StringUtil.h" ./Foundation/BoundingSphere.h0000664000175000017500000000326712176660653016042 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBOUNDINGSPHERE_H #define ESYS_LSMBOUNDINGSPHERE_H #include "Foundation/vec3.h" #include "Foundation/BoundingBox.h" namespace esys { namespace lsm { /** * */ class BoundingSphere { public: inline BoundingSphere(); inline BoundingSphere(const Vec3 ¢re, double radius); inline virtual ~BoundingSphere(); inline const Vec3 &getCentre() const; inline double getRadius() const; inline BoundingBox getBBox() const; inline BoundingBox get2dBBox() const; inline bool operator==(const BoundingSphere &bSphere) const; inline bool contains(const Vec3 &pt, double tolerance = 0.0) const; inline bool contains( const BoundingSphere &bSphere, double tolerance = 0.0 ) const; private: Vec3 m_centre; double m_radius; }; inline std::ostream &operator<<(std::ostream &oStream, const BoundingSphere &bSphere); } } #include "Foundation/BoundingSphere.hpp" #endif ./Foundation/Counter.h0000664000175000017500000000562712176660653014547 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _COUNTER_H_ #define _COUNTER_H_ #include "t_list.h" //--- IO includes --- #include #include using std::ostream; //--- system includes --- #include /*! Provide a basic "counter", a counter has a Name and a value and an optional Id. */ class CCounter { protected: char *Name ; //!< Name is allocated or deallocated on construction or destruction, respectively int Value ; int Id ; public: CCounter() ; CCounter(char *Name, int Id=0) ; virtual ~CCounter() ; void create(char *Name, int Id=0) ; //!< create counter, call by constructor CCounter & operator +=(int n) ; //!< increment counter by n CCounter & operator -=(int n) ; //!< decrement counter by n CCounter & operator ++() ; //!< increment counter by 1 CCounter & operator --() ; //!< decrement counter by 1 CCounter & operator ++(int) ; //!< increment counter by 1 CCounter & operator --(int) ; //!< decrement counter by 1 CCounter & reset() ; //!< reset the counter to 0 char *getName() ; //!< return name of counter operator int () ; //!< return the value of the counter ostream& print(ostream& Out) ; //!< method to print the value } ; /*! List of CCounter (avoid duplication of code). */ class CListCounters : public List { } ; /*! Provide a list of counters. */ class CCounterList { protected: CListCounters m_Counters ; public: CCounterList() ; virtual ~CCounterList() ; CCounterList & operator << (CCounter &Counter) ;//!< add a counter "Counter" CCounterList & addCounter(char *name) ; //!< add a counter of name "name" CCounter & counter(char *name) ; //!< return the counter "name" CCounter & operator()(char *Name) ; //!< return the counter "name" ostream& print(ostream& Out) ; //!< method to print out all counters inline CListCounters & getList() //!< return the list of counters { return m_Counters; } ; } ; // out-of-class method to print-out counter values ostream& operator<<(ostream& Out, CCounter &P) ; ostream& operator<<(ostream& Out, CCounterList &P) ; #endif ./Foundation/Matrix3.hpp0000664000175000017500000001342112176660653015006 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MATRIX3_HPP #define __MATRIX3_HPP #include "Foundation/Matrix3.h" #include "Foundation/vec3.h" MATRIX3_INLINE Matrix3::Matrix3() { for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { m[i][j]=0; } } } MATRIX3_INLINE Matrix3::Matrix3(const Vec3& V1, const Vec3& V2,const Vec3& V3) { m[0][0]=V1.data[0]; m[0][1]=V2.data[0]; m[0][2]=V3.data[0]; m[1][0]=V1.data[1]; m[1][1]=V2.data[1]; m[1][2]=V3.data[1]; m[2][0]=V1.data[2]; m[2][1]=V2.data[2]; m[2][2]=V3.data[2]; } MATRIX3_INLINE Matrix3::Matrix3(const double a[3][3]) { m[0][0]=a[0][0]; m[0][1]=a[0][1]; m[0][2]=a[0][2]; m[1][0]=a[1][0]; m[1][1]=a[1][1]; m[1][2]=a[1][2]; m[2][0]=a[2][0]; m[2][1]=a[2][1]; m[2][2]=a[2][2]; } MATRIX3_INLINE Matrix3::Matrix3(const Matrix3& rhs) { for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { m[i][j]=rhs.m[i][j]; } } } MATRIX3_INLINE Matrix3::~Matrix3() { } /*! Determinant */ MATRIX3_INLINE double Matrix3::det() { return m[0][0]*(m[1][1]*m[2][2]-m[1][2]*m[2][1])+ m[0][1]*(m[1][2]*m[2][0]-m[1][0]*m[2][2])+ m[0][2]*(m[1][0]*m[2][1]-m[1][1]*m[2][0]); } MATRIX3_INLINE Matrix3 Matrix3::inv() { Matrix3 res=*this; res.invert(); return res; } MATRIX3_INLINE void Matrix3::transpose() { double h; h=m[1][0]; m[1][0]=m[0][1]; m[0][1]=h; h=m[2][0]; m[2][0]=m[0][2]; m[0][2]=h; h=m[2][1]; m[2][1]=m[1][2]; m[1][2]=h; } MATRIX3_INLINE Matrix3 Matrix3::trans() const { Matrix3 res; res.m[0][0]=m[0][0]; res.m[0][1]=m[1][0]; res.m[0][2]=m[2][0]; res.m[1][0]=m[0][1]; res.m[1][1]=m[1][1]; res.m[1][2]=m[2][1]; res.m[2][0]=m[0][2]; res.m[2][1]=m[1][2]; res.m[2][2]=m[2][2]; return res; } // 15 Flops ( 9 mult,6 add) MATRIX3_INLINE Vec3 Matrix3::operator *(const Vec3& V) const { double x=m[0][0]*V.data[0]+m[0][1]*V.data[1]+m[0][2]*V.data[2]; double y=m[1][0]*V.data[0]+m[1][1]*V.data[1]+m[1][2]*V.data[2]; double z=m[2][0]*V.data[0]+m[2][1]*V.data[1]+m[2][2]*V.data[2]; return Vec3(x,y,z); } // 9 Flops MATRIX3_INLINE Matrix3 Matrix3::operator *(double d) const { Matrix3 res; res.m[0][0]=m[0][0]*d; res.m[0][1]=m[0][1]*d; res.m[0][2]=m[0][2]*d; res.m[1][0]=m[1][0]*d; res.m[1][1]=m[1][1]*d; res.m[1][2]=m[1][2]*d; res.m[2][0]=m[2][0]*d; res.m[2][1]=m[2][1]*d; res.m[2][2]=m[2][2]*d; return res; } // 9 Flops MATRIX3_INLINE Matrix3 Matrix3::operator /(double d) const { Matrix3 res; res.m[0][0]=m[0][0]/d; res.m[0][1]=m[0][1]/d; res.m[0][2]=m[0][2]/d; res.m[1][0]=m[1][0]/d; res.m[1][1]=m[1][1]/d; res.m[1][2]=m[1][2]/d; res.m[2][0]=m[2][0]/d; res.m[2][1]=m[2][1]/d; res.m[2][2]=m[2][2]/d; return res; } MATRIX3_INLINE Matrix3 &Matrix3::operator=(const Matrix3 &other) { for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { m[i][j] = other.m[i][j]; } } return *this; } MATRIX3_INLINE bool Matrix3::operator==(const Matrix3 &other) const { for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { if (m[i][j] != other.m[i][j]) { return false; } } } return true; } MATRIX3_INLINE std::ostream &operator<<(std::ostream &oStream, const Matrix3 &m) { oStream << m(0,0); for(int i = 1; i < 9; i++) { oStream << " " << m(i/3, i%3); } return oStream; } // 45 Flops (27mult, 18add) MATRIX3_INLINE Matrix3 Matrix3::operator *(const Matrix3& rhs) const { Matrix3 res; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ res.m[i][j]=m[i][0]*rhs.m[0][j]+m[i][1]*rhs.m[1][j]+m[i][2]*rhs.m[2][j]; } } return res; } // 9 Flops MATRIX3_INLINE Matrix3& Matrix3::operator+=(const Matrix3& rhs) { for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ m[i][j]=m[i][j]+rhs.m[i][j]; } } return *this; } /*! add two matrices */ MATRIX3_INLINE Matrix3 Matrix3::operator +(const Matrix3& rhs) const { Matrix3 res; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ res.m[i][j]=m[i][j]+rhs.m[i][j]; } } return res; } /*! subtract two matrices */ MATRIX3_INLINE Matrix3 Matrix3::operator-(const Matrix3& rhs) const { Matrix3 res; for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { res.m[i][j]=m[i][j]-rhs.m[i][j]; } } return res; } /*! calculate the trace of a matrix */ MATRIX3_INLINE double Matrix3::trace() const { return m[0][0]+m[1][1]+m[2][2]; } /*! calculate the euclidian norm of a matrix */ MATRIX3_INLINE double Matrix3::norm() const { double res=0.0; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ res+=m[i][j]*m[i][j]; } } return res; } // matrix from vector MATRIX3_INLINE Matrix3 star(const Vec3& V) { Matrix3 res; res.m[0][1]=-V.Z(); res.m[0][2]=V.Y(); res.m[1][0]=V.Z(); res.m[1][2]=-V.X(); res.m[2][0]=-V.Y(); res.m[2][1]=V.X(); return res; } // unit matrix MATRIX3_INLINE Matrix3 Matrix3::Unit() { Matrix3 res; res.m[0][0]=1.0; res.m[1][1]=1.0; res.m[2][2]=1.0; return res; } /*! scalar * matrix */ MATRIX3_INLINE Matrix3 operator*(double d,const Matrix3& M) { Matrix3 res; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ res.m[i][j]=d*M.m[i][j]; } } return res; } #endif // __MATRIX3_HPP ./Foundation/t_list.h0000664000175000017500000000522212176660653014415 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _T_LIST_H_ #define _T_LIST_H_ #include #ifndef NULL #define NULL 0 #endif #ifdef _LINUX #include #endif #ifdef _DEBUG #include "console.h" #endif template class Node { public: Node *Next, *Prev ; T *Val ; } ; /*! List container. */ template class List { protected: Node *Start ; //!< Pointer to Start of list Node *End; //!< Pointer to end of list Node *Current ; //! Pointer to current position in the list public: inline List() ; inline List(const List &L) ; virtual ~List() ; inline void Swap() ; inline void InsertAtStart(T *V) ; inline void Append(T *V) ; inline void InsertAfter(T *V) ; inline void InsertBefore(T *V) ; inline T* Get() ; inline void Put(T *V) ; inline void Clear() ; inline void Destroy() ; inline List& operator << (T *V) ; inline List& operator >> (T *V) ; inline void Next() ; inline void Prev() ; inline void First() ; inline void Last() ; inline int IsEnd() ; inline int IsStart() ; inline int SizeList() ; inline List operator + (const List& L) ; inline List& operator += (const List& L) ; inline List& operator = (const List& L) ; } ; /*! Stack container. */ template< class T> class Stack { protected: List L ; public: inline Stack() {} ; virtual ~Stack() { L.Destroy() ; } ; inline void Push(T* V) ; inline T* Pop() ; } ; #if 0 /*! List container where current position in list can be save using pop and push. */ template class ListWS: public List { protected: Stack > stack ; public: inline ListWS() : List() {} ; inline ListWS(const ListWS &L) : List(L) { } ; virtual ~ListWS() { } ; inline void PushPos() ; //!< Save current position in the list inline void PopPos() ; //!< restore last saved position in the list } ; #endif #include "t_list.hpp" #endif ./Foundation/Matrix3.cpp0000664000175000017500000001636712176660653015015 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/Matrix3.h" #include "Foundation/Matrix3.hpp" #include "Foundation/cube_eq.h" // for eigenvalues #include // --- STL includes --- #include using std::set; // Solve 3x3 equation system via determinants // throws exception MatSingularError() in case of a singular matrix // needs 59 Flops ( 36 mult , 20 add/sub , 3 div ) Vec3 Matrix3::solve(const Vec3& rhs) const { double det1,detx,dety,detz; det1=m[0][0]*(m[1][1]*m[2][2]-m[1][2]*m[2][1])+m[0][1]*(m[1][2]*m[2][0]-m[1][0]*m[2][2])+m[0][2]*(m[1][0]*m[2][1]-m[1][1]*m[2][0]); if(det1 == 0){ throw MatSingularError(); } detx=rhs.data[0]*(m[1][1]*m[2][2]-m[1][2]*m[2][1])+m[0][1]*(m[1][2]*rhs.data[2]-rhs.data[1]*m[2][2])+m[0][2]*(rhs.data[1]*m[2][1]-m[1][1]*rhs.data[2]); dety=m[0][0]*(rhs.data[1]*m[2][2]-m[1][2]*rhs.data[2])+rhs.data[0]*(m[1][2]*m[2][0]-m[1][0]*m[2][2])+m[0][2]*(m[1][0]*rhs.data[2]-rhs.data[1]*m[2][0]); detz=m[0][0]*(m[1][1]*rhs.data[2]-rhs.data[1]*m[2][1])+m[0][1]*(rhs.data[1]*m[2][0]-m[1][0]*rhs.data[2])+rhs.data[0]*(m[1][0]*m[2][1]-m[1][1]*m[2][0]); double x=detx/det1; double y=dety/det1; double z=detz/det1; return Vec3(x,y,z); } // in situ inversion // based on a`[ij]=det(A[ij])/det(M) // where A[ij] is the adjoined submatrix to a[ij] // 50 Flops (27 mult, 14 add/sub, 9 div) void Matrix3::invert() { double det1,temp[3][3]; det1=m[0][0]*(m[1][1]*m[2][2]-m[1][2]*m[2][1])+m[0][1]*(m[1][2]*m[2][0]-m[1][0]*m[2][2])+m[0][2]*(m[1][0]*m[2][1]-m[1][1]*m[2][0]); if(det1 == 0){ // det(M)==0 -> singular matrix throw MatSingularError(); } temp[0][0]=(m[1][1]*m[2][2]-m[1][2]*m[2][1])/det1; temp[0][1]=(m[1][2]*m[2][0]-m[1][0]*m[2][2])/det1; temp[0][2]=(m[1][0]*m[2][1]-m[1][1]*m[2][0])/det1; temp[1][0]=(m[0][2]*m[2][1]-m[0][1]*m[2][2])/det1; temp[1][1]=(m[0][0]*m[2][2]-m[0][2]*m[2][0])/det1; temp[1][2]=(m[0][1]*m[2][0]-m[0][0]*m[2][1])/det1; temp[2][0]=(m[1][2]*m[0][1]-m[1][1]*m[0][2])/det1; temp[2][1]=(m[1][0]*m[0][2]-m[1][2]*m[0][0])/det1; temp[2][2]=(m[1][1]*m[0][0]-m[1][0]*m[0][1])/det1; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ m[i][j]=temp[i][j]; } } } /*! Solve the homogeneous system Mx=(0,0,0). It is assumed that rank(M)=2. A unit vector is returned; */ Vec3 Matrix3::solve_homogeneous() const { Vec3 res; // check if any colums vector is all zeros int idx = 0; bool zerocol=false; Vec3 cv1=Vec3(m[0][0],m[1][0],m[2][0]); Vec3 cv2=Vec3(m[0][1],m[1][1],m[2][1]); Vec3 cv3=Vec3(m[0][2],m[1][2],m[2][2]); if(cv1.norm()<1e-7){ idx=0; zerocol=true; } if(cv2.norm()<1e-7){ idx=1; zerocol=true; } if(cv3.norm()<1e-7){ idx=2; zerocol=true; } if(zerocol){ res=Vec3(0.0,0.0,0.0); res[idx]=1.0; } else { // find non-zero element in 1st column int i=0; while((m[i][0]==0) && (i<3)) i++; // the other 2 rows indices int j=(i+1)%3; int k=(i+2)%3; // copy data Matrix3 temp=*this; // zero out the 1st column in the other 2 rows double f=temp.m[j][0]/temp.m[i][0]; temp.m[j][0]=0.0; temp.m[j][1]-=f*temp.m[i][1]; temp.m[j][2]-=f*temp.m[i][2]; f=temp.m[k][0]/temp.m[i][0]; temp.m[k][0]=0.0; temp.m[k][1]-=f*temp.m[i][1]; temp.m[k][2]-=f*temp.m[i][2]; // cout << "step 1 : " << temp << endl; // check if row j is zero (can't have produced a zero column) double nj=Vec3(temp.m[j][0],temp.m[j][1],temp.m[j][2]).norm(); if(nj<1e-7){ // check if m[k][1] is zero if(fabs(temp.m[k][1])<10e-7){ // diagonalize m[i][0],m[k][2] // zero m[i][2] f=temp.m[i][2]/temp.m[k][2]; temp.m[i][2]=0.0; temp.m[i][1]-=f*temp.m[k][1]; // cout << "step 2a : " << temp << endl; // solve for res[0],res[1] res[0]=-1.0*temp.m[i][1]/temp.m[i][0]; res[1]=1.0; res[2]=-1.0*temp.m[k][1]/temp.m[k][2]; } else { // m[k][1]!=0.0 -> diagonalize m[i][0],m[k][1] // zero m[i][1] f=temp.m[i][1]/temp.m[k][1]; temp.m[i][1]=0.0; temp.m[i][2]-=f*temp.m[k][2]; // cout << "step 2b : " << temp << endl; // solve for res[0],res[1] res[0]=-1.0*temp.m[i][2]/temp.m[i][0]; res[1]=1.0; res[2]=-1.0*temp.m[k][2]/temp.m[k][1]; } } else { // check if m[j][1] is zero if(fabs(temp.m[j][1])<10e-7){ // diagonalize m[i][0],m[j][2] // zero m[i][2] f=temp.m[i][2]/temp.m[j][2]; temp.m[i][2]=0.0; temp.m[i][1]-=f*temp.m[j][1]; // cout << "step 2a : " << temp << endl; // solve for res[0],res[1] res[0]=-1.0*temp.m[i][1]/temp.m[i][0]; res[1]=-1.0*temp.m[j][1]/temp.m[j][2]; res[2]=1.0; } else { // m[j][1]!=0.0 -> diagonalize m[i][0],m[j][1] // zero m[i][1] f=temp.m[i][1]/temp.m[j][1]; temp.m[i][1]=0.0; temp.m[i][2]-=f*temp.m[j][2]; // cout << "step 2b : " << temp << endl; // solve for res[0],res[1] res[0]=-1.0*temp.m[i][2]/temp.m[i][0]; res[1]=-1.0*temp.m[j][2]/temp.m[j][1]; res[2]=1.0; } } } // cout << " res: " << res << endl; return res.unit(); } /*! calculate eigenvectors & eigenvalues \returns v1 eigenvector with largest eigenvalue \returns v2 eigenvector with middle eigenvalue \returns v3 eigenvector with smalles eigenvalue \returns e1 largest eigenvalue \returns e2 middle eigenvalue \returns e3 smalles eigenvalue */ void Matrix3::eigen(Vec3& v1,Vec3& v2,Vec3& v3,double& e1,double& e2,double& e3) { double te1,te2; // --- eigenvalues first --- // get determinant double I1=-1.0*(m[0][0]+m[1][1]+m[2][2]); double I2=m[0][0]*m[1][1]-m[0][1]*m[1][0]+ m[0][0]*m[2][2]-m[0][2]*m[2][0]+ m[1][1]*m[2][2]-m[1][2]*m[2][1]; double I3=-1.0*det(); // std::cout << "I1,I2,I3 " << I1 << " , " << I2 << " , " << I3 << std::endl; if(I3==0){ // simple case, matrix singluar -> 1 eigenvalue 0 // solve quadratic eqn. double p=0.5*I1; double q=sqrt(p*p-I2); te1=p+q; te2=p-q; // calc eigenvectors Matrix3 m=*this; m+=Matrix3::Unit()*-1.0*te1; v1=(m.solve(Vec3(0.0,0.0,0.0))).unit(); m=*this; m+=Matrix3::Unit()*-1.0*te2; v2=(m.solve(Vec3(0.0,0.0,0.0))).unit(); v3=cross(v1,v2); } else { // matrix not singular -> solve full cubic equation CubicEquation CE(I1,I2,I3); set roots=CE.getRealRoots(10e-8); if(roots.size()==3){ set::iterator iter=roots.begin(); e1=*iter; iter++; e2=*iter; iter++; e3=*iter; Matrix3 m=*this; m+=Matrix3::Unit()*-1.0*e1; v1=(m.solve_homogeneous()).unit(); m=*this; m+=Matrix3::Unit()*-1.0*e2; v2=(m.solve_homogeneous()).unit(); m=*this; m+=Matrix3::Unit()*-1.0*e3; v3=(m.solve_homogeneous()).unit(); }else{ //can't happen // throw some error } } } ./Foundation/realdist.h0000664000175000017500000000226612176660653014733 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef REALDIST_H #define REALDIST_H // -- IO includes -- // -- STL includes -- #include using std::string; class RealDist { public: RealDist (double MinSize, double MaxSize, int Nbins); ~RealDist (); void AddSample (double evsize); void Write (const string&); void Clear(); private: int nbins; double maxsize, minsize, binsize; long Nevents; void Create (); void Destroy (); long *Edist; void AddEvSize (double evsize); }; #endif ./Foundation/PathUtil.h0000664000175000017500000000151512176660653014652 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include namespace esys { namespace lsm { void setPathEnv(const std::string &exeName); void setPathEnv(int argc, char *argv[]); } } ./Foundation/PathUtil.cpp0000664000175000017500000000411512176660653015204 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/PathUtil.h" #include #include #include #include using namespace boost; namespace esys { namespace lsm { void setPathEnv(int argc, char *argv[]) { if (argc > 0) { setPathEnv(argv[0]); } } /** * Function which modifies the PATH environment variable according * to the specified executable file. This is a work-around for the * SGI MPT mpirun implementation which appears to alter the PATH environment * variable of the executed processes. */ void setPathEnv(const std::string &exeName) { if (exeName.size() > 0) { std::string origPathValue = ""; const char *getenvVal = getenv("PATH"); if (getenvVal != NULL) { origPathValue = getenvVal; } #if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 filesystem::path exePath = filesystem::system_complete(filesystem::path(exeName, boost::filesystem::native)); std::string newPathValue = origPathValue + ":" + (exePath.branch_path().native_file_string()); #else filesystem::path exePath = filesystem::system_complete(filesystem::path(exeName)); std::string newPathValue = origPathValue + ":" + (exePath.branch_path().string()); #endif setenv("PATH", newPathValue.c_str(), 1); } } } } ./Foundation/Runnable.h0000664000175000017500000000166012176660653014667 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRUNNABLE_H #define ESYS_LSMRUNNABLE_H #include namespace esys { namespace lsm { class Runnable { public: typedef boost::shared_ptr Ptr; virtual void run() = 0; }; } } #endif ./Foundation/Makefile.am0000664000175000017500000000320712176660653015003 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libFoundation.la libFoundation_la_LIBADD = $(BOOST_FILESYSTEM_LIBS) $(BOOST_PYTHON_LIBS) libFoundation_la_LDFLAGS = $(AM_LDFLAGS) $(BOOST_PYTHON_LDFLAGS) libFoundation_la_CPPFLAGS = $(AM_CPPFLAGS) $(BOOST_PYTHON_CPPFLAGS) libFoundation_la_SOURCES = \ console.cpp \ console.h \ Counter.cpp \ Counter.h \ Error.h \ Matrix3.cpp \ Matrix3.h \ Matrix3.hpp \ Quaternion.cpp \ Quaternion.h \ Quaternion.hpp \ t_list.h \ t_list.hpp \ vec3.cpp \ vec3.h \ vec3.hpp \ Timer.cpp \ Timer.h \ StringUtil.cpp \ StringUtil.h \ realdist.h \ realdist.cpp \ quadtuple.h \ StlIterator.h \ quintuple.h \ PathSearcher.cpp \ PathSearcher.h \ Runnable.cpp \ Runnable.h \ PathUtil.cpp \ PathUtil.h \ Rng.cpp \ Rng.h \ Rng.hpp \ BoundingSphere.cpp \ BoundingSphere.h \ BoundingSphere.hpp \ BoundingBox.cpp \ BoundingBox.h \ BoundingBox.hpp \ cube_eq.cpp \ cube_eq.h \ triplet.h \ Functional.h noinst_HEADERS = ./Foundation/triplet.h0000664000175000017500000000253512176660653014606 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMTRIPLET_H #define ESYS_LSMTRIPLET_H #include namespace esys { namespace lsm { template class triplet : public boost::tuple { public: typedef boost::tuple inherited; inline triplet() : inherited() { } inline triplet(const T1 &t1, const T2 &t2, const T3 &t3) : inherited(t1,t2,t3) { } inline triplet(const triplet &trip) : inherited(trip) { } inline triplet &operator=(const triplet &trip) { inherited::operator=(trip); return *this; } }; } } #endif ./Foundation/Runnable.cpp0000664000175000017500000000137212176660653015222 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/Runnable.h" namespace esys { namespace lsm { } } ./Foundation/Quaternion.h0000664000175000017500000000703312176660653015246 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _QUATERNION_H #define _QUATERNION_H #define DO_INLINE_QUATERNION 1 #if DO_INLINE_QUATERNION >= 1 #define QUATERNION_INLINE inline #else #define QUATERNION_INLINE #endif #include #include "Foundation/vec3.h" class Matrix3; class Quaternion { private: Vec3 vector; double scalar; public: // Constructors QUATERNION_INLINE Quaternion(); QUATERNION_INLINE Quaternion(double, const Vec3 &); // Copy Constructor QUATERNION_INLINE Quaternion(const Quaternion &); // Destructor QUATERNION_INLINE ~Quaternion() {}; // Assignment QUATERNION_INLINE Quaternion& operator=(const Quaternion&); // Output QUATERNION_INLINE std::ostream& output(std::ostream&) const; QUATERNION_INLINE std::istream& input(std::istream& ci); // Math QUATERNION_INLINE bool operator==(const Quaternion&) const; QUATERNION_INLINE bool operator!=(const Quaternion&) const; QUATERNION_INLINE Quaternion operator+(const Quaternion&) const; QUATERNION_INLINE Quaternion operator-(const Quaternion&) const; QUATERNION_INLINE Quaternion operator-() const; QUATERNION_INLINE friend Quaternion operator*(double, const Quaternion&); QUATERNION_INLINE Quaternion operator*(double) const; QUATERNION_INLINE Quaternion operator*(const Quaternion&) const; QUATERNION_INLINE Quaternion operator/(const Quaternion&) const; QUATERNION_INLINE Quaternion& operator+=(const Quaternion&); QUATERNION_INLINE Quaternion& operator-=(const Quaternion&); QUATERNION_INLINE Quaternion& operator*=(double); QUATERNION_INLINE Quaternion& operator*=(const Quaternion&); QUATERNION_INLINE Quaternion& operator/=(const Quaternion&); QUATERNION_INLINE Quaternion inverse() const; QUATERNION_INLINE void normalize(); QUATERNION_INLINE double length() const; QUATERNION_INLINE Matrix3 to_matrix() const; // Access Functions QUATERNION_INLINE Vec3 return_vec() const { return vector; }; QUATERNION_INLINE double return_sca() const { return scalar; }; QUATERNION_INLINE void set_vector(const Vec3 &v) { vector = v; } QUATERNION_INLINE void set_scalar(double d) { scalar = d; } /** * Returns the angle and axis of rotation associated with this * quaternion as 3x1 vector. The magnitude of the vector is the * angle of rotation in radians. */ QUATERNION_INLINE Vec3 asAngleAxis() const; /** * Pair representing angle of rotation about an axis. */ typedef std::pair AngleAxisPair; /** * Returns the angle and axis of rotation associated with this * quaternion as std::pair. Axis has non-unit * magnitude. */ QUATERNION_INLINE AngleAxisPair asAngleAxisPair() const; }; QUATERNION_INLINE std::ostream& operator<<(std::ostream&, const Quaternion &); QUATERNION_INLINE std::istream& operator>>(std::istream&, Quaternion &); #if DO_INLINE_QUATERNION >= 1 #include "Foundation/Quaternion.hpp" #endif #endif ./Foundation/version.h0000664000175000017500000000163612176660653014611 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LSM_VERSION_H #define __LSM_VERSION_H #include namespace lsm_version_info { static const int CheckPointVersion=3; static const std::string ESySParticleVersion="ESyS-Particle_2.2_bzr_rev. "; } #endif // __LSM_VERSION_H ./Foundation/vec3.h0000664000175000017500000001054212176660653013760 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VEC3_H #define __VEC3_H #define DO_INLINE_VEC3 1 #if DO_INLINE_VEC3 >= 1 #define VEC3_INLINE inline #else #define VEC3_INLINE #endif #include #include #include #include "Foundation/Error.h" using std::ostream; using std::istream; using std::string; class Matrix3; class VecErr:public MError { public: VecErr(const string&); virtual ~VecErr(){}; }; struct VDMulVadd; struct VDMul; class Vec3 { protected: double data[3]; public: static const Vec3 ZERO; //! The zero vector. // constructors VEC3_INLINE Vec3(); VEC3_INLINE explicit Vec3(double s); VEC3_INLINE Vec3(double,double,double); VEC3_INLINE Vec3(const Vec3&); // vec-vec operators VEC3_INLINE Vec3& operator=(const Vec3&); VEC3_INLINE Vec3& operator=(double s); VEC3_INLINE Vec3& operator-=(const Vec3&); VEC3_INLINE Vec3& operator+=(const Vec3&); VEC3_INLINE Vec3 operator+(const Vec3&) const; VEC3_INLINE Vec3 operator-(const Vec3&) const; //wangyc added ! VEC3_INLINE Vec3 operator*(const Matrix3 &m) const; VEC3_INLINE double operator*(const Vec3&) const; VEC3_INLINE Vec3 operator-() const; // vec-dbl ops VEC3_INLINE Vec3 operator*(double) const; VEC3_INLINE Vec3& operator*=(double); VEC3_INLINE Vec3 operator/(double) const; VEC3_INLINE Vec3 operator-(double) const; VEC3_INLINE Vec3 operator+(double) const; VEC3_INLINE Vec3& operator+=(double); VEC3_INLINE Vec3& operator-=(double); // wangyc added ! VEC3_INLINE Vec3& operator/=(double); VEC3_INLINE double norm() const; VEC3_INLINE double norm2() const; VEC3_INLINE Vec3 unit() const; VEC3_INLINE Vec3 unit_s() const; //safe version (throw exceptions) VEC3_INLINE double max() const; VEC3_INLINE double min() const; VEC3_INLINE Vec3 rotate(const Vec3 &axis, const Vec3 &axisPt) const; VEC3_INLINE bool operator==(const Vec3&) const; VEC3_INLINE bool operator!=(const Vec3&) const; VEC3_INLINE friend Vec3 cmax(const Vec3&,const Vec3&); VEC3_INLINE friend Vec3 cmin(const Vec3&,const Vec3&); VEC3_INLINE friend Vec3 cross(const Vec3&,const Vec3&); VEC3_INLINE friend double dot(const Vec3&,const Vec3&); VEC3_INLINE friend Vec3 operator*(double,const Vec3&); //n+1-ary operators VEC3_INLINE void mul_add_and_assign(const Vec3*,const Vec3*,const double&); VEC3_INLINE void mul_and_assign(const Vec3*,const double&); VEC3_INLINE Vec3(const VDMulVadd&); VEC3_INLINE Vec3& operator=(const VDMulVadd&); VEC3_INLINE Vec3(const VDMul&); VEC3_INLINE Vec3& operator=(const VDMul&); //access stuff // wangyc added ! VEC3_INLINE void set_x(double x) {data[0] = x;} VEC3_INLINE void set_y(double y) {data[1] = y;} VEC3_INLINE void set_z(double z) {data[2] = z;} // void set_xyz(double x, double y, double z) // { data[0] = x; data[1] = y; data[2] = z;} VEC3_INLINE double& X() {return data[0];}; VEC3_INLINE double& Y() {return data[1];}; VEC3_INLINE double& Z() {return data[2];}; VEC3_INLINE double X() const {return data[0];}; VEC3_INLINE double Y() const {return data[1];}; VEC3_INLINE double Z() const {return data[2];}; VEC3_INLINE const double &operator[](int i) const {return data[i];} VEC3_INLINE double& operator[](int i) {return data[i];} // in/output VEC3_INLINE friend ostream& operator << (ostream&,const Vec3&); VEC3_INLINE friend istream& operator >> (istream&,Vec3&); // comparison -> enable to use of Vec3 as key in STL map and set bool operator<(const Vec3&) const; friend class Matrix3; }; VEC3_INLINE Vec3 comp_max(const Vec3&,const Vec3&); //!< per component maximum VEC3_INLINE Vec3 comp_min(const Vec3&,const Vec3&); //!< per component minimum #if DO_INLINE_VEC3 >= 1 #include "Foundation/vec3.hpp" #endif #endif // __VEC3_H ./Foundation/Error.h0000664000175000017500000000173212176660653014212 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ERROR_H #define __ERROR_H #include #include using namespace std; class MError { protected: string message; public: MError(const string& m){message="Error : "+m;}; virtual ~MError(){}; void print_err() const{cerr << message << endl;}; }; #endif //__ERROR_H ./Foundation/PathSearcher.cpp0000664000175000017500000000407512176660653016030 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/PathSearcher.h" #include "Foundation/StringUtil.h" #include #include #include #include using namespace boost; namespace esys { namespace lsm { PathSearcher::PathSearcher(const std::string &delimitedPathList, const std::string &delim) : m_pathVector() { StringUtil::StringVector searchPaths = StringUtil::splitStrings(delimitedPathList, delim); for (StringUtil::StringVector::const_iterator it = searchPaths.begin(); it != searchPaths.end(); it++) { #if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 m_pathVector.push_back(filesystem::path(*it,filesystem::native)); #else m_pathVector.push_back(filesystem::path(*it)); #endif } } /* bool exists(const std::string &fileName) { return false; } */ filesystem::path PathSearcher::findPath(const std::string &fileName) { for (PathVector::const_iterator it = m_pathVector.begin(); it != m_pathVector.end(); it++) { const filesystem::path p = (*it) / fileName; if (filesystem::exists(p)) { return p; } } return filesystem::path(); } std::string PathSearcher::find(const std::string &fileName) { return findPath(fileName).string(); } } } ./Foundation/BoundingBox.cpp0000664000175000017500000000132012176660653015663 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/BoundingBox.h" ./Foundation/Quaternion.hpp0000664000175000017500000001664712176660653015621 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef _QUATERNION_HPP #define _QUATERNION_HPP // // ============================================================ // // Quaternion.hpp #include "Foundation/Quaternion.h" #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" // // ============================================================ // // CONSTRUCTORS, DESTRUCTORS // // ============================================================ // QUATERNION_INLINE Quaternion::Quaternion() : vector(Vec3::ZERO), scalar(1.0) { } QUATERNION_INLINE Quaternion::Quaternion(double d, const Vec3 &v) : vector(v), scalar(d) { } QUATERNION_INLINE Quaternion::Quaternion(const Quaternion & q) : vector(q.vector), scalar(q.scalar) { } // // ============================================================ // // ASSIGNMENT // // ============================================================ // QUATERNION_INLINE Quaternion& Quaternion::operator=(const Quaternion& q) { #if 0 if (&q == this) return *this; #endif vector = q.vector; scalar = q.scalar; return *this; } // // ============================================================ // // OUTPUT // // ============================================================ // QUATERNION_INLINE std::ostream& operator<<(std::ostream& co, const Quaternion& q) { return q.output(co); } QUATERNION_INLINE std::istream& operator>>(std::istream& ci, Quaternion& q) { return q.input(ci); } QUATERNION_INLINE std::ostream& Quaternion::output(std::ostream& co) const { co << scalar << ' ' << vector; return co; } QUATERNION_INLINE std::istream& Quaternion::input(std::istream& ci) { ci >> scalar >> vector; return ci; } QUATERNION_INLINE bool Quaternion::operator==(const Quaternion &q) const { return ( (return_sca() == q.return_sca()) && (return_vec() == q.return_vec()) ); } QUATERNION_INLINE bool Quaternion::operator!=(const Quaternion &q) const { return !(*this == q); } // // ============================================================ // // ARITHMETIC OPERATIONS // // ============================================================ // QUATERNION_INLINE Quaternion Quaternion::operator+(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar + q2.scalar; qq.vector = vector + q2.vector; #endif return Quaternion(scalar + q2.scalar, vector + q2.vector); } QUATERNION_INLINE Quaternion Quaternion::operator-(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar - q2.scalar; qq.vector = vector - q2.vector; #endif return Quaternion(scalar-q2.scalar, vector-q2.vector); } QUATERNION_INLINE Quaternion Quaternion::operator-() const { #if 0 Quaternion qq; qq.scalar = -scalar; qq.vector = -vector; #endif return Quaternion(-scalar, -vector); } QUATERNION_INLINE Quaternion operator*(double c, const Quaternion& q) { #if 0 Quaternion qq; qq.scalar = c * q.scalar; qq.vector = c * q.vector; #endif return Quaternion(c*q.scalar, c*q.vector); } QUATERNION_INLINE Quaternion Quaternion::operator*(double c) const { return Quaternion(c * scalar, c * vector); } QUATERNION_INLINE Quaternion Quaternion::operator*(const Quaternion& q2) const { #if 0 Quaternion qq; qq.scalar = scalar * q2.scalar - dot(vector, q2.vector); qq.vector = scalar * q2.vector + q2.scalar * vector + cross(vector, q2.vector); #endif return Quaternion( scalar * q2.scalar - dot(vector, q2.vector), scalar * q2.vector + q2.scalar * vector + cross(vector, q2.vector) ); } QUATERNION_INLINE Quaternion Quaternion::inverse() const { return Quaternion(scalar, -vector); } QUATERNION_INLINE Quaternion Quaternion::operator/(const Quaternion& q2) const { return *this * q2.inverse(); } QUATERNION_INLINE Quaternion& Quaternion::operator+=(const Quaternion& q) { scalar += q.scalar; vector += q.vector; return *this; } QUATERNION_INLINE Quaternion& Quaternion::operator-=(const Quaternion& q) { scalar -= q.scalar; vector -= q.vector; return *this; } QUATERNION_INLINE Quaternion& Quaternion::operator*=(double c) { scalar *= c; vector *= c; return *this; } QUATERNION_INLINE Quaternion& Quaternion::operator*=(const Quaternion& q) { const double s = scalar * q.scalar - dot(vector, q.vector); vector = scalar * q.vector + q.scalar * vector + cross(vector, q.vector); scalar = s; return *this; } QUATERNION_INLINE Quaternion& Quaternion::operator/=(const Quaternion& q) { Quaternion qq = q.inverse(); const double s = scalar * qq.scalar - dot(vector, qq.vector); vector = scalar * qq.vector + qq.scalar * vector + cross(vector, qq.vector); scalar = s; return *this; } QUATERNION_INLINE void Quaternion::normalize() { double len = length(); if (len > 1.0e-8) { scalar /= len; vector /= len; } } QUATERNION_INLINE double Quaternion::length() const { const double vlen = vector.norm(); return sqrt(scalar * scalar + vlen * vlen); } QUATERNION_INLINE Matrix3 Quaternion::to_matrix() const { double m[3][3]; m[0][0] = scalar*scalar + vector.X()*vector.X() - vector.Y()*vector.Y() -vector.Z()*vector.Z(); m[0][1] = 2*(vector.X()*vector.Y() + scalar*vector.Z()); m[0][2] = 2*(vector.X()*vector.Z() - scalar*vector.Y()); m[1][0] = 2*(vector.X()*vector.Y() - scalar*vector.Z()); m[1][1] = scalar*scalar - vector.X()*vector.X() + vector.Y()*vector.Y() - vector.Z()*vector.Z(); m[1][2] = 2*(vector.Y()*vector.Z() + scalar*vector.X()); m[2][0] = 2*(vector.X()*vector.Z() + scalar*vector.Y()); m[2][1] = 2*(vector.Y()*vector.Z() - scalar*vector.X()); m[2][2] = scalar*scalar - vector.X()*vector.X() - vector.Y()*vector.Y() + vector.Z()*vector.Z(); // In 2D case m[2][2] is not so accurate! // m[2][2] = 0.0 ; /* m[0][0] = 1.0 - 2.0*vector.Y()*vector.Y() -2.0*vector.Z()*vector.Z(); m[0][1] = 2*(vector.X()*vector.Y() + scalar*vector.Z()); m[0][2] = 2*(vector.X()*vector.Z() - scalar*vector.Y()); m[1][0] = 2*(vector.X()*vector.Y() - scalar*vector.Z()); m[1][1] = 1.0 -2.0* vector.X()*vector.X() - 2.0*vector.Z()*vector.Z(); m[1][2] = 2*(vector.Y()*vector.Z() + scalar*vector.X()); m[2][0] = 2*(vector.X()*vector.Z() + scalar*vector.Y()); m[2][1] = 2*(vector.Y()*vector.Z() - scalar*vector.X()); m[2][2] = 1.0 - 2.0*vector.X()*vector.X() - 2.0*vector.Y()*vector.Y() ; */ return Matrix3(m); } QUATERNION_INLINE Vec3 Quaternion::asAngleAxis() const { Vec3 v(this->vector); return (v *= (2*acos(this->scalar)/v.norm())); } QUATERNION_INLINE Quaternion::AngleAxisPair Quaternion::asAngleAxisPair() const { return AngleAxisPair(2*acos(this->scalar), this->vector); } #endif // _QUATERNION_HPP ./Foundation/BoundingBox.h0000664000175000017500000000303712176660653015337 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBOUNDINGBOX_H #define ESYS_LSMBOUNDINGBOX_H #include "Foundation/vec3.h" namespace esys { namespace lsm { /*! \brief 3D bounding box */ class BoundingBox { public: inline BoundingBox(); inline BoundingBox(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt); inline virtual ~BoundingBox(); inline double getVolume() const; inline const Vec3 &getMinPt() const; inline const Vec3 &getMaxPt() const; inline bool operator==(const BoundingBox &bbox) const; inline Vec3 getSizes() const; inline bool contains(const Vec3 &pt, double tolerance = 0.0) const; private: Vec3 m_minPt; Vec3 m_maxPt; }; inline std::ostream &operator<<(std::ostream &oStream, const BoundingBox &bbox); } } #include "Foundation/BoundingBox.hpp" #endif ./Foundation/Timer.h0000664000175000017500000000624712176660653014207 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MPI_TIMER_H_ #define __MPI_TIMER_H_ //--- MPI includes --- #include //--- STL includes --- #include #include #include /*! * Simple timer class for storing a start and stop time. */ class MpiWTimer { public: MpiWTimer(); MpiWTimer(const std::string &name); void setStart(const double &wTime); void pause(const double &wTime); void resume(const double &wTime); void setStop(const double &wTime, bool elapseIsStopMinusStart=false); double getTiming() const; const std::string &getName() const; bool isPaused() const; void zeroise(); protected: void isPaused(bool paused); private: std::string m_name; double m_startTime; double m_stopTime; bool m_isPaused; double m_pauseTime; double m_resumeTime; double m_elapsedTime; }; class MpiWTimers; /** * Helper for appending timing data to file, caches an ofstream for a file. */ class TimingDataWriter { public: TimingDataWriter(const std::string &fileName, MpiWTimers &timers); std::ostream &getOStream(); const std::string &getFileName() const; void writeHeader(); void appendData(); private: std::string m_fileName; MpiWTimers *m_pTimers; bool m_haveWrittenHeader; typedef boost::shared_ptr OFStreamPtr; OFStreamPtr m_oFStreamPtr; }; /*! * Helper class for recording various pieces of timing info. */ class MpiWTimers { public: MpiWTimers(); void start(const std::string &name); void stop(const std::string &name, bool elapseIsStopMinusStart=false); void pause(const std::string &name); void resume(const std::string &name); void zeroise(const std::string &name); void zeroise(); bool timerExists(const std::string &name) const; double getTiming(const std::string &name) const; void writeHeader(std::ostream &oStream); void appendData(std::ostream &oStream); void appendData(const std::string &fileName); void clear(); protected: //void createTimer(const std::string &timerName); MpiWTimer *findTimer(const std::string &timerName); const MpiWTimer *findTimer(const std::string &timerName) const; MpiWTimer &findOrCreateTimer(const std::string &timerName); TimingDataWriter &getWriter(const std::string &fileName); private: typedef std::map NameMpiWTimerMap; NameMpiWTimerMap m_timerMap; typedef std::map FileNameWriterMap; FileNameWriterMap m_fileNameWriterMap; }; #endif //__MPI_TIMER_H_ ./NEWS0000664000175000017500000000112212176660653011332 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# Latest news and announcements are available at: https://launchpad.net/esys-particle/ ./Makefile.am0000664000175000017500000000163312176660653012676 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am SUBDIRS = libltdl Foundation ntable tml ppa pis Geometry Model Fields Parallel Tools Python Doc/Tutorial ACLOCAL_AMFLAGS = -I Config EXTRA_DIST = Config/pkg.m4 Config/cppunit.m4 Config/libtool.m4 ./Geometry/0000775000175000017500000000000012176660653012432 5ustar vborosvboros./Geometry/Line.cpp0000664000175000017500000000172112176660653014026 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Line.h" /*! protected empty constructor -> for use by derived classes (i.e. LineSegment) only */ Line::Line() {} Line::Line(const Vec3& D,const Vec3& P) { N=D; U.X()=-N.Y(); U.Y()=N.X(); U.Z()=0.0; Pos=P; } double Line::sep(const Vec3& M) { return fabs((M-Pos)*N); } ./Geometry/BlockGenerator.cpp0000664000175000017500000001075212176660653016044 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/BlockGenerator.h" #include "Geometry/GridIterator.h" #include "Geometry/SimpleParticle.h" #include namespace esys { namespace lsm { BlockGenerator::BlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ) : ParticleGenerator(nTable, particlePool), m_bBox(bBox), m_periodicDimensions(periodicDimensions), m_tolerance(tolerance) { } BlockGenerator::~BlockGenerator() { } const BoundingBox &BlockGenerator::getBBox() const { return m_bBox; } size_t BlockGenerator::getNumParticles() const { return m_idSet.size(); } int BlockGenerator::getNextId() { return static_cast(getNTable().getNumParticles()); } double BlockGenerator::getTolerance() const { return m_tolerance; } bool BlockGenerator::is2d() const { return ((getBBox().getMaxPt().Z() - getBBox().getMinPt().Z()) <= 0); } bool BlockGenerator::particleFitsInBBox(const SimpleParticle &particle) const { return ( ( m_periodicDimensions[0] || ( m_bBox.contains(particle.getPos() - Vec3(particle.getRad(), 0, 0), getTolerance()) && m_bBox.contains(particle.getPos() + Vec3(particle.getRad(), 0, 0), getTolerance()) ) ) && ( m_periodicDimensions[1] || ( m_bBox.contains(particle.getPos() - Vec3(0, particle.getRad(), 0), getTolerance()) && m_bBox.contains(particle.getPos() + Vec3(0, particle.getRad(), 0), getTolerance()) ) ) && ( is2d() || m_periodicDimensions[2] || ( m_bBox.contains(particle.getPos() - Vec3(0, 0, particle.getRad()), getTolerance()) && m_bBox.contains(particle.getPos() + Vec3(0, 0, particle.getRad()), getTolerance()) ) ) ); } bool BlockGenerator::particleFitsWithNeighbours(const SimpleParticle &particle) const { const ParticleVector neighbours = getNTable().getNeighbourVector( particle.getPos(), particle.getRad() + getTolerance() ); ParticleVector::const_iterator iter = neighbours.begin(); for (; iter != neighbours.end(); iter++) { const double dist = (particle.getPos() - (*iter)->getPos()).norm(); if (dist < ((particle.getRad() + (*iter)->getRad()) - getTolerance())) { return false; } } return true; } bool BlockGenerator::particleFits(const SimpleParticle &particle) const { return (particleFitsInBBox(particle) && particleFitsWithNeighbours(particle)); } void BlockGenerator::insertParticle(const SimpleParticle &particle) { SimpleParticle *pParticle = getParticlePool().construct(particle); m_particleVector.push_back(pParticle); m_idSet.insert(pParticle->getID()); getNTable().insert(pParticle); } bool BlockGenerator::contains(const SimpleParticle &particle) const { return (m_idSet.find(particle.getID()) != m_idSet.end()); } SimpleParticle BlockGenerator::generateParticle(const Vec3 &point) { return SimpleParticle(point, getRadius(), getNextId()); } void BlockGenerator::generateSeedParticles() { GridIterator pointIt = GridIterator(getBBox(), getGridRadius()); while (pointIt.hasNext()) { SimpleParticle particle = generateParticle(pointIt.next()); if (particleFits(particle)) { insertParticle(particle); } } } } } ./Geometry/GougeConfig.cpp0000664000175000017500000000131612176660653015333 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GougeConfig.h" ./Geometry/ParticleComparer.cpp0000664000175000017500000000132312176660653016371 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ParticleComparer.h" ./Geometry/SimpleNTable3D.cpp0000664000175000017500000001453612176660653015655 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleNTable3D.h" /*! Return the grid index of a position. \param pos the position \warning does not check if pos is within space */ int CSimple3DNTable::index(const Vec3& pos) const { int ix=int((pos.X()-m_p0.X())/m_dim); int iy=int((pos.Y()-m_p0.Y())/m_dim); int iz=int((pos.Z()-m_p0.Z())/m_dim); int idx=ix+m_xsize*iy+iz*m_xsize*m_ysize; return idx; } /*! Get all indices to which a particle at a given position will be added. \param pos the position \warning does not check if pos is within space */ vector CSimple3DNTable::allidx(const Vec3& pos) const { vector res; int ix=int((pos.X()-m_p0.X())/m_dim); int iy=int((pos.Y()-m_p0.Y())/m_dim); int iz=int((pos.Z()-m_p0.Z())/m_dim); int idx=ix+m_xsize*iy+iz*m_xsize*m_ysize; res.push_back(idx); // iz-layer if(ix>0){ res.push_back(idx-1); if(iy>0){ res.push_back(idx-m_xsize-1); } if(iy0){ res.push_back(idx-m_xsize+1); } if(iy0){ res.push_back(idx-m_xsize); } if(iy0){ int idb=idx-m_xsize*m_ysize; res.push_back(idb); if(ix>0){ res.push_back(idb-1); if(iy>0){ res.push_back(idb-m_xsize-1); } if(iy0){ res.push_back(idb-m_xsize+1); } if(iy0){ res.push_back(idb-m_xsize); } if(iy0){ res.push_back(idb-1); if(iy>0){ res.push_back(idb-m_xsize-1); } if(iy0){ res.push_back(idb-m_xsize+1); } if(iy0){ res.push_back(idb-m_xsize); } if(iy idx=allidx(cbp.getPos()); for(vector::const_iterator citer=idx.begin();citer!=idx.end();citer++){ m_data[*citer].push_back(cbp); } } else if (int((cbp.getPos().X()-m_p0.X())/m_dim)==m_xsize-2) { cbp.moveTo(cbp.getPos()-m_xshift); const vector idx=allidx(cbp.getPos()); for(vector::const_iterator citer=idx.begin();citer!=idx.end();citer++){ m_data[*citer].push_back(cbp); } } } } /*! Constructor \param pos position of the (xmin,ymin,zmin) point \param dim size of the space \param r grid spacing */ CSimple3DNTable::CSimple3DNTable(const Vec3& pos,const Vec3& dim ,double r ,bool xcirc,bool ycirc,bool zcirc) { //cout << "CSimple3DNTable(" << pos << " , " << dim << " , " << r << ")" << endl; m_xsize=int(ceil(dim.X()/r)); m_ysize=int(ceil(dim.Y()/r)); m_zsize=int(ceil(dim.Z()/r)); m_xcirc=xcirc; m_ycirc=ycirc; m_zcirc=zcirc; m_p0=pos; m_dim=r; // pad in circular directions if (m_xcirc) { m_xsize+=2; m_p0-=Vec3(r,0.0,0.0); m_xshift=Vec3(dim.X(),0.0,0.0); } if (m_ycirc) { m_ysize+=2; m_p0-=Vec3(0.0,r,0.0); m_yshift=Vec3(0.0,dim.Y(),0.0); } if (m_zcirc) { m_zsize+=2; m_p0-=Vec3(0.0,0.0,r); m_yshift=Vec3(0.0,0.0,dim.Z()); } //cout << "NT size : " << m_xsize << " , " << m_ysize << " , " << m_zsize << endl; m_data=new vector[m_xsize*m_ysize*m_zsize]; } /*! Put all interactions into a set \param iset the set into which to put them \param dmax max distance for the creation of an interaction */ void CSimple3DNTable::getInteractions(set& iset, double dmax) { for(int i=0;i=2){ for(vector::iterator iter=m_data[idx].begin(); iter!=m_data[idx].end()-1; iter++) { for ( vector::iterator iter2=iter+1; iter2!=m_data[idx].end(); iter2++) { // cout << "Pair: " << iter->getID() << " - " << iter2 ->getID() << endl; if((iter->getPos()-iter2->getPos()).norm() < dmax*(iter->getRad()+iter2->getRad())) { iset.insert(BasicInteraction(iter->getID(),iter2->getID())); } } } } } } } } // debugging only void CSimple3DNTable::print() { for(int i=0;i::iterator iter=m_data[idx].begin(); iter!=m_data[idx].end(); iter++){ cout << iter->getPos() << " , " << iter->getRad() << endl; } } } } } ./Geometry/GeometryInfo.cpp0000664000175000017500000003002712176660653015547 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GeometryInfo.h" // --- STL includes --- #include #include #include namespace esys { namespace lsm { class GeometryInfo::Impl { public: Impl(); Impl( float version, const Vec3 &bBoxMin, const Vec3 &bBoxMax, const BoolVector &periodicDimensions, bool is2d = false ); Impl &operator=(const Impl &impl); bool operator==(const Impl &impl) const; ~Impl(); void read(std::istream &iStream); void write(std::ostream &oStream) const; void writeWithoutVersion(std::ostream &oStream) const; float m_version; Vec3 m_bBoxMin; Vec3 m_bBoxMax; /** * Indicates the dimensions which are periodic, element 0 indicates * whether the x-dim is periodic, element 1 indicates whether the y-dim * is periodic and element 2 indicates whether the z-dim is periodic. */ BoolVector m_periodicDimensions; bool m_is2d; }; GeometryInfo::Impl::Impl() : m_version(0.0), m_bBoxMin(), m_bBoxMax(), m_periodicDimensions(3, false), m_is2d(false) { } GeometryInfo::Impl::Impl( float version, const Vec3 &bBoxMin, const Vec3 &bBoxMax, const BoolVector &periodicDimensions, bool is2d ) : m_version(version), m_bBoxMin(bBoxMin), m_bBoxMax(bBoxMax), m_periodicDimensions(periodicDimensions), m_is2d(is2d) { } GeometryInfo::Impl::~Impl() { } GeometryInfo::Impl &GeometryInfo::Impl::operator=(const GeometryInfo::Impl &impl) { m_version = impl.m_version; m_bBoxMin = impl.m_bBoxMin; m_bBoxMax = impl.m_bBoxMax; m_periodicDimensions = impl.m_periodicDimensions; m_is2d = impl.m_is2d; return *this; } bool GeometryInfo::Impl::operator==(const GeometryInfo::Impl &impl) const { return ( (m_version == impl.m_version) && (m_bBoxMin == impl.m_bBoxMin) && (m_bBoxMax == impl.m_bBoxMax) && (m_is2d == impl.m_is2d) && (m_periodicDimensions == impl.m_periodicDimensions) ); } /*! Write complete geometry info to output stream \param oStream the output stream */ void GeometryInfo::Impl::write(std::ostream &oStream) const { oStream << "LSMGeometry " << m_version << "\n"; writeWithoutVersion(oStream); } /*! Write geometry info to output stream, except the version nr. of the .geo file. This output can't be read by the "read" function. It is used for the snapshot headers. \param oStream the output stream */ void GeometryInfo::Impl::writeWithoutVersion(std::ostream &oStream) const { oStream << "BoundingBox "; oStream << m_bBoxMin.X() << " " << m_bBoxMin.Y() << " " << m_bBoxMin.Z() << " "; oStream << m_bBoxMax.X() << " " << m_bBoxMax.Y() << " " << m_bBoxMax.Z() << "\n"; oStream << "PeriodicBoundaries "; oStream << m_periodicDimensions[0] << " " << m_periodicDimensions[1] << " " << m_periodicDimensions[2]; oStream << "\nDimension " << (m_is2d ? "2D" : "3D"); } void GeometryInfo::Impl::read(std::istream &iStream) { Impl impl; // read and check file type marker std::string fileType; iStream >> fileType; size_t ftl=std::min(fileType.size(),size_t(4)); std::string fileTypeHead=fileType.substr(0,ftl); if ((fileType != "LSMGeometry") && (fileTypeHead!="ESyS")) { // wrong file type -> bail out throw runtime_error("Unrecognised file type " + fileType + " expected LSMGeometry or ESyS-Particle."); } // read and check version number iStream >> impl.m_version; if((fileType=="LSMGeometry") && ((impl.m_version != 1.1f) && (impl.m_version != 1.2f))){ std::stringstream msg; msg << "Can only read version 1.1 or 1.2 geometry files, this is version " << impl.m_version; throw std::runtime_error(msg.str().c_str()); } else if (fileTypeHead=="ESyS") { impl.m_version=1.2f; // temporary hack } // read boundary box string bbx; iStream >> bbx; // check boundary box marker if (bbx != "BoundingBox") { throw std::runtime_error("Expected BoundingBox, got " + bbx);; } iStream >> impl.m_bBoxMin.X() >> impl.m_bBoxMin.Y() >> impl.m_bBoxMin.Z(); iStream >> impl.m_bBoxMax.X() >> impl.m_bBoxMax.Y() >> impl.m_bBoxMax.Z(); // read boundary periodicity string bdry; iStream >> bdry; // check boundary periodicity marker if(bdry != "PeriodicBoundaries") { throw std::runtime_error("Expected PeriodicBoundaries, got " + bdry); } for (int i = 0; i < 3; i++) { bool isPeriodic = false; iStream >> isPeriodic; impl.m_periodicDimensions[i] = isPeriodic; } // if 1.2, read in 2D or 3D if(impl.m_version == 1.2f){ std::string dims; iStream >> dims; if(dims != "Dimension") { throw std::runtime_error("Expected 'Dimension', got '" + dims + "'"); } std::string r2d; iStream >> r2d; if((r2d == "2D") || (r2d == "2d")){ impl.m_is2d = true; } else { impl.m_is2d = false; } } else { impl.m_is2d = true; } *this = impl; } GeometryInfo::GeometryInfo() : m_pImpl(new GeometryInfo::Impl()) { } GeometryInfo::GeometryInfo( float version, const Vec3 &bBoxMin, const Vec3 &bBoxMax, const BoolVector &periodicDimensions, bool is2d ) : m_pImpl(new Impl(version, bBoxMin, bBoxMax, periodicDimensions, is2d)) { } GeometryInfo::GeometryInfo(const GeometryInfo &geoInfo) : m_pImpl(new GeometryInfo::Impl(*(geoInfo.m_pImpl))) { } GeometryInfo &GeometryInfo::operator=(const GeometryInfo &geoInfo) { *m_pImpl = *geoInfo.m_pImpl; return *this; } GeometryInfo::~GeometryInfo() { delete m_pImpl; } bool GeometryInfo::operator==(const GeometryInfo &geoInfo) const { return (*m_pImpl == *geoInfo.m_pImpl); } bool GeometryInfo::hasAnyPeriodicDimensions() const { return ( ((m_pImpl->m_periodicDimensions.size() > 0) && (m_pImpl->m_periodicDimensions[0])) || ((m_pImpl->m_periodicDimensions.size() > 1) && (m_pImpl->m_periodicDimensions[1])) || ((m_pImpl->m_periodicDimensions.size() > 2) && (m_pImpl->m_periodicDimensions[2])) ); } bool GeometryInfo::is2d() const { return m_pImpl->m_is2d; } void GeometryInfo::set_is2d(bool do2d) { m_pImpl->m_is2d = do2d; } Vec3Vector GeometryInfo::getBBoxCorners() const { Vec3Vector corners; corners.push_back(m_pImpl->m_bBoxMin); corners.push_back(m_pImpl->m_bBoxMax); return corners; } Vec3 GeometryInfo::getMinBBoxCorner() const { return m_pImpl->m_bBoxMin; } Vec3 GeometryInfo::getMaxBBoxCorner() const { return m_pImpl->m_bBoxMax; } IntVector GeometryInfo::getPeriodicDimensions() const { return IntVector( m_pImpl->m_periodicDimensions.begin(), m_pImpl->m_periodicDimensions.end() ); } void GeometryInfo::setPeriodicDimensions(BoolVector periodicDimensions) { m_pImpl->m_periodicDimensions = periodicDimensions; } void GeometryInfo::setLsmGeoVersion(float version) { m_pImpl->m_version = version; } /*! get the version of the loaded geometry */ float GeometryInfo::getLsmGeoVersion() const { return m_pImpl->m_version; } void GeometryInfo::read(std::istream &iStream) { m_pImpl->read(iStream); } void GeometryInfo::write(std::ostream &oStream) const { m_pImpl->write(oStream); } void GeometryInfo::writeWithoutVersion(std::ostream &oStream) const { m_pImpl->writeWithoutVersion(oStream); } void GeometryInfo::setBBox(const Vec3 &min, const Vec3 &max) { m_pImpl->m_bBoxMin = min; m_pImpl->m_bBoxMax = max; } /*! check if a model with the geometry described in the GeoInfo given in the argument can be loaded into a pre-existing model \param gi the new geometry info */ bool GeometryInfo::isCompatible(const GeometryInfo& gi) const { bool res=true; // check if circular dimensions agree res=res && (m_pImpl->m_periodicDimensions[0]==gi.m_pImpl->m_periodicDimensions[0]) && (m_pImpl->m_periodicDimensions[1]==gi.m_pImpl->m_periodicDimensions[1]) && (m_pImpl->m_periodicDimensions[2]==gi.m_pImpl->m_periodicDimensions[2]); // check if min/max in circular dimensions agree and // if new (argument) bounding box fits into old bbx in the non-circular dimensions // x if(m_pImpl->m_periodicDimensions[0]) { res = res && (m_pImpl->m_bBoxMin[0]==gi.m_pImpl->m_bBoxMin[0]) && (m_pImpl->m_bBoxMax[0]==gi.m_pImpl->m_bBoxMax[0]); } else { res = res && (m_pImpl->m_bBoxMin[0]<=gi.m_pImpl->m_bBoxMin[0]) && (m_pImpl->m_bBoxMax[0]>=gi.m_pImpl->m_bBoxMax[0]); } // y if(m_pImpl->m_periodicDimensions[1]) { res = res && (m_pImpl->m_bBoxMin[1]==gi.m_pImpl->m_bBoxMin[1]) && (m_pImpl->m_bBoxMax[1]==gi.m_pImpl->m_bBoxMax[1]); } else { res = res && (m_pImpl->m_bBoxMin[1]<=gi.m_pImpl->m_bBoxMin[1]) && (m_pImpl->m_bBoxMax[1]>=gi.m_pImpl->m_bBoxMax[1]); } // z if(m_pImpl->m_periodicDimensions[2]) { res = res && (m_pImpl->m_bBoxMin[2]==gi.m_pImpl->m_bBoxMin[2]) && (m_pImpl->m_bBoxMax[2]==gi.m_pImpl->m_bBoxMax[2]); } else { res = res && (m_pImpl->m_bBoxMin[2]<=gi.m_pImpl->m_bBoxMin[2]) && (m_pImpl->m_bBoxMax[2]>=gi.m_pImpl->m_bBoxMax[2]); } return res; } /*! Check if the geometrical dimensions in two GeometryInfo objects are identical \param gi the new geometry info */ bool GeometryInfo::isIdenticalGeometry(const GeometryInfo& gi) const { bool res=true; // check if circular dimensions agree res=res && (m_pImpl->m_periodicDimensions[0]==gi.m_pImpl->m_periodicDimensions[0]) && (m_pImpl->m_periodicDimensions[1]==gi.m_pImpl->m_periodicDimensions[1]) && (m_pImpl->m_periodicDimensions[2]==gi.m_pImpl->m_periodicDimensions[2]); // check if dimensions agree // x res = res && (m_pImpl->m_bBoxMin[0]==gi.m_pImpl->m_bBoxMin[0]) && (m_pImpl->m_bBoxMax[0]==gi.m_pImpl->m_bBoxMax[0]); // y res = res && (m_pImpl->m_bBoxMin[1]==gi.m_pImpl->m_bBoxMin[1]) && (m_pImpl->m_bBoxMax[1]==gi.m_pImpl->m_bBoxMax[1]); // z res = res && (m_pImpl->m_bBoxMin[2]==gi.m_pImpl->m_bBoxMin[2]) && (m_pImpl->m_bBoxMax[2]==gi.m_pImpl->m_bBoxMax[2]); return res; } std::ostream &operator<<(std::ostream &oStream, const GeometryInfo &geoInfo) { geoInfo.write(oStream); return oStream; } std::istream &operator<<(std::istream &iStream, GeometryInfo &geoInfo) { geoInfo.read(iStream); return iStream; } } } ./Geometry/GeometryInfo.h0000664000175000017500000000661712176660653015224 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGEOMETRYINFO_H #define ESYS_LSMGEOMETRYINFO_H #include "Foundation/vec3.h" #include #include namespace esys { namespace lsm { typedef std::vector BoolVector; typedef std::vector Vec3Vector; typedef std::vector IntVector; /** * Container class for geometry meta-info. */ class GeometryInfo { public: /** * */ GeometryInfo(); /** * */ GeometryInfo( float version, const Vec3 &bBoxMin, const Vec3 &bBoxMax, const BoolVector &periodicDimensions, bool is2d = false ); GeometryInfo(const GeometryInfo &geoInfo); GeometryInfo &operator=(const GeometryInfo &geoInfo); ~GeometryInfo(); bool operator==(const GeometryInfo &geoInfo) const; /** * Sets the bounding box for geometry data. */ void setBBox(const Vec3 &min, const Vec3 &max); /** * Returns true if any of the x, y or z dimensions * have been specified as periodic. */ bool hasAnyPeriodicDimensions() const; /** * Returns true info indicates two-dimensional particle data. */ bool is2d() const; /** * Set 2-D information to true if the particle data are two-dimensional; * otherwise set to false. */ void set_is2d(bool do2d); /** * Returns two corner points of bounding box. */ Vec3Vector getBBoxCorners() const; Vec3 getMinBBoxCorner() const; Vec3 getMaxBBoxCorner() const; /** * Returns the periodic dimensions. */ IntVector getPeriodicDimensions() const; /** * Set the periodicity of the x, y and z dimensions. */ void setPeriodicDimensions(BoolVector periodicDimensions); /** * Set the LSMGeometry version for use in geometry files. */ void setLsmGeoVersion(float version); float getLsmGeoVersion() const; /** * Parses specified istream and assigns to this object. */ void read(std::istream &iStream); /** * Writes to specified istream in form parsable by the * GeometryInfo::read method. */ void write(std::ostream &oStream) const; void writeWithoutVersion(std::ostream &oStream) const; bool isCompatible(const GeometryInfo&) const; bool isIdenticalGeometry(const GeometryInfo&) const; private: class Impl; Impl *m_pImpl; }; std::ostream &operator<<(std::ostream &oStream, const GeometryInfo &geoInfo); std::istream &operator<<(std::istream &iStream, GeometryInfo &geoInfo); } } #endif ./Geometry/ParticleComparer.h0000664000175000017500000000230212176660653016034 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLECOMPARER_H #define ESYS_LSMPARTICLECOMPARER_H namespace esys { namespace lsm { template class ParticleComparer { public: typedef TmplParticle Particle; ParticleComparer(const Particle &p); bool operator()(const Particle &p1, const Particle &p2) const; bool operator()(const Particle *p1, const Particle *p2) const; private: const Particle *m_pParticle; }; } } #include "Geometry/ParticleComparer.hpp" #endif ./Geometry/RoughPaddedBlock3d.h0000664000175000017500000000350012176660653016171 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROUGHPADDEDBLOCK3D_H #define __ROUGHPADDEDBLOCK3D_H //-- project includes -- #include "Geometry/PaddedBlock3D.h" #include "Geometry/Plane3D.h" #include "Geometry/RectPatch.h" // --- STL includes --- #include /*! \class CRoughPaddedBlock3D \brief Class for the generation of a 3D lattice with a random middle section and random rough/smooth sections of the fault surface \author Steffen Abe $Revision: $ $Date: $ */ class CRoughPaddedBlock3D : public CPaddedBlock3D { protected: double m_rough_xres,m_rough_yres; double m_rough_depth; double m_rough_prob; vector m_fault; virtual RectPatch getClosestPatch(const SimpleParticle&,double); virtual Plane3D getClosestPlane(const SimpleParticle&); public: CRoughPaddedBlock3D(double,double,double,double,double,double,double,double,double,double,bool circ_x=false); virtual ~CRoughPaddedBlock3D(){}; void setRoughness(int,int,double,double); virtual bool checkAFit(const SimpleParticle&) ; //virtual void generate(int,unsigned int); virtual void generate(int); /* virtual void tagSplit(int,int,double); */ }; #endif // __ROUGHPADDEDBLOCK3D_H ./Geometry/CMakeLists.txt0000664000175000017500000000044612176660653015176 0ustar vborosvborosFILE(GLOB GEOMETRY_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(Geometry SHARED ${GEOMETRY_SRC_LIB}) TARGET_LINK_LIBRARIES(Geometry Foundation ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS Geometry DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Geometry/Packer.cpp0000664000175000017500000000131112176660653014337 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Packer.h" ./Geometry/SimpleNTable.cpp0000664000175000017500000001420512176660653015457 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleNTable.h" //------ ASimpleNTable member functions ---- ASimpleNTable::ASimpleNTable() : m_data(NULL), m_p0(Vec3::ZERO), m_dim(0.0), m_numInsertedParticles(0) { } ASimpleNTable::~ASimpleNTable() { if (m_data != NULL) delete [] m_data; } /*! get all particles near a given position \param pos the position */ const vector* ASimpleNTable::getNeighbors(const Vec3& pos) const { return &(m_data[index(pos)]); } /*! Add particle to all neighorlists it belongs to \param cbp the particle */ void ASimpleNTable::insertParticle(SimpleParticle cbp) { //cout << "ASimpleNTable::insertParticle(" << cbp << ")" << endl; const vector idx=allidx(cbp.getPos()); if (idx.size() > 0) { m_numInsertedParticles++; } for(vector::const_iterator citer=idx.begin();citer!=idx.end();citer++){ m_data[*citer].push_back(cbp); } insertParticleCircular(cbp); } int ASimpleNTable::getNumInsertedParticles() const { return m_numInsertedParticles; } /*! get particle closest to given position \param pos the position \warning doesn't check if position is in space */ int ASimpleNTable::getClosestParticleID(const Vec3& pos) const { vector* parts=&(m_data[index(pos)]); int id=-1; double dist=m_dim; for(vector::iterator iter=parts->begin(); iter!=parts->end(); iter++){ double ndist=(pos-iter->getPos()).norm(); if(ndistgetID(); } } return id; } //------ CSimple2DNTable member functions ---- /*! Constructor \param pos position of the (xmin,ymin) point \param dim size of the space \param r grid spacing */ CSimple2DNTable::CSimple2DNTable(const Vec3& pos,const Vec3& dim,double r,bool xcirc,bool ycirc) { //cout << "CSimple2DNTable(" << pos << " , " << dim << " , " << r << ")" << endl; m_xsize=int(ceil(dim.X()/r)); m_ysize=int(ceil(dim.Y()/r)); m_xcirc=xcirc; m_ycirc=ycirc; m_p0=pos; m_dim=r; // pad in circular directions if(m_xcirc) { m_xsize+=2; m_p0-=Vec3(r,0.0,0.0); m_xshift=Vec3(dim.X(),0.0,0.0); } if(m_ycirc) { m_ysize+=2; m_p0-=Vec3(0.0,r,0.0); m_yshift=Vec3(0.0,dim.Y(),0.0); } //cout << "NT size : " << m_xsize << " , " << m_ysize << endl; m_data=new vector[m_xsize*m_ysize]; } /*! insert circular images of the particle \param cbp the particle */ void CSimple2DNTable::insertParticleCircular(SimpleParticle cbp) { if(m_xcirc){ if (int((cbp.getPos().X()-m_p0.X())/m_dim)==1) { cbp.moveTo(cbp.getPos()+m_xshift); const vector idx=allidx(cbp.getPos()); for(vector::const_iterator citer=idx.begin();citer!=idx.end();citer++){ m_data[*citer].push_back(cbp); } } else if (int((cbp.getPos().X()-m_p0.X())/m_dim)==m_xsize-2) { cbp.moveTo(cbp.getPos()-m_xshift); const vector idx=allidx(cbp.getPos()); for(vector::const_iterator citer=idx.begin();citer!=idx.end();citer++){ m_data[*citer].push_back(cbp); } } } } /*! Return the grid index of a position. \param pos the position \warning does not check if pos is within space */ int CSimple2DNTable::index(const Vec3& pos) const { int ix=int((pos.X()-m_p0.X())/m_dim); int iy=int((pos.Y()-m_p0.Y())/m_dim); int idx=ix+m_xsize*iy; return idx; } /*! Get all indices to which a particle at a given position will be added. \param pos the position \warning does not check if pos is within space */ vector CSimple2DNTable::allidx(const Vec3& pos) const { vector res; int ix=int((pos.X()-m_p0.X())/m_dim); int iy=int((pos.Y()-m_p0.Y())/m_dim); int idx=ix+m_xsize*iy; res.push_back(idx); if(ix>0){ res.push_back(idx-1); if(iy>0){ res.push_back(idx-m_xsize-1); } if(iy0){ res.push_back(idx-m_xsize+1); } if(iy0){ res.push_back(idx-m_xsize); } if(iy& iset,double dmax) { for(int i=0;i=2){ for(vector::iterator iter=m_data[idx].begin(); iter!=m_data[idx].end()-1; iter++){ for(vector::iterator iter2=iter+1; iter2!=m_data[idx].end(); iter2++){ // cout << "Pair: " << iter->getID() << " - " << iter2 ->getID() << endl; if((iter->getPos()-iter2->getPos()).norm()getRad()+iter2->getRad())){ iset.insert(BasicInteraction(iter->getID(),iter2 ->getID())); } } } } } } } // debugging only void CSimple2DNTable::print() { for(int i=0;i::iterator iter=m_data[idx].begin(); iter!=m_data[idx].end(); iter++) { cout << iter->getPos() << " , " << iter->getRad() << endl; } } } } ./Geometry/ClosePackIterator.hpp0000664000175000017500000001073612176660653016530 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCLOSEPACKITERATOR_HPP #define ESYS_LSMCLOSEPACKITERATOR_HPP namespace esys { namespace lsm { template TmplMatrix::TmplMatrix() { for (int i = 0; i < NI; i++) { for (int j = 0; j < NJ; j++) { for (int k = 0; k < NJ; k++) { m_matrix[i][j][k] = 0.0; } } } } template TmplMatrix::TmplMatrix(const TmplMatrix &m) { for (int i = 0; i < NI; i++) { for (int j = 0; j < NJ; j++) { for (int k = 0; k < NJ; k++) { m_matrix[i][j][k] = m(i,j,k); } } } } template TmplMatrix & TmplMatrix::TmplMatrix::operator=(const TmplMatrix &m) { for (int i = 0; i < NI; i++) { for (int j = 0; j < NJ; j++) { for (int k = 0; k < NJ; k++) { m_matrix[i][j][k] = m(i,j,k); } } } return *this; } template const double &TmplMatrix::operator()(int i, int j, int k) const { return m_matrix[i][j][k]; } template double &TmplMatrix::operator()(int i, int j, int k) { return m_matrix[i][j][k]; } template int TmplMatrix::getNumI() const { return NI; } template int TmplMatrix::getNumJ() const { return NJ; } template int TmplMatrix::getNumK() const { return NK; } ClosePackIterator::ClosePackIterator() : m_radius(), m_minPt(), m_offsetMatrix(), m_dimRepeat(), m_dimCount(), m_dimIdx(), m_dim() { } ClosePackIterator::ClosePackIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation ) : m_radius(sphereRadius), m_minPt(), m_offsetMatrix(), m_dimRepeat(), m_dimCount(numI, numJ, numK), m_dimIdx(), m_dim(s_orientationDimMap[orientation]) { for (int i = 0; i < 3; i++) { if (m_dimCount[i] <= 0) { m_dimCount[i] = 1; } } } void ClosePackIterator::setDimRepeat(const Vec3L &dimRepeat) { m_dimRepeat = dimRepeat; } void ClosePackIterator::setOffsetMatrix(const OffsetMatrix &offsetMatrix) { m_offsetMatrix = offsetMatrix; } double ClosePackIterator::getRadius() const { return m_radius; } bool ClosePackIterator::hasNext() const { return (m_dimIdx[2] < m_dimCount[2]); } const Vec3 &ClosePackIterator::getMinPt() const { return m_minPt; } double ClosePackIterator::getOffset(int i) const { return m_offsetMatrix( i, (m_dimIdx[(i+1) % 3]) % m_dimRepeat[i], (m_dimIdx[(i+2) % 3]) % m_dimRepeat[i] ); } void ClosePackIterator::incrementDimIndex() { (m_dimIdx[0])++; if (m_dimIdx[0] >= m_dimCount[0]) { m_dimIdx[0] = 0; (m_dimIdx[1])++; if (m_dimIdx[1] >= m_dimCount[1]) { m_dimIdx[1] = 0; (m_dimIdx[2])++; } } } Vec3 ClosePackIterator::next() { Vec3 centre; centre[m_dim[0]] = getOffset(0) + m_dimIdx[0]*(m_radius*2.0); centre[m_dim[1]] = getOffset(1) + m_dimIdx[1]*(m_radius*SQRT_3); centre[m_dim[2]] = getOffset(2) + m_dimIdx[2]*(m_radius*SQRT_8_OVER_3); incrementDimIndex(); return (getMinPt() + centre); } } } #endif ./Geometry/SimpleParticleData.cpp0000664000175000017500000000765712176660653016664 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleParticleData.h" #if 0 namespace esys { namespace lsm { //=============================================================================== SimpleParticleData::SimpleParticleData() : m_id(-1), m_tag(-1), m_position(), m_radius(0.0), m_mass(0.0) { setMass(get3dMass()); } SimpleParticleData::SimpleParticleData( Id id, Tag tag, const Vec3 &position, double radius ) : m_id(id), m_tag(tag), m_position(position), m_radius(radius), m_mass(0.0) { setMass(get3dMass()); } SimpleParticleData::SimpleParticleData( const Vec3 &position, double radius, Id id, Tag tag ) : m_id(id), m_tag(tag), m_position(position), m_radius(radius), m_mass(0.0) { setMass(get3dMass()); } bool SimpleParticleData::operator==( const SimpleParticleData &particleData ) const { return ( (getId() == particleData.getId()) && (getPosition() == particleData.getPosition()) && (getRadius() == particleData.getRadius()) && (getTag() == particleData.getTag()) ); } SimpleParticleData::Id SimpleParticleData::getId() const { return m_id; } void SimpleParticleData::setId(const Id &id) { m_id = id; } void SimpleParticleData::setID(const Id &id) { setId(id); } SimpleParticleData::Id SimpleParticleData::getID() const { return getId(); } const Vec3 &SimpleParticleData::getPosition() const { return m_position; } void SimpleParticleData::setPosition(const Vec3 &pos) { m_position = pos; } SimpleParticleData::Tag SimpleParticleData::getTag() const { return m_tag; } void SimpleParticleData::setTag(const SimpleParticleData::Tag &tag) { m_tag = tag; } double SimpleParticleData::getRadius() const { return m_radius; } void SimpleParticleData::setRadius(const double &r) { m_radius = r; } void SimpleParticleData::setMass(double mass) { m_mass = mass; } double SimpleParticleData::getMass() const { return m_mass; } double SimpleParticleData::get2dMass() const { return m_radius*m_radius; } double SimpleParticleData::get3dMass() const { return m_radius*m_radius*m_radius; } void SimpleParticleData::read(std::istream &istream) { istream >> m_position >> m_radius >> m_id >> m_tag; } void SimpleParticleData::write(std::ostream &oStream) const { const char delim = ' '; oStream << getPosition() << delim << getRadius() << delim << getId() << delim << getTag(); } std::istream &operator>>(std::istream &iStream, SimpleParticleData &particleData) { particleData.read(iStream); return iStream; } std::ostream &operator<<(std::ostream &oStream, const SimpleParticleData &particleData) { particleData.write(oStream); return oStream; } }; }; #endif ./Geometry/BoxPacker.hpp0000664000175000017500000001060212176660653015020 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GridIterator.h" #include namespace esys { namespace lsm { template BoxPacker::BoxPacker( ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ) : Inherited(particlePoolPtr, nTablePtr), m_bBox(bBox), m_periodicDimensions(periodicDimensions), m_tolerance(tolerance) { } template BoxPacker::~BoxPacker() { } template const BoundingBox &BoxPacker::getBBox() const { return m_bBox; } template double BoxPacker::getTolerance() const { return m_tolerance; } template bool BoxPacker::is2d() const { return ((getBBox().getMaxPt().Z() - getBBox().getMinPt().Z()) <= 0); } template const BoolVector & BoxPacker::getPeriodicDimensions() const { return m_periodicDimensions; } template bool BoxPacker::particleFitsInBBox( const Particle &particle ) const { return ( ( m_periodicDimensions[0] || ( m_bBox.contains( particle.getPos() - Vec3(particle.getRad(), 0, 0), getTolerance() ) && m_bBox.contains( particle.getPos() + Vec3(particle.getRad(), 0, 0), getTolerance() ) ) ) && ( m_periodicDimensions[1] || ( m_bBox.contains( particle.getPos() - Vec3(0, particle.getRad(), 0), getTolerance() ) && m_bBox.contains( particle.getPos() + Vec3(0, particle.getRad(), 0), getTolerance() ) ) ) && ( is2d() || m_periodicDimensions[2] || ( m_bBox.contains( particle.getPos() - Vec3(0, 0, particle.getRad()), getTolerance() ) && m_bBox.contains( particle.getPos() + Vec3(0, 0, particle.getRad()), getTolerance() ) ) ) ); } template bool BoxPacker::particleFitsWithNeighbours( const Particle &particle ) const { const typename NTable::ParticleVector neighbours = this->getNTable().getNeighbourVector( particle.getPos(), particle.getRad() + getTolerance() ); typename NTable::ParticleVector::const_iterator iter = neighbours.begin(); for (; iter != neighbours.end(); iter++) { const double interCentreDistSqrd = (particle.getPos() - (*iter)->getPos()).norm2(); const double radiusSum = ((particle.getRad() + (*iter)->getRad()) - getTolerance()); if (interCentreDistSqrd < (radiusSum*radiusSum)) { return false; } } return true; } template bool BoxPacker::particleFitsInBBoxWithNeighbours( const Particle &particle ) const { return ( particleFitsInBBox(particle) && particleFitsWithNeighbours(particle) ); } } } ./Geometry/ParticleCollection.cpp0000664000175000017500000000132612176660653016717 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ParticleCollection.h" ./Geometry/CubicBlock.h0000664000175000017500000000254612176660653014612 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBLOCK_H #define ESYS_LSMCUBICBLOCK_H #include "Geometry/SimpleParticle.h" #include "Geometry/CubicBlockIterator.h" #include "Geometry/ClosePackBlock.h" namespace esys { namespace lsm { template class CubicBlock : public ClosePackBlock { public: typedef ClosePackBlock Inherited; CubicBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5, ClosePackOrientation orientation = DEFAULT_ORIENT ); }; } } #include "Geometry/CubicBlock.hpp" #endif ./Geometry/BasicInteraction.h0000664000175000017500000000344412176660653016031 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BASICINTERACTION_H #define __BASICINTERACTION_H //-- IO includes -- #include /*! \class BasicInteraction \brief Class to represent the common part of a pair interaction, i.e. the IDs of the particles and the interaction tag \author Steffen Abe */ class BasicInteraction { public: typedef int Id; typedef int Tag; private: Id m_p1; Id m_p2; Tag m_tag; public: BasicInteraction(Id id1, Id id2,Tag tag=0); Id first() const {return m_p1;} Id second() const {return m_p2;} Id getP1Id() const { return first(); } Id getP2Id() const { return second(); } Tag getTag() const { return m_tag; } template void visit(TmplVisitor &visitor) const { visitor.visitBasicInteraction(*this); } friend std::ostream& operator<<(std::ostream&,const BasicInteraction&); friend class BILess; }; /*! \class BILess \brief function object for the ordering of BasicInteraction \author Steffen Abe */ class BILess { public: bool operator()(const BasicInteraction&,const BasicInteraction&); }; #endif //__BASICINTERACTION_H ./Geometry/RandomBlockGenerator.h0000664000175000017500000000464512176660653016656 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRANDOMBLOCKGENERATOR_H #define ESYS_LSMRANDOMBLOCKGENERATOR_H #include #include #include #include namespace esys { namespace lsm { class ParticleFitter; typedef std::vector PlaneVector; typedef boost::shared_ptr FitterPtr; typedef std::vector FitterPtrVector; /** * */ class RandomBlockGenerator : public BlockGenerator { public: RandomBlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double minSphereRadius, double maxSphereRadius, const PlaneVector &fitPlaneVector, int maxInsertionFailures ); virtual ~RandomBlockGenerator(); virtual bool particleFits(const SimpleParticle &particle) const; virtual void generate(); double getRandom(double min, double max) const; virtual double getRadius() const; virtual double getGridRadius() const; Vec3 getRandomPoint() const; ParticleVector getClosestNeighbors(const SimpleParticle& particle, int numClosest); int getMaxInsertionFailures() const; FitterPtrVector getFitterPtrVector(); void generateFillParticles(); const PlaneVector &getFitPlaneVector() const; Plane3D getClosestFitPlane(const SimpleParticle &particle) const; private: double m_minRadius; double m_maxRadius; PlaneVector m_fitPlaneVector; int m_maxInsertionFailures; }; } } #endif ./Geometry/SphAggGougeBlock.cpp0000664000175000017500000002236312176660653016257 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SphAggGougeBlock.h" #include "Geometry/RandomBlockGenerator.h" // --- IO includes --- #include using std::cout; using std::endl; namespace esys { namespace lsm { /*! constructor \param params the general gouge parameters \param minRadGrain minimum radius of the macro grains \param maxRadGrain maximum radius of the macro grains \param minGrainTag minimum tag for grains */ SphAggGougeBlock::SphAggGougeBlock(const GougeBlockPrms& params,double minRadGrain,double maxRadGrain,int minGrainTag): GougeBlock3D(params), m_particlePoolPtr2(new ParticlePool(2048)) { m_min_rad_grain=minRadGrain; m_max_rad_grain=maxRadGrain; m_min_grain_tag=minGrainTag; } /*! helper function for generate - setup inital sphere packing for macro grains */ void SphAggGougeBlock::generateMacroGrains() { cout << "begin SphAggGougeBlock::generateMacroGrains" << endl; // get fault packing info - should check if it is actually there (size()==2) PackingInfoVector packingInfoVector = m_prms.getFaultPackingInfoVector(); // get the bounding boxes of the fault blocks BoundingBox bbx1=packingInfoVector[0].getBBox(); BoundingBox bbx2=packingInfoVector[1].getBBox(); // get corners of bounding boxes Vec3 minPt1=bbx1.getMinPt(); Vec3 maxPt1=bbx1.getMaxPt(); Vec3 minPt2=bbx2.getMinPt(); Vec3 maxPt2=bbx2.getMaxPt(); // check which points are the "inner" points double diff1=fabs(minPt1.Y()-maxPt2.Y()); double diff2=fabs(minPt2.Y()-maxPt1.Y()); double y1,y2; if(diff1generate(); cout << m_grainGen->getNumParticles() << " generated" << endl; cout << "end SphAggGougeBlock::generateMacroGrains" << endl; } /*! helper function for generate - fill each generated macro sphere with smaller particles */ void SphAggGougeBlock::fillMacroGrains() { cout << "begin SphAggGougeBlock::fillMacroGrains" << endl; // --- setup a generator per grain // get min/max particle radius ( single gouge layer assumed ) PackingInfoVector::const_iterator it = (m_prms.getGougePackingInfoVector()).begin(); double rmin=it->getMinRadius(); double rmax=it->getMaxRadius(); // for all grains .... NTable::ParticleIterator particleIt = m_nTablePtr2->getParticleIterator(); int curr_tag=m_min_grain_tag; while (particleIt.hasNext()) { SimpleParticle* SP=particleIt.next(); cout << *SP << endl; SBG_ptr genPtr = SBG_ptr ( new SphereBlockGenerator (*(m_nTablePtr.get()), (*(m_particlePoolPtr.get())), m_prms.getTolerance(), SP->getPos(), SP->getRad(), rmin, rmax, m_prms.getMaxInsertionFailures(), curr_tag)); m_grainParticleGen.push_back(genPtr); curr_tag++; } // use generators curr_tag=m_min_grain_tag; for (vector::iterator it = m_grainParticleGen.begin(); it != m_grainParticleGen.end(); it++) { // generate particles (*it)->generate(); // tag them SphereBlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->setTag(curr_tag); } cout << (*it)->getNumParticles() << "with tag " << curr_tag << " generated " << endl; curr_tag++; } cout << "end SphAggGougeBlock::fillMacroGrains" << endl; } /*! helper function for generate - setup the 2nd NTable (for the macro grains) */ void SphAggGougeBlock::setupNT2() { const BoundingBox bBox = m_prms.getBBox(); Vec3 ntableAdjust = Vec3(0.0,0.0,0.0); if (m_prms.getBBox().getSizes().Z() >= 4*m_prms.getMaxRadius()) { ntableAdjust += Vec3(m_prms.getMaxRadius(), 0, 0); } const BoundingBox nTableBBox(bBox.getMinPt(), bBox.getMaxPt() - ntableAdjust); m_nTablePtr2 = NTablePtr( new NTable( nTableBBox, (4.0*m_min_rad_grain), // grid spacing vector(3,false), // non periodic bcond 2.1*m_max_rad_grain // width of border-region in which // particles are duplicated // for circular boundry ) ); } /*! create block generators for gouge region -> do nothing */ void SphAggGougeBlock::createGougeBlockGenerators() {} /*! Create interaction set. Changed from base class by using a different validator which allows links between particles with the same tag, i.e. belonging to the same composite grain. Refactor ? */ void SphAggGougeBlock::createInteractionSet() { NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); SphAggInteractionValidator validator = SphAggInteractionValidator(*this, m_prms.getConnectionTolerance(),m_min_grain_tag); while (particleIt.hasNext()) { const NTable::Particle *pParticle = particleIt.next(); const NTable::ParticleVector neighbours = m_nTablePtr->getUniqueNeighbourVector( pParticle->getPos(), pParticle->getRad() + m_prms.getConnectionTolerance() ); for ( NTable::ParticleVector::const_iterator it = neighbours.begin(); it != neighbours.end(); it++ ){ if (validator.isValid(*pParticle, *(*it))) { m_interactionSet.insert(BasicInteraction(pParticle->getID(), (*it)->getID())); } } } } /*! generate particle packing */ void SphAggGougeBlock::generate() { cout << "begin SphAggGougeBlock::generate" << endl; // --- generate solid parts --- // setup block generators createRegularBlockGenerators(); createFaultBlockGenerators(); // use block generators std::cout << "bbox = " << m_prms.getBBox() << std::endl; for ( GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { (*it)->generate(); } // --- generate gouge --- setupNT2(); generateMacroGrains(); fillMacroGrains(); // --- generate interactions --- createInteractionSet(); cout << "end SphAggGougeBlock::generate" << endl; } //========= GranularInteractionValidator ============ /*! */ SphAggInteractionValidator::SphAggInteractionValidator(const SphAggGougeBlock& gougeBlock, double tolerance, int graintag) : m_pGougeBlock(&gougeBlock), m_tolerance(tolerance), m_grain_tag(graintag) {} /*! */ bool SphAggInteractionValidator::isValid(const SimpleParticle &p1, const SimpleParticle &p2) const { bool is_in_order=(p1.getID() < p2.getID()); bool is_distance=((p1.getPos() - p2.getPos()).norm() < (m_tolerance + (p1.getRad() + p2.getRad()))); bool is_same_side=(p1.getTag()areInDifferentFaultBlocks(p1, p2)); bool is_same_grain=(p1.getTag()>=m_grain_tag) && (p2.getTag()>=m_grain_tag) && (p1.getTag()==p2.getTag()); // bool both_grain=(p1.getTag()>=m_grain_tag) && (p2.getTag()>=m_grain_tag); return (is_in_order && is_distance) && (is_same_side || is_same_grain); } } } ./Geometry/Grain.h0000664000175000017500000000352112176660653013644 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRAIN_H #define ESYS_LSMGRAIN_H #include "Geometry/ParticleCollection.h" namespace esys { namespace lsm { /** * */ template class Grain : public TmplParticleCollection { public: typedef TmplParticleCollection Inherited; typedef Inherited ParticleCollection; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; typedef typename Inherited::ParticleIterator ParticleIterator; typedef typename Inherited::ParticleConstIterator ParticleConstIterator; typedef long Id; Grain(); Grain(Id id); Grain(ParticlePoolPtr particlePoolPtr); Grain(Id id, ParticlePoolPtr particlePoolPtr); Grain(const Grain &g); Grain &operator=(const Grain &g); Id getId() const; void setId(Id id); void setParticleIds(typename Particle::Id minId); private: Id m_id; }; } } #include "Geometry/Grain.hpp" #endif ./Geometry/RandomSpherePacker.cpp0000664000175000017500000000132512176660653016654 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/RandomSpherePacker.h" ./Geometry/GrainCollection.hpp0000664000175000017500000001010612176660653016215 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GrainCollection.h" #include #include #include #include #include namespace esys { namespace lsm { template GrainCollection::GrainCollection() : m_particlePoolPtr(new ParticlePool(4096)), m_grainPoolPtr(new GrainPool(4096)), m_grainVector() { } template GrainCollection::GrainCollection( ParticlePoolPtr particlePoolPtr ) : m_particlePoolPtr(particlePoolPtr), m_grainPoolPtr(new GrainPool(4096)), m_grainVector() { } template GrainCollection::GrainCollection( ParticlePoolPtr particlePoolPtr, GrainPoolPtr grainPoolPtr ) : m_particlePoolPtr(particlePoolPtr), m_grainPoolPtr(grainPoolPtr), m_grainVector() { } template typename GrainCollection::ParticlePoolPtr GrainCollection::getParticlePoolPtr() { return m_particlePoolPtr; } template typename GrainCollection::GrainPoolPtr GrainCollection::getGrainPoolPtr() { return m_grainPoolPtr; } template GrainCollection::~GrainCollection() { } template int GrainCollection::getNumGrains() const { return m_grainVector.size(); } template int GrainCollection::getNumParticles() const { int i = 0; for ( GrainConstIterator it = getGrainIterator(); it.hasNext(); i += it.next().getNumParticles() ) { } return i; } template void GrainCollection::insertRef(Grain &g) { if (m_grainPoolPtr->is_from(&g)) { m_grainVector.push_back(&g); } else { throw std::runtime_error( "GrainCollection::insertRef: Tried to insert" " reference to non-created grain." ); } } template typename GrainCollection::Grain & GrainCollection::createGrain() { Grain *pGrain = m_grainPoolPtr->construct(getParticlePoolPtr()); insertRef(*pGrain); return *pGrain; } template typename GrainCollection::Grain & GrainCollection::createGrain(typename Grain::Id id) { Grain *pGrain = m_grainPoolPtr->construct(id, getParticlePoolPtr()); insertRef(*pGrain); return *pGrain; } template typename GrainCollection::Grain & GrainCollection::createGrain(const Grain &g) { Grain *pGrain = m_grainPoolPtr->construct(g); insertRef(*pGrain); return *pGrain; } template typename GrainCollection::GrainIterator GrainCollection::getGrainIterator() { return GrainIterator(VectorIterator(m_grainVector)); } template typename GrainCollection::GrainConstIterator GrainCollection::getGrainIterator() const { return GrainConstIterator(VectorConstIterator(m_grainVector)); } } } ./Geometry/GrainRandomBoxPacker.h0000664000175000017500000001061412176660653016605 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRAINRANDOMBOXPACKER_H #define ESYS_LSMGRAINRANDOMBOXPACKER_H #include "Geometry/RandomBoxPacker.h" #include "Geometry/GrainCollection.h" #include #include namespace esys { namespace lsm { /** * */ template class TmplRndBoxPackerWrap> class GrainRandomBoxPacker : public TmplRndBoxPackerWrap::RandomBoxPackerBase { public: typedef TmplGrainCollection GrainCollection; typedef boost::shared_ptr GrainCollectionPtr; typedef typename GrainCollection::GrainIterator GrainIterator; typedef typename GrainCollection::GrainConstIterator GrainConstIterator; typedef typename GrainCollection::Grain Grain; typedef typename Grain::Id GrainId; typedef typename GrainCollection::GrainPool GrainPool; typedef typename GrainCollection::GrainPoolPtr GrainPoolPtr; typedef typename TmplRndBoxPackerWrap::RandomBoxPackerBase Inherited; typedef Inherited RandomBoxPackerBase; typedef typename Inherited::ParticleGenerator ParticleGrainGen; typedef typename Inherited::ParticleGeneratorPtr ParticleGrainGenPtr; typedef typename Inherited::Particle Particle; typedef typename Inherited::NTable NTable; typedef typename Inherited::NTablePtr NTablePtr; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; typedef typename Inherited::PlaneVector PlaneVector; typedef typename Inherited::StuffedParticleIterator StuffedParticleIterator; GrainRandomBoxPacker( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures ); GrainRandomBoxPacker( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector, GrainPoolPtr grainPoolPtr ); virtual ~GrainRandomBoxPacker(); ParticleGrainGen &getParticleGrainGen(); const ParticleGrainGen &getParticleGrainGen() const; void setParticleGrainGen(ParticleGrainGen &particleGrainGen); void setParticleGrainGen(ParticleGrainGenPtr particleGrainGenPtr); GrainId getNextGrainId() const; Grain &constructGrain(); Grain &createAndInsertGrain(const Grain &grain); void generateRandomFillGrains(); void generateCubicPackingGrains(); int getNumGrains() const; GrainConstIterator getGrainIterator() const; GrainIterator getGrainIterator(); const GrainCollection &getGrainCollection() const; GrainCollection &getGrainCollection(); virtual void generate(); private: GrainCollectionPtr m_grainCollectionPtr; }; } } #include "Geometry/GrainRandomBoxPacker.hpp" #endif ./Geometry/HexagBlockIterator.cpp0000664000175000017500000000140112176660653016653 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/HexagBlockIterator.h" namespace esys { namespace lsm { } } ./Geometry/ParticleGenerator.cpp0000664000175000017500000000315112176660653016550 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ParticleGenerator.h" #include "Geometry/CircularNeighbourTable.h" namespace esys { namespace lsm { ParticleGenerator::ParticleGenerator() : m_pNTable(NULL), m_pParticlePool(NULL) { } ParticleGenerator::ParticleGenerator( NTable &nTable, ParticlePool &particlePool ) : m_pNTable(&nTable), m_pParticlePool(&particlePool) { } ParticleGenerator::~ParticleGenerator() { } ParticleGenerator::NTable &ParticleGenerator::getNTable() { return *(m_pNTable); } const ParticleGenerator::NTable &ParticleGenerator::getNTable() const { return *(m_pNTable); } ParticleGenerator::ParticlePool &ParticleGenerator::getParticlePool() { return *m_pParticlePool; } const ParticleGenerator::ParticlePool &ParticleGenerator::getParticlePool() const { return *m_pParticlePool; } } } ./Geometry/ClosePackBlock.cpp0000664000175000017500000000132212176660653015753 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ClosePackBlock.h" ./Geometry/RandomBoxPacker.hpp0000664000175000017500000003462712176660653016176 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Foundation/StringUtil.h" #include "Geometry/RandomBoxPacker.h" #include "Geometry/ParticleComparer.h" #include "Geometry/SphereFitter.h" #include #include #include namespace esys { namespace lsm { template class PlaneComparer { public: typedef TmplParticle Particle; PlaneComparer(const Particle &particle) : m_pParticle(&particle) { } inline bool operator()(const Plane3D &plane1, const Plane3D &plane2) const { return ( plane1.sep(m_pParticle->getPos()) < plane2.sep(m_pParticle->getPos()) ); } private: const Particle *m_pParticle; }; template FittedParticleIterator::FittedParticleIterator( Packer &packer, int maxInsertionFailures, const PlaneVector &fitPlaneVector ) : m_pPacker(&packer), m_fitPlaneVector(fitPlaneVector), m_maxInsertionFailures(maxInsertionFailures), m_lastFailCount(0), m_successCount(0), m_next(Fitter::getInvalidParticle()), m_fitterPtrVector() { if (m_next.isValid()) { throw std::runtime_error( std::string("isValid method returns true for INVALID particle:") + StringUtil::toString(m_next) ); } initialiseFitterPtrVector(); } template const typename FittedParticleIterator::PlaneVector & FittedParticleIterator::getFitPlaneVector() const { return m_fitPlaneVector; } template int FittedParticleIterator::getMaxInsertionFailures() const { return m_maxInsertionFailures; } template const typename FittedParticleIterator::Packer & FittedParticleIterator::getPacker() const { return *m_pPacker; } template typename FittedParticleIterator::Packer & FittedParticleIterator::getPacker() { return *m_pPacker; } template void FittedParticleIterator::initialiseFitterPtrVector() { FitterPtrVector fitters; fitters.push_back(FitterPtr(new Move2SurfaceFitter(getPacker()))); if (getPacker().is2d()) { fitters.push_back(FitterPtr(new TwoDFitter(getPacker()))); if (getFitPlaneVector().size() > 0) { fitters.push_back(FitterPtr(new TwoDPlaneFitter(getPacker()))); } } else { fitters.push_back(FitterPtr(new ThreeDFitter(getPacker()))); if (getFitPlaneVector().size() > 0) { fitters.push_back(FitterPtr(new ThreeDPlaneFitter(getPacker()))); } } m_fitterPtrVector = fitters; } template typename FittedParticleIterator::FitterPtrVector & FittedParticleIterator::getFitterPtrVector() { return m_fitterPtrVector; } template const typename FittedParticleIterator::FitterPtrVector & FittedParticleIterator::getFitterPtrVector() const { return m_fitterPtrVector; } template typename FittedParticleIterator::Plane3D FittedParticleIterator::getClosestFitPlane( const Particle &particle ) const { PlaneVector fitPlanes = getFitPlaneVector(); if (fitPlanes.size() > 0) { std::sort(fitPlanes.begin(), fitPlanes.end(), PlaneComparer(particle)); return fitPlanes[0]; } return Plane3D(Vec3(-1.0, 0, 0), Vec3(DBL_MAX/2, DBL_MAX/2, DBL_MAX/2)); } template Vec3 FittedParticleIterator::getRandomPoint() const { return getPacker().getRandomPoint(); } template typename FittedParticleIterator::Particle FittedParticleIterator::getCandidateParticle( const Vec3 &point ) { return getPacker().getCandidateParticle(point); } template typename FittedParticleIterator::ParticleVector FittedParticleIterator::getClosestNeighbours( const Particle& particle, int numClosest ) { return getPacker().getClosestNeighbours(particle, numClosest); } template typename FittedParticleIterator::Particle & FittedParticleIterator::generateNext() { m_next = Fitter::getInvalidParticle(); if (m_lastFailCount < getMaxInsertionFailures()) { int numFails = 0; //int insertCount = 0; FitterPtrVector fitters = getFitterPtrVector(); Particle particle = Fitter::getInvalidParticle(); Particle fitParticle = particle; Plane3D plane; ParticleVector neighbours; while ((!fitParticle.isValid()) && (numFails < getMaxInsertionFailures())) { particle = getCandidateParticle(getRandomPoint()); neighbours = getClosestNeighbours(particle, 4); plane = getClosestFitPlane(particle); for ( typename FitterPtrVector::iterator it = getFitterPtrVector().begin(); ( (it != getFitterPtrVector().end()) && (!fitParticle.isValid()) ); it++ ) { fitParticle = (*it)->getFitParticle(particle, neighbours, plane); } numFails++; } m_lastFailCount = numFails; console.Info() << "FittedParticleIterator::generateNext: numFails=" << numFails << "\n"; m_successCount += ((fitParticle.isValid()) ? 1 : 0); m_next = fitParticle; } return m_next; } template bool FittedParticleIterator::hasNext() { return (m_next.isValid() || generateNext().isValid()); } template typename FittedParticleIterator::Particle FittedParticleIterator::next() { if (!(m_next.isValid())) { generateNext(); } const Particle next = m_next; m_next = Fitter::getInvalidParticle(); return next; } template void FittedParticleIterator::logInfo() { console.Info() << "BoundingBox: minPt = " << getPacker().getBBox().getMinPt() << ", maxPt = " << getPacker().getBBox().getMaxPt() << "\n" << "BoundingBox: sizes = " << getPacker().getBBox().getSizes() << "\n"; for ( typename FitterPtrVector::iterator it = getFitterPtrVector().begin(); (it != getFitterPtrVector().end()); it++ ) { console.Info() << (*(*it)).toString() << "\n"; } console.Info() << "Total successful fits = " << m_successCount << "\n"; } template class TCubicPackWrap> RandomBoxPacker::RandomBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector ) : Inherited( particleGeneratorPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius ), m_fitPlaneVector(fitPlaneVector), m_maxInsertionFailures(maxInsertionFailures) { } template class TCubicPackWrap> RandomBoxPacker::RandomBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures ) : Inherited( particleGeneratorPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius ), m_fitPlaneVector(), m_maxInsertionFailures(maxInsertionFailures) { m_fitPlaneVector = getDefaultFitPlaneVector(); } template class TCubicPackWrap> typename RandomBoxPacker::PlaneVector RandomBoxPacker::getDefaultFitPlaneVector() const { PlaneVector fitPlaneVector; if ((!this->getPeriodicDimensions()[1])) { fitPlaneVector.push_back( Plane3D(Vec3(0, 1, 0), this->getBBox().getMinPt()) ); fitPlaneVector.push_back( Plane3D(Vec3(0, -1, 0), this->getBBox().getMaxPt()) ); } if ((!this->getPeriodicDimensions()[0])) { fitPlaneVector.push_back( Plane3D(Vec3( 1, 0, 0), this->getBBox().getMinPt()) ); fitPlaneVector.push_back( Plane3D(Vec3(-1, 0, 0), this->getBBox().getMaxPt()) ); } if ( !this->is2d() && (!this->getPeriodicDimensions()[2]) ) { fitPlaneVector.push_back( Plane3D(Vec3(0, 0, 1), this->getBBox().getMinPt()) ); fitPlaneVector.push_back( Plane3D(Vec3(0, 0, -1), this->getBBox().getMaxPt()) ); } return fitPlaneVector; } template class TCubicPackWrap> RandomBoxPacker::~RandomBoxPacker() { } template class TCubicPackWrap> double RandomBoxPacker::getRandom( double minVal, double maxVal ) const { return minVal + (maxVal-minVal)*rng::s_zeroOneUniform(); } template class TCubicPackWrap> const typename RandomBoxPacker::PlaneVector & RandomBoxPacker::getFitPlaneVector() const { return m_fitPlaneVector; } template class TCubicPackWrap> Vec3 RandomBoxPacker::getRandomPoint() const { return Vec3( getRandom(this->getBBox().getMinPt().X(), this->getBBox().getMaxPt().X()), getRandom(this->getBBox().getMinPt().Y(), this->getBBox().getMaxPt().Y()), getRandom(this->getBBox().getMinPt().Z(), this->getBBox().getMaxPt().Z()) ); } template class TCubicPackWrap> typename RandomBoxPacker::ParticleVector RandomBoxPacker::getClosestNeighbours( const Particle& particle, int numClosest ) { ParticleVector neighbourVector = this->getNTable().getUniqueNeighbourVector( particle.getPos(), this->getTolerance() ); if (static_cast(neighbourVector.size()) < numClosest) { neighbourVector = this->getNTable().getUniqueNeighbourVector( particle.getPos(), particle.getRad() + this->getTolerance() ); if (static_cast(neighbourVector.size()) < numClosest) { neighbourVector = this->getNTable().getUniqueNeighbourVector( particle.getPos(), this->getParticleGenerator().getMaxFitRadius() + this->getTolerance() ); } } std::sort( neighbourVector.begin(), neighbourVector.end(), ParticleComparer(particle) ); if (static_cast(neighbourVector.size()) > numClosest) { neighbourVector.erase( neighbourVector.begin() + numClosest, neighbourVector.end() ); } return neighbourVector; } template class TCubicPackWrap> bool RandomBoxPacker::particleIsValid( const Particle &particle ) const { return ( this->getParticleGenerator().isValidFitRadius(particle.getRad()) && Inherited::particleFitsInBBoxWithNeighbours(particle) ); } template class TCubicPackWrap> int RandomBoxPacker::getMaxInsertionFailures() const { return m_maxInsertionFailures; } template class TCubicPackWrap> void RandomBoxPacker::generateRandomFill() { StuffedParticleIterator it = StuffedParticleIterator( *this, getMaxInsertionFailures(), getFitPlaneVector() ); while (it.hasNext()) { const Particle p = it.next(); this->createAndInsertParticle(p); } it.logInfo(); } template class TCubicPackWrap> void RandomBoxPacker::generate() { this->generateCubicPacking(); this->generateRandomFill(); } } } ./Geometry/SplitBlock.cpp0000664000175000017500000000571412176660653015213 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "SplitBlock.h" #include CSplitBlock2D::CSplitBlock2D(double xmin,double xmax,double ymin,double ymax,double rmin,double rmax,double ysplit,bool circ_x):CRandomBlock2D(xmin,xmax,ymin,ymax,rmin,rmax,circ_x) { cout << "CSplitBlock2D" << endl; m_ysplit=ysplit; Borders.push_back(Line(Vec3(0.0,1.0,0.0),Vec3(0.0,m_ysplit,0.0))); // split line } CSplitBlock2D::~CSplitBlock2D() {} void CSplitBlock2D::generate(int tries,unsigned int seed) { srand(seed); // get limits int imin=int(floor(m_xmin/(m_rmax*2.0))); int jmin=int(floor(m_ymin/(m_rmax*sqrt(3.0)))); int imax=int(ceil(m_xmax/(m_rmax*2.0))); int jmax=int(ceil(m_ymax/(m_rmax*sqrt(3.0)))); // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ // calc random radius double r=m_random(m_rmin,m_rmax); // get position double px=(double(i)+0.5*double(j%2))*m_rmax*2.0; double py=double(j)*sqrt(3.0)*m_rmax; SimpleParticle Po=SimpleParticle(Vec3(px,py,0),r,getNParts()); bool fit=checkAFit(Po); if(fit){ insertParticle(Po); } } } // fill space fillSpace(tries); // get set of interactions m_snt->getInteractions(m_iset,1.05); // remove interactions crossing the split for(set::iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ double y1=m_bpart[iter->first()].getPos().Y(); double y2=m_bpart[iter->second()].getPos().Y(); double dy1=m_ysplit-y1; double dy2=m_ysplit-y2; if(dy1*dy2<0){ // on different sides set::iterator h=iter; iter++; m_iset.erase(h); } } } /*! Tag particles along the split line \param tag1 the tag for particles "above" the split (y>y_split) \param tag2 the tag for particles "below" the split (y::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double py=iter->getPos().Y(); double r=iter->getRad(); double dist=py-m_ysplit; if(fabs(dist)0) { // above iter->setTag(tag1); } else { // below iter->setTag(tag2); } } } } ./Geometry/HexagBlock.hpp0000664000175000017500000000207712176660653015160 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMHEXAGBLOCK_HPP #define ESYS_LSMHEXAGBLOCK_HPP namespace esys { namespace lsm { template HexagBlock::HexagBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius, ClosePackOrientation orientation ) : Inherited(numX, numY, numZ, radius, orientation) { } } } #endif ./Geometry/DistConnections.cpp0000664000175000017500000000132212176660653016242 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/DistConnections.h" ./Geometry/HexagBlock.cpp0000664000175000017500000000131612176660653015146 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/HexagBlock.h" ./Geometry/CubicBlockIterator.cpp0000664000175000017500000000140112176660653016644 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/CubicBlockIterator.h" namespace esys { namespace lsm { } } ./Geometry/Plane3D.cpp0000664000175000017500000000423312176660653014366 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Plane3D.h" /*! Construct plane from pos. and normal vector \param iPos position \param iDir normal vector */ Plane3D::Plane3D(const Vec3& iDir,const Vec3& iPos) { Dir = iDir.unit() ; Pos = iPos ; Create() ; } /*! Construct plane from pos. and 2 vectors spanning the plane \param iPos position \param iU \param iV */ Plane3D::Plane3D(const Vec3& iU,const Vec3& iV,const Vec3& iPos) { U=iU.unit(); V=iV.unit(); Vec3 Dir2=cross(U,V); Pos=iPos ; if ( (U*V) != 0.0 ) { V=U - ((U*U)/(U*V))*V ; V=V.unit(); } else { V = iV.unit(); } Dir= cross(U,V); if (Dir*Dir2 <0) { V *= -1.0 ; Dir *= -1.0 ; } Pos = iPos; } /*! "empty" default constructor */ Plane3D::Plane3D() { U = Vec3(0.0,0.0,0.0) ; V = Vec3(0.0,0.0,0.0) ; } /*! setup spanning vectors from pos & normal */ void Plane3D::Create() { U = Vec3(0.0,0.0,0.0) ; V = Vec3(0.0,0.0,0.0) ; Vec3 X ; X = Vec3(1.0,0.0,0.0) ; if ((cross(X,Dir)).norm2() == 0.0) X = Vec3(0.0,1.0,0.0) ; if ((cross(X,Dir)).norm2() == 0.0) X = Vec3(0.0,0.0,1.0) ; if ((cross(X,Dir)).norm2() != 0.0) { U = X - ((X*Dir)/(Dir*Dir))*Dir ; U = U.unit() ; V = cross(Dir,U) ; } } /*! distance of a point from the plane \param M the point */ double Plane3D::sep(const Vec3& M) const { return fabs((M-Pos)*Dir); } /*! signed separation according to Direction of the normal \param M the point */ double Plane3D::dist(const Vec3& M) { return (M-Pos)*Dir ; } ./Geometry/RoughPaddedBlock3d.cpp0000664000175000017500000001445512176660653016537 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/RoughPaddedBlock3d.h" #include "Geometry/RandomAssembly3D.h" /*! Get closest plane \param Po the particle */ Plane3D CRoughPaddedBlock3D::getClosestPlane(const SimpleParticle& Po) { Plane3D PL=ARandomAssembly3D::getClosestPlane(Po); double spl=PL.sep(Po.getPos()); RectPatch RP=getClosestPatch(Po,spl); double srp=RP.sep(Po.getPos()); if (srp::iterator iter=m_fault.begin(); iter!=m_fault.end(); iter++){ double sep=iter->sep(Po.getPos()); if((sep!=-1.0) && ((sep::iterator iter=m_fault.begin(); while((iter!=m_fault.end()) && (fit)){ double s=iter->dist(P.getPos()); fit=(s>P.getRad()-1e-4) || (s==-1.0); // remove -1 case once proper dist implemented iter++; } return fit; } /*! generate the particle packing \param tries number of attempts to insert particle before giving up \param seed random seed */ //void CRoughPaddedBlock3D::generate(int tries,unsigned int seed) void CRoughPaddedBlock3D::generate(int tries) { generate_regular_padding(); // random block // limits int imin=int(floor(m_xmin/(m_rmax*2.0))); int imax=int(ceil(m_xmax/(m_rmax*2.0))); int jmin=int(floor(m_zmin/(m_rmax*sqrt(3.0)))); int jmax=int(ceil(m_zmax/(m_rmax*sqrt(3.0)))); int kmin=int(floor((m_ymin+m_pad_size-m_rmax)/(m_rmax*2.0*sqrt(2.0/3.0)))); int kmax=int(ceil((m_ymax-(m_pad_size-m_rmax))/(m_rmax*2.0*sqrt(2.0/3.0)))); // particles for(int i=imin;i<=imax;i++){ for(int j=jmin;jgetInteractions(m_iset,1.05); // remove interactions crossing any fault segment // for(vector::iterator iter=m_fault.begin(); // iter!=m_fault.end(); // iter++){ // for(set::iterator iter_in=m_iset.begin(); // iter_in!=m_iset.end(); // iter_in++){ // Vec3 P1=m_bpart[iter_in->first()].getPos(); // Vec3 P2=m_bpart[iter_in->second()].getPos(); // if(iter->intersect(P1,P2)){ // on different sides // set::iterator h=iter_in; // iter_in++; // m_iset.erase(h); // iter_in--; // } // } // } // remove interactions crossing the split for(set::iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ double p1=0.0; double p2=0.0; switch(m_dir){ case 2: { p1=m_bpart[iter->first()].getPos().Y(); p2=m_bpart[iter->second()].getPos().Y(); break; } case 3: { p1=m_bpart[iter->first()].getPos().Z(); p2=m_bpart[iter->second()].getPos().Z(); break; } default: break; } double d1=m_ysplit-p1; double d2=m_ysplit-p2; if(d1*d2<0){ // on different sides set::iterator h=iter; iter++; m_iset.erase(h); iter--; } } } // void CRoughPaddedBlock3D::tagSplit(int,int,double) // { // CSplitBlock( // } ./Geometry/NeighbourTable.hpp0000664000175000017500000002157012176660653016042 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMNEIGHBOURTABLE_HPP #define ESYS_LSMNEIGHBOURTABLE_HPP namespace esys { namespace lsm { template NeighbourTable::NeighbourTable( const BoundingBox &bBox, double gridSpacing ) : m_dimensions(), m_minIndex(), m_maxIndex(Vec3L(-1, -1, -1)), m_gridSpacing(gridSpacing), m_bBox(bBox), m_insertedParticles(), m_tablePtr() { resize(bBox, gridSpacing); } template NeighbourTable::NeighbourTable( const NeighbourTable &nTable ) : m_dimensions(nTable.m_dimensions), m_minIndex(nTable.m_minIndex), m_maxIndex(nTable.m_maxIndex), m_gridSpacing(nTable.m_gridSpacing), m_bBox(nTable.m_bBox), m_insertedParticles(nTable.m_insertedParticles), m_tablePtr() { m_tablePtr = ParticleVectorArrayPtr( new ParticleVector[nTable.getNumCells()] ); for (int i = 0; i < nTable.getNumCells(); i++) { m_tablePtr[i] = nTable.m_tablePtr[i]; } } template NeighbourTable::~NeighbourTable() { } template void NeighbourTable::clear() { for (int i = getMinVecIndex().X(); i <= getMaxVecIndex().X(); i++) { for (int j = getMinVecIndex().Y(); j <= getMaxVecIndex().Y(); j++) { for (int k = getMinVecIndex().Z(); k <= getMaxVecIndex().Z(); k++) { m_tablePtr[getScalarIndex(i, j, k)].clear(); } } } m_insertedParticles.clear(); } template double NeighbourTable::getGridSpacing() const { return m_gridSpacing; } template void NeighbourTable::resize( const BoundingBox &bBox, double gridSpacing ) { ParticleVector particles = getInsertedParticles(); clearAndRecomputeGrid(bBox, gridSpacing); for ( typename ParticleVector::iterator it = particles.begin(); it != particles.end(); it++ ) { insert(*it); } } template const Vec3L & NeighbourTable::getDimensions() const { return m_dimensions; } template const BoundingBox & NeighbourTable::getBBox() const { return m_bBox; } template const Vec3 & NeighbourTable::getMinPt() const { return getBBox().getMinPt(); } template size_t NeighbourTable::size() const { return m_insertedParticles.size(); } template int NeighbourTable::getScalarIndex( int xIdx, int yIdx, int zIdx ) const { return xIdx*m_dimensions.Z()*m_dimensions.Y() + yIdx*m_dimensions.Z() + zIdx; } template int NeighbourTable::getScalarIndex(const Vec3L &index) const { return getScalarIndex(index.X(), index.Y(), index.Z()); } template int NeighbourTable::getScalarIndex(const Vec3 &pt) const { return getScalarIndex(getVecIndex(pt)); } template const Vec3L & NeighbourTable::getMinVecIndex() const { return m_minIndex; } template const Vec3L & NeighbourTable::getMaxVecIndex() const { return m_maxIndex; } template Vec3L NeighbourTable::getVecIndex(const Vec3 &pt) const { const Vec3 relPos = Vec3((pt - getMinPt())/m_gridSpacing); const Vec3L index = Vec3L(int(floor(relPos.X())), int(floor(relPos.Y())), int(floor(relPos.Z()))); return getMinVecIndex().max(getMaxVecIndex().min(index)); } template typename NeighbourTable::ParticleVector NeighbourTable::getNeighbourVector( const Vec3 &pt, double radius ) const { ParticleVector neighbours; neighbours.reserve(128); const Vec3L min = getVecIndex(pt - radius); const Vec3L max = getVecIndex(pt + radius); for (int i = min.X(); i <= max.X(); i++) { for (int j = min.Y(); j <= max.Y(); j++) { for (int k = min.Z(); k <= max.Z(); k++) { neighbours.insert( neighbours.end(), m_tablePtr[getScalarIndex(i, j, k)].begin(), m_tablePtr[getScalarIndex(i, j, k)].end() ); } } } return neighbours; } template typename NeighbourTable::ParticleVector NeighbourTable::getUniqueNeighbourVector( const Vec3 &pt, double radius ) const { ParticleVector neighbours = getNeighbourVector(pt, radius); std::sort(neighbours.begin(), neighbours.end()); typename ParticleVector::iterator uniqueEnd = std::unique(neighbours.begin(), neighbours.end()); neighbours.erase( uniqueEnd, neighbours.end() ); return neighbours; } template typename NeighbourTable::ParticleVector NeighbourTable::getNeighbourVector( const Vec3 &pt ) const { return m_tablePtr[getScalarIndex(pt)]; } template void NeighbourTable::insert(Particle *pParticle) { const Vec3L minIdx = getVecIndex(pParticle->getPos() - pParticle->getRad()); const Vec3L maxIdx = getVecIndex(pParticle->getPos() + pParticle->getRad()); insertInTable(pParticle, minIdx, maxIdx); addInserted(pParticle); } template void NeighbourTable::insert(Particle &particle) { insert(&particle); } template typename NeighbourTable::ParticleIterator NeighbourTable::getParticleIterator() { return ParticleIterator(m_insertedParticles); } template typename NeighbourTable::ParticleConstIterator NeighbourTable::getParticleIterator() const { return ParticleConstIterator(m_insertedParticles); } template void NeighbourTable::insertInTable( Particle *pParticle, const Vec3L &minIdx, const Vec3L &maxIdx ) { for (int i = minIdx.X(); i <= maxIdx.X(); i++) { for (int j = minIdx.Y(); j <= maxIdx.Y(); j++) { for (int k = minIdx.Z(); k <= maxIdx.Z(); k++) { m_tablePtr[getScalarIndex(i, j, k)].push_back(pParticle); } } } } template void NeighbourTable::addInserted(Particle *pParticle) { m_insertedParticles.push_back(pParticle); } template int NeighbourTable::getNumCells() const { return getDimensions()[0]*getDimensions()[1]*getDimensions()[2]; } template typename NeighbourTable::ParticleVector NeighbourTable::getInsertedParticles() const { return m_insertedParticles; } template void NeighbourTable::clearAndRecomputeGrid( const BoundingBox &bBox, double gridSpacing ) { clear(); m_bBox = bBox; m_gridSpacing = gridSpacing; const Vec3 dims = m_bBox.getSizes()/gridSpacing; m_dimensions = Vec3L( int(floor(dims[0])), int(floor(dims[1])), int(floor(dims[2])) ); m_dimensions = m_dimensions.max(Vec3L(1, 1, 1)); m_tablePtr = ParticleVectorArrayPtr( new ParticleVector[ m_dimensions.X()*m_dimensions.Y()*m_dimensions.Z() ] ); m_minIndex = Vec3L(0, 0, 0); m_maxIndex = (m_dimensions - 1); } } } #endif ./Geometry/Packer.h0000664000175000017500000000570112176660653014013 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPACKER_H #define ESYS_LSMPACKER_H #include "Geometry/CircularNeighbourTable.h" #include "Geometry/ParticleCollection.h" #include #include #include namespace esys { namespace lsm { /** * */ template class Packer { public: typedef TmplParticleCollection ParticleCollection; typedef Packer PackerBase; typedef boost::shared_ptr ParticleCollectionPtr; typedef typename ParticleCollection::Particle Particle; typedef boost::object_pool ParticlePool; typedef boost::shared_ptr ParticlePoolPtr; typedef CircularNeighbourTable NTable; typedef boost::shared_ptr NTablePtr; typedef typename ParticleCollection::ParticleIterator ParticleIterator; typedef typename ParticleCollection::ParticleConstIterator ParticleConstIterator; Packer(NTablePtr nTablePtr); Packer(ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr); virtual ~Packer(); virtual void generate() = 0; int getNumParticles() const; int getNextParticleId(); void setNTablePtr(NTablePtr nTablePtr); NTable &getNTable(); const NTable &getNTable() const; ParticlePoolPtr getParticlePoolPtr(); ParticlePool &getParticlePool(); const ParticlePool &getParticlePool() const; ParticleCollection &getParticleCollection(); const ParticleCollection &getParticleCollection() const; Particle &constructParticle(const Particle &particle); ParticleIterator getParticleIterator(); ParticleConstIterator getParticleIterator() const; bool contains(const Particle &particle) const; Particle &createAndInsertParticle(const Particle &particle); protected: typedef std::set IdSet; private: NTablePtr m_nTablePtr; ParticlePoolPtr m_particlePoolPtr; ParticleCollectionPtr m_particleCollectionPtr; IdSet m_idSet; }; } } #include "Geometry/Packer.hpp" #endif ./Geometry/RandomBlock.h0000664000175000017500000000362612176660653015005 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RANDOMBLOCK_H #define __RANDOMBLOCK_H //-- project includes -- #include "Geometry/SimpleParticle.h" #include "Geometry/SimpleNTable.h" #include "Geometry/Sphere2d.h" #include "Geometry/Line.h" #include "Geometry/RandomAssembly2D.h" //-- STL includes -- #include #include #include using std::vector; using std::string; using std::pair; /*! \class CRandomBlock2D \brief Class for the generation of a 2D random lattice in a rectangular area. \author Steffen Abe $Revision$ $Date$ */ class CRandomBlock2D : public ARandomAssembly2D { protected: virtual Vec3 getAPoint(); virtual int getNParts() const{return m_bpart.size();}; double m_maxConnDist; public: CRandomBlock2D(double,double,double,double,double,double,double,bool circ_x=false); virtual ~CRandomBlock2D(); virtual void generate(int,unsigned int); virtual void insertParticle(const SimpleParticle); virtual void tagParticleClosestTo(const Vec3&,int); virtual void tagEdgeY(int,int,double); virtual void tagEdgeZ(int,int,double){}; // do nothing virtual void writeToGeoFile(const string&); virtual double calcPorosity(); virtual vector > getSizeDistribution(int); }; #endif // __RANDOMBLOCK_H ./Geometry/GougeConfig.h0000664000175000017500000003573112176660653015010 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGOUGECONFIG_H #define ESYS_LSMGOUGECONFIG_H #include "Foundation/BoundingBox.h" #include "Geometry/CircularNeighbourTable.h" #include "Geometry/Plane3D.h" #include "Geometry/CubicBoxPacker.h" #include "Geometry/RandomBoxPacker.h" #include "Geometry/PackerGenerators.h" #include "Geometry/DistConnections.h" #include #include #include namespace esys { namespace lsm { typedef std::vector PlaneVector; enum Orientation { XY, XZ, YZ }; class ParticleRndPackPrms { public: inline ParticleRndPackPrms(); inline ParticleRndPackPrms(double size, double minRadius, double maxRadius); inline ~ParticleRndPackPrms(); inline double getSize() const; inline double getMinParticleRadius() const; inline double getMaxParticleRadius() const; private: double m_size; double m_minParticleRadius; double m_maxParticleRadius; }; template class GrainRndPackPrms : public ParticleRndPackPrms { public: typedef TmplParticleGrainGen ParticleGrainGen; typedef ParticleRndPackPrms Inherited; GrainRndPackPrms(); GrainRndPackPrms( double size, ParticleGrainGen &particleGrainGen, int connectionTag=0 ); double getMinGrainRadius(); double getMaxGrainRadius(); ParticleGrainGen &getParticleGrainGen() const; int getConnectionTag() const; private: ParticleGrainGen *m_pParticleGrainGen; int m_connectionTag; }; typedef std::vector BoolVector; typedef std::vector BoundingBoxVector; class PackingInfo { public: inline PackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, double minRadius, double maxRadius ); inline bool is3d() const; inline void initialiseFitPlaneVector(); inline const BoundingBox &getBBox() const; inline const PlaneVector &getFitPlaneVector() const; inline double getMinParticleRadius() const; inline double getMaxParticleRadius() const; inline const BoolVector &getPeriodicDimensions() const; private: BoundingBox m_bBox; BoolVector m_periodicDimensions; Orientation m_orientation; double m_minRadius; double m_maxRadius; PlaneVector m_fitPlaneVector; }; template class GougePackingInfo : public PackingInfo { public: typedef TmplParticleGrainGen ParticleGrainGen; typedef PackingInfo Inherited; GougePackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, ParticleGrainGen &particleGrainGen ); double getMinGrainRadius() const; double getMaxGrainRadius() const; ParticleGrainGen &getParticleGrainGen() const; private: ParticleGrainGen *m_pParticleGrainGen; }; typedef std::vector PackingInfoVector; template class GougeConfigPrms { public: typedef TmplParticleGrainGen ParticleGrainGen; typedef GrainRndPackPrms GrainRPackPrms; typedef typename GrainRPackPrms::Inherited ParticleRndPackPrms; typedef GougePackingInfo GougePackInfo; typedef std::vector GougePackingInfoVector; GougeConfigPrms(); /** * */ GougeConfigPrms( const BoundingBox &bBox, double padRadius, Orientation orientation, const ParticleRndPackPrms &faultRegionPrms, const GrainRPackPrms &gougeRegionPrms, const BoolVector &peridicDimensions=BoolVector(3, false), int maxInsertionFailures=100, double tolerance = DBL_EPSILON*128, double connectionTolerance = DBL_EPSILON*128*10, int blockConnectionTag = 0 ); ~GougeConfigPrms(); double getTolerance() const; double getConnectionTolerance() const; const BoundingBox &getBBox() const; int getMaxInsertionFailures() const; double getRegularBlockRadius() const; double getFaultMinRadius() const; double getFaultMaxRadius() const; double getGougeMinRadius() const; double getGougeMaxRadius() const; int getGougeConnectionTag() const; int getBlockConnectionTag() const; const BoolVector &getPeriodicDimensions() const; BoundingBoxVector getRegularBBoxVector() const; GougePackingInfoVector getGougePackingInfoVector() const; PackingInfoVector getFaultPackingInfoVector() const; BoundingBox cutFromCentre(double d1, double d2) const; Orientation getOrientation() const; int getOrientationIndex() const; double getOrientationSize() const; double getMaxRadius() const; double getMinRadius() const; bool is2d() const; private: BoundingBox m_bBox; double m_padRadius; Orientation m_orientation; ParticleRndPackPrms m_faultPrms; GrainRPackPrms m_gougePrms; BoolVector m_periodicDimensions; int m_maxInsertionFailures; double m_tolerance; double m_connectionTolerance; int m_blockConnectionTag; }; /** * */ template < typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection > class GougeConfig { public: typedef TmplConnection Connection; typedef TmplGrainRandomBoxPacker GrainRandomPacker; typedef boost::shared_ptr GrainRandomPackerPtr; typedef typename GrainRandomPacker::ParticleGrainGen ParticleGrainGen; typedef GougeConfigPrms GougeConfPrms; typedef typename GougeConfPrms::GougePackingInfoVector GougePackingInfoVector; typedef typename GrainRandomPacker::Particle Particle; typedef typename GrainRandomPacker::ParticleIterator ParticleIterator; typedef typename GrainRandomPacker::ParticleConstIterator ParticleConstIterator; typedef typename GrainRandomPacker::ParticleCollection ParticleCollection; typedef typename GrainRandomPacker::Grain Grain; typedef typename GrainRandomPacker::GrainIterator GrainIterator; typedef typename GrainRandomPacker::GrainConstIterator GrainConstIterator; typedef typename GrainRandomPacker::GrainCollection GrainCollection; typedef typename GrainRandomPacker::PackerBase APacker; typedef typename GrainRandomPacker::BoxPackerBase ABoxPacker; typedef ConstRadiusGen RegRadiusGen; typedef CubicBoxPacker RegBoxPacker; typedef typename RegBoxPacker::ParticleGeneratorPtr RegRadiusGenPtr; typedef TmplParticleRandomBoxPacker RndBoxPacker; typedef typename RndBoxPacker::ParticleGenerator RndRadiusGen; typedef typename RndBoxPacker::ParticleGeneratorPtr RndRadiusGenPtr; typedef typename GrainRandomPacker::NTable NTable; typedef typename GrainRandomPacker::NTablePtr NTablePtr; typedef boost::shared_ptr GeneratorPtr; typedef std::vector GeneratorPtrVector; typedef std::vector GrainRndPackerPtrVector; typedef typename GrainRandomPacker::ParticlePool ParticlePool; typedef typename GrainRandomPacker::ParticlePoolPtr ParticlePoolPtr; typedef typename GrainRandomPacker::GrainPool GrainPool; typedef typename GrainRandomPacker::GrainPoolPtr GrainPoolPtr; class ConnectionCmp { public: bool operator()(const Connection &i1, const Connection &i2) const { return ( (i1.getP1Id() < i2.getP1Id()) || ( (i1.getP1Id() == i2.getP1Id()) && ( (i1.getP2Id() < i2.getP2Id()) || ( (i1.getP2Id() == i2.getP2Id()) && (i1.getTag() < i2.getTag()) ) ) ) ); } bool operator()(const Connection *i1, const Connection *i2) const { return (*this)(*i1, *i2); } }; typedef std::set ConnectionSet; typedef DistConnections ConnectionFinder; GougeConfig(const GougeConfPrms &prms); virtual ~GougeConfig(); virtual void generate(); int getNumParticles() const; int getNumGrains() const; int getNumConnections() const; const GrainRndPackerPtrVector &getGougeGeneratorVector() const; GrainRndPackerPtrVector &getGougeGeneratorVector(); const GeneratorPtrVector &getFaultGeneratorVector() const; bool isGougeParticle(const Particle &particle) const; bool areInDifferentFaultBlocks( const Particle &p1, const Particle &p2 ) const; virtual void write(std::ostream &oStream) const; void writeToFile(const std::string &fileName) const; void tagGougeParticles(int tag); void tagRndBlockParticles(int tag); void tagDrivingPlateParticles( int minDrivingTag, int maxDrivingTag, double distanceFromBBoxEdge ); virtual void createConnectionSet(); const ConnectionSet &getConnectionSet() const; GrainCollection getGrainCollection(); ParticleCollection getParticleCollection(); template void visitParticles(TmplVisitor &visitor) { for ( typename GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next().visit(visitor); } } } template void visitParticles(const TmplVisitor &visitor) const { for ( typename GeneratorPtrVector::const_iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next().visit(visitor); } } } template void visitConnections(TmplVisitor &visitor) const { const ConnectionSet &connectionSet = getConnectionSet(); for ( typename ConnectionSet::const_iterator it = connectionSet.begin(); it != connectionSet.end(); it++ ) { it->visit(visitor); } } const GougeConfPrms &getPrms() const { return m_prms; } class IdCompare { public: bool operator()(const Particle *p1, const Particle *p2) const { return (p1->getID() < p2->getID()); } }; class ConnectionValidator { public: inline ConnectionValidator(const GougeConfig &gougeBlock, double tolerance) : m_pGougeConfig(&gougeBlock), m_tolerance(tolerance) { } inline bool isValid(const Particle &p1, const Particle &p2) const { return ( (p1.getID() < p2.getID()) && ((p1.getPos() - p2.getPos()).norm() < (m_tolerance + (p1.getRad() + p2.getRad()))) && ((!m_pGougeConfig->isGougeParticle(p1)) && (!m_pGougeConfig->isGougeParticle(p2))) && ((!m_pGougeConfig->areInDifferentFaultBlocks(p1, p2))) ); } private: const GougeConfig *m_pGougeConfig; double m_tolerance; }; class GeoParticleWriter { public: GeoParticleWriter(std::ostream &oStream, int precision) : m_pOStream(&oStream), m_precision(precision) { } void visitParticle(const Particle &particle) const { (*m_pOStream) << std::setprecision(m_precision) << particle.getPos() << " " << particle.getRad() << " " << particle.getID() << " " << particle.getTag() << "\n"; } private: std::ostream *m_pOStream; int m_precision; }; class GeoConnectionWriter { public: GeoConnectionWriter(std::ostream &oStream) : m_pOStream(&oStream) { } void visitBasicInteraction(const BasicInteraction &connection) { (*m_pOStream) << connection.first() << " " << connection.second() << " " << 0 << "\n"; } private: std::ostream *m_pOStream; int m_precision; }; protected: NTablePtr m_nTablePtr; GougeConfPrms m_prms; ConnectionSet m_connectionSet; GrainRndPackerPtrVector m_gougeGenPtrVector; GeneratorPtrVector m_genPtrVector; ParticlePoolPtr m_particlePoolPtr; GrainPoolPtr m_grainPoolPtr; void createRegularBlockGenerators(); void createFaultBlockGenerators(); virtual void createGougeConfigGenerators(); private: GeneratorPtrVector m_regularGenPtrVector; GeneratorPtrVector m_faultGenPtrVector; }; } } #include "Geometry/GougeConfig.hpp" #endif ./Geometry/SplitBlock3D.cpp0000664000175000017500000001122412176660653015373 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SplitBlock3D.h" #include /*! Constructor of CRandomBlock \param xmin minimum in x-direction \param xmax maximum in x-direction \param ymin minimum in y-direction \param ymax maximum in y-direction \param zmin minimum in z-direction \param zmax maximum in z-direction \param rmin minimum particle radius \param rmax maximum particle radius \param ysplit the position of the split plane \param dir the direction of the split plane (2=y,3=z) \param circ_x circular or open boundary conditions in x-direction */ CSplitBlock3D::CSplitBlock3D(double xmin,double xmax,double ymin,double ymax,double zmin,double zmax,double rmin,double rmax,double ysplit,int dir, bool circ_x,bool rough):CRandomBlock3D(xmin,xmax,ymin,ymax,zmin,zmax,rmin,rmax,1.05,circ_x) { m_ysplit=ysplit; m_dir=dir; if(!rough){ switch(m_dir){ case 2 : // split plane y { Borders.push_back(Plane3D(Vec3(0.0,1.0,0.0),Vec3(0.0,m_ysplit,0.0))); cout << "split plane y" << endl; } break; case 3 : // split plane z { Borders.push_back(Plane3D(Vec3(0.0,0.0,1.0),Vec3(0.0,0.0,m_ysplit))); cout << "split plane z" << endl; } break; default: { cerr << "invalid direction " << dir << " in CSplitBlock3D" << endl; } } } } CSplitBlock3D::~CSplitBlock3D() {} /*! Fill the space in the block \param tries number of times the insertion of a particle is tried \param seed seed for the random number generator */ void CSplitBlock3D::generate(int tries,unsigned int seed) { srand(seed); // get limits int imin=int(floor(m_xmin/(m_rmax*2.0))); int jmin=int(floor(m_ymin/(m_rmax*sqrt(3.0)))); int kmin=int(floor(m_zmin/(m_rmax*2.0*sqrt(2.0/3.0)))); int imax=int(ceil(m_xmax/(m_rmax*2.0))); int jmax=int(ceil(m_ymax/(m_rmax*sqrt(3.0)))); int kmax=int(ceil(m_zmax/(m_rmax*2.0*sqrt(2.0/3.0)))); // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ for(int k=kmin;kgetInteractions(m_iset,1.05); // remove interactions crossing the split for(set::iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ double p1=0.0; double p2=0.0; switch(m_dir){ case 2: { p1=m_bpart[iter->first()].getPos().Y(); p2=m_bpart[iter->second()].getPos().Y(); break; } case 3: { p1=m_bpart[iter->first()].getPos().Z(); p2=m_bpart[iter->second()].getPos().Z(); break; } default: break; } double d1=m_ysplit-p1; double d2=m_ysplit-p2; if(d1*d2<0){ // on different sides set::iterator h=iter; iter++; m_iset.erase(h); } } } /*! Tag particles along the split plane \param tag1 the tag for particles "above" the split (y>y_split) \param tag2 the tag for particles "below" the split (y::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double p=0.0; switch(m_dir){ case 2: p=iter->getPos().Y(); break; case 3: p=iter->getPos().Z(); break; } double r=iter->getRad(); double dist=p-m_ysplit; if(fabs(dist)0) { // above iter->setTag(tag1); } else { // below iter->setTag(tag2); } } } } ./Geometry/ClosePackOrientation.h0000664000175000017500000000207112176660653016663 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCLOSEPACKORIENTATION_H #define ESYS_LSMCLOSEPACKORIENTATION_H namespace esys { namespace lsm { /** * Enum for specifying the orientation of the layers in * in a sphere close packing. */ enum ClosePackOrientation { DEFAULT_ORIENT = 0, XYZ, XZY, YXZ, YZX, ZXY, ZYX, NUM_ORIENTATIONS }; } } #endif ./Geometry/RandomBlock.cpp0000664000175000017500000001515712176660653015342 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "RandomBlock.h" //-- IO includes -- #include #include using std::ofstream; //-- System includes -- #include using std::srand; /*! Constructor of CRandomBlock \param xmin minimum in x-direction \param xmax maximum in x-direction \param ymin minimum in y-direction \param ymax maximum in y-direction \param rmin minimum particle radius \param rmax maximum particle radius \param mcd maximum relative distance for bond generation */ CRandomBlock2D::CRandomBlock2D(double xmin,double xmax,double ymin,double ymax,double rmin,double rmax,double mcd, bool circ_x) { m_xmin=xmin; m_xmax=xmax; m_ymin=ymin; m_ymax=ymax; m_rmin=rmin; m_rmax=rmax; m_circ_x=circ_x; m_maxConnDist=mcd; // setup borders if(!circ_x) { Borders.push_back(Line(Vec3(1.0,0.0,0.0),Vec3(m_xmin,0.0,0.0))); // left Borders.push_back(Line(Vec3(-1.0,0.0,0.0),Vec3(m_xmax,0.0,0.0))); // right } Borders.push_back(Line(Vec3(0.0,1.0,0.0),Vec3(0.0,m_ymin,0.0))); // bottom Borders.push_back(Line(Vec3(0.0,-1.0,0.0),Vec3(0.0,m_ymax,0.0))); // top // neighbor table m_snt=new CSimple2DNTable(Vec3(m_xmin,m_ymin,0.0),Vec3(m_xmax-m_xmin,m_ymax-m_ymin,0.0),2.1*rmax,circ_x); } CRandomBlock2D::~CRandomBlock2D() { if(m_snt!=NULL) delete m_snt; } /*! Generate a random point within the space of the block */ Vec3 CRandomBlock2D::getAPoint() { double px,py; px=m_random(m_xmin+m_rmin,m_xmax-m_rmin); py=m_random(m_ymin+m_rmin,m_ymax-m_rmin); return Vec3(px,py,0.0); } /*! Fill the space in the block \param tries number of times the insertion of a particle is tried \param seed seed for the random number generator */ void CRandomBlock2D::generate(int tries,unsigned int seed) { srand(seed); // get limits int imin=int(floor(m_xmin/(m_rmax*2.0))); int jmin=int(floor(m_ymin/(m_rmax*sqrt(3.0)))); int imax=int(ceil(m_xmax/(m_rmax*2.0))); int jmax=int(ceil(m_ymax/(m_rmax*sqrt(3.0)))); // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ // calc random radius double r=m_random(m_rmin,m_rmax); // get position double px=(double(i)+0.5*double(j%2))*m_rmax*2.0; double py=double(j)*sqrt(3.0)*m_rmax; SimpleParticle Po=SimpleParticle(Vec3(px,py,0),r,getNParts()); bool fit=checkAFit(Po); if(fit){ insertParticle(Po); } } } // fill space fillSpace(tries); // get set of interactions m_snt->getInteractions(m_iset,m_maxConnDist); } /*! Insert a particle into the internal structures \param P the particle */ void CRandomBlock2D::insertParticle(const SimpleParticle P) { m_bpart.push_back(P); m_snt->insertParticle(P); } /*! Write the particles contained in the random block into a LSM geometry file v 1.1 \param filename the name of the file */ void CRandomBlock2D::writeToGeoFile(const string& filename) { ofstream outfile; // open file outfile.open(filename.c_str()); outfile << "LSMGeometry 1.2" << endl; // bounding box outfile << "BoundingBox " << m_xmin << " " << m_ymin << " -0.1 " << m_xmax << " " << m_ymax << " 0.1" << endl; outfile << "PeriodicBoundaries " << m_circ_x << " 0 0" << endl; outfile << "Dimension 2D" << endl; // particles outfile << "BeginParticles" << endl; outfile << "Simple" << endl; outfile << m_bpart.size() << endl; const int precision = 15; int count=0; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ outfile << std::setprecision(precision) << iter->getPos().X() << " " << iter->getPos().Y() << " " << iter->getPos().Z() << " " << iter->getRad() << " " << iter->getID() << " " << iter->getTag() << "\n"; count++; } outfile << "EndParticles" << endl; // connections outfile << "BeginConnect" << endl; outfile << m_iset.size() << endl; for(set::const_iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ outfile << *iter << "\n"; } outfile << "EndConnect" << endl; // close file outfile.close(); } /*! calculate the porosity of the material */ double CRandomBlock2D::calcPorosity() { double a_total,a_part; a_total=(m_xmax-m_xmin)*(m_ymax-m_ymin); a_part=0.0; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double radius=iter->getRad(); a_part+=M_PI*radius*radius; } return 1.0-a_part/a_total; } /*! return a histogram of the particle size distribution \param nbins number of bins */ vector > CRandomBlock2D::getSizeDistribution(int nbins) { vector >res(nbins); double inc=1.0/m_bpart.size(); // setup bin centres for(int i=0;i::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double radius=iter->getRad(); int bin=int(((radius-m_rmin)/(m_rmax+m_small_value-m_rmin))*double(nbins)); res[bin].second+=inc; } return res; } /*! Tag particle closest to a given position \param pos the position \param tag the tag */ void CRandomBlock2D::tagParticleClosestTo(const Vec3& pos,int tag) { int id=m_snt->getClosestParticleID(pos); vector::iterator iter=m_bpart.begin(); while((iter!=m_bpart.end()) && (iter->getID()!=id)) iter++; if(iter!=m_bpart.end()) iter->setTag(tag); } /*! Tag particles along x-edges \param tag1 tag for particles along x_min \param tag2 tag for particles along x_max \param d maximum distance from the edge at which a particle gets tagged */ void CRandomBlock2D::tagEdgeY(int tag1,int tag2,double d) { for(vector::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double py=iter->getPos().Y(); double r=iter->getRad(); if(py-m_yminsetTag(tag1); if(m_ymax-pysetTag(tag2); } } ./Geometry/PointCloud.cpp0000664000175000017500000000510612176660653015220 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/PointCloud.h" /*! construct an empty point cloud - do nothing */ PointCloud::PointCloud() {} /*! add a point \param p the position of the point */ void PointCloud::addPoint(const Vec3& p) { m_points.push_back(p); } /*! calculate center point */ Vec3 PointCloud::getCenter() { Vec3 Center=Vec3(0.0,0.0,0.0); for(vector::iterator iter=m_points.begin(); iter!=m_points.end(); iter++){ Center+=(*iter); } Center=Center/m_points.size(); return Center; } /*! find a plane that best fits the could of points. Algorithm as described in Schneider & Eberly "Geometric Tools for Computer Graphics", pp 884/885, i.e. getting the eigenvectors of a matrix with m_11=\sum(x_i-a)^2 m_12=\sum(x_i-a)(y_i-b) m_13=\sum(x_i-a)(z_i-c) m_22=\sum(y_i-b)^2 m_23=\sum(y_i-b)(z_i-c) m_33=\sum(z_i-c)^2 where (a,b,c) is the center of the cloud */ Plane3D PointCloud::getFitPlane() { // calculate center point Vec3 C=getCenter(); // get matrix coefficients double m_11=0.0; double m_12=0.0; double m_13=0.0; double m_22=0.0; double m_23=0.0; double m_33=0.0; for(vector::iterator iter=m_points.begin(); iter!=m_points.end(); iter++){ double dx=(iter->X()-C.X()); double dy=(iter->Y()-C.Y()); double dz=(iter->Z()-C.Z()); m_11+=dx*dx; m_12+=dx*dy; m_13+=dx*dz; m_22+=dy*dy; m_23+=dy*dz; m_33+=dz*dz; } // setup matrix Matrix3 M; M(0,0)=m_11; M(0,1)=m_12; M(1,0)=m_12; M(0,2)=m_13; M(2,0)=m_13; M(1,1)=m_22; M(1,2)=m_23; M(2,1)=m_23; M(2,2)=m_33; // std::cout << "M: " << M << std::endl; // get eigenvectors Vec3 v1,v2,v3; double e1,e2,e3; M.eigen(v1,v2,v3,e1,e2,e3); // std::cout << "Eigenvalues : " << e1 << " , " << e2 << " , " << e3 << std::endl; // std::cout << "Eigenvectors: " << v1 << " , " << v2 << " , " << v3 << std::endl; Plane3D P(v1,C); return P; } ./Geometry/NeighbourTable.h0000664000175000017500000000637212176660653015505 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMNEIGHBOURTABLE_H #define ESYS_LSMNEIGHBOURTABLE_H #include #include #include #include #include #include namespace esys { namespace lsm { /** * */ template class NeighbourTable { public: typedef TmplParticle Particle; typedef std::vector ParticleVector; NeighbourTable(const BoundingBox &bBox, double gridSpacing); NeighbourTable(const NeighbourTable &nTable); virtual ~NeighbourTable(); void clear(); double getGridSpacing() const; void resize(const BoundingBox &bBox, double gridSpacing); const Vec3L &getDimensions() const; const BoundingBox &getBBox() const; const Vec3 &getMinPt() const; /** * Return the number of particles inserted into this table. */ size_t size() const; int getScalarIndex(int xIdx, int yIdx, int zIdx) const; int getScalarIndex(const Vec3L &index) const; int getScalarIndex(const Vec3 &pt) const; const Vec3L &getMinVecIndex() const; const Vec3L &getMaxVecIndex() const; Vec3L getVecIndex(const Vec3 &pt) const; ParticleVector getNeighbourVector(const Vec3 &pt, double radius) const; ParticleVector getUniqueNeighbourVector(const Vec3 &pt, double radius) const; ParticleVector getNeighbourVector(const Vec3 &pt) const; void insert(Particle *pParticle); void insert(Particle &particle); typedef ForwardIterator ParticleIterator; typedef ForwardConstIterator ParticleConstIterator; ParticleIterator getParticleIterator(); ParticleConstIterator getParticleIterator() const; protected: void insertInTable(Particle *pParticle, const Vec3L &minIdx, const Vec3L &maxIdx); void addInserted(Particle *pParticle); int getNumCells() const; ParticleVector getInsertedParticles() const; void clearAndRecomputeGrid(const BoundingBox &bBox, double gridSpacing); private: typedef boost::shared_array ParticleVectorArrayPtr; Vec3L m_dimensions; Vec3L m_minIndex; Vec3L m_maxIndex; double m_gridSpacing; BoundingBox m_bBox; ParticleVector m_insertedParticles; ParticleVectorArrayPtr m_tablePtr; }; } } #include "Geometry/NeighbourTable.hpp" #endif ./Geometry/PackerGenerators.h0000664000175000017500000001154312176660653016046 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPACKERGENERATORS_H #define ESYS_LSMPACKERGENERATORS_H #include "Foundation/vec3.h" namespace esys { namespace lsm { /** * Generates particles of a specified constant radius. */ template class ConstRadiusGen { public: typedef TmplParticle Particle; ConstRadiusGen(double radius); /** * Returns the radius of particles generated by the * getParticle method. */ const double &getParticleRadius() const; /** * Returns the radius of particles generated by the * getParticle method. */ const double &getMinFitRadius() const; /** * Returns the radius of particles generated by the * getParticle method. */ const double &getMaxFitRadius() const; /** * Returns a particle of radius this->getParticleRadius(). * * @param posn The position of the returned particle. */ Particle getParticle(const Vec3 &posn) const; /** * Returns a particle of radius this->getParticleRadius(). * * @param posn The position of the returned particle. * @param maxRadius The suggested particle radius, ignored. */ Particle getParticle(const Vec3 &posn, const double &maxRadius) const; /** * Returns whether fitRadius == this->getRadius() */ bool isValidFitRadius(const double &fitRadius) const; private: double m_radius; }; /** * Base class for generators which generate particles * whose radius ranges between a specified minimum and maximum. */ template class RangeRadiusGen { public: typedef TmplParticle Particle; RangeRadiusGen(double minFitRadius, double maxFitRadius); virtual ~RangeRadiusGen(); /** * Returns the radius of particles generated by the * getParticle method. */ const double &getMinFitRadius() const; /** * Returns the radius of particles generated by the * getParticle method. */ const double &getMaxFitRadius() const; /** * Returns whether fitRadius == this->getRadius() */ bool isValidFitRadius(const double &fitRadius) const; private: double m_minFitRadius; double m_maxFitRadius; }; /** * Class for generators which generate particles * whose radius is from a uniform random distribution. */ template class RndRadiusGen : public RangeRadiusGen { public: typedef RangeRadiusGen Inherited; typedef typename Inherited::Particle Particle; RndRadiusGen( double minFitRadius, double maxFitRadius ); /** * Returns a randomly generated radius value. */ double getRandomRadius() const; Particle getParticle(const Vec3 &posn) const; Particle getParticle(const Vec3 &posn, double suggestedRadius) const; private: }; template class GrainRndRadiusGen : public RndRadiusGen { public: typedef RndRadiusGen Inherited; typedef TmplGrain Grain; typedef typename Grain::Particle Particle; GrainRndRadiusGen(double minGrainRadius, double maxGrainRadius); virtual ~GrainRndRadiusGen(); const double &getMinGrainRadius() const; const double &getMaxGrainRadius() const; virtual Grain getGrain(const Particle &p) = 0; }; template class SingleParticleGrainGen : public GrainRndRadiusGen { public: typedef GrainRndRadiusGen Inherited; typedef typename Inherited::Grain Grain; typedef typename Grain::Particle Particle; SingleParticleGrainGen(double minGrainRadius, double maxGrainRadius); const double &getMinParticleRadius() const; const double &getMaxParticleRadius() const; virtual Grain getGrain(const Particle &p); }; } } #include "Geometry/PackerGenerators.hpp" #endif ./Geometry/GrainCollection.h0000664000175000017500000001073712176660653015667 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRAINCOLLECTION_H #define ESYS_LSMGRAINCOLLECTION_H #include "Foundation/StlIterator.h" #include #include #include namespace esys { namespace lsm { /** * */ template class GrainCollection { public: typedef TmplGrain Grain; typedef typename Grain::Particle Particle; typedef typename Grain::ParticleCollection ParticleCollection; typedef typename ParticleCollection::ParticlePool ParticlePool; typedef typename ParticleCollection::ParticlePoolPtr ParticlePoolPtr; typedef typename ParticleCollection::ParticleIterator ParticleIterator; typedef typename ParticleCollection::ParticleConstIterator ParticleConstIterator; typedef boost::object_pool GrainPool; typedef boost::shared_ptr GrainPoolPtr; typedef std::vector GrainVector; protected: typedef ForwardIterator VectorIterator; typedef ForwardConstIterator VectorConstIterator; public: class GrainIterator : public VectorIterator { public: typedef Grain& value_type; GrainIterator(const VectorIterator &it) : VectorIterator(it) { } value_type next() { return *(VectorIterator::next()); } value_type current() const { return *(VectorIterator::current()); } }; class GrainConstIterator : public VectorConstIterator { public: typedef const Grain& value_type; GrainConstIterator (const VectorConstIterator &it) : VectorConstIterator(it) { } GrainConstIterator (const VectorIterator &it) : VectorConstIterator(it) { } value_type next() { return *(VectorConstIterator::next()); } value_type current() const { return *(VectorConstIterator::current()); } }; GrainCollection(); GrainCollection(ParticlePoolPtr particlePoolPtr); GrainCollection(ParticlePoolPtr particlePoolPtr, GrainPoolPtr grainPoolPtr); virtual ~GrainCollection(); /** * Returns the number of grains in this collection. */ int getNumGrains() const; /** * Returns the number of particles contained in all * grains of this collection. */ int getNumParticles() const; /** * Stores reference to specified grain. * * @param g Inserts reference to grain g in this collection. * @throws std::runtime_error if g was not created by this * collection's GrainPool. */ void insertRef(Grain &g); /** * Creates an empty grain. * @return reference to new grain. */ Grain &createGrain(); /** * Creates an empty (no particles) grain. * @param id Create a grain with this id. * @return reference to new grain. */ Grain &createGrain(typename Grain::Id id); /** * Returns a copy-constructed grain. * @param g Copy created from this argument. * @return reference to new grain. */ Grain &createGrain(const Grain &g); GrainIterator getGrainIterator(); GrainConstIterator getGrainIterator() const; protected: ParticlePoolPtr getParticlePoolPtr(); GrainPoolPtr getGrainPoolPtr(); private: ParticlePoolPtr m_particlePoolPtr; GrainPoolPtr m_grainPoolPtr; GrainVector m_grainVector; }; } } #include "Geometry/GrainCollection.hpp" #endif ./Geometry/SphereBoxVolCalculator.h0000664000175000017500000000275012176660653017201 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSPHEREBOXVOLCALCULATOR_H #define ESYS_LSMSPHEREBOXVOLCALCULATOR_H #include "Foundation/vec3.h" #include "Geometry/IntersectionVolCalculator.h" namespace esys { namespace lsm { /** * Calculates the volume of intersection between a box and * a sphere. */ class SphereBoxVolCalculator : public impl::IntersectionVolCalculator<3, Vec3> { public: typedef impl::IntersectionVolCalculator<3, Vec3> Inherited; typedef Inherited::BasicSphere Sphere; typedef Inherited::BasicBox Box; SphereBoxVolCalculator( const Box &box ) : Inherited(box) { } double getVolume(const Sphere &sphere) { return Inherited::getVolume(sphere); } private: }; } } #endif ./Geometry/Edge2D.h0000664000175000017500000000442612176660653013643 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EDGE2D_H #define __EDGE2D_H //-- Project includes -- #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Geometry/AEdge.h" //-- STL includes -- #include using std::pair; using std::make_pair; //-- IO includes -- #include using std::ostream; /*! \class Edge2D \brief class for edge in 2D "mesh" \author Steffen Abe $Revision$ $Date$ */ class Edge2D : public AEdge { public: // types typedef Vec3 (Edge2D::* VectorFieldFunction)() const; typedef double (Edge2D::* ScalarFieldFunction)() const; private: Vec3 m_normal; Vec3 m_force; int m_id0,m_id1; // corner ids int m_edge_id,m_tag; public: Edge2D(int,int,const Vec3&,const Vec3&,int,int); void moveNode(int,const Vec3&); inline int getID(){return m_edge_id;}; inline void applyForce(const Vec3& f){m_force+=f;}; inline void zeroForce(){m_force=Vec3(0.0,0.0,0.0);}; Vec3 getNormal() const {return m_normal;}; Vec3 toGlobal(const Vec3&); Vec3 toLocal(const Vec3&); // get id/pos pairs for each node -> mainly for checkpointing pair getP0()const{return make_pair(m_id0,m_p0);}; pair getP1()const{return make_pair(m_id1,m_p1);}; // access functions static VectorFieldFunction getVectorFieldFunction(const string&); static ScalarFieldFunction getScalarFieldFunction(const string&); Vec3 getForce() const {return m_force;}; Vec3 getForceDensity() const {return m_force/((m_p1-m_p0).norm());}; double getPressure() const; //! output for debugging purposes friend ostream& operator<<(ostream&,const Edge2D&); void print(); }; #endif // __EDGE2D_H ./Geometry/RandomSpherePacker.h0000664000175000017500000001324512176660653016325 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRANDOMSPHEREPACKER_H #define ESYS_LSMRANDOMSPHEREPACKER_H #include "Foundation/console.h" #include "Foundation/Rng.h" #include "Foundation/BoundingSphere.h" #include "Geometry/CubicBoxPacker.h" #include "Geometry/SphereFitter.h" #include "Geometry/Plane3D.h" #include #include namespace esys { namespace lsm { template class SphereFittedPIterator { public: typedef TmplFitterTraits FitterTraits; typedef typename FitterTraits::Plane3D Plane; typedef typename FitterTraits::PlaneVector PlaneVector; typedef typename FitterTraits::Packer Packer; typedef typename Packer::Particle Particle; typedef typename Packer::ParticleVector ParticleVector; class FitTraits { public: typedef Packer Validator; typedef typename Packer::Particle Particle; typedef typename Packer::ParticleVector ParticleVector; typedef typename FitterTraits::Plane3D Plane3D; }; typedef SphereFitter Fitter; typedef boost::shared_ptr FitterPtr; typedef std::vector FitterPtrVector; typedef MoveToSurfaceFitter Move2SurfaceFitter; typedef ThreeDSphereFitter ThreeDFitter; typedef TwoDSphereFitter TwoDSFitter; typedef TwoDSphereSphereFitter TwoDSSphereFitter; typedef ThreeDSphereSphereFitter ThreeDSSphereFitter; SphereFittedPIterator( Packer &packer, int maxInsertionFailures, const BoundingSphere &bSphere ); void initialiseFitterPtrVector(); const BoundingSphere &getBSphere() const; int getMaxInsertionFailures() const; const FitterPtrVector &getFitterPtrVector() const; FitterPtrVector &getFitterPtrVector(); const Packer &getPacker() const; Packer &getPacker(); double getRandom(double min, double max) const; Vec3 getRandomPoint() const; Particle getCandidateParticle(const Vec3 &point); ParticleVector getClosestNeighbours(const Particle& particle, int numClosest); Particle &generateNext(); bool hasNext(); Particle next(); void logInfo(); private: Packer *m_pPacker; FitterPtrVector m_fitterPtrVector; int m_maxInsertionFailures; int m_lastFailCount; int m_successCount; Particle m_next; BoundingSphere m_bSphere; }; /** * */ template class TmplCubicBoxPackerWrap> class RandomSpherePacker : public TmplCubicBoxPackerWrap::CubicBoxPackerBase { public: typedef typename TmplCubicBoxPackerWrap::CubicBoxPackerBase Inherited; typedef typename Inherited::ParticleGenerator ParticleGenerator; typedef typename Inherited::ParticleGeneratorPtr ParticleGeneratorPtr; typedef typename Inherited::Particle Particle; typedef typename Inherited::NTable NTable; typedef typename Inherited::NTablePtr NTablePtr; typedef typename NTable::ParticleVector ParticleVector; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; class StufferTraits { public: typedef RandomSpherePacker Packer; typedef esys::lsm::Plane3D Plane3D; typedef std::vector PlaneVector; }; typedef SphereFittedPIterator StuffedParticleIterator; RandomSpherePacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingSphere &bSphere, double tolerance, double cubicPackRadius, int maxInsertionFailures, bool do2d ); virtual ~RandomSpherePacker(); const BoundingSphere &getBSphere() const; bool particleIsValid(const Particle &particle) const; double getRandom(double min, double max) const; Vec3 getRandomPoint() const; ParticleVector getClosestNeighbours(const Particle& particle, int numClosest); int getMaxInsertionFailures() const; bool particleFitsInBSphere(const Particle &particle) const; bool particleFitsInBSphereWithNeighbours(const Particle &particle) const; void generateCubicPackingInSphere(); void generateRandomFill(); virtual void generate(); private: BoundingSphere m_bSphere; int m_maxInsertionFailures; }; } } #include "Geometry/RandomSpherePacker.hpp" #endif ./Geometry/GrainRandomBoxPacker.cpp0000664000175000017500000000132712176660653017141 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GrainRandomBoxPacker.h" ./Geometry/BlockGenerator.h0000664000175000017500000000500112176660653015500 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBLOCKGENERATOR_H #define ESYS_LSMBLOCKGENERATOR_H #include #include #include #include #include namespace esys { namespace lsm { typedef std::vector BoolVector; /** * */ class BlockGenerator : public ParticleGenerator { public: BlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ); virtual ~BlockGenerator(); virtual void generate() = 0; virtual void generateSeedParticles(); virtual SimpleParticle generateParticle(const Vec3 &point); virtual double getRadius() const = 0; virtual double getGridRadius() const = 0; size_t getNumParticles() const; int getNextId(); virtual bool particleFits(const SimpleParticle &particle) const; bool is2d() const; bool particleFitsInBBox(const SimpleParticle &particle) const; bool particleFitsWithNeighbours(const SimpleParticle &particle) const; void insertParticle(const SimpleParticle &particle); double getTolerance() const; const BoundingBox &getBBox() const; bool contains(const SimpleParticle &particle) const; typedef NTable::ParticleVector ParticleVector; typedef NTable::ParticleIterator ParticleIterator; ParticleIterator getParticleIterator() { return ParticleIterator(m_particleVector); } typedef std::set IdSet; private: BoundingBox m_bBox; BoolVector m_periodicDimensions; ParticleVector m_particleVector; double m_tolerance; IdSet m_idSet; }; } } #endif ./Geometry/HexagBlockIterator.h0000664000175000017500000000362312176660653016330 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMHEXAGBLOCKITERATOR_H #define ESYS_LSMHEXAGBLOCKITERATOR_H #include "Foundation/BoundingBox.h" #include "Foundation/vec3.h" #include "Geometry/ClosePackIterator.h" #include "Geometry/Vec3L.h" namespace esys { namespace lsm { /** * Class for iterating over the centre-points of spheres arranged * in a hexagonal-close-packed block. */ class HexagBlockIterator : public ClosePackIterator { public: /** * Creates default empty iterator. */ inline HexagBlockIterator(); /** * Creates an iterator which will iterate over numI*numJ*numK * centre points of spheres with radius sphereRadius. * @param numI number of spheres in the i direction. * @param numJ number of spheres in the j direction. * @param numK number of spheres in the k direction. * @param sphereRadius radius of spheres in the packing. * @param orientation specifies the axis alignment of layers. */ inline HexagBlockIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation = DEFAULT_ORIENT ); }; } } #include "Geometry/HexagBlockIterator.hpp" #endif ./Geometry/DistConnections.hpp0000664000175000017500000001700012176660653016247 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/StringUtil.h" #include namespace esys { namespace lsm { template DistConnections::DistConnections( double maxDist, Tag defaultTag, const BoundingBox &bBox, const BoolVector &circDimensions ) : m_connectionPoolPtr(new ConnectionPool(4096)), m_connectionSet(), m_nTablePtr(), m_minRadius(std::numeric_limits::max()), m_maxRadius(-std::numeric_limits::max()), m_maxDist(maxDist), m_minPt(bBox.getMinPt()), m_maxPt(bBox.getMaxPt()), m_defaultTag(defaultTag) { const double gridSize = ( max( bBox.getSizes()[0], max( bBox.getSizes()[1], bBox.getSizes()[2] ) ) )/5.0; m_nTablePtr = NTablePtr( new NTable( bBox, gridSize, circDimensions, 2*gridSize ) ); } template DistConnections::~DistConnections() { } template int DistConnections::getNumParticles() const { return m_nTablePtr->size(); } template int DistConnections::getNumConnections() const { return m_connectionSet.size(); } template double DistConnections::getMinRadius() const { return m_minRadius; } template double DistConnections::getMaxRadius() const { return m_maxRadius; } template typename DistConnections::ParticleConstIterator DistConnections::getParticleIterator() const { return m_nTablePtr->getIterator(); } template void DistConnections::createConnection( const Particle &p1, const Particle &p2, Tag tag ) { m_connectionSet.insert( m_connectionPoolPtr->construct(p1.getId(), p2.getId(), tag) ); } template class CmpParticleId { public: bool operator()(const TmplParticle &p1, const TmplParticle &p2) const { return (p1.getId() < p2.getId()); } bool operator()(const TmplParticle *p1, const TmplParticle *p2) const { return (p1->getId() < p2->getId()); } }; template template void DistConnections::create( TmplParticleIterator it, Tag tag ) { typedef std::set > ParticleSet; ParticleSet pSet; while (it.hasNext()) { Particle &p = it.next(); insert(p); pSet.insert(&p); } m_nTablePtr->resize(getParticleBBox(), 4.1*getMinRadius(), 2.1*getMaxRadius()); for ( typename ParticleSet::const_iterator pIt = pSet.begin(); pIt != pSet.end(); pIt++ ) { typename NTable::ParticleVector nVector = m_nTablePtr->getNeighbourVector( (*pIt)->getPos(), (*pIt)->getRad() + m_maxDist ); for ( typename NTable::ParticleVector::const_iterator nIt = nVector.begin(); nIt != nVector.end(); nIt++ ) { Particle *p1 = (*pIt); Particle *p2 = (*nIt); if ( ( (pSet.find(p1) != pSet.end()) && (pSet.find(p2) != pSet.end()) && (p1->getId() < p2->getId()) ) || ( ((pSet.find(p1)==pSet.end()) && (pSet.find(p2)!= pSet.end())) || ((pSet.find(p1)!=pSet.end()) && (pSet.find(p2)== pSet.end())) ) ) { p1 = ((*pIt)->getId() < (*nIt)->getId()) ? (*pIt) : (*nIt); p2 = ((*pIt)->getId() < (*nIt)->getId()) ? (*nIt) : (*pIt); const double radiusSum = m_maxDist + p1->getRad() + p2->getRad(); const double radiusSumSqrd = radiusSum*radiusSum; if ( (p1->getPos() - p2->getPos()).norm2() <= (radiusSumSqrd) ) { #if 0 console.Debug() << "creating connection: \n" << StringUtil::toString(*p1) << "->" << StringUtil::toString(*p2) << "\n"; #endif createConnection(*p1, *p2, tag); } } } } } template template void DistConnections::create( TmplParticleIterator it ) { create(it, getDefaultTag()); } template void DistConnections::insert(Particle &p) { if (p.getRad() < m_minRadius) { m_minRadius = p.getRad(); } if (p.getRad() > m_maxRadius) { m_maxRadius = p.getRad(); } m_nTablePtr->insert(p); for (int i = 0; i < 3; i++) { if (!(m_nTablePtr->getPeriodicDimensions()[i])) { if (p.getPos()[i]-p.getRad() < m_minPt[i]) { m_minPt[i] = p.getPos()[i]-p.getRad(); } if (p.getPos()[i]+p.getRad() > m_maxPt[i]) { m_maxPt[i] = p.getPos()[i]+p.getRad(); } } } } template typename DistConnections::Tag DistConnections::getDefaultTag() const { return m_defaultTag; } template void DistConnections::setDefaultTag(Tag defaultTag) { m_defaultTag = defaultTag; } template BoundingBox DistConnections::getParticleBBox() const { return BoundingBox(m_minPt, m_maxPt); } } } ./Geometry/SimpleBlock.cpp0000664000175000017500000000131712176660653015344 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleBlock.h" ./Geometry/Triangle.h0000664000175000017500000000544112176660653014354 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIANGLE_H #define __TRIANGLE_H //-- Project includes -- #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" //-- STL includes -- #include using std::pair; using std::make_pair; //-- IO includes -- #include using std::ostream; //! exception class for Triangle class TriangleError { public: TriangleError(){}; }; /*! \class Triangle \brief Class representing a Triangle \author Steffen Abe $Revision$ $$Date$ */ class Triangle { public: // types typedef Vec3 (Triangle::* VectorFieldFunction)() const; typedef double (Triangle::* ScalarFieldFunction)() const; private: Matrix3 m_invtrans; Matrix3 m_trans; Vec3 m_p0,m_p1,m_p2; Vec3 m_normal; Vec3 m_force; int m_id0,m_id1,m_id2; int m_tri_id,m_tag; double EdgeSep(const Vec3&, const Vec3& ,const Vec3& ) const; public: Triangle(int,int,int,const Vec3&,const Vec3&,const Vec3&,int,int); double sep(const Vec3&) const; pair dist(const Vec3&) const ; // signed separation according to direction of the normal Vec3 getBoundingBoxMin() const; Vec3 getBoundingBoxMax() const; Vec3 getNormal() const {return m_normal;}; Vec3 toGlobal(const Vec3&); Vec3 toLocal(const Vec3&); bool containsEdge(const Vec3&,const Vec3&) const; void moveNode(int,const Vec3&); void move(const Vec3&); inline int getID() const {return m_tri_id;}; inline int getTag() const {return m_tag;}; inline void applyForce(const Vec3& f){m_force+=f;}; inline void zeroForce(){m_force=Vec3(0.0,0.0,0.0);}; // get id/pos pairs for each node -> mainly for checkpointing pair getP0()const{return make_pair(m_id0,m_p0);}; pair getP1()const{return make_pair(m_id1,m_p0+m_p1);}; pair getP2()const{return make_pair(m_id2,m_p0+m_p2);}; // access functions static VectorFieldFunction getVectorFieldFunction(const string&); static ScalarFieldFunction getScalarFieldFunction(const string&); Vec3 getForce()const {return m_force;}; double getPressure() const; //! output for debugging purposes friend ostream& operator<<(ostream&,const Triangle&); }; #endif //__TRIANGLE_H ./Geometry/BoxPacker.h0000664000175000017500000000433512176660653014466 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBOXPACKER_H #define ESYS_LSMBOXPACKER_H #include #include #include #include namespace esys { namespace lsm { typedef std::vector BoolVector; /** * */ template class BoxPacker : public TmplPackerBase { public: typedef TmplPackerBase Inherited; typedef typename Inherited::Particle Particle; typedef typename Inherited::NTable NTable; typedef typename Inherited::NTablePtr NTablePtr; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; BoxPacker( ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance ); virtual ~BoxPacker(); virtual void generate() = 0; bool particleFitsInBBox(const Particle &particle) const; bool is2d() const; bool particleFitsInBBoxWithNeighbours(const Particle &particle) const; bool particleFitsWithNeighbours(const Particle &particle) const; double getTolerance() const; const BoundingBox &getBBox() const; const BoolVector &getPeriodicDimensions() const; private: BoundingBox m_bBox; BoolVector m_periodicDimensions; double m_tolerance; }; } } #include "Geometry/BoxPacker.hpp" #endif ./Geometry/PackerGenerators.hpp0000664000175000017500000001414012176660653016402 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/Rng.h" namespace esys { namespace lsm { template ConstRadiusGen::ConstRadiusGen(double radius) : m_radius(radius) { } template const double &ConstRadiusGen::getParticleRadius() const { return m_radius; } template const double &ConstRadiusGen::getMinFitRadius() const { return this->getParticleRadius(); } template const double &ConstRadiusGen::getMaxFitRadius() const { return this->getParticleRadius(); } template typename ConstRadiusGen::Particle ConstRadiusGen::getParticle(const Vec3 &posn) const { return Particle(posn, getParticleRadius()); } template typename ConstRadiusGen::Particle ConstRadiusGen::getParticle( const Vec3 &posn, const double &maxRadius ) const { return getParticle(posn); } template bool ConstRadiusGen::isValidFitRadius( const double &fitRadius ) const { return (fitRadius == getParticleRadius()); } //======================================================================== //======================================================================== //======================================================================== template RangeRadiusGen::RangeRadiusGen( double minFitRadius, double maxFitRadius ) : m_minFitRadius(minFitRadius), m_maxFitRadius(maxFitRadius) { } template RangeRadiusGen::~RangeRadiusGen() { } template const double &RangeRadiusGen::getMinFitRadius() const { return m_minFitRadius; } template const double &RangeRadiusGen::getMaxFitRadius() const { return m_maxFitRadius; } template bool RangeRadiusGen::isValidFitRadius( const double &fitRadius ) const { return ( (fitRadius >= this->getMinFitRadius()) && (fitRadius <= this->getMaxFitRadius()) ); } //======================================================================== //======================================================================== //======================================================================== template RndRadiusGen::RndRadiusGen( double minFitRadius, double maxFitRadius ) : Inherited(minFitRadius, maxFitRadius) { } template double RndRadiusGen::getRandomRadius() const { return this->getMinFitRadius() + (this->getMaxFitRadius()-this->getMinFitRadius()) * rng::s_zeroOneUniform(); } template typename RndRadiusGen::Particle RndRadiusGen::getParticle(const Vec3 &posn) const { return Particle(posn, getRandomRadius()); } template typename RndRadiusGen::Particle RndRadiusGen::getParticle( const Vec3 &posn, double suggestedRadius ) const { return getParticle(posn); } //======================================================================== //======================================================================== //======================================================================== template GrainRndRadiusGen::GrainRndRadiusGen( double minGrainRadius, double maxGrainRadius ) : Inherited(minGrainRadius, maxGrainRadius) { } template GrainRndRadiusGen::~GrainRndRadiusGen() { } template const double &GrainRndRadiusGen::getMinGrainRadius() const { return this->getMinFitRadius(); } template const double &GrainRndRadiusGen::getMaxGrainRadius() const { return this->getMaxFitRadius(); } //======================================================================== //======================================================================== //======================================================================== template SingleParticleGrainGen::SingleParticleGrainGen( double minGrainRadius, double maxGrainRadius ) : Inherited(minGrainRadius, maxGrainRadius) { } template const double &SingleParticleGrainGen::getMinParticleRadius() const { return this->getMinGrainRadius(); } template const double &SingleParticleGrainGen::getMaxParticleRadius() const { return this->getMaxGrainRadius(); } template typename SingleParticleGrainGen::Grain SingleParticleGrainGen::getGrain(const Particle &p) { Grain g; g.createParticle(p); return g; } } } ./Geometry/BasicInteraction.cpp0000664000175000017500000000224512176660653016362 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/BasicInteraction.h" using std::ostream; using std::endl; BasicInteraction::BasicInteraction(Id p1, Id p2, Tag tag) : m_p1(p1), m_p2(p2), m_tag(tag) { } ostream& operator<<(ostream& ost,const BasicInteraction& BI) { ost << BI.m_p1 << " " << BI.m_p2 << " " << BI.m_tag; return ost; } bool BILess::operator()(const BasicInteraction& B1,const BasicInteraction& B2) { bool res; res=((B1.m_p1 namespace esys { namespace lsm { //======== GranularGougeBlock3D ============== /*! Constructor for GranularGougeBlock3D. Do nothing and call the base class constructor (GougeBlock3D) \param prms the GougeBlock3D parameters */ GranularGougeBlock3D::GranularGougeBlock3D(const GougeBlockPrms &prms) :GougeBlock3D(prms) { } /*! Destructor. No dynamically allocated data in class -> do nothing */ GranularGougeBlock3D::~GranularGougeBlock3D() { } /*! Create the seed points for the grain generation algorithm. Algorithm currently assumes single gouge layer. \param sdx seed density, i.e. average distance between seeds in x-direction \param sdy seed density in y-direction \param sdz seed density in z-direction \param rdx random variation of seed points in x-direction \param rdy random variation of seed points in y-direction \param rdz random variation of seed points in z-direction */ void GranularGougeBlock3D::generateSeeds(double sdx,double sdy,double sdz,double rdx,double rdy,double rdz) { // get bouding box PackingInfoVector packingInfoVector = m_prms.getGougePackingInfoVector(); BoundingBox bbx=(packingInfoVector.begin())->getBBox(); Vec3 bbx_min_pt=bbx.getMinPt(); Vec3 bbx_dims=bbx.getMaxPt()-bbx_min_pt; // calculate no. of seeds per direction int n_seed_x=int(floor(bbx_dims.X()/sdx)); int n_seed_y=int(floor(bbx_dims.Y()/sdy)); int n_seed_z=int(floor(bbx_dims.Z()/sdz)); // generate them for(int i=0;i::iterator iter=m_grain_seeds.begin(); iter!=m_grain_seeds.end(); iter++){ std::cout << *iter << std::endl; } // make grains GeneratorPtrVector::iterator it = m_gougeGenPtrVector.begin(); BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); int n_seeds=m_grain_seeds.size(); while (particleIt.hasNext()) { SimpleParticle* current_particle=particleIt.next(); double nearest_seed_dist=(current_particle->getPos()-m_grain_seeds[0]).norm(); int nearest_seed_id=0; for(int i=1;igetPos()-m_grain_seeds[i]).norm(); if(distsetTag(nearest_seed_id+min_tag); } } /*! Create interaction set. Changed from base class by using a different validator which allows links between particles with the same tag, i.e. belonging to the same composite grain. Refactor ? */ void GranularGougeBlock3D::createInteractionSet() { NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); GranularInteractionValidator validator = GranularInteractionValidator(*this, m_prms.getConnectionTolerance()); while (particleIt.hasNext()) { const NTable::Particle *pParticle = particleIt.next(); const NTable::ParticleVector neighbours = m_nTablePtr->getNeighbourVector( pParticle->getPos(), pParticle->getRad() + m_prms.getConnectionTolerance() ); for ( NTable::ParticleVector::const_iterator it = neighbours.begin(); it != neighbours.end(); it++ ){ if (validator.isValid(*pParticle, *(*it))) { // cout << "inserting " << pParticle->getID() << "-" << (*it)->getID() << endl;; m_interactionSet.insert(BasicInteraction(pParticle->getID(), (*it)->getID())); } } } } /*! */ void GranularGougeBlock3D::generate() { for ( GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { (*it)->generate(); } } //========= GranularInteractionValidator ============ /*! */ GranularInteractionValidator::GranularInteractionValidator(const GranularGougeBlock3D& gougeBlock, double tolerance) : m_pGougeBlock(&gougeBlock), m_tolerance(tolerance) {} /*! */ bool GranularInteractionValidator::isValid(const SimpleParticle &p1, const SimpleParticle &p2) const { return ( (p1.getID() < p2.getID()) // order correct -> avoid doubles && ((p1.getPos() - p2.getPos()).norm() < (m_tolerance + (p1.getRad() + p2.getRad()))) // distance correct && ((((!m_pGougeBlock->isGougeParticle(p1)) && (!m_pGougeBlock->isGougeParticle(p2))) && ((!m_pGougeBlock->areInDifferentFaultBlocks(p1, p2)))) // both outside an on the same side of the gouge || (((m_pGougeBlock->isGougeParticle(p1)) && (m_pGougeBlock->isGougeParticle(p2))) && (p1.getTag()==p2.getTag()))) // both inside and same tag, i.e. same grain ); } } } ./Geometry/SimpleParticle.cpp0000664000175000017500000000145312176660653016056 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleParticle.h" const SimpleParticle SimpleParticle::INVALID = SimpleParticle(Vec3::ZERO, 0.0, -1, -1); ./Geometry/SphereFitter.h0000664000175000017500000005604012176660653015214 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSPHEREFITTER_H #define ESYS_LSMSPHEREFITTER_H #include "Geometry/Sphere3d.h" #include "Geometry/Sphere2d.h" #include "Foundation/BoundingSphere.h" #include #include namespace esys { namespace lsm { template class SphereFitter { public: typedef TmplFitTraits FitTraits; typedef typename FitTraits::Validator Validator; typedef typename FitTraits::Particle Particle; typedef typename Validator::ParticleVector ParticleVector; typedef typename FitTraits::Plane3D Plane3D; SphereFitter(const std::string &name, Validator &validator) : m_pValidator(&validator), m_successfulFitCount(0), m_getFitCount(0), m_failedFitCount(0), m_name(name) { } virtual ~SphereFitter() { } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) = 0; static Particle getInvalidParticle() { return Particle::INVALID; } void incrGetFit() { m_getFitCount++; } void incrFailedFit() { m_failedFitCount++; } void incrSuccessfulFit() { m_successfulFitCount++; } const std::string &getName() const { return m_name; } void write(std::ostream &oStream) const { oStream << (getName() + ": ") << "fit count = " << m_getFitCount << ", success = " << m_successfulFitCount << ", fail = " << m_failedFitCount; } std::string toString() const { std::stringstream sStream; write(sStream); return sStream.str(); } bool particleIsValid(const Particle &particle) const { return getValidator().particleIsValid(particle); } protected: Validator &getValidator() { return *m_pValidator; } const Validator &getValidator() const { return *m_pValidator; } private: Validator *m_pValidator; int m_successfulFitCount; int m_getFitCount; int m_failedFitCount; std::string m_name; }; template inline std::ostream &operator<<( std::ostream &oStream, const SphereFitter &fitter ) { fitter.write(oStream); return oStream; } template class MoveToSurfaceFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; MoveToSurfaceFitter(Validator &validator) : Inherited("Mv to Surface", validator) { } Particle moveToSurface( const Particle &stationary, const Particle &movable ) { Particle moved = movable; const Vec3 centreDiff = movable.getPos() - stationary.getPos(); const double centreDist = centreDiff.norm(); if (centreDist > 0.0) { const Vec3 newCentrePos = stationary.getPos() + (centreDiff/(centreDist))*(stationary.getRad() + movable.getRad()); moved.moveTo(newCentrePos); } return moved; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = particle; if (neighbours.size() > 0) { if ( (particle.getPos() - neighbours[0]->getPos()).norm() < (particle.getRad() + neighbours[0]->getRad()) ) { newParticle = moveToSurface(*(neighbours[0]), particle); } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } }; template class ThreeDSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; ThreeDSphereFitter(Validator &validator) : Inherited(" 3D Fitter", validator) { } Particle findAFit( const Particle& Po, const ParticleVector &particleVector ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; int id=Po.getID(); if (particleVector.size() > 3) { const bool foundFit = Sphere3D::FillIn( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), particleVector[3]->getPos(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), particleVector[3]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector argument has fewer than 4 elements."); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if(neighbours.size() > 3){ // at least 4 neighbors const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if (ndist > 0.0) { newParticle = particle; if (ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos()+((particle.getPos()-Pi.getPos())*(Pi.getRad()/ndist)) ); } const double dist_p = plane.sep(newParticle.getPos()); const double dist_3 = (newParticle.getPos()-neighbours[3]->getPos()).norm()-neighbours[3]->getRad(); if (dist_p > dist_3) { // 4th particle closer than plane -> fit 4 particles newParticle = findAFit(newParticle, neighbours); } else { newParticle = this->getInvalidParticle(); } } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } }; template class TwoDSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; TwoDSphereFitter(Validator &validator) : Inherited(" 2D Fitter", validator) { } Particle findAFit( const Particle& Po, const ParticleVector &particleVector ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; int id=Po.getID(); if (particleVector.size() > 2) { const bool foundFit = Sphere2D::FillIn( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector argument has fewer than 3 elements."); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if(neighbours.size() > 2){ // at least 3 neighbors const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if (ndist > 0.0) { newParticle = particle; if (ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos()+((particle.getPos()-Pi.getPos())*(Pi.getRad()/ndist)) ); } const double dist_p = plane.sep(newParticle.getPos()); const double dist_2 = (newParticle.getPos()-neighbours[2]->getPos()).norm()-neighbours[2]->getRad(); if (dist_p > dist_2) { // 3rd particle closer than plane -> fit 3 particles newParticle = findAFit(newParticle, neighbours); } else { newParticle = this->getInvalidParticle(); } } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } }; template class TwoDSphereSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; TwoDSphereSphereFitter( Validator &validator, const BoundingSphere &sphere ) : Inherited(" 2D Sph Fitter", validator), m_sphere(sphere) { } Particle findAFit( const Particle& Po, const ParticleVector &particleVector ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; int id=Po.getID(); if (particleVector.size() >= 2) { const bool foundFit = Sphere2D::FillIn( m_sphere.getCentre(), particleVector[0]->getPos(), particleVector[1]->getPos(), -m_sphere.getRadius(), particleVector[0]->getRad(), particleVector[1]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error( "TwoDSphereSphereFitter::findAFit: particleVector " "argument has fewer than 2 elements." ); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if (neighbours.size() >= 2) { // 2 neighbours: try 2 particles + bounding-sphere const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 2) || ( fabs((m_sphere.getCentre()-particle.getPos()).norm()-m_sphere.getRadius()) < (particle.getPos()-neighbours[2]->getPos()).norm()-neighbours[2]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours); } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } private: BoundingSphere m_sphere; }; template class ThreeDSphereSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; ThreeDSphereSphereFitter( Validator &validator, const BoundingSphere &sphere ) : Inherited(" 3D Sph Fitter", validator), m_sphere(sphere) { } Particle findAFit( const Particle& Po, const ParticleVector &particleVector ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; int id=Po.getID(); if (particleVector.size() > 2) { const bool foundFit = Sphere3D::FillIn( m_sphere.getCentre(), particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), -m_sphere.getRadius(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error( "ThreeDSphereSphereFitter::findAFit: particleVector argument" " has fewer than 3 elements." ); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if (neighbours.size() >= 3) { // 3 neighbours: try 3 particles + bounding-sphere const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 3) || ( fabs((m_sphere.getCentre()-particle.getPos()).norm()-m_sphere.getRadius()) < (particle.getPos()-neighbours[3]->getPos()).norm()-neighbours[3]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours); } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } private: BoundingSphere m_sphere; }; template class TwoDPlaneSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; TwoDPlaneSphereFitter(Validator &validator) : Inherited(" 2D Plane", validator) { } Particle findAFit( const Particle& particle, const ParticleVector &particleVector, const Plane3D& plane ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; const int id = particle.getID(); if (particleVector.size() > 1) { const bool foundFit = Sphere2D::FillInWP( particleVector[0]->getPos(), particleVector[1]->getPos(), plane.GetO(), plane.GetW(), particleVector[0]->getRad(), particleVector[1]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector vector contains less than 2 particles."); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if (neighbours.size() >= 2) { // 2 neighbors -> try 2 particles + plane const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 2) || ( plane.sep(particle.getPos()) < (particle.getPos()-neighbours[2]->getPos()).norm()-neighbours[2]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours, plane); } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } }; template class ThreeDPlaneSphereFitter : public SphereFitter { public: typedef SphereFitter Inherited; typedef typename Inherited::Validator Validator; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef typename Inherited::Plane3D Plane3D; ThreeDPlaneSphereFitter(Validator &validator) : Inherited(" 3D Plane", validator) { } Particle findAFit( const Particle& particle, const ParticleVector &particleVector, const Plane3D& plane ) { Particle fittedParticle = this->getInvalidParticle(); Vec3 M; double r; const int id = particle.getID(); if (particleVector.size() > 2) { const bool foundFit = Sphere3D::FillInWP( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), plane.GetO(), plane.GetW(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), M, r ); if (foundFit) { fittedParticle = Particle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector vector contains less than 3 particles."); } return fittedParticle; } virtual Particle getFitParticle( const Particle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { this->incrGetFit(); Particle newParticle = this->getInvalidParticle(); if (neighbours.size() >= 3) { // 3 neighbors -> try 3 particles + plane const Particle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 3) || ( plane.sep(particle.getPos()) < (particle.getPos()-neighbours[3]->getPos()).norm()-neighbours[3]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours, plane); } } if (newParticle.isValid() && !this->particleIsValid(newParticle)) { newParticle = this->getInvalidParticle(); this->incrFailedFit(); } else if (newParticle.isValid()) { this->incrSuccessfulFit(); } return newParticle; } }; } } #include "Geometry/SphereFitter.hpp" #endif ./Geometry/ParticleComparer.hpp0000664000175000017500000000263012176660653016400 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { template ParticleComparer::ParticleComparer(const Particle &p) : m_pParticle(&p) { } template bool ParticleComparer::operator()( const Particle &p1, const Particle &p2 ) const { return ( ((p1.getPos() - m_pParticle->getPos()).norm() - p1.getRad()) < ((p2.getPos() - m_pParticle->getPos()).norm() - p2.getRad()) ); } template bool ParticleComparer::operator()( const Particle *p1, const Particle *p2 ) const { return this->operator()(*p1,*p2); } } } ./Geometry/GridIterator.cpp0000664000175000017500000000137312176660653015541 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GridIterator.h" namespace esys { namespace lsm { } } ./Geometry/SimpleNTable3D.h0000664000175000017500000000504612176660653015316 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SIMPLENTABLE3D_H #define __SIMPLENTABLE3D_H //-- project includes -- #include "Geometry/SimpleParticle.h" #include "Geometry/BasicInteraction.h" #include "Geometry/SimpleNTable.h" typedef std::set InteractionSet; typedef std::vector ParticleVector; /*! \class CSimple2DNTable \brief 2D implementation of simple, serial neighbor table \author Steffen Abe $Revision$ $Date$ */ class CSimple3DNTable : public ASimpleNTable { private: Vec3 m_xshift,m_yshift,m_zshift; int m_xsize,m_ysize,m_zsize; bool m_xcirc,m_ycirc,m_zcirc; protected: virtual int index(const Vec3&) const; virtual vector allidx(const Vec3&) const; virtual void insertParticleCircular(SimpleParticle); public: CSimple3DNTable(const Vec3&,const Vec3&,double,bool xcirc=false,bool ycirc=false,bool zcirc=false); virtual void getInteractions(set&,double); void print(); template InteractionSet getInteractions(const TmplInteractionValidator &validator) const { InteractionSet iset; for(int i=0;i= 2){ for(ParticleVector::const_iterator iter = m_data[idx].begin(); iter != m_data[idx].end()-1; iter++) { for ( ParticleVector::const_iterator iter2 = iter+1; iter2 != m_data[idx].end(); iter2++) { if (validator.isValid(*iter, *iter2)) { iset.insert(BasicInteraction(iter->getID(),iter2->getID())); } } } } } } } return iset; } }; #endif //__SIMPLENTABLE3D_H ./Geometry/GridIterator.h0000664000175000017500000001752512176660653015214 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGRIDITERATOR_H #define ESYS_LSMGRIDITERATOR_H #include "Foundation/BoundingBox.h" #include "Foundation/vec3.h" namespace esys { namespace lsm { /** * Class for iterating over the centre-points of spheres arranged * in a regular lattice within a specified bounding box. */ class GridIterator { public: inline GridIterator() : m_sphereRadius(0.0), m_minI(0), m_minJ(0), m_minK(0), m_maxI(0), m_maxJ(0), m_maxK(0), m_i(0), m_j(0), m_k(0), m_centrePtBBox() { } inline GridIterator(int numPtsX, int numPtsY, int numPtsZ, double sphereRadius) : m_sphereRadius(sphereRadius), m_minI(0), m_minJ(0), m_minK(0), m_maxI(numPtsX), m_maxJ(numPtsZ), m_maxK(numPtsY), m_i(0), m_j(0), m_k(0), m_centrePtBBox() { Vec3 minPt; Vec3 maxPt; if (numPtsZ > 1) { minPt = Vec3(0,0,0) + sphereRadius; maxPt = Vec3( (numPtsX-1)*2.0*sphereRadius + ( (numPtsZ > 1) ? sphereRadius : 0.0 ) + ( (numPtsY > 1) ? sphereRadius : 0.0 ), (numPtsY-1)*(sphereRadius*2.0*sqrt(2.0/3.0)), (numPtsZ-1)*(sphereRadius*sqrt(3.0)) + ((numPtsY > 1) ? sphereRadius*sqrt(3.0)/3.0 : 0.0) ); } else { minPt = Vec3(sphereRadius, sphereRadius, 0); maxPt = Vec3( (numPtsX-1)*2.0*sphereRadius + ( (numPtsY > 1) ? sphereRadius : 0.0 ), (numPtsY-1)*(sphereRadius*sqrt(3.0)), 0 ); m_minJ = m_maxJ; } m_centrePtBBox = BoundingBox(minPt, (minPt + maxPt)); } /*! setup GridIterator from bounding box and sphere radius */ inline GridIterator(const BoundingBox &particleBBox, double sphereRadius, bool hard_limit=false) : m_sphereRadius(sphereRadius), m_minI(0), m_minJ(0), m_minK(0), m_maxI(0), m_maxJ(0), m_maxK(0), m_i(0), m_j(0), m_k(0), m_centrePtBBox() { int numPtsX ,numPtsY ,numPtsZ; if(!hard_limit){ // find "best fit" numPtsX = max(1, int(nearbyint((particleBBox.getSizes().X()-(sphereRadius/4.0))/(sphereRadius*2.0)))); numPtsY = max(1, int(nearbyint(particleBBox.getSizes().Y()/(sphereRadius*2.0*sqrt(2.0/3.0))))); numPtsZ = max(1, int(nearbyint(particleBBox.getSizes().Z()/(sphereRadius*sqrt(3.0))))); } else { // bounding box is hard limit numPtsX = max(1, int(floor((particleBBox.getSizes().X()-(sphereRadius/4.0))/(sphereRadius*2.0)))); numPtsY = max(1, int(floor(particleBBox.getSizes().Y()/(sphereRadius*2.0*sqrt(2.0/3.0))))); numPtsZ = max(1, int(floor(particleBBox.getSizes().Z()/(sphereRadius*sqrt(3.0))))); } if ((numPtsZ > 1) && (numPtsY > 1)) { numPtsX--; } if (particleBBox.getSizes().Z() > 0.0) { const Vec3 minPt = particleBBox.getMinPt() + sphereRadius; const Vec3 maxPt = Vec3( (numPtsX-1)*2.0*sphereRadius + ((numPtsZ > 1) ? sphereRadius : 0.0) + ((numPtsY > 1) ? sphereRadius : 0.0), (numPtsY-1)*(sphereRadius*2.0*sqrt(2.0/3.0)), (numPtsZ-1)*(sphereRadius*sqrt(3.0)) + ((numPtsY > 1) ? sphereRadius*sqrt(3.0)/3.0 : 0.0) ); m_centrePtBBox = BoundingBox(minPt, (minPt + maxPt)); } else { numPtsX = int(nearbyint((particleBBox.getSizes().X()-(sphereRadius/4.0))/(sphereRadius*2.0))); numPtsY = int(nearbyint(particleBBox.getSizes().Y()/(sphereRadius*sqrt(3.0)))); numPtsZ = 0; Vec3 minPt = particleBBox.getMinPt() + sphereRadius; minPt.Z() = particleBBox.getMinPt().Z(); const Vec3 maxPt = Vec3( (numPtsX-1)*2.0*sphereRadius + ((numPtsY > 1) ? sphereRadius : 0.0), (numPtsY-1)*(sphereRadius*sqrt(3.0)), particleBBox.getMaxPt().Z() ); m_centrePtBBox = BoundingBox(minPt, (minPt + maxPt)); } m_minI = 0; m_minJ = 0; m_minK = 0; m_maxI = numPtsX; m_maxK = numPtsY; m_maxJ = numPtsZ; m_i = m_minI; m_j = m_minJ; m_k = m_minK; } inline ~GridIterator() { } inline const BoundingBox &getBoundingBox() const { return m_centrePtBBox; } inline BoundingBox getSphereBBox() const { return ( is2d() ? BoundingBox( m_centrePtBBox.getMinPt() - Vec3(m_sphereRadius, m_sphereRadius, 0.0), m_centrePtBBox.getMaxPt() + Vec3(m_sphereRadius, m_sphereRadius, 0.0) ) : BoundingBox( m_centrePtBBox.getMinPt() - m_sphereRadius, m_centrePtBBox.getMaxPt() + m_sphereRadius ) ); } /** * Returns whether there are any points remaining * in the iteration. */ inline bool hasNext() const { return (m_i < m_maxI); } inline bool is2d() const { return (m_minJ == m_maxJ); } inline Vec3 getPoint() const { if (is2d()) { return Vec3( m_centrePtBBox.getMinPt().X() + (double(m_i)+0.5*double(m_k%2))*m_sphereRadius*2.0, m_centrePtBBox.getMinPt().Y() + double(m_k)*sqrt(3.0)*m_sphereRadius, 0.0 ); } else { return Vec3( m_centrePtBBox.getMinPt().X() + (double(m_i)+0.5*double(m_j%2)+0.5*double(m_k%2))*m_sphereRadius*2.0, m_centrePtBBox.getMinPt().Y() + (double(m_k)*2.0*sqrt(2.0/3.0))*m_sphereRadius, m_centrePtBBox.getMinPt().Z() + ((double(m_j)+double(m_k%2)/3.0)*sqrt(3.0))*m_sphereRadius ); } } inline void increment() { if (m_k+1 < m_maxK) { m_k++; } else if (m_j+1 < m_maxJ) { m_k = m_minK; m_j++; } else { m_k = m_minK; m_j = m_minJ; m_i++; } } /** * Returns the next regular-grid-point in the iteration. */ inline Vec3 next() { const Vec3 pt = getPoint(); increment(); return pt; } private: double m_sphereRadius; int m_minI; int m_minJ; int m_minK; int m_maxI; int m_maxJ; int m_maxK; int m_i; //! index in x-direction int m_j; //! index in y-direction int m_k; //! index in z-direction BoundingBox m_centrePtBBox; }; } } #endif ./Geometry/Triangle.cpp0000664000175000017500000001653112176660653014711 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Triangle.h" // --- System includes #include using std::fabs; using std::endl; using std::make_pair; /*! Construct triangle from the corner coordinates. It is assumed that the corners are given anticlockwise and the normal is calculated accordingly. \param id0 id of the first corner \param id1 id of the 2nd corner \param id2 id of the 3rd corner \param v0 first corner \param v1 second corner \param v2 third corner \param tri_id triangle id \param tag triangle tag */ Triangle::Triangle(int id0,int id1,int id2,const Vec3& v0,const Vec3& v1,const Vec3& v2,int tri_id,int tag) { m_id0=id0; m_id1=id1; m_id2=id2; m_p0=v0; m_p1=v1-m_p0; m_p2=v2-m_p0; m_tri_id=tri_id; m_tag=tag; m_force=Vec3(0.0,0.0,0.0); try{ m_normal=cross(m_p2,m_p1).unit_s(); m_trans=Matrix3(m_p1,m_p2,m_normal); m_invtrans=m_trans.inv(); } catch(VecErr V){ // if unit_s thows exception -> v1||v2 throw TriangleError(); } } /*! calculate distance between an edge and a point \param p0 point 1 of the edge \param p1 point 2 of the edge \param p the point */ double Triangle::EdgeSep(const Vec3& p0,const Vec3& p1,const Vec3& p) const { double sep; Vec3 v=p1-p0; Vec3 vu=v.unit(); double d=((p-p0)*vu); if((d>0.0)&(d=0.0) && (p_local.Y()>=0.0) &&(p_local.X()+p_local.Y()<=1.0)){ sep=fabs((p-m_p0)*m_normal); } else { // need to check distance to edges/corners double d1=EdgeSep(m_p0,m_p0+m_p1,p); double d2=EdgeSep(m_p0,m_p0+m_p2,p); double d3=EdgeSep(m_p0+m_p1,m_p0+m_p2,p); // find the minimum separation != -1 (messy) if(d1>0.0){ if(d2>0.0){ sep=(d10.0){ sep=(d30){ sep=(d10){ if (d3>0){ sep=(d2 get corner dist d1=(p-m_p0).norm(); d2=(p-(m_p0+m_p1)).norm(); d3=(p-(m_p0+m_p2)).norm(); sep=(d1 Triangle::dist(const Vec3& p) const { bool is_in=false; double dist=0.0; // transform point to triangle local coord system Vec3 p_local=(p-m_p0)*m_invtrans; //cout << "p_local : " << p_local << endl; // check if closest point is in triangle if((p_local.X()>=0.0) && (p_local.Y()>=0.0) &&(p_local.X()+p_local.Y()<=1.0)){ dist=(p-m_p0)*m_normal; is_in=true; } else { is_in=false; } return make_pair(is_in,dist); } /*! Get min. corner of axis-aligned bounding box of the triangle. */ Vec3 Triangle::getBoundingBoxMin() const { Vec3 v_min=cmin(m_p0,m_p0+m_p1); v_min=cmin(v_min,m_p0+m_p2); return v_min; } /*! Get max. corner of axis-aligned bounding box of the triangle. */ Vec3 Triangle::getBoundingBoxMax() const { Vec3 v_max=cmax(m_p0,m_p0+m_p1); v_max=cmax(v_max,m_p0+m_p2); return v_max; } /*! check if an edge given by 2 points is in the triangle \param p1 \param p2 */ bool Triangle::containsEdge(const Vec3& p1,const Vec3& p2) const { bool p1_in=((p1==m_p0)||(p1==m_p0+m_p1) || (p1==m_p0+m_p2)); bool p2_in=((p2==m_p0)||(p2==m_p0+m_p1) || (p2==m_p0+m_p2)); return ((p1!=p2) && p1_in && p2_in); } /*! Move one of the corners. The identifier for the corner is the global node id. If the node with the id is not in the triangle, do nothing. \param id the global id of the node to be moved \param d the amount of movement */ void Triangle::moveNode(int id,const Vec3& d) { // move node if(id==m_id0) { // move m_p0 m_p0+=d; m_p1-=d; m_p2-=d; } else if (id==m_id1){ // move p1 m_p1+=d; } else if (id==m_id2){ // move p2 m_p2+=d; } else { std::cerr << "trying to move node not in triangle!" << std::endl; } // recalculate normal and invtrans try{ m_normal=cross(m_p2,m_p1).unit_s(); m_trans=Matrix3(m_p1,m_p2,m_normal); m_invtrans=m_trans.inv(); } catch(VecErr V){ // if unit_s thows exception -> v1||v2 throw TriangleError(); } } /*! Move (translate) whole triangle. \param d the amount of movement */ void Triangle::move(const Vec3& d) { m_p0+=d; } /*! Transform a point in local coordinates into global coordiantes. The local coordinate systems is formed by (P1-P0,P2-P0,N). \param p the point to be transformed */ Vec3 Triangle::toGlobal(const Vec3& p) { return m_p0+m_trans*p; } /*! Transform a point in global coordinates into local coordiantes. The local coordinate systems is formed by (P1-P0,P2-P0,N). \param p the point to be transformed */ Vec3 Triangle::toLocal(const Vec3& p) { return (p-m_p0)*m_invtrans; } /*! Get pressure on the triangle from interaction forces */ double Triangle::getPressure() const { // calculate normal force double F_n=m_force*m_normal; // calculate area double A=0.5*(m_p1*m_p2); // retrun force per area return F_n/A; } /*! Get the triangle member function which returns a vector field of a given name. Returns NULL if a field with that name doesn't exist. \param name the name of the field */ Triangle::VectorFieldFunction Triangle::getVectorFieldFunction(const string& name) { Triangle::VectorFieldFunction f; if(name=="force"){ f=&Triangle::getForce; } else { f=NULL; cerr << "ERROR - invalid name for triangle vector access function" << endl; } return f; } /*! Get the triangle member function which returns a scalar field of a given name. Returns NULL if a field with that name doesn't exist. \param name the name of the field */ Triangle::ScalarFieldFunction Triangle::getScalarFieldFunction(const string& name) { Triangle::ScalarFieldFunction f; if(name=="pressure"){ f=&Triangle::getPressure; } else { f=NULL; cerr << "ERROR - invalid name for triangle scalar access function" << endl; } return f; } /*! output Triangle to ostream */ ostream& operator<<(ostream& ost,const Triangle& T) { ost << "Triangle: (" << T.m_p0 << ") - (" << T.m_p0+T.m_p1 << ") - (" << T.m_p0+T.m_p2 << ") Normal: (" << T.m_normal << ")"; return ost; } ./Geometry/Packer.hpp0000664000175000017500000001146312176660653014355 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { template Packer::Packer(NTablePtr nTablePtr) : m_nTablePtr(nTablePtr), m_particlePoolPtr(new ParticlePool), m_particleCollectionPtr( new ParticleCollection(m_particlePoolPtr) ), m_idSet() { } template Packer::Packer( ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr ) : m_nTablePtr(nTablePtr), m_particlePoolPtr(particlePoolPtr), m_particleCollectionPtr( new ParticleCollection(m_particlePoolPtr) ), m_idSet() { } template Packer::~Packer() { } template void Packer::setNTablePtr(NTablePtr nTablePtr) { m_nTablePtr = nTablePtr; } template typename Packer::NTable &Packer::getNTable() { return *(m_nTablePtr); } template const typename Packer::NTable & Packer::getNTable() const { return *m_nTablePtr; } template typename Packer::ParticlePool & Packer::getParticlePool() { return *m_particlePoolPtr; } template typename Packer::ParticlePoolPtr Packer::getParticlePoolPtr() { return m_particlePoolPtr; } template const typename Packer::ParticlePool & Packer::getParticlePool() const { return *m_particlePoolPtr; } template typename Packer::ParticleCollection & Packer::getParticleCollection() { return *m_particleCollectionPtr; } template const typename Packer::ParticleCollection & Packer::getParticleCollection() const { return *m_particleCollectionPtr; } template typename Packer::Particle & Packer::constructParticle(const Particle &particle) { return getParticleCollection().createParticle(particle); } template typename Packer::ParticleIterator Packer::getParticleIterator() { return getParticleCollection().getParticleIterator(); } template typename Packer::ParticleConstIterator Packer::getParticleIterator() const { return getParticleCollection().getParticleIterator(); } template int Packer::getNumParticles() const { return getParticleCollection().getNumParticles(); } template int Packer::getNextParticleId() { return static_cast(getNTable().getNumParticles()); } template typename Packer::Particle & Packer::createAndInsertParticle( const Particle &particle ) { Particle *pParticle = &(constructParticle(particle)); pParticle->setId(getNextParticleId()); m_idSet.insert(pParticle->getId()); getNTable().insert(pParticle); return *pParticle; } template bool Packer::contains(const Particle &particle) const { return (m_idSet.find(particle.getID()) != m_idSet.end()); } } } ./Geometry/Sphere.h0000664000175000017500000000302412176660653014030 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SPHERE2D_H #define __SPHERE2D_H //-- project includes -- #include "vec3.h" /*! \class Sphere2D \brief Just methods to calculate the position and dimension of a 2D sphere under given constraints (see the .cpp file). \author David Place, Steffen Abe $Revision$ $Date$ */ class Sphere { public: // 2D fill-in static bool FillIn(Vec3 P1, Vec3 P2, Vec3 P3, double r1, double r2, double r3, Vec3 &M, double &r) ; static bool FillInWP(Vec3 P1, Vec3 P2, Vec3 O, Vec3 iD, double r1, double r2, Vec3 &M, double &r) ; static bool FillInWP(Vec3 iP1, Vec3 iO, Vec3 iD, double r1, double r, Vec3 &M, int wsol=1) ; //static bool FillInWFS(Vec3 P1, Vec3 P2, AGeneralSurface &FS, double r1, double r2, Vec3 &M, double &r) ; //static bool FillInWFS(Vec3 P1, AGeneralSurface &FS, double r1, double r, Vec3 &M, int wsol=1) ; } ; #endif // __SPHERE2D_H ./Geometry/SplitBlock3D.h0000664000175000017500000000245412176660653015045 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SPLITBLOCK3D_H #define __SPLITBLOCK3D_H //-- project includes -- #include "Geometry/RandomBlock3D.h" /*! \class CSplitBlock3D \brief Class for the generation of a split 3D random lattice in a rectangular area. \author Steffen Abe $Revision$ $Data:$ */ class CSplitBlock3D : public CRandomBlock3D { protected: double m_ysplit; int m_dir; public: CSplitBlock3D(double,double,double,double,double,double,double,double,double,int,bool circ_x=false,bool rough=false); virtual ~CSplitBlock3D(); virtual void generate(int,unsigned int); virtual void tagSplit(int,int,double); }; #endif // __SPLITBLOCK3D_H ./Geometry/CubicBlockIterator.hpp0000664000175000017500000000641412176660653016662 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBLOCKITERATOR_HPP #define ESYS_LSMCUBICBLOCKITERATOR_HPP namespace esys { namespace lsm { CubicBlockIterator::CubicBlockIterator() : ClosePackIterator() { } CubicBlockIterator::CubicBlockIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation ) : ClosePackIterator(numI, numJ, numK, sphereRadius, orientation) { setDimRepeat(Vec3L(6,3,3)); OffsetMatrix offsetMatrix; offsetMatrix(0,0,0) = 0.0; offsetMatrix(0,0,1) = 0.0; offsetMatrix(0,0,2) = getRadius(); offsetMatrix(0,0,3) = 0.0; offsetMatrix(0,0,4) = 0.0; offsetMatrix(0,0,5) = getRadius(); offsetMatrix(0,1,0) = getRadius(); offsetMatrix(0,1,1) = getRadius(); offsetMatrix(0,1,2) = 0.0; offsetMatrix(0,1,3) = getRadius(); offsetMatrix(0,1,4) = getRadius(); offsetMatrix(0,1,5) = 0.0; offsetMatrix(0,2,0) = 0.0; offsetMatrix(0,2,1) = 0.0; offsetMatrix(0,2,2) = getRadius(); offsetMatrix(0,2,3) = 0.0; offsetMatrix(0,2,4) = 0.0; offsetMatrix(0,2,5) = getRadius(); offsetMatrix(0,3,0) = getRadius(); offsetMatrix(0,3,1) = getRadius(); offsetMatrix(0,3,2) = 0.0; offsetMatrix(0,3,3) = getRadius(); offsetMatrix(0,3,4) = getRadius(); offsetMatrix(0,3,5) = 0.0; offsetMatrix(0,4,0) = 0.0; offsetMatrix(0,4,1) = 0.0; offsetMatrix(0,4,2) = getRadius(); offsetMatrix(0,4,3) = 0.0; offsetMatrix(0,4,4) = 0.0; offsetMatrix(0,4,5) = getRadius(); offsetMatrix(0,5,0) = getRadius(); offsetMatrix(0,5,1) = getRadius(); offsetMatrix(0,5,2) = 0.0; offsetMatrix(0,5,3) = getRadius(); offsetMatrix(0,5,4) = getRadius(); offsetMatrix(0,5,5) = 0.0; offsetMatrix(1,0,0) = 0.0; offsetMatrix(1,0,1) = 0.0; offsetMatrix(1,0,2) = 0.0; offsetMatrix(1,1,0) = 2.0*SQRT_1_OVER_3*getRadius(); offsetMatrix(1,1,1) = 2.0*SQRT_1_OVER_3*getRadius(); offsetMatrix(1,1,2) = 2.0*SQRT_1_OVER_3*getRadius(); offsetMatrix(1,2,0) = SQRT_1_OVER_3*getRadius(); offsetMatrix(1,2,1) = SQRT_1_OVER_3*getRadius(); offsetMatrix(1,2,2) = SQRT_1_OVER_3*getRadius(); offsetMatrix(2,0,0) = 0.0; offsetMatrix(2,0,1) = 0.0; offsetMatrix(2,0,2) = 0.0; offsetMatrix(2,1,0) = 0.0; offsetMatrix(2,1,1) = 0.0; offsetMatrix(2,1,2) = 0.0; offsetMatrix(2,2,0) = 0.0; offsetMatrix(2,2,1) = 0.0; offsetMatrix(2,2,2) = 0.0; setOffsetMatrix(offsetMatrix); } } } #endif ./Geometry/Plane3D.h0000664000175000017500000000362312176660653014035 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PLANE3D_H #define __PLANE3D_H //-- Project includes -- #include "Foundation/vec3.h" /*! \class Plane3D \brief Class representing a Plane3D \author Steffen Abe $Revision$ $Date$ */ class Plane3D { protected: Vec3 U,V ; bool force3D ; Vec3 Dir ; Vec3 Pos ; void Create() ; public: Plane3D(); Plane3D(const Vec3& iDir,const Vec3& iPos); Plane3D(const Vec3& iU,const Vec3& iV,const Vec3& iPos); virtual ~Plane3D() {} virtual double sep(const Vec3&) const; virtual double dist(const Vec3&) ; // signed separation according to Direction of the normal virtual Vec3 ToClosest(const Vec3& M) {return dist(M)*Dir; } ; // return the vector PM where P is the closest point to M on the surface. inline Vec3 GetU() const { return U; } ; // return U (for planes in a 2D space (ie. line) U is in the space) inline Vec3 GetV() const { return V; } ; // V is null if this is a 2D space. inline const Vec3 &GetW() const { return Dir; } ; // The normal inline Vec3 getNormal() const { return Dir; } ; inline const Vec3 &GetO() const { return Pos; } ; inline Vec3 getPos() const { return Pos; } ; } ; namespace esys { namespace lsm { typedef ::Plane3D Plane3D; } } #endif // __PLANE3D_H ./Geometry/LayeredBlock.h0000664000175000017500000000244112176660653015144 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LAYEREDBLOCK_H #define __LAYEREDBLOCK_H //-- project includes -- #include "Geometry/RandomBlock.h" //-- STL includes -- #include using std::set; /*! \class CLayeredBlock2D \brief Class for the generation of a layered 2D random lattice in a rectangular area. \author Steffen Abe $Revision$ $Data:$ */ class CLayeredBlock2D : public CRandomBlock2D { private: set LayerBoundaries; public: CLayeredBlock2D(double,double,double,double,double,double); virtual ~CLayeredBlock2D(); void addLayerBoundary(double); virtual void generate(int,unsigned int); }; #endif //__LAYEREDBLOCK_H ./Geometry/RandomBoxPacker.cpp0000664000175000017500000000132212176660653016153 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/RandomBoxPacker.h" ./Geometry/RandomAssembly3D.h0000664000175000017500000000406112176660653015713 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RANDOMASSEMBLY3D_H #define __RANDOMASSEMBLY3D_H //-- project includes -- #include "Geometry/ARandomAssembly.h" #include "Geometry/SimpleParticle.h" #include "Geometry/BasicInteraction.h" #include "Geometry/Plane3D.h" //-- STL includes -- #include #include using std::set; using std::vector; /*! \class ARandomAssembly3D \brief Abstract base class for random assemblies, to be used for initialization of random lattices. \author Steffen Abe $Revision$ $Date$ */ class ARandomAssembly3D : public ARandomAssembly { protected: vector Borders; double m_rmin,m_rmax; //!< min/max particle radius double m_xmin,m_xmax,m_ymin,m_ymax,m_zmin,m_zmax; //!< x,y,z borders of the lattice bool m_circ_x; virtual Vec3 getAPoint()=0; bool findAFit(SimpleParticle&, const vector&); bool findAFit(SimpleParticle&, const vector&, const Plane3D&); virtual bool checkAFit(const SimpleParticle&); virtual Plane3D getClosestPlane(const SimpleParticle&); void fillSpace(int); virtual int getNParts() const=0; public: virtual void generate(int,unsigned int)=0; virtual void insertParticle(const SimpleParticle)=0; virtual void tagParticleClosestTo(const Vec3&,int)=0; virtual void tagEdgeY(int,int,double)=0; virtual void tagEdgeZ(int,int,double)=0; }; #endif // __RANDOMASSEMBLY3D_H ./Geometry/Vec3L.h0000664000175000017500000000637312176660653013530 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMVEC3L_H #define ESYS_LSMVEC3L_H #include namespace esys { namespace lsm { /** @author Shane J Latham */ class Vec3L { public: typedef long Long; Vec3L() { m_data[0] = 0; m_data[1] = 0; m_data[2] = 0; } Vec3L(Long x, Long y, Long z) { m_data[0] = x; m_data[1] = y; m_data[2] = z; } Vec3L(const Vec3L &vec) { m_data[0] = vec.m_data[0]; m_data[1] = vec.m_data[1]; m_data[2] = vec.m_data[2]; } ~Vec3L() { } Vec3L &operator=(const Vec3L &vec) { m_data[0] = vec.m_data[0]; m_data[1] = vec.m_data[1]; m_data[2] = vec.m_data[2]; return *this; } bool operator==(const Vec3L &vec) const { return ( (m_data[0] == vec.m_data[0]) && (m_data[1] == vec.m_data[1]) && (m_data[2] == vec.m_data[2]) ); } Long &operator[](int idx) { return m_data[idx]; } const Long &operator[](int idx) const { return m_data[idx]; } Vec3L operator-(Long val) const { return Vec3L(m_data[0]-val, m_data[1]-val, m_data[2]-val); } Vec3L operator+(Long val) const { return Vec3L(m_data[0]+val, m_data[1]+val, m_data[2]+val); } const Long &X() const { return m_data[0]; } Long &X() { return m_data[0]; } const Long &Y() const { return m_data[1]; } Long &Y() { return m_data[1]; } const Long &Z() const { return m_data[2]; } Long &Z() { return m_data[2]; } Vec3L min(const Vec3L &vec) const { return Vec3L ( std::min(m_data[0], vec.m_data[0]), std::min(m_data[1], vec.m_data[1]), std::min(m_data[2], vec.m_data[2]) ); } Vec3L max(const Vec3L &vec) const { return Vec3L ( std::max(m_data[0], vec.m_data[0]), std::max(m_data[1], vec.m_data[1]), std::max(m_data[2], vec.m_data[2]) ); } private: Long m_data[3]; }; inline std::ostream &operator<<(std::ostream &oStream, const Vec3L &vec) { oStream << vec.X() << " " << vec.Y() << " " << vec.Z(); return oStream; } } } #endif ./Geometry/SimpleNTable.h0000664000175000017500000000455612176660653015134 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SIMPLENTABLE_H #define __SIMPLENTABLE_H //-- project includes -- #include "Geometry/SimpleParticle.h" #include "Geometry/BasicInteraction.h" //-- STL-includes -- #include #include using std::vector; using std::set; /*! \class ASimpleNTable \brief Abstract base class providing the interface for a simple, serial neighbor table. Used in random initialization. \author Steffen Abe $Revision$ $Date$ */ class ASimpleNTable { protected: vector *m_data; Vec3 m_p0; double m_dim; int m_numInsertedParticles; virtual int index(const Vec3&) const=0; virtual vector allidx(const Vec3&) const=0; virtual void insertParticleCircular(SimpleParticle)=0; public: ASimpleNTable(); virtual ~ASimpleNTable(); int getNumInsertedParticles() const; const vector* getNeighbors(const Vec3&) const; int getClosestParticleID(const Vec3&) const; virtual void getInteractions(set&,double)=0; void insertParticle(SimpleParticle); }; /*! \class CSimple2DNTable \brief 2D implementation of simple, serial neighbor table \author Steffen Abe $Revision$ $Date$ */ class CSimple2DNTable : public ASimpleNTable { private: Vec3 m_xshift,m_yshift; int m_xsize,m_ysize; bool m_xcirc,m_ycirc; protected: virtual int index(const Vec3&) const; virtual vector allidx(const Vec3&) const; virtual void insertParticleCircular(SimpleParticle); public: CSimple2DNTable(const Vec3&,const Vec3&,double,bool xcirc=false,bool ycirc=false); virtual void getInteractions(set&,double); void print(); }; #endif //__SIMPLENTABLE_H ./Geometry/RectPatch.h0000664000175000017500000000225312176660653014462 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RECT_PATCH_H #define __RECT_PATCH_H // --- project includes --- #include "Foundation/vec3.h" #include "Geometry/Plane3D.h" /*! */ class RectPatch { private: double m_xmin,m_xmax,m_zmin,m_zmax,m_y0,m_dy; public: RectPatch(double,double,double,double,double,double); double sep(const Vec3&); double dist(const Vec3&); bool intersect(const Vec3&,const Vec3&); Plane3D getPlane(const Vec3&); Vec3 getBasePoint() const {return Vec3(m_xmin,m_y0,m_zmin);}; }; #endif // __RECT_PATCH_H ./Geometry/FaultedBlock2d.cpp0000664000175000017500000001660312176660653015731 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/FaultedBlock2d.h" #include // --- IO includes --- #include "fstream" using std::ofstream; /*! Constructor. Set up "empty" block, i.e. without any fault segments -> add those via addSegment \param xmin minimum in x-direction \param xmax maximum in x-direction \param ymin minimum in y-direction \param ymax maximum in y-direction \param rmin minimum particle radius \param rmax maximum particle radius \param pad thickness of the padding region at each diving edge \param circ_x circular boudary condition in x-direction */ FaultedBlock2D::FaultedBlock2D(double xmin,double xmax,double ymin,double ymax,double rmin,double rmax,double pad,bool circ_x) : CRandomBlock2D(xmin,xmax,ymin,ymax,rmin,rmax,circ_x) { m_pad_size=pad; } FaultedBlock2D::~FaultedBlock2D() {} /*! Get a random point with in the "random" region, i.e. outside the padding zone */ Vec3 FaultedBlock2D::getAPoint() { double px,py; px=m_random(m_xmin+m_rmin,m_xmax-m_rmin); py=m_random(m_ymin+m_pad_size+m_rmin,m_ymax-m_pad_size-m_rmin); return Vec3(px,py,0.0); } /*! Add a fault segment to the block \param P1 1st end point \param P2 2nd end point \param r roughness parameter (0.0...1.0) */ void FaultedBlock2D::addSegment(const Vec3& P1,const Vec3& P2,double r) { //std::cout << "addSegment " << P1 << " - " << P2 << " r= " << r << std::endl; // calculate normal for shift Vec3 U=(P2-P1).unit(); Vec3 N; N.X()=U.Y(); N.Y()=-U.X(); N.Z()=0.0; Vec3 P1a=P1+0.5*r*N; Vec3 P2a=P2+0.5*r*N; Vec3 P1b=P1-0.5*r*N; Vec3 P2b=P2-0.5*r*N; m_fault.push_back(make_pair(r,LineSegment(P1a,P2a))); m_fault.push_back(make_pair(r,LineSegment(P2b,P1b))); m_f2.push_back(LineSegment(P1,P2)); } /*! check if Po is within the Space and is not crossing any boundary or overlapping with other particles. \param Po the particle */ bool FaultedBlock2D::checkAFit(const SimpleParticle& Po) { bool fit=ARandomAssembly2D::checkAFit(Po); if(fit){ // check intersection with fault segments for(vector >::iterator iter=m_fault.begin(); iter!=m_fault.end(); iter++){ double d=iter->second.sep(Po.getPos()); fit=(Po.getRad()first+10e-4); //std::cout << "check pos : " << Po.getPos() << " rad " << Po.getRad() << " vs. line segment " << iter->second.getP1() << " - " << iter->second.getP1() << " res: " << fit << std::endl; } } return fit; } /*! generate the particle packing \param tries number of attempts to insert particle before giving up \param seed random seed */ void FaultedBlock2D::generate(int tries,unsigned int seed) { int imin,imax,jmin,jmax; srand(seed); imin=int(floor(m_xmin/(m_rmax*2.0))); imax=int(ceil(m_xmax/(m_rmax*2.0))); // "lower" padding area // y-limits jmin=int(floor(m_ymin/(m_rmax*sqrt(3.0)))); jmax=int(floor((m_ymin+m_pad_size)/(m_rmax*sqrt(3.0))))+1; // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ double px=(double(i)+0.5*double(j%2))*m_rmax*2.0; double py=double(j)*sqrt(3.0)*m_rmax; SimpleParticle Po=SimpleParticle(Vec3(px,py,0),m_rmax,getNParts()); bool fit=checkAFit(Po); if(fit){ insertParticle(Po); } } } // "upper" padding area jmin=int(ceil((m_ymax-m_pad_size)/(m_rmax*sqrt(3.0))))-1; jmax=int(ceil(m_ymax/(m_rmax*sqrt(3.0)))); // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ double px=(double(i)+0.5*double(j%2))*m_rmax*2.0; double py=double(j)*sqrt(3.0)*m_rmax; SimpleParticle Po=SimpleParticle(Vec3(px,py,0),m_rmax,getNParts()); bool fit=checkAFit(Po); if(fit){ insertParticle(Po); } } } // "random" area // get limits jmin=int(floor((m_ymin+m_pad_size)/(m_rmax*sqrt(3.0))))+2; jmax=int(ceil((m_ymax-m_pad_size)/(m_rmax*sqrt(3.0))))-2; // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ // calc random radius double r=m_random(m_rmin,m_rmax); // get position double px=(double(i)+0.5*double(j%2))*m_rmax*2.0; double py=double(j)*sqrt(3.0)*m_rmax; SimpleParticle Po=SimpleParticle(Vec3(px,py,0),r,getNParts()); bool fit=checkAFit(Po); if(fit){ insertParticle(Po); } } } // fill space fillSpace(tries); // get set of interactions m_snt->getInteractions(m_iset,1.05); // remove interactions crossing any fault segment for(vector::iterator iter=m_f2.begin(); iter!=m_f2.end(); iter++){ for(set::iterator iter_in=m_iset.begin(); iter_in!=m_iset.end(); iter_in++){ Vec3 P1=m_bpart[iter_in->first()].getPos(); Vec3 P2=m_bpart[iter_in->second()].getPos(); if(iter->intersect(P1,P2)){ // on different sides set::iterator h=iter_in; iter_in++; m_iset.erase(h); iter_in--; } } } } /*! Get closest line/line segment to a particle. Overloaded from ARandomAssembly2D to include line segments with overlap of 0.0 \param Po the particle */ Line *FaultedBlock2D::getClosestPlane(const SimpleParticle& Po) { //cout << "getClosestPlane : " << Po.getPos() << endl; Line* PL=ARandomAssembly2D::getClosestPlane(Po); // get closest boundary line Vec3 PoPos=Po.getPos(); double dist=PL->sep(PoPos); //std::cout<< "posn: " << PoPos << std::endl; //cout << "plane: " << PL.GetO() << PL.GetN() << dist << endl; for(vector >::iterator iter=m_fault.begin();iter!=m_fault.end();iter++){ double ndist=iter->second.sep(PoPos); //cout << "plane: " << (iter->second).GetO() << " - " << (iter->second).GetN() << " dist: " << ndist << endl; double dirdist=iter->second.GetN()*(PoPos-iter->second.GetO()); if((ndist0)){ PL=&(iter->second); dist=ndist; } } //cout << " --- closest plane: " << PL->GetO() << " - " << PL->GetN() << " dist: " << dist << endl; return PL; } /*! Tag particles along the split line \param tag1 the tag for particles "above" the split (y>y_split) \param tag2 the tag for particles "below" the split (y::iterator P_iter=m_bpart.begin(); P_iter!=m_bpart.end(); P_iter++){ double di=m_f2[is].sep(P_iter->getPos()); if(digetRad()+d+rs){ double dir_sep=(P_iter->getPos()-m_f2[is].GetO())*m_f2[is].GetN(); if(dir_sep>0.0){ P_iter->setTag(tag1); } else { P_iter->setTag(tag2); } } } } } ./Geometry/Grain.cpp0000664000175000017500000000131012176660653014171 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Grain.h" ./Geometry/SimpleParticle.hpp0000664000175000017500000000571512176660653016070 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// SimpleParticle::SimpleParticle(const Vec3& pos,double rad,int id, int tag) : SimpleParticleData(pos, rad, id, tag) { } SimpleParticle::SimpleParticle(const SimpleParticle& p) : SimpleParticleData(p) { } SimpleParticle &SimpleParticle::operator=(const SimpleParticle& p) { SimpleParticleData::operator=(p); return *this; } const Vec3 &SimpleParticle::getPos() const { return getPosition(); } void SimpleParticle::setPos(const Vec3 &pos) { setPosition(pos); } void SimpleParticle::moveTo(const Vec3 &v) { setPosition(v); } void SimpleParticle::translateBy(const Vec3 &v) { setPosition(getPosition()+v); } void SimpleParticle::moveBy(const Vec3 &v) { translateBy(v); } void SimpleParticle::rotate(const Vec3 &rotation, const Vec3 &posn) { // From http://mathworld.wolfram.com/RotationFormula.html const double phi = rotation.norm(); if (phi > 0.0) { const Vec3 r = getPosition() - posn; const Vec3 n = rotation/phi; const double cosPhi = cos(phi); const Vec3 rotatedR = r*cosPhi + n*((dot(n, r))*(1-cosPhi)) + cross(r, n)*sin(phi); setPosition(rotatedR + posn); } } double SimpleParticle::getRad() const { return getRadius(); } void SimpleParticle::setRad(double r) { setRadius(r); } bool SimpleParticle::isValid() const { return (getID() >= 0); } template void SimpleParticle::visit(const TmplVisitor &visitor) const { visitor.visitSimpleParticle(*this); } template void SimpleParticle::visit(TmplVisitor &visitor) { visitor.visitSimpleParticle(*this); } ostream& operator<<(ostream& ost,const SimpleParticle& p) { ost << "Particle- id " << p.getId() << " pos: " << p.getPosition() << " rad: " << p.getRadius() << " tag : " << p.getTag() << std::endl; return ost; } ParticleComparer::ParticleComparer(const SimpleParticle &particle) : m_pParticle(&particle) { } /*! \param p1 \param p2 */ bool ParticleComparer::operator()(const SimpleParticle &p1, const SimpleParticle &p2) const { return (((p1.getPos() - m_pParticle->getPos()).norm() - p1.getRad())< ((p2.getPos() - m_pParticle->getPos()).norm() - p2.getRad())); } /*! \param p1 \param p2 */ bool ParticleComparer::operator()(const SimpleParticle *p1, const SimpleParticle *p2) const { return (*this)(*p1, *p2); } ./Geometry/RandomBlock3D.cpp0000664000175000017500000001645112176660653015527 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/RandomBlock3D.h" //-- IO includes -- #include using std::ofstream; //-- System includes -- #include using std::srand; //-- project includes -- #include "SimpleNTable3D.h" /*! Constructor of CRandomBlock \param xmin minimum in x-direction \param xmax maximum in x-direction \param ymin minimum in y-direction \param ymax maximum in y-direction \param zmin minimum in z-direction \param zmax maximum in z-direction \param rmin minimum particle radius \param rmax maximum particle radius \param mcd maximum relative distance for bond generation */ CRandomBlock3D::CRandomBlock3D(double xmin,double xmax,double ymin,double ymax,double zmin,double zmax,double rmin,double rmax,double mcd,bool circ_x,bool is_bonded) { m_xmin=xmin; m_xmax=xmax; m_ymin=ymin; m_ymax=ymax; m_zmin=zmin; m_zmax=zmax; m_rmin=rmin; m_rmax=rmax; m_circ_x=circ_x; m_is_bonded=is_bonded; m_maxConnDist=mcd; // setup borders if(!circ_x) { Borders.push_back(Plane3D(Vec3(1.0,0.0,0.0),Vec3(m_xmin,0.0,0.0))); // left Borders.push_back(Plane3D(Vec3(-1.0,0.0,0.0),Vec3(m_xmax,0.0,0.0))); // right } Borders.push_back(Plane3D(Vec3(0.0,1.0,0.0),Vec3(0.0,m_ymin,0.0))); // bottom Borders.push_back(Plane3D(Vec3(0.0,-1.0,0.0),Vec3(0.0,m_ymax,0.0))); // top Borders.push_back(Plane3D(Vec3(0.0,0.0,1.0),Vec3(0.0,0.0,m_zmin))); // front Borders.push_back(Plane3D(Vec3(0.0,0.0,-1.0),Vec3(0.0,0.0,m_zmax))); // back // neighbor table m_snt=new CSimple3DNTable(Vec3(m_xmin,m_ymin,m_zmin),Vec3(m_xmax-m_xmin,m_ymax-m_ymin,m_zmax-m_zmin),2.1*rmax,circ_x); } CRandomBlock3D::~CRandomBlock3D() { if(m_snt!=NULL) delete m_snt; } /*! Generate a random point within the space of the block */ Vec3 CRandomBlock3D::getAPoint() { double px,py,pz; px=m_random(m_xmin+m_rmin,m_xmax-m_rmin); py=m_random(m_ymin+m_rmin,m_ymax-m_rmin); pz=m_random(m_zmin+m_rmin,m_zmax-m_rmin); return Vec3(px,py,pz); } /*! Fill the space in the block \param tries number of times the insertion of a particle is tried \param seed seed for the random number generator */ void CRandomBlock3D::generate(int tries,unsigned int seed) { srand(seed); // get limits int imin=int(floor(m_xmin/(m_rmax*2.0))); int jmin=int(floor(m_ymin/(m_rmax*sqrt(3.0)))); int kmin=int(floor(m_zmin/(m_rmax*2.0*sqrt(2.0/3.0)))); int imax=int(ceil(m_xmax/(m_rmax*2.0))); int jmax=int(ceil(m_ymax/(m_rmax*sqrt(3.0)))); int kmax=int(ceil(m_zmax/(m_rmax*2.0*sqrt(2.0/3.0)))); // do the seeding for(int i=imin;i<=imax;i++){ for(int j=jmin;j<=jmax;j++){ for(int k=kmin;kgetInteractions(m_iset,m_maxConnDist); } } /*! Insert a particle into the internal structures \param P the particle */ void CRandomBlock3D::insertParticle(const SimpleParticle P) { m_bpart.push_back(P); m_snt->insertParticle(P); } /*! Tag particle closest to a given position \param pos the position \param tag the tag */ //void CRandomBlock3D::tagParticleClosestTo(const Vec3& pos,int tag) //{} /*! Tag particles along xz-edges \param tag1 tag for particles along y_min \param tag2 tag for particles along y_max \param d maximum distance from the edge at which a particle gets tagged */ void CRandomBlock3D::tagEdgeY(int tag1,int tag2,double d) { for(vector::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double py=iter->getPos().Y(); double r=iter->getRad(); if(py-m_yminsetTag(tag1); if(m_ymax-pysetTag(tag2); } } /*! Tag particles along xy-edges \param tag1 tag for particles along z_min \param tag2 tag for particles along z_max \param d maximum distance from the edge at which a particle gets tagged */ void CRandomBlock3D::tagEdgeZ(int tag1,int tag2,double d) { for(vector::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double py=iter->getPos().Z(); double r=iter->getRad(); if(py-m_zminsetTag(tag1); if(m_zmax-pysetTag(tag2); } } /*! Write the particles contained in the random block into a LSM geometry file v 1.2 \param filename the name of the file */ void CRandomBlock3D::writeToGeoFile(const string& filename) { ofstream outfile; // open file outfile.open(filename.c_str()); outfile.precision(10); outfile << "LSMGeometry 1.2" << endl; // bounding box outfile << "BoundingBox " << m_xmin << " " << m_ymin << " " << m_zmin << " " << m_xmax << " " << m_ymax << " " << m_zmax << endl; outfile << "PeriodicBoundaries " << m_circ_x << " 0 0" << endl; outfile << "Dimension 3D" << endl; // particles outfile << "BeginParticles" << endl; outfile << "Simple" << endl; outfile << m_bpart.size() << endl; int count=0; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ outfile << iter->getPos().X() << " " << iter->getPos().Y() << " " << iter->getPos().Z() << " " << iter->getRad() << " " << iter->getID() << " " << iter->getTag() << endl; count++; } outfile << "EndParticles" << endl; // connections outfile << "BeginConnect" << endl; outfile << m_iset.size() << endl; for(set::const_iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ outfile << *iter << endl; } outfile << "EndConnect" << endl; // close file outfile.close(); } /*! calculate the porosity of the material */ double CRandomBlock3D::calcPorosity() { double v_total,v_part; v_total=(m_xmax-m_xmin)*(m_ymax-m_ymin)*(m_zmax-m_zmin); v_part=0.0; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ double radius=iter->getRad(); v_part+=(4.0/3.0)*M_PI*radius*radius*radius; } console.Info() << "total volume : " << v_total << "\n"; console.Info() << "filled volume: " << v_part << "\n"; return 1.0-v_part/v_total; } /*! return a histogram of the particle size distribution \param nbins number of bins */ vector > CRandomBlock3D::getSizeDistribution(int nbins) { vector >res(nbins); return res; } ./Geometry/Edge.h0000664000175000017500000000321012176660653013443 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EDGE_H #define __EDGE_H //-- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Triangle.h" #include "Geometry/AEdge.h" //-- STL includes -- #include using std::pair; using std::make_pair; /*! \class Edge \brief Class representing the edge of a polygon \author Steffen Abe $Revision$ $Date$ */ class Edge : public AEdge { private: Triangle *m_t1,*m_t2; int m_id1,m_id2; public: Edge(int,int,const Vec3&,const Vec3&); Edge(int,int,const Vec3&,const Vec3&,Triangle*); Edge(int,int,const Vec3&,const Vec3&,Triangle*,Triangle*); bool isValidContact(const Vec3&) const; Vec3 getBoundingBoxMin() const; Vec3 getBoundingBoxMax() const; Vec3 getDirectionFromPoint(const Vec3&) const; void moveNode(int,const Vec3&); void move(const Vec3&); void applyForce(const Vec3 &f); pair getIDs() const {return make_pair(m_id1,m_id2);}; friend ostream& operator << (ostream&,const Edge&); }; #endif // __EDGE_H ./Geometry/Sphere3d.cpp0000664000175000017500000001511312176660653014614 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Sphere3d.h" double Sphere3D::NearZero=1e-8; /*! find the sphere that touches 4 spheres \param P1 position of 1st Sphere \param P2 position of 2nd Sphere \param P3 position of 3rd Sphere \param P4 position of 4th Sphere \param r1 radius of 1st Sphere \param r2 radius of 2st Sphere \param r3 radius of 3st Sphere \param r4 radius of 4st Sphere \param M return position of found sphere \param r return radius of found sphere */ bool Sphere3D::FillIn(const Vec3& P1,const Vec3& P2,const Vec3& P3,const Vec3& P4, double r1, double r2, double r3, double r4, Vec3& M, double& r) { Vec3 A,B,C,D,E,a,b,c,alpha,beta ; double a12,a13,a14,b12,b13,b14 ; a.X() = (P2.Y()-P1.Y())*(P4.Y()-P1.Y()) ; a.Y() = (P2.Z()-P1.Z())*(P4.Z()-P1.Z()) ; a.Z() = (P2.X()-P1.X())*(P4.X()-P1.X()) ; b.X() = (P3.Y()-P1.Y())*(P4.Y()-P1.Y()) ; b.Y() = (P3.Z()-P1.Z())*(P4.Z()-P1.Z()) ; b.Z() = (P3.X()-P1.X())*(P4.X()-P1.X()) ; c.X() = (P3.Y()-P1.Y())*(P2.Y()-P1.Y()) ; c.Y() = (P3.Z()-P1.Z())*(P2.Z()-P1.Z()) ; c.Z() = (P3.X()-P1.X())*(P2.X()-P1.X()) ; A.X() = (P3.X()-P1.X())*a.X()-(P2.X()-P1.X())*b.X() ; A.Y() = (P3.Y()-P1.Y())*a.Y()-(P2.Y()-P1.Y())*b.Y() ; A.Z() = (P3.Z()-P1.Z())*a.Z()-(P2.Z()-P1.Z())*b.Z() ; B.X() = (P4.Z()-P1.Z())*c.X()-(P2.Z()-P1.Z())*b.X() ; B.Y() = (P4.X()-P1.X())*c.Y()-(P2.X()-P1.X())*b.Y() ; B.Z() = (P4.Y()-P1.Y())*c.Z()-(P2.Y()-P1.Y())*b.Z() ; C.X() = (P4.X()-P1.X())*c.X()-(P2.X()-P1.X())*b.X() ; C.Y() = (P4.Y()-P1.Y())*c.Y()-(P2.Y()-P1.Y())*b.Y() ; C.Z() = (P4.Z()-P1.Z())*c.Z()-(P2.Z()-P1.Z())*b.Z() ; D.X() = (P3.Z()-P1.Z())*a.X()-(P2.Z()-P1.Z())*b.X() ; D.Y() = (P3.X()-P1.X())*a.Y()-(P2.X()-P1.X())*b.Y() ; D.Z() = (P3.Y()-P1.Y())*a.Z()-(P2.Y()-P1.Y())*b.Z() ; E.X() = A.X()*B.X()-C.X()*D.X() ; E.Y() = A.Y()*B.Y()-C.Y()*D.Y() ; E.Z() = A.Z()*B.Z()-C.Z()*D.Z() ; if ((E.X()==0.0) || (E.Y()==0.0) || (E.Z()==0.0)) { return false ; } a12 = r1-r2 ; b12 = r1*r1-r2*r2-P1*P1+P2*P2 ; a13 = r1-r3 ; b13 = r1*r1-r3*r3-P1*P1+P3*P3 ; a14 = r1-r4 ; b14 = r1*r1-r4*r4-P1*P1+P4*P4 ; alpha.X() = (B.X()*a13*a.X()-B.X()*a12*b.X()-D.X()*a14*c.X()+D.X()*a12*b.X())/E.X() ; alpha.Y() = (B.Y()*a13*a.Y()-B.Y()*a12*b.Y()-D.Y()*a14*c.Y()+D.Y()*a12*b.Y())/E.Y() ; alpha.Z() = (B.Z()*a13*a.Z()-B.Z()*a12*b.Z()-D.Z()*a14*c.Z()+D.Z()*a12*b.Z())/E.Z() ; beta.X() = (B.X()*b13*a.X()-B.X()*b12*b.X()-D.X()*b14*c.X()+D.X()*b12*b.X())/(2.0*E.X()) ; beta.Y() = (B.Y()*b13*a.Y()-B.Y()*b12*b.Y()-D.Y()*b14*c.Y()+D.Y()*b12*b.Y())/(2.0*E.Y()) ; beta.Z() = (B.Z()*b13*a.Z()-B.Z()*b12*b.Z()-D.Z()*b14*c.Z()+D.Z()*b12*b.Z())/(2.0*E.Z()) ; double aa = (alpha*alpha)-1 ; double bb = 2.0*(alpha*beta)-2*(alpha*P4)-2*r4 ; double cc = (beta*beta)+(P4*P4)-2.0*(beta*P4)-r4*r4 ; double delta = bb*bb-4*aa*cc ; if (delta < 0.0) { return false ; } else if ( delta > 0.0 ) { delta = sqrt(delta) ; } if (aa!=0.0) { double rs1 = (-bb + delta)/(2*aa) ; double rs2 = (-bb - delta)/(2*aa) ; if ((rs1<=0) && (rs2<=0)) { return false ; } if (rs1<=0) { r = rs2 ; } else if (rs2 <=0) { r = rs1 ; } else { r = min(rs1,rs2) ; } } else { if (bb==0.0) return false ; r = - cc / bb ; if (r <=0.0) return false ; } M = alpha*r+beta ; return true ; } /*! find the sphere that touch 3 spheres and one wall \param P1 position of 1st Sphere \param P2 position of 2nd Sphere \param P3 position of 3rd Sphere \param O origin of the plane \param iD normal of the plane \param r1 radius of 1st Sphere \param r2 radius of 2st Sphere \param r3 radius of 3st Sphere \param M return position of found sphere \param r return radius of found sphere */ bool Sphere3D::FillInWP(const Vec3& iP1,const Vec3& iP2,const Vec3& iP3,const Vec3& O,const Vec3& iD, double r1, double r2, double r3, Vec3& M, double& r) { // cout << "Sphere3D::FillInWP(" << iP1 << ", " << iP2 << ", " << iP3 << ", " << O << ", " << iD << ", " << r1 << ", " << r2 << ", " << r3 << ")" << endl; Vec3 P3 = iP3-O ; Vec3 P2 = iP2-O ; Vec3 P1 = iP1-O ; Vec3 W ; W = iD/iD.norm() ; if ((P1*W) < 0 ) W *= -1.0 ; if (((P2*W) < 0 ) || ((P3*W) < 0 )){ // cout << "particles on different sides of wall" << endl; return false ; } Vec3 A12 = 2.0*P2-2.0*P1+(2.0*(r2-r1))*W ; Vec3 A13 = 2.0*P3-2.0*P1+(2.0*(r3-r1))*W ; double B12 = P1*P1-P2*P2+r2*r2-r1*r1 ; double B13 = P1*P1-P3*P3+r3*r3-r1*r1 ; double Cx = A12.Z()*A13.Y()-A13.Z()*A12.Y() ; double Cy = A12.Y()*A13.X()-A13.Y()*A12.X() ; double Cz = A12.Z()*A13.X()-A13.Z()*A12.X() ; double Dx = B12*A13.Y()-B13*A12.Y() ; double Dy = B12*A13.X()-B13*A12.X() ; if (Cy == 0.0) { // cout << "Cy == 0.0" << endl; return false ; } Vec3 a = Vec3(Dx/Cy,-Dy/Cy,0.0) ; Vec3 b = Vec3(Cx/Cy,-Cz/Cy,1.0) ; double aa = b*b-(b*W)*(b*W) ; double bb = 2.0*(b*(a-P3))-2.0*(b*W)*(a*W+r3) ; double cc = P3*P3-2*(P3*a)+a*a-(a*W+r3)*(a*W+r3) ; double delta = bb*bb - 4*aa*cc ; if (delta < 0.0) { // cout << "delta < 0.0" << endl; return false ; } else if (delta > 0.0) { delta = sqrt(delta) ; } double M1z,M2z,rs1,rs2 ; if (aa!=0) { M1z = (-bb + delta) / (2*aa) ; M2z = (-bb - delta) / (2*aa) ; } else { if (bb==0.0) { // cout << "bb==0.0" << endl; return false ; } M1z = -cc/bb ; M2z = M1z ; } Vec3 M1,M2 ; M1 = a+b*M1z ; M2 = a+b*M2z ; rs1 = M1*W ; rs2 = M2*W ; if ((rs1<=0) && (rs2<=0)) { // cout << "rs1,rs2 " << rs1 << " , " << rs2 << endl; return false ; } int sol=1 ; if (rs1<=0) { r = rs2 ; sol=2 ; } else if (rs2 <=0) { r = rs1 ; } else if (rs1 #include using std::map; using std::pair; /*! get closest plane to a particle \param Po the particle */ Plane3D ARandomAssembly3D::getClosestPlane(const SimpleParticle& Po) { //cout << "getClosestPlane : " << Po.getPos() << endl; Plane3D PL=*(Borders.begin()); Vec3 PoPos=Po.getPos(); double dist=(PL.sep(PoPos)); //cout << "plane: " << PL.GetO() << PL.GetN() << dist << endl; for(vector::iterator iter=Borders.begin();iter!=Borders.end();iter++){ double ndist=iter->sep(PoPos); //cout << "plane: " << iter->GetO() << iter->GetN() << ndist << endl; if(ndist& NL) { //cout << "findAFit - 4 particles\n"; bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); if(NL.size()<4){ find_a_fit=false; cout << "less than 4 neighbors" << endl; // can't happen } else { Vec3 Pos1=NL[0].getPos(); Vec3 Pos2=NL[1].getPos(); Vec3 Pos3=NL[2].getPos(); Vec3 Pos4=NL[3].getPos(); double r1=NL[0].getRad(); double r2=NL[1].getRad(); double r3=NL[2].getRad(); double r4=NL[3].getRad(); find_a_fit=Sphere3D::FillIn(Pos1,Pos2,Pos3,Pos4,r1,r2,r3,r4,M,r); Po=SimpleParticle(M,r,id); //cout << "found " << M << " , " << r << endl; } return find_a_fit ; } /*! Find a fit for a sphere using the list of neigbor list and a plane \param Po the particle to fit \param NL the list of neighbors \param L the Plane3D */ bool ARandomAssembly3D::findAFit(SimpleParticle& Po, const vector& NL, const Plane3D& L) { //cout << "findAFit - 3 particles, 1 plane \n"; bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); if(NL.size()<3){ find_a_fit=false; cout << "less than 3 neighbors" << endl; // can't happen } else { Vec3 Pos1=NL[0].getPos(); Vec3 Pos2=NL[1].getPos(); Vec3 Pos3=NL[2].getPos(); double r1=NL[0].getRad(); double r2=NL[1].getRad(); double r3=NL[2].getRad(); Vec3 WallO=L.GetO(); Vec3 WallD=L.GetW(); find_a_fit=Sphere3D::FillInWP(Pos1,Pos2,Pos3,WallO,WallD,r1,r2,r3,M,r); Po=SimpleParticle(M,r,id); //if(find_a_fit) cout << "found " << M << " , " << r << endl; } return find_a_fit; } /*! check if Po is within the Space and is not crossing any boundary or overlapping with other particles. \param Po the particle */ bool ARandomAssembly3D::checkAFit(const SimpleParticle& Po) { bool fail=false; // check vs. radius if((Po.getRad()m_rmax)) { fail=true; } // check vs. borders double px=Po.getPos().X(); double py=Po.getPos().Y(); double pz=Po.getPos().Z(); //double r=Po.getRad(); if((pxm_xmax+m_small_value) || (pym_ymax+m_small_value) || (pzm_zmax+m_small_value)){ fail=true; //cout << "Fail : outside" << endl; } // check vs. all neighbors if(!fail){ vector NL=getNeighborList(Po); // get the NL here because Po may have moved during fit vector::const_iterator iter=NL.begin(); while(!fail && iter!=NL.end()){ double dist=(Po.getPos()-iter->getPos()).norm()+m_small_value;; if(dist < (Po.getRad()+iter->getRad())){ fail=true; //cout << "Fail : particle collision" << endl; } iter++; } } // check vs. closest plane if(!fail) { Plane3D L=getClosestPlane(Po); fail=(Po.getRad()-L.sep(Po.getPos()))>m_small_value; //cout << "Fail: collision with plane" << endl; } return !fail ; } /*! Fill the space in the skeleton after it has been seeded \param tries the number of tries */ void ARandomAssembly3D::fillSpace(int tries) { int countfail=0; int countfound=0; int countwithplane=0; int trywithplane=0; //bool fail,findfit; while(countfail T4=getClosestNeighbors(Po,4); // get list of closest neighbors (max 4) Plane3D L=getClosestPlane(Po); // get closest plane/line if(T4.size()>3){ // at least 4 neighbors SimpleParticle Pi=T4[0]; double ndist=(Po.getPos()-Pi.getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi.getPos()+((Po.getPos()-Pi.getPos())*(Pi.getRad()/ndist)); Po.moveTo(npos); } Vec3 PoPos=Po.getPos(); double dist_p=L.sep(PoPos); double dist_3=(PoPos-T4[3].getPos()).norm()-T4[3].getRad(); if(dist_p>dist_3){ // 4th particle closer than plane -> fit 4 particles findfit=findAFit(Po,T4); } else { // plane closer than 4th particle -> fit 3 particles + plane findfit=findAFit(Po,T4,L); foundwithplane=findfit; trywithplane++; } } } else if(T4.size()==3) { // 3 neighbors -> try 3 particles + plane SimpleParticle Pi=T4[0]; double ndist=(Po.getPos()-Pi.getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi.getPos()+((Po.getPos()-Pi.getPos())*(Pi.getRad()/ndist)); Po.moveTo(npos); } findfit=findAFit(Po,T4,L); foundwithplane=findfit; trywithplane++; } } if(findfit){ // found something, check findfit=checkAFit(Po); foundwithplane=foundwithplane & findfit; } if(findfit){ // found & checked -> insert insertParticle(Po); if(countfail*10>tries){ cout << "found particle " << Po.getID() << " after " << countfail << " tries" << endl; } countfail=0; countfound++; if(foundwithplane) countwithplane++; } else { countfail++; } } console.Info() << "inserted " << countfound << " Particles" << "\n"; console.Info() << "found " << trywithplane << " with 3 Particles and 1 Plane, accepted " << countwithplane << "\n"; } ./Geometry/Line.h0000664000175000017500000000214612176660653013475 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LINE_H #define __LINE_H //-- Project includes -- #include "Foundation/vec3.h" /*! \class Line \brief Class representing a line \author Steffen Abe */ class Line { protected: Vec3 Pos,U,N; Line(); public: Line(const Vec3&,const Vec3&); virtual ~Line(){}; Vec3 GetU() const {return U;}; Vec3 GetO() const {return Pos;}; Vec3 GetN() const {return N;}; virtual double sep(const Vec3&); }; #endif //__LINE_H ./Geometry/ParticleGenerator.h0000664000175000017500000000305712176660653016222 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEGENERATOR_H #define ESYS_LSMPARTICLEGENERATOR_H #include "Geometry/SimpleParticle.h" #include "Geometry/CircularNeighbourTable.h" #include namespace esys { namespace lsm { /** * */ class ParticleGenerator { public: typedef CircularNeighbourTable NTable; typedef boost::object_pool ParticlePool; ParticleGenerator(NTable &nTable, ParticlePool &particlePool); virtual ~ParticleGenerator(); virtual void generate() = 0; protected: ParticleGenerator(); NTable &getNTable(); const NTable &getNTable() const; ParticlePool &getParticlePool(); const ParticlePool &getParticlePool() const; private: NTable *m_pNTable; ParticlePool *m_pParticlePool; }; } } #endif ./Geometry/GougeBlock3D.h0000664000175000017500000001717712176660653015030 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMGOUGEBLOCK3D_H #define ESYS_LSMGOUGEBLOCK3D_H #include "Foundation/BoundingBox.h" #include "Geometry/CircularNeighbourTable.h" #include "Geometry/BlockGenerator.h" #include "Geometry/Plane3D.h" #include "Geometry/BasicInteraction.h" #include #include #include namespace esys { namespace lsm { typedef std::vector PlaneVector; enum Orientation { XY, XZ, YZ }; class ParticleBlockPrms { public: ParticleBlockPrms(); ParticleBlockPrms(double size, double minRadius, double maxRadius); ~ParticleBlockPrms(); double m_size; double m_minRadius; double m_maxRadius; }; typedef std::vector BoolVector; typedef std::vector BoundingBoxVector; class PackingInfo { public: PackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, double minRadius, double maxRadius ); bool is3d() const; void initialiseFitPlaneVector(); const BoundingBox &getBBox() const; const PlaneVector &getFitPlaneVector() const; double getMinRadius() const; double getMaxRadius() const; const BoolVector &getPeriodicDimensions() const; private: BoundingBox m_bBox; BoolVector m_periodicDimensions; Orientation m_orientation; double m_minRadius; double m_maxRadius; PlaneVector m_fitPlaneVector; }; typedef std::vector PackingInfoVector; class GougeBlockPrms { public: GougeBlockPrms(); /** * */ GougeBlockPrms( const BoundingBox &bBox, double padRadius, Orientation orientation, const ParticleBlockPrms &faultRegionPrms, const ParticleBlockPrms &gougeRegionPrms, const BoolVector &peridicDimensions=BoolVector(3, false), int maxInsertionFailures=100, double tolerance = DBL_EPSILON*128, double connectionTolerance = DBL_EPSILON*128*10 ); ~GougeBlockPrms(); double getTolerance() const; double getConnectionTolerance() const; const BoundingBox &getBBox() const; int getMaxInsertionFailures() const; double getRegularBlockRadius() const; double getFaultMinRadius() const; double getFaultMaxRadius() const; double getGougeMinRadius() const; double getGougeMaxRadius() const; const BoolVector &getPeriodicDimensions() const; BoundingBoxVector getRegularBBoxVector() const; PackingInfoVector getGougePackingInfoVector() const; PackingInfoVector getFaultPackingInfoVector() const; BoundingBox cutFromCentre(double d1, double d2) const; Orientation getOrientation() const; int getOrientationIndex() const; double getOrientationSize() const; double getMaxRadius() const; double getMinRadius() const; bool is2d() const; private: BoundingBox m_bBox; double m_padRadius; Orientation m_orientation; ParticleBlockPrms m_faultPrms; ParticleBlockPrms m_gougePrms; BoolVector m_periodicDimensions; int m_maxInsertionFailures; double m_tolerance; double m_connectionTolerance; }; /*! \class GougeBlock3D \brief Block consisting of regular padding, random layer and gouge */ class GougeBlock3D { public: typedef SimpleParticle Particle; GougeBlock3D(const GougeBlockPrms &prms); virtual ~GougeBlock3D(); virtual void generate(); int getNumParticles() const; typedef CircularNeighbourTable NTable; typedef boost::shared_ptr NTablePtr; typedef boost::shared_ptr GeneratorPtr; typedef std::vector GeneratorPtrVector; typedef NTable::ParticlePool ParticlePool; typedef NTable::ParticlePoolPtr ParticlePoolPtr; const GeneratorPtrVector &getGougeGeneratorVector() const; const GeneratorPtrVector &getFaultGeneratorVector() const; bool isGougeParticle(const SimpleParticle &particle) const; bool areInDifferentFaultBlocks( const SimpleParticle &p1, const SimpleParticle &p2 ) const; virtual void write(std::ostream &oStream) const; void writeToFile(const std::string &fileName) const; void tagGougeParticles(int tag); void tagFaultParticles(int tag); void tagDrivingPlateParticles( int minDrivingTag, int maxDrivingTag, double distanceFromBBoxEdge ); typedef std::set InteractionSet; virtual void createInteractionSet(); const InteractionSet &getInteractionSet() const; template void visitParticles(TmplVisitor &visitor) { for ( GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->visit(visitor); } } } template void visitParticles(const TmplVisitor &visitor) const { for ( GeneratorPtrVector::const_iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->visit(visitor); } } } template void visitInteractions(TmplVisitor &visitor) const { const InteractionSet &interactionSet = getInteractionSet(); for ( InteractionSet::const_iterator it = interactionSet.begin(); it != interactionSet.end(); it++ ) { it->visit(visitor); } } const GougeBlockPrms &getPrms() const { return m_prms; } protected: NTablePtr m_nTablePtr; GougeBlockPrms m_prms; InteractionSet m_interactionSet; GeneratorPtrVector m_gougeGenPtrVector; GeneratorPtrVector m_genPtrVector; ParticlePoolPtr m_particlePoolPtr; void createRegularBlockGenerators(); void createFaultBlockGenerators(); virtual void createGougeBlockGenerators(); private: GeneratorPtrVector m_regularGenPtrVector; GeneratorPtrVector m_faultGenPtrVector; }; } } #endif ./Geometry/VtkXmlWriter.h0000664000175000017500000000512112176660653015224 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMVTKXMLWRITER_H #define ESYS_LSMVTKXMLWRITER_H #include #include #include #include namespace esys { namespace lsm { class ParticleDataVisitor { typedef SimpleParticle Particle; typedef BasicInteraction Connection; public: ParticleDataVisitor(); void visitSimpleParticle(const Particle &particle); void visitParticle(const Particle &particle); void visitBasicInteraction(const Connection &connection); void visitConnection(const Connection &connection); size_t getNumParticles() const; size_t getNumConnections() const; int getIndex(int particleId) const; void writeCentrePoints(std::ostream &oStream) const; void writeRadii(std::ostream &oStream) const; void writeTags(std::ostream &oStream) const; void writeIds(std::ostream &oStream) const; void writeParticleIndexConnections(std::ostream &oStream) const; void writeConnectionTags(std::ostream &oStream) const; private: class Impl; typedef boost::shared_ptr ImplPtr; ImplPtr m_implPtr; }; /** * */ class VtkXmlWriter { public: VtkXmlWriter(); virtual ~VtkXmlWriter(); void setData(const ParticleDataVisitor &particleData); size_t getNumParticles() const; size_t getNumConnections() const; virtual void writePoints(std::ostream &oStream); virtual void writePointData(std::ostream &oStream); virtual void writeCells(std::ostream &oStream); virtual void writeCellData(std::ostream &oStream); virtual void write(std::ostream &oStream); virtual void writeToFile(const std::string &fileName); private: class Impl; typedef boost::shared_ptr ImplPtr; ImplPtr m_implPtr; }; } } #endif ./Geometry/ARandomAssembly.cpp0000664000175000017500000001662512176660653016171 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ARandomAssembly.h" //-- system includes -- #include using std::rand; //-- STL includes -- #include #include using std::map; using std::pair; // --- IO includes --- #include using std::ofstream; double ARandomAssembly::m_small_value=1e-7; /*! helper function, return random value between min & max */ double ARandomAssembly::m_random(double imin,double imax) { return imin+((imax-imin)*((double)(rand())/(double)(RAND_MAX))); } /*! get the list of neighbors of a particle \param Po the Particle */ vector ARandomAssembly::getNeighborList(const SimpleParticle& Po) { const vector *NLP; NLP=m_snt->getNeighbors(Po.getPos()); return *NLP; } /*! Get the n closest neighbors of a particle (sorted) \param Po the particle \param n max nr. or neighbours returned */ vector ARandomAssembly::getClosestNeighbors(const SimpleParticle& Po, int n) { vector CL; map pmap; const vector *NLP; double max_dist = 0.0; // get neighbour list pointer NLP=m_snt->getNeighbors(Po.getPos()); for(vector::const_iterator iter=NLP->begin(); iter!=NLP->end(); iter++){ double dist=(Po.getPos()-iter->getPos()).norm()-iter->getRad(); if(pmap.size()<4){ // less than 4 in pvec -> insert pmap.insert(make_pair(dist,&(*iter))); max_dist=(pmap.rbegin())->first; } else if(dist insert pmap.erase(max_dist); pmap.insert(make_pair(dist,&(*iter))); max_dist=(pmap.rbegin())->first; } } for(map::iterator iter=pmap.begin(); iter!=pmap.end(); iter++){ CL.push_back(*(iter->second)); } return CL; } /*! Get the 3 clostest neighbors of a particle (sorted) \param Po the particle \param NL the list of neighbors \todo Current implementation is lazy (NlogN), implement cN */ vector ARandomAssembly::get3ClosestNeighbors(const SimpleParticle& Po,const vector& NL) { vector CL; vector::const_iterator iter; if(NL.size()<2){ // 0 or 1 neighbor -> no need to sort CL=NL; } else if (NL.size()==2) { // 2 neighbors double dist1=(Po.getPos()-NL[0].getPos()).norm()-NL[0].getRad(); double dist2=(Po.getPos()-NL[1].getPos()).norm()-NL[1].getRad(); if(dist1 nmap; for(iter=NL.begin();iter!=NL.end();iter++){ double dist=(Po.getPos()-iter->getPos()).norm()-iter->getRad(); nmap.insert(pair(dist,*iter)); } map::iterator m_iter=nmap.begin(); CL.push_back(m_iter->second); m_iter++; CL.push_back(m_iter->second); m_iter++; CL.push_back(m_iter->second); } return CL; } /*! get particle closest to a particle (on surface separation) \param Po the particle \param NL the list of neighbors */ SimpleParticle ARandomAssembly::getClosestParticle(const SimpleParticle& Po, const vector& NL) { SimpleParticle CP=*(NL.begin()); double dist=(Po.getPos()-CP.getPos()).norm()-CP.getRad(); for(vector::const_iterator citer=NL.begin();citer!=NL.end();citer++){ double ndist=(Po.getPos()-citer->getPos()).norm()-citer->getRad(); if(ndist\n"; vtkfile << "\n"; vtkfile << "\n"; // write particle pos vtkfile << "\n"; vtkfile << "\n"; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ vtkfile << iter->getPos() << std::endl; } vtkfile << "\n"; vtkfile << "\n"; // --- write particle data --- // radius vtkfile << "\n"; vtkfile << "\n"; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ vtkfile << iter->getRad() << std::endl; } vtkfile << "\n"; // tag vtkfile << "\n"; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ vtkfile << iter->getTag() << std::endl; } vtkfile << "\n"; // id vtkfile << "\n"; for(vector::const_iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ vtkfile << iter->getID() << std::endl; } vtkfile << "\n"; vtkfile << "\n"; // wite bonds vtkfile << "\n"; vtkfile << "\n"; for(set::const_iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ vtkfile << iter->first() << " " << iter->second() << std::endl; } vtkfile << ""; // offsets vtkfile << "\n"; for (size_t i = 1; i < m_iset.size()*2; i+=2) vtkfile << i+1 << "\n"; vtkfile << "\n"; // element type vtkfile << "\n"; const int CELL_LINE_TYPE = 3; for (size_t i = 0; i < m_iset.size(); i++) vtkfile << CELL_LINE_TYPE << "\n"; vtkfile << "\n"; vtkfile << "\n"; // bond data vtkfile << "\n"; vtkfile << "\n"; for(set::const_iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ vtkfile << iter->getTag() << std::endl; } vtkfile << "\n"; vtkfile << "\n"; // write footer vtkfile << "\n"; vtkfile << "\n"; vtkfile << "\n"; // close file vtkfile.close(); } ./Geometry/RandomAssembly2D.cpp0000664000175000017500000001441112176660653016245 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/RandomAssembly2D.h" //-- project includes -- #include "Foundation/vec3.h" #include "Geometry/SimpleParticle.h" //-- STL includes -- #include #include using std::map; using std::pair; //-- IO includes -- #include using std::cout; using std::endl; /*! get closest plane to a particle \param Po the particle */ Line *ARandomAssembly2D::getClosestPlane(const SimpleParticle& Po) { //cout << "getClosestPlane : " << Po.getPos() << endl; vector::iterator PL=Borders.begin(); Vec3 PoPos=Po.getPos(); double dist=PL->sep(PoPos); //cout << "plane: " << PL.GetO() << PL.GetN() << dist << endl; for(vector::iterator iter=Borders.begin();iter!=Borders.end();iter++){ double ndist=iter->sep(PoPos); //cout << "plane: " << iter->GetO() << iter->GetN() << ndist << endl; if(ndist& NL, const Line& L) { bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); Vec3 Pos1=NL[0].getPos(); Vec3 Pos2=NL[1].getPos(); Vec3 WallO=L.GetO(); Vec3 WallD=L.GetU(); find_a_fit=Sphere2D::FillInWP(Pos1,Pos2,WallO,WallD,NL[0].getRad(),NL[1].getRad(),M,r); Po=SimpleParticle(M,r,id); //cout << "fit with plane : " << L.GetO() << endl; return find_a_fit ; } /*! Find a fit for a sphere using the list of neigbors \param Po the particle to fit \param NL the list of neighbors \todo check for at least 3 particles */ bool ARandomAssembly2D::findAFit(SimpleParticle& Po, const vector& NL) { bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); Vec3 Pos1=NL[0].getPos(); Vec3 Pos2=NL[1].getPos(); Vec3 Pos3=NL[2].getPos(); find_a_fit=Sphere2D::FillIn(Pos1,Pos2,Pos3,NL[0].getRad(),NL[1].getRad(),NL[2].getRad(),M,r); Po=SimpleParticle(M,r,id); return find_a_fit ; } /*! check if Po is within the Space and is not crossing any boundary or overlapping with other particles. \param Po the particle */ bool ARandomAssembly2D::checkAFit(const SimpleParticle& Po) { bool fail=false; // check vs. radius if((Po.getRad()m_rmax)) { fail=true; } // check vs. borders double px=Po.getPos().X(); double py=Po.getPos().Y(); // double r=Po.getRad(); unused. if((pxm_xmax) || (pym_ymax)){ fail=true; //cout << "Fail : outside" << endl; } // check vs. all neighbors if(!fail){ vector NL=getNeighborList(Po); // get the NL here because Po may have moved during fit vector::const_iterator iter=NL.begin(); while(!fail && iter!=NL.end()){ double dist=(Po.getPos()-iter->getPos()).norm()+m_small_value;; if(dist<(Po.getRad()+iter->getRad())){ fail=true; //cout << "Fail : particle collision" << endl; } iter++; } } // check vs. closest plane if(!fail){ Line *L=getClosestPlane(Po); fail=(Po.getRad()-L->sep(Po.getPos()))>m_small_value; } return !fail ; } /*! Fill the space in the skeleton after it has been seeded \param tries the number of tries */ void ARandomAssembly2D::fillSpace(int tries) { int countfail=0; int countfound=0; //bool fail; while(countfail T3=getClosestNeighbors(Po,3); // get closest neighbors (max 3) Line* L=getClosestPlane(Po); // get closest plane/line if(T3.size()>2){ // 3 neighbors, closest SimpleParticle Pi=T3[0]; double ndist=(Po.getPos()-Pi.getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi.getPos()+((Po.getPos()-Pi.getPos())*(Pi.getRad()/ndist)); Po.moveTo(npos); } Vec3 PoPos=Po.getPos(); double dist_p=L->sep(PoPos); double dist_3=(PoPos-T3[2].getPos()).norm()-T3[2].getRad(); if(dist_p>dist_3){ // 3rd particle closer than plane -> fit 3 particles findfit=findAFit(Po,T3); } else { // plane closer than 3rd particle -> fit 2 particles + plane findfit=findAFit(Po,T3,*L); } } } else if(T3.size()==2) { // 2 neighbors -> try 2 particles + plane SimpleParticle Pi=T3[0]; double ndist=(Po.getPos()-Pi.getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi.getPos()+((Po.getPos()-Pi.getPos())*(Pi.getRad()/ndist)); Po.moveTo(npos); } findfit=findAFit(Po,T3,*L); } } if(findfit){ // found something, check findfit=checkAFit(Po); } if(findfit){ // found & checked -> insert insertParticle(Po); //cout << "found particle " << Po.getID() << " after " << countfail << " tries" << endl; countfail=0; countfound++; } else { countfail++; } } console.Info() << "inserted " << countfound << " Particles" << "\n"; } ./Geometry/RegularBlockGenerator.cpp0000664000175000017500000000305012176660653017357 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/RegularBlockGenerator.h" #include "Geometry/GridIterator.h" #include "Geometry/SimpleParticle.h" namespace esys { namespace lsm { RegularBlockGenerator::RegularBlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double sphereRadius ) : BlockGenerator(nTable, particlePool, bBox, periodicDimensions, tolerance), m_radius(sphereRadius) { } RegularBlockGenerator::~RegularBlockGenerator() { } double RegularBlockGenerator::getRadius() const { return m_radius; } double RegularBlockGenerator::getGridRadius() const { return m_radius; } void RegularBlockGenerator::generate() { generateSeedParticles(); } } } ./Geometry/HexagBlockIterator.hpp0000664000175000017500000000430012176660653016661 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMHEXAGBLOCKITERATOR_HPP #define ESYS_LSMHEXAGBLOCKITERATOR_HPP namespace esys { namespace lsm { HexagBlockIterator::HexagBlockIterator() : ClosePackIterator() { } HexagBlockIterator::HexagBlockIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation ) : ClosePackIterator(numI, numJ, numK, sphereRadius, orientation) { setDimRepeat(Vec3L(2,2,2)); OffsetMatrix offsetMatrix; offsetMatrix(0,0,0) = 0.0; offsetMatrix(0,0,1) = getRadius(); offsetMatrix(0,0,2) = 0.0; offsetMatrix(0,1,0) = getRadius(); offsetMatrix(0,1,1) = 0.0; offsetMatrix(0,1,2) = 0.0; offsetMatrix(0,2,0) = 0.0; offsetMatrix(0,2,1) = 0.0; offsetMatrix(0,2,2) = 0.0; offsetMatrix(1,0,0) = 0.0; offsetMatrix(1,0,1) = 0.0; offsetMatrix(1,0,2) = 0.0; offsetMatrix(1,1,0) = SQRT_1_OVER_3*getRadius(); offsetMatrix(1,1,1) = SQRT_1_OVER_3*getRadius(); offsetMatrix(1,1,2) = SQRT_1_OVER_3*getRadius(); offsetMatrix(1,2,0) = 0.0; offsetMatrix(1,2,1) = 0.0; offsetMatrix(1,2,2) = 0.0; offsetMatrix(2,0,0) = 0.0; offsetMatrix(2,0,1) = 0.0; offsetMatrix(2,0,2) = 0.0; offsetMatrix(2,1,0) = 0.0; offsetMatrix(2,1,1) = 0.0; offsetMatrix(2,1,2) = 0.0; offsetMatrix(2,2,0) = 0.0; offsetMatrix(2,2,1) = 0.0; offsetMatrix(2,2,2) = 0.0; setOffsetMatrix(offsetMatrix); } } } #endif ./Geometry/RectPatch.cpp0000664000175000017500000000472512176660653015023 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/RectPatch.h" // --- system includes --- #include // for fabs using std::fabs; /*! construct a axis aligned rectangular patch in the x-z plane \param xmin min. x-pos \param xmax max. x-pos \param zmin min. z-pos \param zmax max. z-pos \param z0 z-pos \param dz "roughness" parameter */ RectPatch::RectPatch(double xmin,double xmax,double zmin,double zmax,double y0,double dy) { m_xmin=xmin; m_xmax=xmax; m_zmin=zmin; m_zmax=zmax; m_y0=y0; m_dy=dy; } /*! Get (perpendicular) distance from given point. If projection of point onto plane is outside patch return -1 \param P the point */ double RectPatch::sep(const Vec3& P) { double res; // check if inside if((P.X()>=m_xmin) && (P.X()<=m_xmax) && (P.Z()>=m_zmin) && (P.Z()<=m_zmax)){ res=fabs(P.Y()-m_y0)+m_dy; } else { res=-1; } return res; } /*! Get distance from given point to closest point of patch. \param P the point */ double RectPatch::dist(const Vec3& P) { return sep(P); } /*! check if line between 2 points intersects patch \param P1 1st point \param P2 2nd point */ bool RectPatch::intersect(const Vec3& P1,const Vec3& P2) { bool res; // check if patch is in z-range of line double dy1=P1.Y()-m_y0; double dy2=P2.Y()-m_y0; if(dy1*dy2<0.0){ // get intersection point Vec3 P=P1+(dy1/(dy1+dy2))*(P2-P1); // check inside res=((P.X()>=m_xmin) && (P.X()<=m_xmax) && (P.Z()>=m_zmin) && (P.Z()<=m_zmax)); } else { res=false; } return res; } /*! get the plane further away from the given point */ Plane3D RectPatch::getPlane(const Vec3& P) { Vec3 normal=(P.Y()>m_y0) ? Vec3(0.0,1.0,0.0) : Vec3(0.0,-1.0,0.0); Vec3 pos=(P.Y()>m_y0) ? Vec3(m_xmin,m_y0-m_dy,m_zmin) : Vec3(m_xmin,m_y0+m_dy,m_zmin) ; return Plane3D(normal,pos); } ./Geometry/ParticleFitter.h0000664000175000017500000003573012176660653015534 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLEFITTER_H #define ESYS_LSMPARTICLEFITTER_H #include "Geometry/RandomBlockGenerator.h" #include "Geometry/Sphere3d.h" #include "Geometry/Sphere2d.h" namespace esys { namespace lsm { class ParticleFitter { public: typedef RandomBlockGenerator::ParticleVector ParticleVector; ParticleFitter(RandomBlockGenerator &blockGenerator) : m_pGenerator(&blockGenerator), m_successfulFitCount(0), m_getFitCount(0), m_failedFitCount(0) { } virtual ~ParticleFitter() {} virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) = 0; static const SimpleParticle INVALID; void incrGetFit() { m_getFitCount++; } void incrFailedFit() { m_failedFitCount++; } void incrSuccessfulFit() { m_successfulFitCount++; } virtual std::string getName() const = 0; void write(std::ostream &oStream) const { oStream << (getName() + ": ") << "fit count = " << m_getFitCount << ", success = " << m_successfulFitCount << ", fail = " << m_failedFitCount; } std::string toString() const { std::stringstream sStream; write(sStream); return sStream.str(); } virtual bool particleFits(const SimpleParticle &particle) const { return getGenerator().particleFits(particle); } protected: RandomBlockGenerator &getGenerator() { return *m_pGenerator; } const RandomBlockGenerator &getGenerator() const { return *m_pGenerator; } private: RandomBlockGenerator *m_pGenerator; int m_successfulFitCount; int m_getFitCount; int m_failedFitCount; }; inline std::ostream &operator<<(std::ostream &oStream, const ParticleFitter &fitter) { fitter.write(oStream); return oStream; } class MoveToSurfaceFitter : public ParticleFitter { public: MoveToSurfaceFitter(RandomBlockGenerator &blockGenerator) : ParticleFitter(blockGenerator) { } virtual std::string getName() const { return "Mv to Surface"; } SimpleParticle moveToSurface( const SimpleParticle &stationary, const SimpleParticle &movable ) { SimpleParticle moved = movable; const Vec3 centreDiff = movable.getPos() - stationary.getPos(); const double centreDist = centreDiff.norm(); if (centreDist > 0.0) { const Vec3 newCentrePos = stationary.getPos() + (centreDiff/(centreDist))*(stationary.getRad() + movable.getRad()); moved.moveTo(newCentrePos); } return moved; } virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { incrGetFit(); SimpleParticle newParticle = particle; if (neighbours.size() > 0) { if ( (particle.getPos() - neighbours[0]->getPos()).norm() < (particle.getRad() + neighbours[0]->getRad()) ) { newParticle = moveToSurface(*(neighbours[0]), particle); } } if (newParticle.isValid() && !particleFits(newParticle)) { newParticle = INVALID; incrFailedFit(); } else if (newParticle.isValid()) { incrSuccessfulFit(); } return newParticle; } }; class ThreeDParticleFitter : public ParticleFitter { public: ThreeDParticleFitter(RandomBlockGenerator &blockGenerator) : ParticleFitter(blockGenerator) { } virtual std::string getName() const { return " 3D Fitter"; } SimpleParticle findAFit( const SimpleParticle& Po, const ParticleVector &particleVector ) { SimpleParticle fittedParticle = SimpleParticle::INVALID; Vec3 M; double r; int id=Po.getID(); if (particleVector.size() > 3) { const bool foundFit = Sphere3D::FillIn( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), particleVector[3]->getPos(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), particleVector[3]->getRad(), M, r ); if (foundFit) { fittedParticle = SimpleParticle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector argument has fewer than 4 elements."); } return fittedParticle; } virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { incrGetFit(); SimpleParticle newParticle = INVALID; if(neighbours.size() > 3){ // at least 4 neighbors const SimpleParticle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if (ndist > 0.0) { newParticle = particle; if (ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos()+((particle.getPos()-Pi.getPos())*(Pi.getRad()/ndist)) ); } const double dist_p = plane.sep(newParticle.getPos()); const double dist_3 = (newParticle.getPos()-neighbours[3]->getPos()).norm()-neighbours[3]->getRad(); if (dist_p > dist_3) { // 4th particle closer than plane -> fit 4 particles newParticle = findAFit(newParticle, neighbours); } else { newParticle = INVALID; } } } if (newParticle.isValid() && !particleFits(newParticle)) { newParticle = INVALID; incrFailedFit(); } else if (newParticle.isValid()) { incrSuccessfulFit(); } return newParticle; } }; class TwoDParticleFitter : public ParticleFitter { public: TwoDParticleFitter(RandomBlockGenerator &blockGenerator) : ParticleFitter(blockGenerator) { } virtual std::string getName() const { return " 2D Fitter"; } SimpleParticle findAFit( const SimpleParticle& Po, const ParticleVector &particleVector ) { SimpleParticle fittedParticle = SimpleParticle::INVALID; Vec3 M; double r; int id=Po.getID(); if (particleVector.size() > 2) { const bool foundFit = Sphere2D::FillIn( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), M, r ); if (foundFit) { fittedParticle = SimpleParticle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector argument has fewer than 3 elements."); } return fittedParticle; } virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { incrGetFit(); SimpleParticle newParticle = INVALID; if(neighbours.size() > 2){ // at least 3 neighbors const SimpleParticle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if (ndist > 0.0) { newParticle = particle; if (ndist < Pi.getRad()){ // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos()+((particle.getPos()-Pi.getPos())*(Pi.getRad()/ndist)) ); } const double dist_p = plane.sep(newParticle.getPos()); const double dist_2 = (newParticle.getPos()-neighbours[2]->getPos()).norm()-neighbours[2]->getRad(); if (dist_p > dist_2) { // 4th particle closer than plane -> fit 4 particles newParticle = findAFit(newParticle, neighbours); } else { newParticle = INVALID; } } } if (newParticle.isValid() && !particleFits(newParticle)) { newParticle = INVALID; incrFailedFit(); } else if (newParticle.isValid()) { incrSuccessfulFit(); } return newParticle; } }; class TwoDPlaneParticleFitter : public ParticleFitter { public: TwoDPlaneParticleFitter(RandomBlockGenerator &blockGenerator) : ParticleFitter(blockGenerator) { } virtual std::string getName() const { return " 2D Plane"; } SimpleParticle findAFit( const SimpleParticle& particle, const ParticleVector &particleVector, const Plane3D& plane ) { SimpleParticle fittedParticle = SimpleParticle::INVALID; Vec3 M; double r; const int id = particle.getID(); if (particleVector.size() > 1) { const bool foundFit = Sphere2D::FillInWP( particleVector[0]->getPos(), particleVector[1]->getPos(), plane.GetO(), plane.GetW(), particleVector[0]->getRad(), particleVector[1]->getRad(), M, r ); if (foundFit) { fittedParticle = SimpleParticle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector vector contains less than 2 particles."); } return fittedParticle; } virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { incrGetFit(); SimpleParticle newParticle = INVALID; if (neighbours.size() >= 2) { // 2 neighbors -> try 2 particles + plane const SimpleParticle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 2) || ( plane.sep(particle.getPos()) < (particle.getPos()-neighbours[2]->getPos()).norm()-neighbours[2]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours, plane); } } if (newParticle.isValid() && !particleFits(newParticle)) { newParticle = INVALID; incrFailedFit(); } else if (newParticle.isValid()) { incrSuccessfulFit(); } return newParticle; } }; class ThreeDPlaneParticleFitter : public ParticleFitter { public: ThreeDPlaneParticleFitter(RandomBlockGenerator &blockGenerator) : ParticleFitter(blockGenerator) { } virtual std::string getName() const { return " 3D Plane"; } SimpleParticle findAFit( const SimpleParticle& particle, const ParticleVector &particleVector, const Plane3D& plane ) { SimpleParticle fittedParticle = SimpleParticle::INVALID; Vec3 M; double r; const int id = particle.getID(); if (particleVector.size() > 2) { const bool foundFit = Sphere3D::FillInWP( particleVector[0]->getPos(), particleVector[1]->getPos(), particleVector[2]->getPos(), plane.GetO(), plane.GetW(), particleVector[0]->getRad(), particleVector[1]->getRad(), particleVector[2]->getRad(), M, r ); if (foundFit) { fittedParticle = SimpleParticle(M, r, id); } } else { throw std::runtime_error("findAFit: particleVector vector contains less than 3 particles."); } return fittedParticle; } virtual SimpleParticle getFitParticle( const SimpleParticle &particle, const ParticleVector &neighbours, const Plane3D &plane ) { incrGetFit(); SimpleParticle newParticle = INVALID; if (neighbours.size() >= 3) { // 3 neighbors -> try 3 particles + plane const SimpleParticle &Pi = *(neighbours[0]); const double ndist=(particle.getPos()-Pi.getPos()).norm(); if ( (ndist > 0.0) && ( (neighbours.size() == 3) || ( plane.sep(particle.getPos()) < (particle.getPos()-neighbours[3]->getPos()).norm()-neighbours[3]->getRad() ) ) ) { newParticle = particle; if (ndist < Pi.getRad()) { // if Po inside Pi -> move Po to the surface of Pi newParticle.moveTo( Pi.getPos() + ((particle.getPos() - Pi.getPos()) * (Pi.getRad()/ndist)) ); } newParticle = findAFit(newParticle, neighbours, plane); } } if (newParticle.isValid() && !particleFits(newParticle)) { newParticle = INVALID; incrFailedFit(); } else if (newParticle.isValid()) { incrSuccessfulFit(); } return newParticle; } }; } } #endif ./Geometry/AEdge.h0000664000175000017500000000233312176660653013551 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __AEDGE_H #define __AEDGE_H //-- Project includes -- #include "Foundation/vec3.h" /*! \class AEdge \brief abstract base class for edges in mesh (2D or 3D) \author Steffen Abe $Revision$ $Date$ */ class AEdge { protected: Vec3 m_p0,m_p1; public: AEdge(const Vec3&,const Vec3&); virtual ~AEdge(); double sep(const Vec3&) const; pair dist(const Vec3&) const ; // signed separation according to direction of the normal Vec3 getBoundingBoxMin() const; Vec3 getBoundingBoxMax() const; }; #endif // __AEDGE_H ./Geometry/CircularNeighbourTable.h0000664000175000017500000000661112176660653017166 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCIRCULARNEIGHBOURTABLE_H #define ESYS_LSMCIRCULARNEIGHBOURTABLE_H #include "Geometry/NeighbourTable.h" #include #include #include #include #include namespace esys { namespace lsm { /** * */ template class CircularNeighbourTable : public NeighbourTable { public: typedef NeighbourTable Inherited; typedef typename Inherited::Particle Particle; typedef typename Inherited::ParticleVector ParticleVector; typedef std::set ParticleSet; typedef boost::object_pool ParticlePool; typedef boost::shared_ptr ParticlePoolPtr; typedef std::vector BoolVector; public: CircularNeighbourTable( const BoundingBox &bBox, double gridSpacing, const BoolVector &periodicDimensions = BoolVector(3, false), double circBorderWidth = 0.0 ); CircularNeighbourTable( const BoundingBox &bBox, double gridSpacing, ParticlePoolPtr particlePoolPtr, const BoolVector &periodicDimensions = BoolVector(3, false), double circBorderWidth = 0.0 ); public: void checkPeriodicDimensions(); virtual ~CircularNeighbourTable(); void setCircularBorderWidth( double circBorderWidth, double gridSpacing ); void setCircularBorderWidth(double circBorderWidth); void resize( const BoundingBox &bBox, double gridSpacing, double circBorderWidth ); void resize( const BoundingBox &bBox, double gridSpacing ); void insertClone(Particle *pParticle, const Vec3 &newPosition); bool havePeriodicDimensions() const; Vec3 getModdedPosn(const Vec3 &posn) const; void insert(Particle *pParticle); void insert(Particle &particle); size_t getNumClonedParticles() const; size_t getNumParticles() const; const BoolVector &getPeriodicDimensions() const; protected: bool isClone(Particle *p) const; ParticleVector getNonClonedParticles(); void clearClonedParticles(); private: BoolVector m_periodicDimensions; ParticlePoolPtr m_particlePoolPtr; ParticleSet m_clonedParticleSet; int m_circGridWidth; int m_periodicDimIndex; }; } } #include "Geometry/CircularNeighbourTable.hpp" #endif ./Geometry/RegularBlockGenerator.h0000664000175000017500000000270512176660653017032 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMREGULARBLOCKGENERATOR_H #define ESYS_LSMREGULARBLOCKGENERATOR_H #include namespace esys { namespace lsm { typedef std::vector BoolVector; /** * */ class RegularBlockGenerator : public BlockGenerator { public: RegularBlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double sphereRadius ); virtual ~RegularBlockGenerator(); virtual double getRadius() const; virtual double getGridRadius() const; virtual void generate(); private: double m_radius; }; } } #endif ./Geometry/ClosePackBlock.hpp0000664000175000017500000000653512176660653015773 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCLOSEPACKBLOCK_HPP #define ESYS_LSMCLOSEPACKBLOCK_HPP #include "Geometry/ClosePackBlock.h" #include "Geometry/ClosePackIterator.h" namespace esys { namespace lsm { template ClosePackBlockGenerator::ClosePackBlockGenerator( unsigned int numX, unsigned int numY, unsigned int numZ, double radius, ClosePackOrientation orientation ) : m_radius(radius), m_dimCounts(numX, numY, numZ), m_orientation(orientation) { } template template void ClosePackBlockGenerator::createParticles( TmplParticleCollection &particleCollection ) { int id = 0; CentrePointIterator it = CentrePointIterator( m_dimCounts[0], m_dimCounts[1], m_dimCounts[2], getRadius(), ((m_orientation == DEFAULT_ORIENT) && (m_dimCounts[2] <= 1)) ? XYZ : m_orientation ); while (it.hasNext()) { particleCollection.createParticle( TmplParticle( it.next(), getRadius(), id, 0 ) ); id++; } } template ClosePackBlockGenerator::~ClosePackBlockGenerator() { } template double ClosePackBlockGenerator::getRadius() const { return m_radius; } template ClosePackBlock::ClosePackBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius, ClosePackOrientation orientation ) : ParticleCollection(), m_generator(numX, numY, numZ, radius) { createParticles(); } template ClosePackBlock::~ClosePackBlock() { } template void ClosePackBlock::createParticles() { m_generator.createParticles(*this); } template double ClosePackBlock::getRadius() const { return m_generator.getRadius(); } } } #endif ./Geometry/RandomBlockGenerator.cpp0000664000175000017500000001531412176660653017204 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/RandomBlockGenerator.h" #include "Geometry/SimpleParticle.h" #include "Geometry/GridIterator.h" #include "Geometry/SimpleNTable.h" #include "Geometry/Sphere3d.h" #include "Geometry/Plane3D.h" #include "Geometry/ParticleFitter.h" #include #include #include namespace esys { namespace lsm { RandomBlockGenerator::RandomBlockGenerator( NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double minSphereRadius, double maxSphereRadius, const PlaneVector &fitPlaneVector, int maxInsertionFailures ) : BlockGenerator(nTable, particlePool, bBox, periodicDimensions, tolerance), m_minRadius(minSphereRadius), m_maxRadius(maxSphereRadius), m_fitPlaneVector(fitPlaneVector), m_maxInsertionFailures(maxInsertionFailures) { } RandomBlockGenerator::~RandomBlockGenerator() { } double RandomBlockGenerator::getRandom(double minVal, double maxVal) const { return minVal + ((maxVal-minVal)*(static_cast(rand()))/(static_cast(RAND_MAX))); } double RandomBlockGenerator::getGridRadius() const { return m_maxRadius; } double RandomBlockGenerator::getRadius() const { return getRandom(m_minRadius, m_maxRadius); } class PlaneComparer { public: PlaneComparer(const SimpleParticle &particle) : m_pParticle(&particle) { } inline bool operator()(const Plane3D &plane1, const Plane3D &plane2) const { return ( plane1.sep(m_pParticle->getPos()) < plane2.sep(m_pParticle->getPos()) ); } private: const SimpleParticle *m_pParticle; }; const PlaneVector &RandomBlockGenerator::getFitPlaneVector() const { return m_fitPlaneVector; } Plane3D RandomBlockGenerator::getClosestFitPlane(const SimpleParticle &particle) const { PlaneVector fitPlanes = getFitPlaneVector(); if (fitPlanes.size() > 0) { std::sort(fitPlanes.begin(), fitPlanes.end(), PlaneComparer(particle)); return fitPlanes[0]; } return Plane3D(Vec3(-1.0, 0, 0), Vec3(DBL_MAX/2, DBL_MAX/2, DBL_MAX/2)); } Vec3 RandomBlockGenerator::getRandomPoint() const { return Vec3( getRandom(getBBox().getMinPt().X(), getBBox().getMaxPt().X()), getRandom(getBBox().getMinPt().Y(), getBBox().getMaxPt().Y()), getRandom(getBBox().getMinPt().Z(), getBBox().getMaxPt().Z()) ); } RandomBlockGenerator::ParticleVector RandomBlockGenerator::getClosestNeighbors( const SimpleParticle& particle, int numClosest ) { ParticleVector neighbourVector = getNTable().getUniqueNeighbourVector(particle.getPos(), m_maxRadius + getTolerance()); std::sort(neighbourVector.begin(), neighbourVector.end(), ParticleComparer(particle)); if (neighbourVector.size() > static_cast(numClosest)) { neighbourVector.erase(neighbourVector.begin() + numClosest, neighbourVector.end()); } return neighbourVector; } bool RandomBlockGenerator::particleFits(const SimpleParticle &particle) const { return ( (particle.getRad() >= m_minRadius) && (particle.getRad() <= m_maxRadius) && BlockGenerator::particleFits(particle) ); } int RandomBlockGenerator::getMaxInsertionFailures() const { return m_maxInsertionFailures; } FitterPtrVector RandomBlockGenerator::getFitterPtrVector() { FitterPtrVector fitters; fitters.push_back(FitterPtr(new MoveToSurfaceFitter(*this))); if (is2d()) { fitters.push_back(FitterPtr(new TwoDParticleFitter(*this))); if (getFitPlaneVector().size() > 0) { fitters.push_back(FitterPtr(new TwoDPlaneParticleFitter(*this))); } } else { fitters.push_back(FitterPtr(new ThreeDParticleFitter(*this))); if (getFitPlaneVector().size() > 0) { fitters.push_back(FitterPtr(new ThreeDPlaneParticleFitter(*this))); } } return fitters; } void RandomBlockGenerator::generateFillParticles() { int numFails = 0; int insertCount = 0; FitterPtrVector fitters = getFitterPtrVector(); SimpleParticle particle = ParticleFitter::INVALID; SimpleParticle fitParticle = ParticleFitter::INVALID; Plane3D plane; ParticleVector neighbours; while (numFails < getMaxInsertionFailures()) { fitParticle = ParticleFitter::INVALID; particle = generateParticle(getRandomPoint()); neighbours = getClosestNeighbors(particle, 4); plane = getClosestFitPlane(particle); for ( FitterPtrVector::iterator it = fitters.begin(); ( (it != fitters.end()) && (!fitParticle.isValid()) ); it++ ) { fitParticle = (*it)->getFitParticle(particle, neighbours, plane); } if (fitParticle.isValid()) { numFails = 0; insertCount++; insertParticle(fitParticle); } else { numFails++; } } console.Info() << "BoundingBox: minPt = " << getBBox().getMinPt() << ", maxPt = " << getBBox().getMaxPt() << "\n" << "BoundingBox: sizes = " << getBBox().getSizes() << "\n"; for ( FitterPtrVector::iterator it = fitters.begin(); (it != fitters.end()); it++ ) { console.Info() << (*(*it)).toString() << "\n"; } console.Info() << "Total inserted = " << insertCount << "\n"; } void RandomBlockGenerator::generate() { generateSeedParticles(); generateFillParticles(); } } } ./Geometry/Sphere2d.h0000664000175000017500000000307212176660653014261 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SPHERE2D_H #define __SPHERE2D_H //-- project includes -- #include "Foundation/vec3.h" /*! \class Sphere2D \brief Just methods to calculate the position and dimension of a 2D sphere under given constraints (see the .cpp file). \author David Place, Steffen Abe $Revision$ $Date$ */ class Sphere2D { private: static double NearZero; public: // 2D fill-in static bool FillIn(const Vec3&,const Vec3&,const Vec3&,double,double,double,Vec3&,double&); static bool FillInWP(const Vec3&,const Vec3&,const Vec3&,const Vec3&,double,double,Vec3&,double&); static bool FillInWP(const Vec3&,const Vec3&,const Vec3&,double,double,Vec3&,int wsol=1); //static bool FillInWFS(Vec3 P1, Vec3 P2, AGeneralSurface &FS, double r1, double r2, Vec3 &M, double &r) ; //static bool FillInWFS(Vec3 P1, AGeneralSurface &FS, double r1, double r, Vec3 &M, int wsol=1) ; } ; #endif // __SPHERE2D_H ./Geometry/CircleBoxVolCalculator.cpp0000664000175000017500000000140512176660653017503 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/CircleBoxVolCalculator.h" namespace esys { namespace lsm { } } ./Geometry/ClosePackBlock.h0000664000175000017500000000465412176660653015433 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCLOSEPACKBLOCK_H #define ESYS_LSMCLOSEPACKBLOCK_H #include "Geometry/ClosePackIterator.h" #include "Geometry/ParticleCollection.h" namespace esys { namespace lsm { /** * */ template class ClosePackBlockGenerator { public: typedef TmplClosePackIterator CentrePointIterator; ClosePackBlockGenerator( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5, ClosePackOrientation orientation = DEFAULT_ORIENT ); virtual ~ClosePackBlockGenerator(); double getRadius() const; template void createParticles(TmplParticleCollection &particleCollection); protected: private: double m_radius; Vec3L m_dimCounts; ClosePackOrientation m_orientation; }; /** * */ template class ClosePackBlock : public ParticleCollection { public: typedef typename ParticleCollection::Particle Particle; typedef TmplClosePackIterator ClosePackIterator; typedef ClosePackBlockGenerator BlockGenerator; ClosePackBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5, ClosePackOrientation orientation = DEFAULT_ORIENT ); virtual ~ClosePackBlock(); double getRadius() const; protected: void createParticles(); private: BlockGenerator m_generator; }; } } #include "Geometry/ClosePackBlock.hpp" #endif ./Geometry/LineSegment.cpp0000664000175000017500000000402412176660653015350 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "LineSegment.h" /*! constructor \param P0 1st end point \param P1 2nd end point \warning doesn't check P0!=P1 */ LineSegment::LineSegment(const Vec3& P0,const Vec3& P1) { Pos=P0; U=(P1-P0).unit(); N.X()=U.Y(); N.Y()=-U.X(); N.Z()=0.0; m_len=(P1-P0).norm(); } /*! distance between a point and the line segment \param P the position of the point */ double LineSegment::sep(const Vec3& P) { double res; double du=(P-Pos)*U; if((0<=du) && (du <=m_len)){// nearest point inside segment res=fabs((P-Pos)*N); } else { // nearest point outside -> get distance to closest endpoint double d1=(P-Pos).norm(); double d2=(P-(Pos+m_len*U)).norm(); res = (d1 parallel segments -> no intersection double b=(c*y1-d*x1)/s; double a=(c*y2-d*x2)/s; res=((0<=a) && (a<=m_len) && (0<=b) && (b<=(P2-P1).norm())); } return res; } ./Geometry/RandomSpherePacker.hpp0000664000175000017500000002761512176660653016673 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Foundation/StringUtil.h" #include "Geometry/RandomSpherePacker.h" #include "Geometry/SphereFitter.h" #include "Geometry/ParticleComparer.h" #include #include #include namespace esys { namespace lsm { template SphereFittedPIterator::SphereFittedPIterator( Packer &packer, int maxInsertionFailures, const BoundingSphere &bSphere ) : m_pPacker(&packer), m_fitterPtrVector(), m_maxInsertionFailures(maxInsertionFailures), m_lastFailCount(0), m_successCount(0), m_next(Fitter::getInvalidParticle()), m_bSphere(bSphere) { if (m_next.isValid()) { throw std::runtime_error( std::string("isValid method returns true for INVALID particle:") + StringUtil::toString(m_next) ); } initialiseFitterPtrVector(); } template int SphereFittedPIterator::getMaxInsertionFailures() const { return m_maxInsertionFailures; } template const typename SphereFittedPIterator::Packer & SphereFittedPIterator::getPacker() const { return *m_pPacker; } template typename SphereFittedPIterator::Packer & SphereFittedPIterator::getPacker() { return *m_pPacker; } template const BoundingSphere & SphereFittedPIterator::getBSphere() const { return m_bSphere; } template void SphereFittedPIterator::initialiseFitterPtrVector() { FitterPtrVector fitters; fitters.push_back(FitterPtr(new Move2SurfaceFitter(getPacker()))); if (getPacker().is2d()) { fitters.push_back(FitterPtr(new TwoDSFitter(getPacker()))); fitters.push_back(FitterPtr(new TwoDSSphereFitter(getPacker(), getBSphere()))); } else { fitters.push_back(FitterPtr(new ThreeDFitter(getPacker()))); fitters.push_back(FitterPtr(new ThreeDSSphereFitter(getPacker(), getBSphere()))); } m_fitterPtrVector = fitters; } template typename SphereFittedPIterator::FitterPtrVector & SphereFittedPIterator::getFitterPtrVector() { return m_fitterPtrVector; } template const typename SphereFittedPIterator::FitterPtrVector & SphereFittedPIterator::getFitterPtrVector() const { return m_fitterPtrVector; } template Vec3 SphereFittedPIterator::getRandomPoint() const { return getPacker().getRandomPoint(); } template typename SphereFittedPIterator::Particle SphereFittedPIterator::getCandidateParticle( const Vec3 &point ) { return getPacker().getCandidateParticle(point); } template typename SphereFittedPIterator::ParticleVector SphereFittedPIterator::getClosestNeighbours( const Particle& particle, int numClosest ) { return getPacker().getClosestNeighbours(particle, numClosest); } template typename SphereFittedPIterator::Particle & SphereFittedPIterator::generateNext() { m_next = Fitter::getInvalidParticle(); if (m_lastFailCount < getMaxInsertionFailures()) { int numFails = 0; //int insertCount = 0; FitterPtrVector fitters = getFitterPtrVector(); Particle particle = Fitter::getInvalidParticle(); Particle fitParticle = particle; Plane plane=Plane(Vec3(-1.0, 0, 0), Vec3(DBL_MAX/2, DBL_MAX/2, DBL_MAX/2)); ParticleVector neighbours; while ((!fitParticle.isValid()) && (numFails < getMaxInsertionFailures())) { particle = getCandidateParticle(getRandomPoint()); neighbours = getClosestNeighbours(particle, 4); for ( typename FitterPtrVector::iterator it = getFitterPtrVector().begin(); ( (it != getFitterPtrVector().end()) && (!fitParticle.isValid()) ); it++ ) { fitParticle = (*it)->getFitParticle(particle, neighbours, plane); } numFails++; } m_lastFailCount = numFails; m_successCount += ((fitParticle.isValid()) ? 1 : 0); m_next = fitParticle; } return m_next; } template bool SphereFittedPIterator::hasNext() { return (m_next.isValid() || generateNext().isValid()); } template typename SphereFittedPIterator::Particle SphereFittedPIterator::next() { if (!(m_next.isValid())) { generateNext(); } const Particle next = m_next; m_next = Fitter::getInvalidParticle(); return next; } template void SphereFittedPIterator::logInfo() { console.Info() << "BoundingSphere: minPt = " << getPacker().getBBox().getMinPt() << ", maxPt = " << getPacker().getBBox().getMaxPt() << "\n" << "BoundingSphere: sizes = " << getPacker().getBBox().getSizes() << "\n"; for ( typename FitterPtrVector::iterator it = getFitterPtrVector().begin(); (it != getFitterPtrVector().end()); it++ ) { console.Info() << (*(*it)).toString() << "\n"; } console.Info() << "Total successful fits = " << m_successCount << "\n"; } template class TCubicPackWrap> RandomSpherePacker::RandomSpherePacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingSphere &bSphere, double tolerance, double cubicPackRadius, int maxInsertionFailures, bool do2d ) : Inherited( particleGeneratorPtr, particlePoolPtr, nTablePtr, do2d ? bSphere.get2dBBox() : bSphere.getBBox(), BoolVector(3,false), tolerance, cubicPackRadius ), m_bSphere(bSphere), m_maxInsertionFailures(maxInsertionFailures) { } template class TCubicPackWrap> RandomSpherePacker::~RandomSpherePacker() { } template class TCubicPackWrap> const BoundingSphere & RandomSpherePacker::getBSphere( ) const { return m_bSphere; } template class TCubicPackWrap> double RandomSpherePacker::getRandom( double minVal, double maxVal ) const { return minVal + (maxVal-minVal)*rng::s_zeroOneUniform(); } template class TCubicPackWrap> Vec3 RandomSpherePacker::getRandomPoint() const { return Vec3( getRandom(this->getBBox().getMinPt().X(), this->getBBox().getMaxPt().X()), getRandom(this->getBBox().getMinPt().Y(), this->getBBox().getMaxPt().Y()), getRandom(this->getBBox().getMinPt().Z(), this->getBBox().getMaxPt().Z()) ); } template class TCubicPackWrap> typename RandomSpherePacker::ParticleVector RandomSpherePacker::getClosestNeighbours( const Particle& particle, int numClosest ) { ParticleVector neighbourVector = this->getNTable().getUniqueNeighbourVector( particle.getPos(), this->getParticleGenerator().getMaxFitRadius() + this->getTolerance() ); std::sort( neighbourVector.begin(), neighbourVector.end(), ParticleComparer(particle) ); if (static_cast(neighbourVector.size()) > numClosest) { neighbourVector.erase( neighbourVector.begin() + numClosest, neighbourVector.end() ); } return neighbourVector; } template class TCubicPackWrap> bool RandomSpherePacker::particleIsValid( const Particle &particle ) const { return ( this->getParticleGenerator().isValidFitRadius(particle.getRad()) && particleFitsInBSphereWithNeighbours(particle) ); } template class TCubicPackWrap> int RandomSpherePacker::getMaxInsertionFailures() const { return m_maxInsertionFailures; } template class TCubicPackWrap> void RandomSpherePacker::generateRandomFill() { StuffedParticleIterator it = StuffedParticleIterator( *this, getMaxInsertionFailures(), getBSphere() ); while (it.hasNext()) { const Particle p = it.next(); this->createAndInsertParticle(p); } it.logInfo(); } template class TCubicPackWrap> bool RandomSpherePacker::particleFitsInBSphere( const Particle &particle ) const { return getBSphere().contains( BoundingSphere(particle.getPos(), particle.getRadius()), this->getTolerance() ); } template class TCubicPackWrap> bool RandomSpherePacker::particleFitsInBSphereWithNeighbours( const Particle &particle ) const { return ( particleFitsInBSphere(particle) && this->particleFitsWithNeighbours(particle) ); } template class TCubicPackWrap> void RandomSpherePacker::generateCubicPackingInSphere() { GridIterator pointIt = GridIterator(this->getBBox(), this->getCubicPackingRadius()); while (pointIt.hasNext()) { const Particle candidate = this->getCandidateParticle(pointIt.next(), this->getCubicPackingRadius()); if (particleFitsInBSphereWithNeighbours(candidate)) { this->createAndInsertParticle(candidate); } } } template class TCubicPackWrap> void RandomSpherePacker::generate() { generateCubicPackingInSphere(); generateRandomFill(); } } } ./Geometry/SimpleBlock.hpp0000664000175000017500000000645312176660653015357 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SimpleBlock.h" #include #include #include #include #include namespace esys { namespace lsm { template SimpleBlockGenerator::SimpleBlockGenerator( unsigned int numX, unsigned int numY, unsigned int numZ, double radius ) : m_radius(radius), m_dimCounts(numX, numY, numZ) { } template Vec3 SimpleBlockGenerator::getPos(const Vec3L &idx) { return Vec3( idx[0]*2.0*getRadius() + getRadius(), idx[1]*2.0*getRadius() + getRadius(), idx[2]*2.0*getRadius() + ((m_dimCounts[2] > 1) ? getRadius() : 0.0) ); } template int SimpleBlockGenerator::getId(const Vec3L &idx) { return idx[0] + idx[1]*m_dimCounts[0] + idx[2]*m_dimCounts[0]*m_dimCounts[1]; } template template void SimpleBlockGenerator::createParticles( TmplParticleCollection &particleCollection ) { Vec3L idx(0, 0, 0); for (idx[2]=0; idx[2] < m_dimCounts[2]; (idx[2])++) { for (idx[1]=0; idx[1] < m_dimCounts[1]; (idx[1])++) { for (idx[0]=0; idx[0] < m_dimCounts[0]; (idx[0])++) { particleCollection.createParticle( TmplParticle( getPos(idx), getRadius(), getId(idx), 0 ) ); } } } } template SimpleBlockGenerator::~SimpleBlockGenerator() { } template double SimpleBlockGenerator::getRadius() const { return m_radius; } template SimpleBlock::SimpleBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius ) : ParticleCollection(), m_generator(numX, numY, numZ, radius) { createParticles(); } template SimpleBlock::~SimpleBlock() { } template void SimpleBlock::createParticles() { m_generator.createParticles(*this); } template double SimpleBlock::getRadius() const { return m_generator.getRadius(); } } } ./Geometry/SimpleBlock.h0000664000175000017500000000450512176660653015013 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSIMPLEBLOCK_H #define ESYS_LSMSIMPLEBLOCK_H #include "Foundation/BoundingBox.h" #include "Geometry/ParticleCollection.h" #include "Geometry/SimpleParticle.h" #include "Geometry/NeighbourTable.h" #include "Geometry/BasicInteraction.h" #include "Geometry/Vec3L.h" #include #include #include #include namespace esys { namespace lsm { /** * */ template class SimpleBlockGenerator { public: SimpleBlockGenerator( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5 ); virtual ~SimpleBlockGenerator(); double getRadius() const; template void createParticles(TmplParticleCollection &particleCollection); protected: Vec3 getPos(const Vec3L &idx); int getId(const Vec3L &idx); private: double m_radius; Vec3L m_dimCounts; }; /** * */ template class SimpleBlock : public ParticleCollection { public: typedef typename ParticleCollection::Particle Particle; SimpleBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5 ); virtual ~SimpleBlock(); double getRadius() const; protected: void createParticles(); private: SimpleBlockGenerator m_generator; }; } } #include "Geometry/SimpleBlock.hpp" #endif ./Geometry/Edge2D.cpp0000664000175000017500000000743212176660653014176 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/Edge2D.h" // --- System includes #include using std::fabs; using std::endl; using std::make_pair; /*! construct Edge from corner coordinates. Make sure Z=0 for all corners \param id0 id of the first corner \param id1 id of the 2nd corner \param v0 first corner \param v1 second corner \param ed_id edge id \param tag edge tag */ Edge2D::Edge2D(int id0,int id1,const Vec3& v0,const Vec3& v1,int ed_id,int tag) : AEdge(v0,v1) { m_id0=id0; m_id1=id1; m_p0.Z()=0.0; m_p1.Z()=0.0; m_edge_id=ed_id; m_tag=tag; m_force=Vec3(0.0,0.0,0.0); m_normal=cross(Vec3(0.0,0.0,1.0),m_p1-m_p0).unit(); } /*! Move one of the corners. The identifier for the corner is the global node id. If the node with the id is not in the edge do nothing. \param id the global id of the node to be moved \param d the amount of movement */ void Edge2D::moveNode(int id,const Vec3& d) { if(id==m_id0){ m_p0+=d; m_normal=cross(Vec3(0.0,0.0,1.0),m_p1-m_p0).unit(); } else if (id==m_id1) { m_p1+=d; m_normal=cross(Vec3(0.0,0.0,1.0),m_p1-m_p0).unit(); } } /*! convert point in local coords to global coords \param p the point in local coords */ Vec3 Edge2D::toGlobal(const Vec3& p) { Vec3 res; res=m_p0+(m_p1-m_p0)*p.X()+m_normal*p.Y(); return res; } /*! convert point in global coords into local (x,y,0) coords \param p the point in global coords */ Vec3 Edge2D::toLocal(const Vec3& p) { double x; double y; x=((p-m_p0)*(m_p1-m_p0))/(m_p1-m_p0).norm2(); y=(p-m_p0)*m_normal; return Vec3(x,y,0.0); } /*! Get the Edge2D member function which returns a vector field of a given name. Returns NULL if a field with that name doesn't exist. \param name the name of the field */ Edge2D::VectorFieldFunction Edge2D::getVectorFieldFunction(const string& name) { Edge2D::VectorFieldFunction f; if(name=="force"){ f=&Edge2D::getForce; } if(name=="forcedensity"){ f=&Edge2D::getForceDensity; } else { f=NULL; cerr << "ERROR - invalid name for edge vector access function" << endl; } return f; } /*! Get the Edge2D member function which returns a scalar field of a given name. Returns NULL if a field with that name doesn't exist. \param name the name of the field */ Edge2D::ScalarFieldFunction Edge2D::getScalarFieldFunction(const string& name) { Edge2D::ScalarFieldFunction f; if(name=="pressure"){ f=&Edge2D::getPressure; } else { f=NULL; cerr << "ERROR - invalid name for edge scalar access function" << endl; } return f; } /*! Get pressure on the edge from interaction forces */ double Edge2D::getPressure() const { // calculate normal force double F_n=m_force*m_normal; // retrun force per area (length) return F_n/(m_p1-m_p0).norm(); } /*! output Edge2D to ostream */ ostream& operator<<(ostream& ost,const Edge2D& T) { ost << "Edge2D: (" << T.m_p0 << ") - (" << T.m_p1 << ") Normal: (" << T.m_normal << ")"; return ost; } /*! output Edge2D to cout */ void Edge2D::print() { cout << "Edge2D: (" << m_p0 << ") - (" << m_p1 << ") Normal: (" << m_normal << ")"; } ./Geometry/FaultedBlock2d.h0000664000175000017500000000322412176660653015371 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FAULTEDBLOCK2D_H #define __FAULTEDBLOCK2D_H //--- STL includes --- #include #include using std::vector; using std::pair; //-- project includes -- #include "Geometry/RandomBlock.h" #include "Geometry/LineSegment.h" /*! \class FaultedBlock2D \brief class for the generation of a 2D random block with a fault consisting of line segments \author Steffen Abe $Date$ $Revision$ */ class FaultedBlock2D : public CRandomBlock2D { protected: vector > m_fault; vector m_f2; virtual Line *getClosestPlane(const SimpleParticle&); double m_pad_size; virtual Vec3 getAPoint(); public: FaultedBlock2D(double,double,double,double,double,double,double,bool circ_x=false); virtual ~FaultedBlock2D(); void addSegment(const Vec3&,const Vec3&,double); virtual bool checkAFit(const SimpleParticle&) ; virtual void generate(int,unsigned int); virtual void tagSplit(int,int,double); }; #endif // __FAULTEDBLOCK2D_H ./Geometry/SphereFitter.cpp0000664000175000017500000000131712176660653015544 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SphereFitter.h" ./Geometry/Sphere2d.cpp0000664000175000017500000001553712176660653014625 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Sphere2d.h" double Sphere2D::NearZero=1e-8; /*! Fit circle between 3 circles \param iP1 center of 1st circle \param iP2 center of 2nd circle \param iP3 center of 3rd circle \param r1 radius of 1st circle \param r2 radius of 2st circle \param r3 radius of 3rd circle \param M center of fitted circle (output) \param r radius of fitted circle (output) */ bool Sphere2D::FillIn(const Vec3& P1,const Vec3& P2,const Vec3& P3, double r1, double r2, double r3, Vec3 &M, double &r) { double B12 = r1*r1-r2*r2+P2*P2-P1*P1 ; double B13 = r1*r1-r3*r3+P3*P3-P1*P1 ; double V = (cross((P3-P1),(P2-P1))).Z() ; if (V==0.0) { return false ; } Vec3 E = B12*(P3-P1)-B13*(P2-P1) ; Vec3 D = (r1-r2)*(P3-P1)-(r1-r3)*(P2-P1) ; double a = D.X()*D.X()/(V*V)+ D.Y()*D.Y()/(V*V) -1 ; double b = 2.0*((cross(P3,D)).Z())/V + E*D/(V*V) -2.0*r3 ; double c = P3*P3+(cross(P3,E)).Z()/V+ E*E/(4*V*V) - r3*r3 ; double delta = b*b-4*a*c ; if (delta < 0.0) { return false ; } else if ( delta > 0.0 ) { delta = sqrt(delta) ; } if (a!=0.0) { double rs1 = (-b + delta)/(2*a) ; double rs2 = (-b - delta)/(2*a) ; if ((rs1<=0) && (rs2<=0)) { return false ; } if (rs1<=0) { r = rs2 ; } else if (rs2 <=0) { r = rs1 ; } else { r = ((rs1)>(rs2) ? (rs2):(rs1)) ; } } else { if (b==0.0) return false ; r = -c / b ; if (r<=0.0) return false ; } M.X() = -r*D.Y()/V - E.Y()/(2*V) ; M.Y() = r*D.X()/V + E.X()/(2*V) ; return true ; } /*! Fit circle between 2 circles and a line \param iP1 center of 1st circle \param iP2 center of 2nd circle \param iO origin of line \param iD direction of line \param r1 radius of 1st circle \param r2 radius of 2st circle \param M center of fitted circle (output) \param r radius of fitted circle (output) */ bool Sphere2D::FillInWP(const Vec3& iP1,const Vec3& iP2,const Vec3& iO,const Vec3& iD,double r1,double r2,Vec3& M,double& r) { Vec3 P2 = iP2-iO ; Vec3 P1 = iP1-iO ; Vec3 D ; D = iD/iD.norm() ; Vec3 O = iO-2*(fabs(P1*D)+fabs(P2*D))*D ; P2 = iP2-O ; P1 = iP1-O ; if ((cross(P1,D)).Z()*(cross(P2,D)).Z() < 0.0 ) return false ; if ((cross(P1,D)).Z() < 0 ) D *= -1.0 ; double alpha = 2*P2.X()-2*P1.X()+2*r2*D.Y()-2*r1*D.Y() ; double beta = 2*P2.Y()-2*P1.Y()+2*r1*D.X()-2*r2*D.X() ; double gamma = P1*P1-P2*P2+r2*r2-r1*r1 ; if (gamma == 0.0) { return false ; } if (fabs(beta)<=NearZero) { if (alpha == 0.0) return false ; double M1x = -gamma/alpha ; double a = 1-D.X()*D.X() ; double b = 2*D.X()*D.Y()*M1x+2*r1*D.X()-2*P1.Y() ; double c = P1*P1-2*P1.X()*M1x+M1x*M1x*(1-D.Y()*D.Y())-2*r1*M1x*D.Y()-r1*r1 ; double delta = b*b - 4*a*c ; if (delta < 0.0) { return false ; } else if (delta > 0.0) { delta = sqrt(delta) ; } double rs, My ; if (a==0.0) { if (b==0.0) return false ; My = -c/b ; rs = M1x*D.Y()-My*D.X() ; } else { double M1y = (-b+delta)/(2*a) ; double M2y = (-b-delta)/(2*a) ; double rs1 = M1x*D.Y()-M1y*D.X() ; double rs2 = M1x*D.Y()-M2y*D.X() ; if ((rs1 >0) && (rs2>0)) { if (rs10) { rs = rs1 ; My=M1y ; } else if (rs2 >0) { rs = rs2 ; My=M2y ; } else { return false ; } } } M = O+Vec3(M1x,My,0.0) ; r = rs ; return true ; } double A = -alpha/beta ; double B = -gamma/beta ; double a = A*A+1-(D.Y()-A*D.X())*(D.Y()-A*D.X()) ; double b = 2.0*A*B-2*P1.X()-2*P1.Y()*A-2.0*(D.Y()-A*D.X())*(r1-B*D.X()) ; double c = P1*P1-2*P1.Y()*B+B*B-(r1-B*D.X())*(r1-B*D.X()) ; double delta = b*b - 4*a*c ; if (delta < 0.0) { return false ; } else if (delta > 0.0) { delta = sqrt(delta) ; } double M1x,M2x ; if (a!=0) { M1x = (-b + delta) / (2*a) ; M2x = (-b - delta) / (2*a) ; } else { if (b==0.0) return false ; M1x = -c/b ; M2x = M1x ; } double M1y = A*M1x+B ; double M2y = A*M2x+B ; double rs1 = M1x*D.Y()-M1y*D.X() ; double rs2 = M2x*D.Y()-M2y*D.X() ; if ((rs1<=0) && (rs2<=0)) { return false ; } int sol=1 ; if (rs1<=0) { r = rs2 ; sol=2 ; } else if (rs2 <=0) { r = rs1 ; } else if (rs1 using std::vector; /*! \class Corner2D \brief Class representing the corner in a 2D "mesh" \author Steffen Abe $Revision$ $Date$ */ class Corner2D { private: Vec3 m_p; vector m_edges; int m_id; public: Corner2D(const Vec3&,int); void addEdge(Edge2D*); double sep(const Vec3&) const; // pair dist(const Vec3&) const ; // signed separation according to direction of the normal bool isValidContact(const Vec3&) const; Vec3 getDirectionFromPoint(const Vec3&) const; void move(const Vec3&); Vec3 getPos()const {return m_p;}; int getID() const {return m_id;}; int getNEdges() const {return m_edges.size();}; Vec3 getEdgeNormal(int) const; void applyForceToEdge(int,const Vec3&); }; #endif // __CORNER2D_H ./Geometry/GrainCollection.cpp0000664000175000017500000000132212176660653016210 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/GrainCollection.h" ./Geometry/PaddedBlock3D.h0000664000175000017500000000253312176660653015131 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PADDEDBLOCK3D_H #define __PADDEDBLOCK3D_H //-- project includes -- #include "Geometry/SplitBlock3D.h" using std::vector; /*! \class CPaddedBlock3D \brief Class for the generation of a 3D lattice with a random middle section in a rectangular area. \author Steffen Abe $Revision$ $Date$ */ class CPaddedBlock3D : public CSplitBlock3D { protected: double m_pad_size; virtual Vec3 getAPoint(); void generate_regular_padding(); public: CPaddedBlock3D(double,double,double,double,double,double,double,double,double,double,int,bool circ_x=false); virtual ~CPaddedBlock3D(){}; virtual void generate(int,unsigned int); }; #endif //__PADDEDBLOCK3D_H ./Geometry/PaddedBlock3D.cpp0000664000175000017500000001557712176660653015500 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/PaddedBlock3D.h" #include /*! Constructor of CPaddedBlock3d \param xmin minimum in x-direction \param xmax maximum in x-direction \param ymin minimum in y-direction \param ymax maximum in y-direction \param zmin minimum in z-direction \param zmax maximum in z-direction \param rmin minimum particle radius \param rmax maximum particle radius */ CPaddedBlock3D::CPaddedBlock3D(double xmin,double xmax,double ymin,double ymax,double zmin,double zmax,double rmin,double rmax,double ysplit,double pad,int dir,bool circ_x):CSplitBlock3D(xmin,xmax,ymin,ymax,zmin,zmax,rmin,rmax,ysplit,dir,circ_x) { m_pad_size=pad; } /*! Generate a random point within the space of the random part of the block */ Vec3 CPaddedBlock3D::getAPoint() { double px=0.0; double py=0.0; double pz=0.0; px=m_random(m_xmin+m_rmin,m_xmax-m_rmin); switch(m_dir){ case 2: { py=m_random(m_ymin+m_pad_size-m_rmin,m_ymax-m_pad_size+m_rmin); pz=m_random(m_zmin+m_rmin,m_zmax-m_rmin); } break; case 3: { py=m_random(m_ymin+m_rmin,m_ymax-m_rmin); pz=m_random(m_zmin+m_pad_size-m_rmin,m_zmax-m_pad_size+m_rmin); } break; } return Vec3(px,py,pz); } /*! generate regular padding sections */ void CPaddedBlock3D::generate_regular_padding() { // lower padding area // limits int kmin=0; int kmax=0; int jmin=0; int jmax=0; // x-dir int imin=int(floor(m_xmin/(m_rmax*2.0))); int imax=int(ceil((m_xmax+m_rmax)/(m_rmax*2.0))); switch(m_dir){ case 2: { jmin=int(floor(m_zmin/(m_rmax*sqrt(3.0)))); kmin=int(floor(m_ymin/(m_rmax*2.0*sqrt(2.0/3.0)))); jmax=int(ceil(m_zmax/(m_rmax*sqrt(3.0)))); kmax=int(ceil((m_ymin+m_pad_size-m_rmax)/(m_rmax*2.0*sqrt(2.0/3.0)))); } break; case 3: { jmin=int(floor(m_zmin/(m_rmax*sqrt(3.0)))); kmin=int(floor(m_ymin/(m_rmax*2.0*sqrt(2.0/3.0)))); jmax=int(ceil((m_zmin+m_pad_size-m_rmax)/(m_rmax*sqrt(3.0)))); kmax=int(ceil(m_ymax/(m_rmax*2.0*sqrt(2.0/3.0)))); } break; } // particles // lower padding area for(int i=imin;i<=imax;i++){ for(int j=jmin;jgetInteractions(m_iset,1.05); // remove interactions crossing the split for(set::iterator iter=m_iset.begin(); iter!=m_iset.end(); iter++){ double p1=0.0; double p2=0.0; switch(m_dir){ case 2: { p1=m_bpart[iter->first()].getPos().Y(); p2=m_bpart[iter->second()].getPos().Y(); break; } case 3: { p1=m_bpart[iter->first()].getPos().Z(); p2=m_bpart[iter->second()].getPos().Z(); break; } default: break; } double d1=m_ysplit-p1; double d2=m_ysplit-p2; if(d1*d2<0){ // on different sides set::iterator h=iter; iter++; m_iset.erase(h); iter--; } } } ./Geometry/AEdge.cpp0000664000175000017500000000416312176660653014107 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "AEdge.h" /*! construct Edge from corner coordinates. \param v0 first corner \param v1 second corner */ AEdge::AEdge(const Vec3& v0,const Vec3& v1) { m_p0=v0; m_p1=v1; } AEdge::~AEdge() {} /*! Get min. corner of axis-aligned bounding box */ Vec3 AEdge::getBoundingBoxMin() const { return cmin(m_p0,m_p1); } /*! Get max. corner of axis-aligned bounding box */ Vec3 AEdge::getBoundingBoxMax() const { return cmax(m_p0,m_p1); } /*! get distance between point and closest point along edge (incl. corners) \param p the point */ double AEdge::sep(const Vec3& p) const { double sep; Vec3 v=m_p1-m_p0; Vec3 vu=v.unit(); double d=((p-m_p0)*vu); if((d>0.0)&(d*d check corner distances double d1=(p-m_p0).norm(); double d2=(p-m_p1).norm(); sep=(d1 AEdge::dist(const Vec3& p) const { bool is_in=false; double dist=0.0; Vec3 v=m_p1-m_p0; Vec3 vu=v.unit(); double d=((p-m_p0)*vu); if((d>0.0)&(d*d void SphAggGougeBlock::visitParticles(TmplVisitor& visitor) { GougeBlock3D::visitParticles(visitor); for(vector::iterator it = m_grainParticleGen.begin(); it != m_grainParticleGen.end(); it++) { SphereBlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->visit(visitor); } } } /*! */ template void SphAggGougeBlock::visitParticles(TmplVisitor& visitor) const { GougeBlock3D::visitParticles(visitor); for(vector::iterator it = m_grainParticleGen.begin(); it != m_grainParticleGen.end(); it++) { SphereBlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->visit(visitor); } } } } // namespace lsm } // namespace esys ./Geometry/SphereFitter.hpp0000664000175000017500000000132712176660653015552 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { } } ./Geometry/LayeredBlock.cpp0000664000175000017500000000277612176660653015512 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/LayeredBlock.h" CLayeredBlock2D::CLayeredBlock2D(double xmin,double xmax,double ymin,double ymax,double rmin,double rmax):CRandomBlock2D(xmin,xmax,ymin,ymax,rmin,rmax,1.05) {} CLayeredBlock2D::~CLayeredBlock2D() {} void CLayeredBlock2D::addLayerBoundary(double d) { LayerBoundaries.insert(d);; } void CLayeredBlock2D::generate(int tries,unsigned int seed) { // generate particles CRandomBlock2D::generate(tries,seed); //-- set tags according to layer -- int nlayer=0; for(set::iterator it1=LayerBoundaries.begin(); it1!=LayerBoundaries.end(); it1++){ nlayer++; cout << "layer "<< nlayer << " bdry: " << *it1 << endl; for(vector::iterator iter=m_bpart.begin(); iter!=m_bpart.end(); iter++){ if(iter->getPos().Y()>*it1){ iter->setTag(nlayer); } } } } ./Geometry/GranularGougeBlock3D.h0000664000175000017500000000423012176660653016506 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ESYS_LSM_GRANULARGOUGEBLOCK3D_H #define __ESYS_LSM_GRANULARGOUGEBLOCK3D_H // --- project includes -- #include "Geometry/GougeBlock3D.h" namespace esys { namespace lsm { /*! \class GranularGougeBlock3D \brief Class to generate a 3d block of material consisting of a granular gouge between two solid blocks \author Steffen Abe $Revision$ $Date$ */ class GranularGougeBlock3D : public GougeBlock3D { private: vector m_grain_seeds; //!< seed points for grain generation algorithm void generateSeeds(double,double,double,double,double,double); public: GranularGougeBlock3D(const GougeBlockPrms &prms); virtual ~GranularGougeBlock3D(); virtual void createInteractionSet(); virtual void generate(); //virtual void generateGrains(double,double,double,double,double,double,int,int rm_threshold=0); virtual void generateGrains(double,double,double,double,double,double,int); }; /*! \class GranularInteractionValidator \brief Used to check the validity of an interaction in a GranularGougeBlock \author Steffen Abe $Revision$ $Date$ */ class GranularInteractionValidator { private: const GranularGougeBlock3D *m_pGougeBlock; double m_tolerance; public: GranularInteractionValidator(const GranularGougeBlock3D&, double); bool isValid(const SimpleParticle&, const SimpleParticle&) const; }; } } #endif // __ESYS_LSM_GRANULARGOUGEBLOCK3D_H ./Geometry/CubicBlockIterator.h0000664000175000017500000000364512176660653016325 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBLOCKITERATOR_H #define ESYS_LSMCUBICBLOCKITERATOR_H #include "Foundation/BoundingBox.h" #include "Foundation/vec3.h" #include "Geometry/ClosePackIterator.h" #include "Geometry/Vec3L.h" namespace esys { namespace lsm { /** * Class for iterating over the centre-points of spheres arranged * in a cubic-close-packed (face-centred-close packed). */ class CubicBlockIterator : public ClosePackIterator { public: /** * Creates default empty iterator. */ inline CubicBlockIterator(); /** * Creates an iterator which will iterate over numI*numJ*numK * centre points of spheres with radius sphereRadius. * @param numI number of spheres in the i direction. * @param numJ number of spheres in the j direction. * @param numK number of spheres in the k direction. * @param sphereRadius radius of spheres in the packing. * @param orientation specifies the axis alignment of layers. */ inline CubicBlockIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation = DEFAULT_ORIENT ); }; } } #include "Geometry/CubicBlockIterator.hpp" #endif ./Geometry/SphereNeighbours.cpp0000664000175000017500000000132312176660653016411 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SphereNeighbours.h" ./Geometry/RandomBlock3D.h0000664000175000017500000000370512176660653015172 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RANDOMBLOCK3D_H #define __RANDOMBLOCK3D_H //-- project includes -- #include "Geometry/SimpleParticle.h" #include "Geometry/SimpleNTable.h" #include "Geometry/Sphere2d.h" #include "Geometry/Line.h" #include "Geometry/RandomAssembly3D.h" //-- STL includes -- #include #include #include using std::vector; using std::string; using std::pair; /*! \class CRandomBlock3D \brief Class for the generation of a 3D random lattice in a rectangular area. \author Steffen Abe $Revision$ $Date$ */ class CRandomBlock3D : public ARandomAssembly3D { private: bool m_is_bonded; protected: virtual Vec3 getAPoint(); virtual int getNParts() const{return m_bpart.size();}; double m_maxConnDist; public: CRandomBlock3D(double,double,double,double,double,double,double,double,double,bool,bool is_bonded=true); virtual ~CRandomBlock3D(); virtual void generate(int,unsigned int); virtual void insertParticle(const SimpleParticle); //virtual void tagParticleClosestTo(const Vec3&,int); virtual void tagEdgeY(int,int,double); virtual void tagEdgeZ(int,int,double); virtual void writeToGeoFile(const string&); virtual double calcPorosity(); virtual vector > getSizeDistribution(int); }; #endif // __RANDOMBLOCK3D_H ./Geometry/GrainRandomBoxPacker.hpp0000664000175000017500000002040112176660653017140 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/GrainRandomBoxPacker.h" #include "Geometry/SphereFitter.h" #include #include #include namespace esys { namespace lsm { template class TRndPackWrap> GrainRandomBoxPacker::GrainRandomBoxPacker( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector, GrainPoolPtr grainPoolPtr ) : Inherited( particleGrainGenPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius, maxInsertionFailures, fitPlaneVector ), m_grainCollectionPtr(new GrainCollection(particlePoolPtr, grainPoolPtr)) { } template class TRndPackWrap> GrainRandomBoxPacker::GrainRandomBoxPacker( ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures ) : Inherited( particleGrainGenPtr, particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance, cubicPackRadius, maxInsertionFailures ), m_grainCollectionPtr(new GrainCollection(particlePoolPtr)) { } template class TRndPackWrap> GrainRandomBoxPacker::~GrainRandomBoxPacker() { } template class TRndPackWrap> const typename GrainRandomBoxPacker::GrainCollection & GrainRandomBoxPacker::getGrainCollection() const { return *(m_grainCollectionPtr.get()); } template class TRndPackWrap> typename GrainRandomBoxPacker::GrainCollection & GrainRandomBoxPacker::getGrainCollection() { return *(m_grainCollectionPtr.get()); } template class TRndPackWrap> typename GrainRandomBoxPacker::GrainIterator GrainRandomBoxPacker::getGrainIterator() { return getGrainCollection().getGrainIterator(); } template class TRndPackWrap> typename GrainRandomBoxPacker::GrainConstIterator GrainRandomBoxPacker::getGrainIterator() const { return getGrainCollection().getGrainIterator(); } template class TRndPackWrap> int GrainRandomBoxPacker::getNumGrains() const { return getGrainCollection().getNumGrains(); } template class TRndPackWrap> typename GrainRandomBoxPacker::ParticleGrainGen & GrainRandomBoxPacker::getParticleGrainGen() { return Inherited::getParticleGenerator(); } template class TRndPackWrap> const typename GrainRandomBoxPacker::ParticleGrainGen & GrainRandomBoxPacker::getParticleGrainGen() const { return Inherited::getParticleGenerator(); } template class TRndPackWrap> void GrainRandomBoxPacker::setParticleGrainGen( ParticleGrainGen &particleGrainGen ) { this->setParticleGenerator(particleGrainGen); } template class TRndPackWrap> void GrainRandomBoxPacker::setParticleGrainGen( ParticleGrainGenPtr particleGrainGenPtr ) { setParticleGenerator(particleGrainGenPtr); } template class TRndPackWrap> typename GrainRandomBoxPacker::GrainId GrainRandomBoxPacker::getNextGrainId() const { return m_grainCollectionPtr->getNumGrains(); } template class TRndPackWrap> typename GrainRandomBoxPacker::Grain & GrainRandomBoxPacker::constructGrain() { return m_grainCollectionPtr->createGrain(); } template class TRndPackWrap> typename GrainRandomBoxPacker::Grain & GrainRandomBoxPacker::createAndInsertGrain( const Grain &grain ) { Grain &g = constructGrain(); g.setId(getNextGrainId()); typename Grain::ParticleConstIterator it = grain.getParticleIterator(); while (it.hasNext()) { g.insertRef(this->createAndInsertParticle(it.next())); } return g; } template class TRndPackWrap> void GrainRandomBoxPacker::generateCubicPackingGrains() { GridIterator pointIt = GridIterator(this->getBBox(), this->getCubicPackingRadius()); while (pointIt.hasNext()) { const Particle candidate = this->getCandidateParticle(pointIt.next(), this->getCubicPackingRadius()); if (this->particleFitsInBBoxWithNeighbours(candidate)) { createAndInsertGrain(getParticleGrainGen().getGrain(candidate)); } } } template class TRndPackWrap> void GrainRandomBoxPacker::generateRandomFillGrains() { StuffedParticleIterator it = StuffedParticleIterator( *this, this->getMaxInsertionFailures(), this->getFitPlaneVector() ); while (it.hasNext()) { createAndInsertGrain(getParticleGrainGen().getGrain(it.next())); } it.logInfo(); } template class TRndPackWrap> void GrainRandomBoxPacker::generate() { generateCubicPackingGrains(); generateRandomFillGrains(); } } } ./Geometry/SphereBoxVolCalculator.cpp0000664000175000017500000000140512176660653017530 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SphereBoxVolCalculator.h" namespace esys { namespace lsm { } } ./Geometry/CubicBoxPacker.hpp0000664000175000017500000001076012176660653015773 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { template CubicBoxPacker::CubicBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius ) : Inherited( particlePoolPtr, nTablePtr, bBox, periodicDimensions, tolerance ), m_cubicPackRadius(cubicPackRadius), m_particleGeneratorPtr(particleGeneratorPtr), m_pParticleGenerator(particleGeneratorPtr.get()) { } template CubicBoxPacker::~CubicBoxPacker() { } template const typename CubicBoxPacker::ParticleGenerator & CubicBoxPacker::getParticleGenerator() const { return *m_pParticleGenerator; } template typename CubicBoxPacker::ParticleGenerator & CubicBoxPacker::getParticleGenerator() { return *m_pParticleGenerator; } template void CubicBoxPacker::setParticleGenerator( ParticleGenerator &particleGenerator ) { m_pParticleGenerator = &particleGenerator; m_particleGeneratorPtr = ParticleGeneratorPtr(); } template void CubicBoxPacker::setParticleGenerator( ParticleGeneratorPtr particleGeneratorPtr ) { m_particleGeneratorPtr = particleGeneratorPtr; m_pParticleGenerator = m_particleGeneratorPtr.get(); } template double CubicBoxPacker::getCubicPackingRadius() const { return m_cubicPackRadius; } template typename CubicBoxPacker::Particle CubicBoxPacker::getCandidateParticle( const Vec3 &point, double radius ) { return getParticleGenerator().getParticle(point, radius); } template typename CubicBoxPacker::Particle CubicBoxPacker::getCandidateParticle( const Vec3 &point ) { return getParticleGenerator().getParticle(point); } template void CubicBoxPacker::generateCubicPacking() { GridIterator pointIt = GridIterator(this->getBBox(), getCubicPackingRadius()); while (pointIt.hasNext()) { const Particle candidate = getCandidateParticle(pointIt.next(), getCubicPackingRadius()); if (this->particleFitsInBBoxWithNeighbours(candidate)) { this->createAndInsertParticle(candidate); } } } template void CubicBoxPacker::generate() { generateCubicPacking(); } } } ./Geometry/SphereBlockGenerator.cpp0000664000175000017500000002346612176660653017221 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/SphereBlockGenerator.h" // -- project includes --- #include "Foundation/BoundingBox.h" #include "Geometry/GridIterator.h" #include "Geometry/Sphere3d.h" // -- system include --- #include using std::rand; namespace esys { namespace lsm { /*! constructor \param ntable the neigbour table to be used \param pool the particle pool \param tol the fitting tolerance \param pos center position \param rad radius \param rmin minimum particle radius \param rmax maximum particle radius \param ntries max. nr. of tries */ SphereBlockGenerator::SphereBlockGenerator(NTable& ntable,ParticlePool& pool,double tol,const Vec3& pos,double rad,double rmin,double rmax,int ntries,int tag) :ParticleGenerator(ntable, pool) { m_tol=tol; m_center=pos; m_radius=rad; m_min_rad=rmin; m_max_rad=rmax; m_max_tries=ntries; m_tag=tag; } /*! destructor */ SphereBlockGenerator::~SphereBlockGenerator() {} /*! get next available particle ID */ int SphereBlockGenerator::getNextId() { return static_cast(getNTable().getNumParticles()); } /*! generate a particle at a given position \param point */ SimpleParticle SphereBlockGenerator::generateParticle(const Vec3 &point) { return SimpleParticle(point, getRadius(), getNextId(),m_tag); } /*! get a random point inside the sphere */ Vec3 SphereBlockGenerator::getAPoint() { Vec3 res; do{ double x=m_radius*(1.0-2.0*((static_cast(rand()))/(static_cast(RAND_MAX)))); double y=m_radius*(1.0-2.0*((static_cast(rand()))/(static_cast(RAND_MAX)))); double z=m_radius*(1.0-2.0*((static_cast(rand()))/(static_cast(RAND_MAX)))); res=Vec3(x,y,z); } while (res.norm()>=m_radius); return m_center+res; } /*! ?? */ double SphereBlockGenerator::getRadius() const { return m_min_rad+((m_max_rad-m_min_rad)*(static_cast(rand()))/(static_cast(RAND_MAX))); } /*! return max. radius to be used as spacing for grid iterator */ double SphereBlockGenerator::getGridRadius() const { return m_max_rad; } /*! check particle fit */ bool SphereBlockGenerator::particleFits(const SimpleParticle &particle) const { bool radius_fit=(particle.getRad() >= m_min_rad) && (particle.getRad() <= m_max_rad); bool inside=((m_center-particle.getPos()).norm()<=(m_radius-particle.getRad())); return radius_fit && inside; } /*! calculate & return bounding box for bounding sphere */ const BoundingBox SphereBlockGenerator::getBBox() const { Vec3 minvec=m_center-Vec3(m_radius,m_radius,m_radius); Vec3 maxvec=m_center+Vec3(m_radius,m_radius,m_radius); return BoundingBox(minvec,maxvec); } /*! insert particle \param particle */ void SphereBlockGenerator::insertParticle(const SimpleParticle &particle) { SimpleParticle *pParticle = getParticlePool().construct(particle); pParticle->setTag(m_tag); m_particleVector.push_back(pParticle); m_idSet.insert(pParticle->getID()); getNTable().insert(pParticle); } /*! generate particles */ void SphereBlockGenerator::generate() { generateSeedParticles(); generateFillParticles(); } /*! generate seed particles */ void SphereBlockGenerator::generateSeedParticles() { // setup grid iterator GridIterator pointIt = GridIterator(getBBox(), getGridRadius()); // run through grid while (pointIt.hasNext()) { SimpleParticle particle = generateParticle(pointIt.next()); if (particleFits(particle)) { insertParticle(particle); } } } /*! get closes Neigbours \param P the particle \param np the number of neighbours */ vector SphereBlockGenerator::getClosestNeighbors(const SimpleParticle& P,int np) { vector nv=getNTable().getUniqueNeighbourVector(P.getPos(), m_max_rad + m_tol); std::sort(nv.begin(), nv.end(), ParticleComparer(P)); if (nv.size() > static_cast(np)) { nv.erase(nv.begin() + np, nv.end()); } return nv; } /*! Find a fit for a sphere using the list of neigbors and the outer sphere \param Po the particle to fit \param NL the list of neighbors */ bool SphereBlockGenerator::findAFitWithSphere(SimpleParticle& Po, const vector& NL) { // cout << "findAFit - 3 particles + outer\n"; bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); if(NL.size()<3){ find_a_fit=false; // cout << "less than 3 neighbors" << endl; // can't happen } else { Vec3 Pos1=m_center; Vec3 Pos2=NL[0]->getPos(); Vec3 Pos3=NL[1]->getPos(); Vec3 Pos4=NL[2]->getPos(); double r1=-1.0*m_radius; double r2=NL[0]->getRad(); double r3=NL[1]->getRad(); double r4=NL[2]->getRad(); find_a_fit=Sphere3D::FillIn(Pos1,Pos2,Pos3,Pos4,r1,r2,r3,r4,M,r); Po=SimpleParticle(M,r,id,m_tag); // cout << "found " << M << " , " << r << endl; } return find_a_fit ; } /*! Find a fit for a sphere using the list of neigbors \param Po the particle to fit \param NL the list of neighbors */ bool SphereBlockGenerator::findAFit(SimpleParticle& Po, const vector& NL) { // cout << "findAFit - 4 particles\n"; bool find_a_fit ; Vec3 M; double r; int id=Po.getID(); if(NL.size()<4){ find_a_fit=false; // cout << "less than 4 neighbors" << endl; // can't happen } else { Vec3 Pos1=NL[0]->getPos(); Vec3 Pos2=NL[1]->getPos(); Vec3 Pos3=NL[2]->getPos(); Vec3 Pos4=NL[3]->getPos(); double r1=NL[0]->getRad(); double r2=NL[1]->getRad(); double r3=NL[2]->getRad(); double r4=NL[3]->getRad(); find_a_fit=Sphere3D::FillIn(Pos1,Pos2,Pos3,Pos4,r1,r2,r3,r4,M,r); Po=SimpleParticle(M,r,id,m_tag); // cout << "found " << M << " , " << r << endl; } return find_a_fit ; } /*! check if Po is within the Space and is not crossing any boundary or overlapping with other particles. \param Po the particle */ bool SphereBlockGenerator::checkAFit(const SimpleParticle& Po) { bool fail=false; // check vs. radius fail=!particleFits(Po); // check vs. all neighbors if(!fail){ vector NL=getNTable().getUniqueNeighbourVector(Po.getPos(), m_max_rad + m_tol);; vector::const_iterator iter=NL.begin(); while(!fail && iter!=NL.end()){ double dist=(Po.getPos()-(*iter)->getPos()).norm()+m_tol; if(dist < (Po.getRad()+(*iter)->getRad())){ fail=true; //cout << "Fail : particle collision" << endl; } iter++; } } return !fail ; } /*! fill in */ void SphereBlockGenerator::generateFillParticles() { int countfail=0; int countfound=0; //bool fail,findfit; bool findfit=false; //bool foundwithsphere=false; cout << "SphereBlockGenerator::generateFillParticles" << endl; while(countfail T4=getClosestNeighbors(Po,4); if(T4.size()>3){ // at least 4 neighbors SimpleParticle* Pi=T4[0]; double ndist=(Po.getPos()-Pi->getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi->getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi->getPos()+((Po.getPos()-Pi->getPos())*(Pi->getRad()/ndist)); Po.moveTo(npos); } double dist_p=m_radius-(Po.getRad()+(m_center-Po.getPos()).norm()); // distance between Po and outer sphere double dist_3=(Po.getPos()-T4[3]->getPos()).norm()-T4[3]->getRad(); if (dist_p>dist_3){ // 4th particle closer than plane -> fit 4 particles findfit=findAFit(Po,T4); } else { // outer sphere closer than 4th particle -> fit 3 particles + outer sphere findfit=findAFitWithSphere(Po,T4); } } } else { // 3 neighbors -> try 3 particles + outer sphere SimpleParticle* Pi=T4[0]; double ndist=(Po.getPos()-Pi->getPos()).norm(); if( ndist==0.0){ findfit=false; } else { if( ndist < Pi->getRad()){ // if Po inside Pi -> move Po to the surface of Pi Vec3 npos=Pi->getPos()+((Po.getPos()-Pi->getPos())*(Pi->getRad()/ndist)); Po.moveTo(npos); } findfit=findAFitWithSphere(Po,T4); } } if(findfit){ // found something, check findfit=checkAFit(Po); } if(findfit){ // found & checked -> insert insertParticle(Po); if(countfail*10>m_max_tries){ cout << "found particle " << Po.getID() << " after " << countfail << " tries" << endl; } countfail=0; countfound++; } else { countfail++; } } cout << "end SphereBlockGenerator::generateFillParticles" << endl; } } } ./Geometry/SphereNeighbours.h0000664000175000017500000001022512176660653016057 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSPHERENEIGHBOURS_H #define ESYS_LSMSPHERENEIGHBOURS_H #include "Geometry/CircularNeighbourTable.h" #include "Geometry/BasicInteraction.h" #include #include #include #include #include namespace esys { namespace lsm { /** * */ template class SphereNeighbours { public: typedef int Id; typedef TmplSphere Sphere; typedef TmplIdPairVector IdPairVector; typedef typename IdPairVector::value_type IdPair; class Cmp { public: bool operator()(const IdPair &c1, const IdPair &c2) const { return ( (c1.first < c2.first) || ( (c1.first == c2.first) && ( (c1.second < c2.second) ) ) ); } bool operator()(const IdPair *c1, const IdPair *c2) const { return (*this)(*c1, *c2); } }; public: typedef std::set IdPairSet; typedef std::set ConstIdPairSet; typedef std::vector SphereVector; typedef CircularNeighbourTable NTable; typedef typename NTable::ParticleIterator SphereIterator; typedef typename NTable::ParticleConstIterator SphereConstIterator; public: typedef typename NTable::BoolVector BoolVector; SphereNeighbours( double maxDist, const BoundingBox &bBox = BoundingBox(Vec3(-10,-10,-10), Vec3(10,10,10)), const BoolVector &circDimensions = BoolVector(3, false) ); ~SphereNeighbours(); int getNumSpheres() const; int getNumIdPairs() const; double getMinRadius() const; double getMaxRadius() const; SphereConstIterator getSphereIterator() const; BoundingBox getSphereBBox() const; template IdPairVector getNeighbours(TmplSphereIterator it); typedef ForwardConstIterator IdPairConstIterator; class ConstIterator : public IdPairConstIterator { public: typedef const IdPair& value_type; typedef const IdPair& reference; ConstIterator(const IdPairSet &set) : IdPairConstIterator(set) { } value_type next() { return *(IdPairConstIterator::next()); } value_type current() const { return *(IdPairConstIterator::current()); } }; typedef ConstIterator Iterator; Iterator getIterator() const { return Iterator(m_connectionSet); } protected: void insert(Sphere &p); const IdPair &createIdPair(const Sphere &p1, const Sphere &p2); private: typedef boost::shared_ptr NTablePtr; typedef boost::object_pool IdPairPool; typedef boost::shared_ptr IdPairPoolPtr; IdPairPoolPtr m_connectionPoolPtr; IdPairSet m_connectionSet; NTablePtr m_nTablePtr; double m_minRadius; double m_maxRadius; double m_maxDist; Vec3 m_minPt; Vec3 m_maxPt; }; } } #include "Geometry/SphereNeighbours.hpp" #endif ./Geometry/HexagBlock.h0000664000175000017500000000254512176660653014620 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMHEXAGBLOCK_H #define ESYS_LSMHEXAGBLOCK_H #include "Geometry/SimpleParticle.h" #include "Geometry/HexagBlockIterator.h" #include "Geometry/ClosePackBlock.h" namespace esys { namespace lsm { template class HexagBlock : public ClosePackBlock { public: typedef ClosePackBlock Inherited; HexagBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius = 0.5, ClosePackOrientation orientation = DEFAULT_ORIENT ); }; } } #include "Geometry/HexagBlock.hpp" #endif ./Geometry/SphAggGougeBlock.h0000664000175000017500000000505012176660653015716 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ESYS_LSM_SPHAGGGOUGEBLOCK3D_H #define __ESYS_LSM_SPHAGGGOUGEBLOCK3D_H // --- project includes -- #include "Foundation/vec3.h" #include "Geometry/GougeBlock3D.h" #include "Geometry/SimpleParticle.h" #include "Geometry/SphereBlockGenerator.h" // --- STL includes --- #include using std::vector; namespace esys { namespace lsm { /*! \class SphAggGougeBlock \brief Block of gouge consisting of spherical aggregate grains */ class SphAggGougeBlock : public GougeBlock3D { public: typedef boost::shared_ptr SBG_ptr; protected: double m_min_rad_grain; double m_max_rad_grain; vector m_macro_grains; NTablePtr m_nTablePtr2; ParticlePoolPtr m_particlePoolPtr2; GeneratorPtr m_grainGen; vector m_grainParticleGen; int m_min_grain_tag; void generateMacroGrains(); void fillMacroGrains(); void setupNT2(); void createInteractionSet(); virtual void createGougeBlockGenerators(); public: SphAggGougeBlock(const GougeBlockPrms&,double,double,int); virtual void generate(); template void visitParticles(TmplVisitor&); template void visitParticles(TmplVisitor&) const; }; /*! \class SphAggInteractionValidator \brief Used to check the validity of an interaction in a SphAggGougeBlock \author Steffen Abe $Revision$ $Date$ */ class SphAggInteractionValidator { private: const SphAggGougeBlock *m_pGougeBlock; double m_tolerance; int m_grain_tag; public: SphAggInteractionValidator(const SphAggGougeBlock&, double,int); bool isValid(const SimpleParticle&, const SimpleParticle&) const; }; } } #include "SphAggGougeBlock.hpp" #endif // __ESYS_LSM_SPHAGGGOUGEBLOCK3D_H ./Geometry/Corner2D.cpp0000664000175000017500000000547712176660653014571 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Corner2D.h" #include "console.h" /*! constructor, make sure Z=0; \param pos the position of the corner \param id the node id */ Corner2D::Corner2D(const Vec3& pos, int id) { m_p=pos; m_p.Z()=0.0; m_id=id; } /*! add Edge to corner \param edge a pointer to the edge */ void Corner2D::addEdge(Edge2D* edge) { m_edges.push_back(edge); } /*! get distance between corner and point \param p the point */ double Corner2D::sep(const Vec3& p) const { return (m_p-p).norm(); } /*! check if the contact between a particle at a point and the corner is valid or if there is a contact between the particle and any of the adjacent edges or triangles \param p the center of the particle */ bool Corner2D::isValidContact(const Vec3& p) const { bool res=true; // check vs. Edges vector::const_iterator eiter=m_edges.begin(); while((eiter!=m_edges.end())&&(res)){ res=!((*eiter)->dist(p).first); eiter++; } return res; } /*! get the unit direction vector between a point and the corner \param p the point */ Vec3 Corner2D::getDirectionFromPoint(const Vec3& p) const { return (p-m_p).unit(); } /*! move the corner, make sure Z=0; \param d the displacement */ void Corner2D::move(const Vec3& d) { m_p+=d; m_p.Z()=0.0; } /*! get normal of an edge \param idx which egde (1,2) to get */ Vec3 Corner2D::getEdgeNormal(int idx) const { Vec3 res; if((idx==1) && (m_edges.size()>=1)) { res=(m_edges[0])->getNormal(); } else if ((idx==2) && (m_edges.size()>=2)) { res=(m_edges[1])->getNormal(); } else { console.Error() << "Error in Corner2D::getEdgeNormal: idx=" << idx << " nr. of edges: " << m_edges.size() << "\n"; } return res; } /*! apply force to one of the attached edges \param idx which egde (1,2) \param F the force */ void Corner2D::applyForceToEdge(int idx,const Vec3& f) { if((idx==1) && (m_edges.size()>=1)) { (m_edges[0])->applyForce(f); } else if ((idx==2) && (m_edges.size()>=2)) { (m_edges[1])->applyForce(f); } else { console.Error() << "Error in Corner2D::applyForceToEdge : idx=" << idx << " nr. of edges: " << m_edges.size() << "\n"; } } ./Geometry/CircleBoxVolCalculator.h0000664000175000017500000000275112176660653017155 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCIRCLEBOXVOLCALCULATOR_H #define ESYS_LSMCIRCLEBOXVOLCALCULATOR_H #include "Foundation/vec3.h" #include "Geometry/IntersectionVolCalculator.h" namespace esys { namespace lsm { /** * Calculates the area of intersection between a rectangle and * a circle. */ class CircleBoxVolCalculator : public impl::IntersectionVolCalculator<2, Vec3> { public: typedef impl::IntersectionVolCalculator<2, Vec3> Inherited; typedef Inherited::BasicSphere Sphere; typedef Inherited::BasicBox Box; CircleBoxVolCalculator( const Box &box ) : Inherited(box) { } double getVolume(const Sphere &sphere) { return Inherited::getVolume(sphere); } private: }; } } #endif ./Geometry/ParticleCollection.h0000664000175000017500000001077412176660653016373 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMPARTICLECOLLECTION_H #define ESYS_LSMPARTICLECOLLECTION_H #include "Foundation/BoundingBox.h" #include "Foundation/StlIterator.h" #include "Geometry/Vec3L.h" #include #include #include #include namespace esys { namespace lsm { /** * */ template class ParticleCollection { public: typedef TmplParticle Particle; typedef boost::object_pool ParticlePool; typedef boost::shared_ptr ParticlePoolPtr; private: typedef std::vector ParticleVector; typedef ForwardIterator VectorIterator; typedef ForwardConstIterator VectorConstIterator; public: class ParticleIterator : public VectorIterator { public: typedef Particle& value_type; ParticleIterator(const VectorIterator &it) : VectorIterator(it) { } value_type next() { return *(VectorIterator::next()); } value_type current() const { return *(VectorIterator::current()); } }; class ParticleConstIterator : public VectorConstIterator { public: typedef const Particle& value_type; ParticleConstIterator(const VectorConstIterator &it) : VectorConstIterator(it) { } ParticleConstIterator(const VectorIterator &it) : VectorConstIterator(it) { } value_type next() { return *(VectorConstIterator::next()); } value_type current() const { return *(VectorConstIterator::current()); } }; ParticleCollection(); ParticleCollection(ParticlePoolPtr particlePoolPtr); ParticleCollection(const ParticleCollection &p); ParticleCollection &operator=(const ParticleCollection &p); virtual ~ParticleCollection(); int getNumParticles() const; BoundingBox getParticleBBox() const; ParticleIterator getParticleIterator() { return ParticleIterator(VectorIterator(m_particleVector)); } ParticleConstIterator getParticleIterator() const { return ParticleConstIterator(VectorConstIterator(m_particleVector)); } /** * Translates all particle positions by the specified mount. * * @param vec Translation increment. */ void translateBy(const Vec3 &vec); /** * Rotates all particles according to the specified rotation. * * @param rotation Specifies rotation-axis and magnitude, * ie angle = rotation.norm() radians. * @param posn Specifies position of the rotation vector. */ void rotate(const Vec3 &rotation, const Vec3 &posn); /** * Increments all particle Id's by the specifed amount. * * @param idIncr Increment. */ void incrementIdBy(typename Particle::Id idIncr); /** * Adds the specifed particle reference to this collection. * @param p Reference to p is inserted. */ void insertRef(Particle &p); /** * Creates a new particle constructed particle from p. * @param p Create particle copy constructed from p. * @return returns reference to newly constructed particle. */ Particle &createParticle(const Particle &p); protected: /** * Adds the specifed particle reference to this collection. * @param p Reference to p is inserted. */ void noCheckInsertRef(Particle &p); private: ParticlePoolPtr m_particlePoolPtr; ParticleVector m_particleVector; }; } } #include "Geometry/ParticleCollection.hpp" #endif ./Geometry/CircularNeighbourTable.cpp0000664000175000017500000000140512176660653017515 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/CircularNeighbourTable.h" namespace esys { namespace lsm { } } ./Geometry/IntersectionVolCalculator.h0000664000175000017500000001365012176660653017751 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSM_IMPLINTERSECTIONVOLCALCULATOR_H #define ESYS_LSM_IMPLINTERSECTIONVOLCALCULATOR_H #include namespace esys { namespace lsm { namespace impl { double square(double val); template class DimBasicBox { public: typedef TmplVec Vec; DimBasicBox(const Vec &minPt, const Vec &maxPt); const Vec &getMinPt() const; const Vec &getMaxPt() const; double getVolume() const; template bool intersectsWith(const TmplSphere &sphere) const; bool intersectsWith(const Vec &pt) const; template bool contains(const TmplSphere &sphere) const; private: Vec m_minPt; Vec m_maxPt; }; template class DimPlane { public: typedef TmplVec Vec; static double norm(const Vec &pt); static double dot(const Vec &p1, const Vec &p2); DimPlane(); DimPlane(const Vec &normal, const Vec &pt); DimPlane(const DimPlane &plane); DimPlane &operator=(const DimPlane &plane); double getSignedDistanceTo(const Vec &pt) const; double getDistanceTo(const Vec &pt) const; const Vec &getNormal() const; private: Vec m_normal; Vec m_pt; double m_invNormalNorm; }; template class DimBasicSphere { public: typedef TmplVec Vec; typedef DimPlane Plane; static const double FOUR_THIRDS_PI; static const double ONE_THIRD_PI; DimBasicSphere(); DimBasicSphere(const Vec ¢rePt, double radius); DimBasicSphere(const DimBasicSphere &sphere); DimBasicSphere &operator=(const DimBasicSphere &sphere); double getRadius() const; const Vec &getCentre() const; double getVolume() const; double getVolume(const Vec &minPt, const Vec &maxPt, const int dimX = 0, const int dimY = 1) const; bool intersectsWith(const Vec &pt) const; double getSegmentVolume(const Plane &plane) const; private: Vec m_centre; double m_radius; }; template class IntersectionVolCalculator { public: typedef TmplVec Vec; typedef DimBasicSphere BasicSphere; typedef DimBasicBox BasicBox; typedef DimPlane Plane; static Vec getNormal(int dim); static Vec getNegNormal(int dim); class VolumeSphere { public: VolumeSphere(); VolumeSphere(const BasicSphere &sphere); VolumeSphere(const VolumeSphere &sphere); VolumeSphere &operator=(const VolumeSphere &sphere); double getRadius() const; const Vec &getCentre() const; double getVolume() const; double getVolume(const Vec &minPt, const Vec &maxPt, const int dimX = 0, const int dimY = 1) const; double calcVolume() const; bool intersectsWith(const Vec &pt) const; double getSegmentVolume(const Plane &plane) const; private: BasicSphere m_sphere; double m_volume; }; class Vertex { public: Vertex(); Vertex(const Vec &pt); Vertex(const Vertex &vtx); Vertex &operator=(const Vertex &vtx); const Vec &getPoint() const; void setPoint(const Vec &pt); private: Vec m_pt; }; class VertexBox : public BasicBox { public: VertexBox(const BasicBox &box); VertexBox(const VertexBox &box); VertexBox &operator=(const VertexBox &box); void createVertices(); const Vertex &getVertex(int i) const; static int getNumVertices(); private: static const int s_numVertices = ((tmplDim == 2) ? 4 : 8); Vertex m_vertexArray[s_numVertices]; }; IntersectionVolCalculator(const BasicBox &box); const VolumeSphere &getSphere() const; void setSphere(const BasicSphere &sphere); const BasicBox &getBox() const; const VertexBox &getVertexBox() const; static Vec componentMin(const Vec &p1, const Vec &p2); static Vec componentMax(const Vec &p1, const Vec &p2); double getInsidePointVolume(const Vec &pt) const; double getTwoPlaneVolume(const Vec &pt, const int orientDim) const; double getOutsidePointVolume(const Vec &pt) const; double getVolume(const Vertex &vtx); double getVertexVolume(const BasicSphere &sphere); bool sphereContainsBox(const BasicSphere &sphere) const; double getVolume(const BasicSphere &sphere); private: VolumeSphere m_sphere; VertexBox m_box; }; } } } #include "Geometry/IntersectionVolCalculator.hpp" #endif ./Geometry/RandomAssembly2D.h0000664000175000017500000000377412176660653015724 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __RANDOMASSEMBLY2D_H #define __RANDOMASSEMBLY2D_H //-- project includes -- #include "Geometry/ARandomAssembly.h" #include "Geometry/SimpleParticle.h" #include "Geometry/BasicInteraction.h" #include "Geometry/Sphere2d.h" #include "Geometry/Line.h" //-- STL includes -- #include using std::vector; /*! \class ARandomAssembly2D \brief Abstract base class for random assemblies, to be used for initialization of random lattices. \author Steffen Abe $Revision$ $Date$ */ class ARandomAssembly2D : public ARandomAssembly { protected: vector Borders; double m_rmin,m_rmax; //!< min/max particle radius double m_xmin,m_xmax,m_ymin,m_ymax; //!< x,y borders of the lattice bool m_circ_x; virtual Vec3 getAPoint()=0; bool isInSpace(const Vec3&); bool findAFit(SimpleParticle&, const vector&, const Line&); bool findAFit(SimpleParticle&, const vector&); virtual bool checkAFit(const SimpleParticle&); virtual Line *getClosestPlane(const SimpleParticle&); void fillSpace(int); virtual int getNParts() const=0; public: virtual void generate(int,unsigned int)=0; virtual void insertParticle(const SimpleParticle)=0; virtual void tagParticleClosestTo(const Vec3&,int)=0; virtual void tagEdgeY(int,int,double)=0; }; #endif // __RANDOMASSEMBLY2D_H ./Geometry/Vec3L.cpp0000664000175000017500000000136412176660653014056 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Vec3L.h" namespace esys { namespace lsm { } } ./Geometry/SimpleParticle.h0000664000175000017500000000440712176660653015525 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef SIMPLEPARTICLE_H #define SIMPLEPARTICLE_H #include "Foundation/console.h" #include "Foundation/vec3.h" #include "Geometry/SimpleParticleData.h" /** * */ class SimpleParticle : public esys::lsm::SimpleParticleData { public: static const SimpleParticle INVALID; inline SimpleParticle(const Vec3 &posn, double radius, int id=0, int tag=0); inline SimpleParticle(const SimpleParticle &p); inline SimpleParticle &operator=(const SimpleParticle &p); inline const Vec3 &getPos() const; inline void setPos(const Vec3 &pos); inline void moveTo(const Vec3 &v); inline void translateBy(const Vec3 &v); inline void moveBy(const Vec3 &v); inline void rotate(const Vec3 &rotation, const Vec3 &posn); inline double getRad() const; inline void setRad(double r); inline bool isValid() const; template void visit(const TmplVisitor &visitor) const; template void visit(TmplVisitor &visitor); }; inline std::ostream& operator<<(std::ostream &oStream, const SimpleParticle &particle); /*! \class ParticleComparer \brief Compares distance of 2 particles to a 3rd particle $Date$ $Revision$ */ class ParticleComparer { private: const SimpleParticle *m_pParticle; public: /** * Construct a comparison object for distances to a given particle. * *@param particle */ inline ParticleComparer(const SimpleParticle&); inline bool operator()(const SimpleParticle&, const SimpleParticle&) const; inline bool operator()(const SimpleParticle*, const SimpleParticle*) const; }; #include "Geometry/SimpleParticle.hpp" #endif ./Geometry/PointCloud.h0000664000175000017500000000224212176660653014663 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __POINTCLOUD_H #define __POINTCLOUD_H // --- project includes --- #include "Foundation/vec3.h" #include "Geometry/Plane3D.h" // --- STL includes --- #include using std::vector; /*! \class PointCloud \brief A class representing a cloud.of points \author Steffen Abe $Revision$ $Date$ */ class PointCloud { private: vector m_points; public: PointCloud(); Vec3 getCenter(); void addPoint(const Vec3&); Plane3D getFitPlane(); }; #endif // __POINTCLOUD_H ./Geometry/CircularNeighbourTable.hpp0000664000175000017500000002254512176660653017532 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCIRCULARNEIGHBOURTABLE_HPP #define ESYS_LSMCIRCULARNEIGHBOURTABLE_HPP #include "Geometry/NeighbourTable.h" #include #include #include #include #include namespace esys { namespace lsm { /** * */ template CircularNeighbourTable::CircularNeighbourTable( const BoundingBox &bBox, double gridSpacing, const BoolVector &periodicDimensions, double circBorderWidth ) : Inherited(bBox, gridSpacing), m_periodicDimensions(periodicDimensions), m_particlePoolPtr(new ParticlePool(4096)), m_clonedParticleSet(), m_circGridWidth(1), m_periodicDimIndex(-1) { checkPeriodicDimensions(); if (circBorderWidth <= 0.0) { circBorderWidth = this->getGridSpacing(); } setCircularBorderWidth(circBorderWidth, this->getGridSpacing()); } template CircularNeighbourTable::CircularNeighbourTable( const BoundingBox &bBox, double gridSpacing, ParticlePoolPtr particlePoolPtr, const BoolVector &periodicDimensions, double circBorderWidth ) : Inherited(bBox, gridSpacing), m_periodicDimensions(periodicDimensions), m_particlePoolPtr(particlePoolPtr), m_clonedParticleSet(), m_circGridWidth(1), m_periodicDimIndex(-1) { checkPeriodicDimensions(); if (circBorderWidth <= 0.0) { circBorderWidth = this->getGridSpacing(); } setCircularBorderWidth(circBorderWidth, this->getGridSpacing()); } template void CircularNeighbourTable::checkPeriodicDimensions() { if (m_periodicDimensions.size() != 3) { std::stringstream msg; msg << "CircularNeighbourTable::CircularNeighbourTable -" << " size of periodic dimensions argument (" << m_periodicDimensions.size() << ") is not equal to 3"; throw std::runtime_error(msg.str()); } int numPeriodic = 0; for (int i = 0; i < 3; i++) { if (m_periodicDimensions[i]) { m_periodicDimIndex = i; numPeriodic++; } } if (numPeriodic > 1) { std::stringstream msg; msg << "CircularNeighbourTable::CircularNeighbourTable -" << " only a single dimension may be periodic."; throw std::runtime_error(msg.str()); } } template CircularNeighbourTable::~CircularNeighbourTable() { } template void CircularNeighbourTable::setCircularBorderWidth( double circBorderWidth, double gridSpacing ) { m_circGridWidth = int(ceil(circBorderWidth/gridSpacing)); } template void CircularNeighbourTable::setCircularBorderWidth( double circBorderWidth ) { setCircularBorderWidth(circBorderWidth, this->getGridSpacing()); } template void CircularNeighbourTable::resize( const BoundingBox &bBox, double gridSpacing, double circBorderWidth ) { if (havePeriodicDimensions()) { circBorderWidth = min( (bBox.getSizes()[m_periodicDimIndex])/2.0, circBorderWidth ); } setCircularBorderWidth(circBorderWidth, gridSpacing); ParticleVector particles = getNonClonedParticles(); clearClonedParticles(); this->clearAndRecomputeGrid(bBox, gridSpacing); for ( typename ParticleVector::iterator it = particles.begin(); it != particles.end(); it++ ) { this->insert(*it); } } template void CircularNeighbourTable::resize( const BoundingBox &bBox, double gridSpacing ) { this->resize(bBox, gridSpacing, gridSpacing); } template void CircularNeighbourTable::insertClone( Particle *pParticle, const Vec3 &newPosition ) { Particle *pNewParticle = m_particlePoolPtr->construct(*pParticle); pNewParticle->moveTo(newPosition); Inherited::insert(pNewParticle); m_clonedParticleSet.insert(pNewParticle); } template bool CircularNeighbourTable::havePeriodicDimensions() const { return (m_periodicDimIndex >= 0); } template Vec3 CircularNeighbourTable::getModdedPosn( const Vec3 &posn ) const { if ( havePeriodicDimensions() ) { const int &dimIdx = m_periodicDimIndex; if ( (posn[dimIdx] < this->getBBox().getMinPt()[dimIdx]) || (posn[dimIdx] > this->getBBox().getMaxPt()[dimIdx]) ) { Vec3 moddedPosn = posn; const double dimSize = this->getBBox().getSizes()[dimIdx]; moddedPosn[dimIdx] -= this->getBBox().getMinPt()[dimIdx]; moddedPosn[dimIdx] = (moddedPosn[dimIdx] > 0.0) ? ( this->getBBox().getMinPt()[dimIdx] + moddedPosn[dimIdx] - (floor(moddedPosn[dimIdx]/dimSize)*dimSize) ) : ( this->getBBox().getMaxPt()[dimIdx] - (fabs(moddedPosn[dimIdx]) - (floor(fabs(moddedPosn[dimIdx])/dimSize)*dimSize)) ); return moddedPosn; } } return posn; } template void CircularNeighbourTable::insert(Particle *pParticle) { pParticle->moveTo(getModdedPosn(pParticle->getPos())); const Vec3L minIdx = this->getVecIndex(pParticle->getPos() - pParticle->getRad()); const Vec3L maxIdx = this->getVecIndex(pParticle->getPos() + pParticle->getRad()); this->insertInTable(pParticle, minIdx, maxIdx); this->addInserted(pParticle); if (havePeriodicDimensions()) { for (int dimIdx = 0; dimIdx < 3; dimIdx++) { if (m_periodicDimensions[dimIdx]) { if (minIdx[dimIdx] < (this->getMinVecIndex()[dimIdx] + m_circGridWidth)) { Vec3 shift = Vec3::ZERO; shift[dimIdx] = this->getBBox().getSizes()[dimIdx]; this->insertClone(pParticle, pParticle->getPos() + shift); } if (maxIdx[dimIdx] > (this->getMaxVecIndex()[dimIdx] - m_circGridWidth)) { Vec3 shift = Vec3::ZERO; shift[dimIdx] = this->getBBox().getSizes()[dimIdx]; this->insertClone(pParticle, pParticle->getPos() - shift); } } } } } template void CircularNeighbourTable::insert(Particle &particle) { this->insert(&particle); } template size_t CircularNeighbourTable::getNumClonedParticles() const { return m_clonedParticleSet.size(); } template size_t CircularNeighbourTable::getNumParticles() const { return this->size() - getNumClonedParticles(); } template const typename CircularNeighbourTable::BoolVector & CircularNeighbourTable::getPeriodicDimensions() const { return m_periodicDimensions; } template bool CircularNeighbourTable::isClone( Particle *p ) const { return (m_clonedParticleSet.find(p) != m_clonedParticleSet.end()); } template typename CircularNeighbourTable::ParticleVector CircularNeighbourTable::getNonClonedParticles() { ParticleVector all = this->getInsertedParticles(); ParticleVector nonCloned; nonCloned.reserve(all.size()/2); for ( typename ParticleVector::iterator it = all.begin(); it != all.end(); it++ ) { if (!isClone(*it)) { nonCloned.push_back(*it); } } return nonCloned; } template void CircularNeighbourTable::clearClonedParticles() { for ( typename ParticleSet::iterator it = m_clonedParticleSet.begin(); it != m_clonedParticleSet.end(); it++ ) { m_particlePoolPtr->destroy(*it); } m_clonedParticleSet.clear(); } } } #endif ./Geometry/Grain.hpp0000664000175000017500000000467412176660653014216 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/Grain.h" #include #include #include #include #include namespace esys { namespace lsm { template Grain::Grain() : Inherited(), m_id(-1) { } template Grain::Grain(ParticlePoolPtr particlePoolPtr) : Inherited(particlePoolPtr), m_id(-1) { } template Grain::Grain(Id id) : Inherited(), m_id(id) { } template Grain::Grain(Id id, ParticlePoolPtr particlePoolPtr) : Inherited(particlePoolPtr), m_id(id) { } template Grain::Grain(const Grain &g) : Inherited(g), m_id(g.getId()) { } template Grain & Grain::operator=(const Grain &g) { Inherited::operator=(g); setId(g.getId()); return *this; } template typename Grain::Id Grain::getId() const { return m_id; } template void Grain::setId(Id id) { m_id = id; } template void Grain::setParticleIds( typename Particle::Id minId ) { ParticleIterator it = this->getParticleIterator(); while (it.hasNext()) { it.next().setId(minId++); } } } } ./Geometry/SphereNeighbours.hpp0000664000175000017500000001703612176660653016426 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/StringUtil.h" #include #include namespace esys { namespace lsm { template SphereNeighbours::SphereNeighbours( double maxDist, const BoundingBox &bBox, const BoolVector &circDimensions ) : m_connectionPoolPtr(new IdPairPool(4096)), m_connectionSet(), m_nTablePtr(), m_minRadius(std::numeric_limits::max()), m_maxRadius(-std::numeric_limits::max()), m_maxDist(maxDist), m_minPt(bBox.getMinPt()), m_maxPt(bBox.getMaxPt()) { const double gridSize = ( max( bBox.getSizes()[0], max( bBox.getSizes()[1], bBox.getSizes()[2] ) ) )/5.0; m_nTablePtr = NTablePtr( new NTable( bBox, gridSize, circDimensions, 2*gridSize ) ); } template SphereNeighbours::~SphereNeighbours() { } template int SphereNeighbours::getNumSpheres() const { return m_nTablePtr->size(); } template int SphereNeighbours::getNumIdPairs() const { return m_connectionSet.size(); } template double SphereNeighbours::getMinRadius() const { return m_minRadius; } template double SphereNeighbours::getMaxRadius() const { return m_maxRadius; } template typename SphereNeighbours::SphereConstIterator SphereNeighbours::getSphereIterator() const { return m_nTablePtr->getIterator(); } template const typename SphereNeighbours::IdPair & SphereNeighbours::createIdPair( const Sphere &p1, const Sphere &p2 ) { return **(m_connectionSet.insert( m_connectionPoolPtr->construct(p1.getId(), p2.getId()) ).first); } template class CmpSphereId { public: bool operator()(const TmplSphere &p1, const TmplSphere &p2) const { return (p1.getId() < p2.getId()); } bool operator()(const TmplSphere *p1, const TmplSphere *p2) const { return (p1->getId() < p2->getId()); } }; template class Deref { public: typedef const TmplType& result_type; typedef const TmplType* argument_type; result_type operator()(argument_type a) const { return *a; } }; template template typename SphereNeighbours::IdPairVector SphereNeighbours::getNeighbours( TmplSphereIterator it ) { // Put the spheres in the neighbour table typedef std::set > SphereSet; SphereSet pSet; while (it.hasNext()) { Sphere &p = it.next(); insert(p); pSet.insert(&p); } ConstIdPairSet idPairSet; // Resize ntable according to min and max sphere radii. m_nTablePtr->resize( getSphereBBox(), 4.1*getMinRadius(), 2.1*getMaxRadius() ); // For each sphere in the iterator it, determine it's // neighours within m_maxDist distance. for ( typename SphereSet::const_iterator pIt = pSet.begin(); pIt != pSet.end(); pIt++ ) { // get the vector of spheres which are contained in nearby cells. typename NTable::ParticleVector nVector = m_nTablePtr->getNeighbourVector( (*pIt)->getPos(), (*pIt)->getRad() + m_maxDist ); // for each of these cell-spheres, determine if they // are closer than m_maxDist. for ( typename NTable::ParticleVector::const_iterator nIt = nVector.begin(); nIt != nVector.end(); nIt++ ) { Sphere *p1 = (*pIt); Sphere *p2 = (*nIt); if ( ( (p1->getId() < p2->getId()) && (pSet.find(p1) != pSet.end()) && (pSet.find(p2) != pSet.end()) ) || ( ((pSet.find(p1)==pSet.end()) && (pSet.find(p2)!= pSet.end())) || ((pSet.find(p1)!=pSet.end()) && (pSet.find(p2)== pSet.end())) ) ) { p1 = ((*pIt)->getId() < (*nIt)->getId()) ? (*pIt) : (*nIt); p2 = ((*pIt)->getId() < (*nIt)->getId()) ? (*nIt) : (*pIt); const double radiusSumPlusTol = m_maxDist + p1->getRad() + p2->getRad(); const double radiusSumPlusTolSqrd = radiusSumPlusTol*radiusSumPlusTol; if ( (p1->getPos() - p2->getPos()).norm2() <= (radiusSumPlusTolSqrd) ) { idPairSet.insert(&createIdPair(*p1, *p2)); } } } } IdPairVector idPairVector; idPairVector.reserve(idPairSet.size()); std::transform( idPairSet.begin(), idPairSet.end(), std::back_insert_iterator(idPairVector), Deref() ); return idPairVector; } template void SphereNeighbours::insert(Sphere &p) { if (p.getRad() < m_minRadius) { m_minRadius = p.getRad(); } if (p.getRad() > m_maxRadius) { m_maxRadius = p.getRad(); } m_nTablePtr->insert(p); for (int i = 0; i < 3; i++) { if (!(m_nTablePtr->getPeriodicDimensions()[i])) { if (p.getPos()[i]-p.getRad() < m_minPt[i]) { m_minPt[i] = p.getPos()[i]-p.getRad(); } if (p.getPos()[i]+p.getRad() > m_maxPt[i]) { m_maxPt[i] = p.getPos()[i]+p.getRad(); } } } } template BoundingBox SphereNeighbours::getSphereBBox() const { return BoundingBox(m_minPt, m_maxPt); } } } ./Geometry/VtkXmlWriter.cpp0000664000175000017500000002306212176660653015563 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/VtkXmlWriter.h" #include #include #include #include #include namespace esys { namespace lsm { typedef std::vector ParticleVector; typedef std::vector ConnectionVector; typedef std::map IdIndexMap; //============================================================================= class ParticleDataVisitor::Impl { public: Impl() { } void append(const SimpleParticle &particle) { m_idIndexMap[particle.getID()] = m_particleVector.size(); m_particleVector.push_back(&particle); } void append(const BasicInteraction &connection) { m_connectionVector.push_back(&connection); } ParticleVector m_particleVector; ConnectionVector m_connectionVector; IdIndexMap m_idIndexMap; }; //============================================================================= ParticleDataVisitor::ParticleDataVisitor() : m_implPtr(new Impl()) { } void ParticleDataVisitor::visitSimpleParticle(const SimpleParticle &particle) { m_implPtr->append(particle); } void ParticleDataVisitor::visitParticle(const Particle &particle) { visitSimpleParticle(particle); } void ParticleDataVisitor::visitBasicInteraction(const Connection &connection) { m_implPtr->append(connection); } void ParticleDataVisitor::visitConnection(const Connection &connection) { visitBasicInteraction(connection); } size_t ParticleDataVisitor::getNumParticles() const { return m_implPtr->m_particleVector.size(); } size_t ParticleDataVisitor::getNumConnections() const { return m_implPtr->m_connectionVector.size(); } template class ConstContainerIterator { public: ConstContainerIterator(const TmplContainer &container) : m_it(container.begin()), m_end(container.end()) { } bool hasNext() const { return (m_it != m_end); } typename TmplContainer::const_reference next() { typename TmplContainer::const_reference valueRef = (*m_it); ++m_it; return valueRef; } private: typename TmplContainer::const_iterator m_it; typename TmplContainer::const_iterator m_end; }; class ParticleIterator { public: ParticleIterator(const ParticleVector &particleVector) : m_it(particleVector) { } bool hasNext() const { return m_it.hasNext(); } const SimpleParticle &next() { return *m_it.next(); } private: ConstContainerIterator m_it; }; class ConnectionIterator { public: ConnectionIterator(const ConnectionVector &connectionVector) : m_it(connectionVector) { } bool hasNext() const { return m_it.hasNext(); } const BasicInteraction &next() { return *m_it.next(); } private: ConstContainerIterator m_it; }; void ParticleDataVisitor::writeCentrePoints(std::ostream &oStream) const { ParticleIterator it(m_implPtr->m_particleVector); while (it.hasNext()) { oStream << it.next().getPos() << "\n"; } } void ParticleDataVisitor::writeRadii(std::ostream &oStream) const { ParticleIterator it(m_implPtr->m_particleVector); while (it.hasNext()) { oStream << it.next().getRad() << "\n"; } } void ParticleDataVisitor::writeTags(std::ostream &oStream) const { ParticleIterator it(m_implPtr->m_particleVector); while (it.hasNext()) { oStream << it.next().getTag() << "\n"; } } void ParticleDataVisitor::writeIds(std::ostream &oStream) const { ParticleIterator it(m_implPtr->m_particleVector); while (it.hasNext()) { oStream << it.next().getID() << "\n"; } } int ParticleDataVisitor::getIndex(int particleId) const { IdIndexMap::const_iterator it = m_implPtr->m_idIndexMap.find(particleId); if (it == m_implPtr->m_idIndexMap.end()) { std::stringstream msg; msg << "Could not find particle id " << particleId << " in index map."; throw std::runtime_error(msg.str()); } return it->second; } void ParticleDataVisitor::writeParticleIndexConnections(std::ostream &oStream) const { ConnectionIterator it(m_implPtr->m_connectionVector); while (it.hasNext()) { const BasicInteraction &connection = it.next(); oStream << getIndex(connection.first()) << " " << getIndex(connection.second()) << "\n"; } } void ParticleDataVisitor::writeConnectionTags(std::ostream &oStream) const { ConnectionIterator it(m_implPtr->m_connectionVector); while (it.hasNext()) { oStream << it.next().getTag() << "\n"; } } //============================================================================= class VtkXmlWriter::Impl { public: Impl() : m_pParticleData(NULL) { } const ParticleDataVisitor *m_pParticleData; }; //============================================================================= VtkXmlWriter::VtkXmlWriter() : m_implPtr(new Impl()) { } VtkXmlWriter::~VtkXmlWriter() { } void VtkXmlWriter::setData(const ParticleDataVisitor &particleData) { m_implPtr->m_pParticleData = &particleData; } size_t VtkXmlWriter::getNumParticles() const { return m_implPtr->m_pParticleData->getNumParticles(); } size_t VtkXmlWriter::getNumConnections() const { return m_implPtr->m_pParticleData->getNumConnections(); } void VtkXmlWriter::writePoints(std::ostream &oStream) { oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeCentrePoints(oStream); oStream << "\n"; oStream << "\n"; } void VtkXmlWriter::writePointData(std::ostream &oStream) { oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeRadii(oStream); oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeTags(oStream); oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeIds(oStream); oStream << "\n"; oStream << "\n"; } void VtkXmlWriter::writeCells(std::ostream &oStream) { oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeParticleIndexConnections(oStream); oStream << ""; oStream << "\n"; for (size_t i = 1; i < getNumConnections()*2; i+=2) oStream << i+1 << "\n"; oStream << "\n"; oStream << "\n"; const int CELL_LINE_TYPE = 3; for (size_t i = 0; i < getNumConnections(); i++) oStream << CELL_LINE_TYPE << "\n"; oStream << "\n"; oStream << "\n"; } void VtkXmlWriter::writeCellData(std::ostream &oStream) { oStream << "\n"; oStream << "\n"; m_implPtr->m_pParticleData->writeConnectionTags(oStream); oStream << "\n"; oStream << "\n"; } void VtkXmlWriter::write(std::ostream &oStream) { oStream << "\n"; oStream << "\n"; oStream << "\n"; writePoints(oStream); writePointData(oStream); writeCells(oStream); writeCellData(oStream); oStream << "\n"; oStream << "\n"; oStream << "\n"; } void VtkXmlWriter::writeToFile(const std::string &fileName) { std::ofstream oStream(fileName.c_str()); oStream << "\n"; write(oStream); } } } ./Geometry/Edge.cpp0000664000175000017500000000773012176660653014011 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Edge.h" using std::make_pair; /*! Construct edge from 2 points. Set triangle pointers to NULL \param id1 the id of p1 \param id2 the id of p2 \param p1 \param p2 */ Edge::Edge(int id1,int id2,const Vec3& p1,const Vec3& p2) : AEdge(p1,p2) { m_id1=id1; m_id2=id2; m_t1=NULL; m_t2=NULL; } void Edge::applyForce(const Vec3 &f) { if ((m_t1 != NULL) && (m_t2 != NULL)) { const Vec3 halfF = f*(0.5); m_t1->applyForce(halfF); m_t2->applyForce(halfF); } else if (m_t1 != NULL) { m_t1->applyForce(f); } else if (m_t2 != NULL) { m_t2->applyForce(f); } } /*! Construct edge from 2 points and 1 triangle pointer. Set other triangle pointer to NULL \param id1 the id of p1 \param id2 the id of p2 \param p1 \param p2 \param t1 */ Edge::Edge(int id1,int id2,const Vec3& p1,const Vec3& p2,Triangle* t1) : AEdge(p1,p2) { m_id1=id1; m_id2=id2; m_t1=t1; m_t2=NULL; } /*! Construct edge from 2 points and 2 triangle pointers. \param id1 the id of p1 \param id2 the id of p2 \param p1 \param p2 \param t1 \param t2 */ Edge::Edge(int id1,int id2,const Vec3& p1,const Vec3& p2,Triangle* t1,Triangle* t2) : AEdge(p1,p2) { m_id1=id1; m_id2=id2; m_t1=t1; m_t2=t2; } /*! Check if any of the adjacent triangles (if there are any) has contact, i.e the perpendicular line from the supporting plane to the point hits the triangle, an thus makes the edge contact invalid \param P the point */ bool Edge::isValidContact(const Vec3& P) const { bool t1,t2,is_valid; // check 1st triangle if(m_t1!=NULL) { t1=(m_t1->dist(P)).first; } else { t1=false; } // check 2nd triangle if(m_t2!=NULL) { t2=(m_t2->dist(P)).first; } else { t2=false; } is_valid=(!t1) && (!t2); return is_valid; } /*! Get min. corner of axis-aligned bounding box. */ Vec3 Edge::getBoundingBoxMin() const { return cmin(m_p0,m_p1); } /*! Get min. corner of axis-aligned bounding box. */ Vec3 Edge::getBoundingBoxMax() const { return cmax(m_p0,m_p1); } /*! get unit direction vector between a point and the closest point along the supporting line of the edge (pointing away from the edge). \param p the point \warning does not check if the closest point is actually within the edge or that the point is not on the line (potential div by 0) */ Vec3 Edge::getDirectionFromPoint(const Vec3& p) const { Vec3 dir; Vec3 v=m_p1-m_p0; Vec3 vu=v.unit(); double d=((p-m_p0)*vu); dir=(p-m_p0)-d*vu; return dir.unit(); } /*! Move one of the corners. The identifier for the corner is the global node id. If the edge doesn't contain the node with the id , do nothing. \param id the global id of the node to be moved \param d the amount of movement */ void Edge::moveNode(int id,const Vec3& d) { if (id==m_id1){ m_p0+=d; } else if (id==m_id2){ m_p1+=d; } else { std::cerr << "trying to move node not in edge!" << std::endl; } } /*! Translate whole edge \param d the amount of movement */ void Edge::move(const Vec3& d) { m_p0+=d; m_p1+=d; } /*! output Edge to ostream */ ostream& operator << (ostream& ost,const Edge& E) { ost << "Edge: (" << E.m_p0 << ") - (" << E.m_p1 << ")"; if(E.m_t1!=NULL) ost << " in : " << *(E.m_t1); if(E.m_t2!=NULL) ost << " in : " << *(E.m_t2); return ost; } ./Geometry/DistConnections.h0000664000175000017500000001101212176660653015704 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMDISTCONNECTIONS_H #define ESYS_LSMDISTCONNECTIONS_H #include "Geometry/CircularNeighbourTable.h" #include "Geometry/BasicInteraction.h" #include #include #include #include #include namespace esys { namespace lsm { /** * */ template class DistConnections { public: typedef TmplParticle Particle; typedef TmplConnection Connection; typedef int Tag; class Cmp { public: bool operator()(const Connection &c1, const Connection &c2) const { return ( (c1.first() < c2.first()) || ( (c1.first() == c2.first()) && ( (c1.second() < c2.second()) || ( (c1.second() == c2.second()) && (c1.getTag() < c2.getTag()) ) ) ) ); } bool operator()(const Connection *c1, const Connection *c2) const { return (*this)(*c1, *c2); } }; public: typedef std::set ConnectionSet; typedef std::vector ParticleVector; typedef CircularNeighbourTable NTable; typedef typename NTable::ParticleIterator ParticleIterator; typedef typename NTable::ParticleConstIterator ParticleConstIterator; public: typedef typename NTable::BoolVector BoolVector; DistConnections( double maxDist, Tag defaultTag = 0, const BoundingBox &bBox = BoundingBox(Vec3(-10,-10,-10), Vec3(10,10,10)), const BoolVector &circDimensions = BoolVector(3, false) ); ~DistConnections(); int getNumParticles() const; int getNumConnections() const; double getMinRadius() const; double getMaxRadius() const; ParticleConstIterator getParticleIterator() const; BoundingBox getParticleBBox() const; template void create(TmplParticleIterator it); template void create(TmplParticleIterator it, Tag tag); Tag getDefaultTag() const; void setDefaultTag(Tag defaultTag); typedef ForwardConstIterator ConnectionConstIterator; class ConstIterator : public ConnectionConstIterator { public: typedef const Connection& value_type; typedef const Connection& reference; ConstIterator(const ConnectionSet &set) : ConnectionConstIterator(set) { } value_type next() { return *(ConnectionConstIterator::next()); } value_type current() const { return *(ConnectionConstIterator::current()); } }; typedef ConstIterator Iterator; Iterator getIterator() const { return Iterator(m_connectionSet); } protected: void insert(Particle &p); void createConnection(const Particle &p1, const Particle &p2, Tag tag); private: typedef boost::shared_ptr NTablePtr; typedef boost::object_pool ConnectionPool; typedef boost::shared_ptr ConnectionPoolPtr; ConnectionPoolPtr m_connectionPoolPtr; ConnectionSet m_connectionSet; NTablePtr m_nTablePtr; double m_minRadius; double m_maxRadius; double m_maxDist; Vec3 m_minPt; Vec3 m_maxPt; Tag m_defaultTag; }; } } #include "Geometry/DistConnections.hpp" #endif ./Geometry/ARandomAssembly.h0000664000175000017500000000467712176660653015642 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ARANDOMASSEMBLY2D_H #define __ARANDOMASSEMBLY2D_H //-- project includes -- #include "Geometry/SimpleParticle.h" #include "Geometry/BasicInteraction.h" #include "Geometry/SimpleNTable.h" #include "Geometry/Sphere2d.h" #include "Geometry/Line.h" //-- STL includes -- #include #include using std::set; using std::vector; //--- IO includes --- #include /*! \class ARandomAssembly \brief Abstract base class for random assemblies, to be used for initialization of random lattices. \author Steffen Abe $Revision$ $Date$ */ class ARandomAssembly { protected: ASimpleNTable *m_snt; static double m_small_value; set m_iset; vector m_bpart; double m_random(double,double); vector getNeighborList(const SimpleParticle&); vector get3ClosestNeighbors(const SimpleParticle&, const vector&); vector getClosestNeighbors(const SimpleParticle&, int); SimpleParticle getClosestParticle(const SimpleParticle&, const vector&); public: virtual ~ARandomAssembly() { } virtual void generate(int,unsigned int)=0; virtual void insertParticle(const SimpleParticle)=0; virtual void tagParticleClosestTo(const Vec3&,int)=0; virtual void tagEdgeY(int,int,double)=0; virtual void tagEdgeZ(int,int,double)=0; virtual void tagSplit(int,int,double){std::cout <<"ARA::tagSplit" << std::endl;}; virtual void writeToGeoFile(const string&)=0; virtual void writeToVtkFile(const string&); //{std::cerr << "writeToVtkFile not implemented" << std::endl;}; // empty default implementation virtual double calcPorosity()=0; virtual vector > getSizeDistribution(int)=0; }; #endif // __ARANDOMASSEMBLY2D_H ./Geometry/SimpleParticleData.hpp0000664000175000017500000001052612176660653016656 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// namespace esys { namespace lsm { //=============================================================================== SimpleParticleData::SimpleParticleData() : m_id(-1), m_tag(-1), m_position(), m_radius(0.0), m_mass(0.0) { setMass(get3dMass()); } SimpleParticleData::SimpleParticleData( Id id, Tag tag, const Vec3 &position, double radius ) : m_id(id), m_tag(tag), m_position(position), m_radius(radius), m_mass(0.0) { setMass(get3dMass()); } SimpleParticleData::SimpleParticleData( const Vec3 &position, double radius, Id id, Tag tag ) : m_id(id), m_tag(tag), m_position(position), m_radius(radius), m_mass(0.0) { setMass(get3dMass()); } SimpleParticleData::SimpleParticleData(const SimpleParticleData &p) : m_id(p.m_id), m_tag(p.m_tag), m_position(p.m_position), m_radius(p.m_radius), m_mass(p.m_mass) { } SimpleParticleData &SimpleParticleData::operator=(const SimpleParticleData &p) { m_id = p.m_id; m_tag = p.m_tag; m_position = p.m_position; m_radius = p.m_radius; m_mass = p.m_mass; return *this; } bool SimpleParticleData::operator==( const SimpleParticleData &particleData ) const { return ( (getId() == particleData.getId()) && (getPosition() == particleData.getPosition()) && (getRadius() == particleData.getRadius()) && (getTag() == particleData.getTag()) ); } SimpleParticleData::Id SimpleParticleData::getId() const { return m_id; } void SimpleParticleData::setId(const Id &id) { m_id = id; } void SimpleParticleData::setID(const Id &id) { setId(id); } SimpleParticleData::Id SimpleParticleData::getID() const { return getId(); } const Vec3 &SimpleParticleData::getPosition() const { return m_position; } void SimpleParticleData::setPosition(const Vec3 &pos) { m_position = pos; } SimpleParticleData::Tag SimpleParticleData::getTag() const { return m_tag; } void SimpleParticleData::setTag(const SimpleParticleData::Tag &tag) { m_tag = tag; } double SimpleParticleData::getRadius() const { return m_radius; } void SimpleParticleData::setRadius(const double &r) { m_radius = r; } void SimpleParticleData::setMass(double mass) { m_mass = mass; } double SimpleParticleData::getMass() const { return m_mass; } double SimpleParticleData::get2dMass() const { return m_radius*m_radius; } double SimpleParticleData::get3dMass() const { return m_radius*m_radius*m_radius; } void SimpleParticleData::read(std::istream &istream) { istream >> m_position >> m_radius >> m_id >> m_tag; } void SimpleParticleData::write(std::ostream &oStream) const { const char delim = ' '; oStream << getPosition() << delim << getRadius() << delim << getId() << delim << getTag(); } std::istream &operator>>(std::istream &iStream, SimpleParticleData &particleData) { particleData.read(iStream); return iStream; } std::ostream &operator<<(std::ostream &oStream, const SimpleParticleData &particleData) { particleData.write(oStream); return oStream; } } } ./Geometry/BoxPacker.cpp0000664000175000017500000000131412176660653015013 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/BoxPacker.h" ./Geometry/ClosePackIterator.h0000664000175000017500000000665012176660653016170 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCLOSEPACKITERATOR_H #define ESYS_LSMCLOSEPACKITERATOR_H #include "Foundation/BoundingBox.h" #include "Foundation/vec3.h" #include "Geometry/Vec3L.h" #include "Geometry/ClosePackOrientation.h" namespace esys { namespace lsm { template class TmplMatrix { public: TmplMatrix(); TmplMatrix(const TmplMatrix &m); TmplMatrix &operator=(const TmplMatrix &m); const double &operator()(int i, int j, int k) const; double &operator()(int i, int j, int k); int getNumI() const; int getNumJ() const; int getNumK() const; private: double m_matrix[NI][NJ][NK]; }; /** * Base class for iterators used to generate centre-points of spheres * arranged in a close-packing. */ class ClosePackIterator { public: static const double SQRT_1_OVER_3; static const double SQRT_8_OVER_3; static const double SQRT_3; /** * Creates default empty iterator. */ inline ClosePackIterator(); /** * Creates an iterator which will iterate over numI*numJ*numK * centre points of spheres with radius sphereRadius. * @param numI number of spheres in the i direction. * @param numJ number of spheres in the j direction. * @param numK number of spheres in the k direction. * @param sphereRadius radius of spheres in the packing. * @param orientation specifies the axis alignment of layers. */ inline ClosePackIterator( int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation = DEFAULT_ORIENT ); /** * Returns whether there is another centre point in the * iteration sequence. */ inline bool hasNext() const; /** * Returns the next centre-point in the iteration sequence. */ inline Vec3 next(); /** * Returns the radius of spheres used in the iteration. */ inline double getRadius() const; protected: typedef TmplMatrix<3,6,6> OffsetMatrix; inline void incrementDimIndex(); inline double getOffset(int i) const; inline const Vec3 &getMinPt() const; inline void setMinPt(const Vec3 &pt) const; inline void setDimRepeat(const Vec3L &dimRepeat); inline void setOffsetMatrix(const OffsetMatrix &offsetMatrix); private: static Vec3L s_orientationDimMap[NUM_ORIENTATIONS]; double m_radius; Vec3 m_minPt; OffsetMatrix m_offsetMatrix; Vec3L m_dimRepeat; Vec3L m_dimCount; Vec3L m_dimIdx; Vec3L m_dim; }; } } #include "Geometry/ClosePackIterator.hpp" #endif ./Geometry/CubicBoxPacker.cpp0000664000175000017500000000132112176660653015757 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/CubicBoxPacker.h" ./Geometry/SimpleParticleData.h0000664000175000017500000000470012176660653016313 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMSIMPLEPARTICLEDATA_H #define ESYS_LSMSIMPLEPARTICLEDATA_H #include "Foundation/vec3.h" #include namespace esys { namespace lsm { /** * Container class for particle Id, Tag, position, radius and mass. */ class SimpleParticleData { public: typedef int Id; typedef int Tag; inline SimpleParticleData(); inline SimpleParticleData(Id id, Tag tag, const Vec3 &position, double radius); inline SimpleParticleData(const Vec3 &position, double radius, Id id, Tag tag); inline SimpleParticleData(const SimpleParticleData &p); inline SimpleParticleData &operator=(const SimpleParticleData &p); inline bool operator==(const SimpleParticleData &particleData) const; inline Id getId() const; inline void setId(const Id &id); inline Id getID() const; inline void setID(const Id &id); inline const Vec3 &getPosition() const; inline void setPosition(const Vec3 &pos); inline Tag getTag() const; inline void setTag(const Tag &tag); inline double getRadius() const; inline void setRadius(const double &r); inline void setMass(double mass); inline double getMass() const; inline double get2dMass() const; inline double get3dMass() const; inline void read(std::istream &istream); inline void write(std::ostream &write) const; private: Id m_id; Tag m_tag; Vec3 m_position; double m_radius; double m_mass; }; inline std::istream &operator>>(std::istream &iStream, SimpleParticleData &particleData); inline std::ostream &operator<<(std::ostream &oStream, const SimpleParticleData &particleData); } } #include "Geometry/SimpleParticleData.hpp" #endif ./Geometry/IntersectionVolCalculator.hpp0000664000175000017500000010546012176660653020312 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include #include namespace esys { namespace lsm { namespace impl { inline double square(double val) { return val*val; } template DimBasicBox::DimBasicBox(const Vec &minPt, const Vec &maxPt) : m_minPt(minPt), m_maxPt(maxPt) { } template const typename DimBasicBox::Vec &DimBasicBox::getMinPt() const { return m_minPt; } template const typename DimBasicBox::Vec &DimBasicBox::getMaxPt() const { return m_maxPt; } template double DimBasicBox::getVolume() const { double product = 1.0; for (int i = 0; i < tmplDim; i++) { product *= (this->getMaxPt()[i] - this->getMinPt()[i]); } return product; } template template bool DimBasicBox::intersectsWith(const TmplSphere &sphere) const { double distSqrd = 0.0; for (int i = 0; i < tmplDim; i++) { if (sphere.getCentre()[i] < this->getMinPt()[i]) { distSqrd += square(sphere.getCentre()[i] - this->getMinPt()[i]); } else if (sphere.getCentre()[i] > this->getMaxPt()[i]) { distSqrd += square(sphere.getCentre()[i] - this->getMaxPt()[i]); } } return (distSqrd <= square(sphere.getRadius())); } template bool DimBasicBox::intersectsWith(const Vec &pt) const { for (int i = 0; (i < tmplDim); i++) { if ((this->getMinPt()[i] > pt[i]) || (pt[i] > this->getMaxPt()[i])) { return false; } } return true; } template template bool DimBasicBox::contains(const TmplSphere &sphere) const { for (int i = 0; (i < tmplDim); i++) { Vec pt = Vec(0.0); pt[i] = sphere.getRadius(); if ( !(intersectsWith(sphere.getCentre() + pt)) || !(intersectsWith(sphere.getCentre() - pt)) ) { return false; } } return true; } template double DimPlane::norm(const Vec &pt) { double sum = 0.0; for (int i = 0; i < tmplDim; i++) { sum += pt[i]*pt[i]; } return sqrt(sum); } template double DimPlane::dot(const Vec &p1, const Vec &p2) { double sum = 0.0; for (int i = 0; i < tmplDim; i++) { sum += p1[i]*p2[i]; } return sum; } template DimPlane::DimPlane() : m_normal(), m_pt(), m_invNormalNorm(0.0) { } template DimPlane::DimPlane(const Vec &normal, const Vec &pt) : m_normal(normal), m_pt(pt), m_invNormalNorm((1.0/norm(normal))) { } template DimPlane::DimPlane(const DimPlane &plane) : m_normal(plane.m_normal), m_pt(plane.m_pt), m_invNormalNorm(plane.m_invNormalNorm) { } template DimPlane &DimPlane::operator=(const DimPlane &plane) { m_normal = plane.m_normal; m_pt = plane.m_pt; m_invNormalNorm = plane.m_invNormalNorm; return *this; } template double DimPlane::getSignedDistanceTo(const Vec &pt) const { // http://mathworld.wolfram.com/Point-PlaneDistance.html return ( (dot(m_normal, pt) - dot(m_normal, m_pt))*m_invNormalNorm ); } template double DimPlane::getDistanceTo(const Vec &pt) const { return fabs(getSignedDistanceTo(pt)); } template const typename DimPlane::Vec &DimPlane::getNormal() const { return m_normal; } template const double DimBasicSphere::FOUR_THIRDS_PI = (4.0/3.0)*M_PI; template const double DimBasicSphere::ONE_THIRD_PI = M_PI/3.0; template DimBasicSphere::DimBasicSphere() : m_centre(), m_radius(0.0) { } template DimBasicSphere::DimBasicSphere(const Vec ¢rePt, double radius) : m_centre(centrePt), m_radius(radius) { } template DimBasicSphere::DimBasicSphere(const DimBasicSphere &sphere) : m_centre(sphere.m_centre), m_radius(sphere.m_radius) { } template DimBasicSphere &DimBasicSphere::operator=(const DimBasicSphere &sphere) { m_centre = sphere.m_centre; m_radius = sphere.m_radius; return *this; } template double DimBasicSphere::getRadius() const { return m_radius; } template const typename DimBasicSphere::Vec & DimBasicSphere::getCentre() const { return m_centre; } template double DimBasicSphere::getVolume() const { return (tmplDim == 2) ? M_PI*getRadius()*getRadius() : FOUR_THIRDS_PI*getRadius()*getRadius()*getRadius(); } inline void checkDomain(double r, double x1, double y1, double x2, double y2) { const double rSqrd = r*r; const double x1Sqrd = x1*x1; const double x2Sqrd = x2*x2; const double y1Sqrd = y1*y1; const double y2Sqrd = y2*y2; if ( ((rSqrd - x1Sqrd - y1Sqrd) < 0) || ((rSqrd - x1Sqrd - y2Sqrd) < 0) || ((rSqrd - x2Sqrd - y1Sqrd) < 0) || ((rSqrd - x2Sqrd - y2Sqrd) < 0) ) { std::stringstream msg; msg << "Invalid rectangular domain for sphere integration, points in domain " << "(" << x1 << "," << y1 << "), (" << x2 << "," << y2 << " lie outside " << "sphere of radius " << r << " centred at the origin."; throw std::runtime_error(msg.str()); } } template double DimBasicSphere::getVolume(const Vec &minPt, const Vec &maxPt, const int dimX, const int dimY) const { double vol = 0.0; if ((tmplDim == 2) || (tmplDim == 3)) { if (minPt[dimX] != maxPt[dimX]) { const double x1 = minPt[dimX] - getCentre()[dimX]; const double x2 = maxPt[dimX] - getCentre()[dimX]; const double r = getRadius(); if (tmplDim == 2) { const double rSqrd = r*r; const double x1Sqrd = x1*x1; const double x2Sqrd = x2*x2; vol = ( rSqrd*asin(x2/r) + x2*sqrt(rSqrd-x2Sqrd) - rSqrd*asin(x1/r) - x1*sqrt(rSqrd-x1Sqrd) )*0.5; } else if (tmplDim == 3) { if (minPt[dimY] != maxPt[dimY]) { const double y1 = minPt[dimY] - getCentre()[dimY]; const double y2 = maxPt[dimY] - getCentre()[dimY]; checkDomain(r, x1, y1, x2, y2); // // Matlab6/maple generated code: // // syms x y x1 x2 y1 y2 r real // sphereIntegral = int(int('sqrt(r^2-x^2-y^2)', x, x1, x2), y, y1, y2) // maple('readlib(codegen)') // maple('readlib(optimize)') // optimizedIntegral = maple('optimize', sphereIntegral, 'tryhard') // maple('cost', optimizedIntegral) // //43*additions+82*multiplications+6*divisions+22*functions+42*assignments const double t30 = y2*y2; //y2^2; const double t31 = x2*x2; //x2^2; const double t36 = r*r; //r^2; const double t59 = t31-t36; const double t40 = sqrt(-t30-t59); //pow(-t30-t59,1/2); const double t10 = 1.0/t40; const double t32 = x1*x1; //x1^2; const double t54 = t32-t36; const double t42 = sqrt(-t30-t54); //pow(-t30-t54,1/2); const double t14 = 1.0/t42; const double t64 = -atan(t10*x2)+atan(t14*x1); const double t27 = y1*y1; //y1^2; const double t39 = sqrt(-t27-t59); //pow(-t27-t59,1/2); const double t9 = 1.0/t39; const double t41 = sqrt(-t27-t54); //pow(-t27-t54,1/2); const double t12 = 1.0/t41; const double t63 = atan(t12*x1)-atan(t9*x2); const double t62 = -atan(y2*t14)+atan(y1*t12); const double t61 = -atan(y1*t9)+atan(t10*y2); const double t37 = sqrt(t31); //pow(t31,1/2); const double t21 = 1.0/t37; const double t60 = t21*t9; const double t38 = sqrt(t32); //pow(t32,1/2); const double t24 = 1.0/t38; const double t58 = t24*t14; const double t57 = t24*t12; const double t56 = t37*t38; const double t55 = t21*t10; const double t53 = 2.0*x2; const double t52 = 2.0*x1; const double t51 = t42*t56; const double t28 = t27*y1; const double t50 = t28-t36*y1; const double t34 = t30*y2; const double t49 = t34-t36*y2; const double t48 = t41*t51; const double t35 = t36*r; const double t33 = t31*x2; const double t29 = t32*x1; const double t26 = r*y2; const double t25 = y1*r; vol = (-1.0/6.0) * ( (-2.0*t33*y1-t50*t53)*t40*t48 + ( (2.0*t33*y2+t49*t53)*t48 + ( (2.0*t29*y1+t50*t52)*t51 + ( (-2.0*t29*y2-t49*t52)*t56 + ( ( atan((t25+t54)*t57) + atan((-t26+t54)*t58) - atan((t26+t54)*t58) - atan((-t25+t54)*t57) )*t35*t37*x1 + ( ( -atan((-t26+t59)*t55) - atan((t25+t59)*t60) + atan((-t25+t59)*t60) + atan((t26+t59)*t55) )*t35*x2 + (-t64*t34+t61*t33+t62*t29+t63*t28+3.0*(t64*y2-t63*y1-t61*x2-t62*x1)*t36)*t37 )*t38 )*t42 )*t41 )*t40 )*t39 )*t14*t9*t55*t57; } } } } return vol; } template bool DimBasicSphere::intersectsWith(const Vec &pt) const { double distSqrd = 0.0; for (int i = 0; i < tmplDim; i++) { distSqrd += square(getCentre()[i] - pt[i]); } return (distSqrd <= square(getRadius())); } template double DimBasicSphere::getSegmentVolume(const Plane &plane) const { double vol = 0.0; if ((tmplDim == 2) || (tmplDim == 3)) { const double signedD = plane.getSignedDistanceTo(getCentre()); const double d = fabs(signedD); if (d < getRadius()) { if (tmplDim == 2) { // http://mathworld.wolfram.com/CircularSegment.html const double rSqrd = getRadius()*getRadius(); vol = rSqrd*acos(d/getRadius()) - d*sqrt(rSqrd - d*d); } else if (tmplDim == 3) { // http://mathworld.wolfram.com/SphericalCap.html const double h = getRadius() - d; vol = ONE_THIRD_PI*h*h*(3.0*getRadius()-h); } vol = ((signedD < 0) ? vol : getVolume() - vol); } } return vol; } template typename IntersectionVolCalculator::Vec IntersectionVolCalculator::getNormal(int dim) { Vec n = Vec(0.0); n[dim] = 1.0; return n; } template typename IntersectionVolCalculator::Vec IntersectionVolCalculator::getNegNormal(int dim) { Vec n = Vec(0.0); n[dim] = -1.0; return n; } template IntersectionVolCalculator::VolumeSphere::VolumeSphere() : m_sphere(), m_volume(0.0) { } template IntersectionVolCalculator::VolumeSphere::VolumeSphere( const BasicSphere &sphere ) : m_sphere(sphere), m_volume(sphere.getVolume()) { } template IntersectionVolCalculator::VolumeSphere::VolumeSphere( const VolumeSphere &sphere ) : m_sphere(BasicSphere(sphere.getCentre(), sphere.getRadius())), m_volume(sphere.m_volume) { } template typename IntersectionVolCalculator::VolumeSphere & IntersectionVolCalculator::VolumeSphere::operator=( const VolumeSphere &sphere ) { m_sphere = sphere.m_sphere; m_volume = sphere.m_volume; return *this; } template double IntersectionVolCalculator::VolumeSphere::getRadius() const { return m_sphere.getRadius(); } template const typename IntersectionVolCalculator::Vec & IntersectionVolCalculator::VolumeSphere::getCentre() const { return m_sphere.getCentre(); } template double IntersectionVolCalculator::VolumeSphere::getVolume() const { return m_volume; } template double IntersectionVolCalculator::VolumeSphere::getVolume( const Vec &minPt, const Vec &maxPt, const int dimX, const int dimY ) const { return m_sphere.getVolume(minPt, maxPt, dimX, dimY); } template double IntersectionVolCalculator::VolumeSphere::calcVolume() const { return m_sphere.getVolume(); } template bool IntersectionVolCalculator::VolumeSphere::intersectsWith(const Vec &pt) const { return m_sphere.intersectsWith(pt); } template double IntersectionVolCalculator::VolumeSphere::getSegmentVolume(const Plane &plane) const { return m_sphere.getSegmentVolume(plane); } template IntersectionVolCalculator::Vertex::Vertex() : m_pt() { } template IntersectionVolCalculator::Vertex::Vertex(const Vec &pt) : m_pt(pt) { } template IntersectionVolCalculator::Vertex::Vertex(const Vertex &vtx) : m_pt(vtx.m_pt) { } template typename IntersectionVolCalculator::Vertex & IntersectionVolCalculator::Vertex::operator=(const Vertex &vtx) { m_pt = vtx.m_pt; return *this; } template const typename IntersectionVolCalculator::Vec & IntersectionVolCalculator::Vertex::getPoint() const { return m_pt; } template void IntersectionVolCalculator::Vertex::setPoint(const Vec &pt) { m_pt = pt; } template IntersectionVolCalculator::VertexBox::VertexBox( const BasicBox &box ) : BasicBox(box), m_vertexArray() { createVertices(); } template IntersectionVolCalculator::VertexBox::VertexBox( const VertexBox &box ) : BasicBox(box) { for (int i = 0; i < getNumVertices(); i++) { m_vertexArray[i] = box.m_vertexArray[i]; } } template typename IntersectionVolCalculator::VertexBox & IntersectionVolCalculator::VertexBox::operator=( const VertexBox &box ) { BasicBox::operator=(box); for (int i = 0; i < getNumVertices(); i++) { m_vertexArray[i] = box.m_vertexArray[i]; } return *this; } template void IntersectionVolCalculator::VertexBox::createVertices() { int j = 0; m_vertexArray[j].setPoint(this->getMinPt()); int i = 0; for (j++; i < tmplDim; i++, j++) { Vec pt = this->getMinPt(); pt[i] = this->getMaxPt()[i]; m_vertexArray[j].setPoint(pt); } m_vertexArray[j].setPoint(this->getMaxPt()); for (i = 0, j++; i < tmplDim && j < s_numVertices; i++, j++) { Vec pt = this->getMaxPt(); pt[i] = this->getMinPt()[i]; m_vertexArray[j] = pt; } } template const typename IntersectionVolCalculator::Vertex & IntersectionVolCalculator::VertexBox::getVertex(int i) const { return m_vertexArray[i]; } template int IntersectionVolCalculator::VertexBox::getNumVertices() { return s_numVertices; } template IntersectionVolCalculator::IntersectionVolCalculator( const BasicBox &box ) : m_sphere(BasicSphere(Vec(), 1.0)), m_box(box) { } template const typename IntersectionVolCalculator::VolumeSphere & IntersectionVolCalculator::getSphere() const { return m_sphere; } template void IntersectionVolCalculator::setSphere( const BasicSphere &sphere ) { m_sphere = sphere; } template const typename IntersectionVolCalculator::BasicBox & IntersectionVolCalculator::getBox() const { return m_box; } template const typename IntersectionVolCalculator::VertexBox & IntersectionVolCalculator::getVertexBox() const { return m_box; } template typename IntersectionVolCalculator::Vec IntersectionVolCalculator::componentMin( const Vec &p1, const Vec &p2 ) { Vec m; for (int i = 0; i < tmplDim; i++) { m[i] = min(p1[i], p2[i]); } return m; } template typename IntersectionVolCalculator::Vec IntersectionVolCalculator::componentMax( const Vec &p1, const Vec &p2 ) { Vec m; for (int i = 0; i < tmplDim; i++) { m[i] = max(p1[i], p2[i]); } return m; } template double IntersectionVolCalculator::getInsidePointVolume( const Vec &pt ) const { double vol = 0.0; const Vec ¢rePt = getSphere().getCentre(); const Vec diag = (getSphere().getCentre() - pt)*2.0; const Vec oppCorner = pt + diag; BasicBox box = BasicBox( componentMin(pt, oppCorner), componentMax(pt, oppCorner) ); const double boxVol = box.getVolume(); const double sphVol = getSphere().getVolume(); double s[tmplDim]; double v[tmplDim+1]; for (int i = 0; i < tmplDim; i++) { s[i] = getSphere().getSegmentVolume(Plane(getNormal((i+1)%tmplDim), box.getMaxPt())); } if (tmplDim == 2) { v[0] = 0.50*(sphVol - 2.0*s[0] - boxVol); v[1] = 0.50*(sphVol - 2.0*s[1] - boxVol); v[2] = 0.25*(sphVol - 2.0*v[0] - 2.0*v[1] - boxVol); if (pt[0] <= centrePt[0]) { if (pt[1] <= centrePt[1]) { vol = boxVol + v[0] + v[1] + v[2]; } else { vol = v[1] + v[2]; } } else { if (pt[1] <= centrePt[1]) { vol = v[0] + v[2]; } else { vol = v[2]; } } } else if (tmplDim == 3) { v[0] = 0.500*( 2.0*getSphere().getVolume( box.getMinPt(), box.getMaxPt(), 1, 2 ) - boxVol ); v[1] = 0.500*( 2.0*getSphere().getVolume( box.getMinPt(), box.getMaxPt(), 0, 2 ) - boxVol ); v[2] = 0.500*( 2.0*getSphere().getVolume( box.getMinPt(), box.getMaxPt(), 0, 1 ) - boxVol ); double e[3]; e[0] = 0.250*(sphVol - 2.0*s[1] - 2.0*v[0] - 2.0*v[1] - boxVol); e[1] = 0.250*(sphVol - 2.0*s[2] - 2.0*v[1] - 2.0*v[2] - boxVol); e[2] = 0.250*(sphVol - 2.0*s[0] - 2.0*v[0] - 2.0*v[2] - boxVol); v[3] = 0.125*( sphVol - 2.0*v[0] - 2.0*v[1] - 2.0*v[2] - 4.0*e[0] - 4.0*e[1] - 4.0*e[2] - boxVol ); if (pt[0] <= centrePt[0]) { if (pt[1] <= centrePt[1]) { if (pt[2] <= centrePt[2]) { vol = boxVol + v[0] + v[1] + v[2] + v[3] + e[0] + e[1] + e[2]; } else { vol = v[2] + v[3] + e[1] + e[2]; } } else { if (pt[2] <= centrePt[2]) { vol = v[1] + v[3] + e[0] + e[1]; } else { vol = v[3] + e[1]; } } } else { if (pt[1] <= centrePt[1]) { if (pt[2] <= centrePt[2]) { vol = v[0] + v[3] + e[0] + e[2]; } else { vol = v[3] + e[2]; } } else { if (pt[2] <= centrePt[2]) { vol = v[3] + e[0]; } else { vol = v[3]; } } } } return vol; } template double IntersectionVolCalculator::getTwoPlaneVolume( const Vec &pt, const int orientDim ) const { const int ZERO = orientDim; const int ONE = (orientDim+1) % tmplDim; const int TWO = (orientDim+2) % tmplDim; double vol = 0.0; const double sphVol = getSphere().getVolume(); const Vec ¢rePt = getSphere().getCentre(); if ((square(pt[ONE]-centrePt[ONE]) + square(pt[TWO]-centrePt[TWO])) < square(getSphere().getRadius())) { Plane plane[tmplDim]; plane[ZERO] = Plane(); plane[ONE] = Plane(getNormal(ONE), pt); plane[TWO] = Plane(getNormal(TWO), pt); const double halfSphVol = sphVol*0.5; double s[tmplDim]; s[ZERO] = 0; s[ONE] = getSphere().getSegmentVolume(plane[ONE]); s[TWO] = getSphere().getSegmentVolume(plane[TWO]); s[ONE] = ((s[ONE] > halfSphVol) ? (sphVol - s[ONE]) : s[ONE]); s[TWO] = ((s[TWO] > halfSphVol) ? (sphVol - s[TWO]) : s[TWO]); Vec distVec(4.0*getSphere().getRadius()); distVec[ONE] = plane[ONE].getDistanceTo(centrePt); distVec[TWO] = plane[TWO].getDistanceTo(centrePt); const double coreVol = 2.0*getSphere().getVolume( centrePt - Vec(distVec[ONE], distVec[TWO], distVec[ZERO]), centrePt + Vec(distVec[ONE], distVec[TWO], distVec[ZERO]) ); double v[tmplDim]; v[ONE] = 0.50*(sphVol - 2.0*s[TWO] - coreVol); v[TWO] = 0.50*(sphVol - 2.0*s[ONE] - coreVol); v[ZERO] = 0.25*(sphVol - 2.0*v[ONE] - 2.0*v[TWO] - coreVol); if (pt[ONE] <= centrePt[ONE]) { if (pt[TWO] <= centrePt[TWO]) { vol = coreVol + v[ONE] + v[TWO] + v[ZERO]; } else { vol = v[TWO] + v[ZERO]; } } else { if (pt[TWO] <= centrePt[TWO]) { vol = v[ONE] + v[ZERO]; } else { vol = v[ZERO]; } } } else { if (pt[ONE] <= centrePt[ONE]) { if (pt[TWO] <= centrePt[TWO]) { vol = sphVol - getSphere().getSegmentVolume(Plane(getNegNormal(ONE), pt)) - getSphere().getSegmentVolume(Plane(getNegNormal(TWO), pt)); } else { vol = getSphere().getSegmentVolume(Plane(getNormal(TWO), pt)); } } else { if (pt[TWO] <= centrePt[TWO]) { vol = getSphere().getSegmentVolume(Plane(getNormal(ONE), pt)); } else { vol = 0.0; } } } return vol; } template double IntersectionVolCalculator::getOutsidePointVolume( const Vec &pt ) const { double vol = 0.0; const double sphVol = getSphere().getVolume(); const Vec ¢rePt = getSphere().getCentre(); if (tmplDim == 2) { if (pt[0] <= centrePt[0]) { if (pt[1] <= centrePt[1]) { vol = sphVol - getSphere().getSegmentVolume(Plane(getNegNormal(0), pt)) - getSphere().getSegmentVolume(Plane(getNegNormal(1), pt)); } else { vol = getSphere().getSegmentVolume(Plane(getNormal(1), pt)); } } else { if (pt[1] <= centrePt[1]) { vol = getSphere().getSegmentVolume(Plane(getNormal(0), pt)); } else { vol = 0.0; } } } else if (tmplDim == 3) { const Vec diag = (centrePt - pt)*2.0; const Vec oppCorner = pt + diag; BasicBox box = BasicBox( componentMin(pt, oppCorner), componentMax(pt, oppCorner) ); double s[tmplDim]; double e[tmplDim]; for (int i = 0; i < tmplDim; i++) { s[i] = getSphere().getSegmentVolume(Plane(getNormal(i), box.getMaxPt())); e[i] = getTwoPlaneVolume(box.getMaxPt(), i); } double v[tmplDim+1]; v[0] = s[0] - 2.0*e[1] - 2.0*e[2]; v[1] = s[1] - 2.0*e[0] - 2.0*e[2]; v[2] = s[2] - 2.0*e[0] - 2.0*e[1]; v[3] = sphVol - (4.0*e[0] + 4.0*e[1] + 4.0*e[2] + 2.0*v[0] + 2.0*v[1] + 2.0*v[2]); if (pt[0] <= centrePt[0]) { if (pt[1] <= centrePt[1]) { if (pt[2] <= centrePt[2]) { vol = v[0] + v[1] + v[2] + v[3] + e[0] + e[1] + e[2]; } else { vol = v[2] + e[0] + e[1]; } } else { if (pt[2] <= centrePt[2]) { vol = v[1] + e[0] + e[2]; } else { vol = e[0]; } } } else { if (pt[1] <= centrePt[1]) { if (pt[2] <= centrePt[2]) { vol = v[0] + e[1] + e[2]; } else { vol = e[1]; } } else { if (pt[2] <= centrePt[2]) { vol = e[2]; } else { vol = 0.0; } } } } return vol; } template double IntersectionVolCalculator::getVolume( const Vertex &vtx ) { double vol = 0; if (getSphere().intersectsWith(vtx.getPoint())) { vol = getInsidePointVolume(vtx.getPoint()); } else { vol = getOutsidePointVolume(vtx.getPoint()); } return vol; } template double IntersectionVolCalculator::getVertexVolume( const BasicSphere &sphere ) { m_sphere = VolumeSphere(sphere); double vol = 0.0; std::vector vtxVol(getVertexBox().getNumVertices()); for (int i = 0; i < getVertexBox().getNumVertices(); i++) { vtxVol[i] = getVolume(getVertexBox().getVertex(i)); } if (tmplDim == 2) { vol = vtxVol[0] - vtxVol[1] - vtxVol[2] + vtxVol[3]; } else if (tmplDim == 3) { vol = vtxVol[7] + vtxVol[6] + vtxVol[5] - vtxVol[4] - vtxVol[3] - vtxVol[2] - vtxVol[1] + vtxVol[0]; } return vol; } template bool IntersectionVolCalculator::sphereContainsBox( const BasicSphere &sphere ) const { for (int i = 0; i < getVertexBox().getNumVertices(); i++) { if (!sphere.intersectsWith(getVertexBox().getVertex(i).getPoint())) { return false; } } return true; } template double IntersectionVolCalculator::getVolume( const BasicSphere &sphere ) { double vol = 0.0; if (getBox().intersectsWith(sphere)) { if (sphereContainsBox(sphere)) { vol = getBox().getVolume(); } else if (getBox().contains(sphere)) { vol = sphere.getVolume(); } else { vol = getVertexVolume(sphere); } } return vol; } } } } ./Geometry/Corner.h0000664000175000017500000000342712176660653014041 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CORNER_H #define __CORNER_H //-- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Triangle.h" #include "Geometry/Edge.h" //-- STL includes -- #include using std::vector; /*! \class Corner \brief Class representing the corner of a polygon \author Steffen Abe $Revision$ $Date$ */ class Corner { private: Vec3 m_p; Vec3 m_old_pos; vector m_edges; vector m_triangles; int m_id; int m_tag; public: Corner(const Vec3&,int,int); void addEdge(Edge*); void addTriangle(Triangle*); double sep(const Vec3&) const; // pair dist(const Vec3&) const ; // signed separation according to direction of the normal bool isValidContact(const Vec3&) const; Vec3 getDirectionFromPoint(const Vec3&) const; void move(const Vec3&); Vec3 getPos()const {return m_p;}; void setPos(const Vec3 &p) {m_p = p;} void applyForce(const Vec3 &f); int getID() const {return m_id;}; int getTag() const {return m_tag;}; double getDistMoved() {return (m_old_pos-m_p).norm();}; void resetOldPos(){m_old_pos=m_p;}; }; #endif // __CORNER_H ./Geometry/NeighbourTable.cpp0000664000175000017500000000137512176660653016036 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/NeighbourTable.h" namespace esys { namespace lsm { } } ./Geometry/PackerGenerators.cpp0000664000175000017500000000132312176660653016374 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/PackerGenerators.h" ./Geometry/ParticleFitter.cpp0000664000175000017500000000153312176660653016061 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ParticleFitter.h" namespace esys { namespace lsm { const SimpleParticle ParticleFitter::INVALID = SimpleParticle(Vec3::ZERO, 0.0, -1, -1); } } ./Geometry/LineSegment.h0000664000175000017500000000242512176660653015020 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LINE_SEGMENT_H #define __LINE_SEGMENT_H //--- Project includes --- #include "Foundation/vec3.h" #include "Geometry/Line.h" /*! \class LineSegment \brief Class representing a line segment for intersection/fitting calculation in 2D \author Steffen Abe $Date$ $Revision$ */ class LineSegment : public Line { private: double m_len; public: LineSegment(const Vec3&,const Vec3&); virtual ~LineSegment(){} virtual double sep(const Vec3&); virtual bool intersect(const Vec3&,const Vec3&); Vec3 getP1() {return Pos;}; Vec3 getP2() {return Pos+m_len*U;}; }; #endif // __LINE_SEGMENT_H ./Geometry/CubicBlock.cpp0000664000175000017500000000131612176660653015137 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/CubicBlock.h" ./Geometry/ParticleCollection.hpp0000664000175000017500000001037212176660653016725 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/ParticleCollection.h" #include #include #include #include #include #include namespace esys { namespace lsm { template ParticleCollection::ParticleCollection() : m_particlePoolPtr(), m_particleVector() { m_particlePoolPtr = ParticlePoolPtr(new ParticlePool(2048)); } template ParticleCollection::ParticleCollection( ParticlePoolPtr particlePoolPtr ) : m_particlePoolPtr(particlePoolPtr), m_particleVector() { } template ParticleCollection::ParticleCollection(const ParticleCollection &p) : m_particlePoolPtr(p.m_particlePoolPtr), m_particleVector(p.m_particleVector) { } template ParticleCollection & ParticleCollection::operator=(const ParticleCollection &p) { m_particlePoolPtr = p.m_particlePoolPtr; m_particleVector = p.m_particleVector; } template void ParticleCollection::noCheckInsertRef(Particle &p) { m_particleVector.push_back(&p); } template void ParticleCollection::insertRef(Particle &p) { if (m_particlePoolPtr->is_from(&p)) { noCheckInsertRef(p); } else { throw std::runtime_error( "ParticleCollection::insertRef: Tried to insert" " reference to non-created particle." ); } } template typename ParticleCollection::Particle & ParticleCollection::createParticle(const Particle &p) { Particle *newP = m_particlePoolPtr->construct(p); noCheckInsertRef(*newP); return *newP; } template ParticleCollection::~ParticleCollection() { } template int ParticleCollection::getNumParticles() const { return m_particleVector.size(); } template void ParticleCollection::translateBy(const Vec3 &vec) { ParticleIterator it = getParticleIterator(); while (it.hasNext()) { it.next().translateBy(vec); } } template void ParticleCollection::rotate( const Vec3 &rotation, const Vec3 &posn ) { ParticleIterator it = getParticleIterator(); while (it.hasNext()) { it.next().rotate(rotation, posn); } } template void ParticleCollection::incrementIdBy( typename Particle::Id idIncr ) { ParticleIterator it = getParticleIterator(); while (it.hasNext()) { Particle &p = it.next(); p.setId(p.getId() + idIncr); } } template BoundingBox ParticleCollection::getParticleBBox() const { Vec3 minPt = Vec3(std::numeric_limits::max()); Vec3 maxPt = -minPt; ParticleConstIterator it = getParticleIterator(); while (it.hasNext()) { const Particle &next = it.next(); minPt = cmin(minPt, next.getPos() - next.getRad()); maxPt = cmax(maxPt, next.getPos() + next.getRad()); } return BoundingBox(minPt, maxPt); } } } ./Geometry/RandomBoxPacker.h0000664000175000017500000001423112176660653015623 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMRANDOMBOXPACKER_H #define ESYS_LSMRANDOMBOXPACKER_H #include "Foundation/console.h" #include "Foundation/Rng.h" #include "Geometry/CubicBoxPacker.h" #include "Geometry/SphereFitter.h" #include "Geometry/Plane3D.h" #include #include namespace esys { namespace lsm { template class FittedParticleIterator { public: typedef TmplFitterTraits FitterTraits; typedef typename FitterTraits::Plane3D Plane3D; typedef typename FitterTraits::PlaneVector PlaneVector; typedef typename FitterTraits::Packer Packer; typedef typename Packer::Particle Particle; typedef typename Packer::ParticleVector ParticleVector; class FitTraits { public: typedef Packer Validator; typedef typename Packer::Particle Particle; typedef typename Packer::ParticleVector ParticleVector; typedef typename FitterTraits::Plane3D Plane3D; }; typedef SphereFitter Fitter; typedef boost::shared_ptr FitterPtr; typedef std::vector FitterPtrVector; typedef MoveToSurfaceFitter Move2SurfaceFitter; typedef ThreeDSphereFitter ThreeDFitter; typedef TwoDSphereFitter TwoDFitter; typedef TwoDPlaneSphereFitter TwoDPlaneFitter; typedef ThreeDPlaneSphereFitter ThreeDPlaneFitter; FittedParticleIterator( Packer &packer, int maxInsertionFailures, const PlaneVector &fitPlaneVector ); void initialiseFitterPtrVector(); int getMaxInsertionFailures() const; const FitterPtrVector &getFitterPtrVector() const; FitterPtrVector &getFitterPtrVector(); const PlaneVector &getFitPlaneVector() const; const Packer &getPacker() const; Packer &getPacker(); Plane3D getClosestFitPlane(const Particle &particle) const; double getRandom(double min, double max) const; Vec3 getRandomPoint() const; Particle getCandidateParticle(const Vec3 &point); ParticleVector getClosestNeighbours(const Particle& particle, int numClosest); Particle &generateNext(); bool hasNext(); Particle next(); void logInfo(); private: Packer *m_pPacker; PlaneVector m_fitPlaneVector; int m_maxInsertionFailures; int m_lastFailCount; int m_successCount; Particle m_next; FitterPtrVector m_fitterPtrVector; }; /** * */ template class TmplCubicBoxPackerWrap> class RandomBoxPacker : public TmplCubicBoxPackerWrap::CubicBoxPackerBase { public: typedef typename TmplCubicBoxPackerWrap::CubicBoxPackerBase Inherited; typedef typename Inherited::ParticleGenerator ParticleGenerator; typedef typename Inherited::ParticleGeneratorPtr ParticleGeneratorPtr; typedef typename Inherited::Particle Particle; typedef typename Inherited::NTable NTable; typedef typename Inherited::NTablePtr NTablePtr; typedef typename NTable::ParticleVector ParticleVector; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; typedef std::vector PlaneVector; class StufferTraits { public: typedef RandomBoxPacker Packer; typedef esys::lsm::Plane3D Plane3D; typedef typename Packer::PlaneVector PlaneVector; }; typedef FittedParticleIterator StuffedParticleIterator; RandomBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures ); RandomBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector ); virtual ~RandomBoxPacker(); PlaneVector getDefaultFitPlaneVector() const; bool particleIsValid(const Particle &particle) const; virtual void generate(); double getRandom(double min, double max) const; Vec3 getRandomPoint() const; ParticleVector getClosestNeighbours(const Particle& particle, int numClosest); int getMaxInsertionFailures() const; void generateRandomFill(); const PlaneVector &getFitPlaneVector() const; Plane3D getClosestFitPlane(const Particle &particle) const; private: PlaneVector m_fitPlaneVector; int m_maxInsertionFailures; }; } } #include "Geometry/RandomBoxPacker.hpp" #endif ./Geometry/GougeBlock3D.cpp0000664000175000017500000006173512176660653015362 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/GougeBlock3D.h" #include "Geometry/GeometryInfo.h" #include "Geometry/CircularNeighbourTable.h" #include "Geometry/RegularBlockGenerator.h" #include "Geometry/RandomBlockGenerator.h" #include "Geometry/GridIterator.h" #include #include #include #include namespace esys { namespace lsm { //========================================================================== PackingInfo::PackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, double minRadius, double maxRadius ) : m_bBox(bBox), m_periodicDimensions(periodicDimensions), m_orientation(orientation), m_minRadius(minRadius), m_maxRadius(maxRadius) { initialiseFitPlaneVector(); } bool PackingInfo::is3d() const { return (m_bBox.getSizes().Z() > 0.0); } void PackingInfo::initialiseFitPlaneVector() { m_fitPlaneVector.clear(); if ((m_orientation != XZ) && (!getPeriodicDimensions()[1])) { m_fitPlaneVector.push_back( Plane3D(Vec3(0, 1, 0), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(0, -1, 0), getBBox().getMaxPt()) ); } if ((m_orientation != YZ) && (!getPeriodicDimensions()[0])) { m_fitPlaneVector.push_back( Plane3D(Vec3( 1, 0, 0), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(-1, 0, 0), getBBox().getMaxPt()) ); } if ( is3d() && (m_orientation != XY) && (!getPeriodicDimensions()[2]) ) { m_fitPlaneVector.push_back( Plane3D(Vec3(0, 0, 1), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(0, 0, -1), getBBox().getMaxPt()) ); } } const BoundingBox &PackingInfo::getBBox() const { return m_bBox; } const PlaneVector &PackingInfo::getFitPlaneVector() const { return m_fitPlaneVector; } double PackingInfo::getMinRadius() const { return m_minRadius; } double PackingInfo::getMaxRadius() const { return m_maxRadius; } const BoolVector &PackingInfo::getPeriodicDimensions() const { return m_periodicDimensions; } //========================================================================== ParticleBlockPrms::ParticleBlockPrms() : m_size(0.0), m_minRadius(0.0), m_maxRadius(0.0) { } ParticleBlockPrms::ParticleBlockPrms( double size, double minRadius, double maxRadius ) : m_size(size), m_minRadius(minRadius), m_maxRadius(maxRadius) { } ParticleBlockPrms::~ParticleBlockPrms() { } //========================================================================== GougeBlockPrms::GougeBlockPrms() : m_bBox(Vec3::ZERO, Vec3::ZERO), m_padRadius(0.0), m_orientation(XZ), m_faultPrms(), m_gougePrms(), m_periodicDimensions(3, false), m_maxInsertionFailures(50), m_tolerance(DBL_EPSILON*128), m_connectionTolerance(DBL_EPSILON*128*10) { } GougeBlockPrms::GougeBlockPrms( const BoundingBox &bBox, double padRadius, Orientation orientation, const ParticleBlockPrms &faultRegionPrms, const ParticleBlockPrms &gougeRegionPrms, const BoolVector &periodicDimensions, int maxInsertionFailures, double tolerance , double connectionTolerance ) : m_bBox(bBox), m_padRadius(padRadius), m_orientation(orientation), m_faultPrms(faultRegionPrms), m_gougePrms(gougeRegionPrms), m_periodicDimensions(periodicDimensions), m_maxInsertionFailures(maxInsertionFailures), m_tolerance(tolerance), m_connectionTolerance(connectionTolerance) { m_bBox = GridIterator(bBox, getMaxRadius()).getSphereBBox(); } GougeBlockPrms::~GougeBlockPrms() { } const BoundingBox &GougeBlockPrms::getBBox() const { return m_bBox; } int GougeBlockPrms::getMaxInsertionFailures() const { return m_maxInsertionFailures; } const BoolVector &GougeBlockPrms::getPeriodicDimensions() const { return m_periodicDimensions; } Orientation GougeBlockPrms::getOrientation() const { return m_orientation; } double GougeBlockPrms::getTolerance() const { return m_tolerance; } double GougeBlockPrms::getConnectionTolerance() const { return m_connectionTolerance; } int GougeBlockPrms::getOrientationIndex() const { int idx = 0; switch (m_orientation) { case XZ: { idx = 1; break; } case YZ: { idx = 0; break; } case XY: { idx = 2; break; } default: { std::stringstream msg; msg << "Invalid orientation: " << m_orientation; throw std::runtime_error(msg.str()); } } return idx; } /*! generate a new bounding box on one side of the centre between two given distances \param d1 near distance \param d2 far distance */ BoundingBox GougeBlockPrms::cutFromCentre(double d1, double d2) const { const int idx = getOrientationIndex(); const BoundingBox bBox = getBBox(); // get near/far points const double centerPoint=0.5*(bBox.getMaxPt()[idx] + bBox.getMinPt()[idx]); const double cmp1 = d1 + centerPoint; const double cmp2 = d2 + centerPoint; // min/max point Vec3 minPt = bBox.getMinPt(); Vec3 maxPt = bBox.getMaxPt(); minPt[idx] = std::min(cmp1, cmp2); maxPt[idx] = std::max(cmp1, cmp2); // get maximum regular grid for box of size maxPt-minPt const BoundingBox gridBBox = GridIterator(BoundingBox(Vec3(0.0,0.0,0.0), maxPt-minPt), getMaxRadius()).getSphereBBox(); const double oldDim= maxPt[idx]-minPt[idx]; const double newDim= gridBBox.getSizes()[idx]; const double diffDim=oldDim-newDim; // adjust near side if(d1>0.0){ // "positive" side -> adjust minPt minPt[idx]+=diffDim; } else { // "negative" side -> adjust maxPt maxPt[idx]-=diffDim; } BoundingBox returnBBox = BoundingBox(minPt, maxPt); return returnBBox; } double GougeBlockPrms::getRegularBlockRadius() const { return m_padRadius; } double GougeBlockPrms::getFaultMinRadius() const { return m_faultPrms.m_minRadius; } double GougeBlockPrms::getFaultMaxRadius() const { return m_faultPrms.m_maxRadius; } double GougeBlockPrms::getGougeMinRadius() const { return m_gougePrms.m_minRadius; } double GougeBlockPrms::getGougeMaxRadius() const { return m_gougePrms.m_maxRadius; } double GougeBlockPrms::getOrientationSize() const { return ( getBBox().getMaxPt()[getOrientationIndex()] - getBBox().getMinPt()[getOrientationIndex()] ); } BoundingBoxVector GougeBlockPrms::getRegularBBoxVector() const { BoundingBoxVector bBoxVector; if (m_gougePrms.m_size + 2*m_faultPrms.m_size < getOrientationSize()) { bBoxVector.reserve(2); bBoxVector.push_back( cutFromCentre( -(m_gougePrms.m_size/2.0 + m_faultPrms.m_size), -getOrientationSize()/2.0 ) ); bBoxVector.push_back( cutFromCentre( m_gougePrms.m_size/2.0 + m_faultPrms.m_size, getOrientationSize()/2.0 ) ); } return bBoxVector; } PackingInfoVector GougeBlockPrms::getGougePackingInfoVector() const { PackingInfoVector packingInfoVector; if (m_gougePrms.m_size > 0.0) { Vec3 overlap = Vec3::ZERO; overlap[getOrientationIndex()] = m_faultPrms.m_maxRadius; BoundingBox bBox = cutFromCentre( m_gougePrms.m_size/2.0, -m_gougePrms.m_size/2.0 ); packingInfoVector.push_back( PackingInfo( BoundingBox(bBox.getMinPt() - overlap, bBox.getMaxPt() + overlap), getPeriodicDimensions(), getOrientation(), getGougeMinRadius(), getGougeMaxRadius() ) ); } return packingInfoVector; } PackingInfoVector GougeBlockPrms::getFaultPackingInfoVector() const { PackingInfoVector packingInfoVector; if (m_faultPrms.m_size > 0.0) { packingInfoVector.reserve(2); Vec3 overlap = Vec3::ZERO; overlap[getOrientationIndex()] = m_padRadius; BoundingBox bBox = cutFromCentre( -m_gougePrms.m_size/2.0, -(m_gougePrms.m_size/2.0 + m_faultPrms.m_size) ); packingInfoVector.push_back( PackingInfo( BoundingBox(bBox.getMinPt() - overlap, bBox.getMaxPt()), getPeriodicDimensions(), getOrientation(), getFaultMinRadius(), getFaultMaxRadius() ) ); bBox = cutFromCentre( m_gougePrms.m_size/2.0, m_gougePrms.m_size/2.0 + m_faultPrms.m_size ); packingInfoVector.push_back( PackingInfo( BoundingBox(bBox.getMinPt(), bBox.getMaxPt() + overlap), getPeriodicDimensions(), getOrientation(), getFaultMinRadius(), getFaultMaxRadius() ) ); } return packingInfoVector; } double GougeBlockPrms::getMaxRadius() const { return std::max( m_padRadius, std::max(m_faultPrms.m_maxRadius, m_gougePrms.m_maxRadius) ); } double GougeBlockPrms::getMinRadius() const { return std::min( m_padRadius, std::min(m_faultPrms.m_minRadius, m_gougePrms.m_minRadius) ); } bool GougeBlockPrms::is2d() const { return (getBBox().getSizes()[2] == 0.0); } //========================================================================== int GougeBlock3D::getNumParticles() const { int numParticles = 0; for ( GeneratorPtrVector::const_iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { numParticles += (*it)->getNumParticles(); } return numParticles; } GougeBlock3D::GougeBlock3D(const GougeBlockPrms &prms) : m_nTablePtr(), m_prms(prms), m_interactionSet(), m_gougeGenPtrVector(), m_genPtrVector(), m_particlePoolPtr(new ParticlePool(2048)), m_regularGenPtrVector(), m_faultGenPtrVector() { /* * Adjust the size of the ntable bounding-box to accommodate circular * boundary conditions. */ const BoundingBox bBox = m_prms.getBBox(); Vec3 ntableAdjust = Vec3( m_prms.getPeriodicDimensions()[0] ? 1 : 0, m_prms.getPeriodicDimensions()[1] ? 1 : 0, m_prms.getPeriodicDimensions()[2] ? 1 : 0 )*m_prms.getMaxRadius(); if (m_prms.getBBox().getSizes().Z() >= 4*m_prms.getMaxRadius()) { ntableAdjust += Vec3(m_prms.getMaxRadius(), 0, 0); } const BoundingBox nTableBBox(bBox.getMinPt(), bBox.getMaxPt() - ntableAdjust); m_nTablePtr = NTablePtr( new NTable( nTableBBox, (4.0*m_prms.getMinRadius()), // grid spacing m_prms.getPeriodicDimensions(), 2.1*m_prms.getMaxRadius() // width of border-region in which // particles are duplicated // for circular boundry ) ); } void GougeBlock3D::createRegularBlockGenerators() { BoundingBoxVector bBoxVector = m_prms.getRegularBBoxVector(); for ( BoundingBoxVector::const_iterator it = bBoxVector.begin(); it != bBoxVector.end(); it++ ) { std::cout << "regular block bounding box is :" << *it << std::endl; GeneratorPtr genPtr = GeneratorPtr( new RegularBlockGenerator( *(m_nTablePtr.get()), *(m_particlePoolPtr.get()), *it, m_prms.getPeriodicDimensions(), m_prms.getTolerance(), m_prms.getRegularBlockRadius() ) ); m_genPtrVector.push_back(genPtr); m_regularGenPtrVector.push_back(genPtr); } } void GougeBlock3D::createFaultBlockGenerators() { PackingInfoVector packingInfoVector = m_prms.getFaultPackingInfoVector(); for ( PackingInfoVector::const_iterator it = packingInfoVector.begin(); it != packingInfoVector.end(); it++ ) { GeneratorPtr genPtr = GeneratorPtr( new RandomBlockGenerator( *(m_nTablePtr.get()), *(m_particlePoolPtr.get()), it->getBBox(), it->getPeriodicDimensions(), m_prms.getTolerance(), it->getMinRadius(), it->getMaxRadius(), it->getFitPlaneVector(), m_prms.getMaxInsertionFailures() ) ); m_genPtrVector.push_back(genPtr); m_faultGenPtrVector.push_back(genPtr); } } void GougeBlock3D::createGougeBlockGenerators() { PackingInfoVector packingInfoVector = m_prms.getGougePackingInfoVector(); for ( PackingInfoVector::const_iterator it = packingInfoVector.begin(); it != packingInfoVector.end(); it++ ) { GeneratorPtr genPtr = GeneratorPtr( new RandomBlockGenerator( *(m_nTablePtr.get()), *(m_particlePoolPtr.get()), it->getBBox(), it->getPeriodicDimensions(), m_prms.getTolerance(), it->getMinRadius(), it->getMaxRadius(), it->getFitPlaneVector(), m_prms.getMaxInsertionFailures() ) ); m_genPtrVector.push_back(genPtr); m_gougeGenPtrVector.push_back(genPtr); } } GougeBlock3D::~GougeBlock3D() { } void GougeBlock3D::generate() { // setup block generators createRegularBlockGenerators(); createFaultBlockGenerators(); createGougeBlockGenerators(); // use block generators console.Info() << "bbox = " << m_prms.getBBox().getMinPt() << " " << m_prms.getBBox().getMaxPt() << "\n"; for ( GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { (*it)->generate(); } createInteractionSet(); } void GougeBlock3D::writeToFile(const std::string &fileName) const { std::ofstream fStream(fileName.c_str()); write(fStream); } const GougeBlock3D::GeneratorPtrVector &GougeBlock3D::getGougeGeneratorVector() const { return m_gougeGenPtrVector; } const GougeBlock3D::GeneratorPtrVector &GougeBlock3D::getFaultGeneratorVector() const { return m_faultGenPtrVector; } bool GougeBlock3D::areInDifferentFaultBlocks( const SimpleParticle &p1, const SimpleParticle &p2 ) const { const GeneratorPtrVector &generators = getFaultGeneratorVector(); if (generators.size() == 2) { return ( (generators[0]->contains(p1) && generators[1]->contains(p2)) || (generators[0]->contains(p2) && generators[1]->contains(p1)) ); } else if (generators.size() > 2) { throw std::runtime_error("GougeBlock3D::areInDifferentFaultBlocks: More than two fault blocks."); } return false; } bool GougeBlock3D::isGougeParticle(const SimpleParticle &particle) const { const GeneratorPtrVector &generators = getGougeGeneratorVector(); for ( GeneratorPtrVector::const_iterator it = generators.begin(); it != generators.end(); it++ ) { if ((*it)->contains(particle)) { return true; } } return false; } class InteractionValidator { public: inline InteractionValidator(const GougeBlock3D &gougeBlock, double tolerance) : m_pGougeBlock(&gougeBlock), m_tolerance(tolerance) { } inline bool isValid(const SimpleParticle &p1, const SimpleParticle &p2) const { return ( (p1.getID() < p2.getID()) && ((p1.getPos() - p2.getPos()).norm() < (m_tolerance + (p1.getRad() + p2.getRad()))) && ((!m_pGougeBlock->isGougeParticle(p1)) && (!m_pGougeBlock->isGougeParticle(p2))) && ((!m_pGougeBlock->areInDifferentFaultBlocks(p1, p2))) ); } private: const GougeBlock3D *m_pGougeBlock; double m_tolerance; }; class GeoParticleWriter { public: GeoParticleWriter(std::ostream &oStream, int precision) : m_pOStream(&oStream), m_precision(precision) { } void visitSimpleParticle(const SimpleParticle &particle) const { (*m_pOStream) << std::setprecision(m_precision) << particle.getPos() << " " << particle.getRad() << " " << particle.getID() << " " << particle.getTag() << "\n"; } private: std::ostream *m_pOStream; int m_precision; }; class GeoInteractionWriter { public: GeoInteractionWriter(std::ostream &oStream) : m_pOStream(&oStream) { } void visitBasicInteraction(const BasicInteraction &interaction) { (*m_pOStream) << interaction.first() << " " << interaction.second() << " " << 0 << "\n"; } private: std::ostream *m_pOStream; int m_precision; }; void GougeBlock3D::createInteractionSet() { NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); InteractionValidator validator = InteractionValidator(*this, m_prms.getConnectionTolerance()); while (particleIt.hasNext()) { const NTable::Particle *pParticle = particleIt.next(); const NTable::ParticleVector neighbours = m_nTablePtr->getNeighbourVector( pParticle->getPos(), pParticle->getRad() + m_prms.getConnectionTolerance() ); for ( NTable::ParticleVector::const_iterator it = neighbours.begin(); it != neighbours.end(); it++ ) { if (validator.isValid(*pParticle, *(*it))) { m_interactionSet.insert( BasicInteraction(pParticle->getID(), (*it)->getID()) ); } } } } const GougeBlock3D::InteractionSet &GougeBlock3D::getInteractionSet() const { return m_interactionSet; } class IdCompare { public: bool operator()(const SimpleParticle *p1, const SimpleParticle *p2) const { return (p1->getID() < p2->getID()); } }; void GougeBlock3D::write(std::ostream &oStream) const { Vec3 minPt = m_nTablePtr->getBBox().getMinPt(); Vec3 maxPt = m_nTablePtr->getBBox().getMaxPt(); if (fabs(maxPt.Z() - minPt.Z()) < (2*m_prms.getMaxRadius())) { minPt.Z() = minPt.Z() - m_prms.getMaxRadius() - m_prms.getTolerance(); maxPt.Z() = maxPt.Z() + m_prms.getMaxRadius() + m_prms.getTolerance(); } const BoundingBox geoBBox(minPt, maxPt + m_prms.getTolerance()); GeometryInfo info = GeometryInfo( 1.2, geoBBox.getMinPt(), geoBBox.getMaxPt(), m_prms.getPeriodicDimensions(), (m_prms.getBBox().getSizes().Z() <= 0.0) ); info.write(oStream); /* * Some ugliness to ensure that duplicated particles (because of * circular boundary conditions) get the correct tag. First, create * a set of particles which have already been tagged. */ NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); typedef std::set ParticleSet; ParticleSet taggedParticleSet; while (particleIt.hasNext()) { taggedParticleSet.insert(particleIt.next()); } /* * Now eliminate any particles which were generated with their centre-point * lying outside the geo bounding box. Also set the tag in case the particle * was a duplicate, created due to circular boundary. */ particleIt = m_nTablePtr->getParticleIterator(); ParticleSet particleSet; while (particleIt.hasNext()) { SimpleParticle *pParticle = particleIt.next(); if (geoBBox.contains(pParticle->getPos())) { pParticle->setTag((*(taggedParticleSet.find(pParticle)))->getTag()); particleSet.insert(pParticle); } } /* * Write particles to the stream. */ oStream << "\n" << "BeginParticles" << "\n" << "Simple" << "\n" << particleSet.size() << "\n"; const int precision = 12; GeoParticleWriter particleVisitor(oStream, precision); for (ParticleSet::const_iterator it = particleSet.begin(); it != particleSet.end(); it++) { particleVisitor.visitSimpleParticle(*(*it)); } oStream << "EndParticles\n" << "BeginConnect\n"; oStream << getInteractionSet().size() << "\n"; oStream.flush(); GeoInteractionWriter interactionVisitor(oStream); visitInteractions(interactionVisitor); oStream << "EndConnect"; oStream.flush(); } void GougeBlock3D::tagGougeParticles(int tag) { for ( GeneratorPtrVector::iterator it = m_gougeGenPtrVector.begin(); it != m_gougeGenPtrVector.end(); it++ ) { BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->setTag(tag); } } } void GougeBlock3D::tagFaultParticles(int tag) { for ( GeneratorPtrVector::iterator it = m_faultGenPtrVector.begin(); it != m_faultGenPtrVector.end(); it++ ) { BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next()->setTag(tag); } } } void GougeBlock3D::tagDrivingPlateParticles( int lowDrivingTag, int highDrivingTag, double distanceFromBBoxEdge ) { const int idx = this->m_prms.getOrientationIndex(); const double maxLow = m_prms.getBBox().getMinPt()[idx] + distanceFromBBoxEdge; const double minHigh = m_prms.getBBox().getMaxPt()[idx] - distanceFromBBoxEdge; int lowTagCount = 0; int highTagCount = 0; for ( GeneratorPtrVector::iterator it = m_regularGenPtrVector.begin(); it != m_regularGenPtrVector.end(); it++ ) { console.Info() << (*it)->getBBox().getMinPt() << " " << (*it)->getBBox().getMaxPt() << "\n"; BlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { SimpleParticle *pParticle = particleIt.next(); const double dimPos = pParticle->getPos()[idx]; const double radius = pParticle->getRad(); if (dimPos - radius <= maxLow) { pParticle->setTag(lowDrivingTag); lowTagCount++; } if (dimPos + radius >= minHigh) { pParticle->setTag(highDrivingTag); highTagCount++; } } } console.Info() << "Tagged " << lowTagCount << " particles with " << lowDrivingTag << "\n"; console.Info() << "Tagged " << highTagCount << " particles with " << highDrivingTag << "\n"; } } } ./Geometry/SphereBlockGenerator.h0000664000175000017500000000516112176660653016656 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ESYS_LSM_SPHEREBLOCKGENERATOR #define __ESYS_LSM_SPHEREBLOCKGENERATOR // --- project includes --- #include #include // --- STL includes --- #include using std::set; namespace esys { namespace lsm { /*! \class SphereBlockGenerator */ class SphereBlockGenerator : public ParticleGenerator { public: // types typedef NTable::ParticleVector ParticleVector; typedef NTable::ParticleIterator ParticleIterator; typedef set IdSet; // functions SphereBlockGenerator(NTable&,ParticlePool&,double,const Vec3&,double,double,double,int,int); virtual ~SphereBlockGenerator(); virtual void generate(); virtual void generateSeedParticles(); virtual void generateFillParticles(); virtual SimpleParticle generateParticle(const Vec3 &point); virtual void insertParticle(const SimpleParticle&); virtual double getRadius() const; int getNextId(); size_t getNumParticles() const {return m_idSet.size();}; const BoundingBox getBBox() const; virtual double getGridRadius() const; virtual bool particleFits(const SimpleParticle &particle) const; ParticleIterator getParticleIterator(){return ParticleIterator(m_particleVector);} vector getClosestNeighbors(const SimpleParticle&,int); bool findAFitWithSphere(SimpleParticle&, const vector&); bool findAFit(SimpleParticle&, const vector&); bool checkAFit(const SimpleParticle&); Vec3 getAPoint(); private: ParticleVector m_particleVector; double m_tol; IdSet m_idSet; Vec3 m_center; double m_radius; double m_min_rad; double m_max_rad; int m_max_tries; int m_tag; }; } } #endif // __ESYS_LSM_SPHEREBLOCKGENERATOR ./Geometry/IntersectionVolCalculator.cpp0000664000175000017500000000143212176660653020277 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Geometry/IntersectionVolCalculator.h" #include namespace esys { namespace lsm { } } ./Geometry/SplitBlock.h0000664000175000017500000000235212176660653014653 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SPLITBLOCK_H #define __SPLITBLOCK_H //-- project includes -- #include "RandomBlock.h" /*! \class CSplitBlock2D \brief Class for the generation of a split 2D random lattice in a rectangular area. \author Steffen Abe $Revision$ $Data:$ */ class CSplitBlock2D : public CRandomBlock2D { protected: double m_ysplit; public: CSplitBlock2D(double,double,double,double,double,double,double,bool circ_x=false); virtual ~CSplitBlock2D(); virtual void generate(int,unsigned int); virtual void tagSplit(int,int,double); }; #endif // __SPLITBLOCK_H ./Geometry/CubicBlock.hpp0000664000175000017500000000207712176660653015151 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBLOCK_HPP #define ESYS_LSMCUBICBLOCK_HPP namespace esys { namespace lsm { template CubicBlock::CubicBlock( unsigned int numX, unsigned int numY, unsigned int numZ, double radius, ClosePackOrientation orientation ) : Inherited(numX, numY, numZ, radius, orientation) { } } } #endif ./Geometry/CubicBoxPacker.h0000664000175000017500000000523012176660653015427 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMCUBICBOXPACKER_H #define ESYS_LSMCUBICBOXPACKER_H #include namespace esys { namespace lsm { typedef std::vector BoolVector; /** * */ template class CubicBoxPacker : public TmplBoxPackerBase { public: typedef TmplParticleGenerator ParticleGenerator; typedef boost::shared_ptr ParticleGeneratorPtr; typedef TmplBoxPackerBase Inherited; typedef Inherited BoxPackerBase; typedef typename Inherited::Particle Particle; typedef typename Inherited::NTable NTable; typedef typename Inherited::NTablePtr NTablePtr; typedef typename Inherited::ParticlePool ParticlePool; typedef typename Inherited::ParticlePoolPtr ParticlePoolPtr; CubicBoxPacker( ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius ); virtual ~CubicBoxPacker(); Particle getCandidateParticle(const Vec3 &point); Particle getCandidateParticle(const Vec3 &point, double radius); double getCubicPackingRadius() const; const ParticleGenerator &getParticleGenerator() const; ParticleGenerator &getParticleGenerator(); void setParticleGenerator(ParticleGenerator &particleGenerator); void setParticleGenerator(ParticleGeneratorPtr particleGenerator); void generateCubicPacking(); virtual void generate(); private: double m_cubicPackRadius; ParticleGeneratorPtr m_particleGeneratorPtr; ParticleGenerator *m_pParticleGenerator; }; } } #include "Geometry/CubicBoxPacker.hpp" #endif ./Geometry/Corner.cpp0000664000175000017500000000513512176660653014372 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Corner.h" /*! constructor \param pos the position of the corner \param id the node id \param tag the node tag */ Corner::Corner(const Vec3& pos,int id, int tag) { m_p=pos; m_old_pos=m_p; m_id=id; m_tag=tag; } /*! add Edge to corner \param edge a pointer to the edge */ void Corner::addEdge(Edge* edge) { m_edges.push_back(edge); } /*! add Triangle to Corner \param triangle a pointer to the triangle */ void Corner::addTriangle(Triangle* triangle) { m_triangles.push_back(triangle); } void Corner::applyForce(const Vec3 &f) { if (m_triangles.size() > 0) { const Vec3 portionF = f*(1.0/m_triangles.size()); for ( std::vector::iterator it = m_triangles.begin(); it != m_triangles.end(); ++it ){ (*it)->applyForce(portionF); } } } /*! get distance between corner and point \param p the point */ double Corner::sep(const Vec3& p) const { return (m_p-p).norm(); } /*! check if the contact between a particle at a point and the corner is valid or if there is a contact between the particle and any of the adjacent edges or triangles \param p the center of the particle */ bool Corner::isValidContact(const Vec3& p) const { bool res=true; // check vs. Triangles vector::const_iterator titer=m_triangles.begin(); while((titer!=m_triangles.end())&&(res)){ res=!((*titer)->dist(p).first); titer++; } // if no contact with triangle, check vs. Edges if(res){ vector::const_iterator eiter=m_edges.begin(); while((eiter!=m_edges.end())&&(res)){ res=!((*eiter)->dist(p).first); eiter++; } } return res; } /*! get the unit direction vector between a point and the corner \param p the point */ Vec3 Corner::getDirectionFromPoint(const Vec3& p) const { return (p-m_p).unit(); } /*! move the corner \param d the displacement */ void Corner::move(const Vec3& d) { m_p+=d; } ./Geometry/Sphere3d.h0000664000175000017500000000244612176660653014266 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SPHERE3D_H #define __SPHERE3D_H //-- project includes -- #include "Foundation/vec3.h" /*! \class Sphere3D \brief Just methods to calculate the position and dimension of a 2D sphere under given constraints (see the .cpp file). \author David Place, Steffen Abe $Revision$ $Date$ */ class Sphere3D { private: static double NearZero; public: static bool FillIn(const Vec3&,const Vec3&,const Vec3&,const Vec3&,double,double,double,double,Vec3&,double&); static bool FillInWP(const Vec3&,const Vec3&,const Vec3&,const Vec3&,const Vec3&,double,double,double,Vec3&,double&) ; }; #endif // __SPHERE3D_H ./Geometry/GougeConfig.hpp0000664000175000017500000010526512176660653015350 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Foundation/console.h" #include "Geometry/GeometryInfo.h" #include "Geometry/CircularNeighbourTable.h" #include #include #include #include namespace esys { namespace lsm { //========================================================================== PackingInfo::PackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, double minRadius, double maxRadius ) : m_bBox(bBox), m_periodicDimensions(periodicDimensions), m_orientation(orientation), m_minRadius(minRadius), m_maxRadius(maxRadius) { initialiseFitPlaneVector(); } bool PackingInfo::is3d() const { return (m_bBox.getSizes().Z() > 0.0); } void PackingInfo::initialiseFitPlaneVector() { m_fitPlaneVector.clear(); if ((m_orientation != XZ) && (!getPeriodicDimensions()[1])) { m_fitPlaneVector.push_back( Plane3D(Vec3(0, 1, 0), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(0, -1, 0), getBBox().getMaxPt()) ); } if ((m_orientation != YZ) && (!getPeriodicDimensions()[0])) { m_fitPlaneVector.push_back( Plane3D(Vec3( 1, 0, 0), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(-1, 0, 0), getBBox().getMaxPt()) ); } if ( is3d() && (m_orientation != XY) && (!getPeriodicDimensions()[2]) ) { m_fitPlaneVector.push_back( Plane3D(Vec3(0, 0, 1), getBBox().getMinPt()) ); m_fitPlaneVector.push_back( Plane3D(Vec3(0, 0, -1), getBBox().getMaxPt()) ); } } const BoundingBox &PackingInfo::getBBox() const { return m_bBox; } const PlaneVector &PackingInfo::getFitPlaneVector() const { return m_fitPlaneVector; } double PackingInfo::getMinParticleRadius() const { return m_minRadius; } double PackingInfo::getMaxParticleRadius() const { return m_maxRadius; } const BoolVector &PackingInfo::getPeriodicDimensions() const { return m_periodicDimensions; } //========================================================================== template GougePackingInfo::GougePackingInfo( const BoundingBox &bBox, const BoolVector &periodicDimensions, Orientation orientation, ParticleGrainGen &particleGrainGen ) : Inherited( bBox, periodicDimensions, orientation, particleGrainGen.getMinParticleRadius(), particleGrainGen.getMaxParticleRadius() ), m_pParticleGrainGen(&particleGrainGen) { } template typename GougePackingInfo::ParticleGrainGen & GougePackingInfo::getParticleGrainGen() const { return *m_pParticleGrainGen; } #if 0 template const typename GougePackingInfo::ParticleGrainGen & GougePackingInfo::getParticleGrainGen() const { return *m_pParticleGrainGen; } #endif template double GougePackingInfo::getMinGrainRadius() const { return getParticleGrainGen().getMinGrainRadius(); } template double GougePackingInfo::getMaxGrainRadius() const { return getParticleGrainGen().getMaxGrainRadius(); } //========================================================================== ParticleRndPackPrms::ParticleRndPackPrms() : m_size(0.0), m_minParticleRadius(0.0), m_maxParticleRadius(0.0) { } ParticleRndPackPrms::ParticleRndPackPrms( double size, double minRadius, double maxRadius ) : m_size(size), m_minParticleRadius(minRadius), m_maxParticleRadius(maxRadius) { } ParticleRndPackPrms::~ParticleRndPackPrms() { } double ParticleRndPackPrms::getSize() const { return m_size; } double ParticleRndPackPrms::getMinParticleRadius() const { return m_minParticleRadius; } double ParticleRndPackPrms::getMaxParticleRadius() const { return m_maxParticleRadius; } //========================================================================== template GrainRndPackPrms::GrainRndPackPrms() : Inherited(), m_pParticleGrainGen(NULL) { } template GrainRndPackPrms::GrainRndPackPrms( double size, ParticleGrainGen &particleGrainGen, int connectionTag ) : Inherited( size, particleGrainGen.getMinParticleRadius(), particleGrainGen.getMaxParticleRadius() ), m_pParticleGrainGen(&particleGrainGen), m_connectionTag(connectionTag) { } template typename GrainRndPackPrms::ParticleGrainGen & GrainRndPackPrms::getParticleGrainGen() const { return *m_pParticleGrainGen; } template int GrainRndPackPrms::getConnectionTag() const { return m_connectionTag; } #if 0 template const typename GrainRndPackPrms::ParticleGrainGen & GrainRndPackPrms::getParticleGrainGen() const { return *m_pParticleGrainGen; } #endif template double GrainRndPackPrms::getMinGrainRadius() { return getParticleGrainGen().getMinGrainRadius(); } template double GrainRndPackPrms::getMaxGrainRadius() { return getParticleGrainGen().getMaxGrainRadius(); } //========================================================================== template GougeConfigPrms::GougeConfigPrms() : m_bBox(Vec3::ZERO, Vec3::ZERO), m_padRadius(0.0), m_orientation(XZ), m_faultPrms(), m_gougePrms(), m_periodicDimensions(3, false), m_maxInsertionFailures(50), m_tolerance(DBL_EPSILON*128), m_connectionTolerance(DBL_EPSILON*128*10), m_blockConnectionTag(0) { } template GougeConfigPrms::GougeConfigPrms( const BoundingBox &bBox, double padRadius, Orientation orientation, const ParticleRndPackPrms &faultRegionPrms, const GrainRPackPrms &gougeRegionPrms, const BoolVector &periodicDimensions, int maxInsertionFailures, double tolerance , double connectionTolerance, int blockConnectionTag ) : m_bBox(bBox), m_padRadius(padRadius), m_orientation(orientation), m_faultPrms(faultRegionPrms), m_gougePrms(gougeRegionPrms), m_periodicDimensions(periodicDimensions), m_maxInsertionFailures(maxInsertionFailures), m_tolerance(tolerance), m_connectionTolerance(connectionTolerance), m_blockConnectionTag(blockConnectionTag) { m_bBox = GridIterator(bBox, getMaxRadius()).getSphereBBox(); } template GougeConfigPrms::~GougeConfigPrms() { } template const BoundingBox &GougeConfigPrms::getBBox() const { return m_bBox; } template int GougeConfigPrms::getGougeConnectionTag() const { return m_gougePrms.getConnectionTag(); } template int GougeConfigPrms::getBlockConnectionTag() const { return m_blockConnectionTag; } template int GougeConfigPrms::getMaxInsertionFailures() const { return m_maxInsertionFailures; } template const BoolVector &GougeConfigPrms::getPeriodicDimensions() const { return m_periodicDimensions; } template Orientation GougeConfigPrms::getOrientation() const { return m_orientation; } template double GougeConfigPrms::getTolerance() const { return m_tolerance; } template double GougeConfigPrms::getConnectionTolerance() const { return m_connectionTolerance; } template int GougeConfigPrms::getOrientationIndex() const { int idx = 0; switch (m_orientation) { case XZ: { idx = 1; break; } case YZ: { idx = 0; break; } case XY: { idx = 2; break; } default: { std::stringstream msg; msg << "Invalid orientation: " << m_orientation; throw std::runtime_error(msg.str()); } } return idx; } template BoundingBox GougeConfigPrms::cutFromCentre(double d1, double d2) const { const int idx = getOrientationIndex(); const BoundingBox bBox = getBBox(); const double cmp1 = d1 + (bBox.getMaxPt()[idx] + bBox.getMinPt()[idx])/2.0; const double cmp2 = d2 + (bBox.getMaxPt()[idx] + bBox.getMinPt()[idx])/2.0; Vec3 minPt = bBox.getMinPt(); Vec3 maxPt = bBox.getMaxPt(); minPt[idx] = std::min(cmp1, cmp2); maxPt[idx] = std::max(cmp1, cmp2); Vec3 tmpPt = maxPt; tmpPt[idx] = minPt[idx]; if ((tmpPt - bBox.getMinPt())[idx] > getTolerance()) { const BoundingBox minBBox = GridIterator(BoundingBox(bBox.getMinPt(), tmpPt), getMaxRadius()).getSphereBBox(); tmpPt = minPt; tmpPt[idx] = minBBox.getMaxPt()[idx]; } else { tmpPt = bBox.getMinPt(); } const BoundingBox maxBBox = GridIterator(BoundingBox(bBox.getMinPt(), maxPt), getMaxRadius()).getSphereBBox(); BoundingBox returnBBox = BoundingBox(tmpPt, maxBBox.getMaxPt()); return returnBBox; } template double GougeConfigPrms::getRegularBlockRadius() const { return m_padRadius; } template double GougeConfigPrms::getFaultMinRadius() const { return m_faultPrms.getMinParticleRadius(); } template double GougeConfigPrms::getFaultMaxRadius() const { return m_faultPrms.getMaxParticleRadius(); } template double GougeConfigPrms::getGougeMinRadius() const { return m_gougePrms.getMinParticleRadius(); } template double GougeConfigPrms::getGougeMaxRadius() const { return m_gougePrms.getMaxParticleRadius(); } template double GougeConfigPrms::getOrientationSize() const { return ( getBBox().getMaxPt()[getOrientationIndex()] - getBBox().getMinPt()[getOrientationIndex()] ); } template BoundingBoxVector GougeConfigPrms::getRegularBBoxVector() const { BoundingBoxVector bBoxVector; if ( (getOrientationSize() - (m_gougePrms.getSize() + 2*m_faultPrms.getSize())) > 2.0*m_padRadius ) { bBoxVector.reserve(2); bBoxVector.push_back( cutFromCentre( -(m_gougePrms.getSize()/2.0 + m_faultPrms.getSize()), -getOrientationSize()/2.0 ) ); bBoxVector.push_back( cutFromCentre( m_gougePrms.getSize()/2.0 + m_faultPrms.getSize(), getOrientationSize()/2.0 ) ); } return bBoxVector; } template typename GougeConfigPrms::GougePackingInfoVector GougeConfigPrms::getGougePackingInfoVector() const { GougePackingInfoVector infoVec; if (m_gougePrms.getSize() > 0.0) { Vec3 overlap = Vec3::ZERO; overlap[getOrientationIndex()] = m_faultPrms.getMaxParticleRadius(); BoundingBox bBox = cutFromCentre( m_gougePrms.getSize()/2.0, -m_gougePrms.getSize()/2.0 ); infoVec.push_back( GougePackInfo( BoundingBox(bBox.getMinPt() - overlap, bBox.getMaxPt() + overlap), getPeriodicDimensions(), getOrientation(), m_gougePrms.getParticleGrainGen() ) ); } return infoVec; } template PackingInfoVector GougeConfigPrms::getFaultPackingInfoVector() const { PackingInfoVector infoVec; if (m_faultPrms.getSize() > 0.0) { if ( (getOrientationSize() - (m_gougePrms.getSize() + 2.0*m_faultPrms.getSize())) > 0.0 ) { infoVec.reserve(2); const double roughnessSize = m_faultPrms.getSize(); Vec3 overlap = Vec3::ZERO; overlap[getOrientationIndex()] = m_padRadius; const BoundingBox bBox1 = cutFromCentre( -m_gougePrms.getSize()/2.0, -(m_gougePrms.getSize()/2.0 + roughnessSize) ); const BoundingBox bBox2 = cutFromCentre( m_gougePrms.getSize()/2.0, m_gougePrms.getSize()/2.0 + roughnessSize ); infoVec.push_back( PackingInfo( BoundingBox(bBox1.getMinPt() - overlap, bBox1.getMaxPt()), getPeriodicDimensions(), getOrientation(), getFaultMinRadius(), getFaultMaxRadius() ) ); infoVec.push_back( PackingInfo( BoundingBox(bBox2.getMinPt(), bBox2.getMaxPt() + overlap), getPeriodicDimensions(), getOrientation(), getFaultMinRadius(), getFaultMaxRadius() ) ); } else { std::stringstream msg; msg << "Roughness size plus gouge size is greater than block size: " << "2*" << m_faultPrms.getSize() << " + " << m_gougePrms.getSize() << " > " << getOrientationSize(); throw std::runtime_error(msg.str().c_str()); } } return infoVec; } template double GougeConfigPrms::getMaxRadius() const { return std::max( m_padRadius, std::max(m_faultPrms.getMaxParticleRadius(), m_gougePrms.getMaxParticleRadius()) ); } template double GougeConfigPrms::getMinRadius() const { return std::min( m_padRadius, std::min(m_faultPrms.getMinParticleRadius(), m_gougePrms.getMinParticleRadius()) ); } template bool GougeConfigPrms::is2d() const { return (getBBox().getSizes()[2] == 0.0); } //========================================================================== template int GougeConfig::getNumParticles() const { int numParticles = 0; for ( typename GeneratorPtrVector::const_iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { numParticles += (*it)->getNumParticles(); } return numParticles; } template int GougeConfig::getNumGrains() const { int numGrains = 0; for ( typename GrainRndPackerPtrVector::const_iterator packerIt = getGougeGeneratorVector().begin(); packerIt != getGougeGeneratorVector().end(); packerIt++ ) { numGrains += (*packerIt)->getNumGrains(); } return numGrains; } template int GougeConfig::getNumConnections() const { return m_connectionSet.size(); } template GougeConfig::GougeConfig(const GougeConfPrms &prms) : m_nTablePtr(), m_prms(prms), m_connectionSet(), m_gougeGenPtrVector(), m_genPtrVector(), m_particlePoolPtr(new ParticlePool(8*4096)), m_grainPoolPtr(new GrainPool(4096)), m_regularGenPtrVector(), m_faultGenPtrVector() { /* * Adjust the size of the ntable bounding-box to accommodate circular * boundary conditions. */ const BoundingBox bBox = m_prms.getBBox(); Vec3 ntableAdjust = Vec3( m_prms.getPeriodicDimensions()[0] ? 1 : 0, m_prms.getPeriodicDimensions()[1] ? 1 : 0, m_prms.getPeriodicDimensions()[2] ? 1 : 0 )*m_prms.getMaxRadius(); if (m_prms.getBBox().getSizes().Z() >= 4*m_prms.getMaxRadius()) { ntableAdjust += Vec3(m_prms.getMaxRadius(), 0, 0); } const BoundingBox nTableBBox(bBox.getMinPt(), bBox.getMaxPt() - ntableAdjust); m_nTablePtr = NTablePtr( new NTable( nTableBBox, (4.0*m_prms.getMinRadius()), // grid spacing m_prms.getPeriodicDimensions(), 2.1*m_prms.getMaxRadius() // width of border-region in which // particles are duplicated // for circular boundry ) ); } template void GougeConfig::createRegularBlockGenerators() { BoundingBoxVector bBoxVector = m_prms.getRegularBBoxVector(); for ( BoundingBoxVector::const_iterator it = bBoxVector.begin(); it != bBoxVector.end(); it++ ) { console.Debug() << "GougeConfig::createRegularBlockGenerators:" << "Creating RegBoxPacker in box: " << StringUtil::toString(*it) << "\n"; GeneratorPtr genPtr = GeneratorPtr( new RegBoxPacker( RegRadiusGenPtr(new RegRadiusGen(m_prms.getRegularBlockRadius())), m_particlePoolPtr, m_nTablePtr, *it, m_prms.getPeriodicDimensions(), m_prms.getTolerance(), m_prms.getRegularBlockRadius() ) ); m_genPtrVector.push_back(genPtr); m_regularGenPtrVector.push_back(genPtr); } } template void GougeConfig::createFaultBlockGenerators() { PackingInfoVector infoVec = m_prms.getFaultPackingInfoVector(); for ( PackingInfoVector::const_iterator it = infoVec.begin(); it != infoVec.end(); it++ ) { console.Debug() << "GougeConfig::createFaultBlockGenerators:" << "Creating RndBoxPacker in box: " << StringUtil::toString(it->getBBox()) << "\n"; GeneratorPtr genPtr = GeneratorPtr( new RndBoxPacker( RndRadiusGenPtr( new RndRadiusGen( it->getMinParticleRadius(), it->getMaxParticleRadius() ) ), m_particlePoolPtr, m_nTablePtr, it->getBBox(), it->getPeriodicDimensions(), m_prms.getTolerance(), it->getMaxParticleRadius(), m_prms.getMaxInsertionFailures(), it->getFitPlaneVector() ) ); m_genPtrVector.push_back(genPtr); m_faultGenPtrVector.push_back(genPtr); } } template void GougeConfig::createGougeConfigGenerators() { GougePackingInfoVector infoVec = m_prms.getGougePackingInfoVector(); for ( typename GougePackingInfoVector::const_iterator it = infoVec.begin(); it != infoVec.end(); it++ ) { console.Debug() << "GougeConfig::createGougeConfigGenerators:" << "Creating GrainRandomPacker in box: " << StringUtil::toString(it->getBBox()) << "\n"; GrainRandomPackerPtr genPtr = GrainRandomPackerPtr( new GrainRandomPacker( typename GrainRandomPacker::ParticleGrainGenPtr(), m_particlePoolPtr, m_nTablePtr, it->getBBox(), it->getPeriodicDimensions(), m_prms.getTolerance(), it->getParticleGrainGen().getMaxGrainRadius(), m_prms.getMaxInsertionFailures(), it->getFitPlaneVector(), m_grainPoolPtr ) ); genPtr->setParticleGrainGen(it->getParticleGrainGen()); m_genPtrVector.push_back(genPtr); m_gougeGenPtrVector.push_back(genPtr); } } template GougeConfig::~GougeConfig() { } template void GougeConfig::generate() { // setup block generators createRegularBlockGenerators(); createFaultBlockGenerators(); createGougeConfigGenerators(); // use block generators console.Info() << "bbox = " << m_prms.getBBox().getMinPt() << " " << m_prms.getBBox().getMaxPt() << "\n"; for ( typename GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { (*it)->generate(); } createConnectionSet(); } template void GougeConfig::writeToFile(const std::string &fileName) const { std::ofstream fStream(fileName.c_str()); write(fStream); } template const typename GougeConfig::GrainRndPackerPtrVector & GougeConfig::getGougeGeneratorVector() const { return m_gougeGenPtrVector; } template typename GougeConfig::GrainRndPackerPtrVector & GougeConfig::getGougeGeneratorVector() { return m_gougeGenPtrVector; } template const typename GougeConfig::GeneratorPtrVector & GougeConfig::getFaultGeneratorVector() const { return m_faultGenPtrVector; } template bool GougeConfig::areInDifferentFaultBlocks( const Particle &p1, const Particle &p2 ) const { const GeneratorPtrVector &generators = getFaultGeneratorVector(); if (generators.size() == 2) { return ( (generators[0]->contains(p1) && generators[1]->contains(p2)) || (generators[0]->contains(p2) && generators[1]->contains(p1)) ); } else if (generators.size() > 2) { throw std::runtime_error( "GougeConfig::areInDifferentFaultBlocks: " "More than two fault blocks." ); } return false; } template bool GougeConfig::isGougeParticle(const Particle &particle) const { const GrainRndPackerPtrVector &generators = getGougeGeneratorVector(); for ( typename GrainRndPackerPtrVector::const_iterator it = generators.begin(); it != generators.end(); it++ ) { if ((*it)->contains(particle)) { return true; } } return false; } template void GougeConfig::createConnectionSet() { // // First created connections in the elastic blocks. // typename NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); ConnectionValidator validator = ConnectionValidator(*this, m_prms.getConnectionTolerance()); while (particleIt.hasNext()) { const typename NTable::Particle *pParticle = particleIt.next(); const typename NTable::ParticleVector neighbours = m_nTablePtr->getNeighbourVector( pParticle->getPos(), pParticle->getRad() + m_prms.getConnectionTolerance() ); for ( typename NTable::ParticleVector::const_iterator it = neighbours.begin(); it != neighbours.end(); it++ ) { if (validator.isValid(*pParticle, *(*it))) { m_connectionSet.insert( typename ConnectionSet::value_type( pParticle->getID(), (*it)->getID(), m_prms.getBlockConnectionTag() ) ); } } } const int numBlockConns = m_connectionSet.size(); console.Info() << "Created " << numBlockConns << " connections in " << "bonded blocks.\n"; // // Create connections with grains. // console.Debug() << "Prms BBox: " << StringUtil::toString(m_prms.getBBox()) << "\n"; console.Debug() << "NTbl BBox: " << StringUtil::toString(m_nTablePtr->getBBox()) << "\n"; for ( typename GrainRndPackerPtrVector::iterator packerIt = getGougeGeneratorVector().begin(); packerIt != getGougeGeneratorVector().end(); packerIt++ ) { typename GrainRandomPacker::GrainIterator grainIt = (*packerIt)->getGrainIterator(); while (grainIt.hasNext()) { ConnectionFinder connFinder = ConnectionFinder( m_prms.getConnectionTolerance(), m_prms.getGougeConnectionTag(), m_nTablePtr->getBBox(), m_nTablePtr->getPeriodicDimensions() ); Grain &g = grainIt.next(); connFinder.create(g.getParticleIterator()); typename ConnectionFinder::Iterator connIt = connFinder.getIterator(); while (connIt.hasNext()) { m_connectionSet.insert(connIt.next()); } if (connFinder.getNumConnections() == 0) { console.Info() << "Found no connections in grain " << g.getId() << ":\n"; typename Grain::ParticleIterator partIt = g.getParticleIterator(); while (partIt.hasNext()) { console.Info() << StringUtil::toString(partIt.next()) << "\n"; } } } } console.Info() << "Created " << m_connectionSet.size()-numBlockConns << " connections in " << "gouge region.\n"; } template typename GougeConfig::ParticleCollection GougeConfig::getParticleCollection() { ParticleCollection pCollection(m_particlePoolPtr); for ( typename GeneratorPtrVector::iterator it = m_genPtrVector.begin(); it != m_genPtrVector.end(); it++ ) { ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { pCollection.insertRef(particleIt.next()); } } return pCollection; } template typename GougeConfig::GrainCollection GougeConfig::getGrainCollection() { GrainCollection gCollection(m_particlePoolPtr, m_grainPoolPtr); for ( typename GrainRndPackerPtrVector::iterator packerIt = getGougeGeneratorVector().begin(); packerIt != getGougeGeneratorVector().end(); packerIt++ ) { GrainIterator grainIt = (*packerIt)->getGrainIterator(); while (grainIt.hasNext()) { gCollection.insertRef(grainIt.next()); } } return gCollection; } template const typename GougeConfig::ConnectionSet & GougeConfig::getConnectionSet() const { return m_connectionSet; } template void GougeConfig::write(std::ostream &oStream) const { Vec3 minPt = m_nTablePtr->getBBox().getMinPt(); Vec3 maxPt = m_nTablePtr->getBBox().getMaxPt(); if (fabs(maxPt.Z() - minPt.Z()) < (2*m_prms.getMaxRadius())) { minPt.Z() = minPt.Z() - m_prms.getMaxRadius() - m_prms.getTolerance(); maxPt.Z() = maxPt.Z() + m_prms.getMaxRadius() + m_prms.getTolerance(); } const BoundingBox geoBBox(minPt, maxPt + m_prms.getTolerance()); GeometryInfo info = GeometryInfo( 1.2, geoBBox.getMinPt(), geoBBox.getMaxPt(), m_prms.getPeriodicDimensions(), (m_prms.getBBox().getSizes().Z() <= 0.0) ); info.write(oStream); /* * Some ugliness to ensure that duplicated particles (because of * circular boundary conditions) get the correct tag. First, create * a set of particles which have already been tagged. */ typename NTable::ParticleIterator particleIt = m_nTablePtr->getParticleIterator(); typedef std::set ParticleSet; ParticleSet taggedParticleSet; while (particleIt.hasNext()) { taggedParticleSet.insert(particleIt.next()); } /* * Now eliminate any particles which were generated with their centre-point * lying outside the geo bounding box. Also set the tag in case the particle * was a duplicate, created due to circular boundary. */ particleIt = m_nTablePtr->getParticleIterator(); ParticleSet particleSet; while (particleIt.hasNext()) { Particle *pParticle = particleIt.next(); if (geoBBox.contains(pParticle->getPos())) { pParticle->setTag((*(taggedParticleSet.find(pParticle)))->getTag()); particleSet.insert(pParticle); } } /* * Write particles to the stream. */ oStream << "\n" << "BeginParticles" << "\n" << "Simple" << "\n" << particleSet.size() << "\n"; const int precision = 12; GeoParticleWriter particleVisitor(oStream, precision); for ( typename ParticleSet::const_iterator it = particleSet.begin(); it != particleSet.end(); it++ ) { particleVisitor.visitParticle(*(*it)); } oStream << "EndParticles\n" << "BeginConnect\n"; oStream << getConnectionSet().size() << "\n"; oStream.flush(); GeoConnectionWriter connectionVisitor(oStream); visitConnections(connectionVisitor); oStream << "EndConnect"; oStream.flush(); } template void GougeConfig::tagGougeParticles(int tag) { for ( typename GrainRndPackerPtrVector::iterator it = m_gougeGenPtrVector.begin(); it != m_gougeGenPtrVector.end(); it++ ) { typename GrainRandomPacker::ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next().setTag(tag); } } } template void GougeConfig::tagRndBlockParticles(int tag) { for ( typename GeneratorPtrVector::iterator it = m_faultGenPtrVector.begin(); it != m_faultGenPtrVector.end(); it++ ) { ParticleIterator particleIt = (*it)->getParticleIterator(); while (particleIt.hasNext()) { particleIt.next().setTag(tag); } } } template void GougeConfig::tagDrivingPlateParticles( int lowDrivingTag, int highDrivingTag, double distanceFromBBoxEdge ) { ParticleCollection particleCollection = getParticleCollection(); const BoundingBox bBox = particleCollection.getParticleBBox(); const int idx = this->m_prms.getOrientationIndex(); const double maxLow = bBox.getMinPt()[idx] + distanceFromBBoxEdge; const double minHigh = bBox.getMaxPt()[idx] - distanceFromBBoxEdge; int lowTagCount = 0; int highTagCount = 0; typename ParticleCollection::ParticleIterator particleIt = particleCollection.getParticleIterator(); while (particleIt.hasNext()) { Particle &particle = particleIt.next(); const double dimPos = particle.getPos()[idx]; const double radius = particle.getRad(); if (dimPos - radius <= maxLow) { particle.setTag(lowDrivingTag); lowTagCount++; } if (dimPos + radius >= minHigh) { particle.setTag(highDrivingTag); highTagCount++; } } console.Info() << "Tagged " << lowTagCount << " particles with " << lowDrivingTag << "\n"; console.Info() << "Tagged " << highTagCount << " particles with " << highDrivingTag << "\n"; } } } ./Doc/0000775000175000017500000000000012176660653011344 5ustar vborosvboros./Doc/Deprecated/0000775000175000017500000000000012176660653013404 5ustar vborosvboros./Doc/Deprecated/Manual/0000775000175000017500000000000012176660653014621 5ustar vborosvboros./Doc/Deprecated/Manual/manual.cls0000664000175000017500000001056212176660653016605 0ustar vborosvboros% % manual.cls for the Python documentation % \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{manual} [1998/03/03 Document class (Python manual)] \RequirePackage{pypaper} \RequirePackage{fancybox} % Change the options here to get a different set of basic options, but only % if you have to. Paper and font size should be adjusted in pypaper.sty. % \LoadClass[\py@paper,\py@ptsize,twoside,openright]{report} \setcounter{secnumdepth}{2} % Optional packages: % % If processing of these documents fails at your TeX installation, % these may be commented out (independently) to make things work. % These are both supplied with the current version of the teTeX % distribution. % % The "fancyhdr" package makes nicer page footers reasonable to % implement, and is used to put the chapter and section information in % the footers. % \RequirePackage{fancyhdr}\typeout{Using fancier footers than usual.} % Required packages: % % The "fncychap" package is used to get the nice chapter headers. The % .sty file is distributed with Python, so you should not need to disable % it. You'd also end up with a mixed page style; uglier than stock LaTeX! % \RequirePackage[Bjarne]{fncychap}\typeout{Using fancy chapter headings.} % Do horizontal rules it this way to match: \newcommand{\py@doHorizontalRule}{\mghrulefill{\RW}} % % % This gives us all the Python-specific markup that we really want. % This should come last. Do not change this. % \RequirePackage{python} % support for module synopsis sections: \newcommand{\py@ModSynopsisFilename}{\jobname\thechapter.syn} \let\py@OldChapter=\chapter \renewcommand{\chapter}{ \py@ProcessModSynopsis \py@closeModSynopsisFile \py@OldChapter } % Change the title page to look a bit better, and fit in with the % fncychap ``Bjarne'' style a bit better. % \renewcommand{\maketitle}{% \begin{titlepage}% \let\footnotesize\small \let\footnoterule\relax \py@doHorizontalRule% \@ifundefined{pdfinfo}{}{{ % This \def is required to deal with multi-line authors; it % changes \\ to ', ' (comma-space), making it pass muster for % generating document info in the PDF file. \def\\{, } \pdfinfo{ /Author (\@author) /Title (\@title) } }} \begin{flushright}% {\rm\Huge\py@HeaderFamily \@title \par}% {\em\LARGE\py@HeaderFamily \py@release\releaseinfo \par} \vfill {\LARGE\py@HeaderFamily \@author \par} \vfill\vfill {\large \@date \par \vfill \py@authoraddress \par }% \end{flushright}%\par \@thanks \end{titlepage}% \setcounter{footnote}{0}% \let\thanks\relax\let\maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{} } % Catch the end of the {abstract} environment, but here make sure the % abstract is followed by a blank page if the 'openright' option is used. % \let\py@OldEndAbstract=\endabstract \renewcommand{\endabstract}{ \if@openright \ifodd\value{page} \typeout{Adding blank page after the abstract.} \vfil\pagebreak \fi \fi \py@OldEndAbstract } % This wraps the \tableofcontents macro with all the magic to get the % spacing right and have the right number of pages if the 'openright' % option has been used. This eliminates a fair amount of crud in the % individual document files. % \let\py@OldTableofcontents=\tableofcontents \renewcommand{\tableofcontents}{% \setcounter{page}{1}% \pagebreak% \pagestyle{plain}% {% \parskip = 0mm% \py@OldTableofcontents% \if@openright% \ifodd\value{page}% \typeout{Adding blank page after the table of contents.}% \pagebreak\hspace{0pt}% \fi% \fi% \cleardoublepage% }% \pagenumbering{arabic}% \@ifundefined{fancyhf}{}{\pagestyle{normal}}% \py@doing@page@targetstrue% } % This is needed to get the width of the section # area wide enough in the % library reference. Doing it here keeps it the same for all the manuals. % \renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.6em}} \renewcommand*\l@subsection{\@dottedtocline{2}{4.1em}{3.5em}} \setcounter{tocdepth}{1} % Fix the theindex environment to add an entry to the Table of % Contents; this is much nicer than just having to jump to the end of % the book and flip around, especially with multiple indexes. % \let\py@OldTheindex=\theindex \renewcommand{\theindex}{ \cleardoublepage \py@OldTheindex \addcontentsline{toc}{chapter}{\indexname} } ./Doc/Deprecated/Manual/fncychap.sty0000664000175000017500000002416712176660653017167 0ustar vborosvboros%%% Derived from the original fncychap.sty, %%% but changed ``TWELV'' to ``TWELVE''. %%% Copyright Ulf A. Lindgren %%% Department of Applied Electronics %%% Chalmers University of Technology %%% S-412 96 Gothenburg, Sweden %%% E-mail lindgren@ae.chalmers.se %%% %%% Note Permission is granted to modify this file under %%% the condition that it is saved using another %%% file and package name. %%% %%% Revision 1.1 %%% %%% Jan. 8th Modified package name base date option %%% Jan. 22th Modified FmN and FmTi for error in book.cls %%% \MakeUppercase{#}->{\MakeUppercase#} %%% Apr. 6th Modified Lenny option to prevent undesired %%% skip of line. %%% Nov. 8th Fixed \@chapapp for AMS %%% Feb. 11th Fixed appendix problem related to Bjarne %%% Last modified Feb. 11th 1998 \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{fncychap} [1997/04/06 v1.11 LaTeX package (Revised chapters)] %%%% DEFINITION OF Chapapp variables \newcommand{\CNV}{\huge\bfseries} \newcommand{\ChNameVar}[1]{\renewcommand{\CNV}{#1}} %%%% DEFINITION OF TheChapter variables \newcommand{\CNoV}{\huge\bfseries} \newcommand{\ChNumVar}[1]{\renewcommand{\CNoV}{#1}} \newif\ifUCN \UCNfalse \newif\ifLCN \LCNfalse \def\ChNameLowerCase{\LCNtrue\UCNfalse} \def\ChNameUpperCase{\UCNtrue\LCNfalse} \def\ChNameAsIs{\UCNfalse\LCNfalse} %%%%% Fix for AMSBook 971008 \@ifundefined{@chapapp}{\let\@chapapp\chaptername}{} %%%%% Fix for Bjarne and appendix 980211 \newif\ifinapp \inappfalse \renewcommand\appendix{\par \setcounter{chapter}{0}% \setcounter{section}{0}% \inapptrue% \renewcommand\@chapapp{\appendixname}% \renewcommand\thechapter{\@Alph\c@chapter}} %%%%% \newcommand{\FmN}[1]{% \ifUCN {\MakeUppercase#1}\LCNfalse \else \ifLCN {\MakeLowercase#1}\UCNfalse \else #1 \fi \fi} %%%% DEFINITION OF Title variables \newcommand{\CTV}{\Huge\bfseries} \newcommand{\ChTitleVar}[1]{\renewcommand{\CTV}{#1}} %%%% DEFINITION OF the basic rule width \newlength{\RW} \setlength{\RW}{1pt} \newcommand{\ChRuleWidth}[1]{\setlength{\RW}{#1}} \newif\ifUCT \UCTfalse \newif\ifLCT \LCTfalse \def\ChTitleLowerCase{\LCTtrue\UCTfalse} \def\ChTitleUpperCase{\UCTtrue\LCTfalse} \def\ChTitleAsIs{\UCTfalse\LCTfalse} \newcommand{\FmTi}[1]{% \ifUCT {\MakeUppercase#1}\LCTfalse \else \ifLCT {\MakeLowercase#1}\UCTfalse \else #1 \fi \fi} \newlength{\mylen} \newlength{\myhi} \newlength{\px} \newlength{\py} \newlength{\pyy} \newlength{\pxx} \def\mghrulefill#1{\leavevmode\leaders\hrule\@height #1\hfill\kern\z@} \newcommand{\DOCH}{% \CNV\FmN{\@chapapp}\space \CNoV\thechapter \par\nobreak \vskip 20\p@ } \newcommand{\DOTI}[1]{% \CTV\FmTi{#1}\par\nobreak \vskip 40\p@ } \newcommand{\DOTIS}[1]{% \CTV\FmTi{#1}\par\nobreak \vskip 40\p@ } %%%%%% SONNY DEF \DeclareOption{Sonny}{% \ChNameVar{\Large\sf} \ChNumVar{\Huge} \ChTitleVar{\Large\sf} \ChRuleWidth{0.5pt} \ChNameUpperCase \renewcommand{\DOCH}{% \raggedleft \CNV\FmN{\@chapapp}\space \CNoV\thechapter \par\nobreak \vskip 40\p@} \renewcommand{\DOTI}[1]{% \CTV\raggedleft\mghrulefill{\RW}\par\nobreak \vskip 5\p@ \CTV\FmTi{#1}\par\nobreak \mghrulefill{\RW}\par\nobreak \vskip 40\p@} \renewcommand{\DOTIS}[1]{% \CTV\raggedleft\mghrulefill{\RW}\par\nobreak \vskip 5\p@ \CTV\FmTi{#1}\par\nobreak \mghrulefill{\RW}\par\nobreak \vskip 40\p@} } %%%%%% LENNY DEF \DeclareOption{Lenny}{% \ChNameVar{\fontsize{14}{16}\usefont{OT1}{phv}{m}{n}\selectfont} \ChNumVar{\fontsize{60}{62}\usefont{OT1}{ptm}{m}{n}\selectfont} \ChTitleVar{\Huge\bfseries\rm} \ChRuleWidth{1pt} \renewcommand{\DOCH}{% \settowidth{\px}{\CNV\FmN{\@chapapp}} \addtolength{\px}{2pt} \settoheight{\py}{\CNV\FmN{\@chapapp}} \addtolength{\py}{1pt} \settowidth{\mylen}{\CNV\FmN{\@chapapp}\space\CNoV\thechapter} \addtolength{\mylen}{1pt} \settowidth{\pxx}{\CNoV\thechapter} \addtolength{\pxx}{-1pt} \settoheight{\pyy}{\CNoV\thechapter} \addtolength{\pyy}{-2pt} \setlength{\myhi}{\pyy} \addtolength{\myhi}{-1\py} \par \parbox[b]{\textwidth}{% \rule[\py]{\RW}{\myhi}% \hskip -\RW% \rule[\pyy]{\px}{\RW}% \hskip -\px% \raggedright% \CNV\FmN{\@chapapp}\space\CNoV\thechapter% \hskip1pt% \mghrulefill{\RW}% \rule{\RW}{\pyy}\par\nobreak% \vskip -\baselineskip% \vskip -\pyy% \hskip \mylen% \mghrulefill{\RW}\par\nobreak% \vskip \pyy}% \vskip 20\p@} \renewcommand{\DOTI}[1]{% \raggedright \CTV\FmTi{#1}\par\nobreak \vskip 40\p@} \renewcommand{\DOTIS}[1]{% \raggedright \CTV\FmTi{#1}\par\nobreak \vskip 40\p@} } %%%%%%% GLENN DEF \DeclareOption{Glenn}{% \ChNameVar{\bfseries\Large\sf} \ChNumVar{\Huge} \ChTitleVar{\bfseries\Large\rm} \ChRuleWidth{1pt} \ChNameUpperCase \ChTitleUpperCase \renewcommand{\DOCH}{% \settoheight{\myhi}{\CTV\FmTi{Test}} \setlength{\py}{\baselineskip} \addtolength{\py}{\RW} \addtolength{\py}{\myhi} \setlength{\pyy}{\py} \addtolength{\pyy}{-1\RW} \raggedright \CNV\FmN{\@chapapp}\space\CNoV\thechapter \hskip 3pt\mghrulefill{\RW}\rule[-1\pyy]{2\RW}{\py}\par\nobreak} \renewcommand{\DOTI}[1]{% \addtolength{\pyy}{-4pt} \settoheight{\myhi}{\CTV\FmTi{#1}} \addtolength{\myhi}{\py} \addtolength{\myhi}{-1\RW} \vskip -1\pyy \rule{2\RW}{\myhi}\mghrulefill{\RW}\hskip 2pt \raggedleft\CTV\FmTi{#1}\par\nobreak \vskip 80\p@} \renewcommand{\DOTIS}[1]{% \setlength{\py}{10pt} \setlength{\pyy}{\py} \addtolength{\pyy}{\RW} \setlength{\myhi}{\baselineskip} \addtolength{\myhi}{\pyy} \mghrulefill{\RW}\rule[-1\py]{2\RW}{\pyy}\par\nobreak % \addtolength{}{} \vskip -1\baselineskip \rule{2\RW}{\myhi}\mghrulefill{\RW}\hskip 2pt \raggedleft\CTV\FmTi{#1}\par\nobreak \vskip 60\p@} } %%%%%%% CONNY DEF \DeclareOption{Conny}{% \ChNameUpperCase \ChTitleUpperCase \ChNameVar{\centering\Huge\rm\bfseries} \ChNumVar{\Huge} \ChTitleVar{\centering\Huge\rm} \ChRuleWidth{2pt} \renewcommand{\DOCH}{% \mghrulefill{3\RW}\par\nobreak \vskip -0.5\baselineskip \mghrulefill{\RW}\par\nobreak \CNV\FmN{\@chapapp}\space \CNoV\thechapter \par\nobreak \vskip -0.5\baselineskip } \renewcommand{\DOTI}[1]{% \mghrulefill{\RW}\par\nobreak \CTV\FmTi{#1}\par\nobreak \vskip 60\p@ } \renewcommand{\DOTIS}[1]{% \mghrulefill{\RW}\par\nobreak \CTV\FmTi{#1}\par\nobreak \vskip 60\p@ } } %%%%%%% REJNE DEF \DeclareOption{Rejne}{% \ChNameUpperCase \ChTitleUpperCase \ChNameVar{\centering\Large\rm} \ChNumVar{\Huge} \ChTitleVar{\centering\Huge\rm} \ChRuleWidth{1pt} \renewcommand{\DOCH}{% \settoheight{\py}{\CNoV\thechapter} \addtolength{\py}{-1pt} \CNV\FmN{\@chapapp}\par\nobreak \vskip 20\p@ \setlength{\myhi}{2\baselineskip} \setlength{\px}{\myhi} \addtolength{\px}{-1\RW} \rule[-1\px]{\RW}{\myhi}\mghrulefill{\RW}\hskip 10pt\raisebox{-0.5\py}{\CNoV\thechapter}\hskip 10pt\mghrulefill{\RW}\rule[-1\px]{\RW}{\myhi}\par\nobreak \vskip -1\p@ } \renewcommand{\DOTI}[1]{% \setlength{\mylen}{\textwidth} \addtolength{\mylen}{-2\RW} {\vrule width\RW}\parbox{\mylen}{\CTV\FmTi{#1}}{\vrule width\RW}\par\nobreak \vskip -1pt\rule{\RW}{2\baselineskip}\mghrulefill{\RW}\rule{\RW}{2\baselineskip} \vskip 60\p@ } \renewcommand{\DOTIS}[1]{% \setlength{\py}{\fboxrule} \setlength{\fboxrule}{\RW} \setlength{\mylen}{\textwidth} \addtolength{\mylen}{-2\RW} \fbox{\parbox{\mylen}{\vskip 2\baselineskip\CTV\FmTi{#1}\par\nobreak\vskip \baselineskip}} \setlength{\fboxrule}{\py} \vskip 60\p@ } } %%%%%%% BJARNE DEF \DeclareOption{Bjarne}{% \ChNameUpperCase \ChTitleUpperCase \ChNameVar{\raggedleft\normalsize\rm} \ChNumVar{\raggedleft \bfseries\Large} \ChTitleVar{\raggedleft \Large\rm} \ChRuleWidth{1pt} %% Note thechapter -> c@chapter fix appendix bug \newcounter{AlphaCnt} \newcounter{AlphaDecCnt} \newcommand{\AlphaNo}{% \ifcase\number\theAlphaCnt \ifnum\c@chapter=0 ZERO\else{}\fi \or ONE\or TWO\or THREE\or FOUR\or FIVE \or SIX\or SEVEN\or EIGHT\or NINE\or TEN \or ELEVEN\or TWELVE\or THIRTEEN\or FOURTEEN\or FIFTEEN \or SIXTEEN\or SEVENTEEN\or EIGHTEEN\or NINETEEN\fi } \newcommand{\AlphaDecNo}{% \setcounter{AlphaDecCnt}{0} \@whilenum\number\theAlphaCnt>0\do {\addtocounter{AlphaCnt}{-10} \addtocounter{AlphaDecCnt}{1}} \ifnum\number\theAlphaCnt=0 \else \addtocounter{AlphaDecCnt}{-1} \addtocounter{AlphaCnt}{10} \fi \ifcase\number\theAlphaDecCnt\or TEN\or TWENTY\or THIRTY\or FORTY\or FIFTY\or SIXTY\or SEVENTY\or EIGHTY\or NINETY\fi } \newcommand{\TheAlphaChapter}{% \ifinapp \thechapter \else \setcounter{AlphaCnt}{\c@chapter} \ifnum\c@chapter<20 \AlphaNo \else \AlphaDecNo\AlphaNo \fi \fi } \renewcommand{\DOCH}{% \mghrulefill{\RW}\par\nobreak \CNV\FmN{\@chapapp}\par\nobreak \CNoV\TheAlphaChapter\par\nobreak \vskip -1\baselineskip\vskip 5pt\mghrulefill{\RW}\par\nobreak \vskip 20\p@ } \renewcommand{\DOTI}[1]{% \CTV\FmTi{#1}\par\nobreak \vskip 40\p@ } \renewcommand{\DOTIS}[1]{% \CTV\FmTi{#1}\par\nobreak \vskip 40\p@ } } \DeclareOption*{% \PackageWarning{fancychapter}{unknown style option} } \ProcessOptions* \relax \def\@makechapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \raggedright \normalfont \ifnum \c@secnumdepth >\m@ne \DOCH \fi \interlinepenalty\@M \DOTI{#1} }} \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]% \else \@makeschapterhead{#1}% \@afterheading \fi} \def\@makeschapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \raggedright \normalfont \interlinepenalty\@M \DOTIS{#1} \vskip 40\p@ }} \endinput ./Doc/Deprecated/Manual/python.ist0000664000175000017500000000033412176660653016663 0ustar vborosvborosline_max 100 headings_flag 1 heading_prefix " \\bigletter " preamble "\\begin{theindex} \\def\\bigletter#1{{\\Large\\sffamily#1}\\nopagebreak\\vspace{1mm}} " symhead_positive "{Symbols}" numhead_positive "{Numbers}" ./Doc/Deprecated/Manual/ltxmarkup.sty0000664000175000017500000000231112176660653017406 0ustar vborosvboros% Created by Fred L. Drake, Jr. , as part of the % Python Documentation Project. % % Define some simple markup for the LaTeX command documentation: \ProvidesPackage{ltxmarkup} \RequirePackage{python} % fulllineitems environment % These two macros are used in constructing the last parameter to the % envdesc and macrodesc environments. \newcommand{\py@ltx@optparam}[1]{{[}\var{#1}{]}} \newcommand{\py@ltx@param}[1]{\{\var{#1}\}} \newenvironment{envdesc}[2]{ \begin{fulllineitems} \item[\code{\e begin\{{\bfseries #1}\}{% \let\op=\py@ltx@optparam% \let\p=\py@ltx@param% \let\unspecified=\py@unspecified% \let\moreargs=\py@moreargs% #2}}] \item[\code{\e end\{{\bfseries #1}\}}] \index{#1 environment@\py@idxcode{#1} environment} \index{environments!#1@\py@idxcode{#1}} }{\end{fulllineitems}} \newenvironment{macrodesc}[2]{ \begin{fulllineitems} \item[\code{{\e\bfseries#1}{% \let\op=\py@ltx@optparam% \let\p=\py@ltx@param% \let\unspecified=\py@unspecified% \let\moreargs=\py@moreargs% #2}}] \index{#1@\py@idxcode{#1}} }{\end{fulllineitems}} \newcommand{\env}[1]{\code{#1}} \newcommand{\macro}[1]{\code{\e#1}} ./Doc/Deprecated/Manual/pypaper.sty0000664000175000017500000000112512176660653017041 0ustar vborosvboros% % Change this to say a4paper instead of letterpaper if you want A4. These % are the latex defaults. % \newcommand{\py@paper}{letterpaper} \newcommand{\py@ptsize}{10pt} % These set up the fonts for the documents. % % The "times" package makes the default font the PostScript Times % font, which makes for smaller PostScript and a font that more people % like. % % The "avant" package causes the AvantGarde font to be used for % sans-serif text, instead of the uglier Helvetica set up by the "times" % package. % \RequirePackage{times}\typeout{Using Times instead of Computer Modern.} ./Doc/Deprecated/Manual/geo-file.tex0000664000175000017500000001412312176660653017033 0ustar vborosvboros\chapter{The Geometry File Format} \label{cha:geofileformat} \section{Introduction} The input file described here contains only the description of the model geometry. The material properties of the particles (density \dots) and interactions (spring constant, breaking distance \dots) are described in the script. In order to facilitate this, both particles and predefined connections/interactions have tags. \subsubsection*{Rationale:} \begin{itemize} \item Makes it possible to change the properties independently from the geometries, for example in order to easily run a suite of simulation with identical geometries but varying material properties. \end{itemize} The input files are pure ASCII files formatted in the way described in the following sections. \subsubsection*{Rationale:} \begin{itemize} \item ASCII is preferred over binary format for portability and debugability reasons. \item Using some ``standard'' description language, i.e. XML seems \begin{itemize} \item unnecessary as the files are machine generated and read, which reduces the need for flexibility and verbosity \item a suboptimal solution with respect to file size, i.e. a million particle file would grow quite large if XML was used \footnote{It would be quite large anyway, somewhere around 40--50 byte per particle and 15--20 byte per connection, i.e. a file describing a model consisting of $10^6$ part in a fully connected regular 3D lattice would have a size around 100MB. So we may look at using compressed (libz, libbz2) files at some later stage.} \end{itemize} \end{itemize} \section{The File Format} The geometry file specifies the overall model geometry, the particle positions and geometries, the assignment of the particles to some particle groups and the initial connectivity between particles, i.e. the bonds. In case of spherical particles the per-particle geometry is reduced to just the particle radius. \subsection{File Structure} The geometry file consist of a header and 3 content sections: \begin{enumerate} \item The ``model geometry'' section which contains the containing volume(s) of the model and definition of circular (periodic) boundary conditions \item The ``particles'' section \item The ``connections'' section \end{enumerate} \subsection{Header} The header just contains an identifier for the file type and the version of the file. \begin{verbatim} LSMGeometry 1.2 \end{verbatim} where \textsf{LSMGeometry} is the identifier and \textsf{1.2} the current version number. \subsection{Model Geometry} The model geometry section contains a description of the volume(s) in which the model is contained, a definition which of the boundaries of this volume are periodic and the dimensionality of the model. In the current version the containing volume is just an axis aligned bounding box which is given by the coordinates of minimum and maximum corners. The boundaries are described by a boolean value (0,1) for each coordinate axis, where 1 stands for periodic, 0 for non-periodic. The distinction between 2D and 3D models is done between done in order to be able to calculate the correct volume of a particle from its radius, i.e. $\pi r^2$ vs. ${4 \over 3} \pi r^3$. For Version 1.1. files which have no dimensionality given, 2D is assumed. \begin{verbatim} BoundingBox min.x min.y min.z max.x max.y max.z PeriodicBoundaries x y z Dimensions [2D|3D] \end{verbatim} \subsection{Particles} The particle section of the geometry file contains beginning and end markers, a keyword for the particle type, i.e. \textsf{Simple} for simple (irrotational) spherical particles, the total number of particles and a set of data for each particle. In case of spherical particles these data consist of the position (vector), radius (float), particle id (int) and the particle tag (int). The tag is used to assign the particle to specific particle groups. \begin{verbatim} BeginParticles Simple nparticles pos0.x pos0.y pos0.z rad0 id0 tag0 pos1.x pos1.y pos1.z rad1 id1 tag1 pos2.x pos2.y pos2.z rad2 id2 tag2 ... posN.x posN.y posN.z radN idN tagN EndParticles \end{verbatim} \subsubsection{Particle Types} \begin{tabular}[h!]{|l|l|} \hline keyword & description \\ \hline \hline Simple & simple spherical particle \\ \hline \end{tabular} \subsection{Connectivity} A list of predefined connections between particles is necessary for the definition of particle interactions which are persistent and not dynamically formed during the simulation, i.e. bonds. The connectivity section of the geometry file contains beginning and end markers, the number of connections and for each connection the ids (int) of the two particles involved and a tag (int) which assigns the connection to a connection group. The pairs of particle ids must be ordered i.e. the first id must be less than the second one. \begin{verbatim} BeginConnect nconnect id0_1 id0_2 tag0 id1_1 id1_2 tag1 id2_1 id2_2 tag2 ... idN_1 idN_2 tagN EndConnect \end{verbatim} \label{sec:prp} \section{Example} Simple example: boundaries periodic in x, open in y and z, 8 irrotational spherical particles of radius 1.0, positioned at the corners of a cube and connected along the edges of the cube. The particles are grouped into 2 groups, representing the particles with $y=0$ and $y=2$ respectively. The tags are 0 for $y=0.0$ and 1 for $y=2.0$. The connections all belong to the same group. \textbf{Note:} The particle tags and the connection tags are independent of each other, i.e. we can use ``0'' as a connection tag even if ``0'' is already used as a particle tag. %%\newpage \begin{verbatim} LSMGeometry 1.2 BoundingBox -1.0 -1.0 -1.0 3.0 3.0 3.0 PeriodicBoundaries 1 0 0 Dimension 3D BeginParticles Simple 8 0.0 0.0 0.0 1.0 0 0 0.0 0.0 1.0 1.0 1 0 0.0 1.0 0.0 1.0 2 1 0.0 1.0 1.0 1.0 3 1 1.0 0.0 0.0 1.0 4 0 1.0 0.0 1.0 1.0 5 0 1.0 1.0 0.0 1.0 6 1 1.0 1.0 1.0 1.0 7 1 EndParticles BeginConnect 12 0 1 0 0 2 0 0 4 0 1 3 0 1 5 0 2 3 0 2 6 0 3 7 0 4 5 0 4 6 0 5 7 0 6 7 0 EndConnect \end{verbatim} \section{History} \begin{tabular}{|r|l|} \hline 10.6.2003 & initial version \\ 11.9.2003 & version 1.1 , changed from multiple to single tag for particles \\ 3.2.2004 & version 1.2., added 2D/3D indication \\ \hline \end{tabular} ./Doc/Deprecated/Manual/underscore.sty0000664000175000017500000002370712176660653017544 0ustar vborosvboros% underscore.sty 12-Oct-2001 Donald Arseneau asnd@triumf.ca % Make the "_" character print as "\textunderscore" in text. % Copyright 1998,2001 Donald Arseneau; Distribute freely if unchanged. % Instructions follow after the definitions. \ProvidesPackage{underscore}[2001/10/12] \begingroup \catcode`\_=\active \gdef_{% \relax % No relax gives a small vulnerability in alignments \ifx\if@safe@actives\iftrue % must be outermost test! \string_% \else \ifx\protect\@typeset@protect \ifmmode \sb \else \BreakableUnderscore \fi \else \ifx\protect\@unexpandable@protect \noexpand_% \else \protect_% \fi\fi \fi} \endgroup % At begin: set catcode; fix \long \ttdefault so I can use it in comparisons; \AtBeginDocument{% {\immediate\write\@auxout{\catcode\number\string`\_ \string\active}}% \catcode\string`\_\string=\active \edef\ttdefault{\ttdefault}% } \newcommand{\BreakableUnderscore}{\leavevmode\nobreak\hskip\z@skip \ifx\f@family\ttdefault \string_\else \textunderscore\fi \usc@dischyph\nobreak\hskip\z@skip} \DeclareRobustCommand{\_}{% \ifmmode \nfss@text{\textunderscore}\else \BreakableUnderscore \fi} \let\usc@dischyph\@dischyph \DeclareOption{nohyphen}{\def\usc@dischyph{\discretionary{}{}{}}} \DeclareOption{strings}{\catcode`\_=\active} \ProcessOptions \ifnum\catcode`\_=\active\else \endinput \fi %%%%%%%% Redefine commands that use character strings %%%%%%%% \@ifundefined{UnderscoreCommands}{\let\UnderscoreCommands\@empty}{} \expandafter\def\expandafter\UnderscoreCommands\expandafter{% \UnderscoreCommands \do\include \do\includeonly \do\@input \do\@iinput \do\InputIfFileExists \do\ref \do\pageref \do\newlabel \do\bibitem \do\@bibitem \do\cite \do\nocite \do\bibcite } % Macro to redefine a macro to pre-process its string argument % with \protect -> \string. \def\do#1{% Avoid double processing if user includes command twice! \@ifundefined{US\string_\expandafter\@gobble\string#1}{% \edef\@tempb{\meaning#1}% Check if macro is just a protection shell... \def\@tempc{\protect}% \edef\@tempc{\meaning\@tempc\string#1\space\space}% \ifx\@tempb\@tempc % just a shell: hook into the protected inner command \expandafter\do \csname \expandafter\@gobble\string#1 \expandafter\endcsname \else % Check if macro takes an optional argument \def\@tempc{\@ifnextchar[}% \edef\@tempa{\def\noexpand\@tempa####1\meaning\@tempc}% \@tempa##2##3\@tempa{##2\relax}% \edef\@tempb{\meaning#1\meaning\@tempc}% \edef\@tempc{\noexpand\@tempd \csname US\string_\expandafter\@gobble\string#1\endcsname}% \if \expandafter\@tempa\@tempb \relax 12\@tempa % then no optional arg \@tempc #1\US@prot \else % There is optional arg \@tempc #1\US@protopt \fi \fi }{}} \def\@tempd#1#2#3{\let#1#2\def#2{#3#1}} \def\US@prot#1#2{\let\@@protect\protect \let\protect\string \edef\US@temp##1{##1{#2}}\restore@protect\US@temp#1} \def\US@protopt#1{\@ifnextchar[{\US@protarg#1}{\US@prot#1}} \def\US@protarg #1[#2]{\US@prot{{#1[#2]}}} \UnderscoreCommands \let\do\relax \let\@tempd\relax % un-do %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput underscore.sty 12-Oct-2001 Donald Arseneau Features: ~~~~~~~~~ \_ prints an underscore so that the hyphenation of constituent words is not affected and hyphenation is permitted after the underscore. For example, "compound\_fracture" hyphenates as com- pound_- frac- ture. If you prefer the underscore to break without a hyphen (but still with the same rules for explicit hyphen-breaks) then use the [nohyphen] package option. A simple _ acts just like \_ in text mode, but makes a subscript in math mode: activation_energy $E_a$ Both forms use an underscore character if the font encoding contains one (e.g., "\usepackage[T1]{fontenc}" or typewriter fonts in any encoding), but they use a rule if the there is no proper character. Deficiencies: ~~~~~~~~~~~~~ The skips and penalties ruin any kerning with the underscore character (when a character is used). However, there doesn't seem to be much, if any, such kerning in the ec fonts, and there is never any kerning with a rule. You must avoid "_" in file names and in cite or ref tags, or you must use the babel package, with its active-character controls, or you must give the [strings] option, which attempts to redefine several commands (and may not work perfectly). Even without the [strings] option or babel, you can use occasional underscores like: "\include{file\string_name}". Option: [strings] ~~~~~~~~~~~~~~~~~ The default operation is quite simple and needs no customization; but you must avoid using "_" in any place where LaTeX uses an argument as a string of characters for some control function or as a name. These include the tags for \cite and \ref, file names for \input, \include, and \includegraphics, environment names, counter names, and placement parameters (like "[t]"). The problem with these contexts is that they are `moving arguments' but LaTeX does not `switch on' the \protect mechanism for them. If you need to use the underscore character in these places, the package option [strings] is provided to redefine commands taking a string argument so that the argument is protected (with \protect -> \string). The list of commands is given in "\UnderscoreCommands", with "\do" before each, covering \cite, \ref, \input, and their variants. Not included are many commands regarding font names, everything with counter names, environment names, page styles, and versions of \ref and \cite defined by external packages (e.g. \vref and \citeyear). You can add to the list of supported commands by defining \UnderscoreCommands before loading this package; e.g. \usepackage{chicago} \newcommand{\UnderscoreCommands}{% (\cite already done) \do\citeNP \do\citeA \do\citeANP \do\citeN \do\shortcite \do\shortciteNP \do\shortciteA \do\shortciteANP \do\shortciteN \do\citeyear \do\citeyearNP } \usepackage[strings]{underscore} Not all commands can be supported this way! Only commands that take a string argument *first* can be protected. One optional argument before the string argument is also permitted, as exemplified by \cite: both \cite{tags} and \cite[text]{tags} are allowed. A command like \@addtoreset which takes two counter names as arguments could not be protected by adding it to \UnderscoreCommands. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! When you use the [strings] option, you must load this package !! !! last (or nearly last). !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! There are two reasons: 1) The redefinitions done for protection must come after other packages define their customized versions of those commands. 2) The [strings] option requires the _ character to be activated immediately in order for the cite and ref tags to be read properly from the .aux file as plain strings, and this catcode setting might disrupt other packages. The babel package implements a protection mechanism for many commands, and will be a complete fix for most documents without the [strings] option. Many add-on packages are compatible with babel, so they will get the strings protection also. However, there are several commands that are not covered by babel, but can easily be supported by the [strings] and \UnderscoreCommands mechanism. Beware that using both [strings] and babel may lead to conflicts, but does appear to work (load babel last). Implementation Notes: ~~~~~~~~~~~~~~~~~~~~~ The first setting of "_" to be an active character is performed in a local group so as to not interfere with other packages. The catcode setting is repeated with \AtBeginDocument so the definition is in effect for the text. However, the catcode setting is repeated immediately when the [strings] option is detected. The definition of the active "_" is essentially: \ifmmode \sb \else \BreakableUnderscore \fi where "\sb" retains the normal subscript meaning of "_" and where "\BreakableUnderscore" is essentially "\_". The rest of the definition handles the "\protect"ion without causing \relax to be inserted before the character. \BreakableUnderscore uses "\nobreak\hskip\z@skip" to separate the underscore from surrounding words, thus allowing TeX to hyphenate them, but preventing free breaks around the underscore. Next, it checks the current font family, and uses the underscore character from tt fonts or otherwise \textunderscore (which is a character or rule depending on the font encoding). After the underscore, it inserts a discretionary hyphenation point as "\usc@dischyph", which is usually just "\-" except that it still works in the tabbing environment, although it will give "\discretionary{}{}{}" under the [nohyphen] option. After that, another piece of non-breaking interword glue is inserted. Ordinarily, the comparison "\ifx\f@family\ttdefault" will always fail because \ttdefault is `long' where \f@family is not (boooo hisss), but \ttdefault is redefined to be non-long by "\AtBeginDocument". The "\_" command is then defined to use "\BreakableUnderscore". If the [strings] option is not given, then that is all! Under the [strings] option, the list of special commands is processed to: - retain the original command as \US_command (\US_ref) - redefine the command as \US@prot\US_command for ordinary commands (\ref -> \US@prot\US_ref) or as \US@protopt\US_command when an optional argument is possible (\bibitem -> \US@protopt\US_bibitem). - self-protecting commands (\cite) retain their self-protection. Diagnosing the state of the pre-existing command is done by painful contortions involving \meaning. \US@prot and \US@protopt read the argument, process it with \protect enabled, then invoke the saved \US_command. Modifications: ~~~~~~~~~~~~~~ 12-Oct-2001 Babel (safe@actives) compatibility and [nohyphen] option. Test file integrity: ASCII 32-57, 58-126: !"#$%&'()*+,-./0123456789 :;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ./Doc/Deprecated/Manual/howto.cls0000664000175000017500000000540712176660653016472 0ustar vborosvboros% % howto.cls for the Python documentation % \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{howto} [1998/02/25 Document class (Python HOWTO)] \RequirePackage{pypaper} \RequirePackage{fancybox} % Change the options here to get a different set of basic options, This % is where to add things like "a4paper" or "10pt". % \LoadClass[\py@paper,\py@ptsize,twoside]{article} \setcounter{secnumdepth}{1} % Optional packages: % % If processing of these documents fails at your TeX installation, % these may be commented out (independently) to make things work. % These are both supplied with the current version of the teTeX % distribution. % % The "fancyhdr" package makes nicer page footers reasonable to % implement, and is used to put the chapter and section information in % the footers. % \RequirePackage{fancyhdr}\typeout{Using fancier footers than usual.} % Required package: % % This gives us all the Python-specific markup that we really want. % This should come last. Do not change this. % \RequirePackage{python} % support for module synopsis sections: \newcommand{\py@ModSynopsisFilename}{\jobname.syn} % need to do one of these.... \newcommand{\py@doHorizontalRule}{\rule{\textwidth}{1pt}} % Change the title page to look a bit better, and fit in with the % fncychap ``Bjarne'' style a bit better. % \renewcommand{\maketitle}{ \py@doHorizontalRule \@ifundefined{pdfinfo}{}{{ % This \def is required to deal with multi-line authors; it % changes \\ to ', ' (comma-space), making it pass muster for % generating document info in the PDF file. \def\\{, } \pdfinfo{ /Author (\@author) /Title (\@title) } }} \begin{flushright} {\rm\Huge\py@HeaderFamily \@title} \par {\em\large\py@HeaderFamily \py@release\releaseinfo} \par \vspace{25pt} {\Large\py@HeaderFamily \@author} \par \vspace{25pt} \@date \par \py@authoraddress \par \end{flushright} \@thanks \setcounter{footnote}{0} \let\thanks\relax\let\maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{} } \let\py@OldTableofcontents=\tableofcontents \renewcommand{\tableofcontents}{ \begingroup \parskip = 0mm \py@OldTableofcontents \endgroup \py@doHorizontalRule \vspace{12pt} \py@doing@page@targetstrue } % Fix the theindex environment to add an entry to the Table of % Contents; this is much nicer than just having to jump to the end of % the book and flip around, especially with multiple indexes. % \let\py@OldTheindex=\theindex \renewcommand{\theindex}{ \clearpage \py@OldTheindex \addcontentsline{toc}{section}{\indexname} } \@ifundefined{fancyhf}{ \pagestyle{plain}}{ \pagestyle{normal}} % start this way; change for \pagenumbering{arabic} % ToC & chapters \setcounter{secnumdepth}{2} \thispagestyle{empty} ./Doc/Deprecated/Manual/distutils.sty0000664000175000017500000000237412176660653017414 0ustar vborosvboros% % LaTeX commands and macros needed for the two Distutils manuals, % inst.tex and dist.tex. % % $Id$ % % My gripe list about the Python style files: % * I want italics in verbatim environments for variable % text (verbatim.sty?) % * I hate escaping underscores (url.sty fixes this) % '\command' is for Distutils commands which, depending on your % perspective, are just arguments to the setup script, or sub- % commands of the setup script, or the classes that implement % each "command". \newcommand{\command}[1]{\code{#1}} % '\option' is for Distutils options *in* the setup script. Command- % line options *to* the setup script are marked up in the usual % way, ie. with '\programopt' or '\longprogramopt' \newcommand{\option}[1]{\textsf{\small{#1}}} % '\filevar' is for variable components of file/path names -- eg. % when you put 'prefix' in a pathname, you mark it up with % '\filevar' so that it still looks pathname-ish, but is % distinguished from the literal part of the path. Fred says % this can be accomplished just fine with '\var', but I violently % disagree. Pistols at dawn will sort this one out. \newcommand{\filevar}[1]{{\textsl{\filenq{#1}}}} % Just while the code and docs are still under development. \newcommand{\XXX}[1]{\textbf{**#1**}} ./Doc/Deprecated/Manual/userman.tex0000664000175000017500000013140612176660653017022 0ustar vborosvboros\documentclass{manual} \includeonly{geo-file,dump-file} \title{ESyS-Particle Users Manual} \makeindex \makemodindex \author{Shane Latham \\ Steffen Abe} \authoraddress{ ACcESS \\ Street address, if you want to use it \\ Email: \email{your-email@your.domain} } \date{\today} \release{1.0.beta1} \begin{document} \maketitle \begin{abstract} ESyS-Particle is a software package for the simulation of physical processes using the ``Lattice Solid Model'' (LSM), (Mora and Place 1994 \cite{stick-slip}, Mora et al. 2000 \cite{geocomplex}), Place and Mora, 2001 \cite{lsm-packing}, Abe et al. 2004 \cite{lsm-parallel1}). ESyS-Particle is a particle based model similar to the Discrete Element Model (DEM) developed by Cundall and Strack 1979 \cite{cundall-dem}. %% python interface %% support for spherical particles, 3DOF/6DOF %% interactions %% boundary conditions, walls, meshes %% included tools gengeo, dump2pov, dump2vtk \end{abstract} \tableofcontents \chapter{Introduction} %%------------------------------------------ %% Particles %%------------------------------------------ \section{Particles} %%------------------------------------------ %% Walls %%------------------------------------------ \section{Walls} \label{sec:walls} In the context of ESyS-Particle a ``Wall'' is a infinite, rigid planar object which interacts with the particles, but in general doesn't move itself in response to the forces resulting from those interactions. %%------------------------------------------ %% Fields %%------------------------------------------ \section{Fields} \subsection{Fields Overview} The fields which can be saved are distinguished by two properties: the objects they are defined on, i.e. particles or interactions and the data type of the field, i.e. scalar or vector (tensor to come). Some fields on interactions are not defined on all particle pairs of an interaction group, such as the slip velocity on frictional interactions which is only defined if the particles actually touch. Those fields are ``checked'' fields, i.e. a value is only returned for the particle pairs for which the fields is defined. The table of interaction fields list which fields are affected. % general explanation, parameters % one file, multi-file % tagged, checked \subsection{Field Output Formats} \label{sec::OutputFormats} All field can be saved in different formats. The following formats are currently supported: \begin{itemize} \item \textbf{DX} : The complete field is saved in one OpenDX compatible file for each timestep. For particle based fields the position of the particle and the value of the field at that particle are saved. For interaction based fields the position of the centre of the interaction, i.e. in case of a 2-particle interaction the middle point between the particles, and the value of the field for this interaction is saved. \item \textbf{SUM} : The sum over all data in the field is saved into one continuous file, one value per timestep. \item \textbf{MAX} : The maximum over all data in the field is saved into one continuous file, one value per timestep. \item \textbf{RAW\_SERIES} : The complete field is saved in one file, one row of values per time step. \textit{not yet implemented for interaction fields} \end{itemize} \subsection{Fields available on Particles} \par \medskip \begin{tabular}{|l|p{3.5cm}|l|p{2.5cm}|} \hline Name & Field & Data type & Supported Particle Types \\ \hline \hline \verb{id{ & particle Id & scalar & All \\ \hline \verb{tag{ & particle tag & scalar & All \\ \hline \verb{radius{ & particle radius & scalar & All \\ \hline \verb{e_kin{ & kinetic energy & scalar & All \\ \hline \verb{v_abs{ & absolute value of linear velocity & scalar & All \\ \hline \verb{displacement{ & total displacement & vector & All \\ \hline \verb{velocity{ & linear velocity & vector & All \\ \hline \verb{position{ & current position & vector & All \\ \hline \verb{force{ & force applied to the particle & vector & All \\ \hline \hline \verb{e_kin_rot{ & rotational part of the kinetic energy & scalar & RotSphere \\ \hline \verb{e_kin_linear{ & linear part of the kinetic energy & scalar & RotSphere \\ \hline \verb{ang_velocity{ & angular velocity & vector & RotSphere \\ \hline \end{tabular} %% --- interaction fields ---- \subsection{Fields available on Interactions} \par \medskip \begin{tabular}{|l|p{2.6cm}|l|p{3.5cm}|c|} \hline Name & Field & Data type & Supported Interaction Types & checked\\ \hline \hline \verb{count{ & number of interactions in the interaction group & scalar & Elastic, Bonded, RotBonded, Friction, RotFriction, VWFriction& no \\ \hline \verb{potential_energy{ & potential energy & scalar & Elastic, Bonded, RotBonded, Friction, RotFriction, VWFriction & no \\ \hline \verb{e_pot_normal{ & normal component of potential energy & scalar & RotBonded & no \\ \hline \verb{e_pot_shear{ & shear component of potential energy & scalar & RotBonded & no \\ \hline \verb{e_pot_twist{ & twist component of potential energy & scalar & RotBonded & no \\ \hline \verb{e_pot_bend{ & bending component of potential energy & scalar & RotBonded & no \\ \hline \verb{slipping{ & number of frictional interactions in a dynamic state & scalar & Friction, RotFriction, VWFriction& no \\ \hline \verb{sticking{ & number of frictional interactions in a static state & scalar & Friction, RotFriction, VWFriction & no \\ \hline \verb{f_fric{ & magnitude of current frictional (tangential) force & scalar & Friction, VWFriction & yes \\ \hline \verb{f_normal{ & magnitude of normal force & scalar & Friction & yes \\ \hline \verb{muF_n{ & product of coefficient of friction and normal force & scalar & Friction, VWFriction & yes \\ \hline \verb{v_slip{ & slip velocity, i.e. magnitude of the tangential part of the relatve particle velocity & scalar & Friction, VWFriction& yes \\ \hline \verb{mu_current{ & current coefficient of friction & scalar & VWFriction & yes \\ \hline \verb{strain{ & relative strain on interaction, compression positive & scalar & Bonded & no \\ \hline \end{tabular} \subsubsection{Fields available on Triangles} \par \medskip \begin{tabular}{|l|p{3.5cm}|l|} \hline Name & Field & Data type \\ \hline \hline \verb{force{ & total force & vector \\ \hline \verb{pressure{ & pressure & scalar \\ \hline \end{tabular} %%------------------------------------------ %% Installation %%------------------------------------------ \chapter{Installation} \section{Preconditions} The following software needs to be present on the system where ESyS-Particle v. 2.0 is to be installed: \subsection{Build Tools} The build process for the ESyS-Particle package relies on the presence of a current version of the autotools, i.e. \textsf{aclocal, autoheader, automake, autoconf } and \textsf{libtool}. The minimum required versions of these tools are: \begin{itemize} \item aclocal 1.8.2 \item autoheader 2.59 \item automake 1.8.2 \item autoconf 2.59 \item libtool 1.5.2 \end{itemize} Later versions should work also. Also, a recent GNU {\sf make} or a compatible make tool is required. The package has been successfully build using GNU {\sf make 3.79} and 3.80. \subsection{C++ Compilers} The ESyS-Particle package requires a recent, standard-compliant C++ compiler. Known to work are: \begin{itemize} \item GCC 3.2 (on IA32) \item GCC 3.3 (on IA32 and IA64) \item Intel CC 8.0 (on IA64) \end{itemize} \subsection{Python} % 2.3 \subsection{MPI} \label{subsection::mpi} ESyS-Particle uses some MPI-2 process management functions. Therefore a MPI implementation which supports at least the relevant parts of the MPI-2 standard, i.e. {\sf MPI_Comm_spawn, MPI_Intercomm_merge} is required. ESyS-Particle has been successfully tested with SGI MPT and with LAM 7.1.1. MPICH at least up to version 1.2.7. is known not to work because it doesn't support MPI-2 dynamic process generation, i.e. {\sf MPI_Comm_spawn}. \subsection{Libraries} %% boost 1.32.0 %% cppunit 1.10 \subsection{Known Issues} \begin{enumerate} \item MPI on SuSE Linux: In order to install ESyS-Particle on some recent versions of SuSE Linux it is necessary to install MPI from an external source because the distribution supplied MPI packages do not work. The reason is that the LAM package contains only static but no shared libraries. The MPICH package which is also contained in the distribution doesn't work due to the lack of some MPI-2 functions in MPICH (see \ref{subsection::mpi}). \end{enumerate} \section{Configuring and Building ESyS-Particle} %%--------------------------------------- %% USE %%--------------------------------------- \chapter{Use} \section{A script} In the most simple case, there are 3 things to do in a Python script for a ESyS-Particle simulation: \begin{enumerate} \item import the necessary Python modules \item define a ``Runnable'' object \item setting up and running the model \end{enumerate} \subsection{The Runnable} \subsection{Setting up and Running the Model} \section{Running the script} \subsection{On the SGI Altix} take stuff from Shanes HTML page \subsubsection{Running a script from an arbitrary directory} Use mptrunLsmFile FILENAME. \chapter{Function Reference} \section{The Main Simulation Class} %%----------------------------------- %% LsmMpi %%----------------------------------- \begin{classdesc}{LsmMpi}{numWorkerProcesses, mpiDimList,spawnExe,spawnArgList} The fundamental simulation class. %%----------------------------------- %% LsmMpi.initVerletModel %%----------------------------------- \begin{methoddesc}{initVerletModel}{particleType, gridSpacing, verletDist} Initialize the Model with basic parameters. The parameter \var{particleType} specifies the type of particle used in the model. Currently two particle types are supported : \begin{itemize} \item ``NRotSphere'' a spherical, non-rotational particle with 3 (translational) degrees of freedom \item ``RotSphere'' a spherical particle with 6 (translational + rotational) degrees of freedom. \end{itemize} The parameters \var{gridSpacing} and \var{verletDist} determine the properties of the neighbor search algorithm. The grid spacing of the neighbor table is given by \var{gridSpacing}. The neighbour table is rebuilt if any particle moves further than \var{verletDist} since the last rebuild. \end{methoddesc} %%----------------------------------- %% LsmMpi.force2dComputations %%----------------------------------- \begin{methoddesc}{force2dComputations}{} Ensures particles only move in the M{x-y} plane and that rotations only occur about the M{z}-axis. Important in particular in 2D simulation with rotational particles because otherwise limited numerical precision (64bit double) in the calculation of the particle rotation would eventually introduce out-of-plane rotations. \end{methoddesc} %%----------------------------------- %% LsmMpi.runTimeStep %%----------------------------------- \begin{methoddesc}{runTimeStep}{} Runs a single step of the time-integration method. \end{methoddesc} %%----------------------------------- %% LsmMpi.run %%----------------------------------- \begin{methoddesc}{run}{} Run the simulation until the set number of timesteps is reached. \end{methoddesc} %%----------------------------------- %% LsmMpi.getLsmVersion %%----------------------------------- \begin{methoddesc}{getLsmVersion}{} Return the version string of the ESyS-Particle package. Should be ``2.0''. \end{methoddesc} %%----------------------------------- %% LsmMpi.setSpatialDomain %%----------------------------------- \begin{methoddesc}{setSpatialDomain}{theBoundingBox} \end{methoddesc} \begin{methoddesc}{setSpatialDomain}{theBoundingBox,cirDimList} \end{methoddesc} \begin{methoddesc}{setSpatialDomain}{minPt,maxPt} \end{methoddesc} %%----------------------------------- %% LsmMpi.setTimeStepSize %%----------------------------------- \begin{methoddesc}{setTimeStepSize}{dt} Sets the size of the time step used in the integration method to \var{dt}. \end{methoddesc} %%----------------------------------- %% LsmMpi.getTimeStepSize %%----------------------------------- \begin{methoddesc}{getTimeStepSize}{} Returns the current time-step size. \end{methoddesc} %%----------------------------------- %% LsmMpi.getWorkerSpawnCmd %%----------------------------------- \begin{methoddesc}{getWorkerSpawnCmd}{} Returns the command line string which spawns MPI worker processes. \end{methoddesc} %%----------------------------------- %% LsmMpi.getParticleType %%----------------------------------- \begin{methoddesc}{getParticleType}{} A string indicating the type of discrete-element particles in the model. \end{methoddesc} %%----------------------------------- %% LsmMpi.setNumTimeSteps %%----------------------------------- \begin{methoddesc}{setNumTimeSteps}{numTimeSteps} Sets the maximum number of time-steps for the {\sf un} method to execute to \var{numTimeSteps}. \end{methoddesc} %%----------------------------------- %% LsmMpi.getNumTimeSteps %%----------------------------------- \begin{methoddesc}{getNumTimeSteps}{} Returns the maximum number of time-steps which will be executed by the {\sf run} method. Sets the maximum number of time-steps for the {\sf un} method to execute to \var{numTimeSteps}. \end{methoddesc} %%----------------------------------- %% LsmMpi.getTimeStep %%----------------------------------- \begin{methoddesc}{getTimeStep}{} Returns the current time-step number (number of time-steps executed so far). \end{methoddesc} %%----------------------------------- %% LsmMpi.getNumParticles %%----------------------------------- \begin{methoddesc}{getNumParticles}{} Returns the current number of particles in the model. \end{methoddesc} %%----------------------------------- %% LsmMpi.createConnections %%----------------------------------- \begin{methoddesc}{createConnections}{iterable} \end{methoddesc} %%----------------------------------- %% LsmMpi.createParticles %%----------------------------------- \begin{methoddesc}{createParticles}{iterable} Creates discrete-element particles within the model. \end{methoddesc} %%----------------------------------- %% LsmMpi.createInteractionGroup %%----------------------------------- \begin{methoddesc}{createInteractionGroup}{prms} Creates a group of interactions with specified properties. The type of the interactions is determined by the type of the parameter class \var{prms}. Currently implemented are : \begin{itemize} \item elastic interactions \item bonded interactions \item frictional interactions \item velocity weakening friction \item gravity \item damping \item elastic particle-wall interactions \item bonded particle-wall interactions \item viscous particle-wall interactions \item elastic particle-mesh interactions \item bonded particle-mesh interactions \end{itemize} For details of the parameters, see section \ref{sec::params}. \end{methoddesc} %%----------------------------------- %% LsmMpi.createExclusion %%----------------------------------- \begin{methoddesc}{createExclusion}{interactionName1,interactionName2} Creates an interaction exclusion. When a pair of particles come into contact, a decision is made as to the types of interactions to which the pair are subjected. An exclusion precludes a pair of particles from being subjected to the interaction \var{interactionName2} if they are already subjected to \var{interactionName1}. This is necessary, for instance, in fracture models, where particles are initially elastically bonded, but after fracture occurs particles are subjected to a frictional type of interaction. In this case an exculsion would need to be created by create{\sf Exclusion(bonded,friction)}, so that particle pairs can not interact frictionally while they are bonded together. \end{methoddesc} %%----------------------------------- %% LsmMpi.readGeometry %%----------------------------------- \begin{methoddesc}{readGeometry}{fileName} Initialize the model with the geometry, i.e. particle positions, sizes and connectivity described in the file \var{fileName}. For the format of the geometry file see Appendix \ref{cha:geofileformat}. \end{methoddesc} %%----------------------------------- %% LsmMpi.readMesh %%----------------------------------- \begin{methoddesc}{readMesh}{fileName,meshName} Read a mesh in Finley format from file \var{fileName} and setup a triangle mesh. The mesh is accessible under the name \var{meshName}. \end{methoddesc} %%----------------------------------- %% LsmMpi.readMesh2D %%----------------------------------- \begin{methoddesc}{readMesh2D}{fileName,meshName} Read a 2D (line) mesh in Finley format from file \var{fileName} and setup a line mesh. The mesh is accessible under the name \var{meshName}. \end{methoddesc} %%----------------------------------- %% LsmMpi.createWall %%----------------------------------- \begin{methoddesc}{createWall}{name,posn,normal} Add a wall named \var{name} with the initial position \var{position} and normal vector \var{normal} to the model. In the context of ESyS-Particle a ``Wall'' is a infinite, rigid planar object which interacts with the particles, but in general doesn't move itself in response to the forces resulting from those interactions (see section \ref{sec:walls}). \end{methoddesc} %%----------------------------------- %% LsmMpi.moveParticleTo %%----------------------------------- \begin{methoddesc}{moveParticleTo}{id,posn} Sets the absolute position of the particle with Id \var{id} to \var{posn}. \end{methoddesc} %%----------------------------------- %% LsmMpi.moveWall %%----------------------------------- \begin{methoddesc}{moveWallBy}{wallName,displacement} Move one of the walls created by addWall. The name of the wall to be moved is given by \var{wallName} and the displacement by \var{displacement}. \end{methoddesc} %%----------------------------------- %% LsmMpi.moveSingleMeshNodeBy %%----------------------------------- \begin{methoddesc}{moveSingleMeshNodeBy}{meshName,nodeId,delta} Moves an individual mesh node/vertex. \begin{itemize} \item \var{meshName}: Name which identifies an existing mesh. \item \var{nodeId}: The identifier of the node within this mesh which is to be moved. \item \var{delta}: The node is moved by this vector. \end{itemize} \end{methoddesc} %%----------------------------------- %% LsmMpi.applyForceToWall %%----------------------------------- \begin{methoddesc}{applyForceToWall}{interactionName,Force} \end{methoddesc} %%----------------------------------- %% LsmMpi.createGravity %%----------------------------------- \begin{methoddesc}{createGravity}{gravityPrms} \end{methoddesc} %%----------------------------------- %% LsmMpi.setParticleVelocity %%----------------------------------- \begin{methoddesc}{setParticleVelocity}{id,Velocity} Set the velocity of the particle with ID \var{id} to \var{Velocity}. \end{methoddesc} %%----------------------------------- %% LsmMpi.setParticleAngularVelocity %%----------------------------------- \begin{methoddesc}{setParticleAngularVelocity}{id,AngularVelocity} Set the angular velocity of the particle with ID \var{id} to \var{AngularVelocity}. \end{methoddesc} %%----------------------------------- %% LsmMpi.setVelocityOfWall %%----------------------------------- \begin{methoddesc}{setVelocityOfWall}{name,Velocity} Set the velocity of a wall with viscous drag. This does {\bf not} influence the position of the wall, only the viscous drag applied to particles interaction with the wall. Therefore it is meaningless for walls without viscous drag. \begin{itemize} \item \var{name} \item \var{Velocity} \end{itemize} \end{methoddesc} %%----------------------------------- %% LsmMpi.tagParticleNearestTo %%----------------------------------- \begin{methoddesc}{tagParticleNearestTo}{tag,mask,Position} \end{methoddesc} %%----------------------------------- %% LsmMpi.findClosestParticle %%----------------------------------- \begin{methoddesc}{findClosestParticle}{pt} Returns the Id of the particle closest to a specified point \var{pt}. \end{methoddesc} %%----------------------------------- %% LsmMpi.getParticlePosn %%----------------------------------- \begin{methoddesc}{getParticlePosn}{id} Returns the location of a particle with a specified Id \var{id} \end{methoddesc} %%----------------------------------- %% LsmMpi.setParticleNonDynamic %%----------------------------------- \begin{methoddesc}{setParticleNonDynamic}{id} Set the particle with ID \var{id} non-dynamic, i.e. the particle still interacts with other particles the usual way but doesn't move in response to forces applied to it. Useful if the particle is moved in order to create a deformation source. \end{methoddesc} %%----------------------------------- %% LsmMpi.setParticleNonRotational %%----------------------------------- \begin{methoddesc}{setParticleNonRotational}{id} Set the with ID \var{id} non-rotational, i.e. it still participates in rotational (RotFriction, RotBonded) interactions but doesn't rotate in response to applied torque. \note{Only applicable if the particle type is rotational} \end{methoddesc} %%----------------------------------- %% LsmMpi.setTimingFileName %%----------------------------------- \begin{methoddesc}{setTimingFileName}{fileName} Method to switch on the saving of timing information and set the filename to \var{fileName}. \end{methoddesc} %%----------------------------------- %% LsmMpi.createCheckPointer %%----------------------------------- \begin{methoddesc}{createCheckPointer}{prms} Causes simulation to periodically save the entire model state to file. The parameters are contained in a CheckPointPrms object \var{prms}. The parameter class is described in section \ref{subsec::checkpointparams} \end{methoddesc} %%----------------------------------- %% LsmMpi.addPreTimeStepRunnable %%----------------------------------- \begin{methoddesc}{addPreTimeStepRunnable}{runnable} Adds a Runnable object (see section \ref{sec::runnable}) to the list of runnables. The Runnable.run method is called before the execution of each time-step. This method can be used to introduce a loading mechanism (apply force to walls, move walls, etc). \end{methoddesc} %%----------------------------------- %% LsmMpi.addPostTimeStepRunnable %%----------------------------------- \begin{methoddesc}{addPostTimeStepRunnable}{runnable} Adds a Runnable object (see section \ref{sec::runnable}) to the list of runnables. The Runnable.run method is called afterthe execution of each time-step. \end{methoddesc} %%----------------------------------- %% LsmMpi.createFieldSaver %%----------------------------------- \begin{methoddesc}{createFieldSaver}{prms} Causes specified data to be saved periodically to file. The parameters are contained in the parameter object \var{prms} described in section \ref{subsec::fieldsaverparams} \end{methoddesc} %%----------------------------------- %% LsmMpi.visitNodeRefs2d %%----------------------------------- \begin{methoddesc}{visitNodeRefs2d}{meshName,nodeRefVisitor} \end{methoddesc} %%----------------------------------- %% LsmMpi.visitRefStressPairs2d %%----------------------------------- \begin{methoddesc}{visitRefStressPairs2d}{meshName,refStressVisitor} \end{methoddesc} %%----------------------------------- %% LsmMpi.visitParticlesWithId %%----------------------------------- \begin{methoddesc}{visitParticlesWithId}{idList,particleVisitor} \end{methoddesc} \end{classdesc} %% END LsmMpi -------- %% === RUNNABLE === \section{The Runnable Class} \label{sec::runnable} %% === INTERACTION PARAMETERS === \section{Interaction Parameter Classes} \label{sec::params} %%----------------------------------- %% NRotElasticPrms %%----------------------------------- \begin{classdesc}{NRotElasticPrms}{name,k} The parameter class for elastic interactions between non-rotational particles.The interaction is purely repulsive elastic if the particles are in contact and no interaction otherwise. \begin{itemize} \item \var{name} : the name of the created interaction \item \var{k} : the spring constant \end{itemize} \end{classdesc} %%----------------------------------- %% NRotBondPrms %%----------------------------------- \begin{classdesc}{NRotBondPrms}{tag,name,k,rbreak} The parameter class for bonded interactions between non-rotational particles. The interaction is repulsive elastic if the particles are closer than the equilibrium distance (the sum of the radii) and attractive if the particles are further apart than the equilibrium distance. If the particles are further apart than the breaking distance than the interaction is removed. The absolute breaking distance for each pair of bonded particles is calculated from the relative breaking distance \var{rbreak} and the particle radii$r_i$ and $r_j$ , i.e. $r^{abs}_{break}=r_{break}(r_i+r_j)$. \begin{itemize} \item \var{tag} : the connection tag in the geometry description for which the interactions are created, \item \var{name} : the name of the created interaction , \item \var{k} : the spring constant, \item \var{rbreak} : the relative breaking distance \end{itemize} \end{classdesc} %%----------------------------------- %% NRotFrictionPrms %%----------------------------------- \begin{classdesc}{NRotFrictionPrms}{name,$k_n$,$\mu$,$k_s$} The parameter class for elastic frictional interactions between rotational particles.The interaction is repulsive elastic in normal and frictional in tangential direction. \note{Only applicable if the particle type is rotational} \begin{itemize} \item \var{name} : the name of the created interaction \item $k_n$ : radial (normal) spring constant, \item $\mu$ : friction coefficient, \item $k_s$ : tangential (shear) stiffness \end{itemize} \end{classdesc} %%----------------------------------- %% RotBondPrms %%----------------------------------- \newcommand{\brkForce}[1]{f^{\rm max}_{#1}} \newcommand{\brkTorque}[1]{t^{\rm max}_{#1}} \begin{classdesc}{RotBondPrms}{tag, interactionName, $k_r$, $k_s$, $k_t$, $k_b$, $\brkForce{r}$, $\brkForce{s}$, $\brkForce{t}$, $\brkForce{b}$} The parameter class for bonded interactions between rotational particles including radial, shearing, torsional and bending elasticity. \note{Only applicable if the particle type is rotational} \begin{itemize} \item \var{tag} : the connection tag for which the interactions are created, \item \var{interationName} : the name of the created interaction, \item{$k_r$} : radial (normal) spring constant, \item{$k_s$} : shearing (tangent) spring constant, \item{$k_t$} : torsional spring constant, \item{$k_b$} : bending spring constant, \item{$\brkForce{r}$} : maximum normal force for bond breakage, \item{$\brkForce{s}$} : maximum shear force for bond breakage, \item{$\brkTorque{t}$} : maximum torsion torque for bond breakage, \item{$\brkTorque{b}$} : maximum bending torque for bond breakage. \end{itemize} \end{classdesc} %%----------------------------------- %% RotFrictionPrms %%----------------------------------- \begin{classdesc}{RotFrictionPrms}{name, kn, mu, ks} \end{classdesc} %%----------------------------------- %% VWFrictionPrms %%----------------------------------- \begin{classdesc}{VWFrictionPrms}{name, normalK, staticMu, shearK,alpha} The parameter class for velocity weakening friction between non-rotation particles. The velocity depnedent coefficient of friction is calculated as $\mu=\mu_0/(1+2\alpha v_s)$ where $\mu_0$ is the static coefficient of friction as given by \var{shearK} and $v_s$ is the realtive slip (tangential) velocity between the particles. \begin{itemize} \item \var{name} (string) : Name assigned to this group of interactions. \item \var{normalK} (float) : spring constant used when calculating linear elastic normal force. \item \var{staticMu} (float) : friction coefficient at zero relative velocity \item \var{shearK} (float) : spring constant used when calculating linear elastic shear force. \item \var{alpha} (float) : coefficient for the amount of weakening - see equation above. \end{itemize} \end{classdesc} %%----------------------------------- %% GravityPrms %%----------------------------------- \begin{classdesc}{GravityPrms}{name,accel} The parameter class for gravity. The gravitational acceleration \var{accel} is not restricted to the $-z$-direction but can be arbitrary. \begin{itemize} \item \var{name} : the name of the created interaction, \item \var{accel} : the gravitational acceleration \end{itemize} \end{classdesc} %%----------------------------------- %% DampingPrms %%----------------------------------- \begin{classdesc}{DampingPrms}{type, name, visc, nmax} The parameter class for particle damping. The parameter \var{type} determines what type of damping is applied. If \var{type}=''Damping'', linear damping is applied, i.e. the particle velocity is damped. If \var{type}=''RotDamping'', the angular velocity of the particle is damped. \note{If, in case of rotational particles, both linear and angular velocity need to be damped, two instances of damping are necessary, one with ``Damping'' and ``RotDamping'' type. } \begin{itemize} \item \var{type} : the type of the damping, ''Damping'' or ''RotDamping'', \item \var{name} : the name of the created interaction, \item \var{visc} : the damping coefficient, \item \var{nmax} : the maximum iteration count \end{itemize} \end{classdesc} %%----------------------------------- %% NRotElasticWallPrms %%----------------------------------- \begin{classdesc}{NRotElasticWallPrms}{interactionName,wallName,k} \end{classdesc} %%----------------------------------- %% NRotBondedWallPrms %%----------------------------------- \begin{classdesc}{NRotBondedWallPrms}{interactionName,wallName,k,particleTag} \end{classdesc} %% ===== SAVER PARAMETERS ============= \section{Saver Parameter Classes} \subsection{Checkpointing Parameters} \label{subsec::checkpointparams} \begin{classdesc}{CheckPointPrms}{fileNamePrefix,beginTimeStep,endTimeStep,timeStepIncr} Parameters for specifying check-pointing intervals. \begin{itemize} \item \var{fileNamePrefix} (string) : prefix of files where checkpoint data is saved. \item \var{beginTimeStep} (int) : time step when checkpoint saving begins. \item \var{endTimeStep} (int) : time step when checkpoint saving stops. \item \var{timeStepIncr} (int) : a checkpoint is made every \var{timeStepIncr} time-steps. \end{itemize} At each checkpoint a N+1 files are saved where N is the number of worker processes, one ``master'' file containing the meta-data and one ``data'' file for each worker process. The file names of the checkpoints are determined from the given prefix \var{fileNamePrefix}, the current time step and the id (MPI-rank) of the process that has saved this snapshot. The filenames generated are PREFIX_t=T_M.txt where PREFIX is the file name prefix \var{fileNamePrefix}, T the current time step and M is 0 for the ``master'' file and 1...N for the ``data'' files. For example, if the prefix is ``cpt'' and the simulation is run using 4 worker processes, a checkpoint after 1000 timesteps would result in the files cpt_t=1000_0.txt, cpt_t=1000_1.txt, cpt_t=1000_2.txt, cpt_t=1000_3.txt and cpt_t=1000_4.txt. For the details of the data format of the checkpoints, see Appendix \ref{app::dump} \end{classdesc} %% === FIELD SAVER PARAMETERS === \subsection{Field Saver Parameters} \label{subsec::fieldsaverparams} %%------------------------------------ %% ParticleScalarFieldSaverPrms %%------------------------------------ \begin{classdesc}{ParticleScalarFieldSaverPrms}{fieldName,fileName,fileFormat,beginTimeStep,endTimeStep,timeStepIncr} Parameters for saving scalar particle-data to file. \begin{itemize} \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \end{itemize} \end{classdesc} %%------------------------------------ %% ParticleVectorFieldSaverPrms %%------------------------------------ \begin{classdesc}{ParticleVectorFieldSaverPrms}{fieldName,fileName,fileFormat,beginTimeStep,endTimeStep,timeStepIncr} Parameters for saving vector particle-data to file. \begin{itemize} \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \end{itemize} \end{classdesc} %%------------------------------------ %% InteractionScalarFieldSaverPrms %%------------------------------------ \begin{classdesc}{InteractionScalarFieldSaverPrms}{interactionName, fieldName,fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr} Parameters for saving scalar interaction-data to file. \begin{itemize} \item \var{interactionName} (string) : Name of the interaction group for which data is saved. \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \end{itemize} \end{classdesc} %%------------------------------------ %% InteractionCheckedScalarFieldSaverPrms %%------------------------------------ \begin{classdesc}{CheckedInteractionScalarFieldSaverPrms}{interactionName, fieldName,fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr} Parameters for saving scalar interaction-data from checked fields to file. \begin{itemize} \item \var{interactionName} (string) : Name of the interaction group for which data is saved. \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \end{itemize} \end{classdesc} %%------------------------------------ %% TaggedInteractionScalarFieldSaverPrms %%------------------------------------ \begin{classdesc}{TaggedInteractionScalarFieldSaverPrms}{interactionName, fieldName,fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr} Parameters for saving scalar data from tagged interactions to file. \begin{itemize} \item \var{interactionName} (string) : Name of the interaction group for which data is saved. \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \item \var{tag} (int) : the particle tag. \item \var{mask} (int) : The mask used in the tag comparison, i.e. the field is saved for particles for which the following is true: $(particle->getTag() | Mask ) == (Tag | Mask)$, i.e. the mask is used to determine which bits in the tag are compared. \end{itemize} \end{classdesc} %%------------------------------------ %% InteractionVectorFieldSaverPrms %%------------------------------------ \begin{classdesc}{InteractionVectorFieldSaverPrms}{interactionName, fieldName,fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr} Parameters for saving vector interaction-data to file. \begin{itemize} \item \var{interactionName} (string) : Name of the interaction group for which data is saved. \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \end{itemize} \end{classdesc} %%------------------------------------ %% TaggedParticleScalarFieldSaverPrms %%------------------------------------ \begin{classdesc}{TaggedParticleScalarFieldSaverPrms}{fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr, tag, mask} Parameters for saving scalar particle-data to file. The field is only saved for particles with a tag fulfilling the given criteria. \begin{itemize} \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \item \var{tag} (int) : the particle tag. \item \var{mask} (int) : The mask used in the tag comparison, i.e. the field is saved for particles for which the following is true: $(particle->getTag() | Mask ) == (Tag | Mask)$, i.e. the mask is used to determine which bits in the tag are compared. For example if Tag=5 (binary 101) and Mask=4 (binary 100), particles with a tag in which bit 3 is 1 would be used, i.e. 5 (101) or 6 (110), but not 8 (1000). A Mask of -1 (binary all 1) will lead to an exact comparison of the tags. \end{itemize} \end{classdesc} %%------------------------------------ %% TaggedParticleVectorFieldSaverPrms %%------------------------------------ \begin{classdesc}{TaggedParticleVectorFieldSaverPrms}{fieldName, fileName, fileFormat, beginTimeStep, endTimeStep, timeStepIncr, tag, mask} Parameters for saving vector particle-data to file. The field is only saved for particles with a tag fulfilling the given criteria. \begin{itemize} \item \var{fieldName} (string) : Name of the data field, eg 'e_kin'. \item \var{fileName} (string) : Name of the file where data is saved. \item \var{fileFormat} (string) : Format in which the data is saved - for example, 'SUM' or 'DX'. \item \var{beginTimeStep} (int) : start saving data at this time step \item \var{endTimeStep} (int) : finish saving data at this time step \item \var{timeStepIncr} (int) : save data every \var{timeStepIncr} time steps \item \var{tag} (int) : the particle tag. \item \var{mask} (int) : The mask used in the tag comparison. See above. \end{itemize} \end{classdesc} %% ===== EXAMPLES ========= \chapter{Examples} \section{A Simple Example} The section describes a simple, near minimal, ESyS-Particle script for the simulation of the uniaxial compression of a 3D block of solid material. \verbatiminput{../../Python/esys/lsm/examples/simple/compress3d.py} \section{A complicated Example} Shanes wave propagation script goes here. %%------------------------------------------- %% APPENDICES %%------------------------------------------- \appendix %%------------------------------------------- %% APPENDIX A : BENCHMARKS %%------------------------------------------- \chapter{Benchmarks} A set of benchmarks is supplied with the ESyS-Particle package, with each benchmark testing particular aspects of the code. All benchmarks are derived from application cases. The benchmarks scripts can be found in the esys.lsm.benchmarks directory of the ESyS-Particle package. %%------------------------------------------- %% Uniaxial compression benchmark %%------------------------------------------- \section{Benchmark 1: 3D Uniaxial Compression} This is a simple benchmark testing the execution speed of rotational bonded and frictional interactions and the rebuilding of the dynamic interaction list after breaking of bonded interactions. Due to the relatively small deformation the rebuilding of the neighbor table is infrequent and therefore has no major influence on the total runtime. The benchmark is executed mainly on a single CPU (i.e. 1 worker process) and thus does not test communication performance. \begin{tabular}[h]{|l|l|l|l|l|l||l|} \hline Date & ESyS-Particle Version & System & CPU & Compiler & Options & Time (min)\\ \hline \hline 12.08.2005 & 1.0 Beta1 & SGI Altix 3700 & Itanium 2 1.3Ghz & Intel CC 8.0.058 & -O3 & 53:33 \\ \hline 14.08.2005 & 1.0 Beta1 & Dell D600 & Pentium M 1.6Ghz & GCC 3.2.3 & -O2 & 65:56 \\ \hline 26.10.2005 & 1.0Beta1 & Dell Precision 380 & Pentium4-650 3.4Ghz & gcc 3.4.3 & -O2 & 32:51 \\ \hline \end{tabular} \section{Benchmark 2 : 2D Gouge Shear} This benchmark simulates the constant velocity / constant normal stress shear of a fault containing a fault gouge consisting of single particles. Because the benchmark employs circular boundary conditions it requires at least 2 worker processes. Due to the large deformation relatively frequent updates of the neighbor table and transfers of particles between nodes are performed. The benchmark is scalable to an arbitrary number of CPUs by geometrically scaling the size of the model. A shell script {\sf gengouge.sh} for the generation of the model geometry is provided. The benchmark script and the geometry generation script take the number of CPUs as command line parameters, i.e. {\sf gouge2dbench N M} where N is the number of CPUs in x-direction (therefore N needs to be at least 2) and M in y-direction. The total number of CPUs is M*N. The performance is given in Particles*timesteps/second. \begin{tabular}[h]{|l|l|l|l|l|l||l|l|} \hline Date & ESyS-Particle Version & $N_{cpu}$ & MxN & Compiler & Options & Time & Performance \\ \hline \hline \multicolumn{2}{|l}{System: } & \multicolumn{6}{l|}{SGI Altix 3700, Itanium 2 1.3Ghz } \\ \hline 23.08.05 & 1.0 Beta1 & 2 & 2x1 & Intel CC 8.0.058 & -O3 & 176s & 182314 \\ \hline 23.08.05 & 1.0 Beta1 & 4 & 2x2 & Intel CC 8.0.058 & -O3 & 267s & 238430 \\ \hline 24.08.05 & 1.0 Beta1 & 8 & 4x2 & Intel CC 8.0.058 & -O3 & 311s & 414394 \\ \hline 24.08.05 & 1.0 Beta1 & 16 & 4x4 & Intel CC 8.0.058 & -O3 & 461s & 540357 \\ \hline 24.08.05 & 1.0 Beta1 & 16 & 8x2 & Intel CC 8.0.058 & -O3 & 381s & 688580 \\ \hline \end{tabular} \section{Benchmark 3 : 3D Planar Fault Slip} \section{Benchmark 4 : } \section{Benchmark 5 : } %%------------------------------------------- %% APPENDIX B : TOOLS %%------------------------------------------- \chapter{Tools included in the Distribution} \section{The Geometry Generator - ``gengeo''} \label{sec:gengeo} List of command line options: \begin{itemize} \item {\bf -o} {\it FILENAME} The name of the output file. \item {\bf -r} {\it RAD} The minimal particle radius in a random packing. \item {\bf -x} {\it XMAX}, {\bf -y} {\it YMAX}, {\bf -z} {\it ZMAX} : The dimensions of a rectangular or hexahedral geometry to be created. If a z-dimension is given, a 3D geometry is created, otherwise the geometry is 2D. The ``lower'' corner is always (0,0) in 2D or (0,0,0) in 3D and the ``upper'' corner is located at (XMAX,YMAX) or (XMAX,YMAX,ZMAX) respectively. \end{itemize} \subsection{Examples} \subsubsection{A single-particle gouge between elastic blocks in 2D} \section{Converting Snapshots to Visualisation Files - ``dump2vtk'' and ``dump2pos''} %%------------------------------------------- %% APPENDIX C : GEOMETRY FILE FORMAT %%------------------------------------------- \include{geo-file} %%------------------------------------------- %% APPENDIX D : GEOMETRY FILE FORMAT %%------------------------------------------- \include{dump-file} %% index \input{userman.ind} %% ================================================= %% bibliography %% ================================================= \begin{thebibliography}{1} \bibitem{lsm-parallel1} {\normalsize \textrm{S. Abe, D. Place and P. Mora, 2004, } \textit{A Parallel Implementation of the Lattice Solid Model for the Simulation of Rock Mechanics and Earthquake Dynamics, } \textrm{Pure Appl. Geophys., {\bf 161,}}} \bibitem{cundall-dem} {\normalsize \textrm{P. A. Cundall and O. D. A. Strack, 1979, } \textit{A Discrete Numerical Model for Granular Assemblies, }\textrm{Ge\'otechnique, {\bf 29,} 47-65}} \bibitem{stick-slip} {\textrm {P. Mora and D. Place, 1994, }\textit{Simulation of the Stick-Slip Instability, }\textrm{Pure Appl. Geophys., {\bf 143,} 61-87}} \bibitem{geocomplex} {\normalsize \textrm{P. Mora, D. Place, S. Abe and S. Jaum\'e, 2000 } \textit{Lattice solid simulations of the physics of fault zones and earthquakes: the model, results and directions }\textrm{ Geocomplexity and the Physics of Earthquakes, AGU, Washington}} \bibitem{lsm-packing} {\normalsize \textrm {D. Place and P. Mora, 2001, } \textit{A Random Lattice Solid Model for Simulation of Fault Zone Dynamics and Fracture Processes, } \textrm{In:} \textit{Bifurcation and Localisation Theory for Soils and Rocks'99 }\textrm{(Eds. H. B. M\"uhlhaus, A. Dyskin and E Pasternak)(AA Balkema, Rotterdam/Brookfield 2001)}} \end{thebibliography} \end{document} ./Doc/Deprecated/Manual/dump-file.tex0000664000175000017500000000006712176660653017230 0ustar vborosvboros\chapter{The Checkpoint Data Format} \label{app::dump} ./Doc/Deprecated/Manual/fancyhdr.sty0000664000175000017500000003455312176660653017172 0ustar vborosvboros% fancyhdr.sty version 1.99d % Fancy headers and footers for LaTeX. % Piet van Oostrum, Dept of Computer Science, University of Utrecht % Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands % Telephone: +31 30 2532180. Email: piet@cs.ruu.nl % ======================================================================== % LICENCE: This is free software. You are allowed to use and distribute % this software in any way you like. You are also allowed to make modified % versions of it, but you can distribute a modified version only if you % clearly indicate that it is a modified version and the person(s) who % modified it. This indication should be in a prominent place, e.g. in the % top of the file. If possible a contact address, preferably by email, % should be given for these persons. If that is feasible the modifications % should be indicated in the source code. % ======================================================================== % MODIFICATION HISTORY: % Sep 16, 1994 % version 1.4: Correction for use with \reversemargin % Sep 29, 1994: % version 1.5: Added the \iftopfloat, \ifbotfloat and \iffloatpage commands % Oct 4, 1994: % version 1.6: Reset single spacing in headers/footers for use with % setspace.sty or doublespace.sty % Oct 4, 1994: % version 1.7: changed \let\@mkboth\markboth to % \def\@mkboth{\protect\markboth} to make it more robust % Dec 5, 1994: % version 1.8: corrections for amsbook/amsart: define \@chapapp and (more % importantly) use the \chapter/sectionmark definitions from ps@headings if % they exist (which should be true for all standard classes). % May 31, 1995: % version 1.9: The proposed \renewcommand{\headrulewidth}{\iffloatpage... % construction in the doc did not work properly with the fancyplain style. % June 1, 1995: % version 1.91: The definition of \@mkboth wasn't restored on subsequent % \pagestyle{fancy}'s. % June 1, 1995: % version 1.92: The sequence \pagestyle{fancyplain} \pagestyle{plain} % \pagestyle{fancy} would erroneously select the plain version. % June 1, 1995: % version 1.93: \fancypagestyle command added. % Dec 11, 1995: % version 1.94: suggested by Conrad Hughes % CJCH, Dec 11, 1995: added \footruleskip to allow control over footrule % position (old hardcoded value of .3\normalbaselineskip is far too high % when used with very small footer fonts). % Jan 31, 1996: % version 1.95: call \@normalsize in the reset code if that is defined, % otherwise \normalsize. % this is to solve a problem with ucthesis.cls, as this doesn't % define \@currsize. Unfortunately for latex209 calling \normalsize doesn't % work as this is optimized to do very little, so there \@normalsize should % be called. Hopefully this code works for all versions of LaTeX known to % mankind. % April 25, 1996: % version 1.96: initialize \headwidth to a magic (negative) value to catch % most common cases that people change it before calling \pagestyle{fancy}. % Note it can't be initialized when reading in this file, because % \textwidth could be changed afterwards. This is quite probable. % We also switch to \MakeUppercase rather than \uppercase and introduce a % \nouppercase command for use in headers. and footers. % May 3, 1996: % version 1.97: Two changes: % 1. Undo the change in version 1.8 (using the pagestyle{headings} defaults % for the chapter and section marks. The current version of amsbook and % amsart classes don't seem to need them anymore. Moreover the standard % latex classes don't use \markboth if twoside isn't selected, and this is % confusing as \leftmark doesn't work as expected. % 2. include a call to \ps@empty in ps@@fancy. This is to solve a problem % in the amsbook and amsart classes, that make global changes to \topskip, % which are reset in \ps@empty. Hopefully this doesn't break other things. % May 7, 1996: % version 1.98: % Added % after the line \def\nouppercase % May 7, 1996: % version 1.99: This is the alpha version of fancyhdr 2.0 % Introduced the new commands \fancyhead, \fancyfoot, and \fancyhf. % Changed \headrulewidth, \footrulewidth, \footruleskip to % macros rather than length parameters, In this way they can be % conditionalized and they don't consume length registers. There is no need % to have them as length registers unless you want to do calculations with % them, which is unlikely. Note that this may make some uses of them % incompatible (i.e. if you have a file that uses \setlength or \xxxx=) % May 10, 1996: % version 1.99a: % Added a few more % signs % May 10, 1996: % version 1.99b: % Changed the syntax of \f@nfor to be resistent to catcode changes of := % Removed the [1] from the defs of \lhead etc. because the parameter is % consumed by the \@[xy]lhead etc. macros. % June 24, 1997: % version 1.99c: % corrected \nouppercase to also include the protected form of \MakeUppercase % \global added to manipulation of \headwidth. % \iffootnote command added. % Some comments added about \@fancyhead and \@fancyfoot. % Aug 24, 1998 % version 1.99d % Changed the default \ps@empty to \ps@@empty in order to allow % \fancypagestyle{empty} redefinition. \let\fancy@def\gdef \def\if@mpty#1#2#3{\def\temp@ty{#1}\ifx\@empty\temp@ty #2\else#3\fi} % Usage: \@forc \var{charstring}{command to be executed for each char} % This is similar to LaTeX's \@tfor, but expands the charstring. \def\@forc#1#2#3{\expandafter\f@rc\expandafter#1\expandafter{#2}{#3}} \def\f@rc#1#2#3{\def\temp@ty{#2}\ifx\@empty\temp@ty\else \f@@rc#1#2\f@@rc{#3}\fi} \def\f@@rc#1#2#3\f@@rc#4{\def#1{#2}#4\f@rc#1{#3}{#4}} % Usage: \f@nfor\name:=list\do{body} % Like LaTeX's \@for but an empty list is treated as a list with an empty % element \newcommand{\f@nfor}[3]{\edef\@fortmp{#2}% \expandafter\@forloop#2,\@nil,\@nil\@@#1{#3}} % Usage: \def@ult \cs{defaults}{argument} % sets \cs to the characters from defaults appearing in argument % or defaults if it would be empty. All characters are lowercased. \newcommand\def@ult[3]{% \edef\temp@a{\lowercase{\edef\noexpand\temp@a{#3}}}\temp@a \def#1{}% \@forc\tmpf@ra{#2}% {\expandafter\if@in\tmpf@ra\temp@a{\edef#1{#1\tmpf@ra}}{}}% \ifx\@empty#1\def#1{#2}\fi} % % \if@in % \newcommand{\if@in}[4]{% \edef\temp@a{#2}\def\temp@b##1#1##2\temp@b{\def\temp@b{##1}}% \expandafter\temp@b#2#1\temp@b\ifx\temp@a\temp@b #4\else #3\fi} \newcommand{\fancyhead}{\@ifnextchar[{\f@ncyhf h}{\f@ncyhf h[]}} \newcommand{\fancyfoot}{\@ifnextchar[{\f@ncyhf f}{\f@ncyhf f[]}} \newcommand{\fancyhf}{\@ifnextchar[{\f@ncyhf {}}{\f@ncyhf {}[]}} % The header and footer fields are stored in command sequences with % names of the form: \f@ncy with for [eo], form [lcr] % and from [hf]. \def\f@ncyhf#1[#2]#3{% \def\temp@c{}% \@forc\tmpf@ra{#2}% {\expandafter\if@in\tmpf@ra{eolcrhf,EOLCRHF}% {}{\edef\temp@c{\temp@c\tmpf@ra}}}% \ifx\@empty\temp@c\else \ifx\PackageError\undefined \errmessage{Illegal char `\temp@c' in fancyhdr argument: [#2]}\else \PackageError{Fancyhdr}{Illegal char `\temp@c' in fancyhdr argument: [#2]}{}\fi \fi \f@nfor\temp@c{#2}% {\def@ult\f@@@eo{eo}\temp@c \def@ult\f@@@lcr{lcr}\temp@c \def@ult\f@@@hf{hf}{#1\temp@c}% \@forc\f@@eo\f@@@eo {\@forc\f@@lcr\f@@@lcr {\@forc\f@@hf\f@@@hf {\expandafter\fancy@def\csname f@ncy\f@@eo\f@@lcr\f@@hf\endcsname {#3}}}}}} % Fancyheadings version 1 commands. These are more or less deprecated, % but they continue to work. \newcommand{\lhead}{\@ifnextchar[{\@xlhead}{\@ylhead}} \def\@xlhead[#1]#2{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#2}} \def\@ylhead#1{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#1}} \newcommand{\chead}{\@ifnextchar[{\@xchead}{\@ychead}} \def\@xchead[#1]#2{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#2}} \def\@ychead#1{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#1}} \newcommand{\rhead}{\@ifnextchar[{\@xrhead}{\@yrhead}} \def\@xrhead[#1]#2{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#2}} \def\@yrhead#1{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#1}} \newcommand{\lfoot}{\@ifnextchar[{\@xlfoot}{\@ylfoot}} \def\@xlfoot[#1]#2{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#2}} \def\@ylfoot#1{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#1}} \newcommand{\cfoot}{\@ifnextchar[{\@xcfoot}{\@ycfoot}} \def\@xcfoot[#1]#2{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#2}} \def\@ycfoot#1{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#1}} \newcommand{\rfoot}{\@ifnextchar[{\@xrfoot}{\@yrfoot}} \def\@xrfoot[#1]#2{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#2}} \def\@yrfoot#1{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#1}} \newdimen\headwidth \newcommand{\headrulewidth}{0.4pt} \newcommand{\footrulewidth}{\z@skip} \newcommand{\footruleskip}{.3\normalbaselineskip} % Fancyplain stuff shouldn't be used anymore (rather % \fancypagestyle{plain} should be used), but it must be present for % compatibility reasons. \newcommand{\plainheadrulewidth}{\z@skip} \newcommand{\plainfootrulewidth}{\z@skip} \newif\if@fancyplain \@fancyplainfalse \def\fancyplain#1#2{\if@fancyplain#1\else#2\fi} \headwidth=-123456789sp %magic constant % Command to reset various things in the headers: % a.o. single spacing (taken from setspace.sty) % and the catcode of ^^M (so that epsf files in the header work if a % verbatim crosses a page boundary) % It also defines a \nouppercase command that disables \uppercase and % \Makeuppercase. It can only be used in the headers and footers. \def\fancy@reset{\restorecr \def\baselinestretch{1}% \def\nouppercase##1{{\let\uppercase\relax\let\MakeUppercase\relax \expandafter\let\csname MakeUppercase \endcsname\relax##1}}% \ifx\undefined\@newbaseline% NFSS not present; 2.09 or 2e \ifx\@normalsize\undefined \normalsize % for ucthesis.cls \else \@normalsize \fi \else% NFSS (2.09) present \@newbaseline% \fi} % Initialization of the head and foot text. % The default values still contain \fancyplain for compatibility. \fancyhf{} % clear all % lefthead empty on ``plain'' pages, \rightmark on even, \leftmark on odd pages % evenhead empty on ``plain'' pages, \leftmark on even, \rightmark on odd pages \fancyhead[el,or]{\fancyplain{}{\sl\rightmark}} \fancyhead[er,ol]{\fancyplain{}{\sl\leftmark}} \fancyfoot[c]{\rm\thepage} % page number % Put together a header or footer given the left, center and % right text, fillers at left and right and a rule. % The \lap commands put the text into an hbox of zero size, % so overlapping text does not generate an errormessage. % These macros have 5 parameters: % 1. \@lodd or \@rodd % This determines at which side the header will stick % out. % 2. \f@ncyolh, \f@ncyelh, \f@ncyolf or \f@ncyelf. This is the left component. % 3. \f@ncyoch, \f@ncyech, \f@ncyocf or \f@ncyecf. This is the middle comp. % 4. \f@ncyorh, \f@ncyerh, \f@ncyorf or \f@ncyerf. This is the right component. % 5. \@lodd or \@rodd % This determines at which side the header will stick % out. This is the reverse of parameter nr. 1. One of them is always % \relax and the other one is \hss (after expansion). \def\@fancyhead#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset\vbox{\hbox {\rlap{\parbox[b]{\headwidth}{\raggedright#2\strut}}\hfill \parbox[b]{\headwidth}{\centering#3\strut}\hfill \llap{\parbox[b]{\headwidth}{\raggedleft#4\strut}}}\headrule}}#5} \def\@fancyfoot#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset\vbox{\footrule \hbox{\rlap{\parbox[t]{\headwidth}{\raggedright#2\strut}}\hfill \parbox[t]{\headwidth}{\centering#3\strut}\hfill \llap{\parbox[t]{\headwidth}{\raggedleft#4\strut}}}}}#5} \def\headrule{{\if@fancyplain\let\headrulewidth\plainheadrulewidth\fi \hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}} \def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi \vskip-\footruleskip\vskip-\footrulewidth \hrule\@width\headwidth\@height\footrulewidth\vskip\footruleskip}} \def\ps@fancy{% \@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook % % Define \MakeUppercase for old LaTeXen. % Note: we used \def rather than \let, so that \let\uppercase\relax (from % the version 1 documentation) will still work. % \@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}% \@ifundefined{chapter}{\def\sectionmark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\z@ \thesection\hskip 1em\relax \fi ##1}}{}}% \def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne \thesubsection\hskip 1em\relax \fi ##1}}}% {\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne \@chapapp\ \thechapter. \ \fi ##1}}{}}% \def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi ##1}}}}% %\csname ps@headings\endcsname % use \ps@headings defaults if they exist \ps@@fancy \gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}% % Initialize \headwidth if the user didn't % \ifdim\headwidth<0sp % % This catches the case that \headwidth hasn't been initialized and the % case that the user added something to \headwidth in the expectation that % it was initialized to \textwidth. We compensate this now. This loses if % the user intended to multiply it by a factor. But that case is more % likely done by saying something like \headwidth=1.2\textwidth. % The doc says you have to change \headwidth after the first call to % \pagestyle{fancy}. This code is just to catch the most common cases were % that requirement is violated. % \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth \fi} \def\ps@fancyplain{\ps@fancy \let\ps@plain\ps@plain@fancy} \def\ps@plain@fancy{\@fancyplaintrue\ps@@fancy} \let\ps@@empty\ps@empty \def\ps@@fancy{% \ps@@empty % This is for amsbook/amsart, which do strange things with \topskip \def\@mkboth{\protect\markboth}% \def\@oddhead{\@fancyhead\@lodd\f@ncyolh\f@ncyoch\f@ncyorh\@rodd}% \def\@oddfoot{\@fancyfoot\@lodd\f@ncyolf\f@ncyocf\f@ncyorf\@rodd}% \def\@evenhead{\@fancyhead\@rodd\f@ncyelh\f@ncyech\f@ncyerh\@lodd}% \def\@evenfoot{\@fancyfoot\@rodd\f@ncyelf\f@ncyecf\f@ncyerf\@lodd}% } \def\@lodd{\if@reversemargin\hss\else\relax\fi} \def\@rodd{\if@reversemargin\relax\else\hss\fi} \newif\iffootnote \let\latex@makecol\@makecol \def\@makecol{\ifvoid\footins\footnotetrue\else\footnotefalse\fi \let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol} \def\iftopfloat#1#2{\ifx\topfloat\empty #2\else #1\fi} \def\ifbotfloat#1#2{\ifx\botfloat\empty #2\else #1\fi} \def\iffloatpage#1#2{\if@fcolmade #1\else #2\fi} \newcommand{\fancypagestyle}[2]{% \@namedef{ps@#1}{\let\fancy@def\def#2\relax\ps@fancy}} ./Doc/Deprecated/Manual/python.sty0000664000175000017500000012002712176660653016705 0ustar vborosvboros% % python.sty for the Python docummentation [works only with Latex2e] % \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{python} [1998/01/11 LaTeX package (Python markup)] \RequirePackage{longtable} \RequirePackage{underscore} % Uncomment these two lines to ignore the paper size and make the page % size more like a typical published manual. %\renewcommand{\paperheight}{9in} %\renewcommand{\paperwidth}{8.5in} % typical squarish manual %\renewcommand{\paperwidth}{7in} % O'Reilly ``Programmming Python'' % These packages can be used to add marginal annotations which indicate % index entries and labels; useful for reviewing this messy documentation! % %\RequirePackage{showkeys} %\RequirePackage{showidx} % If we ever want to indent paragraphs, this needs to be changed. % This is used inside the macros defined here instead of coding % \noindent directly. \let\py@parindent=\noindent % for PDF output, use maximal compression & a lot of other stuff % (test for PDF recommended by Tanmoy Bhattacharya ) % \newif\ifpy@doing@page@targets \py@doing@page@targetsfalse \newif\ifpdf\pdffalse \ifx\pdfoutput\undefined\else\ifcase\pdfoutput \else \pdftrue \input{pdfcolor} \let\py@LinkColor=\NavyBlue \let\py@NormalColor=\Black \pdfcompresslevel=9 \pdfpagewidth=\paperwidth % page width of PDF output \pdfpageheight=\paperheight % page height of PDF output % % Pad the number with '0' to 3 digits wide so no page name is a prefix % of any other. % \newcommand{\py@targetno}[1]{\ifnum#1<100 0\fi\ifnum#1<10 0\fi#1} \newcommand{\py@pageno}{\py@targetno\thepage} % % This definition allows the entries in the page-view of the ToC to be % active links. Some work, some don't. % \let\py@OldContentsline=\contentsline % % Backward compatibility hack: pdfTeX 0.13 defined \pdfannotlink, % but it changed to \pdfstartlink in 0.14. This let's us use either % version and still get useful behavior. % \@ifundefined{pdfstartlink}{ \let\pdfstartlink=\pdfannotlink }{} % % The \py@parindent here is a hack -- we're forcing pdfTeX into % horizontal mode since \pdfstartlink requires that. \def\py@pdfstartlink{% \ifvmode\py@parindent\fi% \pdfstartlink% } % % Macro that takes two args: the name to link to and the content of % the link. This takes care of the PDF magic, getting the colors % the same for each link, and avoids having lots of garbage all over % this style file. \newcommand{\py@linkToName}[2]{% \py@pdfstartlink attr{/Border [0 0 0]} goto name{#1}% \py@LinkColor#2\py@NormalColor% \pdfendlink% } % Compute the padded page number separately since we end up with a pair of % \relax tokens; this gets the right string computed and works. \renewcommand{\contentsline}[3]{% \def\my@pageno{\py@targetno{#3}}% \py@OldContentsline{#1}{\py@linkToName{page\my@pageno}{#2}}{#3}% } \AtEndDocument{ \def\_{\string_} \InputIfFileExists{\jobname.bkm}{\pdfcatalog{/PageMode /UseOutlines}}{} } \newcommand{\py@target}[1]{% \ifpy@doing@page@targets% {\pdfdest name{#1} xyz}% \fi% } \let\py@OldLabel=\label \renewcommand{\label}[1]{% \py@OldLabel{#1}% \py@target{label-#1}% } % This stuff adds a page# destination to every PDF page, where # is three % digits wide, padded with leading zeros. This doesn't really help with % the frontmatter, but does fine with the body. % % This is *heavily* based on the hyperref package. % \def\@begindvi{% \unvbox \@begindvibox \@hyperfixhead } \def\@hyperfixhead{% \let\H@old@thehead\@thehead \global\def\@foo{\py@target{page\py@pageno}}% \expandafter\ifx\expandafter\@empty\H@old@thehead \def\H@old@thehead{\hfil}\fi \def\@thehead{\@foo\relax\H@old@thehead}% } \fi\fi % Increase printable page size (copied from fullpage.sty) \topmargin 0pt \advance \topmargin by -\headheight \advance \topmargin by -\headsep % attempt to work a little better for A4 users \textheight \paperheight \advance\textheight by -2in \oddsidemargin 0pt \evensidemargin 0pt %\evensidemargin -.25in % for ``manual size'' documents \marginparwidth 0.5in \textwidth \paperwidth \advance\textwidth by -2in % Style parameters and macros used by most documents here \raggedbottom \sloppy \parindent = 0mm \parskip = 2mm \hbadness = 5000 % don't print trivial gripes \pagestyle{empty} % start this way; change for \pagenumbering{roman} % ToC & chapters % Use this to set the font family for headers and other decor: \newcommand{\py@HeaderFamily}{\sffamily} % Set up abstract ways to get the normal and smaller font sizes that % work even in footnote context. \newif\ifpy@infootnote \py@infootnotefalse \let\py@oldmakefntext\@makefntext \def\@makefntext#1{% \bgroup% \py@infootnotetrue \py@oldmakefntext{#1}% \egroup% } \def\py@defaultsize{% \ifpy@infootnote\footnotesize\else\normalsize\fi% } \def\py@smallsize{% \ifpy@infootnote\scriptsize\else\small\fi% } % Redefine the 'normal' header/footer style when using "fancyhdr" package: \@ifundefined{fancyhf}{}{ % Use \pagestyle{normal} as the primary pagestyle for text. \fancypagestyle{normal}{ \fancyhf{} \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}} \fancyfoot[LO]{{\py@HeaderFamily\nouppercase{\rightmark}}} \fancyfoot[RE]{{\py@HeaderFamily\nouppercase{\leftmark}}} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0.4pt} } % Update the plain style so we get the page number & footer line, % but not a chapter or section title. This is to keep the first % page of a chapter and the blank page between chapters `clean.' \fancypagestyle{plain}{ \fancyhf{} \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0.4pt} } % Redefine \cleardoublepage so that the blank page between chapters % gets the plain style and not the fancy style. This is described % in the documentation for the fancyhdr package by Piet von Oostrum. \@ifundefined{chapter}{}{ \renewcommand{\cleardoublepage}{ \clearpage\if@openright \ifodd\c@page\else \hbox{} \thispagestyle{plain} \newpage \if@twocolumn\hbox{}\newpage\fi\fi\fi } } } % This sets up the {verbatim} environment to be indented and a minipage, % and to have all the other mostly nice properties that we want for % code samples. \let\py@OldVerbatim=\verbatim \let\py@OldEndVerbatim=\endverbatim \RequirePackage{verbatim} \let\py@OldVerbatimInput=\verbatiminput % Variable used by begin code command \newlength{\py@codewidth} \renewcommand{\verbatim}{% \setlength{\parindent}{1cm}% % Calculate the text width for the minipage: \setlength{\py@codewidth}{\linewidth}% \addtolength{\py@codewidth}{-\parindent}% % \par\indent% \begin{minipage}[t]{\py@codewidth}% \small% \py@OldVerbatim% } \renewcommand{\endverbatim}{% \py@OldEndVerbatim% \end{minipage}% } \renewcommand{\verbatiminput}[1]{% {\setlength{\parindent}{1cm}% % Calculate the text width for the minipage: \setlength{\py@codewidth}{\linewidth}% \addtolength{\py@codewidth}{-\parindent}% % \small% \begin{list}{}{\setlength{\leftmargin}{1cm}} \item% \py@OldVerbatimInput{#1}% \end{list} }% } % This does a similar thing for the {alltt} environment: \RequirePackage{alltt} \let\py@OldAllTT=\alltt \let\py@OldEndAllTT=\endalltt \renewcommand{\alltt}{% \setlength{\parindent}{1cm}% % Calculate the text width for the minipage: \setlength{\py@codewidth}{\linewidth}% \addtolength{\py@codewidth}{-\parindent}% \let\e=\textbackslash% % \par\indent% \begin{minipage}[t]{\py@codewidth}% \small% \py@OldAllTT% } \renewcommand{\endalltt}{% \py@OldEndAllTT% \end{minipage}% } \newcommand{\py@modulebadkey}{{--just-some-junk--}} %% Lots of index-entry generation support. % Command to wrap around stuff that refers to function / module / % attribute names in the index. Default behavior: like \code{}. To % just keep the index entries in the roman font, uncomment the second % definition; it matches O'Reilly style more. % \newcommand{\py@idxcode}[1]{\texttt{#1}} %\renewcommand{\py@idxcode}[1]{#1} % Command to generate two index entries (using subentries) \newcommand{\indexii}[2]{\index{#1!#2}\index{#2!#1}} % And three entries (using only one level of subentries) \newcommand{\indexiii}[3]{\index{#1!#2 #3}\index{#2!#3, #1}\index{#3!#1 #2}} % And four (again, using only one level of subentries) \newcommand{\indexiv}[4]{ \index{#1!#2 #3 #4} \index{#2!#3 #4, #1} \index{#3!#4, #1 #2} \index{#4!#1 #2 #3} } % Command to generate a reference to a function, statement, keyword, % operator. \newcommand{\kwindex}[1]{\indexii{keyword}{#1@{\py@idxcode{#1}}}} \newcommand{\stindex}[1]{\indexii{statement}{#1@{\py@idxcode{#1}}}} \newcommand{\opindex}[1]{\indexii{operator}{#1@{\py@idxcode{#1}}}} \newcommand{\exindex}[1]{\indexii{exception}{#1@{\py@idxcode{#1}}}} \newcommand{\obindex}[1]{\indexii{object}{#1}} \newcommand{\bifuncindex}[1]{% \index{#1@{\py@idxcode{#1()}} (built-in function)}} % Add an index entry for a module \newcommand{\py@refmodule}[2]{\index{#1@{\py@idxcode{#1}} (#2module)}} \newcommand{\refmodindex}[1]{\py@refmodule{#1}{}} \newcommand{\refbimodindex}[1]{\py@refmodule{#1}{built-in }} \newcommand{\refexmodindex}[1]{\py@refmodule{#1}{extension }} \newcommand{\refstmodindex}[1]{\py@refmodule{#1}{standard }} % Refer to a module's documentation using a hyperlink of the module's % name, at least if we're building PDF: \ifpdf \newcommand{\refmodule}[2][\py@modulebadkey]{% \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi% \py@linkToName{label-module-\py@modulekey}{\module{#2}}% } \else \newcommand{\refmodule}[2][\py@modulebadkey]{\module{#2}} \fi % support for the module index \newif\ifpy@UseModuleIndex \py@UseModuleIndexfalse \newcommand{\makemodindex}{ \newwrite\modindexfile \openout\modindexfile=mod\jobname.idx \py@UseModuleIndextrue } % Add the defining entry for a module \newcommand{\py@modindex}[2]{% \renewcommand{\py@thismodule}{#1} \setindexsubitem{(in module #1)}% \index{#1@{\py@idxcode{#1}} (#2module)|textbf}% \ifpy@UseModuleIndex% \@ifundefined{py@modplat@\py@thismodulekey}{ \write\modindexfile{\protect\indexentry{#1@{\texttt{#1}}}{\thepage}}% }{\write\modindexfile{\protect\indexentry{#1@{\texttt{#1} % \emph{(\py@platformof[\py@thismodulekey]{})}}}{\thepage}}% } \fi% } % *** XXX *** THE NEXT FOUR MACROS ARE NOW OBSOLETE !!! *** % built-in & Python modules in the main distribution \newcommand{\bimodindex}[1]{\py@modindex{#1}{built-in }% \typeout{*** MACRO bimodindex IS OBSOLETE -- USE declaremodule INSTEAD!}} \newcommand{\stmodindex}[1]{\py@modindex{#1}{standard }% \typeout{*** MACRO stmodindex IS OBSOLETE -- USE declaremodule INSTEAD!}} % Python & extension modules outside the main distribution \newcommand{\modindex}[1]{\py@modindex{#1}{}% \typeout{*** MACRO modindex IS OBSOLETE -- USE declaremodule INSTEAD!}} \newcommand{\exmodindex}[1]{\py@modindex{#1}{extension }% \typeout{*** MACRO exmodindex IS OBSOLETE -- USE declaremodule INSTEAD!}} % Additional string for an index entry \newif\ifpy@usingsubitem\py@usingsubitemfalse \newcommand{\py@indexsubitem}{} \newcommand{\setindexsubitem}[1]{\renewcommand{\py@indexsubitem}{ #1}% \py@usingsubitemtrue} \newcommand{\ttindex}[1]{% \ifpy@usingsubitem \index{#1@{\py@idxcode{#1}}\py@indexsubitem}% \else% \index{#1@{\py@idxcode{#1}}}% \fi% } \newcommand{\withsubitem}[2]{% \begingroup% \def\ttindex##1{\index{##1@{\py@idxcode{##1}} #1}}% #2% \endgroup% } % Module synopsis processing ----------------------------------------------- % \newcommand{\py@thisclass}{} \newcommand{\py@thismodule}{} \newcommand{\py@thismodulekey}{} \newcommand{\py@thismoduletype}{} \newcommand{\py@standardIndexModule}[1]{\py@modindex{#1}{standard }} \newcommand{\py@builtinIndexModule}[1]{\py@modindex{#1}{built-in }} \newcommand{\py@extensionIndexModule}[1]{\py@modindex{#1}{extension }} \newcommand{\py@IndexModule}[1]{\py@modindex{#1}{}} \newif\ifpy@HaveModSynopsis \py@HaveModSynopsisfalse \newif\ifpy@ModSynopsisFileIsOpen \py@ModSynopsisFileIsOpenfalse \newif\ifpy@HaveModPlatform \py@HaveModPlatformfalse % \declaremodule[key]{type}{name} \newcommand{\declaremodule}[3][\py@modulebadkey]{ \py@openModSynopsisFile \renewcommand{\py@thismoduletype}{#2} \ifx\py@modulebadkey#1 \renewcommand{\py@thismodulekey}{#3} \else \renewcommand{\py@thismodulekey}{#1} \fi \@ifundefined{py@#2IndexModule}{% \typeout{*** MACRO declaremodule called with unknown module type: `#2'} \py@IndexModule{#3}% }{% \csname py@#2IndexModule\endcsname{#3}% } \label{module-\py@thismodulekey} } \newif\ifpy@ModPlatformFileIsOpen \py@ModPlatformFileIsOpenfalse \newcommand{\py@ModPlatformFilename}{\jobname.pla} \newcommand{\platform}[1]{ \ifpy@ModPlatformFileIsOpen\else \newwrite\py@ModPlatformFile \openout\py@ModPlatformFile=\py@ModPlatformFilename \py@ModPlatformFileIsOpentrue \fi } \InputIfFileExists{\jobname.pla}{}{} \newcommand{\py@platformof}[2][\py@modulebadkey]{% \ifx\py@modulebadkey#1 \def\py@key{#2}% \else \def\py@key{#1}% \fi% \csname py@modplat@\py@key\endcsname% } \newcommand{\ignorePlatformAnnotation}[1]{} % \moduleauthor{name}{email} \newcommand{\moduleauthor}[2]{} % \sectionauthor{name}{email} \newcommand{\sectionauthor}[2]{} \newcommand{\py@defsynopsis}{Module has no synopsis.} \newcommand{\py@modulesynopsis}{\py@defsynopsis} \newcommand{\modulesynopsis}[1]{ \py@HaveModSynopsistrue \renewcommand{\py@modulesynopsis}{#1} } % define the file \newwrite\py@ModSynopsisFile % hacked from \addtocontents from latex.ltx: \long\def\py@writeModSynopsisFile#1{% \protected@write\py@ModSynopsisFile% {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble}% {\string#1}% } \newcommand{\py@closeModSynopsisFile}{ \ifpy@ModSynopsisFileIsOpen \closeout\py@ModSynopsisFile \py@ModSynopsisFileIsOpenfalse \fi } \newcommand{\py@openModSynopsisFile}{ \ifpy@ModSynopsisFileIsOpen\else \openout\py@ModSynopsisFile=\py@ModSynopsisFilename \py@ModSynopsisFileIsOpentrue \fi } \newcommand{\py@ProcessModSynopsis}{ \ifpy@HaveModSynopsis \py@writeModSynopsisFile{\modulesynopsis% {\py@thismodulekey}{\py@thismodule}% {\py@thismoduletype}{\py@modulesynopsis}}% \py@HaveModSynopsisfalse \fi \renewcommand{\py@modulesynopsis}{\py@defsynopsis} } \AtEndDocument{\py@ProcessModSynopsis\py@closeModSynopsisFile} \long\def\py@writeModPlatformFile#1{% \protected@write\py@ModPlatformFile% {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble}% {\string#1}% } \newcommand{\localmoduletable}{ \IfFileExists{\py@ModSynopsisFilename}{ \begin{synopsistable} \input{\py@ModSynopsisFilename} \end{synopsistable} }{} } \ifpdf \newcommand{\py@ModSynopsisSummary}[4]{% \py@linkToName{label-module-#1}{\bfcode{#2}} & #4\\ } \else \newcommand{\py@ModSynopsisSummary}[4]{\bfcode{#2} & #4\\} \fi \newenvironment{synopsistable}{ % key, name, type, synopsis \let\modulesynopsis=\py@ModSynopsisSummary \begin{tabular}{ll} }{ \end{tabular} } % % -------------------------------------------------------------------------- \newcommand{\py@reset}{ \py@usingsubitemfalse \py@ProcessModSynopsis \renewcommand{\py@thisclass}{} \renewcommand{\py@thismodule}{} \renewcommand{\py@thismodulekey}{} \renewcommand{\py@thismoduletype}{} } % Augment the sectioning commands used to get our own font family in place, % and reset some internal data items: \renewcommand{\section}{\py@reset% \@startsection{section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% {\reset@font\Large\py@HeaderFamily}} \renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\reset@font\large\py@HeaderFamily}} \renewcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\reset@font\normalsize\py@HeaderFamily}} \renewcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus1ex \@minus.2ex}% {-1em}% {\reset@font\normalsize\py@HeaderFamily}} \renewcommand{\subparagraph}{\@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\reset@font\normalsize\py@HeaderFamily}} % Now for a lot of semantically-loaded environments that do a ton of magical % things to get the right formatting and index entries for the stuff in % Python modules and C API. % {fulllineitems} is used in one place in libregex.tex, but is really for % internal use in this file. % \newcommand{\py@itemnewline}[1]{% \@tempdima\linewidth% \advance\@tempdima \leftmargin\makebox[\@tempdima][l]{#1}% } \newenvironment{fulllineitems}{ \begin{list}{}{\labelwidth \leftmargin \labelsep 0pt \rightmargin 0pt \topsep -\parskip \partopsep \parskip \itemsep -\parsep \let\makelabel=\py@itemnewline} }{\end{list}} % \optional is mostly for use in the arguments parameters to the various % {*desc} environments defined below, but may be used elsewhere. Known to % be used in the debugger chapter. % % Typical usage: % % \begin{funcdesc}{myfunc}{reqparm\optional{, optparm}} % ^^^ ^^^ % No space here No space here % % When a function has multiple optional parameters, \optional should be % nested, not chained. This is right: % % \begin{funcdesc}{myfunc}{\optional{parm1\optional{, parm2}}} % \let\py@badkey=\@undefined \newcommand{\optional}[1]{% {\textnormal{\Large[}}{#1}\hspace{0.5mm}{\textnormal{\Large]}}} % This can be used when a function or method accepts an varying number % of arguments, such as by using the *args syntax in the parameter list. \newcommand{\py@moreargs}{...} % This can be used when you don't want to document the parameters to a % function or method, but simply state that it's an alias for % something else. \newcommand{\py@unspecified}{...} \newlength{\py@argswidth} \newcommand{\py@sigparams}[1]{% \parbox[t]{\py@argswidth}{\py@varvars{#1}\code{)}}} \newcommand{\py@sigline}[2]{% \settowidth{\py@argswidth}{#1\code{(}}% \addtolength{\py@argswidth}{-2\py@argswidth}% \addtolength{\py@argswidth}{\textwidth}% \item[#1\code{(}\py@sigparams{#2}]} % C functions ------------------------------------------------------------ % \begin{cfuncdesc}[refcount]{type}{name}{arglist} % Note that the [refcount] slot should only be filled in by % tools/anno-api.py; it pulls the value from the refcounts database. \newcommand{\cfuncline}[3]{ \py@sigline{\code{#1 \bfcode{#2}}}{#3}% \index{#2@{\py@idxcode{#2()}}} } \newenvironment{cfuncdesc}[4][\py@badkey]{ \begin{fulllineitems} \cfuncline{#2}{#3}{#4} \ifx#1\@undefined\else% \emph{Return value: \textbf{#1}.}\\ \fi }{\end{fulllineitems}} % C variables ------------------------------------------------------------ % \begin{cvardesc}{type}{name} \newenvironment{cvardesc}[2]{ \begin{fulllineitems} \item[\code{#1 \bfcode{#2}}\index{#2@{\py@idxcode{#2}}}] }{\end{fulllineitems}} % C data types ----------------------------------------------------------- % \begin{ctypedesc}[index name]{typedef name} \newenvironment{ctypedesc}[2][\py@badkey]{ \begin{fulllineitems} \item[\bfcode{#2}% \ifx#1\@undefined% \index{#2@{\py@idxcode{#2}} (C type)} \else% \index{#2@{\py@idxcode{#1}} (C type)} \fi] }{\end{fulllineitems}} % C type fields ---------------------------------------------------------- % \begin{cmemberdesc}{container type}{ctype}{membername} \newcommand{\cmemberline}[3]{ \item[\code{#2 \bfcode{#3}}] \index{#3@{\py@idxcode{#3}} (#1 member)} } \newenvironment{cmemberdesc}[3]{ \begin{fulllineitems} \cmemberline{#1}{#2}{#3} }{\end{fulllineitems}} % Funky macros ----------------------------------------------------------- % \begin{csimplemacrodesc}{name} % -- "simple" because it has no args; NOT for constant definitions! \newenvironment{csimplemacrodesc}[1]{ \begin{fulllineitems} \item[\bfcode{#1}\index{#1@{\py@idxcode{#1}} (macro)}] }{\end{fulllineitems}} % simple functions (not methods) ----------------------------------------- % \begin{funcdesc}{name}{args} \newcommand{\funcline}[2]{% \funclineni{#1}{#2}% \index{#1@{\py@idxcode{#1()}} (in module \py@thismodule)}} \newenvironment{funcdesc}[2]{ \begin{fulllineitems} \funcline{#1}{#2} }{\end{fulllineitems}} % similar to {funcdesc}, but doesn't add to the index \newcommand{\funclineni}[2]{% \py@sigline{\bfcode{#1}}{#2}} \newenvironment{funcdescni}[2]{ \begin{fulllineitems} \funclineni{#1}{#2} }{\end{fulllineitems}} % classes ---------------------------------------------------------------- % \begin{classdesc}{name}{constructor args} \newenvironment{classdesc}[2]{ % Using \renewcommand doesn't work for this, for unknown reasons: \global\def\py@thisclass{#1} \begin{fulllineitems} \py@sigline{\strong{class }\bfcode{#1}}{#2}% \index{#1@{\py@idxcode{#1}} (class in \py@thismodule)} }{\end{fulllineitems}} % \begin{classdesc*}{name} \newenvironment{classdesc*}[1]{ % Using \renewcommand doesn't work for this, for unknown reasons: \global\def\py@thisclass{#1} \begin{fulllineitems} \item[\strong{class }\code{\bfcode{#1}}% \index{#1@{\py@idxcode{#1}} (class in \py@thismodule)}] }{\end{fulllineitems}} % \begin{excclassdesc}{name}{constructor args} % but indexes as an exception \newenvironment{excclassdesc}[2]{ % Using \renewcommand doesn't work for this, for unknown reasons: \global\def\py@thisclass{#1} \begin{fulllineitems} \py@sigline{\strong{exception }\bfcode{#1}}{#2}% \index{#1@{\py@idxcode{#1}} (exception in \py@thismodule)} }{\end{fulllineitems}} % There is no corresponding {excclassdesc*} environment. To describe % a class exception without parameters, use the {excdesc} environment. \let\py@classbadkey=\@undefined % object method ---------------------------------------------------------- % \begin{methoddesc}[classname]{methodname}{args} \newcommand{\methodline}[3][\@undefined]{ \methodlineni{#2}{#3} \ifx#1\@undefined \index{#2@{\py@idxcode{#2()}} (\py@thisclass\ method)} \else \index{#2@{\py@idxcode{#2()}} (#1 method)} \fi } \newenvironment{methoddesc}[3][\@undefined]{ \begin{fulllineitems} \ifx#1\@undefined \methodline{#2}{#3} \else \def\py@thisclass{#1} \methodline{#2}{#3} \fi }{\end{fulllineitems}} % similar to {methoddesc}, but doesn't add to the index % (never actually uses the optional argument) \newcommand{\methodlineni}[3][\py@classbadkey]{% \py@sigline{\bfcode{#2}}{#3}} \newenvironment{methoddescni}[3][\py@classbadkey]{ \begin{fulllineitems} \methodlineni{#2}{#3} }{\end{fulllineitems}} % object data attribute -------------------------------------------------- % \begin{memberdesc}[classname]{membername} \newcommand{\memberline}[2][\py@classbadkey]{% \ifx#1\@undefined \memberlineni{#2} \index{#2@{\py@idxcode{#2}} (\py@thisclass\ attribute)} \else \memberlineni{#2} \index{#2@{\py@idxcode{#2}} (#1 attribute)} \fi } \newenvironment{memberdesc}[2][\py@classbadkey]{ \begin{fulllineitems} \ifx#1\@undefined \memberline{#2} \else \def\py@thisclass{#1} \memberline{#2} \fi }{\end{fulllineitems}} % similar to {memberdesc}, but doesn't add to the index % (never actually uses the optional argument) \newcommand{\memberlineni}[2][\py@classbadkey]{\item[\bfcode{#2}]} \newenvironment{memberdescni}[2][\py@classbadkey]{ \begin{fulllineitems} \memberlineni{#2} }{\end{fulllineitems}} % For exceptions: -------------------------------------------------------- % \begin{excdesc}{name} % -- for constructor information, use excclassdesc instead \newenvironment{excdesc}[1]{ \begin{fulllineitems} \item[\strong{exception }\bfcode{#1}% \index{#1@{\py@idxcode{#1}} (exception in \py@thismodule)}] }{\end{fulllineitems}} % Module data or constants: ---------------------------------------------- % \begin{datadesc}{name} \newcommand{\dataline}[1]{% \datalineni{#1}\index{#1@{\py@idxcode{#1}} (data in \py@thismodule)}} \newenvironment{datadesc}[1]{ \begin{fulllineitems} \dataline{#1} }{\end{fulllineitems}} % similar to {datadesc}, but doesn't add to the index \newcommand{\datalineni}[1]{\item[\bfcode{#1}]\nopagebreak} \newenvironment{datadescni}[1]{ \begin{fulllineitems} \datalineni{#1} }{\end{fulllineitems}} % bytecode instruction --------------------------------------------------- % \begin{opcodedesc}{name}{var} % -- {var} may be {} \newenvironment{opcodedesc}[2]{ \begin{fulllineitems} \item[\bfcode{#1}\quad\var{#2}] }{\end{fulllineitems}} \newcommand{\nodename}[1]{\label{#1}} % For these commands, use \command{} to get the typography right, not % {\command}. This works better with the texinfo translation. \newcommand{\ABC}{{\sc abc}} \newcommand{\UNIX}{{\sc Unix}} \newcommand{\POSIX}{POSIX} \newcommand{\ASCII}{{\sc ascii}} \newcommand{\Cpp}{C\protect\raisebox{.18ex}{++}} \newcommand{\C}{C} \newcommand{\EOF}{{\sc eof}} \newcommand{\NULL}{\constant{NULL}} \newcommand{\infinity}{\ensuremath{\infty}} \newcommand{\plusminus}{\ensuremath{\pm}} % \guilabel{Start} \newcommand{\guilabel}[1]{\textsf{#1}} % \menuselection{Start \sub Programs \sub Python} \newcommand{\menuselection}[1]{\guilabel{{\def\sub{ \ensuremath{>} }#1}}} % Also for consistency: spell Python "Python", not "python"! % code is the most difficult one... \newcommand{\code}[1]{\textrm{\@vobeyspaces\@noligs\def\{{\char`\{}\def\}{\char`\}}\def\~{\char`\~}\def\^{\char`\^}\def\e{\char`\\}\def\${\char`\$}\def\#{\char`\#}\def\&{\char`\&}\def\%{\char`\%}% \texttt{#1}}} \newcommand{\bfcode}[1]{\code{\bfseries#1}} % bold-faced code font \newcommand{\csimplemacro}[1]{\code{#1}} \newcommand{\kbd}[1]{\code{#1}} \newcommand{\samp}[1]{`\code{#1}'} \newcommand{\var}[1]{% \ifmmode% \hbox{\py@defaultsize\textrm{\textit{#1\/}}}% \else% \py@defaultsize\textrm{\textit{#1\/}}% \fi% } \renewcommand{\emph}[1]{{\em #1}} \newcommand{\dfn}[1]{\emph{#1}} \newcommand{\strong}[1]{{\bf #1}} % let's experiment with a new font: \newcommand{\file}[1]{`\filenq{#1}'} \newcommand{\filenq}[1]{{\py@smallsize\textsf{\let\e=\textbackslash#1}}} % Use this def/redef approach for \url{} since hyperref defined this already, % but only if we actually used hyperref: \ifpdf \newcommand{\url}[1]{{% \py@pdfstartlink attr{/Border [0 0 0]} user{/S /URI /URI (#1)}% \py@LinkColor% color of the link text \py@smallsize\sf #1% \py@NormalColor% Turn it back off; these are declarative \pdfendlink}% and don't appear bound to the current }% formatting "box". \else \newcommand{\url}[1]{\mbox{\py@smallsize\textsf{#1}}} \fi \newcommand{\email}[1]{{\py@smallsize\textsf{#1}}} \newcommand{\newsgroup}[1]{{\py@smallsize\textsf{#1}}} \newcommand{\py@varvars}[1]{{% {\let\unspecified=\py@unspecified% \let\moreargs=\py@moreargs% \var{#1}}}} % I'd really like to get rid of this! \newif\iftexi\texifalse % This is used to get l2h to put the copyright and abstract on % a separate HTML page. \newif\ifhtml\htmlfalse % These should be used for all references to identifiers which are % used to refer to instances of specific language constructs. See the % names for specific semantic assignments. % % For now, don't do anything really fancy with them; just use them as % logical markup. This might change in the future. % \newcommand{\module}[1]{\texttt{#1}} \newcommand{\keyword}[1]{\texttt{#1}} \newcommand{\exception}[1]{\texttt{#1}} \newcommand{\class}[1]{\texttt{#1}} \newcommand{\function}[1]{\texttt{#1}} \newcommand{\member}[1]{\texttt{#1}} \newcommand{\method}[1]{\texttt{#1}} \newcommand{\pytype}[1]{#1} % built-in Python type \newcommand{\cfunction}[1]{\texttt{#1}} \newcommand{\ctype}[1]{\texttt{#1}} % C struct or typedef name \newcommand{\cdata}[1]{\texttt{#1}} % C variable, typically global \newcommand{\mailheader}[1]{{\py@smallsize\textsf{#1:}}} \newcommand{\mimetype}[1]{{\py@smallsize\textsf{#1}}} % The \! is a "negative thin space" in math mode. \newcommand{\regexp}[1]{% {\tiny$^{^\lceil}\!\!$% {\py@defaultsize\code{#1}}% $\!\rfloor\!$% }} \newcommand{\envvar}[1]{% #1% \index{#1}% \index{environment variables!{#1}}% } \newcommand{\makevar}[1]{#1} % variable in a Makefile \newcommand{\character}[1]{\samp{#1}} % constants defined in Python modules or C headers, not language constants: \newcommand{\constant}[1]{\code{#1}} % manifest constant, not syntactic \newcommand{\manpage}[2]{{\emph{#1}(#2)}} \newcommand{\pep}[1]{PEP #1\index{Python Enhancement Proposals!PEP #1}} \newcommand{\rfc}[1]{RFC #1\index{RFC!RFC #1}} \newcommand{\program}[1]{\strong{#1}} \newcommand{\programopt}[1]{\strong{#1}} % Note that \longprogramopt provides the '--'! \newcommand{\longprogramopt}[1]{\strong{-{}-#1}} % \ulink{link text}{URL} \ifpdf \newcommand{\ulink}[2]{{% % For PDF, we *should* only generate a link when the URL is absolute. \py@pdfstartlink attr{/Border [0 0 0]} user{/S /URI /URI (#2)}% \py@LinkColor% color of the link text #1% \py@NormalColor% Turn it back off; these are declarative \pdfendlink}% and don't appear bound to the current }% formatting "box". \else \newcommand{\ulink}[2]{#1} \fi % cited titles: \citetitle{Title of Work} % online: \citetitle[url-to-resource]{Title of Work} \ifpdf \newcommand{\citetitle}[2][\py@modulebadkey]{% \ifx\py@modulebadkey#1\emph{#2}\else\ulink{\emph{#2}}{#1}\fi% } \else \newcommand{\citetitle}[2][URL]{\emph{#2}} \fi % This version is being checked in for the historical record; it shows % how I've managed to get some aspects of this to work. It will not % be used in practice, so a subsequent revision will change things % again. This version has problems, but shows how to do something % that proved more tedious than I'd expected, so I don't want to lose % the example completely. % \newcommand{\grammartoken}[1]{\texttt{#1}} \newenvironment{productionlist}[1][\py@badkey]{ \def\optional##1{{\Large[}##1{\Large]}} \def\production##1##2{\code{##1}&::=&\code{##2}\\} \def\productioncont##1{& &\code{##1}\\} \def\token##1{##1} \let\grammartoken=\token \parindent=2em \indent \begin{tabular}{lcl} }{% \end{tabular} } \newlength{\py@noticelength} \newcommand{\py@heavybox}{ \setlength{\fboxrule}{2pt} \setlength{\fboxsep}{7pt} \setlength{\py@noticelength}{\linewidth} \addtolength{\py@noticelength}{-2\fboxsep} \addtolength{\py@noticelength}{-2\fboxrule} \setlength{\shadowsize}{3pt} \Sbox \minipage{\py@noticelength} } \newcommand{\py@endheavybox}{ \endminipage \endSbox \fbox{\TheSbox} } % a 'note' is as plain as it gets: \newcommand{\py@noticelabel@note}{Note:} \newcommand{\py@noticestart@note}{} \newcommand{\py@noticeend@note}{} % a 'warning' gets more visible distinction: \newcommand{\py@noticelabel@warning}{Warning:} \newcommand{\py@noticestart@warning}{\py@heavybox} \newcommand{\py@noticeend@warning}{\py@endheavybox} \newenvironment{notice}[1][note]{ \def\py@noticetype{#1} \csname py@noticestart@#1\endcsname \par\strong{\csname py@noticelabel@#1\endcsname} }{\csname py@noticeend@\py@noticetype\endcsname} \newcommand{\note}[1]{\strong{\py@noticelabel@note} #1} \newcommand{\warning}[1]{\strong{\py@noticelabel@warning} #1} % Deprecation stuff. % Should be extended to allow an index / list of deprecated stuff. But % there's a lot of stuff that needs to be done to make that automatable. % % First parameter is the release number that deprecates the feature, the % second is the action the should be taken by users of the feature. % % Example: % \deprecated{1.5.1}{Use \method{frobnicate()} instead.} % \newcommand{\deprecated}[2]{% \strong{Deprecated since release #1.} #2\par} % New stuff. % This should be used to mark things which have been added to the % development tree but that aren't in the release, but are documented. % This allows release of documentation that already includes updated % descriptions. Place at end of descriptor environment. % % Example: % \versionadded{1.5.2} % \versionchanged[short explanation]{2.0} % \newcommand{\versionadded}[2][\py@badkey]{% \ifx#1\@undefined% { New in version #2. }% \else% { New in version #2:\ #1. }% \fi% } \newcommand{\versionchanged}[2][\py@badkey]{% \ifx#1\@undefined% { Changed in version #2. }% \else% { Changed in version #2:\ #1. }% \fi% } % Tables. % \newenvironment{tableii}[4]{% \begin{center}% \def\lineii##1##2{\csname#2\endcsname{##1}&##2\\}% \begin{tabular}{#1}\strong{#3}&\strong{#4} \\* \hline% }{% \end{tabular}% \end{center}% } \newenvironment{longtableii}[4]{% \begin{center}% \def\lineii##1##2{\csname#2\endcsname{##1}&##2\\}% \begin{longtable}[c]{#1}\strong{#3}&\strong{#4} \\* \hline\endhead% }{% \end{longtable}% \end{center}% } \newenvironment{tableiii}[5]{% \begin{center}% \def\lineiii##1##2##3{\csname#2\endcsname{##1}&##2&##3\\}% \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5} \\% \hline% }{% \end{tabular}% \end{center}% } \newenvironment{longtableiii}[5]{% \begin{center}% \def\lineiii##1##2##3{\csname#2\endcsname{##1}&##2&##3\\}% \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5} \\% \hline\endhead% }{% \end{longtable}% \end{center}% } \newenvironment{tableiv}[6]{% \begin{center}% \def\lineiv##1##2##3##4{\csname#2\endcsname{##1}&##2&##3&##4\\}% \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6} \\% \hline% }{% \end{tabular}% \end{center}% } \newenvironment{longtableiv}[6]{% \begin{center}% \def\lineiv##1##2##3##4{\csname#2\endcsname{##1}&##2&##3&##4\\}% \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}% \\% \hline\endhead% }{% \end{longtable}% \end{center}% } \newenvironment{tablev}[7]{% \begin{center}% \def\linev##1##2##3##4##5{\csname#2\endcsname{##1}&##2&##3&##4&##5\\}% \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}&\strong{#7} \\% \hline% }{% \end{tabular}% \end{center}% } \newenvironment{longtablev}[7]{% \begin{center}% \def\linev##1##2##3##4##5{\csname#2\endcsname{##1}&##2&##3&##4&##5\\}% \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}&\strong{#7}% \\% \hline\endhead% }{% \end{longtable}% \end{center}% } % XXX Don't think we can use this yet, though it cleans up some % tedious markup. There's no equivalent for the HTML transform yet, % and that needs to exist. I don't know how to write it. % % This should really have something that makes it easier to bind a % table's ``Notes'' column and an associated tablenotes environment, % and generates the right magic for getting the numbers right in the % table. % % So this is quite incomplete. % \newcounter{py@tablenotescounter} \newenvironment{tablenotes}{% \noindent Notes: \par \setcounter{py@tablenotescounter}{0} \begin{list}{(\arabic{py@tablenotescounter})}% {\usecounter{py@tablenotescounter}} }{\end{list}} % Cross-referencing (AMK, new impl. FLD) % Sample usage: % \begin{seealso} % \seemodule{rand}{Uniform random number generator.}; % Module xref % \seetext{\emph{Encyclopedia Britannica}}. % Ref to a book % % % A funky case: module name contains '_'; have to supply an optional key % \seemodule[copyreg]{copy_reg}{Interface constructor registration for % \module{pickle}.} % \end{seealso} % % Note that the last parameter for \seemodule and \seetext should be complete % sentences and be terminated with the proper punctuation. \ifpdf \newcommand{\py@seemodule}[3][\py@modulebadkey]{% \par% \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi% \begin{fulllineitems} \item[\py@linkToName{label-module-\py@modulekey}{Module \module{#2}} (section \ref{module-\py@modulekey}):] #3 \end{fulllineitems} } \else \newcommand{\py@seemodule}[3][\py@modulebadkey]{% \par% \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi% \begin{fulllineitems} \item[Module \module{#2} (section \ref{module-\py@modulekey}):] #3 \end{fulllineitems} } \fi % \seelink{url}{link text}{why it's interesting} \newcommand{\py@seelink}[3]{% \par \begin{fulllineitems} \item[\ulink{#2}{#1}] #3 \end{fulllineitems} } % \seetitle[url]{title}{why it's interesting} \newcommand{\py@seetitle}[3][\py@modulebadkey]{% \par \begin{fulllineitems} \item[\citetitle{#2}] \ifx\py@modulebadkey#1\else \item[{\small{(\url{#1})}}] \fi #3 \end{fulllineitems} } % \seepep{number}{title}{why it's interesting} \newcommand{\py@seepep}[3]{% \par% \begin{fulllineitems} \item[\pep{#1}, ``\emph{#2}''] #3 \end{fulllineitems} } % \seerfc{number}{title}{why it's interesting} \newcommand{\py@seerfc}[3]{% \par% \begin{fulllineitems} \item[\rfc{#1}, ``\emph{#2}''] #3 \end{fulllineitems} } % \seeurl{url}{why it's interesting} \newcommand{\py@seeurl}[2]{% \par% \begin{fulllineitems} \item[\url{#1}] #2 \end{fulllineitems} } \newenvironment{seealso*}{ \par \def\seetext##1{\par{##1}} \let\seemodule=\py@seemodule \let\seepep=\py@seepep \let\seerfc=\py@seerfc \let\seetitle=\py@seetitle \let\seeurl=\py@seeurl \let\seelink=\py@seelink }{\par} \newenvironment{seealso}{ \par \strong{See Also:} \par \def\seetext##1{\par{##1}} \let\seemodule=\py@seemodule \let\seepep=\py@seepep \let\seerfc=\py@seerfc \let\seetitle=\py@seetitle \let\seeurl=\py@seeurl \let\seelink=\py@seelink }{\par} % Allow the Python release number to be specified independently of the % \date{}. This allows the date to reflect the document's date and % release to specify the Python release that is documented. % \newcommand{\py@release}{} \newcommand{\version}{} \newcommand{\shortversion}{} \newcommand{\releaseinfo}{} \newcommand{\releasename}{Release} \newcommand{\release}[1]{% \renewcommand{\py@release}{\releasename\space\version}% \renewcommand{\version}{#1}} \newcommand{\setshortversion}[1]{% \renewcommand{\shortversion}{#1}} \newcommand{\setreleaseinfo}[1]{% \renewcommand{\releaseinfo}{#1}} % Allow specification of the author's address separately from the % author's name. This can be used to format them differently, which % is a good thing. % \newcommand{\py@authoraddress}{} \newcommand{\authoraddress}[1]{\renewcommand{\py@authoraddress}{#1}} \let\developersaddress=\authoraddress \let\developer=\author \let\developers=\author % This sets up the fancy chapter headings that make the documents look % at least a little better than the usual LaTeX output. % \@ifundefined{ChTitleVar}{}{ \ChNameVar{\raggedleft\normalsize\py@HeaderFamily} \ChNumVar{\raggedleft \bfseries\Large\py@HeaderFamily} \ChTitleVar{\raggedleft \rm\Huge\py@HeaderFamily} % This creates chapter heads without the leading \vspace*{}: \def\@makechapterhead#1{% {\parindent \z@ \raggedright \normalfont \ifnum \c@secnumdepth >\m@ne \DOCH \fi \interlinepenalty\@M \DOTI{#1} } } } % Definition lists; requested by AMK for HOWTO documents. Probably useful % elsewhere as well, so keep in in the general style support. % \newenvironment{definitions}{% \begin{description}% \def\term##1{\item[##1]\mbox{}\\*[0mm]} }{% \end{description}% } % Tell TeX about pathological hyphenation cases: \hyphenation{Base-HTTP-Re-quest-Hand-ler} ./Doc/Deprecated/FileFormat.txt0000664000175000017500000000037412176660653016201 0ustar vborosvboros Input File Format for ESyS-Particle v0.01, 10.06.2003 ------------------- The input is split into 2 Files, one for geometry (.geo), one for material properties (.prp). Rationale: Makes it possible to exchange the properties independently from the ./Doc/Deprecated/Refman/0000775000175000017500000000000012176660653014614 5ustar vborosvboros./Doc/Deprecated/Refman/refman.tex0000664000175000017500000010155612176660653016616 0ustar vborosvboros%% ESyS-Particle Reference Manual \documentclass{report} \begin{document} \title{ESyS-Particle Scripting Reference Manual} \author{Steffen Abe} \date{\today} \maketitle \tableofcontents \chapter{Introduction} \chapter{Functions} \section{Initialization and Setup} \subsection{makeLattice} \textsf{makeLattice(ParticleType, $\mathsf{dt}$, nrange, $\mathsf{\alpha}$ )} \par \medskip Set the basic parameters of the Model. The parameters are: \begin{itemize} \item \textbf{ParticleType} : The type of particle used in the model. Currently supported are : \begin{itemize} \item ``Basic'' a spherical, non-rotational particle with 3 (translational) degrees of freedom \item \textit{planned} ``Rotational'' a spherical particle with 6 (translational + rotational) degrees of freedom. \end{itemize} \item $\mathbf{dt}$ : The time step used in the time integration scheme. \item \textbf{nrange} and $\mathbf{\alpha}$ : The parameters determining the search range of the neighbor table. nrange is the cut-off for individual particle pairs to be added to a dynamic interaction group. The neighbour table is rebuilt if any particle moves further than $\alpha / 2 $ since the last rebuild. \end{itemize} %% --- setProcessDims ---- \subsection{setProcessDims} \textsf{setProcessDim(nx,ny,nz)} \par \medskip Set the process dimensions. %% --- setSpatialDomain --- \subsection{setSpatialDomain} \textsf{setSpatialDomain($x_{min}$,$y_{min}$,$z_{min}$,$x_{max}$,$y_{max}$,$z_{max}$)} \par \medskip %% --- readGeometryFile ---- \subsection{readGeometryFile} \textsf{readGeometryFile(FileName)} \par \medskip Read in a geometry description file and initialize the model accordingly. The parameter is: \begin{itemize} \item \textbf{FileName} The name of the geometry file. It has to be either relative to the directory from which the program is run or an absolute pathname. \end{itemize} For a description the format of the geometry file see \textit{Doc/FileFormat.tex} in the source distribution. \subsection{readMeshFile} \label{sec:readMeshFile} \textsf{resdMeshFile(MeshName,FileName)} \par \medskip Read a mesh file in Finley format and setup a triangle mesh. \begin{itemize} \item \textbf{MeshName} The name under which the mesh made accessible. \item \textbf{FileName} The name of the mesh file. It has to be either relative to the directory from which the program is run or an absolute pathname. \end{itemize} \subsection{tagParticleNearestTo} \textsf{tagParticleNearestTo(tag,mask,x,y,z)} \par \medskip Tag the particle closest to a given position. \begin{itemize} \item \textbf{tag} \item \textbf{mask} \item \textbf{x,y,z} \end{itemize} \section{Interactions} \subsection{AddPairInteractions} \textsf{AddPairInteractions(InteractionType, InteractionName, InteractionParameters)} \par \medskip Add a group of interactions between pairs of particles to the model. The InteractionType determines the number and format of the InteractionParameters. The parameters are: \begin{itemize} \item \textbf{InteractionType} : The type of interaction. \par \begin{tabular}{|l|l|} \hline Type of interaction & Supported Particle Type \\ \hline \hline Elastic & Basic \\ \hline Friction & Basic \\ \hline FractalFriction & Basic \\ \hline AdhesiveFriction & Basic \\ \hline \end{tabular} \item \textbf{InteractionName} \item \textbf{InteractionParameters} The parameters for the interaction. The number and format of the parameters depends on the type of interaction. \begin{itemize} \item Elastic : k \begin{itemize} \item k : The spring constant for the elastic interaction \end{itemize} \item Friction : k, $\mu$, $k_s$,dt \\ Constant Coulomb friction. Implementation follow standard Cundall \& Strack DEM approach \begin{itemize} \item k - elastic spring constant \item $\mu$ - coefficient of friction \item $k_s$ - shear stiffness (Cundall) \item dt - time step \end{itemize} \item FractalFriction : k, $\mu$, $k_s$, dt \\ \textit{there are some problems with fractal friction currently (hardcoded filename)} \begin{itemize} \item k - elastic spring constant \item $\mu$ \item $k_s$ \item dt \end{itemize} \item AdhesiveFriction : k, $\mu$, $k_s$, dt, $r_{cut}$ \\ Coulomb friction with some adhesion added in. For $r_{ij} < r_0$ it is identical to normal friction, for $r_0 \le r_{ij} \le r_{cut}$ there is no friction but an attractive elastic force. \begin{itemize} \item k - elastic spring constant \item $\mu$ - coefficient of friction \item $k_s$ - shear stiffness (Cundall) \item dt - time step \item $r_{cut}$ - cutoff distance for adhesive elastic interactions \end{itemize} \end{itemize} \end{itemize} \subsection{AddBondedInteractions} \textsf{AddBondedInteractions(Tag, InteractionName, $k$, $r_{break}$)} \par \medskip Generate a group of bonded interactions from the interaction list read from the geometry file. Only interactions with a given tag will be added to the group. \begin{itemize} \item \textbf{Tag} : The tag of the interactions which should be in this group \item \textbf{InteractionName} : The name of the generated interaction group \item \textbf{$k$} : the elastic spring constant \item \textbf{$r_{break}$} : the relative extension at which a bond breaks \end{itemize} \subsection{AddRotPairInteractions} \textsf{AddRotPairInteractions(InteractionType, InteractionName, InteractionParameters)} \par \medskip Add a group of interactions between pairs of particles to the model. The InteractionType determines the number and format of the InteractionParameters. The parameters are: \begin{itemize} \item \textbf{InteractionType} : The type of interaction. \par \begin{tabular}{|l|l|} \hline Type of interaction & Supported Particle Type \\ \hline \hline RotElastic & Rot \\ \hline RotFriction & Rot \\ \hline \end{tabular} \item \textbf{InteractionName} Name of the interaction. \item \textbf{InteractionParameters} The parameters for the interaction. The number and format of the parameters depends on the type of interaction. \begin{itemize} \item Elastic : k \begin{itemize} \item k : The spring constant for the elastic interaction \end{itemize} \item RotFriction : $k$, $\mu_s$, $\mu_d$, $k_s$, $\delta t$ \\ Constant Coulomb friction. Implementation follow standard Cundall \& Strack DEM approach \begin{itemize} \item $k$ - elastic spring constant \item $\mu_s$ - static coefficient of friction \item $\mu_d$ - dynamic coefficient of friction \item $k_s$ - shear stiffness (Cundall) \item $\delta t$ - time step \end{itemize} \end{itemize} \end{itemize} \subsection{AddRotBondedInteractions} \label{sec::AddRotBondedInteractions} \newcommand{\brkForce}[1]{f^{\rm max}_{#1}} \newcommand{\brkTorque}[1]{t^{\rm max}_{#1}} \textsf{AddRotBondedInteractions(Tag, InteractionName, $k_r$, $k_s$, $k_t$, $k_b$, $\brkForce{r}$, $\brkForce{s}$, $\brkForce{t}$, $\brkForce{b}$)} Generate a group of rotational bonded interactions from the interaction list read from the geometry file. Only interactions with a given tag will be added to the group. \begin{itemize} \item{\textbf Tag} \item{\textbf InterationName} \item{$k_r$} : radial (normal) spring constant, \item{$k_s$} : shearing (tangent) spring constant, \item{$k_t$} : torsional spring constant, \item{$k_b$} : bending spring constant, \item{$\brkForce{r}$} : maximum normal force for bond breakage, \item{$\brkForce{s}$} : maximum shear force for bond breakage, \item{$\brkTorque{t}$} : maximum torsion torque for bond breakage, \item{$\brkTorque{b}$} : maximum bending torque for bond breakage. \end{itemize} \subsection{AddExclusion} \label{sec::AddExclusion} \textsf{AddExclusion(InteractionName1, InteractionName2)} \par \medskip Prevent particle pair which are in one interaction group to be also in another interaction group. An common example would be that two particles which are linked together, i.e. the pair is in a bonded interaction group, can not also be in elastic or frictional interaction. The parameters are: \begin{itemize} \item \textbf{InteractionName1} : The name of the interaction group the pair is excluded from. \item \textbf{InteractionName2} : The name of the interaction group in which the pair has to be to be excluded from InteractionGroup1 \end{itemize} \subsection{AddDamping} \textsf{AddDamping(InteractionName, $\nu$, $dt$, $N_{max}$)} \par \medskip %%=== addTriMeshInteraction === \subsection{addTriMeshInteraction} \textsf{addTriMeshInteactions(InteractionType,InteractionName,MeshName,Parameters)} \par\medskip Add a group of interactions between a triangle mesh and the particles. The mesh needs to be read in with a call to \textbf{readMeshFile}(see section \ref{sec:readMeshFile}) before. \begin{itemize} \item \textbf{InteractionType} : The type of interaction. \par \begin{tabular}{|l|l|} \hline Type of interaction & Supported Particle Type \\ \hline \hline Elastic & Basic \\ \hline \end{tabular} \item \textbf{InteractionName} The name of the new interaction group \item \textbf{MeshName} The name of the mesh (see \ref{sec:readMeshFile}) with wh ich the particles interact \item \textbf{InteractionParameters} The parameters for the interaction. The number and format of the parameters depends on the type of interaction. \begin{itemize} \item Elastic : k \begin{itemize} \item k : The spring constant for the elastic interaction \end{itemize} %% Elastic \end{itemize} %% parameters \end{itemize} %%=== addBondedTriMeshInteractions === \subsection{addBondedTriMeshInteractions} \textsf{addBondedTriMeshInteractions(InteractionName,MeshName,k,$r_{break}$,BuildType,BuildParams)} \par\medskip Add a group of bonded interactions between a triangle mesh and the particles. The mesh needs to be read in with a call to \textbf{readMeshFile}(see section \ref{sec:readMeshFile}) before. \begin{itemize} \item BuildByTag : tag,mask \item BuildByGap : gap \end{itemize} %%=== SetParticleNonDynamic === \subsection{SetParticleNonDynamic} \textsf{SetParticleNonDynamic(Tag)} \par \medskip Make all particles with the given tag non-dynamic, i.e. interactions involving those particles will still generate forces, but the particles will not move in response to this forces. This is achieved by setting $1/mass=0$, i.e. have infinite mass in the calculation of particle acceleration but also have $mass=0$ for the calculation of kinetic energy. The parameter is: \begin{itemize} \item \textbf{Tag} : The tag which the particles need to have. \end{itemize} %%=== SetParticleNonRot === \subsection{SetParticleNonRot} \textsf{SetParticleNonRot(Tag)} \par \medskip Make all particles with the given tag non-rotational, i.e. interactions involving those particles will still generate forces, but the particles will not rotate in response to this forces. This is achieved by setting the inverse moment of inertia to 0; The parameter is: \begin{itemize} \item \textbf{Tag} : The tag which the particles need to have. \end{itemize} \section{Walls} ``Walls'' in the Lattice Solid Model are used to represent the boundary conditions of the models .They behave as rigid, planar objects which interact with the particles, but aren't dynamically moving in response to the resulting forces themselves. They could, in a sense be considered to be of infinite mass. \par All the walls generated by initWall and related functions, i.e. initWall (\ref{sec::initWall}), initBondedWall (\ref{sec::initBondedWall}) and initSoftBondedWall(\ref{sec::initSBWall}) will have ids assigned in order of their construction, beginning with 0, i.e. the first call generates the wall with id 0, the second call generates the wall with id 1 and so on. \subsection{initWall} \label{sec::initWall} \textsf{initWall($P_x$, $P_y$, $P_z$, $N_x$, $N_y$, $N_z$,k)} \par \medskip Add a infinite, planar, elastic wall with a defined position. The geometry of the wall is described by a point on the plane and the normal vector. Any particles which are in contact with the wall, i.e. the separation between the particle position and the plane is smaller than the particle radius interact with the wall by a repulsive linear elastic interaction, $F=k(r-r_0)\mathbf{n}$ where $F$ is the force applied to the particle, $k$ the spring constant, $r$ the distance between the plane and the particle position, $r_0$ the particle radius and $\mathbf{n}$ the normal vector of the plane. \par The parameters are: \begin{itemize} \item $\mathbf{P_x}$, $\mathbf{P_y}$, $\mathbf{P_z}$ : A point on the plane (x, y and z component). \item $\mathbf{N_x}$, $\mathbf{N_y}$, $\mathbf{N_z}$ : The normal vector (x, y and z component). \item \textbf{k} : The spring constant for the elastic interactions between the wall and the particles. \end{itemize} \subsection{initBondedWall} \label{sec::initBondedWall} Add a infinite, planar wall bonded to some particles. The geometry of the wall is described by a point on the plane and the normal vector. \textsf{initBondedWall($P_x$, $P_y$, $P_z$, $N_x$, $N_y$, $N_z$,k,Tag)} \par\medskip The parameters are: \begin{itemize} \item $\mathbf{P_x}$, $\mathbf{P_y}$, $\mathbf{P_z}$ : A point on the plane (x, y and z component). \item $\mathbf{N_x}$, $\mathbf{N_y}$, $\mathbf{N_z}$ : The normal vector (x, y and z component). \item \textbf{k} : The spring constant for the elastic interactions between the wall and the particles. \item \textbf{Tag} \end{itemize} \subsection{initViscWall} \label{sec::initViscWall} Add a infinite, planar wall exerting viscous drag to the tagged particles if moved. The geometry of the wall is described by a point on the plane and the normal vector. \textsf{initViscWall($P_x$, $P_y$, $P_z$, $N_x$, $N_y$, $N_z$,k,$\nu$,Tag)} \par\medskip The parameters are: \begin{itemize} \item $\mathbf{P_x}$, $\mathbf{P_y}$, $\mathbf{P_z}$ : A point on the plane (x, y and z component). \item $\mathbf{N_x}$, $\mathbf{N_y}$, $\mathbf{N_z}$ : The normal vector (x, y and z component). \item \textbf{k} : The spring constant for the elastic interactions between the wall and the particles. \item $\mathbf{\nu}$ \item \textbf{Tag} \end{itemize} \subsection{initSoftBondedWall} \label{sec::initSBWall} Add a infinite, planar wall bonded to some particles. The geometry of the wall is described by a point on the plane and the normal vector. The spring coefficients for the interaction between particles and the wall are dependent on the direction. \textsf{initSoftBondedWall($P_x$, $P_y$, $P_z$, $N_x$, $N_y$, $N_z$,$k_x$,$k_y$,$k_z$,Tag)} \par\medskip The parameters are: \begin{itemize} \item $\mathbf{P_x}$, $\mathbf{P_y}$, $\mathbf{P_z}$ : A point on the plane (x, y and z component). \item $\mathbf{N_x}$, $\mathbf{N_y}$, $\mathbf{N_z}$ : The normal vector (x, y and z component). \item $\mathbf{k_x}$, $\mathbf{k_y}$, $\mathbf{k_z}$ : The spring constants for the bonded elastic interactions between the wall and the particles in x-, y- and z-directions. \item \textbf{Tag} \end{itemize} \section{Moving things around and applying forces} \subsection{MoveParticleTo} \subsection{SetParticleVelocity} \textsf{SetParticleVelocity(Id,$v_x$,$v_y$,$v_z$)} \par\medskip Set the velocity of a particle to a given value. The parameters are: \begin{itemize} \item \textbf{Id} : the id of the particle \item $\mathbf{v_x}$,$mathbf{v_y}$,$mathbf{v_z}$ : the velocity \end{itemize} \subsection{moveWall} \textsf{moveWall(Id,$D_x$, $D_y$, $D_z$)} \par\medskip The parameters are: \begin{itemize} \item \textbf{Id} : \item $D_x$, $D_y$, $D_z$ : \end{itemize} \subsection{applyForceToWall} Apply a given force to a wall. The force is only applied during the current timestep, i.e. the function needs to be called within the Loading function in the script. \textit{Not implemented for SoftBonded (\ref{sec::initSBWall}) walls.} \textsf{applyForceToWall(Id,$F_x$, $F_y$, $F_z$)} \par\medskip The parameters are: \begin{itemize} \item \textbf{Id} : The Id of the wall. \item $F_x$, $F_y$, $F_z$ : The force to be applied (x, y and z component). \end{itemize} \subsection{setVelocityOfWall} \section{Saving Stuff} \subsection{Fields Overview} The fields which can be saved are distinguished by two properties: the objects they are defined on, i.e. particles or interactions and the data type of the field, i.e. scalar or vector (tensor to come). \subsection{Available Fields} \subsubsection{Fields available on Particles} \par \medskip \begin{tabular}{|l|p{3.5cm}|l|p{2.5cm}|} \hline Name & Field & Data type & Supported Particle Types \\ \hline \hline \verb{e_kin{ & kinetic energy & scalar & Basic \\ \hline \verb{displacement{ & total displacement & vector & Basic \\ \hline \verb{velocity{ & linear velocity & vector & Basic \\ \hline \verb{v_abs{ & absolute value of linear velocity & scalar & Basic \\ \hline \verb{force{ & force applied to the particle & vector & Basic \\ \hline \end{tabular} \subsubsection{Fields available on Interactions} \par \medskip \begin{tabular}{|l|p{2.6cm}|l|p{2.5cm}|c|} \hline Name & Field & Data type & Supported Interaction Types & checked\\ \hline \hline \verb{potential_energy{ & potential energy & scalar & Bonded, Friction, FractalFriction &\\ \hline \verb{slipping{ & number of frictional interactions in a dynamic state & scalar & Friction, FractalFriction &\\ \hline \verb{F_fric{ & current frictional force & scalar & Friction & x \\ \hline \verb{muF_n{ & product of coefficient of friction and normal force & scalar & Friction & x \\ \verb{F_fric{ & current frictional force & scalar & Friction & x \\ \hline \verb{strain{ & relative strain on interaction, compression positive & scalar & Bonded & \\ \hline \end{tabular} \subsubsection{Fields available on Triangles} \par \medskip \begin{tabular}{|l|p{3.5cm}|l|} \hline Name & Field & Data type \\ \hline \hline \verb{force{ & total force & vector \\ \hline \verb{pressure{ & pressure & scalar \\ \hline \end{tabular} \subsection{Output Formats} \label{sec::OutputFormats} All field can be saved in different formats. The following formats are currently supported: \begin{itemize} \item \textbf{DX} : The complete field is saved in one OpenDX compatible file for each timestep. For particle based fields the position of the particle and the value of the field at that particle are saved. For interaction based fields the position of the centre of the interaction, i.e. in case of a 2-particle interaction the middle point between the particles, and the value of the field for this interaction is saved. \item \textbf{SUM} : The sum over all data in the field is saved into one continuous file, one value per timestep. \item \textbf{MAX} : The maximum over all data in the field is saved into one continuous file, one value per timestep. \item \textbf{RAW\_SERIES} : The complete field is saved in one file, one row of values per time step. \textit{not yet implemented for interaction fields} \end{itemize} \section{Fields Defined on Interactions} \subsection{addScalarInteractionFieldSaver} \textsf{addScalarInteractionFieldSaver(FileName, FieldName, InteractionType, InteractionName, SaveType, $T_0$, $T_{max}$, $dT$)} \par \medskip Add a saver for a scalar field defined on an interaction. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{InteractionType} The type of the interaction for which the field is saved. \item \textbf{InteractionName} The name of the interaction group for which the field is saved. \item \textbf{SaveType} The way the field is saved. Currently supported are ``DX'', ``SUM'' and ``MAX''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. For example if $T_0$=1, $T_{max}$=31 and $dT$=5 the field would be saved for the timesteps 1,6,11,16,21,26,31. \end{itemize} \subsection{addTaggedScalarInteractionFieldSaver} \label{sec::TaggedSIFSaver} \textsf{addTaggedScalarInteractionFieldSaver(FileName, FieldName, InteractionType, InteractionName, SaveType, $T_0$, $T_{max}$, $dT$,Tag,Mask)} \par \medskip Add a saver for a scalar field defined on an interaction. The field is only saved for interaction involving at least one particle with a tag fulfilling the given criteria. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{InteractionType} The type of the interaction for which the field is saved. \item \textbf{InteractionName} The name of the interaction group for which the field is saved. \item \textbf{SaveType} The way the field is saved. Currently defined are ``DX'', ``SUM'' and ``MAX''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. \item \textbf{Tag} The particle tag. \item \textbf{Mask} The mask used in the tag comparison, i.e. a interaction is included if for at least one of the particles involved the following is true: $(particle->getTag() | Mask ) == (Tag | Mask)$, i.e. the mask is used to determine which bits in the tag are compared. For example if Tag=5 (binary 101) and Mask=4 (binary 100), particles with a tag in which bit 3 is 1 would be used, i.e. 5 (101) or 6 (110), but not 8 (1000). A Mask of -1 (binary all 1) will lead to an exact comparison of the tags. \end{itemize} \subsection{addCheckedScalarInteractionFieldSaver} \textsf{addCheckedScalarInteractionFieldSaver(FileName, FieldName, InteractionType, InteractionName, SaveType, $T_0$, $T_{max}$, $dT$)} \par \medskip Add a saver for a checked scalar field defined on an interaction, i.e. the field is only saved for interactions where the field access function returns ``true''. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{InteractionType} The type of the interaction for which the field is saved. \item \textbf{InteractionName} The name of the interaction group for which the field is saved. \item \textbf{SaveType} The way the field is saved. Currently supported are ``DX'', ``SUM'' and ``MAX''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. \end{itemize} \subsection{addTaggedCheckedScalarInteractionFieldSaver} \textsf{addTaggedCheckedScalarInteractionFieldSaver(FileName, FieldName, InteractionType, InteractionName, SaveType, $T_0$, $T_{max}$, $dT$,Tag,Mask)} \par \medskip Checked version of \textsf{addTaggedScalarInteractionFieldSaver} (see \ref{sec::TaggedSIFSaver}). The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{InteractionType} The type of the interaction for which the field is saved. \item \textbf{InteractionName} The name of the interaction group for which the field is saved. \item \textbf{SaveType} The way the field is saved. Currently defined are ``DX'', ``SUM'' and ``MAX''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. \item \textbf{Tag} The particle tag. \item \textbf{Mask} The mask used in the tag comparison. \end{itemize} \subsection{addVectorInteractionFieldSaver} \textsf{addVectorInteractionFieldSaver(FileName,FieldName,IGType,IGName,SaveType,$t_0$,$t_{end}$,$dt$)} \subsection{addTaggedVectorInteractionFieldSaver} \textsf{NOT IMPLEMENTED} \section{Fields Defined on Particles} \subsection{addScalarParticleFieldSaver} \textsf{addScalarParticleFieldSaver(FileName, FileName, SaveType, $T_0$, $T_{max}$, $dt$)} \par \medskip Add a saver for a scalar field defined on the particles. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{SaveType} The way the field is saved. Currently supported are ``DX'' and ``SUM''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. For example if $T_0$=1, $T_{max}$=31 and $dT$=5 the field would be saved for the timesteps 1,6,11,16,21,26,31. \end{itemize} \subsection{addTaggedScalarParticleFieldSaver} \textsf{addTaggedScalarParticleFieldSaver(FileName, FieldName, FileFormat, $T_0$, $T_{max}$, $dt$, Tag, Mask)} \par \medskip Add a saver for a scalar field defined on the particles. The field is only saved for particles with a tag fulfilling the given criteria. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{SaveType} The way the field is saved. Currently defined are ``DX'' and ``SUM''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. \item \textbf{Tag} The particle tag. \item \textbf{Mask} The mask used in the tag comparison, i.e. the field is saved for particles for which the following is true: $(particle->getTag() | Mask ) == (Tag | Mask)$, i.e. the mask is used to determine which bits in the tag are compared. For example if Tag=5 (binary 101) and Mask=4 (binary 100), particles with a tag in which bit 3 is 1 would be used, i.e. 5 (101) or 6 (110), but not 8 (1000). A Mask of -1 (binary all 1) will lead to an exact comparison of the tags. \end{itemize} \subsection{addVectorParticleFieldSaver} \textsf{addVectorParticleFieldSaver(FileName, FieldName, FileFormat, $T_0$, $T_{max}$, $dt$)} \par \medskip Add a saver for a vector field defined on the particles. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{SaveType} The way the field is saved. Currently supported are ``DX'' and ``SUM''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. For example if $T_0$=1, $T_{max}$=31 and $dT$=5 the field would be saved for the timesteps 1,6,11,16,21,26,31. \end{itemize} \subsection{addTaggedVectorParticleFieldSaver} \textsf{addTaggedVectorParticleFieldSaver(FileName, FieldName, FileFormat, $T_0$, $T_{max}$, $dt$, Tag, Mask)} \par \medskip Add a saver for a vector field defined on the particles. The field is only saved for particles with a tag fulfilling the given criteria. The parameters are: \begin{itemize} \item \textbf{FileName} : The name of the file into which the field is saved. If the \textbf{SaveType} is such that the field is saved into a separate file for each time step, for example ``DX'', the \textbf{FileName} is used as the base for forming the individual filenames as FileName.N.Ext, were N is the number of the file (0....$(T_{max}-T_0)/dT$) and Ext the file extension for the SaveType, such as dx for ``DX''. \item \textbf{FieldName} : The name of the field to be saved. The name has to be of the fields supported by the Interaction for which it is saved, otherwise an error message will result. \item \textbf{SaveType} The way the field is saved. Currently defined are ``DX'' and ``SUM''. See section \ref{sec::OutputFormats}. \item \textbf{$T_0$} The first timestep for which the field is saved. \item \textbf{$T_{max}$} The last timestep for which the field is saved. \item \textbf{$dT$} The number of timesteps between savings. \item \textbf{Tag} The particle tag. \item \textbf{Mask} The mask used in the tag comparison, i.e. the field is saved for particles for which the following is true: $(particle->getTag() | Mask ) == (Tag | Mask)$, i.e. the mask is used to determine which bits in the tag are compared. For example if Tag=5 (binary 101) and Mask=4 (binary 100), particles with a tag in which bit 3 is 1 would be used, i.e. 5 (101) or 6 (110), but not 8 (1000). A Mask of -1 (binary all 1) will lead to an exact comparison of the tags. \end{itemize} \section{Other fields} \subsection{addVectorTriangleFieldSaver} \textsf{addVectorTriangleFieldSaver(FileName,FieldName,MeshName,SaveType,$t_0$,$t_{end}$,$dt$)} \par \medskip Add a saver for a vector field defined on the triangles of a given mesh. The parameters are: \begin{itemize} \item \textbf{FileName} \item \textbf{FieldName} \item \textbf{MeshName} \item \textbf{SaveType} \item \textbf{$t_0$} The first timestep for which the field is saved. \item \textbf{$t_{max}$} The last timestep for which the field is saved. \item \textbf{$dt$} The number of timesteps between savings. \end{itemize} \subsection{addScalarrTriangleFieldSaver} \textsf{addScalarTriangleFieldSaver(FileName,FieldName,MeshName,SaveType,$t_0$,$t_{end}$,$dt$)} \par \medskip Add a saver for a scalar field defined on the triangles of a given mesh. The parameters are: \begin{itemize} \item \textbf{FileName} \item \textbf{FieldName} \item \textbf{MeshName} \item \textbf{SaveType} \item \textbf{$t_0$} The first timestep for which the field is saved. \item \textbf{$t_{max}$} The last timestep for which the field is saved. \item \textbf{$dt$} The number of timesteps between savings. \end{itemize} \chapter{Examples} \end{document} ./Doc/Deprecated/FileFormat.ps0000664000175000017500000051154012176660653016006 0ustar vborosvboros%!PS-Adobe-2.0 %%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software %%Title: FileFormat.dvi %%Pages: 4 %%PageOrder: Ascend %%BoundingBox: 0 0 596 842 %%DocumentFonts: CMR17 CMR12 CMBX12 CMR10 CMTI10 CMBX10 CMSY10 CMR7 CMR6 %%+ CMR8 CMTT10 CMSS10 CMMI10 %%DocumentPaperSizes: a4 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips FileFormat %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2004.11.08:1214 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin /FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array /BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X 1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) (LaserWriter 16/600)]{A length product length le{A length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet %%BeginProcSet: f7b6d320.enc % Thomas Esser, Dec 2002. public domain % % Encoding for: % cmb10 cmbx10 cmbx12 cmbx5 cmbx6 cmbx7 cmbx8 cmbx9 cmbxsl10 % cmdunh10 cmr10 cmr12 cmr17cmr6 cmr7 cmr8 cmr9 cmsl10 cmsl12 cmsl8 % cmsl9 cmss10cmss12 cmss17 cmss8 cmss9 cmssbx10 cmssdc10 cmssi10 % cmssi12 cmssi17 cmssi8cmssi9 cmssq8 cmssqi8 cmvtt10 % /TeXf7b6d320Encoding [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /suppress /exclam /quotedblright /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /exclamdown /equal /questiondown /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def %%EndProcSet %%BeginProcSet: 74afc74c.enc % Thomas Esser, Dec 2002. public domain % % Encoding for: % cmbxti10 cmff10 cmfi10 cmfib8 cmti10 cmti12 cmti7 cmti8cmti9 cmu10 % /TeX74afc74cEncoding [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /suppress /exclam /quotedblright /numbersign /sterling /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /exclamdown /equal /questiondown /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def %%EndProcSet %%BeginProcSet: bbad153f.enc % Thomas Esser, Dec 2002. public domain % % Encoding for: % cmsy10 cmsy5 cmsy6 cmsy7 cmsy8 cmsy9 % /TeXbbad153fEncoding [ /minus /periodcentered /multiply /asteriskmath /divide /diamondmath /plusminus /minusplus /circleplus /circleminus /circlemultiply /circledivide /circledot /circlecopyrt /openbullet /bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal /greaterequal /precedesequal /followsequal /similar /approxequal /propersubset /propersuperset /lessmuch /greatermuch /precedes /follows /arrowleft /arrowright /arrowup /arrowdown /arrowboth /arrownortheast /arrowsoutheast /similarequal /arrowdblleft /arrowdblright /arrowdblup /arrowdbldown /arrowdblboth /arrownorthwest /arrowsouthwest /proportional /prime /infinity /element /owner /triangle /triangleinv /negationslash /mapsto /universal /existential /logicalnot /emptyset /Rfractur /Ifractur /latticetop /perpendicular /aleph /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /union /intersection /unionmulti /logicaland /logicalor /turnstileleft /turnstileright /floorleft /floorright /ceilingleft /ceilingright /braceleft /braceright /angbracketleft /angbracketright /bar /bardbl /arrowbothv /arrowdblbothv /backslash /wreathproduct /radical /coproduct /nabla /integral /unionsq /intersectionsq /subsetsqequal /supersetsqequal /section /dagger /daggerdbl /paragraph /club /diamond /heart /spade /arrowleft /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /minus /periodcentered /multiply /asteriskmath /divide /diamondmath /plusminus /minusplus /circleplus /circleminus /.notdef /.notdef /circlemultiply /circledivide /circledot /circlecopyrt /openbullet /bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal /greaterequal /precedesequal /followsequal /similar /approxequal /propersubset /propersuperset /lessmuch /greatermuch /precedes /follows /arrowleft /spade /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def %%EndProcSet %%BeginProcSet: 09fbbfac.enc % Thomas Esser, Dec 2002. public domain % % Encoding for: % cmsltt10 cmtt10 cmtt12 cmtt8 cmtt9 /TeX09fbbfacEncoding [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def %%EndProcSet %%BeginProcSet: aae443f0.enc % Thomas Esser, Dec 2002. public domain % % Encoding for: % cmmi10 cmmi12 cmmi5 cmmi6 cmmi7 cmmi8 cmmi9 cmmib10 % /TeXaae443f0Encoding [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi /omega /epsilon /theta1 /pi1 /rho1 /sigma1 /phi1 /arrowlefttophalf /arrowleftbothalf /arrowrighttophalf /arrowrightbothalf /arrowhookleft /arrowhookright /triangleright /triangleleft /zerooldstyle /oneoldstyle /twooldstyle /threeoldstyle /fouroldstyle /fiveoldstyle /sixoldstyle /sevenoldstyle /eightoldstyle /nineoldstyle /period /comma /less /slash /greater /star /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /flat /natural /sharp /slurbelow /slurabove /lscript /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /dotlessi /dotlessj /weierstrass /vector /tie /psi /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi /tie /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def %%EndProcSet %%BeginProcSet: texps.pro %! TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0 ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{ pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type /nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[ exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if} forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def end %%EndProcSet %%BeginFont: CMMI10 %!PS-AdobeFont-1.1: CMMI10 1.100 %%CreationDate: 1996 Jul 23 07:53:57 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.100) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMMI10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-32 -250 1048 750}readonly def /UniqueID 5087385 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE 3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B 532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B 986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958 9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321 990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E 6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721 59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823 D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF 8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808 6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9 1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE 03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909 95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1 74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2 3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8 47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19 AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8 42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8 40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837 B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53 95601766730045C2D9F29DC2BFEBDE5E7720CC7D82522855B154A338B97295BF C94D357B94E5EE165165F83EAC02B88B573631B8D41DF206F7D0D338F76845F6 254C471585F53C741E6688418E5AC9F925118BA1FF52986F752794737CFCBA41 D679150DDEA6E48FECD336FA584A3024B278B6F3E83BD95C2747B110E60F8457 83A0BC821CBC5D23D195C312191509F373F508982B45805E370437AAF029511E 36054CDEBC869477682E06298EFDF6CD99C517A6D45BC1002BFCF6B919E44E49 1C50C65E3E0273F272E1D084B6DC6C88C65FC406A3545F13475FFA00B9A84E1D 92E99123DE992A8A9FABD0375F2052D369D85D04138B6758859FA901A94C5DD7 78EF4DEC089465D275053BF37A37D21EEAD9CA46CBE5C73CB63E5500FA005DFD CAF646BBCD7D6E8C09BB7EBB0B4D23356A556726E6FAC52A0000A5A5812E8D24 B51C00FDC41828DAED369259ED5027406C3533AB886A784A00DC4088A9D56F6A 8ED9B6B9775A8DF332D6A05F5B25461F9E9FF1A244D536F82C347A476F4AD34D A6A90FC709E11D41631EACDD4B4DC17ADF72BCE6CFBDB32F50A8682848C7643E 78D1E4CCDDF12C9D6B21F528AAA261DCBBDA5F7DC9DFFBE44A3441D3DDC9F268 1BA42BA2A4A6E5CD2DCC4D7483CE62665CB2F395746B780BB4949C5847FB4642 7CF6922B91BA4670C10A38B5D06A9FDB62E3D506A9E80A3999E816034152F426 73983F1FDCA9CD3B3FFE8DDC2906959BB52AB45C4AC938EE5E7075A9189208CA 05897D8388815CB19E351C4BE70B718D1C17E6E8A206B35BF7A5F8B4EA998F57 42F7AC30D2198CBC98FA46683787E4C6CC19432446F7193A7B567F0DA9587615 BC04BC64010CF75D87F87EA43A67BC9D9707837A8E45CB2F8D05B521D4D951FA 6CF862A208777757CE3278AFE313AE55E93990D6E82F313D6C5132122D273A79 F27AF9C135C97EBB9F4B0256414AA9957660ACBE13BA23CEFCC4516A30FBAE68 F5CBFB4BA04E2A35AF5A739BF6F9E67883031E993D20E4A06FC93FDBD207BDBF DDA804D84A4B50FACA94FF039E5AFB369F446CF408EC600D35E05BDC24553593 9933315ED4C7DEF9B08C690B51C11CF9424C4E650CD9A80CFDC769E1D6393185 91D81E59A1D6186593EEB3BF355FFE11951C89AB97CD48F45BAC70DFF7B73DF7 A18131DC0A58B947DE6F20B64C910FAE0BC25A1CD91947117FA04B0B6ABADD22 40B72B7DD1B1E970A65017DA3B766A23E16615B6B0BA21420C22026CB9AFF945 05DB6C097F7358DDC1F0257DDA77FB5E387FCDF2D811430A19286E66024827CB 86A6205419B8204BE9C5602665BF425063A984F5AFC894C3BB3C5101E169386F FBE308C4D1CF1B95DF6EA59D7CDBC65FE47F368B0DB77CED24FF6A0534A822C1 1A4443054942155C63344D9716644FCFFD13945C82008BFF8FCEB41DF35F9A94 161E0C1C8CCAEDDDEB3E7DAE11268B4C56161B36769430DA076FE370894EB365 EF5BD178B262D1029B70EA7EF95BECE9405A774BF8B5576D5040AABF5A51224C 014428956667A98AE64008A6B25C2C3D427B8AE46DB8020F184F1DE273791052 E968593534A5B60BC147353311159A020C8BEE417A4AC360C30BEEAB07A91221 365C8E2704BB45FCECFA4E2598098358BF4AEAFF659D 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSS10 %!PS-AdobeFont-1.1: CMSS10 1.0 %%CreationDate: 1991 Aug 20 17:33:34 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMSS10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMSS10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-61 -250 999 759}readonly def /UniqueID 5000803 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF7158F1163BDCEEA888D07B439DBD4E8B4C9 D198C03874B5E6F8FBF4922065A92BC3E66D05DE53971CB1424510E892442858 D69CE1F76E4DA76C87C763A4B2FE36321E54B1328C9155B8ED6361855A151723 3386AEA3D042B8D89C8C0E9A33E5DF3B466F7BB8C2C8A4ED4CDAFF55FC6D3EE6 0AF2CEBFC1AC3A6E6692F8BB81F82D86BAE85016AD62FCB05467082C2E5AD348 44D1439C2B59F65590E57CA0DE481A7A34E79931B1513C4C30156170409A4BB8 46D412D1DAF88AD30722F12DBCA1CCC6B4BCC28D06B0D29149DDEC520C8FBA13 6B82E2E1790F00B216282FF122EF0D47B70A1B29514DDF7C0435ED238C14BDF5 6DA243117FBEF7398F97EB95597707ED63C6797EBA1B46EA19ABB1DABDA171B3 16CD500F5D64CBFBE4F9CBC3E66A34427D3C4D0C432710289381F9BFD91B4FF4 1E3A896C3EEA2F3105C218877D6C0C6B763760FA364D00065E1CAE9DCB5676ED 286A9ED0D1C946DCA6A2A670EE0936FB4706CC62E234CFEED34AA615C48D2872 A087F30990C85E64BA68F3D5C117123467DB411C9F2D6F6858CC70C1E352C477 713097321B4C4FD4C5CDE305415F998E7245908EEDE6E056A736EA77BD8C639C 3A79FFD0B74B3D28F0494A115F2841CF8A8827AB5608F96FD8998A5F40FB3DFE 3AA0C7696DE4E1D18DC0D6E84B943175FC38FFC42A9C0CBB13A908978C98BFE5 034F88480F32B9DEB2FD228FF6CB0B89B045AB02020C82E3F5716DC640613185 9F597CE262729BC52132F43922B9E28BB71A30AC8709634561B22D13C4FAFE0A 12C4451969226B220038AD8DDA990A4E2CAD53DBEAB698898BBD3046234EB4EA 901287E71CB41296C431383AB85F18882F65BE36923F6C0FD6FAD87F09D5BE9D FB4E76FC098BB56B9FA6662C66CDC5BED18E80C5E7D9ED01318BA6F3914779F7 206692193CE70BD497874C3D464D357C2BE915C103FF36C4C252EA481F5A24EC FCDF6EB221E0DBB142B63FD9828D38C0C1E60AA28F109656DE29FCD2D82132DF 918D09FAAC4BD551DCDD2E50629EB4744B3BB81997CFBD61D16DB0CA8EFED062 A1ABC00933B900560868255518877EEE5DB9C1A6745E4F1EC92E1D6DF0E28D7E 7A6ED8E9075D10EAD709940544B6BF290580AA0B050D916CA3F298818EB4A6DF 12B100FF4FA827972CCA77EDF5C5E6778B5AA66CE5ED14F27945D59CD3B02BB8 EB51D7D94CF965202AD6B85D512052BDE36ED558A1A044E06D28F8BF674AAD70 96BC6892E57D4469CF9A3FBDE80E5C468BA5839FC219CEB4AE6FC58CCF3F5864 93C77528ABCDC20D040874C3D3DDB64D2C2C8F18A47C36BAF28289E802E8DC7A B443510C280A1395F9A7E0AE368E3EA938CEDC2A67455FDE9457CE16DCC5F911 D63375A22C2435B055C559D079770AF3432F04C2334D472D58241D4F55763A14 BF8BE099F9C4B94BED133FD9126572DDF7AA512D79F61606A9895992F06590F4 6627B4976FD35AD007A7FFBD6B70DEE8F17643228DFBEE32978B158CF7144F9D CAE548C5B26450CD3D14BD2D53484F82CCEE842FE2101ACA459C431C0106DE9A C8A1E3FF47D9C14EDA9463C57EEF83B191FC8E1B4862EE97E34362EB40A334B6 2252549F904D0EC5FBDB8642BFFD9469D502F97EA64DC6F1B3CB4A612E25BBE7 D9988FC467F33529C56856CC9ADC79601595329AE6859FEE2FB3D9EBDBCFAC31 4E3A3DF1930381634C3A3832077A48BD8C8DFDAD74858AA64F7DD0B72BE20934 432B31EE1CCB3E1D080D30959C5C57B6D0EBA5CD0B1BEA563BC2C4DCC70C2C2D 016AFC8DD74097868DD3A8694F5BD9ED85D63E7F7B448672DFF678AD1050B3C4 20E1A5659D4DE36D58FEBC27AA6B0EE1B773BDDAA225A857DE146D9D34615E33 F753319631204D0032B414F67583E17F226B40BF5D70B8B20FA98824641CC288 8A9F6F721C3F4D417D8069496E6486B27193E24D9C19E4EE7E3BB19618E23C3D B51B402D8335D55CAA0A23FA5A3F8BD09CC010AB80C942A0B6DFDA9801860250 79A43EAAA9A954C15ABA53AC5842E7C5CDF0446319ABA75DF4502D4927A46AE7 E432EAEE37C426676E249684B0E83676A67B60E7DCA937A099B945042E6D238F 8EB7ACA1B5C60E846E1E335C478F9FD6F7CA30089C24E41C6E681A9BE52215AD C688689BEBA5829936CD769F1A20AD64034040E4CF1C9AE2ACCB6DE788AC656F 62ABCE10939174EE543E20C0017BF71132F6FA8357390B79A7502F2D501120A0 5799E7E7CD46583651B7C7E0BE62511CD0863654859A70F7602CB5A96ABDC86E 1A5593A54ABF4960815F806542158BA2FA347393C4F789F36D65A08A39182081 468D253A745618C7C457C9BB963BE91FF1F290688D550FC89B770B50B611B334 C248B9DD5BEE3033D6E0DB2EF23480DB5CEB46B98A90E65189CDA1D26E412167 17B6147733260C199A4F744FEA70BBAAB563706D0764DF77FAF990C344EBFFF0 D2F883B640FA5F2CC575496E9710C22EADE117A49E01C3F3CE3A1666E32F71CA CF1040132C63CF192396CD762F93DD6E67C4BC61C96E0CA8F2DCFBB34053A07A D498C532A39778FADBF02B8771C6E1D042F32166CBAA6C6E3637864473DA9C12 97E9CA2287D19C7485E5ABE6A6FBBF1EF40FF6A16C8864E9D6D1F60F8D33C6FD EBB87C61206C524B0B21101CA7D33E4AD9F46B775F5AD6AD60D43CE6E107DE89 481FD3BB275794BE152052D5035619ACBBAEE78C7F7EF3705ED2931D37CCCA34 F89ACF0BAC3D48621E1E39DA05F0CE9DB1422C1FCFECA345C408207B4E8F4AA9 5A689B3D69EC4B3E3686B48EECC7C96B1BBC25A086C4CA753D29071782735FC0 6CE0733A743141FE820A8883B531D39E85F63D8B8FB8E7145FAC63BED36E3E8D CDB2912D4D29ECF7D5BA81D9DD1FF5C6AC4AECBCD2DCFA00E0F2E1985DEA0E7E FC49869F9208DA11DA96DC7EE5A024592A9CD30C1597D12BF27EDABA77864799 0E94F91F69466F20B4FAB104FFA9D1069216A4B5FC615402243DF230631B4C29 E6C14D32F00A004A11D9D515DE9B1FE75BF36CA792F5B2E305C955A326D72F30 87D815C2D598AF77148BA860C7B2BA4F56494C0E0690674DD7CB0AA2124AAA9C FEBE0D4937232389261A1CA06F4D390958409425BB60BD71BCD972C267FE3CF5 60E20A669D131DBFAD92337001A64B99705064899125732124F635D33BFA4790 B24F2E53C4C162691C9E5E0E0BA8555C04511D02422C28E3EB03408A9460EF6C A69C29EAE81D166183D52C86B05AF6091D566680ADB1EC4431F5271F9259BE34 D7A04B94BAE3DAF5B3C8A2474642B0F39D82494A1CE4025C301ED72E6D956AD3 39478212E0C65E72703FEDE17E1558C14A4E5D7F 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMTT10 %!PS-AdobeFont-1.1: CMTT10 1.00B %%CreationDate: 1992 Apr 26 10:42:42 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMTT10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch true def end readonly def /FontName /CMTT10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-4 -235 731 800}readonly def /UniqueID 5000832 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19 38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204 EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727 A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593 F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714 4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA 6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F 1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438 452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF 8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369 5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9 BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19 741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79 E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712 E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7 D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DC FF798F2ABFC4F3539392985C4CB324B00072295FC160818BB0355FDC4F12E39B 984826450553E3D271F03D8DC2D12A92A4D32034FD16DA13B876D88C8C097384 46D8D7E41CA1A8979F9B07EC3337E70CBBE3A377235B04C79BBBDB66CE1C1A41 89DAB7CE91F2FC0CAF6DDAD09992D56F72299068192610EE3DE5DB7CF6366B4C D74F414484DCCDBA449BFAADA39D0F27574E604E31CB513B18E3821A33076151 C2BCB6E957C77A0AECA48C587ABB5E8C7624D2CD1BC0281FE40CC2D3DD1B36FC CC468011824DDFAA0539291B9B8004F29F21B2A9D8EA7F0DAD273A107D6C3BBE E1AFD4D3183277F3795EBD73A754DB85A850C84BCD4D56CCBA606133FA94413F 30F72533997921A1B617D131E189EB56E2B0B5ECACC0BBF248E4F1AD9C63D975 3C6CD4B95BB5D84CA784AF0AFBC0921DFAC0A37BDFF530845861D5E5C2EC7E59 783CA09B409C27E90A92E296A0AEC7805AE45F92E51D71617B2F2C6D684A6900 51A2662DBE1919D78DB54DBE80618AC6D712F2C4EACCC55BE61C3FC35C905873 6A0051E32A366F8414A3EC5210029A409A683647271CEAFB8023DE1604FD41C7 54EA8686B04DA8B5AA708541A8F4D9C9110F675D92D0F77803C44ECC0BC1F9C1 415D460E3EF345D6D1EDF0BF6E53EB16E7D275AA6028FD01CD6DC2E381A748FB E4CC45BEF45F65C9FD360DF8A754042B6C1658E5DAB2D853767FE8A1AFE4954C CB111CF2CDA638544E39CBCF46327DDEFC29C3B00BAE13256C8B4C0716E17F68 31F6B8CF83D7102EE1EF1ADE1A68A18871E174D035568896393845A4F6DD4D76 C40C16919C6B21646102D7B02BB1D6D89F6C76F8E106B67C95AD201800501969 052F03A7F6962161AC0BB84C8C18D18B48EF63F4CC9120C5D60F9D4C78148EDC 147599B3E6B4CB920DEA51B093EB5BC3C5238FB0758C8A884609AFA45F3B88DD 4287EC21452229867BE5F186FF648CD35B7BEEBC18927C96634D1D4D52D5C97C CEF30B31C9BD5155E41D2F8B84D9331E935FFADE2F46C47EFF8489829497C4EF E959D751EAED71D83D1D27243FC905BD7A07C90226FD0F6A2CDF1D561810363A A5EF7F475F8EC6EF46C2FA29D15A19DC582861B36487DFC0A21BA79BB0176DEE A5B1EA14C4E9E23A9863D59BA13B836A9424B65CAF0A54E34B2FF6BFDD82508F 5A1955B78C061FFD9E5511F89CC9AF1A497A84F40B4B89239995AC454ACF3878 93BF211090084581289A7FCEF2B9440F20142D4778F9CB2F1CC13CBF30EAFB7D 0364AFD7C9AA9014458BAE9083606FEEF7F95D2364EE079A71D627132407EF1B 6C94C7F50C129ECE8313797BB7B5767A1E489E20256201435C1448CE85E8E74D 3A80385ED509CD352301642DE14ED7990BEFB43543A6684D41D07CD1F42793DA A7FB1680FDB75548967179920D06AFB4B65AA815B9687B7228F9D3FC3AD5FF00 5CF5D412ABEDFB3F9C91CB6AEF1EBDF7E280653CB94691498C420C2A5F34B64E C387139A74541348237FB451E4AADA1264987AF1E028667AC704A6EDFD4135D3 5D73D94BA6924B87E678D25B145E22EA0679D78A1D60E4BFF8ACAD682B0BEFA7 68FF32F66742B1698636C9AF7C4C976C219C7A6FAAF446384CC0CB778EFC62E3 AA71D47D6D7714891B32DC90B2A25CBAD62B1FB5C8C4C884AE24105236973805 D6AB2FDED52BE07B94147B475C19FA431FDAFDB21D1871C442D923C00EEEF810 E7F383582ADA59DABCB89608912D60B54620685C40F7560387D28ED57F8DF242 1400D57D88679046FBB938333A1F287634F4E4202E97D4FC170ABE0FA213C57E 9574EEF776A5A162BCAC6BF883062E41ED78E6CFDFA8E44DA924F8A508699402 2606E750EB67F06A2668E166333536A8AAC69559E8ECCF943BCEC4B96C4D5DFB E9C864D1DAE1FB4D42CD06679814BD360F57EDD6344D66DFDDE296A4B5496B6B 9E2AA0836B7718795441B78A4F7934A95C18C0A6DB63798C522C7E722A64588A BDC5D5E7FD1F4A41BB115AC3835A4763AA227399B10191308820258309402106 74EA13BCB4C323FCBB0ECDCE66BB263AF69F8AE9C3B06F47EEDF8A28F126778A 1EC3129EFB90422EB66842378100C82FE24462D1462041A27FD2B72A311193C8 5BD9F0DFB653155CE4D07002CAE4F4F6AF14077345F3680179489DE63D6F84FD B7F4C1BDFE9EA6810C16C70633D682C8D6122EFFE134BEB7AC3F606AB30602A8 B8E70FA90549D8F593AE2C8C99CE75FAE5A05B537AB0A4CC4A09B96AF2CF57DA DDBA1F6E727A34EA84E75D9B10ED1D671AC2BA926DE3D64D61B6E75E1041371B 71223DFC6E865B17E206941C2768BC24DF5DC38E878E0135C5159E3C26447CDE F0427DBFFDF8F8D66E6ED6841EBE6D22180C67E7DABF3DAB4308C843ABAEFE3C AE278ED69ECE009E74DFCB919D554E7BA992BD178E9078360EDE63E00B1C37F3 6292456BEE6B4DB0B1FA2B1E48583607E356DB76B28FB514F8B47B367B09BE82 B0D4D33BC0DD36420628FC6720EF7DC4E7AE53A40FFE5FEAC32BF2DA5FA30A95 D04E1E4E1A53280547C0A4826AE1CB54194D9BF085025354019660FCD0654161 D5E9EC3C1C6D4D7E8F448258110D972F42495ABF14286920C5DB4D51EF72E716 6CAC3B6CED514F4171F6ABE25DFD70D625FD7443F6BF3815AAD134A419A5DDE4 A82438C14B2F612BD6BA3AE5E261541169BBB4FFA42E7BA6F78F5BEFF59F69AD 2E0AF0006873602C76BE3A16074154C83FB59DB3E7F47E9063671A6951DFD58F 600264F9E19504010EAB739679D7643F326A2BBE58CE0DF7FC09507150F39587 C4F95BD0E6C24857DD493B1164802D9B5A30E78605C7F2486438037564A83B91 818F54C394E1BB0AC245C33274AF1FB64EF4BDFAD9EC0CD81459C9E6A3033D09 42B8E3006DE75CD181751AEA580CC86EAC5F781A7FBF5D2A22AEED90FFDF68B9 943357BD460968A09518E14214371C6315D5924846133407C8BF7F1F350ABA28 709ABF7159CAA38385ABDDBE8DA79E0617D0C6B36248742AE870D306815EC556 54C0E8861C86ADE6F8FC4F5022D2A3BB74FB8295A91B97395ED9E935DD5A2FED 3AEA824A9F71AE4F80262403681D684A3B8CC5E0A9DB5F2BFFE674E428DE8B86 C66A5B560DECFA278314A0E45B30ABCEBF73CD22FFA09746812336D896089E37 784B9FD479D991F4D5F79F2697FAAF64A5DE8C78B46840AB30E250ADBD668001 90EDB63C02793E1773B936F1CF46051EA91D6A3DCDD8B9FF4B34F6CFDAE8994D FAC9E466CD0F8C4FB0A68F1CA27D8E93103628FC7D3CD89D05A45CCB02DA1647 672BD7E72A047E311ED21F139DCC30AB84B56784988B70922C5B68C9AF7CD60F FBF5D505B6278C9DD9FBCFE0925B49109C0664EE9FCC8BA1CAED3820926C4439 1C0222BE407281F0E9BCDA593F1663D3E7E5718C093C5B1B13254584CEE76CC6 F17C2ED9AC967A20B0A4B08A62A855926E7A98CBAF72EE008F4074B9C0AA4438 FEC3EDF034ED3B653305F6807034611076384B07551C01397C3DB1FAD33DDE0F 44578A0875D119073FF28F02B951DAFDE77C12647389CFFEF02DA2606BBF9BF1 3BF7AD9309008FB57855DD326E58D005E43606DD167D0C7543CBF07B5D102DBC ABDA099A8F40A70ED96BE14A801E9F1F1DB22EF9A92EA9AC123CEFC62EDB3925 E802361078D4C5E504993E989238A3FE61187E1BDC9D853951E0416487F8AA4A 7F8D35C13133405F9A59967BCA2C94D74AC7258E02671BECB90FE8D806AA0D7A 9154CFBD5FB3048EAE9A0A94E8FA3E5612F345F5CEC706E130C571D6A65E3F96 CF14FFE273E51470CDD09BBAE1193D34C530463D5E9FD4B455ABE4A6571AA43B B72190D0B7B1405FFAF8764096B49E74E8CAAEE5256D2EF7A780619A2E230C94 E64401CF43C1EEA28F598589106715D51A79A29F5A1FAC0B2375AC06F1D61998 655F6685FC5DFA75214D0AFCB79234DF738313DF38601689BEDDA39876E1C656 0017A1DC93EC04042189CEE82C0495135ACBF316D9ED6DD3D48DFCB7916C1E8F 58649BC3B103A2D59F022FD9C38F1E96C70454600B553FACDB32766D58AC05B3 6524314751F68139A7B3B764784779EAA0F97792506026B513A0109E74995913 94D6990407F5EC2E40430E129E2412D8565D5500E87FEB738CB2FF6F1EFECF03 3031E87CA961173BCC8A828243F52D2406146B36860AC44C4E512D9341458767 1076BC4E71E18BF963E0F7BBFF0308B25C8AED4BAD4912D0F898B37DD4309215 8B8C903841A992A6BB22FEDA14000E2AA1741777D507029F646B59B5A9F7BAAB 6C0D69EF47FE706F8C21E3ACC3724D389FB40E6ABA034B8BA3F8CA993C657CEE AE6D39905AB8C931ABB7DAD718566DB49DAE4898298CA442B535DA7C60F2FF9F 3A9B51FB853DAD23F6DFD719C615A04B45AF0F4360537A10D8FEC1CDED8B8348 32FEA1A5611AA77F173A093D8E4252B96BDEA4B70D3A0BD12CF8F39B3203F825 8305FE5563D2738B32418945F07A4E8DFE6C0418682BC1CC700FD06FE85B429A 8D9B1F4A0137B4D28F79B751B771CE698F8E811BEEAE550B9725CDC384CF9AB1 8F50F68CD2D78437AA1FCB49BAF81C762638F29E32F32CBB202AAD8EDDAE5D81 072A22A934A9EA9E84346148FEA463DD1A0E7FCC5C2D5B07805AA562593C8AEE 3957C9AE07BA9D48AD03913B2AC30D4F9F989927656C29C9F3D25645FF864F09 6C4A8548AF87E38AD853FEBD98CB273E91C12C4307E06559C95BE1039BFCB427 2F2C46D1765FF834048FB79894F944598F15CA607188C73004D58CA6341C9458 37528C6EA4F8FD34C4DC344D792040FBC05236E4CDCDCFAB7C1AEA5C779B7E57 377290A267387BDFAC4EF81AB3DC616D8EDAEA86CE9A355E625207A1E759CFF0 9F7B3072C8AC9F3A2810D6441B5DFE0B625297C89A5044775AE222E346D89E37 F85A239B38AFE2F3AC60E8D5F9CDB4E333A746DAB7C42C775C2D9C57B06A5369 51385EF949C654C730FAE30524E203173D1BD835F520CC610680918E5F489E92 D455BEDF0EB0AA0EF1ED9CC29498A2568E8C4ED8EF62D24E3933D47DE5D83146 5EF108E7F7FFE79398850F5C6D9F51534319F88A4ECA667ACFA2713A2D2F0B3B A0CEF2DCB20600D7867FA2F5A2D371E2717A1D2138A20992C5C0FF9B9994FEB1 F9E0A509F257E451B3016719A8BAC369DDD816CF27776921592CA305E6D1B9B5 7DCD05D3E04A3936411BA7B24AC5434379159D31C47C93621387421C910DA450 35444AB1A9FFDE8D53F7F7330B4E7768BBD4997D8A587D7A40DA8D1BA80FE2AE 23262E5741678AA68A08C732014C9E27B8A9BD5261BE4EB4CB6F8A281EB45316 550613E9494554963014F4D39088A55FDE64DA39C7E9305D60986635688D3798 BA1F09F8D11C3C783095AC28FBC48E36F294E69A88FE95933EF6132C2B29B7B6 F56FEF854BCC34BFCC61F7AB3BD3EA5891A3111FF5D8E270B657FBFAD7EA7A35 359AE6355A0AAFE5CBAC91016FDBA74DE2D7CE14C2EF7264717C2B8601298E5E 5CA3CAF488C7A10CF53DED28A4E24E5DAEFC1FDF1677DC47E39CDD0516CBEE60 0151CAD166DD46D814B54F360E13E0EED1F112FF813BAD4D48797DDAEBC1CE3E A62E922A5B0E867BCE63470804DC6FAD101086D9DAFEC9B38624B6F89F1E7288 58623F0FFE6780C3AA9B77C27AACFF7FEA6A81B642FA8616E58A5FBC558EBDE8 6C0C3B85CA356E4532738C17A223FC9522743AB73C27BCF4913FE037A29E5FFC D8B95ADA7009BA803E9A75CBC2AFD13E5B48539E1829ACBAEB0EE01B5A848511 23B5FB2C2A5B4D65B7CC848696B004C84DA7B337FE24F034A01FD74BA9405583 6573B7BC7B7C8DBB672C2D882196B7DC0B7F39F2E9468C6F7D304EEEBF4013B6 F084583441551675D45635524963BC5379B4062CF8DAD52F7C7FA2469814707A 181F1B8391F185E6FFF39CF6369AD3A31F6C3EFC6B4890E297860FB66B87E87D 6C30117A95A94B42393787C21ECD184079412A169129FBDC7109E9962D784334 C40D4C3E62B0528B1D00F66D1BA66A4DAE16B3563FFA550710B0634879483CD9 A58187BCE5C421DF79E3814B155FB6E5C6AB941C60B2C8013826562468A4828F 8CA3EBDC1586CDD95948F06EB613A1DD836CB3F09EC436EEEFE2CD8548477609 D05EEDBE7D5413C77D3FE3CA694DC36B4C6D6EE8A33462A77806EAD42C4925A1 F649AC9BA43C31B9A8EABC416C01FE137E2460787272738E4209D4880DD4AC2C 5C9354767E05853FA5A7F50FBA8D660F804C6D60921BD8AB111A34A31080FB81 685FB5CEB32A75CC83DAB1688E4EDD8F6B789B4298C8BCA56CB0B4A5EF948917 1B7F36CA4184B0F53CA1F77B75CA53FFAA104FBDCFA1808FE88FE01261B46C1E D5A9A067A9E52D769A18702B3AF2E71D3B3133C717511F22E3AC4E7E4D0B46C8 209B54ABDBBD703A5A469AFD7A8D8C600D76D2E83EF9685EA160402DC446ED03 1BFAE5AEF59CA20F4FC0B27CEA66B5F1CC7C81AAAC0803704319EB19A485AF7B E96188E4A685A187350B9CE9DDD605A609C80FD47A90E533BAE737B79CB869FC 19F5E86C45809FDE676823A7D69F9E72595C13F55F74E41694B9D475D12B1841 7EC0CED004CFCD93A67D810A9AAA16AD3E3EC0CDCF417EFC65F6469BDC1F4540 D5631042BF3B1E7C4E3C5DCA4FDD7EE2F94648DBE34E097D17279D2C826A464B E9120F1B741037830184AD865E115BCDFECEAD9719C457E409CA33A05644F51C CA0C11B1D742EC2637A448F699BF422E4AB2DA85508794D593AE0723F4EA793D 9B6EE853B80574BD58BC74F0425CF0FC838AC5CB9E0591EC46289C6F12C8981E 42404D261EFF49A2BD6F7B211A860F7B4140954FB6B71FE6EDFC26C11A83FDE2 88774752F90DA78089F9CA5B7673FD746B3FBA59AF3F889DF55AB29BA0F5611C 02227BC353F133873526D042958F7791AA9A0A43B73BDD634CF9F6BBFBE48A28 3E1B9CC70328A90FE5FD8775967B06EF87EE644E6D85CD6FDD32189B3EB153AB B9A4B232AD73A2DB6C8755D57CB7F52B9C9BEB52855D7F6BF7632A60F57EF488 CAB4910446C4622A4929ED5FB4EBBD55540A1C79B3C9666A497B2C3F8DC2468B AB4B8E8369C854191E3F34CD5C05EFCEB6404A25EEA6C1A0A20C70F6F2038EFA 11C9C9CA768F1A1AC58F9D33193287AEF07A0852EF0060CCF41264EAE70724EF 4E1E400BC968966B76C0C21061D1C0D72C16134DC3FF3C7072B327474880D5B7 E910661CA84FA3A9EA9D89204F22056DF5E52105FB6026211C3BD610EAF2446D 3566122E01AEB84B031C6B2A361B91EA8482A9358AA181E3556C0A7BC17E7A4C 8CF011984D3D340E9567C72360439EAA1AB8D6C8F953FF19F46C91AE249C6B33 F60F84C644FCFF1C27220C1874041269F5728E97B50B1908AFE6684E7C828C5A E1F454B97EE66A45FCCB5D10B4B04D315748455FF03CD703E565EFE35E0E3398 84582E5D9BC597B3AE4AD84AAF4C0D58EB6B2338422DE8C01CB0B3E003B10801 B07D9E7962925B0E8E6ADE325484027FD3969778FAD22A5A21C612521A60042F 711067CCC11EA4CD62A76D8F19D84D22EEC18494BCED7DDB61A8FCEA90DF1B63 EA2D1C9023D035DE85B31132D554C8D67D4C0B77201DBFACBC7CC703A8198B1E BFA9E7088752186C1E9038363B865494CD414041EBAB92C096CB79CA1FF1E0B9 7C7CEFD8DB3914F167237767FE78BD6D82E4144401502E0D20D57A42E1091EDD 405B371ADA4E39D6482B9840E9830A7A119EA1AA04BE92DFF419BB3E1000DF72 DB003F16F94BAFA9E958F2D4AA34E4F38B3C53BF9E06328904D52F244BBD6657 86933906639D70A41A294C57A949AB30B82A5AA3318E09E38779DB1188C8BC1B C50A11105ECFBD6F5AEE90BB8016B08925787777ABEA1DB0DCBCED668566A185 D616E642E943F421B1DF99D92BEBCB2E77E4692717865089BE6E1D0E2E87E3D8 37DB430E959A3473745AB454DAD07D26E097586FEA459B42A8C0D10C58953D2D AB3B105DC697210FC91E47AFFFF4A13870BCBFB12C777B7986334A0FB5B6AD39 DB436F1CC1E3B4F8DCDC633FFEBE71BBC4DB6BB332909E616385DDD5C291EBD2 75EE78458F1005D978A1B18C6364A123C4A72D6C221E099CB410D0CB8B03CE32 969484824165923BB71A9B0FD2B6AF0C7F7E8D8831B71774E85076672480C1DD B59B2E69C81FD6A492383AD89B359507A50ED872038B436DA60CFF3F9DD32A07 75A943F87021BEA8A6E86A9E22274A206AFC9E8D352ECC4E98CF4450D373A764 D3EBAD35305FF27389314DA6AC120A5C6C0F2CA7F1239612661FE7C21CE1C30B 5884E07112BD2066BD4E2881B4E09185D10BC7F3E59B87EB121B601D68DA0D13 FE16D741E4D43EB0C166A7659C90D44B09256FBDF4332DD5A499BB812821A0F7 BD2F120BA3EEF8AA2D0E2A4977478906B8397CE3745FC50D16DB4789E5AC2108 185D6EFBDA20A29C89262117F6452E1583D6C390266602855C54311F7CDE0B0B D70AD3C6878A7EFCC4A9B7008E046B371AB968C1A9A8E157B4DB5E90A5193C24 2FB72032D5C5610EB41691045E3243CE1D69E06A1BABCDC738933856CC695957 5A2321C520D9B6A6E98E1D2880CD94454C7890DF8453F0C30CEF24BB3F7518E6 A8D10285D7245C00DA78ED1087F016282182B6EB209FE0844A3D9789B7F56CF0 64000B5CD70382BD1D8744A48C401F00944FDD88F039689FB98E22717488C0C6 2565012095C3FAE7D40F7631127BAFAEF598C5C100A79EC4274A69E6F6980D09 F5F8DCB54506A4466BD7CCDB0AA0B717CF6AECEECAA42F83C61039035081D3AB 01327B3DE37428357EDD6F1C948C00CBE5F269B9BF1895CCC250F5D787FBBE33 14E2507BEA4689F3051538E03B1DCF571688EE6E91A978A0FD5C6107B8D25AF5 854E5878219DE068953244E2D5FA862F36E25E75521A7B8C80D2A69EEEDEE570 BD333F958F051E403726FF824098B4ABB0130015AC8CE831531D123F7295FE4B 29247BAF2EE65FD15C6642B5ABCFA07F40CDE915CFF4034FA2C1DDC0CA2A38E8 2C19B9A94F88799EF8790356BC3EAC45034E8E46BEBCA4627080E5364AD5439D 0A682EE119733D603AB23060DE6751AB361BC0A2BAF7D91A40B7A3F5E285BF3E 0E74154E12927D51FE744209AE1438CFB0B4539969AB739CFA690C7401ED700B 17F67A040746FAE467669EF0AC838D3099B210704D4F77702D5849F423CB72E5 FF3B006C270F0568F3AF253611FC2DAC3516F5A2006CA0BCE3A2C176C94AE98F 7CEDF634004A0A5B9919024E653BE048B489252F0C8082DE0F6647AA578ABABA 132907EC80F5441E472B1F64654C5EFC612A2C412D60731EA566FB7022F1F9A0 15E533397E6734110028C742A4D44306D72D104DE7D7BC5DDBD5CC8FA3B8623B 2E9B3C5319E1385EDBD4A80A00FF078FD2C96F9730A24DAA68A3B2F44C9E1310 86C7B9F89E0EE15E86E34E5DEF913F24793BD5DD0784DF445EFCD6121443EC13 C9DDFE23859BAAC6F0BA893C4CA0FF8C810C54737DCD99833F6A33CA6AC9A5C0 1E5C2A7AEF67DF520C1AAF72EBE79DB55130D323720A16E2D34ED9F01C5DA456 6BC83AFD988B295B634A53CE096F10FCF435CC704DAD0C3662EEF86A8E3AA1DC B46309BBC1715019414D0D9B474BA43A61DB8A0E4D89D77EC9E3581B53CAEC3E B875E46D97E9D4019B04F7C8126B11323E144957ECD756D07495D740625D1A31 8A4EAE56 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMBX12 %!PS-AdobeFont-1.1: CMBX12 1.0 %%CreationDate: 1991 Aug 20 16:34:54 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMBX12) readonly def /FamilyName (Computer Modern) readonly def /Weight (Bold) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMBX12 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-53 -251 1139 750}readonly def /UniqueID 5000769 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712 B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99 AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26 7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF 20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390 B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D 68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809 D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E 26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26 77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299 BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8 30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5 148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7B00AD58FAF645 1297991B5D01701E82228D0313FC7C66B263BC79ACDDF9AAC48A3CBF42B96E38 583E1D059953076D68148DC8B6C9527B3A74CE7DEF788A11531F44120BDF0F61 0B2F3ED94EEBCDE4ACD23834C242AA4314B9EF98E4BE72DB76EBDD0A028CEA9D B4C38C1F2D24B8FDE686832FE96204552C820E45B6BAF0C3308742AE2918CC2D 3FB13482E110131076D0210F1B4C88AA03883AA23F58CBE5F0CF45E33B3BF237 CE700970BF59D2CE52AD166E395977CF7FC85E7ACAFB78646FB6ED0BD8B0512C ACED9D44395F85A1FE0A154912CECC634CDB271B276398701EF82299EAEC90EB 800911694463D1B43A3C608DC3C853AB545ED3C01FE89685E3801586852B073C B0790CFE5CFEB3DCDC935303076F7C454DBB51A573562F78391128CF026D0ABD E1B86A9B0D76EB22E5FBE2254CB8AE9EF0E5EC591E561676BBF202A5D43B48A6 2617073BA593A39C41A6E81FC4875DFF6E7EA612DC525A0B0488A2982FD24E91 ED403F6E764EA10299854C7D665D2472C1211C90EF4363213A6CAC31677AAE12 E1F27A8E43F90F7958D5D609919A0226F2ABC671D28B318430BC70C6A9D60FD1 DFFAB7E4412C9791D21880A0A10D66E8831347555A9202EC4458706887509B59 48BD5D7004E7FD9E727EF7EE68A899F1A4D9E9C386DE67C23EC198A13108DE2B 41ADE63F5E16B7AD19804EDC22ABF9FBF2FF45DE069FD35E1A8B3E268944AC06 7653B79CB847687E96DC3CCEDD1BC3CFBA82B03F4BDFEE8FFCF64E9B315666C6 8AE4941FC1AF7926D9E286D63B72243D65938487DCAA87088A170CA7DB15163F 6753EA15C1377464061C3C368A35F64D6F411E254CD2334F9081F0D30225790E AE00DD88A1B03DB373DA7CD314017B36354CFC9C3D94310A90F9B0BA7F9472AB CA9FAF4354A7EC9DD96D6C65E0F1F1487FAD756AADF21D414A0DE14824FADC9A F611B5489E164D0DDD65F9D117267641ECBF49307D2AC5932361740FF04E9388 0D37060FAD75C39E410031CA188F9307079AB290611D7627E44068092066683E 399F7351C838546F3DF1622E58A008CE666FB868865FB8C81627D403443250F6 E488AF2D44ACC91BDF5F18A9CE97D895C1C878BEBA5B5E0B5CCFB53BE427D55E FA97B30A7599B8DC19D65AE5ABB67168D5AA6058BB4DFED40A6BD7C2DBA52EE7 3094B8F9786B8DF81EB39201B747787B228A283C7186DAE96727AB62CE30B858 D2A45BFAFA4D6C8AF643CABFF5D309D5B28656406286DEE44377AC3F4B8E90FA 4D606D87A6252CAD8A6D70FF1079A6774B45C2F3D203D17ABDAF8D81ED6C4A56 393AED6898E03541DCDB34C32A522FAA0ED41F57E00A48197CFC9E6B5C0E38FB 4B259FC29B7390A039C3899CEA40D1E45F995F4174A789AB548355CE36581200 299482F4518786CFA3F101A8063C728AEBA948B5BD4796E8C3B6B6B648B81451 37CAC0C6F50D57AAC161F34D4EA3EE48EA0081DAB3069486F5845ECA5BC26929 70AEC9B49883298246395F3E6F847B11D9E662A257C37B58676990D7D7511D44 7AC8B3AFF3AFE5CCCF5F15C7BE40728D7C3FE0F875EABE5DD48D8679C7D17566 869D8A54C2E95578FF33235D0FB017394DBAB31E9D0BF3F87A625DD5830304EC 624B8BD5456047A1E1F00AC7BF6268B672E3D71B76E9D9E09C7E3BEF48876F64 53B0EACAAB7ED476B7C77358CC5B3DB3D00DB5C9A97C4F026346B80CFEF1889E 29B236693B8E7DACD38004EC3778A0976FE834E455B1AF5DC31CC195884A22F6 87B0661B430613CA0CE9BF557044C0CEC9ABFDB39F4D1BCAF59EBD7E224B83B3 103AEF2B08E2530AF72F6E9B80B10BC42B92576F7DF40FF25830F6C73D8F6940 B900543614C663FE48FF7CEF127CD082D6DCB01D5985CD4477BEA86C985D76BD 3E2B395048C75B02C8C477B3DF5B5D32672118EDC9954436F29E3A857C22BEBD 51C472408A7202A13CA75921565156C1BD335F12A61F7A71BE6C5A56CAB7662C C6D75048E005B4E64DEC69943DAFA00E51BFC1902CC445EA4971C1893357B629 34507CE8734699BEFECA56B356059E023C2BC21AE67D2E40068ADE6AFE469F9D B4C1D8B57E978AD987533464543EB4957D536E5B85E13EDF320344A238EAD750 8F46BAC09206F3E97DA819308EC9D4125181C6839F1F5E81EEA6DF544AA9E4C6 3BDCCEA9DE44035C64161CB512827DACE0B0DECE6BA5779BC87194C030BA44E4 47FA8A6972A57A2FE914B3B72D96CAE6DDF77278F2DBEFA2685FC0FB49645974 C1A2DA14F70869125CDFD616D830AFB1001C7C6DBC2924AB938CBA08FF9016CE 2EA958F26333A0AA271AE190462CBCC843143150CCFF8B6D0E78AF8753D70DAD 1F2C4205C03059B19D454D37B939492B4AE852277C37FF8AAE0D9B1034C89B03 4A1C872DDD5F9D919E837225D38F14E1B6077285D39CB3D251FB12579864EE7F C768DEF74E65E3BAAAD43CD472B53610BED1E2098DBFB5192B7D1E527C83AA05 989B2082D2536A99D2B311D27042E9856AF75D8EEFD88E8AE9D4E3FBE028F59D 83CBC7FD58B2F11E9C745AE012F95A18AB183A11361328DBC9335D2CB77A0D61 708F307084CC5B5FDBD78ABE32839978CFDDD0AD4C4AE0EDC8471A459C94E485 A872BE035F9C38AD602E1D5606F1895F3A16C5B20409F89A89F23AD29A792253 F372B1C59488BAECD543A4585E96A12760F146460C54ED63436DFABEDF0729FE 9246446E7C2EC90A261A0D00AB88369F294BCB3674E5B0C9F9777FCBF3E7FF1F A29372A733FE21CD72DB3D7013CCE92FEDF34C045048F8518B91506863FF4130 52294594566B0299F379BB2D9F0739537908CE76B56A544CA7FA33298688F254 F7F3712A74DF15232BC6CA7A4BB766E0BA92BE0B085D27D42257978F8B615396 ACD7F7580E385BECC0BF02741E0F8E15480D9A7850DE0F3EE2B4F984BA6D42AA 4A74BE3FCA8B0C336B466533B47CD4102456EC94C627458BFB400087DA9A6C0B 0D0CE5A37C10E20645D47628F4379DCD14F2E27BD7EA974E77423A6C403429C8 BD65A5E7AF21A120E2B59E57C37B5DA6DA09A8016428EF70322B471A953C986C ADF29BE4C4590EC2F68688C299D0375CCD064F5333C3F34E3B283707EEB8C69A D35024EAFED1B217C7510642E27674A624D6A27F7FA13B314253D9828D6BE971 70F31EA9842323D3EC932085E4A14342837E1482DC04CAEDFA53DA8FB3511604 EE29BF3411C2978A554D8E76D4E6466482CB1DFB5540C8938F5E35401DE0552A 764BC9F9A67FA77AA2E43C6F6314A3F9E25103F9C25940E2ACB584FBF9515D8F BC07116EAA8FCF4DD8861962D20F3BEEDAFD2AA6923DC07126F12E8574CF1222 982AC1743DB5F79170FB01AFD98E0161FDC62363D4BACA0E8F7755E295E3C633 D09461D5C8E114F74EFC99555E3443CFB4C40886C0415C01BC3F99F384FE301F 9FE18D3E160DDC49E6BC8AE3F493D1465F8A4C55131FB8AC3460F484F8CB222F 603F7DF1D6475DCD4A0F53FCB0470A514A897D15A2098B1AE9BBE7996A8A9C53 E7B287223D497504389EFEB269C7D5B616734A1C395D232D2A2621513239EC8B 490D9D3C444A478B79748AC5FB35F6FEEBEB4DF63B91027F4503D7D923854644 AB14594731520A57AEA84E3B0FAE698AD679AB1124DEA69BB14245E2EE31B56C 717F53A22D2EA42DE2B81968159F6D2BAE4EF43419CAE8A179676C3F2F723161 7A0BAEAE4F99C724FDC17DDFB9B0AF04D3FACA2608FBED38844B2917D5E918C1 F3FFA5D7372C375CE7412E5E1752196A68FD3C7B0D96C5578D7F58A3EA3E694C 8F8DE45DC258216B0D65C81DF7C84427FCC0129C4769B6F5F617335417970948 499E7275A240F2219193C530104986471D739BE052A2F202BE04F3C17964FD30 D462FF57454631C90D61CB935DF4FF68DA1337C3B011A4FFCFA6117D44C991A8 6A096CC5D2B5E81C58BB22803CD2EE19C972BC071E0D9C84C33CD57D4179C709 368787DB83C54268E1DB8E5D6F84B09B9C6379D367574A32B9A7BD7EA758BBCA 350EC9EF33F01F85D54C5DADD6044BC38B5AAB78E2A54610B1A43C5908D0792F 63DCD332AFBCB6590F5F605CCE0566E285DDD523A4563AC0D70DFD780F7B7EF0 2650C0D10391B2E0DECA934E2FEA98EFC8C5E4779907AB60BA3786713FD1A4A3 BAE044A904C32D421DFE81062E1051FEDC2A655D8A37F1B4CB41E13F00C1835E DF61D597EEE3B43FEB1E2672D06087E73926D456D2285AF78AFBB2AB8940EA33 4B2D4D5F6DAB081F9893C5EB9913F2DE18060776C96C90C3470B0F91BA918952 4715167D4450C724D8F48B496843084E38B8F7D0EDD5C2D3B343FEDF35DB673C E23733C7A6477A0FAAB4D76A39B5A57B025042FA97AE262FDC541DB746DDDFD8 04BD6CA5B2D025325A45167BBF44C8003579D14F069F46A2A121277A6D12DAD3 B16DAAF0A31EAF6927D2F3C5B7A1A38C9883B7A8843864B17CFBA5D95FCB4483 B88AF6D2BD0A896A3806BF386BC6D74D1C634DDA49A90B5A9D4B08297CD71DF0 8049A746951798267520559CEA50A0379E43BFF00C8CD95CD829FFB2C3404B0A 03DDE09AA03D1E0F903C4905C149AB2A3BF9287A52BB1D8601CAF50AC849F414 41118B582E69654587453B6508503BC3494D165CDB249F79BE23CAECB5524E37 626C08F0DF666743990A847068B89CA282A7A67505A58EB3DE6C56711C1C381F 4C73849407656B0361B17817B4834F981824F248D452B1CDEA41A364D7AA15B6 DDE3DB44B5AF2B147F8177CE151B6FA8091EDA8E0B7341A9A8D9DEB6ED987AD0 202EC811A96F2D75AC1C1A1410D1B5C310F2D3DB59342D3601F6510E777B6E37 B3E71BE1557C4909CCD61851DD43C6D2BC2E291D1D36CAA2EDF379458F704792 54D34B915D91E2A708BAD4F40DA7B927E3D3B5C6B601120636F20655999478BC CE60CD2D0244DC5BD1EC7B2A5E0D4BCFDDB675549FB19C371E508BFDD69C95D7 7E7F70844C8B6B4A8D41FE751C845C918655BD999FB91010C78879D73CE5152E B06220AF3B580A4CD45CF7D003FA8AB9559EC7161C2069BE3C864EECC8B3B203 BD753A44D36D32061646C56003AC1112A6E2818713533D087ADEA73D209D60C7 1EF96BC3C792E1E0CEAA218675AF753C1F7160B865D9AE82FF347746AB26979E 9ED0B939DBEE1EEBCAC572BB1C38C036F1C6D12716F7850EE5C84DAA22C7B253 95821E43B6D716509101B3783903E34E4B8F4E6189DA059623A6724204172300 23EEFAA40001402AABADC04F66E9E3E3742E27B5E0F126291206C3A0FF2DED64 740B8ECFA091092FCA932DFD16C5971C918299A69D41EA83E81FF3FC22BB89FE B4B822B7AD8C027DD2EFE2860712FB609FDA395F9CC2557117FC84893419272C E73C0142B6A59A113FA64BFB019AB72F4A669594368B0D711AE13C1532E70FC4 A3AD9557B4FA4BE1113B18A050BC8A71C7CEEF1B28445319CB3D1376BA73519C D37569A34598744F091301B88966A9624B8EF94C216974D200DDB55842D42560 CEFDE1D36D417E728CBE39734707F99FBE7D76B0C08074F70DFCD3E44B204C3E 316CBBDE3356BB28EBC008264FB11B74EFBCF44B76587871CDFB0CD6B718A4A7 DD64ACC93E39BC58C53587F33DACE1599DEDBC60668F20B07CF327247134AAA8 29F6A490BC8FA5C682373ABE108B68D54D6312388E0B04A0F518AEF0C53C5517 FBDEB91F36CA1C000E55247CDC3B72EEC9CBD9381450C24CD71A2BA299FCD2D4 0B95D46B116141644EA96D18310914315DFC209208B0AA9D74F871C47A3079A0 74624D9884C33B696EB101F3050A91176A1A146FB9FE735E2B03FD36620D29D4 BC9FF89C01C8CF8D9CCD669AE20AD089F7245976C97F686C38F33B1D587F60AE 2787AA5306378BC30FF335492679399DBA5C54CA0FC732B2D0E7780E8E3D2751 0C6FEE3BF7A2B512AA1F14F98D7BA8D8F782C1B443A6047AB3E95114EBBD3DA8 218377CBB9C232E395012635ACBC966BCDD2114EA60977CF7C4E6ACBCD64E18D B01A4C9682B65340AFCBB345ED0C6CDDA1B92629008607E327341C36A08EA593 8C19024B48D26D51B5C25971921CC841AB4C9D193F0B80C2FF872834C004B74C 5B8ED7758B4E75AC621DE891B7475A1290482AAD2CEFC23FA8A88EA62376DB6E 4C77E12C64D4CB0D6683EB4E53016EC45392A114AC4CC27FA3428E157737160D B0746DA600BAAD41EB8C428814E08E03EEFED4B0A9463408632DC89CCC2B092E B05272C3EE59E0AC78B3C87AABA7AC80447AE3857D75F38EB3DA3B30566EEC66 5803FAE68266DA8FDDD06768508A90BEB186984608425F0BD3EB2271076374B6 B33130CA7010638EAF70731BF9A5B3E9200FE575CECBC5ADC3F8CEF87E9907A3 4856198C918F958FE13BD32FD67FB4B2C4F0FB20A15FA83535A044CB8B60C420 7C2E393A3CD5BC900F61BD076210F147562113848933DA2CF94C5422383653EA 7C4C0B84A44A7B94D6133005A63F87313448451911E1523EFB538C9D9200914E 42E82D3B24310AF02F12767A947089771B58709ADD286A29507D9EDA85D3B889 F4D68DC10DDFC8E31D44672ABA818F18247AB591B0F7657F37F61C6172653EC0 09E4FA2D4929D7BB495264F74BF0433E6CD9DBFFDCCD5B1663B87DF50FDF0FD2 CD58D7F057B8EF0729ABCBF4B4CB0B86096232FE4ADADDC26AD77611317DA7E7 0C098D6DF7FEB89F547D4686107A1B64496B8465ABAEC3B8F0D8BC0E346B3A0C 1D618161D28FE958CBC48E6E8E87EB3663C1DBE96C9456D2D45438567D778BEE B251F55F7C93BEAD48307F0BDC17003106F2AFBBA39BBB75F2A49685D9DBA4BC 48878E848B5184C982B76A1EC4907B7B5F2D98EE81690B735A80471D263BE8FF B0537C877DFF3296171D57BA08CEF76C8349058B86BD40CF21F07112EEE710DC B2957E0A6623F69E63B6FF655389B8E1A9879CD224878C80C387ADAF1783034C 90F615422D015433656D3796109C410F04FBEAFBD04DDBFE686FD8CFCB669B9A 3574508B63E2323EEEC0771CA8E6283CE9946DDEB99C669F1642FC87DC924AA6 FC35674582B6600FBE199D60A3F737072288DAE95EC2A8B7301C8A1023E6FCD6 4490B4D3F2F9492B58E2F0ACA9B4B15C42FF7B9C1E6E4EB71A738A99206E2E68 F6814C127C3B6B5DC7DE32DE75B35718A561401A2F6446343609DF5DF308BB1D E8B9CD0E8BCD4A0F411CDD0108B0B70A4350195673CBC821B740B3995D0F0F0C DE1AAFCBF4E43E1C42C32CE9B9CE6675F6AF5FE1E9E277BD6FAB6B0F82C8DC88 975D113BFF9E81A0511418EDA0260757CDCD19417E71E702A9820E37F8FAADA9 847742BA8DD44C8484FBF4276C82142CE20499 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR8 %!PS-AdobeFont-1.1: CMR8 1.0 %%CreationDate: 1991 Aug 20 16:39:40 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR8 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-36 -250 1070 750}readonly def /UniqueID 5000791 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C 68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361 3645B82392D5CAE11A7CB49D7E2E82DCD485CBA1772CE422BB1D7283AD675B65 48A7EA0069A883EC1DAA3E1F9ECE7586D6CF0A128CD557C7E5D7AA3EA97EBAD3 9619D1BFCF4A6D64768741EDEA0A5B0EFBBF347CDCBE2E03D756967A16B613DB 0FC45FA2A3312E0C46A5FD0466AB097C58FFEEC40601B8395E52775D0AFCD7DB 8AB317333110531E5C44A4CB4B5ACD571A1A60960B15E450948A5EEA14DD330F EA209265DB8E1A1FC80DCD3860323FD26C113B041A88C88A21655878680A4466 FA10403D24BB97152A49B842C180E4D258C9D48F21D057782D90623116830BA3 9902B3C5F2F2DD01433B0D7099C07DBDE268D0FFED5169BCD03D48B2F058AD62 D8678C626DC7A3F352152C99BA963EF95F8AD11DB8B0D351210A17E4C2C55AD8 9EB64172935D3C20A398F3EEEEC31551966A7438EF3FEE422C6D4E05337620D5 ACC7B52BED984BFAAD36EF9D20748B05D07BE4414A63975125D272FAD83F76E6 10FFF8363014BE526D580873C5A42B70FA911EC7B86905F13AFE55EB0273F582 83158793B8CC296B8DE1DCCF1250FD57CB0E035C7EDA3B0092ED940D37A05493 2EC54E09B984FCA4AB7D2EA182BCF1263AA244B07EC0EA901C077A059F709F30 4384CB5FA748F2054FAD9A7A43D4EA427918BD414F766531136B60C3477C6632 BEFE3897B58C19276A301926C2AEF2756B367319772C9B201C49B4D935A8267B 041D6F1783B6AEA4DAC4F5B3507D7032AA640AAB12E343A4E9BDCF419C04A721 3888B25AF4E293AACED9A6BDC78E61DA1C424C6503CC1885F762BFC6C8AAF00A 6E3D63422CB0D13393D3A4EA0F7E39EE0E8B2AB66BCCFC58F38D0B786B14DE75 E7280E0FB6C0AACA8399118615D264E64DE90A05740A04854EAB9678B4B4CE0E 3143CAA692C1CC3FD62DF44D0C4F82524BEF58C9DF7A373C1C54DED11C2F93FC CB46F3B47F96F06EC598064E2B72D2CFFFABB1D5ABC1FF308B447D7CCDE6FCF4 6D5AFE2D7003F20563C066C08C9DBB08FFE86BC40A0AFE52BA2D24C77F004982 7C4FAFCC2F253B8E414272579DC6445E1E8388C38BD34AB2ABD413A06B1A03F2 5762639D6029ABC425CA0FB69EC6B313B22898AD39A92FC492B0F39B8B346431 38759AA6CECD4766506DDF7AAF8F0E36A05D1BD5C0364679478AA0E1DAB30202 430A251024924BB4CA3B9C30BFECABA665243F48D2612E5E95DABD497EDF0790 879B7D02941FBC0A941C52E8836578E532E51A9DA116D78C2F700445E15B8F60 D73F15B794F97B2BEEBF585FB8161D36FD02A7A46F0B470B66E8E2E1155E3B7C 9BCAAC18FB7B94C374238B435A10F44C8CDE80B6C8E0AE06DD18DFD30B5AB42D 827BEBB979426CAF89459C6D25C1EA68EA7AB8FAA3A09B8BA9D4F871D8904BBF ED2E6372EB96FCC8790585BDF8F2962E4E2E0CC00C6315789987436ED3B2F465 C2959378C50C2CD69AA49398866631B80BA5C02171A7AAD28438F495421193A9 55F196C06C04B4623EB92194BD88BEB4A891D1D2D8DE04E00902FAE844BDB44F 47DA8F0B366BDCAD33B2EC685BFAC2E9EFC42BEB8DEB89CAF99F8F8A4252A0F3 087EA01D6BFD2CED29DC1D2B36629A6310051305F59C278D47A693DE06BC2EEA 50B9D6B18048C20DBF22B2D18453226E68AABE9964FF0BE777B3864C6B41D19A 5D162272693E4D77CE7FB05E1DB9481DBF3BF0F5A909643A2EAF009B79CA6E65 ED79BB4233D7FC1564C88349A5AB1204AD008D049C08DCAE91E210005B99C1A0 CF967C88FDFADE0F83C1A3BB4DA5AD1480C4A8ABAA7DD4F17A130B810E38E6CC 0BDD7E0E1E82E9A9EFFB514869254A85416C74BBB5B1F8D0B9760777446AE310 6BBB962E30048C90519C2AB1C57F38EB53BC61A953EE66325CA901B95793B432 E37747C91864FC56BC4B567C0BEE48F86E1B761112D1ED25F8C538F401125D74 DC86C1C1455CD0FA47883E9217A8EB576CEDCAB1651310CD71C80DE77207D8CD 7D87E83D7FBE461B0376AA75FFFD7E725A67C846D164935D3FC7C33FD0D161F1 B7F1E749FCB4B74F9B2B7F4824366B8A62757C9FEFAFF4AFB22502247FB26F8F 2DF28D29E84DD6244E724A832ED8D214752FE56D06D1ABCC2435FB24143DA554 1D45A170C72D90D650EC503F46144C3B6D29D76F982129C72973938C1120FBE3 A44B66AEE846E3BB6672EFCD90411C66890FED26A22EE73497BFC56E6BF9F3CD E4354AA19ED2C0DEC4151825CCF348664EBA2E3E3A972DC7C9C5AA5B89FC91B7 43F727E93D5A16FC53F23713E6D9CC45BC243893A148F5ECF0BF6D4671E9DF09 0F17513C06657E8E351CDD9904978A26F259F1EB4A95E24399C0E2166B8ECE14 8A8866D703C7FC6AF09F126F6B47F40C4B0CA014C5B9F097C1A4BFB9BB463307 989A160CA98DF650358D6BBF4DB14C886AC660FB1A56EB0E9652B7D9C63D6D7F C31FC46082AD620589DFE1553442436442CCA7EB72210BB826148D63E7048063 69F065CA55E8BDFCC3525470BE0F92F7573766D921A8C0F6968375514537D6FE 7327606C70F23C50BDAF6C67BF99C6EAF0712A49ECD79F25B228E3227B092A3C 3F52E91C949FEF2B0EBA64FB8B00A5736E54A6826DB6FB85D5277ED46344B50F F67BDA4EBD299FE30EF729286B03B728285741EFB9D9EB762CE4BB82D14B41D1 82CE73545BD6EC3FBBE94E6D48AB60924AEE6D2828FA9E054D2946526F4B39B0 A9E77A72CF7A80B32E5D1E8C3FBB70E948328FEDD15A53B3CD4BAD6E12A6E070 F705643B8D4A5BF68D00A645B529182FECAB193C2D138395D2FB2B5C7703D780 80E22BBC620080C4E86F04C7491AB27A9E3AB45A3367E14B3A6C26231F757428 0831F6EB58E19C3BC16329A2E065EE1C45CC20B3B774D7EDADEFB9D9E2138F91 9C3E41E3505EF990742F395113B56B655B879A8C4BB012292E404E2D868795AE C0C4333FCC933C5EC45E0CFFA8F66F177939AEEE5FD7965E3DCDE6DC3860926E 95FF60FCA4B5D346C2A3152322166038C8732D2E32DCF30891DC67FC400F7006 59EF1C8CE082F9ECEE1FD1723ADDD58120053C2CFCFA079BE5AB78F5A0523F07 2C15273EEA4BF63693BBB0A729E979CA8AB7B0C481A52D7C39E85CA06A1DBF3A C106E063E5EA3D99BB4D99C631A5647C11290CCDE943C0922B9B2DF86BA96C89 66940046969AD7543D0DA4F68DF65612B47DA68CDD55CB43CD5D251E0EC1DEE6 49C29129EC68CF5C28E1A6C079E2F8ABB8E146596844E147B78A088086339423 35F4E6627FFDA1ACCC0D71118E09BD18DFF80AC64FADF1085E829D36557111FD 20280AD36B655E2535BE0A7CA660CA5957D1D88FD669D13CCC319D6B3E34B0E2 B7369B28D33ADA74DB6E68DE3654CC4829F02F6913027B92862035F80292FAE3 8F0923D5E24ECA9C3C6520DF7CEC8DACD0A27A73ACBB2C4FFF2E12F76C129B7F 1C8D52E41DB3F19B55C9CC7845042E47E15CFBE90296FEAA5F31256AA3425B0F A2AC0A3EEC8C8C871F6BCC89E19A5A960E8B3E0E5EA81DF3BAD08AA2FFDEE13E 74B81ECEE9CBEBDDF344A0B926E0E48C2D6B079554462E900C6EF28854B2664C BE170BD551AC1333139E9A1794BCB0FB1F5F55C83A4FA9D0272C741898D0B76F 343CD1FB7B83AF53CFA528D9E00C06A7278873209943705A2E5DB13DE7BA496C A39F6972F287E9E7E6779A56132C5BD68399510B33B3A858C4F382FFCF6C7361 5EA33770E00DBC6328358668E16B79EED96E20BAD17EFCE4ABDE489D0167AB3B F8B4E63662B926E5FAEAE8606C92C162213323A68680BBE88F74F64EA97AB3BE 4F6E72FDCF7CD14F40FAC7821A88C8DEF49A92376825565E8C7C4E0BCF45BA04 CBB8015001EAB4CEE0180C38452E39402EC6F00E140153090BB246E635B9BF40 231F8E13D0118B3B383951791E3C2A343A17064CF5D01F59B7F8F626A766C258 8EF4709E5A5B582345B336A67A387564A707EE48ACF1B459672CCAE126D17B7A 343AD1C4E3387DC8591393DDBFE1314B597C2C5BE2E38E137F0E3C6B2FEEA883 3A0FEEA5FEFDD7EE0DDC07AF5381283CD40D5E3F05465358341485270853FCDD 73380650ABC253E664B72D5EDAD589FD741A2CE1095E388CD18F443EED96206D 58ACFB09AB41CBE20814C2CA3035DDB046FFDC836C229983ED2814FAF8D2E979 AD9BB5E9B065B83970DF68F9605034147B5372EBC8DFA96FF3B1F4721A15CD7B B37506B8C2A73A3DC30E55AF4A5BBF8ACB5DA9DF9E5BC37310803B371DEFB0E0 B06DCDBFAAE29AA1203019500B5C8DBCF9ACD3236B3FD235C6DB7D580E81BD76 5FED87C77D81A41B19901E9755D29160B68F5F34E48705C7FED6285776351735 3DD0892292F7C694B07A3F4FF39D0E59021E4D607AE4D4C6D9134ACAA7388C27 B1073208011EBEE611B8BCE5F5E5D4D21CF6C87EC58416D62F1D63AD528AC9FD D89DFB56B2E06F4F74D4C158B6CC7E698266A6EB767C038417A651BC7B3E0865 565A94DF80180B8B4E21A64F3D09B843827643A4046C139C344A8E6427DCAD2C 329EA9B4B58354D734395BFDBC14138D29FA305938C841CCB70B9095A6228A53 252163C13F82D116E417E0DF02D7D88C4F0F94FACE4305328865571E5736AD96 25D5ECCE05D5C76343FD55DB949B06678902B29765D6ABA0241F3218040DF384 F5DE9629993ABB9DC4D6DCED908741FE963FB78B02004787EF6A2BBBAB8B902A 97AC8BDCCF03A09A21F5B010133B2CE1114C926033FDE1C16CA9AF0E7E474905 1157B358704286FAEABEBFA9787BAA196AB2DAEC93CABB04289958E4C43D7BA1 6D2160923787218CD0CFF0793747AB2347B657E6FCB946251C6E1A18F0120CEB D15A439D879B32D12022C06A4E420D470B493E68EDFA043E15D098923E720559 AF3DF3043783305F7AED5F40BFF62558FA9CE1F7C4FDAAA237D4DC0B72016A33 29FBF2ADA6C308EBBD245073B0D6717DFFF3D2C2556B0E05169EB91F3DF95E23 35A562C4B0993D99D0CC82C61D450EBFA8F75AB8F0FF4427356CFCF1286FA2FC 3BA2DFC625AC926DB245FB6575D8C4C4C9C1F06F8659E602370622CE1B43C50C 937D2270BDC4F8B7519DA2539C667A339A72FEB7E368A98553EF4933076FF276 5E826467CEBB0E6B8CF1EB23E9AB93F4D4B79DF8CEFDE0CC77277844EA36EF89 48A24200108956AFA11DB66B626D91D568C1989D4F121D28B1C607EC9C76DB62 E8914AAC5E0934551BF16CD41169DDE3BC16585BFC7E677C66CA44743C3D76FA 71FC3FAD07D0CBD68353F535673497FFEE691C3282D091F5370B82D96B430D5C 5D1D6549CD83D0B28E30603E014E0BB2FC7A96D3F7731FF88560461439734DD7 CB7C2F9F266CFC1072292EAFC6447DF4C831C92EE3B4145AABFCA1477140174A 9C8B2CA6F26E581B23D490201E1F96B740AF4BF98B55BEB1C69709074AD4E3D5 0D564FE61C9A0EFC1B0F56A409803C1DFCF9508DC10F14DDD495D5702E1D87DD 0F41A55F9FDC34ED3DD9F82CBF88482FEC64A22A0E660403E3843E194459516E DABB722B4CC56A2810725291CEFE412C14EBD55E4F143E33808A721EAD20F806 575531A4F666A555497F287D6F963C74DB2A709B2F0F2F2EE6670C06962FD848 DC13EEF6CF0DD6C888B6122C1A6419CCC4EC8A7BF4CF6F3A7A70B0AAB3CEDE37 DFE0D516CDDB2C6EB0593A02F4169F303D81D2086D6E9D72FB4269FCFC848B32 86805E2BC50D3EB9FCF250A8F06E3A78627A2F9F9FBA6C37811D4D74FAFEF414 689AAE5963BCBEBC071ED0AE1C4394DB0ACF151CEC8CCE9DD8B3CD68BA63103F 97C09B4FA70C1752C8B0A82DF311829387BA160CB44697C040A2ECC8C6C876FF 42E3337A879BFE0B37FC87230350C222C772180F97F870F9F7C9C09BD6F7A327 3C0B54C956A5ABFD2AC0CBE22576A2A7FD24D449FCE3E19B44292CC2C65D6165 512FEAF4CF7337A96C70E8DA86208187904D04B888BD342D59725D6AF8C611CC C8623E573D49EB602B90F1254EC3CDBADF71F9E7CF8AE2C1140AEB8CD1EBD1D2 3BE7523CDB5441AF3B1EF1015F1CE1380F98D2365EA99DA5176E3F750733E8F4 CBB43E500E84900480B06E8C2F52DBB6922799DCD603C3D5A600537D3D06B53B DAA8D1AA739C8E6A9E91202E5E36B204787CB9BB690B5064B76704493B206624 EFEC5B35192C7919D9107A5C576B798208807A7E3A9B133F1610FBB026B0278A 6C1F2A9C863EDAB17FF8080DC7AE20A8C43BE91BB210F13B65EE7E4EC04A6C54 ADE39FEE4D902B22192808229E3CD2EF44776BB7BB3705F808F1A6E90CFA9793 BC982CB2D1DCF2513C93C78F2A39F0FDAC8D9EBFD0F6F1E556D8A63A78A644E0 7768A125AA5FC8DA9952E29200353489406C7244D8463E7C1AA1AD58E1EE92DF 48FEF606A4AD9E76BD1AC4A7FB3319466D0264E1368BE643AC2301CDA1B4E7B5 E592B73E5C94FAB8010E679BDF96BC6321E696FFD3226FC343D4E1F9538DBDEE 7BE661BAD276876834D0B029420B21E2F5B04F7811DE831FFC742D3F88218211 678D1B0CD8F036D55AFDF4FD03E813DDE141BB041767420D72B87646B4B3B03C 543F999CBD03B8D344CB309069E21BF5FF6D7DE23D92B4809A4B12F5C8942992 AAFFD142C35D130FF8063373E9901AF92F58DF724B56310D2A37F64B05899687 7B17F4A4F0C67A58806E48B610A789A28F1C7FAE5A5F4A10045CBDDC71B61111 86A095F5305F0EB5E2653572241BD602E1DF0321A7F3B942EEA5FCB299C7AA17 FD4F04D6E12AB6596F4F2A7993ABC4413A3DC7D7DEDBFB50C81B3348D152C749 98F8ACB7F00846C13A1144A6C736335BBFBB4E7E732037339E0C481521716485 9A939E43136E55EA34186958C6D5D281B0CDFF11CEAE36DF2DAE3D460B92A7B9 B01F784BA9A20374F2DDB863CFE7ED963CDF9AA7BF794D4DA4087639FF7DE304 2B19ED80EE89765C0A7A35AD1A2FC42E410F0A65315AE6DA5EFB02D85E39FEC1 62DBE799633BB9C1858FD5C3640E063A4C865D7BEAC939F97B9B6A5126B6ACFF B4B08B439AA5BAB0E1A6B3541533E68876452DBD9054CA87BE449A7037CB78F7 B982F79FA5FD3F7B9D4FD19DCB7DB973237B9E734A7B28ED7753577535B4B8BE E78324CDEFAD49AAD938AEAEC0B57B31AE59A50F20B1DB3A0FD28D7E832F1357 93E155245462E25CFEFC18CEF7A1280FDA32C48B580D8BDDB6EFF15A17E4D136 E6E3399FFF9780D7B50BD88A81FE22A8759B5864088E281E94D9AE578AD8E2FE EF06982174355F73E162934DE5F67E2D2FEAA16CC275B78579EB0F2061EC28E0 F8450982F122A4430FB9E867C302E16A4105F82B398DC10ADC792DD7B52D40A4 7BFFB02D5A6182315D8F6F55C09FA1DE04376A51D55D7FAE898D1AF4591A2788 5684746B0771648BA77B8626E595FBC5A3D9A940F1D07A78FC377957DFB6C7EB 27767AF46563CA503799528FFBC88B6CBB026BD1D71CAF13E9C71529B4895CBD 0B35984DF4C7CEE6A4368B5A45FAED067987FBE3D4795ED697932D8CAF9F961E 5A589D46E479AEC1395673D96C777DEACB6D39CB6C22E6D1B9A53A13741AEA80 23DBC617C985529724104EDDC5FE4E88D890CD306712120AA705A0229277700D 55791C13C3D7C2562A34CE619E11269674BDAB7BCAA1B1C92E20F4B862694A5D 8471E1E8255C0F1D1823E19341F1947E06C05947CC3320BD8340E937EA12CDB7 D2929735664C367C2139B6B86C317E9C9BF2A4DEDBB4F056CF7FDD7D900BF60F 663F8A75A025DA54AF0CB1B2645913727AA06B70D1C2C057CE6480B6C18EA51C ECD5BF1BC0294580B6AB62E68FD45F77752B2DCC99C80AF1406ADEF13C4D5F85 21784E302627A5C6EEB90FE5FB99CF07DE94689151DC1DBAA8F8D40A898BAA32 8A52546EF18B090E4E1A2B643D140DA2374CCE813812A7023800DE0AC3D42BB7 370F4E7706FACE6FAC8207468EDA092186446C47F3BCD3A23AE647C9A17D5927 8CE36AEE79454526BA0ADD82EC561BAE6620F983CDC45CDC1ED06EDFD9094B1F DA00E7972B3046397694B00DA0BA171D014AD727AA3F615E4C8BAADC6A801BCF B967F255D9FF637C82A3A830916EBEEADC6F9DFCD2E72787A640E67676255767 8F54B5405F38850DCAC5F2E704961B54498CE3FBB910DD7306D60EBFC23431A4 D47B958C501B91EC5BD225B5F4849DE85EE2B8558AE287885A2B71B0000D0A1A D6AB01A5A62C994FB1E6F84DDE4DE9B00C9622ABAA493BB4A62C27DFE4DDE39B 6F62695F459CC651D1CD3A68511D00440F7023A3C2C70ED1D66C0C217305800F C28558673B016AF00AC5207F698ECB7BFBA2ADBA9AFC1DE814D66A211B86B0FA CBB528CC9CDB3D550FA57367BFC3AF051110A4935ED94B901E12DAAB2DD484C3 BBB0DF8DF7D5EC5E0DC3A147CBA866F227E662EEBB769B94A0A532FE350599DD A57C12BCBCF66B52FE005ACA16294E697D20C5660EB98D99B8E00385B3EE0BF4 BFD414D2172528C82904E3F1AE713E51968EFF2A2498052C8ACB2B0BED013817 7F36AE0AD22149471FBF5CF8D3C0E5F0B57E4B01AFC45B0AA34EE509E28CF88B EAEB7CC6E43DE08282B70ED359F1DC46F07EDE1BE4BED10750184C0C421E6FDB B2E300F9C41E1167B6281E70EDE5F53467493537DF66C7BFFDAA539C4F028A0C 904604FAF5D4ABE4E39D7EE92B1FF8C75B71BD150F137722B85718ED80FF251F 74EE7372A141479BA37C2EE484CC6E6B2B1185776D0B7CD062FBCE0B0D7960A4 CF8D7FBC8854DCB613048BD31EC2FE0EC9EF90A7AB4271177DB8B8237DE9108E E1B4DAA3AA5B8068ED2E9CB2A1BC9524D5058BC26C531626D21801139950A734 0B564AA34162FEABD4D68609AD531EC699134ACE0A4B76872F51DF91B8AF86FA 17937737EEF89199BF3AF1F7CD77C567E144CDA617A11E7175DE1B29E8187A22 0EEECD9C65D355FE09F04376129BD0D15AE89E10B06762D2ECAA08A5F19899AD BD3A37D42C77A2A5C0CE2CFD8360B669679A0203AED6CB0DB0D8562A37B670FB 554715C46402ACBDD00A935D40FA0951846D7FE7A251D31AEAA408D9DCA81EB7 C1678B26F228A69B1139BF166BB1A1A9FF89315C726B28B36FC9D84B4B431E2C FEF16F592D52BB54B9992290A0B210FA5779665C8DCBE48955C5467054872E9E 2874C5A175427A35C9E8B4B4277D70177B8E4735171EEC3221105260CF162219 172A018CADA4BF0E3AB1331A015C7824E39E5FE3A688BA0E0870EB501A126792 96C88EE5EDE0B23A118A4D0C149226465AFB7B4673F82A7618BDEB74B92DE403 05B11124C8121192E5834A65F3EAA521F17570237AF11C39DA5434C5E54BE434 1516A9FF1818B930714BFCC343439A849B3975073C447023D9566300F249D341 BDC3D6A4B4E8780E8D7CF04483EC77354752879E09E89D1B7660B71451A95E8B 8C815F7B3A7734F8F490851499E3DC091D2B400A406B2303EE6DADDFD6B7277E 00207C4B12836114E6DAA684A7C374340DD7D84C964B35BA364DD83FF4F82DD9 BF6D005250A713B3207C9A5920E57288250B05400AC339A856284C821F4B34C4 BBE7C30C1D91DCEC2B352283DC8678BDCB4DC9BF596EA656864B46E8F69E2612 722708DBA3FDC581162CB63A2B26B94C448032613A1629EF6ABE228AA8F06996 68FA7FDD0230302ABF42637B635AE91DF6A9C68EE3D10B85BDCD8A5E2232C4BC 81A486D49D8FFCDF1E9451E226BBC51F950741077A1AA6544FD281782E5C2EF0 FDA1E69ABB4C718E401AEBC2D707D00ED1D4AC55BFBA48CE1E25F0B21495A9B1 B4F17E3A0BAA38CA1D5952758773ACA8E0EFE814026BF79C335F5331E8868D89 F81C98A2513AD8FB38101D76D6BF0F367D35 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR6 %!PS-AdobeFont-1.1: CMR6 1.0 %%CreationDate: 1991 Aug 20 16:39:02 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR6 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-20 -250 1193 750}readonly def /UniqueID 5000789 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C 68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361 3645B82392D5CAE11A7CB49D7E2E82DCD485CBA17D1AFFF95F4224CF7ECEE45C BFB7C8C77C22A01C345078D28D3ECBF804CDC2FE5025FA0D05CCC5EFC0C4F87E CBED13DDDF8F34E404F471C6DD2E43331D73E89BBC71E7BF889F6293793FEF5A C9DD3792F032E37A364C70914843F7AA314413D022AE3238730B420A7E9D0CF5 D0E24F501451F9CDECE10AF7E14FF15C4F12F3FCA47DD9CD3C7AEA8D1551017D 23131C09ED104C052054520268A4FA3C6338BA6CF14C3DE3BAF2EA35296EE3D8 D6496277E11DFF6076FE64C8A8C3419FA774473D63223FFA41CBAE609C3D976B 93DFB4079ADC7C4EF07303F93808DDA9F651F61BCCF79555059A44CBAF84A711 6D98083CEF58230D54AD486C74C4A257FC703ACF918219D0A597A5F680B606E4 EF94ADF8BF91A5096A806DB64EC96636A98397D22A74932EB7346A9C4B5EE953 CB3C80AA634BFC28AA938C704BDA8DC4D13551CCFE2B2784BE8BF54502EBA9AF D49B79237B9C56310550BC30E9108BB06EAC755D6AA4E688EFE2A0AAB17F20FE 00CD0BFF1B9CB6BDA0FA3A29A3117388B6686657A150CE6421FD5D420F4F7FB5 B0DAA1BA19D638676E9CF159AC7325EF17B9F74E082BEF75E10A31C7011C0FFA 99B797CE549B5C45238DD0FADD6B99D233AC69282DF0D91EA2DBD08CE0083904 A6D968D5AE3BD159D01BDFF42D16111BC0A517C66B43972080D9DD4F3B9AE7FB 11B035CE715C1218B2D779761D8D7E9DEBE277531BD58F313EBD27E33BEF9DC5 50C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB67C3039A0F BF0BA4B455D035FF3126F33A4DF59FF96752CF58DC0863924F6042B14DC2DEE4 099CAA764A8EFFEB78F7FFD276F0928BA32624C3A69ACEB8777A461298B201D3 4DA271476B8AC8966668D4E28A6FBA952F6D295AA80CC09B0CFD6BE840703B07 7ED93999EB5630C2C7CD9BA683ED457D1341C3AA702B5FA8593DFB1368476E2B 504F45CAC36A6CF2C977A321DA231787E107EDCC25D3B7F43EDE2D4509506CD8 9B49582F1B3B27F90CD5D26DDEEDBCF5256EEFAB4D213BBDF39459651EBECBB8 63E0EF9989D220DE90A05C8D0BDCB20CF1C8FCD4E049E36EBCAC5C1A73F2261A 43229BF33B2E0B45B21A6B97016BC81AEAE19E629B6B35AE22440EAD80C8E56A 1DE751148B75169C1C356528BEAA4B492499F6A5AF19EF591F0810D974F0A69B FEEE21A5209AD604F42B3DC8B0479F1371CD22BE066B31077723ACF017DEB2FD 8437D985CF414CBE6BA6F926172BE1F2E2329A33347557EA37F7B0BA01846172 2DA149EAC55DC113D9A3B4E9440F37F146EA597E5DF412F214028C97482FD9DA 63018D551E75C661F4DCE7F9761CAF86A18D5C0EB7CB89156A63FD6F9C113354 4963391BF7822FC06F2E39D4FECEE2F098E0DF2E0992C775AFE3B6C044E66307 208DBB 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR7 %!PS-AdobeFont-1.1: CMR7 1.0 %%CreationDate: 1991 Aug 20 16:39:21 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR7) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR7 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-27 -250 1122 750}readonly def /UniqueID 5000790 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6CC3F1E9AE32F234EB60FE7D E34995B1ACFF52428EA20C8ED4FD73E3935CEBD40E0EAD70C0887A451E1B1AC8 47AEDE4191CCDB8B61345FD070FD30C4F375D8418DDD454729A251B3F61DAE7C 8882384282FDD6102AE8EEFEDE6447576AFA181F27A48216A9CAD730561469E4 78B286F22328F2AE84EF183DE4119C402771A249AAC1FA5435690A28D1B47486 1060C8000D3FE1BF45133CF847A24B4F8464A63CEA01EC84AA22FD005E74847E 01426B6890951A7DD1F50A5F3285E1F958F11FC7F00EE26FEE7C63998EA1328B C9841C57C80946D2C2FC81346249A664ECFB08A2CE075036CEA7359FCA1E90C0 F686C3BB27EEFA45D548F7BD074CE60E626A4F83C69FE93A5324133A78362F30 8E8DCC80DD0C49E137CDC9AC08BAE39282E26A7A4D8C159B95F227BDA2A281AF A9DAEBF31F504380B20812A211CF9FEB112EC29A3FB3BD3E81809FC6293487A7 455EB3B879D2B4BD46942BB1243896264722CB59146C3F65BD59B96A74B12BB2 9A1354AF174932210C6E19FE584B1B14C00E746089CBB17E68845D7B3EA05105 EEE461E3697FCF835CBE6D46C75523478E766832751CF6D96EC338BDAD57D53B 52F5340FAC9FE0456AD13101824234B262AC0CABA43B62EBDA39795BAE6CFE97 563A50AAE1F195888739F2676086A9811E5C9A4A7E0BF34F3E25568930ADF80F 0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB 7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1 0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4 1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A4A78141CA32C B3C74E1A0AE0520B950B826B0ABD81766035058ED1654D00FE541CAD1D246C0E DE85FCD3C0BF7A70B913487B1A527EA823C00C39DB61FD6641B140FCED8580D8 046741D2494B4E7CA1F120CBB0A532BE049CABEB70A39018E8212F8178E93C98 B377AE2880FE39BA0EE29451857DB34964DA26ACA4CD23CE284ACE37D89571FF CB67DE7AE379B74B32ECACC5F3DE0566CE9EE820E96F27653C75935851CD9360 A83C7EE8270383CB8A80715BC2B62B1F709235A5A73D99710D7665182D461095 B98C8A0FEA44F0F1959055D50BABC7880E7BA1CA4CD72531A240A622663A0A1F DBE4FB907F97515CB1100282C9A0241F65F84EBAB1701FC105BD25F82807F4CB 6A5EDB5CB156A7D55F64146818245C112DB0FEE9E0AC96B4B2AEB27F89FE0560 727D85FE6CFF5C457EB1EE5D7E2A09979684E2611BA57A1BC7BA4E37DC4BA761 557D986F9A8B495CB7212507AA79C297B0665CB5883F2332DF5CB088A92E24BD 1EBADCAA515B567FAA9E15E7B8DA60C1BBEEF5A2E0D4C0C67EDAD822B5E8D81C 6D29928726D36EF0A9238476FE54D4990E8D75FE0109C0336DD50F9021307213 F69C700D2291C546007CF3A5DF3BF5ABEEB640D3AEF585055A65EB2CA7AD7F11 22182523EAA8FCF029C604212529C03F179566E6B731FFE2283D6402A350EAB9 3C7FFF41383A9398B33C48FB2F9A8241D65425FC5E49DC9BB97521D91E44B3C8 B2EB1BA8D532BBF175486D1DDB914BCB92968D342B5C1FD6FC72DA462FF68992 464BF0E00D05C2AC3729E598991C6EE7354F0C400296356ABAB37A16FA504DC9 B6369F88BDB7061D5EEB761527E588B4A6C83169B517991789D664BB543A0E57 6F2529BDC7838AFB93D53D5794E57B65A7DB00584492C046F72CE19E4D1B177D 1D951362B2F7CE2B720B305D45B7FC74183C1DE46073D8E20FDF8027FBFCDF40 5F0950F5AAC19AC8E8D9A57A271C0BB212822798DCD068B4F05DBAC2AF7BB25F 5DFBFBFB5A51ED26ACB22541E1971002A5D97B5E148F8F087A3229C4 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSY10 %!PS-AdobeFont-1.1: CMSY10 1.0 %%CreationDate: 1991 Aug 15 07:20:57 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMSY10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.035 def /isFixedPitch false def end readonly def /FontName /CMSY10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-29 -960 1116 775}readonly def /UniqueID 5000820 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A 221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A 27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF 5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09 0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730 DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A 71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09 4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C 515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609 C627A8BECD6E1FA14A3B02476E90AAD8B4700C400380BC9AFFBF7847EB28661B 9DC3AA0F44C533F2E07DCC4DE19D367BF223E33DC321D0247A0E6EF6ABC8FA52 15AE044094EF678A8726CD7C011F02BFF8AB6EAEEE391AD837120823BED0B5D8 F8B15245377871A64F78378BB4330149D6941F7A86FBFFC49B93C94155F5FA7D F22E7214511C0A92693F4CDBF38411651540572F2DD70D924AE0F18E1CD581F3 C871399127FF5D07A868885B5FF7CDEB50B8323B2533DEF8DC973B1AE84FA0A2 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMBX10 %!PS-AdobeFont-1.1: CMBX10 1.00B %%CreationDate: 1992 Feb 19 19:54:06 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMBX10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Bold) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMBX10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-301 -250 1164 946}readonly def /UniqueID 5000768 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82 7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378 77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18 2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91 FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68 7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4 9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176 CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D 6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6 E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E 8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E 3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99 EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4 0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9 4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209608D3976637A DB9C73EB3A28623DF758C25574D740385B2C3D10086AEB904A33DD76DA2CC4BF 7E37F9117E9D81D3EFDA12D5BDF0067450C5A8A53959C055C5D6087F1FE6FB5D 8306F16FAD71AB986320F1229440C63ACB5FA24E41CFEB12C2BEA2C25E59A3F9 6CA5B7A04B57F2471D36F5B41E6363DCEFF2DFFE9131F044125884739392333E 15418156EEE8DE92EF4C176742032FE8889839755D8D821CD7F8FAAF8A22C283 19F79216C6D454A864898EE9F830DB5F3372B8F47C464DF19C69ACB3BC0566E2 F25E7FF148B2CDA2B90CB5884440F464CD57295728A4415963CC1BC0635BBEF4 E812CA5E0E788035873D05616F7B0F6A30D36BB285E7955CFD860345F16D952A BF2F7D2702DB352D0874442B2074859EB49313BC27E1067D627362649D82A5C3 A57DC5041B1A13FD2FA89D80FA075677C6359244645E7803D375D96AC0592A00 FCBB5DBD975E6623AF9AB4BB367E94C11437639C870058C8994A6AE1156CC432 59B5641FBBB72A57757B2CBFC6F5D915C260859C43D16849F0276EC083DAB168 EBB5E40D86168EFFF7462ABF70F1BD129A7618C77F6CED9F0A836A180EF459D1 526AA5C4DC13E2FBE104EE488385C954AF46D90692B49F7D95000BE2E075BA5D C715D0339BC3114723F4B3A4AC7B9F1301DA3268A9EF79C456F99EE16A20E0FA 45F280A806BA174DB0378DFC62B6293FBE74BEE6955D3E495124DE342A3CFC4A 8794618F6CDB4AA6825158366E63418EDD689132C6429A9DDF8022F1C94CEBB7 5BD566104E12AA4C0AEF0E5AAEEAA17B394188BAF4F489B019543024FBC07123 9C92F9B4E1C0171F4F83D217C921026C8DD9699E1F1AF1A2B92AA285BDECA131 479940083861707EC61AA529E09D262A841CC9C1CF25413ADC7FED1754B0F0D6 DDDE2D630E602B38866A6FFCD97DECAFB573A3D4C222B2F41A5B13195B662126 CF97B8EB2AF8FE3D52148AD0F1C8B8B3873F10DD19B813E15DA41D46FE69E633 7177422452317D2F2DDB529DFEA26A1D7D1324A873D7BD6CFCE366645938298B B2F58D2B78CFA0E9883CFC80323D016D893B519883AF45EFBF339018ABFE4B14 AE88CF0CD0246E250D2B8E8AE3F98DA779BC4F16A0689AFC47D623761A3ED9FD A55091EC4E2B95858E61EDD3D283D44C3BAFE9D93ADF1672BC8C48F3CA9942FA 80C1F7A645B29762995A8A0FCC5776BC384578EE778AB577C5BB5515DFA3F5E4 0246B1526B9636D40BFB581603D919EECC4A272C5F50A01A2144C94B7B88EE5C 9EE0C924560174737903DE67E775663B85B3BEDF0AD31AD80BC52740F262AA2B 6408FD4809414F3D5E557C5156D67D65345AF50EE0C001699E50BB5427413708 BD7B4B2DDFD8AB39C4BC51B52E4A8F8F11B12F3A819C161103DC605A2CE14E89 B3CFAE6358AE7F3A0D9191F85A79281EA28FE46D3AA97924F2584E6C5D8ECBC1 B060A1F1DA5A7545F0424D5DBA04F8841BFC155F34FDB6ED52C344812252AB2B CFDBDFCAC17120A549A3A95C7A819297AAB29E26E846A88CFB182995078872F1 291645462926CF3131015971DBE60C37FFF68C8D9CDCBAD593A2E9B73728108A 39823C27F553BB9D9DEEF018E8ABA9A40A9985A14D7C7371AC71294C343A63FC 28A6034FD22EEE3ADF32C4850A79EEB0DC34F83ED180FAC2E2DE9FFFA4AF5B01 A97DBE6E4C3426A904AF0186132F57F368AD6C2F8C5712BF0DAD853DBB40277A D1C014A91C3A57402B8460884CA6A7EA218BD8523D3136518084513EE680B87B 3B15D079E0642A1DE0EEB6EC42CDEEB718AC9AFD54B3B068F847DC345783C5C4 A0D9A6A9882DAF64FC81D9424A4A642D3F74ACCC12456F4B8D9B5FFD327536B1 09EDF4171635607DC51C04926EBD93D73DFB53D3F6377078C30B79337BD09854 874313F6981071A9D9C2D766ADE45C8F4421DAD55DF251222F18D3A56CC2E154 2FDBCF11B4F67FFD9B21D0E2A51AAA943E572412B8A42A45C59D858B2280A657 001C6B553823D20045932F8A68ECB1B12807D7CC4E7C604B876BDBF9E3457E2D C66574045AA124F162D6E78DFCE5E4A215180ADB29D4A0C395DD248BF6E701D8 7D665E1358E3BDFAD2032A2E6823E9907106CCDD62DEAC8810B7624B556E0C91 0F546F808C39EED8F903FDD05EC11AAD083E07DA3259A2C69E734FD389D04C37 2D3F01D7EA2D29AC16DB7F224C578845C1FFA9A5DA784D3694BB9C5B32054704 593D02B422E5566A04D7A997EF92C1C561B4D50C332C6013FA420F35AC5AE811 D773607172D924E950614723F4B8D8F52464DD68BAA97C95A6D8FA7288F9FBD0 82897A285DE9DFA4253922D39A68CD11960B2DFAE190C0A6144798899BE8D8C9 83523FECA5B3724597711E758A3A5DEAA7517CA4D8341757C29AD45DE00E589D 24608C2825F5E1B925750CBF9CE2A58F7A463E4EA7C141396C4EF2A0F130691E 5BC94CC36DF951EECA4D9BF605BEF624B4A9BB17556D0B79062D36D3C1CD4619 72DAACE4FA01869795A72318A919E407018DB9F4AD63A004A0049B682A63E230 D30643930825DDF7847763934740E3A8B58E75CD088AA7EF3AF5CC31F7D67878 F47F76EFC3886869C992E43394E6B2E1DB4CC0B5E1E04EFEEE34542F433D2C62 3E33B7986C55F9C234B8A95F3333174CCB7F1741D980B8F82C4F167C390CB06B 7A52B34C95F3B4A478B435E7E940533C0FDFFDF1767A862729A211E2B5308D34 2DC8BABECCA64CF7C8AB7C93554343006EBF4748793EDF198A2F7AA60A875A97 B8FD84E48B35AD43CA50804AB768E29BD7FC1968F82C385B715122F7649A0D1F 82AA2223C340D1E89E565861184D9B34FF7E22AF4010BFFAEF89A67B80B1A2BB D5930C98CB972EC894FFB2C921A792F9AA4FC21070D4C44A7479944E0F28728E 4E544F2DCB1EA5ECD5C1C7B9421AEDD568DEF744B83B36BAF43506F25BAD3412 B577149B156C584B892B47B2B40CEE80C61F79218870EE4589D38B470CCDBFAE C5A67252A95A283830FD313C4434549EC039E91C06E2F11C1FBA26F02E30E8E1 52A5471661AE13529D9E8C6E079F50304B77C7CFB749872602E4D847A5727307 A6FFBFA53911409850EBCE59B4FD20E207D4D98ED07D4BFE651935FF43581EEC FA7309536381E030E791DFD89B3323AB9F743CB4A1007B7CF8A41F34B7577F79 3060EBCB1BD9AD5E172C78A0C570EE298E4952FFCA4E522141860368783138FC A1F6A5BF49FFE897E775D974A86C50826924929A400DF2B9EE29B92D7F35ACBC D5ECB92AF91CDB3C70AC369904F233A21BFD7A60F014E2998EADB69705B50D79 16F281112EEB6477EF777B7E29920065AA4A4E0812B64FD37756B2BB4727730A 0ED1B4E3AD2C7AE7A15E7A49CFFA1FC623D40A4F83B75DB3106B7730CAB5EE41 4C965207FA4F33BAB9F5C00CB583B7A644D38A78768ACB8BB93FE6815D8570F7 B7017665C3CDBFC2CEC77B6D946C6267823414578D306A9755969EB27EC3C2B6 5555C2A9790F2D99C2256D373CE656684846467EF28E7AF6E14F0904FB8CA5CE 566EF3759C4D4F08EC0B4E3CC8E2BB5D1F6B2B545DFDDBD5337D31DA9407BF32 1791EE7DFA3DBB777681B45D8091165C1F14FAA57B0CA1EAA03ABFA54C8F0E2D A36D1AD00B065F416CFFCB6B70CD2F2F88EE6003621BE6CF71C15EEB5BFCAA3E 561C7C48FE7D227A3A2C957783B490A9FDB7895B757A1AE0A57E26C840584042 C1975711610CA9AE489B9F7DD46C34E89F1E6CBA8572CD561738574B7F97ECF3 24072E37D2E711037F403694FF75FA99F48B15DDA1ECBDD737CB3B0EC553DE2D 8FADD035540D7561D75D1D5083C685B820722E89FDF81453F10F17B7FF271739 2218D85605D2BB99F59F9A62200B5FC27327EC9D6B6BEAAAC04FF7DF9C06F4BE 6E51730A632DB7DF28CD5EE926FB1E81492D9C62F95C1C0106C634C607E80DCF 608A45FB7F8009101B03259FEC912B6E1F1CC9DC2999A5A2FB66110D9F799BF3 E68F97A90C51800F256D9E8DE009F70C9E20DB0F6ABFB038A0172350425DECF8 829A0A94E62DF78980A876C2074BDCF7688FDB44C8DFED89F4F10EADE5300E14 78B83EBDF2918FC60822567A42C9CE64A58CDE09DB694993F1BB2E2CAF5D6EF6 127665BD656D9B9EFA5B1373649895C7BE8591F244D58BBC3D8F4E8F8B51FF75 6CAE764A1C2D7856C0AC1915481D6E33A182F353AE0403DDBD564346485D152C FDB7CD078A18A69411858CB87798F8367F6B3D3F70D63793852A34204FAAFFF3 A5C84A677E00D60F6D39C0D12472CD975C4248F81F71E311DFCFFBD88FAD0A16 A34D43106A098F26DA9D05044B0D77AF3931609DEB4454D9A6ED4493D6999686 72930F2F59A2C64D31814424F7EDABFE1B0458AA75D6FA71E961C43E8DAE1597 C4428D3ED2CEBE6DC2612D5619B6BEE2625C6484067F7E540E4F5B1B51C2112F 79C8AD48AB77D0F75C2A0E70F812A2885297E0E9CF5403C44C2CFF217797E5E3 E579FFFB5E5D043E77355E7CF54FE0757086AA8A5828EC019C73BE0F18EDAFED 66EC6C07016EE3029C6D82A4E0890EF124B9B63E75209B66056013CD5FA4F5C3 707E071B5AE2B5672668C1D5FAB8D04DE107DB65BC9FAFBD279221B338055CFF 8A82EA9DA8896B455454E010DF7FC91EF88791DE354014F699530D82A71D5732 719912282288EBB2E6253E73015978423079FBF9193B008EDBF3A89D40FADFF9 7A070933A45C6D1FFA13529B0012B38B90BF13792B63804FE7338716418FA23E 82761FE397B8B594FB1C2E3C5FE9586B1E09F520FA793FFB23040C005FDA207F 01633BFAA4E22541E869C65093BF7537578C19DF9E716542CB9C695D3CB81E52 65D0EDAABE6473207807CBE19B7C84F5BC4B582D922402CFC1ECC7FB4F3CF17F C2553A58BA253B2A04CB213258B3B549F951D2A1E3A95B92AE2D2A3E25A3760E 86F712548556136B6DC3DBF0E3CE0EF50EA0F5E5A7D995B4ADB5C6BBE7EE36DC F1D2A554C07EAB5985CE42D72B58632246721F41EF9ACED11D8BD1D2592BA6BB 25ED1D24F8B9361ED11CD22B57D80E0042E5A2D660C830588615DC05786BB5F6 FF8795F255FA1CA6466A61CA1506163540F8AD3BB3715BB7BDA0195B06E06B21 DADAD9AD79E519DDE324F69A05C46A0D78A2CBB09550B4C48CFDE049001DA325 34458BC9F91D05B7F86166B64B0A667E6C782F10F09599EE27867BFFDE0997AB 6DFD1377C887F375AA8D764ABBCC5AF136E065360D84A011045E334AE573FDF5 34C3EABE3BAB092726F676F6D0BAE7567BC729915581AECEA0EC89C03142A1C3 BA1B7BABAB636CC1E2C05A3B8B7CBADA264F0556C59F9F152BA31FECAB09D64A 930F3F5465E7A6F333232F369DFD1588B90F86B55FE6B37A0D430E274E3F3237 5E8C7E12034F61628056361FBC78FB6D8ECCC4FECD2C0E3F584A200A563D6480 3D5B9061AE5B771B7F92AA45495DEC344F91FE266FF5CE66889D6E570C5AB6CB 6FD1FDC7F54D4DA12641E497322BFE0A315AA1DE1B0E70FDABD7F7284496A587 AF509F63D0E9E8C9A00BF93048BD0EE316908106D4660AD48758770CAD43F619 78C5E88485B33EC6EFD15AC913F184ED540D32F7C01E574D2A2E7F27F19C9D45 5F47C948BD617724BB10F4588F7B8A0B7FF537B298D7E8C5321268C12A23A06B 49B07E9E87F35A674F2D5E97FE933E63474594FD8C3FA82E1A6874FD247EB1E4 DE2B99FBA5CDF8D563531F34160582B911F78F6C6C3F925B41615B4322C335AF CADA58DB517C3A26BBBD18DF8B2C7F2DF74515595696A6D6A1EC9B113C3CC8FA E6AEBEC960DA4D 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMTI10 %!PS-AdobeFont-1.1: CMTI10 1.00B %%CreationDate: 1992 Feb 19 19:56:16 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMTI10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMTI10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-163 -250 1146 969}readonly def /UniqueID 5000828 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE 3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B 532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B 986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958 9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F 21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6 06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF 55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5 B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86 0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9 1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961 7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A 7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402 356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B 19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2 C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F 244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95 5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D 993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363 2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3 309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513 F42EDDCF39AE522A1DC2D80B2772B05DA60F3DC15A815A6BAFEDC399C7956E75 3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472AA0C3D 5C0DD07F3D20112C51366AF49C461175B32F43B33E558E7595CDB39F19A8B2D0 FDA3CC3A8318A933B24E87EDDEF5E7412BE9549342DA85A525069325D0249001 658803AB814B49D0EC4DDE1F83683BD817FAFCFA53893D1A325A4C1E1DBAEEB2 50684E05300AFD3858A5D2AB819201A05B39F1A395E368775ED90CEF5359B2BE 709CE0B7625E9894C01B0BDFEE1F7C228F5298A54AC32D1F29B003E56B90B8B5 8D3D416E5E034E36D9C5FC0B33B7AA0D46F3A3F929B91CADF41983B1DAF64E06 7D9A839199E9B29FF73091D5859E438DFF9FB5A308F58C1A1F890D3AC300547C 4DAC0954EDBEF4BCB076075C2DB7288BE625C7E70D7AB9F56185E36057B340D4 81F9ED7BC52246BA2F06454F40CFC7F79F5B36076477F20A7C4A3F53F0333375 03CABA40A2F11A44D956664D5CC49DA2129A4B4FFE712D06E198B2EAFC5CA719 6042B899EF80994675A672A487F937D6EB6B8A371BB029DA6C51850357CC2469 3413BA42D8EE2F962D06C27026624CE315059ADC53B88E0B15504539CC7CF0A0 AACD03E59A0C09E4CB4A48215232AC6AEA1864C10CDDFC4A52BB807BF1CFE3C4 F244B25CF45F28E91D2E9A34E94019F07CE4EFFF74E915911418A44309943F37 95FAB82A03978FC03241523C12148E0AA5E6BE47F40A530094C20DABE315C805 C37D2A47872D2DCD74F86B1296FD3E63F623D62F287294B233AD7AE9E3339324 56FD9C12BD744F8C975E09B23027E7B93DDC1BB4E5C861B4FDCFA55F7DE1588C 39F854290699537BAA26A4515D6E9179F4C8A85C465E139FFFF8993D99A231A1 E6268E344257B57D90164869D55E3AFE602EF4775B2DBAF35EBD883C41CE7B86 363F85E5ADB2DA4D3BBD8D05F1FEC0DB8BA7E246FDBAA38E1B90566151F09414 440A1529A490C9D637C593964DB55418F6F7498B033C31D14BC73FB14074F8F1 3183ABC0F7D918A5FA6C69FDF224EE624563F1060FB3D4EAE368B27EA2AE48F9 34705310BFAA91BA2E6D6B4902700E0E4EC27CBD3354B67F10DDBAAA3368B8D7 9E011B9C86866F87F48C639C1B50952C5B6B26378F908A2268860CD56AF49242 CD34C73B198182B9F5D6BF99A8DC22C28AB65E4664B54D8EF1E2BB3F6222BAFE 5265EFCC88CC66531CEEC3D7B94AC84E05B3E0E046A9D8BF2E39349756247AED 231673F429496ABC15D3B1DC3DD9557DAC1C27EA5E1035ECEDCC62332A283969 C3188D40F5840741145683F42DEC1FFE60CDD54AA260E67FF2BC2E4E2AEDAE6A 88B079AE236502D14EF927E0D6FC1DA1881F8BFBCA13AD130DFF5078B22EFF4B 0B729F5A755225740219763D93D2B5E5CDA09D5F35DF1AA30CC4AEA04AEB54D4 88FF721C4279DCA78404EA2D4B74A795FA7F947E19AA1190D7654DEA72849860 D037E9F266DBC519B653E544451715E451609F7DC711915E8E399E3CCEB9B7FD 456EBD7BB7A3850CD0274DDAC7B1F826EDAE7D3CE321132AF5D784B0B316C8D6 92C5A49EB7A0D50C27B87DAD03CCEF88060247245F56696C902895DABBCDB8FE A221FEB665AC445CF5BDB9B3EC3BAF93AF130CFA14A11612BED1DDC2A43983AE 156ADF2C7241CFE077D17979B07D2A58B321183E510028C17D00EC865C88ABEF EFE9A9533FB783A2C025783B32AC626324346602620FAFCB79D601F7B6EE6A3B F64A382A513A14EECA6A9E549DF25CA052F569F1D0D4ED16EA62AB1D795D1B83 2AAE1F25A900219C9F59BB050793F3957BCA0B1387947E2DD6A677E3E20A4EA9 4BE2DEA256380883D63FA3A14E05FA4C39A526AADFBB002C67A702D9012BC7F4 815C60D4AF4314478C04AFA045E1D85A98CDCCD70E51F86BBCD0F41439684B5E 3C3FE160156B025CCEA37E07927F5603D2D9BCE82ED8E059B48C95EAB441F87D 447E3C5AF899BC6D56EB31F1BF981D9DB971A9AD58B456CF535F938C92B28ADD CE0C5C18FD1E3CD6C4AC70616A14498B3B9853F6F9DA475FF7237963501519AC 25B38E930FBF90453C2F117663E5DB558193923F71CDCA42F06A38CEF92C4FF0 66BF892EFA60B911F39E9761A4D1A97D620ED0A6E757EA04955D518DBF58733B BFA4E9610B2FE1E6ECCA6D7C55C0447E4CE1B1AE7F9FCA29F688A0A3CB0E536D F5229C4BCFA1DC2FDC50F6D86C56FD4324B2780E78EB366AA4C73C7CB55B1517 7F0403ECFB63DAC29545B6059CD62094B6DA90931FE5CEED54455C8A2A63D975 2044DE7976F71E1FB76B57BF4FDB9A0EC240DBCC32B821B7037858F67384DC3F 9B39D562FA5BB389DB3AD821DC32C3C577EC93EAAA4B3931517443BD01EF28B7 84CD44D97CBF1206419C3411A9DFE965169D73BCC2E3DF9770E0016BE398C974 702D5A95A72A9CA14372D1D9398ED34C18A4823F305FF06198415AA0B6BDF369 6058179F14431779CADEBC880B7D5F758D325196E1616826884EC43865845969 3153A56E4658F15192544AC081D32EFFC8181EE210D6B2EB818D52FB2B2315DD 0EA866874CF12ED187CFC0262EC785A4AEAF0E67B646B29DA13B48C4BC8098B7 BD82D761443AC5C087FA8C0255B1A59706F7312692BA3522224043E49DF7BAC5 4E91D64361B8AB7CEEBE3298795D15D8B83650A302DE9B938E870DB9478230FA 70287E96A4F9BC7FF1F0DE2CC55A6F7AB7418C241724F30127EF03A24CC22EAA 13AFC12CCF270FC7DED31D5E6C458F634F193E7435F964D1CC02368B799633A9 96FEE12CB2141BE5105C38C41786C14C5BC39C36DA27EB030D41EAA7D8928575 7895F93B613BB52322748EF2D6A1643BB8AE0EBE7293199BFA03FCF3D33910A5 E2801AD1D3E7D527E2C1D1FE12F9A4C15B1FEC78560682AC4816B15C0A9CCBDA 09A4995AE97250B0C22CA71289CC4000DB546BCECC87281C26CE2906FDF30D49 3A24240F4AEC38F453E70CF5D81C84B9059183E9A7988296E32DBA694B894DA9 3AAD95E10F455732E2CD8711E4C63C987FF27D58FD6BAD9EAAC8704132EDFC7D B0104582CB273647CC0393FF7E24C6E9300442E9F98FA219077C0476213B47F8 1876C91575460AD3EF8DDB948C1FA72E1B068D32B5D03A6F9C7EB3A4DE279AA6 08BB57446E6A4927F5A7DA618B5CF8C11A71B7561EB7DE1C3A6EEE772F0C1D80 7EF41EA560380C2FB7287535D26A9571087B04515B2FF949124CCA64E5EB228F 0B667E7BBD409E17B00050A3FA4B03387E2A47755493FC50C4EE1888938A3A0B D3A8C624E5259B0AB04669FACE173C28C50F1BD5E24075B29B09BECBE11EA542 B0ACB8176E76E2CA847DD32E13ABD3BBC006B7C183C4DBAFC91BF6D4B9143368 C61D57B193BDE95883FDF52685872EEA7C7F4FF23139212B0DD9119935E29303 A81B1583B4D7C46BAA2358C7BA7A7C46F16979ED4B660D38EC761FD62F353D3B 5E2C97C969C045488631D2E3857FDCDD6E0705F00FB1830456B04CEFBF9208EF C505C0913F63213A3EA5B8178E7418B9A50F84D4B184C26284BB1BA01C63C009 CB15C2733D73AF6F17E3C2559ADC0F2065266620885A3134C8A5A2A538E5A194 B3413C0356C7D6A149C0171EC54C4AECCD532E5FCF954941885D9303443396A6 C75D19C97A689B70049ED46FE136EAAC302DB81FA381D7B9C8025828E069320D 58DB5D4CAAAE89E139F30138D7FCDD4EAF9FFCEE630809906D116C9B901D6002 B8FBFC0DE9471FCD90EC31F53BD7FC5A0C4ACC3D2FA52D0A71A3B5B938879ABC 947C7865F9B2D0D5F93179199D450B1A602950CA1E0D514624DAD715D180E8C4 81D5FA6DAEA48493524013557FD2CFF4BD3A0014E39AE2AE23A962A7E47B5F7D DDC0D673143B9F39F01C48F7DA0B62C474739996C398E2976080432A4DB4EFE0 0D22E51589DE3BC0A45219D4B1FE6734AB2A32FEFD2FBBD916ECE7DBBD7D222B 3CBFF86DB9FCE9D8F77C53FAD45B5B73C2A12D23B6F537B1B740F34130AAEB0B 601F27820FDF3229AA48ECBC1A55E5D2B1B12C2D6E1D7FEE375556E4CD2ED3B8 A3063DB1D35A0049B61C3DF74BEBE41D4ACC3513118468206C2EB44840822C78 437AB0117A8ABF4EFB1E5009E93D86C334E11BE316EDDBD70C7E53570B710BC5 6A6969EEBE9ED7A608AE644887566351EE2D36147A28168A00371B57F85B091B A97853E1395A656969BE35D6DBD7F53B646F3C44A7BBB815BBD8EFDF8D574DBA 352A72F51CEE56A3CD3EBEF7631AB1C749166D3DCEAAFB60CE20BD1E6CEA0BCC D34E555044ACA014DB1230ACD4883B21FD23DA08AC6386E2E528AA1901F36A5E D3FCFE57C958480637AC1A1ED92857889E59E3A7A798E24A6201CC507425602F CB6A78CAE783F490D39DBDB8EE70E0E9AB2D05682AF0FC3BAB79440DD9068DA3 6B7DA20208B68C6A8351EA6A47F3741E34CB1F9006488014D57763171140AD16 0BA5694C5C5AFE42956E320943F1FBC765D1431F877BB87B062A715B2673DE84 EAA1094770671ADC894C6E2AF27565FC9917E444033B74D15E83D7CB9D9E3F45 409615110663EE1E31605FC7B9612981D1795893229838B2FA84AC2F7EEAD09A DC3CECE321E114B70F668F32DAC98CB14E9F2B77DFDAC45E3CD6A20B595BEAC5 6390BCDA645BA73A7742B1A6DB2814631772A7E927553EB87117326D69E23D1D 8D3961B9CBC118D275B9E28EAAD53C1A264A9DEB5E0F5BF9BE3C271838CDD4CC CFE8FEE1E507451422DC71EAB40EB069CD2F79E0275F58E91484634572410F09 7D57E058FD91DECC31F6ED8D5B129791BF21E7107EDCD456438F7A6743B32BEE F23635B2203AB218A7CE03E0E60DF425F6FB20E2C2272ED795CD33495157087E 2125353B41E36559D63398FA3E323BC59EB89F0AAFBCFC562F3C961D75753DFE 41A0309A03DA54E92CBC9104041A2881E9387C6E78881699E48AC6D271B42EB5 0C471F55BFE6F438977D35F53A7959A6FFA6538FBFEF3ECD9FFCD7948D9D2A33 0C29D8B57ED5F874B161126B0F31DFC02691045023DD052CBA42CD99B0DD1610 52436FA4BC46D061819796925E1817BDD59199611C2A7EEDF913DA06ECA19D4A FBA3FA209D643D0F6B2030EA847947D2D22E2EF727CA1633D465D2968B52D9C9 FDAF2CF6DF5CA4B9535997B6DFDA5E949248D31BFA72F3D84574683B116CA34C D1C22939130FD3D946C41CEE5A2DC90717F5CCB8357CE318B96818245C11363A E56ABC568F81AD4D8A1DB74183467BE193558A2019B41DF574BB7798886AB861 4EA816619E5BDBE29403DE2E454315F57235F38DCF3A13FE10A3C448D5E982C7 D0F2D3B51582E7CCCDEB188086249D24E5E132D4460B3D1CF9B86953AB83904A 459352E5B0C69385159E015E627DDD189AC6D95564D5FD92D70C3707B86D1DE5 76939011C0B27925D3BF9CAF369FB63C0E5FD5318A142E053BF4950EE6A9EC27 A4818FD460045FBB75D159B53ABBBF0C5F70B4FC6E7E055D0B9C58E30DF74392 4C943155D9BA7EDE5B41F031E32839CC30198B1AF8F8BEF67C852D667871D2BC E0EF1446C7D8DD0E5FDB93977EE554848BB517A75C11F10727949DC4F8BAFC4E 8689BB9F8162ECDA9805C9953A18234E229B7EDE1475B7F666DFD9E6D30215B4 D1F0F0C60F390B08EDE8B63AEE4BBF357A2888596465593CC7D8186D7CBF4BA2 06F522D235FFF4A791BC5E072B14A1DD0C24D04B6E9AACB1F581177FDFA9E809 462B777B06DF04E1605FC276AE44AD3FF4C613F7715D515704C7C4F4E7B8AFCD A84D0E1BFD0CE39C8D715FFD6FE7BBE814A5F77F3B074EE48633BDF0A57D06B9 D8C9DA1B50BB1E5FD695300F12AF76631D88B8C89D9BC90D3D631DAFC67E2B6A E70E15485B7A094DBDBE19121ADC63E4127CC98B7E969F25438F031C677F89CD 82C6BE113513473CBA1D44360B5F367E95805EC97AF1935358A9BD0FF45BF918 1E642EF3C3DC501F1685D397A1170CB41A33E331B67F10717018D4DC896E00CD F725BD161A9EC5E13ED68B35B77CFE3E730527B898E9E4B73A6DB642BAB6A022 0293BC530BDFD559032F2ECDDCFA523A03603AF810F858D5156620C7FE7F5120 D74D3D7EC25037B12598C8C508E4725592BFF721FEED63434F7266071A625B7B 13EE5C54A45F1F42ADE22B0592B5C7FE547EBD55B4F677727AA3D61E17677722 93E0465A40D7604B7DC99B0D3A4242158FD0D52DD933410F30EF816ED05BB248 DC80164ADE173D6CBA2995C46CAF831D3201AEA8064B4CA43117E083FA92BC26 C09B8B51BC9BE0FBFB432B73C139366FD118972D0B0EDBF2FE02608704EB391C CDDB25622A9811523D8C0EC4E6EEC07F187D2E00FE6F2E4FE100C34CBDB63F63 6D54A95BB6CA931712FC29A4F6F0A8FC38EF0F9470125D3A4EF68F5DF681CFA6 871D131099932DB7B7BE9DF10FE21C24376E27069505DD64A9DADC8D31D0BD6E DDC9EED39AF1D00F64B319D99D8A9652A5347947D479541EC5E64CFC0C3E03E1 3BFD28224C438EAD0D45E6E1F0461B2835137874949B458360A224192B8854C0 CDF469A08CFFA5535674110F21A11FB285CC5981840C7171A2E45DA22CE03499 4E75C3A75D11E8E303C5B7D6849E4971869E01E7820F7FB00A92FDA606F2CB95 882E3E559B8B3AC16AD86494F278366E3E3E31496FE71942F7558FB164AEF5AC 43E378A14B0E6142B8D4CB7B5D97EA641C1D22B1C1946A4A57C8BC7EC2CB9729 73082058565620283CCEB93850EEDE547A62E59858D54B92BDE5C38E47DD4917 A49E3E607C9B381BAD1C51227E52AC8519D81A8CB04F3CBCCB5F1BF6D46B0357 71711511993AA816AE2007682066C75A2CCE8A99C7154B6BBAD263A7F73E52A9 FE03D775D084A666940E45F6CCA000E13102F4C0622C19E1D7E07776C7E90CCA 2BAB51B7D384685B0E42B6D49E53A8A37CA09EE69C8297C07D052A7BFD8C737F F9A2155A1B38128AC01DBF58BF8C9EB09025DDEB3CEBCCE6FAC686A613180428 C101825D16EE93B9541E80F1A21D225BEC634382FAD011DE4EC67707D1E8D8F5 AB3C8652692C90A808AFF1BFD3DFB009CC2650473F25C2192AE9382306C3A10E B50CB84A75D8656DA386B2342D8590BDB783203C6D5F5724961F3E55D4669A5B F0DEF03A89F13577832AA905473AA658D704F5C1E64F1F98C511595AB7B4B17E 51112CD6E2E34655F13A4B409A7E223CE198FD40D538F3D91B0D86F06E69D580 04AB7269D9FDD2A15B6727298D4B189483F258152958243B78BEE16251840642 3A2A9A34A776C2D1DA492ADA5C8D4C1BE4924F01ACDA2E2B75A6724D424C07B0 E12EECD9E6A4911790F3D64F4D707C1B7B4349BC807C52A2CC10A3031768112F 1CCC49EB5CA9C33BC2952E2853C836CC24B332B456D6F6488D9500C1A3425369 19809EB4323C8C1197BCD52BFA3985B1839BD55996C10E86EF9051B31AB89B2F C39514E3E90A575763EFFBBD35D93B28CEA0248EFB9EE6CF5A52D3E1F4F6FFBA E0EB9E1869B3AAB0F7CAEEED63C24608D818130D2904933141CE621F0FFDDCBD F7EE5392994CA9682B7590C035343C0856E57699E46840948FAC929D344439C0 C3DAEA4F151625BDFFD943BFD123049B088A51EC09C962E2626161ACF302A907 51670F63BA2E61C4F63482144D274170DB1F8731ABE33555C4D983DDF3BD4060 93316A4744D1701F6B2F70E76DF3CB838A77D51BB995005455196F69B1E4F2EB 3D8B593C6F6730214394491CDA9ED8FB9368C68F2B3787C70FF692A0B8D590AF 71B3B936C4CB1FAD337568167DE33799BAA50441117C68F33F6284768E950A26 79DABEC4CA2F2A91625E9A8BD301FCE950E1081ECC5388F6EE527DE149EE3FEE 697DD4B9323E6ACD76E2FD18189656A7440AC105E7934E44BD9DC10A9CB1E090 7B81703984D91144CF27498B9449E03F60DC49E7540AC1A08A72DCD237CD03E8 8BF47869AE794CBFD36D765121AE3ACB690FEBF1D44A3A04EF84A1B189491ED9 73635828DF7EE9CB8B124E9279508D7DBDB9AEB3F4A73E9D490081B797D3FB4C 744755D7EA3F56A81B7A73DEF33622D0C826347132137A3EB23F9FF0B7911B7D 664CC46C85112E1C30427B6201D424642CB089DED650B64F713A46D1150FD193 7E790C5D7BF95D70F6CDE0795C0865BAC0754BAC 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR10 %!PS-AdobeFont-1.1: CMR10 1.00B %%CreationDate: 1992 Feb 19 19:54:52 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-251 -250 1009 969}readonly def /UniqueID 5000793 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4 87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0 92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C 295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75 409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C 4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF 2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E 0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008 24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B 43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575 5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC 96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3 7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65 0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830 B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007 97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8 FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5 20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4 0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F90A32C4175B6BFB279 024EAE1B04D721A6C54FD62484F8949B2CE9B87D9CEE04DFF82BF14931B3CA03 AA5F701B6F80BBCDF2C427C40A51597F0B1BFA25EDD7CE0EAF2EC676BF0059B7 15DD5462BA30DE78A08DD533DC0E8D85F9DAFC5FD842F417265427E0F1B71834 D2BF6EFAC3CCC40D3EF3B2E2080F148441BA45E5D0C0F7D8416730AF4BE4FC93 1E965594E0364F0D4F1EC48004CEBDDAFB1F0EE0A8222358EAC0F62E6BFA3C9F 46875EB4C999219B91E6147A49A668505667030CDF3495682B79C0F614AAEE68 D976EFCDCB04127C0D7325A2211E49CD316935A0B472D1F9FFC68F7FBEBC7269 79DE858914A95826CB2A8F0F17773C8DCBF6481D93E896938B3F701C324E2D20 2779390AFACBDC4FBA56804BF82120B02F3109D4088F3E3123018D1A92329EA8 C65D312E8E2B232822D6FC4A0D290482E9260ECA5BA52DA0E5BF9C1FDF0F5CC4 E32D947827F5B33620D8049D94ACEE4E1B49434B271D22B53AEE1DCCC9FA7ABD AED2F04509C21E85600DCB71F15A6012F3BEBA9D5822E3172F75FBB248443231 05E93B2378F20710019695188C430E6213CBA49C02D1678752CBB97A140C81DB 516E544E04813437A0B89433BF269241C0DA67E5BEC040A958B14BB3D7821513 50B1FB6FDA447AB76E6E30888495190D55D169DA7DABDFDBB204B3CB8F686C9B 5B8EF8F6175FA09D2DE49226CEBF1ED210161BAFBF77FBC6CEFC781A45BB78D8 9012CFD0840925D807EB0C84FAFA0C67871D1A84CC512CBC8FA3F311DE5F2197 C677D1D9EB11C1607C8F0CE4EC25AE26A57EF97E1E0BBC6B34D1F24F412C7101 2D5F0D1131E5B125D4BA2C0ABC5DFB5F6C116F48E9E6922F39CE77E224C48FBC 0AA43F0D960075B602B477832BB6DBF76B4EEE3056F3C4AC6E87A653EF8443B7 D4E4EC849CC8F03370351FA1556A83E6909D26BD2A0FDDDFC19CB53346A86CAB 94F78B858108FD3EE2C337D4CA8568E636A2346D0B1AFB79F0AF65F7263CC690 F9E578EC304488F20C14B6409E027626B96C3367BA5D7FEED64C276781A7C27B 2C941A1C4ED4885785B96F9471A4AFCF263004568F127F4AC8C07EF3377DE265 02817FB2E7A9BCA1F6164C53B763E1B34DA404F10AA5FF67D02C889C88C128A8 52A758D11EBE416FD284EE66712B4A6F4B7EA8705E0C876C7AEEC6F836B64365 BEA5B7A817F245BF6E52F39629BE5DD93B641B22597223BD913BF038C67CF4E8 A26F6158A53C31FF2D8E47E287217FD1FE098AA8B2CDF62C5EEB8265C7F2726F 863FB49AF23B5F2C9386735F0B27F19BC62D9532F680F1EF7DEB12E966618014 C0C3F6AD7B57B980E0EF3DABE5171FE3C86769E2B82CBFDE35CF404141F834E4 5BC6BBD58D67CDD3187B1C219810AFE6B30BF3BAC3D518C2EA54502F7CA5C5A3 D1D88A04BF524D9A5C71911E90918329C463C29C7AB59DE1A9C08C2A4946EE3B 14B9E4FAF86E02BBDF8EBA05D4FFA3CCE53B11F6262CAEBC3D2A9DB7885A4B5F D42334FCAE8AE374392D54B221679F6FCF3CC508019499357D2B78D7BAAF2123 1DAE3BB569189B1B1AAB67D2E368D0590A1B2BD8832B63737493792E00E2D849 F2060DD889BB55F92C0DAB6D1861376033627B6D0CB02BE9CC1580FD4B7E1E48 0C42D123DB1522B1F5561D2023F13A2683326F2DA794EAC149A91D7E438BD02B 34A7339EDA6D2A5C05855D09C16C38FD4CE138C9734834757D52F0601C22B069 3E0A81CE3FA71464EC90D731077E8A1102D1D0094BE3451718873A3BF973616E 152F69394D9D9E64E9EFC4412C01B047359638C5E1237A95F5BDAF862CAAD4F1 D1DC225CF4D3FFB0CA9460AFCF9C7249C31C7B04431B69EC0927AFFF0A25FB87 8C894210E5EB2A1A8DC4629FEAD9A1FCC2DB8ADFB9BA5735ABA437AF0CBE081A 7EB553FB024AE3136C503A759B882A6009EAEF58AA283A46B7AF49326A77EB5D D7B83FDD76533009CC24D294A212DDF803C7561B8A0B4EC8FD87C4C80FBA466D EAD6DE3553EC8F72CBE9DA6FD1E9F1956723D5B68CAF5BBBB7244499AA93C4B1 FB6DC98CDFB4678BB3224D37B7CCD751AB263563CF4C0370A0A3449F961D714D 14A443FD7A21B8901A79810B803F98316DC6268203886988FD6C6649E989430E 37B404A28B0C31141455B9563555134511A96F3CE41C49E1086A5BA7B78A026E 7024E5117CD0AEB9DC2B97A677D2AC897B155AFA2D66F4C1DF7044D608FBBBCF C265DF5E73081E606FE3B64920A5FCE11D26F31E79672964C2D20213AEB5C8C4 04EA1AA70F597E8C3C3E8BF9EE9B54B72439D6C1CEF4DD4017622DA581B65AE4 9DE90BE8A4F0606D7D91F997D4F17A9B94BB0E40C7B09DA9C7AD65E3E1DE16C9 E8E47B151DDCFC783D9BCCF5479000AD6801ACF1E8392EFF024B095A0E0DBAD2 505107529AC5B567F61A3718FD69AC86424F78A4F8FDA7A48B1B096CEA07AE06 0C32A50E90B5624F2A3079150B3AF1A2C35E5A67BB3DE710DF17B15C168A2E9A AE16F9BE3B8DDD622643AC7DA39E62F6CE520CEEB78F1C6FDDB127F5AEE9CBCC 35FFED0AA27E1F299767841BF4AF52A12E968EFF9BFCB0429E7F4C65CB3CBB2D 0833FC24E98FCE42B1372D97645673AFA8329257142D4D86322443AEDA45FAA3 EE219C91E60D2DD43C263308DC809D78E850C06A0E67D32A1BA0978E5389F15A 8AD49374549F1A1B7517D3132E5DBE3912B3F5238740C1151FCCCD00E5FB8E20 D79A04E85CD41644319B363A8221FD0EE314DFA3B60F3274D7627633FCE5B55B DE72658825C439FF70D3E24C5E8BB458D89F841B1522258AAE5A241410E4C8B6 687608817B558640378E2F9058AF856B429E4978C69727837B551D1A21D81A0A 5D50C4DB81399A56841027A9D6CF7BE5A2BB3C3659772D285882AEAD601D4AF5 BE392A7FB21F2C3EACF2E4FA0D8F02A52F138BFDC93B6E0C41E5B081E0BD23F0 BDC102D5443EEEDF1F697487C399D5C0A0E1A3541CF14F48A347553BB3DAAA7A E8E5DED825699DE2F3938065C0A954CDF57735C94A7A1A14B482899781D7B30E E35A7FF7B98691EE544C1CB064974016876EC1E4C75F99109F6A22344073392B 3A412EAB874B54993C3C7C87EFD4F119C88056FD1FBC37900C97FE389C214587 5D6D0E2F3EC1D137599AA39C1626E799F17381E2AFFA608B1F3F3C9D01DC075E EF8C534F1F76E1ECF35F42755E0246732C1A9010F81668E52F873A293F881AA2 B7C7952979A46165D6D1C8C32806341859432A73BD869A2A2E76FB7A6AEAEBAA EBFB36ABDBAE36658722210889E3C8DCDEB7DE1B58CC13DBCEFCBB56A5F95384 1EC999CA224D40B5636AFB990156A43FF21FA0D83B4B308FA60073B1D9580FE1 760BC85C1573956215D61A2207C860DE9DD87D7D6C02A8354A3D2D8BA972B30F F6AAB27AA9D5B4B5897F9DA3FC023123F1C431519979505CC674CA70B53CF7DC 0A0BFEB958457318D412ADDB5456B1B5C68744A45F0C2846E21DA5B83655660D E1CC1FDB9E65E95E33F656CC21C00B9AD45E981ECD8B6EB508FD8417946F0172 99A2E3E9E67BA5C5588A14318A8FF29F18D22305F494554D01BBAE6E18319245 C834AB17419902FDC3EF61384572B0A1ED82D2805703B27D79C7A2DA61EBD532 0ECAFA9EE9B82E8DCAFB205BC38987DBBACDA7A3D7AEDB00C8CD015CB9232CAA D4014E39E1A8B8C2E45133FF4B2E387B9C8167FBF9151B8446E64996F8E33B39 441FF5CBC6AF2E5F9E1937BDD4D5E5FD3DB35EBF103CF20CE8CD12569D84660B 5E09615E9DDE00EE86CEDE7330C92252D2BBED5BB8A33710F658DA8BCA2A4985 34EFFF42EC9ACE48422EA81A1D618B6BE2FE58E1F447341C12AA05F94F318494 BFD4C3A1511483E799D818C4B4AB0C0F29279B0818368F7E1923635DDB0899AA C76BCB74F0A2C622D82BDEFF7D18D15A9FA07F32169A3146F970D7EB5A66945B AD81ECA863CF0124EFA2637F842766A5AD6D6A19A8CB1E4EEA161DEC823781E5 57AE214E0E57AE6D5A9FEBB9FDA70DFF528DA3A8570C8AD45B2C90FA0EC41775 84342BE3539FA871469E50170BE821124A2541C2F4121315134E8839993FFF51 7E99D1CBDC6A724F20606AD1F8B430C3D7EE7AAAFE66C4CFE070E9DEFECA7E6B DFC1A6FDE340179614FF12EB97E32ED23C41899F65A7DC5FDF5347B62D365E95 D1E11075E955155ED6ACD7F4E772E614EDCAAA36595C724B54EE7E9BC105CDDC C99AD929E228D421BE83F9D7590F9C45E14F1236472989746DE4083081B1B1CF 4CCF08F928F30A312C0C4AFC287D08784B309EE41709986BBB01D7BFA7E5372E 8B7873A434B836D47CB2233FF4D3CFE8E671778DDE56906E679A20B9EF012CC7 ABDE880B24D7E2DE5567FA122D16061ABD13233A8F76F9CF59044664E9B1DD15 D45CA1144ADD1DA4CDA7F8C7451A4424100AB012D6D79A52F266766DFDD9996A AF39881CAB48240ACD143C5620D12D21AE68643C046F15B6C51684DAB584563F 78EEA0D3D71B3F2FCAFBD327C415F40BDA5704D3FBEAAD8C61132390B08F77EB 33681E14030EFE1B125500A00FFBE45AAD32AA12AC72D41FCA0992DFC98996B7 29936F6E58A6FB1261F2530FD5A8EF13757085B8A1849D7388CEF7E8473D3668 068E8CA30DB3AC987195E30702184E2A8456F81C563B3BAE5F553959A1BFDCEB B537555CBD2050572E7B78E1AD3C5E4250401546CFEE68A899F1BEC19EB8DFF2 4E3C746A45D0923D3017CA4546DE558A0B8895BFCF090B7AFD188D28B21F3A8A DFE3EB2CF6F047FBC4D20C9E37C57BA24B5DDE4C7A4F62B933B78AD9944A5D09 B15A32D96FF77191B7FFE19E52A5D7BE2BFEE5816C19DB5FDDBE067C9CD72B11 B64C7CBE3B23ECA8C51C3A5288E5038D5E6F5658E0A9D355A41B29F51F484F3A C90EEDF675A8C6DE90251AFFB83EF93D881DE99889345C6A81BBBD4E8279479A FC1AF96D7CCFF08BD465E26CC7EEDB44F3A4BD93AE747A58E1599C424882A660 63F882B2D494446CBD53CD81C250204563750E46463EC7EAD13BD7CF59F025A7 4D9AB3D0AEF8E23A52B1D52C19A8BF8639E172CE67AE703F993C37BD137E6476 0D8013AA11CA9242442DA320997A23D39C265B28000AB942797E0F0C60AFD23C 0D459F71DDAF058BBB626BAA4ED593855A83E7656821C3660897704966BF6E02 B68D6940545541CA9BC59D8DDD9185DB5928993AF4381D79611C7F1735AAB46E 70C58CC3FDDF9AC3948A17C88B18E5D0070FB533615B0234E6541FC1624923C3 0B95D5AA0AAC4E0DB1868ECAF6F020C8D3409FB47D7B0C96161C11486B57340F DAAAF19D176F0D1E1A2CA66ECC0E1F2A8F19C17948C0D2BE06FDA4446D349E0C C7DC336E5096F9891C767907A4AA5B7CCA07AAF79FE27520D0E3AADAC7CCBBC0 A2C635A50018032E5299C6B83E0474447DE5D72F964CCB2A3D8A6FCC2CDE6092 83A7EDD4110D32709CB4A6C9E12A69D9884F2FA3CFB28DC3D8ECCCEA0F0424C4 24B946358621764ECB66B2C568E289683D4BD298299F8C4170A198254A041E9B 5FFEF665A760CA67A001FC7469A25C0C177063D94267D704E93C98A33028CE6B EB538C9C820F557C849F6C9140E79FA3E36DC003C2D856F1053F15B1B4BE7C01 092FE7CDC69DBD48D4CDC569F6C13F0AE2DB4F61BCF8E63BA39D0BCFA9AE8EBA DF303759A980D5B8822FF02FB47AC513A9B67CD2FABF39938ED8DA319A5B9ECF FC82CB15DD454AF54131AB4358682B8024087F02FF323FADD37A580C00492BF1 428E5F946FF84919D71CCCD90296501A02D7C137F799531B99167953F3C292CA D4F94087CFE0461172F3E3D64E90929494C6DD06121005A5CD121F57E1C92DA8 0D6DB05EF38793D274F8C92316803E51E4C630B5B55DFC8C0C231CB89D88A873 54E871C9E2DCD6669270EECC235652290F96191B41F7763AC64DEE8E9DE07FA9 4BD9328474C2A58F5B629C9E127217DB7104756552A02546E26A322A1D102E94 3A7F806DB919E312284522550C2574B7A0AF8EE8E9061AEF549B88A081DAE891 96769E42CD4319CD8F04EF4A14DE067C73EEEAE2636F6AC5D08CDA3C57FBFD70 95516BADC40DE5B8784C126BC3513D0EB21EAB2DFDBB79016B5475404849F574 F469DEDB5B0ACB5CC6EC6CF94C2B5FF0B306B788805DDF3B9407DA0F5D3004E8 94A1AC0D9B9A4A1A5492D8CC80AE76D9541FA8C6E5CBF4F7F86416529CE0ED84 1E58E6AD93DDDAF25F2BCD1B968B75DE93225A5B6A86379C2B22BE62928C14E3 506BB493455E1DF755F77959D5F7F6A4CBEFA43C7A2154183C345B58167B3586 E214A92A9CC1C707623E7C2B7DE763903C500AE53590ED90C70C86419E7AA168 94D123112780A7E86BA448EFD168CB7FCA4F99A8D1442DC68520D304959C26A5 640EAC0F71EE4783C434201E476D3DDDEF80AFA92607F4334CB1155E5558146E 8E73A1AD6AD28EABDBBCD9E70CABB41A36BBF62B2A46D412B8912B11738DD72F 75E07745FBA6804EDFA631973545537453F2A505D58CD7DEDA87C987677E1A0E 039DA9CF25C27A6337233DFF6B89A69F5790B9C585C3E7D8A74694A7E64F93F6 16EF9038FECE5ECFC1DC742D2340F2406664CB91EA13B2EB361739F0C217AA58 EBEC01C34A6586FA8482CB8177948DCEB92F3DF2AD1F2454DDB534B8FEA6A8DC ACA1603F757EECA835F20C5206D2AF40CBCA0BA5CE40A944E3589E7D1861AE0D A31886A4AD11C12277117A3D9A87BFCA310C3209BBAC5EBF809E646F3D995783 A08F8E39F63CC183A6D9553DEA23F10679F5A656F3ACF0D8B286371ED20449F1 7A31C634561EE75470B57C949D2A3A9577C5CCA698EF5D698BD8E66EC80F6E04 D9CF0B4588C9AB8038EC6CD63371B19A7A4C49E0B566B898747F5B059111449E A6CE689F523453CA3F8AE396DC68636D9CF7992067B0BBB36B3946D11DEFFB8D 7E2A2EDE8791E4CA72609668E5E49AB05D15A34CD7A84C6FDC37383BD405C6A5 55723DA365A9CEDB109BC1B0DD933CD08782F9F7CC5EF84A2784DDEF8587B646 64923836A01376B2FEFCC6C06DCA785A69B32E74EAAD058B7213CDCA8613164C EA7F7AE9C77A181A842C0925F5C7700892B7BFE8A0C4AE633A14498BFD99D965 F4A2B835042C6513E16F73B4AB03679B42336381D75DD177D30E280A3EEEBB33 A87F244CF8C9B530371D56BEE17E9DDFB7705434876288062CFFB9886D03F3A5 E64622951888CD27537866842F8CB5778837895AB3AD6CF4B465E56C1476F2DE 1B59B2150BDA7E5A7980A5C90B4B10A3AAE0256EF7E2340B4B7FD2535FDC4D2B 7A6A8A64BE7C31C61FE0F71A92E34C24621DDCEBBE924BE1E376DBDF42F34F4F 4DE20B058C9E94E39773A3BC824760B5E60731FAD69A5CAD198220EBF87EEB1E 442AEC2D5ECF39A86CCD3AFA63FD337902930AE9422EDC43E46816B65A15D6BE B9294B685F0CEB15035A5EFBBDFB0F8070330831ED8E773074EDA06A104A0A1B FCC758A04D54C842200E6865DCC99E0092DE63165EEB1D457FD61D2A0B173A8B C23DC9FF3C2BE8DCA510F830467FE7B17FDD3D0E96D090801008BC39BBE30B08 11CCFFDED605B09384C27670F85B977FCEFB891E9FF0E53408533280F987181F E27919ACCAA619EAB4BEDB751DEDCAEDFC521177174AD54C2B725A169CA38503 43C9B07750EE118E55D3C6C2659F0B270658BFA3FB28DF1A8FFF0BBBDD691887 E98FCCA7A94EB05D38FCBE96E0773A20DF58AFCC63F43C3715527471111A1F3D 2ABD7781B5EF6FAA58A99B2E82A793098A641F2B709C1B9FEC36142DE09A382A FB109A37619A17B034688188EDEAAD5F9D3AD8FB98EABE67A9F0D9D3A047FF38 D3A45A242F26415C1A8B719830FABD16CB34163BA6EE0F7637AF57BA98ADED1A 054D06CE75565BFD3026F4623B5FAD236180DE45B368E7265A5DC9624FF1B138 60A6A6CBEBD9856DC6A953F3E16F6623B4F3C4A79EA976002411C99763824E3E 74FE50E60A48FA8B250D8C336D2DE6192448F5DA83C0F9C68A96B6FA69080037 C1AFEB0A0B1824CBCFB4CD8E1B6E2F9B6B3C6EA110CB2C1F9283B70093F3AA2F 758D59360B6E5D4D2CBD9E76FD7EAC5394F33AD035A73CFA2FE9E0E544321C04 08D1C7AB409D5A03140413CA8F0C0C7C0CDAC89E65B5E88562AEF146096D4767 55C402A02B5967127019C4AD20227C0F8CD04142B90DB7020C56A9F39F428043 4F453F253341B0059342E1A69D9769F8D7A7325BF6F4EC45B18DF040AB356D0F 5F538328A70946C1D8ADAA4FD45437431B689A7E828DD62B3333C164F4FC95D8 F3FC99F683173CD3F50094CDF35D0641B840F822BA7B32FFAF04E0A4CB02257C A914AFC8B9326E0E76322207FF3B40D7F1E2BE1C63E6EE50E227DC086E004982 A8C8B75810837EB8539C0CFD7FFAD6D2363285F5C08303F36C4B152BDEA25E0C 9B87A02681F6A0B040320E0F53F466B764BD2B0D4F9E549FD8FB63ACF3B202CB FA8A30D7935CA8A4EFA9A0A03E1604EF52D20D42233D76DD7C353F97EB64B7C3 A7FE67BC49ABA6638A1A4EA19EE48A01C8249FCF80FC33B0727ED9A409C0730B C2DDDCEB5A4FEC64253E2797724700A875D8A0FF5A4592EC1871939C5BDC1BC1 AD58D1316740AC6075D4828A82206D5531E2B23CF6680DD6AE4A3EEBF67D3C6E D4114490219C3A4389B1B08A4C45EDC81DADB7980ACB858E68A17229B079F409 11BE17C052E84B3D72711F95333AF72209F999E4952DC09D80316A63D4C56540 AACE90AF9B23B027482DE2966749990267F30890AEFB4EA7207382473D666D84 B735058E93B6A2F3DD2983B544A174ADBE9BD7B82148A5899F805A96A275F96B E68F69FD265672568001B5B68B963F686007BB5CEE52601ACCB9FBB404D2ABB6 3202C12F4630112B98FC8EB2094C4F5D600E613BFC12AC3F9D1D45AF37A23856 641EF63513F297AF9561E4981D1DE11E6A64C60C3B982ACB9988AA559230FD4F D0526A962573FCA6F28620915443E206027E6540BDBA85CA99930FE90D9F6D4D DFB276B5E30104E825CCC048E07040348DCEC32E112F8644A11CDF74C322122D EA5C42EC3D22FD6984EE135307DBEAE651E48F6FA1B690EAF462543C4B02E159 4544E771B9D3B9B7CC622D62C5FD3B02A6C94B0B267D7FF0AC83CCB52166DAC2 2FFA61551CABD8DA23AC9C316CAEB52D4416F886DAA440E812681F80E85CF0B9 FB3FEE048375FFEFFD4CE424A18E0DD1C857AD51549BCF7DCF6286B42CDD6F4B 55BF40BFC7F78CC83C7717393DC282D3EDE3452A6F70DCF3C3CB1B229AB28AE8 B44E9DA01E34FAA34DDE81957753BC43F62789715D6A85CBC211C7F438EAF389 8ED5BAE75A548A042A3AA21729F3B07A758C4133FC87D6639BB2A7508A1FE003 7BF267B514B4E03CDBD169A5B14CC4A1994CB309C29E5855665F0CF18949E931 571465665FEAA797BBE1EDC22614A0E276E9E0088A039E8BB61768E22CB5B304 E33BCC88EDD1B18039F6EEF7349C23098A1CC30DD4A0641FBC57706C4E12A7D1 9D007A69273C6C8EFD3D76867F61B51F6781E38F0686D7FCD259EF2FD875DA10 6C340B0E247AED94A175C132B20034EAB0D775D6FC7E20CCE5D909E8D9FB57E8 5F1C1D439BECFA757D4AA68609BEC7E9A99EDACBABF85C3203C39B6325FF6964 D517F11F08733AE1E406137862848A2F525B72E44FB595EEED13A023A84A9DD7 734FBE708825822E13765F3DAFB80278F0DBA2F43B3720DADE66880E46773E56 932FFFC11A194CDEA400724F38A9B774262970ED8732A52FA700C16368EAD64B 4CC414FC75A01449A1FB5ACA13A86065ACE44B1E9E08F57C2D5B7C84DE3348D3 2F8A9499A12B4F28D4D956587CBB894000254EE3C11895B49547001098AF4924 72B52AE10DA1B73AA0D29E25073D366295B576BDDBCE3320926C443B4DBE0E32 7EA0997CEBC0FBB4912840B3D413C55317E12403BAF2677164519976208029D0 2737B187157DD879F3BFDA0416B972076F533A6A075DFE89ABD2F87A0CF40BBF 7477E72659EBFA22BA06A46A5CA7AA69A31E15478EE18844B2CF803060EACFF9 33212FA0E8AC9A7304D8642230F0050EC70B53E88B0B6C1AA2A4DEF12CD085BC 138C0D5C749370A27E044F2AAD1D063ABE6E4FC0D3B28CB733CBA22E41A83306 0192254FCB802236193CA990CD20DCE1692FD4D29E9715D023882E4EF116051C C07FDA4AA8EC73B35D0D092E414151A14B67EC9FA0F55E797883A1312033B9DD 502C2871B9754B1260605F2887032C1942AEFCD32F97C394FCD4EA73C8BCE813 0932E5DCF010D9478986734BF88042DDB7469A990546AE3925F422403E956399 900D1148FB0F87615974B7F142620E7D0EFBBEF1AF89D379B18620356868CD1C 350F4857E707D058C554F86D3166F777BA6666D379E9B88FD9A177DF5A35E0B7 64A477D51246157A5B12FDB7B377BFBCB186754F3EA1226BAEAA3623228DDE2A DA8F6DF2CEE3F28B88AAA5432E408EE86794FF0CED36D68A7C5F85EB74AC2194 2919A933332082F7BFC9B1435C7929CCDAD2C58319982F7129D0235ED0028252 1509906D82B555C70A52CE049302E5015C82576D171807D18948E2AEE9E97EB5 1BD55365F594C40CF262A9BC8936F71E163C90E0EEA9285D433447BEC8835317 1B74ED0693D9B52622C17020A8847AA25A5FFAD00185B8F677D894EC0388D041 C9C31FB06C241DAF9240E3A486A61EF5AEE1FE55D512A75B33B6B66B9CA24892 41637E1F125571DCF91BA0B38D47BEF4FB716463B191B9DAB3C807142EC82F94 14D52AE21D2DE7C6F13A6ADE36ED60E3B9E11506B099E24D8F45FDD987C056A4 877AF7AE295ECCD212CB01591C9CFBA43833BD440AC8C3C9B3569F97864F4F33 857A7BD398367B9A9DF2D4970ADF614E0DB52DBB0FDE966A7F96CF75947595DF 2A879AA29A844C4C24C92F4964311D7CB3A15B7A3387795313D4113C3AE81D83 7FDBFB7683BDF9E00AFA9B11007DDAC3833443D522103A0DE08128BFC83FC76A A5CCCD40B23252293F0B2B34450BC14C2BA11FB70CC86241CD8D620411C4D46C BCD9354DA2F5D89F9C8091F2606717511A6BAAEA69D11D2CC0E1E573F712BB7C D1EBE6062C6D9B98D7DF6ABC5B914433E3FD46227D4B7B728236E1667C76A030 966B7202C9C035DF93AA274CB16A940269EF75C63B4E655B8133C43FD216F4C4 D50C9C03BB6C4F299C7F276ED59F1CD017A12424CD9F0DC1E893F5A83BDFD49C E2ECCEBA03DC33833077C5BFAC26EA3BA90D96D4FC0954072F322DEC96F69AB4 5E009CD55ABA58947FDB4F2F221D21E68212CF035F60951B374DE81AF725F7B1 8A21997306A3DC852591DF422FD5E6DAA049E74009DBA74DE1B03671DA80BFFB DF4D6EF589D121DB4CC67B14EF048F7837B096CD98A4E43156D93FE8E1AB9B64 2706A7DA1070977ABA7520B8AD15C710F75FB8F6AB4A7AA0F7ACE9DEB75A1D14 C8F05D3A010D9FE3E4836C1FF4ECB6954D8932353ED20F8FFBC416D49C70CD43 292202BCE023C1FB19A67B5E6FD4E02ADAF84EE105844AE8A5AECAC2A01909AF 0E3D11535238E071E287DB3A701A847B5EAA526B34F6EF33F8782A1356334F5E 297BD258C4340CA61BDA2A2369A8D9109C0AF5C3277ECA4019698DDB08A46934 81DE40FCB75836B6614FF122C638C47BEC6152A10306D1F938A21226CBB2EF4D 2F5161688ABFC69885B42B90C019C2E06B2B659E2CBFD22BD40654B7593726AE B0A0FDF1A62EF9CB563BC2F4AAB1B6F3ABC57A87E4BE3C861A2CBA7F1671D28D 6297282FB5F8FA7A7F97F53023A844D5290498E6810E1689381AC2AE8F8F4A5C 2ECAE55DA3809B65AA398164F28405B28F6F73B1D35811F76BD4CF429D31C242 A4E73412A924A2E05F9DA9071D4107C896B16853214D77116D48E9D62235BB2F 8CF38967B9E08AC4BFC4BEDF21D76553E4BB594D4F24774E712D22CB547896EE 550EEB038BB10A0E81D899D7DC74AE255C2282485E487A8D03486E743EA07AAA 94447750FABBE0A7AC1087309F2C9E3E6183DC2A8115319F3679CFF2E9AFB214 EC1227991E26F9D221517B107CB5B94D4208B027EDEBFCA996092BA12CBAEDE5 2672E541E7C3ACBD6D395B983EAB6162C8A513958919A7A8E99FCD6F8211E14E 5CC802E6A390A9AC575F4AA7BA48F838D353155FACFA7E3CC04E1D01ECBC73D8 F0E7F192B90A1FDA9E1E943B756A63CDA628E0767C3BBB429875A3363284AACF 500F9637B6D9F8342364600DB8F02307C71330527A246951C7ED625B091BC175 1BE6F43CE99101CD32948D2CF1952F835F147B3A1A51B1F1CFE70417426CFE96 41B1943A60B5D722D87B1F8FB93C1ACE1434BF0AB5C3E1B1C5C4A1B756D41FD0 93A8D5776F981C6E428CCC099C5C32A913AA9ECAB79C1664D4EBBA9BD9A1B2C8 9E5DB831F266F7992C6287D0B6E8B3A5CE68D1E8DD5E6F108E59437A084C1543 2B02DF8E604A679BABE07EF832B202E511783ECB831E579D34150B6EBB6F632D FCBF17169527F3182386DF77076355CBACC272A87A5DB7D5925E46AD26927034 B11B3E33E42A37B99FE21067CB4809EAE59E681B9FDD59005010B5D8A27EFBD6 7B313D480C43CC5551A806C0432F940EC2188A5D37B28CE5AD77FD79D53BF8D8 A5652E36457AD796701BB1B2ECF3FE31F7C9EE4A0FB04E6D86A435CFF1080431 090DBEDDAA8C3524866F1F4EA62A71C6D0E1241A88BD2159B65C2A50B1DC7250 D60EB019AD38909893B9C7D785E5C215080879449871D3BFA8D5F8F6DD6B1C3E EC6C1E108D082557A85EB4371170708A3BAEBCC66D6040F17089BF2142791E64 BE8DD755CE50F1FA6C31A7797F0478F1F503492109E2E6F049C3135AFD4274E2 DF4E2ECAC00319FCC72B29A4540C57BAF7D79815B211C37E17236C74F30E73B7 DF16FEDE9B6F8F0045D329CAC61C423B138C0B383BC107BA1F03B1AC2A65D5E7 1260549E506673BB97DB47B4B18DEDE1C4CCD3030914EE58DC94290DDCF53839 C40CDF17E6A6828A03BAA15D7413D88439878ED47A3B5639E83B54C181397A43 3F716FC134180872A5EB7B655A02607E20F8D5B10E4FD6A10F084A25675EB5E6 DD93FA8AF3EEB916D9DFA6EC612FC698F9245AB584FCADCD0D35716C0634E94F B5EC45F0E32BC2FBA6876B613FBEC4CC6505EE891D6C241604FEE0F731A7C5FD 1057825B599F2A5C2E2C6DAABCB528C7C22777677033CFD99C89790BA6824A56 D445A721ED4C94EC8F0F53BE79E4A296A156C09477677A9D5170DBD65B4529B7 FBEAA4E45DF130AC20A6C6C5C931FC8DE1F5BA6866F142F211F1B7D7A422B364 DE86439E45EEB687AEAF0618553C7300A430B345C09F3B40F0F121777DA79D87 EE341771EBC0BF12D2692502CDC4E67B18F00E9F6953F320F998B14D683C105A 167EDC3F8A32D785E5EA7BEB7E146D908253C598FF9761DDE9CB2E1EF58CCE81 172A4D6912AACFFA817E99392F10002D5DFAABD174C1021D12D41983AEFDC1D3 3B17726433D4BB843CF598899E564F9B81916C451167FB4512AC4BB60FEB7756 4FB9D1707B303F917742804D45006B4166806094878575C29A634A34420BD1C8 F096D657F7D50C9820DF3B2FC0238F3FBAC8EE8472CDC07424328DD8FF52800D B0CF61D37C86702A42EA770CF59D44F83151D3AB0AE715E61C4C7E680A53D63D E3CD94978F79ED11DA300A66BDD3354FBC23C3C3D3C3C50E48CB091418FADDB5 7F0ED7F0786D133886E5C3B6B237E799C2D5FB67C7E9058272482C6F43FB2A4B 87D9DAF083FA3FC8748EBCA3B892C41821A108AFC5BAF0C3FFF037D6F8156091 05B9BA2B8FC3A8E01FAD01B5761FE9412FB1A23C4CAC0EF203822C7707D068CF 3E2DF702DDF1E515FB2D2E892BF4B9D2D9968F5A72836668D1EB5E7671057E61 1ACC7B2B1899A248EA324CB11D68AFBE21B445C16C369505F80D1A3D510F28FB A7ADF6A7E2511DEC08E4A1C332BB3F9870A5BCA0426B2E26E008BE276C181B5D 8183983A6D5C3DE2513ACC8AAADFCE210E3B9197D164D1B40EE6240AF27FC56C A0D604D259163E8C22238625BC81903D98EBDDDD4CFE30EE0E5501EBB17F01F2 315A8AA06CEAEB1222B47B8D1A906272621A0E623827FD7203ECF6C83B0688C3 3015DA4A75C67648EF2EBF0D39F3841DF91EC2B10577C4E2FF4BB3F0C961EF5F 57FF40B9EE99117CE5ADC85DB2F3725C0CEDCAE5F8A0886CE32B23D34E990BE2 90D1693294C6557D1BB0B5308ECA260A8328398DEAB5FB0AA51EF9DC254160C1 D3BF03D2005CD435B0BA6BBFFB711DBB12E131D5841A64E02671FB1A2B5E704C F272F9CE6B1C1A8D7D61EA6B9066A0FEDD4F37C11A7C9E411AFC1A68124C8170 A18851C5756B3B6F8E58EAE34EF545DE5199AC249023F78FA6E56ABE00E21142 C73641CB678B5A9E4C0FE0CA8498479877D72B8DE547E5E4D1AB28867631A97C F460836B0B423A86C552F45C86A4576A66E381EC388BC86A229D41AE22E472A7 6A3436EDDDFDD650FEB2E26653E78F40924E0905A4AE6D14C10BC6BDF48CA0F1 65EC35CAE0F2B5CB1A31478E3BBED3810228326DFE34C975B53122C04E87DC58 3ADF5726764E964D0ABA53ED4B1F02943A857F7310579CDDE10480D3BB655D8B FCCBC6DC4F42444D9CAF4EA751E8C71EB304C58FCD4EDDD4B8AE0854211007C1 E5B29440376EB2978B78344D9A95B39C8B68DA469CA423F2A3D56540C6691B0A A2C5929F85051430EFA1EB3B63614247264F4A9C4531D9463995450EA32BAF1A 5F835E0656AE4109295C3CAB4475AFBE3DBCE3BA 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR12 %!PS-AdobeFont-1.1: CMR12 1.0 %%CreationDate: 1991 Aug 20 16:38:05 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR12) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR12 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-34 -251 988 750}readonly def /UniqueID 5000794 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C 68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361 3645B82392D5CAE11A7CB49D7E2E82DCD485CBA04C77322EB2E6A79D73DC194E 59C120A2DABB9BF72E2CF256DD6EB54EECBA588101ABD933B57CE8A3A0D16B28 51D7494F73096DF53BDC66BBF896B587DF9643317D5F610CD9088F9849126F23 DDE030F7B277DD99055C8B119CAE9C99158AC4E150CDFC2C66ED92EBB4CC092A AA078CE16247A1335AD332DAA950D20395A7384C33FF72EAA31A5B89766E635F 45C4C068AD7EE867398F0381B07CB94D29FF097D59FF9961D195A948E3D87C31 821E9295A56D21875B41988F7A16A1587050C3C71B4E4355BB37F255D6B237CE 96F25467F70FA19E0F85785FF49068949CCC79F2F8AE57D5F79BB9C5CF5EED5D 9857B9967D9B96CDCF73D5D65FF75AFABB66734018BAE264597220C89FD17379 26764A9302D078B4EB0E29178C878FD61007EEA2DDB119AE88C57ECFEF4B71E4 140A34951DDC3568A84CC92371A789021A103A1A347050FDA6ECF7903F67D213 1D0C7C474A9053866E9C88E65E6932BA87A73686EAB0019389F84D159809C498 1E7A30ED942EB211B00DBFF5BCC720F4E276C3339B31B6EABBB078430E6A09BB 377D3061A20B1EB98796B8607EECBC699445EAA866C38E02DF59F5EDD378303A 0733B90E7835C0AAF32BA04F1566D8161EA89CD4D14DDB953F8B910BFC8A7F03 5020F55EF8FC2640ADADA156F6CF8F2EB6610F7EE8874A26CBE7CD154469B9F4 ED76886B3FB679FFDEB59BB6C55AF7087BA48B75EE2FB374B19BCC421A963E15 FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671CEB1855A22BB 7B0B138892F4D0C10FE8A5342308AF7B1BBDB641453D3D5D053F6634CF3A9ACB 6763EE8A2C6114E193BA134279BDB04CA28423F81948C554FDEA56AE1A83C791 EF358C159CC3B6CA77B07C2C93FC9C93C1ABEB6E5EF3FF2990371EE2A9A3189F C8E1D35959AAE8FC9FDFB6CAA39E4DE19E47A7FFF38705E69915D7C1B06DEA22 2511D005170E59E53B1BA8FC15221FAA5C45DD4F4F6FA1421B57AC5D1F5D3346 754EEEAF1C86C82AFABF2C495324834D375D2AEEDC73B52B58B1BBDB54D4B3F0 BCFF3BCFD5212788DB2E07D50D1FC1F817F0B6435B0FFEA11151F7F9225FDCCE B7DEEC61EC9E3B85359AC459810704C4724CCD32B546DA7086D89B8337CD19EE BA1CB60C4D9FECB524199A087BA88646DE1A8450162AFE7DAD9AFABE1E276A7B 372EF1BF853D7E17199905EE7B623E8B3C90A0C35240C2F2CC873B8CB6ED406C 9B75AAB478025EE20BC53E5AA66AE78917A7A8DE2EDDD4262F222683892F582A 70E275E8C0FCC12C5DA66377430176657D155B66974B9B27FCEADACD29AE8EC5 A9E4A2ACA6FBC0DA28CD8BC2A3152841799273F4A0AED0454565A5EBE6E222AF 2E381B42EC5ED410225DCF22E8C29CA8F59B0175FB3515692BB505DF2B2CED76 E536773217D43313D59C854952B29210298E488451A9B96F524CEACF3528D4A6 7F4B86C7238C90A55B21CD2B487693B4956B2803BA2EBF92D49AE2E5863BBA2A F8588290565AA59CC3BB8BE6088B7257EC21A95D32C64DEB3C8EE7F95F4941C2 CC4296BFAA2CF85BEC1C49FCA476C1E6E604351413ACD6976051F487A533AD8F F1C8C00813FC6CE68201A82E1635BD9214CB0F43A839493EC692867B6AB85D14 847A35ECD740BBAD7C0D7C2F99D941E831F1F2E25B563F17A4B55E98540FF86C D9C2ED5AA425A39E25D57FAC19FA095B169533A9E35E3279015DD3B1D354393F 11E033E901B90751CB8282CF4E65B7B64DF4D54DE7B72995CD4A5913F0D62412 C9279C7DE705EF559712AA635E061A06CAC968260A70F8C123B1EA7F3DD11442 5298448E2FD9BB2BBF455E31EE32A48844E3D565938C3A06C7AE2E2DF392B621 6F04E400B412BEB1B04EE2D723080377D313D3226F5CBFFA6C9E7A398436B4E3 CA505266C5D6496506E78DF9AC64E599804920DFC6ADF314A0D1D408104D40CC 21F310E5E442C73C47B14D0CCA9DD4D93564C87A9B93C2D5A0A58D6B7F2A54C0 E51830FB40E4E7FC7854C102DD35FE9BCEA1807937196DDCBB6E46EE31947DFE 59799F1FA5ADEDCC63FF2F48D278CEFF6B2E86387955F1156DDE8A433BD37B27 9D414BE03A081EFD43661FB98E6646BBD71C88A483396AC991DFCB19B4C48EFF 85347FCE64E4067BD856188152E59209FA1F207FF579027CF153E393823E8F85 865DBD75C8725D7E5AB85DC0A02BDFAA050FBF0835638DCBC6E6EB0E8021D791 9ED29293EA36D7751EF8DC12842E90734671C3E55811214E8DA7270483370B32 5E6433AEADA33B81CE3B6A71DDD52FDF4010B3114765D8B032DF3C3FA8032162 9F42DF505C83E11D2D4760549D4E3D3AC899B7EFC5C9C71FAAB465F2CA0692E1 CB75FF09C0C8CA36ABAD74A9C60820F21ADECF3E45A63881429722F3852DEB55 2C8473F90EE8698B58BB530A9A5E5405EB3BFCC375BE5AD507B33CAAFAC333B2 16FD44CD6AFE64799BB5B82B926DB249D2F2EA98A5CC651AC61F523A32D70540 999F21C8E60C26BDAF310D41780AAEA52A6AEA9FC82562A159FFA530916E2839 B7B28E2EB441CC04621559235079AA03250494FF48AFE867108F1EC6F7793D0B 53629838C019A734FE6543F1E38D55857BF5BB5B205F7B68BFBF3659E0B9CE6E 3169B0DC380B8429E75BCD1F2CCCE48DA6D149E5D9965AB0301FFC36E614E308 351AE40B1AF08024EA6F78DA5F4A97012ECD29FE4F8396CBFFF87844EF25F41D 5DB91630592A174FFFE6D44B93B8C3E3AC8C50AB767D573C150A05DFD5F8BA23 6E98C7D32FB611563749F625B2B1E91755D52CFC57872BE3603DEF32D08160A7 FD845003CF41A20099685418BD0C69ACD2381F1BC840260A6DC62E22D0724EAE CA6C72554FA6CCBEDCA639048FD260C526ECF5F2A2A122CCDFC036017BAAEED5 BEA14B157FF0465B479355C3F46A9230B122A3F9290977E6E9CAB80EBFCD7149 395D882017A77256E5E500A3A068069EA7F0C07246812A143BEDBD5F23EC6689 9D06A0B040446C37940A3DE20177E30A94F32C3A09D7D9B81A9F7283E862E6EC 33E7BA351ACCBB83F611D987C9D08741F6F35F814763EA8BB07BB7DE3500D10A CAC086C8302CF2C5F0195BC8596CD28DFFBDD8800F5118E108204028DB382FD9 D6550E1BCC69F9401F18E59A45825B00307E84A4AA7767A815760B02B5066DA2 DBA4AF78E787C69223893342C4A3FC7A77AE4CA32E4008F655CC7CC647902364 14F26766289B1BD0E181AA04B526F40F078EE8137AE027DA93561B084B48CE24 D653E4633EFD5ACCD2E813F28BD6B4008510B5378F6121D496C489C3D6580B4D A918E85B2F7EA32EA77C7A760C75F0EF8E43BFC795D56F77BFA40542A0E57C1B A3719AD27732AF7A12F432CB167C88C5A3859A2B27B66A287D4D11DE63210E98 FB4F5EE8214A2A2DA3E1CA563D4FCA08AE5F5C5567410B8273BE31FBB4F1E07C 017CC7E4549967AA7854528C41FCC6EBCB42425A93E9A50C5F674CB04E3E65DC 71980E97370237C61E8E2D94C148D0984F98019300EC72635E679DFD726E72D8 4A769C6CC3310AA7CB54E121FE4E202257C580AE033DC10A8129809AA22726BA 5204D2EEAD7B47364A8727DF853B6259DBE38F79106D0E067A9EA16E35FF5F2A FDDAAEFB7E1E75D19F20C3881CB7B9DC034E9E871853125339BC86ECF35E26BC 167B1AED79451A447BDD91AEF2E43E832084913888593FD630B567483A3EDA8F 5495809971B832E3502F28695E68D8F08B067BB06F5741130718041F375A2924 DB128D628DA00E398BB645D0F115CD84507A110A8FCE169380CE8398C07E4CEE 85138743A6F431F61D24220EF51D9631ACBA523E0CC96CF755D52654A460E866 6C731FD92BF2FC809002DB98D9C0A533251C761D91CA33732B147CC60CCDE148 A321FCF69FC49F91E81F040A8E361E1DA6A093F5553BE60EA5DD426A60D54A27 DB947722BBEE6A2EC84FDB042E5088B2E702D4DDDEEA80B46DA1D036E20714D1 3D17967FF31184486321B55EE12B2BCF45B322F5C5D65325E83CBDBC24F90C74 CEC8E6051FBBB4BC93BD15C604E1E12039E5CA6F728E7E300DF93748274C0AA0 36977F12B12F514C70A56747849E9F6AD06AC8D97D0EF03A85E4222DFA1328AF AF1CEBB60C97547D32C1B6DDB7FF10B28ABCB1333D70F06B31E1AA15ACCD441A 5D1F58705B8679D24E3C656474E9A0074CBC948DBDC80700C361FD7649DF70D5 123999D603CB48A98790936F44D3783F02024A232124EAC3E2C1E66A098D202A E86C3F85DA840C62D9512F5C9743BD9EC247F1CEF41B09C858ACD8C1081A6C7F 65C6876F198A7CAEFB2D27DC625031515955DF1FE86E248B7C35747AB28F6F9F 2FE542289FF8CCF716F180DC6CEC390EDC977EBEAFB42B63203B871CC5B23905 82480852BAD30EC64EA12D4A5232AE6EC16B038F3A23B59612312613935C6FA9 962A80DD6311499AE900E9D0E58043AB148339D4C9D22CBCD0A30A05EB4BED0F 087A9A2C5BD93230674C5A2979C0C99B57AE367CA69F5DEC5033C18E76427760 CB6D5C43711CA1DFED6DE01EDBED0E9DC8F19B516263E4620B3F6E9FC017A24C 4CC81B0EFF20D4318C32483F9FEA80B8212B9207432A5EB20FBC126F71A6E6E0 2156F66D83D4A0F77F95EE54BDE0144FE4F9AA0448CB8726B8956F0B241C3B3E 71FAE0B2C86237048B176F86BABC89F303F866581940FAE3E6BE93AD9A4EAEC8 13E9BF678E1E7DFAE84AD059CAAEC39D4242D6740439279119406C0132E1EDB0 E6AE72FCE1FFC52D70314F142A419040C413808245C08F94D508561B8A21C90A 260C922CDD8F3224116FB0376319A598E56A24B2EEFF293D4381229DE8264A16 9B956DB7543E8BCF1250 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR17 %!PS-AdobeFont-1.1: CMR17 1.0 %%CreationDate: 1991 Aug 20 16:38:24 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR17) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR17 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /.notdef put readonly def /FontBBox{-33 -250 945 749}readonly def /UniqueID 5000795 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 2BDBF16FBC7512FAA308A093FE5F075EA0A10A15B0ED05D5039DA41B32B16E95 A3CE9725A429B35BAD796912FC328E3A28F96FCADA20A598E247755E7E7FF801 BDB00E9B9B086BDBE6EDCF841A3EAFC6F5284FED3C634085BA4EE0FC6A026E96 96D55575481B007BF93CA452EE3F71D83FAAB3D9DEDD2A8F96C5840EAE5BE5DC 9322E81DFF5E250DEB386E12A49FC9FBF9B4C25C3283F3CEA74B8278A1B09DA7 E9AE4FBAAF23EDF5A3E07D39385D521547C3AAAB8EB70549756EBA8EF445AF4A 497CA924ACCC3DD5456F8E2C7E36946A5BF14E2E959895F7C94F49137256BE46 4A238684D52792234869EAE1A6D8ADF4E138B79472D2A90A6CA99E2394CC20CD 3841733046175B20CEBE372327BF13428EED6A3E2FDF84C2DBA4B0AD584EE9DF B51828D3B8F385846158C29C9AC3496CB9692DD10219697B2ED4D425C3957FD8 C4600D76E045C561216EF05D38177243C314877A69A1C22E3BEC611A2EE5A216 9B7C264CF6D1839DBBD78A40610F2C0D7C2FE09FFA9822FF55035AD52546970F 83EED2D30EABB1F303091EBC11A5379B12BB3F405E371519A53EA9D66174ED25 A2E55463EC71A97BE4C04B39E68112956117C8252DB6FB14AB64534B4BCD568B 246DB833982B38CDE7268BBF74B6B0C18091E1B1F87D32D66F4DD023D1F10D2A 7736A960F72AC01F733A11023832CD68FB6288A5977743F781214D8FA9C0C3F7 80001321D4397771F728FD9EE57CFE7D9192B887EC883EB1505068261DC40089 7B7D2820F06515CD74513521F6397FEAB3AD3572D9A8269430E407E357422461 1785FC2782047F4C0339D79B16862D939F3A37F78E4E2174E4FBF132539CB760 207999FF86F6A3EBE48EB0A1CA635450FDEEF79EB16D853F3BF4B7AF6C21236B 2CDB1A8CE54A308812E598601DB051D7BE60A7382936A6C346A0E2A568D2F150 5DEEF90F5E4A4698EE1E97C090C5F76BA798E598A84FB13116572BA99D297FD3 F9D516671A3FE77948837C63FA73E298E1E61EACC270693557557389EB81AC49 52FA99A9EA3CD449F805EF9DE5D430E4A82457283289E6DDBDD8CAA6270E33DC E27CC587FCF0EC067E2D7BA5CDEFDC13C393823B70A878A0484677EC0C044B73 CF8E40AB2A31EFB0D0778C7F5EAB40975020BC000E5D6011B1697EFE263ACD83 F255767E2EED492AE88AAFC5729AA668AB8C94D1CB010B3F0CE887398FB9A4EE 398B736A41E0DA9DA276F90A24FE8E881849A81B0F07E3E47AE08DA98E693DF0 B3BE2D30D07D9A309EFB6F456EAB79C75FC8097C85E42F43715BA040757DED90 BE4A72C13FD96B6735811C9CAF6B2BA7FA1D7E4EF270DB21C01493D7EA1A73CE 7F3228B30789E3277D1065DF4FC6FF7AA02391AD1B9116D4EF1F37DB2C4795B5 2E46CD541D3AD5CBF1EF4526E2A69D8FD0DFEA8A7ACA93F9387DD0C36377A5FC E161D9E8E366229C677D15A7481827FFE8CD34C0518BF0B6262FD4A292B58FF6 0C8E31D58FCFB6F61699F851AD4957A3FE6CF46A60DFBF93A294E005C952AB16 8BB6C3FF8E67F44140B4D6F78850A64C5740A0DCEDED35ED32F8F7BDBBA73534 F4A84D604E8E9A19B62A120DC96BF8AAE4253664FA7ECC1C5F7A3EA2633E2752 54223969FB5672CF11733CE566911CADDEDE053B0CEB8B2B8401BAB2639B7F2C 2584633894CE9B9F26AD96486271F6DA332F095CD7934ED599FE181CE98A2A95 901A324E112457EB77C4E6A5E3024FCE2B617B75696A971519D64DD57619C937 E12427119CD45E6D199503B71C3AF9703F8137832870C39E8F9E5E92192F1568 0406C45C2954AE06033A351B7DF4789EE5D1E8347764C6189F69A27C904E9E43 77749B098B9D53D8C82551549944EF4ACE03CB68E349A93D210E3A809E6731FC A0976C7201AC120C0446753067ADAB6FF9877DC15FEA1AADF1EFE837E833E655 5BAC70FF73E56E024BB88D0DBB5C12F09B91DFB8C539E904217330916BF98B16 E9A9FD9B74562C3F8719E3662E55D5A670D72F87B3EBAF036C8D043284C1A546 959CAA104EB0E04B5B650E02FF2AB1D891B81D651DD46C5E32D3562E3676DFF2 4BB4294D74B5EC6A28CEEC97742BA7FD36A7760335EEB505B0CC8E6D7B19A18C 1466580E790442EB604452F321CBB51C61DE1766680FBAD9624D5E3261CEA8C6 D177B3E4247E1B0E6538B85A4FC1417586F47F0B306133F466F3FFD634DD6A1B B2D4058B447F661BCE3FFC5A18B15225AC936558B7EB209E7A084A66E100D70E FB635F92465CEAB6DD24091A382929BEF39E948DBFF0F0917AEFCFDF88E45F0D 0B37DA26EE90A1C319B8D6B27FE7C340B130F3BA9719970BFC37D01551CF9BFF 0910686AB307EFB1FEC82CFD22500789D96FC4ED09088718D9584EF1C2BE4202 3B2E545098F3549E33ACB9E3E94D850ED24ECE8390581B666AB6F3F319DAD161 4003D73CB2D7021D8E155C577684FB6B80E9A0C2B5EC1A80C0F851B3522B76F6 39514B0EA4D11D06A508C53502B9BA6ABF2413182E2E17B65ECA44C525422C45 A7DB6D930D16B3F40C4D0BC78142702C52A7DAB7D92C78BC7DA1A8966D60B5AE AB3A8DC80F7D5EE5939BA43DB68B177F225BDF18349C557EE9A83899BBEE4162 49607C07C6FA515C780F754454828B9FD0C725E21D83848B345DBA82D667F9FF 9B7D972C9E4340B60BC6EEB6DE06732AC2F6F74CEB805E336D16713696A5B9E9 A375CBBF0D1CA2E318D147360FECCCB6C4935282DD1417308A7CD13EBA27674B 665BD48F7426AEE611CBD5384B740EDC0C12B4A1168FDF6B1BF345B29DC2CB7A FD3826A561B83E286EF3234E04B9B9C157CA0B5176AF4BD6C9AE2256DD6D28AC B473785B6AB651923BD3C0627827353069CC4435A9869F703ED80A53439A0F57 0E7D4AE76B759EEF5F75AA9554A471D347E8DB44AFB928D943C00FE9C310BDE6 7604EF331F9A9B48F30B3CC07CC0883DEC7E30502CC00F7C2DDB17AC854815C7 A5388E5E4D9767D3610965AEF28182C893703A004CD44DBDD2FD30BB923B9213 D906CE41C075C4ADF35F21903F2102C23057E547AC6C714D77A84DBE566F2EF9 12802B224A4FB9B5B754B4CAF630543D3A03CE535BBE5F7CC778226FE01ACC5E 99D6C92FBBFD0D69CA1823D3B9C166975F0B88E6745B9FBB7EE958556B4CE67D 0491CE245DB057A7ED1D438464BC0C20E84478E59F1B5EBB99ED214C2689336E 59453632B640A348DACCE83CC808F1563538D006C3D43E7101CC4BCC18BEB240 3CBD91FB78F2DEDE2868EBCE107B641D8A8781BAE21A20D865133D0A81A50278 874B6213D10B87F2197EBE547F30C6D25FEB0C22F5AB741371DE58D494E94038 5ABC4546762E15E88E18997B133A8E6D45D65D03E4F9F9D8C1E2D9BFAB4F3D41 334F134172B1F78416D91B13D896256C1182F32193701DD27922467DBC55EDB5 16E054FA65C9DE4AE070A6E387CA7F26F1791E9113E9F55908FD5E71EB16A4F4 BB902598E6274B9FD7FBA81F91AF4F09E30C35A7F8192B419BFB1AB0F74F1C63 F041987BB048C9663DC76E141FF8597F18893BC6FFC590191B3CF3A62B1A3152 61344F36DDCC0C0639867A1861AD5F65C2246A7148770ECE8044B8B70CF0CB49 430E0FF77C46678FACFF3C53AAC89AA7B8FF8E7FCDF07368AC6B90A019C4AA69 5A2CAB381EF599BD6C2184C056E8940215BED5A605446B42B96B78B59E74F8DB EE51FECC45AFBF570B69E602121A7191AF48A9A3AC6FD0AA32B004CD60E1F81A 5D90754193C9A41C5D9A3D1C980C2CC3CBB20070FB79A8A269739B98B3B1B9D3 0955F5A722A1EA9CF3BEE5378D9E2C30210657DEABDE64F5BECDB45E16D11026 E833E9D8F76D3EDF34B01C73CB92552E9F8CA728B3994974DC57AF656D549925 25BF9E00E67FFB4903A9DA977731FEADC690FEC506CB3A70F8D5438FAF1619C1 B81B10178EBBC1143AAD9B273582163772EED691ED36197F522AC70C35943E8E B6FFC38E471ECACEBCE2C447CA9E8713A7D77CE98483F7B4FA46B617E399895D 12F0259F1651CFA3F064F281C5BD9EF0092D94B25FAAEAA03F476FC95E029A60 05F60D812A294AF510F2D27A021AF4A4A8CC4E43E415F4601D4DEFC10A32FF32 F2E5FB36011A2DCD8638608310E174C18B58B8E589FD8A02B49261290D750636 AF9EF054616A9095FD413FE960FE69FBF16CC049014AC5ADB1B29A09631A75F4 D756CE74648369883A7635BB5A2E1BFAE5EDD0C4E0D3CA93F2A73199B6ACBAD6 3B67060323BB5F01621DEDC3E77D1BA33AC9A15C42796F1722884B27F71A751D 9B80510A103D37EB28937EE4D6186E51B9E8AC7FA9F95CA17E9C6C4320275883 0C7AAF1647A433BF0A2C2BF5DB08F17FBDD42D5A4FEAFD1ECE0C8CAFF0712637 A6A34EBB364E0605D587C27AFC181F44ADF9D5E09C2516D86FBFF1A1D74185E9 4290022411F075215FB4C7318C4050E52BEAB7575FF30014E5A29DB1E20BD1DD 286EF37EC8EAF71A631D39054D60EE6FA5CFA96954C56F0A769102C06822F27A CC05C8BA6318F133B2625D5793062028A62E0B83BE8AE86D49D8836EA9D7857C ED26CE949CBAFF35FB0F5E49097B57739811A47E9D40546CBC7251D19DE722CC F8A92DDE8BA714B11CF7B52C7AF6B594CD3E02A6B24E9FF662A9D892D3CE5520 250DB588EB9AA7B03547E910D24B7B3C19312D3153140714BD3D893384871AE0 399698A1691675F21CAC6E0B4166E96E205A541A611516219419D13D8F547039 8AE84325A2547D29BF7C3867FBD0F8E7F9AE1EC4A01F650F4B6221A40F91065A 9F95D433D9276669DD7777B107706F896CDA02042DCA0511E3A1289198681A02 EF670742573591798733A2DC8C314FAAE2C28973E8F70F6CE9069D3865E1DA41 50A6E5820D966FC609F163030CF69D5F9CFFD3FE4315C64B8268F1C04353F76E B81C287E618126D1073DC1B4C594E0A8EFDE6A1910B73284DC3FAF3E0DF1688E A6C08247A322FC5FD912F8A1AD8624C3327745B4016867D1EDF5602ABAF49B28 AFCD9EED38DA7C333FA2D2FB7C5145EAFC2DCBA2FC0145BAAF1F772B8514B811 6358927C989D2CCBB2119918454472FEAB78219E8EA68913466B48B16C4BB0F7 9B3A28CE11F1D59917F0019714561B5A6F9ADA993DE87F05018FC266215177E1 DC75C3B74D645767EA1FBFD0262C83BE3D287E9142BB20DA24F597DC49EC5482 D393F6CBA1C8580FC7FCE1F0FBAA1B65FA03A264A0388F0C8AD2E406DD2A684D EC1A537D6D73409907A266D5418C276611280602916A9CEE465ABF4784EFEEAE D3E2FFB96BED3B7D5E57FDF75D29D73E59222C345DC11C19F6DB4F86225087F1 977C7C8967BFBD4CB2B7014B4F873A3AD278145020C73E4244D0150006CD4D9D 7B5A2F041EAB3D5ED402267206EC069D23C06FCA47BE3FB2BBE8AB041D4C2A57 BD063B0EE0585FF810935B7B46DA5764ED68F1CE97ADC4C521C7C2CD1C183074 C42534BBD88BBBC27C192D4AA57913AD167F83D9F9B5F4712D41D9D35158B67C 3D296BA756B35B47E3122B28D4C595C935EF052F4CF60CDA6E9D3D2D2ABB6359 6CE637FE4FC6225D37D0898FEB2F5550676485D235798180D104C15FA4965623 F87F3522416572141A4F7FF45A705056CBB3A27783581AE7717350B697B5B34B 1201D7391142D6F447C2F6ED336BB8E2EA5912EB7DFAD1B616FCAF748275B369 0CDD0C52AC62922ECE06702E9BFBF64314A2DCE4D44CE75DBAE5D4278D2EE2D8 BC5FA04C1AB788B627D4EA91CA36A1A4AE13508A851300056DCADFBDE748CD4D 92E1D07D1E61D99164A0C899219C428DEC6E486A6A6DC4C6CC0FE4E68883CDBD ACD9F67D3A957AF68C8D034BD42BF82E29EB2A2AFC843E00C5534CF8A85FA1FF 94B8A1F4B7A390087CC1F2484C2BD3607D15445BE9CF8BB50C29EE15F3C1021A 0CBE44B3C8EF35DADD28D6806A9816D27EA98DFDCBB459A7322CD193C13A37C6 C30B2CC0AEAA4855C50A376F27C19D6589A2BFFF6C364BD404BDECFB42506D35 9B6AA8A2687D5403131801CBC017354AC2AADD91A69C71776A3917C5B8635AF4 A07E86C394FB8D92584512F7F3C2F0B478AF5B2020E05F5064808C9700EB5FBD 5B1CDC0E999E164F8D47BD9F22E34B5654B509CA50F5850E7EF262D460E04147 32AA10E5E5CCE60786085F496B068DD77928C3D1B41075C83B4C54DF9BCA99AD 3B749DC3D684E7FF3B9223624F13BB117EABA6CA27566BDAFFE6AE26583F0BC6 AD4D77CFD3D498A7D3A4428FF8982A54F770EC94FD5350279C5F5F4E1561DFE5 73129639E18E82DCF218E82FCE75AC5156A1BE89D28B518B05D950ED7B1A418D 394A0F9CFA3B16BD97011A3268FDC31BC68FAF7DF4A6E463D4B4ABD8CDB791A6 A732E06D344CE6C5A908C9BCC9C4F7D93F4EAB09B3CD2731F89407046AC124 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont TeXDict begin 39158280 55380996 1000 600 600 (FileFormat.dvi) @start /Fa 134[41 6[37 3[50 47[65 3[23 32[47 25[{ TeXaae443f0Encoding ReEncodeFont }6 83.022 /CMMI10 rf /Fb 134[38 4[30 1[28 1[43 42 1[66 20 2[20 3[37 17[46 5[73 45 4[55 20[42 42 2[23 46[{ TeXf7b6d320Encoding ReEncodeFont }16 83.022 /CMSS10 rf /Fc 131[44 1[44 44 44 2[44 44 44 44 1[44 44 44 44 44 2[44 1[44 1[44 44 44 1[44 1[44 1[44 1[44 7[44 2[44 1[44 44 44 4[44 1[44 44 44 44 9[44 44 44 44 44 44 44 44 44 1[44 44 45[{ TeX09fbbfacEncoding ReEncodeFont }43 83.022 /CMTT10 rf /Fd 134[59 2[59 62 44 44 46 2[56 62 93 31 2[31 3[51 62 50 1[54 13[62 2[77 2[106 4[88 88 70 2[81 13[56 56 56 56 56 2[31 46[{ TeXf7b6d320Encoding ReEncodeFont }28 99.6264 /CMBX12 rf /Fe 132[35 31 37 1[51 37 39 27 28 28 37 39 35 39 59 20 37 1[20 39 35 22 31 39 31 39 35 13[39 5[65 3[25 4[54 1[50 12[35 35 35 35 35 35 1[20 1[20 2[27 27 27[39 12[{ TeXf7b6d320Encoding ReEncodeFont }41 66.4176 /CMR8 rf /Ff 201[30 4[30 49[{ TeXf7b6d320Encoding ReEncodeFont } 2 49.8132 /CMR6 rf /Fg 203[33 33 33 33 49[{ TeXf7b6d320Encoding ReEncodeFont }4 58.1154 /CMR7 rf /Fh 240[42 15[{ TeXbbad153fEncoding ReEncodeFont }1 83.022 /CMSY10 rf /Fi 132[48 1[50 4[37 38 39 1[53 48 53 1[27 2[27 3[44 1[42 1[46 12[66 1[72 1[65 1[75 19[27 5[48 1[48 48 2[27 46[{ TeXf7b6d320Encoding ReEncodeFont }22 83.022 /CMBX10 rf /Fj 134[40 39 55 38 45 28 34 35 1[42 42 47 1[21 2[25 42 1[25 38 42 38 1[42 12[59 47 14[63 1[58 2[42 17[30 3[34 34 27[47 12[{ TeX74afc74cEncoding ReEncodeFont }28 83.022 /CMTI10 rf /Fk 133[37 44 44 60 44 46 32 33 33 44 46 42 46 69 23 44 25 23 46 42 25 37 46 37 46 42 4[42 3[62 1[62 62 60 46 61 4[76 52 2[30 2[54 1[63 60 1[62 3[65 2[23 42 42 1[42 1[42 42 42 42 42 42 23 28 23 2[32 32 5[42 20[46 46 12[{ TeXf7b6d320Encoding ReEncodeFont }59 83.022 /CMR10 rf /Fl 134[71 71 2[75 52 53 55 1[75 67 75 112 37 2[37 75 2[61 75 60 1[65 12[94 10[50 105 1[85 88 16[67 67 67 67 49[{ TeXf7b6d320Encoding ReEncodeFont }26 119.552 /CMBX12 rf /Fm 137[51 1[38 1[38 2[49 54 81 7[43 2[54 14[54 4[73 12[73 8[49 3[49 1[49 1[49 3[27 32[57 11[{ TeXf7b6d320Encoding ReEncodeFont }17 99.6264 /CMR12 rf /Fn 134[70 3[73 51 52 51 1[73 66 73 111 36 2[36 73 1[40 58 3[66 10[99 2[73 5[122 83 2[47 1[104 86 19[66 66 2[36 43 45[{ TeXf7b6d320Encoding ReEncodeFont }26 143.462 /CMR17 rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%BeginPaperSize: a4 a4 %%EndPaperSize end %%EndSetup %%Page: 1 1 TeXDict begin 1 0 bop 668 872 a Fn(Geometry)43 b(Input)h(File)f(F)-11 b(ormat)43 b(for)f(LSMearth)h(-)1612 1054 y(V)-11 b(ersion)43 b(1.2.)1699 1295 y Fm(Ste\013en)33 b(Ab)s(e)1565 1491 y(No)m(v)m(em)m(b)s(er)h(8,)f(2004)515 1848 y Fl(1)134 b(In)l(tro)t(duction)515 2030 y Fk(The)29 b(input)g(\014le)g(describ)r (ed)g(here)f(con)n(tains)g(only)g(the)h(description)f(of)h(the)g(mo)r (del)g(geom-)515 2130 y(etry)-7 b(.)63 b(The)36 b(material)g(prop)r (erties)f(of)i(the)f(particles)g(\(densit)n(y)h(.)14 b(.)f(.)h(\))64 b(and)36 b(in)n(teractions)515 2229 y(\(spring)g (constan)n(t,)h(breaking)e(distance)h(.)14 b(.)g(.)g(\))64 b(are)35 b(describ)r(ed)h(elsewhere,)i(either)e(in)g(a)515 2329 y(separate)d(prop)r(erties)g(\014le)h(or)g(in)g(the)h(script)f Fj(TBD)p Fk(.)h(In)f(order)f(to)h(facilitate)g(this,)j(b)r(oth)515 2428 y(particles)27 b(and)g(prede\014ned)g(connections/in)n(teractions) f(ha)n(v)n(e)g(tags.)515 2644 y Fi(Rationale:)639 2797 y Fh(\017)41 b Fk(Mak)n(es)23 b(it)i(p)r(ossible)f(to)g(c)n(hange)f (the)h(prop)r(erties)f(indep)r(enden)n(tly)i(from)f(the)g(geome-)722 2897 y(tries,)g(for)e(example)g(in)h(order)e(to)i(easily)f(run)g(a)g (suite)h(of)g(sim)n(ulation)f(with)h(iden)n(tical)722 2997 y(geometries)j(but)j(v)-5 b(arying)26 b(material)h(prop)r(erties.) 515 3179 y(The)41 b(input)h(\014les)g(are)e(pure)h(ASCI)r(I)i(\014les)e (formatted)g(in)h(the)g(w)n(a)n(y)e(describ)r(ed)h(in)h(the)515 3279 y(follo)n(wing)26 b(sections.)515 3495 y Fi(Rationale:)639 3648 y Fh(\017)41 b Fk(ASCI)r(I)35 b(is)g(preferred)e(o)n(v)n(er)g (binary)h(format)g(for)g(p)r(ortabilit)n(y)g(and)g(debuggabilit)n(y)722 3748 y(reasons.)639 3914 y Fh(\017)41 b Fk(Using)28 b(some)f (\\standard")e(description)i(language,)f(i.e.)37 b(XML)28 b(seems)816 4080 y Fi({)41 b Fk(unnecessary)32 b(as)g(the)h(\014les)g (are)g(mac)n(hine)f(generated)g(and)h(read,)h(whic)n(h)f(re-)905 4179 y(duces)27 b(the)h(need)g(for)f(\015exibilit)n(y)h(and)f(v)n(erb)r (osit)n(y)816 4312 y Fi({)41 b Fk(a)28 b(sub)r(optimal)g(solution)g (with)h(resp)r(ect)f(to)g(\014le)g(size,)g(i.e.)39 b(a)28 b(million)h(particle)905 4412 y(\014le)f(w)n(ould)f(gro)n(w)f(quite)i (large)e(if)i(XML)g(w)n(as)e(used)2538 4382 y Fg(1)p 515 4481 1146 4 v 607 4535 a Ff(1)642 4558 y Fe(It)31 b(w)n(ould)g(b)r(e)h(quite)f(large)g(an)n(yw)n(a)n(y)-6 b(,)34 b(somewhere)d(around)h(40{50)g(b)n(yte)g(p)r(er)f(particle)g (and)h(15{20)515 4637 y(b)n(yte)26 b(p)r(er)e(connection,)j(i.e.)34 b(a)25 b(\014le)f(describing)h(a)g(mo)r(del)g(consisting)g(of)f(10)2554 4614 y Ff(6)2614 4637 y Fe(part)h(in)g(a)f(fully)g(connected)515 4716 y(regular)30 b(3D)h(lattice)g(w)n(ould)g(ha)n(v)n(e)h(a)e(size)h (around)g(100MB.)g(So)g(w)n(e)g(ma)n(y)g(lo)r(ok)f(at)i(using)e (compressed)515 4795 y(\(libz,)23 b(libbz2\))h(\014les)g(at)g(some)g (later)g(stage.)1926 5255 y Fk(1)p eop end %%Page: 2 2 TeXDict begin 2 1 bop 515 523 a Fl(2)134 b(The)45 b(File)g(F)-11 b(ormat)515 705 y Fk(The)35 b(geometry)f(\014le)h(sp)r(eci\014es)g(the) h(o)n(v)n(erall)d(mo)r(del)i(geometry)-7 b(,)36 b(the)g(particle)f(p)r (ositions)515 805 y(and)i(geometries,)j(the)e(assignmen)n(t)f(of)h(the) g(particles)f(to)h(some)f(particle)h(groups)e(and)515 904 y(the)d(initial)g(connectivit)n(y)g(b)r(et)n(w)n(een)g(particles,)h (i.e.)53 b(the)33 b(b)r(onds.)54 b(In)33 b(case)f(of)h(spherical)515 1004 y(particles)27 b(the)g(p)r(er-particle)g(geometry)f(is)i(reduced)f (to)h(just)g(the)g(particle)f(radius.)515 1235 y Fd(2.1)112 b(File)38 b(Structure)515 1388 y Fk(The)27 b(geometry)g(\014le)g (consist)h(of)f(a)g(header)g(and)g(3)h(con)n(ten)n(t)f(sections:)616 1549 y(1.)41 b(The)34 b(\\mo)r(del)g(geometry")e(section)i(whic)n(h)g (con)n(tains)f(the)h(con)n(taining)f(v)n(olume\(s\))722 1649 y(of)28 b(the)g(mo)r(del)g(and)f(de\014nition)h(of)g(circular)e (\(p)r(erio)r(dic\))i(b)r(oundary)f(conditions)616 1812 y(2.)41 b(The)28 b(\\particles")e(section)616 1976 y(3.)41 b(The)28 b(\\connections")e(section)515 2207 y Fd(2.2)112 b(Header)515 2360 y Fk(The)33 b(header)g(just)i(con)n(tains)d(an)i (iden)n(ti\014er)f(for)g(the)i(\014le)e(t)n(yp)r(e)h(and)g(the)g(v)n (ersion)e(of)i(the)515 2460 y(\014le.)515 2620 y Fc(LSMGeometry)39 b(1.2)515 2781 y Fk(where)27 b Fb(LSMGeometry)i Fk(is)e(the)h(iden)n (ti\014er)g(and)f Fb(1.2)g Fk(the)h(curren)n(t)e(v)n(ersion)g(n)n(um)n (b)r(er.)515 3013 y Fd(2.3)112 b(Mo)s(del)38 b(Geometry)515 3166 y Fk(The)33 b(mo)r(del)g(geometry)f(section)g(con)n(tains)h(a)f (description)h(of)g(the)g(v)n(olume\(s\))g(in)g(whic)n(h)515 3265 y(the)39 b(mo)r(del)h(is)f(con)n(tained,)i(a)e(de\014nition)g (whic)n(h)g(of)g(the)h(b)r(oundaries)e(of)h(this)h(v)n(olume)515 3365 y(are)33 b(p)r(erio)r(dic)i(and)g(the)g(dimensionalit)n(y)f(of)g (the)h(mo)r(del.)59 b(In)35 b(the)g(curren)n(t)f(v)n(ersion)f(the)515 3465 y(con)n(taining)e(v)n(olume)h(is)g(just)h(an)f(axis)g(aligned)g(b) r(ounding)g(b)r(o)n(x)g(whic)n(h)h(is)f(giv)n(en)g(b)n(y)g(the)515 3564 y(co)r(ordinates)27 b(of)j(minim)n(um)g(and)f(maxim)n(um)g (corners.)40 b(The)29 b(b)r(oundaries)f(are)g(describ)r(ed)515 3664 y(b)n(y)c(a)h(b)r(o)r(olean)g(v)-5 b(alue)24 b(\(0,1\))h(for)g (eac)n(h)f(co)r(ordinate)g(axis,)h(where)f(1)h(stands)f(for)h(p)r(erio) r(dic,)g(0)515 3764 y(for)30 b(non-p)r(erio)r(dic.)46 b(The)31 b(distinction)g(b)r(et)n(w)n(een)g(2D)g(and)f(3D)h(mo)r(dels)g (is)g(done)f(b)r(et)n(w)n(een)515 3863 y(done)h(in)h(order)e(to)i(b)r (e)g(able)f(to)h(calculate)f(the)h(correct)e(v)n(olume)h(of)g(a)h (particle)f(from)g(its)515 3963 y(radius,)g(i.e.)47 b Fa(\031)s(r)1034 3933 y Fg(2)1103 3963 y Fk(vs.)1260 3930 y Fg(4)p 1260 3944 34 4 v 1260 3991 a(3)1303 3963 y Fa(\031)s(r)1392 3933 y Fg(3)1430 3963 y Fk(.)h(F)-7 b(or)30 b(V)-7 b(ersion)30 b(1.1.)46 b(\014les)31 b(whic)n(h)g(ha)n(v)n (e)f(no)h(dimensionalit)n(y)515 4062 y(giv)n(en,)c(2D)g(is)h(assumed.) 515 4223 y Fc(BoundingBox)39 b(min.x)i(min.y)h(min.z)f(max.x)h(max.y)f (max.z)515 4323 y(PeriodicBoundari)o(es)c(x)43 b(y)g(z)515 4422 y(Dimensions)c([2D|3D])515 4654 y Fd(2.4)112 b(P)m(articles)515 4807 y Fk(The)32 b(particle)f(section)h(of)g(the)g(geometry)f(\014le)h (con)n(tains)f(b)r(eginning)h(and)g(end)g(mark)n(ers,)515 4907 y(a)h(k)n(eyw)n(ord)e(for)i(the)h(particle)f(t)n(yp)r(e,)i(i.e.)54 b Fb(Simple)34 b Fk(for)e(simple)i(\(irrotational\))e(spherical)515 5006 y(particles,)21 b(the)f(total)g(n)n(um)n(b)r(er)g(of)g(particles)g (and)g(a)g(set)g(of)g(data)g(for)f(eac)n(h)h(particle.)34 b(In)20 b(case)1926 5255 y(2)p eop end %%Page: 3 3 TeXDict begin 3 2 bop 515 523 a Fk(of)30 b(spherical)e(particles)i (these)f(data)h(consist)f(of)h(the)g(p)r(osition)g(\(v)n(ector\),)g (radius)f(\(\015oat\),)515 623 y(particle)24 b(id)g(\(in)n(t\))i(and)e (the)h(particle)f(tag)g(\(in)n(t\).)37 b(The)24 b(tag)g(is)h(used)f(to) g(assign)g(the)h(particle)515 722 y(to)i(sp)r(eci\014c)h(particle)f (groups.)515 888 y Fc(BeginParticles)515 988 y(Simple)515 1088 y(nparticles)515 1187 y(pos0.x)41 b(pos0.y)g(pos0.z)g(rad0)h(id0)g (tag0)515 1287 y(pos1.x)f(pos1.y)g(pos1.z)g(rad1)h(id1)g(tag1)515 1386 y(pos2.x)f(pos2.y)g(pos2.z)g(rad2)h(id2)g(tag2)515 1486 y(...)515 1586 y(posN.x)f(posN.y)g(posN.z)g(radN)h(idN)g(tagN)515 1685 y(EndParticles)515 1901 y Fi(2.4.1)93 b(P)m(article)33 b(T)m(yp)s(es)p 515 1983 1637 4 v 513 2082 4 100 v 565 2052 a Fk(k)n(eyw)n(ord)p 992 2082 V 177 w(description)p 2149 2082 V 515 2085 1637 4 v 515 2102 V 513 2202 4 100 v 565 2172 a(Simple)p 992 2202 V 235 w(irrotational)25 b(spherical)i(particle)p 2149 2202 V 513 2301 V 565 2271 a(SimpleRot)p 992 2301 V 100 w(rotational)f(spherical)g(particle)p 2149 2301 V 515 2305 1637 4 v 515 2498 a Fd(2.5)112 b(Connectivit)m(y) 515 2652 y Fk(A)25 b(list)h(of)f(prede\014ned)h(connections)e(b)r(et)n (w)n(een)i(particles)e(is)h(necessary)f(for)h(the)h(de\014nition)515 2751 y(of)f(particle)f(in)n(teractions)g(whic)n(h)h(are)f(p)r(ersisten) n(t)h(and)g(not)g(dynamically)f(formed)h(during)515 2851 y(the)20 b(sim)n(ulation,)h(i.e.)35 b(b)r(onds.)f(The)20 b(connectivit)n(y)g(section)g(of)g(the)g(geometry)f(\014le)h(con)n (tains)515 2950 y(b)r(eginning)25 b(and)h(end)f(mark)n(ers,)f(the)i(n)n (um)n(b)r(er)f(of)h(connections)f(and)g(for)g(eac)n(h)g(connection)515 3050 y(the)39 b(ids)f(\(in)n(t\))h(of)g(the)g(t)n(w)n(o)e(particles)h (in)n(v)n(olv)n(ed)f(and)h(a)g(tag)g(\(in)n(t\))h(whic)n(h)g(assigns)e (the)515 3150 y(connection)25 b(to)g(a)g(connection)g(group.)35 b(The)25 b(pairs)f(of)i(particle)e(ids)i(m)n(ust)f(b)r(e)h(ordered)e (i.e.)515 3249 y(the)k(\014rst)f(id)h(m)n(ust)g(b)r(e)g(less)f(than)g (the)h(second)f(one.)515 3415 y Fc(BeginConnect)515 3515 y(nconnect)515 3615 y(id0_1)41 b(id0_2)h(tag0)515 3714 y(id1_1)f(id1_2)h(tag1)515 3814 y(id2_1)f(id2_2)h(tag2)515 3913 y(...)515 4013 y(idN_1)f(idN_2)h(tagN)515 4113 y(EndConnect)515 4279 y Fj(Should)30 b(we)g(de\014ne)f(the)h(syntax)f(for)h(n-p)l (article)g(\()p Fa(n)23 b(>)g Fk(2)p Fj(\))29 b(c)l(onne)l(ctions)g(or) h(le)l(ave)h(that)e(for)515 4378 y(later)h(versions?)515 4653 y Fl(3)134 b(Example)515 4835 y Fk(Simple)24 b(example:)35 b(b)r(oundaries)23 b(p)r(erio)r(dic)g(in)h(x,)h(op)r(en)f(in)g(y)f(and) h(z,)h(8)e(irrotational)f(spher-)515 4934 y(ical)32 b(particles)g(of)g (radius)g(1.0,)h(p)r(ositioned)g(at)f(the)h(corners)e(of)i(a)f(cub)r(e) h(and)f(connected)1926 5255 y(3)p eop end %%Page: 4 4 TeXDict begin 4 3 bop 515 523 a Fk(along)23 b(the)i(edges)f(of)g(the)h (cub)r(e.)36 b(The)25 b(particles)e(are)h(group)r(ed)g(in)n(to)g(2)g (groups,)g(represen)n(t-)515 623 y(ing)k(the)i(particles)e(with)h Fa(y)f Fk(=)d(0)j(and)h Fa(y)f Fk(=)d(2)j(resp)r(ectiv)n(ely)-7 b(.)40 b(The)29 b(tags)f(are)g(0)h(for)f Fa(y)g Fk(=)d(0)p Fa(:)p Fk(0)515 722 y(and)30 b(1)g(for)f Fa(y)i Fk(=)c(2)p Fa(:)p Fk(0.)44 b(The)30 b(connections)g(all)g(b)r(elong)g(to)g(the)g (same)g(group.)44 b Fi(Note:)d Fk(The)515 822 y(particle)25 b(tags)f(and)h(the)h(connection)f(tags)f(are)h(indep)r(enden)n(t)h(of)f (eac)n(h)g(other,)g(i.e.)36 b(w)n(e)25 b(can)515 922 y(use)i(\\0")f(as)h(a)h(connection)f(tag)g(ev)n(en)g(if)h(\\0")e(is)h (already)g(used)g(as)g(a)g(particle)g(tag.)515 1088 y Fc(LSMGeometry)39 b(1.2)515 1187 y(BoundingBox)g(-1.0)j(-1.0)g(-1.0)g (3.0)g(3.0)g(3.0)515 1287 y(PeriodicBoundari)o(es)37 b(1)43 b(0)g(0)515 1386 y(Dimension)d(3D)515 1486 y(BeginParticles)515 1586 y(Simple)515 1685 y(8)515 1785 y(0.0)i(0.0)g(0.0)h(1.0)f(0)h(0)515 1885 y(0.0)f(0.0)g(1.0)h(1.0)f(1)h(0)515 1984 y(0.0)f(1.0)g(0.0)h(1.0)f (2)h(1)515 2084 y(0.0)f(1.0)g(1.0)h(1.0)f(3)h(1)515 2183 y(1.0)f(0.0)g(0.0)h(1.0)f(4)h(0)515 2283 y(1.0)f(0.0)g(1.0)h(1.0)f(5)h (0)515 2383 y(1.0)f(1.0)g(0.0)h(1.0)f(6)h(1)515 2482 y(1.0)f(1.0)g(1.0)h(1.0)f(7)h(1)515 2582 y(EndParticles)515 2682 y(BeginConnect)515 2781 y(12)515 2881 y(0)g(1)g(0)515 2980 y(0)g(2)g(0)515 3080 y(0)g(4)g(0)515 3180 y(1)g(3)g(0)515 3279 y(1)g(5)g(0)515 3379 y(2)g(3)g(0)515 3479 y(2)g(6)g(0)515 3578 y(3)g(7)g(0)515 3678 y(4)g(5)g(0)515 3778 y(4)g(6)g(0)515 3877 y(5)g(7)g(0)515 3977 y(6)g(7)g(0)515 4076 y(EndConnect)515 4351 y Fl(4)134 b(History)p 515 4468 2753 4 v 513 4568 4 100 v 565 4538 a Fk(10.6.2003)p 949 4568 V 96 w(initial)28 b(v)n(ersion)p 3265 4568 V 513 4667 V 565 4637 a(11.9.2003)p 949 4667 V 96 w(v)n(ersion)e(1.1)h(,)g(c)n(hanged)g(from)g(m)n(ultiple) h(to)g(single)f(tag)g(for)g(particles)p 3265 4667 V 513 4767 V 606 4737 a(3.2.2004)p 949 4767 V 97 w(v)n(ersion)f(1.2.,)h (added)g(2D/3D)g(indication)p 3265 4767 V 515 4770 2753 4 v 1926 5255 a(4)p eop end %%Trailer userdict /end-hook known{end-hook}if %%EOF ./Doc/Deprecated/FileFormat.tex0000664000175000017500000001507112176660653016162 0ustar vborosvboros\documentclass{article} \begin{document} \title{Geometry Input File Format for ESyS-Particle - Version 2.0.} \author{Steffen Abe} \date{\today} \maketitle \section{Introduction} The input file described here contains only the description of the model geometry. The material properties of the particles (density \dots) and interactions (spring constant, breaking distance \dots) are described elsewhere, either in a separate properties file or in the script \textit{TBD}. In order to facilitate this, both particles and predefined connections/interactions have tags. \subsubsection*{Rationale:} \begin{itemize} \item Makes it possible to change the properties independently from the geometries, for example in order to easily run a suite of simulation with identical geometries but varying material properties. \end{itemize} The input files are pure ASCII files formatted in the way described in the following sections. \subsubsection*{Rationale:} \begin{itemize} \item ASCII is preferred over binary format for portability and debuggability reasons. \item Using some ``standard'' description language, i.e. XML seems \begin{itemize} \item unnecessary as the files are machine generated and read, which reduces the need for flexibility and verbosity \item a suboptimal solution with respect to file size, i.e. a million particle file would grow quite large if XML was used \footnote{It would be quite large anyway, somewhere around 40--50 byte per particle and 15--20 byte per connection, i.e. a file describing a model consisting of $10^6$ part in a fully connected regular 3D lattice would have a size around 100MB. So we may look at using compressed (libz, libbz2) files at some later stage.} \end{itemize} \end{itemize} \section{The File Format} The geometry file specifies the overall model geometry, the particle positions and geometries, the assignment of the particles to some particle groups and the initial connectivity between particles, i.e. the bonds. In case of spherical particles the per-particle geometry is reduced to just the particle radius. \subsection{File Structure} The geometry file consist of a header and 3 content sections: \begin{enumerate} \item The ``model geometry'' section which contains the containing volume(s) of the model and definition of circular (periodic) boundary conditions \item The ``particles'' section \item The ``connections'' section \end{enumerate} \subsection{Header} The header just contains an identifier for the file type and the version of the file. \begin{verbatim} LSMGeometry 1.2 \end{verbatim} where \textsf{LSMGeometry} is the identifier and \textsf{1.2} the current version number. \subsection{Model Geometry} The model geometry section contains a description of the volume(s) in which the model is contained, a definition which of the boundaries of this volume are periodic and the dimensionality of the model. In the current version the containing volume is just an axis aligned bounding box which is given by the coordinates of minimum and maximum corners. The boundaries are described by a boolean value (0,1) for each coordinate axis, where 1 stands for periodic, 0 for non-periodic. The distinction between 2D and 3D models is done between done in order to be able to calculate the correct volume of a particle from its radius, i.e. $\pi r^2$ vs. ${4 \over 3} \pi r^3$. For Version 1.1. files which have no dimensionality given, 2D is assumed. \begin{verbatim} BoundingBox min.x min.y min.z max.x max.y max.z PeriodicBoundaries x y z Dimensions [2D|3D] \end{verbatim} \subsection{Particles} The particle section of the geometry file contains beginning and end markers, a keyword for the particle type, i.e. \textsf{Simple} for simple (irrotational) spherical particles, the total number of particles and a set of data for each particle. In case of spherical particles these data consist of the position (vector), radius (float), particle id (int) and the particle tag (int). The tag is used to assign the particle to specific particle groups. \begin{verbatim} BeginParticles Simple nparticles pos0.x pos0.y pos0.z rad0 id0 tag0 pos1.x pos1.y pos1.z rad1 id1 tag1 pos2.x pos2.y pos2.z rad2 id2 tag2 ... posN.x posN.y posN.z radN idN tagN EndParticles \end{verbatim} \subsubsection{Particle Types} \begin{tabular}[h!]{|l|l|} \hline keyword & description \\ \hline \hline Simple & irrotational spherical particle \\ %SimpleRot & rotational spherical particle \\ \hline \end{tabular} \subsection{Connectivity} A list of predefined connections between particles is necessary for the definition of particle interactions which are persistent and not dynamically formed during the simulation, i.e. bonds. The connectivity section of the geometry file contains beginning and end markers, the number of connections and for each connection the ids (int) of the two particles involved and a tag (int) which assigns the connection to a connection group. The pairs of particle ids must be ordered i.e. the first id must be less than the second one. \begin{verbatim} BeginConnect nconnect id0_1 id0_2 tag0 id1_1 id1_2 tag1 id2_1 id2_2 tag2 ... idN_1 idN_2 tagN EndConnect \end{verbatim} \textit{Should we define the syntax for n-particle ($n>2$) connections or leave that for later versions?} \label{sec:prp} \section{Example} Simple example: boundaries periodic in x, open in y and z, 8 irrotational spherical particles of radius 1.0, positioned at the corners of a cube and connected along the edges of the cube. The particles are grouped into 2 groups, representing the particles with $y=0$ and $y=2$ respectively. The tags are 0 for $y=0.0$ and 1 for $y=2.0$. The connections all belong to the same group. \textbf{Note:} The particle tags and the connection tags are independent of each other, i.e. we can use ``0'' as a connection tag even if ``0'' is already used as a particle tag. %%\newpage \begin{verbatim} LSMGeometry 1.2 BoundingBox -1.0 -1.0 -1.0 3.0 3.0 3.0 PeriodicBoundaries 1 0 0 Dimension 3D BeginParticles Simple 8 0.0 0.0 0.0 1.0 0 0 0.0 0.0 1.0 1.0 1 0 0.0 1.0 0.0 1.0 2 1 0.0 1.0 1.0 1.0 3 1 1.0 0.0 0.0 1.0 4 0 1.0 0.0 1.0 1.0 5 0 1.0 1.0 0.0 1.0 6 1 1.0 1.0 1.0 1.0 7 1 EndParticles BeginConnect 12 0 1 0 0 2 0 0 4 0 1 3 0 1 5 0 2 3 0 2 6 0 3 7 0 4 5 0 4 6 0 5 7 0 6 7 0 EndConnect \end{verbatim} \section{History} \begin{tabular}{|r|l|} \hline 10.6.2003 & initial version \\ 11.9.2003 & version 1.1 , changed from multiple to single tag for particles \\ 3.2.2004 & version 1.2., added 2D/3D indication \\ 17.2.2011 & SimpleRot is no longer supported by ESyS-Particle, with the Simple particle type now encompassing both rotational and irrotational particles \hline \end{tabular} \end{document} ./Doc/Deprecated/FileFormat.pdf0000664000175000017500000017552012176660653016141 0ustar vborosvboros%PDF-1.3 %Çì¢ 6 0 obj <> stream xœµYËr¹Íš™ªü++O•ãýÈn<ždT5N%¶òXhÓ"[TÇ|ÈÝähdÿ|ÀES¢Y¤\eI  Ü{î9ç‚有9ÿòÏåvöaöò­ž¯‡Ù‡¹?*?–Ûù«+|ˆ?…cR=¿º¥çÄ\É„[k˜´ó«íìÅ_Úý¶=ôß_ýgæSÖY̼ZÍ^\îî‡8¬“ÆÉ<üçnÓÆQ%WÚ—Ñ8äY’ë<´ï·MzÞ2#½Ë÷û>Jż±eî/ïÞ´M¸w¡™R¢ìb‡Â{ƽŸ/¤`^ü3~ 83Æ—¹m?tûÝøJô´! &YETÔ\Œ‘1* L3Ú,‹­Ëqî»Cûûv\CyfE9ß7ãë0?ð26†aá8“~Üšb&­ñ×ý8Y#Æ¢„í×8d˜ÓA”Ç·y–²Ìßb™WÁ::Ô8M1ç)5þ"qÊn$ç:ÒαªÒ6RlDÎZ–Љ1š ¡%›6Cg>ôã9r¥BÉÔê¸<ä ãMaX°ÒŽ [˜ø‡Ó,]ÝQ’œY`(¯ÑdIˬRåðß%` ËDª¼¯–}7ÆEqæ…)´«­d‰Ë]Û·yËŽSè—ûr8§®évCŽƒ¶”Óýnó˜Wš—wÒ)bAYº³û ƒzð%·ûÛq¾`†‡ð¥E¶û| c¸ …7Ïã°F¦ZPXA €V$´•êÅ|ktÉËå¡D(Ñ)¹80å5Úö]3¾Qs¦¹.ŸÜ÷ûûœ;$8]›çXAžXbíg'öLp:ñ=ê¼[nÒAã²ìùGß ]‚F˜Tßx¾ÀœàRLχԡRäéP<±úü¬ëïKj„)‘iv«|RåCEiâ4ޱò0bÕŒøR*8gN)¤€÷ù Ã}ßíÖ#`5ó ‡&Q *×›²æEÞW4÷¦o›÷yÄȉ@¨ëâ"ËDÁyN,÷ùˆ|eèlDúV[ôµZÏ8I¼µÚ‡Xãñ´Ç+MItÛ}N³¬2B™à˱ši°±rôC º¶9ùí°å”WÎqµÖö…r¹%$ÑÖ”ñÏ+:xÂw"…Ä Ý ?BdŒ¢yW¯^Ÿ#QT§qáå‚U³•™Z ±V¿Êá„v]ž>ìóžƒ&9¹m–ݦ;”ÐE1tõ<Ýp‘ÅêI`ÌÒe‚¤&©^(ä 7-€“úBƒ¤úÎe&SEØ¥¢c™ØtCBy×ìÖI7<ž¦2+Ø·1"Äí_«=HZ­½n·jï3ÜRW¦cxL6¢,¼.äsHÂCjM‰Ám¿ßæIßÙ­Eýl“€Â®±èr —zlï"{ãÈNf§Š7»”ÍýÖlïs4cV-…Hœè¡V%ܨxZ•«V“× ]6¨`MzÓw…†+@›„Yë*h†c— z¬\õĆ@¤<‰òÐßé %ù¸iЉÚT™å¡K•.%Èüg—3™/*œn™|ÄBˆµ­l½NMFFç[’­›dcTÿ5áкjšþ±È*̤§ÈO êSÉo20c£0a¥¸?gXãyÏVkcbX²›ÎÐF‹ë‘U:ïÙ™FcîJ~~x÷ãe)òŽ—Év8S÷=ö9åáda ¯œÔ¯Éƒ(jŠºÛTpÄdϲÑ9¯P8CpâŒãJâå[È4¦;’mlCõú=Nï ºšÿ=Þ`£³g1|¾€ão`Õ(v€À.·³W—³——oæ‡þØÎ^þk.f/Žÿ½úÛøqùzþ»ÙO—i­³·ápÀ·s`áém8˜˜–‘BÆËp‘7îæ0¶…ˆ³ÁÞ°ð³QlFuÏú."ü‡T›Þ)R֒ÑŠüÉ /D á8¹ƒÎÖ=$ø“Tðö¸É—H§¢.(ç ÑÑBq‘´cÊ]>ëÊ­o¹‰ÔžL­z3¤=h‘¶6£ü®ý»æy¡æNW„Zgø ÚM2õ+kIà²Ú°I=êzù #óæËmötñ®È¥ ´ù3çÉ[ÒèȪ·ËÈš˜²ld„ ª¼85sñ+-A›Ü¿/]¿çK½ –“–ëH^ÚQ¡·ÜoÑ9 %•/&¥|ýbÓÝ|,Ún<¹ ß|”éº;vòŽñâiÁ¼~o˜÷­ßìP£ b{?ÁFæ'T‰£» të¶|õxâ§ÐJŒea¢ò bü÷_Ž€¤endstream endobj 7 0 obj 2686 endobj 41 0 obj <> stream xœ­ZK¹ÎYðÈMÈ%³Àˆæû‘£ãݬ5à¬É!“C¯Ôžé]©{Ü’lOŸb“,öK­ ðE‹_}õUQŸ×”°5õÿâßíaõyõyͺ±ôg{X¿¹[½þ™é5“DHÍ×wŸVá lÍ„ vm¨!L®ï«þÝݯ+. cÂÁŒ»Ýêæî±ôƒ‚gƒ?Tû0ʈÑV¦Q?d‰ÕÊò8Ô´‡âä‡Á·vÄi®¥7aã 1BÙõ†3+ô¶‚!•‰+<”Í¡<µÏþé {L`š8ÆE<>ù1G “Rűr[½*ÝÊðɶSØŽY¨M 4Ý>Ä8ÆÒ±¾ø!E¨ <}µl‹ý¾[‘ë’E‡îËL¥(‹c»r?µ²&áˆäi…[?b5NË%+ŸŠöTmãÀÒÜà'ÁX£O—Õ«SÕÔ6‚Q¢ÕzÃx÷YQïºcP¢¨¹¼*=JCµžØ#$ÚSÕC}(ëxK\ ôr7J¥S6Ÿº8QÙw³Ë¦cv¦KFçè–äkÉu²ûfw§Ñ„ «ç|e·è«‡¶9?ukCÁ’ÉÑ)Á àÆ ˆÚ™ÞlfUƒƒ‹}D˜°2m½mêºÜžª/Uçiˆr4}øÊVqä—éÝ•Ñ}”[—ƾú!¸t%h²  žï¼7>w¸D ¨ä<¡²"%é¾àkËÙÃÍÕÔ»#‰§…pNqö®ŽWBJS·Å1Å´vbxÿ ïÿøôX¶Õ6xq#¨" —`:DŒë-DAÙnúH€»0 A: À‚MfUÝŽ3\ÇÚrwÞ–»ˆ'ª2Ô›ˆkž1ùëùxŠžÖÚÚ‰ÑlŠönaT‰@m‹]u.ý3øÛ»N©ŽÊ7ÜÂTÅ€GáDÁ[œ°n j‡<š(‚C:“F?žÚóötnËYŽVp<'$\K8š‚“æ9Zx*q´7aQq¬‚W «Xéä\#.ŠD Ãó±,ve¿ÎK€a ž™ËDø¾>gyÿn°¼x#eB¯Ê7rJtœ¹ëèãð§§N&˜Á¦ÁùŒDàëa… àvó…ÄÃå|aÜ$_ü¡s°Ð`~‰ötÞ„J“¼ñõ±Ú"ðTrñc å e,º£¨BÂàø4âÖj+®-PÕÑ.Éf²i³?Êû›ãýwÁ©–GsŽBXˆiºÐrþíÝ,Rv嫺J¾ô9LaΛ³`[µÛó¾h1Zu:áýÍSò2Šà¶&Ú!á®Ú†3ƒ%’þåžë]‚Z¥²ów½ôÎ dÕ€G¥#\Æ£Ïú=<"Ë&œY-Íg o!œü.:äEñò]RR“»}´A"¦ÛL˜VöcÈt|Êt?"?L-M „ F'ËvHÆ*$™ÄçݩϯÄ$N¢[Š4U šÂ²ÚEú1Ä9Ü뺵 H-¤?5m"U̽9œÅxÈ Y÷’|w&ï|~Šð¦Ü¡h¼© DPè“3‰Q3˳ŠùïDƒtè$Ô‚ŒŽƒôà h5œ'å@Û¿V€!LøiuóÓÇ÷I©è+ÍX<9“¨L ‘fõ(ü+H‘˜!±ö&sKŒÁú¡¿ÛÌÊ€kPÍÉyAHÀÇJšE»¨Ø2╌íÛ…“{JÔlÑ–í¹mƒ5rÊ`pœ’ÍyqùʽßðÊë0•äÁó‰{Iw–í¼T[w¼+INÄ”Þ7‘j5£ôàkPŽ:néV7@°œê9I4àå\Ô‹ÇQ}ËèHitç€K§¦WU¼8aGùd{òiW·mõ”ÖV Ì-Fã@™ÏVW³8Tk:ócU'eœ¥õP ¤…C䃰ö<6SyY Âe|@l®¸£Ž‡ îäUÒ.w·Q·3p¤ï+d9 D¿@|A-Áܸ‚¼9¡¿N.–a&¨bu !`‘ªç— Nþ¶ÉáÒE†kðNì5 Ú„a–™sqzAìÄÁ^'$ç®grJ/™íªCY{B)ö¡š†âÄqä¯XM …ÕôBf®|D¡Â9¥ÒŠXàŠ,ggW\äM˜É”žËîë¥JÍÄh«%ÞÊ ä73WåwÜÎj,¬±ôU C¦§~x®fQÑ‡Š¦ø–Ѧ4vVöÕCKgI¬CÀ^€w:ä¨àæv!0èÚ} €`Œb×c±$‚´Œ%ÑÜѪ/OÄš¾«‡Öõ²ÛóÔ’¡Ât˜¶Md*±zhZðDqŠ‘.üâ#ýlËsîþÑ'J˜eaÌÙQ«Ë— YÓàò aã÷¹Áïo›¶¼’xKVbdgõ¯sÍ{•Å™™Åß@-œù&¤¯_bz· 3G›v,¥eîÖ©"fI*Ø5Œ©A'¢Ù—ûtA&¿4jC1˜Šý9»C¤ÑûzËB¾]ªx,ñ¡p°¨È‹mD›V(!ƒåbPÏ_P¼&§ÑV§·‘éL¦ ”À Ý$CÉË&Ž:žBÇxŠŠ¹¤ÉÿM®¸MÙÞ ÇÓxÁp^–{ƒ¹R諺©7Oñb˜Å^úÅÍH¼pã¾V#|wÕñTÕ(ˤçaTÿî-Ãî0 ¢Î<›‚Uçd)f&^Èh‰…5ò˜N dº]S‡³{5º$ÇñtîêÙ:¦£Bõ™®·ç}”ŠŒÙ|cõã›—Y4õ[ Õ KYn„@Ôÿ²Oš kµ°Þ¶Øû6O鋎ÉKˆî5à õoC‘ ‘jLÔ•Ä eå¤ jä¸ Ú×ñ£7 )±]ü©m‘S>ÎU§øäûB`ø„Þòm4~¤jRe¿n„ðËÍÜ߇c¹žú‰­¸Q€”}ÊKz) J |ð& ‹+¸$È…iÊ—Ôñ®Ä|šuœ¦±#ý´ïïÖ]}^KصÝÜ€¾X{\y¸qg¨ÿ»=¬Þ¼[½~÷~}jÏåêõß×lõúGÿß›†?ïÞ®·úþ]·ÒüCêÈ–0ÅïC8ì b»‡T1ç9ÿ¦ám¾÷m¹ÿ Jc ý'æü'‰êF’ŠΆ€z“i#î•Åi ¡ aÄ2{öt)W¨5¡î%1˜ÅŽÅ«øZ3ä›E ÆEÚÇ"“`té!6%¤Ü¦ª›˜x¸Áo¾¤x‰Eš>EÍ‹¾Û˜ozo‘®ÌÃ#̽Ç#Äün¶µQfpýVÔ›¨‚ß4ž¶´@ç‘n@²„÷†Ÿã0¨æþð¿ffßp‘þl~žŸÝ-²á¾ë&-òÈŸ\!•¾‰‚®»¸Š8 xè¨ô.ý {ž…@‰ÊA y›îõ/UX¼’ð·ÿoÿ==쥙ƒ–‘Œ*¦×2úiWç†eÿ%rÚ_†:¢{]Ÿy/sù½ì2u_lú`R°z¦ší% Ñ[œ³ã·8í+Ú«o7©qm9]8UêL`^Éf´ŠËÈ2¿»ôÕþõ'wø¬\suЗÈÕnL„®÷ž÷Û -<gÕ½Wœveç:ßLïõ´Gw¦óÏ^ÚQ¿c•g/ÅŽû·,¿þ}¬OûÙZŸÜrw!Åò´é¿ëªcÑÀû›ªm›Sqê81” Ìe蘙y6àÆÑï ˜7kTß‚ÿYÎk'Ø/ÿhßÿÐŽLa¬5¾¨ÿMÝ\úñµ¹,«$dVÔÄ ðO.r‚Ôõo6\²…­vÅ©ˆ©Ð23­æ¸¾^ÍùþPn'$ãI4àœfÇvƒô>ù½Å.‚Ìÿ¼Ê¥ ã(“ü¿ÿne endstream endobj 42 0 obj 2915 endobj 57 0 obj <> stream xœ½Y[oÛØî³¡·õÖñ¹_úТÙh€ÖH½ú àJŒÍ®E*¤äÄûë;ç6$%R®ÓM É9ß|s}^R–ÔÿK×ÛÅçÅç% gùÏz»|{·¸ºenéˆÓ\ËåݧEü€-™Ä. 5„ÁùvqÑ|úñîß ÆˆæÎÁ+w›ÅE·{(Ûj]<úG’Ã5KvE»¯ÖeQÂ-—éÑþ¡ìJÌÑJÛt¼)öE8„2“嬛º«º½ 8ÀtYÊ ÖŠŒÄ)b”ãùª¦«öUS'¡Ò1|¸xò‡–X­l¾©\ï›ö×áuF@r¾¯-6Õ!h(@Cæ ŠùÐ6Å>}³LÅ—+ÆGÔ„ï€j2Ôj“tbÊ:”UÕéÔ™‚ìpH‰q 6uüÞ'KæD3àd¾¸Ï¯ó"N%œÒÌí]¼SB¹2ç¤V9G “&¿xèÊ çDPt‚}“n‡Ëó›E×U÷w„ ¦þ[}Áž5ooÌáœ0Št;„'ºBõfî”Ä wìì‰N§‘Îû¶9ìº@ÓÕ­´ÃH[Ycà€ÓèoËûª~? ï3_\ü\mw ÿ‡ÅEÝGÖ‹¤¼°k:J¾Â‘ÐDI–}7?\§ç¿žƒGÓ Ÿ&ŒS´T:¤Ä*:°i8]1"œîý»é@™º“Í`a3XØ6‰…aAÛ‚x>‡ÏÀá3pø> ‡ORCnº™¶ÙÍ °›`7SÀn&ÝÌñt]oFžwuËÕÐ_![»ˆR&a6à ßû ‘·ùhBóœ©îâ»JQ‘µxÞ¥4Lä \ß-ÿé«—Ó’ÈPžVq|…2»Œ~ È½}·¸z÷å¾=”‹«-Ùâêoþ¿·ï‚?ïþºüÃâú]å¿‚€0/HQÿ÷5‚^WR\« ¾iJ꯱2QA‘˜òùKÊ^P3 M»ð0Æ€Úúý±;C¸àCô›²[·Õ.Ò)t‚;Kô7¢›37§ÌËü]d1Ë<{ÿ»ë0£ÿ®Cá‘üT^òŠï Ë{…âªÚ¶ÙÞ'bS¨8QTæjxÜ/jzÒ/¾èJߠҴɨ2¯ö£W› ú0èE&»mö/Zí{#óVSChc›IHôÔ©›Iûz›}‹B3!+øÈ¦ŠŸSЙŸÌ=ÒÐ<÷€§_9ìgjêÆ‚ê© ÖÔGìùžcõ“¿* 嘱Þýü‹I-¼åp<](Œ´¾/›m¹O> éAâ¬þ&:PÇzýÖñ2O’D’öEk%`Ô•Œ x*Da.¬“m|˜|Ò{³è%n¤AÍ·Eûkš­9¤½Þý.“÷8+ĉâƒÈ«#.n\>9Dû èäí{–mŠHa1¶1J™DºO$â³®?•5ÊbPi…£È @åÉmÁê¡w“cµí74]Þ.8™Óóù 8™ÂMÒ¦zâd£‹âÆË×,·)¹‰)ŒŒ7ŒoÐÞÊ>#O¤º§Ó¤y|J -Ö¥˜-€fáø‘A µ× RDDÊ1†Û›´üýÔË+¥SÎÎd\ˆVæÐãJ(–"It¿+J C¬ÀŸM<ö °ÆF”óü16éCc a÷CR¢¡0qÓ÷-¦±]Qµ9 ³ŒÒ“-ç JÎí»” éfˆÛS£°É ›Œ©¸Íc:4_P»)ÛT;”_øæwsr_ h•ô¨ ÷kY&ÑÁß´Ðý!G ’¾Z`V=«€Oí/* w ]rG!ù®ˆ»DárœGÀ¡€4ÑóÁ¬LàËé=3p”ƒã=_j"£Ã‡ÅJÜÉïùª ý–,†õüÐaµÇ¢ßüâ.NC¡Ã]È~µaYúd$‰ÍHbG’xzŸO‹á3bø ´óªI ofÞL⺮7"¯n! g——V??4‡Ç¿Žûœ˜­ö¥Äâló]¡¯Þ` øÜé&}°|ëžë}ñ5á¥RZ¬Š–c(Ö«]ªLÆêœ&†ÑìÓÙw?\D… ã ’„‰‹ñ”Ð2ˆòOñ«£Ñú][–̧˜R!­e'y؇¾ÔXCŠƒû¹ÃRQ×9— ÛÏXÁÃj›žD‰¯+˜Æ£â@)t¹™§uVé¾H9]p…ú'–CÎM†^]hl; ¤¹Ä1ãÉ·Û€îω&½ôEMê0®ò» 0¼-rFfø›Ïõ×"¯^Nf¼üæŠ ^ï5>[(Š‹¾(橉ÔËÃT?|¨7E[¥šsqOÖä@Q5ÉQ%Ãâ¸IETA·ÀÇÃÏø§¯—él0>5»TmÃÒ”¦A°¦Àhš’÷œÓ7=û;Õo—XÐ3:›³wßKLì—˜ï—VÑ#@{KGe(/1à^ËÑ)¨TœŸ_«ÝäO~ÐÎdø@×ejR ;œ÷ÒoinöúõX±Çæð¸u`0} Z7m]ÆvŠ0¥Ø’!bgqjZì G\~I¾ÐçÝ2¾&¥²ï¸uGóVÄ¿b>𘂀±þ'NŒ™°òÿþi"ˆendstream endobj 58 0 obj 2277 endobj 61 0 obj <> stream xœ½XÛnÛFí3¿‚èKS ZïýR /ŽƒÆ@R¤‰¾ä…•h™…DÚÝÔßÙ+I‰²hn DöhwgæÌÙ³;{—cDrlÂçr›Ýew9q¶ø±ÜæçWÙÙbrƒŒ¤’çW×™Ÿ@rÂҹ °o³7Ŧ©×?_ýQ‰£ F]­²7ÝMiD"¥u4–«u¹ c©Hc›k7#ƒylþòþ/gH×DÎD qØ•ŸK!M.T0ÞmW-7Þ?3ˆsÊÃWE}Qcd0®ÛæþÖ-#À,Sn$EšÑh«jkÓ3mâ’]¢R\ƨ5)dü:ÙýâBâH ÓoËÛ¶Ü•ne&  <æÛ-¬mÁ˜D6ƒáƒX‡¤ÂdD…XâŽîø^u7ÖzöEðañ)…*¨˜ïƒ2æ‡FT‡¼ UÇ챉™>û¢^My# nÔ‹¼ÑCo€§«'шàÄÈeWýÈÂMbd¹yõ“”E#òõÂ8`š¤‰i]±ö$'ˆ&NöSÊìa"Á:˜®›v§!a‡è¡³ýu°6!ôëÔºPzHx1O#. ­‡µ„ÚI™ò#>?Ù»8ž—'ÒƒUÄoCu0KéÑãé±ÓùÅ€½š0„UZ¹/²êådÙÔµ%OS»Z ngÄ/‹ÍÆ-Ã8.í¤KXoT'šõÚÉ@)ÆâA“üäVÞÛ2I”)ò¹R1Ì´›”ÂïMWNBÂ(’D’qú æD[&ʼn:$JQE÷7 –vOOܤWyà);€Ö)¨âÑ¥ÓÞâÄôª¼*½~3dLÖÌuÀŒèrk‚(ìîñ©$£éT*‹eà‡*oâ.6éHh ±ÖÉ:…/Xï …ãJ1“Ú|ÎY¯K^k8c,¦¾,êP«k*Õá~™A¸ŠÌúö ÿÄ4(t»@,JeïP)  Ä°ÑK”NBáL•,”u P‰Õ®®ý0B4{<ÐjçGÁ““bÓ–Åê!Ð-Y¾#œQ°[ÈéLA&Óåaàs¬Ï3l!®‡{cA ¤®-ü`õøøõÓoe³-»ÖE'!‘¨‡€+[´4󼹯WppŸ7ÿÎ[ñⵊ&ú>ÅÊ‚#-’4=f\ jHzj}.ÛªYUKhÑV@Ž(Nåó·:£“Бpöp†#Îøˆ Ù ˆ¢rQmËzÈ' ‚ŒÆª² 7)c˜ç庪?¯5ö‹Ù›¯ÕöŠûSV“¶ùoÁ3ü1FOÁÓM¯ñdrä±< ˆ &…|ÂÏÀHf;?†ûÀyù„«g%Oý“ùÉO§4Û9;í<%"Ïg%ÏçV~¾óùÉ‹9aÙåK‘aåÕ\Ú½¯W#‘ðºñÎv#‘ t ö×ÃէжqIÌGûìpìÄ6ÙŸNÍ=ʲý¹1Nì£aOL?ʱ}×ùÍp}t†=ág‚Ó®' òÄܧ„=ágvØ~fÌM®aOÄ à.;Dæp˜3®ëÜàö˜„^†°xµøPíºÆßvÞ_ådw9ƒ»+²wœ/8ÒöHY'.¿Z©å6;¿ÌÎ.?å]{_fgæ$;û`ÿ;ÿü>./ò²÷—n-;ß-·»4‡v!X>m¡§=lpK©m´Ýà  Ælå82- +ý"3€ tmƒØªºêªb Õ÷1î"n»^LÓY/SSIÀ•=ÔééIL׉ÂUž¿z ³€¤]2óêôÚ‘Å:õ±=Z[9•nÒyѕГ¸Ï\ këZO؆†¥I7E½öíƒk¹I½âuÛl †úˆ­ï†Ï”÷›®º 휴ýLz‚€þ)´;hUüXª4zÐ*¹Á£–0<ôèÔh\tôòø(ŸQ©i2bóº%ç) nH¬8CÔ’‘Ÿ$ãkGfÉ(å0´'‘‘"ÿ|AЩ].V«ÐlÃŽ“©§g¾3c@|–øRAs»,º9âó 0Ž8Ä(c~-`­[ÄÊs°ö¥¶?ÿÓDŒendstream endobj 62 0 obj 1568 endobj 5 0 obj <> /Contents 6 0 R >> endobj 40 0 obj <> /Contents 41 0 R >> endobj 56 0 obj <> /Contents 57 0 R >> endobj 60 0 obj <> /Contents 61 0 R >> endobj 3 0 obj << /Type /Pages /Kids [ 5 0 R 40 0 R 56 0 R 60 0 R ] /Count 4 >> endobj 1 0 obj <> endobj 4 0 obj <> endobj 38 0 obj <> endobj 39 0 obj <> endobj 55 0 obj <> endobj 59 0 obj <> endobj 63 0 obj <> endobj 15 0 obj <> endobj 14 0 obj <>stream xœV}TTe¿—™¹÷BHeNFê!?P©µÎº*ȘŠ¢Ha2ƒŸò¥ (3ó0Ù‰IÀ€„ ‚À\]$Ý¥Ûlm­=¡åIËs’°Ó†Ïe_:í;ÕÉ=g÷ìyïüqßyîóñ{~ïïyYF鯰,ë±!|U¤_phP¤ÿ"׎<•§»É3äÐteÆèUçôû:'ãÁqýý¸èFÁ²ºç¢‚SÓrÒâwfjçÏÓúhW&Ç¥'ì0¤hC ™;ã’ ™ô%Ižº#!.3çIíʤ$í&×ÚMqqéÙq±aƒS“Ó²2ãÒµ¡©±qé) Ã<š“²#56-.$]—±33áÙ¬Ík’ {’ý-^Â0/0˜ULÂldtÌ&œñe63k˜-ÌZfÁ<ÅÌgB™ æyf=3™yˆ™Â¨™i´ZFÉ™a6œmwóq+wûQ©èTz*ÛUÞªhU 7ƒKçúy–Šïž®»Ïw·yz˜åû¼~rÛØÏmù‰dòAù~µõõC@øS)Ä@˜`“EÐóe½°ßh,65ļJ¦`³êœÄe˜VC*¤@ì¢Fx ›]’¿/¥$ß;{{¢.J! ¬–²æ*8)82lÉIÙ Ûº ï\}ûrwè5ªIöp°!‹Û]9Çõ71gˆ[pèÎ ¢Ý8²ì JÏ¿W±ò7žo°| Çéú;4˜I‡ <2ƒýÚmËEÒt¯ï%‹Ûä©m´JO\ y'º««  p¯Ùœ_"íI{vÄðñž2œŠSËL%f³ÙdÖûó ]0´æ6ÚNé½Jxë¢ !áÉôo /ú· P.R804ΣŽñ8Uè©›0UÓ °d&y˜L½ùúcÀ—Ã8Y$²QMt¿Ú ªmÓÔwöÔHðghK{#µ.¶B”°h µ §bõŒ[úÆ[)Tx{4H}—í|Vm´]G‹xlÎb¢%3‡ŸFïs½µŽÍVuV•ćA‡F–yÂŽ}¥6¬ÜO­|è¯4zýIMËùktAwŽ#Z I„„³.Ø\ͱÒrðñSëp3טÕþ8ãÎç8Å'oia‘»whÎòdå/Í«ø}/tr—ºýtu „‘GÈìàÈuz}}o’†ÂÇ®ï/nÃp;þqÁ7r$îR7X¡±¹è“{5gø‘4ë…OÏ&“‰öû…è‡~=#o̓â½fãþbÍ®µk²£¨Ål3N;¯±+-]e¶¶Ú·NÔKp*‰gÙó õeRHè”°ú4;‚` S1 j—Mæ½´Œ¹‚ s€»õZÌr› ÜŠBƒŸ†Õ¸Ã'À±ö(Q N. Uc?èGÆnúèGUœ×Oì…}i?SúŸß£ ÀXÌR;Êq1º‹û Šr!Gˆqä66:ÞèêÛz<ê :Ã>ÊrG–þžåŸPØìpŽQ/áiÖçwem§ÏDÖ‹iÖ£ËÔc7&àìä úᜡo´ŸãoUDM”t0ÚOÜŒvœÉábh zL¢%МO÷3”^Úf.âÞ‹ y’¼\] åyÅ&8'– ŠJŒ©Õ/Y)c’É| ?†dµ”hšJŇ ó@g:„?.„ìÈ窇RÅâ:sY.Ù`ÌÔžßEGË-P]'¾YÛ³óm¨ïsø`zŸÞåØ]£‰iM°nymÝá ‡á´ðÁ °¡Â’nËöW@6x¥AsW'\ü¿W*æ¼°*Ùâ·ÜoÙ÷—ÿK*~b㧘—py{…ÆšäT`¼<[³$2 à œynÔܹFáå+¤…÷¹šùñåîó—Å~ÃV~MrJÒø°j»´€¡½’û¾ÃY” ÌU¨»^n‰IJˆ‹kIèêp´t‰dYCðÀošþ4Ñt.Œ7=Tö£ )RëWPW=ÖHãmÄG££SÕ#—bÒB<]ZH¡…A‘ýäëƒ<ý»" ’¸Mp¶j—$I,*©7|¤²âsð–øp“ è ÖCªkZ×ÚJŠLô1i–Ì›‹“TN‰Ë¤£: ’a˸Å%’Mt ùæï+*Z Þzþ‹Z¨à8á8-—ß“ýjy”•Whn£ dšÊ çŽY>¤ìl¦ ã² quµyÆŸGxôÄO1zžÍ›±g‰rζՉ{Ž×V]~°54;Jøg:{åìûíõYËþãAý¯üÄ<¦©½"u×±tL«8<Ê«í&HW®# Èa¾–;ýÖÎ#ÂX=Ñèy§åè¥kœ.¢Ì¸ë=ðz÷¹.JÞ†S²é¸0f…å,Zytd,àN¾õõ§G£âó‹}pK@í%:åTó×=!å5´´ÙN9“lI‡ÄÎSý‡l Üì^¼,"8F¯!ÉdwázÙÊñΕ—þ5¿³Eœ|â œâlc[Ð CÑG¯ã”ê03j;ø&{Í+­Q©òh 4 ])öCJŠaÁí-x?~öõí3éßMâõ¦w߃τO‚ß'¢ {æù޽oÚOÔžj(lÝV.:».‚„ KN.}11F³+a—)ΔoÞm.5¡J…\+Ô‰wQEN’×RXO¹@ú«‡¤ùòJ®Ñ|(=Çyù"Û Òc;áë’˜a*0­0 MÖùô"§ªÉ%¼W~ÕhP)¯Äè:޼XÎKÈÞ'z(ê<Ý[+==‘mðœTæéÅ0ÿꊬå endstream endobj 64 0 obj 2454 endobj 12 0 obj <> endobj 11 0 obj <>stream xœµUyPiï¦!Ýè¨Û;ê°ØÝ±ÅEfÕU‰ë 8‚ˆ¢‘‰IA\š¼D.•+K oGÆûYÏqQ×qqfgV)Õ)˯ã‡åvÙ™Úšýg«¶ºúîz_¿ß{¿£IÂÛ‹ IÒ÷¡k£VDO–„GOó¼ðçß#y?/þW”½R»ó}šý†L£Ð¢‘(è‚"ÉEËc%*u¶F±)Yë?QòðGÍò_*×(¥Jÿp©6Yž*Õ )þQªD…\›ý;ÿ))þ‘žéþ‘òt¹&S.h*Q¥ª3´r¸J&×( "wÔ¥*B®ÑFe¦nœ:mz`È0²™J¿&VAÄ""Šˆ&¦1D!!Fc–ð%Æ %£…™šÒ—L'_{mð:O ¥:¼?ôþÎGæó(FÔ,zIg0³Þ‹6ªG¼ñzàÝ .”àâÚIþ]wkØc´é@ÆBý6,ïï«Û¨J[nb”ôe‹€>ƒF#㢥fM­ðd‹uo;7YEgq°5ŒP8.u h8%]o¹'”8áÔ{Ž,ƒlÐcp _Ç"?ôÁÛE±ûcpñ~v²§%vSüJd`á8µŸ*¬·)`ÈC ¶0¦ïEØ/×GI_+Ù+Æ t\.,š4ZÎ-\pæ-®å9Ð&Fô‹ëç:;÷­‰àpΩ\ 051#ÞKÔyuü4; =¨©‡âãÑf±|<<0Æ¿øçd$BCŸü-~}> QhX"jmú¢]F½Þ(N›µD+F:Á‰ˆkhs [‚‚¿®vÂK°á³Â³Ïí—zízyB³‘Ž}rôÛ;%0q†m»@Í(ës+íö½Ž&µ3a¦2(kgB”ÿ†–³Ð¸9 £-t¨±ü øm¶ñ.b'{»‘_…æðXàÂ(,Cdš²iòÔBfK/ÞOcê¶öt×Î[ÜùŒU´D)•-†GUÜ[ùeºÜÁ. [($ãg°köÆuÀæÆ¹®»(¤ÏL°q–0”SÖj1Š£«ÁšWh€;¹Íë:—q˜úý´÷×UÅJ7Ëšóof7œÕíÛuB»?¢˜ù«†Ä…—·Är+On™˜<<“ úl1Ž£³A_f3[ösE%µ‡J*&v)ƒ¼ï÷!¯ËÚ6õqR[\¹¬Ì£$ï‹ yµü{.x-Å¢¿³¥uU-WÌ‚J”F¤@&l‡ Ò­© ùu9ïãò±Ø5ë÷™¬ãCµ 1Ô°YÀá9pÊ {RÐoð«±VE¿ŠÁf)®ºRA/çÿħ«º¥ÿaÕ®Ø&Ó݉® û¿Ùö0¸‡ã<;dGŠ£‚&Qu J÷2‹ÿ ¬¿¯Ž.*qv×'µÈ¯›§Ÿ=A,3å)¦V­×HbK4 Õ`)¯l8Øê: LÓ‹¼jIž4}“xKJbÊZˆ†äæ­ŽµPUƒ±’iwðX‰+«Ð,<ÐßßÔ³ñ¤.VÂBeRˆ*,/0“ŠC.<2ïzú)ø :N¹.ü‹å)\`p¾Í~˪³™{ zà| ·+/V]ý|‹=´53öFÂX K`^nDö ËJ†Ap½zŒ„ÐÇhóŠCsØ QáÖ‚UyÛvæGBª>á"Gýå+ (ùŸ;ß ³O½#d³xâŒ5­°»¶±âSgV*ߦB®æÚ™ön`zO- š» r¹ ^œé“Γô`Gâ\|¼Dµ¦Ðk·˜­«® r 8|¦“UN¥“Œy¡Ü¥è‡_Ä_½-),;$þö™k½”÷eû}±ÁóÙ‘ý 8ºÍB~m§PŒíÌ<"Sfe¤©k2š*Ê‹­6n÷n3˜±€N¿GÔ£/_<—´ÍýŒÃ~ß°;Já$Ó}íØÕ[Wb$ñ±+?á­fÙWÙ[ÛS ‚™÷‡˜Ù3C;Ü=ßÕÝ䉚Ù q!›¼Û…d]ÿ¸GñË<‘%ra =líh­Ø§/´q“&”Œ¶r[}C¥ ¸ä¦µ‰òìt —v(ʪf2öŽ cz®ò.¾ÿcPž‚² :Àù£Sî#ÙO+~&Jq#”îC?ï=|©¸2]œZ_%DÈÖR]Å.Ãvع BȬuÏ«ÅHU&ÂÒrÚ5´{7Ô{–}ø{éðáÝ•Ã} â_“tÏ endstream endobj 65 0 obj 1994 endobj 9 0 obj <> endobj 8 0 obj <>stream xœµ–yTSWÇß#˜÷wG»¼¤sì¸ (êVÇ¢XTY¬ ²§²IAy¿„} 1²YŠ,¢P)‹ ­­µZí6U«Õ.žvNkÏ{_zé87 3v¦3çÌ93çþ•œwïïþ¾¿Ïï{4åè@Ñ4==`÷öÝ>Ë=}üÜ<ìÈ„'iá)áiQ,.üi³-{Êñ§¦ùÎAY³Ñ¶™hÅ,JDÓ^Ûöy*Õª˜Ñɲ%žKen«W{È6&ÈU1‘áe>áÉÑò„ðdò#^毈Œ‘'«]eããe~öI2?y’\•*šê©HHLI–«d>Š(¹ê EQOlWôQ$Ê_Qy%EoIŽñOñŽßàöœ‹+E¹Pû¨”+åKí¢¼¨-”?µ˜  ¼©%T µ•r§vSË(êEʃÚAÍ¡æR3¨™Ô“$UŠ¡öPwé0ú¾CÃç¢Í¢ÇÙŽ‡§È¦?'V‹ßc²™Ûì 6~ªÃTµ“‹SŽÓÎS—= ]îÌšñÀa×Ájs¶Ò×.Š„T"Q‹µK2ñ<¼XWq¤¾¸C*œb:sõVq„>" üá ‘U2—+!D:ÞÍ„d§03Ð_¼q‡š…;VÚø®Hx}#i:ßo0keÒxŸ© ‡ì»» ÐB¶>?_ƒiܰ;£þü*(ÃÂúc#ge’ôa ‚DˆƒûŽ3P’_‡–Ž‹„`'¥×vÈU¡ÚÒ`¬0Áöˆ¦æPJV†:²÷`ÿ¹Î±ÁZŽÜç¯×e`dfúÒŠ ¿Gg%CÙŸa§u;"38þž;eMQ2o–çIq#×åoã”L£±¬dõC£ž\}›®¨GŠ˜¯Ç.¿ÿa™w‡µÿéËD~ÎÔCakþ¼Ém+$y5¼!Xi?—àõmìh1wÌ—À5Ê6_ª4Ó׆¾¾$B. [1‹¦‹?;9|ªºF—[Áiõ©¹ b•µZ“©¶ÌÚ} !Òo}ð3v^«¼†ïü#Ù×Iª-04YNO )'‰!ëzñbHŒe(Kòmï—•–ò¥¤ä*“Žf×TÕ—k«Ù»1:[Ê#ZŒÙ_Eû×b8ì›O€E£Vtæ1` ½¶õ’ñìG°v>ìs¦Å8mÐ ÐKHa6è+:¥¨üKæny¬‡Ô‚ªÕbœXWÎ Õˆ;ŒÅ'8$£åpÄÇ„²1ÉçÀ¾:­YxÞDC'Êê¡·…5 oÈÓñ|††+Ðådèâ:B ¯’fEîÚåöCjKžôÌz]ºZSŸØð¤Àîñ塀´Àjyþ/bÔ¾¤Ø`(+æJÊkK*j+Ç€ýnäÌŸ†›3«¤ mÑ¥áeU›MpžµšFïýX²8ÎÈò‹ùB`Ë¡ðˆô1ß@Š®±ŽÕ‘Þ±ŽGHü8±ÿ3ïpøÈórºeX…¥V>6_Ùh$é.,~{‰%*`½An`•­ÌçÆ¬Ro;àù9ñ‹ðú+ÈDÖš÷ÿŒ¦ÜXŠ¥G9£ôåÀV‚Ñ"EÙÌC¡5¹\¨Ç¾·wv¾ ñ¼/Ç8ý» M×?m9Û&=qLQ ,ÓòBbœ­®¥o Î"BËí¬Ë¬X†|Ôbý¢h·?èÙôÛ¸ƒIìˆØ7;Î}ÈUû3^‰ûÃFÖ~E ™²5Í"Â:w¡§oœEh…0.©WMNIS'§XÒêZ8<ï’(™±²"÷ñÈF‚Þ„KúêK:¥‚˜™¬VºÕæÒHÃúh@$lµ­*O¯ËÑq ÞòÑ]MÛaᳫ×<_Ú.íÚ\{-µU;˜Y¡;›ÔºüYÏ=/¸Ë¿…d¹oæ ¹ ™@ªÔXÜfâ …`<Ú=è}óð°ˆþä«ûÃi'²,Òð !UAU¹…zð7š’KUÍŠ¶ìvhgß¾rëþÅ?âÙ5\!9¦ô€‘xú]è´°Aò¨W·2!/n\ûÆ0‡n0xº²Ð †H0ð„YÕ™MÊ«p ^»ZVÇ\Åȹl Ñ$§d@Š~²k²Å,›|n^¡½‚ 鯂«„Ÿ8ýˆ!kÄÙÕ«Uq xÛCÐAÖ´?æ“U³9wM”ÌŶUòoÉo"<÷ý‚ç‰gÇŒÒ͵W?%^|EŒ\'ðŒ£* \„ãá=¯¼Vì:?ïWZõ%Õ eÇšÒ*_Õåó|´î3–ãÀކzHCIÍ7iý¶G«÷‚œ}áË”‘Ñ¡¶³õœ1ôXd°u#¦O¥cj?fG¢63†û¸ÝwŸÐ€½Q]¯·VœkçšG‹ÚļNúRéu6i1›»H¸-Ü‘”×›O½g OÖ+ÉÜ‘Dfd»DƒÆhȃ¬‚Ü-Þ;^±G¥úb(^Ø|ê&D &s‚!ɾãTêªâPÎÏô‚âÃ}%T‚ÁXl"aEŽóV>6ØKo{žË`ÎMì¼%x šãÅš¾X;2"Ùÿψòß’½€äνÍ}µ4š9&BGms%u¼á0ì›á¯/€|àõ¼ôÚÃ%'ÙñF&Z¯YÅ%(ņAÃy,ùžµ&0«ô•='°×Ñ,R‚ë(õ²HX…V4{“V£ËË×zÂaâÿâΞ÷¯ÜºqþÜ•Kð‹œ\.ý;¼´Ì-ª%¿ª¢µäx›²üp^¯×qGo;yØÛg½Vºïù£ßV)Â)S’Ñ_ìí@æ]ØG*¡2(éÃE¡ÌC²oÐpC„ÖôJš™S¥¦«Tµéuµuæ&nFºÙ¶ÁŒë«¢LŒÃʫӈ3çä¨VL›j®˜6m¤zÚtŠúÀ;án endstream endobj 66 0 obj 2549 endobj 33 0 obj <> endobj 32 0 obj <>stream xœcd`ab`ddä‰ ö Ðvö 2ñ~H3þaú!Ë\þ»O†eåÏ&Öu?T…¾› ~7äÿ®+ÀÀÌÈèæéœ_PY”™žQ¢ á¬©`hii®à˜›Z”™œ˜§à›X’‘š›Xää(ç'g¦–Tê)8æä(t+¥§•¥¦€ìtÎÏ-(-I-RðÍOI-Êc```24c`bÙÄüò?ã‚U øþ3%Ëtoú1ÓöùŒßu2ÿý“_te{w®œ§·jwz7G ûÒî³ÝÇ—süéeÏê®S‘KHa;Ô³û0Þì>Ôα)]¥{ÆyˆYeëð¯¾ùjÍÆîOß×¾gþnþý¾hÏÞÞ{ëNn¿~våñîEÝ;Ûç§µ¶vWsÎ-]¹rÞ¼U'b÷ªþÖÿ­ó[úwæïöï¬:ß%6Ÿxì„ÜêÕ›6w?î^Û~ÚïHÆêøufÝ®Ýé™ßU~_ý­ØýÝaÓÃ#wŸî_Y–½X~yJw\wX·[gffrqnvut7_Ù‚Ÿö ~/õ=*ÛïÄi웸îqËq±˜Ïçá\=‰‡çÞ^<³» endstream endobj 67 0 obj 447 endobj 30 0 obj <> endobj 29 0 obj <>stream xœ5]HSa†¿³£;'›ºÌ]Dµ/Ê¢?FkŠ… „ÔIM$ ‚¦žælzæÜ2¦i?ç…åŠRæo³i;ÚEÆ@2 û‘ȃIQÔ¤ ˜úûSªË÷â}Ÿ—‡!@„,ýLvÖéŒC:½A³•UânBÜ#÷’VÜú{u­.Ô/â(”¼%D¢Ãr@DZzžŽ³VÚ̦";s@w‰×j5Lj k3K½Ñ^Ä–í›ÁÂdsfÖ^y”IµXÃV£œ1°å¬í*[¸…Ôq%V‡µ1z®µ•BâÕD (@èæK@ð’È%oµóãmÙ8Ä>aÔC }ŸIôcM®xÀ·pʌ̸æ|H›¨^øNxéõ6ªVÇ*Y“´³E¶CDQMÝÍ´ÀR±ðîêßÚ7´°2'pÕ/¢ ¥+ÌÒ&‡ólµ³¾á$¬‚4Δ.Ïù½¯3“ÓoàO…ÇÌàh,רå>ilïè:oøÏ+}ßw ½ø,%I­O»bRá\笃<äv‰qÒ¿¸ŠÁˆD1^D-M ¾%Ä­’¨}W_ä0X®»|® Ñ=iT\î!ØE–÷X8îzþ‘_Y(©æçƒA,éQ.Œ|‚¯éÙ¸ILbòxN²¹ûÚCŸ§Ç;PÑeq)ý£ÓîaH?}ëP«.–YTÅ,Çç5Ùx66Ó|=_[uvüW  hA¼°iôyûÑ …€IÑ@uÁ6GÍMXåTâ¯ë—BM( ¥Ì°&Ii5IÇ\S.Ã)~Œ§+•ï> endobj 26 0 obj <>stream xœcd`ab`ddäóró ‰òÖvö Ž44‰Èÿfü!ÃôC–9ï_ȯ?g³.ùž&ôÝJð»9ÿwfFF7Ÿhçü‚Ê¢ÌôŒ gMCKKsÇÜÔ¢ÌäÄ<ßÄ’ŒÔÜÄ 'G!8?93µ¤ROÁ1'G!¤£X!(µ8µ¨,5b©s~nAiIj‘‚o~JjQC#?ã&† bbddRçûÑqxÁ÷÷ó»ˆ3ÿðÿÞ'úÍø‘ÒoF3#%…Ç&_¾3>xòEޝtáOû…l¿&°oæzÀ-ÇÅb>Ÿ‡só,t«Q6 endstream endobj 69 0 obj 239 endobj 24 0 obj <> endobj 23 0 obj <>stream xœeU PWîa »%•±% ; «ñ€¨`tfQ7¬âEttA˜8¬: Ȉ¢ÓÏ (•CW” ¶xÆ£ŒÙ”×heݬƤŒ•TH­æoöMÊ}£ÑJ­õªº«_½þïûþïio/F£Ñø/KZ´dE|xô‚¹I‘žPu”Fí¥þN»„8F{˃%>]£‡ ÀÍÃ1~(NÆh5š¸ù«¢³6ZÍéëL– ÑC"gΜ2'ÃhNOMÉ Yb13R,ôcCÈ’¬Ôt£Å:9dΆ !‰ž?²CÙFs®1íiÚ謌9£9dAVšÑœÉ0ÌHkfjÖÂÆsv¢%}醔Y‘S§åOf˜•Ì"&†I`¦0‹™8&’YÂ,e^g–1ñÌtf3—Å0:F`²˜¡L íá˜ræ¡f…¦ÓëO^×µQÚCÞ¾Þ.ŸŸ7»ÝÎ ãæsÕ<Ç'ó9|ícMѲÿÇ^kˆÁ©žW4€œVu¨~BU£ê2ð —mËÌ`†5ö\™7pö>(’Ê·I’H8"6ûœQØ¿Ú"% ²è¡µôÐe¹C-«rV­ŸA`“·;ªßo®ƒþpöþô¬Ì¼´$eíÅ›ç/;¨§ù ¿.ήs\A“‘ Ôõõ)‚k‘/Ú;á(\°µH¼‡F5wú?9Ò˜;[Ošã^<°›{¸ìèøðå‰I›ôº›Èp$j»»Ti"¹Äù?Ö<½±´KÚE{sq¸Ýj¸`Í·åB ÿ—޼ƒmí®;„ß¹˜Ì›C›äIÐw¯ádüÃ!ä«ê `›U²–é7Í_•—<Çûp$ {**jEõs_ç|¿ GhÕ£˜)`ð”2ƒ¼ñ* "þoâïàP=ù€Ìˆ¹Û'÷÷}äjì¸ò›Lé°VñÓ€0D§÷ÿï+ ¨÷ 2§ÕòÓZ<38](Þ-ɹ´«÷Er$)«"»ÂFÙàͶÓqŽ¢ã‚SÐ]Á+fÎ [d«=Ó!ÉÐÄ« œZæþWM‘,ÕCÐA¨nÕ4Ér‹c¿Ã-ÀPXcE"¤A ¬€µÞp€Û {¤½¶Ö Y‚Þ=‘{J Y®`¨SÕœMí¢$2„¡DVâˆ@Ý Üˆ·Ø'Ëuu]ݧv6ÿÙÇ I ]_`€3kÄâZa…\(… ¹Sï¶nà1ì§oPÄ ˆïÈØ¨å¬Q÷ Ÿ#±¿jÝòÿ+€Ö2tåçÆYO)Øþ@«®¥ 4ÕÀÁ¶Òëïžßs.ßG!›6m,N‚ Ãé8µçÑž½yP¶ÅV–_*æ®J\OO„JtR<ìm?*»ÿ­«kw+à°“@ÙDsi‚¨p?èÆ~%MFãï±'ê¾Gž0–¥ ðŸãôšðo2KtO÷Ðt0f~€º~€NÊ a8ÝCZm¿@‚±G±³£càm.RÑÞª¯¤‰jqÌÒ³t¡ U÷™‘Ê4Œæ®@ÿõ’d͇L~mûæÖÖöÆ®ÓËZWĦ¾;ߢ×õ¡Gfýf (jrŸýtÂepVÐN4çë+Kê¨öp¥\Ã"úð$X‡Šð^Uü.PøK÷aßÎÌ¥•zy«\Öü~¨l¿äöAµµÜyiúMµ¦©ÀgÉ@S66l»L¥7 xÝ=gé„à¨)ºézO‘¾¬® €Ï†R‹H4\”쭲Çz*ËöcëOAðm8p\ÏæS‹˜Öº~ç[µÐ×3ÅN³‚mNl{ ;–`XNúöD .ø‹€mèËátû[ —Àd¦ˆá¹ò‡N~ çˆ×W$Aïöœ 'e‚ÎeÂù„ lãt'p[½Ð–Þn‚<˜ ïÀÊ«é½9—Ê©0®ý¦¾‰:A®´­PË ™9°J®•¹l»¶_‘* ®.mK®÷ÀzjÆ*ÆÇ ÎnÐܦá«h1C pœBÆá+_9aB¿î69È…Ü͹öEß¹ëúÓ†$nÞúì¬Åp¹™ú£fö¦ÓOüñF´añE&Pw-êrÌõðzá9¯mr¿Ý‡à¤ÍIýp§¨Q?z×II6™’“;L=.ç‘^½ÿ`7µ’[ç54îªÙíŠvÐ28Cøe:›KJ}¶}jþ‰c¿é¾E&Ø3Ôºè댥Iê­/85oÖ–WØgeª÷Îj¨BµhŒžÏjšè>A«k—Û=š?f;âqkuLñù¨Ô™¡à¢C8É@§ëmŽÓ<7@®ê{SØ«ÿ£?Î6ì†ýÍ…P(.”¡šy\ÏÝ‹ù”LL$þå¯?3íCy{*ìú–íònàot¤ÌÓ9SAªJÈ«Áá8ÌzåK¥Ûդ߂‘Âk\ø”BsRjG/UÐÔºŽg@c¾‚Ô:"´¸MõzLÉϰëéèèÑ“nïö¨éÓÖK•Þ †áKZüyP+4Aͦbì(Ñ¿8¨Io64°õpV¾°w×ÑÀõ:A?] ×ƒiç‰Cû?‡¡žËx,Æ¡^«Ö¡Y0°›Kþ\°£¸4 ò©5g•£§zú#ûÕeðÈù %/OZ™p|ëþö®¦§Rê·¾¯oÝß¹Ë ücó¢âŒóbcD²š¤ 6YÕ9OR*¨QÔØ†ìÆá„õ€? .Æá{%LÉ´UfåJÒÖ"=ùÉýŽ»‰†x¸NÇ·”Ë.¸ ´ú0NwŸþ!`ð«©«×´ê5¬œîkë¸ç ÿ ð­ñõ/Þ58wÙYkY²ºŠS|‘}Iïë=£ÁoHW•Ÿ²-~/Ë~þ ó?¿N endstream endobj 70 0 obj 2201 endobj 21 0 obj <> endobj 20 0 obj <>stream xœ­—yT“wºÇß ¯ËP«mªó¾T­K[{´ÓêXÛ×Z­\ê(;D „°B !{ž$d!! „HdT\;¢¶v¦îuÚ9N;÷Noé/ôõ^ïpn9=çvîÜ““?²ý~Ïòyžï7 lRÆ`0"ãv¿½á½—×oÛµyù²Ð;QÁ9ŒàܰàϘ”á»àXEx`î³[g ݳhç3hùtŒÉ`¼³õƒõ9üb7=#?jñú%QËW­Zµ6;UÀMNäEmKÌÏHÍŅ_dEíÌIæ¦æ¿µ6++jGèyQ;RóR…©)·®ÏÉæä§ ¢¶å¤¤ x&™[ÌK^—“ÂOÝ&ÈËÈçî,ØUX”•(\ü«%Ó–2:°l ‹Ç¢± Ø|,ÛˆmÇÞÁ^Ä6a;±]Øfl7¶{Ûƒ½Åb{±mØ:,›ŒEaSèŸEb?£ÓÆ"°>FãrXnئdÒŠI®ðg›Y‹Xžˆøˆ«8oòšÉšÒ5uÉÔ¯§¥NC?99=Òù_ÏÜš>ë1#õì²ÈÇŒ/ô•è¾Ùï .pK<3jîñÎ;OÏžùW4æc§R«Öˆüq—Q§Ó™udÀX퇼^d+.OQìŒíážzø‡oþÝKü[ЙôF0pl2gQ¶œ'Óë¨cá3¿âÉ“£cæì¯8Úv¾í ï(i©7: 8Hx5ƒZ¬ZÁh×é•„%àÿrp›M›'å‹SÈܹk!}„w²?Ðh·‘Ã^[yEâ .õ0Ðði×y&*AëÙF©Þ豂®¶ÙÑØ÷Éo?ªß_¸í5UœL–qÕPˆhJ?þàZb´Ê@^šR!ãó—l¼Pëtx­>K#éîA“`¿½Ë¿êƒha!?ÁmI€t(Êe “Ëb@ƒO¬ó ×ÕºÀ}À“ˆÔB•ˆ\C kZ%¨9K©»ºÖ\g&"ƒ êºÑçaÀU”xÜü ;NIôY"›¨Áßèé:‘Ðù5bSó¨…‹Ïnþ=úé?;2›L¥ÕJeÄÚ¥¯©Jß-èöÿÅwœìøp ½lЧq&átU†>»ôê̺?Ïúý왂ìà#vU‡ÚGSXw­›²VüòEŠERϱPfEú¯¿Ã?йD1êK$a¹ê~(QƒF%&©9‡Ïüš+SÈ6Íÿ¸ jHt‡…æ¡ñðλýë«H*ŠºÁ¦¦³²À`6¬:y GkXLoä¾´z>FÒ¤=žËŸh]…ê«Ì  Ø_Æ\yýoi/¸¸íšŽØôÑ‹ÊD¹Ù)i|ˆÙz’ì<¼¥ðMb dF“¼]{÷ÇþÔ¹(íF™Á“cËÙ:ƒÞz¼Ja©¥Z­šX,+×J´ äH¬à8®—KÕê2ÐÛ©²ÒߟŠIM¡^¡®èßøIÇÑú‡I[|ga;tB½×puUÐç…È)×j „x§p+ð\ð;Ìà45’1lYÖû«w¾Ov¶e €&»ŽÞóý=`­+Ç*²ò@j­J£x6µ'€^/IpíeæÔOé#dê-^QB¹Qiö7 ‰l…Cjš2“ꪥ Þ &«É쫬!;ÐBs‰7i8ˆ¦¢ÅhÉ·Ñ'¢ãÒ¹<²|dµàGp«‘<‡<›Ï¶ºpãà}Ö™‰|j*ï=²\°q/àÛ¥÷,†PAÉ ’ù´šnâ¤ìb"±[à²áxÝVøÌxZ÷{ó¨ù ©Ë¯øò‡1Þ"¹ÖÝeí3ûI“‡Ý‹~ñÁ øá>÷j$#ÇTcc“ï0ÑšÙ2.àßówŽ…¶£ˆ‹ Ðü7ÿƒb“Ô‡?ïYUíf ÿŸX·nì§fÇð¨è‹ÈøW¾à)\év¼¨§=u7ƒÂZúi=à]tá.µ°o³j­à²Ë „|›å¸np9¯Z:mÃtgë5vQ¶RœExKZãõºÛ{“’–¨Y\9QH……oEVDcç$/°Ö=š\¾Mš¤(äȸe±é ¡Aâl1:Á{Š­" (coaçÔÖAïŽÇ _ _R®ÜpÒï: ê¡ñîCìÏÀMàgHÔ™ Ä˪„>WÀÑ=´Åvðô¸!N©;ø\]-æf‹>t½ý>=]gn¢WG<ŒOO£g˜ÁYÁv¦JÆ).1•4Öúª{û“º7S““^Žýå‡â&qTÚ'…Ýx&õ‚‚íÆA1h„#ôÕ•Ù ósJö¿?’~ ½Ô…"ûï¿íJª"rLéèÅëGoú;¥)6âæYÇwýéb´©Åîk5Ú Ðp$U¥uõöZ›¨t¶¢Yæ¦ ½¨êÐé]­îÖÞ‹Wÿ?ôâÝŒŒì¬Pà[WÓsh½›Ñtމì4B÷Xµ6z|+@D®fu¢Å•Ѓ‘S_b” ¤…ôÑ)ÔÏÃW°Jþ†øMÖzê°V¥˜×–<ôõà“@ÊA[,#Š?H^³p>xkÌPcnzBðD½8·fô>v*ñöì™AtÍg?•ÿ2€L¬óûìmöNÒs¦ž~X›éšÖá§R½iK¹Ôå÷’\Õæ{0.ÉÊü< O.$%Yž,¿ì`9ý§ªh´ñ”Ƥ¡?¶¡—*‰™QóÙÞ"‹¸_”#pËæ'ª][ÖÄ@ÏŽ¢£Ì±)co³u•:Tâz­EªÔj%Äþ)—7èŠèmü Å Ÿ±ž=#|Ò¤ö(œªâç†J-êÚb›ØVéø²·½¶fMÇãß`#@¯ÓÓXØ*@Q® ¥K¥jäZ5ͳ¨2™uz«…°UûZ­öÎÝ—J‡hIœ˜èy4£YÞ“ÛJ å†Wš„Æ¬*¥žë,i…üöï>¿÷ǦMksµrU¡‡‡Êb3èj+C=÷¤ÜŒh¿Ä ZƒsØz“Ž6@øÓ¨OY šŠ2Ž0‡—}ðÕ jii$\»{u?J™&뤆@êdÀØTfðD±Í-½EgÑû¡ð‡ âm´âHcH4ôš( £7¸ D Ú¤«¤M%'Ä.ñÈÊ*5(Šc¨MÏ)ËÆ¿,©Ce% „^¯ÓY}ÇÐ Mõˆ ø!V¨ärM…FARÏ?:T‘Q!ý9pD”Wƒqp؃äœT^U n›JÉR–²ôjÈ1(+ÁÐW:ðqé UûãóŽÓhòçÌ 48Ý^àå òóËÌr“œhÌ5dÒs›³ª¤"vKÚFZïû?"Œ5&ç¬tÖŠ¢h؇/»Ä;‹ÞêGÿé 5ÚÎrõõóöÓ÷ΣõôåÓÑ[ly޶ĸ$ë{6ÂuûIßõÀmÂ\gü±—ÅQs!øÀµp}y­9}êZh…v{Ë 3í0ÿ,œƒ#=-×ZF»Ñ«0ŒÿP¦œ9¯$© 63é׀ljzŽTémGÉ#è-“Çz˜nYDžœOƒù{¬_&ñŒ±itîŸ\¤Ï>¢M‹²J9{:ÒŽw¹ý^;QÛî¸D£ÂN©¥š J6 s€ó½%ú;ÏG³¢àTöÄÞÃC{/SÎUj aofM&àÿŠý ASÏ–en{ó‡ì~Ô›¨Ñ*i éˆFCzVó)ʽé×ø»Ì /ø;Y i ýÜ^ÍÛu0^(% ÎÅ[€/ÚMÍÎï&èjŒ¤ÿ³¡îÀ7×å'ç•ÇW¤‘’$­JòkÑ–ÂÕÑô€äA‰£ÅRå'î+4• …SŽä÷oëj©%Ü;NH|€3ˆžw?II¤$ùoÄ¥$^įj´õZ‘¶#Î –6ÇÿÔ1z¼P#Æ'ô˜2Ô·ÓÍ€&j¤älº z¹u÷mÙ=¸ hîÙ`’£‡C§£dV*âMjÞëFm΢vAÄTmuÅyßíÝî mee¥éI«à¯·> endobj 17 0 obj <>stream xœ­Y tUÖ®¦IW±HS&¦e‘E„"[ ‚,!{Ⱦ§Éžt–N/·»³ïKw'­’ KØAF@T‚²)Û "¢Ì«ø2¿ÿ«PgÏ染srNºëÕ}ï~ßýîý^DÔÀ”H$¶ÒmÕzçÍ//q^7cºðÁ8~Œˆ;€ÿ‹Ø~VödØ´ŽýËe;t$ŠŽ^A‰E¢e«6/‰ˆLˆ Œ7iÉäq3æÍ›3Î)Ì?:È×;|œ³wl ˜w,ù#tœk„ol´qN¡¡ãÖ +bÆ­óñÞîï×tIDX¤<Ö?zœs„Ÿt8E)Þ\í”î»Ñ91ÂoI¤ÿÒ¨mÑËb׏ʃׯØâê½!>ÌçW§ÏX0Ó}Ö¤×&}èÔas_™7m@ÖN‘·¼B§6S.ÔRj5ÚB­¡Þ¦&Pk©eÔ‹Ô:êÊ•ZNM¤ÖS+¨Y”µ’zÚ@­¢fSS¨÷¨ÕÔëÔFÊ™ZLÍ¡6QïRK¨1Ôj$eGq”” ¢FQƒ(–LÅQöT5Œ„s¤l©ÑÔpj>I*ES[©›¢¸â¾âÉâãÇTØ µQHIˆäSÚ>ÌLd7(sð¬Áû‡Ä96tìÐKÃf +³µµõ²ýløöáF4Œ¸52yäC»]Ò¸QÔ¨y£¢G=`ç°Éì7Ï…ØÓöþöÇdFÇ—?ÍŽÞ5fþ˜õcn•ü"rv[cÛcVäkä9«èÑ-tÃ"毠b6Z¢x1ÄK™'q×ä·Èø&z”ÝçZ¬’õtð?X&´–¾¬WÈzkéâ-.&”¯’Øöd·n²ò+Œ"èqóã{V³Ù¥šü$Hµ2;ûöÞwHØè›ì¦eBéÝ}XሦYËXéMÑ–:ƒ®H§—íGö6$Gñ+:•^ *Ç0WˆäBé6ÃØ {`¿¶SÃXhHÉW´0ØÌ±ÈwÛ`¹Äö—ÃOÀÞæªë¼Ü*‚ëb~ºÅÖ9¬«%V®…p×ËudVmE"DCºV“öÖ:`12«Š49ãX×Õœ•ŽÒ®Ð$B$øêÂôdÁ¨†²@4¥W䚬L•¯X¶ ²!⫬9f¨`êâ+bãä©a‡Îtœ8QË‘]½l˜VÞ¦Sn¶ë>³ú<ò?o/mAз,6Ñ XNت;¬¯‡:’‘BF–+`Ÿ ­¦¼øþÙ3Ånë8œòož|œAÛÄ Wn‚5´-¥2ظƒ»W„3#½ôŸWØ„Ò ²6ËlŒ:ª° –»í\CïÝ#Ì?Çú¨•aÊDUÅ5Ô+›>^¸ë-<òULáxÔƒIˆA£›ÑТ¢tPghTJ >meÚ6`6ÌÚƒf£9W;žÑ´ÊúXÐ#"¹ïY'æ_"/FA[ÍÍ;šoé­´ŸÖ] ¾°| èÝZ³œä.]£ÉR` ^à€Yä¦1d Ä\¹GGލ^ þ κmƒjú8TgUG ÕØê€çâ씸°­/#!ˆ®SßípÚÔdÙV]b=TA¡!'¿GÛÐLœ©WT v„4y¢—ÀÂVÃ%BªÎ'¤Š'©Üž»ÝÊØþ".´šúò¨¯ýRŒ”=“Ù ³šì–Á Bk%ý ¦#Á}B$Ið8¨i ™]õ2¾MG#å?䦿fc1 rŠ‘¶g˜ƒ®÷¢äIåHÚ Ã.òóWh'ÛŽ¡ßÒ·ÉøZºM_|™«µâ’(mVŽè=åÐXøQfðƒÄühþE¶°ôÔfB‡/Ix¶E’÷Cu; ’Hpsï° h Û1%ŸÐ]“T"›hI¼Ý3äDƒ%¶¼Zaá§›N4]ó!(˜E£&>ÆÃðÈ)XDtýñe4 {ø’r8 »³^àiŠÜ½NC9À±Ú½õû»L»a/ì‘×yÕyÁZ‚[¸É=åžá›€é/…YÞÉ;šÑ¶N;«úœ½4™qœ]A£‰Å6VúíÌüƒ2þGOxFZJK¶…{Õ¹ÁƒÇOÆ,–~7 IÎîÛÑl‘!Ó@ìM“¢Ö(öxȽÀêbvFu¨O@´ëO5î3Yw¶ƒVèL¶z'’L${¹8÷†ÜÚó áê#>²IÜóJ϶ò*¤er›œ¶µm<ô28b<ÏÂ^ؽŽg wÑœï 1EŸªeºV–‰_7‹€yoÜ£#è½§‘èÖtü’Q¦Ou0`0ÉúÏ7XÑT3ïØm±ë>*®ÙK¿DKÐm¶ñðÁÆÃÀ\:= ÛàaoÏqòõ7vDÊRL #³~`nR§ÛçÑ!?~‡X$ò\àí)“I¿=÷$]ó•ž²ÞÀ§B±CwD_õp¸Ÿ•ý’2Ÿ~&a&´¸ñŒs„J(‰5ÀôÀí[‚6óêò{ôOSl÷!quQ¦>;C£ÌÔÈ'Ì€tؾM±íaà´1:›‡&_·ìæQã'­xRA7yé÷âÖž…ì4Ž4qhZƒÖá1h^(ãþ1Žío@;é}~÷½äC8/?¼tÏšÂÙ¤aq¼KÀæ¸Èuk_ê#• ùýIb‰3 ¬ª úú%?â4‹ßù³\ð'ä´ÿté· ©>gÞƒ™ñSðsxä·/!æBÇžF³Ì€BYü< ! ò˜Ô”Hw`¿{‹ädÈ…kŸ~ÑùÚAQgô«»½v½À,ºrîîWb´ŒŸÀ"‰BŒäëöÊ!«œKS%¤B4[WßXn¬mßÖ²áí×7<Ïaz~è|ùé^wéºô °º`7Ñ„í´“  $J¥'mäÜã›öÒ}hQ7‹¦Ñ:o}ž¯­žSkãÒ Š‰0%›«,%ÍÍ¡^‹–{¥pÒËhe¿•éÏ£ñjìSƒÖ¼^ƒ ÆŽÄ}†ÖzÄ^úw±¯Á÷5õºær‹¬ ¤¦a70_ÁÄØHmHr´,3-6˜I쮈u50÷Ο¿ÜžÔ]#kÛÑ–[EÔ* Z…*[iLbiZEQu~MeZ³_œ§ÒÇ›ónñ6È™¶lÙ[žfËvYjrB02Ò-õ·Æ¹$†x/³äÁzd‹ÿx¸»5åðÆnCÃZx—´B/ÈÒ…äl·B3ä@M¥‘ARü ûÒ²ÃG÷ïlßk} ¹‰Âl·¥›& 4ÕAæ–.+Ú¿C˜†Ö[Ð Â@Ô3ŸíÝÿLçMOù*i5t­ë€;}]&˜ž ¥­2¤½ISòºÌ‚ª¢%sÒƒ_æf£­‰½ÿ¯Ÿ kJ+‘7ûx0ÒË®ÅËKOŽn­ë¸‰äÎÕsºŒB’w¦r«eiAæ²5–Ê©Ué*µƒ$“>`ë¿Ü5°"¢^.kŽjP~’Â<›]ú[Ô-Œ.b~+Êe;kÌO—¤F‹J~#Û½•ÿ­Ñ†ìâÆØH¹™uÔŒŽXíÝDZd³ðÑ7uöÒD‹³¨„†23Šô`æ6¨Â/.‹yO’}ŸÊ~[Û}º™o°ä:žÈá¿>Cö™IÚ ûñÅ>dŸ4b”GK!ZRA†„Ö dY+Á·Ã¿#า ˜îÊ« yPLZAF–V¦\˜ ›!ópʽÔ/ÎnnY_M¶/ÊúZAôv¢EXÑ\£èÆy4Ú"FN‚H¼`Å/ ÕÑí¼°q“UŒün¤ñð{im.žåND¯§‰kÚ¶îT’IRÄ t%€†=¶ë|ü6éž÷ÐÛü»,'äý£B%©lóÓl6ëŽékIßkíÏæ Uî.™ôa¿“mŽ6E„Ê#£"ÍQÖ‹©ùÉJúáô;¨‹:‹>>»$÷úw`ñ(«s¹ß18éxáØénô¦ÏõÈãtJP?¡ÚÚÇ©,­6-‹ \ÖèÓ1“´NñœYÏÏ=º¸;RV¬:œv!‘‘Þ«ÏjÊjØfŠ* †`fé¦%sÂæÜÀ­=¦>«mÓe‚ú)áÝûŸ¯Óçs 3ZŽZƒÎÜ"„ôÅwhÀ÷+®Î1Ê~3SØtÚu÷Öñü˜+ì Mx6P¥D4žø«ú-£_ÛòÎâ9ª®#ºñä›nPÏ”á)ô˜Ž¦¾¿·áÃF®_݉£¨øšéK:Ü=òÓJ’öŸÑ6!íS……— º£=2f¯ÊŽ…Ò(®<ÇXõL]‚1""!.ê½÷#N|öáÙ;œ´·gÚÀƘÚðð˜˜ððÚ˜ÆÆÚZ!Š0Œ\ç™S»,¨à*°ˆ{¦õÌc{‘$ËÉHW†f—· —ÉP[E“ ËAÊxÎ7TÒaøö“ŸGÐAìK‡²Â$IÊ¡¬*§˜ÔU5ååÁexv¿ìoшº%Frþ¶ÍP|…«³JÕóÉðæóûü^}Åð¤XÔŠù\” ƒWÈ༠®@+‰EÏW÷u(¡+Lüh2Sñ)bþ5t“-¬©ÜsN÷Ì|ÅÀV}¢`¾ÚµÅÄ5q*Å‹¸ÀDÍÊR¢QzǺ]PEÌW˜ÖUû«ù:9ÊÒP4#‡¼}v)”BNaNÑ“€$nDQD¢Î‰ÑnTÁjõÙy`€œ‹§Š ÎîÔ›„=„«S!‚̤ÎúaÕÚ"¤B\JZf~Û:ð±ô X i‘лµ»5Oì}öøåç;]!Á1>QOžjÐ} 7A#4j…§¶ü2Ä‘²²ïóÚ=VÁk'±xü”7§ºãÁ´ŽãG>õIÖHÖýaÑï\ö0bàƒEh,¢oßC’JÎ`„BØÍ Kt ì{DR Ý¢ ‚@Ø¢ÎõÜ#eý¤z‚†`È!V¸êµ´UÈ„œ !‡pðÐÇ +Ú´æò—4Ù©Óq¡Ã$Ô¬*Ñ’FíX¿ Œ$B¸v£& ¼Œv¨Ð¥æ*‹Ãòãgãl‡©È˜]"اÏ÷ƒ§‚ ºáùCP¢. Avøï¹)†L<}^nÙCÔæðnÏQ9–‚¡Ð~•ëõ£ùvÏJöß rTo 1]íÏÚŠàc̉Vbª¿}Àl—·ÜEsÎ_²ØK“èæçlŽo½w0¦Óe_ÊÞv¥×F+Áª}¹r§‰Æï h÷Ûµ©b 0󖹯3&Ö5TëJ²[¶êdõ­‹›9xÂo¦li Šê·Õ«ÃE¿žÌßFŸ9·wW5—…æ²é©K‚<6û´:Þy ÍËã˜zž Ø"îñWÙ²öúÆ(B5¾Ú(’Úµú(Š#ZS±™™j¥F‰WõnwÀ®¼^YÖW'À"À­^FX²¼úáþH¸–ðGɽ?;äÇçªK¡ô¹¹e¿V†P:¡.ÒØ¦;ÖÖYÛ:Ê»„àQš°¾àô©Â«Lš‚TH‚¤ôÔl¥ó‡‰sÕCž#”—ûž×®Ð$Ávp×E ¸^¶ËåfÜ]@ã¾nËÚ5ší@¾¨Ó[uu¤:5µ6rCV)”ƒ¹±åô'~Š]› ¥I„oÉ‘‚oÒ½¯7“ñ|—¶I¨7HÐÇ6 FÜÉmÍ?]ôI|ëëöäÿ{Ï"Ì>‰þ)_9{<»sùìŸî\ú[”ÂÈOè³½ÝçP5q}Ñ"~‹.üNrîYh® ¬¾‹‘&Ç–wnútÌS¿7ù–,ðrOH’p‹|h‚º®¸b×ûÇ ja´EÕú×ùÖlÓ¸„{lõv¼pmL;±¨zZXQÄc<£õ¼-û/½wÿA"fÀ`úÙÕHhd/æWö¸³¹¤XAÏg*RTééjÿíg§’î­qTf—å„…rsCŸÇ,¸&æ½Ð%¾Èþ"ðÓ­ßÌ«ðXå3-dYöxåÌèX¸çKqá|nÚ{¿ù|n7\ap¾ÄúÁKÂ7ŠSp>€³p®àX5òY¡Zà\Bõ¤"WX«‰p¾£X•ÞÀ–õ“,ëý›$¹ÿ›2A—à2ú駇¤BžwļZÌFK²Ã²<Ó“³2WfÁàå’ÇÐtÄ:ß;"ÉŒ/°-¶qzu¦ë!0T¶–tÔ%Ôfj@«æj>:Ö~˜;{Þ˜÷æ¦ùëex=V·<1Ž<-\çðÜcäD3£Ef1²ð®l]b}@\JºRÉi5Z­ ”å4çræCY‰ Þ&?;'[1w!ìRë±§µª¾ŽCžûO– À7\D šPƒ?üÐbhàë? 7ï.|d/ÅÚƒ~b¯ÖŸ¼@à½:ëý—_Zè²0Øßh5š¹C2g=x®´ ˜ŽãòišµQž²°-Aêhm¦6F“™Ú,-¤3Ò^…"*¹½’«íïLÆc—…{z-ªü PÖšm5ÃN¦-Ò’â9ýÞ $B¶wîüpuu÷ &®Jè“btg±›+ñHd‚ÖzÐâh1ŽF–>9£Ê LŸñ–®á6âiXL*A1vÛœÂÃo®,&/Çß´¶òÞF;T}yéE{éÃ4EÕ¯ w~NÜvaR;BzM'í›Ôž8§¥÷¬ù-„—yIjá Ÿê ²A–ç°Z‚Ôü ›ßm-&{ïDºhØzdゆÏþˆøE¥J¥$uX ûnÒ < °?à…ÛðR<Û¥¦ЍeŽ*¯èöÇHúw (Ab¸. /3¡EEßõsæþ&{*fŸW`BdTTed›±¬(ŒýzNŒRT!YKV;ËÒú_™•«Ê-¾ö9,pæ?YÖÇ~|͵;» _n#¿»+oÛK{‘ú’­¥QÑv¸¶Sdæ’}Á#´6Ù\ÑT¸ë”ç¹xƒY%“þŒˆYz‰ïÿ¬“Îü‹ßÙ¶qK‡†àÏØÕvJYžÐ_5ìnþþvÅ~p¶rUÛ`#1m[`Sb@˜ËV2Áÿê{m¬™FDßj3Û]9‡Vß&ÿCèñmûóS}d¸æÏf^Lc»Œ$­P4Ž­R€‘^ÑäÁÍÝ6µ¥Ç92’˜àºÔêššŠ¦Öw:MÃC6b‡%¿»ú£è2Ý/êØ­¸ûµw*XN›²*â]Ow™RIb«ú’\rå ¢ÏÆtø>Å¥¢$¯ è7ÿ°"•QÑwÎrÊoy)9埇çÿ‡PÚH¿TV§Ò‡”ùKÂŒÇ"×dÿ·Í£+‹ƒI>î}¾ÿÓÂzÈhà2TIé É•J¦=à ÅîEu{cÙK/£9üVvk“jT2§?ê¼xéì{KÖùmq äÌÉì'íÀ9æîÌÓ'¾á4-AïÑéΧµG[ˆù¼µ6|¶ë¤ÑÏÿ°ü'dsÿÚßÛûü;¹xSRѪÝÌDo¶!±+ì@hC|W¼Ë8-zoÞì%^;Ù|öF— ÎnkËI *1jD.ìI\µ–îÛaÛÝë5ü´+ï"?BÚ¿óbt‘ ¡qê [×&ºéwDr{ +­1åò¤° ¿åÇ|n–nK&úÂYdÆôÇ3×oNððâ|> endobj 52 0 obj <>stream xœm’]L[Çïm¡\&cÌØd‹ó¶>h0N3ôl&.K£cnÍ8•^F ý.ØBööƒÂiéÇmo[hW.e´eëh6q QÑ} Î,ѽŸ0‹Ûã’å–Ý%X¶ø¤çáœääüþÿÿA‘2‚¢hucCsÓÉ–·%R鉺C;QñU´x€W|ßËM>½¼E–瞪^fOíeîa߯AÊPôãSŸ·K´:‹Ay¾Ç$®•¼%®;|¸^|LM”]rX*7õj¹©Ôô‰›µ]JÂdyW|¬¯OÜ´³a7FÂ0@(^\•hÕº~aKµ  Ñ)Ä&°h Ù®¢"CN#͈ÙSj*JØHò#:Ì«äµòùUÛ¨ôLcõ6úèø 'g–6—˜â; úÇ]z_,îúãàƒ–[íC.+‰»}c§Þ©séÎq ûƬ¬Åv½p#±‘ßMå§!…-÷Zvsoöø"^ßtŸx-—ŒJ@¯Á®wšE]¯[š  {ïgõ«ùD&ƒœ•u}¦Wšv†s“ƒW§!ñh$‰ÁlAç·›TC²ÖëÝ?`Ë3xõ6¯åƒ‚í95ûçúÔ]þæ¡Çê2³ÄÉ©h’J…p¯/ºœ å¨\(d‚L`ÖŸ ²^ÿÔÂÚƒG€-‡»UR÷ÊP§ˆ4MŒ‚ k»Ò³ò°À¾IEHðØÁcuã_W5ËtFfçÂé0#º°¶Äòàv¯óš¤NvÒ4ˆ»o~±Ðí`VØ-CÊáFÃ^¨÷2A<ñ[ê›EÀRôˆjÀc9+*¹~³¶Ó6ÃþôW¬ïïÿE÷ùóì’ºœü58ïeVÒ Ê^ü.ÂÔ¨Ôî~#è±!Ú…B‘åoÕ³f! …¨#` <ûŽï ƒ0IÚÈ€+îÎû¬TÃN· Èý¶0IO–Þ%VŠ®×ÀžðÙOׄYcZ£15š´1›M§³;¹ìˆß¾²«|6Y¬²åWKvBXAG)#´kªdÙL2Ÿ+.Ò܇_ k¡èï1V ˆ-B>=f·)è:Úzúö’@F)ŸŸ ⫿߆`·½Üî3Ünù!‡ÆÁ‰™§±•)Dñø ðžŪû™­£ 7OÓ1'§+vÝ ßUVŸªªœ VU!È?-Õ endstream endobj 73 0 obj 965 endobj 50 0 obj <> endobj 49 0 obj <>stream xœ]SkPSGÝ› 7Wœ«‰Å$ÔvÀ2"É (j‹@ ¯ðVŽ QÁ„pä!´ãXQpD„ª ‚`ñQ«µè(ˆ ‚¢V¡BCm¥ZÇRôGÝ›. ÝØéŸÎîÌÎîÌw¾sÎw–@Q”kDXRRŒÊW/÷·¿Èø÷(ÞSÀÏ¥£ñÞ¿ mÐñŒ§c¨ÊtGÊHîhŠ LQê یڛL2å|™|éÒ@ÙÊQ»>}³,*Ý´I““n",^¿^«1mó“­ÔédqöŠ-²8Í1_“ùoW¥>ÇgÒeQúLq3À-r[”Þ 1†™´ñº¹Â€`-ðj BA<ð‰@@ˆ`&˜܉ ¾`;xL}HQ©)AŠ NÐN/¢£é&ú¡Ãrõ•¨vÌmµÀ>þ­™‚£4а©8Å¤ŠŸ—QTÙµŒëu×Ó€Ó»øûfŠãÕ\0ƒgáþò´ [Áì¼· Eï>ˆÜEË”4¡.Ñm]³ûKqnl,†…0{_NmµJÔ°«¥¬žgk¿{úڦ ÅæEzZùz+Í7#ÄmòOÅn¥©q—¥älÑ,ç"í¯ŽØqReµ=LuöyLC>bÑ £×'hÚoלh¨:¶§B4 ¬6f„®|Yiï%ðè¯EÍñ~‹§ãažEo|Ð4ä<þÍ’`^Æ…*o ä2tå΃dì„ÂÔ+¥Ä‡V N² Å½èeŸn—•F—¸ÖÍmúÈþñl y"çHäà›Ÿ™&½<éaògÎû²C=Ÿ,ü`UHp¦ÁܼUúE=¬„GXbè•ÜÎÒ^´â:ò $ì¢yÒsðtÅ`fOÆ­èƒ!‹i¹æ°èÕûÈùvWcË9éÎ;‘Éá»MP¼ Fô—±U×¹¯†:Û»àUxC{h¡8‘LÓÂ+ˆ³ƒ4’£,Ž ŒU²÷„ŠŠ„µº4öyÈDÒ («oµäõ¡Õ½è/"l”§ˆO¯ÐUoˆF"¼Š‰/H)3žÞHŠ‚PÐ89<ûº‹Vß’Ö?JlZӏбKðÇ8¯CóðR>6|º¾•¸Fi= d¿t“T= ‘’ŸÅ!¯nì…f†â™±O°™‰© ¹ÿ £éP“¤ðfn~vI6o(þº“Tƒ?Ÿ• Þfä=Jí'2mË9…b”Ù½¹à õ I¤Àw¯Þ}~ü.U;Œ¾¦yÍK8•pøSBY0ßg]]úùté…ÏÛJn?ͯ)k1š ²à:6qƒ$w(¤:*aj†a#; œH²¢ráÍþ^¥ÒHpÛÿ¯öÃn~G÷%3…fÓèª-ˆÛʨ£—”¥”³±ÂS{.W¶[Ø‰ÃØ==îÆîï úùó}²>¦Ñ§HÍéõa¡zÁÏëÇ*a ,©(!QÌÉ–¡ÁÖGt\8zäâÅkð)‹„AãX„™ø‹¶Hj ªvV–U–×l¯)6ÿÔb}Ù—Á+ÇÅ©cìæzÜàGhôÙ·dÉãš×`S5à¦Ã(¹ÁµÂ^'ët‰“C ÙyZï^ggëAgþ.ÌŠô endstream endobj 74 0 obj 1326 endobj 47 0 obj <> endobj 46 0 obj <>stream xœ…W TS×Ö¾!psU%^ÛÞKëX§:yÖ* ‚àP™ Â@&M3(†9Ê <œq¨¨uÕ¨ÔW«V[±Újú쿯=t­ÿ†DB×ÿÞúYdeÜs÷ÙûÛßÞû;ÂÔ„#Ý]<¾Z5}©»—לٺ_l¹܇&ÜGÂ]Xε¾s3kúPü™ >–0g!œÝ¶,•D%JC‚‚cm§.ýÔv΢EŸÛ:FJCü"mÝýbƒ#übùE¸­§$ $06q–­cx¸­‡î[À˜@i\àvý©K%Q²Ø@©­»d{ 4’ ˆén‰‘îNI’í«—F.[»\³"6ÄSî—á;{NÊÜyólYø¹·ÝÌY1“ØL¬!–³ˆ Äb-±œøŒ˜H¬#œ‰IÄb2áI¬$¼ˆ©Äz•˜Ol Ü 'â+b5á@Œ&¬oBLŒ!hb,±˜°&ÆKb$aIÌàñ!Lù 6 ™¬6éN† ™ž6ûÌl·Ù}ryRô‘èU0l̰èaß Þ7bòˆvs;ó‡&k,j,.œ=ò‚åTË:ˇ£‚FÅŽ]<ú§É©‘†“kßi![+g®ƒî"U ¨©9¥°x!™ƒÂ#êP9ÛÞ/ßa\qæä¡âÒ¶OTƒjC‚Q|㌳E¼=œ áZ5‚ÊŸ„œGÒMdyo-%³x™"EáPÛH.Å!©;²³Âm”dNuFmVõ,ÈW÷·íƒÇ5“ð ~W°)Ò)¤‹R¥‘^AŠ%Ê-,Aû¨ºÄ*iTRb´_k@ç«S0no3ôh¼4V´à¥µöܺ•0Nd²”7]Tì)Üãk\Á‹ÉNMØêˆ¨…Koþ|¦DðAí”ÁæWË ê@måÁÞ È;¬ÁÎÃæ¿L+`[«dõÁLÐB“Fp¡ 꺄p‚3£Ó‚2"³#)%¹³c”)Šv"9¢<õ8×¢¶_. ‹3€ø@m c¹è\Ñ^ïkØ« µ$v_`aVQfYVÚ‡T%%ªü¢GPTvÊí&ÿãËrQK-jn’ò ñ$ýÑ.yF4¥÷0N>«ZHÑnáç`>O(M>R»‡ú‡¹Lc'’°^B_SŸ¢Y/±)65Æâ_g€ ˜üú¬ì‡ÐŽîwžý|ýú­Û×\gÏrwpdLxià†Ì4V¼"›øó,„äG™^²¢Ž‡3ÉY®ˆlÎÞòw‚Î%ÅCý+¶}€Óg`1õdÚ]Ç6²fºLäéc·dÙš[}Ïo^¿y­ÓÓ‹,ëë]ÇsŃ»M§JÉBÔ c ÖõË¥ÆÕÆÊ“r’\Üúwï ®PÖ#›¦²üÃ,WT'Üñ±±4ëú%J’?0]Õ €t£[È%pwé T‘˜³3+‡QìBŠTih£wÍ&DašGn?á¼aÃ6çé|êõÆeðÕXñÆ­µ§´[ùüùBC±Á±ï'Ä`99㑸d`-òGÉm­H]Í<3RXMÿrå9X0¹1•ñuˆR×T4Ô¤·Û´*ÑÍ‹k[õ¦°‰‘ð÷q½q*cÈX¨;'vƒã¥‹ÝàÝm….'èfÈ‘Ëën[‹ÿ'ä°Œ^ï×qáÒÉ“ç¿>¾uƒ‡¯ïFvN0¯8Û‰¨§½·ûš2&5²µe öåEíÏÚƒ¨Êýe÷'4¯O߬ ñf“÷W{#jæ2‡…Û*CËX1&Ò“3dãQ°JZšæèƒV tjÁÛÕ0ƼíyÔžxvS“Zì§žƒ¨åd&JE™y)(¥©ÒUÊ”‡ òT{(¯ÒSNœ¬*mi©aë*JQ/¢úÀ -ðuØ6…}ßѬxÓ4ákñk8%tlA|¾´0²`E:BÕ·4ÿúƒ*":ŸÉMÊKj6”žV¤«ê˜]ò,ã[ë‹øzþG좠ÏÞ&=•³âg™÷R7Œß±#töVϽw¥LNÕ®½ÑˆÒeŸ&JFÒ¦ÒŠÜö2¦3è‚¢‘/ɹ-?œù7¦kà Ùó4pr ‹Ô´ò@úÀþÖÈ'e„1YÇÉ4lºyëDÙ L™÷~¿Ûv5•l^RQZ½Á]`üËIIa‚›ÊýxÍ'â° vû7¶—Ž7í¯ae(^ÏF=474¿×`Œæòu#åE Ø ‘%vÈAF/š¯—ºFøï&§ßêýöþ‰¾*TªŒKb”î;cµ¯œT÷_Yõ+g¾džA7žÖ3ó#ÉÁ ÷`‹!åxÆÈÍOHñkNaÚ(SK$2™D¢–56ªÕÌûl…®CÅõÀë:ãÐ@7fÿæS·­],Ù\ÐÀø5ì:®¬RV*«Â ‰Áã2£.Rµ”2G#4É×øÌP·÷] :ž¶õ?UüE%~m_åW؆:lÎuž¹ÃËg†1ù²½Ù5ïѧgGNRD&ãß¶¾Ì‡G[è°xáÊÓ.?İʱªÝÔûaØ3¨ËàÏ:7¬U!jè,„ÿa†ð’lŽ}ZØbt¨…ý¢ÿ»£”œ®é=vlOc»qÂ>•g¹o `ÏÒåÇöË1=dý`H®Ç’ïÝ£y¥ÝÛúÀw9Ž3i¡Õág”‡Õ¨Ök!¿…ù™,„‹n­ˆ'n›„œ"j“”7–¶ç2¨$7·&O•»•"ê_ç×±â¼|7¶üjúxç«®oÚ{Š›;˜t¾‹}.B±(n{bP’ÊD”»ë‘ÎÛaRQè .DGAJ SÍŽ‘ë­F ¬ãä/_›Õ\xm®GIާâQxY€ñWö^à…³?‚e¶4“È ÌæŸ ž0´_ꂺÝôp“hES8åäúek>—¬*¹(áC,)æC<[—‘±Ýîár0…Ñ/Ÿ€ðõ’ßðp]Œvšwt rkÞYÐÆS\ô§üµJ^´³•—!mkÆ» zIí=°ˆwû{÷m¸‚Ÿi|ü˃ǨU¤æðÙ(‘ЩН¯«©lê úzÏüñØû0â·x'˜:½ÁoÁÈy}ØdãÆ$lñ1ÚmïŒ×(Š”Eü§`\n©²XQ‰ŠmzºÏþëþ…•Ž \<– ¦Z®]Â%> þBˆ±[ŽBØ„’£Ð¶Êʽ™Bh‡™à¤¹RS•—‡T”.ÿ@fW$êú`’%°~†+\u£~‚áâ» Ýeˆ¢›ñ×> endobj 43 0 obj <>stream xœ–yTW‡«hè*q-•D« j‚+"&H&ÆÅE‰b•FP[6ei‘M–î¾Ý(ˆ û"A (Kƒè ÑÄ$š¨q›‰ËÄ“Ñ8“utðçqŽó—ä$³WõGÕyUï.ßýÝË2ÖV ˲ƒÍ[¶ÂËg¢§÷Ü5®Ó§m´¼t’_gåQVòhÅj²w”utOªMÓ¨CÐ0}âÛƒËz-õ÷ŒÜ¥Þ¼%ÆÑÙs¼£«‡‡»ãœð(õFU„£·*fKH¸*†>„9úFnT‡ÄÄMqœæ¸ÒòE´ãÊè(MHðó“=#Ã·ÅÆ„D9zG‡DE0 3*.b#}ð ñ‰òŠ^£ö]« S…»Ns›þö†YË,gæ1Sf>3–ñb\_æ-æÆ™YÅ,f¦3ã™ÕŒãÍÌe–1C˜¡Ì0F`†3™ÑÔmÆšÑ2X_ö¾Õ<«Å Å!E¯µŸõQ›lþ¡tW¦rÎ\÷ˆ_Á§÷Sô+íwÏÖßöŸýç÷¿c§ûÛ?³ZÑÉ“ü•™dòy ]°wÿyàÍœZ— A° t°ÒÈr†vHÔjÓõZ‰ô#ûÈ0¬µ9mVFë@$D€l§›ÎsèÝ;.#iwDF’ƒf}¨×|È„$HÎ6jóáoŠ.‹Ö¨ZUŸßþäZk™hßcfÙÖÄ^B×[l8Œg…ƒN+Oï-³Õ¢­”dæ›@îË–È7^\¥ñ ¦ë*Têx³ª9dnvž?Z=K$Õ¿ßÀÙËÚôyDõÒ ­BÞ‚ý„üdHÙ¥×'eˆi;·-tž8Nj;kÀ8"ç¬.C¯×ëô’V›˜Q¼ª>¾ªüØÁöÛ„Ë^E¼æžpdÔ.øºÖ!Ÿ#Ú?³žè4›zÓef»Ûå'–cjq¨@Òä#©å© ¢ìî½ „X½~{fœn‡>ø˜@e¥ñÛ>soô™ÃYb±Wo€ ^>mà°ª÷é¾äì”bp(†ìûò°¶Çj¤¡·Ë)PYm|õt=jú±“ÜÕm&jN©ªáiЧ%3Ô÷×L}¾ç#M|5F øºËâJܧ!ÃɈû“ÑÝ¿€CDb$+2°ßívøciƒTÑÔVb†O¡a[qdÙfð~PçKîÒMôϸª£ïçÙ4}ø°g®ð2Wë¹ØÒ 5^4°o¼éFɘï ÃéöRS£äÇ¡W¶™óNƒFI–9ÂöÞTËÖ$n¦»ýšž^qLª;s6»š¡5δz£˜”Ì$™Ñ¯ —c…Z'ÙТèIé™.TBV¬8ÛÓ÷ÄÂCsh¨÷)dÙD‚p<:ôBíѶ8Ý’Éz)•L"‚Ÿ+,·ßs[Ž…žáç«ígÎ_xà\ ª%󌩹|%I4 ì²Îôô­Á÷ŸÇ4õ¾B^ƒÛ…Êl¨ªM»¾®]Rµø\Aý˜úÎ82„8>žŠqb[wqa¤ïÒkÓ¥í‹iüéŽqz|ýŒTcml64–7”~|¤Â O!—Ø>´xˤ]3ÃNŠÅvtR` ~&àûJüÃßî…ºžB_“»t‹À¸HDÂN¥ý3öüîm/ÊîÉc䌱‚)ݰŸ¸;9-âø S|U•©¸¹Ãï°ÿ{j/ÕnZ‰ %™ñÛJ¼N¹­[pˆž7£á93)™Ú\C¯Ôæ‘èFÓcÛ3Sè½Km¼ßg#*á(tÂ]8I?"Xsšûiÿ†¹R Öª”s÷l˜(~@½£D7¨š[@ð-›Ot27ÇZ.⮋ y€f–+a6ì–NùNó06_W¡9˜X kø@Í{ÄÚHµøæQ_Y;^æÜçyÎ †Üb^^îÁªªÏÖÝNüxœúuw÷ß½ï¶Ê’ÓÈ *êØfÆsÐ7-9î!t›•4§›ér„šÓnRBnbI·™ûÍ{Kmr¿©MlÛ¤í÷ï¹ç²Êw¼j‰Ø-/{¥©k¸Yë—ÍœYuZÄŸ8âõK=¦po]ˆxzèÜ2‹†w•8ç}µæž÷úŒrY0³´ÍÛ 9…{÷Ÿ³´ùÍ:ݯÛ|uEFšô)–6€Xoió1ºùtK¬èkóç8œ×;$w§1£Š`¿1·ŒI†ÜÕчExÏbÌye]ïg}\¦TÃå—mù™ÕwhQcP5N·ˆ©ƒ,#@ žîÏý’8ùÛ wÕÇqÕµ5åÇJÓJâóDSî! @\lñ6rdqÛ@S‘ßqéÏ'[ZˤMøHìP–ï‡ ÚswKK P•‹_LžßŠž;t¹|ŠX¿° t—¸ë΂Â%0ü¼5þüÿ9ް·N;Z;óߎ#ÿs÷¼mSӲ̭e,0lø ‡jt*ÎYB üÎÀRåèÌn:È÷V)k1þÚéꆋ®Ž~ù´ÅóèÐaQ$ôÁa Ùˆ¡‚J©Õ¤ù$¤ìI› ´¹(}üß óPñ—‹ð¶Ž—ÉHb3aɤտ„ʺ†òã-aåa{Ŧã{Ë¿ß:ÛsæjÏ @‰„“)© 8‡xyÆ‹S“šQÄ!G¾Ãa- lZ¡·¥yàwZÃÿõàDÍ¢¬zÉœ[Xµ|sDM*"BåòpD?<<õ#q©ÿZýÅ—pƒ¿îyŽHÄÚÃçÝw}Ts¤ôxeJ}@ŽØÒ|²¿ ^áá™ëBƒ¤íêíº]’~‡>S—®…4Èäã³Îš/¢ŠJ³¼˜†õ¸…µùè*t™'Ès”Uú½Qq:HHIWïr›@¶OÊï™›OrrqC™’¬Ëá̶Èöm­ÝËìúÕçÚÙ![i7À`gÏ0ÿ‰'}J endstream endobj 76 0 obj 2824 endobj 36 0 obj <> endobj 35 0 obj <>stream xœ­WiTTǶ>MKŸ£¢‚Þ“@â=cbâQTœÀDQP•y¦™çyìîÝ4Í<Ï4 Ø (ŠQcÔM" Šš¨!ƒI4“Z‡÷åUšûòróî]ë­‚½Ö©ª]ßþö·¿-¢ÆP"‘ÈÈi‹ãê5[_^c·m‰þ·¹ð¢H˜j ü]ìU¿žL5l›:åþdtÀ9OB¯Sb‘ÈfÓ®5Òà˜P_oŸps‹5sÌ,]ú†ùê@ÏP_w× s;×pÏ@×pò#ÀÜ^êîë3Ï|u@€ù6ýŽ0ómžaž¡‘žú;×Hƒ#Â=CÍí¤ž¡A•<'&ÈÝÎ:Vêì¹6Ä+Ô;Ì'Ü×>bc¤T€k Ûü Y¼6g±Ñܸy¢T E9QoQk©yÔKÔnêmjµ•²¡fRÛ¨õ”=µÚNm¤vP›¨×(Ê’r¤l©”eMm¡ÖP&Ôdj õ7j,ÅRã¨çÈa()5‰²$ÈP4U(20©·ÄkÅÝcÖŽi6œb¨0üI²ƒžEÌØ1ùÌý±ycï[6®u¼Ýø!£¥F''Møz¢×ÄC“fOj364v6>aâjò_“—O¶Ÿù›ÈͲfâoóß5Æû´ÂÇ:Ü o¡Ï؆óí…:%££}drp…,p€ ãG7ÉKã 2é™Iæ8Ó3¨,½ ²!Ǭ¾EYËéè=²}‘°üõÞRy…'Zˆ5Ý3-pÝ:`BãŠÏË®+‚&FYž°÷¨W÷@דÂŽD³eC;èc­¨¯ö‰…XtŽýܳ{ºÅž5aIœâ; ž™lèG_ÍOwâq9½' 6s~ôQÕ1h„&耣2÷æ$èäÑFúÑÍ“/–í³åpÌ_}9ñ7Ñõ%wRZÐÁ/«ZD0€|î‹…1Â4VššILpU”VSSÙ|i}ó+˜‹ñx<å 4MkC㊋A–ž©H‘qé‘Ò³±[Ø…,ÐŒOº{ Î@L9_Üó@ÿ¬èD?¶ gn‹QÞ ›V­PIÁ+üj%׳“½ø¡4:vÏ"QvªN€†¬ЩrtixAK+•H=„ss’KÁ¬ÔÅêb”?(6U* ‡.Ñ^òä•\„Ÿ¤_• Éʆ~²9‚^)/jç…Jº=»è:W«ÃoJ‚A.KÁñCï›È|>t袵’ðî Ï¿w Z±~µôHP•OæJ÷à‹oo­ìÇ&¥<Õ]þ®2³oâ8쀯°(nÍÎ;Î!^ò°såÛëßZ‰%<áÖEž×Ê£j´—þþü›+–mX7suh­„iba‘`ÎædgC>SžqþF’„—¶Hr©mCc€A >:dž*—CªYlTpèI%Úa IÁL´ žDà/!oš²ŠJi¦iõÙì 2äË"“ˆÂ¦Øt¦° 6y2ý ± 'áíìpÕD´…‘„SpÞk9ªië¨>ïÀÑÐ:ŸFWåpùv©k°ûž˜½ÀŒÐ5E+ðZäyLUk¯ÝÖƒ7JPoÚç sµ#‰Ê‹-1‹'ý0M¾pRÛ¦ãmi4·ÐPG¯OË;É ?ÑVCWXˆ¬ø(©»K˜3¸€{}X{ð¡Ì“„ï©k«oïÔž†.è kv½;èÐËZaj‹¾^ZĨ/fGè¿”>±ótÚ~Ûdð€<ÕdÖx‚ÇÖÇü%ÏÑ—ÑÇê W~ÈóO‹ÃJ¨gëŸj¿ Ìõž×Ié5K–ù¸”òç“*@ U̳ºq× %ÃPç] P4[› uNñ4ll9cQ³I¹L9õ¤.GV˜˜,OÏóÞ–‹e1°\j‡÷¡™QjØd~§¾ÐXÈÁÓ”áäñË<5Z<ÂÂÅÇÿœÆ´ÍD–ÈíÀ³Ð«x=§ÿƒ¡ž°”™´äôøÛõ¾˜ƒì„9¶«}Ü6{,N§^ Ÿ!JÞ³Ÿ(P˜`ÇJ%^¯ùÙÝj f$“úLšü<Mºvüps=×þ•ºX£"â #>Äk‹C¼/0Ëm…$ŸÜê¿Õµl»¾Öjõê Ò!¹Vt»÷»/ÅÈ^˜Î"#ž„ %÷Nv+/ÈRäp1©™±È„TEk+«4G]›V-ÜaÎá1KýnãÞ§QR…z¸@ ‡DE[Ë‹诩2¾C®¡Ž‰úz‘˜pÅ–d >mAÔwÙY)iÎÔ'T××”7µùk÷nÚëdÉ)Iðô?QÜq‡¾ð°kÚÐs£ %7‰àJëo½ F«?dT¡pês ò :BeÖó°÷Ãc÷‡iøÒb]ÍIe–,3☘’ÄÊÒŠ‚ºŠÄÖ½±»³\]¸ÐJ g`,¬mÞtÖøÔDñ¡iþnÕµ±Ž nà¬ùÙ™"dpº¿Û¿Ã¯‚{»Å æ“÷„ßÕ¶«5eÕ|E¶¸˜oàå¯ÌxrÔ?=˜xÛˆž‡å;VºX̶:Þ]S~á¶´úŒI…ÏnA7Jï#AX–Cab¦ ââ8¹"5U CFN\QPÑRêæV»wµ©düáÀº¬+I'R¯'ÀzÆ#ÄåÕYA7Î$rY% u0qÍcc:RJr•ʪJN­.*Q«;ÝNÈ5ú²=ÖûAWÐGx|-Ÿ–m_˜yÎ5p˜i®íøQ/•fsÊ´4µEŒ¶è9Æ­jb+À¬r sŠ˜g…6 §ýà&ö_tn îhÔ\iQh£îk éú·QP_o‹XX‚N³æžš¿dµÿÆÀš¶ªº±>¾"B͵7tQ©sç<–òôVÙÙº Ež±[ÁYücȇ½G×rjOç1` ïä|ÅŸ ØN»ÅÇEzÁñ"Îê4k¹4ÄÝqo[×—®¢ùj"âˆÀUÏÆ„ ýŸx°–(Ý-ŸóXôª‹mPsm[õ&°›Ä`æ?úO^î)Ú¹ýÿ½ÿË?8EÒ[õý÷¸ÕB¸Tï{Âó*˜=5m“g<ÄW8틉åU›Y¨‚ì²Ê¦ö5zÖTV—ú€5™ÊÖz;{ïqNô#µäÞr(©jԢ鳩7ìÏêˆN@×Xx’Üã÷þÞ/–Õn<\^Iz[Ë-À6ªfu-?¾ú“è3ÄhÞ-;õ°ýšjzŽ{X_°)|”|î“Û?„ŠÎÖüt£°ZáÃØêùÅÛa¬‡·aA’}ät›?½ždj¿îXµñýbteЄm”+ƒ97w‡°¹@¨ÛHøõn#3TH{É’ær>~’#ª»ÐIÖ=8B ô¡çÊŠÛG‰GèöãdV}„¿£6´-/ëЕ—^:á,|Å ñ³¯‹f´bþB§Cé¥5-eßÙI\S“¤ïw­xã%k+<Oàñdü\R2¿P3—4¡õdŒE¥íJŠÎH³"ŽÁ6££Dd31LèàÏïjDÍ?!·_Ä(ÝcûOmŽMÖz9l_U}Ƈ?ÐP§Û^ç,uŸû“’ ³o¾þá³}3kù~í…«p“¹¹àüKæË¶Zy5ÄiZªk›ÚýK#”\ÇÙëªJ`4}i3Ö¹&Äñáò-YÑŠ41{ D)G,VÕüj_-‚1º‹Ul~1ç(”‰%<þ;b}Ñ@¯:‚Æ£O/-Q*Aͨ³òRâvíLMãð Ø\Š76~o@S_~–ô¼NØCòÓñ©Xà_d«!?2Q¡HHáðµ!wC?Ô¶„䆨ìp?ÉÒΓ• wHnÂé•22]~öX7^%²C†8þÑ"[î%¤báÛ8$±C㜾ž‹®23g¼8‰GæØl?Þ xàÃd´žºÓ%‘Ü™L¦*½°üÔé‚|½€Ìµh £§”n~ôÙh{§¸ZÔMœ3imæÂ¶$ëpJ‡¾¯ö}QV”®Ê$£bf*ïï’´ƒ0Ó©, 8E-'†I„䧉—ç«ròÕ\qÙÁÓwà4ºDWxg»€x)vH÷Fº8À&Ø|$¼G¥È%uÅhk+[ÚƒJ¢büSö-¸1ÑÈäñ÷È1oüŒÇírŽóõüÝŽ[?ñ{ÞØ£"¶?6l²"ä ²€8üI~Ó~©¹9=º“{¤¹ùkâjK[ Žœqìz}~ÎI?EüÁâÿoeF½hÝ‘—äÊ㪿úNÑ#;Ô ÕÄh}«£·ÊX„¥Vke2Ò²2˜Ô‚ uÉg7ÑÙ¨wvûE„Ö„´Õ–«TÜHZ?¶7Š…F¤fµCÒÑCHþÅhïY¶5¸Vê,õmŒÐ¶Ö6j¹‰‘5ƒV5XS†¤…ìZDëÆõçÆy£Úh¬VmdÔWn4¢þŸo£L endstream endobj 77 0 obj 4125 endobj 31 0 obj <> endobj 28 0 obj <> endobj 25 0 obj <> endobj 22 0 obj <> endobj 19 0 obj <> endobj 16 0 obj <> endobj 13 0 obj <> endobj 10 0 obj <> endobj 54 0 obj <> endobj 51 0 obj <> endobj 48 0 obj <> endobj 45 0 obj <> endobj 37 0 obj <> endobj 34 0 obj <> endobj 2 0 obj <>endobj xref 0 78 0000000000 65535 f 0000010534 00000 n 0000062647 00000 n 0000010454 00000 n 0000010582 00000 n 0000009830 00000 n 0000000015 00000 n 0000002771 00000 n 0000016562 00000 n 0000016286 00000 n 0000056162 00000 n 0000014185 00000 n 0000013922 00000 n 0000055240 00000 n 0000011361 00000 n 0000011084 00000 n 0000054311 00000 n 0000028417 00000 n 0000027995 00000 n 0000053386 00000 n 0000024421 00000 n 0000024121 00000 n 0000052463 00000 n 0000021813 00000 n 0000021534 00000 n 0000051534 00000 n 0000021189 00000 n 0000020986 00000 n 0000050664 00000 n 0000020221 00000 n 0000019990 00000 n 0000049737 00000 n 0000019437 00000 n 0000019217 00000 n 0000061711 00000 n 0000045505 00000 n 0000045162 00000 n 0000060787 00000 n 0000010651 00000 n 0000010681 00000 n 0000009998 00000 n 0000002791 00000 n 0000005778 00000 n 0000042231 00000 n 0000041939 00000 n 0000059855 00000 n 0000037976 00000 n 0000037610 00000 n 0000058933 00000 n 0000036177 00000 n 0000035923 00000 n 0000058010 00000 n 0000034852 00000 n 0000034614 00000 n 0000057082 00000 n 0000010812 00000 n 0000010150 00000 n 0000005799 00000 n 0000008148 00000 n 0000010910 00000 n 0000010302 00000 n 0000008169 00000 n 0000009809 00000 n 0000011008 00000 n 0000013901 00000 n 0000016265 00000 n 0000019196 00000 n 0000019970 00000 n 0000020966 00000 n 0000021514 00000 n 0000024100 00000 n 0000027974 00000 n 0000034593 00000 n 0000035903 00000 n 0000037589 00000 n 0000041918 00000 n 0000045141 00000 n 0000049716 00000 n trailer << /Size 78 /Root 1 0 R /Info 2 0 R >> startxref 62697 %%EOF ./Doc/ESyS-Particle_Tutorial.pdf0000664000175000017500001415722712176660653016331 0ustar vborosvboros%PDF-1.4 %ÐÔÅØ 1 0 obj << /S /GoTo /D (section.1) >> endobj 4 0 obj (Introduction to the ESyS-Particle DEM simulation software) endobj 5 0 obj << /S /GoTo /D (section.2) >> endobj 8 0 obj (A simple simulation: collision of two particles) endobj 9 0 obj << /S /GoTo /D (subsection.2.1) >> endobj 12 0 obj (Initialisation of an ESyS-Particle simulation) endobj 13 0 obj << /S /GoTo /D (subsection.2.2) >> endobj 16 0 obj (Specification of the spatial domain) endobj 17 0 obj << /S /GoTo /D (subsection.2.3) >> endobj 20 0 obj (Particle creation and initialisation) endobj 21 0 obj << /S /GoTo /D (subsection.2.4) >> endobj 24 0 obj (Definition of inter-particle interactions) endobj 25 0 obj << /S /GoTo /D (subsection.2.5) >> endobj 28 0 obj (Execution of time integration) endobj 29 0 obj << /S /GoTo /D (subsection.2.6) >> endobj 32 0 obj (Running an ESyS-Particle simulation from the commandline) endobj 33 0 obj << /S /GoTo /D (section.3) >> endobj 36 0 obj (Data output during simulations) endobj 37 0 obj << /S /GoTo /D (subsection.3.1) >> endobj 40 0 obj (Printing simulation data to screen) endobj 41 0 obj << /S /GoTo /D (subsection.3.2) >> endobj 44 0 obj (Data output using the ESyS-Particle CheckPointer) endobj 45 0 obj << /S /GoTo /D (subsection.3.3) >> endobj 48 0 obj (Generation of particle snapshots \(via subroutine calls\)) endobj 49 0 obj << /S /GoTo /D (subsection.3.4) >> endobj 52 0 obj (A Runnable module for generating snapshots) endobj 53 0 obj << /S /GoTo /D (subsubsection.3.4.1) >> endobj 56 0 obj (Implementation of a snapshot Runnable) endobj 57 0 obj << /S /GoTo /D (subsubsection.3.4.2) >> endobj 60 0 obj (Use of the snapshot Runnable in a simulation) endobj 61 0 obj << /S /GoTo /D (subsubsection.3.4.3) >> endobj 64 0 obj (Deploying a Runnable as a reusable module) endobj 65 0 obj << /S /GoTo /D (section.4) >> endobj 68 0 obj (Bouncing balls: adding gravity, walls and bonded particles) endobj 69 0 obj << /S /GoTo /D (subsection.4.1) >> endobj 72 0 obj (Implementation of body forces: gravity and bulk viscosity) endobj 73 0 obj << /S /GoTo /D (subsubsection.4.1.1) >> endobj 76 0 obj (Gravitational Interactions) endobj 77 0 obj << /S /GoTo /D (subsubsection.4.1.2) >> endobj 80 0 obj (Bulk Viscosity) endobj 81 0 obj << /S /GoTo /D (subsection.4.2) >> endobj 84 0 obj (Implementation of infinite planar walls and particle-wall interactions) endobj 85 0 obj << /S /GoTo /D (subsection.4.3) >> endobj 88 0 obj (Generating a bonded lattice of particles) endobj 89 0 obj << /S /GoTo /D (subsubsection.4.3.1) >> endobj 92 0 obj (Generating a block of unbonded particles) endobj 93 0 obj << /S /GoTo /D (subsubsection.4.3.2) >> endobj 96 0 obj (Creation of inter-particle bonds) endobj 97 0 obj << /S /GoTo /D (subsubsection.4.3.3) >> endobj 100 0 obj (Specification of bonded-particle interactions) endobj 101 0 obj << /S /GoTo /D (section.5) >> endobj 104 0 obj (Slope failure \046 hopper flow: variable particle sizes, friction \046 mesh walls) endobj 105 0 obj << /S /GoTo /D (subsection.5.1) >> endobj 108 0 obj (Splash-down: collapse of a block of particles with variable sizes) endobj 109 0 obj << /S /GoTo /D (subsubsection.5.1.1) >> endobj 112 0 obj (Algorithm for packing particles into a prescribed region) endobj 113 0 obj << /S /GoTo /D (subsubsection.5.1.2) >> endobj 116 0 obj (Simulating collapse of a cube of unbonded particles) endobj 117 0 obj << /S /GoTo /D (subsection.5.2) >> endobj 120 0 obj (Sand-piles: adding frictional interactions) endobj 121 0 obj << /S /GoTo /D (subsubsection.5.2.1) >> endobj 124 0 obj (Frictional interactions between unbonded particles) endobj 125 0 obj << /S /GoTo /D (subsubsection.5.2.2) >> endobj 128 0 obj (Frictional interactions between particles and walls) endobj 129 0 obj << /S /GoTo /D (subsubsection.5.2.3) >> endobj 132 0 obj (Making use of symmetry to improve simulation results) endobj 133 0 obj << /S /GoTo /D (subsection.5.3) >> endobj 136 0 obj (Hopper flow: Using quarter symmetry and mesh walls) endobj 137 0 obj << /S /GoTo /D (subsubsection.5.3.1) >> endobj 140 0 obj (The mesh wall file format) endobj 141 0 obj << /S /GoTo /D (subsubsection.5.3.2) >> endobj 144 0 obj (Using mesh walls in hopper flow simulations) endobj 145 0 obj << /S /GoTo /D (section.6) >> endobj 148 0 obj (Uniaxial compression simulations: moving walls, model calibration and FieldSavers) endobj 149 0 obj << /S /GoTo /D (subsection.6.1) >> endobj 152 0 obj (Uniaxial compression simulations) endobj 153 0 obj << /S /GoTo /D (subsubsection.6.1.1) >> endobj 156 0 obj (Initialising the simulation object) endobj 157 0 obj << /S /GoTo /D (subsubsection.6.1.2) >> endobj 160 0 obj (Creating a block of variable-sized particles) endobj 161 0 obj << /S /GoTo /D (subsubsection.6.1.3) >> endobj 164 0 obj (Adding walls to the simulation object) endobj 165 0 obj << /S /GoTo /D (subsubsection.6.1.4) >> endobj 168 0 obj (Rotational bonds and frictional interactions) endobj 169 0 obj << /S /GoTo /D (subsubsection.6.1.5) >> endobj 172 0 obj (Implementation of viscous damping) endobj 173 0 obj << /S /GoTo /D (subsubsection.6.1.6) >> endobj 176 0 obj (Implementation of movable walls: the WallLoader Runnable) endobj 177 0 obj << /S /GoTo /D (subsection.6.2) >> endobj 180 0 obj (Measurement of macroscopic elastic properties) endobj 181 0 obj << /S /GoTo /D (subsubsection.6.2.1) >> endobj 184 0 obj (Storing wall positions and forces) endobj 185 0 obj << /S /GoTo /D (subsubsection.6.2.2) >> endobj 188 0 obj (Measurement of Young's modulus \046 unconfined compressive strength) endobj 189 0 obj << /S /GoTo /D (subsubsection.6.2.3) >> endobj 192 0 obj (Storing information on particles and bonds: kinetic energy, potential energy and number of bonds) endobj 193 0 obj << /S /GoTo /D (section.7) >> endobj 196 0 obj (Post-processing and data visualisation) endobj 197 0 obj << /S /GoTo /D (subsection.7.1) >> endobj 200 0 obj (Interactive visualisation of simulation data) endobj 201 0 obj << /S /GoTo /D (subsubsection.7.1.1) >> endobj 204 0 obj (dump2vtk: convert checkpoint files to VTK files) endobj 205 0 obj << /S /GoTo /D (subsubsection.7.1.2) >> endobj 208 0 obj (Interactive visualisation using ParaView) endobj 209 0 obj << /S /GoTo /D (subsection.7.2) >> endobj 212 0 obj (Calculating the number and size of rock fragments) endobj 213 0 obj << /S /GoTo /D (subsubsection.7.2.1) >> endobj 216 0 obj (grainextract: analysing rock fragments) endobj 217 0 obj << /S /GoTo /D (subsubsection.7.2.2) >> endobj 220 0 obj (Visualising rock fragments using ParaView) endobj 221 0 obj << /S /GoTo /D (subsection.7.3) >> endobj 224 0 obj (Visualising cracks formed during fracture simulations) endobj 225 0 obj << /S /GoTo /D (subsubsection.7.3.1) >> endobj 228 0 obj (fracextract: identifying locations of broken bonds) endobj 229 0 obj << /S /GoTo /D (subsubsection.7.3.2) >> endobj 232 0 obj (Visualising fractures using ParaView) endobj 233 0 obj << /S /GoTo /D (section.8) >> endobj 236 0 obj (Annular shear cells: quasi-static 2D simulations with periodic boundaries and servo walls) endobj 237 0 obj << /S /GoTo /D (subsection.8.1) >> endobj 240 0 obj (Two-dimensional computations and periodic boundaries) endobj 241 0 obj << /S /GoTo /D (subsection.8.2) >> endobj 244 0 obj (Quasi-static simulations: local damping and high densities) endobj 245 0 obj << /S /GoTo /D (subsection.8.3) >> endobj 248 0 obj (Servo walls and constant stress boundary conditions) endobj 249 0 obj << /S /GoTo /D (subsection.8.4) >> endobj 252 0 obj (Computation of bulk frictional properties of granular media) endobj 253 0 obj << /S /GoTo /D (section.9) >> endobj 256 0 obj (Jazzing things up: complicated particle geometries using GenGeo) endobj 257 0 obj << /S /GoTo /D (subsection.9.1) >> endobj 260 0 obj (Particles in a box: a simple GenGeo example) endobj 261 0 obj << /S /GoTo /D (subsection.9.2) >> endobj 264 0 obj (Getting serious: groups, particle tags and bond tags) endobj 265 0 obj << /S /GoTo /D (subsection.9.3) >> endobj 268 0 obj (Lateral thinking: hierarchical packing for complex models) endobj 269 0 obj << /S /GoTo /D (section.10) >> endobj 272 0 obj (Additional ESyS-Particle resources and documentation) endobj 273 0 obj << /S /GoTo /D (appendix.A) >> endobj 276 0 obj (Code-listings for tutorial examples) endobj 277 0 obj << /S /GoTo /D (subsection.A.1) >> endobj 280 0 obj (bingle.py) endobj 281 0 obj << /S /GoTo /D (subsection.A.2) >> endobj 284 0 obj (bingle\137output.py) endobj 285 0 obj << /S /GoTo /D (subsection.A.3) >> endobj 288 0 obj (bingle\137chk.py) endobj 289 0 obj << /S /GoTo /D (subsection.A.4) >> endobj 292 0 obj (bingle\137vis.py) endobj 293 0 obj << /S /GoTo /D (subsection.A.5) >> endobj 296 0 obj (POVsnaps.py) endobj 297 0 obj << /S /GoTo /D (subsection.A.6) >> endobj 300 0 obj (bingle\137Runnable.py) endobj 301 0 obj << /S /GoTo /D (subsection.A.7) >> endobj 304 0 obj (gravity.py) endobj 305 0 obj << /S /GoTo /D (subsection.A.8) >> endobj 308 0 obj (gravity\137cube.py) endobj 309 0 obj << /S /GoTo /D (subsection.A.9) >> endobj 312 0 obj (slope\137fail.py) endobj 313 0 obj << /S /GoTo /D (subsection.A.10) >> endobj 316 0 obj (slope\137friction.py) endobj 317 0 obj << /S /GoTo /D (subsection.A.11) >> endobj 320 0 obj (slope\137friction\137floor.py) endobj 321 0 obj << /S /GoTo /D (subsection.A.12) >> endobj 324 0 obj (slope\137friction\137walls.py) endobj 325 0 obj << /S /GoTo /D (subsection.A.13) >> endobj 328 0 obj (floorMesh.msh) endobj 329 0 obj << /S /GoTo /D (subsection.A.14) >> endobj 332 0 obj (hopper\137flow.py) endobj 333 0 obj << /S /GoTo /D (subsection.A.15) >> endobj 336 0 obj (rot\137compress.py) endobj 337 0 obj << /S /GoTo /D (subsection.A.16) >> endobj 340 0 obj (WallLoader.py) endobj 341 0 obj << /S /GoTo /D (subsection.A.17) >> endobj 344 0 obj (shearcell.py) endobj 345 0 obj << /S /GoTo /D (subsection.A.18) >> endobj 348 0 obj (ServoWallLoader.py) endobj 349 0 obj << /S /GoTo /D (appendix.B) >> endobj 352 0 obj (Tables of ESyS-Particle Interaction Groups and Field Savers) endobj 353 0 obj << /S /GoTo /D (subsection.B.1) >> endobj 356 0 obj (Interaction Groups) endobj 357 0 obj << /S /GoTo /D (subsection.B.2) >> endobj 360 0 obj (Field Saver Field Names for Common Particle Types and Interaction Groups) endobj 361 0 obj << /S /GoTo /D (subsection.B.3) >> endobj 364 0 obj (Descriptions and Output File Formats for Field Saver Field Names) endobj 365 0 obj << /S /GoTo /D (subsection.B.4) >> endobj 368 0 obj (Descriptions of the Output File Formats for Field Savers) endobj 369 0 obj << /S /GoTo /D (subsubsection.B.4.1) >> endobj 372 0 obj (RAW) endobj 373 0 obj << /S /GoTo /D (subsubsection.B.4.2) >> endobj 376 0 obj (RAW2) endobj 377 0 obj << /S /GoTo /D (subsubsection.B.4.3) >> endobj 380 0 obj (RAW\137SERIES) endobj 381 0 obj << /S /GoTo /D (subsubsection.B.4.4) >> endobj 384 0 obj (RAW\137WITH\137ID) endobj 385 0 obj << /S /GoTo /D (subsubsection.B.4.5) >> endobj 388 0 obj (RAW\137WITH\137POS\137ID) endobj 389 0 obj << /S /GoTo /D [390 0 R /Fit ] >> endobj 417 0 obj << /Length 1947 /Filter /FlateDecode >> stream xÚÝYK“ÛF¾Ï¯à)KU…\öƒ¯ÜϬ7ɦÊë'‡d²GbE"UlÒ¶þý ¢$ŽíÙM&r•ÕD¿€Àyk/ò^]Eü~}wõ÷ˆÄ“Q˜$2öîó7­Ó¶å­í]q[ÇÛ§ âpˆ 3¥OU½Û°:o›ú^Ž~èñ‚Ãü`åÿ{0¦±Û¢©–#“0Oàhˆ ,c·J†uX¶'e$n¿ˆF@UÌQ…¨TRyÖaçtÞ‹{ÛwEÙ?vÀ‰[§¡ÐTŠB)³ÑÚ\¡ÁºŠà+‡bžù=‰÷]‹Oï ^y!Ä´û­iYGûª¡ì]¸jôWKK®k[v¦7ôt³5;ö'-ûÞôì´ŠVüÅÑõÍ÷ð#ØAI¨E¡ÂX³Õ;Þb¶ÛºYcô*°Ó°Gÿá`LÔ온(¾­w¨Â°-H_'kœ‡ßÓj^Y™wøl¶ížò "ù=î?o#ô y¿xãè»+ï'Òƒ¢ÏÝs°3,:5‰BˆYBˆè"!`þ%;§3'N‡«p¶è?¦ IÑ K)º³Ó蹋nXxݳ‹|È­ÒãIkÇenSmçÖÅdlji*PIá? Kâ qi „ùŸ#p#¨CSx±Ô–æÞwu‡ð츊~€QöÁ½³"À1I{GÇ#ƒ åÝ.Dpp_غ¤ã÷]Ý”õ¢wö[ }•¤¬T’€¢ÅÚÌ": q‡óÖÅX:ÅÀkí¿1EEFãùÄsn aÐ\SÑ3æžÓÞ÷@ú1?ãIK†”È#eÌc)+{žç¦2Fwu‡³íæC±c¨@¼ïŒu®eïó6(Eh¹ŽÓ™åŠ“ÖU$›ÌØŽ‘V\šò$¸!×¾ÅÛ¡'ó·“ Ö±[VÃHãc@Âò×à¨æ 8 €%Î3 8VK>»z[M½¯]ÂÅVîahªbäZˆÐ¥Às1I˜ÊœrSæS€+C}ó@’×ôp J¦´Ž!ß*¡™+Ê|dS QÍ—(É?It|ùÿ*šõ€9rÉw«L¹N©&«OCLQÂÃ/Ö,ÙæC T?%œ²=¦2>>‘“[æ™{åAU—"Ö®øÉ<” ¶Iù±Ò¿e•@fr?Ž»®È¦nÍÆ½q…ÎaÇ®²ƒ5PÜeÆæˆU}›ÿ ‚Õ~§j¨RŽtt= ˜!”˜1ˆÁ›4°P¢`r*QN†É©)•\JÎDEÊ1u±œÔùÅtÝ~Ôáôꯀ£¢xJ­TqÄö°>6$س9ö\9Éœûé£cëtüC‹@7¥õØ:…€³ˆ"@×=DNmGp £raGÞPW5R0ò ð'ŒáÙŽÕ»BwÀ™ªÀ’ÙÏøsŽ—šá¥ËNuÅ#D’!ºÝ»žÞ”õÏ‘ÐåP#iƒÀëc-àîXZ&eòô7CD±üš Å~ö¹ Mq¥4 —c¬$>´®3è¸!I Ÿ9 À3-4¤çóÇÏÿiù“AÓ ÚµÁC@ÎS±¦FßtÁþÔI^8†¼ Š,-¨b†êæƒ)‡KœúzÇÔÄÈ`¸îc+ÒgI¬ß¾\ƾˆž _Â𽚆*þÄóÉœçç1fÏ^ñPöе»3î+ÛݲÞ"/«©V¿ŠÉúÓ&Ÿ·ÁXþæ[QÁ¾.ú‚kðÐë!«¡#d.ê÷e!ÎSX$ÄÿR‰¹Ì¨©¿î8d'¿,_‘Îê-×` V³ÐRç&ât¾O g5•èë •É“2?cœDé#1þrcè››jÝË 3ë…ªJ@ á“©üAɾµæ¬‹Ùœf'à» š††^É?7„Óqe=vá³×¸l*4ïpâ9"Q~H‘Ç¡NÅyÕŽòÈkìööÛÖ}Qž¸¿X„.èdötè {]gë6:áœÎQ„שç‹Êå¿‚x’ ˆ,HÓ0RÙøÅe¾ôæîê¿YV}ß endstream endobj 390 0 obj << /Type /Page /Contents 417 0 R /Resources 416 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R /Annots [ 391 0 R 424 0 R 392 0 R 393 0 R 425 0 R 394 0 R 395 0 R 426 0 R 396 0 R 397 0 R 398 0 R 399 0 R 400 0 R 401 0 R 402 0 R 403 0 R 404 0 R 405 0 R 406 0 R 407 0 R 408 0 R 409 0 R 410 0 R 411 0 R ] >> endobj 391 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [441.958 514.832 494.143 526.522] /Subtype/Link/A<> >> endobj 424 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [97.137 501.283 269.689 512.972] /Subtype/Link/A<> >> endobj 392 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [284.17 501.283 427.994 512.972] /Subtype/Link/A<> >> endobj 393 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [486.696 474.185 494.143 485.874] /Subtype/Link/A<> >> endobj 425 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [97.137 460.635 195.114 472.325] /Subtype/Link/A<> >> endobj 394 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [256.082 447.086 293.075 458.776] /Subtype/Link/A<> >> endobj 395 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [408.373 433.537 494.143 445.227] /Subtype/Link/A<> >> endobj 426 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [97.137 419.988 137.645 431.677] /Subtype/Link/A<> >> endobj 396 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 353.566 441.33 366.185] /A << /S /GoTo /D (section.1) >> >> endobj 397 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 327.414 356.617 340.034] /A << /S /GoTo /D (section.2) >> >> endobj 398 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 312.968 340.135 325.588] /A << /S /GoTo /D (subsection.2.1) >> >> endobj 399 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 298.523 291.953 311.142] /A << /S /GoTo /D (subsection.2.2) >> >> endobj 400 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 286.401 289.187 296.696] /A << /S /GoTo /D (subsection.2.3) >> >> endobj 401 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 269.631 311.624 282.25] /A << /S /GoTo /D (subsection.2.4) >> >> endobj 402 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 255.185 265.06 267.804] /A << /S /GoTo /D (subsection.2.5) >> >> endobj 403 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 240.739 425.103 253.359] /A << /S /GoTo /D (subsection.2.6) >> >> endobj 404 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 214.587 273.549 227.207] /A << /S /GoTo /D (section.3) >> >> endobj 405 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 200.142 289.577 212.761] /A << /S /GoTo /D (subsection.3.1) >> >> endobj 406 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 185.696 375.513 198.315] /A << /S /GoTo /D (subsection.3.2) >> >> endobj 407 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 170.586 392.445 184.533] /A << /S /GoTo /D (subsection.3.3) >> >> endobj 408 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 156.804 346.172 169.423] /A << /S /GoTo /D (subsection.3.4) >> >> endobj 409 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 142.358 357.553 154.978] /A << /S /GoTo /D (subsubsection.3.4.1) >> >> endobj 410 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 127.913 386.298 140.532] /A << /S /GoTo /D (subsubsection.3.4.2) >> >> endobj 411 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 113.467 376.902 126.086] /A << /S /GoTo /D (subsubsection.3.4.3) >> >> endobj 418 0 obj << /D [390 0 R /XYZ 33.853 921.043 null] >> endobj 419 0 obj << /D [390 0 R /XYZ 68.868 798.142 null] >> endobj 428 0 obj << /D [390 0 R /XYZ 68.868 371.333 null] >> endobj 416 0 obj << /Font << /F16 420 0 R /F17 421 0 R /F20 422 0 R /F21 423 0 R /F23 427 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 473 0 obj << /Length 2207 /Filter /FlateDecode >> stream xÚÕZÛr¤È}Ÿ¯è§5a ª(ðÛÎÄj<¶7bc¤‘ñއ@ÝX4´¹H+½+ëÆ­ÕZ#õ¾ˆ¦šFä©Ì“'3q«…»øôÎUGÿuÕj!?|ùôîÃÍ»÷W>Zxžâ/nîAè„A¸ aàx!]Ü$‹_-¼´#7°>”mgÅji#J¬o,Ïë¿,mâºK³¾ªØyÖCÖÀáiaëÏò›GX€_ÉSV$êNüàYe‘¤ja˪&‹ó´^þvó7óø‹_í€xÔò‰XžZóþÊ£}S<ê-l;ÊÇ[ÚžëzÖçÍ6O7i±ô©Õ°féYYYðÿÏOË;8ð`pÆÿ†V²cÄ×we§`:FÒ\¾æò«ÔÒ4¸C›ßËOY—5\EùU#»<× ,Gb9ã0º[ä Òó[¿ð'òñç{Ö'n°±5–KS>KÌҊŰ<Ù¥Ð#‡žGÑöžy˜—;EÊWH}àH©}¦Öí¾}Füê73{öaÏf͂ҸрúÇfVüÛõp‘5©<ßæ¬`•¼æâP±L?5©Øpc~¾Õ~göC|ŠñÁÉ~„”ÙŸÒ‚?D#y”?ë8(4äÈrÖp;”ág!|)~´ ®pK¡K €£¸¼ôÃþÞ÷á¢V[€“tÐò›$ò›gÄnøbQóâ(MÊÓG ñTð÷8†”ãÛÚæAÒ+’ ô¬$õÝ})šR(]s”¶ÂÒ8n‰9bK%;Dã¶ì`R ^ äÀb¬úlÌ ‘ f– "eßu^nÁF‹[J|dݱ,o+uòƒ<¬ËíV¨¸´’ CR‚Þ{ä:‰F\ÿ,ßbUƾåê§~pVgÿKk.IàZwUK‡íý‹MZ¯Áª¡¬SÙ£“–4°ï;~"®Bþ‘ÊÑÖ?8 1Úñš'œzm'%ìùcÁE¨ÁÀŠËƒiBÇ*:l`^Ó*d¶Ù‚oëì]±D3p NÃe£J •oºÉiÂM‰pˆ³éÚGØ!ÔÓ)÷Ÿüÿ(Y¢5Ô—¶(Ä=‡i{4¼õ]‡†‘¾Çñàƒ‘‡9/<ÃI¢Ò­‹ŸSV·•gXzmX\•Üe¶Y,ҜՊ⠮8:™‰»®†¨å¡29”áP~„­Aç£l‹ÕŸj¹°‘9>ió¶–—þ m—rð C¯D.á©«}¸EÝTi±jÖƒGïû!Š,rz*îš`(– ÄÔÂä‘ 2XûG(†VG*cˆ ã¼ÕÓ2ôÅ{#ÄÓ>Õ¤…-ˆ:x\ 4F‰«Ÿ‡¿øvÓMý4M;Ó0¹h÷ N­ùBþûÃI•5ß/P®•ucC µK¿ØcÞ×IXÃä'ž<[òrïÇ/µ„'À;ãmÚ½­Óï>,uÇœŽaØ%ÛQLˆg³r\Ôž³8šŠBkG6Vá¢iÒn¶þCs/¯nŽß ô•*ÇsÎ隉•ʆ¢Y§1lĽœ–J:Êm‘ ¨‘,¿½ùûðÛÉ€Ïâã0®v8%CB§½ªLV°=‰Üï±N\:·ývÓ/"[Vì6K'š 7ó·y³jÓG–ǃ‘—©ç ïê*Dó®ÑP©ö’/ÜIßR¡b+‘=9î;æžôûm»\ Ï Qÿ˜]UŒçÃßp°]aJ‘rR†)ã%ÜSmvàT &/]þ¿–<öx†þM—·—ÐX“‘W¿¿TMÛ& hÈAZß¾H%.yýÅ3CTTn7uSéJâ•ñ áR“Ðci;‘Ž(Þø8¢±I_²Ä‘Þõ‚ñ‡Ž‰?°wOø”ço~Y¢|)»{2ën3ÅPïM¢ª¼¹£8$@áå—W&/î3ÄñÐ8¢cãM{Ìi^ŒÃ» 'F 8 QâPIX†¢â§›wÿ“þQ endstream endobj 472 0 obj << /Type /Page /Contents 473 0 R /Resources 471 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R /Annots [ 412 0 R 413 0 R 414 0 R 415 0 R 431 0 R 432 0 R 433 0 R 434 0 R 435 0 R 436 0 R 475 0 R 437 0 R 438 0 R 439 0 R 440 0 R 441 0 R 442 0 R 443 0 R 444 0 R 445 0 R 446 0 R 447 0 R 476 0 R 448 0 R 449 0 R 450 0 R 451 0 R 452 0 R 453 0 R 454 0 R 455 0 R 456 0 R 457 0 R 458 0 R 477 0 R 459 0 R 460 0 R 461 0 R 462 0 R 463 0 R 464 0 R 465 0 R 466 0 R 467 0 R 468 0 R ] >> endobj 412 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 782.866 432.051 795.485] /A << /S /GoTo /D (section.4) >> >> endobj 413 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 768.42 411.415 781.04] /A << /S /GoTo /D (subsection.4.1) >> >> endobj 414 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 756.299 284.615 766.594] /A << /S /GoTo /D (subsubsection.4.1.1) >> >> endobj 415 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 739.529 225.906 752.148] /A << /S /GoTo /D (subsubsection.4.1.2) >> >> endobj 431 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 725.083 466.303 737.702] /A << /S /GoTo /D (subsection.4.2) >> >> endobj 432 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 710.637 318.047 723.256] /A << /S /GoTo /D (subsection.4.3) >> >> endobj 433 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 696.191 363.31 708.81] /A << /S /GoTo /D (subsubsection.4.3.1) >> >> endobj 434 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 681.745 313.479 694.365] /A << /S /GoTo /D (subsubsection.4.3.2) >> >> endobj 435 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 667.299 376.887 679.919] /A << /S /GoTo /D (subsubsection.4.3.3) >> >> endobj 436 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 641.148 523.408 653.767] /A << /S /GoTo /D (section.5) >> >> endobj 475 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 629.026 116.079 639.321] /A << /S /GoTo /D (section.5) >> >> endobj 437 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 612.256 438.213 624.875] /A << /S /GoTo /D (subsection.5.1) >> >> endobj 438 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 597.81 436.778 610.429] /A << /S /GoTo /D (subsubsection.5.1.1) >> >> endobj 439 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 583.364 415.321 595.984] /A << /S /GoTo /D (subsubsection.5.1.2) >> >> endobj 440 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 568.918 322.584 581.538] /A << /S /GoTo /D (subsection.5.2) >> >> endobj 441 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 554.473 410.279 567.092] /A << /S /GoTo /D (subsubsection.5.2.1) >> >> endobj 442 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 540.027 408.068 552.646] /A << /S /GoTo /D (subsubsection.5.2.2) >> >> endobj 443 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 525.581 431.445 538.2] /A << /S /GoTo /D (subsubsection.5.2.3) >> >> endobj 444 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 511.135 391.641 523.754] /A << /S /GoTo /D (subsection.5.3) >> >> endobj 445 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 499.014 283.239 509.309] /A << /S /GoTo /D (subsubsection.5.3.1) >> >> endobj 446 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 482.244 378.768 494.863] /A << /S /GoTo /D (subsubsection.5.3.2) >> >> endobj 447 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 456.092 523.408 468.711] /A << /S /GoTo /D (section.6) >> >> endobj 476 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 443.97 155.095 453.667] /A << /S /GoTo /D (section.6) >> >> endobj 448 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 427.2 284.665 439.819] /A << /S /GoTo /D (subsection.6.1) >> >> endobj 449 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 412.754 318.743 425.374] /A << /S /GoTo /D (subsubsection.6.1.1) >> >> endobj 450 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 398.308 369.473 410.928] /A << /S /GoTo /D (subsubsection.6.1.2) >> >> endobj 451 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 383.863 345.081 396.482] /A << /S /GoTo /D (subsubsection.6.1.3) >> >> endobj 452 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 371.741 376.137 382.036] /A << /S /GoTo /D (subsubsection.6.1.4) >> >> endobj 453 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 354.971 334.025 367.59] /A << /S /GoTo /D (subsubsection.6.1.5) >> >> endobj 454 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 340.525 463.555 353.144] /A << /S /GoTo /D (subsubsection.6.1.6) >> >> endobj 455 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 326.079 352.625 338.699] /A << /S /GoTo /D (subsection.6.2) >> >> endobj 456 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 311.633 318.162 324.253] /A << /S /GoTo /D (subsubsection.6.2.1) >> >> endobj 457 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 297.188 505.264 309.807] /A << /S /GoTo /D (subsubsection.6.2.2) >> >> endobj 458 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 282.742 523.408 295.361] /A << /S /GoTo /D (subsubsection.6.2.3) >> >> endobj 477 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 268.296 319.007 280.915] /A << /S /GoTo /D (subsubsection.6.2.3) >> >> endobj 459 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 242.144 312.04 254.763] /A << /S /GoTo /D (section.7) >> >> endobj 460 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 230.023 333.375 240.318] /A << /S /GoTo /D (subsection.7.1) >> >> endobj 461 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 212.92 396.569 225.872] /A << /S /GoTo /D (subsubsection.7.1.1) >> >> endobj 462 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 198.807 357.984 211.426] /A << /S /GoTo /D (subsubsection.7.1.2) >> >> endobj 463 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 184.361 373.635 196.98] /A << /S /GoTo /D (subsection.7.2) >> >> endobj 464 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 169.583 361.679 182.534] /A << /S /GoTo /D (subsubsection.7.2.1) >> >> endobj 465 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 155.469 371.381 168.088] /A << /S /GoTo /D (subsubsection.7.2.2) >> >> endobj 466 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 141.023 387.158 153.643] /A << /S /GoTo /D (subsection.7.3) >> >> endobj 467 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 126.578 417.309 139.197] /A << /S /GoTo /D (subsubsection.7.3.1) >> >> endobj 468 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 112.132 340.165 124.751] /A << /S /GoTo /D (subsubsection.7.3.2) >> >> endobj 474 0 obj << /D [472 0 R /XYZ 33.853 921.043 null] >> endobj 471 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 520 0 obj << /Length 2412 /Filter /FlateDecode >> stream xÚí[ËvÛ8Ýû+¸¤Î!x?zgwbOr2tì3Y¤{AK´Å‰$*$ÇýõSHY¤è–˜N;ÎÆA@Õ­º¨‚‹8¸ppv„Ë_q]¾ñîìèäâèÙ)e!ÈAƒ‹«@j¤¥”–ˆh\Lƒ¡ –áñr9b$\Ï£l4æ‡ù,®š“x>Ï%7á§u”Æ$LÆyÉž€^ú¼|)Y”£IºÌ}çMRÌ|k5ÃÝ8KRטº×¡ÿÒ]¦ëåt<úóâU@ÂcÂçÒ¯3Ê’dJ„Ñrêyœ}¶ó¥þòƶ#X«d£™àØ ŠU(¥ëßÕÔ³S¢¶Õ„ë3kD@bŒIxq3¢*LÇÓdH¸ÌAÈh“Cï$]¬ÖE%7£²\&4@lxÀ‹MµÛö_º~+¶®±jFDˆFcñá?¡ å¡TµÞ]µìê–zøŒàά(x¥Œ…3ÎS'áÄëH†Óh±J–×^aõÌ’ëYy?•-ªÐØ )¼¥é+¼¨„g¥ðçÖè,n~ÍÎ$œÑÕAŸ€Šhi漏Š,Îs/ü6ô·›¦‰7Ÿ¦!hµ+7昅y°YðR3¿Þ¹€)½* }=ÿèå¾Ê’‰½û”޳ÊÒÊA ïâ›7UxYê’—lÏ"ž&Qsá0½J~Ú!“TÇ[Q`UÛe•b<«¾ŠþúË<ÐS1ƒfIaëÕ/~ –6æÉ$*â’ÓV¨a2ýÕuœ.ââŽúÖ¹øì”ÕVÁ„DRKX¢›ÿ,^žÅiM’æº5CëêÕ—ÇœR$˜¨Ùpä[ç^†̤4‡¨fûö¹/%QDYä-âEÐzW¼æò8Fšðê¹øKT¸³”Ã1ëaÆ&»œmL œhSÝŸÅEQRª´ûa’®+ö½ÎÒõ*ÿWéeàpw–eI)ºnRÖ¥ÛžÒêÒ=ÑX4'ôŸ¤ÜTKEÒ¯Á¡²jÛ±Ž÷”Têe–À­lbío–lö¦Uäz>n”y•f1[úRÒßÒ¦qK”aÄ÷QÃ׉xÝ pOý.ãäFyq~{>~ë"§mâ­*]g“kêC·Éz»€±¤ûæ~M•º‡R,lÛdy ¡%1°}XƒjÇó$/î¸Òa t]¤YR-¼ôíˆf˜…J÷ä³¶Xó‘6‚5CàTqË%¬p£ÕmƒeëÃKŒ0UÕ;?é<àgˆ¢·Qw`cÈR XoÚ7þ‹‹£Oåà$_@@°õ)LGþÄÁn¾ 0bF7îÑEÀ4öµyp~ô»O¥’àðucQÅüÄ麀¨Ó$8ÒŒþ³Mâ0[hÁ[w†•cÂÂF5gÎóÂAçDÓ2yžÌ>v¡Í%b`16ìY7ö€¹dºžsCfq8öŒCäH†ÁÆbºÜµ>'ùOì»±Ä~ã÷¢û·oþ›/£U' rT-ß*»×ª, áØ‰ˆä®#Km†qE»Jãç}·^.£ËîXLq„%ù!c±6¨»#,Â)‚ § µê†ú:‹>'Åmg¨‰ªOÎñîÅt‡AÆÎ7!ѽ!is?¹ ¸’H¯ä~ÏhÎÝX^ôQÐú²Ó÷ ãâ ì„m˜÷(CZ¦õ|ž®Ú(—C’üÈ%x¸80ÕˆWp7Ô&e¿Š’yä‚"AÅ“Ž~ŒØ7ò%øpì¹BËA°‡¡.“žê ¿s»ÅÈhþÄò\£÷Ís 9q™8ŒD%©Þ2±ÈÚð!&¦è‚ôúÌó4Í:y†Cñèy¦yÐÎdHpCð2LØŽ1ÑÉ™bMD#MDok`æ9mO}cÿOû„͉ïmN=ᜯþ'Îgh‘Ͼªa › áO60pXŒHˆÕ¾G#¤Ç¹Ø,]­âìþdœ ,ÁIÆ™605ÛØÁÍσ±~ ÷¶€§cYZ´ÀÏ *‡0“)¤:ðHœID™tcqU‰§‹•­sés#ô#4‡ZBö„>0%¼Ë zœÃ½‡mîuMãÎÐé';?$û3q³2WIik(S÷E€ƒ˜}Ï©I£2[—ö÷B„+ÁyÇÎ#(¸p͉0HƒõÖ*;NFc)Mx12<´'ôeE‡«î»¿ö䥯,‰³hRÖB癫fjT£œ&ñ¼lžG#FCWg»uK†LPrbKÜ”Qvy¶~jkyTVËkL«$ÿ±*9¾â²T=°¤öıY…–(RC,Š Û϶ä‚W×µu÷·haMˆì‹‚l߯ébaA°m_{Ö[Y“í¼°·e‰iîûœÙÆKW]º…¥ílÁ²fJ «~`eÚ‰­L³²>óI–¬vËÄUøÆUøÎÓÄ×éAk¤I˜f‹¨¹ÊêáMiZeÿÐg5§CW™ïÞõškžWÝ_°Ö °y°Ðü>¡«úÞbVŠÙ&¼²ÂS/|^+ÊSw²ÉºÍìº ßÆÞîRG¹é4ubyľ;lÂ÷;åÞX?>Fø. Þµ7K)Ûº¥Í‘…Á0ÙØÚ¶Í}/­²‹­§•Ê IM@!(ò#­„ÖÓÊÆæ«"œÀXÜe@>d{ñîå‹óW¡äÇÊZöCl, R¦¹»rK¿ý`#Ã/6;§eøþåÅ¿w§¥_1?0-¥i&êÓ¾|¾c)Œý ¿UBº¤ »lÙDo#QÙ+1Œ‘(Œ’½Œd€i7F²=íÛ7ç-³rfR®u×&m±L*‡õà)Ÿ!*D‰àåW ÀR‚cfaÜëãu’õ¤ð4¹^ge°Ú?SƒX‹ê’úì§HJRû]å<\ÍÓ¶˜›ÂþÞ}ce¯Š,éxø¿xb¿/p9tûO­ü³êÑøKáu¥Þ‘——`¯²tÑúi‘èî¤ó¾"9Î ȆA;â°ƒYÎaËæÚ¥„j)Nßù§—@Ln>SiÈ}é`6ÿé¤NÒ8/£wÀØ>?­ãå$®,è>/^ÚÏ•Vù,-Ê”çk &Z!"i—†¼B™ ŒÏ=¬ ˜T†Ù‘`Ðf9pS· ÒBïÕ­MÄ0û>_ ñ°qж¹ 2‚4~A[Õ¿ãë…L Üÿ2ýÖ endstream endobj 519 0 obj << /Type /Page /Contents 520 0 R /Resources 518 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R /Annots [ 469 0 R 522 0 R 470 0 R 478 0 R 479 0 R 480 0 R 481 0 R 482 0 R 483 0 R 484 0 R 485 0 R 486 0 R 487 0 R 488 0 R 489 0 R 490 0 R 491 0 R 492 0 R 493 0 R 494 0 R 495 0 R 496 0 R 497 0 R 498 0 R 499 0 R 500 0 R 501 0 R 502 0 R 503 0 R 504 0 R 505 0 R 506 0 R 507 0 R 508 0 R 509 0 R 510 0 R 511 0 R 512 0 R 513 0 R 514 0 R 515 0 R 516 0 R ] >> endobj 469 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 782.866 523.408 795.485] /A << /S /GoTo /D (section.8) >> >> endobj 522 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 770.745 208.604 781.04] /A << /S /GoTo /D (section.8) >> >> endobj 470 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 753.974 401.339 766.594] /A << /S /GoTo /D (subsection.8.1) >> >> endobj 478 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 739.529 413.89 752.148] /A << /S /GoTo /D (subsection.8.2) >> >> endobj 479 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 725.083 382.024 737.702] /A << /S /GoTo /D (subsection.8.3) >> >> endobj 480 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 710.637 420.719 723.256] /A << /S /GoTo /D (subsection.8.4) >> >> endobj 481 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 684.485 463.462 697.104] /A << /S /GoTo /D (section.9) >> >> endobj 482 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 670.039 341.772 682.659] /A << /S /GoTo /D (subsection.9.1) >> >> endobj 483 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 655.593 381.714 668.213] /A << /S /GoTo /D (subsection.9.2) >> >> endobj 484 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 641.148 410.799 653.767] /A << /S /GoTo /D (subsection.9.3) >> >> endobj 485 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 614.996 411.567 627.615] /A << /S /GoTo /D (section.10) >> >> endobj 486 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 588.844 291.142 601.463] /A << /S /GoTo /D (appendix.A) >> >> endobj 487 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 574.066 169.715 586.885] /A << /S /GoTo /D (subsection.A.1) >> >> endobj 488 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 559.62 211.056 572.439] /A << /S /GoTo /D (subsection.A.2) >> >> endobj 489 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 545.174 192.6 557.993] /A << /S /GoTo /D (subsection.A.3) >> >> endobj 490 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 530.729 192.6 543.547] /A << /S /GoTo /D (subsection.A.4) >> >> endobj 491 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 516.283 182.019 529.101] /A << /S /GoTo /D (subsection.A.5) >> >> endobj 492 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 501.837 223.36 514.656] /A << /S /GoTo /D (subsection.A.6) >> >> endobj 493 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 487.391 175.867 500.21] /A << /S /GoTo /D (subsection.A.7) >> >> endobj 494 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 472.945 204.904 485.764] /A << /S /GoTo /D (subsection.A.8) >> >> endobj 495 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 458.499 192.6 471.318] /A << /S /GoTo /D (subsection.A.9) >> >> endobj 496 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 444.054 217.208 456.872] /A << /S /GoTo /D (subsection.A.10) >> >> endobj 497 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 429.608 252.397 442.426] /A << /S /GoTo /D (subsection.A.11) >> >> endobj 498 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 415.162 252.397 427.981] /A << /S /GoTo /D (subsection.A.12) >> >> endobj 499 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 403.373 194.323 413.535] /A << /S /GoTo /D (subsection.A.13) >> >> endobj 500 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 386.27 198.752 399.089] /A << /S /GoTo /D (subsection.A.14) >> >> endobj 501 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 371.824 204.904 384.643] /A << /S /GoTo /D (subsection.A.15) >> >> endobj 502 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 357.379 194.323 370.197] /A << /S /GoTo /D (subsection.A.16) >> >> endobj 503 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 342.933 188.171 355.751] /A << /S /GoTo /D (subsection.A.17) >> >> endobj 504 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 328.487 225.082 341.306] /A << /S /GoTo /D (subsection.A.18) >> >> endobj 505 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 302.667 444.075 315.287] /A << /S /GoTo /D (appendix.B) >> >> endobj 506 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 288.221 211.388 300.708] /A << /S /GoTo /D (subsection.B.1) >> >> endobj 507 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 273.776 505.264 286.395] /A << /S /GoTo /D (subsection.B.2) >> >> endobj 508 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 259.33 457.806 271.949] /A << /S /GoTo /D (subsection.B.3) >> >> endobj 509 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 244.884 405.298 257.503] /A << /S /GoTo /D (subsection.B.4) >> >> endobj 510 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 232.763 179.923 242.925] /A << /S /GoTo /D (subsubsection.B.4.1) >> >> endobj 511 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 218.317 185.776 228.479] /A << /S /GoTo /D (subsubsection.B.4.2) >> >> endobj 512 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 203.871 225.911 214.033] /A << /S /GoTo /D (subsubsection.B.4.3) >> >> endobj 513 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 189.425 234.994 199.587] /A << /S /GoTo /D (subsubsection.B.4.4) >> >> endobj 514 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [112.355 174.979 262.781 185.141] /A << /S /GoTo /D (subsubsection.B.4.5) >> >> endobj 515 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 105.772 505.264 119.72] /A << /S /GoTo /D (figure.1) >> >> endobj 516 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 91.326 357.39 105.274] /A << /S /GoTo /D (figure.2) >> >> endobj 521 0 obj << /D [519 0 R /XYZ 33.853 921.043 null] >> endobj 523 0 obj << /D [519 0 R /XYZ 68.868 120.856 null] >> endobj 518 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 546 0 obj << /Length 2380 /Filter /FlateDecode >> stream xÚíZK“㶾ϯàÉáTE4ñ+§u²Þ”OIf’rjí‡âHŒ)RKR3Ö¿O7¤H=wväxíÍe4øú©‰ƒEïnbß2øÍ" Î?ÞÝ|sóõ·ÌŒE‰R<¸ ¬Ž$7–YÜσ÷¡¸1£yxkYؤ·3%ÃÿäYW7ÛÛ™4:¬±UaJÍCZ–4ñp;ã&¬7UVT šÜTó¼¡ÙEsË` p<6[by.º%q”E•§ QŸŠ6«Û 㱊›zuûãýw_+ÄX®£„Ë`Æd$¥&AM 'm£õ–VLE×,‚NL¬°5C¦áö‚÷3®uôqüå4{WWr;¡Â*˜Y —¾wùÒ£è ¼],Ã6ÿ°É«,Ç‘ !µJ×í²\t-QhF8lÁpQ0“mˆ˜O¬Ó¦+²2oix+BÙHKÖ¿½‡‰“òíýÍ/" $ÈJa”‰d¢‚luóþÇ8˜ÃÜwA‰ÄÏŽsˆH'¸ª înþNz6=’1 Å#ydeBƒ$ù pJÅZþÞÑ)“äšXU¡`±ª“(±ÖcUÑýªVEÌFXp [U*2=¢5|¹AJ,M‘uE] [¿¨¬×=Z‘1«Ë¶ñ[·Å ÍÛ¦LqÑ^jäð„ü»LJ4¼L™×WÚHIØJÉÒ±iQ~2v%c¿,4>O[ ø”ñÉb1c¦¬GÆT¨±1…‘³€BŽº#« ‘mAœõÎz¼€ê*-‰4¶©B]šÚªˆku hâV±öÇöZxÊï›H›³Ž_kû»÷êB_F"O"cÕôM͉\Œ‘È9AÚ1¹Ø‘ÇHz†t#<µC‡D‘ôšÓŠ¥8 ¾ñ‚kxh¦jŠ&¤˜³pf±1„'Ì•€ ´Ò‘0òU@ædæöb°×D†Ã“E ì\]åh}ÆôÞÑe]7§ |q¦ÎiP¢ÕÿÑ—ãTnÀƒÅrêüíÑÜÚ¢¹5ºØŽ½#Û ¢‘¾³­8ÚtEY´.pÅᇠ€“!·ávµÊ;̨ptmËÊ–_ŲÂVÜŠKxd ¤‰¼ÊÉ<挪éÑÏd¶çð¨ÏáÑ2ñëũ׌’ËV[Ë(1{xI<Æï­6̳Ì¡ÌÒ,0Ežœ@–r•·KêUµcŸ£ÙÅñ#™N>cØêÒ~bkViÙºQö+\ó‘[“³‚xz],†ûcþµ^{ýFÁc㽞i¼!õ±¦Àô·½‡”â|µƒÀÁÎàê³ù*‡<Ôõ> 69LW(PE•¼J%x ]ÜJkïžÏEü⤎žC‰$”ü"ˆ%¤|ÈÒúWaþUþR¤³CêÅ0EYnÚ® ÊÙÙĆÝ2§)€k†Ðž‹°³ªWy…/Øù_Mèné×9Ì»™Qбc¬«yî·z*N‡MÝ¥ãð#/Ó6›=4Eו9œzþ±p~ >ÒÈßvˆ)?Â!oÎûcÆžrxf¸¥ñK W€Ä†j„ë"ÃËæ˜ u dà3dFÕCžlÓ<ÝzG ïˆqÙë²Û¦¦v•§p<:œÆ/ù7–CëMµøC{òÕWaÎ7€Iè)ªC‘Êð‰Ê¨8²É…¼=¦UI$ôÔ«¹¿¢†P®d¸©2‡ ´è•ƒ¦Â$oµ†÷b´Å¢Û/€k‰¼Z`°üÆþùnw„3D®×n2¼¡%RjvwyRËm¨Ä岡?Ï÷”\ø×¿£7¼óo(âñ¹nX?t0…㈾YPéPÄx/èÜÒŸ §‚q'mëK-bT~Á¤'Ëc êG"Á!|RÂÅì•I®ÐÚíe˜?µ—擳\ôŒ_H [}D²Ë0pe{`”Œ÷Å*ŸµyS¸HÈPÕYÀDf¾$Rom°ŸWy³Øöôºq …>Í‹ÁðÏICqj¾i(”€~Jͦàk|g‡†ÇͰÁ¯Ôùùƒ ±]Éî( ¹Ö‘‰“@Zpöü•É®‰# ;ñÈrõñpfçà¬ûLÀönO±Hïÿ`ÂÔQ°Y6«Â>Í0€8']ä4A r¡´DhꟜá¯h<`ÌÆìcÀ06‘§|ÜKÁeÀ;-†-ÖwÅ+³G®`½ ×âJè’LýfŠÌêr’Ècí~›P ŒÊ‚‡DÉ®³ËÿpÚÅÙ4Ñ# û)Íî†Ä‰F‚ƒ“ÝÁ iWõÀñJ{Õ;`Ü*–ìÿøÅ61ùDl<$ßxC“ÿœ®Ö}úD ¢Ÿ|{·½›ýÍA“·ÓÞð©h7iY´Î1øÏãÏo€1ῊüùP¡ÎªŸæ[mèë…|KÂa[ùbºbçú¯Ç)úÚcŽ<1.Bô¨{Wn×ËöhÆÎ#Á†Œ½ðûö¢£Ü·ÎZÆÃ7”Œ\¸œ _ÚäkŠLfòvïýdJâ3n¼mü!)õ?(µëeÞø¢ð­°ï²ý#ŒµÀRjMé—_ôÐÿ'¦jK¿êûª¡w{þ”éÏ_”1””˜e…Kó·ÂbS~Ó«å~h "ÉtH Ôngq„߈©ŸD5MŸd"eáže„ÉÉØô‹Y/ [ïô{&ëÈ÷æiŸ¦!˜ûºÅ<­ý²ÿ•EË—U$z+”ìW$óQsElvõ£z6Zµ}õy0­¼jˆÖ.sêBhŸ—žñÀVÁlFÁAhK6 H¾Œ;;]~*|%¢È&¥¦M5OÁ¯û´ƒûÒ$Ì;À!á{øzW9Ⱥ¡2|Ö³$²f0%N*”ç„[4bþÉ?¼”–꺑¾œþ Gš³©aæñÑ€(±íJð?ÄLäpepqC è›ò'ê ¿¸QFσËtV †‹]ñz©?ä²N½}Z‘†Ð# ºi0½w]üEò>–$/zgqþ±øçˆê›Ëå(&p‰“ËäìhV&È?cKš#°°&Êè×yïÔþžÅP«¢ÙíAâˆñ@žÉ{bÈìÞóÔó÷Oü e€8‰’]tUVŸ] ûˆy0òxs— ÉèŒÃ-‹þŸc§¼pü¬xíÉ endstream endobj 545 0 obj << /Type /Page /Contents 546 0 R /Resources 544 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R /Annots [ 517 0 R 548 0 R 526 0 R 549 0 R 527 0 R 550 0 R 528 0 R 551 0 R 529 0 R 552 0 R 530 0 R 553 0 R 531 0 R 532 0 R 533 0 R 554 0 R 534 0 R 555 0 R 535 0 R 557 0 R 536 0 R 558 0 R 537 0 R 559 0 R 538 0 R 560 0 R 539 0 R 540 0 R 561 0 R 562 0 R 563 0 R 541 0 R 564 0 R 542 0 R 565 0 R 543 0 R 566 0 R ] >> endobj 517 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 782.202 523.408 796.15] /A << /S /GoTo /D (figure.3) >> >> endobj 548 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 767.756 180.419 781.704] /A << /S /GoTo /D (figure.3) >> >> endobj 526 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 753.31 523.408 767.258] /A << /S /GoTo /D (figure.4) >> >> endobj 549 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 738.864 161.963 752.812] /A << /S /GoTo /D (figure.4) >> >> endobj 527 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 724.419 523.408 738.366] /A << /S /GoTo /D (figure.5) >> >> endobj 550 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 709.973 197.152 723.92] /A << /S /GoTo /D (figure.5) >> >> endobj 528 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 695.527 523.408 709.475] /A << /S /GoTo /D (figure.6) >> >> endobj 551 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 681.081 221.76 695.029] /A << /S /GoTo /D (figure.6) >> >> endobj 529 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 667.299 523.408 679.919] /A << /S /GoTo /D (figure.7) >> >> endobj 552 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 652.189 365.88 666.137] /A << /S /GoTo /D (figure.7) >> >> endobj 530 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 637.744 523.408 651.691] /A << /S /GoTo /D (figure.8) >> >> endobj 553 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 623.298 256.949 637.245] /A << /S /GoTo /D (figure.8) >> >> endobj 531 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 609.516 341.834 622.135] /A << /S /GoTo /D (figure.9) >> >> endobj 532 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 594.406 505.264 608.354] /A << /S /GoTo /D (figure.10) >> >> endobj 533 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 580.624 523.408 593.244] /A << /S /GoTo /D (figure.11) >> >> endobj 554 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 568.503 270.232 578.798] /A << /S /GoTo /D (figure.11) >> >> endobj 534 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 551.733 523.408 564.352] /A << /S /GoTo /D (figure.12) >> >> endobj 555 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 536.623 505.264 550.57] /A << /S /GoTo /D (figure.12) >> >> endobj 535 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 522.177 523.408 536.125] /A << /S /GoTo /D (figure.13) >> >> endobj 557 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 507.731 209.456 521.679] /A << /S /GoTo /D (figure.13) >> >> endobj 536 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 493.949 523.408 506.569] /A << /S /GoTo /D (figure.14) >> >> endobj 558 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 478.839 343.62 492.787] /A << /S /GoTo /D (figure.14) >> >> endobj 537 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 465.058 523.408 477.677] /A << /S /GoTo /D (figure.15) >> >> endobj 559 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 449.948 298.617 463.896] /A << /S /GoTo /D (figure.15) >> >> endobj 538 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 435.502 523.408 449.45] /A << /S /GoTo /D (figure.16) >> >> endobj 560 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 421.056 209.456 435.004] /A << /S /GoTo /D (figure.16) >> >> endobj 539 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 407.275 476.991 419.894] /A << /S /GoTo /D (figure.17) >> >> endobj 540 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 392.164 523.408 406.112] /A << /S /GoTo /D (figure.18) >> >> endobj 561 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 377.719 523.408 391.666] /A << /S /GoTo /D (figure.18) >> >> endobj 562 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 363.937 523.408 376.556] /A << /S /GoTo /D (figure.18) >> >> endobj 563 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 349.491 182.307 362.111] /A << /S /GoTo /D (figure.18) >> >> endobj 541 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 335.045 523.408 347.665] /A << /S /GoTo /D (figure.19) >> >> endobj 564 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 319.935 415.848 333.883] /A << /S /GoTo /D (figure.19) >> >> endobj 542 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 308.478 523.408 318.773] /A << /S /GoTo /D (figure.20) >> >> endobj 565 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 291.044 379.173 304.991] /A << /S /GoTo /D (figure.20) >> >> endobj 543 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [85.431 277.262 523.408 289.881] /A << /S /GoTo /D (figure.21) >> >> endobj 566 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [67.872 262.152 305.946 276.1] /A << /S /GoTo /D (figure.21) >> >> endobj 547 0 obj << /D [545 0 R /XYZ 33.853 921.043 null] >> endobj 544 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R >> /ProcSet [ /PDF /Text ] >> endobj 589 0 obj << /Length 2900 /Filter /FlateDecode >> stream xÚ½YK“Û¸¾ûWèN­)ó)’ÉÉñÚ[›Wìœvsàˆ YŠÔ¤Çú÷鯻AQcN’J•s€îØèwCÑæ°‰6?¼ˆtü㧯Þ%é&.¶Iœg›O›]¹-wå¦(wÛ¸,6ŸšÍÏA|Æq’?vwiŒCÒØLûÑöÝ]˜I0öÓ`<¼ýxù~}=Œvß*øû·ï…ÐÙS[ó!ÿøô§MRm£<Þ„I¼­âR>íú‡trÒ]оz›˜èò<×á¼w·MÊ\ö~/é. ¾·n?˜‘Wið¶5'ÓÝ%E0 ú½Ì~ÐÅ/Q£ô›©kê¶•EÝ Ì?ŽC½Ç9¿Ê¶¸**Ú Ö:Ý!È3}  ú3]˜NÇ\L'3Ø}ݲ ¢MgÛ,ÛÉNKÖ’* ú“˜å‡Í_w¤ŸÍ¥«OvïÜ?ÈxñÙqlMhÚÚ‘V?ÈxèvÄ$©S=ouë¶wa–¤Á{¿t=˜¦Uîƒ9Æ©ˆ „UæAíüèÌ _¹o­QÄèÎG/Ïj9î%}=Š#Ò>›Í›ö Ήe,.²°ÊéiTjK2•¶3öp ×ä~Ï2ï§e›Fé•,Ef÷$óAA´)σšý¨D°#7ÍÜy­˜s[wµñ<˜SÛ!ôg[ Ž´|ní/Qœ±#6€½ ëèˆýÕWî°¼<ûi'AËâyd…¦‘ºHœzK„y ÔõítÝ+~ÆOßò`ˆÞ é¾?'1EÐŽóÁf3.S0$„$@=|VîÊMÎsÉ"Õ¨#†]p°ÂJ'ÐÑž ìW?zàtR_è|·ˆLÈ)­xÛÞŽlü®ñ[Ø(œ…HÉšµ~Ê|!…Ñöµ{@9æA½¦f0Ý^!^cäˆ>²’Sˆ\ ëj‹«à{#¼˜®ç':O¯˜<í N'qX|†œt|‰°¯éÔmäˆ~ ×<Û‘,8¬‰m³숭YÀœlÛB@>JÝÒ‡@8»*áî9>Y æ·ÉlòDÇ À„c^ésÆÚ){[7.?›@û+Ê@ÆJ³|fWV¼‡F˜‘Í™¥òŽBˆ£áï}¾ÈRÌžùa§É²à~–Åò8¿ó&ƒÁ-Ô‹„¦—ýRV8¾ÍaŠ}ÍN VGʛ̄O ˜82–Vç§žÅD³Öž¬ú# 9'ë•æ åÌád»9ŸôÛT·dã*øJt´Â2E„]²иL_Fö8µ#IQI’çÕíiZS \zÏMÓJ®œEì‚ÿêC–)Œsä¡9©Í2ý§ .zмž"¯§ˆò.Ù·³‡Ž­‘œ11_Ì~š‹—paö¼tè]Gîûî™æßà N ToØ–$Kx؇7ìFðÒ< öíä<>—´MtN£›ö· S'ªÃâÏâõÓ—ð¾v¦YóîÞŸ£a2Í)\è‹'xAï‚×<©É¡Px PµL~a?X•0ËŒiæé˜é¶32¨>1а:¾ùî»5ÛÂmë8š¢:šˆˆ™©‡'(®&‘ÿÀU/¸VšÏÄ»Ñ4ý©–/ÓÜà#˰/p«ß¼š“¯t8ÁÍÖF¦ØU° ÄÐ!—À8*()ú_dõhQ§d»ò°Ãó ùÉ8'TÄ XW§±ÞÉá‚Iøú˜¼§]õAXî9fôߤ€À2fƒ$o UÆÁ‡%¼£.‹·‘¸‘Â@=4$Ö]^ÂZ•­…¼å ×_ÀÎå–žcêÁWMØQ·²©ñx´u:.Ù¬ÆvÖ Í …2­:°üúË3j‘¤°”ìŸ&¬½·!3¯ÉÂ}T††ñ«’ @_réy0N¦}b;ÏqŸ;Ïe×°EàS·¸„Gïžòá–§ï4eO#Ì|g8D©±i‘¬‰äšfiq¬çJÐ(#g9‰a<fµ9 ï\{M˜E©ù½¨tÆ~¼¡i¨(2‹ú5Dî*@.­ (7kýÙÎM™ÌF^äCÊ<\šRØënMs=&YÉÜàâ”ý¤E­žuA%YÅZ)oÊ;BÏå’øAÌõÞ™ÊQ–:x…[e9îÀÀÏÖ͇Ȧ’”Ô˜g )!1€YiÅmú£A¢"Ũ¦„È“•/&«@íÝÓ  ÎÐLëÏCg;úõ‹N_³ç.g!23m#äQ<ª¾gc¨Qän‹¾ç«ƒ–ežV¥¯Sª›XZŠ[-É$?U¥x'&÷C_7z›gUÎŒš ¥Ãµz¤bó5l°8öù;<Ȭ,‚×7{YBÕ4íõé$ò Ø50ÁVV–›_û Œ³¨¡d.u#e'•Qók ®ld~[‘9¢½Y±'·ì™»\ä)älTI¬­Ž.í}mbÚm~ÝøÙO/6? ÝïBåk§Tò$Ř 2$7ÈÍ£žù0‘ÅÂ_©¬wWjN8y¸ Ú¸Ÿ”­…êñ€àƒÀjPâ|GŒ¤×©‘Ž»’F_õ؇‹"¤Ç¸@aÈWUmT]Ë"”WƒŠ\(DaaÙb–'I¢AL ”k›ߟöT%¤|©¢gÅãNɬv è&KQ¿z—FËG42Ï,Í7T.nwéܱOöÜ>¼Ñ´L #f¡Qu/"⇉8`ÞiN}„VYÄŠï³çN.ÑFÈ'ñyÙ9×Çñçå¾ù%å忽g(LSÄÜÆYõ¿\´1õŠÕßUwÑ€çnž•” eù—ÎßóqNO¾VÕˆ¬ßüZδ†ÊþÓ¥f‰? S§\w¹ÕQSµB¦‘Z™û¨Š'QýåU“ßöŠÞ®(œ„+øGèÚÒH!¾.ÍsômêA^HoÔ*É¡UiÜ$þÓ%+i”l“"÷Ìü4d½µí<ÝÆQÊkÇe4RŒ+¶QUŠ»&•òæâ˜Šï¿Óµ~§ó&JE2½ÍM€Ô2Œ•äžá=®‘Áz¿Áß×µ¹$Œœ<1ñLRñ%Õt^.š¡ð¿êè)àI,/£Éƒ{Du¬ùzIÂ΂qÒ†&Ñ"<ÑG L4X2’Ã#c{}êRj|JK¯Ûq¯µÜw›'¹3N•©ùÃûêÈïÁÔ¶îaàÇú, 9Ò¦¾Mf¡s aSèE ¼Õ ­5z”RÌGMN[hùH2¿VŽ«ÜËFrvJ) ‚¾u>Ôêßhyâ¥ö¥À¥=ïÆN)!)Å-ÅùYÖMˆ0>¿ ËμÐ*,Ñ6‡ÆÖÞ(¼Üó]RT¬dß‚2õϹéâ9w kj3.ÎÊ¿Uðó(>uFð)|1§xG #ìNþ ŠÄ°”ÿŠ"ÏÇ·%cVÈ+xVðŸE>¼°&X,ý𫬨OêéÛÓáè×F&ýMÕ‡#¤½ðV"ˆ„_®>‹z.weÐÕKê+_7Õ¶k¥Lz0õ8 œâ\ïô¿?5Zëßt<ÿ*~°Ñnªîš‰Du™é¬•ÐŽ¸¤C4¸~Ʀ/ËRk¾kÌž· ÃÛˆü¿°“rpU‹d§Æ$„ÂÀK™uõ‰¤õûo[C‘‹ûéà=æúwÞ5å°òúöóì¼{Ò=·„JöL·Ï4Ýã}«W\üÑöm³/)]âØ¢¹ç*hO•ǰx ¾VM`†ò\ñ×Ëëú7š¨8?)ÂþoÅ%(ïoë¥-LãZdc¾@Ü2²‰«l›—1ÿŸ]–úx~CóöÓ‹z’º endstream endobj 588 0 obj << /Type /Page /Contents 589 0 R /Resources 587 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R /Annots [ 586 0 R ] >> endobj 586 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [181.879 387.964 221.426 400.583] /Subtype/Link/A<> >> endobj 590 0 obj << /D [588 0 R /XYZ 33.853 921.043 null] >> endobj 2 0 obj << /D [588 0 R /XYZ 68.868 798.142 null] >> endobj 587 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F30 591 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 594 0 obj << /Length 788 /Filter /FlateDecode >> stream xÚUKoÛ0 ¾÷Wøhµkǯx·=Ú¢Ã6 knÛŠ­$lÉÐ#ÿý(QNâ †^"™ü(~I)i°Òàñ&½Z?lnîò4Ȳ¤)ËU°Ùë*ÉÓ<¨aÍÖu°é‚Ÿá¯4«£ß›Ï§¸»‡¬¾ ‚í:CÄ8Fñª©Œâ|UAx™ ·¯CÅzßÙìÉJùåöêü%©Ä«")Òæ-¤¶’iÝSL»#¬7’"#±C£=ëî ï¨'l¢,äŒüa¤GC+†QR¥˜à·ˆ&¼ûöë·°WJ|1‘nî%áÑjšžx¦íAÐ ÓÆgvè&ü qhKûޣǑH¢J,;PR^+©Ó*ˆó2©K߈OOÏ¿¼úzÿã).cšu’gͬdspeÏ` ¢¡Šö; U+Ù¨:;j?·Q™†Ôþthf â<ðѰÎh»à¼£´!âh=‹X ÄžNœA3Š IiGªÎ­z—“w¬u›¦.B"‘ŠíÜ,ƒ•q¥¥i­7àt'…¡y(x?%Q\Юügµ6ëùô"äB£Õ\±.vÌÓ%g*—ÕifÝ΂¬â3†t¢}žZ­=»Œçf uã¬7ဧQø„µg|oG>ÏçbCRwyÈ@5õ‡Io\b”Ïr©¢D±´²ÊËÎÊÐrr×lXÇä.X³ñ½K!( ØÇ¬Bmã'Ì/ªá#;¦Z£ endstream endobj 593 0 obj << /Type /Page /Contents 594 0 R /Resources 592 0 R /MediaBox [0 0 595.276 841.89] /Parent 430 0 R >> endobj 595 0 obj << /D [593 0 R /XYZ 33.853 921.043 null] >> endobj 592 0 obj << /Font << /F30 591 0 R /F17 421 0 R /F35 596 0 R /F34 597 0 R >> /ProcSet [ /PDF /Text ] >> endobj 602 0 obj << /Length 2459 /Filter /FlateDecode >> stream xÚµYIܸ¾÷¯ŒTA—,ŠÔ6@Æñ‚L&Ît#9x|P«ØUL´ %uwýû¼…ª’ºd;00¨ƒ¸<’oý+ôö^è}¸ Ý÷ÍÝÕë÷‘ôDD"VÞ݃—dA–d^š%ÈRïnç}ò£ÍVˆ(öÜleû½©»JŸÚ)ü±*Ó6?l¶qúe[U¦‡>Ó´ü62òŸ¼å®°ƒ)+Ýo>ßýüú½H=!‚<Ž#d$ô¶QDYÌ<ÜL¿ÙFYâ÷ºho˜óM³‰R°°#|wc©ÕpÐLq_ô¦ä±] £e f GßÝo·q›Ân„O¹“àr0ì.Ç«úÒšnp‡<š‚G‹Ó” ÜÙ*P*aöõsS %ÕB@‘bE( (Á‘-˜fg€¥G ½'‰G3¡¼×ÝAó.À“ð‘|É4®)a´mzÓ#ã8À'*<1¨f*™8[¹ÌÎü ©­iö@ ¯‹¾çÖÓ¡í57McSTÜyÄ3tÅj*aB»…uä½®@±zǽ¡å¯núµBD hŠÁÑÜÒ9Óȃ©Ü©$ç—Xš¡Ó3hmQ ÚMÎVaϱl18:>uaÈÎQ«u‡v¢Ö î1ôK(ÈXÜ™Ì.ó÷g‡š©oEúlר ÄoŠZWÇîäÕ¯ßËpîIàÝJÆäNa˜ó& ÀôÅ¢¥ûA3“0CÔ?±*M²©Ä™PŠ—¢þܦûD—>DKï!N(ÿ? ï¯2¾e&¶‘ Â$úÆo;28]¢Åªr…}Ö#2ÚÎ\¡³kI­ÿ7sâ{˜»ViõŒÅ¢Ù1ΓзÉÉ SíŸÍß[Bó_ Ͱyk»ífüÏÆ ÑýŸ¬ÝwϺWTjj'O—ôÞ¢XAjìPxr&K 8ªò„ܸÒéǙEoÁüŠx8üÐZn FTžR#(’`ŸÇ¿ƒä;<¢úvßh²áÉ;g¡éŸéænzvïqã·WÞ'& ÄB4À3X澋6f¨`{J¥R.%qœ/ÃÈ=Ü¥ÒAwü© b/ ò4¸Gp ¤t_U” RyÛ=ä«\Hÿ'ˆÞ r%‰R§Õ ðîO¢¡Ì] Oìs/;àßYb_C¼pT’NI m~‡¶e){íåfkÙç/lêWæÞÖ0 Î(á÷ã‘ÀUÛ€‡Dy¨ÐmÛôS¢½Ø) LajÖKk‘3—YO@Ý¡5Å~­]Ûô¨µP:ü'ñ¦ˆsäý&‹|ŒºHÈQ ˆ™~àŽCrˆB„aè]L®™à!Eã'‡]å  ‹«à€»'èsÐgoZ¹cY°1«ÿÕ»%.›%ByYéœуmkt%¦ý±‡cƒªwÀq…~ö×u‡_Y@ެ.7ø—.å5¿iGÈ?ÍþMû¼f˜Sú¸L—qvV€ŠsØ3 ƒ`;0A?ÌäÆCU[£C³àÍŽ3Ϥp è]¸³… ÃÀ|¾QYAå¡{&!¼D'Ž÷ Ykwˆuáq5²ªÐÈR—ÖÑ‹(ü@cűpxæXpcÄ:Ñdæä‚×·íYqŸ™•õLô…`«BsŠ›¨´5Ey 5Q¡$ÖpÔ‹A’©åý¿¡üT*Œ§À©ö ý È£;Šˆƒ!|¿”9D„ñ·o“A(‹3y[ö0hÈ­«¶RWm‘Ià WšåÐÚãX7ć±âYR°ÒO•³ŒL# å2ÿ›—ÓÈw‡õ‡ÑoÂü¢ªRgÊ‘J¥Ò/Ê,׺ø‹33yÀ¸ ù6X“Y”G'a|K[2â”™g…VÏ윮 WãS ¾¿Là¥/\°ÙP4{°r”ZŽmïp4uIÛð•où 5T‰ ÊcW¼ @&¡t¦—:ò –êè|JÏù¼þʱ$ΰe~Rávh]ÙSv-v‹Â –ƒ ðy„_Ö¢Á;VV£D.Ý=Sk¢8d³Ô ÔŒdù º B°Åy)Nöè ¾E³rÚt”Ä£¾¿fd‹Òrž^ˆ0 D~òì_úúïY³)™¹3ä¦D2½Ç]™ žv$óRk¸(áì˜É—™Ú‘¢Ý`ÃŽÍbñ y³8” rs§eË‹AÖ„È á*î *8ËØ½¾Á"xúºÕ- Øæ"ZÚò÷é`¦jƒº)ÑâÝŽw}i¼å韴Ύôc‰ôî,&n®X7Ö¢0 b!îáÛá÷ †q/ ™/P?õÓüôlw—I6¹'G…~¹çT>[ª¯¸¢§ 14vÅP¸5ãÐá;¶.£3æŒ8‰(A®!—È,š—Þó:föR¯”9yz¡á™}~Ãm %Ý0nbGù=ŒÃf¬ÿ ©¶m NyñF\3QÝ™·¦þÔtóI\Ãï3,«Ïy¦ðçWmö‡ûv´·º°å÷ç •*NÖƒÛݱÓ7¯~ý­n;(0õ«ëµöÖìn!2ƒ`o¢ ¾^{ }ÔЏ·ÈoÄλVNžnqÞ»»«?Üë˜þ<€„•ÆÂ+ë«OŸCoSp^ óÌ{"Â.¨B`쩼۫ò©0ê ‹)#/‹ƒ(œ¿7@¥zPI&Q¯ êЭ 11(¤zCO¯Ü›Tﬣ*ذÊ›Nm$^L [P-BÍÙÖm…Å8=Þc$TÒÿ`&\ÊÔ£™ã<(ÆŽžn:SÆZ¢AMOßôìçV;¤ç¸ŸKIW`¥Î¬á×h)é8ø‚q¿€V‘ 2…o_yeo•¾Téÿ<çÓ÷ endstream endobj 601 0 obj << /Type /Page /Contents 602 0 R /Resources 600 0 R /MediaBox [0 0 595.276 841.89] /Parent 607 0 R /Annots [ 598 0 R 599 0 R ] >> endobj 598 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [455.15 550.534 475.022 563.154] /A << /S /GoTo /D (subsection.A.1) >> >> endobj 599 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [123.24 535.756 129.964 549.88] /A << /S /GoTo /D (Hfootnote.1) >> >> endobj 603 0 obj << /D [601 0 R /XYZ 33.853 921.043 null] >> endobj 6 0 obj << /D [601 0 R /XYZ 68.868 798.142 null] >> endobj 10 0 obj << /D [601 0 R /XYZ 68.868 477.198 null] >> endobj 606 0 obj << /D [601 0 R /XYZ 86.801 93.548 null] >> endobj 600 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F30 591 0 R /F33 429 0 R /F25 604 0 R /F7 605 0 R /F20 422 0 R >> /ProcSet [ /PDF /Text ] >> endobj 610 0 obj << /Length 3242 /Filter /FlateDecode >> stream xÚ½ْܶñÝ_1ÜŠ‡&žq%UVl'JÙŽÊ»IâºØy(u2±?OÉÁ¿;†"zöPK3ßÚÙNÍ?»þ—ªÇ¹‡£ÉR_%ñá¨B? cžó¦ïŠjàô ¢Ô7±Ûm`Þp…oâU…E¶‰×Р©Sƒÿ¿å‰=t'ü*ïû7¯pí;š ˜ð6§¡âÙ§N–y]Lu>Ú®e~dÞë–çŒ;0±Œú†ÔêCÞ\kÜ-˜ÃÒ.°}aºA€t>|û©åFŽŸØªÞæ5ƒKÔ12wÊkyÊOA¼·ã…'umýèZëÃáfîS¶æl 2­¼¿t8‰±}·ž/ ±Á–΢›j”­0õ~žHÖÃ̈Tù` € ÕÈ@bµn.Ç:Ù€»5Ì  ýî$:¯§Š»|AËT¸Þã5ïóº®j†løÕ2 ™eO¼ð‘ø2mˆŠ˜¨KŽcïäÖL{y¬â6"i’OÆnÑ5×iD4±ÇWÃrúhá®H¸f|×» újøâOoþî®"‚k%#‚£CUt¨½„Åša;—äí©jèG‘qªÕ\í×¶ùÎãžÆÊTææ"B q´£~a²úáp“·-²Û¶åÁ÷ËÂÎ`™ze×ä<ËÖ5CEk\Úw¶¬JîäMמQ´Ü‰¤sqì‰ÞÒ+êadnÔ¸›ª„¹‚@Í&;…he_Ú 3¯ï«SÕ<ož¾ܵ:8ôÄÍaâ!¤i@3Â`âÀz¯ǽ+-mVœØ$ò´FtM*¶‹ˆdléyÔö»¡kUwGLw«§G†Î›î’†hPñ€ºpض{d°Î@ëŽøMÅ#àãq&q`H_ó6Øöy-°%©òÈXÅÞë‘w²²Ì6W!sÌg›’!E¹ÌtO`´G;ªbtê§æ©Wû¤ëR@ª fçbB"†ÆW&Ýrb–sƒŸ_§ˆ­¹G†(ã; ”×¹ Ï7’®oI:ñºùFHÁ¼QÜ’§¾Å½—ãö8¡ŒÑËÍÆÌ4_B€(ö³8ÞšVŽL2 -µob#=gÊ”Jü(ž±#ïÛÖŽ?Tö|yÛMý}•÷Åe÷’Bå‡Y´5mtúÓÈ £Ct$V]ݵ!ˆb ø‚ÃmQ»%=”LºNb?3º¹yÔxˆÆccë¡H¬S1üÁMl†€¦#ÍÐP5M'»9æE ²(ØÏ~ÿ~ƒÄ×Éì~ø±ﯗÊM¾¹ßÈWѵåÞŽZƒçIŸÜ/Š bJ6s»ÅÀ×Ù‰ÿ¯.<ô³,œ‘®´ƒ™AÕ'›¡™]sü CB4Õˆ¨Ä‘4Ć´§ŠµqÌ)ÂX ‹ÄNãÆy}îzчˆ–gk ¼1ó½œ{[Þ_ó¶ç="í§áL£C½Ñ€JtKÞÚØìÇŠg $#¤˜Þ‚³&PQÕµ, 楂WfÂÉaÐJ 9!(Žû'[bg]ÁÖ=Ph¢l4vÛª*e„ "|› Ò„KÞº– 7ùK6,¥ÛÞ)ôJËgÍXì^ÁM<ø®êëjüú9ÛÇT>½F$}ª¯8é %ÂÆ©û_µÅ#w%Š7‘ÓfÁŠ× ¨%Ùµœk &µé 7÷ñ†Š<ö•ÜYñ zM‡§q<Èlþ”pnÞ2ïLylϺ’=©6„bŽ,ƒ¥‘iÇìO/rKˆôÛ’ "©¼¿]GÛ€×dSœ%>Ž[âçdw‹EDZGaNFÍýÛÐË¢!g-uܰ-úôÚ²!ÞeD"Ïë·¾Õï@)7ù»vΤÊ-g›)¯KøSè]ßjüØÌEP¤óÒNûÉzæ'Á<õwûöl^hnœàoÜû6Œ8&:ô~¬Ê‰¸îÑ<¬¤‘Ÿ)ýBáŠý(™™!ˆÆH€t Ûš£s€5ʶ œzÎ `¦u…@D‚øin&v¬È©Î* Æî=7Vª=0DƒÖ’)-ކì2ôÀùÕ¶ê%OùR ”{€ˆÒ|b˵ 1DȆبݼ 9ŒÉµ÷9Z×`m¸LShnÈnaŠL,‚ý‘Õ SÚÁ²AõWŠõœ ñìSäxËÏE«`^L˜¼Ôk*? f.\ÄÀC‘1©”:ŽaBسõTÇ01×*ð›_1ÅüÁï‰<ë=mV Bâ%Dúýn%Ï׋D{Úùé’Î/ÊüÄ*ÄY¶5¡€–¸Ç„Ý#V&z=k<F©$RúLÝ|ôr‹žé' çTÆ1Üøirc2ö iK°ÇàTƒH“¿ê“Öò¥üÕÚò°W¿â/Vühé²XfÞ«êDæ§,¨bÝ¿XYã!ÃwË™2qXW‡v|ÀefmcÐ’æÀᱺÁ×y›]OÎõL+ï+9F*P‘€ˆR]]t$õÜgÍÃ*#YÀÊ8ˆC‰Òˆc®G1k%_3l»½_12Ïø­ 0ê厮·áàÃÙ…ËUÕòH•/Ö`‘EâZDeIÂxàáÉ3±!ÑO„*F~”š­¬œ¥^ËQq(ñιEº( DÀ#½Ö ¿eY0G}bÅ/¬„0¼*ga—r"Úˆ¶Ø˜P˜Ó0¦»/C.hÛT4õÓ[ÕÂ6ø¢5âbe²Ø9=®j¥E×cõØX²~ •ëßâÎÂêB¼;õ6!øa-1¯á¾Üå=â©\e°p&Iœ¨q~Ã5é©;ò±#shI Ž÷ j‘Ë¡¼*…øªT––ÏA(Õgª4‚øÌ>$Rîá IÖnõ›—&[_òƒÖAzK€±À0ØsKÑ??l!P’d[r×Q¸÷HAô¢\¨ÌûÊùl+¤ˆVE’”õ)§:v!‚±%‰!MšFèV<$¯…I2?a›‹ > ؆5J8õ`U¸ÅN‚ ä¸g“—´ dEÉ ¾Š³ÙÑfŸs?—hM(ˆÆ²A]³dÒ†ßZRÈÒŽ§>?Ã}¬Å;Ü©5íª4줠‹Ýò›Ëší¤¾ušÿ‹O»g¾^£œ¹J¼ Æ6,|ÕM-ÞÜ«îÎûGUüuð¹üCç&ëFa€þâÐì/›íãU‘þ5Bä׿¸ ŠúÌ¿`ygÄ6™„IE´äîü íœ?hMòö ¼ìw«7¡òµžãÖý»YĂɺ þ×ó;€Ãjþ±Àöy`¥pHý4KöômŽf á›ó§˜\&K]÷, æšT [uÕž”í™öÂ}oľRáËÓª€wkª±g†+Äh"'ŠDS#yw7Ž]ã 9•~zº¾åH qçd¾‰£—FJ¼xGç~-ÙO²ßzý¼´¥²XëÈøð%¬ŒYBb:±÷qzùz©>ÈÛ˜ž?ðgõšl¥ RMµJ5ƒ½Íaï%“×Á~aÁO–È/÷³Z†/9*ýÿµ¢Šû°¶\“B&×k”$b§ÒÍ”o>ûkËÐ endstream endobj 609 0 obj << /Type /Page /Contents 610 0 R /Resources 608 0 R /MediaBox [0 0 595.276 841.89] /Parent 607 0 R >> endobj 611 0 obj << /D [609 0 R /XYZ 33.853 921.043 null] >> endobj 14 0 obj << /D [609 0 R /XYZ 68.868 264.518 null] >> endobj 608 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 614 0 obj << /Length 2941 /Filter /FlateDecode >> stream xÚÍYܶùÝ¿b'-à‘E‰ºìCÚØ9ZF¼° 4E!Ïpv•h¤©4òfÓ?ßï"u,wãE¢/#Ф>~÷ʼn6×›hóݳHžºzöâuœl”Å›«Ã&+Â"+6y‘…ªÈ7WûÍ߃8L.¶JÅiðö"QAÕŸë]c.¶Iž»ÞTçºkù­j÷<¨Ûú\WM=ðâ?®~|ñZå¥Â2Mé h³ãPerÆÕ餎s€oüh/àg<âïÇ‹-üšžº?o/h3üÜ Ï7òõ±Î<ÚuÇ#Ig‘Šó dìRËâ0~Ì¿FÃ' ¼ñÜõ ª!ôðÑí¥,£ëGæ·êxjÌs¶bþ^š`T·ƒéñ,†³¬˜:^$ƪÌ[Þ¾¯?Õû±jš;<4DÎ¥¨ âÐ5MG`êöš?Ùu¤{³=ôÕõÉ*à¨9)“Áz€'ÅÌÙ™le’4Nsy{ šg7ukªž7~"ªÆaW‰w/ñtg_öùâu’¬u?“²`ì,&—o~êÎïNh ?GiTï/#àp Zsê†öò½Ù%8¿MŸ§Ï·) •,÷Õ¾‡Kòþ48‚^ã+îñ‰ÕžæüW¢é=PDÜáö ”È-Â`÷ ƒÁBfò[NÓXù|€ÊÃ4-—Ì k êçHéU_†3€v¦)'S|©ü’Í*ÍÂ,T ðÄ\*Yjð{Ñ=»•Ã@-ÍÞwH…yäqJå9"ÕàîÜÎÛ›n0>€I¦‘zÿßbYHdrˆ¥¸GLa’¦+9´H“+K´ "~½­Ï7<òr2/Ã,Wö@V7b: Ë2s\<0H‘}¼¤¡ “‰á/}Ð’9•‚èÑœ{ò;༨‚ÌÓØq Á:.¬L¾$¢j…è¯uÓ]÷ÕÑâJþæÅ¿€“#þïÄ÷FÖ; S"£%@U¯l˜„ÝÕ“3/4:  SEæ0üíkçx+t£½dÁï^6•a¬ídÆpN\âCÏŽK¢Åg`Ïy9}E>à»t›RÚ€uê„ôµ×¦?ýdKl0CÖ1‚|/ô8…ùQ‚uí:’3ˆbòX"ð æÑæ$œShÉû¡¥ aÁ§Ť*íf{ý;ìUÛº*ÔŽ ¬V;C{/[ ˲±àÔ'ü1«¾Ü‘RÁ`_îdeàgkvfªþŽS[GÑÔ„h•è0Ãn ji ~k°Toë© HI*u 7ÓoO‹¦¡›¯vøÑðýÁï©¿÷‰z?:¢g•¥Ç¶¹„î0 ²¥ã¯(bãĪuÇ‹S¸Æ‘Ø6¶ð‹#ž2R?ÞZnEñ‡—bfG\¥óÈ)E7¾îd]Ž9ø:2µíþY–l“4¶½mŸ1-¯°¢À`Ö¢Ä×úàÖïx4`ÒÍž_wÝQ¾”#;;ϯ˜Â`ìÇ9TÛÛ›z‡ 7k¸ÒéƒÑ~4>’˜é™eFìªÞFJÝðu0 °š¥˜Í|>¼œ¨}Ù ¬S"Æ\Âat¿÷VS*æI‡7‘*l'fyêÚÌ¸Õ øáo3GÙZ`b|û´>h®Â‹"VÅ;Æž$sd ð´‚Ú63s€ìÖM%PÜÛæÛã¡—q0”C2úá¢PvZD#l,ÃyóÞ2ÄÖ±¯]¨*e“j{¹3ŒWøÊ7sMÜFGc‹#‚©Y+Z’ôض¢߆¢=åûѬ=¥lÚG‡³ÛĪ)Ö ¬Æ¬3Ø{£IVNØG>Ù}ãôÊna%IrŸz\ü7¯Ù°‹cÓT™×{s›A¶'Ø5®´]»õ‘ÔwgrUh!X{ ÔɈE¶KÀ¤K^Ø.9š‡¿KNk•˜6ˆÊ°¹H£Ùü´^v¾nÿÐ:}×wãɦU„:Í–äasö3ìmÝÛVèÁ°Í}Éí﯄Õÿt\þ깇m׫æ/üÑ%ƒPå#ì›ûšÚ»ª!6Îö_õ£m¼xPsíñGWmƒ»û0Òó¸¼×HéÍ®3J¾Î€mÝöá&µÊ±s©ÍZ4^¤"¨¦ æ@çHÑ+!´˜B(-.î»´NH39)JùúT‚`Fk³Ã)òIñÊIbDkyþš á¬d@ßLK·`03JT‘¥è'Ç\ñµ™4¸KŽK=G’zoÁrƼ֬ ­7Ç«ËëÑZ0 (2à5/±ãÂÑ®"ç“g¶‰wOZY–q9¿¸˜Ù†7'Å&X>»„!jð¢žòLØŒ s{C!¶¢!Ù„3˜ÑJ^ìÏJÊàÆYÈÂÙ•[ËÅ­•Zç–S7ø ¥è¾;7œ熗Y BÂÂˆÓðœ¼k‰·CŒ[È`yÕŸc‘­ck= Þ¼8¢‚BFðáÆ´^!DØuÕªõ¾vbªØ†õà…ÃÄõm¬ñÝJäóšuT£6ª±9Ë_¢m¥”âÕxÛ‚4hËO" òÖ:*óJ0†ú1Ÿ$ø ®@•9u¬°ôw> endobj 615 0 obj << /D [613 0 R /XYZ 33.853 921.043 null] >> endobj 18 0 obj << /D [613 0 R /XYZ 68.868 798.142 null] >> endobj 22 0 obj << /D [613 0 R /XYZ 68.868 487.539 null] >> endobj 612 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R /F28 616 0 R /F35 596 0 R >> /ProcSet [ /PDF /Text ] >> endobj 621 0 obj << /Length 3002 /Filter /FlateDecode >> stream xÚ•Y[¯ÛÆ~÷¯ÐCð Ã;©¾n“´.šÆOaI€ÐäJbC‘Ê’ô±þ}¿¹,EéÐ…óÄÝÙÙÙÙÙ¹3Ø6Áæ¯/ýþùñÅW߆ù& ý]šF›Çý&+ü"+6y‘ùa‘oëÍÞ¾·•¶Ñ.ñ~ ÒÀøÿa›D‰w°åC”{B¯itÁzøòaw.íØT­Ù>ÑJÙ¶B¡é¢Â-«±é;¥[v5 bÐJ1³M?éÊHè—3&¹ç¸è÷ò 1ñõ”œNÙ>üüøwÜv&~’dr#=šn‘'ÞÛþ„]q¼cºôfPPÝü„±±F p¦.„tÓÌhÁŒì©¡kÓ¨l‡^Fïå*˜$²¡Wõ“#hêùþ‚NèMÀy?˜ß&ÇÄÊ•ÆiìmƒS|ZýêÛ(Þ`9N2~V ljî"AŽütÃ(õ¾ùhªIï§"|džE‚‰Cp†§f4&~«3 E~˜©º¼{("¹^äU?Ü…#îÛÓüIæußéŠù@4ö2›î Øš7”ö"Ó±—ï`è!Hæ¬ G%24'">µ%ëCßуŸWüŒYê^kNeCúGàf˜OX.ÐF;U´1ʼ7àFoÑ ì ßòhÊZ–J0Ðé¸vËÌ¿aè1ÏWýé<,Þátül îûÕ·q|/ñØÏ³PØÃ¥};ud›dŸz#Ú¡ ðªÅ¦Ã‘.Mê.ׇº s2b¢:5@SÕÇ´<«)–V7÷ò]¨5èÀ¤ægT»¢ÍÝü¥šmÕ6§ò#9Œ4%Â«Ž™ñ!)ÁS?¬ª}svz;–b/éÁÓùɘ‡$½oÞ^Þnß°+§!`b?ËÁ#àÞ•ƒu°Ð'6B-I‡ëyÞN‘ÕQ®9qo +,éC9š[F³ÔÓË ÍÂ5Zã$>šº½(¹l£N•ù¥Á ¸¹­Ä詌<ñMô™ì­#%{FsvÞØ*?¸Þª=·ÌpH½ïYlÑ®k™DõÞ¹q0ûSsŒˆß¹÷—/¿”Á½ÀySwh:EË_æH@¶#‚°}+€ùÄnÕ’‡éÆ‘Âþ’…=§ŽéAfê¾ó^ܺLÜ%iñ´(®ðû›Ðb3ÌÇ\E§ÞëîºyÉu*\wæ#óÏnþ¥LŸœg¢™ÙòZDYÖY}Ñh3‡ðAOêeeéûV­ˆÉ÷z²HfÕêšµºlÅžù0'ùìFò™WOV¼±(Íî$úy.Ó@÷ÃÔuâ 2ñCI¸Û À]}–éÀ®FØÞö'‰oÀnåX $Îà]c\9÷wpÖ|zKZ»âŒ·y6ÿ=0{d9ºe?YQäý5†âéGg¬„m ×Þ:›±ª-HÎU83£uq?f»·åÁ9z5ØR|C¿ Ù׌­W,%9ŸOަ57ÖWxÃ2ð¯ùmÒ§Ðm|‹r?* ìaÜ÷LküóeM–iêÇ¡¢ÂœÒ"÷¾S'!g “åQæ+`(¶±Ž 6ÜéZž¯I*gIÎΖؽ­ÙÒvQ¢‹PI"ØPÇ4½ÄÑ0siÁ©5Ë&H‹¾ ÞÒExÕƒÑ)›0`O2&0 ¼¡]X¡|€„uþ›<‰˜UzûDÏHU¶9S(³ìêd°PqÇùÆš§ú„­ lžÛô¾o[Éu [¦moœÂïËŠÔöÿ€k‡©w:7Ä+Ɖ·íÎŒdþËÓ±©Ž2ÃeP©QÚñ‹@ÿ¯îÁÖÓtw{êÛF¢a®ùJs(Ä·6Csè8DcÆæ…/óÊhúOà jZ¨iøÝ›×/iÄþ›ÃA;3=ºÃ8à4¥¢‹Ž÷¥.ª´ÉmAg² ò^Sâ†ôùj8ų¤R>úâÈëÎV̇²wòM´ª©’%­Úe·$E­ Š6•5å tEKŠh=¡$0kéÉâx.År©\×| HÆÎ@AÖ:òã q8œc3M¶Å<–Gc€8„çy#ÁE‹òs’]ÂMcÿ¡šISâ9vhј¼)ÁF… S3–ïÛ‹@O='(5å_û‹<1jù÷¸-fÕá~D³¦Ó»ÞþjìÛ«ׄ¦~”Ï^š\×åØO‚Y¼0Ư›Ó?IæŸ52?Èf.J{˜–~·D‚øª^ê§|y‘ZõèV8f=טÀ+÷”­pŠhœúi’Þ¥^ë N!Råt@-ÕÒó„ôd.•*$•ìšQ×ÔjF„œ† ,Â׌§¾>à|xÁ‡§×N¥-aî}¿ä …ê GIŇshè8›S'UÈwíe½Ë*þÖ%Š4CRiN½ÕÀ°M¢€úˡēˆmYœ7 ®íŠÈ%cž©¤„߈ó®ñ<évµm™P6UŽå;¾–»ìõ˜µfrYÓé_ÉL’ÀU<…«xr]ûŸ(à\Óþ5!œOýš¸käðéxÔu,&ù¶þŒ˜i« Vn2·câ@DY8QòO”$ó^¹–qìÒ³˜þnÔ2`ŠæNsÜ4²0½V˜8\j\3^³Í8²é`R Uk¶Ó€\XQNZºOíê«°_HB¨48ìr[€¡+ÏÈåF™5§’ëîA¦túJl Ã¥y3z'àS¯¡0¶0Êôkçþ~ü¸œpœ i˜ldÝ\+³›·8-Jk×»™æŒ¢n>4õÄ¥£€–îè¦Ã–‰ó»—õoÁ7/~Ópº¿„a€pä›êôâÇŸƒM5pêÇ»bóʧMX„~¦·›·/þ%¿óM†P ”Vˆ(»ÙD²ˆ@ˆSÁfçï²(“¸“d¨Vc? õ©4Òàš4ÐDü|cLóÁÆr̨bF~Q!ÁØO-¡”›ygi{_iZ™I‘!㧆NÎ'hìÚ¹Ž”Ôbf‹tN~@˜Ý¾¯ÎúOôñQzó£ úáÍ#ÌíÅ­„d­éè<¸Zý¯²¿Dþ³èdù²?Øò|l*Ò Z;Qê™ÑŸK2è°ð^qíÉ‹º"3Ilh4Ûl”’ß­g?ħ±ç¥ø@áši²f>–ý‰ÇAéÅ)v2•¾ÔEIqâlaqý¹}kA»X5Q'‡ÿST žLbò ‰­(ü§2 µò.¤®ÏÎ/ŠBxƒ{cùûGQf endstream endobj 620 0 obj << /Type /Page /Contents 621 0 R /Resources 619 0 R /MediaBox [0 0 595.276 841.89] /Parent 607 0 R /Annots [ 617 0 R 618 0 R ] >> endobj 617 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [113.591 211.228 120.315 225.684] /A << /S /GoTo /D (Hfootnote.2) >> >> endobj 618 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [506.195 90.615 523.408 102.913] /A << /S /GoTo /D (subsection.A.1) >> >> endobj 622 0 obj << /D [620 0 R /XYZ 33.853 921.043 null] >> endobj 26 0 obj << /D [620 0 R /XYZ 68.868 741.036 null] >> endobj 30 0 obj << /D [620 0 R /XYZ 68.868 533.708 null] >> endobj 623 0 obj << /D [620 0 R /XYZ 68.868 258.551 null] >> endobj 624 0 obj << /D [620 0 R /XYZ 86.801 105.504 null] >> endobj 619 0 obj << /Font << /F17 421 0 R /F23 427 0 R /F33 429 0 R /F25 604 0 R /F7 605 0 R /F20 422 0 R >> /ProcSet [ /PDF /Text ] >> endobj 629 0 obj << /Length 2579 /Filter /FlateDecode >> stream xÚYK㸾÷¯ð%€hkEê½À&ÉÎ"A°èÌ4Ãì`¡¶h›‰,iõèn#>õ¢,¹ÕƒÎ^,²H‹Åz|E›Ã&Øü|È÷Ï7?|ÒáF¥¾Vq´yØo’ÌÏ’l“f‰¯²tóPn¾záíV){-†âv¦±×ŒC;Ü.ÇÎÖn÷öt*o¬ŠÁ6uûíáï?|RéF)?c›­N|ÅÌûáhûÛ­Îo‡¦³E…½Ø3/ƒ©K7t4Ì* 笔Îý,M€%±z1*ã·çµmãÌO3í¦¢œ:uròŽ;xèÆÝ`JÞÕÊîN„¶3O¶gòÞ*Eöo·‘Öps³UYæ'qÈ¢„÷l;{*º3(*н ÆÑt†[¨üWî×(âÐA¾å¸“yñ3Ò|Æþœ¯Oí’¯-š]U_© Ç#äÊû×m¦=ÇÝV'Xä×@E]Ìu÷Tœ,¨¡6Ü'eaø·•ái I™@‚´IP= Ôÿ2TÆJ`©a -ºÁî*#㤚¦·lm,@#L‚ì@_µ¿8Éd|8'…9n¿d>™á(:çA–á š >™gz¹¸´÷ââ$" |Åg0i& +Ùyì'ç‘e£­†-÷¦ÆN&ë\¹\kï/G³C9ÿsb6¢=ÓÁíÆJ{+8Úx8âd…ê ¯xÙ±¶¿t8  6{pE^BJ0dÄ00öf?VÜÞ7cÕËuÁüvìðŽ@0à«À¶¨A|»µ“¸;Z±üéYGZ+Ò²ÖÁkjþšíÌ è8º3ÝPغ:s·n™ÀaóÉö#hXfôÀºßŸeëÀ+dV{ñH[9¡júu”†øüÍ%ôHEiä¼'ËôHL'“…†³rYǶ@ëàhp^¼N0‡O¶fqqy˜¬'Ï¥%äžµÁ¬aγ㨰ûÊX–<ñ~úrþ²½'÷\Ȭ+Û‹þ‘trzaÁs´WJ½G‘¥`6%·ÈCà{0µéŠAÆ'•ÁBRMž\Ä™ÀŠ;}oÈ,A)ÇØç!¹Åq¾<ÝG„@_ã½²Y †T°ÛaÆN„Üë­d’áwÕXNñLaiì$šÒ×ÜÙ5äz¥ÄA+äµ å0iÛò@cd¤Ø€³œ ™J+Í(à„$ 5‹ÔœúÀR=ÈäSÞH¯-s44³Ð¥èÒvf78Ñ{ð^64ØÝd ñƒ=™­ v‡ÎÙ$ŒTl“M{÷]q·¼5‹›ýqŸ;{ÉRåŒ]àŸ —ò¢7è¶¥ÁÈãG.ç¡òˆ“«Íwáv½ÞTg~–GSíž7Á9õŸTÎ|ø|Ÿÿì=¥úÀ,ä¸÷2øpïï·U eM<¿߈MÓ×ß]®ßX®Þ· ÃÀKë»Vݵš%Lü\饎ð`æÅß³í@Œ![>ãsÎC—p‘ŒÛ‰|,(Þü0|f*Αƒ"v ‚fЀ Š9Ôñ£Ê«ÙÚi2zLÜžjha_\½`Ç—¼²æ‚‘Çÿ·ƒ§s¿›=wË#µyÁJΕ¼|Ó»ø8çoÕ1Vf½~͈/¯ÜEÑžlqqþµ0Q+ϧJOê¬WÏlô2iÛPx:9á±±äÊÓ«Èú°¾±¯þpyËC_É âiåìNà ä;¥–åÿkðM´g ë1X©€€Ö¤‹#ïßüª„ŒŽ‘#¡¬lð…˜+QÈh9@×e%ZÏžœÐ,§ ïÕ¿3üeöÕò›Ê åcÙOœ•ZL‚$û?Lr endstream endobj 628 0 obj << /Type /Page /Contents 629 0 R /Resources 627 0 R /MediaBox [0 0 595.276 841.89] /Parent 607 0 R /Annots [ 625 0 R ] >> endobj 625 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [343.804 327.316 363.677 340.267] /A << /S /GoTo /D (subsection.A.2) >> >> endobj 630 0 obj << /D [628 0 R /XYZ 33.853 921.043 null] >> endobj 34 0 obj << /D [628 0 R /XYZ 68.868 798.142 null] >> endobj 38 0 obj << /D [628 0 R /XYZ 68.868 426.527 null] >> endobj 627 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 634 0 obj << /Length 2145 /Filter /FlateDecode >> stream xÚ¥Xëܶÿ~…€¨°h‘õð77S'…áäíÇhtZî­zZq­Ç]¶}g8¤k91,°"‡¯™á<~Ã8xâà»›øêËá?xæ,Oó É“iT§›O71KEª;cÙ†A¿L²"Dú4cOÈ„]¨xZøòí‰37?ÂÏÏ»üøg‘c-Zðö×»›—oxpÎ ¥DpwÒ‚¥°I¢2 åÁÝ>ø¾©ÆNï")Ò¿ÚE‰Tákìfá¹1 ˜}Ïe7ÔU£i|èÊ]¤’ð?ºLWëž&}Ý>¸G·ó õ[ÃyhøçXÅ;:sÚ}¼ûþå)—ìJ³œ+ÐrzÛÂÑ0ñæÛ»…*•³8Íì—« eÿð1ö0ø=܉,òàÙN=ÁU¤.k‚[ТÕÐúÈ$å,Õ¬TD,³ó…˜\ëT)Pxîy‰¸åðÚ†àj$ØGQÀM &8§ù¯ƒîv‘(RÒ•mÔ'PŠî}&BÝÓ·2§s£½ê‹Eø¼ÚE*¬°}ÔöóHÓŸöìhœÇñ´»ÝÚíy,qÅÓNä¡;þ\ö½ÞS/è©.g7n)âS äâ K’”äª[ºâ`œÖÌ휨ÊAŸt‹ ¨9¶‹²˜‡oÁÚ®ÂÞ¼@{Ì&A‘øsÌ“®š uÍýPÖ-µË-öD,Y2_·à~‹¿¬Eú™MÝ´¯µOÛ²wdYƒ;žÆ¦jÓzV&o Â=N±FD"Kß#-):¢*›}eËöA©IæyãØƒÞ;æÿ¬áÕxkû\ÏãÖÐíj¶u@ŽQ|•VTÁT>y!£T” ¾¿ GT’HcØÚ—ƒ‡Ù<Àž»±(ÐÀ8˜¦oê²Bã;:5IÅ2!ÖÆtÒVÙ ^40h™ I¹t!îthYa¨l©ÿííå6z[øðµi'Šqžz1ßýd†Û³esËPRÏú]\ü¦ªÁâÙìÿÏLè¯9ú«u+%iNfp£ñ•æ¬kWÚ iO$2ìÇûÂ[ÝbðÆáX4tv Nõà‡4Œ½ßf0D±^—ÜR÷iL—]mF õD«ÛƒéNÎ]pmI™qðöõS½ËÆ ¯%™-tÊš=0—¨Vi‰7}g½ )¬1v¨‰¬g‚m¸ñ=×ìÊ}=úŽ*æ"¢7¸Ätné܉+Ù°mC–)+ºØ‹Êª›ò¾qäÕ¥ ¡Ókö˜HÍœY)ÏP|œPÅŸ%5^¬âîï b‰˜ °j@1tò•—C¢á`Q.h“ÈË|·7j•%D3È$…ˬÿÚåyøú§woß}÷Ê­J–«ò´&<3ß”ÝNÅ”²°?š±Ùc;ãžéCù¨[jB˜q-Â$tÂ:TfŠ¥òëíš?.S–SʨÝiÞ%Aïyvå’p”5¤ O`Ý´˜Å6­¤Ï“î.ØâaC’?hhÇIÜQ߯Bøž‘èM6IÀd3E& Vûð/ÖÞå”ã¯-¶<™±Å¬&c{~!*ä/Eèîþ>õÜÙÓL´Yüö€ýE!Ù&SXí2-î/Ë!<¤ì-@Âig»ØàŸUšFˤInÙýbw«¼ Q&€~R;om²NlÒÀïØcŠ` AŒÄíÚ»yVO¦Þû%_0.'LqñGŒKM©>Ðiö’Mß×/¼ ­3¸„3eÀd¸‡-aph #âu{Ïnü¹vrSW·dšpñ”sÁ´ZCˆ;'@—ÆÝ2öQ”"®õPÄL„øpêã{SÛ7—”<[AjbÛÐw¶#’BVÁ¯Ül’Ñ-îIšº+W!¥>;ïÖQ}5ƒdú,©Î7°mQyß`[ñÌQÆ)2âóï”ìI;<‹ø;Éø— 7ç€i“¯Æ´E±µ/ð–-¨¶˜Ï©*áñ`"]iñ«;ÝR«±ë\ħ‘UŠíç³€.ó€rÏÚç\-Ò"¤â"‹¿$)€•}.è‡?}´ždúö7q°Ì™J'»›ó*ŽðÛ†Iž†wGÝkbes u0¬s6Á¡ÜLäU Ü"gY<¹ñ?u%·x”)~Á¬ªá\ I׸|ë’ÒŽÉ"ü5‚* /ÊvOSþU„xL·¯[(¶zš`ÑŒ—ÔõjýKïNswÝéÈ"„F¨¤8 ßÀ&MsñnGù|)¾/Ô¤à¨(øZŸ{Ðç{ñ6BÅiöm`Ëö3Àó£@»ióŒ+q?`K«+Àõ5 ñÅÂö{ÙÁ4P¬åÙÖºq&S™Ó ŒùÕæKÓµÀ˜pÀ2'êŸ!ú|9k˸Dµg" êÿò|¬«#‘tééã£Ô/D¥{ú÷oªÍëþÝÑVåÙ,ÀR'Ñ~4Ô"fî¹Å®¹znAš[¨æÅÌ•GY:»år—E™ˆ½µïo@EM®aA8¾Žâš­Áü›žKmé‹cS]>›ò˜®·™K:?´|uå©ytsšúÑ2°¾ç@HéèËíÊé—‹Õ$ðžÿPpÙF endstream endobj 633 0 obj << /Type /Page /Contents 634 0 R /Resources 632 0 R /MediaBox [0 0 595.276 841.89] /Parent 607 0 R /Annots [ 626 0 R ] >> endobj 631 0 obj << /Type /XObject /Subtype /Image /Width 720 /Height 504 /BitsPerComponent 8 /Length 97190 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFHHÿþ6 Image generated by ESP Ghostscript (device=pnmraw) ÿÛCÿÛCÿÀøÐÿÄ  ÿÄB i˜ç $89x‡¸¹#%"&X!1•—Ö×'45BCÿÄÿÄ@ !"1#2$A3WaÕQTV“”•–Ò×%&5BRrƒ‘ÁÿÚ ?÷ñ€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` ¨ûûÝŽótð5ÑkÖ>ë¾Âu²Œ¦d÷D¾Ø/Ý¡4ij`q‰­€Á•Pã¯6+åÜ‚æ£FR¶ÒyOT[2ßo‡€lÎvkº½EŒ«°ý¯úÅTÊ«  w8ŠöügaKJ]Iµ D@P¶´]Tî0šÑÂŽ ª]ÉR å–¢”®¸r€!€j«ÂUiÂ*y̲‘©™^–¸0»=ƒÔdlAU3)Ùž·KP®lca¤"¢IìÙG¹(ø!uå·z~w[]µjà 6vg´•ÿUCÓÆì ó-.ÎÉÑ[Ч ‹öa'L+èY‰‡$1ÔÚC†"ƒ©Aª–6ÈfЬ*J÷¿™¾Oú·]G'ÿ+|Çíÿ˜>_ùƒÚ}ïØB{¯¤õþÐ7Ôz4@ßø` €0ÀsôÇ»vŸr«ž¿\‘ž´2ŒÕ”‹¸±[NTµÚ(«Ú`ÏZï™E[·eu³S¼ÜÂ¥2nkF«àr‰o,ЃR»c–Ïi+únöê—^äáæ/æÁ–ÚÐÚИáEÁ“§ééUÛ&^tô„„YQŒEb‡‚TY3‡2Ø´ Ô`Õ\l“À‚1þãJç]ü³z__Ò­ŒCúûUUV'aoI˜Þ6â"b÷ee=¨bõZÞ}å“ï(ÖE÷•Ÿ4µ‰háNÊD· ¸»` 6w´•ÿJ:ÍqvªÔ1?^Ò1%&R°Õøð…fd$ýˆí‘Èb€Ý¿åwèíªD¤B[ò–ªíË®7×M7>BUi©w”„/S2B’kU• ½8±,D­¦þ]#z¦Þ§Ô6¦Ç²˜%b+!XQ…ä«F ÕØ7µpyãû¶?Žžšuó· ý-úïFmôûæ¯þUø¥ öÏšþ\ˆûçÝöïë~Zöüo‡é8øp&À`\OsŠDtj¦ì­$¦{ÝÒv¤hemšD.(UQ-¨*y•Ñ(1´Ú/ ÷±!ÇH3…ÙÜ…û!¤‹a«£$êyU§,c9^ש™ToÚ¶,VÅ•ˆ*ÆÖwVGd.GזˇbCÒ$öÇ&ÚFî»|™°…œì’®ÙÞàm\€0À;I_±îs¥*‡˜íiÉúÙ5í#é Í~³à51pï í!ÒFœÅÌŽÅôhôbŽ,©W.¤,ß Ðkà3ê>UiÍêx4²î©™Qv¹Àº½œTc¬AVË(!ž\¸K`­¬`£Â¥©êÙ6î¸(Ä ävåÏ(z~7Gm¶jà €FÎàö’¿éGY®.ÕZæ'ëÚF$¤ÊV¿¬Ì€ÄŸ±²áÒ9 P·ü®ýµH”ˆK~RÕ]¹uÆúé¦àI<€0Àб½? ýXì·eþVùãðï×û’ôù+ÞþYùÃé%u#Ÿü­ó´H>_ùƒåÿi÷¿a7í^¯×ûA/OèÖ;¨gßUªj¾ÑöŸaú“]§ÞÇëýÓÙ~p ûO¹ú1ÞãíÞãèý·±õÔz6¿àhÄÀ` €0À` €0À`ËøYy,ÿ Èÿn¶6]>M½ÓopÖÁdR‰"1¢Éb¯ø# ©®ÓõK‡áŸîƒ¤›¿I«Å¾Î»i¾Üü7m6ÝVêòíÿPú1WéwßSV»ÈöBÂì…½«ìþÒ[µ}:šÖµŒEkjÐíù/ªs;nr@i¨¶ñAE 6Yb×=-Mˆ´Â–- Õ7ªokÚƒ:ñÚnÅVW`Ÿ]b6­¥fÆèÉ}œîÕWEOÆ_O#a¶Õˆ&G.Òf5ÈÇ‹÷î +âÞaHÓŸ^ž²½( CÍ×Eé黚ö—_©7=‰S¹ì#×Û^ÍóêIqÚP 3y,J0T`šê“•Ä`‘½ãg°=¼ò`'Êaúä,¿¬–ÕªêÒ¹‰Tñ:£zç\ÈjÛC®B[Í##Å»‘JÈY'$ÓÈ¢oÌ€–dËW€Ü ÝÀÑÔlÏywþžªï¶»zq°ú÷å©i;b³iŒDÿ`©JêAë³»€¨×AåraSêxuq/•$³áŽ&É“tÔþî£Ò)B l“›õ¦!ýJIõu›˜Zõ|¯Æ41ròÒÐ1¿Oú‘´Ÿ…”GFHåpôà´™±6³ " È¡èâJ)‰bEP> ­bý~òÕy "ñŸDA,šÃ°/—¤]íír¤ «ÆÕN%ñ‹&G”uÌTA´¶b3†ev̧!$rÀ¦$¦²#‚Bl­ê o¢x²úGr9Bwнû]…×>BúóÜ›a‡wíÙí¹/–û³}Tš`AÍwÂJGnÐBìù0à4œ.J©‚‹ñ¯ ^oœY„ªвk1—KkŠ¢O~õ‚ÚÛ>Dˆi•oÔ9Ýë‹öX Èu4*Tàdžˆ<]†Š..,\ëí¹jŠ fvÂh¯ô‡’ΕÑ6–­ÉV=Ÿ¦{h¾´e?i’·)É—]SÎÕ®íK^9IJco&#p-®ÁÎ ¸@ôIJJw¡¶ì@–Ó¯ESUOŽ 3:Ö±…Aev}ãÛ¶Öø´|xbSõu»1®›ŸpÉv Œ*Á”Z4’ßjbAµ@sMSl–špUO¯ýqŽù-óù8VÖ­`ýëüÆ!"l+9“R×=7Û÷WÄ3SОîçÏ…C·° ·ûû’U˜Ê-Ï1Ó‰ŸFúÙÖ/¾»kNAVŠvŽËìw‡æÓ»ùœ–P•›+‡öpõ[õR±HÊ|™«ÇO+ ^’AÌT$Q“öÝ5\*ì\OnÄÛÞP¬Ç~_‘«º‡ìÏ`a0 ô¾G;AÖžÐuR‰!¦ýe›Ð5uAØøTeår„bÆ‹‚(âëš½“ë%@Óå±ÙOUÞÍ%]Pë‰ ~G±¬I'^j¶Œº>,û„îhb·/6‘„ 5ŽÅ%,ãrƒŽ “.[Ÿn-ò-GC‘ÑØÆÀyqêp ë"•~u5/áòØë̇‹¦ “£¥}ã®QŠ•™Ô᥺rViTPR§wSŽ– ’ !6X!âOe/jˆ3çÀ[{í?+^ y —ÇêþµDô…uªð;×I¯_îë†Ëì2‹6Öu½ÿUlo— ÅûwD¦,©i«¦MiÍ»‡%Z“ÌßíÜxŸ&æÉš‡rô 2É„¦zÆ$µq:M’cd±'[,Ãp+H¯Dc^()~úÓ7¦ü×H¶¤d-ì¿­ò—½»±»é,±£¨ÚxW¼JÔ©JYѳ%wŠØmƒŒ ,ÒEaÎÓyH&bSËæfnËÆ^`tõ¦¼¤»/þ•k²ÑÈÏ*“ŽìUu3›Úú –›6>«êýí.©aò GO|¡d0Љ|ïuÛËtÝ-ÉhÓœ]ö.'·bmï(Vc¿/ÈÕÝCög°0˜áÚ_# ëOh:©NÄÓ~²Í肺 ìü*2ò¹B1cEÁ”quÍ^Éõ’ iò‹ÆØë⛑Ýκ!UKŸ™ŒÚsÔˆ4ì„ ¸mw-N &àÈas0°™XèÌÂy¶ï‡0–Gb2‚ˆ¢ÜèP“tÅ @ŠôF5â‚—ï­3pjoÍt‹jFBÞËúß){Û»¾’Ë:¡×‰Õ{Ä­CÄ¢Dfnæ•üЦ%gB½™…G5IŠ8îºÖ.¼ ó«årÓK×,lˆEYЩŒFnÖ,- 4zU~EûaÅÓ!Y45vؽŸ¨q:Mꧨ:˜Ö)½ÝDÚ£®€k2#zß-òOá¶²í厴®ö”Ìû‰FÎ;m-YJDrKv gûr J›‘5hˆç¨ë›SÿJ˦­¬%ûÈFv^h´ðWÜ” ë—a,ŠÆ6ññTÿë4nð*Y²¿sI¯ž³Gr\6ç€3’/ã$¡ˆÔýƒ˜¯ºuR_“ØOräí¥Å ‰g6½dÔ]_fLÄ æ=SY·xX˜y£·$… ]Fa˜¿4?GZ&ð I\ƺÝ×¾Ûwû¯^8¤‚ê2>%,»Vñ®*‹ ¬ú”§»Mó  Õ3¸žúGà›:¤w?;.ƒeÎ6‰Ç¥‡¢í]^¾JÅú§MR}ðMÞhHRéw2ðì߉ÏgIJånôw¶gk®.ZêQ)r_uŒÖcÒ×ðÑuëä–ŠŒµÐ0¦NY¦ï×· ¾…VvWm;½sŸ¢;­¸nèKLmuÅ»ƒpОLº¼`M³3®Tõ “ sj-úMcPÀ»©{/‡Ó†1)s™C—Jë#·ýmˆw «—çW§u8ÍçVKë·oùOuTüð—“µI5QÙGñCü ’Ó•8Ogâ›ð®»¥Îúlž~ˆß&7ßHÔº~Ÿ>!h)¼×¹â^Ž0ÿ•|’û͉԰ U.U{ ‚CjkÚî¸ÖÅŸ ^΃꞊$–Ì‹AôS¯_HîBç(NàZ¿k¢pºçÈ_^{“l0îý»=·%òÀâŸvoª“Q¬9®øpIHíÚ]Ÿ&“…ÉU1ðQ~5äd"'©Ž]0‹›—Wëm<‹ %#„¸’ŠLôq¼¸#'k¬|© ‘–¬”*)TȱÕv{ê· Q=‘×þ¸—þ£J.w/«k“÷ž3íëHœØ ¼ÉܰÉuâ ˜ é=^¼šÅ+7rhð÷T€¸ºæiÂLö{¶U½P«b7çP¥»¯ör%MÓÖÚ}¦cj@š0‘õ²â¶ÃæíD¼g¬’öe¹EÉòàAö VM²ì®–àtl|ltµ¯M?¨žÏoJŒF]ÓËǽ!zŽïCò¿KÕæ”ÇQ«NÃÁ Xòs–õ[¶VÌàÔŒƒˆ†ƒ6*‚bÁ¾áPBÚÐ ÓÝÇòîÅöC¢§`ãÝQ¸)OŒ Úë„CûõÛK—¬•ŸÙ7ò^ZÝR]ZÖVPÛ¶Þ‡@ÛÖfƒÆgH#Ä8¶a4ÑÙO†ŒÂãS1¾ºÜ½Þê«*¥?+²• aØ>ÓÙ]Iµ*ØœMI/>;ì®ßI«Z–p~.À+9#– Ú[ Pt½®Q1;t@¨—³‘n–ñ;梂¨zéWWº¹£-cðÚo±„ûuÔ(­™3 Ÿõ¾i Âô‡XˆÇ‡IÆÚÓ¬ké3KFÌ–bëß=ä Iäb±¯_w_¬=-RtL§E#ýs`õ²‘í?h­¤u6GlésIYYËæk&-pO •ʉ˜¼JRÝpØäº_5µxùÛÂAÀ‡6CˆÜg 2€öµÕÞ½T ýAlj†“ޱv^ý° ”ßXIõÖöREAþ+lºòžËay¹yäQ[¥£q*ÉÈAcìu Bɼ­õnÔî¶yz­éχ¢ÿEl¾£^žöT5’îÅ¥`2H¤Ö®oÖKIÓ~$Ò`°›‚nFKgFÉóòXkEκ¯Æ«ä ÷å^²|÷KÃß^çDå Ô×%ãÚÁ6ÌZ5'9FÈÁ:6·Á%À>ýô:C$¯2•áÒHœ¨H+¾vdEÒJNЫë>¬ÅüåõÞ”Œ¨ºÍVI< Ý j /ªë#Sîãhbìœñâ à£ ­€›*/A1ôEù6õßó½À·á_ÔÌÿËŸƒJòe§²¤,.ïØd˜Be¥\ˆ’èeÊ2ö–’ç+?æ³ÝRFJ„~J°•\è ÿ)DÍzI×›kÇGC»ßž6Ýìsi¼|æÁﶺ󳜵[nxãžwçž8À;Ë"ƒ¢®JýµMoÒÕ5«U³öÏIZYÌ>s_µöVª1顲pÅ#ˆ{K%Uf3á ×Ð5QFí~;í§ c®z©Õç´º]oyÖêß]ÐMº(Юiêñz]YгD’«UŽïM6¥Г}4ƨÓG‰q«xS€:{¦?¸ÜAÞ[½Sëe¨î±,%jêÇ£+ Êô0E8T(ˆ:òx±Ebc+®ª `aíX)Ç´I-¸ãœn=¬«rr¸<ì}!8¬EI@ÖÓ'±@.åuè9£p¬æ! òØ(^&*XÒ7k%àög[€ D]$-ލYVàØ2°•ô 4¦Úrå«%<ýšî=g êÁ2Ñ‚$fnAÄЇ^Fä’£#lYƒe² ×@5Ý?ÕN¯uè´˜ýÖê;5QE¦F©úz¼­ KVUÏUVLJ ðòŠ<ã‡jnUg{nçŽÛžUãïàd7§=E®¬ò—u}ÕŽ¸Ánƒ‹>rj݆Ñõ”bÏ.àž›¦IÁIðHÃYˆ&¢‰¾UÙe”w¦ûê¾Êk¶Ürý0L„I@ÅŽ8àç¡Í0ɱ1&“l«""Ê z’ìÈ Íuš=dí›;l²¨.’‰)¾œ¦in­u­¿0~ºçDPŸ6¹Mä«èµC_ÕŸ3;KíøN¤#G{Ë”¾Þ~ä}Jº}¼ýݸûp ®ëúª.ÒWÁaÕ¼,{óåXD`Qø»"r¹ Il “@æ#…6$•7&>ñš81!0PÑ’ íÊÀa’ºuò]bmoÊèšnOlï +ZïhHkI«jèówm@6›æK´(ËRÛŠòOD[½v‹Æ &åmw³^¥\ÃkšéÍAW8¯©â5ñŠ’ ½VV–©vc½VR¹Œ('`‚5žãï_=Œ±æ°ö;GËFü¦cõ/ª×ò7iÛgëí§gCuGH…cÓ5ÌâyѺ¼.ßHܾM) ª ëªÈê0‹^W^ÓwãŽp îýƒ¬^Œ&É¡¤Z8`@{öè¼bý‹Äwní“ÖŽ4Q»¦Ž›¨¢®šˆ®Š›¤®›i¶Úò¨ß®ýR¿‚TÊQ”ê•eXV$z±­7¬¡[WõÉÈ ÔÉA Á!»æ9+ "’OâDcãG¼Ž=M7AÖf¾š©À‹5wQz¡GÍ$VE-Ö.¼Ô$Á[Kgµu-[@&’†ë¹áâÍäR˜œhIÃh¬ïŽ*‘7ΓQÏ/¾¼«ÇÞÀ?#z…ÔÐ÷ ÎÈêÿ]Å_ä½xþòJV¬nÎÉsÎÄ]<³ÆRš¹rÿnyåêëÝW\óÏ+ì§<ó€}­þ¥õ[°‡ãr«ó¬ý}¼%ÝQÒ$·éšæË?Ñ³Õ 7Ò6bg4D¨UWèê-Ã^z¢Ž´ãU÷ÙN@Ùok*Üœ®;#_BN+RP5´ÉìP ¹]zhÜ+9ˆh<…v ‰Š–4ÇZÉGx=™Öà QI cªk»_ª^¾$±i¥ãÖêæ˜Á¾ÉRË^ž¯,I,?ÓÒ¿•§Œé$‚ék¿fVÒÒsQœŒkd”<”ûPŽ˜ñ1~Å›É\5AMè÷ë¿_Ô©KPJQ”ê”Iï˜=ò•Þ²…oR™ù¶JBi*÷jã`œÃˆüÍ1,VY õ–÷™)2Iz’ºP ~Çê_U®)änÓ·:Ï×ÛNΆꎑ Ǧk™Äò+£ux]¾‘¹|š6R@T×U‘Ôa¼$®¼)§ïÇà2½(é¢ñF5ú“ÖE ì,§7;b´-V¤Q•Âódöwl4ŽïäCk)ÖÉ%³™Ú,ô”/²Iò©]¹Ó^x¹±ú—ÕkŠy´íγõöÓ³¡º£¤BÆ±éšæq<ŠèÝ^o¤n_&”ÕõÕduE¯ +¯ iÆ»ñÇ8‚À#¸Þ¡u4=Âó°â:¿×qWù/^?¼†Ò•«…ó²\ó±O,Ʊ”¦®\¿ÛžyzºÆ÷U×<óÊû)Ï<à\Mw_€™ÌlpPXp[ Äa`OÆB™ÎFA0„ lÆPÍŠ'$Ì!¨H¤ÅYš|õ¼y#¦›= ½áp iú@ã³ÒéEÛ, RMè:¨î¥wrÖVpÕ$«Îwìxº ¬%¸¸a(™èd˜Ç•A§´¥EƒrË…Áª%‘ÅUw¨à%¼+­ýw­k4•uBRð`Ƥt-QªØÕì?E>œÃþ’{¯÷Ofúqìß'{W¹ÿÜ}»Ù½¯þ×ð}GýL‰SõÓ¯”$4…sEÑ4Ý/^–Yë’°Jž°„×0Òn¥º$ŒCÁ‡ñgèïºOUrÅE%¾é¯²šíÏŽÓýEê‡^NŸ”P=bëÍ&•ê®’‰?KVÕ™Ù&‹¹Õâú/  cUë«¥u"áÏ 9×U÷ã•xãnýêGTÎW•õDo¬{1SÔ¥Gª«”½pB¼¬ÎUÂâ ×Чqµ£p¢ÖvéaÄcƒ¼b«— 6Y-ÖS€ÉÜuö…u žV®©…ÍsjI¤Ó[>ⵆ- ±æSC|If2ÙäU@»—É¥’>8?&=!`D©ã|pT£·Oøøø²ëO\iXªª›ëý'RÕòMIé"­ë*ª ÐÛeYÐÔ>,Tx¦¥Ù®³Bz¾¿Û,ª¸U%7Ó;µèúUÌ6¹®œÔsŠúž#_© «×ñ5aµij—f;Õe+˜Â‚v #Yî0nõóØËŽa›c´qQ¼´oÊ``D:sÔRöò=ƒ+ÕŽ¸“¾Û»lý½ÞB¬žÛÈ>göz7¨ÙNc ÌÒvÓîñéœhkUû8ø[éöq€Hì^ÂjJ¦µ-’¶ª5Ç̳F#æþNÐ7»,LKÿPÁû¦êØñGÒ¼Gmh‡]ÄNø#(1xÅø¯â|GnbÓxÓdÐ¥¬>Ûb—ÃÅ ŠJËÛr~45€"ʻͻTÀé,Þ´õÆêª®N¿ÒvÕ_Ôf‘ÚÞͪ “È6ImÃå JÇ…ê!š´«ÈpÁ²) ׄ’OM8ìs®=z“Ô¨PRZ™Ñ-Y 5µ*r¯„©[j®ëµ`…püˆr,›.ª« Õ0Ú Šªn¢ië¾ûsÈH—XúÙªÍQPN½ÑЪFHЛ 9© QʬûMµfe‘ªô8q­ 3×V¤Û¾º/Ûkª´U.8Óé$<êDÊ¥ŒPRþ­uÎUDÂ~É´¬’‘¬ÎT±/Jª«µùb¸)ué—Yeö Í> ªª¢wu6ç#q:$Ü3 0zv1LÁªn§÷f¾¿f•«ðºÆaoi¸Õ3Ø ÞA‚ÃbÑѧ%I¶Äî”d³HäYàmìôÊ5lÄ™ë]úâ<àŽ¼Ð”½*Ný"²Q”Í[«ÇÈI¡ê~#Œ¡¶,ýXïá<~“‡ ú§?qN>:¿x Üõw_ÊeY¼ž ‘Í*÷çJÖ’ãÑ…åÙ9D}ôJLJ |ƒbOäQRd£'^v=ÁxùÁH(àk· ”¦yLSÄJÙ'HTõ«ów,|Nß0ò tVÕŠÄÚaŒÙ$»¹Ì~4ÆK#d4bƒƒ4l9³dJ¿Ñp0z‡©}Vëê µ¡zÏ×ÚE²%ù$Þ¡¦kšÕì$° Ž&Œ26= ìñÀ¼’×^ò$Éa¼¯èȼE`2½wëû|N½eFS¬à0;µ±ƒµ¬¡MáðËMœÑýÒˉƑ  Xí€ÖÄ*RzÚd“9BOå)ÔãÇ” )RU&åR њƽ/6–W©Ô’™‰H\müªKT¢DÉ„«…ØÕK™¯R/#”NEã˜Þ„O}¨Þ”|ªà`Q®§ubl¾áýiëüNó;ë=îèSuÐ+`Ǹ6Ý“ÿu±EÇÌzæj(Ñç«0·©l¦è-÷ÒÛm9ñcõ/ª×ò7iÛgëí§gCuGH…cÓ5ÌâyѺ¼.ßHܾM) ª ëªÈê0‹^W^ÓwãŽp ¢w_£`<¶R‚Ã’´ÈC†×oì´ã!4°WáÍ•’ˆ‚¼™jlj˜p©ÓgÆÆV%¸F&Ì*ÕŠOˆ;]`3€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À¤¿;6‡ëw[ê:ð§+W·ã¢úÁ1…Ò’¦p 6À¯ä1Û6ϔ֑ÛÙ˜ïÓf–kjöY` xJÑTšFow\µhå€Þ*kúã®=èºhEzubxâ·å½b l£Öh?fÂö_§mx ÓÒ0C±s ÂãÒ˜×`!rY(Êêx;—F¾Jƒ‘xNív„@ôk€P}}ý@5]Ä „Ú“ñ½åþé«Î8.+nÕÝ*m+¬æǤ„âdÌÆäÍmTôz%¹°ä™¯ºÍš¾dᛦd˜1"ÕÓ$@Ü_œ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“° bGæî%ue(ñ±åÖ>òs'F l[¦-Ø­'–¹j@Þ65í6"e`qÓœۅnÀA:éÊMUÛP2Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“° `7›¸”ˆìÂ0ÆÇ—Rò*ü°Ó€ƒúbÝÑ8™Sqñ’±³JÑÙa F:ÉZ&£d™¼O]]=ö'üá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€co7q*Ú.±gþ6<ºÃ Áù¬Ö_#é‹qQè¬J,)ÙÉ$éGvŠM†ƒÒeºQ6ìØµ]ÂÛèš{mÀ?ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØ0ïÍÜI„Ìt÷ÆÇ—V³¹Lb]5Äé‹tä'"P°sY ±{Z<;x*fÉ€ :ý÷n5ôÆ8ÝÖé¨U¦ª“þpߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€cÿ7q+rx?.²ÈêĤ’6¦-ÉŒP¬R@R)%£Æ¶Šˆìð”)pEã~TfPkÖkë¢íÔÓP2Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØ-)ó}„|»ó¯.q¯›¥" ñzé›aÿ0LúdŒ‰õ6Š~¸Ù_HçÐCï¹sðøIí÷6ûÊ8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀ1a>o¡ç¤ÒØ`_^\ÊK`^Ãó¬qLÛ93ù z…cžúÁ+Gg}ðb*¿ê´OÖ5OuûúkÏ8SùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;èåkcШԊe.ñåò7‰-'“ÈŒôµáÀG€°pTÑ¢ÏÜZ7d4PÖŽ_>v¾ú"Ùª ¬®Úé¦ÜðdÇÌ£2l™’âûÌ;Ñä·|Åãn“j³glÝ££†®›­¥ŸÎŠ á4U%4çwO}vמxçŽpWç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìwæî$Âfº{ãcË«Yܦ1.šÆâ ôźr‘( XH9¬X½­¼ 3dÀ~Š{·úcnëtÔ*ÓU@Éÿ8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Ù5^Îé6ß”·›"Ÿ} Wõúëšé÷”U?‚¢¿URû«ëð¾þÉýÞ~ÄÔKo·Ÿ¿öpõ³ñ.ãP‘^ÀÂàö¥hM!´b+Ûº&Ö lÂ¥´í¯7¥çщä=™© 1ÓÁgUôƒ{—ré²h%«äÙ¾åÃÀI<€0À` €D®çuI—nêQ0v¶<¢—±ëë*vÒ\-€c2Z–â­ ìJ-.i’·w•ŒpÉѨ¤²%#hà4¢%ƒuéö|›ÖÀhþ¨ôVѪïÙ‡mû]Ú‡½ºìÔ‚¦e@Åec)¸Ï_«J¶•BZ”ô¼BWGdÓ—)•›LÙÎå²IÄ„©ÇÈÛZ €´@²\”¿§h.Ñï}>»]lÏñö¯ª|¥ªž£´—k®>ÄùÝNuû¼/Æœÿççíç^vÿáöýœu¸` €0ï|ÑÎîYZε‘6¥ Ø‹ÆÎ*ÿi+A•e³]ml¢nÚð1ÊËÙMÊpE]%¢"VkËM·w¢È"0À` ;ÔÔsºÖåí=¨¼‰±fý‹°+™«ÈŽU¢ÑT`´…yQ¬=ÛÝݯ¡U 9ƒ¬m7¶c«d$Çd–Q¾îUD` €0À#¿ohç}êoh:ÖÂDÚ ÿ°½wºèæRǃ•0Ò.îÙ­dÐ&Ò'BQv=b‚,BKŽIû%^¤ÛfÉ»mº¼- #` €0À#¼šŽv¶T§e4‘6l¦ë¿h(ç1=‡*«³nû eu zÊDnè‹&ÑtzÄük¡Ê0r©Eeìܤí–ÖD€#` €0À#¿Uèç}s¦˜Uo¤M¥NXtד-G*)¶îûÜl?†K;}¾ªm9D"î=NÚ¾\r¯“I²n5l#` €0ûC;½þƒúI+hßÑ®ÈÕ÷ËŸP1R~þÒ¼÷ÏCá=eíîJ{Æ¿šž­&Ÿo¾É‰ÇÜH` €0Ào¬¨guÿa»;x-%lQ¯`þ‹z8êCjâ/ôžþ"ãÔ’Ùêé•÷µðù„Í¡Ñ>PßÔí· ðÀlíWnºûÒŠ½ “²³wð*õÜÆ-_²,*cY%Læ¯w ‰Uq)´Ä‹óoÓÙ›=Yp—.6M%UOu’ãp#æÇgcmȵYßE[Ûs´Éo…Ú”gbhÓ•ƒ´Ýù1Ч—ÕMZ‰–šdÅ5, <@‘Z§»ŽrŽ»oÀe€0+Þ;s¯Êô϶ 'W|R'9ÕIÔô3"¶†•u§ØRPàÈrÙ2’—\pHG×hÅàÑÒæ ¬ª™nƆÞ+ŠEÔs«Õ#q°`wy¢\¡£½Ã‹j?g:#¶êlŽ«ìß•uK•å>7ãNwßž>÷ `-ïÚ•ß` õm¼³â^ÀiØåúZ ìR]=%K-šÊk¸ü³æmÃk_Ü&0©0bm!ZJÓÛ=ÁèfÂÞ|ì Å€0 l Ê!*-•Æäe M!³± N 0þ/R7™'–³éÈܓx„¾%+ДÙÚ7(ŽœÕ¯"ÍŒtä “`ÞMG;?Û*S²šH›6aSuß´s˜žÃ•UÙ·}…²º…=e"@·ôE“hº=b~5Ðå9T¢²önRvË@ë"@ €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0À§?áÔÏõãýÌ\ØÇ` €0À` €0À` €0À` €0À` €0À` €0À` €0À#ùÛ-3×þš®!Ì,;/•o% uùYRPA“™˜îÀ„y‡›®D„5„˜â,B¼•-:”y»Õ ¨žŒùd¸ÆÑ¥<—ù»úTdú¡×¾’QÝFí]܃³8ÿi8ìýÃ=”S>òæ)XÀ¤ë0°3ud.ïeÝĽSqŽT_ïˆ&UòÝ®ÚÖä{ágQ~Mpsªí¬³Ðî©õ‹Æ™®ÎÒ±V5”±ì·]§{TÍUÓr¼7"¥’ýÍÁY‰­Ú9QÛ!ÏÝ V?€K'„ï¿i{ßXuÖ•ì\3«õ4ÅçVû¯b—MD-IË)õ™qÜ1ƒñÚÝ+³àÌGIGF£‚‰˜«'B8 ­cñ¥¤Òu%Qà+’3í/Mzçæîû¯;ma™F<ËTÕ;T¥U\×äÕƒgøä„Yvƒ†ã©Öq(›Õ6Q ½ÀD¾ä$A"ä‘xØ{gò÷€YúO Ýòìowu›¹€úYPt¶ìÓ«°¨s^½U—T‚ê·#õ< КN."–kb…#U®Å,Àh°JÃxÑÒà„.´‘‘}“I 4©«¶Öë‘>Ñö7±Ñ¨ ›ŠþšÎç·â´©‰!*èü¾§ìOp&ÒUÁi 2ž#çÝÇÜ$‰TJEê-^rùVÛ¶º}¥Ìÿö÷oÿõªÿÞG÷+¿û?¯ÿ¾ÁÿÎÌŸôW5ÿ{Þ;ÿåžYÿñyüÚÌšk®Üñ×›ƒ~xãžxÓStmÏ}¼k¯;Þ:ëÇ;òãïm®¿o?üvã·ž¹]ÿÙýuÿüØ?ÿݳêq<Òª"ùƒÇMETEræykÒ"¯ù_‹•Þ“ü¯¤UõþWø4üFýµËXsðD:Ç|$(W1>¶pk«:ñà€WÞlAv‡YËÎ ¸OE›úELìß³E5c¯;'˜Š›Ú²è^‚Ngu±Eø¿[]7/ÿ/öBç¿ìXú9ÿk‘¿›ãþëOhl>ƒÄÜÉêÔóŠŸ~úo­¹¢Ìó²®ÂÔÓ†½t©¯Çe£ Ýß|y©*ûsÓ½<Ü?Ræû{·ÿúÕÿï Ëþåwÿgõÿ÷Ø?ùÙ®ÿ¢¹¯ûÞñßÿ,òÏÿ‹ÇÔ¹ŸþÞíÿþµAÿûù]ÿÙýýöþv?¢¹¯ûÞñßÿ,òÏÿ‹ÌÊ+#1!Mîåà2Ø&ÍwCT•<‚¼P–ªê¯*(˘DÖd’z6å=5_‚*0Sm–KÓhã^Ù+ʶf°Y¨[¢­V£RÓè½d÷ïÚ³ð®ÜDFúDwر¯òŸr{Tïcgc¾³súΪlí•ÒɃ[ª®ÊK±Ë)Ôs<Ütè÷:%¦ËlDÿsárÆ’e¹vGÆËî?Tþ=ù“&\ÙýQC×ôÏâ}wvþ±øÿN~ÉøsþóûÃÿÔþù‰ý=ÿîÏÏü_éÿrþÔ[Ùõô¿þÛåí¿Çÿ¶û>Iõü=ÿgûý|¾ßô>?/ÈÿGì<¯øví¥ÑÔï½x›ØTU‰dS®W±âÎ×­Ì4–ÊHŽ_V¶ðÇ4=^ôœCY1‘3†v;{"¶Ž°íòà·hÈ%ÑŠÚYAd=OÇxkÆžcã²ð8_!ârýLQkkÓ·¢¸´jÛÍ·"tqy#­£Wr<ªò'ç$äº|ÏNÛiòT1uz΋­è30–4.çÎùmT–hcËYßcÜOôV¤t76D•'šÃš®°ùY0DûÄ¡|˜ÒVFLòi:ˆýIdØ ¸]_&àÜŠO±­w­ÅîM̪͚¤øà¸\‘£CÛK±:¥}­¦̪[ò'éO½æ¶² Âç¶¿¥§—CK®é]~fN¿2û¬éµú‹©?)‚úùö÷²žÍn‡91a±žÎ“S©Äê1ñkÔÜ«4oY&îDdŒ‚n|‘ÌXY UË$ò¢½±?ý8Ÿö*?édA$–2k#ŠÊÔ,(h™“hâÀVzr>»wîeh5XÖ„–'4ô–ÎÐn;hñ‚ìK«¾›zIºÍ×WšmàêUÕØÇm;–®aË©ŒpgéG-h±ä™š6¬Ó»J¦•*¤Ii4éR±Ir_‚¬¬’6f+Èäù5­•¬U{dDV5×9ŽW{DoÁÎG/ûUȨ«•æ¨0À` €0À` €0À` €0À` €0À` €0À` €0ÀlìÏVëþÕ§‚XF&!šR}“¢;IR@ ç,½Î˜X0°ò ÎG¤I»‡29²ãRmèÍÕDT„+½´{ O¬ ·ŠÚª[í<"üìíoCwgpXµ%^Ij±Y®þYw—+Ñs3Ô¬ŽìŽ°ÉºvBE k4‹8áù@è…B4dÀGàlÞ¹øü®:åkEî¡Ö­ßhXq^ Vý'@ͨ^·y¡Z–©²çöl8¹†:¾¿n¬ñ«ë üiÙvî.[Æõ>‘i€4ìëÄuî2‹öѱ‚ÛŽ20mÿâ’«ºî›ö„öG¹L˜]¡cA;;©w@jÎ-|i ¤\› ,†:Ù¼½”7ta©ÍàŽáRôãÌG·DÚO ÷@6Eãª4tÝ E{4>*Û¤PéS¤‹1UoAAæö$ñ yq™œ”¥Ÿ(g2€jº>é€ójÈM¤Qá…œH]4pÉð$žÀøèݺk.á4Mw?Ô¯¢Zh³ƒ¯:#ñÔ×^7WáiÏ:'ñ6ÛîkÏ:ëöqÏÙžQ­Es‘­G;×ÉȈŠïŠzO’ÿ•ôŸÂ{÷é?„*:iŸP¾Y??¦'=ÎŽ±ß)>¦*«cûˆçü>NOnö¿ÉöÏE1€0À ?îëcŸÿ,_ò›ÜŒà €0À` €0I!2¾/zU<& tHge„EμOg.ãÌ%š´ù‘hUwÝË™Ð8Öä_5E'ÎY5ÑŠŽygº¨o—­¿³OOž«£f¶.Õ¼ëºùð9"‡NÆJZý±×•ˆ’YŽ‹®Ú–µyžúñO2ØlI;Y#i¬QºFJæ"É^ØÞ¿Ê±$øüþ>ÿ†«¾-G*'µDõï×ðKK'Çk“È$þà,ëWÅJÐE é§{ÖIûY\ÆqUî=UuFž؜”NdÏt处C¿’”Ü —-÷Ë~¨<ƒÇRÉÍÉükyòשOÈÔú;r+ææW›¯m–1_Ís¼ÂÕÈçò wÝ™vß™¡&l5ÃÆO‹Rä|žÚôW:£¢ÿIÔ^õI%–ºµ‰¦›å$¯_áí_©XŒt¿ms“êi:¿x޵ÄG á)¤¬EZ[u,¼ÑàžªM):6Zod[²Ä9‡X‘Ä6»äƒÒ·eµ½Æà%,˜¸zr§˜üGå­}ßwS~ö}:š}ï2ÌîE<ËK -çv4ÏgÓÀåø¼is™Ô‘8 »/âñºŸ ØâjãbRâp®Ï¿EŒ´Û dM{œÊ³«çý¹Ò«¯®ÿ¹Î–k'×3òž‰bH*%—I#¬íPþE¯ RVâÁï­%?£b,cZOãÐÖÈY5Í1;ìIÇnŸÀ’“ά6²y‹‚±»™‘µFêÃ+øp™tƒ-™Dnþ˜øó.kôëßsž@Ú³­£77§¹,œ·OÝkg~àí>!õº'äóÜÌÙ8qÓÔæ*ÑÐֵأwzM»˜¹–9¬l+†ìÚ«"ͯVj‘¶6$Ìx+1ÿ…”t?9fGÊ®dÎ{#Jþâ†&ÈöÍ$³º’ï%?i@æ¶)ù„4+[ :ËZH\3§ j“X´¸¹Á ¯8`©&ïÇ\˜š ˆKN´xpŒÐsÄWçž÷ôÿÛr=1›‰ÐîÞÔ¸¼Ì–lØçî*+å×ŧŸuÑìgѧVJösîõp­mã±ý\õ°­A$yjº•¬E,Ï–(ØÆýȉ"=R³½$r9í÷Üç"£Û¥lr*@¯t­TYŽ šÄ‹2Õ-›È›vÅÅ‘YºÛ$é 0Õ‘`äRM]Sz,£&„G¹ÕVš·rŠ©i£îÔ’…Ëtf’¬²Òµb¤²Ò¹WBœ’V•ð¾J—èÍb•ê¯sÕîSžz¶bVM^i"{ì‹\Žk\ˆäG5ˆæ¹ŽDTöˆæ¹ÍwóüµÈŽjÿ ˆ¨¨v9jz` €0À` €0À` €0À` €0À` €0À` €0À Pö•*?ëzwèŸ~¢TòKÑ . /Ée¾óRïs±ÖÇò¬,yiŒ›ÜaÜ™gòüLQ9)Ÿí ‡¼(å«e«Üljžåô¾Ýõ½Ýítïiì8] Û^¿R ºBƒS‰ßñ›Ñåû „Äå IDn=¥b!„Iï7á–£JŽ|¢,‰r=½òaÜž²6ì…¬ Æ‚kÔέêuüöôŸvº³¤f8¼0+siµ;L„Ë]Mâãpñ»ƒ¨q9ã¡ê0ŽŠT³„ì[aù@°—ìäªý]é¤Ï±ók¨ÇsÄÉ Z±jn «í«Á…­¥‘ ;“§"¼³¡¬¥/;/9$j`¡ÂI%€©äû_uI:ÓåõÿúÒû¡jo+u¯›÷"ÃÑäNRJèèEK.˜‰™YRÒ©œbÿxy&LçR—rj¼œ PßKÍl¶—‘þý¯z{¤ 5ÜP=R"+Ø«-ßa¡0aVyXpë ÅAOŠ‘Ä&.më0äqÜ…šÏ`±à§d"ãd$mÞª¢©àŽ…/å’ÚíläK×Ì< Pwlâ?sÂM×ÖE_Ú®×Ë¥ƒìH1”1‘DF"™Á{¦¿®Å]Ø8|ÑFΗ=¬<ÁÙ%l~¼'}ôj ¯=³°¡µu!q#ÚZzÙ°MmFK9§ö„†@Å=µœÿQñq{ˆ›Y\Gf'AF&|G‰¿å$@²>ëB{;dõ†Ô€ôâˈS}Š˜2Çàö¤Ý'«† %4¶±d¬‘a•.¤¼ma¼ÍjûUA¹aÌ÷ˆ×º83Õ”dAÓ9?X|¡õß®lï_l;7^ÝNü…UÝ‘½Ëöy•,‚T}«´˜«NR¡,iµ¹¨Ør`ò"ZÌ!çK`&,©}@ôE€j™MñGA8Í®Z¦"f›u]”Ø‘ñ¦©;CG-Tp,±†MËeSpßuP×USESçd÷×nf8þ;òCB-L±ÜÌÒ²~goN„φGE3"¹JŒõätR±ÑÊÖH«sˆæª%¼–êÄåd¶kÄôôªÉ&ŽDTöŠ­s‘SÚ)ü)ü˜ï⟬_û¡ÿû½_ùdÿá–î¿ÈŸýÒÿå‡Ï£ÿ®Ôÿâaÿï>.;QÖ­P_f½‰ Vuª*lÙ,² ¯Æ›rŠk¹L˵¢¢ŸwUM«ÒÓ”ÕºÛkÂ{{ÄUY#I¼cävD¯bJøønŽY¹ïŽ'Q…²=­ö¬ÓD×¹«#UÉñoÑô¾®ÓUõü"Ù…Wþž×侓ÿKëÿB‘b¾òy×Ë ^·e(¯X–w­ú:IoBEÅit²uíꨶÀí¥§E5d½l„'¸j© TµÄ èÎ#/6÷IúMò_5‹£ÔO‘Óhsw™ øæÖ_¿o_»’kþK,óÍ48Ösõxú™7—åCq•±ñ£è`·û¬0îÓšFB’BÉš«ùm}˜›dD__}ü,,®ô°$_î]$‹·à²·ñOÖ/ýÆÐÿýÞ¯¿ü‡4÷ü!òÏý×ùÿ¢º_ü°¿üú?úíOþ&þñø§ëþãhþïWßþCøCåŸû¯ò'ÿEt¿ù`üú?úíOþ&þó`B¬êÖÊH‚õÍ…Ÿ¢%FéZ,*Hb¯5[v‰Pú2QÖ×Ù¾ŽyKeõAm’ãnßc{ÜŸUʾ´}G3Ðsr]l¯¦ÍìmwÛd ÆÌúÍЭ]Ó¶IJè‘éÈÄz¢½¾ëE<£–¢™é±Hɪ¾ý#¾ ¾½ú_^ÿÏ¥3Œ•Fw¼xtŒ³vlÓ•¯ø¼ !(ų¶qcoÛ8yHÙÕnÕÉ%WÖIÖî`côx™™F¯Y^•Ë0×…ºvréÉ<îÇKáù•²t,K úô+K¯¡žÛ­š*­hÉrÉ ’"¹`W:6ª¯ÁäDûŸítŒDTÊŠ¬G¿ãé]ì®+ÄÕ)`Íäqnõ¨ EÉ£'ëqš•›˜äŠ¤žª° q£­H11/Œ¡) Ã8­'îbêØ\aÉÅc#†J GL×ÝAÌ~²;Îo7Ü+ÚÑÖ¨üŸ(Ñìç‹S3³çXÍʸÔ3æ­b–&¬™¾ý~÷ñ-õÛºÑg³VÕ¬š:TzL,ÜõY¥|­_Æ|nI)>º,o¯*«éö¹®‘‰#=GWäDÅÁ÷1ÐÆ§5|©h„dÀY¨I]*JNGŒ]0‹¾¡fi7hÏ9F=DKž³…œ–•‹S…â"ÊÑQ9 jTlÕjô ãÝQÚqvŸ§~ïoV•ü- o#\Ë«™§­ÂºÆµ"á>]/?&žÛîEåküý¼jzýÅ-«”ü…³™«B‡U…¬ï1Y-}j±±Ì•’SkÕìŽÏ¨ÝRTF9–eøEñZ-•²::ή©Ù#ݘ×çí*›Êž…æ¬Ëv^ ê”tJ"<Ô~u7¨t]ØÈ!ìT‚Ü&t8M p¸s•ýgÂ%ØÉöÝI,ºÌ‹hó:š%Ù~]Kz^*ÜÍóAkgjÍ .{V‚Þ|¼–kjxÇ7‹©¡krç‘(R½ŸÒu:V2ZÖebòšW&¿7e^¾ÿÊTu蟟cɘïŠ,ßeÇÙV$M¨ç5ðÁéíûäF=+Y+Øúþòe-+qí£ûŽ2c¯X%*«Î‹áÜNåjUõ0·=,FtëF)ËÅÜɆñ°§­¶×—;¿ôž?Ÿž´_•sE¶hÞf|,ÕÇësíý;<<Ú,hÞê9è-c?¢ÏΚñïkÅ•iR䢿ªÝ†ÒHè×ÓYñsUʈé {}ÇeïäØ%VȽè‰#cYýª†èŽÈAK£à¥qr㤙8a’éðîÑ~$à#L$ ¸·í·Q»Ñć¹nõ“¶ên‹–ˤ²[í¦úíÌO3CKC^•¬Ý\›Öó4ó®Ã%k”4(X’­ÚVëÊÖ˪¶b– ÈÖɱ½j9ª…ÓÉÉ#s_kØöª+^Ç"9®j§ð­r*** ‹ìî2Äô0À` €0À` €0À` €0À` €0À` €0À`/¿Ý[°;UêèJôÄ83ºO¾9í$©I™c›¯ú÷p†°fãûƒH”w1&ríbãÉ$$#Ò›¤‰YV›n÷@'¦æß°~ík‚?ä‚­é'am>ÛK{úšîgh¤–$Âäë}y…\F¼®êò4tèt?j*:¾±ŠöGYݰvêìÀ´¤aGÃ:ÒéçJ»!Vvª Ù+¹Õ Å0¾/:óÒñš®m<™o­IݶüÕô”;éu[^jòn3‹ªÑóÔÇÈÊ=ü2ÑÎDŽ"2^¶¼^ööe[y6¢#ÇúݽuÜ®ùPÝä©&æg6p™¬|Œ>Úéô¦Ë®,hs€ð& ›CzÒSx4ž31‘®zLi€ãàââœ80$ Ù'êo’·vµ3ŸRþš˜¨{•a0½fÐþÙ¸¹ÃÈé.À<¯âõ„âq\¹ª£R–VD^^ ”<„KÝÔo"ðPÉ(°Îþ. }øÌºg·5³%í-îñ‹_> âÞ:n[!Aµý¥6³YwôšÓ°Y×0øPzÆ! !¸Ú´‡7iÁfo˜,İeukÄ„ÀGª¾ /ªvËëˆÉ·Y¼Çà=u˜Á»í%;Ó&ŸŒ›­YÂob†9 '­ØBi >DlL|œ¾ÈŠY3£"ÌèROÖÛ÷÷.}ÇröøÈú¯±0=$` €0–CŽË„9Ë“z£5^ŠbhCµG>lLzŽF’AË5ÔbI›B ÷Uölù«ghs¢è$¦·ùšºx·bÒÆÒ¿“£gdó.X¡vY¯-K,ŠÕY"ž6Ø«<Õ§k$D–¼ÒÃ":9Õòö2F«$cdbúUkÚŽj«UÕV¹Ó‘ŸÇ𨊟Ê!«­š¿ºÉCÝOÙnP\Ubº;ÃPü œ~àA-¡³wk \éjõI z7(5j`tZdn/âp6JBb–ñ¾Fé8:»p󖽈ë~>šËumà]¯Ú©¹ vãϧҷ3OW&E5+Zøt5õWÖUÛ¯ºÛ{!´èÖdù65w¶zoÆV¹Zï®UV«Ý ½‘Èè‘ÍŽWFϵ¯kQ¥eÛ%"ÓIí©³|õ†%dx¤éóÎ^‡™žœ¾ ~STY´ú¬ÛÕ’.¬­ 4+,®¥aeÒ« ùfñ¶jb1 Vñ߬Í|,Läîh'–vt§Î§ÐÿRÀ^ÂÎçëÞÍÈì9>Ù“Ë׿yv<Ý9éãtø÷ñqùªôåÔ±“ÓõfÖÖfÇ=²?ñ]ø±è¾…öÉ_*µòWž²¢W}{ÒA#$’g9’AÆýŒÃÉ @fNR!muõ”ûTCJs$ˆÙz^è=k¸ БÉ$Ö2jÁéxÛ{Žc­r ìåó=G« ­¸ a°_‰ú\è.Þ± ëñžIŸY/dh¦^×*ïI­ÑêªPËÂÕ£ÍùÖ×ëR^:¾g‘ çëζXí.E~ö%¢I· ZŠ‹bšJˆÙóŠt¶ŠŸù%c¦ÌmìK ú‹*§¯í ­l²¦’ò¹XܰaäMFÑÚì6. ie̸½©$áæÂ‰V䘘g”uàbà k|JH zpøNކ… dÓÍCÞþŽúÎ'ž¿w2k^CЙ¶·±or5§ý–Ÿ–°%ʽE[¦ÓÈòe¸ôª^›ÇwŸ—£ÎÐÍÐYìî_¿F„9 »ðY•­z6£S㌰©ö:Ãýü] ‘ÈÉ)µX楶üÙ+ÞÏIZç-ŠÖW<ßq2âõÁPÓÛGU‘ë£mÉ·åvÄ_Äpïwg££1/RP‹$£Ä$±ùd‹,¶Í9“«áz*,5è ŽÍÌäÓnZºWhåÃ'×-jÛq,-‡;NÕ µ›’ûÓ­•¥—sB­6hÓI³YŠÂÉõ*¹±¿áóþ>Töб¯¿oc\×Gö"#ö=¬s•Žõ³Z=fARÁÛg­¾3–þ¡¢é9Cã³r«7ˆ|TwÝ?ŒÑãuÚ¹Oï}ô¢ª 뢩ﮱ9 ž´ŸUˆe¯/Â)~¹£|R}sÄÉà“á#Zï„ÐIÑ?ׯH¤dŒUcš«]žÑQSÚ§´TTöЍ©í?êŠŠŠŸôTT_åNR>Œ€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÀU¼º±õÂZ:YøíUAíñÖ‘ï–¨Û{ä›ïHH¹/|"åâÞ¦Dçݽ²~§OŒ4`†¿_EñDx¤|£Ô“Ñ?|‘IþXîï”x÷̲ò~õ-û/“¾ß÷ÉAŸ€ÛݤE½7¯6OÓ7õäÜ9uðø¿P,‡` €0À` €0 qðþýLÿ^?ÜÅÍ€\vÀ` €c²è  Ü^A •°÷hĨCà2\ºzÍ"Š7Ý¡!Ž壾?hª­"“„õrÕe›-÷ÐYDöÉâìisÚù»¸ö["í}Û‰ º¥ê’¶j¶¢ŽÌSC÷V™Œš¾',S1’³ã#äñ$l–7Å"|™#UoµO“\žœÕVª/¥Oh©ïùET_áHí}u­¿˜Å@H„‡/x4ÐP`-Ú¾›ÒÊzR.)]IµtÍô$¤$Yñ?J1ñÅu(oy#-›ã¿4õÞ8±±£™võÝ{7 Â¹{FY ÀîÛ÷U»Z’Ã;ô÷êeßׯWî·^¬×nU¹µÕJ ËžÎÞtÒ6=­lhߪVµˆ‹-oáËW䊈ȜöÆ®ôÕr5ªØÖ7;æ*kãjÈŠK%Ó«†oA3ŒÃ\‹?ÉMÉ«·õéhé-€ë'0Ö,K¢DÛyÄÅe(¥Xµk¤ö`\¬†ÑX_ª^_g'y»ˆÀò4úÛ‘Yد›•C+¦¯ÒÕXcÌÒè®MlMN²Å)*ЗŸèbêò{ËÖÙÔ¯;‡Jžfö&LI¢‘S6Ì´Ò8Õ#W½ÒB°¯¿YèϱddäsÒXV *£Ú°}ҹϋC¶í—v)Ð&«÷ÕhéÈìÅ”t•ÅQ%Ý^æ*òIFýH" 2xèxê’VÀ í:ç~ïJǤL+WA¥—3ØÃ@›_ ø·Ð£ÒWë®·¸ÓßN§Ú¿I¶<•ˆÄªÙ|Ï[BK:wtÛ—.‡C/!Ô7Æ‘÷šY–:˜oãpðkÏ~Ó÷ JÌ|.®Õ¬É޳[á꜋òõžæ¢HƳ按'ƒó«Ø’YV#,N•ò3HÞòqX¿/bfC¿m¹£v‚O೚jÓ,²£TÒhY›•ÒJüú< RDCÕúÄ‚ƒ–•Îâ±×üËÞ~˜;ïd[Ù×Jûn×—c†ÔäŸ_¡çûžB›oC²ÊÝ«m´Ý•_9ÿ˜ÜÊÉ{¤lvoècfãóÛu³vjÛ‘±Çî75É–N‹ µ¬;ÛY]ñ9¿/š½>?5øÂªèÚÉ$±±ÓR?`CårœZ8q¹“Uãñ‚&ˆ°EâìãæËÐË@ êßÙö‘$v‰ÇÛ¿\ÐAf#ä ±`ÒB bK›ÛÇÌÂ×Ô¡%5{wpŸbH#ŸJ…+N£6”–_ÎLÇÞŽÅ*šR׎…ûtt«Q±flÍVÊ2hä|±±ÈçB­l¨ˆªŒ{›òF+½|~hÕG9ˆªæ5Ìs‘ìWf9„* €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0À` €0N>Â?©ŸëÇû˜¹° ŽÀ` €0À>f6<ÄlücMÜ„e!yƒ§qõI¢’=û‘Q®’KmZ˜ÝÓ÷$´!ÊJ+îjrõ^[mùß%GVÍ-Líg6+óæZγ :Muʳ7-Ð~-;P½è³QlU¢ªêß6³ñ•جb5Ø×1ñÿ,GµèªÏMr|ýüœÕõü;Û•ß/KýßÊûRö+ÇÝ/tGb@@«Ø³ÑÀUdåïãÍΙ N›L›¹ qÑEY’ ²ÛráÍy3™réÝw%•Êçȯ 䔲aoß~¤»®OkKK¢éu൥_S¾”¹ôoöôR Çiܧ=[¹¼¬´âŽ.› !‡¦ÊÇÇç$5*ãoó8»¹­262cV±kºEb=ͬÿ’½×#šùÑËîeö°É$“"¿å$SC WL»]CÏy‹t6áš Q¼Ô‹×*MäuhZæ\¬Üêõôžlr*Z]dÞŽn“æu‘#?g‘‚)&?iÇyjdà¾ÒoL9øwÈ|ïîÿ¨Ž# ã$Ö«b¿ ùrúëÝ>+03£érpsö)âòÞ>‹„£YËåçruº+U2s¹4–Ž}¿ãdÌЩ/דfVªG+‘lú}vÃ"Êõ†I_¤žÒÚrËï|î…#çg§9·ð×|îοǜP²š"S]k¹xêAmŽLo=)6Y)#§5}ê£iÊdý™Ìš+Å[2—Š_ÙÏl@s™dÒMm°;#Ôý;p^HÓ‹È™CÇéþ4´Ž[ž>w{[•«— ]o[gAÙ>/ÂÙ‹×áâÜÐé9*ü·?…•¯.—7ãz,ÖµM‹RJ’CíÌFXõ-¿Åtîz¬Õ¬ûvYQ~‰dkafl²Jö#&¹fw»]d`#êéCy/Ìïµ9p¡Xð¶ôœ™ç$ÄÇëû=Ó£<±ciÌ&£þQ…× žËÓõ“(Ò%`P’>åN»ôßäÞ ¯Gg®É—+öšëwŸ‰´ôíËÞå@•.itœœ0ÑKò˜6yÝéô ¡™Šï£Uôú¤Ë¯›ƒ^•§B•äI>kñ•~LjUzüšÈgUw¤±$­úãªçÉüÊÄtHYŽÀ®MŽ7,9yq –‹Æê(ûƒ ‘~ÃE9rÑ‘‡1ã­Æ¹]-z°ri·ÝM™8á=!&}è¨ÕÔ–¨ónÚ»J÷Á#iÚ¹)´*×°æ¤SX¥–|–¢î| ½QÒµ©b%vIÕs˜Žj½­kœÔTù5¯W#©þQ¬z5U=*µÞ¿Â®Yž†À` €0À` €0À` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0À` €0N>Â?©ŸëÇû˜¹° ŽÀ` €0À` \ª fáø‘X³6Rr¥¥Œµ‰ÆÈŒ8jbŠÚœX[ÐRroÜ+«²ȇ@ªˆ¦‘47㔹”gv= þs£vƽUØìÆvuk[Ï¡†ö.~nn;uôrjV‰‹ d˵RJm{ŸQðËéå׉ÑM×2±dO­ŽkÝ"/Íïcš¬‘Î_åß6¹ëû½¡_÷Œ2PØQ˜„CryvDâVu%”fÝ(nCb“›ÎU}ÍÅ9ÒYe;rIfŒjv¤áU[ï¿é#õgä™nQÚÛm~N”õvy>o+&…ª<]¬™k%NÇøûuõ¹ì,Ýz;J}œý˜ª2kŒµwºúÿ¬Eœ*²#]j³¹ó>G5Ö";å-©#trÈøÞ¿c7F®TJèè«»ÜqdMä©V˜/Y-´ûM+z$ü¬¾À ñé» T3Öd=“´Ã–‰Ç†Në9Z%§dê„Þ]rŒ5;-®«iYÊçnÖì¿Mžeæ¢è<¯Å¿Ä8ð\ÎÇѹãy ‚‡3·NôÁ™âÎBõ=;|ïW›¯³µÛä³A¸¼5¬Ùº8iitýN=£êûÓ,Tl%ù¯‘¸Š¯š'5Q_vÃ]4Ž8ëH¬û,µé¹Á#áÊ+%NªXØz²àˆØ‘Y¼ßgnjKO±DÙ ™<ô©ä-/©kC.#õCø  "À ¿G…® Uç¾XbzÒ¼=–¥î¿‰Úæuð0»>CÆ5,\Õ£<é9xëj1iv5ºNJï7wCu«ÒXÎнs£éú>™o&¶HvÖ»^ÌsG,¾Ö½‹ŽFÆç«ž“¥¹QÊÊî†vÌÖÅþ‹^Ö¶!‡ãõ²Ìa]¶¡ì6¸Tá´©Å×îŸ( ÉÚ…Ú'×–òÇ“ñë`l⇶g ‘o,àw"ç¦@AåYYážòž÷†|‡ÌÙí¡ÞçåǃüOÞí^žÒ™ÚŠ’ãA‰u«ôtSlg$û™‰Ž¶’ß;GG¡oÃ:íÈ3‘hÔ™+,R¤‹kåõµ¨¿$ø,ÿ1$oõþÏÆg2/ûGµ«#ytׇZ1åË~¨ÝGI³ådøt£TTIœèß¾.ÍÒUtQmtå4ÔY-6Û”ÓŽu‚C*Äë ‹dd.™割È×½‘:O_‘ìŽG±Šäs›܈¨×*^{O~½§¿J¾½ÿ>“Ò*úÿ>‘U=¯þ(}ò™ô` €0À` €0À` €0À` €0À` €0À` €0ÀXTÐpB H6 š6UûQÂŒ‚ÎJ’(IÚ¨³ÀcfÎxíd[³A•r¢i¥¾ÚÝS£{BíLÚí^ÑбZ ëÍfíÛw$dU*Ô« =›¥–8«A o–y$c"kœö¢ùsšÆ¹ïsZÆ"¹Îr£ZÖµ\ç9U¨Šªª¨ˆˆª¦2»j:õ¤ŒÖʼnÇÚ’@Ñ ì™í´.Ș¸$xrIî£ø0ѶÛy³„Ø;Yf-Qu»²CÐs$Ãà»N–~’¶3³§k˽µÓT­JW[ÅÌ̱]7ª¹­±ÑšTKP$n± #±4¶¶dŠ”¶«Â¬³FÆØ{c…Îr|d{Ñ\Äk¿Âü‘?µ}úUTD_nj.:W²t¨+aÕ,nt,Då”{™ ´Ép³8ëN5FH´uô½dõ‹Žœ# ú}̉V’ÅëÖ®çm8а"YžNŸ‹{Í:î‡=nï?cKöÈWëŸNu[•rÙ§_Ž]kXܹ_œN‚­9±£éf‡žšì[jӟîÕe…¬éZÙQŸ5ù{F'ö¹êÅ‘SëIR&¬ßR¹$XQeF¬ms“C;òCŽh™¥Cɺn©:h „‹žÆÆœ8Üx)µ:öBù³Тd´ç“M*hYa–U†Ê/YHâ³»ÓWíhP©A”6êC+*w:<ËìôqxÃV(ÒΆo_2¼¶)ïTªïTsè2útzñÛåy™õú¼½ŒLûEبֹÏWDåEufOñ…n±WÓ%¬¯r#¢s¿Ü÷+~˜Õ³Î‘Àøä|r)å®­1B5Qi–ÝÐ÷/]Þu›«aUøøÂ$ÞF§QÇXr› @¤ZSo£¬•;mÆçìç•Ï WhTýuù¶$ÕíW¡Æàvâ‚õpóë\é,ëIV Z¼þÔ¹ö¹œŽi×ëMÜ×Ó°ÍXeVæòtëf-Y;¡®æ£+ýRZUm@³5Í…±£•Ìd±#Û4“|\••ˆ±ª|ë¥a„oå½)vÁ®ŠN¸­ž¼(I(8Lrжv½m™{èóéY™5QÉàÚéf•‹pª +1.JO4 âkbÞ?ƒC\öþŒ‹ùÜ'{Ûñg“UýûÚžBãSǼn-}*øÔr»­§k§Žn²[͹O¢£ŠüŒ+Ñ`ó[¥³ÐnÃÄÑþ¢I>ªÖµf’»éH£©gòìH¬Y%“ ¤Åk¢t‰$­YfO„qD¶qç]øíI–†ZWÕ™ì&‘ø”êgpðf†-UôÞ'=pÕ´|›)*Ξ%e{ Ù”¡ŠÖ08±¸›ÞJÞ–,qDûzò¿ÉCútñ¨ÍÒõ•³lailóØ\OàùŸ_çžv)¥Ò©>fï'Ï?•»êO‘b>cC^†Ä?‡ãîcNN÷:N›¤òºÚG$5Üô•‘Í%Ÿ7WÍŽUDb£âžd«©³27F¿+S±*½!‡`õVÒì´ŠKYºIËAu™sö}{¶XIOe—Ûö¡«ŠÞönÑX16Ð4 -+F¯°’…‹aÙõc‘d3—¬^Gö²5åþGÅY™}]Þ®6‡–f¯7’¸Û9Ps¸Þ:­5û¬ÚØñç(›Yz*3ýo4ýÛv|JÍ=eÍçëØƒR¿‡«gÏyï¶#(ýŠ”ì$‹,–Õß®;sýq*DŽY>‰’&¶ú²?œªŠÅÐ’>4ÿ»­þü±Êor3‡É!?ðÀ` €0À§?áÔÏõãýÌ\ØÇ` €0À` €0ÀÔ²:6®”ƒ²Áˆ ,ÚÛQ»™ÒÅÕ*Eá—£[5B<çÝ6&‘±_)*Å“èv±ÒÁ7†”l™x’ ŒqÁ fyž@ë²49] véËŶH¹æRe:°Q¯jYdÓ‹ñQô.~òË×Ûv;é¹RWRÚf…%ZËnú°HÉØèÚä±éeW+œ®V¢#åòG·ëTEàæýNO”jÇ%SÚÞ*â1èä‚Å®Ø$/‹EÓo}*sÜT±Ëš\éújWSd#ü–©VëìÑarxM†î)lÊáðQò³¤£—êâ79kØêÿkOO7˜ê!æëøó‘ŠÃüx½–wõžŸ ‹g·§Á“I)Vè{6y' –òw¹˜v8Ü}¾†Î>}]NDZêsó`,`DÆ>he·:¢[üwþ;,È®O¦TgÉÐÖZrüdŠeŽÄ‘DÙèí[VJšôjž@:Se·RX„#½¶å…¨á!Í4Y¥Ghv2 <[]‡h«I¤j·3×Bû8=|ºÕ_CeÆe§ÜIï{x†Ðù-¦~›üñËJÜi7ÿO<_4¶nÝ£3&íy/ïÙ·3›¹vfM…«ÔQòu$‹6½xÙÚù*ÌZ8¹±äøóЬ›tZ»“§Ø‘kX›âÖ¹+X¹5?Ój*K.¤ïoUU­MÑHù^²[²ï«tÔþNãౄÝìE/»-ÿƦ"ò8GÓÖ´ð™& e<‰q¬¢1T\ÙGI“)4òpôL=¢© 켡+ ^Á{Òv–•»Ü ®e¾:åk|;­|½ÿêËÜ=R¬º9Cß«JÔû[T|ƒ‚ض0çÉç¹ú÷6擞Íç©d¿šÞénkî±H­6oË}ÕŽH¾†Ø•ÎFIR'9©o«/¸ål“JæÆ‰+åt‰4PÙ|Në€Iá°jrxúœXP‰ˆf áC:Ÿ7؃Y,4sW`ÂIÕ+"J„©¡˜¬xÔM¤bDþj- È‹å]ž£ÉÜèñ“¤Õæéɱv{ðT¤‘s²%i²·,Í…ü–SÛ­*Ly¨ìiÑÙ›[.¶†»´³Ÿs9˜¤Š>lÿYÉQŠç{™>HøšŠÆH®Ì‘$GFÇÆ‘½ed£væBË€0À` €0À` €0À` €0À` €0À?;o¦œqÎûk§í¦œs¶ÜkÇ;©¾ºi¯óÏ}í÷Û]4×ÿžÛí®¼qÏ<ñÆ}DW/¦¢ªúUôˆª¾šŠç/ñÿFµÊ¿áWø@t¯¤ñ¡‡F HA’Ê.â3|YƒC’$#èµpypBWp›òè„Aó%˨=»¢ñª6GG m½ý|[yúÕs4,åd>”zºuéÙ›?2M'Ítz#Õ©>ü•玓lÉ­> ™HèÞð²1¯dn{ò#•ŒW"=èÄEz±ª¾ÜEEw¤_Š*{õí E…ÇU•XІV MYmDÈQ+8æ™·#l?¿‹)#E©p8[°ÿyþ„–Û†)¢šÜ,á5[M368~®G1¿?5²ÜnÒ{•y=ÑžJݺ¿m·O-ñ1ÿ•nÞ«º«l9îb²76F9ÔÒÍwI4I4etk§gÉÑ5íùµÏEõñj·ùù/ñëßµþÔ¥{}R7®OãŸ4NJ<„:#TÆ©­½.›¼™öq1ƒëƒtÝÚñE’ž¨dËqV•ššÙÏ¡Ý9ó:~ìäê,ózŸ´sõ3s¤ÛÚì5´Z¼^.ß›>ÅÝüØô!’öc:Ú4c·¯7VÕäàΓ¤k²ÛníéfgÙ+žôŽ:ñ³þfIU¿4±=X¨«¤¿'«cH?×W¤?êÀò‹ÖH[ÐŽÇIÅÉàãÚjVê™é# VŒãdÙ *O–809f$ãW¶ 6JÖme^A3Ž $æ›ì^oô“åè/Ãg&ÞNý™–§„ì½ fyÔHé乓¹ÜJ­Ú±¬×q¡qœ§Yµj–f¥º±ojàZM»F'5[#d‰©òµ*HÆ-F¯ð’)²:v¹}ÍYYà®|¬k–&K£d>d©ÁWR®­?£æ.Dè‰5QËÉÌæÂ±·p·,LEƒ¶vÂ+ ²åFµ„¤Áq뤄hä’x&/7’Ø9¿¡ÞÿZœ9 iœß‡>CÉìRŸæù b,Q×½,6v7yf|&ë2(Ò³äÕ¡—ÎÜÖÛ¡³™VÑý-Xܯô³U•V:¯òšY§b/öº6"¶8¦_â æª#ù›nîÂ_ù&¼}מ+);añ¥x1zE «ÚƵêRÎ1XiÜ7T¢šŠD˜ºFtèD6gHge H¨å3ÕÿK\|úþKþ«ÍŸŽ¯E‹KÇ»%~—­êoC¹S“¥ÕÙ›ÂP÷¶ëx§cjÄOÜÐ碻¹…Ѿ׋*Üvƒkù”×nÒ½Ôþ‡¥…zü­Ç Ã^¬NÐ54–«]z8š©eVÅ,HÛ®oÇÝEÀçÕî¦ÖþXHj™K5×hóóñèçÒš¸u)*Q¬=’–{’8ûHÊë{`¼Ô}Ý$¼aQ(•_jHä\ÿ‚<ÈKÐVßës{›>‡“tëféêÀœ(âÈѹ»vÉE[ÈÕt¬~.?Qøcè´plð9\öÎÏ[ÈfR—ONÇÔ諾»Óû©±ÏŸ¹Ê«#ÿ©«a]QÌO”üÑad­´ûQGÆJKäúÀ³&‹W,¢Çl¶˜ ¶£’)<ö_×øK¢²6õX˜y€J$tÛI¥)c-/ÏË£jîîÀ°çŒ/[g°Ñ6¦×œ7yʱRïÒ‰ö–¼“‹rL!õ„ÑòÏ…q7«dICß’.æ_ÎÄò‡õ;·|}âl]F6o™ç¬ø÷ñ¦ÌÙñàKÃb•wìøÝ&ý»*Üz7wàæ¾²ŽŒ‘,ˆùQ¯kå¥ô}VïHÅUši[nÅÈÑë*/ún_®ç¯›Ú¬lK6RÛÅõü/FL]fã.hlޱ³?:$7«°ùt™ÜòX’ŒD ¦sjêNÅ«x)ø+u`ÿå©Á˜;v• g‡—õiã‹‹bÄ%| |6æ_YÊ^¯sGwË[x¹Pó¸×{Ým®‡zlŸ&ÄÒt½ ‰úý®q5yú;kÙK7iÕûL+mô‹iÒ¶Ìo‚v«ÚȨÅ#ÖYV8á‰%†DD‰ñ"WkæøJèÿ´,o‡j¼§¾T–´Þiõa2¤§!’›vê+a̬YBŠªõݶiüíX©D+ÒLÚI!²¨”~92›”"!µ˜ì–ÕÛ¶´V×ëw­§ûgÇ`s|‡—N¯=w#‹á)ó8|ÆCZÚðñ”+óÌ×§'KVÄÙ{˜û:Z˜x4êÝ—•†ªtÐÓãë§7]ß*ö%šÅrÌÈä³iÓI<žþKaË*Æä…ÈŠHØÉesš“«¾•uéñ›I3»$Rñf²Àïªþ¦¬ë9Ul”eË´á…"‘èäoXzRlwIýË낼Œ\eÈžŽÈã(ÔDªØ–½ÔýU÷³iC[.ÖÛ|Xåù1îDEO¶®öMÕâ­×@ÈXvyØËXyykD×Aá,Ôeº(9hšúŒÝöÉ ÁɯCÁ·¡ãñ°¸Ä~½³Üu—9*|-­ÛÖ9<ýi¶écLèä‚¶Œì°×ÉÎm¶º>åû1PüÀ‚î–¥ø*ÇwSBÅ›¤­gu–ÄÔñ¤n‘=¢¹ˆ©é=üUµ¨®õóV±W+XÔLŠ1…›e‰Çbìä²#’ù Høaâ•IœòòG#*ƒè$üÙç|òèÁ7:(ð‹¶]ÚË+¶Ûs‹Öè7w¥¡>ÞÆž¼ùY™ø¹“i^³vZùQ}ytä±$¯C:HiT‰[X‘#…Œb"'¸âŠ$zE#G½ò½Öµ$‹íò9‰ò{×ùs—Ú¹•US#jÕ«­˜±lÝ›&mÑjÍ›TSnÕ«Véê‹vÍ›£®‰ Ý´Ñ$QKMSI=uÓMu×^8ã4ÓXš[%’yç‘óO<Ït³M4®WÉ,²=\ù$‘îsÞ÷¹\÷*¹Êªª§´DDDDDDDDDOHˆŸÂ""ˆŸÂ"‚øÓþî¶7ùÿòÅÿ)½ÈÊgÒà €0À`  ùë/µ”˜-¹wœ¥zý³ã6·c‘) oÒ°a2W2jnÁŸŠ–ŠAë™G d2é ¨«£–£–ÓVd\¹ncø¹§i¿xî #ÆœF__xÀ/Öa‘Cü7ân3®WWnZÚ,݃´z¼&xñÂÇÀÆ*¶’ø—g@Ú0¬¦Æ‹E4JZH9’­@ôA€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À`M‡°Ýú%7dÓbmÚ9ÜŽÍ‘Ùú ,ÕËÆH¼çN\$ÑÓ†,WrÛE5Eu™µU]6ݺ;iY,ØmwÔló%IfŠÌ•RW¥y,@É¢‚wÂŽúß41رR¹ªøÙ<Ìc‘²½óÒ{GzO’"¢;Ò{DUETEÿ(ЍЩþQ=ÿ„#uÓê Ösm=²¡hÍž\C„8ðâܪî0 @¾Ö>»vÙ6Î`ê¡#Êv© ª¥${5DqwÆœ£‡±Ží.oÍžFãâã åw_ƒjõüøsÙð‡ZöŒ÷ÿ2ÏM ®–-öË™£cžm Ì~\2Z¥^ŒOÕÛ±§e6uK ag‰%[-k^¯_jƱñHU=,^žÄ—äÕù¬¨×+•2´ì¿Eª([r¢žÏàö„ƒF–=[Eмl«3Ä둱fl{Xàöµ­—@k3Ç­»jZ9;öB›ÏÊR5€¨kê?ª9_Õ>ÓjŸÚs¼ßAÍæVšn_®ò×RÕ§6uN¢Ö½ i®¥™ºžcK£êó³¹-i»½N{óé·›©ßu¶÷+ù >+«F륚ž¨“ÁQ¿&9è[UàÔ†fItìJ¬—àï¹Õk¶%«ÖGîžúurp„Ï·TâÝ–oŒ#' ‹ìøl¢OPí4‰PõaÔ ±ñ÷(ù{EØñVfeÓÛÀ“´žÃÅF*¸|H=qw¥Áþ¼¹ÏÉ…á~áž7Æn®¶•\Ÿ#Óm{Y•ôÎÙò']Ÿ'A¥g†³‹33y}‰¨bó¼X_ÝÍn¿ofïQå–µèJ’èÖüÉ>¶1ÒSw¶É¾(‘Ô®ô‰²’"¾xÑòMiËî&²¼q² ?Lù=¡%­äŒ¬‰«œëaìæ± ëˆÜ€l¢E<» Á`0XÁ°l{Hl™DâåÀ6„ÇNH%…§‹™Š,"BKSw_¤ß"âÉ—?-ƒggžK3àíôë©›k'3S:;¯t}µ%5Ëò6²˜ízZ2ïêgæãT‘ݽ†]Í«}[vœˆôšTŽoI,p|ÙÇúkaŠ7­<íz¤nbDǾG"E£ø½ÓÖ'jC¥5ä2ÉPÈP¦­âÉ1䔪A»Y´ƒ#!›H£2ðÓm¥¤†"Þ/$<À¬£E [w 7qλ<†æGM»Ë6ý5ßa*ãîV–\¼jÖ4mî&f¶fnå,¤Æ­&ëå×ÊαO!ÞjmŽfÇ—ŽÄRCÿ&±’¤~¾RD¨‘ÈÆÅóï‰Ïû‘"F÷£¤þÖ9ÞÓÞÇȹX` €0À` €0À` €0À`ž7ÓöÓµç}u×}´ãn>þºoÎüi¶Úý¿oïÊ{ñ®ÜñömΛñÇ<ó¯?gßKéé~*ªˆïKéU¨ŠäEÿ ¨Žjª”G'¿ò€ÄXPfQÙŒ±Y`c•ö²/Ë1$Ø›h²±j“³7íª;U‰LÓÝrcOR-5û¼*×]÷Ó]³pó]úx˜ÌÆÑfŸJ¹Ÿ°S±VZ’ë³jvÖÉž‡å6X«¡;’:–Øå­2ûVJ­k•),Ñ#%‘dgŸÚär9#úÓå"?ãïÓ˜‰íÍ_îOú¡¯d½–£"‘JöpVÇ©´÷AHñ *xyá;ˆZBúPŠ¡R}Ëx\v<Ýy ¾fïT#Ð.jRT@ÄVu¤—+Å~@ØØép)òúMÙäFôY×XÌë9×u™µòËï®’îééIn& &¶æŒ‘ÐȧvÜŒ…ÔŸv¬qÃ+¦g×c×Ôöª½¯oÅ^²"µÔLb+ä•}G]#šÔU:Y‡jé˜ÿX,ÆB¬u‚-xLÕžUYS‘9K‘Úž]Ìl—.’žŸ‹p´¨83*´IP¾ÕË·ÌÈËàä÷ØžîzNqz <ÖiØ|ªê9$±ÛìäEis®ôØ|´P¿G_Í×øcÝТɞËÿ˜×ž¶/Ag'Ä·ëC7Õ+Õˆ‰ýÓ¹+G"·æØeUÏÜc½gÇÚ¢ÉIIùpë`uÏ2õ)yŴ߮у3ˆâà‡Î‘,¿ (?zM‹oÉÂÁíbäUÏÀX›ütžÞ?FS½uú5çÐÅÏÉäÝj8›V«xêíx¤»n’º­K-í”Ûû}+¼jëV¹ÖÖÒæ[õ¾ ûúØÕèhµ^×9¬‘ëÿ&ÇKVÛUQ­w÷9?û—俨úÕ°9“(®k0u|¥´“?‡Âø«ï6ºŠñ½ìνÇa±ô@Hà+µ¬Ì˜w¸Â–hœjTP×5 iü‚qeÇ–3 \Xyöþ‘'É¿Ðn^³cÇ}~ƒpxJkÑøó”òVžæ“ô³_Ÿ¡Íõ]]PìqéLíLŠš¢íu+æàrºL£»s§æi~ü’1ñDÖ¥¸öÚwÓnzlŸü›49Ë–9>¹Æ­v+åŠè› Ú¿Ÿ'·í˜b-aQ½j¶]æL¸Õépº’)n[Ò9!¹II"òÛD4ÚŸâz:w[œg “×g+e Ììó!AØpSU¼µ?I¾9å(ëó^@ò§Še_éô<µ‹o³Øâø¬¼½ ¸ù2ãÆäo`öË»³®{¨Ï›{'§ÏêYS “£C™èhu?}¹;£š¥*Ï›am [^;^ö¶G¹ë%†Ë[êRh‘I àWK;šÙ¢t:à7lü‚JEÏ%•4çMäq”O߉’1ªºôôÿ2Ñ÷‘Ú®šHÇØÐ˜CÍ&Ô”œuÅ`17Bë=Tˆ:a½{ÉïøoôÛ‘oÇí4ÏÉ—«&wŽ]Vб|Ùœ™–´ ÓëvïuØY–yíûó`÷Ù6xŽnÅ I8<îÂîu;ÿQf†ÄšJìIQìGÛG;ßí¯ùµŠÈ#d½³E=%«#lÌgå>»\ä«o”°Ní™®ãÃÐÆÆé܄ˤèxr¬ìËú}%8SaéÓU'&,޶N8듉­$ð HóBÑW‰±+;dÊ»Fþ'M—ü C§Ó³%ËÇ›³hDÿ"n2~SÇ<æV}4²þãúCŸ¥ËyKŸ_(G–ɲzNg.RØóÓçlOÓ?£¯°øj:5Ù³^åJ‘|g¹3ÞåjUûåtô¥ü%©!êŽQ*$)£ÍÞô+¹3 XpÖõÿ#’ØÇþD4ß´ppµ‹!´4:ïB$àU‹yì*ih²˜~ÐL^P ìY´Ér¶uÖüò‘Ò4¼¢?ê+Áؘ÷oq>7ËÊæ3¨¨Kâ>‚ÿYbב6ú8]V§EÕÉÎïar6¹iiWžæ¾EÜí{lñÓä¸JùÍÓ«ÝäU\)$klÜ‘ó?êz_‰5µ"…}ºh¥'G*69øÒÂ+§´çüZNê=âžm/¤ZÚ¸çÈS¯$ˆÕÖzr[â\Ò)9øÄü݉nÇâ? •Z:4:WVVTVW=ž³•KÜZܬʻ–!c¥úÁÀÄÑv¿Ãóököðe¿­æô¹ú_3'7[œ¡Ìñz[_ÔtÙ¹ÏÑ¿yüO_O"¦?9ÎO‹ŒŸ¦Æ¶`K#~-L‹Y^LÉÿ2ùÏšÃ"ú\±Êæ7òkºGI4É$‹cÚC"mÁÞ,â'“ulXÆí\ƒpfgÒ¶$û# Á]šºV°ý’u4|k˜c–ÉK¢v¼¿Ož ZŒ[ÉͱJ¯xêŠNkõu·œèxîb•ú^ɳ.…szž-ÝèzG;ªé/x²((~ùÏÆØã±]ý?W±.M ë`‡ÈN¸n O÷bw1Ú5é¤G^Ž¿PBÛË*¿êTû#±"}®G¢@«Q7[ÆWV«â1Vµ´Shl9˜Äì*€ #8‚Ýåcˆý‘y­Ã¶ž6Ñæû>˜,ÜÃ&Öï¤6Þk8 ×ýWyw¥­±7S°Sjknæ»]-¯CÀÓÔ½|¾=a³vu  D¯‰´g—‹û´mqS`^ÖÒµjæ<:º4‚?¦£~êÌFýVœÄÿMö=µ^÷¢ÿ2*9Ϧ6ÊJØØÖïXgR¨ø4²Á”‹‹rI (²ÐÉ;ž$µô:)&zð¼þ'\CŒ"èL)hŸy̆ʌ…IS,Ÿ&Ãt…A¶½Ýó7ÐcóYõÒ¬œÖ…]x÷rb\®—sc*)s›=FÝ'Ãs Øä³ ý³•Ö¾ù41(Ïn*¶Q÷,É-ÜYõb’iÉ&c£XÞ¿8cꮚ8cr+bŽw¯Îv7Ó$r5\ŸÚÔLˆWZ(PõÐVõdMåA»•Ÿ9‚žc¼œIn$ÊÖ2]Y"ÅH=¼ŸîÈ=ø«×†82’$u}ôUZ:'øríU¿îÖ’™hÚ‡çø›VH¸ßc"gæ>šDÛÚ}{±ž›‚4˜‡_o[ðÓDx¤üÝÔ“ÒÏc‘F>gîï”yËRñžË-{ד¾ß’ö9@oŽçÚdB}O 63Ô¸ôÛ¹kñÕø_`,‡` €0À`±ä×¢¶g~«†·¯û¡Ö׬Bí”›Ð;_Û¼@ÇšÚ+°ër6}`A-"*nä!çÇ@”;¨@ü°n²@eÝU¢»óVΉ•í{«ÎVªBžƒ\ÁúR­¯€Ëw1r*Y´Ì]ñh(D`°䶈ü¼ÉkhWÝÛr 6$Ÿ88øÿþ¦¯îbæÀ.;` €0À` €0À` €0•ìl#A$d |z4™Tã¥Ý²AÁzœA»S‰t®›ªÁBM["Ñâ­¶MUÚq»]÷åVO{ø54ªÐÐË­zÝ|íWS~(g’*Ú Ÿ$’ÑK‘1ÈË-«4¯šJds+ekRF1Íò¬cœÇ¹­W³äŒr¢*³æˆŽøªÿ’""ª*ŸÇøU" ½Ðº.û1/!l‹Øøâ‹êb¾-ˆ°,*9󔯮nè‰hÝ£”ŸÞË ³›DܦÍc#õ…2 €E •‹º¸¯ÔO|uG·q3¬Ô‰hôšì[ѱÚs‘>Ôt8M•’hŸ_€Ï§rÊEÌæIQ%Ö²»ÓÞ“G'’1³“RÛ¤[ ùµËò…ˆbW™Qªë1úE÷iîj{™èïQ§ÔÖ£$±÷Öd¯¢wÅ7Þÿ |>«F†’0f°›”[aê÷RVbe{gP„Ü“â¯"ùrà¤0Ç ¦¦éø0›îÒwßVãþ¡Î|E›19@ù„Z?.`ÔÈÁÒAC‹²c& F3 f‰DRU»#‘ãH3.Ê\­£wÁ 4hTsÞ`ý£w¨ª†šc&Î&¾–5‰¨Û³—rÕ)ìe^««›;ê=ì–|ý:OKF‹þ’½úsMNÔæ–²Ge#zI$DsQík‘×1èŽDTG±ÈŽc“ß§5ÈŽjÿ ˆ¨¨d™‹=Œ€0À` €0ÀXdÐhèÇf¤† ==U~XËö£2Ke4KU¿zª ['²ª&ž»¬®šò¦úiÇ?{mxæî Úvá¡›JÞ…ë.VW¥F¼ÖíÎôkž¬†½vI4®F5ÏV±ŽTk\åOHªž\汪繬j—9Q­Oç×òª¨‰üÿÊÿ“¢X0x¤†“JÀ’X¤ ‰‚*I³"2Ò†*d ð-×ßMȽd)_®Ù¿««}6ß9û3!›Ít»»9Xú:9\Åj—:ôêËb¶5KÖÙF¥ck›V ÊñË/Å‹+‘ª¨x|ÑFø£’F1ó9Í…Žr#¤sZ®sX‹þåF¢¹Q?ŸIì×[vbˆFmeׯlè°©=AV]a d†‚GcÌG1.|ŠçÈðØaÂÌGˆÎÛ3"»È+ d1ô¹¸f“(²åäÉâ¯!¿•é`äõîdöºŒÅæd£YnÛÓÓ±jÅ,ê±æÕYtb]»t´ªóÒÏV8:8Ûµñe½6¼t©~mO¶xVxÛ%f,“#—âÖ1Ž{•îôÅúÚæ:dG*ÂÙ"Y©,jí4ï½ÕõñY gµ±}À€}ŠßZŽÈ,ø“5‹DŒ™5á·0ÊöSÑ)zV$…4#á#Û¼j{aóÆ¢çP~ž{HúZyz3ç/0úÿ›£ßó/iËÓ¯VvSÙ£FÖ ËûïK‘ªçâ?˜Ì|šWôÛ¹Égõ«6«­]atŒGýÞþ,«2~<îs‘]œÙ}}PÈÏR$ÏôƳÚ?Ôtiå>`zÓ£'«cñ™¸HxåebúmLjà,—x ì@,kr/•žÜ1‚ -%9Ž8woì§Îz½ŸSMlM£‘ú'ò«¬XÎê³u°/íÙfOìWÀÖÓÃëtgŽ ¹ûwõ[Z»9Þ#Z³Ù•Ÿ·§:’t:0Ôý‰Ðs̼͔D|ŽVDÕ’â,¬d°1=µñ²?nY¬Æ©ö>6*±!b»í÷5d›\H|ÀŠèÖÛePXó.¼ØL¥#étÔw0 "G´+‰! ˜ì†eS2¤¤#TWs;5”­.¥ãäg– <±b\Ÿ3ôOsIÒñ–;^_ É|Ôù{¹oöœ.-– è²ëpÙù¸{ú•Žû6ÓXÚ)6C1{½m)9ÞjÄKK˜Ûò ômb%–ÖžZs$‰YZÓ'ÔÕ{­9òÄÊéUíÿw©>ʱ±&™å4u5¤‡¾°j:_ZN!FFIâBç½­ö§¯b}loj†#&{R§!JÏ’GšË‹X( šÖ°D$R•Ä ÚÕj“Õ@;úU™úyðäÖ±z¬ ê7µhelÛç<=jǦÙòœœ}êÙPvNÌ'•§6=Ë‘ßÑì¸þn=¬ÍãíÐãºæáÓìtZj¦²‹”ÂÏì™]x)ÛeæècðÂÃ*î@DÙ‘! 1¸LNÇëOÌòÁkn£ ÏòeçV£c´ÍݵŸ—-O¹Z¹<5ërØý5ÈeK¢§I¿‘ÌÓ‡6®}·ú=Më„çs‘[Á©·ä䮸š÷¬Žõÿieêéä…ª‹#"s¿‰œ¯sÜÖBÈ·\/ tôz+!'"ž}ÀÑp»ŠŒØ54V"ᛚàMd~2Ìg1Cð÷cFŸ#>‚û`Ñ9$ô‰íÛŒd6»úíô¶34rkfs¹ÕÖÕ½Þ^«lèó]–ÆÔSÅÔ\êóµ§¶›»pÚµ[·$˜¼Þ$ÎËçkg6KV-\Å‘Y‘½WÊåø¶)—Ó&¯j‹ `|hß­ñ«Z÷LÔI&‘>r¹þšÛú›Cœ‰VPù\”Å¥N]¼Ž4^Hª®d$$¼¿lf@z^UŸ,w˜»žHÚ!+±È’~q,A¤’D-ñò†×óóöz½¼n‚|9»*RæjÒËc"Í­”•壛‹Nt°˜ó¹sIÌO˜ú÷ùüwÍ—™r½+6¡žáÙõÉJ•Ücžª¯WûG=ò9>?bÊôI&Gûd²"=ís‘ª›sŠò Äÿ›WX ,­¢;ÀTœ¦1ªruá[Dþ±wEôOWŽ‚ mJ4åU[²z«¥ÚhŽï]ò¼3ú— ^oú=vt]Ë&Óz6óîµ+²cÞJOÍ]x©9Ë7ä¡"ÔšÌLd“×d1Ìé ÇÓÝù[>ÿ¯éû~)ö,_$Ö®ÿ*Äz|‘«íUU={_y!BÇ,MÈñ¬84ÿ‚¦WdÍ»U‹áƒ|&ª §»÷ü 4wl«ŽbÏ…=;Fé§‹žå»L©›V,EBºÓ£óË3)Ô[.-ZŒ‘ÎmzënÝ«K(È–Å›ü~Ù¤sª#ZÕrµ¨Šõù9QÎø£~NTÿ+ñk[í}¯Å¨Ÿáçå¹ô` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À-­á³²°¢òáúµ{"Ò_dññB2•7l£a’'‘ô¦ÙxÿÆUäeÙÆwÙ#À½ÆŒˆ¶cuœõ=êX·o¥Ìv.ÄðW¬—ìcË+%·™“áuú´¾¶A« [«I¡ù4&ž´´¤†)]¤oÍaÙ*»â’"zkÕžþs=ûb½®ø;ûÙñr"¥~]¾-([öÄM¥M¹„òȲ“ú˜¥O¹(M‡\^…};ÃwPéó2\“A# Z›]Å’ŽÖäf¦öUŒ ŸËGšˆt‡úºò/ŽyœÜ y¿~Ié·œì©öM«½Ìõ>©öÁCƒ³ÎOWñ,Ö}P»Ók¿O¨«‰W•åôy®oÍ ¼E¬—&|²'Ԩﺻ«ü¢š nþ]i³#¾Mr9͆?„+#¥žfM4|pŒU{Ù_†w2 `5ÓB¬N–£-—3i6Ud÷T¶bŒŠ×¡,}4·˜PÖs «onfç²½ö5öÑöò¯—ÿO]%èpô9©³{›œãséùýÎô÷9XÉ*øüÜ£oS¥¿Ë¹ÜU"òv8Dü™âñv:gxºiXÅ:†´-YY2>«fù:¥ƒQ³¢úv›äd-?%*NÛ_Ú‹vOÕø&ç‹ù@›€{ÙÚšaMG¢qÖDæŠDbRls_–~ä ®ÛFå Æ^—B7¤a6PãúìA¬æŽq+|63—AµÿIx9—«øŸ²ÄîtötìUÂnÎÎn6ÿ?ÒR¯Œ^ÔÈV W<‹{=ÚÏŸs9vù›SáE^”XõíkkbÝG»+Õ¿^Z¬ˆéV8ß$2ÂåV.ƒ$V+›Q¯HýDôŠf¤ª®Y¬ŽK£;;_öÉ÷°GL—†èÅÕÔ±S öÖÛ„&D˜–„0ZZl¢µ†²OcñéZÏ>üŸ–{IŒm ;“MywÈ'é9):eÏn]ìþ‹'5Rô7ë ¢Åé Ÿ$ÿ˜‹äæ:xšŸæ±ªÆH«þ§¯š5"|2K»b¼þ4"e 8:O5åðw¼lw*¨’$Ä?OínHSß…ÊãŠ3ÝaäÙnƒñî\±rݰ-¬MnsVîî}¬ŒÙG2ôkÚQ|•.×w©*܃æ‘Ú©;c³RvÉZÌQXŠH™u‘ÌÆÉÛ$oOl{WÛ^ßjˆæ¯øsW×¶¹=µÉéÍUEE\“1g±€0Örh7tŽòXg(i0\¿kÁ•"é&+Ðg*ú݆$õt¨ÿT9j›¥’o²¼,¦šsv”/-i¥+kšÛl í¯2Ñmé!}†Ru¿‡ã¥·×ŽIÙ]dI o•¬kœž~Mù|>Mùü~_iòøûõòøû÷ñö¨žýz÷ü{ökõ¯ v|•["¨*Uñ–É/{g³zøˆˆ.ÂS÷ÙAO tÙîíœiªÊ$º_Ewß]y’3€í¤Ðäò™Ëí®‡w^¾6ªÐ$éjèÛ’+&£nA=¸e²Æåc_þÇ1ªQüªÈÉß÷Çðª®m‡|ÓÔ.cQÎI?þ•Fª/¥þ}*z5l—¸´î e #&ž ±ÞºmŒ×±’{v‘ç_ Ë&ú·EªA‰S-Q$îÛô22˜{ñKÂÕ»±ˆ†–åxG½ÑéºVÝ\®vß/Rëêô»Yù<¼siCóåjWêdšL+Oîf’¬Q!¥% _™–¬$‚’Ö²$ÁBëq 5R!°3EýÞ¦st–Ûùú<›O/ëu¹ëÍbqôß6¹}û99½æKéÆ˜kc*ìW««bF_wn‡g%«ú*¬ÃÒJé×Ö{+»î’ýµ‹̉²>¬Ÿ%û==ªï¡ÈŠÏÉk릨ßɵ#"½&&ü ©%$d^iÕr8½0H5nÀ¢H쬂‰%óc6Ç ºã²¹„sŠšôŒÔd°žÆa¯x˜·ô©ÆeÕg{s~¶!ÐT˯Ëxùý~f¿uV÷ScG'/K[Åy¾C«û4òлkƒÓÇÄÓþ²Þ‚¶ ¼z‰Cr·ýòÃܵ[™b'=g·øïŽ«›2IwŸQßb#š–Y$¬Jñ*ÊÙ®‰N<§¼¼šJ ä`=v°«k|{ØØŸTgòêÄc{”DÌ,nC3’O—jbM:Ž@Ь8ªÖPÒÉw*“Ëd}zTÈð…p²: ½“¹ž§‰³Í­Ÿ1sxm¹xk¸Wµ3pòùÈæ¥“Ïiô2\\×t||ÛÛV»lòÐãdãeù/Oäšš2É¡¥4QXØóæ–»RËdk+æTt“2$oÏê°‘FÚωßrÊùMšûÉÍŠ^¯S`r…òÛ¸¬”91”ïVáH¾ÜÕ]«e° œ4_°0…Ó  *{±à¯!öTŠÅ73œU’³Msô§É§1K­jhd¶_·Â·?½vz·Y¯òß]ÒvWuümÑôL¤ëNÑåyÞ‹—è Ûå³yŠX~lì›r¹Õý1þ½i"¾Yÿ§ÿ/B !®Ö\†—Çá<°ÏÅ;æt’Àõȇõ·¶RØTqëGÍõCèíVu”ePälˆ»×aƒ‹€ÜÓȧa­Kc–µÛÙש™7ª¬£Ž`,Š0»f}ì1ÛE«|]Ÿ)xk{N ëÍæµÎzuþW·ØÅk2•xo]·ÑðÜöÇŒù9%éà羬9;VŽGõ$õ,p8]y›)±ÔûJZ2EµÈìïš~=ÖV½Ê­ka³,w,XõËîT¯3äúQ͵,_s~¸2żhvQÆU\·±Óûµ‚‰5g¯ „ •uê/|¹Ô«JÑ.k„¬ÄšÈV£lf“¨ê¹$m+À‰›Ábâ,,3U~,Ž9úü_ó|×SÏhìÙ¡É37~Þ?’µº:ñ翪êžCù¬êÓf3NŸ9‰ùý97rõ_Ìó{9ù½µÞj¢áÝUJò]šh&dhùþq6Jqªô‚ôg¹¬uY’V$ObM4o|1¶l°_‡¸¬¤buåÍ`L¤••NL™ê v¶­¿(‘—²Í™5,Û°WbÉ–J«W–ˆBrRbž…Æ“€ÙÅ\˧–'¬åQ:â¬Ã[ýmld[wMÃs˜y]geR®w‘£—ârrér´(ÐÆOqܶ6?U#~¦UK_ÕÕwGÉÔ‡æt`Ÿg¨ëê7›ŽF¤6f–H+¹Ï¨©bÌ’:w¹Ò~e–O$-†:G5ZÈþ™Ü²M3$Ž û‘Ÿ‹ŠA 朥¯{CÃ…÷^ð¨j((Q!„¾MQÄ¡ÑjÚR:QÒ*°µ”$Ó™^ò™Kiÿ¥°žIŠÙL„Oú¹ì›v|$GÒø‘b¬à;N× ½výÚîeª»›VE¬7l2ãVdÇnFD¼ßÝÍA“O:Ì­.S¿Å%õ 7ÿŸv«V‰­kWÚ:(à‘$gÖ­Ur}‹$‰7©–G=IÏ¢ýrf¿)‰‘Ž‚(1Ñ“äø‡ÚÅc®ÉˆÈ¯•}¥¹-‡L ’°có šä¥:OÝï,$`‘]Y=a?ê É÷ht•4¶jéÙè[nÛWsj.ßON´v³8 õÙ]x¼mÌJUy½,L(êä;œ…1ªR©MÏc¯S*“] ™˜Ø•ªèÚ÷}vÅs£}¦ª¯äIŽtÌ’UtŸrýŽsü›~'AÔP{ujE¡"„Mìt~ ¨ª>¡T—øîö"oq#\¬°ØÞÒòš´5:Ò8ÔR3‰áòIRE¶ÔŸ0­Ÿ#v3Ïqúû×.àrïùãÓÖÇÇõ•¨6娘ËZ‰‹Qf¡Ï®œ×›jÎ^CéæÊµRâ:•âš[ÄÖË2z‘Éïùö¿'|Zª­gØïN—àI^Ö¾DsÓäwQ:‚­ƒWÜÔñ*þ& ±å#í¹¯Ù„cò¡”"Tð¾#ë"¨ÎxX‡;‡á·ÑjãÛÛ4@zHµNÃgµëº‘;-ž“gC¬GæÊ$÷ì~÷ùjÓζºL{-­êÐS­ñ¼²þd“Eù2Ï%—É3½Ç^¡üxázz}(ÄúýHç9íøzøü\®wöúø¢/ÅÒ#a€0À` €0À` €0À` €@ÝÖÆÿ?þX¿å7¹ÿÀ` €0À` œ|ÿ„S?×÷1s`€0À` €0À` €0À` €0!£Œz$»EEl³"# 5Að÷ìܧ²N=fé5[:lº[lšÈ.š‰*žÛi¾›kÏœã?Yw5ÌæÅÑÀÏ%tT?«eYmååòX·këçmçì:üûu|‘Zì¶sùΫ>vï)N”Z¶íu»3âMÈa¬sÕæ™ë ­8ó™ËYß¾y±¾'ÇðHMÍD|ÐK÷6w9XÖÁH–"ÑÀþE«ð3Á!Œ?·:Ì:rèm”ïqrH]žÊÉnèëIiZÝûXÙ)ÿSО&$•¥‰ë߯t¡èµq(Pí¦“w>ïé¤Ñçn^£_‹òµ®~\¬-·—»ÉÏËK|ص:™4¥Ô«ÎyŠNu×jò;7¼•øÐ·;_¨ÈÕò¸8qX=»0²fµËf‹eVοÅ:NŠô‘У5›?íøºÄq¶ŸµùÇ Œ¨’H»Œ•ù”ˆLŠAÅ&J¸ü>žnìTRY—Ï“¢ÐÔ†/!m×»n£JSR§ ö'.vêžF .™GÒ©WF&á9ôö·ƒÙýaæ\ÌÍ^ö§P¾I×ý—Æ[Ú˜œã¹×ÍG7[6_%q}£ò;7t ÙņÿÎg¿ ÅÃÒgöb9Îõ7-è%{^ÿÅt‡Ùv9$ßj#ŸÒšßeo©«ŠËR¿ê’V~:¤k÷Mí(ábêÏ*Þ³ZöŒ._½‘¬¨´¢ƒb6ê®iÔ$zL-)вI\E¸éƒF0û´V¶„%uÉÝ.¹ T$‡Ä¤¾.&ó½w•øÞGw¼¾ÏWäì[ÚâÙo&c±96feϵ-œI¬mó}S:œÚ»÷êï™îàóä\Çï¶ï¶½"•fŽ ¿[c°«YöØ‘_"I6DHæƒè{¢k¢_Ÿå?ñ­ír¹‰ËSpÔT»®Òg¢]\—5`ÇbÌè-fl‹˜FëóÔhn¶N¬|ÉÜq¨‰¸Ùr°²:䥅8. Fªù\~#ðrlb¾9®cy7.½ÈxoPæõ5çò2áÏJž&§IŸä Þ4•Ý}yáÓšî"Uås<³c:*œÎ-Ù£ÖÑ[ú_\ˆ¨Ù)=Z¶o>fF•>Ôs¤ŽUmÄüuEb6O”ï¢×«¦•Ìôêøãä<ˆM™×í-a$ÇÄThQ~›GÙˆ´'v1ÉîÄÕk-ÙÛl«¯¥!èp¡ididÅÚƒ fj_qV’^ȉmk”­'é›~’~>å[;Mš¤~qÑžï%Ïs9Ĩɶ©øŸšµäš9µÓ¶ž7C…ÊëÍ¡kzz8¼GU•âë’ô3ÓTÙ•!K VƨïÛX±4î›ä©¯LÙ)º)£ƒå$RÏ1±#¤³îµ"M”ŸHûµfX„µûnz±ãI»© 1  ÅÅ7 ¸XgS‰<êC h#Ö:–·°«~U„€S‡ËXæ Jæça¦ƒEçÏrœÅfñÞ0¡·ãë ìÖx[²èö¯è[Ùmøïìu}•Ìè³sf¸E‹'5Ô|7ôZµÙËÑ«ƒŸ»FõtËÔžg-‹¯ŽÒzîቌllpWkÕïFûYhÒg÷}Ît’¾77ð#Æ=Ç8n6dNžShEcµ¥PÆÒÞ7ZÜ›Vdx0„–â˜õúOÉ91ä¬Ö…Th5&ô4ÄÑ¢T3–ÈëQ_nþ¬8Œ msœ·?›£Î÷kéõ]ŽAº½WUe£&W‡äÎÛ.kÙøiOÈŒµ}˜DáW„Çw5…—ÔÜ7 Ì¿§šFMY#dÒÇן¡ß$’Ì”â¬ôkäùKSâß¶¤®u©id| ÙM¼IÆ·$öÆ#2h^ß¹¬‡fMχ”¹øzª:“æß19!•@j´.1‘/3Ô ®‹NÂH¥ ¦!1iYºÍ«_˜«‡5.+‡‰’x¦‡9f§ n¶­/››g½N&?[£Çé/9›½dxkSF¼4ùëù™ú[õ“žä³¬ˆë6URó¦GZk˜ïH©Wò_*Ã$,ÿJ_öü˜ªéXù¢’•çž²Õ3Ý@¡1ð•ŒÙÚƒÞ/#RÃÝ£gî bâ\WFrAáLˆÑÈ3ùù­ßbmh*BTKUôߪ_+öއ¢ßÒ¿Ú¬ó×o‘S_N¯@ÞjܲZµÎGNµˆ±iû¶•`­½™C? ­ÍÕgû„¼“+cÕ¾‡y=Ã_Ò/â}lX¾æ¢5&W+VGoÉ]Þè–g-‚N«#¶„K¥”4\zää,üsǦ°¤„å µÈ5[¾ˆÕu‰— "r ‚Gy<xRiŒIÕDàÓi>PÈ‘®ù2EùµþÚÏŽË×êxe}^V;ÀãåbUi˜Ì¦ÐÐÖ„]šDÈìdlñ7Ê#«ŽfîM¬üѹGjXù3'œ˜póßKjî)sɵ¾“¦ë¢Ò§³×QÖÈÞš©«Ew fªQ·Ï:»dXÓ* ¯B†J¢ÓΩG:*QAû}5†»iÖl0Áõ1Ñ×trDŽj*¶XÝòlÞý{ûUþÞé?Ü÷9êå_›½íMÄŠT«Sª ¡¶Cß dgvM·*ÐQG#žÔ†Éòí¸ò.Étù’KhÙÛ‘c—pšŠ²m²QݸÊsg²Ý–бf½Ùè¶y[N{•"µKsVG¤2Y« ë°×ìt°EnÔq=¬±*>ãâß’?âŸ$Ej;Ò|‘®V«š‹þQ­jª"úUkUÂítÓ^wç]uו6ã}ù×^8ç}ø×]8Û~xãíÛn4ÓM8ÛŸ·Ÿ»¦ºý¿f¼qźªª"*ª£SÓQUUžÕÞ“ÿB|œçzOãÚªÿ•SéúÏ€` €0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0¤ø!R€Fã'Zúà’!eñܶõ‚‹³Xy¾¥šÍÝ·õ ,Çjá)}ÿˆ‚É+®»ë{›¡s#F†®|ß2í] 6>¸¥ú.Rž;5¦ú§d°ËõMõÍ‘?ãñ‘b«WËØÙæ==µísžÕ=µÈ¨äöŠŠžÑU=¢¢§ýÖÒ*”–;«žŸ¬!¯Õ¥\´qU§ÀfÌÙBSˆý9Ž­‡ê[‘³"£ŽZ¸2M…J˜ o%…E ‡”fy¼Ç‡­ƒ;¬Ü®Îò)¢ëÜ·¥ž}çY}—ZµvÕ…–ÊèÛŠþ¥š‘K¼­­ì{¥ÊÞØ§z‹êV‘`WÁ­UE¯ý¨‰¤oÅ­jzOƒU¬sX¨¬l‘Å"5$Š77" WWq¹ÜÒÎ b³1JÇ0I©yRD4±¥Òã]^»É×#ø~¦œ¾r9˜‘ï¸d: q—úÞ›SžÂäô·4osœÄúv9ü{6_5,y6$†m$¡ÕVl؇òV³]øñZží˜bŽ{÷¤±é°BÉe‘1³LŒl²5=:DòTÿ*Ô_Ëü«Q­UTcQ2‘…b À≳ÂÄV1ƒF U |›ÓG_(ѪI £ÃFH,YÖÉò¹oÞ¿yºÎ.ª˜‹wï_¶¯]·rÓ §U–mÙšÄì­R õÛ4Ï|‚…µ©Ó‰‘Õ©^ ð5ÃQ­kSâÖµ­Us•ˆˆ®{•ïw¤DOosœç/ùs•U}ªª¦Z†À` €0À` €0À` €0À` €0À` €0*˜J7jRóI’ðh<4TewÍÌ6“¢(i7¨E"çhϨ鰳­–ýwÝÿ.f»cÖ9Jv¯Y¨¯åºÞ^ï5|½Y4º®ŽÆÃm>aP)jè¶1+ZÃ)ÝÏŽîYœuÜþ>›±ÅyY’ ^^æßÁgR~jñ×Ôëoñ5Û¨ßßÛ2¦QKŸÙê=}‡²ÖžžÉ¤3å·?v‡ö`ì"1x”ZqŽ w$Åÿ+/”u  /sV‰Õ™ËºÒ0žÁ GLŒµ™¯)hÓžô€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` €0Ã|DxÄtrIó1íÕx8rn9E¢*.A°‘,tUÆé§»Âe³9¶»r³ÒÛ3m¢®I=ü>Hâj:G²6«ã÷5Y&‘±DÄW*"¾Y^ÈãoûŸ#ÚÆ¢¹È‹sV»ÒºUlÜ™•®\|U`–Ĭ©ŸR{÷í:8š÷¶µ¬Ý¹:¢EZ¥yìÌæCn²;/OÕR±‰|Ê>ÌÉxüÀÀ¡ZÈcÚ,R"ú(?˜hpÎʵ Rb}ı¾€B5Geì< 솨ýîpš=&F]ˆë[¹&š½É¢‰,WI¥–¤•#ü8a|­’[“ºÛRZŠ®Xäö­øû6áO"w¸÷w9îsZÎnv¿;~úäl;;>CW~ßõ&Ž•zÔ£ÎdÃ+µ´ç‘±×K”Ö6ʲüSAÂ;ÕZM7knÃm&ÖdÈLjwwDVÐ-\ÖY*Qùtœ„‘vÑéQB…N"E Ò*‡rÃÑKT÷Õ< .棬Ýnµ=<*m¸È«^Û©m(šìÚ6[^Ý™,¹µíK,ÓÉ6)Gí©éQ6ÇOúXèbÄæ'ñïIÃyS¢Ÿœµ¡·ÊøÇ¡¿ÚtúÃÚõX²kóØu1¢Ÿc t®èãºå8ôa¶’E{Uò– ¸à7l(Ö&Žlb;>ù€) Y˜öÒAIj0ÎáºM«ÔµÝd6ÑnåUZ¸å=>Ä÷ãYFFÅ ªUîг^vÍ^´ïŽ 0Øuu³JئX^ôcÑZ¨¾½«]é?…4W‘­‡-e.ð».É–jq„À÷m€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` ñº‰§÷>"š'ñ7Õ=>þÚë÷ÔÛíû©é÷¹ãïo·ÙÏÝ×·n~Î~Î9û3âª'¯j‰í}'µõíWü"éUÿÐzkÿ—Á®wŪ÷|Z®ø±¿îs½"új{On_Hžÿ•5äÒÙ€×~ò¤Þ@Ö4ÄQÄЩBy!í‚7w»ùMM8Ýgds§)4É+²h2náÊ©#¾>î­ ï¹×l2´uêºä²ËüFØZõbúTöçÈ®OL‰t’/¦±®r£VaÍpgcûk9Œ‰ö­koÅÍP£KÓíÍ©5vÚj=ŽVÇ^›!rIbý™a§UˆùlÍ 1¾FÅø×p¤V¢ïÐt„ÎÍw¬¤›ò™x™åQ¶Š²á· Î<±fÕã÷I»åãg ‚C¢’eÜÝgœn-ôAÌf·_cQ]-Í7~T±¶Õ¸¯âd¶«>?ß¡w>GK+þmVÃN¥•sÏöߊ5ÛËkôëÁÅ^ç–<Íñ.s`ó×ùO(ymë+2Ë—[Žæ{ Ð¥]+ÏÚþ$PÛlUÕ’$Ζ ^ íÅóL@V¶.·•ãg£úüM¼.–\BF_ %…Jeiý“fÖä'hØÍY3xM§05¡M8=‚ &ïmH(_?Y»AuvŸž×Ç+ic:&Í$PÙ¥jÕ -,é/7E¬cågà-&6xãj£ýH³Nu<‹ú|ñO’zÈø×ëæ­oË”fé|•„™µnèâôØXXœ—Äö•9Y8ÙìÙ­FÂuqôÖ%˹nV>»V£så,ªtìHb:8ÐÌÄdnK57• vw;ZHn*yI òb¸”ÎI$]Å’Ðk÷Žè$LŸØŸ*-®úÊ(òÙ,Ár:ìšäU¬×ší¨àžõå³5YÖÅûމ'³b7ÕDŽG»ûRYnöš'©óß‘ºÌ]NræÍŒÞröÖ.¾g1ƒ{W+•åcÅËÞÊf?)ÎE ü¼\‹•÷¤uÚ• ÿUôiz25k¤+aÃÙ.EË6,Ú8.óB%œ6lŠ “ ö"S|ET´ÑG¯0hݹÙU´=‹=wá»Fé§ lq±Ò9Œc3ÒI\Öµ®–D‘#äTDW½"Š8ÑÎöäŽ63ßÅDÔ3Ü·f*pÙµfÄ9õN„SÏ,±Q¨ûv¯¾­8äs™Z³ïÞ»uÐBŒ‰ÖîZ²­Y¬J÷À;3¬3úÞ gÔùƒ{Xä†H½m%‹–”C'ïãÖ,~e‡P$!r’l•OÏבÁn¥*hl´©±µ×T Z\Íüêt™Ê\e6V±“fÙ­-ªwß_F’þ\í‚ÍvÐr$nµ¡c>¼O´©<¶›2»ûzωó%Ùô%Ÿ?s–º)öqüŒüîÓs?¤äªëñÝC`Ê—[^^ªn,K'°Ù¿_ ŽÌÏÁ›1‘+¥Êbý̞ǩ[ɺp+aÀI£³ ûQf‘¥â¤âˆ6mY;l´±¬¸yar29II)FQÞ^Ê!@4<É»Kª½xo×ÅÛjPÕt_2ýR²œóU–£ZÜǵ֙n9£³$¾–Ã.@Êÿ;T«¤ìk0[Ÿ¦í}>ScÉž.™ýg§5_:?ÏϱÑeçïQß–y»zóE??s>ö5:?c1ìózvvR¶M¬ì«2Ø›)8n¾îEtVQšÚ·všJè¦í\lÝz ãM6çdÙ«¦ÎuI^5ß–î[yMdöÚjŽk•ÈŽEV/Å芊­rµ¯F¹ýª­s]é}/ÅÍ_ð¨«Ì†h› äŠHÙb5š»ÞÇ1³ÂÙ¥®éas‘XÒx'^ÅsRheWçÚŸlúS` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0·Þ9Ì.°éOp,«"2×®ëέös=«M¢ÙÈk&©¥§å0íÞk³EÆLA}~‹­vl«R*è¾¼¥¶ÜržKµ^q×ëÒêo:65Wô¢…íœÜý5Fßæ-J“®·@û5Ì–KVsbßå ljNIÚ†ƒ•C6% 0R,Óa@z¿À` €0 qðþýLÿ^?ÜÅÍ€\vÀ` €0À` €0À` €cEfQ0[œÔäŒ0Mc!†H¤. l-Pf]b0©7ï”A“6O€2Ý%Öq¦œ(=~7ç_³Nv¶–åXtžÄ0þ41X°é¤lL† 3"–W½ZÆ1ï¯3QÎr'¸Ýï×ñï5C›ßÔn[²ñ´´Ý·¥{"ês^³§©›u«Ô)UªÉlسZ¾¶l²ENwÂÜJß—·|a‹®ùÖRàR‘Ô“cwu„1;KMAÓ/!’ÆQñP#ÇãhN$Y4Š)ZùFÌ7´áÕ›È$È)tTåu!Îî³-Ãf,VO·¡j'ÑŒúv™^*ÏY·l]³f¦lpȬ†fĶŸ;›b$d35~KÒp~”»~{S 瓦Ìñ!yü+—SÉ5º\ :÷ºÌ¬©yŒžg{µ·¡U–ôs¥¿|¨æÈ½%<éõ3v¹}€ÖRGÇ[uÐcy<úÑÑ`«»Nxå²!´|½—¤µÓåàÀRÝÁ%[« Z(ÛG vQ'z3å^Z:Çz¾m‰'o;lÒ{«Å~­÷5!G»E-¹î£]Ò+V›©ZTsUQèÏ_9Ÿ¦ÿmvصræóÙ°úŠ‘l^ÔìxNR ¤ÒuX¸§óðU‹©Õ{a¤É£écé°šè¬5²Wu„‘+íè/GhXe€ÊÍw ŒMfÉg£éTæ:Ö[&s7@·¼ºŸŠ/"p[X‰'Ïw]~FÄÙ‡bÕuùU¯)ñ¦‰ñ–£ÄàÓ¾Í'Ò«vêBÏ«ÕÛnË®¤¿sïÅ-‡J•${ÕÎúê2Úç{o¯H†¼êT>Wé9+šìöOmÕûøëùTt½%ÚñØD¯=f¤¬dŒk,IZg=#•¯‰edÔëË ŽcãG1QU}ÌyN÷ªâ\®æuíä¹úù;S>‹§žÎ==Ìè ’å)«]Jsú=š:4¢³7êÝ|Vík>0¢?¾º·!žLšÌ. îšâf5]k‡!òëàíë ê(ÖP2@ ©éÏ‹ vhÔ˜Í~cF‘”%%grX\Š^†ï/bõÆ[×ÞÇüÈÕ3žÊvö's3ê2Ôv!¢³Ýúe‰Ð-k3gÌŒ¬–¦¿a±Xé~³ÅuÈå9¹ùßøŸÈëÍ]{:Ö:.{ÇWÜö;óáÝÈÑêY•Ë®• ÕôÓk;®Îu¹0¨r™Çüy ×þÎ×·¬ œ ymÅ>Š=Ðdí„‚3.ü¦Uã稌Qè‹7&»$9]—**»}_Ym@ ÍœÈ0:\ýÊRÙŽUŠJ¯H¯Gb­º‰+ÞôŽ[~(\ÙUˆÇ9žÜ椑¹Q,JíAå¿õþ,éèáÜ Ëõwë:÷+o#ožê¿¡Z­i.èQ“”ÐÓŽj1Ù–ÄZøGËRÜqºIhÝH$®I *0À` €0À` €0À` €0À` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀÒý˜ÕÕß]ï»ðe©:V KÚS|nìx)¡ º3:nÀe¸ÞUoÁ]ÄØ–Cf<®øS–üªŸ }ý@ó ¨¬~ÃÖÝfà‚~÷7¦jªf%X×!Xy@ëJ½¹ÖÛ†“AiÞÊÄ^öe¤ªÇµôKm_Zî ARcºþÞeÀzÛÀÃ,[ QÁ%¶}Ÿ-¯ `HÊ&s9Aâ#±ˆè†û»&hÑ7{¦Ù€æ “ÝwN—ßTÒO]¶Ûn8ã­ùn ùbêóG°ìEu µ½Ãí$¢ž´³ u¤MÔšk×{2Ñ‹Lâ/ 1Ì`SI©6r·(sW jÀÒ® x¹§i¿xî #ÆœF__xÀ/Öa‘Cü7ân3®WWnZÚ,݃´z¼&xñÂÇÀÆ*¶’ø—g@Ú0¬¦Æ‹E4JZH9’­@ôA€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À` €q´zÏw‹ÑÛmßµlÑë–:.–ϳ~«Ô»]·ò²-ž¬8‚-SMRp«©£¾ûµ_„ü£Ø¯thö¬kæ#‘^ÖH¯kæûù#^èäF9QËÑU®õYÕ¬6¼W^fÔžk ´è¤JóXªÊÒÚ¯êÔŠI«Erœ–"c–HYj³äk[¾„AlGqä3+(.ào¤.^À=7X=Gø-<xýÜNPð^9$X+‚Õw.G+Ä›Cõû,úTt]Q,\Ñ©»R•Jο=yób¿Ûz ‘õ*KR? š¬©v¬—kwQžÃv›?—Ü3ür¸jéD~¤Ø³w`y—DNÍ?r¥`8Ë ×h²jÉFsX‡‘:êiºî\{ƒÇDêÖâ)þl–ö.hï9Ðç*~å£uõÖÝIïO#—29£ÍZ¨¶büZòÁcêõ3\ç}|¸Ý¿ÕFœÅN{Ç\çâhaÒìY'ô_ÌWÖN{¢Éås*@Îâæm¾Õ»¯ònkPÔÈM;2h¡‡ñ+ÁJ`Æ¢ ¢aWiªB-(3»%~â¨jæ_#/(0†‰}ÍRÑŽÄ;իN4øM™ò“]xå4¸ûeõªARW…ˆº[S+Ò·ånÄÖ¦j'¯HÅ–y>,õé¬ôÄþçm®ƒS Ò‹_JÂÉ¡~klÇòŽUƒÆÏÂÍ‘Ïù+Ýi´s*¬ößdÖIܨ÷¯¬‰4ÓE4ÒI=I-5M$“×]M=5ã]OMxã]4Ó^8×]uãu׎8ãŽ8ãŽ2áÒ"'ðˆˆŸÂ"'ðˆŸàÃ=ï‘ï’GºI$sž÷½Êç½îUsž÷9UÎsœª®rªªªªªª©ûϧ‘€0À`ûê)¥Xå[ÕÈçþ5„–²È¨å‹äÖ¹½âÔCÂmØwC['²åµí­íÌŸ)6³ä»5ŒšÚ´›n„xúÿŽø*;sLý¦RkëÅ Ø%žµiKúä딊·ë¹ŒÚ›¹;¯·ð%ÇK˜"Ãc—…“ØŒLUˆGy£"Æ{Ù‹5 ¹5i³qiã%ÞØçlT£±rí$}–þûZJŠÜiÚÙnAgA“e¶»žŒ–i¤}5cWM]ŠØ’uGľ8ó&?GÕxï±ç9Ž¡õñ&ÿ…;U:¸®sÖ¤¶™ÒgóÚx|u¬îòm˜«ºÖ~fe:½mYes6,$·ß<Ê€HÔrˆbMŸ¬Í˜gîµjªnRI©ö²o[l°÷¨¾eÏp=Û¶Ê'Ïè¶Úo¦ÛN`µ…rC#^¬d2=¨äFØì‰Èö«£z=ŸÜŽïj§òŽô©ï•50u±™ šT§©‹:5 tñ¾ $Ÿ&ÒÒЉõ§lW+IVÒ,2Ãn½y˜ÿmtms\ÈràÄ €0À` €0À` €0À` €0À` €0o.Óý–މþ»Uoû„u¤‡æZ6¡ùþ&ÇÕ’.7ØÈ™ù„O¦‘6öŸ^ìg¦ßà&!×ÇÛÖü4ÀÑ)$?7u$ô³ØäQ™û»åCòÔ¼g²ËcÞõäï·ä½ŽPã¹ö™ŸSè Œõ.=6îZüu~ÄØ !À`{²3¾J«ÎÂuÞÏ·¨ˆÉý]²¦6tBÖ–Ù¤W¯’@r˜4ŠÞ´ ÚO`”¨†‹¶ ”K6”B¸HIÐèOcÄ[,@xxë[ÖqW@bÈoêÆñVh, øÈBÚ3ª¤{„Ž¬Ãµ,qo i<4äpÔšŽà±>\™"“DÞ L²ÏHºÕîÀ­&½³;õXÔ5½ؘÝƶ½bl tÞ„iغþÝâ<ÖÑX‡[‘³ëòpùiSw!>:¡Ø´}B—åƒu’.ê­ßš¶tL¯hûÝXvrµRô æÒm|[¹ˆë‘Rͦbï‹AB#€ ´GåæH;XûB¾îÛI± ùÀ)ÇÀøGõ3ýxÿs6qØ` €0À` €0ÀŠ·gojf»æ`RC²†d™±jê6œn`hŒ´¼A“Å7¨ØÀ"äÚ$³æü%ºÎ·ãfi?|†û¶ýf±m®·#?òå°«5Š×eά•­Í%¹j1ê±$u`šF"½¾•ÎkSà’HŠ­ŠG7|øÇôñä?$öÓ´rÌܾc?±Ù~×;›OžÏè­Wcn­ÍÍ\ú6Y–FÇ ³+l>¥YZÙîÕŽ}W+½{/:”@‘¤é"pâVð¦·ùùb¼¹ª{ › ÓúÖì1!—™V|ÈœEW0ìT}TiÁgÛ„ÅÛÜéoZ Ü\FÔ§&„Åw~{™‹m©•£+’\„Í“B(cš$•ŸêŽ™ñWF«g¬3ÌxS–Âë$òo“åßèéqõ4¯ó^%Éæûx¹édïøÊ1-"/kS¿§o:óèXLxw¢Î¯^IYcöú­Óþ±éÜÆq7,s±×|öØR]°1 ”& VÉÉÇå1Âs°ø´EóðÐ\¨teR£H¹~]R )¦3¹vô³ô[wõ –ž|sR´¨åÙ–½­ä«=:µ=Šp}ð,-µngHé&YUÈŒd-~¢ùÎ_—¡—á¯rœ­—±·ÒÝ“§ê»¬::ø|n]MÌ®‹w¡µ““Òj.V¤z2ààçAN ™ñÓŽu‹7$Ug×j¨‹H"úâ4ÜßÞš‚„Æ£¨6“Ÿ­x€QÍrSc»‚`Ån6o ¶mÓáøãîk"ÍçqòªØ©S:Œ0Ú}ß¹°R­]²AvÍ‹ Uí†6# ‰³¬ƿڑ1©é?Á§{o2ù#¾ÝÈèz.Ï«ÒÒïËþÙ>§M·±-=^g'=êÒéܰø5¯Í”Ý[v£õ3¯X™ë#Õ~K¼ó6jÑ€0À` €0À8kåÛ'î³püo©öç«6AWl=b\"ïÑ9SM–kê‘×Tœü ÓøékÂjýí8ãŒðèãsÙ#˜Ç>?—Ö÷5ªøþiñÁÊžÛòOáßO’ í ˜®[†½šÚ³[¿OæVŠyc¯oñž²×ü˜Z䎢EY!ûZÿ©ê¯gÅʪ@ž:šR•J-^ºš"®aDsbËJW“ÕÔl³#ü1ž†8³ÇîK±“¶8üPýÖ(`´ vkƒ9‚JK‰jÖ§;%Öª>)#ÂýÆÜ¹÷Ü­VXûã¹~ëί‘Ò²Óg’&*Ë4Ô/OõDuü£å>Ìtù©#}} v¼ªœw?C°å"dñÙÉ\»œç'¥wc.:õ ϳ‡6][öÛÜþ³”Ì[×S¾¦»y¡@3—|6iTÍbNîsk1–q TLq5Ñè¸ì`êí,—p8ÐfâŽ,(zØ~Ï$ÝÁ$\<¯Ö¤°\fÝ;™Wj?fue´¦±Y‚…ë¨ø2ç«;™¤ê¡lS¬Q¶DXÒIÚ×JŽ~+ɧ—QÕç'ñ‡IÍw¼ÏA_ƹ‘ÚÀ^–= ]N·—æ][WºËÜËŠÇ_«ÚÒšþ\wíËND¶ú™2M )"¯92nràÀ` €0À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ$W¯Ù¦n ú ‚øænþI¢ì2°•$Ž Sç×K1S»1•¬íhÒñ¨Àb:F?+4åQ­Èì` €0À)ÇÀøGõ3ýxÿs6qØ` €0À` €0¡¬¾ËRµLJ33˜YPa¥î ÜÇÖLcñžJœHÁBJÇS¯™*èH¦Fýü‚©%·ÃÁÞÛò—:m¶˜-.“*¥k—4hÁ ·ÑüwX¹^·ÛÛ@Û1¤ïb¾™?äH­Eõ«ë×ñµ¸¯ y/½è6ù¾wŒê´ô¹è:”×'œ×ÛJœ¾6®¤¸¶•VÓ Ð¿g/öšqÈôùÞµ]­G£‘Nwc1Ä’ë]#`[‘Ã*JÛ˜’w®k ÂÂ…¢®®£²iœ•´Åø°ou{£Ò! îX=xÕAȽßíøéÇçëî\ž¢sxšõæ[MŽä¡™ub‰^ÍË-¹$P?æ’ NïjÆ_ò›ƒ/ôéÎs™žiò%ãÝœÖ`Osœ¥[ªì»Žb;÷¤bÁ³‰ÍâÍÎÔ½§Yk>µ=.¢u«NË’Öo¯©ÿ!]~ìE‰;œmyÛÑæPÚÂy”B)¨ ’¿a5ÐXµ•Õ“+1í˜nưB)2Is‡Q7uM^9`ÇÔkÑ`t:®þ÷¯]”'J•G…œøî¤q9QŒÓ~”Ú0¬2#ÓU}GIéÓgËû}ßò߇¸þW—o‹|y±g¬É^0ú#õ˜Ým¾e÷¯GÚ³ÄÖâs8ÝéÓ}©"Î܃~n|j–í}*³njw©4Å;‘ÁC%¬ä9`6 f[nVf0¶åU3FW(èó—\ &£I(Wbfš«£ÍMRÌdrxÙ,Q‚”-KÐË„¬Y[-ÈåYZ©4Εӽÿ\‹Ú²¬¿Â*=Ö¶ò7êÉ>Eëqº^“Eîå´sõyû)Ÿ5jî{hɳsb¡Tÿ6‹-%&PJ>ÜèÝ]Ì|ˆù=’cGŒ€0À` €0À` HÞ}¬/ªòIœB¡t/—‹VG &Zb\ÍtÝJ"ù$—ba{¶7»±dpI“w\nñ$¥„ÛÀÌÞϳBí*S$µíŶ)ÃeÔæ¶Ç#­@Ds&IU³«â’)#ﱯDzlÿùs¸ñGa‹Örý7Ošìý~zö®~7I§‰EÏY‰ðaêÉUòEk:J-Ÿ-µïT¿NV¦iË]òW’&J#ý„êùúè% ‹YtG3òÓFZ´FÙÓuª» ‘/Ë¡Ú5.Š pÅìv•¿)b?'«éT°ÁFlGE,×è9‰ó«âS«¥…ùò}TÚÔÕEv^”²E$ÉKñ­ÔÌlÌ[rK¡$µãY-[šVGÿÃ×ñœ²{o't›ÜW•’©û‡['?CÀ9±÷œe*z3¥êkžß» ©s­7¥:¥{¬©ƒÏçP³jä¬nè5°ü؈£íÝ–Š„‹’—3Ýl\FKI^ÊÇs8 ÛPÒØü¨+¨ •Åã¥2|Öì¸åòˆµ—æmQÕ’xj=_-XjÉmŠ×ÆêÒÙ}¨ÿxgl6ëÚ…Õ$Y µV¼¬d¹YýêÖó¯o㣀©™£¿Uµó÷´÷)sÖ[-{QmÐÅ­ƒq: ½ Éôyý|(:*lÎÕÁÜÙ¡bÍ](eR«%Ÿoæ\×c` €0À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀŽìá?dëgaLü­œûEl“ù&ДƒÖ“A>ïåkj]¢iÂö™l ›uÇÇÀ; Yê*¶h®›åÏ«b|Ù4ÅV{åìÒ”&Uäì?ŽNÉy'§Ñ5 ¾"°é JÔÔL”:à˜D*9‹MÅ£Ó›[_D§lšŽè1MÀõû€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0ˆÊgÈ„q iwÉ|¾àœLf¥,ÕFZq2’Œ $£µ"ÓA ½:ÉÛçÿ”«‡šp· êžö–®×©]¶æz~;¥©JÕj±?2Ì5b‘^®F$HùØ÷ÉòôؾOO~½,‡ —Ùèveçóê¿÷xhôFhçe—MãinhSevC%‡h>¶Ušõj}Hùo,UܱüÕíˆòîïE›‡‹T1ùnB5=]wõec3‘Ǿd®Y…–á¸zÐÄUš2ÒŠLÆdR#wà&©$‹‡H2+·ÚÕK°ÕÈ©¡ºÙ+_s¤Ë̹f¿ä×›:8]“›lÕX–å[Ž­bÌ‘¯Ðˆˆç#%è>{ôý'1¥»ä>‡ñLÕ6ù8¢«Ý÷Ö6ºckçvw4b·ÅC.m½fN~‹9Ø6ò1j]oîŠù$Š lÐÆ£u÷m퉞"Ôž§`ªÙCÝ8kHŸkb|ôåyÃá¶l‘¨Ð­c ›S…$Z@UÓßR”7nyÊÿc¬¶­ŸÕêØÔ‹RôôWJ79˜³ÞýÃâÜ|ï‚SÓ²ØámgN¾ìDÊ ŸzZkgs¿¸Ímuß§Þ†Ðàù]_#u1ñW Š'åònãþÙ¼Ø~SúN#{ºsîE–ÅfF…޲7~×&ÓeC¸ “QôÆ©¯¡°Æ?Y€µ.¤§Ò´ÒÊ:Øå^è ¤šÃ¤a#äb1'çC}Ç@"bÂÞ…Q6<‰b›v)1Èäñ¹Yôè6h_cJ´9)%ûnéNÙóÈÚv4¤žJ•$žN¯Uµb|*ŒX˜b2äÔ—{×tlÙºr8ÍÍ/ :—'‘Ìó\^Tù}ÌÙ’OÒdñ4²iô=L­/”ûóîß­¤ÇÚM OšÔ–¥æíÛ¨²Amñ=2û¥¦ë7øÚñ¢ßMµçt¾.œq¢Ÿm~þ¼q®ßo}™-VµU®Vµ\ß*"«~Ié~+þSÚ ë×´þç–Í3#–K#"›á÷D×¹±Íõ¹]ÚÄTlŸ[•\Ïš/ÅʪßKüŸlôS` €0À` €0À` €CYïIª‰±ý›_ˆŠÔ–ëapöð‹ -Èyˆ©ÙI…¸ב"¦zœBP£ᥚš¢ƒ—A¿†±t֋ʱnM:ÕÉ×lUKB­ÿ*sUžÔΙзêŠâNÛJÉ!¶’BŽŠšßº(ÞÞå?S}öO?Sˆë´7|ƒãÙ¯tStü†÷U¯ôôYÛÙX9ÑæC§7çßæ×.\&Z©¥€êzŽþŽt³.}ÛPO¥v"Íê´2lS·/áüE’’]ï«Ùˆ(ÉÈ{yv¶$ØÀöd¤“éax 'Û§ºñ‡ÀDIEÈ8³ôt¾ ”ÃAÐéòÔîËÖ¾§â¥·çÜ‚´õnVè]š8쥛ö¦ –е}W±A•$«#´ÑÎúfjx{ˆóÏIÌPý=Ôè¿}“ÆzþsWo/¢—ÏŸŽæ3­ÛÄ““çóúÉ2f{bÝùëäu¶z[”ááÝK¨Û‹Lb3‘\„Ê£s›-»mLEŽ ŠÙÂi¤¶èp@K§m9[D—A]Òáo¿ªk%¿:ñªšs¶Á«r¥è¾úV«\\­IªÏˆ•Ȉªß²'=Ÿ$G5U=ûDT_ð¨qæï9Ðò××/¦ÁÙç4Ò&̹۹w²/¤/|‘²U§¡{ ¤ŠV6EâçÇ#QUÌr&G—&` €0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À47j-¨ÍÖÇ^ÓXγXm+C[öÔ¶¾­¶Ò[®+Ù Äôg}^´~ÏmO ìVÚ»bõ·<;ç…Ú9Khì@½Åë7RyH»k¯Ö $Ê%]\·'Gá) ¤g®cJmYvmüºF^WkãòFÄq*¬ÚCŽ]¨Ôuj¸¤¹Ö®À` €S€ðêgúñþæ.lã°À` €0œáá1¶H4ïÑ3pb<¾—|´¨øÈ¸Ÿ ¢+«¯¯:`s¾š¶kê=KÕ›³Ew Qžx«1²Lÿƒ5x¿;ܶ¬EVzc\©öO4lù*|[òù=Íb9É‘ËÉÐÚ³-<Êÿ“fíi#û`‡ãŸƒ“wsZÇÎÄ‘F¿‰•r×Ô×,óý?Ehæ³$P¾%XÝ©"V"Õ\iÿ,ý¼~ÂÝÄF$ÊJ\« ÔDÌ< H„À8Ù¶æRò"-ÜJ䪱 #q:ò¦î¶t’[E4;\ªš —ZOÜo¶¾‚º¥FYšXïTšœÔ²è+Í6X’Äu«*ÈaX¿•wÉz‘ý0ù ã£ï6ª/ÉM¯È6‡ ³‹ŸBß-ÐçtZš}4:›9–ú;91éÍ$v´´[ ¨ÆÀHôÁâEû£r™±Å¨¤;¬!„Y->}¤UÝfgÍMX•o ygW±dùÉ—’Wr 奛“/»$ƒ(ÝƒŠØÔ›²Ø›F%Z|Ì0è±²=,ŵ§?jÌ•µ!®ú Ìc$tϲë jÚ¶Y•‰ ¶7,²Ž‡?ôÕã|Þ6óÑùÃKC‹±=ZÎÅ¿ã#ZÊy¸¡/A¥¯[¬³ÜÚ³V Úø°d79¨ç6Ëô™5¸’‡ÊÐؤ»âöÜåËaGÀS‰*êßæ#7 âºw4ú ‹ Ž„€ˆýÀ—ÀdÁ’bÈ=Ýé’;9_w)p9²ÐÎMÕŸgB¼è¯×üK±Sý¹õ¦}*ub¯`‘Ñ>¼’2»¦–)¯šEr«ªtÿ«^Ò[دŠÛ—ã~C_[ÈòG¡æ4:Eì«ífUézMÛû}f†¥Ht*ëT§k^,ÚW©ÖmlÚm‚&Ã8ÄB¢ý‚ò2‘ÁF€lkQ,Cˆ>üQCCÇ0“vM[" S×I¢ß^7pÉ%~Þ6åNw›ÃJ¥u‡ñëAVŠh l1²&C òE,ÑÇhÖ1²IOr#SÛ˜‹þ}ûåÝ›¡×nškmêj»fþv¦´Úwg¿kGG&­ú9·.[¶ù¬Ï=*z—ë@ù&wÆ/gòˆÏŽO—& ` €0À` €0À` €0À`ôº26k“ÃLòãQØñ¨É^Y©¢.øxk‘O¹jª‰.šN8jí^PQDVÓE~îÛ$¦¼s§6öëGv­šs|¾›uæ­/ÁQ¯úçÑ?⪎DwÅëñUED_J¨¿àÌsÛwyü>“5!]c3n‚Xc¤®·rnÁ~ªOä…g¯ÚÆÉœÏ“Zö*£’Ù}{·"3úæOÖ $!7.mÕC&…H‰Um ¸ªmŠÉÖT4å‚ðË‘3 Ex®£¢ÄîjO¬¢Mš—mÿ^¥ÏëT¿k˜±F¥xîÍ;ò,Ó±&[&v^œKiVÌu–I’LêñD³Zü«5®Êßç¦8Ÿ/xû¡ä»,?8ãu=ÍÎc?2!ât¸ô»Ë°÷¼-Øðãf—-j.±ùôó]§ö;7´›†¸X›œÎtßédoqƒÈ솔µ•›×Vª‘ˆvèGÌÕÖ(ô¥r—…&âfa¯l;ÚÙŸqçÉ\þ›¥e{ˆv ª .2úølh³J­ÜíU­OãÙš1¶Ý§Ëv+’ÓzE/º¼¾þ©âùµ¿d2|]õÊÏl¥ø¹})ÉÏE€0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À5½ÈV²PÚ§.¥B£M†­ç%m¥¤mT}J²(òx©æH åWS‹"WrRláG x]-WmøO`Â?©ŸëÇû˜¹° ŽÀ` €p=À¦ž¶jäãõ‡AutMRDQHÒ¬™é·Óé>ýk6Û ¾:T¬AoFÍ„ŸèJU¨E"ØšÛ¤þÔ‰­Eùk¾?äÝü§é·Ë]o?[¨­Êlcs²é²¥ÎŸ§ÈÕÀãñr]–šÏéöú»ôãÈÎçᨿd—¤™ÍXÑd‹íOHº]µ·„~tµ¥>™ à¼ÌZ“»ãHû—­A¢#tÙFBÔõ½•´±ÌÉu4߇’É 9 åvÑë5Ü|uÃ7c©Û¯vÜ_Û!ûnDëÛÉ]Ïl ‰Q• ÉÍÒü·Ûr½‹ó·b›#T{^Ç;ãëdËãx¿_–Ñí|™ýoöþjó9_;ZÓêK¢×ÙÛÓï»>)0!ç"Ž­†þ6?Gbã_^zÖ"‡ìEæsÓY5£?°×ÖÈ&¢ÕB»DCœSUxhÌFS“žŠ½® 3ý˜ÌŠlĨÍdSâ2’Ün)d5ØC5Ò÷ýgN„1ôt¤UÊ_Ć[¸ùpÖ©jµ™ê¿:…ÿ®ä²69bü‹òZ•®X•®oÒÅKtýHaðÝn¿xã™ã(².ú6ôT9#÷:[}ÖNõnǬä›kœ£N{T/.7'O ŒÐ¶ürÅ;tlDù‡ª P$¢M¢tÎDãLÛ¼ º J ÇK™n§/]9YêΟÅC-ÃÇË9v— ÔÑ5µÑÂÚï.©•B‚TmHQ­b¥f5ò9±ÁfJòÌÕù¹Î{%XWæõsÓ⨎ôç{ç^‡¾ë:¹: ºWiØê6²7öìKZ¤RÛÔÃ¥±Ÿ›3R´GV8*oiDµªÇ wý¬sâWC·bfD‡ €0À` €0À` €0À` €0À­°iÈ–ÂLÖJ'UÉÃGÃ.m-[9*#˜“éX‰¨çÛK-*8P…˜ÍJ²~é'9ßf#ý./CŽ”vYf/oµ x]:|],?‰%‰jM_îl±Af¬Ö§– ‰%dŽG|•cã:ä|ÕñVñ'ž­­‡¥­¥\‹444?¨*ãÐèsvW>z7´ñ7sðrèjcÙºêjA$+ [nßß ™0½ºl.w(!´»Yº-.T,EÌxlÊÑ¿¢lðTÜ‘˜L›ÙãÒËcIËd°ÒÌòI÷/ç’‚"G! d{œ|wl¾Æ§C˜ùm¬5^;š•×à×ÅvI©RkïÆ©Æd·fœÑÇö?ç~Ô‘FÞš³oŨûܶ\~ý½zó4ºv.s|.³?&z×ùŠY½7Qb¯)i²^I³Ïât”.[ü*¿‰ÊaÓй,´§» \\0‘2°'”ÛuŠ ˆ™jN//‡:>x-™QuÌÈ4Õòºãû;–ûlŽ»i¢Ër§ÛÏ2¼Žƒ;^”V«Îª«,U&l•nS|wß$ue†ä0ÌÇ·äŸÚæûj*#ìÐEñgã®›C[)ˆØèßèsg¥¹ÏtP\äëß±N¾ã4¹½ ÉêÊ/úÐÌÖÈäsã‰ëÖ÷Ì骆À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ™ìuU ½úõ|QöQ%WW%3hUSã¾DZÂaV äFTI"n7MÊ1aû­.¢h´Ù.+¾º'¶Üå²|_±×/FºÍÕnÎ÷wÇ»½™“VZw¼‚öeÏÙ42G¨ð´âG (Šծʼ^,•È^Íut¢ú¯]YgŒ×ÎÀb‹š‚KDÖð0 ˆ,á“YD5ʼn‹H—o¾ƒ š‚´–A\Ës΋º„Ê2¡ôÙ¾¦Xó¿ÆÔ |îT|«Ü½t†Òl/.•v-S7~òŽÃÀî®™Am.¾Ž^9××,ë™nä¤É,v.Ê\nu5FÅ­œkU¬Øx¥$ G?«÷“O'ž\™vÔHØ”æýUNãF‹ŸÛÒc°ÙôÎkQˆ©Mjè{bõûй4ÝÏ JUœ 7çÙ£ ËÇQÔÊ zBÀ<Ûø,êOÍ^:úmþ&»uûòfAôÊ)sû=G¯°öZÓÓÙ4†|¶çîÇŒûoÞ>7ܹ÷ÈÛã#ê¾ÄÀô‘€0ñUÃt7n’Ë¢ŠÙ»DÕWD÷tãVë»Ùúo·.¶­Z¹s²Iq¶ü7nºÜëÂh©¶¿ÍjµÈŠõø±QÎF¹êÖ¢ÿ¹Q­s½'µøµËþU*2¥lÏŽ)$exÒkcöÁ ¦Š»e™ÍEH£Yç‚{Õ­Y¦Š4_œŒjêÙåßWÖH> JÙE[ÆÃEÍ¿tOU¾ã”&eBÀ±ÙªnHœ2íÜ4ç†Éá“En¯ ó÷1w¶ó3ÇîãªÚÐÕžGKïÓ›rKQ@ÈZÔt“Ì÷Ó˜ù¾ÿ‰×)ãç¸nGôŽ ­é¶´·3*AEcùÃ/9Oþ­­§|4òók×é2Õt´,צ’F>f+?ºJ;kgÚ•E …HØ$Ë5Ž^ú§cL†Ù480˜‰™”f<þ&bA_™™ÈìoD<1ãb£#8àê®ÐàÅ”Ô<2×Y§«•¦Ü,M em}ÔM‘hàÓ†*“\­^J“X¡5Û?á‘+EZ/õÕíIâX¥Hz[ ôýÃð}ÿ /•<ÈÒÏŸgÅ.Î]âü³Ñéht9¼ÞÞ½Mü쎻7›Æã&æ•7ìßÛ¼«•»/A·¨;K-/ÖûúÞA¥7…ÂN,¤zÀzQÌ®S™4&Ê/Åu74›Yðml…fÛ‘³]A²01â1ßqw°”ÖÀÖ7ró»úÖ(ÚÛ×’ª×Ð|®£ÎݳJ›*¦uØ#‘–$šKug°È¦XìW¯%±ÿS]'Õ{;ÌÞ%ñæOS…âÿRÝfÇ#Z„=G™9lN›£³º½—1«vŒøõ5'âãæ•bþs.ãjëÓØü:é}ñUüÛRn¼¢kZ¬ž…` [w¼e¼h¢Œš AiȼÑú²9;æì' –>s¯*Nw¤öåö«ëùR5›~¯Èžiþˆc­Ý+åúkÅïê‚/›õÃÉß\LôÆ{_‹SÚœœôQ` €0À` €0À` €0À` €0Àë6¤»õ³|ÙvnÛ©Ç<¦»W)nŠè©ÇñÏ:*–ûé·sÇ<ë·?gÅ*úú¸3Êø£‘òÖtzØšu¦AcÝU™"ZóA,½ÞW1ƒ` €0À` €0À` €0À`VòêÇ× hégâ7µU·ÇZG¾Z£mï"o½!"ä½ðˆo—‹z™ŸvôÉú>0Ñ‚ü }ÄP â’=òRODýòE'ùc»¾Qãß2ËÉûÔ¶Cì¾Nû~7ß%~ov‘ôÞ¼Ù?Lßדpå×ÀKâü=@²€0£;?L~#ºÓØ~¼üÈöõ挶©œ¥ñˆÅ>¨Àd™#ñøÏA{çº5Kâ¥ñjžŸO·ïpŸ+"¹òiÚþ›5ñ 6éU7N¦Ò¹£é«§¶á{YUÌ*˜ÅG *º6}EFåNÃ2–Ë„VÏÕ©€Xpˆ Ò¶Nv!&zÊ4áGz€À` €0 qðþýLÿ^?ÜÅÍ€\v†H¬h?I Òé„v&Î$†LRNU¤|( ²be LáuYˆh2 Joñ^뿪mªJi§.Zü{;4)¥‡[¹^£*C‹2Ù••á‚2Í K<ÊÈXÙe‚XÛíè¿&úTO“~R\~7«è=ÎìoÙè4µqñ(áб¯§«§‰G;KV¼öYб-´-ÍõÖVý«Øç$3ýP6eß13š¾ÙqÖ€® „< ËËòðI,wX¬0t5ü ZÆâo*LTBZ(ÊBÛÊRu/ ͹Ë"{ê’Žà·;¸¯fk;›úöéרû&£f¿âÓŽœ–`«¢—m$U-Å2DÛI'Û‘‰þŸÂUô¯ê¾oô¥—î|šõ ñß;ÑkxÝ*gõX›.Þé.ôu1uwxÕæ0_¡çïæ¾üØR]éàçjX‘©m,Òk¤e|¢GRöºà•×’y•¢R‘Ž1›rB·§µ¬e`ãöªì8ÂR†vôöíéµM¿6ÐJâÙWí ÚDàˆ×­9Ø»›9=V½¼ûW5%Å­Ù]&vBfY–”k—¡Y-3Zý¾u™ó²DÌöI Øt±½¿Sd‹äøï°ÃæøZ>NÙµÌgÁS³ò+»|:E¶÷œ~ä˜VU¬E-w¾7A N˜ÐRCÓ­›A¥æÈïIYV¥ 4¬UxDh!—-tMœô˜ SñõVm°ÒqÖa‰ó«¸Ë÷£˜ñ¤"Ræ ™îr󵬚ãd\M-M4ÆZ®¥Z œÄF_– ±]]íŽJì†UGÖ‘ñ³×QêyûœòÎ6W9çLÉe±ÍMM¾Nâ¸>O$3z.ŸoO6Þû^Bð<>,7]ˆÉeÛQ”~>?]ž™,»AÍuåw)ñÈŸq:LI­'aû8ÊÝ‹÷V»ëe SÔuLaüÒÕŸÏ:äjþ|>VÖÂTRɕڲRWêâ$ð2±ãÊÕhêN¦îBX£Á].À` „D˜Ñ w|Xƒl’ÛMTxEÚ š§²›ðšzîáʉ#¦Êo¶ºiÆÛñÎûíÆºý¼óÇâI#‰ªùddLOH¯‘ícQU}"+œ¨‰í„þ•þ ªt®hNÚ´*Z½ièåejuå³;ÑW½[ ,|ŽF1ÎTj£ZŠåôˆªy»ñÛµŸˆŽ°F`1Ù…«dŽÖæØÈÐdzOÌÜ;Qd{v¶C’ÒP!{HÅ–ÙÜæ,õxÛOY¶È·]‚!û=}jq>,Úöõ¯·ãöÁ™k€«4,ji>KPAIgdŽt‘+>Mj¹~(¬WtwN{]kݶ·=ãþJ½hi÷öð­lyº6'Z¦¦ŸJÌ›5"‹UrhØú$‘ bM#,¶½©Ë›÷fÒ“ÀŸ‹Ö×oÔ2œ‹fR-µÁmÇ„ý%±…òzx¬fÌoP1IѵÓÔ0Ön§C[‘3Ü“…ÞŒr<•­¶öº–hIRçiþá/ÔÉk~ï­^/Útbûï-m&ä1;‘!޽dš¢Èå|OŽLç=7é—…Ãë*^^£Ì½'ô}½fŽë|wãí}øƒÆÞL®R=¾&o"Z|q=t®Ùƒ–»5<ÝæÒŠ*× ·K)…ô†¸b4±gf§—<ŒRûœé¯<[ÅF¤Qº$¯ šÿ_gÊ×íôõ{~ÏìDÅßË~H¾•SùþLÅÞ¯ »vÎ×Ó†jªå¥ôèÝjQY myÖš¬êêËb$VÏõ9¿j9Ͷ¯¢ër쎌€0À` €0À` €0À` €0À` €0À` €0Àù¬Š.QU»„’]ºé(Šè,žª¢²*ëΊ¤ª[ñ¶Š$¦›m¢‰ï®Úï®Üë·ñÏ}Ÿ%x×*ærñ:Öóþû6¶öwÙ·W~Åm­< ¨ol¹’ÜæÓ%téfcÐ×eú”å†Ô|vj_Ö⫇výzö0@¨Zb7 ‘ pê$QÅ!Òì•¥2‰Øt¢(Ø““fö4]~ª”ÆÃvl¿ƒÇèt·9œìº}rçÖ’Xq«R³V¦WÕ§aÚKjÕ‰éÚ¨Ù<ë41gªÂ±3AóÍõ÷ºÏ s¾pìûÎôï_¹N†—’vºl{ÐÁÐj®… ÛÝD\\xXXÙ]üÔàÌËLÍÝs¢Ý \}|Ìå¹£c`$ѹPÆ&¢ò’@ÄÓt¨ÒÀ 000‚L]lÅêŒ_Žpá«´Ù¾×fn·nªš·u®ÍÖçE¸çN6$kZ‰“U±˜eG¬rÁ,sE"Fÿ­êÉ#sšôcÑXõjª5éñ_Küm­‰µƒvÖfæF¦.•ÁÜýjó®Ó}ªéj«-T¹3×}š®m˜,lY«¹&£Žï+˜±€0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À`ì¦,d'@‡›ìèn¦c'voÆÜk¢ÏbrQ2±Z/®Úï¢Í9*—¬m¾¼¦é¯Æl§þEvç‹{Ua¹A;~q¤Õ§Vûþõ,Åj$wð¨¬ûagͪžžßm_áTÌaoiszÓÉ• ºìݼ¤™ZªèëtºÝ£šèçJvf¹ÿ\ìþèЃrŽ·Ý5íœ:eֹؘäAŒ>Ë×ZºL75ÐG¤5a⟀©³u×Tc¤È¦´R$z)Ðxæ‘i2äÂ,ó›9úqÜç/E^£)é'ívaGgBéìeÈ•i|Vyó¿%µå‘R¤ôâ| ÿ “Ytêɨ’Ÿs}¾â©îžßfúíǸäŽV$‘=’1Þþ/Í{éU«éÍUEô¨¨¾—øTT_å nº$©z­šV¢ø}µ­Á-k}Œl¬û!™¬‘Ÿ8ÞÉòj|˜ö½=µÈ«ÌÏe°À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0 2ű`•[gÙòÐ0:òŒ¢g3”n";Žˆo»²fwºm˜`Ù=×té}õM$õÛm¶ãŽ0 ò¥ßJß°½9 Äô†Í{ÚGh¼†S*²ê5¤d¾^4„evÎ)ÃcáÖl(ì.5™ÌÓˆy ¯§¥$J¸ôZª‹€8þ*kúã®=èºhEzubxâ·å½b l£Öh?fÂö_§mx ÓÒ0C±s ÂãÒ˜×`!rY(Êêx;—F¾Jƒ‘xNív„@ôk€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À` €0À` €0À` €0À` €0À` €j .‘„ÚÍ +«ð¤M¿Wid{ÚÓ–-ÓdCŒ6,摃ÃÛ(³f2MXªê.4“7¿ Ö˜,JZÍ¿d2M$þ]©-Ã-dT†j²ÏéVxÚªÖX‘ÏÉ]Œ§&Äâ|ÓpÚ9·h:¦<Êš”ŸØüçóú9û.lºY»”3/å»s*ÜìŠkXú³Úʸè™ÚVk|àt àŸbúY[¢™—îÆB’šmo‹•šUÊi'ûŠ(I(¤b/õ=‰¶e9UGÛc/»víšG¦\> œ+íèxÜäI¡ÑRHÑñ¯V[ÙŠ–}*È•+VýÍ“2UUzÊËq«ZÖWº÷I#zyhøsõ-ÙÈüØy? ôϸ÷ØlÚû”9®åŽÃùFÊRoíî'k2Í•R…®zäSM5Žj´5j>s×w]}g‡b0YNu‘½<1€×íölaquÜð¢ãÓÙuA—žéîüAŽYgÊš¢íšxÙfùû44á‚j²ª¥‡Ïq½ªÙ›-oæx¦>KÑ"§Ù ß X«ñ{ïmN[ìq½ñ¿âäù1îbûk•!Ü=ÙvXëf+-œU&ÈcNžs¬jXÑÚ¹O^Îd›t5g|힯ȿI-Ö¥žf–]F濉ö¦Ä‡Zä ]«¤ÕÐ.b•ÂAçè½€;ªØ¼*zÌâ[8‘%?ƒòØùgÓÖïXKóÉšë¿L1EVÍ›ˆ’±CjydùK+è< Çô| >³Ã]Î'cª›ý›ôy)+uµûËU¨eqaç¹|i9,ª¬|Çîzwô7ñqyÙŸ¤ÛÚx™4i$4gV+$m;V mk`†vË'–âó$_b¤0*9NeuÌzÛ`ub¯³Ou4 6Ì—Ž\çd9l‚H8YG’©|ŠÚ@LÍäñ†äšŠ`ݹ$ ¯6ƒÄa‚‹È˜a¯.sš¾f”ü¤°5‹[fyè[±b Õâ•öîWý£é¯rjv«$¬‰l‰EÿŽ×¶”SX|Ñö/9æŽGÎýÏ“çú“Y‹gƹyW?‘©³­z…|w_þ"~á­Íætx{rÒŸBÔÓSSY5e¯'K;"¦u¹Aìs#f¢õýqX\ÒS„ÄñV:/¡¢,‡ŽJ$ÚÊÚ™r68Â[]œQë$°4å!|0òQú#¤ô:&O5\ý®ÌÙ³<±~Öù’iuìÙKm™Ñ׎ÝG2«ã[4RÔØ’($‘²,‰ë<5g33w®ãw¡îlvmóý Vwë[f'Tü-Ky5ojT§-6T’ä–É!¥À` €0À` €0ãOûºØßçÿËü¦÷#Ÿø` €0À` €S€ðêgúñþæ.lã°À` €0À` €0À` €0À` €0À` €0À` €0À` €0írõZŒ¾€#dWQ#CÜÓ²ªdÚLWŽ!ÒHƒ6Ÿ8Õ”¬NÃ5>a„˜hýƒðƒ6fº£¦éǶ9l=×Á&–uIß ë3¥XÛ2ÿÉÙ¨ÆþdhËQ,Ia%ŠHfd‘É JÇ7⊛‡Æþxò—ŠjkSã;ƒ.¶ŽSs+Ðf­©±(*ôx½ ›Ó–Ýgú^vD´/TÐαRÝM;ͳ©#šøÎÈÏdúÛ=”>šêÇëœfW5^TͲâ%8 Ù¤‹žQ‚¨\èˆAÖF¬9éšxo œwî{Æ™7IÎ_µ%Ô‡Kž­C-®¶Æ¬6¨UŠÎ¢?ã[Zé …cK M‘\l_ƒi]‘ÿbîË9¾óG)…W™]>3Ì›}_uÝŠ+k>íŠ÷„ö«ªB¾™½38jÁ€0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À`  ö«ß×aßí!m"¨'÷Ûà©ÆªñΜMãžQ‹rÉgc}ú{¡¯ŒŸzz5}¢{V§¥þÒÿ.ÜËРûL·Rh¿ üùveøý•âЬ®Iª~TJúÏ™Ÿ;ã¯ù1>Æ+£Trö¹T°` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀ` €0À!Gz{‹·M«šØÐ  åémÞ÷Œ­Ô@U€§=¸'ã%X2Í·²ŒB%§KÉ2,¢ Ñ“H>jß`5¯P{ÓcÝW•³ÔþÎu•N¨v†©­à7nÐ`÷4c°•ôÚ™²Êâ@fq+:5„:Hˆ¹d,ä~S–AbäǹäkðŠÉ>ä“p,‡§?áÔÏõãýÌ\ØÇ` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0 xüR;)äOÌB›L÷ć7{ñg«¢Q³Ñþ­—Äá¡&Îã’s¢×bIlTH†ërÛÔ Ùt-ìU¯kéüˆ›2A#ä¯ö¬GÉZz’|Ùïá#_ZÔñ9’5ìT‘Wãòk\ܾNþÆh~Ï~l÷jT«JäÕ¾ °è)mdô5?ÏÁlRš¾ÎUè­R–½¦IQ±¤ßD³Å,%×kJ‘Ÿ+bQÖD½Zð qw¯©ƒÌ¢Åâ&Ô»ŠÖ¶â7WHfÕÈMG¢’bFH‡&–ŠŒ41RkHšÁ¥çµ1/.†&Åϯ]Ï“vUš¬ŒK?jææþ6e‹¹Ð¤mDŠ*°X‰‹1Á,®²Þ¨¥æÉÜœ|w”x¾y†®ÄUjù+&Öî~å[OÄ\è»NÓ÷žë˜ìµrG¿Bþæ®=ÇÈæ^л¥BŒxÓíJ·Û€œÂ0ddººEÞɈ»‚ϫٜ(Ј`Ú5äÁREÙ8Šå7 ¨‹§Ñéáû©¯)'¢K å$ò¸}e=ymÖš+y׫>Ì£>å)᧘ߺY%cªÉéÎTt•ìIªzDG5ÈO*þŸ:OÑçw3¯sÝ+¹[~§’ëù¾›3G¥ÕŠÄéŸO>Ì;ôÑðÄÉ «¯VÛXä{Üø¥‚GË&®›>jÙë5ÒrÑãt]5rŽü(‹†ÎÕdK}yç]ÒU-õQ=õçž6×n9㟳œ•5Í{Zö9ǵ×"ûG5ÈŠ×"ÿÕþ¨h àš¬óV³à±^Y žZ¬’¡{£–)¾•¯ísÕDV¹ùCC` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0 2Å;5–‰¬%à`6$YÃ&²ˆk‹;‘.ß}5i,‚¹–çt ”eB)é³}L±ç¨{<¦Än(ï\:é^y"°âŠéüË·íž÷.öë×S¤Õ„’¦ÖNÒ®GÅšYý‘™AoØ0YÙÝŠƒœ .ŠÁ¥H€Œk$®æÎŒø‡aÔÁC».ïÅæòû¢–X Ò+®ê“ïgØQÔ»gŸ£®ëº¿°·{r6…ˆ;JuüÔÄþ$¼þu€œcDÑ‚åä‚UÓfæßÁgR~jñ×Ôëoñ5Û¨ßßÛ2¦QKŸÙê=}‡²ÖžžÉ¤3å·?v5òÿQã®§?z¼ðéUŽ…K+Z”:ùw¹ª·ë\veœkrG™§_C–¤‘ÏZ9Ü“#Y3"ž(´úMØ.  …F Gl~ÉW+†3s?¼PÝŽ^[;V Ä)ì‚>NwÎ…$HLŠKtÝ´ÌDÉ]ˆâ1%þJ*u¤¯¥Ñç,”ØëõÖ¤úP'ÅñËGðŸ=y/úlI$V)׆UG²/Äš_²SzÕÄñê"ÿK¹KcŒð¿eN’Ä–³wó8ÍeIëÜ¡Õ/M[#^—*›Aô¯ãôzú4˜úö4?¨sh%: 6 ¶ÜÄ{.ÙÒ³(ñÙ ¦-Þ 3ºL¢Ä”5~V4üìm±âò`Š LâîR~»„Õ~Gå¬Î޵ê>´Írܯ=˜˜×Å2£*É6™$µ¤ž³e¯5˜b–4ÎIæ¢;ë“ãÌÝWºŽ>ßAWg:h#æõòñoÚšµÜÖÉgvž¶ŽõhmÔÊÚ–†Æv&•ú_—2TŠ)dX’Ý4ŸefH… €0À`VòêÇ× hégâ7µU·ÇZG¾Z£mï"o½!"ä½ðˆo—‹z™ŸvôÉú>0Ñ‚ü }ÄP â’=òRODýòE'ùc»¾Qãß2ËÉûÔ¶Cì¾Nû~7ß%~ov‘ôÞ¼Ù?Lßדpå×ÀKâü=@²€0À` €0À)ÇÀøGõ3ýxÿs6qØ` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÆrÉ›ÏOë6ué\¤õ¯©A%ý3Ä>÷Àvßâé·ÁrÞÛá.ŸÝU?½·Üß·Ÿ·Ë˜Çü~lkþG³äÔwÅí÷ñ{}¢ü\ßkéÉéSÚúR´6lVûy ûá’´ÿL¯‹î¯/¯¶ ~oÙ Ÿý‘?Ûé>M_HB‹;¦á‰ÙnoªO8®,îBLÞ˜}°'Zµ±%ˆÂÊFBÍB;–7 F ®‘‡Éâ0íÎD4p Q ¹m Óã¡—IÛyV¯féý74•ïÞøhZ’JRÖ†ì¶Ød¢‰UðÉn¬öÆè™ð6üzkˆýGéQâañ{‡Ëö|Bióusªìr<²ÏÇaU§ÒÑÛÒætëàM¥O©s·+hÒÔ¹åynA¡gW/Z} ’nº§ì­Œ29ƒöVʹçKtf?>i!lB¦äƒŠ¾³,Æ(Ôÿ,“æ2rHLÚ¦GGæÄ[¸t^MÌV"zt°¥ñO+¤ÑŠýê=%6gªhGZ½öXl™?c³3%Ž«,+ñ§³,ë4uîÈ×:k+V¤÷¸»ïü+ÆÝä¹n£Â½-žÇçÈÜÛ×ä¬dMOÈ Nç¶¡k~|ŸÊzmåâÑË6æ¿1NX`ÏÄMî‡'–Šû!Y§‘Œ˜Æ#’à»-¸yH1;¸G–î7p{rl6] ¹çdÙ«¤¹U¹ç”÷çm9çžuûrgVÌW+W· ªÃjlÄ®O‹–)ãl±«š¿ËUXäö‹þø9§{ï9¹³Ïi¶6é`êèãh6h[w.äÔm¶)Q%'‚Ddˆˆj#‘ï²¹Š` €0LW¨„ʤ¢«yŠl«[åÉAùnz@Ëgðµ#'"Àùe¹Í£)f]Y[}‚Ê¢m‹CË*(ëaGˆr?â«$ÏêiZ³uÄfn¿ãZ±s:{ û)-iê¬YØ[i’­¶¬6ª6Zr¬S¶)äúý®’ì<Ó`â_ìùÇÙí|wûÎO9ÙådYJ+6ò÷µ?)”êͧ&Œèð&nžüô:,øïåÍ*¢\øG(²NhÁ€0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` @Ú]i©­³dÒˆÈý¥JXG4m ÒKÉÝEÞm*fp.Âel䉲hÑè™(×N@ÿ.™•ßTp:œÞN´ÑYµZ5³^QÖHå‚kNªõ´Éáú­2ÄkUŒc⳺lC'Í’ª&Ùá|×ßøû6îݶákia[Ùɱ3®ÑÓÏÃv²`ÙËÒM YÐY±b¶†-öÅ£K#F¢AfƒVHÅ™v¬†ìia¦qëÖz1'¶c(ˆÅ‰ÆÎ«è{"¿*%=P1H»7­\0!½g’ʊȆå~ŽŽ^¯s™ŸFÇAr¾Ž"^‰¤Ê­ Ÿ,ÌèÙ/â¥õ†Z¬‘®ŽOÛ+Ùµ-˜çøg¢9òG¼v9¿y¿/Èñ5±ÆùAÜ¥çÖâmu±nqêØ;~Êåš¿ÉɳJŽíš³Ãn£{mŒ\×r¿'®‘ðV¥vYÑ÷Ío}×Ñ™ä_ 9©˜ÔTÙ¡Q™€iR‘2†:.”|˪h«b ˆèü? b1ÚïÆ¼C– Ü »Tex›¹Û¹õ¯Q·NoºµY抵Èm-I-1•ætjŠÙ"I©Ý$ooÖ×5Ío?ùCÅ=ŸŠ:ý¾S©çzLµÍÚÞËÌ¿·Îi`³~ž§E&¾t7XæONzn©¢¯©jíxª]­*Z– bžMÑ™“ZŒ€0‡ÇrM»õùi7pÜG I˜ MaîàÚÜ›þšçí;.Õiqc×%‚äY÷é9³é×’h!½%Jð}‘ÊËÎl+^½˜Û+£TøóõS÷Š¿˜0`ï0¶¨ù.Ý_ʽk?O›¿×r<62xz¹šÚ<½^cU)MR$±ÌC6‚kkb[–Œw+ñíãêŽSªû LNü¡@n¬ÑÝ„f­œ’U¦¤c¨WÒp½T«ž^4 ö6P{7É×fažJuIbªxNµù6ªeôuìײùdÚPçèM—zEbI]¹ö ¤Y\¯d/­,lzJŠÈ_iÒ­y?O5|ƒ…Ñ÷ž×ÄÖÄ©FޤFcÈf÷|µ(ì:žÄ½vF§Jé#¡V±¥WjËd ­³¥[ dŽƒ'b$G¹võƒwÌÜ?é½Å’.PUÛX—+4õ­“ßešú¤uÙVßDþ:Zò¢_{N9ç'-’7=ñµìsãøýŒkš¯æŸ&|Ú‹í¿$þ[òDù'òžÐå‰iÛ†½ksU³[¿wáÙ– c¯oñž‘XüiœÔŽ¢EHæúœÿ©êŒÅʈs3Ùl0XôǬÝÖý[½|í´S#É×µõÓMöR—×"Δ)ÌCk:#oÖv(',†š3}ê.I®ªÉzØ›¶ùWÇ_SªOÃ/n¤ŸrClÇþ¦Å)x¨ö÷îËZ{ûÞ“?™}èðorû§É{oݸòzü½/Ú ’0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À`Ä’—hž’0Ì h‹CH“T3包‡# µr5ònElý<·pÔ›'­UKžSQ ´ß}v¶³Nµ´D³ &DŽh‘²5²3áb?ªfº'£¢‘²3û\ÉXö* ÕE_y¼noŸsߥo9Ò[ͼù)O-K•m/fÏ Ú¯†õIªZDšéY­Ó"ê}±ž¥Ç &ÝË_Ž¯Âø›d8` €0À<òÔïÇOM;ÔŸ¾–ýw­ úƒò¯Îÿ*üRƒI{ŸÊŸ1Ä}óîûwÁô_2‡û~7Äõ||?‡¸Îéu4OpêUþÓÉK;€Ú5éK\6# È*Ë’¢“µ”B¥Í@›×p’AÛn‹øìž2_]XÈ¢GÏÝÃ%^¤ý¨³«,±êûÞÇí‡fûg{+=¬"4`©4j¢eCUõ­1’š'€VNí‰ËfR¤“ùLŽÃ‘½<ôLq ¶‘Ñ!’°€S€ðêgúñþæ.lã°À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €FnÀuz¼½!âAº°‘ ß/_‹Éå°P÷Fß Xû±n …*šäšå8]h©ñ—ETynùþŽ#[üÆ~åH¡|N‚zŠ÷gÏZÕº¦ùŸ§|O£,*Ž‘±ú_“^‹íÍTøÉ";vø“Î}‡‹z- J÷£ÕËè›V.»+sŸë è Ì«z,š÷àê¨iFø©X¶’³ê’¼Œúâ‘’$Õj:÷$³/Ž­CMAm{¾ŸJpù—6¸Qɯ)洟ȸŽH¡†æä$²ALbt¤Ú"Ò×d#¤EŒ­ÅÇ’IÉÈý-Þ^z棫·—žÏÝ`}{š¶¢vmûbœ÷d³aðÍ'–íFQoƼ‘E›tGO·±xŸùÛ/¬é3z®ÆE/VÏô¬<߃zÛ’Æ]œ~“3˜§‹‘žuËYtyŽ‚ÇQ:K±NõîÒöÃßd݃Ú{]w†Ÿ}>cQÙ^ÎD=b\v¢¤ïä‡p™‘ˆxí"pù íØwË'#öÕ]øÕTvRkGRŽóNÄvñ«ÛùBöMÕjK1Gêh]$/zKNÄr69ðt~•–ªóQÃuj«zL›™/M½ŒƒB­¬û‹¦%ûŠüÝ*iWôz<{u%·N¿äÃm}Ç+Yg*Ž­*Õ£†KQSG64‘ª¶*¾âºÔ²}«÷É,vb‰~Æ*±µ›ýÎG#Y·z?8÷ý_‰Änm\Ч‹{¢’­:”ѦNí~qáÒ«û{.¦}Ì[×ÑÔìµ¶gٟܺIgDxÓþî¶7ùÿòÅÿ)½Èɧ‰ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀ` €0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ãOûºØßçÿËü¦÷#Ÿø` €0Àgù=ò‰Gø¾¡¤Öµ”[=žs“Ÿ«*X¬jt¿!¨þÃ[{Që=˜Äjxþ¯LÜÄÂqËvÌúçA…Iж@Ð7'x;nÿ¨5¤E¤æýе®;Š@Ò”ä¨(ºÓ+FrÂDdSy4òRªqªê<JD^C6;£–`’\´páâ ò•ê—}mËG²2îvÓ©Oz‹ØñÊ=Š„tÇ{WÚTº3!ÕÜŽE³£ðúýv(\ÔÜx,¢"‡ Ý9‚£ë‡ZfØ)NÑ­¤>ú|cvúµÙçâíCU9WTý?i.Ö¼}Šs¢|í÷¸CùÿÉÇÙÎÜëÿÇìûyëpÀ`Þù¼]ÓR>µ‚kl{Kï±(çŽ\U†Ñ¦„êËfÅÚDÙ4Ú:à›”W­[‹àr»³KtK,ë—zîÓDWD` €0Àw©¯vUËÚz­xëa-úé`W0¦&Q"«µ¥HΩ òÜXƒ¶[´CAJ s8X"mÑrûW(IöÊ¢£Û$ˆÀ` €G~ÞÞ.úÅÔÞÐvQ„u´½ÿ^ºïuÞ,¢oª¤¡ÝMZɧ­£®‹"ЂÂÛXƒW"“ª²IÎÎShçt¸Gp$FÀ` €Gy5âìl©Nµélå…³×~Ð^.e›U'aõêÊê ”u<4Ý­¥öuù'DT~ÙQjĶI£Ý ,°ð$FÀ` €G~«Þ.ûM0µG[E\=°.èW!š‘Tª)£R]ö-F؇VhÇ}”6Ú ‰µÛúmub¹X¦«”ÛêåP$FÀ` 7ö:ùwD}ô‘¦ÒO¬½‘«èg> š£=¥‡ïŸJ‡Âd÷Ü‹ö}~Å="Nþ>ß}ê¾À` €0ßY_.ìÃvvZ4Ø[^¾}ôr$‰ªéÄ£êÄ!ü¹Ç©³$ìŠ2áŠ? ãï]¢œ¯¿¦Û^ä !€0ÀÓ}‹´ÜQ|½®Æa‘‘;§i»>ÓkrñAÍθ¯¡'%¨pA&îÕ`‰EDjÉW‰´r£]Ù}­¶œ'°{yTB)(Q¶¬”’FÁžÝžŠò¾70-© ›h¶Ú'²Ú¡³ŽRÕ^SO•8ÓùÓNyû¼’` €0À#¼šñv¶T§Zô޶rÂÙë¿h/2͈ª“°Žúõeu Ê:€žn‹ÖÒ„{:ü“¢*?l¨µb Û$Ñî†Xx#` €0À ?îëcŸÿ,_ò›ÜŒà €0À}Іö^kì7Åe@Ëáä‚Ihuô§bšŽû{Äy>2*ð¢–G’J±ïªHL'Ãf‹öo¼óWÍ@­O9CåÂ|÷\]%3ž ë±ói„~.´ ®\Ì”=¼’JæE0qtÊoJ ‹¯-”,“¤D«"7»M‰¹vy[òCñ·HWs7î+ös›ÎâŽÑu©›tѨõ=4tAÙ «BÝ+ZSôGH•*$9Ì¢RY`QQ‹ÜÚÇÃ<^Þ}¿ûbرO!±/ Ýú‘Òþžo$ƒZ«hÜÜ ÔEDÙ’£ëj³Yìª"êH©¹lúÄ›I>_-2šœä`´|XļÔuk]£Gß.z©XIdçá”E3Ý—Qš~·c*–™<‰BcÄk³…›Æ›–8C”¹; ?"#ñÖ!6íùg`mOÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ81#ð‰—ºŠ½”y'òë y“£4†¹-Üæï–ŒK[5o$¢õvû2ˆ9á)mÊn4`\ƒmwá'Jë°?äóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ80Â$J:va'äŸË¨‰€HY™Á±ýÎnÔœ°¨HøÈ ‚'Þ%Wj±7ƒcADd»­ÔQ¸±¬Ù§¶¨ žš“þO?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À1‰·„H•“ —WSÿ$þ]f0Iô`ü*k‘÷9¹Xôª%)ì’6t[º¹V„ƒ ýèÂŒ&£wŒ].Ým7MMµä ŸòyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãwá$þfÅ{äŸË«©ÜZ1.…Fåë÷9º’q)ñXIɬlYMªî]³ *3[@ `Šš7$úpëEÓd€Éÿ'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À1ˆ„H•| 8ÄÉ?—XœuR)Üæã&VW )+’‘Ñ›Z¹4uxvJh¹Ò‹ñ§ <(IëÅöÝw o°?äóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßã”øA‡Íþ]ù¿É/—9/Ê2‘ˆ¿½w1±—æ=G²I„úš¹OBlW«sè¡÷¶øêü%5ûû} e?“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿà°Ÿ0ð2ilÌ/’_.bå³ßaùÖFǹ›”ü®=AQÏ}~•]«‚^Æ1eX õ[©èÚ©º(}Í6çŒ)üžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€tr Qé¬jE —y1òù$‰ËAŒIã¦{¤‰çãǘ8h)f*ýÛ½Tk·,_4_MÑrÕuQW]´ßn9²cá­˜ÆLÆŽòƒæñí[±bÍ·vuE³FmÑ»V­ÑÒ°ãDn‚z$’zqƺ'¦ºëÇqÇ+òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽŒ;ð‰3b½òOåÕÔî-—B£rõûœÝI8”ø¬$äÖ6,¦Õw.Ù†•­ ΰEM’}Ž8u¢Š i²@dÿ“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œp lÇ…_xt›ŸÍ§Í¿¸†¨zpýñô-wûª*§ÆQ/¥Jýåöø¿se>÷ji¥¯ÙÇÜûyÇúÖ—NhH¯_¡s‹RËÚ2÷–Ý,k:¶f²ÛŠ×›Ýé<ò`Ì,yãS«FýÁMÄ6tå5ÒÙòpáó$žÀ` €0À`Žò‹ÐžÈÝnúõJv638µ4ù£ØÅ7ŽÏCF¬/’6[‰ŸÑÛ&I Z]¿)hÙÓ‰/Ò|ßØÙ´xøŸ¦fÑÂé>ðÀÔÔéSvB»glÒQÖpJMbDK÷&ÜICµM+©çI P£ë*{“dyŠ+‘¶‘øÁ31ÂB‹¾.ÑÞQzÙ­ß^©NÆÆg¦Ÿ4{¦ñÙèhÕ…òFËq3ú;dÉ"a«K·å-:q%úC/›û6ôÌÚ8] ”^„õºëi׫¯±±˜=©¿Êþø)Ävzf5^üï²±Y1¸™šÒ’ù·G-\F¾¯KáøÍÛ7Ã=K7m×T ›Ú¾ðus¤Àâ'{+i'â~TˆXtD>fØgᙢ@÷ÊQœXÒVQ±îZ¾“” z.2Éã7GžAãeqSw5WØZÂtRS¸í™VX"½ê7Š¾Ô€Cl5tჟ‚¯è³w£I3|$À·Èµ(ËáË3dM‹¶ˆ³0^½Ÿò­Ð^œXšÔ½‚¿ÚF,ÄãhL‹Â"uݹpH¢1[mÃi]€:™€Ø W1·kË„O8Ž UŸÝ}£­™íªü¶,Îõu¡ë´[¶«ÖÓ¯ÓÔâü×–b³”,—sfê;ˆ…­#ÐQ²Iu‹&‘5AÛ1HP²Wˆ°$¢B¹Ðkþ[ÜÒ]Éëbi}¨îH¤†–Š|Ù¤âj[ÜàÉ×. l}Òn2Ð>“Ö¢¹Ð´˜€6`¥›&ų-Ü*¹ê¯’•÷^I)†õ¦ïa?–Ķ•“Œ’†YÁò—¯ôΈ ´¡Ð§ÖjìšÍ‡µ²`ˆH஼`Ùë?e¢àtš/Bÿ„?Älgë¿ÎÿK½‡åÙïÉ_V~çÞú?õŸå?¢¿X¾'öO¤¿P¾¢ûý¯åŸqþË€O¼€uÆ (|ùAÀÁôÁ£F¶$8‘•zD¡BOUA˜ñÃÙ ³·¯]¬‹f‘UuÕM$÷߀+¿¯~]éW‚€Ž”IìóRñ\nZ2¿ $0tR.IŒbå‹g¼ëghèNÞÖˆÛÝs±†YP=Ž‹?~Ôqèñ¨Ü°-ø9šÃ%âcóX$Ä>®Ù,R%3‘°lùƒ§Clù¢«¿pY·w—î„uÖÓ˜RöÍo°àY“ t÷¹–(fŽŸŠ`i®Œ&•·_åЃÉî8›5ws‘”l‚Ê(Éu’zÙÓt@Í[yD諞ª î¾÷ž£zá!˜“®ã3õ­¿“Ë,!2SQ(…C € ¹¥“^dQ¹öQHå~LñOd*ìX÷ŒX:r’’îOX{Hì}GrE$4´SæÍ'RÞçN¹ucî“q–€)ð輞°5Î…¤Àì±³…,Ø™6-˜¹náP5ÏU|t¯ºòIL7­7{ ü¶ ´¬œd”2È®„½ ¦v@M¥…>°+WdÖl=­“BGpõãÈÈ7Yû-£üÑzø—ü!þ#c?]þwú]ì?.Ï~Jú³÷>÷Ñÿ¬ÿ)ýúÅñ?²}%ú…õÜí,ûö\}à ®0`LxICçÊç¦ 0õ°Á!ÄŒl«Ò% zª ǎͽzíd[4lŠ«®ªi'¾ü^½zòÙãϵ6°ŠRŒìhÉe'hyôQjþÛ¯ÃÚ "íU!"ZŸ™ÙŒ"âÔ0¤4GоE-Ù°$U:¦¼Owº^>QzÖë­§^®¾ÆÆ`ö¦ÿ+ûà§Ùé˜Õ{ó¾Èñ úÅdÆâfkJKæÝµqú½/„{ã7lß õ,Ý·]P6ojûÁÕΓˆì­¤œ‰ùR!`qÑùý›`MŸ†f‰ß(V5DVqcIYFǹjúNP,Yè¸Ë'ŒÝx9”T×ñ—ÕÃãCëµwøYùSçO­ÞøŸÉ^Ãî~Ãöú¯¹êýëæ_ý%ò·£ù£ç/ýìÿ3ÿÚ°«ªàêçvAËŽõªÒNyĨà³Èéx|þ²°!/̳X€›ë^+±£L¤ƒÛ:}(j,È\™“7Ž€¼"ƒ7*$®ÀWígvz½ÒH¼b]Ù»Y…p>q R+Ú;3žÍç(IØÈ]oZÇ&µaÌõewF "%ZîIV¼ãý—ï;U䃥}(’E¡½–»Ø@%²ðnec##a–EŽ||%“ýÅ<°¥âjØtÕõZ´&‹‘ÚÈ+w¬ß¶ZA¢Ìè€3&ŽMcqé”<è‰LJZ Lš-&‘h`Ž8yƒr¡ƒ,ÁW J.1ÛRH²]f™8EËeTE]7Øóé¤r00øñél¨Àèôb,¤ŽF|ôX #ɘ0QóÓnÈpÁí\=zí}ôE³dY]õÓM¹à { ¾*)íìävt#ŠiR¾Y’^Ã@qQH¡­l“£šLZ%Ä1âZʘ†z —ÇàãA˵tŠ G¾ªù é_uä’˜oZnöùl@iY8É(e‘\! zÿALì(€›J }`V®É¬Ø{[&„Ž áëÆ ‘n³öZ.Gù¢ô'ñ/øCüFÆ~»üïô»Ø~]žü•õgî}ï£ÿYþSú+õ‹âdúKõ ê/¸ÿÚþY÷ì¸yÚ¯$+éD’- ìµÞÂ-—ƒs+ ²,sãá,Ÿî)å…/V毫úÕ¡4\udÎÐŽA[½fý²Ò `÷DØ×orzÃ×j@'cíË’)¥¥)隉÷9Êv3©ãt„ «Á@GJ$öy©x®7-_…’:)$Æ1rų‡ Þu³´t'okDmî¹ØÃ,¨Ç EŸ¿j8ôxÔnX–ü‡Ía’ñ1ù¬bWl–)™Ç€ÈØ6|ÁÓ¡‰6|ÑU€ß¸` €0À7ò*¬Ý]ëZ²à6B]7ìêµ÷öû…¹›§IÍ÷Šp/¾ŸÜ#ïÜ0ô[|Dþ럅Ïß×ìûÜO·›:ÝŸD¿§ÉZM´e5Û÷#ÅrTj‘}MÇ‚í~¯óY5p¸ç½ÚÌw1ÕUõ¡S&䦎 è‡8¤¬€0§ïz ŸìÝc ¦/ˆ0Ë"¯•ì;i4Ë‚mŘàIÅX&÷a/‡;U3lã–þ§„Ù-tpš©s¶›çï¡Áä/飾RcÜŠ•F)Ÿ0aê1QÎ>±²½Œî£(ð<|M9EË2M„¶ÇÅÓ᪚õ5û>÷wW›:ÝŸD¿§ÉZM´e5Û÷#ÅrTj‘}MÇ‚í~¯óY5p¸ç½ÚÌw1ÕUõ¡S&䦎 è‡8Œg[¼è—õ«v6Œ¨»ŽäyQJòRQ² 8æ.·Òe (¢Ž˯úÖnáÚ¤¢^ˆ*ƒ‹Ñ¹=×çøxïæ^÷¾}^öImìfÿÓ‘Ô÷±¥jh±¤-Ö‹{P¨U]n5|MiD&ÎÐ×—{6\2:¹Q¢ÏuÀ&G‡ÄÛ·GÉÃ8âM¬™ypíËz±;'Ìu ß/ÓËXiGSEMÐnÁ+õk…7í›j‹TdzœÑª:·á>vâpRVUÑ«ûOØÚ¿¡]\O°=ð¸YT²žÖKÉAèJ•6Uúº8÷i-Rêä3+ÁȽ‰Ó4Ô2]hJâÈ/#s 0î³GAXWRô³¿ÓÿÕ©l€,Ò1^Žò}#psA/«øþñý‡âû'ý<Ø–À4e¥T|+¯—L›³…Ó¯k)—Ì€‰É£[Õo½9FH8ÒäJG\G@ëd»×‘*<ÙÂ^›U·Ô 6ï_í?‹+ôÍë ŸøømÝ.´Á:µÔJº¯ÕòŠæÇµé‡Ôu9d¸},-uÖ±5dÓ9éÊÐhJu:ø¿'0en4¨eηyÑ/ê VìmQwÈò¢•䤣dqÌ \;o¤ÊQE 9—_õ¬ÝõID½U9£r{¯Îðñß̽ï|ú"½ì’ÛØÍÿ§#©ïcJÔÑcHZ­(ö¡QªºÜk øšÒˆM¡¯.öl¸dur£Ežë€CïN;Ñ{G¥øeÿÅ¿íþâ!ôïäß§þ³Òúè=‡ñóýŸÛ¾µ}Fÿ¥èý¿ÿ>q)&Ý?ü¬“Dõ}â<›‹Ÿq›'ª‹kÛØ«j YZI)Ç ?ö]ï¤"ÎWGw^ÚÔ6[V‰2O.'`¥åŸ±¶\å5ÕÁÔvf”5ÎÈô›´¶÷QºÓn_G©ã¯Û®Q¢5P¢ Â%÷³×j ™Ì <æ+N0—!áY¬º8n* F/HÕá³Ìl !JÞµ, ?“ F}.odQS*b®¶‡’Ö•a³ÂÃÊ(­hÖ317mV7dÍÕã7ä–-\(›^ôÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ßî¼ lãoýbãÿ7°&O°èW𪋵æ™oÚ;­ 7‘*ªªÊoæNÌs•ç~ò7øÓn9ÓP-ó`cŽõ.Ó„VþIûÑÖo02ø©ŒíÇgÃêˆÕ ã«QÄÐÒš³´!¥ÑlÆÊ“G£U0|ˆs/eß>÷/D¤¶–3éÈíƒÙ>ÑU4DÒöƒEò=WT¾©.H>&×Z—këý[ eœ¦ÑZà{ÍnÏ¢_Óä­&Ú2šíû‘â¹*5H¾È&ãˆAHv¿Wù‹¬š‰¸\sÞ¿íf;˜êªŠúЩ“rSGôCœÒVÀ(ëÎ+.[[x÷…VrHT5ÜËÊ—Uœ˜ÙÞ%ð8’-\%aYASQörõ‚Üc+ñ8‰2­DʧˆÅcÅväy7`¾ëuÛ*RÕò3ֻ܅wBü3àÿ´µ ÚÄ:íNRýªªøXä(W]$ǪÀ„–®gV‘öEXßv wZM˜ní±w65¨.óg[³è—ôù+I¶Œ¦»~äx®JR/² ¸âR¯Õþbë&¢n÷¯ûYŽæ:ª¢¾´*dÜ”ÑÁ=ç–Ejï•5ΚˆpTz2=ÁýZ¸u·]ÝuseÐl‚OvU4àή-¯#ðÒhìòù$šº¤Ï|¤Duô®?¨á´Y&ÈÕ =ðڵè¥ý8q+4£ÛÕd<5p— Þ­Õ\Ø»¡ª+¹ŠªÅg¹~£Ž9ÛûtÔ3/+ù‚µÜþÈ÷Ìd‡€:µnë^»µêæ«®Ùt™l’jAšÜZÑü3GáªÑ¡åÂr54µUæøAúqßøOýÃÒŠúáè½ëâüD>jüw~7þ¨õ¿ÕýYüEÿ`ø¾¯ãûÇö‹ìŸôðbX‚¾O,¾¯ñÙ݉•יΪ6f¸XÐêðŠa¦’H„ºZpD|ú©¬”iëÆG•KiBéoÊÇ÷d÷QÜ´X 1@÷#¬ò_ ó^íw&µí¿]á=¬£ªª¶œ¨k8W$‰\6Åm'§ºía3¸#ˆ?S³ª¼ŒšÓDÆ(6¢îXÄDHæ>¨.Œg[¼è—õ«v6Œ¨»ŽäyQJòRQ² 8æ.·Òe (¢Ž˯úÖnáÚ¤¢^ˆ*ƒ‹Ñ¹=×çøxïæ^÷¾}^öImìfÿÓ‘Ô÷±¥jh±¤-Ö‹{P¨U]n5|MiD&ÎÐ×—{6\2:¹Q¢ÏuÀ!÷§è½£ÒŠü2ÿâßöÿGñúwòoÓÿYé}?ÇôÃøùþÏíß Ú¾£Òô~ßÿŸ¸”“n‡ŸþVI¢z¾ñMÅϸ͓ÕEŒµíìUµ¬­$”ã…û.÷Òg+£»¯m@ê-«D™'È€0 aï}t»çÓÞÛõ™ÇZ-»ä-ØúWN;u6¤å· Dj¬°æVX%JFgK‰²«}¢¢šÙ$yƒšµg&äqWáõY¯@¢Ážì$²·þ¢¹]é§aH’“xŒ rWô4”œÂ·¯…5±Â¯Ú8”¶ÎxêÉ™ˆêùøž—|żr<—ÀåxÃÉ3Ž5QàÍÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ßî¼ lãoýbãÿ7°&O°èW𪋵æ™oÚ;­ 7‘*ªªÊoæNÌs•ç~ò7øÓn9ÓP-ó€^LúÍDvo§7hKê¶f¯« Bˇ‹*O†§1ºÞU°)­G¿d‹×c7YMÛ"GGŒõSo‰³m·×]¸ { ³¥k®æù}N‰ø¯BÆç•TA¯˃=MBò䲩*ŠšGø§Tœs#å58ß<ãN7Ûž4Ø ËÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ß©Úú§ÓŽÚR“eª„^ù’ZžÔªþ ¸ŠšHê±î8W‡QêÇÏÎk­×ÕeÛER|³~[?M¿o+M»,fÛÅ’hŒ”|z=5¨“àW7»ÚBËÚËQÚ(©Ê)KW®’¢H·ÑÔpÍP »Ýg»¹Û€.'` €0Àü力iºjiª‰©®Úo¦úñ¶›é·ë¶›ë·ë¶»kÏmŠã „2-òK²$(¨çNX`ñš¼fºÍÜ$¢Jo§ W} áÿÇ'Y¬øåÅMõ¨P ô%GëW¤6½d«W(ÕÃî*H=›`Ì`Õ3—,¸»Šâ7[† z7Õ¦š#¨uÑâó¢=„¶ ]võ:Y;”)Zªs›B7¶Ô…¶fÊ%µßSDæàª‹Ëå¶‡Ž Ž šê²­û:oÌm³¶q†r»Zä˜O쩈³BE•º @‰0£÷|,¨ÀŽðî§uâ _ÝuL~¯ ½oØËé´.Ø\éÙ¬~Ä™ö ±#w3Ól&eO¥ ©Ñ÷è¢l¼TpPcýÆš¬:Óã·§}C—ŸPµѹ¹xºp=eÒ»"Ø·$qêõ" Ч[ÀÌ\S©ëê޵Лïø®«õã0¯V0ZþÅñ0Ù¸Ξ.z¥íÏcøëøÎlÞl­îŸ¼ÞÏR¬úң݊msñ@ï6Ú…âàà¾ÜšÒÒâµâx™Î54œƒRšêï€2NËxêé×næ¬ê¤s$œŠŠmÞ[²­º’A!¯6"ð¾õ¼è¥=<;±«u ’$ýJö|¬’£¢DVÜÛ¿wÊÀKXl:']Äcl6 ‡ŠCâ1‘ŒÂÇ#˜øöâz(1 @ƘÍ[4h‚H ž‰§®¼’` ´l¿6. ŽM{ØXŠŸNdLåö Tå¶`JÎË•²U«„ä¶…› ¤ìÃβjü‘iå}!~\’\*»ÇÛnã`$ezCÖÝ6‚§{VîO«Ô1½o.†O¬ºnÅ£#jÁŒtBÎ¥æ5õ‡ %d([9 !Rv¡¤ F°naƒÔY·Ñ0>Ûô‡©›õ‡Ž˜óCÀxë4ô{A˧û’k3ÔÇ.tu©Îe¼Íuâo¼Û’ÜÌT›s´ÁC»I6ا ~zÏÒn²õ ´ÛJ¹s+e9âÄ™L'–MÃeÎµŽµxÆ4Â]j\Ó É‘Œ2"E¬\ iS°‘¶äˆ¢ {ß¼Õ`5u'âó¢=uµÜÔõ:+9‹üÉ̇3›BU ©6˜ å¤³z>«™Mäm¤‘‹×ÃŽ+PCa*ýøÇ›*Áë¦ë>ð©¯:&ŸìÅU/¤/ªú;hÕÆMXK!–»ºY&Y˜¿<¢«wŒHˆ08y€Å‡:fT1v J xÑûFîKõS ÝHé;Yª=m¨BÙ ZÀ–ž—Ø¥‰6Ð* µÆSfÛ²É݆t@®\¶”ÀpÜ.ˆ¦-UMv¤ü^tG®¶ ›šž ‡Eg1™9€pæshJ¡5&Ó´–oGÕs)¼‚­£’1zøqÅjl%Bc¿óeX=tÝ`2.Ëxêé×næ¬ê¤s$œŠŠmÞ[²­º’A!¯6"ð¾õ¼è¥=<;±«u ’$ýJö|¬’£¢DVÜÛ¿wÊÀf¶ïJzµyÒðž½XÔÜmÝCX-wUÅbŽŽÖ‹ÔÏà¡×C T²j̼B]WŠ€tèÑÒb„:t5›´™9]ÉúåÕÚ©P7•¿_«ö(Ái!I¤E I¥ò©œÐÚLÛ—šOì Ñ©4úÁ˜’h8k'²©´˜ù÷ `©™f‚ oÜ€iY]éÙ]ï[öbE÷[²¡„O«ªÖbæA)ø•¢ê8ò|ÈdQ3iÂö#%R%AäÜuÌ•!ãµÌ»aŽ^4pUØþ­ÐÝ·‚0®;_¶žFCI†M£[¢vS”Ãf¡[¿f"gŸ@ÎF')xÆe ²c'†ÉAlÌ“ö‰?Õ»Ç)*5St§«T•'6ëµyMÆÙÓövÒÕ­H´ÑÛÕ´öz%0R¶Ô²Æ/+™ÚG% Ql éÙü†DdˆfŒ…9|£M¢ÖŸ½;긼ú…¨ÖÍËÅÓë.•ÙŹ#W©lU:ÞbâO_Võ®„ØÅu_¯…z±‚×ö/ˆ1†ÍÀÆtñsÐí/n{Ç_Æsfóeotü æöz•gÖ•ìSkŸŠy¶Ô/öäÖ–—¯ÄÎq©¤ä”×W|?pÑÉ£1ɬnC ˜)‰KA–ŒÊc2Í ‘Ç0p(Ø#‚_¤á‰AÆ;t<ç¨,Ñó' ¶r’ˆ«¾›]ô7‡ß=g´£w59Öql>Ä·®ˆÈlvÉ U¨]²¬É­QBlÛc©VxÉe¬µo‹«Ë¸Ë]õj’Ihctx¼èa-‚×]½A–Nå FVŸêœæÐÁmµ!m™²‰mwÔÑ9¸*¢òùm€áãƒqoB¦ºŘöÜ&ɲ(hÏìÇHúÉÛä`ÿ^«—r"՚Ɩ®¦Pùý™NÙm$­˜²“1‰ÚÄÊ¿±@“³1¤” ¹C`òØ e‹Ôš7Ñ0>›ô‡©›õ‡Ž˜óCÀxë4ô{A˧û’k3ÔÇ.tu©Îe¼Íuâo¼Û’ÜÌT›s´ÁC»I6ا :ËÒž´tù§4 vî4bÇvÝ6–Ϭ«~Λólíœaœ®Ö¹&û*@",ÐÑ`E%n‚ÆP"E Lèýß *0{WÒž°÷j)‡vj«ec „ȹ–ÂI¶’M SHLv ŒpZbÖ²Hurø{•’â?'‘Fú ™ÜêÕ·Á“Sôë4} !êýeHB#ô<ɴɼê¼vÉ̘}‰µˆÙfSÇöQIc³’ ÔÅŠû’›—>lÀôÛ0|Avm ˆ/Z|vôï¨râóê£Z77/N¬ºWd[äŽ=^¤A±Tëx‹Šu=}[Öºb=ÿÕ~¼fêÆ _ؾ Æ7ÓÅÏC´½¹ì͕͛½Óð7›ÙêUŸZT{±M®~(æÛP¼\Û“ZZ\V¼O9Ʀ“jS]]ðIÙo]:íÜÀUƒ}TŽd“‘QM ;Ëb–U·RH$5æÄ^Þ·§§'v5n¡2DŸ©^Ï•’CtHŠÛƒÛwîùX k ‡D브bƒ†Â!1ðñH|F21˜Xäb3ÜP ƒE"ÄѳÃÙ ‹fIÑ4õ×€2L—ÄÀObrˆ4±‡ºÅ¦qÓq9(¿Tõ¹‘ rËZ5Ë2,ý`çŽ[ú¦Ú½oñ>3W(/¢jê»õê—Šõî=Õ1uøW=y‹Ó¡ºþ.­‘îBcV m^‚V\ôáY8¯“ úÒb%Ékª˜|ýÛ‡Gu§ÇoNú‡./>¡j5£srñtàzË¥vE±nHãÕêDN·˜¸§S×Õ½k¡6#ßñ]WëÆa^¬`µý‹â a³p1<\ô;KÛžÇñ×ñœÙ¼Ù[Ý?y½ž¥Yõ¥G»ÚçâÞmµ ÅÁÁ}¹5¥¥ÅkÄñ3œji9¥5Õßd–ñÕÓ®ÝÌX7ÕHæI9Ú¼¶)e[u$‚C^lEá}ëyÑJzywcVê$Iú•ìùY$1GDˆ­¸=·~ï•€ÍmÞ”õjó¥á=z±©¸Ûº†°Z(Å­©ŸÁC¯†©dÕ™x„º®/éÐ0 '£¤Åtèk7i2rº*“õË«´?R o+~¿Wí Q‚ÒB“IŠ“KåS9¡´™·/4ŸØ£Riõƒ1$ÐpÖOeSi1óî ÁR;3Í@߸` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÀYï¦Í„ô÷³ÚpK#6P VÂ%núzN±M‹”#¹}!k9 ˜V*+—ò`›åÑ" Ià}ŸpdxáЎÜ5ðßµ=+ìÍÏЋÖUWviçbæTÄ&+Atø¬¾y1ff¿Žï*°;TÂWX"äF ½¬ÏFUIœÞÃriñ}ùŸó¡Ødêjó²?2)ç^-Ñ~ §tíL";mLïVTš• òVF°\ ìÅÉq^!,7gÆ KWÄÜC4ÃWîÀ›µ’Y“;k²´‡wúè©n·utt ˆ^¬ûYë‘V3’®e¨Öu!°R(‰ºÖPÄÌeÔ1â+$ÁR=g³U¤«0vI[¯ ß}'Z‚ëÏlì(m]H\Hö–ž¶l[Q’ÎiÁ=€¡!ƒÐ1Omg?Ô|\^â&ÖWÙ‰ÐQ‰ŸâoùI2aP;1g\·¬{®^:Î^/Zû ëm±d6íW ¼>hƒIÙEgÒXGXÎG;7íRebOe–¬í èØ5t;Õª©žØv:åc˪w°áº{מ¾õnÎ0\—df2ôt +³²f–"›yU´Ž·9x‚о=q #© Þ EÁëawH)/¬<ÁÙ%l~¼'}ôj ¯=³°¡µu!q#ÚZzÙ°MmFK9§ö„†@Å=µœÿQñq{ˆ›Y\Gf'AF&|G‰¿å$@êùní¥Žç´åúËâÎyzÖÝ;ìg`úõjÌœöb¾­ÍLŠuîq"ŒHßаc0Rå-3K…ÒBæ0éô=»r'ÂÀÉ%’6ÄPh¾uâù®;EEÔ½Š¨ ¬j²º`1«AÛoDG`rqˆlиÿжà Ùmƺª*0»G¬ße[oÎJN|ÝÛêuÒmÞþ>N9é =5”Cî+pßdb±ë1µýŠò²²&Tí-½hA+V% “2v1êæìZÄɂŽŽ1 ÄÞ¾Ӎިýlì÷yºáòË?‚éå ùËæ¯yú“õ£¯°{ÛÜþ]ùpOÉß-|åò·¢÷ÙW¼ûo¾z±^³Ú^á¼Ç˦ÔçK¥õO ÏnòÞ}º¡jº‰¥Ú0 2¨Y6¼@Äžof–¯Øl0´6¡’Yã ÅËÄX$°1€æïPAÓà4ûO3ýÒZºîu¢ãÅpÆÑÒÛ*'Û‚ºw’(á«Gu,e•;ú·Mžî=S `e/iLëð ±vüêŽÚ³[Ú]¥¾…ù³3é×QÉö¾G{xaëLÀx95¿ëÄBsÚ~ÊJÒXV x½¨Òoõ4 8È8¼ñcNœ}®‰D«p&€¯1“ §ÒIÇYçÐ>áÖÝ›tÆCÒb– {Äßc¦À‘œA» ;Z=ª$õZ®m”n"ˆÞPWQŽ•Ý© :ˆÏ˜ Dz5ÜA=šê›*Zùê§Lìþó„­ “‚ö¼½iZ°IÅ$ÿ#\±X”k`Rhü x¤Ä®¼`ò:¬Þ(mŽ’!Ò_`'7I»3röºæÚ°º²{­¼¤,SG«5²£Ò¹ý“•rQì†Sšµ:m¹àRñðÇÎ’™ e³éXQ–¯ãm€š˜` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À5­ÏqiÓÖÅbÌŠ"ØÕ¬êÔ³”tÜ[‰|\¬}.%ºJ¸E’¤urª ªš‹h–Éé¾›mÆÜOVñóÛZúOáðõÔû®¬tñ­Õ~Çõ^q¥]`Yr½¬0ÓǬՕ=7Š#,§`Ü6&ù l•.å‹Xò’‹™™¢éß´ÑÃ<\v;Ñ’õìÂV}Öß'ñNëNKµMw‡•«y³{\ìL‚ÕòŸX Ws1a› 1ÞhÝøåehƒI¼Ðnçñôjúî_híiÑØÚ]zì׋Þ>އLÆ–‹3D­NÀI&§t´wˆÊµ!æ Éé)taI 2(<޵Ý©ÀW§V|;Þõ-—ÖáÓŽ»xPˆÀº×5Jv‚é`%;y·ª¸ÑÌQÁ3й8]>’™ôÒÍØÓYPãÌ^¯ÜD߬zßiòœ²b ú­ŠV•ýé\m´N*~f.Ë‚]Äœ;.NŠ¼Û†ÀŒ§ªœ¹ugýïRÙ}n8ë·…Œ ­sX¡Çh(Þ–S¸÷›z«Å8«“…Ðóé)‘ÀOM,Ø5•<ÅáÊýÄMóÆÞܨèÔWÊãá^LGtªÃé{*ÞÂòÃä¨cC]Œo±²()'â*jA%²­ÆŒÛmž'í’xø9«¸'déEù9ˆf¡¾œuŽ!Ó¬PU“"r-DVQšñ„€ºz"VJä+51'"ÙnÉì”Ò„N¹ÑM™T†ì™}£ÇUY€wàîìñ¢œÂÖö²?^Ç,ÞA5â¥iõ³·v}û÷cº×ÛLPöøtÔPÙ£¾ô’Vä÷ai62ì « êïúK¹ÝÊ¿ºxG¦rÊÿ»ªR’™:]‘=vÅæ´¥NRñz-±ðÎ,oC G""äjÇ JªCIYøþ%~Þ«w €Õ]_ñ9uuŧ‰(óû~g²ñý{ù ´-Ù±4¤Q™=’'·`û8„)ÔJ8€cãT“1xRrÌÜ”ƈ:ð 3JèÀ{À6ª~3Ys °«ºDxš{árß¾è+b[عïZ,®÷[½×¬»Öy¼¦§/aô—™M#ZsCVs9YKTo+šQÍh•ÌBŒÈŒ&Öv¹‰òžpôÄUñ1}¼¦;î Ýâc©–e:}u¦ƒôO¯èB£hÈî8¡¦Ï.ŽÇ½¥!w;øÚ†“‡·w]Å`ëDذ´‘Èid¬X%{ÔLµaHSu©÷ž¯*ªò iØuœ¸è´J" ×zÐ{ÅÇ.ðzʲYÛNTm²[®Ñ²»nŽ€m\€0À` €0À` €0À` €0À` ÿÙ endstream endobj 626 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [260.175 335.419 431.122 348.371] /Subtype/Link/A<> >> endobj 635 0 obj << /D [633 0 R /XYZ 33.853 921.043 null] >> endobj 524 0 obj << /D [633 0 R /XYZ 120.814 472.404 null] >> endobj 632 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F35 596 0 R /F34 597 0 R /F37 636 0 R >> /XObject << /Im1 631 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 640 0 obj << /Length 2308 /Filter /FlateDecode >> stream xÚY[ë¶~?¿Âò kE÷KhÓl<¤‹sö!AR4Z‰¶Ø•%—’ÖÇÿ¾s“-úpÛ<‘šÎÙoH*Ø6ÁæûÁ;íßž?|óÇ›0ôË46ÏûMVøEVlò"óÃ"ß<7›_½0‚í. Soûå6ôÊ’?áké‡_r\Œ>ÿØ…‰Ÿ$™ WF ËHa)Ãe$ZÉ-#¹m$wp\ —‘xe$³Œd¶‘ÌÁq1ÖFR1’¬Œ¤–‘Ô6’:8.†k%éÊHbIl#‰ƒãb¸Œd+#±e$¶ÄŽ‹á2’¯ŒD–‘È698.†ËH±2ZFBÛHèà¸.#åÊH` l#ƒãb€‘oÃ|aî§i¹ÙE98TPà£Ú™¹ßî¢4ô¦VqgÔÇmTxsWMzæYOíØ~èºϺ?ÈÈVuwëáx¬ú†?~ Ò`ÚF¹w9!÷”И¸zQÛé^|(Önj´QõDÞÛ-KYûæG™7ÖF©û¹7ÌÓiž˜Žª°­˜5©ÏÂø-“N×U×ÁìÈ}6ˆ†eÛ;GÖÀGM5U~=¾¹|å~–‡‹ðŸPä  ¾7°‹²p:´wèkÞÕãIÓF¥aâíú#þþýÜêºe’/ã©2“®;ð­ú©/°Cú{Ã?]xÜ_˜ù–ØóùîS’$ਫ਼;àxéÍ£ZHz”y{‹—‰:p{ê†éªD:ö'M½ÃfF+Ñ3ì¹UUqÔÊx^©z€Ï<öæIwz¤hDîeK`\·¯ù&|5aä¥w0Õ©%ø5{ Ü3ze”“+cïq[DÞ`XF}®Ž'šD\F$Oèa˜ 0¹" ÷¹Lÿ`$傯"¬{œ E2ÆHÎ o<U5{jbúÉ ;N”8† Mî2VxÁ„ ŠA‰Ù̵ZXØ–ÞÏ¿ˆmöp+°­‡n>öÜ_|ÞdyV™q¿¦T·Ì¯¹'<ú MŽ}¼ŽLsÔ‹Û•Þ/´=3îOz:HŒí0w S_‰„¡º«DžÜ ÄG}˜¢ÜÅT6æ°áÎÇï?l~%™ÐJm˜Ìà§aÕS[M¢·]H–·`=fîÈcšÁuPèiAe±Ä¸±HÝÔ"®Î‡– l„—lEн¼ SP€°,ZY‚?Ç{e˜TCAÀ : ep¢<ær•À1°/˜ŠCï»ví™ð!‚P¥¶–ݨ+¤ òöÚ_Rp`Âj)¨…–‚tŒM$`õ·¿LÕèY qMÊÉ-&Ñ\‘úî"J'1Þ*m˜4Îf_ÕʉXãέ‚T¹”œ— ÆšC¾Æ 'õH¨œg°8µ"À¡¬ñù”tÈnÑçܯÅ÷FípÃ÷»c5Žbf§ö‹Ï°ºúŒ5SâÇI¶@=àE†¸"âÀÓ|’Àî´,¾é‡‚Cé8ƒv(ûŸÆQœàÄÞ~îXbOèF½Ì‡ƒl( Ÿa†Q<îŒÐtIA^:ÜçÀUAh„*š#"Â(ö°Œ ×"¥Ž×D#%{n+nöêÌk^ å ä‡žéö‘nd ‚¯C÷†+t@ $?Ü`HŠeü‰)ÀšIz+Å蓤ÈdíÀœ@Bä%Q£öˆ'¤p5WlD†.ŽÖ4iRœŠ;:®W5°”Ì§åØ„ª®U§Ì²ð8d R€ÊŽ 2ÐYC$|rƒ Q‡™Ë¯˜û¶MQ‡ÈŽÃ®†“†+q!’ouíÉ §ÝR]FÂa¶äX˜…ÅŽì(ÙÃl÷= ³% ‘¾¤!Jê¾îæ†Q“‚‰Ç¥ô³$iOqwî™_‰™Š¹”ÊÀ~}"<¾zƒ¹”6(= ćKƘ1ïT4\†¢º Õ¹­¸¤¯ hð9ÊU¢ÖUÇ”ºE•›èÁ óiͱ-j׫.eÕÐ>jÕ5Ÿªk¦@©}@\{àÔ-gQ/pïXßYSœ¡×豞 £‹«lA~Åf?O3U èO3bÕÑi³tÍå0h!¨z­tÙmÕëñ(*nGHBÉ¢ %ûé¯{ØÑ£\ã *,¶J+S€ŒÕoœ @%+‰E‡áö®z „åœ1¬MˆªÙêlSÕKîŠ!å|™ßY£Á±7íRéèy=ØwNTÏY².ÍÚH;[ æ+Ên÷ÏžŽáÀÏÕKý¯o¥žG^½]w­Ê×íö¯¼Þ÷“¹TÕR,Y£>ô„"ðÅÇYˆWÃ…I|÷MK¹•ɸJˆw„×Õ¢w…x‰ ^ZÐYé•îyqérØ”WíÞ¿°¯`jè.ˆa½¸ÁzP²ƒ©@ÓZa9R©þ s ;똱÷¼Åg¨’TIC‚ä|K窫omô¡¡½ØqE•×üöb’À½…oÀ€Æ(dÞÒiËi&YÝÀjÕÌtÍ,‚Ðû¨Dß™ ëV{³Œ£Ð¿=;ð­¯û®ŠÀÏ£ìz ­>Ml †#ìÄo p,"?‰3{¹Œ\R¨±ƒQdFŒ(Ð^x¬"üÊÀg?ÎÌK¨øÁ6ïI@‰|«Üï-ø²º%ûfî1=)‰+JK¿Ì®‹ç@}È:™">ì<ȵ¦iîæ/OY¹> endobj 637 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [334.335 512.879 342.18 525.498] /A << /S /GoTo /D (figure.1) >> >> endobj 641 0 obj << /D [639 0 R /XYZ 33.853 921.043 null] >> endobj 42 0 obj << /D [639 0 R /XYZ 68.868 453.144 null] >> endobj 638 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 645 0 obj << /Length 2190 /Filter /FlateDecode >> stream xÚ­ÛŽã¶õ}¾Âjk†WQZ`Z4¤h· â<i°ÑZ´-¬,¹’œ™ùûžÃCÉ’FžËμŒIêðܯ¾Ø/øâ‡>ùýëææ»Š/„`‰1r±Ù-âˆ)®~El›lñëò¿\ØÕo›¿÷÷à’^‚e¬à‹‡Þå…û”Ý¿k·ËïðÞw…ÐÒvðïWkÍ“esZ­¥]ºm¾»ÏË=nÔ²=8Z ºp% ¥ý©vxtG»]UãB/Ób%–­û»Õ¹=Û!ž&`¯è÷ üÄË}[çmëJä{±œ®…fZGÄov®=JFDCÛM~\Žs‘¶yU¾›jk¤â5©k-)¿EÅ_Ü>/7ùÑýܺӜ†mÂk†VæÂl›ƒ–Ž®ÁËþ \ÁŸ³—à Y¡ɹ­ŽGWníšáÿèµ¥mú„È °ÏM9ù™]™=&qdYdå¼Ä`§|"nìŵWÅ-·Å9{T\!-³ÇåC._cë6ýc¹­gM­X,õ5Á{ËŽE–Õ®óÒLu1ø©pmp˜pµE4·¨<⿸t‹ûCˆÒ”‡`A‚+ÆãdlùÍH.Ý]Šth“™*à°Ëp~›­züý7w¶‹;:CûôZßÓVpN‹^èwHÑtîMi9i\Ç'¦ºi½H|œ®e,ÞŸxkMLË9S?峮̄é!¡ Ôèk°ˆ;ïÄ ö. GÈ0ÂÝaQ¤MKŸ^ÆŸÔ1KâÞ€]>Ë£âÌFCÙjmÀìÿÚµÞ5€TÈòÉTFqО¡«iöÇÊ@Þö!Ù¦{WÑ'OTbäStöÑSÚøÔðUYÜÓ*¥Ÿ“ÏêUMŽáAvµ×,¦Þão·ô{¬ê@¯v{ @5ísbÖÕÄzѼ›ó‹S ”·x ù’Fá=ø•ËmÚø G·‡TpI¾Ÿs³€ŒD _}F!ðª+_pÜ¥ì@)ÃÔ„! (C>È}\fsBP– üI!ŽäØžÑyÀ:*…^p`fëë,žÆ&ÄDáÚ¶pÝ<—Y‡d_‡\ëSÍ=9ò%,3&3÷—SCZÞU| Drt¾«Ó=è«•NfSõN7´±f²¯¦_À(…c§û¹¸01ëÃ"íøš¤­!§ $uð¨SKÛ´™¥ëHéûòýææ7>@ÑYhƒŽì"â’qkÛãͯ¿ñEÁ®L%ñâÖƒŠE ^+?ßüºÀEK©pA)²¡nm_¯H­"–ˆ>e…̯ g2‘c›}ç¶çÖ=Ú=ÑÙ¹™vY{Qx›ÝößÐÍAÑïGõZaï–4úÚ?AÎfy<åõ¹Äµ^®ËJÚÿ~{È·:rÍ}CQ¡æ~§S2ÇçëÊé\wHùò\”U˸«¶y·Ç°Ã_/8.Ɖ ª–Æ àc$ÄÀl2 SºOæEs…=-{ÛaöQú¥Í©F[ˆ}«ùòã*†\’Þø5õvOÖ—F3A3²¾«ëªnÞ‘åîº:‡ëP‹ì’.â>\|›E@E2¢¿‘sJɃÆmÞS¾É9ØušvŸÛü3gí]û@ñ<@_{Ÿ‹•€b6×€_‚ø¿í³±¾­xä ðÊÇøeŒÍEÖÄ¡þƒñâý]©‹¿+¹,+H)ŽÖ-5¸L»E×vc½òý‹˜ö®tê´õõN¨ƒ‘Ô›[ß›Ã.sM¾/;¨i/íé@‘?—GT’°8Iž*@†GLƒ  £†aO¼ªÁ™€ qAA “w*‹P&mxú¡𠱑`ʘWñˆJ˜Žä‡Oi ®™M¢7! `:¶cª½Ç>(ÂŒd†ÍÇ\I,IÌS–” —o#„ä–Y…ð#ÚC² fÅH¿ YèI,àxÚbÒ–èäm¨š„z¢âªÁ†3E#Â@0c8py}1ܧÙJýVÜ?«eòŠOº«‹zô¢Í•×6 ˜´Š)1 6*³IÈD40ù •6ôa˜]2HOÐ3@¦Á¿»XûÕo`¦(3*íˆ)o3v‚.ÜZP®†n“'¯³S ‘E—OØÉ$“ØÎ›Ë¼ ÛƒKiŽ£^/p㺟<Ò¼ Í \-an=R·Ú%ÀL^»)/UF>\ÐeZûmøq[Õ0:v fÐ*œÓ³®zîüz {ØÏë^¾bHJ‚ÚÔ«T¯ÉŒ \båéëÀ“þæúá¯çýFþ SeðÉI͸®æfÒ=ý‰á'jò}…Åãsã2l¹¥Á¸À M`UMß!Îè ïhñtÜÅâ DÞ)TŠ¢¡­k·,ìE½‰=¡áÇ™öƒª¼ó?_ƒÝÃÅЃ·tZî]ªU÷*Ò=}¤øÞ†ŸjW¸þ}ÆÏSç%ø¡Ÿöï+ˆzæ}¥‹šf Ÿ¬z™éÚúž¾!óº-¾. L.¼a^'ø‡kÿŒDãÈ¿7楣MÕ/0„âîõ  p}Qlv0u 5-Æ2‚wF0nP¶ÇF3¥9âÞ±·¨zš&ý«Þì|Cm‰‹Õðûºñ>¤nG¥cñXM6"fVŠ· A"⌫θøLßC = TúU4ùCiŠG:¨(ÃQxôJÑÂxÚÂøÜ¾é\ï¹hãơòφÁI z“ª¾v³ì×~ÀEyó¼)umÀõr.-¬ ¹” /a+hËi·[¶Ø ·WŽ/—Æ8øàG_ÛÍð;f·ã–™Y~åxzgv·ž0»~%·³‡›þøÃàÎÀˆcG“¢_$X¢`Êéj ݈ø?¡kRÑ endstream endobj 644 0 obj << /Type /Page /Contents 645 0 R /Resources 643 0 R /MediaBox [0 0 595.276 841.89] /Parent 642 0 R >> endobj 646 0 obj << /D [644 0 R /XYZ 33.853 921.043 null] >> endobj 643 0 obj << /Font << /F30 591 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 654 0 obj << /Length 2993 /Filter /FlateDecode >> stream xڽ˒۸ñ>_¡\RT•Å%>}K²ë“ª¬ã™Jâ8{ )HÂZ"µ|Ìxòõé(RÃq’²Ë'Ðot7­ö«hõãM$¿¿¿»ùî•ÊVJ…E’èÕÝn•æažæ«,OC•g«»íê}pw°ëMëà_‘ŠÛ®Ç‰ Ž®p³cH?Å;ʸ;¯7: låj»+Ôz ‹Ãi­óà æmƒÕÁ¹l{WýFW3x< s´y8–½kj5õñ‘·hÂΟïþ|oTÆqʼ5ÜgRTegaŸ ×›ÄÌ3ÂwÍñØà ®Þ3Hó  ãá¹m{·•]Û²/y„4á¯-+<å Ðÿöþš‘Í0Ï"¸­_«»¶—+Ÿ¥Ú.ñäÏVb¸òïë\¸-JáØãGI`?•'> &L¬ŸÖHiͬœèDl¤>#z`6*-#¥´@Ìòyœè¥P'«¥ÜÕœ,\G‡õBëïvý2OG×õD•.Dj8`1ãh×´<¸PŠ3/Š8Í/kû©ç‹GO-uv×"Ó¸€2"ÌÖ•õþ(è'Û ¸¥<»_ óUÖ[à<ŠÅ ap,ÉÃ@Nâa[p¢é–EÒpœõÁ¤¡rÀÔ!ЧŽg޵aÛ²wà¾m†sJÓ"x-@tœ=¡YIygçŒ%yÈR7ü+’Êó‰¤hT `PLˆEøb‰>Ï© ÁÖ•e|”üÝ+c¦!ÏäQ˜å pBDŒ3‹E˜FÆcø«..3ÔVH"Ù˜" MžÏ%3º!Ð,n¨Ó µ÷®_§ 3JÄ(ðAÂ@9à”<…pGN~èЯØÞ¡9ŸÇ€Š°œ„¢ÔÏ)pf>p2å* “¤˜ÓýÖöCË!ŽAÜürμƒãp ƒ@øvÜÁNŠ#ŽÏÙÄGi×ÅGã,cOFøœ@¹bèðÜ-Æ06Yæuô—·MÏÊ€°&3u{>ØÖ.i:Æ¡?eúøhEïJIc=Ú6ŽËÖ2SG0<ßä*–Ëg€·r"=g€=‘ˆöa G£jÚÖJh(hÀ2)C+oÙÀ,Q?cU°Œ°—ˆ6¾ÿ ÃhÊ;¨?6°]+xüy7›]í™Ë †ùèæÐÂw´UÍÓßòy 4›TÞüãÿ¾clŠˆ8ÿç¦j˜ÝŒ ì]Ž¥7Igwާé$M{’ª¡m×IغFÝy¤¯õ͉°Á=1º|Npƒ42mBcôÈŽ¯ŽIHþaÖÙem¹uC÷y’øp&È|1AÉç zýýÿNÌ—K'ý<1}¹÷!/‰NM+H>2²XQtÒo&É4 2 >Q±Oý’)ñ°|*»ŽGH}k+~ÔÊžGô@Èíýò“C8ÑL.K­(|à˜oÆóeã þJ±g¯ò.¾—*ã$½ðÿßDl¢PçéW±h6—ÐSÌBŠÆØÃ©¢|íð“Æ¡JÆwÈÕ=àm^‘IB£‹¯zŒú¡Ç‡m·ÕóÓ:Âb¯ÜU›tdß%'>á…pXÈeƒ†6!Jú2~ÉáÜÁƒ©tühk (ø †'6̺º´ ÆVÁ­°—í‹ßëLèÐ:Téì#›Â&ª”<0]Ó§'2:PƒJvÁ%]„£Éà wêÀãXúÈXt éå7F»¶9ñú··›7xû4“¹vùy‹cdþ¯1¡VoäãŒÆ/8ñí‹x4Øí-Xâÿv¨£äyÔrefäð†ö¬9ù¼ûØb8Ø røEq ‘€Ÿ¦Üwµó‰ÒùeSœWu–?Uò·E F^¯ûu™K+zÃ܉»âðÜ -fPþÁ-á‰wæQFàd¿“Íò‰ÁI¶²åÕṇ‘Ó:̵ªN7ïŽV[X/ M‘¯ñ´‚Ê4Œ~$:®noþÊ£ÈV)èÕ²[åšz)yꨘèÔ­Š°HÁéH›q E¡ S%b…,ÏåGù´d"ÃßÊãàCkL6YßHA~Hó ÜC"€­i$\âT6€ßÊË'~C¯ëò߈ Pæ‘°ù¹}æñœ“"*Š=G±{ΗÇÁñ³­/† ´b6²Kü5ƯH§ycÖ3<çBS¡@¤Œ;QɵÊÿ›ò endstream endobj 653 0 obj << /Type /Page /Contents 654 0 R /Resources 652 0 R /MediaBox [0 0 595.276 841.89] /Parent 642 0 R /Annots [ 647 0 R 648 0 R 649 0 R 657 0 R ] >> endobj 647 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [480.613 127.209 523.408 140.16] /Subtype/Link/A<> >> endobj 648 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [369.95 112.763 376.675 126.887] /A << /S /GoTo /D (Hfootnote.3) >> >> endobj 649 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [465.645 78.66 523.408 90.958] /Subtype/Link/A<> >> endobj 657 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [67.872 65.055 104.596 77.553] /Subtype/Link/A<> >> endobj 655 0 obj << /D [653 0 R /XYZ 33.853 921.043 null] >> endobj 46 0 obj << /D [653 0 R /XYZ 68.868 211.974 null] >> endobj 656 0 obj << /D [653 0 R /XYZ 86.801 93.548 null] >> endobj 652 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F30 591 0 R /F34 597 0 R /F23 427 0 R /F25 604 0 R /F7 605 0 R /F20 422 0 R >> /ProcSet [ /PDF /Text ] >> endobj 662 0 obj << /Length 2357 /Filter /FlateDecode >> stream xÚ¥XmÛ6þ¾¿Â(P@ Ĭ$êÍöC$wmƒ^.kä€KƒmÓ6±²¤¥M|ýó7/¤,yµip‡ÖÔp8ÎË3C†‹Ã"\üå&t¿?­o~xå‹(«4ëý¢ÈDç‹~£"_¬w‹ÁúhìíR&« Qm£4 ê=Sº£fB×wukÔm”L0Õmœ·qÔå#޵u3§¦Ô']áT§:SWS™ŠÞ»£Ÿ²ý¦­ûÎTZÜ.Ó0 ~v¼g\÷Ì¥Z}ûiýËbå"MWð›ˆ$ÉøU ª'¸ÊV«Ý>âU°W'SÕòÔgÓ™þ¹5°ÛÉ—Ý-ÏÂÙh‚U|iüÌ´VoëœnÇŸg2@Ï¿‡QÒZ§‡ízÐôDàpñ°ð£_oàßDýWGÕtô”2 üÉØ`ðÉNÂ`2 ¾UÕ¡W7³¾-â€]Tº=9@4˜4ÉdðdqìŸMY²˜S}»ïÌžtýá”ãx‘Q*Va ¢HË Ø¬$'ܼ^ßüû†O-’8†¸’‹<ÍE²JÛÓÍÇOáb“¿,B!WÅâ3±žRd+\V.îoþÎ!:Ý2‰!6£„dÅ ‹6÷4}'§ä4¨Ó•ùÊ븯[>$ø: ´)d’(YœN®¿(ŒU4PT@h´E€ƒÚ _ð[;½,í Èĸ‰óe‡âL€Q¦T›Ò-Ä(Âß—MC fpõ2[®=¸€xž"¡/Erå@¢)Ý:Ó•z7ë¨<¡\ý©£òR ‘"LVÿŸ£ŠXÄI²bQ€,ÚøÑØg¼$3±Šb¯ pn‘±ÈA,»Å9ûÞT[ Ô ò”€Å9hó0ØPÌ:òI=P&㸷š9(u2_0x}¾_¾Ci€qf˶¹>Q ‘´J›ú±U³gI"!FŸÏ¡¾Ô€²'jWõÌ2 ‹`Û·­;ayfÒQYtÈM6®™ô ÒÓU$œâVý1ëò V–“Ë/£ªÙ$Œ%óÀôØ=Ì gC9¹äÁ2ƒ€ù©¦ÊZB‚ƒ¸B'‹˜£kÔ‚BQÎ/c@¹ÒlZÕ<$~úጷÓ-eF,«NX»ÌÆA\֜Ќ}é,‡´ê~Óðù ö1x÷7\ü KK x~] Åë!ÄòaýëÓ•9œÁräëmg¨ÕÐ唊=Â)l¬¹WÁ\‡£> *œ¹Š™^Ç 2a›AS;mÍ¡¢ì2eP›¶&¼7;ǦxÛ/”›#pÓ^mõ°|¬óåš!+›5F”TÜ¡àzÆ:¾î¨:Çý õ0nÔe=ܦIÀm!ÀˆgüÈG( 3€œ;q“Dܦ‚°)ùƒ¤¡éÐvö ¨Ì*ñ [Ë_CÃc†öÞ2“Eð5„¬æé“+³=¶˜ši”ð8ØÐå~ªW[¶²¢¨&:ve8Ø‹Ÿðˆ¹”¥¾@~ä/=çäØ >[‚¹ ¸n1™àì¬ ³÷}É4°ë”‹Hk.øTe­¦ÜܔƋvý+ÌÌÓ"® Öš àFÇIH35hà$_"iÆs~[ºøYÒA0tZS÷–  OßzF66 †5+@ÑÐKØÒÖbELd°é;ž3î·tñée³ëÒ^ Ŧz«J,81$åÌQü’HB¬W;x9S¯«¼‘`ˆ°gugù L‹µ†ñEðAWºUîêÆÖ¶§,wë<ã¶æý!ì€XO‚O¦",Š?)KÏ6A;¾³å®ààn|,˜ŽúTް [aB’¤pAêxÑSC! óð‚”Iqå¢Üøw@=ÅpÍà‡V5G³å«ÉµÓ®±:ø aÕ±wéښǠ{ßLú"Wüp ³o„ž@G9pVf ¥ —’¹å_¹¯wfÃî¤r+;\& ÙƵŒãèÛZÉP&Ï´’ɨ ªškm|¹fçÔ¼âD]P•ý–Ž®·üÉ4‰XFÙJáÕ-ÉVª±Ç¡;ÄPž;E–‰p8ì¨nbyª¹Ü01"¯H'Wš\›šû6÷óÕ#D<{1n 7_Çe\-¤Ò«|ÁŒ¼éQ[ÅÚN¹ö}óÖy@/÷­:Œì;ޝÉÇc?¤`˜ŽM޼ee½ ²d_Úÿ©ßé=wÜè0‘wÏåw¿ÕFuå`÷/wäº9رÍ®ªÀùï®ÛwÚ.(päpØj<Ö˜÷á î‘:ŽaY<Âf\„I‹«ðzLßCfFÁWô«mÍæÅwn-îLd:}#º{WÛÊ+òÂ)HïÕÎôÖOõœÝH¨¦¡n3Ä]^ÕeÝZñ^#’>·–L#àzG«¼ {é66çV0'§b1 ñ+š»¶êxG^- n½­ë‡—ôVâoøþ¾vÔËbo³ñÒø×þ³®O´FDO|?Áàï³^®÷ûûm«uu·n{ˆßÙrá Œ¾{£J;ϵ7¥þ T¼û3ä_ß‹d'šêðÛù{¶3ªBÉÁ¡2çPó}÷±{daøiêÄq1~ÎJ­††©š-êC,Œ®Â BÅè!?J†‘½jÀ¯=‹VvJ(†¯ ´ÈI©À.×òa‚[¤;ëékS&d.=àû 1[ßVP‡ë.ŠD»[!t7q*ÒëîfÚþië’O¹ã@Ym·ºqãé T=ÏLòï)ª=ôÞTWø  'e<Ð}—@·påÏå׋®j¿(Û\àmþå2އâÿª'©bűïì‡öˆ'ù'f&‰ZÇ~æ‘ÓF'õ±8Yo:e¸2ÿæT4ìü“X½çåáÚa,×f~£H!C9 üR¿;Ö1¤RDÑÐú^ÏÁ6ùix8p¯‘,D*3ÜSd¡Û*Ê&L¯×7ÿ;Xs endstream endobj 661 0 obj << /Type /Page /Contents 662 0 R /Resources 660 0 R /MediaBox [0 0 595.276 841.89] /Parent 642 0 R /Annots [ 650 0 R 651 0 R 658 0 R 659 0 R ] >> endobj 650 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [67.872 753.642 294.883 766.594] /Subtype/Link/A<> >> endobj 651 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [376.733 739.196 396.605 752.148] /A << /S /GoTo /D (subsection.A.4) >> >> endobj 658 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [359.251 640.732 402.046 654.68] /Subtype/Link/A<> >> endobj 659 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [424.562 640.732 452.885 654.68] /Subtype/Link/A<> >> endobj 663 0 obj << /D [661 0 R /XYZ 33.853 921.043 null] >> endobj 660 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 666 0 obj << /Length 2877 /Filter /FlateDecode >> stream xÚZYãÆ~÷¯˜7SÀªÍ£yðƒ³ñ&ŒÀð b ÇWjIôP$Ãcvµþó©«›ÇPkǘõYÝU]ÇWÅñÎþÃ_¾ðW¿zúâ«w‘ÿ*ãðáéô%*ò£‡~ƒ,}x:>üËû·¤»ÿ<ýÍíƒMÑ|4³fhuYÍG\þÕ» ¯Š´ c·ì×Ý>ÌC¯àŸ±.ÿ;n—GSïÂÔJ8X›NVôæÈ­¡áß¾…ßÔ3‡òtÑÈ.B¢.®ÒjN²ÉN!ÍÊžTóï‡KyÀ/«†¦3Óv`éa/Lì­´N˜•ÎË^/ ¯¼g£x5pŸúÉÃ>„Õ~Æ«.‡ ¬“”o¥“ÄëÇ÷]3emÞìö±WÂû^…Wîú¡ÚÞG–¬3¥bXÑ|)û±¨Ê¾ÊFÎk âóyÇÜÒ’}~¯å«FYN: Ö>Ÿ·^5È”Ž»hLõCYU,Æ*ôÃ¥ÌÞ3[穊}G±m^ºâ¶©O‰ÊƒÐ®S»}ùÞÏ»,$¹Å™whÆêÈÍ_Æ~àVÑó¯)ú²ºqûRìÂÌ{±"‡‘δUq€'ݸ_ˆ,çéo_P‡*šä÷Þ}“\¦Âȱû2žò_׫ŸÌñÕÆd†b<m±T e–‘$uOd ‘Žf/2—>ÏU<×´²¶Á¹ò˜Â¦NØkëÃyP-y‘+{!é¸öØ#zØJì20¶Ð=ßãJõïsø‘ŠBÇ gx9¤»!g¼˜œÀ? •ÆÁ’û»7, ϳÈ!¬õÝ¿uš«|‚Å„´|0»í†Ûdÿ÷‹Ìf–|„p]<ïlÇ.vH'¸B - Þ¸‹Bf¾ºE°*vüÊá•ý9ºÅ%¬Â!ÔŽÅû(ØF–(‡v±­%äT.ñø‡9D›q®b—C0œAÈ!$ŽaqŽœògﯔú‚¼6à¯Xpt­’“CÑS ¦LX£"$˜pã6çê¶'F:Ï%}/ÜtGdmëså¶ðè©üdOe.ôR`÷Ô5W9c %ðlAŒ-øwÀÔà‘³Ô¡>ló^òäâxz¸2 )°+˜¼Î%/™‡httÛ°jË£²·-ˆí¹ƒLãy#è%“I‚„ÃÚ]X‹!„àÑiÀW² öp¤Þ~ Spñ'r ÛŽ ÕÍ tf2À ~c­pðÐtè()„4ŒãSù¯„…¹˜-$@jÀø.ê™k;HB‰] \¸ÆÝڳͰ ®„ ¥ŒØ(xÆIƒmY’ œaŽp‹;EgFD[Lô,Åy˜‘7 ÎÄd…±$´à7˜3%ðtå@t`1÷ÌR“I¦ÐîÍïÜs(üJÄ.+éÉ´ÿhú’Å>Áôc5Ùk1ûD²>«ÿð=\ A@6}Z#3¬ QùLC¢a¿‡|þ}e¸ÿ²ƒ|¾¨F2TèP¥ I)ïÆ1ÜWÅB¨(r!ô=¬¯Œj7Ë ÄßÕ5Ö&¿Ï@õž.r1Â]¹!zF~þnU;pæ’äÇ–ä ™€„Á²ÿã0Þ7á¬}°ßÒܼ4·öq¼[Á=hšço\‹Áý7ð·‰Ì“õf ñç[Ãß¹÷ŸMs¥=*¸‹ÍŒ;lNx9·•îô¼Îžç _X¬»ºç~Á?œ6%?#õœ=,ü²ßD‚(Ì/e«{[hϾ‡P×ú~ZÆeý× B•ÄÙT÷"j¿§jûÇFçÅõ…@§¤t]vÒ¾õL0%ΫtîÃç/<8ý™û}Kõ"šSe\Ä_ |DñÏn2”üvîsç§žXù,|þà„ã² œÜ ¢2HJÞûwµiRãÏ åèè—ÊH’ÄÓ'|Qõ ·Ö‚,Ñ+ˆCÌålÍÄe„%7S$ Ë…^u·X×±£¥ ÍMð3l¾J§b5ƒÀI®ðå YRÍa »N¥¡Íª.ð«—ANY¡ñI&®Ø½¶,Ím6BÐá4È^3býÁo1Ï‘O‰à×TºÂŸo/E}æ1/±|’¢Î•»öÊØ¦¸Fu|êž…9ößR½ÙíA{ñ³J7í|ö2FF~fC¾œ0C3°‚N _±'#,ŒG°Dµ‰Q ë/9®XÅ]W—%ëµÁ‡ûû÷]ÉzFµc^ ̥ ’¾i7‡î˜/$LÊ~ûÓŽ†8o~×"âo Ðv7!„HM.¤ç¶¶˜»Êjž/¸p¨%³#ôA”-4×*×™ý„gŽ ~§ó<™ÂÚÊfÁ­9SSóÔ\Ÿ˜´þÞ¬•ï§TÔÂohD`õÿ ß=}ñ?ˆ? endstream endobj 665 0 obj << /Type /Page /Contents 666 0 R /Resources 664 0 R /MediaBox [0 0 595.276 841.89] /Parent 642 0 R >> endobj 667 0 obj << /D [665 0 R /XYZ 33.853 921.043 null] >> endobj 664 0 obj << /Font << /F30 591 0 R /F33 429 0 R /F17 421 0 R /F34 597 0 R >> /ProcSet [ /PDF /Text ] >> endobj 672 0 obj << /Length 3196 /Filter /FlateDecode >> stream xÚµYYÛ8~ï_aÌ €hk(Šº臙Åd,f³›~Ë Å¢m!²äÑÑžýó[iÉ-'Àûb“E²Hëøª¤Vû•Zý|£äÿLJ›ï^GÑ* ƒ<Žõêa· U¤Ù*Í’ ÌÒÕC¹z·®šÁvÅv¨íýë¢îíÝíû‡ß€Ã&41 ÏÚUµý½8Úûoú¦8ýûU`ÊàÔ쿹ÝÄ¡Y¿Â¿xý‡ŠUÕ”ö4ÂE6}õ—½—)u—(õžflÂ,0q2Ÿ‡ pô»×a:½€Ÿ¬Ó Ê凪¿Ý®ûñC׎CÕXîo‹ºæVÕôC7n™øÓÛç·›7·Ð*º¡ÚÖ2he]{<Þêl=6Õ¶dð©2í ¤ÎÂm;Ûq¯®>tE÷¼to”Œ…õ852ñú±*¸AÉz°ÇÛp}ºÝÀ¦-1¡Ñ~ÛU§Û­,-«În‡úy™Q7À àÕ>âìÀUƒ=xê]±µ$^Þ¸åå{Û€àU‰YÃÿÕ±Ø ©Ý-Ý‹$E°ï ‡$ZÿÀ¤Ï0ñ÷Š.À þåi¨Ú¦¨™ú'Úç'ük»’§Ý~Ù ´æv“:#°òBƒÇÎËÎF<Ø”aù= œÈÚ§Üþ¥:ΘŸ™öAMºêìÁžŽà6íÜ:Å{óyÚ¢+ñ©Á'ÿ£¡H%F¸ ô05Aâ…þ8|\|>Dqê& oq¼æSCœFÎ_\¶xd~·Îy$ë-†±³ýl_«,È’ôk¬QS¨iÑ]ë Ké»V 鉂g±Ÿ&j!»¦ö¥±ÓTz¥}¨E±j:„±ª–6ùDøƒ•NÂ5\É6=|žÆÜ:ÑDlîÚîX ¨IaîœÌ‚E* tì=À©}ìŠç%(~É@3Ë¿¤Žag±›Ôb»m7°\¢Ì€æä‹Á®Wç‚XÑìE%¼@àÙ6sPÁ=–EÿÿŽWЗ®ðô4P™8Â+áß0žà¤„¡¡÷BKiÊAFOÕ'[s,°­¬·°¸aŠa6Ý£,ì8€Bdmüíò;ï€úlEþ|عøÏ† }ÜšŠ¥ÿp®DÄ-ùй×'&=F¹Ã‘Î1°<”½³W+rF~ ŠíØ=ù´{Eß[ÆÉõó²ã%dúQ‰okZ!˜ï#nðý oAƒS0¸¢ØªÎÄsÕø½…Cà²Äí‘Ivƒ¤©ã€ÒÙZ¦âï vß :„‡žy¼y¤Ð@õ¾ è¬Îƒôaì™ùŸä-Ïä¾YL$)›C¯”²ÓLçÇUÙUæ¼›Ðb2yŸc&¸d0?=Üüyƒll¥M©³^­ÀÝä«íñæÝ{µ*aÉh¶z¢©ÇU$9.«Wooþ¹”†k™@/%RJ}‹õµP‘ùó¼ëCi[ò¾ëÛEÄdÚ»JR&•žD¹; íÔÍÒ)t!ÑÞÂû”¢`Èsu‘Ç_â:Ê#ùì–îÅ gOÑÚáŠPœ°Ëüc>¶Œ1024FuÂ[5¢®à ød”`ª[ƒ˜…cüL)Íâl Ü@s+á¸Fi‰€U\slÇ…ýs´ÍöÂñSÔã>›;ûŠù˜s.íãù ¸w)ŒøJílÏãù1í•|¶¯ˆÓX£ÏhØi@ÂÇaìW•æ$þ¶íIÒqìq‘àòMÆ^8ë¾¶/ ,ÌP²U”&AÞûk ,Ì +Èsâ•/ôãp‡à´â ôî GØŒctêxŽõ@€üdÀªI¸žh9JÇ-œV¤°_Z ié+Mš©Ñˆ¹c¥÷ÖQ2)þ`¯Ø‘V`“á(½ Å4b?U=ûYžŸ 7x~_bAãäøKÁÊ«`Û¶±nŸª¿ƒ&&¢˜„Ж¤¯8 1¯¨š~Éasä”Iü©.œ\É ÀäÊ;´j·ôp!¤Ê»´Íì:Þ"æU€¡:Ú™±Ø=EJgk’"\u“ÛÈ•ý(hëš  ¡yÍçÈÚ¤yÆ©.3#_7m^… ÔHÝß+¬K|Ï8-Æ.ûaèÐséõžY€ù{;¼‘Á¿Ã›#WWG}>űâÏðÞ·î˜7Ńûæj16J¸(0-ÆzLEΑE†R¨MËÿu ðw1„Q€/õ`Ãbˆ XŽŸ&µÈh ®`kÑ÷žL®—ƒµ<Æ#Tú8ÏÖ¶(ý¥®h¤ŠŒë0h©±OKß„I ¡Ú\ö5Yºsn2u‘ž6Aßî˜Vˆ=MAY7Óôx½»nb ñº½˜žxªNØí,¤Æ>˜|@¶Ï‹7å_÷?«ƒ/,ðJMó±Mä VQªñð`“óm ÀÂC˜à‹ÌÙ´Èœj²©EÝÊT¿íb%5 ÂØç:R+Ǻ\/‡à†/A“€6mpø.Õñ•*Š+¹èôœ ëdR9#ïs°—îk®‰÷¬¨¦¶¼¹ßÓhb2¹ˆ¡j]?Ö$°ë>;˜ŒMi…,¡Ê¸3#•·^̧M„çÙµà%ž€§Ó*(~Uð‡'‚ΈW¼8“¯ú+‘ߎL³™’HÆFà„tFH÷"è"Î.ž—ãbÅŽªl™+™©‡²fWÙˆZÈ`u¬j*ÿÁ0Ø$2±u Іƒ®!ÊM süÙùB çÉ·®Ñ#ä¹ÏXÁžüf¸·ô <ÖX“0 ºl.Ïc‡¡oº.Ç­eJÁgd‹=Êåá?TŠ¢ïØ$Ý!CÆ>@tLìËA„Ïsýùį̀4€÷^!˜J’¯ËÎLxÂò2©ÏÎÔÕì R¥ÏQŒsà{.׬áEÒ@EáË(ñòb¹ thVaZG_u/Øó3d¥ ¤Móüú½ +Ö¡¯rQZ¥×¯«ýÈÙ§±Û¯¸ñ¯ŸoVï %J×z†ˆˆ˜M2¯ "ÍÄ$ÆvM©ÏÉ!!­ÞrÓOYÁF…‹©üËŸðxÀºžÇJ ’õe^ËÀËD/¢Ö,ñ¡²õƒsÒ t-×›w.çª!Œz¸ÈVJˆV@ûØ”óäλîY°={îæüõ+]#pkè¸nFŒ 8Ç÷ë¾³]Ыõ0mWчIèÙO}X¦àýª®Ç~À½2½åú|žNrÞ(‡È_ôÕVª~,àÆN>‰I׿ȉ$ÉBÙ~Ƀ T}¹H»1a¨à¢x÷²âo\rl¦_¡3ö:ý§íäÂ_!…Ü×¾‘.•[Xà†ù73ÉÏi?ùM۱˥OïG™Lχ~Â~†%ÒkÐ:ècôäóP`uH†žžònWÅi @ªôaßùD•û¾R›¾áÚÒbd÷âBÒÁ©ñnùÿ©«—ÀÑq'ËIŽN¬µÌE ´H&ò—ZˆZW˜1 üQSÂÜ×?¨Ðšq¡UûBl†&ŸŸ”À. (âðãÀ"Òf–-Ì]:‡…[à²årÝœû¾U”¥O &õ•³x^ÖP„FXj^¶_iŸSsÊ °NA»…Ùl„ÿÈ™> endobj 668 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [190.86 159.371 198.705 172.322] /A << /S /GoTo /D (figure.2) >> >> endobj 673 0 obj << /D [671 0 R /XYZ 33.853 921.043 null] >> endobj 670 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 676 0 obj << /Length 308 /Filter /FlateDecode >> stream xÚ…’MOÃ0 †ïý>¶‡f±††Øm¢·±lݘ´®ÛÊ@ü{ÜvE¡HMb¿®¿Š†5h¸ô?;ÊW¢UŽ3 o•g„E"­\¦k%ó$û:VAS:|u°dÛ‹%ÓG%ÁmMeõútð—é/´´gKp7y4£n¬%ÈW€&Sˆ3Å!_Â,oÖ§c‘¤L.¦«$5lãëæêãº8œŠÝ✬VÝ^ïž÷õkõVw¢'mõêX•É<ŸŒÆÌÆ$gc‚@¶­^6»õ¶h„Ñ]>pƒƒW©å²¾ŸÍ5,%7W9dðÑ*K1Ó…¦j âC;âeG£Q±þ1âû¦VûÏðÒv* õ|2 ¶t½qZ,4$NcÈ”£s e2Ü ¯‚ endstream endobj 675 0 obj << /Type /Page /Contents 676 0 R /Resources 674 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R >> endobj 669 0 obj << /Type /XObject /Subtype /Image /Width 525 /Height 524 /BitsPerComponent 8 /Length 23847 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿ  "ÿÄ  ÿÄ ÿÚ ÁÛ½ˆ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ~aûâ@5¼ì"¯ðò¿×ø€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯÷æQ„[Žx@µþ]è/ô¿Àø’Ú²Iãtå>¬ýSãÝyÿî£BÎÚ$@ýoð%UU&°øf.½?ÞÙ]JwÝóçè0@ýEþ€7ø þ€7øÿ@  þN‰uT]äcZ³ïCO¯ö/:Ü3³Å÷­¥žm¸„‹Ÿ¸ää£yo>„R@€7úßà@ýEþ€7ø‘ß\^xìÛ"rýG<ÖÓébu÷`î?›6„~_êµb³K/ÓNO øæ%ž™ 2\ä‰Ê,ïÉóèXÀc5Ñt†˜ÃWª¬ÊfæMT:„(°ãÂñ¸Å"lìré+Ç·ynÔ¨mJtÊ€Kø¾}  cæ­ÍĪ+páñí1 ÅŸ›¨¤)éŽe$ ö‰3߯Aß ™éý3èóÔÏ‹çб€Æ>ni5¨ÐÍp¦:ûËu³½l¨]”)ügâ¬r1Û¯n=»ö]øög¤øðúü_>…Œ1ó‰hs¨??0]*ÊRžEy¥ªãQìF˜â?hýÓ¶âv9ÎQéÚ/âùô,`1¯ÏsÄ9In~oŸË]RE‰ª°²iƒêµ¯r ¸0¨ª!¾= Êo-ÅGÜüÄüÿŒ1 |þG,¬Ô ”î²¼ÅíKŸ«ji" H%]~ X³;PŸ¯Õ:Áàw‚&àqÏ ´ï2sM¼L`1çò:‰Yˆ ´/ohÞß‹D”š„P ̼ÌÊC)ÿ£°™ÿ´´^´O c@ùü‹BI*©Ðk‰Ú„Tš'"J9âd¢W¦Ë‚§N”«ÓNäʪrhéÞ7𙟙G\§$/ c@ùþ’„š•ÔºI§ŸiÑiíiWžŒ• e„×·Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…ŒÞ£šSñ‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*aÈ(æ•_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜1€Æ4ŸBÆûC(§Eoê‡e4Œ"Å…|®×Ï«A©kK‰UJEb—_¦‡ÏöT5ʘMU=)õ•iXŽY:Ô$ÈE•3=Ô½Àcb'ýi]_ô-Bï¨Àa Ryx+õ&‚y+Q±j¦NŸì¨ûÊž£~„ò˜(ß¾<¡¨‘TäœRägété‚·M9ú1€Æ>Çú´Ê™KzpI¥p®!…ê­tžN (aóý“âeG?ÍzWÐrµj³<’gHÔ<¹G­ú1€Æ4ŸBÆÐ>}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`1£ß¿H}aE…§•óèXÀcc*º›&ÊÊY ëÙmq‘ 3õÊшÕ5OS¢L£Nf¡£ä|ú0Ǖ˪]¯ä"5;ž£MÆëw…À›ƒÇ<7äÁÙ3ñ¾}  cÊî©ÑàásǵSû–•çúê; ¯ofƒbqã|ú0Ç•NN©ja\ȉ*…I¢’¥œfÎ% ÂxféÞ?“F«š« ñ:P‚Oñ¾XæO Ç“ž’¨ËüTU¾šPMîN6dž{Q L¦®š¿L‘ž“©ÉøØÀc@øTzY‰¢¥¦imû35HJ)|¯‘óø\²ÁS.Äâ[˜¼“ÎftîªM4H ÿœñ2 (páp9…À˜ƒÇ³F<ÌNHxØÀcÏá_ MK¬Ð¹ãÚ?<~-{¤ÇTŸ×·åøÃâ?Yˆc‘üj]#÷V¼l`1çð¸$ZiC–©Së…é”í9© š[£ü`Ž¡CÀæ7fcŽ8jiäá|¿ãcŒh?Ñ7('šɧœé1à·u®}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`3SaX®.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂXQ°¬ha,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a, `aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRXÔ¬‘ÒÿÿÄ< !1A2Qa"@ 3q0Bb‘RS`p€’“¢ÑðñÿÚ?þÓQQTâ1QÑÄÓÔNÚcz“ê{rNÀq[ʬÛE‡¶ ib殦T*¯¥Öµ3³ÕnºRä‰Q¸’G–G–F/$ŽÒ;¬îK3rI?ªÁðšÌs¦Ã(S]EKé[쨣v‘ÎöUžç`7#ŠÞ@ãPaF¶›Žz¤‹Ä4ïNbŽCkèY|G({ÊÀ›_O^%ŠHd’PÇ,NñHŒ,É$lUчb¬#Ô}™#+I›1¸¨.ÉMñªä_7‡¨žÍ!6¿eFàq‡òŸ.ÓÐ,+…Ңļ(îÛ ÝÜ3¹>¬ÄñÍN]ÓåÑúS Á§Ö¦ u¶•–5ý‹1 È¿%Ž ÆÿUËüv›/fj:úË bžY¿„$d"Cû¡=•‰;+ù•–)pª—¤ð¼ ®™QÙþ]–5RZFnTI°cÃÅq,ESÂZêꪥk¢Ï3Ȫm¶ j·{ýœšÆ)p¼Ç45,©ñÐÆ"f¶ï³Áõeµ»øgŠlf”Ó|£¸ôs³£ý= tiª™b?2³5½A7õ·¯×£¼n²FÌ’#GBU•”Ü2°Üwtâ—™™²–œS ØåPºD“DZ[vù‘ÑI÷*O­øÄ±Zü^ Õb5/S7@[ʃú(¢Ê£ò÷¿÷›ÿÄ8!1Q@Aaq¡2‘ "0R±Ñ#3`pð€’ÁÿÚ?þæ’D‰I*(¹'qÚ eê³²’l€ ;›·û|KŠyZ-÷NVs­ÏxÖî¿~(º@Ò8Y`|°¬C.Ì.;?ŠYhª¹*Á˜ òØþ—ÄU=J¢+–.Þø…Y!‰ÝÒ(Õ6UŸ¯Úâk4u2£ß2»æ(Kç]÷ý±@RC›|·ô;v…†béHçvXÕXù/öø¤â'¬{Ç6Ýb€srΧ{wƒÎúb£´´®ÜÌF eȾº±>ß„HQv dØ{àuã˜øUñZZ3‘Û3÷ªÛO3ÏÃ\RñzJ¦È F;µ…ûoI«ª­¢‚G`ª/m¿™>Øè­mD²¼KFP¶º…amG+ìyý1#Øn¨Ì<À'B¢F™ËIbO‰Å ò S¸ÿÌR9’šmÚ5¿ïëÛ8‡¥â$4·I™ÖÚùÞÝÇOÓ?…Ópåa%ŸævµÈä-°ïÿGÊôrW•¤¦^²67Ê>eð·xäEüqÃz9P$Vz¤[sà?=0ªUEPyaÿ6úÈódë?å̹¿ë{ⳌRÑ·Vo$ƒp¤< sò|j–­‚MŽ×7ò¾–õ½»ŠK$5E|á@n3¤ûâ ©Úº+»k2oÍ…õçŠù¤2±$ß1ÅÒ }ÿlR³=<,ß3F„ý7õß¶²««#€ÊÀ†bG8x›®´šÁ3 ^÷ÞÙ­ëq>Èò4”À:1¾[€Ëá­¯æ=qÃz7*H­P2 7:ŒÇÀ më£@rAøUÇMÍ)² õ<€ñ8¥tÍ?Vð•Bmœ=Èñ+”_ê=p¤0 ¦êÀyƒ¨>£áÄ«…1–×s÷ckó>õ¶&ãÕo.c<›÷1y@à|]êÿ‘1ÌÖº9ÜØlyéß¿kâÔ¯WE$Qüú0š×Óßpjת!{æät×¼Ÿv)âê`†nc‰žeT‡H©ÞjEdê˜æ“[_B=ðôîltj’Oâìr ¹>š}Oo Aƒ¡PF‚Ð;çêÊø+iî ÷Ä0EN™"@‹áßæ{ÿÉ¿ÿÄS  7†Æ!"5P•–¦ÕÖæ#08“§ 12@A$&34BQaCr%ERbceq—¡±¶ÑäÿÚ?¬Ÿ>¬œD=ˆqíãÇqjT.¦T*L¬áË— LÇ*X㪲ÊÒŽ”tcœÄ1TÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýj_úQí'´ž»ÿ™=O¡zŸÕ÷¼¦‘¤zÓþÃ5˜ÿk÷zÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­Äùº×‰ ¢ø£#ä)ÉF³h†iôÃyv’+ç0p}!¼Zyµ:)h¸M3¬àÊÞŽÄïwîWÐݶw¢¹U›t—ÑÝ¡‡<Õ|Ñšr–"çPS ©â."†PôˆäáÈüFÎBTÔüÃæ™EÓ8¹˜éM€£„Âá»G*ªŽCιƒóü]¶Û£û”4ÇmšénRf×I]$4—ke̵C:b眫„٤ĩòŽOJMª ¢ƒràÈ7˜›ŒYbˆá$“×(@C(d²nªšè,BªŠÈœª¤ªg DQ5"Cå1NQ˜(ཉÞë^ŽÄïwî„9™_Buê³Iu#‹#˜>„gäjtÜ9Í‹¢7Q5̆0HåS…ð>©_R ©¦W›x'Ü YnÕMÍ´«ä]¿x,Ò 0"çL¯J2(œ £‡‚‰OmcP}o§ûÂÐðôI Ò¼¼:bî_ÊÓÒ$ Ý)… êA¦–ÅeÒMe¢šk cb3G™&ipÅxT<m57wStëÔD6#G21®%C½Ž•] ex›âçÔ~e×PB ¸8*³÷v1”`;¤£¢OËWåŠÙCͶ+Æmbãá2=TØéŠï c"EN(¨TLéRiVô¸Ó3ð²Ëů£é'„šE2”ÈÌA8tPUV2œ€SSS2™Tͧk®ÛmÑýÍÑúZ`±?éR†,Qd›Ê© ZÓH™Ð•;WI¶=0 ³ å»tÓ•2ùÁIÑH%Œc\ÕÔd-F¤S'2 –še‚˘‚‹§Q%Þ•÷ª”|ƒ²2:©ð$)¨©ÖMK7dʽ¢ÞŠœ¦'_ǵtÚƒq>ú¢€i$‰&ðγѲ @ÎŽÃ*GþâÄLå[Óz;½Ö½‰ÞïÜÿ(»L‘ªÖ¯óª&TõO xGÐÒ‰ÅÆÇ:™ÂÔȸ~ñD‘xÝtæ9c¨Š $rœucü‘:¥PwMˆ¯²·|ʧ£oñbéûª{*„mWWm]iõ3üY¤”Ò4l†qwh˲ BVRB¥šƒ¨‡“`# ÞRIi¥Þ6EºNRU¢h&‚ . ª"J˜ÇjdÞÍ9!J™´|Z”}äãIÄÂj76žÍWtÛlh;Šw‰»vÏù €ç¿šç"Õ¨šNª›»ôe£Ó»¹šÐ‹ûöz"Ã2a]Ú(=u“­‘‹¸LI&DÕ"È¥k®ÛmÑýÍ×O<Î’&¾znmâh.à±ñLBPîž®F骮e<¥/†*tÒ USBT´e+q5T új5v²·›O̾9*íúft#•ÌٛƮ[¶_4á7ŽЍ“e„|öîÿ’Û&låã]»yOÒóçš6nñ—sº±i¤Œº ÊÆª¡Èšo ‰Îb”m?MßI—§gãæäˆvÞœ™^"¤€1ÀbÞF©ÖDª*¢YJ¹TÀ „¢ ¸8A ø¯£.áÄ…!W<…uM]ä£A<ãÆÚ%K0H­Ñ‘õÉ<£TŠÐWz³B¦˜eÌ«hÂÿ'ªý•x´¬h#C6ö¥Zi$ÕvŸ¬ÉTGÏ ¼kfM›Šâªß(™—KÑz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»öÎæ&Ÿ¶Œ`‘—vñÒ€š)¿úCŽB$Š`u–TÅIC”££PÒNÐMRb–©EtÈá0Ü+x¦+"ºX¸åIÇàbñNvCÂKžÓôc¦ùr™í&™©LAÈEÏ6ð €rLŠ™ |gÎaÀ)Á½n­'R¸9HÊ2AÉ]³“1€G5*D[&«É¢ºlÉe„éƒ2º6t©~+®ÛmÑæÑØîµèìN÷~6ÐP‘‘¬$ÚéiÎ!aÀæUß¼*f!Ü,²É(VŒˆr%Wpªi•¨ñÕR$ª¥Â)Ç=†¥/{¶Q`Í¢b?¬" §æ"q1Œ"Þ6ð\ûCáTÑ4¹ÑI)xRBçÄY· Jµ(ñœ&á3?ã ©<>l­MtNUY2*’„DQ5 !Ê!ù”Å0ñøŽé¦.Ïì­*èÌ’lA&aôãlâ2Rj CÙ¥L¤{qò·ål¡À`áÈ@€‡ð+2ågU-&¢òNœ¨+8‘däª.IeMÇQuJƒ–®|J(«1pª‡QÀâºí¶Ýa½‰Þë^ŽÄïwã¼Kó„©^džwõfb0D¶ÉÇSÝèì’ÌñƒÝ`â'ýYl6¢Wzlj¤Éôq †Fq1Qåáý 6 ä \ ðÞ:ųW‚9ŠFSðÓ-ŽásŠ‹¸Pë,¡¿RŠªa:‡7ùœÂ"?æ>‘µḂjâŠxáÂY Õi7›eDr€R+Ç.L\ ˜Ÿß'áºí¶Ýa½‰Þë^ŽÄïwãqx¬Ö^žŸÑ†]T'2DˆÔÂà"tÛI×+£ÓÔY¨UlE;4§©ægxùÙÊ0Ú;&ø€|ý`ìÛ€âQCp˜p¤‰T]D’<%4ÄÂvÐ±ÍØ•c¹:D÷îÔ.SvàUr¡ 8 uLRd |J‚›YE’ŠË”Ahg*h¥ŠaýYZ2+“.Y,B)ˆúFÕ=zäŠ&›ÂœˆÊ\$pŠK&öYÀ ‰ïR`Ù#¦| ªSPÅ.ÃuÛmº<Ãz;½Ö½‰ÞïÆt•!IR5RP tÔLà%9C”ä9DJb˜  !’Âéj)’JåÀÁüÌ[oÏ/(É&ŒÊõA.N.L<3j:²‚X¬[‘#¹9ráQÚü.ªP0”Š9US”œB˜•DbêhðÆÍ 8ò¶Æsž9ð"‹11•QTÀW*£À£„ÖQ ’Ÿ~Í"àI’q. PÅœBI¶q¨€§‘AHê&å"ŽG" …"(ë,©€‰$‘L¢ªÜ!@ÃùJ#ü,ÙåJÍÍ%MR™É¤Ò;i§Érj\ *BioÊÙ"ùæåx$l¢l"ã¤Í‹D± n‰p¸Žc¨¡Çõ*²ÇQeÕ1ÖYE9Î?†ë¶Ûty†ôv'{­z;½ß·ÊÀ < ?Àl"Ý«t؄Š)¤"'ÃŒGC.,Åþ8 —ô‡Àºí¶Ý‹ ÏUЀJdâE¾˜–,З>Ô†:íÀÅ]5Ë2ŠFÎåÍ”ÆqNOÄͦ@)ê×íÝB B)Vn" yBÿZ¡ÿ;gà*yè…2GA”x‚J¢"TÖ@ªæHr‚K&tñq°å³*^ó ÜŽ,VÌjÔ“Išr±° „ËFÉ«\ê‚ E±³K4´Dxôv'{­z;½ÜÁuÛmº?…#M93:†¡nwnäQ8¨ˆT×Ì›”J8\K,›–¨¹è´z)arfë"uU*ª§2Šª¡„ê*¡ÄLu9²˜ç9„LcDÆ0ˆˆå5›§ß¸Š•dpQ³Æ¦œ¢”H¡ ItÉ…fΫuÉ•5’P‚%ú€ÅI4ΤtÛTGˆÞU¦îâ1“IÒ'Aò œDÄAÉ&0—Ú~£ptá"_ÉfÄD¹ãµnuRo”D D Áú” HNK.wrR®Özñs‰Œ'Ys‰Ä ˆL%I>ÑH (”‰!Pô™’Elü­0èôãµL¡Ž»†íAX×kç8â¡Ø®“u©¤.Õe„øÎtÓøW£±;ÝkÑØîæ ®ÛmÑøÜ,SæÒÑGhq2bD]I © À ‘bÇHÂÒ¬93àš¡â„1Z<©JF‚bœ ©šÇ6+•âA6m3"˜å¢¨”AK'*²žÐÕ` ¯"-ÓfEJr(¶÷ µÊ‘Å%\E*ò”2ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­Y{5v5ãzÛÙÝ7ÔF‘/©ô^hÚV9Êbùœî‹ý…\î>k县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^µí-ØÔsêŸh´/^šDÞ¸ÓýG¤èº|'èhg³ZWö䱿x™ÝJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ókÑØîµèìN÷s×m¶èó èìN÷Zôv'{¿pö~qÂcJè²}"¡Ó”Y¡…œkgoVÄåÂ$Ëu3e0ª¦H¡ÊÕÜ«ÐwVÇçý¤"1Nãš¡¥Ķ£ªvÉG;ÎF°LUõs‡Y… %w™\øÊ.º„ES:«,©ÊšI$™Dê(¡Ì R…1Îa” "#’Ò‘ìîôhÓ”º+4nE§t:¦> *‘\èúÁ6ï fìZ © fDnåF¹ó‚¶4%KW²c*˜Wb‹Y95šç¦&›ê¦/ŠÄÆ!È Ù‘6läS&”ÂÎbûi8·égÙ¾f©VnºyD¢$9‰S&¡!ÒT‡IB•B¡k®ÛmÑýÍJXí¡Š·Éû;2ùdiæ’4¶‚»hÅÎó:åÉLçÔºvŽS`‘Ñ€†Éè¨'(jÆ&‚¤b&d`é­M3¨žUjD(-ÝIH.üù#c\»$ÔX¦g$Lªˆ™D³‹–¤½VÍ(©(³8i>gJ1§U³‘n‹øñ1Ô9ÛÊ”QQ¢2Ê‹TAQ Æ–ªÙÉJgT¬Tk'åtÒ.5Ñ9VLEè&˜ ‡Ñ3ØR)•‰”L‹ÑØîµèìN÷~àÿîÿkAJû`Z EõŸô°ÐÔV~ò$réÚv{Õ¿¤tm3LàÑòÛæýüƒÿòZ¸­/b“ªN+]VÔ â>VZ"atKO£˜²F²+Èï¨écåÊ)¹j¦f ®Âóã’èYÒ i³Qé5˜ŽlZÅ‘™uˆl§æd¤K¢´”I£ò¦båtw-Ò(E0úoGbwº×£±;ÝûŒ–‘Ž€—©Ä=X㆛•$„dŒ hÜÌÒv³õyQÊ®N’ (¨¨Sþ¼m"C×cHû¢ç[ú«Õ~¸ ¼þgDÒôý(3yÝ;GÑøº.sÞÚV ‹ª/‹w<°9oEU*B0˜u‡Ý=j-HT¡ïNÆa:‚ÕU9Ч©¶‚Ñ‚*,àâªÊ9tñã“crù륄ʹvàÙE<)L©¢ši’×]¶Û£ûšvIܽMOÌRÊÈ+ 5JJ’&M±eE¼Šõ<.iÒ(&š˜S*¸1¦UJšª”þ‰Y¶SÕÍ"¥@ ¯Q°£ªeabªÌV^QŽŒäŠ*à¹AÉ3|ð™E•eUPí®ð"E•6ÀȯFVnú=ûuLºRd1ÀI‚ê*ªŽÕ2¦\ʬTÕ9 PJTuåq#s-íÍN¬ëhg. %ƒR¶f‰\¿¡Uʸ¦`"¤È²i(OEèìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷~LJ) ÀŽ`)r˜@¥ £ÁÆ0CüD@†À¢*&²cˆDŽU"C bˆ”pœ¦)¸x Âë¶Ûty†ôv'{­z;½ßV[ÍûpÊáŠ%u"ñÓÅY¬cw‹¤ Ê`MBA.SD "ªb¨Œ“sã ‚‡i%?Ö F>M«ñH¹2ŠÀÛ5“‡A 8¤(dÛ:¨[S˜˜vžÊâŸöFmñJNS¬uñ3dbhê·x±Õ#3>©&äæÜœâ¦9k8"bl¼ Ñ9³ S BE²i$™x©¥à±_BÈ¿ˆzžA#¸×n¸.ƒ"ÍŽ™ò€&\™BÍikÍp‚‰<>b:®$Ô[¸b›yäÓ72 º-ÒD[+›ÓÓUU|Ïâ]vÛn0ÞŽÄïu¯Gbw»âÇStãÓ1Ÿ©sæYê‘Ôt"éu˜HlË—ëFAÉ U›‘'j7ÜÒ)ŒaÆãÆ7˜Â<""<"#Â#b>fºÍ¶9l骪7p‚ø€Q’1THå8€È`1€Ùgn”:î],«—+¨8”YuÎ*¬ª†þñÔPÆ9‡ø˜GÒ<‰týs9–†YÅ?(²‡Î*²ì3glº£ú³‹F¸du nª*(åËñ.»m·G˜oGbwº×£±;ÝñiIƒMí2hÔŽ?Õi’¯].Rñr™¹vâ~0‰Š$â—SXÙ?é&?ðÎ/ÿøe°zFÓj¨[º­$UkÁÂp$<u•þ$Q€82?Çâ]vÛn0ÞŽÄïu¯Gbw»â¸€8µrCiòd.5#%MB ãRçÛ2/â&}¹Ì:+•ÒQº”¬Œë`>$i–ëM·rL¦Â 7dš’ €pð•ãD ^Ì S¨<…sJEã)^IÔMÔft’>‹¦iûÕ𔑈61°g­Š¡T³úbm#Vª ™»Àr·“9¢È41€D–(d>¹‡Y²™Dà†P •”‘\ˆ7A"ˆqœ¥2îJÝ¢³Ž]+…é”TÅ)rÚ•hb«êƹ9)0i’ œÎ_»¦÷î•TÉ”Â"š9´²áL ë¶Ût~9UÓPÎDÀÞZv.9|#— æºDù ²îø ˆî=ãWíTáMË7 :n dÊE1Ó7€ñL<ˆóSŠET#ÜK§K; >á°@¥M 9TtàüFèe6E‘UM \ô¤fU4ñŽÍÆlá€Ħ!Q`.QĂ͒)Ì'MJ“®« ,yJŽ]ssyž8.íB©î¸žð Åàmy&"W[6jm'Ur,é£$ÞE¢CAêhâT¢õRº­dc õƒÔtÍãUJ³w-Ö(%‘T‚$Q5 b˜£Câ^ŽÄïu¯Gbw»ö‹©˜ŠÀ‰Œ£í£IƬb‰VNÀ¦Âë®EÙ®%LÎ*)%CRU4<“9…$gt¸É“{´Œ£6² 2¼_ù€)„LFÄÊ Bj£¦#pb;ÉÊ»Ë(uXF7ü²ñ´ßÔ¤KƲ¥ƒEwr®ÓÍÈÏH˜ŠÈ»&0SG.l‰ Ñ‘T)D[¤\¸3¥.LøüK®ÛmÑø(P£ã±“zËK¨$›p:dÅÖ"5`ÍÁO£·D*Ž,BÂ-ŒÔÍ–!—1ŠeU1•Tãˆê(a9ÎaüÌc›)Œ#þ""6$Å2üí”4¶ âV2I H>iˆ B¬\Pým×HükBÕÜ ¦ÆlxLÙÁ vïYœ!Q“Ô\4PÅâ˜è˜J"Qü3óêÊð° ÄÞå&l•Vv™‹œ“tšN¨†xR;fç6¨ž´åß?PÊ !K7c™C˜±®—ÌI³ãhùF®¼&<›¯î¦_‰z;½Ö½‰Þî`ºí¶ÝƒYi™Ü«¯á©•66jCG‚¡ܧ„È”rR2xH%…†Ì °€¤¬ÔáÙd ˜[ÌÑÀGq˜“³eʧq†Ú~“`d"b‰ŠÉÀ&(‚`üÊ(ˆpbÎË•Þ],«¬WXŒ6’ Är‰ŠaÎbÊbˆ”G„CÒ6\Q6B#IL(ì8Üfâö!"—€ÅíJ¶7^/éÅ„åøw£±;ÝkÑØîæ ®ÛmÑø-j:d ²¾¢)šD³‘ÙÜà5g2eEÓ3(²­ ¸ŠGÎ(Ü–2ªS0ž‡”†zC‚ÚI‹–jˆŸ.o.™3…T &Déâ"Ä iÅá²$MƒÈJx QQH´UäDxD‘É-™4›³ô&Üs) ˆgk·!È&‡n c"š$Íš"a*ILJxʬ©±*ºÇQeŽuT9Ì?†FA$0@U®\ME¬B›2GK˜ªË±ɀРùeM3pÛ J^(z†ÒU¤ÃQnú«+RDCx”úV#ƒ'ù'ë7'ϧ8¶jÕbá*Ù ðïGbwº×£±;ÝÌ]¶Û£ûtíFȯcÝd0pàrÑÉÙ‡ÌWÈ&lñ¸˜sj—€JeXжYdT]z!û:š7‹v/œ£:™Gô¤¡×b €Ît¦Ááiänj?FáÈw'©Í>6!2Ë@ã{„Ö6\¡‡)O…¼Íâ¿k6Ᲊ®ÞŸŒýQLJtÍ$ét›¸) fDAª p¸;ÆÇ:'ÈÀÀ>%èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^?´µ-?NéÞÈh^½™Ž‰Ó4oj4OpßHÑô„3Ù¬Y¬òXðç —Yt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼mwÍT´ýE û_¦úŠf:[CÒ}—Ñ´­ÃHÑ×Ìçpçs*àÅ›>MeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãkÑØî·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÒQtѤzÖ@½‘˜ååÍ·I»fFvÂ67{<+®Íº©©£¸ ¡üèáoÿÄ,!1A@P Qa0Ñ`‘¡pq€ ÁðÿÚ?!ü7Öp%1€F?”ô?óab–…Ô/¸÷;¸ &€µe\:8_ĉˆ QÒ®ô(éÿ±#ö@|®Œw%YDúB`ØÍþ{âë‰B=èmcx£VÿX?DeP½!HŠ{‹£:Ú’k˜³q:&¥r¸¾œH"—<Á³ïDaòwtY2—Ç@b\ç¦%.9&l_›ãôlÄ{ý^¸þ#:…1Ï(Ñ™ˆC\¸!*AUP•º`)¢´5ô+¿Öy‹€W1FüÂ{ñÒ°£ÓÔv1gWø {Vxï3é ’¬dtÈÉF›WÔîË^i7ƒ@Û‹|åø;‰`‰28í>ë÷Ç/<•OÉÇÅ@:$øsÜZâJ8=JpÒ?Áè7 m¯ÍbÛc&î‹’…}ÏBKZ–”—Q†õ8­Y¼Ã<G€d–ƒnP€\ˆW`Ì7<5¸eÉMBAiA˜ñrÀQ9„QI6ÊàTû%Ú>®±©@ ØÒ73&\¥v×D:j‰Aý~ Gâ4Æê½`²a‘ô‘1€+Â*lƒtÊÎaX €ÕಈœAýH,媞,$ÉBÇ@* Ï´Õ‹8kß :b;O¿„æ¾X¯Jš¬kÈ/¦¢*°QkÔZÆ‘P½5•cˆxþ—ƒàqäÏZÐ "³ \w€æ! úRµ4[n ~¢R¬03Röñc#Ó­ H¸çk…Ô±›¥ a3Šqd¯ §¼‡#1óõA2˜H AÂ&ÂFˆr4½6M¯+h oµr^تÀ#éê´<6Jô´ÎójHÈ€Z ‡UAd:øÈ£°aaàצK¹÷ó5 ‘)“ÈÇ9V©ö]ÙªÌ"œ¤"ˆØµç8NáÊmö¶¶Þ½:ºÔáôÁðU<Îøbdi‰ä*N'ÆæzAéTØñÝ­C9€bË8Cºoi&9]P¦)8u)Rµ+º§ëÅQv¹ÞbtXî×2">á˜Î±Æ•6a„£x%(…«Ü8âÕëÉ Bˆˆ²¤páà—ëj°MKXB¬S†å Ê’Àö:Ž׌¡À í]}¡ç€ÁÝdL4!SÇ®‰6ˆ^/XH ˜ôÖU¡üÿJÆXÁ¿ü ïyOñ÷/àråË—.\¹råË—.\¹råË—.\¹råË—._ÚóŸçîñ⢊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(W~I<§*_äI„Wîc±½#SdÀ ÎÑ–bÚAðî"lÈ ×è]¾¹ïZwqTð‚ÚÔ‰Ôº ÒJgKž‡é2¦g°äÆžOVeZ÷‚Å÷ÏÝ3¦ÞÕ7Gg|êœ'¤5æ¢V+JpÅ]ÛKú)çÄ™¡-Sü*Lµ »°Aû§öÛÛ¦¨à?dþÛ{ôÕ\ƒé-‹hXÑ Ž)³ ?åc7KMrÿÝ$€KÉ÷`"'¸á#QCƒ†>¾ˆñNö$ñ¸§ÑS…6ž©'.äÕŠÔh^îsÁy4ÐA7ÏêGææP“怒ÐIÇB$‚;pBDþ¸åk PN°AÀ†ÝÚ"—4ƒЈµ\ç@õÈæ; iÇ1™=›,¬ž• g ´Ò–ñq³…ë5V:5í›—«…¾ÓlcЏ†q€´!ˆ±çÀ’–å‘âÕɸêkI\¬¡VØÂš`ÈÛaS!ëÂM“*O);…Z”Cti€2…Û#{Š‹<Ð\MÔß @ðh$ÿÊ-3NÅ´To[8Ã.!M•Q~BQnS[n­…„Ö‹æÀÇÊ f %%uIºÌ%Ú†)—I¨Ô³y!`°Ï,’@‹PÜ¡¸›%•¡Tj ß·×h A÷ÛrÀZ]¨ÅÐÞ€‚Æ“ÕÏ“AHF™|œ„C¢>vfáª0°+¨qÛe¬^c;ðØß €Žô%u®9EÕÃA|öükrLäã¹A=ÐH•Wp‚`{^œ3]_l;^bsp‚/|¹)eÜ%Ø•°Ñe‹g^×±KÞ¼ºT½¤Ú„@RÔ¶B˜¤k•5€æ”ì*Uñ´–@“ü …™h½?G8¦ ÷6Ê<Ѫ5úr¼SØPV‰»x|±Düæ” E•ú“ì…™C*ïP òÔĘC°^øœçg6Ò¸r%‰Î´C„Þ¥å^{øëcºmÏ¡øÜÑ7¸dÉÊ›2¶âÊU¥@„¨¹Ÿç€(F‚—N'cÉq®"¼-—LMj¬Á°®PïvØ•"ÓR`L ``?ºh1 0÷YråË—.\¹råË—.\¹råË—.\¹råË—.Y1 0÷YråË—.\¹råË—.\¹råË—.\¹råË—.\°Ÿ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏîgÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçû›3S³1µ_ÿÚ B(   ‹ “ zÌ @0€‰ÎµIr0’šh@à 0à 0à 0à 0€A0 ,€2‰'í¼0r˜ ÀK=À4¡ssLsÏ<óÏ<óÏ<óÏ ö\\òõ|¡ÍUL‚g, " "4Jc¯Iá‚F96ÌS£P–iÉì:üÊN… h hþíŽ< xFXÒ$7YÏùL =²Aˆ€r kFm,P„TóJÈý¤°£(¹É¹oW(DÐS –ú4 [*ŒzŒìpd ˆµE­°tG'› ¶«Ÿrˆ…" Aºêç1M«L!ŠÀCè ,Àtã2†®ƒ&\+×$ícåüB hQ@R$‹¨àjni@TQ”Î! ­nú@vèA†’xÎz3 lƒöA†c|fq jMtª¦ñ›OGúðŽšˆ>ð ‚Ú…”8}çÙã9.\ÄëR“ƒpŽ”X"1±oc!}b±&ÒâI¬œƒ{O¤€2X  ÁáJ¥gÑ[kœ,½»}ˆÛÛ3„»û¤…q¾,mU“GØ=R7.y‚!ïGÛ6‚Ú˜B¦M·™êfNG"\ˆ :×ÒëpóФn»OTîþÏÌÌÌÌ’<@•¶¼²“#vÒs. ‰=PU=í¿t°¹*/,óį3vf“¨þ°½±ˆ(:0âÏÖ®¡¿8ì3ÄSQ¹”Ö³†lºÖ@üÉsµh2zƒ àN‘…K‘±c³ól9Ð=˜©„D‘@O–§ìJ¡ÌÌ2± ’/_y9Rƒ@dëE+ „#~¦7 ^ßÅög òij«hÅ…W5,¤üúꦀ ¡ìXÅMËÈëç™-î¤ÛïÛÓ<©h—ˆfDa‡öf ©NBTªs®s¼ ïÚÖ­ :RÆÚ߃'7‘ÿ‰/æ0Þ>z(½à߀½½¿™©»…û{:âS˜8ºßíB#¾¼Üg³2ØO5¦£•rÝum ™EoÙßTgù£{¶·ÊÏ„5øãLFÆzZ‡çm³F‚b@[œÎ&@Pf¨²ây”Üü| 6fpü@’¹B")I²ê¹T†÷VÅNƒèŸEFÜ(ãL׈Äí²*¨˜´>È §(d‘=ì z¤³nÀSVÏ¡ã:Ûa÷¼2Y˜õ™s+akvDg£ÉÈn~@€òÒR´Lª$'É&?É{dí­™ ×¶¶qXÌ.àèÐÝ4b-~§CîÏMi6˜3=ûékPRA™4Žv÷¤= õ—Œ½ŸàÌÄF/Í02p”FhŽSžXà´Is:—Ó¥ ·,ɬÙé±IäÆE×Ö;æx,†™p‰ÓëÓëÎŒ¸a…£ÀîÔ~šé¯Nñ4î+Fc Ž0¬ÌÓßrB 3¯@Kz/¨É Š+TÚ36ÒÌèÔ;åsÏÛ Ê_g)¸·`(>IAqnò%œô׬m±¬OÛ¯¥òÎ3oâpŸÜp—ß.=»E‘`æ9ôHn€ã¬Í#Û NšiŒL—ØX¾Ukã¨!§§hGª xÍ)/øÉ ̦ffffffffffffffffffffffff|Òï¨s³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6l|Òï¨r ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ÌÌËsÈSs;í ûu-)úŸ ~äAÁ…P£(¦™úù>(.À¨P˜ ê)¯{¤†È †qRp$mŸ_Õ·eâ˜v¬Ë„ï³\þ¾Fò iðqÌÐÉ E¢Ø{l< .rF€øÁIøµ« O™G ½;ÈG€_g0ø¤™LÏüDÞ-‡þ"oÃÌvÛRÀdþë}§ )å´æ°“Öh˜‹ŒèÌd–b@(3DÑø?½Š‹6hl3¬ßŒ ]-ÐçòK]©h¤ðØØDuF£1à™Ê[FÛÉèkéwmÙ<§%F åsOˆ· [½þq“¬Ë33333333333&Aù ŽQÒGž6à·ˆXwÇžfi˜˜)¿ù¼ÛƹLÒ”5wÏ0Ÿ¡µ¥¨à'Æ¢Ov°P¶Æ‹¡Mb`Ž85‘Æî%”àã3//ðõOKËK,»Eýú²)vúaÿ>Û“dÑP ¤¼æ7Õ*Žm­ç8ÖH˜Ð´~½ùÂÚL–²GåÍ:DŸB@¤N630”/ ·Í¸Œ´;£FÏYŒcß<"‚:À,Ä„Ù0‘ M¸`A¥nW¬ Ã÷ÛñS7&1íæ8bP°ì­†Xù|âÕrhJw‚ak33p<µ¾P’TÌÖ'V3áBÉp5£ÊR À=TéYæCOa²"qŸLúv¢;"'õϧjÀBpd}¢k•hÅÅûn[vƒ"Þ+«í †Q*8Y¤Þ *§á„T©œÉÑ|Ô~5˜Æédu§¡uÕ$Ád`á´Õ3·D[ö^­¸?¨ 8r-Š3!¾3 v¢C¢ÃyˆPäS E~ÓA⛼¹p³„KIÇC¶NzÚ±Ðõ3ošïÈÎò6ʸ](J»e¬;I(Zź`|çÃ]´÷ˆi¬¯HZ–2ð¶yõiN‡×KaÏÖ‰˜£%°ˆpÂùÛ6J,yf[/…þ1Y2bîpÛ·½¨–j¸“ø¶vÌÓ†º0Cq¬#€‚·2/ÔˆÔ ¯­#•rx6 oK)? ¸H¬´­B-‚œÚôÁ#'ß[М3sÃ^zûRÀJ°zò‰µéÇ©à`¡™Íú¢’Áò%x¬¢ˆ‰¨Iì^.T«óaŠ qXqÓà þ H ÿi¬ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÜ‚eÁ|(P¡B… (P¡B… (P¡B… (P¡B…‚eÁ|(P¡B… (P¡B… (P¡B… (P¡B… bÅ‹,X±bÅ‹,X±bÅ‹,X±bÅ‹,X±bÅ‹,X³zX±bÅ‹,X±bÅ‹,X±bÅ‹,YÓ'+RòÿÙ endstream endobj 677 0 obj << /D [675 0 R /XYZ 33.853 921.043 null] >> endobj 525 0 obj << /D [675 0 R /XYZ 199.725 252.817 null] >> endobj 674 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /XObject << /Im2 669 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 685 0 obj << /Length 2969 /Filter /FlateDecode >> stream xÚ­YKÛ8¾÷¯ðQ½hsD½5À’`2Èî“4f™AÀ¶i›Yò葎ÿýÖ‹’åVìºM‹Å"YõU±®ö«põóM(¿¯ïo~xÅ+¨8É¢Õýn•ªÈŠU^dJùê~»úÄ*¹]k¥Á«Û?ïÿñÃÛx6%…f òˆ÷·¡®ÍCe™ñJv¢’¸ðœÇævë`;ó:ÎÓ`×´ÜØÛÚ¶¦wõžû]mNÝ¡é;ªó•ÖªLS Š*•×Q¤t&*ßn£<ºÛu’%ÁδØHW3¡ZnlMox¨úÓÐ3Õ~5ÇSeeö#вÜ>ì|™Q¶, o˜p4Ÿ/†‡ÎŠüLí×8Unãz™ìŽvÛƒÓYÑ%IÆAXo÷x ̲"¨`) 6'ì–Áaººë-ª‚ã¸ôË„Îá~˜hjᲕÝ?]ët°QšÃ½j] BµCkÁŸ^ºŠ´Pi>ÞïÆTrÞÁjEˆ!뚥ղX:òsßìæóûÆÕ½m/=ÎK•Gz~Vxq]ß´hS‘N¦í݆, ø¶±‡p‡­ˆL)tVØ8µö‹kÐt°'¦ Ìãõ,`¶[ÜË”ßíÖá]™JÔZ°.WÛÙ§J'›dœ”xÐd»^ø­j!oZwêÕí: 5˜·ë˜|0Ïom7T=é='³Œ ؞ȯl R÷=yÈyIøm lšã‰mm¨E4Ô’¡v݀ǥñè1Qœr»ª-wkk¥…Çß­üö´'l`ÃòI·gîÎN¦i~±”_¶u½W‡†à‡œL=²ñ‹ðÊ´ûÅñ xÊ`»›†Ƹšá h¬Ôÿ˜²зMoý$:­ÅÎtðö¶ÐAÛyÔÈÛ¹=ÞšwQ$’Û­8)XoyøZlÛIcÓ;¥…=ðÙÆQð/èK2A¦³ÕöÌD^¸äœ{û°2S$£•Á^»Î=¸ :2ŸXlÛ6­_±æÁqþÅq ª:WiZÎõýéÃùÃú=*1ùoŠ®Ùÿ¹-)<¼TG+ÇGT»îÈTr-`‚ûo*ÙÄŽ7ÏZCÑÙ@ÁNȘe Ò¥D Øåq>sÑÖK›‡Ç+øŒT–NðY™®ƒIv^-ÉO‚øð…‚sÏI^VÝáàr»ÞÚ?BÔäšEÎkóp0=·6ˆoØx`ƒóÔªâi8 î"Dú—ZóÀ‘¦TqžÌñð?`Épª!@P½ÁãÑ֙ޱ‚݉{Ö ´Ÿh¶cøG2ÅìzÏÃ×4àÚHQnèIÅN&' ;fGæ2aµtáw\t¬¢éæè°ÉØb9dl<“YîL0€Zl™HÀ—”G¡; •ÂwöD›?ÌhíŽÌ(1Õ +„«Îþ5xÐaš;ʉÊíâê%£4ÞêÌ]oq™Pd$Ô:i4wúÈ6È™irV ƳKÖ -Ú<˃4åé²L¿‰6yÁ@ŒˆS\ N^Ž©-¶Ùó€ùàÕA*Ýz޹ã©j¼§çòîÃÆ‘m;*Æg6,×x&#Â]Ï#ì©@˜<:Öt®ÁâµÄ-;¼Î–¯¢G”'—pŠ'My@.©;zJsÞí˜_އ;äòبgª^ºgîìÌpß÷Øc(ÀÖUi=ysŒ+¸Þ`f±ü؆ _ïÏý¡©еÞ1­…óžµeʨfæ¢JÛõ<Òõè Ü„+|@‡«Ï+ßúçÍê#1½qs’ĤJþ¡ÈútyT†‰¿˜z?˜½ŒÐCÍc¯ÆuØ ™y‰f‹ïÎG¶x¸Su OߌÏìŽE![„•'·é¸»i¦jHkÇ3~nç8íß6²g,ª‘»gŒ‚ß6ïÑY—7ª1ž{?“¹Êö‹<æk^ø"¤ÈÃâÎyN™ÑLyîíy6§œ_’ðûê$j½u_IAÞq»—­ÿö3ï= ^©t¶ƒ§˜\ªdJÖßÿú;Á²:—P.UYŒ%ãõz±>Àª²gõ·fHU»Ù9>ÀÑ1îÞütó—ˆ×+f*…øŒ*Ñzµ9Þ|ü3\maîBÅe±z$Öã*VY‰ÓªÕ‡›q%ò ìu±¦$Y‘ŽæÿóÈr•åcIMEÈËgYX*H®`gZé<KœJK‘ó϶cÀ¦%ÉD™W%#kªbºÅçÕÚóÎê—‹/>hæ©~aôÓe<{ñ%#¬#JawV\ ïMø@¿½Lj0.= µ·_e2â¹´}u‰8ÆK¨!U•ªKÂAær| &>ø¯Í2n Y¬Ê$Y*ÆÀÔ² ²§©%†=V™_>ÿ…*2•…÷oh¹ÝœG×0õ!ôL§$†/aƼ(CƒË—ÇKé o,‡|)œÊ5¼";INEÙ”wQæþ=¾  ì*Ž¢ 9’ž‰Žãç+Û¸ÒT=ƒN#PfKµäà›»ãWõ£TPIcŠ©éI‡Vk+©ÿM5j®ö—`Úó¸í‹”ô€„dŸ¬Š fãMu?΀î[€#Ê ©H4gu©NÁoÎHTU'X•Luüm)Ä.ÎUøPz*àw»‰ï˜ü øÍëæëR [–úíúZè©ùÒšÅûõµ)Úêˆ9à‘ðÂÄÚÀ¬&´`Lyª ýÒD\ÇåŠRöþd,4%Xþ5˜ rGò´Ž¹$³N¸h€”%òƒé,3Ž‚“g<Ž5…p•½¼r“”в ·(R¬Î­©š‚ßq¦JU’eÁXfÄŽOhÔ»ãr»÷äaôÅù6t…7HâHT[ôœ•<|õÅa-j϶‰è¹XVÃ#Çø|½ó‰*u¹Šâ\é4yy˜¿QÒSî»E,f ± cT'Cš‡P×/h*.ÒÿIó$ÛOÿ?šCn“†Ù\óçÞß:‚{⯇¸ &$ò˜Ã–cëÁ¦¯Íb{^UIôô‘†8›ºëÛa#2ȼ€?*Ò[‰¨ô“Ör~©Qg×÷RŽZC[&ÑõÃêÊHõì³õO­=A’ÝqÏ×¥ ¡¨ ë°!~¹&çðHãO®š+÷$KœUõPí"Õ¾Ù¦âõ#—à.?[¬w­Ù_XðÇ¥‹^/cšL˜ê|õ)›>¹<)];VEù”¾/|åÅe ñÑ40è3í̃ZÒü9¦€÷ÇVl펧|ú$ˆóéÎFx ‡{ÇA‡>Ú~1Õó"ÇDE^Êó–ÿ¤°€P„WH‹ü}\u)ð¯×c6a$~k… ß~6%|†·Þ¹ýÐÚK½¸™+×-†ç§‰ŠÍr¢p6°ê¿àVÁÁ endstream endobj 684 0 obj << /Type /Page /Contents 685 0 R /Resources 683 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R /Annots [ 679 0 R 680 0 R 681 0 R 682 0 R ] >> endobj 679 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [273.766 486.228 498.774 498.848] /Subtype/Link/A<> >> endobj 680 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [275.773 471.783 446.194 484.402] /Subtype/Link/A<> >> endobj 681 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [336.139 457.005 356.012 469.956] /A << /S /GoTo /D (subsection.A.5) >> >> endobj 682 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [503.535 457.005 523.408 469.956] /A << /S /GoTo /D (subsection.A.6) >> >> endobj 686 0 obj << /D [684 0 R /XYZ 33.853 921.043 null] >> endobj 50 0 obj << /D [684 0 R /XYZ 68.868 798.142 null] >> endobj 54 0 obj << /D [684 0 R /XYZ 68.868 426.826 null] >> endobj 683 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 689 0 obj << /Length 2843 /Filter /FlateDecode >> stream xÚ­ËŽãÆñ>_¡K µÙ/>˜ÃYñ!^g^ë=p¤–Ä,EÊ$µ³ò×§ª«øg2^Äfuuuu½»,ö‹`ñ›€Ÿ{¸ùî{-¤‰µjñ°[Ä¡0*ZDð”q´xØ.>.nµ6Ú. ¤©ê†^ò¬ðàp¹u8Q¸š&š½H<*w£©p¹ÉÓº^}zøá»ïµQh=¿õû®‹ôĨcV­F&-fZliú´Z«hé6rEL…°sÊ|gí³8¸*k<éÅZFDF/Ö¨šhîªòÈaàŸáÖJaË¿ÏE‘>æîf#%[ÌÇ´vDØ B¬Ö±Ž—ÿr_‚>­ð4vŦ<h\… Éb„9–|ÖdeA/iF6nÞ=Üüzƒû ¹06 øŠ"`Ì,6Ç›Ÿ‚Åæ~XB'ñâÉcZ„ ®Ê÷7? )„A<¿—‚·´±ìLh„ÖÄLd$ &ƒ³Ìð'"Œõá;1BJý§ðD"̘ï_ÿrNùk£b‘èpl]õù±*Ï ¸è?L@ÿe³’^íÒ´ £Î`|HñåËJÅ-¤n²Ó9O·®k¿ÔKxÈåh·BºÙ¸SS36ö[•´è•6euñŒyO«ýùèÈ*ë7«µ5@nµÖ±\’û•Yo²:*iÖ›.êìˆȺ7^D*’]þ×mÆ.iâémû0!BaÄ3~¦ 1%t Q=sþk‚HH¥[·DžfÔ'cal’¼’i+9>xe…b‘mz"ÆÄž¼×>ËL¨D¬º`’ »/i>ÇIÀ' !å>ôí.Y±G D>Å‹pY áœ½à µ¢  ³£«wªé•‘zÛpŽOUŸÁxê:ûÒE*8é1Ý;f^&R*€{ŒÌæa.*k‰]D€(mô-ÞĪo 0ãÝ2P [pR,~)*I ª?¸԰3Ìü)œkKArÈùËq vâ.ƒöñÌ;T}¶Ç—Mšç5 Éû`à~=ƒþÁaÓœCÁ)»ùUìŸ0œR÷® Ï-?ëòèÈr ¾&_G†³u»ôœ#}ØÕ‘¥yV·¡Œ çÊs5ç[ÒH¡Ìkµ÷­Î o‰:¹ ú5DD¬):·WA^û?!E)¡£®˜ ™0àðr&´Aòš0aSw›¤5‘… žrØ’!˜X4–ôÑÂ.Љ7Ò¬{xÍ¢tbC”‰"DžF í´å#’Ÿ¡‰QYƒ€ç£ŠíPZµËw7s‡¥°}UÈÁÚsŽy·ùLìÄü5%‹Ï„'¥‚Є|c$¶|ÌfMŠÇ„Bk6¤â„àRT¤q劭«Ü¾…‚üa«%“=“ßHNÝÂÌ^µ›Òd[n3´åÉïC8. åwÝùþ4ƒ¿u~}=Ë‚.vÙþ\9dö¹@")b…3‘DÅ‘ÏÍøL󺤆·ûQ Þ ¨ìñ¨ÇSîÚÊ‚ýá(M|*e~îÊÝ@Dº Ä<Š7Šûì7w÷1ra|âôbXMžTcÀÅ·Ñ}AŠB LªÒß¹²-Þ&pæ)k˜XJ€¶:!ÏJ ÔH&™Ê$È“ù+eåïð ù"ƒ¡áûäb4ǽoÄÀK'…h«pâH›å_®Ðþ8³C ï"1ÞYਲ਼7>Êš­¹Â–xµ ‘äbÛLÐø,Jž‚š!Û®]JÀlúˆÊºÐ˜’[ไ-s*!ཆÜàÆÛ>e¾òðÖt)ñ˜®e«ìiΜ¯«0$æKø:i)m z€LŽ&4}‡ a(MÁvs 6I Q&ßqTqЀü.íÆÓšØ³Ý«œ{\RHMöU»Lü ÌÓ¾(j}KÀ‘³ÜRàò‰Òù'lÄ`'ù‰“á¥2#ü¸W‚½ÒÚ”•¬"P¯(ß aEñµ3¸¾o®µ¹¬À2cTYà”¯ÓlÔÖ\6_UpqM5”ŠÙþà ¬we奒VÛ7`IÔõi< ÜðBË6•c%xZ¬+õ *ݯ¬‹t¨A%Õã$ž˜jKÃ¥ LúÛ ÉU`À7²3¿Ÿ4p]Ä·¡.Ј£…Uó¢Áö(³«L°»Á¨w7xvK£l6ï?sgRPÀ„ã ß÷}eó’W$Ø¥–³X ŒX; ÞÎŽ«¾XD1Ö@@ñ]ùíý?ÿþ®M¸f”V”0ªó½ÿ¬" ÷LL.Áò˜^(Ë<® ~:>•XæS¦ž†;Ò/ŒÙ–»`°|KÓ¾s“îkS!8¥W<¾ú#bGÝš¹w®ËŠûË~E¾ !†›BAë•Æ&¬k‚©Ñ)*ìHGq°üÀ8Dåœo ‘ùÇKG±ÉÏÛŽùebQŽ«?C)+™í%â”7Gߌ4tw2†[ ÆÓ8¼!l$ŒÄ‘2ü­fIrTp9¢FBAj­ÔI†/\3¼T '[¬m²¶WÅjÖ$5R¦¦»áumÙj w_+2';Õ`gejÐê˜}l;™û‚)€'G‡·C&¦ø}aË&¤ßîÅËD:îábÑ4à+'˜Ú9ÒAÇ5.;BmhøØ­È-%k¯*„»¯)*ë¶Ïá¸rsH‹}kþÄá(©Q0T’Upt­vò­³¶y¤ºcá,#õÇ¢wqq1iÌózÞð¯5Ù˺9°b÷¦Z@ÝÚS£n•|®ñ¦U“mr¶f(œÀ9ó‹·rÕ[ùµ_×feäÀÑ» LMˆÚ­b:<òΣ=úf€öxnhmÉGæ7½Ò‹›a'rlf1ÜT"= äÃèÖ (}ö|÷¾qâ˜ù®¶˜½,òÆ£Dðîþr¿~OÉt0“±"+¢Ä¾òÓŸé/9p6Ÿ/}¾NÆKúB_Vcn“àhÔ áÉÙ²2–"ŒÍ(Vçâ¥Ô†"²Ñuêäö½†ÔªL2-§|è õø6r„'Ý&hüHw Ÿ|íA˜ÿÚcü׿Ú,}·eãèå4ø@¡»ôF{qßf¼?Öä¼ÃñŒoõ_Ó’xc/^QÆÁ¦ôûo] OjJ„0îJ|q_ÝæÌßá’þô~ñгõUÝbÖ~¥©¾…íÒ¶ æ7`é`xªý̲@ãVEÓÚÀ÷Ȱø¦ ö‡]ïªt?¸WáEqhƒ5Á8¾†ã„W‡ #ñ;ÒB)3SϽ²—§á˜q`ŸiæÁÞ+úˆ¬¼ÜìÊx 3Ô¨@,J³£Ø»æä}òîÎâ‘ÿ‚ÃÍ*îË÷³ww4¼¢Í6WûÎöĨ îéþõŽö‘#Y]Ý#AÄÖJìo i9]ªñšw7ÿáÖÊÿ endstream endobj 688 0 obj << /Type /Page /Contents 689 0 R /Resources 687 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R >> endobj 690 0 obj << /D [688 0 R /XYZ 33.853 921.043 null] >> endobj 687 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F35 596 0 R /F34 597 0 R /F37 636 0 R >> /ProcSet [ /PDF /Text ] >> endobj 693 0 obj << /Length 2080 /Filter /FlateDecode >> stream xÚÛnã6ö=_!(VbŽH‰º,‡¶hvQÓéÄíb·-‹¶ÙÈ¢ªKR÷ë{¥XŽœÉƒ!ò<÷«£`DÁ¿®"ÿýz}õîŽgç¬Rëm§,YÁ—çY°.ƒ_Âõ^_ÿ¶þîÝ]Ÿ^‚"DîR§«-k‡ú×HFðãôbŽ<¬TÓéò±«8N™(D°â K’Ô£Ùëîg"ܨªêhÙ/ë-‹`9ç·«ÂÞö¯)¯LÆÉ¢ò€VÓÛz²–¾¦Þ´ú|Dpq÷Ì1j:Ò-»^%<;›n<ÃoXêÉÌSp‹"žË¼mÕnDâ(Äçø²¦6Ýfvh·øåÄ&"òJǵ*K]Ò-”Æ}÷þ ,&Ñ+ã¹ßµª7¶¦[âÌCÛL4 pÁD4yî'ÐMå,uõíúê+QÀÉÁ¯2™ð2Ø®~ù- J8ü.ˆX\äÁ“»zb–ø¬ î¯~¤°š“Ls–§y%‚åIAtMÇšã’©Áà >Å X'—"|oQ‘©Ó·`í¹>^ç"¼¹^É(ºäm\d,? º7»<[ô6d¡"ÓÙ‡Žöh Ý=ƒæ`*ÕÒÆÙ¿Ä^°©`)82ù’|I )Å¿_ëúÄUÑ-Ö‡/€öª÷×þT?ô?!£³L÷B+9Kd ÌdÎŽŽ‡Rƒ‡JüƒzÀÅF ¡ÊPKóôò”ûæaG/oñ“„}l•³,ŸÅÌ=Ä„¦K·ôÞ2=5Æù³¦2]?{Fv4¶ÓýÕöfSéïáÒ9ŽÉŠ3„£Ù.T¢Û#úñFêö±kö û—Œ;0Òlljí¦pãuá>ªÒ ÝxôBLyFˆ©Jà T¾±•m;ölÏÃK*r:d8Ü«Ñt{5YüD!uЭšIEh€ãoÜÙkF¡×¬Óý÷Ö>|5ù «ÆígžÚrì÷‹ªy~õ?kÓ«¿`s§6½m/½†—3¿@ÿþÿ—,)YSï¾ ³/é왹þu]·º.5Ò.zŽÝnï¡éúvÝúf —+Õ yÔ·wªêÎnyñ·¦ÒïA['Î"¢Îü¥o©úÔNßÃvnùÓË—²Þʧ^J ¾ÿù/fY;@“qødª W"¬-D&¨­±sA¨"ÀV?Ñ*!†ÂJókÄcðÊz£;:í÷vØí1à þƒt<ÂÚbÂó8†ÎC©¤T½'tÐ,œŸ\ÝÓm·¤šâ€'5åNîsçÅŠ‘Ŭˆå¬`ll½5»¡Õ¯U AYMåRÍ@ª=¯0½QtÆ£½&ŽÆ€D ªË³SgW‚¡±™7oýØ\Þ¯±‹,"е=!g×+î;8$âÊ©0s*Ìœ t,A¸Þ¨šZuÆõ¨€”‚jEµÐ¡ZZŒõuI»q§æããP×êS¥—*¡PæéxÓeoÇøäFÔ]QWZÄ,çÅyH8Á†ÊuH WŒŽ zhiÙx‰÷ªñ‡­žI… RŽ-¼ôöm9´N»¸ö G/éÌlé;UtZC6T%m+óà¡bÄ…t‚.8±¯ï7Tí{Kõ²‹BÏÒ´Ut Èãªß·]R5¸²ÅHÕbf ƒ]²„hÅ &ð.dø“óÒLº¿¤L¾jfžŠeÏéJì§YÀ& V?¨‡¯Î¥t%¸tV0ŒñÔç«ÓCÖ‰\£ÍÃÆ¸ð‡­ÂûŽq¼àÛý©§‡i«£Cßg[ÿ}°€NìÏžè,ÕˆP•%¯"&ažô‚~øág§¼ ýoš±4ããe´x$Ÿ¹ +À_UyôÒX Ðk ™ÏÇeÐXæ.FG–¿)$c&gÖ”h-Yœ9?¤t ¶ƒ”N¾ ÷¨ràêàõm¶Çeß)X–&óù䂪¤dqšª*M½a‘§MkšÞ“õ‡ëÖö~éhRœˆ Xg¥Ã”õ?ƒ´Mëù°ì!D9ß8ÒÆ'TXAÚo†ÞM•2¼3m×ã¤Â‘=‘å8ÝMÏÝš'ZO©ëU¯ŸgK¹©v”§¶Å/Ž”pM‚¿mˆæÕ~ÛÚ5C襀²vÙÀ§c¦Ñ…—Œr†‘æê8-ÎåB÷ X™ºëÛaãáŽÐÔ´vÁ‡Ïµj7èd{Ú»’€ EŸ)aýJ,ŠxKß‹™`Q>•+*ÊÈì‰É|’,ÉŠ‹,þsA²’ç \ˆ7.¦L°©T×Q¢ÇÿŠô˜©¨±A€ªh0ö’8§A¨¥­õxÏt7´œÔ ¦ž p‘âé=ÑüS*tCŸ$ò}%ôY~Dõ}ËÄ+º’3üXQ}Ûñ®sXÈøäþT:‡ŸL·Ÿ×@Jn8÷ÔñŒIyfŠ÷SCÉ# ëÚXX—$gM»#ÞrŒ»7k ¦·.§àÚ¹.ÀwuëÔ¤Âb‹u§ªˆ°3BŠ ýGg¿]?vu/Eð x½~Öð‚{AN'Âü™ÿ%eëóƒÓ }[ N!a2ÉçqS(4´³F_ws–9ÜÂïfœÅé/Ë[]œ8QHž0'öksÐ÷½nÆbå§^êÑÆ÷'üÎv‹0îDÒÿ%ÄìÍ·ë«¿&× endstream endobj 692 0 obj << /Type /Page /Contents 693 0 R /Resources 691 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R >> endobj 694 0 obj << /D [692 0 R /XYZ 33.853 921.043 null] >> endobj 58 0 obj << /D [692 0 R /XYZ 68.868 293.41 null] >> endobj 691 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 698 0 obj << /Length 3501 /Filter /FlateDecode >> stream xÚ¥ZYsÜÆ~ç¯Ø¸\l•vˆ™0€Sypb)V,ÅbÅqÙ.¸ raa €%ÅŸ¾Ç¤˜ÒƒÄ™ž«§§¯®nWáê¡üýÛÕÅåíVZ«,ŽÍêêf•¤*MÒ•K¥S·ºÚ­~ ®öÅzé8ø5ÔQÛõÜéú¼/E½6.Ò¶-€¶ÖA‡ý$È™üþÝÚ¤Á¿»:?vLi®×›8þ(¶~e^U¸p·þíꟗo¬òdÒØ%VŽÍÝ6?ð¤9ã6Q™6~žZo\¨ƒŸÖ© „ù}ŽœÞáBéŽë ö¶%^¬Ø1µßç=°ÚXchÏŽT%¼s‰'Yp_V¶ÒàšwarÞ÷ùÏØÓ~0Ü7<ÒœZntååqªò¾ljDD^ @ø5ŒÃEYDVÁ?OÜkA:UQûI°—îjaŠÞbßôÝü2Ùô2Àzþ‘Ä%L"<´,!“h•dé\B: a~}y(º¾8vði‹Á@WlâÛgjä² ìxtbSø‘š¶Ïym–Àf~ì,Í6jYw}{Úö2©‡³‘åpÎ+½…ßÂÆÉ\9‘€/hcä»78^sáytl”‡çùñT×ùuU,½Ql\ÖÏÌ;9ƒüUÛhi*û¾éú+òòsGicUhS¿ì+al’àm-×á´|îýšd½ë^‰ Ä™²&¡Å¼^dùH5A¢hn©ª=ըʤ‚ œ¹L™p`¬;]·Í©/kÔ“8ôjë‰Z™œÅŽ ´¶4ØsÏkÏËoz¼6{R=˜1>8ê Û§öG%Vi|fû{z%g‚ms8’¿ê‘¤Ü4í¶Á¼‚‘­è”¬ ËÃÆ ÆP¥Ó`—Ëj äm_n+Ù@4¾+‡õz\Ï6X54g S 4¯ØÎŽŽ«ºfIßçNÐÆ1KþÔ®¼.+ðrÐyà‘æ†•ô¿¬o™–/j’¨H§/ÕþdP–û}Ó-ê”T:ì÷]²± —u .;¾¿évE±àùd?${·4SÎ͡—¹G6OdÁ ø/±yÚˆ5Ä•(8}ß/2b€,ÜĈ™I0;ˆÖs.?Ìc]bà)ñq9Ù…´m[{n—5¯Ê¹ÛŸde%[Š.y‚Ø©ÑkоÑÅë«‹ÿ^hWzeS`Ü%«Ä¥™ÕöpñËoájc µÊBT¹§™‡•…ƒ«ªÕ‡‹1h9Ó’4mJi«ÄÌ•O„ÑÑOK\´¨b|9/6” …™Ï‡  mزbR@êöEU¡–€k¹bâcÙ#.•=žz™9iº™moÙk «©„w]AŒ]W3ëÇ]J„cæ½ã¤Ç^ ºüPLBA>qy7Î] }1„¾èsÏNÁèUÁR“~Ñ»›$VV[ÚË™Œ¾+»'Þf‡„è;^É fñ¹wes’KŸrtù9£à‡¦/ü u*Ñz®(=£QhÂVŒ‚Mi75¼×E±£ †sÍw‰©myh—ºéôHÌæê ˽…#Ù[ød xȪ섛'^ö,†<ëÖŠ­™ÏµÆ8G!3oñ†Æ¥ ðý~é¨ÌÁ}V…âD¡iD5É—ià›,ĽŒJ­û¬…ʘtŒZF ¼Ý½¸Zlïs¹dß0p#ò#ÿ¶Áɟʼ$¾>NÑϨ ^u^Ÿ´c™Ë}@F MŠ[»âôA!Ëz[8:ã0ÃhÌôwzðšÆQÐç€>@È”"°’†qP7=‰¶BkœÓ”¬¶xjÙ 1Cä^ÚŒ•Ïõˆ8¹-ZÉ qyèç„ý4šXÓIÆÆâáò†GIüw8¼ÄrÊǪdz9ïpNU1É%-­yΈ?Ú§Ž÷ ϱp5¨< H#C°ðÇ 3j$_{gk&XËx¯c–û"lRL@ è¥ «™ßf¼¾bu6ç† J¦]Ä\$Sp„Ö&¾+Ž€1­˜ ÷äÓ±Jl² ùæ§Åhó„‡v¥?(SZH=|8›ždÁ 7:´Äƈ~À_ˆÙþ´/jIQÑÚ(xÿºS3J+êmÁ4¶g•½.Ìã$t½~Ïc3G‹V–hÎýaLòXÙyËé¾ìÈdZuâPÌš#‘Ö¼]q“Ÿª~Iwve YHÓ–yÎ )7H°‘Á‰Û‹-D8’æðe±?(vJ \þ&ôš³Í&6{çljrMˆð¥[Ì ýM6Ihæ¼#!G‰ oݘt¬ò­ŸW•\iXD“6S¡ðäå©k/«òú’_ ô%dJÅæ˜o?æ·\}ZÐF*L´ß¥YLß7Qd•¶g >±ÖŸ8ÎÄ£—ϵ`n4)LAH Þ’÷2£†jÄÓ5{Zh“o$£Å™‘_u°^)3I%`ðI3È7UPGá@9µmÁöÀIý?JŠ ù€y%ß8F|õk††áP°ÐCyÈ]p®¿Ëìøá.VìŠX`ŒÜµy·_R7ìãjv}EÛ6âk!ùïà83ÒNÅq6_ý-:’Ó?àÆ[dA[ÌÀþOL?˒Ì՗%ÄSš#¹s*ubŸŒèÈX„Б]Ûå$ °ÊX±ü ªÊÆ´zb”†Á›²íz4+dU2=f|^µóÕÌÅ3l›£“Ec’¸À.xoóÂÔÞ(gÝ·xȈBñ@ˆ…ºU‹P0Un¬t½ãòñ¸,èíô¼Þ‰g•¬à ÷Øåe£îS±G’{ÝG¨ûlZÎ(ëÎ’ìûY¼±Ú‹‘ê#Ö¯ºý0âÕ+CµãFÙ+6f)!‰6n‹žà•1 A=5 n Ssþ#Ñ¥ï= ó¬Ms1•¶‘…ã‹u/¬È«,X-´|¢M'’!ª``è"ù‚ ßÊñ0©ë¹Ò‚rΛVB=ÎÍ©zâ;Ø~ayɌ奙âQúNWˆ~…¿]#ÖP_»G…O_龄øâÏì•øÏTJ¨f?¹ýÔ‰äÙ“àã‘ÈL2})èœAò‚QÉé(¯3¾¡*<ûø³åGÙÝõktø€Ä>Â6ØŒ‚Ë}s(.¿£Û¬shûø]äy¹¤?²ÑöÈ»L-™p[L¶ŸÝyé=ÃnL6¿kê?÷Œ´À!“ ¡yQ² ´¶ ÌÁ«X|‘š7“Ÿ,Ú¥ècF'ü°TÚÈTœ¦+•Ä_XÚÀ•Ëh¯(–Ò†ÏbjšpøW|Ž–xÉÁ8‘œoûS^ñ€ßóOì5]ì‚ï9ü¡3dï‡ÈÝœBw UV4ÎL<¹ÊÅ6båÛ Íf2s±¢ÀF⺠ØAß•mSF wk9 _Ð΀øt1ÒºHétÈ;Þÿ|õý»Þ{õýb Ñ `άáÞo9ÇCà®\˜>þÂÙ[NÎ-Ë~¯¤$ÜÏKÃ^lÉÄ™L|ö—˜jñé^¬l¸å_Ÿ4[4ºÁr¿ùúyÁœá@8s6b×8§ÓDÁMÚb3ñ£+$˜Fál–‘NÁÑÕ¥²£8E)»5”£!¸<ùlÆçÔXy÷qÆšý“\v«JÎÑ>q÷öÔžyL½¯wdƒØð¸;”uÙõmÞó° ?œì)c²ÁÏUN<á0ËÜÎÈ$” Q¦=DÑxqAÔØÛ6‡Åš|ÍÉ* ÊcÔÙfÜ•RýRDB„×ÊâS±=ñ×(ÔÇ9°ƒÔä³y=ûØá_Š‚ãӨ΀ŸJÇo^9>$©JÒ•ÎB¦úË>zÓàÂálØkæK/.äH J4²3X©üGv¥Îß’¦pI.)Óæ¿H9x¿O?µÑÁ¸â‘BcxK“ttT‘;O}‘R7œûTîNÛ-$ÙÐù»Eì¨PhDéù †~>ñµNéøe©d¤ÒÈLK†¸yÎ'%ÃÁ$ñn3Ñ «æis ƒ… þjã59Ô{î45é  ŽmÑSQP8Ê`òYØ ,_ÙÇ N¿èë³"°,¤ÚF¹;ì’»~A¹w¨Np˜ù“ˆ=>ààRµ`É×ÿyýãÚdÁßß~€û½þf©b›†ÊdÃGÒok_ÖNCÐ !œÝBøLΦ ´³è…õa@Ÿ~&{/á%úE-úÁdQ$DŸÀ¦3cêÇÍÆØD…Qtþ WÞ"Jù‘ÿb-qÃïdòÁ…ÖñîÓß%ô%ÀâBÚ»uB?ÀÀß 9ü´ÎlЖ½ßdÑü¡'öER§:þ$bà{‹‡ïË‚ßE.…sŠ'×Ñ# ½çøùËØÙ"ˆJÿa–\z endstream endobj 697 0 obj << /Type /Page /Contents 698 0 R /Resources 696 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R >> endobj 699 0 obj << /D [697 0 R /XYZ 33.853 921.043 null] >> endobj 62 0 obj << /D [697 0 R /XYZ 68.868 550.446 null] >> endobj 696 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R /F35 596 0 R >> /ProcSet [ /PDF /Text ] >> endobj 702 0 obj << /Length 2008 /Filter /FlateDecode >> stream xÚ­XK“ãÆ ¾Ï¯à-TUD³|È—TRY;뤲›Œ*>¬}à-‰eŠÔ²Éyä×/R¢–vm*9Ì4F£hPqp âàû‡XÆ?í¾ùN›@©h—$:Ø‚4ò4²?àR¨@›]´ÓŠÎ6y”ç‡O?ÇA‹?qdvyðB¢çÀDé·5ÁãÃ?øË#µe–÷ðe__Ï&.¯m³(ßÍ6VuïJ¸ëßíÐõL4Åàz¾÷èÅ?ÅIü—÷ß»ðO^ê¦ÁÓ‚­Ö:JMl•¬Mù˜®mà“›°u®bjèx¬Ï—Æ]‹êf<øÍVñòª¯wY”åÓE¼kÑŠ§wy¤ÀŠ,ƒöë}Õ`b%Yò_kX •‰ÓH§lLf^·°/ì6FATõÿb·I£Øêÿ‹Ý× X » ð§Ö0¦Ò(Ïíšñ©ïÆ¡nD·­¦0¯…5¶‘߯µÛß:nkv:е]bîöX›hÁvÀ;Õ>Úl3£Ã÷^»bÖ‹^vŒí¡8×M]ô<©‡‹¼ô5(>2{p¯S?ÅÊ6γ Õ `~|N]û{ÊŽxibï˜e&K09ŒÊ/ÁDýõ!øD¨uײxi&ºƒì?9&ø8¦ÿV´Ç±8ÊÊ~³³áÉ^ÆÅ‘£©" G²G%ÉÒ:&«ÿøøþÏï¾a{+ :R;§ä{Ìf›„µçñ¥ëÑH¶»ÏØ4,D ÔØfb^—…Un’ î2°r,NÊ%J½ÊôZ]þâ62°Y$'ƒz: ÿç¶0@5£bg2©$[FõóX`«Îlxt­ëy Îꄜ‚+¨Gð\"ùXpcÃ\-U1LmѼùi?%í‡Ë8°†jìɽÈ÷õy„jÈñ«|ÂMhÙ ¢^§âß±©˜]4¾ïµâ_¥“ÈÆ_çß$Ò»t’W Év8ù\ÔížÍ{$õ¡>L†^85½%G‰ õoîE,Ô³¸$ËH#*¿÷îüD­ ¬?½1·»L8£’…ÿ$øÐËØøúY´bÆ&bªHU£¬‘·o÷ße xÒJ®ò>uƒBD—ÉÃ=×NX™Æ«fÀaOWîTZH²^[¯ø$À̈‹Ï³_ùűEaìLÖ Ý¥.×쥪œ0œ`€Ù„>Œ4 y¢ëÃ%ئü°O¯‰£º!Rú#€äwžŸ´žÞ?¬á1ÆàG*•~xϦfôB÷~àɰÑyHí„!ÆxžÖÛVVÄÁYøýXW¢ìT ºpÀ§0úsâ^R³«2ò€Jщ—ÆÍ§grúöB‘Â,‘ÅwoÛ”;Ð÷‚6”°`#®§/‹Ï`­p¶ªÃëá\š} 2~,ššñM’T`¡÷G»À*çõ+HCé–â–¦:üq“«Ð‰½mǤ ÝÓÉ7ÂÝ5.½ƒsÐJ*¶tB’÷“îµ8£-WY\ìÎŽ©3\‚ÎÆI Àmê¾]DÙÒCž¥ê¶lÆJtAÛ×:YàþyǾ çm×ì­)ro›\‡˜ ;Å·+šÆËü©aW—Èÿ…°šK§–C¦(P+t¶&dp{ ÄH`úbý2!Bñ_·U5€Ü8~’! týör­vhP¿¸<“ÌvºœoìUI]轆=´Î-i©Fê&pJ‡@%¤%—üÈ1?$v†u/ŠGŽ;µ5 ?ŸÏkÓie'½¿VzðÃÒàØcã4mäC÷|ý¼Ÿ.æ¼´ôÀDÄ]óöªkvýDp-Ö6c §ñ-¥°—#‹`dL ¯_%ÆËÍ#S6e×4ÅÅßI< ;O×FÎL¨·¯ýy¹¹åÝyëëÏBÓáÑšíÖ žöN/ûÇÿò- ¯–²wÍÍ]'ÃÇf2wŒkL8{'MúÙ>ã 7¬ÞxúEš&òø{ µü¦fB?6ƒçI!#»H“DñÎüVéŨÄX ÊÞ šñHEɽÞT j 3øºc!ü‘e͉*‡VïK/®ø-ÑQ®®n›%ÐÍ.DJ~†J~†‰¹ÞâXTÄ€â9IÏ%Ðð\1búA:ªLAÃvç F#Š·ÐT£×ŹŒRÞBÑÈÇI@1ýTE\ì´gm*ä.·dÀâºÀ_fz¨è”â ¥Iö=Ì £Eé3¾ÓÕ{?ßÕ@¨-‡ú8önù«ÃÒáà‰$[ù‘cþ”¾~_+»ƒž&Á†<ò\~AÑv!õnÿðgdâ endstream endobj 701 0 obj << /Type /Page /Contents 702 0 R /Resources 700 0 R /MediaBox [0 0 595.276 841.89] /Parent 678 0 R /Annots [ 695 0 R ] >> endobj 695 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [116.163 738.864 380.699 752.812] /Subtype/Link/A<> >> endobj 703 0 obj << /D [701 0 R /XYZ 33.853 921.043 null] >> endobj 704 0 obj << /D [701 0 R /XYZ 68.868 577.535 null] >> endobj 700 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F35 596 0 R /F34 597 0 R /F37 636 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 708 0 obj << /Length 3119 /Filter /FlateDecode >> stream xÚÅ˒ܶñ®¯˜ò‰Sµ¤$A¹|S²J9¹¬-');.;ÈCNøÐjòõé_»\y•J%—!Ø~wsÂÝqîÞ¿ åùãí«×?éh§Ò@«Øìnïw‰ lbw©MeÓÝía÷›gö¾R:ö~l†º(ëãÞ7ÚxwyUuoö~œe^~8Lðc›ï#å}.û}¤½ë>3Þ ÌD©÷€pÜÅ óú ˜ö>L4õÁö¿ýóNgA«¯U)Ë4\ò¶/‹Êu¸âõO*Ý)˜cDûÓŽ$Ð6æ·§R‘×}Ó–yÅoyyá ?òÊêÀoÃeïk äà«öú““Õ®ØëÔ;Õå?'ÊA} ˆày 'H.­û\6ˆV*¯‚ÁuosÂL'ܹ©»¾Í{G7w¾21 _áÜ´ŽYÔÜã3jˆû]Yð°hÎ:¿©Ó# nàÔ{¾ûxýèÿŒ“ÂGwåywª¼/`ï§ðú¡æÃ˜ç0Ù"ÙÆ‚l}(«ŠGî‹¿"^øŸŸËÖFQìÜøÀ/wL+sìʰû¦-§8þ=ŒÃn`^3$—Ô, 5 &e+i>—]Ñt2HÔ ÂSïRåuÞòºkàj¯ÐDH€¢ºÞµÝ–TH&[¨$½æ$«8ôÊó¥rg…¥9Smh¼¯¼ŒI `Dwnúòó>»@Y Çm8sw2ÇaT€¬Êƒkùu j›;8™©´´“ÀS8ldBà?]•w=*¾<‘ÀmsaM#6ä¾m΂„'WOtq~_Seãªû¶,ð’À»Ž!}~‡:I[jºAO+kë6¿‡*\]àýØ9Šž¤ =A {”È·0ñZו]ŸÃvQ’*Ô{´ž¡DAà-+Ù;IÆî‹° è ³?|ªØ#C‡E27Ì´푬9m?±Äï› êq¦¼¶ì©%¦â‘ã3çÇ ÌÙŸûT‰á!½­l:‘¼i„x þñXÖè" Ó„FÎeÓ}^É¢»¼@AšhOÊÛC7žà¶<Ý,`Oøö¾'Ê´öÈ`†³k›¡cÈ+ÏP¡à˜Ñ.¦gXwjôä8Ç(+‰Sð‘÷<"ÔzF6±›‹¼[tײíœBÚ¶Å„t¯L ±#Œ¸NŠè²<>0V“u¢ Jr^ÕÁÞJ¼L®ßZ1§“ '€š -FãÞ¸ÁS½D7j~ÔUΊ‹ £° #&G9?ŠáŽbÙò Ûå$/°o@~`Ü“ELôµC”rriˆy ¾uë“ï‹@vk?k;~'ñÃXæ(òn‚Òª'ÍC¼Slæ]þ*ÞBx³ÕØj˜0Ón–âp.uý±‡`óäêã„P8XÅí3—kS'¯Z—óqªÛ ŒÅÉiS­î­\ÛàY*…<©ðÆA¸ˆìfFG3ESAÁ"ª4w©ÑŒ@¸ƉÎý´ŠÛrRÙJÕ7c7'bQó™BͽLœžé3S[$šIs>Óiðú¤ °…Z§O[mTV¬Ö‰4ÖI³áe՟݃»Ã‹ƒÌÛîÜEâÖ$€æ«'v›íÙeëæZ Ý ’ú÷‘mx:8"‚Œ#'¿0y†÷“a“[àZŒ½Dtæ³v|Å”…ð÷y©mHe¤uæÆ‡òÎÒáA]%xÍë6üþ\漎 Ÿ'^ÔDAOñó±×ß.t Ú)¿éÆnh‰~{¤ê%u•“™`~ö¥ú2q½–›“F`Rï¹mñ¼ûO!ÓŒ§8ûž½ÿÏíy“ÏI$©Z„)ê«ðdž×KYàðLÑvçß·ùqlãó¨¾(ÍÔâ›m]]÷”Ý›U»d|>ÃFC”‚8 9M”Ù©'à¯z÷X6cb¹S60q²ö¬ †àºòõ¾s '_"åw{ú…Ù|^®܈ú‡_]Q­ãgU7”ÁŒY & ‹Ã’EM'†H´§/’JB7¥w@ÿ[i“®Ý>‘û¾2¨=00oÃ(j–AºO¾'Q[tjÚ@ÔÂeçÅ \$æk“H² ›r<äÜfÞ YBø¨[‚ç’¹jÉã+”N­pHM-7Á•ÅÊ욇Uή֑šQÓÌs¥Rù£I¾Ínu…Ñ2Ÿž øÚf–üá‡ùÖñˆ,´“ý¡Òlr ´ÅN†ÇA¸èǫͮãþ*6äÀÉ#E‡²ÿÏåe–J=êÆñ=,–¬ÇºìjÅZ#™Íx=kG?½u/»Ê*—–±©ÂQ`õ2ÿ ¯§|2pyçèCÊüÁëÔ!O)#âB?o‡A% ÐÓÌîgŽD–—ˆ%%Å™l³ÆI!¶ÅñËÛV1¶óëîu'Ôâ\™4 ¥É‘{ùÜ4GïèOÒ%‡lÇ„gAßt³¡ÆƒÏoÂtÍþlZ ÒäžÜô£Žú²á æTÒ¬Óê°(Ë¿”ãÚ±Þuà>$‘àI‰|Î],F ½˜Á½,…Ðãÿ*¦ìÿ×—fÿS™†4Dc#ЇýežózŠÁÑòS¼=a KÚ¨%á”æ*ûL(Añ߃Lölª‹ŠL_¸ˆÁÑ:Õ#´èn…ÊC~¾øÛ5~µ‚r•RLZü`!nhG¥ÖRáâ4}Kð~ÊeZkG_q^>qL/fŠþîŽK\>þס¸åÌ,,‹~¢‹’­å©+5Ñ: 2•í ö!·ÓñjÑ»ÛWÿ‡û"¦ endstream endobj 707 0 obj << /Type /Page /Contents 708 0 R /Resources 706 0 R /MediaBox [0 0 595.276 841.89] /Parent 710 0 R /Annots [ 705 0 R ] >> endobj 705 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [439.919 575.759 450.687 588.379] /A << /S /GoTo /D (appendix.A) >> >> endobj 709 0 obj << /D [707 0 R /XYZ 33.853 921.043 null] >> endobj 66 0 obj << /D [707 0 R /XYZ 68.868 798.142 null] >> endobj 70 0 obj << /D [707 0 R /XYZ 68.868 458.846 null] >> endobj 74 0 obj << /D [707 0 R /XYZ 68.868 344.567 null] >> endobj 78 0 obj << /D [707 0 R /XYZ 68.868 135.31 null] >> endobj 706 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F35 596 0 R /F27 556 0 R /F28 616 0 R /F33 429 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 713 0 obj << /Length 3011 /Filter /FlateDecode >> stream xÚ­ÉŽä¶õî¯hø0%K"µ 2‡ñ2ÎI<ˆñ!ÎA­bW£’ÊZº§ŸÏÛÈ’4êØ0ri‘äÛVGwÇ»èîû/"ù~}ÿÅWïâü.ŽÃ2M“»ûÇ»¬‹¬¸Ë‹,Œ‹üîþp÷¯`íß4WFoªþhxø05yôd‡º수‚w®f“ºÓðÁÓ` ~ìzü:UƒÝ#ÜV3d°gÜ?íwÿ¾ÿXÝÇ:Ô:cvª®úU¢Ûâ7 žO°¶œܵH1.Œ'àa4ÕáJ×äpm«³­F¬zwþh8ã 7ÈòQåC§«¦á! GOpá¸8¨a0‰·ÁL —Epèq+˺}"àÅM5ŒÊDˆÝáѴɈ¥°]á±C[dÛ3§hkÒÍq¦i¹¼þ=˜Š¦Ø9BHp‰³¯ÎFªtÊãjàUöu{¶2Ç@‘`î‰.]<äuðœtЦ$ìˆUvqñAM]p¾äO@«ƒ¸šq\õ'÷²5˳ì«ãyA‘^#>ºïZ¦àLI–JK°ç°î D³µf!F$™D‡YT,#ÇRÛ¨"BæÍ—ßðå¦S;;¿¾‰Âxã\}zRÂ{G|ã~ëJL´º¶'Åh?B@_*!–ÄÁ±²˜‹’”BK¢ œ·ö×iÓlã¨ãÒ" `ë¾$$Ab§.9J Ž{téÂEáÂKé“q„Õ’ò~Dµ‘™#²æ„‰&ŸÕ–ÓàÈØ`Œ´'Y¦‰§Ý«e‹½Oól)^²È—¶µ£­K5Ž*3N ¸ò¼—ÀÄ+RÛÇ+C*ÆuKR83œS8¤ˆêy¼ /ôÖÁ'8«ü, %e˜¥cqaW[læeXæ> ‘õÐ}ìóp‘!:‚“3½’þ$L£V¤Ždo®%¸ïÿ‰ ÀôAv~Bž9”®Z„ý>>Ðç>ÐøùdÄ*>Ë …|ÛºüxÀ°eÁý-Þ4×-äà†ÅÖ8­öÇé‰píÀ|qÝ”m'ðÖý%"ÆýÊy=\ºz«¿òFW_£Mȵã ë¯å ;XblˆRw­”q(Å£«äúêbÛr Ö× #ÇjÌRÑÑ *):ŸªVʉ瓄â8b8Rô²eq[ñRQñÍ©“f„«£D|:Ôw¬V{+¥ºvY`æÓ’\¹®?/Œ À7âiía`¤IúŸ–§¾9¸!A-Öó‚x„$*“ø¦K•D7]u)5« au³˜„#ä®áO+þø#]¦ šf’[8ÙÆô™4¢—@šé 1.Y8 íÿ¼â$Ô‰ãÑæaq+K^o¢Â$õS”Þò—V9Īti,ÏX£K¨\;‘*Œ—Í#B.Xä²HPñĘ:1"tà¦A\N@[é!ϲÐ/ˆNE+ÑJß⦊6å§Â´ø?ˆÏk)eúÏöx’l‡Ó›m"oèR{)û€Ì4Z—}änô 03ܤt5~éŒZšZšÈXúÄ2Ÿ*,Î_Iº)I(Ê(ù]‰6-ÂB{Ô7xs±-«¸“¼üý¶3åÜò<Lcjn(ˆOŠ!Ì^UÛúVÀŒ ²f9~oú~—F(±ÍšÒiž¬ò •SñC!aÂÒKA†r~aß»6ÀW©œä9>•KƒêâOù]‡ÇÝ­¯ïRÉŠ¯ª$ľœDüLò•ŽèYïºù"p:ÙøÒ µmf7rI’¹¦ÕwËør"ù€9 Eç`I:T:su«Ra‘È —“Ý>Ž“4xïDèG×Yϲ„m©²î èÒT-}›àFyZâÚ “T{@H Ëx»4‹y–Pš(U"ÚumŰm²%IÂ8Þa)Ô¨¯goØTkx@%d75ž6ö£«)aÆØ ×]/I®çôYDô†òÉÈF~©€>]ì5BhÙ9‹¡àîÁV}¹… ôÐeçÏDé˜7©ãfÏ4¸XSƒÐ¡šfäË|¹  Ôŧê" qÓ·°c_õrÕŒ‹Ï6eºQEnGó_õÆl4¼+Ë&}!ßË&u2Àl€Ÿe‡ úÊ×›q†…Ïœ CzF'†o³ixY¦™ß÷é¢.‘Ï\bÆOo nqÎýàK.ÿ%hçݺø“Çi»þìº|ŽNõØõáÿÖ¾ˆBm&zN^&DZÐÆŒÕÈ¢Ö`f8™MiÁ]:-gÒÒôHJŸ…mÂz}C'ÂOäš‚[åÑ`ø £ kBµTt²Ø«EÏ'\o±ÎÛBв0ZjÈóÉ·,ëÕ+#dºß0ËŠå«þˆ|ïwy@blRNƒ¬_–qY†‘*VY1í,ÇÛ#RF ·=6ÎÓ¸;¤…Ž¿î¡K˜ŸúǪ6ü(O݉HGÍ¥³ _À\º’HæZãkÔ¥â¡ïÿöáÇìŠØ-Êàíßï_o– i˜¾\x»ƒ%î‰Ægg* ÿaDœ rMy^]áéÒ©(ŒöÚÅÞÚŠå›ÝRS·Ã6ØYRŸéžÍ ]svâ%;±°“0;ñ’xÁŽS5žÑÞJ> endobj 714 0 obj << /D [712 0 R /XYZ 33.853 921.043 null] >> endobj 82 0 obj << /D [712 0 R /XYZ 68.868 379.401 null] >> endobj 711 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R /F34 597 0 R /F23 427 0 R /F35 596 0 R >> /ProcSet [ /PDF /Text ] >> endobj 720 0 obj << /Length 3071 /Filter /FlateDecode >> stream xÚ¥YYܸ~÷¯èøI LÓ¤¨Ó€ìëÍfDZ'»ÙØû «Ù=ŠÕR¯Žô¿O¤ŽÎ8AžD‹W_‘rsÜÈÍ/¤ý~ûâÕ[•n”y‡›ÛÃ&KD¦›¾*K7·ûͧàí6 ƒ¶Ûî"íH8ø²Ý…)ü6eÕ¹ïKQ×ÜÙW§-ôŽu1TmsÄ$ d˜á¡bÖ$¨NçÚœL³ ³``RÑ0SÕ|–*jªÁ:×ESØ}< 1MbG wfûûí_7;•Š8Îá‰(Jøÿü×g€Ét”Ÿe,+aÄvK4mw*jîÁÉð‹“Qã GÍ‚¶¯†ê—µäËn_u¦ÄÂdЉuKÌåVÅ`öHÌ¡…»zõ6\ÉZ+-Ò4UÐö~cžµ>€EʼncyÃ,Z®XB‘%™cù,¥ôM”‹0Ÿ˜”´Ç¾uG,Îç®=wì™ÛJªµË–”¾7»CWIi)*M‡Ip@ ÁFÕô¦È(4Yˆ¥;ía›L´G#zfeÓ\5È(0ÍkÜÐd³î RÐËóÉ ìLèÜÚ, (;Çù–A]Ó±T&"çêPMq2o^ê¶í^Þ—\3œÛ¾yó‹)5N#ovJÞHTøš9¶³‘!-Ø3[³ô¬ïz¯5æN”1Û÷MÁ$ô)%Á_K#ÉDšk§n<¡o…0(–«èŽãB¥°é%×Á¡8UuUt´¦ ÀRé¾Ú³’³`Ʊ©þ “ê‚#„©ùŸílÐpF¶˜è4øu›©À¦ð@Ë3¡ÔZÄc\z;í0s‹¡gª æNòbøü9AO뎇+*gýÐÙ›²möŽ_kIÑеœÃTŠ<ŒœÑR¼‚ŽD".JÁ÷h·_øæÖ¡iè¡A=¡ÃPN:¼§[$k˜¸çÐeÊ Nu¸°¾èìäq"2uåägì•;˜‡AÍCÃ\‘\‘DΊ3ÊœÂ*þµ‡U·Zj9 £àmÕÀÏ…ûž°Þ0ÒBæj2_ŽÍžÃGü#÷0ÎßóYàø˜HLÏ[óJ[IÈxù7¥ÁÆâÇÛ€c¤Ìãµ(—êÀ•®1 ïJ:«¦4Ž¥²û½že­ Ët¥í¸lҢċý‹¤uƒ”üñ^¬Ê+ã™Ú]Za=‰÷#æø‹sË9;d‰óÎE>È(›#hW,kHÁ´¼>ŽƒÃy–E9h•'eey¼ÆRŒž®·#‹º·ëí ¡Žg€I,ÒÌ ¦¸X#CRDö]V;¦+HÖ=SmH¤q ‡LÃ=ç¤RÖÆ2Žp>‡sz8A'³:»TÑ-·AÓµL(ÛÓ©m<{´³Ã&=©ëz˯A¸ vS=l FÊ8èÌy¬{R@$#»M9¡Áfo,áz2T@ª‚ïÌ“.|c«Š£áæ¡Ý6h5¸„ç¾Ú›ÎgÓþ9Lû»aH–‡áɸ¸@ˆ øî«â9ÌÁ$?Üù?ñÈOÍ$”»v!’Œ5ñbA‚Í”@v?˜sÏ=V…’.ðãúù¯jÀ3 bš3 ¤÷ÂC8¯}rÐ"Œ'1H©xÚÞ”TÇÁ?zäçŸç"›Ëû¿ýÒ7ÅÙfC¨…³µX>ŒMS|©ý@@Í Ü( !äȯZpþ»–ЄÊ-špQF­‚?÷#;%öØ€» Dê,tÃë‡ß´#sŸ ¶^ØX÷v)»¯r‰vß.c|÷y ®Yèçö¾, o›Cu;ƒ^õTÑ©KÓ™íø‚,XJBš»Ã+P»Ó“+^UQW½e{N•* Eæ>e>ÒT(29qÒ}Wäî»` $"XÑ[Ñ]9™ä ߵĤn/® Éß0r5ûWôÜmôÛ¯;–±{ «¦{µT†1A/Ží|á¤Ü­N]c|Òé,9ì#k4{c·8íu23O<ŸŸ )óÁ®É`Óe}½L4ÈQ0ñ`,:?&Ðoª¡>Ãà°`ìÌ~,mÒή‘3 äwø/\>o?–%`ªùÅp=¾¾þ–¬ó `²ùDØE¯Ð¡Ôªë±‡l>˜Þ¡)‹zN l8?³. ËšÂö”Ã)†ö3”³­ ³ˆÕª?ܾøÃîPác>@*Š\%›òôâÓïr³‡>8ÝÞ<ç °”ÂûózóñÅßù:Ý$¶[6àZ‡›<:Õ °QWnr‘'aBE™ˆ@'lÜ îv vGOdP•Ø÷+烽©x™™¤ø–­~‰â§!`ãgk$Dà{*zçj±¬ŠÍAåäÙ™ÏÎ&†«0aWì«Ñ7e,EœLþÝyf )§*óÜÎcF"€éæÉT‘Ö{÷ʶC³ÕÞÙ±`—µ­¥}‡DÉéGÏ–b¡æ˜´~ˆ„d¤Cм;Žb×w´þénÀ)vW4[zùSÕ ÀrÂcñݼŽÜ­¹o³2á,?WÁË¥I­à €øéZmG!’oP{% ’ìyñg‘' IðƧ&R\Z¦T¼ÕïæB…ýoä94ée …Sbéb#^CË3Öô_A_å)d#<2¶Þ¦×~üYÍ  endstream endobj 719 0 obj << /Type /Page /Contents 720 0 R /Resources 718 0 R /MediaBox [0 0 595.276 841.89] /Parent 710 0 R /Annots [ 715 0 R 716 0 R ] >> endobj 715 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [369.366 254.348 376.091 268.14] /A << /S /GoTo /D (Hfootnote.4) >> >> endobj 716 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [104.776 109.89 112.622 122.509] /A << /S /GoTo /D (figure.3) >> >> endobj 721 0 obj << /D [719 0 R /XYZ 33.853 921.043 null] >> endobj 722 0 obj << /D [719 0 R /XYZ 86.801 103.713 null] >> endobj 718 0 obj << /Font << /F17 421 0 R /F27 556 0 R /F30 591 0 R /F33 429 0 R /F25 604 0 R /F7 605 0 R /F20 422 0 R /F11 723 0 R /F10 724 0 R >> /ProcSet [ /PDF /Text ] >> endobj 728 0 obj << /Length 1480 /Filter /FlateDecode >> stream xÚµWKsÛ6¾ûWðHÍ„0$HæÖ¨q’žÒZ3=¤9Ð$¡¡H…¤ìhò绋)R‘É¡ã\,€}|û-ămÀƒw7ü'£€ÿ< Ó* ’8eq®ƒróõ†Ã4U¤2Ãâ°O±œK}…|¤Òm ÂÛ{üÞÜü ƒ~49e"lŠ&F½YÝÜÞ‰ìey’È`µ tÆ2‰àL(¬ÖÁ§ðÎn­YDIÎCõzåZ†«E&öaþkʾiO¤Ðlh,hx(ª fY>,"™…ͱ.m½%ѱ^›–ô¶p–LÃGÛãp¢õ'Ûïh¹²µ)¼ê£íʦCÅ,ô—þþi›ýâóêÛ;¥¦qð=fqì‹à’;œHùÂ}ÁŒS…S*ù½½“ptÌT¬vDꑊ!h9m‚Õ[&á;S›¶è·*M0"8@”p}M‚ªè{[úÀðáx(ZV¦»f%¸$%:¥+?Ô°‡'a¿ÃC¸kó­'‘ùVì•¡' í0·˜TÞ7˜4\Û͉–šcK“‹Œ9QAÛ’°+[{ð·ô ÕšCU”ff hÂîÊ[6¸…^™IÈ Ê¶Jv”&ĤçHñ°<’ÈÐ:ÅŠŸcÅ :W;ÛÑJgÚGçtG;œ¡ ç]Éñ'‘­°ÐïZãe]oþ˜MÓ’l{NéÔ­ó uXtÙãµÕ‰$ÎRŒ–¾žáÊaŠgÕ”©<£Ó›ë|Šb¬“…§¸‚C ºã¡¢D–xó—ù½Ç‹ÅçÓÇSž³Ñ½š_…ø¿¸·D^µ¤KZ3±cLWç ¢\¹‚&è ÚØínqÞrlý!3“ȹzý¢mêªmÝî.ÔãÑ”dœ8Š9ŒPB6´dk\ë!¾eo›\ì¦Î]sfŽÒ‰ Ñ¡°mçìs8ù!Ã+gPaÙ`‘ö㤉*Ûùð‚˜@“žà-bWÝ`"8|“\…‡¶qd k–ÌÂÅš;xÏëµýæ‚G=¢Ýúfó— £S½ˆmøŠŽ0%ÛWf}rc®pçÀ£žrÝaoW“Ö–ˆŒ¥úè+Ї–ôé3Ö°ÅåõäT÷ÐuŽÛªàºšk\ó;}ã’¹`)÷Œ|až!úX1®ãÁB ŽX$áß‹L "¤Öž q6²~8IN²´i‹íÞ¸ ëi Û„ûJd$çÐ…/#óB3ù¬9œ cý¡¸ a [œÏèɘI_eÝs}L\›Õqå0õÄÈRyÙc•`"MÆÈÄOº ²ôÁrÿ¾Ì{°è“¿ÒßÞŸî£hð*M_Pž¤6Ôí`¶7ýÎ;îkž*–¶3ÆÕÄ¸é Œ«ŸczÀŸš-à-¦O éh‘^nšE¦™`qo‘;ÞTMùåZ\RÉT6è~ÛòxpÇ…>Ñ›\yo2ô&sÞÀ’óÆsèÝçÓ®é MKüÖtQ³‰öÐûhv핚šFD˜C"Y5kžÔ§ñ¼EæÔÞq,hhÍöXá? ²mISÿ|†¸SïGù0RŤs‘êzBSC cì§GÌ-Úˆò‡c±Ÿº…-áésºÖöëÆ•½¸A Óy¹ÃÇ®±Ä!r¨_…ÏÛ ÿ¶îÙnž›ÉëaïxÇ–φ è©@’í 4š©(*š"9 ‰¸ð„CÓÒëÚ=Ã]Sôõðˆ™6퉾vÐѓ؋¬³žýk_bªŸÅ·Ö,×zð8I¦W®(½Cv"–#fפ°$4¡Fç}_.‰pQ8¾ÐQa‰ÂIM ˜x ¸·l൩»Š¦9s¤Ò¶E½5{ß\ÿï°¾‡ÇÃöù°&,–rÊg4ÝìÝéjj„~.«fp‘ø÷ÂM ðûåG îôé5yÅÏ߯R3©àWV?IS៤ÙL ^ÿ˜súE endstream endobj 727 0 obj << /Type /Page /Contents 728 0 R /Resources 726 0 R /MediaBox [0 0 595.276 841.89] /Parent 710 0 R /Annots [ 725 0 R ] >> endobj 717 0 obj << /Type /XObject /Subtype /Image /Width 720 /Height 504 /BitsPerComponent 8 /Length 141505 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFHHÿÛCÿÛCÿÀøÐÿÄ  ÿÄC  "#!$7x¸%&'12AB(34589CDTawy¶·ÿÄ ÿÄI !1"A#Q $2a3BRq%&4DbCTr‚'5Sds‘’¡6Uct“ÿÚ ?÷ñ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"Ö×ʨ=åª^—vó té6õãìO0y^<]ïšÊkvóc‡^nHòË_Í`r¿ƒ%ÈG r ƒª“ÆÃ)NÒç’*ÑϨþP¼·èï"À½¾ÏáËn•õõÐoœ™åF‹ÞµÅ•WZÖ“Û2&ôù·¬«9ºsvn®äI g*4\1$v%g]#a[4—ú÷ɵõ¨ÓEO}AçxEÜþ ±S’û®µZK:¡ÁMi4ׯ2`¥ÎJ9 ªdÀm tb p°úQ>ùëdRºv%~µ€eL”ê­¦ßm±­“2w`_¼=ºÆš'FCy;r1¡Î²6'¶Ù2ͼ2öÎêÔ)ÊœÞZ‘bú‚Où¯ÉxÓéÿNYFS¾Ë…óü ÂÝNláS½}ÏZþ.ʪRã ‡~ @Ñ…]«†®ù/d]e1éÿ4ú;ú“ü¼úŒ¾£ I¶aý˜¶ 6ô£Šß“ð$þ‡>jß…_Ä+§ê®§âSìOg_B.-aêï-ÝÓ E{KúN‚·gðŽVîi¬.:î}0ˆp9\GrˆÌRFìôÁʨ˜ktìšH®ø½ò·ZãdQŸýPÁþYiK'ÕŽñ'÷u\È'óï?Ûá–Yˆ0òÒÔÆaJJlióræ,£¤O1BÜRÓ©b¤X_Šq¬ý'çK¦¿x¶iËö•¶j¸ïòßÔ]gjAg•ûð"ôsçó(³ë¬q³øP¸èÇoÝrCøáyèƒ? <ï½aÕ¯µüis¼²Giï[y’×Idñ8ãk}Us§—ùT~8é1~Œ²6Eån¦ºÈ",oR§v`P]Ŷ8Ðèøhȶ7–R$U×å Ô€òÕ/K»y:t›zñö'˜<¯.÷Me5»ùˆ±Ã¯7$ye¯æ° 9_Á’ä#†¹AÇÕIãa”§isÉhçÔ(^[ôw‘`^ßgðå·Júúè7ÎLò#EïZâÊ«­kIí™z|Š[ÖUœÝ9€»7Wr¤†³•.’ »³®‰°‚-‘ؾÔñ½?a‡Q[^´ó5]l8ú…‹|U› ïå’Iv¯Ó…IeM’B“D„oü-þêK$ ß“…8ßDTÙ?!×Wžnÿ{V°¸Å\èÅ密¹7Èu~\¡–Xk³ÅÔÍ.ô›±‰Ší3f@Ü*å§# ÊÈzYÙ'?vœÙ$ŠoE¬‹gôLåÚϤ)»)üvàßl:ª¼œ½Ή#´Ší-ˆ´?¸ŽÖ¥¸ƒr8,H–y¤¦7)p¹d«ÏkvE¥ŠãÙŸ->ÊŠ[ñ-{à&o?B­»Æ®­*B8]Î¾Š¶7BÎ_ë—£d²êîTÓ£$i]ÙXÄBG ˜®ÒÚSïŽý3» ùÙÿ¬ýCiÛ² H4ÏXyÞ5èÊ^Þ°-ÿ1úqIœ Ü “(»d[j›®œÐ úÑU¾HeazÖGåPš+˜ê` !Wk‘J|{³Ä*JY`Éû#ʽÍd¬:”Ç!üz£êRÿè5Üy‘²Çù—íÙÕ‡¦ñI?Nàˆ»~Ãr´GàENù"È ~ÀòU§±,úÇÔ^u±«Z€7[fÃݵ¤¾ W625žøòåbKcògH ­NofI\­¸÷ÔH@ÈY2)!îÛªc,0¹T’ίcñ{&A ‰×rG¹¤m©†}*²Jê3 x=ÈvùL‚|iÁ fc ÷QF ;ǬB\vEHtÈ_}sÖ¹ÏB­Öõ½kï[Â.º?ë¯(K-×??E};ç™5òʳˆÏ”~é­žmÖ’íWaÜëfé)3 lI%qH¦T” 4ûìžR玷¢)’ÛªdÌ3ITnίdzÚA5‰Ø’FI¤mÕ†*­Š(34xȆø´‚h&‡5f| ©A”;èÀ,:¼pE«ëKå6'Szzée™P‹øú¹ø¼¨=ë¸Ô›¶³ =“Ûw•·XCÙšmófUçÀì¦ø•~ßXªØÄC„‚[2moÒÙS"²4oÈç”íQ>ã™Ýôe)S\õüJ{¼þò®â5ôöW ÚGNH,7Wv×vzþ£¼.PʶÛBÇ‚=•´Ñ b+_Xõå·d°ê™ä2Í€IFìÈäæ¾”1ÌáòYA»)’M9É•ÔnEd;\WK•’Q-õ®øëfxDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a´-þ!ã`ž?ó{•¥`ȪZÉ¿ä—Âض¬BRñ–VPA.pW—X1y´wzCäPÈún6IKôñrmÙ³º"E«ˆ„»ÅÏþÒð4·âûäs×~ñôû/¦bq[ pÞ—¯ ñMÓ!¿Õ“'Ç †,ì3üDaÕË™eQgG™WLñÄEìîSn"Ä·`|wÔþMù òG¾jFÉ_Ê5¡v{`§è;í%›zÔS‹2Ìœ>ùZ}ç) pÒÝߢKÀ]ª$«ƒb2Æúï¸Ù®k @èŠéÖW³}ÿ景Éš0ó;ø'ñ­÷mÙiº‹œúš¥·-‰-åzƒq…ì»”"î<»˜îïB¾ »(nS¾x"¥²C½lMÖqYÉ ¦½þ-Iôj5o@¤lê–Cñ­Ù±I)pÙh-®pèM©9 ÞøÝÈñò”i‘´ó¥™S"¶¿'ôTôpúR½ñ<1ªxZ¿áôõËk}ZÈÕΟ½Kç6vfQ` ½Cåûˆ;J!Õá„+ÉŒGI]œöŽKTŽ¥ÿ-úáضü\x×ÏgÊ= Vž²0–zž–UÓß6qT¼3N}{"ýŠ“–ØWMœ/ •Fl#,l[ƃZ ’÷p“}j" }wl5……‚Í…Çg¬ 3ù/–…–6 øÃýGSÌÄ0»È µ¹Èrœ:´iÈBÒmz¹ì4Ñwkm4R,«Üµƒú;æŠ3[ÕÆ¹Ñl’/‚˯×T½5ä'«OÍ,– øýê¡›"Ñ1^Bý#­¢ƒ™5àN4õ,‡ÅKf1gAÓE¬‚,×›ãâçÐ3ÿ ò/Hµrîýwö„nÅ´i:aʶ€³EÌñEàTB¨•½qˆ2—5Žýù¢¸ÅHbM½Xìã=ð‘ä[ÿñ°FÏù½ÊÒ°dU-dßòKál[V!)xƒK+( —8+ˬ¼Ú;½H!ò(d}7 $¥‹zx¹6ŒìÙ¿Ý "ÕÄB]âçÿix[ñ}ò9ë¿xú}—Ó18­ƒ¸oKƒ×x‡&éßêÉ“ã…Ãv™þ" 0êÇå̲¨³£Ì«¦xâ"¿öw)·B¿"wŸ%õÿÌe`éðÏšî· Ÿ©!-44ÓÆ¶g¢~A½O,gŠ,Á^zabC®"K£;l–½Fj›fWDÖâ[§Øóìpå»"™-+ #jG½¿<‚ËZ'Q§Ïð~4p$¥‰Ñ–×3š}¬ÆûÇH*²dÞþÚæÖçÎÔéaÜÂ0b5É«Ï$^«¼…ÿê›åÿûw¥?ÿšÆp‹Ícç¡þå2)}‰ê1m’§9\¿«º½ ,/OT·©Ö+SÛ˜DIL¥áqZû×MÖ8!…*a˜‘TÎű¤iÙ¨—œTŠ^ó„£ÒóOQÿ‡²Qëá¤Ã_Îþ]ùmZUÜæ<J~åHÿ2‹U?ØÑP HÕ‘$¨Ð‚È,6ƒlóG7ÖõCaÔ2-~Õ¾fó¼‹àkàÁ¹ú«гþB¾<‡±qƒÇJ>h…Ÿêu¢Ör7U€éÍ×™|\Å㟴b›67´˜;ßñ#ŽDWÏÜtÐ|ûC忝£+@Z¿á²x² [EÄo.wb»Ïý¡_Å‚>ú{”qè‹6ô2Ǩ­ŒãuøAH°;oÜÞhõwš¾ è¯2ν­*ëݲ+Ž)\C&oÐÑú¢å¬'Ž×¯+°‡ý¦åŽN°Q¥&zk}]Ìî¥V€ˆ°'2Wx—Ôîö…#S[ðWŸñ{E…þKè(ôÆ]ç¿9¡¯KZÒýxE!(ôã"¯à†° Ä£c¡ŒñŽä“áG¦Æ‘É'’(ÃÎve ?ùù Wv§–î^.ã°w/+yi×Ì­×kÕòk‚BößRA_,›KÂ[Š8D\^ìˆýƒ/ìUV.MˆÂ’r)oËRV»-·ü5Üyº_^Xľ«†·Ö%ÀU²-~Ã<Ëâ(<¥ºGÈÈ/À’(}®Òâ ¼S„TÔ›ÎÙˆ×UHª’ÿ È>()R´ß-?61ž©!*ÿìto]×¾öˆXÑÒlïBN§ëERwo‰5g>‘ZÏ3âDW®©³âPç$ɲ-íxþŒ¦¬–_œi´ú­Î¥"Y¾(ƒ‚ñ3Œ4JHmˆ»ø‘5î>֛觌ÖÝ 'Hu#E½·"á½¥¾A™©0Ȥÿ€Á‡âÒ’jtBlc¸=¿en$Ç¡‚=ïL201µ†<ÞÐÆÌ- í¢&ˆMH (È¥Á,¯<;õ—ÊÇÌûë磽³F­¸¼RЃw•=clùÕý'ÑFlÙs5xðÜ‘Ô>ÒÚ ÎnöXª°©©´z×<‘kKÔôUË_y æëãçÏ{¬/:û#Çw¤»¹v¬¯Qܾc¼+ªjê¸[¬×ÙPë+Ñ­ÑWq$M)=ÉeIÎ&¼&CZ©8ì&PYÀ"´?4E»ïO.Y~sõïœïƒ©*Êìo ðŸÄ”ëÉÃ%T>Ôç¶5Už·½$ŽÃBl°5‘WµŒ¦"ë-æÄ"Ð L\WIà¤P‘lï×Ö/†|íåÐé_jËëxGLô´çÅVu?ò[äRžå²‚¥­å}0ºj6ûýŠYáÁêÄJÏ«a'LÒwì©Ô¥ÁÅ¡ ZZgÙ¾|ó•)òýäVZêËëyï¹¾Nä5‡˜F…Ìœ.ûi“Ñóù»Å÷VBbÙ“¸íŽÚüÒcD­RâmòdoŒ£ jÃF¾L†¹”õƒ¼Å"D‡øD|ȼ=ÍŒ…ž‘•6<_é Ь|¡z99{ø¨$€‰§K„ÒLÔx×$XV_ÇòÿŸ¡×të­%ä"uå£ky¯~£ñ6ðtm1YzªôDMê!Ô~æl”E(OSÚâcÁ­ö0 ’2 rrC¢-Ü|1Ïágš­©]qC×´Ä(ÏV\¿ÁJéØ úª¦=8‚‚Ä #ÓÕ5gdñ¹4`ša1þ˜¶c»N¤™ ìo g à¹Ý0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&Až’¨$w½-5«á×5‘ç¹|€fÒ"—%Nà3H,‰‰å½ý¥ÈaË×m¯Ì¤˜Ø“dª*íÆÛ%1sžIPMÉ£SНÂ×ᾎ§}1ìÏ^µzfYæÖ1¦€‰×~ugó„*ùnFÚáskdÛÍŸo½N¬Ba¡9ÅÚOA‰°µJ$Ü5CG!ÕUôE³¬"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E„XöeqNB_ì»vÀ„UuÄPd ”Ø<­† I£7 [üªL{[0Ä8.âxÉ*ic Ÿ}.ºIöE×Ên:Š ]vÚÔ­áÇ[Òâ50R™Äb>]¡+q G&øÅv3³ ‹M¤'·$©á²Æ¸sr($Ô)»CŽ”Ñ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0Šô-# ôµ sùâÄL®à—•];©å½úÚs†rŒ9Щƒ–0Ï-Ã9ö{1ªŒ¾tC9O®ÐçXEåá|ëÚÞ·ól{ІGÀ'—l/#L@ DƒMÇÜS[Âó‚¢:uüÂ3æF¯"QÃÝxq¦«qÓƒ~ºos]g‚/c8DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a°‹1’m%®,åi9°±ßá¶H”lL)èuäÙÕ„ðb³’àÎ.LíóA¢O«€þ¼L÷v ¤I7öÎS(¡IS¯Ž¯ !àÊry{¶ïÛ’ð½,ïKú&õ{‰4Àе.«]ÄEär`Ì®-°¶!šÚXÙÙâÁ=»؃rŠ O —úÈ_Ì"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aµéò ò;K|~Wˆ=Í:þ°´eÕmP4˜²…Gïð(ìîvÇ7˜¼<"7¤Ž˜=,¯ „ÊÞîâ’Â¥¯÷þEÃhñžëý^NЛãqÈÁ=§ñye?jµŸ©,“³„1Ë#8·¯ÿŸƒNKü\îã5‘þÑpv ÓòÆ/Ãò†?Wæ¬YÍŠÔ,çWZÄ#d²VñôÎ9äòO*ùøùKÉ“2ØÐ¨; ¤ ²0ÝO>(*(sÇ=‰ÃŒÅªS8U"þͨZ«L;#Jª§é*_…¼Ÿkž¹Ų³F•…Ú…lU*‹Láò\ŠÕ×cë³w¸åÛ¿ƒƒtÍúÀÿd¿àÓ¯Á„ÉéÛ.Ñ•fŽM·3¿íU3ö$•È‚ÁS×oàµp’¿“ Ç®Œ_aõ!jO’I=ü]üÄWþíëu=šÜÃUzl1Ì8£is´Ù›ƒíÁÍÖ¹U؃N éŒTK-öæêêòƒ½Ê]Úƒ”óôOòþ?yʲQÁŠÙ@Lã«Òe!ŒIeÇ<¤f@"g= e–a€Ô2؈-5O?ŽìèÛ¿ ÌÛþ“s+¾ð™«UµŸ¹ RØ´L•ËR Ê<|5ªØÆå'’½|V×J… l¹IÇ’£‰¿c[ê³s¯š „L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E[}sé¸7üÿ`ßsÞ“%¾×½2G´à+yóaûرțR¤ýýl§Súç¢Öc—leÕó°I¬ž3Ûvj:Ž!ž¿ÑGN/äWù9.[“ôÖ©—ªY:sq (FYÜb&[£ðùÂGâ#–õ(Õá·±^oÌòïR{•5Í~£|ùœýøáñf‚…A&¯ÓÕŽöJj±µ ÷á%âGÊ~|¼~i½Á/žÜG°á|¸.»g ‰ñ´¡ÞÕ%¥e_"íÑÀ´œêˆ=Æ¡¨÷ m;Ë\[¤Ê2¸ïâ½W›æmÚåü½™‚—È6óWafê•7r˜ÌxÌòGÊÀõ©‰´­ A5¹#²ðI¿§.{åÞ/þÍ/Âþ»©ñÞgezskÜc«äÌšM—dà“?»íÒcÆ­¬…ZZ ÖÇ-b YKÖ±Úõ;¸@ÉÓ·öUøàðd> =tÑäŠˆÚ ê¶ô´†¹ŽËe&¢¯Dõ²\çrž&îŽitRÛ ÝÂBK£~¿ æ ˜¢ð°êñÖ‹Nˆã¡ÔðEXcx¼¬c«Û´b^Nå-ëA5Ùeg'ðšK,~š3füÞ矊݋i›qÈþ ¹^,̶ÂëGˆÜ³þ ´‘´"ÐÒÕpVqÚÅ25xšÆ:¦"7ä+uç9ç)<½|¥üDK|{8eô·S!?G\̲Tgõm<êNÜiÍ™ì³8“+%äÖ~ãò 8»=ÅÞQ_—ÇEé¤õ¼ÉÊIoP½ͧ ˆðÁ=iLb´W€¾öc ÒÃ9›Y*…1Âõì|’ÏVa&žF„ËîgàOûC5ÿÄV¯“àïÄ”¸k¼‘g™£Zk¸ßÃüµªåœÕž.½bÂÁ6¶Drø—§CœÇIc)É;d*ÅëoËŽWó•ߨcq»Ô®š,ÙØYßÚ×T4%€-W¶7(!\„@š]‹pn$›F µ=a¬Iž“Cøš¼U³‘Åñ_h%‚Xg–"p@õ᪂i"ŠS’0ŒAßóíΔ¸š—)í­Á¹›Ù®+·}²‰å(å¨dqtoDeÀ[5ä,~GnKÚ—ç–ÔÙ }zw-Y;³Y°Z‘0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹Z?&*ÞUøµ¦l{êbÔ½‚|RBõNÑb:l9õÖøÊ³s Q„ÓouÛ{wïLãÈeF€³Ta¸µ] L!È«‘ZÏPzn§ò7!¼.G'qb¬‡Çcí¬±f' dæu6š?7Å µå{hMgytæm(vmaް·%¾×,½”jàµàâ!=äzÖþ´‘Ù·}óç+Ö¤- žyëÓðFŠöÛk„κvNa¶–Ï!Ò¸4”¦ÆÑߢ37Þ^ZKd“ Äñ´XŠñá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"ñwþ ÏZ¹Û—ô_Ép§´É…TjŠT  Ú¡;Z¯Bóû 8è~»mÄZE€m)­šÆî¤Ø%´Ÿí*—>5çý²\¶z®§Jf*x—²Èîå&Ôòx»}$2 ßg¯t§'eúSþȯÃõ.=âlçâfÆ/ Çb «U~;8ý;´!Må±l9²e§pv«”dž±f'?€$EŸÞ7Å~K…@œI;*eÏ®nÇüEÿU¿/à)Ò©ò_DY’±UUQ´ô‹ë˜|òˆóè~0ÓÃLÔéP²W²SñèþªpïÛ1³T…£ÁÝŦi䕞9þ:¿öÿˆ›k©dÏJ×µ ³MòWüƒf—.•r—aÈÉo(3ÇLøÙqt¬Å@$}ŒfÃ^8_Á×´(R‘TrF!.×㤖AtUç¤ÖEdúé5RSž¸SŽºã¾wÎ÷­ðB&$,BLâBLÄ$$Ý8“?lììîÎÎÎÎÏÓªÍ5y¢±^Y ž h'„Ê)¡š"cŽX¤ŽHÌDÀÀ˜€™ˆ]™×Û9TÓ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E§ñû>A¿þÄÿûDk¾?2‡|u\2Ãg¨hß•/)ØWt™×íâ;‚;°ÛUT~](%tú²>ÁpYUqÇ>9¬ î“AùBÑUµôEÔÃå±{sçuÞMSÉcóxÕ)ñZ]{u?DB|iaÜ~¨‰Íéh‹ãÓGE¹PêÖ×’†Æa¼ÔÌô“¢lY'kl‹txE¬ôÿß7í­ê i[·È4ÝsCßåQl1ûGÇW=ï6zÛEKRØn—yÄOÞ>{bãNQ Æt†ÛjC¥ž)NÑ"Ù<}ñ˜Ç•94=JhmBHñc62ÀìþH¦ðäÇrK\cí8òAM¬gʤƴ„ª  z\u‰"íð‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aAÛM´E+fÛR0ƒ³èê©´¸x{M büÚÞ¿oÏä63&·]pš*ÊŠ(š|õß6ŒþZ<'—•˜Ú…I§Ýúi¦añ¯~ºyç(ágwfg6wvfw[‰xþï*ò^‘Ç”d8%Û6,~*ÅÀ±ØÃ•¦Ìe~7ïäV&+¹#ŒXŽ@ª@fB/â¯â–“’ûä=K†z«ŒŽ9’;[“'Ç3#ùSÚÝÆp2xí$Ð;ú’NêÒ›³Rh1 ïëð—i ²=xÇ‹0¶wnB|Å÷’Åj6eÊÜžSùdŠa@›¦cú›RÄÒÄÂ"PÍ93; þ—¿Ü›„ü0~ƒŽµ0§†Ìí8Z}®bè×’¡Rö:jv,BBg-_ÉpTo ç,³Ã‘Çbb)KÈÞìóÜ«òº˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Xu]×öÌ2C\ZXu™^Ë€éªW°#,“8d³¥R_¦Ù ^F “Ð.Š+t$µRIM§÷§ÆôEÚÉc1¹›¼Rac–E¤Ôý’´€úÀöØ_L¦×vgAÊnr”÷´È Ñ–n7¾O®w½aMÐG# B|ùIÔ”L0ƒÖu"#MÖðÚÂ0»™þpä³%™©S×ÿ÷Æv'D+ÿÞ§XE-áðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aŸñzÚçͱz}¥Ð>Ïv%Õ÷c(J=PQ€YDúå95õÓ©©u¥zÑP+þÇ|#ÒºŸöÇk•± ™9JYü\™þÉÛ¦v9ä{ÞßÊ—¥Ù»úåý‘?[ræŒç"e ŠZº>>¦˜ •¿1Ë…‹+Q±H/[E±È>ðlîÍC5øóQ4Ï•ÝìWö¾€“[/ü¦ŽÈI“ý9ìÑÿ&”ë)¯Ï*t“€§ãú¦XLLëíU¹á›ÁÑaµy²ÅñÙÊÎÌÞCÑ}=G1ï·÷ú­Id¯DB]“0°ã?Ú½ÍPòO;ãôìMá·„Ð1$r|39ÃùÎÂ5fppq‹Gh<ú:ör™š8Ü¥)·§›Å|³L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&kƒåÖ¶¼ë ˜RkSmöÍ­é?;ùâ ô ²ihow ’ÒÁ*ÙÄæ9ô¼”®TâSl¿m©4ÿ&g%7`«p>;oK_­sÉ¥¿êPWHÿÙ“|vó>qkj C®¤áÏ$r{Êåb7îC†ÎgéœàÈA×§Šã±Ó‹eØE@<9ÿP~E¿ïþWÿŒ~XÂ+ÿ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜Eâcåún_¤þF*ÆPŒxàݹAÖÌ¡|ßÏþ¼ŠDéñsÆÄÔ_¦•»H{í^ºé4‘ñg.]-‘ ÅÓ)#¨1¸ëŽ“›Iˆñ;åz6rxIØÝß¶aý6g~±_…¿ùMï%j¶:ÆÍRæÅ=ÀšWúk0W*–ËþÉ–V–®§_TºAä"!´#°œ’û¥kFÚn£­ª¶žä8 .=Ú§Úhc[hã¹¹ë•?ÝÚ®Î\–æBŠÿ¼±ªªÛÚõ¼öÅDÂÁB•z½ƒ; œQˆË/¿}Ë#¤ïíÈÝßÛºüåò^ëw‘ù tß29YÛ6\¾sÂɉËZ½ë²ÍJ‹¸~† ž½(B?åÇ xã e'eÍ`é„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-r|—±ÀÝ*jêÕðÄÇßu¤ÐP)ôž®¯JY4,ÌÕ(Žâl¥ $oð!înéõWöAä¬ ïR€£2%ã®9'ðT ;3äšÔöuã+oÞe/Ç-T ͆ã£òäŸÒWÊVãLÎ/asFwüt)Jí®Gśƙ]d_Ü™#ÝŽ jä[óÂ--Ð^<©o‹»ä>k7—z™àr¿°¦3îolyÊ%Ð ù·ÌÅ ºð=z ¯‚õÚ®$pd˜âÒ'“'Bƒkm@B-ÆÇØÂŒ°1ÆÛWw%º>ÐÚÆüµü€šBDW|•Jœž¥guP5¤G‡g÷£z]ÉáÈçH)R.ߘDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ,*Éš…[W“« Å- !#–”7*rš…¥h1× Ñï½ë.gêèd5ÿô²¼qκë­kp²WC½‘¼‚KÈYٜڼ'/ƒ;ÿ¼~>#ýIÙ›ÚÉ´½fÎé¸jÚ…9ņ×àœ€Œ+É—È× ÖdöñWùþy_Ó q™;³3»xÎø¾¬•ôÉ;Å‚û ÖÈT­G÷A¯b„çé)¹E$>ÔãdañÖû>Ðüo‹ ¡ÒÜs׎¸Çû#Íž±T­<æf1x„´¬LD#ÛyEªûqvœ™Ë§f_¤OÇ.ï þ qÚ†+1 kÛ615+Ã5æ±j–Ø2bqðA$Ì%ðÖÓË:ìK狊P…ž2!öÍžÒ_™TÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&PÔ‘oûÿ•ÿã–0Šÿá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-hü³[õ?¦ý˜Zã©/=½‡”ÂàUU½­"æo<ð‰% ô–èÂ$ÆÔü ; žùûÉKy­¹[-+Oºæd/nHàf7Ž&;“t$CúJ:ÏwâòƒuÙ2ö·à®oÿˆý`kWŠPתÛʹÙ)ã­»ç_[ƹK w473†ðùB„çåã ²×?øxªM5ÖvEÀæ9z|‘ðÞÛ³H>R!y3‘²‡¤WÜ¢«v³3}|J¼kõõÇJ}VI]leyן‡ÜKEÉeåùì´q¹·DV¥;St~ÜáNß§®ý³þ—^ÈþØ.A{û¾™Çt¦®ø¼1\¸Õ¡”Üá‹ J¶Ò@ÌÇ’¹·@í/“´RGÔà^‘³Ñ‹ã a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Z¼ùU·-x=cæš^—°]iù¿¶=¡Iù KŽ6€KÌjÈTÕ¢{dY’¨ÜÃrkxMqSÊ¢Ð÷‡ãQ`~’úŠhšÚ)ƒC¾SÇòɧÀdú ÷ôehx½o^Ö›²®{z¨š×Tv›´b¨[2~{—Iàs¡l¨™•žRæò´QéüFÙœ9 R-Òá–è/ny#Î÷wÈ|ðôeW̉÷+üˆxÜÂD;SªÌnmó0a:p2ºß[ ¢›E_þ¨"üëþ’ë¾;Q5–ã½+ÖÚãŒ\X­Gq¼_R2[!ùFñþ:î$"-ãôqVû3·lîÎìý¯žß=êöýøŠÞ¯Ý¸7&–ž½ íTé›ÉJ·—`’iäb¿š'ù M„„8È\øft¼¨˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a÷ÿ•&^©ªk”ªi”n¿¾¼óè*—ÔT®jÐsä[6§t9>Ø'-­ Žø¤:‘Îk‰L$¢ôØ×.!Ð T/ãŒ"мÁæP™ë™ï¹ý¨áC5ÚÅyõƒËµMç¹äÚ¿­«.,- ýÚdz!5Äž[1´fÂ;,Q`q†XË$ ™·ŽäEª³·[=Â*áÏúƒò-ÿò¿ücòÆ_ü"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EãWä–Kýúù,aƒ¶9¦â„FRéû ‚0ôw@9AB ­Ž–tT©ê¨t‡Ó`¤[‚ºGJ'½,§yÏ缑(¥i©|¢þ9(€Q¬/ä>R¹_i‡ÇüŒr?míÿH‚ì+qGà§-´^¤T¥ØpT>¶2£Y­SÚlÚÚs“7Ã/ÇF85IhJ2ÿ⤯POgŒ}‚ÂãBaÑ8cvøÛ|F4ÅiŽ˜‰ì&±Z…Úb¥¾’ '`éõÒhóôOïžu¼õÍ*ÁJJqôñÔ­`vð‚ ˆzô-â з¡û7¦_—9gfØóû%Æ&¹°f²¹ËLsƒk9kÓߎy¤˜š[å1³Ù“1¬—$«*a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„QÝ«oTÔLÞÏ»í î›­cê6¢ýaÚ³XÕydYåÌFVtå²ç6vÕ^\imàÇz9ÌÑJ”J)vEÑÞ½òo§K‘æ¿PyßЧÄn2XuÖ¶Éqq-’¤C@¤Ïë2 è³yé7.åÀɨE¦7Jö2ÚàŠÄaðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a0÷'¹©ŸÓÄZ©Š9=;([MkZ´‡»"P€ü­Ósg*ò¯ ŒM\,9rÉi¨öÙq“üNRhäu÷ Ý÷Œ6‰ˆ,žPÞI¥s‹„…­dm±|q3³´PDÄ'nÙ‹ÅZ2êKׯ?¥? Ÿ…¾IüWr,:6‡X)cqáCtÝ20ÊX 3,¥\¼ñ¸ì­òŽjø ~´ƒ{3n)Ζ#™Ìb¼?ÞŸ+ÿ ~•°eÍ÷u¥X6¥Â‰³@()l¸ŠÇZ4·J$:ÉDÃv•¥Þ×}–8½:©Ú¼Ž‘b¶¢ x~'Îr®ý²_’Üy¬¦26ghh`mÜÇU¯nì.Õ$ leú§·$Ò»¿‹F!~Ÿ¸·ð øFáMFž½sŒ´Mâ솒Ûyg_×w<ög ñˆI$rlT¬cðð8FÍ/O@i+ÏvKW,]ïŽ+¢Š›·V~ǔʭêQäô[ IÕ>EjÔÆ.gZRB«º‰#ŸEÑéu7#޼ví' $G2oäkR#&Íxóœs8;Ñãw V²ØY¤hŽõ—’ÆSno݇•Ĭߪ.Oõ5æy¬€3î'©gÌ?Œì²ãnSÖ.n߇97V[°jØ8êá´-þ¼UÙÃ<$ƒ ©g$h°ùŒpãðv,É5}Ž·…áØpžÔâÒ˜Üâ6Ã1‡?4Ê"’†£’6#Ætf|ft2ÛÜDQQLÁUMqÈANÓQ>ùëž·õÏgUµZíh.Sž+UmEõìA Ë ðÊ,qË€î&.Ä$.ììý²üÐçpY­_5•×6Í»àÁ¢…ªK ˆEhŸO%:"ÇŽWs‹º3܉(NÓŒ†³,By¦‰|l™“B¬O$·}<*åxy‡Ü“¯ú§Ë6¼Ç˽z²¬ôÇšüæÙå§yDBj±UsjÚå«dV.£Ò; :ézËÈòÎÛp G~ŠØD[¾Â-'Ñ6÷¨à·È{-7ãÿï´MOr?¼ÓüÀWu‡ë¼¯æß3¤côä©°Ç%DaÁ+ùNФÿ!øãJ¶ú"ܼpç‡8ó ”…úeýÁ•¬çÈßòb½O< ¹±ÿ0 „íüIª.òa§À§þ¿íÇ)+Ç:"îp‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"Ä, Ôb°ƒKìi£’m(4mæW#rS_v„gbwÕM-o].¿ëß —Õbˆé!絕ãÄÈ^­Œ£o#vF†¥ÓZ±#ûð†ÊCvo¹ˆ»·ê2vgwfY¥«f÷£^ÓuªGØ6œÎ7†¤âö29[qS¨nÎ1EóL%4çÔpBÇ4¤1xš¿^_5ÿ"A5´læv¿lqa—Òg4ÒôTp²L-ÔÄôPáx­½šöé¤Ër©“ŸñÍ!ü‹X(x:ìù¾hä Š8`±3ÁT_©"Ã`ë™Êmæ r NsËÑÕ\“ã‹ÇäŠ1ýdk8®.þÌ¿Áݛ٫‘Ëañã”ÎÏ[ü•ÊyšðׯB¹üY¯R{ƒ[GʼÍÖèµËÍ/ÑÞµ/¹?4yr“ò5^ÉSQ°¶ø´y¬Q¸stü­+š;£ÇZ"O9¤0ÅÉ$G*¢Ê(Y<ð+z &ÒÄ KMÍAûsZÖ0º–2 NœukÄÒËâjì¢Ïåjõ†;6$w's&`¢€"€#ˆ?.|ÙΜ›ø„Þr|Ê;-Ìîbôó?,ñàu¬|†/VÄóWÂáê€F^)íÊÊZÈelÜ¿g[/PßcÔÒKR«ˆ³4ú¦ Ü«û+ÓK¹[­,íûäºêL |ñËËÁâ ”áÑlw¹ƒ—Øû³š¨kŽ[ã {†*ÎSRvš1¼ðÍ~e¡†?׎²áÓM1Æ"Ôf”Lâ”#Ž:òÈãí/ìóütlŸ‡ÿ ¡ï{K!ÀûMÈñ9¢ñÅO´I h¦ òZ°µho^`ïUù%¿uëë” ^Å3×Ëóœ˜EU=·1Jåûdî´Š«½°q UöáöÔÄác¦¥öµ·º®’jpp1DStÖ@US#\Ò½ó‹n·–±–7éÊzíLEþNë k›*9MÙ¢’Cq`&!bè]Ý·×á\=›œ¸þ¨¼¡3,[óÄÕ<«¶¹V|Åcò½n`y/Ô§X$;QrÎ ”Âú1ø†¥'—ÜwlíÚýÆ{"j#@ûl»˜Ë‚dešð$Ï ‘ :C8-ßC–¾¶Ûåo¦àŠmjæ_6ðÇábKöb/ŽO8å°‚ÚB„¦‚•wñ2ýÑ/©ÚŲIƒ×¸çŒ!sê14õL=øžÕO§É¶¹¯YÉäíIN<…‹_!ä¶l<³I5HÁ¦¯µ™˜£ïÓÎza|=L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„U7Ø>3©=¯_Åá6k‰ {®¬+b¢·)¹©õÍÃNÙñÑ\Û['ÜÄLM½×L¯oŒGòÔûuix0g6RûäEE"Áü£à*×ÊóIÕ¸µ«èOIßv4f9“ßþ¥²²lïíÌD÷7xÝoÓj„BߟÉd…Bcü?HUöJ«Ëªc–‰êÂ*áÏúƒò-ÿò¿ücòÆ_ü"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EæÇüD¾·q¯ê(•¢lWKoðK,EàÎÔ-©Ñ^"ìȯ´^ä¬îNn<褨³Bp^û|áø…ÛdÇâ)êõÆ\·¼ƒ³ÑÅ)5XX˜|¦³ ’ÈÞLbõao ‰}¤þÇÃí=·¶.xØj´ô8ûå×ôà2®P¾Ë~ˆs%,E+Y1˜\•*5 à’¬ãžÈˬt=Ê.þÄyå×Ðs¯Ö±¯Í¥Ã7î¸Î u‹)=h!t™£ `½ÉŸÒ%о9Ò€954EQD–Òª]8Lü‹_—`¹ŽG=ÓCæ2A„¿@tb&/fæÞÂH¡«(;±vø'ö³þ%½^`¡ÄZåÿ›Mâv²_Of)êe7Œ”,ö¬9ÖžjÓŽ$+“ø[¥!Ÿ¡dHÞ0ßÞoµòY0‹Â×Í’Öò±¯š´£°kqË›-‹lˆ9·£°tIyˆM®§È@ô“Ò¡ÈBE¼¡?‡LÒ i-߇¹£S-Go‹=‹¯G-+d øFXƵð•žàG ³u1€È^³3;þ¦?³3ñâðéŠw«Qæ6Ž=¤ZVU²rÑ·&oQ·Dâ×-\©)•«M&2;8‹2Û‚ÃdeÂd-[µ,–1õûâ¯F7ú¯Ìõ]Ò2á¨í#ŽŠ,Å,Qšµ$˜RTÄñ…,vãO§f~G[핏n{W…yW¿\é›{NµŠÌ‰Ëf¸ ÁŒL@.ÄÌXAÎFyagpɳ»;;þw¿ü7oy·|ãI¢°ü6bÄúä¶¥¯=‹Íó+8S±=Y§¯-Êõ hdJ9‡%Nän1»Ö¾Äû믮õ¯§×zÍõ€Ôö®y+jÚÖÁ²Ù„|毀ÃdsÄ;ùÉ:µ™zg"n™ýú_ÝþÖ"¶oë¦nÏìÎïÛ¿mÔ´\s:…ͺéÝ5"ØyC4Ä= ÀÙ«qæ—Àm 3J¦¸)LØG¨¨àÓ¡ÄÖ3W~ÅN'*h“H[ªö¹—t|ëRÖ{‰ÞáÛ¯·3\]’²×¶Ì-h!)îäu{¡aÞuªÂX•ªW‡lÀÒ‹3‡½ŠÆZÛmõ2Ö!Šÿ‹ ; wA¼`úœ]Ëéf~ٛȞ K¯ŽAƵù§UÁ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹Z?&*ÞUøµ¦l{êbÔ½‚|RBõNÑb:l9õÖøÊ³s Q„ÓouÛ{wïLãÈeF€³Ta¸µ] L!È«‘OžÑõ¤sÆ´ºv{¤2MhKåv{LÓU-VÑe¶ýÙmÉ‚ˆW5ã#“Úâ12,îoG=H^ŠIº=kzzU3Uã¡ß#{‚ù®;7Ë~žóY>KõEi_în+ ­–;â`Òs·Çø£E‡]ÚÌQh6݃—Æ]"s˜óä*8ãzQ¯ôTlqáÉ"-ŠaðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„_"@D(¥Ña‘P‚I!N@tã¥]u”ë”ÒE$ùéES®xãŽz뮵η¼àˆ@H̘DYȈ„DE»r'~™™™ÝÝÙ™›·U"Š[ÅI4óHC @RK,²qE1’HdÀ äDì"Îî̼ ۮߓ”¥[Úlá¾Ob3²3uÐʪ+T%»¦Ö¦s9Ò;X•™¢ À¼ÈÚ|"©-r• _…|–’ß%òƒÇÄÑÙÈE .âNR㊗ôöO8ãžpé…Ê+ÃÙ?ëjkÿ‚À [ÈÍt­àôüŽO$#4a=ýžã]¿‘­EÞVŽò[ËXÜM¦"’8obIœ!ˆƒÞt^4Ç ŒÇaцáÙãQ6&ˆÔy¤N~ÁZØØ›ÇkinþÁÂQÆGŸþÔÒç_ý3ÝukANµzu£kU‚*Õâèb‚Æ(£ý„#oÙ™—å'9šÊl¹¼ÆÅœ¹6G5ŸÊd3Y|…‚òžöS+nkÙ “—ûÓZ·<ÓÊ_¹™?î»Ü®­k˜Na5ë:’ôÆ-`ENUòa!i3¤ªk”ÓQÍè°‚áE:޹㎗×]õ½ko{Ö²ï„×óÛ-ÑÆk˜L¾Á’1# ~w+tÀÜÌjP†yÈE™Ü‰£vgwveNIb„|æ’8ƒ¾¼ä1íþÍäNÍÛÿÍiåÒ[å?Yyv]^¬fJ‵n@¨ãï÷!c2F nh±!Þ²ŠÎRkbngwL×ÍìöÄ}mŒiè±O_^¼«øX売9<Ž›ü)&åf­”ä<ֱƵa¹b½›-Píò[\¾·RõÊ¢ÒF7 '˜B]{Sû>ÿUøñ¬Ü±’½.¯ºê›6;S3›šÓÚ6,ðb0Cbk×¢Ï}62úK³W¡˜Ê jÅ<쵓þŸ`ÎanV¯—À©fóÂ_ Ô’,܃íy ’RÀ‰ƒÈWyFu'>é†$…LâZY¤¯¨ ˜#ˆQp“‚×¥ÉjÛg5ñN>éÂGÀà­îÆN £wŽzõòzv–Юd&®ÞGoQŒQc4,qyû»û\u¢Þih¼é¬ñöùKŽy5¬žÍ°a±úý<¦&PØÄJü¶~-¾vXåúS¹¨Q§fÎÙ1 ’›Ä$õ ü°äIht"žr©?(Ý(›ã„ÞȾÊ…ãðŽd ?ž„ë¡Ðû»/aÙ„$¡]la—èt¹p'ÓßKÂ8Ãy$Ìò†çá+cë`5n:†X„_ÎH3ö6K™šY:hZmR3[å–6Þ´_ ü²G飥_¶ÿ9K=·gý™âh©·¦ûõ;·~™úo'ó¿ó‚…¹#©ê)ÍÞ›Úr·úþ*«Mq[0A¢ì}ͤŠêªáËÜ­ÙA%ôÝoyS®e££ÇJŸI.ßÉ-êyÓšù há\ŹèVž~FÝwìÅØJæTnÁ'g8š3ÔÇYZlm—zÒ¼€ae†pûý˜:|q¼…ÉU·lö¡>¶gk·ŒÓÎlœzγùe!· on¢žÙh`øãŒ¾¢ D›Ä…ßržEòz›jÔç7È—ØúrGP$w}´UÝ'÷C$ü¸V±y“`P x‹i>¡¼ðo< ¹©ªªiiѪrÞËGŠ,4ðzòY¨÷iÃõÅ$®T¶lÎ#3¹ ¼2°‰¶IìŒnþ2É'—ÍÄC‘æ=óåÉå3-C.W·‘ÉÏbYOR®*q˜!j”ĆÕ9þH`§ K懀‹¾qÇ‘¨)³ÕËäZú±ÈíÂuO¹²3ÇbS’; @Ív‚ÍAbp§'†!øvOmˆºV2ÕyqæSQ&:ÍiÚEÍYFÀÐѹ£eÛ2XÜ|c[_ݪ_½“Í`"Æx)ì8 ØÝã^‚O6‰­M³ /UñŒF&¾§sIþ\%;8è`7ò–±„r¿NÎQJÂçZWo¿‹~¯’&’Gœl…SuC­ÄhMæ35‰¬(sú¶l ,6Mxäg ö(r¨òfŽÂqärŽË#î/ÐI«z=Á¥RVt[WnsK’”·JŽW™ §Ööì ƒÈêÛ5Hiðù2‚¹üõ^H£Éá²U±ÛÌC`Äb²#%@›^Ôv˜X‚XÝšh%f á'û4Û·EÓ¸HqJ-å†Ë™…© „L"à:µ5¾µ¹2=¶€òÊòNí¡ŽàÖêÖà:‚Úäi¬!À"ÊŠ`e$¨äŽªˆ¬Ÿi÷×;“Nå¼}º·èZ³Fý0\¥vœòÖ·NÝiFjÖªÙ„‚jökÌ,Äa,R€É ‹;pB&$,BLâBLÄ$$Ý8“?lììîÎÎÎÎÏÓªU,Ó§Œšõ"ˆÈÞ¼ò/CE'6˜G"²*ì]¬˜úçÏó™Ãã ‘ðöº<IÏ‚ln¤¬æñ¶vJÕë{ᾓ-¾35ÈQäÉšYcßp8L¦c³JÑ”®ü‘¯ëøü†F ”ÿ…&û®ÑžÝ©Øìmx ÕË·öª¹<±‚ÇSn™êË(Fp·}ƒ–SpnÛª²›·C±ˆŒci[ʦôL®Ð¥§,“øK·jŒ“»2Ê~@\†á.Îc}l)1Ý£²&Ý..‘÷Ð[Þ[zU.M ¨ŸÝ¬7¾?ܸËc·©ozýýo=LBS¥z1ñ±VR1¯ÇÛ„¥§“ÆZøäz™,}‹4m0ÁbOêm[uîÂ3Õ”&ˆÛÈ_ìM÷f 1í¼€ØH{nÙ»R¾aÊBa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0нú*éy¬aŒ0ß•,ûFH$–‡Ÿ]=Òõþ<ÄvÈßj¼(¥˜Üvä¨'ÿ:¤…á= "íÿÃ}Ærp¤ZÔùÊo—4üû]®À’´Lç¾`ko›L#ñu¡ ¹pnPñä’V8Y2)‡×”Ítm‹¯-”,ÀH´«"{ìNœÉ"˾`»B.Áñçvȋ颮ó¿Ê/—¬ë–L·;å’_H£vå4ºVjŠ¢4J?`\PSßßÜÔṈûu#¾?SŽù"ê¢åÅó˜é6«¤“xñtáXÚïñCÄ~Œ1X7ç¨a³êÎ"äúÒQM©Ëw ¦&²nØ ë—£ïm¼qÈ|ô¡å°‹Kt'}ØWwÈ{ígì»6‚Ž¥îWöåaú«ÏV¢\Çóo™–&AÛ½§V̤©˜zˆ"Á"íÃR)· ¨¡"B媹ãcà9501µ¼>—(wmhmÖJxmÇHœƒ Î}5½”Fö`Kv)5\ ¤›XŽÐA…á$x"íð‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&t²$v$ÒSô­ý–2Æ }*sÌ…ÔVÒãŽÕíBœ\—1Óá4ÔS®Ö[ŽyãŽûÞõÏ;Þ§ã1Y<ÕÈqØ|mü¶BÁ0W£Œ§býÉ̈@Bµc–yHˆ„X@ ܈Y›·f]@Œ\ä0ŒîFL"ßó"vfÿ«¨!o^yÍB3g7Yîô—=¶QìÒ‹ñØOÌŽˆK·šUŽzâÖcoEéwEGBoöö¦†ÿw6p¯'„E>WSµ©Öf7{ýìOÓŸã?ŒÆ­Íó!®Õ¸c/ò~:²Í#Íü–—ô(¯‘¥ßA8Î^¿MQ’Ù7~ÛÈj„Ä-׾əº÷öö¨'ÉW¿S¨03›½Œ–:[EVi§«üW¦áv*•Ëáµ%ò»>2¥ìƒAZÀR„èŸÂ®]—›5+í¥n;ž#I·_yÎbµ|4y,¡RÁߣ>rÄÚ·JÕ¬hìwpqeƼ§‹=™F•¿€ô«ðMÝÓ¹­•éÈsE4‡) Pm²™œšS!í¡ÊhK¸º5¾fjEà°šÚda*16# ¶K†%NSIðމâ/â=/gÙ'Ú3ü·—Ùµ÷Š~/êïPóü!&†ÿ°´”"û&éoÊ¡Åÿ|œ½;õç¾?åù=ƒÂhÿ«jvGûùèÆÛ8Ççù/>[Îr“ÿ¬]÷?Ÿø pððwõxŸ§þkÍ?Ômâ1õ|6ø.ŸûKÿC×øJ±EÙwÛ“ýY^ÿ—Mׯ߿k÷þXbî®LæËô%„yI¸ŽZηµ h,7UÕX°KƒSUpH›á_ÓI%áªm8ÐiuÊ ‘ÊÜ{9zƒZþ©ÆºÕxJ¬…><Ö3·až¤a6!Ø7ŠfÑÌAó™Çœ’É<æÏ DQ¾‚2íåžäÎþLþVæˆ]‰ÝÝž*Å.Þúfxý7¦õßy,CÍ^x€ºŽÿ £*XÔŒoÕÚr†šú*4«µûT‚eµíüÂÐßõÁ…¸®V»Ö»ÚÛïýYjÍr§<åÇgysÊâæù˜ñ6\ĸv ûù¢‹öÿ-‚ ŠjÇ‹ø´l>•HèÒ„˜â©\ ºþ`ÃIú~Îòxù»·õrwïßk¾¶iÊöí‹õ°Ø¸u ö{3 „Õ%‹<~ºâpû’7(;ÄuãÊ,‹l-äNrbuLö7G6Ó,Ú¾ÛœÔ.Ø·‡±ç633‰¿V¾O°â,ø½œ6ĽøìÎ.wª^¯0Cf*÷«<ªÕ³  )"žµ¨&š­ÊV!¹FíY¤­rÊæ2×·NÔ$V³‚'ј“z~Ùü$orߊÿ”¤—¼,ç‰ØÜ¨”Ë•‚e%Æšâž–çBøÅi>YZ¹%ËŒ€p‚ެ°ÃToeiŽ¿Ï@Ôó–ùŒõ½æ¥À—'Áù,¤¶åØcòilÞáÌýçk9øíÒ˜Gû³Ø¬O¿SŠíáÌÇ&‰eæÁ~‘ã߲߈oÀÉÑäÈ!Íë[£$îXÇâ\«jÙÇŠjÑäŒ4 A‹ ãFCƒ}Àˆê6 ^8¶Y Pf}ý78·»·‚ìÒpnNŒâØæÜJ·¸·š‡†p& Ú£c*™:Š º pª]öŸ|õ½ÊB@D$â`LâBBîÄ$.ÌâBììììÎÎÎÎݯÍäÐË^Y`ž) ž ¡˜ 9a–2p’)c6ŽHÌ\ X€™Ä™—•Ÿýìü×q¿q̇)ÛÔ¯‡—m pˆ[Eu=P14›ûâ`úé×= hòËü½)µüžVäû[‘qõ‡ÎP†[ÓOM/ŒmJ”Xê² ³FírĽx3?Ègåíß¿¼ß„7~?üîYɾž•¬…-Wˆ¾XÜ{ÍjMŸfÈn9ê²É-c;bZî*ˆ“Z)Cék×øÄ<#ñõ!މ‰Åâ@k\ƒ޲GB穾t##h̓k«ÚŠïZD^5­©ßjo_üýõ××{ôý:áN¥Z‘ÿ’­x+‡ßüF1ÝÝÿÊ-÷wêëánر±gó›·wµÌdó]ØÞÆNì÷fw`w’rw`ÿÊ"Ý3r$2HìI¤§é[û,eŒúTç™ ¨,­!¥Ç«Ú…8¹.0c§Âi¨§]¬·óÇ÷½ëžw½]ñ˜¬žjä8ì>6þ[!`˜+ÑÆS±~äæD ! Z±Ë<¤DB, îD,ÍÛ³+!È‹œ†ƒ}ÈÉ„[þdNÌßõuIm‹SÈv™Ì®qÛ wKv$™ÜÁçž^éÆà·aš%÷ƒ›ºg©l‚âO"Ìâû_NãOÐ)o(3ïr FrEßZnŸÍZ…{Õrz$•4¼ÉW|þ»ËmWIÒ³¿Ù£^Ë^Üò:¼T34ŠKÕqÛ.½•ÇlXW–ôTr•cžìS[,XÇNâáiŠÌ~_´<¬Ù‹Ð‘pÊ2èHá”: 'avÂýÕ=‹.Óµ|ßr;;><%„Ül°†ê6™±ÝSh°Œâ¦'•캜—¾-´GF&Ü£n'ƒLW`½¨£8·ü‡áï]ËÇs5§òŽN• %”ÏéóöyyÕêW“#-[~¦*Š. Û™o}©Êê!XÄ»y?”x9߸ä%‘Ÿ§3x~ ?aì¢yAVW½%ƹ"•ðŠ€xsþ ü‹ßü¯ÿü±„Wÿ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ.1¦†Ú!¸–0†di«¤(‚ —;éEÈ%~ÓESç[ëµïž8ç[ß]kZúåX žÔÑV­ ¶,Nc0AÍ4ÒôÅbG!“»0€ ‘;ôÌî¸wag"vffíÝÝ™™›îîï陿«ªò_¯<ÔšÜËpĬ…QTãUÆÝRõMn‡éDáÕSYOiþ~GŽøhß** §¾»}'³!á^T(Þ{úFk[¤$ Y]Ö84< ™HÀYÍÒ| Kãq„®³ˆI3K”7ÈÑgèlÇ1}þ:Îö¤ë¾»ø«´²}ý—Û³õöuùëÑ&¹JPO<úF|8-§óÔÃ÷Ú §zGM)G3yéRô2+Þº ª9j ª‚!²wËq•z‘Ä{%ñn¹,ÌßbÉnRÈs <²ñ~ |©°Cò˜Of9# ašF‰ŸZäîÑS»37ïð…v~™ŸÓ]–©?·ëÓ;vÏï¦íqú˜zÅýz`¤j(0äm4ÛŒ²îç·Y+o=}½*cÄ»ªŸ£Gm:ß76܉h•ùS]: .EFÂpÞ6H›#¿n›‘1¨5]…ãÇZS‘ôçú¬f·-âåÉõ[v(Ú†í©hØ})«^»fG¯Ž³6ŘÖr’´µµí;bß§‰ ·ekÛ´ì~·h«ÖiÅ»*Ö,Éd'ìÙ¡Ž`nžXbbìhk5tΛܾ“Ÿ9¤¢J¦r÷ŒÆ®CJ'Áuµ#Þz"šˆšº'½ª1QÕÅûÓDÐO±é=o'*Û‚2¯€Ñ¸³\¨b@UããüÛ#‰dÌ9>K‹yÍD@ñ °äã—Ĥ†Y¥µwî[7¦/^ÞÔ°7ïþå7­÷ß¶pvôÎÌÎÌ»(yž4h®Í´=T¬€>zå)cÔ)ŠM5SïW¥ûì¹´7iaêö¿]-Úç<’·jõµ:ï}o{ȹcål¬SµÈ›€cgvsÃPÏd1XñŒF.zxjÀ1³Ç^Œ@ÂÌ,,ÍÒìú1»Ô¯æÞšCˆ$—ÛöýÊlR¿}‘;«šÙL^]ÄSlžjõÀ¹ýçÂn Þx¼k´Ýãø¶ œ†Ò¿µÒá5DøM-ò’:X’¤uÒk­ù‹ñ –Ç®FòJÌd1È,'-é¾(‚@ïÏÈ!©+3tÍãmœ½÷÷?ût •¦ä^ZËEQªÑ#© ×*NSUÇë﮿f”ïÀÑY¿°cÌ͈äùµùcŠn¯WÇOæ~uòum8 –ŽÏg ýΦÕeàRõ5¨Þo=ì΄,ʶl|@(ú¨ÚÆÇ‘ü‚ÝÏ!6pM‘PcÞ¹áÝ«g޵?•ëes¸º´B {q©ô³ïúF5̓F›g^·Q©Dcž #;z´4Ìä SaÔFæLïüØürî0ï?‰žIË`âÃÒ­ŽË*z¸šòÔÅ_Ìןf¹<FðådØìdëZÈEK`*ÀWà³b7‘öwW]‘Ë$Çh©îpZ*:$Mª)‡@4ŽŠBꊀN,ÆÉl è„N9aDŽx‰<.9ÍÉ &e°3_ví '«CO/š›Ÿ˜ãÀî˜F±. '4q„Óãf+Áo ±PŽHË)­fkÒÌÒŽJ÷~–lMüfJ÷“«Ú Ü£q(lFÌòÖ“¦”ߦ6éÜd„Ÿ¿ £rŒœ|šA0—0e%qp¨2͹¼Dö©GJ!†2ZÞµµ$ŽÓEõ½ë[íNùç[ÞµõúïYZ½k'޵JóZ³1xC^¼RO<¦ìîÁQ I!;3¿ˆ‹¿Lþ—B,äNÂ-íÜ™™¿«»úe]Ëö˜Ò#€îˆTñáEKˆåLj÷$³j*Ja£Ïô•P4ÊK¯ÎZ¼ †öÕ­.¾”I-÷ÚJë› rÁÆV.è™ív‰e7*ñèøfˆç‘ÿ9ÜeÁâŸã„ Y®;lj 9C|•vaµ¤ý3w{2{~›ùuÚSöþ›ôûMöuå³çÅÇ» µôUyVÛb·püû1¨ßªöãan©7ŸaÜm°Y+¿F·=ÄÁüB3œÓØL]/­ô7D¯0sÇÁŽ»‡Ùóü§Ä:\Ät„^ÆË’ÞŽi+ÍÑÎgÚï&}0C^jg3^:Äà ERÙi"º¿Ù;ÎwäÔ÷®þÜ·HŠL¬”è`f×ñsS¡°cÎÌ1F{¦Õ§ã„¾¿°É Ö°v~§'ܲÅWòØßÇô³ØFùf¾±|¯©Ô®ZHI)‹Jåx4ƒ@‘_*8ë<h["xÒy0ãnqªik¡ŸÈvßR¹»Hf®~ÐÒwNä[[–9tÛ6Ê.>_Ö41ß_``-ó#šØfÜi5B«)ìÖ4ßhÂòÏ·W‡€©ò§ñ_ÆÛs¾ïˆ¯©ÔÔªe¯žÇGPüÂ+QâÃ1<år†9¨Bøê¡S5R”)^ŸAX&ˆ¦-nù;ן$¯ÒÎ­Ž¢o,ÂÙ%ÜÅê$"ÓF2¦3™-¶ðÜ\nÔzµ›€ …>ûr5™í…ÔEAsnÉ‘TŠ;͹\7é<¬,ð¾Ážl:–µ­›jå§Ú¸ãpÅK½rÎkW³ÇšGØËSkuþŒQmÇoz¼Úöj¦79C'V/£;¦o`×?ÔðUwýzµHò[!ßÖ±bvýs#ƒÕ0N/±ÙÍí[Ñ{ež\lm¯cÏ%^gÌcoÙ¡w0zœÿ-mÎ¥®|òæôlüµVÚˆþk’EV7ˆŸàL~DáƒÏS1ÃEå.:ûøwhrP…UT‚Õ ð¯ƒûÓ³Nëkº/ëp€xŸ†ŒÛìÌ!JóK“zÊA+™7OJíQŒ"„#‰ˆ ã?Љ;”¶®Ìîþ»²uŽu×…?¦n¿âíÝÝûk±ùKÍ1ƒÀyk¢jÎämŸ—aËÞalrY¿®²d®ªÓ‰޲Ò×\„Q]b z]uVI5S®øç­EÉs*e«Ù£s¶ñÅÛðið´s¹ V†0(£Àbæ§…†8ã3Œ"‚Œq€ˆ‹1?!£‰ JþcßRBrû~ÝÞSb‘ÝÝ™ÝÜý7ôV5º˜º‡öS#¬jPÈÑ$Ž>€SSãûho -f¥Ò¶ºµ8¢H ‡}¢Pf °ä%ßIªŸ|u¾w7’ÈáïÓÊâ/ÝÅå1Öb¹Éc­OFýuͤ‚Õ;•¤ŠÅk0È#$SÁ K‹“3®¦ r˜8˜± ·N$$ÎÄÎÞ¾ê­NÚÞmÿ˜ñ"»h@ÿ™¬ 0—Ë®® ø¨U_'xpì›^Ú7õÅ[,#vxÿ½¸$âU¡âõ?[wó=?”¿•±3BäYäþVÙcô=ºÁúvÜMܵ);݆µ›2}?ñ¿‡y2û“@ð±GÜ>vª3{ÝÊÕvoÞ û±·þ^Gù™»ø¥“¨ë«°áv”\ œ@’8ãѤpš]…8%ûÍá°äEua3’ͯÑ×À[ŸX]%­á¸ˆ=e±ëYÝG/g±ãlb²•Z#:óürÕìF3T½JÕsšžGz¹Çk“ÇØ³ÈÔ–+tlØ­,r”ÈfŠÄm,&ÒvÌíß§gè„…Ùˆ ]œL ˜À™Ä…‰–g–%U| (PE$ã‰0ƒbŒ0¥“QE>– ’H[®@tãµVY^ùM$ùë¾úçžw½T†¬MzñI<óÈÁ RÍ4Ò“qE1’Hd ädì"Îî̸wfgwvffwwwé™›Û»»úfföîÿe^Ü=sæpÌQ¨ ª0¤Z@u­9µç[5}u´DJ Y§,˜¬Bºã¯Æ’,jwÞùÞ¹Ö÷ÿ ÙU¸_•¦€nXÐö,&0á;-›Úè–¯µxÝšIaÚË „Ž0òo#;âÌÏÛ¿Jdh³øµ¨d>Ø~8 ê%ò³|P|’öÿü žÙÑ;ª:t7,ú*抷—³+é>Ú]ØŒL¶§–2}!2óü­ºHÌð8®1Id/:³ºŽ†<ò$è>G®êy'_8\»ÆZ6^ (¡h6y÷Á¹K!ArŽB..ÁòFÎ.õ&«˜ÃgKèïS–|nJŒã9Ô’”ÓÇd/ »f7~߸Z¯‰ö$vZr1‰3üßv—ŒO¤álqJ¢J}­lL§63Ýo-Õ˜c<ý‰Àž#³Û]ô4Ž[>‡I8rÜêÖ#±is±ˆ¥?™ÿSOü£å*þEZÞIù¢GkúÏÌ”Q÷ïPÈuˆMOŸYjL[`ÓèÔ¾-+un¬&nb9€âÜ U49á÷¦Þ´E‹|Qú²órº6/Ê´×äÂ0$8wJÖÐò­mä{ìõÈýÖ¹h¥©;=fÉð¼¥ÃSœÆ:C#²rLpžöQj*E¹l" ÿ¨?"ß÷ÿ+ÿÆ?,aÿÂ&0‰„L"a˜DÂ&0‰„L"ùªªH$¢ë¨š(¢Ÿj¬²½òšI$Ÿ;íES½ë„ÓOo®ûëzçžu¾ºÞµ­ï;†Æ$’€ ‘™“°ˆ‹9;0‹3»»³3;º;³3»¿LÞÝßìÍý]Wǯ[y•ŒÂV½+GiË*±„¥¶u8ÙAë­–2hRÏòò—|m2•e[¤ÑSžVY.;ÙT8g•òGp8ûj¥–8¦Ökk^À43»|2ɰgƒ…†9X¼£’kà R ¸Ã,w·;·Çƒ,½·Ýš(œäwoݘ_§õ÷v\>}$›É_Ñ>“°:å0•1Nªr©ÁÁLÂv‡[ìM:Ñi8(ZýÓGcéÔ¤ÆÞ¸EÍÞƒÊïÅ¥F7—dä.,ÖÙÊp€[q‹x’ÁAHÌÑñE>A:Ã9¿Á¹§ JÎG @ß2ãë|Ÿ¨j]›Ó;¿Ó½ffwëïxª3»7·aò~¾Ìïé|¸ŸúŠB‘‹F¼í†‹Ðªòßýç½Gk’$bŠt˜Ê§ëëž8°È%¯Ú-ì”UUOÄÄsÊʸÝõÎ$Æåy7?œ•¦³ü Dz[Å,R|¦í²è¹Hæßá†I5iÎı»€V›šù³¸RŠ&éü~ªÛ ³þÝÇZ ìßwfþÌþü›éÌ'Ô¯½£Ä’ú­¢ Š‚äSÑ¥£+n7×ì7‹1´,û0WKkìß+Ôãô–õÖ¿G¿®º×WÏq9Œ±|uµfíŒRG»— Âxye&oŠÌØ=KSÕòÑ0?—•h÷)Û§úöÉñd¯;pD=³»W¨ÿ#7î--‰æûÿ‰ë·_ÑWë ”¶á2RæóSÒ¾œ©½=E"Ö9oVqø¿jE eòØtcEÏÐI}åÂŒiÕœ×Øæ™ 2Êzyoˆ²5­óLÏbaÀa5+â}Î;ô3}f®ñ¥ml^3;—'ä º.Kç?s°\}NÛKØ5ZlæìDš­ˆ¤ye±zõwgóŽ9е˜?©Ä4 Ù¾ñ8ý@ôïÎdÑ´¿[Ñ^8±XÛ,˜}wW[#»[ –ɽ+f_ÓÊK*¢N +©<Ø Y©’ÖöÎìä3˘æ4º„ €¤Š–´ò8k z¶ogÛ´Éi׆¤ÚÖÉé¸V¢`Ô:ØMY±8ÛpVè]¥VZ9 ’Ar‹¥†R‘LlÀ3Å ‰É¦”~¢O?±yI?É(˜¿bBDÄÎ$ÌLì­x¢Š£Æc¢(aŠŠcŠ(£§Ê#Œ0èóÂH‚\p’(¥Ç)¤Ÿ<ñÇ<óε­94ÓXš[%’yçæžyŒ¥ši¥'9%–Cr9$ÈŒÌÉÈÉ܉ÝÝÝ\™™™™™™™™™ºffôÌÌÞ™™½37Ù}òšå0‹±+hE¯*?`@ÄAœ’}{c›C»zŸªE³Ý!ŠJ™ ×'Gåq—F™$}Å4\Y]9ˆã Övœþ–‹7­ädÆä"ŽjæM{u.Ò²?ÌfWz8ÜÆ"ü=×Éaòµ.bòUˆêÞ©b¹œeJh"±Å01ƒ»;{q!!ö&.'€þÂ@!0.ˆI»UïúÆÑóüµ®C½»E‡ü½Þ.έÄKþmáal@yLI¼~?!w44kN±+æ¶Fi¨VÊü“QåæéÑRÒ¹ y?™ X²ðê{DÇû謹%Äf¬Ê^0è»ç¹D£Öv[wïc4øaü¶)z°åf£7«B=Ï7þõRF-÷µ3‹{š;iZŸØ_XÀ“²=´"Áðør6r„Ã޳ÜpÇœ¶0’9%ý þ·Ú_‡ÏÁ!Z—'Y¶zý{‰ÛQÉk8|Y ûÆÕ(l[ÌšÖ' &Ù ¦,Ï_»–yN­p£ ¢-{ Ž?úyM$ROžSM4ùç„øçžyç\ëZÍk$’M$“M!Ë,¦rK,†G$’9’;‘™“¹“¹;»»»»©ŒÌÌÌÌÌÌÝ37¦fo³3~ÌËY¿.¸7Œ§:U¹CÜ¡&7ÈØmª¹º$®Õ‡>ô&ªýlV©"Ï+sÂJ}tΚšOj¤\kYÃcN½Üo$”Œ,„o,­½ÓŸãg/Ó—˜™™ýBÏ×lÎÞßþÏžJµÇ?‰-]ÂàU§³V·ˆ´Ö.ÇJ‰Ù¡ñìx±·,§LÓßÂÇŒˆÃ§È˜9´rH%©O…@sò§«çô^x> y~D$-³I>3"\%Ô=9**áŠíúŽ•Ê«ú‹švAÃ,£¥Ö§á|ÿÓj›6>v™¤£NiØ.§…Ž”Áò¸ ¾cEßÄŒœŒ]„E}þÓ>#,×?p~݉—U6}‰’Ô¶+ÞsÅ䤯³P°ô£ž+3ÐúŠ;¼ñÇõV°F0Õš)'šFê>2ëÛ÷Ó÷Õ Ä\–±µ™'³þ öÌaՈØâUãKoÌ윅’¡rçæ’1`€ ŠÝlJ¶B Ö„,Á4WNz"Š^ñ¹3E_è–&¨åìÞàóæ%Šî˜¹œ>œiaÎÎj¬áŸ8qÖŠêšœ”¤ƒòiÌjöSn²ÆÞåÈú›3 c²˜«»od.lZý ö\ÈC½hÕ»/’lå:€¶ r±7ÄÛοã|^¤».#J¿”¡…?ŠñÚ01‚è 2“°Å0;ý5’õÓDEî)‹ïôÒ¿Ÿùš,ˆeU$QuÔMQOµVY^ùM$’Oö¢Š)ÞõÂi§Æ·×}õ½sÏ:ß]oZÖ÷š°ä0Ž0)$„\ŒÌ„@YȈ‰Ù„YÝÝ™™ÝÔçvfwwé›Û»ý™¿«¨ãÖ^dd0Ʋ¯ª ×ð6—ŠG¦ì2¹§]ŽGb.°¨¹×D¤ÔQÁf!t×O´zOJs×:Ùxo•ïø¸ëqƒcÁãÌdð> †HÆhÎlöZ Xjñœ$2„¶/EFBlN$ÎðË#DÅí×snûŒ% %ôý?QFå!;?§fvuÁïÒB9©ÈÐKÒ6¼¬šD‹Å:÷Q&/ 'Ú½Ó·¥H£˜ EøÖÔÓK³ŠûQNEJßHs x¶j€òì{ïëP8Å)nô7C˜„„&§Åqoùæd]ݧV?)N@‡©­b~¡«vgí»o¦*ìß¿~W^¨;3}üHŸöfwô¿Ï}BùÒÄG|íŒ6uÊ¼Š½íŠZšŸ´’Hª\z§ª®¨¶ÑýOÚ3´‡±ûS¥ vŸîcgg×x“ÑÇ“äÝ-mœ bÒ¸ßó 1ÄfaOrÜ4<¿ŸÍñ@'&® ÂSØñ/‚(-ñó_>Ü)CþßSsÂO¿LîëÚ®»~šnûé½vî0 ÃËþ¥}–;ÚÕ÷ ©ê Ï|C¾d+V”<‘Ü Ú…¦øóM¤¬Òäu‡NËh!†n°û¨™¬¡‰ÐX¯ñ™ÇÂr×cðÔ´í“·nFÔ±ò ãcÚ¹Jν%‹S“¹¨† F§œ×¡»1Ë-­dwKÚÞFif»©6\©eq±$¡|ä+Ü­RÁ·ëx* ÌÍâaå²QÊâÌÌ3=q˜˜AÚ6(ÏñY²q;æ®ô…¹é–‹¸6¥;N¾x¸‚«ZeͬÝ%Ӝޚ›yv%ç1­¨šk’î¥*s8˜ÎLáÙp(άm+¶«å¯c_mâí3Šnè3Ü-’–>Ýs jóTÀo[Ìòtºf`£Œã§X›™–­éõ]‹cŽžBäh¦?‚í‹Ãi‡Ô%e«Œ‚?æš´´#¤Ö#íÿS»4±± O .@/aÄò˜[³hªÞ^ò©D¢È…hÍ '¡¹¥Ž›ØüÊeÇw±¹Ú?S—Ö¹Q}ë_q ô¦´Ÿšùj@*òÓ„¢4bul¤úŽ šW£¯€Õß…®-+ùõýŒmöŽ6Ž Þʤ¿o$àÖ%wë®ÞYþIúõìŸîÿÕû°¡hƒ€Ü À< A ¢ ‚\ë”Ðd8MOkžKŽxãk\ó­kéšÒyçµ4¶lÍ-‹™K4óÈsM4†ýœ’Ë!ÈdîîFdäNý»»©ŒÌ,Â,ÌÌÝ33333}™™½37ôeÉÊK”Â*¾ýHH Oï¶/šÜ™âOò'B¤3ªŠEÙR֣ѽr«›ñ(µ‚{¥[dº«ÇÞ]“ Ðß $· &d9&Ê{ÚÇoØÍ‹Ö9N­ìÖ7Nf½ºc)w½>vp©ŽˆíدSnÕ©xëg¬×ŸPÖÕ¶=^©_¯‘€uN9¨ÆfNsW>Úµ‚óø‰yËîóÄ.Æîå<3—‹†sTÝñ«AwˆÚí¯0N$ˆªNê · :‰¦oj¤ ¶’n9ÉšS xYRX0ÇY%õq‚{ÛÛ;ãK^?¸h]J:YHíQØõÉÊ:öë€{3ëÙ’€@ìRóµ^­ìFvIäõ¬íH»|"a˜DÂ&0нN}kåÚÑc„žz˜Œ9·. …±9Y>dœà²( Q”U(óV!VÕ‹#jó´‘ï[úæË×øg–ö ¯6½Æ{ÖZ¥¨æš…]_2ø²‚°I%‹•:aŠ´…5‰­G LæbíÒ‡.F„´·+ ³8ñùöîÌÂÀÄæäîíа»¿ì˯ߦÙ]»DxCèÛÁtJ_¤&U€{Dm§®âUèQi¨:ü÷ï¦ý(_ö’O¢8úÚ «%¸¢ý6’]“uâýb´g e4ÛölŸÎV'!|?K¼ì½k?."?„É£/挀~¸K¦†µÙÙߦ«$ ÓþKZ/îõ#÷×gnþœXþ~WjEüÒÍޏ×|Ý÷¤zò§2Ýl@)ˆ‡£š”é3V\>¹*@¶˜—Ç}iTPï©jü]Ž·*ÞÊØ&/Ðxû'›¢$ÓÊ ÓXÞ³\_pX çg‡aئHEÀän~{¦ÿ¢ˆÆ?þ*ØF_fCZ;£÷wofÞ›¾ý³.7ô·®$ñ§k‚’¯y0tôc|—•Kß™—ü¼ô¶™ç“[`(û—û?zIëM%Æ”ß+ö\ëcî¯æü/˜¾‹Iß¶W‚Bx,ìÞ ޽ƒ°}v»ÓgÉUý}ÇOy2ñgŒl3¿ÈÜ|yoÕf¬=·¶Š¬’˜?~üe–ÃzõÙVÿ^—Ýo9˜øºO}é9ËìmqšQŸ±SèÎÄXm ›§›a”œ˜±ùQnŽÖ_œUÙ|#®•èDSšqò|øÅµÞ3âÍ~ÏÆÑËvMs#»I;´ñÍò•NRÎ︨$q«»ÓÇV€¤èc)œôœßù×/JÝú˜+3zvëÊ”UMÛ·òýFïß^ún”Uf||PîZ_‡e'›:*Nœ"V˜ç"ô©“΃×mS6+¶A2uqá¼aÜÚ\L ìö«´&Q ˜p¨ ¿UüJrF¸÷1Ò_‰õL¼_O™ÖµJ˜Î6‰Þ˜,†…Áͯfj½™e«r´3аLóøŒö¬áìПN_`œ¸æœŽãöÝ~™BÑÊÒÆþ,Ä$ìmþh¤ŠOA«m®"Œm½ÒÓÕ:Y² ý.–‘¤­ÎD·H§ŸX1Ûd ˆ+‹Ã½5'M¾ÄréhÏ!-)Y/XÞߦ¾j¦G4¼þK{×E‚ÞÃù¹¼›î–òI PwÇü³IkÓU£KyÄ•c&óãà·&½ž¸zµÕì|dlÄfö1|~ªÙû“½cé˜MÙˆŠ´ŒÓFâÒÄ?9Z|Ô*za˜E[§ôSŽ¥ÛT\”j¶Þ7‘û‘¦H+¹U× A!À÷\°‰n©‚’-ì–„p–›&0Aöï$…7›_½ísª¾"¶›È8¹ví*»Ê8²ŠÄuví$¬HRËgIÎφ­L¬Ù¿©e"¹«eŽk“,VzÌ%ST/¬T6¯eúóì\«ÙëÓ5˜™ÇÈ™›Ä'ág)"„£¯¿üð«óímiÏaUçìq¤5¤á†Nìòºûüh¸ÔÇGÔP‹i€õ5ùBâ>Ì,é eÂÁ€@¤D),Ëþ901øý§P×sÛ§æ†Yq›¥LGNŒqöG[r¯’LÈ×Ñ;ä¯K¯Ü–9åÖ¶=‹äå¡^›‘Ãbh«Z¦:å(¿ûÕÜ»ÿ·€´¢ÎÍ40›ø4—ß§£®<é5SèÛÕDS f°hKº´V-@ÒPy…îÏQ×_j¤¡þiš?òEÇ@L‚±aâlWy6 Ëõª`e¶ìr.±³Ë „#9Œ˜N<½ºlý‹Æþ#ÿçY»±ˆâ­õà^¢¯vbví…ªM ;wÓu%±­¾»÷/Û¢û;;ÿy²= ü®”Šy™¢4 d*‘Þ—¬rðª)£­ðK`¤KÒD¦±]i4Óq3-ȼ¨J©¦¾“^Vâìp8æ9ZîVÁÆñ÷å3´@ÊGòŠÝó3Å–â(âo"*¸ÛѼÎ1~VŸžé¿òèˆ ;÷õVÂ"_q±Ýíÿâ1~½¿¿Kñý-ë7ä>Ž×-@±þÒƒRò‰L‰¡}÷õûÚgS[aë‡Ñ?ôë·Jsž7ßúö7ÓýÛó~ÇIÝ='|Øä‚Nâ±°oxŒF2ì~=us^Àé§“­ú½øÔÞºõówíqñäM¿Uš°öÞÚ*²Hbÿúe–ÃóVÿ¢û«ç§G¥~ÉÇ£=5jçöÿ*SuJ’·××ú÷ëêjf·ëñÊi‰û2uÿ)ýüýVX•W¦—R€yküaÅØðù^<&ss2ø[¯þÎäÝ“yÁ‡ÊîE7ʼnäréúâùzdOüÛ·e¥¥Ž»{ÿ×NÒ¿^ºîO_õ~ë+ÿÇ]EpZkHU•ÌÔÕ AÎOPz-GKj8-œÔzŒÎläì¹5clòÊvÜž6›¬RTè© NáÏæ7Nc[ø›Ý6:Áß¶ýŸÃ%\NíÆ#SMÏ`!’°TmS=W ¼kO 4Û”*yŒ=@ˆ5ìý{ßf¯Æ¢ÞÄØšI©¡©yѨ@ï Â‚L*F6õ÷)mz¯&FùÇ[ÝŸ°ƒ”èR’zyɈ…¹;Ž‚KY dd?.÷¯A&ÈbÓO°á7<…‘¿JßðOIû¦ß5oÞ‰1Dß¿ÑJdÂý*ÌíÙ¢–¸7s£¾åò4•«ƒÇô^ÒçÊê7¸AäòƘ½žÆú¨D]þ¯}$óD¥5MGŒ&êHãvh#h’¬|Ÿáûš1w ´œm¶Ý¨ñšÛ' s/©d1ò#[¶ã¢±®]ÄX€_'L©Å$‰a°2D†Wcä× íØ¢’AŽp6íÞ3®nÓ žŸô8y;7bÎÎÎøý—wCmÚÖi_D*¯@ÙÜ8Käq0… §p¶‚›åM5Žâœªùi©ëSë“9->·1ûzž ßÚ7i¯Õ›%Âù)idñûFßÅúµIëÝÇÚžÿ k{<µå(dŠh§Àqõ­Ógi!wq8ßïò‹ÂÝÌ$”é[¤ÚváªmØØrs[Öv,.Á]ªÅbŒ¦xœkâ[±ô±Æò´LÝ1öÿ¥ýø“©¬;NŽô Ï_[Áýjê’®¬ò÷FÈëÈ@»9¡¹(A+Øü¤s&–q”nð…ü *¨éö¯cñâ\f­Ãúf[7ŽÎó6G+‘È0+ñ—åsØè~kB3Ö¹’äLïäj‹Kg+cð™€Â*âÒ “Ë_ôë¾ÙÞ9£‹8ÓpÄqÝ8qÚµC† ¦íÉÔ¨Ër|~2WÃ߇«Sßñ×,ž #| ³•ÊT´otî|€Ð×ú­òü%Ò^œâ”rœns­–²0š æSrd¼Ö¹ÛÓå†êàÁ"x²ã±¤»-7~…5¾“7(Š‚÷±Uè^¹W~pÑp†wqÚG(l.Qµ²Ví¯k´ò~ÍËÕÊÖµ‚Òr7ëAñIRkK{ç3x`¹AóØùAý¦{–Í™äjz¾G9¥‘áòWjd1|+µp·u\VRÒårY6;sE=<´Ç.-oŽIf‚B¶ÐÔÝ §ÉöŒpÈmëv^L)ÙG{…><@ë¨ÓÂvšãª&½ª$-਒]5 í!rè>‘D…$þ{5Mõˆæ[:ŽR çèZ‰ž§$ÐÏP£°ìùZ2Wš«ò˸ãjÙ°&mrjxÊ­;Hq qWq€>_ÉŽñ[µjÔDÄÇPFl_±}$5Ì™½x±uÓ;»¿·®îQ‡PÒä´Øþº¦Ýág2¬æ—OBzfšBHrqÇKI¼¶ð®€#´Õæ:Û»XÕ 3Vìp<&ÈÆÍ­ÌyÎDÆÖÅã·‰8[x§GRJåN5âæi¢Ž¬Í”©¬  löbÉÎ  äb†ÀhU«Oo- ññT73¬ÙÄý“Î%rõfgro›å’Ü,ÿî7ø éžÓ» {¬Ÿk‰,<óR>½4NûŽ- àcÜ¢Ñ##jhŒÞ@§h‘Ü›»@bÛÜ“,CÆäHG7í˜ý£°äèîeëì°L#”:VO&R<`ñK4Öˆå³ÕÞ)*Úi%†ÍR†jÒÉ\â2»Àp@UÞ7…Û°xº`ë·í™‡¦gbíˆzgb퉙ÙÙg™ŽªÉ„L"ÀìjÊ lG¦'¬¾6¢x¯-KérÛ^ãrþVåªU‘µüFZͲQ’UrkgYUnq¾úëy±µìvOómw#&>Ô•¥£r7ŽT2˜Ë%ÛÃæ±w#±Íao|Qü>V­¼mÐ U¥fjSA€øæ1gbíÄÀÛ¿#1v8ä߯HÈL]ûe_ùÙ¾qå0.¢ÜíZ`oô èvöÀùš@Âü¼$’^„†G[–@¹ï… »«Æ‘Ø ¢Î²à5ÛmÊÄì‚×µNPr³¡ÃSOÞ¥éæã;6ç|ÅcÀŒÏs¹;3ØŠüî$1h;5ÉrSØhkê»ÏÊUÖqÚYé~›NV+7Úã |±7®šä@,Î-ûÚ„X»yᄦ9çÕg`é}Maˆ@ iY^,t˦†@]‰wwÙb*™cpÚ]/|=£¿¿1ºN¥ÈÖ¥%(DbgšI&œ#Ž)¤!ˆHÚ4·iÀNZ¯³wá$щýúôLOïÓ33»»³7·X—ù¢†9õúЈ ùa8v_ê ‹ iÇY\5¤¿&Ío°lØÔ­)³]tš:qNsúj/ß\"ªŸ¬oC^¿ºLíFùsûëU†ši2<‹¨äïÖý~-oSÊì›t6ݘꖿó„bÄ`/, -/¯ˆ½E ¹ß¦ð©8 úï¶šp†ÛËåë¿ßÓõÁ=Sg\®2f:³ÎÝÆä°G§ÐïIÛQÊ’m1BúHU ŠÖ >ˆvQ™ôÍu†J{DhœÝ¼tÜcŽ ÄpëÎS±q§£UÅd6þM®+bªW5Ìßi¹MϘ€ab˜aÌm¹2¦7±öd‚žw'.gfB«–ÇÖ½STa¿=’1¯KÀ⣻`+Ëwë¸à „âbÎQIê9Y»qv%$íŸ×rTX‰çŸjôˆè®:cg­§÷ ˜)­èEBž»ÙûbæõÖÔìÚA럻ôÒç¯ÅÎ.׸[ãzï$í§BM»µkzMK ·Ìë´µmÚÜuåéüF¾â3ÆÅ×ÎD>o[Ç"}»ÍNûo‚k$Ìÿåv”§¬.Mû÷]Ùÿ§ì¾}ùæN÷¤ÒŸzwÑ2öÞÑG03½W•b¤ñßJ•Ø/ôo\ÙíæøM1õc’¸â Š:5EÔ8£{%âqîg®q?am Ëôù+Ô6mÖØDLÁØÇoÛFÏ©Z–!g"•õx£–i þŒkÃèä>šk×d›°†°»þîÇVgéó?LÌÝ÷Û¿×~Bó¡»'rêÜ{[e¸ªîö’L}¾!D”Y¿½²÷é'×áM>yði1ùýTþÁºé-ôþú¹:‰°»Dš{C$sqî/ÆþRÄ$ sc5Ïœ›ÌÞ“ÊWù‹ÊVcgåÔÝä¬;³³ýYËsÓõÛ7ÕÝ7®½uÓzo^”ÈÛ_@™¢¥Á!¨AáÚt5¶4Ì TÖçAº Èã„“A!8‡ßbœ*ÁöcwÒ&¢]oàö¶]Žöb†î7s?ZÅ{Uó–²·¬f µRVž­˜rrÎwb±Zq«ÌŒÊ-$d&ÌêPÃÆñ QŒNÎ/€´n$ݸ3x»zvvéÛÓúU˸E›çÌãNŽõlÒÈý›@8:¬æ¾?¦•[ÏÒÇò‚IÙ”o¹E»¦ìWÝ(Ÿ`•ŒÚÖÈÓ[?lñÏ꜡áWw’†›½ÉäÐrEj“¿²Ø/`“†ÇC9S¿/CïÆ;ê&ŸÊm³œ·¹´ã¡|SÒýU˜¬Uo½2&yafýéÈnÞBߦ˜úfõ± `+‹6 lÆù•@_Ç}jàóYœ’ü·<Çd-}ò“ÌVYu'蔵ˆŽùú+$nke+þY͸U¿ÑšßhÕ6 7(ø}&>áV‚õSù!µG'Œ¶.tsl9'Çfp¹ÅæÇf1v­ãoÃüÚ–fõ)pÏ€ù!61bq/N$>Š9™Ž9ýf"`þˆYÖy˜ê¬˜DÂ*ÝuÚ^MU­ò¬¾ìª3Âßoýƒ6†èZA®‰C„iÍÑ7®œA=!Kh)¸=:„î%4ª‹šB)ÎÑÐõd xý¿Žµ^A)ªXa£²kX ìµ!’xÎ)#“+R¡ÑjÖ+œÐ݆ÌÿI=#±À:§0¼+V1î'^Üõz&ýPÍ,LNÌììþ^]³ôââÞLLÎ=2©-þ¦¢È(F(—¨½WE'¥„tlóåîmÑ[ˆ(i‘ȦÎ,T^è:ðt9Q&ßÖÊ\-˦0/Ü\®f>JãûžÏcy8fÈfx“‡ù¼?0©o’¸ò ižiÊ'š ·žËæøÛf–B &À~@:M¨Ê[çѪÁÃd­Ã|ê»°G{!Sß Koffï§–h£Žä,Þš_—êYúú’s,„WÐåµc–S}n2*úŽ-Ò«Zú¬£ñ·`—]DÈR>çAõêå:„UO¿Ú©.œyý–KŽ,}]˜ã}/LÉd0Û×$Úƒ1ޱ5[8}?޶¼–RœñÆ%äªr3q/Ñ´Ä`CðÉpÚ«ýCFNQC,ØîX°%jlñ›14–-ÀLïïÀª}w—]~ì-åë¶öí’ÿ ë‡å\©÷Ÿë@— ®9cf¬çÖËÈ@÷δ'bÏ캥¥W47÷v¢¦TË€§_n¶ùç­wkúîÇ qîrFÕÇŽÎB†fQ ¦Çe«Û¨V#†ÓD6 †hêÉN´‘4/1Çñ7ÂQH>†HN/ŠAnÙŽ7éÜ{ñwg‰{³,O9t˜>€pZ{Nð®oôÈm­­îpѺÚûOüÉÅXle7Ç"¦E×j»×Já>ˆÓì­‰½=æmªë<žÅcë¹»¼o%ž)žÕ«53“7ÆÇýÖf26-ßÉÚžSCØnO³; µÌÖí~ÙP¡çš—«…óVÂ"Q7¾¾¶0ôÏj!h~å4u€|ŠÚ„hnAˆâÜXÇ·ž2‚pK¤Pf†R\.)b‡j HÄ § º=ö’Éw‰÷×k{Ó3Á=Yæ«jkY­,X¯bOïlq¦‰eàGXô€þš4ãz%°M—´\Û†Ô/Ë¥ñnÓÈš†Ë=Z»±kIÙ6-d«,Áù­ŒpT=¸?ËÚðùœ&Ë€V,ásxö’Ì…êÏÁ†­¦í\áŒþ.Ûq:m|6<ìQØmlXÌ&G•Èd±¸ˆlbaÈÁ~ ͺô®än¾î/#ŠÈEPëd«HD¯¿ƒËµ—Í”ûûÍ©^ÝÎ]XFÄã7TKÅ©å’׉/>•õƧNîòh¬uµ D€ cµ˜¿;:803Üø»ðž3âîlz&w^ס¹@2™Î2Ýy QÎr&^:EœÊX’¶—g%“Ý5Ú´,ÇiòÕ5L6Õ‹§Fáìún&„³™½Óý¤¼û{~ä.£”,Ã/ðÄQ€öÁ¹èå&f–ý³nØœAà®/×û¬UàŽvêß;»þïöëû¯"ùܵÿjY]#jÈÅ„¤še®‡÷ÏfÚ­Ù"Ÿ(ØŠúçñwÃwBóúÝv':Ъ(\}<›g=B'–äqX>8Žy«‹Œ2Ú ® ³¿1+M3ü¬3?rˆ›sùu7~ä…¬?NÌöä–ã³öì?Tsx³ÿAë×möweü”yšÊI©}6ùúÏakI¥‚k]ÅÙi9 >Ö\}6Èý•_&¹&i8ë¶ÁyŽrèðã[JëéS†äè1<­p±ŠÞþ«’u<³¹’ÁlÙ{óݯvaìfõ}ŠR·’ÕvSŽ(\²tšÅ£Ô£WiÃì¸zߔȒŒ]´•|iÎâÃ0¸·nÑO0„ðöïú ăȊ !¾FýÁo'¤MUeòÂ]l¹¨¸qrGqÙ•}ËØh¬J‡TR³4‚‹½(Å9ºTòt›,È⼘3\²Ö%ˆ÷×`ãúÒã.müw‘±¶éµ9²ÑIY ÛtqœÂ!¯ºá y:fXªTܱ'oTÊIbŒÛÃgîM¬ÐEl˜Æ½°h,m³÷ž»wzÒ?NåâÎE^FÁ˜†H…¦?ÿ5ÐÕjjÍPs/¾' ó¾œàš‰0h jÞŽ¶¯+'¡x˜IMé.öܧÛÀ<ýŸ‡æ_4S|FçraÝ®ÇqýŒì7! ±¶vðk–g~¿–ý0zëõYý™› òáŸZÆËJ-^æ¹ꆡØ×ru›r;Ä_9k¸\\Ç$‘´‚×Èí›Éê/♉™£È0‚XÂ$fãømŒ3‡ lÅ#qÐÖÑ\53ó±úU°ÅRGC«ø{Yn{#µ7ÚIz{‹+ãH ähÄͤ#޽ZÕüš([ÅÞ#qñrvrwí›á‡ã×)’È~"6xr¶ažåB»5¸ëÖ*‘W½—Ïf³6#x þDšfŽõx䑿ä¢q„A„äÙ&leâôÂ*v›MÔ3§+"èšoÏ·‡H/0„Ïçl-5ÍÙÚ¼¤8aصòÍÎÍÜ8DV¨í¿ ›»´ZwɈ5ñ\9ú'BƒxÝu꺾Œ·ŽIÑë1Ç„ÏëzöFîÑ¡ˆ9É<ÚÆÊ8ë5¦ÀV#šæOIÎX}^ÓÛ¥Õ³vËh©i´õ«JSErµ;/ÓËÒ€Ãk¿LÓÃæ$Ò—¡ 17ÎÝ Oüù¯þ@ëyÑACR­o.r\øªÚꉹ¨¿0³¸ðÎlæi>±E*ydK¢ÁŒÙ7N^Ô—=9·#lŒ¾vs(쟆ݣ^†|áí\~Z,VêÒ-¾Þ ñÙµŠôþǨãò˵ÅL'–Þ°— Ú¥©ñvòØñ¯~Ïæ •Ú6‚ÛYq"úq¯+ù€“ Ë æ×–'f~AoÔ,cö 1shzüŽŠytˆÊ)¦…{\ðZj~bwɨµ'H£éuË õ¥ÓÓšlc–Vô&‰Alía©q¦67<Ï-Ç•2)ÆxóEØó¤,3Á%Âߤâ¨áŽyûŒ¾¯Ë MóºX‚5Ȉݲ‰úA𒤫±“„xÄܤ’p—fæÞN¬>8M”tæý>OǘMwÎ^‚8Ýæ“BÄk‡9D )LRÅær¹œ’?-¤OܰýGÿíË5ÆonþšÔ“3tîýtÍ×Ùºfe†ïϯ{QÊOãæ8£…tï.ó B+UKIß=þóZh"ª%!?7[ä¥mk&¬˜9¤GõDU†I%u´ÚïŸÞM.J ¸žlÈf29(!jX^YäËîh™ÛéêmÕìLoÚäÜ"V­Å·á*œ”f28¼U=BÝ/£*~RcB0)(?Qבÿr®ìÝU™þïâ/^RoæFe`g:ºå†[<ÇÓ»¶*@ÀΫ‰“b±»æR[Xpäñ²»QND9>Y‚PÌCÄ*bÞŸóp©4…a×ûnÓ¤£.A©d0و屯m;a”Öv*›G,øœ¤B"SW"ò8›ÑRÏa,ŸÐg±X¼ˆKR9pYŠÃɳK ‚á4$íÛ4€ÿ³ûp\¢•›Ê#0èžVÌ9HL"a ɵ¹å¹ÁàZ]B)µÑ­ÈTnrn98JMQŒÁ•Tr…!%!EdûO¾¹Ýz¶­QµZí+3Ó»NxmT·Vi+Ú«j¼ƒ5{5¬BA,Á(°ÍŒ‘H"`BBÎ܉ “8“3‰ ·N$ÏÛ;;;³³·NÞk¾i`D¼J~À‰\5³­^7ë(O–ì R±àÍj.š}uç'Éœ¡©E™Ioµ¶‹›)Ó‘ýZºk]´46Á}3‚Öó\÷Y¬ft¦¦Û/Ê1ræ·¨grzÆÃlc"aäü~ püçv¹-‘ù>¦öÝÙîݵ°ã¬ÒÍ,ºŽÌx÷BkЋ»7tÎYüŸôÔ—ôuâå„Db;¡QÜUÍé }WÈÓ‘Ç $†õúU½Õé•Ü>Rìæ D^B T–)"‚PØü¥­ÜTI…ƒärÆU]¹éGgf×6ÜYbò‘E˜ØlÓÈP¿Jw1¯‘Äå±¶.b³Ë¡_%‹¹n”ÒE4a;É  :Ö`·M\üÁÝÅÿI 7Ü$ŒØdŒÛ¶ì D™Û§näÜÅtÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a«ß¢½cæ"Ææžž¼ë*'&~Ô^?"´%q&—™ÛÌvÓ+yŽ« ‰.?Æ·œwê§×J~°««öý©õ½j¯Þ´ÇÇ¡¥UW»ýõéXe‹à^|ïÐ~u’ ù`}ñ˜Ë­ü·zü|ÃL ëw)“ÍâÉãKÛÒ°¦W’(/;¶¼G¥rºöÁ®#PESnŒæƒê^Š=¬ãÔ­(ê+Ç9~ßœ{¦qÎÓ¬¿ÅSnÛ¹* î”ú3jÁé62³¥cM,†¹>ït#–¹^Î h–iáw›­û´ívì\‚oe^½7aêÑÁ-–DÖ,WúawÑ3´°33üÒDî[•Ts›-’J}Eè‚Ú¥l‚¿‘iÕÔª ‹ 6ð»IЬç‡Ð †»bÖ†Þ3öÓv!b’KqÃä-s4ƒƒáÍb¹E{¹ùw]¯+@>ýu,ÞÖZ…Ù§™ˆç´èáÄb†¼,ÒüµZ¤ÆÍòä-?nãV€ûoЍfôÝXwnîþºÈ9òŸJ#‚%P·[KhóÇ#yØveúšM%ã`¶]sëp=sÊÊ©÷*l…;/{Ù]ô¶é?5rLQ”X|í=EÉå“õSŽlNæc!5‹Z]³aÀÆy¤ˆfˆXŸË©»÷$E?_fµ4öÙ½uèmK0·ý½öÿjb„W5ídÑÄ~·Ã+æùK„Ù!v8›G!®ô<6°‚|òŽ”SIsÊ:Òzï½q­k®¾¸FhÙv»¥’Úv,îË‘'7+ùüµüÅÒsñsrµ‘±fwsq7yËÄ{ï¦êLPÃøA P‡ü1F¯·éfõÿ%™å‰UPí©JÆ­Y_´æý²"?³ÔÖƒ3dÞ)²úIC[¹XÐÜYe'eIlÏ$‚È ¼×Xñm,ç·æú†ù”Ô‚þ9êc¶_5ñ6Á§lËo˜øXƽ§'«š¤Ì8Ý“{°cB{0SÉERíêÖcXªøŸ‘Å<}üV"vcï®Ç·g#'fs†Q8MØ\ÈEÆ?ŽÝr¸ž¹ô»{ iíùÌV(É@ði›QØåû±i»œêáQYn‹r‚aÖ³×¶çòO ¾¶±,Gn^Ú£ù&OCÃìXÛÛ?YÈåhcªM‘Ø´|¼•ìo:…:ñŒ¶ò T«Ó­ºjµä)ö¬&>…¬lUìYÚuf™P¹’¢¤„ÆÌfLY«X'~„?S‘Wœ½3A)›» L^B‹5"ž˜EMo Vµ=«ß« esßc7MlœTò8L}˜§Húì sÀšÙ]ôš}k‘õµúÞ’×Ý™v@ß6ªò\Ö4»c© ‹Kk­æsâr—á’|}+”ßÊ"gy–߯ҡ-ª° Ö`„Ÿì2Ídþ»ôÆLïëßü½¨á/XUîãhˆ;%Éeò¿#öÚL‡¸c¯•×:K¶»èc]hº_g|.¡ LÐ!ûà…å%ﬠøom¥/Ű_ÑõWåkQl\‰¤ÓÉÑxYÜÆÞ·_;ojŒü…ãƒ$§+c˜“ ÈW&î!³?}x¼5,ož!ÿ«¿ÊÌÍíÿeY ·\òGÍ‘AyâiE^ÝêY–œîžŽ×óV–Þ6‹$^äˆÕóªCdFÒ½*Æ#øh<}pwx@Í‹«ßÐõÜYjÜɘ.BãÖœä WP×·|žÉ»h˜ïå´lÖÛƒÐñš¾T¼'’ ¶[[ÎYjòì:ÞÁZ•) ‰0Ú”Úz”¥«o®¾{ÖeôÚŽ lœñûí™ã ¢nÚ)¢"&~Dfåõ\šyÕSdçÿ/Y%m_é8ë¬JĽ™-¶¦Ðú]êEOÙÍüþÀø¨|ò±†C‹«bÃB—I”xã“ ãÝ,®Ãø­u· ^¿$rÞ­‡ç9Jy­g/é—-NÑÐÅîÚ à9##ÝÂ3µòá¬g'•ê`ö r•r8úìä$™ëÎôèNÿìÀ£žØØnÌëOòÓëîñ _ÈN#7a5£ø‰ž/йüº¡;<‘œý?l6§±lݺí‚̲ƒzþ‚Þýýý©‚]×õ³^˜ë¨,:ɯ³èÏ Œ²EZõø¾ÿÇôob5øÿ*Ÿgû?èüý¿O¿¯®žÙ¶M¦çæ>ÁœØï¿—w³Ùkù{åãåþ'!bÄß«À<¿_¿ï¿êDPÃøCP‡ü1F1ÿ´›ÿáf9cUUe—Ñò8ì‘ÚÏ󜢿œ¼–KÄÖü"ËR×;¢¼kò6jjG§ˆ\ð¾8ýT®/?Îk¾Â&ÁŠÛöH û_ ¿âòxºzŸ'ãnìšýb£ØñÓoz-@'𯀹nF¥×arùIØ_òþšxµ¬¾—w%1$*˜OHÆIÜ¥„ÙÞ­’»Ê"ÞQLÿo©‡õýžhìˆm–Õ—sE‚à|.@ÄïYÜÐ?•Ôòí¡Ëà­Ü”˜•Ä]FÞÙìjÜÓUE¹üDƒZ¹$„Ø$ˆÆ&Á½ÄYì»vƒwZ­_=ÈRÚôœŸ¦ÃîXV‘ñóZxJÏäùªr³^Ö6ŠõÀä·®f£¯q⌲8©2Ø èf®Ô¯hf'ˆÀ ²å%y:óaïÇ䌛ôÏ¿L3Fî=»¬QŒÛ˜”˜EN/:N²1&ë&á«+×ÓQT@œX1(™‹$ˆÛ5eùÜÔM ùèµ;ãóÀÚÚýoIk}æ_¯ñöû¶@vµm#oÙkFBX×õ¬Îf3• 9±Ô¬Æ$s»B"DÎR»FÌæý(òÛ«øÏf¼$þÙ¥š8ÝÙ›·~Œ™ý7¿ù{û(ë^´¨ÜSW¸X¶­¡Î‰L!¬(ë†kr1D‘_ðb4Â{­5Êh.šË–\È@ç®8\´ÖQ$”É߆wJ¤ž—OÔŸá+WÛyHÀåªÀ&qü“ë73ãµvRFaàæ³+³”p ˜ÑüƱ3¼Mb}3ÁVÌ OÓ?M0Åð}ÝäaoÝûvUŒQ½#Z¾(ùå?.ˣГ{t“Ð7¡M@ª³Ž×=”…*é[Ë®Ù-C1~'­ôl`訕ªŸ^ÜØ Ò§©í-¯4¼]µPÃËx\ž~ ±ôñ<‘Çú–ó±mõ뻌3ÖÞêm]ºàñÑ34h3n•ôÔÈìzÝx ³]€üñô$Œ¤§jÅhk¹{v*¥ –¤­!¿Þ7«ûÁ†s4ŸTÛ^…¾‡(É'óý1%‰ÐÙ7©av]ÁdW· ©*¶Í¿zcçE˜È=T&$î„9ê-,i×hËÌŠ<¸†‰î:gqԸѿ‰ä뙆í¬éÎêšN­²Ô¯(D°Oƒäèò×3³4¤ÍÐËá®9b²Ôq™8æ‚ õì\¶Æã%:Ç€ËXâžÌð‘7n2ùIIÁÉ›¸É¢(äæFFÎòTe”ö.Ñšzªé3E&—mPFz~¶aS|+µ;ÓA­u£šÈšüïH©ÒpŸ:Ú$®úSx›r«Bf<è|$oRÞÃ{vÚr"Ä "÷`·µTÕ2³˜´š”p9;´³ WúIͺ—!iûfòF´éÿÝq€§þÏÔîÿÑÙ}VòEæ_ˡ[²oºìk:óc nÐTÈ vá™Në„×[hþ›jAe;! &G[W:3ò5X .nŽ¥æ ¶t=_Sãì„àÒ¾62zN‘°ÄQƒÏjOb?(™røê„ýÉOÓöÍjií ?Nނ̲ƒzwû tþþþן` q6*ÎõTV ^€öCO 0¸Ü&&Ú‹¥-”(PIjè4Ehƒ® å¬VñÒv[‚¾ÃUE~'7=—q³‰«±ì™‹%9EÖg²Ör÷L¸YÜíå.ÏdEáÇtEúcñ&c•ÙüGí÷öCju°’r%K ©‹‡%"Š€Ç%7_´F᥎:¶%“!¶@íÕMlä¤%^ƒ$Û³ðµCañœ$ac}fžGß$Ìnl¬eÇd ³2ÍýVóÙÛ‹ ‹IþÚ‰C®ŽÐ^{QOȉ;O[OŒö±ƒ×ò«–±yZ³fŽG9P»JàÙúš(Ú£(ÉVÅ` ÒW³Za$Œ&ŽA.ºùÁø¼ÚßuçÍúÌ„sÖÆÙ«­Ç©mÚ_FÙH§<„PÚ"<Ñe$’Dp¼¯\ø܋%ÜNÑóB:^¬EtQMèsûþ-ŠÍ¸dUß{¥%R2ÓVÀŒ½%Úu5‰ áñ˜.Œ¸ž×¨»ô“fuU“ãÛ¦Æh¼…fWø÷ªÔž¦›µY”Á›øó‹€Ç[ÊËÙ±îZÎ4±÷§heÚ5߬·™ÝGËô[ü;š‚ÞëyX›ÿuß¹£oýÞcóí¡›Äc¬¬EweAmˆÀ³òHž>I¡"hÌkwoSð;GdLÎõ•1®ÛäQIs\’:è‘ omî#®2zÏfÕ¶ ;-.fÅØÄ䢎+ß°[¥d~Jy»®f3l&GñˆãiÙf"“ô¿NçúYœ½*Ú«_Ôö`…úï©fŽ?_~ÿY®½¨2syùÚÜ‹»AކXW¼Uÿ¦ñ:#@\˜;Ùœg&²Z¬  ú¬„5 ¤ƒzo’q:lê6â3{ ÎíÎi7­›_ãîMÒòôö ùÝk3æ³3Ošä'_Ø(CñËRäW5[ñ\Ð]„ç¡gZõ¦ÊU–ÍIiZ¨vAD–Ý+1”OÖã>›¨éÙ–#~Ø…Æf‹àgf&?”| „˜„¼]hÓä Ã×o •ŽK])IJ¡Ð· ý©¢ShÙuGZúµnŸï¹@’Æ]oGY׈\Ãägž!FîŒÝæyº5&7FäO÷óÍÌmÛÜêè¼Ò‚Þ+µýŠMnø¬¬Œ¸àä:_¬è;%˜f³Z:´¶ ãùú†2¶7‘÷á ñåɄлˆÔ°›6¡«µä|³a`6,~ÇsY zßÇ‘ÆÜºö05óؼ=‹ôO%³«>P¾ mYúÚÛ‚ó uvÄ(ÊÒ#JO¼ß¨™šU&ñµgÞ³VRÆø¹O½š…„Ñ òëBÉvüêä¨F<]³¢¡ÂûP¤m1j|;Åðž“wÍ9Ì–K4-Ažµ¬q^OpoØšX2[NO°R„e—¨Seaž`äþLÛ¹›|Ø93emjžkjž»Ñ`iZlO•ɯª®“ø(ÂèÍg§ëhêÝýÿvÔi9¦´q´˜ÿÓþÞ¶=¨ºúãþ?±÷ÿ«+ÿx:­<°ºMTUO®TMDúë…8ëž¹ë|ï[Í5$rC$ÍÅ,FqË€A$r8œr38˜1 3³³;;+ƒ;;3³³³·lííŸììÿ»:ûgEÊae<ºéª±a‡³íºÊ¸ ÔT 4'“جAbÐGZÚËŒ”…Õ»µÑK[ÖÔQ.{ão_wZúæW®è{ÎÞË©é›^ÑO&»®æ3a ’wá§§dc3éüÜHº~™Õ ­V®ìÓØ‚víši£Ý›îìÆCÛ7õU:×°h;“mÒ?W»…ŸëIV×7Ÿé[iÕÁ´£VA~™ÛlíÀV¥æ0—5yÉ<"$w¬“@ nÌ •ÄMɧk\£ýN3`n<­©æYÏiÑy'|Ó*V³$mvÞ¦ÛoX<ý@y ÄçõÌ]-¶If¶6ÓA=ú³ÛìMNÏGÕ¼ñú‚Õ:¶…Ýûñþ­,Dý<‘Let$cÛ68×ëÏEÅ—ˆÀíÿ. ›Ì^ºŽB­Ìú \P“ã{(`™Guv‡I} !§¬ Z„&«-O%NcªÊé¢/œ>ŒêÖÕt¹Â¼c—5±i<¹sƒ ÙLö¥¯ë›ÑȺä³ß–<æ/1›¾·‡ˆ/îX©q0ÓŒî{ ¯ãå§nå1ÈÝã†ÍŠYMÂ)åš(*Lý³E%í4·yÜüb’Sb²!ë×âø!G?7U$·:í§†+;ÐEž>ûzߤ^fE¡e ëjóÎã|"‚?ƒ}.¡°.®y8SÆ59Kq²`þ7!©ñ´¤y;f|cc9ZK 17‹“e¨È'ŒcÇ4î²&ýùR®-þï„÷›¯øüè°û÷þCôÝ~ý·ûe=‹ÚVÝ®)š:ˆº´AšiúÉ…M¨¯]ýÌî,u™¶›ãO­ ’‚ÚŠ™Â|óÞÌéªÛ«ýáê´&0; Ö($)ÝØ.îÛfDXA‡«Õr\†KÈ™ä1›OÅ húãé'&ê\…¢íˆbÐß¿ÒáØ¾Þ¬;ÿªä¯äšÑn—Æ$–€Ét_h³]V³xÆGèï»Eô4RßœM£Ct·~.¶;J{Ò$?j(¤Ÿ£ænD¨8\¶/R”Ú’ö‡¨é¼••«ôð´¹'€ÊÊÑ“y³Ip™ä#»9 ‹—ÇT'g’3›¾†Ôö-y}úŽÌ²ƒwöÿ/Û¦oLÊ\„VÕÕfÜ£=o…Wí*þÊ׋1E”ý})Èÿ&¿ÁʪòÜ–ÿ”S\}ºï¯®ŸÚv}®ÐÝÚ6<öÉp<ü-çòù Å¡ù\^Oe‘Àú6óp.ü[©A ã1B>¿LQ„cë¾½3zíúþº¬z9,—‹B¸uR]â 0|ØŒìé;6Ì€HŽâ77G3 iBè¥ú]Ùeqm’qÜÚää{N¯Èsâ±E©mÖÜô¥–wÖnÝ:v°—,œEg5¤g½éuüÍ mbÍzW°ùvм{6`«Vµh¨ÍQŒÚxOéí33|Â,C(³; vcìZÄMÛô.C$}»Ã,DNOÀ¯ïS–Q]q´jÛŒÁŠ^>2g*é\[‚6Êîo4äÐåí`‘ÒÅ>W¯Â2Ù‘Q!ÉÂ6tCmGÉ'À{¦‡•=»G‚XcÉLu¦ѦOnGŽ­ß¶€O#„8ý—5ýS1,‘U­•¯›k¸,Xm»ÈÕ­ÁeÙÜ·(,0ÿ˜ëJìÞ]7³„Ø'™È£xüe;šÁML"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹N^±øãõeÕh¯r×4ƒ¤Ž˜® 6‡‹Z=6n³„™ÚI=°`ï·õtNkbðSvJüÑB@LV.ÕYø¦oȈ¤Iw‚ý|ù‡º‹Õ¾ÎÉ¿až‚ú+ÏÞŸ¨|å¢L¥&5I±GÊëŽ*¢¬{R=8ä湈òÅ_‚a ŸºCÔnjèŸ"Ï|¹â»&¯¾lŸXúsуzwÒSêºE´HãUt-eYÓpé,†i¨Œ ³B}h¹ ã/˜H{‘Ï$Ò)ü„ç³™ãâ¶ÂÐÒ‹nȶ„Züñ I/<ùAtÓY½÷.IdUã•U%<ÃåžMTû×\(šœo|÷ÇZß=s½óÖ·­ïYØ ã0’3(䌄ÀÀœL ]ˆL]ˆHI™Ä™ÙÙّٻgôìÿgoèêIÝK<óúê;ù°Q¤ŸD”{ÿ—ÝœklDwµˆ'β§CGh«Íûû\Žj¹þçÞÊä@XN¥¶KìËs¶ç®òDcK”æ—µ´PÖÇrÕ*Ò[µaâŽ(¹;R ní°xŒq>ߌÿ¾Ô!yìdkï;VÝôóS*,Çnç@‰„[¿nô¤'aþïôçþŸ¦«Ù™Mµm½¸YNv‡o%±¸ôÇ.ŠHZ\c˜$1Ñ-hÜâø8OÑ—H®""âc<²šÛ"a)Ö:ìÔìn·iYý&ýzYÊõÞõ[!…Ìc.UËkû,¤’Ê`3˜ùgÇe¨¼ñMZc«9ËFü±™©äé\§ªöb².Q»ö%á$f%±3;„±1Æ];17D.&@BOËÛuM\ËÙ¶u{]"oIðÓ¹¤n"‘}¬§H£ÈÊH›ø_¥Uã´“å-÷¾Ôã®9ÖúçzÕ{LÜ6ã–=SSÙvsŒ§ {”Í"Æe(ãjÙxØ„ÍÍ…„I‰úgg\Ëb¼<óà ?Ùå”#ï·éºó!ï·õë÷Q^½mL8p¢°Â,KL}(j»T4ÅÁhÄÜ }ð°Ø0˜;Íwµ;SŽ“Areƒ·_MðWÙ½u™ƒðÆõX€3±k:„®5ä–žë½i:Žf´XJ9§Ö³Û›Å„˜¤Ž,4³ƒvÏ“x¨ÿ˜Ö~Þ'šÃ~¦b­V͈ÉÇîÍ4Q=ÿGyŸúô¿JÜׯ¥òu¢‰tŠƒºYsº>L5‚Ù\’â¤ZɳgÍë~^‘¦õkŽÏA}‘ûh ø5¥¸ H¦Ržg™5Ž1–¦©¯oùü¹N´/aËêÚ¦¹d<çk!´ i#hþ %ùÁõVI›ãÇØg~º)å«3;wÙ|sÏ(¿}3‹ÃäÏßlÝ{é$QßRÙìoQi[” ñ‡æ3ÙžãÒ&ËÕ r!Ü8TR[ž™œóy fÞÒ=´´\¸/…UMí/õ©;“â-K!C/‡ÈsÁ–Çd+^¡“Æ[Öxƒ!Œ’±±Z¡z¬œ³f<„‹kPÉP¡! Gõþ–êa~q(ä |Q˜8˜Í|O¾ÙÄ„š€¸;}ÅØ»ößeZJ ½UF Ö¨». -¿•5!©ë Æ?e@Ûé5ÐZ´±l›Æ6ð’œ\›ke‚×®Ò¯¥RîÆdªÏÚ°ò7r ·ÏhZO!Z!|fã¶äv¼–«°Û‘Š9jÇkWWÖs¶ˆÄ ÙàÓ§Õ,[ñ=—†¯íõ ½;õz»jÍAïμO·¶ø`ži¢Þ°Ó°ú†I:å?@èŸ1Û±V¹HNó[Ú&Zƒ¤¨öÙtÚq‚£ªè3…’VV4ÝÚ"Ï&msadñ·([IÍo˜ØîÊ H,Zãbä>XÒó1ÒÀñîf”‚MGBÐõ ´T2`ó×—µêø y«¸«U& q9J¹ëµîQ8-Ò¿b#œæCR˜ÆF)mÆýzžÕ«¹‡§c‚iJ1I¤ˆ\K±!ggeaàõ5WYr_µi_×¼8(²§ñ†Ç"|š© ò¹ —Ë h%E×ç•–ímwÒªóÊï®õ­ëYì–ß¶<%´í[&ÊU„¹l̦eë„@ñƾFÕ—ˆcÜcñ`qawe2*õàïà‚|»wø¢ûw~ÝßÀ[¾ßÛ÷û©1µY0‹ ŸW»F0l:} I5`Ëè2öºæØRG³¾²º°®Ñù# ã;Gd¬G7?ǞݕÈ!)+æ¹²çu,´½s%>/%\'…§…£’;-Âu¯cïÔ°SÉbò5d–žO¯k“¥4ô¯Õ±Via:SCàñÌ `îÏÓöÎÄ/ؘ“;1ƒ‰3“3µtæIiù¥>°‰]t )pÖ¸ ñsխȦ¦ùÕÁgµm(ƒ)r?vÄ1¹³Hj·«bÁŸÆn™\ªl÷Åê¨e6³7Cä[&G.-ˆ¨è»m“ g}'%va G5dŒ¤;;hð7' !¬lém`ô`‡çb‹u3ª‚Þ¬0¹Y€[¿üH wb1û}DCò‹tóDl2ÙV¥õ’NÊÓ$<5Hc¯ÍÁ¼1¿1¸ìÊôÒâ:e·º4º±¸·*©¡®°Å¢k ¯i÷Ï[Ô }üMû˜¼­˜Ìž:Ôô²ì…i©_£v¬¥ š—*YìUµ^`8§¯Ä»-RÒ… ç/þå÷êåyªºî¥,ž.Uw}çGÒòpÆðÅ`¤› ³ì8¬ØüpOœA;F0„'`†ùWíã)§fõåZµ›ïÛ·M$0œ~Ý™üúýÝØ}¯Þ®{móI%òµžE/®C|´f5}è-§Öôq©°Ï,k1³îSiñÀU©¸óÆ—PGé4+«èºf=Ì󜿩ÈÑDï= Gºì¹†±äÍôðG]ÕõK}“•ˆ6âªåñŒsHÅ!Äú«×Å»EbZÐÇ×üNÁ,Ó¿÷^/»õög‹-:{Ñž‚i º\)§âŠ=BfómÛÂy ˜ë…„I—µä·ˆY|‚·c¸ìǵ.å‚éxt ¬»QݸîOk ?'o5²b3ØL•}/@×s¸? š\^ r.e£…ìÉU¬GR\mÈêæq–)å¨Ôž*Ö»pXejUœ;(¥³jh¥û1Å(¾8¢EÓ“¹FlQ‘3ÅN(ú¡+–ÿVú¾Ñæ¶'b¶·z¦Pµõv>Œ@VôÁ½Y^käÆžxXå7ØVdrmª¡ÈŸÙ]實,ØÌ9Ç0«'î°½žáÝIö˜škVx×rعdÙ¤x$šÉXãÛôvÝ{»Ò ãÔú¦SücV/Š:5·8 Êç+G&¹YúÈd,|ÐÊñS†òfbUå–±y{iÂ_§wíÈ«»„ežúäo:ÔR{ËÑgب-¥¸‡ëBÜ·îVyK§æIVÆŠ²o¸-ÖO!förŒ;–XKTU>sò_6s?f† æÅ»muky>+o1œØÎ¥XY€%™¬Oj[G_$æ-f5ã¯8?êÇðûøMü/þøúžÍ³dô\fÛ$5jí<ϾXÀà$·–¸$rbµË™¹£¯­blMç<.2ÈÝÉÅZ©åìe¯W ÖUö¯È7ŵ…—§·èÔ¤%òZ°{N0a­­p6—ò O§ô[Z¤|3·ê,äЪX¿ó!™åÈ”KÖŒÊïüa­qªåðm`üž–RÊøÜ¬põòE5iÚ8¬° ¾$N6jüÎPÍ„ƶó¡~?z†k^<çrŒ˜ˆ öb×2Û®ƒo&Ò}ìvk%Ûøg±=³,€K…Î~\Ñd±¹JPË]ýËx/Þt÷¾éÁ¬šán˜¥¬š®Õ« @‰%q* n”تªŸiò&ñÒ• ™Œ ¡ÈÛP]"Ác“µIbÌÞÑ7¼Fû‡–9Þ p|qe1r›œu¢ü]Ù‡ç©3±•;‚#c,Åf¬—ÅwáK‘ œ>—¹ÆÙ](ö¯h{Ý ÒÃ…Üð0ÌÀÓǔϋÏã†ZðlšÜö'³†¹,RWµ”ÁßÂgrÓÕŸHÇlW™ˆoõ±€!ÖÔ1QÄ–2€Rü\uØs-Žqs)$Èw€Í›bÄš˜Ï¡€Û+ja‘4o K~Éëna,Ô£²é¹kXÎi™Ð–l5û1FPÓ§$C×ö°™GKcÀ[Çå‥ÇÏfÖæGwÊ³Õ œd(lFÎÑX‹¦Yß·gg a'fr†Q8ÝÙ˜d1Â"·lš#%f«ýÊÙ—?¹òÇ´c‰›ª^àpSzá½± ÷Š6µ²Ýyú-ÅE6<’œVÙ#V“;Pvwç›þ_AÅf±W¶Þ/¿o7†ÇT,†Ç©e Þ´šÀÎVmݯZ8`ÚµZoú uÀÖŠÁñKµ`´ùnã«\¥©#`º†^Îý-—òˆ¹;¼—ßé¥'w~Ú l0›žÍL§¯'VSïä‚/‘IZÙ¢rG·Rù‘•#hh¸c@0¡ú짦þK‰ ªrc èrQ&+ÉNßjõç þ•¾ro$-3MÛöðÅÙž[‘ëZÎÉž FiV9Ç^ËÆÃl¤'8Â&g›ËÈØØŸôøLÉê-ø/Ëgö=‹Z×r;NC.SaÒ±—²³d®íyÚ°~c9É&·&:/¦ÉMzR†¬1¼?Œ}6Ã=3@±Dc‘jéêel³E"ŒŒ­oTCo\Q#ƒfl±¹!&õ¼:c åCžEä¹nøÞ¹QEŒÚ(WÜ­Á»ö"µ:9ª8-8ë^–ù¹éº.b¯DrK®í›+bᕃ,ƒØƒ1Êqþö¨vLþwa˜¦žÖw/“ÍY*ðMpÆRì÷¦o¨«T+<³“yBì†8ÇôŽM«žß|OIÃü§fŠºÆ¢ˆŽÖ¬Úœ€ÅUoí-ö³™E§¶…ˆßÊ*o”9ÊÉ'{å^ö:HiH®ú.“',ß0ê“FHsSÓð¾Ç— "~!R&Ë뺖³eÌ{‘ìAµ•agiNG"³ýU“ëâÇÎÎäÌÅbZÐÇãû“ürÏ3uöñx<Ÿß¦n»„%”Ÿªf¤-X#… å«1-5jI!8؇e·ÛZ†UbVÔ<øç›[ZE6ööyPäîÉŠ€‰Deì-†¹³9çØm÷ˆ0šôš~Å[‘¹wT/­ü«•«­ñý&ÕÉBCÍi¹ºùNR·Fì’›7°òÄÚ®bÁÅ.k ‘·KÕ"ÉW!$­b©BÓò×Ë ;4v"p¤$,Ý0ÈÏóÆÌí€.@]m|ínÌ¥#Ö^‡ô=ƒJÞ'ðôJ…k§£µmŽÊ¬âíFÎ&Õ¼îÀœ13‡ö–áÈ“HÍŸ`‹Ã£Ö[Œ­–ž—ƒÄIµñŸë[ç×zɶmY=ß'·j÷ì“GV— ëø§]Öõü…Ùû†³Í‚ÊêY»<ös,õ®CW¬%fY ·f«iüÝ €+G^podU%– f”½—Œ±Ï;<ÑGعO½ù‘rÒ|Í[gVºD~ i¹®v݉²ô§f_XSy x‘%+×}• bŒ¢{à>Lr<Ó¿Ur| ­{N‘ÎRŠæ¤éz^f¼r ÁÉ­`1»1Å3 ?Q˜žQ/)ÊR³$³Ï˪—_(Ëaºfq³fňÝÛ÷xf”áíÿ~£fýºé™šR‚SÕ%]û?Û*¶¹®¿w•83úˆþß -É rOôûcçåR8áu9Wï×kqʽk}󮵈l;¾ç·|_Å{vϳü/ñ+šø\â‹ó+v~7È£'è]ÙHеx;ø+Ã}÷ñE}öý¿~=öþß¿»ûR6c ²ac•R28œ•ÚÏó‹»T6døèCìò´’è+q8—z0é{`®ÄÖ¶Š¿µ® ðж,JÓ ±•©·lb7ìfgOSå W3˜<}8±ÚîÕ‹†¤›ÞZ#g‚¾6͹©ÅµkUCÌCIØr0Q¬ kB{WîZƒ%SŒÊzD1Hdç4äÕ¬»··6'‚b~ìÂDý|ÑØaή»ãÖ)î÷F×:òÞ€“„Æ ˜ô òæ@U[R‘³ª"ä4ΫóÌëõYìXY¯1Cä–l—4È#LÖ-»AÉëëfêZ©³iYK'[»`Úip·ìo1âïÑÇw^Ù+@ß5íc;^Žb ïF öð·1¹[Õ+Ú â!(l€ùIZ^šAnúóÆX]ý Ñ9FïØ;Œ‚`3N`ŠRÁfÖgZ¢!5‹€zÜ óit~*‰¤+¾ôš*úଦÒS\$]÷ÞÓï\󿳯¦CÔv½¨æ‹WÖ6’JÀRX…ÉfÇÇÊIƒZÁDæFl"ÞCÛ·“wJ[AÓÍ4P³úg–@·þæMßý(w³<þ“k«Ã’Ub34±ÄHjš²Ò´!ªpš»$S°`°×Úù5L#_ˆNË”Š/|iBÔ% $´sWámþ©Àêx :I¦Š®õºiºVV¸´‡5ŒÍžÆl# “Ï*Iœ!ÎÌ‘Bq¿1ªLïKa™üª×±dú3K Gnÿnäf¿}3»QËæ¯ÉÒwIæ$|¼ÄºT£…õæçgÒÛ{ç´¸r.¹§­{¦÷ ¼‚þÐxßt²ëv§çû‡×ãã•Á¢i”ecÌs.š# M_WÂoûZ9~AoޝÖjzî¹hÀ;—åi îì¹9ügµ`›ùxû¿Ùç’¬@í×ܼg–anýtðy~ýu×zè/äÓõl¿±|MàÏYJ©Ã: “áïzžÂóè èÅ&Òª.A|Âü"ý X&äÌ ¾±‰…%«¦²Fþy†³CÞ$n’‡ý¶{áÿtúZ|å-—aóšyN .¹£fʪ0âêïÐVÊò™î4â´Þvö˜±ï¼Ñ G I·×¥‰ÃV€Õòµ¼ŠÒ†™Þ‹É5˜Ø¼»2ªï&®N>†/¦#÷ÔrHûeò5ß÷ÅnM£Vû‚ÀtäWBYìz¦ ]Ô´ü²›“p©íΕm©\Ø0‹Bç¬æ,m® +Ë…€™*¶*í}y`T's0ݽðüwr1á­Bå u~§^Û³{VãºÒÚ+A;ÄYÜ&o[Ø5-39Qæ­n¨ë=cn…œNcG+RÝÒ+ü–ĉò6„º–¼pW¬P;·±Möb.¿P—ÍÙŒ‘™ •¨ÿ)ôùÈ¢<»V]–7 a –¥ÝrØñ‡ÄGh¤aÐIlíÒÚŸo]õ±Ð‹”Q^ÓŽ”ë{Äÿ¾=Ú¼’I…}WU”£š­éú«å«W˜þC‚¾Ã†×ªlb=°³K&^K Sõ_òúÎÌÒ|ó³;;‹Vg&n™Þ)%(èѰöïëÚ’`Í?ThžjÚ¦¶­y7ž¸3˜/Ñ|wÚJwÉ:޵·i~{Q{ë•~ýuÚ)u½o¤øÞ±]yÝ·‰öíÇiÚ^bö=ƒ-œxHDÄJ'ÉÛµñ¸Œ’ 8tì&lÞ‰ÙëÃZµ~þž¼w÷øbŽ.ûë¾ü{û7ÿ£)'1e]tòì~\Ä3Iã2âÙßã²Àž˜ŸOG±kwhr@–÷&ãGQAËÑ×”{í%’çs±™<–!K/‡È^Äåq¶¡»ŽÉã-Ø¡¡r´ƒ-{t®Õ’+5mA(ŒØ‚XåŠAfuÔÀ$Ž@#1q01bnœHIˆ]½;;;;}Õ]íŠÙó‡} âOyУ%¾‰­K7§Ë¾«ïjYIŒà»‚ó*W7E,Æ€ùqâ¿™M¹FO#¶Û!¦ò‹49âÄñ÷"ÌlÑm0ÀØýo˜™˜cÚñt (4œí‚þPí*ƒª]ê¾ÉƒÀ9æ÷i xX¥î/’ÝFop;ùÚ®ßÖ'g³÷“Î-åðË/QÖk _ذ«N0Æ E5Bý‘Ó(Cœ‚Sh9±?³9ÔjLÈ_*7È"òæ¹}ÑÞÛqq“Ö›&±žÔ2Óá6VVó5´DKí×/Õ?pÜ‘…ÔUUA4&UŒUëóª’šM~ß“IqÑJ˜œvG9™ð· Õp Ý£9öïKyÝ´-€’˜=³aÃæÛã lqJæíFsÆñÿ1¨]¼E-†o÷«V³d·éº–¤ßõóë¯nìÞÖ=–È®˜²ðÒ¼_dKcd&@fÛR:~»Œ KY?²Ë&å@¬YUÅ ~ls@GxËË}fÆ4à0ïÝ4<}^õÜ63DËÇœ‡u|6SG4n/vÙ²ÓEn/Šþ)ÆÆ±‡Ò3Øëu$š–Z­®|V´²ãìµÚV, SšCµÄøÉä~ÙìhcgìO¶šK1“1FCHÌcâL+€Ë}SA o…Š3X ½ ›$Ú´šÉ®K‚®kçô¦­Kª*·[^ }òÜær²ÙÛFo6Æaœô¤ÆÖn½ìx^ äi+¿f/k{äÍ!_ÀíXN¤m¶Üºàé¡ÜvúzvnÀ‹ÙŸ_Ïæªê—mKf c#¯°á4ûT¡’ý6¬ŒfªÝx˧fÍqýþ¡ž½r±}šX£yÄYž`—ù–îG$±É‹ Dª"þË*ŒHÕ†Iuñ…í¬Äô¨ŽM ‹”ÞäIuÊ£ º}k´”ëëy ò˜¬ž#wšÇ_Äe±¶e§‘Åå)ØÇäh[€œ&«v•¸á³VÌ&ÎÁ¡†Ž|Ž[XÛv,†cqãú¯;œ–s˜™mË[-Ši<_z×*¶ÎJÒìttüžR–èÖø*Ê1MVµ;;sÁG^ÙuÓ4R0³Ç+³áf/“¦v„ìŠò矕Õ0‰„L"®“ªµ%Î6õ/ Bª¹\P )# |¹×öè­hp+kEÓ vþ¤Ê7ŸG'l®LTE‡ol”íò!ÙÚ÷"ájé[Þ6MÃF«$狪öަɥÍnBšÕÝ;$v[6§"±”ׯÕÈ깩K6ñæÇžÆBš£ü…f©µ{$ÌÆ^>PÙafaQ3·Ÿ‹3L$ÆÝÈñùÄ}_¬«ØÒ¥Æ}ãóEŒÐ)fšÉfÍYá’¦–Ý¥ÁóšÈzU‰‚Å…¡Òã*zˆ¦Ñ3‡¤àΕ ƒ8<µmÆß ì¹P‡+Ær¼«¬]š ¿©àr7s˜{¶˜Ê¾rÕèC#¬gdhåá!ÝÁfεãÕsûj7,AÐrƒ¼wJ:3 ;¸O( Rýå¯9xÑ7§~˜eœ~x¢r~ç¯[Päªy<’ÎMxè‡*N­¶/f¿ +8§Á2:n:`nÆC½p‚Î\-Ñ} ß®6y# ¬&ážDŠ “-‰Åêe#“EW}ÛôÞ=ÈËã`+E‹Þv {%( ² ”T¡i,¹}®cgxqö‹íâR½zàýýüšIþ ›ïÝw³3?¾¾û'×ÒQE6o8T£pBÝ,輊ÌôE¤{ØÉê:ŒkÍH6™Úÿ‹‚zÔ±ätü£û}sÇ=Óh¸SHW¹Gs”££¨ÍS¡†ZR|™åyRKpŒ~eþMFIÅág'{È›³xҮݿdç=Çvë×èøè°¿æ3}»ýÿTW³Æº*cë ‹Qê&7 7Òõ];‰k¤ÉIrºAº×Šz`í¤–Á×Ö~ªƒ I] ¦ý#í&éÇ”z‡ Ø;•„¥!³½íû¾4ìQq4–´ìÏaá3úZà ³EÈ/_ç¯c†­l½É”_×é­^´QýÙß¡±É=õ×ûgéÿ~«D«ãí–%ÿµ4ä‚k*7³¤vmÜ6g4=êé*råÒRøýŒ»‡ €Ù®êhžEš²Wî±Wqt^eZJ\\¸}jژĕüÏý‘¼cp8x¾6†·È:^‘ª?"qíLEW©ˆÇã³YjSgv-RüE6þÉO7ujGƒÚ±ª–>ä0áó+²?fSU³f¤¶R”†qÆMS—¶iFû'– ¼Æ|óŠ>màÉ }[H¨+=‰0ø±++x-ycÆt®ˆ¸—t!Ȭ×$¡L98ˆ¾Ê R†-(ì•ÇB˜úë”$å"ƒgo߳ܩdJrÖ6ÇÚv ›WË8¼V-EJLá…¼^V»Ë¹M5ÄlxÖÊbªüð“)5ͫՊ¤áÓMÁ 3Ç÷arh™Äã&g`–3’fv.Ÿ«cšm\˜EóU$—IDM5‘Y>ÒYxåD•INw‰¨Ÿzß &§ß=ñÖ·Ï\ï|õ­ë{Öv8Ì$ŒÊ9#!00'bbfq&vvvgggdvgggnÙý;?ÙÛú:©jU“ß>wߛۓ“Õ©®ªï~]1Á©˜&qTÒÊ®Wœ$ ·µ@Ò½%Ê5©Ø*dÞRX»…1ßo/»”výw’Eêr…’ÄíÅGC– ­rõ‹Ó ÆÃʺ1Ù¹±×ðcsÝ0ôìo09Ë6^¶ô#£·}<´ÿU&ù+öît„X[Û»Ò2qK¾¿ÃÈMYý4o[õÄ^KÂR§G«åÊ™³©ë[N·+ãÕâxŸz=¶äÜ»Q§F¹(O©.ÜÎp@3s Ê06ãï!¸8kì7á×mÒn¯«èù¬üùP¥¦©BÆÝÝNÍ›0VÌâ³ öëf¨Kb+Uk7ð©f xékÔ½VåX·w7~#ùñ±×Û97feŠ¥#ˆ¥ÇkÚž>+BXì.Í™›ójó_±,³ßÉL1Y½rÓŒ&9ÿ<ñw©k)u7p"ø†K,^i*úÁ¾zŒ¹ ÏiŒúŠ›…Øñ TpÕ8]­ÀÕÆ$=$2¨«¥Õ {ž{ðõºgð–±»†±O[ÇÞˆaä‹V㛲<¢ïZÞ.¾ù˜×íÏ0{žµšPNÌ"ò³”,}ãœKÍ;w oúÿ$q®~Æ/h×.ˆ&¥»”¯Vó­Ãf«ÒýðÙ8Eêd±óÈ!bvŠqŠXüNV–ùðùï=¸¡±cj5`c—ºØ{š’—ù[ <~ItiXÀÐé ‘9x¬É§ôŒ³Ùœ³ÆxÎ4Âpg!mœóÇ4c«,Ñepºî;‘öì¾G #»ÄÕ,â´h´,”Ó¸ ÀU÷·«^ì,RYˆÿL{¶Í€þÒ¯ÂYWÕ¸“fµ’ÉÔ­o ³ÜÊñ½_“æèƒÐ¸(%>æ¨ C'åÏkÖ7 /fÏéÛ>2®bÖ3s<å’–OjZvàó­ôõ§ž#øìUµ=[1xOZy –9_µ”yþÓµc—¡×:1"ø·˜EiIÓìp7¦e隟™/H»¹ŽçÆõÑšNJ<©¯¸4Äçí㛾#’5 Bþ?)¤ñœpe±“}]þÕ¾îÙ Šá6:öñ×ô —Ò©%Wgh<±S»‹õ9Lý‘cÒS±`L,ÝwŒÛÄ¢‚­`ˆ‡®ˆLmÒ&/»þ¶éþÝ*Ã!òÈžxnq~•ºß^­ó³[qn2˜|Û“ õdΛíÁͲá`5Ö7UtÔÞ?ï/vŠ iFéh“µ¬»« |ɳÛ!Þ"«‡pŽý”µv\£ëºžÂ@ç7ŽKc zÆÏÇ»¦æ°×Λ’#¤Ùʺd4²[5útð6ç»SN –p¯Ú‚Z5Ë—ŽÍ©B ðV©„9–SâªÇ2ðƒêŒã€t#ñÓ «nŸ’²&°Í<ߎŸ-*mMÍJíŸnÅZ6„»1Ø+¸‡†ÞâØ¨ý1¨Ý¤°ÈüìÍæù«3̹[˜vmêöO[µCäÀî[^{5Slãv„yKVë\«v8ñ÷©dª9ÒÉÒ*7©[³RZÓ—ß¾in<ã_Àn'#ǘªpź㶸ml8[޽'ÃbŸÔ¡šž”ñÏb ¹_*RK$µ­ß–ŒvBPg¹¸WÁ„Â&`¶-i¶#JD§ì(¿3lÐCß%¸´<1¾µ«û òX´•ŒÆÉ$FVÆWÐÆ\]Ù¢FÄo<˜Ðè\r¶²cjØ4ܨæủã¯}<ôçî·id1öÃ㻊Ëâ²ZÅæ°Ù¿‘‘ÃåéÝÅä w‚íIá'¥4XŽ`c؛٠‹ö2F`âqÈì$Œ„Áý‰3ûUõYµ¡æþºFÚYêÝ£GO[ðkiL»"¶žõÆø¼aѶáÒ’D›ÒûU"䀵&£8=(]•cba´ÏÙ!Ô¹EšM2:W JNÒhî:¾Ó3——æò–e<^fÉöèÛ¶aÕv,†C#ŽÔ+Cùg¥êÕšö´#Üð7ÿ‹ˆšHžö¡qosÂ`¬Ý£YÆbÀNd–,? u'&¹ƒÜº>ÓrnrDrœà;Ib®C–¢"Hê ¢œ,Ÿ]kjŽ×•ËÙ×ñzÆÃ’ÏSžz¶ð”0¹+™z¶ªœ‘Ú­g^´—`ž´ÍðËÉ Å È"@LÓÄÊsD1 ‡ d$ÌâânL.ÎÎÎÎÏÓ³·_uuì<“²:‹ÎO³† ómÁÎ’X÷»+^‡Kk/·wÚj#:fhÒ<ë®UÛ‘Âþ5ùènþÒ9é-fEÂÜ‘V1“7©§¹‹0rÉ«qÕËDâ'VŽ÷›×n[ëÍŠ´³ÅÔÝüNÆ£þcLŸ¨å+zw« öÅŸúVŽQéú½úûúTŽÉùŸòtº-nX¸î;ë†VIíæh”‘ÁtzÞËJ­+žAèq‰ ;\¡¤ 9óÀ݉ɋ":Ë5l|§w˜t òW3 Tp7}« .äßEo©Å¨äÍš1’ ¹¡ò&/—ãì—W9³X·gÉ-ÊIU}æ¯XØñ‚Vp+¤@©úüª¼P½p8ÚLÇ—F[åÍ¡»µøc8CŽœºè5øSòÉ.W“÷Ž…|­Ç‘›0;Ë/çsç¹*F“ùpk`SÊá#½Pw‘>™£¥_ïÙ³Ûv÷é¾6Š›w×·þw]únÛõúÄà³Åa5œz/Í>^z® ×i ü—SP“Ë(.¤Âð?r˜³=š Süu!²¾KòÞO¬ó½¡}e};‹p™ f^¤”¶,o&ì{.çK?_²*‘ä±Zí¾>×'|iÉ%Œe‰ð߯d>,ž.íðE8Ñ›5§±z@8ÉŠ§ 5Ê'õåá$Ãnfóé˜Å¥`0ì H]ÙVHÒ¿/uä7í°íÚ è4öÚbrÊ=e&…ؽ”î(-=Ÿú ‡Î´ÌÙÄQÐk­g:gó´™ó°Øìj‰Æ\”qlô¶¼†áæü!GLÖ3Õ«ÂW¸Â¦Çï»ã^•IÎO¶ùµrÚ7,a‹ÍvÖ5²ÏÈ‘ŠÕ]›ƒ±¶Çà ïñäŠÌѿҵkéÈ™Ä.WišæÏЉüI'^Š%jïu|»ñ›°køÅË6¾½Ù[J§ G÷ ­Á‡ùËÀ³8c&´=³»ãÊb¶°qÒá:2-Ý“®$ « ôÁ1xcwÈÏ=gù6ºÃKhÞw Ž0 t³».g-N1ŒÚH‚*·®Ï^0ˆÄJ Ä#!êíJ”5«ÂOÛ¹E q“»·NîB,îîÏÓ»¿¿Ý[6ïˆïބ܆y—ù‚)w<nœvõžÆõ«Ÿ.\‡°rìÿNL­²Öq@Mþ1Ye zåQÖInySXj¯VV537ôíW\Àë8ÿû?úÃY¿åÓÚCÿ鑯öпØK{Mö?ÚO{ã·ý0‹;Â-rúoã¾'hØ}úƒÍÓS<‹î6ÆÏã›}]²p3BHŽŸKÖK¨^ü®‹ä¾4<£HM#=³³ ™ÇvÛúÅgú ä5š–µü…*»N‹•·¼æ•™9,·dal¶&Ô.×uš â0ÔÙ0²Ö¾ÐåùÉà罈¹Å@˜šP"‚Ð ŒVcfówïÂAÓ4.þÊÿÖ°È=5 ï·¡m(û¾¾hòÏ«SZðáÞMuó_¬;KErxòí¨öoR Rèi@Ûñ!ÙøLI›!Jë™Ð(dñw6¾2»f×hW;»ô5ÃwÑ«‹¿É6HŠ,Æ·uox8[úéÿÐÓ²™L~JqÚ 1‚èŒ2™0C(»½k%û4F]UëD¤ñý¬A+Ø)½~‘æibgvŒØ]ÅúÊúWKß©} ÍâÛu.Ê—³=qÈ+Ë]½§|Нå¢E§lØè¼uÒïLÍÕüvi b÷a×±`ÜY{r•²çöì-Ü¸ÑøþÖ‰À0çõN2Ññ»6fé|ñ›kÝÅæ÷}S')3GBõ—)‚ËOó³³eæ­|jõ†($/¦»õCeÙûŠ{¶N ?©ÎŠ´àÍìÄa Aºyáœ\® &Ф+GBß+šnª€=×}œï ¯"1WC{US²Üš,ž”$Ð稜ï}¢Ÿ u½ñÇ<ëIç¹ ~ÚªCÚ7Ãd¡Y…«ÒÏl¹¬ÅHL¥†¶Bíˆba”ÎA`f2#nˆÞåJ°œ5«ÂO÷(¡Ž2]{pwõëÛý½)W0õ!0‰„U}þ’’À¤/–?›ã¯î$¿Nié)'…LZo«ÙNpØ©uŒôB‹¨åf˜]G~0¥\ìˆà39-k¾â¶,m _”ë^Ëc±µbÇkû¶**ÓïZ…(€b«IžÜôàÝ5Š1ŒaWSÏdiÉŽ‚©«lzµioEvÕ8Lç¤C™9ËZGv«`ÝÈ¿KÖ˜ÝÊx€˜Ýܧ†raqΪ«º5h,óUµêgD¿3Ššl€ÍÓhÆ–UDwI! 5ªW xUµ°¡®OЧþÐ, ^¶ðÖòÔÙnWRŽŽL-Pص<Ï“ëû–Im`rÎ2MHÎh`¹‡ÏRÊkYʸìö8d†ÅŠ FÝ–ëWµîAâPÏûZò³ ¡ï¦&fw"'oÑ4DqNÌ^BB36`ÊJa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L" ÿ¨?"ß÷ÿ+ÿÆ?,aÿÂ&c²ØŒZ{x‡Í£¬²Ø¤€N€{ŽH›xeu®øScžÜzKŠJ|ªšk'¥Rëi.’K'¾OŽù¹á³Y}w)K7€ÉßÃf1³5ŠLe©©_§;1É^ÕsŽh‰Àˆ ÀÙŽ38Ɉ …úIsE( ‘›x˜± 7ôqvvëÿ?uYâ×ó?P¦×ý/K(C~¶÷:ô]BÖšk®¢Í‹.K”ŸÑ†ä“M4X¶›Ÿ¡øMnZ‹¼œ[˜6¸ʤã9à8ߑ嬿ÐkÜcºÜ"Ž1 qÇ\OgíAާÙ"¹Ô§k#’‚ÿQGíòܨÎý·ê–íaöý‹»”—bø:+‚Ýø½²!ýD}g»U€Ye#AÝ–¼1ÕöÇ: ª’ p("»H¬=¡kBçƒ%£R!#»Fim¦b%Ë7Æk†¿ƒò2á·îFдìí9+¶C^·=‡1Zá>a&¥§çuÙMëœG\Oa‚< —ªRY‰C꤫RÕˆ‰‹ÂVúxc'gqë©ìE+7lý»Dî=;;yt/’íßײ@H'žêÔÈP%4øõcØ#)¾6z&ÀYëšqµsÐã}ðŽ‚¶U UuÎöN“ß×-mK…1¤rM°òVÜQü¾†¯­èõlJ,M^H6;»Fïj:Ò‰Ióé¡8ƒ»4^MÒïå’>™¡§_¿ò)æ²Lßï3Â0V&ýº°ìïûõí~ù«}úF‰—zøö‘üºD.›®aMËóÖõÊ;sæêOÒŽd(ŸwJtÚìÏ«þ59I$9ìez¾ÝÆØøž,/ÖÉ9ø<–9xÙóÖ£víäúGÐË‹*D&]0µªwˆ#ò3‘ÆPçéî÷%÷»èjÖ†!éåõ_ZOÿÊCÛþÌÞ—á?,AÍ× Ì§¾€°MÚè®RÒ/AÛŒÍ:@4ƒäW(%{,„V†€§ÙÙk€´+a’rÝ’º*tº±òö~pÁë¼o­@ÑÉ!Œã].õÚ¿$ç;ËWaÙpùýª #ä0Çd3ÍÝ–ˆÆH¬âsù«›¹§8üv1yMc7-ý{)†± 5{køË¹«°Àu!cã1î>-N¸;;8ÉcÀLý±„Ñ0J3ûiØÙû.ÝÖ;ÌöÇórzñr>Í¥DM]‰è¡’ÔÂ}kI¡èh„a¨vî™CK衜¬¸AþÑvt¹eaI.®êü¢O>V¶©½Ì@ÓqŒ× ð› æÏå'æò×%²×ç?Ól7,eçŸá‡SÏíòUõ¬_Ošz^­OU»êë |³~×cŒX|¾öâ›·ž(Dcµí®MÏ-À<3ž«K¨B¹5º6”ÍÎMÇ ™@ž¨¨Æ`ʤ@¥ªˆ‚‰¬Š§ß=oNZ«j«4®ÖžÚsÍVÝKPÉ^Õ[Uä(lV³^a `ž @âš@dŠA 1f¸ ““1 ³‰ ·lBíÛ;;;;;?NÞÙsr‚å0‰„P ù¨$L­RË.RXù XÞ —prF8,ÖµttŸÜZ/3}MVÔ…uD¿¨"2!Fð9k›EdŒ|,ÝÞÇã‡vÆ_¹†Õq6ü~t m‹A›Ø0;UJr?Àl<‚ÑËNK'ùnk6??‚³aî`rø¬Gha܆±ˆÉ<\âwøm4°7¿ŽSý,ÄÂÞq›RˆøËƒ8ª›ùª Cn{*b Þ™DŒ_þvi|¶«™™ÇXØf‘Ê© ⢲Ý’èD™\Ts‚ÈÈP>¢ÓÞÝufÜ™OÃ.á±Ö“9¢ê¹Íba{Óe¸ß“®côÍŸ>ˆäòSp“Y£ºjµ)›LWª…M‡ÎÙ|!ЧüCzÞšð“Efx¦oÒÁr•ˆ%s? B»LU§"n¼_Êwo XËá1Ï¡%o{_¸˜} +í7Ÿßkª‘¥uÆ[h¢™n; f‚1Û絑'ûrOi ÆÔ dÔTdHÕEƸzl\³Æ˜{Àóã±÷6}ÎìqÊ$¯ýWØuKWgÎ/âx„å/å! dŽwÖH}ü4.HÞú3k‹»?MØÙš)Ù‹îÏð¿M÷núgvïì ÐD(7žjáˆä%:||±lØU[[8r LÕå:Ö±"Ïчl*1D«¾vº(¥J .Æü’O°r^Ý,o8 ~±­hô¬8Uå‹b½³nöã†i_õ´úpMA߯rJá Ë$}3EN»?NäsMd›·ýLñ 5…Ý›íÕ‡gÝ™»ª•¢$*}e^Ÿþ—I1úI(ŠR QU¿oµ¸%ÁKÁÃÓ<®¦†ßö˜ 5#Þ¹é~SM^õ¾:ÙÆxÑëÄ¿›™HÇ!rù°gDá(«[Š^1yX§²w$vÈÀQàºoüËÿuÓ5J±Eï¾û'´÷»õë¦aoßÓ¯æüµuLÎç7µ’Q¦¤k‡rkÖÎedpü)pšA_×28%_ÓV»ç¢kN$Þ–)úO×å¹w?L¢m{_ãÍZõʽaÅqî§~ýo3";ì›F3aÛZã‹´Cp¶±Cá‘´“| ˆ»ù¥·;»ö_%¹Ä×Ùá€âƒÇ÷ñø¼]þíéºÄ_D$°é¢ÃKB¼ãùûç«{½g³|•¤fgŠlΟ¶l9«4þHà!®ÝkTÍT®_;Ø RE|~oœÁ¸iéž*£ËV(©Ù£±1±tîÎã(øøÏ;vC'êgw8äŠWi,„ÞŽí’¶ú›Ð,M•½šêFÂ…H[Œ]z’ìï„J+[¬$N[L¦ù-á®à÷OJÿ^pÍÀÎ¥F×°áŒêOŒ³g¸ú•¼=ËòöR¤>wjãÜô!s†.¶Üe_(láÌñÖ¡»aþ]~ñKN,¤zÎvðëTŠÙ ^à “õ‹»Ö´ý;ÿ‡2éÚ^™ÜëIÔ£Ñ8<ÑÌú„ÿ_÷ryî=訣b M¨’zGÚë·JæJb)s®ŠO{!^#2eGTP÷Çê $¢@ìJ©r¾ÿóö¡ùο_a«½Ü|vC¹%ÇX6fì›õ;V²BâxˆZ±);|mߨoì‹üD·röc‡s×eYåHÞe²ãN†å…­$„í³Cfð‘ÌÙòù屃ÄP„${Oãÿ‡‡ÖdÙTl«Ìr§–¦TREIN7Éd@ß]{Ü€=u¯»k¥”¹‚z¥ß+wÜáçc7qÂÿ›Yd°vµ«R1XÃ;ؤÎÝQžWú€ýüš½©BB"÷Ýæý³ ëû`¿ðé\£æü 3É }¤À™ëõâè‹b,;?ÄyŒUc‚xÄuylÊí=Â)}ç¢ÆÕ]=o">3ç lö®‘åÈØ²±ÀöºýÆ”–˜$]N´ºH²=¤ƒºËp²(*ª;OóqÏÕ?»XîÙbJºæZHšCªõòqní˜Uwòa'ga™É…ݺí¾Ý¶ãü?b*fù—ª_ •lìy› C18kõìg^)$†9åÇÇG$ 1üd]Oæ‡âB­‘¨ÿrzú'dCj3Ý\¬Ù˜wm+ZÉÆ6[Äa–!k4¸ÓÈlÛiJWoEŸf±Õ¹k3®Ÿch;ž"þ6¬¾×zvç¯åy#Mú¬´š¥dó…#©†‹ ^xhÒ]ëb$K‚JÖ¸.Köj%Aä’m£“vc‰Œ…-/XÔjÚ”eaØnnûu¨ªœM)Çóê dœ¢ù`ÚHÙç’>™ ¥}?‘YšÁ ;?lñ hÉŸ¦~§qôý;úušnÛùyµ¹[¸Ÿ™å•˜¤%È Î–÷ÉÞ\Cò+Öö¤‘é¹Ëå–R€‚kžÐ«¦&·2þ¨˜K`šU@Ðêûoc¼?$âFÊW„™dÖ~©´Ÿ«'l’?W°F SÊpY#KK:­¿ÓõüΗ¨·hÓ²r]I)þåÓ€$².T*RÅÔÙyó^ÿÒeä<,zG4n[ÆOÏh1{~31zÎk×üªgp^©‰Þõvgø[:ü=P©½±VÃcŸWÉÅüª’=œuzÁ'éó®q‹G/Ø¢•„ެþ»ó(¤''š"þpŤß¾\¿äñ‰ÍTT‘ëÐU?1Ðîï0ü›Í-lD¬H⯩¸v…¿ ô%‰l¿°¸~ØòêÛÆ‰“¯W»<éÇ‘³"c¨Ò¢Û´,Þ 4ïLtóZÎ\ç{sÀÉ5Ý_`ì0Q¿,¦«’­°I’׳q›.¬W5‡ÇË4`Sàµ!o(毖¼¬Ã<]ýœ…œ˜€‚XÈá“§øä6gu¾ Ò¥ip»l§j º§mQ?£}i_ÄàvÕ=þ.Ä‹4µ!ÒTQßÙÒ{çê’{ú}Sçé„©*QÂ&| S…$†ÀŒaL ¤S R…!>‘ bG[žÒ\uÒï´–E^:MTúëŽùëž·­Ô†i«ÍŠòÉðHA<&QM ÑrÅ 8œrFb&ÄÌBììθvgggfvvvvvíŸÓ³³úvvôìÿuK¢Ï¾Cm>aU»´Ÿ@7÷ûoþ}™I˜£ÁƒÒ}tª¾sŸÌžÙcpàÓá>¹‘ž;WõôH²—jn9¾E½ñÙ|5Z¯„Ûé]­ÈöGáÆòN ËK°NäÌÉúÞ…ü¦rr"g—~×iØÛ[¹æØ°ÛÝËUìã-‡ã™å®BTÙû:rÈ´MýiM)„q3~Õf&ƒìÐÉTEÄûhO¾<©f0€ýZYEÙú/Hrs O±­É„\Å”ü]6Í¡ÕtJa%…¹!½meÅ“66uË~´ïÆûgQÔ…Ÿü:s©‘³ŽÚµXu'Ì«äwWÒð™h<ÚÖ7¶æp˜¼íY ŽlM«lö{¤L7@ëh²øùÅŠ Þ~úì+Å5‰cwÿvX ŽC‰Ûîí ¯Õþ^fúL颔ƒy“Ñ3!éT†u5–¸ªÂ%^K(4Tí®í³+i²)ÐÛ1B9‡BMÊ G!,B㈵•¸×QვøË1°µ ¿´nÄ 3˜µÍTÚpN-/À1¾r8ÎÐIÎÇ$áSë »ø¨Ý‘›¶bp†»;öìÏãjx%fõß¿‹³ôîìË÷·¿Z¾ï”B®èZàEÉÞø|´gV{È@k޹ր1Ö5ÃBÎ=©¾Té ­ÅCI4ÿ&/ÙìN­C†qÌòXÙ¹hš8z,~7R×õ*3Ùíþ “!¶mB¨‹8±Ï¥„æGäðF1xÍÏžDúf†¤ ïþcžYɇýa!.ÿf°íӛ߯žêÿCÈ5¿êïQ­ï–IД´Çd)Þ´‰fóyéî–é·×ÑoIB4’½ëðð¨«öþ-ãMë†ãø¸™£i ›³˜l˜ÆæþdÇÇÁtÿÚ_ðôíþ¬1{ýþ©ïwÓ~ÌìÎý?õg§7ïÄ5ê÷7}=~{>ñ¯Ü]#/½ÒRoC¹Æ)¡_"  0 Cªö º(xûvbNšT²JY‹m-úÏÅóŽã¬äje4¬f‡¤ÛÇ¿–:Ö u Y\|žv婲옜þ×§™*K#爦¦Ã^g’7‘©ã+ÌNÕ‘?F2Û° mëÑC ‘@íÛ13|]1{nŸ®«f¨œüJË•“I©Æ¯\øµgºKÑÑ Š.ïî%1ôZªý·ZqhúrÏSÓÒWÓÊÖ¬]o$?-ŠMÂkñl÷+Éùnržc䯣¸É$tò»VF‡îsËDqKŠšØküc°Yð‚x ¥Æ×#’8,C SÇœœP¥4ÚHjGb¿¦rïÖf~ÙÚF–ìCÛ»³¹\gv{d~!»Š²Õ­¯ ö+lSó˜Å“ZÎ9x‰Í¡Îá¾Ç_[öºÂª¨. ªª=*ÃÜâ"›LÆÇ@ÍlqWÉ/:fðyk+sŸÆ]Ãåñò WqÙ òVµ\Ž0š'8¤fwŽx%ŠÅy‡Ê+5¥ŠÄ$2Ç!]ã–9€eˆÆHÍ»béÝŸ§oݾììììÎÎË?ËRî˜DÂ,Ä­!6´s¨´í¦¾ Ù¹n1±ê<þßù:j”DäM$ÿ•²¨ª‹²J#ŽMÌäuµÛœW{ëy³µg´ü›eõìжPMNÐP[£“ÇYñk˜œÎ2äV1Ùœ=áŽþ#)VÞ:ôlÑÚ­(32¥4XŽPbØ…ûq 6ïÆHÌ]Ž9·qL_Ø“*Î÷kÌ|š2jzHœâ€áÔÐä$JïD/ÂmÍW¼e¬tcG©½ÝpFðFoÍeÀ#-L/¶£æÕ¡§a9’R5Å¿Èä5Ž3ˆç³‚Ù¾8È­\ãÌ­¹d±Ž¾dÃÿpö6%³`¼5]+s#Ô1ðJĘæîáü´ÛÓ]~šX{Ò6ãf1ëÿ533{ž;%ìo39è>a¶ôrÙ ý%ØÀQ½zÛðÚ›ÀåÏIµÏ v•‘r@Ó@E@YÓ[¤O¾±ãàþW©ó¾sJÊi±Vslò”xÞŸœvŠ”Çw}·®TžxîÕ’¼I0X„£i…ª¶J‰uñY _f¨Ål¿ËäÎãTf&gÔÎìÌíퟤߡäo<’­{æoDÍ‚änÔ åÒ=§›—/­w¡G%žø°+DTSì’S€—Јkjle–ìa‰å¸ÏD¢ —•¸Ë;Ì#=™-ƒwµ,âòËî;ÖöÍbs.¢ˆ¶8Zi¤e‰õ†}¼4nÊÝz"« ¿ìÎ6æ‚fgýßá~›ö醴ó~·I4ƒ¯h:Ó…ËG­<¿YÓ»UÌ&ß·¿ÏÉV:αlYÏ®þÏÅÀVº¡&ž·¾Š[µ>Äz} cŒŽ}—‘¶¢Žg£ŽÔõí>¥‹]Æðl9 ¯l·F/"ŸN È™¡äyäM›¨jAÛ·ê9å°L?¿q —ôf°íþ¯ß¯–«/H?÷­Ký@$mÿWia¨È„ •v‚ä,¶ZðôÚ &w )‚_iŽ>úQŠ[¢¹íüWÅØáÉx–|¡ŸÌÇýârk?4‘Ľ`Ð1ÜQ rf‰ìOlJIY¦ b¢wÁtßù—غÿÂTŽ'~Ýû{G{ï韦MéÙßµŒH|_^̘¦Ó þZ‘žO‚ڼܲ¨¼Ž àø‡ëœ¼z+V+Rl%ÒÒhŸz­ž"/À§¦y4}íEÛ»cy×fÂPÈàpšÇc5 Ü4kl:{èØ|¶3`­“å¯O1°†ctk›‘×ÊÑÚif±Ö ïb²T2°èxÈd –Y®ˆÜÊ+S$gtîÂñ×éþÎFmú$ÅrÛ.i2X1Pÿ“2ë ×ô«r͵œ¡uz`BµÛ8ý¤h¹»+~šD;8TÊÜ´'¹ƒ’F×X6з£`÷˜lf¸—êNôa-¼·äm­¯4²ØŸN¶ÿò´AóœtëE¸áêüÅ”Âd1X»{m®F̵£¿ããèBð Œ?¦f°>Ú¤®ïÓ9׺ð Æ¶y¦ÕÁ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ*áÏúƒò-ÿò¿ücòÆ_ü"a˜EZ¦´[³d¡Ú×óóóUkg»õÙ“'6òM©.‚S@TÝŸk\2‚—þ#54\^М2 “r¬H‹(ð"öžiÛÄÓÓ¹#siÔ©0Á„ÈT³ž‹I4„Ú–ZÜsÃ>ç±-˺N\dÀ_”íIŒ—YÍ_—c† µd+Ì`œ»y…Þ½—õîxÅÙÚ^™„lÇÔ Ý1´Ñ‹Bù%ex5Íß+É[õÎÀÙûý_$$rK%—dþ–¦)¼¦Óc×ä´ÑJSÿ} ‚ƒe›²ÃeŠ×µèðúÛ.![lÑrVÊ–7mÅÅ,PÅy¢ú‡ÂlXÙœ®êû$Pyâ2Ë»3ÞÀ_Îa†,¬Õ ´2›Ã @XŽvwñwëäˆÛôÍ ¿¦=‹» ¡ÆÓŽ` RaXòôÍl-ê@ìØÄÌÞŸ*žìòx­%Òœ%Ê…žj¨ 2}*¢ióÚÊñÎÔïŽ5¿»®u¹th^ÉÛ††6•¼…ë$á^•ó[·9°‘¸C^¸I4¤À$n ì"DíÓ;·R!r2û‘;·¾½»»3{õíþê¾ìo0éoÒb¹áÖ·ä]ÇiÒ »eZXe‡AT:‰Ô!ͤ¼‘ùŠE$Ðé«K-ÞÔåÚ þ=•òËÇóät\æ³OÆ3üÏwŽ ñÊÈ6guŸŠxþ8d2‘®8°¹ü‘ùC|•ú 1Ì^Û³½©;gfvøë4§ßnÞ¼{Ûìꬓ$ž×oÇI|SçËÚW5Óöf”„¶"ÛGT䞦y’Væ[TJ)ÙrśٯˆA$Õ¬Ù×—’] ƒK¤Nv£~Ý‹®ìøêø¾xä®<Ãåà©ñ`·ü6jÞÿ»R†¸½z8½³û·Âî8ß ×)~w°âv¬ 7£=†\.2¦¡fœÐ™2¹#rîZ²F5k“ùÁõ’×:Ò;»¹|q—“”-!•†•ëßAúìåíºXÓµ|Ž6RÍ“h¥»hN¶«ES–´¥ôûJÌÒè À©ªìÅ"\åÂeÍi¢á ˜HÙMí ;eã^6Њ…¬þÙ»í¸¼¬!o˜Òõ-~¶›¶Ô¸XMÛ%¹^»RÅ)L)äq¹]öÙlöz¹P’D7.Zbh ­\ÁÜeŽÌò•ˆ ýÖ’°W&&g 0²ñH=…kë­/×å×CG…×ãM4wÆúü«+ˆ6ÏÅ´"wÄñfK%h›Ûï\‡5DÍŸ¸ªé:ÿ[føÛérs?™÷׌a#áºoúïô­P#'õû•™nßß o^¿Õ|¹ó ¯&w`[ž‹²L8tE —+¶c\Øéª¢Ë#ÔZ&„(™ýw¤Ïåhº$N4ß¿µ½R[»òÎB›À:Þ—Æ´ä’hâ« á6‰ÚRͲüÃçYÃ,Äö[»#¡ÇÐwóY»;»3;•©`n™ÝßùtÞ´_«ì_ËöÍ×Û¶|Ž/æ?9ÄÆ(º™ªN Û% rPÊó-™×³É˜ÚD˜×SÖ¸YÄÇR [k•HïZÖµkËrÇ'çiÏŒËråsb6†L)ìyXðmÖ‹ ¨ñPUýAV q×wpŒ]ÝwŽ(‰Ž:•ÄÙûi>y{ÿ‰äqy¿õ9;ÿª™ZšßZÜ™Û@yeyƧv‡PÇpkukpAmr´ÖàeE02’TrGUDVO´ûëàôî[ÇÛ«~…«4oѳÊWiÏ-ktíÖ”f­j­˜H&¯f¼ÀÁZÈ·|Œý”´³ÉÊßê;µ„N¶–µÆÑ©ì:fQðû.6LmÒ­êÏóV¹G%¶.t²Øl­ ­bóx[ñ‹ËŽÌâ.]Åä!oš•¹âv5.â°$&Æ>N%éÄ€ÇüÑÈÂqHèãDÁý³úYæcª²aÑÕ­^œ€hk ?Êc“¡ƒ€‰o®xÒ…Z‰:{ï¾xûÕSŽ~î¹çëõëZÜŠ”íß³:5l]·9xAV¤Ù³1ôåá‰Ë!x³—ˆ ?Lï×Lë‚!r"aöäNÌÌßÕÝúfÿªª“¿HøâÀ޼ÀÞ¬JæïlzD+ºÙý 9 M^7Ô ¥w*è \ÄH†âfÑ¢;Á-Ê&àߥÜ:÷s†·“£±PÖv}Ý FJ;6Ó$|o®v 1&m‹s³¯aÚ+&8­E-ç‚jvJ+@u¬¸Iošî6`(Nhm ·E ÷ ÙŸÿº®ÒÉÛv.ÃÛö/ä>µ…|üŽùûÌ1û:¬»'Nó¿/ºD¤1u­Ù¬Žô¥jÓ6ÚÜ#Æ}1?«­CG‘ Ñaž"ÜÑâ@r»Üÿ—eÏ3|Y¡ò^6:;ûÄœYÉÑš…Üe=š¶_vÈ®|Õ¥¼ù-²k]Ÿ‘º¨ÙÊ—|­4ÕÇC†ÑÈ\µM¿9¢ìø³ »5\Þ+aÄÏ=byªäp×käi|°Z–¼Ù*­b¼m(³ ‡ŒJ3+?#˜ykñw®%@ö¶mYü\¢kË“Q¶º:É„’EÜ–)¹à353´!E0&@ÔRVÀ¹q ›kIHÈëçE]Cˆ¸ ˜²Îí»s#çpæÆìý~Âët¬I-8Èã‹7±òsfêÑùl¨/ÚãÒ{4 ©~¥I¡· éךbß??‚˜sºÞ‰ÆSÓËkÔ¶-[*Ü“Éì8ü FÕ ãˆ¥Çß•A™•ëVÁ䩞ççNÍìÆ:üpY‚xGÕËפ¾\'Í.ÏÇŠ-±[šܘC¸øïÉR9›‡õ¦¦1Ö°= ïÇ6m¨¯;ë“æD ¥»éÌ ­.–]b>ÍŘøðü]”ÉÛ&„|·ÞB»™Ç÷1ÅGG×øÖð<áú@&ÍZhõyMö_—φñ»|—@»õV ÆoÛzg+2ÜOíÝ£ÿÑiëÐw_¬}-å9ÌÖØ³¡0‰}(t\´ ¦ÁôËÝûQJâ‘æhÂlø;'ˆéF—Ç~U¶Y›e *…Ì[ î²”D¸!WkË<ߕ׵‰$Õt¾*Õã3]‚¨ñ¾³¹V‰"83<£S|Ø¡– †ªc™ù#™ÞÀ—Ôr‡¹¿³çŒêïÜóJŽRÞ|èýdòböÎÛ–bÂãd=rÞ*YiÉ‹,«[…É«°4àqö*ÍüYüKƬšE¶Ñ”^ÖÝj¦Ìa(å1ól ç‚Gdb•»¬ën?Pó{Ùuúp}«kÆmX°ëi  þ®€±ñg,òöKL’¶_“7Û4m…*’âjÎEˆªÒùZ¼8x.EŠ‚œ2ä­Œ«SŠž[ 1·È}ä_Ú::¼|ñ6#^ÃaéS£ùöJ91ôê‡Îö+øºrÙ°Âw,Ý,v½JI¬\šI% !\XŸ½ºK¾|h3œÙxÂmÿF♺!ûÑÞ¥ôÝêäŠÇr§®Î™mHã¤ÑIMŽ3\f<ÎÆºèOâºr‘_:Õ6üþ—’<žàÀvjOŽÉRµZ¾C›ÅZakx|îôV1ÙŒU¯)¨d+OË6@BÍzóEóúzñY G¶bcp’9ü²E »f?± ³ôîÏØ»³÷•=cY||~S(ÚZ%K&‡Mí~•§)jƨ*Ú mÿIDêø”Q†2Ò€œ¤žîXCC}e½òzÓ¸>Ü2=‹ü+¬òp®7¬îïЕ®(šÕ«U³’—€‘ñf[#bÝü¤ç#›Ž…ž¹gizñë¹ÚÌöjââ|óRvŽóVíØo0ˆ¼Míú½0„m×þj!h>ï4u™„ŽÎ¡æ$¿A5úò5Û Êl5H‹ôâ #wµÛ0“ÞØÀµØŠÚÃÆö·P7©sk˼I]ÿì˨”P¤é‰¡š¼Ò×±O‡ ðLÐÍ8I±› Ç$f$,@LâLÎÎÊàÎÎÌììììÎÎÏÛ;?¶vvôìíí¾êÇå5Êa ÅɹœÏ ©°z ×Ðãÿr‹%D‡>ºû”UN8çëÿµ•êÕµzÄ5)Vžå»ÑÁZ¬2X±<…þXá†!9$7ý€‰ÿf\³‘³väNÌÌßÕÝúfoùª;oÚ¾=¶ødQ¾ënz³¡ä¹^̼ÊàM¯vWνi0܈eg©™¬g‚ÙÎ[C’CeqgêþiÈÈ3KãQäwþ•§ón˜Y³¡Ú¡ªf¡«˃åzÑiÚÉMœç«û»•íbŒ7«M>/9‡Ëã¶LË%ì&[1½‡µY±±àíhJxÜž(“ص }‰ÀkŒÄâþ˜â’3†^˜dŒÙºXW¹æõémQK’€º$b:HÇ‹DoØü–“¬&d;bbÇé¹Í@ñRNÝÎíð±Ò‰’E¥oä6' –îôD"3’\ü>à6Xnf4~GÑqsTÆI—ÍqÆKa½¾í¸(ë›¶B\CŠ5ýÖ–ç¯R®'“›' X¼¾¢Ïa¢¥B<þVˆåe…Æ;4ì›9´qÜ‚­y]Ûô4ƒzZÅ^R~ÜãÜ~)‹â -Ô³Öoè©¶:b› b"þ‹…‡uȤfuTÿY}<À UAq§†ãíE!Zn´“)~–ïn#¢:[7U¶†±¦ Þ·ŠXNo¨­¬èxÌn*èé¨ì{áV³J]™ÍsC"Š6j²†ÐNù2&ÏáV´=õâóÚ31þ¾pÃ]ÁúoLÃkÛÿ¼ÌÞþ»®½&þª:ï!î/‰³ñ4¸:»K¯°À„X }ЏjñÄ$~W£bRHl,rHEÜ(QŒ˜†¥1ï© 9}¿nï)±Hîï÷w'Lßfe÷²(Öùkòv4B}St7€ƒpTp!NÓÓPj,¸‘K6&gi2Ù°m*AiòÌ÷ÐϱôÜ\Ü+©\ PRrA©êüg Ž=c?­¸h¶lÉjΫ”žX…ÉÄ#›3ªf!c½ªlBOzƒKÉj•¶|>ʼn„±R§¨2O½{"Ì-83?˜·nÑÏþ™âíßô—F‘C$2?›tpkÔÁ¤lÕEòÊÝWÛ4qDTªÂá\!¶I…Ó²×ÅP÷]šîNU„…&ë"<(®¥¦Õ$ˆµ¥:uŸ°qìâïnàç# *ßHúsš„5ÆÍ§ÿqô‚:oîί'IʉìÏNëÚ¿%ÛÂVÓùWŒöyôº0³a6=¤ гº…›Ï6­¶ï%‡ÃØ×úk9 ºNnáë—žKsbæÕ³¹GÙc²Ë=1•ìQ» Y'þd0;ÚŠÛ³°3Oo’F—ìf!i‡¡ix£ø_hlùL‹ú)õz‰/0úF½õl>ß.¹ü³< «‚Ù5ˆew vøv­YgVîO_`Qk.¿Ù•Ü7SE‹˜â£PV—ðøzÖ9öIùW‹,éÖ/V¡Ù1¹lÞÕ Ý¹[ë¡Ãç ã¼ó¯±ÁLf’æ1v ”©Ý<üö>(2jÕiáj7Zà Âqǰ‰x¼‘½¹k<йtÃ$bîÞ@Ò„Fîm¿ªýg N™©ºn¿H®Rý#,šE&‘5ýýkjôñÕÊÇ UºÖ´+UÇÒ*“ʉrãÊL¥°ïÉøk(µíçxÙ?žkEÆb±—:ðC‚¡b¶¼ —ÅzQBrƒ†åÜ(RØ‚¥v1wv‘â—²~ÝÞSb‘ÝßîîNþ™¾ÌËy¥æU¡Ó_.öÊÞ æë2󔄵ªi™†©®Ïµñá„z”äb«8˜{aÕÌÙÔ§RçŸêÙ ÖkúŽõƒÝ*VÀòØß³b´1SÁò~6½¹` ‚ ‚ž?d¯<õÃ}ÕêÂÕ‚¶BÝ}ŸNpëùÿɱ¡ªd)Yk‘KCÄYÝÊJFþ5åw~Èávgz³“öî@/¤äòÅòν[tÃmŽ^ÛÚ4ï›Diõ_46k öRHþ‰1%4)Geñóß`³‚)Æ)‘5%³·‡íÚ&sNzn½,¦46%×6Ü‚ÈëJ1°x¼—źŸ4 “Âä«ãö³ÃW;ˆÆ\6®¤Wµ6 –>šh%o árïŤßô—Oá 9Å+3”RûRÖaŠBaºYôïL.èË¿…Ü`°o~JGú;a)­Å=‚XNü9ÿéërDt®‡)5ö:¼wÊ»ã©ø¿ÌÛ#Hð¿^ÙhlÅgx¿¨lŒVëX†zESüLvkœM\ð›.?ènüÜ«,6©ä±y\m‚jf0Y¬e‹˜|þ÷Å!cóXk×±w€ê[˜EݯX†Ì$'ä=¸“8fÝyG,fÃ$Rmå‚&=þ¡e!æ2«&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aðçýAùÿ¿ù_þ1ùc¯þ0‰„L"aqfTð{i &¹“R‹Ê~ž¢rf“KašA¤\ ¨¨É`²ö•D‰¿p)‚«ƒ1ÂöàÒcƒ¯±º9¶—”j›–Á¦]žæàÇúÏG1‰»^Ž `Æ)â¶ %Л™ÇÑÅ`+^¯3V¹l…2¯©RÔ'¯a”{q(äp–#éÙ¤ŠAèã6gvònÅÜ °"¤R§¯SÔ’%¯ ô?:ŽˆhG½-¨")ΙþÒÚéz`ù[œ²»‚÷È)í>mˆ.ßQ·.¯>*.zŽÇ7æ‡îx±½ qÍŒ‡'HsÉ“â½vͽw¸É£>)¯‡«†Ùö{äúvg{³ºDN– ÷Wl¦N®C¿^OVÄ)7La­Ê>ýµâ¤†^¾¢:­]ßÈ¥úoÐb„ó˜Rùp›ß¾³“)m-+|šŒDE;®EQòómÜäŸ"þ$B)ÑE?_þgK¨bʘ®²›“çÆ“ÖÀqÏje ‚¡=*-Òi&®Å„ÇËV¹ÕRy|ÎxjIPOåSçBÖÓ'×a [€k©å„j¡³ä9M°ãoíYc!•ÆãižKbÒ²Ò×±¼iôâ`ú«ÆTëQ­¹kŸåÚpxúscá±³ëºÕy)ÏzˆZ’#/™xCb6v­`Ÿ¿f""¯1uê L˜ßÔ3LìL6ƒ5*ž¸Æšh„âXÀ=Y¦®¢ ‚\ï¥ •ûMOo®ÔW¾xão}u­kë•`‚{SEZ´2ر9ŒPÁg4ÓHoÐGQ‰†NìÂ.DïÓ3ºáÝ…œ‰Ù™›·wvffo»»¿¦fþ®«É¾ÀòèĨÚõXJ_’_bÿI×ò¶Û*n©Ž™j"4¿ZK/-D…YäVE¶Š$ª¿g £¾öd'ËsD6§ã­·(ÚoÎvL=­W…É6Á²+ œ±Éo5øÚI#È£6o’ ÏÓ[‚B﯎y]úg颅ÎGéúé¿«*ûlüŸyvœéN&N¯‘®…W[DÀ¼¥üjfqÊã$OùÒù·ò¨]hþx÷9ý]wõïD&¢Ôþë‹ìÜ‹ÅZÇóŠÿïˆoO7€»¼¢ÜIC‘\Åã-}?™tbÏ ¯Ç×y±§zoLïþéºíþßãΧoû»}7úúZÕ±¾Jb”Ÿû¥ã˜‘æâ% ‘o–QpÏPz+›.Þ‡i56ݱ8ùRÕó¬î ‰ŠvÚÊk÷¤¢R¨xJ¾^Z”ÝÓ}غÞÇĺþ týërÚ9+QðšË`p:xêàrVçfµ@ݶ}Ë^صLœÑƒYºo¥Ü×3“GD6]_<ô©ž:$Ðß–G±Z¼4ìvÃòËiÝåoÒ6«A^X§wñú‘š&sxg‹È¼òv{|—Ù¸ÅSב¬*®u*÷0ÆiO:Æßyi!Ï“ë:ø¿nù$ýËMÍü>½5qä0%0ÖbÐv{Œ¬×ØE¹³ÚïáðÒn\y¦ì\™«ÖŠÈd6è#-fí¿Ž:õw½QÖ5‹]ª”+UÊÓݲš–rSj˜mžÆR†?ŠkòHÕíØ†”îîâUwù„}‘Uµ<ÓC3xöäZ;3yI ‰¦—~^­.’*}pùú¢Ñ?‰@Ô6ðôÝâ÷EÀvrD³ùn7ñ] “8´¶ï€[‡tíÑ»—Ö1wW^{äžõÁr”•âÖøû‹5ˆŒbÀtÊÛ±Ìñ3ömg•ír Ê…1¿É3cìSvhÀ»|*gÑ1?s[»3·}ˆ*ÌÝþÞ4F¨—M鼨Ÿ÷wwö¡Ë¿áçÕÕÿoõ÷´`î—S°Ü´¥äú²a³[!Uׄ8^²H¿ ý?^<)²“´§}FÝIþeú0_µTâÞhå«ÐÉPùp§Ž‘¥ɰùËØa;Ë|l~¬2e jDñG^Qˆ‡D_Ëé+‘úþd‘Œ²»·ÙÞYXä'onÎäïÛ»ýÝÕ³¨¾.¼ßcÖ‰?§ëMK¬&&µewª}±uz-²â ] ¬aãÌíçr™W…È hl-­½ÐøQÉ©¸•foÖ²I$ÒI4Ò²Êg$²ÈdrI!“‘É!“¹™;‘™;‘»»»»º˜ÌÌÌÌÌÌÍÓ3zffû37ì̯-Aãß%ù÷¹¢<ÁçºcméöJÕ”Õw$~U[‚ßEã­díBIO‚Š[µzX¢¹ý’;Uª›è¹^VÄ#呪›î êºÅ‹¦5'èˆñ8H^Ò)#–Çg’œèØ<öØøôÖt 2d©wÑ®¥,ä[¢/Ü‹¡Õü¹·ád}Êø†Õ§ÃV*˜]§ 5JüÇmZfŒâÖrwésúÌe=;x÷i°Ö†\ jù}1–¹²Å÷Gû*³ùý“Dß4M3mÇ`vì=Û?÷g=ëšvçŠÍRšþ,s•b´öqYšóÒÚ`§¸kG’Æ|gñ{n#OgпÆo®áþ™óUXÞ±‹²[°èK,Ú !S”äŠàHÒ–¢>ÄB˜ÅdcòÎë©tgöÑp|M¡Í67Þ aréXÆê —š¡»è׆<^}Á‘ÆßµZ»c³TmÅGVÚÚœ_SÖ³uë[ooâ/¯ËÍ^ù?ø•Õ2G:ò6 -€¹ª^³Ÿ¿°½t«Høès¶e¿5\}ªsÙ©‘ÄcïÍoBýk¼Sº5rAn}r|øISqŽWµKª#Ô˘ëH_‰=qÁæØ6C7 .¢|ñÚ½&É ç™UyH~úE.ÑJío1óÅ¿–¶;&C-¿‚Ž žG! =;úíþV;íݘ{ffó/£ÿÙ9€j9½Ï‘lV†zË_»!tòÁ[NÔ291gré¿1Ù±>.R³üÑíÃÂÌ"ü­_.WCÊIC‚ÊŸ )oξÔëñ¢è°ŠÝÑu¾SNë¾µôëé·42¹Š‚ŽI픲1 Èr‹R xâŒÉÌãøDcrswgwé|øüVç5Î{¡¼Žpâ߈ˆÌ$î–“ÝyHÞGüÊ[Î2“öq3uÆÐæv,dú¾éÎAˆ&-ƒdlVI †7;ãòtNLãæ’ÈÑñú¨LÙü~8§—ˮݾ(|äí›ïú§õeÂÿ2ŸÌÓÚ ÒöÐßïÿuÙ­ñõÿä ÿÆyöˆü§÷ÿòãþoÅÿñ£’?ºÏ¢ÿú—‘¸«YîÏÓýïþ9òëüÓÿõMŽä? ÃÿÞËñùÿìÄý.>»ËýKÓ~Ÿ/ü?ÓòÿŽ:—ú7}~ý*Ä,WØU£Éò_1Pµ¬*² i ïÞw¶ï?ÒàÇžÓYfÇZuž¾NauCëŸóoQ}Y©Õ²5þÔ6Õ?È,á6ÄÙ~Ú¨ÖÅrÇ"íYí²9q•ñÜ›¦q÷ÎPQŽ;t÷{Û.ůçw}h?“C.ú¡mø¸û‘­ìÜv7Sš G’€ˆèT‚(¤s§fß]—·¬0Å,UÉßÙÇóµs^1œí%Uò›ºûÑ} ¯£'´bÀ!y.%vVK#ÉdÆdÝÜ–mªÂ‡òHp²ÑÙ?ö©xä©›hJ!nrHÑ­Ïb»n#Aã«$~1Ïl´òµ®ØÖ6Lÿ&C™Ð¶Ê#Ã[:>§§ädúY'‰þ0)‡¼Òb3µ1yX,Ò‚´Z¶Äß[%ƒO TÞ;P·oŸS=o&íÂO§ðz’"8݉åmù¬Wr *{xzN|ºßŸCý.š„p[ië„ÆÍ‚Ò-ëþºIérò¾¨Bˬg{'0ÿïNjQE» qf¹|o'ýÈ£ºËdƒÍÜå±ÊsoÖcùLü䎬աý!F D¤ý»ÍjìÎýõþ$«0³ÿF¤ÕEúoLäÎÿ»»¿µÌmòWšÎáàŠF»’Èø?—Oë ôxK&uÛð‚f-:°9“L]$“×)(³Ú›K}+Úok-Ò”-s7*Ù®Tcß¶lV,«=?É5̔ڶ¾5HÊB€5ímñXHâ3'sè @ÅØÆ <Ž:ˆ¿“Õ†Còòù&ž_.ºíå›ä‘߯ÝËúÿWVqÐFdSa‡O„Pxå4PAùå4‘I>yM4Óçžãžyçs­k5´’I4’M4‡,²™É,²’HdärHdîFfNäfNäDîîîî333333tÌÞ™™¾ÌÍû3.Ó+4‘¡Ò?"il~a{¶§–G thwk=Æ9µÑ´ä—ð U,2ÑTrPS´–O´ûëÈ£~ö.íL–2å¼vF…˜nQ¿FÄÕ.Ò·^A–½ª–«œsÖ³ 2Ã<2±H"`BBÎ܉‰ˆ˜8“1 ·N$.ÎÎÎÞ½:ªßÑ–›ÿæªAÝíª($>¦Q®NÊe×!¥ÿ©CËdý’˜È|ýߊ–Ÿ»¶€;èJ¾zÄÈÁ¨6ÿ纟(ÿ's––™ÈSÉüžA«Lkê»Dç金0ØØ<±Y˯=ï[¥/ÖØ›m×r7òY]Ò¤Šz^ë±X¨Íð3~õ$7þdlßj³x·¨&¬V¼²a´m)\üwæ~‹-°ÏùcÚÝØß»å'h̪8ò+tŽ!-b#¯ÓÄe-Lòhùü¨ÞôÔ©(?×fÕ³ú~Pðû:Luæ‚p6½ºY }¡s¥•Ãå(Íg›Âä"oŸšÄ\»ŠÉVq³Båˆ dyÏ€ù!61íÅý8ú(äa8äôqÈ"`_¤…ŸÒÎ3UWÄ‚Ê)tFdT ’HS„PxéE—]e:å4‘I>zQEëž㞺ë­s­ï;Ç“I0ÆrË)„qEÉ$†L!`,äfdì ÎDNÌÌîìˇvfwwffnÝßÓ37ÝÝÿfe_œýkæ†ÒÈkFî®äâ—Ø ÄàR,‰·&ŸJª> õÿRYwj#Ç:üÚM—­#Òˆ&®øP„9SdÔážUµ vÏAÙ±xé 1æv?Œ·\¨ bzZ¾[yÏê2è9̃•¢j¹œE}"Ͷ(°ïª@ؽ~ÜOŸ+TIÞ§Ï[É„{w+ù7”ÑÕŠvµ~žÊ9È‹÷'Îþr‹‹·_Ö¼}‚T¨ªT rfÆç†·ÿ>Sâàà;ÚÊÁbYuà yl)-&gê¯OzçöUé>ÔUÖYk\q§d²X‹I¹žÅŠ·j•¼w%nÓÁZ´ñ7Æ1äµ_SÒsÔmÄnG=gÛI¼¾ ba y‘»5úÿˆ“:ÌîLÿw §žÌD/ögø÷Ý™²òßüºÝ­?¾½'`kõÔº_ÙôEåEºWJqÏš¨î‰!>wÊ ®ãÙªé9úõÒ»Q^íŸÞÑF!®q×koò ²ðñ´“8ƒ‰?*ä9¢ŒžCލ×2~™ƒÄ¿Ñy?s[½7§fo¨úfnß¾ÿÀ…^ݾÌåÛõþ¾×)¯Éek1'U(úæE DÞx–Ï#ØóÞIÆD®çþd²åVE¹á•zïðýTé/³¥–ëº79Ÿ•íÂuÙñ˜Ó®UK ®äçÕðNr§ëúÛâ° HnR0P“¡cò`GD_Ëéa3gòù%ž_.ºgùfó“¶o·êþ¿ÕÕ…I$I4M4QE>E¸å4’I>uÂi¦Ÿ× ¦Ÿ×¼â]Ž3éÝÅÛ±wìH…éÌoÙ·¯ˆŸÚê”Xk‡© 4V¦ùGŠÒ—ᩞ?êØp«®'—ló:>eH¬M'QÓêŠ ³a êçŨkÜ’#o‹ª+m(ÎL‡MnÍÙîÎ/!œ¼_’½5‹û-bf 7-jÎïTŠ(q–÷~î]£ê%§ØÝ/8;f Ì",-é™®€°Œ%ßâ#¬MÛ˜Öý"[x¡NcB%1J±VLJ„ùYF!»ItK¾Ed»é5Sëžøë®zÖ÷¦äŽHd’£8¥ˆÎ9b$Ž@'Ž@&bgf!&vvggepggfvvvví½³³ýŸ÷g_|è¹_@D(¥ÑQ‘P‚I!N@tã¥]u”ë”ÒE$ùéES®xOŽz뮵η¼ïrM$pÃË,¦Å`G$’0„q€³‘™“°€ 9;33»³.Ù™ÝÝ™™»wLÌßwwý™•|qõϘÈY¿‹îª|{G£8þ–‡ÌÙgSB$4p!PŸ¥ŽDŠ‘Bt¸­ìĞ̎’×eÊ»*· òÕ˜‚ÉqÖá¡#B_›ç0WµìAdäŽ ,g³°ã°Õb˜â™£šÍè¢&‚rcñ†We‘ .ãõuÌÛ¶øâ”e•ݺwfŠ'9 Û¶í˜]ý·õe ÚrˆÊKS¤ ›õI¶|7먅§ ª—£f°nœL’Æ ïÔŠS±‰ŒXÞ yD Ñ ¤&G¤Bî8âx¡ð&w¨bsZ4W*l[ÇA©g?ûkPÏnò`jÂQC,ô8Œw|¶1]¬O#b©& =‹y,IÊU­4å4kGeÄ¡­}ç‹ýˆ«½Yaòéݘïý4rFý3É |±LÆLÝ`­ÞŸõÜQÊ= º(–´"Jwôì:æ°®WÌfüa=…kt‹×[®?[Ïä+lDÇ®¤wbÍo®‡Ç]Ø“wµˆinÈ,ñ7 fjäóÚ/#î{TXªÿ™æô]kF­•Ø0Xè"ò–éåöm‡CÉmæ6?˜¥Ùñz[ÇT¯6CgÖ0+–¨ü”dZ§Z7pŠÔÖž8¥7~£bŽmõÔ'iÄÉØ!šSw²ÿÑ~¨}ü ?^õt=¹Bt¹¨ÕôK–¥c ¤TO@7Ëì«b{[¯Ëß$vàeO®»Úi#À(ñ¥º#Uþ{ÄÿñÜy·fì„?¶òWÃË7˜—ÔÙÂêºn¹—ðˆjÁ¹t>G!X2phç|Wϯ;pDÝöíBùºÿ+I=‰c~üž¿ôo¿Íy·Nÿ—û…}úVÅûÂP$~¶§t×êiE¿.ÊKü¯²PûXÞxÿ—L“ÿs´ÑÿWä÷ðü¤ô¼?†¸ëŠõÆÄj ¼üÎ!àП÷µäOŽ/æ”U¾#ô]ÇÜnú/öÖïMú|[üGÓuÛ÷ßø©Ù~Ý¿~¿×Úæ6y̆¢î¥ZÈdh‘œL'Q€,Iße¡ÆÒ…ç“Ôä“–>»ànÉ|[¡¹Q]!´ÿ*Ÿu |ÑÊöà’òÓŒÆIÀXM-gX׆ ŠX£×uÒÅàá I„¦±àÒ¸ƒÉåà=r8ê"ì_I›;?É,c4½·ÙÞY|äwo}vo×o×ÝÕ‚QA`Ap tE 1QLqEtùDq†xIÐKŽE¸å4“çž8çžyÖµ­¦škKbIJO<òÓÏ1”³M4¤ç$²ÈnG$’™™9;‘;»»©ŒÌÌÌÌÌÌÌÌÌÝ33zffoLÌÞ™›ì ‹"ˆK#ÕZÉV¨nÑÅ /î3BíS6–ß˶è•Ç ìÖm(`»\”ÛÇ1Ñ’iD÷~ëIä ÁéÕÀ½‡«ò¸¬[ê{N(7] YgŸøjõÙ)\ÁܵàÖsZ>y ¹cQÎÌÑÄVe‚¥ühëÒ«]Ø«P§Z“Ôc?žzÖ™™¾a!”G혻ž&÷Ó9±³—Á4.dOÂ€ß ¯)¦¹ã©Õ!¿½Ì}µWœ«ûlf±»4תZn¸À%)ývôÖ=òì›DSyŠ+åše ¯±ñàGˆ±¹h¹2Üth>òV‚³UÙ4ÉmÊÕࡽà#–Éâ>[$±û )ò¦jI«ÁG0—½ƒÆñ ·y½ ú{/߀÷å †íά®Íòt,äq ñ3;œŒ§bóX©©„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a¨‡?êÈ·ýÿÊÿñËEð‰„L"a˜EùïŽç®;çžøïž¸ïŽù×\÷ÇZÞºç®w­ë®zÖ÷®¹Þ·­ë{ÖõôÎYÜ]ˆ]Ä…Ùęݟ¶vvöÎÏí½³¢©=T3_?l·¯3ƒä¥Éqzò㻸¬±‘öº.q~{‘ŸÆÂª^—ëµHâ´xWšQýÁ!CmÕ0[´¢zvçm×É VžJ#GZ¹J”×ò²|bÑÁ%bë—ϸЄ"-ªˆ>ù¬sMkøêXr½»é¥§ÙQf({r:L1·~Ýé›ú®o÷h Ú©¿L?Lå$Ï4Õ–ü"ßh=Æ&ih:GÏþk ‚³ î½’ò‚d-œÅûãîüŽªF…Òé¨Ù f%¾Kr{Œ;4¼íÚVJ»^¶fd©’¯õøî6Äy{eÅ<…euüÅ*™*O 2xÛÑYÅeªÐËS»F¼ªöb².Q»±øË·„П]¸Kþ .½·¤ÅÚHÈã!7ÃýaæHù…µ8_µÁôŸ Åšg±¹ÉEU96ÔÐÀàç)p'³ÕàM A$~mï§­ñßÛ}¡Ãœ±’‚•¸ãttìd{ºæSƒ çhäŸ9‘­SZ!®3ËbìQx3?ŸêéF€;‰\¬æßxÆ`9=¿MHïÛõÓ ¿j´þF|ßQ7 å,.dÆ‚ÃvÖ²c‰y­¥&лQ-:n[ëg??Âk9t–EµÀ91B´ºY%v.ø#¹ÝEêE+ì»·jðDÐw4ÛænŠw÷åœd{Þn9k·On9ñrî#oœ!ëõÂ]|5®Îïߦ«$ ë÷ó»ô±»û®ÆýýÛÓ³ªf¯ÍG3ýÝPþ.^ºã¡Y­µuzF@ìî—Óg&Þóç¯kò›ÚÓí>Õq"×jk,…n€%Ù.!?†¸£ð†c“ó™ÞY~à?µ’Æü3‹È¨Ùæy¬}Á°ˆã¹-Ž(8šïiä^sÕïXÖ36Ó¤¼XË\Ö¦ '_–¬1ãïÑÃ顇×/cnÓ”mâ²ØúÖ(diZØûv*Üiå—LdâÓG |»ošf{2³³þ°),<’‰‰7‰ÆnÄ>&,CÓ[ ~%ü´âØ‹]½*õO£EUÁA²ñõï¢_!(Nþ¤¤5?°aTˆ}¯¯¢jj9›C_­É×Hõ¦¬Y±ry,Û±5«3œÖ,K$óÊnÌÎrK)’³3y;ôÍí\DY„Y„[Ó0³33FfôËyøxò,>Ì«//#Wµ×Ž.:Áá¿öÞ*ª– UlÁ×yàÉ„&ç« £ƒëIÁGí`Ì`¹ NeŒk÷lI:Å(®V×°‹žWðË:2l>{K9AHP¹W…<1­á¨ñTÉ‘ù˜äqc3Ó˜ã94žã BwÍwdÎêyX3zîNÎ+'\eŒlWp!–½ˆÊ t®V˜%«z¹ÉW!½Š ’ËRíiëË$EJhbž7Š`ºwbýŸ±!vè„ÅÙˆ ]Œ ˜…ÙÙWäv§š?Ùž/)¼h!¸E!,š–]µ8|~mõͪÆÄ.ж Íéi’²¡ì»±™ä5¬h´Ó„e¶ò;A±š‡*þ½zqn¾håêK*ÔG¤QùsD¢(úÍ'ŒÈ„x`‘GœÂzb|i= ѡݵr[Ü›DÈЈ\bQï…QW¾:ç­êž3%…È]Äf1÷±9\m©©dq™:–(d(\­!Eb¥ÚV£ŠÍ[PJ%ÕçŠ9bH ™Ù\Â@#1’3 0& 1víˆH]Ø…ÛÛ;;³·ÙCr?Ty®(ylÏw½P”ˆ5EX3˜óÔÕB [‘Ä8S)ηÉW¯µg$•5Êò–ÓIN¸Î1|AÊyŠðÞ¡Ç›‰ã'Œ365ü• Ç\Iæ›=~½l=hbîI¬^Š wsb1gŒwèÆî'n»tÏJ/ný34@å#»¿Ù˜]þÿÑ×OϦ™ÞT@x?èÛµº[_ŒzR[WƒÂh§Êœ‘ÌЈÓQBÅ'žøý2ŸH¿»îG®øç®¹œ\QzˆI.Ç»q†µ mê“}Ãm¶Œœ'Åñ¡ï9˜e‰Åþxíc 8zêFvgéõÂNÍ k³;÷ö«$Ý7}ùÜjÑ»?ìâoßìµòÍ»}1äIùÅštc| ì»b'ýÃD'TξrÛ®ã–ÄCð6ðæÑ!qÒ–ƒZëÿ Çñê¸i&N²åÎ:áûš}€ÍòŽo-n¶›øÎLåäÖ ›öÕÆ7ÀekXy eQÈäÛÜÙõÌ[g~"0 ƒ¡8w Òà¬RÎìY6k5]³T$µ6 ²ÎR™ã¦ÄV¥b|Ô­1CË0káN;>ô]]7 ¬XÍx]~éÔö+ a¬I^Û®%í:ÿ!¬,ßîS*‘ ˜ ‚µ¾¼äY+^ûŽH8&?Ó“+Ü?Â×2qoÿbtÍG‘óõfв¸Ý÷vÖ¢ÔvêU¤Š”¶®?Ãhò=Šß'åÓׂMÆôøÛ1Áv†F¾V;ðú‹û[ø«um›Eåžî•òfb—Ǩc¶’•l [ÏáF<Þk)`/BöáÛJ"ƒ…ÎY?/’+rx[ä¡)ûo¸ ï¥.ù¥µKö{E¸šñêÕ¸Q`î\€˜0U1¸BQ'æi,Чـç­zpÙîè£Á£e›þs]ä æ6·ñçà·JqÚ±°ñ¦Ç«ËÈûŽ\qxv·s#ƹbÖ÷Ùi×–y;Õ±Øì$aáøË_x޶si§[ði…“Gü<íûNó~¥‚Îcjãñ;½²ÛÖµ\lÛ†ÞXÒ«¼ÿϯlñÊb5ò³G'•µšÓ.‡…,ݼƒÄbr^­kOy¶1 ˆ4H©èE€ôÕŠ´ûgŒEÄëÒìßÕ½úÐ6fèÉò¡é ‚Cm} F¹ë´í<†¿1rµJqÔ·,¦«*ÿ bôHéqÞ%:ÑÕ³ÖF«¯b›Ê0xX~¨á#†?ÌľLmrc³ÛNÉœ¦·_9”ÈÁ6ZÅœ­ò­jüö+}EÜœ–nO0Å$m$³ÊRÈcå!9ûVÅ­©­Z™[@hk =¤kXc€‰o®»Úb†"i:{ï¾»ß 'Ç?w]uôúõ½ï_Û¹ný™n^µbí¹ËÎ{Vç–Í™¦9g˜ŽY Ř|Œ‰úfnúfV±aaôÂ,ÌÌßÑ™ºfÿ¢çäuÊa1hÒlV1ÍRÆÇ§ÊæÕŒØ‘;^ØJš›Õ'“ ¼äƒÖæOªï˜6‡:޽MúUÁ}ŒâÂq–I‹sß 1$-ø—í4ºáºãcã8•s`ÈPã½ÈñVr7c^ÉÐÀ0Vå±$Ùûõëa«Ån%,Ö/EyÆÄlR3ÈQÜNÝv1ë¸ÚP){'院)ÝþÌÂïéÿ£®«¿L²¹oCÁjGØ[ý­i¼z2qX#ÖÆì>9Úr_ANB•L¿ÜÒ”Ÿ±ˆHbÕåmpŽ·ÜÁâ›õYåØw^.Öê·ÃÝ™y_Û$f”g'òÅq­ã<Áã=T sˆÎÖ0hD†,Öå nظXâL&ôÜ×nÜ™¥Átlã)mÛþ/ù,³˜K”Éêõð:YæõKÙün>†ío–øá›?ËÛ«³‡-òIõÛ­NËFUêÉ'ÈÌÎÑ„ï-Žqÿ)a–>Ý¢8Äå\5ºÉå‚U¾–¸ý"Ëmò‰ýµAͲâE’ sr½&§,Ÿ9ÖÞ~x°„Göûa±¢{CEË ŒñŘ\ªméâpÓíÜW£ñmý1Î°ÜØ ÕsV±jÈ |Vï«r~ÓÉu»“ÇJ¦JäuŒÏÉðáv¹Hò5©q”’4¬Þ =?ŒOó?=r»õ?±Üùýo¶CséÊó–óújmaþ“ùÔ§_~¶Nÿõ÷ ßí+÷‘ôW5´ÜÙÊ®Ï;vËêõ_å^>Ã?Î,ÿØš=mú£f‹ÿúao„|bý kchýδs¯×gÊÔž½·ó,¼²}ýÿ›ïïî¬3sks8"µ´S`(ò8MÍ !¡Çÿ"ˆ2i:<}wö¦’|qÏ×þë5«V¯XšÝÛ3Ü·`ÞIìÚšK'¿Í$ÓJG$†ÿ¹™?îê`ˆ‹0ˆ°‹7L"ÌÌÍý›¦fÿ’æåÊa_“Q²(cûµ‘æ‡F8<±ñÕgÙÕ_#íÅ Fßq#¯È{‹ã{@®V63žþþU·àLƸ8®ªEÙ›mxëcFÚÅr3;§«ò­L† ¦í{mÆ i7Ý&´MãZ®>ÍÙ«A¶k[ÅÃIدAZ´`pê™í2KÙ;w`ITâ2ž‰R9Íù5[.ÿr6w‚rÿÞbwwîx¬0€ŽsW]ÑÛçX‘Íõ¯2¦5$Õ!Á—²„¡<«±W)žot+ŽÐd±!N/‘Ó-‘g eMñæ|nÐrz½z™šöèìºvZb‡ ¹àN[KóŒM<¸»ƒ4pÝÀlu!!’þ³ž­ÍV„¡¿[‹¸ÜÚµíîQ”6#nå¯/M 3¿LcÓ¸Ë ;;Ñ9ÆNÎ.M ˜ Ϙ*” ªüÏ8¶‡«ò£Aü%ˆ¸“èÓ´¿öI'õƒC‰ÒbÉP»#RëëI,§Ié4í=áþUË׆í9Ý$ÇX %‹/6¹•§…ø¢‹æ’Y3Wj×ÅCÅÑ<³\Ž7sŒXœ¤(g£¸ºìbìÏL'ný3|bO#»¿ìÂïéÿfuÒëÔ÷‘“=d@Ý–+h4dâ²H´5Ò\¡ØòŸBLÀ»äÏÍ¥ïrÞxX~;/ïä_±nç?ä¨Êc²î|a«WŽQ†kV9_ÚÎŒŒeÄq­çbƒÁÆvl+”rÃÓÍåõúð&o†½ÙÝÛ¶©, íûu%Æ­¿ÛùžÛßÛÚ¨^¢ó…­í¥xh–×—d¥îYQº{©ûͱû-ïö¸~æjÓäÈ­Â÷# Qvµ®ó{Ë{àFëµµ× ­qn0#üÛ”ò™;ŽÒHßÀ}{1ŒÀ™àŽ[ûÎŒïÆr³’ -¡€Û úèó^7ŽˆúoñVÆ3v»°ÖŠà¿_³<ƒßú*”ÃãÿOšñOòM4b·|Ìšf>ø_IÊ&Ö  ý´û~?Åõa¿ºÍä_¨ó…SWS›l)íÉy7P%£’WàA#mÉÈܼZ£SÕ·›9ºpj¼¯•Ú(½¬ÜBµ\l™­kZœY<¦ ”çØ°ùü¦ÿZ‡ÔXÜB Àj™JÂERz£?‘QÆ6s"7§4Ó¸†.ÌÐÉUrÿ+Wò)^ôy~[Oû^Ňõ·£í&Ö‡2šfõ“Ô‘ÎöU=7Cóˆï[Û°º6 GÚpI„mÄR‘Z94t_²S“À1þ:`®.vß—Êqí¸ªUâ¾)À†J«YÂí8üVO‘°[F*; fuëÜŸÞõËõf’)jÚ›Ž«=agz®3-NÅJ²kÆÇȯ^—Àº’*K¸÷ñÌâ«(“3± “ø˜‘ÆLEcÃñ÷™’WƒéÈ•„ñÂi%©=Æ‘×|Ï|%×ßÇ=ÍngÕ>½ýª+µºéuGµ¶§h¥×¤üÙÊÆ ã5­Rr#ü§G:ú ˆÛÅÜp:M|:Ä9vœ 9-f7Xmþ(·p´–ª3{®DçfïÛÖÝÊÄbÝ¿ÓÊ m¤Ãg±uý‹´ã"Ì+ùhùDE‡µ‘%¹Õ´ŽÃw`}j5]ã’f#ÒY²C¶Au–§¦ÐF\dõŽÉ¬gõ ¬Ø]“g’Š8l43ügšv£iédq÷ 9idñY ä±™lu‹XÜ•9"¹BÕŠÒÇ)M†h¬I Œ€îíÛ}Ä…ú 1~ˆ$ìN3a0&q!bgešå…UPd—Óžsˆ8–Ë"½*vÙK$2Ñ~§Ñ’e½B]®8DÃr"Fk‰(¦¢£7ÖAĤŸ} :œñÖõ°q\OÉùªÐ߯qöåk8±åÛ\Êņh#6Ž[2æg«.½XŒ„%µ=¸ëÄd#$‚îÌñý(ÝÄí×géãù£y;l-›“·¶wo³,{~œauH]Wõ7¢lƒMEBG º’™×ª7 i$‰âU OATDη®ÂÚr®ú$]òàŸ;nQ"û¹·äiœßÄ›—êÐ@c³Úß°[DÁ+‹™ÄX~8›wØDáfñ‹-ÝÖ'k"PO®føkÝß·f²ÀÎß³ü–Ú´]?íüÏmïü¾Ö'9êàºãî‘W'B»†Cr»m½ïp!òMš&ú<Ö)8%ü+ÜyÔpËf~ jÊþÐåÊ …ŠhH­«Æ¾ÚN‡’©˜¥Ì™áÎÅk\yÇ–sx¶‚fjö1ù"ßv8›!C'NY὎Ÿv«ËG! Õì=9~¦Ðe‹âwVíŒfîÞØÁªÅm€€™œM¥èÁÙÙ–+’zKÎ ¥èMrÕ£r·{±«´¤R{.£kãíØvK2Ìâ½\ñ6Q¸U.»;u€˜ü7¯8­Ÿ4œªÏæñ°bø·”rR<ú6Ý+€ÿ lå‹Äj›¥²òù­êׂôÔ4\Íù\$‹HËݳ­”f=jǹaõ"§Þ¤ õY®Ýÿ:9'®?°Î.,Vcôöc›®žXù“µÒH£òæ&‰DQõšO7ðÁ"9„ôÄøÒz<£C»jä·¹7:‰!¡¸Ä£ß ¢¯|uÏ[Ñ9+Ñ]õ¦ÐVÖ•¢Ò裉%yí"*/_ù'ÑŸ&MZþ¥ôC­|SO•좷‰|xÕ•3åIfwÙh®åü¿×¬WåV+4ݲAE&’h W&yc¼Zh:¼1íî1æ½ã‹Æþ/–ÊM¨g\CdÕ"Íeq21ùDåk‘ÄÚ«’׳‘´}6s<¡ y(ò˜i.bmÀ»Ž­wÄäŒÄLÿ ïH@þÿI„ŒA,OÛ÷ŒãíÈ$afJãÁ4DqÖ;Lû6mëyd§ëÕåÀô$sʳ’‚¨âÁ«úv[RSqÙ©£òQ|Rö41yHêží¨”ÆÆ|°^ûF¡&ÑW'¾éYì®ñ‹†9/ì¸ü塵Ț| ÂòØÙiü….w]Ïâmç˜gf€¶ š–C!O \Aa  «f(ë»'øÔ°ïöhK¦h¥/¿ÒÈí'ßâ)ÀJE°Š§ãŸÁzÿ¿UøãÍ÷κBeÓÐcg+ ¤X—yÛ³3„Åè´zA%x-ÙðÒt¿?±µv¿])ÖžWs8ã„øá4øå4Óçž8ãŽuÏqεÏÝ}Ê8s6ý^9ß;Ú¿êçëŽt¹ªƒ$ÙýŸõªÐÇ1Îw¹TÌÞ€àvc¯6¹¦ä¶°-öý gÀ|ÄììÁÛ?U~¾2领äÎîÌÌ'Œ]ŸìM5€‚ý_/KñýÌôsþûî#æ£I#ÉúS‹æò‰BL!Qøßm½>=é±À§],ààÖ@mÿq*¡ºå¯¾…8¿ÂÙ®Y±•3zÎ/Ç|™ÏÁH]Øk2où>(˜%­lÁZµÈ§±ÔA8Àïl_=ÓÿgE›¿ü]¸âwvûxµP¼Ý;þäBìÞúïô¯îÙ=rþžÖ*àk4Ö5}*ÊÅWO-wAÿ¿_`Oì꽯·]¯¿¹UީɄxÚ|†ª‹ia…ñ¤Á³ÈûYGn7²n»§TžßŸó>£]¡©í¶Æ›FÝWÜ¢°FLO8 n¼2'ßsSƒ²ÒK`˜n¥9à.þîõÜzýŸ¾Ûóמ$/_…9÷¥ý4oÐúà–Fé¡b;ûz!tèZò­°ÆO¾ù×#¡ÔìŠ:ã•”UBH#–äÌmõÎ*ã—‘Ê+ö±{ë`"nÚ8äÇò&Í·k2³»É#kÑü²?“€€Åo£3ëæ½vQëØ ÅYÿwc© 7ú7Êý7úöï[%ß´ôaÝÂŦëˆDÆLaίRº§Ò/×ah¸½Éo®›}´9³¥5=”ï×*§«.‹‹{GÕ…°鬦=¥…üOîùjUµãhÏá10W§C¸qulv‘¶j5¨Fðãª6?R}S¹j´™À¿…sgVÍV¯]µ­[·B˜ZÑ‘OZ¤ˆŽJ÷HìÁ`‹Ù—œÿ<•ç/ωœK·ù¡›ô¸Zz"ì_Aq€Da|ÓRøO(VÑŽ±æH|’ÉA„sAš>¢ñ¹AÏ¡º†Á‚¸È ÊS{\„‡&‡VöíCÈzÎÙ±[dÍg_yÂçžOɹžJþoœxû–j’^É yL^n£JÒäu½†®3aÇ ðÙ·ŒŽ­ÚvlÏ©4Å q}4‘uòT Ž.ý10‡`q]Ñ9ÂnÎ"nBL6 5²˜±9ì=²ÂƒL O\qÛDÖ,ÿsåDtG¡!j-¤½ôŽûOJý¨ßZãò'¾·­kJq¿§Z‰~œY 7(LÌðÝ«b¤½“|v"8‹ôöÝô&ï×mßõoº¿ê›íCh×6¼iäuœî#?EÂGˆ¾¯~¾B»4¬&ñ÷-qg/éÝÀ›ô¿Œé‡˜>O‚<ˆ«j2©G eŒªÚLT709x$-ö†ôŸë‡9sn#ZÞ¶&µEE÷Ç($ª^9ã«k™% ãVš3.€^äBËv>¼Bì‘—îá…˦fvý$þ3°õ9Çð=SjÆØ ²`pgz¼ñÇç<­®Õ‹jÃHÃ+yüÖ5jW"í¬wš"c)N9,£­ü±,šééâ6±[dàW-6a] r¢jqÞº žD:áN;×hÜ?ÓzQ57õÉb’Æ[–ãž$f†xäŠXùµdµ›óŽHäo† 1vvbýÖŸ6©ÅßÙúðÈÕÉ)ÄÚZñdÿ…¸ÈD€Ä»”FÎѲ;;;1«ÏâCëÑ:µ}çÕ–ó¨‰Êjžè‡Ï0¸`ñðyG¿È·š¤Ž Û#ëÇOJÌâ¢pü … s¥5§ÇÑAÛu¾I£äÙ‹¸c?–kAbÔ¹+#x‡*bêÇbÖÅ3¿–·JÞv'ÎTßòú¸ÏÏ7ÓÍMü©7É_·s¢N"ÀÝ}è™8Œ/ßþZGúbôÑ•_ÖGØ´{wÉîa«Ù·Õi…Ùâ>WSÉ[<"ØŒ¼´ô±©-Y%-ºxÏ%RDãøBXtqÜÖ[Rg‚îÒQ±®ð1Ôœ;Ú³8ÛZl~Ï®áîçô쵬eO+ŠÛ±PÚ×nâ¬S×Å‘úzå^Ü7 µŠW!¯Ør˜ògw·f>LpË Åb2óÀnÒ‰‹»~—ß±qòb~ËüÒCÜôŠpzçЖ¥(/! Í@Ú16³Q1=ª‰¢Ííˆås\,Ù¯¹Bù™~>¼ó¾¾î¹çqº<ÝG³û?ëPB3<ò^ä}G3r &¯6MÊm@Yò~†Áy—NìÝ3»sõñ_&wvé†ˆÅØ›¶&–ÀAõ—¥ýÕ¡èyµý#åÅ£=ð2*­«îé€Â8ì…;ÞÖ>¨Ñý=ÒÝ –ùú¬Zmé(F•Kþ)~?„¸Ïïù×.UžY?»­cÏ“D#ú&¹^&hÚCgý•“Ü ›ÌŽ(ß=ÓÿgCÃÓ?ø»PÅï÷fúV½ßMû»3;ößÑßõü­ßºü娴nÅýba«'v‹ÐÚKë½7ØvlÑÛŸKõ®tAõ !$‚=o`.¡|þ˜pÆ9¾8uŽFÚgŽÃ!‘ÛµíF„Ö¼úîηԶ›£Q£nÞ*û¬VCfk1Œ/õ ‰ûyª@Îÿå òÎL=~Óð—»Övé¿ËÛúÇäþPFΟ ¼¯;²å„>Ø2H+É5” (ü:ä IAŸÍ9YׂÚÕØÚ&ç)S)ßzíeÍßGõrÄóêyJùÞ?ãí GÏãì ŒVÁF-¯bÌc¤Ž)b†zϼm{F"bÒ¼§j¶³œâ.! ÕÛ¬˜öœ+VíYˆ›£ˆžc6wgv/¦‚}tÂò?M÷wjº»y)J»ô÷SìºME‰WQۈ׿BÞô%q¾ æ¼^å~–õhW-á¢*)Ãè;‰±£NvêÎ °VÍ›Oš³Ý(¨ÐÜ àÝðc„?3Ñà¡Æœy¾Ø„˜¡}š-†mKh³<“HYÙF}#!nJÒåjiQÖ½°Û„Xèê“‘W|Ww .W-Õgûü/däùàé¾&êÈ ;Yr†úTNµKå}x¥7Ýnà7jÇùƒ€K<¤¯b– -ÛC‹iƒ¬ÚîÎPA9³¹ˆS[¨a¸@ÉyÛt§¸cö\-óó¯âšÒ°dŸ`³fæFG0¡œ®Y–r»ZÔÇj•ègž¥ê“Cr¤óÖž)NíX«œ U~?€›°ø…„?£·ˆ³x»8»1 3‰3;4“˜²®˜DÂ,Ä­`Ö¼ex…ƒFÄ©`¹ ŠÊ–ƒCÓQ˜Í#¾5 ìZTÂw ¸Ç¥QÇ&©}É™œÁ9ˆã ÖvƒNÊÇšÖ²sbò Š’a Š×h\ཋÊcíÅc—Ädk‘VÉb2•nc2UNJ·ªX¯!ÆT¦‚+¼s;±3;»¿b`bìqÈì$f!&víW~åö‡šÚv¡’+¢Œ …:æê ¬"í*Á»Žùë]ÝqXè-éMa͉uß [ó/Œm© e‘í­²Ymu³ ©r¬ŒZ|Íl‹ès[žCl´Bìã¡æ2–,ž9lØJ=7eÈ• …£– _`vðÚcBù'¢ÝXsµQ›ÿÂÏbïÿ534± }ìB`,Ï<^#%• ºúÃˬ|Û·£¨°vkgMè-lA?qÍ©m‹ÈçµÃïF:ŽR‡€ˆ}· Oî.x( ¥–0dÕÆéðç-ä Q¥Åü…a ¶TlÈnÃðT¸3É^å‚Ç4å„kØ9ÆÌ‘|מI¼H+B€uåv£v>LÏb.È}tâÞ}“;»3x³öîÌÝ»²ê5êˆ+¢\ÿCB/‹¥×íôã4%¬ÐÊ뤹S¥Jn°l¼"­\zOirs”ƒ]öYeySŽ&ÿt; Câ ÿêðÇÉdòÜ‹§Ý½OÍÅ‚+ZÞµ–ÏíÑÙv&7¬:ùÏÌ–8ÁÄ‹¯×ÄMü¨­ÎîýÇRÀ‰¨Í4q@ãûy|¬Îþ™Ýû_ÝÙþ‰ü_Ñþ]ê7ÿ$™ÿ~®¸$í/µ¾Þ€û§g¤‡ÿw¢HØt·û ï¾?æ3†Ô¸Ëçùß-¶Sùå_ÝÖ‡°ìÂÁÛXŸøþÇüLr~†Š/©‘ƒ© „¿”Ïžéÿ²¡áú{«µ^ûÿ+}(Þï¦÷ÛôÝúÿUüéׯ¿b,=Öã’º¼pÈÏSX««p=¾SPiãµ·W5–çÁÝþ^U.¨ý †’ì”+}‰Ëd8SñǯÉ[D‘FWîîZÞŸNÕ†Ÿ²uÚZfÝn…\|!Ü^ÃË#˜ÙŒba™á‘>Ýæ§;¿B5æ°B=zêR±\\˜½öõüzoòûõÏ|_«u6%íGú Dõ]w8|‚$]QPÈà/Æ·ôÚäí›U5LJËðè/[Ýœ™ã»;ówÜË$ é•b[×ÉuÞu},²éÜ]ÆØÊ9xã«›Ææ¡Üw\^ÇŽ‚ËZ«KcÀîŽgTÉ•I™¥¥v-v•Üu®¯âç¡x"³±ŸRÀö.Ü3Ü£8Þ½c„Ü|H¡–½xç&ôBó˜þ“bÙá0ê*–wØU£ µéMõe´tšæ‹+Ñkð€L¶¸wDŽÃ&Š˜¯Ç\Ä‘¨´©‰Q<)ÓS­hë&e©GÏ'Ý7=â”×øKjÈé™&Ÿ7ÃÚe|V—‚2–{útú./Y‹°‘“‚ÅÜ„÷¬¡´jrÏö´f’4dñÅâä:B层šù ç>Ôyþ³VÎ þ7¶iy;#o/¦ì4˜¹î4-\rø›ue¯•Öv8``Ž ƒ_¹BüF8ì›äðrÜÄÛ‹b¨LM(ÁdÆ;tÆÃß—Ç “8M ¿nñJ$,îæ°È9§“þH¦¯2x?›þFhS|ìiƒswôTjM%Hè¿Dœ§" z~|¸#RI\)Öj+‘B7F1t±c)<²¦spÖ!é+Öc±ù|M½·‹îߨð4*MØõ»ÑÄ{·Vê{9Ú´¢Š¶wYƒÈwœx±ŒÇñ+Q½vž.ZqÛ8Ì`º! ¦LÌÿMhŸì1;¼S?¿ðÒ»Ÿ§øNÀ‰lg蚺8–©åÛSÃÞG¥Öd‘ØQ6‡ÝqÉ; íI×d]HYC¹Ø8j®AûäP®¹Gxþ Œ¹g¯ÍwAܳt¦6Ž;ø½k3wäñ4îç~ gN0îÖ$’IÂ8«÷<†0³›U–í8]ÆkUã&û‰ÍŸß¯ò¹1;»úffíßÓ{ô°þýI =$7‚_V9FØíéFhkEÇ„ÇèŽ ybFàÕšÍ]kìDw=͸ÂÒA,GH•ø/ƒÄYêç'çûjðÃËdò܉¨Ý»TŠV‰«Ø×uœ®Áµ…Æw#’£`Jx#9㉎/’—×Äìß6çw~›ã©`D½wÛK0EìÅòôîý3¿OÓ‹?ÑÒæ+åÞ£óÊ=µëuÁ!Šk[3„ˆM½ D/Khµ“ ò–>Y¥Ò*¸Ÿ•UÆ¥ÆXØÍó¶ÙiÍ¡=ÐöèúÎ"³&ý?< SøC#× ‡9ÌÍàÈùî›·ÇCãn›··jŸïÓ°µV½Ûõí»qgû;·Ý¿<4úöAÉ 8óÝ\‰´šl¬uåqºšŠ÷¡tó`ÓÍ„2Ojlº¯±W#¾·±¸E-p¿%w…1¯W×ù+n8¾;Ù ›[Ò*Y1y£—_£­nöâ‚Y|˜~¼fŽ!fù\ÏÊ7ŽHûîZp3öÌ! ÖH{NÒ”Õ…Ý›ú×vwýºnžœøZY {r²#ž¯¼cÖË lHHjê^W2L% ºmVl~‹‹T“ùІ’Œí2T-,Hkrê˜Êcó þÃ×ÿxlm º¶S‡t ž›RlŒ˜Ø®6weÚ5sÈÃ$esTÉr_t×1³æ7®â¤Ô¦Ös¶£ò¸I/ÁÈãbKŠÍç …°°L n?0Oàìþ3…XëÌlìÞ"m;M¿A#˜¶­<Õ)”u\_TP¢Þý„qÅ}+“úM¶hÚ"#tó"£,«©ÆVŒþ <#Éá¶ÃkæÂ¯`¨¾²ŒåßiÚ¹Sˆm£Žù Y¸ðg¯eøË‰âÛX+sI3QÆr­¡ÕÞ¹›°å#מܹM{;l-¾µ²ì2cïËUd‘á·QšÛ±?ÇrI.Œ¢ÌÞgR{O#Mzòa`–!qù¡‰Œ¯œ^!„4¦Ã ‹Çb h©Ò©3EÙXRW®K¥ni@øS¤ÑI>»åu¾Oï|ñεç|¾o3Ÿ¸Yö_'›È°ì½ûY+† Dljä³NBÄfL.nÌFNÍÙ;½Ú8ãˆ|"Œ#¿Œ` =únüE™¾ÌÍöý™dYl]Ó˜EWd4œ¦ {±üÔäÑ~sYöqNJœ¥l÷Bˆè§GtÓm èªvÄxYRŠp±à±çäNfíeÀ¬W>iÛxÍ÷±chjü©VîS¨íxÃÖ©6ù©T†6Š"+SЇwÖhÆÃ[WØrUgÆT‚*z®Ç¬T{u®À:²Bg=3'9kHäÕg'~È¿KÖ˜ÝÊxAØÉܧ†rñqÎê‹Â1hªíQ½æhEAIÝC7HVéäK’ 1]:Bl“Ë Äcv$5Éþ &è3g$æ÷0Ç·-¨…<˜Ù£±jYƒuí×sZ×s/QO-Fšh`·‰ÎÓ†x+¬g*ãvSMÞÆÅ^ÍIìV¯j9܃¢†xÙžZÒô3GÛ»1tÎã$DììDG ; »±3Lù‚©)„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&cs)|f½ˆJçÓG#ÐèW÷‘º!ä/DH-ètÑúU&—Åž'3=çL1°€ëDtÅXÌ.¹Ðó 15ˆj`”©=Ã$EWŸ(~ñ·¤½ûGúì"/rH}°ó3h«"uUÑpXÅž|׿Yž÷¦k«ì`^­4öXHtæ˜Ä.  ŠŠrEuúù ˜KyÚT_ǗȲBÄ¢€GJê_•#߇´öª®n‹ûÌ¡eÍÃršÉ*Ч'åIå$„b!2Q_¢.7÷Gå‚ÏþÈùÈ~iý”½ý_=µåšYE¾Þ8ÝoHÐaE¶˜è'Ú‹««ßîUREuÂ+­².J¾xù$œ­ûÈÔ"ªbzï¶o&ø¾(t‡i""2SX^µEÉÇKo‚ŠxZÞçh¯}VÏGüDض”A¨ØÈ¯»%\Lð‘ŒÞž‹šçkŸ†îù\ˆ5íXùm?7©ÜZ@ª|uÓÅt\YÚ4åÀn£7¿6LMØŠÔP¿¾(€1F¦oòdJðwal:ÁyÁt>7K $Lí7}—o²eÌ!9t@­ÎŽá°ªà"I«wjô2d[Zù°!›ÂE1ƒÑ1Kpã ?  ‚)ó­ršIqÂ|s­kžu­}0‹—„L"a7/‡Ågñ§xtÞ:Í,Š¿‹úo1çöñ\GåTÈO‚‚-5QS¤ E†WíÒ¢–‚ÚD ’¼]0¹¼Æ¹•¥œÀdïa³é~z9,m™j\«+FEðH-$G$2‡~C$Ê'†ÒH㘠9@dŒÛ¢!&ï¶íŸ¶ôìÎÏ÷gfvéÙUwR®,6{{Uƒéª!¬e×M«öæ~¬Â %;H&^ÜŽÙÞŒ‹(¢HŽ8®‡‹v1oò+۵УªBÅvý8´ž^·{75®(ä;rÇd­ü8.'Úçšq±|j×ú~0ˈË,ÔëK¡ä[Ä–Š4ÎlżžÍršõAgî[Ð37lÁäþWcïÓ1;Zø­yumô5£o°5JiÏ=ôDeã¬Ý,µnºª9u-‘j4G¹úQÙbArVC€vbd('qÏ ÞØ]÷Ü<çj:NJæ#x䦋-Iþ;8m?CÛò™zsÄpÚûý^,¦X«(_¯f–Bü6)K^x V°,=¢¹=+Sî2ö2Xµ\#&÷ß‹Õ+¤îÄÞ.ÄìLìýt² …ì)ç[¹œ*4÷úœ$Ò,JËô]q×Û·y•0ó€ÂŸ:Q&í+sCò(™e¤ªhvÞU·ê8KñÆ8¾PÝ ¾b;“fu^7‰‰»jÀøˆ°œ£,Ñ“¸•— ‚¬ž"PÂ`R ˆ{õ’>ÝΕfõдsÜýOò<”™Ÿþå~îÏ×OùþÂOÞyãST^ïc,²«¹ÇâhTÕ|ym«­ñÈnpšÈ ]¸t÷ÖO›XÇ/ÉßKêB©‹ÐÜÿxºå'×øƒ1òÆL–fMËmɃ±<Öêgö»uëR“3ÊO§ÃWÄX"§Í+é&/ö¹ fÎîäµxûý„¢€l·íþ!ËßnOë¯Þ¼ƒç‚ÿõtkgH"*jû™Ï½ È\·$‰ÐÞR› @®o‚Ò è¾»+jl…S®¯Í|™—ä»i¿!Í$ßÝÖ\ãGœ¬Å3Y~?ÄkOd$‰þŠw’?…†ŒDYùu7ÿi Øé™›êåšç^/ÛuõRMÓ³ûíº~û~ûwYS¯œhÇ8_0*ø„j03Šlã@ÚP¯"ò14®›åÇØ>£ïÉ{^×[¶©\YŦ@Ø¢ªvŠS¿ºÏO”9¦uöI6ÜÞW--Y1÷eØ®I³VËâçpúœ6w°>KÂ[hÀnaòõ®ãmˆØ«#õP©T(¾‚0‰ŒZ!hH »ñ’3‹Àâ{#!1íú&íFOl9k@^6u8šÊò×è6¶-õ,‚÷+Úú%oÐÃ7¡Ê<«zÂ[‹$?E—gB«F–g’Œ´µÝ[“û³ W«©ïöøÖæC¬>Åg 'ãLÖVËÍõÖdspãÜý¹òç+C§žÚ®db×q>ié~›NSÖíün2ýšäq^"ß{q G×oǺê÷B8¶œê9­«LÎÓ­7ˆ×ÏÓ£ZHëM+µ µ[8üî ì¡{–ÄåB½È­÷ ‹¸ ›0Öœ]Þ ~¢8,DNÞÞ""géÙ¿\d'¢Þ2Ç v/]#^û/lw ‹d6¤˜CC=VPöƒ=g”âìƒ#óÜÁ¡²½­,gGo¥ìW ºVb˜0»Ik°6~Wðå.É3d4œ–±«Z3ž\çíü‰©d·}JÔ¤È_Èc¨a.ÛÙv½jh¥³+G¬VÛ°ÕÆh²XL,]ÍžÌ Ë´-ãd&œY™¢»^¥€­;‘°J# ; w9A#ôá Œ iUµ¯‡ŽÒ#åy#){è.m×lÔиç¦:J ÐçSÏþŠ¯Ñ ö êr¬L]øzW]-Çië­DÑ›5Ëø»ðõÇ_CÓw,îQܤ1•¤¯»c¸ÇEŒ¢á™™åó`ê2êàö-“³G1}•«â³;tõŽé¿oëÜm×]ûeã÷å*{RÞôl¶ µ®\f®œœÑ''û!\æÍм"§ón€TeÎæâHKn-H{r)—]•Û’ˆ¨’¾Håà-/y«}°¿»Ú·jÄÏ“«KâêmõŒÔ£=|5>Y·8ž@nIfPÚ(“04p—Èo<_¢Àžw‘¹—ð©“ѢشàÔ1µ¾™Ê?¥7’S“Dþ:émÚiš&Áʹ|¦ZÎ77™¿€‡§áèMCiä+±²ãˆ¯±×«g¬|÷Ã+žØìÇ´ €=.uä?>žGç—BÝm]p·éaÙ—óH &—(ð£S-×1ž´4õιÒÜÿšÑS¾Ÿ¹×KïÑíÍ\“Z/ §§¹G,ü}¬êœsrÌdnd7/èxMvíÖ~üêìMüž«ÿ°f¾)þ]LŸ¹"+ûfµ4öÄ]¿á RL#ýK7¿kŽùå*È.šiFƯ:XQ`:nŒL*8Ì~8\®¹¼D'°†ð‹ÙÙ”ZÄDä"h–•œžà/ÐYªÂK©C˜¶Ë w¾[¹ÉÚÎ^ËZËa7L¶K)dnñ:¢4¦Œ|c–´` ãÛ¿Ç4LÍðöîï·bäG Å+´È„^ŽÍòfª¢ÿŽ…ZZN½($Q鸢N¨®EFåNú^°–œšJ(\4{sp§¦ÁfMu5aC˜U°œ)çøú•œUÍÇŽ2síZF³,Å®Œ¸³G¶á«‘ŒLs˜Ô­»á>£Z¼gHr/­fò!­Væ+d2 {€ÐX/Q“;½k.ß¼?]HìÞOZN¦bpù¢™ì®jµ90‰„L"¢×‘S3rŸB½ LùÆñyÚ*¿G'Òø«E}vúC&ܱ)é™ÝÆD«j³áê¶Y¬ÂŠÊ'Ì ÍË×o^ƒãø·mÇW\Ïq¦óÊGÌ1ÙMs ˜»²èPüò•™ôÝ’©UÆ©'Ÿ%©fÂÞ©zYoÏlÁj=š…¦ÛÖ¯)MÊ´­—^a4‘Œ6Ÿ¦ñk¹ ø³0OŒàÌ,ï,Bð—½ù ª&ʉ.ppÎV‘ú¢È™‡-lk8Ã¥µšÛ·™×}æØ²ròä¥DwfBÀe‚È9¥#eü4î8›1wI±¥Gb½i¶¬–ã«à¦ÂÚ·^źøm¯TµšŸhÁlÍ K`XXq¹Q¿=+Ç­ßØqµŸ$|C™¯/Q¼vZó“@敤v’ Æ6†X{!þc˜8± Lø4É«fõ~ìTb>Y“2moÏÒÎ7]§WAÙ“GŽ~£vžê—›þK¾Ëúó½dTÆç{Ñœ ·=!¬ôÞ=Ç Òf¹{`øØ+hz†Ý°^3'êQ/ã i†@q'“æyT!¢ôŒýoʢźÇ9`i ŠbÅ_k.¦¥1V§t‰rNê^ÈÞÍk˜Å¯EÊ!ÈPVÃóeÌîÉ-Xж’ÂĹmû\je #r(÷­b6Áñ‹•³˜Èâ®ÚÞË‹¡¼^—Ñ}#”˜ÑŠ'g–ŸMY¾ýx ½iß¾þHÅâ7wù¡3q–9Š«»"6¶ÞZæ!aD¹™õO7vk »+~’ pN±÷5„=ìò$ç#¯eý6¹)•¾"Þbˆa~…šÓÚÙ䣚ֳOaõÍÇ4—µ‚:®P4®É {òUBjòdõÜÍL^Ë…UG5‡Ç˜I5íGcÈYŠ9£ëæ¯+0Í—}y ;±tìÆG ž%ñÈlÏÔÁ˜J’˜DÂ.1¡ämÎ" {yã.Àš‚Ehe%ÚX«ð¢ŒJ vŠè-Çi,—}¦§qÖõº°O=YáµVikY­,s×±‡ ðO ´‘M ±É±H"qÈ&,BLLθvbgfqvvvvgggnŸÓ³·§gôìµë6—DüJf“†[5¦ªäÿ–òÅ‘l×Wøp ™k–é%" Ò" Êì±é›ìzñ´ØYPG›úhyô¶ ™ç¸óºnÖûiyü|½«i»6ÃÎY’R†?ïK­ã2rÝšKAðI¼ët$ÙŽÃÛŸdÃnÙ;-vžY#Å¿QXƒàõÝ ìCÄ,Ý¿ÑI1ƒ 0¿mZbhX|Z+ø”…÷ÇŸ­¶ ¿SèÜ–¿<“báÁüùvž›{ÿ_§²£/’sà°8Ì…±#Ç%ÕºK.gèûLÅTÐËŠªøÖÅøsä3$ØíØô}9Ê#·û%hUŽÎ5¾v‹-C_aµ±eq¶Î´±SµŠÂÝk‰@òÇ(GZ,½;çY¬ØöÂí;DÌ~»‘â@ʼnœ„äföþ»9µïgâ+å™$­ôWåt»-j®ô‘Kò  ÊT/~…’©ÑÝïI$‘±Våëë³9ZÌmôî<ÇDsf9{’n¡ð©¡iû~w#ægã(Ì;­4Å WÖgbÐÈÞ yÕo¨¶nÍ¿ejÅxƒ¦oNßLw ü¾ÌÏõûô¿Ø2º[·7T¢óÐÿúb1û7ÐE¬Ÿë£5Ä…Yš‡m—²ö"ÅÒIüã‘ÚŠòŸg—„±±° .RÜæv—»rdµ>6†2ùeø{Æ/•%° BÓæ*ÈRürF"\u’7ïÊvõúX'¸ïé»ýntYŸ¾úŒ½uÛ?µóꈱŸ9¿ªn÷.DŽ™`íÕc;µÖß\í°øõhE¬Àã}EAÛ ›ÏÞ¡*©|а½›õŒ|²ˆ4 ¤P¿°YÝ6ÌqŒ:«¯“Ú£ÓòG,¿Í“çÓ‚ñ†°ÂóϤœÙš\…¢ûù C^¸oþë„`›Óuc¿»»»õÖg||y*Á®ÊÑÞéÈAP%ƒ¹-K~Ú!—®]!ŽV4öNå·þÊä5I!E°¿4šª‡78Œg}¯ÕJœçÊ8™ ŸZÙbÒ,×‘å œu¯kotÍݼ¾¦î‡…×mÜhÌ-Í8,И¼LÀ¸,e)Úh^Ë;uãnY­‹ð™%þ¬âÌìþÛßµ¯Ès_ ~GîÞ?K&ßÛÆwˆk¿õwy™™¾îÝ·E­»Ýç] òœ­ ï´ÏÆmÕjÔpxº%Ðz ­ŸSI=+Ix\¥:Ú°~ ÷ÂÁíUÓO]CLãÊ.Òæù‡ v¿pùWÐôýÓ`Ë Îó³Wܱ\k‡3€£„ƒ>ñNóùÌ‘9ì[/Qcä÷îÕŠÑG뮽×;’tý¿þ˶ëÛ{_¿ÕõäN×éëÎU2¬–¸jJ7eú’Òz䎵$VOæÄ+µ5Ò£ýÑdç®Q[‚ÿJ­×æá\h mC”7) Êáåu^7Š9|âoÊÇÊrYˆG —¬Õ9$vs‡Í€9ë"nïåJ»vÝ„÷Û¯¯ä¤Âýý¿–Lßgï®ßáÝb>#öM=Wy¸¢R&¦èÇ Ÿ­#êôWׄzirÕýÚŒœ€‡úEÚ6¡íu$‚—ë‘8 ò&³“ËÃü}Tâ8 ¥üõÛkÉCÑ]«”ÛPÈ=‰=ÌÒjDшE1³ÌSqô“u.BÙwßÄÕ ïíâAÎ>-öêw~ûwwõ×{ó=Aœ³ÙC6L¤3¸âÂÆdÖ5·nÚî1qe",„h¾ìùÔ½ÚãˆÆ¢Æˆ ª‚zG|é=õÎíÙnVÝsýíV[x‚¨â ­ß "œ¢È©eÐØúЍ¢â¦š|;<‰×}öHüqη×K£Î¶§$Z#ÕõOºj‡¿ÑÈœ½;Wz›Á¶ç¦©‚bòFé¿”"þ8oɹôMœWjv÷Ⲋðþ¸Îd2†’bH»ïònÔÿuõåh1z’˜›I<™íø`¨ƒôýF ZqœÇD^Qª½#'¡ãˆ¥Ì]­‰C!óOÁ!gቻP9¬)M¡d]E3ï‡8õ·ò/½"qo5úÂeɨԮ¤8ùË×C³t0î~j¾~å¨XDÈ( –ûb%ëñÚŸ°(ŒÀÂ-˜a˜DÂ&0‰„L"a«TÆŠui”9Úž~n¬ìwrºsšÆÏbª+¬®PM õfF[úD†™šâ;p4?õgm‰ˆÊ”¬k.¾'j`ùÜEMC’1Ö¶­^”MW”¯`!Ýt8^B‘›TËYi"¹‚Ži$³gFÍüÚõ²šùáåÕs™9öX ËP†B±LÆ Éü¥nëZ~ºþ|cÓŒ½33Y‹©G¡ix¡|б¼Ùç/E×Ò¦7¶êdjþ^CSJÉ WU!•—ÀßAï¦[2¹XÂHi”YU´Ö±à±Nš!ä¡í–ͳ®ëô!Ùpù »v‡~çÑc7,úçvjw-ãíÕ¿BÕš7èÙ‚å+´ç–µºvëJ3VµVÌ$W³^` `ž# b”HÈLYÚ©˜± 3‰ 3“tâLý³³³»;;;;?Nª‡P+/Íü¤]¶m(/C¦Ìp‰„ ³ž¶ŸDùæ] t·lMHõƸ¤'' Àƒj(‰YM @²“n&ص^Qsƒ±§¾LÒnM‚´¥…Øí»1Œ\—…ÆÔ±kó ’1yoúýi2RZ3›lÁlv/ØØñ6ÿ†z^ê³ÏUºg¦äß$#öL>Ý…•Ø}A,, š0ùÝBtÐðC×½(ÊRðÓÖ-¢XÍ/‰ÉâáI9‰IX\Èt¥©’K31ê#=ea‘´$ji½}¤ŸŠ?¼}žÓþ…¶ hÒÈh¦§b9‚ý²SPÊà³8Éíásxk‘LéåqÖící •;s8HÁö¿û¹ÇyÚôµeñ¹|”µ\hV Ëã$ÄäÝKR9C%ŒÕ+7Ѽ¬òZ†;•âŽIroððEuˆÙ6jmº4Ê7º‰®:x—HÆrKô/ZO¿ÖF†_¡ú'¤X~T!>Ë]5qÃåF–¦K&Ñx³ˆÈœO¯–Ý‘•¼½;zÑ 8ù; dÎnÅxþØ<ùÐØ4½ î¼ÆpbnÁI]ɱÚöjFö‚s›/›¹4C3@2KĘ׈ÃÓ>zQ|IQÄö㨪®Pîе+zß‚SáQ»žÎ#þHIE{A5êBèÝ¥SítÔGŽÓß\ô¯§Î÷ß=kYF¹£î»ƒÈ:–Ÿ´m%JÚæ¿–ͼF 2HØÊ–œc!2éØIÛÅÙÞ„ÖkWëç±ûošXãíúgo2»³·üÙASKûÍÖ|Mö0|zkzÓ(#ƒyòå·¡†6t1I†Â%^>Àûs΂!°þdÂé¼þGqEÄ.ƒèÁ¶ Ž9KRÌã²Õ²x=ÎÕ(g‚]ƒ’´m+?‚ÛK Og ™Ù±ûÔ’±ºï‰—êk¼µd­;NÐK[”¬Fq¸Kn'퉢§fÄFãÓô2Ç CäÏÓ‹üÓôLM×m^›nWÑü›G›¯+އIaÔc‘ÛrˆWý^ÏÚȤOœÀå÷…ÍzÛUU„-Z§«ñ¬í"ðÎèè£ûfʵ¤ðæüUŠï(ñþ‘Èg£‘Æi˜œñi[má "ǾńÐ4n=Î[0šÜŽmزòQŸE©P1¶á5œ…^ühÛ³S¶ð;DÖk‡lÏçñIjÕ¸‡¿OôÿX,?­¬‘yŠˆJý5nÇÛ&pé?•!Q –5Þ?Ý“éöÙý/´)Ü|º;w<~%¶x¼ð¨Æò«Wj𨊖¦²Íáø£KÉZÁæñ<ÁžÍPž82T²C«q5¬lI4'JZÜ·-§/8þšbžˆK…Æ ‚›—¬K˜ø£&wžówÓ?“o³ù7Dìÿ§¿]¬‡šNÛvGž¥ž³·¹!uíŶ»‡Ñh©&Šé¨#o.õdêÁi•VL…–JÊ!Ë…1œG£‘6Úûî™JGl7 iObmVÖÍ›äƒ,G Öž–߯kWdˆ¢-V*¤3JRÖ–F®pwú[ßÌÈYíúòc«}{ô>PK0³÷Û»Nåéº&nÙþ{òâ˜ÉMç6Â’*¶Ýý¹pFSŽ“íbŠƒØ³yKšª\(g"ÆE]kø0ÒDdû75oõŠSÀÛ×ôÙ$”ä Z&“¦i9ZâLbðk ^Ãñ@AË––PwyJRœÎR~]TºiF[ ÌÌãjÍ‹ ÿÕÞ)¥8{ߨٟí×LÌÒô«¬+‰µ® uè†)Ò¥‹ˆG¢c¯ZO](J Íé.§ZI-uÚ¼õÖô’]ïìçé…l~Ù¶KÛNѱl³@,ͰfòY™aòv¤ÈÙ²q‹9›°ƒ³7™tß©û‘x gh †»EFÏÿ6nþÍ÷\{.ªƒ[¬#Çç,ê‹s˜ÏÑçv×'Hì®!$ 5ÑQ ˜GÌl“äÁ QbŽûumrÐ&žÜ¡ 78)5MÃ`Òò2dµû£^KU%Çd©Z«S'‡ÍâìgcžÂd ·‰Íâ§’e—”§j«Ø‚½¡ˆlÖ¯4IëÅd%vc ’3nÙ¤Š@q’)ÙŒK§!ïÄž þâØžtï†ëÔמO¥t¤‚imÞ ßáÑ‘xúHñ´þûª üšm‘ªÚÙ÷(‘ì?ág“Ø­qìuܘÇعjZ[‚fù%ã¾JKObBbvÐö,”»ÈðWÕ²û}»ß”bâ|ÓRèm¹MY»êë±Dß³]Œ™™½Š„.»yã®#ò±Ð܃Ÿ±oD0Hퟯ¥õ‘ÍÏk p™Ë£½k/L;šÇÝš[RP]Á§êœ«¢•º™J:~'ŸjQm7+mú~µG9FyàŸ'©ì&l¯f€K9cóúýJ[N¬ÙJ•ËF@±=>$bIaòxlѯbbŒºv â†HÙ¼¢”Š š#y ¡%­{CÒ›ß~h¨¸ãói.t¥è¾ˆûãCö§_—ËzóÊŠ,Ÿ<ú‹©Â<*jht¹»¾ƈþžUݼßÏQ㋸Éäo\yþ9\D Þ¿Í‘@FÑÇ7þÒ7tk7¾½XºïíºïÝ»nûo}?MÛýßëºjÜ{ûV—z¢ÍE ésYjè]=ŠÑãŽZÐþ¤€ÙV;r<¯ùÙ YÈ:oý”y7„ø_Dôþ9Òèwˆ5IDk´p_Û³»¾Å˜ŠÃ»Ü“ò½‹UÕíÇãW±©ÉQŸÌÞ¹GñsôÖý¥ùÛ·íÆ¼U¡®¿ÊÞpÏ8·~ûiؾÍßß¾7^A¢ÜSM£4ÖÙCö‚ì÷m½nÝ1Sv·_yJ“³ç¨7ä/¿§Kð„mµÇ) ‚ˆ8ãU¹¯j‘I‚½ÓgyHïhZV•¢f ðo‚-ƒR×ðûŒ#ê2“)$®NrÉ!Ï,²Ÿ—T/RŒ¶®œmY³j7ïîïòɿߠfû33334¹ªjêÅÆ­«h z9])Ù(AáÑØš$v®ÑÚ½.“ p-Ò»}©Òœõ¾ö:?v÷ø“ûp¼þá·m‡»NÓ±ì²BÂ1IŸÍäó'‡ÉàÑžFÕ’–_f’Nºó.äE^;h †»EGßÛïà-ßÙ¿ý`¶Mß,£eÁ$Õcp6ƒeGÛÅpJBÐßÙkµbdª+mŸ_ðA¦ïLn…7H£Ü¸º[Ì«ù9º’!êÜ…g Œ=WaÆÃ¸èV¬ÉjÆ«’³-cÆÝ°ÐÇg9§æb ­j[!E ù pÚÆdžµ:ÛNdÄ×üªJSÔ §ˆÞ½¡œŸÌ[·h¬Fý ðöïú Äòx%†Gón¢ {œ¡®¦¼ØD«­÷/ØB5ø êÊáÐìâÜ)Ù™£…Ë£š`¢cƒ½`þ“]µåǦ'èHOžæl<{ âmî\}‘›mÒjüRe|àŽ¾×¤ýLí^Û¾ gz• ÁÁZ–Û;šžV[Tk6CŸ³c\¡Ö+nÒ {@ÐY.Ø:wx,ôݻ֕ټ‹®Ü 6Á„‹Àâf˜ì~jõ50‰„U×1:u‹ÇïßCMh8È’AžxV깯’Ý&]&š¢sxVóÚâlá+µ¿æÚ% Û$Žû•ßÛöo$×´Ý¿n’huMWdÙå®.v"×°yLÔ‘Á«d¢Ôäl,Ãí߯jŒ¶+ÀÌóÏ ,þ™å”#g·MæCß¿èµ ßœ+#;¸[_ V†Í(SùÇ‹+Î…G=]êúÁËòò¹äÉ­$Y­dê»Å鱮 ŠðŠO:ý¾(¤~JÎCÙcz¬î†¡¦òþ¥^XcÆ>Ù¾hºW&qôW Id¹«PÚsô69pñ”Ç%¥å0÷0’S¥?‘ƒa†Õ,ÕÞC±–GÙÜþ ¶lÓ¶ãÓ0ÎPDQ4ÓX `ff'– xžôyÏä¥ëÒ¯²z‹Êv]KêJÀé- è)åe[åñ-ë™@>K'öEVaIœR܈ÔÄCeˆ£´Æ(¤\›õö_¸Û “½󞵞ÄW’f«.«§ïw³Ö#c€fÇg°šÎ·“bø¬ =Ó%B+! ÕÉ_¨Ñ]šX[¹ ¶2h¤vo&žÅQ‰»ÿ7G³Ììßvò®í×`%ص´Öý‹"ß^<ÑOi1û÷¥m/Il³ö§=+ökñyOMâr–ûA?®ÜÖíNy+¯ÇÏ{ 8p†1‹õr®îå1xþG‹Zì.Áäþ|Ãõ39°È]5HÄ]áo'˜»ÚGÿ¸Ön›ÿx»Ùwïÿíý7^›üÏß¿ô_¿ìµ¸÷ùÕ™z®ÑOf¾Êb«á´õ}Ð?…>6ÜÞ£äij[yím*·giéÓt’c˜>“S¥øþ;Òè|aƒáýHš|aÈm¹ÍßeÌ=2/ª²8ýXÕ-8ƒ€ iu£~Œå‚W!hßK`ûùrû~Ü Š´1õ×ùYΧ}¿“Xòû3;{í¯%RÅð‚2±lk,D¹ó³Û—}ÕkÅ…Êý—-ƒ`H Ä,ºå-ûMð2ƒmíË`a9ù›{„¤<<ÚÆ«1¼¿í/@ÐôìÅhåŽ8¾*Ûµ­ã6‚8âã/ÍQ•ŽÓÈöæžy_—U~šFšvn»­XÝß·ŠiŽ'ww~ÿG]~ž¼Y™¥(%ITÕÉ…eX×µÒ&ô§f#…Æâ)ÚÊr²Ýœ}µ¿…úU^8UN•×{íN9ï­ï®u½bç¸mÇ›^Ù²ìçÀ{w)š8DÀ"ÉZ²ñ° ‹“‹tÎì¤E^¼´C ?}´Q}öý¿~=öþß¿ÝHY*É„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&y¡}ðÅy*ùÐ~®ýc\Å®oïŠ_GIϯý6ñ“ÄjÑSö¿™UjŒR­0*ö¸âÙX”Jbò£¥Ž ‹S+¾çK;´„zDR…ùY|–øÄèè°_ß?ÇË8ŽCI¦PÚf«ô/¿|àÒGHô ƒ¯V„FhŸ¦*Xj•Ú²Àáò¯AFÚ‰Go°›µ¢ßQ"Ý bWÖµ9\OjÛp æ ûfíŠàÖ.ñ» 0ÃI¼¹+™p¶¦²r…%i#{$z8SöÜ[ްèOâC"–ð‰„L"a˜DÂ&0Š8³*x=´Ð\É©E‰e?OQ93I¥°Í Ò.TTd°Y{J¢?Ä߸‚AUÁ˜á{pi1Á׃ØÝÛKÊ5MË`Ó.ÏspcŠýg£˜ÄݯG°c @”ñ[èMÌãŠhâ°¯W™«\‚¶B™WÈT©j ׊À°Ê=¸¿”r ¸KôìÒE ôq›3»y ·bîØ Ñ©"^‚ªŸßô_§í ©ÒýµñXC(˜ÓTeµnúån} ƒµ?+p¯^Ðð¥ÕÕ qTïO/l”’úµ‘èQñ¶áŽ¡7ñ6£>ý}N_6Üï!ånemF"àü]%=ÛWe¡$ß!¶‡ž«“Ý¢g¥G}ò—"µÖW3k·¬5Wý1Û‚:‘Œbÿûëi f龪" ÎþFaUþ1{)Ç•é§à‡RF]›f·Êgö<þûºg‘GŽˆnX.ORõ`í5}ðˆ¡›?æz\Që®{Ö¬._ÞqÓÊ8¸u=RÌ.UÆ]oŽ´Mw1E¢´½pÎPÖëì‚pØ‚6),ee·ü¦Ži™ÙNü¾±³y¼ó‹ô]MnÔ±“¸»y|E3ÃÓ³¿¡nì̤˜%#LUË®MeQVÑ$¦šD‘€Å"+’\všI®¬}¥½ESM5M>ë®xáNùçZ箵¼[aß·­º8áÚ÷M·gŠ"#Š-‡cÌf£ŒÌ„Œã •Ë"d"DBÌäB.îîÌí^*µ`~à­.íÓ¼PÇ»7Ù»JOÌIWL"†-JB5f’×&Éæ¾µ#®4&áƒô3¸ÀĬ™E²ª³€.,òØC¡HKõw5jÁÞÊ½ÐÆ?çZÝÚó­CÊê‘[ÅKVŽÉ¨e¥Ž\ö“°5›öZX£(a¾Ö±Vî?N%‹³`nc6 Íf¤Ëîä)[‹b¨NâlE ˆÙÚ+1x´Ñ³¿n=É?NpÊ';18yˆà‘ëºK2Vþ—–-!sEŠ pÇ%º”¶J#‘Z˜ÆéÙÑÙÊ©³Ýûé/Ö«&nîƒ>JaVV˜`’£ùOAÅlXÛûOX¿—ÆcjGaÒr’Eg|ÓiÃËs!+R©N®á©Ò7›nÁR©.>8Ž}¯[Õ ›6JZ8L`¼!™xCd;j¶ ß¡ò"*ó—®«ÊDÆïÔNìl‹5"ž°©½“]VmÜ”„ùJërä¤xQ­ânóNÖ±åzénSß.Á<Ù§Ú œñÆöºš"­\ŸÅÎõÀ½­¾Rë»qî«FO÷0èU^q·KGxÚr@Ì}Ò±GS¯©d‰š1xöèâóvr˜AœÛ«œ›¸±ö‹¶ìJR­?¾¿Sï8u÷÷]ßú2¥^³ð•¡í€Õc hÝÛÛ”ê2¶®s¬&¦v× Û¢ö\H÷—äÌBðôîÜλ¼êA Éä¸#Ôt©Ê d£Ÿà×Ó/qþëS’9ŸGÈ©`Õ3õÞ1}G1mþ3Ùtž¦s”2x<ËD1Ír*tiá6CŽ­³œ¡B°,ÿ‹yG“8cyÇr'æéê{^8Z¾Ôëgkä(<õíKÉãrt‚ªsMVbqúº‡YÇÚ§hB`Š<)å<ÂÄÛç)­Õdùòæ~Ž7µ¹6ÖW|Õw÷Q….sRNí¨]³&9ïvs}‡4=V¨‡E¹¼—Yþ‘˜8u©£ñ7jãán,Àoz=!¶o`Þö-÷1¾ëÙ8¢jÐÁ¿ëšæÏ¨kx¨oÝŠ¾O€ÉéY©¦†… ÈdG'®ÐÊùëñÊŸ‰-ÚÖËÊ;g`r{ ­s‰Â`°ø¬./5k¯‹ÅÏ^Œ¹;ðQ‚•!“7”Éæ£¯R3µrÉ‘\ŸešòePzhñ3q·,Ýib0;*ö¸å‘‡eIQ^ºÛ¥v\Ý:È„RE^„N!h†ˆ¿r\õ\ž×Ç™wÆe‚«¥êŽápO«qî†ËR„¾g‡[\Ff 4³>tç’nŒ¥ê8†=+ù}rfiJÌþÝݧ·f@.ßýè^VÙ›Ó7ÅÓ7®½¿r\”¦ªÅ‰"°©+*àƒQLsÀ¢±‹AoH J±æ¦î×E-ozM5zïŽ5½ý¼ë똦žo;xEÙ¹í{DpË{Ř̈́2Iþy" •Ë#ŸMæ`ÂE×·u^*µ«»¼à…ݺwŠãwfû3¸öÍý›˜¢®˜EYe´kônD÷gùÉå’¿Ÿ¾ž³ÜÚú1ŠSW3Ÿhé2 ›³4k÷âÇÒ@^.X`ËIRÚ ªÎ#–«lC6¾1ÙLe O“èßÙ5Ì}xè`3øù`çE¨29Gõ×ú|Ö»XŽI‹FÎÊ£i-¿”Óò YµJ†SÒ!†cw9b6¦´NÞÞPqÌ]3}TLò7Cò…€eu]äÉb¸ |cy¬îërN2êŽe±‘¶ƒÒƒ¹iȉa°à$Pã=…žìÅÉ‹ðÄùÓ¼WhËe›oãûúÅjùÜ}ú;^‘“´up»¦ ¦,]«2Jؼ­[Å‘Öv8àŠIlk¹êÔòeÇŽG 5<µº•íÄñ”@X¤¯/^bݳy3¸M »³4±oà~1F3~`*RÂgeqX·¢ídØŠõ¨Ž—äw9Ä­†&Þ¿C'ʤò‰¯Ç·Œ¯C¥×*/®ëi'×=©®yÞ·—ýTÚ6Ë'OVÖóû-Èš7–¦¿‡ÈælÆÒ“„Npc«Y”CgܘɜG·geJYà˜§š(Eûè¥#gëÛôæâÏÓ{è¢}wA·)Då’ =.ºç¹Ru}¯z±¥®†Ñ|vL‚œ„NXÅG´wÇØ¹.)#ÒÊ 7*l•ÑILÔ¸[‘«Æç™Ãcu#fwj»îÛ§qî@ú—áq‹¼gõü„ÆÆÅÜqU3` %qh£3ߘÓ'ê9ýU`±l×~δRƒ7_»“7nÍ÷~—ã»ÒÍy¥ þT¹Üd^–hxž=Ôœmu¾íóÂ/:Y¶›;ÿ‡}t½PQ'ÿ ×íï°ñö©FVƒ˜tZ߬ik´7m¯+uÙªjÔõ ‹·ùY£Üaˆ‹ÿlÃú“êç&î,}¢í»˜«@ÿИ§+ÿZïÿ%Y?´Þت×z|ótkÌÕtUNIrqóÑSÛ¯ÞœÉ+—wª¨ná>s›—¹ïfuÜq⪉káº=7Bßßdîv·ñ—mñÐÇò–W•¶ÜÀ¼Ukr\X=oLØèUŠ­J†á(ç¹>]ã Qšl¤˜èw6>!©BÖwŽÆëéòuÜΔt`Ù=7–k™;ùWoŠ›V½þ†7¯!»‘ŒFg3HÕaVø,‡·XO!s©mº®º¦êªšE^:,Ÿk,Ó3ŠÜ ÞŒ— üï’¤zQ©’2~WúþK"iY²I¬co‹Y㩱[‡5Üî/ »ºöß³ï~åŒÙªˆÌ_I½ÆY/)¢ž#%¯_òb±—#·‹zÕÞkm'–BX¤Äe¯ h+$íÛŒ‘Ù²7ŸNá Jñ˜öpÈbâjUÿ)u!üñ©™–ÍÎÖTƒ€³o[–gu%moªã[ºN;¬å$÷ö (ð±[íAEEe—U\CûåÜë9> 7SvнStlbœ@ýøUÚ*kã¶ ™~©¦“;-‰ÿHÍ1€F#òêåþÕìOíÝÚ{veŒÿr„¥ø?äÍ3{é™Ýû’à4¥5TímÕÕ%e[l„S}À`QXv×A.9M$Üu©»j¢ŸqÂi÷÷qÇsÏ<ë\ëZÅ6=óyÜnÜö½¥£2–6Øö,¾m£ÝÈäÌîZð2""#ˆœÝÝÝÕxjÖ¯ßÁ^;nŸá†8ûfû3øúoè¤ÜÅuÖ=2³I#ò&–Çæ° jydzWF‡v³Ðìc›]NIpÑ•PrÃ-G%;IdûO¾¹Üº7ïbîÔÉc.[ÇdhY†åôlMRí+uäkÚ©j¹Ç=k0J,3à K‚&$,íÔ„LH DÀ™Ä„™ˆH]ºq!vvvvôìììíéÕTêhù·Z.¦òá£DKŽJ£Mq@»*¶>ù׿£e’”DÛ×zNšºhÆà¾ƒVs¦–¦V ©Ïp6oRå'øw)±úO Lnñr d‡UÚl¿èä66´Ç‰ÌZ•ÙËyת<6§î]¯^»rþGp©oø§£î»šŒÞê9w< ÿá$7o’1oµYK±oPL"!\¬=}cÂmHÒØ øÒ5‰-½uDÀZ^•ØîÑé¨À?Eå …ë _¢ò6Ö¹ ‚j·¼6jJ¡Æ³Ùu|ö¡•“ ±ãeÆä(lÆ$k\¥h>Zy<^Bœ¶1Ù|Mø]¬c²ø»W1™Äi[±„6â±I ±ƒ»‹¿NÄ$/Ñ3rú8ÌDÁûbvéfù`UV!4°`U»GR o0ñÖùíîi%f‹4qÖµ­ïžœŸ >zÖ·­ï[[[Ö·­ï_Måï­l{MÖÆë ÞÇ‘&g,Uì½×gí™Ú®> »;³ôí^S–h`9¥ŽÿŠY1ÿ÷³ü¨wŸ[P‡‘Ðñ kÅ©øúÒj™HW–MèÌ2ÛK•´ò‚#6¶+®TK•9rtH(²)´»SŽw›¿ r-xš\ÖŽ¡äÞAÿ³jÜ}zPcpù+ã7lÖ%lÄÜJ­I¾A8ØÄ Ú7æ5úŽB±ý^¬3ÛõßDu£”ÿ˜›Û³?·X<ævýtÂ]"*xºÕ›Eä‰)Ï Zîµ m]fÓx%¡ÈIJ­x›ˆŽb÷yµNDÀh¢=·ò_Lƒ_×±Ú&~¦hyÛOÀe±f.G§SÝvœ¬ajŠíX$¯«RÓ³5¦©5Š*3mEŒÈÁ4Øû?SFÅ…FYŽÔEå–%ŽFûX*Ðø¿bNÏ9XŒ˜™Œ  cf6ñ&eV1zFÓt‰Ù›´ÂL©’£n;fkðí”*™šX~J±ž°2–ÅŠÂPÓ¸ÓT»qæÇ!ƒ«õüžzïÔÃóI{VœØXnÉÞ –aëõ‚<°yFRSh›¯ŠIJÅÉÄzÑ#øRi¼_¦šGþiK#¼+hï7ý¬ËÕ¶eŠatÝHÖl<Ž¹ï®Ž]>-+öb‘''öÂãNF춪¡þ3¶9‚âÆœ}xCÄ{Á²Êö·í·nØòR;³5xȵ‡`Î*åå!G.¿+Y?ŸÊ’ «ý=³íå¿ »³7X+ ÿ·ÔÉ;/·m+xûvéúvã­äz‰Üך›nYiª²ä%}]R˜ó‰$ ¸ª*L¹ßâ<èR![â@‚‚J)´EáE–QJ‘óFéJ_——ªqW›Xã­’«RG0„[ :ñlÆï4QÊsYÌØ±!€ü“€ŸX›©^ÄíÛ»´ÖíHîÎݼO/ÂÞÛ¡™»~›·u#Á¨šB°<§JÒ›ª«Ç3º×f¸Á«ÈŒHó;Ðú]cCyu¡9ä]t²ïCó¤>¿‹Zç1}ƒ·í²¼4ö­ãpÙªWgjõv —5™¯<¯3´0dnÙŠ&yåvù]äÿ;ö«ER¬åjð“ýÊ(cŒŸ×^Üýz÷ûzR®aêBןȕ ´ë)Ÿ4g - Ò¿‘7'GN|%ªëŸST²7â“YDÍ·¬*¾ Ëã´GæÄMdo9Lj·Ëà³®Û²*Áç¯zú“ÏŒqˆwË­5ºGÙÊïÙ_LÌI)q€Œ·úP:¾g`Dü¹fÉ Q9xr’I–\œž$äcD·SÇ|)Ç 'ß*&§<÷Ç|u®¸ï޵®¹ï޹Þùëž¹Þ·ÏZÞõ½o[Ö÷­áë˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EO<ûþÿˆ{ŸúûñJøîÆòwö»úWò~ÿõýÕV\×ßÖßÔ|~¯ñ?ÛOéßé_é?ù¯åÿ¨Âþ7øÃÈ®xÔµýŸéÊ…ºOòÕáïI<×㙄ÇN×<¾{ÄÖ­ý!&\•Ç .Ç¢„ËéGB“ÂïêšvØ,oµ%–}CtÅă¢-è²üÀùz:aµÇ¥Úí1z‚4"«M<¹$©-;VÍÒõ±Ô–Õz¤ Óá¯zàÄ×F#gV(»´>vŸMn!Gåƒ:EÛH¶O]Κ¬ÈDf|ÆÕ3ch•µðÞÑb@æU|ݼb~ïÆ<š½°˜ãSx‹¯çêC,…¥Ø_¯:$$·Öµ„Yž0‰„L"a˜DÂ/Ï|p§=qß<÷Ç|õÇ|wκç¾:Öõ×=s½o]sÖ·½uÎõ½o[Þ·¯¦rÎâìBî$.Î$Îìììý³³·¶vlííIÝE9 UYÛ͈ù^(Y¾ùùïmà¸#¥4¿>Éœ4HUkŸÝ½*%Xç¤)g‚“H&®éÕÜßæenã]‘À)ò¬ÓPÙ†«c¹cCërs”L1Á$â«Ý›§v~ßì¿»¿&®¼(¬3Ë^‚’ßJ¤ ËÂujز¼„1ˆ¨k=™lE,fð–è®D莫åÈD¤ O°·´:ú¿»œ 2Îòïbç±F‰n»U¸Áç–  º¦›˜ÕìØ…æhÛeŽ#ŠHM¬3HÝ>²Ríâ¡pÛÛ1Ó@.ý3·c=ˆæ~úïáwggõé|ûtö ‡I $7ÎÕJ+¢:ܾ¼O¬[¹Ì>–ï­¬Ð&¨ ÛÑ!£øö¢€Ú刹{XdWØÉ$àWa©ÂXÇ)'Îrnã$g,o¥®k IØš9ëìw6.@´ÑO'—ˆXÓ¡š8X%S:Ñ<²GÓ4T«³³?™M5¢nþìðŒUG¶þ­aÙß¶gé™ßª‘PöíœÌí·=™1Ç¡Ímx‡ÕôUHÍ‘1š/ê*Í*`¿Z½ÉžCë[†*pQU$š4ÓŽÿx¸l²\°ñZ«{R§3ã÷Ï:ß”q‡o³M3ã¶œWé©få´DM_;-®æö­'94’Pì¸'§‡9†ÂÇ._ph%Ž:½?Éw!U™¼à’埨‰›÷ˆc–(,ÄÌݽc‰¥û¼RHíuk¨ˆ”‰iÉóímN´¢gì…Ô’\Çb’pÜW´žäÚå…¦ZÅ*k;¢”G%(&fyäÐ$-ẤZéÞCع†+¶5nIÚw{§Åa±yÝŸ'˜ÄÏZP¥Ä»äna²{uÚ9ñ9LD–q7¨¼1–g¦pÈ÷ ãÜFzpV~ÛÎ(B9›üá'èA~Ú@‘†A.ØÅ‹¶VO5bœ˜DÂ,2}^BíÁ°éô|)$xÕƒ/ ËÚè ›aIÎúÊè »GäŒ.CŒí’±ÜÿxGvW „¤¯šæËÔ²ÐfõÌ”ø¼•pžžŽHìT· Ö½¿RÀMO%‹ÈÕ’ZyOŽ2›/«ž¡9°ËÈYlÅ3Ç V«I¿e5°¶åмmYåyŽXâ‹ÎSxÿ™Rwê9ÚÃúõP%¸íÛ»~¦ªxôìý÷×];¿Míz¿¦ý­ý æ+úTì ’Á+J©•n‘ß?ie3ÚöD>Î ¸o­¢¾«bIÞøÞ» o]a¸ã Iƒø‡–xãcâŽiñ˜ù¶½Âø4Œýà í;VÍêsÚÙ¼ã}¦(›¾ÆÁtìŸY)wðй#vìÆmp~¿wÇ; þÏð;ÿ¢øíÏØ’$ÆHhw*~%•wvžX׋€J-Ò}v)0¦¸%Þ¡%ù9_¡,Ò$­þ!ÉÐéra=Ú§ã S—9ÉÛ‘G)€R§®ëZÀFÆÃ4Yë{!Ùç?ŒfÕ#–(\±<¦ðDòÉLÑR¯Û3¹³Z&wýž!Š »·ïÔîÎþ™únÞ;²<¥dÞˆµêÞôs›„aÀ§˜D‡ÎUd6¥–ÂHayŒL좽0a?¶þnzÔ}ýœICc«ƒ€Sâ†3&Õù‡Vãé-¾•Åõr²Õ¡£ŸÆò~ßœÜðÙüx³IC-‚Õ¡ãl&F³Y*ö¨~e޽>"Ý:ÙlÕóWÉÁF||öØ~¦éƒ¹Dt«Å^Húf8åîJãØŸ‹H$àlñ¹Ã*ׂT&šÝì¹m¿d@\œRàI•x[LU9C¨oÕ®;èjf#3ŽUõQZçh¼ÐXy4t¸ä]ðê±Áâ#\œ†Í>ë¸7 ¥jÛZÆV8¶LÈn0Ê0‹Éñ¦óšÁå6ÝÂ'v’XðSfâä -y"_n­G5´EájÎã’’ÌБ7WžÕ€®ìïúBåhå+¿ÙžVêÈíÙ¼QÀ÷’ @Pµ±i»ÖÔÅOrß*©ËÔ>¿‰0:­³:ÚÄ£»KPÇ”±ÊwÒå”±J¬jÝö¹ ªªwןöHä]¦¥´ï[–~¯`%G7²fr4Ãàf£WnKZ ®"ÑÃDÇ ]b§Rb‚­x‹ßE1{û¿‹»ýÝÝûwöý©ƒ0•%0‰„PÅ£HF쓚åa:¾W–¬dUˆ[Uƒoš1‚©˜LyÇG†àÇ5‚¹•ÇQ¹5ÓK²9èþFÖƒÖëí®VÞÁnäè¢)󼚌-$ÐŒ¼ƒ”ÁñÄsK_ÇæŽ±ï™=pmdcµg•Þgø¹™ãhŸ˜Òwê9ÚÃôÏÕP–Û³?};ý(MÓzïß^½¿¯kù»ödîžÖ‚ù~þ“‚©«‚+Ûèõ}V×¾‘KJlãÙmK2#fÔ¦÷Ê)pa*­Þ´˜=¢™ !ËqΑ0l<µÇ›v&¡—mÛí³H~?O^þŸªfµK§3ˆ¶ˆbr°&Q¬”»x¨\‘¼œX ®>¿Þq±=—l27?4Ô0šÄ)ð# ˆŒZ²Ú®"ý,áx É)ÄMÉ˔ޣ?²hl.­¬ŽNìÎ9Ió§SSHÇñ|[¹Zûdq•yWuÏí“ë–%’I²ªÛÒ â¹õøó˜¾f­W*oŠ ò4íd*Ò½Vƒcç)ÞÉÝxf ð2£Z(fffœl½æ•ãnþ2/Ô» HÜùF¾rC¾'3ÖÌX•QËS+îØIßAö’¨ ç]ÃåQ:°6BZ!p¸ƒ$JïZ%RI‘Ƙ¶Z² køN=Õ!˜j>Ž´ÓÈÒùÄÂI*lÙ¼>goŽfˆÞ(ìÀs ÜRœ†uÿ/„™ÚY-Ïß^_-» ÓöÌPÇ$puÛvìÑ3?îÎÌÝfpï8yî¼sAîEÓð×Á¹ûQ}ŒVÐæ7Þ~¥¬}ôòÜÌ;š‹*àA .¡]¬¹äjÊvRê«Ý‹9Ê—³T’†ÅÈ;¶w+öxì¶ÓœÈcßù!]…¨Ú½-A­u‚0„B:ñÇÅTŠ•8IŽ•¢6ûpD'÷wÿ0‹}»»¿}»»»ûwu3æ ¥&0‰„L"a˜EÔH#ìÆ'ˆ¼©¢M‘6É ŽÈByb}fs@ÜšP%½Í±ÀE–à qKU!%ï®vEªµ(_Cüxi7ß¶>zÇí\T³Â Yõ37=¨AN>±eG *í‰uÚÈyj×{N(wmº§²k>ìE|<ëéª_ÕP/î-/NDÚŠñùd}ÄÜö·™Ïy€Z'áÀ•׳Æ{Ò1YKSk¨}‹rŠ¡®1+OxDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ.¹áÙ¹¥Ñõà´Àhen5ÙÐåµÞÑ ¹´eL8µtŸ=÷´ÇVï\qßoûyëMl‹Çà/Þù!o Oî?ª_ÏI2Z<†5ññåõ+Êe…˸p‡íÛmFGNœÛ$K³(róB4r dµ±X6˜’.mz{ôÏ’)ŸWÇX[,¶·¦©t×rZšä¯ ƒ]”´ÇIé$¥ÕE’ÑΞâλãžtî61*n×lS(üމw!z®#&b#dhX¥4W0ˆ5læ*H¦”" ~b Æ[Ø[°­P†É„ý4ván ´ % {ïÀ˜™ÆXûòˆÙÙ»s㕆AøD/7–9+M[èV +» à½5C& }”¥5s›½¯ÐèWÒG^7844?&™œ<Ð}¦óÌÆÓ‹Æ]g[ïšãú9 UÍ»r6mjŒ/s;„¶0Žó¢×o¥“eÅÖ)¯Á<ŸMó€Š\ŒT_`«¨eòÔõöâ;D ¡˜ŸÆ)·­eýôЛû ]›ÉëJí+~¯ˆ¬GJ¬¾jµ90‰„L"«öÕNÊÀêõz×óÖ:ÌÐÍÿÕs®Gê­±[šxýpZ¯šîÑöé*!¾‚b›ñ±âIr€l²ýF;yŠ>í­3r½‘§CvMw!Èš£Ëgò|‘¶íbÕ×ù,\Ð31ÒÉYÅó³XÈàlQÉêù“y'¿…üØhæqð,W"· ÃRvaù%.¾žaL6£r6fô±Ñú`“ÃÊ3‡+¿‘ÿ<ÉL¯e2†¡nÆ]/Ã¥qOªûé4äI„ßË‘¯µsµ1’¹Î£É Ö–(U£Qéäu5Ûµ6‚Å»|`åÛ7Ù¿ Ü—‰§ˈÄÛ›B¿ñ•]£v ,ç²õ`ÇmÔ÷¬®*®½“9Yã†hò¹=w(QÚüƒa˵ “Ój™“Ã!‹Zü¡­çy˜|œà*Ñ™J{vp ƒ¶ùbÈ<¦þ½ðì¢üÀ<áèÙØˆôŠÊ‘‰T éBë¾{èBNªZ¢¡Ö¸äÅ›£*£÷ÿ²1]óÒzÀ‡Œ¨Óßcå0×f‘¤/£5™ÝlxÆL.-c5í× ÈÎåv²Õ€ü™,LìJWÖ‘;ü4®ÌÍÓyý1tÎã$Dý°M&ìì&î$Í2f¤¦0‹â@è‚│$ŠJ*HÄ'ÂÈ‚ÜtšÈ.Šœôš¨ªŸ]&¢js× q×\õÎùÞõã’HdŽhd8¥ˆÂH¥ŒÈ$Ž@& ’3bf 1v!&gggfuó;;;3³·NÏíŸîÎß»:¦O°¹“ÚË–S²—G5©û²o=̤ͱ†˜‹v÷õ,ß>NäLjÉü k§MKޤ9TÂ"ýK!ü¹¯{ÏÆs¸pÛÔáä cðby+е–»š´ßì`ä­{^l†Çòÿ?yÂןs®=ŒÎ;{“è«Ð¶œG’³ƒÔrS”Æ1Œr§,ŽÁúV†±?MÕo'>Öï/)XŒ °XiÙ.\ºë¨d32°læ‚XŒí¹ä [Hì[ÏMA»EÒ87%ýº%¹CUT‰œü;󳑷Øôùu誽7lîÇ•ÁëZز05š61»vÃ’Åëy,×!”N¦RW‡·ŠÐÁ8Iv‹-˜á°Ó9y*åšqp~ŒN@æõÑw÷ÛÚÊ¿ÌCÃÏ-_yÃѳ°Ðè$ôâTF%N¡Ò‡k{ç½µz&uOKÔ.~ª9¬XåEãž“DbŒé!´vTh”A²òkÓÈÓ“Õ‡5™Ýäa®ý;}gkÛ¾eú>^˜ˆå†9ƒ¿Ö‘wðÒ»+7_©ã޳?—þ›²Ö“¦ÿyÚ7ëög~™øêI½~öž¿‰¨hX(åô¶Çp˜]óYsûZQ.Û¼)Jµ0oiôºäÕn®";Dq’v#÷!¾ âxN¿Ön¼‹°É K[  `p¸Û’x™JÔ³ùîæF*ìMqOsKŽsi$”éEðVxy2Fߦµ8»ï§–Ô²·®¼¢Ž¨ƒ¿Ý݆ótÍäý»ßªãÒåsýSéf8ÃbkmTѤ(¶£ßi~¯\r)ï7<¿ÐíEsɽþu*Ì¢Ã$ˆÜ&2¿˜¥i¶ÑŘèKòŽ*Èe­x›÷!dsþf'–½ Æw"w€~1ŽÆbð„¦r‘J>‡?Óæ^ÅŸíV FNÝ}œ¬Ép_ß¾Ú1ôÝz~ÝtÏž?¯§Ì/1ë–wzÝMÒFó$`Ì.i¤R7 gq×\¸4¼×tÁõ]\âÚgt‰‘íÆßB}º¾Ñêv?›6Mw#G'£kÜ{¢YÅÙ‚î.ÆFÁf2˜ÛÕzz×hìÛÕ}¿n­jf’9¢ØÆVi»y„Mºž6€ÂÌÖí ‚àm-™cÿ0”5^¼/övx¾Þ¾Þ–kòÏšaeŠå )¶WÒA$dVñê^ô8½„’¥IiQøâyUGèÃ\H)D•W…VïJ©÷Xrü½Ê¹è&©—äâýÎCÕXèQ‰Ø£§XI™™ ÏÓtÎæãæï×®Üý¿oíO9®Ô´Â&0‰„L"a˜DÂ&0‰„L"agqTñ»Âº«¥ï# jN£ÝÜ*›NÆ¥g[’BÓ"þ9ªÌ©$ðË4Ò ³Hµ“³’õ=â€V øÿo+–.+að&'îì)-?Q1¼»”Õ\Q5„ÞI$‡V¯LvRŠËôày£?É>Å¡¼ÕPX?þ±”H|û$®á©?œa,ô“ò¬rØÃ3ÁÖWÇü—Ñùœ ¤B‘ËÍã¾pœp%oòzáT}ê‚òEµ¯ݵuÇE¶ ½íÒIqtÚÆú¢/ ôÜ&zc£‹Ñð‹þ²Š×Õ0ÔÎ;Áß÷²ZÅš‹6´¹°ôþÎH²7R+¡„L"a˜DÂ&0‰„XÌʰã0©Üm–_‘ °#’&á]™ÝÚ‰­ÊFbjޝâ]$I½ñù) ´ÈE%8ºàó¹g-G=¯e/ásXÉšÆ?)Œµ5;Õ&ñ s‚ÄœfqH,^2Ã$‘H'†%NX£š2Š` #6èÀňI¾ý;?lý;3·ôvgolªœ‰Îæò›#«ËsêªA¤UËB*Á¶é§«pEC}p)27¶!}A$õÊ(½¼ƒw2ò:Š(íwžöñÃŒ©¢óútmdu~ß®K2f2-kÄûE‰¤è¬_‹C!/f¤2w3¡FƃyåZz.Z•œx‘Oª,îч‰Þ™¾Âò5ÈÿÐÉ­_æ´çÔ}´2æ¿.HƒT©!áRÆ´rM.¿N}rþ7ŽÔ@óÊŒÕõ|Â*aa }² m ºŽb.f¶`+;¢ñΛ¹¯n[^û.{äLVŽ+ãêýQÉZ¼9]·mÂf ‚zÒElri’G$Àu+Û‚q°¢³rÌC-x*´R{’ÙxýÜ ¯$nìLâàÖÙÙØœ]ºY>ëßM?öŠRŸGÅ"­úD­«ºJˆnÉ?:ûOcëo×,öý,“‰Vž¡½7ÔqÅŒ„‚Ù¦ðw)¸Û-–žKòSø6°dndmÛ(ÇQÎçlä«j¸ˆŸ,ô½Y"±WýÛl òÂÝý®GtàÍÿšˆ{ùâˆAç’Õµ:µ¾µ¶½²9òÊòn­íFàÖêÖà:e€äÚxŠ,!À"É‚ª¨äŽªk"§i÷Ï[Ó÷)ÛÇÛµBý[4oѳ=;´®A-ktíÖ”¡³VÕi„&¯f¼ÀqO Å(r˜»5ÀHLDÀ˜„™ˆH]ˆHI»bnÙÙÙÙÙÙÝŸ¶\üŒ¹L"ãhm¢{‰chöAfšºBˆ* s¾”\‚Wí4PE>u¾»Q^ùãŽu½õÖµ¯®U‚ íMjÐËbÄæ1CœÓM!¿AQF$r;³¹¿LÎë‡vr'ffnÝÝÙ™™¾îîþ™›úº¤6Ý©âë[¦Ô½¡‡ÙqG7\ÊhI£lÎô„½ºO÷k®ÑšIN ÐvÕQE¢ò(,¼`ygšFd šþ9Mû¦jí§¶I‡s•õ\ÅXÛhÄr. Ö sÔ*MD9Ë{<˜UyéËh$Ææ)å±›[{•ÆÚª]›ËÛçŒŸà’¤£-¸Œ™ûx†”݉…Øã(Î)Y¼%Òºê·Ó—IJ;żåx\$0Á¬ö¼*¯â‚g›·k¯×Ú/°/XÊé(|ñuøMg;ÎbŽâþ);cëÉÛ¸ŸD„ifqÜŸ i1ältìîÚ\weÛäcÇì|7‡ßjæõé"þd²´µüÅ)¼ñ6±ù +ÙÊu¯~˹Ft­Ùpq±H2·Û£‡!%RŠfN RÆMüÁ0gxÂ`þ±õƒï=öÇFÔp°HY$Å&ɽ^Í”·!½kµÊr…W•ž0bÉëzE ·øáU29$’(ìÜ+ò>ǸŽC7L툀Êhµn=¡"ÔŒî1ÃW=³n˜œ´NÏ!Ù³¥9x T3þ ?.@ÿÉR´LîÝ<öÍäýÜ¢†´‘»þÌ#gß¿ÔÝ7¯è/R>ôŠ_C×ñfÞÓ²¿³ôLÒÄÒ›PÄ“[6•ÍY ñ¤Ær+$ÕûtA*#®ÈA8þ"â<{I&+ŒöL½¡)†ãnFkØi#qñ‚I±Zn££eÂF)dŽ=¬ƒ·Ž!7ä;†ùôÇrÇ×MSÆNÿvi,Of>¿fwƒ¿»þìÍûOÍb¹¯ÙsëÃÒvzS®ÅYK…æ¢@>zãIi.¼Ò-Èj|%­qÎÞ•ßR{S£7Ñê\§5HÆs@âÍf€tŠ;¤“»›™\åI¹ýr#~ɨۨ=DÀгDÜý÷5«³?íþ$«³§ªëþ!'ýûïÚìØ¼¥æ˜éÂ;DÕ„HBOñ#-}…±Ê&Ýó®ÿ'Ô¹¼”Giiê}ÿëÚ§<’®úÿVûúÿÇ"d9‡•ruæ¥göøñ“—™áqù܆'/ããÔ8 Tô°Õ‡ÇôøW£uëÅrú ìCR»›7M!ÄK×úË#…ÿRu?qÇ óÏsÏqÏùñ£{îý‘ç ŠuâfÇ2?£m§9íw~{;ÎP´露ôdb‰ZBóZ2Ç=)l@x¶aª½šÑf ‹­˜1ï+‹"¾¸ ±k>ªšÅìjênÐ3ü>q |n’E¤¬¦k{É•ñ¤‚›ÜS|öžÕ~ôšÉª‚ŸbÉ)Ç$Y®0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹G‰ßM‚5õOп&3ÊKÇŽ™ÚÒ饿œë«&ÏyšäçjÄèÏDHe`^Æ^Ozyê63õs=6+’ÉÇĆpD‹pu Y £*j¾“®›Ôi¯©êîVAZ–_¢–l†×ѦȔa½R»×=’ lÚýóÏKtžÔëZß[Öh§çz¯¼‘\!ëz(„oä±¶:w¤^)‚ÛdvKDE͵nÔ½0ÈäØï³<©VWÍŽ2Ih3vSd’8DØ*éD{7i}äŠk«~`˜+H>ÝòE\I¼×qÛ‘XkÕV÷SÖ—óIú‡©LT / ùéz¶bOƒ™ 9œ÷"¡'-<ÙE—AG*=±¦®[M£n–kî Äý‚q@–u9¬f[Ê¢žÒ•ù 1UÓ§p 1’92oj3’¹ä™[Ö]D K¡ÓPu9ÑÅ„L"a˜DÂ&0‰„U¢iF<³Ém_>>]ÙNÄ(å0‹:pR´íÐ^‡MýäÇMR¥ªŽ‚…pBPrë5%+lj²'jà¹ÜU=?’±ö6mVœcW —¨P†ï¢BòŸ÷[)`‚<†$’I§ÒsÒM¯Øùn]_3~]†(2Ô!¬S6†r)c&w­iúëùàÞÂN™™¬ÅÔ­Ðü<`Ñ>IXÞ¬“§¢ëé;AµÖÆÕü¼Ž¤•'o]4¤B ­0ƒ; ×-¶Mj³‚èŒ ê/ùF‚†d—·D&i¹Ä›-{gßרòânÁ¶hy ŸE‹Ý1Ì4ZéÆv#Âlågµ«mQÖŽIlkÙo fŽ)oámfðES3o¼Âbxd‚БבÛËř创ôÏ“³4±öÌîÁ Ç/”c9æ¾R×ç¾øOž»ï®xãŽzï¾ûë\óÇë{뮺Þõ®yçZÞúë{Öµ­o{ßÓ9frvg"'ffwww~™™›Û»¿¦fö½zËÌl$ÞmûR’ö›Eh»î=&™ªN‰P=† *6s´±ÌýŠèlÖbÌÒƒ“­¡ÿ.¿ãÙ4xo–21Áf9Üâ¡d~Hòù {'‰ÁŒOÎÓØÎå+ÓÃT®ñIfÕè`q–'ù?›”3ÈÐÙîWrN(I/}õÓE”„ý³·B.þŸ×§\/ó*Øì§@i¿FØ'meRTd©‰5P2<¢žÕè?ú3T¬TÑTO[èu›ŽÑ}}© ¥–Q$û‘ýÕÛ¤.Ǽq~·]€ %=ë¸Ë#ÈL å¼`ûæ^ DšP·Ž®ð·g+€ñõÂNÍ k³?nÎßK%vn›¾üîý,nÏû8™wöonÝ×VO¨¢“~¥q¦á4åq#4—õ3{\i$ÆSÒŨdª½ˆS0ûŠ?XIÖ+´ž$¨Fìoèy‘Š8åNi s±†ÙÙ,÷f0 ˆå ã?»í¸"­®o\y£™ß†P„aÃì¹­ç7¤d¶ÜLp‰ÒÅI”Ö`ÁÂ5£«Ÿ,6¦¯, Šürü”«EZw)ªÛ³Ð¹»¼ÇZ;!ŽÿªF ¾)_·(šS)ÚÃÿGú¹å.Ñy¼éø ¥tFÕæ¾ ä ÉšÒPtS&ÙLòë•ÆŒ$b4Q]œåWt9<¨ ßÄ!È„*ã¬ÿ;áÚ&ÇG·lÄд^²ò6416Ìe2”íâ5Ý•‚)bø¢õvæ–'¥úÙh´ϋ MÑ[­?}ü5 äéºa’kR»?oÙWéý7‹tî_ÍùÁw޾– ý+a ŸBv(Ú²©®EìMõÞ·û^aŠÑN·_˜´^Ns@k‘{Kô5ú˜þôc¢ß÷kx¯Zšaš_á{[ËÌ3ô.ß,æ9­gŠ6ð„èש$]¼ÂRÿ2}—ûk—¦fë¦ù†·]­êvþ݉ɟí×¥ÌÉ>j´ix,Ê@1+ŒºÍiÕ±9ä²:û—#©Õ˜¤²`¢ËwõíU{ï®ûÞûë{ë­ït,s?*K •*ï{,AáuK¯§kï mÔq6½ªúDB€°‹0·LÌÍËc¨³±=X¥6w&’qú‰{»ü³ü’{ÿãû«(¢‚(À‚0á„èŠb¢˜âŠ(éòˆã :<ð’ —$Š)qÊi'ÏèœÔÇVÙ®¬%?³aåæi×^p“WLŠ;Ó5˜€)synÛD«Z¼Pï¹1_»n0øÍŸX=*ŸjDmúÅæQ_Éí$¹wo~IͰŠãa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EåwåÈ_$È_Ì/­™m¯M*»kŃíZ°¾žïú£Èq*"ZsýKH#V¤f¯‡úãÌž|c±ð‡î$Ö{»käÝY$r4ÀÆE·o#ÑŽw÷ƽNûº+C\âKizý'hü*(j¯J†%g6²[–É´žW$k°£Ñä˜Ks•³HT ÈKÈ!»ò‹oR[cÝÿ†‰û5Sé[ÖW¯–œ››Þ˜›-[Ò¾GäOÍÑÇG&–GjöK"lœû/ÏážÔs`˜ós‡£Ø8op Ö{Ó¶³Þˆ·QÜeù\Å-êVÁ‰ZU„á³—x”êøŠ4úÕPu{ ͹eÐÚá–‰9¯IœÖä)mŽ#Šx„Œ‘„L"a˜DÂ&0‰„QµSBmÆaf äì¦s˜ŠJÜLÍ`ÒGXT$°‰cJ£=F_uÆì¶Ò’Löò hvAÁ˜óÛÊÊu=Ë=¥ßšîÌ_ÚÿE˜Äd+A’ÀìÂ%“ŸÃ\ heqòIr´6¡2¯f(.Ó’µêÕ¬ÃBzñYEûòŽAw b>šH¤Š3fwnÅÛ¶wg!xÅ_:<½'Às¿Kú^rÓÂkqÓbRèD¢½/¾~廑ùµ¥fšS„ùÚHé)2i!®úY¸+í#œ°9:)õî*â­~ádÖÏ ±n¢ ?@8¾Pڷ̉ùÈçŠ3‘Å€Íáî' ôˆ™š[×¥¥¤†»¿ÔéAV_ônºûýý®F¼‰æâŠéÆQSGlÇm¨¼>]K;ÞrÔoOð…Ðr ‰Êpôꧯ±zã__¦¾»Þ÷Oûéå(ajØË'ªSaœ¡….>ÆÈ6KÎvŸ¤U×èXùOõHóבÉþî¹üº‹»”•Ârwgó´ålÙźnŽÉJCÓ}ºvSã;+4u°FXûKc3z}$K8¶6—Jv¯IˆI (ÉôªŠ)×¥Ç;S¾ûÞ¾îºÞõÍë÷²væ¿’»o!zÉ1Ø»zÄÖíÎl" sX°rM)0ƒ™;ˆ³ôÌÍ,D@X@D¾Â,Â-ï¿LÌÌÞýúoºìò"ì˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&u0dì‘§NÜÒl´91¸¨Èø÷yL`—¾Ú$‘§™yÏÈS [ÚJÒGµ8pè‘´_>|*°;t‚WóŽèl#§8G© Ö½áê:òAùÕ/—ˆÕÙbI§RÓÆ$¥•îC˜“(¯¦â.SDê%%f4¶õˆ¸ ¿¸||ôËW|“ÿN§ y~'W|‚AÙ7¡çDœB ñ¶?KÆÓ$ä|¯l½¬¨âööè_ùz›È ähdÂ(ðà rÔ¸ï…8áDûåDÔçžøïŽµ×ñÖµ×=ñ×;ß=s×;Öùë[Þ·­ëzÞõ¼"ýa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜Eç:õóGÈ*ß"žÛô-]àÏúF¯—×~O‰ÖR?aÛ¬ÍJc´"~ù4‚ѱˆÝeo¹Ã$Ò;×58ÊmÂkxÂÆÆÚ Ó[ó/"?rEɬè¹/«<§÷ÃýŠûñ§rÞlÏ<Ú4'1ÚÝî…šÏkCÕ_aCåUÜ’eÕÕ¹À¡Þ”­êÂ^››¹.€X-Ë€ÎÊEv>9¯ñ›ùúÖµ½;×±cÆ)´il?ÖÛÌMé67Æ÷%¥Ï©+º²¨µüöä{2ç3YÔäpØÁON'q&æ+)(¨£iÔ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EŠÎç1 Æ/²,TBŒ¾Ìæ’·Ò¸–5Œ¶òþüìb›Òb·4µQÆ/×ü;úoéôÙc‘Ǧ1öIdEù–S’µý’Ç|ÈÝEHæ·–G–ÅÊnujr tLÄW ÁVHÖQ%8ïdIŽ=h2A*~eŒ°·'µœä€³4Ž¿øªc“’ã*zÿëÚëqÏÿרì¿å;ãªþ¬D¿cÑ™²±¢ 5Tت¡“ÚŠðTŸÔæd*Ÿn¾Ô’!‘5W|"?*­ßtEÈ>C"–Ìuâ3Xx ß~žŒË™¶ÑÛ[Ï“¢`3vy*k7¨™^ê{ó[1Wü®åºˆ³BìFm^RqÒ›²*+ñ›Kü¤Ò> ]‰?<7ù;ãØAçù—ÐÞ±‡úšÌ§dÛm|V0/êùƒVõ«”Xª/´½•bM¡±d&.uÛË9†4G"ßå‰eWU1öǶg𪾽‹ £äÓËTÅ †GAÚ©¡£_eSÛÚÚꤎˆp8tvª‰§®þþùÖȕݕ][ðÆ+¦ŸÂ­ öR&ÏŒÏ+¹SÚ"J¨†Íb”FscwK¤ª;!¼âÒ©¨žûûøëZ"Íp‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ(Ðþ”ª¼µ k°-õ,dãO€¡ÀõXÑ×}üÿ·Ç—·±´\:ƒ®ìɃkGèGœöD™É„HÐf齬ÇtYƒ<Š(òwÈ7”=ºÿqÄüá<—Ê%>~6ÛqF¦Ôu÷G¿Áœl Ÿœ¢93^ÕjâQ®Íѧcú¨gÛBå¼§dÀAé•G+¡„L"a˜DÂ&0‹Tv÷½Z§ íë³È"²ÿ-°z!8‰·%W.¡!Þ— 1ˆÅу¡>£ÌãhS2'h° Ü>7¨Ï9‡¼Èš‘‘:ÅÎUNÃÑÖò‡škÿùæ¯óubLÊ!X1”Þƒô¹Å7y|µùñéÒW4œËÝ4e³¹£ô‚c'4`‚—×ÇE AûHtȵ òý!q¼.Åôû ¾âõdƒ×kûbÿšË«f¿D&Mõ|][Këgø„õ{>βˆ"<ßæbÁ u`Œ¾%7l›0¨dwD\*/äƒ×þ"¦3澫E–»Š½¾Fã"žonÝÕMZq–ÅN`ZueÙ,°*-Ú¡ ÑI:p6¸´…üÅáõY0%"Û—šýDÇéöÇÙ^¡ôUkk2{#íûMIi~'@Jt,s!Ì3_З’‹`íÈ*óüÜq‰@ôòÏÊI“Ù+ò)›Â&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EZýEè’<¿mµ\*;&Ò®šŸôºçU‚ß#“Õï,Îåh©èѤö°­Èãð¦b18¸ÈÚzcíœâ(ÿ—Œ€Zcn¨ûŸÍoêËÙÛ£q˜]œÁ=°Zž:K€ F±„‘ ±SéE•ýeÆ".‰a‰aœ€Åb(u<|WÒ¾·ª/Ëÿô:=¦áÐNпYµDMÝfõ?h2Ͻb‡œ é’O+Œ¨…ØWTeúÛ·é5T"ükÐ&3èz÷㮵©’'¤>ׯW{N"ÌSPýqµHTˆ—ªÿQ îz?fÆI´yëXK.ªJôþü)Ö~Tª>UìaTNiëŸ$yøF%™è?'ÌíYG+¯³…”²/‹ÏúP‘†Kë®Ý‡K¯ÞÕ îÇçAtE R µý2­±/l|‚ŸœLÝ'ò ⻾ټ«R7IŸvR×ÐWôU“SÉ¥tîêÕ vkMÉóžžOX— Yr*µê>üI~ù¢‚±<÷Lú××õçç*^µ­.ãŸý1m13ßvÛe}ÅÀñ&ô1WÃv&Šï² »šâœ©Éh°Hä™à‘z‡Á õãG1ø6)aáNÖá’hŒ´p·üêòÚÊAò§ýýéu×ÿ]ﲬ"a˜~@bñë‡ä—₵XšÑÏ%ûŠõz€IƒAÒ (¹(𢲙"LÆâ òâ`Z–d¶6Òz*ô‹³>ŸÇG¾XHë‚'Çô^=O|’ü½PUSª9˜¿Þ¬°Èh5Áb÷%íTY \ÄFXÛž<\° ®³–É@E.–vxÛùñËðývE¹ì"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹T-¾¹ôŸ˜hø¬oÉ”5çi]WÜ™zé¦Öª|ýfú"%å˜ÿIƒÌšö±áT>q#nsÑUôø-‹9’Š ç›SC˜¦v¿)ÐñZAQҕϯ㎑7P'-«ì4úƒ²=pZ<4·Ýd7ô.(u›/‘;G 2Y¸áNáÀÛˈÇ3ñp»"Ú>0‰„L"a˜DÂ&0‹Î¿É˜êV¯‘ÚãÛž›ð£ïÿ:¼xì_8«¬(å}Uª’ݯn)¥‡›M|Î’N Íš¦qk†g`› ™w]¹±ÉaG„”ô÷²+?ðëç™u[åÂcR’JN޶}Iè ×›|™nô÷Fù:ÀN<ߨåÑžÝe-Qñ$OÁX6ª®®áÄ›lDIßÚ¢$E ú ê3ðÄTzgKúˆ‹ù¢f¤„ľ9=5èêºOõf&j÷ñßb]2èÛD0ØŽ¤­®þm‘:jŒ+§ææø«í [»z΄[ñÈçŠþ@â#J|§è*îÍpá„i–¹HÐ=·_ˆ±_Ç)ÍYªnå‘„ÐvÒH¼ÝÜiè„´Liñí¬œ "»¸DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EóYdGERU4A>Ö]u»å$QE.wÚŠª§{ç„ÓOŽzï¾ûë\ñη×[Öµ½á/´¾H|JÓmŸìÿ3Eÿ!¨!&æŸ;<–ÝõÉâ4À™ÞÜfO†§?„€š˜Œ)2:Ln‘ÒꤟdZü±¾OmÔ½ “y“ô‡¶üÏ"Ž)iWÑOz©{®œ6©¥qkRž¶àõå'oðxn 2«ä²vFðD ¥æ7g4ÛÄyÈŠÕñéïùÞ·ª·ã/šøs‘ï¶Çoa{Ÿ«ô'*wÖ…)î?æ&/g»ÖÚeªÒŠ¿¹®þöâ—m#]®‘ïúåžz¯Ù#ôˆ¼îÍû?•@ªO6ÛWÜÙQÿSìäa§ö¥åYCÀúª‹(±4ƒÏj¦Ü'¡´I<ðDãÀ6¬Ä~·||’ûºÊ\‡¦ºâWPyJ,‚i÷ÊËðÍþYªÞÉ ö•èŽ:1ÒÒ}yDESn6* rEÊ â7㻲Åpœù±Žúsµœ9tõ\ÖÏõË‚ÎDrŸ+9W¦æÖÂ…Ö’ãi’¿Þ ßO »Cý¸Ew«ª–ª§ÙúTµ}W0wø¾æ:ꄳõø6¶Ñû›#M­oðì‚6—Õ þ=®¶øúm^þâ-Øß ÿ.4·ž]þD®_2yV¼ò$Yø)×ÈϺ¼›}ë£Í°E„nDå5vqn§z¶En8iŽªÎk´ÁplQ&pæš~% ù"ôc„L"až>eÿé÷Ççÿæãÿ'"ØE¸|"aªo¬|s\zíž·æU)³jÛ–žufR—…%&n‡Ûµ<ÕxÛä9ÍÎ*ôôÁ+ŽÝ ŠI£Òx¤Â+)†ÉšÌÒ±ãö(]ŒDòwŽk"3ÙÅe6m¥aÝ3ÍY—]ávÉ›¦í±5B6Çls•=2°E#7Gâ‘¶Xôb)ŠÅ¡±–°öƒx ”od‘[,"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ*ÕêÅ<Ó§'·Ç¨àµÜ²¸óõ<²ÞÝghÄÙxÔb>ǹ¯¨èÒ@Kün.¡ÇÄA6öõ]ñÀV Þ_‘9ä‹N>jø³w²i…=¯™=øäcÑÚ^âXþ{a‹¡ ky„yµ*ŸÊ“jAÈci{¶µ‚Ëf2L£$$¹?ª§‘¹$i˦Cˆ¥¯ س3܉ùóä2àô7·³ÑF'XÏ.Khiw“=Oü_È’óåµ#pzʸZn²dÔ$š"Áo3·ñÊqMÏ¡)%Â-äá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"ajÙ±Jb¹™ZÓ®Ÿ’†@M“ÊIŒÄå3— ˜›8ÒÎn"Å!Lïò—tÛ„Ò§›;9ä å¢Ze”à‹ïYÙÕÕÏŠZ•,Þ/dVó–ßáó˜[Ø(¼‘œ¯»”Ohyl\ŒGò&ª þ%wØå"¸¤p‘(,—P5¹ïOЊ*5ÏëŸ7VnIƒf˜f=|Ï'%Юxìf¦ø±/üÈœÝHMNVE±¹¬£ÕC{_ö=w¢(ÿ³æÙ'?JF¿õÿ¦Vü—KÑ0ô£ôO®z[ð!­Z²êæN~B{å~Gû‡¥ºHRïŽç…"ûõëuÍTãºâörÀÚBÛH'Zú’€£] Ú¿É’ËFì“P /Ï#3¤\I·×æ9€5ôÙN¢üKò‘YXöT¢ é?(yB«¶ˆRS ó¤Nt{2¹ƒY/OFH&³zUÆÑ•ù°ÚÍÆbâYkHÙ@i2®utts”¡T3ÉH\òȬœ¯Çv²QÙDûÓ¿*ž½êc‘ÉäÜWJy¿Êu„J*ÔÔS‹ÛÓƒíuJj„ HŸ”ìùt;z¨vô?áüœGþ{ðWŬ©êûÐÑÈdƒÚ5…¦ØÛ1‰N½whú_ÒÈLÂm<Áv:멌³@¢›€$í6sa¬àq¾7Ò ŠªyË*úŠ£ÃÛ}-KTÕaì¾¹‡ÀØ›W…ö.Ɖ³4£±¶²I­´7ÇâÚ©ð¦ùûøçz"–pŠ{ËÆ?箹­)i¨ý¦›îøE‡è4xiKz6§ˆþ©¾z“Åç0w¸lR['21 =7ªôJèD‘få«ñ9¬`ÄZ€øos¥}ïíJ×ÉU=Íã0³ùÿÏ/xŸÒ‘©ýAb-u-(²74ô]WçË-Àé ¦}…¹×ЙLQ™ƒšØ éPE*0fl‹Ó0‹®xrå¥Ñß°Ü\8jn5˰ÂYÉØîARº ­¸}msÜIÒ[D ÖÖ(žÒA=oµ9Öy*¬ývñèçø½õòc⯘ÙÌ¥†jœþ®ñ<#ãƒÓ(ùÏŽQ©"®³«Ø 0ö÷?N\ÁCm|.Ä·‹u†2ÊÉ ŠÖ²†tÖ šä^¹°‰„L"æuÝc‚ç‚D¦1{*,Î2É(3`B{…Σè¾rl³ƒÊ;ÅäͼŒöÀèŠGµ!i𮈳"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"adö• >× ¥~n´ä3˜õq;w‚Ÿ2Õzãi{‘´A§qÉö¡®Èã2±5– Žh­Ã8»ÅŒvfÑ»—WÑ›Â-9|°Ù3y¿—ü _Óþ`±_ýÔïoÔ£ÙáL^<õ ‡ŒG' 6©€Ÿ˜I®IQ/ÁQ5Ææq°‡Ê%mìȵùñçì__1+êzƒÔ‘¤=›ç_܈Ós˳ÏKbÓ«Bs­b6ÀnÑѤÝ8Î=YÀ&HÆ,xQsSPî,»l|yôVÏÙR-Ëùä2³öò­oÔ-Eèç Yþ.l¢3ébKÊ4Ÿ \±Ç––Jl‡'ÂIáÃ|ð•q¦°tÐz/­†vÞ)äWç˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-g{ã䦯ð£<~o!“Prx›ÑIÞ0‡JU•õˆuÂh&¨«»Ù•¢Ù}hpä½W+Ë!ò§€yÒndòÕŒ8uÑ—ßYñö7ú/Oú[™p.­aÐþ1õTÌtÂp7;~—R2×PÕô‚Ȧ sI¤xͦƒä~ÉáT“"í9ö_±ç<ð­7ñg}ŠÞ²`ìGÿQÞ^góÓQJ¶ÿ2›a„Xžˆ´ÛBo¤ 3§ÚÍ¥×òv¨b³@êkd_~Ãùw°8ã]>üzùlSz+¢8?èOhÈYDWZØHàsç‰Ø wCž·ÁGÄ»W+¥ùk5?ˆœø£Ô“5RRèùCõ#€)ôÅ<û\ù›ÎqbÕA>tNÊwB ².>)o¹MÛp·&’{å.ÿ>ùÚ½‘Gp_ƒ¯8Zn¨¹ ¨LæE$—ÏÖ»®ëÊÛkË%æ~ìžI'„LìW:ܧgå9E7eÆ›‚# ™i-¾zë²*«WÞ¬"êõoñ‘ð«ägZ§Ë·©^rxµ£^‘©ü|d–Ãe«+IüÀ0kf'HÈol`JÏ8›‡g0ݺ¥‘Q ôCpd^‚V4†às 6×%ÂgôKÓ‚ ª öXI¤Ñ©Š¿J!Áz}Êz[H%®ÿ$\Ü"aO“ÏnЇzâáÏRºZõ¯’`øEÿè7Ç=r‹êÉ.ÞÕs«|Ä*ô•Ie66ÓìÎ ƒØÞ†RF»zÓÔ„Ômbz³»ŠQÿ ÕÏ^ÚL‹Âœ_z¥à"Vöîð‰ÌHfÉv‹6Kúl®røÛ\Ù³¦gÖ²x“AÍ‘ÅûYu@áç§Íb-ía¨¯º¨¿QÛqºzcã«Ø*nñ¢-æ»9®9;wžA^ñ­°?F%ÝúÉ_8 òí z õ7¶‡4›ß‹ŠÊØYÞ[ZU/9#å*úýÃØ/Þî÷T›Î`Z y¸¯*Uÿ•º²_«ˆ…y ³X­yäºSbÚÍ)LÎg0’Ãá‚‚Ü<6ÇeaTAV{5ÝÁ˲-¬a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-üÀSŽ6%ûåY£¼ÉèOmünEá–ß6—<Ù~ŸHX½:±±.©Ë†Í§á.¬óË’¿m„÷cÅÙ™X?œ.sPèÑ®VF‘dß ”sÝA"ö»Åaç«¿È~ ±ì ÿÈ^hôN±‰ÔJF$1í/FXM5Œ•úE/¨`v„¬¸qÚþPScŽQ¹æ£QäŸyoàŠÁzKÌiù¥ÒÎö¯‘n:³Èó£ÖæcÄ®§Ô¢Þ ô){ A¼@éTD§l÷^º¹?IÖÈ·ÍJ1Fô,v{YcÜ‘fž ùEó'¾@va€K#ÛºûHÎé®l8€·Æ-ÈnRʦƯ_ëËî¦èÞ¸H B®{zh¢Ci™ƒ ˜tlL-‘a˜DÂ&0‰„L"aº̦15c M ‘°Ëcn³ül‚2îÞüÆáúeÞgé;5Xþ¡â?€…?c2¿bÈ©Ç$]öAÖǧ<ÙB¦ª×Ÿ¡(êaÙ++l[0*é4Gå.è…T—¿³òš< § m^÷¤ô—|)¾¾Îµ½‘TMü·x‘ó‚ –Û~œq[»nÊ~eô‡£›œÒp_¤E) µQVIkp›M2 ÓÛÜÍ©ôFX­9m='µª›ï¢>Kß½ßoy/Ç^¡•QrÁE`µ(Ïl;ù‹ÏuÛZ̈&ØÝaùöZÝmL='^Éá/‰ØTtÒ½˜Ÿ%±§‘sÚ„V¿“þ^çœþD#ŸþcÅü<:É}ì·Ö€ûMM–¡Á5°x©×^;Ú\¢Oݶ¥Ö”ÞÝÎãí×D_Žümì‰â\#s|¤^ …Ø…$àÅåZ/ÍÞxgq$•5ö©üÔúéQ¤@ÆéqÃJ?g´8óßh»¹ Ï}‘}xø£ò‹êür¹ú_Ó|—É£½{é›B5­ò.„ät*³­© Ú}Ú£¶×!ðJ†™²¿?*뎬…?âÿùó@ÿb<¯çZmVÞSä"ëZ¹ƒ¸#Ò}ò®—ÛŒn8Üz¥ö·!c%BÈ+êRë(G])²,ëÐW žh[ºÿ” ¡±ª6¡²®H‘È‹ÇYæŽÂ¤Wh‘ÀÊ! pGH/Ê=w¥:E]s¾:"ó±áqzkѧúGå·Ä–ÕÏ<.?1ô߯W0ÚöÍRUÒÈÓ„šW ­ès$¦à°}A€k0ò¼²Jõ}vLP”‘ŠD‹Ô&0‰„^3ýiø4gw÷P3ÖßJ°ü›Hî/G˪蜠[ù£× Þ‰–ÿ¿sñkmL𥫹Kú1'ŠêS YÕšMY"m™ “PoÉEêÏÊ(Ü£ùo̓ú1~Iô8ìO!ß\©WqÎ,õùè^®U›rø§= šho]khñÂ{çO¸DÂ&C¾ ª_-S5ïŸhˆŸô-CU°ñD’ÉÿcL¢Mà/çæ/2;§Ð“Wö^^œKßäû6FÓá>9"˜°‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Zeù‚¨çx~ÐRƒ˜úïÍþvõG÷?Ô^R€Çç»&$MU?‰W³¶ÚÙÈ¡¶9¤¬×èìõzßß^MÊ\’ƒC‚ŒúÒ$Z§ªiß>ûsæPÅñÝáš½Ïãµk}ŠdçïǾ‰Ñu¯¢¡úÇÐð(x°f•Cìz)7± my¬p-ÖÖY$bO”À:ot"¼U¿Ç=ä¯äoО£ºê²^ZëOo“uN›|³UѬñdùª2c]iKÈÆÓ Ñû¹ì ]ìûÃKžŽ¤ä:jc\‹Ð@fà §€PÇpÈ¡®‘"!)r°Å J=v‰|*‚éwÚJ¥ß*'×\u­ì‹‘„L"agrY{§k)}¸‘h# nIÜØ=C_d<6ðpˆ:-Šê̬”ÖfåÊ}!…¨²$nÍí†gIjar"…£þôñ\’­iºFõ5ÏX<ôrJæÖLb»’Ií†Fß>pó7µëöz¯ÕTìJî¯&-ö4Rd™ê¶7ÌÚ™d1Æé ·ú[—J«ÛBaž0œKN ×S”«x´¶¾–(˜ÍÍÈÉÎlà¾LÙñi[b'}Su-çT•à×Ee¶!‹™ÂI–´NÅ‹5L#ª”š ‚d¨Îðkð‰ ¥Â»ë”ÖWk¾ˆ¤Ì"ažCÆý/è˜IÔWÅW-wâËcÎ^"«Z.ËÆÉ«ø¿^ý YÝv5›(« PŠ9îQ`þŒ¦&ðÙ“³íºÝ,í²Ya÷ (ÚÖPˆ¦Ï‚²Ú<Ï躒~‹ÝÓB{çÕ•— îh»™®qJ^n’f[rÀ¾Y“4`öÇÔ¤ëIü‚& È6ÄeÑ9 i¹$ÃkE>H·W„L"‡} ]Kíúç©à'öŠmgUÓªþ/jsî`½pó19G‚›‡NEÛãŒaW<¶7÷#hEwÆÒåi (Ÿd\_5Ñ‘o1ùæó¤'Hõ£jˆ TÆJ éµÿ"0Ùåà€S\½"{Úê;¹mC !gJ\£L%UITŠlÂ&0‰„L"a˜DÂ&0‹KËÛ…stO;û¹á^ÇC¥9ֻ鷽ñÉÓ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&j¥ö»°ù¿«m” ³jÆÿŠ›î»>ËN2÷Ý~ €ñëŸ7ÉZ ¦L¹qÁ¦.±Æ'·öØÊÎ\=œÊÎêê(*‚ÞZè‘@ŽÓ[ã÷äßVÌ‹Ì>¤¿*q4yžÕª¥ža¦eš­öå=Mqçù…1>k† Iµ§NM08Â/>›$×[,œ¡õ©³Jͤ‘²%~d÷—’¼‰ðéœzޝ®Ü~MòÚK’»\‰ñÓ*³ëJ{çÀ“ۆƿâžN?ÍVM'hÝæ—*5O¨à“GD+K~Z¹Øg×óšžoÓÊE· [Œ^FÎåÈ–Ô¶Ý0‰„^;ý‰æ•J–ûWδ¯—>g¢r[Ú}o-ó=2L_ŠûòinuÏé^SÛ™½´`©zÖk"tþ¶»ª„mºü”Q NÆT1߇Tr"õ'åW~lòß›<ë·]÷AÐTå+·Qº_¡Ü÷VWqÈ7òôJH“Ò&ÿû)tB)/´Õçj¤šŸw:"Ÿp‰„T›Õß>7öÓÔ6Sé wú¾g_7:2ÃçÑKÓ§,fV¢-Î8‰JÍëɱq’ÌCƒ{ü[öIi7¦Ie*±ùDÐtטêȵ'@×1šª«…Œ@Ѹ\L„Öî–»ƒ‰Šö¢‹šäêêâQNON¥îðäI.gbê¯Ù»„L"a˜DÂ&0‰„L"a˜DÂ&h¦Óøåõõ‹sJ=ú5µV2ûþ¸¸Óò,o©u–_—¡~>¬ôÂóæ{!D!ÀÈ\OôlnW)šÝ–Keræ÷²x­Ç‚"{ TØT€‹ztGcщ"}"—E 1 :$oŽvºC”¨ÁªJ)«¾¸H…E¸×*v2u´¹"ûa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0Š…ûûËvª¢þ]d¯^!ÌÅÒ~ôñÏ©%JLÜÛ‡p¯ü÷p³X3Fxÿlqé…Ì\Ù›—.Þä“K!®¤‹¬…”N»7‚.‡ÜZºm[Êž ò䆰gô§¥¶q1hýÕÔ”ªÓ«®ø&¡V½W-“B™¤sONä³@¦ HܯLò+n‰¾W|Dðÿ–®šªÆõ_¨=G!¬=)ëÙmbL¦?Jõ%:ª«*êB ¸UQUĤÓVhäÂmÓA/3ÙƒüÅî7ÓĆtå "la‹ÇlK˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a¿ÿÙ endstream endobj 725 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [415.713 302.498 426.48 315.45] /A << /S /GoTo /D (appendix.A) >> >> endobj 729 0 obj << /D [727 0 R /XYZ 33.853 921.043 null] >> endobj 567 0 obj << /D [727 0 R /XYZ 129.528 524.582 null] >> endobj 86 0 obj << /D [727 0 R /XYZ 68.868 472.776 null] >> endobj 730 0 obj << /D [727 0 R /XYZ 68.868 399.468 null] >> endobj 731 0 obj << /D [727 0 R /XYZ 68.868 375.06 null] >> endobj 732 0 obj << /D [727 0 R /XYZ 68.868 350.651 null] >> endobj 90 0 obj << /D [727 0 R /XYZ 68.868 260.531 null] >> endobj 726 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R /F30 591 0 R >> /XObject << /Im3 717 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 735 0 obj << /Length 2515 /Filter /FlateDecode >> stream xÚËrä¶ñ¾_1¹qª4X Hb«tÈ*^')¶b•±}€f0#fùPøXIÉϧ ðµ[NmÕØh4úý€øî²ã»ïßñÕïÇûwï?I¾‹c¦•»ûó.O™är—Áoœg»ûÓîçègû_ïÿ>žƒCr~–¹„‡ýSŸšêcóòٿؾÿgs|2¥Æÿݤʢ‹­mkzÛág‚>”Íþ ²è¸‡ÿ¾¬9Ê“iûâXÒ‰,z.úGZµæT„Ó:nÊWÚ8]ßCoOÈ×îà99Ä K’”ø)j@©ã.ížöX€8è6îÅ2""4©‚ߌIíuöiŸ‹¨iYGEYp±é‹¯(†E(°?´Dºélw0É£çÙþ3£óCçAý£%}.õ/` ÛA¡wÃCqüX6Ç/[ÊOˆª. «£fhé ûbª§D;$‰ˆî·/Œ¹f\«@äÇ\½ñ sÅòL,Õ †Ù–…©Q’¿7—ë’$LÈQÓ‚’¨Ï1SÙU‰†`îäÄMÔ [t¦²´U™<æ"úž¼°h<>úšðšw€µCâ&!eÞÙä(s¬—2wł͙îÜ5•}~4=}Ðç¤m½0Þ/ëÓò̱Á]p-°^kæ÷bÇ8.jûÒÓV?ôM[˜’Ü7Î V|Þ;ïÄ:zÙ€ð â÷ÐõeËr¹`¹–otBˆ;1™ît"ÚŽY\œ›²tR=ãeTµßì›v«––`|Š©¶ŸŽu´4ýtΙ(6t{Ù•·QoZ¯i—h‚ÓxM#ñ“ý°È‡×ò"÷9!'Êç¶©ö«Èv¯Ý>ŽXÙUìbÁä}ûJ;À¿c]ÅÉL…7´y×€§Ñ9?õÉ…Íô,:ÏG÷γÄiΔ‹ÐQ°Ã¹5—jô7‘ÉybFTSø¢ÜÝÑÇY¥ýo¶]€ÀÞÌéì<ÙÑ<*q³Z Îr>–«UéeìZ%Ô‚‰l¦À:(œøÜÙŽ.%³ +£Y|ôUØ’À3÷s§½@¦ög §ú‰Í‘’³4I—zøçÓ(樌ƒRÐC 4Dô«¢Sãºb€t A¨+ÀŒ5„“sàα-–ã@üeÐ’p\!–j|/M[f¸cjú†¸ôÈÐR î(˜z"aú­œï"VBçŽÜË„Ggst3'´€$$îvÍPžh]™À%~‘þá\7uMNˆ3™k`]ë9¸¶Ü­çÎ1'£_ú‡;ZßXˆu+cgž9蘀À‰L Ø ¡LVð½ŒQðC`‡àpÀ!Ôºkm"´L©o?‚«'i þ}6C‰•òkÙÆÃT¿µ„dŒ‹1KÓutuµ]äÜ €C=õ/À8Ö ÜžäB$ a©d”¯8Ý‚³å2þæi4íÉù/òßøé#Ñ,[Oð„ bìc“Ä9V¢øênÆÉï7wgÈ£7œ| v4Íé9÷m8Bœõr°}:pîbÄýúpÀêÜ{ZôC3Èœfð9È7EÈ`ÓcÂÉÖΈgzjbÂÇè…„¼pCóWšy¡ w)heøÍ¦…K–ȱûwU7Î)óÀ¯ 8åçZPˆáª³¦¥aÈvaÏÒ‚tãΟéE tš!é mƒqñµ ”‚wv‹×«µh‡XäLéx©ò«­YUÛäS“> 8®H×Uá›ðÆMtÑ<›÷U[ÄJÏÌZŽót-.5Wøåߌš/”6rvç°ðî‚Kªär¬C¢µG”Ë`ךÑƳ•Š6Þ÷•v)0Ð@Ð_®õ˜çùQȶF Éøô„àåVzüS†gÞ3c¬QJŠÐ kzR{l:[Ó©9“št¬ò cħ1BQÜâž—B,M•%LŒù‡Mw„1 ÝÕÊ÷ïàžPÛ—jýn’ˆkgD\å~FÓ r|ðhÎÒaŠázV†àZ,ë1\™âô7"®Ã{âPn‹KðÍö`cËèÆ!UoÙ.eÙ4=?sÁž÷~Î ŒÓt–Ãt&V³®ÿ+NêŸæ³oŸæSœè§ž/TãÉCϯ«VÑ=½>}Ûe¦Sgk¨.ÃÙ¦ÄÖóY™-Ä…x'`°ÒØA—¦’MèÎw÷ïþÊ“UÈ endstream endobj 734 0 obj << /Type /Page /Contents 735 0 R /Resources 733 0 R /MediaBox [0 0 595.276 841.89] /Parent 710 0 R >> endobj 736 0 obj << /D [734 0 R /XYZ 33.853 921.043 null] >> endobj 94 0 obj << /D [734 0 R /XYZ 68.868 384.568 null] >> endobj 733 0 obj << /Font << /F30 591 0 R /F33 429 0 R /F17 421 0 R /F23 427 0 R /F27 556 0 R >> /ProcSet [ /PDF /Text ] >> endobj 741 0 obj << /Length 2817 /Filter /FlateDecode >> stream xÚ•ÙŽä¶ñ}¿¢á—h€mY÷aÀ`Ä»ØN ïû`ç#±»«¥¶Ží|}ê"uŒ&ÙÌÈ,‹U¬›·àðþM ßß|û.Šaè—iO‡¬ð‹¬8äEæ‡E~x¬¿z‰ûñÃ1 £Ôûx{8Æ¡§+ó[&•M×$O½îÄß'øD^×Öº>ÞT?šªÑ¼bÚXu¯*Ü6<üóñ¯ß¾ óåùÁáE~˜ÉÑÿh+Üœ•ÞóC”{D(ð.ê!*¼Ï ˆiݺfÜñ"০{8V…¨¿ó"óx7õzÌÞ`‰ ÚØmˆ æŠÇM6ð:2M¼éjd€jåì':Ä礂¢daâ'IÆ’Ù«Á³ƒN=kÀìßâ4Ÿ¥…¥+ާ "o7 €Ó!Ì(Ò@Äû _Í^=H.ç>1µ%äCu;¯Ì‚`Ã1J¼#—iÍhTcÒ[(ÜeÁ hhª«ààÃ…Æ…Sx詳2íÛòÎ4š™ºjÙˆâ•ÇQáq¬KZwêû¾›n{v‘Ÿ'‰ÝòlÆ IwLâÀÏ‹H„LyŽ=FIæ©Û­ïn½Q£f€“‡§ƒA®$(¼w8…€Ç‹x¤¿¨ë­‘ÍVJ›¦áQÕkG¾íÚcßdˆJÖ5(³Q¨†ç¬QÐÛ°§Öª&SYè;Ê6ú޲•¾aE ÄÀ80rŽÚ¥U±ö­F"ÐHñD®÷ï¿tãpÔÏýu7 也G©Å^\*1 Çïp“ cö»=Ì4óÓtå~\rpîû„HÃÄû?)º¸Ï÷¼µ•ß‚4 { ?I³µ,ÅØG”[o>é{>÷›áήqóðÍÛ=Eµ]UÍßVl†üùÁ.þ°ÿû_Ì0*ò Å®ôµ-£:¯˜ ×X"äP7·çÉÇ~â vÜ“®"üŠÕ@ô’¥M~Z”Ö&ªŽÃ Ĵ˲ðÐ]J(Kk5à]¾¾ ˆÒ¼äL}ÏTÃÜ™)^Ð'QìGQh‘f8Ýéžð„ç ¸#¸áes ¹ 3lj1]Uòáúª$þ¼¢ çŽçA`„aµ˜Ã*ååmæi×!Ã\¬tBî‰Zø‹û8Q+%7Fpé/‚:Ïè8ˆ`–žv1 0`êŠ[=Xé£Ô/¡îØZJ°Ç{â§iì8?Ùa>‰ý sˆdwÎ))&±¤&Ì!¸ƒÅëCQÿo4F}D¯0IáÀ̆8Îkœ%[΀#PrÇÃ¥Y1äù‚-‚l1+¬d½êåÇ)¤¸lkb#Úh”x‹Z-Š!"þ[£ ¡äCêTÝDhW{rG„kçšëH´#}ûE’¾î?‘˜ ñ¡Ñ¥`€…ÚE8FS#ã-Š$€K–¹ÃÀOód-·þRiÍî˜Iö‚o××”e2[æ, •@\ôXL_dT$áŠ*¡å2*;iî}ºXTµF€ÂÙÌèn.-×BÁ2×ÿÖPt¥’½k!aj¨Dμ^_;ˆ­,*‹…æ{émgöF:°td«ƒ `T'Níy¾ '| ªŽ’J‚Ô’d›*P˜ÄÜ„5VZÛ)_½/ïÔ/¥Ð†ƒ‰â©ÀlmQB3CEkE뇖T¼‚jã4vP6<“oG•éÑtafÜSɇ†}éøÙÞ;þ^9&Õºa$ ®Ç§ÞŒc#ÎqB¹§^fÔ DÌ£óWí­Ýü|4u=OÍý¡=¬bã„%¿3»éÊÙ8Yô00ÆŽ¬¦°jÉÐXZž+þ°aõwž5ª?¿’¾ %þçzÒÈ‘ÖÛñvøÞzͰé0.,ï2»€ÉI†SoówNv¹ºjz”Gåõ¶E­^lñmÆU>`\TNæíÊ5ÙŸDý˜öÚŸP]Ò>÷ê³ïþí¾w34÷sUEž%øù­Q•æ çpôZ†Ùô`¡„qÄ%tmÁX±ð0CÏ`97ší gœ†ìaìðQÅaºux1ü#(å|5Q4£µùÚ(Ì`5%òHÑO-ãJ K¸»Ïmw9/½Ç ¼ÔÍUïÉ&Ùu馦–‡ë Qž­ºÁò¸ë ä…!ÕgøûpÝz˜ºÕeç& £àX S;Y¨§Fû\¼3g´Vì’°Æ ýùÀƒ_Þ¿9üJøÉª‰ ô³t}¦¶§ «'ý̃Y>âù„IwåÉkqa{ɯötƒ¢ätƒßBá„)c4®¶8¹+|ÛŽÂd…¶îí×0RÍj:_ãy±_Yäià+…õmoËÜ¥ Œ`<Ž{œos ’ÖÌÀzEÓýpjÆA7'×lÓx N‰A«§žøÃ±#õÂb¡Ž‹%Òò˪Ô4ÈFÈqV¾þU#¾”“1ƒf)S ÀikÆ2)YX˜.N+tŽë­7|Ï Š+ã'JWÜ+äµë±}‘ñ¼}§K]zRócEÊÆ ÓçK×h;¤X# 4Pn†¶Ô\ƒã̋׹dèŒË iÌY„Éð 6½¶O[©$Üåz%Ѫ×Çît¼*~„ã—¸”žê^©ñèIsŸgz™;±q! Wø ¹ìBïƒ>¤¹óÚóe"AäüÅ>-ŽL€j"\/–&´ÝX5Ap‘š—Ù‚ÜáÞ 3æŽ8½œå«Ði¢¿ÜšÎpæÀÓŽ¿ CDçŸXD2¨¾Cïjªg˜Gºiä‰8w”Ûƒk×˨ꮷɺ{sß/g¤Vl~¢‚^B)$a¥Ž]ž€W/sE¼mÍb…tu’ÈŒJß?Þ?Æ%ñ#Œçº7a°@mûa¶–n[*”åSAÁ¯•Š /y<Iá%½´RÂñÜS!΢# ²ò`-¤HBM´O,݉ñá‰0Ê ³®è"Šíþëònbhr¡„¢ƒ’Ì„€á‡p†‘›Ú¾ëðùÖ®²¬vV2’âÀîÅ–{´'ÓQ[Qcy]Àï,êN¸âB+ßrƒ°jÔ{˜‰ÞÑÌ¡_†–žÊs«ŒX+zH¹€éYÓ®Y’ ×®<Ÿt«zÓí©ÃÕDIï Q¬b'½P©²Äûˆöª×( •xI"?\ )ö©öü–ý`•f)£ŽS»¡´— àDFÿ1™þ¿þc=ËðUó9ÈÄö¢{Sºa£]_­¢.ŠÁhO@ïÉ ‡©¹Æçßà O2ûXœøNÁOàœ’r´Õ_Æ?ÅïfH‹‰u~,KmnB°û¥ÆV}Ë¡7™»MÜÂFI´–Õù=¬€+a˜M8Ƈ±aší.CM± á²’ÞDî 'ºSó;>ƒ?wƒ80¿‹™ÍoM©++¹ÛLs\Èž’ŽÒÌÔÜ›û[X^ÿ¦Gï1 ”Oø#`¨fµ¾v-·ä5¯Í=9,óIë“4{ÅýmVwÁ3 å!/Œ6ùWzs65/.ß"k6t€^U-¨”õDžÒOc4Wçs¯ÏŽ$/G¶´EŸ,%¿Ð‰³åïð½ðƒ´ÄA!<è~~  ?¤¤—^åº0“__ÓU"@ð¶ÅAÌvEgßA”“v#™ÀÝaÛZlkyûœ( ü2,ÉÇŠ0aÁâ`…ôãã›ÿ jR endstream endobj 740 0 obj << /Type /Page /Contents 741 0 R /Resources 739 0 R /MediaBox [0 0 595.276 841.89] /Parent 710 0 R /Annots [ 737 0 R ] >> endobj 737 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [335.321 359.205 343.167 371.824] /A << /S /GoTo /D (figure.4) >> >> endobj 742 0 obj << /D [740 0 R /XYZ 33.853 921.043 null] >> endobj 98 0 obj << /D [740 0 R /XYZ 68.868 798.142 null] >> endobj 743 0 obj << /D [740 0 R /XYZ 68.868 132.347 null] >> endobj 739 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 746 0 obj << /Length 1235 /Filter /FlateDecode >> stream xÚ}VKã6 ¾çWøèŸ‰ÝÛÝ)º§3Àv÷ ØJ,¬le$yÒüûò!'Î"(“Ô'ŠüDRI£c”F®Ò_¾üO£,ÚÖI½­£²©’]µÃê}•&õ®ÉvXʰ8ï*’&ÍÙô~5¦³¡ÊrRвœÏ eô‡Yý3~³ð²°†ˆ6·~[=¿@Y–4U•Go‡kØ»,)Ò,zë¢oñ‹:NV®7y‘ÆåoëMQïâO¨f±“ïë,žäØJ6˜ãÜ(N®7Þ±:›£öðÙÅf[5y¥Ø(—²ø$¬WpD«¥cË÷´JÖ ëo_ž_Šb}QÕIYT/~´âCù "WŸßŒbzYZÑ·J‰‹o?Ò¨ƒÅ/p5ESGg‚p#Û·éèÈ$ÆîÏ,we²k¶÷”A629]8Æ{†Ë"I·Å"d“Q|sýÀý”uÒ4x%ÜEÃ8ß1e•Ç­W(_[%¦1gå{–œN:ì”ZÀΖ•pcç’õ¦Îòø­¿Â€î_5 ÁÚÿÌà¤þÀæ3Tä9l²2)ËmˆÛŠÑiá•…†ÒÙîâýäQ¨ãsIi?.8 åVOÎK+»'Ðw5ìÖ?y“5þÎowÅ ÚàË‹Wˆ<4ž05>êQ°Â99`R{}¡‹Ùù6nÅÈ3!Y-{%0v 9ÌvIU5ÁkÅ^‰Ù"oâƒÑÚ úLU&?yceÚ~R9Fy:… ÀB~¼ä³Gõ>É×RØQv¨Ô±ºnRaÙÉ©zbMqíXCGtu!†¿¹‹?°âÌ€Wi<Ê3 ‹¨ý›Ʋe‡ë^<¥Š{ÐrÆôMiuì)}aË`l8©5P·ªžRBp+Ga•q0ÊÛ@k˜0ýè:ZÀ¥+ê°ð;€_fµiì¤eC?6бcá{šU|÷î´áqòêeD¤oHÓ‹]ó§7§×VÀòqJèÖm]Æ_×5•C™6PMgi 4‹…Ãx¥7Ì9)Þ0¨µRx.&T÷š«€.ô§c,Òo•CòC‰‚y9fè`3øXW4–{ÜZÑ)õô(‹[Pe ¾4¦I´y6]GÈ«Ú¹Õ Î,­ ³ckx@n…&q¾àÊDøëÌ£¼ÊE>OXT)Í1¬Ía.3 ÍA—±ü÷¤ò¬¸Ë0Ho‘ú ‚,,¹âiÀØ5÷‡Ùf¥›´»‘Z3×jÄ;sÔIäºn(«i¸åFõ ûáî•Ø†º¡ççÅðÌ€ÃÉ® 2 Ð2œ&?‹Ëj¼Jµ–¹åËYÑÃ’WXªyÀ¡Tñpí Kt­Uóãÿ¯;ÑZTp£ÜúPAˆñ¨ƒa®çÔtÍ5Ö©2„ÖÂEŒR ~îÇa/xÏyÂÕø S 5† ‡m Ü&Rø„?š®}Î÷„†0Q8;Зs“&]ÎPº½? LÔ(Q’ð]v?Ÿ¶ðŒ¬h ùƒ*l€C• ó£„>¿^^7“§ðœÒ£x?sqûe“çiÒdðºäy‘EήŠûß?ð;í?§<u endstream endobj 745 0 obj << /Type /Page /Contents 746 0 R /Resources 744 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R >> endobj 738 0 obj << /Type /XObject /Subtype /Image /Width 512 /Height 344 /BitsPerComponent 8 /Length 37946 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂX"ÿÄ  ÿÄÿÚ Ðíï_â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€:Ûö…þ„_áWø@þ„_áV·(b³¡Wøußõþ ÿ¿Â¯ð€+ü ÿ¿Þ)×ËÌ ôy\o¸ §ö®€"ÿ@üù÷É+f޲Ä:;º§‘¯¬›G&=8Ók¸ÿÚënÉ|Y¥´g_²!·Ðÿ@ÿ%oÕîN^'‡·ÛßLkùcœ@ýoð^öäM:Ù|M–M*Úÿ3˜§on(¿Ð_è€%ó×…Ö#ÇÕX?R~ùxù£Û“Ç©R÷ñwî±É×ï°Ãã®Ayoô/ð€7úßà¿Ð_è€x>pëµ0û®u؆t¬ÑrøÑmõËùñüŸ´•ªYvÎjÚ>'üŽßè_àx¯ŸÝz¯mœêüT€7úßà¿Ð_è€ëýƒã¯¼î£×ÊÒó›éû aö7»ßóbq¨WÆ€7ú—ø5ÏÅÏ™ÕãÏÃP¸nÞ–pcfÝϽ÷WþÊûŽ~¤daÀoô¿À1š˜¯ÔõµøhoI÷=HŠï,çà¸Ä€ßè/ô¿À×ûª»TS¼ –`€7ú—øðýO{}G؆>Gö×Çë…ó÷½ÚËq†îmôn{#ln2 è°ÿ@üð¬v]š°žŸýñ‘Ü®r?ûwî{îú·vIŸr6H8H ¿Ðÿ þ€%þ"wuÈÛßÏùûå‡t{+ü7j¬ÇÚañØ{¶ßè€c žùS§æîÖf ÕzÍú~#»“€æ«gýÜpìÓ™Ö›n6!€€7ú‹ýoðßè_àF)7Üà6æÚs7«B¥¨@ýoð=¼|û×r_÷cqmõ ¼ïcf#Û‹<ÒÓbñVÇ€€7ú‹ýoðßè_àoô¿À×%=ß €7ú‹ýoðßè_àoô¿À ¿Ý@·ü¿È/ò‹ü€"ÿ ¿È/ò‹ü€"ÿ ¿È/ôhÛõEþ@_äùEþ@_äùEþ@¿ÝPw¿È/ò‹ü€"ÿ ¿È/ò‹ü€"ÿ ¿È/ôi¹÷úßà.Ê3H¥¿7¤;*{ß/V5ø§¿a$²YH  þ€%þö“KaMŽþjm>obâ®~)‹J÷Pþ@Wðö“œ£‡>PÉ9ÖoáòÀH ÿ   þb¼Á9oÝŒGâæ`€7ú—øò`^=€ÿç3Óœ‹°# æÀþ@WðÅÙÍO`=SaŒÎ0WÄíXÔÏ_¸a +ü€0þ€7øoô/ð -3ÿ[-pâÖý¹óÇPÞÓó.lÊc/¯@Wù_À‡³ L²’ƜͿZÛ¶-.ôõjýç5ouçUÌ2}“†N@Wù` ýoð4_qúpàön½Ò“-cæÀ]g6“% ·éͽy87× øÀÿ@ÿOl¤¹*6ÿó±ùxy¿¶R_c0‡s†î)”:´v—Ø|pp¿È þ¦…ú¬Äú ÇäòxâÇÍüáù÷Ôvë‘Ü2ḵ'ÑÀ$¿Ðÿžur»ðZÕÿÎ/%Û߇‘÷çææC~Ͳ ?½BwÊ` þ€%þk/T¾éÒî?·ºôð{¯_êÿç?úzæð¸.ÞRêí)°9.0àH ÿ +øB™ñ°î÷äYÉ<~aá{¶µ–×Y6ofpð^G@H ÿ   þ¼²çgµs\vœàåÅOù|~^?žÊº™öýšóJ4P  €G{ÝB1E·¼?öwÿ¶½5k6!|XH ÿ +ø`{ÖRnœÿܳRc{«¬xÙmÂµÍØÁ;å@H ÿ   þÏï5fF·Üu¤‡¬–¦÷c&ýy{ 80^ÆÀ@ýKüùý SÚÂÐTµ$ü +ü€0þ€7øoô/ðþ@Wð€¯òÀúßà¿Ð¿À@Wù_À¿È_è€ÿ@ÿ _äH ÿ @Ûð4l·ì€ÿÄ- 08@7"#$ÿÚ…ásSÁ­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±Šƒ ÎtVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅAg:+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlbŒÆ†¡,ÁW;énä¥w5>¤f¤v—þàÇtqÁ, s¿¼Ž‡Œ™,Hº+¶ä·üŸ|¦ÁŽÓ±~Ƴa¥•Ú_P‡ ühr›ùÉÐÄ™N_@•œMËÁ\½`Ç}¶„ÛH™¹æ=dÒ:@ÑLÔ€uÆ¥ ÿÀ1X1Ý–K˜3Æ‹| <Ó\GíÞÈé!°ˆèDl ë•’$IñÊŸ|¦ÁŽË­ÖˆÊB–ä1¤çfºør2€§þc»“äÎ]¥–kÕ%îV0z6ÛLx¢È°c¿Àm^.§+iàŠëdµÞåZÌÖÓ(•`Çu} ' ~,гY„Ú9£+ñ&½#kÍ!¶Ú“UŽB«Ê‰õ>ùMƒ‡™¤(ȋ҄;‹üÙ¡«À¸½—@³Ç…mÖßoV z¸1êϾS`ÇZúÁvò£.¸dÓ£ `_q]tëÌßÇhÞcPàé߃t¶ëo·§=\õgß)°c¬É`œ¡]#ñ¬²ïÍâôéó™¼ þm4¾ãúÚ—˜ÇIŒÒAîœõpcÕŸ|¦ÁŽÅöX%“Œq“¦¿‚è€Á¼ mñ¬Ò •Ɔ Ô&‘>œíH§“¯$…ÔE”÷ Gc=Y÷Êlìš*TñiÊà³zþ×Ü'ó„&ºü÷ÃP‘©Ž¬ìÉÀ#–›Ñâ®üs_`` Ëæ£5äÅDÕ¢=x1Ú”¥Dx¹21˜ÛrQnÌûå6 v*x´ã™dÒªª¤% –e%uàÇbI“c$—»ÀÓÍ{A4н¶Ø Á‹pÌ«ñˆÈ«i.4¾¬ì»m†:sèë}K8tŠ”-‘ /ØŸ|¦ÁŽÙ²¥l±ËAo±ƒne#hÍ·ƒñÜÿ2&…î ADïÀƒ[íÐ`IJ¡é˜äf¨’°”¼C§; j$‘Ófi`y9BÿÐ,!,ùô°´M‘ê(Tœ¤ž®Kª}ò›=\ìOp]Æ,øo ÛuСhô Àh6þ×p Žoç"˧:Ì.L¼û1êì]1 M k´¼èâÝuÁ mö]Ì˱²³QÚ‚õFéŸ|¦ÁW;3Ô!¯-oÔ0¿–ûü¸ÚŠ54™ÎGŠŒc 0zpc­ìˆeÊÏw3—˜«ë®·i­–˜Ñ?‡ô³ó}ÁÝ f §À”‰Ó>ùMƒ® v²-iKBZ¸KŒˆ––¦äUŽâvœdV vŒ–óýV×"µ}m¼Žp–|…¬,=Æ~$µÅˆf6Ò4hôϾS`Ç«ƒ¹âùíe´Œ»Ý1LZŸ"õàÇeI4ŠÂ|·ŽŠÍ1o·úo¾àõ PŒŒ.>Ä$h}Sï”Ø1êàÇpƒM¬–£ØÁŽÜµ%ï°êR‚Høã )®}ò›=\õpc¸°Ìg¸Œö'ß)°cÕÁW=Y÷ÊlõpcÕÁV}ò›=\õpcÕŸ|¦ÁW=\õgß) È3±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1PdΊØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[¨WùÀÖØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[¤È™e‹’X1ÝVw%#9)Ua%›1Ü”ûm»HÌ–óyh«•üÁŽï£q (¨’HOMQ&°œ½.Ç-•{/°K?Ì*ú³¼²áFoiKÎVºSVKd=/2pc»,µN •fd-aD©­ŒÿGË ®Až$LU÷X1Ý<Ü,s(y„â©•¸ˆîŠ£O®TÄrXŽèÁ«:P,jʯ«;ÙŽ  gÊÍ¡\j ¥ÆÉ”ç³éÎÎ6¨”»O/2pcºëaµ^ßï-:2T“‰¬'b4”Ú­Hù É¾°cº¯§*½9OR³i-U­Á…ìF[„›+GÜѺ»5†’ÊÒ°«êÎó᎘ýL3aŸ§$:Ñ]IM‰ì(:<,‚–zž^dàÇ«ƒÏΚöp«êÎɇÃ,¢™ceN‡Ùyy“ƒ® vç ñD¢³1øèe»£¹ I@믫;ùæ³)XqÎbÈNHéa™•â Š\GzÞ^dàÇ«ƒ©Ã ›nfíÚq.þYo…øáQžôn?º°«êÎÆW¹×­:…‚1ak„­-ðu;Ê3%÷Óë5ؘùlô¼¼ÉÁŽÉœˆÉ»Sd"ÁžÖ vf\‚\GåB×übè–ƒ¥¡þxîDqƪ­‚ ݧ ¾¬ìKkÊN—ßîòÁ`š—¶ûµÈÃ~¡ ŽÅ'ô¼¼ÉÁŽÂº¡DD££†1›oÂéÏ·š9TÜ‘–’ƒAË“Ö\‰”1šÁôUôG>œë> E(”ë:ï7`°ú ¨5ñ^TKoÁÔu³þ—B³ÌÙ'§ ¾¬ëÕ[±Q´Kþ## ˜OŒK+pqª6®ý¶Ûe½//2pc±<:Kµã-Û‹‰¯îñëx Ú&¶X9‹a… WÕ'§:æq×Ü|p1í1wÇûü¥¿œP¬´=l0Ÿ †ÃÔqŒÔ¨$)ôáWÕy^âPÑÎÁ„ aƒ}¡Š Åï]3©m4ÃÄqm ©åæN v2ÝPØ-ÏÅß=¿1{¿á´+Ki`k¨%µàÇV}í(ϧ; í'x'SÌ„'Çm¶ÔõÓQ.¿K5ƒ±ÚĽz°«êηÚ{µ9ÃuâèZû ‡B_xâh5‚ ðpÌ4Œy¿õ<¼ÉÁŽÆY¨ü¯ñu/ 7…ðiÌ^ÿÏþöè æ/ý)¼ŽU¼Óƒ™êþÍ÷+v ‹ø %c¸ÿ&¥·ºð«êι5kI)ìS["eЀ¶Ç^ýu«/·ù!Ô…u¹7­åæN v&ä¥Öü”1’ÃÞ0a\)‹¶ó?Ó­K´`§'.HX1ÚȘHcã–.iTä ¨ÇêŒ*ú³²¢ˆŒ¯s·cg2[¯ä6Â+°M»úÞ^dàÇeÕ°Ê. QŒÕDPãÜ«3"i‡;eÔÒ;‰ßÐnFêÁŽÖºi®„!µ-o³…_Vz/2pcÕÁW ¾¬õ^dàÇ«ƒ®}Yê<¼ÉÁW=\*ú³Ôyy“ƒ® z¸Uõg¨òó'=\õp«êÏQåæN z¸1êáWÕž£ËÌœõpcÕ¯«=G—™1K'áúã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìš ä $kŸ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¢÷nCÄÈýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”Õ 1H™ÿÄ5!" 1A#02@$Baq34CPQ`pÿÚ?ÿ²)L{”¬Ú昭JX‘±Œ2¬$ŒÌ¦Dbd¦b"7øÒÞRfŸqê÷Y™Ê)*‹^ÓýW#ÌÀ"Ü̉°£ZãôÊG’ɺŸMd´ž^Æ(DûX¹ä—®~ÌY~}wõ‰üLÿp˜BFe#r"†#ýfghøðãÃ¥éôÙÎg(…ìª*9…HÜ…ŽE‹:–Ôñ“)»¼nP½Ž¼DŒOg´×Õ¥0©ä¸S¥Ž²®bË~ãxó\ÞRÎcÊH„{eÿÃÔÚ_¨±‰ÊÆã^³lQm ,+Uò–¬˜.¥‹G rÚ²¯Ø0Á3S>ÐE©ô¾WIe‹Ê ÔÅ‘t¶GeÙTm³;ïÄ‚L ˆ•%_‰Ÿíý½cÒcí?ø™©§55†ªœËje[d/±êj*d˜ÙÆFb׋ç .6` çÛÜÅÙ󌕾ÎK)Ch®æ ÀjÚ«h‡HÊ Ñ[ „C2+ö-‚p°Šö‰!”[·Z½¦¶Æ}Œpµ\©L§$¹TƒS0ÄÊX#ËŒ‰UñjÞš«§YG1YÈÜ+¶qU„ì²­ò‘¯óFXè³]HI)h4ÝÒaŸ×V­‹¶VªÖbµ,#r")Ú?Ú?$S°ŒnE13ñª´fFÚULÝ`Q=@Ô¹ ‡×>C! šûÀ¢'üÃÈ& §111;LzÄǤÄÇæ><3ñ-7Ó[KêkR‹ &ü¿' nDÈ BóŠb9Ì -md€¸D˜6` š×ZÒÑt n©’ºôÚ¯¦kð¯a$ ‚§“*—õÔ)æÈˆcBGx>Õc1’Ïälå²ÖJÝûe÷”ò˜ˆˆˆ®;Y H¥F»m[²ÈR+ %k ì ë3ùÿH‰™Ú"~<>Ðô}q½±QÙÛtÊÃZ³k&­FŠVx"G”Z{aë+±Á`ð_¨í9Ì&+5޳ˆÊ¦º(^yµ‚ºï±•ÂSFe#ÍKåÅŠaAÁyÄk-–Ñ·…’ß%haØë¤FÂ9 0bg¥ãÃ{LÈ‘%úþÂRÛ !L{šP J@˜ÖzÂ$Œ¦~Â13?Š~W~œ¯Y¯!ÕvÜLVAn#Áˆy~ñ¥$B¾FÄ^k od „ª3XLŽóqù$õ9r\Hgš^¸)uvǵŠ>3Æciâb'1û13´Ç¬LzLL~câöBþMÑc#zÝ÷ŠÁ"û¶]i°¥ïÁpÇ™œ,7ž!¿Þf#ÖcÂlþÃfM9ÚÀ£ºjyØ…•œYˆ´x ¼Ñ,ûbÈ=eÈÚPÃË¿%òî4qõÑw¥÷wó#h%üb7ä¹þ ôLwdŽðÿ-ó)¼^~ÍÎOm ˆO‘xñ`©§¡S ý»úJÙ™Âbu&5´ò•’¬~FʦäÇeq EYhš`âeØlê˜9ƒ¶‰$œ,uŽ—~’Í7×…•ÂÕ;í'RqC¿ºšBOãbBª"fvYŸHˆûÌüxUáü⪞ªÉ¥ß6ò¦x°evàÒʃfúZ"36–ÂãÈYÒ¨–q˜`²½‰òõ­´«áë͇ãšçW[]}L"„®ÌIö0NyL0ɧ©ôÎ/UcÙK0†Ü têU¡‘…#Ä_°æ¨ûžÁ—êíŸÔ®Î6S<`çZhl¦Ž¾ä¿k¸îóMl¥x“¬Ù^¦{Ub}Ë)÷m$¾C·ô¼2ñ3Ê•m3¨^*¦æ¡Tó½$ëôD&zêË`àá'¼¡Màé\%5ç’x~ŒÀ¦+źµè¡ALÙk'DÛ uÚ¼ŠI„ á£3 SÄ«hðlÑ9½¨ïV9–z屉â–/1Qd“C¡¥cË2dvgY ›vìÞ°ÛVÜo{ŠLÍ„E>³3´r™ØG}„cÐchO©L4µn\ìÅ0÷ØÀ †ü˜ â•=K Çj?1Yfå=I#VqérŸ]ýM¸‰­0 Ñ`"LÝʨÚÌ‹û9;xº²º•믨‚µŠv ýÛkï¿.KIî=`¡)jìù:H³*¢¦ÙÜ›]µQš&{ •"h×ã2rÆ."|XÕ8ü ºzÀW»–¿6ɘG F®,nöJòÉ}P¨’«}ÁÔJ1þ¦œño/ƒÁÜÅØLännœUÏ)µ…8‚€%Ë!œÁ<¢VÇÙÉ%Æ/]·’·býç²ÕËm'X°ÙÝiÎäE?oöˆˆˆ b""?b&bbbf&'x˜ô˜˜ûLOâcãAø¨ Ákµ”Y`Y ̈D& ±`¤˜K˜dĤú«Zc4ÞrÎjí;']IÂÓªišW—E‡×_)^¹q‘‘('rL¬¥^èýÊå.æoÙÉ_qºÍ– LÌàJdR®dR TO/}€""?¿&d"$dBÀ ”È„O¬ÀÄÎüýöÛýüÔÕÀËÀ† I O؆f#ÏâcxŸêéÝ9‘ԹѠ–JåÉ—zÈ«ck´ø»lö‚Ô°ƒ8‚1&ð^çéñ‡Ð:cn>ÕJ×êKÍg«Y¬lÈ —$"µ7~™8Xô·µ´$ˆæL|BÐWtVOŽÝ¸»±æh4O¸†‘Jk\`ŒØ€I‰‘t æxœ×£ð/Ôº“‡®(3³h$ÂÃ:”hOë<$¿–æ1tÌþ#r‡a1ùlÄÎr‹º¬Ä©ë³vбMY½AeÌRÑ]¡Úi%µ¶Âóe|·ƒšVû,Ù¥m¸I³Qù }T[]äíÇü=SIV!»µÁæN#õElà©(ÖZ 7¢l)Y8KÐñ«µ Y^XkìòæR1Áâþ°Aî-‹×ឆ¡¬Ûš•‹õWNy&SO`³"ò.¥p8„$ºý9"’þ.øé÷bu7qÆù÷*ê‰F¶o<ªò\ÌËCuÁ ¤J&w˜à~2>kŒw9ùbï éÆ@Ê…·I–D6A½,õ뙀€“â8ï¼FG —Ä”Ov!³]‹ß„‰ð(.%Çbö™¯Kil–«É×ÇRŽ¥±¢·ääéÁ{b8Ä”ì ÁO§¦ógLâôŽ,jÐSh…”ZÆeò©:Ö>{‘¯=i æL¢ÄÀ.+í‘G³v|L8,ì¬é[E;L] öqèKk@¤ˆUgi@11¸Äí`} ö+’ÆÅ ôñï£z¡T1\YI…ªö¢¢ry%€”Á¬Í¦¹l¬pQÏ·n½q¥'Hg_Œ #z§©Ô¸1Ƹ)·ŸrY²˜¦c¾ñW‚85˜fõ”ã,¦¼«‘¸d/¬çõ±·Æ9GRÚ¹öH™ÄA¯ŽòUཇ4I%pô²BÓ¦x ؆ºªÌfÀ:»z½Ç0ÃÜ8Â^sñ-ü·…—²Å¼{R4¨më$´’nr¯¢‘È”O0?³\ü®T µóqëná]Cêת+ûñk {F%0¨I$½>¿¨ ;9r0ïæÍJŠWÂ.v*¹V­M²XÃMüœE, `ï1^Le1Æh¦ÑÍVÞ›3‘ÇK«/(^â®.OTYsÄŒâHÙ¼”œD«[|¢z ¡Õ¯6êèäIOeXŸù+œŠºëBLÇ¢§3˜k –¶‘xÕ§HbÐm´nÌ:´ÀÚ¬‰_“¡Íµ¼½ T:eBÈ–3và È"J6ú¼-תÓM~ (R<µ•9îZë‘¢Êà`e²øØª7­BáæF'ÝfP$x:²ý{bdxá|͵)ËDØíù…ÔíúË AW‘öZà”#!˜ËÝÎ_}û¬’cŽHWrªá´%D\°õÞ`bNH·ŸØÁë A§¸:ûb¨KÈ´”Ê]É0C÷˜öìÁƒþ^¿_H|ªó¸æ—Yè·¦!Ö —bÎÊêxŽÜO¤M±;°b7á?»]bni¹ˆÉиI¤8Ï,ã öYe¥ÒÒšœ¦Í5ŽY´BJY%EÝû {«ŸbÔ3bİ–|J8”r ‚Ø¢v(ßiIø§¬µ=>[3pxý¤È\_çäÜ&s?¨{L–ñ¿¤Ç§Æ?Æ[V!væ¶B¿pYbØ$¶:Ê}ÕÜ×nÉa%°£Ø‚`… ©öDDjÍKkWg-çn)h}¸\•ü¬ #iâ?øüÆÿ‰™ûþͻׯ’ÎõËWMK¨íØm‚Z‡ø©dã9ŽóÄaý#ÿˆÿÄ< !"1AQ#02Bq @Rab¡ÁáðCP`pr‘’±ÑÿÚ?ÿr3˜…U³@¹$žÀyŸïhdµFŒiàfçgDêQw/ y}À ‚{ŽÄ ¶~5–î̧ÐýzÖ’$ìçíãŒqs«dÓi¥1@Ò(æ…cø‹HŒ»_ý[7Ûpr݇2"ÆBd˜¨}:¤.Ç–ÄPòˆßæÑkfÒj9ðwgT”K(ð"dDJCì P#øÑk`×À³ÀÁ%½Ðúï£]U·ëxÏåÖh’¿^æ ¤4ªÝe_wWºXQX‚œ±jÁ,ÁœÊ ëGŒ†[È o¹"ˆ«9¦G©‘ÑUt -5©Ë(Ú¶Í’®óà1ëV%Ó»,QˆÓP£¡Ÿ &HÅÚꊅùßoÎ;°UQdŸ!þ¿ïãCÄt¼EôÎN$†V°þkÐùñÛô¼kƒ4LúÝd‡lq„m,Kéæ@¼I$ ,Ãdâ2ŽYc jÈÚ×·CgÞBPãrjµO¥0ÓéáÒÂ@‚8£ª,ÿyÜ“ê<’$HÒHÊ‘ ¶v4ª=IñŸ¬œAŒQ#®•$ ªBŒä[#UŸÔŠ ž_jÜ÷ñ¥ÔϦ™53¼±¨PKªÁ¨,Ý@ ¦5`€w­©«ÇâPq‹F؇£ðaÞԧɇ¨€Ìª 1  Yf =I;âOiuŽáAÐÆ 4E@ÔÞx™(@Ÿ”`^^4Ú˜µQ,°¶J{ŽÌ¦¯L?Ì7øqÅ+„1ÇÙlcEEÈ÷4  >gàqí&³S§ ¥rÂ0ÆM.øN ]Ø.õ¢»éw7’Ã͹%g÷s± R–[)ä|Èó½¿n|žPå$t«!êæ)Û%’Ûún4ú™ôs,;4±#X”,†g M_1 2ÚÉ^Ùnx~µuúa:©B Iý2(~ /¿öy~~9Åyî40²ò3b@eÕÆB‘2“X/q“mg·x†ÍÑJ—mCâ³VÅb"²)µ/c]†#E­ŸC(—NË’IXK¢$U#bë³ èo/7‰ÁÄbV_w6!žÙÇõ€ú’üÇØïú>5Áy™ë4‹”ЬdÒåŒR“ÝñªÈVDZƒYŸÍ}BÛ<¤f2ÊÖ'¡L„Šåt~eñ¸Cñ¼ÁÊÑÄr˜&KœÍÔžB:ÐLÍ<¬ñiE ª(+ýSçùˆ žÌ?c±ñÄøš<¦Ò6ÈR¥©´ÊÊQÙvîluïgfC±'LÆRîFc.’%zÝ¿böåˆÄ§2VK‘•1®Úpj7Š–½¨þ8†]V¤jÔ¼zx¹u©V·œÅÂàÕ_v8öØØ`I¬àju1ÎÉŒ¾Z¨F‘µƒUE«sëÔ)¼GpÆ‘D¡#B¢¯eËàñNI:® J¿N0ž¬²Eì÷[Q»øÐðÙµš®B©E…Ëjd72# Ð3‹»£æ±Öñé¢HbP¨€ €êƪٻ±ó?¯ ,€,÷þ~ÿñø`nˆ5±£t}§éušÈtP´²°¼[—ÓÌàXHÇrI¡°8ݼj8¦·UªYRG‰éeÓi]Š ‘ó]YÉi‡}¶ñÂx¤|Jí<}©äÀ ž0wÂÿñº>_ˆj—E£ŸPùˆh¨È†n•5ü1ÿËÂêeŠA?âfŽP ‰ÙJG!HV(ªÅM'ºƒû@x=¢×D$ŒjptŠWd17õœ0rnNé±m^8wÓq$f‡%e'(äô fšÞ×ëßËàq®'/]1…bs$‡˜$j¨V²a¸õ«ò;yø‹Ú…ÿo£‘nnR´fÁSÑúNûåÿßñþ5{ã2r€• Ü›tØÈy÷ºñ§O¨Þ£–®ð`H®ö;нÿ>»]†–N¢•‰HæI_´gËÆ·[?Ÿ9XHQ’m< ? n׆ °èÜÙ8ÛoÓ㤡T"HÊóL®’»+Û­‚ ÿŸðŠyá››’¬±È^ 2fÐÂMl@ãa…m]øf»úCJ³åIÚHÎøš°~Ì7ŸÚ]IM£F™òŒ`bê¶6½ºˆ=ì ¶7à5n¹uê$„¨‘Š’r: ºå°Øoy(ñòîyÖŠ©¡Œ’ûÛ4Ê*˜šÇöWz#Ùý=g©$’ðæÆîÞíÙÉõ8‹Äõem¸øÓJdÖr,˜1æDytÎýà¶&‚ÒÕX?P6üÖK÷‹™±súʶEH`;UÕŸXfÙV/Ædˆ2‡ÛÞGó,T”7¢w"½›‹.!;têû£µó%Ä>hN;Õì:h?ám¬ ª€^¦eU%é÷ÇÎ,•Øïå°ñEmJ»š:j€%_š®·ËVÛt\…w^¯56ìØsU¹¯1ÔI»* úJý·£Ã¸lšÉq ¼´e‘ U‡”/_ïzqc‘(v«#M¦‹IŠ!°îƲcêÄf¶lóñMCêµÚ’É:”iù3ÉË #Iت|Îç+ñyoïp-š4­ÈXZ0q·²’1ï$›» âïÞ3¼Ž¨O%™úJâl¿k¢hÙÊôò4Gç†mµuHLŒ+¾ÌÄuumÔK_ÀâbWâS;E8^s“LY*5T@Ë]¤òPk¨ ð½\ Ì5“1,xIÉý™ ˜uv ö¡ánX^òFñ\2Ë «…;±íö ÞÎÞËÅZyæ*Ê]ÑiƒÔh'÷dz¯ÖþàË2ɪÓF9†¿¯TÑ‚Y±6kÄЮ×åG†ðÙuò£:ô!*[äÆßI³EêÆ&Íœ‰ØÞŸOš%Š1AE¶L|ÙˆîI$ÿnÔ>§‡é5ve‰s jÐcÛªÛpvÛ·O²Ã¬éf€Ê2éZ*Y/ñ•#ëã‡ð¹ã׈õÉi Ù¨.¡È{Ï‘@)šº¢@Çà2«Še =6í±ñ'ÑKóéã?aˆòòZCËľÎhxó‰±(¢æU]«!c¾Å‰ïãA¢M™4±’Ê—E»›7ê~ E@ˆ£HÈDTrqÏóßþHÿÄW  !7"1†¦Ææ 02@AQv#Ba§¶Õ×$‡•´·&Rq%3CEbce‘–r±5St‚’—µÔÖÿÚ?¾S§_)‰´‰©s&K¥’ðʬJ¼$¬šD™2 Y§$!iÏ)ŒWÊ$¢JsÞæ9Фâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖ½Ú“&ùý‰Ëo,r¿üÞ—³ìü—ÿ[¯ÿUªùÎ(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]kÑý¨ù7òo‘?Øœ±¶òÇ+ÿÍé{>ÏÉñõºÿõZ¯œâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖÑ=ç‘W-F±sª/©F‚J ±zePgS!Tê,y0¢È ¼d4râÎ4CGQgÖéG©=îõ](õ'½Þ~õÝ8­–•KœÊ*Î(˜È®KÇDê~ÈT+že@Æ&ÑœBÕ¿*7X‹ŠXµ;ÇQÞÔÍIŽhŽ­TVL†ÆiÔóÉŒù<õsžüÍ„„kDõOÓ¥¤÷»ÎšL“ ¥¾”6¸1ç8k("rI’Š1•¬TdTù׿¸0cZŽ9µù“toW¼nãoØO•ѥƵ廎~Üè²D°ÈÉ8ÈTkr¾ýÐi{Çt§QêôÎ[¹z¤:½îIMCÇ}Ø— òÉõhéµÈ¥?!ÛÌZ¶:ÚQêO{¼íþY榗ä•t»HäPǧžD˜™&@uuÂ,‘¯dÑ l Ç£®[•|/?,]J Úw$ܺw‘`¥Ý¡ê¨Îù@.ª$Mgê2«ZÊ”ìÒ3L•³;THPé—ºò”µû•{.ä71…”c]£ÓâJ¸ís"ŒÎñ4ÅhÔ`+™S‹Ë—†¾éšEòï%I*RÄò_gEÙ£=€Œ(ð˜Èl ã-cLIé*Úï=TtË·D®So-q’œRê°húãr]eò^À¥(² sª£MTTUµ ûܺêÍ¡]êÝ.¯xÒ•ÈïÛê;3iP©pÒ*4ê9@ù­¬3#˜{F:2V´‰K¹7ØÕ÷GÿÂëåt‰v‹*®Ž8¯q)ƨÔḑ#dAŸ£!²%qÒ+Xô?èЯîçú‹Y¶”z“Þï32ñ^ /M…«G¸@,“Ç#C8¹ï)Ìö ¸åñRœ¡V°œ¢*TvGv¨õ%-(k7(?,G¼ɳãšYK­)ÈÍ–3ͪŒ‘d9:3ëƒs"sr«yÊŽÞŽGµéÑЖq/¥IOwå:ïU¦”#eÝ PŧÉ"‹Zj|Ü#DŽSR–ñ6HbÃýêñÀŸH ÚÒ .…|±HÙwåÝê F™ M,ŠEF‡5î—,rsÔ‰ª[Î…)¢‘Ž$ÿôhçòòÕ‹ï£Ù7`…½TŠe6òQï[ê±¢ºe *EfÊLi†qCCáž@!”mG6XÞ@»•Ë»Xª-^ðW/Å:õÓÉòjúT/16™e2Æ:}=ir¼–¡XQ¦3„OB׺£Sù?Eí«D¨üœº“êÐ[ a#iƒ”8ä|™øm#ìqS#2­b'èÒR{Ýçþ]6šñ^—‘ÍQJ«rÄ(…€ŸMáÒªC1Ë6 ÊÊà½ÜËK»×Š(Ñç:#åDÚ%ÄÖº Øõ«´AKÇe6‡6:òèýEF l°êîÕéjU¤…´ä~Ý0ÎÃ\ö‚<|Çt‚N¥¾ð¸åŒøJµò¾†>¥å ’à®ÔáˆÙÀ<²†Ic5‚aš#„~‘yKÓ¸‚¹\±ôj¯«¼¥ÊW·]²ì{ìºí©qÕ"Råé ¨¿¤½°VUÌ6¨Ñó¾‡t§SGUƒ±‘!Í’ùõ•"ˆ.•5mUâÒu>ñÑÄÓ¤Š<{„I àqÕµ W&:G:ŒêÖÇ~µ£Ô®D~dÔ¬é.¥V¸"«G©%u ‹ÄðD©%V54×ÌÓ‰,€–±»G'6rÆnÌ’Z.oèЯîçú‹Y¶”z“Þï0êµä«C£ÓЈ‘0¹5Ò±¢‰3\§ˆ&#"ÅdsžÄèLrª£šÿr;èó°Ý‹Àáç:#UèˆÞr¹Ùs¦+ЮÇëOm›Âk˜µ¯Ç2aŽ;ðèv]ÿÝÇÛÑŒk›}å —Ta”´ºÂG—&m:aå Í‹5Ì9‘‘–á¼Pžx†pÚ÷,5UŠ×±Èæ¹ÍsU®j¦(æªnTTÞŠ›•<­(õ'½Þ«¥¤÷»Õt+û¹þ¢Öm¥¤÷»Ë‘PÚhÒÀXÒÿ@ ;"ßî¼nsWê[ô݈Šë%ÑÇ*:ÈyBšg$qÎ’B´é@²<‡‘ïÈ‘é¦l’56|Ï&TéLøåzîÅpEà 1LËmd`«ò7ž›™ŽdݽÛñÃznÞ‹¿ QlùsD­æz9—ïs‹‘0G. ƒQʭůʶyˆõB1îÁ1ÜÕo775qÞ»Óé`›¬<VfW#SŸCŸÑЧJ&ö;š¸*Yì”íf­‰‘ÎLœª«ÑÍÌ ÍÃëU¥èÞ°#M¥U*†Bª’L‚šbÆfÍJlw´¨êQ$$}K„¤Ì#ŸŒluN”z“ÞïUÒR{ÝêºýÜÿQk6ÒR{Ýæ25¤æ=j9c“5Í\QÍr.jîTܶy®ãšK–I,tˆª¢iîÚÌ–2ëH™N$©,‚id®f#²ífæ9†éE]íTMê8û9¾Ïðèt–™0v%p²¦ÍÎÃ7¥›nd_gEšV?õœZÜ\¸®eÜæ9]†®)‡ÍúMÁÈ‹f ÍŠ&öåVû×tóqèÝìUK::\º…HÞŒäÔ% ›«Xó½÷±›‡þ‘íboVãw¯mTU7¸”ˆÒ=MXÑP$ΆšðFY81!œ“ ‚v¹ƒÊ¸‘ÞN”z“Þï5S—2©IelT™“hôI“ã†]RHÄTˆÁÄS2Q#SE0Z¸&v±TÙX¤}‹òŽïÍÎÕ¥Ó ÒiÇ£©d0©"𿯧2,t,vC©Ôq3¢҉Ä-2»J>ÓM«BP„l2«$M+3±yÂ+QÙ à@•¯¯c‘<Æ”z“ÞïUЯîçú‹Y¶”z“Þï2xscdI#pdÅ”È /L¯ÀV¼EÓs˜ö¹®MÊ–uë»QeÍ»S¤Í,ø¢ˆ7²ë8Ža„<ÀçrI^SŠ!]ƒ€ÀG‡ ä)@C;+K¨Ö¢/J#3`aŠ90jb©½7 ñÓ?þõ‚ÁUíÁzQ½8?+¹Þï}™ •DªÆ±[ó„#ò·W«EÎ;‘Qª¬V£‘mP®U*L©ÞIñËKGÂÎ:\Z;ÍV¨b0[ “ *#Hy~«TÐ b°Æ‘åiG©=îó2ï!a:¤f<(0ZTŽÙe+M)òB5„)^ÑùF­cÎL'×ë­†ÊM±#½´ÖÉe>aCD AÌ“8±ójTÅÈz,©NÜŽ~FŒf&púX•êåk½¦.\¨Ü¹ý˜ªûpÝfÄ:šUʪ™¯¬Â%ðˆ£ ™V¥ ²Hi2T~lï› Çb=R‘>%N-®tiÐ$ TS£á?Vp¹ãrŒ¬xˆˆ¸Œ¬xÞ{Ôòô£Ôž÷y¨r§C“T©Õ(TzTg°Q!ˆd9eK"="B ž0Ìq‚YÚù!ÕÄ2gÈ£Z%á å‘wfΈYdF‰¦|ªZµÂ=JœÌ\ÇÊØâdõñBÅ Ëæt+û¹þ¢Öm¥¤÷»ÍØÀ™PITIAˆÒc™ªÂ€à+^#¬UaF¹j«\Š‹išê0ónÌés 2¡½ëu³†rŒ†y©D&ÔÖÊ0cœÖE‹ Ç!ÆWS©T˜î©Ôª†dHpÑñÀ¯9w¢!d y¼÷˜ŒcZ™ÞDklúí¦Q§^ª„ Nk  òÝ­—Z0FƒSU“šCÚä“*D-ˆg$v:K"ŽQ|½(õ'½Þb=F°)s$O1#S)+*aÆ=cÜ®9B Da$© ¯pµÃÕ€äsDêÝr¥6¢öH©Ï‘M…>i¤:‘O,¹ƒOŽ™µA8Æ@µ#5ƒ^{Ñ>qʨ _Î90k··*§9ª¨ŠŽçcýî•èE[~´ÄÅÍFËÏUé\¹°Å]Ò¿_³r`…v¥Ê'9pWnÕ¦æ¢`¸¿.î„o7Žœ5SvºÝÔƒ¨ž\´–¬³È,ê# ®ùåÉ4˜`Õì%•†@K·CŸ§J¨ KlgfZ׸DMèBaV°ÑÎ2ÌaFö'•¥¤÷»Ì¶«zjÁ¤Â!Ù/x¤É1Îýè(ðáLÉF¢š€T&¸¥È6¹Èá­Ê«Kbà ª§S†f„Oe>˜$dmÈCº0„Y$ŽÃÌ|ƒæ#…T‰2D :@ÏTgêMá\à ž5͇9QZìZDÅÕjå´;Ÿ~Hu}[£À½ÁÄ®KI ÐÁ˜Å)µÇs>B‚¥ /lódD/ÌhW÷sýE¬ÛJ=Iïw›“ `&$À,¨Æj<2#H„pŽÜñ”OsÕÜæ¹QmðÐhe‹S†‡H%-Z­1ÒLRC>¤R晎RF1‡šBíB¿#›»1¥¤÷»Ë¼z|NPŸJ¢UjP #Hõ›. É QLí¤Â`r‰ŽÏƒ6‹2ñU_V‘R$h0 S5/(£²Îù*)ïTj+НW9BÁ¦ÅÑ~(­Á\ŽL1MÉ‚ãa¬¥Î\2à˜µÛ·;eŸïè²ïFêÛ™0Dßô3"ûÒúÛ¹q²ÃnUèF‘Wëà =¯DÞ»Óß²Ì ó/\7`™9Ø*®g9«†’*t⩺åM)êW:s¿[§!†‹H‘&d-¢ðGýFdéo‹ Rê@ S\}b¹!­ƒT¢TaUiÒ3jfÓäŠTw«¬#¡sš„á˜KV¸dk^×5<(õ'½Þb¡W©#S©P¥TgÉV‰>L£¨ÂÂè ïÈ!¼ŽËƒç*%©ÓJu2™EeB=0%–Ù&#'>3ÎÄŽ6†I™;‹1£˜ª7èhåĤô“ÓRÿÕzZŠªˆ=ìó½uˆç»‹0èúá‚¢'J.)ﳘ᪹z†V½W 7àŒE_îûù¨BÒ<ƒÔ©%3µwªA¤K¨Ò³X qâÓåή0óZ!²Cˆ“"¤‡«Ý$ •*tJ•>SUñ§@)qÖ½ÃrŠ@ñ)ñ»+—)æ;5SËЯîçú‹Y¶”z“ÞïUÒR{Ýæ }4KÆ¡˜I[»T¨FÌ¡5µŠlXˆ2¦Õ$ÈbIPk$jÉ"#f¤·»·6°Oæ¢*ªçnUç#Ñws·îÈ»‘2¸ƒQ³T›—œ«Š·{W¡0èÅ:qOfÌãÈöª·s²à­DÅS øfÌ­÷"ûóX­"fz¹Ø90ÌäoC‘[¿21¹•SÝŸë³1Iô²kt{·s²ôãõá†ô±žÖ磋S>UF¢¹7z-ÃÛ©WZM>î^ŠöÊK®t"–#ÏÀp“[c¤0mêG>'&´Î [!¢8|(õ'½ÞYåË8bÅŠÈ“&AXñãŠCæ"´b†×¥#šÁ±ªç*"*Ù”{«\©%ÔO,IlŒãA…[«’t¡H{ˆ"áT¦lƒ±kš£Md“ jÓfQ! óX¢®G+råç{q\©ïÌŠˆ›ÕwØ 3.*®ðç&ÔO­wcíöÛs59¿:&|s.“­Qq÷*{í²jÑ܉›F®Uj.EÞì}©ÍÝíÂÁd‚â<Þ’.\©›~ÔL0ïÑb°òª×LŠ1Ï¡¼’%6 RMI%Ýøë248uGkL ¬‰0„{ee{Û( ®ÝÙãË«& ‰"¦°d,ññÖDš”n ‚êÈ#IÁ)< þ›iG©=îõ](õ'½Þfeø¸ðÑÜÂ̼Wv6Ц}tdÛ¨ø±HÂ|™UXÄ0QÈ<1šYž'µ!cеuˆ-Ȩ‰»Ù—7»”éèL3g]~IpċЫ›“z®-\_m’8†¨l‰ƒrô`ЍåÁ:zœ˜ô¦6dR1ŒWaÒ«ƒ‘¼åË—Ù¹qʼîoµREß»¦ÕªA€Z™ÙTè-d,BIP• +ó#1DǸ®Ög`ÜÖ“%!‚£RÃyÒ5r°ëåȘñ„•! vm<žé£Ä@f `@åŽ×1¨ß'J=Iïw—z.ü#0+T µ2LR†;eL‚`GÚˆ͆¦{/V=Ñ”­AW*’ƒ|a² ÄÕ S$¢Ë§ë5…߃XÒ2$†Gš6¢$ˆÑß̰ÞGÑš¯D"®åOA¹Ñ=-þÌ«»¡W fˆÔ{Xœö"aé'K:ìçó‘}›Ìr S™†üqNvönWoÃÎäÛA­G¹QØïjînaû“›ûzaV}_?/¡ÎL‹zQU»—2aŽäéÞUŒ=`‘­EFàœïn\r· 3oÇnÜ.Ý:ìÉšXõZÜt®ÑXs--ô_ôuy󡩃%SiûD˜ÒÕTŒ¢ѬH²< þ›iG©=îõ](õ'½Þj~î|†\FϪ^ê{N\'U²WˆÃ•cÆ4&$© T9!ÄãfÒ'¤µ•ƒŸ‹›¹UìjµQ3û¹“ ËŽ\0T ˜(Õ]‹·&äV*oÁpçîr"¦)‡¿´j\BÏ®Ì#O§EÁLòdqüïÈ4k2„"´! JC=­c•³y“¥N¨älʵ\á“Q(ç¼Ñ£CˆÂqì‘¢ÇvGJyÜ(ü­(õ'½Þ`×~òDt˜o"IŽP‘A.ŸÎ÷ PC”‘çDl°V²m1ß¿£>^8"À»×z"ÕjÕWpâkãÆs”0ʧ–PÇ`Å1Œ÷­Á£\39Q,Êl’ŽMn©%kðLkE:Lh¢u69QÏy¡Ó› œäI%CÍh#m;8ü þ›iG©=îõ](õ'½Þn¡}n,síD%^±zéK5ÆÚÜU=NUV˜ÉhSmN*ÉÚ)¡‘ª2:3)pÂñr(·fvÆV3€ó™ªfG1¥JAkåÙ£G)2#ÚçåÕ¦.VÚLO5Z§S;$ÕêdÊ) q‡ºCbz·9Ìb8…!r¨‚/J=Iïw™›I©ÆÊuJ)áMŠ\ur"É„a;*µÉŽTÌÇ5íô˜æ¹mR½7QR¹°’,‡RµóeÞ`Ôz¹ÆP¤MTÚ\Rá(’v§J‹ï$€ìФMW$DÁ½Û܃z¹râÕNØ®-Ü®MéÎU°ã´oaá¢àÝìʻ׌7.ó]Ñ¿9F²5‹€ÃD! DÞÖ£YÏÇrdG+°Ãu©wƳN©Ç¾õ82Û"=Yù9‰¦ÔGOÔðäȧ æíÛDðòc!# †åèW÷sýE¬ÛJ=IïwªéG©=îó‡¬S.ÕW•¯Új(Ôè•;QPÒuócÇ“mjúÂ;ZTB3“3¥¤÷»Í̼º2)òØÙ³jWTŽ“°Ëc"b¶ìŒ’øsÍ!­‹‹€©C‘ IT £E¯À©QªhŒ*ũ‘M˜Á»k¶i£ns\Ôr³`ïjn£éBòÈ$cj%ìтӨ ѧҋ>´ÉQÓ›.ÖU,1æ><ˆóK#lÍòô+û¹þ¢Öm¥¤÷»Õt£Ôž÷z®”z“Þï8É·‚ê]ºäÁÇlAˬPé•9,ŠÂ¬ŒÃÍŠb¶; s¡GjÚB•èÜÄr¯˜Ð¯îçú‹Y¶”z“ÞïUÒR{ÝêºQêO{½WB¿»Ÿê-fÚQêO{½WJ=IïwªéG©=îõ] þ›iG©=îõ](õ'½Þ«¥¤÷»Õt+û¹þ¢Öm¥¤÷»Õt£Ôž÷z®”z“ÞïUЯîçú‹YµèþÔ|›ù7ÈŸìNXÛyc•ÿæô½Ÿgä¿øúÝú­WÎqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âë^íGÉ¿“|‰þÄå·–9_þoKÙö~Kÿ­×ÿªÕ|ç{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.´ûËòËäîÃx%P¶/“¼­­Ù©Ô©ûVÑ˔̙ùOU©Ô;.§>µÚÌŒâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖ¹W3äVÝO¼÷J¿¨h CRc¼Uz„@Ê› DM¼W('IY2©Rc«7õ6éG©=îó·JëKlµ©ß7×HP‰ŒÕ»ôÞU¶JÇ6àdµ…æ»"s¿Cꪜ Dî|Ê”°BŒÕÊçåSIxÇ›#änlÊr¢n[S¯U²›Kªí›&Ú!†C™ |ªsˆá ÇkXRÄyCó™õ/‘‚"¸Lª^züš—Iާ;“+ŒWbŒX£s˜…—,Îx¢ÎÔ!ˆÄW1¸¹(wŽä ~M­C¶’‡«3£ŽKS‰’#±¦hŽa´ˆäaHÜ¿£J=IïwK©·3å ¨Î¼)MÈmbÑ™9”×NÖêö|‰4ŒMv»2æÕäç~‰µZ”çӢÈ:QqÕÇ‹N1Ìü]”ccœ¨ÔW.5pKSêÔãmú¤(µ25e¾Ð2LcjŽÁ˜zÀ‘Õ˜c+1ÊF5È­BЫwž,*”m›nE©JLÛ0Ù¹b¡Šu\ŽkÙÊ’¢bÇ4žƒ‘ÊÒ Í ÈÖ½c‘Ì{˜µÍrbŽk‘QZä\7§é¯üTû»u|ý-k3™+Uš}Þ¦gaŸµÖj®{ Af¤dÈù.cѯ.@·œ#?Dªåà©E¤Ò¡5®“6[òy܃¥ä)HæŒ!^c͘÷¹Òi×v¸Ùu`l£Óe@ªQê)îF$¶@­B§Ë4LÎcv €Gh¤E#1ý'ø£üŽ’í¥¤÷»Îè4uº%:¨:«tO©2lf³aRnÁêtزÉóƒP’y‘˜íÃ9^Fïuª´Ô­h@IN©N‚‚«i^¡Nª "J(2T©ì¸òÙ Í^YÛ*KcHB$¬u2¡\…s¯y%“!­¥Kï»Zø’æÀa©Õ…*ÒQ¤ ÉÉÑßK¦Cj‘ŒR–áÿðÕ¼•‹_±^Jòß¹·fðǺ1…r¯UBY¼ó.ôÁšøO«Â¤H¢ŠŸF…EyædŠWTk,UŠéTš‡#”nÑÕU"ô:¹sb_½†îÅ,«§¦ø•&u2¾V”Ép'ºÇCØ…xï Þtëº9¼»0*³.{+°k·.m?”IWŽ”h¹È:¦¿4Tœ;aqµÅm´£Ôž÷yØÒQ¼rhœwƒWðUâh§_:d!ÀPG–1- C†¨P•¼—P˜óL—²LB;…w¯þåÑgÿßÚñÖkôc$ê=ļµÊdIßž‘Sù>ùíI G¨’•>D)Q#óõµZÐ9Ñ @Ï-Àø&êÿø(ÿ)$¹”Ú]bæÊ¼W¡—’­[*ǯÀª%Hæ9 4¢"½—ª[Ý{+§Ub3äýý§Í|.i ú}RuEë2«r¦×N9!G…’%9Dµãú§ÝÛ«çôJ¥—V›LW.—þm«O¦à*´§´Ò“b8rÔâl­Z]M?]¥¸²]ÀY&ÎÚ ‹zï:\X1ZùMrúƒ ?Μ·’ùÀ®H”ÕU¹U(¬<¹#,œçY °ï&‘éU£MºªŸ]‹§Q¢O$º4xRŸªºõ;À ‹$J¨81i:ݾDèãrD˳<¢ÒDÈ]+Ÿ{ \¶^Uk—‚³^§ê¡Ì¼4ñ©™G SÌ0jtä+‰ фҹ£¸¡½W¯K·R÷N¨F‡X}oÁ¾³Ž›E»ò L-ߥIQÆ¢Iã˜! d–W±ß£DÿT‘Ò]´£Ôž÷yÚbÞJkæ–ŒsÈ¥ÉRªÒfÁ,‘ d¬yÔyÐ&1²Ö°â×êŠÖ·;•?K4uÈ¿ØÑê²QùF­»SVmpç ¿•W-Q•¾rㆥØÇÄV¨Rj!Ú)õHR©Ó£ë -|9 |i!Öã0õ#Ù¬ Vc˜ok‘®UBŠ wf4å”õ‰Ǧê&©ùDr"L`æ¶^Ùé+Žç=ê饻tt…&¥ªIÓ¤M©Uª2˜ P5J±2|÷8®®>Ñ©b®-b/èÒR{Ýçh×ðu{ÁG®R)죽)áŠ^ŠÚ˜êΤÕã˧ÍqašXñ6ÆXRÅË´"´ng .ý›wµJçj¹6‰R»ó.Ö¢’Èðö \Êq)zªhõ‰eˆLÙ³>82 º‡ º»\ê:Ýä¦D¹’h&ŠúmHpÏY@‚è¥^.®¡Iœ5i*pF(¬’aìP´hËWe6³|(´ûÕ#j½wrƒ]Ø.ýã’ö4RPˆ± $D¨ EÔÙkõŒîW9në&±v¦]{.ÕZëNm2£GŒhƒƒ"g<¸®…& Æ‘ÃxÂ6à˜.5sC—W«Õo±M®Wïä¨Vj§Œ‹$œa‹¡‡5cÆ‹(ÖoýÿêŸwn¯ŸƒM©LªÓ]J­Óo.¥D’µ*}b’â:¸ä•lep”¯æž)™¿6T{ZäŠíÒ»Wž¬‘aF™x/Ü Të•WAˆC—Sœúc6‰O q£ÜшI‚0ZÁ6•F¥¤«‰xÅzâ¥Áï*×Að<ÃäyqžqÍÈtd"„;€XÔ*Õ4…¤«×M•£NŸ@¼õêdÚ-F%N àHÈðèTùÀRñ(å‰Xf±üäL«@“*ñßkà êH˳A¼UÑN¢Q%G ãB‘8iñ$œ´èïpiî¨K›²1p£DÿT‘Ò]´£Ôž÷z®”z“Þï8»ú7/Ô¸"à¾íÊ‹þ žf¿ñýSîíÕó\‰*÷]ˆÕxâ-(õêXª),ê$U„IM’N¦¦:Zmculv6×C“Xs¼zØÆǬ²‘™Äç7;Í{qŮܨ‹æ´OðGù%ÛJ=IïwªéG©=îóf¹º<¬AkA á¼èmy¦Å¨•ÆŽêe2[ÿU a‡I›²Je*$¨3­½d¥TÚ úÇ(Κ¢¼䌃:Á!:B¼®–ÉÖ°Çn¨Ï­É]¢ëÀ¢HUlÍZM¦Î5ÊjžAe Å&,=Zhåft –HŠ.¿ñýSîíÕó7šðÓ"¤ÙôšD©qBäÌ6•­Á$Ènf+âÂͶK^Ç’0 Æ=¯sU&Õj’¶™™òj#ÝtÉÆ$¹&DcÖ)¤=Îsˆ<¨ŒèÁ'Ý)‚AÊ[P¥ÌiMF¨¢ƒ%Å £9ò!ºø‡ Äa=n{âšLcΤJ9æHÌ´¹WFŸv|âLJ˜j•ÈÁZíC£>Q•Šv"x˜éš\ÈAÕ«'‹-:e·¨KV°TóKu9im‘¯zFÌÉäŒCàÀH2ïÛõÙˆüÇ ~–õç&-v »ÜæªãŠ**Yãfñ"àŽOIЬ~nv÷+zwó£rîº(xïŽy)Yšä(^˜RëõB••èŠáI§¬CF6ö+‚a¹Ã{¾N‰þ¨ÿ#¤»iG©=îó:ÕAÎd E>mRkØ7ì‰1%ÉsÄW‘Íž­\õæµ1[KdFJ|rÈ9c¾^­f,RîæjÞáí dcœ=v|®V`åFµ®d„^j¢.fŠ39É•p&tÞž–å´7R¯å„°Z6Ë»PHA“^Èm€²+¢ký(/ £0z9ȱå±M¬Šiɵ[ЪÇ9«Ò˜åÅE¯Äóg ER“ùÆ•ˆqe–´A?Í«¢Í¡Œ²u)µ „Äzìnk|(õ'½Þ]zïÓLQÔ0Ô nb2¥6”fT"Ò®•2  xãŒÓÊ6Ï CÁP{ ²#ðäÄ$rÀ9<æ$žÌ?K0ˆÕiF»Ñ[‚¥±ˆ<Ø3«]Z"®\«Ž-ÇÍ»z{ðܶèÂF’±\är.\ʪžÅOjà¸aa¦~·30\î\s{0r¹©þ\Â3ÊÒ*¦^zdkqj»v\ÞÔN–¹z7¦ü^mf­®Ý‘»Ñr9}%ܪ‹õ#w*ïß`hªG+2j›ê|phÚÌW"åFæsѹÞÔD¾º@¥²<¸š‚ÝÊ$—0‡3õiB¯LliD¤Eç¨éåk%H‹T*yɯüTû»u|Åë-Xá¾îŽ¥&ŽQäÌ=Vcõ(fdm2+ 2N»d ä È{Êô³ Žù§{=˜5ÞÅú;ð\pOf&#ܬsL2¢ ½˽qW*tâ½6Õê•ÇܛڻÞìÎEÎä˽çtã¹}©…&kY•YŽýïn)™Zˆ›ºpô±ET³.­ †õÃèer»7¿rbŸï"*oK_Zäši7ò%2™P8ÒUÉV‰VD̘­(³Z5Ë™cgÞÆµ¾V‰þ¨ÿ#¤»iG©=îóRˆƒbS*Õ‰r§JTç2E$Ø"5ÊÜ´íÒÎç5ã*ì(ÄÌ',¡ŽläÞ»‚§J"»¥wïÅW.íÛì±FÖ7Bú8cé*îrtïéEr¯øª©·¯7™Ž ¹0N…Møa…ž‡Á†Åwoc²ýL2«‘v>ÕǦÊý~­è™pE°Fb8`¸ïwÕŽ¸YÅf\0våÅ1]ê®ÅUW³êà S^iÌškØf_2 Ù”p’µK¥²<¹w‘À‰>ÐõFþ´ó™†ÆþN”z“Þï0;Ïr(á}ó ¤ 4[¥+O˜…l‡ ªÎñ=’^@Ê‘ ]å”àS£ŒðÎ2xLXóáIc£Iƒ.3”2$Onq”gaFA=ŒxˆÇ1[¹p(Š7)W2àÍŽ< ¿«°Í‚á½3°iðÜGa‚5©ÓŽ;º7¯½lݯ;XÑ#°&æ#ú¸à›·àÔs—ë߂،ú7+Ì¥0ÅQEÿßL0Esó`ÛQ/ÕöB­U£N—vO°ÉCœ)C•OŸ<Œ–Ž|ÑŒB*RÍ[I«œ…– ò«ÿÕ>îÝ_1RÿÄ0Ôzå¿m—"jbéÉ™B9M6CÀn£gŠúêqÙe #(Fƨ²§5¹ÐŒèèÌÜ6>Ö¦¿¶ÃxSXýÙј‘îjïU_I}$Ç7O³rØdŠ,uXæÍÌô“ »Ûÿ]Û•0÷Ù¯6ŽTjb¹åo5w"æ\»·aîW"¢«aDNY2(ñ@’Kä™Z8 jkd=ÎxÆ ®y ­A¢» \ú]J©óƒMyäC ]à|ù’ªeG~Õl¤|Ѭ(å¸Ì(ÆDpÛåhŸà ò:K¶”z“Þï1M§:YM͈MâF‰P•T­ë³çQGœx€¯r±‡,fÃUW ƒ5!šŸGs›Ñ™_—‚t®==Ù‡\âôs×6lØ&ü7àŸW£½lÙDÈLÈŒTj.<íè‰Nþ„ÿylÓ”ODz*eÊŠÔÁ35Ëîr|â{SÜ»ÖÎWü؉Ð×s3«[½p]ʘ/íËуQm!VIG®f±ãÊgµ¸›V'(÷µ™\Ñ©Âs°R3ÉD A!M‰I§Rb˜ê7ÑéñF;‚Á Ç+„3Æ1±ÄsœÖ5+J=Iïw™¬iå ië²5›±ImSY²C|ºyª ˜h7³3†d ›—¶Q¢SH ’G1¨æˆÚ“0ˆ@9ãÖ…®q® ˆÆ´Às«S£Å"ÓÃs§D“5FTÎzÅ Œ„É“i*F!'9ª¡ ž˜äòô£Ôž÷y¥ELQw*.ôT_bÚ=âƒt£‚«¡Ê±J• ËãGž„S ᦖ¢ú`ör®²(› 좌Jdó5ÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:Kµ{äÖ®üï”\—¶òír'UÉ<£³l»õ¦dÏÊg×kuÙ²‹&¯+óðžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁüË· îñ?™vá=Àþ#ó.Ü'¸Ä`þeÛ„÷øŒÌ»pžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁüË· îñ?™vá=Àþ#ó.Ü'¸Ä`þeÛ„÷øŒÌ»pžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁü˵ç‡@Ñ=b¢Z¼ˆ1ªO¨ÜëÓXŠÒPISLA•˜åuBBía‘:,±¶9¢T¹ËÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÒîåÜÑ bl)µƒÖŠZÕÀ¿%6TˆTø/ßM8INš×ÄÖ8ª¥V«Î ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6¹·òýhú¡vcÝ»¿W§J—òv¹w©lƒÉ—Œ1W5á’w˨§x˜žÈeúÂDlx“d·ÿÄ%!1@A0QPaq€Á¡ðÿÚ?!þÿ¬àJ cŒòž€òž€å&Ac¥?ÒàdËÏ6ïGî ¯×1WÀ'ß ´;”‰ÁP¶Ã(ñ=º¸¶„‘0çDB¤P;ìðJ2Ÿä†§åP$Åûí¢¦Çi í}F9ÆH+F¥I*«™?ËŒ»ÂêV‚¿ÃWãv̳/€þ}p|eºanpx#fte‹œ{cáÞ#N£©?þ•î÷Gý—6ð$íCFŸ'}Š´‚òŠ„;œ€h©|66F?Í•é›f[Õ¤%2R ûl9<™ÔÙ˜dëp§çfÄ—n‡ïF‘BS!Ïê ùaúQ ç|§çýŽ{ÜVa?õ¡ŽáÊxÒØÔL= Ç4§Dퟙh¥•°¶ñ0S Õ«|¥¦¢ðz*»hX:îÈC›BFåÂ(¬µð úø,"ˆ«øƒ?Æ8îŒÉã©"BŒõA„y1ªØ†¿8@A ©^#®x£!b … ÕY¾ ¡RkØg¡ÿö±_Ըؓ,˜ð+a »ª¬6 &²ûÍÏG?uåÑøîP®š³Î©Ã:6íQj#H],³Œ½¬Æ1iµ8iŒj”#12—-ƒŽú0¸Ñ?idØ¡Ð@¤Ús¸|ÄJJá)ýÈ€ mgËékÀ «™;×»•jwň ‰BåpùÄÂ(€°Å™þ,¬ÅO²Þ9ô6áŠÀ5•DÖœ0ò0õŒ`ŸW-Fܱ<ðD ˆ|ÄJJá)ýÀ€XYEqV#H¬hu;°r|¬#(áÿͳt5ˆ„sB MêÝû:j`ÆRº‰cðUPHc‰Åf"t$›•RJ!tÏôO®½ÀçÑFPß÷0ÄÄGê¢U ñGò,•lè‚רÃRŠ Ä˜˜àÎÌÂÜ' X:c?Ô“T M ŠÒ„Ìé²…â=ªÐŽ,–J)å£r2óÓÞà„”`†ÛÁ]ÖX¹¤¯ìw”xùŒOê )€é¯°%‘«ôT3‰Ó{›¡bS8ó ‚ìZï‰ÁÔ‚W Ä¸†…P¤`çÜPȦÐÇ xY6lÀRÆØø ¶ ¶"§d¦YZÿèTÅ3„~àH”í">¶‡”óL6\a¯²~ÿ ºpÖö¬\¯Û>Dâ°–¾(Z€ê¤ rŒQÓ¶Y¸sý)[pmh]šÅ^¢$Ãùï€é÷ ¤÷àßK¯3!|l š¥Óôá C"#ÄñR‹ —h0–»PðFè·áÀ. ƒ"õ(ÛEQ÷YÐK…ïÀ¡J»ÄýÒ]‚úTÍÍ\—¢x aS‹iªEX-œ> ì|] ˜¶'øb€)¾ÚÉgÐ’/ #'Gd¿š ;5D•&8n5ÁÓewሼÅëP Kœ-ý¢¯!€0è**ûaPØ!èÃÜHx9Dž ä~sŽ‘Ø’²– â®ÂDô½C¶‰üÁþP'Œ8 0zÙàÌþ™© %Ó% ¾…jTý<Ô£Þ±BžAO¢¢3Ó’+V}ÖK¬¹ÕàÄŠª ~†AÌò"¿¤P6/_¢,`ÆðäêÑ0âˈ2a®!kŸ BìI…îU“ àôë!ä!¬s: @J°Di±ÕXTpš£g¬ï ° K¿-“#Òû€¯à!4Úœ” –4‡†@г5eê$ÃXMï­,ં ™+/H„¡ÞzóL‚q~îSŠö˜&©ÿšÝ rss~,ÃW&j2²ÿJÁÊ[‡xò(_ @JE,UŽâD&8SèQ@ô𠧃aÈá³ýÂDD5¨ÙLm8ÃÁHÞ0ZÁpâýùRØotEׯÇ÷9Ptù#¸=Y1~´áWiãöÆ  ˆ–™*(ÄàÒ4p/¼ K­qÉûWCÁlÇŽJs4”#ï´·i' p&Cj¤R£—Âs´¢—ôÔ §“T;ã÷•7 ýÝþ"DŽo‹æy[/0³Ük%àžòO¯i_œ§RȔܲD;„7rFIôj0»z´K2|…t•`‚øP0 °y˜¥¼ë•úÙ½¸nµŠBhóJÿðéàAaÑtnû_ª‡OƒþP:&:!È×Qæ-ºL Zx¦q·Krþ(„: œд]x(ÚKЉ×Â=Ĩüàtj¡êAA“rl79 UŸUË(«æ@™Ö¬Ýà¾É²’ö_õ ÑïXÇÕ²±† ýºMÃx~ÿ*‹4$½ãÛ3ˆ‡,}ñ(´là?¿Ô!Èí"B¬ÿŠåP@SùO@ùO@øŠX{¨Ô,@¬›eÇÞ˜f•M·È_ÇXö‹îòÑZ0$‡)Èæè¤S蔕mê4#mTÜî0‹ÌÌB€A'ÿÚ>uÊy¥œbóô2ŽTš-Çø‰Ñ™˜TêR¾'wLLDþªIB#~÷ ÷âεv‰²góoûu*£F/]Ð1ƒàΔJ‹‰xæG ’Cí×­ÌdŽÿàAm‘-8_kÖ÷K©<Šæ«bÛW,åðhœnþtÀùJ[wãýŠh<‹·OH´ÿ&ÀÒ-DL2Æñ¯ñE€¿÷85?ŽO¬)ðCbŸkk‡hå¿<ì*ÌÒÅ`®À!AÊ™])G¶†Ku8é$Jn4±Çð8/—ÁIÀ¬ðÇÿ•ÿµê¤Ñn?ÄN‹Ùh“Ù£<çê9<—µÍ'çÂVm¹Ê£ñü%—ÿ¯µ›?1öôi0L¢ßûøÃjb„;ë±Â'5pÌñ¶CˆAïhNª!éø3ö·C¼ÀÕ#‚°’PrÞí\èl £¡@M–ú‡Ë áOˆžsÙòGšŒ_Ò®"/ûÈváÏJfð°æW“<Ô!#êi1¸Y1?«85Ueo¢ý:£lÅNà„^ýæð ø(Åg/YÿdX¿wtòÑ•I¦ìˆûø¥^zçz|Q¡1˜™×õ+Caö´Šsà ûŽ:,¤Ÿ™hSØÀßòÄ"RY,ƒÞ‚±ÎMïl¥ h/’$Ø$z®kÆD æhS_\Ù7À>O¸=ÉQ v‡ÔÀg(&‚™«õ={ KBš5$ïŠñ^Ѧ«&Òcú5±.”7 ÒŽE“xj>šp7-8‰/ZçR¬VbGHM×?Ä€ÄÌá ‘%$èî~±OøGÎkèӆ˄¼HúÁöbE_)TpV[’S'œr^‰Ä‹ç§8µ?Ÿ§óã¯ßžl.>Ôóf¡®²˜”öFm^‰ÕQª@SQ)_BxîägîIid¡Ëàg’9©ò˜›Ä[ òPD³F9YäNä¥ùÇXó³»IADçóêÑ‚Ô5‰_ÅÓqu4¨u ÉÌd`÷S$¦¾R€Œ¥ooI¢…>ÈEzºœLœ‚´ š³óÏj? xÞ )jDY'Р…YzR¨bš¡V òAoúa€åÀT ™rrƒV©]¡ÙÚú}h]¼UL&VMµUD#I–Uø{Ì.©ú~l‰º<«[rââHÆD@Xv%ïóS¢ðítG«êù,kDÉMšÙ‡ÙH%;øm*¿å&WÇ.}JP`(Ÿn7¡˜bßá,ÿ0ˆ<OÎpF$fä‹î©šG(X´O½Ò¯úËLJ OlL ý`ØWb³7kà“ô1«×d/Pan‰×ø{©àP¢H à¡ãEØ wùl"ê"xXB,¼ñ¾=.ÒlNk…ú$ký2¤û} ª…",»}r.ié HÌûœˆ±‰PÂЂâu„ªä0@ Ða2SZ1žeÏòÏ g×9]š0žö#Èûa\Rú8ÀjЕpßg‚lßÔ˜®a²v~ =ˆ@ܲ tý‚༼8ô€ãÚX©ŸÖÐôƒ¿`€Õ.‹â“àànäÕVÓLpæ6üÇ×ÓR<‡è¼ ãIÌ(Ä>—ÈûUh¹z‹0_¢P²P˜RàÁ*¯?ô(…Ñ¡Ø2Øj ! C²Èj‘˜ø~np»”¨'éÔó_´ÒÆ'Ë·ÝAe‘Jô˜X8œÕ5‘¨1‰«Ú4‚–INå»U5(·2iËú!ú€>: _Õµ[ùÙéª!°Õ¡5:};?Å[/°!œ‘޳P¼6öGÈhtšú[_µ¢-‚ÔÛ-FØ¿Fy'Å*2Wya"_¯'Døn”Ðp5’:8`–¸J.0ŠÈ}lŒQAip_ꛃìhŽ•$CEV(5/×*îÈšTK¸Å¥d?RkkE€\ è°Ïi¾ÍKO·jÞ6?˜)°ÿO„G³Øá“¬Zn‡ ÈðÌá}9wl?æWA2B߀2•Íbz®ñi Œü6,‰€e„¬×}ó`µ¶Ž°)#mGC\]…€pëdBS8ú‘Â+5t"btvª—ðXp ÿ~Ë’ØèÕ¦ñEO°Aå„rÅôš”b‡²‰ôFB?¥ — ‚8 w:•†ýR˜‡³&¨WœT#®_øzZ÷VØ ”ÇÝ Þ+YîÅϾ¼aðþX…F”Òž™:L7¬Ê ¨©Ò¢I(8I¾††ÀiÎÊ\œ»ˆZu s1Š€°àv$Ê,ÜN}ô›±i˜ÖD­_f©Lj= }@Y!€Þö‚!ƒøV¡¾y?Zé0;8ï‹ð qÄì¥u®«ht|ÿùëžpyÀ ç'œžpyÀ ç'œüFòpáÇ8páÇ8páÌ艰¬ã)ñmEQEQEQEQEP“&ÌØÌ¾*Ô¨¢Š(¢Š(¢Š(¢Š(¢ŠUJ!üóâ_ÿÚ  €@²€  ï®ÈÖ L#?„xÊ D’2@¶àŒ0[h<˜¼Ò0 µŒ!€ ÀÈ$"€@0‚€€@ž€€(ÕBAl€Fìu»Zp€ï`pÎ17²€ ¢ €€€€sÏ<óÏ<óÏÿÄ! 01@AP`pÿÚ?þ+o÷ÌÈ Q ɸqfO»š«%7ä’È€¸‡ÝauU¥ ý?T5qq¾šg4— he9 ê,eÉ’à›JøJ¸G¡!¢5û€T""tG¢tqÔ[q‘ØTî5ne°ÖÎV3 0 á¥& µ•^‹å˜FƒÒ90s‚´AìI(¼ú€È™ !DDJeð ¢ç}MÖGH3 _IÍÝì<$¼-câªùW&,²!ˆW"’ù†D­ù‰ÝÒ>oÐØ´–CÂß—Î^\=•\t¢6Së¹Çé›LcpÏàUÛÞ|²T¯©V‰  ¢DD¦ë+ òL,ù®%gX#†È[·ÃÌü LPG¹Åïx­;çT\Y5H-ŒÏñÑ UdHßP´SR @¡€UxW† и;åG,Îlå6dB32«@ø‘­Â? „C"$@1a5DéúgåG»£Ñ½³5nôzölF0–yá YTqæ¥mm=Æ0—çÍÑã#ÌS O¦§´BœÈÖ±U#\%Ååk öà©8ž¨³Q`ŸO¸}߯B"GG‰°wA/œDy‚g,  "€DDJ7ÁgüVi±VârXŒq¦6£˜2Ü‚™n3äã¿x÷ZV5`‚Zÿ¨ÖŒé\ Yõy|•Z‰ZooÆPÝåP¨4ìM„)ñŠyaÃôe# ¦šˆ1=åB‘ñ¨ìô'û//1À„&{~–ÝK¯t® œT¢Ó_?ÕzŒ ±ŽŒA%’Ör€QÊÄ9 -Ê åÇ—DC`/˜³øêðSŽ€sÿ†Z_Keè*-D¡eÕs÷–½dÇ$µ Ž¶ÃÁbƒ^o½ò^ÑreÍíС6Ÿ‹í[Ëǰ º„q¥q¾}íBj ×d:”%®}þšÏ»WF±Øâ^±Ò_”k³*äžüúh"»µ†ä\ÌÅåZЬaìÔí~Nu*Ø`õëq1p´èWî ÉÚsß|ï€7^f<¡ïF+zÍ—G |À=ø*ÄÁ‰f>Pw5,´Í9g¡•>‚^y8ˆVNÑûÀ€(+Pë½Cé*’‹bºø¼mç¿»ž™!ç[~«NÁH`u%ÝÈêÞf‡fþ¸èØV§U_0.©GZ2S”2ÑŽæ0è±¼ˆÂgÞ› [{`@eŒ³]†‚)©”ªiYVrð€>¬ë.@ÙRÁéÒ¢g Ñ*Ä"%z¬AýXŠZB¿âÿÄ#!1 A0@QaPq`p‘ÿÚ?þâ G _ÐàÞ¶¼¨ K5[ÃC"¢ ™)!Y(jTØåH8§–aM´àÊO°}´Ž#Ò~$â¨\JZ8:Y¾ÓNÀ-äqz¤Ã£&²9 `9·ŠFC Í ÚGÁ~Î~Wû^€ª@eÓ™‚vú…=0#é ˆ‚$GD{Øðj1B”])éÍÃ=°D°¨ g1Óh ª¢‚ª*ù§ôš'´`zý¨CƒÊI2€ö•§Š uz„£FºÐ¨˜*„èCµXª {xèÈ1(‚Û „ ¦öš= _ ‰Gé?%±Ê5q"…`.%P¡p‡±«ºÒ¥Q O ÈiV'®–Ýc“T6zÆGU"ŠË}%p·¯T­^J¬ W ü¼€Š€2T’ˆ0AŠýñP‚ ¡…°ÿ?L>Ѐ´{ýXÒ~Ò*ä@ÅåãNSÈ´É·¥¤Lâ%%¢ Zóy‰º5å‘%À*-¾§X‚6וµK~©¸„êb\Oêµ^„À*|×ƲÀ´SÚŽ™Ú0 QwˆŽº„:TŠ["€Š@.DH ïš?¬àì;Pl ¬ Î0Â@CM+¡ÀÁ©Ñ1¦#UKÂGi°;PLá„òi¡¥a $¡šEò9t¤ÛH¡ÈBœ@ÐT '@¬4F¨#¶Ô£T+“7ì¢P$Ÿ9*ÑØ˜¤Šò Ž 2%T™¨^~Àd.£ð ÷>×1`š`™¸9òªµäT‚¡t˜$SpÅ … e€T(Ô€5¿z´ã Cfè¬2EDB|LÆÁaS_x\üàPÿ?GQÙýݢÐ)p“]³Ùp•ªÐ• àsŸð(opN”’Õª,¶`éë>ü!VU:÷*Ì>`¯Aa32&¹~[*Ûa~@ƒQóÿ¢Å4YÓË?'À[Õ‚Ñ7¿5Ùÿr Y¨'f — NðëÁ£óïO£f|zhuµäˆ(h0(õÉ0”)ÍÑn&¿ë¸Ïù×ùóç1Ãy i˜2ЗóÍE_´¿D»o˦Y3õˆÄ«ÓÊ"Ñ3Í@ ábé|éÄaΟ$O”¡ü˜îHdÂðe "oKnŸkÀlNªFÉüHðþo™µ˜ý†aE]ÀdN&hšAO'ŒÖÜ„€nª. F4@-T—!÷VŸtS„˜pp,0äÂB°qXð³Ô¡± Í6OGéàè/?æù›Y€`_×fßu±¸èˆå ÆVϺUx (Ej§zP²†%¹& BÌú¿†žIóê4.DZ„Õ[Ëf7ô¢ª(°BHÓ %SÜ<_­3wû2xVaÇé;m¡Ü¡Jrb‚΀ÞzÈj <;ƒ6$A3PÈ¥ð凟33T†€’ã8þ¯Ø2Ää‡]±ÑÐiY¡f·†Ñ’íÏûÜgÅr'ÒÙÎÙ_e¥Úrî[ù_>˰ïq‡-¼ÑhÕµdk-îqÍf:Q2C1¨üðèt€ª˜°§Ü[\µ­fÙ¡ô5éªwìԢȷél›H€?¥,²µÈýaÒȇAÒ䬠#@ä'û‘·¾š[Þ°ê}ô¥hÀ‹ZvlÎ@4ºÙC|õm­Dd0êçû×6wEüÆ/1TÎ]Ýœ#5»‰QÝ“µO7¢L“K$[°‡˜ÿ²àa°Ê_-vç³E>\r‘u- 0tA°ã(¸Ä»Î×p¡a·«ÁÇÓ(pCr„Ñ­ú*—ÿØg3J•ççÂ÷ÏÎQu"Ê5.õÜÃ#C`†÷m fõ@çi÷ÉáÖC>†OVdhvǬ/'„,ïYåÞ9áîÚ•ðd¦™™)ˆV ÉHŸ‘ià½WTÑŸá U@WR»£2l'súh/HXêM¢yQJc 9ÆûS÷¨פûª^€…ÞuÁ̇7ñÝb&ù”„2jr;žpžÐ(ÊB5…Mm(t€P˜$ç~Éc8 ^¸ß§)¿¹Ï7ÃïÃ9=ÈYÒD@6/,¨Ä#S¨$ᡜɫšç¡ 9 i7H*Ùï)øj û“¼'6QTZ\ú„•9ûŒ 8 ¼jûüQ!u‰ªˆ…êÁU°èqQZL.i‘€k¬–U‹Š‘P9d…õ±(+o8¬Ñ°,MùG‚À0€â ¹`p£Ž§ñ0ö‘ d9ìôa° (ñu·çÄãW°šðÑ¡I ò‘ !4G(Ñøl² ²pEËÉÝóÃi2½‚N†˜zwœÞ†Õ~=øáúΦQP#0¹03˜¡¤Y’—Alu50R'¤ŠEÛÖÝǺÀx—o Á•žlõ:í­+ÈÃŒ¯k£#ÀÕ·)È»FP†˜†L¶Êd;Èp-#Í„#%òBÊD7ÉVo‘å\ä…8Y²"‘‚3QŽƒì,†?ªˆØÙX…‡åôŸçŽ¿Àçs##´V¬ª×Nlì, QÅgø©v9¡˜Æ¬ýݧ:¡:È 6)ÌÐëÇÙ4³„buˆÎ’˜ #0¤‚fz£ªh è/ @Y+Õ«ÀµµÝ'«ýˆ[ ›ümÌÀ\ •Ï€»}„fa˜Ff™„'ƒùffffffffff'ƒùffffffffff¶ ëâÌÌÌÌÌÌÌÌÌÌxÎÁ~²Ã÷-NHïÞDƒNʨ.œ©ÀýÆí?J*UÄórµ«Ü^³e ëäÄdj|`ûã:Âi'À˜Œ¤hf'Ä>Ö2LÎk~‡œø@£MZ‹óÀ÷ý¶ÀnRôV¿žšå‹7ÄE@rÐý!Õ°XTš¸l°ånµÑÌk¶L–ªpO ì+“ý '2¬E·?•±Q Æéx¤›àWMP)šC¾3˜ÚJgæ%psZ}ó çbÝ=ž^ªŒ™ÁðÎÖ 8«º`$ ΓàŸ;þx$6cPô`‚ñc‰Ç ;?©G­­«…rõ¢¬1Iظ% ƒNõVCÜnpIí°gçi†èßïÞ`Ô?iÊÇ›Ûá·øÌ=)¼“sšß¡ç3n¡XMW4AU¾›ûìÈå‚Åu—çáô£ù¸Ùž„»ÜW‹^fàüuدæ‰i‰†àqnÒ‘¯–‘'4þ‚ÈÈî:½?ö…V¯uÅø_œë‡¥­ÖͦõuY)x ÎñÁåte*zÉm‡âG3¬³UG! TúKáBÏ2ªÆ,Fñf€ü¡ÌÇõE 9ðñÙ0±äî§tƒâ ¬/ˆ°-ØVHÙ \ÉæjzJåî¹;Mc7ã ^›càXw;6Aƒš`9Km]ü’Ès4,0ˆ+ËTRâ}ñ«Ô€‡9Dià~„6’È' Ø Œ ï¢4µÑúeÇäG`Ž [0ån²ƒrʼn 0ÓPÜ$ØâÍeÓA {œƒÐUØŽcÕÜ^-„°ˆ•>Œ:ÌÚSyÒ›½GƒœsC©×ùWáE4plIøJ6/ÔgZ€ÁÉø®ÑÇàŸ¦ ¡}>uP™Ú»¯$1oÔw € ‘ˆ#7&¬lÃs²¤¬|+ŒªŠ†¨ïß–2Ãd¨«?‹¾¸ Ê™}Ò±;”d¨#LÞ¦_®"1ÕX¿ë–‡BØ!⮽^ÊÍ”%äCÆ/¸ýì¦Ç2wéÃ?R—Q©Ù/µ†³Bbá"kpaÁ5ã\2¢Ø]ßmÆoç<(Ú#TKƒX¹~\˳Â>pX®”¾!7FÉŸÚbÔùË)A @zªDqœ&T¹»î²s–:È„iZÒi.ª J MŽ ÑÏ1t’…N¦K@ƒ DzœÞ ƒaKh%0èñ|͈Q~öTu>ÞpùëšÁÀÐdc.½É4¨x ÊSw °Å‚L‡™òY(Üpå┦´Öý„ S-©H𠆣Þézq–kbcÉžµ )€pæ'õe9%̇˜¸É£‚³E6scZBÔ [2!ð†Â™%z éR$³4„Iý–YR\ñ[Ä <\…†Jª}Æ~€ òâÙ€uO!Y…à˜a}ÀОI6hs»l"#$tDÃm¼H  ²TÅ„rˆ(P„ùÎ@2$W¸ m+ÖËê­ØÆ é#SÅ ÍÌ¢ð+ÇûÃo”²èùJEN åK ~ŠØ’È;ŒBOª`˜kQ]daBÓbñf×ÔÅô²Z"AèKܱí4󩤑=T55€%‘€¥àÏ PE'aåš;^©%E‘èåk!i›‡ªDê âÓŠ¾é’ ÚÆõŠÕ´8$.íÉX¤ˆnŽIÝ`_ö?¸öš]OƒI>Tžî:nDkúh×ÄÉaÂAi-b¥Åq€Îè…bE\óÓ£wÀ\j\|ÀB}ÿø|õÖë rWMW_¼µ‚ÁŸêÂrõXж ËbÂ… €«ñŒfƒH`ƒýN‰k]C"æaƒ 3fx¨Ë“ܽI’@oŸW=K#ó@7sÑ(s,Á` \峕ƒùÞ†¢Ø©óîc›Vˆ…¤E"øÌ9¹[°ú¡¨hê™rQ_͇PPÒÙê‘¥×O¤m°of°{‹ò.1g¯¨sm¤Vè{8ÑÈV,\)¼Ê˜ZP‡r4,fDS­ð IÒßņ"Ä僭[ú#™a{ü"pS‡üQX ƒmç `­„gpØÈæÄØ©tîv5ºûÁÙÎÊY»Á¨UóÛFg¿Ä +‘”""˜m#ýõN‘êä̰s2ÁÌË3,̰s2ÁÌË3,¨`ß×ÄP¡B… (P¡B… (P¡B“y Ú O9›ü°AAAAA° ‘wÓÀ‚ ‚ ‚ ‚ ‚$= *û0¥¡ÿÙ endstream endobj 747 0 obj << /D [745 0 R /XYZ 33.853 921.043 null] >> endobj 568 0 obj << /D [745 0 R /XYZ 118.357 485.747 null] >> endobj 744 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /XObject << /Im4 738 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 751 0 obj << /Length 2449 /Filter /FlateDecode >> stream xÚËŽä¶ñ¾_ѧ@ ¬d½[2àƒ7Ù ä`ìL’ƒm‰ÝbF)Íc¿>õ’Zš‘œD«ŠÅz—ÂÃåþü!”ï§ûß}‰“Ct â(K÷çC^E^NEDÅép_~ö²£EqæÝµÃõè'‘§~\†ÞY™v²²ùšá*8–¿„Q6“Ø{þþè§Yá=óÄSÖ¨‡VH¯ÊަšwÎ|Óîãñ×û¿â2³èàÇQPF s¶¦ÍÐÃ%§ oÅO§]ëç#Ü­ÚÖ!ƒï¾D§CÄYããü…aÄEÆ ï¸7‹à5–ÏÇøDO„u£pótŒ‹¢ûj˜z„ŽÚêZ€/ª»¶Úñn8óÄàÅØñƒr¦’VwºGÆ#‘Å^w’GÓ_aº —ž¿Ÿï^ïüŸðâY]¨¢ðàGi¦9?Æ™1¦V¡Ž@ãYø š2^Îà>Fpâ €•zÿÖÕø,–d@b“ ŠrNw(êCkÐ6 ¢ø7óá-fÖ"316PÂ#Nªºðê×èb‡ó`+bž¤!Û€Ìè' ¬úÅíÒg‡Œàõ¥(9ÜÀ½yéýبPdBV@l¦EŠ×@·GH«•eþ̧pó,LF¦ñ:ÿÛ$ UP£âÒĸGx{—^§ÅñÀõêêš·è[iÚGga]8†áÝ xðR€†ºC„Êj5 W«ýÉQR˜$É:LÞ<àëÔ÷ˆºRyœÂH•^“‚½*Ô_côÓüNN[¿ÖÒ.ðÎSÏnÂ(õdÉÿqMz+f½¡=OåÉ»o4S*8&<ÒHŠæ5NŽàÅh_„Ûšczpú?“ž-š&¥‡>3ä$t8„ùÒƒ’rv0;×S…R$èEt|Öϼè«…R³z— ·j躡o_yú¨îÄíúG6ÅE„U;Õ†=<]r£jçãw±˜$™÷`Í8R¼"͜đu‰@Ý*7b¦Â„n_ÏôÝ !¦s£ýNd/ÁŒôeæ9…$O,vK4$Á 0ò¾ÝÖw«`´Ž±9’U™J$>|¥Ñ& ÉÀòÎ÷4Ú }W× öÁ!åÏY#JŠ°æ¶ 9Дµ—ž6“5DoÕ/ž=ŸÂÆ;:’î/àÎ'í4HÒ|4ÈqCCvÍc6¸‘küzÀQö‡¸<ÂÜÕ¶0 Hv"ÿ„¯âUcÀ®äq‹²ª¾)2„lÉ0ˆÇË Ž/Nòàâ`Ý/a"¶óÛ~ãïÏØqD¹ü)ø;§?CmN!>—8®P‚4s³Ï•Q3æ›9Nk­Ú‘¯0gF$¹bvG0¿W2Ÿžx>e áe¹~þ">¯  ´rýNwÀc¬Uµ™pÉ!p>¿ÌM™Ñ}% ú .œ”Ýž·c£F^I•d PQ ˇè ¦cÞle`“PÌΓÎ_µúBÀOãlMŒNj¡B\Ö¿ú~¼qLŒ´g˜Ïqm„— }ÎÚÊDE‰O;êOWS×EdJ9iG×PåAT ¯“i¯iŒ‡ éG†-=ÙÜé-S|Ì£4X½P„pw«WÑ–÷Æ¡=è–ászÀ¹YµFF£xUnýýç`ŒÒMÕ…P¦D¥||y~ƒÕŸ¿õj"íùì¹áÜÓ0˜S)À%Μ™ÛcäCÏ,t^Ã0Ê«ˆ?ßP°÷{§[]qW€ŠçÐA Bï‰ÁëßSÀlyGQPɧy¯¦WÜalMü%xL̪7®cDšXð¬Â!Õˆ"#âÂÆ‚`»úGç0H ï­–S$ÂxÜ6JJŽÀ~'C¹ `Õ’0Œ"¿¦"Ö.ºk*]!ks!'Mq.Á€¾„ÇN,+¶óò+… óÿŽï‘bù;wþçħ )å* ®_é]ŸÚ¡zÄÆ2õ~àþRàÃËOªzÄ~ϰá ·Ò,ÓPšþ+åÄ Ÿ0ˆÃ0ü¸÷žN½ìdïä†jz0ʳCïܳtº/é¶ãhä·TÑoÑ<ÀËå&ø„?Xà¿«…è*A? BbNÔ!oÈmüέ3ñ†6 o»Ì»qÉ|-ƒ(ö7ùWÆV2Ýß omÔðóÈHZî»­3^ÿºËk„N‚sôZ¡$žöÃlG¼ü&ÞÇ­7Ó¨Q!ïH²=’­¢w%Ó;¾Ø•ÝQý¸»6P®þ¡©iT_ßµ ¢m¿ÇaPF%ô=q%K’ÄšÏ÷þ Û°Ú^ endstream endobj 750 0 obj << /Type /Page /Contents 751 0 R /Resources 749 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R >> endobj 752 0 obj << /D [750 0 R /XYZ 33.853 921.043 null] >> endobj 102 0 obj << /D [750 0 R /XYZ 68.868 798.142 null] >> endobj 106 0 obj << /D [750 0 R /XYZ 68.868 444.46 null] >> endobj 749 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 755 0 obj << /Length 3170 /Filter /FlateDecode >> stream xÚ½Zëܶÿž¿â>j¯"RÔ+A?4¨m¤(PÃ> m à­¸·¬µÒVß]þúÎp†µ§‹¢è—9;| g~óà%7÷7ÉÍÛoþþpûÍ·oÒôFˆ¸Ê2ys{¼É˸ÌË›¢ÌcQ7·õÍÇh°çøÐ=šwºí¡1ÃÏI–Ü›î½nëîüCÓv"úôÏKð³Øýrûço߈"œ]q–U7{™ÇyVÒì·»RFÝnŸ%YtèÚaì§ÃH]MŸÞ­Bí»XevðçѺ#~U4/ÿ úY= !žŸ¡úa$F:Œ_Ãís-…Tfq*R’Û"³{|§ŸL¿u²ª„™p‡+?!ßÍ^)áD¹*V*#†Kß!Ëg[Ûö~·W2ÁÃâ§EútÞÉfÁ“Âzî<%~á”úlFÓÔ¯ ž­çO† ¶{ól¬“g¨­¥&Þç¦ Ëj>×Ù¶ïaÐ4l‰ Oâ´¬<+ˆlk½JUœ—ŠÅ‘ó¼úñåy3¸ PIžU î7Ís:iš•h"H¤¢¿óÏ×:ã~ì苲kj?ØñD­Y“<Ó¶t$9Kæ­Ý†l@‰“ÕhZ‘k °}&Õµm×ꆔ'UI¬®¥j@Zɨ7 ¨sMw°*åÓA7÷]';Swˆ3eN¹ˆGÓ¨4”Y}Šwû]…ÓYY©pص-“és4Ô8ƒœœ}ŒCŒz«¢[\2ú|i¸£Ñr@pïŸN{ÆV4ÁB‡‰2»HxYÐ-3l¤Ã敟ÁÖ†Z0¿Û§¶d˜H ” »§n`n6Dj:£Åæ±GÐÃVKjðN\¯~ÌÂQ0"þÚÎ;é[‚¬g›G;‘ÞŒð®'F¢ó aEöŠÁ*=Ûb&rúY &/¼ü Æ«èûÝ^äEôw@á¹ó-ëIó¸LеõÈ¢Œþ€ŸpÑ4¹2º2˰$Ù„m@·Ù2³­Íg0Íì¾ßħX*å9’¯c½ÛÕ¿µÙ_3”DÌ«­!VæàqR'EÅì1Ð@ÊBfÑD(²èØõÔ@³L›%„.˜%üì`£pÎÙñ€Îz *¿9boîĶÎ:(e —ÍÎÿd6å!û-ÀGˆÐ÷¼´g‹`©X•Ji¯pŒºLUÊ;CΠѺˆê5›x ‡ YÒÁâ]àUÐ ”<yœ†'·¼,_¸E%6 ¥{2ç¶Æ„ÙžÂ[}¬øëbd¯ˆàÁz=4p["@¦PVä”VN7Mæ½A @å%d £AŠª"IŸ‰ÏÖP—P79ðð{Ô¶qŽ˜iûÖEÉð“Gs¾Œõ wYÀÉ ›™g–Æ"™Ñ2DÂÃ70ÿfš)a+Q\U^0PJ³w»m{0›á]ŽyŽÍæÜk‡¹ÙlÀuÈ4 e™r6zÆ èÞ¡¹<ñŽÔʽ•eœ”é²¥épb|}r”±Èæ9ÕRœ÷c#Lø°K÷€.zÁ"~B/P@sÌ>BQekOö² eK๓=`(òr£ÊÁ@ç Ö+Ï~› T (–£OGÉ“hºqvÌ­±÷§Å»ÉU€sÔw ópÎ_øà¾½¦ÌžÎ-$Br¶VWV°>Fäy-à‚ÞU\ùÛ ºD}K ŠºR /£ÅpJ7Ôÿ¼Ë0›x:¸sMNHÀa½¹¸ÂY=Ú3äŸ »|¹•t©r5çßmæ–±\rD¹˜©$fr»¨¥OTö_µâÍ€WÆe>ëËÁö‡?Ùó_ì0nÍÁq²dL¶!ž›ª¼§«Öe$H¡ÂU–`NâPÊupÝ©qÚIôÔxCnFv–Ó;»p…€ð[®eâ•´­!”6lC7‡¬N1–•KÀ³”  ƒ˜;Ž>Ò1!º7”à¹@·éÈ\œ™ &œájiH¯NÞà¸p^̇·ÏœyutËÝ`RÎK¯ÿ؆ˆh pñµïpª[§áR”«LDTdH“:A…&Q®¢qìSå† œ‡3C±*db÷¤fëüÐʶ®†ó×dŒ\½ºç²×~µyÆÅUrË}ZkŽ©ê‰Õc ÊÝ4RC7tõáÈÆžíH¸‘•œ­{P·€€Õü{²½áI[ž ‰½ÛoÝ\o5E#i™ã«†‹eš€ÖXŸ¬;Ú´ê§VŸIªØ½:PÐ(L nz0þñ‚A£ˆ¶Ë"Œ Ëà ƒK§G;æÉš†«Ô¹ øW@Ħ·ìyÉJ0Ão3Œ—&Ð87åÁd}7@€ë_r8ýÌÌÃKË ôyáÒ*–(¿^Xêÿòæðåà7çKÃ2Pža…¦¸º%¾¬^­ï„m¹~Äqz±ŠÓs_NšZ‹á©/;q5ÒÅÁ„"Ú|ÝHž¿kH~×ø=äÑýÆ¡k _¥Qgy»p^øl±þurïôS×ÖþQcUÌúŠw½L! ²Ñ)z‚G%5ØZž,¡ãˆ˜ÅwÔ¯ÍÙ=QºÿS q†8\ÜR.qK8ùrZìyª&¦àyoþÈS»ü¯vóÅvy Ê%Œ©àçX“Û‘¡­ÞD%Œî{Mÿé0RRQ⽂‰èÃt!Ü¥0&GaóD'„Q7#}‚çTZWÌósN s¼¢0¾vÿ¿„¨Po?¢I\À§Æ|øTõÃÿ.óõÔ¬m?2¶Aoº@Èáj·Ž­å èã²oô/°£ŸœˆZÏg¨ÑØãÈ‹J&Ùúœ¯è‰{`½Û¯ê©R&q%°Š]ÅeÉ•¯4]1½¾ýæ?_Z– endstream endobj 754 0 obj << /Type /Page /Contents 755 0 R /Resources 753 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R >> endobj 756 0 obj << /D [754 0 R /XYZ 33.853 921.043 null] >> endobj 110 0 obj << /D [754 0 R /XYZ 68.868 653.232 null] >> endobj 757 0 obj << /D [754 0 R /XYZ 68.868 568.948 null] >> endobj 758 0 obj << /D [754 0 R /XYZ 68.868 527.954 null] >> endobj 759 0 obj << /D [754 0 R /XYZ 68.868 501.24 null] >> endobj 760 0 obj << /D [754 0 R /XYZ 68.868 481.333 null] >> endobj 761 0 obj << /D [754 0 R /XYZ 68.868 462.091 null] >> endobj 762 0 obj << /D [754 0 R /XYZ 68.868 426.577 null] >> endobj 114 0 obj << /D [754 0 R /XYZ 68.868 132.818 null] >> endobj 753 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R /F30 591 0 R /F23 427 0 R /F34 597 0 R >> /ProcSet [ /PDF /Text ] >> endobj 768 0 obj << /Length 1962 /Filter /FlateDecode >> stream xÚ¥XKoä8¾çWøè¶Ü²%¿æÖ‹é^d€ÅîvØCï”*¥Jˆ_m¹:©¿|ÙåJª1LÄI‘I}¤¢¢C¤¢Ü©7ßþª(Š*©Š*2u‘ÔUíÚ»ïw*)ó*¯Hb=æ¼L'µÊ˜ô}!ª™×†&º.gâ‡û6~íïþ¿³üv¥eE•-mW{úûÃ݇Ïi¥iRçy=<-/³¶÷°¾ÅŸýá4ºÍÖäyœÿ²ÙµŽ?ò4¸ï'×í„Ù? µ³C8öSàéÓØ·<²3Áï&ßw "š~Øl³2M»¾i@‡Ì‚o7À;5W1í*W¤ø÷‡ß>|Öz}mS“SðþQ¹C¹»O+·¦J%º("“W‰ào¿«hÌß >º®¢m!,EËšè+x”¼vm1U&QyIºRmØî“õM2œy‡×^6:Q“á,)ío΢h[VI–k¥pÔ,6Ñ™ŠÙU=úäeïF ¦u<õÌ|²Mãþ4m²*~A9;îƒðû±õÝYQè—l¶ešÇ_,˜™<mÇr‡ž—1L£õ‡#*D¬¿R¶ëÛ¡qyü](ÞDRë’²Fë ´¥1žÇÃØÓw!’Q| ÇK^<žQ#¥Ò}ÇTËÓŽlµè„GPWÅx°‹ÉÎb.ðšÐ3ÍÊ|’9˜:á™'±úöæÑ|+a'Û-Þ)æ`y¦QÀÈ#SO"$ÓéÈl‰tïÏmý.ðŒî°HãýÃ6+ìö,s­TÁ]C<‡Yµ›; ®ßÜ:”†Æ;P­AŽ<‚æ=¹ƒè˜2]‡nIãÎ2et¶ñaò;ÈÆ3/?Ê!Òt”…¿ú°«)âOkÝì;$üÓMGN„}BÛKË$ÏkÙcÎ{üï¦ÊâÑO…Uüéëùëößœû˜Z~׈˜ôÃÄR˜¬£xDœ2‚U TÀ=;¹â Õž?M|=på„H¶è¨1oa ùŠûß^@œ<ºRX.Š”äì#ÝÎJ•ñ=^­‹ ÑuEŸóÔžš €™Jй‰P÷äœpK˹àÊ™*¥¤º‘o4•¬Iƒ¦•cpJI©g :Ï‹ M'ÊSßo¶5"¿ß{ļñyûëâÄa´8ûáÉøù™M}˜y¤¨º€ü‰²ñåÔuèú[øÃ°ÌgüÆ‹‘éà¤Ç:™iµ.Èq?ÈOã™§PzÀŠ'“o]˜ÜÀ#Fi´+Œ£½+Ô„u½ðÉy+ø¹(‘€^Ŭµœx²ã«¾x]•˜U±l…g¾ƒ»¹ò%À ¬T‰Ó¨½*¥"XIUCA…rZÏ•M‰d–¯$ è-ÊÙ{æfLJA¯rQÞ)Ò"¾—œ7„r¼­ÎF™Ð™hG×ÀùLeøàžüA0V1ÝÈ‚´.Uóî~Ò<˜2O (øZ•pæò/5¦¬m*ÒUÔÕ6PlUòW±Ü Nº-á.¢Hf ªˆ™ÉãƒôWÝÞ¿Òqø$ãAÌ/Ðu|£%¯[ò<ÒÿE}*[|äã¯^J)ÐHOb—s(«F0¦KžÙµ.¸1§fÏ+o”R÷HBsϹ†&©”ŸP8V×O*–oì¸.cÿ>HºÔx)uÔHÀWZߟú eò÷þzWª$H„´€ãm&YÿŒ!Ü“³·ÛŠï~¢UÁûRÝÖÛpj¨»€‰oVu}·u¯Ò«¯4[þ ¸…Fx¢Ÿ+)Ý5fØçõ…sÝä!ªßwÌ|²» a0Ò2¥íÒÝ«ãÌáÕb¼ßs”ÒðèŸ/ð²ãóßÍùV%kÀõsW©¹k4€Yi~ò{ž„Jê‘ÙsÓÝñŒ·bd«8 zA<|ŸÙÝ+ R+$nB5°|`Š{µXò~ájü•Lo±Ó«øNHnƒò 0ŽŒ·1ÐÆ`JKo ã=õ\ƒívX?ërîÿ.®ç¸Œ×”ëЩW‡‚\ak¼Ébѽ àìÞ­¸êjÃ7¯žêo<ŰÝ&ø@}1–§Œ6ª6H㺘u¼3ÓÎø‰Iýÿý$’WFšfûÜ]’€4ÈuyEŒ| €.¹©¼œ1ìH†&~éà3±ƒüCÁ½±Ãý"÷Ou…ò|¶¬ì9¹Ñ9Ì+nuihaÙY °áú*ß…›¹ußí¹º’¸¡ãw—‘¶`Í_à'xÖN3òÈ’\ƒÍºÂeø>®õ\ƒmw ]… |Ç ¶»þE¿Q%KhFR}õÄ&“^Lïý¹Iƒ¹9§¶‘Á,¼ÂÓ:©Uq³â:HÍbçWï–T0,‹åÑçÆ-8¸Ð™7GñQÏø˜Í°=±{˜$°Àä%×!Ï` Úirí Ö¹Àe˜øãœLÕ¼/è(_ÒŸ ßãÜ_cuìvý8?ní´¼âÖy(E“O»ä¡^ž¶ï^ ø $yy¯B–Ií]ÉuaÍ2•Ô)–#U'ÊÈ?Y´¹’‚&íÿ0’ endstream endobj 767 0 obj << /Type /Page /Contents 768 0 R /Resources 766 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R /Annots [ 763 0 R 764 0 R ] >> endobj 765 0 obj << /Type /XObject /Subtype /Image /Width 594 /Height 397 /BitsPerComponent 8 /Length 94891 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂR"ÿÄ  ÿÄÿÚ ÀìïOñ)þŸá)þŸá)þŸá)þŸá)ÊûBSãàÄC§øjŸéþ ?ÂSü ?ÂSü ?ÂSü ?ÂSÍLÔÿca‰ûÃò1ü5ÁÇý°ðÿOð€ÿOð€ÿOð€ÿOð€ÿ|Y©þéHOv@í}¿‚gúgø¿rô?‘1+ì²{ÍÌ–l[Ëb'úgø1ïÁ³wÁŒÅY#ðÓ#p7|(Ãéfż¶T®bMLàÃŒÇzÇá´á` €<ÛOmÃuä¾…è+S­ÉýVÛ‡å5m+Ç"§v´¹ukËö¶íê¨ÜÄýýç´“-Œ4ýÛ{¹ù[éûɱÿ3ÿ ù KëØEXlõ5×ò|>Šwú=d~UßnózŠÕž6Û†£vñ½º×a¤ß§ßÖn*ÕK2³¹iãG¶ní8/¬õˆ€—ø€%ü?Ð?ÀO¯nך¦ñ?Nþñ«ùÎ{W>­ãw ŸÙZ\s£gckÊÝÝ}ŸåçåcLJçåi4óuÓƒè_ÛÏà €1£R½™õªã~“µ«Î·/îö­{9âÓ§ûyo*Ö½¥j•8ÆïêS íéþäj=OoÍ5÷*ë~yì‡Oá¸ÿ€ÿ€¿‚†’ÕoÒ3ayÚö˺4îmåñü·á;7Õ-y[É£Rç™moû^xô.T©:~©äµýfæ½üVÊ—¥üBˆ ˆ D¿‚gúgø)5ùØÏ\®êÊUùsÑzµu?c{Û(dÞXþU•º¼8òŒíëó·ª}½­²ÜÝÍ$)Mo¢|nngúgøĵŸø¯§8Ô³«ÍûENj¥Æ¿åHdÒ¸µ´­»®K9Z©wqÔÆå϶2µ[n]Svéü.FÇeóv?àà/ý~*Eþ»²ébæÂ¯ õEß_ØZàõ7_¶ô);º5éUiÃ"µ¯íÚ¶¼k[JÅÍ k‰Z§W•Œ­HÍš_O/]ó¼®D±ÄçOáRþ+HŸèŸàs‚½³µ,áþ£ªåKŸö_µèRvÝÔyÒTÎ<.¿)v•Þ0îiõ÷•„äÌÔKËG¢üf.2gúgøy‡§øüojqæÞ‹ñ^a÷E:]]ka{ÎÝo*§+{•h~]ÚÖ?•T¡uK”­ñçit9¯…oØñ›z¾sèýã<ƒ ÏÔƒ_Øä®+w8/­zþâʶ.òÒîdzG•¥_ÈäþqçÍJÔ¹ÛÃ#±è®jO½V‡iÕ^Q?Wl¬Ôü¥u<\ºÈ¨Äú-ÿ‘nn;o˜à €á!ëYÑoÑK+ÖRìŒâ).ªÆ#?%ÑID ̺¥n!¿eà¤I÷Òœ¬1wÓçÑ@—‰ë»-™>[[ßÇÛm¼×ãѳ9ÉÁa'ÃçrÒ&è¾K+CéLuȪL.bĿĿ€®•í÷”™æœo}À¹Šë»+ã^ÊÅ[;LªõF§YÜÏÎEWæYŸæm[õ_9S«ÆÝ\Õ¹´îœjUiuRÆVkWçÂ7=Cä~7±ž4¾çn±}~ûÉ÷Hð½h¤_kÀút¶éñé÷õsáÔÅ?,>ŠV®uÔøü.£cŸCÖóáTÚ·¢Õû¯•½‚>£]ŽÏw<¾% ÷1¿)vqgs·Ø3Íag§ÊÑÎ\ë­÷¹Z)CÌc¾’‰‘‰‘YüœšÅçÐ|~ëÌvøLBÄØdL•@Ö|atÙæ˜ÏóIKöE°XÙäÔ°kI2ÙŒÅÇX”Ž [ ™< ;<“y±½@VKm¼ÿ5ìuw™Ü.£4òF-17'I0?5òžWUœGSênàH`ÏäôÑõ/'õ=û;Þ§[Û\_Ñü†MK®²´nÑ¿ënef¥:”éw—ïçêÖâœ/s¤åXQs´»†¿ü£¶üœîàüo×y×ÙmxîÒ­=W v]mJ”ÿnáTçSöÖwOÒJÍ*ýmå¬ûj¿·ªÚÐä­»¾¢µâÖåoÊv¸Ýqê+g¹­oä;;ö¯Sñn»[Úýió–ó­yÓ©+µ;K·Û%Kš§ô»e!‘ª¾ØªÃTÃjõc©ÍÎתÇS{½¯JêƒËkÂ:¦uûaR)mxíM{Í«“ÅÓKݤâ_îájquµèÔϾڹk;SÏͱµªþÖdême¶²xú¢u›g)]M*팬59êöÚ)ª¾Ø¨ej“g¶xú¯|öØJ\Ôë7\€úœ+»Ûo7SͲQ»©-mµuú›VÛ Kº›ô»q Fûý±JjaÒmÔ¤µC³Û –§_›cÔѶZ:œUÛ¦¨þ¹´@]ÀÏñµá" € %þ %ü?ÐOðÿ‚ gúgø"_â_À3ý$ÿ/ñgø"¡ïÉD—ô@ D—ô@ D—ô@ D—ô@ D—ô@ DKü(}1è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€ÿ>ÿäï"Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kü@><’÷ ÿÄ17@ 8!"#02$13ÿÚeÙy§âkc±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒEüÆ~‡tö1ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄ]˜kú^Öeq¿Ì¶Æ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61‡«ü?kF zW ÃFµ(ñ11/'/lºÍýáRø)¿Þ¡?)J¦T¤«4ئ»í½^ºc…¤¿m]roáØâÌ*âÏGõ õ Tj2TŠ}6£'X§|f¯F zYE$I¶Rb§?c¤ôÜÕšÃ*íKJHUnµn™*½o©¤?¿”ßîìÉ}±nfæì¶²ã¼.—xÊÈÉâíÐI…m¯¯p™KëVé’«Ñ–úšC±Å˜UÅžŒõ¹-9”>B¸¡å·(—sTÕ£­äêr—Ôf¯F zW¥J¾­’¶–„Ô¢-í‹+K·Z:¯Vd­ê¤Ôœœµ>Mýü¦ÿzµ2RµJ£4¶}>H±,‹}zk#jÓfê6Œ•^«"É[ÒëU™+z©5''-O“v8³ ¸³Ñ«·´ê­éâv²*ÖÕ.«kNXt o5tº%z3W‹#=‡÷ò›×v8³ ¸³×Í^,ŒößÊo]ØâÌ*âÏ_5x²0cì»/›NÆ•™ÉvŠYPÊ“FçÚ0‚äëL(î}¥éºF¸L¡j}Ð4°l¦i ”M ry¦‚å Bp&Q4BÉ–Œ .Ñý5 é¶nr|¿¿”Þ»±Å˜UÅž¾jñd`ÇÙ’–¥­cöĦ9Ï0pT4ŸR ÿÀOÔ5&"]¡–ëš)ÿœº…1•éˆ! ªŠQ‰õ*…6êù)½wc‹0«‹=|ÕâÈÁ³-gkÇ\‰²É ²t,Çd‚2ä>ê‰!ôë™%йåÔÉN¡Sê‡ð ˜‚šFÅ+vR[åýü¦ù¹°[vë¹jecÿž¸{IÜ7•ÉpKL n¸aLLë%-/\ž”1ëU•Wúê‘âZ±p¢‚Wy2å¸;‰]÷‰bZú½$•l^»ÎÖ¯äPŸÇaWzù«Å‘ƒfT'B^Å<ÂP‘ë.€è¦ =½)˜z‚…ëüàc bS:KNêÀ D&—•÷Jä²>_ßÊo›ÊäNϵ¯ê·EÆ“Dšÿ‘d‡XBFE#vûfШ4N¨$Š‹ÁUXL@8¸'2bc.DޤP¥ŠµR– ™ðìqfqg¯š¼Y1öd¼å‘O¶ÑP¥AÇÓSXÆPfà?­Cp2ýƒ¶`Wª`ÚÈöHšÌs(Šˆ¡‹VÝ[‡åýü¦ù¼©“5»@U]tš¯xd”2¬c@éT!5AˆªzÅî*CSP”äHÚ±•+[ãåØâÌ*âÏ𼞠­Ù‹}~ÏVoë&Þ’u›ŠJ î¶t´iŽ}‘ZºI5*ªÿáš¼Y1öd¤“wZCª«©ÓTë 'èuDÚŽoärö”P©ˆþL AÊA0”eæJ€@ëÿŸ(Ô#È|¿¿”ß7zU•íJ¦*pD©QýÒI CúÒ9µ:-ÐÀÄ¡ûŠH ̤D¦Ԫص ¾“X£©SZ‘ðìqfqgÊ×ZVäÈV²ß&în£éÊkâ»K”ÈçJR—_¯Ö»š ÐÂqÐ]`n†åÏoÝ•ûR§(ú;”êÅ-îb‡“MeFŸ+^¢Ï%óš¼Y1öed¾6 —û0‘U qTDÅ7R”ç@  %Ëÿ×q@æ94OÚ)Ìr”Jbš&™>çËûùMòð ×B&˨åÐpOéõR*iœÊôÒd–H‡PUGF²€§©â’…LÂ}H3+iÎÝe«Ii9?‡c‹0«‹>ëÒrô•%ϦdÅQ®nÔu˜5S”Å( ¨ÃÝLT5R˜š SAT(ReBʬHÑoJ]NFµMøÍ^,Œû¶¾çP…eS9›!‡ú¥2‡WJ}zAÔx9N˜êH«t)Ò,Æ„Êe9•*šº¿¾ IK);òþþS|äMúžÏ˜˜^eCL"b„Â'ÐN†è= Lšê‚Š–5¢¤†9U1Ìæa?¦ézb¯@©É¨ªÒŸÇaW|:Îó‘I¼.¤¦§T Å9‹ @u î˜Åë ªN¡‘23 PDê¤0(   Ô'M(X‹™D&€ãuÓv\øÍ^,Œû2®­]¦Ð5@¤(`êÂ*J*ÿ`Â&qM3S1T(‘Rf•¥P…#¤dL|MZš—÷ò›åÈ¢T®K l§—P¦ì (*ššÈ ¡À:TÌ Ç`‹›P‰@5-0p™0Š]Í?Q2E„AFÊÞ¸-k7áØâÌ*âÈš›•–Ê7JíNf\ºH AÀ;eètÀ tP“D¨¡Ì~à˜â@15&a'xC¤$S(C;Àb’åM¿lvò¯ñš¼Y1ödõ …S³QuDÀŸ÷®&£ÕdÊ™Nœ¨&N°=¡) UŽc² %!ú "ªÚ—ÒRæ¿ËûùMó“lí«&‚J2«Âg2Ó?¸&’ƒ¨ŸÙ œÄ(€¤‡õ’X#Á»ZAª'øuE”ˆ¬²võRNRc§jsí·Ã±Å˜UÅŽ Õh6õw-ø§¸”õ Ô2¢¹Ai”ËÚì÷H’er¨aPæ7hN&Lª…L d„æO¼²p¶ “ Á»f"zÓUн5M•¨ãëÑZ¾*’•:u@ù«Å‘ƒf\ ,% "Iu c ÊCÂ@ý£u0RcLƒ¢˜)Ü)Dâ2TÔ)ÐÜb Ö¹_—÷ò›âõ­ÎÛV•ËX™¹kgM?¤0ç9¥A0T5$)Bº%!4©1 ¯`âjHÊ ¢aÕ#.Q9µ+3 uULzº¥jÿÇcõípÓ['Кr&& ‘bmHOø„U÷@çPA@ÓÜ …“X;‡:Â`&’†8]"«öŠr¢—R—RÿºªŠ¦U05šOX#0Ô<3íQruÄJõµ#>Ç5¾µïÊIëL ©OúH‹(tõ¦*fADUƒŠGEnª‹OC€ëMuþ”/Q?hªâ•ÍQ«Ñþ_ßÊo‡;‰[&²z÷t† SôYL“šÓÐ]‡f”(ˆ$ B­®IA)ÀÇ9¡bt(¦±ÌdÐU%ÌrËèÏb²ZÝQ^‘Ç77MrÒšEm%1E0Pób&)¤ DÄ¡˜;‡êºÄP‡—Ô‘’€¦8Àè4¸™01Ê&ï"ê1–ÿÎ)ŸTu"(M*™C¶¢1>sx¾0cí¸1…­«–Slt©ûE³H‚8i”Éâ%¶˜—mÒÀâ §ˆÖæ¡Ä;_¨áõ®1´;d¸kaÄ\æCìô⛉¶4¥FÏnìÛì)¾nŒi³n‹„¸‡h%‰6iÈöÏCb-¹ÜE¶m‘‚â%°´ cIðöÛѳ»_ b ¬ -ž¦Ä`ÂLA´J`Äk[¸–$ØÀÜQn%eétÙ*52Ž,ÇZÐsiÌD°WŒE± lK±Ò™ B´õ![:vygÆÐ­Þèâ¯Þ.Ú ‡öéŒL>³Òaý´umÉâ·­\CµÖ6Э>Ú˜‡jŒ+‡–’žÚh‰°òͧˆ–¢kmÇ ZxÞL—k-6Õ¯ŒößÊo]ØâÌ*âÏ_5x²0cØ)½wc‹0«‹=|ÕâÈÁaýü¦õÝŽ,®,õóW‹#=‡÷ò›×v8³ ¸³×Í^,ŒößÊo]ØâÌ*âÏ_5x²ËùÓ±ãϹM}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å497›»?zy÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ‹…âÉË–€É;.í@óîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹MSœô^–µ§]ýQk`DZš¼Yì`DZš¼XÓñf z,ë‹q^µrï«æÝº"×»îÐõçZ•D®[W*î æ¯z/5ù_±É#2yÉ' vò–¤RëW½¦çúµ_Œôkò¿c’Fdó’Níå-H¥Ö¯{MÎz.z¯hXÕc%wªUžŒÕâÆŸ‹0cÑ´)UÒ¿º¤ë.§SPÕÃ~£¯NMU››‚‡3@­·G»”²3W‹=ÎJ§1I¸-;Šçª\sWÛ{bµÓ–¬•r^Rì¢Æ zœ•Nb“pZwÏT¸æ¯¶öÅk§-Y*å×_™ªÒ§dêN ûg鮯jñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñgú,²RèÛw]»wÉ– {«Å?`ÇùÔªtê4Œ¤ä¥BZ“tÛ5õË5x³ý&å%§å,» Ù°$~Ù»¦Û«ý˜1ëUêrÔJM£uR¯ZjñcOŘ1_VœÍÕöWn: ±)u^ö½•!w8ÖmÅ–×é –N…Í…ÕcÈä#‡I¢X}¹­Kå­îUe²Þ¦j²ùÑÊNVòq¶¥šF£+P˜»íÉKžˆæPë׿ÎjñgÙ;;+M’·.z ÝM‹Âê¦Ù6åµpHÝT/¶÷©»2WÄûKqb¦ßÚµ{®©S‘¢Ólw­|]t+†‰sÓã?Í{¢õFÓw,ËÎàtã’ߣ¨z?Ë¥Z¾(6Õ±5\·¾.# [~λ&¥Ùüž­Õ®6 §âÌ.®Ðè)[•¶¢¶àÐ_†Ê¿9~Ýÿ£,鼄¡ƒqh¾uj#mqº—ÅïG«^×UfƒV«V+“iDÝ CèÐ(Éœ ßÉ àŸa… Åív\ITëµjÚ­Å/#ÚªµPÕº1Jè¸SÕ'3'¤g 5f—pÓ.÷Ò›eß´·º§sOPßÚeJ~˜éZNƒnÇÔ›{a»°ßk"ò§ªì´uZlûäÕÑé73ö¸:#Þ­ŸJ³¯K nƩù®KVÀɚūo¼Z÷Ãr¾ó­ä“¢òÝV §d¾“—³¡n=2ÕŨ¹oO¬_Sr….ô­ÓI)É{u†nZ7U7Z™ƒÛžÞ¶¤Öèµùgë¯ZJ£µl[vÃ#kÒ©¨×¤§ªTK¡½¨W%#¦Ñp¾$íFá»›#ÞØ,;R}Á°\{mȧÅìéÙV V{£Bp)m Ë|Üöú5:lÌåNAÃ;¡tÜ®U=ƾnJ…§ne}ZnºÆ´üXÖÚÿ©Ï:è^2).^̵ÇpS¥újbX<ÉÌž¤ÃÿT@?ñ€6°ýÕMB¨%Ô%ƒ GS¡ˆ‘Ê {hœN¢€$B '—5³[][—(2UêWUZÝ=…m:—Ͱ»1zÛ27{#œ/«›¸§¦J”Ìô¨[³t¢ÔwORžuÄU1u¨C)PžRšWJ¦ª(0oÞ'*Õ@*É-굯O§ÚîeNָЪ+ô–ÍJvN¿v\Ó›–ëd¯ê*t…J¨ÂØø75.œÅû6õqU¯ê;yµît¸àÉ^;‹x8´FJݾZ • ¶¦K:æRáÊ{b¹[lîJ³ŽïHY¥Ìéº6MíPV³r•±pšºz—ÅÑlH¸-#í)iÉÍezÙ®Ögêuææ¹Poý‘˜–Æz*aÍlÙöòâ¾²vÔ·n_yãÜù§3,fŧâËh¦HE5hî‰ÀçT‡)V&€Hš€’çÕ8®ƒÆ¹rYŠQ8i˜(—ó7xeʘ&™WH¥'dES€).šŠú›ÿØý*èÑp ¿B”ÒfY20„²§M9‚”À©´ô“S2Š4(šeUN¿°”†O´ÁS€ïžXI!!'Sç›9`Fp2¢M § ‘o.•¨´Ó &&)·tÕ&@'v§ZR¥U4Э-.¹œÉÔªyƒ(ðS»8¬§|ЉºO­Ò„qSQfWOQ¥”è’ stù¹É)ۉѺ/{‰UŽ·’—¨ÈÖNSÒš~,·Á}$XU“„Pè'¨%Ω»3Z%Ó–Òˆˆ˜"_éÌDLc$c”J¾ˆ÷DUÔc̨TÔ9V,t@4á ª& (¸KŸP¥0ˆ”¨§/ÞN¶s™•“,¾Œ(E^³+÷ú¦~ÙSP'Ö€¦€¢Œ²çU€ì¦8¤u3„…XJiRh!ÈrLÓyU:ËÉÓ„²&9ޝôˆS©uVrA5naMj‚é„€PUcÀ#õ—K¶³FVmU;k*!:·d²„Ñ6u ieNDÕ0 ?±õ$Vx!SšPÆH³ ÊLÍËKÜB™Ñiø±±±¯;ØÆÇ×p«™†x´»ó[Â/„=Ý] eÁ!™gwB,ø*Ç»Jˆ0Ï0¢,»º¤ $ñ&¢l«ÆVUàUPd^ÔAÝ*©1ÒI&Ç;êÏŽxÓ\XL,“Á)6‹ í¬d'– «ŽÙ8u!FÞ\$˜’pàÀ½Š¨V1æ˜SÁï7ÕNcó¿-(#^éÑk°¢S…Ù2QÁ3቗²ÂV.µ yš‰P£”ʆ<ɵ6úÓ2szÖGˆëUî®!UœsZ¢qÄ€Zx¡€|&°€r¶º$·ï/Çȸcg.‘*.™³JjÔ;]¥àºKzÂæðA4¨B‰ˆ°õAòJàHŽÚ²ˆn'±вLÐñçup”§‚û:VaU«­®ØÙr6²ÏÄEé^ËF6}òø¿Ï†Ö3¥P²&€‰%*³ «YxÃNÐ-«°bÕLñD=D;fǹ5ë-I÷Úƒ£ä ¼×®©iH=LNR‰ÚÂ!BÄây"ÌU©y«í¶ÚÌH—,ž¼sÃqlÕ¬²Ã´К£…´@‰Õ_ S¸Mµ_Xj zmšM…ͤµkÕ§!§&¼¦j²ÌþdIÕéÛd_A“‰Å ©i¶Ï—R‹qX˜b¤¢´˜Vµ1 …V²Â7©Ì\êÖÃ#ŠÅ‚]µhÙ-.B¤»a’…×}A±›ø£o›˜Â¯›¯“‹É±_$»ŠßRïíR쬱l[¢µsa‘Ö&K=î2†0€9ÐŽfb"d¦d§A#÷™˜ˆÞ}#Æ ú³< f7 dÖ ä#±²˜Jâ&I‚VÉ"kH6 Șî(f*yEÕ¶½ÑCÞxWBÔ£ãø`Ÿµ 7€1 aYRªfÐòW•ww² Ëk-W*öq‹³,Ò —_á‚bÖÐ;1f$c@4W!äž>ùoPÙž08‹aH¸º`2ôË䃤©† –À”ñŸ†y%ŽRÙ®fñ¡ÜÁWÞèk ,­bÃ5ë¥b—¥vžËw*Ú”1½ÞEÝ…2kõ 3°€gqZÅI«5Ø ¾({ Ùq-Íd(œAƃ˜’(=·<¡ëJÒBŠh¾`|fºÏt7UÁU˜A™8%B±‰(±Æ*Ô¢þ/‹-¹eú3,r†lÕrDÙ_o0¬Ì *‚>2-¢BSèQ3ü¾Nd+Zé»XçÛ·%‹È©­¨-ú};§ÉÏI‚·îªÓ.It׎cB×',ñ ™,»…‚"Õ“›UV²]±V®!#·êIoSsP°ÞÜRJa:^í®–ˆ¸–k±¾½Æ¾{imžÒ®·_ qëÆ²*rÅ6b0 ¥Æ[²6ÅYSꡦº­;b6.V®×³Ss¡‘¸œdÊâ…½&mèu´yW1mt°"i,—i²!Y”ë#ýÐÔ&S°(¸SºFde†Û2k‘ŽMÖ8Øà”YÖr;É„ h‚:°Í‹p5–KÇ›NuÒ@–Jâ½¢ß=²hk y[p:½W‹Ú˜w%hõšË¬“Ña¹†{M1È %µ¡2¢ãJ›ëh"ƒ±6ñ¦Uƒ™hgh.Z{üÑ€ºÎ@LÏþºtÒþ“Cy î-àe©ƒ5ù â4˜þO'Zz(@UÞÖž@nGj˜·CJBi˜.EØ´´•ªö÷Å|cÀBÛ; T˜a7Q%±ð,‹8†Û«“\Á¬uªSh¹l(7ÚS0[Ê*Ïp•ʈ•%IPáªL&wBæÛ–6Õä xLÂRJeq.ä”B^!hj˜¡ê²ÖhP³€aÑOk!t­ÙR—(*ÂPaX3Tˆ«a­¨rk5•FÅ}8oX28@×MØm˜îÇÙTQ6%f ¥L\ŒžÊ³-[+“Åu¬ïâžî»´Q âÁ 7)– ÎjàŽâöLŠxÈІò¶+Ò5ÁhGqfŠ´ç¬SÂÔ ål®Fb&Kq´r¹eäK ñµä¥D i&úöŒ´%&6â¸>ðµM6m ‚Q>vƒ»Ü&µUWjošì®· »vÊö­Í¶ ¶ÂJÊÔŽ8˜‰H‘þO)0Wq½y×JËc¨äWR‰clÄ.£XÐ^RÅ€››€Vj\¦5Š É–:Ja:­ÂR‚­<ój¥‡d(‘‰«s‰¬l:¹ïeqµ!lNÕ½€MžFG™a‡í[EÕD÷¹èJ„T¦_Œƒ)º‚¶d +;Õ´Ä…«âb`ÑJ¡nÁ±lêH4ެ)¨c7‰†ÄCù··Aõ t”-éÕ5ð@–€{’ž>¨5Z×!”rKΉkö '»š³lX¶ :ÉÕ¢ÆY72ÑÐ}q’vèbÒ¶7œmˆèÁ–ÝJÀ,Ð\“!ð­‚]²L: F#r_K¼Jeuäì5?$ɰWZ®oJ¹°ÉU•:²ßè'h5*°3|•`­*¶AzØ\´âÚYn½úLMdT8`iÜ¥½+X¤þÄÍlŽw…•9ê| =u˜ã[§=ˆf -s×"ÁÔfÉmc6¤µ-¢ÃR‰s5Ú];è$s QÕW±»“ P ç™ °ƒ\©ƒY Ü©~5òÐ}ž«ÆmW@<7¹Î5FßÎæ ›jñÄ3$˜Ý<”­h¸Ê¼­huÁ2ÓY¢åºàÍÒC¢ØM²{cf÷ ¼wØ $5Lïq ”¯{Î6˜:ÅeÌ©i0ˆNéÕÞ/ã°ÈjãeºÄ8ýûžëV„€35ØPW¬ØÅCd5±$¬¶NÊÿ',šÕý©®pͺíwÍ TÅx°Úדk}¯hA\æÄÀ–CÁÐ’H³|¥PÅÀIî÷5óóãäž3,Œ]çI¦1Ù–'…Q_’À[«e]Ö¶l§`ô ¡,å¯Ko Á¢ÀLãŒ!¬Sï²iW}Zó]r2-½" ki*èïPÃÀ\Šu˜ÜT×`÷9|CÊŹ :Œ\*¹T…T¬–P.YR¹¡¦n\û€Dãs&E6Oæ*“jº¥$µòÒT ô[Y½ŠŠ¶¶+•µ®zs @QyaacRrlÖ5ìX5ü}¼Õªs«ÔZ"»X¹¯%*ýü0¤ªkIò€RšôVSæµV(e‘,ØL$âÃ+™¸âdƒÅˆ±^_qá ±y°úÜ•ë ¬?Ý‚¸-ÔÕ eŠäDǤl0'lx#bl“Bv7ºÉ}@«É´j¹W+×£ ”©“ó`{x˜Íí9Ü#!ç2ì.>Úœ©Æ¦òøgƒtÛeºíÛ)³Åʧr¤äØyɲ1±ÇÐI›Z/«xpÄI+HDš•Tí…V½+Öh•$EÃ\M’ E·dIGK`1ý7,l%¶á溲ºõl«&u–I€VR0À#ZfÙo8®QÄŠþ,1+wêXí™hÒ‘µtñ!+Ü›îšî6:;† eÀø´Éžå15ÖÆT2$vì†$ÕªÃd[¡Üñ¦\*L©Ãr"Ç…RzLÁ"¿Ò§é²lX›©ËN·pÑ­f½“䱑‹—ƒ7–±0â6‡p/²Ò¼bÚ­¬6ÄÛ^0ÖDe æ™Ñl' ˜å x(›‚Í„6yuÖšïf³çäz^2µƒÜ*X¨#] • ¯Ã½v ·¼¤v…`¬« ¹T$ŸÝñ®•r4š´´Û2AÏç”]Wl ãDñóÙ„€]É=ý¹Æ< µ5U‚k kŽØLÙ©3À™sVî±4ÂÝf¥‚µJՀߨá†ój¦ÙRFÁ¶‰±oøÂ°yŸÒÖ­+øžª®’)VJ¯>ûÑ3j¹¾W@ñt뎨©Mà`¡iLÖ%òn9ðBA2$2%q(˜˜ýýb}“Éœ²­à‹T/÷ØÏ¨‹É¶—ØJóPÙ\UIœÊdXßa‚¸˜”Ÿ»ç‰Øé·'2øo§¸@Av)ÖÇT\Ç啨 (Ñæ²­;§j¢g¼G#c•„¦¿‘ë”ÅzÌiw2Ölˆ ×U$+)Õ6M ÝÎêòj8¬­‹PkiÙlò¥6öµ70§Ã¢Ü'†I–¬B‚7§t²}“Ç5™;$Úª#{ õlŒÑS—j²‘B¸UpŠm5rÁyX^„~ jwæš¶<@Lª©R£Ñ+Yd{‹i שß4öÐ_AÃÍ›Ïzí¿‰¬r— ê¬:³™¥¶Þ¨êêÚz¦WTfdJDz žE-•~Qk`‹éÞVI„´…ƒUv½'-X±pb ÝÊD¯0á‘ÖyîZõªt¹í©°š„‰U®@±#˜„2ˆPîDmŽ?ƶٰˆ8\„¹[á¤B©ãºAîéúÈ}Ð:Ìzø¨…9‚¯ET')¨ê®Œ‚*ƒMUêÕu†®ÊëÒÕVFV-#{œÚ,™%¼"¸,ê~eã‰;kk¸{w¢xS«,Īؔ+{‚RrÉ ‘ð»ȨV|È•‘ˆDↀ!•ia)ÀSÜŽ ­ «0JZ­•We‘N²ÂÓøFF*•øTÖ䫪v²•:ºçx2¤™±$§oî0aF/ÙY­Æ¾à˜„y)aXù­.•›_5ŠÎRtö™Rí>Ã8‘caZÂÆãl s’¸~ʉ •:»‚ aå-jxEšZÊdíŒS\rAœ²{ª0f`«^GbáÓ<2Ù”´ ëÂÌäËuûL2šl¬¥ip=Y+J“ 8ëA[É-„þ] µoºÑÍYŽ´Æ2ÿNº«lÓ®è;u,Ø»³“¤òÈw%H«W'¼o¯ÁS¦ƒˆ%ŠþFÙ‘ÿ1ûÇÛÓí1ÿb'üÇŽ„Äo>ºr´=ãZÅŠ5í˜ ÑUQ|Il7Òk'mŠè²ðÕH`0 ¼c°•ë`«! EXšuXIM €³á´+"¬»ù§ÌÚ+UÀ ²¢»È$yÍ’…¥y@`ò•p>ö\]ÑNÒ!ÀÖ(–ásd\_Ó‚§ ³ù•ÂiAÖ‡0ÁÃÛ6ܤתíEÄŠÅ ‡6Ú‘š‰qïîéÊ!l0Íà/\w‚Va=Ð â°öéÝ,•!c“d§Ò O@]j÷)–®W}é5à”Æ7¾g°DŸNTõ­« šb°R–À‘E™6*d˜©Q‘Ãmc¯%jA_RŒ€VÁÝÏ惢DÖ±íí\m™ÕXÖM r‘0VvMM•ˆ{^eh>5rªx§Ðk?cfºÞ&udºÅÛÍD¶ öÕŽªÒË&kÊÒY\’QgX`NÛ?-â'ÒkJU¥Ê{íBÎ+jì›xäâá»ëãR‰,KVFZÛáì®’ïM¬|¸È×ð¹ŠíÄ+È¡–›¶¾þRò@`n§;ÕÈùeF¶Þ›M²÷Vs‘©Ir0d­ðuãœHCCº5/5zWW ’ê5 y“®š¢Â‹-s38ÕQ²Æ÷G:pt-Ó$‚àW&èh1ÜoƆO#ŠtXÆÞµEðB\•\Ä–àBgdÆí“ê;µÛ>±ëâz󬥰éêL´´Z/îÙ¨4ªâaûÂ….`t‰€bg×ÀùÖ PcÔùˆ(žìý –)-#íîP,'ÓY®?öÃCëÞ³fØ>¤ËÃ&¶‹ã3ýD¿øIzLíÓÖ"¶4/0:Ô´ÝÔÙrÒ`£[G>°°V¿üÏÁ~¿uŽÉöúxºë–õõQg ÄX™€Ù²'nšÀñ†ØŸ¶ØÓÇñ×Wñ’¿ˆ2\FÈi/›P&Ä@òé¡Ñ€Ý>²¶go§ƒë^­4öåÔIG*Üœ.96Ä i#.l‰G¼I„BPS¯‹,[s,Û{­Yqou‹ 79§?scXDfSÿ")ŸäGZõed¢º:ƒ(´Ö„Åu“ÚžÝ`¤Ê¢uÙ+Z–C¡@¬]4O]õ•r3ORåÖl“!¸Ígˆ@h€,@t€ÓÓÄùƒÖÒ2?Äù¤PsÙÆ¦2¢?q”'oüxƒM6ljëþµ™™ž§Ìë2S¯|íu=wé:ëõ÷i¦èôŸOÆÝ[ûõL¾Þ7Y#˜D–ùLIk0¹-&B=³¤k‘àzϪÀ·&¨²É n_ôçAÒ5_öz{?·O×dq0}K—(˜\{®2} KYþÂZäĬ'ûc@ëβ\ /©2 "i`ˆÙ!e}¼ÝÉØ©ÓUˆŽ1Þ¶êçoäê,±Iéº{ÆÁi „í‚‚âˆ\ˆÌ ¡Dúø™’™"™")™"™ÖfgÖff}ff}fgïâ•û¸ÛonÅ+K˜}VšZ2$'ägÐÀKO¶£ûGˆë©Ûì˜Æåí´ÁÜh-é#˜˜“%³VÌÙúÌŠg®zĈˆº—2RGÈ[¯:bYìù$d¶ïø×ïÓv‹\k ëN«~ÎlþI’±ã +$+Ù ãûÂøâf»v{4Û¬xžºëˆ‰ê\ÌÀ¿ºÏ;ÛgßóŒîÔ[ò3ä Þ^¾³ãøÏªàL¨2¢ )#¶À)‚‰’˜ÖµÖ?¼¿äZ‡ZuZ¼öH¦$V2SD :‘Á‘DAIÄÎï_ ën®D§¨²Ê‚8aqÛ`n`˜°Y23' 89÷A Nºø.ºëc}G–&µb¦´­°˜Å®EFsî%Ä©e3#¸ ´××Ãz׫_]Ô9V†Ø_-°×°Kx‡̆Ñ8Þ#·A/tFï_ÕýO+Îs!­xÕ϶C»¢qfÅŠýšì‰dÛŠ‹šÍ]7&»¹t®Ù™†’Û³ðÇQfNõZ uJì¶áH:õ•Ó¨²/±>˦ÿ&s¦ºGÞ|q™„È”IA„í5D†tÔJ'BXôñX@ì &k7(X Œ³ã‘ÖØ3¤—¦¾3“£g"kW*ù«Øµ!÷èY¼’¬Rb·FÏ7Hï!}‹ l鶿€:ã¹òÅ’¼\òK¿k’°u»Œz¯ªü i¿–Å0«ä)ð0ø›ÌÔPË ŽÔ6/˜ª~ZtÖ>®B¼¯• ­,¢äǸ¦*e#³®žèBÉЮ³Éµ÷Þ®fÁlÕÀŒ-5QôÜep]'ܿ⬙ȂN›-Uª ÊõçpñÿºD¶¹.Û%Œ#hH*œÕmj‰*.pXTQJ[ZW°b®ÀáI%$…C¤ø &åIÁÕ'Ö[øÍëhÅëÚ¸ÔÅŸ;{`îV'²fç0ˆ‰µJ­ÈW))Ru*4ÂÅÒ¦¤­4î/™bâ´LëÍu ›JÁŒ‚Ù\Öpé'H¥fÕU$ ¡7Üýò°ÁJ`wê'c{ªD«ŒÒ#A@à Åê6O• 3WFàeWœ¦»P‚öàâ¢+!@£R£]i¯V­JœQõdŒC+Ê-­ p÷”68ôa8$kŠ‹7åWL]¸W —hK ¢Â¨³zi,vVV@âÒL¬óØ % U¨e†Šê"¸ÌN·•“[¬08™eBÕ; ¼:½šu©VÝ DòײŸ1¨ÂeeÌõˆ‹+°Xu¼¯±{#ŸÄT¸ÕßÄ?œnÐ,"Ý\¤Y6­%r·-R 틹ò‚™\ùrõS­Óª°ìwNâ-eodòYLv2Ý̚ª€NÓ^™±]µº¢¤ð­¨Þr òÙ ÝBÚ~†TE·-…{+¥y8jÙÊþ\¾Ll…9ghÕ¨0¹*¾.yUŽËä²®ÈÞÎܽåÙ«”|Wq¬Z y!QÌ…åCJ­:!\ „6º¶¶GÅ_%:q¦q9^¢rű|h¦ µ©RK62búì„Éœ§ˆj®fD™ x'0i¿„8JìÒħeñj­-y•é}…~ëÖs\í  MháSÕ`ôîŸ.1ç½{^=9^¥ÌŽ#Õc)â¬Mšµi‘€IÕŠp È5ÖÒûj®<Ö,.Á讄À]½@eѺEpýË[)Øuà©îÊòJŠNy,×M*£<®³Î£®‘Xc<ªÀU:'tqÄM¥’«}MM†ÆeVîÁW·U–^ÅÛ©]zsÐM#5Úþ‹6*ä~±ë®ÝI$¹d3'<»ó–b)Nkç •ï¸UV÷hžÆÚ¬ï?ë+EvØY³Â"vÉFæñެé1†ô¾'Ó·qù7÷˜Ë¡o¸XÝÊÖhßÈÅj­šìº´®TP$q1ã§|°È[W#º¢­ >I8帨5®›o²ÊÚâî#’ºÊ–ܵÌä&/P,`íŠ>Zbþ±“ÃÆ8Öž&ÔâïåíÒ,`Úe»¨ö7 b64”ŠëkXä÷V`Ì·—Ù¯ªÛ>-çˆú•|}{grµ´%¶¸„búÅ ˜C+µb(¬@bÖ|dsÔ>[c0X:‹%“êù¬~-Fy51œ¶*•‹J5Ìè)Ku{’ȯÞzŸ ‹fÞ'¨:®ÍPÁ áw1Ý=®û•°5¹² ÅEkóCìXS 9Ф±FjÆÚÈåO¡Ôµªa& _^9ت‚3IöK#`˜Ú‘ æ6’‹™3uÕ…j[[ÂÔx6!Š»TÜ Laf«žBQb;JdìP …¦¡ž-­ÖË©d5üfÓT+ðòµÇ¢°Êj­ÃYœ’™Q"þ<»ê¼kºëb¼‘3Î Q|‡½PMˆÛk¶L ÙÌ*i¦ÎJØ,P$ä ·_ÐÊ—­ßZ²b¶!ÌdIjá%0ö&xí= d¢@é×ȱüViQÚX†µ¤kªÅPY×d²|Ws–t f¶êÃ["uC"Ë q뮩›ºÊ¡°$@@ÌÓl›à•Ù›Šr˜ë(¸¹3ªæ‹©Ô¸kJŸÜÔ ý–IAo(dpÁ3uu8lDiòvî <R×<Á SÍùŽ'sYUgVÏGHV>KÎ7 ­€×QzB,Ù6òOA%ÅT?¨„Øm6,® mµV CÒ×vµ­†Y¯V° r‹x‚°¬$¨5¥Vá››´cÚUF>ÀØ;‡Bq€Ó8m„ ›,°"‚&‰ÊYpIã‚ðMßkþ›b¶DÖnåm©†VRU\š”)îQ€”dUîE‚m*±Y6ÊËòÉsœ÷êHº›[aKâ@¶+~hk5F£ªÙ[βùå"±åZMéBê×CíÙÇ;Xt «ƒŒùy/H&9޵5˜×ØU¦öâHmuão.§Uu-º¶{*¸ú6©Uàh¡’¼wPŽ–íP¯] d?uz¤Ó° ¨p‹ö­b´¢ÒYZÅpTë= °Vú°rƒr•hBÅŠáãæ¯ik&6ÃÒeÕu0ðEå*«¦¥ÖWz+«&¹§ wìºIL­NW6k„M=õ¶úX:ö—ÄÎ5)MJ]Rî5Y‹öר³S% ‚j’a-JÀqí)V¹˜Ù]æZ-ê‘°+¤µ­šìö­c!–¨JœØr¶ÎÜa°Žå'‰’, Ú¸°6å&/> Ö…L uL/Bovdg1&ıFžç…k±º€L0¢ †@‰ÈEÀ_ b߯“[B gaéŠõÙ¬Ös,×YU·Æè½l­í‘¬ŠÑ…ÊÙÁO[…fs |³Æ7+j)•’êå ÝY +±N©1†8IÍ£rTÉt– ¨Ð¶ó}œ$¹Š×iºÊ—Þ®³b}Õ£·°Ø©+LšŸ+®³kXÖØ_5”>ÍÚ¦CN¢­¾é»¸·k#~¶«—n@)›0h#mfÍrzx£L«€«m0Q]¿QrnV7ÉW´á«omÛ– `ôUp¥ég„ Xb®-äi'šj4Y²y­J{@‘™P*¹° 6kØ]¾ÇÚŒ]zMîM"÷PVMp†©Á^k1QÈ4Ü[kX ¬ xº±KH‡#eƒ”í-×*º='’]Q•kaÊtmhL*´·ub•7œ5‰«]Œh-ÕÝgo¸|°î+¨–ùT:i›Fêi US+ƒ(6ø«yV¨;#Ü nö-¹5,%ª=jÅ·Ÿ+ŒFÊyI…bV™¬F,!Ø;ÙdÞ°M¼Bp~ÉïkUa"rТԀOš+nö@«lòMfë^VJ* t•W”§6Ð…ŽÚ¸ÑosŠ%xä ŒdŸ5ç_| úÖæ©~«bÞ¶ÕqñÕ¡!ÛØ*Žh1‘^²Ó#+#`î}"¯vvÚmÃp×QÇp‹R‡}5xêu ›P1©¼Õ%§b w¸[ÂxÜ]:˜ìonåWãªg £FödÅŽ6Í¥ZI™©W¹T&Ó×"É-½Wd¢z…Ú¡0úUqF“­ÛÑ´¬}P²Ÿ—h¸ e¥]‹H=’™Ú¯Ãæ&{Š£‡JñΩåì¦Ícc‘ÏjÕÆì`¹~†ûldÆšrvÿVºŒCÍÞ­YÁPÍ[¶ÅÍv’vÙ 0±\¬JµÌh˜%ê¡Ò´ÚÏ7ú©»¡£AËeVS4¸nµDƒß ;ôÀöÒÖI^É®EzB×ÿ:zÂÀ€²1‘Æ5à u\¦Ö!”±l]‘b˜:HîQ£¦„r^ç/V¾š©41f¤ññŸjÞa5™Ÿ42,ÿ\ä¾WéÊÁ) `o9zʤ4RxýŽ…‰¬êKµL–ØÒ®&vñ,E[?² H¥~qõŠNMM¨¿Õ´N*OHa)1b²`ÆÉ(am€ó‹«Æ`䨛w1’óKyIÆò °N¬2]£$wV’™VÝg_õª»…>Uˆ.s\¨”ÓxÌ‚¯?ý Q€(Òdk<áêöC5:,¸ëòk¬Kd=â¡=†Ž5|+8X@Ç$rN§îñþ³õw*Ú ÃªT豪ìGo¶Ã£—æ|x8s72ÇLKORósª¥ˆŠ%ÜK` ÅiöžÓ|.Ð-å¥ÛP( çÄ1®«ó3¨—w/z.ÍvÜ2±µ`4“J¸5ÇÄ1õ·ï3Τ:&%'þ¦õ,AMP ÛÔ ‹kæ-kÐh…[ …UŽoo>»@ÉÉ\‰RŸ7úƹ¥õ„ŽÂm²en1e…-‹–šÎįsá›ìí‹ ¹‘-8¯æ·SVq5aÐÝ6IXûn~Bx¶ϲ 6LíW>”šôûxGœeZBTÊ—/ØgT˜ÑU‚hi¸Ž*‹Mh×`žŸª|Xógªíªº¬•@ÛT™\É•ýü›ÔÙnødþ’dÌ™/Q)繞nu›EBË‹.! ݵ¢ÆÁ’Ž{†‹¡éQÁ4ˆµ &dIkóg«Â`»°3XW&M’ívÁÄJ¹Ø%{àˆJFF $GÛãýUê‰(6M7È&-äQ£žNç—y¡q^YÉÈ&)dÃÖÏœ}mir–\@¬ƒa “ÇöÖOaÆù"ŽFnÖ “ɦø†ù¯ÕOU´Ñ^kihKªÃI©LÖ°¢•ê0é\̃_©¾C7<ÞëÐÈs¨3Aí”Ó™±lCW&À>C…öêƒ"Ž0€-ÑâϘ}Ao#Óù;›_Ó0QŒ[L®"P0Ô1„ý8-clÉzÌ΃¤ù¥Õ6gu)îëÚ®èšÓ#¶ÛÆË c“Ñ‚áƒYú쟷Ú4WšýT‰¯ÄTAUnÛ½^¿nF…ºìÉ28ØÓܵ³kP%2IjÖÁ-À3üÅêJ“RPäQUbˆvå×=ó5wsn*°fM]b™R]<Š™-GÌÞ¬ ½’ïJëÕZÔ,³µI¦éz½Ö&`çÓY’ÐGY™ŸægTº²êY´’¤EtóÃHC;’\±Æßl4G'’÷l3O™P‰q*†léÝGìñ2kG)‡3`ص8cFIk>-yÕvË›ºÝ>õT'Ö\Ä­jdq­Ð()pÂÛ»ã$üÐêÄÇt°í«öÕ¥Påð+ZÓ0;â¢@ù95(»Êd<Î꡺ì‰YS®8lG+Å­â;Uâ£ß]dî%X*ÃÁ Ü*’ÓyîWšýX–Öj›QSPžiW•(fÁ(Ù¢ÖÁ È\Š×°‘öøWšýX˜TC«oM”«ï[Jkƒ™Èö§W{,?Ôø÷Êç`ȧŒ¯˜C˜Ç^ÆZš‘[$IeÙZYÌ÷%ï³Êmc˜Z›ì¹’1¢‡~Õ×ÿ™ÿÿÄ@!"12#AQ3B qCRa‘$@TS`bcr’Ò€‚ƒ¡²ÿÚ?ÿ¾ž«êú¯OÔˆÄp¡$™ ¤,3@Š\ñÜYØiu´áô÷ûд9-ÜÃôÁzË"7 @>%ÖOkLC{if¶°ÕTÅ@$(ȵHúuý¥ÕШtÁŠýK:‰6È’~íš¼’£¤ø—TÖZ-9PO(û®ñ ò“2¼jÀ Vúë6²ÀÚLpgý"i¨«E¬UWå~'Õ6'³¦±8äÙ…cV `ŒÚŠoum[ô¿ëX4ð1µCæ}˺™mOqãÜÆàoÖƒUøÍ2ÎT+•FT r2W5Sà Ú²° ÿç½y}FCo(–8ʯpvôülX•·ºŠà)Ç÷e¶;œC–$UFŠÒ2!¹>€1,p-h@¬o~‰+º³^K c|°ÚÜšµ9“¡ÖËb1,—±[¹H;‘ˆrÜÉÌÆp¬‰ai`6ÎL„ÆîéˈÏÉk €ÝƒjfÚª¨ÎÉv$!ÝÎ%]iÓ*ª+K‹änºóD—(å¤%BHVRrdîÛŽêöÖ…•ŽLÅ p±@Ê®²E¶ÇäŽAJ ß‘ôèâG„Ú2÷ ú™$ç!#&ÄæZÐCÄxþOˆæ0ML±Î[ŒHì±”,½ U·íÉ…(‘ ³ô¾Ž§S㽨Ë.àåÁví,\Yò*ÄIE¼'¯Äê7­D¼Y’Ìî¬h¼™–‘–Üd­tªÖ¡ ÕN ~#Qç%f'»[Ub5p­•Þ4¡XtšÙ_â§Äýú†`'ˆŒ?1[Ñ ÔGßñ›|5E™ ]³ŒbBÙ qБœƒjÞ7üLöqžjÄ›øR$AŽbˆix.mÜ EöTᘾ¢E+¸Û^ø4Y vð¦6ªö¤½|;¨šxeLgUíÜ÷¦ ¦@¢ŠÕ+7øŽ9ÿ%ñVÖ5®Ÿ,¼NÞä0‰ñJ£¸HðÙUa(Q­Èè °&Ýè’‚´¬ªT^ά38©«!ä2è–—pþõlÂX YS7q÷U&”—\[“+‘5sÅZF:âÉãj£÷)ë³WÜ¡½ÖvJe›6@.H âO@  ɉ'–%QÝâ8ª2²·œŠdØ×Bˆ¼‹+¯xv `2³ KŒóÜ }½ 1 ¹EhS÷Wr›¬qKPVXf ×£&›¦¤†Ã¾³:Œäf˜–º# M«ZíT?Äô?ß5xIœ;‘ÁBc¢Á{¹d%MUøä€ùZ™ÚQÉ›5^ä‰nì«cÚÖ•{r)¶=¬mƒ¨‘û!¹œS¢ìÙRƒ“‰Ùîw,¬½­Õˆ£Ú _õ‚2n…$xýØå ÀÆ1ã^î[a—…]ü Jë“.E‚7†¼‹Ü[Á; ºöƒÍSÙJÒF;L1 ÉÐF1Û·˜RA,ÏDfo“ ¥*µk’ e(€P¡!C ºÉje× Mž™áí24%K?g´’wA;€)ö²@ä$$ëþ]j=SA¥*&Ô ,h¹ ýl5ôsFºˆ4Ô¦YF7”I–ûÒâJ°°¤† !Øedt~$˜Î{qD`•áÒb•Bü¤&ù!o£ñ$Ö¸é‘ „¹Z‹PV;ùŠ«ò:ÌÄÃÄK—'öâ¼ `ÎIJ±N(´cf;/Äñd3ÒHˆÁÑóÌYË#Q– Û À.?ˆ=9ýÒ4@‹ÔãŽæí2±9^Á†7–ÝE¨Óϼ3E&ÊÜX€þÒ@62ú]YþoˆatÖ$Ëu<,̯vHÀÈ·UN£`¹ñ MW[‰àK`ƒ »-•ižüöžÕ€ Äѥˎ+kD€AZhÂòÅ;ò×%HQ_˜A«ÝM í]€2hq˜(ÙAØÐPdT€¤ìû…fæPnâGoa’¤RÑÿJRíI‘YŽIú4ÈËàT«9ÊP¢ÿÌbÆh+›Kå{hUÝ †Ç 8 œ» Ít lv**§–ìÊÑ#xNÜÃ3‰aÜmÛ—æSmEPÛd¬æ‚§Eš€£alFTQΣ0ï"• R•Qöéø1°æKšpÅPă2ŸsXÖL5¹Eò##rÅȈÄä»V1ƒyX*ÜYÀr¯îd_qÛÅ,öÎî[ S0 ûªÜbCÉÒ¬œ;n¼ƒ GqHPª Úúk™he &2§ŠJËŽJÄ“`©ÿj ÝÔM@M"ñf`J†ŒïG cÌ®JRFDòr íêW7.­(_(Ñ2&&+BZüŸõþO_ÕG;EÆA‚ia/ ™7(&SŒñœ9 ŠV¥×ÜŽ ˆåy³Çj‘KJHì¶ICz ¨äu”R«3nD] 2‰°BSX¢­aº* eb,¤bK9*Ê©q±ìÇp¥A w¼Õ«rvRÇÈØ %r­ÅÒ€ÛŽ`ŸÝ|3íÑ( P‚UcKí,Bã…î£×°Ûo|˜˜ ×ËÆNÛ5µ"¶Û¹æLtÆ–À ÈÊås•·V)òƒ F±á4:„o€äï £úÐGÍ$^è 8©BªÜIĸPAëK¨¨#œ+ ^.·ûjÊîx‘ü¿¬ƒ^MÚ<*WĘ`yq¸ b æd+kÈè±ù¦ŠJȦ(pﲂDm˜PêYˆšEŸïúcèrþÉ?ê~ç¡é^œ¤“þ¤“¿Ï_”úoŸÁiüWéÿòkûÙëò¯Mÿ¢Óý?»_§öëòÝý$#–[ ª²Ûë__=NÐŽ–çÊçÏûý~ýKôáãG§»[¿÷³þçïÑô¿N>tp (.ŸÜ/ÿœ¾öoÏCÓt U¤ƒoü±^rñà⦅¯^6:’(æC¨’!ò®¡”í^ù:ü¿CwøX|0ݠ˜µ}ëòÏOO°¡òׯû_šÜíþgîz_MÐ-㥄Y³IäÝßõ½ïÍï×åžÿG§öáúkìÛþ†Þ6ëòíÇð6Æ Ðþƒý‡Û£éÚléa'îVÎÞ7óCÅx­¼t}7@Þí$ B… 4*«úQªñ]~Wéà8©È 7dîwó¿KéºÝt)»°€ñwæÈØýÇ_—謷á¢Èùlw5gsäù=~YéûÿÂA¾ðÝ›ÿgíû}:I¦‰³Ž‘÷*Ô|‹ó½o÷úÿô>¬®+R,2ApFÄɳ¢c›*äÁ&&>oË ŸâòÅv’DA åÝT"Ÿ 䑈4hšu«õ&Œ|é9oQ ÍÍP>6_#ÞVþ—ÔŸèq“°^I6vû´¡ØY±, …ÂBHÇvø—N$Ó¯löØÄÈlî4e0ËŒË+fñ±`ßIñ¦=3ÆKb;°ÈŸP ^$€I#}ºoQÐ"äÚÍ5+´Èy-ÚÐ$ä1m¼ìz.ŠfU UT–&oj‹òÍû@Üý:ŽXå£upЕ7OuþªÀƒüªÊÀ2ÊÂÕ”‚>#b?Ï®ä}ÎÎkÝù…òíåŽuþ…_ßø±K„…»jQ-š)Ù–)R&ÌQ*]xÛY±î*ÖCøz‡ª~R#–h£ed4’I,‚¢‘;2!0nLCZ õijTÉ<( Z&ŠÖE¥‘€x¤ÉK¯Êà‡™³Tdõl¯Þ-@há!’H>c¶ •Ф°ªÆÝ³Ãsš–ÕLÎÝéšäXâ–Ü·É,$»’¶ßØÔ×ÐM™3íÜU·'¸Ì¯vs³‘^Ar(Yk.$)èS…v[ Tÿ¼PAŒÎ$‹æÝ¼IØ|Á9 ™C–`׫Q¢ZŽ~ dÃ*\A®…¸#<šÀg!eÀ]U›, 5ׄ¥“•†?ªJ’Ì £8ìC¨ÉðÜÑ®‰-,’bÎîòeòcOš pù€(ÛÌ·Zo\ÖÇl寱iE4„ó1 aŠ”ÑÒdf­ƒúæ~ŸªÕ )"E§ÅÒG‘ü·B‹ì”r±Š›!Á½mc‹I¨’51j|û/Ü(ÑÉKvòùI+ /€QGÝùÁ*d}["Ë«Ô$C L‘Âb!]"«bâÊÈkP¤È0´_ˆ5,0YQ¿%Y8Ë¤ŽÆ"—<8*û€Zéú×fÓÃØG§ˆ£À™(%J¨fâÆ³2/,ŽJíÆú‰5€‘¤V ƒm!dä ÈËcå; ¬¹ó]huM¤dRIÚâÄ¡:sò€Š5#Æ )f{äÊTnÕùÄÂX¾Uü[ÉZ‰•¦’uï%Oܶˆ,lˆÎqD*:>©ª:uÒKIí‰"Ä_r&°“df‘ÏL6³7®êœH#3RÉ ÄÊÈ?É:8Enôr9öJÒÊCw1·ÓúÌÑöûºã¹4š“ŽRÑvÌ¢Ô+27–ÊL:ƒâ AM3,òH!å$1 s’$‘$tIÄ]ó°¹15A’ú”šÉD‰‡ÒqÀì°…Hs) § #$­ŽÊ»QhµHûs7üL)Ôä¸0–PHâo¢½¶"ÉR–ºÔzŒHZWšÄ±¸—‘È ÝdBV; ¹ëÔ^°5:SŠÊ5/!Ó Ò¢ÊÙöûè×SÛ°¡ÿ]P“ƒµKþa§MHÓ°€ê1d˜™b©u2ªŒþ#‡ðý¶1¿%#aÔž¯é†‰?–šž%%âî7v2bY•$|Õ€ÞT·Öƒ_Ç[¨Õjã–íÍLIŽ[Ån¤Š÷g¹‘²:ÕúÔQµ.‰åÔBÒ•…^Ú oS³ #R~W,}Ô7ê_YŸððê?¦P'NüZxäï”"©]À$³•öþZ¶vD­¦ìFu¨Ôv^WAÆÌ©vR"Y¹h¶Yìb7­'¬M©ÔË’vt‘i倆Y&Å"ÄÁ³Ã²vd9u©$sé4çTMÇ6®WT湩LBÛOšûqE"ñf`@i’Dš™eѼš‘!ˆÊ³ÈOq´€ >SŒÉùjä’#ÖTšÂgŽSÛ(Ó8‡$ç&3’…œ ”pVj¥° åü=y\ú–¡ƒGE´Ð‘R67:—X×+föÃaGn“6ÜbH ÆN\[¹Û,(âöškemúngˆmÑX.V$xBd¡æ-R€ ‚ ŠéÕH–óæ^æ ¬æ—<˜vüä¨vÞúu¥åÜ)V  ê¥]ã™pp|†ãn]NWk&9)%2Ø[ ìÉ[aÌ#Ûn)*×pUdV8 ZßnK™?A@Œ1©@ÌÊÍòØ#b”¡Üž%l¹&Õ¨±Ž¶ÿò­*`#å!F*Ø­'-¨0$r²@R|äxA ЦÎY³V’I(Ùù[ÒÑ,Œø—\ÙAÄWnFŒ†\çF969ÀºC­¨sŽDš,˜»²Æ’¯·Ë1UÔvÜCÈÀ€©l‹™ ®fŒ¾‡G§qæ}c\Er6Ø’»3 yHê–ÄÑéw6ÌŒXšáÜ ã&g"ˆ¡2ªÊ¹Y4èH˜ˆÉÃxغ÷# ŒàK¹ŠÙE¦%âsÝÊ{öC¶fVd’)‚I^_0†\…`i‰î¨DÄ ˆ £Ä—$Šf R‚wÉWê`c<Oú6 ãÛÈb2t¥l¼ö ¶ƒÃ&+óNß2â*Ý ;dä •¶;ƒ]; B9Î?+¿€  A»I‘ܸ­Ìo»dK+qð"K~ä”QÀ+1ÇÉg5 ,™3ŽEB{d‚ßÙ¨î[QKb€œQ•#p ŽÑ¬aq!‰÷Ä{‰`ÉLq˜Se{—F÷Ò˜Èp¼ÑK'Ê*ι+ ÌÔ-ºôæoËýZHä1«~$„XX¿0ve+þÂ\]<n£Žáx{jÂŽìë -(À1U•¡9+)|Ãld]Ýge*û”€Ãœl‹Kòà¥}§“ãÌd1;ØwVXðZ–b †Ç$yXÚBÍËÉ«$/O$«4{}ÑqYXrÁF* FªÂí³ª»=l)-¡„DD‚‚•j¶fñ!ª«±C•íÓ¯;±(1È^‡t£1÷ÌW k^ïlX½—>•~S¦wÚhËW±A»yo5ÄÉ"‚NZî†Äþ!ð¡u91±Á“%ï¤rOoÌͳ•kûr$M<,Ù+5¸,±j%0[\ 0 Ü|$ ªF4©i“c-<áƒç"\£q²µ¨E ­LÛ·ðŸÒ4³Ï.¡Œ«$Ø÷0p±Hã[O…Œè\xvú€Š"_bF@:ˆ×UÂä¤ùj;Ÿêl|?¡ZÄʤ82ö•ƒ ³b-óÄgw—×ɵøoÓÐ’;Ûå`º°9Š`T¡ ?Éð>‚ºèC"™Ák±šâAcX{El¾Þ®©þôé(°–Ö臣ÈQ$…Ÿ®G{úô~ôöË!ñd•,Õã&ÂÈ|ùÜÙèü=éçošˆeÄ(6T¦•ÿxýÿ»¯ìþ‡¹jAAq î¤oŽGÇÔýÇÔô>ôñ[K´k`„‘`®çr,ÞÛxëû9 Ä©:†µÂÚ[!9p^ƒéçnÙ›p0çãÜp¿¥lEÙ»=~E¢‡qEÞÅ@òHÛ  Ç:ª-DÝ“áïMFÈFÄÝ‚Íuý,mCaöx±Òú…Z6ÒѨY•ñ²Û5mÿmùUÙqóÔ~éñÖ+!ÅJŒ¤È!”Ð"…æÄæÅtž“¥Ž\+ÜUÖј†§±~Öæ¾»¯_’h¸~§Ëdeç¿Ë\;xÇb>½7¡h[<»…ž8âgÈ+VáE8µlÊH"Oé7Ï%cÜ!œq¢Â¹Ö;=¥Ç&]‰=~K /Ü1ÛÛ’ÔœšE Ìxy MÏCÑt*æDBŒ_6ƆGÿ×ë‹ßȦô]c’±ÃÙ¸´@¬±q¿Jé=B…Oo&_ Wo$ÊÞÄšúnnÎýDÐŒ¸›fùbrj6¿LØŠ­ëÍt}CÛX‚2Æ¥8©UÈFýÅV!m?,I«£ôBÐ0uesÜ –³À7 ’i“dýOMèZ¾/ÊA#Ñ2¢”7Ñ|…ñ{õ¤i4òÅ2gœ!„vF*¥Q1  Š/É«$ÿï§ÿÄT !"1#27A8@BQv“¦§¶ÕÖ$3Ra†Ææ bq‡·0C%&4Dr‚¡S‘’¢±5–ÑÿÚ?ÖS§k)‰´‰©s&K¥¹¨eV%j+/H“&CÕšs©!§¯<éÊrS’ˆÌ€UÏZ?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸Ñ]š~tySóÃósþºò'ròw碙@ÿøï+Ëï}Óºw¿ûün3‘æqç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜj]KÿÄ~ýù»§ë5Þåù¡Ý»ç’iÒ'÷^ñùÑ#»÷ŽïÊçråeŸ)ÌpYú—óËów¸ê T.åù»ånov§R§÷®ñåÊfùO•Éä<œù¥ÌÀ=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®â¥üòüâïÚ‚- ¹~nù'•ÞiÕYýë¼yr§žLåry—;>hòð>;Qþ þn÷”ÝA¨'6NŠl×çA~CQZUí¼ñfûí7ÐÙnw[ Õ8~\·Ú+.H“%÷¦#°È+<ó¦¢ 4ÓbFㆨ ¤JˆœyOj6'TU‡%1Èu:zÎŒÊâìš[•(PÙ«Gou7©®JlEÔ°E/ËØ¯úsþâÖ}á:©Py#@¦Ä“>l‚C!b$6ND—ˆ[p‘¦[3T#TKªíÅ>¯L|eSª°bT©ò„LFL)̘¯ˆº à‹Ì: ¸h…b+§äoNSµT95Gå=*$zƒp'M~tJueØmѪ2…R܈3ä:K°Š¯d¨"(¤D»" %ÕU~$N)Ðiz‚|¹iQa@¶‘Öm0ü‰¯xÉÞßÓÍÄi³uÁ}çÛŽÚ.nº„Iù;Kù¬¾ÎÔx¯ü¿ª}Ò¾òM)߃ó„¨Å¨R›ƒÜÅ£ঔîo/»à“\0çs²\¹xu~IµZ”†áÓéÑdN)ÛòãÅŠÑ<ûÇdRŶÀ‰PQImaE['úµ9îñOªB‹Qƒ#–ë\øsX 1žå> ¼ß1—ùo6Û¡|\$QOÉ@ùKû;ª¿'j?Á?ÍÞòÕ®›ÓZyQæ¶1fHŠÛçåˆ0ù3›aÀ ðð–ow9Hì~öÔI|¾ñƒ4 N–ÖÆ#1JG–$jÍ5.g2LÙŽY“u®®§VåºÎÊÛŠÛñ[ˆäh¬HýØc´b{LVt©1€Â”úž—¨È5 C=[“ù±_®ò†=?œ’;ïvGœŽzŽW`ÎRe™PûP¡Ò©©9:ve¨Å^;xCXlDD|ß,¾Öã]Tuŵ= šÕAÍ!«t…ªh-=§#‹~MwPéê,Žôä¨d†µöëˆd 7":(¾T©Pf¯Þ)°^ò¬vF;>lfÊ GtXfn]å¶EÇ q Ñ2^ÅÓŸ÷³ï }Ǧ0)¤«²yfH‚þPiïÍÕø®6êÇ|ã‹3cåÉ› ÇáÉ#>ëeÙÇ’¨«XùwJPªÒ¿í=ü’óºv…ú$_ÏMOI¹y>—FæAÊ‘æ"óÛçö€)£+ÚjLMªç@Ÿ6¯£'Ïb”úEŒËZoTV§Œ‚3ç6ë‘[Œ(Á H†ÝÐÒ›hfS¡vQTÓæÊ 85窔vKî“ï•#x†Î)ºýüK@ÌI"L~‹Tb©ï÷hQå½ æ£;.B ŠÄp|›'FÍ@IÕ1])6¯'E×ô¶ž¥´ýf—G¦UáUbÃì T©•¹5™QëR{Ô†¤¾Ã”PI>OuD¿꣮+ý¬éèlÖªi [ ä-SAií9[òkº‡OQdw§%C$5¯·X„C P‘¹ÑEò¥Hòƒ5~ñM‚÷•c²1Ø©óc4~Pb8›¢Ã3rï-².8-ˆf‰’ö—òY}¨ñ_ùTû;¥}åAÔu$“·¨9q5^#â¬é›€¬G–ÛKB £Õ ’ê é’â»%ç/Uz¯ÿì½–~?ãQÖkôg’uBjZå2$‰ç"§ù¾sÅ$%¢å*|ˆR¢GëæÔasX"ˆëŒ:Fí 4+ÌÇÕeÙö C¯==ŒéÔq’,¿6Ñšä’Ý=É - ㎦BII¥¹ª{Z¢ÔfR*e7Dö¬ÜšÀj2ŠÛFU7^)oÓ"½JrîÌj–ë­ËŠhƒ …ù(/éguWäíGø'ù»ÞUm'\ï)K¬°Û2JÂÄ äÈf[.°é¶ð HŽÓƒÌiÖË\lÁHVZ¢‘N×µŠj-oFÓõÊûÑV\©G~o’#·ÉŒsí3–Ä:ˆMãuç+TXCMÒ隊'q®D¤Q R§–û@ܵ¦±Ý䌩ØÔ¹‘‰ç ‚lÉKŠEaúæ¬ÔÏéȯÃÒñõE]ªŒ=6Ì–R+ÞKeˆ0‰_(bûÝAÉòÆ2#bòYŠù·¨µ½“ªæH¨j]1E¯7OVeÎA›²#¹DÖ<ªƒj’@Ÿ e ’b¶â,L„hpc1$vömˆÑšXd~†šýÈœv+þœÿ¸µŸxTèÓÄŽ ZŸ2™0Õ³(“ã¹@ƒ‰¸²é šn+ºqLÓµ¸ƒ¯ Ðòj„æ½§Ð5ª$‹ÒéŽy+q TèÖQ>d>~C¢ ‹OÉ èÝ+D“&+dȤiêE5ùž6ÜzîÈˎÅtÙdÜŽd­´Ù*€Ú’©TÕsh:z©å?£j5‘“¥hÕqÇ¢¿s î¤7 1>¥2ç›aBäEeQÈMrZ\IpÅ• T¹¤Dj)æ”. ¼²\ñSB&ÈÚNoUZ¨ª%ÈJƒRÈ<6+2¨‹ºm}ÓqºoÁ:µ*À’Áiú§8üÚ¹qÅ’gÁ-‰:.]Qpï‹•J² ™å§ê}j?³f–÷ø)±-½¯)VQs!EZFÄ‚(¨à/›ÞŠÚ9t\Û²®ò¸‹‘"Þƒ5qD ³$‹_4–E,Ñn(5qV¥Y ¬K§êvuPAPB̪¢’’‚+¨Ø!6y,Œ¯>·q+`´¨DœÁm rDL .b]Pð¸¡â‰å*‚ŽJêPjÄŠŠêߨ ÙÆH¼"F°é.ø…¡tK_%ͰDOó¿îñ±ãW©Ü}òC'§`EkûÖó˜%Ó÷ŽF§T«1yê E.©èªbÑìæØ¡bI’sE½ìÚ­j§r.±üÞ­)0Ú¨Yç-mPˆ‘'³Gv¹bàI:äÖ³‘É䤯£^ÉØ6Á¡CQêC7¾'˜¢ ëšsPQ«£#¹'É5(sÊ(ËG7{n3Î9_F^åŒl‰Yu.Ñ þ^ÅÓŸ÷³ïŽÒþ@k/³µ+ÿ/êŸgt¯¾(/éguWäíGø'ù»ûªª’jQ¥hÄqÊ“ÙfRH*ìÊ]8âIŒû±Çô€§,G 4Û²™–Xrœd…ÅÀå\Y2ôqRÛp%A±&VTÅ6œi¥i%Gí’nˆJ ™¡YU.Iþ áÁ&âd-ºå€¾[ª"刊ZÂ){"t¢¢ðÛjBŠ.wysp³B[£wÚÖö]ËÀ8nóU§ŒÌqèÞ÷4²l…â »-ìž—ã”Ù8Š«×èòì[YÛô©**{xhã´é¶Ø­É\‹¨¿¼9\‘/áéup­°^w–KÕ‘d©¾#à›û ößeÛ…³€Ò8*„צWen;öË~”ÿ=ÊéÖL±sÆËÔ`›ot°ªn‹àVãŸÍóè*&È¢¾Å ²G-ñ/µ|xFÅXeÂ4QOHÓÏ4ø6[`·óðNæ6 Oç “es K qÇÐDOƒ½Çǯ†Ñ…nÒ.˜/€†&AbÇ4²üÅ3+'‚ðˆàò™Án|Ä4Ì„-rK"b«|R×·‚¯—N!Ÿ¥eLªÄ>ct·(Òeœ{>îäYžR–ÛX!H7E²o( ñ3ù{ÿNÜZϾ;Kù¬¾ÎÔx¯ü¿ª}Ò¾ø |¿¥ýÕ_“µàŸæïìhèŒÕ&G¤Õ!jF^§Â‘"2Jy•¤‹çPßg1Ýå´ÔfžeR=æ\•&bÛŒëq¤«fÓŠÛ“€cÌošÑ"8 CQ,² ì\Hâ,tôÞÆê„¿éÓû]XÛÀ||ZQmœ•¡y,„^Üq<±BQË!AÜnž—ŽK*öųQÌŽä«éÙ~5½±øÈsNj™ ¬¡ IP”‘´;Úçt^Km×ÄWWµaÒ ”¿eQËd]‘3Ø|vÝ8Ä—˜F>mP ÄwUL|n[-—+ß‹â\ñô—O9ð®VDô¯~«.ü l¢“›(„+€ª)î¸øŽÊ‹ã{~î#´=&® \…ELú”qUMÒȫǟ%1P+aÊFÑn–OÖ#½?ù/í߂ިª‘”r['›E¬•7D;¢_û©º[…cšã|Àwš —󢨊-⨖Eè{1KìŒ#¨ ónª<àç»E‡·;“~Ë£{§°jDë†<¡pœ!4DO„½hV¾è«ûÓ‰ºúl‰Æ_}¢Ói¨Ôz„%v4§*R TûËA!$œ\‹-ÌiÖ•/b¿éÏû‹YþÅx´è š€hµE¡6]߬$Ö˜ÞÈ"âSy(½äÂ=—Ï·’ðå'Qê}k¸ÞFqd×*QJ"Ê#&;¼ŽÜy,bÔ[0Mõ6˜ºEÃÒWR×[u±GË3¬ÒÅCHà‹ÏÿÃäbÑ"ݼ–£šðÛ¡©µH”Ù‰~X¨£Î(ù¢u^ëø ÕF–ðÔµÑ(jÛqÝn·SiÆ’êÔumáåòÌÕ|ÂÛ|l›ÜÉkUç¤<Á„ ò´ëšŸ¤&ç?K<ÄÌ—«+’ª´¥¨jÍó<ˉå)˜‹HDï,[æì"ú!ãºs:Îåuã’ÌÙ Ê#`}ÃiÖÌG”ù…Üo!,LAIJ†\8kµØº&ŠE€xȈœ·%#qM,ˆVê«Ã“¼½ZrRÙ…”uZLr"x¸O8ÀäXŠ® û%ðˆÜ«Ô¹‘ÑŒ¦Ê_0ãŠö=N*£oäm´ Š[⇿5v½›qn+UY¬°Ù‰sô@\ÅH ¸‰.öàQ½C]ˆA«Tq¸ŠuàÛýj"»§ –[u' ºš§Q²çœÈ†±Qm9`…† ÎÉRåí"²8¹øð/7«u3„bà«×ª]å#ÙÈĈE9ŽëŒ¨Y,/*""\8C§ëD=Ý•X„uú‘rEÂpži¦mòç8DÙ5†o:J&Nº]OQ½7OUkôɹ:ˆÞ©» ²X‰Tp%¾á?´ˆùLqD•L6ÝT$9-È1q·L  .&—BEEE²¦éù{Kù¬¾ÎÔx¯ü¿ª}Ò¾ø |¿¥ýÕ_“µàŸæïìBjlºlZúTQê r`ª…B;jÀÖiÔùl¶ã´ÆÝ`H›!Å/,Xå¨sØ}•Hì¡¶öj£‹CìUÏKYoo +œÎ_œÕ:^nêDI~]…~.”·Ä©Ãd­““x`B»9ãtñR‰/·µeT7Õã^a2ˆj¢†H¦Xï‚úXšØ•Se]øRm؈r¼MàÉ+ßIÖQ[f]W+pþfQzDQœðALRÛ ­ÕoþváWŽ"â ªÚÀ«e>´Þ÷M¬6Dö-ͤqRE­?iÏï侊*øü.­ŽÊþx¯'óvRÚé¹§·Ú6TEá‘6;u! $*fƒ±ä©e²®^6¶éÂ>#h fâßkõåÑÓ»·¾Â‹ð·^ Õê!pMŽÙ­Ämq=“¥o•½»¦J*Š ®=CÏ,zÓ§Äw2é+ß-—„eç›\A D««o6D«çnªžÕAðÛ‘ÇãKŠûO1Tˆñ‹ðÞo–ãO°û·šyƒ±´m.&†>’R©u-I ¯ªi‘äw¸Ë$ް¡—9ùÂö.K6¢= ‰3Yç‚8lµ1ÿ(è¿—±_ôçýŬÿb¹©ˆäá£@vXÃhùE)Ô°0½Ë{»´ãæØ¿'’÷ve\’ï/–Z—Q+«g*Iù…9èé ›1ŒÔân'1–ñTa±mD[· ™Ç岉é*"¶kÓ×tÛ}ñUÝSÃLJU. ‹hL ˆm·ÌÝr$A¹.ÊŸ¯Æ¨¼¼,­rÔÆÄ]cº-²¹Y |8`ÊB€\×;_ÄJ¹–[Þĺxðé:(ªMfÒ¸ˆ—EM“u%KüK%ô—{ð@Éõó‹rþ§è¡~å_N›x£b dÚsHÈn¥ÌÍ7²úW\¿öàÉMæÒáeÊëš—‚xç²[§ã^ Þu‰¥ÄvI’+îETôRÉoÇŽgœWœóm¢ J Kn»å…ÿüSt¿ ‡BŒœ8õ¢à«…‹ÑXªxÿ•Êèl\FBæãÖˆ((æ÷þöW·Rz^6’ú)8€B.ØÙP¬;ú> ©¾þ Äd ‘SÝ ­Ë%<ñöóP:Jþ¾’ñ˜´j†£rDu Òß}º¥A–;ñKeZ‰R?ÒšÍqˆE";„NÙàNRS…ˆ‹Od`ÄF`rÊ HÃhÜEnÉËXÃfT,˜ák%¿/i 5—ÙÚÿ—õO³ºWß—ô¿³º«òv£üüÝýŠlÍEL Æ£d¦†”‚åB¥¯Ò¦…bLµ§¾Ê;8]h”d:@ Ä~(¹*K]ÝUÓBÅ6^ŸNÇnjf#–*ˆŠ¨©Á‚ŽÑçÕeQ=òÞö_ŒJÛð ŠëXÜ6ú›ÄÓÂéž_»Øˆ¥Ã “(-aŠdâ-•|–ņÞ— …‹cЯpzEQQ6É ¯Æ·ðN5ýhÝUO66°ãe[⣶)¾÷_kCnWQf‚«—.È_ 1²¢zi½ºwºò˜@GOÒ SeÇÁC õxb¶ßeàÐüÙŠd×$.Šª˜*øxÛeºZËþ ’+êê*ƒèƒèŠâ®¦öDÚÊ–²ú><"-æÍÎP ¨Ž*J ;|÷_²'´ùÁcDFUUDܲYoÕ¾#º-¼oqDi”h;Í.ž».i¹caÍØîI{쩳í¼ñ àŽ à›!bâuÖê‰íºÝæÇu 8D$X¨¹tÃD·¯ "¡ å¿“P±]b§2 ª\Ñ¢Ô"~Upjr|Hè]ãɼ¦#°ì‚ŒœÂ™Ë7bßòö+þœÿ¸µŸìjª4<;Ý_M×)‘yŸ«ï3é’¢±Ì²áÌtr°—Mö_"›œ–YŒ=ØDcÇE…}ù?¤¿ÊGå=Þ$ód›Ž\¸À£†›h\ŠÃ­–á’!ÉPoe.ŸŽëÁ€¼Î nDÌ} ©b¹d6ÆÖÎ*¾(Ų Zû"Š!\TIoÙã¢Èi[µñlÉ0Ûû¨¹-ì©{¢'‰¨6Þ¸­rúƒTñ$]—ø;]6^E󄜶›;žh(JwÅ»‚cíÚélwÜL›x|Ñ‘XŽöK®Kˆ"å|GdUTÌMÇì$Ù!‡¢ ·RÅ|n—µÿúpm EÊT\MѮ䨫küY¯Ä¶àÌ>P€ªæª¢%Ò‰°ß÷mºî›£®š)6¼ž^í“n*"fŠÚ¦É÷º+~Á]‘SÌ¢Çfê@eçQÔ_j"~­–⫊û8o½)‘bç3–m•1!TÅÎxà–_IvºGWG¬-‡}Im}•=ÄI?tFê±k²5‹+Q: œÚ{O"Ç„ó¯È|i™Qg7Þf:K)4Ò<Ý͹ï@i¯ËÚ_È eöv£ÅåýSìî•ÿƒƒ©&Ì2lF竌S¤ËÏÈŽÓòÜŽ&h†ìGÇ–ÃrpÚÌ–•I¨É‡V'Ýj-6¯¹È¨M›¼ø&Û’"¼&Ón8Œ,€œ ¯Äk¦áM®jª*{‘Ý–1&Ôc0ÿwe]Cq@ÎãsaæÚB±>ëN4Ê8à¡Raë: ÓF;’ñI  v#$ÇÍ©®c îDUYR Ùi§ÍÁŽÿ.‰šÖ‚ŒTóˆìi}ün<‚ŠëªPJ4ÒI^å¶á²ú4GÈ{Ñôªäiõq„3›X„’)ò›V†Iµ¢ÊœI2YŠàIu–œUFTˆT•‰(̈­ÉaÉQ’•lߌ2Š:ÈdI\eÍYWy¨¡|Wþ åý/ìîªü¨ÿÿ7b%6¹©[ÓÚÒ 8ª4Œ©ÕYM¦È’è÷IÎSàJm¶¤J§¾pù‘ŸˆY6Þq1-»­òú‡Aº’®y_a¶*‰e_ß…º ¸à7ˆ‘#‚&ÒqQ }1ø…má—@mÅ@UBë¸Ù¢ÂøúX⟠{þî&²bFH‚‚¼µ,IÅè-ÓÙ¿ŽüsÌüêò6í®‰Kö•Pì>—‡‰‹·Þ2M.œ²M‘Jß³k"²×†Ç@èåíe_€~+qDEEÙ â¸ðâ²+L¸\´q/Q¸’&ÝQUoðP¤2æœMúWq‘6ÙQv¾÷Tã¼´‰‹¨"þH¾o,ñHÔ2/ñ¶ÜF噃|Ç,ö@ŠYfF‹µÿY²"Šx~äà[lùˆbãª..ÈvÅMWoƒÒ‰¾øÙÇÁLùŒ]mk]¼‘n(˜šª%ÕzW~y³l‘¶¹C̾D ÆÝ8¨cŠl¶¾èª¼î ˜\¬„@é툈Ûl­ºíqÛ,•+Ú•ªÉÔ}y´ÀEoÉ4Â|ŸŠã!eTr›Á G»ÃM~^ÅÓŸ÷³ýJÆœSûÔ*«TemÐŽï”Ü‚øÂäHuÖZ#¼(ryÖÙeìt‘±.&¹S›*tÃyÎý*Lõ©;2P™4ëç?!&¡+v "ûͼ‰ÌmÃW™G9A¥²BÂèB†™ªZàÚì µº½«Áà uÄEÏ2¢ ˆdIpU·ÿU²x§ã&|çJÙßrîØ2²íoßè¬,ãª"8Ð åsÆêKlwÿ[Éz±i0FÝSæs=%!T.•DR%_ ¦_ù-¸ï.8¢è©ƒŠŠžlPVÂ#º*eÿ™wº]èÒ‚ª¦㤨=(çë­rßÚBˆ…º‚.It]ÈsK ä¹¥¯’ošÙD|=¼AÏ>y+¥É-’KíEýëµíny K+ àªXŠÝÅ k[/îðŠÙd¹s3VÉq¸8ت¢ #`ˆ¶Çãºì¤€ˆê¢dXÕ3ŒÑOÅ7ÈìÊW[dÕÃɱ̯uü¥ü€Ö_gjÎé_ìK"·H „‰>cÕ(mE…)LHÒäÈÔi ã­2ñƒ™¸ÌoTaKµW çãÓ©LԦǨJØÐ›­A§Ì¤6RÁƒx¥E"^z"¶AÄ7‡HPAQIÈs*&䮢ºÄP·pÌU´Duº—-DÌ”ÄÐ[›I£Ò!é§f:õ¬)2©C¦*ß‘Ç0m¹æ6iÊ›B$N”6!É%·š:€.Ügb”Ù4Øó*eœ§$÷&Î ô°l†y ²‘1SaÉ€SUr½S—Z¬H?:ì¤i²Ä˜m˜ñZloŒxm´Ð¥ñi·< §\Á Ós۶˾>ßïpªiql—"ıXEme²\·[Ž‚6˜ €¢«j¨+²–9!ª]q¶è½jßìŒÜB$QÆÄJ‰ƒx4©e[Çí^¢±›|°ö¢+y%Ðn‚cÕ—Æ«ˆß,o~O•æ­Ñ¶þ‰b!º¥ÁAù%Ñ0MàW)U‰1݇5&GS‘,ØtÛýc2ØÁ‹-†û´¦ÎÜÈÞ`•$T¿<ªR^ž"‹{éTÅK–=0™J}4²AL 3 Šäjâ¢Åf¹¥i•BjŸ)©ENœõ:LŠ›$=ÖQ«L+¨&Ô¶[aÕæ¼2â´Ïqy‰j¤½;Q50‘I—I¬Ïr;û3iTÙpŸhÆÎ6hè9'9†»iø•jsíÕ\§s^ú&ؼØsÉÕ嚈"Š¢’'ö(/éguWäíGø'ù»ûŠ”÷‚-eºŸw¦ 4v&ˬ'v”«L~¢NÆzMa])®’»!•qÔù2I’i¤t¤rîY¥¹B¥º¶‡¶éš"ßþ¸UhK—Íå‘:«±î¸Û¦Ç’/†J¨›qËWƒõ¼å\ÕnÙ) 5á‘zH·½ÕWÿ28mš©ýÚØƒ‚‚–p×pR—°,Š#ÆdéëfU”ZwÒ_UD½½ƒý¼9Я!-³q1]/—‰*nƒíEDË-¸XèÖX¨õ¦Æ¾ è­5[Úéñ{nКQ>µa-®Xc⢢û}»]Iî‡U…äˆÊjX&h»ÛÒTÆÖñßâ Û6ëŠfÈÚãð‰.¾(ˆ–!Åwÿ±u]C,¶SÔ¼K\¶Q¾>Ý¿HOb ¨Þî ò\Ñ̯ӖÞ;–=\bß1IÕBGUô¤BU‘ðÛ¥-Ã&ÍÉ "¸‹}Ì÷¸ú IW-×~;¾@« u»ŠÝÌÈ>>–Xüy_Á8í 2³Ï5¤žÀ±,KSsI±ô”7€MwÃ6„–äŸØìWý9ÿqk?ØÔòtÕUºDêu6MNKÆÒH¥SÙrUV(;ÝdɄۢÃü—<â#FG–lcOüP*‚J¸6VNÑU &ÿhñÙMwBnÍòG]ÙA^QU+¯¥è_uøK¿µQÇ!æºYï­|ÞËŠn©kÿ¯#5æ‰ß¢Â»Y,ˆ‰ÔvÏ½ï¿ +L<`KÎ軂¨™’øÝITVËÕuÿï8 DE{ªcaÁ@—Ç«Ûèãn6%qÄlP^ÄT•mg %\-ð¼=Næñr»*’ZçýåDºaþ’¯Ûnæ<Â;t€ â—ê¾I‚¢ŽÛ&J¹]8q³\ík6ž‘ïátU[&éÿèã2m8¤¹'ˆ%…U|JýK²ªÿúã5hm T>¬½§ÔßQ u'þkeãÁ¸*~-ÙÄ,T—á."€Žl¨=^ÏßÃm¸½'E9‹ktíŽþ8ª¥×e[nœIiómòñ^•T øž-Ô¯cOñàÛ6Wr\‡&Á•D¾Ãýë*ï²Ý|cs؈Ȏ+ õ• ÆS$0mF^˜øÊ§ÔâG @]èÒš™;! ¨\ Án&(H©ùh/éguWäíGø'ù»û F¨ÔdQåÑ\“P¦ÕÞj;‡›xgÅsó…×[iø’Øi[”ÍmÑ}•„WŹ¢\×4TÛ×e[í²[‹ wÅ3 ¯PeºÞÛ.<ÄÚÿ»K…Žà.bBÞB›+—Ì-ÒDzïñâ¶-¸l$* Aé›*]'k€‘xî‹·÷S-쨬 Èýhb·@M@ºÉè®$¥¾ÞÞFÈ—{’»è¶êc²xd¸¦JVKõ!"ÞÄv}·ÕFÂ\¿9âYomŒ“%ÿÜxå÷u ÂSñ¾Ê¸îž*WÞöø­àÊÇQ0\½p%ê[meðT¶ûx*ðFÝÕäsÎ/ü´S%M²²(úXÚêžÝïÀ¶Þdbæ*¢X•Wïû•-ñx-ª9‹mœØ¹ª¨*Ø[eEöÚþ’ûi–è6ãŸ\EKÛÆêEèû.©{pè8ª½ÌD€Å=$4_ÖYtßÑDö*pé&}áµEm×2Ù¾«f‚%éyÁéOD².5ÕMG),CÓÑc8Y£¦ýf\Ôµ‘µ @†Iº˜¬uº’gù{ÿNÜZÏö Q3>tiºV³3ßt’ÑGgH”&M¿N‰äDËÈã ²Û_7Ád·‰é\ÇÞ$Äyùùÿ¶ãÝGí¾Ã·TŽcˆ¦Ò⦜°^bŽV²¢¯îTÿG ¤7BQOL’Åã¿…¾4ÿ>Çu%<Òèá/ˆ…­ºŠÚè*›p+º“1ºI‚†Ûs½/C{"ÞÊ£íÂ0h@Î\Îñ|Žä„V"PÝôÛãáÀçâÞ(¶DBÙS.¡[ímÓÚ—MøGTÄùwFBËçCãÉ>B{?ËtàÍáBS±°*l ª©l¯e¾Þ)²l«ÎBäËy;|WlSt·÷’éáà¾á_&ÍM1\[o!qKÇĖʃ’Ù…và‘•îèìYxŸVÛ/Ž;Ü×ÁJÛä\f(µ»{Øq/×x©cãq²¯VÞÎ9ã5ú·Á:œxþì¹zf½"‰•’è©ehÝÌÍ[.zrÎÈ ž¦>(Jˆ»¯‰íጠÅlš]Jžúˉ8MPA–ÜYT1‘èßyˆã4û(¬¾ÃÂJÑEuþ_9ØÌ8÷)¹¦Ø“œ± ¾-ä«‚<ê ‘Àº~^Òþ@k/³µ+ÿ/êŸgt¯åÕt–¨àƈ¡²4é­K£¸ìZ¤ Ô8Q{ÕBªÛÊà9"L·üŽÝ6]<Õ§%Ä”óZo¨y *Öœ•Caê‰ÃmÄ~b±\Ù<îHD`\KšMæÛÌŸ›Á•1ý`ÝT“lITWÑM¾‘|x ¶Héä„kÕt!Lz¨‘mà+ðQz=Í–.yšù´TôöAÌÑQªÛ-•.7à_uy@õ÷UDQå¢&(‹lwUÞ×nÊM ó‘LTA, ÖKnb’ûEKK¨ø[‡ó2¸]¦ÑÄÒíß–ií쫟…Êê–ãAÌEl(„&‹ˆõ^Ûåð|Qzr°l¹—Á:T:­¸ä¨‰º~þ¤]¯~;¿-Qß qT²ÿæðÚè»/øpè‹bH®ˆHpº2Û’{?wîÞËà Ûh"ónKm²¹Ù|TJê?¼Wâã;)™ffÒ& ØpnÙâ­ôЍ¡’­ÓoH \.j]D¶å¢Jƒà‰íÝRén++·æ6)bmæ…I6²ÿÍÙrº*(ª.'˜d㑯æŒqè ô„·Ç«¯ºí†”â>Z;rg7y€êrœº™7‰%‘W+/¥dNœ–ÖðqÓÆ)ˆ´‹¸© ¨ßÓæ(¢"nD–Þü89 8 ÝÝ5¹ØoÕu.½ÑGdKß{—Û`¦UÛtTØŒA²•ÅËoeÑmn3` –‘Q·3ßìEÁ@[Ýoeÿß‚k'‰°¹“ÀC’¦J¢¨„B·RÉr°î›"¢ Æu¬yË~yYqø][ß=¬‹÷x6ÒB6ÚH9Ÿþb¥êÇu𿳅´t]w&”,ô&ëkc²ªþ½¼ ˜óRÆè vmAlA{§Š'Æ¥dßeDEaŽ—Zéôˆn*£ìOKjÙüMœÝ73iÁø y"©âŠ·°ëâ‹ !£€SR¹">eŠªl¹^þ7±mExQåä.x‘æçœØœK*ª6 Ž!Šø¦Â²~KÂѬ912B}%²%÷ ñXb±\–òIF&*>Ìv "5 åGí˜5¶¤5§‰gé.59Vg´ 2oÅv_v[Æ‚SXEkÏDƒù{ÿNÜZÏö5mŽãÔêT9Ñá f ,§ùJcN']u†šj©ŠÓ_qçE–ؔồhB½ÞK"ÓÐ¥¿s6œ`œd‘Å Šˆ:$;)•ˆIQ/Ä1Ô˜”¢è†ê8ãÿ•|Ev[mMÉþô+`Çb«€B ˆ†ãþ?ãÃ,“bÐe»·ÇB·ÀSÙS;má‚òd+’zR×&ül»Ý6ôT—ãTT@¶/ ¥—Õ6#ÿ$+‡-×ߌ$6Ëvd’ù]w±n#Ýño¿R_¼‹Ëlm‚-¯oHÓlo·ùü~%qpÈPÄ@®íuµ“=·ýÈ–ðÛ¡OÍŸ-åWL•ÐÝ®„_ÙVÉà^.”fÛ"Ò¢‰*¦ ¢7ô|nJ>Û~þA«6Ødd¢¨˜**[Ñ·ÿ^Ÿ€uV˜ÂÏmËC¶§J¥ŠëÔ‰ˆ—ÑÕ°AuVËË# vERé]÷°ÜWb㚤ٸˆl>Š-ÖÖÌŽø&ööx"ß…ÇÏ%–HY´ksÊ÷ôyh¥t'³ŠUS×KPÕØç¸üâ‘"`¶7™„ÌÉŸ¥K ³FXyámyh-¶ÓL6Ócù;Kù¬¾ÎÔx¯ü¿ª}Ò¿’DÙÒcÇ—$J—)æãÆ‘Suùº@Ó,´¦ã®€ )¢';§5>©¤V›|’ÓõH5ÏVü¥5¢n¤ì^Þv!œho+™'¼ “À Ëd$dï1¥U[‘•72êLmì¾Ã{qàJÎê¼Ï6æ[ÜÀˆ‹ìñ\‘wêâêdØ‹yòòɲpúA,ˆ Þ bÇÆÈˆœMŠcËÁ_ð\yŠ#|…ͼWñ%á§ ±i°%—u$U-r¶ý*7êÿ%Ì\&œU± Ón¤èL‘P |•U<} é]ÆTC°R/Q]P”SÆè‚¨™b;!6ÚœëoUå¨ãk%’×,¼|xET‘C+r 6C%¶ËþC}¼lœ+‰ÒHb˜à»ù«äCoLöM—öSªÉup…Â-Ú²oº8¢·²Ùoà¶N…Éz•¤‡­í°rûÙç,‹µ÷½Ô•z|Œ„ºÝµ5Rg nÛ`H"¹z[`¾$™cº¾ÝÚå5Ñž>ﺗÃý”NQyÏæú¯3#,2V×t·R¢\-Â6Ð+N¢“ÉrÅ¢²ñK•ÆÁà_åÁ2ÞXÝ·ü\4sÍ¢zJMÛÆé|Óoލ*!©$ΑKŸM®ƒA`ÐûÕUÄ%–D‚uQ¯&E„ä† EY'_z?}’ ÆgòP>_ÒþÎê¯ÉÚðOówö"T¦U)ô­CHÿæáÏ™!žø’û©UiìDa‰k1é-CŠ­‘GAŒëM“"GrB¸ÊG5D]‰Å"%h±=Å UûŠÝ,‹ŽÜ“¹:˪£d"常^ÖÍUwê¾ê¾Åá×.Q¢"•ÕU‰\ÈKdðÞß_c!paÑå•ÑyI`•\רÒý~>;p‰q&¤/0ý"T"hÑÓÑ+_.¯m¼ã6‚è¸H™.8’õ ì…ðö·³ÛŤ'x^R*8śߺzY ekl‰n–ÛY<8%ÈÓ—âçU¼oíTø;ïÀ £‘šrÊÖiTírTDLMwKÚÖö')“Ž4d®,|IPÝDÐmèÿŸ…³ÍAÀWPlJ¸õ–ÖU±x%®ŸäžrγK÷«"¯\ é€ô¢&×Uñ^¨ãc'ÑÔm•lHb¦›â ¾%dOŠËaâ¤Ï*èF"…—M°O§Pª­¶Ûüœ°¼†ˆœÇy¹e™ˆ­ˆGÁ, ²z uã—‰•VÜW-‰îˆß*Èvñ½­uñÛ‡QÂ!ó-¢z"ŸÀµÿu÷ô¸@A2æ1Ì®ˆ¨KËTKû.}VLÕ~ü™0†WýSV§¶Ù„EÆ£S¥H‹h$¨ÒpX3Þb`=»MaÖEè’[q´BíN¦UoSÕˆÓ’dÉv— ¸”Ìi΀L_)ÛdÞe¨4¹‹¤ë þNÒþ@k/³µ+ÿ/êŸgt¯ú%uŠÔ™ÕmÔiPâÈn47¥?§ä”™ÐÖÆôY6ã!ÜX5PK†z‡Jòå鈇>ªCšä¦k1)òÈÞ¨£Æˆä¸C5¤nlV 35žÄxó$wAzIG9ÖKº6K©h¸’§´”œ%[¯´o³Þ›À™»¦V²¢¡‡²ÞÊè©þh¼b*ÛXz>'tBµÕ6K'‚ÿF2 V‰ÄÙ US"K¢¢¢íuéÆÛ­¸DEq;6‚›Y=ERÚ¥_oÛ¦§[CôC+®[Ž7öûVê„«rºðÊ©rÝÐü:ŠëeTEDº&Éáºßh)#n]Õs„‹eKn‚·ñK'¢‰û¹qËÇ/.¿D·µS%¶é²®;_€^hþ¨/ ÛÙouTSO‹ÆûÙ-ì"ERNb)ÖÄ;s•WᢠeÒ–DÛÇn.bü,‡¬Žÿ9h8’ï²xðL!ØI4øHâ¯,… o¶^ÕêN9oŸ3’aÊmÒRNŒ‰0ñLÑ.–ºu_á5›"vD-ú‹=ÑqL| :¬žÕn(–J‚ñ:„¶ÅÁñ;§R¯;ÙuBÉv²] Á.Ju– ¥g®¡{ØÔ¶·øo~%<è¢ãšúº³\mÐCqËÙññßë´¯.S{¤ÆÛ¥”éTð~BÇu ,§áynGfG-ÇY‰6+ï3u ie­iÝ]>4©êÓUJ žE>žo³‰B˜Ë»ºJHÀ ÏŒw¦#GQ9’9-F”Ü „)®A|âÍ’˜’pä¶n4äyBÉšÇ}·Zu³iÔÛpP€‘(/éguWäíGø'ù»û%j¤u¢-D”wX“ªS å§–¦uHîÄz\ÇHR#p‰&¶¥%é.º€Ó1».^p¹—Ë!"TBSMº¬¨Kµ·['‘µÀƒFèh{\PWÇÙ{|Kžèó(ŠhŠÚ(6Ó–±¯ w±ŽÛ""x«—SLÅáTrä*H›""¥²µî¾ÔÞë°Ý§T‘ W:ÁE.*„·D]öþæÅŽÎ¸DB¢Öy‚'R&mª*•ÓēҷƒÄÓ­›E:¾&„VåŠxô ¯·u_ø÷xËéŽM»bô“¥vOKå²¢|pbòѧNÜâÏ 3Ûlm·NûªÛ€F³rA.n.âª+l®H€˜c°ï¾ÖºðCËQ€Åµ+'JÚæ©|óCDðº]}¨¼ç9Kòv—òY}¨ñ7GvzäûBªvƒ6¢Å.sM ½§ÇLRûÛð%Ô]‰FïͽNSXò¤›½Å™†ÜR>K‚“u#O7[¦3äÈõ<•†²†ÅK›ƒüú½B,¸AÌžäwm§ÉÑL!4@L9ÌW:[Ø®x·d4DÇ$2¾Ê»]:‘8eå/MQ…Tñ@;ø¯Q‡Ný*»m·æX¶€‡š­º2ÅEIÓ"]…-½½+ñ I.Ò …“J#Š‘)%ïº`ÚŽ>8Ùv]•bºjú쨮â}Kb?ŽÊ¨¿ÖáyNzJ„—LL±#MùŠ»l¶Ú×]øH™: §Ërøò½”Aé/FÈ^·´UMÎX¢_øš[Ù.HªŠ]^¯ÇãÃŒÜ<é©!ïj*~Â/M½%ßãUm´ÀØ!Rp}ñ]–è^†åíD[_„o%é"ªõø©8ÿÌVÛƒ $ ı e±*-ýžÍ¶ðµ÷ß„Tú³ÀÁvTOÜWK*ô§Ä¨»ãÁ X’?¦«“fon§uKn…|MÝKk¥ømÖÛE5ÈÉDÖÊ8ä}y[u_AÍÙ UOŸ‡-MKq ž"¨ªà_u[ŽþGjè˜ÝEEÈWâC;e|’ÊjŠž%ÒÛkÉÈvÇÈGÿ˜Iñc²(o™'Pª/ *Žr¼ç{5¿Qa²Š-Ï~ƒtU¿ y8MlQ­Šz¨9Ý.»"(­·ñ%R^e«“VUå äð´{ãˆ]1ßaöå}Ò¿ÜéPª®Ö$Q^™Þ¤Ih-4êÆô8bËY7&RÔ”˜âÈf/$oZš V) ™"¦uÞ€îéòRaK~µ£uĪŠ=%—†iLnäÚE¸¡°ùÎæ"רÿÿ7`“QSæJzŠÄé´¹·Î5Z3ªÂìÂp[|\ï‰(ÏŖî6Á÷su–Tl®‘ ' ÐmslÛBD@MAOohîCЦàÙ-±oË#"$Q4²´k’¥“+üMÅÈäØ˜/%·5Í–Éák©&]>Þè²ïK7˼*9‚Úøu)"à_«_ñE}á°*¸ d­¡ ‘PØlà«®_ „G«{ãû_â‰{òT›LZQ5¹ó̃¨r¿V(¥ýäÀ®…Æ¥¡ÈH‹Nya>Ÿ(ŠhUuÚŠBÊ{îµOŒGR– &T„’NI–ç1Yü½Šÿ§?î-gòê€ÒNZh³¼’MÞP²Eˈ»a9àCf ª¢-L6\"TZf§*¿|‰å7J¢*¨Ëƒ*¦ä§V,·™Ì·•(Ô•;ËÌ2rÛ}¤VÉ‘RCº¡ˆY±‰%ѽ+)ߨŸ‚Ó‚¸Í¶mQD>ŽŸjߨ›ßÆüJ»/ü¾œòø=8ú]®·Îꪊ¼s<$äžd, Š™î…ˆ¢­ÓÀÿføñtŽ„*¦Œ®"Óˆ¥¸â…b>]¬8¦IŽÃmøCF•ÓNkf6¢–¿Iå‰î¨9b¾k½…ƒP‘Ñû<ÎcFxÜŠÈ£íø+ZÞp/-›7æ²Îɉ®;mÓqD-ì)·çäâ¦_ÊHªâ7ãÒ—T¼sMÕÃm\ÅUKõŠ(½B |-â)¹&è‹ûM1)¦“•o’"§B¢¦){ÙJëþ¤œ–6K¸œËª¥É8XÝg Ã&2Ç §Šn–„¾Ý‘7TNn'°E$,‘J›ŽÉÌvø¬»¥·–t=_A¾ÄHíȪM¯Í¡³'¼T¢2 8äžv`!M‘ÆŠ1â²0 ÒßZŒj½N„êÕá#I¨®Flü£qÖ4ë÷–—\k”èòÜ0±/¥ü€Ö_gj2Ù:n;ÉlU9¦f€›©šuGAŒÑ´W|9¤¦ ™ÙQyŽ˜ƒ˜ø­ÓÚœt²áïfE}!깸ŒZÞm³åûöÛÎc×ï.›Ë=î…q‹átxã½±Tàq}DŒ…‡D²º6¶÷öÙ-tD騝d±\òl‹¦9ˆ'î[%”n¤¿÷+'Eu0WÈÓ6+t$@$EN»øû||xUlÕ§y;à Š®*‰Š.J6ô¯¶éàXª<—lãU6ÐQqAAUë±c·†ë}ì¼sÈù6)ÒÒrÇeQ_Md’LÑÆcÔ¤º.˘ :,· ¹Û¹‘#1ÐܪÈrAŒÿ:õ?;”7FÔÔטJדÊàmbæ&„â¼b¢Ð=êîª~z“k¥ÞiÍ,i]ólDw%À|M¡”²ÖC¥ÝÁb¹ ñtP5†¤RûƤ—Íz—ôD\;º (e’¿wù¨ ÝÑ ½e¨‡¸‹‘)n[ ³»‹ nnXÓlDz1%ÅÁ ëKvÍÓÑé e$™º¹ëMF½J¨¡–ÙX‚ÅräžD¤‚·¶()Šìišk:þ)àRUätn \þO €"·ÊER˜œÛºÓR7ŽÜZCEâYäEá,‘Q£¢Ê½Ym׬u:´‹“cɤ!¡\•Tc–Øc‹ae[–h€~wjŒ@VìÝ-$Ü5U{ŽJÚ4x›HBὓÃ!±TdPZÖ¡¶¹bÚ¶­Q‰U;õ$í|‡àßbº–i€'熩ÀQÛ£–耆¨¡¤²ÙÌD¹yQ+w4Vµ†©”^&F^”5ÛѲZè¢Kš¡b+mWªyEĆŽN©(âòóRœ"œÄØlÒcÓ‘ðN~wjuéQåR3å Ù°Í`¨Ü |¹VQ¸àйðÄÔ: $£ÎÙèå1Vk €GH囌‘ùCÉty²{Ç?8ýÒgW8ÜV[,wê`79Ö¬¢écIæ0ÔŽ2Ó–På£fÑ „óG¦œÑW»AÓkPï“\™—“tÞµ¼¼Ñ9vï²3µÔòì‰Çj?Á?ÍÞøìWý9ÿqk>øí/ä²û;Qâ¿òþ©öwJûâòþ—öwU~NÔ‚›½ñدúsþâÖ}ñÚ_È eöv£ÅåýSìî•÷Ååý/ìîªü¨ÿÿ7{ã±_ôçýŬûã´¿ËìíGŠÿËú§ÙÝ+ïŠËú_ÙÝUù;Qþ þn÷Çb¿éÏû‹Y÷Çi 5—ÙÚÿ—õO³ºWß—ô¿³º«òv£üüÝïŽÅÓŸ÷³ïŽÒþ@k/³µ+ÿ/êŸgt¯¾(/éguWäÕü4Ñ_žTò'–¿ìæ¢ÔNî^WòwÿÀL‰Ý;ß{Ÿÿ{æsû·˜Ç’ö^¥~®{EûçR¿W=¢ýóÇ©_«žÑ~ùãÔ¯ÕÏh¿|ñêWêç´_¾xõ+õsÚ/ßaT4Ü;¬µ…Z‡ºûzJŠÅ@(­ÏedBJƒ²§Ó›ï3# Êb$E•%Æz¥µ¸¦jJå"•WŒ’b:m›.c‘6ãn²â!¶óŒ¼ èºÙ"*¦ë@ùKû;ª½åÙúÐiÕ)‹^íOÑêk-&JH¦>þ2hMùNl^MZ¸'…!ÐÁ(’»ÕFæIør܉*žä¨±äœ ÈÂM„o´.”I‰ùQ’Te.L„&Cè)÷›Å§ÄÐÑ[:Õj½M£9T‘¾ÅÓTÉ\ã¨j)0ùŒ¤ €Ë4Á8€r¤Gæ!¶† §4. ÕkÊ~®¡W*a!Ê%.‹YÓÐ…ƒçI (3ê=Sšqcñ‘þøÚ‚HTdÑæê!CÖ…¤]©¥%½z”üÐ'Êw“ô—ß¼¤°èûÉ]ÛÑÌ¿åíGø'ù»ÞŸ­R˜µîÐtý¦°bÒd¤Šcïã&„ß”æÅäÕ«‚xR ‰+½TiÞdŸ‡-È’©îJ‹IÀœŒ$ØFûBéD˜‘_•%FRäÈHòd0ŽrŸy¼\*|M ³­V«ÔÚ3•I»ì]5L•Î:†¢“˜ÊJ ±ƒLˆ*D~bh`ºsBê XÖ¼§êêr¦¢Rèµ8ýX>t¢ƒ1£Õ9§1?ï¨$…FMŒí¶Î›©ÖuN–ÓѫҧÈb”ÝV³'Íuª«nÓ•¦iÍ'NPrÚo7³h Ö¡ŸÛÍ7´}?F¤L~§+FFbŒa,ê²dé–»è¤x‘eˆ²ï™x7LÚnÚ~;Ús[Ñ)Ú²CQ4΢®P[‡A­I’ÉH‚Ôi O“1’©0 í?¿Áˆ2[ëÇÉ@ùKû;ª¸ìÓäû;NãµàŸæïxöÓ£Ó°¨×;KÔÊ‘.|½U£tÝN‹2^™ë^鸒eG˜Cù Ì‘!¶N,°‡1Z¥L‘@§3%J —Þß{g¬›L±)§\p)JCtÊ© Ój.7r§v–c×;%Zm:uCɽ³èÚ¥G¸Ä‘/¸S"Ä® šŒÞCnwX1ÉÖ…ùoá¥q´qÁS¹¦‚[Í( \ @tõüÖR)Î@?•Që­lT;ë”ôféN!ucÅk³ ì:µJÔõ(Õ dz}#NÆ  ¯%Ç6¤‰ª‡‘IÑÜ&êÂùòêà9&Íüê¼³h¬DÔ#¥ô¼&;Bì ê5oÏ)tª3P䪥rÞ¦3*ö¸‡WˆC& ‹ŽÍŽˆšlõà€êã§VЀ´…qÎW4"þŒ»¯#¾tF_9DJËú_ÙÝUï-Q¦Ò*µ¡Ó]«hMT‰D‚ýN¤4zL™nM‘Q92‰´0NSgÕ{ !¹_¦éæÊ V-2\*öÅÚî„©23´•’õ.‰)ƒBaèÌŸ4͵‘4BsÒ@Z…EÓµ_,×5cQ_•¥êzÛ¶IT КYõö×TA?¾6Ê$K 4Vå<ÌÅtÝ~[*Q©Úµ¦uq·<¯®{AÒ•¦åNž]KPT|Ì6 YFâSá·xä6ÌQ¾Úêˆ1ç÷ÆÒDƒItŠÜ§™˜®›¯ËeJ5;Cv´Î¢®6ç•õÏh:R´Ü©ÝÕ““Ë©j ™†Á«(ÜJ|6â@ï†ÙŠ'ŠñßÚì¾§©¢i}zpjTzý0U‰Hæ³ùç¢!Kqæk-‹ÑŸBŒüèÇ)Xä˜X˜Õ”^Ï«4º]Bë*-h5•0´¡ëéÈ-±HÒ¯D”‹8éqßmÇÞ¨ÊݘW‰ÉE¾f†§èZ7kšnuìë]/®š‘3BPôëQIÑ´õf¶.ËrCQ–èžGžão´™>Ë›EÅåý/ìîªã³O7ìí;ŽÔ‚›½ñ@ùKû;ª½óÚðOów¾(/éguWš|€Ñ¿giÜv£üüÝïŠËú_ÙÝUïžÔ‚›½ñ@ùKû;ª¸ìÓäû;NãµàŸæï|P>_ÒþÎê¯|ö£üüÝïŠËú_ÙÝUÇfŸ 4oÙÚw¨ÿÿ7{âòþ—öwU{çµàŸæï|P>_ÒþÎê®;4ù£~ÎÓ¸íGø'ù»ß—ô¿³º«ß=¨ÿÿ7{âòþ—öwUqÙ§È övÇj?Á?ÍÞø |¿¥ýÕ^ùíGø'ù»ß—ô¿³º«ŽÍ>@hß³´î;Qþ þn÷Ååý/ìîª÷Ïj?Á?ÍÞø |¿¥ýÕ\viòFý§qÚðOów¾(/éguWüWd>à2à ›Ï:á ¶ÓM ›Ž.¤D»"%ør¡¦êÑjðÙ’qv2ŸšÚ N6è6è*ƒ€¤.´`ëjm’ÿÂíGø'ù»ß—ô¿³º«ŽÍ>@hß³´î;Qþ þnÿ†ýN¯:%2ŸdM!¨±Yæ8 ·Ìyâuçe¡¾N¼à4Nб6¨óaÉm.#íÉ!¢ô\aöHÚu²ö û‡Ø¡j*ièÀŽIf“W§Ô]ŽJo·CÄÐ¢Š ¢’*&éÿòþ—öwUÅ“c!&ØïD•ÔɧãHl™}—á­§´US‰Tý3 Ȭ͖Seò_™!×qFÚ~A™òc²"Ó " Šfág!çÞwû0èk´¨µº‚"Â¥¿6;s¤!-á»ä„…Q I6èÇG§±ÚðOów½ªu™¼ÎçH§Í©Ëå1Þí3’Ÿå·tÍÎSE€]2+%ø…©(½ãÉóŠP42ÛdC˜ü'QæEÇQµW#‘‚f¹2M¹¶vâòþ—öwUqÙ§È övÇj?Á?ÍÜIÑ,ÖXsSÃgŸ"–ŒÊÈÜ›w¥a ›ÃÐxã7$äk‘´(%oìýCVƒG†ì†¢7"{àÃg!ëàЩzEˆ›…m›e·qE¦ÌÆ-SSUBl‘‰á6z¾ù°ì”@f›cü¾K&Jÿ/=N!ºÐ›¥¨+°"Ë{•(ô¤|ªÎŽ `ÚÄ‚ ¯¸’lÙaÌ’6Þ^byÓ é;ˆ­¼ùJzsÇZyæEÆ ò)ÍBÌHOjq˜›GDe…:ð{ôJÒ£î#¥’5pÊ2rº.a+¬ íÄ…„¤kN˜UM»2ªpÖ4ä¡tH1˜†‘ 6ë2¡6I1)‡!¶”[ÙÈZž¡?I£D AXtêTykPi±nUTª~P´†‰ Ntñ§ƒò_ru®SM¹^ 1M“%úCÔ‡™ªF’ôB¤E–}1ç@q!1ËsŸdBqµSéŒr¨Ú=èù¶r#ljY*Cb¯5÷+²›Žñµqi÷bÉm£!p˜xE[(©3HAEæ²ÕG‘>\šƒ X+²Øx˜ŽÃˆ ª¨ÄX™’Ø{Â[yPäêci"š·ÞÒ[‘C Fg"S䜒 ÝV‚;¨BQ]|.$· Ê¥xãKÈTØ­Œim¦}îT)rŸa—š‰‡/­YïN›K]Ч)º}EƒTTT>xgM¹Œ –˜yÖÞVŠäÁŠ: „$(¢¶§èÙ0oRÕ!»PLäJ"~##(Üs¼‹ ²@…(Ñ—dÆ 8`Ù _C¡"Ä«µUÓ­²$É„­AŒ› Häjð9)”aÙLÇjp*½žc–ã¿–òþ—öwUf]Fsá ¯Í™%Õ³QâÅhŸû‹ìšp×öEx¾œ©ÇªÓ‰çcóãæ*Ûìªs}—¹ÞD q}¦Ì˜u™ŠÃÍ8|Tõ=\d X0®·±rK®K–Ĭ²&ãMæô©L5“޶Øe›† *¼Rõ 4d´Q—%´ŒÉ%QÅæÄÜ!!T»n8Ñúm8ãd&¿Ù¡³¡´Ý¯§œHåZ—Q–ËYp¥¸Ì–‘«A0a¸$ܦÝsÝàî²?%³w!Í:r–íM‰ÁÉîM#LU¤«¡¾¦¬ÒT6›6òq°RÉÊFµŸMçj #\˜2»ÃâÕ^(ÆüAs»>ì3“ ã:mæê)«yªõ9MŠüÙ²\4f4vÕÇO–и󥈮 2Û:vm¦ÍÂ]Dõ6=-þË©±ª~¥eC¨u¨Ô)2`În|ÖljuEÂU¢Æmj1$·…ÉAUÓõ8•jy¸ã)&œÀGš[8ˉ±´è\UZt@ñ @hß³´î;J~¹Y¥QYöˆêµB%9§ä(k†\˜ó"ëܰ3å©àV°ªñ¬&Ó)1cêí(’‚·¨¦Cb36ˆNÓ*r¢Ë)q¢‡: ã8®+hûñ ëT!µ¨Y¦÷n]qZ¤Á©‚˜´¯SeIuà îï#—”dâ6ãã\Õq©å]*3L8TøÏòÔùÒâÆpÝ|•ÈbR{ô·“åDeÇz’™¨k'Ójº­+´Êm?NÉT™Új÷7êåþàÌdäE”ËR¿I´ˆäËrÚ»ük(-ê rõl:à %GRËï’£HzŸTh,T^žË•kä¹HIN RDÈÝë¹JSFÕ«E‹PQŠóÔêdyíIîó#v$‰ÎîèÌUy$s‰†9jÛm*;GÓõj¼¹tM4’¤ÂSi_ŽëßüÙâSl”hM¾á·&¢6Ó]ì¦ã½äŽG~<ÅÚ?2—@ĪÎ~kS{³Ú¥TžL$B‹"N”|µŠÁÌy¢"1vK@ÒºZöDÖj4x´ÊMG §#=Pu:w"M2AˆD‘"SLHM¼ú{*ÃÍJÙ¾U8…`À_œÕBn¯z•D—åv˜mZ§«a:D!!¤µS F›(ÝmÇ%/(Üv;%NªR4œÆ'÷@¥×+ÔÆ%IhšeÆ%Ççdt7cÉ·X$-µ*¢JÖ:Z]=žù|ï²¥4cФ–£RfI­ÇtnŒ­>,æ'ú1 EíÅ6{:ŽÈ’¤5ˆ4pGª[@wÏL¢yš>ÇüØ`j$ÊGeÞkw é]ý ±§[j|öœ„ð>Ó³*o³\jIÁbJL±Ë•"<ÆdäÜch´ô½ 'Mׯ³2¨Ûõ@˜˜‘RŒמˆ Óe¶.=!*Ms)b°ÚDA91—ã»Úg´j<)Z·JÃŒöˆïózz[lQ‚B;QI¤ÛO+”gbʧÀu;ñ\ÜØÞíR=C_ÇMS"šifjÕXÑ_iä…WvsÔžtˆaDŽÒgŠ3Í35à@²<ý/QB›«' Ô~6©[y©MÁ’ÓÇ!‰sŸƒP~_u–Ûešdâµ5ÖÖ˜ƒ²Óïè}i]¥i÷¨4Ï)3K“S¥?«&£;¿¡²+Nr|ˆPÎJÔ‚Šê·Ëaô»…Æ€i«(uN¨®ª•0©sksˆ­Lq"z‹Q'Gé—R€r%¹Î©ÇaÉ#“L:Å»¤FæÌÍ+5oÉÌ¡¬#MΨÒêKP’ÌÚtÇ#‹r`#lÇWšJ“\R%K¦éM3§û„ºL·j• Cõ@tüNá\–‰æôÊ”¸1¥0ÃìKp#›¨ô¦;OIz\ýš³>S¦2ûĪœjqVyÂä9©éIœAI¸B‘!ÿ8ó­8ó}ÔÈ0jú=ié2ãF‘W CßRJqA(…D‡Ín2à²Td‰#y8 ªˆÒÒ©u‰c_¡ë×'ÐMèÕ)‡O©»&¡s}Ø!yM£qÈn;=Œ ã4²ZãNöw¢t|]DÞ­v¦uCÕ7œ«ÔÒ`·OVŒfsê‚©5Eð8á–ì6˜s’§³?OR— Ÿ*4÷¡¿Q0~¡:©6™GWßžë¹j€Q¯Œbn:6ÛI·©©Cv„å¢4÷ïëQeñv0¾µ5!Sìê\ÅØèÒ› És˜¨øÛµàŸæïÉýCXGfd‰ÉòyòßËà‚u<âÙ¦­ãß‚™B«ÒëQx£œªLøµÁ A·I‚~¯6/ o4á4¥š­š¦&*±ê{HÔu”é , hÊ3ˆË‘e¾µÛ… |ƒŽÛ‘ÚŽB-69É ¤4¸‹”úö«5¡T¤Ó©¥é#u§u$ª¨¶¬­-å…9Æâº’s}ȱ”Ú†ù úwn5.ª¡ëWµ…7YNjjð߇&¶žä¤©w™Ò¤Hªº3XOH óFâ×.­O¥ÔJ‘QN™PWN&CÓ3ƉN9’:¸ „(¨·N(š§SöŸS¯½Mf[2(® Jlg[‘ ÃlùZ¡Væ>ÛNÍIˆ²) ‡%¼1ið£(ôx"ÆÖ.iºõJ¸ñ˜;Š»™bœGÙn”Û¥¿Þæ¤áч7KÌä­êÆaR´ôš’J•S©É”í…•>÷-¨C.CÀŒãؼäcl2áŒqä’3¡£:¢3Þ_Qa 1-Œò<Óʬ8ÀH¤ƒ8˵˜mà^{dQ‘^áÝ3BÓ'PÓT‰õ¢ç¸÷vNs•?P6°•=-çZ):åa·# C‚Ë’êxåp’‘fC¨2ÜyÑÈØæÓOÈD Écº.’¶ók‹8Âùv®ÁNGc·äJ{Ñ¥×1’&àH*gxmö¢#M8éJyfÈ€o8Ënj ºE™³%Ðs'O =-ç#¼õ9[.sâÜZ‘°ãL¼÷-À&Üç0ÞZ„ÍyB*J5eè‘r“R¢;& D… _(57TAù0ܶMyäòÑøÏºüªtz„êE£™l;2?š0r¢ƒŠôqy[q'@ÎYá|JÚr¡N©0ßgLÑ¥·^§)Ç_©+U1bÌœgd¸âÉvð>Ôˆíƒ$´XäA?HQ4þ•j¥£j( ]¬(:I²­OqÉÂbÅ5Úduf\H¯´eXRròëX7Æ8Æg>[ŽàD®äY¶ Û+g±å·Ë5¿,]Íמ!å#u:K5yIOÔŠÛU¨¢ò¹å6Ø.öÑKqDŸ'¹àŠá‚ЏÙ™²ã€é:À‹IɲA%EzÇŠŠôä(Š*‡uøCÕŠ4W hžtˆ÷ÀsM‰3êÝnHJ‹Ã™!(²ï˜å‚(~Ù*­²BöÝ7Úû¡òPXU{#/ IOãµ”Ó%ôl½=CÕÇ=²B+ JN‚ïdÿÔ¾"¾?»‚AuYtUqE+óoŠ'/+§]¶^›ÖLx…²'9¼·9†ª½({Úåáì·Á^23OÖ˜DÕÛr<|C"ö[âCN ZmÅĽ"ö€î ®Ež^Âö ÝQvKæž-ÝÄP󈘈øªìH;õ-쪾<+Ê;ã˜r’øô" »’%“öD±öîœ\Ÿ¸¹wqÃÑ*[k ¢÷üwNc.#`8:à"‰X–Ù ­‰vM±ºÆ›­ÕY&ÌÎù)ùËâHVTE5ð°­Ñ/è¯ •ó†ªÖÿ¬º* š.åºeþ6à[U7w» mˆy°ëN°DµÉ1·]ESÅQÇQÆ@…1mS¤qDmÑU Šû–ÝKkqÎÇÒ9,ªš¶j„Kš!u ¡•|=¿„oSÖæ vŒœçfÊ6©ÁŸ ¤¬)#äÀn;!œˆx+mGÁ³v;m¹@Ah»­Lj¥RKªÌùsi É¥­=æ]s™ˆ5GåpZ7wÍ&::û”æÇQ­—ª¨Sê’&H"‰">‰¨YqæM®í!j/TêÏ»„Ø’ ˆd"ÝAÇ_:ˆå´üht¨oD§Sן§wis¥Ô¥ŒêjšF’ãò¦Ê+1Xt’,2é@VkqôõXiÔIÕ2r…¨Tv¦ÑèüÖ,VN+6’Þ†`Üå|ê& ÷ÚUæquY*܆dÕXfk­:² œ€Ñ·*Cç1Ø ,xÅ?»¿Ëƒq¸ÊqÜ“è¹2ë‘ÉÖhÚx”kvÞmÒià%P&É@óTáÈ:…šœºL¨ÏµÊd• º‘œr Ã0^}ˆu7¸ÇøòÜ`eÅyÁ 8ŒÉe°hYg—ë ¶¯:9ç<âº9¢(³æÐPh:3Wp†¤“ùQ¢Ôd`,FÝïÃBSPÎCF)¿£ 6͛˞¬'?’\ n®ª4Û^•uBããllß쥷OK~9±²ÄÑÃË”â±!³Œðsš,‘·™#iÖ½`ˆ  ”xb›%ü©ðeÕgDŽ(ÈrfTš§Ežùº ÛQérÜ7E´vyìÅA1CC\S%øH'|‘1DTéDÙ K„WDW"¹<Šn"øçmÖËßkî¼4D7L€LPÍ^²­”L°D_KØ»ãÂd[36ÝØPòDéK)Ùm¸øþÏ ¿2D‡ûœHð©àëˆCŸ+1Ûa ¾-6,¶ØØæIÍ5'LÏ傎ÿÉæ%úïáþEETÛ‚b¹¤B¿ å4ì9A¨*T‡@ïTº› ìÉ‚÷,Ý‚”ª£º÷ýbëdÃqu]z™;Π¤W©œ³”ñù5kr†S3ÝlÊ|ªkìÇ6Öc¯!·\q „ Ö¡24©/ÊŽÌš¦1ù§‹Säs_†Ãï¸OÈîDӲϖëÝ”Òí¹>3Q©úŽŸ&˜gÕÍ;JztØi.læ]˜b;½Þ;•'Â+‡È†Ó‰™Çg Ω[£`PiЫtÉ•çg§PߦF)qà„†æ×åTfœøTµ ëÏO(+m‹¼yFÀ~ >KNmíCL£J–ò\yQãÄzUVš7æ9%Ñ)hð±Ý9<Ù iMeN—^§ö…¨ûíѪc4ës©ìÂ(°äœ»ÍRQJæÔÍ9 ¯%ÚqÔÔ_æö™Þô}%)¶‰lGêFå<ŸÜ`æEد‡ÇÇæýB‡[úR£¹$W»èÂXœé!ÞbÜjLÄ äHe¦%fDÑSµV– z¤'k]:Ä™Ñõá‰ß&›!Vš/½I‰PƒÜEänNuÆ{“êšuÖÖ£§4|‡e7U¡A®Ô*r™Rb\&jß!¶Á¨¹Ñ–SbÕ3žÛޝ.+zÒ…¤«šWKCКž¡K}dSÝ9>TŸNˆâ¤ÈU¡œQZ£¾ãËÈÀr']WŒ+ÇVW]Ôså<ÐLìú+”ú¤¥©K‚°‰ÃmÉÞŒÄhM¥@#Ì™¹: wñz›ŽÓªÃ^ÒS%Í ÆÔô-= °çz(t¸Ú¬h’’cHìwš„V–x›VŠ‚÷{Ž$,‰ÆšZƒî>¬°jywzÆ!ñùŽw1EHýýé„çRHYn+aÅ%£ÄÔÑ?9ë>MeÌ&„ä3K1]†ŽJˆ9ÔÕú{‘ÚzB³N!À^ ¬eT¥Rõ"H¦i0ˆJÝZdGऺ¬p§S›‘QäM•,[H˜}a1%nUVÒ!ÇÕtêÝU˜äD©ƒ¹El— mFŸÌ‘ú ¬nPâc žp *°î¦Ôtùã¨4mJ{¡LzKé\ÓmÁç™[R£¢i§RѺ±øtôòÔç™H4:¸ JµV*E;¿MYŒ¨E-ˆ&‰Y%iÀ‹N¦ÜùµêLµ-Z%Dh¹¨jœ‰YTkgR˜.“ò&¸Ün÷\ŒòŒ·œ}e0ãR9Z×)[U;Þ)ô§žåH–QÔÝ—V“÷HäT‘¥n3ŽAd#2¤ò˜”v`ÓÛӂΧ©L^ rLW!D§½L©ÀôPT*“OJZt¶¦Œ<â¦Jè;æõž¥Öš’kz]n* ”¤–lO«KvM@©Óä, &¤3ÀåÉuÁC2Y ¼iæFCñëšTh]t£~oê‘ïY5 •+¯š|€Ñ¿giÜITÇFÔЕ<Äú}£¿ÿ^2m¦œÀ…T²UN^KâH©tTø‹2DLI÷Œ ; 6Ä2EË\‘}‰ŠZÜ2Ëx²C|•.‰ˆÛRT·RäCoGâRµ¸|hÃm«%ù—æ ¸Dj·BEæ!ÜUrLPÅ«”+,FÂ-’]kd –>>»‡ …Å‚2W.£ˆ!/ˆo¸&ù_ÿFÜHÀÚ,€rsÄF¹z6ñöÝ=—áTù#‚‹f@˜–\ÁN›î¥áuêK*¢Yn¼-ˆ8*G¿Z zžŸ·ÅS¥,—\°Þ° ‚£wŸ0±ö%¾4ðñM…1&ÕÇUÄ[à<´\„WÑULrÝ:–ÙqÎÈydjFª.Kà›·¶IáE Üso3E;f‚¸’Úꈛú*^ß9€Øš´­¦Wsqø%Ñ|†û-ÐwQ²pŠíûÀš)‚d¨·ÝUPlª¸Ø‘U<|x7 M^EÛû¡{·¹Ù eºø¯±S€Y{¸‰vö[tܨ‹©v[{7^ –Ä»­Óû® (xõz)tTL›º¦é²%ùoÛ ¨ÆËuÿÒ—lrºÿ÷pÐòÉ‚^R¨á²’`f®Øpß—é­Õ1ñ'ULK“ƒBÝÝR"R#$ QðÇâ? pâþ³’ÍžSÀ°.{mªâ(·K)ú}«t^ Ï(´`¨¤}b *Þø 4¢½½lœ5Ïdp¤1dhm¼ˆL"àŃ3Ã3,sp•\uIãpÉåS6rùhX¯5ÜU1;8¤#mÅ¡5U5XèᬔÚ>ë.À¹’¢«Y !2$º î$-ªàÓÁt6Õ2k1`Øý’ßÙÆ£"²äD¤i°«Sâ¿)ĉ:¥N¬R)1پ܃n“V«y8[F  ddGŒrD™ó„Kß˧à'Cù«)õß᪭ÕoÇfŸ 4oÙÚwdˆlÈ_]vzÈ‚¾>ð“ÿñ¢ïl´¸ˆ`Fªê úa‰]~%ø×Àg¡©-¯›FÌS1·¥’†íø ØW­>1áÀ}j.›˜[ãÉvN›íÿ☕¹‚ÙÈå9m€Š÷B;~©zpø)ºþ"N¡+kå‚스å²ø>Áº* –ëu3]TQW 6K¾Ê¼² Ôwé=¶ßkðÑ2‚Dd¦ap{—cÛ0$R\S«ÛíEÛ‡Ùn*¸.×™7q¡f*¤Š·!ýëŠød¸rÉ© Øík¸—L…=4]Ñ0ÿß‚W…Ó%B\·+¨šŠ ÙÖEêOjðNŠ“#‚-̉LH·å“«Ókô¢&7ø;ð€H¦é)áÑ‘ˆ·è—‡œ° *å’n›'ç–Äß*ÿn¢Ýw°áì"¿_ ¦ÂÔ,äœD²§·¤D”{\}§ æ9æJžjèà’`·%5EÅQ-ìÝÛìuW_%Zi3Û2ðö®¸åñbª)í5W[»[¢¦Ué%%½Úª6\¼wáœEÆóEG [5"ÃáÔH¶_Ü(Kà‹ÃXó+(d„ã‚f¸™Ør‘yªX Ö÷^3ƒÞμ‰ÍÔƒÛèô©-±ÞÝ6¿Æá³yÔaQ.¨WñO2Þ(Eµò\ooܼH3QG}[º!tÙ“Ojš §ˆ" ªnˆÒ Žz#¯G#ê ®!–}IpñA¿‡Áà”ÏñGÉGÐ5¶*ªˆ½[|H+ññ#½Ç6¹Š.FÆøf$Ùã…Óþb{.W½÷eÅÅÃ7S塽 ²”‡ޤܑÖDQF ]'¹ à:Š 2J¥ÔH«gzVÝK’¢­Õx09n¶KtßôéëÌ„  b‹Ô*¸¦ÖK2©vÓžãHŠG‰4ö7¸4²D\QwMÓ‡ãs ]i,,„CÒ«"cb²šî›ßââH>¶u>SGb1Kݱ ­ì©k`¸’|w[…ÛV17BÆ ½ ²*¸ŠŠH>= íá ;HlÓ7L|êŠî‚‡kªåuë[%ÓêÜÎeSœ ©çEÅ~¢³j] »ªä[XúTÊÂŽ]1>iÞãŠøõmt¿ØÙ0pË/b'(Ë'OÙoæ‰mø¤«hß2í«—$Q¶è»*ªÞâ›ì©·Ä¤ÖY|#6ìVì ‰Š*Ø ¥“|¯u?;ç2éL1èùy*¢¡&Ëâ¾)Á:†-yµç&Êë¨> ¦ªŠ'l¬«{)oáÀ0ÒÇSå9’’¢Xoðƒö²Æþ$«¿ˆ#m9!L²Wž$CU±dIҡѶþ;ª_¬„Å¢BP3#yH—;Ž-°fª†dª eÓuM•rVœÍ¸ç£ab¶èîH†ß3;’&+²¯ÂË‹6Ú·d12ØÅÕT±ä;¯°ÕÛ}¼b‡,—¤[mL°¹¯±LºU‹ˆ¢ª¹Èn×MÒÈ…¸’nˆ«²²ÓˆÚ´Ë˜´‚Š.ž[²=H™€¶–\UZæ¢Ûã|ùdì$ê[< ´AÁÜC¡~¯Ç³Nó˜¹4¬‰EwÜ•õ½íÔ¶ðê^Ãõ8Ÿ‚«bŸ²;¦9ª®ß½ü88Î6åìÛèŠÛf™6Aá×í!CÈz’öñy §YuW$7,D"¡—;dP+¯±Jƶ±^ÊNK5FÔÂϘܓ"M·Eb|i—Ñ6™µÌe\éäì£ñ—Ç"Æë{YnÙ— Ùnlˆ$ÕÄÂû³5Æ>Ÿˆ9c[ ’íâ)áº-•-«hf¾Šl%Ñ‚ˆ89°’&ßòá¡7³7—å4"™¢‡5 ê¹maÞÈ‹Â6+‰(¥ÞobmRý+ð‘vôPÑ:³ÝW‰$L’¡8ù)š2$BŠÐ­l„HKbóK’¥—ƒŒÅÑÖqÍå^ƒW.´ðÀ·¾ûz?”–c*_ž¹8gsfÂÚæ½÷ôS ßk¥¶e¸ÂÙ7Ëi1!&ï‘&^%’‘x|+¯Š÷ÁpÖ›å3u.¬‚è¶ØKÅG£~›n¯¼ëŽ«¨ã¬²>$·DÉ¡ôH²Fì*¦©tT$âSÿ¤7Ìó%E·ɇ‰§ ­ž{ ¾š`/ˆ=ep‘§1U& t8Û뿵1± ºoãÇfŸ 4oÙÚw†4… êÂÅ*XT ¹£7 %”Þî¯96L`DxcJ²ä¨œ¥ÎÛ^_'CM ŠF!ú}GÍœyµ@ï1ßä—$£‹!u·J-QåÈ ÙHó(¤ôeiy&ÓÍwò&²!'C!³¸.&÷A“&VŒ`Â"$r¬PFKÄyó;S1lTr±­ìÂ8Hh%4Ml[Uäµ™R (‘8³ñ&öô×]“™~ §ô%_¼&(ÓˆTÞX¯§es¾ø%ˆªŠzvE8é jÂqÁDüý)5Ó–ï”Pe—ôs56®b„Ï0‘™¬è*ÛY s6§“þp2¿tIÈê]Å@ ³DpÕ8q³Ð5µ‘~5œI†H;:“yJî;rs·ƒjðrÐu±VŠêFå1·RCPl¦£¤'š²*¶Žu\:àhjˆ6‚^gÊT!%p’ê¢Û•òhŠW° ‰Ñ ¡EXìö®·u²¿GÉQ="Z’5Ö™ŠëJF&HqÝJ)ÁÀS BR|Ù‚)¨='@ÕÉáe96å+d+låª+çàkv“™|T\³ä惪7ëmeQìŸæ‘¿)£„Øâ~u´óJ­‹Š$mæègõP#»C›A’Jkºè•Gy½ ÿ/™‘ô¦k Úè á“äF'ú§^w/19%çèæ6T4ÿ–x¯/AU¹¢dªÉ§éçQÐ!¨›)~—Z#`Šíä…tTtEÇU±LÖU°¹‘*yç*@Øô ¡"š(*u ’ñÊ-=yfâ ó(ï\·êÌ*F •AÔ"\l]I~@hZ‚dç.ç.Ž %ÓuÍj8òº‘y¹#^’efÉSÍèj™¼n(Ô°Ô!¬õÇèxÕ@»ç0±à9š {ª("ˆ’hê7}²ræƒRU,PwUXrÍ: ñ€ñ˜h:Âdø+äêCnAª¢3"[*­ôc¯,Tx×­3UϪèâ>œß=M+ªˆáúr¦#Ôà€l¦H*Š Âh:–Dê¾ shͲÛCË,IÔ‘ ?h‹†'uP^Z¢"· çµÊR˜òʨÑç`´i¢“T'!Anâª"E⊼<Áhš€ˆä€Ûsh/‰.Ÿj¬m n6P'3ëllcn9nh)93¦µzµXUlÀ«œnò¼ÕFâ+Šùu4¼£ d“AJb/1@*tEÆŠÀŸõ¢!8ˆH¦Â]à.‚o˜Š<(~bÔ÷ký*’ñ!*­šŽV±XqOb6V4²U^ÒúyúðQ†Ôy 0Q;ÿ{H3eÅ'Iîé#Í1å’×u?0jÙJ ¶K&˜B$™ˆ™;ßða›»t}õi•¸¸]KÀEMPGã’¼Šu +!v…ËàéU UPA îÞÍ¡r4%[ù¯¡I~•@ ˜ä©ì¶&FÙ#H§çrmBèh¼HqÝT,‰Ç#á.‘Я9×jïm :ñQTµïĈ˜sÍ…'9­”ê0"Úļ§Ê¦-:>o*šÝëãùR&PRm‰/`(Ô%åíž[±%²—'EÉåsy"ThmÉðG2XåRÏ—n”y.ôß.@èy¼¶Ùp-å:ºŠæb† P_"E`*¢`VDpÜŽZz“")“SèO†ê<³f¦à=¹Ž\•<3,A·HGAVáNkĮӕ§y¨EÒ‰R&‰l½bÒ™"#€&{¶c ª,I41BmÊf -EÎ š­5t°·ÍÄŸ$Á¢"U-9;±3ÎNûGi÷ÕäqÖEg§?–l¡;Ž|¬™SYäˆì]Yeži÷¹¶ÒÆ=\¦ÎrŽ*ì6$ð­Ç–8¡°±ŠäGäöQQÌÓ¡\˜ KÐW5&ÑAM 2a±ÐsM•ºžž1ÈÞT%5Jªòìj¶G°^RómËëâ<6ôKêkúQ—•4ð°¦Jd‚S¬±QpmG¥µlTšÌÈtT“Hî;j¥C yT‰®cyTÂŽXæòí†X¡"ðæZs²&bdmThOl™ ‹€ÕP¹xÙz 2Þä–1ãš×gµ€ÅlÏx¥zVEëEÌEß᥮›oÌį ªóKþóI[+çͰa8“âBËO l©Ã~bTyÒ'„››C0°i24©ª ùµº•P•1TU8ã ê+!!Ä™Fu¥yUI§ZªO%Å‚ð±* ®|rœÑrÛqé¼Ú¥ ¨ ´ÆÏ™IJ®.‚Š­‰¬¹Â)ÈG–Ü3XÕ:bUšU©MÉ‘&šè¹=æ&Ém–ÒÙ&hLA”ç4EXDm.â+!öiòFý§qÚðOów¾(/éguW¾{Qþ þn÷Ååý/ìîªã³O7ìí;ŽÔ‚›½ñ@ùKû;ª½óÚðOów¾(/éguWš|€Ñ¿giÜv£üüÝïŠËú_ÙÝUïžÔ‚›½ñ@ùKû;ª¸ìÓäû;NãµàŸæï|P>_ÒþÎê¯|ö£üüÝïŠËú_ÙÝUÇfŸ 4oÙÚw¨ÿÿ7{âòþ—öwU{çµàŸæï|P>_ÒþÎê®;4ù£~ÎÓ¸íGø'ù»ß—ô¿³º«ß=¨ÿÿ7{âòþ—öwUqÙ§È övįͮݵïÜžûä*F“ß;·7»w®á­£÷ŽïÞäóråsÃaßÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?á¸:þž¿ ©-¨uªEV«¹@Û¬„–ãÎ×/´§ßh^G·,\4XÐ`ÿÒK[Â… ;1!ɽ,H±ÛcÆz 1†€e–€[i±ADN=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=ÓšÿæõãþªQ{d¨QêqyÚ£KÒÒ)ó£ó™r;܉q5“RæÇuÖå¸9²ã•ÀÉÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?á¸:þž¿ ©-¨uªEV«¹@Û¬„–ãÎ×/´§ßh^G·,\4]5¦»×~üÝÓôj}ä÷nùäštxë»ódw~ñÝù¼ž{ܬ°æ¹ŽkÿÄ*!1AQ0a @qP`€‘¡p±ÁÿÚ?!ÿ§zΠÆ0À€3 ˜€ÖƒÞˆ¥‡º€ñ°÷P‰,oB<&°?Dà9–mõæ/Q㣤û%ŒMZ !x£M`]}yPÁƒÉ¢ÖØ’{£àPÂ-,À ®{Bq5‘™¦·öÑ©sÒûOð'΢O4³Œ^~‚FQÓûz¤Ñn?ÄN“Á(Kå` Óxrú›ÑÞctkvwÔiIY#©é>ŠIÓD±ÓyÚ¸‹ðÃÃWgàc¬ÐHlÿb)MWk¦¥ée¾ÁGÿݰ4ýú8=§Ç–[‚jÌøMÐô‡(ò«v£Bõ®4€åÖØ~:pó´5qᇆ®ÏÀÇY ÙþЗ<ùJ[wãýJh<‹·OH´ÿ&p0»æhÍ›pŒ0É€¿¶Î)ùàŸlt¡ÆWOŒÙ½VꞸ*˜_edHÝgz,IcžRˆJ í²£.\- o!Ôï”ÕC+ýŠŸd¨Ï̓*,«#ç¯$Ià^s]§á©E¯ýq *-Rý6*K¹3ü¢ƒÖãÙ‡VvÙQ— ®„·êwÊê¡•þÒ\òÂVm¹Ê£ñú%—ÿõö³gæ>ÞA·`úå?µ £».c\<ƯÿÏ%Ïž KŸ<1”°ñæòTQg¾§¢1Õoºn$c^“Ò£ðÿ‘y‚À][L;x!ÕõŠÖ¤ûùóO$ìyýèˆYõû*¯ôÏÆ ]ò‘ˆg~õB¡ðˆEvAÔˆµÿãè…º0S„üVeè²^@®ü2ŽV ¾Ç•`²ÌH9°¥-š(,ôÄŒb·ô¦÷›ÿ7E%Ïž i8bbs^ìð +J<á7Ó€G¶Óe³Í|4Èò…,”$®©§+öÕ„zÀÕ|DKŠ=×W8¬†‹`6œ-Ũ@ùà‰ÐÁ‡Œ'þ@Ë ˜v53¦úõ°Ç*I¯ x *™bsÉœÀ%ôŽ×Ãé«WÅÞ‚t=*‹K‚ ¹V˜™ì! )†ÿÀÐ$dÃÉ D}0Ý"eÿ7r’çÏÇ¢ÊAA_J?F>„Ž…|XÕ¾j%ÐêQQ=2úNH­á`\r‚†‹€ C‚'°„R§á õ®Î2M&$^IsØ-ã Ž¢ŒÅŒ!A@(¼»ç™F",bÂ<¢ÌÏ$\hyÃ1K‹Ìh´>2ˆnt…ÿ"µ- -"R< ¼ãEò€)ë7F/æµ#»ç­ûÛb¡²¦ZDÉ_mžËÐ/… ³h Ïl— ¶•áïÊÖ„%•¾9AS Œa&õò¤ÀFožoëu0˜ñ$VÈÆåEtz,Ì‘(´vb¬0Ð3@g*UF&‹)uÃßréáÐ1‡òÙã^ø¤HRRóÑÏÂÆB#Ïq\ÔÙói Ûßœ©Ü(Ðþ—·°øT¨ M4^TæªIB"?ðRçσЮ•ŠGé‡ÜA‰æ](_wÂÞ”…âÐDá!‹Z4 I8oN£m"†ŒÉà ‰ÁõU[s†V}ÿ×ÍÈWb¼„\Ä¥„'¡vÇ“G3ÓŠ#_šÁ*^¯HJÓq,1 ,‘NŠªRâÑ!÷Ú…: ß}h‚áKc6dŽÐ ,+>ÜÙÛàn° 9n¼ºdÄcT‰ÏûS9™Ð}ú\^_Kg‘ˆøî°ÃÜmp©£#åºÚµ«Ñ÷°7Qü©3“I³-_Šgu.’À~&3üå[}$æs&°<ÏIÙE€‘þSÒò*…j3—(ÿ8]^¹ÍÄH3Qób³´zcT¸Bz?YñQ¥Q)GË›¸øL@€UP HqñæàÂx\ºà}x»uª†’È#ðÑ €P¬‹Ò¡ê¬c¨®³^Gü¹óÀGažuhµgª VECuT2Ë X4WÃÏâ&‚¤\F饌®#é~[ óïøs5úÀP ’+/'.rÿ<€äy(îç½’å»°£*¬'yÃVÂC@  Ãù%b ‹AX1°ýÔÍ,i\E¢E^+‡éå€Dt ô&8…ï:xÄâ+À/¾ÚðáÉÎþO€±bkö*Tù;M´~ƒÕ’ÑwnUcŽøìhŠ0aèIåo×° ›^ÈèøŒÍ! >žÎ4R7æOsЭ7 A¢pª:Iù¯­~ÍŠ•ìB#£†@€uIµ¾¬Rx„±äJ0HHöíÐÀF ‚¬Ñ›Å‘H¢ Skß•0Êþà £" ãhŒƒB|yÝ2móCP‰êÓEƒãUt–|1¦ӛиʃ ;à[•?a¨xC}Àƒ Ò¿ä$L0ש‘_<Ÿ$TJSÿÕ¦«”Jã4R¿"ˆ¼ç ÇPß %Y!ã‡ÒMÚ2P±%Í‘è6ž¾Ä(”VZ)+À?h6­ dT<äΑ—°æ Ã ÌÊ „(4KpÜþŒåÁ‚! \QÁ¬ˆÕ–º¼àÀƒ& Úúri˜´ÚÍ'ˆy«çR†ñá7XFÍ5•Îñ£¦ˆQßK!Yr¿°¥ÏkæôÞârâozYÞEÜ ³:9œ¹õÙ8‹ÙÑýxr w‘yz&ÌŒõ :‚5ž52õ¡ż‰¹†®>öZ" VI RÚrëe´‡¤[à²×vüö¢6‘hú\—Õ~%nŒ­2 ŽJ2UIV|´ñ˜«­<'8P)°·‚CûŽ•E GT¦ë8¨2 $½æ©íÏØ: âRÃb 5Hø +="£PÙÙ†³ø(¬h :ƒªEc t’ýjoÊ„ƒ–£ %‰¾|H‘îz†Z&fü¢ Î9…Jj"ŠxŸ(Ï.$.êB./¨ö¡ÄiO^'‰uƒ0V·ˆ+b(ç^RnJ`ßiR!¢í^¸‹hþwët•¸T¬M[zCÔñj“¡IçÀ:U‚Œ”—9ƒÛ„” GúÔÔ]>³Jb\¢´¥=½¤Açâ±9©T„…„½4„/4¤d@ŒbÎ4 H‹ú™’j03¼ ¾Iæ}A`­ËFÜ©ñ ø¾à$DÔŒÈøàá›8S͈Œ÷oÉ÷W~ tü D~H >$OLÀïfú`Ñ8¡¡”l ŤhÀÜŽüVzkáòLønu ãëtŠïZPiZm‰g‚Í Mý¬rŸ |qÀ;+°jþ©sö—°!è­U,nI”ì,_Ѹº¦&¶»t4B«!ܼy¬Ÿµ¯È_•ÈME Fd1ÞÍHBº€’4ðôzæÈw»BçøVy ®¤ÍrpÞÝÄIgl™NþÄð•Ý”eˆ½Q[‰Ÿá¥Ð®â”ýƒ€×â‡>¤.€ò»@Ê{NƒcÏÌðN TåʹõÐH,p°"éÛ Søž´æ^앹_ù;zW\0)Àx(qË¡à6‘¾¨”ÈŸQo²Ó GI"™ œ“vž.zä…o׎©{ߢü†ÃÐK pH4¬¨œ¡àËGpˆ~e%£’(Œ’f£ÏÊŒˆ6²˜s·õX@Ÿg4Âà¡ÀV‹ä“Àº) àn.}bÅвø–†òuHÞ8„²€I"ÍL܉=F Ž ChO1@OT‘¢ðºþi7ç9¥¹°ŸL̾xW°M¦Ðúf£x˜NígàXŠÄF »-ߨ°¤‚g{xúhè/ðvÅ•D”Ø)Òhðóà¥úz¾üÄ£ÝÅ«ð5h5ÀÔ^ÁjJˆaå4­c@t …DÍ|"…UoPíø‘„ÒD´B^Ð_ù즃“ðð¶wHgR K¡¯ÆB{´(›í™—’"ø½ƒEòÿÛ‚5úR~½h~àè‘,Mô`Å{ ­V]âÇ³Ê £’[!¹ù‰¥fâSœ*-IN sñiÖ†#Èjx„ ÐGÛœÜÒ81 £R¾ BŠ ¶ùÊ%ÿ£3MÛó¼B—OTŒ ŒŽœÕ ƒbƒú^Ò¦aüÔLáÊŽêz@´€zˆž2Ñ2§%F‹Ë#”Ça¹d:†QJuÏ:0ñˆšR£ª£/1ƒÁêÀ,<ÈÏz¶ ɼB7ÞÄeœ-%cj½*F’pÔÐ=‹ŒIiáÒr]ÖÈJÞøY®-+! @2áE§¹p0ƒ(=ÂÀfÔ¨in™á»qÚ)/ÙýÇ5@õÈ àØ/jðb1P E’#šY: y¦”[v‹åfÝÄY½ÑHyÑ8+ ÆóGÐß“ˆ!fÎ,sìÈ>nL@ëÀQ•~0ƒXêArPÏqJoT!‡Jën«ò%ö¢ ÓPJcÕ4V|ƾ~Ð.¤”%¨Rž©{\<Œ°ÂVÃ7 N ’d‰3~掜]RÅb™ Þ@0Q-y!V'HV÷ Ž8àKbæµr媞ÌÈÅN„;6¡ ¯â´|’RšÚñÜü7‘3$úÞ"ûú ’EùEP/†Ã1ev¤*$£2mg`C‡Ýè‡Þ0B{›ƒ\–ØÃ1&aÂ-Éï ˆ€†‹ë…‹–TŠ„ Xaý`’М×€’È¿o­¿›ðÖ&d¯°V].€êÉ’™†]Ð.ƒCahòag,9@¦é@8M:/á†T›£Ü©Çx½`û±¤œ qr"ÂÃ8¬  ž«ñh)¥Uepçi¢òèkHJ#)¨@J3–' QWÂ=ÄÊ4¼ßÓÅC] ›n¯—ÖÖQhFê÷MÉ…[á ´Ø(ų̂ž*Ì'‡¦«Ñ KÛJsßtÚÖ•³Dí• v~á€آŠ(¢Š(¢Š(¢Š(¢Š(¢Š<’q1 ¿·QEQEQEQEQEQE°ù›ˆ@1Å%Œ¹ÿëg"QEQEQEQEQEQEVk 7,8 l=ä'„ù`žXÕóz¿þ‡ A ëhˆ‹#Ç?"¤t)ÕѬÃôúwHå!¶"ŠÙ2?³§üµd%ŸmÄàDC›\`åìUÉz¿ÖÜúD_âõ‹Œ>š¨¹Ô©`¿ñßìÃå«!,øÓn'j"Úã/`º®KÕþ¶çÒ"ÿ¬\`ùþ“B|¦s áÅÁš•ê° õ*•½*kígËÒO04ôÞ \co7wˆÝh„B™+€qe—'zD°Û9Ö ]ýNÄÖÃЖ!¨vóÚöGÐFV«û>Z}cùÕE…b¥ðëÜlŽ¿»*·±ï(ì \Äî*f†’õ‡ö•+f™j‚r`…cùÕE…b¥ðëÜlŽ¿»*·±ï(ì \Äî*f†’õ‡R×J¨á©Û«䵄ÎáKÏ1uaMº{ÿѳŸ,'„ùa<'Ë á>XO òÂxO–Â|°žå„öÔ§`,˜pù H €Ÿ,M~*(…U=µtÔšYÔæÇè“1í‰Cû‰ö_ Koù';Ä# ˜ÐSŸ-u_ÝöPfOAg rÿÔÌ¥o;©©t*’úÏ–(§+AYœÞÄþ›¹ +×GžNñ8ŠšC*põ dXq"…úuõéÑOKJ‹à ˆ VGwAá§ÀÜéŽ~¸ôw\3¯ú#þh vÝG'e¢àÆ¥wúHçÊ*²~G€"dÊÌû!ÿZÌ7I4XYÕ÷h¦l&[ÂÏ$4¥Ifý _)jªàÌØQ×áë¾îÞ^å¾<`¹Þ°´<)5'ŒåO®¡u6™ÞpjúBCÕØXQ!émáæ.JZhðnñFu«ÌD$œ| +ÉC€jš(×CI6ÜFy°8G¸Ö?á¹_)Jd²„=FRÛåq~¤þò…øUhwržˆÚ3!(˜f6 QO…ÈZEà¾ÿÄHþb“Ú%YÈãÆv„þmi·?Îû/8TòƒÆfi›•Úr…žžÙXÕ t;ßãê³Ð×h*樢kJ4vv9»?W5+ˆÓRˆ}¸¼@.ÌÚTá1kŒšË?Ð÷è ŠUjnCßY¬ÃgÖ’§ù\¡á7“_8QÞMEq˜YVßty«q„>œ l°ÞekVjä:žð!ú[”çá€4RU8F@‡µGÌ6êeÈû!ÅY\<ôçxô÷‚ƒP8qN¶Ñ#ðýbHuz MÂIОDÉ+ñk Œ”‘A%3xD?HËÅ{ mÓ–¿¨È ¼¨7…_>ïJënCIY€B÷Êï‚Gõ5‰kƒ\2ˆÒ;Ž¥gO1›ÜÇU ÁÿKnz^ÕÛ¢ÛI<à’y+²¬åú»ÃŽzØ0ýáf{QùƦyj…<~º*‚:,4œ_Ùî5IG>ƒƒÀ<ìà®sÝ!nd-ÙLJOU LZÿ¦îʦäi2`ƒk7‚2§oRLèåžûò½ŠûZú/æXºÝO”‹‹è&œAÇß÷€žPþÍõÿ¢K+¢wB¶dyGô$D îòO°ð'ñÃ…q:·;yu@R4\V —P®ì÷Hlë#è2ø5–ÐÅô¬„¹ð®4.+[²)Æñü@Â3x>íÃñÑ8ÐÁÁ P³¡?$"-s‰7O,ïóËM"¬+ö˜@UZü"c‘A¿‰Ci¨) ¬Ó:k›¸Z•Å4u¼7ÂhQz¡˜e‚(Ø2ú틜+é(® åc"›ãbâz–†{H+ô¬e#Ð…§zЗk5ÒÅЪöQË ¡ßq‰ß® ã =íÌ8Íš²+Å´ Šà9ÍŒâæïBpϾƒs·稜»`RNÙò†¶ðwËÇÊ$(9¤éà.³£‹LÊ”ÉQåqÖ^…µl"6â œ¨íÏ~¸Æîëˆrê¤83MJ’ MŠÂGgªöAqèО‹y B"ütSÂÁq>!ô·«ZT8ДÞ.݇ø¸x?•WN~Qž·/ƒ`–ßYë@+Ä(ë},Nà€<ÕX‰òZïvŒ›„Ù=†Â©b.=áçÅKäLÄTñ»@Fìò±æR@Ä„1â/IýD›jRŽç#+Žª‡-Ê©1§ÇNBçz2bÍÔOÔP÷÷ ¾©¹‚5ýÏ&½B9ÆÔ½òàŽñ¹SˆCè«©ˆ_Ç™âT¥À̇|ÐûÆ]^ÉANoˆÃf6#æUöÒ£]7dn³Z2–ô€éìg•ôF}œ¯êC;Hœ|ˆ.Zäi´òa…®eÐ"@ô=uÎóÐÃ>kMMåÐÈPRÊi™ýÚ§¸:Ä=R½Žúwhà!=ÆS®\=‘†'á€îGïr ­{ -9Q–böpñÑV0¶yp=.ÑPüüÓÇ”KÐhÖèôÊ Á…E ïÂÀŽòíÒê÷¼ º‡ÁÃi´HTÁMÈ—#a‘,UfÞ’ºõ¨l}–½2v±Ó쀡 c ¤+ Dhþa1׃›UÀþY4ðDq•­2BŒ õ7‘VjDÅ0•h…îp‚µn$K!b9$… ¨ÅjÏ-îAˆA›ï[…`4@­éÏ=b‡AÒ„å…ˆ©œÈÐ>õ2”„³òÆ(éYÑT3G ¨A\¤€Œªhw?ï”ÈðŸ>,QN*L:pq^Ð@í£Ñ\‡€ÒŒY¯X‰æ:ç}«¨…¼(†ììÎ#Fj¼¢=!áiÈ~íBÏÓÆº+1xH?¹å〠5dá#T¨E<Ÿ`ÝF!•ï#œQ("S­޶Œ!œU?1‰©0ûûÔ‘V¤ß×u4Çè}H*€~XrpýXú®¢Z+üÓ^f"vä WÀl=zš £;yõ¬D Ãä$ˆü“¤ÆÿÍ, Ø:´‰%S”üøeìw† s3wµ¬2\3,Q6ƒZ¬RÕŽ£èÜÀ$&‚&…XOòeèóPjO Ò«¸'ÒBUåòÃÓ Døh¿—1S¼a| HƒªHÈxcÑ·Šís¦®c¶ÀDp$ Ú½’j¬Ø.ÙË(¤wËVƒ¾Ð(RÓ˜ò `´‡==sƒ¦Ê,‚ß'q…*ïÅÑÉ9Ê$x Í ŽD žs¢’Nq‘£ÙôÆ…4„qÛÉ@T-€? pÍé -’?Ž3;î‡H› öðà™ÏC*‹¦†ËÑA.WÒÎç*˜oN"¦P ¬5ø€ï ôHa¢QÍ~ È<ñ m²üO$á„™ ü!†¿’‘¾{Q,€s¨(ŠfÈŒˆ¾B§»ç—ËS„æ¹ÀþâÌCbØ â©:â$«ö{ueÈC­‰éTuÏÔb)tx̣РÞ%ú°2’0—¨AD5MlA¼Ð{áNšž­ðqx~¹œ À`¼Å(ðyŽi`-ëºK Àæ2µ%KÒ  ´¸VÌã»ÃrXîDQðÇÐ Óµ†_ˆHt8Ä?7dÆ)š0S&**u„ñ§ú#^¥F,U¾E?HKÉ38c•‚‚"}ƹĹ‘¹ {û¼FêaiUªÇ¦ðëø²ÞM$’bù`ò¬]18bLìëZ@~GH‘dfƒØÓ§*K :Pp‡—cq^Ñëj üؘ~çÓ?Ixu\9ó=zx½ú!û²&àþ^’è ³s5+ÙxAFfÝàoo`Ûgïj,”/Kž,U›rK1Jä$da¦™µÊ9êdüe¸ÝŒTŵL!%»Š@)k:"mÅ«ÝA’Ð¬Š’•ŸY΀+ã1Ÿ— ’ž™ÈÒ½ ®ÛV.Hq„ Áóü@`xè?˜Fª¶ çèüf-‚oŸppl Bã¯p¸“Å·Vá@´¨…¤Èp ·cÏœWÄkxâLKþ e¨£ïaLU5úUÅRšK–JE#ºR8<<âa¢wåš• ãЩ0ï¢2OI* J &#Ev0RZ¹0ÍZÅøAfñ¹Ì8z#LZ0<‘ÕqÂkŽ²È‘JE«¤&p>ÁIp„Ï~BP„H;í”WnÒÓ}TöÂHC·èè±O¨¡üeµ´?#+ß4$g™Y ‘µçd›¼N6§ÒšH„Ç¥K/$kà9PØuu—EBrHÀÜn~b†ÝUB·Ñã…)# í5ïÈRÍþÒˆòÎ ¯£|hÁäüƒó…‰Âµ~¨ä]À·¼FI›Ž‰ƒÙÎñt˜24œ¾_½™ÌMf€@¾—•dÖIQ¢Q`ì't,‰\±Ì`xQMŽØ&®ú:9q¬H)LÚÇ€«£˜ÁÚ5RmUA#…}Ìc5ðw‰q€Ôl*scÜM­E¬41âÉ‚£ð´1͕߫fîÒ tËÛåè$ÔF#‡çwÆ]öE¦Ì„± UiUõì€ÄÙŽîM·ñT Áèpa*5JRÁ`ò4„Â̘*˜B‹®›üxàB(#>#J…˜ÃA ` íÈÇO…IÍ¥#>Sôðh$1Öïþ4h?ïrÖXO òÂxO–Â|°žå„ðŸ,'„ùlÄ,ÃÝeË—.\¹råË—.\¹råË—.\¹fSÑ^2Ä@‚'è a†@E©ÿ.\¹råË—.\¹råË—.\¹råË«îIi….\¹råË—.\¹råË—.\¹råË2žŠñ–"ß G­‡¼ÿÿÚ ‚ ApAP(¡@O±EðPðÝž°,|‹ ‰‰ÒÀò7TëÀðP]ʽv*» †ÍâᨰA×7¹D(à•DàŠ€m𦠓–ðHÂê?aPª][@÷+,†¸-Òïh‘\ú˜RÀ ìPRþÎØÀ\©9Í>¡„CâÖ¦„¥6jâ,D’‰cL E³D/³È4ÁÈ0r@!ðP SÀ1JB(Ó…< SÀ < SÀ 0<$IŽ8 À ‹(¤º@ÄbQïÀ£-ëU׿JµR¡¯$ôƒ|¬€8;EÔX,ÁNå<ÃÊaö¡äªZ&–ïw60:zItôµ°íÆ ~0îa}ÒPvlÙ|1¥ZÒI¬. ´Øp`ý,òìÈ$ª¨ þùd±)1[°­tÎ#o¸™x€_L;à˜«‡cßrã8‡Ÿú-ºÚžàÆÀ‡½i e]@ ¤%ŽÒŽÿ=T/h€B®^½`bÇ9°¥Q ¸µH,‚~yo²Ìúfo’˜˜ÊA$PE³Ù_ £,$çÈZ¸3Î_/8¶úe€Q´ÁȺ]* RZœmÝ×QâÇ·8¨t£J¨%¡nz"‚"%ÁÕ*ãÀ`¼C}ß’h΢Á_ 7¾&¨²â5 Ÿ]èìŸ)*téÇdiêÓ©x)HŠnd%H¥  2EMªsÂ"H0O,ˆG:²„W˜1NɇY²‚•~¤Ežz_KìA×V²|„ÎŽq¡Œ-$L+p)‡ç½l<áä bƒÉë )I®ÆŸLÍ'@c_KÒUö`-ÚQÎe©FtE­ÇàÈ7pÊ6È?ŒÄ¶EPˆ \0t'w$„蘵ìnN'n‰Mù’¤U†í΂2ÙIWt†ý¿R7=Bz{ﬢ¢cu‡âÛð>$ïBIöÀ¨ËÊ3ü2˦ÊÀĖ唃YÑ`ˆ”è‰ÇèôVx1¬Ê©"]°Ê ïÎ[b&JH³ãtt–ìúW“õb‰Œë}½…Uùh}aøbÁ«Þ?)W$–ØïL“뮫ãcëå—É&%Ó8€Zi$—M¬é\#‚‡«ÏXÁ›ölxÊ: 3EÎÕ5ÁÅM«ÌÞ“TÄ‚%:p¡œýF±!­Ù,m‚®œaM›OF²‹@Œ~Ê‘/jŽVfÙê§„&*޻Ή_«à4ØZy õ…©òâSv`ä·Sul¤÷šÛ iöEøœ üÎÊoAÉΜ€_ãi”ý‚ÒT!"a{Ç¥³U¯`_ (ƒÕ¦l挠}i-,0T«î_)TcÓ!ØÀZ7£5*[‚ª|ú»ô4go3ŠÚéÒ³ÖEó¯HEþ Nno)²€S =ÙBâ,íb®pØ`À›QÚ‚‰HØu´Š¯@ä;@¦CŽÞ$†R0W´ç8[»ÙÉxx\+Ϥ °V”?àƒÁ<<((«ˆ€‰1g"æ³Q·ðÈ dáêõ´/GH2€NHQ 3. A¡2Ã"Œ”[(rfÁ€áº¤ ˆëç4›^Ü€'h.SˆÄq>-±:R¿$ý\P(*UUÜ¿Kß,PijЇê-N³BWB O.‘óœBëËÑ.Бc¿RðÒ€©:(ªõE‰‚‡¹4c %MЇf ¬˜¦M«!’r L.H®ÈÃw͇IÏs–ˆPBCaliz‹å@’lÄIJ¸Ð ‡É£›Z‚[(-µÿÃÀTU «Àª¼ÝÀU ÍgýãÿË¿+üÌø_‚ÞÅ)Z{&2`P CVA og˜’2éÓyÇUÐé2í YC³:rú"Š-$ìLãB¤4ž‚øE‚YwN*ôzGö€¨|¿$üP*@É Ðî8`‰d™4Ÿ6'îZå™ðõœòáˆ#s0¸.»ÒÕ¥Gøõ(B:©¨¡Dí¸uÕÏ‚‹útÇï§>j6xœ,@k:2Lé1)ƒr\;˜«<¥)²@BèʳU°šŒÑ”8m5­”AÔ8C%xÔfD)5|Õ»ñ ‹‹Œìm·%OÀ©óJ¾iœJ7™¼Œ-’ä pÞñJ/€Ü5˜!†‘‡²I¥HN5TÄ¢XÀÉ*3ËFE€:iYR%×wÊ‚:ÞMܧ°.Ý ‹á8À–^xôà0Þä0l@©¢ùýÃÜ,Jãî­´t­±vÀÓíŽÉ¾ÎŽ´‘þmçŽå¹àƒ—‰Ö_T¹Ã¼ï©6B¶ ‘Âv£¥µ(ïäÝ_¼Ú@-) ;Ÿ|CÉÐc)„1># æMphÊ=ۉ𑩙† ÷@º6ÏÆ‘)AªÀe' £1B6µ¢­Ï3§À§´K×JüZ{qJÒÆ†œ6©QJ“é }ÐൡŠu:éG ð,0<Ñ&ß.ÃKt,Õ4e#›¤cá‘qKî÷/"!ü“U@hú¨´ø¤Q=§9p?<Õë{ˆJló9´áâÝGã¨OÆ.›MÍohj¥Mÿ;mu'@n )ñBô*öà êÎàA•“wÆìQ–š g,™Ž"JX}u|†’®¸³ÊÜ=½À´%ÊHGƒf…`!Ú–âë¹ æÜôýdoßí]é(²"ÓExBþû­a¨ ˜¬ÒÛÔ Ñ¬+©ØN¯œHæü§þ0·HŒ/,C‹¸e‡Ž|æå$o]*€r˜»)¨Xqf#ôÄÙM÷Ž!A ü¿Ú¨\™‹³Mìk~,ËdZ:œA«ØèÞf Úk§¥}Ö ÑTK‡Ä%zëH•ö#½xˆáæ9@ A‘Û2šÉZ³e#È<u’,ò>Z\<‰ ¨ã»ôvt´*œ¦sQê?\©Œ2#!¦hPcºznŠ ²¿ÕÛÙv’_içÉå4V„Ã[ sŸ€i$òH3Üö{¸4›_«Ý.¨Õ6ƒÇ°î”K£Û‡Ðd5Ð: ,0`'mþÆ–"+D{ЪÐ/73û²¹eëÔ[BÍÐ)ARÓǧ¨jZ´fµ5±…~Dý r º ç‹m[ò?h¢l3hR Àtç°w¹£K¢Ö8ª/Ü#‰IÔÃb¥‰‚yЏl7T¨xÍ&…’-öú†™œœãï/‹_8ó9¾* Œ™ÍÅP÷st-FÂ6=Þ!!;Ô-TºÙŠÈÂ#·pí¬„4r(e‡-5*‘¦7ж6ª/@9âPg‚ÙÓ* Ð2Ù4T¯*dˆÜ²qËp§$< ,QG ­BÑÇYÕ¨·Â¥¥;CtÏ'`gÂ*~n•þÒ‰ÿÄ"!1A Qa@`q€ÿÚ?ÿtEô¿­yͨOZ¬qWîÐ…@cÃñ±÷2‹ )Z.ÓDˆàΈ)›Ò$BbT€öB*êrÉ)N‘ÄC¡H:»{'ľPµÈe¹ÂÖÅ©Eù¡@‘F–Ä…¥ÁvsØú+(“\l7€uº“ýΊIm‚ Å|E¯¥¡ñ¢x]¸†ÞT7•AOÓ!y| Ð0·Ø I…bØ1Ä© P½ÛDÁ\˜]gb¸<ˆN(ˆ›Ô€¥]IE˜ÆKÝ}ÙlÐØNíÀM}%ãa¿Rœ&+Aý ÅR•ã ´£H”k Š„:d•ÊIƒ¾4ë!ddÅ]Ïȃ$¢±ÃvY4Ì9ÂŒ¤Jû ¸0z1#YŸÔÚ˜| êÊI­Là=fsgŽ(qV"ô$(N@‘\w€¥]좙ѹ"'ªm„DŒYQ%SbTà P3j4Gâ:úªv¥ ÚEÀV°qÝ Eu¥Ná€búR‘ºÂn( z2%ÝZÌ.‰º`c^–”k")Ž(a:+{Gm¯¡÷F ºÿÐ$pçò-@AV¿Uøk˜RJhŠ”@@¤e#räÚµXx(L,a‡:qEé.*f…pUM ”© 7+JÊlCŽWFÕpȱ¶.Qd¨^˜V6 hÑÄÌ´ï*H³n¨R’ Çæž*ÈÇžG˜2r*Nªïà ûÃ|IhÝÔ@TÐŽÉ ¨„<êB ʵ‰Pš ’ISòÐé@cbØÃ˜I)ÔøÓb•ÀàKÑÐÙé'(”p£‚ˆèâ0:U)CƒbŠœ­CC”§¶Tm%Â[*‰;4¨éƒ—âBnqÕ×ÐØAíŠ)Äóëa „º#ЃF'»Ô¸ ú~éc„ªF(Cšɵ¯V¦®®¤À=]á&l èÔ€¥J®È"PûÓ%Õ5äÍ¥+dDñ@,.B¤Ç/`ˆ{XÞ”Â'/¦ô6Ù|7ªC\Jøc1J“´¡÷ñh) yDÀºBêXR•Á$× XøG@.¢2Ô.p³-ÈQðE0•ŠÙBìÛ’–/’”f["ÀÜ"œ¨ºÓjL UßPÆ ÛBa\zð¥«4F-DæìÛ<é3ò]ÁÁ €øˆÏL÷?õÎ@»Q?µˆéˆ )¼´È+ ¤¦ ¡Ê‚ *Ý\@zfêH¸$Å g"2ð¨ŸÁ| ´®. »:O°¤BàÉ=|ŠM&(u¼É‰0ÔIzÿ?Lt€4ŽBÄa`ç9”sªÚÀD·´tQà†ƒŒ¤Ef0…ƒbqëô¸ìXMÂEKJÆ Ñ±‰F͇‡4‰t"}$rmhQœ` CÀC£G³RF±eó>ð3 ~) æ4Ø?Kè£ÿŠ~”೨„PÃj¨S©È  ß,Ž8ªÐ»?¶ÉßnäÀÁP‰Q)g¯‘µ$ ªt—èØ‚u9? œa*.8VFA‘ÙÔX˜«È&ElxŒÂTâ1­ÒèG£š8áð,‚ÒpVžh pÀkH“z qjµDÃéVðOÁ;„Ò„ !)ŽpLÂ*JªÔTBDz*‹î°W÷&£`²Ÿ†½mA@¢(XÉÿ1¨÷ªp@+I·¬|”Å,CJ0B±ë¢¦ê„ö«T@V”8  )<o€õø0nO€–Jx©ªT†%šU:kÁ¦¡Áé?ö+^`)’8Ø—ÞýXžÀÁ'…wZ44fµ‘‹ý¯**AòƒWP¾ªªÒ"T²Ô°]¥)sœ¨V—J¹4#À0Àâ–èr)QM¡,SëËQÐ1B 0€>H0‰?TÓJòÓàœ€*¹ãvÇìPx%C[ý°²Gëü3]@0"DSB.y”ªP(J N|TM¹Lˆ‚d4’G…b#)4„€„XÎGXO¬ h-Á¦p&Í˸> ¤Tªúð LÙI/¢ƒ>It?@ "D!wÿ‡¼÷€¶”;Ä”|Eðÿ°,Eî]P`ÏåôÇ Z(=õLIP"k,G¡"tv&Ã0e˜µSÕPXIÖ  ¥0‚µôˆ0!šŸÛ3@Åœbf’j!R àdæŸ|OÔTUXª®j¾p?ÁªeDÑí¸ÊR?ZCâßáDˆâ#ˆžFTØí)àþ/Ÿwú±¡ÕvKdö—£AƒcŠEEdާòXD3ÄðA+²‚ŒiôeÇñéºÀHû °_¡1"(£§ ¡*"Vƒ SS¦Ÿ b£Äc^ÜqÌèFg$Ζ„ ôÔQ2}‹µÙ4o1з|æôVóç2r€Í=R 0(DÓ3ôf ÎÉ™§B6w*,–K+IÆ5 š‡'aJ§|QÊÊÉæ˜“@x:R$¬VéZ:#8 ™þ*~ŠE´½h@à#u0ÌÂép©¸¿H'yA£!Mbµ-ÇB»ñŠ,^Yêíno"@¥9à& È…˜ ›ˆ£”²¤1 +`¢ôN ³»š"G ïèÈàÔ ¡@tcQ ÈInð; =`à„0LIRt&Ê*“Þå2}U@âRÃÓlX{™)º4h@Tž›,0ÃÌŠê{ºݰ/1"å‡Ф+œ7¬×ç`¥ªLZL²Ÿ¼s`&Ò£1$â‘es@‘Ò~f 䂳&PPðåÀÒÊîà‚Ž4^ÄÊRYFÝn G0Ä•ðMøÒõ äAl&D‡°Ð@˜ÿ¨ÚµÉÁ¡Táp].ü'{‰ °;ž„°‰iÂÑF1S#ê­E" Q#$h‚¡ø †R‚—³´Ö4$U1©ŸK³Rà ”ÂcïF‚æË+:k¶¶(‹So}.Æy‚Ë„ á¦à(>°…£S«aŽYlêÛœ¢±’f)%Ï”€ðÄl¡P†zSØ £‚ZJ O,Cˆ0K Jp„WvÅ ;7†°F»;ÓŒÊ ˆ´ÙÒl™a*hÝ_V×Á„Œ:œ`Ó3¢n¬Wý@’A5Nš`1×m0t¿ yìA»ZìcZƒXá>ì¡Ù[Q ‚¨U2—y€J ™ÎlfÊÍÕ€Ií¸‡PH`ã @Çd­< ‚'3&'@KEr§6ãBÓœw!,+¢†ÆéØ×è0H´Jíê®B™ HðK)±/è œ#¾Í+¶Y")hú"Ðãü)šŠ4NÙ\ˆ>!b1]Œz¼À…ÊV°0û…D@±ÆD › Ÿ€d-{Ô Š €,±”è-ÖTA8Õ% GHÝWD€­‘ÚgÒ "p)w!B¿0^9Z\"²È¥€a›J](e@tÉœÓuæWÞ˜Ú0PDÙ<ç‰eÈÐÈ!( U©@ì%Ä% €ZX„°‚)QAâö°ÎÌqîô™è…´ªE½H Ä©!   ¸C`3P(%Ñ-¬dȇ(P`#DÄÛ€R©jÛŠûE„™OURKM>E‰0`FeÆÀh, € (ÍT‰í4ùLÅFád­Å 0CÏí ݫԋ/:¡4¥X¢Ži¨€óì`Räf0Ï À¬Î™Ê4Ãyä‹ñ¾‰lưPÈv=_îÿÄ$!10A @PQ`ap€ÿÚ?ÿ(Üt½ÌtþÌÌÌÌÌÌÌÌÌÌÌÆ à»33333333333jð¶ ëâÌÌÌÌÌÌÌÌÌÌÌÖÁOý|X¼Åq¨Wö#q™È×ÞI?íS¤fs¨4­l Žf1ÇÚS˜êà“~̬¯xƒ¢ËÍc±žNH<ŠH*8A ~ºü¢åÀ®T,¾3¬!†’x” Äýˆ<}¬d™œÖý8XÈu4aÐPÇäèYKÝ!H•U,‡n}ðDQOŒ9jÅ1·÷Hʱ’.èdê2~‰òÒ&íKÚ^Û¸¯êä %YÒnþH·u1Ÿ›6D9ðϲ` r¼íp¡æ'±}Šÿ~î•c$]Ð:ÉÔdýcå¤(X-üo‹tôyz¨f2ggktñM»¾ l¿dˆ²ø°fÔäߪ±£â^šl•º¨Ç-G|\`Æ,lú-B xN6˜Tß7²Þïþ”Öeñ(VîyˆWôDRÿ­bmDì³=T\èbñ4Ž~ëI„î"xvóô8Eð&Ø—l˜jü©®mx³‚ðVÔÜ^Ë{¿úSX}—Ä¡[¹æ!_ÓP±‘ËŠë/Ÿ‡Òänãfz,±¢Ò6“Èa°ûÊæø¿éâÆBÅŒ"…‹nÄ;ž·a]¡ÑcË74aä¡Ýjh¢bl¢ÂÚE*r*"Òüv€Pí |§„E¦´ÝKÝÜê¡ÐGZH1ÌYEfðÊI¬Ø{¹G½K ÖMÌ€X4Æ]³C,üs†ÄûÞ¸U‡:>Xã Å…X¾ýD´KöåˆÝ< ú‹y ¾*KZº"´Jf»™œ` þr ¡bÆzƒûáÛ ¼" sb™•!„ò¡RE@RÖÞ lÅ4Àô S.ûž™`¸u¬ÑŠX!ªâ©ÒILHÙ›BÉéW÷h4˜§×5Ò!³*}t…2cÁ]²KÍl¯9IçJ»<д£ÎO!È*v´\c>H`Û›*ô;t™_r‹¸w àÙ'üíçýèhÆpàWB(X± É–®OP 8 ’%¶¼\¾×œá’»}Áà¹[¬¹¥X\<«^añAž@¨KÄ-çÊ]ãÝb^ñš1è¶!Mt6 êaT—æe{Ý\H«4£Õ_R¿B㫺 qÄ«E*±¬ÅUz‹"›ì]xÞŽ2LM†l‰¶ôAO=)õÓ$¯#櫟M!ÅÔ´gÀ¸jù?à ×™÷™Rëx;lˆ 2Ô27b{ã ÷ ³"+ˆ7Ô¨ ÅÀð™ PÕã‚K}éíE$Zß Ä3vê{ð$Øv¶ }í4 *˜c­ú0ÙΘ”^˜9Ô†è+=€Þ®gÄ>°“!z–™Åh±E8}çšr…ä(çÀbAv¼, TÍkå-8Îøm€Ü£ø% 7.VM4±M„×(ú'Šy”ºFÁQH5R ŽƒU0 •Nˆos*hÔ(]WêšîÓð¯mæCjÕצiSÄæ£Tcî öåIX¢ (w¢A™ƒXî°ÃçDÌ`+HÂáËY?WûÔT 6ÓBRöð+YÅíHÉŠ˸<‡U^ø.!ñ:¹¾W('øš/> öb+„ÙDÉr|;çÈýg Þ­Â);ü‹)NAUÉp ™Ù( FB*WN•}£‰ìVô’›±Ídy0Zu¨–Ñ͇õ‚-Ç^‚¯ Ò(Hݪ…&-*ˆ` § /{!Éu ÷•¦˜«yÁ„ƒ†Ê‡ŽJ1l¹YÑ×ñÌuNx–®!«1›|Þ#ž”r±I’QÄ]h¡bÆݳë€ä˜çÖ%cŒî>[Œ @{  X ¯e|)]Ì6¡#&µ_0Е@š(2Înæ .(Fezäa'GCOÃj§³@·„c”Õ´jv„¾þ %aîEGk´i—³üàœ1ïŠ.DoH‘ó ßwé›)0k2ÃÚ=—êfR"ÓÑ@žÏª¸£ðÝj,ðŽø†²t°R´K(ÂÖRÃ"ÞM‚B䆢Yw‰à.%ø©çØ<6P™šÎ+{xö\¶î½oNa¡M–¤<Ç:‘ÎÐY´Åƒ €„'óMÎ<öÈxžzIA5 ¹€5“¹jŒ<a±& ì‘ù*!;@Lʾ5Azðî+Ä!3¬s^KޤK‡Àƒ%p½(Ѳ)¿2õ 8 QXݘÀFhLÕP÷?8Ÿ6ÕbÚe½ú€»¨1ê‘+*›R$ô¸6¼6†Z…¾ôÚ׋óœ¬i­…Ê”‹ Q|Æj²aºlp„ÊZkïÀ#àUb]ìwªÌõÒÒ¯¯3 T©7t1‹‹Ùïݸ4b\ðCAu)Bf¡f(qcLêJ§SF I3Mܬ›.IüŸsntj3 ÚIOo]@–Ÿ.óæSH#šŽsü½Û†-I¥”ŒÅKÓ@‚&c+é¥hBç)Á‹¤Dàxþ•¹oðÈÜž(3Ðs/®yWÖ‚»ÖQ i¬ëz‘Juû¢ÃgíÆˆìXbó{e`´.¤0Ýý±¶ÈEs.ËÆ¯¡Ä @g·4ˆ2lޱ«ƒJXAí.»'«¾KVì|¡t×=ø›® º#-n(£k@¨DÚgÀ÷kŸÚpˆ ZÍÐ&öUÓ<Ù€!ñž’䢇4‘¨÷ÇÁ(X鬚l©R|HÙç7§7ÎÖyǰèÚØD´ë4dʼ2KEÅ„ÿ›v¿Ž@A‰KšåküXêH¡ûí²x·û£lq‡â+¨ñÄ@ *Ìiac³E–+¿$ä’Q@ZÙgñJC:¼zÄlJ˹bº¢É–ÜÙùó[mrê‚F ¤5ì˜éþ"Æ“Zâåü‹fFÍ8:!å¹LµY“5dºéã$ú( £kú\K#A §8=Ì1’‚¤°\UŒÁB19Ö WŠ£ •™ÇAÀJ r]i¦)¨Ý}Öç€ò` B3ˆ IÔzLˆ”ÄÚIN²PAé±n˜T¹í(î’€DâUú=5,¹NCÓÍŸ[kš`€•´WJKƒ7É¿Ąѭ¤cF³>㊆Úä.H›*AÍ+v2 öÍ6V°õᯡJ³{͸'ÀÓës™NŽÎ5€›T!Š$Yî§(ˆÐHx“GÖ P`Y3r䨠¸5¹tQ¨…!#YŒ€9¨f=¢£=JÉÊq„º¹iŠånÈæßA$¼ {¸y)B¡Ïk@ìÀ' Ä[ ðF?ÍÞ©ôÿ2…ŸÑþB¸¡¾²×°vôÀHQš"62Aº @d–ÿwâ*’’BºZüû¨×Aå t }ÅÝÅ€†€ðÂÀhæY<”û ­À“‚,¤Œq!i‰»ryùÒ£{”å¬a›á„´ ý†+à“Þ¿Eޱú¨»Ûë}«eX ZŸìÒ"ºEH €U‰Š ±š‰Y5ŒRf8°,åøòPà=Ø!¾’¬`*¾ní;}ʯæÎ'ëѵñmNâbTnÒýèÓWˆU)L à 6º©J êhW¬mX‰™…õv`u`½yGOcBÀ*ɤz TœG:T5‘.îÙ/êàÇ Q£[j³…£ˆ:FŠs(÷±O ŠÕlKêXR´´½B(fz)TBc_€!ì##ìGVŒsúgžT{Q‘¡>s"%Â%ì^i–eµmjdù;ë’V‘pK´4\œ°’ö[¬ì/ÔG»’ï„ @ƒ94θ;!Nµ}ƒ%{±±ÑE „a9¸+ÕPz@ÆËËÒ›O4ÜxШ–ç^¨dÏ&KpûV㸘þ<€"¹öËÖTa—¨Ó­õˆ¸(tÓߟ¼b¡`ÿÑH×ùp#ºèè0xØEŸç-ú¥™„iÍDKYžò=ï<ÁÉs­Š)+,–ÆxÌ€HæJwA²n¤9xh ˆð µ¢ì‹=ÂD’É’\7.îÔ¼r²«ñä6BN/U´%س£lAóÿé¼b2Y']ü 33}v·;I™±q:‹‘™J)_‚€Ð’8šjœ7˜àß®q÷€‘`*¼tƒ‘'Ã,hWèŸÈ Ô›tÅÜŒÁ½¨®vNÞBÍ€îÁø· ÚĘ‘uhŽÃäv…šÛ« ‘àëÂZ‘Y¨2áf  :‡¤†s¼l>-€BNibUZÓõ¸ɺøÉØÕ)¾˜h­C!M.)Ã9äÓÐy¡X:7–yøØœ‡>ŸHÛ':h58}Ü ‹jÉ(Ñäê¯ð †¯âÞ(.Jóö˰~Ðvfq`ëL &3h[–tÀ¥T‰¤Àò‰ÊGÈä»>©eÆ[ÛIÊ àJd>”kÈ;²¸¤=ÄŠHØ>ý‚Žœ‚¯Š-"N‘*É;+ÐŒÊf\ L`š•k˜‘¥Ù ¨Îc¦Š.d~²”DŠäëujr„ÂäŽDtY±fáäîRò;¥®‘ã·Io¿0Ëf¡eEé×ó{Œ¶bËV[IÔNЭhÑ¥Z]thaƒdÚˆ²šQ+ÕñU·¹¸dÕL‚3Ù\é.¹kCg#ÄoaHÑW!s¦Ðá°Ÿ×õ|dǃávÒ¦FÍ9‘àú‚‚Øa;$’É ÷b‹kÓEH0VFEj ~_©…6ï%LeÁÝHp¨=\ûë]:.D’¤?”‹dßGëˆxkŸ!í–ÌuÒB ì‹c€Ÿ²éY1IaqÆ mK]Øq'çtu«å5zÉLwŠb´HæxÇÁV)иXÅ¥E‚ìR¨Â•‹³Ò´ÂZ«È#ÓpLvZ)®§à•Ãè5“‘yCÙBÞŠˆŠ–U/ ˜Z%ôøs©kTó}„¦8Dv}!©é#&6TûQޤºâfÂ(¯â&¬¡(X™ƒ L¼ ~~„Ø`Ñ$Ù#3&ºÕ‹@Š-Ug ¼M Ì¡€“iðÕÜÂ4á"Qe)i«át>ep¦M ØÐ£&ÖîþðP…¤c[ 9“DÐ~½~s4ºWúêÍ}ýT´«U’@…ÝÕ³Ù-ä1ˆ+è4¼€@S PËJØÕ –+ð¡e-¡©&GŠ´Ðà*庖¡€-QŽËíR u襭!Ë[,™2Cʈ¸$,}`8}Ä'ð”ÂøÔÐ9[àéÿçDøì勪moÈ– 0¹• Ù µ¼D Å â¨r8jé-0tØÙ%‘gv«Õjë(£Eò™ŠçåV É”èªHR !«ÊÖ:0䯡Q=úä ˜"f—%b‘|HQâk Éj¾«yµ†z±æ¢HYçAeÇ,­Á¶×L®Ïš‰ôv[|j ÌÈ ¦ÃE;=À/´ß…CJ*÷AF,AÍ 7ófØO B`o650¯…ÕõCǰµ;DD=4w¨é—¯ØùÑÉ3 UÑ9@Ñ7š: H•Ã@U·':Þ°z…x@€ÿkX ‹EzCX>‰íÜ 77P LãX@‰C”\üÉDYDÄaaµvVVÅužò Úh†äªväåè¬Р ¦P‹¸j˜™À7°kZ± 4pTi»_Á@fBÖ»2j#f 43ÀM Óp?ßèuC•¥òÄM=y³P‡”Í‰Š´mkVOHÄNN|ß? ÆQ@Vû  Ò)R ðÈìJ@PcÉ>l:Y[.!޶sÝq­Èv€"…¦OÛ†àk+vÄEø$D¾qËFzdß¼qtì’<Ц:ÓY˜‰J46I?bSáË‚Fæë “WË.¢ï ™]«FCÂ}CˆV¯ÝåS¶±±4S Ä w.p¨)~Z†È~‚ƒe¨i½ìíÖ”ìÞ&=.äýð@sùó,7g>l¼š5R-DƒQ Çg"U­+@£TƒÃ@\}Nq(,=sD€’=xCèR † €£€W'öl)”‰·]2DîJÜb´œ5¤’Qb²›¸Á‚Œ1¼4˜ÛÑCŒßàÙQž0:D1r=ÚQ$h"}2ƒn¢£‘¥“ƒ!&Dâú¡ŽÅ#ý€0fKlo ƒªdI„þt@»&1®xÊÈÒ$£Ý„¥P6(ÒRImQiöU‚ˆÀˆk%2Õ)æŽÄíH˜Í…ÛË»Là¤%eãÐNÁì4£2“YÎËS  ›R$GF#˜’d” XyﻕY+ÇéF:€Jˆ9XxKÆRoqê² °úñCŠó‚&Iï°Aj@˜C$@8»ïÿü˜UÄæ–CyVBnëL4‹=AŒKF8;9y±¥ ª3ÑŽÊ= *} ¤E#ã¨8¢2òòD%œ=€yɉŠrwWŒ;@‚Ï rêS4\äO2óhÐÖuU¿ÉÇ»­{œå#”¨·L;Pr9ê8hí‹Ú„œˆÕØG>ÉÁÉ9pr)UžÛ-„ìÀ17LÛ„áÐAÉŠtZ¦—,FUóXá\Èfy+ᥫ–pÛùLÏGÏäÊšA)F W4è:²´?€HÐRÖÆoS)š-<Zûl,ì =:6!)ÈÈqµÏ¥b%P Xdï` Ö™ª`Þ-ëó€Hc¶!€@Æ>Y­ì!Ùñ- ˆáà1&›YI9—ðß¾— •Ë ˜=ÌÈ^åvíÅp›Zð4má#kó„ldbî6®4Ô7‡Cºf€M$€/Z„İÈ8À.OÄô†ÇÙHt:&D‰j‚jï)I Jä”v´xÚÒ<Ž86á˜ðMm Ñ8ñÃJ¶²¿¦3”~¨÷ @Ѿ¡„ŒBvÉ‹I±YV—2ÖHŒŠÐͪð±_ÏþÌ’S ­;a\(Éå¼Ëˆ%(¶B—8Q—MX‚å¸ÐÂFíLÉUB+÷ühêœ}(cD2t ±(2p»ûÄÑ”ƒnéñ”Z¡€“–ÕFçÆlüðœ7 £¯ ÀÑH¹tÒ¤uÛñ¹Ä€gû’ú‡È®Á³åŒi‹»蚀°óò© ?ú©l"…‹E 0Š,a,XÂ(X°Á¼AAAAAA À–„ có| ‚ ‚ ‚ ‚ ‚ •sŸÀ‘ÜÍÿ›" ‚ ‚ ‚ ‚ ‚'ÍŸ­‡œ½i`Ïྠ±–(jÁ?hºÁÌq.ÎêÞ=Â>h4Æ’¼†·Ž“9KYu0Ÿð®ÓrŒ¦S7èÏË%£WçtÅÞ¨âC÷4©£ÜæŒHkw¿5à`$£¬ÇZ€åCÙˆó§"ô§ôûKF¯Î鋽QćîiSG¹ÍÖï~kÀÀIGY;Ž´ʶ.Àƒ8ŇßFªç;Wì öfN4|„G¤µŠ=‚CS:ª}çJ4CÊ$äA‡“=R9¦*5ßä2ë¶ß®ù_J âÙ0²}P¼_ê’'Õo飙`Àò:‰7ÞQnG»](ésìÅâ¼áÓ …èYÐŒHçŒoÓå±ä,0<Ž¢M÷”[‘î×GŠ:\û1F¸‡o8@tÆaFzt#í;ˆ :i<5¥1ɯGä „Òµœѳob†XË2ÆX¡–2Å ±–(eŒ±C,eŠc,PË(ò`Õ¡Ò"ïßò ¯î³L±C`<Íú<Ÿëgü¼RÙè]ÁT’µcÀðÕ?®°%D¹u$ÁFœÃð«D GËò, ÐMƒöÚ‹J,Ú‹¥H %‹Æ®—‘Ò z|!(`ñúýºB‚p×Ím~t]§õ0RÎ×êˆbünÌh©ì/£åÛ¨zù•Ï…ÆÌöIz­>/‡•«»6~W£Ý4‘© ¶¶\QzáϘ®óúÖmŒ:®4‹Ú‹sÒÑ&¬ŒÀž$õN2B̃»XÓÅ9jDdù=6i7ÃÇ™Ge¾#X_AµAkÀèêë´iVQN³ñ0™«ÎñÞ¹÷ù¡™AR¦ðÓ—š1¿XÖؤ‰Ï*è0îÀG  ºÊÊK—•÷িp—†N%å?|§h°Ì=|Ƶ@š›[Ût pF5D”ÞT‰Ï̽?À3Z´¦beÏÉ1Ïåi²ËÊ 4jy±SÎ">>³€%ÿ{%1,à¼êªípÙ@¿1,`±9ì¤tòÇH!Ëß@óúöô”H˜$b/M¢Þ(’G"/F—´OI2ûÉæI^ÉaEqEZ’HÝ”åÜ×:å-Ÿ@-H*|˜;Ý*t錋ó§Q!Á’«'œÂ.t H²†)ÛÎZ.-&È‚,)>Jz‘˜ÑšÀüƒÞ™YŒvªãj[×4õÛ:±$‘zÏÇ5T"=sÆæ*kŒ"8‚ñÒ^YÔp5IŸ­«¶¹™­¡%¢ÚØBO<–l:}•!xbM¤b0'J»d]¡CEª2Å,¢iT/¸¿0Ð*¼ú…á|Õá!iÜ÷\•H\`ãuäÁbï[š˜Þ9D¹v¢Bô±ñô î #®BdF©GÂᯠÀ ‘1Êò fþ;§-'óöðÿéŽü-8ä—œ‰zKò§bÛðóóËH•:1•2&¤ÖL4²»B{²FÈôÈâÊÓ¸ð–ßΆ Ï¨Ÿ€½Q $Ý›¤HRTó vc´Šä„ë5t ëv9õˆ ìéFz:*þ¦ŽÂ9?¡óµý> À/‡d÷Öæ¬Âb G~YØoÆm0™SAH@-jœi CŸ:)‘‹¦OùhK0N¶©°â$9$[\h _fÀä ©P™‹z¼ý»=‡džyéXäÏl=kk&g›M}P2Až ÎÕáëM—(©sàÑ´$4dð~öŸ#K(ì¡Dަ,“áLw”#Å=RÔÄ^J7æ‡M.>䃓<¡>õ<©2—‰Çcu¾³)>9mþÖ‹a·åÌ%$ÐòwæéÒ!¢`D=0ÍIb÷BÇa˜,,n·¦Ü4›16TÝ$ue"hã%$LÿÄÖ¢‚”°°)…ZŠ>3ÑÎ'úà\šØéÅØa&ûpe— €ƒÉ&Þe- HþÈ\îCªHV")•Gi("„]÷ÝŒå»ÁåL…f‰["xƒÃÞ` €B(€Žô@¤iB!¬×q~<ßèI¹·7bÏ¢Ëi÷.d¹õŠÎ6ŠyYå|w‡‘˘Ã~ò K/I¾\ºue‰/ ^àƒ¬šL™D Fä(öT?ÀnvkMIL‹±&¢D:·î7H|O‹C—mH…šdÏ Ã#ûøÍ@†ç@íÅ ÇN¦VuûÐväÆë²ãŸž<¹|õ ºb†·Ì©Qi*¨´B!—¨P*å7ÞØ±F0ÊÊÓM6§ïæ¡à‹ùTÒhösÊÔm¹*SBB¬Ù÷tï? œ=Y¼*W/S…õÅ:$;^›hÑâáõÕJuábnØÁub:û”r@G×MÊt<‡wydH©$""x"Šn4äˆÊt9 .²Ûá…2k2 5ðî¨Í8ˆ Ø ¨-‚s8©Nk¸›I 纫̘áJQ®Y-Bá èAõÂÄ âÅ~Ïyb„*ÛÝq憮m h ydMRæ[šÎ"]òBA¢­+µƒ”³:2îF3>R°#*=š:ûº±Ç“íEñ ≦U­Wª“Z04Èi\3›¦âú¨ã)Ü0g~R»Ka˜#¨z9ÃSMƒ Ö9í2çOÄ`0Iã¢6jþ¨Û«#Ü+èÕÓ|h´ôÃ:æ2Û¶kýwÊ™Òà†IÕLš2‡}’íAcS䉔Z`h(2å Š a>‚ ÿÔlÀö¨ð ch"¾ûTe9±ääLY`–OZwÜW™eV&K™Ã¤FÊ$‚N[`¨ ß%1‚ÛŠt½Âó†i:u¨£aIbA¢ cBéÈXMRASPÌ4ö{, Æ^–â­©Ê%-^¾?v‡&Ugš§¤U 8…±Ê‹JPK@ìÁI ŒB—\3ÉpiÙWJ?pF“!Râ/Ujåt+2½NUúœ§aõÎ.¬DÞ‚R@JìØH¾éáSÙ+É]¦Ê¹º7"Œ‘£Nêu);ä%2ßtRs¯j`ÐÂÃó ý„ÂUoz‰WG$´e®±Å ›§ŠàÄùaÇË€hP«èè E–‡êæÑØ,…±›b *¡OÐ9óéZÇÓvѤ¸ D‘/"c|ˆ³saXkèÇ%רªŠN«XP¡­qÛEÚÔÕË…ÈT`§ˆ 2Ù±Ý(€ ró~ø€¡l=YFöë!¼ `$¼;ݳ¨Œ/QE#&SúG°@{¤Ø9éožS®6b¾Ô§4/@}â½ÍbÄt0ðn³ƒ¼Æ-_ŠâÒe\{UÖã †js´ú‹_AÖÌ^ŠTGÍt˜#‚'^´¼°Œ½½/_¸$`=I}T°YI@Puš1+r°Áà,LÛ…(êèÌ>³¾àªÚ+¾j:â: °Ö”àY2É^`UBX8‰ Ð;x'v±2Ú‡ué30‚„®Ë|•$ï0+iPžìÒz¥Š6¡GE¸ú¢­n@Ç´D¹ R˜T-ZÃ>QÜa¹’©}E‘éÔM¥„Èÿ¬ ¼5Ðõº U ‘I&8„ƃb3É&N-zá {1 !Ì]¸¬ux"˜Xˆ?«í¥ñåʲ¸ˆA+–¨¸M¢ØêZÕòfœ§ §˜€÷Gâ#^L/s É©+±­èzõÊ7—Xº– 2 ³¯M ]έ.6köé´GR…š¡³OÕŠ~±T‚èIÅ&4¬¸Cˆƒên™?d5Nx gñ Qe sk ^N츽µ²L#ë 7̤¡5 ²ðJ+ôøAǾ„UÂD. êÁ‘·m?0Ђ‰à d®T¿Ìž q+J$ZÃ…´}Ö£!Ö¨¿N'Ü׈µ¼Ÿ4œ3 7&D–FK]»º[¥¥*êý¥ii‚ÅJzÒ9Ò‡Lÿ-WK}¤‡r‚E˯Ý֬цöÈnë£twZÍyå/Á´X’b–òTNŒ ,;3>£=Ô!‹É5qu¦óˆ¦È`«~éŠÒô;̶"ÍðÜ"öüÁâÕIA×mXPŽ´Ä›I¤ÄìCâÑ så´Zh|Èp0òMÁ£Æ¨`:±’ˆ 5ïf4­g‹Eã—úÖ¥ðæÒñ€Û¤”jb Á‹”VÓÄ5°W¡`Wd,‘=šNO*¶UÛ©¸&YkÐîjKƒ§¤6ëqÝf˼«¡?š.8R$7þ‚Âj¢òú%Z8®B†XË2ÆX¡–2Å ±–(eŒ±C,eŠ Ë‚ølÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›0 "1=(af:TÆ*~Ù³fÍ›6lÙ³fÍ›6lÙ³fÍ›6е·Š¿Ù³fÍ›6lÙ³fÍ›6lÙ³fÏÇf͘ ‹ž¥ƒ?‚øÿÙ endstream endobj 763 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [194.453 289.932 205.221 302.551] /A << /S /GoTo /D (appendix.A) >> >> endobj 764 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [324.654 275.486 332.499 288.105] /A << /S /GoTo /D (figure.5) >> >> endobj 769 0 obj << /D [767 0 R /XYZ 33.853 921.043 null] >> endobj 569 0 obj << /D [767 0 R /XYZ 124.697 487.026 null] >> endobj 766 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F31 770 0 R /F25 604 0 R /F34 597 0 R >> /XObject << /Im5 765 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 776 0 obj << /Length 2848 /Filter /FlateDecode >> stream xÚ­YYÛÈ~Ÿ_!ì1¼öÁ là 6ÙØwz$jD„"µ<<Ö¿ÏWGó©ñÉ‹Ø]]]]U]gËÛ™z¿=—UÑýx¿=Ï1û}Y?ßoÃ4vm¹ë˦6•ÌËú>ô¾h ƒ»ûßÿ*ÇùnÇ|œ·Ùë'ÓI®¯g½»Ï#ç{$ú„ï=­½ÐOQÔ²2?àõÀiê}±ðÙ´}¹ƒÂ’Ÿ¾ÂÒ:$ @8HBơɋLÊZ¾ýQWÏmñ¥lÝW|5§sU<Ð,™†NÍAi–„¦{*ÓA™´Åy¨:H+SCŒôÂA©°tî\*×E‰ˆQ;qn»áWÏOv%¶DOàØéY>5L~_T2?4íÉôr8¦Ì,ÐL;k.¬!ˆœG–ëma:»$dÐG&ô{æÃš®*ÓóåÌXQAÂÄ"Œh1ÉœÊìHˆÿÐ,î]"æ¥H:·`OŠÌôrY‘XÉ%ùßù0"°ÀÐÛ°\‡ŽËJOÇýÍbíRè ¶Àpá~îF~dFúûǦ«±b®©çfa`‘?,E…ˆIä¼o›á,ײ?ÊÈÐ'vêâEæßÛù«{;SU¸¦–ƒ,rs06ãùÞÂ*Ó¡›!(6Hû¬žmenžûW¦[ïšVM¥…1r¼‰R½À†¢éÌiÒ¥Ó¤ìT‡öÞwfÖÁ¨]Ùõ¦Þs²£ƒY»ÀJß ;ºâãÈÂÌ@V®—Ý!J<¸@U5Lwhgm{hÍóitFZƒé ]QáÊ 86ohBþÁXKµØ£f¶/X×¶¯Pþš5¶‰hù$vüH(cưßëû§ ™ºažŽ$Ü‚@_|¨Ç³Õ˜b_Œ‰ö37Š“åùsãù¥=u`KmN¡ÅÎO‚ýƒÕÃk"ÖÖª¿ îO²Ó÷<ÏõÖâÍþ‚ÊÝÏÃbƒç&«Ä»caÚoh_“¶Èð)6Šöc;H¸Ø®É:yËk«kYmvAÉ¢Àçü-îN36-ú®Ç¥äÉ¢ÇÕ´âXÚóNø.š4lb¯ÎØ«;¨V’é’¿Ý—ØK—ÜO‘òå]üåhêgª‘¶YÍЮEjô$q6&Ø®jÎl£woï~¿£Èìm|´f¾£º #'e›ÝéîóoÞfEè õU¶yaÔÓ&D€¤mÕæÓÝ?å©åºÍ‹]ˆV®µl(+÷|Y­_r7Èò©ÐiËs/b±¦âÀ{M†Þê.Q EIºÒ^Þª=rÔkÞX†]u’B¹nÜž¥àüÐVW¾Mé~x»šQ‹"µP‚sêÜÕ:msGß¹ÀX9šk˜ŽëûÁÿtp7AÒƒ4C½@µÏ—˜ØÍtÉr½9Sƒ{Ö ûò+ó-,·Ï||·ùÌ*|³hÉ´\p…ÒÇbÛöR¨âÓoß¶A_µycCâÅ~@uËCÝO«ÍìÁ;}‡j¦†•v(‹CU](ßÈ+ÿæÜ;(µc3TJ¹yêMYËF£Ë ”^g(h9I®·¦eÅɉ^a(«¦”L8¦Ø @Þ•ÏC[ÜV"á&×Jä7žØùù"´ž©§@®ì쳈ƙاžœ*1¦ÞøzÅp#°ªì{ûV´/;s^.ò:鉯Üx-ÂRÉß!·REó¦BÔž²fäCr4Ê,#Ï%¿{ª6|).ˈ_0)öÚþª‹ ËŸ ÝÉêã-MèAéÛUæa%âÑ"ô@ù—L\Fˆ U[àŒŠ»›J%({Á1²öd甆Zá‚j²…¥šP @µ)¥ÜNwéÃÝè9)*!ihU·…S°ÛÚ’níffÙ:ß0Œ±AuI FoØ(&²3‚(é-óGÙeÉš²h½QkŽ´».¾”½yªCõd Ôùæ‹w¿"JV±«Ôy¼Sd+!ê9£Š`×%ˆ…¯ŽOäS¿ ©Ìi;\{—"è··Åy¯•éZ2ØJ™*ys/¶™k¦XÞrç˜uñµ—Ñô¨D“PAl=£}qÓ}«%¼ˆ[l3VúšÌ¢-‡Ý4SÊZÏÁ´ªJ^Ÿ‘$ÒmN‘èÆ›3G—ÝÐiØ_%Döö™»» <îÛËøH>ü†û¶ Twš?­çÓµ2°3õâ=}Õ㿞«¦”çkòù).„‘× Á†‘Rd¬ñN&›¡—IYS·ØI㱇IÉê+™qe9ð(—­à³X~þ¿NlåªÕ­Þ$Y“‘Njý­Ðwý4žþØ þlÍÌTó6 ^èÿ.²™?úÏV:s[Œ§¶8ÀhôcÐôÏf³¶²^éEþ û4€jÜøß*õ—² -…™1hÕ¹Wíˆ ]œÇz±GI•B '²”À¾…±?ûˈÀÜVâ{ Ü`ƒ8o\DD`Æ.!JÉ4?ACÁN…©;…&œùó×ú›^XS!yš;ÿwƒ4Zê+rŽe/½¦hŠöÝ.¤>I×Í(”¡‹¸ª¤¯™yNPC{0– ľ£¾~ó÷ÇúÊÒ“ç¹dE€»Á–>m/ù“ÐóÂhaܾ—@¦´ýöÍ™kÎÜ(9kÒ´«.8îxš8=~‡â3_¾£¬AÎ'!iÉ¢ü¤¶2NEá[ËHŒ].HåIGltø¾´åœ?0Ðhè›¶49–:o?]>máÛÒ „±Ž¦[V°AàqgƒMhdEˆ0^à ú/G†é endstream endobj 775 0 obj << /Type /Page /Contents 776 0 R /Resources 774 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R /Annots [ 771 0 R 772 0 R ] >> endobj 771 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [464.615 321.928 475.383 335.876] /A << /S /GoTo /D (appendix.A) >> >> endobj 772 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [198.791 293.7 206.636 306.32] /A << /S /GoTo /D (figure.6) >> >> endobj 777 0 obj << /D [775 0 R /XYZ 33.853 921.043 null] >> endobj 118 0 obj << /D [775 0 R /XYZ 68.868 798.142 null] >> endobj 122 0 obj << /D [775 0 R /XYZ 68.868 775.676 null] >> endobj 126 0 obj << /D [775 0 R /XYZ 68.868 164.726 null] >> endobj 774 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 780 0 obj << /Length 1609 /Filter /FlateDecode >> stream xÚ•]Û6ìý~…Ñ—9@ãZþv=´[¯¸èº5@ºbP91*[©íôvÿ~¤HùìÌW`w@L‘”Hñ[¡wôBïíMxõðzÂËŠ È / à -¯jo¾Ý„AžEf9æ0ݶ8(ÈPß&dè)oˆ‹Ü!_ܵ™÷«¹ùþÿvvÊ Ë*mg:½Þݼ¸¹'DP¦iäíj§x’gq»ƒ÷Ù¿mŽ—^m¶q˜ùÙËÍ6‰Rÿ-õí¢ºŠ‰¦fl'ÏÃÉŒ.óG´6çÍ6Ê}f¯ŒÖÀÈ«ûf<T÷M56¦“šÖgÙM¥Õ@Ë¿Â4¬{Ón¾ìÞ½¸ã¹ú‰(‚8MáÆVs”¨ïæÍnfѸòHØ[ÆEЦøü%ô@|®‰Ë»·¬-x$+q›ö>‚1­Á–Á2ä IuúçÒñÊÄyå‘Sn#¬†.„ÀSİ“ í,[gàòEáßu0à¨ziEòmo.g´p᫪ù+I%µ~ BmzæÖ…u³{mºƒ:|ÂCV¼V†A”EOxD!Ò°8Yë%þÿ³ûgÎ<…²éO±>Œ’2ˆ“µË§Ñür¸jôhXTPtÆ^6ÊÂ?Κ ¾½j€°ðéùg %á9Â…o† ßZ«QÂ=l­ƒ ’ù­0Ã7'æVM –ý‘5ê[qn^Fi;k©~>ëÆÚ À¢Bõa(UV4iR<æ:H# Œ›–™¿;ñI|1€z%Ã07€Ð'kÛ'Ì0 Õv˜4é ;…0ŽÂ®¹ŠÈƒjÉУmå…S’Àâ2¨ú‚Þ ƒ’#%¥ÿæãÃÇí<2숕Ç#i7c>b4 tšÃ-æƒÒ ‘ï©>¬( ù¬*—µX{!Œ­ý-(VZ"2`äØïÉ`†"8IÆø1¸ af÷•ô9A›d9“ è,Ì”I!Œ¸=upB³õV.a}ìZcNõü!Ñ"ÀiÐÍ X8ĪWSÀb'¬´‘Æ O÷ÂO›"¢^õªiH¸Õ¥Ôê G¾ ŠÈÔ¨’§‹Meþ?Š ÌWåÔ"þ3¡(ƒæÊ‘Lw ôU—Œ²8ˆ`Z\$¤Ý*"î‚"š7m\q›Œý‹mß{ȱ¯›4ñå^ó¥åbh1i€1’•1¥)R*7©Ðqu/-ŒÁŒEΦ=kåhÜc¨ œ¢ëÁq=Ô«þÊ⢆ÜЄǥäåbußkç°(¨àtjÚ 3Œê®›D²3RèÜ8°SlД³¥¦KÏèÛáG›Ü4,[…l©ÿ3q?«µ1ýß{´ó³çk¹‡Óßó¶„¶¥¼m}CgúVêßü"„¿ \åw±µ“Çåž(ŽOe+÷wóÿ©×Ùà<•~û6 ¶Üa¤õxê“΀—=X\Ä/)x£Ù16S|`Ø@°„Ç. ”Z¶nd5âm’UÃdDO6;ÔÐÉO´µ¬ ÄÓÄ0·ØSï$qýNò¶IR%<Ê–%_–ôî±­€‹蔘ËR¼¨Ìhç0€x”Z®ê†SÛ ˆ)Éq±’nö(kž¹S-Y¼ø¢( JE7*ƒ¢à¬Š³<`ÿœ§L· endstream endobj 779 0 obj << /Type /Page /Contents 780 0 R /Resources 778 0 R /MediaBox [0 0 595.276 841.89] /Parent 748 0 R >> endobj 773 0 obj << /Type /XObject /Subtype /Image /Width 586 /Height 387 /BitsPerComponent 8 /Length 92985 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿƒJ"ÿÄ  ÿÄÿÚ ÐíïOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þ@·ý?ħø@ „§ø@ „§ø@ „§ø@ „§ø@ „§øyßôÿŸá)þŸá)þŸá)þŸá)þŸá)þŸáåÕô@Kù3ý3üTfJFˆÿ2¨G!Ú±gtgúgøZJ^‘·¥›§Ñ§fF\¦ô)Èl×H~ÐÙ@ ÿ@ ÿ;¤GWØrœWê 2ü†Ùêi( ˆ ˆ   €gúgø  € %þ %ü€þ€þ×]EæüãsçèFߟ¿š¾ãÐkÏ•ª_è''Ïê½cyþúBuyïɤ¾^}þÑè;õo991=“þ²(e{¯ùØ24ð?Ð?À­vdm3F¿+|‡£“­,È–dUÓKåYu²RÑKÎ’zÐÚïÇÞö†eÛ.ô8ÞK+FÏôÏðD¿Ä¿?Ð?ÀW ¾€üýðXeãÚÍÑú’ÅÚ­–íÛ,ÊζÇ]•‡UúÅ…—òmk“ãùå}2nö¬í7§|2ˆŸèŸà¼óµ6p¯Á}ioíë?QÉb}¤—j§*Ù±­²nŠÅß¶)uœª+º/´[¹JÊ'¡Ÿ4^—{ÿ‘ƒwæ?Ð?À¥Üó.¶MªxûyB~ÏãndE$¬Ì#û–›[½hØÞ¡ìa“¦€—ø€—ògúgø ®r`ã€úëí«zoJȦïË203/SXëÂÏÆ¶jñù JÒ¼k˜·âfò¿™äî‹Ñt–h¶ôúWÄ™ÎÀ ÿ@ ÿBÌK,Yp\ÓÆæÚÒúgË—i¤Ÿi±UmÊùMqåÛµò¹1*ÅÍÁ¬yVïY¥ó¥1þ^½BúÇA¶óèŸèŸàt½“÷D@êoòÞó¿üNŠýÐzç)Åcäáô”|£2Ùp>òWF½]QäüýÏYóbî&Þþ.Çõ³þ8=+õ^ ¹yå‘/ñ/äÏôÏðJ@O©O.?Ô•âäÛç}›åUUJü§î=mÊû÷å™8™x÷¯ÆÇ]ûXîbܰ¯¢É9éô߇3œ€þ€þòϦÑ£žkö×Ë´åkúë6sqéu±òkJªÅ»lß1ífI‡OËë2qñïÓ&zCò}ëºùT7¾U3ý3ü"J[cg§ó‘k' ;Ùåø‹«21³,Þ¾ o1¬Ÿ3íœjI“•ö¶cýdÖ̪¦ü²5r‡±ã= )«Ñ~4ˆ ˆ   €! =ùáྲÃÈ£#MéuSfý™5¾ü³"õv(¶o™V¨­¸WîÜ“Ç?ùœ«ñ=É„zH_¤üP¼ÔÏôÏð-zbÓ³zóÌþÞ·^F'G™…fé››ƒfoËw,ÉÃû™‡&gVMÐWFYß~Ÿ¼ŒzÊë~{ØAÕø ÏôÏðó×±P¯Ë{Ïãîâ×ÈýE99*ÑnºlÉ¢ºîRë?,gVß–kÇ¢÷ʱëm7lÕ&-¿Ôpø«}„vÔPo÷¤üS2ÿó™Î@ ÿ@ ÿVÀ!V½gy(â~ ÉÆ»óœö[ÔÚRï—.âÖ™Vr1m—3º©~5x÷%Á¹ŸÆäÒÿO{½¤¿ê Fžgúgøi–æôLO1ݽ%æŸnYú¦<ë¹V(3êÕúÄûU»fù]»Õ·ýXÒbgñ|›dä½tyõéÕøn·ç¸”ˆ·Þ<]æ”Äÿìz÷Ïþ¾±nãs›ƒ÷&Ì»Y8ÙvÍU6>[.nüŠIo‹Íù&wm]/ÅŸ¹l¬^W Ì­ô…äûÐßIâ½c2ñ/ýͰ?Ð?Õ  lÙ5“éÏ ¼(¶:>Þ.Ñë{Ê­š?oy®·‘ZhíÍÞRý!ýÝ«y‘©gúgø£úcuÐl´~Þò).|Þ%.Ò ;Ê­4c#wÊhÝÝßRí¿»£G+Þi§{ˆI„b@ ÿ@ ÿ™Àn’ ¦šq;Â¥trå+£7w„®ŽÓ¼ƒF>ï2¶hÝ[Ä¥ú9óyŽ|ÞBš5›»4³´6 ["_â_çÖÀ ÿ@ ÿÏôÏð@ ÿ@ ÿ@Kü@Kù3ýä Éþ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@O÷‘)n%ý_Ñ%ý_Ñ%ý_Ñ%ý_Ñ%ý_Ñ%ý 'ûÉ–ç“ü€?Èü€?Èü€?Èü€?Èü€?Èü€ßòÿåÔñ3ý3ü/ñ/àÿþ¿ú¿ä@ÏôÏð ^Úö$' u[`ŽïÕŽÔÓÃ?w ›Ðn€"_â_À®¸Ž+Z‰Ót1 ]¡»Øl°"_â_Àu×bôqÊþö<ûávË@ö\Êî-×¢qŸˆý¹ÿ þD ÿ@ ÿügìÃäå8NƉý'$ˆ ˆ  ?˜ýhµÐ›:¿²¯"_â_ÀY¼?%Ìr£ »gôƒ¯¬v@ 7ÿ@7üˆþ€þ€—ø€—ðˆ ˆ €ßýßò gúgø"_â_À %þ %ü"ôÈŸèŸà \Ú8óZë wa>3ç“Iµ}çµ[¾W»G/AéB%›OdÞ‹ÑM&»:ý ÉÒ€@Kü@KøMbÎÜ¡.ÿþ¿ú¿ä@ÏôÊy{w‹±Ý®ìýFtñ¼÷¯Ë\c~*æ£Ñqy<*ðz…¯ÒJ°h¼¥læ[5¾ü×ï³êä×i f­·Ÿ{;ýOŽ9Úê<2Pœ!¹óH€—øv˜^£“«š§óÁù­W{úÍñ¼ÎwÙæô°™‘~'£ ?È:^—wCñ?†¤ŸønÐü²ïÙ1ñ¯ÄäZÛ²Ve„˜`ÿ þBZõ¦ºržýû¾º¹_/îÙ˜—>ãí誺ÕÇÅûŸ&º2.EòÕ5.±ŸbLÖk¹nF-‹w§ÔäXûb’HüÃùeìmß–îWArå>³Ð®‡ÆWƒÔì_AY¿«îñïUTYøõUx³Èñ¶OM9x´’škÆ“¬ë6©%+³t=·ÚÚ§k#Q)’¥å_žÚùüËMÇ“ùê|jÿ/æ _Øzè˜ ë½wgº}Ò4~£)š‘®7Uý/#×üžE´}]Ô˜óêÿeÉuýÈóva¾Î!è »¼Ìsü·­Î´ócØùÜ—¬€„},ŸY1{ÿåßÔFóËjúY1òdÝ£H©XÝê”ëÌ™0ä‰ù` ŠÊL$^ õ e€daERZ £®”PßÈär‡)c'4|M™ª £Å‚÷MÆjrRE+élí4å²Aœ™N£”Mˆ)šŸéÕÌ ^ï[qß¶œ“Ëf´é¥—-²¡»æè±%–|З%Yó&l”gÿ®§d›Q=ü‹khKJÎJO!Ç÷¯ÇÍ_K#>L­¡¤µÞqê,ŸÛ)¨n²¢=$´Tõ(B¬n²ª(Š«)MþÅHðS"²ôÙyꨱÍt›unñ`½ÓqÊ;,ÕÛ\Á¬L©N¾‚r1N^|¾Î§1 ›ùG”²ÑÍ)˜WIȱ uO×T¼À5 XÄéÚT½ñÇ÷¯ÇÍ_K#>L­­Û¿ ™Sš>Ã@ªš'P¨ `Ý_iÌ $@7I]A ‡¢C™TÀŧժ”©†Š÷¢Þ6‡ Ý7©¯Ü©ÖÆ:è¦CˆŠUJˆtÕÂdO¨%BcB‰(yu£GÞ"A@J©ò&¢I/ÖíÑU¿øþõü•*¥2&‚èM![öÇ¡ÌÒòi­¨/j8m…“î…ªä–U6Jϧ˜ó#JÉV¾n‰KÈÖ¶§T´2n͸jV½Ûnޔϛ5},Œù2®³d’šS˜PŠ2ÇSš@™)ÌéB:üæ.£ ÄJAJ9*²*ò¿áC˜Ê”Iì1¢c¡oq`½ÓqËŠ‚°¢‰=E<È¿q‘SN¡Ó6½]1 ¦éR˜%Ä>½b™D'MDùbÝókÊ[üzþL’r¬•©ó9|!D«d“«\B¡WY3ª1Ô2’‘:i® ‘N‰õô«E2ñº-ôÓÈgWú–ÿ*g$A«s%?Õô²0cäÊJ¥…£WQBªÁŒ²ˆœÆ<Ç.C¬é\©–útJ &o©cAU›'L‡ §TtË’KcÝ¿jR[î,ºn9B½ˆ­Å0 ™Öë¢sù&qõD5B‡.®I+‰×! ¥¢…[ eLdÈ%©±ÖÕþõð»Ü;>Âyö®ÞS†X'Öÿ„ÅB,bLÉë$º¡ôj&r Ž©ˆš‚œ©É¬„P…9æSTDÉ*¢(Š–½Ç;g\M³Npè¼3WÒÈÁ“,’· mŠBs¡«X’ª*$#£—)„À¢…Ð%/QS&H°º H6²Äê¬a2¦ÅJ¼œÛwÅ‚÷MÅé¸lë¢í/MS& r­È~åúcG(C˜"L$1£¤3PäPU‰¹Ê &28ÕAµ«§Þ¾_3hD±uÂ¥äpPV1NQ@ÇXè*^c ÆLÄç4²iTˆR˜™Ìd“'4$˜‚ÅPæŠféŸѶŽåðÍ_K#>Gê•iT[qê5H*Ý.êŸÔ¥©ˆ`!e sŽ•9ú¡ÉM?ý&/Ö Í4ñ«úlx°^é¸äS…×ÐsÁ*Bǫ̂)y ¡>A:È™J¡SêŸN™Ó˜ý‡ÒCÅŠh³u u!Ìãû×Á÷;C=,Y)D¢°RC!`b$p竤cýæ&0”©ýšt˜†ŸÝÒ9DäI¬_Ÿoéà !«éd`ÇɗʇõH¼Ó!2ÜÌpMb‰Jx ëHA}#ÌLúWNXA1X¢`ê"UDÒÓÂKbÌÔŠÖ Ý7¾lûª°"’qÔ/MBˆ&‘B'ÉPý:ze ¥uÖZSr9U$(E% ÂcBæS˜[ùËzRoª7UVÒáû×Ã*¦í¯" ‰‘/ÿ)4ò1~Íb)Ÿ™ÕU9œ¦äDLq"¢(ëÖºœÒšæ°§¬éÅŠl¬¢’–JV³#5},Œù2šjÓ5”`!‡IéXá̲ÿô›ê”ªšFX9›J⊄Ó0ñ̇PÝS‘U‡‘æƒêƒ>Öñ`½Óp9È™.ÒÊ!rŠ„‰\ Eº&M2Ës:!"Í÷,T#^¸LH& tКQ9]&P¨„±!®³ aY¼?zã)/ÏàÅÉZªÜ•5€T—˜8 SÌ'ÔÐ1Äü¹jæ§Ð‡œ† ½J €h,ÂsEà^I‚iKN ˜©Î}6¥N½ïŠEÊ»ž‘y1у&XW¤Ë2S© †2ê…Ž˜¦b•"”JPCYt¦tàuŸÈ2U !ô1UPÆM RˆšmL{§Ý4ÆÓ‹ÿ+#6Ö\2¶„µRA8cêb¥4‡µóèä*@ G!´®Q:CümK*¢ "%9Ìc (܉©ÖOÞ»®ê%ßjºßÛÛJ¢ ÄĺBEWêu”Ë$y>€T„‚(©­X"ÅH.ƒ €H  ¦P²²Ä’‡æœÁ̹Ô)O ³Tn+ ³Î w˜Ôù SA1ò:ô©ØšD†Oþߢ€S/ÈŸä s"°ôC¬p‰5à„Å7кS‚¦fNkծͶ¼X/tÜ›]Ä´\‹zºJm*¦ DE TúF\€"SLôuÄPK>fLL±L -Bh[˜¨b‰@ßX’q°êF«Yü?zìÖY´^³tÜ—%Cÿh˜9Õ7@åÎt•0’‚A…ËÔ_¨i`TO ÚVO¨S”Ë냕ýDÊœ‰—ý%Ë/6*(bôW4¸ŽŒd¼íUl¬Õô²0cå¹ÙöÖñš+ÑžÞÌ83&€Çd±·c˜ãk,hÛƒ3ÏmÌ¿=·2ãneÂÙ‚ˆã“4%Û“5ÊŽÃ4”)©YYin,ºn7“oe¸|vg cƒ2¶æ_˜c{0X of…Çd‘¶Ö[žÛP¸³:¶ÜËÆÜY¨66²æ¹3\‡Ùcƒ0pAh%ÏÇ÷® ŵ N« âÁ=Œí@Ûof q¹—Ûk/Œ°Àcƒ2¶öc–Û™~FÆÆTâ8ØË 72à!ìÀ@cs.RŽ72â̸qµ–Ûk-ã£4€Ù´ËEj›Ûr»š¾–F y ºo÷¯ÇÍ_K#<† Ý7û×ãæ¯¥‘ƒCî›ÇýëñóWÒÈÁ!‚÷Mãþõøù«éd1Ÿeã|ñ¾xß2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,É‹ªïrÛ‡ß|ñ¾xß=åï'ÇÍ_KK0cóÍ:öÔ“‘m¶´kj±ñ¹2å_s·"×U2‹G’ž’©Jð¼½äþ{ºä‘³í‹ò¤_¶Äí­«E™¾ì¹D•Mtø^^ò5ÝrHÙöÅyR/Ûb«S“¢Óê®IÓo[™+6Ò¶.·:­R¨^6"¡Ã5},iý,ÁÏ9ýb97ñÍ÷úëÍ2–R™LnIOj9Sש\slUFR³¸^^ò;œ™míšÊÔ¶RÒ».ª…À74ƒ³K­ÒíêmôÎÎÒjM— ËÞOæs“"­½½pORZÊ éPé#Q“uÐv'¬š¥‘Q¦Û—¥Æ¿B‹eIe­ÈÍ_KK0cóÔ-Ëz­;r’³òªP¨kKÔlûJ¯?Z¶­Ë‘)99:|· ËÞOçP„T”j Ý–9©;NÖDý‘eÕJB"p¼½äþeEIF P­Ùié*œ 5-qE:=!)š=§jÛªÏYÖN¥Ã5},iý,Á"ò÷“ãÞ^ò||Õô±§ô³<‹ËÞOy{ÉñóWÒÆŸÒÌò//y>=åï'ÇÍ_KK0cȼ½äø÷—¼Ÿ5},iý,Á"ò÷“ãÞ^ò||Õô±§ô³?ÛŒßÈLäPœ bœ¿‚ò÷“ãÞ^ò||Õô±§ô³>kÕ¥ßu¨¾²°Ò7÷•ÙåêíM¨§J.w’·]´É·<)Ó®•ÝYµØ×ÆœÛÒÐË‹ÁFªÊ×i5åï'ó^-ýÙ^qÿåï'ÇÍ_KK0cŠË#,:¥N«É¸nÝÊÛ»&VNTí‚V«rÀ%¹¥ÌÀ  ôsN`¤ZWM} ©R0ÚÎË…i%QÊ[òr†ÇdUåhÕºEÅNãy{Éù¯«˜Öu£¼óÎeÐÉZtµƒkåµh'WˉŸë$2*‰&ÞYùEdVQorŠdÕ›Ç#¯j…ÞÜ佡HoÞ+1È^ú¿( åͽ-ûö‹ò^^òV©#D¦Y—­ý£~,Õô±§ô³!ç»o+*Ô²òZÆž¶Ý×ΫrW&ª#¨«©Ñëª)¨ ÝUå“ÿAé\½0z#Ó!S*jKŸ«.'!s]]¬§š·o;ŠÇ«Idݺzä¬Ü¬ü´_ ¡-˜¼lË®â¸k^GÜvcˆG¾óBÈ©¿.mJ€%9Ê%ÖqæS¨&éu‘@@SÔ*À“ïSü—jœµÛ+¦÷l÷.ŽÇ¹mb6¥^à Ûé\ruj…¹¤Ý”[J.¹¹iœÍáZ­RíÚU~î­Tl{fb½7A1ŠBÛ×}¯v.×˱@—%ô:+“b\u5‘Fa- ‡kÓˆªJ$„ܤÔ6õ·µ'󿝥?¥˜‰3Z’¶&_Ç:n“vÎQj· ÅB®¡LªŸSÊ ©1¾ÓÇSý 1ô ‘Œ¸”ÊЬ €®*“îzV–]eSœ¦XúÙgæiºE¨y(®|¦]y®·"¹]®Ëe )Mt2Rä¬Ì&ë¸ä·Š ¦SýOò2K“¦‡5J¡H˜'Óú‰Ndù‘T*`XIQê@c¥Õ–¸ok¢íFÀzoöê^óÉ«Îr½b=¶5å'Y©Qj9£Â³E¥\Tů†Åºžm².ƒ|ÎßÝózÒi·hQmK?).[j’çߪ¸÷P×kCL¢ÜKz«Y|Šâwuõp_•)+й%+DºîFr¸èÞÕû‘²ÉßééÎWR*ÕÇžô¸±íkºV¡Glqêq$ãQjjúXÓúX¹” ß夿ÅXbcRª(·5Le:! RTú Í4ÖôÁÎ(ÅB¥:‹$±Œd¥ÎBÿ™ˆšj5“UUDÁMZÕ8¨k6â^Ö¾2ù£8.ÝR°zX­¦L‘ÖTú%#@ßÉ/CíL’òÄä™ ™@K¤#ý R`¤æ¨,¡B”NÆèôy‚œ”J_¨XDVRJ©;HhD¿ï5ÕmÜþ< ÅAît*U›®ñ«_ÊlíF1&‘Ĉ}£ÿjý#¢C PÊUúCÕO˜`€eP°Q?$ÀÊDÅBey zùºmJ¥åpm¦ò¡ÌVNÙ¿n«Rºã¼7Åýg´þ–[àFÖ)&¬ÒQÆ`Â!55̆!C¬Nº&øÁ0’`C3Ž“u› d ‰,b2-ŠH/E3˜ó*‚ŠÂq2ªÊ‰À皨U­™t&A2„Hògˆ•1¦,°™3’*ˆQé™#XWIV:«•%0"tuÄH }KË ˜U=J¢p•é¨*Në, …2àîåˆ}I!Q^Z—W¦Q9:(ËêRY$ʲÊØeô s—BÄCT¼Ê`ZU"‚‚!LàqQCªb K”̧3g2‚Ye™³á´þ–5V ï|ЏâôÓÓvyÊMº½"¡qÙèþ8cÃÔ¦;=Š –?={{ôÞÀ…1õï9À=â¸cÛÜØ¯Yqñì†<½‚cc£Î0LxyI ãÃÒAu{õ1ÙéVdqééY]¸½E’¤³78»Ã†6d¨€a¢Ýá¢çù¨Ù²Ã aº‹&l6™<+†‹/†³L3Y8.LM†óG)0âi3Ì Žh6*¡ ÑS P£‡ ôO‡s„°ÝtŒl3Xñ}²UËQÖOôÌ8ôøŠs{zãÛÜTSLJÀ‹!/r íÝð2©c›æ†>½Ê(|xzT&ÞŸ"€c»ÚCŽ?½ª<{|ª¸ð÷(scóÔsŸ•C¹rÅJè÷ëã»ÞyuqÉéQIÌu{IÈjÜ+€ÓúYƒEåï'Ǽ½äøù«écOéf y—¼Ÿò÷“ãæ¯¥?¥˜1ä^^ò|{ËÞOš¾–4þ–`Ç‘y{Éñï/y>>júXÓúYƒEåï'Ǽ½äøù«écOéfÝ–µ¯Øk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈuk.’[Õk#z­doU¬êµ‘½V²7ªÖFõZÈÞ«YÕk#z­doU¬êµ‘½V²7ªÖFõZÈÞ«YÕk#z­doU¬êµ‘½V²7ªÖFõZÈ–y¬»÷&û°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘—W½—r¶Í?¥›\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã¼od¨óݧk#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈí;Y§k#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈí;Y§k#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈ­cÃ/_šÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFר””••ÿÄ= !"#1$3A 2Q%40@Bq‘5CU`abp€’ÿÚ?ÿÎ>^ùÓ}UÓñ~Äe[…Š6ª³Ò5AJ}‹mŠ¥6MeÆx˜áíŸä¯J·ô–âg!T¶ïv×ÇXjq¬¶÷oqÄ8ÈB8´Ÿ(À“=õ“ò+|ƒ$ìmPqpÀ ^ØÞ鄈€BågÊÃSÕá~Ktp´’ûYŽAj£ˆÎµFÈ[QMH€sf ÚÈÒ&KÞS"©ôðÿ&:Qd¡yÎÁ&÷«F¿—d£iígÃ&L˜§°f5˜ò_¤M“ÃrËÑ ®;Âê·1'£™b2r6E¢¶N=‘ÈÐ@9S:*<•é‰ d3$b©–%€êä‘:ƒh› ò}f*ZÕ’ÎÆ>þè ~Qôb•u»Ô%h2M‡YÊ]”*Ü[HÍ@Ù`Á¬Js ´—É2ƒ`«¨1_DÌäq\ è¥`”,¡ðA1¶±±pÞ3˜A¤ÄÄ~5êÚ¶pºµße…;D£iLÿh|8e°pù9-F?ÐÙˆ‰1JW€ÄãYõ‚ûLO„ô¯Q?N<5í$Œ`˜™HªtfÖ7`‰{d ¤wL»¦#Çð—R~ø{c³¼„EzDŒÈG öÉŒ»Û¬nÓÀt·Q2dW†¾É=‚=b~Ä;uÞzï Á¤Äë¤Äø>•ê5Ì ar0S#Y„s';C@’Ó¤zÈœÀZOçGv*Úqo¡hy5-‘!¹Qº$½ºÇ¦¾šëãøc¨»’¨XL˜Xi’›Mê‘ ›ˆ¥€"0±Yë3?qÛý^Ÿî^VØ{º:ŒÙåJçU ¿L–}MU,:Ý{ jk'u1³jißaÚiFÉ-êÃ"Á%5µ†š˜Q!zÝr‰³2šJ¬ :hŠ—T dhe°À1C¬#:Z.|ëï$w{ŠÉRT|1n%VE0ëN®¹Ï¶N ¼l[uä¼[—[³^Ø7¸Y…k’6U SÔÛ*2ߢܲ{€†kƒ+p.ã]óTMV…šõ‰¾¨”ÆÆ˜²á-xÌŽÅ·;Rl0·w °˜á±²·!Tdª-gƒ!ZAš€#d:`œ±cc雿MÐÂ)ÝW´$ãÃz”CN¬LòHËÙYí…h.‹ëï8[YwVÀ“J„µWÜÔK“o°ƒ:¦‚BÙ/[Z¨Ol'1ã>ì“ó9f9£#ÜHY‡­Š`Ê T°•¸E  X.øàwk>¿Éå=[¡ÑôrÍ{®Ü'ãè"ת“®YKˈ¯¹Ã”§¹»hê-0ý¢½ ¡ 1îm’7+.¢×JžJÇe´š¤ñ%;f‡oe–›V;Š[,Úkl™”× ò%crÊÕuñE[xbë,,íb¾Æ"«MœðQo9XIXã®P£'Éņ¦½&V¶á°sÈ,«q©ò‚ZÀå"2\0ç†ÊÕB«+Ó»!fÍ„Í)­\±«¬jlÕ7)‰5»q:Jt)ÒÂÂj^î );ÕŽ_º¤ë‘¯¹‰®ú‚0Cc·ršÖ)E eªáK“fŒi@—ÜJZ€ ;‘rAD ¦5XéaÌÁXÕmf@q5¹›©;5Tã‘?Ò…wE§ƒF·®Yb¼ÇÀEŽdY…/åk™nBc«™+±gaMv—ÈG5ž$qÀÊUKµÙ«^%²ª¯NãÖtþA2#3(‰"")ÐDF=d¦}"#ÖgÒ<}½'Òcï*à3—ÛTðù+UÐ*7:½+ X ÷ð”.ck8Ïdý‹léã#Ñ9ÊΈ¡Ìå*MZ–;ÑÁe*÷Ö¬çªeÉ®³ùÿMÚ Wì`ø©åÿXÞÿO¹®úë|¢¡‘ÚkR¨¶ä™ü‰d6B +ŽÆX•-ª#.”ê`G8´®“«N X„šR%ëY&vý÷ ÈûÆd}|ezw;„6/-‰½FRJ“ëœ( ëåHKâ%;ؽHC“v^žÒÓù¼ _LªêµYbÉ3Zí<ªÙÅ›¦šg!ÔðÕ¾«öCe¿ce¯°†iTÊÕ{l&U›Ö](à9›J­ÁñÕÝ]²ÞÞœDÂM¯êÛQw©³–FÍëb̶2ZEæ÷0$0;GhŽÑÓHü|³ ˆMy´Á>ÚëW^Þ(’ë.l÷щ¯f,KEÕÖ!»D²–ªE 9+lYš\–®Î³XE¬¢‰ ïl1vˆê,” uV-Îlm–Ï BjC Uí òR‘IBÜBø­š,ÃbPŸHªŠÖÅÜÕBs"И您 E$B­§.àÇ9©V­5d‚ŽÌ4&ÚË.Y¹Q Õ1ðE2x!DN‡n[kY°„²Ã—Ç•6½‡®ÃDdT SdÈ9¯WB´<ŽÒ¦E BݽcܪªÕb¤¥nà;MØ¥z¨F,š–þ@)S-•¥2µW%ï‹Uv4Æ™ØçOkñ,…´«Í¨ Ô|q˜ˆM}ÉIؘ`+œ”–ÑšÑT%”¤­Û””kÌ^\¨Cg:üÊÇc±ýG3AöšY u²—f± jÚ¾<å^©:²Ä„VrG#¤°Ø%·ð­VÍת­:ï·iű5«%{KIªJ„˜ÂÒ&t™Ò&|t?•YÖð™ì½° eþaF ÛoSª×jºÍÉßÛˆ­„m=êjÖ–~¡mž‡é iLáñ›ÖÖ8ÙeU\v®Y²çäk,ÃzÉ ZÙ&òì:«íÄ@¼Uì–„ö¯*õV4V³Q€Ít)ÂÄE*Mq÷1º© T¥Ö•“^d¸e0Hl¶Ò€3|ÿ76Ma\cGŽ(!®RÒ¸¯µ² AÂ[[J Œ’YÉåʰ™YÝ!m§ß5bå­ƒT¦lL§çŒ‰ Z"l$$Ÿ_ê•"°‰Dº»I"Èî+ÕBcº¤@‘B®eaê³?©»Ã”Œ¥Rï©°PlÆ“«Ù¡#&ò6k¿†ü,Ý ®+Z!iú¤×%ýjnS˾–»‹m¢ÐKÑu…ÝSZè\ç½ù•-+ º¨UŸ ™Mq¬µÎšíW˜^]Ùéw²ý8C0_åXË~Œ‡Vq‘µ†•„²ÉŒ¤,„%‹ßüžKÚE®™µE«¾ÞÇ/¾ÆÞ6eeÙŒp±G±ªm0m‘YDÊ9d‚_A¦°ÃTêÍ@´çt(„ò6;;$ªý­‚]¶A°Fµ̓½£Æc;ÜÑ)“!hz»›¤…ŠeŽÕ\/ï¶"Ì5ˆjTòÑŽ²S3+;“Yã^ö§iSƒª[@J¤+¸Ì_Q5„I{·@6;Q¹qc·ŸzHlJÛ,<Å7ÃWHCpF»«“N8_½µÃ‹bš0h‰ejýÖYD=­Ö›WlÊÇbÆ…u\î4…Ç$«(ŠK„vq'6 Ó"'Ó_^ì;ÉMx µâ;2®/Z,¼øk8X²íá¥É˜)Í}–¸K$dâå`&º¿=I·bùØ‚²•´_ $.­»«ôþ)êiÿ7¿¹f¸T‰÷É¢¡HãfâXJ€Ár"q¾ gñèÕòt§O¾­kN¨ä:Úñ÷mŽAÜ( Ä2W#e{ûa¢¨²WdUmKJjv²…2v„6U« œTlùì.yÜ×Á$ÂÙbžµˆƒ°Ù\mØà`8â­ÖvíÈ*9E¢LGz ¨è6ÃDÀœk­¦Ä ¤8Œ– †h ÙZÙúæ MkZxŽâ$y²6Wd´…Š™¼\’ƒ„"6·û©ò@¹or*L\ŠÞô…%UiˆÌ’p–q .Ù.±,ìËÓ,%r2,[pµ’<Ž`%]Òª`¸Ž³À›.t¶âTËd\†vMFñ¨4Ðà:•+¹°CôQŒ¦D¬©e*á ÀqîlXÕ1^ãu[Y[`•F v¶¤ãµ#"3:ã.W»‹Î[©Kl½Î[ñUJ ±`µÕ®¶=AR¯íš«€ß^ylI%«g9‹ñèÆz—f—tU|Ø``â~£Ä¥œ²VQ#Ä­š÷-’]yi飗~À]Fž^^öUßUulêVe57¡åQ -JL5®›@dJ ²û[Í‹k¶…Ýüe`—y‚ÏËUh%FUXëÀ.Lá¦Ç…ð?(Yg)Jæ'ò«UÒ.YS‰!dYZÚ5˜®áÃa>bXãèÜÕ% »BÖÙ«Lé×&d`ÖÊÂ`×ËmiŽÞvbâF$¥$- ³“ÉéßÑÊä¢p(É4ëø•n òa•ì…ISê©c5òpí EòȆτª'´vöðÍÀÝDƒ¥•̸bkÈ#%R äb™,\.°ûÊà3‚TºÖ$ᘪ.¯SnõW›4t‹‘Û¥°N‹³R§K'>ÅAÈ:½n+ŠH ãJì|ܦêˆ.Gâ_(]qs™ÇURlc'˜÷M©˜• ¾à¢Âau¦ ØvDµvÝš—§‹EÄô•w¯Œµ\øª»¢šv‘ sÓEîã¨m¶×,UH64¢DV©°¤ž•%Ð’–i\R1|AKЖ·‰L$¬\¦õJ˜0„EuÙyS±hÚwB¹8gÔamw!½Ô!j½j%Çq6-V6=Gqü*ƒ¦µ¥6á…!fZ§6BPIñÖ[¿ŠúŠ r¢Œ½á–±úmyƼ®64·é¾7°ä`¶î?“¥0Ôð˜$Ó¦ýjŒ.ý6ß8µ°ÝŽÇÚ±q‘Üv)Ç®ú­P± µ wˆçV° {!©mwà“kŠTRÜÚ†.®*Ð*\­Uj”:µ¦®dbݱ.PBý«MT6"¨°¬­²Îk+šÒ+×î“6©7{ÙÅf·X+›*˜9‚É.³kXÙe‹·^\á·bÓk\íH„ZÍ“7¸$¢ ÷ëÌv"W`âÍ‰îÆ¨ŽåUÒ\/ZëP±eՆʔöí Ì|Êy‹ÃgM¡kd,JJZ®ÑrZ_ÒWYZ¶Š›T_ÈTŽÉ.KyKI÷8ÄÅr4RVX„׎ÚÃk±¶•K·Yw%\MvZ£݆ŸÏèÝ›×Ô;¾»˜ÞH#œÙ9ª³U~I°É8JÙb±-Dbcöô™& ¥ÑÍb.¹Ì®ª™:6Zô­mj‹JiµJh5LbÄdÀ¶DLŒáŽšÃz­×e±ù2]Š6²gm{$Ë6ëö“Vº•a¥Û2%5ÙhU¡m×EËX¹J¥_™Cå³YÄ·ÜáFä^Uj®'RŽæl(i‘ÔžK ™_sÚ€”¸Ü&* ]¦š¶Ø©¬ÊÆËI€HQ‘H¸È—¸‰f¦„Kb N©¶FýbY V,Øæ)Ž2IÙ(´™27q]qÆq:±b { ‹\²'˜lµôxÓQQS‚ê”Yc‰ÕV—E®0, ) UbìL€½" ²°ivͬë,i|ÆU×÷ŽúûA²¸æ0º­jÔV$+Å ïHl;W *Ü@ŠÁKtºšÏ’æò2z­²øä JžVÅ3_´Ä$4|Jû•$÷µô)ÓªåX–Ø ÚÎÊðe¸¼í'vØQÖ;×쵓fƒ’ëVS‹²P0¹TÁxöHÁG楀¿hÈ^³‘´ôÞ¨߆¯ÂÝ;¶Åñ&ŒŽùøêÀDûKxo¥;@úSg L¢ôTmœ·q–pÒt¨Ð+6MЬUx#¡Ùökœ„+‰$驯*úœ–@ŽÍáÅ Åá¯b€U[¢›Ü)Ûá±.˜)`˜‘ +5RðÑ0(.y‹ †ªË*{HªåÔD²³«Ã\¦†pLIXµ’«(áv¢Ð¯¹çPÕµÙ8AUæâ(½e•ÞÅÈØ& P,®]ºågšV‰°®Æès—j”*Ã+×BEª¤ÅÛ%fܾ£OlÍtFù%ñœâ !2Lc9Bï¨'š“l©/§ HjIÙ\«•u(œràU›¢ ñ#8؉](’ˆp±„ÍæYÙ’°"øt.É®PÐ5›W g­D*†¼Ûe4­‚.6Aå…^Ø=hT²d“)5Šäª¤f «5Œ¾#"½‰DbFÑ±Ž ’LÛˆh±¥e J…êCI­qÔT Dä ¿qظëMXx/O}eI'tÖ£µv;c­V7®vH1 [å_›xuN'ŸÇÕ?«ó!·nVDºØÐ©NV·¾õÍz룭EÚlWŽ[¶`JÜm³3%33333333¬ÌÏÞfyŸÞölÔl:¥‡ÕpëÚíb[Q"Q Y F£3¤úÄÌO§âþ±?\Ìj%¼gêwuãï‰æô.n^1þ˜ˆñüIÔ[·ý{5¿×ßõK۽ð½ÜúûƒÛ?Ü}'ÓÁu|ãiæòä>ïid®”{÷oô—iîÞ[¿¾â×ï>'¨så¦ìæbt-ñ®Nìè~žèÕÞ…é¿HñüAž×_­åõÓM~¥s]?¶¼ßoÔD ìЉoÜ#”½\‘0Íb¤ï‰˜=ª&bu×óùÛ#!c5–xHívFãFGlÙqDŽÑÓí¶">ÑË_5˜¨ˆ­S-’«XOk×½i(hq¾¶Šàôc#tºúû§_âüÄG×2úDÉD}Jî‘3®³Íé3¬ë?¾³â:‹¨#HŒîf"‚"2wc@2ƒ0ŸÐLâ‡ìE3ë'¨sä"œÌ‡¨ äîÈ„í€öÄ»Aö‡§ü#öˆðAŸ_éæòë÷Aû2WGÞ?côt{£ö/¼x¢êþŒîd}4öäîǦ³:z?í©ÿÎfyð=GÔ DCžÌ‰m2¥è"ÒzÃõ(ÞDZOüE%÷™ñ=CŸÑ9ÌÄÁÌÉÄä®Îù‘ ™/›Ý2A3:ê$Cö™ñnýëäz廄±Y[°ë±’“‘ qœˆÉ””ÀéS%÷ŸÄs™ ‘ Ëå€a#¶2 Ú 3 Ô@GÚ#D¤Fž=œ\h¼ÎUq·f‘¶1³YšC£Û©íûk3ýçÄçó³¬Îk-;¦dµÉ\Ó?yŸ›Ög÷™ûø ÏÉo.$Q0D9+‘%3%0íf ffb~ó3¯ßÇñ{ÿËú ý¥súdù$[úežù¶ÿwß×Äç3S&S˜ÊI2bY3·©ÌN蓞]J`¦J&uõõûøŽ Ïôæòãûúd®G¯·û;ÿ`ùí?ˆ3Û`~·—ÛÇõ+›`=}‘Ú@{§ÛöõŸO_žÎÀk,A9’12í4ˆ2ˆþÐE§Þ|}{9¨—Ör»‚`‚~£oQ(×BæÖ&5&=cYðyœÃÖÌ®HÁ‰:̽h€ë°Å¬AŒ¶`’ưÕ1 F"D2QÿЋØû˜Çö·uŸÄ‡ñžÝÜ6R~Ù(щ`0}uУX‰ñò׫²`cÅò<¼v­8”qéîôÞÊò_`^â?f›„ q>Fäfs1N Šk•eÐßa²â°'JNÒê(lªkÈÀ*_2Ñ${}ßàïTš†S4æÇ+…õa`Ô +]‘$…¼ rOx,·Öâ(7”/ÆGɼõ,e«µ®VÊÚEÆ!8ú °L·QSwRÇ ¾Å¯åå|š,ýwÊ…™^Î`Å'—Æ[Nj͋LØ^Íæ™Ñ÷´é3±¬zÿ³ÇÕ­mæ»WÓXÕ¶ñ{ÖæƒŠìjjÀ  ¡–˜"…™D‘Ä”þÓþãB“27jPI¡m¹aU–Ë. õÄÜp.s4†³‘}¼cü·ê{™‹‡Qm.Ѧ·^°§qîŠw‰cMæÚòvêo°”Ø®²d8GIœG“XÜfZØ\ÌTÍÔ}FT­FqÁ6_õNe êY v¶_‡¢uˆ5*JÊú¢ðÝ<»ÅK–"åú‡\­/¿d ¶ €ëXï C"WÝ…„b;"‘0™]iÖËŒ^„¬wY¥Ž’`Öxè45ý¾ÚþÚÆšÿÓXÿ¬~ÎŒÎåòvpô—Lò5¨×¿(œ•¦×e)Û‡•2wô±‹;À"ñ|­©5Âü—êœ5ÏÅ<+æŠ}Ñ‹lÔ\×–Y@¤Y`Á†ÇWáZâÐð“à8MfY/.zw-Œ¯‹F<±õkÝMÚkTäÚ nC2“Tˆ öÙUnÇFE‰–À¾²’0Æø[ЦÛ6†x1gRUWÉUÿ,®á„UÎÉ>U°$gFJö*³]áÞLô±“ÖØº‚Ë6æCj«È ‘UÅ×§ ¼|yx[6ĬØ:â`꡽LG—½¬»sÁÕ³YË­U” 8¤*UbÊ«4MÔ¬hjC™d¸ýϲºÁøê(0“O¨maS’úçÔ?ʱUTñ`³3ž°×»ŠFiºÂ§z¤Då:Þ/¥ëÙ±„χP÷òvÈf¬Hb©íJ"™=ëµ.†HIqêÀb$—\ˆ«òÏl› ãNöñb få¬ÈÁµl$qS6T°ô-ê´ sQÉÃ`@äEÊå³±Ñ`{f7 O§‰ТFtÒbbv˜Á úþÄ33ö‘˜˜ôŸ [ÀR€ÚÖ˜­kXɱŒ9’#2˜‰’™ˆˆ×ñ¶+Õ+/$$×}¸æÑm…Q6m—cH¢Ú’3ªeÌP„þŸoùÿo GޏúLuK‚'Q´›µ¨‰ê›UÌÒáд’YÌn‰¼OòùAÓŠ¹O'o+„«f»æ“±WíÑEÂ"ͤ¾Q an¾÷œUXk€Ìú/UQe*娣hÆâ_$É0Ö+¯"7Emc1f7“†‰£w,qÔpÜQ A1ç¤ñ‡õ—…ãž¡ˆá úزµœ´Bœ5ò1i1a³T’FkÌAwPQ $ØA³`W‡Åš°ÈaGmËaW¥åÝ[лuCUë‘…™ØX[éìÅÐÂXÅUn!~úé Ìjë#x)V[NkO`ÞU…²Œœ÷5Ñ,P–Þ¢òϦ2˜z'‹¨8c«‡‰¢êm¬óÊ\qÌ©W0Q.zQù‹LçZUe²"•NÖt…»Cg U‘¬²‰½’—R:˜úö,¹5Û®ò`5Šõ!}A9¦¿“=P6W?RÅ×â't ÈVm}Ç\§’ri˜˜šZf0UÌbm}–ŠbC„ªr¯ƒºvâ¯y>U¹f3Ä®ÜOÎ.’!¶ao!Y¶9¥]½K;† …)®ûeYuâFWZ¢A@d`¶xwœ]ðõï ¥k¯Ã5ž Z«§á•¹ æÒD FõTÁyÅÒ%7ýY ´–ŒWÜ‚{Yg“’Ý‘¨6u1ª Ž˜&褉B‰žlôQV°@èP›Jiß}‡:Äk5Âl+µ¯]U$±ûZ¢…'äC<ÖòøÊÝd‡mj :⌃àŽæoU÷À†6 M´d%ÊRä –mQ;Í®’'wëµk›IMFãÚaR)Å®ÜÔÀZR+`ÞbÍ0‰ØK-’ `JúW¬úYryäE!¨¯´–×W>Î#UR¥;ö6× ÍyÞ£­TÄP’g_tɲ˜ø[ ‹äíùÚŠ¦Ñ¦ )âä^@ëÚZ7,[f»æ,Dº&Ì.Ž”£nf†ëïYØi2a˜â˜‚%”1Ù–X6^ThíöºªåóæOG×xå*«bß‹n56V<ÁÉ`Ø­uûÝZ•m\ë›dZ³H¦iy™Ñ–êJl_­JÓœ@Ò&Õ•¶,ØaæªjÕüÀtù?DÀ¹4?1:P^sc¨«X«Ç\ëØOyÊÂCøî6uq‚^¶ˆ´™6\-X¯æ?E¨N>¹ALÊ”›/ïBR±düvªESiºc·Võû ·ÎâÓü@è–QiXÊc¬Ú“UpL˜©@¼Æ‚ÚÆ »ì¤ß-=E2±ÔYæ'EÕo*³”òV´)v†š«VYµ.–ûŽå­ žB{œÒˆ®µG˜*ú°ëYÊŸS>íª\]«Z˵ÌB"'jiíâyêã(hLÉy›ÒçPœYZÅJ ®¨‹ ©µoD>ˆ$E \=®µ´!n‚™/‹_æ7O!—-}r“ÑXS ©›l‚Æ”¨ê;·0ÇЮ½k“$¤¬²¿)pÌŸ1¯SÈu!X£qSúßT‰•Tu“ÀUë4ØÆ9 …ÇšPÆŒÁ/^1ÿáOÿÄD !"12#A3BQq RTa$C‘Ò4@“0br’S`p€‚ƒ¡ðñÿÚ?ÿßVõ]f‡WÚNÂÄbIPYÈËÌ–UŒf0™ä'¯ï&¸{– †"H×s¶î[nmTqž[°ÄØûGê) µÈ|¦­\¯+!F˹$ÝŠ«t~ÒzPËžˆ<©Ýmw ¨ðôØÿKö‹^l”ˆïCã gµ‹½<Ùëûǯ”h­M±Œìʱ7V„;£e$ZšåýäÖÝT x°*ùåÚâàâÜéqúÿ¨³EQÇ-° Ц(Í ÌÚ’ ä£?§0h¶’‰ÓÃ=î%ÑVZ>€±µÅÜgDî¨?6`£ÿÏGW¥΢¯ù©ô4~¿˜¯×n›]£_:ˆ¾†ƒdwñ²Ùßòüºøýóþ‚ÉÿJ½þ›oÑ×iDCõjÿÈ߃ýý vŒøÔÃ_žb¶ó¿ÿ£ó|^”Ýj 8ûªT5õß~¾7I€ja(J€DŠl±@¢Nö?×þKÖÑWÔe™™UË÷«²Î¨Ž„3·ÌÁ;‘‹ä =QÈ•d`jŒQ¿°e!rH1l‹l¡ÅQHÈ+, ØPQ!݇$-Š+œÇšè AüÍF92¤n„`Fqð6ÊBr·SÒ©"Ô˜Ô»c´§˜(ò+ªäyØCȤ@Ì ÖFäœèH/êCö6SC”Òì$ åj½ýÀÒšfbƒý=¡ÕH'uíÞJæ0éC»‹GÛÍ•£îÐpù‰­y‘G­*šx†ŸÎ˜A¾DÚÚ’X’kk¿ÜõÙ#>¡)8ÂÍ+Z«H±ÆÊ¹R˜$ß¶‚BÊ ãçe8ƒ‚Æ>[™ ’HS¹*3…äF`ä¡‘ùU‚µYš°›àæóW˶’¾ëVpìª[aÑ4¶ÛŒ@ÁY¤à&þíÎKTYAÇ`w’•ÃI¢#„¥Ã.aX0+íóùÂOr<0ÆOb‡5ªf¬Y…½šb •‰¨ûVAf†ÑÙuqv@j*>bâÎTÇï]G!€*iñ|á…•G^—ìñkˆîÈPЫS]†90bQßlZ‡î³°’|ýªÓDÊ’j!Gk ­")%k!Dý,_ëÔ>¥¦uù³iá|Ý;gU †•ÝU­¹ªg•ðw©=WÓ£÷j£ðÆ×'XÙE`6aû÷ eX®ÑœÅArQL¨ƒxâHmÿ".öóÔ½.¤ñK–Dq‘ iŽ>êbj¼~¿ö€å­?pá/xƒgÆ{ÁwiîXâPĪÙëÈo6È3й¾œ…œÒ7j%UHÜÝ7CAS‚Þ)[%æžÅ —æ}ú1 ]û,ÃÄÇnwñÐ6J®sU,7¯J}ç« {…Q³C¾niß2Ë`ŒwÃ=…«{›zPdV71 jL_Ë£“à­[°zPu½¨8Ï%IÚ 3$+DjœŽ[£­×Cå…ÅU‡0'i,…#ùnôëŽR_ « NÞ‹J˜E¥¤?t Ã̓wvl’lþç­õ6nØ#8hç ¨¢£ø†L)dW&:¶Ź0ê0@e §¾ÔJ×òÑJ!È…pUKXEåÈ™+«ðv¬²L{Ú+y18W@>DnXüƒ•]Œr â FŠAS£ l©ÆùoËÝÜıq¢4f¦Èb)ÑJ)Ü•+Èn2©=‡$Ô\1Jn å‘ò+J1{žBÑ#ÁÝY—´AfwbÙò#!=X`Ù53ض92ȹ©i¥o–ró‰ôi¦—GóUjG‚2Ž4‹ˆwÚä‚HÚü€_ö;¤j^GXÑwgv ª?2Í@çשúìO§K§ŒÊ>æY †gÕ#Û3bº*K~Òõ™þ"j`.¡#DUˆ¦œ!‰aÜí”^'2MôýÂíšæçºH òb´ÝÉŒ6q‘%òÛí—MtÃbGÊ0”vÀ7Ý`¤±Ïv`åÒÈäÓV^aè%]FmZ±%s€l¨oL¥¸1âÝ™35ÅÀb¼Ù¸Il~Ž0RŸJéY — È ‚²KÙK’å…§²ÂÑi¯CêúèçY~&Rá!2ÇŒt„´nPÆÙ&ì¼›6?ø½'ÕÓZ¢)rMHó;«¶. P¬Ò é‹£_¹ö5©*˜—»§¤»_˜ŒçS VYKìwȦ}Šº±_…3L›5ÊYÚÐ$ ÇWÅIÔ e8G‘º^m’ö®°Ä0b£eèQjr4­}Êo?2™”®%Ù©\}ÔqËÃ[!„áI"âd&ˆl•€µ²±èîËa¶vîfGïÆwB–1ãîä[3ÖFí±e·Æ»ùv¹\÷™•,Š2uÄóéE~E•UÔ"ßîÜÑÅð“¶‘¤b Ùµjôÿø&á¿ÃÅDÛ[äÖj9MÖß¹ê&µÚ¥wEueŒËv—&•X_YÙg+jZ2Ke&}38âñQ*Wö¨^D© '0UÄ_ÕH*6áí³ˆ¸‰˜ †ÅNìwJ=ÆÊ1’£&!X岃a¬œ,²×Ð/X«#mHm‘R—`ç%“Ü¿E;¯bJ^N(ì uRŒ ,ŠÌ̹|F @è·³Æ ©uO••¨,Nnx±ókº«¡>:Ë Ž9U{YT>_x=½¡ùÛ=2¯/HKõ4¬cB¡A#ÔTCQUÅ>mí¶Ã 8œ?wíÞ¢jQm –Ul™>[*C%«±çŒ!ã½ò5¬—Q]ù§%\í¡“#fƒ 6ç`Mò©b]M/¿R]3a'ÝòaÄ¥‚ÞÀ7'pUß(Ëd=á;r,Œ)u ‘rª-Ú€EvÿLxµ¾Ä©XjÊ7læÁP¬Mùèæ_ܱUiUn@¨åîFöØ3…sɉ ¯áf&0X¤VÈrlŠ(‘P|ñ)!Õ— ‰8ˆÙQÀF®F¤%‡7@¬ªAºôÿø%¿Ãž!ú(o~s]©“S©i$^{Å"Ä0°³J‰áÝiLL’­¦G^-ÑUU×朳âaÛ±;¼dî1hÔØ¢/ ¤äVË;/Ì !ZÅ{¶ÎØÒE¥%½€OHväÕÖÐßí¢ˆó܇DTýEí ºŒåæKÜÈo‘br„¨²ám}£ @UW‘¶|žÌlJR Æù8äíÒƒ·¢Á±iJRáó/º±`«c ¸òã½tS·ÅÀ Æ2œ¸»’ѨÅIÍU×bc's篳’´0¢ y!Gvbš]‰ÅÌ,¯ÛX1Z,oû}wÔ!e“Ó±%²€™WÅ‹Ø ¾QÊ®TɈ–3`¹9c%HTòŽHÚ|Å›bI›‘µ«nIfä¸å0ÍCäË'j<)ƒ)r•l~ªZãueƒ £LµX-BQë&âR=±Kl˜ÄrXÝTrÙv9¨ÐåŽ@r|lž#£C‰Ûå»rt¦É’PÈlÞáÄîÊ«šÚ„cÜK]¨PÀ:­:ƒ¹ðk ³ùXÇÙí;ž~Ü) sC#>HvÄѰ`¬*#¦c’¶ey«‚³^L1'Tb/¬²îÔ!¬$”ÌB C†ÅÍ ÈÁBØ_ZmnžmjûÑö„w$žÄFM¤:+‹)·ñùŽ )XÜw¨#û~ÑiœjDìÙÇ Ž—µ]£°L‹E²².CŠ)$ø R¸Úªª âÌÝÐ6i,\S²å·k8ÓQÃ6Ã…TŒ V%Æ*¥20d³`uÈÙݱ‘2–Õd6Ù(»J£ŒåÉŒmõSYÅÔYÌʸ…R«î̽dA<”ýn¨Se¯fj[\÷lÄ…„Ž¥ª;Ä îcJz¦^áE6Ce»Aå@Y_ ê†5Ѝ«´-+`¬ÏÍUÀF“20Ì,…Tƒ˜ ò«k£¤ÿ…ÓÖ@vc¬Èg¬dA ’7þÝJtóƪ¤†T αd )*AÝ#èGZ"?iâX%„•"â3ŽD~ì¬îYTf'%…æ¶×ø‚ƒ“_’ãš‚±œVŒ»¨Y8`ÝÀ$Ù[­ñÌûB‘]Už59‡ l{†Ø©)ô肤ÖÀ8[‰Ãs dÊ5€[¶ÁðI*&½¥d¶ç@¢ÉÀ..YpÈØ®‰"Ñû~qbB£5u@ÆÊ´¥ö4ÖVø”·U'~ë« 2FÛ’WÈb(W•Çbȹ=Àwßðf«,’:•ºCÏÝBºû5Žz‹#1H«V|»Œ@Œ¹s{“(¿à¢zÔ|A1$(­…×PýÑÆWf†¼½øñF¼yýBj$,ÂA„ d)$’àrèKÜîÖVØ÷,·fúBDgq’Û¦LYÖNâ+|ÄÉqÚˆÙ‹«PE õXñ4UñrÈΦF¦W leø#Ćdl—pZ™q%Ó¸¶ÍÉk´ŠÊ   ÔüبLm±ß·…JIjÙŠ™µ¤LdQ|Ûj6,íÊ€bòØÈ¨YjL˜ìÖáÈĔLK·él5Ê­“b@Š„ù+k 9))ñf‡“g÷#, ºâ7RÍ[6VO6ªR Çæ’m›¿€NÍ…q!pf¶lY–‚‰ºº‰±Š6 ÛT;e[´…‚†g—tÌ;ìw°Ûfô CwæÒÊãáñanØÇÝy*±H¹¹“æÆ\cM£§¿ÜtI.Šëü.¡‡ú|&—ùm?Šû˜ü^Uíñ‘-_žþzø=%WÂé«òìE[n?Ðï×ÂiG6œöcúxü?Jé×Âi?–Óø¯¹Çåíñ×Âi–ÓÿÑý½|îtºbEQìEôñø~ŸOË¥ÒéÚi SæÖÁ¿>Bþºúm<œBîEx‘š¶Û"¤ÖÃoè?.¾Kü¶ŸþŒíëàôŸÊéüƒ÷1ùöùaý:øM.çá´ö|žÌ{ï{ñüÉ?©èé4§Î›Nv­áŒíù{|ttšCçK§?¬1ÿ·¯ƒÒK§5ãäG¶Õ·Èú¾K·øm>Þ>L{nÜvÜúÒEV"#r,ÕYÄ ÛoÓûN›Lnôð6n(÷'rO7õèétÇΞ½ï gÏÛçaþ|&—ùm?ýÿÛ×ÂiNÇM§5ãäÇôÿéëá4¿Ëiÿ?¹ÍUû-¿Mºøm6ßáàÛÇÊoÓŽÝ|&—ùm?ýÿÛýO_ ¥óðÚ{»¾Ì~?o¼õðº`li ¿Ï³ý?îÿAþƒ¯…Óxøx7Øü˜÷úz}8 ˆ!0pDH`(08ìÀl6ÿä")c™s‰ƒ®L¶?‰« ÿ&u/¬è"2ƒ)g‹DRÌÙù~×ÖŽÃÔÿi¢6žI gÌËH%IHÎp9ùlqxt œ»˜â¥dTb¬Åm†TƒJ¤Š{Ëeߨ~Ñid™#xÞhÃ4²²ÔnÞ#`¹ëºÜ},ˆ5zmIa§š9J€[tÁýýœ®ñ¨)LKƸ©U!Y³Û),G’ßòRÈ!å`ÅcRä"—bYÅFäÿN¥õzueY3PV5e2Œ†ÝÈÁ2(V¨ä¤fG5Z´SMf=;é\Hò÷N ØÅ˜:оžV&/vö6cÀê½GQ«1 u,8œ>´9nÄ:öþƒ+€»H1bèP {YÂI@©ß%øhm½¶ÅQ1C@F…ªj°Em\N ¨ /Xª1ÇrÍáe ÆSºĸAƽãY²¼Ê^/@·ØP{@¬ô…FY6b:‚y`*i£<‘œ?m³ƒ‘–Å×#ôˆkz¿¨G"êew™~„løÂÅPj /qÙ¯`\22äÛÖ‹Ö´ú˜‘æìÈO%v’Â˜Ø ÔÑ6h(÷îMêZ]<)¨È!y,»2Ú²w2,˜÷1¸˜åjVÕèý£Ò0ÅVt/§î,˜ RC•#dB‚WÈœ9¼ƒ«êà™§iD®ñ´rì©%ˆ;€µ/ÝÛ¸»1¡×íÏTu A“´Y76ÀáÜEÛk»gU®—í¸#¶ÂŽ‘ÔäVs¼™D2zÉ{tŠ‚®iƒz·¨4 §mS£©wYVÌìq,ˆÎ¤,‰îe/eF¿h¾ÐjDšDÔ´? ÚùóÈ®'$È€}×[*¶ÍgÈêTŽ}k"jt§Iڨ︓™Õ¹™Š”ÄŠ oô$†è°×6AeŒ¼XoÑú×HÅ‘X©BÊ F¬‘x¶$‹ ?¯^|û[ô;tHPYˆI&€rI>úž–dw¹01,Ë(R`ecC‡Ëf>ìC^$7Ž‹(!KÍx‚Eµy¡ä×Ö¼tî‘©yQ–v £õ&€èÉĬeå~1ß•ý+ÏG»ÝR vplÔ«w –¸l± Y·uGû"MÈÔ0¼dFÆõÉSúÝûA¬hä†85.Œ½Åž$•£É.TÈæ½¼œxþ}D“-æ&ik‚Æ$ :)\@ùÌÄ+5lÃuCŠª† ¢/d¹Ä«¨ÈŒIz±!Tj“¡³¨Eä¨.r,ÂLSñcˆ¢Í²ºº6µHÎ¥6ÉŠI+(òd±‘eC½WÛB÷RÊfùDwFD í– 6°qn-â“e€ "ûÅ$Š„Õj¥Çp¥ß‘—·Ê“Ò3íÀ¬˜Z¢Æ‚ŽeY®•È%•›Ú;жë 8Yb¶‹2( >%­ˆÌ¹eŒS²¯J¸b{y0I’ØU,)}Õ_–ÿ÷@@öºU ŠÊ6E’Î$âRJêv¥ÅJoucÓ=cSé¢ÇÃ,x• ’ öûDÈRòâ  ñ9+ë’,š˜Âj$Ž=FŠ {›·&¡ã C f]œ+°kà‡õ¯QÔBÂ$Vˆ‡%y>cƲ†,K#‡%–Ùw M,ÒDgwE%cWÊfQ„µ¾Øµk ô*¾àÊŠUKݤ’JFS¶Ôã<Î%Sø:fDH ¥°lĶÙ*§‹SdbÇ…‹êP>„­ Š„^$ÒŒYpëÀj;fè1;Úñ)V@ALœnKYC•t¶·J¯XÍYJÆî¤2ŽMJ>§ÁèüÕ?ˆ¿$Q2bƒƒ`ö—?ýnBõ‘»/Ž*Ц7„1ãÁ(²4ÁšŠ[)1êõ1™u+;® ìì\+aœŽTH裴ÊD•ÁÚ‰ëGëZØu‰ßâê>jÈ®¢Ô šb¬Ü‰fA»‡¨FºDÔº–Ì—%êIYâ̾(™ ùW?NŸí‹òg{ ÀˆˆuzâFöÝE1ÄLMö†Q¨NÒ¬Z(Š 8»ÀʵFñbôWü+l2k&yfy&ø‰cC2eÇ»‚±Þ=¼6MÈeà ýKW64“j2AÚ8T|—¶¨˜|ÖÁ,Xß&]ÿyX[bª£|Ë~Ê×+âšY;#'¶C¾"'l|Òw[QÄoG¡èºÐøö$ÂIUÏ{ ¯,e,K1*ÉSkúô=VË|4ŠÏ4ÆØéá&Lƒ®`Ë+UTñm×£Å$ZÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî3¯“O…õüøGü5ï'm÷Çàþb£À>Ç{ïIÙ;_kíïõ<Ž_#ãµs—Ò±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»üøQøËï'þ§ü,û ï¿ÿÀ}•ÿñ_þJ>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî(3/Ã/„]»0Rà]‹àï½<®Ó‡bµý«´{ù‰ëÑïg+“È]\í|Õåè~<¨þ$ÿ‹¾èòÕýcx¸7Ýëùžû£ú…þŽæ¯sÊâOø»î ÅÃd¥‡4µ–ºjh¢­17e’²ž égž•'ÐÕÃUM,±Hç…È‘p<_>fŒ³†eú¼G¢Àj+šl.­k>f§¯§Ä±RœbÔÿèòÅ5-=-n ”õGI[5|Ï_S6†3H‹®é$Èù+ŦzŒJ¯ 0ÖTɼµSáµu8cUL~TÕ]Ÿ3|©$fñãÎ^TüŠæê‰+óhÆsl¬¢Hâ ƒ̘E5EF 3&f÷¾–‚Zg©¬.OŒtçļã—2–[®É%>9–e¦ÍÙꢵrõtf¬RS`ø8¢«Ã…^(ñ”®q&#RÄéŽÊ®µ» Ã0Ì]*ê©õ`¸„X–‹QÄÿ¼ñ¬.Ušy¡¢Ä"!⥮q[–ç¢Ý}ßõüÏ}Ãä£Þ*Ü6ŒIå&ÓžÝI]P[š©ýçy;#C¯ …–³ßz÷ŠõzQK[@a”χá¹ã8å<0I†RUÕCQˆAƒÇRÏ® ëh(q Ùª¢Ã¦­§«ZU–¢¥Ñc0½LÒFîqxrVnÀñ:ÊZn[VáUTxÚá5ÑT®UWKF—^lË<²DµBšXõ€‡—J —3b4u>NÕ±YhiðÁ$U9r¶¾"ÃéYééa¤Z¾Î‰g,ÔJLÓHHÅp O'5(¸ÔÔU^MfÅêh|¥QáôØ›ÐTKW>!ˆÒatøŒPFø‡e— XœiŽ¥ê-»€}?ÂÿGsW¹åGñ'ü]÷ dlO3G‚Qลe^ä‰é¥Æq*LKÇq:ºlr“5e|K ¢E“¦1&*¥w§Þ¶4FJªzêŸ(™ß†n¼+\–0ê®dB½£Þœ›…bÒ ˆ»=||Þl<ÈdÆü—à˜ÞW§òsbŸ+¨\PæÜ/ãµòb®G@6ZÚªk)©± Šø‚¥ËÒk ¢§Á)üœæ|™6†aØf^ò…AXÿ \9› ›ÃkZ¾ž±#Š®x«ž¡*VÔÕpGÆ\ÊSbRbòàxzÒIˆJyïÌ’f#<4^ÏIv1ÒÅ |ŸwËWõýâàßíü£Ð67E†åÌç›±|é†ãÙ~£øã†â¤ø6¬9è1¼˲aÓÁ-QjÙßñTð;¬Ô´µRùOò_5LÉAX™ ±Ö¤2¬IUØò-%_f©U0ÏÙjéj9NÜŠˆdÓ"ç‘ä÷Ê‘`™ÿŸªøCï´xŽYDZ8¨q|G L>ž¢›b«b§­—Õ¢©’Hƒs2&QË’àòe  ÄpüÍUˆvøóóŠHÎY [áñ½N*õÕ8º×ËŠH… Ü7ŽA®Í96»/b”õ˜=fr«¦ÅÎs›¯æGQ¸4P¦&(h¥z>Ú¸„Q´Ý˜OׯC”NNÆò®–éråFKòK4¸Y8~”¡Æ©«è°ÜF§ßÊ LÏG$&bë. [WE=Mn7‹ã²Rá1MOàç¨çûÍ€ÓÔ3MCkS¬šX³Ë!D/owý3ßp寃“áPâù[;åG6UOC&¦É²aPÓÉPÕ´ã.åïzk}ðŽJh ˆËQ×KÙê*õÃÕ/%þ/Š<1Vù>­†‹£¯‡ÊLxmm?”Å  Å‚8c§ ƒ ¤ÄZÓ’ª O³ök·cyºýÜéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïÜPTf)+$—™â¡ÃðØ#©® åvº“OM SQ,Ñ5D’N‡ã!I¥eŒ·ð.vt2ȸvUrDf1&cŽ_ŒµÕ^4{yʦà*ûÁžõ7É÷³Ûðÿ­ÿ™áÀsÕ׿ø3ïûÛü&¶¯|þ½¸ûž·fQü—ɺضÃ3ü›î}bÝåo=|mù`a¸ÚÖðøMóŽÿé·_Ïš½^öeý¿ñŸðÿ¢.ÖËùìèÜÿåÿÚõãƒÙòÒy¿Á¹ÕþóøŽîðz¸m:}íËú¯¿pøOsæø|Þ^ðç³½ˆf©oÝuøM{$¶ž¾(]ï†`+oPêÌ«¹ðà[Ï q{.€3~fØíÿK^ÜFžðç¥i,6€‹ÞÀô—Öÿ}âÿg”´ë8n¤\\ŒÊv=×µ=ZVäPa2Óæ\$×ÔGMï†-E…A†QI+”Œ×ÔÁT´3h¼Ë‘Æ%W™£D™¢Àq*<[™®†tždgL‘’§¢XÛi"p²!ó”~ãËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïÜTg…BcYMi¢Ã^cŽ ¢Æñœ'¨‡F‚VžDÝ¢bzypm7.YQί£¤mßoèR¶ÕßÄuj¢8Bžíæ±¶ûü]î½ÛíóíÂÓt©”êî\ÄAêé6ú®Þ­:´H©³B‡–ˆGQuê»¶£ð_ÃxåV-.’JÈHŒÜj!çÇ`ÀgQY&ìöbÖ $ÕÕßò˜°îî^ò-êãG5’‰(Ec»¸æj ½þ+q¨x$H™×M›º+…×Õ¿p85ê:”¨åòô¦¿ÝI(»(¶àG 74Ç2Ø$h êÜÓ"‚á™Wä‹wwñÈH¨-¥’~‘æŸEÆ Ö×¼{øé•b–.{µ‡{“¥„zÁÛÚÄt“ÔÜA$¢Bœ¡mW´º4ýñy»wû¸’Ž*€bkøÝìvc#ºú׫NÖï7ìni¨ ÒMS´t¸Q¤Í:Æí‘­0ÇËBTÊÑÆAPÉ„SQà4µ´Sa˜´PUÅ>;‰UCP˜ÄÕRÔUÍ A£¦¤Ái¢j:jHcO‹ntªü¿wËWõýâà߸çÖÕSQÁ©SU^a’Ò°$ƒ/.¥µÊ¦À¹|¿ž‚«[RáØ ØiÊ™>-µë]~¬XkÒ¬²Ñæì=ƒB*ðŠ) ©/0¼Ñûß‹×]>„ç))çGÙãžÓrZEÌUvRÀ©À1Õm i‡‡×"šUÞâ¢ÚÂ@É;OˆC™f¨hH_{ãÁñxñ˜¸]4ðÕÑÓE.ǘXOËXÃêpÈÊ)ÅF3YƒÉQ;À"Åpº´1iŽZŠ™h–ºšš–V˜ÃÓN«Ì‚ ¾ˆ£æš—|mk*¦¦–§Jzºl;“,1šÙg«¤ÕI'5¤§žk…DTóÉ¥ó ª¢©‚®šªš ÊiéåI¢ž’©9”Õ1:¯BuÃ*’’.èHýÇúþg¾èÀ>Ÿá£¹«Üò£ø“þ.ýÆKÄqLf #ÂÛ´±WT¶ïv&õX®0´ÑBÔóGÉÅpØ^fJú©!† † &€$€G4”îYu.9Ñ⾡­ #h ®c`YãYXQ'DoT¥ûôZÌt :>NäíxûCˆ¤‹¥Y7@ EÍûÆÚAµît“$‘„E’3Êì¥Uvé7øÒMÅútÛ¤ïÁ1_HKNüÍ7™‚´e¼_Iê'¸êÕá!,yQEÌU¿œûŽó¸Vf«ø4 Y&èöÄ8ï$éQ¦ÆÛ €°â™„&ë¤w ®¶þžÿÒ;­)/-Æ=ãmV¹énïWÎ8 åà^V½VÓquÚäzüÃçáÍKîÈ[¯v3Ú)‡HÐ4‘ÞOÉ]¯ 9’_P댋c³¨³ƒkôïæ¶Œ”ñ3Ý50î½´òõQm&ú­bË™#ù@€øëP§¬(*Ú R·ÚÄÚûGƒa¸}e~%/28)hég­žnR´ŽÑÅKÒÍ¢$grŠÄifknxŽ´K‹{õ™ð\³>?G‰vuL:¶†Š¦V¤§‚*h§…¡Ÿª†£´ÏPÌaŽÜ¢$×îùjþ±¿¼\÷vk÷†Ž,”¸›TÓ× ‹WÇŽË„RÅOJôÐT[-m%%-2L±S;ÕÞ¢ªš42ki£aÌ€ ªSØè:•:ÿá·Sî@XC=*kzK…,ÇHÝ­Ý:Ö7ÚüJ/Q<í§ªãR¹cñ–"Ѩó{í¥zu¡t´œ·±Îà‹FAkóCî!gEè]BôëV‹3Ø*ép€ï$÷käC"lQC.›i=V¶«?]··ˆsbVµAñÍmfSñf¹Iî=ÛwXð°´ ¡ŹŸ+fE :b@Õ§o_ÊáºÂ¼åpzy@÷;Ž£}¶&ãÍØ_ˆÀd–2X‚«¡Pñ½ÏÞÿÔ.Q!3"…Ò.¨÷ù;­dî;<;ñp±Å3<_€÷ ç©âãqÿ(&T1Fúe=Ž…¸U²¥õìSIk®@> <:|7ûºéêv$² »±­·‰áy¥—–9RB–})ìnn.4[_zq]ÑÕ GÀ1l&xä¨M2Öaõõ”õëLó­Sö!5=Q¬†š8áššH%¨¨§1û¿ëùžû£ú…þŽæ¯sÊâOø»÷n[©¨-™Z¾Ÿè⢊¤ö~ÓERõu22¶O8–nÏ,Yªêè…1ˆRöªŠwBÉÞ{±²);V[Ù_QŠLK š· ®¦æ­6!…UÍE_M”Ïɨ¦xg€M ²Få%ë†Fú$n0¸¨1¹1œ_/áX.™­j£Ä}õL6š¶¥kUjfž™a¯<Ȫ厩DÍ==JGîùjþ±¿¼\÷W¦®J|¿Š`ÜÙh…E0®|T+{ëIX©â¤4´auÕ&8©ªMU=DsRÈÐó)ÙQe]-#žf­*¾¦mÜ:¯³ m·b’_a=Ç(€·ùú¶óEýwâš6"ÕgÒZ4ØÇ¾Äü¢{ÐØ¿©d©•co¨ó@%š+\…~ž 6oòx,Õ•¢{Ò=W'IùRº€¹fÞöÒlJMj1*­ÆµN¢L„•msnþVá„ÎŽUc0i¹tÿÂ]NA¸ßO¨†­Q'3^¶˜Nê“Ò[À =×ñïácŠeÙ´…ÒÁwß{Xx|ýÜCZ6ke•{Íõ u/Nÿ}ÀI]Z8ÈÈQ= üªß»X[M¿”ðÊw»G;) ê”÷•=*{m—bœâƒy¹‡“+¿àÖº@Òå{ŽÜÎά4U:#R|ß•kFE¼Ý,.H E&ˆ¹¬š0ú½r¬Q7(JÒÃOˆbX»a˜«RójòütX®#WR³Æhઇ Ž’¯\‰ñ5 ˆÄñÍQÙP¾ˆ°¿}ªðÞt+"bXŘv&åó’jÙšÔÓEÖ-JEBò&ˆ*å/6²ƒ¤Ÿ(G<õx}~+YO5%lTÑó%‚S£SbN šJ…ol(ÑC9ªh)æ÷ç,âqâ˜wh–‘æHªiÞ¨B4”õµÓÕÓLX¥åÏlÐÍ Ê RÆíû¬éþú;š½Ï*?‰?âïÜA‚×aÏQž»-f ˆ¤5 0Ì&¯0T§ŽHà¬í}†¶ž ”ªŠi*ŠS»Dóv>]¥x]F®•¶€5ýޝ DXÜF- kv/Ó}.X¬¢Ãk‚<å·~ÜÅ#R¶åù¢êÞl]Kee¾ß}ßò¸,ÇS´¼´… ºS¬j+ó Z‰asa~î#Y¯1e:bŒé’>ës-˱B:έÛÍM¸ ÓÚ^¥mÝîHû€>$íý6$ƺ$ùÔ4—ë¹ÚÌmkmêݸÓ¸Ž4ÒÏÜáæîÔ m°>÷ËƼúåPc6B 1m®£Öt°$|·ã˜Oe ùcÖ¥Èm?€‹wz¸Š(äˆë]MpIA2Üí×µ¬¸[qËÐVjŽ•;hÕ`€­­Ò¦ÝEUšãnå ¡trJÚ(Ç1MBŽ‚ÍnÇM»¯n­¶á€˜¢´œ”VT^–ÒÓêÚàƒÔªàñBø³ÖC„ {=L¸DO^RÅcž jÉé©jge µ0¢]3##Ä2ž#Œâ8m}5.b8å$mU<˜zÕ6 Xu%U}$4¯ mEDSEˆ×¼Í<‰=B<Ž—ÝòÕýcx¸7î2®cíx¸|ô•ôu‰=ŠÐË[†®pú2·Ä)0šªœJJ…+Ò BJˆâ–.×%:Æ£E2ÊdY$B.7: ®Ö:™ok;›U¸b!xÙãÔ½@  ’ã^^ÄØ÷íÀæ‰%¼iÉE’M=cs`Iß§mÔ¼kBCÆÈÓ ¶2…y4ÚÍp»¸»ÆÊªú¡2¨hT“+ôßÎÕâm°+ÓçxŽ$.eæsJ,:ØjÙ4ëø»Ý·m:˜q©¡˜2$+e6Bt_ÍëW$ÞÝÜIš¤'Kjei^:¬ -§Ã¿‰ü|ƒLi3Y‚ëiîÆÂú‡—k$ä.¢K©î:Qºm·vþýP¸E…¥-ñº¬ãvÙdØî›ì£‰ôFU£Ñ¦jBHR×ð]CMÊîî8‡â¥”¦®dFúFÌ,ŠÏʸÛMŽ®]þ~#Ò9ã”4Š#ê (:SÚß>ÛÞüU/%ßn•6<¨Š’ƒÎ=$êÙokݧ„ɵ˜†I™+ñJʪ’Šj)ñ*5¦¢Ž­­’š*ZÌW𵂖©–©ðèbոܿ»þ¿™ïÜüd­Æñª|J޾«Þšõ£‡–Ÿ›Šº††ªž®²Xª$§8\”ò­0œWLaª¥¤I2¶–å\±G–°X0‰¤‚Ÿ Å(ô0Š:J©Ž)GP°Æ”p¢—Aªyê¥r†š*>*,Z—ÔkÎl>Šž7®«€Þ¾£´ÁRTÎ% hâ"ƒZëé¦4JÜK®5uøµdõ5µ2ªëž¦¬¼³M#ÄJ¥ËiŽ!!@¨Ð)+Z]!51*l5d’ ]Æ¡ÝæÛ‰*^E‰5_” …Áßr?”:vûÓÝr/ÀŽ9 oÎÅOŸpK+&¦¾£½÷éØí+¹‰¹R«u]÷5;ÞÞe¿¿B¶¶ ¢BßÊ> Cw»j.÷±µøÕéä—3Ÿ¿‘;ù{êU¸né‹Í}™WK1=í¨iTë;ŽãÎÓk••™f´DJ„Þ—_<*‹ndêÙȵ†óR`9‡0a0VHÓΘ6+_‡%Cè‹ãtÒÕÄoˆ‰ZhôI%<""Z;ƒO„ü(•;HN$i0ËVRÉ¥§ªžjI¥f zYŸµ#¥m_¾ Bj¾\:iðß(”²â°*4C1áRûá=]E_2›¶aÑûßD)`£—³´´KÚI§…Ú ™gžDÄñŠL"« ƒÆ&‘j'ZžxŽžž¥d2$P¬U<º„í4cœ)ïZ™ÒUoÜ`Oð¿ÑÜÕîyQüIÿ~àฮ‰ÇנŰLÁEI‡5(¤ž% 8>#S6!i¤’h«äh⤑i䚘žWçR¼äYõ«)°ó-§»Öz·õŽ#K¹hX€c £–¬VöïÞDZºl-ÂÍdÓ5B?(w’ºýÝË«{ _/ˆç ÊHĉ«Äº\2XñÙIï±°;¡yœédèg•#ª‚ÖØté6Ô­«‰J3B^S+«‘›«H±½Ï3¾ûi·à,…×–7u*6Õp.£þþ?ÑÀxÈ‘u:"­µ¥l ñQæü‘ê·s‰ôFüÝ”ÙMÀñ‹yÍê#Z›³Ô snVá‡]*—óo¸n¥c§“eemïd,Š«°Øýðµø©…eø–Жk›¬2DÛ*ìG~ÃðwTòõxú£*²_vþp–,>WYÜôék=äyTÌZâÊ»›“ÒÌmf¾Ý%,‡D‘¸¹Ž8íË`ƒ1¿ÊÓáá¤|üPb¹f²lJLưWcµ³–Ô1ªX‡ÃàŽJ* ¡ Ãëá¬Jž+Å)©í1TE3{¾Z¿¬oïýÄ’áx]~v‘)ðœf‚žka˜tT4´òÌN ¨­‘eì•A‹)¥Ó¨†IÕV¨{J;•PV)Ù6ߌ…ÕÁµ­ÿ0<"Ú ]!™»¨Ôæcâ>ùO}¸ŽO9”˜Ä ¤>’½-ªÁMôßÔ¢þ#z”–&çO~Pé;ZËc{ ñ#ÄŽ#ç§+@eˆÃ¼†TkKf²íÿIûíÅÚRÞ&²ÊçkŽ’¥<åM Óëcý,†mFS},-ªÚ%Y?âè¸Zþ…¶‘ÌI4òÛB ÕoÜïÜXo¶ûI¦.…]>!ʆŸ’ÃYÕâÛwZÜ53D;M‡©zS¿ÎØÙ[]ûÈ î.ḭ̀²òàds®þ Ê}[ôÛaâ¾41˜äïΙ$i<åÛfó¶Ø ‘ã§5Vg¨W–/û€#}Àø»ï½üìÅ•ãX¤?xâU’ÅO]™T¡>7îÓÄ…ýå{B›@W¿V䬀n<ï ¸Â(ñœRl5ðƒMŽ`Ô1¬ìoÁ*#¬’ˆÔNHû<•“SCµ8|UZ&§0=Gî?×ó=îáÇ6c ÷Õª—^ÉW=Ob¢#ÃhëÕO©äTKÊŠ &ÜV`Xô¸vV¡Çù˜eu b”˜®' Ó$õµ=²^Ž®W“¦¤ìæ!Øù¦i©yÏYU_Q$³MQ4ÒÍvæTOQ'2z†Ò¹%›Q@§exìé/B¬F5u(ÎAó.~H²Ý´‹Ü»ø" ò–ª1ò”)md\8ïR¡‡A¶Ä߇`ʈu÷çUôµú,¤¹õ–Ýü^ 9  -ºiËuí§EõG¸ØpòMé{ëm¬þiEÜîu_ck.¡ÃÊÑÇËuXÓWzØm¨&­¯Äíâ·„GæmÎömû…øX—LM…‰=0·¨ëõô·r››Ì×®›hꬶ]Ìn¯ r;Ö5õjPÜÂêl{®lÌÀ«OPØ_Œ/0`bøEp’:3C4.œªºzÄW…䧪¥šzz°ÊñÈy2$ú$âk«ðHsy޶züyãÑM|ôðÔCOXòËcN´òTF•5f•YÝX×ÝÀ>Ÿá£¹«Üò£ø“þ.ýÆ=U‡4Ôâ&›®‚*P¢š™JøqY¥…çš…!«ÑÒÃ,L˜Du70-\S¤) šSLÔ}Hon¤Õ¹·zw±¨ˆrás¤€¥šÛõ›¾®ë/qù“F®^¦xÞǪkH´ #/Æ_¦Íu¿¬#Fæ1æh¼Òn [Ci¾þW¯…‹\Äš5”é7› ùƒp¶½¬¾u¸„²É}µ+1ûí$l=`µï½Èk^89HAÝvÒïµØ^ñ¯à.{¾q~sã‹eèãRÆË ßùF$szI+°ážÌÎÂÓÕZ×Óf7î7-óO ¥ä› ÙRˆÜ‘ºô‹yÆ÷¹ínâ‹§]zuHVÒ¿1ëpºšß|;ÆÒH±‰j´—S¦/2P«QécÝêµôÂ"DFÓÚ@=%Ât¹[ëd6ÖX‘Ó¬q%;Ënj,’éM€HÔÌ®ûþõí+<ð¶kC¥u16°c©ñ·š¼Tá1U¬µxF5W,ÔbÀÔ˜§ÇÑ+Õií/ eH˜ÏnÂê‘RÓê÷|µXßÞ. û‰1|¯…Öàø¨Ä±Š|´ê4˜‘§–h1hiÞEzÚèà”â/OHRDŠgíSVMÄÍ3ZYSm ±ÚÇr VCÐ×*vw–s*FÑ€c•:ÑŠîIm[ج;Ç’¨LœÁ/üEmK ì5n«s´}7ñâ99¥¤Ž62(p¬Ž4ÝêU÷¸·Ì7î®Y‰¤\HÌÑ—§T—$u³(¾ -uîâ1/1ãMIyM6Pšn¬¶zÅþmÏw<%,ñq„ž^6#å7p[oÿœ%V6,Z5IS%ÉmG¸—];Ÿ øye““4E†¥k±àn4„±ÿÚ7½¸Œ¨Gd~tÁ…®ÁWÎÞüÂ7Q} é°ÓÄ(J˜Ø³iNà¡•‚,ÖWáâ>B“"|c:µ£åë+púôƒÿ³}ˆ^Lü´2®­Ö_Rû–û Qm@›ïÁtæ­¤u¡c€;]B±;¨¸M­ÓÞ;èj±É55ƒI%v[ËÑSKøÃE6¢¶|NXž–Jxà’°K„ÁʯªPÕœèé)'Ž£Ýÿ_Ì÷»€ÒbFºLâ$¯“+ÃAR)„TÕ 8F(ÒÒV@pîdT,°O_UUMtUPÓ¦$ãTÂDÅidvçh#f{Ù:»¬#¿‡õUœX…mŽ¡º›õï³êÜ :|CÝV$‚º‚žhkÜì|Þ›Zá·7ï^9zI–C :Y¼ÏŒUH&˰ ãäxéâˆ뭬£}0¶åÇ€½ºw?öàÊ$…¹H×¾¢I}JnÇ`;­ÿüá Œe‚¬Kw@Y¯§w?ðö±k«Äñ'0²ÊK‰s`­·Jêlþ^ï˜q#Ú%Ò@ót¿FûGI¿vÆÝÿ0ÑË™:ƒ`ž¯7«¡‰°°âDY«Q ¬¶Ô/ζ­%U[eÌG†Äñ䮈·(t9]×ûëÜîu øž9 ¨*’Šçª דu×Ñ¢þ¯p@’ò _xd¹<»¶è[rB/òJÜ&¯c¤Ki žqÙ–Ò½õjk…m‚Ž%Vc:BÑÍ®= /4÷v-ÝÜ·{[`BTñº¬®9r\½­rK6’ “Ýæy¶Þ ¬Fµ©±¥¬+Јj¹x–%5 i¯‘¤J9)Q(°ˆjØvšª>eD´ëOÚfNZ{˜Óü/ôw5{žTÅ߸ÇfÍRÅIïu4µ˜-rµXœx¼+Ú)¨°™«‡hÅ{?`ž¾2¢’Y‚èdY¢çC  Feî±Òo÷Ö½öîÓÂGÚRq#ô­´n½*uØ_Y#onå€*bu5•uêÃçsnñÔ<ît÷¨§^…“GN¡~­7mì¯ãáÞ.Â(T‚Ò“a®÷‹\©Ù®^îiaaÐᇟ#¼nf¦`>PÛv²jæéí:ˆA…¹{üXvv:N¢£b8:åTT‘bê’&b~Qêù˜}éëßn%1‹TfÁWùvÞÁuÇ®ÍmWá@E…‚ù©Õ;óX2†ûíÍî¶¹6ä+Z'ã%$ÎQuµ¶* bU´Ø)±~[ IÉ ±<ëŸ{_}ÿ£ˆ¤ÖËfƒ—'y²ÞíѦÀì»êú¸GÐ*dy=eîÌ¡_EÆúØCÕ°øÎ5rXdÑ+¢I.Ï·ÉÔë«­†Ÿ(=ç¶žº¾‹0Ôœ6ž‚¦£Z‡¯Xg– '8Œ8}%KEA],ÆIhâ‹U= ë¡§÷|µXßÞ. ûŒÃKA‚Å€vgÃå¬`9i˜1 ªXëê1—§aŒÕ½CFÒA¬ÕË âLÕ•Æ•³@QKkNXPn"mßfp¬ÃkWÆìDѬrèFÕi sÜä€|}}Ýã~!ÝV>•¶¯Ì?%Ÿmˆ]ÚãÔLc—6ˆŠ©Òua±,ªÿæÚå5µ¸1˜Ö"±&¡¨j7“þµPõ+Þ8hen\M$Ì’ÜÕ!W¤–î$7K^ä]|8ä;"ǧRJN¦“åi#m2³w“½íÁ˜Ê¨Ñ*”Bž•¸Õܤh>"ÆÖ,adç(ë˜ü[ÚǬî÷; Ç}¯%ã2Ê%]SÔPOpðð âoî¡“¬º6‡+¤X,[ Úåq}€‰ É-Þ2P(o5›Y¹;”lnæü?&EE…€Ž`£S¯,¯Ô‰{xïo7‹O*%E.9©ü 1øßN£Õ»x‘~I¦¥×˜Š@”ÚÉfØ€Öo¤ ¸È¸eD ÄÍ+ÕbQI ©Šª‚&ŠJYÚMoÎ…a¨ªŽ*8*¤F¬QG Õ~ãý3Þî!Ošß ¨Ï86TÌU¹n&®Äé* ª jêZÙ°ºšhAªªŽÃh1y}3Ì´¹ª™fyyâBÉ&¥–(eOŒVGm¬º”1t6Ô’èV@¬©VÝe-h˜hGæimµ¬º®+_ÂÕµt‰‰+N®û´:¼ÅmÀeµ€V¿O©\·šÒê·WT…º¼ êÔ þkqª)ãóí¦ÚÝÁe-¨ë„…Aµ»¶æóÉ$1óXˆ¹ È.BëÍ7Â÷ÞÁ{Jê^Z$$©ÒÇ}EAÔÝ=Û÷æí$‹€XB…AFõ‹je¶ÿ2…·Í¥'’HÝuËÊðµ—¹}bÛ l ßÁ9: hÃ¥µ O ÕvT&Ö²‘¯{ž{Ùù–q¸³ -"ÍàÌÖ:­Þ4öQûM~šJH’½'H›•²OO,RKÔûä¥g¦øºe ÍY!nb ¡4Ü͵ßóp£vq0'‘Šè*M¯sµºƒo«aãă–¼Ô•¬šA -±ºß¼uõæÿÓ#•Ëe2f6m ÈÒt·›e“Õn Iè‚fÅŠ÷énþ펫±®Ûªìtj¥ÜGÖÂîÓY4(Õ¤XÚÖ:}QÒT2JíòU¶n<ñßkm{q1VY#^Íak —¥,G¨þû×Å<$¬n€H] ûüëýã¸íÄ¥J^—,ÌܯªñðF®«šÞdí6×~bª³iUp-÷»Ý‡ 1I§œZäF;’ÄùƒpÝ÷÷‘ÅD-Êì(#Àó›ºÁµüþe­°Õ!=2ÇËi ÁBô’I ½õ\ïu"Á&4VKÛf’hªëoASMÙbX jJU¦¬Št”K3Ô¦-¡­MÑÅËêq0ü/¢Š ÅVòVÖV-e&)5E=3k¡+OF 4´éOMWO ‹š«SÚ%š¦xi}ß-_Ö7÷‹ƒ~â; À*S3å¼kËø¶g«ŒA˧Ã'–†ÒŠZÉ¡®‚ª»¶ÍO&+OH”µ&ŠÕ™÷¤s$Bìè×#S‹Û¼0!WÏaßkñSܲF!¦óUË9MZAM@je¸cò†çd7&fcòš$*ߤüÌ^Ýý6 ½¡•ÔË ÅË{¯™n(äí`GÁ¦“HhŽ·pçYäѻ܂PÞ÷á哊:VÄᦩ¥Š3SŒÇE<|ÚŒB–™ÚZ‘kQ^!AÍ©0Ä“2‰irÍn_ž¦§l† +[UpŽŠ¡hkÛ\€×ÓËO%=u¥•{TSi–Ag<`Oð¿ÑÜÕîyQüIÿ~â /‘~O/mÊIIQjZºƵT*ò©)*(%0°¨ž!S?%âIÍò”rY)ÐÑ¥A:Ó¤l;`Ôƒðp©Ë& †‘Nñ+ýùðÑaßqq«‡Ö¼‰CD86;…¾Òo¨¶ÝzmÁ——ÅÍ.å鸲îOBùÀwW‡ÚE³ÊUî™Ó¤±½ÕCt‹j`¾pÞóS ‹¯Å³›ÈvBÂ÷±ÛÃÇs/+ã Ô K%ùŠÉ£PÓe¸ù÷pH:Я>T~öØrö»”ŽðmkïÄ Ê]*ô‹rî‘ïkßk/r8¯._0`KïߨŸ“«Õóoac: 5ÑœChùF㼕 ZÖ߇¹‚(TrtßQVóVUì°|í^7€!h‘ƒlX<†5ø ›îCwø \÷<Òƒ:a^¢¨ a~f›±½‡ªÀîAÝTÅH›(‰c™+É«–±ª(:ãæw‹‹ôqGFÑÖÁqlb¦zT «C†Ik½,1â M rÏ\5*-%G»å«úÆþñpou¤‘•#E.îä*"(»31°UP.IØ Ï†Ž†›—†aù‹Hé„óaôÔ•µ‘SÓµB³%G*>‰9m)gŽ6 ÞsHæñR¼é¥•Cwí®A2©­·ï«·-¢‘RXÀæ[CZ6'W†«ÛabÚXjæjÓñYðÙLš÷óÂÚûÚþgºÊ%™­ ²u›YõÚäC§‰9e¢š8ùat·Xóµ5ÁQ –±¸ß¨´1<}jT²…ÔÁ6¶›ìd ÿo›Q„µ@'¸ùZ ïæïm;wÁþ/fÑ÷hûÃXƒoVÀyÀÜ aÖgÒÎed¶‚ý=û®‘mý{ñOÖ 2UUºØ’{ö¸;•¿•æ»”«|_Ašîý,¸RúºX_…’yuȯ§”ÞÛX°¾° ïr ïïàµC+w€º³‹Žg_Ë‹×Þ÷¶Ã~%ÒŠQ]ƒ1ki;_UÚçs»a¸¥ÔZñ¸dÓñwR2ÁúË-ʯþkn+¹´òÔHa<½U=iêÄôÏÓZ);\}–9¡ì×?›ÌWŒ¬˜v^lf§å=EX«¨é#‰k¥5 KEE,“MEIkò%šI CÔNy<áM¹þ¿™ïsÊX61ÐãiИh$¦˜5> œ)*#– Bº4UK÷Ž@¢X$–ŽWãÊâOø»÷{,Ë—)Þ®¢±Z\Û?>:ŠHÒ±áªÂpÙ!0‰ ˆb|J:‰g†8*édZTªjj¸fˆ Ð4´MÌÞHËŒ·êm—¬ßpI¿‰¹P舩%ƒFV[-}_ÝÝb}| ع‘@!]¥ŽG ÚtFnYUn7»È·R–%Œ±C¤´m®úÑ›K¦úû¶ðnð'=d},©ñ/Ód]Æé{.À;¡vv–þi3èßp|ÐlQ¼NæîvŒÊbæ Óz¯mM­ˆÒ·:ˆ`ocàÀïiŠ‘A£T«n—µÜ·‡XjÛ»„Ùfšif`÷äê×u±!MÑJ“náà §#[9`£sc¥6Ù¾V±{~ÂŽÒ­+8$§ø°$7éód¦ú‡®ò@ÏÊ•¦ÊÿÆç=µZÁ ú~Hù[߆ˆôÓ71Ù.¬ûmbÎ4÷–'aëâ!Ú †^¢WÓ}%Ã5¤S}´ùÝç×n"‚:Y&•Ï.*( šV”n³$I}m%®>-ÏMÁ'~0ê\× U-BWbõQbTAˆÑ`k"ÅEMYR¬ñé’:–¢‰…¡Âž‚(ÂDˆ‹îùjþ±¿¼\ÝÌ1â8¸Á©ÖL.Q3Á=TuUb”KA-52IQ*ÕTÀ1#vi+fýïM7N!†ãØÞ/˜«Åm5AQKK†ÇA4/3WK5'&`´ºXvš.T°`U˜L¼Ÿ½YY´–¾j•*? »8îA tñ)˜ËQËfê7°CæêÔ.°>®“Y1¡ŠDÒÚEú•€:ŸZa¦ü+žT2B¼Ðª\ªX:½ŠuŽâYNžmý|s@„»Âìê[J°WIî@¿­þûn»üx$žS‰¯m1_Î7ÓݧOÝÃ!BjK›S¨µÈRFä®ÞpÕu¹â§©™¢`Ë iéééë+Ö/µ®8š'˜#•S¬L÷±,yqßÿÓò<ARaæŸ [‰´Š·exÇqÓ§–»n ¡ïÖðú—DºßJ‘iŸ4`ûšíÞwG5=K> ‘<†–8#æÏ.ˆ7ZžPÐÔÀóR=·‚xŠŠE“™ñ‘2:£uén ©ãV–Ë)ñ*À³\°Guc~óoÀb3óÁDÕ"GªH·b-¤’ ÈØ‘ëÙFqSbÃA„…¹Ý¬Oà8iõðfÐg5KÕ¡E⑯k÷éæرó”ïÜ–eT7…ä¿,tܸ u-mVêiI —<Æ:Qˆ:˜ò]¬C!ë›X_ˆ”BИ“[5ÕÖ hé7¹ÿÙ ø˜êPy¨êƒ9Ø0:Å´—&öQø-}¢UšJv‘K¼²Þî-ÿ>Íæé;ÙFÝk$¥¹ºVÂÁÔ[ξ“}-aÄ)Ñ•¤m2’Q¦³ËÒm©zE·°]Ž€ \‰2|+DHì²GfŽehdt‘WKY ˧N—ïÃñ<0âyŽ£­¯ª§¨ÅÖ­«(éâP.Û[<óâ4ýªŠ¦¶ž®á9u¼˜þ.·»å«úÆþñpowÊÓUŒ6J¹(ê)1>Ƶï‡ÕQÕÃP³ÇNÓSj2Ä“Qɦ¢4õS(jßËXŒÒVš8¢“ ­z3B˜­T ë[ "¦´¹ÂZgQQ1SIi•Z5Œ¬d3¦ºZ>SyÈ׺•C÷¡ˆm?(¬CP¨ŠíVm%ÀØ],˱»üa>jìnTŽ5j]Q:!þQŽ•$¶b4êû_U¶âwx£›{Çf倛ëÚã׫ÇÕÓÁ¸æ,‘sïü‘V[¢4š…ÇC mótðÎcY»OòdŒ_èÒ|ß;¦Ö;ØnÜ4Ìâ9UcmˆBŒ€,|ó«P{ØóñŠ¢íRBKÕrëóXô÷‘¨w_ædyˆYÚf}DA€nÜÅVA’;†’÷«É)–@ÂW¶Ã@ÛÔA°Ó¤xð²¾›”I”)Ô¢ U¤Õ{¸Ò4éÿ㱋˜‚¼ç)á@`‹}¯ªÿ†æÄ÷·fY)Ë¡ùHòw‹$6Êúôuwu"&¤ŽA'N‡ë²°í}:õ‹/U´’7àÆuSC‘£(ë¹ó¹—½£Ö{͘³jÕ¤‹´2Wöêœ9$äÊ”uQP¹†èX-l´5ñÁ¬‚¥,úZϤ 6À+›-M“ƒÐˆaË3 °ŠZ9$¢£§Ž1OI¢™©iáš;-1ZI`ˆ(=ÏõüÏq™1ì0×â«àxµZT1Ÿzd¨‡]<“Ç ¦ àÙE1ÀÙ¥äDZ)ðiÒµÆ+T,6zˆ†`Ô)%% DÒ©ž²©âj]0§ø_èîj÷<¨þ$ÿ‹¿r•Ùƒ)aÕ5«$ó=]#Ö`õ52Ô˜L²×Ï‚Ôáòâ2^ž>[×µKCñœ“>ncá‹“ãWqþÌ=§ŸM Té®8·nJqdú¨Ò¡hår“KÍ#'Oy6j=ÝçßÛ›[kù»ÚÚÁlœÇH_1æÏ ÿùïÎx dö Ÿã&mïãÿNøün¯;øÉ›wÞýÞþÛ¿†¾M=FíüdÍ»ŸYþâÿÚát_á&m¾‘áö{€~›aüdÍ»°·ð÷‡‡«|šM—H¾dͧaáöwæö®-ð9¼Ý?l¹»Íõ}žãPÉÌÃlÉ›{†À}žØWNPb¬¡9“6}ùÿ¯€>=—Íþ2fÑoÿÎðÕ”.åx$¦tÄêñ\r•à—HxÞƒ¯Ä(_ÍKS–sRÆôôTTðQÑÑÁ -%%,1ÓÓRÓSƱAOOJ‘A"Ç 1ªÇj¨Šû-_Ö7÷‹ƒ~ãø]‚ŒXá&¤áì+ñL=éûg#´x]mȲöh‰ŒŠ¦0T)$•FÉâG”8dz:Í©Ö$:ªº(‰yQ<%çhQ¦ Ë¶N#{Üf<ØÜûûsæôOø×'WÛ&mó¯{ýžõðÁrqÁVóeˆ>÷öÖù¼<82shà|$ͽçÿåÝÂéÉì4’WøÉ›v'Õü;þ†ÝÜð4Ý›Qþ2fÝÉ7;{ýmÏñâã&êÕöÇ›|ï_Ùïþ\jøÚ·ßá&mñÿßß0ÿ·|kˆøI›lmÿ¿¸ûOo7GÛ&mó}_gx:²s@üdÍ»áö{»ÿø Ö±l™³Ç¿ÿNÿç߯£“šúµ_á.nó½g¸!²q7ïþ1æÀOyè&×ÚýÛ[¸qBñäº?àéZu—ƪ"gYL«Û`Ÿ’IU‚b1Õ ˆ,y(±wý3Þæ-ˆK“¨¦ªÆýð5í5f-4Z±G‘ë$£¦—zl.RÒ¹§› †ŽZڅ騭’áAQB>1˜©C,*È­(¦ÅâçÌÊçQ6ºŠƒ¥§’FE <ù&,‹š,GÃc!B^,;¥‰äèVi] ­&©YÌ®îÖøÞn¶\Ûæ÷Ûì÷Îx¹É¤ß¾ù6 ?ý»êÿà=C´çî·Û.nîü½Æù4ïkÿónöGþžðXd÷µ€ûeÍÝÀÜéï_>5¤óÿŒ™·«ðÿpàs»(9“6›w÷_ùø»dÖ7Üÿ3w®ÞÿZÿ?äÓ·qøI›uÀÞÿ_ÿ>9®;¿Œ¹»Ãÿ¯é< d㱸þ2f݉ï·ðîÜh9‚ßU¾fÞÿ_Ùîý†üXäçóB}²æï4w³ÜiøtØ |#Í–°õÿïý<Ù3QkßVaÍmÞ-ãŽûwøûM?œ™·ÿ?áíÇÌvâ G“÷Ê„•ŸÌÓ8Õï ÍŒ»Ó=ÖÜÚvŠNYxµr¤thQr\:`™ç]XÆbrîæ"¤¾.Æ®ͧ«3S®©´Æ;DüÄ̘VÃðÌ^v¦‚zFªJzhÞid4¸wh8m,òÓƒÕTô‘ÕJ²Ôó&cUReÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«ÜÍÅ„Ÿ =äÿÓ~óö/yý÷ÿòŒS´v}?ý‡+‘ÿ›ñ~‹½¶ú£Ç¢ïm¾¨ñè»Ûoª@ü£CþeñèŸ ~Q¡ÿ2øôO?(Ðÿ™|z'È”h̾=äÊ4?æ_‰òåó/Dùòù—Ç¢|ùF‡üËãÑ>@ü£CþeñèŸ ~Q¡ÿ2øôO?(Ðÿ™|z'È”h̾=äÊ4?æ_‰òåó/Dùòù—Ç¢|ùF‡üËãÑ>@ü£Cþeñ‡yJÏùS Í“ÓÒbÒåúJØŸ ªÁ¥Â*2kšjš[j*‰è¨k2TUUšlA®Z èôQËè»Ûoª7GMˆa-‹ã~Õô•q¬´óSÇ_QO$‹":ÛJ“s¤ï·Í ‰43"˱:ɱº†I#u%]Hee%YH ÛÝòOôþÃå/ý¾;™ñ)pL6¦¸­E\4)S4QžÉ@µ3üZTb5f AgijªaŠ8ä‘Ò6Âs.UC2WÐÐÍ]IEˆÓbMƒbUX}%}N _-)´X–+#Žªžhà V’õ¨ãÆ1y~AY‰WMbÜš:y*ªeÒ7<¸bv°ÜÚÃŒ#6æ&؆äû¨ÃRÈÙ‹ ­Äðú]MTu̸Ѧ3ªý7÷p§ø_èîjãɧР›ú;‡qåGñ'ü]þÞ…«; MQäbALÕ<„iñ/‡tKMÉ2ØÉ]ÊL/?-,+·Û)ÿô¹åoö›ŒëSU#KSQä·1ÏQ+áuxÉ<¹N²Id|’jüžFfl.¶ijðò{%L4NÇɘı<â9c'axn«§¤íøNJÔØu>HûUuBÅ+AIº‰Dr´5¼¥bgÊFlËx¼y«1bÒÏ1 ¯S—±Í1Ç$Ô9z†« ¤Äé*jUÃ&Ähq|颊ž*‰×âÇ“LÙ˜1ÜKå"£É{ ²ç”ÌQ–ñl"Lz¨ÃŽaµñ½4Xfe« –º*H*f4 æŠ*1¥ñ°L»E–¡‹7f:ZÚL#¨Å²õf)OV©]Šåªº ïttpRAMG,±ÓÂ.þç’ ö)pgõ‘Eø™ÛK¨aª<¶HÚÆýI"«¡ïWPÃp8òkU•ë㥩9{'ÒâáyòŒý£à¤ YV ”ëè+©*D±@j1*©š*vD¤ž#5m;% &-ŒÖÔaò ÃSGo(™*X¨*fC&gDZÚÌ' $i%êéäíeE:**¢uŸ ‹6eO'^Jj^§ì0bXLÇ6aqTIJò%ž\¡‚bed f«Åªé iV’½8×eŒcɆ$FXÊTØŽRò•HôôT˜ |›™ ’ÄpŠü?A¯äÑWÑ%hªq!AO®À°:Œ·„Ôá|Ê,¦¶«|>>ÕP I]\ïUUJÒšŠiHÕG$#‰4Äžç’ ö)íóúÈ‹"ü Ìí¥Ô0Õ [$mc~¤‘UÐ÷«¨a¸y&ø+‰­'?&`‰‹{ÕäÃ3ùL×_M—²øu¬ø‰áþòVDdq*â|Ù±ßËìëÌUyר­Ë˜VYÅ1LF*ï"™ß!AÙ©9 RN'š1lKÄI¤jˆý䊟µÖ Ñ¿*’t|"§9æÌŸ•2Ôa¸®äêƒÂ$Æqhè䊯\㈚¥ŠŽ$xà¨l·„ÓÚ&åÃW^Õà&rÀó;QF0ZlÙðrZZÜs§Äk¨ªh寣åWIAMUŽY%ª¢7Ãz¨Ç-y©äÆ/'9ãÌu™›1%cËõ×δ8†Uz ªŒK2Ë#ˆâƒ › h©å¦ªÃÎO71¡É 4CË) O“lñƒM™³ vpË9Þ*¬»Ÿ)*ÂF*pl½Ž©šzš;(ø-4t0/1Ôa•026_šŽ’¦‚’\ ’–‚±å’²Š™è`h)*¤åšJšhÊÃ;Í$’´¨ÆGv%Óü/ôw5qäÓèMýøò£ø“þ.ÿo‡âX®ƒbxŽ*O…Wâ]enRÿÛ¼R¢ÉŠÉ$r(ttq¥‘Õ®¬¬¤†R Øñ%_Ápœ ŽZ‡«–“èðÊi*¤Hã’¦H(¡‚'¨’8bG™”ÈÉjX„P*0üJŽ— ¬‰ «¢®§Š®’ªxj)§I!š'4r##ñÀeòmU”‚¬2v^¸ Œ:àÆ'[‡GYŠuƪ㡦Jœ]i)û%*âs¬BZñMJM58ªiD4瓘úxž|¿–rþ=VÕS`ø6†KR/ªÓÉEM ÍÕÕñ…·ß¿ˆñœK*åÌC„ÆbÅk°<2¯ˆÅnQŽºzY*ÇaËÓ(Ña¦Þîôÿ ýÍ\y4ú“Gpî<¨þ$ÿ‹¾èòOôþÃå/î$ÿ@1ì>RþèÀ>Ÿá£¹«&Ÿ@2oèîǕğñwÝIþ€b?Ø|¥ýÑäŸè#ý‡Ê_ÝÓü/ôw5qäÓèMýøò£ø“þ.û£É?Ð Gû”¿º<“ýİùKû£ú…þŽæ®<š}É¿£¸wTÅßty'úˆÿaò—÷G’ ö)t`Oð¿ÑÜÕÇ“O 7ôwãÊâOø»î$ÿ@1ì>RþèòOôþÃå/îŒéþú;š¸òiô&þŽáÜyQüIÿ³4u¹ã(ÒÕ¤¯ ”Óæ,")¡–!!‘j#j°Ôú9N¬g _šÈ…d•ãuŽ„2:0º²°¸e`nØÇºHe`YMÕ”î#bÜßþÇÉ?Ð Gû”¿º<“ýİùKû£ú…þŽæ®<š}É¿£¸wTÅߺÇpJ, 2au8ûÛã0ÓF§ÈX&åUO%-dŒ$’*YÑZJx¤”5ÑÑ8\; Ða˜ÆF-_‰â°V"WÔ,³¤‹…4´Ö¡Ð!äWˆy„Úi0ŠZŠò$M€Ó 9}ô— £®­÷Ò{‰Öšg¦zl7JŠj‡§®WœÍKËŽ4âY©³G½î)à¥äSá¸@BÁST$sPTQY:µT’† M,ÒCJ`¥T9 ¦9FÊÇWýz­¦Ö6¶û©õq‘²½4ØCdŠ|:™+ðüN©â®— Ãéè©+§£Ž™*iÄ %5ªeä<•–j“‹SK[„×O‰‚—‚’£%DRœ:%¥I%Õ5<”Óâ]³iîðÔsM«²†+‹b˜¦>))$•¸•LõmËŽ©j(%’BóUQTUO o&Z†§Š¢™$XõSÁ³ >5_…ÔÕR×á0a´ôRÍK3SO&S¶WÒ—Ž¨Á…r)£qUÔjV•„¯ÚòÞn¦•em(à³ )ïd‘^Lf˜óÎÚéÂŒ°^Ð÷¿V7CÌ48ÆCŠÑóS—/eÄ)¢«§æÇsË“•*kK-q}¿wäŸè#ý‡Ê_û|“›0¬Òøn—ÌGÂMdnëa¨ªŽŠšš.ÍP¸í1v&Õ³Äc§†"½©BÁû$ÿ@1ì>RþèÀ>Ÿá£¹«&Ÿ@2oèîǕğñw»-ED±ÁOo4óÌë0×’Ydr8ã@]ÝÈTPYˆˆq *º ¨ ­ ©†®–` SËžxßK­fé`TØ‚8¢‹ªŽo'•˜bI…ÑÒÍ]©©$…檨©‚‘ˆÅŒi•©i+Þ˜`†–^A¬™‘ñ:,¨ÊÙ¾¾º™iqJi(± Xðå`j%«hÒQˆ5<>÷Æ;Ácw«†ªšX!ˆÔa¾ûbÉG]0¬ª¡§Ä«c¤«–5ГTD³¢ÏP¥ß®TmšúÆ.@U¾™]ƒrãn¶°æ•m~pü9‡®Ê‚Ú‹|f²ÑZ÷$+êfþn g„®±Ê#¶·Ô/`¤ :{»õX›ù£ƒÊ^ Ì£˜¾,¼³ñÚˆù׿®Ý[ž4éÔAB(Wιðï6¹Ò/n4ÈΩúZê/«k9@:z¾QññÒ8ÖšùßÈ£ØýâiÜwZå‡ákñ +¨x¶V½ãUÒnÅôÛ[K¤©ôªùÂ>\€4¡ƒóI{‹]ž«ú¬Fûøj<6b4ô8t"*<2a#‡¤{Èã²WEQtòN&7Œjå4ETŠL"–* 2AR'­Ì”b’¢ž¶‹LüºDÁ±<:² I¼&¢©g›ýÛ⢈T”‹1QùMÍd5t2S×a¸¦ ØFÚi' MQ†ÁMEÕII5(ªŒÃO=T©]/4¬pD¼SâØ#IŠaµJ º9VX›`J5º¢š;éšžP“Á%ãš4‘JwÉ?Ð Gû”¿Ýãù(_|‚J¤£FÑÍ}Ksdß—MH&«‘C4tÑÊèŽÊáØ^f †Š\7‡hÀ%™h†XšŽÑƒb»§Žþ÷Éïµ (d¨W²ÏtÆk±l:Y+r¿¼x. MïšUWæI«èëRƒ·Ô´òªÑpzš¼oJA-šJ:7¨1ÐÈËœð l>JZ†‚\·!EU\4óËM%_‰EWdëµ’ŒQóZ©ÞuNO€‹%%.2Ò§½.$kð¨éÝŸ™.*#‡«æS¯/DT§Ek4—š€DØVaÌÏGð¿¢Æê0ü»…Á]Œ¸v'_‡ÑèšCˆŒ6Ž¥éR)*«ªM厼ÒÅQÙšGfН,WÍÍÔš»ŽNÐ±ÒÆ+`½rvˆdYZZœ6:cG>­cXež¦“ÊCÑÓá5:ÞŸðÙǽ5%ie§¦’ªª¯“O. !¦¬«I¤ =D”Úž eÊØÌ{ Å*“ ¦†ƒLXÆOSjz¬ZÚç§ÐÍï.Ï éH)êƒÌqoüD®¡Áñ¬*Ex"bÅèeñÇÙ¡NÛ|I*¤ež™%[Ó~þX£¤§®–žj LJ—§¦žºl¡0UÇAôÔÍYÏ¥’· xÚjÊtXãÄ^§®ï('~±öª1I:ÒRRPÀ*+kª™^ÏN¯$êÂ¥”½UM4c#›ÌhÑ×Ë•2TQóÞ’tš )êh뢎)g¢©‰Å„ð¬ñh^jw¯òÆÊç÷Iþ€b?Ø|¥ÿ´¯Æ19Ö—Ã)'­¬¨`Ì"§¦¥•´ g‘´¯Dq«I+éŽ5geR1̽Q,Ô‚¦Z)㨄ÁSIYÇ$”Õ1ÁdäÏãCº43ÄêÇWû<éþú;š¸òiô&þŽáÜyQüIÿp1ÌŸ…Rbš­N9SWTŒ+ 循Èè㪦–ví&‘ÐT­4Y¦„F¦xhj³¶5M‚f&–xk(©0|rji>>CGQF´°b¯Ê–‘ÎæÎ:¾r˜ãˆÁ¯7eü£Äüžb8}5X\´‡œipªéë gƒÆ…m./ âZòÑ4jA¡šWx©–¾«Du/WODg•`вd§JŠˆ)î#‚®x(éâ’¥e‘)éÕä) aaŽÓ,3éÐH²ZÝ2ÕÜJÛÖ ó»"EUf^Kõ9Û~½€ÛcÓ¶¾P8sÆH$,ë¾¢öê%.<îØªG+J.¢£QŠöaº‰ÿ°°ç’y*&ŠþÖEÌšD‰9µþQà‚=NBëšy#†$¾©%‘#@]€>îqÃñ¬£_–é2þ&´x=udu‹?Lj±8®–JŠJzyÑR†ž~eÕP變Òh1É6jÁ*(0iÜ&©g™¤šM:¤snxäáxÄ©2:´O.µ‘d«FÊuI]Á·vZªzžKh—‘4srœ‹é“–Í¡­½šÆÜbÍå-QeÊÊ\AaÃÖ‰›—ULÐ+ÉtjüG˜iä vت=O0Ç1½,¥ÿw€}?ÂÿGsWM>€dßÑÜ;.5yn•+qúl-OƒÒH¥Ö£Š—9=,\°TÌZP¡aÖœæ´\Èõëš³Šºƒ´Lq z¼ vÅ£«SáUÔòÒ„©ÁBÓÔA=2Ç IsRÕÉ<2SG1Šåü:l ¨Äe¯Ãp¾\ÞóV¢Y)„tˆ°ALjZNÉG QQµ=0‘„"GŠi!rYH”x<–ºéB{Ö5#~­'ïA¥Ò5Ç$rk¦0ú€è¿š÷ÛNž¥ÓÿdŪ(â‘$Qg}ßBž†VQ«¤jÔÌR·¯Àñø± [+šjŠŒ††*C.‹ËQÆ©¨ž”G†WskjkšÖ‚«LÔ´š§«æÕŽS×T@™v\fÜBª†jYýô§épê‰iKTIš)A%;s$´‰ÆX”÷Gäö‘ÿýÆqm¾qm¾߯‹¾cǀ𜗠™êß©¦¨ Â°ú|J¶¨+:ZŠìVšöš)ÞgæÅ®AËH¢¥|oÅàJJ:ã…á´æšº±(µâø|ÕUXl ‡-TrF†e¢¨—R<&žò$²ä,KËYvL& 9iªè°Hñ+ž¢¡ªëc¬§\F·y)¦‚’£Ä¯ ƒµÇÙærë.^‡9c' x§çS4‘<†)ãÓ5*bÓBø²Ói{¥å.°z؉5yÖóooÔJ”V‰YYœnö æé!EÇšl@àw[…Ó°Á–6mV÷fï¿x>[ƒsnF-BàhÕòů O6ì.{È\ƒ§gZš7tUÜu;ÛWp ªÇ¤·Ë³«¼¶ Úl»Žc–±Ð» ¿øñQ>¤–ÚQRE:¶¿pØÜêÛPmøæ(Ž#r X‹’7Ô;Õ•†Û’/Â]ñ(°Ú^LJ´ð@’RRN"<§ì‘C’Эæ•¤‚©,òÅ:DØN_CW‚@ï*áXÅ;VÑÇ,½Ÿ[RL'L4S…ì±V­vššžÌjæç®ÉµgÀ)b¤Hð|O Áê䬕>6ªjùŠUÔ¨¨’F§U¡¯¥QML‹IšWË{¤ÌØÍ/?u«¦1b暬Ã饬†8§ÓPï™™«TÏÍ}@dz /5\Å0ÜrXbÑÌÆ©²îvæ‰%v™©¨£’[·,Óv2oK¥}ʼ¡ƒÂë‘cª£©]QÈDš&؇ŽXfŽ9é牒jzˆ£žIcGVBlO ËòrïM‡E¢‹ J©^u|F­QépãY4²Ts+牤暩˜G(™¦Ã1l&L©ˆ JÜB›™ˆ¦+CSE‡Rµeiíbš*¨)¢¨©4ýŽHÍ5<’ŠC”'À«*)°Ü:¦®¦¢XðT¬£¨®Ãê#žy«*{BŠŒ!a™ƒ¬ôÑ=]£jÁ&žY› ÁŽa Ì¸¦5G=~%G‰µ&U—púuŽ› X0\·‰ÓQa¼oRñãPÏ.&9Ö¨¦§È)i(jÞ˜j–Ä"¼eøÅ¼›ÓÓלcÂW­«1Áïv‡\.E‚7Ž¡êy¼¼Zœ³ÍM !Õá4œ°øÓü/ôw5qäÓèMýøò©†c8~7ˆK›°Œ.‚…0f‚ŸG&“2ST5M|•PχáXLuT”õ“Å¢IRñÆ’g§XËHãæu Zâ1Ý«pÁ‰#B}MË–dÔÂHÛÎØu +¸$÷zã–¡ª#‰ã’ÂßýYÔ Ï[]” "Þwˇ÷°1¤ŽÌ§Vå–2±W,E¬Ë}†Æã‰ E—œQÉo ßX¿™ã²„:ˆ°ÓcÅ-âag¹ Øì²_ªâÿ9½¶àÌDÅØHØ_}‹y “p{Í´žDV–-™šáL›úzW}‡¯¼Ž$HåÈ[ãQu%侘׸깵ím­ã³Óó ´a”Ù4¢Ü)2>t˜s5Ì#_yå÷Ø76¶Þ6¿§++¾°à ,­s¶›Û¿¢ÇÖ:½tÎyw$ÚFvplG,7«J“{ÛðÜE¸£·7~žËÞ¿||Ѱk÷q$nªpÑÕ°{³‚¶kj oópæâ>pXí%É K.¥ß¥†­×Àp¤Á¦»Siù>¹¶¿M¼6ðñåI6…“Q”5µ|YЊ[ÎÝñ¿¨Üß„mbËe»˜£¶°N‚Òoàkž!Iuô’ê· †ÛèB¨%¾«"!mkï·h‘–œ¡Õ’†GKFäø†-¥[Äì4´Bê‘"Ï×ïº]Š¡#ÂÌH¿MÃeÜÏuE:á8•$Õ²ÐÓÁ$í†Í'eÄ)a§ª–8g’§š²2K |`¼‘YP̘7i§¦“%AE5=bÄ+)+)snŠJyÖšyãõG,DK×M<2°YU¡ÁfÄg¤Äº‹ ×ËÂÖ®HæY+ ‰«]dxûd¢J”‰¹ '"ÑñS<Ë­ùÛAE:R‹é$’߇Õa/ x4‡–ÆòÌÚvßV’ˆ¶Ívº| ñ¢|Tš´0Ru†[D45´›èS¶ƒªàØmÝ£CòXM+§¨lFÈÙ~ûnÍU•M5/š©&€’;"›½ÅÎÖàÕîò2krÀiè[ì)"çbwñÛŽj7Æè20׋H&Ç}­áÝmÏuù²ê]k¤86Ô-Ý÷Ý×°nà8Õ¡Ì#Xº3Ž¥¾‚:·¸m¬6a·Æugˆë benð5[eê=Äw‹¸,²¾ÅV(Ü >ƒÐNë¯{‚qâME:Æö¸u[̶êÖîm½ÆÇˆätY#×µ€ÂQvnëüËÕ¿qÚI9^a1żcãv®¯Xµ¾Ìî@¨Ó©âe¼Vß»úMö“Vü†“þ,w6r÷»HŒ ·^û›•Zž…-"²Í¾€­¤ÉßvÄ@<³ GLµ7 v^_0]D¨B{/K«j¿*ÁO%ËX›‚6Ñb½;ìZö6º¯eŒSªÙˆ%%—N]îú]µ17ïñ·±åée´^wJÜQ ukµ”ñ…bmQƒÀ«i18æx¢Ÿ³â8|±ÖÑ%á›÷Ô(BJ“£¨"HØ\q”³^g¯¤¦8œù†¦²¾D§¡¥5XÎ ™ äX)éûF!VˆÍdA$ºæa×'Òd<ã…džA…±Jl?àæ#_5%"öJJUÃÖA&®ª (ã¦ÅB‹T& µá¼ûÙùJ1¬Ã$NÕ±Ó:„õzïqԱŽc0eÑm:íÞÀ6 €RN×õžÀAp¡!R7ä†b|ë¶ÿ9áõêç=Š*­ˆ{ì/ß{|“ê¿F`­N•C1ÐEõ.÷/`F•¹ÿhq$¬é~–SæôŽëißÀßr ûå·R˜¤³1Ò”u&úA¿Mûº-Ýá.™O2re:"eq{ÿ§bz»®7àÁ;*†ÝÔ]õ1½‚‚Iܨ\•ßn(ðêš¹ä¥Â¹ôôžOS%|æ$©š¦¡¤žBº™´£7&(U+q¬ ’Äie¥Ä»M-*ÕñVÔEU\’&+OZ’,óB²;è1 I]Ov£Ëx¶ƒÐOZõòPÑåܹÈvgÕ™ŽÕ§RiŽ Ó™!†1ÏUàé\¯A3Á.zL*©ä2FÎÒv!W2`cŠU(ê4“BíqQŽ`œØ^5]CQI_]%%+SQ]E-mDrŒRš¹ “USÁQ%IN{2[™g”, 4ââpÁ˜`ÅÖ á”T5pÔÓáØ…ÓkÃb¤¥4újªfÑ%+Ôëu&£–«òiô&þŽáÜVHºŒ‹Ù´ £†3[¹FÍP=û©gr&’@T¿Äó©·Õ`·ºß`»cª$+Ëbye u®£’Ú”:µ¹ÅXðBÙ¹Ò²kkjuv°:w(Ja}´t‘“ÎIy¥>ô›ÊæR¬¤6óX|Ÿ9n9rO¸RVì7uЀµÀ@vR@$ˆÚb¡ £$$$ÙE·_ãxjó®6,#“ŸAÕÎ7Ñ©·+  ›/q?|;мÈ9$Ḛ{€ÆÄ ®§êè€^.ªlÑH 8ÒI—΋_¡ô޽:GyoµSÉ®§™PÛ"¶êIkZÄ‚ZüG{í%ŸWÉ[jWÓqÓq¹ß§ƒ{£,šN‹rÎÞ}ìüÀ·+}ƒ\²HK™=èLk0ÒSÍóÈÓ¬øz¯ÁM@†V,ÂúüâÆÛ0Svïµ¶µ¯n#Þ;Ebœµ*Knw°³yÚö ´«rÑÈZnvÈ"êšGOòv¿É?ÃIDs¬BÌF˜˜þóÏ_„]À>™V•9’4šoÓ¥6#Í[5¼ll}wXWDE¤Ybæ± ª °k\êRm¾×ûÓÅ´Æò,¤ÍÕç…!eU_Ûpù&ì ½ÍF”BŠîèY»Ä‡…õhN¯ÜVÜA:B-pR'*Lúã+¢ÊÇHêï{i` ¸¾-IÍFݼô?ÊѤY†¦%޵Tk3Ž›qÊ­ `è‰^ÑÜ©IîB†I ’”Ô,2¤=WhüîZØn7ï>Šh•df®à3Ç1!§¸(&þ;ì ¸†)§×µ¨²”]:µXÜÈ>Jí¿p<(¿òqêR›‡PùW ªÄ‰ îñwŽ@ôŒÛª–që"ÇEö7[ð‰$ܤ‰¯±¿:ˆ?| ÷¿=ˆ:b]zœIxÔùÇIÝ•IÛqe¶ËÄH›&¥µÝ‹Z÷%´ü®ö¸¶“¿K"ò™fvÖ\3l]ƒjÓdi×ëîÚv´ÎN\JèÕplÉÓ~¯éÛ…fdƒšœÇ¾ÿÿ/ÿª¾«ïsnõIãšò•$ ËîÌB¬ÞÄk[_Íqp…ª)ã×PÒ¦ˆÙŽÉ{Ʊê6 ¥™@°ùݬVC+ªI?ó{‡}ÇÍá{ž ,d¨&c, g¸]ÕåaºÄ¾}Ë 0GqÇ ›2 ¤MÁ²èî±S¨w÷mÇ6ßÊ-8n‰#‰å`ÃB‰æ—¶³Ì ti:MÍ Xë¦fŠ5mÕ?}‚žxå”0¸º‹ßzˆ#ÒcÖyË(»#5…}ZH]ŠÝvóÍ<,ªÌ‘T–ì5†Šú%‰@°ÓÕmÛR4Ø9<à´eV !ºË¶Öå!»®“·qU!iãi{@ï>#{)nÖoq¼b"ÝRÛSkvRKﱸBªýþho7瓽[X±±¶«'ßm~)Ö>\†2%~òu)#CFíssªàÁ߆{_BhuÕ j }6Bn=Aà ;ñn[´šQ£acgS}”éè²VÓqq±ãM]µHŠÁ“a Ò@HÆíÌW°e¿sò€â']FÝÍì®-½›ß}w ¬cî@¼Ev`ÜÂnH(ÀÚÁ–ã†Py_ÙCwŸ¾ÕÁZs~q~v¥¾‚î¢ñu =,Ì/¯dwÞ`ÚÐ6÷o6å„–¹;[×Ü8äÇ®*}6•™M•WkÖ[Pn×pÒ¥£Ž8üTnÛ·Œ„_¦Þn÷õI S¨å¹,Y-!m.‰u±^]þc°õñ){³Êa‹^‚¨ª«mz‹*Þwˆ¹ /}FE!b€.ÌëÒ½'Xé·¨\pPhû;u#“mB7ø³eîê°ÄóÒÀSG'3K†yމzUnÏ `IÖA7é7¹h•£NTEÔ(–ëp€aòˆÔ–#¼oÅùa8díÞøvCü'_BeæöJ¯÷~vŽWÆhרa¦Ë48ŠÔR¤Í-.?£Ñ¼Ñ“تÅ~!D®”ü\íGÚè5oKWQüF‰‘•ÂJ$³æ¤IDÆÿöРi¿ríßÃ;d@ºIT̹T³o·¿ëÔ:¤B›]†¯”¼rŸ#^KõÈsS<í,«ø~ýV6¸é'»‰!ø ñ̰øE”µŽj›õ{þzAc§mBËçZü:™w*ºo˜2Ÿ|l[Œ|ô2Ž¡`u›†·šy™R´ŽÚaÊ&Ú»ˆo„^h!4ÜzíÆ“‘Õ¼ß;1e; ªÊ~wEïçXoØ2F“ ³‡ÌyQ†÷/Ëþ0t{ö*ÇOp^"Q‘ÿ’!º³RÞ×ÛùÿJ26Ȭ¥~å+õ[¶õ¿vÜ(ø²=ÀøG”µi"Ä3ü ßm­oý¸?ÄCÊ6è“(÷€wû?âmúGôßàK|aäøE”‹ ]‚ðƒ®ë`Iñ¹ßn"VÉq BÑæL£®ÊRãofÞÌMöØ_¿ƒüJ0ªfL¦š£Ü‚Çßáy Ï0;·E¼\|Ç¿%dÊ'–B€-ü=p}[›òwâRÙ_25¸)XÈ»Xãã¿×m휘d`šVaÊ@Aã éê'¸±6ê¶Ü*ü CbýÿÊ`žFãJŒÀtëùÏOVÉ Ë „'Â, u:XØŸºVã¾Äذضɫ#¤qÀ%™y™+u¿*@"œnB‹•Ž” ¼ˆ·pdL«9ç1= Ì9lU²2‰­œâFaî§÷ßi ·j^U¤l£äë2Çð7ưšÜB ’pìÁ¦Ž’‡0Ô¥Q‹ Å– ;T¸=E)ë©æˆü{DS–²¼¿ø—ñŒC6Ì’}ò‘š»˜\2AïïâU)¥ã˜³IÉçIv¶ù¬ï«­|ïÂÂ|¦+7RÙ.ýÝ× ìOüÇú,wâ6Syf!e)“J¶âÝDfΣݹÿµ¶àßÊb6¢¥‡À®ý)¢ßmž qfò˜$?ÊäÎaM‚ٯͿáü$ð#ÿÄ„M6L™fK_Çá^ýÿƒÖ8]~SÉ*AR2qÝÛ|,±ïõüÛYyžSI à2qSÿ…gÆÇð€{Àâíå<»X-ÎOq°¾Ö\Ú»ïÔÿ% å1TK÷¹/I_úHÍwÛäø‚/~.<§õb[&³_¼xæßœÿçÂ#ùO ¨-§àa³Sÿw±ÜxºùPb*òv®ÿÆ¡¿^S¶*ˆ@ÉÌ·UïNmë÷ƒŽ¿)*ýàêɆææû·ÂÍFײutŽîá£ùKRÿ÷/{X€:³[ ¯ê¾ÂürO”­J_˜ìryÖäøkøUpx\ xDƒÊZÆê*#Éš{Èaã^ö"ÿ9ïáa_)º½Ødã©”’H$æ¾û›êü6€ÊZF ©Ð¹.ËÓó Ö?ÖÜjÿÄÐýzÛ^M-~ o›ËÞ/}÷àßÊoüC"ÿÇA$›)øUpík÷mÆXò{€ÖŒé‹ã9eñZ%4”yx2™ô§¶âóÒ|E6QVg’¶n¾JBeUçFH:¤æ‰#øM”Ö=ÖѸÓ¥)ã`GÊ$Fr(ÕÈ–'ÂL¥­µ­ƒ“ïÿá=÷¹áˆÉR%]´øO”Τ lðýºC66ÇæÛƒ ™ú”®¯„¹KeeÒvƒÿŸy߆גVXäP®ßr˜aakªœÂFêìÞÜJFEÕ<†;æL¥ÒÉþ¿q÷ì£ÇŽxÉm¤©qð“)4/ Yv÷ü=ì©sp,-¤ß‰4ä¦]úË”[ú—ßÑqêê|üBÒd‡ŒD®¿™2…ú×çÇ™|å_ ÿG‘ä6]vÌ™BÓ õü>wpîØ‚;¹c$‹Ì³RפCÿ¤Aðb/}Ž‘ÝÀ”d¢ò†¾ù‹),V Üø@N«›õp/·Ædgæ‡óPeÒ ÿë¨xxïÃ?ÀQ¥ÍFdÊ[«;3wãÝÝEG¾÷»€Ç$’ÑÂ3Raæës˜N¥¾£¥@·Nöºðuä61ü_H̹JÄ©mM¾`ñâæÛÛŽd™1Ѷ”2eß(+qÖ[èeS·É¿~æ¦ÙÚYÈ*Í™r×N­%¿‡À¿UúE­aßÂórLÍÖ¬Éð—'h:ðíÍØoºíý7&\ê®Ä·+3eÖ°Ò7Lj¾ÇVǽmmÏ äsñrt_3e/äWN€ßÃû› ÿ_©ð&^Í<— r†¢šS¢ãEÖE¯ ­øŽž ‰ÈDnÿ„yGºÆû.>v»m·w‡uùŸ.6ƒK‰ÒaôÕ‹àx‹¶#%#P!цbu“€ôô³>¶‰a­:Ñüš}É¿£¸wTÅßty'úˆÿaò—÷G’ ö)t`Oð¿ÑÜÕÇ“O 7ôwãÊâOø»î$ÿ@1ì>RþèòOôþÃå/îŒéþú;š¸òiô&þŽáÜyQüIÿ}ÑäŸè#ý‡Ê_ÝIþ€b?Ø|¥ýÑ€}?ÂÿGsWM>€dßÑÜ;*?‰?âïº<“ýİùKû£É?Ð Gû”¿º0§ø_èîjãɧР›ú;‡qåGñ'ü]÷G’ ö)ty'úˆÿaò—÷Fôÿ ýÍ\y4ú“Gpî<£ü%̹.öï‚‹ßÜgÂ{gføQÚ{/o¨§íŸ´AÎåjås¢×§˜—ô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ã gú|RŸ4åü $KI].P­Â±¹UgÚ¦GLF.Ñb´uÃ5dR%,‚P¬Z$“ìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«'YÞžzŒµ—ðŒ±Š`µÕ™¾L+Ž¥Â³¼É#Ô&)YE<í‹ÑÓ@ÓUÇ$•La\Ädô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ã¡Ë™»,cõ±g|6®Z<±Z¨éS̰½L”ô5sÊ”é,ðDÓ2ÖI¢BÚ¤@|š}É¿£¸whÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íb4™ –¢Ÿ™ËÄ1Ìr…¹°Ésð¼kÄ0Ê«$Œcí4’òfÔC¢¢(¤OF™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî#¬®òƒÁ,tëL©‚ˈåªSI,¡¤¡Ë•¸Uµ¦pÕrÓ½SÆ"…æh #ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8¦¡¡¦§¢¢¢§†’ŽŽ’ééi)iãXié©©áTŠ x"DŠbEŽ(ÕQ(ÿÄ*!1AQa0@q P¡p‘`€ÁÑáÿÚ?!ÿâN³(1Œ0 ÌÃ@fÑ`üE,=Ôç€Ó2µnõvÊó¿¡‡Û ÿõB*5Ðy/ ÒØ&(ÏŸXƒœÍ_ƒ¡ =tס~CdTÌÿFnM1`‚¹W’=ÎVבˆèû=žoíº§Ê>{é>ü³@GoBfi…Y­Rþ¤ÙźL‹hØ]ÊÖÛ¨ÂüOaeÁ #¡"î_êk¨ò¾º ̇ ²Ò˜< ¶ï^ƒmF¶-Ö^n'ø³ÀßèQÏñOZýð”₾nߨٯ3]¢èÁëHÐdSÄ Ê%gUåG,¡Ñ×ÇøJkz :¡ÐäAiâU—ÃÒï·EÄJÆÝC7X?ñ¦/@Wß éSuá@«P´ô(s¡uÚí€j|`ÿ‡îíðש 4,¾Å¯Ó_ÍÎr{ÿî©ç¿ø÷˜‘©Z–Ä6¯rg9³?IÒIÿã<炜ðOÕìÊÓNoK ó8ç©€r ýâ»/<.aüÐðIH¡õY§‚z KpB |PJƒ¯BŒý B%€¦ŒïŠÓLÆÏ’§'Œ†1ŸÃ•‡? *'(¯Ì/þÑ{ð5þö£Ó¬ òP o–·øab`éž›àûŸR¢°À±$n놈Ô"šdÿq?‡!A]ž¬PBÖ,;åõÃdë/§Ò+)…‚·Ï• ,?óJsÁázΈ’Á1\¦+&‡Œ`%‹·„ò¦²6‚ÕzÐïÎ%Â%,%õ¡/½иÛˆV Åþv…XÔ}ؾĈdh_¡Í[ì·¯!UáÌB:\Óò;Ò†ŒX8UG‚´>4‚U™3ÓñÂ2#cDÉ>’+ ÊX‰¡ˆ<*ð‘ …€ðO†A304Î+¶ËMz‘³¹ýŠ’ü<×Ö™MÓÎ.$V°È{Ë"[²¤’?d:dš3!õZHÉá:{$Høq8j9®µ ¾3 dð_УX •‘Ê> ÂÜ|Ò‹¯%~­"wÐù/ý{ØÆ?2™ +'Ä òGêØZÄüT!°.bA?n`’š*̓7ÚºÈ þa¤P!+À¼ã^ÑYã)µÝœÂ*OíÉeÿÁsÀ‚¤²ÔríØK£¹[ǪWÙ¦æq Úç¯ï:ágY _8¸ ¶È Ñ7$DÓZ§òÇ-Ncìªi}‚ôЉº’$5€ô¸Ù‚)Tð[?œxSöŒA„*WŒ Tþ­²ë뤎G Õ’DA< Eà CRP#~;@BÅò¥…Di(¥a6î)Õ°ŽAz)sNd4 ™F‚3¼µÿaªû|æý”;Æ‘¸JJüÞ¾'Ħc¹_ÖB^3åf øõ”R,$Ó;X‡»‘z-Ñz9P5cÚâ$÷ö‡!á•~H8–R¾ Ã’‰ R¾Aqœ"æKü‰´j‹OËóš ¿ïQ„& p¶3¦—òù•íâ:œp°6)X'ùsþ¨XbÄ “õ y *§òš^æV¶‘Û-K¬‚Dy þ(Mȃ¶Ž‹ñåˆh«šËdà>€¥|ú9à+¥õÎ?³FÈ1="8}F¾)½T”e/ÚÿìèõvB¼vFý@Oô<ÄÕb¼ˆäB0…¸t°”Âw^ ÉÜð„â~—¨l…±ôŠ©ÓÎ$|+à‚2™3/ñj0I…OYø8r+™ñF¿»°ÔOZ¼I-Ý»áÔ‚˜õÄ*„WÉI­žÔ—¡dZ7ŠYÁ†gd-ªŒ€° ˆ$€€#p’ªeeÂÇ`°–«ûp*ÁðvZXj0‚r€éÇ!„zè>¡â· ‘úµBWGö.DG¤ü+œò…e‚ÆåO†*>&w)è¯+¤b…Ã#é©rÀWänÁ OÄ%|+}ÿfšÜBŸ½ Œí T 8ÁohÚá1MvÎbš{ ÌÑé… 0ª "}‡†ÿ°œr‘„pZ¨Y†ý‚MÕ6Ts„ߨ²«E)Z–¶)(K¬áyºÓ›XŒ‡¤d^"A€VXCM„VX*SÒD7˜é!‡I‡D¿l‘D » ‘g#~ÜM¤Â %gèü@ÿQ ¯žùÕN{"#YðŽ7Øë‡rÈDÙ™4r e+‚XŸÙ'€h¯\ç]4ÃãÆ3¸ùž0¡ƒ"ƈ„Ç2¡ <¥ˆö«Å aij¸4ã_!cÛ¡îì¹ÜÛ–e„TëF~ŠL›š«ÂŽ¡TbÅ¿jl\0ÿÙXE'ÂB#OiŸP‚«i!#GáEmýT‰'ç¦ô-ØcüÝá¦úQÙ²  µ';{£´Çpಭ¢«?_ìÏõÀæ,¤êM²°Èvɽµj€ÃxÑ‚›mÏÑJ¾K0Û«SV` ã"m?Œ(ÔÇ¡JÈ”±·žk`©Ìs{XH¾à©HÛx‹Ð ™.߯E9ˆ ÂÐÞaÔ"8Y-§å©4Q/ybóÂ~TDW1Ø^¹¨TѨìàD‚‘…k¡®juçE˜LtÎ]{„Z †Ì.úNÇxZ^Ü.ùþÆMÏ `ZÔô3–€ðÁƒÔLÍÞ˜d0Éuh*%rN“ŒtÇN¥²ŸMÊpßöÂûJ.ä× FtžlA¸h™@Š'mK:@¬•´N}\¦B4Á|d/°f8@V¬‰mû’ÿ¤î(%v¯ãñv‘êú/$Ú øÅ&I Eë‘;Ô25±e¿2¡T¢+svÉ|W C‚çß?ÒeÙ—fNßòÚ `pE¬:®[ì÷ž‰üÿ»×>ºiŠ·Q xXZ‚î¯ÜÊY&³ƒ*ªµ¢Ž@ÃC3ÐĨ²2˜PÏ´LÐQ´À6! LÕDⷯѿÕÂ!œ-ªµ+'mÒ4ÑÇ=9à¥ßºg ?äì\‡ðÚF[~•;Ú¶Ù@=! Ó{ÁöÜ’9­ÿi PÜ:~!(¦Ú\(^ÆÊ8Œ§c¨YÂVªU\$žýäâp;ûÀI¨l¶QÒ„@²ŠŠÓº5é^ýîM<*^_Úô+C÷Ÿ±8\íÊЩ1…^Àú=¼a¨r&’EM@¢šÁDt!òè.’KöoyQe')É($mŠO‰`VÜ|ˆ&7H>.WaØ{^é+ȲKº!£Ñ«ñ@W )`¬\w¹ Sc°ô½I ûèâóŽ1ZZ¡­­ ¸‚u'ö*{›ø™$¯+'ò M©–N3Ó2ïMÍ?襆"ÔÛ©„#Ñí'9wMc]•úɤa‡{E%Úã CŒP•{TnÉæUÀ-½]Ó;–]‡kÂÏò<’–;¤Z©P¿<¹ã¸‚€´T·@*D!¶&¦Câ †¶ Âq"5øÕ¤óÒ Ôc°*Ÿêži'Ø*Qá"“êüà|•ö h'l^‹©pI“È …+q`ÂIÆiıhäêqŸoQ¾R6°qXgÒï\ù8°P¤ˆÜDCšÜ×4,Œ3B°ýç‚òØõžOdš1&U@ÙŸUd[X‘ƒüm(”FEéi†q… ¨(!í>}„¤oÀáßlö=“ñ_LÈ_-¯4‘M=Iqj*¹v1éWDç¢QZS`1S ‘Ñ!y¨"j›wJâ<§~‹]0ÙŒðÂŽ¼¬•ÊS™ÉGMƒÌÎæ|4ìE ÀžšpØ(¡f•\y¨UŽáíÇíÜË7÷÷@œ›¹!â¶•UÉ' \·$ˆˆÌ9 *ÏÁ?”DN…¦ %|tý`‚#]„*­’D¡×£}|8´Ø¡ À]HÌžpÐ è= Cމ™LàUþ4µpÔQûÖ¤H™H+]¾j Ùœ`7ýˆ ¾‘>‹“Û¾%¸f’ à»@ÑY_YõJ;k’Ahô¨“ ¨õöc ú¦lbߺYw«*¶Aa” :¹ @¨¬ºæ° DHýAö84*u‰mj€üâ–R´J>“LXsTãç@ªJ@/ñr‹l›1‹„à€V›N ÄÐÓy.€æ$Â)ÇG˜Ô=ª'ðw¶>a"~H< ¤€WšŽ¦œÅIÖuÿóÓÙÅpV0&QQ/‘7Ó¥=—WÌÍ$äýðç­*û°µ²lh¦³Õ7híj®BC9%ÀÙ¬-nÍüb[Ç(ÏT¼I ÑBí,rRUÂéÖs/L0‚G¦y‡ÒˆÂ¼XF‚z™X>“”ù˪P‘‘MxL±¶þa/2óÅM†vD?öŸ:k m2âê =vðx‹HMB,ôQ.šHÏ(IYv'8(Þ‘ N‰’ä™[¿…¥øáYçk*ö5¦dÿè€0Äóƒ…U®9«ølýHðú3©Ú-FÖÁO¹6qo¬³ä!Ú¼a9pÞå˜ÛW¸.¹¼ç’Q«/Ç¡ø+¨*Yaàv›Vóò› ÎvôvœÜËþsQªÔMª'Á(fÞ}:ºƒruôf; Aª¦ #B2ò -mˆ—±€Å7àÍâ#Ø<0‚˜H4VÉâªh J?ÜWxæîÒ=£•ãõÁaân¹²œ•î¯V„ÆØRùý–²ÉÃ| e8¸~æc†ªt‹-èóTuVWÍVàè'üéŘOgV…þ%5µtú„.…ºB‘蜔‘•ûåDx”XÒ‹Ú:2@¼¿ñ9\EáƒÀ F§þ#Ã5Þÿ±èCéõ¶b÷GžîƒTÀJø ï«äóšQ—Áæ¶Š"?Ë.£xeŸDê©¶±‡‡^.#‰_Wì"…D¦9 D¢’ƒ áô*ýV,ý^­Âb‡üø†ª­wüÞÞþŸÔ²ô$A§’J×[hiõ¡ŽbK ðËTÊœ÷<ô܉cD©¡Œ'µÎÍß#ƒÇðêTír]"ñ ·Mý‚! cøˆn'% pAgÛŒIýNG¡½CL0?ô,qÿˆLWˆ^¨n‚2ÁêäSÙ—±=T|ê? `&_ͦ}˜^€&Zõ™aϺ$ZïtNò‘¯ùÇ– f„ýZ<«£#LÇ;xM8`ó 8 )dï- » †OþЛ6&Ä•à©$œ†ê\|ði Ý"ÂX¢BTWà‘ÓÚ@Ä´¸\[爣X¥¸½CÀL\‰¢ƒÀÀ€´ ¡BˆSÇÓómY ˜)Ðμ˜½ˆ}U ¸¦’pMYO;¹¡'¾ ¿\ J·ßU%Vö•lj¸]”ž @h%Y—ô ¡2òÖásÃmsünH¿áuz„¹Ž0Kòn!—Ño þ|ßR)âhÀ$'(Hm©AþA-¬çd,‚jаâ‘;Îrë0(CNSÂóX¢±~¦×=IŠ?Éös@rPNm…['=Éq>Õ G¢"Û B³ñ,t/IÇÅ®Æ"NÁk&›5‡þ«›ãB±ÕÃvåf¹ÚU*Un³ò4£›oì[¢hBƒLvM@êø >tZIê¼m¥H{ã¥[ ˆˆß(§ôSmŽùh“a[°Î@d¾¦0"ƹ½ë5F1¨%Èxë95˜Asÿ£ZÃÒO‚†'D‰Ö‰r—ãB0VÀÜcSˆûC–ÑMhNÆÜUšˆ‘+²Yøˆ0®ˆ 'Fé(0 EQP9’5ˆãþÇ £öC‘>¢AØúpîØÙA¨ò+ÃñÙ¤éEQÒÁ)õ¹^’-iu€)¸#KøD)ÚŠ0p`[€G­ø ž¸L`Jð.Äìö« iÛ)šW=;ßùŠÎîR{g—GÎEêµ/….d%kMwíÇ‚äcAé,\"ÛëºÄÜ'Ï A €« æR>ÀL”x‹I4R±ëÖ‚¦ƒâý(*ª´¸¬³’åø¤oª° !á_ÎÊþã ¥õnPXÕ;î%(@=ã1à4¾Q’2«çž±.ÉÆÚwôb¨¾íâ8˜L4|+×yÕWˆ[«Ë”eH·l¸+zÀ},rÀŸþi›=ÅZ]i|˜]ÊÊ.wÓpȪ [ÜÐêrñ™ y¡@ŸDøp‰\ " Á”m‚:2´B0§aE‚TSCÖÜEΰr˜r£‰¬º©Dè.Èyí¡¡=ÑÐÈŠ%cöµ\ÀE¥û†9JP_:Ñ:Õè¾æÝ<+î¾°{VšÕúœfHÔÔáU‘‰)(BÄŽŽú@‚š³Ð,5hþi—VeXAGkþãZÞ~`W³$†çŽ(ÖˆQ(iü>á gò2j{ˆt$#Ÿ â¯äA²ÜéÝŸþÆO ÿr’xN" ;`dïk±Àè‡hlPÌø2vM0¡\0÷ÿ¹­Þ 8×¢—~Ê~gá2ü€ÙQì•Í­£Æ’±°á¥B¿~ÞÁœá&é –µ_W¾emà!h*TGy™È%r)}©h OÿÔ7>ûïg[  @` 漫ã@¤Kò*úú{ÉÕƒc…¨¥üSëÁT¼ÚÙo”g‡þ¯~BŸóRÊ”ƒ[aÅN¢ßŠE8é–ž’R@U ¬T6›=Ƈip‹JæÔqN$‡™>T° À’Èôž£ö¿Ó¼CÈ…–2@( vÍÑt*úFzÃx /WÇáâT ðQ¨©þßúÄ€B ? çb‘Â3$ ãßNƒü×áú~(œ+Å~?[¯DÿÒ á áÆšc¼ŠÍi(ˆUç#í3åìßòWh öˆ°îˆzb^ jZ¸89WŸQ}F®©m9ÈåE•uýäÕ"*Ç“]$Æ®°¯¾-.[:•^Šé½ñ’6ÀUnöás§€ ¤[ëÕÛí­¯o‰€rÑ ¤ßþˆéjІ%‡âÿ7¡ÔÓêa{4ï­áˆôñ>kžŸXÍ¡O_dÝ÷˜,è1¨SVƒoTûíõÜ+¶¹V0ô÷€<þ:¦4Î àŒ† É*@ ”Ï郒ƒ6ÓšÜpÀ2²ZÝ|H¶«…Y_þ¢$×å1…ÜÏUðSž sÁNx)ÏþSМIÝè 8páÇ8páÇ8páËØXÉë*˜ÿãÒÄRÃÝ[Á·iZJÂÓåÓå‚mˆ ¬.ÌÏÃq;~ÝKU_Ó •(Û÷9WO §"Ÿ y‚ç[/ôX²Æ?ôÃÌ‹Gü3‚ž¿[?¿UüF ð[ ßôªœHõ¬8u&üZG¾ñ4¡+FÂÌÚŒ!ÿ৯ÇÏïÕ€È<ÅÃ7Ö—É—5îSúÓÂ9d‡zŸú?iCßë'•ý ¹gaß9Û!×8ëÐÿ|°¥âD© Ašù¿ÑÙ*z¹ô²×êÇ"Er'ˆK/èí^xMƒ†Þ™á’Ê%x‹?ÃC5³‹,ŒQ¡FõC©Ú¹?]–‘຅êz•è|Q¹ÿ6®ÓÒÖ,¦j®h GÿÂxreƒÀ1Š4(Á˜•C|]²‡!ñXPùT™ƒúbL€×S‚³÷)JZ¬ç^bR¿O G-ç©ÿªi0ì'8&Áµ›»WºŠRj“å€- šw¦£/#’ùl0ȵG&Ø<ØŠ—~?Œ®ø> òáž4"NI†¨%_”Çöñ:ñŸáŽ-¡tI8“þ‡?búجç4RÖ$ªIè"ŸÒX´NøpAÇCé]$à?Â8´>…Ñ$âNSúý‹ë`³œü|wJ^œT9Ïf ] "%9Tì ƒIÀ•áœ\=2‰ O+ÃÛRŠi0?ý‚Ÿ,Ÿ,Ÿ,Ÿ,Ÿ,Ÿ,z;2®ÛáÏ Uj'ñê„Gú€ÿ˜D^W Dgÿ€œ9>X峩#úœZ8¨(ôC'¡Hø–¨RKÒÞÝê<º3*Þ!@.a¯JÐ"=„ÈÔ@‹ú´·zZCú(M!m›䯕~£u¼. èÀ1ÅýØŒ­ZÁH©:•¢,ï*©p›-ŒpŽ5C\¹ÿá“9>X8ýç%úm»нds3ÌŽˆmè¶^Fëü(6ÓQ;Æ÷_VÜ‚;D<Ç`J¢s Á‰ë²ƒ?gA®&3˜"„NÃaV½ðCúšaâ‘ vµ¢†—f—Bð夕•žÚ&Ö•(^…è3¢„K2P(œ€Â Ï œþ,vdDtS«#¿¼ÓLhbB&‡§bÝÓ:™Yö±Ò¥íäÇ Ã®Mh.¾ÅÔæèÚEg*¼…þCQ>ÌçÂ!îFùœ,î|eX*±œ‹³=ûŽH˜¶ôÛ?½æ„rž¥z ˜v‚äílòF¼mæô2ÒC|gYÀ¹•k<óêǃܰúçßÿ ,k4ª(` ˜,dè Ò ¦pàUGC…((?»>X4Â*”äðE: ¾H\•°Ã觪œ} »&5ÏVQ¶ÂÓ:! e@4LÌñOH2ÁSP´–ˆZ-©IÁûpVëýá/Ìâ‘[Ö ØQ[ÑJô*’•¿õLWÙq4Î…Ý À“ÄC´¤0–RdA¹âZ#òSÝÀ~˜ €ðû,^Ã0âáPÂŽ($AúA Ê×3åÑ|\?”±áo"ä¶’ƒG„úDN¿ÕÿŽ<,¼¥Ý9“Ý!¡¨ÁêŒ$0k{ek!Y7QC£ž`Qÿÿo.TC×6*íKÓŒ´5\—¯Ç¯Ÿÿ¢ûA¤ƒÅy©³Ù…/IÓháØÍ{!ð#Æ `Å øH’G ýÑаʴ”¬Dñé¬! L‰=(Ðì%q0p ‘V(Â×O–€Ísjna8úÅM QYàÒÆ† ô^À¶YPùQÔsQ$6®Ìœ Ö{¨KÂ/W¬VøRÁQtsâW?|9ï$9ß‘®AÙLí[$™ÑñŽçO÷ILi!âÚ?gÉ?Õ„Â1ƒÙÅð ñ^*ÿHhó:~“8¡<¥ó«Àå¬é»žò¢©%&¼–P›`Ž’ü€ÎMŒ’8=w–f |Úè2,ïQá‚Í&߀:Çùk~,I£ÙÁRî‘;PÅyÐ Ð “¾êM»¸ oþÕÇŸ.1ê‹óï^ÉÃÍ'Ü=á ‡Tà¾7w%ÊÏçT„„|Áu#@X­`‘>‹2NA›eÆ ~EàÏFV«µ­ÞdKáYhED‚…Éá›°=r°‚µÚe¡jVÀ>•fŽ?ªºø°{y1À0šUä[&´Ú'òŒàäê4f’Ô~cƒî#íÓ9Á#W B[—`V¶1hK²/¥l´0HU“™¼IQhW’¯¡ƒM礲³0Ó„×¶ áíÛøü„(òÙ+ÖÊ´’%ƒâ6o,½¨G¸„Ie½D}’ªå¾‚4вC±fl,¼{í¨.$É^è¼OžJ}˜$ Í×½Y8Å-èTJÄûŒ§r&{¤i±µ™Ù-RÐô·IàBe7hM±¨ú¢LX)£–‰ð™Ï”~ôóâU0COI±IRؤ)–‚\ŠJM„hC#P PO…§$³Ž€° )}u °¶2h+‚ÚïSì²ý\þ&TTâ`.>ä|óMÅv,s|ýj©0x+À½·á¼…” ¡µÿ¸Fª¶é$~ ¸„DêXC0 ºÅ^<„}ÉOð‰ÁøP¢£Å´úðêÁ+œJþ»™õ?^'&ì™ªŠ ñ£kM(™QÓp?Va’×RážW4 %a÷Ž”H¼ ÒšW]  Qþœð£•bKôœã´eç¬77âXêëÄx"2—{Õ+x☖#z£ÖZKbƒóKÒôC4ª¿#…NZÿô°¯â[ã!>Á§}‹^ë¼Æt2ÓlJÓž¿ù{ 6z0(½F²¬¿ K¿ÒœámjÏF‹ ¡ùªŸ-8P1åˆß¯'HNÑâ‘€Ï.¼1b¨7Ê‘½h<ñ&A™k@óQ˨Ân^кn„·# }>©Í¨*Óeq2 gÄÑ%O¥\½h t>¸ƒ€y‹E}jzEIàÇÛEàÿ±Óè\Lå…V¸£Ê…:á—J³e¬[Ò"¼“¯¦˜ýªœyØÏ" z^‰|#/\õ ªˆŒÞŸœ×*½«ÌA‹c‰âút(¨ 6¢"ü«©ÓrY°¨¨Ý†\%ýÐÆ±$‰› 6B‹^¾â b.¬7ƺœâî j ÜÞüUÌ„ÑQÖÅjÕþ3ÕŠQñlJ ±n»@2ö-cÑFiÀ¢L… ÆÂ ­ë„¸—‹¥àu*J·‹ñoNÔJ.T@)Ö'Bø.HÐÍ\%q-§Qè;…qmnz|` 2£Š¡úÎQ6ÉV›µ* á†X¸-MúRÅeÐ2±¼¡öĽEª\ƒƒ¥¢©I»ßw;$e¤’÷X“?‚¬æzQ‹”ý ƒ:ìüJ_;&…7M2•¶ø ažà¾À ¬ùŠÑ)At˜CD„þœ¯À<Êdl­‚Qˆ¨©ç+ñ CH² FZi0>ÞÉ 05P쑨èCÂ|íyÖe´z'fçPTߥôÚ?z¥* ÝÙN´µzü5ÍP”NŒ˜š§H|ÃÒV¬8 ]`åO”°ùÔ(yÀÂcj»«PÉÓ ò8HŸ)S’„^yÄØ hµH¤¹)Ãîo˜°Çh¨¹¸ é ¥Ðlk'´ëÎd™n %'‡|çÄtÙù@áÄNWb3¥Ã²«¦HíÛpCáøI­ACðÊ·ßè[õ): Τ‰tÛËôÛ®¾ã{ÐYÂ0Ú¬o«’›ÏÇ òùÊ<°Û|¸ý¯ú?ÑcKzIÿu9WªÁ Á×ô"}ª7= !* HÈSŠ_ì!¶6@ꥫd"~Æ«:@!7A)h+¯CPà@ü¬C‘—dfC¬_ø(·…aæè0Þ<½L‡'ò¼{†ó'À>Õ/DLªÕätêAN´FVêÆîÿ2‰-Rß§@RK*1rc ‡˜)MÜꔉ ± â`}SX,AÁD@àõã"® Ù¨Ó‹7Šd4g«ãÓ‰'u»­ªp$[ëª2jE,”†øXýS) ±/ ¡5ˆ u€Äº)â) Qx%$O £%b,ŽèvÌŒúL|Ç€‚m5³jj'èµ/Í^RÔˆê{™ôPM€Ê5 ðI|”´ÐÇù¼-ò½ÖÉYAÑ °ÛñŒÆ_r5M °Š&@B¶ßVZÚA§5ÐC)xV5oä8­šb.ˆ8á²àƲJ£¢=éÕ¶$¨ôKùóþ±à@-Zð æÿö‚òX†ªÕ0‘ ×V7-„BÚ¾ƒZ¥ (?hÚy¦Ñ‚΄h« Þ 7‡ÍÐÈD"P*ÙåXØæeÐáçG‘tPw 7,8ßQ Á“…Êá@ {‹0f —?¹p2F™€Ñ‚{d0ÁçO‘WŠÓŸ M¬[›‘õ“‚ó>D*óá«çõó¼€:·°D¼®ÖÍE_£.àÙÛÈ€UrC$  :º "Y\m¯Ü¥$¥5¨†ëù^¨„ÏÛkQ0V]k1ˆ@ƒr \A µÁ"a¶Ü‚6¢!p™0²8Ê—Âh€ ¤0ïW‹ðoKUù\œ *Ó@½SŸ«àöl¼ úÈ·SQÏcƒŸ2&6 ¢¤—´w¦ÈSÖÝS€`HF8¶W|p(Û²9¬kJ>Y†ã„\“ébSËV&÷s+¿¸H”—¾Íêœ{$-/Ý”z‰ççIOIÄÂ7Ú=ß².Lúðâ œ´ô(µùÏÿhC™î–!?oEø/˜„–¹f¥PkNav*|,#j•½P)$a‡æÚi @Aᢠ˗p°iÐׇ‰D<T§ ,ŒðEñ~ „ ‚‚‡å¤'Z8– hd¦ÇŽ-iPÃ)ö»Ô–;I;l`<Qc`€0¥"Zui‘ÏÐfÓcÞÊû¼ ¬^P- PGÀøÀŒygA/ÙW¤WšíÕÑtåcâ-ê9.}¹æÆ–6å¿?‘N´fâ6¨$­| }µýýŸ ÂÑÊ™D È©¸´C\IéGض–§á]4ÉŸÿ$*䜒g׈GG˜xOá‹S-'? ºD·ƒn«B#מC ‰ª*˜bŽPÙá¨Ö¬’$fK(;UV±Xè $‡¦ 4ȃ8Ww%‰ªÕuqeʦáêQ0,x8~iá‚X!Ñ&ÃPj›€ØcÊ “=]V™XÑC– µšƒBÅD!ÕLñ $@cÑ[·6ôûþÆË‡'ˇ'ˇ'ˇ'ˇ'Ë&!Fë.\¹råË—.\¹råË—.\¹råË›CÓž³þBd¢|ùóçÏŸ>|ùóçÏŸ>|ùóçÏžB ÎÀ&&X?ÈL¹råË—.\¹råË—.\¹råË—,‚ü+ÆXˆäƒ/¾ûï¾ûï¾ûï¾ûï¾ûï¾ûï"²(°/ÅT¹råË—.\¹råË—.\¹råË—-¹*­þHCI.ûï¾ûï¾ûï¾ûï¾ûï¾ûï°¾@ 2-OÿÚ  OQA( € Äû®#†€ã #É(’l©_ˆ@#[7( 1ƒ< Væøj$n^`ThßÉæÑ«€·„‚ÓÄܤ"ý4“{ůE°ôŠô-L  ¦%'ŲëBQfÀæÕãalD‡jZˆRåªÐ¤^‡ÈÖÜuQü¨CÁ Å !È8GAƒ € 0à 0à 0Ã(  ðPE0€€J#À À À((<  ð ð¨,€€€ÁP}£Ãܤˀ@0c-àØ<¸ÀpÎÄ 9‚®Yפיžëf½·‚Ȧe¸*§có¿ m^½-•1b¬yÿp€`±r`I%;°wWƒø€€À 0à 0à 0Ã$0à 0à 0Ã$0à 0à 0Ã4sÏ<óÏ<óÏ<ÿÄ#!1 AQ@a0q`p€ÿÚ?ÿ˜„´Â+¤—½öV¥0¼ìü¬Øú)œÜV8”¢ƒWS¬ÛÈèDú` Uçõ®9S­>±»ÜäÉØWI1\³¡$Q>Äö}:áOþˆ„vOð\Žt€4È  l%Á~Ôd¹žÌXA*Èr ¤2£«éŠ‘÷?18Hd X1ÍÖ3£©—ƒ¬â­þ±¡ þEhYaPÑDF"DHô‚ƒµ¹Èê*|ߦ ¹âþ …+B<`¥ëò뵯•iGl ‹\ˆ¦–PvA¿ îÉïe^e\5r~Pòóiš\Ç»BHÐÄ6H“ɶëÇxWÍJ;ªŽÈ«ñã* Ï}ʱsK~n†%¹ázj¡\$^lÀMÀ «©.8n™ Q;¹3<þ‡˜S(t”°vq×­¡‰Ô›ÊþX¯ <ß'Àœ!]ƒ(PȤ"ˆÄG¢À‡”žY§6>3§ûYEOЇÜÄÞúlè·qŒ8tÄrx P9ØAlœ¶ô b5šæÅÇ«ä]7Ék±H7€ ?ž/v eá2ó"fø¥—sÊΔ2×¹°PòùÏÞÓ,VãúÓúÆè€dKÇXIÏUl/Vã .ÛÚ59Z†˜Ð(èLEînV@J‘kNs‹éÍâh¦:©sì m§Êibe€'yf°¨ ŽËý}ô§™Dh ¢o5—)dp§:-QŽO,1G Sæ•¿ªX fÂ#ºÞY0\<%ÆYš,Ž‹nÞÚæ€E±4 Ž_·E†dÌ!do¡$‘#õy³,‡­'8†)TzÞ}?®Á"Ð/^ÒºƒðÑ™Ýj–]]FJieÒI”FÔd.DfáË'eV³é®µØH)u¶·ib‹‚Çà×ШPÊ»¿Ý0·hSñ:ô)0L sb ñ‹x!xèj4;:ДL½N(Mp >â9 ¨«JÆÐNü–UÿÍGrÁ„R*—¾¹>š0ploYð¦×?AZ>á¡„äWdÛSò&A²u ûY› Оi¥¯WsX\œ!Râ\Yy¿Ñ&uPÓ‰Ióãä‰ÀvÓ+Iè¹Ed¿àÇI”dÖ÷taZPñÌÉ÷/ìæet¾&c»Äm©NoBw̪÷Yû¤l$W+1ÿR+´ kz¨ÀFÐü”zÊÁ¥jn,'ŽåñãS×9iå—``_V^êþ³&ñw¼ö%E§¤°ìü!`ú1oˆ˜øÀØ=Ãбt&»§ñSGðû]F[–ü(dÌ¥'HªD.Í@=¥âÄ@?ÑæAì BçÛâcä®çm›¿½”0;7 >Pw¡¢ôz‘)²MkF <Ðâ€-¦W'É*š<à,‹ÕHÝ<@!]¡ëÞ§ù¹cÀ ଼õU˜ó«€@½)‘f] ‘vÿfabÈÍ|á 5¹•¡2ù’±hCæÁm±l‹1I2Ìóé[ô´Ýc:_,W,‰òr`†ÏË¡hâBÊ5j;2ëÆ ¼y&´8®C‘2„ÄŠÅ£´Ê“ÉǺ=9U'$ù%ô@ hÈL¨ít(?J8};Ý*_ñ ÍÂf‚!´––ú¤|K;Ê6ëöi¢€jäQ~$™,Æø³TBøµ_‡ A£1á%ùµ¨ëIÛ%e€©¸,Ÿ,¿ü €¹¶¦·zAp…Wp^{D!@†û‚#b\¾›ZÔ|$ꞃB@Í©îæDãÞí’E Þn*ŒâºG‡|e×äL—¸ätsÄî Ò¨71@Q”P…® »¡‡ÁŠ«eë9åÊ‚¨UUVüšÂ'RˆÄ¨$W[°%êˆèY 2L(&HENý×Jt)'Õù£÷¼ãÜbâÌ8=8nŽÍ;PÕ€% K%Q‘ˆüBCû‹;ebHªªªª«UzªõWªûôm’f„>¤ÄÆÊ ¼Ù4ä­Š«G|Çž„´¤¹]EÄâ°,˜XIs|ò¸&RRÐ2yƨøè¹Ò*p¨A(Lƒ½e,JÊp©í i(¿ ìG=£SY"˜i$Ä@@€ XTWoD’ÕëP­ UUÁmXö-Q¢0U฼`o(KÒX¼^Pý#P .xV/ J#E:­ú n¥÷Û@|¯Ð‘0"P€ý*èä-/•y³ºœ„ÿÀåVNë¤s2~È ÙK`¹=¡‡ÅŠ•0»P€îÌjž8Ëu² ‘ªÚ<§”«ŸSLQŠhOüi—ÈMYÀsü-º°¡Žƒ»AøX$ÀìV·¡˜(¡ëœXPMXð±–Ô«%„ ÌD† C#Åõ}äû‘A Œ1Ýè5àr$TJoD~ím©VWPÁ'[½\@Öº4ŸX%KI™P„ˆñÁ (†ñB!ÐGÓàfë‹\4Ã2­sºµT‹¨ÿ²‹¢5úž$:>…Ž·k„G!gȶùÀkg³å ú1EV«ªdÐo1ìqª:IBD‘ŽàðÑÇ ì4$€-°Èü œL"ûð©Eà¶ÁÈÕ >¼]s>²O¹“l!òŒ¯5âÒ‚ÈfDah²Ÿ5)$à½ðËk)yÍpåÔVE?.vwžä„tðÃÞ4™¥æƒÈæ8œ“Ê Dq1]„åô[7Hgc»Ðì§Á÷°Šð8òѳ÷c$‘‹‘,§…'§È0b@+”†Ê+iƒ‘}Pi'‡M£4¢)la,I1ULÄ7Á‚ÊÁßf½†ƒ¬zb|"ß)z/ ÙÙ3¸BsoÁ4Âaéd_ÒhcÅÁ ʅͤ']?t9„cäÚy© Á˜esöqÞå_`„Àd]…aèƒÒqÕ}Ƈ¾Q$¤y5—ÃÎ|6c!0Iyi?ñ¶Œn{¤CL-m§°d:€x 5mK©…Åîs†rbX$±ó "m‰ü²Ê½W¢QÏ%GÐ<†øIã 2•ZÍÍbJœîræo^C\}_ó/ûrvÙFÉ™?C¡2ÿu43#Ó¶€G“(§¹ ¥0™CË}4¦äb/Ôç·L«à‚Õ.N&¤¢01ñ9‹œ#¹Ñ5uèŠÕ…É ‡O#S6½ÇrA¤³BÌf½ÕˆF—è’¤kÎ8T–ŽI@î¶;ƒ*%Ã[JûQíÚ â ›µðÔM¾#rÌ™¥ bÛfçѽ©ŠY"+u ¤8—PÏaöòdr”ÀÄí1¾øÆŽb*±ŸŒTÇó%Œ‚å4yÔ·RíÔU4à2¶áb¥ìO“ÍŒ8§Ï}Gƒëkþ÷,b¿>rû,ç™uà °Ô¨Èåaƒ…‰º»ÛËlÝÆÚ¯XuÞ ,o"3\ÈVš¹<G*Ò‘ª„‚›ÝלÉ2HPRka%´F”%&“H>+P‰‹=oK¡ÎUfc!ZÙ‡ /—æ‹Áu@`|(0¹€àXW½óúm3iÁ‡B’Àƒ pµLŒPßMNŒ‡|H©5Òª^âS0PŽ`f-ÓA$X„äƒÅÅo¶ˆ›8if…âÞ|!"àï ÆìÎ4L„¯X†>$µZ€±ãoEJ§ ³Æÿ@=`-fSrS¡D <¬<]V±Ž4'@µa"àS„¿¼†j Ô®l r÷AE“Kt…)±ØÈ«zh_ÅÖ‹Z-¢Wò( ªà«¯”hèž'ïž¶ÈÉ[œé—!÷H‰…gƽ¯‹¯$Ö/T]‚ÄsðŇ€…X ÈÒ™‚]bÿ!kY€ FNKÁ![†’GÒc 6ñZˆ™Imß.q´%Uˆ¬ePyÇ p|1ë1dtÊ¡Ñ)È&ûU±ûï Ô·U‡•ÙÐåéRúWò ĸJ¨<³B KŒ.=+„4€_-#[@•ÑB’j¹B8*8²†ÊÖ!Œb$p ÑÕK!$Væ— Fè£P€ 3˜ ˆ‡$ ÓÈ{¸ „ þCýZ.AÔ* ‡Þô'˜!þ•.’ËÏ¥ƒ¨„nµ®÷nT109´i˜@:JÚ¦Q‘Š!8U¬ ÑOk‘¦ž„!³€·Â,Nãšùs’{FpI ¡²ñÿÀ½¼AYe.Ço¤ÓŠ""A—‰)ÈT’AWR2À³×òFÓÇ`IæÁB¬DØÓ<%h±ž»¦hYmNW¤T@ø*”‚²¶©§ÈDP4B¤V» ÖÜi )Í~­r$»Ã†2ÕS@—'†ïß’K¡D[ ¹c3bÆäè ¯ˆŠJ‰‘ ¨æ XaælHÁ`JÛ(%ˆâıWX-•¤%Á ŠßÌðñKG¯Á¸’DÇŽðVK“rQÝUÏ”•¥¯yÂJªèÜC¢¤’¦`aA† BÁÅOw1à³8ÔG ˜ŠK: \½‘*¤¬3öŒ´•§|ñâdç8êëI?‰˜ˆ‡ÐGAÐ:eÈv´B8&0bd ¤¦Þ¬mn³ÁC[¨º€"|DZµBªf€BÁ·0>° !j±¯\(½–‰xX´…wQ‘ׯ)dYEq}$! )p¬hpp2Ô`QŠP3Aâ‚(¢/a(€ˆÄDüŸÇÒ µj&0+Ù`!¡¥…+Ž‚»Ã>^ZU]D*mã¬ÕD8f\ ù‘.ô‚=ã‚P]”*Ç*s¢°;K ÅPÔÛêˆT€–L '°VdFÊ7‚HÎÀè â²}徉… › Ì §‘T½ad/ã[F ¬Š é5¡EéptË–¨h†¤¨@ŒQЊP€DŠØk·²‚XaÌ×—*WDÂ: °(·qAÈ(+*žš¸¢T†åH9JÒuD±5¢'JŠ›È(‘ÐF\0Û%–E¤! ©€ÐÈŒàlñdbˆÇÐ3ã¶Ô4]H@0ÀÊh¨¨ˆ¦‘¦ švi“S5´jƒ-š^ÿ?¸<3ðf:o ªf†øôWÁú‰áÁXvêµMéÏ5ì&Ìoîbÿ~Ti‰c+eƒ$8a;TÐimµ_W¼óø%§憤/Løbj» .è èÀ×(ªª…uB>Ч¢Aƒ@°EB-úGÕ{özúgºZúxý9JÑZ ¾ÀðÃ*Pdt à‚H0ÐŒ€DzB:  ò  B¡(V•UÕ¼º¼¤  «@/°n`ò€„(ÀΛ"úˆ¯Ø }Œà€P„ðåmjF½7ãÿ£û{WRºS"tˆý°Ü8p”ª*•JUEº§Ã±q„0IDÂ0£˜~¹SøˆÇšTBSþÂ>®—OµÉFS{áµ\!¨•\CJKçAU‰«i¢Œ’!ªíZ ‹Ðyÿ¥W^‰rGA­P/‘CéAÆ9þ›Ÿ*ùR æhiý ØÍʆÇoð¶’&-4…èª*7dBplX*µ±0 ‰ @n2vRøeJà"RT77ìÈ‚€¾(J E€DÁ56"Æ‹‘V?»Ù…+ÑÁÍ]\Båp› …¦…Äýõ,»ìûùþÁ˜Q’‰Åbá ¯ƒm² ÓÁ–¨†¦mpø3j,)“GPqG59Å'Tø½H¬²€éªGϘÆ,l* [¡0id„‡„a‘õiªŽ!‰'P¢þf h{郼 ¨J”D© ú =8è9áÊT@Xp’È8ÂDˆ.ö ‰Fç0a¦/•`¹Tå¬@X2ÕÖ-8JdP2B•` ÔÍ7Í÷ü~ÿãžw„|¢¦ H˜ñÕ s½kX5–°,ˆ#/Ú©<./ fÐ@ÑBL îBà4ÙèD4!}DÀ²Òf0WfZ­cŠª&RØ·ÛJÀ €|Œ"k"€IubS“È'Y‰&°¥Šn%S°Moƒ(B¿¸FäMè±;™€ðn8ác4!Ôì[I;–ñªx‹Š8OWMýdFcV•)ÓY xEcÇÿjœÀÊ3¸ÀHÃ/tÂ~GÒKyB€JE CF"&kêfÅÇ¥)€±Õ>[‚*˜_ØRUÆb„Y° Æ› H l6,;2äØ:š×DMu==ã‹ °•C)®¬ @¤°‚VË{ Ïh^ER€%ßë0@4‡)Ä;ÀB¥Ê© [hAîÙd‘Eß¶|Â;YÕ=]”ްÊ2&ÐñÆAéZ¨X)äØÛD ºˆå*üÑÒê "'_7‡.y~“¨Ý²¥µ¦ޤz¡Ö -&°ð„ÙÔ‡ÈbSx¢GPíU*Ë€#£ üð^6³„3;•áÈA%=Uª$b@ ²µ&SªNÚ„–Ìâ84OááÑÉRjm VÐážaÃSey`è’\Z"Ó² róI+˜6é¸dI >؃H!#;¥rÒ"[R5ÂÞÚ' Ëì!G A ˜‰µ0Ð7ú*¡ ]† ‘†Ò(€¦@A2˜rZÂ" bu¤:çT˜‚G½fPDq é§uä2©:©> ¥ ç•Ó”)VlÔ¨a1rz䙿2ÂkzGj ¦HL«–¡Db .Üƶ a²0Ú-±ì‚k·%¤†@ÎA=+zHpÌ%‚¹}ô­Ò ¨s J0 A%Tû‚³ÏSlé1Í’! í²ã—JDÈ‹ÿEoÿÄ%!1A 0@QP`apq€ðÿÚ?ÿ‰@ 7/s?³33333333331€Ãx.ÌÌÌÌÌÌÌÌÌÌÌÌâ³33333333335°Sÿ_XÒ«Ì«¯Õ5’ÆŽ±¸+~,nœJ0E$µôïÁ_äÖ\ÝÉ4+@¨ÏA.Ö—ðæ'|¦íhÙ4^HçôÅ`¥IÔ1)I½­—ª`‰¤×кThF+7›j±o€·Dær†’)’Gå=¹s¬ŸÃ]ÆCãNû8  ‡EÃUƒC…vÇÃÜZF´ƒÓˆŒfþäϸÚâGñ©ý+'Ф“”$ÃÝ»—µÕ°­qmö˜\lIpµN¿cXJV¶€^*e"…»Øþ†§ †$\' :–ö‘¾KIˆ€B1?(nQ4#èÕö—ÑÕ¬ŒârÞP®Ìàw‚Ôæ7ÈÛïE­îþ%ô„¼â„5#¢†WÄÅS$œ„øÿàÏ2Åÿ¾ß‹÷hØí7orɹŠ`¦³ÿ‡0ŠÆXÉܤªî|Ÿ5™jßkÖÃ8ѧ(¹¡%oh¦ê9ƒþˆ>u>éÓ¢N2>»K…Å¥r@A “8Ì5*@oîÆ—“Ö‹**¦`j4ÏØ1¤ŸàUŒÑêÍcC:a‰øQ™`!=>o¿#F(hÈã{À˜-A‰+ú¤6KÿÀ‚X•L ?2-¼“Ên²Å‹.œ"ÒÜ"qµ*)¨±1UÂu¥â!>7ª‘Žš(£© d ]’—"䎃öÆÙú-Õ¦ÀÂÏ¡U]È`2DÁ7-ÉЇÛá/@•¬K:„"Ä“¿€½—güšbšàèˆÚ¤[ N5µGN: Q¥«.éi8Þø"Rm}’ Ñô 7D³Ý\®(ó0û¨‚žœ!‘¬¬3 ¯ ¾i`lëJ?4PáwJ2Ú yùFQpSœðУ QƒJe¡b`*ñÑ&³`¢Œ9¥AˆúìÝÅ‹. ÙfÐL€5(F°Áh ýqÀÿ|Ømjtž¬i”QŸg‡ôþçÜwƒ_ ÿîL¾†£Ä±´Ûc¢Qº'×~ u‚ÙI|Ôd»!GEÀ+JuâÑ£ 9 v/×liPXœI¨Üƒ'EìƒáÓ2­17XËCmóE†¥SëÌ­¶à&N6:òtŽ‚‚l䊻‘X>h3±?,òùʉ}%&÷Т'ÚÇéa,DLÛÓž–Ç#¤UbpXŠr·Áumª­ )M¢ÖD„ÐY€9ß“ñ¼çÂÕa¥¹Ë…ŠhUµNgV=9„wóÞfÒ„l,aLÈEï¼× ‘(¬&¼cŽÁ¹PAÈØÏ&ñN©ñÌ7PJ„ë¼”ŠÆ!“‚Pµ»Øy”K.()'•Y£R ‹ÃAñ£úŸfj§0FïH"˜¢a?”ÀÄ´#*×[ù.ÿš‹„# PøŒWaŒv‡0ì|v§¬RâWS¹uîûCÅÁõ̦3™µT<ùD$^áð(MÞ~;:Ÿé/„Æó 7µàR'Úpê±’Bb3„-3ƃá>Ó%ÀÖî]hNøÈâìî&¦G¥I17ja)­Y®'ŽGÀˆ~è…(£Ð¾)¥}Y8ËqµŒ8 ¢‚ã%¨ á(YIò1£2؈”˜±èȨy÷‰Ö ˆ’k˜iåW=keZ …¤,w+3’8X[›œ-%uçUØqö_!€5¨Ÿ¡.OT²d¼)íÌ#¨%Þ‰Ï=Ù<‰°Šé?A 𲤣XòH«ÁŸ2ô/È6]9O`›Ð>¼hbÓ'LfÁÂØ¬ÖÉ, ã&Ïcû”œ_IÁQ¥L™F!ÍicÉx¶‘0RÖp¯¬•ì7‚€ÂÓq tF9)¤Ál‡‰Á•9œR 1±ÈSÁímà¹ÐÉpÙ¯´³RߥÙG·|¿™J/¬ˆgìK¶xÚ[ìî6¤^’*þ“­öÙrøÇ/¹ZÁÔ»ÊÁDù*ðð@‘ìDž2,JÐ l Kb7š•x©ƒÃ«èäé  qÞ‰ñÁ Æ"1¤€g/¹DLøñ@änÂèÆÞ‚"éZ¯ÖaÂùYõº– r ¶JsIá± (îéÄlf‚·@©‚®¦@س¿`¥æ¬Bk<©Ä aDA2Eäm„Ò§ ÀúåZSb<°ÂŠ›QŸ%4þoÉ`SBVŠ ¬N sá„ÊJômÄ„Bº²9fã`ˆáÈÑÂM¹”z¤JI@cQPm/ÉÉEyEC‚u ‘åß}SÃô3e(ÎŒu§o®ø† •ë²e.Àµò š‡ÿo)BËEb7j²X¢PBÔ$f€Há‚IR"ƒÏÖ˜öw9¬…ñSos»TøåYsdxöÞATk…fŒ¹æHc¯b(Uþˆý­<Áý’Ɇ–F%ª¾ˆ¸EØÂÔ)!L±¢~qçxÒÐ[D!V^X¹UF<>‹aŒAeP)ýN†ÉR ¶D¢²`}øq}P'çN ;»|í©åkÐQb©%2£r€”?ÙKÔ=.ˆèè] ÀÙà-Ö{›Q& Š†ƒãZ,„CNÇe{¨t“hæx ’ÂDQ*©åÞAéG ®~MFkƒ$# 4h80, ÕÄc)æ “RpŒ+40iØä-ìÛúp;׸D­'H¦0pŽˆ˜åŒ¤ËæcTv¸áO@ÞÙaâ^šÀˆS˜T!?Š tíý –|G—eýÚÆUr_=—´ÂP؉‚0¾ÅdÓ7*!Á³4¶éÅÅY—âK4’ZzålG•ÅàDÂa¸B˯IÊ ¡Š¹¬*”{ µ ‰º\܈Gîe #SÐz>dbÅ:ûpp%AÎ^TD$ö ©Ðc „ƒyOŒáô;„¹ß/ ÞÄUVo6Õ÷«1D€‰˜~pðŽ?yÉÿUnå'·.0¯B‡­,œXÌAŠãËB´@`IS^p™ªAÂ&²HÓ‘xÕ¶e8HžÍM2%é§@pÑu§"7kÀº)É:X“b‰š~iÕL6[@˸š®çgsðƒ€”÷‰Ð¸x ¢R0]Q·¤‘6°ÅT#ºP6ƒp‹Ÿºí»/Á”÷"†³É7 åhKÌá·`<İüƒ˜bHðÄü†|˜Ø¾Ȇ,ÓÆÈD ÔŽÊì:‡¹d)aLÆio⣌³°ñÿ%K×  MªIîdB(¼×3úÂ_Àˆû‰¿0ŠæB_{e)|aÏõ1‹•U˜Ç>£Pót‚©I«ÖЖš$Ö÷ÂmàÒô‡@”‚€7÷QðÁ©1'Ø4nrßÈm&RTPäN»íbÙª(¨™ÅŒ½. ‰™V©’@F9ðõ4¥¥£»Œ8IRƒ­„š*‘aªkˆôݸ“I!2Ö_ÙÓwKŠ \¿¢K$A ÀN«ZÞž.V¯úiÉþ$8/“ïæO§ßä9Þn´T–1{Ùú$"¹‰= Ž?ëz¾fVšíŸRÕg=rËÆp€@sc¸1·RsþâáHPpV«—¸“–suQJ±ÁÂ¥”UƒX¾"/ÕC  %U˜Kc"JE?¤–,¸Ïȳ#|$" P÷iøñN&5\,ݼÕU5²ÈüŽôIº®S2¶±áqB°…¿nCåX&ÊÓP·_Vï9%»™ÑÅ»Kfè%ÀU޹ºpð W e`Z¸ï‡e‚@vº‚:I±$Ç̪£wÀåÐ@BG215À”0" Ä€U‹WÞ˜àd„HÉ—^(M5e]ÛŒ4£À—ó« Yû³†DJðÕy:PdFÒ™/×Ë µ Nû iJ&1 ™£ ÏPÓudÅ="\}jì Ó¹)ìŠ1€ 0ƒ¸ €Ç=Hµf…Ka!`óæ   pÀMÄ¥wïÙžop”ç‡zE‹!ˤòIý¤Ö•zÀpÖŠrµâb Ctsqm /¥Șez´F(ÈÖ‡Dñ%û肽Úõ Á&c¾”jˆŠ#ºÜZi´]µßÈ»1¨ÌÌqcÿ‘.öKÁêdl©XÂ+Ec¬a„ð,ÌÌÌÌÌÌÌÌÌÌÌW\Ö‡|`z¿åq (P¡B… (P¡B… (P¡B±è@j~¸³33333333335°Sÿ_êQ–ž—ì8rÅ 8rÅ ©PŒÐ7—Z°î»šå° Åfò´°buŠBŒVf2¢×˜¾„«r £øc¼È Òé¹` òn§Â¸D*èF¡DÅÅ6§{§êÉœÙø·é!eâ¿Ô)ü!ÞdPiôܰy7S+„B ýõ7øºÞ´Gûç…ÜX~Môœ_ ^B渨™Ú„ÜØ·¨ PeÆX$¯¥ïŸÃX¡Œ BÖ<­”HŸ"4S\tKϪ(Nè† :2"›ÖàŸÆ«À¨AÊ(H]ˆÓø|žpñÞUDØï†wEÌ S0͉Œj  ¥–4µmõÐX¡¢t ¸ L“ˆn:TÆ*~ß°®}Q—÷¸}P”MësQ9!{@çC¢dãWn$ä¹ÖV +„9|×Ó—¢'£-†oõ9ÜÑJ´ `£(Ê ¬8…q¸ªÍ9z!âz?‚9|×Ó—¢'£-†oõ9ÜÑKà¶Ò0µù,“`§¬Jy' ƒßP{\9cUVgÐ!‹¥åN§¦j5I#ÿ@¬PÇ,PÇ,PÇ,PÇ,PÇ,PÃc½Øº€ˆ»$Çï9;o­Ü¥øqäÏZÐÈ_ôáË3#íR•:¾,R­¼Ä•i“h¹ƒý$$‹¦M3â-Éì©ÜŠòв Sº1Aèê­ÃE'mÃUú±Ešð†=;ü}*Sb8Šv¡éŒ°ut&9µ@YÛu§ùáÀôQpk09‡,PÅ ÚÚ—Ý ‘¢ï!É’Õ˜C^*©× £üÚñcEBŽŒ±œƒ”ûöÚÑd3óP À¶œ†úàOðm—¸kXÆXš{±NÄû ¹Ç½²nŒB¶!wEñ*„²N HA iYì?ÖBð§I KütȘlê?@>í.2Y^H½Eð\ÂáÓ‹1ñÆ:*X`àI»úÆ×Ðq~Jx›:%ÔåZøu)§Ò ñá†õ,áˇԓõ‚_åœ/žA1Ï|v´ðiÔ+'zŽõgÁîé‡e*—=Ü7öÔë|J£#Ç ËË],—¯Ìî°¯ˆÀ¿õÛƒÀ Ÿ)îßðU#¶ÆžÔc†_Ý›üfBæfv~ÂܬPÂWU¸8&eR¨gˆçÊýéù#I]|–L'¿X%–›gÐdY[CâAALͶˆE“Jà º#¥Q¢¬ƒº4+S‚+²7€EœàšX<³z".zä½) ¥**y0¬t÷ACâéÀa–Rd¢{z/8?1ä¾rGF¥N¥xu<¶+MF~‹s‚¾#FÈ!…[uPÈlà°u‘¡h* …'‡Ç‘>‘òà ç‚7æ[ÕSjm²ð=ìQoÜ7³W,`ˆdy~ C5]`fÐ<û2;j‚°ÓVµÔT*Bå† èN0ëXªØkŠíŠ ä±¼¬`–¢¥á»=÷*Z†)ê@SR_ à€#îâb}‡„5Nqƒè}³¡½“UGU&wÜVXh¹ZT …ÈzÒðPZ¸OÁ|œk?f÷ ›hà™tX͹kÿN³Å=@œY‘0‹™Ž«Ì°)æßrU ÿ ßõ´ÿË›e¿…PÁúXıýœ—•^ŠÈLSwIþê"»r y3Ö´Å0QóÍ=3¾h|yD”(á_IŒAõé$%v‚“$s"üئ4ÄuäHEïxI+°“öSöj£Ñ tRj‘Q¼Jz“œôï—Ö+ÀeÇýI´rŶðvb"¿8:=ë6ÄS`Áåu¾Ã—â—?I¯-‘•2ª¥3H„‡ã‹»ª Q¹i’,ÇaÀÜÝé0­¥½/ÛNW¦ÕA`VþB‰ÅbÍ¡—R †Õ Þˆû¢ÙÆ#É.iìÚ™T¬¬Ê@,Ë|/0€¹T¬²“ -бÿ×Ô#Å9V& Úý§IûêÐüâ4yò¼X;ÖØ(W ¥¶WhaZ‡»H†)26ABTº`{Å×o ØïŒÒ,­²$9/…)ñ.€·¢Ýè’øÊ‚ü”óŽøMù:ë4$}•õÊÎXW<ß œêR0r-~kö4Šyr²Œ”yvÍ·Ñ‘Süt«aç¯Óš¦ÕâUß2@!A³{P¥ÌãUXB( ƒR«Î–y„lK@ü”U…0y„dzèòþ˜©Ãº@yi®ˆ  jƒ!•%: K ¹$Kˆ¦ XNÝ–<ø“A%Ì\*„¡œå¶F^ÛxX•ëŽÏ¦IÏݦzmº m°e®ŒQXZuCŠ~VÈU„×ü‚@Ù‹@]ö¹‚ÿ…‡7|j__íE?ð ·­CË›äÆÃu.øø~ ­hÐÇ=Íø^«Œÿ¯ °Øa†: ÎìÌ*>ÀWlšÉÇìhârÜAÀŒJ%Zk‚›>ð—âØZSµ¥wƒ%ƒæú¼º\SÛE¦˜£¤¡;YùÌ£Lr&ì|ûuò¬šç¿o¾Y%jñ8öæ1z{)L¸’“Þ¦h+”4šOEPº0,üNSŒ_JÁ|QkI¾œ… 9í1`¨.…!Œ-Å :x….„C:D€I$æ¡c’Rä&7¦Tsé;¥  §ÐMg0!Á0Br¬¨bɆ : YÖR^j(FNƒ(t§½y QqWC*Õ•1O»•]ãñì$a© ‚–Yа›ØR`64/I0Æ3 ýàÈZ~žú3–„¬Séöȇæ=‰üØÔó ¼,¦©¶²éG}|9íÍçx-FæFºd¢ûïâ¸aNöÉ÷˜«…,K)d Â˜L‹¼T`Îp~ò—דÔ>ì¿Þ”W„Uo° û·EÃUCt®`P¬¥tD1ã|‘$ÈÅ“ë–å&/([t©t¢-@o€#¦Mª!#’'œGɤH2îg÷š9 -1$Æ’,„€ú#è‘2£ \%i "=ÒÚ’28µºƒ‡›Uf¡ÁÞ™2}ÏX"jË„‰c“¨¢ÉÁ±è³~ÂÈ— i ÌY/f—ŸŽ¶Eóëa”#âHÓéuùaÌ@ñù¤ÛÓÕÅäí;AÔØ{ú’ é „}ºñ_‹•b7¬»û—±*“Ÿó!ÛžEŽ7ýNâ‡Õ4õ^M3Ë¢QÞ]`ØI††‘ªÜ3m„Ò§wƒ=tø³Q![„ 1™m"\‘u^.EOlf˜ýËý§„Ý)£„PH7°±Ò½·¢X¤‡Dy©fu{-Ž;P¾ªÝR‚ÒVÄGaÕP‚ê6$8÷(„qàE©º{\h%WOl EÎHŒ i©’“SÞØö…äðä/ëÈ5ðS¬æh—v•ÝV5Ið øQ=Ô-Τéö“]ñõ™qTZà`Š`ÏÆ!bÎh ¢!€[‹kI¥Äôˆü|½Í¼”‚yc~°FJÊž‰†¥½×Ñæ™:.Þƒ7}€ ;‘D°‡&LÝÓ·´}¹V¬e§$NGËØF*à«w”Ñq;(W¡¤I‡²_ N©{X°„)¨  Ï€4Âä°dx[_ƒÍŠîò_´1Ã1ËO`^)VIrŽüyIšûy9p†Q ¼ ìà 0|šé…Ƙë1€¨â2pe×ö ¸¢àiaŽY‰ƒ¦nMÒ€Cà!q´Âb5,5,õíÐiçWÄaÈle ¡‚”Ø ŒÏ!oQ±6õ …©t•I MLìÃô…K¿¸ÇC<€J¨QÄuU#O\8(ñŽ4P4DlŽq/Œ¢MHª!À!Ð`ÙI1Ò‘ð ñÇ–eä{&kÈ(Næ[j 02pàıåÄ@ ¡”nì žS‹bu‘£Q0t,¹LÌã'ˆ<†<þò 7BÚÀiX@°øRçGÁÍå „jb¯ÑV=Žä°Q¦¦q÷ Ô£lìÓáè f~‡›—§Âij 6Y ^S:Mò1¯9í…Á¦& %ÒÑé’W‡±†án!eÄå\ àG¹ái÷ælÝqJk½}€o!Ú€.C1rРQº/ÎÊù?l[în¤|SÆ­0€GWPš¬WgÓ¨˜/i)Á k *r¡?Ÿ•³ƒv¸k‰¢XM`a9s K£C‹ ˆ—v„*hí%àá¯)µàɰdƒ¼k¸q†…ÏLÎU‡Á.ùl6A6·&f¬å‰P¨¯Í}VRY½&Ü(lßz1­,ËYâ%„W•P¼|N(ñ ÂD&OÖÜ$ÙV ã‹“³`<šF|fúhÔo$Äë#r Ò3G¬,æeï†ÿ¯Ki=r».zš•*Q½Ï…©\†x˜^§ûò´<¨³KÕ9T‡}§€P¸~ ž-;ˆ’iÍ—MV‹Ä˜d®÷ AÐÉq(íÛíl‹ÇA]­‘eIuPFv0ü´Ë°µÇ}5=tÙ‘Iàµ.ֆ艉ºùƒ5D1‡¤»@‚¹à ¼ rž–ÂdU˜ñ#ýñƒ,^¬dTL=ëï Ç³ÉE7Z2ÅHˆp"ŠÄt¨ —œ]÷ƒõÀ:æF‹à­øÅÊÛXâ¹l•"È"î­ˆq¬Ãbph‘b3AI˜9ŠGˆ'#šÕõJP d­LrßC»ü˜x6æÔ bä‰"#,eF›IñHOHF 'A“—ØÞûÄd}9€ÜþF26ô†t&`)ŽÚÚÊyt€»EG¤(ô`°/k¸;Næ…#Ž\¨/uîñ­ˆ$@ ÔhE蘛=HŠ¥XW .ì(šxPA1á’Ÿ‘*XCBrP§ŸHÉV %–™6åL²Ur­×&Θ€MÌæWàÈì )ÇÎe ±Ôx{}”·@p:ZýÊ£4§æòæÓî†U@¡-G‚> endobj 570 0 obj << /D [779 0 R /XYZ 119.717 490.631 null] >> endobj 778 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /XObject << /Im6 773 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 787 0 obj << /Length 3408 /Filter /FlateDecode >> stream xÚ­ZYä¶~Ÿ_ÑA¢ vdQ¢.#y°‘ݵøÈzÃXWbwËV‹½:vfþ}ꢤîÑØÎôÈâUEÖñ±8Ñî°‹voo"ù~yóÙ•ï” Ë4w÷û]V„EVìò" U‘ïîëÝû ¶m}{§u|¸óàéö—ûö&I.†&¡Ža^ó`Úö[s²Üñr ]†±J}Ïðö./tðEÛòn<Úž‹gÓMÕÚ«I0ÍÈ £›*äã(Õ£åH4í­ Z!4~Ú©«mpLžºÛ¸Qîà×AClîÃ,I¡ C­3æÏ¶f.nï’8 z{žÚ¡qÝ+¬çÁ¯Ó0rKÛü†‹[®{û©qÓÀ5ûhNg#¤eT¦iy¹È×ò’®¯Qx,ŽŽ¿ÈeŽ\ru8SÝVÍÏ‘ÒýFàÃåhÚ,ÈÖ´Àx\¦X-iꬭ/G™ahÂ’ùuGsXÌ`97XÙÌ 1Wk`»o\ÏEš@gAÓ út!í‰KM‡øn,‡æ„ô©5#œ ÓlYªƒ_m5‚ré¨ ~¼-â@FTFºÕίÛÖK¢Þ²dÝ|jê v4–¥IYš5¯yXãukó‘@MŽÇ¦ã7õ\èMW»w¨&>g+}öL^o ix%KŸßfÌ «ùÃ…2ª<¶=-ÖZ9>4ÖÛe=ToÓ ½jç.xØFG€¯Y\ÃÅ/¸ Üü$ î¹cì]Û:dí8FRE܇áAûÞN–Oš)²§ýDÖ%›9|Ž¢Ì®Ì¯ˆçaRŠ+Û#{©Jƒó¿ÕŠêëÞÑq|‰ÎÃU¿ýwÞŠÏÙj‹P§ÙåÆU¶q‡p¢úyÿwC÷s”Fð§¶v¼7uƒÎáÙÀwÔð{CâîÿäÁÌÁ{õËV×fÏ}qºŸ¸ÿ?˜¢Bõ÷Þ/¥@â—e¾;Þ›΢â$V4ä.É¢8ø+ÏJn€„XÔéB‰m¨7Ôùh™°oëÅW¬ë˫ޚÑ~/³"ç3/GiÁ˧©ë«©…Ì®O}³Ï>܇_Ñ{VãVÀšù#U*˜¿w†Uœ*ŒLhÜi„óžÛ'¦®ý4áÚaSey˜ç…‡‹"¢’Ž¿¾¿ùx£ C´S»$NÂT©]šC¬*Š]uºyÿK´«¡€Ø{ ®§]f%kw?Üü‡ƒýåÒ`aÅ4—.Šk½±i&™ö¼ÖM>vm›<4m‰åyèböÐtމʀ·âRÓVn‡ŠÈi²ÿ6L¨à„ÈÑ`ÚÚMái9ƒ‹çJDƆ޼®TZ…ºœ%|….,bg™˜­fÈáBÔÚác/ô+ÄåQmƒ†@Ât7âT‡QQ^ªý…g3KËÙuS¥.Tâ'ÉEcƒÐ}¨Á²ˆ_ŠX$a $ñó­mHB8:ßCfI¢ M‹4ñ=~Ž¢xs7AW˹G `Ë»?,c¤Ã/ƒ;ð*ÁO™÷"Hšèàké38„]Y18ìÞÉÏ Ó£;â Ž@Íb}¥f8™ ¡LXПµ8þ’·ÃuʘåÝ^AT®`XtÝÕl+·Õ†£5 ¼i:Â2/}*Tþ­¾m :L¢âeKø#CˆÂTφ>ÖƒÙæ¬ƒ`çã³ôkxFí<xÆî??T^Ó[œ ü‡9’Á%iÌði' ÍþiÛ daÏz7´îlŸ{Ò8Ñ¡ÒÅ."ðîÎ“Æ A‘”4W ¨—ÁFßT(vx~ÚÚá\…E>_˜F·éªv"<”z*o¹é„€pWDÎÐmÎ;{²´ç‚'%ÂÆpœ…NžéÍŽ¼Õ´¦²\y!LåçËY›¾}çÆ×|1úQ”òZ¼be2ëÏ×ì¬lo*ÖÇÁÛÞMg^U|ýËë+ a2‹× |IW·×S$ëßñŽhpNE~ƒDKÁåoh‹pÛ` ÄÊá=nœk^ïй³s2aL,Œ~ج®xu»‡ªoÎ#—É›àŒ _FŸ…êL‡¹úÖYFy¶Ó Zi–ÿ)ÖYûÓ\I–_jôó¥S€Hy¬þ/KKÄ©XVF°ø‚!¥I¨¢ÒïM#n拳ÜXá÷H 3¯ýaÇ…woovï¡k|qq•àœNñ•!ó’ÛJœŒ¿¨ˆƒKâVvLÿÄô‹“®Èé ¯¸§}´Õ4^_¤¨¥³¥•ì0À„2`/××>2ž|8ìÌy8ºq Ø™r^»ˆ?`a²Hb(%0¤>!n’IŽnBô\ûkýò¼šý8Ù®¢ƒŽû«Å·¢Ô’!°ñí0õöåsÁ>ùƹäe|5õ=ÍÓ_˜0Kõ°ZåhÉ”UDâ”VêÓG)ZîIV) ù áçÜ´1a·ŽÖïè¸%­ë(xÃÎ>wÕLg€Â3H‰°IV.M®o(׿$žm¦@o‰Üºq=¼¸¸ÅC|S+3€Z¦ÄoR-΃JñÄLÔp®“†ÜÂó†°Þ/À’‚8"7é±íd˜J0ù/A½?›–2i™ä”%`n’ŒAªé“Ð}eú9¼€Ö¹ÍK­gëЬô<­tÛ÷˜‚ái¥ÓÐÚô[ ‘–£ŸR¿œãòh­h¯V™ñGÚêO+J ·åuêããÔxwaøó¡ñYQ©IêR”¡¦Þ¡ªÊa0nÂÞaû+¤¶h9ÌÍÇüú‡§î¾'=™“[eBà›\ù pîÙ ¢kÄk¡ØKL-Þa°Bi. ªF‡Š•g)= ÕöžtìÍÈwz^o Xš“vT˜š·!ÃÚ6Š„O«HD1Úv˜«|.P¦„!V7Yi2üM?¹è-LÇLýž URÄó‰зJ7¬ä+€Œ˜œOkî¾!'¹£#È=@É“ç4ÓŽKû©—‹$T–-¥½È}~†àG/zÄÔÜ~ÓûÞFæ\Þà”ý ¦JÊL”eÉt—œQÄïѵµtÛî¹Ì( £t7óE¢gë]Ûr¢Újñp*e­išÚÊjG)°ÛÅ«aÎjh=ây7¿«dm¢æGöÕÒ2HÜð©H¥³U”…îœ5 TqýÈ­l•*çÓ€v‰_™®ºÌÕyod °‚¾›w¡“VvsJ|G¸Åý„['÷îI1ÇMý`—WNQ—&ÈÓëÝœ‡çÞîù1£¸x̘ß֮̇›‹€‚=sí:£ürNø‘‹ Gìø ûòèQ°ozVê“ðbØ ÿÖ ‚çñ²ÙÛëö£AõÄ’ÛÏ`ÿ$øŸ·z¹(Zîú.ÑÙÇ‘[ñy=·Ò[ÒJKÎ{3g߈ê³õäèÛ½o„AãœFÇ:ìÆ (žíoôоvÖÔ'ñ™Ô^½­à«›­×o*—˜aùᎶãóí\JVïú¡#o®yÑ4ŒÃä_4ÓàÃOD  VÚ',Wð]ö kÄ|!ÀÀéƒ.~‚ÜAm\Ò9œo\Ëðé%•¿;~·G•¼Üç#C±¦2ôL«EP”R0x']šáÈÁÌ%~O³bp½r|€¦é¤çÁ:”n™è ”¬šè/B|_!ƒWVX®ØÇ3½5t…@ í>'Ѿ1Ð/|÷gAY­`V(ù¡ÎÑ»‰༞ºÃôŸò`•šÇíÐ;kç*îE‹Ç’G4mz™¾Óp{ƒï¤œ¾Hý«5ú„„-—FOÒ¼ɵƒŒxñ2„½ùaèÈ@׌ͳ7V‘ÂÀM¯;°h¹Ûk¶ q˜æSÞo×NŒoaKÍ’¦ànîGÝ[û^”g}dÛÔÈ-fbZ™«eAË(míû²y§Ï®F×XPŒ÷ÿQ„ÐH3L„Êz3#ÉÁלE›Cßš<â¥Nü©øÞEkÙã²Ù±GÓWp>½,¹ÈŽ“ÐmmÛHfƦ‘ð(M+ï€Ðb›‹ÍH–AȽkúêÃȺ9þž$ÒðŽ¯†<í†Õµi¼†^­áÕ a@Ãjð’'.õ…2ªY®°f¸0Î^ƒȵ_©åfP¢óã©'®Ö®ûÛÈø_*°ä§]ûªÄ_–° ¡®é¥¾êõ$«q–ãx8{€r’Y^Ïñ&ûäÝ^RÉ€5ŠCØËóÒйŒ'LÆ—ævò·êtö°º¸ÃL‚Fv%b–Î)¾Ò_¤râ8 KURÌ‚ ‹’\æ{^ßßü –«¤ endstream endobj 786 0 obj << /Type /Page /Contents 787 0 R /Resources 785 0 R /MediaBox [0 0 595.276 841.89] /Parent 789 0 R /Annots [ 782 0 R 783 0 R ] >> endobj 782 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [188.267 453.269 199.035 466.22] /A << /S /GoTo /D (appendix.A) >> >> endobj 783 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [129.081 424.709 136.927 437.328] /A << /S /GoTo /D (figure.7) >> >> endobj 788 0 obj << /D [786 0 R /XYZ 33.853 921.043 null] >> endobj 130 0 obj << /D [786 0 R /XYZ 68.868 206.735 null] >> endobj 785 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 794 0 obj << /Length 2196 /Filter /FlateDecode >> stream xÚÅ]oܸñÝ¿be Ë%RwèCŠ^é×ÈõrW@‘h¯}l$mÿûΩ•Öò%EÜÖ ˜äp4œ/gFîîvr÷㕼ü—;µË¬°™Ýé<&¶»²½úx%…Ñ¹É c9‡ÍðY"r3èã ”I^$¹ À¯[³ûkõ3üþ~Aeõ,í<ýåæêÅ+evJ‰°rÖî¡s«4(4©ˆÁàþ úÜ€0àƒ2ÖÇØÏòµJÉpœŽ'åé}ð Z²OÔÝÇëqÔÑm?´žBçQ7éLçÄõÞH½½¶ñL½èæãýlè§brg¦–.”Í.¤É™FcßœÈ0´*˜ùþ4ñšÄ"´‡¶uÓðàÑ>×£GèyìßOEˆð0¸b/~߸°>n>ဠüµ8{K¾¼ÖeÑ0š>;{õÐmtOŸCñAÁAk ³%‘ýW=c<íÓ°Å>„ñOuÂ/â,Ë¡>NçTd+±ørÛ/å V ™é]ld“é·å Ö“¦D+ |ÿA’ºÌŸåèX+¡/þR’-3ï.RXÐ=Œñ9GÚ3Ò;Hƒeô²¢L2¡L^£àä¼jü£ªbEH@?›-^ñ¦b Zœ™ûCeôýõ^e&ú'Üæyñë–d äbr%žo£?ó°ð¹ÖŸ°©:&åqÐZž¤t‹ùÈ$ãû-©€G `Èç á…DÕsöJfwðÞ˜(ÅIx™0¡à¬k¬§ú“¿Âþe_Al™}]!¹Î/Ó¹TÖÓm“è_[r€Nšé¶Qàær¾¢ ©M‚±°‰úŸh7]i—³ ʯnµAg?O(œª¨‹9G¼å“Kz²07äôæq ÑB™Y„ÆÝN#G÷ÜBáõU©ß9›Š '¤edâóD”kC5`ÒLšÀÜE8@ñDž£dpŒ?4xªðýϽb9FÀ:† cŽOÆ“ ?cIŒF÷ÄÏÜ<4ùo\üu˜ZÑøº(åùG½RtX(=DœS#?à€Ãõ FôlŸ*qKç5茿AO‚Ìi¿j,LfÖÉÕwKµuœ`:¼!Ÿ6"ûb6«-Ø;ƒ‚€þ¶‡AK›Ä-©“/f³àjûŸãäX‚ÇÙx}ò=)p;MµˆÍü,a(C5¾<úMWÕŸ‰aæu¸óýà7ìoˆúÈ Xc‹Ž4r╳¸{ò•?±¢²XQá‚€Põ~}p£œ*—€ìëºlrÇñéÆ[j²AF•}{l¼è™âN v沉Ð.‹6Ä`—…M%ñçØŠ¡ÃyÉa@†0Þ•'¶hBÃ24Aþ c¡ˆ~’ægúXƒCbI=2Üà‚uäP?5ÏÏa7ê¶nŠÁÓ¢Ú]‚2ûÑïS¥ £o¬?i_ıö> endobj 784 0 obj << /Type /XObject /Subtype /Image /Width 601 /Height 398 /BitsPerComponent 8 /Length 84034 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂŽY"ÿÄ  ÿÄÿÚ ÀìïOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þgúˆOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOðÖ/ãü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ö¾ˆGýƒò€þ€þ:žÚ+sDôOÞÆG0Ä̳  €§¶Ž|”2©óLX$!Ó`3ü©í£H’ßÉxÇÝE? ’/ÿä?ä3ý3übïragêr¨c–F„ÏôÏðl„‡ü»ü0Àgø3dÈÆ¿/ÎAŠÝN_„@Kü@ÿÿÏôÏðà1—óºÌsÞóç=`¹k;Ÿ>kV“Ùζ¯—U·³¿ÍdzÊOh?šÃsKgº¿vlóWW« Cr/KÕ/kN‹ÆƒcÆÀ ÿ@ ÿ?À€—ø€3ÿ 1ÿ ŸèŸà§€-–5›á¾¦¼´µºçý{ïÚu­N¥”n×çVÝ*w–5ëj[^R³O³¥mK¹³´T)Mo¡|v=€þ€þNN‡Æmæd"ð£Ké›6zŽ›w].ÚØõ«¥[;=˜}3TKëy›­µ‘ýÏ›N½ûoç>†.á€Ïð %þ ÿÈ Ègúgø>õ©ØW^êj¼>4¹yCXeÙ^qá,n\ùñŽU—tkkŸ[ØYÊÅN|íÌÉÚsYݘ»¿”ƒ{åP?Ð?ÀÈò(Læý§Ò!Úr_Cq§qGwm[Äñ«õ·vñ¿RŸ.UµR϶¥o.•÷Söö¶F¶Óg)zÛ øÜvŸ3à¬3ü::W¼yÖcîdëñÑåþÂØMEýNS±´ÊÑe0ÈÔ %þ ÿÈ Ègúgø4õÃÛ'U+éÞ²§Î\×¶s¥Î…%ÊZ²³Nöµµ•|«ÜijûqBV~ý©jH†ÊšÈìÝÞ|˜ß,€þ€þ…—¸s¶Ö[ÏÿOÒùŸÜWT~Òµ°ûF¯)cñ¸¥Ê\©Ò\¸UãZÖë®èÖ×nÊÚXÕ{>ŸÐeÓ• 9ÌoJø—_=Ÿàµ‹|}·í`',£ûˆú‡Ò<ñSKê÷þR\Ôʽ3ðJ»Jö–rýÙ|Ó9Ï#õN›Ä.¬¢_à~ÁÿÇ€þ€þ ^¶bÖ‰ú‚Å ¼÷°T¡uNín¸Ç"¿]ö¬­r·¹©P¥Ïä¬ýçKi[9ëM²Ïwò€o¼¢gúgøFŒ–k‰ªï#žÊ¥>û wò¼ºkr-+ÛÞV6¿jÖ¤©q¶ç+7\¨p†Eknt'‹÷¸ëû´æÊdµØØŸÐþ8ÀÎ~6#auKåÜt/¹JÝÿçþö1¹O°éÿ ¶óíÉ2òÐ~A€þ€þ¡ó~ÆÜëéÓlH×öìüØœk¹Cb¡®½]ˆÊë§w± u®¶RzíðØZG´„›>/kà ˆ»Ã]ƒšÎÛ]«í…ÖvZì[ì^¬5Ùá±I=v¨×OžÅ*Ã]Š{•×OæÅªÃ]¾£{]›Í†•ŒþžrÒÆƒl š–N–6zýX»ýu›©=tèlf•­t)ìfG];]ŠëŸóc®½‹‘¹®g±Rv5Õ±ØáIë™q±Y]t>ì\¥uÔÅ]µbîä?äË‹€þ€þŸèŸàÀgøÿä?ä3ý3ü?Ð?À€Ïð %þ ÿÈ ÈP,ÿOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þgúˆOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOðÖ/ãü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ö¾ˆ?ò¯ìŸèŸàÃ,Í *î̺yo©?Ð?À†Yš7’g¨¼·ÔŒ€dfi€†}¼G¼=J %þ ÏôÏðÞ¯ B5|^d†çp@ ÿ@ ÿMêò!&d€`Žw?À"šVD~øt¹ˆwɬø€%ü?Ð?À3ý3ü ÿ"_â—ð@ ÿ@ ÿÏôÏð`3üˆ ˆ_Á3ý3üíædã󿢞(V @ ÿ@ ÿ?À€—ø€%ü?Ð?Ày§]o+×?Ï{ë|µBýŒñöŒj£°¶o5“.üF#‘ö¼  €òÐ…ÒÏ \,¨ÃèæU yo‘©ÏQ±ã@ €8àÝŽs#p:¹ÝaÇ¥fó>ú25  %þ ÏôÏðü¥'ú¾ª;µ÷ÑzŸAú¯Ä}áþ¨ý_æ8Òµ›Ê+ªÛçÛõ’–énÔwôûÿ$Üñù­Ù|ÕêO-õ+úÆfºÞLÏôÏõì¤ÿ}¾÷«~‹Õ²k:'ôÝ~?.1·T=gËmîbÌŒæi8=wÎòüé{®§Á´Ÿàú `uYIvwÖ´y|ù¯ëj}£^Vö?‘}+§×³ù¢WggÓxxV€"_â—ðkU.¶ä7?ë»`â.³pºyÔÆ¸¦§¬íï>ÜÛé=F—:=mÚ\Ûñ¤ùҹ敽?µefÍ:Èé½ãÄëdiý\¡¦Îåv‰È]W<·iÂånÖÚ_Ìö÷Ê&‹!Ë¡Äègص2ýž.úLaS¡»æýª+ª8g:_iÖ9¬ç‹ÂúÎÖÚW4%k(óºþl¸­ØŽäŸSàû'µoýüñåI9ç´àe)^kcŸì4Ãf¿«^8hýFDc’ñË{Ý­kkÌ}½¥Ï+bâ…K¸_ë/¬.nàæ¾NC×g°ävÃÉMmä·±ùºFÑ7—œÞVD„EvN–rÌMs0sý¤ôýêîþÇÛèÏßîò•îwRî7{Fîô·}RZEsÝÉÚBÝîÞSHž·x„ñ´hýî‰YÑÊ×yuÌ]#:ÝáVvZ%þºb'û'I£·-áÖv:<ÔÞ KšFÛnö·—¤†ñk˜š8u»Ð®ë´tëwRz;ÕÞ o7Hj›º­æhÑú]Ü—0ô…«»ªÞ^wÛÃ/ktVãµc'O«¥æïÌMþ´w€FþvÛÆ§‹£Oê7nFî‘<·tC/F.çxFF£GŽ;Ä¡‘£7y»ê°ÒîïkYºItû©-%ºíÞ‘½£gS½L@fóRþ7~c3ý3ü?Ð?À€Ïð %þ ÏôÏð@ ÿ@ ÿ?À€—ø€%ü?Ðïä¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢xÿ@¿’þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ @|ˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/ñòwÿÄ27@8 #0!"$42ABÿÚÂø^ký¦õÝÅ5ÍŠõÞ®Öb}¬†1éJÏÈÏ|U.«b‰7óŸ~Óz3sò22³ò3Ãðèö)®lW£ùò?Šý Þ–§ÔiõiO‡«µ˜Ÿk!ŒzXT*ÐÉäŠ4ôåƒjÛ÷ÚÔ+òú–Ãøž»T®ÈF}ûMè¸y „âs7¼¶tæå¯Ë}»H….HÈ™zrÅ5ÍŠôg©UuÝt¨QwËXõªµñhZÚí¬V.˜z»Y‰ö²Ç¥CÅjÒª2xÊÖœ«âšÉª• h¼µ"°T´&£>ý¦ôr=Œµ÷K™Çz±èõ:Ú“±l®Š,æ¯U)ðèö)®lW£X°ª3y´ö„\X¢å»Éd^•+n‰+¡wÃÕÚÌOµÆ=Œûö›×t{×6+×z»Y‰ö²Çés]:w‡$ð·r8\¢C y!†8y)…cÉ 1Háp$°·$p¼y#…Æ<ŽÃ<|“±ävàW†Ž[nð¶nùœûö›×t{×6+×z»Y‰ö²Çèä-êm_(SˆPXüS Ÿ\¼i!Cs &T $HÐ@Ib>rc à¯?†®Za¡%°ÕÀ¥§¾sïÚo]ÑìS\د]êíf'ÚÈc£¢©ÞòT)„Í#4Ÿ2YAÔaèšJhLN''Y“@H~@Ë*¿Ž(êú΀ªL‡ðvÿn\5Ü‘óŸ~ÓH_V™®Ò,І¥^¶r©qgË Ö¹e\¶)˜ž‘β¥[þ‡G±Msb½w«µ˜Ÿk!Œ~Ž\”µqI.œi€ütà€nQxh(s”þà€XS‰Ñ‚…7@M@Êb'þÊÔo„Ÿ9÷í7è"ê¥2±+wdš ™]ÈŽ>ðJó©åì™SUjÝÅþbqÜ”¤ÅR(&¥4š £M3*äZ\˜éësÕil÷‰fª©]Ö¢õ?ÑÑìS\د]êíf'ÚÈc£Œ£Ùó6IC•* rLAQ3)ÍþIˆŠ"c§¹æ2 LG‚d嘩“Za„ìyëÊðùÏ¿i¿L¦à1å:A¾ï[z‡qß÷Ý(pI1Ó© DSPßý–c޾f„ø˜T–\H^H˜Ô:¤Ý.©i9KöÜ›µ«35êãئ¹±_×D¸(w,Ÿõ½]¬ÄûY côrv}»tÓ5 ¢)ÿ®)NTÅ5x)R¨qO\rŽUÁÇV‘P…Òºj&¢ú‰LeWŒ6ÛW©ïÿœûö›åÃf•©³só“Uʰcˆ« b8¿ô ˜¦?u˜‰Œb(où(ÿ8ƒBe'1HqH†69ËU¼]X \”+¦BÅ5ÍŠýê5:mNƒwZ×@Xn‚Ôºj9™ÅÊ™ ™m‹‘“œ5ÃyLZ¹†Å¸íij¦/V¹cf; ÍþïWk1>ÖCýµ¡mÎYgÒN™6´Ì+ÀæШRF) «Œk\Å"$àA @@åÐtÖfTK)|çߴߪJü›³«£<¥Xà—3˜’‹€rNK <*cH™ Iõ*ý£œ ¦ÐžµS0á«ñŽ+ i2ŠÔÕËiÉÚèö)®lWìèç¦äñ¬åÝ_›¡Ò.šý¨ `©ªñjeÌ Ô £nÜU»f²Ý²^GÈÙêíf'ÚÈc¦_±f²;®Fy5Œü\¥cúÖa♵Gó¦&)Rƒ†¨LÅDˆÉÊ`̉Íà°·qƒ&üçß´ßÊ{\ö,ܺÒÓÈ(&)ŒºŒAŠM&‚“šO–p*„TAu‚N<8œFT6•@©qAEuÚô³Uë8wIcZ:=Šk›ú,²2É^N¦Ö£#8 ÖF´SÖ0r$ÎUD„–a—HÅL ÊÖAâJtÜÝ>,W1eÛv¥õiÞ²‡U$Çåë¥uÿ‹ÄûY côp—zÛÇÊTµ.`)κ‹*)Á6¡LäP¥… R„¡„ä 9g:€)œª m3é½ åoœûö›áÌ–èF×1 "r—DybNh¦˜ Q ~g㮚d/4¼¡)mý¦Œáƒîls™¡ÞÇ”ñ+%§iyIZNH’Šqiy0•“J%iy93‹MÊ"'i¹QH+MÊD(4Ü¢âFIÓâFMàV•”5^K1¦eo‰™@Ê&Ò²( è2"Ó®#Ro›ïÇí§7Kòü²–iÙEdÈÑò »LÊ3 MÊC #&.C´| ±JÒò§.]¥eTf““„š>SM hÙ0 â^WãânQ"äi4±â.SÖV›”“VLH£å1"')¬Oò‡0í/*˜àÒ²‰­/)&|Å‚î¼]kâ}¬†1ìgß´Þ»£Ø¦¹±^»ÕÚÌOµÆ=Œûö›×t{×6+×z»Y‰ö²DZŸ~ÓzîbšæÅzïWk1>ÖCö3ïÚo]ÑìS\د]êíf'ÚÈcÆ}ûMëº=Šk›ë½]¬ÄûY2þÊv5ZWöçß´Þ»£Ø¦¹±^»ÕÚφ1ýs7%¿'WþÌûö›×t{×6+×z»YðÆ?¡kÒΗ©!~Yó7#§ž«­L #Œ²ÅkUd³Íû+xÚYbî·oks1ck®~õ·wÚØÂÂok~Ù÷í7ôÕë”Z¶iÏB7~Bq·eÕU·¬é×C©™^…‚òÝK(IC£Ø¦¹±_Ð"c5KãT&]±%lÛÎÖº‚èçÌ[1SK)㩊¯ô½]¬øc¼ôÂ2rKÎLœõ ž³7[¸k•[®¤+‚¨êL²Ææ ¡Á bÓ'¦i5 1žkçñîH dªwë‡rmw#Æ}ûMý3&Üxî‹z曎ú²'¦jJ ,ªç!&8¤­­~Ý6X6ü¡qÔ¯ÝÑìS\دÞ麨Ve&çÇëZ®R-ÊnbÈ´ î‘«TèŠ(e×]#Õ!S0jÑS¨š%T¥ÿÊæ‚J"MHÉÏÔ©«ã'i×(öýíj]kÏß6U*sç>ý¦ý§î»^•5_Ì8ò‹C®ÕçnJñR*‰‡4æ_QÊ)'˜¨¦Aâ¢g¨â÷1J˜¦ÓêT꼟êèö)®lWìc…syŸrVõ˜±ÒUD…$`  & DÑŠ¢‡1ŠVÇuNt,œäB[öz»YðÔ.ú}‡kâ¾TŸNà -T«¸|Cº®×<kß8gê%÷EU^rÈy© J¡2aU)ÅcÜå% òŒNŸò” aRÕÈWuˆyêìÕv·åò‘g\·M±G¬äk.‡7\¹o •È|^w@¥Þ\­fWîÚõfNÜ¢^.®Ÿ7AªÔæn XÇ"G™H©‘A0ó@å]e N”@ÜÓ4&’‡/4–naÉE?¹+Žn¿ú:=Šk›úÜ5Ùf‡œsL¾L—!ÆÀœ*—,§\¦—¨’b±JºÊ¦¯ú!Ô8ÊãìéucÊ]Ðàd/¬cˆ*HÕ±·èõv³âÀ¹+¶âõL§}V'¥ççèêWn*ÅÃR*ëK c +ÁŠh‘uô£¡T)ÈD–XÉ3k2€ˆB`*G‰ÒMCªþD¹ ¢ê̈%Æä˜Çº¯;Žï©ÍqJ:îzg'ÜöŸøy!È\µÚÆMÎ$ÉÖ…³~ÜÖzµ—r-ÁM ä€D§þ (ŽR‰Ë‡j:iSykèM3Oô ˜¤OúSùË4ËVÑÊ7½ŒZ;›Ê”õ¤3•×/‘­ŒõpÕ²Û†ÏSw£o¼ìú.¾׸rØ´i–æ}Å·W+«ü;³!e‹³&ͧ¥EyDæ ™à0éFÖR©Ë\4rLH/0¦!2¢‰¦Q&ªvx«Û˜ÂUÇÙòCPu” mÝ%›ñLò£”q $î¯+FäÆ?úæEYYé2žNq?Æ›äŠjKŒŠS²§AzŠZU©&¡›—UZŠh Õic¨DNOòòÄTåÁ%ê`xÿ!)¤*NœÑ.œÙ@fêRKÂ+¡ù_ž#3/>Š@+ ¢5%¿ÌÍÍ ©UœIJXUJbÏÏǧÔ" OÊ,Šó2†—F¨§ *?èõ•™*ó<Õ*$¯>s'>D†Z±Àß䥹ªh™2ÓÓõ 5¥f§Ð嚤Šg$É¥Ô—ÒUj«Ë/)MX )+>Ÿ*~¦Ÿ8Õ c*ÈUšM#%<„¬ÂÕN¡T’˜1'¤‘DÕi‹5T1Ôÿ4™`µSkVºcšV ¨TåÖ\•$R›-D‰¡ùrz%j(•iÚœ˜£-;(‘$ª Ë€é>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>,føã±¬tkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòb¾ßuÑtôkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòbèÄŽ®ô¡Zø‘ÕÙt.y1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^L^¸AÎäJ_ÇÿÄ7!"#$1 3A024@BQRCPS`€ÿÚ?ÿöÛìVá._³*9 ·J±Ö¨µ¦ªU)WaÚ}K slízA 8|8«Ç‰ÄŸòG§¨2$d ^ Jê…rk$$©ò7{Fk,’&°o±0˜JS#±¸9)Gäó~Z‚<”ÌQ^ƹ}¥ˆŠ÷®4&¶až4:6L«²=>M`Ns,kˆ[VÑ­Á «6e&á›=ÕÔ'¤Å@ÂlñÍžÆ`Õ¶™Ë'÷U•¢¤ÉE†ªT eNfÀ™þìà8‰-tìVÕ,N[(ÿ¦ 63ÆÚ­½© [j©“ò5ñ<öÂÙ;=Gcð š²ù¹Ë­$ùÃk¥«Œr\†˜¨cXS€¢|V†*eÝ•éÅxñù|¸s€G+Ž Õƒ°½Ô¬E¡:"ãiJE€­b'ŒhŽ­ë~“.‘Ê1±åÔ²¦Ø§kéûRìV8šrC¢Fa¦ºü²S"‘÷ÿìÛ•=*Òãèl£“bì)ƒ²¦·]Ë6±íëB[]Ä%ÂZh“o¨i48'JÔÐÍD,_Vʨ+ºš‡!Ȩ¡N²D>JàŽd–¤®}$÷+Ä…©uå‰06ÈñÂÀÄÒÏ*Ó†½.VE¸OÂÛRlí›Rl®Bl&bÁU5;ÁÒÄ,$ê³Â®*°Úþc‚DÅr%iÆd0$k]Z«›5Σy g)YÖwMâ¬VdJd\–±bÝÄÇ@ãcÎ<*ÌßR˜USò_˜Ø‹‹ xˆÅ’g•ĸ@Ï>•Û†lç:`…š$N“ÃWrlíë>:¯±okÏÆRȶ²YbÄìÓv‰J˜Ö{|@ göõŠìçUäè##3BªmRÕ–Ë–XéäJ¢xZºíò8ÜA»g°ò€õo±wã@©‘Ûa4WÊÔHnYcÉií­«PV•Š´—3·oñ–ÝqÝ’ÇùŸ¯ÈܳMµö’I£aVÒH+Nòør5lU…ÞJɬÙÿض³²};dˆjdrÔJ*G™b£×æÁ¥â  ’àÆD± iËWÀ{fväûEÕ4Û¼’“9`¦ÀÖ´´cÈ#™µ.øí‚³¿ZÕÑ툙!ùz±ÈÔ˜‹T.Ö™_4Cê½3*öût`×ï?öûÇ¿¿üŸfHéölºû-æd2Ý[-­YY )¤öPXÍÚ ì•Ý@é:KQ9,2ˆˆ¬švP•)ušÁY¸²™mŠà§~¹MDùq`d@¢¡Ž¨µ&³œšjs*9 å1Ií!É(öðÖšµ©„ØÚ~e‚Zl€x ÉC™m¬i-òo?eeŸ“ÈÊl•º7Çž´Î¨&êP”ïý8ÔÛcl¨D"´q¾Röy•½ÖNÄïÅØÔ%‰ˆJÂ,ˆÛ°MŽ“Y\…LžuÍWn$²M±YódÍH¹Xx }­5¦t;‘5÷ÖñÝŠ—(›Â¡º5ìÂëªË؆ÍyÔb™0ˆ3;l)*¼`â!„¦ÒtåFÙmz„3\`B½TƒIFÐPKV›VÑ_êæ»‰1 ¥Ow­ú–¥rÈÿ ¯ð©ãMI•Ë|V3Þ.0ÂfÐ7{{ÁGAv¹ù¥SËåaÊ«q }`aRqØB×m,°Û ñ,Õ Q×°,VýãÈ‘jñ[Lä,UBÈG í¸çä,æ,! ¶nÉ U@Õ…›‹˜¡v²ÕÓ{{Ü@µ1’àL*[q¡,;4muW¬x€-‰#D”¯º«)>0B”Å8—6T« µn“ž&ÇÂMrR´(ÚŒ¾!ÒgV„¥( ©JŠêŠÍÌ#¨²w$hÉ–-Š2[@ÖÀ)[@À£ÚD„¢$f?ÌLkÒ"DP#DS"12DS:DDG¼ÌÏ´D{Ìú«Ó¹»©Èº®6ˇç +Å®^š…#i‚P–RÈPöÈ ŒÊ;cÔ,ék=@t­y<ôâ†)@'yõ-;S_$T"!)ã/ƒÉ ;ýgz9ÓøüEÛ©™nV]I nuÒ°¼Õ½&wBk |&·ÂÛ=;§óµÐÛOÃeY ®ç=´l­JU¨™¬Óa®Vø‰ã9¥þ'ýÌä«Ú鼆6æ@¥¸üš˜°j˜éÆc^tÈ^ƒ†!1mv®EÖs_vV’"y/Œ’|â"më',‹•P°45ky¬ÙcΨ)j ­1bZ¸ÔÀQ9²ÆêÙòV" q˜ž;kZ¸7­‹²èxW¯Ê‹3]5 %²Vñ#¦èv8,J‰ÕÀC.WsJ ì› ÜR¡0ö¡9…ñ‰ƒ! §UHŽã×÷xp®˜4øæ‘8t¾ZÏõªàrâ™`r·IÞøçwöÔö «}U5¶lVa é{'4›b»xù¥¤´ˆH”øêc–eÅÛtî¯V«RÎraËÙ׆šY]Êd¥ÏQÍ(X4MS¸ÔCkARØeJ¤–é_$"ÄE™2¤Ä> Ï-–ËâÃÝ}ßZ—ÕjØ[Œðôï„®dÊ_ ÃŽF 1Èâq¬a\| jÏøà˜)ÌãEDEwk™M#b„²&fÒAjtÿpˆ—í&ò……[U¨ ]ËØ¥R³_è§f½&Ôx°ZŠKä±cë¦Ø[+¦(B'ÈXÌ°ÂØ²×’֜¸j#uP‚u<¯š>BŒ@2ˆ± Òžs®.µH=ê¢ÏãêÔ¥jÜS3úu_ŠæA$Ç–Æ»XÒô)d”+¬1ÖVjYE˜ILº-²À&¡ˆÂ«m±PÕŠ¨´KaÔÇ ^ô –Я(Ü7&)¦"JãŽ,òfÈD8Æ…ê Ð-À/€'Q`d¨Qʘª•É·œÒ66[±A°¥Vœµ1n\K£`’÷Täraw•b,ñ¾À1¶¡•«C9m{Ú&AJ`ëZ×ÈBÆØƼ>…6€Ù¾eåÒ•?Jöl¬!k…¤8\r±Ó…zsÆPÅÖmgÈW—¾æ:ªR ¤+c°·0R®ÖX2Ðm‰°º+¼×­ö)4¹æ½¶|z® U^¹™m1âmqÈ«à¥BÒ~Dœw)GWdfÇ⡯Ø5áÑê'=•*h|@Á:ê"Ö cãªX¿n½:•ÝjÍ–‚“]&æ™Oûï?÷ÓA‘{DúÅôÅÍί£ŒéÌËFµDЛ¹:U‹&­æe&M#l ß8&µeX±²A|rÍ]/ÚM£nnÅ[Þ;hpø³61¦Ë5®‹«[…Cd¦üRH¼âo0߆ *t©‘þ'œ ªªÚ±µ0¦å*¬®ÚÈ„69Ö5ìs¹¡¼%hÖ,€‰XÙªøò$Ÿi5ë²_;!±>$À1a); ªÁ7h¼Êôiy¯yiªnQŒpµ<­Úô‚«Ç5¨eibXvEà«‚ªžvU Rú²,Q¨go‹)qq’®$‰ñÀ—½r…ij×É2pº¢†-Cµ•É"d­kSĉ»rÚ‹a°Ë‰rk~áŸNasÙE{Ͻ]P§dÅPÁšÜ­² kÌÅ3’”’dBMð¡™³vØÄ6³Ã‹ÇSÆä ¼‹‘5Ô ¯jÜé¦ßƒY"êé‰(¶Ó„Žî¡è*Vr.ÈÒÈfhççqCdm@ÚÕaW›zÓ”qÇøñ•Y®³++BEuJÆ_¢º£ž•Çf14q>s¼Z¶AW™9+š‹2ÅJ,X¹Á¨Jì6µb]yq‚g-…Èa¬½+XX*Óê®Ó*Ù®‹2†I¢l©DBp;Æ$`àf7Ï·ôv[!E9k k²4¯ß¶Ê-¢¯Å‘¦ª‰*îž ‡} ilÌ©H±<2Ãê%o46¯êJÛnMÊŠvQ]Ãm€Ö˜ së»n´î¯o“]µx¨T®…³ 94¢Zžz̾Uî5(™й‰c.÷õŠ3~œdæÀã¼”ùÓWlÙŠ»ãŸƒ~¡ËÇ»fè˜×üOíë£ðÕ2 6N’x12†Z·†±â#œî3*×±h ØË ©t&·„\µI°Ù^¨ÒnLÊÉxAæPZÛ ©5…ŽM;ŠL ÷RX ÞÆèPd¥Õc ¸Lr¹¦ë2Í”VR„l¸âËls¬‘ã) » bÄdF\é“=•D] –®k¯ë³U£mqQ‹ˆ¼\òL…˜­ò…†õ)\Šg¨"­X‡ƒ‘aN]¤RÅ*ÉÕ[@ÜRêÏÞiD’ÎB#ŒìE©…ÛT1ÐÓn5m¶Á´ÞJݵn»RôJ6)ŠÁ°mJuYÀÆÓæb«¡²ÉÛIæºÑâMf ­nŸ’9M#b¢˜$Téoý@äùPŠ—@Ë1ýR½›F:*‹Ív*ã„èña,­LAA¯Ó¬9ÏP/r¸]ÎP ¤¦k<ío(«UmBÁ°ˆ‰±nƨRÉ• U –×Jdw•Yw•D3[,°ÜÇ2íW%ÄêJBïp ©:wG¥rýC’Œ• 0·ÔÇÚmÔ[}4[°”ZynKZÀfUÕ”/; ¥~0Ö„èl þ»0%=UlÁr|G¾LT–•hVK>Dr‰’…e¤6Åq'¥$Ö@1pőաJ«A §I¹·q µùÕ`«ùâÏȪë¹+vjþÓPÄ_h‘àmYØð¢Ø¬+%åŠ¦Ô -IXezŒ!ãUšÌ`²JÇ ´"l6ˆ€‰-M’4<¼L›>VM¼¨´/R¿"šðË6¢RŸ‚f½žbe»øcƒ_J²1M¥v2-9‹Äæ ”|âÕqP4rZé¬ä°“<»¢BFȇÞGa‰¯¾âÁ\‹;tøJV"Ûƒiu˜•@çX$aÓª”É|KMu`ü~6Û|y° I¿eÖlqÏ!›ÒÛ`‹2^Å-mbT*%¡l„°¼Šð [+Ø”°–Ð!{a dØN•ÚVƒ^FÊrxŠÈg™d0Na¬>Åñì THºÅ4ÍØ±uÐN#|Mam—@4î€ZeaJë=A¹rIp :IK|‚cf¥vI}®/Vkí+f9£1Îm:âÖÄyL_–v>5ÛÐâûžu« …C 'õL®`ùdf[?= ?›i?­©´D‡Ž1Õ!f,6Ã@WØti-äݼÆ~^þ§»fIMÚœJ ü}]ªnƒ¨vm\FÈÚ#? Ú^þ£»]l1ñÈ •o–…*àâ° ã‹Ña<†g•²[Ù$Ds$S2¾ìu²YÊŒŠZi0ª‰8ûô†.c&<—hg-w{G¨î×ZC,;̦L³ºlÇUiîI-%€RDÒ2€Û[fcàÝ®¶•šÿ ˜†srTO1ÃËV >b]·O€Æÿ‚¾±Ð5Y<®C3kÍÉÛmË\IG3¦$øk®•ûD|V±ó¤{ë>ÿÆpú«‡F ­ð }SßZ ­s}y—-óÁ`×-NãXë+!)Gvž§»m>ñ‘H–©–0(Õ‡<«šX“{øùœÀ”,a¦rÎ=ÊݰÈf{§ÕóÇ­ªZ¦FW?Ž©¸H+¦°Îè^³0”|¦cYai« _æ¿Zk3ç¢5k´i¢ hÀ°…0çu‰×U_ȨR¥±[WRº¥‚àX:\k6›Eq a”°·In2™Žèõœ3—òl™D‘ººŸ'ãDŠá`˜¬fGiD‰F› ¤Fcù£Ö’fÙÊ‘0¦dXAÄÉ/„¥3&Êܹã!„QÚ_îUdé²…ÌŒ¶«Täåaì—pbÀ´Õc!U!0¹Âígÿá -å.ÖÇÑW=ËWW"•ÈÓöäq­A¯þL1ûÏ£ (Ѐ¤J?ìC:L{{{Lþ(^!“v¤QWtˆÕÜ!äÉ@iÜ`<Óõî!ÚÌzéžÏNw C6üúê«"ƒbPªDÙQsqås¨(K8™`EQRÎ7¯ÞÇeº„-ä“Rö6ÕjŠiR¶N~Iªd, älÕ™ÖHhÁ úÅl#fÑêÞÜõI°9Ry*“\šì†>µ¦T¬Ô³†Ú,6U¢æ»¾<‡" Þb"µŹÈÄd¢ð q>#æNœ¢XWüïøavˆñgî-yÙÿètßIæ:¦èSÆWŸ’¬7Èt×®#¾„ œ{ÍKâ@5ƒ,ƒ1 íOY«S"¼pZòDˆéWz¦íhåBW£ ‹sark¤vŽ¨î›‚Ž3Û‘èªÄáÔ oŽMÆÑqšÒä½Vj!ËZØšÍÂRaÖwjÜU‹…¡ª D¢ÄX­ÄÉR0l• "’BâÕ¤Ê+«)¨­õ¿¸®K„i5Ô{X”o›²^¬+a&eîSfv$Q8¹L·Ä“‚ÌlÀ`®ˆÆâñ]Á¶dÔF3¾ª4Z»¨¤Œ[Yg4¼c"[»w‘¦U&€¶`㨊ºèÆCÎÐõi1Ý@‹™</'i8÷S«Vצ²PÊ.R,m4€©æR'.a­…*#ßa©YžÎb‰ñ{~¸W6<êXð¦3‰/‡’á|= ™lÌ@k3§¦×°ˆY9H¸w¤š£\4& ×'2$3¸ugö˜ô‹UC!U¸åØ·h©ÍL=ÀÌp×6•Zx_扬]*…D«I"×ø‚ØÒÚ¥› I $e¤~ó ÄΑþg×mzÞo-²58ñØÖ(æ¾BƒÜ¼‹X 0G³4­a6s‰Z[1‰õŒÄãðõ¥ìoŒž|lÕeyš,’Sù,AЇC#вBT äEu¤gOR¨aYÔ§& ä;@’¦ýî‡T}DÕPE¨@àÎ8Å[Ç‘Kåæõr•[êEkÁNÚo°í~>Õ º¤Õ56Ú,A1d‰u@¨HÐŽ  ªê„Ÿt»{x²ù Þ‚JŸ–u]¡Y° @”•´cêIo¬@?{ÄG‰ÎÙÔHH€ÆD†dHJ&J'I‰÷‰‰ö˜ŸxŸëèΚwUõP…‰¬lƒ¾êЮDSv˜ËÈÈ^ËTÌ“ `A“ðž‘é gGÕÈŽ.óÏ–ýFª¶QuNä‘(-FÄΨsv±@a°™òLj"™8fpö®­¨Í/ZÅ•à ¡¶—l,YZ&‘Ë"fy†#ÇP…» Ghb²^NäÚâa8A§1]6‰£*`)àOcë¹²©ÓÉnswrÝzBÆ.kq-/¹mкøv¡bªd-Z›Æ¹!‡?9˜‘™‰‰‰‰˜˜˜Òbc÷‰ñ1þcúzk·ó™éšöø)œë.…“îÛÆþ9Œ#Wã– CŽÔP° ²ÛR/0àäP”‡h1X¼‚Ã+‘µ~‹1®òxÒì]š7_ k1í·LãÝÓŽŠ27«R]Šù$d ‰ÈÜòëÕ¡5-ȃDÎ7Z•‘FCEö¹Ý@¢4ñ§}VïK/²ÉÊÆüÖB(D¥S%ôCwˆ0Ycë8šè¼N&Ùc)¢¿8]¢æÞ™·‘3æ…‹yô¤Ž B M;Eû[ÊrD2Î,MÖd«6(ì®K%¨%XÏÄ`³Ý@²!yUåyŠëÌ(ˆKшH(eM“pãBÔ‘kŸŽsWm"¬Øµ ·Z%,’&Š}dÞºªîÊ ˜BlÝe•$ë¨Zßm\ÞM²‚[!Ñ"˜`4VäÒƒaóT¯È*‚ð«ÖžU×q-'2è·^Æó†è*tׂ3){¢°‚a´L®²Õ°DØ!j œ×•~A" )# ¶zD,äÓÅšè~—ÌÕº‚Á&¥—ÛeK‚¥>Z­þ ö/+ý…Èîk¾MšóhX‚´/™¥g²½P$è£gza• y_]òÀãÒ$ƒ®‰l°apÛQ¯¾éYÑæqÕNó/Ñ*ÃäcójóÛÂÖMc³-5¸Y]W V—ìäØÄ=dúw+‰µV•ªÒVíЯ‘]zúØh&ÄÖõ®$Óe¶*Õsˆew,ÖÈ‚õÿ¡zºiÕ¾¼BÅkšJ ¢¢ÙÈÊAðmERkë„­‘0v¡ß ^¼Š`?¡ú«#qÔ…¼»)¯bɤ6´V Í¡Ãg`&a‡ûNŸ/XNÅÚ¶šmÊçFˬ‚ªd=ž¡b#!ç¦9á2ò>:Í1 ^ãÛ%—¯ÓuÆ®*V®ËLm‚8±kµ¤œõiúyáŸ,[¢æ„¨Gn®ÑãE)I„<5-AªÔ<sÏbR»³ú˜3FÏ+&HŽ%ÚÝ€¤GÂ}Ò“LÍd¶¹8hžé í²+!E¢9Ms`®ºE7É75Ë9 εaj”””¸ŠLb@”Qép¦1…¾´–Êh‚Xù~Tiä$Ä-̃,H€À2·8$ȳÑ)”êÈÑËWÉÐÊ:ÍQ ¡ùYq±n\ªÝFÔxÑ“2 ärûH°ð$eIÛ~Í„cÉã{%Ÿ:´+r>ú©c¬î›NPÕ® S–UÍCÍ&&º j½d:;©ñd±»„¾Êɹi›;cûRï›Ç2ÿ)F}ˆ#Ñãï¬%Œ¥l1¸Œë8@cÚu’ˆˆ÷yŸóæûŸ’é¬n+^‚.)ù¦o7™PW÷e2kØÅ’Û?k\ÉY>ª÷“'T±,Œp“pè:ÕËËXs×9‘•]ÛCuà6üÃî°r¶Qîõú\XZ:41¦"`p‹-µVÐí«õZKYýÑÔ¦ž9I¨J'½Ù+3á"Ê©Úó„V·7TȰ ‡áå0Na±B¥²JòWzóm;+ÅÖòª.S/;v ÌLîøÞ^Ø ,åÄùb·ÙÔ¦}|:– í¦Ÿ¶YÎ |¢¶œâo`| ’)b€8ÖÈ\ìõüöê=¦%Bž’©Bv°×ã®[ Ñf°{iÇîݦ™%´Y{£¾yîW¹˜Ú¯'Âõæ²é%šöÌX¶,9N§î&1éýé̽D¯ô5)j¯¹mG:ám€ãH.sR€X |b 6Äú©ÞLÅJv¨†6£r+ƒ…Í6Ç p,&¹Š9‚!›V¢™–®3ÝŒŸ”ª ¯ Èà„Ú 5Zk 0©T…²*ä˜3µa³£˜L–w§"êéªì5gV®›B¤²ÏÖ.±»iÊÕQk4U‚ÙV“ë‚„TpÁÛ[¹×+3©$14á}I|o¼ÓIV‘”ýHb×+‘Yƒ?dÎÉ‚ïs”ºŠLÎ2Ž6ÎË>XQ´Û;ݹS¯—ÊUî*wëË_Ü"ô=æÍ†dócI2ö­êb`VAÁñ[2…# ÑP1;Øv;Ý“µ9ðXæ2Í? – ΋\pÇŸ0Ï$  cÛ`”°—2=yóì]U’Ž|uB Êï$¹s_ÇrÈYT—Æè€lƒ»°`L@ˆ‹ûµÔö–•»pJÙ®Ûp<¢*ãfÊÁ$¢TÈÊçXÖHãI™õc»D÷¶è® 9É9ãqqr)ëûùRVîúÂ{ÏÔ™\«×]c3„2å—ªÁ àî‹wE¦ˆ„Lļ‘… ã¾Yý ÇRwZIQ Ȉ.+î¬ÁI+l‹-µ.>xÐDi÷“-O–¡Êö4Û½f妽äÇ¡u¾X–¸•‹6 ÆéGß Ü½ÖŒª–7ŽD–í L¸ xýæÅÖ¿ÚZÅ ½&·uÞƒD³å*£Ù~­wå_ÂgÌ«auÂ]g˜€Ô…uŠà8Jt1žáÛ> .¡,z"Ë1A¦È^C#9¸’Ée†Û\ ØÕIWÐQ; {Íœ _ã’#X¥¾äºJÛ¦¿*fË%¨ò¿ÛjY©³Sð,%Éw»?É V>’YZHÀ+hPºjW -\ Â\£:·sAMY÷ƒ)ä”c+¡ˆµæUŽn@®ãi1ÂëÉÂ,0„ €.$6üT±=êê*N¼eV­Äd.÷T¶rÔÃØîvÀ}pP‰"fÄëµq!†ÒŽùçAAYx|PT C!N³X¤¦7I¬çs?öß %ŠõOxz™mZ\èËm[ fËØ…ÁTéh¢ èYÿJ›*$ʬý¼ýÿj5ÓAò£bRB›ôØvCh.ÇׯÚmX Ú}5Ÿ6øUWe=æVPXþ¥#Ù»ÒüI¬l¾FœâO^”üÄÇ»îŒ232O5¿M×þ>!NÛ¡T‘9qc?êQ^ãĪݯþ»â%oÇ(&YC¬‘X1!䎦ª‚¿7r”ÿ0bå»ÈÃÊÄÖìÔɽ ajƒØhlY\†á·@±óvE0Á¼”0Ë{ &ʸ$ÆMÃ0ËÝʘšuî6J­ÛSµÿ A} w88qD‘ŽÊíç…Õ”wPk£aGÌqRHK·ÌÅŸ g0Èäw^F:¼D™0m¤R¥ù*ùÚÒŸ·Üp–Ùv÷2'5 »œZKU[æŒKE’€)ã%Ð?ÄÛ:ôXÒ= e$isÝ‹d( ƒ3bqA•Pv·®C÷^XâN䎩¨Ìž6ì7ÿs0îHêˆtÊÐü×d“´ä% jj¦>å,1µº¼½ ž£øž/2CÁ¥8$0€ìŒèT’ùÚ¾ ÞýMñ,½¿• i k%²•Z6 {yDèùò,qö6Äš´á‚_™-$SÚ¢Á@2·2Ì2QG!~aõý ¬û³vk$Í Jxó æÆ•~¤t“C'²Xß|xº·/¶ÇÏôÿ£ørÕ‹b¿9»D†E’/î½Ê­H[~¶‘‰.§–$)$l®X|²­òñ;üÀy¡BŒ@ ª…¿ñ{y Éów8Øí­±ÇɤÇe”F¥= \ŽÝ ®Ýµ0Hwu“5s2p¼‰9òPÊ0,US 5:ïLr' n‚˜ój\NhZ6„uÀhÜš%¸‚Þ#ç°|Ö|[›·šìŠf.@Õ÷ÙPLí{Ť÷yw%CXÑd¨©ùy¨mØõðúÑ»ˆŒ]ÝL¯»çÜßÀÿ¶ ?õûž«ëk¦2iàÅž0 ®@‘B11°@¬Oq¨`èFõF˜©ŸRƒûˆ¹T5bM:3ÂÂl;°B#"©4 ’%¬šìˆÔÐI Ëœ“¸Jì’Ä6lÎÍ™¶AÁŠ”Ih.A•Y‹0+úxÐÞ±ŽÅ+™²l‹#‘c¶!$ú«f]Á±\B|¶6Ø€ÑR0/–4ÞC3y !U Ö=ÅL™¨OÇgj½Ç´¨cUJ̤ªœNHÀ0‘DDŽéú3ðFBߨV5é>³$O:©'š3•fí²Û33䔹`¢œ…ª·@†©ÁÁpGîøÜøéõzhÚy‘{ùvð|1˘à=²a‘4¶zoZÒ ri©†2wg&£YP‘‰=™NV@Ýh’k­/ªiurê#¸ÁJÄ*Ëc™Pi€Œâ `/ VÆý.¯J쨺ˆزª¬¨X²{ÀÙ+õOò>"…“YÑÅÆXX¬½2‡°¢2À ,Ô]Uc¶  Øa’äÄ‚»nĆIP@NÔ…•©®!%ºU¥ãÀ›*qSJAEÄ»S&lá–Åš ×þÔ’¹r†£uQòèR–-–*Pì‚1%]¾„¿´‡,KQÌ1qÄw"F# W¯ Å|² #âåUÅK`» Zî­«-ÐbÝ~ªæÁH;²²â¥_Õ#R2U#¹eH;{ˆǤ^P˜ðáBEc Pc€~$èZŨ”.÷° `l6VÉA9eY ñÕ ´ó(î’c`-„¶Gèaº·õÞ¾ÇÇDº<¬UÔÛ4ˆÒ¯qEt=Â)¤4‰¼‹a›»—z ¹)°˜*ŽY;SÜdH¼W¹‰3 ŽÉ@YRä–™©¶É×eTÒðA—ØÑÆ»a±““PUÇn&NB¯,ñùŒÔÀò;u±Ü²×oÜ\‡GsÌ7Û"6½•Ù U±Ð @#Ù ‹2n]М{‘³W‘‘жXZ“¡Ë]PkÄ[¯&•ÔÙf`¦^*3£JÜU±óÚs³®qˆ-**ìJ6"Ò€LˆÓ”f¹"`4ì#,øfVØEËŒiíBížýhRTÑéÒdH匑,…þ„›·¯y² äA#÷5­>•sÔJ±ã#»4«åØIëÕõ©>©§ÒÎÍÒþÔ÷‘mÛ’•úìÁ¨(²¾H ÖOÙ†1M=/±\»i‘eç$›,@$±[êÉ ±b2PÁ.‰d¢-¬qį ²fÛnDlù¨“ˆ‚ª‡—s~Ggä[‘¿yjèe—r"мm¤ª ¸3öØ•l…Vù € xëÓ=n,^[H;LrÕÍ"²1‘ø%€¼©Î‚m+«¨dee>H ÿÁƒ68ñfÉ•x‹ÆÿSn)GÔïÿ¹ñ'sñ±)¾ßaLa÷L—¾dd¡òÜpbϳZUW£Û¦4œAÅ»[#\/nB{—jCAÄÁGËâ™] ¶U˜`€–VP1€•Þ퉭…©RrX‰(ÈÒÙ1*[q1ª²fÀѲ*ƒÌò-G!,ËdÔ>?¥NXŽÛšðGA©AgUle[,QŠáœƒÚAÈŒ–öýB€ õ ®QEd¬å¨O ŒIúN"ª…€´¬c d¦¿™Šöìˆá ‘ÎkxïŸ?.:ìÞw[ dÉ L¹/4BlÙF#%c®EäßbáÖÉ|V9˜’$$¿‘ÊHP¦S©D9Vl£åhË3½(¾e¨ßrÖÃëÑ™[ÓâÇ¿Šä ê9ºÿ—~?aÔ’$Q¼’2¢"–gcJ }OSëeÓÇéòϬÓ+»KÛ†G¨Š³Ä!Ù»dG‰gvD»7\zÖüA’Ó#Ś˖|&"¯S EÜb¥s k$’W~fÔ’®Ñ´Ò3vÇnIl‡.˜*š6ßCW¹7špãHÌãÈ›l÷BçaK¹\7*NÀ6Q–p¤A±X³bU³²C6ì*Z>.؇)ƒØ!ªóÉw8~\ˆ4r;u³UÉۇʱI%O; ÈÑ]úP1Fx–>dA•ñT-ïþ ÷d.’ÏWÆue9fTÇ—ù–.‘þ¼2Gjà£#Ö“Õ$HV"ÓË¥ïFJ1lÃ+D± 8÷‡täŒF݉p°z–ŠV×M§žMGmst-ò‡f=ÄÌ<¿VEC½µâ u¦-B+FèK"¹@èÌ™i°f¢.¾×õýψâkbª±IH%YJ½Ã!v ¼Ž<‚€“2róÑ4ËeÞaÝ¥â^Jµä]¸µRñÄ7!€NÙ÷qaJ©Ï8í»†*í öåï]>=³’Ò-³âáY*‘ÁÔ«÷ Ñ£VHº ³“”Ø ñ*Ò˹ÄYU€•Ü‚fµ-lFÄ®a€*l,q(' £˜²ÁI¶ä¥ºV&í]mºæùEîn¯L¶ç?RƒWXÐç³vù¡Q]ŠWá“|ºV2#9F ‚·^€¨¾ž0u|¥vb"0̱pUruR¡›qúAãþw{Rvqï`ݼï ëŽU½_ž½CQ$$ ‘„ò©üNŸHõ)›JÚY¦'·£0<|û„”R PŸ¸°Ÿ0ÿS‰2gJÒFÍkRŠô¾³ÅûG.*¡SdFrÖŠ0UĆ͘” Û!8¨ê†ÊÆRµ‰ÌîŽHÏp•Çk¹“LƘuAñ$±Ê˜ËŽvÁŠ*BŒ]h3Q¾á7Zk»©q 1XÆ”jFêU²±'3xe¸êìb uªþ"‚ÿ08,•ú± UØQ—¡VÃ)#k ²o#¢nÜÊ‚¯33q ÂüQéQUIjl—d_,Œ¡(fåX•ËÙrfí²ÅÙ®‚ “5 í€(Q«.2aÅO&˯D×A¤‡³,¶²J‚6dhÕÊ€D ìT*yÏ<¶ºøŒÀÆ VZ•ZɆw ü8ÖWôF¥f¡`Ñå•Ô³I ‹·ní‰CMÚ·:Ç hÿIË»d/tÇeÙ{ò+1Ž4wep¬°p¥¼-JI ÓJeçÙÅÓnÓ5"rmÛ$ĺ˗E ù‹Ûì¨ ”<`ùìöÌ„Œ\k~ñ¤ õ-DG&[œc(\1p%¸ùaŽÍ}W%EK2.x–j òÅñ€Vj»£½±è‰ˆÈqkbI ¤ÑA“ âѽöŒ rfv^Úö€H¢Eß/jHݬÁ|/êe=É—n+Šï]#{0Ø8•VG$…1¶öÂ{ÂÓ(â¡Ù·äzU €R““xÓ¼M¤Y˜#·¹ƒé¬)¡fÏÈö.Ãm¼uù§R¯n@Ú® UW‚.‚€/és×ä>›`ö[lhwƒ¶þ¾7;ú†´éÛ…4É›ñ“œ˜ÿroüdô º†Õ+˜`ÁVñPr&€«Þ¬¿#ôýøI½ßΓêÌäyþf?ü}‡_‘zwúMà-÷È_·¸ý~¾ boòM»ì’iE—k¥*Ëÿ¢ªvûS×ä^™ˆ_ÃŒFál×ÿÛŸìHýFÿ"ôáâ&]ìã#­š­è‹ò¿/;õù§¤Ná·l·þ·ýþÿ]úƒé WiŽÌ7‘‰¦ Eê”-]øëò/Lªì0ìî"¨X7B…¶ßógÑ}4‚?@æMI(äâ‹ûë?åoÒKUYé´wÓÃ¥`ÍöÃ;3pVU¶bKPcçúWÒú¦¢vÖ,ë6Øã†Ûý¿ý“ç¡è^˜QY€Í¨3¨Vo>Jª‹úP"ˆ¾—Ñ==…‰¸(s9.^êu7Ô]þç¯É=4‡_ÃŒd÷‹4MåÒÍ^Hn‡¢úx\;GS‰b@eðÊÊßr´øëò_NÞáÊÉ<˜µI%oÚwòµôûuù¦B8¢’$|Š¦Ê ]í_}þ½7¢úsŠh,V>ã¸Ûc÷ ¼_/výEôðåû$± Ù‘Ú±$® ’);(mµ×äžUÙ¡ËevZβ¬h‚H»ÿמ¿$ôÚ°(}/f£Èxjj;ýGQzV†±Ã‹«+gÜ¥ˆ'îmØï{«ÿÁ eH#ye8Ç–v¢Ô£É¥ö l<ÇÿEîÅ㸖[3]ßÎ}Ô ÇÎÞ:ÖüCø]LºeÒ—hXc  Cì¡Md2K{ªÖIñ¤-$S#ÈÀH˜–ì« È¶#¸>ꀰÞÔ}h=_I¯¾aV)]ŽdŒ«vr_ ÜnYËßö~Oh±Ÿ¸»I•»^ý×–~ß§Ÿòušý>†3$Ïá‘pZË™Ú÷E6ÅAª"_]ôã3Äf)‡‰Omöf4ÂñF@ÍvËXêUÐÏ©X¦ÎVŒJ´‹+'pS«Ãr Wp#ü©ç‹MÍ;á f¦j…ö f;°ç§õ¯MŒÆ¤⫌Þ•Õ]K…RÉ’°4EÕtº½+ûu07,6–3Ì€Bû½ÄkÏù$…’É&€É'è:õ\‹C.ž1âtÏ»«Š­؇ÜnrP,o¿Y²æÊI Ë©ïìK>$å’`ö2a‘¡l{ŒrÍä—ÉÚŸ¼wk-ïf*¡š„w“åyuÅJùbÎÓe]Ê*HÄj;Ûšå{5x´2 1´2„—¹˜‚ëTÙSó m[ '¯Í¤há–æU‘ÞBòŽQÈ&‘‰eŒ@#zÏ`Z-^šp½©âbö‰;&\nòQîO¯JèÖ•ŠšlH8Ÿ±¯cç¦I ±:ÊR4w" ¤L\(BXò^Ý1÷eËÀýÂBîHîMuë>¨šh;p½Ë0#8¥U0¨ Ëp“‚›ËoSO6¡ÃK6ex͘o› ,{C#k’‘ÉØäM3–=¬ y(Š[¸´¸È²3±íäA¡¹©¦8ãÔryXÑmõî®ÛÛl¥Ãã÷µ¾«ø}kG”˜iDfXV8È›¼ Þ$²ˆû¨Y.ÔéGâ 爘"H¤.Ë:IaZ2r‹·-:±Üñ²»õ/¬ëe]b÷~SÈU¡h€h£#±½ävA”°µL“Ò²•JÏõu’H@˜½SfZØeuqädÉKFÞXà-øÉÈå"¿}¨Ð`3#ª‘ÈSÉ‹`·Ä2ª‰UW‘9lE¤´Û)sTAPDm¡iBpe@µæ•’Æ&žƒ[Éãa@iIrì8 cvƒeÄ)²Ã²Blj@¦N^2ŽÙX:Þ÷fÚÀÙH‘ãÔ@c=™”^I.ë˜ds#‚ƒú í­/ÒºÑëµwÔ˜CÎås§9Œm!͉1&@{Œ„±j[¥ø…ãe‚{‘šìÍ©šG•ù1HH<ÎêŠ_åã¿p kôú}$ <òÈJ™:‰±Ê£wÛp?­mÖ§ÖômËά¨’Ã"«¨Å³1G&ã–7Ó ž£ø– Ž%ŽC!’aŽ*ˆ ³lÒò?Í*“qzÏQÕë;ò3`b•V?—ÙïÜl^Íexâ+­®xÄJÊ’ÛÝ’H`;€’=ÄÖâ‚ßq·@®E‹#CbÉÎÙi¤Â;"7ä<èvT½ºÀS&HÂ39Rÿöš«½ˆÈ)£]) ½4”2=®ã?Ë“&7JîËžÀ‚k2[(ù[–³BÑÈÊûMdàÇÇÔS^›Ôµºw†©¤EEtÓ‰>[!Ç(’3äRãøSa†æTø“Dqî$ÑZºWZ7à† Õ[âCëúiœD"”HeQG`ºw|SRìá1HfŒ[-Õš¾¡ÕÁ:<ˆõr´Eß‚–ZÝIÙ‘ Ž6u _™úqâ:¨•ã÷=±y Î\Øð¤š£àƒÔ¾§¡†5•µ1”fD>î@°Û_Ö§âtF‘`Ó4¨¨H•¤(}¤†ív›ŽXÕº’ºÕk_Y#K1î; €c`¦ªHý|¸ä-A»;ñe'v“ ;œžÓbªfv ~Wb.2Œ½£¶?­–7g§ô%`Õ¨ÁDNëä`P @¶çÄÇvk¼¾‡òˆÆi­€˜Ê,XU1˜{J¹ EŒÒïjiýÛõû9¦3÷Œÿr£Æ‘{‰‡—<¥l6ÚÀ=†´µ‰–F<ù/µÈÍ•³¾Dâ|R– >ƒ3°dí¿. ·OY " ;ß’z—á½$‹ñ´Qˆ–HÆ-ˆ\V÷÷Pß]ÎÄíû1¥,\ê'.[,ìmïðGªù²wé¾Ñ2"©à¡Ñ¶e¢Û cÐøsC–D@(\8Š ŸûG÷ÜßRü=¥•ÙóenßmB¯Rè²€(Ÿ¨³~:? i\­â ß-VÄ[”ª®MeÈ\˜/rJü5§ *DŒ$ÛuyâÅet ‰/Ãe‡²53Ql‰þ ‚+—£ãÈmì…"?EŠ-dZ´•‡m Xð|O½©‡?ëG•6ÿù§ÿÄ^  !"12A#7BQ†¶@av•¦§Õ׿ $3Rq‡·Æ%&0b45Cr‘¡6Sc‚Uf—¥ÖF…’–¢±ÁáâñÿÚ?ÆS§c)‰´‰©s&K¥¹ˆeV%b+/H“&CÕšs¢@vœ·^yÕÊrS’”µ© A.yQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.Ûtiï£Âžü=îmx©x;ß"™@ÿgx^_[êS­ÿ¯Æßï7'.ù^T~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶®c_žð/ƒ?³}ëø;¬øF±O¤ÿ®{â¹Üõíÿú«»ÍÖëƒ>ñùhßKA Go3ÎB«{²„)±&2Ü4ẼsHmÇaJ -}^[M¼ÊÜŽîG‡[RÓsú³í†ÛzÍí† ø‚úìO ˜†x§u†zñ‚ÌÞ©ŸÕä0dn÷!âÏœÛÜkõªM—»LºÅF21p‹†Ãó^e¢²9sf·vÌÔ)SáÔàH£Í§ÊbdGÒ IS2c­Æ\‚.…‘pG»@ùKöwmÑ§È ìí;ÜéGÔŸêïtÉ[ªâI^NécS%Ò a¨•9U*ª•†R¬H˜Xn†ªÛ•RææDhM4MìÏ3¹\„E„Õ¤œ™%ˆ­»3£L{kêZK’§LÃÌć PSò¥<Ôxí:ûˆm PéÒ£‹)j³§ô“‹0r¥Ô#3%ø4 ? Lxn¼•.WiÕLBã©¥oTË×ÎÓk I:¥H¤ÔãU`c q »Œ*z R!P”i{™€¢­ÕÒÃõ90å¢.é.-*[ 9ZzV:ÃÝ!R˜¨´Ý½JŽÕ:²–•+—Ò"Å‹Ÿ:3öêÝ] \˜Ëß>Ë¥¿s¡_áÏó³ð.‰z•ne"ý1`¸`E‹L“–léKjãÂ¥^U²ú¢F7§J3(“qÃH¡ÔâãÚåB+þޱ]R5Iþ¦Ã‹š&áÌ:ºÝ|¯y)ªiLh²‹ÑË•0Üö¡?Œ0Ò|C3¤Õð~ al²Ôäñ )‰;‡¡ÌnŒ8)†ž´ák¤ºbdÍššwLØöfT¤*]BR!¹NŒ™¥¨I˜ò[I}@žRÜ fÚ0­t‰KÁ8Ùêú£ÿ¢ìe„ ;UU¸±s”çª53)Á2 ÏQ™œn8Š”,?îcŸV}°Ãû`oY½°ÄŒì|QQ‚Ð躙ŒÌ ­ª•Ó#ËÃer©½àú¤–ÜŸ"ppV˜yõ³£"Zaì’øUÒ7ÿLíEéKͼ4a¦è¸o W¨î¸óu ¤¡QvU?JŒºº±<¸æ=9ø×¢µ¶óm)/eé‹`ì&qR[t}"çiˆtê½iÚ Eþk6¤’ýgÀ-‘#4¢)³´ª<&ºX¥cx&™-Êö¯á†ð^0£Ë@kªÉ¤R˜¦B~T-ò• ŠŽ~¨‚ÚÚ™)n&ÛP>_ÒýÅ[tiòû;N÷:Qõ'ú»àX鹚TÌ'Ž+õ Tý 5 bŸ^¨H¥<ãññ}¹¥ÔÒŠXc©1!u·Jë[æ¤ÅÜ^_…%‰l =#t‰:>ú;©y¾± n)‘[9Ð7±e°üi»O²ãJR+•„1Üœ#LÇK1E(PbUʧ®"`L©Ð¦½2"質ЄÉulTS¿H’Ûhq-äÁ´ì Šª-ìÈTµˆÈ­SgÁ‘¨²X¯Qž‘ Š«ŽnQ%¹Jy—ãKSòRñ#ÖjuÅâ^ôz6?ß>_û¹‹>Âïî·>í’¯~¥WÊFÅ„z-Bظ1š ™—CÄͦÃRrŒ\ÿÉvàŒ—IKÕãTbÔ•&E”ôhSœ¦J‘àù­Æž†œÒ£—œŒ†Êò©Iqµ+ÝèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜU·FŸ 0o³´ïs¥R«¿"]V£P•OVSU˜Ý^7]LÉO!ÊDhE2# R*L¶'g+€ Ýq¢û.œûÜê-­–%hÜÝ%ÄÛK$F jÌ ›ÜG6ivqe6˜RrÚêÈH*øÅ»Cg÷ÉÞ©Õemyl•fV@„“|¡²«ZæÉ×Rvm ïÝJ*JÈP-¢ÆÉ@öéÈ\l¥glYÜå„ê—r«UÞöµûÂr'Ϻ†m–ðˆ×W ‰µê¤Œ¶²ùv¯—‹^ÆÉzÍ6¤ïwyÜIßü!ÝÝdX«MB@áÙàZiZ’ »]Á9Nm>=Nšm–í¶´Þ)¯znE·‰I(µ»¿çÝm‘%¶œEÉpdÔ$x/~1Í+Ó)ó…¯râr:ȤY%exî ¨ìæýÛfTt!Õ5d•<²@*Aµóëñ«Þ×Ùæº»N’Õ³'„'E Sesî×»n²Õ’ÚxG5¹¹ ÓýÚÔ¾EææA½¶S2—;íº›(–x{@‹e¹ïüV£VX¢ÔëhªŸO¥Ó$»CÂz*cqÛ‰/±â¶g¯ÁùXiÚ„VßT¶ŸÈèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜU·FŸ 0o³´ïs¥R«¿":[¢àÊ»nSk’J©ývEJA_T§NQxE[-ªZ]¦1¿eQ_zL˜ì4Œé‰™=m§õ¦KØ KŠmÂÛÑÜv<–Ô¶Èôg\e|!jiÄ•èÊ â‹¥åóæ6Uˆ¹*IËËB3klÍ Cël¹©BJóܤR»€RxÒž@÷³f}Ä$Û‹0pªúl–ˆH¿r9Ž{gPñ«%.†ÓœNƒ´Åª¬V.³-E+àqj Þ$eÞ'˜×Q§h'³È6_Ü¥%e(OÍ®U[2вäÊ,9pqN-…X©$%$îÀI׳eZÚÞö×d؃"Ú[Uoÿänsþßd¡?§½’“½澛[^óÿ=›eå¥!6݆’¡|÷ΫªÂÇTß—ϲ»¸‹ ÒŽe¢ SyÇù€Ðyé•VGÞÝ´âåÞ7‰VuzT£Çñe§gPµ-N£z¶Ô“d©®¥ã•kÈA×Cam‘¼R–‚‡ k( svH<<Ê®E¶Žæª9Cj“Õk•Iƒ¬Ùú\IlÇ“M,´2Së:#Í[Mª?\”ïWݯÝèWøsüŬÿ„¬ +,ûêD~´ªNæ^pÙŒ&åë]_¨õަ¡/ª ]oªž±¹Ýqì´6ëK[¤B•)»©hÒ )ºÚq1ç~Y{òìÚsåÈ,‡7@8HMÓËS{AQãe¥¬¹™$0AZ²ðñ¢’4ËbAO>i#¹Lp ¥|žqƒ›¤t‘¦l–ºH jüd„ï¾iº¸sZâé9ˆS€h •`£hùÜZ̵8oÂ…\.Ëá±µÓ§¢û )ÄéRZx¤] I*€^C¨á<O¤‰H/€cœ…z\œéVæW #¦Õ|-PVŠàL<ßé•ú«‰Dç$@[L†gbĽë‹KïAi·y×[{w¡_áÏó³ù$“`5$èçdΤT`Õa-JB&S¥ÇjlåZS"3Ž´¥!Z(]'C¶ UZœä¬[7©Dz*#ÐI“"$Ôœ“*1j*žš›­‘!hCO¬·ÂºœW¢Çôz‡VŠâ!A©xh0†!oÌuÉ(rò›“Õ¦Nn¤ï”îWU’Ö5ÄôUjFkñ Uç´ÄKIx¡ŠGç*“J2V“$†Ù}¤0'¦IŒÊšÏ¾:ÜšêŠ]ðÒªÓMe6Âb¶÷„úÏ^ñqR##ó„å`%”ÒBv•:ˆªt©ò•š{ñ'HŽõKÇ8µ&jYuw9Qqi”d]Çw£˜ßxñKm©[§q%Yg)R\CŽ%h¿NWÎÉ”ïX‘¼ZÝT—w¯ÈS—VñÇ Q.•q-Ó¼ZÈím» =›„¶Kà%fäweÈmæÛ¼¬»4T—xµ!9Öêó Y(Ê œŠ&êM픀ŸŒ9CŒñ:”•¢DfÕ4ïY)mlîcN^iq¢Ù³©)Š^ÊþçzØsl+IÄ4ª!Ê\*Mn®íCÁÏoޔà ÄkqÌ”Ø0ãÆRåͦ–2­ÌÛ‰ðÑ–>ʤ7Œa6òK Ì”ÄØ4ŒÍ- *ó#1NRT¥+#Éc¨6µo­“8¢±‰ðóÕ•vi-V©®TÏóH’e?Ñvx¹~N9õgÛ ?¶õ›Û AðŠËú_³¸«n>@`ßgiÞçJ>¤ÿW~G‡ñ8œfaçG€‘L¨F‡>LŠ´¨äÂi’üG™x&;òÝ0åJ…#’£!y%ä¡õç²×ãšÖ#·ÄyÛ¦Æ×2¼jµÍŸxefÿñ[‹÷rÙ¾jÝî FMØ[I RΤgP Ûöp¤\íž6í²Ëfî¸ žh²²‹rÔƒÏKlƒÂ”#6yBSª]ôq$\«L¤ö3ìèÞ—ŠVy&éÊB­[Rž.î@¨lÒR”ói N9¼ËÛ0WeE…­Ë™*BžZ”„³rH<œGuÀ¶·¿åÙ)]£­)oT áRÑÞ ®ïÇÂ3\´ÞõŸÛ¥I@JN¼C³”ž$?q¶a}ž^ì<€·T›¡KIÞ)W̰ ¬×ºR,mk$·oݵ&÷KŽfmJVé±Å—Nq›²uVΔyζá[)ËšÊ_£2µ5‡zS°i)`©D°Aº²—½½óåÈ4„iñóyA²Ú¤ˆél‚€ãAy¹éclܬ«k­†Øq1j)Þ ’1<·Ñ5±Tmš5a Y‹ 7|M}âÒš+@ŒÌE™<¥n˜ÝèWøsüŬþN+ÁéER¿Sv%w O‹ ;Ôø±¦YÚTè²*rÒÓˆÝgzÕ6-A›¬¡W,ç‘J¤â)ôZ,éH¨Lf–ê`ÉT¶RÒ’ŠŒpŠŒc–;)y¸²Ùmä%)}.„ ¢ÃÄU—+ãF§øF9ùI–3nnªKˆgÇvK£ªkÉ}©ÜFörå>§V§ ‘ó%JVé6I)<’°UÆ-˜ñ@˲׼-¡+SµkU”r̬ßñ~ÎÄ©6m'´´®õù¹HÕ6ä};n™ãK…ä)Yà(ÌŽ.e@¥æ9o˜i³+uã‘YlI¿.$~ÁñrôìëŠp•çñy87ã†È]†@›ðÜåü\¯¶cã)]Ù-åHP²M–‘”‘”$ñ+÷l€8Ý.üVøÍ³¶µ“n$ëÛkð€ÎñœÊϻ̧s!FÄ'öw Öºµ&ë:ÉS£%´Fï‰9ˆÍm5‘®šët”•8ÖC“]ÝÒH͡䠯59³v¸¦U *:j4ʼjœ–Úîe6C2ã8¶ N¥0›·—*ò›Ü_jÊ+nVÜØª‘º’ÚkÁÕ-ûj\–ÜŒ–×àÒÒÜit¶÷hBÌw!uD4ûr©Õ9ôóG©>Â|%H\†¤»Kž$ByÆŽŽ4­wn¥©-¥IL–|-¤{˜çÕŸl0þØÖol1øŠ¨aúµ>³ ¹riÒ™–ÓrZRØqL©[·‚iÝÚì¢Ë¬¼iÖÔ¯ðè/é~Îâ­º4ùƒ}§{(ú“ý]ùßwR©¶‹Mõ‰U®Ó)íU`Ê›SH‹P}·îæ ”Æ‘t‰Rˆ²ÜRmQâ- d²”ØP $[ŒðÙ9rÚÇ7o÷láͺ“½Zs)vS™Çg2{’…%Z\¦Ü½/©ôK93¥)³N ,)h>vºæOêó=Ín38»¢éP:æñÜõ~w-vQ;¤ö^ìqoVRÓn9tnÏ ” ˆ¶º¸¥4¦ZRoD’‘›)M®®Þ¼Òº ™lŒ‰ÞªÎ)YÜ I 4»öN¶HÌt‘8–îîLªÎVRS{ *áI=ÙB§ÍΣ½Þ6¼­+RÊ»Ærx”.W³`uÙ2Zkyd8Ò{WM¬¥úŠË{›/Ngb¦œ²Ÿyµ(¶“_*CK"Ái¹½—kÜð¦û%N,<$)RrÛ² HIˆŽ/Û{‹lÓ†êo|rÇYUt£&£ˆj€l径´–øqI@Ý *÷igŸ3èý©åuæK9•“-¡}®gÅ„ÞÜ*A:4æ ¨ï< Ahå*•T´£ PÇç :ÄG:Éë¯!êëL'ž¼Úÿ#¡_áÏó³ùü!k’Y©Â¨¸¼KP¥¾DG£#ÄQzêR¼Ï¥íã•6!,©„Så©k\¸­VªUYI\Ú…BeR{¹[mM¨¼ìÉO¥¡•–Q½yД´„  AÊ~¥%M¸„j’®/1"Ö²“¯;ÿ—d²·M6JPð²wŽ#KØêŒ‡¸/‹Óa«Éktîu¥!P7 ÏfÑ{%k¹:(_µ³/~‘ ¨2¥ ÙFŸÍÊ×âÍÁrU}‹ªh4-¨ÒËæŒùGiE:c©á¡…n’”ç°ÝŒ€(*÷¶}wÿÊ·É%µ$)„¢”eÓ€¤ús7¥”å·é‡2’¬È_Œ#9²ïÎöÌ õçb˦F–JMûÀ+"ê9F{\ë{ò¸ÕÝò$fÎݸîNA¡ÐÛ6šæë`Ê@I²Ô­ÐàP˞Ψj@Ïk‹_9›‚6u/ÆP‘*ÈÚŽ¾2Ú êåéàç³hC®2R§RµªéHl©E<ìN[r¾§aÔ ·œ/x†´Wyd‹«U[[^áV˨ºÔ­ó\*RRPr–ì„„|h:’;´½ŽÒ*Àš¥.¤ÁJ<©RSCÉ~;ª–ÒÚ% UƒHTV¦­§²µ%EæJRÞÈ©aú¬ ¬E¥¬ë…)‰&;޲‡ÄyieŘ²ÐÛˆ.Æ#Íe sú³í†ÛzÍí† ÿÚ…^¡—Œ›éÕlA†Îñii½ì™.4Ë{džљc2Ô” ¨³¾÷q ´¦•ÈjP)øÈZÖÚ&;Nã¥Å6°ÒžmÌ·Fa®Ë¦â88¼FdÚ¢fÒŸ9[©™P\j)E! Ü®ZçË¿mÀ”9? àŽo7íEŸ‹c¹PÕl:eG£-*ZÔ¢µ4Ç„üRAD„Ã¥LL5|1ˆÄÖ£½S~»²ÊU-•:ü:\<Ëh΀ƒÖ[˜ãªŽR·!QCM­ø+Âî×°}:žÛè-ÓkòcI¨¿(³•ù®S£rÝ3y1*qÝê ¥;Rë²ñÃÒ'ÆÞÉ£Õñ *<Úsè¸2ò_~;…aµ渚zË*eàÚ7¡eßD&• •»ágœmº¢ÚZ؃X+ê’ß²ÈBQÛÆSË*~Džüz£9”ŠeZ?P™1„…(É€‚ãËi)BÔêuRc¡;É1ÙmM©_—@ùKöwmÑ§È ìí;ÜéGÔŸêïÈ©ã)q¢·ˆi,Réñ*NÈ©!õÁ]]'Á±£Ä«=!çf¿¹\¨¯%„½!Å;°©L2¤¼â)H¹,€QÂæR3eEÓÅu¸-*T~3¦T­À„ó¿=qú¶×¸¸Þl»ç¸MŠIϼp-d]))#¾Ú¬VÛ=ò4R¶RïB¿ÃŸæ-gÝZ°]‰0ß\ÊÓ}ªD§è¬C”© ë¾[jžãond-ó.fšYëí%*iúÂj5(Óª’*/=&\YЪ‘¦Èp‡—-(N?ayDºô†_u+x»˜­Y†Íee@°³Ö¿ó7|×|ÜA¼Š:Ø‘®^ le5l¼O^Ê^U»±Ü(\¶“¾Þœ»!D€{@J‚€Õ`ßï›b„¶¢¶Îu?l·[Å[=•m(ŽYnlÈìÁŽ s//hæ.$­I½²fJTI7Uù_šÐêÂ7eJ(IÍãUÅ­ÑÙ^u¯e l–Û|î›m+'Kk~E¸nRGÅÊãfÛS.8s\¬¤­«+*rç Ê8|Ð=6=côM¨„!C‰Ë”¸¯;6¹MÏ#rUÈ.(B›Ç–Éý¶†‰N¾h-ªK{ÀB·AœÞ›vo}-˜ívKÉACKÌ›dq æ MÁ½’x½7Ðhò¼R½ò†K$æmD€Ú¬BKQ§³iÈm%¥Ò²©Hm ˜‹)&âéæ÷²†ºæÛ6ä)Íð ÈáÔðØ÷_ŽéùÚl[ñË–ÚR¢ÊBT¤‹X*ü#]{øvE2]J|— #E‡éR$«w½)a–ƒŽ/#aJ)èm ZÀªTêeA±b¤7;Ç^Hí-É-R†§Ûj,¨ñ£·"D ûbrÞOY~©¯;¶9õgÛ ?¶õ›Û AùqÑ¢¨"~&¦B” é]Z*¡Õ$*š•²ÒÒ¼ŒÕAΰäfÕ=ÆwËuƢȅ„_¨Êr…NªuØ”×JTËR«¦ï(©ýÚÄkóv÷ï8´n²Tæáú’©RçÓ%Pæ˜ìÅ}×)rÖÃÒYC’ql‡zÄ}Ä–‚,ÛȺ³gsô|*^R¥|[´åÓK‡.9Ü줷u»ë~|Šüý €PO!¯vÅ*Sj¸ àZ‚9x½í€¥\~·þ‘±q½Ú[néKz‘ÂH]ù•˜-©6¹UÎVÍÒÒ]K™2nÕ®§:®rØ*ã7ìØ'ˆ–œÌ§y5–ê=‹_0'ŽÍ…h@;1ˆh“üY¦‰‹% F”” Q]Šþf&Çz3áÆ$8Œ¯°âP¬®¶ëm¸šÀÄÎ3R À¦äðª)‘ –ëmɈ†b‡!¡†]\¸.J™-½ÊƒKm’ÏVeÀÒÿ*òþ—ìî*Û£O7ÙÚw¹Ò©?Õß‘?À˜Ì€‘£ÉKq¸.H„áVâršm×Ö”ês¥· /n_ݸ-©Ä8¦eue»×á¸Ô˜eQÝRVìIl©l͈¾Ó2Ø*eÖBK‹JÁÙg«)mÉw23åGˆ +^¹†—ráÚFù 9»IÔ©Y’Œ¹€$Âß§»f[{‚JNôœ–¹–™Šr‚«~ó¦É*x¹»t§tŸÒ”p®Éâ)½”2§D«M/t¥µf+² ZÊ8@ìßU ©*_•Ý%¦œNíhMÁÎk!ɸ*Gmç|wÛ0KWF„¤äôØßDÿÏþ,()kXmÆïÂáÍ‘Iµûòw|Yn6}EE.%Yú°Ôpbrúlak^Þ†õ ^u9—P¥6@W›c©ÎSßñrK´).ø‚”¶êžù•›R–éÐvö|nˆyØ"ÖÉt€ƒ›×ˆ¯@žþÍöÜÈ…ç2@º•”%%*!ÌæÔÙ³{Ù Pɼl yùo”Ø«9OÅË÷©¯H¨x=x~+Ø…¸ñrƒ5úsñá"u€„>š•+ x»3±ÞGVû~ïB¿ÃŸæ-gÝ‘FÁ2fD©lxi§e7ÉÔ4%ÅÊ‚Ô×”Û,6û¡5+u¤É‚$Fqja磿¹SPßTf‚VaT)Õ8·uÏ:˜üØN¨%I >¼‹»KÈâ€Ú @nsÇ ïuZ$’,räW?O1²˒θáq Nð+‰z ‹ZË#7¢úk±¥©Ô¥ÂJ]àJ›¿I>)E ^Ý÷%'¸Œ¯ÿÔ•¥&üP8ynFn-’ຒÒ7²'u»SœC!æ2ñå¹A*Ø6T´Tâœ*ãJ·káʵß6…9NkeO#¶ìgXU6¬¡´.TØñy@½ô×ÑÚ;)öŠC@£WÓ„œ£»)ÓN{:Oq:´­¶’<åjuÌ@zsz6/n7M¥°ž æ]Žt„Û÷ùÆþ‘m›]ÐÛ€Øålnš´æ`m­¬UqqÁÏe$¹ÖÛ%@´Ú’ ^¼IZ¶,«ƒÈþÍ7‚B”›ït.4¡›/*ÈÞør››÷lÞë:œYÛ€­ãE&ëçÙoB3e"ɵªë'r”ï.OXÐ ÜÚàŒÖ¿?7–Ò5 d.KkPrÜ u°@7Í¥íÊÖ¥Ò"Tiô7¥‰É5 íAtzSjM6ZÝjlýÚÒÒæ¥ (RzT†b¯"\%)2š‰#Ô)®Õc»"Cjm2^v,*’†‹1#²¶’öí† Ù oänã%±Ï«>Øaý°7¬ÞØbÉqù¶Ã ¡N:óËKM4ÚEÔ·YB5R”@™Ú§ R§bI±\F*™ã1†u y§e55§ß•:#.!¥²¨ñ›RiJS3Øgw%lá¹Xr—Os­ÅŸ2£u½ÀÔ#La÷hΫ|ŸÎ¨=3r‡ãu„±5æöR£»âMÖÚ”ç²×¡9§hö¬’@7ØѾ/¶¶®£Ù'š³­Fºý즸y©­ RÇ›™H@$þgöòØ]ÆóØ3»BòæUî—TyðŽ+ðñqwìâÒÛiÝ Ùœ€…*ߤ< ßLÖUÀî¾ÍnÞátåÝ¥Ëv®«æ$Oe(çñe;¼êY_¸Õ⸂2”…eu)1@JE®tI¶Ò‡€e׌2NPsq'6ºñ^àžýž¹IWèÆñd;|æË²»C-¯{ ¢äÛ6Èv,‡éï0ìyl¸ÃËŠò_Œ§:¼ˆ¯´¶Ê$Gߺ–B·o( ̪m;xGÍ–û•4T`Ö©Õi4Ú ´Ç T%*K®É¯5!ª„—éó_eØpäS™~R^.ń̬9[=nÄnc´ôJc°ZpäµF›¼2á©.Ý¥o›+-n!HZ›JÜBê²4•­)..ÅY[Ýj°&ɹ°'ò0ÓÛÔ{Æëñ,¥Qƒ‰Åf> Pu䉋BéIŒ¤-q›(–KNºÉ{£O7ÙÚw¹Ò©?Õß‘2mÈa×êP)õ „|ŸÙ”É{ä»!ÜèYÝɘ´«¶Zu.Ô[R\)SYŠz»ÈêåÍo¹P9W–Ã"ˆ:Û¼‹è¬‡R¶ã(-+ã6ºTròáAUý=Ài³©BÔ´§sœ”¤|Ü ·ìAâ<­m^NBî|¡ pf Û@l @¸ÌP]Π\›1QMƒ¡i Rò‚J¹…]"ã)ôéÞãn­´­Õ%W U‚l,¬à¦Ö)¶£SÝc³à§KÊÝ´íŽUsJx‡`k{4Ü\ßfS*ê QQZT«yol¶°PMý?Ùå'8ÊWâ_é8¯’ê²¼ÏNÀ);¤½avnë¥Yt¨‘˜¥DD‘ztKL¡!n·gŠî2,önTs;€u°Ì®Še:œ¦Ä8Çtƒ•½tËÄ{¸…Á½ö!×òBÒÒŠCe»xÄüV UϧΠllâì•!;Ñ—°¤q43 ™³()^’3‡e0Úx4J‹„¡*¼î%¶Ü^D$ï\È^Tœ©YÛ Ir©OcÆVr³(Ëo¬>ý D4D„ë ®*å>f8¨¨•%¶D9WÝԦĕîô+ü9þbÖ}Ø5:6$ð*‘ñ&ª“ió+^ðtdXíAeKžØZå±!—i–„Öä> vÞ‘kQó{Õ˜NIŒÌG^id¸ë ‘5¶^Ì¢¥0‰rBí­<[)Ãu‚s8жf¥.ç…f×9ŠÊG=UXFŽëKR|j•dñ¬’J¡½À¹XJlv¬¬®²C1ÍŽcã7`\\T„öÁí9ßgqa´5—´¦øsË?œ½ùq -´ÀrvI:‘)$¤8†Ñª‘ăq~]¢Kwk‰FéZUb. ŒÄp‹#>QϺãSµ†ð:RâIMÔ¢¼‰)¿èµ×Oùwî’ÛÛÅidæÈ»‹ ye±áʯÖ®6Íe5 ï·ˆ·‹?úÂ:õÚdÉ‘2S©f4F“!åöa„)×]WùPÚT£ñ ¨µ^!5ÙµºlŠ´È® T‡)ŒÓV74É(OÅS¯G‘-Gi¨¶v+¥â¨QjX²±T¦V_nEJ$ùfZXpIBY[áÇaEKÍ6¾¥q¢-IH[ 7œ­!ÂÑRMžƒ¢SbHÊ :懋*^鯗MRÙî%FüW)¿4›ú¤…”—3ø»ÜåÎéWê…rØ82ÛDê Iq9’u)o‰(@Qpè²J—ñ‹~ò—’â{ðÙI¿Å}n©ïäÙJW“zä©Vp)Wä Oš•*üù›lÞèØÜfP²l»ó¦ö¸çc¥®[ÙP ¡V ×N À#ˆ[?§˜6Ùi%7°S %-ëk¡FÙ‚Š§²A½öÝ:ÞV^P¬½|ÀOù|âtîA¶k$9ãÝ'x±ÀP¼Á#)æ •sæŽÐaR2¤øÌÚ+1½Û rHOïôìZk…·|^c`á÷‚[é:¦‘N}Ö¢7L¯UúÚäâ  lL}Ê\ėDbžº‹!€ã}qQÚiõÕ3 Æz‡-œk& OÔ ­‰ˆ¥D¯™˜Ã4w¥­™ uU­DvU/s5Ðãm´Uz|¦¨?è¡Jƒi¦µáBYR\1º›ªëЦ¢ÀL¾¸!e¨ã=]·l¬žååý/ÙÜU·FŸ 0o³´ïs¥R«¿"¥6<©mø¡J¨?OŽ\,ÖXvkTÞ¥1´­)[QÞœÍU²¶ß‘Nk+Ad:Ô`‡·›Å‚ÐÓtÇ~S©Ì2r îylóÄ¥l­[Ä~°AÞérl, Æšéb¶–•­ K¯„£ÂA³%›¨[÷\v'RÙ;û† @R”TPI$ž~’»/0ß&Ou)Ê’W©M×À-{%YÊ-e_˜ ¼w,çèÊî²l›[9¿ /Ùýû6Ô„© ¤/vA9•ºÊ•—²F„kÌúFÉt¥çl G3š•+T©)ÿ‡ü ëÊû+Ç_wÆÒF›Ý½uZ’¯4YBãA¦ÉûºØYKm¦î¥Až%Y*I:‘”ñìéÞîËNÙA%Ìàīެ܇{Ç-›ò’¬ú6ƒbœÁvÔy²ðªã/êªú>‡]Ê[%ÆÛFP• 8òP)½Žc¡¾Œ¡¶ƒR.ÙË—)Nk«„—3…­”Kw}UôK…ÕmÖ•·! T_”ޤËRÓÙÜ’Äwýöa:,1E­Ç~§QrKmDS-AT†d¦|‡^q¶aSÔ̲„Å:;eé %}Å/ÿ£ލTy“* ⟠I«Åz3$!‰tŠc‘‘™SCÂé´é^ ^æ;jbc1YˈÕR«KªÄÄô*e1Ç›j“5 côøriôõ1*'":¦äÉK1Úv¤Ú$1%ô=/®5»*Jš}”ä:ºÚB{Z•«µvÅ´ ½-•$´H-–Ûº€ É™*6f<¯ŠÆ"MížÎ¥7ÏÙÀ›dÔYY­ÊÀìãymÅß"Êsþ© '†ùJâ¯l÷àìC¨(R²§ÝÀ¯5¼Š¿ ½^‹²’‹2èQO‰æëew?«âГ¡ðð®ê¶É ;Ķ­Ø%ž +B§<³$z-©×`•ÖˆüYÀ¶u++VÌm{Faˇїw|Ê ÎRÛI䤩6âÑ*±Ó7v[_`ë¹36ÒS¢…‰ÞeVŠÐ<Õh­˜Nõ’Pw i­ó-Ëóý]MqØ6”¬¸\¸$/KéçU{ñw¤-*ýa-¶J)Js…,w.ÖD*ùvÞî¼aÔ¯…98ˆM”llÈúö[.îøäu„yª²T2§ÒT@NUvÕÊû!²æð­Ö®.7Î5ÜÚ”Œ¹ÈÁ*7Aì±P•®5DÌU™¨°Ì–\w]kÆ´™cÄo)]‰q¥^Ö¦»†pÌs1ÜeúŠ*rWQr¥ùº7ð[ ³¨ÆKê!*vSá¸þf:Ä''âØh8̤.Rc»8Ë›OdW—IC¡˜F 1ÄR¦7N ŽìæeëÇëb‰ãÑ+²$·1s Ö^œ„fr\v¥ITãÚˆåUGw*Seü§Ê^“†j”ZŒ*­:N?§n'Sä³2+»º-iЇØZÛ*iÔ-§Q›3N¡m¸´©#£O7ÙÚw¹Ò©?Õß‘LBª¦$“‰¡9–œVÊ!ÏC̹–Î2Ôž3úÂóÅ2ÄgZ2eBu™»Ôe~î›w…q­²Ž_{ù÷ìÁm*R·ƒ|ž%)C)I¹º‚òv¬@û¶Þ6×l-D¨oÖªSˆÝ« ±)6=ålãl”xæó«v3¦à°•¬‹¯(s·+ßl·uÈáhJM’’ÚÁÊ8J¬¬©³ MÇ öã'Å ípXó(ÌŠ¸RŽaÚ ïÔ¼›Ä.>nÕÊr‚Vµ…vJó‚BJµâÙs‹;¿l‚” “˜uH6,ètïI²äÜ¥H±E›yÂláÕ=£¨µÂ-t„ìd)A¬d¦]2ÛPJȹ!#ͲÖpg¹S®© ;ŦÇ+kJl”¨Ðì‹IÙ)ܨäûì‚çéJÕq%.)*P*· SÀ.o”kÈ[j[5XyÕBªJ¢¸…–“M¬ÄiOõ—ÖY³ÔQ‘LÌP˜¸¡¦Û¯7îô+ü9þbÖv]{ÊTxaöâ0Û-—¥Nšò\[0¡°ÞÈq ¼åŠÛm4ëï8Û-8âj]8àLvýKMrŸ×)S[2énŒzS”eÑfE~šc²ëÑÒ̆òÊHóûµß¯ÍpœE­·×ñÔÕZÝRLéFt õ$:ûìQ¡¸ÒÕK¡6ô8%—Ûžõ= ì 4úXm<ãîÌ›”•ê ®l®Ï>í›Ü%!³œªÖJó# ýÁ\»Åí Ù.:ýÃ6JS—të‰_Æ,r¥D÷åÑJÍ”;Àw®,´Ò”ç<£2R³•cˆ%9ùì ‘¿JÒ,ŒäÙÛ2¬M¹jO?ù‹°ÈRà*K…]”JCabÊ Öʶ"ÜõS=¶œQE·Š8¹ù·ïI+@‘³ƒxPYÞ¤æV¹5Ê‚5²Ý@ÜBö»ùòn“»*¸ý¢à#ÓÈÜóÔÛd6Ó**Iñ–“q¼$ߊãÑ|Û!ÆÐ’¢ ARÌ ±í ô):èr€öï8qæÁ»…\‘p@ù‚‚®Ý“ñ«%¶ QŒË?òw†ÖQ×A{§7üC]s°Ñm¡”(¬q/ă2m˜ÚÓžÍ!’ãe´¹™*9ӺʾOØ“Ü6L†ò D~wO~·€iÐße‡sfRËËKcVwwjü>‘•Yˆ#ˆüGfÞÝ¡½Ò”Ò³ÝQ(ä²´*SJ×’»®‘¶žÝrM³Z£±W•Cr(oKKsÌȧóyqÓo„¬4«:ÊRêP¯sú³í†Úƒre?›&£Ôâ)õª<$Ô$%Ù†;jZÁ–¶/!o2šK·R”«C¢;\Ý-N…L…•0|ü%”™Po«L•!‡œþÐ}·e¡à™M>Ô¶šxHm[äFy¶[a°àHÌÞ–tg¹Ûe (€¯Ý´v—ªÔ¤•%(ó · †UuÏ1ý™¶m qÌéÌÐlî¡çæ…!7í@6Q;¾ ÊàEõ7»9†Qغ­uƒŽÛ#pµ ÂU”ŒŠfÜ&Üj a#!ÖàÛmðÇR……öšHRŠt¸Ô”dI¿§fxÃcvPInË6ÊE…ò¦ätµ•ݲՑNUnB¸‹–: Ã7‰²ÇűD¥diyÍ€ó–5 s••u ÂWPð*Èl%69д–Õú«*±ÏÈØp€uؾâÒœ©-©MÕ»$?H”ñ‘ØÓ/#r ¶±º3ê‡e­ 5ïJÄžMí³YÆUfÝ)¼‚ÙùˆôëqÊÖƒ°X’PTEîxU×dd_]y$l²ÈQeã /\¡7 iq¼ÆQÅ`6KYe¼© Þß HêáV\ ÛŸeëì´ î[OŠ´gMÑÆ§#x®™me"ä‚TTiA ôVUï3l ®áYO-·lß,gF€x° ®Ú¬½MîݪvÜ©ZUe'LÖRG7¸¬b†b2Øl£âÖ#ïFEsÊTRÞìÛ2íÙ²»Æ‡AxÌ¡)aÂ3-ÃȶAÌÏšÔƒ”ùÜÅöƒÑë4囈\ˆÉŠÐ~4έUee›CN<Ô¯ É[Ëß­+m´Çq¦ZRÑ§È ìí;ÜéGÔŸêïȉתêÃòpã²jQëj ÇŠ¶„Ù‘n°ë,¶ïŠ”ÊÐôf\ñ¨J™qöá½½ŠVëB[ŒnVìwTwgx茵7ãgzðB—“~lcy£vSœY°…vø!ĬݯkËâ(ñŒ¬‡]¶’T®|ˆZµÓ^. k²›\e‚Ê“¼Õ6)åÞxoÙ¿ ûŽÛ¶Ö¦c­y®¤‘•ÐB¬‚« yÛ^J¶ã9Ûw´æ÷‹ VÆÆ†çÑÈ^ú'gP ¤$4«07âЩ¢ù¿qu/ÕªJ3ÈR¼Z»ÿ~ŠÇ`Èos½jëR,ê–[‰!²›æí¨{i²]Ü·âREóñªüüÝ>;OÅŲŸ9˜&ÈKCô®¶yékñ_‚×7îîÙ¦Sš>댨…$€”åÈ ·Î;û7:ìÃÖòÇ})îÉHZ ×M@ïä9è³¾m´¼œ·æºR“~i¹Uþ+rמͨ¯{ú>“™¨éRn¤):¦ÅóÛŠÈ)ÿ3T¸BSõê>¢‰8ÉŠŒÙIMª)*YTHPºÔX‘Siä—f½Meäfw1÷zþÿ1k; aɺ¼´Ô)Óâeëg¶ËñÛx%`¥æ‹rKÑ×dºâJÒ…§` }2„Ý)ºtj¦‘XY¬Ö1#õ.%B¥P‹l0èTÖYm—©”¨1M ˜éz¤¶–jŽU¤†¤¿U—6 óqše”¶üçºÓû¦Cl¶ÆñÂÛ-6Û)È„ &Á%¤¯rÛ£~A¾^1”pÙ¿ ³Jum%ÒJ•ÀBT3pŒž5äIз˜ØZù¹Ýg:A-4…(o”‚£tr¿;“bF[ëdìì†òåYPJEøìGpV—±öóvbC>/! XNe)mž·ad#)×…Zþ®}ÈÓlÀ¥24^EØ당@F„”z%)'Mn×RûjýFñ}“¯4œ¶#\º_¿½` þn!!³ºÈ°{Y’›'6\Ç–V%-4ÚV¤ͼŒ©B“¦ð‘ÍG‹-ø¿o ¶u¤­.!²ÙÊRåÔ›^þv|§Ñ¨;-z2•¼8{N 7À,oçeÿ’¯ûVÜwR˜çvÕÂNeª'ʬ’­u¶šœSª{Æ¥WµË© Ø  ä^‹¾T[„qs#~KV»ìǵó¨fVAèäís¸á#däݦR–¦Ôß5«x»ÜØß*­ílƒ6›:·•¬4””½•6ZЇ‹?«–÷]¬yzB"¹Tð«Œ0\MUˆ=KóæPRðêS]H¾•µ íüZŠã˜êœ‡d™¸xÏ/ªW]¤¹H‰4êUF$*ƒæ;R)ñeÅ•#31*mqKjÖ_C‚+¥.¡†qÏ«>Øaý™^e*:Ôîý¤[8ÝMÇyž+ÚÝû5)Ìël#tXºš7#ŠÃ¶£lÃ.š ’—RU™Ü®,µ”¶†ÔV OŸšÇ5î ³hl=bì«v½Ú4 ‚›¼Ä¢ÖÕG°6 Ah8‡BAÞñ¤RÚ\$$o«æ±²Hâ¹( Ù H޽âB˜9œá¹ŒéRÎSkXå9RNÒZqÔ³ÂXJ]ÑIE””+Uãšþpä®ý–YNf”;a Ê’±¡Î3]G³asÄ‘}-4²²ÚQ£¹‚³,ÞÊ⾟ð÷Ù†\‘™¤ŽCÅ–Ü× V§ŠÅYA·`›l2Wm3]BéÔ ¹mÞ.«ßCË`èO<¡ /Tñ-ÃÏ2B¹*ý’;!Õ€â•tœÇ½v9@áËÿ«RxíÉ–M”µ¬¶‹o8tRo›osæ¥WÙ;îÒД² råÍnD¡{çÓþå¹[| um©js6R¢2¥<#ОzÙV¹O+o€!ÄvÙ+*Ë{­G³cÈ©6°°¶m‘½Z›Kmé—2“¼ ãç—5€²R9æÌ›nÔ•%–‘v):¦æÊ¹¾Qeè”ñ+‰±?Þ% 9R®‡-}Oh›ª××l¡y)KªÊœ ;pÖðöT¾ir€ºÙ’"©*Hª÷Vd$\¥)âfÀ¯(êsY%yR\-4C\%áJÜYó2§Kƒûo ÚRÑgÈ–ØÎ?Kªó¥¥úåá図°r#Ç4Ñe$«ýÛë Í¢H!ZX+þ!Ën>@`ßgiÞçJ>¤ÿW~BÚu!mº…6âªV…‚•%C¼)$ƒñlä¾qäKS¦…ˆzêX‚Çšj5V;5YrÛdîØKS"‡ÔÐÞ¿P}áÇ4Ì®á1 mTÖ˜—Yr‡LÆw­ÏS”6ŒV„©n2¸Ñ¥¸ì´Geii…¸ò.kX´.Ï„«  (ßIà )¶TeÛ˜Zr‹æl ¼ÎJŠªØˆ…§ÍJ‡½HäA"Ãölê«àE6¼Ê@:øÈáä¯û³q•DÚÊå¦Ã%[„s)ðS“-Ï÷`•ÜWQóÕû÷©¬`kóÖ­ˆt]ó^à €¤òU¥“ÊêVÈqul_gZ¼%ˆ2¨ka—ÞÍ®.8²ß„l§[¬à4©Wí*ý²[Ñïcõÿ¦»-"³îµ…x[r°ÍÁïg&ª¿q:ÞÖÙY«X`îízxO,¸X[e àpT°­*•ñ`”€-†y›ñE…´Û(©àDŽÍN½ú×Q× ›ŸEîoœl✬àwRS‘´®§\ás¶úsôm»Mc ,¦¥]â°¶k{Öµý–¿³g±xʂȣ&•Ôw"4‡•J‘>G„„»ÎaRéî˜qݧ0YaöÃÎH‘H_»Ð¯ðçù‹Y÷)X“U¨qŒjTYp«KuFk2£È…¤].š’Úq—`4BÒë»Ò†Ýtbl-¤ÚÏVŽÊêîÃ} ©é«§4ì" ešl´eÜeÙ;ú¾qÔ\!b«_FTdÐY8c)²õ²’A°¸=˜qºö T„ð¼"´„).¶•<¤º(K9›y9I`%ÖÎõ[ƒâvc5S«u¼Íý§_º³_)Íïb÷7ÖÜJç¶qXÀ·Þ…”øR¿”¤(ðÛÞÆ™’­~4ó²Õ¶õª¾lúF½b¯rG½Žð¿ÛqèШŠÖ%`ó«b»[—/dÉ…Ó£k^Ö祶ΚÎ'ƒ‰uL@VMÈ ÷³Èò¶€÷Žíž&µ€Î÷!Úuþ6¬È#û¯®¶'ÓoFÀª¹𦠏ô«L.’O0òë®ÙS[Àš6P›ÔëöEûVþëëšÉ6UìG ¶Å>À¥!ZÍS®ÝŽkŒ,œÄÃÙÓãâÙ±á| J8êøŠÅ~œ£ Ù?P-Úí ì?¶ð?o>UUq ˆ÷¾ ?úʇùmkdðö2Ÿ¯×J®€“ÿv|Ü [ζ¤\줢¯P§w«ð¥}Eh×Ó†-˜ [Ñݦ„;ἠ”$Ô«À'µsÆ%@å<<‡îÙǼ9[p„ä(¨×•Ù°È«á”Ù9JךÊ9’„e±.%ל­`~² †Ñ.¹¹"ç›Þ FTØ‹G^u)I%!!J¦³/PZ J×UÜAŸ'©=¾s+TÍïVðƒ%Ù.É—sÂÒ”©O>æ/¦½ˆšñ#-©¦”aÇŠ†¤U\Cõ²Â›÷–—\Àe6^¢§_ ºÍïzÝ×6Ë]œ_‡0·œÿ´ñôÛOzÚsÿ¦Ä=XÀn ëo bæ—]Ó†ÐfJ5Ðö€ÙLø{Í´ð•~çÓu{ظ×С³HðÖ^CuÕ«ù{íaï^ÿ¼«üÀ Mëø ¶……eð•zå ß)W½ÜHÓñlãÍÖ0s€2øR¿k?÷[ÓsûÍû¬á5œµ- MÕTÄ<|÷`a›$ -k+Kæîi®àK”亪¸Yyåþës6\í§íÌšÖ*V®gªâo”§7ý×áÒÃ*F]/kÞ÷UW-Üê*_…1dÞÉá‹&Ü<†¹nuØ ×0%”îôÿjâȤ¥68_ÊìÙ(r»€¬ƒtZ£^箤{ØÖÉ'‡’»Í´!K¬`5£Ojø.—ä=ì|ô+ø(J“—Âuád“¢n0¾e,/pt¹¾ËÝÖðå‚„ñ  ì¡9°Ò’nE²Ž#òrWp.FÒ¤‚j5Ü뿜 pº‚J¹’m} …>³XªaéÔ镨t̴ǪKš*/Óê’ó)éñÙêˆb¨Þ%ð²²ÖX£6^>@`ßgiÞçJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqVÝ|€Á¾ÎӽΔ}Iþ®øGB¿ÃŸæ-gáçÕŸl0þØÖol1Â(/é~Îâ­º4ùƒ}§{(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ[tiòû;N÷:Qõ'ú»á ÿ˜µŸ„cŸV}°Ãû`oY½°Ä |¿¥û;жèÓä övît£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöwmÑ§È ìí;ÜÅèÓ{ðð§<5ýÜÄXƒÁÝKÂþÿ`L‰Õ:ß[Ÿþ·¼ßõo—röo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎØ+bŒà\mE÷¹ïwûÜÄTï x;L¨Ò?²*3«NëÕg¤AüÆC]guÕ£d’…¬ùú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶v®P±¯F÷pÌïxJ±ï+ÒzŸV¬SæCþЫT¤SãõŠ„x±|{JÞï·-eyÆÔ(t,ч¾,3Â~ ¬{ÊÆun¹Ök “?´)5(ôù^¡"T_Òw[˹žmÅ"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÐ)}"ô{ïNˆÆ ‹>-GÞž+¡oªSª±Ù…Öë³åDsyTçú»m‰ êûĬ6Ë¡]|€Á¾ÎӽΔ}Iþ®øGB¿ÃŸæ-gáçÕŸl0þØÖol1Â(/é~Îâ­£Aƒ<(P£³8Œ·,H±ÛK1ãFŽÊPÓØii–ZB[i´¥HHÜéGÔŸêï„t+ü9þbÖ~Ž}YöÃí½föÃ|"òþ—ìî*÷zQõ'ú»àXÆœ¨ïG‘BÅÈ4¬´,E™8rà¦âK¨KªBn$ZÛ¯ÏX‘FuèµFšJ^U-¦BÜ÷1S8&„àQp¤¡LLŒfÕxKÄÕà±:_‚Œ¡GMk¬"u¼ ‡ŸKŽ%ho ãÌC)8qœPÎX´å¢UFk•]z<¸”ø"½P©%·£º[r<"¥G-:ãmov‘7 U[©3I‡5‰p¦B”¸›O¨Ç‰>#…'2S&3yÅÊ/cmºþÿ1k?Æ4åGz<Š(®A¥e¡b(,ÉÔï7]B]Rq"ÖÝ~zÄŠ3¯Eª4ÒRò©m2ç¸ã´81ë¥Ö:ëd¡çaS© Ì‹]n°˜ÏÅy™q©ÑR™,.UF[M´¥%™cLÄÕf©­M‘Õa7¹•2dé9s`Ó©ìJŸ1ħ‰iÜ€‚»f‘7 U[©3I‡5‰p¦B”¸›O¨Ç‰>#…'2S&3yÅÊ/cm±Ï«>Øaý°7¬ÞØbcr£½E W ҲбdáÊw‚›‰.¡.© ¸‘kn¿=bE×¢Õi)yT¶™ sÜÆ°°[½ a|FŒ5x¢%‘S™9Š-*£Qñ”ºÌhËK2* B#´¤·‘+ RTêèòú@¬S T¦7#™¥!ª…gp•Ln…Ji ̈ûÜëi Ü—Ù`·Ö˜æ2&ካu&aÉ0æ£q.ÈR‚B·iõñ'Äp¤æJdÆo8¹Eìmµåý/ÙÜUîô£êOõwÀºv”é5ÆñšúZÄø’-;‡¡â•Ðdɱ“U§«7ïw©½Æ‡ŸpìBïRüíÈŠÚ”f·Óx†*PL¿ U¿ìüå/« Moü$Ý¡X]?u›®"”EIQ÷‚çE­±^ éDWptªTé­Q§U1#bºKðGƒêô—(ÌB‹VT½ûÑÜÃò¼+,ÆrIKÇTtXDz«ýâj$Ã1}‰NU# *d$GPÜ‚ôV®ÑÚŠÆè@`F›B^v.c™’[£V"µW¦Å§ô‹HÃjÃ'´Õ4o™Â⥻CYðks[upÜAÉ%%{t+ü9þbÖ~Ó¶§I®7Œ×ÒÖ'Ä‘høqÜ=®ƒ&NŒš­=XÉ¿{½Mî48ìû‡bz—çnDVÔ£5¾›Ä1R‚eøZ­ÿgç)}XJká&èÍ Âéû¬Ýq¢*J¼:-mÒÕkÁÁµ1,šjç×âbJÚê¨0ñ98v‡K¢HÂ,Cf=*Fý“\ùrª'_}塺7Ä8ÖdüˆéSq*ac<$F'ÂøZDè¨cªW f‡Épñ=¶ZBݢƦ3!£)¸éë1ÌÉ-Ñ«Z«ÓbÓúE¤aµa“Zjš7LŽáqRÝ¡¬ø5¹­º¸n 䈄½±Ï«>Øaý°7¬ÞØbtí…)Òkã5ôµ‰ñ$Z>wCÅ+ É“…c&«OV2oÞïS{;>áØ…Þ¥ùÛ‘µ(Ío¦ñ T ™~«ÙùÊ_VšßøIº3B°º~ë7\E(Š’£ï΋[c¸XÓš>/—]­>ôZ­6¥UÄ•É2Uš5kÔCRÜiš©Ý¹OED1à‘!˜áAõ~’«8¯ ã,ZÒÇ±áÆªÆÃ/Ô!¡¶àc8“ãNß*±ILX+qøûÖçÑ֥Ç*uNc™’[£V"µW¦Å§ô‹HÃjÃ'´Õ4o™Â⥻CYðks[upÜAÉ%%{P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöw{½(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwø1«Hòñ‘=¸KKRzŒHaĨ¥é³º¤âÆõÀ†#'ª¨>úÃ{ÆÕ.™S1Ÿ„j4øSÌ9HSrb‘›cHmÄ6´>ÆótêÚ— ¤$‹Яðçù‹YøF9õgÛ ?¶õ›Û AðŠËú_³¸«ÝéGÔŸêïðáÐ%Véqë••B¤;::*2Rµæjs~¤”´áAÉg7ndÌP«hoÌiéÄ~ã¡øÿÄèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwø#a¦+ }¸ª¥=]¥·R]ɺŽ`®P”wxÛ[­âó£*Na´¬"Î §«ÃË¿¦‡sƒ¸eטÒe 8ôHÏ=%wÍ#*­›&vj<::u."u1¢¾ãòºã¯2NçÂN)»-ôq¦ž¨ =à¶¥2­I묊°î-¦Á 4 º_j“ô­Ôê\èŽ6ýt™-ÓÌàc”Ni¦]HDöÒÎã{»Qr2ßhêq‚êÓë¤ÒhoË”¼<Û2Ù}šlv ’¨ì1G}ÈÓ(BeJTwD‰9¦ÍzCX¦Uj¯W[ÓV#e銒ÝZ–âÓÖc–&;2Àµ44ÚvÊ#ã$³³tº&*†õEàÖâ$¸õ [’Vòs!ˆ†©s$Ûµ*Þ}ám‹m[ÃH¨¹I5ˆf!žÓ ’¦P§S‰Tu8Èy§ÛJ£¾Þù¥)‡\uµÙahÖ[Ÿ6j%*'PCi˜´¯«³®NÝ6……8lù<ë®åIY—Яðçù‹Yÿ 3+µze"ÞÛ“THSn:˜í»)Æãêi—œK(%Å!§”…YŠF }ÚT<2ûLØ“Y™³> *«M’óm¶†ü¦YˆÒ%Lb§gZp )¦‘`ùSð­"˜´¢4¤ •9m¾¬²ç«p2Ç,’Š2‹ñÒ½ò¤½,­¡ÄâL6ø©³OÍÚT´¼ÍN¤4CXv3>mÛ ­ýìð¤GáCFŽp…& Ü×&ø_¯›4–â¬!†a¥ž¡×œ‡Y–&>”1 »©ÊuÂüJãŠd8u<9ள2žã‚I5eU7+jÛ×a-„Sr¼“2R[›Ö÷ ñÿú³í†ÛzÍí† ÿ’l¤¼í†$B¤ÅĬbaU[›­· +H¥š`ÌÛ­A¨&`‘á'"Ú –Ž®f°£ÕdÑf.¿X‡T–œ=kR™ÔçÔéðF²ôxa¤ÔÞ§¥cqN“"3/UÔ¥ƒ)Ôâ¬9J˜ËòÙ]2DªC°£%+@%º©ž[@.¶äw¥d/RSJ¥±ˆÃ‹«!’Ô¾¥1º|Wd”ˆñjR^e¾£!Ò«)/¥)‰c×—éÌÅ>3 I¨É[,Çj4ö¤2ûòC,Çfk%pœ’ã«KiŒ™üÆÛ¾áP>_ÒýÅ^ïJ>¤ÿW~\Érê¬E‹"CòŠs̰ҜqòœªÍ¹BK™rªùm”òÙç¥,ÉŸ-ÅÍ‘)kZ•"SÅN?œÙkun•¼â•eùֹљs®¶ºL¤Íb:cÈèÌÄj=@”yι%KVeÉž·_7SºM­Öæ•Z¦¦Ý“R}¦£çu†ša-Fe¶R„GŽÛ ²Ë)JØl›ÊS–ͨgäyr\hJ»“¦ÙT”“ÅÙ$¯8U‰:~¶¹ï¦ž®êî”’›$ …”9V'Œ‹fž[6ëJVG„¸â¸Ò­¡I×B;9N—A¬ÒÝ*zŒ:¤J »¹z3íÉ„âÛs;OºÐ[ˆ}.!háZ Rv¯ûþÅfPãašµY¨òZ‚§¤VâH§:ˆ´§,<§]§&¢cÓÒóP´R÷m”gêT&jQQNŸÔ$ƪ±‰!ÂÃRêDI“˜S¥Ò”þó;N…´‘KüœSáŒ8Š*hU6¡0ëõ3¼ZëT™J’C‹ªÓÒ–¶Úe½ÔØÉ\hëÈèWøsüŬÿƒAFqfVæMßV4ÅBLDWUˆ³~!~y’¾Û©i†J:ÔˆÔ|5‰¢"lÈu¡UUq+SÎæ¯¦dÓáÁ¢ÃÙmÈÅ´©¸êSì<û»Ô2ôÙÒf†"Æ‚ßYüƒ›ef ]úœÜÄa¥) Go*ÅäÖè³{´nûøIPËm/˜Xˆ*ýöÙä´²”Ù@\ñ(9wž.!nW·Å²­ú@Í‚SudQÊ¡”ë¼'·dƒ¦ƒ.Ó™Âu™”¡XKmMêíÄqÉ -°T_eÞ®üt8ïTÊ™•N¸¨î4â–£' â\S.m1ú,ÙÈõéMÉœýs¯Ó–†âÔe©Ê”•. ªnuC)ÖÂZRÒÒ Eÿ/ú³í†ÛzÍí† ÿúæ!œˆ0!°¢ Ý‘!iRš‰”]ɞȭÛH’¥¨¥¤-iŨÕz¤ŠJšäA‹E:tWß Ý*j§¦3Ò÷í·¬Š{ÓÔäiJ»(ukCmå^äîÏ–rÛ÷ƒ{Ì©Þeg|¤q(2Œü‘²CœhQÏth´¨[(#ÅÜòÞÝ×Û­(æËÆ«fq[…9yiÞt¹WpDÆ)SE¹,:ë)ZD†T›Y Ì•eRláHVRI7µ'"˜X^õ•䋤- OaM jGž§Ka¸·ÓýúÎëÍJCÑœ‚ÒÜMblZz”ÜVèìÊ~a”±Ö[uõ,)-f]¿Á |¿¥û;Š½Þ”}Iþ®ü™zíF-.›9ž—-ÐÛ`ù6;oÈxðGŒÂ\‘%Ò–XiÇT”K;â§½ QÙ&›!LTaF~¹KD£6›šŒŽáˆ÷YŽÂ‡\m*¶ð](µ…&hSIS´©Ò!¾P—° ±\iV iÍ—æßgŽSá÷%:ûÎyÇ‹ŠuåfZœujR–öe®ä¨Ýzìµ8»BQ—Œ+(Vkñðöu°³mêUœfZ“U tÚùn5½¬ÜO0¼‰RP·r5|׺€$( -É)Í›EwlѾPµq´…)Kf÷PÐj8ooE­²TŒà gó²RF÷K$Zù”«l¾°Þbu”œÄ&ÉýDBs_™Ò϶– tleì8£•C@m˜©»ë–ÿ·mÛÁHq¬å-¥'–}æc§Ï`nœ·°Ëéb]Tš\诓S±Þ aHZ\C­nÉʬ„v†}©ÚNÅÕvhø Ó”Š¤Ê†HtwgD}Øà®¦ Äó*QYj¨¦,ÔF\”`´ò¤6Ú|l9]Wz™»ë©†áXl:§ÛˆYHnC+SK ~2gAÇÄ‹»N©ã -N¨0@~ üAI‰1’¤¡iÆ‘-·›*C¨ ]+A(~GB¿ÃŸæ-gòש‰(Ù­Ç\·!ϬSáÊDV›Þ»%qäHmÔÇm¯·ŠChoJ ×j­aŒ[†k.Óá?"=.™ˆir¦Ô¤!¼ÌCˆÜiZä:PÖõ 8†[®Ù¶œËXÄ’§&UgJ¨Kqµ¹•ÌyN­†Òæeñ–4©1*%ÓæÓæDÉhËŒâ¤oy)i’ܶ ¹C€>E½£ÓzC¨¨×WWš«G§G‰Oð{­B M«¸ÛÌFŠê$»/­®4VXf+Mº¦QÄTÍF“>NŸ'9:Ÿ)‰°ß ¸¶œ,ÉŒ·w#­­¥äYÊâƒÄ’?+ú³í†ÛzÍí† ü²¥”¤)J6JR5$“ jIå´<Hj,…d¹*Mq€íEö 2iÃ>%¦¡Ù´Ïuǖ霃u¨¸©HS·,^ä2¥jQºÍ»ÜÛ?¤ë{ìÞêê‰lðæ%!!JäœÃ0‚Eǧmà! Z÷D)>) ö¬n9(iǯdwlëhy i°uäJ-É:mq›ÿßd$4 †—Ä£˜fÔ$$æÎT•kr0‡8^nêJÁb;s·.ýv[M¥N¥k l(Ùae%K?¼ë«–»b715IÆèÔJ³nE¬×j›ÆŒüFÚ“ 2'È)‹ñCˆ9‘=ô¡EÀèKS J:#à©™PßjLg’PKO²¥´à J’JTl G1ùt—ô¿gqW»Ó&+ªG™* /ýX€–)ÅO¨b:c±!øÌå&4§”§AC!Å!.¬%¥â” <ºM6Џ‰…$¾d)Ýúå$µ1E 6™+C(Óq’âÑ^ñÏЭçhmVéÖ˜ý=!º”5Õñ{ïOKÆ[~'Æñ´<_g]¥áJ€®4õ>¡àÙõq9£D’?K½Yœš‰j:ü[®³Mu9[{Æ|n›D§À«a †Š¬Òð”å¾:˲è2›¨uÂ_Џn(2ÞKÞ9˜î4òYÂØj•!Ê{ÒĉuJÃ.G„ójŠí˜KÝM™ÃTa|.užHy ݧ‡0ß)Û›ƒÁãBŠŠ€»kÊO jm“ºZB\KIqG0\„.öBtý&PæU$¢×âÐfNêÎ6ùJ¯˜ªÅ²¢@E‰$šÚzJ3²¬•=’ÌØ¢Ê@:ÜžÒŽ}y4ä_rÁ”„-ÌÙU”9åä.ç¦Ü9^! X·»Ý7™G…¹§Ìáì§U»âSmóP 9bR³¢Tl›æ#˜ìàBÐáy[—aڵ¿á WÄ8{ÍÎËŠ¡¿_`)7ÐÜ–çKúvÎtwÆ+2ôÕ¹À¤ñ(§ÿ2××Ðm½R–Iv.r8 ºHñ¼JÖÞÏ»bàiM…¨RR”/˜EÇÅÆV.Ÿ6ר4—+©qÅ­ÚÕ˜ds‹2…ɱón=Ú[ø:®i‹Ÿ¹b¢â Rª9Ú†·7i½NÞ®„™8:¹k}dïsnÛ ~«ˆR*Òêr éïÆqª|‰²‡ÐS7Ri¹äuÓéeÆBîšR½è/¨îðg„Íb`q]xRìÇ–ÓQwoÄL× »%Å)‡ fÓÖ•;t½ðóøz»àEá7!DÃc Î · J•."¢-¦]I曄úÔëy]rE2;Ò›©WÂèñzÉq33H9"3rZ‡ jÈLyò‹q\â-¸æEmÑã˜â)§×)XÃRM8ÁêB"1[UB8–û*ð‚äG˜·du¨ï´ër`´¯wÓpÎf©†ëw8– bÊ’ºtq."dºëÍ==1,SÜzLG¤)þ»! a,2“RÁTéÒ\¦=63‰ríÅ‘"˜µ·Qf,’28¨kmip¬4‡r©QTúVÕjýCyÔ¨Ôé•9Igv_q˜L-õµ.¸ËkðFê;ku°ãËB3§5ö›Rë0k¯%,Å©×X£·…泺˜ÈSfK›òZë[¸í>[uä>ÒTÒꪋë•T«ËvmJS‰È…Ëšµ:òËm„²Êµœ¬°Úa ¶Ú[BP _7~›éÅb™’/™=ÇgÒ2¬$¬æ¿›™@iËŸ}‰°Ø¶Ù ¼Þªt+:Hq(R€BH*6Q9F\  ƒ±,„‡#$õ…YÛŒÁ\®9(üW"Çdo2!.,-*âÕWFk w‹¤’6M¬v(Ãx¼™ Î\¨Þ9efráçtè5Ú>áC2ž¥Û*µH$‹-6”âs!¼—¶«*”£-…û ¹…ý:œˆÝËŠ%Ë©VË—ˆ©ð‘’ÀßÛ«%‚™s/¡^l×:úþ+m“FÄ(n“Ç iS©Ð%ÃÎëŽIq¤-Èæslºëκ±\b§J—|Å@ÓpÖ6G‡ˆk©Ð*q˜§Â¨S¥U\… /ňÌ2)¨’²ãîäLöwÏ­*˜–؈?#ú³í†ÛzÍí† üª¶ ©TŠ|ºƒél²y1[ýZ(ôv\—#&æ+Ky ëëm¼éÍ}©TÜ7áˆTeéU8U(ð\ŠŠ|\‹"Zœa¸HFäÌ )ÇT¥Æ;¨ÒÂÓbÙJ¨R¬•)D mÅœEÔ/{ ’‚38Wuf¾Gn¥e@n@n¬Á6ËÙUÓ±mM§Ç##A¼ÙRâBŽuwìê-·•‡–)°þ.]âÝæàsm™JÞ¶VŠR.’•hrß½7¶kj>=¿I•,¸²‘|üyÕ­Õ~@å·í'S¦R›)åèï  Â8ªÓ´ ê~-’é ç -ªÄ­JY¸*âᵆ„ƒaèØ”©Òˆí†Ûë/xÒ3ïÔËi9’Þ,ºFõn*×9¶ŸI†¤TiMôÑiõgb‘V‘=™/KJÑ’Bã-¥TJ uÆÙrsíHIGßÏ TQ¡cš„ùvD -QȵˆnuhoxIÚ„B¸£¯8$%´£ª<Ú$>TÜgð¤Æ*Jª:‹ñMB´Ú©Iv>]=õ>Ûs*)JRüWóÙ+1RÉqÂáWäÐ>_ÒýÅ^ìרµY”侸b[,8UhB'%´O§9¼RizB7ãIgvûüåÛšüª ¨´èTzt\7"N†ˆPP‹®=6ìv~ ¤ Rú£-1¾q-Å#c0Äè.;ØŠÞ°ôGÖÃÑÝUÙÞ6¤¹•9²œ¤h« Ñ>¹]’ªµAøÌÏm¦™Z•Œ‰/Ì´•¸ž¶´-Ç\qE7Ø8]ݨ8dØuHÐÛ¹Dó\ ”Û™”èXê‡()-©IQ#/šSdº¾ðß5•¶ñÕ¤wå­ÛêJVRžÕùIP¶§žž/|±e¥IæMx²¤\«†Ú#®Í´úic„€‚‘ŸL¥+)×Pls‘~{-±Æ]KŠ%kO3ÝÉíÂÉSkrå-¥JZ]íι/¢@ÖÝ¢o£n).¡n•æÍt•E)Nb.žØýaÝ­Ý+B¸QÀuZR¡ÙÝ’-ßk[˜µ½%¥4ÞD;}ŒÉâ=¼êJt§Ñtüz¡Ç,â”°œ©o0Ý„¨¡bÜÅŽb®Í¬l-²–Ú7yw*Þ*ÙJ•É7RS×±—oŒªN„ó 8;‰Ó³¢6¸×A®ÈË™´f¾d•<»i’Ç>Rl½FK'¸å¾Fê^óÇ=®þ!kœ§_Õ2­ÓéNe¸|Ñ|ªº€ 9O‘eqm”vPëŠ[ÖÞ-y‘—29l“¥”—7;1SÄ3ãÎu0ü ¢3ãD†Ó¯Hf,v ´Ó-²ÉuÔ·dr Y:ì…¥AÆWª‚«)D,¼Uо@÷yÞ064ÄÓ¥V¢U0„©¯äŠ'¿ÕX!œ©êì*_U‰”-õ¶·œPv[Å×xÀVÃr ÕÔQˆK";”ûq·TÊ‚Þëo¸ „ÉÞâ,ê¢ÌÞ™ »„gU0.$6Þ™ k†õ}¹r– üÄøF™Ôz€LGÐÔw^T¤¿Ü­¸)‰´I”ªÕ:£ zåǨ!Ì?5ÄÁ‘sïCq¤ÈhïÍM¾c¶ó¹êdRdŒSNšÃU‹.$©Sc¼ÓÑ·M°w©¢ŒòC ï$4Q2JÔ_vC¯ºë®Thõ\K&}&´ë®Ï‡&,-ÍÖû2Duª*†ÓN°ÓŒFŒã F(³M¤-Ч ÙÊ“½)±F@<ðl9 ¬ö»#D‚U”ñïsdÞ‚¡b¢´¥'1ÖÉ7Ík”\fÝ«*.H RNlªp„èH<¹Òû8‡WºáhåñjÌ‹’OfáWM¯7B­œÈ„wyV¢AHär*Àpë§pæHØ©[䇽\ô«…³Â‘r‹Û0=Û%z°•(lZâå¹VšëÃÛ²Õ¾’°Prêß³¬šßöp€nNÈKÊÞ¥@¥±¥’{D#cÿ ½âJl§m}•%‰q$ŒÃ-íêSss®Û„\BÂR¿8ðæK—#¿_JM½7¢·ˆ@mV)&ç>ee²[ä|øl6)Îâ‰Ý »JJSœ ê¥]9¬-çŸc½gqIRx¬²{çæ ”«]O~«±Óh5ùÑ ?TV`:³*4%Jy™ ŒÑ¼O‹–+J\u•¦Ì r)U†š‚¨ûŠ•1|RâÔŠ„—©ª…+Â2#¬Ñ ØÍ$˜½uOKUcÄ@е1štÈ.E¨šgWmŠ{ B#в&…§ÁQÞ 2Ô’îýINíY†ë˜ºµàêKsSTOË…‡âÁE?xªs²eÜ™)—&T¢û©Ý¥ÝóiŠÎçtHEv~M.3UFšj.x6}. ¹ Ë3„ ;S‚ëL­¨ÂR\e×S–S˜"gaªLÔ HW§]¥À”¬[]q%LJ”Ó )·´Ý:¡hPÑCj­•Eg¦œa4Ýb-z/‚äJy˜ò¥1¼XBb6ã±V´:ó¤Êã¹´%nˆ“dÕ&51èaù4Æi•C”eÇ`™#^!çU™IpD}l¸½ê²¶iIÄmQd¸µ¶¸X‰µR\ޤ—²ï¦8WHÊólï[[5'QgYiÅ7)ή‹†©1*ØN›½b\©MHf}RTc(:ºLÆ';˜/”FL7äÓ^Z³8ãÍ6‚2F5×á1œ§‡I‚Ò˜¦ÄvJl­jq×$Í”Zm6~Së ¤&qš’ë;6‚³v³æ-éÄáô£’O›Ë¾÷¶Ê pgQʳe$'\æÇŒÜèUÈþ÷òUd»žå9 ÊS~^œ×½õ:ë²I[k^ô¤~fWeò° ù-~ý·¥å•6Ó…Aöˆ)?·ïç±ÎÒœd£0)Â\ïWfæÀ[â'Mؤn€x¡.!]¾,¨¤Þܵ¸IMΜ­°©ÌÀ¥ v’€,©¹½ÅÏ£’AÙ·e­) Ýk`ŸùÜ[[ ¹ô–Ž5+Æri<Á¥fÉÊFŠøˆ61Â@ݹ¼Ìêm⸆œÍÇ$ðþÍ^d º´–ÊíY¯*:Ø_¿7§b•¼ÎQº%9†·ÓDþÎc¾Ûaœ!†&K¤â 4š€¨Íz {ê[ó*a3¯ ­†ã¢Tv¤g„Ô„£¢"÷Ix¹…©x†C/UꔚTœCRÃnÀ©áŠ JsG¬Ár\j½Aå˜O¤uÏKÝmÃ!Å%ä6ý)Úaf'.žqJ‚$¾æé岪¬j{QÔÔªk„m©¦[‘?:BVò„že¬kGiLËʦ8ä\Z­gY‘-¶Xv/ëKK]°38âPR¢^ÿH/ IV˜šŒVr‚l–„ÍêÔm„ ­zd ¸ÚƒâŒ?Z’1½.ZâÒë'Kn0Ãø• yè±ßrC-¡o²Û…ÖÑ»qÖÛ^U¬'ÝX JP·Þf! äDœºöùŸ7OÖî¼—º_.„›œ¹”[æx´"ë7'™$ìäw[ p¨9l«ì¨œÆù³ëÿõÐße%ÒØaýZ9“‘ÛFDòWxÝ=‘´”$Yô¸K`¬Ø¸•Y7Wê{ß¿fÌ—Y(»‰¶fÒ¢á ’pžV$ÛKvƒ©!N:¥ Ó–ËâÒ HRI1fè&÷°:“´RÂÂ×h(ikÜă¨Ìœ¼ï±D·l÷ GùH!ÜÇýæ{Ž+‚=(VËnC«pëgT»POd·—ÿC®¢Ü†»g 6«®ûë¯qÓ5€7½ -Æò¶Ô»öÒH@[Å[@rëß³„©Y”¢ŽÒTIÿn¤÷ÜÞÚìÍœRT2‡P2¯>R Q6Šå<ÁçËd+;;­á9AV÷( H Ó7+…wßdèmHdæ×xµ"ÖA$k›Q˜kÞ= 9ІVŒ¶•i×ôÊ:pŽ"T\Æa£Á‡’·V,öŽjÅd é©çcdßPtŒ„ºRcäʱb\YZs^×ÊÉy®A °±×d5Ç™K¸›x±˜gZ¸¬@‹ÜiÊÛ.:UÊÞç_É0N{Œ¾1Å—ï:_d»™aÕÁüÚÖSz p…e[ê9¥ë£+7%žÁR{y¸Š¿I˜ñrÌùë︒B·¨†’R¸)P+RlBE¬Aº¯m¡8Ý’È0Ô±aÁ㊖, ®=yì7JKvëJHJSªÚ(SIVkÛx  ¶[å?¸ñð[WM€ Ê´^èM’-úÙ~.ý£7ŹÉ@7mH:qY%*Í”ópì€Ë„£#o6‹€e8• òã ±Üè=;d}.¥mç6¿kæ:úEõÚB]*% >-9Ftæ¾$;€œ‡ÿÔ/± È%ÐÁ) $¦éʤ&Ä@ºtâ>uöl•±È¡\Z¢êÊ ¸9ú¤žþW!L®$´Ê™âJ2½“’®SruÇz²2*ͬ”fú{«[G~Ë^%ç‡ÍiJ<:\è½ôÓb¦Ÿq·Ó˜nì• ÷z3 ¤#Qè¾[“°±:Å Ðék®Ãk¸þöBwœ)JU›ß*Ò®8uý«XfÙfbÒïêîÇGpósƒ®S—Ò/²wy“—‰o“% µ9ˆÊ¿3 Ù[”øÆÿFíÂQZåWP5Ô<åp©@wlÛÒÃaÕc]ÒÛ6HQÌyÈìâC¥Ç‚”ZÝ¢Ÿ‹ã;§WÖP–ÑÌeÊ3%dåV«í\ðØeÊvuMX­Ü qxŠÉ°ÔÜÞÚ]J<†ÏN. ¸íšm”Êç®{p߇†Ù´'—"¹òd7¿o0C:ötQ!BçˆÚÜ¿nË{2Õ-âݲø¤¥\€@Oh ÝBü‡»EW‹³¬ºß'Îç‹^§*÷|CºÀùÝÊT”…?œo NR.°3§/$Û•­ÌèÚlçÚqC¿Qdóí#E8¹mnXm[†‚7fË+s·©EGöñgãø­³‰J^BJ{òX›£*¿Þ(èTJ]elµ¶ãjmÍÞD߉µîŽ‹9tIX2ùÆl£@6mÀ»u¶Ê…Ò²—“p³`£`F\½Ú¶*BI,¹“-»IJR’{õWÇ}‘¾Ì Sb8NT«y¯#èW>ðtÙÆ’¤ïR§²Ø Ê2.þx°MÏ íݲTKƒv¤fAæ°yÛ‹’ræPû¶‰ F[£‰%³­Âxˆ énñߦÁ6và'Æ‹ø´h }*Xº‚uÿ®Î¸å‰ñe9lE“›2n4R×Ãa¨yŽ ¶ï” |‰7¹å­Ï?úl§ä­êÐßzP¼Ë$‘kð‹ë¨=ÛeG‹h©enZÙ|YÊyŽk°°Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöw{½(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»T÷•ŽðÃ]KÂZʨõŸu¾§þÖÀ³·;ž½+ô­æ÷ÆçÈÞO+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmEƵÜw€'bl;àïÔ¯*7SðMEêµ?ó8x=>GW¨Huÿ΢½½Íº{xÊRØò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦӰÖ%é+T¨•.­×autÃßu9‘çÇüâG±e·»—‡|SèÏ“"ó6¥¡PpÖé+Sh”Þ³Ô¡utÌÜõÉ’'ÈüâG²¥¹¼—)÷|këÉŸ"2¶”!>V0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÙŠ.1éV)‘j U‘Ê~IÌÇ•·÷Ô¼ B²Ç›%½ÚÝS'y™M•¡µ'ÜÿÄ'!1AQ@a 0qP`‘p€ÿÚ?!ÿò®³(1Œ0 ÌÃ@fqÉÎrs‡ñ°÷V°íÂV’°€§}Ï– ”JºrrIÑ ûÓ 7Þ³§ˆœÝî5·¡:@ˆ[lö´Uj`8eèQÑ“_³QŒAÆWÉFž:–ÍûStQ5iívù.å!Ÿ—W\EÀ BA?jÒˆøŽû>|×£úg îg×éÊizÈé¦ZRéá3‰*›Ú˜î¯ÍploÛ§Ën1®Úܸèèû MÃÆ½k@^›ÄWé¯i[ RQVÄF5ÍGLþÑDCyâ&Z…­‘´Qé„ÇЧ©5ì3ó._ÇùóÉÌÜôs÷^]µ»¾Ö)×G§!Þýãg ÿd§¥z˜¯½Ž Œ¹=ä5ëµÛ/åÕ§Ë;î|°û;J( ˜G¹jY{ié‚qbúŸ‚i¯ŽL!ÜBˆôö*õbPõ;ì"⋦«å ÀN²£ª?00‹2îzªüõ + ­™BÈâÐê7ÍaÕaP¹¶â¿(¢·¢q’ÆÌ 8|ì 4± dO$r!U>YuVh!©²D…¾6«ò¯E ¤EÊqÂÐ} ñ¨…Ö¦Àø<'Š&!hÑ™{rsC­Bã2È×û=DeC:Ú:0-ÎêÌïT2JÈ·0:2°)k©çJ…I¬4…ŒIIÃè@â¾ÿÕÅ3ìæüÀ)GÀ€ É,¾|‡ñaü X1; áXͧ‡„ Fò3á;Q~Bxž©ºYb ýnÖñ‹®ÉBA|‰SçƒãóX)þ'T¼´ªº²QTt‰+w÷Ìî¤ÜÇQ8âúì3Róù»ìàÄò/¿Ú2EÏ–Sbáà ]M°w«ø18×âEV!#Ç-‚?Á x2mظ$“ ›%å,1LãÜ5¦ÓºÁ+‰Õ¬º“ét< %k¢LÎöñ øÀÝãʺ¬Ûßì{€Dã /$èÔç‡è 2 .h uÊHL6]RASº ¿°¿Åf¯$b!×b|GðZ¡ÂÀr èiD%¹wA†@ѲÀ0‘LÖ£ÐfÈÖ\ÞwpìÅ‹¤CúGi|§ˆ¬a°(¹}‘€(„"± ¼Ôr¤™›Ã-V;Q± T¯”‘ð–ðëÎhIðpx·¸’¢Iˆpv:ŒÞ6ÀnN›:’–%RðxLÒÙ´n¢*LY¯âÆ©Š*:@º¡yE3Oî1´—’Þª&5´k £øTªIj %“Ul2ÖÉ{|¡êj¬Âä?B¤Ænð‡?OuìOaöÑ.û|¬ƒ /P¼‘Pö_ÁôñL5KÂÕ?Y±m·Pßyrc—(+\v€ A¸‘[aæ4ã°"”öŒ.ý”).•éÛûû™PйòÀ µÔ ®ëèÌó$v¦JÓƒŠ‚e2„q˜ÄŠâÖÎk8T¦¦A)>g ¤5­Ë¸ :¾ÕöÏ‹gQni¨R¤:—ÓŠ°9*“B1Ž&&ÈSµ1°!à!‘üÜZ#åÁh’o@Ñ@TyŒEº¹U“ÞaÙc"EŒH¬/7b¸pLŸ’Ý¢Q@4B?©V-J“h$Räsf²f—úÌO(Jò×^*ÊœÎñFÜóa´PmwHSÊ!õCq)Gq1ýA P±G„™†0ÿ"6raTƒóP»BcŒî£5ãÓÂ%€? Ÿ°¿2¡msg·˜¯¸ßÞ ÉšŠµÃë¾4C0>ÆSÈ’Óý+èT£6Ǽa8`•\a¡š…ä^U¶9†¤†«ãMAdí:,Õ¸5Çpœ=F# FpW®+x LFb€lÙívý‘}ZI[ " ”«™ÿÚ ß`Ÿ­]æ&üØ;'  :-jÞ>‡u(®ûæx•T1)Ùì+: ‚þûçüj ÝÍÝGaa EW‚S™åOø}`eö|á"µ­iú‡%AíU¥(î&¾ &ƒדÝm]’m|ùaìO‚qæògü³?´O°â ~I[®¡¤Ø©´ σ–ÒQ+0Ç`pAly1Ä`AÅl•P„O>‰Ü2:…AaǶ_ŒöO ´ )€ùÊîƒÚÂo9,1rÂ%¢iíÆå±MªPÂé¬åža6A- ®á;« ƒµO¨>‡”ÜI\`Q’1á0«Ì³¹&Ðð–‡ÑC¸¥þvö!ö_tGÓs–N”)PT©º1‰Tôç¤Í¨5 ²%«hGlfÀS`b'.Žnº§[F Ç~(šŒü‹ßxñDÓÁíi’¹7£h”š/È‘·‘ò*ó‹?¥4ÚeÛ›éÔËßî{Åÿa»íÏàúGêPì s}°tTÛ‡¶s¾°|=hHÂÔjЬ£ø'Õ(¹_]x©…ç·ÀæNÁ Ô¥Ú ­JAÕ&t)'D4â¡¥ 3¡ðµ0O/=Ãj£81P™ÂW-fƒZ!•æ›òª°ˆ”l°Y-|F}$ÕÄ„ÖöO“÷ý,˜â+u6-Óî|fGÝÈç`!}3 ’ ¿Ñ)Qýhj2Š{ë °Öª¥D6N˜%ÚKGâU³óÛJ‘á[(9e·ùkÉy 3Ô‚¡Ôå¨U8ÌL0æÔ¶±òš¥UØ'×_O”Òsâ_5 ¢k}!".+Á©ù1^,€ÍBû‚Œ‹Ÿ^Y«šM”‘^„|ü»„$°Lé€xÈvòl±N8VI!„"ÿ øçUá0ÚÒð‚‚(Ùì8\Œ¯×RÕ“?¼ätˆILE #ì\â‘.@ Â_X"¬1îõZ‰7Þpù÷“VO|¿–Ç…é@+p‘fô‹ðj9ø—>»î yZ[þ$?PîÊ48zGÃTÀè1¢”zjèaé"+™I%KZ&t‹Á;}d/ B,S6­d-‡?P›&×!|æ4A’)Yê4tQ}ŽHvéæhTÎ2¦„‘h°`Õî}­ñ"¦<3£BT*×ÀÉï†úvÜ>Ñ©"°ùŽ‘(tIû ·{Â1!NQn7ÒYð.Ì×$ÇX j.-ïT·â9aB0¢CV&‚²J»#!E¨o¤‚Þ”`¾rü4QBÝÍ€KÆ%Ø#¢\˜hé±°‘?¶é%p;lר% ŠRD’íë¼ò¤|ÍJÿZÕ‰awÇP¿´ãÒAüϪƒÅbš=®øÚÀÛvà«L‘'û *q³E+ ÅXºSäM(dA¬ðãÞÁ´>1 Eg79W M°Ô(ž–íGBÅ áP €ƒP>⸜¸h^ù!8ÁíRB½ ˆ`#„~0úâ ªAÂbF ¤¼`QbSnMÞ0;€jÉ BE|E®>„ØßÓÝ™zÔŒŒXØãçžï´‹-îxÏÃ<®wR¦2°‹•ð ! W°=PÖCíæ>ua±N(ªÐ<ŠœC7Æ©y¹ªN±AëKƒå\éUJjÁh+œ7ä$ye·ßÖÒHàjf4ó ©Eò3ØßÀü<Lþjx2®R»Êf48¦K£ÉJ ¶<±´W#ƾÃÌøXå{0/Å縧ؓ·0·ªÁ= µPKB†ƒø ‚.õy"VÐ TT–„2d áö<^×3/_ý;|viq^Š?ëè #7GdzòO@hõ0i6‹–N¤¯CÛ ­?ˇFÊì• O „3¡P °, ¦zÇ£DÄ„'EdˆDGUcµ˜'jrDd…¤½° ‚! õ 1FèûÀ‚Ÿƒ¡F“Ã_…*LPVb𪅌ʪuÁ º(‡*‰ÛQóôþXL^NCm˜RˆJèP! ¢%uÖL.!UnN Êb¾ j J*P¨QWO¸ÀR×)õŒ™š]z £4J­†®€ 6¡ rþ›Tç—ÛaämÝu-«E„1xkÆdWÿ^Ê`þ!ð!'¾Z׿G†<„¶ñ´êÀÒ0‹Ã{ß…ìAp #©´¯ëŠ *¦Kü„U¨$ž%!/á±ö¤XÂÆ¸¦zR%1¡NJVó’iLõŸv‰ø€Î xÅ[}@Œà:…aeÙ*µ ¯<ºTV¤_BÈ`¢ÄüA¿ÁF@¬›‰™„wˆc˜5•äÚú@Q ã†üP??”c 8¼ÜâmxKÎ\Š`£€G§ÏÑz9=€„"¢»R')ýåäzzúÏR¥, îÞóC4äCp&ÞøQàôtÐáS5Ë—~•”Ë®9´ß€€Bü3AÔäÊ-gÑtôm¸Ú8Ù2‹z€w&zlËŒR@«ƒËTQÏ¢C€ª Ëe«!’«ž4n„©, š|Ðá0ë^u€Õ‘€5×K´€¤ÂSuÙîDç¾+e˜zhÙ¤Ä&E?‘cZáÊyê ØIQqraOL𠄇û"NT]â&¬.žÓ‡†øÒ¯µvÕ·€]Ÿ¦>|  í÷†@'u³üÑdšwJ܇G°è@öyÝ4M”•ðs6È! (ê`@QdéÕx Aθ7@ã^ /Dˆ¯ð§ìE†”CÀ€?*> _ÉFt€»2†‡kGÛBüY .^°Äm€ÔÑf˜•W•ï½7µ5Œ2W\o›ƒ f1|½‚7HÏT ß…âp`M@ƒÐú¨-œ–³Ñų)q Df@Í'@I·O‹K$ÃOp#„5D^Uq=1™–gz((V|€ÄÕ‡4@\° ãÓða(Q ’úòŸ pg˜ak“êR Ÿ  ò>ŠÿªXÞJŽgˆ_Rs|ÍèöæÅúMÅsÖèó¥û¨Eª¹DÁp:ª©š©"Ø!*e/cT‚‚'|røÆ*o+¢ ?“y¹˜8tfŸNé $/ ‘òoÆä­Bðzšð‡<±×Bœ‰.ËAÈ›èû¤!Ë#ϰû¨­ü*6£;€D÷òqG¼f9Œ¹åµ˜à{c;q¡!+l‡¥…·_úÐz Qr‰ ià/9‡1ѯ¢^€0`D&ãíADMÂjb‚x“U’Ê0Ä ¨˜¤c™ûª ŽXs.·[ðv@ |¢º²·\ D…b§ˆ:3`â ]a,š T"¨;Éð1:ŒÛÔßâ—¢U,RØ{“‰>¶*PÔjðMñuú%Š%¸ÃßÔÛÑß…2½]œæ™îDÔ±?$ôà #ZFÓ€cCs´cÖÙ4lE ìí²Ð[Q Œë£¤ó(i³OFd“™­â 4,HÞ¨h¯Ôiâ_ªôôbÔž&?D%Ð2ƒÄèzVãó"‹±8@•–nÆx¼!¨@áˆm³žPaﳈ„°­Ë¢X (S´ê\`Ñkzð`.Ò·;ÌÆF¸aÕã Ë¡œ"/ ߆"l žãÔÙË8ù]£ÎàC£à !FÊfqÐ&FÊ ’ŒЮÕ"¹ä¾¬ÅEa?šÌ°å lîVSGÐ?ÝÿrÁNûŸ,ï¹òÁNûŸ,ï¹òÁNûŸ/pá@lQEQEQEQEQEQE4Ë÷ À»”QEQEQEQEQEQLZmšÙüZmšÙõQEQEQEQEQER=Xq¬$Ü´°S¾ç…òØaj×ÁNûž<øvBìV¼Ë¶8æ‚Ë{`mÕ Þ¹¦tº×©(éGý¦SgŸÂ]Š×¤•|pÑŽV÷ñòÇqG„i§“ýÖ½IGJ8íw}ìóáØA ±Zò»·jFʿNjˆÙ° z_îµêJ:QÄo§‚ÞÃT—·¦m`öEëOÄq²péÃãôN±Â‘Oñ“.ÓMKÝkûC¾¢ÞÃT—·¦m`öEëOÄ~’õôV†¼`ùy³ÁªVÔSMKÝkûS¿ßk{ P8>^Þ˜eµƒØe­?ц$¢(¨Ø¯:1?]û¶ˆ÷$ÓF÷Zÿý¬q·ç‚÷<ï¹à§}Ï;îx)ßsÁNûžœŸï¨Kž‘¼PÿÄñ0úGQúb÷<# å…à’& -•fúztÿ¤)ßsÀDWÑä•@6„bȬ³á* V}oÁ;qõ .BCD3¿‚v`ò“3ü˜ÑÀœ/zÃ2”J»'Í—@Ýšè-L\ÖWœ³ù ‚_Ê,f;ê©uh·Åkp~Ç=¢ˆ±Ûlëïµ?D¶î²žx0g Ñ´u>wƽ·«¶ Èãó þpoÓ~±áZ>Àý™ß`˜J £€®5)ÞxaŠ™'®³1õ²Ħ^{Ebíªº¼Œ»ïÚùþmêËÆzU™Ÿ¼$~Îx _1}i±}‹ä¶ÇÃ7¬ª®›FE2 w#]ẵ‡üõH±¢IÛ RL(Ë_?^x8iºØ¥KH(4I ?No{™P‰!4í£g™O’4ˆ/"Ó ®õ®oE»Íœ´gØɃýV§ûS/0ð,P=MÒýo¿]m ë @~Læ²èIöþ5^ÍømÀBªX´sŒ–È8ÍQß#©êkÅcšÃ;M!ôðÈWp/-5 +êûü å 7ç¾½sÝdlê¥[t­k2ßÌSî&‘%j¦š¶WUñŸ¢!zZÉC¨Nƒ|/b_ôh|ªAÌÃ_©ö¯j’Ú~ÅO LÒ±hP§Uui˜–Ô ÎBÌ?V äîÔN#ŽÁfn˜Ö*½€b$ï»Q59hì>ÐU,ÆÃlÉÌD&ª­%ä8ÜÂR/›Ñ(GE\žšô’a]´á¤L'ãö š¥>Ó Ø±hR%w„Iaw±ÖM/áÒ'ÞePI¡ÄÍM¾¼€W®†²-̲!žu-+GLjÚ’ÿmJ¢™Eµ€Gl­´I->lhyØö5à:ÕJÑQrÆhÊ;!Vz<) bÆèÊr¢Úµ)Æ!ÄŒýä›Âi€Ö†½0e%IÅ®Gè Y™2ñq„_·v%˧:X4B8Bnt<$/î÷Øù„Uàr€VsëOÉQå ß4°z±.:‡{Ù£ ‹% *šž(<2mQèØ['ëÑf*s_TÊ9íBñgçæ™*GÜAèN O[ÁI¹r!²«w.¢±NSYŽN j|(.L<3V%v ØWÞp˜»GÅ–Ø Ö_> ®ùÔ70ã£n*7nÈ-Ýas—-‡è䯨5Š` Î{(©š­¼Ô¾±$]Í)ô¢ÙLQTs=hÉÃFáƒó×ÂbÌA‚Z¯‘l^£‘6𕄤‡ó*7øF¢3 !éÒs)'Þ_ðºpQ[놛"L£Àõ!„èiŠ“ñÛd…›0ªüà ÌÅOÚË™aWé3)€âµž¬´WÜpòŸ„ú^Ÿés¼ ê8UÔøƒ ™ä$vKxÀ h4š¤ýrãzLÎÙsvkúíhÞ+Ûˆ<(7$wé#a¬jÄ'÷Ç_=;àkRfs‚5•9ౄ^%ÆÓÏË"ˆŒìŠ< µÓ€èTÏ ù0/)’6™±ZAÕ~(!€ {ÌE«8=7²jHM€’)Í5!†BD¹9®!UðȱOPàñ=i‰‘Ø•Øç½Õ #‰Áµek2W÷×}·;>rü¸“iÛdq½!H=AdPôÏ M*t?Ÿq)k¼1®Ç9®C`ûEq·‹ùŠÎ‡©(}\ Œ›N¹Q6&¹1"áQ˜€e D D³ÚG /ÃA\ª ¬ž—©«Q¾^W2-wj/59¨•Öº/1JÁ²¤7§õÏ 0u(P”P ž†î­!Ø".Le ‹ÈRN‚ÊÝÙÆÃ‹Vœr57€ÄMÁ:ˆ;„)î+Lÿ6(hƒAsÄ PZ¦Ó´;ë>¿ 8‚›Àðx¢¯ÙìýÀõ?Ä6›7°ÀU`´XE ±ÆâŒ»ãHêÄ 8ì„UU@å®Z‡©ÅXÊ‚h¸)®&ÄZ*WBŠZ ‹®·‰íA!–ÙÊOÃ5Š<Ï`¾0$ŒÒtUH ôC6>&Âüð° !d’Û+C|ñ?Y2œ“üü ¥6L÷Ígà©´S›"èŸ Õ9êN­4È @Ü„eAyÁ¹Ä®¼E—"~FبÏ"Ë¥ÛÀ2}‹ùP~®š)ôyfT¤þ³ZµLÏBR.Ú–Ÿ¨Ð”¨pLÑǺ8¨Àßý•ÌCóÚ±DÄUp+P‚²*¡³7ž"e'd÷w‡ÑŠææƒY|^b€‚Ÿ`šÑì¹ôï‘­kúOÀÚ¢id¦ŠÌS¸5 AëãóŒ%²‡Á}ü6ªQqÛ F T[Lp+jHi 8r󆻃õ~K¶Üî“àƒ 2m:ƒ. cÔkDK­_„XNÕ)¾OÜäœ äÀ¢éˆa-MA˜WòÉwPŽÑA±¹¦MœÉ]*Š‘#‘ðá_÷ô6 ÚDКÿî>æŽz‰v“Yà(ñè¨6Ì%Uç\­”´N*ë£{€ÕHO ¸¨PÒõð¹_ÔPúü>^T €yö •æ¬~@‹HF»;V®„[5ò"ÝWüz§†|“§‡ØÅHÓƒkëu(߈Oå®DšáÃ>üÀRÂv|ÍŸ¬@lÃo¥Î¢LÙ¾úb®; á›V†ÉÔÏÌå_ Q-3ú±TÕ ¤‡hT .‚ñ—‘J±¢R“Ùô[$‘ ¢^ (¼òzŠÒkd‡{ʈ›÷`¨Ø„- ±ò S¾€W|j({½$’ú!Zð¶B’?ö€Oo¾z Üo€Ò¢°u÷Û’"ŸQ”pIÄV0¥ˆªV¾/@iÃP˜KêËõ8°é9f£<Œ¢Û#v¤ö$Ã$Q®,¥¡°ˆ‡o—Â8s™(’ü«O,M€Ñ+Ÿ¯b4 ÏS¢a˜uŽüý¸hayœ+[AÈrDÎJø´DÆîžÅéÀ’Ö ®Ø<=d\©Rœ9þES#¬[‰Èd¸¨BE*áðÕÑCù«võó’ü‚µÑFñÔ´ˆE‹“A%:©ƒÚRãpš£¿8ž]!Üù(³•20jGþ¢F2(ÚÈJFT, Hp :(¾m¡¤ŽDõÑó™àLÏ~ÐÅUc¬œÑ¹´FVJ‰ãT9 >²«ÐŸ2>Ç*}b|ÅDYD AWâWßr\—¨×¨b xÈ ’ùlÕ£°Á„áŽ0JãÓAOÎŒ›äá!–¥2†…”þÖøœ+¦€1-}‡BPûkAÑVR`¨håìÿK_VÔ봃 ÑMšµÀ$"ˆÊûvrñf9Ú#\øÐ%n8WéêÃ!=¹=¯‚Z=‰#©¦ÑY—øÿ‡ˆÙ…På»eZó*þ0„Ó½bp2I'4•œþ݂ϙج«!P"ºÑé Õ”;0Ä $AQ Ÿâ—‘(øÇè8 ›&lßN[|ÙkJ:#ÌtFlF‰Åý¢J("³«<P<¯‡Açòbf@ e [€Œe‘24°!ƒlhÒ4Ö‰`Ž%å2×.+ P·S°r©“m„% >Éfªa!¨ –@Uñ êGý‡ûîœs'P*FÜIª‘\«(¾GÄÔ1Ñɳ ÊÁ>à`÷OÿÀ§}Ï;îx)ßsÁNûž wÜðS¾çãvpã‡8páÇ8páÇ8pâv½BµÜáÇ8páÇ8páÇ9VØ#ðýø«lø~ü8páÇ8páÇ8páÇ7Qôá¡ÀÿÚ ÀR€ €€b(  R€&Æ•ƒÑ„(ËíùÏRÀ #ú›ðR€;ñ_Ê€ Aá4·ì€ÄpÑ@(%hàÐÀd!ªîdØ÷ ­BÜbÓZ€À”ù:• Cޱ^  ¶H5sµÛ4T¨Ϊ„ezú€M‚´Þ d§R'D ül*þ€ŠÁ<°ˆ3 (LAÂ0¡Ò 0P!¨R€(ÀR € €E  0PP 9(cŒÒÁPvGê_C0A?ÊCý½ÒÊ‹UµŒ*À©?nJ+ó <À‰†V ÉD ‰ Š(£…A€0,áKc$¾2¥%ŽPÅBBlCnøH÷˜!¦¥ ƒ ýÁ8ʨP<ã­ðG^ì;>f'Á=Zk !-ð>ø}2ÔÀcYµb®²™p ‰Iƒý×ÁæµE>0·¤í8€yLJîL¾€!ïÌÝôH> 6ùÑ6TѶUž A(Ÿ"®ÓJÞߎIÊ@µ#Ñ-1’¦•$–Z ¨=—©™ÂRvY€ÁK¥!d6‘ QNÒYÕ’ ƒ¼wM®§†/Ê\Åj±B „Aú‚ÿ€ˆy\ ]|ðQæÌ ]öûØ‹hlŠ‚XÌø±òã’0$,Ñë$ñ#OÂ!fì5^Eêë²[À”ø0#0¯·%"åe7ÀìŒÆöÙXL"3%ù  ²¿`û?ÈC%€T\´ßEð€`h‚ZBA¤û/­òP†õ¡³´s\†I¢&G  lf%q`•j"ƒÆUÃó:;¡Wƒ Pø9XV€ƒí¯Ƚ1ª‹*Œ¼S¨'›é –+HÖZ­"¢„hs‰œ?¯t8Q¨ˆ÷H€MwU} º'ÂÌ긫ßKVé±l=¬@ Íö Cí'Ú Û²-5ÁòœTâ—§ÍL­h®0ƒk·QXíMÝ¢#ÚFE‰LÇ|Y§¸A0„S4²'[Ui¶›åƒs‘3f<øç˜ºÐ‚ƒì½ðh`Âà`ð¬©'JW·n|°<] ì§‘Thƒ¯é·W{ëÚ– †²á•LžÃ—¯&nâû¥ƒ‘¡?Ì€ÀP³ð‰•cDäx]©ÐØÂÿ/ƒ50ºÿ–wW–b^ÜJVø’jÁyÐBAž€¦å(­¢)¹š ¦ÓV%`†Ä<9°&ðk‚-HýÀ°L@sÿ”SX뉼ô%\E{£ê ’‘û¨‚Wv8ìÓ°÷ißB:Eç¾LH»UFŨ"ñL6­}¼ˆf bn0šTwˆÓJ¥-ó-ì4§ÑM+¨‘Šç>Ólv+À@4{Z¡¥Bš#ƒ1 IÆÒ Wʪ"ÑÕ3nÂË8·O@íPv 7#pŒ âºjsâ’—•"—²Åð?¡"¾ì†831_Ö|N'tÒ\õ ±ò& &âåKë@©J›V{CT2:Òå²ÚhT粛˵‰ 25À±€I¥=?ðyFÀ^ÎC~Õöxй*‚¤eïüV²àB²€VKÃ@NȰ¥04€ùùÉèÞ.ÀoP† f6p:åKpGDa#ø]²%±„J¦IÔQbU ÇÒ™Ì@2Óz6>Î3ñ"·{½hÅl˜)„¢Çµ:‚߆‹Ž´²êƒ?qzÄ’p*¢Šülat°™-„Fgàöd8|J„r}b9v…ai&H@WF‰cZÄ8-z¤IlO4šÜ«.á«0(O…PÛ:© IŸÞRIÏ·} úÄeŠðØ@꘶Hñâ‹é³,"KQÍ7+Åô(M&‘ÅÛË:1«†fpeççNY<\©¤ûQ ‘€"Ÿw4Μ8jËtL¯/8(¢'Wp'Ý ùBŠ2*uõŸEíµ±ëýeã€XÜ:ƒÖsË‘P""%ú”lœ¬Õ‹ÕWeG@ ã;KCmÅmö›ïÐÍ´[ªmˆbÜ6L@1ØFT͌ŔD‰„‚ƒË@\Ib8¸u™¡xèc[&r›ád¥|PßÂUû€Ï¸I®ºpé-N½™‘<[\¹Frálc TbtôÉR³ùŠø/g`}¹!ÌîË@o(˜ÍV4)‡Ùæ.”ªђˆÛÆ= î‹¿x˜|Ôo}°'•Úw¿A¤;]mµ%!Ñ&2ÍÒªæÜ2ÂÜMJ@ˆS9Ì“°‰6¹Ïƒt®]xòu$R9:Žðž¬p"ÇY¯•í÷ýàk°Œ‚IŽº\ÖPKEôJÿjÜ 4 ­P¡ðzö8ª""›ëa‚±•Ê.Æ´üO`¢`Xav…—òB±P#¬üȧa2!çĹØj€¶Èa!ÕC”V +ŒRMô+Cl®¦ITG·¡cDí™ú Z!°%vÙ»5Ö‹@ ž_¥Uìª.™ì:™›“gÅt T8¬i 9‚4IÒó-e›%åü㯘„ì=¥‡È @™rÒûÒlÁÉÂqw‚<«¤Í­®¹]…µë¾"èÛp[qW¥¬tí¾z(îxÛ1ÂÀ·yë"AŠú‚D.3}YG+´‚ÏfCÑ`p%2ð,!k” %v `‡²&ˆnýÂNÐy¦ÃW–×ÔLN†N:ZÀKˆ5š¨Î®…bt°šÁ¯()ª»°(’…t(>u‹tiMLÃgÓIRf ú.Cp}ɯÜΫ̦ÁÛ o\Ó'~jzÉâ ®Jk\ú:(Œ™³÷X8ø÷ûIx3ßÿÄ$!1AQ 0@P`aq€ÿÚ?ÿš«©'ò,´rEF’ 'o ¦ì¡QƵùÀs+jçàÒÈvØï’âY.º/}ë%!ÂkRFš°U `ð‡°QF36X¤Ò)C°A&­…ØÈ˜H!ou‚q8Q † pÕ•R"À¸;„œX²ªä’“ñÍŒQTék³EÔ…®š]O{f!xH)5²kqûXùbI" ê×>4óZ°ý<퉦âêøG¼*úê)!ærUhAçl„À‡G„ - FF¸9Î$)h‡ ¤<™¡äÄ€Ñy†œ]’Œà¢ÉÂÝ·‘ýc˜ÿ£ÕÎ<_ÁBA;ˆÔŒç™®bCT€€’€)€¹ÎìKY^#šÐ Ìû",LzÀ–-pК„MI RúXå 7C >ü0W!D^"An1üúÚZQ‹ƒØñV Ò;U¡…£ŠÈqh± ýi<Ð29 AEq‘®y ;xÁ4Idä”'‡…¬au*)p#Ü8þacLÿ›x¿`™nO ȃYãˆàd4A4Eê Pª UW5\|s.”Àâa8 ôSZÐL! %Tj„·t!uȨ.¦ Z€´3j{TÌ츼ÆÖó©U U€ ÆN$­ˆ‘ ]$Øxí’†0"‚þ“9qT *ª¡KÓEE°Ï°Ä­æ°@TÉx»^R@fÑFã*1J.¡Â/G¢ÝHø óÙsìÄXB³ :H'¢‹³G”ERGjRJZ.S­ªYM2Ë¢‘Ü€ú 14Î’¨x‹8"ý/F2‹CÃ(õéBZRŒ}¬ ¶ˆB *¨,J½6£*þ@¢“É0¼5„Pâê i €)6‡‡¦Xć°ðcC”`àè •œ¢©j¼J¡ô”9¬d½¢Ëʼn¢XÄ.ÝãÊBŠô–³R·1÷=þ+ÖPq·Ñ•ÖÏå'RjM °rÔG'hôˆ dLIö÷Ž…„¡lÇ  °9‚Ž´ÑûIfO;P¦(}u ‚žˆ®§@î£Dü» ]Æ[¶©0§§K »G¤ˆÏ±­ÁÚPþñi9`ÈØ¢ò›¨†³aIK8ÎGÅÄÑRågt%²"‚Á”n'BðÊ µµVF+\ƒa¯MHõÇl¿Jr’¶b Zå¤"Sr&!½^­&B¦*)F¶U]­At"²¤õS,Á«S…1ÄH˜å?ŒE Š30p@ÜÂ#¯äš÷bCA:«›©NX’ô†¥™îšQØKbJÇ`´b@K€ÌYÃ8ìH¨ I :ÝŒ8 ÂÀ]¦èV“£vÃI1F與 [Óÿš Ð" Äoôž‡0§Tò`Œ":™UÎ ½ø²gÅš@+ú ñâ. pèÑEoð;g ÝU.J8 È´ Ì!Ì+—ßbéXh(U‡zH‚«¥ Lr^ËzŸNP÷N±í#-ù€Êäƒ BnAZøŽu¨SENµpKº [Z´a¹ †| !ÃlÉLS¤!GP˜++ U_“SéAû»bš&ðb5ˆ}Ч©@ÑÑlJ–Fxfðf±iª¤¾(¢»„1A›!" k•K:î„Æ•Ì7„HH D;FÉPз^°ËöD£¥uËåp7ô`,LS";F§‹™ Îph$QQ€À 0/.+Kb„b>U'PÔ07˜®©E¡ |Ú`1*ÔoÄc&ûëU|Â$ÈÞ!ÍWÃD 1œ¡l6¤¢€€ŠÞ`"&˜ZaeW*r|I†" ©{iO˜iE3 4< $¿®” !0,E{âíì*ÜN‹„PUw™·åf€ Vˆ(¨% ‚1†’›m7âmûDYWR±‚Íb5HAøe ¬#ñM ˜ qšú”'HbÌ&…M  ‚D A@pòj]z"b”ýýªÂi„ŸŒ~ ( ú%Ý¿ì¨":`* .Êp<ùÝ ·UA†Wƒ.±2¡„¶ìS"÷Ž•¬•< ¨Tö'ˆmgø · +AÐVq¯¹}´,‡šh.XI«KNþÈuP)rœ"“zЬ֒b© (eù€U: ÿ ÆpàT«ÎÍ#t‚Á¯`çßµ3•lWG©³™æ©ÑbB¡o€G¡pÀÙT| Eq[ýó"Q)~(«Ä bØP:žQ ò^òb‘`/"ØPQ ‚CD”xÞÊ)ÚÄ@‘D?“µ ˆW¨Wá÷—ËòŠÚÏfOƒYo1!Òô#ÂRÒ§—)Y{à ²”N=N·€í¢Z$@ ADLDÑ14þîš4<áÙ€)–ÁJ’hø‚)E„°Ùs+S`ä)@ à @RÁ8N¤—©ØQDD#¢&"xÿQ•Á´^^±.!„%¢BÔ»0ÃN‡V çWˆŸ‰W4ðÂtHˆ` NŸ÷TÉH!ÙåòœœQ:ÆŽAÄGP—c(nÌ®1Ôa¬KØ€*J'y,4(º—B„Cà=,þÚI†ö`ƒˆòoXÒ…ÖPX‰jQB‘Mí˜KßTy°Dåm ö¸b¨‚–‹­·,!“t)¼D¡`’xÐE,¡uÃ#C¢} œ f#¸°¢/VõCHÂö„-!lÇP ?ƒEâfHbãUMFìAe­a ìBAÂ>hÆÕô!׉´Yh=%~ˆHäa®FóBØp€ÔZö.vœÀàwmF£áAu©bÿ pŽéÖcÔƒ%s@ÒbE‘¦À*h „Ðç® ¸* •zùŒÏâ^Osvô)œ€q ÉÅ.%ðò‹çÖ!ž‘üW ŸÄ¨Eè?À¥Póç$ÅÿÒÇDm!!£]ûàaHÝ6 ª”’8Ç#‹"€ô«*ÝeaQ2ÿ1 QbšÕ”–a ?ë!Lkd!h‰sGU$_/¹ÏסNª³˜‹½ Ú H ù áùD(E>üÊÂjöp)ÐMG< · J)cÒ– ëãȰ: l6PàA5£’ñ(É´eZ mnòùQÅiW‰5p°Â P3àY åÂÚþÕè$£F÷ ˆ¹EÓ½_$¢‹ÊÒÂi}IÿØ&ÖFÈ ¬PýY^ ǪÆê¤f šà@o& X¹‰´Ic)<ôgîŠ?N€Â»‡ÈK‡BˆïõÆ= Ì'£‡MS6‚p•£ŠW§Þ¦P ÒbÆ„0Dƒ@qÂÖ¿ a&•T ÐH—.úB`I©"  †E„ àZ†!!‡Rd€Ù(2DOíÌB”4_C€A ÿ™ÿÿÄ&!1@A 0PQ`apq€ÿÚ?ÿÅ@Ž—¹ŽŸÙ™™™™™™™™™™˜Àa¼fffffffffffl§lžÃ)Û'°fffffffffffk`§þ¾6Õ*“-=/ØE–X¡a”*6à¾?ò(º¥ì>Mb"Q£Ñ='÷ñD„eNA¬ÁRž·éd„åÿ¥šË$ B êyÆòcæ 0é\@p¥’&wØ ùK5ìÚׇq•Bòâ©/áq“p¹úv*MùNiÄËü,Ÿk¤Z<Ãü$¬üͲÐp/·ZM·öð.G 'º‚^ĦjÜgDÁ ùh´ \$×lË,­Ï|Úxor|Œ©ƒ•õ»zŠÿ4ŒÚV¦sñ_y6ÇéF±CRjÅoïE¡³G”X­z¥|×ä0G Ã_Ë’îcP¢,»KW`à¿yñ ‹KO9¶Ð¤uó2qËz1Ʊ5Šw|E¸šû9ºÃ÷Ñ.ÛòÁ)–Lüu–Ê––‚†^þ+8Бե±¼âP,5ªÈpZ*ÆQ‚¢ÿñEŠE–X¡„qÝT1ã÷ê®DtA<Ügß`Á$uºûŒW‚F“Ôð³qàá†_P!Óh°DoýÉøäh ©HPAo|„hsCk#éEGHÄ?B}Á(h'EI1."ØäˆêÙÄ8>~ÒAÎ? >ã:´ïô¢àáv[Ø_ˆ ¢JkFI,M ‚1:C×Õyô>Å 7_Âruüè“^yH«ÁVè‹,±C", sì’uöoCn†Åæ#¼Ýì![$³¯Ÿ7`æ[ ˆÂã£o0Ê\Ä¢w<5`õ^Oqf #TÅÄDÂÌe:l}v·‰ŠAÔ×jD ä`¨ìŒËd/*-EÉ;ÜíÚð¦ ôf2 ¤¨¯¯‹#•f2ÈÒ‘éÝ8!4¶U¸…à„CJpðyø‡ìØLx9çÊd²Ë2¨ñÌ.Äù¯d¿wžu@jä¥ÙP/nƒ!IFYhÝ$²3lÊžÔUßDËá¤ÐÖIt¥#QŠSªCy ŽÈj„u*¶±Iƒî-Ú½ãŒÂ€Àµ³….¦Ó e÷SìêqÅ–Ý›« XÁnß6kË܉´ŽËRÌή֦DM=¨ï¹)¿`Jñü©\È¡­˜þäHä+<‘¼ùË­êÎ_Vx”Úb¼Í3%Â%“í-1„"³1+Å)ñ¢3?ø¯àáV ¥µe–(j¼+î ô=&DC¸x!6ü~© ¬I»qg= 07¢~ã,@Hâ²T¤Ý …{~¾SŒ«&©E›ëbÈå# Ü€³·°Ý‚°þ𽃑ÒN'«sw(AŠª­‚“yÉ`a4H¾jæCôLjô‰NrÓw-òŸRRHz@ƒqžàö š`åÓŒ£\ÀM,´¤Z#ý#ƒàŽˆR+Usw…ÅÁá7%zvÃJÅ ,)¬=Ýób@þ•À]é­háúÝ ‰Ë÷ÕïoŠŒr­àÁÁ<5pÊZëUưȜ—[i&&¯JM=/E–oÀÍÈ‚ÇñÆ¥ÑKKgíÙ–uìZj’A'&ôñõµó›ô)K1ô YeŠÚHуt¡•Ôàã8à™Í/œ±Nuô0”ªk¤å˳øaðcÝ~§NQè¡^•$¦”j¤,W¡CñW’§ùØ:m.”‡_©Vƒ>#~òFÕ@IDQÏÞJ%ƒ.L`Hhºp‡šsLv]2gþèäļp(ÌQ.!<ß9¢é¶CGî{ÿã,PýAÂIîtî¶ÄÀB†"(ãbÑ–º8>š¿¾±Pµ£ñ¢FO¬( è‹#: ŽÝ¤‹°0q‚V;@$•¹PJ®€8^«€¯BÕ†½,) ¥U¢w*P1ŽÃÙÊäDy¯Qo.ÁÅÚ0:`EÒY“†Y%ùû ¬v¼ÁZƒ’äŠÙ¤(Ò8 !¢â¦j$"PÌ“ï QüèYe£ÝÍð/ÿ¢2Å ëáOPiÞ"•±> šMž8[mmÌÀÉa;ŒϨÙDŸ3b¼¤™ "³É xæ‹•’’F0ëìÁ‚Á45ÃŽBH aWí¯Ë²ÀÚ ìaL›ÀD*¨§‚†.T<Š|R¯Ó°ƒ—F˜ ÝNº|ßs¯?Øá¢Û`M·Q±)±›¡m®Ž*I 6eg‚‡®­lžŠ3Ôõ}°ŸÓB6V1ëö ¶ =àZþid­†ƒèEEÌ3O½˜œ+ÚÙÆ¾· ârãñ€R”ÑxœfJS97T¬zvƒHˆÅþÉb÷{ÞµR»2`åNë#cŽªÂ-C))£èQA ÍJjLU`0‰á*æ(Q9ýH±ò#Kc8áf¡næ[AsIĆ.§;:މ•a߯£:®5¬ÍÐ.àö¡5^œŒˆ„ýk,CT:€MƸՅúVAŠÞ䂈ÇÕ4Tˆ1ºÒc¶¼ƒÙ{r@‚::ÝÇåS‚wõ9~·íðAºJ1€I\~Ä)X…¢ÃÀ¬PÃX£ršÓ|#¨Už¤7c¬ ‘ˆéãÛ¼kÊÑ­l gp“µ±÷`Oœ%‚[˜¤×y‡Ú)܈w ¿6W7­Ç¢^lÉÀ²pQ=,ã«ÐÎÃùM±"…±jP­å@¢®ÎynbåÊ.z?. ¸7¾xbóQ¨t QšTÌѦ–Êûƒ˜ÅUgûO«rBv!Ä,ºÒ*‹Ífü Wu\UF‡í0¸ª0ãËO;Ù$8 -L¥Pp, Eʦ°5÷—”’ 8A·ËÑ¢Ú8¥èpæ8iRlL”´ÊK­u° À ÒÒUꆀÎfëÄ»„öÂ5hPx¡²€:û©ßbÖvp°šH´ 躕¡8F…JtPÞ=}# Ø!¯"à P–v¿| D¸D‚Â.ý±Ç´ˆ°vè—Â0G&È<V®D¼ƒe’tÆí 9ïGÌÐæÅ%w|Ž:QZ=ôŠ!ññ•YÂx8&z¾®ÔnßÑ8Ã(â“`RÅqPD/#]#õ9/ï¨r•(¡ðu2G—Å¿ŽEé ]ˆ"W@ÉsXý׬PÒù Oö0ŽP õâV÷WC# ¯IãJK‹YÄÆv9Œ ãÓQâêÙñ3>‹d9Ú ¥ˆ®ÎJýŽ”À¼b N 5¨ª}ñIäïe89÷Y[lÿâ*+ªN,.b?R$Ò2hBÉ£/ÀMDfH€‰,71aøÒk‰FùÕ£T“ƒÚÈ»f ~ƒt¹Ž*ëœDõ©]gFׂ‘xÝ).¾¶ ÀÔ¯Ô{Õ†¸³}¤TRÁ].4rf:„­‹òó™ýtQK=ñ‘\kºeî í&²¤"êC™,œÑ•B†ŒE§beG!l¶ŠáâyZj˸šB,ñòB %?®éƒ–ª°µ˜žS ìsd)hÙæ™¡hÇW! Hø²ZäF#ˆABüðFr\…QpMŒßIÀÃeµO¨é„K[OÓ•²²AN»¥–—dPŒÔ0‚‰Ïô@É2ã_ЈA`­x¦Î±™‚TÔ2© º^€¤UÒ™Åä &+¬ÖïÁËd„¹µº×b5ENÔàͪ!WU…«!5`áŒmèOcBB]TL^Îܤ…:&½!ÆÑ‡Œ8*]OÚDgk`ÿÛÚiÅü˜ª%^drÛ2$ªÃ {(“<«ó"Õ‘YÓÊ Ê¥»C°"Jª†Ù*$jãÏb=€t‡u…q2ãveLja˜¸˜6Ыv;s.:û“A"S‹š–þǽ°|Žñ÷á:='\—–š~ aê­ wE!ÈRêÁË!E:ù!î:uŠc?Îdîý’ šbƒ›‡?ËUEµÑñ$Û(°B67JJ‘à À ó³‹Ñ ´òg+óäD%Â,Õ9Þá¸D.¾¸Ï·cN¢ÁÙ…–Òáû1IÀþºÈ.PM¨P rÈ&P± Þ!ŠbéÚ.ÖGýSøòÖ³’™Û îè×qs¢w ˆ"× SJ1e¤B³ù^p+¬ #Ì`’ )˜lUHIkšx.º¸âN¼GbÐaÑ=ZåD‚VF Æ!Cƒ$S@RVF0îLÀì0ÛéƵ<ÁÖyÍgH†ÑDQ,èzÊtŒ ™ðZ3äUá³F{ *ØÜôžÙÞv!ËŽ½ P¶ˆ l±, ‡5g‡Ø•#SBj¸¹i¨k$76ƒ6ƒQìAÑ0©ÓùJÑQºb5…RE&èX¸Nƒ‹5j‰€]2doSDTb)np˜0®Åì#6\Á °(F™>7'‰hζH  `ÀHÂKEHp¾q2t+ðBa»ðIaô¥›ö^‚Èzâ¿S~ä¢Ò±C A'F}Bb§ÂUÎZçD#0xÕésìȤ·*¶Èžbg4_,nøcúU«Ú[æ•´+˜³]ìzRNöôÞ ç N…#¥bû-k1T¢/MdPX,£õ¹Hßì$7.PØÀPBB2#R³@>ýpÐTWŽ˜ýš=‡Ó—ÀI²`Ëc_Ð#)Å~èÆqF¦át<Ÿ–,ÄpüB9X¨ ¬L@‡oæ°ãýû:ÓÍ&ãsÐc {‘”ag§øpPÁÂdA¢¥|É-JR „|cˆÄ^âÕˆƒ+±‡O¸†XMA¬´"¥Až˜ÒMèÌdGp(ä‰ìà0lËPˆÉ‚„“#ie2§|2mK¤vÐ'‘µÓ²ì€”bäÒµû„-—DvÍy`Æ*ø9É`YÉß\W?Yߌ[H73ÎKƒa}`¯}1C—ð’Æe¹üÿ,âM¯¦ËFÎø—‡¢çGI\?7¬.eÔâì”gâ/ʤÐuW 3ûD&ûŸ³;¼wbR"øU…Å”J¾lvBñŸG-B:µÙ·dˆÒà%ÖÁ ¤DÄ „D 6A,HÆ`i\¤²°TõøZç[ª`/J'É>é»À ogr€)b6qH¨Ü×·}XÑOA„QYD(4X¹ ÏZI“î¬hWì›@€çª¦à,©Ö †44%¸,¿"¢,: ×GÊõ…޶£‰`õ€GrS„Ðüî˜â¦39PÂC¡jÀñ¢h„Ô€ôIrѦ–#Щ¢¨ èpˆ(!ÆÝ9UMmNÏ«é21€'ÍA dŒ¦ßË’5l»wF…žJêÒ; @–†% i›”Ûi¯UJz–§>ÏHRO¡œâI“pE¿…ÜJ2-¡¥X¨„8«„ˆUûp÷0Z\‚qð¡©’.‰LÔÆs±ÏË&ÚfJäÐãÇÅh%äƒ3 |P“ä?åN nP$ûNÝ»ÜéZDrû%“Ì›3ìúb.a_¾¤"^ATeú޵~î&’±% @üj’½Ðo[†½)%BÚ´ËÇYr‰1éš<¥ :pœÕ@&)ì8à›bŠcÅ­ôêOK 6L\*¢&S‹÷(ƒÒŽ4ê5xOH ¼3¶0€6dP}–he¼eÈGç,š«ÖOºº+œŽsÔ£˜ƒE| FQ ã‚îm‘Å ¯ØèÑïR¢ö$Ò² Ø4×Ü3ßn…(ß80»&/¸}[Bà¬-Єr6ðÎD‚JÇÛS¤wâ+Óé—yÊ@à!¯ ‘Ñ ·S¬lz¶ö¶‚c èfáUÈ(‹bÆk«Y9µ¯×z]•eÂoK$@‰kYÅàK»¡u'@Hâª÷nA9GóÔ¡†ï[⮟qÍËæ±Aû Ÿ±ÌzÉ4«-q\:®Â¼<*Ê)Œäïð¤&S+R¯£­ë°Ê2à|û,Faªy^ $ú…ÃÀ èõ¢õêÜñA’‚Fê@Id‰3 h³PÂÏ/§¬'©hx¦€lõC@hÿ9LÒX.zk€Èsz£PeÛ—E"¶%E¤dâ9ÔRf sªþ{?Ðti‘Kpâ1ßB6ŒÌTº¶Œš ;EN{&!1ð¢œU:¶•ï7 ¼”0$1à•‹Âm@=c|Ãà`W0e™µ€H)ö†¥¸2`ª1’så3§mä+tB Ò¦kÆï &0r Ö\/Qç¥äŸ¤¾ÊI-r?‹ê#¸Á æ¦=ô49 »%l8Äj:3ßóM gh€h"ûíoˆô¢êp›íOkªàP8»ÀËòØ/Þƒàe1G„]x¢¶û;ΠWa¢G|÷¢!ê¸4mLQ\ßÙдT¾(PB¢ŒÙtV³@Xh$O&áh@±§§(©ÅÎCªì{“JX @S§l1r¬ÕG®ÁQ€8Ù(Ṛ(DÊŠWN¸(…#ä!=h@ŒDVúf( ™ÍN÷0ÏÑiÎ6æ#il{•KUdmqÍ)0¥ ØcOª£3Û G‰F*¥*r7Ò´ýGx?%¡Øq ¸ÌZ¥¹J@(£}úwé˜ì¹þ!鋿ÁFc¼öAŽD! ‚µtKA#Œ–èáªÌ-­¢™/Ù¢êÐÂPÂ,²Å "Ë,PÂ,²Å "Ë,PÂ,²Å-àØ‚ ‚ ‚ ‚ ‚ ‚v  þ" ‚ ‚ ‚ ‚ ‚ ‚bâ?àbâ?à ‚ ‚ ‚ ‚ ‚ Ÿ6~¶rõ”0‹,°@ qÒ¦1S󎈲ËÏ«y94Ž(ü$!,{ þF”ÐE¤ïÆrQ<Òƒ$Q¬ÏˆÏ«x94Ž(ü#`­‹3ààmZyÑÙ0#·pO4 ÉA«3â–XÏ«y94Ž(ü,¥ÙæDë&»ÙL½R‚äO4 ÉA«3ã–3«/ÍvžÃ eÀPž0¾ËEü©uÜò ‚gwñqš  ¨P°#½êËó]§°ÂÙp'Œ/²Æ@oC/ ÏäøÂ\5C 1¢Lè½B…éeY~k´ö[.„ñ…öXÂ(ŽòÏ·_ëcœØ­ÈÙÿÛoh½B…éc²ËE–XÂ,²Æe–0‹,±„YeŒ¦H¸©àÖ^wº7ê.uÿ òZqYcF\8´ïµôBŒ D)õ‹„ðqYcFm¹N—ä+hI¹q\)7µ¾ªâ[Ê…hE ;ÚüÃÑuªJ®´77 3Ãp,4`|èÕïÉ>›¶N|eÎO‚DMãCÖ—,w;½õž@/|gàˆþlôoÕ9|D¤¼ˆé/. jã#:ïÉ¢>ྦÍ×fËwhoÄ5‚à]‰@$s®Ñù~ ,à7ø… r°PUÓ&»Z d‹+ª ‡ƒä…¡µ»½Ò À‚qyZ“6dÁLB |JÆ5ÁƒÑU”JÍ åèR˜¼ ÏÐKM¿”ñÑ;'ª­CÖ0ù0Cé;> S¥‚›Sã¤&À‰Ã6ÏJ8׉/F±šîvyãMq¥ÓƒJ¡QŽ¡îŠFÜÜY?É n·±ú¼ ö""ÒßK9¹Ä9úá³<8+v;sp:ÖÔD `h@; \pÊØ-Œ å—ï£!6!ã“&ð©ÉÇé¦0²:¼ È¿ymYj–m¶!lEðu›Å-oQˆ=šØb0'y »3"loä)&ڊȧ¤Ú›Ç^?€?±ŽÜ¸éð‚)d—2kxÇúšÝ^à–2á,B‰ÌOm²¹¡ÏÙÊm«Â xK¿ ˆN%käìI5(–Aî)\Úу¦~î?ݯËνc&MŽ–ÒĈ"çŒ7”¹å„«¶ˆVmö´aJÉxQv]+÷FgÊ´w !Aºû;À©.Å™Ÿ<צK'åé¹UN%´#÷(ÿXRýoˆ L¶Tõëœ"°Ä/ý |—O­'¤FìI1J ¼ALo´1½Ëw„ªŽ']ßUä×9ñ7aL,¥Ãâ} œ`ØJv,é,¶~‰‰†Rlãñh̯ ÷¤ÊGj3V¦íD–»µ–1äÏZÐÁGö|õ°³&’™›ÆP „‹í`ë„j,ÔÓÒ…ZWMaЦ l•ho—e$aâºí1`ró@7ÅC:Ûa¹¤–xa+e"8*ÖŽ²}½m‹ñkPŒC9mú¸²7Á„f$ÁÎÛcè÷QÖQ/€¶ˆ*`Ô)”í~4ÀC@ǬXã{bÁÙ‰ü8p4XÐGÚgù¬ø¤7Æq±‡$‰öIõÓU^wݵœs`l£LQ’­leœæ ¢àq}#XgwZØÕ»Úžz[ò€¦(έɩ.¹Q2Q¨ðæ¼Ô~ˆƒ®IJ-7¨vÚêéÄaŠe¤dœYAãàada>¿v¡ÁvMì-/ì›8k‹Bû——ã.½5,OÇð“`Ö¼7¦`ºøÁ0)øŒ÷©_h³ ŸgðÁâêßd’_@|ç`žŸ)¹úÛHŸÁ †Ž¢žPhØN ð;FšJËfË]ÇZ¤'öb ·:Uvì1ËõIWµºŒq(«0R½1¦ãø‹ õ>K‘?Ô@‚qÀäXûL·,%kÞ«¦GEÖÔ_ýK®lòªQ §, €•ðÙ;X ©WÛ%<¯«ýµ3q­œ3E êYeÆ)&Ä$ š»EræºG%ÜjfTwyTë‘4ëÁ‹½è4i ©*—kˆVOE,×B×|"ùD ʱù-Z隀1ù£!äF<¶²“ ÄŒ‰&µ ¥/²^«ùž¦#:vq>:\ý6¥jrþg<¸«à”Õ.š~z<óµ¶lG1@vuÜZöÃÿPæÕJ5"Óg¾¦k…ÎïJÙŠ:Ø9ë*Âæ¤çì%gÔ.Äjp†‰‘Z&€0ƒÀ“tN°Öô$¥V €ò\,2â-ê­"âI”£ÉøMiÓ - ¹â£–Ð8ÉEÄMhaÀYÕ]aQ€Òb¶Ž *ýJåñÜ‹&ÅwxmÀ©Gâ…Ìç†K„Îàs£zK’È Æ(gB¡ébúèé§¹»^Ù,à'l„4ÅÓ#E<ý‹*}ùZâ¥Ný,šž²“Þ\DZ|5ÚŠ0Ý ãÂ5žœP¸_Të‹×³¦§Õ øx«d4…BÀ£ ¤ ½õ@)¦¶ÊFßÕùÀb¡øAˆiã[P), ( %4—r:çPRH‰Óå >R/µ€Ž-6=ˆÙ`7£é6žh*Vì-"F$@*Ö(hszpBÐn@"6X KG“—WZ`B86"eÎÙ–\ÖrŽM•n Ëb­ž •xÜôÉÛ4ãd/ð)Å@ý|PÌ®'V8.äm7¦ðµý©u7ŠdZÙ1A_ìhLù–LÞâG,ǧ¸Á|íIUJoå/…®Ç@õ§dZÉÍ£¦øJT QÅÙtJBT+Ê@ŽXh–gšñÖh¥À"þR¢S5±bBˆ( C_p-#¸*#Õ Þel }X×B¦Î„2&¤µr«Û ˆ–°À–jS©ƒ_QêE5FؤŽé§À’A‰[Ü)£…¨›P™s×½=9š˜*æá.õ"|m¹”š¨µ[[=FI\Ú31lÀþ( ¢áF3±  #ó[} h¨«µ‰ü§«xØsr©‰?¦æúº"в²«§ ÷‘k¤Ágð©ÄÀÿêÄF*J\4+UžÔI$mÂz†uÄ.³¿˜žÒ UþSí@×#™ ê‹e\0µ W øíêœp©ˆEŽA6ž&ìM`:Aàdƒƒíf  &í  %ço¼Ë> À¶ßù9€´pHëµ5F ¡ ñ›érÿ,¶(Ñ <Ú…ö€U`F)êp1H߬% {V×A€¤cÿ` :4úr²Ü?M"yŠ;¢b‘ d ½Ã:Ó¬3¢±!Ÿ¹ò1áIõËì.ÃÌò×)N  ”¦¶÷„5XøÜˆ¹Ã’´’Zå¢ ð=ò«…™Eébë“j)ا`2$…¡…ÁiYÝ[w~ð3TaGB!u8<¢¶3dïÌ §#3OºkëÆ’ªrbeXŽ‘Õ" ߸ØR ªAÐÆ$ÏQ€7‹w&Pj‚¢Q¬FP p)n `¡EÐJ÷7Ûu$!jºW@âŒßAàú1¥•öQÂ"R+Ñ ‚Ân¡3U›X°:¶¹ɵPÂFêf] ÐQ€}ðx;-WèX§(±ÀI|2@ò›CÖ0  "Ó-8(•¤š°W¦}!¨c=ú6SLôRØEµ†×­®ý‰‘Ì ¹ŒÄA*Š“=¬h(&Iôƒ¶‡‰,>A¨F• < RZ›v4dHd…†Ž×Ô0¶¿u¾„"Å ^ËÀäIH ¥ê?‘F¡IlîÛßSè9c_¸‰U!£U¢ÒÎ.#¡@€0·)@KAÂ÷HÊ’$!èQß@B‡•VõâÍvöÑÀP„5‡U´(%{/+$a8ÿг²ËE–XÂ,²Æe–0‹,±„Yeb#žÀP¡B… (P¡B… (P¡B… ÑŠ À(P¡B… (P¡B… (P¡B…[©—ûÁu­ÔËýàºÂ… (P¡B… (P¡B… (P õ*=Ó*#¿ÿÙ endstream endobj 790 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [328.289 145.39 339.057 158.341] /A << /S /GoTo /D (appendix.A) >> >> endobj 791 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [404.932 102.385 412.778 115.004] /A << /S /GoTo /D (figure.8) >> >> endobj 795 0 obj << /D [793 0 R /XYZ 33.853 921.043 null] >> endobj 571 0 obj << /D [793 0 R /XYZ 118.524 489.765 null] >> endobj 796 0 obj << /D [793 0 R /XYZ 68.868 270.587 null] >> endobj 797 0 obj << /D [793 0 R /XYZ 68.868 231.733 null] >> endobj 798 0 obj << /D [793 0 R /XYZ 68.868 192.879 null] >> endobj 792 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R >> /XObject << /Im7 784 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 802 0 obj << /Length 1985 /Filter /FlateDecode >> stream xÚ­XK䶾ϯè›5À¶V¤ÞÎÉF¼~Àdr²}àHœi&Ôc(ig'¿>õb·zÜ›S°ÀvU±È"ëñUi²Ãó!;üx—½ûUðvP‡ªI›ª9m™êBºáîå.Kë\UiìiXŒÛò´Í4‹^ÎÂ, *US¨óÆ?Íá¯ÓÝßá_Ô?îNÙIåJÇݾ¸ûøIÕ¥Ò¶,õááé|ñ:K›¼8<ô‡ß’Oîy öþXeÒ|{¬ê<ùÙ"Yî*±÷*yÙìØ‰ÎôÄ¿Ëhæå4­Ë;1îñlšïºIdW7yúÂm«ónqã3³/› +Ú ÈWÉò6 ÀÙ5¼±ÂïY™=…i¸ÿãá—Ÿò|ÿ¦ìpTE Ûø9‹Ÿf‹zw?<ìܬ²,Í«êP”UZ65úç·?²C‹¿@¼ò¶9¼’êaªZÜæÿ“¯-ª¬H³²¦³ò¦a»OÁu«›Æ¦KPWêÿcº¬ÓÂeúÕx¿¤ó{ç:âE›jJ,Ò?*º`Ìhð]ÞÀc ­ H–Õ0–º®“Ââ:of_ïuñDúdù|ÏÖu“Œ± …¯¬±¸¹Í›Õö,ZO²ûi ƒ!oí1ë¼Ìí-W:f1^$ÁŠÐþž©ÜB>ÓM=yä}‚H2„Þ…%–‰9ØÏnÚDÑ~1Ãìm yY·Éw~=MÛó‰×–iˆ{ÈqàÏt²@Æ#/œw=&8s½HÎ%§¾ÉEÆËEn=Cò ,`ª‚«Ê ‘LáÖMއrêŒ"Ö$Ÿ%†¸Á s˜$Œ ìYJGb™!Dèdd‚]&¿qȧrÇ_t&icÝxÔØ9€htà õVŽyÙÜzó9Ý4.®·ÁškzYoÅð‘bŠpTeù´yfÖ‰Í9Û&׋*åÉtô`ÝØo•µÇ& gÎìÕRì01ý[ÜÂþYmÜEšÛØ› *]½Ã‹ã'pÇ'H¨a›ÆÛÖãìÍh¬÷LSáWº†Äì ‚ 'ˆW`òœt ˜]ƒq|qQîíÀŬPÞ„gË$mØÈãâڰܺ4ÕbíẨÚK¨hñd¶Åöð¤¦*éI(‚ôYd5VÄò³¢‚zÀn~. T¹ø ¹!âš½2Ä`ÕM4žf Ü¥Õyò+Äá¤i/È…´óž)˜B ®äǨhFñ;2ð.Ê9¤WÛá§ÑÁôÂ"h;L YÆî-d÷{íeAK…ejWaÀŽBsK¯¡ÆÇ5²K­sä.o ¶EªìLI®Ûà=¡•üO™­Þe¶ÂJ»•Ö»^Ì€zæE “; ,™ :n§ŒÅvpG7".žç(°0b+ê¡>£Vï‚í8à4«hnŠ4/ª8ÉÁR!ƒ—.ÓzŠÒK3¸$W Gu)­¯ßbŠfÉ?ßê8LŠâ%O‘cDúþ‰©W<ç§[Ã\HëTU5_èoq¼É[ýÕæ÷íiû&¶V\íÝÒíZk DkcË€Mÿšp×Û¾Õ4¼žAäqjÆvž5¸;È  ¶@"2MEÆË,€j™½(‚[™±Ú/ÑT Òøkþ_ÒtŸœ¬ï’ˆódìQ 8‡pëþ4ˆÀºõo,:QcW‡}Š[©"y8Ù«¥†Ü ŽäZ`ÉÞ/ÈSRƓۄÎ{„”ùÒQ'X;°»ñ8ú "øJgÍ•>§>NðFVÀA¥ŠP®ôþc·1رNüzÂoM1VæOç§)Í•£b[ÁÑðÌ ¢)%ºúj”Ǿù¿{ß)/φ¾Ç ãÿ…½w]¨yùÎû¥x¿¼4_bæÙ»nwº@dG2;bG)VÙLô¢h™à'çå×À*¾½Ñ F ª’ï)Œ8çH|ë»òjï.XâaŽWbe¡œtøµ_¾`UÆMÚ¢–¨ô©‹uýÓ‹áJF¨€t6[dç‹yý ‡ù„,ó{‰eš¿#€x×΋ì];A°Š‹ ˆZxÏáˆlæåz…ïðÿÓ­@Фј~ÀmTR˜«?0h¥­‚/›¼J3-sÊÛ+¥îþ Ý1Ï endstream endobj 801 0 obj << /Type /Page /Contents 802 0 R /Resources 800 0 R /MediaBox [0 0 595.276 841.89] /Parent 789 0 R >> endobj 799 0 obj << /Type /XObject /Subtype /Image /Width 616 /Height 414 /BitsPerComponent 8 /Length 84013 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿžh"ÿÄ  ÿÄÿÚ ÀìïOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þ€~ÀOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿ pmüÿXü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÃT`ÿ@ ÿïŸ8uÜP|]'ÙŽlĬµŸè'øŒù[©ŠÆqàßû§“‘¸/—ê?Ø ÿ` ÿ0/=1Éë;ð6÷}ï{IŒÿ@ ÿýM«E¾Ô} ¶—æ¦?’]íÏRþ¤»lõê_ø›lÊ­J?Û{ t«Û¿+Ïï@ÎrðÏô“üFÕ ”’µË÷±Û®ÂÈŽ½÷šÜ#¦òOk–K#w«c==ÇûìŸë_6;FÂÈ(Ⱥw²˜Æ~÷W¿"­?Ð?ÆœŸ÷û–{Σ£¢¶–AQçvKWª£³ŒaÑÝûC5.í¾5 ÛÇgá¸nt@ ÿ@ ?Ðc9ÐK‰èÍÝ^Ð=sIÙÛJSUzTПïë­gå|TºÊ–©]9~wºÛ[©DÙxœ€ŒžöÿØùjU¶F¥ú£*Ý·{¦õyQMm‘ÛZé} { Ùq†¹‰¹y«¸Tµ 5þ>áÛÎSïßÊn}”ï;);úÊŽŽÞ¨OWÇ÷ªK¯Ý¹µÛÏlóÕì—›€?ÐOôNüâ·Ø|¨ãùÎ}šæ¦G«ÓãLvñèçtõÝÔ1uå®*Þû½snÇèôß`cý€¿ö¼šm•©Ö龎Îýc¹<ïNŠ0åWÇÏ„},ÈÃ:¥–Ι륆ÎÛ§š3dl€ 9~ î­÷*÷ÚW%Î<»dºèåM]|TýЩQ·.¢{tm&ù ÏÍ Ÿè'ú'~ñ;ü>õwwóßaöuõr’ë•u<Ô+º?$ºýãÛÈçOÃò2mÿx0C;úŸ‚Bãcý€¿ö½›í©Î›é.Î<©õ~ïÚåM}œùþÂ¥'wɨÓýÇÉuÆ\ÇÙO)ñÙø\¶¼_koó FQoe«pŸö#,?Ð?Æ›÷?˽áSMUIkœçùSùñ¦åù= ®ŸÎRÕ©Û—Q}¹6~|†éæ€Ïô“ý“·¸þxsáÎý“Ë²Š¥ŽÏÞ蟕Ol—:øô"îìãv_ϨáP¼× °þÀ—Rý³u3Ô} Q×ÙÇVï]¼©jå­Ç³¯œµèë?z#F®º7.ßßÃ'3r êïµms#Ly&Øø¶ÅH±³9]>2ò1>Æ0¦^{¬ 8‹œ* 6>A>/œû7 ¨ózŽÛ7…ýù‹Û5.©ÍNÙ.°™šôpŽmÑ®ÖÉ»7¸ãkàŸè'ú çb$±{ÌvæOÕ¸G™½’φôyÇDŽôæGi†Ôù•Sp«¿4)Ë­,0á°þ×çû‹Ülœ\Çûìxu;ÛË][¼bEfsÖ»f3;®jX{O™}Ò\áÝc÷¦Ã^¼Áõf¡… Øê„øc×™^¬#„ÌÉ錘]Ï6¹OCvž€G'£Ìå¤ÃÜóÌsœZVw“Ý©þ€þž€€þ€€cý€¿öÏðÿ@ ÿgúIþöÿØ?À@ý3üŸè'ø?Ø ÿ` ÿ OôÏð  Ÿàÿ`/ý€3ü?Úgù?Èü€?Èü€?Èü€?Èü€?Èü€?Èý(ð7 @Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰~°oÍŸ'ù"'ù"'ù"'ù"'ù"'ù Ãñ˜ý3üºè…Ь/H?ÐOð×]ñmñvÀ?Ø ÿ` ÿ \]LŽZÛ¤?Ð?Ài}^R]ãðšN©Œ•lÈ3ý$ÿ/«ÊK¼E½ š{D`4«cþ@cý€¿öÏð4¤¶Ð˜·ãHÝ–0SŽ{|ù@ŸèŸãòcS?ƒÔýµÎKé¿*·zìå¡ÊF2ºõšØ€þ€­uу›=ŽeþVO€ÁuMÒ«“™þI‘ÌFËš¸ð«fcý€¿öÎ,^ûMðkm¦Ô:B(ä¶AaÆCgùÁ±àÿ@ ÿpüWÜÛŽYïZ^ÿÊ©.j2'êjYfNº«ì7°ñÉy~¦áç Œ@ ÿ@ ?Ðk9POˆèqâwT軩§r’âän-¥,Ôì|^lVÿî~i íÀìÿ°øÔƒmJtÿGrýî¥Õ»¿£÷öß¾' dõ®ØÛ y Û®f@ý3üi¿m®WÀrßwõÒÖó¥’ï£åÛNê›è¼ª9¨ì‹"UÌžåæÉÎx~æÍÃÂ2€  Ÿè2œØ-Ãtˆp©¤ã zï«æ~£ùƧš[§±ö®ù‰–çûG1ÊÿïÞH®-Çûì|53Û+S]3Òÿ”µ:Ïn¥ìü«„ÔRI<îpûƒ]=8g»tó,˜ ï* 8m÷Ûüw-÷•? ®º?Þ]©.éÿ;zæ·§õ|ú¨Ë s—©MïÏr}¼ã1Û‡œ OË ØÐ«dŸè'úç‚ ñ=û»yÇ´(¹÷ñš—å7]\öýÞ©INæ³e-f.öcœîÙ߼ެ1þÀ_û^mOvÀÔïMô—>ŽzÇrãû×ÒwïçzoÏgÂï„û‡\^d³ yV=Ù®h?Ð?Æ›Ÿ ö–Û˜{£·Óòëhå;zé+¤¯ùÇŸjvtVô¯~î3Û}D²C¥=æ¹:S ¥Oßæ¹–䘬Åâ¸Ãlñr4ÍÏŠ–›cdßÞ¸G—gO8TüÎláqˆÚß)´ÈʯÏûG5ÿöïõ9å@{\á¤%Y÷RÇ"ŸëÝëönÀ]kS^L¶ÎÔ³PôE¾ÍW¿Ð×Sð©eëùýu4¯¸wR÷FW©åÓFIˆ˜=s«eâ[: ·ÈÎrÉéCïÒWÄÊó/5Öü±+Ж¶R± ªYAÀ«bŸèŸãLï•Û¶“Sô¢uÛk÷ÑÈê1û·ODa¨¿©¶…Dµuã·G\eÔj¯mZ˜M¨§-¹¿f£©›··Q¨­^ÜèUÔs§n^Ϩ_¯·ìô5ú½´a%¥lY“ÇÙ=Q>[>÷k=ÇYN›ªhe5„üÙß”Ôu¡ÙÞ¥a©özîGXî;>RI[XÞ[8vÆM^köp©žßX>Ÿúc.±ôÛ@ò–®±œvi«¯‹Öûb+sq³<Öìj©¹ý–¥ÔgŽÝÜq[Þ¢•ÛmuË[R>íµja>£öâå5=Ih¶èK_QZ½·cKQͺ;g·Ô[¯n´&ÔÓÛŠ®4õôvÜ&ÔG·ntöú®3Õ³pÏ­ŸèŸêøÐ3ý$ÿÇûìŸà  þ€þÏô“üìÿ°€€'úgø?ÐOð °þÀþ@ŸèŸà@ ÿ@ ?À1þÀ_ûgø GÏ'ù"'ù"'ù"'ù"'ù"'ù" ñæÅÈü€?Èü€?Èü€?Èü€?Èü€?Èü€/Ö<>|ع"'ù"'ù"'ù"'ù"'ù" €?ÿÄ378@0!"# 12$3A&ÿÚeÙy§âkc±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ"þc?Cº{ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61fþ—µšìRêU‰±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#cRjz>þàDzþùMì;¬ÅÎÅ{ï”Ø1é9÷-õHuO5,™œúÍR¡qPëó½ím:7epßï”Þƒ›P«Ò›Æ–µ^ª6äš–PÖÅaÂÚ²çWW[U•.ñÚÌ\ìWÞúÜ7u¾IYÃþý-t×iCÏZ!è¸kòàþùMƒ“—Dº”½.Æ©K’¿Pk®+phVÅéW¹­¶þñJèø|¦ô/*\ÕrРÙ×ÀÕÚmR–Ý|¶Õl7Ï­Ö.–ê“qЬ‡cµ˜¹Ø¯½ä·n*õ*êoæï™‹ŠÃpm[uµ å bq¹¿¦æÿÁýò›>'fÚŸ2.ãbP­…®,ákNïµåw[‚¼ q€^&´ÆÀAe±˜1LS—ë|¦öŽÖbçb½‡÷Êlø¹ÊÕJUJ~™1õ®0! }7Çcµ˜¹Ø§xÅ+aË((¯ã¦¨(a)d&'©t—eÄ¨ÒæÔ¨S=÷ÊløºÕ).òŒTħȧôâ&—¼s&EŽ“[2˜ÇÖþùMŠp’ê Šˆ‚€s™@ü€åS ¨¥òÅ"ˆ•‘™¦ÌÛù1xP%ÇÎEÉ©Øíf.v)æíZD•Nc’ž¢%a2çê1ˆN,óó:Ú¦Þ¾–C2š‰¬ŸÜþùMƒ|¿  Ó|á* T”B’cB| L"\RN ¦ƒd¸¤[Úýoï”Ñ—æ0WøL‘U“âD΢|@Q?8åæj(²©r  b‹Xb );ŸS±ÚÌ\ìSÌpMª"Ã0±YD•@Jé˜àSðID¼“ËpSVó!¬—©ö¿¾S`ÇÅÎþ¨‚%ƒ #Šÿ‘ÃQ¿q‰Ä‡H¦'’m ­¹úßß)£0:uµ–+ÕOˆ~12Æ‘ü~# 2(òÒürs8œ:GÖQ°¬Ó($¤ä¥BWév;Y‹Šy 'kТa¥$h!¿ ÅXÀDNOÇ1ÍÌ1¹âÓ¨(fVô±êvØþùMƒQ?"æ@Uš„Š3QüÔ1DüÎ'B4¹÷$*E75C sCgÛ­ýòš2ð‰žã—"*úRdæ„"™5ÿ#ˆ‰¹`HLc¤¤¸jâ:I²þ—cµ˜¹Ø§tµ‰˜œeU-!«B%L‡Z]"(m%ÿb*BJ*’¥HT ~¿U¶+Ï법F˺$¯;_ê|¦Á‹±0ýa¯JÚ“*&1Šp@Y3 Ð¡•6“$)ˆˆ‘!Ƕ¿[ûå4eøµÐD ž¤…O ú8~Tj0´ˆþÀ"UƒŸS)ÃzPkÖ7Òìv³;ò‡¬:Æ–ã̈›‰AD2©­ÍR N ŠœN " : …Y8fž²Øn)Õ :µ?ü.»€–­¹oÖ¸h/ï”Ø1ñy˜Ov*tDÉ‘r˜ *®UGø A™„øè9 šÚx&c³3oõ¿¾SF_B¸—6"°"tVKÿV’)¿˜•û-¬A$8(RµŽ¡KdäÈÖý.Çk1s±O7ìÕñD©” Ÿ& TÅ5Šb,bñ7í¤Ã:b™ÿ‘ÿ‰¡1LÃh»® “2Ñ?2V¥¨ÿÙ4ËRŸ:JCá³¢8¶²/ï”Ø1ñy(bÝS *‘­",‰“ƒ+ÌJQO€@¨¨R ?~IÎ °í¯ÖþùM|}5ÓE”!ARTf9F  òàÜÍÇÿiô¨œ°&¹GîšM¹ú]ŽÖbçbž€âÔ'1Å POÊLáÍTéž?É1ÃV¢,m¨R‚‚ &©DŠªq(& PPú8A+s"*–ëjÅ=µ«å ¯(kòtË«­½TzµñYl«ô ~Þ´gÔ¯Ý/ï”Ø1ñtŠ\Ç9‰•ADýéLªñˆ'‰U)4›SgǦÿ[ûå4eÙþu!OQR1„ä'K$L(kQQTä'ïüUƒúæH¡É&–Fø·«N­>ãßMâ` 'þnÇk1s±OAŒV§öš*§Æ¿îÂŽˆ/ÇrŠ%æœÐ"¤äœ¥1Ž¢œLªéå“HŠŠ&ˆ Ìr¸K/ʉ*”Ô¡(Ž=‹]²ªóöû`ÙYõIî¥?¾S`ÇÅÄÂ;au;¼Ü¿;æqõâQCcÓ¸‚jããÀ@|w”6ßBÆÞ°2xøò(Bãë©,êLÅÑúßß)£$Û»Úóªƒwȱ±ýá*…Çç` ·×‰C%îúÀòï‚ÁO¦lxwOŽÎß3  £Ï &ž><±MÆ—jnfÌ£ÍÛÖ‡Ðìv³;åÑ'î; |xÀ©cÓÈX yw!;Àc»ÙLJE©.V·>ÂK¥0éØSƒËûå7°ìv³;ì?¾S`DzþùMì;¬ÅÎÅ{ï”Ø1쿾S{Çk1s±^Ãûå6 {/ï”ÞñÚÌ\ìW°þùMƒËûå7°ìv³;ì?¾S`DzþùMì;¬ÅÎÅ{ï”Ø1쿾S{Çk1s±^Ãûå6 {/ï”ÞñÚÌ\ìW°þùMƒËûå7°ìv³;ì?¾S1—ó§cÇ_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSG_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSG_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSC’ä¹3îNùã|ñ¾xß‹ûå4fõMÐ/›ºØ”¦VG«[yFÞÕS£;­½~}gá¤CÒv;Y‹ŠvŽDÛ)E”Nvn«30F‹ ¦›ª"Ï»s%$Ùl*¤þùMƒÁÁOÇæ È$X‰˜àGz鑱š§b¢ØTÛ+õ'Öûßß)£0?¶¤QX±üŠD#QøÚsTšmÃ軬ÅÎÅ;]±84’bK˜ÈÆ Y^aZcëx^w¯¢þùMƒiÓNè0C˜]E8J¡ R©E®ÍЖf]ª-jÌ’’©JýÏï”Ñ—'(\$T‡:…P§Ó×/Àúì̪BBÛmœ:K™o}îÇk1s±NðZõSH €ÀæþéŽ8Ö¬ú%õN©S«~ƒûå6 |]#Ë¹Ž —ßýUR,'ÁC ÊjBTùª«|â2Ö-©/1/6‡ÚþùMr*m0XÊ ºÄ¨–3f)1 8Z×µÉiϳîõ-Ð¥}ÎÇk1s±NùÁ6¼bÌsLQ"œ£óD„U4ô˜ˆ‚ñ_²%í»ÚÓ»Óûßß)°câð4ÁîƒHªþHñ‘W€-2R':€¦£¥Šà8Û|QíJ™R’¬Ó¾Ç÷Êh˱VÊ'!@‰¦˜œQ9ˆ—ˆŸò0¢'1Wì³zÑÆÚ¹O–™––ûŽÖbçbž5Çࢄ"딥PÊòN±&µñWQ¸&[V¼{r»+• ÜÅ[î|¦Á‹œu]²ê•P &t?§˜—$ËKÌÒc‘DL"²$µr.û³möÍŦ9v÷ÖþùMx$-Æ*“0‰Ä¤7(ânlʇú,Táû$¡?!¨¿©9ö;¬ÅÎÅ<¢ Õ”L™€ªKö2ÒrØu¨'ÄÇþIšH²a?kÝöåçNû_ß)°câèuØrà„€Às~ÊDæ>©E1äP¿ÍM%=¾åÞö¢ö&PU+u˜t\¹Öè>‡÷Êh˰TnMPœTNeÎÌ ±Óþ¡¹`}B¤³<¢“Ø·•bøm‘o.RýnÇk1s±O?• A(À‰Ì*i˜ê@sNcB\J ˜Cu¥g\-nIî¸Q4‰õ¿¾S`ÇÅÖP%ÜBŽ­U%GX€”9B‘ˆž‘Ö^TÌ‚€ŸRáJŸ^‹Q§eí[þ%¾Èû¦æ®JÍJÏKj.©+6bÞÉÞ²Õ¯Š³‚µ-À‡÷ÊhËñ)+Ɉš5'Å?-#¡øâ r€9§Q81ãûD¥ä¦%XÂ{!ös(Óíë½k9s_K±ÚÌ\ìSÉÚÁq€åB8‘¨@0¤²…P°RQyfPV¢ž\òÕ ƒ½,{Ý L”û/ê|¦Á‹¨æNë@ ±T9u¨šcm2¡«”aS’&&$È:¸Éÿq/ö¦‰TRߺ. UI޽L®¸5Úæ%W­Õës4¬œ¿é”j£ÿvß„¶W8r’­¾GÝ:Ó¹tP.¼žŒÁO]ÃÇHH*c 1¼Y ¬R9‘‚”°]"SŠ`ux€ Q++~£2ÿ8Kޕܬºë†û(êÔȾò’☯£“MhÐ7{Dü»AÓ³/ d.;xÔ‰J6~Qì­Òh­^.v)ãÓÒÎbF[Q–"eRi1‚J"cGòL})Ë‘1PÂ%à™ˆ!j¿÷¥«gÓòöz^IlµºFNS-hÿ¦.<²´$de2ªR•Õð)´·Õ§«ÎÝÏ-ƒdÌÎ>í4‚û’T‡÷Êlø¹@ÿ«ùÒ²èh1L¹Jr0Gö•˜*iâU!d¸ˆ˜ÀDú@ÚõFÓ®\˜C.S0N™DÑ/ûÏ WSœI˜±©ÝŒ¿PXÓ*ð]UAR,T€bX¤\ÿ²héÆà¡ `6¥þ³‘@9ȺDH*œåJ"HH¼²"ŸòÒsŠhé¢EV‰*Œéd—ž©¯'uÝWEÇHÅÎÅ=Ü:L4ˆA¤Óæõò£IyÈ£¨¢s(*~äQ!2 K”¢$0"BL£)USPÅI9nV“–Ö™5 Mª¦RÌßµ­\­ÖÝŒøQ´nÖšécf0 Cd#XÚ:^Úꩳ‹PÙôµµâ-{l0 ch Kdf½µ4­m Ö¶†lQ*kh¨ dÛ tɏޗ¶º“k›DÀ­‹lRƒdÛ„`Ú€Et§ÝŠ•˜4€kØH%n7NÈ ,h#´ºÔâä'Xø?1Ë|‚îöÒ6†­p¨Ø®zÃk›X>Àð',˜.ÉB“ÝÙ&ðv/­súîJaÈ×ýJÇ YOûÌÏÚ"fcê>-òyC¶7•w WöÎmö©6õ…Ákʼ×D–¡2BLûˆy@Gô,™•Y&U–7‡LÂÿèC8’ãK‚ˆÔŠ Hf[ã¹å>k$NÝà"ªox²jñ6% @1vPBFÄ`{hc2úÖ*ŸUšî®Ø³­ê5[€X¦hÁÑ«05—˜ÌÁDÿg áù¿ ¡%ŒJšŒq‚š$Ø1ÌY´T…ñ;ŸZÌç™™/¦|}å!Œ¯’ qÙö^(^>”ì ì 8s©T[‰+ý½fBá– ¥=nYÏé¹ÂW¡w´ÇýWöS.i› Õ2ØÔ"'iŽ?¹ˆ²¿Ò±ž™nÚÐX v  Z™¾¨„«+vJVúö"VÛC k ‰CëI"ÇP$Ðk²pœrl¡%+°(²JI=ÞÄ©±ÙXÖ˜úUަ(Vã•×vó&vN±Ø3QÏ‚öœ¦lV­*â†&ñBÑ2ú¦#ê¦ ƾ%r+®.CµkÓa­mž…Á@òÆ8¶]g6`)=ŠMº–"O±¹ÍIaU+ 0{–²ÉÞÉ\™Óïóš–ºž;ªé e´2+@êþ˜ faø¹$öÜ ¿çø¶Ã*ùÎÂJª^X—Éò£d @H¦" …0 ÿ3ØC¨‘p3êˆ"åYÊÊCÝšˆŠö ‰AÛ{ Ú}pÐa¨ÌÛY-’`@©Œ_±jÄ$ëÔ÷%n]Y7±µæÈ:¼Bˆ¨æV aA[ƒ¬úzë ÖÍhzíÙì1kj›¡”¬¢ÔVØ ð)¯XAp ØTÎ%¸zv ™bŽ:Ùd!,»¬&W@%ÅÓc¾•ƒ ˜¥ê§w¦«RØQ­OÔ¼‡á¼S—-£¶ãs «öú²d ®ªv!b¤‰ÚDÌCT@¡gW Y¿¼ZÕ÷U‡cê6A–’c$+—µI{+íÚ+h¬l0Å©VkØ 9þo„ì2c+DfqâM»mCH?jYÊd¶µ„då@ðI–o?Eí®ÀÌt-÷ÀI–ùª–“ù²“D®ËC„•¸=£ 2¯Â‚mc«nÕÀ²Ê X”ÛêR…ƒ+i]†Y4³véÙ/¯ \i ïNÁY?&øäqô,`1˜ÊÖ± ew×¢¤"ÆJ·3ýSeM…W4µr/26*[X}\£sò­z³ª<`JTõ’ÏS€¸(û‰ä%ÁGÞ'ûX4\V2ÆSMÌ~3ÜTz®7V¤(`÷§b¤¦4Tþ+°º•å±^i‘cm¥íjDN!ÚÕcÚ›ÍƼî:ÏBˆqò±ìT,¨Œ¾Ø]’)…€‘(=Xx­ƒ)õeö*ö$n%Woéµ\&ü÷5Û°ìÊ$PEø-M†Œ yJZÏÎ'ªÎA¿¦äkUpb’·8›FTº±Žoâ¨M‹}CÅ1tI&àZ†bbf&&&'‰‰ûLL˜˜ÿiæø/¶(g9wUoÔñ{BÅïo: ×ghu1fͲ±-U´N¼óõë9šÑ¯]¥dë¬â¹Þ6•ÈMS bCÒ‘M[ L1€åÀÙ™Ú~¬ti]€ÓXqg×#ï±-µ!®<¶sTÈÊIRV$ tšœèúï]zÕ˜ã‡KÀ "©dSëdçH~ö˜&üh¬ÂÙ:¦2"%˜ÇRÊEdjÔÉ"¦DòulÍC†2ïhvÒj-¡é;ëY QŒª ð†ÈÿTñUW¿†³¿M¤+°'Žt&¤ôvwá6*ÅÒ–D2@I°RgBœvÛ Å*Õ/Šî0[h‡w¶–[„Y¬ªÝÐR …ªÑµƒ$κ‚ñ„š“,tn«9&Õ2{”øåN­SoPlÒ¦¦ÄAu¤ÌElíú)=E®6¹EšÄ›~•c°º«j_-]¸²«ö1Ó°V3\¹¬.´¬ºRžúöd…í7ŧO® $’Ïúx7Ó|*TS-&“+f[êÚ2íc w •Šé®©s¢R.Ä´$™ÜÓ± rËç’oéþ8,d2îN{¯b쑊 ØNõÕ[§IV)û­c çø»_ã¼ ±}‹Û6†ª>TûFßÅàÅO ‚™Ü ü}£ž>—^F½U2)Õ²=Mü¡‹É܆6-Xî]… W}J‰j$™^ËõOÝ¡ÖI^´I†7kcºÀ¹ømB¥YºÃšö *Æò¥gP”ìõª!k…³×å“U©àoä/P,YQN‹(Õ•›Üà\´{Z 3ë’”I@Ì I–M‘+´éU›*÷*´ŠÄ(kt¾á [Ìì³™úˆ õ›T1æw&¤ôdz(­Y,>¥¡æ±\{Í›1ÒfCÆBÄuîï7½‰›O~½Ó=C0úò™] ë_­" ›sÚW1ùŒ[âñ²ÜFVVÅ5âÓ–ªÖ­œ…µYS$"¶‹ñ(þo‚û¿OÍÂÚÆÝ ñAÀ}î®Ym@¸&Ç>³û ¹ ‰Õ›“QUì_{‰ª «Ö‹lû½E¶nÍ5¨Õ’}ŸÛîR¹hØÓ—!mUœŽºþ’ä)UsŸtXn—U°ƒ[Tqb%kS‚mž óc U rÔY¬L{m¼ Ê¡¥ =i9M‚´Å‘¸Ë’X“U¢]£µeEÆ,:E,©K}~´9tö1[ŒE‹S <²J#…›>›UšÖh¥Àê¥ú²Ý«À¹Kô«³€}q¸f¹'{ ‰sKåO¢¼>ø?±W"«EM‹Åc†k¾±¤íÃUs5*ìLô„¬Ñn¼­k! "‘!(‘!!žHgïö˜Ÿ¼OÚà„¶Ë“],u†­)\qmiÀ,"fb9#(¼Ä}þóô`K3YƦ² 1Ÿò$3©Dÿø˜ãù1&ÏÑ€Ô¹x†&ƒí­QëV„º;ÿbàYN¶=ª©Ikzâɯr(e™²¡=%ê”Üæ5úlZ1mAk$”ç©à²q/¥ªÚ=c^ÝeôPo°nöþÁåÏëõá“å%,®VfOP3~¥’«ÁªÌXöJ81é†'G*½‰±i­lX²]è· ozM©³)Cë®k™õ²ñX¯¸à{¬À¨´Pž@ Úï*ÉXÄf›O[Ó`+Ú:ëM‚²6'®KMgçÎKÇ![Ö²-ï“fŒ`ºPKP!]Ëi )bË:&;M…ÖIë”ÏaŒªC¬È5ŸæøIªô³õÞùBØc#Ö³›w¬P!]ãø¦W5›÷Kí<*½sN¤…1¶EBi”¶a3}Sd}E.¿sýnIUuIÄ{¡ YÖ6›ë´P6^¿I)R ®ŸY¾ºø PÙs%ÐW]Œý©÷Šf@Jó%/­øEë¥nm«,ØE•ÉzÆ£ƒ+®Áa‰…ªå¿ ‡²¨õÕf†Ãì1pJåAUzzû0!h¬¾öI“/XÈ%ȪÉHD2u&`FIbý=tº×jë,º‹p&Ô2«’©°Q¬,)¼ ¤w@¥¼1Ö›6zX¬1 ñÌÊ­×v55£ Ìc춘%WXªdv&vN>Á¥b¶Zkͦb«Y°S\EžKñÖ¯I~:õݸyK*±'h¦gécjØba\S jÐh´N ³mD¦ ±è®iøëÊlfmaR¹Ú¦Úã`æõU¤+[u|”ö4]úi¦!…o§Dö)/ë°Õ¤¯â¿ˆ,ûT.㜰9Yl5*hÂÑÅ«æj¼Ø¬m¿`A†¥ãȉ¤2P2LûÛÁÛ¯,‹®2ÛÌ­Tr , ä†TÉEª¨•5Ô,pÁU“x-o2‚ãþO0ñ‘ÀâÒß$Â&êñ^³íSD£Ôˆ:hälªXo†7vè‡q ™c Çèü³ÄD:‹Ê¼|¢ÓU³xñäÅ"‘¹fa«PƒÓÌë ’€›Â5ù§9…ËUÀ†+'K"cbõ›­Ú÷X¶<ì$IJÔOY•eºvê.F 8þoÒÆy®îFÊ©ÒQÜÙyH)Bü}´ADÄlÁ´¿ùõ@ùo‰WÓÿŠðÌoe´0Ã'‹ÿ¾²_rLí•HTB®mYSf T+’g—x¹O´~Sãræ&ÕÖhØØ\îÃ{@ÛJ8à’©PôóÒÃ5 _å1Bå>eãdÙw“xó° vg1ˆT×|‰2§ŒlDž.°ãØW+õ¾ô>câìö<ŸÇn8¦Ûó5mZ*¦+’¼\(Ràܹ)‘ƒ˜ˆþ,ðY2µúçJì©ptã%VkƒªRw¶° Ë(tj™ä‚d—ò ¿©u9l5Ì^{6ü»íÛÜË-B½Ih«Bâe;U„ ›2Á—­ó!»U1ü¿g1xÊùš¹l¦>•knC…7­&¯)¨¬Ö¸¹sF ‰rB§ ²ÓndüׯíõÙ'À-³rœ[ÌPrĈ(ͱ>°²ÊWbRÕ$kÔ²¹{,?øÃƾÏâO‹ ±rAUsUzTd¦ ŸÝˆ4 ‡ ÷60‘32å~£Ìá: ͇*0ÖT3ìÇ"³ßeÉC³ó¯Šòãò\‹?¤N6®N‘’8zYeåc´ê@0ê9ipÁJÁŸ‹&Wä~6WäÞ-X«d•Úl¬ààx[ÚEe,fÅ,ûí$L ¯¯*¯à^o_öy~3gVì5Åz›,܇“ °bûÂÈ´ÖW@¬„C‰ X ë¬®ÿ â“n„ù|ÖO*–d3~¥‹ðu-Óöñh÷½§o|ocèà ¨-õŸ“¾ =R'õe³=ȱ¦¿½Xå‰=€Oð9™×m ñŽ J>üsÿèŸüžÇ\V5øë¹B§VÎ]1ìØx¼&xèþ«¥•ÄìîA$R¡Üò‰òÕn¼¼i‘ljh›knAc^:Å—ö"ˆu4ŬRÄ{—ªæÆÃ?ò .9YL®<èÕ}¨¨Ÿa‰±’£tVß¼‘ ³âÄNÃ!¾ÜDÿgݵü‡Èqø‹vVµŸhßa-rÕV‹‡+˜)L}ÿ÷ç‰ÿGðÐTµjnåÉ”%6[ôV³°éR›=6žþª«zÛ .§¹°÷ÄÊ$JïŒù7{–« 36в*ˆÚN[×׬ IImÄDs?V±Ù @†Ý£r¢­Cf«-Uup³ >·J  "èS?õÉuŸâ\OÛû_ü}CÍ1ÙS±jÝKÁmüc„Òð²êαµÙbXÆDBgöRj6Gã;ŽgâVÐÔã"öc8»ÈAõ2ºê9E6……F¬-Žx‚¥Ne´ÏôùÙ LXÄå*Ùgu q8ÆÕp-ÅXÚ«¦hÉKàn“:Ž gíàúƒ K]C±˜7;ñØÒÔ©)‹JÐuoæëG$©JÍãû®H(¤¦ÃQê ÉZ~'ì˜Ú®‹kÏ#s´ãxâ‚Ö±¼–9JT³«ÅWµ[P«z½® LÌ/²¼°†!1,„¡5ÝaÂ*yªÑD2ÀƒæU?/øâÛ]¹Êž2„Ýmüp¿%Œ¾R˜C©t¦¡aà5îs„\OA;«u×cͽ€3"Q"C33LL}¦&'ïö˜ŸñýŠV¦ù÷­Åª‰—D˺+ñ¹÷Lùÿ<ô‰‰âa§+­ÈsÞi%d–…*óÜí¥c„«¸úŠ;Ýp˺ÏÜ‚!°.…˜ÊXH­Bo ¢¢©-Lÿ®õ%hã÷×16%ÎP¹ìßëæÌæ_!}h‹:“zÎF®Õm~Ʋ·.`ì2¿Q¶V³rµL˜Ú«b—S¶“¯f» OKcS[x!(ÿÞ?þOù·ö~œ“k:¸"Ç€®Ån¯X×JÕÄ5½bHå{ÑÃiVÿqZtæšõ’TBÿ§¨ê•©o»ÚòîæÜý%ÍZDÖD~ví{ “_°˜B«šáȰVIqÇMw7¶C°YfP‹!HÒaÕTVWi©Nͧ#÷k2Âl̵îd´%ýOà ¯”VR÷/¹nïýdû ¯Q2«^­Ö,*ÊFBCf—ÉžWÈðv3¥·’V¦ëæôWM[¦¯®iÙBŒûeIÅEu.Ìè$²bŤv¨^¢Di[¦bÂQ ªî®Bш’\Ã@f bbH'òˆ˜™¿ö> “FhÖɆ/7‹4¥s=æÎ²‚”¯i žžÈsI-”#vLÇÚ"㢽‘–$Ý«^p~]¢òc)>;èöLÑ©Xš‡³‰1@é E¥6Ñ&\švÞÊ)1+he¢¬vmwwŒ×V¢´êÜ7?޹ZÞ>«k­n–×oºŽÚ 1¡©žà”X«-glM·û d:ü¯â̶Êc|’›i2óYF›ØtEGj±"¸. qÁ¡P:‘gÆ}ßÒ|zÒø«5ŠØšX®–Ód1KFE¡3hlT²É(D(K}f"ê¢BD×e$íûæl+ §LÄÞF«Œ¡$ÉH~ã¦Áv}§¾#¢¹¯í§M >©Ç$d&JÁ@ˆi!ª0[»boÞE'_¨‚ÝVZmÄR+ÕQ ƒsZ o¾‡H°à ¦½hô ë · Ã÷)6·±eJ'e¦¢†å,T¹_’¦ºa¸uª` ëÎþ5ÅåÕu˜ e nZ.ضM Ò´F4°£S6÷;Z Õº’Ai“vÄÖ÷¬<‡Åóž+iTó´J‹ì m"%©h¶¹Lˆ´I dG23ø¬ü€y§ãíÖ©Fó–#W%f™ÃdȨއ앰œø°µvGæ­Ãòþ_Šöþ>ñí°ý‹HXçú+?ú,!â>ÿr8Û˜˜ç멽,;íâðc’‡Œ¶ºžý$Øe`=]e$2+é«UE]ìA#÷lr»XI¾µz¡ ²S\}B­`ƒ©Ò(ÞÀ¢Òj•ê¦ë¯Ô_,°Û$Ò‡±b¦Û&v]Ôé¦ΰJÃn9rfõ%Rµ¨ âàÅŒZXïÆË;R5+fimîi°‡ÑxÊì8úÊxZ¢"]ç>4ß,Ä~Åê–³N“šâI^.£mžÒ°†E°B‰jÜÇ äÝ(`ðJÈb²X¦ÂrT¬ÒaviQ¶ÉQ’NcG°d{FÇØ¿Ÿà™dQÎHLŒGfñk—5ýSöÐ"jC—-•ËDúJˆú_A‡Xö.¹ ®V,¹5š„Ûicf%ý{ a©`â€dË‚pû %×)q Z`%Ú¨Í+¬ 9 Q%›¸À{02Ð#†µkØõ°È•Rª P‘ –%bàt5ÍKIgl&ó;â£<ïw®~˜¾ú¯Jìµ<ì…H[mdH±0Ú’–ôõ½ÂËnŠ«öè2iòŸ2Ø[ybŃò˜Œ]zvÛt–5Ø ½&:ˆ¿ªàx.ê}©!Ÿ´Á‹ØÂXPcðh±ÎštØ…z\ÇÂqаö¾AžÃÉr"»"«MHï$±(!꺴ôœÀUU†L…nØŠÇf-ƒL&¼ÏiÄØ6‹‚"=„’èl.8T›1é²åô×´dw¹’ä\,°«?·ÙêÄÇ_ùýÎlu3ª9Ö ¹Êk°‹«\¬)„4Ò¶¤göM€dÇ3tme¡ÿW_¢ ‡V ‰«±%ÜwXl2,à“\ÎÄ1rO‚õQù!ç:mÄ‘ø¶É ›ò¸°|Õ?^.”Û€Ü] ‰£´Ö` §ƒwQAv,E3>Iðú²ZÜÀÍ 0 YJ©Ì[ê³5sÛN6û!-êá*šê¬*­'¹’>!Îcoz%ž¤ŒVZV]ñ U‚®§¢áS¯ZÄ™Iµêµl©ÚQ§ƒçœh•S½Ù]¥ÙÉ =õHV:1°µÏ|È €€)Ð@tOíÅOœ±‰JÓc~ÀvË^1q ‡ðo4AŸY»jç(h±lKb,>Ô¸ß?^[ò`ù> ˜²Ç±V^ÚαuŒ†ƒ®Aù8ŠLÌõ0êäg† êø–b¾Èq™{Js«Ñq5Н¤8âTÀÔ$ÈF&d£™’ûG3ÏÚOæO(³ŽÏ8lß®ò]Y‘úöDa¿¨C!ê0²¡/ÈMÅ 9Òç/6µ…‰òYÙsA ôZ …~èöÝ0; 8gd½NÒ:ºÛÂà~“ów‹Š@™‡„X‰³ëP|8îIv9•Û’†VýˆYˆ™IIiów‹²_¦gÐÕSR¹RñÌÞØ·°Æ6çiA(IQÆ„#Dðs«>ið×.Ì3ä[7º}lq®7=¡ÐE•‚[[ØÕ¢ŸIê0Ïœ¼HåÃúg”BZÁ9\2¨ÞÇt¸@rR !µ~an™9’Ûè>qñh‡è™¹ªiÄV 7*õÈV«f) €QégX3P¹q Pý˜5>mñ”ãsÓ!°ÿÓ ÙÒÔ9wy6ßìû&k®¸ÁÀr£6 Y%?6øÄ.ºƒ ›Ò Yf7¦¸ÜòJ¶]@6‰D0¤.b IäÎÑg=¥5øy>Ì.ykBÈž5Æ€÷\ƒ¯hÝ…*e…ö\pläx%}+åï:cVÖ,³(yZ}TãͶ,Ú¤UlÙ‚}½TÖΓº–¶ˆÉjèÕaõò”àüšÎ+øcGQêšöºÿyö Ç* Ì5j_c3˜±ÆÉ=¸úøãä*~ ±Š~A·I¦"áU$ ÌH㘙ßXûDÆÜDñõ6ᣬãDz0ÔäÝmdÒé6Ãèñ<@©šÉÎý¬RÍ‘1ö„|ë‹áž?t× Q X¶™¦!ÉÍžØgïX3öeÐQÊÒr©…paó¶%HZ“ãÙã«´¢ò$ÅŽò 6-² eV£Û=°Li~øØŸœ± Þã×ä\´ökn—ÔÄëÒ¢«)éüP¸Y‡•çxk6±ó—Ž8?…oÁÉ,†Yv³¢"8.eŠ"Ж1©Ç’t. >sìÖcãÙCЮ*²VÇIÖ9R—½} !_uòC"17bE+DxõÉ„Úù´ˆ¶¾M”Óp.:[D2ÃÖO’Q|߆öf×ðÍ›%ÐÕ@_µVÈ™Ïâ’iBgªøQÉIœÇç¹}À«|Óƒ%Øñì“URÆõY`’È;$ µŠ@,(thÛbiÇÝß·ÿ;ñcQвÛ$3Õa¶k‡®}¬áŠ/Xk*ÊÕi°0V Š ¬KæŒO{ž2ÏͶúÔv‚AUlTXâ#ñ]˜›Î6‰HÄÞ3ªÞÉ[·J¹U¬öA©!&¿À`ö•ˆÉ2¹æv䤋’ŸþáÿÿÄ=!"12A #3BQ$0RaqCr4b‘±D`p€ÑðÿÚ?ÿÉòüI,s¼]ˆ¤Œ–få@R@Ù Pä‡ "îúý¦Ÿî‘þn;„²È© uh-KVåAó×í4çÆ’;Æ6(]û‹˜ðáAÃÈ¢v¬™±ª?´ÓYýÖ÷÷Hb¤Y|TæK*ÑØŽ_^‡Äº“ÿƒŽò¡nÂÒâãîŸÔPÛ&ÙôVRï‰#1âà ‘ï~ íõûz‰ãÓBóÊHŽ:Ègv 6þäuþy¢È/ßrćíŽÞ,È2̵\òj²Y¨×CÔ4D1ù¨@BCdá+>êÿ¯ÿG¡«Ò²æ5ãJyHªF~̃T¶àØ"¬•ÑÆHÊâȵ`ÂÔÂÇÔAB?ÁÔú†›I,PÌÅZ`JÒÚ…)f?Ad©þVЙš0L±–JŽD VI †;þPW‹rµ#®ô4»Ö‹7µA¿'è<Ÿ§ñ5{ów-êY‰%­,¶DU¶F¼«!ò©²€­E_’Yb2S2๰µ,€Ó\,löǦC¸bT[-lb´sU¬…ƒ¾AËýIbÔ®/6º™wÝý¬¶ªÊ*¡2`Äeà(ÝÕw•AhäM©³Öa*¤ƒkþÁž¾bdÕîìFïŽ[˜À>ЧÂýo¿ÛõÅéš„aaŒù;|ÌVvú'ú_=fKG+![öól’™„j,‰ ì§Ï@Ùà‰aäíØ ¾*°*Ü7$àKìä÷‹Òªåú¢P*$4µ*2[¶äïfÚ‰ÐÔH”I“µ’Ç‹#'’ã*€nNãµ)pà JXÒ|E:š–¥B­=gVAc"Ùf!òXŒ±Üõ¦õm¥Ò%|eqa8«2‡ö’¤”­‹2> oâ_Å„ÛßËË´hÆCʶ’€‹ºŽ=Ù_.Å"Ù¤+Üe ÁƒÞH"…JíȲzIŸc²™£²Är^Ý aBë±æñjͽÕ{RÊš©¦tÔÊÒe…èp¶CSÄ7ì'¨åŽeÎ'Yß% ¶#ûƒä RÁç› $hå›¶y¨P^L‡Ňmë®-¡"ŠE©.Rr¬DT ¯æeÚÍP?ÁÔÛKª E»ŽñÅxGT™#—Æ­­âä+È1¥Ø–Hƒ$U—Ü®ÿˆRIaú°F$uôö¨y#†Nã„.J±¨½ÕÙwÝÀ$â [šŽlĶ.›¨ Qy“#,‹`Ø¥Ä Ç4bD`?l¦‹Ý(ÐÅBZ‘ð¶=Ýa®(6!A@25;>Wdçúù&þß­ßù^ª#ÛFT ºÞkÁ܃#¦ëµc¥Á1*ÌLE¹bÛ2-·´ô¢£L¨p4Ê {Öga„`d€¾Ù0u”ÍŒ¶îü(RIW°ëŠ“[ }r¯¨t#ˆ(ÛuåžKb=Ý1f #-õ VU¦Ú6'bËïZ M"©AÅ@ËnJKÛF=¬s*‘÷ ðØo‹6Å>õ®6ukná¹ uUŒš ‹«‚a†ä‚ÁSÏ€86#¡„jm†I‚µ(ñDâÔA@ˆÊÑ‚rÈÌQí”ɵ¨°XÚ¾ t&§Í$e*ã°VÔŽK¸î0ÝXJ‘GŽ$â£ÐýBS¨Ô.§X¯ A iæ9+† K˜FΑ²«ÔAƒ`îðGê?Á˜"³±¥PYèY?ü7X?Ðý‰ÀùŠc‰3ʨ-¹¾IÇ”e× vfð€¤Áˆ³ï¿q{DÈ@äªÊ[róƒç¡Jqe¯j_pŠö’è„’+"é“/nT֬銠ţÉq`¬™2±È Ä’qŠn-ª#ÃìNΡE£2@å“ 7ó}|+—sY–ßw ãBÆ%½Ì lH»'õúý¿[éz­¯hȆë4e}»ì@þþ×ÕÝû-±,«l’û§LI †ãá·é”Ò S“F¯*±¦¨ÊlŠ«¢¼@Æò&Ê“ã1Jà„äÙ1äÊSÛYâbئ#plt\r*É—á±L³â¸Y(äøP  k9w² Œ#VeÂìU±«²Öo(ø¶*Qä´Ö¡è›! fhuéåN‡HP‚>^-Ö«,^Ðåyl Ý‹û_«w4¬«™{#\Å–_Í{æ÷êÚÝÃ{ˆT$†Éwí9’Ø®{f4IS·Lp¸È£;d{³l×6òÄ”QFã!ô¾èy"5'ò¿žuj¨€…d5˜`M-V6Qöãˆsr €¡‰».o:Ø‚:J÷)6ÊÎ2;‘õ!·;•¼Ø&%ÅŒ¶'~êǽ™PÙˆÉvTiy.rëOêZ½3Fë3?hL¨$,Ñ«HxiP1$"¨bÀQtQ¯æÒZ˜ã#-'ú«Šºƒ—Þ‹LAH¶RR³†õ} éÓRÎá$WÄvܱt!Z^ðcB<­©™m·QOò‰„±ÌºU0¤‰$mD³´ì}êM€L´úÐê=J=+’Cœ´±0Ô€¹ !ÁÛ Ã*_})%@¯ñÔú~´ê¦a£Ô´f| #åžÒ7°ÐZZ Ž`›,žEêYÂke¶ùyl0ظ¨±g¦k²Câ0äVŽƒ\M&²©ÁO º–ÖB1k‘xà SÕ‹ÔXm¡Õ«PË(uàë àÑ€c\ˆÆ×ݰ®†ƒ_v4:°2@Ùé¥$Â[.Úq$•o%È¿q®]|7¥ÔÀú£<2 ĉœo!KÇ/'•Û!úý¿YŠI½7S(ÒHDeQE³–6Øaÿï½ï÷ @aœ¿,Xc•ÈZã¦8UdOCA­‡Yˆhåÿ‡‘}«AT×ÞWüÍ‘ËÈäš/Q=ÛÐêÃ0ò4Ïf“RÅHÊÖuâÍŽ¿Ëµª0]¬-¶šfl—`üÆ&ÓîÀâyw'n¿Ëµ¢ñÑk(î};¢fôB–,l²íäy®¾CÔè'ËjíÔ†Ny‚rÈDq*SÇvðFýzLzÙ#h5Ï¥Ó.cŽ€‚W—¸YåµDr)v8•Þ•¯í|C¦šgÓ¼K#¢²å3ð‘‚›êsM¦Ü#Ù›ïœw* 7àî:]»î•äs §› c²ñ%hXe“?×£éþ¢Hô:·½òd–0´îö$W*ª6G¥ë2Ähõ;}ãLðÊ2>Ö¡q`:–µú‘㣣õ èµÎY•…G u?¨8Ò2ŠÞ¾•FÉëBÞ©é2Ošt—¶ª¢)GˆPµŒU‚†kÜàœƒÏÎÑËò¦†§i»‹I˜Lݬ¢íË-éWHb*-ˆé5 ‹%þWÃzÜYþÿÛÿb´3FÓ,ÑÁfGHïhKï-kOk…] ‰ÛEëеš1Åaš!–k&M'Ì_µT• ØåEÂDùÜxþ®’=+TTY:åþ´—ëÒŽÛeU,¡ˆeÆ%\jD䨋ö¬cŠxœêbÔöñA»ñr°ªå6?†whŽ1–¦GY"%Ô+bñ«H¹B…“躙5Zwši³–Y íl;!¥*PdîÀ–›áÌHÕOÇ»z‰Kv”Ò¾)H vë"q¦ U}U²ÆòÒ‘.GïB6N¨à(Œ3dM%i›fn“0ªf£b¹5†îî«b בÊÿ–€èo¶*X(8æÜÁ¼†¶¡ì¤“NFó×¥úÚÊ˧dÓÅ qlÉ2…†8Ÿ¼ÍØÄ*BÃɆ* AX#pAðAý>߯‹ôXÛýw‹ïÅ_¯ýºe¬¨ú"`´ql‹ƒL/`¹¨Æè‹tÉÜ#¸¶fƒ3„En.”ûUG°û7%·Û3¹(±Ä®8c~7²þy+#o|G¢ú“èõ)§i+Fò,AY™Ñ3ȤˆÍXäÄw"››£ˆ ,R‹ŽD•£«l|$ì_à|O_1¦ltÓ†cX¬_º±—& zûµÉ 1"ž%;ä P‘qÚÔsS#ÑÉGÕº²¬‡Še“äÒF¢F"‚)„JÄØäÛ–Üu¥ÕÍ¥–7ŽWV!Vã)1‘x¹;†²Q‘ñ÷k‹ kÐúä„ošÃG"È#Q,Š™ ™9Xúƒ~Ö¬íüÆ­·2æ#!ÈH´KD§†R ²}ÄUõ—Ü«f²5pbdWw&¬ˆð¸Šèž>榋ÎR—t› €ÈxÐ`À•Äš_ ©§ÈpŠžXžVÔ ;LqÀ¯sÙË¢æÀȤWÅ»¡H ¶÷fÕ|lï×¥úÌÚsÕM,Ðv’0¦;`ÞUƒÃ¥%JÈĵ-\IÒktÚäi4²÷U[âË‹ ê˜ú‹¡éeG’X”’ðáܰ¸¹-1ZÇò¯ Gìúå•jìÐÅ7ȧú©ù…‘ÿOéÕ®@GvÌÌrRÙöÀ9¨ÀÙÉÈs8tŠîŠM#»›N|ó@rPXšRѳày-õAiU‚ ä±í7,RH2¡e˜*¢š Y¬“Ôf¨ ì_p¾ÛU@¸q6 _ÔßLÖ®‚pÌ0ŠC§I$UPÂ=¦!XvË5“´×K>视q”2$€UâA«ÃÊ’ Ó~ßÅÝÓ^÷  )U9µýÚî,ýæ&®®²ÑÈظ É œ9Œ‹Z íš0Š‹¿ è/C Rw-í¶‹’+,…(&†øš¥'n#y‹bx±ÄÖJªÀ0CÚ™ß@ã"±Eo ÀÆiÚÃe@ñÊÕJÆ¥­±³LF‡Ö`ÔÇx¬3ÎòF±ƒ-»qìÿl˜°?Ò‰þ¥Ë©bB¯rEbqe ”¶+ŠØÅA2¨fÇ Ì9F[!»”_a0À6OíĤý(ôËžT%dS“ ¨ËxÒ2oYý§ ¼dênˆQ•xP„-R”O­†ð½­—™Î%I³!Ä1¯Ü(¦¤Sã \=’ƒ/µV²"Ã8 F–6Ù”o^tzíVŒH°LW1²åÖ5÷œó–Ëb¨’Z?ˆUÝÔƒ>îÓ ª *(\ eɉ̾OT:oˆ4³GÝùYx%½:îS2­qj—pÔ$¡¿õüK¦9|Â4kc¶È µ;•Q*.]³‹Óò*)z“×t– I,kÂQ ‡º$@äI]Ú6±°ä YmÖ‡ÔtÚôÊ"U¿4RP‘lXØd2]˜]©Ö@>™ªÈÒâ„Õx!#• üyt;õa³4Tk—Œ1—ôýzø”>˜…kNVLEFâñæE&©O‘f‰¢ŒœàD‰Þpÿ”¡P!YË3ªR(Lv[#¢¹)R¾åă‹;&W*äÁ$PÈqq™ Ÿ P2\òM…ƵJ¼…Œ$·µ^¶>„9Ã7P-ˆ¡h2#pEÝIñÒ†8‘A7feb©Kywؾ,.´^³ ëµz\§’Èól„;*vÚC»oLÉ.›×}1ÌçÀ8ö¤Ë|?å«Ùßl[ùz«éåsù¤¬U÷Ë*kÜr,(ä€dƒvoÒê´ÏìÔBÔ• TH½¯!çõ¯_9¤í÷~kOÚµÎôx[l£,ªØø¿K4.J¤±;-d«"±\½¶±—Òüý?ÇQð亙ÚGÔ ä2 ‘I­€;‘XÕÊÙwØü3¨-|ä@¡³ŒL£ñ;‡kPnІ£Vl±ëöf~«Ž••›„–XZŽ{à1ö€µ^:? NV;Õ¡t,‡(ÙÝñ÷6 Cñõ¢Ã:Œq:Ô°¬¶üU³fÙ²ë.ß¡Sð¼ä‹ÖGBÇá°'$XÛp~ª¿FÇÊŒOìÄ»Vª5Ïá³9}\“\¿_¦À_Kð»®_½µ)ÉI¹%ˆ Û8~,l»øbbrù¨¬‚îØ·Î¼Þ"ÏwõÛn¿e¦§90½ž*à“alñÜқ߻~Ÿá™™‹&ª$8ÒýÛ6;(zæ3U‚® ˜…ëAè§E©÷ƒ"«ªF Ëà½ÑËúg­~õZI´ñ²«Ê {Ärz³ôè|;¬á÷ºUÂ&[\Ç6VC·j° ¡ýA@¢Æý†5á@ïé °î‚Õ|N1‚ ¬Yo{]ï¦øk\X‘>Ÿ‡ å\DuJ®°“O\¬6òz kF_}¥ei Q2ŠŒƒJLj£Ëê þÂÇÞ¢¥*m&Øß9AØV;AEG‘¸'l·³Ðøg^1=íJ*éÎØãölÞöÛ ·GáyüΛ2«·2‘½‚î—Û O•<ÐÉðÖµ¬ ´»ÿYWtÄÇ°Š½Ù—5{€6Q×ìÖ¶ÙŽ£MuI´‡a ‘ÀÉŽà“QÑû7êIZ),F9™xÇTÈOo#{'aýHé½\$Í51Á]¥$‰Æ;*7Ø’¾8îO^“¡Ôè’›™'’WVÍ *E—¶ðà([õë“'©öpb†°Ñ‡ ~<þ~Íj77- £¼TQÝóõ#ÆØ† tß N|j¢˜Á»„í‡!\T 1¯aa{ì~Ô3m\'ÍÓRñÄYâ„ß;(âWögP+\CÕÂMÕªòlòËÞls^Ô:_†uŠGïÑUj7_ìv>Aò=¤y[³ÑøcPA7²Çh äBÓŒ‰§°r#Ü+úõû5>E¾n?«ƒ`x…ÊE'“ Ú±üy|3¨À'΢ ”ÜHéCó7ä<¥=?Ú“Eup‚›ðÞ¨¬+‹*wôÄ~]ÿf§.ë'æPŒs»1'Ú&Eü€ÐÜ_CáÍF*§Z6T²Û:>FOîSîëëî;õ§GŠ㑃ºŠ,.Žæ¼’|Pÿ¶ßú‰ÿÄW !"1#27AQ¦æ@B†‡§¶·Õ$03RaqvÆb %&4Cr‘56S‚¡'µDFcðfƒ’±ÑÿÚ?ß*êíò¨Â+pŠŒ*®²²¯ “xj±Š­á“𢦦¢lg”T pç–i¥z©*¤ªgvFBdó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶Ü®Í>4xSã‡ÅÏö×;—ƒ¾0ofÿ‡x^¯½÷NéÞÿãé¸üN‰ËÆo:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»måÞ_ôß¾.îþ3Ž÷/ŠÛ¾x'¨¯î½ããEGwïß…ÆàMÂÍŸ…&\‡ß_žðׄÿÙ¿ü#ݼŒbOügÆ*7¸ñÿábáñx\ù8çGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mÙ.íx{ã~Þ ÃÇ{ï‚üÂï;æô×»øGÏ“Áœ^7sq²p—‡ûQúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùd8^ìQC[AЦú4¸tûÍ> I¼5t¸òÉGЬx>$´ð`°¬¦Vc®5u³='v¡àŠÉJIQ8ê¯4jÂââà°"àßùmÙ¯gØ9WÇ¿8¦ðKŒãx-BEŠA‚¥eX††§’¦–÷ãÀ¾AÊîýî†9ãÛÇ»?gñv…Uã•MŒãøvIQ]AŽáíˆK–«Fš¼P­K™!'ˆÙËíºØ…Wf.éïƒÓŒ3ÂñúMã©¡†º¨ ­Þ"‚C4` š¾ÿU#« rÙÁدÕÏâ.3òôÄp$ŠÑnÞ-QJÝù°Ö¦ÉG)ž¾´¦ªe©Ãi¸Õô‘‡z©¦Š—IÆïPîŽ'½ÓRVÔîþðÖœi±Y±ºY°,6¢*ph¸ûÙ««ᚌcôZˆP:7ŽBf¨âoçnVãümÄwN‹ «Þ*÷šƒv£…±šS]AK†¥M|Ø”ÒRÙžL”´ÊÂjUŠß Æ¥Âq\lB˜M6ÒÉEŠaóh妫§”+«$ˆÜ7ÊИçA’Eø{Kþ€ß/»¸ŽÛô›ï†ð|ƒ³?бö—j­‡WŽKƒšî=A»»SÂÃësáXíê¬lÃZXOƒññh(ßZL7–’žZÚ¯Z¨©jž%5ðUÉ VCüHc«4”ÝáS‹Ýá-ÃZ 'rqdÃ%¯Ç°ÊmáÆhêi†#„î»qäŪp†•fŒb²¡¥¤&6hÄòϤ…X`û—»ûå¼»åƒ×îî3]¾˜fòcRo,Û§=vð ¸@jª qz‰$¤l.I²ý$S…jvŽŸzp>Ì1\_pêqfâÆ0Ün’·yM4±Öáxvèaµ“D©hç‚Jì>ŠL-,òª¸ø;ú¹üEÆ~C½X-NûŒnÞ9…Ññ[‡zÄ0ʪJ~#ØäN,«¬r­Í¶Ý-ÒÞ=ÚݼÝH0<)éwãÁ{HÂë£À·z¸x>êÕϼ8Ö ð7f{³€öO‹Ã»T ‰Ëˆªâx–óâPÏ_XóÓÑáÕ‘…ŸŠ|Fhc–J¥’žŸƒ°ù7¨ãÍ_ümÝLbF©Ž dŽ|HPÖÔã8µ]\ÁiÍ]CÔL¦n$²p•­ƒ{<Â÷7}†ðSÔUö©º;Õ »µtb¢¦ªº}Ф­ïõóâhjZŒ;çYjf’yk23Gþ¯b¿W?ˆ¸Îݨý þîø*¨«wßvéªègš–²žLR˜KMSNòG<.{¤±IÆñžepŒÌ Ý·ïvW%±jQ”3„®üssZEƲˆ}¯ñûu¼ –\^•Ÿ1ÍkF®\ŽCÍ—/My–æûù»<·,|)†¤jÙ¬.G ½ß—%ó-î»ýºç•šÞ¦ÍdëËŸ7ò»|Ðv,wóv2®KŸ Ódª‹6¯¯: ´fë Vm¦þn¹ÕƘ½)Ë“®~ÌgʲkÃ-c¶a¿»¯l!¾-J¶TëpÎ ÏÌO.Oùa¶¹ßÍÚö”ZSÍû¾Pµúú:™¾>•ZøÅ±n!ÆKåñMwòâ»<9‡Ò¡Í`d©ži.mÃV2pWC²º0e`YH*Êu ¤hA‚4?¬ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîïƒ{âŽ%h†òc™™Ü—cáJ¢ÝlO^¬nMùºI´lRIY¸­‚<‘‚ Ö>•ÑØŸà-¢É ˆ9]î2‚ Ì-å·½ÖöÔÇA¿üÎwŠ59r“%ïåžË¡¶l£(ÚV£E†2‚5±òPå7µ¹Žštm­Ä„âT„œíÄ i¯nc­²æèÌ4Ú¥ B¬Ù²„׈3177Ð)%z-®Ki—`a¦Ì¨¶‘K u†¤Û­´Ôt#ib \³jÄUÝ…Õ‰·Î¸ÎOñi´Ñx”,cSbìs„,šÓ]CÖÞš†;eb¯—’÷Ê ›˜–·[‹nFÒ²6åî³#NCLÊp:­3 R5 \þ³±_«ŸÄ\gàݪMÚ¤Âf|j›š¶lR’®©¢O†¥/pîÕôѬ¿¤UÅd2ÄߣpÈ´ÛK ¸FèS9FE’ 3v‰œhöŸu3GåÆ8RÄIçŠQ¦Û¥[‹b1UàÑ7Æ<+Á©‘ëLµuѳHØ”´§ÂQ¥e<¸~#I†¬Ž±8–õ´nÑWnÖ5†á¤ð±N,Uu "YšŸ‰†ÃðÚ¬¤Q+dXe›Æ?6›jÜJŸ«ïÔÑNÐ`U8m|8dé ’SÄ­=]$QÔº»ÓÏÁ¦g^õÂfDhk1ÜSâÖ-yEf ôXÖ(iòÍ"E$U”89Ц9áXæ9ôí'KåYe†C|¨KTQCˆC&IŠc4ÍKPd?{Áè+éUÛ„äÀó-B.Vx•dŒ¶%†î¾?MŒUá*µi¢¬X„m#CŦªžž*Zøx‹•¦ š¦%ÍgX³ÔEOSO<´’j£†häziŠ,‚*„F- †7W VÈÊÖ±õý¥ÿ@o—ÝÜGmÆúM÷Ãx6Þmà¡‚:šÜÄñHgWzw©¥¤–X;ÊG,=2ʪÕ+ÑJÐ r#å;ðaØÎ #;ÖEGK‰Q+DÜ$ÃÏ¢KÃgZþ;Ê…Ñjã{0áv}Bpê ª8â8¾-B%Æi±%-4t°$õx2µ=*ÚœDIÅâ.NVé÷ë–—y`‚QˆÕ¦ˆ5%c%L«NëG?©¨û»ÖªRÓÑŠ®0§Æc…i0º-õÁe®®1%$ 4q¥²C’¢(¢2¹ 3Hµ쨱–` >èèÃŽðÕ:Å fi£53GâBøl5ÒH¼8è&¬Ž±ä)À^HÃ|‹±_«ŸÄ\gnÔ~„ÿw|ÎÜéÄÞ|q¥ÈGáÂ@´òAåô `Û,q· Î>~ Š6[ðõº+Prƒ¥®6ž:r&¹gcé:æ-ÐÖÀæÿ-„pž$³++ò29\¿àÓ†ºX ¥Ï.Z€K…A—Vên×%nu_B41ߣf €2‡çk6–þbÃhr$¥ÅãeÑͯbN],¹‡5¹t¾›?.n£9]$ÕHPêt'ÔnnNÅ‘ôã¼ì¶ÌÆþ/ж\¿ö¶·Û†ñ“3’<–Ý®âÄè.9†¼£OFÄånô£ÆhĆòXä[0"×˧/A¶à 3畺¡ø ¬™†C›ˆ È{ù@’C^ÿ¬ìWêçñø73W¿‚±²&Eý&‡šîÞ›s®¦à+F]ÀfF¥@ñ²%ìÀ‹‚×ÊUåÙ³ 9Ÿ¨R—V¶U@ÚÆÝ.äÞòzvdcÊtUT`QD™9®l ̶'ªå¶Éš+Ô$>43”AµuhÍ­˜h¶¿[§C¶bâvhcá‹e½Â–əΣ('5ÅÀ¸ÙLfŒ6v%Õ±+äù¶¹ŸKç$úñI÷k|$bTéO]%GA…$Yc§†µájêBeH™ê(¥‡—†Í’é´øžíâï†WÖÃ,•1%%rÔÀÄUžŸŽª’FGQ'zhŒêÙ­"™¥Îi÷‡w“yñÈ*#Ä)êàÀ¡¨£Ê¹f®Ž JØûÚÉÄÌhè¨é1ª#æ‘ðõÃqº*lf¶ϻՕ1ÊÁPˆzdŠN|áêé-/fLꬂ?Öv—ý¾_wq·é7ß àÛ~óFÒßvqDUYEd’’³E •’vB<`ŒÇó¶E©´ŽòH\2’ëâó[ÓÐm¸ÙÚ fDϘ=‚°]Su{‹‹[þía²gieŒŒÅT›¼?ŒåËÃr½I¿‹¹Kvs$q’íaÄÌ,×Érñlª¶ƒøíM‰á’ ZÌ>z|F’®ᨢ‘j ™L²yQÏ0Ÿ!@zÜmOŽ&ûoV#MÃ^ v+S_CW æ»TaóË>Sq¤Ê¯Éòw¨¸u\9†_5+ÐÍ[CIW- ®’IG%MŸG£jgÎe•˜+Â)äk§[SüÿÌõáL.°ÿÊË}üÂ׺ƾ½uôiti!0)Œ ±¸b¿8ú½~ü-³ÍBŒü3s)èms\st_ûìüF9Õ‹&޽yDp=_.¼Þƒ°ªKFMÙšã‰6pX®©ÊI×ÒAÓ·g¾Ÿ÷tÿû ë;ú¹üEÆ~ Æá«\39ò±¦ª“øYïmT0q¡èlræY¼e˜GkeÊ.¹Ø† T^Á”yWôé L­Ä ÃNscoúJ‹¡Í›ø0ï Ó³=Ñr݉<¹GÍmü-®v+§"ÄÞQÈJþÒÀ§®ÙI3}² {Þ"¦FkqN`r“Ÿ©Ô[Rs[ª Ub“¨Í),º©Ê2hê^Þ‘¡²«C–IT˜Û(lßõ°ËêÖû4"åI8—$ù.o¦PÄTÿ”ݲϖ%@Èf^P·6ò×÷Ž£8ô/M¸Ù*Êå¼iSå~è¸\¶âìJõÐmEný{P☌§®ÉÔC5<ÜH¥W‚Zy!‘•¢–)Ãe{Ç´­F÷ÔV½oÐå  ‹ ¨ÌÎÊJH&Y#nG䩇”ÁR¶`¥¹€ËüÆÙxm,Ñ‘Å9t¸¸*K7:ƒ~]¶Ð˜¤„4I"„â~ñ\ÄòMî<¤XèFÊÙÛ2ÈË(U^úÖÊÒˆ’äP²Ë$¡æ€€l¼Áo Íœ¹‰ýÐu¹6ÚAÈn’6¼0–m”õÌ¡À>‚z’FÒ3?–Ë’ ¢Ø^ã)±ÍÖþ‘m¸…e‘E„Ÿ4–ô‚ r¶‡ÉÚmä²,ì >6MX Be!M¯Öãÿœ Ã+« |UX…5==F7 .)^)+*¥{̼5’JdNÅLR4)äŒ~«´¿è òû»ˆí¸ßI¾øoÛ÷«÷v»XÅÛÉ, þ$]³-³x8‚ܮǛBÊÎFna%¯¨Ó1»q¸OÁ•U!ý>pSk—,A¿K^Çf‰d`6uDbâe°;úÆbm–ÖÇhâJq$° ²ž_H°ÌEìYÐë¥ú,L-2éR[†³Ù˜/F¶™†\½¤ìž1畲¸­¢›=íe-þmó7[lyJ¤·ybÌ3"ÄË]Éò—U×ÒFß)‰¹aqg¶^&S Î3ePNn`÷ÛYd’Lñ™¸¦ùe6¿/¢Ãÿ›láØ°“ÆX%—£e`O1Ó§®Ä‘t[)Ÿ6k†ÎËå\-¯oRvf¼B¹µ’ €-Õy…ͳ܆Òm#0p»ò ¡×!_&;·¯]K+l>\3ª¬¢§¤4P`˜ýf!ˆ`bŽË‡-d SHcžžJiiåW\’¦i |r}úÇ·¿ykê±1‡a¬þš (é* õ´uؾ)‰’P‘US´ÑpœQÉO½æ¦H÷{{Í6ðUá»É=}=Ô¢¶ 0¹8uËVµUôÔèb~TàÔÎ&&ñ±Œ<‰EˆÓ‡WÒSVÀ%\’ˆj¡Iã%ÎGÈã:Üåk‹ü;Ã'i{׆cTICS†ÏmDà U.'Çž» ÂÖ i¯AÝ ‹44s•X¸–‡±_«ŸÄ\gnÔ~„ÿw|Ôæ\­òãf([˜>lN¤èë}-û;°9­·xb’ ™“%®BåõµùOò¸käŒ ¢#aèV“—0ikrévõ}'’7ÈӉʾZÙ÷±O9'”ÚÝNÑ…^.¼B3ÐÛEÿÔý˜7ÍË›¦Êx²G Ì\¶f„ʃ+é ƒn†Ú$Y ¾vÏÃ2±^@“©ºÛæEúí"0•¥I,’*2…c—-­Ê­®£5Øõ&ûÌs0R²ÎÙ_¬|–=S\ÆöÚÝHã™3feW¦M#9_‡kzô×÷¶wåU´Ytâ):Ýè/ ×¯_F½žCnŸÿ` ýgb¿W?ˆ¸ÏÁ¸ÇDUÂqÖge{=ªpþ@|‚P\•^qœfÑ“e˜¸†\ŠVÜÜ@Ía¥ †Ë¯YzLÍ;ÉÇIr*ô|—r èYX›ßÒFkm,sG™^6a˜®f´yucóï¨úÛ[tHÃ]¹X30Nº)õ󾛂|¨’¬„hè-¥õ6[f¶al¶ë´Rø°¤F»*’º¶¦×þ þIÙ`YP8Ù²¥—VP3zt$_LÚu²ÆÁT¼ÖcfñvÈm™mkŒ·˜ß§¬âa$ÜH>`9ô%CeÖÇB9}4ï¤#NP]X¥õ6áœûÆÝ5ômœ¶hØÇs›_\šæÜ‚·oIµÁF<1Ä|ã¦DåÖã-Úàrê¹^ÇQ¶»”¸„Rc¸bM‹aÙ*#šš:ìw«¤œׇQôõHd¤–h!yx Áuà'ê{Kþ€ß/»¸ŽÛô›ï†ðm¿ÃOüµˆ‘AÝN½,lAÒÄ^ãnF"*œì„stýŠófv×(×dƒ"³&­2=3åñv6ÓÓ–ÃMv&(§M¦³xß”úFc®„€l}{7‹tFY$hTóZ&`£“(Rß©ËsbBÆ‹`¥os˜eâ/4j/Ô\ŒÁxr€÷¶ÀSóJ Ý˜\¥G)M~p±‘moµÝNps’>{-Á.k |¼ÄzìNS&‚<žS=å¿rëqses+¬.LŒéÍã!]ZÌ×ñjs­ˆ¸$éšë'h‘†ynÄHlÎ@ šÚÅ®]m§ÌÍ´jZBÀë¾N¶ÈæùØó¶×)k »h•(æ(\­³u^bªMó[5ìm²Ú@8‘ƒÃ[«u!uk§;eBl4±ÌD™³_Q)„©¶s¢e÷º…-ËÖ÷,]©¸ñ¼±«°†VU‘Öžù9Vy@,²»6v»ÅÄhãaJVRYQ'~%¹»¸â¼®¼%^iªy¿Hšòîÿ{®Æ·–ª§ŧ©šZÛÃ$§£yk)'ð¥glNZdï £ñïÂ\>:ÝÙÅ0áˆï »õؽ6$+b§ðø¥®Š–:Zˆ–…)°ùÑ«hiž·2T]ªÌ ãÓáPn«nÎ÷Ã_=> ؆jú\2‘'…–žX©eð”+G,5Q55*AÆ&g©4ô;µ¼XÖ7[¹x³àÉM‹îÁŠ£Ãiª;ЕäJ7¯ÃäêÜ$sÕÐÏÆ&††’¦a6j$ì糺l ã0<_y$\M< Q&Y\®Z¾*:|"žc©YWWâ•a’¢–5G¿Û­ÚEM~æáó «Ý(iëèé^¿ÁÓSžõ “R,÷–®Ÿ§©­ ™¹"JVá°’,cspºù*1ì *¤Ä)û¥JÀ‹CUOCYì1÷Y–²ªycñ8…²«¥)دÕÏâ.3·j?B»¾ ï‰)ÒG;ÅŽ›EûlN¨Œ¬@Q}… y*¶e™ílžJ²ÊTg:è™oÊÖ¹µš3;ˆ2˜üc®{Ûu‚د©‰½ÉvJxh3ÚY‡ß–Ù²€l5µô¶N‚Ôà»$2æV|ö2d¾[Ü’¦ý-— õåVŠ6S¹UÝÈ`-˜ä09_Mµ'RÓEÃ4’‡ÍЉ‹€ž½uslêáà1ÇšÑÝ‘ßSÅc–÷¸õƒ§^‡hªˆHÀ7nÙyHbër³kX‹›€vz«-™–BrøÕއ6Q ÔeéNÆgÊÐÍ|œcl¥—F6OHP—±'ÑÙþc™¾$n¦fÍžçÀT9îs\üë›õ¿ë;ú¹üEÆ~ ÎkCσbÉšu{rÖS+fÖÏ̷̫RćM‘â†IbTä’OSê#7ªßölÄxÉZC`²FC‚Á™›Ð£-´9ìôm3ñ8d(ˆ%Á~·ˆÍvÌÚeõÛ¯6ËŽU“‘róYeô²ŸÞ'øØÿZó4My Y%æ9”Ìm–ÌÂç1¸'×m ¡Såf_H 5I×Etò¾hD…m0áÝô!ã%œ[¯KØ5­»±wŒBËȤkÄm[ª¢¶·ÿè.xfb¢(Îk²­ßÉ`¬¡ 7¹ô›\váÆ”‹È«ä‹êÏÂ:Û®–Ç]£îce-«ò 4|ÃÐysÙSl½,bâ4ê%æ‰U—­Ó¦¾Nw¿£Ó·h[Èã¬ß%¨pjZš¹¢ÄqÉ"I¢†>#‰0ê9"JúÖ£‹¼~–¶uGÃrîf;¸Û±¼¬Øf)ˆxD"Ò-¸}h”Ž=.'ÆÃg«jJªesTTÑ=<ࡈ%dyB(‘ãCo%¹Ù#i&hÑšåQ¥” å29úý¥ÿ@o—ÝÜGmÆúM÷Ãx6ßÖ^«»uíêÑRì5Vê ŽŸû“ËÕó<´éû%\«™¬2‘bוöGäl¬Äe‘tY<¥ž&¹ëä–ÊKª ª E0i8$3q8zðÀ6Ô £3£L¿£V)šž?‰’ÄT½äÖíYLan3øc VÍÊI³Øðó%gcº"èÝF ¨‡ý²y³`2³Ž€ÛGÿr¥“‰ ‘‹ã»µÕ®á0ë€ÿáÙ©ßsåȹ9N5»qæC‘­ÆliT°fÊ<¥eê¦ÏÜÚ¡Á7…_ݸ¨åòㆱÖpÅrÉéVÛu°:ΫÁ·sÂjŒ ÏxðÊj9ø,à;EÄ…¸là1Kýgb¿W?ˆ¸ÏÁºu»©»Ç§Ã¨1x+ŠVá´ÏLòÉK<^*º²šI¸±Ã.^î²Ýãi,°¤Š±nmZ ž!¦)»ì…®Fv¡X-<¥",5êv™þ%T0hþÝÆlŠ•büÇ0<™•±[ÝvY$ܪ°]\˜¦ï¿‹ÈsÏ“›*¸I5²©¾¢¹r˜„¼@|5»‘±òÿæIŒ€2Œ½lOÍbyH¶çÏØxcvãb †C!›¶rnXX5Ë\u;i¹–d$±Þ Øåd»ñ<7Ãùé+g$I‘NGÊ_âlà“#3øov†El«hÎ3Æ Þ¬¹JY³dç1¹Õ…KxsvcæSm|.²ZäiˆXØ‹*ì/¹S³F¨^øÞìðúpã6šÀŒœ&~lËbÊûrä8Ô.3»rÉ” ÝRåL%q™d\Wwt$OþÔɸœùˆ(—ÊD™$¾æÉÞ‹ëþÜÝ‘›+,žJª\øÖ(Ö] F qüIžlÜ#wÅ·|Æ·ñ1¢CsåáÿÍÊAmüIqſۛ²aC£c -âB ’Ã2Æ:Ëig]Ç“"èonØsaʈ ŽrÉÖ4a›0ê¤.Q¹™’-qíØVNÛ?þ7•½>0ŽB¯V¾ç9•®¬¾Ýt ªÒecŽXܨ-fm,E•†hãø™Qnwÿxw^Ù´´8ш=þnpÄs*œ·PÃs&`¥¢´˜îìFP[\dgU“6GUh²Ž |šì8{nVFϼ;¬ºƒm?Û<£~Œ,Aéu•·-ˬ€ã»±û@왕N7›†K0B98~;6VͶ›šx&E‘Pcû®G)AgËr†s›FòA=ååÜ É“Løþé’¬E²­±Áeÿ.‹Ê[fdgU»>9»“2Ý8˜ÒæÝVê|¬Ä0cã75S* Pw‹uÏ¡$ÉŽ¨¶>W§©a-·9šW\×]àÝHÇ[/þ=˜²ë›©&þ‚à›ûO[‡îVMŠdª Ç0–¦j‰¦Ä#§ÂPøBª>÷‹OÞ*MVÃ1wžhåhÝ–¦îãRRáýžc˜Œ‹C v%\•Xä;Õ%‚ž–“SدÕÏâ.3·j?B»¾SدÕÏâ.3òžÒÿ 7Ëîî#¶ã}&ûá¼)ìWêçñÛµ¡?Ýß)ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîï”ö+õsø‹Œü§´¿è òû»ˆí¸ßI¾øoÊ{ú¹üEÆvíGèO÷wÊ{ú¹üEÆ~SÚ_ôù}ÝÄvÜo¤ß|7ƒå=Šý\þ"ã;v£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®q»QúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùOb¿W?ˆ¸ÏÊ{Kþ€ß/»¸ŽÛô›ï†ð|§±_«ŸÄ\gmèÿF›•ñÞð×û¹¼[Áàîåáà”Ó½÷ºÿø¾'»xŒ¼³y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;n¦ûï¾êSîÆônÅ>W„á5x=‚ÒÕÒà¸õv/ASSA‹×>#=<ø‹ÕÓM55\Ë -ñI&Þk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÞk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÞk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÛË»_èã¸übÝügï¿ûÏsð¶QAÞ»¿Åz~ñÝûǃLJ‹—'<ÙÆnWf·f‡Â~ Æ>%ož-ß;Î1ˆVV´0œJŸ¨îø…EU/ˆ‰x\ ¹¦ŽF>e~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÝ’â¢îÇÅ ' “ÇwƒÇ;Óa{¿»8zb8µE= ÆÕµ¬“TÑÒRÑRñ¡Y*++)мcÎCåÄÎ)†â%wƒqÌ ¢8v5„VÄÑG[KÄš<•°–ž¢žzŠiÓ7f(á~Å~®qŸ®áå«ðÛ܄ÇÁQâÑà̼~/½÷¹Tˆ¸87~-ù> ÜSªŠ‹馭­«²CMKOK4Ò7¡cKO vÃ7¿޶,/l@R¦#PUÛÄë0©^H ¨ªIèe’\ÀÑ™V)KÄŸêv—ý¾_wq·é7ß àùîZ¿ ¾ëɽÁ¸IÜ|- ËÇâñ;ß{•H‹“ƒwâß“àÁp?‹{Û½8¶;IŠWÓPn–CˆÔAG„½ u5i[Šaœ8ÙñV&‹r’‰8|œIëåÝèÝS cÒw 젤ñ ‚CÝîhñ F6£~?$i•ÌÐN¦0YÿÕìWêçñÛµ¡?Ýß"¦ª­Á0êš…ìž=çML Þ+|ðÌ; ÆQPÓÃKOQåÇHŠl6ÅpÑv!ñ*ê-Ú¾!‡b‘ŠJ©`ɉaé¸õiCˆ'-eÕT­5@’Q0N#aÓRb;›ix†èã5>+ƒC{ð8ð·°ú† Æ—v“§‹¤¦8žø}dUqȺÓµrøÂk·³Á7屭եŻC5/ƒîåTTX|xP›áÅ÷v½EV'WV"e5u/’1»xUfââÝšo&-‚ã©E½0oæï¤8tò×¶-Åøhd­ šª–ŠviTÕUmðv+õsø‹Œü†šª·êj²x÷œM52<ƒxp­óÃ0ì7 Eü!ECO -=G—")°ÛÃF5Ø„CÄ«¨DX·jø†ŠF)*¥ƒ&%‡¦ãÕ¥ œ<µ”kUR´ÕHEDÁ8»tXöˆÖî-CxqzÎϰMîíu·Ë¤Å*¡Â0*Lwݘã©Áðg¢LGx"«¥¦3ã)Àš–’¦yëp,3Ÿr±eÅ`øÍÒbø‡íx©©qùib§ªJè³`µóaVM„ÔW¬5)VH[vðªÍÅÅ»4ÞL[ÇRŠ,z`Þ-ÍßHpè)å¯l[Š<&+ðÐÉ[A5U-ìÒ0©ªª<(Ûáí/ú|¾îâ;n7Òo¾Áò jªÜ©¨^ÉãÞq4ÔÈò áÂ·Ï Ã°Ü`1ð… <4´õ\pDˆ¦ÃlW ×b ;®¡bÝ«âv)¤ª– ˜–›V”8‚pòÖQ­UJÓT !â6 ½4]¦a8&7âWÐK„öQ†o0“ ªÞ©Ãâøfðï&i棖£ ¥ ­É» =5}-M׿—¶ÝÅÄwã¡®Ý KÁ°ÎÒ*øX5T8ØÃë‹Ë…$t´xŒfFÝÜF¯§ƒ,˜„l”K2e—vðªÍÅÅ»4ÞL[ÇRŠ,z`Þ-ÍßHpè)å¯l[Š<&+ðÐÉ[A5U-ìÒ0©ªª<(ÛýNÅ~®q»QúýÝò,z±,5äÞ cL7¦Ä±\>hᆭk㥩L:º–FŒU¨˜Ñb1UÒ3 WpÛQ æÂ“ y$ê⪯ÃqBÏÝ1<*ª‹§I š8ªV9²'["Ú»t¨wsw±N;bxt«-XĤ©ËƨÄ*jäž²¶©òGú]MDµ+ˆ¤«Â+b»¿ lHÒš®«Ä±|b¦žˆ°cIE65_ˆ=33AD`‰¬)ßb¿W?ˆ¸ÏÈp}êİדx0%0ÜN›Åpù£†µ¯Ž–¥0êêXq1V¢cEˆÅWHÌX<%]Ã|qipZŠmt-ƒUKUˆ@ñâUµ`yk穪~%mTÕÍ9h—»˜„QlWwð!M‰SB•Õx–/ŒTÓÑ i(¦Æ«ñ ¦bh(Œ5€e [ýNÒÿ 7Ëîî#¶ã}&ûá¼ Á÷«Ã^MàÀ–4Ãq:lKÃæŽjÖ¾:Z”ë©aÄhÅZ‰#]#1`ð•w µFò`Ë[W‡¬‘Ñbõ˜Ž‰ÓÅ.²A'ƒÕÐbžC«S÷ž1,c¹'jΣÝÜ6-Ú­YÖ· 1¡­56ãÍ[,Í%M]T…PšÊ‰¤ªÍL& e[ÝüSbF”Ð¥u^%‹ã4ôEƒJ)±ªüAè)˜š #M`HÿW±_«ŸÄ\gnÔ~„ÿw|†îâŽ#¸U]^ˆb>­|6šº†f¦ª¥,ˆÕ²ªH¸ÐÐÉHÆ6xê+¼8͇ÕKµ2»:ÔË,m,iL°,²Oš$i|R8)‚ûcTûºk¯ƒL€šÚSN+h¥ºÁ‰Ró>ZyåIV8j»½rªž’ùGÉ;ú¹üEÆ~*w£¡ÁÒ¨È)¥Ùªjø<>?t£…e«ªq¡ï ,hx¥8©›Â8-AŒPñ &§ªŠª8çTŽF§›„Ì`¨Hå‰Þž`“"È…ÐfaøMvõ`ñbœýÞ’*…G»(ïRS ¡ÃãgCÍ_%4/5¡Y ¤!ù'iÐå÷wÛq¾“}ðÞ ± _›»áØU ^%_QÖn UUMÁ§Ig—…Nü8b’W¶XÑÜ…+»ø5mzbs½Báð×aµɉ¥-<µsMI(¢"ÓC,¹+ATkA}6àï.?MEZÐ ˆ°Ø’zÜJXÝÌp‘GGÒÆµƒ2Ô`fY ”G ÏXþõ&åzic¬¦zZšj¸’7ššU9¢wˆMiif©¦$•Žw*Öù'b¿W?ˆ¸Îݨý þîø7ÏöY"Þ㙣Î%¤bqšÀ½ÒLŦMWcš"˜±;„ÉSND‚*a5Ow¥žHŒb¦b©Ž5ž0yYó§(E*rm*îöñâØ u3EQQO†â4«$´¹ÄoZ±MpïË5éˆo­ó°ú]åÝ©±zÚj\Cƒ¦Ã¥®ªV¨ZI 4&Ÿ,ñ­'¨ZÊ^²UIO†pâ‚*‚w_v1O 8 xE"àô’—‘¼‰I[_€Oöi<¬dQq¶¼xÞˆbtòÍ%<e¦–5¨š*zêXê玓§Hëi’Y%"ЬõžOö+õsø‹Œü‡:%¥{̹å'ƒ-¤Á8Q@7š6wiÆAu–˜fo™QE»{ÇŽáÐM3UURÑÕÉ#Õ<1ÄòIM+p¸²@‘#:ÃÍp©>*0´8Í,BZŒ6¯¬Ž’¹zyÍ#Å?é–Xø±MT%Ñ2¿ ÁØY¦0®93»F!ÆzÊ® ï4gŽ ð—¯©ef."ièầ>F*Ã0­íÃj+Mf#Ãuª¤AI‡†zÉ¢²žž™RJ¦…æš(¦®XÚŽfHso®'Ý»Râ• l¨Z ÒPN)"bàÅ5W<»¤R2ü‡´¿è òû»ˆí¸ßI¾øoÛø^>.mÕÆ¢U —ÆÍE,0½ÿý©$+Ñ‚e:³ñÞ ŠoØÅ~®q»QúýÝðoL™P$ÛÛ¼ó O Öi‘”6D9-Vg³ í £A®rG#i¢0oÔÛÕ¯¯g‘©Qdÿ–5EcûE½zu³´qOS˜"fâ*¢þJ3]•råÍrA7[ôuIS"i"äÍf½äô݆—zë¶¹xv5ŒaË?Y_%M%~!KY¸e % IWtbƒ”Œ¹}?Ž×R‘ylZT(3Iq—Iˆanhó]3äÌ’-Ðáqb˜ÝDà˜jAÉIF¦ƒ‡[%lQÒCHôITµUU5}úYéä–©3TUŠ›¡A¸6+&ï@¸u.óPb¸u5EMDÓTUÇ[=V;³EM 8\1ÖÑÔ ’Jøª{Ìpe¦oö+õsø‹ŒíÚПîïƒ{QrI#oFð‰UF~ð¥sñw¸%r©¸V,¤AQfÒ‘še†[ aèуúº7¨ñ2Ùóðâšè9n3eqeþYvhò‰x—˜4C“Ææ}=-r}Û+fuá’–ŽXÌ@5ÈÖÄ)¹²±Ëal»f,¡ A"ÙøùåùAµ–ÙVÖ;A,=Ï¥–®*ŠìF¬À+Z ùcÅ0Þ*$öI$Zy³CWJíÆ¤©‚pŽ'Ÿy+7sßÅ$Ã)°Ú ºl  Ø|”u1Qb„­RÔÕÏH®²ð%š#´™ÐA]‡UÒ×ÑU –š²Šxª©j"=$‚¢x¥CèxÝ”úÿ_دÕÏâ.3ðnJ»¼`a±¸2"¶jÊ] °ˆÉÐ;0½ÙP/§ÎÁ´ñdÃ1ækíäÜuAå‚nf‰›•/.p‘K ½®‡œ!u¾]RWEà $gr×.MÂÞü÷ùÀêÍk£$Hܨ]”‹®ºßɾm}^Ž»LÃ$yËFÁˆÌm–BÄth/±¢ß<'¯Þ:)aÃäøe1¸’á5•ULÿ¢Öñ‘æ­!h¤©‚œÈ¬ŒÛÁ„ÒÖÑ$òáu”•Â.,ÐSÒUH‰$Iðk`x¦ ³ÅŠÑ¯ëûKþ€ß/»¸ŽÛô›ï†ðm¿¢4Î~+b÷>&TîÅ—) <óg"Ñpø§ÈÛÅKÆ”Æ Ùø’ VÌ ZçSómcoF»fγTFë+6™è9yJ®Q¨Ru×a q#sq¤á¶…Ã/©òˆå+l \ìÍMøµ³ÙVM3],D™mgÔ\‹é °•–'Šîyrå¶^K¿÷[÷‡2‘ßwƒ8T£ ¯‹ Å1nƒÂQ¤Hx”uÑVE;Ï•éeˆQ4i¢’é¬å’>vÐÚ<è^Þ‹¹öPtÙ‰6uÍa³ŽeÕ¸Jù0Ë•›P¶_E‹_›÷NÂÔêA ¡¹Õ–Ö•ÊÝ:†ô°ÌuÛ ‚¿z**èÒ»î“Õø.‚Iøu•'„,Õ]Ò’t¦ŽÕ[‡» a›½†ïüUt‘WUµ8.!OQ-eUH©¨”Óœ6ë‡qj¼M\‰ÜDy‹WLÑO.ÐÕRO U-Di5=M<©4Ã"†ŽXfŒ´rÆêC#£e ‚Gë»ú¹üEÆ~ ÌÁNŒ[ŠÇ†[½QÜF¹¬Uâ· Ä k ±:ºJñÄ3ô6ˆ€/tësûý:[ŒêËÈ9³„Sšm[˿͹°k±,{Ì]C’3Ùº·®1s§_EöOÑœˆÍ‰Nk"öÖ×¹ôz<«Û4™ò=ä‰5‘'6R «b¡ÿÊÀòd°ùO¶`Š÷ôËÊÓro¢â[³Š×àlZ &XÉî8“S Ä0âT­ú5m:­U@Ž:´d'³ˆdVFEÃ÷Ÿ ‚Œázˆæ â¼)…–$͆Ï:S4“áÎñAV̳QÔÖ~»´¿è òû»ˆí¸ßI¾øoÛöåU­»X³7„s—_Ö’Ý-˜$lަ)_×åU²´€Ž†Ú‘éÖÚí0|ûsl̦I …œ]Q®o˜ê=WþMŽÍÝò¬pËÅ\êC1RìŽ\Új4=,-²æÈÉÞàåPîQ_ðlÚ¶ u7 ´EâcbÀË®™I[^Ãøôÿ"Áó³E—³_˜]¯×_åÖà.œº/ ã,–$ž'[æÓŸS×`_¦¹–2Na"æ'ˆ«Ë˜å´eÅ”i|Ûx¨Õl«f™ÃߦŠúlþœÇ5ˆ°Ûzq îÞªš<*ŸÂpÚ<.zlB¦’ަª,N¬É†ÇLµÒI5pI…U5 :wtÃ{å_:ˆ$ŽƒÃfï8~'GMˆPÔd–.5%d)=<¼)Ò9¢/ŠÆ)£ŽXÉÉ"#‚£õŠý\þ"ã?å:²ÌÀ>mmqn]³›–x±ò[30SnÈtS›Cœz:ÄHCÃ^ iè1‡qa›˜ A[¸†$*—É”•½Êú:‹+øìÐȈ 쎊ÒÝò®P?QË9¯{‚/|·¹vŽYRU'?1ò̤±N+†,¥öÁñœ:¶l*¢‡¦¨ð3)e§ã¯yÏ`“¤”ùøôSަ2ðM+2žå-&ðQá,ù#Þè z=3xùhéê¦Å#¤{/ Ò’j’d^=8ËúîÅ~®q»QúýÝðob GmäÞ Äuá¨ÅªyÕX…AËÐæ¿ªû=;DÒÈ„+2(*IùÅ˜Ž¿Ç[ß®Èì¡k¡–G°æŽâÄuµÈ ö7ȶ;gi ‘6‰˜¨Pî.4ëpoOý;F2¯»æ^ žÅ®¶¸Wºúì}feUâŽ`·¸G^¶¹¶™€Ì=vÚùdÍÄH ˆœ¢ÞRæ‡P[¡ slÊ®¯6U¹Ã[Kÿ´Vù¹O¦çc̤\¥‰âß6AÊJ¯Œ³z@P¯\œKP°É/.~DFU§°kqÙ3#1Fn€nEG»±®Œ&”qá8­ÎÔe$M áî˜mFõa¿DÕ5q U¨Id¨ã@iF3CO= M,©C‹áõ ¤Ä…-=DËO*; š&ãþ‰TDRMž-=<Ë$)ú¾Å~®qŸƒr ‘S„bÁX_7|¦Ì¾bª2ØåÊ¥Ž¼ÛIgY q)£U:(Ë–äý@À«ŸA]Wl¹Ý³‹Làe•K*­òÜ1[UÌ[N¢e'&Vxœê9hsd ³ ‹rn ­®Ò7ü4Lñò«^_$è.Æ÷ %õ$ŸU€ŽÏ,>«[ÚųjK.k/)B9º³ÊízœÍ™rL£‚™2›Øµý{]ËÉÈ+f‰Ä„e¿ нJÿ‡]=Pê¼Ì3<‡(ë [ê¯rìo²<òp&a¥`’Uº¤RTC³Aò/30ÌY ÜÝÃN+º{½¸ûº[{Å]2Ëßš‚XkðÈê*ü-D‘ÕSø9ª¤«‚¦Š¡ãIðÎRþ³´¿è òû»ˆí¸ßI¾øoÛøE®7o<Ý?g­Åôù¿;¡ ˆÄ2+5O–åE•²{&Qª¡PÙ¡ãY[;f#“1¼…C_”ë¢äm=#йcu}b–i9PÜ.lÙ­žÎ.½BŽ_)rBròwY¤ „¾·Õňk_ÊÙº˜Âff24¬«c~0L–½‡‘›Êéb¼3$œÍÆ ûK[79ÍkÜ46b,H°ˆHüªQdÉïÜØ#fU±¹dþ[%1 .WSÐ/K‘v |«Xò“ê½ô‚*Úš*v˜ˆì8ÓÅlÜo—‚Ñb›·‹RbtÒE²,¡ª¤ãgÉ}%ûÅù¢•xU ŠL¹‚ßõÝŠý\þ"ã;v£ô'û»àÞþh¥ÇŽxÅÎ!Å*Y®ç.^¶à‘™ZÍ¥´GS`D2>`§3ÃB}<ª ôµ‡SqQ!~’9.¨«Éy wç·–o|ʹ@Ú(cŠ;ëi¥„z—Ôß›2‹kë¸"ÛDd–8ØÉ&|¨4ä94k«]G•—MWÓ¦f’8Ç eå3ƒsi¦ºªéÓ[i³›1æqµÃXhÙ¯qÔÿñc´ÜVe³¼œ³ZÌ9ô‘mÇýîv@T¶CEN"õ:å ŸúO(7Ú%¨¨-Ík+ËëpO]/ü4>›.f\Ê{Àç1hyGï#éq{[Ðom°ú¼y*¨¢¢1¸ÂiàŠ—«ý( b˜D ‰ÕTRƉ.%YO.%3Ƶ}õk↩7wÞÔ ãØ¾„OÄ*)¡¦—©J8eðed5ÒJ‚y¢Î<(…cÎã9Û»Ü÷J»z[x+§ÃÐRUµÓÕ§uî”Æ_ƭĻĽʔðx¢Ž¤‰9 ¿QدÕÏâ.3ðn/ ‡cWâüݺ[ÿö62`ˆzuvË“­ïs{ÚÚX¶Ê¥U2I˜²›°,:¡P ÓšßæÒ+ D·^L¼<ĨáçË™VÇTþ:¼KH'c™È,Ù[÷ ‘ÿvÿ!ÐKÁ‘¼s¶UWql¹²—ÏêSË×—kS1UšÑY@*ÇšüÌVöÖ×°$lb´¯ÇNBåQ ­çAžÝHy¯f°;2HÑÚœ)` ‚U¯­ôôÓ®ÖñAøŠ8ÙÞÙr~ÎîÀifS}ôSoF "µUšf,)1 *‹Ç-%PŽÆziZ8æÈ¡JMDÑÔÁ‹ƒÒÖÔÕ`8Ö)4TO‡ÕÒÔMOO_+¤(‡§‰ Ziæp ©ª–OT”«{~¯´¿è òû»ˆí¸ßI¾øoÛù{‘ñr¿@¯È-¢êVþPòrß?%öYÝ-qꎊ¶P‰t ½ µ"Þ­¢–@WÉY2µÒlʼ%±v eëû1{rí6P­O>._ÞksXþï¢úó5¶‰ƒ²ºH<¶QkÚÝKX_BA9‰2CÑΜ…nHëÍ{êr~î¡Ùº¾sY Y=ñØÛÉ7U=nx¹¡Œ â ¶~ÿ²×ÔÜÞÞ‹ìÁ´*s¡k¬¤IËfsÏt¸9³ZÚ[ÕmG ZYãPüF*5”¶¤nyÈ&ùl[xjqåÃè¨wkÄÆ5cÑE¾xRpì YÄQSÊgs=²£ÕwµJj*j—«–-›Þì? Ýæ®»`•ðUÊK3ÔRRÓaÇTÒñ+gyäh꣚|‚æ‡Æld•Ò4[fy" › ³ÉoÖv+õsø‹ŒíÚПîïƒz†œ»ÉE‘TÅEÅj­ã³pœ¯EÈH#æ•gDsñLjø+à A9®÷ôŒº(¸‹“–\]žþ[)[ä³_ õ\HäRH‡|œ–â› 6`‡R¾PåM–]I$"òÌÃ/ ZÂíoœW­Úä’5ËÀQ"+Yù#™$Ík†×1Ês\íi̲<Š2çë`Kr©ô ù"à‘klZügFqÌÈ-âAÎQò…Êmrßâ]=*‘«0t³úI*âÜ<Ú6¾U²OÍÛˆª5\8á„7ÑKWN¤ô·§¦Ìárd*¼÷7ÌÊVá³\èòt7°;dÚ2yåG Íb2¨G#6brûÞà°ìg v‰Ñâ”"s;ÅÑTÓJñ¡âZˆÃ“}r²æSªË~çaõ8ß»­^‰K%Pšý+ ’9ª`§ZsS7Nw–xà§ACÕS`ô˜î»xNµz7‰š¯Ãhã–*×Ãï_[]- 'RS--}El¸Bðiæ‚JµSÖÑTÁYGW uµt³GQMSO2‡ŠzyâgŠheB9cfGRIb·€ VüÁ[0RGP£}9ZÝÛÕÚN/½‘R&ô¬4fz,:†Ý©äàŠúš„2D©C¡0S‡ŠÓØH³îìXþøÝ5ñSC;Ðá匩h£¥”ML’"&!XÕ4ñáýâu”3äÛ±_«ŸÄ\gàÜg»g^1•yʾZª3”ó^·ÌÞ¡¯-¶2Ï/<3 Þ!J…Q™ò°*êÆÉ§Î¿6Íw§“‡ã *¨ææùÚ䳚Ö&çùì&yWD¹#Œˆ„‘ÙŽUi†fvê}<®I: ú-}–<™Þ1ÌräÈÇV ™{Øiê7¶Ø} XÍ^=FøÌO>Œ·…f®ZÁM‡ŠÅ1|BŠá‰(££¨¦†×’jˆæŠI£“£À`Æ)¦Âb§žO ÒSS­M=D’ijҵ-mo*´C:T÷i­4ybkKÂýOiÐå÷wÛq¾“}ðÞ ·óÑþí⎣Åõ×M¢‚Y2ÆÉ˜HÁP:ëeÊYµ9o©½‡“ÖÒ(ñ¼Ìj3Ì h ‹\ !o{ê,)囫‰x̪]X›z¦×Úii³Ùd6S=®N—!´'CûÄú6^ñ{Ö¹¤°#†KrõÀËÓ­¶“‰ã!Í™Ñ:Ý€Tÿ¨<Ÿ_7 Yt%$CljóŽík¯¯ÒžNÓñRF`ÁUµ`¦ÂÊ$)¸ÌJê.Bô œÊ -eA%½7*P}-ÐßÔ@Ù˜G&­ –ä'©Î½?pg#˜y$Ûhªšy)Z”ˆ01¹‚Pãˆ|[„f ¯†·§@F宽±êj~ûSI=}f >; ±èûÃÒbXbÓȦ†,6³µ[CT”„ “t¨b¯§Å!£Ý¬š F“þ¶pÚhá©¥ÐM4A˜ghŠ3ó“ú¾Å~®q»QúýÝðo#8 Xöð.¼¦'RYJƾPáÿÊô2ƒ!Å9Í—.v¨lü·¾S¦`H=-µ3˜ó¥­’0ù¹,Æáì3Ã0·Nª6s#4C'*ÅÏߔ꺞L—½´ôì„•Ž£ÆYŠÉqfô?CÈy@h-¥¶[Ì«fFQÃ-iŽCuëüHm†…2 ñ=­˜(±²æ&úúrú_NÅ@14mf ­PÄ9³]e{§“Ó¨ô4•€<6ÍÉÈ—ÀFÙïq¨^£Ñ°,ŠC|í—Œ}\ò-úÝMµ-”·,žPÊ8‘åË™RúH™¬¹>m¹‹üöý£»:«¶k‚Œ,?hRê‚çE:ô[f¾ËÄÍ —5®.V9-_F‘Óba ee{ëבÔiu s-®t ÀlÆ”ðÉ*Ìù“ˆ ÆUë£éÛ0½ÎÕ³âX%DÐw:„¢«hZe‘Jº,„‡fh$+x&ý" 8‹zéq¼J₤Tø^¦­ª'žhB«¥LÒÉ4•qˈgŠ¥Ý'§&ÇÈ §Çe¤£¤£Ë56„д4#HªaïnõRWW™Þ¶„‰+;°[áW»43VKdña´´Lü*vj:EáSC/tŠŸ½pcXÑ%¨/>JzXZc,Ńa´T¸ Jà”aQˆÒbÕµ8¼”Ñšh篛±H$áðZc ˆÒÖE-CKÝæî‘b”râ¸fæo‰áؽF[ŒàgÃa£Ä ÄðX™ªkÞ|F épʨé \Pâ4¼;‰ï44Çt«^ŽžzªêÚaªk¸Q•ïÀÆé¢ï9SÀ€ÇÇ2L‘ʼn MM¾²ã¸.-‰PÏ_U‰´¦³§‘¸v(©åÍI&¦Áà…КI‚žzɤ›² ½ÝÅ)±zJ*ÎÍè**¨ØÉNµg}j±#Ë`’' M½+[IC=VÑDØ\`zYçyÅU<³A"Fêd‹‹=%Fà™0Ýߢ†.ñCŒáØ]DøÅZÎÍP*x-]5-#ÄÑAQWST³<èÒ,PRbÕXT8”ÔpOS»´ø}uM}-K’¦‹½IMK†9§’FË4•tëS m, [Åm\£s± p蚨PÕÓâнUJÅP™ëh%Ãà\8OMšyVW42äDnj“ãE&3C‡ÑÓ¨ð¼8¥u$ø×”p±Bõ*u~¯M;8†ªãBÄ ñqì°¹ü61J#„eâ÷|Þ÷<¼r!¿ÜSÃòôÚš¾‡¡­¡­·s­¤«‚¦’¯1*½Ú¢xgÌÊÀp®TÐí¿§¯§¢8žèï&‡$Ïãk±,G­¥¤£¥…sK<¯$€¿ AËUPb¥‚i£Üo¤ß|7ƒmüÎB§Å¬K17òxZô¯Aè¿[  je +­øo`H^bÓKuÓÔM¤V^Lÿ¤2r –²Ù3GË–öÌÌ<«z «ø…òPæ?™œèy—_$uôìÜ$[.h¹Ý@€ÝgõYís9•ÉÁ*ÆLŸú‡Xï”­­•rú:Ûg´’¼!Ã7@Ì.9¯ËauäAÎ÷i.E“(M#0+Ÿ3(êÄjz­ºXˆÙäã\È-‰[®S—™C_0\Çüchìë áÙ.¥tÆs±·-ߘås_cäÇXʸòA`Ø=ÝA»äËü6I¬,^ÌÒ‘€?4Úà Ðå¯?6‹´jrËv˜ó%Én®17×çØÿ†ûMº\qéë#|«ÂaXP÷¼=aæ¦u÷C‡q!1QÓšØLr‡¤î˜T8†éAˆÖÓÁÃÆkðp¯‘FU«ÃàðlñÓ´LóÓ¹hø„à †,² M»xb)=jâfuÄe¢©ˆp…(!)JÞìñºž#@¡IÈù\Šý\þ"ã;v£ô'û»àß0ª$yñýá4ÍÈÉo Õek·)Q4RíÁ9¶°LŒ<^O%¸ºe°&ã¯—äØƒr-µ*Ê×e™Âe0¢­Š-“.f*öÌlÚt¶ÎÎÅ“)Ñc‹kå¸ùÊ[2ÚþM’Ÿ$9òfwÓ#e|Ê2ƒ},/Ó¯¤hXÈ?jÜHоP rF2æÐ`,s uÚÚÜIlÎãNŒ:ërtëÔë×hä…™ââpÜh3 R\]¬ÆÖë̵鴥G%ʬ¹ú“”‹©$X+ïhßÂ<·ÉØeÈXþÌ›-‚‘ü5bMôÚp§Éeå œ4bN™M—’ăԮÈì3p\¤€( ™€ÈWç5ì=/k›ÚÛSªÇÂn¹­|Ú›iåegQÌêѽ[GšDÍ〠Âïþg2ê:ZãùªÄDÅœ„=r«6^dºåÊ-×gḠN¤ÆäA±R¼âì,è×`ÃK_ÕOr8€²åШ m.2s J¨[×iÞ3…ÄÎ2“ôè|XV%@뢜Ç÷Ue“,ár¤YW(clº6f¾¦ö_Q×g…d)’F³éÏÈ{ZײôÖÝnÚpçÈ‘¸ŽŠ°Ê¼¨O3fƦÙ9OMªTn#ghü¼¼2§"úÀ²œã׿ŽÉ3”fTD¥[ùKn­ï¯A¦ÑÉ“Ëo*ù¤#1+¦[qŸ4‚ÁF‚÷wN.cÍ‘|YF>J¶\¥˜õd_^eô9\»9,dGÓ^R.uéÐæ<¤ëkìeF º«¨sämXHÿ1uþvÚ&gA%ú2ðͬt>µþ6ÖÝvË! ˜Ä‡.pOò2=¾m×üåˆÎíõF±b׈%­a–÷Ëü/´ÎÍ,2²…’Êe°³aШ e^[Øe]6’šL„Ø«æ  HC°¶] ½+©õm4¬¾¹J¸pm•›[ z–ã/ñÚ›Zs•¥N“›Ê$¶º3XhÞ«lî ñ *ÊY9X0:2–ÔZäõÙ¥oÄwýźæ„Ýyƒ) ™:e,uô iS¬¦Ã«¦F®Ãb«t£¨©òÆõJÝÞS™ÄÒÅ$ŠR2Ž ‹CH³Õ2aRºá~6@(§ïòwHƒx–’®ªyËDˆ µ çÒv§¦ÞwÅ"ÁpÚêZ#WTõ%#—+qL¢I$–Fe§Y敦îÑÁOÄáÄŠ7é7ß àÛñâýPÌ…Á¹1ä+¤Ø8##!e¬e˜@l£5¼„$ÝHýÃéÚ¦|¹rݳ2–ä t¸$ZßÀ—n ±ÐAtS”0ÖÂÀ§¤ÿv‘L²Êb7ÊE—-˜‘IhJè…o¶GÏû<±Y¿æÝšK2¼Q·ø} KžCkèzqLYNsê³é¦^­®Ñå̹ó üL¡ÑÝ-­²6™ˆ ÖºèI ëqGO~}3€Ú²€¹îO.„ôò††\‹²ÉeÔrœÞR”¶]3]OñÐf|ê—’JGé]I-YÌÚo¥”ý¤¹f:G*å¸ùÞK~o.Î’_„²eÍxýbÝ91Ò÷Ã[mÂy‚«F\ÊR3+ºõ:_ù¥å^>V—K创è-¯B[)"ìø¥q–Ü×k…wÑÍšÆÅµ^ƒ®›xÌ®b!sËû¹FP ¿•c›£Q±i¼—\ÀózÛ_ðf·ÿ¾ÊÙ³&k²¬¦žF<Qûü,¶#›ÐÞ¢SI3fbT±½Š;;ß3œOòÙòòKNðüGcsk·[e [£jqÇ‘ÑrF"iY£á¼í+Fˆ×Ž5ye–NE’Gs±;G˜òÍ~k6hì¥ïœ6oó7»[[¦ÏS!’’TàÊ\òä_Ã7åh½CEå ô ظƫå¯ðF=¸86óp‹Á‚ÓojÔQÒgäH®q¨ifŽ2°+­Ü·ÊIMÙÁ¤ê-®z6½‡’ ÂêVÄ¢oˆŸâ¯”ßà 9ù¥ŒÓç~sÏ2È×È×¼q•·ú?ÜÖé.íauËÿ6‘ü—nOý5´qåUAoô¹w`GþXÁ…®9Gs²)o㲡ìÿsЦ\·ÝÌ+æ¡AsÝnt<×¾w´šE ÂÝ.n¿ì,;Ð¥t /_›nk?” Œß7;ö†_ü¹„åÎT'‘Ýr”ÊŠ#„5!.IÙAÜ Í9MõݬÜÞü÷£ñ–¶œLÀ ›CÿÓýÌ<d-»X;±åÉãY© Nm©iÌŒ_Æ_‰Í±?èÿsõ\¿ùw Ëå¸^í”5Ôs€ܹ²é³ƒÙþåøÀC[v0eò€]2ÑŒ¤ÊËfBY”‚ÌI#p76æC%Îíá ©×(ÍHrÅ}xÐD{ÝŸnQ! w;¯‚ÞÍ—©î\ÏÊ2Èo"óeaîWýnJ‚ òn¶Ýr:P«!×FBAb­ÙöåX°vÉ»,eˆýã–°I ÑÚç³íÈ&Ö¹ÝL§«þ¦ÇýÀܱ˜l»¯‚-Áõ墋r·”ºå"çlÿè÷r3HÝ\ ztî6èÆúkË%l¡{>Ü®TT÷c‘ìºÏ%;¹ùò3$:ÈÌvÊ;>Ü›iÿé\ÞÝ ½ Øß[››ë{í§gû“üÎêàdŸG3±þ$’v°ìóq€ëaºx ¯ë·pÛ±ª=ßÁðÌŽjŽÏ*å¤Âhi°úgª“´N'¨h)cŠ#+E1—Ë|‘FžJ(QϽ˜1Ä*pè*  ªÄè'¥J’­&S‡ÖS$Ü莫T“¢°ò,ÎÅŠŒéÅË'ÆâÏãE€?íK³Çqå(âq²µþ)È’éã—x7—‰p¥ssâíõýÏRù»ø·UÄ a'ÆáÍÒÙ­á>õýË i±cºr5ƪÛüÙsiy4Æâ6·7ùÍ¥´}Ó”†+•~0ï0ª€ `®0®èä3;ÊÊdqF¹UM÷j¥Û>egÞ á¼i—/Bâj†=Y¯"¼¤±¼¥BªºØ¨*ÊB©Þ âË"Ù£ÔúrËÅüÓ`£u¦@ „˼;ÈrC¯“™2¹³ùƒrdÌwrªWâE!y7ƒ¹á¨R¶2ËbdåÎ Dmñr¥9•®˜þ?~UÜø“€3f3gv¸ynwE¼¬Ì>1oUœÚÜÀãv·Cm: éps¶ìTJråN&ðo‹ÔÉ—^e¾Q›0Ê5–,îû¯1/ÿõñŒ§=ó%±`AÈMâA{È^GEø§#e.w‡yƒIå“E&íšêªn:Úà€7RhÔl©¼[ÏfrAÌx˜Ë›­²•Ç0n\«!Ýiœ¬F+6ðï5ˆ¾Œrã sJ‹¤²³…a,ct¤U—-í¼[Ó [X.li…´ÖàN½,‡âƒ³&nfÞ-é»fÍpmê×å tõ¹_Š.×êNñoMÏÿãªPʃm7NB2ªXïôh‡][«}zXi²¹îrúNñoMÛÊò­¡kæP­~¤Ý³JߟÆJüaÞuU²ªòäÆTód K–9º4Û~±J Øx± /sw£©lwx¥d¯Ã°ZÚªZ§ñcÌ•E!Šhž™²0pË+n7Òo¾ÁµE!KM]CW ÓÕÑÖAM-T®Y ¨§™^)¡‘IWŽDdu6`FÂ5ìÿsrƒu-»xKȧü2½#J?ÉúiÓlçp739(n7k_#P9hÇ!×<~D—ú'Œ^st|ÊynDÊàîç'\Û¹„³/‹H¼SBÐò¢ŸSÆf›öÎîο77+®VðP‡èœ²i~*ÚLÜÙ³k±ÿéþæÂ×mÙÁد’ÍFJuù¤ð6hþ nvW\¤ ÜÂF—fº‘Ktc›WR€Ef+åìûr‡3?þWÁ:°±ÿò^Oø<€uãbÑþæ]˜9ÿvpq¨áú‚‘†AÈÀÈ,¹ÌC³íÊd%˜‰7cšåœÉ«KDì@f9œ±­’0¨ª 8ìûs./añkáëoù]Ó‡¥†^NO™m”|@ܰ‚¡w_A§ðZ!qëSÊ}#`Fàî~Šßp¬¬[È×$®~t’‡‘ÆŽÄl‹þw)„l]sîÆ úœýKÑ’ê3œ¨ù‘92(áÇ•ßýîvi-˜ü\Â}åAÝmkªG•ZÊX«o7»–lí%ŽìàäffÌt4vÉ~‘þÍFŠ i·c8†`´o7gUI…PÓPS=Aí…§hicŠ33E(ò•ÎËf&Ûv£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®q»QúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùOb¿W?ˆ¸ÏÊ{Kþ€ß/»¸ŽÛô›ï†ð|§±_«ŸÄ\gnÔ~„ÿw|§±_«ŸÄ\gå=¥ÿ@o—ÝÜGmÆúM÷Ãx>SدÕÏâ.3·j?B»¾SدÕÏâ.3òžÒÿ 7Ëîî#¶ã}&ûá¼)ìWêçñÛµ¡?Ýß)ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîï”ö+õsø‹Œü§´¿è òû»ˆí¸ßI¾øoÊ{ú¹üEÆvíGèO÷wÊ{ú¹üEÆ~SÚ_ôù}ÝÄvÜo¤ß|7ƒå=Šý\þ"ã;v£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®qª^‡´ªŠz&¨™¨éê÷J:Ú¨)LŒiᩬ‡xè"«¨Š,‰5LT4QÏ iR’XBžt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvØevåöƒƒÔÖÒÔw³YˆÒ⻫U†URÉO6S†TaRo,²T,¢IxÙðù(¤‚àiÚV4þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Õ45ݰSÖÑVÓÍIYGWÚhµtµ´5Õ4ó`ôóÄïÐʱ³#©RFÒ>ñïö…VІX©ð\·¥z^E&’²º³v¥Ž¡¥3£S- ±¤qÅ(«v™áƒÎ±>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛv·—ý#÷ï‹»Áƒc½Ëâ‡vïž Äiëû¯xøÑQÝûÇwáq¸p³gáI—!ÿÄ%!1A@Q0a qp‘`ÿÚ?!ÿâÞ³(1Œ0 Ì4`à5 ÷˜ã“œ8¸‹Ð{¨)/µ  +ÿè•1ùˆ`À jʽʥk^ö‡Vb‹™æk·z­T-žL#÷â}gw x½Ù>¾ëø3®¼®ÜCFC¸p±¹ énÈ~V6 kQû·V ÜÒЀ/Ä—ÛÒ,fŽu¦Ö÷­WÙÑ.„B”íQ²G>+Õð$.;~Œîó³º6ƺv!ÕÃñÔ3pòü+¤¸;béWEbÃé'{‹£IÍÔ©eþúsö².ç܈>9'âPÞaÕ?÷^‚“”æ%eSû¯_‘«¥M¨_O¬©¿ñº6ú‰Óx ¿ÎQWÄþM|tÅýj?_dÆ=ÅÜ• Û^©Pq¦™GþÎ`cÂÇšïHw'ü¡°•ÃçäЉ/B#þê,Í<‚¡ê´,ÔHâïA©žÙ½!\JïÚ'Š ˜êš ¬;ÆUÆÕrºZ}(÷Ñ¥ ‚aq€B2”'ï/þ*|Q<2Ž di4+‹Î\àº2 -¢â D  5(©Ah™ŠÑ¦L*hÀó•Â"3ÿà”—Ú€õ¸@Ʊ>Þ¡øIRZÒú–qÕÆþAÃeÅP &ò…*Ã[ÂîJÑrÉ-¯e˜ÊI® y•$ÁšÞC,ˆâC‡ŠUÙ$3ƒ¤øÜ˜esFzÙkt0\j9%Z–\ô/z0œ€’î¨á¦G Z Í"Xÿ2žÛP9¨µ|¦[«0»ª9Ó ðsjaãæC•_öv±j.æ… ü‘cW2Í€q“ä@æ8¢,SuÎàɇÀä<€Á…Žç Y:¤@¡U+ð£°ÆLÜ‘‘ÅIð,/³ƒ­ÚÊ“ùeà3O_”¥þe>g «€Àk¸èwsØB*¬?¶"Ôaš4 ÑÄÏÛ{Ò{ /ˆOÉè䀦}#ŽÖYÅ¿SqÌTâ CH¯öºÏˆ KßJSP^ÿ#@Ë‹g/B6Ê=†¤ûº½’3WùÉgKíŸT¨®a@Þ|>)òähÊ&ô‚ŠQdè_Ç#p=­8„¨{Tª@`La$Y¾yQž²ebŸÒ£Ûúáï—†®Z+ñ˜~ V]@Ù”#íÀ3KhxH[ʪTD?Ô!`gËÍɰCJª‹Ö÷Ô"*5ãH8¤PR¿5X-WÔ£dÃHÆ[aÇdĚŊa»¨è:>©Y6#…Pˆ ÒäàNK€)Ù Xq£Ìb½Þ¸qãb>’¦::;üÊ&« V S­¯ßmó)‡ÚþªDvpeB˜£L xs÷¦•Tˆ„—õJQ‚L dL%\éG~¨†Ùb*©Ï˜}B(wAÜ…<6*u†h1”TQÀ’Èëht45Ô5ˆ¹à[y$TqlXãèZ©×WÃ葱S\nÖesìm+—ùD¾âp,ÊmæfAQ'ŸŠÂÍÀ 4 å£F 6xd‹Ð,$¶¹>e@Ue§ Âe ?€„¦€ø5=Äý9Èò¨%d=û ô äZª9ÇuŸÔzÅ*€éⳫ¦Î€ð[Œ0Å!á( }`°ê&H=+ÌÐ=ͪ‚#†··|4‚8î TEd‘4õ Æ=:I-I‚—>”ø´Þ± Èbÿ¡>ÜÄøÃ^8ö*>ž…}@òEÔúOí-ð0Oz· ¨%m C*2ú~ÈÒ¨|èp J”J‘‡V´õõ»´ÿÃþ2””8-,QÆ–ág‰þ´+BŸ ºD½¤² 3ž †Ùc¡LÝ9.YþÞ–—ÙKvÈñp&ÁK+Ÿp Î>È’a)UX÷å—$´ì|DŽ“¨*¦i›€c-bü 5džS>ñ8<ãµb¦(½T[‚àå[1,PLâ¿‘ÐÿpŠÕà‡ jʲ‹ùø‰Æãðs” #rPÌ¡´Öƒ…塯¤B) Ôo?²B xˆ…º£"„ý L%Põ¦Ç±F' &>?mML¡…’o ™½+#âÀª6öÂ~µý3™ 9p£6#9 û„œÂäüV TáU.!U!j/¨O„<¯"ƨéalWÄ€D*‚v3…½ixNù@5rˆNÅi°W˜”å–éÖ"#ÖqsH»>SÀxŒ@e ª{À@d·‹4U®D]@îŽeí­ú"8ƒÑ ¢ýX…w5ÑVjÒ´Ý+ûµÏø/cZ¦`ÿÓñaræ›A€TáåcÿÀÐ:£5\Ì0øÊLw&éÚðÛª1àÿ$¾Çš¿´ÇZyL¾åk®%H!MzTr'æv†•¤·€¿â„HS¦– ‡"Ýùc4€“ÇìÒâ`‘ §šUà”l ¼ckÓµV„ ß¹õ_€wÉC{ø(]X‚/¶’øµe¬OÔí,8[̨£9žÁ‚î!™ ³_Π>wo¶Ø{œ÷!…†Ò}iÑD¹\õ Â{d#ìT\{þ±(Ý#©Ç— íG˜Š¾Í¼"t>£ñzK$ ¥%´Ç€>–ÞPy¢mq€t[ðH[hX Pš‚Yµ1“}ð¯0Ë”<4fJoPHÁðJFÐþU5¸5ÄÇ*Á]“B|L { (]á3$zÕað”*LIŒÀÌw<»´ŒÙ± D–+)øðUR,dC‚„·  ¢Ê`¨<Æ2±¢š}·ßJ:äTƒ™ €a%0ÚwÀ½ÏÃèÏ aÂsK/´– ÆAi”d1pª!¹TªmUÕ°Oòr_bƒÅJÀ}±$°>2ù³É£À}sÑ«U*,¡Øp8KÔÚTM­?ËÖ”çhW˜ACfZÕ%Oä4ÊÈè’ >@-…°ÌBÌ`~N«Æábû|¥ZL¨jAÝ»G,J(GÈ";ïÀm*ðÒÕà(¥—uzM=?»È"0ÇQ*ƒl/‰ùé¡´ÒEþj*€Ô5°Õà&Øò Óh%ã] {ŽÂý¬£ØúQÁ.Øš°9k"زPLX´"#(fõ·I#â¢ht ÷ͦð¿ '•Y&õ¤!ªbmJÝxã%Yi±¸ 0% S=8¦3pÌØç÷¿Ì¦ÇãÅÈM„Ë“ë±ädÓ5Ebî}BÉ–÷P=Ø]¢^ ®7TJƒÓCþ-:µà°ÛšK€¯Â6¾—ÉpzüÚ`]8DÉi˵M…û9\XÐa{34¸ˆ™.Þzå?6àRXˆÜa•ïtd d†æ6ÿŠº7½¬˜¥p–ÙDÅöÛQþ9}¹?g&„°4ÅŒ¡ß H¨¸éXX “§ðÍ:¶K0‚GJƒÒ&&Τ W"rÏðŽø“LÆMôžu—F^•Ê ƒ|­ÁDVÂ1 ^Ý×9ºÙXí'UL4hX3 s—ËbH†%Sf™ãü~p }ÑkÔiEH8 ™aý=Œ=!¼ ÒÁd­›‹uÝÅÄxF¹T1þïJ1кŒ€aþ]iwnáØÑ©HB*¥!â‘„I|EHPô‘Y{÷2Ê/‘8þò¶gÚ!³!bD˜â(KòØIÇ,7ªt("TáS¢…WçD¦¢:T·£Ý0¢ÒÎ&_U€$@Uðý† Bc¦ø æQ£´¡ŠD½ä;=mAg£*„ƒäS+Á¹B0'»’%×#ÿoý=þ"eáÁV €:)‹ñ.yí±^4"h2Ú% AÏŠ€ýùáIõ½2A³]cE:A>hSIM£˜¥B_ «l8&4÷:5ñèÃ|–§á1Î!Í I¿óùZ…U͇ßO/·ZRè”øB ¼%mˆôιOfäÎÕ¯$)«„,¦¥˜VP-x%´¥­ìÚã ’!`\Nob“ánúÛS5ÊT]ò) @|)%X1W‘}O2E­ADZ—&¤‘ÉPñ‘³.> Ý7Jõ]8 6H)i¡Òl{c@ µ\HiI÷ˆÉ̺Úõc±N¥Å`YQGÿrËÁeÁˆ¥Ö¿äÉÕèu0še¸ j&DúRä!¢YC8\ÚÓ@`O Np}î”.‡¸ ЃaMÓzVøµ¸ d4 Rn(<²zƧƒ"ƒŒ™ÜR¨‘¶¼t¹šdà”±¦Ú·s‚Hw4¸“t2lUÒ$žB?¼ ARž D>&ýV¯Õ~ÿßæQ¥Ä|)0áû,±TÓC‡à©tȘ2µˆõ§Táuë  * áV…lnàÒÄV3­Tm¢†Ð¤zšL~ ðƒ¥R0Ø‹Òy”‡‡y6ž~‚ó ·£ö§Á[ó*lÒ´pD‘à‚‚5¨Xµ_".æ—s¡fì¯0B _Éb_f×ÔDרÕˆP º¸¦ŒO¾oþ©)z8|¼KÚÎ¥‰ g­0R†ö ¨ð[¤†FN¾r»ÀåqEË-„,È()=¼íOÜ©©)‚aÔCÔÀâ[Óa˜hV~„­J =BµL)^ŸW~l¦~j«S4ÝиÞÉ®§ À9¡’JVºïÎ ýZðžŒøŠcPûˆS<å" ÿ4þ‘ÀqËr0ÈvÆ[©¿•JzôPFÐ’00@¸ý¬žŽq€{L¾P­‘K`AÏ>œ_ÑÄd%(>æƒÒ™è·ϸuCâ>ÜŽ ¬jøv*‚Ì8rþ˜4)ì)ãnJÒ%úû€Y55ð’8Ôd¦ñ£ÞjKìzÒ¨fÑ” tÎy®rÑ^–ÿ2aLJ)éjb~Ó^Eýî3ôS®ÛÕˆ¢“ä0„¶U±ÄV,ôé/ÂÄ‚=&°KŠ,w@•‘E$ÚüméáÁÂóÿŸËÙQGMéÍZ+ѬH\>U±BT¦ÿ˜z!Ò(ùÃGî½S· Ðdf-yIpXV)·NŒQ!nÚ¿¸:  &î¶ý ´SW5DOâ%÷'ýÚ C¶œÒê"*á’¥oþ½à2ä›@ô‹v ù΂^ù`9ØÐ „£€B U.ƒJð X 3 þÙX=b%©õnŠs‡@‹¬ ljJY§÷`š"Ûn„R¨΂°ÊÚÅd­1®œ Šét¼$ DVMM›WïgQìKåÀp‘^Ú9Mx•#Å{ÙP¿(׉ƻI÷È6ÏD>Š.!Ï‹ V>z·K*ÿnx0ðê±̶õ›€þTÖ ‘€fñFG­²2„Ò=PiU«8[Ýí‘À¸¢@ža±³ 7Ô- ܸAƒÚèe!Ž¢kkz3âòÙµè$4ªÀUXÓ~7êŽâzš´Ï¿ :.Rñ½ 섺àîðÙ @<æ ”Y¨\çH8Áå¥~ïÁÑ=.Òr°3Ãu‘~´»Í‹;¥Ä] "6¶oøþ Â_ú&ù‰‘]§ˆ¼·XÄ ô{œ ‚E½™Ûй­‹¤þˆ[ h.)ÿ¶$ ¤‡œ×C±&&ì ú/ÐÄØ ®nOƒéŠBn uóÜ*d‹D‚ðgƒú7T‰EXøŸ»¹Û3c‹ ?ÂqËia)j&˜©xÈj§pœM`MÊÖ%t{- Ãç`‘éP2Àe_ÐBõ"3•0Ò%—.d–´ ±0G,ŸÒl Ÿ¢£`¥ñŸ7Aë°ò‰c‚Gí­ì8íùÇQ_±g!ÚÖµAF|ƒpDhgïƒrÈ/51!Pÿë>‚’ûP—Ú€¤¾Ô%ö )/µI}¨ Kí@R_j’ûSpá@lQEQEQEQEQEQEq$0¤É"ÿá ÀkAï8´Û4 ³ê(¢Š(¢Š(¢Š(¢Š(¢Š(¢„ú˽!&åI}¨ ?¥z£6©,.ؼl¸«Îün@Ã_ª&Ñ<¢é^¨ÍªK‹ˆ¥oB+â`©P @ñžó3ñ±Ðåö£úWª3j’Á"ëËӽ梙¸NŠ šÆ¢ü’IZP>…$ÝzHO)°G‰pŸá,xÏMbÐ [«°´üD‚–QGcÏ¡Iñ ã™ &I·^" ÙÔü©ízü\’Dg6êì-? ¥”—Û±çФ‡ø†qÌŽ$‡Û¯Dåxîbw |α‰0Ô,á°ê» OÊH)e­¸J­bEÄîz¨×)Ÿ7¯Qá2÷OjMÔ¦€¼8‹™L¡øÊEmÂP k.B$œAnsÎÅt¦€¼8‹™L¡øÒûŠÛ„ Ö$\ÔjúöG¤Ê;SDä÷ò¥4áÄ\Êe÷PI…*[÷ªT¥j¬VÀ¡ÚÁýˆ|îû_ãª)¯ê{¹×°¢슢ÀGgTz†€À®ßÈo%÷¢ÂJú8äÌrô‡üDê Å›_w`LY˜FéÈoüŠ€5ó*v¡Sâà ÞQìˆr4\ðªÑå^T™a½?÷mBÊ¡Gª •(_/ÄÖXäí}bÑ΢p Š< ñ‡CNuè`_éHƒ}vža¡ß)ñ ôl–½TD°ü³µ@ó2~ÊöÐwÃ$_ˆYÖ_j`!ŒžÞ‰ÍK¯xkÁ¸Ai¸Ë%ÈFW§Î¬oðÔÛUaÏP6¸ÜŠ0\Á 7œ|‚T#ŸãYñ@Ò°Dõ< PÄQ#f3¿½)„ȼw^ÖU#z )«bµ¼LlŸÛ׸cB*ì pIIpÆÊ€â® x,ñÇ*Ž&eÞ¼²YK{”CøLSEî%X‰Ib©wÊ"¢6Ÿ¶ñN™©x| ÅAØseÖ‚¬‚¢, y´Ê?}¦Q¾ mß0‘0¿‰²û:ŒÒP’Æ‡ÄøÌ ä7Qƒn¬P^k »â@âð1˜ð/8ΡkÊ˸gqN4ô]+P#¿Æ¸ÿâÉãsÊ hœ$ ;HÓ’NÕǬ‹_ÙPC`pÙXTû£|ÅØF‘@g¹f„/&,[?e²é–1,oÃÜld$ƒ¾MÊ´ÛηtªwÓ³û·6¥Zm£‡3‚¡Ð¤ø"S“õ¶=À< OXyM˜ÑÛ¤ 1ß%iñ¼cC#Þ_’©6gÝ(&ËíYÂ-ø4n¦Á{Æä5Y*›Ë8Má9%öœ f¢5¾IVrfž1DY'ŸN3êëÝA VŠ©SY.l*p€,œzTRŒ@ncã2z‡Cø§»õ)–œ5ª¼F!Jn=Qt8€e¯¢8dή;›8 =²!À{PÆn™‘¼B£EÊ«ta¡¶‚Q IÚ ʯ‚ý€è ˆƒ&UhÍá! EIm¡Fñ7·˜á=d Ú.Jc„ãø @Y\Ï„ŽGw.Wkbpš¶Uv:µ¸BœÉ¥~˜Ð¤ö\µãÔ'RŽ¡Æ ”šp;OŸ¸ð,Ô%—ìTÀ4I9'‘Çû↧[þ¸sCR~ð\xT¾ÊÓ1ô¤mp&Þ/:Éö2šœÂ-¾Ž‘.ÂŽŸÙ«œ…kh¤´§#ˆ)ÒM›*‡.­&­J.Ž#4îÅÖR@;`)(•IîXŠ™çÜÂù_ÃÀà .šílPJ‘?h(¨·6(—ç‡,&‘ VÐÚâ:d@W\ á…˜…H_@%cyzê)-ïé‚íhž@{„PHŠp°Ëµ hÄ”¡h<>ÉF°‚ÊÆ™wÝôà•ò),„FÑüíÅ#øãÿÀã¨È-žL%kš S WÕ$]?ZHŸ¿…tN¼0Zl¦ŽÜÒ#Ï㈬ÕqúR² ÌUN0 TyiR™¨L«ŠØ¾(eî ‚]Wj½o»ÛÍ‚(ÖãƒÕ‘ߢÜ1?ÖWõ?š_g+†€Ð6;þ+g²S‰,:”Ãîqª4— =Ä«@à°ˆ:˜Â…HðÜ>¹94BP²µ³Ðþ&MŠd7¯PO·­ƒ ¾ÐöÏN€dä.:½Éo\±agJþ 2 Iôñ~$=1Òƒ×Zö»C]`£rÏ Õ›P—™±°ù$¾õ ÛŠ7îÍêJôõþ’–Ð:5&+PGZP™ÏÖ)šâøBºAZqÀ€P}[E .À·-\ò¶îæ‚QYÕ‡Yº§ÛŽm”V?XÐ:éFiL}ÀtLú1c¯›RR˜VcX\òeÁµK ßýŒÎ95ƒD8~æ§Ø9—‚šÇŒ)kgêMŠ÷Ã辘¿Jaôîs„,u «Åúñϥؖ ( o¿Ï¥÷û¿€Ð1Ò" dé4Ë2P©Œ†ýð°tð»bÙхĶi¹QØà^€¢0BBŠ Ì0@ ¾6BZeªåßê%­E×û…â˜2dyXžxª¼ :/!z"—gPr¨•«T×èè®% ‡¿ <6d—Tš‘Ûœù#ê%ðfñ!Õzå ƒÃ„x€€õ…Ì ‡3-tJxÔkŽœjÐlòÑ+¸žÔ8— Áû K"[ã¼;®2_‰Æxm°VjÁ±fÓ%D§ªöÂBÀN]%_E, ž÷²ùÞß¹}/.à#'ù^¢Ã½Tÿ `,Ðt#þ8L€\O?Fò™”j“Œä4Çø*òû_Ñ«|&ºŠ™Š|2ž…nRîœÊ¼O—Ån23,ÇRªªíí­ x(ðlW2NŒJ‹øf¿À6„QÐ"€[iÐ ‘ÄÎ0#/„qo$P“;ß71ÿ2_qÑ1`\T Š(¯VƒºÊŒ:Dý¨‹L*ÀZ–&/¼(Šþ쓽Ђ¡£ÂÓeóŒà®9Iž¬ŸÑe ù`Á:ˆÐ0× ðvçL§ƒ(X€{'ÔSoý{õ†¹€X¯a&9ë]Œ€Âú=¦ª/†n-Õो'´$€Ôþu¨û„vDBݹ¡Ã€ã‘Â3„3Æ—E~PöH/M¹­gi±ù‹×—ÏŒ?QžªCJ…eŸ¸È=ÀŸ¢7„$ô„Kóâ‹)\/™ã‹B¸ñé¤J×ÉѤB€ŒcÀÀ3Xhq8’‘úe"t¹­ßñ7îfp‘Döi´¢âLU7Zx¸â„#Í—:2Ì“šQç±V›H¢2K).¨“ðÅG­ÿÒ Ùà—%K}¥4Á·PŸéSÀ eD×2ÝH•_LÇ ^Õ’¦ž¶¸ÜN 8hN ¤ð*ÈAíÓŠP;"ìõ%?­¶éz0¡Ö©U¤_A…iœÂj5>Ñ üÉMäqW°^¢%uh$LBb3Y»ùS¸Ó$ø6 Æíõi¢Q F“Ð$…ÔÉ¡0Pgi§ù*—ßÔ¿¢Eô=.~ùÞ«=VÚ¨©OE¶ÖODÏût8TS·’èO¼”•ÀXÉA ozøê¸»ôÒ?~U¡Á©¤‹;ÐÚrP <±¯ãôËXtÞ¾Uî2è'Ä™¸Ë›~‘¡„À\~Ah”9ÔBœøµÍ•{|D”x¶%`·ùT ¤‚`Ćw+ÐphàÏëµ’Ô’KÄP” l[-ìhÊ`~öÍz7K[“2° n¡ä0ðJ¨@]j5ˆƒh h™dÃ@>¥ãÁ~äürª)~–skÔ^­ÎwX¼O蓬·ñaÅîý3°P‚E @Ö½í@V·2>¤ x"(K£^H‡F UeA+í&ëÅ,ËéÖU0ˆ”=<À^»z®&u#soiã ÎÍp«Q1£øøRj>«¦‹¶:Çߎ»5°)Â5Ø$¹Ö«¥N]cKðÆéþ fˆ\~N+(þßËæ¬(YD -—çÄØ^‰\7OiÀ4õ'JX6T¦pDâ@Jx±( ¯š`ê«°ŸN} AÑ¡PzŒ#q·°j·A`eŠ)¯þyŒ‹xH IÈ·è¿QàñVÏK±.cÝ\ o«"ƒØ>1]`è›CÃ"eji¦E ??ãòí8WQ‰µ“:EƒO>eÆaŠ?Øг´b_ÍV×âJp¼^Xп–ùî(ô0SÃóªa\º= Vå㫳Zά?¤êèïþ«ËÍ%•&Ǩ/ßâv‰ß›„"!¦&ÃBâ6QÒn@   8¼‹Ñ%e“8mè×¦ÐØš Ñ ‰#߈Ã:­M‚OTÉ87ô‰ ؘáÅÄR.—ê%àoð€¤EË\FA³“kö°>ÈÞÔ uÃÑCÇl%?á- ZãÚ·øe UP$P`a½†TÞ©º‘4]×jŽaá¸Þ)B'lødVžº ¿öHsùÖe “-k:èÀ£»X Çóh ^ÐCŸšŒžf€’× MdæÐb¶øUQNãà Ž]d‚3}Ñ“ý  )·/Û@ænÖZ݉2Bjg£Žù‹ .‘Éi=H|AD¾Ä—Àm¥´$@Ð t§$:„ ÓÒr%Y릂NåWã…qw“´ óôóÂE,טfè!̰LÄT´tËexäxñXáhEÔÓ€Òëñ“Ü|IÊ}:S/hú¦U¤¬·^PÜ£€M0`šÅ9~e4hÀ6špÉ´K~ÁˆýÊ Lプ¨^û pÂdÆh±ìcd«¤«!Mä8!0@f/e GŒè‚býâpý@ê)"êϼç~Ü;*PkH,/ñTf:¯¸Ñ–ÌQcb,Á Àm¸Ì-±3ûV#UŠ«Ê%(1Uñè8aDħi± *È[^1oØ´˜C÷ႈá¯M¡hØÀ4 Aº Z´JrÌ¥ƒ¦ž‘Txš’ij(¬O~½ÀD#Ô¯ \Pª’ö}! :C‚NÈ6.Šƒ°g Òé&ø {»´€¨  [ÎÀ 2€:`<Ìrçaf=†I®0ñêuóà5eÝawOÑZÈnÊB£ôˆ‹<ÄšDAbÁF:pGbqÍû3‘ÛÁáv$„ßcbô£Pl ;È©«ü¿z“2¬¿œ£Ô>Á"]BÿG¡yN@h“‘§Ýz°[ZÝ0µpN!žMàeGe2ò!…ȲtÄn¡eÂA®*Ѿ­/é©|ü&nÛh 4(㨆bˆ'[a®åHd逅q¿P /‡kÊ § ˜„€“`²có«Ú‹Ê"1&®…i÷H˜a‰¼Œ˜ï0¢·†Áâ(‰¡à‡h-jqË €šˆi·Ô '” §³Ñ+Ê:¯‚1Q5+¿Y:§m#$fÀ÷«ZàÛñüŒ´C³>äSÕ%R±:i8Ò‰Ež‰]p¤Ú“_æ* yøB1˜Ë’-h÷Gå¡éiËì™8Òˆ `¤ÿ×éW“ÁFZÙ:ZZ€„À–µâè%R§$`AÁ8ëgÐJ2ŒÔ%"88|9ð4ˆB<c½%‚éûJ¥È¶e®×¦¨±a+ÉZ· ^©F”ÃS«Äº¨+ÖʈØF^s¨AŒDZNpiÁMPS¢¶|圯×èßüyÊçæBÏÙØ>­Œ ,ðƒ£¯¢—ê¢[Th ãA‡ ·ØØu*MtJ÷ÙP<)ú‚¯i!"á¤&§oxè£ýïðÂÅÖéÙÌçÿ`®Œ*O¼Ýò‘¿$¼nÜä#ÚP#“ûOï^ŸÓå‚@‚=@ãaNåžPLi¾ÈÀí˜íÐŒ¢O”D>ѫNjE9HŪX`ís(oÜÕº6í¹cÈÅcíz–!_ ¤«±o¨Æ#Ï­c莡žýê(Gapþð²†jaä˜kÒÍ­\ôí)tƒNOä‰ý¤®”ˆö=z¨ÝÃSqÛ²¥êý%C÷xt†Â¡zήî[ÀWA³×$¡'†èßV—ÛµNË?ãü¦¡QAݹ•LÑßÈà4NôHPÀâ0‚H£´WÍ«‚ý^L(Üæ-ƒÁ'†¶#DÆA`:c†uûDˆÇÀÚ§ƒ(ÕTC­hK¡’qƒ@€¢uSjRÑ¥ZÉ×hsàÎm²ÈJeä?OÌ¾ì±Æ*0 gÊè’-â;ÿà A£eH–!až6ÃpÄ…iÓA±‹°:bÁƒAx’)‡|T,n-: ›éî?üˆHó2>|þ: R^ààLSÃp«†f@“Ãí“à=¢9 sΈH:;0–5?x´]Ò,Òè‹ÿÕ°)/µI}¨ Kí@R_j’ûP—Ú€¤¾Ô%ö )/µÛ€,䪠ޱa¦rü”QEQEQEQEQEQD>@{ 2-C`H›ùB6nÀ ´óÿÚ € aO P <³0‘Ë(CÀÑÿQ~ `«$ Ѿï5€Ú(³Kˆe’+è$©W²ÀIñnFQj£úO($c:ˆï»c¹È(¡|íÞ8x"Žëš¸Ù½wíoà@ &_7ð+aæ§”B€ ( @ à(P€F],0 >˜ F&ì #8 4v Ìvô ÛÄ¡ ËÂ@,BÉÐ0€J¡oü0(ñ¥äP¼k¥óÑê4Qh‡×óÅ(o‚#ŠE 8íGΚÇ@ zL3zº3S|ód‚ˆ×«OÀ ( €€ÿÄ#! 10AaQ`pq€ÿÚ?þ¼Âxz¾ßÄ‚[Œo ¡.8Ô)) ÔýL­oÑÝz£Â,ÛÃIV`SÔtsH« =™p¥¿0Ý;³62ÀPËQ óGŒ¶.‰– ©›ÃH÷%‰Eú)xéU””…¥å| e¼ú܆À$ÜÆ£¢xŠÉMf¿.i·8:OÝ ­/–m0â¹›+ïRÄC@4zMLÆçM ‚äEXC‘Šð“Gˆœœyb_qÌYìȯ4Ùµ'tÌæüK`…¼ô „~Ñ7é8íŒyNK@)´@Ž„F§ÖS^·BdÓJIÏì«bi\3 øó…Oø5 *¶K…„&E‘Ò Šš) gPB4™qººÐ!ã½@GÑUj;ñ@¦æg<¦P[q]`oKqzFSó`XQEÒ¸ îÙ\ûALÊbøƒ"Er3`ö±\ÌPãÂIæöû9>D¯ MôÜPà,ù73P¶4(ãQ%Z“hˆÊîu]އRNG°îca Šp*’ÖM Ñyr¶A¸0@ ™Ã¨P" ˆ‰|¥S¼`r+¦êY0òùPüé|`O†~˜’T¤ô›À,…>P'CØ,•Ñ0¢¬;áI €÷rT˜ž•¬3¯K5ºObЪdÞ€‰ 3 [©­Ü>ínÚs:ßåo9*IF’#Ó½òá‚Tâa„ŠøK‚m-¡qz(s{¡Îà6Ò´oÂ*1Zó…nW7ˆ,-Šx&Q‹Ð úåsT¶dŸÀŠßMÆg=ŒæÜiN{¦Ú"iXal2k!—{w½OVÝa¤2ÐT9`]&×ËÏ=£g$1¾Ï€8Å÷øó„!´`Ÿ…hD°‘4„ T~ñQO Jå§øæ—Ùøxgõ!)ÆF{Å Šs… ™ç„°ç…ø3àæµ€VLä”v–_ ¯IQ\ ‘^lH.‘…Z¿ÓjDù¾Óq(ÎR‰ÉÙJ%,UWûD6;;3Ð1_5¤j3i\=Æñ:¢óB­ Xyîû£Ö¹—Ûã*,OºYRQ Q”m-t~ªa9aŠȼ.NˆfR‰°áUÔ@ö69‰Õe)ðª®R‹>ž¥h‡ÙçèÍ&ÿ1.|!³¶$í2/´ÙôN¼ƒã:ú]'»ÝÂl>¡Ò[•ÿŒ@Úâàe ü•†AhrV \ÄzõÉ Âõý/Ø%¦Ø±ñÖQljg:ÎT„”J¥>ª p¾a2:Å?5ç×N3•Ú¨$î-|¿Â?ãEŒ´B£˜m0<•´+oÈ,=D3 Pñbu– O/7"9äè]•IÇdbþCöJZ¯:Þwøèúñh—òfgÁ*uGÐZ®3Ý$¤8B§Ô.$0BíÍ“T3CÛ²Mæ“°`¶óÐ ]ÝЉŽq“È?“YÁ¯<°½€¼b¤ÁgÝèñ{Á :H%ÅtŒLCñH?AÁÀcØøðà¿h¨)ŸH@_èþN;ÂÚ:ê-ÙÚxVq±Áêcõ0Úk¸|A€x\û@(™aÁDŒQ?pOdXzó%=€Ò¸èJJ¸†þ!°á_9Ä;¢4,Ÿ<¾2Û@W®ê0*:ä|™Ðéu\𠉣láVéÁ¼ ̃9Š@—׉ÛÍ£ùOÑÀ¡O õxduOµäùí°L±†Là•íýD‚B—–!&Ý€F³9O*ÊÖé>ÅE ð Ê´Íì|•QQzð§@!DÐqw¡B\Q«±³ÊÔÔ‘#R@|`‹$E}f _L®w¨'ð‰)b”q›Uœ{£ëÑxÞ?vðTfJŒD~"HHžg x–€Mªq"…¼À¹D£@/1{à‘Ô™B ^e”Ç   kÏèåœhMÙthPOÒà _7£4`g˜ÙÐdwôR`Š’CöÁÔ¨‡[ *ŽòŒØ0¡Ú ܵ¿ZTpÀx†2sqYäGÐÓýSSâˆCªÁyƵ„|–¦ühÙ\(!)J¼cABÀ ²·W¨ANÙh¾3‰""4[ÔåDô-±(ˆ²%«‘Ý»g:_ªJÊ_ò| ï/Ù™£pÁ2†Òh— õy` ÈÄLìFN„šU¼<b3ëÑ$“"²,½ñÀÈnå¨g‰dsŸ-íoBaãïj&”Êþ;Ä#ß 'ŒÉG'ޱ,‚¸±µ]+SþÄÙÛ)'i ‰"£€4F'¼Ôr„b3ˆ95\\xÀö{þªö; ò(8ÃD\c˜ £ZÒ q«Ë§= :Õt!ü*¿“Ê’_ªŸiyДީy;ñ5(ƒq¡Õ¥MŒ¢?•Z<îÉà“ŒÔLÀŽ{–,‚X¨!*‡I(è+Y jðñ¨ÙiJ:q°ÜmyÚ+ÖÆx5¦ Ô/#ü@ÿI1ðhË^ öd²{”¯cUذšÔª)ðVÓÞÂ.Ü6‘ÀØÜ ø·¤€ÿ é.=Ø›H‡×?¹óò{ŠòT‰C½ªBä“!©@ a-Q „ˆ~L{Q=zá &1î<_Vª©ŒÇiH<•²ÃfÉŒaÛ/b´­pj+옊â˜KC!&<õ3›*¿1‚Xw2IßkòáÁº}’ø”"¥vJ ûì+У©*y£ zûS™HwvBW$ª+IÀ¡`–ƒJhò•öÇ–6Ei6Úá£TÓo‚ÆFJ#2< ‹ƒ§Cé›Ò¡´9”IŠÁÃ4à $ÃŒw²¢ZÎM¤8“ÅÈØ ³Ò†Ñ+º€¬x4 ÷¤#¨(êʆ!;¥)ñ®m!öÅC¼>6—ë¤ksM4"‡È™"Ðɸ3œXlDà‹\t;œ[¸ÉD­ ¤û¡±E±r;ýÄŸÿÄ$!1 A0Qa`pq€‘ÿÚ?ÿS©S 0(è3|ú†C!È Úˆ@[Z€´Íô‹žªV1bb ’-n§a8dÿk€ j§$(‡Èq@2ÂZo@µ@yÃM$$$—` t°¡+ûØPŠ-@:46À÷o$ÜÍxÅSP¨‰øPÕRã2È"˸—¥8¢ 1³x 袧äÂ!u®ˆQ¯R†{wðVÀœ"ª&LÁD›­`œµMå2^“{œÀrkIª(}€Y5²¯™p B¡J#õÊQD›68èjQÅ[V1¨°1…D5OpJl*…À̤€Ù4­ÿøÀPa„<ƒC ¬ñ24.J¥òȈ9œ–NA@(±laÂ<©ÅPº–ÆAvÄ©H¶“$ÝäRx ÄÉ5‚Ô|Š#¤˜@¬D(ÈF –=‰©²ÎH@,A*€(ˆŠ0Èu°ª¶ÁÈ$ ø43Ëa–V@*ê.hÇ÷-Êšˆ‚" ˆÑ1ÇäWïry•ÄP'K`v’9"×È‘#½ê‚ j0 ¸‘¸²¡zÜÙ'•ÆGHÔvOÜ`aä„%2Ð!…fªjÒ ì$Áôz ‚šbì3›ØÂGu² ¤BƒÔ>CЈA‹‚*—A©½€€ŽÏ–G†‘† V/«P¼£)킹;9iƒ%ˆ¯—R–;Ù’²(,p„#U–áV6‘PË']H¼!KDtg@ÌbªH±(© Þ—Ý®Q+Á†.7Ó{Þ¨Ÿ«ˆª »&KuFcœ¸1‘5à(!"RîÁ%Ò“ë«£x™•ÆQ‘ºíœë(Rr§PAD(ˆˆŒM?‚„ÜÔQPX ÁsDÀâ'ôˆü/í·3äÒ7lîEb†l¯Ã ÑtÒ1ëi\ª¤'·IC¿Íµë°fFbdC0>™(5Pb£L¢ƒä@Ô¬EˆCj" <)-%rc#\çÈÒ)F+Èü":¨P¹Œä±î¨nhD4$ òÀÊ«DرhšâeÃiý€-¤8Ü4Ãëú#a‰+>P}"5m+]I ˆâ,Eý~C·š’¢ R€fÄeyE«hI]r†©`•OS÷ÀiÂã Ð$¶”lC„¡ŸE>I”}>Å$ Õ!jÊY.TÿIqè;S°®L#Œ·# “(éüj7H°`;d×OXÉk•üjnû»–' óØP$‚Nª…°l´+#˜PQБ¢é.ñD¡D”‚ƒžc6Lä.Á©S¾œ!kæ9]r" U¯ƒ‹^èÏH ìÍÎÕ :EYjÊ{Å" I³-”‰À°1aˆh¸Ã"qè=¥Uju ”EQåɲC@.±N=`ÖCë"”ª# —à®bIÛBA¢¿ "²]Äk¡ÒžMŒ!QQ "V€[È ¯cgÔóËQ`”VNᑉ³úΆ€®\@¾Z•LPq`W;`š‰Ž»PÐL. Å÷­ÄB† 3³S 158I¥vSMOT¾Á0Š@tð)‹å \<;ÐD¡âRQv‚‰,T$À]ãÔåW¨“¼"iE ÄÚN6˜ ÉõÆ£GyM©ÅFÂ#[v}† ‰S^Ä‚.›Ðh!º*]Úáiï-•+ò«Îˆ,K I‘´#+ʈÐ.§/Ò“VJ„„ eˆF0FØM¶áápx1cFµ@ƒ ±å†1 Š,4 i.5 ¸dŽNÖˆÆj ™/Zê‹Z5<#<û 5Iu:€™X„„€£`åXЛ83ébµ¸Ü¨ŠH”D U¶Àˆ0Kñ°ÐÃÈVPˆ4½šôíÁ”ÐIÁéý T(~ ‘Gò†9ä-#í2„ñBƒèGØ ]+“ 7rÐF*‰ƒ£JµZhÄ䪕•ìQ2šð  À’VÚ¢”·€QZ‘·ÌŒnM0 mfEç"U8¨u 9¶•‘^^“èWYÁ]K`A\â '+NdˆPKYg a+ àæzCþ¾7´B87Ù¢!‘`¹j¤"+í 53AUÅæõápQ_CÞŽRÙW‚B+W §Hn"ŸPIЦqT1#ªB³ @\•B„7.f2 †€#/‰æšŒeÑs¢×a~’Y®t¹ ìÍX#Ds°ºò”p!§Q–‚ò¶D äJ*´ªVêâ¸`H {ܤÌ-ð +pÐ’ºÑ} êmÕÖ`}ű"âp¨Æé†RÔdQ¢ûA šã‘jñh/a!õSUqiUÀŠ7? V×jmR: ‘É0‘õ¢³CI0s—IQWÄ® Ž:tׯ)à°˜ ?Ô?ÿÄ%!10@A Qa`PpqÿÚ?ÿêÀÇKÜÇOìÌÌÌÌÌÌÌÌÌÌÌÆ à»333333333336 Gð_ §lžÁ™™™™™™™™™™™›9ÿ¯‹¡a¥Â¨ rŒZ?å},fä»ÓAç ڣ3š&q]ìá·¨.2wÖót¯ÈL6 V Ó¦m 2k…GTqr6Ÿû_K¹.ðäBÙm¯ozæ³7Á”£—ÈiðÙƒ¯É#“EÆöÃñ¨[Àká©M;Íò½!ɲÚOCP{ǽ ¾#oÖo?cÑ÷(áý(?zÖÄ¥C‡— >¿ö¹[,_ζŸ8ò?å¦H|Ú}ÇÒoH„gË ÈÑGá„ô™ÀÅÇ×½SV‚ z×Jÿ ½ÊÙbå´ügÒÿË_é$HÓïõ§Eø>~G ’Ww_Š[Ô,+-M͉*óó!@ú§œ;ëÈC+Ÿ°ŠE½?NO—0¾•KáxiÌK¡¾š6hCª¨[ŸŠ yäþšbžº_;„…À[DÒí’€os‰°” µy(kd+×zk„g)]<øS¾á#„·"f<#[«XÙ’Qg¨T§qDÿVBM‚4N/Y$4Hqnhâ3R™ó €2½âh2 FslGØ1øÞ&9@>©C±9… ˆ57ÚÌÈ^¹9D@”¨¹ a8÷m¶LîépÔÕ/–KEâ&lTM¦ã£Æy ©Ùª„;ùm¨N£*ÙÐ+ŽÒ9ÈÜ¢Ž !'P8sŒ¸ÕÛŠ·ëêo¤äÏ7„פaL‘¸ú½'û\*ê~Ë3þ€í “ !»0éé +KXe5GFòÍä`ÒúÉ{H>m¨Ú×5³ ¶ÛA)M²T¨$œ‡“1‘/ë`NБX!at! –Ž3Äô˜Bàj‹;ó¤¢tâs+öeÕÿ`+R½´@¹•`7´Æ'– aîÌ.Nbdºóµ, °~“+Y­9yC`3¬‡µI=ZÍTÊ?Ë|™g½Öƒu´œÉH^€×ÍæA*^²8-\¤¢)*u$á«ðý1 ÜtÒJƱ–g‘nñàÊe¾*Ò¶AsWÀ×úP³üÄh±ÃIÑ ‘°¨0çt‰O‹×´@qm»2‹ ÜíÈñpVÒ $b h „aöW·æv¬¬!aS,šÓAWÃ5•i³Ò!è±eÇÒ"Þ <}í@í›àsëÇ A%#ÿ„#)äI‚Ñc: 'ª ÕèüG\= t NcâØ z‹¶£{A/5{ yȸòRå,zN¿ ÕÜÔÆ >WÉÄ⸋%-¢'¨ñ_ù"…Ñ£KO)aH‡ÒͲÛ58DÞl¾ž¡öÌ*rqû±ðj¯áÖ‘¦¤¡íôæã¡#yòž›z€$ÍD(j+ª@$3FacPr=%Â>éÎŽYQŸÑï@*"e '›­1sƒÈs½ïþÿ¾0Ž2àæ~q#íœwáÀAPtÀG®Ø ð)¹i²æ ²au(Ø’lºêGÞõ¨XÏÝa ¬jT!+0q`^…CÔÆìR5DÀw^¼2àÄí ¦‚yÀ:ÌLF¨kÄ|„šà§+ð !,«2È`TÂáÅZ¬¥*E½] ))½ :7žù‰J[„3øD—î5g‚ Å1ñºüõ¿¤@EV×p¬=¾~F†G°ž¾KÆëÕµ–î@F i5I±‰‰Js}¿ªP…€Šœ{Üå8q@¢©¡÷MU‹#ã;ÜÉœ§ µ» Æ ‹eUpæ`¶ÎÍ‚Kõ/Ë ðÜÿ»‰–¿®B6M»«¬ÄÖcrß @jX°œËP¾Žœ}'2¸ä¬ÇAàçgì%9B"{„Ná`€ë);îïEhS×,ɦ˜›ÑÆf;…›JÓ˜ E@ñå. âÎ(ŒÂˆ…YaØñÂbDU‹ükcÊŠósQ`R‘üæGöL‡(X†A¶·)Ê$!oäî`Hã”RB#™Âªö„ì†Ó¯Ýw%›¹£ÃŠ6 7»ðÞ¸ eVW Ç2˜ŽJâÖò’€0ÌÏèVâ$ÊH’à°z|%PýÊ900nšúŒž¸±<¶<˜ÐFäi.c¸õ‘Ý•q?¹d‘œäªD8&€±N-¶KHê@­$”Ó´Å"Œ &†€EBnD‹ìÖÍÝç/ÄÔ†äå• ¡¶&bPëK-APPdEÐÐÆ¼ÖY)¹àŠK:`o&…•FHêÝ`ƒÐ*ŽOÿžV?žˆ@qÐi÷ [9Í`i´;yJÜ”jif¶ ÷e“MÁ(7íù< È„º³¡\ž]Š-X„±|HÑŒaêãÝ›B$,HãÔ¶ì…X­^2¹½[ü ˆH…fÖÉ 8"òþТErN\€âÀ5Z*F0õ>B4‡ ®@ „•NE->ù&­ôû…K Sf€±…Df¸ Ì=Ú Á5ÇÑ7@É`#K—€–Lr&Š™°ù Þk¡ ¨@Î$=Ï[æ8ž·ÙtŽÖ0©«B·ÎØê‘ŽUê­TJKK•r$Tø¶/Ô%1Ö:A¹„EÑ.¾Ï–°ø`q”L e“ Ÿð’¸Õ2!B/oâ'Ùj'ø»zP¶Ò~­Ž~xšŠ'¿Ï ,TˆÌ¯RÀcèØ«Uƒ½¦ññ&ˆ ÒgCѤЖ6ÖVñ¤0 µ«²—"ä­„Å%ÌVRwØ&°0+ÊÊ‚Ãà†¢ðãW*1à)%¬1©b ¶AŽbÛ‚G¸At•ëþ£æÉë§0—ßhŠ-ANÀ…Îè À¯)' #Ãæó]ÝÅ}¦jÔN•j Ü™»~‹üJÏ]h&¡P"z@ªD«`g­¾§!¡X.»Ñ/—O]¨‘al+ø{ÄÜa;‚øŽ”›Ëb/]Hˆ¥1l){êžÑ%å] ¬íˆT€Ó§½~ÊÛƒJbIÈ %c8GiiÓ Ñ|:š¼?'ý øŸ#†ik8"mP„ƒYJ˜ý±;kÐ8&M¬äúENðÕK³}›N‹J\6Ô9;‚Ê!–/ÓE©®Ï` ˆÔ #æÖKÙ1*ÝEË—™b,Jr@Ø3HsœŠÈ,Èas‚”È'D#qÓ†ýfž×*ºN×½Ú¯a‡~½©•ibÏN3îÍ`@|z·ÒKË5ù=y¤F¶IV*¦™ 𯻥•åY'ÓŽà‰ôµ€¡Ïà]” š” ~0€X4`Ü=t«ZN} ¦U•So;ˆ )é» îÊÍBI)ý†¡3p±9Ó:CÙ®Y–O°HÙ~ˆiÈ(8Á8ÀRu‚­û„N/^ªÜõxŒõا¤P*˜híÂI¨ +B½2e¾â¤,¤¤¦Ô» Õ" 9'}Ì^ÑÐÞR¥ë¨1ÈÒÎT¯–.‚ˆ” Û¶ÑéuÀ›vGþ^x… elCCÒA,8«Û^]H2ƒ±„å˜ì¤ž5iaÓu=ÜB»ìÔ, W1ö¦_ %h=¯„¤0±¢õˆ ÀÁ‰ÆÜa×̾…Tª ñÓr ÈŠÞrÕj!ßc*Uî³î3³CIJ·v&­¥8`ˆÎ7 Âl±‘#€WÜ'Ë íõœ§|½ÞjSìFq‚` —ÈãMR†X=p \ éÏì5µ ­B µžaÀ¸P^vNC*-iÁÖ`¶ÓÅ1§ž£báÜùK-UDÞå»%¢/î§s=Ç¢|,ؼh¬¨K‰nJ¬q¤KÉf€pÿíþ (¬F:鿾±_«ÊEìë kdf ÀìHŸOq·6…~ÈGćßaÂY‘PL€ßˆ‰Ò€›¢‡jrH¤ÌdvIØOˆPyCYþçä*Vr´m]oaÃÓU¦éc›ú V‚%}¢IÕ$¢"ÔúË8À](“ Xš#'‡êÌÖèƒ@‡!sû^4bDe„-`%ÑÁh=#Ó¿ÖhÂ{Έ5€>¼Nѹ˜JÛPÄpŸîÇ/M‘U,¼üÓ+@˜ƒÕÙ\ˆn=½Á'Æè),%D­(^ 4uÍP"Й*±ÅÙ3.~4‘£¦—¢‰uO‡^ïÕªì5 rþã|#VèŠâi÷Š(¼ –M…”YÌ·¤éS,96[Ÿ;NOFbÚ €ÝÔ¦¼‡ÔÑ` O$eUú„o ÀUÚ±÷ºXF©4Ä¢5{1Ó¨9Übò¦vuR* †*Ìó\‡‘¾v»HX*°û¨î zƒ¾8¬;è¯3DªŒ†v¼Ð/*nà,3°ûJ0d]¢°yk¤ï]$K3|é%¨‹%C*pœåPmŒ@'=Ót2üTlÇ{†9ÑŸz¯!ìξè?Iß-(DâE°*Sè•F°Õ¦ÿÓ†n¶–BxEƒ tü«?8¨Z_h„fNÜÄ”¼Âû¹ö&›®¨G,S "µ3‚õ‰ðc9Þ†…Ô>[8>‹AàÁ¤{ht éêƒS6Ô2hf2`^¦'ex©„(|šF(èU ±&c £uT’e ´Å»`̈ÂA¦Ø-õ?`²IÕœL P°qpÈù¬™f3\­¤^Ñ8_šŠüÅ#O@Í2R­Œ‚a5)IøýˆEeè Fø&VÀ1âkî=í¸=­ °éxj-†¹jô±rö–˜á¨GáÔã†@Ž?v´ÿ‹ÕÃ\‡Ö Q0Ù„]£7fQO‘ÚÓy@B»ð÷ŽBG×€¥ÓEªZæÙL€bÇØ `ý`Pw´jm4>jAn!ó]%ÊׯºNËל¢™´æûÐ…"b(BEŒ@c2ÇJý…þ²úƒåÂw—ÂÑ'#ÊcRh·&§ÿ ‘}ÞØ·Âya,#¡aE Â(XFBÂ0Š„P°Œ"…„a,!‚ x6 ‚ ‚ ‚ ‚ ‚ ‚/$0`B=¿¡™™™™™™™™™™™›P#ø/† n!þ‚ ‚ ‚ ‚ ‚ ‚$œ­—œ½oü}„P° ˆ.$ÈÁRòf ªº€àrfýªÌ6 ^kò‹‰ ˆ.$ÈÁRðdZv¦nžbßBÎO¿ßÍ()<¡BИ‚âLŒ(ÿDÖ€è~¿r€z">Jô§Ö¼ž„a]Úæ$g°®Oô?8œÊ¾,c,>Ç9M6¯ÚWŽÏx:‹†Ð \JAwiüh˜ažÂ¹?Ðýs+>E|1n"øk$"h1u ¡@¸”Šݧñ NbA†{ äÿCàNele‹hN¦Â nº7ëoÚ62 Ô\6…âRÃ!yò[cžˆ)`)'<‚ÁÔE,d¿ü´Y=Û×;á È^|–ØÃ§­N` (Ú%lOvõÎøD†(Xd/>KlaÓÕÏXÍÎBFŽ4oªHì‰óOvõÎøD†Ù™!ù¿õ”XdÓäT"$Å} ܾJmøµ)f}kLÕüTToñýÁùHI`ãy¨YýTLÇS“0ª51ÐÂÅxô€,‰J·ñ³FôPΑ~}U¼š\2»³OôúZRˆiùDj{¶×ÿ¡é€q=@ y9„ª¡ÒÀôÂKÔI¸<0=‡2“Çð˜g!TuAV²‚论âÖ@3ØŒö7©Et͆Ÿ3@Ñ‹EÅŸñëþí™3½ÕÎ%Z\P~ØÊŸ€CÖ¥bh:¼°ha^¬ò÷O‚¸Zþ›æ(8# GJe1UR$Š±Ú‡£ˆB·ƒ[å0QíGÊN ‡vTà~&¶¿÷¬"…KnõŒ;Ѳ84ƒj–ÄÄó¥&®C*Q+$´„ìGbFEHK]Œðõ£Ž+Ï„LGâ1kõzhËPi~ù/tÖês¸¸0^¡ÁB)èÄV⃡ë O],… “÷pÑ \ÄÒZâ)‚p7ÀT%ôq:i†Žƒ}Ñ(éPòÃ@´öÍÓ¡A Éþ+³Âº£†¹¿@É÷ˆ" åÄ98Ó”aŸà2G4mº9Ap·RÆIVîe«Sàý€‰$GLÕÔ›fÕæ=Õsåþá/县Z¢`¥“Ò\pÃV¡g Ùã`jP6”¨·J€è•ƒÈ v‰síW˜oüyì‘*˜*‘"©A‰tEµSb)»Èš‰È½p0"€1†Í°œ›qošÝoã(ë{ßM F><šæræ5ñ0ÎFoXeC ¢®*´4tÍDtå)ÊYlñDײ‚™sXÐÜŠ€/däTI8RšÆ 1ƶœµuKêúá²—.Ão£É ¾ëÀÛM@ªËØyâR?„”–¦‹ý*†‚<#Ü,–åÊzÃ9’9£YL†=”šð”?ÇègÚIïÄXqÇ £3”팒&Êj/ÐPâ†áÌR°ÃÍLjFÈ‹™Óø81¸H+P@ø¡g‰ÀJ¨Ø`IH`$Õ[¢, ÈÖ ’l_“1kcˆæ›0€ÉkÄЕ:ÎAݬi?E²¾óÀƬâ+²¡y‘1²ioÁ¢¬±L`âÛå1Ø0ÊÁ˜…Úþ);Î'›F¼0Àó7‘Ò¨dUW%nd|0剙¶”ªî‹;Ó£SFiƒÔÎrt‹ÊˆÓ·  á è¤i Óbð8@è¤%Ò¨oÏYŒÈa»»ww(¬$åüdö€uœ/˜&4EÜ”8Dá8iM¡`zÙºéz*ÌYº2@Æ@ðæØ¬ Þ ±O0 ë”%8hT‚èƒÊÏ:b=ê"³! «4ƒ\P72<¬é—m/~Li øž½LG€ç‚{D½S‡P·4jHAˆ„c¡bk@ ŠA$á­Y 8N‰»c…1(yu` ’ºiøXX-ª¡z1Å…Òm jy¨ÐUɄ꘤€HÔT‰±,,ÜiMÉt@;Þùzév€vjªŒh*Ù…ð„XPàŽ%rÂHI6MB…ç4Ô…$sÞ6£wJGZ÷„"àso.@˜«1BÃÖQAe*LSø t¡!|ËRJÚ§LõNÑ 3„¨½ñÒ\Þ¢ƒ:A®ú"|Qxe´.žižbø4/zåcêÊSžtú@ŒÓßÃÖzæÿK~°ŒKÙ8ÿIƒ¨«ž£Ý3úgR+Újà´«¯_`Ìó’ƒØ1ô…Y°'L eÞÁV²PrÈ@“yò(7Å5 w{r‚ ¦‡aΔk‰Æ à~:*¿@§«“§E¢¡üþ꿾êB…šgkè€öRú! †’€ñ… <ôT ÕÚ§éõ 3™‡5SWcÅ)ã…@`ÐÑ%$ã`4ÀæïšâtyúñöÙ$—@2”(ÑéS 랦ê81-°ˆ•[®ÃïÄêð<4 œ%¿íëÿh>õˆ[B?pŒD apœ4ý í õ΃ú[]`k`Œ ú+õMF@5 (æ…˜ò„îñ‹ "+©°=[¤;E(´€qa&QguÍCˆ’6áTËpà~aªA—D^Ó´°§¼hM*#òÏ‘úvz,!WØ“6ÚS¬Øl†7—çù·‰1{©6öÚ7Œuh€ês\ZV$pÁÑ« |ÃÀ|{:ÓtA;û†‚Ü&„”kÓ')ë¾B[J¬©_eÈí<"ñålöSµ ÊH› t[A^´UhsÅ Ÿq®&áePW(“7Ä*:7•‹`æ^pÖk$ÂŒ¦”£;2øÞÒ'©è‹ðFćt/ ‘{Û}ë=@ XÀ XpçD*¡è×j:ñª²Y¢;X¼£*;¿øgþ-ðiƈ¢Jc5`ü<ƒH¯¿= Q2*pÎxÖ5ŒI¢3%œ°z„ТÜÞ“âÚ1³÷Úç…xõ%3Ú59wÂfæa‡ )-çló~ÐN=ÁÂ4P‚0âG)¬îŽÏ¦ÞâœÍb_LÈð ëå ƒÚåw(ײ/!ó;^¬ƒYÓNóµ&ÄÁR5ØÛ@Öo£1Š‹öbܬXBR0—‚ŸÊ}ôÔ粚ÔéÐ2  «hš|Ô¦ûÇ•ñ­Ù«-m*z’À›0ÿ²™r4øaζúšGïjÒá‡zÍø»6•ÑFÜ\ÌX·—šª% æÓ º#Ý<÷@—'¬e~VnBÀ,ê[勞×õeç'æc òý»®¢;¸&¤ë.ó¡ùQ"ëäbwÚBƒèK‘ZñwÁØD€H]­"S}Œ.Æ«\‘Ëér-<ý-úŠŸ÷ *_0B`í!Ý2‹z 7ìb‹ƒTÚ¹èhfêžõ5ŽªQ#WÃDéCnƒŽ'"dÁcK]ò°€!*2Òh*]ƒWÖøÊgGãªÀwE `X‘¢l |-–Ρ›TV½ÿÄç»Ûo³8±9…Øwµ¦ñm-Ëû3=‡øP#?±ÁÃjPCž´P½‰·Q’ Ü“îžRX¥T4¹óË5Òˆ‰•$Ÿ€a™á­ºa¢j¿úþ”M^Èh{¹ Òµ8±–†4VTµ-jñ ÝÑœ;y _XZDˆäA² ;é·|ÐÄáTQ?,h`–§B#¬|ÝݬˆHÈÅ Þä>µå«Í½êœ2Ÿ‚è\¼µtÇØÉJdÔ ôèªwõ^MŽM-&ÖSÍéMÄEï #VÝ;EÛa·HÄ©Ù8Hîôï@œ&ßÊšî4ÚT€øª0T©«à‘iN”ýƒJÙl"áU‹™áUVJuJÐFˆ†Oå1‚‹3XÁMúÇb}%‘÷ŽœÈ¤|ë¤1Gú• 'U“¦ê’…$ $8hxÎ?¢;sÖ&¾ó6ÎìG3Æ©Ù'2œ½øŒ¿'BH.W@Uð#ºÇCõ$n2ô/ãÿôÝ‘[©eQK„¹D<ކdޏî³ë×ñ˜*¬é,¢A@Ðò÷àAL~úT¼0JÜ÷”°à<ÎD!cxgÁfɺÂÎOŽNH¶¾3hÏ‹ f4 ^ ‡€Î[)|˜fTÒDhjHpgåZ±âqÿ¶¤D!ù¢¬Iã1ÂÕGW*KSw“ÝÐF[°¤\=—TùKŒ€"J¦ËO7b¡g¤¨ ±*R4’sű¸.¶„`§ò È0yÀµÒîˆSÈHö}u—0 jh1˜;@• 0¾w*B’EðÇfP1豃Fi"Óýª l㾚̹„ƶÇl¬´óª%Ÿµ‚éW|÷Q«Õ$Û†C Ë’Àô„lÛÔ sÐ g[wŠ¢€ „]ÅÄp(£nè>M7WæÑ3îíO3WéÙLÀÝ„‘“ƒ±AxŒÝ‰ ÖÑg ȱØ\º3Á¥¡>UsºF¢æ~àÀ¯–’a«‚pÌÆG…=ÒåÖó‰öÐòtØ2ÔùlXFJâ¨Ö0õ ®³¶ºž`êÑÆo³P³sŸ¸ÖW}n­_QvÓ0H]hHfLò¬Ø5"ÐÙáD,Ob•ŸÉœ¢Ê£Ws“ñ*A qs C4W¢9Êù c"CIxhK1²¯M¼ðMpDúÇîƒ ²[…`CÊEÊ1 äuŽþ {Äo,iÑ×bÑüøð¢Î‹ÖjXvÚ :ñ²c’ú}IäZˆs]$0HšXTKn D…·z/ SÁ‹ŠA׬BÂ\íˆu~œ8^Ô¤U †ÉðEÏJ”¸ ‡•¤lµD÷»Y§°ñs ­4 ÉÆg”ÔG†ÌžÁ& B|M­ôxrâ´Ã*ñ0è()8Ia‚P 60µÁ-’ÁD¨Õi6´H > endobj 572 0 obj << /D [801 0 R /XYZ 124.337 485.28 null] >> endobj 134 0 obj << /D [801 0 R /XYZ 68.868 243.561 null] >> endobj 800 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /XObject << /Im8 799 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 808 0 obj << /Length 2001 /Filter /FlateDecode >> stream xÚ­XÝ“œ6ß¿‚Ú—cª<Iˆ»º‡\»’J\¾ó^݇“J±Œf ËÀ˜Œ÷¿O·ºÅ‹·œTžPK­V«õë/Bïà…Þ››¿ÿ¸»yùZ*Oˆ ÓZzw{/Nƒ4N½$‘&ÞÝÎûàë@b³Bjÿ®4›­J´4}I£ËF ?¯k¢~ ET3ϾíŽù°ùéî»—¯E2=&ô¶R"æÞ·›­L”¿Ï;\62ñ ˉ_'3mS?ÒèÜ›NuÞLv§¨QOdÕà7òÛóFøûêˆLç:ª¶éƒÍ6©ÿnMÈ  ÓÈ¿GøØ¡4³í Þ¸©PÌ ¼*ÞMDAÅt·¼CkèÔ`N¤£Ìª…óµiCù‰Ø?æUs`†vlŒ‹sÍôÐÒwr>âÔµ÷µ9öÌWæIêÌÇsåô(Úã©6Ÿˆp·\Ó¼/ó^Ò7 0ŠS¿íð›MíK¤]K"ʶ6hÎ4ý,Fp§}O·]_´u ÍeÅë|"îÏ ¬%ñŒ¾®%ê0 péØÂÚô š®`ïZ` €‰ %Ù.L  ަ±Rxª!kÖd ¿yÿø~ûÎ^£ªÂB˜€=mÏé3 ƪ¼9ØgÙÑ$; ð_]bim«Y9@¢N•)Ì¥ê™ìÍÁ)ÝÓL»§oNghÔ:Mý7¦1½ÇœìD¢n†…9óÝÓ»³F­Óf(»ö|€–k78¶=¾”þ×_½ÂôOyÊ>l4hx°8‚ezQX†G>CéœÖëjjCc{¡¶{ „Œ\ˆ ”„XZE†a–¡d +/‡ÓöMVnA/®¾B{(8ãSŽ€A"q¯ £1Ø bçúÒ¢ûÒ‰–„ýu‹º]ˆuŽ„‹9‹¿ýþÖmv.·£8AƒZ+Åm»*À.®Ò1bâì¥Zwè³}sÔeB6‰3 îBѦøÊEAcÆpß—¯•ZÆó$PÇó;ëµYSB½Ú¾mw-"?¶,l@ÎŒ-„„Ê ¿Zè‘Üê`\±# °ÄÑŠó f_ B/D°’åU„Žï UèFNìÚ}y]=/ÂÍ­HˆXB4— ‡š×õó"ÜJØò£H¨21¾+_#ú‚w›}$ÖÔ f±Ø¤Ÿ{›ðz·Ù¦è¹×˜©E|Ý´¬V`…Éâè:2å8#9FœO‚@] Ì‘¼Øüˆ£œx9Ø©Òä;ÓÑÁs·’Œ“.ñÄ­–:FY …vœÉYLþÇÙÈx¶yC{G ù~X?:Ó¾ž<:íÊÉÛ(Œ%ÓEñÀq¬Àâ%²v7ãØˆdżq5P Ÿ]^MûÛÊò ¼ß|ª0Çອê(•±8z˜Ú·uÍq(ÅõûÉa¼)Z¨Ypª”œ*‘µn)4R5°†)›Te<&Uà~¢ü5êÆ.ê& ‚/°pf˜Ò™ß¾"?|u>)”Þåšû/Ñÿ#êÿ«ˆN­3™M­T¼\øhèuÿzsã}°lÙ ×  פ„3ôÜ®Ú.žfëªy‹T4tÓ+SÁ”k´+f®î?3€$(„Ÿ§esOc÷Šüwð”×v,'ó |¹”\¨I?-¹Ÿþ7½ðzGÝiÑ ß²=ÁóÁ’õGêµu‹¼¢±sÊu._ÒxÏzke›0;Ȧî+GÍ_Âí>¶b«ñWrr‚öZ§Ó|åÖé3–Ð0.@,¸ÒJ€QŒG.vìë¶í°» ŽTÄ/¯™d7ÇlÀÓ±òÿ³„7EŸÉ*›C©£`§ƒô¼Ül ˜šXƒ"<"¹%*'æù¯škÁ8ÐýbŠ pÆÁ´(_Áqá<9ºüàÜçê [€÷C[þjªüDD:^tEUmÞæØ©#ÔÿN追Ãíêï4Õg6þŒk?_Àz·§s0­Ä³ o“N3ØõWÛo€ï]±¤–¹b9æ«QÅ•c´U2Çi+{µA‚þBá{þކô—zj°ïÀŒ¶ßÓ‘Ã ´æc&Ð[ŸfÒ‡k c˜ ÁA¶Rä\±ˆöÜábàˆ1WìhÀN-G7–#p1ú'¡ÿËÙæNÜÔOxÛ®¥/5®0pÛ¦’ðO‰Ž¤ÿ½þÂ2†…öhfX›{t‡G›]eSâJûÖž×kbÌØ×*¢nO”‡¾¹»ùÈÉHxBB¼…ò5 (L‹ã͇ŸBoKpŠÅËÅ2=Änª½÷7ÿ¤¢óãäûG:¤”Û }WÑ»==7n)ÿŒs“4ÐP™LϽX+Ÿ?T!Æz½/ºêÄ¡…ÂQq ^­0³P3ÔÚfg_G&œTìdÇ1Î6/“ˆö4ü̓§Sh ¡aRpiÅÊGáŒÌö½É£¹ endstream endobj 807 0 obj << /Type /Page /Contents 808 0 R /Resources 806 0 R /MediaBox [0 0 595.276 841.89] /Parent 789 0 R /Annots [ 804 0 R ] >> endobj 804 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [331.314 310.388 339.16 323.007] /A << /S /GoTo /D (figure.9) >> >> endobj 809 0 obj << /D [807 0 R /XYZ 33.853 921.043 null] >> endobj 138 0 obj << /D [807 0 R /XYZ 68.868 798.142 null] >> endobj 142 0 obj << /D [807 0 R /XYZ 68.868 245.506 null] >> endobj 806 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 812 0 obj << /Length 1921 /Filter /FlateDecode >> stream xÚ½k“Û4ðûý |q¢êéG>ð:¦00Pn¦”R:n¢$æü¶Ó£ÿž]­ìD‰Z¸›;K«ÝÕj_Ú¶¾¾âoø øÏ#‰,e‰Ê¢Äp¦­ê«?®83©N”C9ÃâH§XÎ%þ˜€|¨Tº‰4é|ð¨Î£/Û«áwÄ_žpùñB´å(ÛòD¸Ïo®\‹4‚åÆÈèf “0™‹(Š `w³ŽžÅ×åöÐÙÅRÉ$Î.–Z™ø§ýb)³Ø®Ê_¹Ð«…ˆ‹¡lDJãvCȵíw4jZ‡¾¶=Í7mGƒ»àU5¢uuQõ‹ç7ßÜ«íh™‚lÂÀ‰5“ÜŒ‚Dѳ¥ÎyüØ‚`ûªX¡ôi;7ÈcøÐu¶Áí$}p­T  )˜2¨?ÇSµ ²Ã 5¦ “ÙˆurØm…‡NáÐ4½+‡] F/F‹d¯ðŸ¥ÜtŶe%-}ËzOºáȤƒkÁ’Tã€iíµt4H¨÷²é[¬Ïtˆ¤9xÝR ž ùfEg¹?a'9Ѳ”4±]±òÀm×ösVÔ+/­põÕÍI¬(™³,7‘ÑœIí|ûÙs­añ:•gÑC­!Ö’ɪè'áŽJ)f²ÄñâZѾ/ÛfÝßc}í¢ŽÌOβãù7mU9óÞ•Ív^Î\2å,3Æ›+!~¤–Ó€IgLØ?œ—óƒqÉÀGˆw_ÖlÕÙb°šI–¯iC#tü+7܉&2¦M öýãvøª*ú¡\Ýtåw Ò]Ý¿aSÔÑLü)aàLúŽñ¢³{[U|ìˆyH‡§þÞÓj¢5žö®½¸+î#¥œòm@)‡û×>XNEõ±ç3«I¸z}´ÜìJÌx©rVÏ¿àhàTÆd \Ч j›e×.¹-ižè.ã 0†]1Ð2(Õ%[yÖû¢[Ω V”ó‘\ñ¸.nQlK³UK›ÁV„è^ŽÞ?óÉ??¦Û÷>”|M8¿zϪ*oÇÈ!£4E²cpi?Yd"¶s' ²£æ!%Ê‚£ÁA ž º”æÀí¡£Á®Ý{=y@ï HÅ:Âi] <¯ «mª×¶–ÿUYø½Q5ˆµk+K ² ÷G:D¯CÝ¡öý¡aäí–V›ëxÝ` _ƒÑK/Ž‹õ¼ˆ’L7];ec\mÖ4èÊíÎ9è´/åÏÚoÑ€WGcH ˆt¨œo¢‘y~~°Ñ"ëu9Vd Ìdt\Tv3Јĵ—Å ¥¹¥Ù¨…ž¦ÀήNjËó$^i¼ï쫲=ø2ÃþYÔûÊ>|‹{MÍÞkŸö–P²¡CêD£Ž»5 7(Î*º±WÃ~ÝùMṙ®eXjA£e2Þ?½Ž?Y,E’ÆO!MM“_f/ž„e|"vÙ2›¤'ݦfnW ãtŸÌ±†WëcVtW•z#iNâ9¥¹„áÔCÊÎ4vQé”lý¢Ý‚s½¢ DפNY.e7?/×egWGÃÓ—ÌbÐd*þmîYÂD2IØÌA@åÞáQ>Eûf'ÖT<@NXž¦G{p>Ç2‡âzâ(þ½j߇yt`ücTÚû;ë¬HÄ f,©jõÑ{ÛP}ãu_ôÇèž+«3ÍD:íig¸,è´ÉXªóH¦)KápïRÐA³®âX鋬æô !áS5^k®XÝX7ôßä ºÈð³›Æy¾S6£ÙYâ@’VîO)yö‡6®Ãn:»+4[¹þÓxé@'>o€V¼B§¼¡å €QÞÀÅ1o¤SÞ€®Wõƒké—“743G ïÏÙLÞ˜Õ‰”,Sâ?Pl˜Ÿo—žÞ6-`y1NÞ_fÀBe63€óƒ!¥Ê Õ;fè¹Dîx%©z·Ô ™4§ŸeÌljxÔô»u© lYPuƒO€î®íf•“' ádš“öëÉ=âæ† 1¹Õ£ó&÷Âf»öj7i°ˆµ´àzMX¬ÂÒxG3|ÕÁ¯ 3”¾±w™ªÅ‹„\0;H˜É¬V®Klv¨1ÊWWnå/„º¢pW4[Ks/ 4<Åvëj\„’ j\Õ§¥;Âýù4”èý¡¨Ê’…ë´<ö¡ó*½íÑù¡Æþ‚6um­/ƒæ‰ÊOs”þô[x¬ƒ‡vmíIÇrJXÀ¼¬b=ZT¼&|að¯sÁÎ!ÍLß±¹Ê‡±çë£~ òU[¹ÆéDŒ =:æi\ù6 K¸®ŸeâN¼žÒgÊÎÿìÃûÙ‡Øù¸nEÃ$EÒ!‚_ìaÄØÂÈE>à5Œ€Â“”µ}_øp²9R ;ð¢(=Ǫx ›¸Ó» 6ô…ÓÏps¾é„öï0#—­mC{ÔÖŸWè««Û“Æ^>·xË®l3táƒË~϶vø¡í¼’¦GŽ31ž4Äæ™xØáâÞÃwYÈ¿K%7>jÐ@.ÿ <Ôºn endstream endobj 811 0 obj << /Type /Page /Contents 812 0 R /Resources 810 0 R /MediaBox [0 0 595.276 841.89] /Parent 789 0 R >> endobj 805 0 obj << /Type /XObject /Subtype /Image /Width 372 /Height 257 /BitsPerComponent 8 /Length 9358 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFHHÿþCreated with GIMPÿÛC  !"$"$ÿÛCÿÀt"ÿÄ ÿÄJ !1"Að #(7v´2Qaq39Rr³'BSV%46CDUWc¥Ód•ÒÿÄÿÄÿÚ ?²Ñ'Ó-i£Ì53%Áë,rYê-W º* ‡Ôõc¹{,œ&ãî7‹Ú‹7wgï¿daœ3öØtÛÊý1Á|öÿhÿòL.ŸáË—/á·ÅdþºaÞ{ä[,>oϧìc´rþÏO—-ÿ†È3ȰÕ9f+Ku}ª§%³CpŽ¢WÒÉ]flÓ áŒ°»p÷ŽínÛ¸zn¼Õ™ÞF\ڼ˧-«}„·8[µC6ç ÝßÒ7q»}FãqÝċܣv@1ÖäVƒy-ä-â¶?iÛm÷éoËm»úz&G”c8Ó"~G‘Z,͘‘«ëc§Û×ndoþ2è¹Ö¹ê F¢—\÷’×s’˜S:•ò54­’¦(‰Þ7Cg¶w¨ÉtT\Ôìó)¹d±csi«¢±_ªì¯ž«%0>Y pá‚™ÛÓ¶çmÈï¶ëzÆo í••¹¥’׊sɦ¿µFcr÷=ÑF·øÿ4,69–b¹$“GŽäÖ[ÃàÊÚ è§1ÿx1Çoñ_ÍÃ/Äí÷¨ì•ùE’’ë):)ëâdï'Óh˹ÿ’ Ú-rºýcQK_’c”¶Úk3«ç¢šN±ÈCªœã'Ó‚ÒK;8{à¿H³l2[•%²,ºÁ%uc%-3nP™gcÀsÆrÝÁÀ‚pFÈ3è±¹AaÇiY^í¶Šg¿ƒf®ªd s¿psÈÿýZï¶K­UM%®ñn®¨¥dRTEMRÉ eo(œðÒKCÛݤúŽãtZv¨gR*<¯Ûþ°dt–?úÇK¡×û_Ùw.¡·MQ_Sr›'«ªh²VÔKÉÏ“ö˜æ00‚#±.“S£:mQCMK6:çjŸjЧÛêEP—F IÕwºØ¸‡¢ýo:?§‹ÍMÚáŒÅ%EdÂz¸ÛS4tõ2üå¯HwËšwø âš mîÔl±Öš‡TÛ΄ÕI#¤2EÖ“ƒ‹ÝÛ·c¹î}Wñ©˜ÝŠÑàNÓu·Ú© ¸ÓÛ,ÕñU¶!ÖmD’Ós“Ÿ¯#ÍÃ×Ðíè¨+ΈÞ.õ×[…²ÖWXß`¨{g‘ôqs¡ kƒ[ÝÇÞ8| þ¯8&+xÓøð+«¯ŽGO3hý¢Ví†&ókƒýÓ;òÜíß}Êu‘ÒQÝüaÙh/”ðÕÑQáSUÛb¨`{SªÃ$sAí˦ø,‡Ê=·Ä&¶ÐØY tTZc‹n¼Ã1‘°åãaé¶ß´k–-Y}¹ãõñ`T¹m5 ¥êˆ.Ž·Ü©‹€ÙÐL$¥‡mœÒá¿o_‡Ÿ@p;ž3}Ì2‹Ž—úÁ5#)lðNÙ%=4F6½¾ë¤ysœí‰îwÜ’Py|T¹´öÝ;ºÎDtVÜúÕU[;»2A‘¥î?‚öÿŠÚŠž²±õÕõRÎé'xh{Ë¥s¹ oÇnßÄ œp›>;qðC“ßoÔTO½ÔÓ^*îrÆÞ¿·¶i„d¼ûÁÛˆÀüŠïzø!þ[·~š5ä¯Ñ­5®¸Ü«ªqˆÜû›¤}dMª°K#ÁÂ#÷æpwî· ®‚Çc ²Zàöz }4t´±ssºqFÐÖ7wNÍnI?½µ¿Ÿæ˜¾Ž¿ ˯Ú­Í•°‰dkžç½ÞŒc žîÄìÐH q= 6¨åú•…b—fÚ/W—2âbëJZIªædÛs!cÜÆÿGuÏOµR£Ø1šêÖ]™Lú©­Õ”ŽXbl‚2ç8oܹ„¼œ= gr{mÂÃæY ‰ÚnYÖX…yª­4fGšÇ†?‘oºÐßtlOq·pÍâ¹ “)±Á{Ç®t÷+u@=9àví$ˆ?AìAØŠÊ.EáM”C½MÓù­FI_5òšH"Šà^:°1Î÷v!Çpwí¾Ã® """ """ """ """ """ """ """ """ ç÷}J ·ëÝK¦)®vJ‹ƒd|.=IDƒ¥Ó°û8jÜîMÝgnH=|À͵^iüQUê­­ýxiolš”R>J_k£ƒŒLi.ÝÍêÀÀ¸ÿ}Û·cÅ}?@DDD@DD\çYu§ÒˆbfOpšKD]j{e]Z™YÌ4¿bCXÞä‚÷4;ƒÃy¡­JÕÝRñ•Rb¶Êi ¤¬”ÁG`¶HñãŸQ®¨q Jæ†4—»‹#/ g¼HQšãâóÆážÓ§-‡$½2PÇVK¼º àð×LïtlYîðàó·3a˜°x‰Èª¯Æªk›c”ÃQx»T–SS“ÎQ †îîÑÄÂÔná­p+¿ø|ð‡Kjš—#ÕGC]]±ÏOe‚A%3G ËjIoÚ8˜26U0DG-â݆Û#oEãxõƒ¡}9c¶Y©$”Ìø()Ož@å¬lÖýv÷ É¢""àõ⇠Óï2°Xõƒ,¦çB6Ÿd¤œqí<›Ž[r;²>G“ÇÏp³*¿Ù±lv·!Èn0Û­t1uj*%>ë îq$Ð q IF~ ü^U]aªÇ4­³PÐËT^§ŒÇRãÏ`ê`öm,ßxçö›˜ åŸí—Åqÿ™{÷iè-PË/Ïöå{bÿ‡jÿBü2àúiPÛ½k¾´_ÛÄÇY]LÁ3›!{_>÷Mý™ï—9À³v–‡B`Ñ? 9î¨WRe¹tóZq댢²z꩹×Üò÷9ñ4ò<œ@=IvHÑ ìnm/Ó¬GM±Ø¬¸¥¦Vˆ˜ÊŠ²ÆššÂÞD>iîÝï#àÞD45»¶"" €>Ž/ÆûÏå¹ÿSL¯õ}_÷ŸËsþ¦™_舀ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ‚Ñ¿ë ®üÉ}ÿ.­_êÑ¿ë ®üÉ}ÿ.­_5õt´5ÕÕ0ÒÒSDé§ži#‰¹îqìÖ€ $ö ý–™«:Ÿ†é}Ž;¦]töohæÚ:X˜d¨«{ȶ6ðœZÀ\Ðç7SžºxÅ §§u£IcöÊ—rl·šêW6(Úc"qsÃë#CAn/Üqý+ÑmKñ‘Tf¹ Æj;]ÆY_Q­ŒHéäfÍ †æ—4˜6ãCÐw`an¶x–ÏuBº¯Ä`šÓ\e4pPÒÃξàÇ–5¬•ÑäâéŰ"BÇsÐ4;ÁÄ“ÃëUꦥp”‘b¢•…Ä5íÛ­; ‡ðY}œÒ$k·h¤´wGð}+µû63mçZþbk¥`d•³5αҘ8³f4û ì\K@Aâ²ZmV;\6»%²ŠÙA.•- †(ù8¸ñc@wNÃÔ’½¨ˆˆ€ˆˆ £‹ñ¾óùnÔÓ+ý@Gã}çòÜÿ©¦Wú" """ """ """ """ """ """ """ "",6e•ãxmŽKÞSz¢´PG¸êÔÈÍÁ®wW¼µ®!Çc°*&Ö/–gtú·¥t•¶Z ÎñJ)ÃîµR=¥…Œâ\#ÝϽ=äÝÁã—4yÅ.œxÃÉóJÊ«â¶ä²Úhœé^ÿi.?²ÞonîØ7 8‹$ʵ¿Ä½å–ºkt×:J9DÌ·Û`PR<Æ@|’=Û8G',„îçµ›râµÓú\×\-Z”¶çmŠyj¡¬d@CS á‚Wð"F»‹ƒã‚ÝýGb¾œá¸¦7†Øã²bÖZ+E{•4a¼ÜÖóyõ{ËZÐ^â\v’ƒƒhw„¼Gš Ök49eàDA¤–¦Ý sѼ3šz€=ûM®h"’D@DDD@DDDA}_÷ŸËsþ¦™_êú8¿ï?–çýM2¿Ð'«þ-ï5z£iŸ|Ðâv:æË#ÙIzvÈ$äÓÓ‰Ì. inà‘!Ã]Šf×ïXÞ!Õ²i÷±dׯôœky m±5Û—q¼_Lj٤4sîíØæ)ç?ÕÍ`ñ v~bµÌ-sÊÙdµD\Þ]™%LǹkL‘‡9Å‘Ö;‹HÝw?ž,Ö8irOd7›£âŽVY¿ðÔRòÚG5ÛT;`ÐZGO»ÆÒ×àØ–žk/ˆì¾Ÿ&¾Ë[%Ý8&¿×BØ©á¥àˆ#D›9"sw¾[ȹYš X>”Ó¶¦ŠŸÎ/îâé.õÑ0˺eŽ ¾Å‡“û\CösœÛ©ÐRRÐPÓÐÐÓCKIMa‚c Ž&4lÖ5£³ZØ¿dÿXewæKïùujÿPÿXewæKïùujÿ@DDD@DDD@_}]- EuuL4´”Ñ:içš@ÈâcFî{œ{5 I=€ ö\OÆÖ_&%áþîÊgÍ]òVYá|q±íh”9Ò‡òôk¡Žfî ¹»mû@%ÿ£ÎéAo×¹é+'éMs²TRÑ·ƒRQ$SîÃìá‘Û‡»·©ý _ plšë†åö¬¦É7J¾ÙRʈ·sƒ_±ïøKÝÚàÝ®#⾸خ”Ëî×?´P\)£ª¥—ƒ›ÔŠF‡1Û87ibýè=¨ˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€¼W»µªÇkšé{¹Ñ[( ãÕª¬°Å'ŽOqnâÜú×OX>šT:ÑDß­öòQÐÔ°ELæÈæO7½Ógû®p,ÙÁ¡À™ôšßâw*йôÓ\))¥|1NcÖËk\ö—°;й¢F9œÆ·~|B çÅ7Š®–¹°Í;umŽnqÜ®2·¥-s9ôãîÈ\Ð .ÙïâZÐ9ãžU”{GÕœjõ{ön>ÑåÔ2Ôt¹oÇ—ž;ñvÛúìrú£¾tãµÿÓvÚ,Âñ'6Ë[s£‹ƒœltî/c6 ñäýËýà×qͳàKÔ¬ Ω2Ü7Êì÷Šhk©«e–µ •½„2FÝæ÷›!w6–8q‘ʦD@DDÿXewæKïùujÿ_3j~½ÿ­öKþ?ígÖK¿°AýºŽ§ôÿgýSö¿Ã¾Ë¬ß®ž7lv:ûÝÒg ·ÓIUU/ ;ºqFÒç»f‚NÍì?¹²‹‰ø2ÔL£Rtšªï—UCYq£»ÍD*c±:Vâµ€7ê–û¡£f·pNäöÄD@DDD@\Ï]4SÖ'úÍp½RyG_Ùüºh™Ë«ÓåËœoßn“vÛoSëð鈃æ?„Ý/°j΢Ü1ÌŽ²çKIMh’µ ‘Œ½³BÀ {8í#¾îuôcN±Z\# ¶b”7Æ’Û† î3‰gáÈ–°¸5£‹A hÖ´|Aôq~7Þ-Ïúše """ """ """ """ """ ""/ƾ®–‚†¢ºº¦ZJh4óÍ dq1£w=Î=šÐ$žÀ)ë׋ëU£Ì±½4§ó+“9Óùä…¦’û¿i{õöÞ@ ¸³“ZáÕaî6¨ê.#¦Øì·¬®í +DO}= {MMaoY d‚÷nöðo \ZÝȉµ£Än{«õÒaz{h¹Û¬õ±MNú 8ý¢¾æÍˉ—1½6{ÑÆHØÈç´ìN.Ýð™É«©3=Z¹MOd¢¶{Sœ÷WÕ—¹Â¦BA…Î<v.yp&7Àh×¼ÇZüMeóX,¬­†Á-KZmôÅÌ·ÐDâÃW+[ö›tyƒ&ä¹®é´¨Í ð£†á”í¸æÑQe×Çqplð“EK¼e¯cbq"oyÎ÷äoÁ„1„{Î+`³bØí=[¡·ZèbéSÓÄ=ÖRI=ÜâI%Ä’âI$’JÉ """ """ """ """ """ ""èâüo¼þ[Ÿõ4ÊÿPÑÅøßyü·?êi•þ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€‹FÕmZÀ´Ê„Í•ßa‚­Ñu ·Cöµsž[Æ!Ü5Æ74=ÜY˱pQ6­:Á¯yñl*Ýs µÔÄÖ:Ëj½Îaû'¾¦ 5¤Äã.ÎåÆ 9 Ç"¸ø´Äpé§²áPÖ^@ЏªmЗ1Äo# 39§¦K°!Äuæ'œ7Ö¿×Èïyæ´YâÙͺÜãs)ÒæÇ ¤… söˆ—´º?}Íq÷- ðƒbÆêyÔšŠ,–½¼] ºñEÛ!ps‰âgÝ¡žëšÖ Þ _¸"¦AÌô/E0Ý%µ·É©}®ù53`¯»ÎV£gÖ’DLå·¸ßPÖr/-]1ôq~7Þ-Ïúše¨èâüo¼þ[Ÿõ4Êÿ@DDD@DDD@DDD@D\O\|IàZm ô4u0äÙRˆÝk¢¨Ù±÷5ýiƒ\ØÜÞß¹níò×ïwkUŽ×5Ò÷s¢¶PAÇ«UY;aŠ>N žâÝĹõ )_¼`ÿKbÒ3ÿ Ç!žæç²*yYýÖ—È?¶?eë–QC®¾(²'2Z¹¤³Å,”>šÏDönàÁÁ¤:P& Ÿ/ŽD´ C¼<àZW4j8f»älˆ±×ZÓï0¹kÄ1v6±÷žÜÒòÈ&ÍðÇœj]Óë~®\¯VÊ*Žm‘•’¼Þ*\Ɔ0»¬×tÙÛ`_»ˆŒÞ.kÅ¥€ax¾޳Älðڭ͕ӣsžç½Þ¯{ÞKžîÀnâH h€`DD@DDD@DDD@EÎp­sÒ\Æ¸ÐØs›d•fXᎠ®t’Lù dM¬2¸‘¶ÌÜ‚Fþ£~Œ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ‚ú8¿ï?–çýM2¿Ôôq~7Þ-Ïúše """ """ ""ã‡S3‘­X~1[‰ÑÙqÌ×Bk$/¸H)aêuKXî5ÅÍÙ§›ˆ~=—c\#TrLvo7W úÕ%=;oy[Yd\©# äwØn{ ýPf> endobj 573 0 obj << /D [811 0 R /XYZ 207.503 627.548 null] >> endobj 814 0 obj << /D [811 0 R /XYZ 68.868 590.853 null] >> endobj 815 0 obj << /D [811 0 R /XYZ 68.868 559.47 null] >> endobj 816 0 obj << /D [811 0 R /XYZ 68.868 309.076 null] >> endobj 817 0 obj << /D [811 0 R /XYZ 68.868 269.557 null] >> endobj 818 0 obj << /D [811 0 R /XYZ 68.868 230.703 null] >> endobj 819 0 obj << /D [811 0 R /XYZ 68.868 206.959 null] >> endobj 810 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R >> /XObject << /Im9 805 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 825 0 obj << /Length 2177 /Filter /FlateDecode >> stream xÚ¥ÙŽÜÆñ}¿‚@„h(Þ‡ PbË–ŸlkÀPüÐKö ñ±IíÎß§®æ#*zXVWUWW×Ýã;gÇw~|ð¿ñ à¿ïNè'^;Ixy˜8e÷ðéÁ÷âÈÏ"âXÃ@´Û"¯ðCF}Z¾EÄAL‹8+,òõ».ð_áÏn8®Äüú…jGÑí¸Rî¯ß™^‘$¡óxr2P1O$‰½8MœÇÊùà¾mÎó¨Ç(LÝÀÿîpŒ£Äýi¸\Ç0wõÈ”ûA2ÂÌ}æõlšþÌ ÂOævÚÔŒxRFä5=Ó>Íjœ¬(sí:=W+8ñOãÐþxüùõÛ(Z«¥%xGÒ´¥@0>üð¸²eœp­Œ®•¦t÷øNÄŸÁ)Q‘;ÏÄÚ/Ò·µÎ{°"Yh{dœE^å[ÚáÙ»\YÅ­EãÈóÓØj— H¿ûº?æ…—&¡Ç)ooN‡c$d“¦ŸðsÜßÿ“\"ý?!b¾Ã£œ ÷â$uŽA|t¹xFOêŒ"»;vÿÄ»[uEg †Ô…Í;BtkôÎÉÎáÿ:"üú¦é¼rÔjÒ¿@€4e«QÚåò…8UU¼¾£§±S-8·jj†ž ÃÓt9í9nÑ'L½"ÌXŸG”%¡ÛkŒó$p'u>s¤¶„ã š+aznÚváb”UÏXŽ©fŽ¡—MɿӲë3j`DÕ@ŽEzÔ=R&áRgó Áœs P­ÂM×%§Y„¢ý­ué™ìÌØJ|F 5U-c~?VÍ–Ãy`9 ¿1LéPØ ]1ꉬ OèQ·4Yy…Î¥*U¿Ù‹ÙXI bOq¬(E?ã–¢î‰Ap1*nªu5¸œDù4÷€§›¸J ¶×3iªÃ’õ‹ê.¤n!N¸&ã~^aDY€n¡€‹aOñ¦²Ö:]ñÆÛ¦o¦Í‹–©”H 3Ž $­"ˆ·ÝÉÙú1kÏÅAAÜÈæN}$n+kâ¯V¦Ñ»†GHyç †ëÏ™UÛØºÎ‘ti 9·…Œ£ÖyKôÏèI¼ÌǼ ½j;ûÏ¡?j’Ô¥ˆO#ŽñaÆPIï=“$n¿ô# wª´â¤L%Óö©["Ae„20A8Nðܵ¢FýiãVÂ50¶’]Jî“Á=Š­knŸµÏ°ð7í3Ì×AlFîosÏÔ+•…Yö®ª.U_m¸kêan… _äðrâ ·¦Ø% †ù(¶`-ö-n©ãY&”ß~|p>OàoúÜÑÛ  wâÿ~˜^qDŒúd?çÌ}+Ì2è ßìñAy ôå(̽0ÿ¯ä™Eù ê›-L¢ 4©ûÆHXnªæåëæC+¼Ù·Ø.ór?ß¶Ö7æÞÁ°Xâ?Çø§Òº…´³"Ÿ‘R@D¨Q˜80$)>Os+6®0VõKóÔÊÖôçÙÊ¡2ßÞõ¯ï¿ ”¥ú#eªÕôõÌÕ–´ ˆíä@)~ᵩ•Ä®ai…@Ã…UŠk;bsÎI ÞúK°I.]anE‘û}cÊŽ‚}ð¯A§™›“€ÎæY+G?ÝŒÅu‡BÚÇÖÙÖ½“s ÔJ° {ô¹´ØÝc.ø†ÑÛŠ†¹…îyÉ­!²)A£6s;‘„\8»/7Ù¶ÜÀººöªkJ9ËÁ³õÒòë)$£)$+ã—ÔˆbÄàMZé€}ÆN¨+£™Úë!\ša¢[«‹74 豓YÈ ]·X*ùRiDÐ4hZWïö³NW¢Æ—¶ÈU¾7PÙá|Ý—RêoÍ‚¹b×rË¥:MÉ éâ¬[0ßï’×s`²Èª›sMÕ0Á™Uõ¶Í@¸œë_÷n± –œö±È FrÕ'O!fÚ–¡UøŽ‚é…Y€û2Œ Ͼˆóh¸… D[ÝQÄÓÜ~dèfä±Ñ¹¾Dr«›!\»H}€NØ^—8C ŒÇzh¹QÁ§üš ÊÆ {âïzöÀµ‡™jX"bž§VOtÅ@®ˆ5\RXï³sw®“„c±<2 ƒ)‚Š?Ö"à/Ù%Õ™GÍœÚp/•Î$VdN ÞRWFCÊÅÒ3c% r¼¤?ñº„€P£÷nw›†#8ñËe€Ë¨?7 „°28jð=ƒ) …‚“æp v`á¡p°n¯²¯m*¨Ú¦èõ!ò“2ÎãI•–Õ,|£þšcâ<ÆY¾¦Öj|m]€e±Ðe¤ñõK¼!~’]¤wMÌ\ø¹T¤ó‹!Žt„2â”eª0O\Õáݼžà(ªá©”.û0j£uýpñìf¢Æ%ÚS:šÒ¹AL•±=C3+§Ã’}Va4oÃå™â))åŽéÖÈvÔßΰü»wEšDqÙôe;£ßq±ñ ­±—`°ž˜ÝGB˜Ò*)Àd1¼ì& #ÛùÁ¼S”V¿b-Oéú}u#i~9ô VEûÃê>ÊÈ0—ôHXýâ%âÒUráOe_ŒOœ! ¨±Å)Mœ e{~$†þt ¿`&dðèÑ/Óß÷¦TŸ^TAºü’A=ìQbX€1ø÷7@Ô”Uiø•K‡b:‘gròÓ2^ š%ðñ¯$€QNdr3â"¢•°qÓ¤×Ú ‹ÃÉ^´M=¸á£á!ŒÃûÿ`"xyÂúîð4)xt³} j„VÓ.—0Æ„öÞZ-0 !xqƬ¨®Á"|Ä÷4³™ðÃÐ÷І߰ðò<ç;Äᆠ8ÿõáû endstream endobj 824 0 obj << /Type /Page /Contents 825 0 R /Resources 823 0 R /MediaBox [0 0 595.276 841.89] /Parent 789 0 R /Annots [ 820 0 R 821 0 R ] >> endobj 822 0 obj << /Type /XObject /Subtype /Image /Width 414 /Height 479 /BitsPerComponent 8 /Length 42113 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFHHÿþCreated with GIMPÿÛC  !"$"$ÿÛCÿÀßž"ÿÄ ÿÄV !1"AQ29UaqvÔ ‘–¡²´#7BV”¥ÁÓð±Ñá$3Rbñ%5Cr’£³DEStu‚“ÿÄÿÄ5!1AQa"2q‘¡#±Ááð4BRÑ3ÿÚ ?rÉ™µ¢<† ööWr¶÷}òÞ¶,öí'm6ž:% Ò©¦¢´ÚZijJ”¶n²`ºûlMè½€üZtÉóŽÙýsoÞk2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢ã¾‹N™>qÛ?®mûÍ~ Æ÷ûŒo {¿Ãö×lŸÚVä¿pÿÄŽ$‡Y .§ˆ§B:¼5þµ´&â€ôòŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠIºïCmðÝôâ°Û©XÎ9ˆb\Š·q ar?&;¹ u)8^b’R¤Ž¨=m)Ù…Ú@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿEPQ@QEQEEPQ@QEQEEPQ@QER¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%ÐýQ@QEQEEPQ@QEQEEPQ@QEQEEPæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿEPQ@QEQEEPQq@PHPQ@QEQEEP ›ò…Ïö“û’éÿ¤s~P¹þÒc¿r]ÿÑEEPQ@QEQEôE\P\Q@QEÇx  (¸ï¢€(¢Š¢Š(Š(  ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þŠ(½QEEPQ@ø=ÜoOd6óÇ0üÃÞ œäpÚ&¶â¤´„·y(JMË%N…rºyë_º7¿-)v݃=²»ÞnnÆ ¦ñƒˆ²¬2; ©o6ŽR„‡„eI²ìT˥ͨ#ŠÕ¿æ£ÿ˜Wà6¯x”}¹VÅlv̈±¨ðÓ:yzx‰k%-…¹‘d­V6HO-M…sïðÖÂjGE¬[Ñÿ…ûÏÛ_w7‡Ò‹zÑ¥«#øŒ\ ®ka¶ÒÔ›ö46í4êöx¸fÐàØÄœ^8ÙÉØ µDÆbN‹Dp xº%M¨R½¯ÐlÞÕl¾ÒÛIƒã!›q|sr2ñdQ·ÏKf;²­mîôwž¨8þ‡[iðC† @%q1 Т,;Æî8€•€¤‹ž¨6¯Ül¦$ Û½Þ`8NÓâ0e7…c˜’¨ò›i)[Í)²”­6Ÿ6¶·}Ý( (  (¢€(¢Š¢Š( ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.€袊¢Š(Š(  (¢€+ñ›î™‹aÛ¢ÚÌG~<|B.!öÜ}µ-!(ARÀ P9ŠB‚MôQI €Aý~{y<¡ÝîÒà¸i•‰á2¡²V«';Œ© ¹r(yº¬Gz÷/±ÆÂ¶wi“„Æp8ì÷`)¦ fKAd¡î+¦î,d 'S_°ÙÜWyq¶XÇv3ðÕfâÉ´HqI)³f23]VQ`o­¬-»ÝŒÅq½ØìζØfÐì´í‚Ö„aÛD¦|(!¦Ð]&+€J4 Õ=nW¹ýFÎnçÀ±¦1XØÆÖIuŒÙZ›´S$°¬É)9›qÅ%V $\¨“îoap-íî¹íàícOLÚ=¢“1è³Öúøjû2†?›È·>Ûò®Ñ§j1±ÜnËí.òŸžüe³!Õj§VË«h¬žÒ®Ï®¿'²˜.ó·m²ØžÁlÆÈ±ÁL™KÀ1a‰²ÃQZ}jZS!µœä¶¥¨õ³ r¯Õîëg±­ÜlöÃìƒ#‹!Æ,%%¯t'ˆ–•Öp:êÖ,Tjh!²ø&ÊAÅw‘‰m¾æ1í¦XÛe%¤Ø6ÕeÜs|ØZ±Œ1Ý…ƒ´n©÷%b±qcF +þX}§Ä?­”(ËsªÛ7±{W»ÍÆìæÇ`X^ µoÀ6ÅaLYmšqkqÔ²¥ ¡Akêç)ö6ÛØ_oæã- `ì†9³ò#©mâøª@eÄB…­yÂÑIWf£Zè‚öç\`¶¾l;k°m€Fî0xðä5ŠÄDöV1U­ 4ž u)´*ëÍ¡7µ«½TEPQ@QE€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õŠÍUÄ$ƃ DéŽ%¨ÑÚS¯8£d¡ ¨Ÿ@˜È,’çF´«í¿JЧcað3d€_‘‹£SϪ”4¿WX«¼eí¯³¹Ž‘#h±×ðͶ00¬±Þ}‡b°°ÒÒÚÔ•]J))JUù+•’@ îzeÊ¥æ¸ðCçÃ8ñj/\‘!·\æ‰Lo{4)iaQ”—%@ « AµÉ°ÅíGJœ+‘ÚÙ­ž—ˆ• -åKtGáÜ_(/1ƒ¨ÄÔP°¸œ¶Æάq¾´\r¾´”ÈéSµ«ÞI¦+0ð&BÂB^.£õ•Å +9âÅ)R=kö–úMnÔàbo+jRüï¹Ë¬•_‡mIÕ`õNœ’¦›qøçìb5 û¶âÜÅ~[Ø’Á6¿ÚÌ+ 1qlL¨Ìq¹NðÞRˆ*Qk71°º²ƒéÔ×ÇúWìË,§°}žÅÝž”L¾$ö¬¥j à5åtÞãñx§K 0¡£ Ù¼™vWO-Ç›pØeÈ””öó*¬ÇL¹—üL:ÐDè½~[mv d¶ÆDi[C„ñåD LyLÈv3í¤óHu¥%a'µ7±î®)·}(ðü5Œ½Â˜6T&fN>¢ÜE8€¢À ëI6QÐ-bnû-ÙtƒØ¶Ä"a ð|VHJjXIiLjնÜIÖÄXf*º@6¨åc^0ÞãÁ²«ñ“öOî×a^ØæöA{7ò#.‡ÛŒ\ž2VpåÉëß6¦çZ6Kv۲زñŒ#XÄ”×Ã%Í~céožD¸úÖ¤¦ý€€iwOKLA­´q2°(gfÑ-M©´¶´Î Ü€«©Ì¹Æ„§(׫qãWéØé]³îmc†&7ƒ)à8ÉPƒúå›sìÏË^zTŸ†Üöl˜ó 2€5¬’;MpM¦é=±Ø6Ü/j#óð¦nV*ÃÉ![P†íu¥&ÀœÀÜ*ÀØ_ñÒ¯ÄqLAG„a Åj™1ÓKeeÆ›SˆiJZ”|¹€9”4<ŽŠÂáÇrŽ6ZE¯­)›)ÒÞ[±¤ seâÊ”IgÀ^S-„XæÍŸ9*-­¡ò¶½5}$wj˜g\¹æK®)±…¥€e$¤¤Fl6PPQX\²JFg§\Cƒä*Ð}ÎÏqXÓë„m7I݃ƒ„D‘ƒ±;›)7T2Ž l·KªUìzÆÅ`”‘~FºNëv÷ÞÏ~\Á í¡©‡Ø€—q:ØØEˆ ‚F½„"©kZœwN8FÑš“Â?_E`rš€Ü)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  Á#¾³\Ó|[âÙmÙÉndÌFS y˜Ñ ’l¼ÊR¥øªÓJÚåR[b²Ù‡%–t«Žúôž#¥^ØL>¼VÆ*à¼áßDñ3Û6]3dµõËÙ]Q}'7d$Áh]ÄIm¥¼òb'$B¿]Y‰@ñ²ŽÀIÒ»jéwTñ˜þœ‘F¼s·ÜQ§}/ØÿJ}‰Šg±„áx¦$û*(޲PÛ^R °¢¤¤Ž°%7·0+™íçJ}¬•†EcÃcìûÜBdKBÓ$¬v%)qOmô'•ˆÔ=2æk;px!Íì¢ãÑK^ëºRaXšcÆÛL4á Fëâ-)O!Çii(Ì€«¦kZÕ9]-b¯¦íةZƒN;‰„8´ßLÉ ($.•nóZþu¹Çi•^ÎF|žËŠÈ éq^|m–ÿ¶ûj¶{Àq Q†ãÌ‘ÄGŽ–Èl_þ(jZ7ÍuTF`ªØ^úw‡‚llMž…´Ï3 ‡ K‰±x"È h-@”¡%Á6ñÈ&Ö·TtjÍrÖHþ%zˆ\Z÷ ò¢°ãM?%––ò²´•¬$¸«dƒÌاu o÷zr\nWøÅïÌß&X̤(rë$7evø×úu¯¾íàâ[y´Ðñå™ @Ãc²¦ iCqž üèi)Q%wPR‰U•oÕ²´Z¹Y|z®GÄ.Ç£´Vn+̼_x{_‰»‡¯h1üIùkE¸KqõfhnB¹•EG[ ?C#Ëwò:×´ø‹# o‡Æ×o ë_4ÉÕXõ¸H$T¥‹,,Màø…Ý¼­­Ùh»@ŒFÐáMbëRP˜K–€ñR…Òœ—½È moVÚ-Ÿbd¸Oã˜cR¡6”Êå 8 ¬¥¤›¤M†¢¼ÞÚ-¨Æñͺldb c“)3?0¥Û‰) ­D€nNPWÍÆ±YØÆÐb˜Þ!!•½.[²žJQ”QZ¬;Õöz*e¢>7K~æ®ëўᘎŠ@j~:4è ´üwRãk®’AùªÍû­^elÆÞm.Ȫ\Í››*¦Æ\W–ÕÆd(jAýUe‚?8«8fö¶ú6µÈjZ d2–lNªNkäQíRlm}j*š3ŒœTÌ«•Œ´zY™&âãNu°¤C¡Ã;K;|f#…Ü0¦PûXœ´!A€’ÒŠ[Z¯bJød'RH ¶—xä*¾îÝ[ÔØ¥’jsÞ²QEsæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜Ôÿ_/j± ? Ù¼SÅQÄÃáCvD¤äÏ™¤ ©c/oT;kêUÞuè~á7™‚ï’Ö…~G á´ô¦ÚmYƒE H)²µ$ZÖ&ŸWRòÓŠxît[µ»“¥§Akr°åX¬Šó‡`R¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Ö@ÿÑEJO™X4Œwgp”0Â1¦c9)ÙE Ζ¬­·p@RJéäJHÒÙŽfò”„#‚1mŽÄ¸HL·Z”Ë«¬ãhS% õãŸüÆ»tï÷"­ô1X2ä…%JAÐ*ÚUäÆJu¥å¸ T ±Ÿò«bD`ÀFVÊmke¯šÄˆ,<å™ë_ªu¯]…›–Jü䓊#þlÆ-¿˜Ž_OuM)×ã©¶êUa—þŸö­#xD–2…G&ê7Ö×ånw¨ßk‚Ïž+­“eéËûõVrö³d=.IJÂTË!½ª˜ðÅ¡N!.„Û¬@Óæ¯¡àìÆl:V^ä ·«ûì¨Ò™ay#4[ej9Î[wéÎÕ¤á)pÛfɬ‰&qIRS@…¨ó&Õ£J„‡¿8•)²/e«Dú*l­¢ZQ&3EH@!@h¯O¦‰ÎBIÌ#´¥(e=^þÚß¹ÊàÆHVÊÝS‹‰t3m Omªy^˜‰(JȶUr­Ÿ•QƒA%#Ë¥«TÁ}ÆÏI Õ çóÖTWü^~é—`©HÍ"JYY9ï¶µ\•3 -ºÁJ l:º|Õ‹(µw^HjÚpù“ÙS•K•s r`Rob{McØ1BœJ =×­Ä=^c¸Vêm“-MÏÌls$Ú÷Óì¬;u>< ÂJü|ʰ³ …ºê'!%^¾ÁÊÕ„³ˆ¯ìe›2‡KJ-Iâ¥)!)"Æ×¶¦¢‰91’¤pKv7ÊE­[Lf,u¡m-m •%*ÒÕ´…<óo;IJNkNš}–åqÔ$Úá §A©˜$<+eí¦Šqœ]Ô©¬!EH[hh9b3¥¥‚l” “ÌŒr¤#¢¶î¶ƒk6þ6™QÂv~k¥(HIyjI+m l\ÙJHG(¶{E©öIºA¯'©F*»ÚóêwQoaš(¢«É„s~P¹þÒc¿r]?ô€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üvÒðq~›ñŸfßüLjÿªxœ¡ •,´ãÁ†–ém¤ÝjÊ/dŽÒ{}\¯‰¶Ïâ±vC“3ÆÅ™Ãßr yA+|6¢ÚltÕVçLàÊYx<ÍŸù;ÄeÏàÆ€ä—Öùj"26ÖudB9%ö €¾\VKrȈ\ûj6 umþB¾ƒÊbt–ÚL²¥(•Y4ý¦˜ê°éáGHmM„€y_ùÝku!ZSK‡Ñz‰ègB1o uk¹Z×,¾Ìµp4µˆÖýõT´Á}m¹=JKz¤å5^»rÖˆ!M%BíRn=5»,·-äÅmØŒè3sײã_MÅIG_«ÎuW§db·‡éΊ§G‡ëÝ‘E†Ü¦ Þš¥œŠZÝœëXÖ¤¼ØRŠõ)uK ÊöõŠÂãÇ¿ rÔÛÁA XƒkévD(a”<ëe ä• G>ï]AøíÌj6¥×§± q`YÊ‚¢ŽôñKº÷æÅ=V¥ÜT$°û¿SÚ<,óRGÕÆÖµl+ßQY¨J°¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK ú(¢€)JéëŠáòñ˜Ù‡Ò¤2ÃÓ\*o®”¸ „YVäKn]"÷Ê’F‰»kJNÉx<­­Á0w`16 øHÄP°¶V㉠”ÛPÙP¹Ó1µ®o5 ˆ[TUf²‘-YÝMRƒå‹¬)l()R”–U­ÊnG¬Þ†%–ÔÔPÚTÀ ):ó×J#Ât¼ï”\% IGÓöԎ͈ôdÇC)QH¸ÊŸwÔ±ñ ã§æõ.'áÊN¢’ž#èûšb,¾Ëà5%¢‡ˆ°ÄwÖ‘ã! :ú’×5$€sz/R½¶c•¡Ã!K)JY&üÁú>ƒB¡6Á@šû©K‰¶lÀ¨+Ðyvý´Ž¿7k(É¿1ôfÏÃË┣᮫&¦¦'…Ö€ëfP Eý\ë*ÂÞ+P[o&­¤ =ÿcSB‹ qNgZ”^ö'»ûÖ«–ÛŽé|>ã­!A%J×¼÷Wãwn ºwÇS½hVj^c‡^ÙèWvy ã“Ò^§*S§:™¿ÉñØr:Ò²ù%æëyT¡Æ^”§àÄ»ˆ ’”uN‡M}b¶.¸ÌÁ&k-¥KHËkyMGST¸©Ûyö6£¤[R“qŠÇNyýÊF$%2< n¦P'*N¿5a¿ÊA<%²¦ÀMÊœ6wÕ—æ¡2¼)–†P2©C°Öæg‡¨6¥›!WQNB¤£¬]Q‹IçîCWE²­/F».ŒÙpA‚ f¯ˆ:úUrÜð” m gÊBïôiôÖË€†›KŽÏRØ*ÈBQnþÓzÙ1eKCˆ$x8ÿ•˜ë~ãJzÝÜ"ÒŸ¹µ]ÖrMRÃ]“êK' `C+ŠémäŒÀØkôZª¯Iqµ+±pjTžÑóÖY‹ H,L}-¤ Ú÷ÍÝè·ÛR©¿Aèí©¦² oÙ§oþ*%ª]Åc~Q+Ò¬æóåcØ­ †‚2e©. õ @×óÕyM&$¸öEÀRÔ4$kϾ°ä–eG *u°â@‘Êýõ'å6ä6"¥E,eËÚGoúÞ¢«{qU§)2jVÔQXüºýÎõÐÃk€ïü#†Ÿ´YÞQ³­­–œq=aã'.q—þàAætÒn}“tPÚM€Ù­±‡ÜzñlS$&±GæÂZ€ CIm<4¬Øf̲4š¡ÈWE¹¬ÉåžkT¥åÖâ:P¢Š*R´@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ úù{O† kfñLÉz( èÅöM–ÖtæOýÂ÷šú•OeÙ8d¨ÌÈTgehmä¦å²A@v‘Ïæ¬>†WTy‡'Æ’û±ä¸ÂŠâ›ê8’¤›S¡hFÕY¶ñ+Â\ȵ6MÛÍöÖƒr=Úpu“¡Ö÷ôß¶ ©É\Y!Ô4åˆØ+³ZªÙ,ô=Ú«KjçžþŧÈ}Ô9Š0¦[)99n}=ßíYeèMº²q¦,:s:ó5$¼B;¬”¸”¬ÉBÿçUXÃß– óa,-ª{JmZãW²y–)üÞæY™ M(ÉBVé$‘©õV…%ÖTó®Ý  ]ÀÞ§üŸ jqÏ q#1²Bm§}@ç„G¿‚ÛvRP¢I"×Ò¶^ƲRM9¯Ð™ÌE/³Â;‰ÔŒ¾(í¬þZm,åí·*’$ç ­äðóaaôÖ¥¨Ã *B”ำÓX”%®-ª®K4潃G™ÊTŽÔ.¤Õ'ÓYL/>°ÞH¤2‹}VÖ¦žÄVßnS@8JºÍ’2›óÒ¡ôÔº¹dYihJ®Gg!XMàÖQ„ÏÛÐÝ×ÃÔaäC¡À,á<ûþkÑ.JZpxŒ²Û–JÒ”[è·:Õ-I˜Â”ÑROŠ3ŒÀÿ}žŠÌyfS ÃÐÉ*"×¶‰=ô|uÊÚŸ§¯Ø°pì5È€e²€Ñi65A•Fm…GÜÌ•jè=—çz‘Xdä>–L”¢“˜›z»+txtÜi¨Šq­n¡©±ï¢û™–ržÌQÁT yÛÝiYUÇ¢ßmk)“m¦jÂs „«¬¯¶¶‡ù9¨ÁÀ\µó_[Ô%ìBKal„_š´Ò¤£B¥gü8ç•«Q ¿‰ÚAµÊûT(“}96úéðÌxT¨”JHsú»è2ó8œÊ¼ÁÕÌ:ª=õ´™ŒHa.—Iq* J@ÖÀÖÒqïB-¥w±µŸ.y_)«©W™Â#Ͱ‰-6 ¤ é~Wï©1) IŒE¢FSË[Ö¡­ÖCOµ™¶ÍšFR3zMýu¼â°øSÑRØ_‹~°4­kFn‚ÞR””’Üm«¶¶¤HÈS J>{ïUÇ`­M%‡˜†È~ÊÞkm=(¼ÒT#ÚË6ÔrÒ­Mž†á¥†ÐS`2$é¥aЪ’{Å,¸ïIǹUHTé)3O’›§Sýó©bCZÜq¶g *Ä%$úyÞ‡æEãm½w jmÉ LUä$u n§×é­¡k^ol`Í]Ž?šUüË+ÄUE—m˜[‘çQa²¢¶µ©Ö’—¢MÓcj«Z8‹S ñ/bUÏJÌÕÇ‘!µ8’¤"ùÊé·÷ôU´ô)Æ×ÎÝÏtŠ˜x†3¹ò”x]c¿ô>Ùm“µínÑbø2_% `˜d‰ˆªI#óá²nlHJ9ÝYJM:éñE«Ïî{µ—¼²[ŒÌTiÙÎ’µêYBs°…Yv)NCÌØ@QâUqPŒ£ I`¯Õ\|Æ{Ÿì¾Æh¢Šœ¬ ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þ¾~:ë1ð‰Ò$Ê\FŽâÜ‘rÊBI+äo`/Èòå_B¨ãOB„M‘ŠÆÜw(¸.ÐI+¸îµïLdgž_ÊrQZÂP™Mp‘˼ßýê9¤D-™%+i#¨¡¥¦­m 0Åñ'°'$GÁ×)ÕÃŽè*u¶ Ém %Fê °&ç^Ó_1Ô79ÆÑg(ñóòµ{ÚQQ‹Œ9Lœ®ö»Üœ¸—Rh͵=õI,æHNeÜöòù¨K/1#„d[ A½Ç+T>¨*,9m?Q;û‰Ës›É§„Ë\|ŠŽTжbt_nËq¥ 7¥¥<ˉ¾†¬¦{\!ÖÐŽDU6]‘Ö\niK:f ËéôÔõmèÏ kr!§^­7˜¼0Ûh–CÒK 'Ô5¸7²ü3ÉTvÔâ?Y7*>(ð8Šm.ºê‚Ônµ$Žg»M*¿HJÜ1Ü ljJXÛ[T0±¡J85üÙ<ïkÔy”Ù`xR„4él(ØU¯oEnÜ—#ÈÚб¦·Oò¨Š€Ø@ò¡ÇÞi ã„:Û¶9{SóÚŠz}¬ÓIuy|œÓÔ®©É<ôXÿ=ËoH–ãÅè–qI½µ­¡Oš¢¼Ì,¬ŸUTÎñZQ ’ÓjçÐzíXOˆNd)Эs!$UqÔÐ,êK++íÐî¥âØ.¹f¯Î¥ÁàêîIBo~u+8’[ABJ“¡²¡yS¡$¶R›Óp?»VÑPSÒÐ…¸£kÕ•µ[|”V «‹š—uW’ÜW¥)µ= ”¬B}ýDS«Ð· Ù¬+v®¯ ÅðÜCœ÷„âžœ®1q•¶”ò¦Ê±#.e,¤nR9’ãJuÂÙ!¦k &üiqÕNì¨p؈†‚@m-¾¢µy•]„Û•…ùßJ«ý6Þœ%U}GbÔn*ÅQ›á øåY¬vkYªd)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’ë 袊¥+§Ïâ›&&ÆaXPaĸxÒZϘZÁ ìAÔ•^ÖmiPé㳸‚Á6ÁÜP/òa€¼ßšx—â¤\¤…¥9U #†ýY­­áqV4æð™¼.%nüÈ®P¬¥¨s¤æqjñÏJÕðÂX@ŽéQ=µ˜Êi(tÇŽ§Z¾ª:ÿ綪áÊi—’àBÒHºB»5Òß5z(iV´Ü£Œ©~ßb*º½Ìö¼á¯Nå”)ü6J\Q©ÁkŽWî©“ˆ!î.N_aÔ;íY›-•G)Ìšzý]+Cî¼Ú…†T…Ïÿ¾ßEsÏ@´uNßÜꇈná ¨•KRV•>úÌ3eo°Ö”Øt®YÎmÕ*æ=’¤q’ê!-"Ö±G?ïZš "ÈçšmKV¤eéVtëjr["²ŠêºÍT÷Íáš1$ºê›e´ l¢°¿x¬IiÖÜIn+k-¥) ¾‡×­ŠÔŒÍP°#ù¨†ûM¸¾4•,Aì:_•ulŽvË~_2]›Á¬H<Øm&Êÿ«º¤‚„JëHp­#DŽV­ÄÕ¼òVÓyÐ2ßSéªÒZ˜©¿›HBÜý\܇}ëçêù‘ˆÉÅæ<2̆ÚC¦ŸSy¹'7T[¿JÉrR$­)q-‹ŽIÔwÔ-¶":<=ÀEÂù¢µk®ê›aje¥먽¯Î³ÂÂKû ¶øy7vbø¨‘àë ZùŠMÏZH˜e¸Ûn êSÝóTÜyM[-x@¬¡ʤ…9¤´<Ƽ«+åà<õ+ZÇBZ¢9‘[–üJr½™·”O1Q¼Ï…Ê.Åu´( AҥÙMÖ‰jΠlA:V±Y—Óùö1žçê7c‡¿Œo'ããÉÂ|+a¶æ¥*+a Q”›6[r¨RUz`žBÞˆØ.ÏÎß~qBÕ;²a4S™BÊ¢T•¨Å%'˜Õò…yÝeµYAöGe·Ó¢Š* é ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þªâX›D9l¡èﶦmiºV…x Ú­UsÃ?$Müœ¦Ñ3€¿S‰*Hs)ÊH‘{h54]P<»Ÿ‡¢>1&$\Q ´ó‰bJP¤—› !+²µ…ŽºëU¥År"‘à®æ؃§ÏqS¸×„pÖÐ÷ ›ó¹¹¬ÇÃp­RßE›½’…uëk^Û[bI|Äú}ÍÊs§ £G£†£—_RøV`¾v\V©K“³î¡¢¡A¹¨ËjyBD‡Ki* h4ì>»Ôæ4'#…%eµn…²»£ó-É,}Î)'âú%ó₲´…h£úƇ¤?1²†*Æ6¸©¢¹F-­!|ÉÎnoRáðœu²!¼–˜Q9³M´®{‹švðÝRx‰=­­[š›)G2>{X{‹pþmy©Ì¾~VS#ÁBøT€¾]^bܪGÒê\,L†ÂRTžÛMjò ̬Jy[Ô!<ÍÆž¯UfŒéJ*T¥×¡­Z5iÊQœy]}ˆ“‡"‡ãg°Ñ&á=â±-f(S‹Œ’d%WÔiϾ¥ŒÚ__ZÐ’:Â÷I:|Õ¬¼Î+Áå1Ã-­wHúE%qJ2Æå»Ðʵ«(nQ{M!3‡‡.å´ºŽžº‘§¼Å¢;m¬õJu—¿uK/ªÛŠNMJ頻rbIr<6ƒÍèt:úo\ñÔmã[ÉrI¯N‡KÓ.eEWQá•Ðe%LºV±fÕ{„Üv[°rc2õ‹w½Á¿ÓRÄS ´ãr8J äoÊ´Jâ,)2Ö§<@¥`yv×riÅ5/Ðài§É2ñ&ø9Oë Z©. TÇ„¡àlrž~›VèDFeq—Ä4¤ÝÁžÛ^¤i$Ip…¸”l ­Õf”šoîm*r§ÃOÔ»ÁPÈ´n´éô k ksò×/—Œt·”X iÝþÕ´‰1^Œ‘ùà_h=õ0ÄYð|†Ü¹vT,8Ì&Ê\ŽÜ¾MMû+Öçž$W¤hb²… ¦A}gP‹Øš·SÉZqÈ¡ž©æ>šË,JBîÔFÐR¬Äfëkýò©2.k¥š) –¿ÝëýW#>¥—f¶ ¯M>m+ç!‰e•HF@Ù9€&ç_ò£òzã½w‚žm'’Ïæí­Ã‘8§:Ým²£ÔåkvZÕ‰Ôrx©Ãô6P“YŠ[z2øó#‡¡`-›.µ#²VRüt2Õî’¶´¿ª³Ä $q’êƒf¢ãP=î*RÔô¶Û’ÙKÌ'õosë®Jú½¼w9'í×'m¶›sq=ª8÷ô!{€¦â]Kn§@F½ßåB#Ëqmº™-­e=TÞÕr‚Èá(i-h^ÛwV¸„Vâ­/ÂÑα)R´µ‰þUOSÄ”ÞvÅû}˪~¨—™)§óŽëÕ:‰‘ÞC’›âv#_ž¢w#²ޤ¶ÚÈÌ’,I¿EX>ò — 32¡•«Ü«ÓöаÑc*ð–ÈG!úª$zª*^#j8«û¢Z¾ŒäÕ ã=2UR[l­1ž £.eŽ}–ª’âG-¥ÆœqK½Öo§o*º冚T„)>/ŒG:Ë1äDZ”ÂÕâx~!޳.&–Æ\QzNe”¬ ©(‚k•"ܩɅWNîWmT’Ã9ol•¥iB?O`¢Š+S@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ úÁ¢¹ãRU,^lL3 —‰Oy,DˆÊÞê¹!´¤©J6ìX|]x<ÊÄ ~MÚ,J6&òQˆEã­·3¥kBŠT°®ÐMõíªLEã%N½)Ášä†ÇŒ›iýй´°a=J‘„¼¯ÉæSЂܰ©g9Ȥþ¶[_²õUÉ3lÀ”—2ÚêÐzÁªª’”äÞì³ßЂŒ”qíîjþ Þt©—ƒ-(ÙI¹UïËŸm BƒK¬¾µ¹” fV]-{éC°gFB]SÁä7ÖÈ“®•ŒEpe´Ý•wô½®/­êepã·{Á °¶MÏÊJ^æƒ )ð¸Ç¨…eR 9H÷½m)RàHSM0¬Ž¥-ê="¶³„¬Â8+ñ,nonÛÔ\iSV•"Íâ©g-Ϩsæj9V©?­ñîn©Ñ¥Ÿ-b^Äͤž$©Éd”8k›s½D_‰*ru–ÖI:UZ‡,”ñå·ˆÔ¥ZTQ%ûÄc+­6AMüaóüßmk²\&ÍêQÄw8¦½ùÉœHÇsFWGÿ¦;=U>û\_²œ_ŽT5õ}•Ez †ÒÌU¡ëVn¸íåRbŸ$:ó…§9NP:h))6ùb-ŹF=;v6”Ägñ–K“­€±?ë­l”8äaê/¸gs+^|ÿÚ¥TYÃ\̤>µ ÄÌ{+HÙLt©‰KiZquÌ-ÝZnmå¼’*M>˜}x7ðh2XLi%ýzÁD|Üû*£)iæ|Q³.äÖžZènhx©}ÆçNŠ÷¿×VbâŒ"(nÀ\[(µL«ÕÛ¶2m:4e=õ"“õõ06Z8‚ãiýc¨VžšŽK>!¶§0c))Ó"…ÏÎ4µGK RTœ¶Q°î©Tû8ƒjuä¨!6BVŸÕ'™&´J”ßæî «l–}ŸìL©Qa8#lÐA)#ý4ñt\Þ´› †ìÒ$?ùc††Ýiô„©m&ÉJÑbJ’TD\E"©Z!•&+ˆ}µ]=§Nî\©—è.ÎÆÔc¡k’þ>¨@°¥,äLP´q†™³ðµV¶°Mº×–„Ÿ™ŸR»U§Ú寧¦;èÜ‹[JȬ_5dr«Ç ¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK¡‘ÿ¢Š(“Žž.F{³éwz2Æ¿ý@(„¿wMšZíÛ1¶§Œ/k ¸ô­tùˆ·`l¤Ž$gB–ׂ-_œ^d´xˆI!9lMï×M¹›Oouð³óqœv7§lîf©§ŒŠsn<÷v˹µÀÓ×nÚ1.u&–ëIUˆ$z»Ma†’Ä –¥¥ç_X²ÓŒª+! €Nœ‰äkŠ:µÅ:»Óxô=[Ñ­®(ùn*-wï“â3=å­×eÇÅÊRHÕ³æj’´©µ/@‚5ÖæÚŠúf+MÀue×Nª·ißïZºîC.&êZM…”MÉùõ®ÊÞ$¹šÄ8G-? P§ÍG–ûa)L¸‡¥”ÝÐHÖ«SŸnC­˜­¥n æOebNÓÅió…¸ÍÏKjWŠëM”þO‹ÅVR’yŽdéßTõîj\OÍ“yû—­cmMQIc÷2ì©s[ʘËHhÝW±îû+tÉ›"2¬Â’€:Êñtô^°ûΉ ³™qÖ´„­9l=urKhgPeÕ\'@£¡¨$ÒìtÆ-îiôê|õ†°ó‘à –¢/oçþõ>ù %M›"ÿ5ïôÖ©›AðU¶ÂBH"Ɔ•=ËÆJ²¡y€¿ÍÛFÙˆ¨îMóÇEÐŽ2¢­È‰gPeZÚØóû+9£H”ÒU ×lUSç~œ. HtèGëköÔ)†£¸Ä† ž±RW©ÐöƒÝYŠo¡¬Þج¼zäË2šÃ帒¢êMˆYíôV²1e"BRBlA]´>ŠÙcXqÇ+Â| * R’TÚnoß§ó¦×ŒRó#º\Ÿ Ý¹Àdí¦+jßz6Ï&RLäFY@ôƒ|¥VÌSÖË|½kW¥¨ñ»«Î-ËDZ]ììØÄpƦщ6ÛÑd¼eÀM³*ú*Ç^%”å±ÍcèêÊ­­¡ÝS¨¡»Ü´¡¯ÚÔ¦Û{}»‘5†Í-—<)´ ›õnn;ÅèmnáªSÆî°¢?=k}•„™·S ¾• Ê÷#ÒFËòNf“Ä…¶BX ”]V×O›J•ÃAN§ü늭z)n†3б£{mq)•ÔÔÀÄ5A}·Sk„¤›žëö Ã’u…CTbŽŠÍí”z;ê'Imõ°â”µuz–µ‡/¢²ù_Sˆ'•Û»»×ký•5¾™upøÍ_U´ ²¦fZà”¶¨í’¡`³}>I¬­øŽ­…&m)>>KóŸQú+UÈ!;„­ï¥K&RË)f\p–Ç%þË}5Ý_A¯N¤c”û®Ç z…HJrùqÛKsˆôRÒ›mJ<@6?ëPGJØÂó‡Pø"ÅZàòçqTËLE(wŒ\Ô (òÿÅjââ"RqJmC¬’t'úr¶Õó"'âj2ží§."CSNE²V«‚”õ5ôÓKÐ2PÖÓâ)—¦oqµ•©* SŒ¥dåÊ [QJ@=d•\YT”ðu%l)JJ2ÙúöS1ÐO Çäm3´.1€¦1„àRÈHºGý‰¿[þû ÜÚG¢|59T©.WLw8¯uÅsJœx~½†è^Úó­‡*ײ¶«ˆ¬ @77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºÈú(¢€+€ôÛÀðé›´´.Kn6+„KJag'óáâã@^ײRåìH ›Xk¿R£Ó¶;v´K‘!¥Â-$ÌHQ+*?¬s¡ r°àëã Å[ègn+˜¦ñî+¿ˆ—'”-]©²þzšã8\•­)Ñ*:Þ¡üý#Ž]uÇâ¥ks‘Ê :WÐÂßd4дèR¡ªj­·p{X8ÖÌwéK Ä#7M?›7.±ï¨ËF âåN8C€Ü¥7ñOh«Ïø4‰*mBԜْî4®u‡ÿ&-I[n,¸:®(Üý#º‰ú#. G3|.æŠÆ’¦ò IÓç¬3-_Ô$¥*ºGmµçé©*ÈS’[mN/[”ë¯"+xÛCm2‡ZZ!ÃrOÎ4£Ú—C1U&ógÑ•¦>æ$Ú•"Ì‚¢£Ú{‡§ý*±Þu°©RKHRIH"÷ùêÊ2¾Ú[LVØ(ŠÓasÝaQ¼óŽ3àò^Bƒ¦QuH¾•kGI¹«¸Ç ²žãUµ§R[§™%ù6]€ò3-/¨8F‚ú‹T¤Ä´´&=´7JGÏPµ+åjD‡T­H#ý+Vg‚iEN:l¼ÿÞ•e OÎ̤”{á_?E[¥üÝÉ$¸ô†R·ÆCÉ«{ê? ðU)©6R» ´Whù«iÝ ëåÔ¥$¡ kp9VŽJޏ%¬£6[ :À×¢·Ó¨[/’8iw<ÝÞ¥qtß™. ãªCQ”¶È±˜¤ES—+lHa¥éIJ¬5ÖÕ¸nkq’TP[:sÖÕ—Ø}†JèàËkbÞµ†—mJQ§Ëþfjêw3„c)ðŒ¿&)m mÕ„ÛªmEJÃji¼è’B΢ݕºÇë6Ùçj ÁijD…¤¢öEÁ^Í*ZÖõéÁ6GJþâ›àý^ì¶Rv×íž²ŒâQ0ñ5„ʒK ’ådd’£`/^˜¶2¡)¹6¹75åÆÍÉÄ1 kÃðBàÅdÉi˜Aµä_J*ýS˜§^Îñ^£3~3M…Ȫ}k PQyItô6·mç&ÔQER"¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÔ2i–\}çÛM‚µ­fÉJG2IìµMT±¬>6-„ͦ¡K1…°ðI±(ZJMf„ÓŒòææõñHøÎñv‡Âü63uqà Ò¦³Ù.YG0RÀÌFe`4¯ËÎ ]Ö}l®uõ6«w Û,sg—0¼ÆˆÈ†m\Ḥz/–õò¤AKªu)¶‡²½Å5ü$Ôr°¹+åòlÊÞ˜Gˆ Êˆ «·MozËhuK eµ2£r³Êý£ýëeâM)¢Ö¸°¶„Å*ÊÓ²–P‘¡î©–äÓ“Y±b4ŒÑ“•ÞH9¯cóÔQrbÉqå…¤Úâ²Ú˜ŠúÄ’Mî•(X ÕÃ#‰ÅŽ„¥ ¤e*·nµ«qÎTe:µáÎÙ»8• “}I­£"K÷”—’ÙP±[ŠÒ)C’á…*Pj¼‚ã)¸Êp²M†Q}{«±Ï`‘{#ë2— ̧yÛÑZ‡¡¥mºËl¥âmkj=u£Ìe)al.çÅ¿+wÖFV³²¨™^¥A'[ÿ•m-³ç óA6¸_±+üLéLUMÕtò7Ðú*…\DHiÙáêR»f'–¢€dCtÚ1JHñSÖ5+*vJݶ’‘¢Æ½¶5ž%Á®0G-L¥æÕ±ÆÍ¨Hçé­”ã˜ê²S{+™5 x’# Ii Éb¬—ì·;ÔªT¹KB@È:©'Ÿ¯ûï¬,÷á³$i’#¾²«¦äk¥ô¾¶®9 )ã%¤€|dÛCQÈ)ÖÒòÜB]OŠG¤Õu¡äÈi”‚ÒºÝS{Šq±3œ¢Êƒ1¤%Ô! iÁ †˜>„˜¶2w›2ÛŽá.ÁRñ hƒù¥÷f$”Ì…+¸Û€¹£([0ç}SnêuúEÙ”n|½‚aË4Ì[8«îµÉy )$+þ€Ûˆ6®d•+ƒW›¥nãŽ-©O9;°û+aʵÂÂõ°¯ ‹¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK¬ÿ¢Š(•¾ÐÙÌuX¿æÒ]Špåp ”§-~Ä¥džE»©-%+ݪ׊Éèåqïãb“éµQ”—{3N4É­‹³eŽh¶•+Aß§*¸²Ð©ÆâÝû7¾ ¨å¶ß}qÉf<>|fä~{že'Cèï–—09ÇRCÎ$”x¿I¨P™án un˜ØÖrrZÇ\ŒÂÖ½YWѬ«a¸4½ŠÊÕÝÒ–W¹t–\œüxÊ!\¬ …´µíΪ7"R3 ÚË?;z*4% Ñ*vò³h’tv[º¶SÈiEÆÐ”µÖ):“ýëUöÞ£/5çÑ{{÷>#­5IcÔÚ3r¸ï] ç˜vÚ¸*ŠB œ®SrMl©ñZi¼©Pÿ§ºõÕw¹7÷¬1,Rt‡ðŒ†–Ìy´§erÙ$YHG5‹‹Ü$I)¾­qJΖsÂíÔó¿=i¶ú³”ÎFq\:¤§Aé$¦˜@¢OY=c}/ßþf™h]qÇ¥K‰íÌ& #)ˆäh+qÇNSr´)IÊ«/5ÏŠjÆÑAœ±ŒmèT<2".•×›Ê Ê”²VlÂÖX°æå#™ê¶‰a3‡˜®þD=!ô¶€Gˆ.ydò¬· ;Ï:Tú4¤U4Òú(º´BÞ+E$äKØHqi€ð õØPz%¶Û·ˆëk—‰ÁÁJÕsbE¬,srîÒµü^Û+w&~b¨–¤©ÕÇZÂÚ ç{_]*vcÜ©©Oظ(°÷ÞšÌG¡ì; Â6útK2”Èðœ9/—ýe$¥hʃ¥s¯Xék.t?À•# q;m‹¥H’Lfʤ*Âå“Ì‹ƒ¢¸œùžuˆêÖË®GÃÌP  Vc¾T¶[½\€¸ùR¬ˆ+™#ç¦ÆOD%8³kÃöãg ºKÑ^†Û¯¬_®èR’EìKfÚ\F¢ºBL¤©À›àüE·ù99Ô‚z /‰` 4*±¿påZÇV¶†Þlæ=™Ù©{òÃQ‹Áv\•¥Åaú¤¶Ü„ º´‘­’…›è¬¦×Kò9 å;¡ÜVÆîË“Œ`ÎbsñÚ,¥ùï!\ɺ‚„$l.¢ ÒÀ€H=Xrª;ûˆÜVsŠàê¥á…Q\d¢¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ+5ƒX`ó?}¾†o“lÑ!—YRñÉŽdq [ÊZUcúªJ’ yAüîÐDÆðlM˜xþ ? }I%‰±ÖÂÔ‚H X-Áåp{«Ó¬GeöoÆØÇglî/Œœô&ÖûA*Ì—*M‰$XèMëé:Êil¼ÚVÒÁJÛPºT±wîUq ^¤b¢—çv鼞U5"–\f{«rá<¸ññ)1åÃ…)*ð9 iHnFEe^EeXèm{+ÓŒ fvwŠü\ g°¬*;êÌëP¡¶Ê6µÔ” ·}mlîGb>9ḫ,/;M͈ÛÉmV¶d…¶švTß¾›85øe×'—jT¼-m5>í4óaö¸Í—[Q!+Mù¤Øê4£òмËm* Tß—ez¬¶Ò®ª F¢âöõU<'ÂðˆîFÂð¸pXueÕµ„¶•,€ ˆH±&À_¸ Ò:ÕH¦œGÃ/SËT¯r1.¥!cõBο=j%Âð> Jû;+¾½H^¯gV ‡*dt) ÈTTJ¯™)U®s*àhsó5ô›m-¶”!)H°h+g­Ï´L|7¹åþËlÖÙíze=³8ìY8{eÇÕ‚°‘n\¬TAÑ"ê66WÒ;¼ÞxoÃÝØ §á äP8KáI¸'Å(½´Ô`l;kÒܽbuÔÖ@Ó@*­Wê‘¿Ã@ó{Ý–ô6ƒ/ Ø|eÆAw;ÌðÒú¥Ü¹ý “U¥nãy2Øð‘»Í©üÚ¸wü–ø]ȸ²mšÞ›Xk~uéXÿÅfÕ³Ö«¾Æ>œ±7G½§ñ“€7°Xº$¦à­ÆB# aófˆ·rµä5£ܶø^Ťà‘ö+0?8·²´ÇÿÕå(6剿UG¶½¢µzÍÃ3ðÐ<þ•Ñ»} a‘$'‹!o•qb7‰2c)°ÎT ƒ˜j2)G¾ÇJø±w;½lf;íEØa¥CXBÕ%¤Ç¹&ÝN!Nqq©EÀ&½úh­V¯q†Ÿs.Þôfß+ ±+ ðf‹Yĉ³¤ß–K5AV7Ô[C­ì ¹ßaûµØhÛ;×$;˜¿6J‰»ò”…('’RR”§±)$ÜŸÜVr×¼«]bOƒxÓQè[²Õ‘EÊH€noÊ?ÚLwîK§þ ÍùBçûIŽýÉu?ôQER£ÓÃCÒvsdQ-VHs—&†ç†Âów‹>,n£•5Ôµt÷Áð×¶ÆÜŒ‘ˆ³‹&r!\'ujG¤fm$_–¶µÍû,$£qÖH«'±‰ûR£EZ›Êz½·¬%2&õšYm°zšÿ}õcÀ¡ðBJ ¶ “­ûêšv-Ò–Ô´’reûkÙËt>¾…jÇcc9”Ô•år×.(ê}Ö©žË-ðÇêiδB¸Í9)öAúI¹û+/&ªm1›Gꟛÿmk¹Ç˜™û•Èȸڒ…(oo¤UÙiж’”Û6‰M”~UDóŽÊBš[ JQr¡È’€wëj…æÆÕÃ}g0:Øýÿ*Âùsß=ÇR[CiÕµ&;)¶£*yóïú,}éÂÜH8X±Ù‰Æ°÷cˆˆ´§’¢–“ª€Ž° g:%)Ô'ê“J“–0t'Æêh;«õÛœÛlÖÄÚC…GĤÄâ'ƒ) [Ê:Ž•ŒÊÎ,»e¾µÉ}môšÆqÓ±-)µ#ÒaÈÍVÃ%µˆa±g0—Ô–Pê‰Ê ‡^Uf¼wN ¢Š(Š(  (¢€(¢Š¢Š(s~P¹þÒc¿r]?ô€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üv×™7Ÿ€nŸx“¶‹háâr¢I„„@i XqO2°HZÐ2ÙµvÞäi@zoE,ß-]Ö ? mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š)fùjî³Ìgûœox£å«ºÏ0mŸîq½â€fh¥›å«ºÏ0mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š)fùjî³Ìgûœox£å«ºÏ0mŸîq½â€fh¥›å«ºÏ0mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š@77å í&;ÿÛ—]›å«ºÏ0mŸîq½â–-‚Þ~€ô¥“½9q1'0WqlJrXi¤9$%ðØ)+ Ì ©¿ZÂÆÄØ\M¨¥›å«ºÁ§ä ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@34³ôö‡´6G‘<§p(ò]^"¦“™-:B XæüÔß•Ô2qòÕÝg˜6Ï÷8ÞñZžš[«:þAÛ/Üã{ÅKF«¥54ºÉnX8Vì·¼½¾Â)‡G‰…À*³R1Ge/õA l)6#­l§°Üù›CºMèlö26nFÉâsU¸oÀŠãì¹}z«HÊí¹Ó¶ÔÄš{«óÙ~çÞ+'¦žë5ÿÐvË÷HÞñ]ëV®¥”EðñÁݽÅoƒ/Fÿ» 2‡ —2KHJŠA9Ö9ŠŠr¤Ž©$ž°ùNåw—ŽD+ ØœZ  4•¸ÜØêˆ¹FÙ[@(Û»]JB˜_–¦ë<ö¹Æ÷ŠÇËWuž`Û?Üã{ÅfZÅwècáâpÖ7¾ÙPÚbV–Ô¤•âR®Z  ‹w |‡7S½x¥×§l<êXn/ž°OU(*ϯbo§[4Å|µ7Xüƒlÿsï|µ7Yý¶¹Æ÷ŠGW¸OžLü<Sh°}ªÙÇ{Ùœ_CÙÔ".?(²çöÌ/ë®Ó°}6Ç™ƒbÛIˆax~1¶¤Ëe§[mI ápÔØJýSu’I²­jýû3÷Rí³ìþØ+*‚“šcb;GüG:ÜtÕÝ`ü¶¹Æ÷ŠÖ¶­Z¬vô·Œ^Fa:ê¬ÒÍòÕÝg˜6Ï÷8ÞñGËWuž`Û?Üã{ÅVŒÍ³|µwYæ ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@34RÍòÕÝg˜6Ï÷8ÞñGËWuž`Û?Üã{ÅÌÑK7ËWuž`Û?Üã{Å-]Öyƒlÿsï3E,ß-]Öyƒlÿsï|µwYæ ³ýÎ7¼P ͳ|µwYæ ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@qÍùBç{IŽýÉtÿ×½ñ¸»KÓŠ>ÑÁmæâb¸¾/5„<q(u‰+HP€«(^Ä‹öšôJ€my·Ð¯`¶Ox›ÒİM°Â¿*@gvSmxC¬åt<ÂB³6¤žKPµí¯.ïIm é¿ömÿÄÆ ’æâ¿a‹Mþµg乸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ”-Ûl&Êc1¥nÿ¸Û6Þ7‹ED/u6i„H-':TÕ- ß5͵&½#¤s~P¹þÒc¿r]Ìü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµv[ŽñY¸ï 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹MþµvkŽú(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(<ú?ap0>ãÂØðx~7ŒÅŠÖu+†ÓlÊJuM’¹$÷ס”€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üvÒðq~›ñŸfßüLjÿ¢Š(Š(  (¢€(¢Š¸ï y\w¦>#Ža=6Š~1¨‹G¹+RUÄ,­Ô¶CjJ†UæZu7s \‚?K2~õ°ö"GogvWY*—-¼Qì9Bâì”2¦ž6É©^ª'@ûÛŽú+ò{#‰mä¼Iƶ£e0\&d©BÆ—-jrâÉ(S €*7Ìm`-­Ç!Ú-”ÿô¢ÝF#3ı¬W8â¤Ê˜ïU)D@PÛM£m§:¬©ÍrU@1Wô\w×ÚMåm+û߯6±û>æ3¨wh8ª^$·Uÿ”8ÝÒOXß²º>ÃLÚY›>Û»]„ÄÂñ„8¶Ýj,Ž+.ªÉq˜J†¹U¨½÷袊¢Š(Š(  (¢€)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  (¢€(¢Š¢Š(¾&5´¸V´x1ʼnøëÏ77 -2§VIì)úH¯·\+³xÿIÑ1`°§·=¬]‰i}  ólÆâ4•_˜BÖ¥ØThýT±¼SÁp©8®-5ˆP"¶\~CË CiÜ“\[iŸÝºv“Lüg{MË¢ñïJóœÁ¾áä½òäêÚÖÒÕûÍ×5³3öRS83›Aˆáæaâ £LÅ½Ä lØ ƒ9@²·V÷¶ ÐnËz?¼,cÃp8˜Ã Á|¼äèž—’ú¶–ÚIÏ”¥9®¤¤¤‘pkêoClðÍßl6!µØÄi¯À€Zâ5 )Sª.:††P¥$xËI:/Û_„Ý6%·Ö;°+~äªý>þöA;{º¼[d?+ÆÂˆ®8L§Ó™ RmÀ-qrrZÞš}žÛŒGÆ#áïîçm0¦Þ¸3'50Ö„‚¬’­madHå­~Ú㾸®Õâ›{»¬ØéX–Ù«j0¡ÆÙÁ&B‘‡1L8úTPó*i „¤¤Ý++Ó¶ú×ÆÞ–ÄcŽoWÚœswãy[3.,vàÃF ”=„ÐC¼6)JøŠë]'7󃸢¹×Géû3;wÉodäㆠ9År&2¢e@u*ºã,Hɘ.lÔ×D¸\ТŠ(Š(  (¢€@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ ú(¢€(¢‹Žú¢‹Š.(Š(½ÎzIl–/·;”Ú=—ÀZmÜJkmµ„…©·Ûs-΂ák¥È©]ÙUmÔXxÞÓÆÚ­–ĸ%—0è{JëHl*Äø3µ(æ=nv°<­]ã¼i_ƒF÷wrûØÃLíT5!•¿5YȆР…«.W:ÊH’H÷­£ KéY0Ú]O¡²{ …ìÖ"äØx¦ÒK[Œ–Kx–;*ca%@’ëŠHVž0±"ú›ò]¯{{æõvlšÜÞ$Ë21ó ǰò·ü%”¶2ž-†\·=õú9=#÷^ÖãèÄ1 /%Å!1„°ã‰ ¶`UdXuP6æÒ«oƒ~ØvÍîó Ú]’iœ]XÌ…³×Úq,5ÃÕ|A`Bï`JIÕ@føJͤâù4óaêXÛX›Q´/©­­Üžµx[ñZr.(—jlqXuO,'0]Àq•XM}Î['lnÁ=…c¤3ÄÄdHƒ‡¦Q0Ø« ·8|lšê4×Jæ»=Ò·fײ¡ìo ˜1ÖÈmQ¢$p^6QΕ©]T‹AºX¶`GÖ‰Ò—`Ná2àcLL%†›Zˆ!WZTV”ZÆö7P°"æ·z}ÊOäèaVƒ;à"Ô^Ô–íçIí¨wx‰džq­žd°[„ôF³ÈÀâÈQMÉR.• ÔÜãéeµøŒ)±p¼# Ãä<è1_m*qÈ­]W º\W‹Ö²@תoÕ™iW9ý]x!Ó¸ï‚E¹öÒ»^û[²Öö1ˆËÚ\1Тìi²JÜ #ªPê®P.ù¦Å][›Ú`.q†òñÍ—Ã&…X³àRŽP5¾`¾&m-keä{Ŷ«¤ÜS“K Fâ oIïåYªìJLWÛ˜Xn)³ø{xf#-˜Le¬¿­Ä¥%J$‡,¨ Eû;‹RŸim+޽µJ )®¤š—C4QE@n€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEPQq@TÄÜšÔE¹‡ÆjL€¤Ù·]-¤§0ÍÖÊ­@Ì@¶¤q{‰a­Çb´ë¬)…© ©µJ ‰¢¦¸¢€(¢‹Š¯Åïw˜fÚb8)#ÆpŒSy×`NÃCn·ÅFWs¡i)R@âús×_ÚQ@jÚJJ3)Y@•©>“_+jp‡1Ì VÖ1Š`ê-¦aÎ%²‚ŽB´¨ ؤÝ'BmÙo¯q{^µ'¬5­dðQ³”³ûa'jbïoŸ1øÏbù±”‰ÜfÐ혧-Ó¡Äêµ÷çîËÄöcÙÜzn/ÀƱ'q%‰³ —Å©(ޤ€[m  kmA$W%饶[o²àmàRçá˜$Î"dMˆ²…)ðAKeÄŒÈꤺüò›|mÉt˜}øK¶ê*ä­ˆrdGžÅ’ëá–”ç IÑ%e(X \åjU]а«:>lyö"ó£»k;N ºœ*Òa¸ö1´[Mµ30 £†þZ˜‡QDX­)B ÈÓ2óMíhö»`0FqŒOlÛM ØåKJ‰»i˜îäR·ÈZRm¥Ó–þ½klJÇÚ\»O‚C…€¾¼¨v)ZÝŠ“ÉK¹³€i|¡&× dž¼]óíÖðb½„âØ¨nåxJ ¡†ÐÛvÍ•ÂBÔ µ$›u==*»šŒø5wÆPôî«ÙLe8;!9Œ]”üÿ —.BÔxŽ­Ðl¥’5ì«;a·;!² iEÂÃÝ{/ •¯3Š‘7VKƒÖµ†·5ç.í6ÓÉÀñ¹°¤=n0‡)lñc`JH¸ÖúÔ¦ÐcÔ…â˜æ+/–l‚©ró"à ¨žZ馵Ûo[§ÇîFî¸èzwƒâ˜n1‡5ˆá3âΆð<7㺗U‰ÊI Ø‚¤¹q^da}¶[7‡=‡aXö-…áò^L‡R› p$§6d H6 $r¤­|ÛÆ‚ó3"í¦:¢Ë…iãËSÈÔs!d…Žä›ŽzT2Ñ¥—‰¯êe\®èô†õšPº4oŸn6‹z¸~Íc8±Åab |ºe9™)iK J’è ±êõŽ—Ö›ÑÈUeÍ´­ç±¼“Âjk!ET⹿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ+5ƒX`]÷±Òc ÙìgÙ½šÂˆbpd*+’%¬!Ô(‡QÖUˆ°Õ77<€*ünÌô¯ÆãNJ¶¯Ãåáê¶eaÙšy±}TÔ¤®ÂýRSÿÅ\‡¤Ë±çoÃk'á‘Ld&ham©°œëm mj·.²Òµ\óÍs©®d§¤9—Œ•pó«­r{Hú+ÓÛÙÛy J³†s©»†;ØOJíŒuù‰Å°\V -’b-¬Ò?êO gºêOýÕ_éa³©  eq9·?žðÇÛ”Û—‰˜úòM&ÑÛ ­M6²”¤ZêÐEGùà¶•)@s'/Óz‘iv©¦×s|ÆFoK}«sŒ;ÀÚŒ\PŽÓí:·P‹èRàVµíazû;eÒ„ËÙ8|<%q§O„ãx£Í¼¶•ÂnÑÕúª¾GÎ` ,¥eh.KåDd¡Ö…Ö¢¡¯ÏUdÉ‘-E„ æG1þõ$ìm1ôÿs ­C«o3}»s´êÂxx¬è-Ãg†Y‰$ ¾àY!åä Ë Ø$JBs9»®Hoó)ˆ¡™ æR³« õ€½‡gyÐÕ(yá¿Ä˜Ùލ=•4¼A¡M$“ªHﮊQ§Jõö4“”™¸r\ ! p(Y ”ÕÔbÎIÀŽü©©"ñ”å)âdÙ²é{^Ú^ªEeå2$H)qI‹ÚÆ£\‚´*"ã¤8áî°¹í¸ì©Öcz{š24 8ÒU3¬išÄ…vyTØã¡Ï w#‰$ˆ•")ð54K€[©ÈúEj_@mL¾ÑJʵrßmiòådÊdÇÐÚD5çJ‡X 3§ì¬)n®_PËP !iÑV5²ŒÈá ÌnÖHO:Í"Hj[*@ 9I6>°kfóÃf2a¦\@[*a¹:êæ—±íÖ£Ã[‚P¢êJÎb5W!R¿ÂHu‰J xÁz{oZºÛc—ä­hfüò¤ž¯¦ÜëäO–¦d'€ðQ"ÃA°sÿZÝh°ŠÝ9çìaÝ7Ñ6Ðt–Ýä ‰áîÊħÈ^DáÁ¢Ó­›]E®¨HÐ]%W&ÂöQÚ>”›4öËÎ6DƆ´Æ[¬2Zeò›%D•›¤*ÇTëmFº'öÙüÛÉ+xøª·op¡™%N-¹ŠSDu@ºa¤Yñ¹¼õêiçÔgÚÇ6Ãk±ÈÍÅÇqœg„‡8…©S}¼Ö=pH¿=‡»)M;©Dq¾ÒG7 6Ћ„«·TƒêÕ3ˆiA´-ÆÆ—˧ÓUÌy ¥Çq .k“–Z±J1Æ„I·ÔL<‰~ VV @Ê;{yÕÙn0§bBK …$‹ž  LS‰aå%µ™+Ì{iüêG3Å?ñyd!CSÌ[ÕÙX‡Ê›þ`ÌxŒ/3ˆ˜ø<Ì5û*¨­­i”Œî'D,s>Ÿ]e?•©ÆXTÐa(-8 âBˆëk¦³a,/Ü4ÓdKEã)I’^)U²«ž^ïI©Lô®RÑRHË|·­q–ç¡èѳÜj”Z‹}:Ô²ÌRãª(aÕ]I$_ÓQʼ)¼JI6KNÞ¥X·çЛhö?ÆÃ.àvÚ§Wà–rŠÌWîUDW’¨Òä2”¤¥Õ›Oïè©ó ²ôs6]Е¡>0åphCЕLŸ¹üعP=Õ4lF:bð\m ¤e))Ô†ãSº­Òý8'·Ó--ó·÷äëöž&ÆïFKÒÑ…qMËŒ%Å€Ap4TT OW[‚úŽT‚toÄ÷u²ÛVÎÐ튱i8‹/„Âa ‹)#ó®]yÊ“s M†P  ¶Wé‚9T´êήe9e”:­R¨•:{WìýÌÑE!V€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEPs^“žñµ† Ä| ]×W”)Dçl©iÌÚEµRÀ¸½ÇJ®)Ó7DÉɈµ­'Ÿ2,ØP$(»bn2‹2zÀ+[ kq5´7ÖŠ^¦•"Ä1\b——Õ6È›j¯¦®6¹M6°¦’‘ P=œ­D¯‘fМâ÷Î-Z?<“%Ä•)'Ÿ*÷e6™W”D•›4ËJE휦®¿! <Œù„-¥lë$EÊÓê ‹ê>zùíªRßÊâ’BôÍk ½lóMaõfV]æƒÒ³KirêM†nßçVY‚Ûrˆt¸¤¦qbOúTò˜CL%H]ÝEÔÙ=äëz£"t‰ ± °ôžáßPí7™rmË\Bba”»×r‘Ú>z¨÷nùCe ÂÄšÑ>‚ó §^±çóTÒ&µ !¶Óuæmγ:|Ë…èb1máuÎÍMšC%e][ÚÁ>Š·ù9˜Î²—¤º\p“¡ÐwÿToTtðŸMœ÷ÖíqR˪,”…(@?øçõ»š”!F§åÝ‹A·£ZRJy}ŸbÄølºævåõ ¹ U~âHaÉn¡Û…”¨©ßŽÔ28èrPR .C¿Në¢õ$8PqB”»xÅgOUy©jw.%6Ó=:Òm•]Ц¢×¹ŒEø2£¡µ¤[0ôUI1pÔ8ëIr×o_Ûýkv£áÍ:â ¥.§ÄZõ7ì©É–ìU:d2¥››X‹ú†Õjk“H–­­ùu ›+Fa1¢)‰0\Zܵ–S­ÈÓ^ʲ>%žuÀìtr±ÔúÅelb2˜ÎòÐÎCt‹æÍóÔp—6QJhø=Æu(îú**•§Uî“Ë%§FRŒb×§÷>ƒóñI»ËÄÓ Iü–Œ1Fi\ùÓÂÍn®-õ°rÚ)ÌOŠ)'èý¤‡µøÄEŒÄ¼.K¼˜´¦Õo% ’ ”TMÀWm; ñEw[¼Àòš´f®–?#4QENVæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿZž|«jÁ½aƒÏøŒ,[}{\ó2d8Øžcž2R”†”‘ab¤(Ï(Ö¹¤,‚V²I 6Na}9iô×\éSo~Þ+³Ò[–•ª{HCR’2:E®FT¨›øÊX:ƒ\½ÂÜשí¥)V€~·Óú½ž»k¥[¨)ÒP‚†TW'}T­O{–è»`–U$»’Ølê])¶cóvßüê6Xq2Ëhâ8ófáJWTÁëÿnãWeµ\(Ѹ„ €… ÃQ{›v¨[ƒ,¾±³åQuYн?mq­nUêÊ5^ Ö1éîXÏDT)ÅÑ[¦ŸäÌÃÃÒ¹ L…8ÁB´m+ÞêË‘<bUÂâ’3% >7aõZ ’¦ÏÇ”8į6œô©b¸äE‡i*ZlrJ*‚Qåáð_AÇ .8~¾„üqRRÛE °º¾Ãý÷V®3)q•%°ÖS” jO`õTsš’©ˆAoˆo•Zvi{r©„i‘ÙLÒC®j€n2ú=5§bl)Iðóê@q®vèôéR†¥3<5Pp庖µò â **c®)'@RSZ­*´˜Mx9JI%`€¯ïZÞ•¦öªoô#Ý|ò¨›,x[˜qáI#‰Ì(ƒ{Ô ;Î[òU”œÃ³¼Uvä‘<‰9T´håöÔ³ßaô¡µ ÂúÛBi«Hh“vž{—ÍÝr×⮼”³ølë=7u‚ooÞ8Î$ÛX\——2^žåï‘):ä°%jN Š®—éÈÑ^jîïÅñ=¡Œ˜Åðì!M)'bÁ ,ÜfJŠ‚Ôt׆¡¥ÅzM."+HuÀë‰@ XÌm©·eqÛÂQÍS‹Y”g[rž}—DKEWAN€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEP/Ý:ËÃt¸W€£4 Åî<E04½ôñÁ÷G„¸í³øyÕcþâõ#«ô1+<2ŽÆU'Eê‚D¾;‰Ê ó“n}úüâ‡rân–“p +¶œ»jÔXΈëâîBP’þº ö |þTø+¸] .J”ImÄ“§#¥J˜éSwLÂ¥„•Èz—ò‚«Éde@·x$l¼7ôn*6¸H¯Þ{( ¤ùyŠæŒ™¥<€¨Hýo]JûŘÍ8iN}.¯ûŠL¡Å$8´·ÖNo¶ÀújU;"K‰iÈ«J’[éÙöô¬‹ÕYØ{‘’‰IàÛjšÁaæ¦#‚öpARs›[³³×YðÙLHK޲T„ßP.¨×e]2î—-e{0Ôìj.e‡îa“  °äu¼ ZR×ÕRA†ËˆZžën@V€Žú‘©2eHS¨)hXxÞ5ꢙGÎ+îî†ô $r©ihוc»fMbΕM»³Ž ƒ³Tµ´ÑÌ”’’²k L“ F? k7²JGU[”ì©§ÛÈ¡ÖçÙSÆšãΩæB@)Qñ´?ßÏV•´:_ $÷úúýOŠùÞ#ê4 v‹a0q/ œÙƒµx«èO„¾ædIN¹o@ óI¹Z”:Ǫ„¶C¤ £z6ï {j¦ã_••Š2pæ#6„Â\p˪ÌVnæ_-© ªÏèä*½[V·J5cƒšþµ Õœ¨¶ýsêQE!Üß”.´˜ïÜ—Oý ›ò…Ïö“û’éÿ ÛHÁÅúoÆ}›ñ1©ÿ´€|_¦ügÙ·ÿ€ë³X <ôé'Ü7~WksúNc™ÖÐêÔ,,n¥(A±¹®zœ2:Jynú3è= éýöWA邪û6¶ Eèkše(­Båo%.­kRGhs­sc6ëN”¦Ò‘v‚MÁùê¦|ͤÏuk¨AãÄ2ã8–WcÕ;r§ÊR¿>Þ_mDìdáí&S/©Õe%FâÞŠpm´¸2r”êmÚ5ì£ ”û6¤ž@÷Z»-­¼ç–ñÕú7WRÎÏ™ð¹îNqeD[eÕ/ÔHí#Z‰R'ª1IHÄ…f*CâSÜ•·p’°l”ÔoÇZT”»*ÉpÜþµéí¼=nâ§»v#ÌÝxŽësŽ6¾Œ•sc=ïYJµ‰ù꤇–ë…L'Pƒ§ÌjWâÅiam©N85BIêÖ¸Š$ºó+Ȇԭ.¿ÏWÊ’‚úRÇ]Ï?:ó”·JOîM1,GZK©›žµëWãD)©HF¡!:¢°c˜A·–£!\ˆ¾ŠÐºòe•Çd4›œÝ¶Ó—emˆÁa,{9Jo-å’®D¹/³E)"ÿõèµ£«—1$!—R¦õÔZçºô!NÓàO—JÓÉZXß_Uç*;‹nBr8 *Öõ¾å²“Ã5y|‘¬¥õ"Ìp•¨ ÖõÔEnžŽòÉH×1¯ÿŠÄŒ“Üâ)Eµ åBûûHû>Ú#¶†&”<èzê}¾µQ‹xëîg/®K¸€ÉŘãâŽÂŒ«Þn8yHEÇY(ÌŒÄw\rú}G‚ÂbÂb2âÒËil)Å•(€-rN¤úkÏNîaMo³d]™†éðð„4†C„8¤©-¸Rt R\*æŒÃ•z"9  ÖäÕHÃÑV¼¦ÂŠ(ªC¨)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à½8ÃÞÜëI˜ì¦¤ ]•ASA98Á·tpJ2q5…eæÞ©|éâÇ„n—oˆP?Ä ’Gÿ·‘]VQÝqîGUâ Jã';H)”¦Ýä¯ÖÑX v# °Õ:Úã¸vVfá­!!ÆžZ,,G¦£aÈÞã.¸P²|`nUóײæoB¹sɬ԰ðk˜xuÀ*J‡opµJœ=Õ¶—Œ„qRnSš«·ŠÁSr jÏ`ÙÐ yPÜ™H»\›º$Úþº‘8ç2OÔƒ¡¼WBßqÒ•©&ÙU¨šÝÒ…ÈKñZδ’”ò5…¥„” È å½ùs<«HÚc3Bã*¯ÎÔM}2ý{™:ÏE 3òÆüð ¼™¾ šcÊyG,d u_ö*èu7°#2}…%Ýñ=½l^;hh¥X"Ö¥’T2¾È,ŒÉeuA±°$©³¢žB¼Æ¯,Ü´žR;m’ØQEU¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ;ë5‚hŸEià nË”ão¥V XÔÍ*Þ¨Qå…%vN†ç·çµ[ÄŒi…ICn,àEÔ-^jï]tk:NŸ¹é¬´×¶U¼Îý r¡¿û%âLµ¬Þ>D½)‚ÖR H7$vV¿eEo/G‹®$›Ù]œ»Žµv4É)u*˜…!´\Q¡6ås\¼CqJ*3JE_ZÕžè7°SÝi¸É(pëù±¯÷¥™uF*š+‘œ¡9Åȹ:Ÿš­=Àzp0²´ñ2Ó ùÇ+ÖÒ!¶ÂÐêŸwŒá!KA+Nëij𧉦ò”àŠ>ŠI¹ewûV¨¢)Ü%½JRÙÓ²÷¬!˜6ÒQC«!!C^Ýξ³±^i€ëÎ`‹)*ÍÌéUZrSœ0‰C«ÿp#²Ýõ¢ñ-IF[¡—Œ,ÏÂôá8üø]^}=Ž›Ñgdv–vùð™øT¸' pI”òœnâ9+JZQÌ¢°Ky€98€Ü´ÿ£Å×Jóó£®×à;/¼h˜îÓ1‰4Ë–„©”ã–Fe¤êPVz·7 °< ^jDfŸŽê]eĶâUp´‘pAíW»ÊN§UÁéYBÖ¯ðÓÚúQE’¸)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  ^z{­Æ÷C„©´©Jÿ3 ÿðò)†¥û§j’Òá*SKt y­/oøy×M—ÿx}Èê¬Á‰rkÉë²ê[¨F•t8Ú²5hXÄ/¸‹:®´Ï -«€áäž±ëcÝZ‡ £© m©bÊ!7ïù«ÓJ­)Ó’ÝúÓ¥ZX· ¿DZ-øiÛÊqôó =[w²¬¶$ÊmoH/FHM‘aÏ·SØ*¢ŽYâû¶ºˆä5:Eþʲ1„–‚,T£ jI¯¬SÛq˜§†³Ï,÷:-UðûjIqžž¦¼h«Â–„)y€ÌH$Øóª†/‡Ë°R¤iuZâúÕ†åÈŽC\â–Š@<Æ¢° þ•ÆR—ºQú«·+wUdSo rZNI¥9p—S\pñ†@Ê’ó@-DöïùÕ¯5t¸ó‹u±Û–À»gæ+;™Ñ}PØ6*ô›òìûkhòƒ3Hy "Ä«õ½]•ë­£SM±yç+±ã¯%ORÔ%I5‡ßѲ•¾®+βÒÉPJÅ®{Á5»Ê2¶ÂÞmZ¡bßm[Åå1"8NT•ߪyÔ M–#ÁZrè¤j=5µúÎŽøC>¤ëÃöð¹tåQµŒ¬uüÍF&—m1Ⱦª¹¸}¿5jÚæ³™ßuhQá:‚?UZHÄÔŸ JPØXAJ ÷¦§D—âƒaN9lÇ%Íï\«Ä—+²É×þ˜´}e%ù=-´ü'’Ø}* ¨‹X·CB‘1ž?¶Ãz¤r³ÊßçöU˜ ĵ¼úFpH °kÚ+uµ x…”Úb :·×ž•¼At”’ã/$ðå³Û&²ºc=}ÊŽ77"d¸YZ«¤ÜžÏó­™n6*»:…%(OŽ“kŸçV§Çm°ŠTšå9‰¾Ã¿ŸÏPȘ·ËqÚk#À‚®šÄµûš”¥ß¿seáûJ5Ôû.Ýr3]vWkÆö‚>3!ÜB#"+|"P‡T— G‰~N[ ’AºM6ƒ¤W£ðçl†Ü3ƒ. 7ÛÚ)Ðà¾JÔ—×R¤¨4.¨Û-Ȱ¸<ž”‹$EGN¼ëÅJ}J]NÒ6ÕÜ`±Ê3EVåx€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õ©¶¬Put–Äåb;êÚÉ2âª$–§x28`ÙHm)m¢oÚ¤¤*üúÖä-\òl6ü/8µ/K)W$ú-kz+ oÿ \môm|61FfF^&ëêy) §ˆxŠj×:¡J-“qâ^ÕsæÚeÐÊ-Ç ‡\ Ïö+ÚÛB.„#Õ~ådÛÝÉz+±ÐÀJR€›wU%á.¸ÔTºƒ»ýª¼˜nÇx.FN¡vÃÓôÕÄ1†[ŽñoN¹'Æì©›”ÖÆ p˜E€—qå r õEi.;Ë“ù‡”Ü•µWð§ã¬²œÎv¤§[ŽÿELÂxªKî© »=4ß¶¤a).L³iJŸ’ZlÎÝç•JÔˆZCM%I̬<`AÒÞº„x;–,´îTΤ+Oœvó¯£"f[lð›*AIM†µçµmZ ÛÁgÝ“HÒeW’Xé•Ô€F…- -(ÆW4wÙ§®õ> y-KNŸ0¨Ýc [!Òµ¡Dæ9UôÖ¨ŠÂ™\”Êp$¨Ž©° ó¯)7—&ò{HAFK_—±’èyZö•ÅEuSëQE’¤)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à:KˆÝ! -mµŽ2]RRHBK/§2»†e$\ö;k¿×鯧[Ý^¶ÚS„c­$jmÀéìÒ¶…gBJ¢ìKF‚¯QSoUÎKË/ ilT;u[ÔIùªÓSOÑÝ¿üÄ€UþT ñ]°ôt6²BFdkéçÊ¥[1’¦“ðËŠ7¹7IÓüô­®u·qJTç«ö= ¦ˆ­êB­:ŸO_r´†U5ä¹”Å!'U¦×õ­B9b#ˆ’•\Éȓ̞F¤"TU)o¸€Js„õyêjUb ÌYⱯkE¦ÚÕuÊ”T³,¬sÉaZΕi&Û‹ÎqÐÚ+§Z}Y‰²’¯Eo3>$ŸÌ‚ß\•výúê$Ljô’Ó’¸éÊ ÕÙ¯¢Õ£­ÃbOƒ¡\4QVÍë¿÷é©ì-ZÑò¤·õäŠúóË·œkG4ßEvF §Vâ2('©{èm®•bcÈ BT¬×¸6°ìåP6·TÔ¬žDCÕQ9g!-©jN™Ñ¨õÁ^ƒ^søX¥Ýó÷<χö+™Oãƒé°Ì¦(XÝ)Ó2oòìúk Ü¬9m%”…(Úç•»¹Uh¸Kî(¡÷¸Okƒ|£ûþõk L4ÄÂóó7:ÜWŽ“xÆroñ—½òj·g8ÂÐüg•.ʱí¾µŽÜÈ øIyµq•rn;µ„ÊŒ†ÒMã©Z+5ɸҶS(r?¹¤] *ewPÒî«f1‡¹ÁqªZSùœóÛó0ë(\S%rHR®¤özªDá©fÈáMÔ•›ý£ý+(r:šZe ËP eH¸6:5½Cá“#ŸZ:ߪB®-ßP«;™tƒë‚Y]ÙÇ™ËªÏ ÎÄðÅ&[Å oÅ·oeýU`·"CjŒWð†ŠÌF½ü¹Ö’älÁÆTðZtQ׳—£ZŠ<7”…­&*Ò BmãvÜšÍk:ô›sŽã8÷–õ`•9g«÷?u¸ eX÷6nSÚ•ˆ/DL®$•ãÁQI¸ëeZ¬I°¸ÒÚW¢ã¯2·c´˜®Îí–Œlû<|r;á¸Ì–xŠyKº Yu'>b,zÚXÚÞš'Åe;YÅ)K9çìyKëè]ÕÌ#Œq÷3ETg€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õƒÎ³X ^—øV ~˜¢vzGçd2ÌœI•‚Ì¥&êËdÞžͯÖZµì†L4°Èu·Jå@Zäó®ÁÒù¹XFÿ1·¦°gf,¨ªÌ’h0–Ь9uÚq=k;ˆ®@ÒÌçV éB9¤Û™ï¯ee±ÛCœ¼µs½™J'•<Ž*Õ¢P±äuú(-9*A e–”‘ 'ý45¿ BÖ°ü´§‡ª É5%!+}2î¥Væ+¯kÿŠû‘å3(€éZÁ HošÛñ =¶¶ŸÎ¥K >V´À(R iÕ7·2{ϬV`eLD¨¾s‘s¯i¬5"|„)l0Hå_¢ü½5æ5kIźή#Ù«G»¤á>So<á~ä’1¾ßƒ4ΗDòõŠÃM¯ >V»ÄBn?`¬"BÛmO!Æü"êâ‚/ËO³í¯¢†Ã°úò %66r¯&šÝ‰HõÊ.K)r—äRÃ"Â9”ó`¬-›AQLŠ¿ [0Ô8YAPQÔzª1 IgŠ™d,xÝQ­F’”2…†žC‚ÜBo¨þÍz+«ª¥_èêy«í~—’éÑ_>zÿ3,.;m§ä‹ÙFå[Ö[aá;9OY >1í53Ó"¡R‹æú{ê«oJ+Z"…8‚Ii—Ñ^¶TR„Çlu—ì†!Ù<#Âã˜Ð&ÁfDVJ’ÛK@RdÜ †•æ> ‚bX–=Ú~l¹Ž˜ŽÀG®yÉ:\’A™å^ `˜l<ƒƒáÍaAŽÜhí•©YBBR.¢I°RIïªkbÙ°ÑÑnå&ÛyÉrŠ(ª#¨)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à]9b>ê°¥¿âœu -ßÀ~»íp^œ%mÏ>–q¦”áBI ‚ËÉ 6 Ä&çµ@vŠŠ·ÐÎÍ9íºƒ÷ ÙRÈ„„…mÛýéSaÍ@m“ÅJTï"TI·§•R/Í/Ž#hudæpkyÕµ7$¬î´=u$/ÞG?¦«eazÖƒ“’\÷ÉåÉà.+Læm) .ÖI¤n2cös@J“§Î{kvñÀr31] ß+hOaÜTmºÛÔß‚²3%@x¾‹öÞ’ƒ”T—Y#«)Æ2q–xê×B9,0´†Äã¸BO _² eQ[hZJ—Ÿ¬T3¶·[òÚŽ€üG=lÇ•«~3SMÔÊ@i7ë _Ñþe{»+kkznte¹ÿœ þâ½Åe ¿.1öû…£¿™ÈÇ‚†Óú£™îû*V8(aa2œRT¤©Å u~ÏEhûíÊḆø ¡@9—BG`ŠžKQœm,BB’µj¤¶t#·ìªGU…ÝEÃo¿bïMÒ¥kY֌ԔWnù5uIJµ?礜Âé"äiÏOUSt-â§UBæê‚¯š¤(y—CP›PBüt5ÄÖÎJv+åÉ 0àh;õ®«M…5“›m~‡ æ¿Z®è(¤½;˜/8ãˆZc”†ÆUgÐ\ú i:*˜l¸Û¥I&岿³*C®6»¶èm`X„ö÷ý•ªcÎ-¥ÕŒèN¥¾ºôO®_¹çyêJ©ÈØe¡gT:ºj*7Ÿ·àÊ`¥ðt$rï7î¬=)© o‚„…¶nl-EJúž’Ï ) l’E³µ‰¦xëÏó Ëðæ„!Þ:\)Ô§•aå¼[Cï彆SË×Pï²ÜMô¹IҭǂӌYÇ«þ¥ô¿®°á ß,VW¿¨IR{“ÁûËm£› ¼,;‚Áy.­1&4†CŽ?kNd¢äú›¨‘ ú.Ÿz«ÏÞŠ;+ß&-¸"l,ñ*ZŸ})KVJ‹k )j µ®¶m¯@Ç!^sYš•eÆ9;mÓQaEU9Ð ›ò…Ïö“û’éÿ¤s~P¹þÒc¿r]?ô;iø8¿MøÏ³oþ&5?㶃‹ôߌû6ÿâcPýkÛ[V¾šÃÈ”tãĶ€ï> iøSÍàñ¡[ Z€Srse/­&Ú¢„)$Ü è.½äqîˆÁIq$×ôs®ÿÓkÆ[ÞÓQåºäŒ=œ=§pöÀ²#…©IY:ž±Z Õ`l5Ê+ˆ¬ÅmÖC yð:ù7=ö«Zššµ¶Œ"òÚíÛîvXé=ÓÊI÷ïö+=‡) œ¢XXçêµWKÒ”„%j ´°@p›Üb®ÈeRÞ/)§š@æØAŽÕ_˜íÓüªÒñ,9¹jr,шRTÓ u½-Ì8¥æ "äA&Öª*iëWpƒ[²Ëêº%¬ê©(á/sæ&,eø¾„©wx€vvUÄâTgt)äG";©¦Æˆ¨¨mµÊ‚¯{Uv£9õ%¼ÓSe?Ö«ªÜηÿIg+HZ¼ÒŠMõhÕô¡M¥n¶Ê| ›¨§TŽËÖ­0è!+•“ÉVÔú*U¸–d-×ðóÂsªëX÷[²©6êp(¥jHQ%ºÕw¥ZÑ»£*rXöþ…¯uVÒ´jFYM¾¾çÒÁp\o…)8ÏâØ·™.Bˆãᤛد 9AÊ®}ǺŒ&6+´*^`؆/,6V¨ðâ­÷tå@&Ú}4ít1…ŠÆÜ«2ñ–¨ó§="EJ%–.kÕÌ´8°"ÊB£]°ãZ­§«Ô¢Ý8¤Òãô<¬¨*’ßÓ<ž[~JÅ¢b‘ÿ b1ñWà³ÄX}Ńâ%ÌUÈX ÕÇðm¬…ò”ý–Æ#DS‰cŒ¸¡¾!äŒÅ6Ì{3^ž‘Ùm/E´µ­é•Gn¬zD|4_sÌœod¶»ŠÞ9lv3,‰à8Ø °ç˜B…%„܃V_ØÝ¹†Ì)à­ D\FÞ¤aîž"Žk„r’u  z\bǵ¬~7YtH|4}O4U±{VLG`¶•¥HXKAXSÿœ$_(êê}ÅGñ¼Œ=Õ²½ßíP s†’0—È'¸››zeb@ÐåF_EaëUŸdgá¢#]¶y o‹ÄÙ¼g‹ j~L©øsŒ·Â )Si+ ̵çÊ-{\ªÄ$Šz!Xì¬×ÕÔîg¾}IiÁAaQ\ÆáHæü¡sý¤Ç~äºéÜß”.´˜ïÜ—@?ôQEWéÂâÝnâì?õÖ€6äx5ÿ:ï´½tó ÐaaÓaùy«i}|EGUf ë°“Ìõ¼Z{ Œ¤ètÐT˜tˆÌ1•'6¤’Nj©‡DІÞT–‘ÅeJζ"õMJˆQüón^á°z¤Û¶¸¡jêÒj9x=…K×J²•L,¯ó'Ðzs¦oü)JŽBNcjĨ›2+[„\€FP{,*9æT´¥-FKJN—祿ʣRß,¸Ü™(FA|©æ~z±³Ò®ÔãSgåuî¯i(Nœ§—Û‘×9ç?âV[¬yj{µª)ˆ)-º\C]€é ì«Pç¡¶ò/E'C­ v4·§¨S•+&Ö#¸×²{jQ§Ewèxª•jÝÔs«.q×ìl¨ÐRT”«.d›n."¦ÁpÊnhN99å†Ûi¦ÊœqDؤjnyδ„Ã\›‰kRˆBH‹½~ƒ`NÑâCÉÀ›#K©r0ŠŽºY<’HºÕdÎÂõãµjªâ´¥oÇæ{-*›´ ›šËYü»ñÕïZ‘=Ý‚ÇÖÓÍ%Ćb– ºuXê’Mˆ jV·?½¼B 8£[Œ¡•;à y!·s^×SJ!a<ºÖz2Ô­ªÂŽ©Z%J=åkÓUªJ¤º¶y¾æí·š˜ÎH{wÛLZaî’0÷ Ô²©JAR‘d‘œ›‘®©¿Óor[âT· ·°³s €.û o¼Yey„j–µzY©Þ·q/B†çÑï[ ņ'`q—ßp¡Èìq£¨«AwQt$irJ†^ÛWÚop;ëp©¯ðin÷ë+‹o±Êô é£Z×ñ›Œcƒ? §žð7 ½ÉxƒØÛ ìg[Ž^T‡¤ GP”¤:’R¥•à¨e c£æû”§üyN'úµèEf´zÅÆs“?cè—¹­´ØÝ¨´Ûcaðg"1 2’âÝ+-’â¸J(ÈH Q$ž±É%œ…W jò­=óêK¨¬ ¢Š*#aÜß”.´˜ïÜ—Oý ›ò…Ïö“û’éÿ ÛHÁÅúoÆ}›ñ1©ÿ´€|_¦ügÙ·ÿ€ë^f¶­iÜ×û1ŠàûÕ‘‰™ÐåÇÇ“Æi¢íÞa-¶Ú9@ &áf¸I¾¢¸~â"©m¡‘ÆIÊ¥Ž}׿u0=6¤œKz`³ˆ³‡áˆK!ò]ZÖ¥  ‘Á=öË~ËðWb¸ã,Çl<ÑUʳ$+OúXÞàUUv”Ú=Κª;xIöþE—pIJœt-%9SÛýëQ:ä<>Y”¡ H±µîj«<Ë©vD¥¸Â\ÊM²vs:÷Ö1¡å%qÊË?7¸âßmFéíxÏk¯˜ÊJ<ç¹(±  Ž•usië·ÓX[Ã$©¼™[6Ê{´µý5LU[,“pGh«l2Äæ¸ö}·ó(,’TÝ’SaÎäç¹¾£/¦ùÂÏÍÐ× Ëy™nV ´’vtmJpiílñu EqÏj*X*"ÊHP$h Ø+õ]6 Þóâá[Eˆµ;m!ž´Þ…؈ԧ2Œr¥Z|ko¶“Ù8»(î32> Ò ·fXÊ3¥É2³(››Ü“]W£¦ç·ƒ;mvkk18 Áð8x£s<)²ä„ÛiBTU׸¾`‘¨^äëì*VYÃ} ¬Jµ[ÌÔiµéѳM!¦’ÓM¥@ H²@€‚¥…`rµfªp¢Š(Š(  (¢€(¢Š¢Š( ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.€袊®ÓVzbnuCœGb3Šq7R xÙ*»@\ƒÕ*·ʸOMÇÛFæÑp£H3qfKŽƒš9 qÌížÅÙEû–¡Û[B”«ISVIF´hÍT’Ê]„–SŒ--;Ãye#®¥¤ê?óo¶¡\øêt!¶Òµ¨h›ëÙ[”I-«þ%´†üR”óï½K”½ó«í ÐXƒëçóz½ì4û„¦¨ÁçÝœW÷ò½«æÉ`†G„Ãh­/Ɣ҂VŒÖI)I)!@¤’“`EÁ)Ì5¨Ú”•ŸÎG/*À%Y ä;û+3›i§Ð®iQÔvUàû! :–å]°MË œ/O”¤E[dJ*ã¤Û澞º´h,…»šÉ@N—×P=:üÄÖc¦3êSŽ Õýš“r7„¶[$ºBÊÉ9«¿—ÛU‹• n´pøe¾™Vš Û\®ŸÔ· ¸‚RHI"÷w>‡ÛÄÁ¶Sİ/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿX7¬Ö(¥ tùm#xsËm’¦”ò–¢ïç (*·ý·6±')Ö—/ÃZ%iSkRRP›å)¾¦ÆúŽÃÛÝ«C½ž»cŽíæ/Œì¶7ƒ›ë–Q‰:êiÕ’¥¤dm@¦çCpuµº·?˜GEç4×ÎÊd¾¤ËOÿb«jQ¨äÚG°µÔm!FuppvÔ˜Î!×d"PZV— Â((d"çõ;@ÑZè4¦Øe·Ý…§–@:£æ¦¶ü7c‰ì½ûO„=¯ÿF©/¢vÝ­·AÄvX-zx\«ƒZyU ?ˆZAnU™Ä ºÒœ*JSmPž~ºùîF˜–Üu‰$6'0"é¼WxÑ+xdãû8F¶J%>GÚÍLŽ‹[Í ð?+ìžQ W„ÈúlEëhQ¨žýM'©ZM6ä“ÇcìÆ(ìlN¿3ÁmòÔÖì:A ¸“©I±Q¡ìÒŸN{ÛFó N7oÅðÐÙy,¬–žBüâë'¬•“|£/XæÓ”mF­«Å¶giØèôié £7&-’Zâ6ˆà-à¢àÎ:¹sg&éýOGýÐïvLü§%ìÄÜ3oJ^x¾ŒÙ D´ «PtPÐØ_qRÚµªY[ãÂäð9©çnìÆråYË•drª$tQYEPQ@QEQEHæü¡sý¤Ç~äºéÜß”.´˜ïÜ—@?ôQERýÓ¾$™;„ìb€cãl: ]J¡Ây6HQºÍÔTÜØÈ05ùÝ»ØíÛ|)¬+i°åN†Ô!¶øÎ7gT«¶ y-BÄÛ^U- ŠXÍöf²YX<ËŒ¸èŠZ}Jkšê7•&2,PàIñM«Ð‡::nqÅ%kØÐ¥$܈JçÿúÔ®ô{Ý ˆÈ½’Ì?þFWõ*ùë4¥Ù£á¤>PÃÒ¬©£=‚T5\‘Yo Sî:”K-6Ý…Ö‘rO`"½s£¾ç–•l’ˆ¿õ9bßýZÑßsÈP)Øòíü£+úµÏuªB¬a”û³ªÖ”)ÏuXîôB´CaöFMê­&ú››}7úL>ºpi¼L2*YyôÊ‘œ¶Ë‰o2l”u¥ «(Qµ••ESÀž»£Dl™ësÿÔ%kÿÔ­cô}Ý$tdgdÂÐÚ|ŸêWž«“©»vR}ÏC NÝQ”6mÏt¿¤trØÕm®ñ#a²p'^ÁÚŽøÅ$:‘’¶Bœ‹ ¬PnHPÌ.i¤ÜÎë79„ªLš“…mŒæ_iã>Sѧ=‹– fµ P Hær¤'õû9º­…ÙÌ3Ã0| Q¢cQŒ\A¿ }aæˆXËÖY)ÑÅj›µM°»µØí‡•&^ËàîaîÉl6èð·JÒ ÇUk)½ûyêuÔÕµÍ⪞KŒ%Ðó»1,õûõ?d9VkvVj¹…QYEPQ@QEQE¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSÿßHÁǦûñ›þÍ¿ø˜ÔÿEPQ@QEQEEPQ@QEQEEPQ@QER¹¿(\ÿi1ß¹.Ÿú@79å í&;ÿÛ—@?ôQEQEEPQ@QEQEEPQ@QEQEEPQ@ ›ò…Ïö“û’éÿ¤s~P¹ÞÒc¿r]?ô¤éßHV×tqßÅï#^ç£ãéÁxmµF=4—Ð[mN%e.4«AÊqÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôP ?DÍÂ톼y»}¼èx¤,j¼\=JÄcÉL×môHSÅ%j$¥W*I%_­cMÀä/EÿÙ endstream endobj 820 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [506.458 339.207 520.156 351.827] /A << /S /GoTo /D (figure.10) >> >> endobj 821 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [300.544 324.429 311.312 337.381] /A << /S /GoTo /D (appendix.A) >> >> endobj 826 0 obj << /D [824 0 R /XYZ 33.853 921.043 null] >> endobj 574 0 obj << /D [824 0 R /XYZ 127.551 568.911 null] >> endobj 827 0 obj << /D [824 0 R /XYZ 68.868 98.53 null] >> endobj 823 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /XObject << /Im10 822 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 830 0 obj << /Length 1372 /Filter /FlateDecode >> stream xÚuWËŽÛ6Ýç+¼”Ø‘d=·EfŠP ºhº %Ú"†’š÷ë{¤-OÝE^^Þç!®N«tõë§4|ÙúòœÕ«,Û¶e™¯öÇUÕl›ªYÕMµÍšzµïW%~ëM¾Û%£€á¸ÎáU'4ƒÏZ¾+¿Îëä‚Xž˜#¯ÝvøÖI/õv½)Ò"ùsÝäIXÄ:o’WÜ'åÄšƒð[Pgì¬>ˆ þ4ŸÐ¡øË½¯ë²¹,±J´Ü¬ÿÞÿþo²b[ûèÔ?²_ov yÜÓÒá´_¶bêÍÈX< â`&.•Y›ì·\ý1ªØ<„/ŽC‡X™Ä¨:ǘ£G¯qAN™Áà uxiÁ´6¿ ¥:Mf§¦Öã”b_ùs¦„Á]å‘ Û­<ÍZXžtöâ¼ÐZM2jä ^Öb4§“%[ˆ!(²:ÙSVI|˜ÔϬx`÷ÑàQU–xq='V ó¥íœ3õŒ(ÚfêƒdŠ…åäUÉIö ß)ȸ^~CƒÀ%÷A-¸.µféˆ*öɆ’;L2‹@4—þ”ìÏ(ÝëEyP•'gP‚¥ z4¶¨@ÔA¯ã-d#|q3ä*ÐX¼1„`žza/qBÈs5uz!‚éÑ*²Òþ¨v¢¥Pp Œe‚_Áî«dlꥌÄ™¬‘”ö6Kž× ÄÆò2ø M6Å~ þAÕZÇ^Æ©òŸ±ÖSæDf'?t!^ö²9k1É °Ó#Ày ÒPgAgCe;£gN .jÀѾ®ì¬½c7(L¹š=ÏOH9úÂ’á0 5.†ã2JÙìYç#½å–²z[–íýêoS YˆÃÑÄñI¸6{,ÆiÞkâX¾›Lq¢…ƒ^جò^GBéÙ~³½gNмÀÒ ‡š“!·ÄIŠ tóÈñ®fŠº¦X@HÄʤiªä;½‰Aw,†VàwžÔusµÜÌË­Æ´8ž!caBT#W¤±^p÷|zÔ¯_•ƒüyÊY•> endobj 831 0 obj << /D [829 0 R /XYZ 33.853 921.043 null] >> endobj 828 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 836 0 obj << /Length 2710 /Filter /FlateDecode >> stream xÚYK“ã6¾Ï¯ð-rÕXõVnIvfk÷´;ÝS©­d´Ì¶Y-KŽ(uOç×/^ÔíTöÒA ø€Žvç]´ûû‡H~züðýç8Ù©"ŒU–îŸvy–y¹+Ê—pHA‘´"c¶-¦¥ f¾ù;±W_©•d-”N–ܺ|¼»4)îÍŸ&9Y§\Ó!õµyã1è¿GK€ x$$‘A¦5¯¾Y7 ‚HY)ÛðÔ“¶ÍØž“}ë±wpð"σŸDÐÂ/pH—JË»¾Þ<‹¾ÝK· :tò{1“7£Ú ÙX|€ ´mÉîYеB­µ<VÇÜIOŠÙ“ä\ù@'ô¡õ ›6ZßõÆAØ\äQðˆËbðW1²~ÆaLãOé_/–¤^x8]4P üX^L»À42\‚­ü>·lÿVörÌ?\`±¬ýºtòýüÎåã[ëŠsÓ¹1xnØÃ« ÷”Ar¤l€<ðZM/ì½Ð4ÿ<1ì˜åµÝÀ]‹Iœ¾žøwðò&[—³­<ÛúãÖGqJݸnö%"M+{‘¹Ãî”· ~K§ º/|´ëŸ×\‚5ÛgzˆxZùf¤qÇ­<’bÜÆQ^-{,`0v Uáñ)p2Yƒ?R¬<Â5‚Ù°¨8x.¦—%›€¹{LË$H DZdR×êæmàûÁqo$_ìÎ/–RNI/vCw#Z#ñ»G›Ý=Zy8!kÓõ %,JLæñvÊ/÷[mnóÙ–éN^Hmý¦µv~ÑöíÍòùq *RZz†@â˜Â^šb&ÑÍÁÙ?È E2ÙÅù§Q`D9#˜0×qÀlN0J.æq/À2I–§3L¹ËÚH:öˆoÁsôY˜FxÅ=. §2ù¦Ó'Œ³1ä •AÑ.¨ 8ZƒçïAT‘pÐûH]‹,- Püx#‰éÿc1²Ìa—W¾3ºÊ`ŠL—õ° ÑÜɼmëf<™p§©Ç±ƒ Œƒ*¿lðŽ*\óüzH+qRÝxÀ!À!ŽKv¿J™ÕäÈ¥/Nàƒî;^¢N’¸P2àáØÛa :!®æàꘉ NôXšz!L´v`ïHÃ*+î¢'(„øwñùãú„¿:†ÕQÅ«ãÍkÀ[àÇÏpÄNlÚððÅjh§6ÌÜXQ* Ë"ñm˜/cÛê#—Î÷=˜´Âæçü(B¹»³Ô=O¨,Eyé%›Ê;;Ru Y(<ô™‹-{[‡ yÎzÐÌ%æUx·*8o,&Iõ¶œò"Ì‹Ø3ó›?$À¨jí _4„(|³„iÇiŒÞψ…'bœ9޶9‘¹pÅÈ IV£ux²ÎlEÔ»cþED-èÓGTŠøàºÖÔnÈJÎ+iuÎúM†yjãÜcùŠ[£2‹©”+ràl…s’7%Eš(¤3îûéP†›Õ x/*¯Ã ä/S0Xóc'•¶iM~“i8ÆRŠ 9Ú·'éÄÃÔ¶w óÂÑ‘Ï]ú†;P¶ MPÒÄíúî™D¶Ë½Í„[hÙ4%=¸r‘n&éVù& ~ T Ãä‰8ɉ§ã_ˆ´>,O4囘8¿ä*_´IÔ:WÅŸÔYrAjQÐâh XCUUðûHG)Õ"Ñ5ÔKÂ\GWƒ§¡¾ü½þ'­[Fc ¼o1b#¹-4kˆúmãÑÖý ¬ œo’pP›“ýF8 ÿmíúóŽ?¾¢BôãÌ îpÿ ðK‘…Y,à,MWLŸ?ü‹½D endstream endobj 835 0 obj << /Type /Page /Contents 836 0 R /Resources 834 0 R /MediaBox [0 0 595.276 841.89] /Parent 832 0 R /Annots [ 833 0 R ] >> endobj 833 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [135.177 111.957 145.945 124.576] /A << /S /GoTo /D (appendix.A) >> >> endobj 837 0 obj << /D [835 0 R /XYZ 33.853 921.043 null] >> endobj 146 0 obj << /D [835 0 R /XYZ 68.868 798.142 null] >> endobj 838 0 obj << /D [835 0 R /XYZ 68.868 424.327 null] >> endobj 839 0 obj << /D [835 0 R /XYZ 68.868 385.473 null] >> endobj 840 0 obj << /D [835 0 R /XYZ 68.868 361.064 null] >> endobj 150 0 obj << /D [835 0 R /XYZ 68.868 256.498 null] >> endobj 834 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 843 0 obj << /Length 1807 /Filter /FlateDecode >> stream xڥ˒›Fðî¯P9”ZaB®òÅñ:qÊvmYªø`û0‚‘4¯ °»Ê×§{z‹ìTâõC3ý~¯7;̼ٯÏ<ó|½}öâ­¿œ1æ®ÃПm÷³(vã(ž­âÈeñj¶Mg_8ºl¾`Ìw…l$Ïd-‹Ã|±\…Nst¨e>_2§Íx#Ë‚`ån¾ˆ|çO‘4óoÛß_¼e«>7o¶ð}—E†ÑíýÜ_9B9\;·›ófq‡ ®™d‚ÀÈ`>Sâ¯V*QÃ[ä9œx-šù¾ç®V1ðÔ¼Þ×ù‡JN 0×÷ÖöÞ7Ô* ´V.œ–¡³=ʺ÷-$I\¡H­™Â°Ó.XàAD\8bÇH® p”†ËB(5%=Ž2ÁoGóªI,^*iJ‡Ê®¾÷õoÇÏ2û.‰P> endobj 844 0 obj << /D [842 0 R /XYZ 33.853 921.043 null] >> endobj 154 0 obj << /D [842 0 R /XYZ 68.868 798.142 null] >> endobj 158 0 obj << /D [842 0 R /XYZ 68.868 259.885 null] >> endobj 841 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 847 0 obj << /Length 1773 /Filter /FlateDecode >> stream xÚ½XYÛ6~ß_a4/Z fxˆ:Rä¡9¶@Qi×h6‹@+sm5:\IÎfûë;á$ËË=‚õ‹Éáp8ç7¤øb³à‹ŸO¸û½:yq¦ÔB–j-«ë…àšÅÉ"N"&’x±Z/.‚?M®>rÍ—šqø=?]jœ&Žëâùéåê¼! Ãh¾y¶Wòi¦ƒI‚° u4s¯ü¼hó·EõkÑõ$û ½8ËÊθ󦱦ñå\–&Y}Sš6«s3“$¬zfÉõÃêù´Û˜æ¬^7Õë²É?³©á€Þ Cž¶åÓ.kû"/M7ÓéŽÜþTçEµ+ÍùnkZó¦)K“÷ESŸ%–¤’Îz–­×$°ß:£gç½!²[×AWTû2Ãã@6‘š«¿à¨—>7Ë[&¿ä¢>3õAÔ™÷ªzÕÔNWà…=s-Á`6ézSô[¢ãžU¶™‡ó¥Ïë“¢ošº&ÏYU-³/äßYQ¯Mëgv~¨²¯o3k@{sÚ«¶—sw'ïïMŸÇs÷ÁÕg"> OÌTê0bµ- 2ƒ2FÆÁÚ,¯ÛlS™úT&AOkCþ;Ö ÿ¢ 7fõÒª%ú®-ºŠÖškGšÒ§7[È€¦34k³uQа, m,j"ØÄ%¦zc|>¼àdŸœÙ—2€B`µ,/}PLÂÀq„>š%Z ?údh&ÃpàÊx\~yºTqTƒ|H4ÆÅ9‡*Çp–+>kPvJ&ƒÄœKß±B2‰Qw¿¨ÅQúm’@)gS¶&e»âg Õ7ŽúÁ¸Ó ‚ݺ9¦ÍC\e[ì—lÖKΙ‚ž7KЦ-6E >ŒE> C ˆ°ÎJœ(HôªÊ“p€´£QOÌjp8ÒPü?Èbä@p=Ø"…Ð X‹®vïR±N³ÓÈ­/—«¦µ¢ë릭F9"È®l]6û~:”B6¿hÁ9FÃaIóõ}–6­/|iÌ´KÅyD F‰àÝùíùò=Úå¬'òîh–#Çç¢Þ¸¨„)DåF³ré·ôòPBN—ÆÆ5äˆ"רphýÊ]ôq°kÍ—¢Ùw޼ïAJV‚;£ØUÒË ±G;Mlð¬´Â °—Ä9”ƒôó…dßh¥w+ñ|›Š·\¸d| ÚŠÂmj‚ëçàÌõêhFšÎ!4µUdk X2"­¡™Ðõg¶†`úƒÛUÕ´Šÿ†·uDi–Fò¨–°53ŒX¼Cö$ÀúåñAÐ Ô¶# PðßCÐ5Ö4u…Ïc¿+%Â͘ˆCõx0ŒX¬FŸ÷[ (-±Ê È”%Q÷Ó]ÿÝÎV’É‹ë[·²XиÛM'E  &G®)(o )Ò6*P¥ÂN:™úp,C—H×5Ì¿)®@q›ËÆîF·ó0ø€aˆ3¥ÅLG¦Î›ý  U÷AƒÒš ¡¾%W—Þc«}È£X¤ãAú¦Í¾ý-2ž¼[ü}‚ͺEí)^¨(±•“W'—|±†E¨=¸‘$‹ËZAgŒRÜV.ÎO~÷¾v$·H¬¬X»›f¾¿2lw{Oâ¤Q4¨x³Å°(À¡1q`L·HÌXio8H›…Í2í¯Æ‘®]!žM¡ÄÝ6á¦í{[š–¿v [G€˜jºw5Pit˜Yº<@ž*ÁD’ðÈcêt)„ÔÁOë5‚/ôF ö(H«²ìhjõˆõÐMí#9Æ>…4ìS‘´}ê¾û¢d"r÷ÅßÌW,º”O¾KEPë  Ú#’­!Á×4ê! Ü¢ÝêÔ<ØCjá¸"ͶÓph§üïÌ.“@‡ ²3í—QOÀËŽÈ»¢[ú0¿·¥&IMx-®  uõ1¨9KK£þGk]†/9Ð/éX»ÈKáhp Ž›zXFçdË ŽN¥#ˆˆO—{jþÎˤï›ÊS”ZxÎóÇÜ3Â0zPfîQmÓÊú£O.),‘lö=¡jÖ¦|äÉýÁɃ_ÜuV¹_÷tò'Ôíÿû¸éêÙ–ás÷|Êšžå|ϪñV]>.SøezÚúî'¤Ù‡o †Íðÿ?pìw‡A>)ú8㧯ÐåÓqôÅã hŽŠ `^,á:À¥ SÍö,ü ¥phD endstream endobj 846 0 obj << /Type /Page /Contents 847 0 R /Resources 845 0 R /MediaBox [0 0 595.276 841.89] /Parent 832 0 R >> endobj 848 0 obj << /D [846 0 R /XYZ 33.853 921.043 null] >> endobj 162 0 obj << /D [846 0 R /XYZ 68.868 349.367 null] >> endobj 845 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R /F30 591 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 853 0 obj << /Length 2354 /Filter /FlateDecode >> stream xÚÍ]oܸñÝ¿B¸¾h¬"JÔW€>4€¤‚»ó÷;´ÄÝU£•6¢dŸÿ}çƒÔJkM‹<Ô/KÍp†3ä|;ô^è}¸ íïûÝÍÛ;‘yBE’DÞnï¥y§¹—åi òÌÛUÞgÿ¾>›çÍV¦±¯ªªn¸–þÓ&Ê|Õl„߆ ¦>ᦱQCݵŒì6ÛDúÿÒåÀ›jȺ5ãï¡HËZ·H5›m.Sÿ·M.|Í{˜±”ª1öÄJ¥lµã´Ýü±û;(¹22eEÝ«ãBø H”gáÈ–ôÑp6!I‡¸ˆœš%RmÅ‹³ê‡ºl´1ÓXøw›<ò»ž‰€©2uÉ_c[«?k¸*",»Ó¹×ÆÐ šn)w·dÞ¬ÉÞëóؘú‘d-EìëF™.±Es ªz»÷åͦEêÜ3öiâJ¯ wÒë Û Ùj3èŠw×-ÿº5uc76BËx_qâ®èA˜nlˆWè·š¹ ¶€à£ÀŽÖÉ”>{†ùöé¬[2xce,5±ìÎ éöWgœ::¼Ò ^PžûïA´÷¹"ÉLk°åÁ_–}B[ o´e‡_üŠ=ªŽÀ¶·– YòéõcÝŽû8t=Š…3S\K,ŸðæÃøÂ`ß5 cÈa‰'%_×öÕ·•`w”^žþâ3%‹¢ïƒG¼ô®×߯Ô{‡§LáÆý¾½‹ãyÌ)¢,ˆ nþbκ¬÷p°«ÉÈ‘8'@¿AܾïNŒ ­ôÐ ƒ>ˆïÖô Ê^«Al'ý>ôÝxf&¿‡IHt"d’.‰?ýÚ ·,ÔopÀÏýÉ|U«Nš¥ú+ïþ‰%ý‚B~½tóÓªß#þ“%–Lœ,ˆ×ÉÚ®?©æ *â_ÀBnRZ›Ä 6½ÂâƒAž(¢ð`äŒÿ7¯•¼öZ æÿøTŽò‡¼Súß¼Óun¿ò³ÝQchŒãÓŸSJ·û^Nš“‹a¤9Ò¾9B¦7!ÎÞqüæˆÀ7'±–î Ð5 ‰e=ÇíîæÛ "BOxR¤A’žÓ‹¢Â+O7Ÿÿ½ p« Vî=ÑÖ“idwó W9Ë#eQF¬Âøòxk—[’,vÂaYQ!Š‚<’nšôKñ‹*+ñcÄ/d€Ëï’_i˜;Ѷ™€þྠ³¹U%ZÀží㲞` õ:\bц¿ ê˜C‹™Œ¾ðG`½ómÔ b_Â' \•Ê2ädoñ£a6œÜbtU¢-z°% ¤BKñ¸IÈ:«ÉÌ&OH‰•® ²ÅÅ80f%ÅÁ®Ò$,¢…X{p‘eP»[½«uSÝ«GÝ›µ'H³ ÍÄå ¶ðnþíä2 ÇÜeàëdVÛ ØzRÏjzÎHÊ OÄ2†ÙŒ´"cŸ…º+“KåÒVä±Èù<ؤøÓ`Á€ žê²ïÎG<òyºX”TÏ *yàáßàwaK‘ÍÂrðܯj_†¹ üÂÀî,uWæ‚äÊÝÊbÇäyùœ‰Ë$ÈäÒ$.e•-µ-i®›„¹Š˜ðzp$rQ ÑV1Ö É¾ÊÖPTÂ/‡t^ | ×p:¬Rt]Å"™}GhÄ $"J|Hf$#±Ïtð¨Q so‹}_—ó`ÉèVC%=DHmzøH.Î QôLl–þTÐj àv×G…®EqÛÛ²§.¢b¦—~«›žmb1 C³D&Î zñY´AÒæÝjZÉ“ Ï"g³B`Mù­Û¾0˜×Ã}§sÎwö¾×Xc¨( ·û:äP8¡Ñ0ð¢}¢Ö9ò˜žô2L!”ªm\Tz Á@·GGð,zàçS 'kE=ÚRÓ®ÅðÓ¹½Ö¼D÷zÕšÆZU„ª4†Øiø›Bž ŠÂ”¥ÿjÛ“–Aʬ^hq.æ7z>bÓùŸãéE&¶~\ôV3Öƒzh¸ÝÆ©Â$Z†Iº.)¥è±;jm$°@pì¤ã∾©c”’3CU?Ö¹:‚樌}ÇV½>@ñŠ/å©¿ÃiFÇ›f‘G3ÄF–íC_õÖÀc¯êf5Ǥhl#x\ø=×m”È¿ŒÇâLÇÛ ß@¯‘¿¢f)ØÛ³ª{­dE Ux?–ëïÐx3A¡ÁÌ oÏžüúÀrÀž5½–A/e@(WŒ/»žÃE×óíÔ¦wt%Ú>·]ñý,”âwµÞ¬‰KvLTÊš8ê/ù7ÃкiF3ôöb%9-!îê>„\ ö¿~¸ñ>Ó^!2œK˜,ã$r›¦#î˜y€o­8On„mýÁRr]ÓÑN´À<ŽZõ¼·(5vx@~NêûáËAm ǃÆ8†ÜW Å9Ô©;ÙÍ’˜F,–Ó%qÇ¿õ u\í Ç©b-r+2¯I‚ˆÏC³µG2Œ'ìšÅ&"²Ä¥v2¢…Œ:ݼýÆàF¡E´nïŸï·?Sq6¥¬‚|¬Qm¹Úý\M•޳߿×êD½êJø+p4+^Ë'³(˃4ºÊh»£æàXP¿M1ö>Î*i.‡á[Í7f9toËî£n§é#!Oð²³®Ylæ"ƒ^¸xaå a’-† ÔË”¦¹_ad¸ 8€)£Ýÿ Ž6B@âz!SS„˜©²$TÃÁ/Ò´në%Œ|ßptëô[ŒHyÆS£¹µáøèE ÁsQ \ˆÐÙ?§G]½Ï_&Âi<õ½ó¸™JW#‰( *ÅмYd¶ ¹ÝÝüãú ~ endstream endobj 852 0 obj << /Type /Page /Contents 853 0 R /Resources 851 0 R /MediaBox [0 0 595.276 841.89] /Parent 832 0 R /Annots [ 849 0 R ] >> endobj 849 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [285.119 226.909 298.818 239.529] /A << /S /GoTo /D (figure.11) >> >> endobj 854 0 obj << /D [852 0 R /XYZ 33.853 921.043 null] >> endobj 166 0 obj << /D [852 0 R /XYZ 68.868 350.529 null] >> endobj 851 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 857 0 obj << /Length 2205 /Filter /FlateDecode >> stream xÚkܶñûý !ý=Ô’Å—îCœäH‘ÖE\º]î.aI\KZ_®¿¾3R=íÕ>xE‡Ã™á<™F‡(~¹IÿÏ—Áo±ˆ¥2)ò"ÊTž²ˆ¶ÍÍ—›4I•*¥C™a1ìI™r}ip•»½WiÀo?4ŒE?Ù›¿Ã_ØÏÍ ­xÆ×û‡›·÷,KJ¥xô°xQ$yåB$"-£‡]ôÇæÞξ…ÆÞÝÆ²(7?™[¶©]ÕЂ©ës?tÕ`ÚA†£ß³·ÝV÷·ÿ~øX‰™L¤ÌˆrÕînc.ÊMcÝÞòb3ôx„O¾ÑÃ-ü>á†uX)6§ªÌ¶Ö DÛî´'õÕTkGuvÞl[ÕÀÏ6º®z ?vfjM@$V 1Í1<ÞîÛ{!æzŠyÊñ8/àë5õžˆ½×Uó{×ôŸR•:^à¨lÉP[5úî»Óé?p^ÿÝ›5¦Ÿí¹=ô¿ÙÝ”{ÇRü—¤«¨'kúÞ¶ý?PÊ»4ájmkº5 ±KJŠP†ªý¡=ÔúŽ]9j¨wÌ-Äk‚Ôß°zixpÏQæ„öÆã°–jç"á2äÀÈ)Î%Y@{Mºƒ»UÅÆôô=÷Î``4Xúö'²¹­Ù?äéh¶h{GšË‹O•é<™þhϵ'ämvš£]ºc\¢ÓJÀ…˜2F±”I^K=v–™ƒ¨°ïÐÓ„¢óF[õ½9´zLÖži<¬+‘e2Ió2(èGÛ¶z‹¾qo€ÝnM¥,å‰*~‹i§G§N5öܸ'r IÇe‘J,Å{ åætD·îÍ–<³Dâ(°î€(ù,ÂA—{Z_zr1iª÷ûýw8VaLQÄ`C³ê<3[PèØ'u–hdÊyA{)ƒm]€“Æ,ìr—ëæOf8Rè«°}®Aµ—à>úЪ·Ф°ûh{9»jgœRìĚªÜ4ºj ä41ââ>C0ZÁ.}>…d ÕÀÔEh®`¨¿œMm pžÔº=8‰aìØ”Üó€>`9N$›V—‹µñ”‘‘d-9ûáŨI3x»çÉŒksË@¸ó}€ï04Æù  Ҹ"”Æl;Ûoí / áÿº-øÃñ÷žXcušiO÷—þ&r‘¨lô·EP_s¶8lXøÇ\õv‡—£T0³ÓøÝÙ¼K ß{3 mi×5~¹L¡ù]d–5~ ™p&^Ä[ä"båæÃ@‡ ¢)Ü· šÈDšÎË—IYò¥àº9«Þ¸x-¹ð~M#¼š Ž+£áäÔYÚÁ¢Ð°ˆ6‚[чpQT7¨®ÇúyŽ!–.‚[&Y1Ì™E8¦µžW±ºï«Îy<!¹Ìd¹°Õ|`ë\Û²ŠÒPÈV_´™£Q™5¶Â­ï‚'møP{|j"³YR^© |-ñÏ£ ¹‚¹|(Ò…‹vå — 'æ]•ðÙ ëœ<…q«]†$,A–¯qÉÜãS×s rsëöX¼^-ÆŽ»rJC&³Ð§e|Á{Ñ?fŸçn_m]Ñ£°Ä$¨ [NX?vÆ~p ã¶å•¨Éy©½çk UÁ‡u¼ú¦vñÐ è//ÀbÞÇ’1ß »gÖ«­.«?m}ªcüÐx•КÁµ™´äH€ø’áEqh—¢\Õÿ G7{!ÃïÑöLͪX«±Þ-çµ÷׋ç¿˜Ö ¦ª ¾(&7¢˜1æ·á00ÁáÒ¹}ôêEð’KI¡H¶à¼ƒþ0ü¥³çí~õÅ÷Þó4ž xñˆ ™Sfãc’þ}Y‹=??Üü|Îj3 endstream endobj 856 0 obj << /Type /Page /Contents 857 0 R /Resources 855 0 R /MediaBox [0 0 595.276 841.89] /Parent 832 0 R >> endobj 850 0 obj << /Type /XObject /Subtype /Image /Width 2570 /Height 2508 /BitsPerComponent 8 /Length 595517 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂ Ì "ÿÄ  ÿÄ ÿÚ ïð >ã€ùtõáßå'’7 ô–õ¯eåáàçý/Êþù‹Š{ŽÇÈ?Ñ俜¼ŽCô 9æXWôÝ÷†÷ͲzÇ´î¸ÚͲêà/viÝïã×´ÞSÝèÓ²y%Òl¥¾°6úý—~‹ôÿxùçÐemÃGaW­.«ØuºÕþл¾üvöóÎs;™ðÓ~Rûµè¢âl.VµÕp=Ü}ko›Næ 0Zö=•H‹švwôµÊÞ¼;ä‡PuÍÚ×U=–:ݘfÞ1½JÅzÙtûÜ6!¡^­ÚøÑ·xš­þo}$â²!O z'ç#ôåê;ŸÊ”½ºpO°Gñ+O·õ–Ï×#‡Öé{%Xµ?Büèô~ùöX0ªüÅ|sœú'âºuô͆ÏÙ3õïg…»úæ÷S±ði@ެ©.¤;ïè7³GzWÍ>ÅñíÿÛ¾ƒòÏ©F\ì'¾ÌOéÛ‰Iµxæÿ–/×/å£áú¿Áy ð.»ÙþöLJ§ýu~D?NœŽC‘BÊ~m¿I= íØýr|gìŸ5‡ô¯›{Å·¹wéЇm\×7¸qÊó€Zö•™{ŸC÷Qú#åû­6·ØyÅÁ¹iY?¨Ää€7úB¿?#Z¯sÑý'ðXä‹6·a­¹®ßý~¾÷Î(zù«ãß=ø ôWÀêo´[-¢{/£{ô-ßÐG:º©í[‚Êu`Wæß®N«¾yб;næ÷沇žþÃÝRöµ¢d†5@Ô÷Pñô3Ù£¾aéßDùç@ÄÛ}kâ¿h‹¹Ø¯{šßÒ—’ rð…ûèüénüJók.׬¡¼¡^—õuùDý rüÞu(8áù¬ý_~Oz~®ü§íêØ}³âŸX«éÿ«ÏÇ÷ësŽÈû(Òr@tEÞïTÛEŽ•w?ú_}Šöº7©aW¤î¨Nns¼¿ÐðåyÀü®~¨ÿ8{Ö/~ÈN?ö¨Ú¿Fù׺cÕî_§?Ìè•çsØs|À8æ?¨eÓøíö 7Ÿ¥¡¾ÅRåk>ê~óÝ£‘û zo¹q9óÐ÷ÁÔNÏc©Ïˆý³äî/Õ}‹×®Rûs3v[γ;“<?%? ì7®Ÿ£¡þß.§q#F·I¿ÓkwÿIºêÇ´î%$5ê·ž¾æítMó£zOБ?6‚xk}ã™\$ûî—‘ú€FL:êOôùûïSöï}jÇ£©Üêà¯vEÞ¯ægôÍÆdBè&rÏåyTþ\}s¯úBãÍU?Vö/NÞëwÿ_Ïšý+€Ê>€ÂÏÌ/ìòÖð%ûÃ~×Òp°Öíu±dýuþ=?S|—;îLÉÉ _­|×é~=Ã,r¶ýçÛýèpw¿J¼ ë÷°.(uüƒþ¾?1Ý„`øÇÕ»$w³kö4c®h¿C_ž®æyžglãœfç7‹÷à7}Šøf·Ø}i±ºúŸÇ>Ís¹žÕºUî«„Ê=À÷­Õ†ËgóåôŸ™û¯~‰ú;Õ1jÓv×·!4<¿ÓäYàÓ×UÎôÁÚã~Wê~ñèûÞ,_wø7Û#.sï¿ïÍ×éˆÉµx 9§òê![8ë}' ÷z¾|Û÷W´×hõ;ÿ°·Í~•Ä$‚Ÿ@àA¿¤_Í¿YÀôž}Så}3 ®üéø5ýÃõIùýuq¹Ó2ñÃé\½áçÒ°ßgÛzÇ´åÓ­ÒïtúÝïÒ?.º±í;ˆÉ† @|¯òÛúæüŠôœ=wǾ×ñN¹¿z¸âÕ?ÊéË’çò sì°üùõ[ÞWF]î+é~ûòϪlö(êw:¨+ÝžwyùÖýñiƒºòÍú™üÕo8¼møO!xõÚ££ö/^ÙÙ}_ôKùÝï7˜gvL9ŽhuÛù°ý^þS{v×í_û§AÄ‹YµÖÃ]úßê[ñûûä©ßùãýtS¶cõ÷ð»üC»Fj¦Šµ/»÷Óÿhœë3º¡É3ÀÑ?´ÇWLÂùÿÚ¾#õî³¾×lõñw4«?ʇé•gshy@:zû]=|ƒë¿*ú'Õ ž_hìc­ÎgèÙ?£‘Åä€ùdýMþtw|n´>£òÏ vØÏ¢Ñ¿K½'yöÍͳ;—Ë4\]ŽðÖNßç§æŸJôO¢¢~}ðÞ§ê\©â_ÞµŸÕáR`è÷¼.®6;?žOpôíçÐ?o§v¦5ZŽÀ8É /ôÌ9x1òsãù4þ^ý7Ü=oé–C<9TûǺ|ÿÞ5Ëÿ¯æ›sóô¨8CÍî?HQù ¹”?HÃýï —mû«÷ŸHÑj7ÿaªWx„˜|?^rÇñÈÇ €|¿ê=|öB=÷7œu!õ±ö¿`?ú4û‡¯È¾—mGéXoŽÃ4Yô{Ñ>cõß©_±ñ{”??ÊŠ€zß²=~.µ?QùgÓP¿cßz—·\ó[£ßiu›ÿª/±ðç˜Ü:H1êDà:ÿ;Z&çúC÷Ì÷=«§¶·É¾³¹êAvØ㋹íqç8ßÜÏÆê{óCû}8Â÷‡æGôÝÓ‡qàçÿ@õóóúžéƒ¹ðV§þtNÓù¾—û‡äHåÿ/ùßÊçï ¬>ØçDåÿmý@vþ”;¯ëÀõþËøŸËü¹|sîÿú*#á˜g„Ý«?aøÏÚ!nþ‹ù‹×aÜ T0jÊ·{ë§è¨£}åßR˜·CM»Óë·¿GÆë¿±&UÀž6k“Ýĺvcßî%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°ìëóµÍ!èûŽ©v_cÏ—\=Ç;¿N@~bù;½i}ë¸wÌMãN ¼`¿ìó‚ÿ×ìùÇóòû}üA~ß@:àì×öÁÖ‡°‡¸!Îðâ\{Î?ü@ç{¬_œ€Æÿ€‡ºðùùÚyרû ÿ€|üì=Ö‡?Ïp8ÞrAÑaç/Ü0øùÙ{‰ü°ÓúAûÿ,_ƒ¢Ÿõ¡ú>;‡ýÀuÛÿ9~þ‡¸ëçcà8!À¾çËøÀs½Õ7Î@>_İ÷Vžàq¼äƒ£ÃÎ_¸!óó²÷9~¨×Ý ö|rÖ/Î@9ëƒ×ÎÏßû|?Œaî¼=|ì½óÿp6¼6?Ýx}æ{ãýPß8Ïð|üú® Ø{†ÏTkî{n> àËÎÓÚý€ùÍâ4xmßâ¸ùŽXìö+}Ûá_l‡¹Þ·d½Bv÷Á¥*àt%Ô_z}wˆ¿hûÂþëµãÒÔî5PW»’í—¤^D\¸)Ï pþÅt,¼ Ä Ä ü•Ö+¬ ëºÀ®°+¬ ëÇ·ú×Ðâä}vfñ…™ê•ýà ¶½&·½Å~Ï ý£Ó©gaögÎÏΖçxÓ¿Gn«{èz/½‰x°äÏÈí÷ñû}~\{oë€ï»êÑ+ù_ù±?WßœÑ÷@&¿¿î¸;/5ÿ”/Öoäý~ú¸|üêCºÿÉ—étû‡çGô]Åó”üi~Ë _¯ÑÓmÿ#ô]Ïð×þlKÝPýóãú:Aâ;ý<íÿÜòƒúžüÐ÷üråçD?¢îˆ{Þüþß?´Ã’×Ö‡{Ýþ“‡ÇþÀ?6?¤ïÍiçaÿ”Õ÷æçqüOå¯ü¨þ¯¿ GwÝŸú¸_éô½ù?_ èÇ‹üï·ìóãÊþÇÿGîw×ý€~(¿GßžÙiÖ´ñÅþ˜~?ÞùËý~À~PSÝò¼ã{ß’/ÑéÊ”;¯ùyéýhv¿Ñ‰ßw¸uaÙùòþ¤{ÎâùÊ´;/àÀÿºïøùÿçÇè¿;?Ø^oîñ„~Ï}_îã ô}ùÑý–ŽsÿçT=ï~`OÀE=}vMÖÇu‹ø$-nã[ìÿúÄUÎâ;…è—½®&w@¬ÏÎwêGòÛÙ£®ýûßrß±,k6ºØk¼îýþiÿKVD5ëÀÔÏ 9ïÿ›>€ô×¹5ÙïM{›Ç¦=ÏÉés™çÜÏ}1î~|zcÜü½ô·º@çøêƒ”¿0è½îwŸ‹.ÇÿEÝßzÿT :°àìô~H¿G¯Ï ú¾à?øp¿î€{þ?"]÷tÁÛùØø/×ïãHýs¿‹ü ? _¯ßÈëôqÿ:ý?~`OÀPÝMöAÔoYÀÑë4:9 =ÃÝþÕïö;Ì>‡ÚNOk¿(ëå‰W6¾3ð±÷GÂÇÝ t|,s§Úúë¶}Ó¡ñúcääd~Þ=³ð·ÊöüÕsÜíy𯺀~ü•~Æÿ½W_öoŒ}g¨`ûF·g®‰¹ôÕgãÿöǤQȳ8‘Û÷ϸlë Ùê k¬'g£¬7g§½ak»NYyí1ã«GioZ»Jòuhí/ËÞ¬üvšñÕžÖü½ê‘ÚÛÇU^ÝØ/µM›Y.ÒMgb×X×êñïûN£Þù³³kÜæo/î÷~/¬Ùg™…tü`áÔí÷ñEÝñÜûˆ¿>ùbýnðÀæ{¤W‡õÁ°åyö€{?è@ÿó°~@»ÞüøŸ²Þ?õ¡ÙyÕyÝó¼ì?‹ÿ øyì§ëúð:!ý~þ4»¾;oü‰~»~>{Ð:!æyØç›ãîïq¼àƒ‚ôÜãÈœ;þüÉsüï¹éþà|©‡iÇÜòÃúž×`vŸÒÇÏÐó¬ ÙX?í<÷ý€~L¿Y¼ áyÝ{¯7Xþ«xáÌñùî? ôÛÈ„{¾=ÃòÝwD'ìµÓsãòÚwP'ìµ×cçPïü@?GÎ|üö 9!ÞñîTL?¯ßÆuÇqàêCçý×ôÀw>êƒì+þóþÃÏÍé;ócÙyØÿ¯ðƒãçÄ>?ßwN'uÞÁÖÐô#Ìÿ ßà'ú1=ÿïËè8ã‡?AÝH·º úÊÿÌ—?ûn>Àu@tÃúýüaw¼v¿Çÿ¨t‚q¿ôýùïøçx u`~†úùüÔú¡Úï_?)ÌfRœ†§-Îf“-Þf‹-ç“Dßx4Xï¼ì ;Ì /¼f±z"²\ @îŸ ½vIùa¸}ïâ´ôpà·:@‹¯Ú/ä¢áñ÷é_4÷ÎÁô~Æ„mÏ^ýl~J¿Rü“?îGÉIé˸~œ¾lïú9¹…Ë­Già/8~øïZŽ‘ ‡¾>t£úé»àãþáîê¿€|9è½u wÁӷç*ç³¶iìîl{‰<Ûy D›y >{|F[&¡¸vãÁ§ÇsàÓaºÄÒÇ»ÀÑǼŒÑŽˆÐÿ„ÐAì÷•ÍRäO>tøXï÷¸¯Ãǽ¶§CÝÄŸX?-_©_Ífï×—¸zw²vèϱҽK½èûó‰ß,Îì@s¼°Öz§¿0s; ÒwÜ9÷oä€üàì?EÃüˆÞüŸª.’ÎȺ±‹`k.mî«›[&®ÖÎsY>Îc[.ÎCY&Ï3YžÏ3W–ÓÉ«ËgäÕ¶ƒWãkàÕc¶ÄÔã¶ÄÔa·ÀÓá·ÀÓŹˆÓE¹ˆÒÁ»„ÒWÞ×4U·õÏ_­ìŠ…$‘€7º!Ý7xŸ‰_z?mN’»˜7 ~~ÿ@&í6:PÛé­w¸®@Ó»O­/w"öáÍs{‹Ã4øWçXîcóÉðm¡ªÙív&®þÎᬵ³²kll¬ÉöSÙ¶2šÙ6yšÜöYšÌöY̶~Mch5m Õãµðj¼mq5Xm±51íð5íð4ñî#4Ñnb4Ðî¡4µ÷87*Ûêæ‚¯°V=z§±U=v-å"‚X€ƒãàýVsãð·Ø1úž|+î ê·îµgm~q§¯?ÐÑ?~µ¼tÝ’õ»Ï.}—ú—<¢žõÔ'_]uŧØmJ;·Ê7®Ü)Ú»d¥bìå)îÌR–ô¥nÈRÎöe¯äPÊþF¿+þM{`5í€×xØø5¾68šì6XšØöxÌ6qšÈ¶‘š¸¶±¨vК˜7ˆ6ðzû˜ -}ÕcI[wXÑSßÓ4½†™ ÇiH€{×éòü?tίè4Þ€ ¹³Äé?)VjÚúBìÛZöj=Ôò£‹?iÑòQ#ŒÈ€8H{ßæå´J{«{B¦ÆÕò­ËvʶíZ*Y·`§=ÉŠ’Ü”§-ÉJR\§•ÜÊY]È¥•ß%7¼”W… v ~;»Ž» ”fº=”f¶=œf²-œF²-¤&® ´ª ´¦ ´¢¾â¹¦­¹¬ijo*J{Ú††—°R=~¦þ‰«M—¼B³ï³~,¿P'3ù×½÷ŸŽ(¥‹é˜_¨û¡{é«ú'Ï5º†Oìpù Ô)ôÎF£fC¹±´+ìl^+ݳl¯jÍ¢µ›6JÓÚ˜­5©Š’Û”©%¹ ™Û§ÌŠy\È¥æï’—›¢’÷‚Š÷‚‹Þ ßÄ¡üM~ |{Ít{(Íl[(Íl;8dHM\;H \X M}´¢¾Þ±§«¹ªiªnªšZ{º†Ž–ú‘ ¡ì4M‹´Ï{_ªÓ—f_†ŸÑQÛ`?Ú¯¦üÇé¨_yú_Ì>¡Íf‡£Õoþ¾îüsì|.L(ôM# ¹=Œ‹u.Ôc6À†ì÷-Ïl¯fÅ’½‹Mfb´Öe+IjB¬–¤*Ik2¦vò*y·‘QsÉOÍÁOÅÑKÅß/|q½‰GØ”0¿¯Ãa¯a¯‹c®‡e­‡e ­ƒg ¬ƒi«¯µ®j«íkšš»Š¦¢®â©§©¹¨iiîéšJ;ÚFƒ]ìT ;&ôÜÇáoôw0òEÇÞ]ñèøeûÆ>Ñ'F»E¾Òk¿Q|áÏ1¸d˜cÔ§ÓØ÷Üÿp€æû¦`;uÊó’°:åùÙøuH^üäIì¤[¹vÄ;9¶W§ºAr{e{V,•ìYœ¯=™ÊÓZ”­-© ²Ú©%© ™ÛÈ«ææE<­äS]òRópSñtQñ{ÁKÞ /bPÆþ 6”#Ø`k£ØÆk£ØÄk¢ÙDk`ÙÂk!ÙÂk Ú@jàÚ@j«í«šš»zÆ¢¶Þ±§©¹ªijnªJ{Êf†‡°P=_ìT]Ãk®#§.Ì¿ ?ªÓ Ìg»4ë+èH¯Üþ÷ùû44›Í.·ô[Í>µ»)á²a…P?éOºî‘¸l—.yÍÒÚ çލ¹½×ð>þ7 OêÇåýßÇÿ,_¯Þ˜ÇùÇþ@xpCŸü;þágÂÿ.~é¢2Þ7ž[†WÌ.ÉlŽÔ¶ˆ¬Ë`Šy¬O<Ä2Ï)³ÊW’Ä…|ìfWÊÎel¬äUókÉWͯ%E±QlSñsÁOÅÌJxÝÄ¥…ÜJQÞÀ£…èÊ1ߌ¡øÊ_ˆ×ñ„×C±„×C±€×WÙ×5µöuÍem¥cW[iXÕUÛU556õ E=ÅCKGwDÒQÞQ4Zíþ¼ÐG³×˜í~¨?b\’üv~¹ÏlŸn©ûŠéÓ½ÅKÈ^=}ïi±†›u§×¯w§ÙONÅðù0Œ¬—ú‡xyŤ{‰t쇹ÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÛ[^¥õ¾}•è”>…SV¿óÈ}÷_G¼ó»¬]~ñßMŽ“9éÙcù~¯cÅ@~tyŸËÿÈût#ØyÍþ7ò`|?îÀsÿ®ô<ëÃ^v>èG¾à§¸º°×¯€ëƒØº!ìøåéç¸?::óô|ë¬ôüãÿ ¡ù;æS$þÁ†ìËkãf6v7rºx·²;YÙ#±-‚)圊i¦!–yH$žR ìfWÎÆe|ìdWóg"·›>JË^J‹b¢ß‚§‹~ ž-ø)ãsžp)aw”w£)Gz2ŒW£(Gz"„;Jì!5Ðì`5Ðl`5ÕöPÊÛ:殾α««µ¬jªmªª{j¦žŽê‰¦¥º¢i(o(šo°k7ižì­Áû¤tÏÜÀK} w•ѯr‹ŸîŸ ûNçS·ÔÀ^í¿¸®ûÈâ2Ap®8wÏ^,ü°|Áôö©æ§˜>ž>búpù‹éÞO˜>ž>`ú“å益¾ >`úƒÇËßQ?ä¥}w[»êq{Ž0ÕúU}ÆçŸ9¥õ,/ùñÍÞáΧå\Øã–»uÆíkØ:‡åmæ:­®É€ù ?:=h~×GáKôØäÈý®¸aÌó€÷À¿à~x{OëCŸç?úí¿ñÄwÜ>þròãúêíûŽçyÃÓúðæù°ü¡~ƒ¿6'ìtü‘~·<'ê;„ïŸîˆœ¬üšföªþÀK·Çje±lõãÅÌ®ÛÊÑ…œì‘Ø’r9䜊if"–YHdžB &ƒ9ó+åc"62+y³ä¬´+- ‹^ ¾-x*ão¦71)ãsž0)av2”wc)Gv2ŒW¢(Ã~„;M|; | t溶ʹ¬¯²¬kjì뺻Z†®žÚ¡©¥¸¤j)n)jº&_½×šo°kM:X€7¿­ÈW+ײ…ð¬_ίèÇóÚcgû'ÆþÁ½âï5;mTÞÂûëèS¾¾)$W@௹eð¯ƒvC{ï'Оü= ï¹xô¿¼zŸ}„÷ì¼÷çþ~€=ïïçè||ùôŸùú“Ñýï?aޝ׳ö9£ªõ©=¢ÍŸ}NopŸ¯P¹¾ØPÐZûOÙûœoÀþÙìO©á¥a€uáØçÇ¿ã`T¯õÀq½î”;¯8Àðïøóÿ€ÿ9ÿø‚ý¾þXNëþßòoœrz~¿Óú=ƒ°ÿ`ì|ùÿå õûù?_§Ï`è¿î€OÓð~:ÈéZÞÈ»»‡rI´ÃdgÅñwÍÃÅÏ6ϲ²cc;É9òLE4²‘É4„RK! “fC”ùe>Dly+å`Wó`WYðVYðVÆÞ%_±*ãkÁOx”ð¹N;˜£»J;±”b½Fð”a½B „6úû澶ʱ®­²¬kklêšÊÛ:¦®®Ò¡ª§¶¦jiméšz;š&š†ê¤ÖïµÇ¯ë·Ú² ïƒ¼OÃÇìä½ÿ4?©ŸË7b³õ?–}S¡áûN«m«„»ÊoÒoæÏô™Æ$C\¼þ_͇áCšè{œ(óÍgŽyæ á[š‡¼#ƒœosˆpwÏ8G¼óãƒþy¾8Bæðá ^tŸ—{Ÿ$=Ïé¸o™ý'7ÕPa³ÙÌ09ÎóÜ68lßÿ6<ìxúØ8¡À¨zùÞóˆ«ðÃØ︿ô°šÒ÷ø@v¿Â_ûùìšÕ÷ËÎ8s¦X_ü¹~›}@æÿ>?Øyóþ€y¿è}θ;~[{Züìý’¶ø³¶jg±Çby¼¼xº¸x·æÙœì˜XÎÁòNG4“Ë,¤rM! “HAœùg>DXȯ”ù¼ÙòVYòUZ|ZðUñkÁSżJ˜ÛÄ©…Ì x\À§ØÊqÝŒ¥èŠQ]Œ£ øJß„¡ øM|; }}s]_eX×VÙW5µ¶UemSWWiTÕSÛS54öÔÍE-Å#MGsDÒk÷šóC¬ö aëðìõÆ v ×ÈýÒ:¾í8uù]ým~I:æ¿£üãè}+ Þõ›Md-ÞLþ–?*_ªÞ5 Åð=süþù—ÉÓœyû7Úw>{ëþÀ}? t(_ê¸écæšÏi.o*îK;H¶D› /™ÝÆéæç‹bÚгæÁâÇ›3g1Œ¹Ìa.sË$„yË™ræCœÙå6D>fȃÌþJþg'üYðVñgÁ[> ¸ÚÀ­…¬J˜[Œ«¼ qÜŒ§ÈÊQ]ˆ¥ èJPÞ„£ èJÞ€£^ü Ûƾ¾Â¹®­±¬k«lkÚ»*¦²žÒ™«§µ¦j©m©š;z&ž†æ¤Öou¦‹W¿Ö„‘€rö%øjý#¯>Cøõý„þ=z¦ ¿¢|ïÜú–Óu»=dEÏ¢~«?*Ÿª¾7"¥ð(~Fû¾üð›oc¡¿-íëí‹;¶$·£¾gs†Vü[–O6<Ø%|l`WŽÎl,`VŽÌeh­DVŠÔEXmÂTŠÜ%HmÂS†ä8.@S­z±J½êÅ*׫”k^¬P«~±¯©±¦kêljê{†¶–Α¬¥³¤jµûmy©×íõæŸ[¹Öš]VóVha½Dìß³ïÂßë˜åð‘×äCÄø~ÏY³ìÑßr×ì5ñ×4ª?Êçê’ç}Œh¹@óùúü–Ÿ!ö/²MÖ¿r]ÚSÚ¶5v«Ð^&¹ Â[qÚ$µ“;8Y3Ÿ™ñœó7‰„©Dže³Õí;4wܨl5ñ÷4_ª?Êïê‹’ç}Œh™@›ÁOhìué¾åå@ôòÏó¿çP;î~(»¾;ŸuÂô¼üèþ‹€¯¯œ° Þ‰éç/ïc£b|çñ÷ú8üëžÉìzoa6{~໳§³-ì*ì W`ºOrdÖá¶Ij;&vc²gc Sc9æo R‰R üÈxÏ,ÌrÏ#²ÈÇÎy埒?2ÒüJ"Æo>&ćĨc>$O‰_ •ð±^;1•£±Z+1¡µVP•aµ V p ¹N½Êå:÷+”ë]®Q­z±F­êÅ › … —êú› f¾žÆ‘®¥²¢k(m(½~×^jµ»}q§Önuf—Q½ÔןÚýP~é_åüþ¸?#ûþ'öš½§fŽûž¿aB>½¯kªÒò¿cg€óî{Ðézæ«rÛŒºÚìwOõOϧ'måvÜá÷.)Ȳ<¨èǼî¼;äÏÈí÷ñû}èǼî¼;:PäeàñXºþcèÞòü½Ý9î|çßéFŸÒP\ááNÝcØ7úñ³ÛëöÅí-‘rý[廵î–-ÃlšÜ6‰¬Åd’Ìv 'Æs)±œÊ_žfñ(—Ä¢D‡ŒüæxË,e‘†Ydaç?& i|¤x—Á‰q"ÆlHq› fÀ†;Gb2çÀ­ˆÊÑØˆ¯ ˜JÐÚ„­¨J°[€«¨ •îW)×¹\§^åbkµŠUnÖ(Ô¿P¡RýB…Kõ }=…3]KcHÖPÚP5t6šóW®ÚëN³o­4ºæ¤Òa4 ¥^Óúïø~M¿Y?—íç„M^Ó¶F}Î…úõé5[]V••û<¶¸ŸÈ{ô×ÌžÑô×̇Ó_2M|È}5ó1ôÇÌÇÓ3L|Ì}1ó1ôÇÌÇÓ3Qö/ò»>ŸOÝá®ß k~“UïÊ·ÞÕ®WÍŽhô{±£+¼§y¹o/؇•€=?ÜËþ ?òçä öûø‚ý¾€qÿ˜Ëøàçùðÿ¸uáÆó¹ÿ—ýC‹çÌ9Ÿøòí¼çßøáÑú®ã9|Ãïü€àÉÿpèǺãàÿÔŽ¼ïø×›'õCÜqðgûLuîs¼ãÿÈ=ó‚~ÏxAòþÃχòC¦¨§€ ýýÓâ'N}>i|üK±ñ±¾i>´ƒéæ>ÿékë›íî£zlöÚý±{eKd[ØT¾[»^ébÜÉíCh–ÔVI,Åd’|'3›Œ¦Æc̾%ø”HñŸœÏe‘ã,²1ó–Fsò`FF“Á‰|c6$X͉3`C„øÇ>Ï^;•ã±^+1¡µ ZP•aµ V P• ·R½ÊÅJ÷++\®R¯r±JµÚÅ—ªj_¨P©~¡¯§°¦k©liÚ=y­¡³ jõÛ]q©Ön5†›UºÕ·¨€v)úügþÌåûõù~Ýñ¸A´Õí;tgÜè_¡^“UµÕiy_±ÇóÀëO‰|Úãè¯B{ú ß}ïãÐÿäôÐ<¼ùÿŸ€úùûèçï žüûÏЇÏ_C<ô¿³ú·Ò*£A±yªYÃÚò=:yËÇÏ(}VW¿Õr&Ϟ﹕Á¯·ÛÍ媕Û2 ôÇþ@qüü~ß_·Ð'ôcËO;þòãúŽèí;–÷œ~`{oêC¿ãüè÷}éÿ˜#ö:ü‘süæÿ?ý?ÜpŸü;þ郹ÿÉ‘Ù÷qüçøãKö;ùýÏüY~Ó GëwØý÷ýÐ ú~ ø¯ sßOù¿×3w/eñ&<ï+çÜ2ç'÷¬nö„øén½Þé÷›U¦×]µ/ì¨ì‹—ê_.]«t³n½Â{PZ&³’[Y$±æsÇ9”ØÊe/‰ ¤ñ!æFc?9 Ùž2ó‘ŽYy<3ò`Ì`ÌaâA‰<ã ‹q"ÂlHp›&Àƒ ° ŽxÈ#ž2¼V"+Ãf¼6"+Cf¬6a*Áj­k•еí×*V¹X§Zåbk•ŠTïÓ)T½P£RõB…;ôÍ}-…#]Ce@×köt ^¿i®5Zݶ°Ôj·:“G¬ÛêO~é? ³ãìß—ïÔåûwÆáÓW´íÑŸs¡~„}zMV×U¥e~ÆÏƒuäW²á|yyªÏ>|ž|¼ðËÉ‹#ßkCï›>/¨yõ}GÏ‹Þh½^óC3gî~‹õO)ÔI¸—Ï4ón3yªŸ Ïj£'©½ÇO¸ò&Å™FÜ·œ@qÿ? _·ßÄíô£Oí; õ\çÇôù29ÿÞwù ~`{þè¿ãã$:ï¸øZÏËê;óãú8ÀðïûòeúÍé€å?úAîø¾~D¿GßšØé°ü~¿ Gëôè¿î€OÓð(u}ÉŽ?|§9ïÿBõ_rø×`Úc&W={ãoùÞÃo‚Ý{ö£Â?¯ >3»Ônþ¶‚Úmu»Sa±£±.ß§|»rµÂÍÊ× íAhžÌ6IlÃ`šxç$š9ÌåÂc)q”ÊOgâA›1—œÏ3|˜²øÏÁ†2ñ“?àEŒ¸‘a68MFCÑÅZúùoŸ¨—>¢yòçÔO~3ÆŽluÏz/ßµ4ÛÝØê~åÉ2x•ÉŸ²¬É×°Q–@ p³ÿ_?_©îO‡ >ôÓsãªÓþÅãþŸÚÐùAòóò…Û÷aãè@õÿ`?:<ïçÿ°7üÃíç;ú¯ñ?ô<=ƒê¿î燴þgñ¼ûH=‡òüâ7—Øn¼ø‡3þ_ö¨ Q£×ùAòÿ¨…þ@]ãÑýê_œûo³û>“Í3.á&µj}SÛýrZž1ñó•éØ]wÏõ”þ‚j»]®·i¶XØìhlK×é_.Ý©tµnµ²Íªö‰ìÁdžÄ6 §ŠrY£˜’\&3— L¤ÆS,üfe“1ŸŒÆL‡Ÿ9<¼žy0f0gàÇ„lñ#ñ&$xÉ2àE„¸á.1Í SÄAñCb¼SÂW†Ìx,ÂV‚ÌZö«•kÚ®U­n¹RµºÅJ·*”ê]¨R«v¡Jêe*W©”i_¤kèlhê·_²×šÍfÓZjµ[}Q¥Òï4¥p?N_˜ßÒ1Ú÷äõÁùß±8ÿ¿Ð{7gŽû ô#«Òj¶¼˜Ñò¿Mc‘ç€ê½|öI¨¹…ÆîA{’›NH:íÀ\OÕýÿÖ½Ïá­—y¹Öí5+ö°’½'ê‡ò»ú¢ä¹ÿc&P(Þ[|{Ðù:ã2Kö1¢euáôžý òçtÖü³ë_$ç~«èž÷è›­Ž¨§­cõ#Iö-Þ“u!NçkªÚ›=Ž»bl/ÐØîSº\·RájÕ[E›5ì–,W²Xž ɧ†bY¢˜’Xå$“ äÂC<ðóž9eãÉç?AÈ<áót¿Ù~«òϪ|¶ì~}ôŸMØãŽŸq©ûc[ÚaŸ¦á°Ã{·¤û·eŽú~¿a¯Ž¹£ýQþVÿTœ—;ìcEÊë¿è?>úåÖéoáÿ{ø'8Ìõ_ŸûÿÏwL~©,Ñ·ú‘¤û.÷C¼§s¶Ôm¦ËY²67è_6hÝ.ܧl·j­¢ÕšÖK6>1ÁS?"â>èû,¿*ØŸS÷OƒÝ9wö®¹­ ÉÀ>Q_Ï ÌäÃ3?>23<™ƒÎ~<€ôŸNXã–¯i«ûc[Ù<øún?x#×s¤+û>ü`þéãCö_øµéz¯ üûèýz?ßµÛteÍê“òµúûäy÷F‘’Õ^k¸Ëñ-nDWÚ¾µÃ·´v‰°ëCœ–sþ–õo‰S‘Égý'Û]‰:Ïõ?iíqÕ6;\u¿{Ê»pèþWÉW¢û×—èußôŸýòëtÛüœzçž­óß¡|ótÇêfõY?R4ŸjßzîúBæÛO¶6Û-^ÈÙl5Ûaz…Òõºw vê|úß >D¥»»¶*ìí_+ݳl‚ÜöHlÍ`†Ä³J寶Gaùüƒëæyc‘ŸŸLÁŸœryñŸÍÒÿaú¯É¾±ðÝçÿ@ùüî?µ{M_ÛÞÏÇŸMÃaãÏ‚‰7½ÈóОÿçß>uÒðóß•ë~Ã]ïÃ6¿R¡å{ï¼qOCFGk^ÃÓÛíåö`ã‡#íäõßïÿ?úåÞííÁðÛgçÿ@ùüåŽ9jöš¿¶5½únåŒyàaxÇ$dqIRDGБC4PÍBAÐÖ±X‚¼õÈ+X¬W­b±Zµš¥jv镪Z¨T©j¡R•ÊE:W)h^ Q¡{^P×l5¦¿Y±ÖÝNÏRiôÛm9ˆ;‰ý õ ÛØü[~º¿"Ý? Sõ”}ƒ«à{·c®Š¹¢ý…~C?^|~@4ì€ÇÞpWÔ>Wô ˆojõ ¶îbë>™§öÕ8ÞØHª¤òjžmdõºG¹çéTÞ} /›Æóé¾~¸=£Æ’Á°†ÅÃEKÚ°{èZ/©RUñ*_fÑSsæ›øOÏøÃÏï€ú´|K¹z×Îþ‰ó¼{¿ZèÃõ+ù\ýGÒ}óؽWÙ$)öÆ‹rnvz¡´Øêþ*}{‰ß:ÜšÍýí©OgjùZõ›…{“Ù"³5‚圆ie#’Iä“2<óÈÃÎ~L9=ÆYÀ³ôox<É“0e”bLá›æé­ýãßbøl—çþÿóù«sÔmµlk›lré¸fÆ#Ë 2Àà °08Èã’"8óˆŽa#†Hˆ¡–e€Š¼ÐÖž¹yëVž¹^µŠÅjÖ+jZ¨U©j¡VªeZv©”é\¢R¡vK_w^Q×_ÖšýfÃXku=A¨Õl5Àö³õ•Êðùä[õÓùê˜:´ü[íýKg­Ùk"n}õUùTýUñ¹Ôï€ë^ƒçò³;köüüvå‰W%Dm`qçüŸüÁï8AÚñðpúÄoì?&]ÿÏÏø!ØR49ÐÀü™¬×ù@­yÛÕÌ=Žî;÷#¬KŽW1}ÂǬí^{mï™ëÕ}V·Ê°Wôêû/³Q‘ð 9U½¦ï äæÎ‘ï‹ú«üÈþ›¸Ìˆj×À>ó\9Œáʯ9ŒáÈæ3‡#˜ÎŽc8r9ŒáÈæ3‡#˜ÎŽc8r9ŒáÈæ3‡#ì¿•žþºÞq¨Ã±Ãf±ËþÙ:Ñk÷¿a¯ÌjÚþÊT®Â]˜Ó÷æçÿoý@vþÂÌë7ñ†~óà?øp¿î€{þxv=ØÊpoäpor!°°óU¼¼á¶üÅZ5.{.ãÚôÛ_>skï^Ÿî“åÀIðþE½£‚?íFx½]û÷Ó¸…wîU>+õÊñ}ÓaóëžÑíšÝÞ~{è>ö *¾1kŽz]Öí}smƒÇÓpÌyÀñXÇ”gˆ³ˆÆ<£0‹8Œ!’8d„Ž!"‚XH`–*ÓW!¯5r óV ­=b ³Õ+Ô³L¯NÍBµ;4Ê´íR*RµD§¯»¯)ë®ëŠZÛÚ†«c©5Úmž”ÖGçÀýs~_ÿgÀCü³~£¿,ý~?.Dñÿ®³g«†»ÊÒ_æÏô™Å¤C[¼A]ivcÖ§JÃ…2JˆSSyñqw¨ù+¬ ëº|H’ˆ’‡³ú÷µJÛ«â׌újawŶº-¦6j÷Îáz:†çë›sù@íIÉíééÞã®]=~`OߘŸý¿þx{9þà?ò_ßp5ç§õÁÕ‡ê8à‡ÏûOéÀî?ˆOí¼üØ÷Õ†ÀçÿËûO0æä‹õº¸¨|„ ã€/í?£Óûþè¿ãˆ@~¿>'mÜ à?Π8¡ú.üa«ß€{‡3Μ;_ãXè8à‡H?®Ó€Ãÿ&G{Üî»^}럱‡¶ºzǵH®aõ[‡iÞšuÁã²-ν½—™ûGœ“Ú×Gù öo²Q’sÀ1ðc¸:õãuõ?Lù^±…÷¯vù°îßk©òß©<Óz·Ò5J¾Â~Ê}œŽ‹.öAÁ,y_ØÚ½Mú×l[!·5’NE<³K,„rI!™äa–~L|åäÁ çÀÃ,p°¢>“ÌŽ»{6^còHÀgn•Ï›¥þ·õÿ—}+àm¯ióÿùüÅž9è·šµõͶ ~›†óƒÆ,~pÁÓÿEߘßÎü¿Š£Öo\ó„ÿ9þÈë÷òúýŒ/Ùïà ýÆ}ÀçÿwýÐàÿº9ÿÏþsü~8¿c¿#õú?ôß÷@'éûãÿ`Œ/Ùïä‹õz{æôýù2;Îçÿ§û€uÛí¯ïߘ;—ý;]Jý;¬s>?}£êÍ?ï»®9}{Ú7ž¹ï:ç¿ã4½ËýAÒçç ±¦4V¦³ND6&˜Šie"–Y¤“2<óÈÃ,ü˜$¤ÄÄðcá‰ã1ˆÑˆüDy‹Ä'ždp¿’§#<Çä“Ì~I.ë¯|Ý/÷oxùçÐ>Ú÷ÿ?úϦ¬ñÏ×ýƒ×>Ö×6¾1Çé¸o8øÄcã˜Ä~cÍñžíNø/€bþw;âè[·Æ{oؾYõ=Û¦«i©ƒ»Øg}}/wCÄ$ÂàuËÜw :î\ºK[â+—^N"¹t8ŠåÅ|ⳕ5Ž/¹/[ß8ää(ãÓ£NBŽ=9 ç×\†<ã¶Ïí•§9뤨¿çÔ½gß>¤ù+¬ûÇ®DwØ>Ëëw²+Žo˜€üÀþŸ¿0'?ûê·ðãKôùÁ?AÞŸÚøüøþ‹¿$_¬Ó`_ö´;/:çÿ9þsü/×ïä õú?_·ÞˆNç¾Õkã€ÿéÀø‡Ý÷ü:ïû Ÿüÿà?Çä õûù?_ ãÿ@=ÿt~ŸÔ‡°pƒºãˆ¯Ø}ú̬ð æ'·eòOV¯·_`é³³+Raߪøg¸%òä×Ñ}3eºú^Îîló±ûtÜpË–™0ŸXúÏýÓÛSõÿj®|“à\·ô//ue¬æwqæuÒË%1É&f瑆Yäaç1ƒ1<>pyŠÝ~pó¾#ñtù‹Ä'˜|@e5̹Æ^Ižó’_1‰6:½ÍÒÿgúoϾ•ð6Ù±ù÷Ð~}3cŽ^µìÞ­ö¶¹µÇ~›†Ëžp`0F0F#FxÌGˆ²ˆÆ¡1‡(L`Î3€Â¼•Ì+KXмµˆ«KXЬÕHjÍT‚Šdç¨W§=2µ+4JÔ-P*k­ëŠšÛzÒ–®î¨¡¦Øé u|±/~Ì?>§ :‡èS¹.›»¼_Ñþ‹è~ù·cÓÔmµ»pî+¨Þܸ|DÜãß”ÏÕOäC­Gû—Ú»BÝqº£ì3ºîDó¼Î"rìçÙa‹P×P©áùáäÿo㨘wœ?>=ß}@Çþ´;¯x;ŸÇ_ÌØ?AÃãü@ì|~L»î¼Ó‡Ø;/økãòƒßÿ/Ç:Pý7€{Î÷ÕP?­ÑÕeþà:!áÿêxpC™þÁùñ6ç¾ÀtñÿÒðü¨þ—¸Á¼à6øï´r®> WöÏŸHöªÙ0ž•¥ú»ß~Sêmõênrƒ—4òzÌ—>ì[Íô^‚ÎÈ?Ÿ3öC[¾½¶)í-lJ·ìÜ!ä‡À­{k²Ïgà÷/ra~™ö~;ûmXßLõ¿sןâÇ8¾cæGZ¹}Wæ8³‘çž^\ÃÎ~L<ä1d#8±ú¾ü÷í]skŽý7 ž8beŽ8GãÌ~0¢<ĈEæ#Ä>aÓì{‹˜zM¶ÚåVõ·.ʦ­Œüž=Õ}OÜî|ÊžEøã¾Àû¾?¼}VŸß=K-—¿2åËéS‘ØK†¼»Ç™¾)¼‹ÐYÙç÷äÞÊk7÷öÅ]­­‰Wafá^å‹e{SØ!±4äSM)²ÈaÈÎ<ÛªÇaŸ‚}Ë& ìÛOŒ}£Û~¯óŸ±úо|°~ãJú>áD‚<°a«?Hãõïv½¯ßÝØÜÇ«vo*YAP¿R÷Úëú^ßÊöZïsõï<×xìËâËXЪo°õ?_UôXô|ƒ¦÷~¯Î£ÚÎã‡!m-懗>É×'XŸJô}–𡸻³*l­_+Þ³p¯n{Df°C<ÓÍ,¤rK™rda–y~\ð¿èw0y½ì/÷,ˆo·è䨼ù‡ùSóZou¿[퟈ÚpÏÙýÏŒuí°ß¹Í:seã)ŠÕS-:þ¯“‹¼ô/Mô]ÔÇO¶òY)ÃFKzk‹ÚºrïºzeǾ٭‘c*ùùƒÉ6û×7ß8Kò×Û4{϶¹=ßýfÇ~aôÿ•ý©®ìüEãé¸i1Kp–ÙÿhûGý×Ü/lôÿ zõtñûŠÜèãN©¸|òöRü­õ69!·^PE¯È±cIªù^ïo¾}J¯oãòTŠ–éªÍBy6º¾¨µ¨¥¤.{oݹœj=²¦e¬êäZó_ÉgÍ%hôÿ±üá/ÉëúݧÁ[;çÿ@ùü­~ù/Ö~Aö¦»³Æ,~›†—±%Â< #Ã8ðÀÊ¿ÇÜš/š­Œ¿KÃ{•kýk½¯Ô¾‡§dþªÇ’mÏZþÛùLt½ï"Mêýv1ñž¡æ^³_ítÞù§;þ•{X)È={œ´{GÌ~œyP=Gõ ͓֯e»)îmí ›+WÊ׬Û+ܞљç"žiˆ¥šRd92#ÊO&s¼Œq’1†X>ó_™‚{Ç>Í•öh½ér‘^‰ò¼ü÷Úøm—¸zÍKOJ·®é»–Ïçþ³é=Sš_ÕEO°rÙiÃC&Äô+ëK:ººBæ†VŸço½[.ÉNBætä-gS2ÖUr,ù¯ä±Èž7òOç ¹{­{/Á[=Ÿûÿ JÑÇß}“âŸjë»,bÇé¨i°‹\#À“ð$Ž< ãÂ#8ðˆÎb2‡ÄPx„óˆ5Ð êçŠÞk+yªx«æ©\ªTÊ™…(˜Q’¾]yº]iª}I[IkDA ±C=Ó€ˆ|¼à¤•žÍƒwô„:µŠôµ|šã')t\¯Ò`ã2 Do_ u|(}ÕñŸ³4Ï>×fÃÚ¯Ål}ž ÕÜ'™uï+úuß¹Óz>uÓAåÀ8Çùú;é?c5»ûûr–ÖÞÄ­±³x­vŲ½¹ìXšr攎Yd"’LÈóÏ#2 <çàÄã–'Œ<ÅãÍ7¹s]ûAï×ïñn»·äg~µÖùÖþÇñjë\ß=?ß=s/à|Mç?u]¿äÿ0ÕÑØd§ -ÃVšŒâƺ¶¤·¨£¡/ïþ½ËÖ~‡¯˜¿%KÒR») ™ÓÌ·•L‹YUòZäÿùOó„¿Û½§×½›à­ŸWèýè2Ôqóáßqø?ÚšîÇqúj|aÄ—q%Ž8ÉcŽ2HãŒÎ8ã3‡Œàñ”8ÂyƒÄšþ <ÖW|Õ|Õ<Ô—÷N!y; ûOƒ¿N@~bq?b¿VüH{‘û=~YùHwèëk˜GØÀsS§úñv¿BÔû~DE«§´VõM¯yWµvié^ë6ß>ãÒwøÔSÞì·… ÍÝ¡OenùZõ›„'¶Af{&˜†i¥"’\Èó—"<¤òaç1‡‰`ÃÃq§+çgì¾ÏÃ{ ­‹ïÙx±‘ãq¡¯?ʉ½ ݾ¨ùS”=oÜ%#>}ðŽGü³ËÝNúçÝ8í‰=- úÅË:ºzRö†§ÞO”sÙoK»ÎmtÆÆ]|¦ÂJó¥™w:R2§‘sÍL‹|®â?-¾p—äïK¹ø3hÖz¿z¥¾>|ïüxûW]Øx¯ãé˜iñƒ|!À›p%Ž, bŽ"X£ˆ’(â3ƒ áÂ81€Ê¾5Ì«ã\óUPóUTUSüÓf5Ç 8É®÷œˆ}ç²SÛÜÃñ­Ùz±§å';:³%8³$¡Ã®‰ÎźP{)¬öû’ŽÖîÄ©°·x«vͲ½«Šög°A<ÓË,¤2K™RdaæA‡œ¼ïErWƒ[“bÖ“Ôþm´ë|«äO]öú?ç¡ýÇß}›Öë|ûéÞ™í\*닸n¢±åý_O®£o=³úÛJžñ£¸n¬é­‹‹&Úm\æÎmdÆÊ]l¦Ç:ó¡!{*9—r¥‘s—ü5æGÎü†Üé·?mß@÷ÿ@”·Ç¾8òg‹Ÿjë» kãôÌ5œkx'ƾ$øAÔ~qO•bUgå_Nõ_É„ÙÜñ—´j}7Øbò¾[r Äž`:ó9¥Ðoý0ÓûNËvPÜÞÙ•v–v%[Ö®®X´Af{'˜†ye"’Y³—"<¤òGç?$i0Õ¢ªŸõoÛ/mgu£öÿXÜØ™ö݇«ìd»ë×õ½ÃugMhÜO©°mfÕÌm%ÖLl¤ÖÊls×È_Άeì¨ìñ}š\^åOÉóœ€Üé·ìZï@÷ßA•·ðž(r»àŸWAú‡¿®ýWgØÊQg øc‚2ÄpFO1Å DÐÅ ,ÀKP’A•ã¬I[ ¦uq¨eS†Tñ¦eGÅÍuçcVyÕxÓžt˜ß(þƒ>¯Ùü¹~£'ý WžöHè)]£^ôÛùýQr\ÿ± (ŠðôwÖmõ2‘Ï5’2Ù!±5‚NEb[3Í9óÌA<óKbb lLV–ÌÅYlÊU’Ü…I-ÈSÎîe,¯dQÊþF¿ÎÇÉ­ó²òjüm|¬6þ 6¬ ;øÏ]­ì°ž©CܪžõÛJÔ×öïò%ÚyÜóÒ½ÔÓ×h}TÜÁú7ºúÿ¶dEX«{L§Ö¹ƞƭgûà±,›ñcóœsk¯]ϱšÝõýÁGmsdTØÚ¼V½bá^Ý‹%{3ÎC4ò‘K,¤RI™ry0ó ÃÎ^ q“rÀñTí×>º×·ò®•¦ö6Üg«éwÅb6C[ÓKçºïS±V-]îƒæûޝì‘^ŸrãrÑŠ†Ë.¾ icß>MOÚ;÷/’}†üÞii÷÷,úùYñr:}ñúèßC¶ô]ãßp¿ê»#Ù®zíãoClÞØÒÙ73j'6òê¦6²k%6rk$6Yë³>‰õ-vÏá—ÇÖþKï¼£;–Ÿ•{§+νè>Åóy‹ùöãWÔðmú§¶¶+<~iëßy뱫Œ6p­f:ñ–#¯b("'†IàŠ¹4ÀM^*äµ¢®IZ*Ä•#¦IR:d”£¢IC y&º=i–§!&“S'ý9}›î ÈÏêòõÓð¶>N¯ Úøêô?°É7ëgŽH†›'è|î× º¨€2ÊÁœì˜YÎÁ…‰,Ø’Á‰'0žKSË9òÌE<³M,ä3M1ÓÊA,ò•å±)ZK2¤µ™W;y”ó¹™K+¹|ßòküì<šß?³§ƒUßMî3Eþתû-sÕuÞãP­Û/RºÓõáºü”÷^vN‹œ(û¯ÈoÅ{·²jw·pº¾¤±©¥¡6¹ôßÐÀnZûïÎ2 ýëè?*úµXž±ò_±|ÇÛ“{·½›æ¯¥ºÊõ~Æx‹“G˶Mžé¨êïí¼HàAwM–åª{¼¬}í“u>šsq.¦Sm.ªCkž³3îJâÏ7þCŸô]Ÿ³éx§Ò½ãŽwô<¯½ü÷Òj^ó_­Úå½âj½kwÇ~½ƒV*~>Õ×-áSVã«j:±–¢­jÑa¯ b¼ÁrzðW'­bj°Ô&§"jPÒ&¡¼›]°›U”ŸKí_¤3€ÿ Ýè2þlÿCßžn»}瓇_]°ÖÅ\úêwómúIâÒ!«ßpÌåïK=Xq|÷¯Ey²x³æÉâÎVLle`ñc+3ç9Œ¬ÏœæÉ9òLa4“‘Í$ÄsK1ÒÊE,ÒË4¤Ï)^Kó³![+Y•r·™O+™²»ä¢¿ä×ã²ðkqÙø5xmp51n#4Ðnâ4U½‚×){=SÔõñ¯9+Þæ^‘ût©Ü‰º^PõtÉ„ö`ù÷ÑkÅÕú·³ú{ÞOr‹ã¿bÄŸ.€›ð ƒž½mî½Ö{ÃpRÜZÚ66ïoY¸V·bÑ^Ìögšb¥”ŠI3#ÎO$yH0gàÇ11Ç(Ïy©ESê¦ö.SÒõ»ý¾û‹u½nÖL£$|xñ_Ïd©©åâìý3[éÛŽ§³õHh÷®/5hlskàÖuutÅÍ%k>wÚ×d\ã=Þƒ†\]çg_â>•ö‹ýŸÜ-7ξ“è7<ã7¯ì~aò—ÕÇc¸7qø·¥rcÝGi)IëÆ¥·èÛ¢¸7¸Üõk×í{5¯\¶{ “{6’su.šcq&¢SkÈž2lõkÝ¡ïþcô_ν·i®¿æ"î–žçK™F“Ó½“æ»e‘|Giëkk—ñ£FĽ…,K˜SŒ¹HËqÓŒ· XKpU„µ^µrÕzÕË5«V,Õ­T³Rµ2Íô 4jëË:ꚢ梲ž›Ëþ×{{8ÛÉ :æèï·n£»dløIõ‹_Y²ÕÃÝç/è7¢Þô¸|@ÝPá/çÈ줠y­,ù²x³æÉâÏ›'‹l,y°x±æÁâ|¬ØÊsóœÂ|ç0šIŒ&’c ¤˜Žie"šYˆešRf”†Iå+ÉbB´–s+gk"®Vó)ås"—›¾J+â†;»—ƒW†×SÞ3OîG_}ëÔý–©êÚÿm¤zOÑ´Ãô5̯ÈcÇ|/@÷ó¥ÿ³|CîùPµö}ž«/@úÌvaîÆ@(tôv›ùôáesEí{má­Ýl6¥¥ÝScfùRí«EkVlìX˜‚y¦!–Y³—2,¤òGæALLpÏÆFxŽžÆÅSiìÅÂû.›Ù.M¥mØgç E ¶lê´~‹1¾ô¯¯òÉ©CC«sY¨WÖÝ·g[SR]Ôký|Úú×${Ë:ÂïÓé>{Ô·t}!Þûï×þSô”v^ï^—zž0|’œxùßèl½ãÑw;}í^î¸áåqš4ï¯ê_›úÂë{öAÅþÙÈÿ1û>sõä{µïHÙáoÔîžÑ?­Ù=Žo^°oåÑJo$ÒHr¿š½HvYò ÷×ä©k湚Zç¬HQê¼lûo{Ì^§Æ±öN¿²Ç]‰±Ç]±_°_~*1¢¡ ~ 0«Ò¬^¯F±vµ¥ê”iéP¢_×PÕ›-^ªb½^Ø»–:Yï¿é ”úÔçW»äTÑKÓb®¯g©ƒ»ÛqfvgÂå*°>¯Ðÿ 8Jlx²y³âÉæÏ‹'› V6+z’•[ÍÂÛz®zŸ@Ñö:h)w.9-uÓ1Sëëk õ54…í·“gû”웑Šàn®"dùÍÔÿ9e¯ÈòWè<úN÷Î|zw¸z}ûãÏ$8ÑÅû^¯ÆšßÎ?BýVMϸë³Ü^ý!u[Ú÷Ø,‡L篂ýètÖ¯ìçgä‹eÜVG­\ô]‘îv}Jáí3ú̓Øåõéÿ"¸·fïv[oŠý£óo£é>çò|ŠxçÄÍ×§}÷«müj[Þ6ׯ«iޝg¶3g¶3eºe¶cº¹±­¯¨lªë©›*šÊ&ÒŽ«\mõºO¯Ÿ%öê;ˆ:.î—ëüçñkèß:ú2H&‚bÝMFÛM¯Þýó{‡<Æàò‡P©3™¿›QØÚ<ÚÆÉ•œl™Xñdóg&Vq²y±âÁæÇ‹›,lx°y±âÀ`NœNœMæq7™Ìgó9Œ¹Ìa6r˜Mœ¦É)’ÊC$ÒÉ4„Ï!_;ò³‘WÍ¬ŠžmŠž.Š>/x(a°Ä×a²ŒÖÅ´ˆÕA·„ÓÖÝ@hêo«½GÙ)¯ªöýyè¼øÆ‡Û}¸ý·¥îײ!=Cß¾gíÕQÚ¸ÄØ€‡KÇd_ž8íM7µl÷¦¿{snSÙÜØ•6®•®Y¶WµbÉ^ÌóO4¤2Í™’fE”™ùÏÁŽ2x0ñç2Œñ =^§³aìÇì|¶ÐÚÍ6§³ÇŸœ-]ó zûÖ¬k5ß3™ˆöҡܸä´b×ôž>¾ g«:ʺ‚Þž®—©rËôLu³ÜMð§‹|àß\¼Ï¡ý‡æ¾Çì?±Wû¿ÍþÛÓy‡Ö~›òŸªw>_Óý·Ó²lüCˆ<´øì¿8䇲Ùù§èñºÃ¿ÎþOêöŸoü|1@zÅýz^~>ö?BÔo˜ºKzý§‘îÖ=ìm~ç/¨Ø9‹Ú@Ðü“=ô¾s3§í^ï¦yõÿ?ok›ö„oqÒx7xi17Qé£71éb71ia70ik›ªúJ¦îž“^oézçÔÏ@Öv“ØÙù²ìOôc½8ÏpŸWŸ•¬µ[o¦¡¼Á4ü¥¤Ü赫ߤ¾]|sì|"P,zPü΃é(Ÿ’YÂÑœ,™ÙÂÉ•œlØÆÉŒlYÆÁ•ŒlXÆÁ”þ,XÆÁæÇ‰Ï3§§§<Íæa7™ù˜Æl¦1›)Œ&Êc $”ŽI%"’Y³šB§Ìƒ+ò±‘[ÍœŠ‹‚Ÿ‹¾ XÞðPÃa¯c¬‹i©‡m §­º®i*ojž¿GØé±©öíi鎕Oa^ê'°üˆ®ô‘îøòÀôhïzÞêûÿ·>Èk=ƒa¹(íîìÊ›;;­ëW ×,Z+Ù±`‚yæ!šYH¤—2,åòGæO$i<<ø#ñçÄyiñ²6>¹'¿ñ¾­ëïzç êpÙ“Ìvv>1­ï’S­£ÏÄØz‡¬z_@ѶzXh÷N5%u³1V5µµeU={C¬äÑÅÞäû3äqBøW¬™>otËðßpá—Gî;jæûþ‡Ú3ŠÕ~~ûÇo¹w#õO¢ú½vž)WÓ=¿Òrlü7$¸rãkí^Ñûwû÷¿²w6”8ÇÉξd(èƒcJ÷ÑqÃ,4ú7°Ôæ/?Ëˊ߭בüXòëôÕÆxKœéÛô‰ÂÝ;#©»ø—LÃâÿŸ¼üìô¯ñêe}èÆº?|„ôHy%쇫öGöÓ¦Z¢FŸ”?º~µý°üÖsw·aÆîH€øOݸ‡›Oç_eJ÷ÒÞ+Ï\×è·~Ù©ä~°G “P~g ïV Œ­Gd–ÌvŒìádÎÎ ,adÎÆ6 ,adÎÆ ìadÊÆ6 ¬c9ŒlOâs)üNy±ƒÌÉÏ3¦<ÌœLœñ7™y˜ñ.SË”¦ç)²HG$’g6d9Í™SæWóc"·›>J«B§‹ž XÞÄ¡…üMt{Íd[8Th E]ÍsISyTÐk½’ë:¯lÖž™®öý+ÎëûüwÀsýC§·½‚þkþI¼4þÓ³ßýÝí±KisdTØZ¼V½bá^Õ‹E{Ø šyHe›2)%È)<‘ùFËÁ‡Œ±0Ã(Ïõ°é»]/eöçítöSØÔöhdÎ|×[‘fΫ]ó©ØofùÞ²oã²Ò‡_Ò´ õÐk=ò}Um1sKCÖÍ.X~‚½ûˆ¾j¼÷kðu«Í:Ø>gíÁÃ;.»w½ØCK1Æ­ÛRÔƒU—‹³û·¹%Þx?ؽ¯G¸êüš‡¢ûŸÏîyé]ÀuoÚF4ÈQ–§;cèÏb³×eÊÖ»ìWš¶t×;/ëo¸.{•ÛhãÒ ¹»ê:v×R7 ±ô4Lu¬Õ¶×}×àüËÑò¿DãŒH€ /Ƕuš °²If;D–p²gg &vc²Ic –0²gg vp°gc v0²ecÉ'ÆÁ•Œllc`óçñ9”þ'§'Þt¾ÍœvîyŠ8ö5´3—‹¥ï<òçYæ=FÞ«í}3”ýaª¿°kšŸ›û×Ë<¹ö®Âø¥ÊÜiÀ¦ð?:ÿ¢Ê¾ïé¶`ŸµÆøÓmôÔ£ïÇ ŸÓ+Îä8æy {ÂüøíØü6ž){¼\U-SÅ«YØ·\ݽó¼ÎßG(Î ÿSæýf€Ì–ÌvIlÅd–ÔVIlÅd’ÌvI,Gd’ÄvIlGd’Äv ,a`ÎÌv ,G`’Æ ìa9Œ,XÂÁ”øÎg>6 ¦ñ9æ|g<ÏâcÌÉ2§×«=7Ö¾ƒ¢){§Ì~ª[ØÚ¼U»jÙ^Õ‹E{3ÎAbYˆešB%È̾HÒx0ñ&&?.úwÃôÛéEÕ{OÍýöÎÚ=Ž»=æ×™°3u~¥ôMfN7ªeæ HÜ«C¬É³kOªù¶É¯ûGÎâ£Ý8Ô”"Öô}m}YkSWJ]Ñëý\Ûn¹·ú8¯Ïê”Uí|:á ùOKÜî÷;ØêowÇçÜÃÓ½nõŸ§RùŸ¶æb\ÑÙì“tÔø»ÚßÑ׌>qô~ ÏApûëþ‡ôTO¿ÃgW…ë¿ú­Ó²¢³ ô=kòuúZüÕtÜ+ÓÅ/XÀ‹Q¶ÓãUGõ¯ùlý\q¹Ñò€™OÓ_å bióÇ.Í +”°jÔw©Ñ?èë—çss|À[‡z"²Kf+D–¢²KjD–b²Kf+$–b²If+$¶b²If+¶#°Ib;–#°Kb;–#°I>’O…ƒ9ð°g>3™Ï„æsc9”øÌe7‰Œ¦ñ1æo ’‰SËæSÄ™Hcžrç&dyK™SdCælŠþgòVYðVÆ×‚¦1)Gz2ŒWã5ðìa5µöpº»jÆž¦æ¡¤£½¤h5¾Ç®=gQíz£Òô^óëgÙ7Üy䱫 ö'˜†i¥!’lȳ“",¤xGãσ |àz¦¿[õŸ»†ÿÙ*ïxÇZÎï™áåÇnH¤èxpi·œ ùAúO蟽Ž&Õà[üþœ¿2=Kc—‡TÁ‚…í|mz_Ô§åŸõ÷Èä.$z™ð¿É7Ù¸Ü2%³’[1Y%³’k1Y%³‚kY%±’[Y&±’[Y$³‚[X%±‚[Ø$±‚Iã°Ib;v#°I>’O„æsá9”øÎe63™MâcÌÞ&<ʘJ”J”IæS2Ç<ó0ÊLÈò“"?3y!ó7’|mbVÆÖ%L.`RŽìevšøv0ÚÛJƪ®Ú©¨§¹¦i(ohž¿¬öMiëqÒž‰íU=`åìÿ'û! ³HC$¹‘e'’?2Ùbaã, póâ/:;7}_îõ¿Ž¾«³µXÒ¶çŸX»œqÁv‰á¯û9ðß—ü>í¼‚•5ßGpIõµõE­MM!oCCÔÇÐyõÞÁîxœZ¹ô~ð‡Œü¨lw;ÙøŸ^l#Â;;Íoa–õE¯©gà×ôÿlí?yÓ¸aÛ¿ÐÝÆÁãg´qw-5̨ëK?mRôŸ`ùÏ—=_¸Þö 0eõßÉ8÷¸¥Š7v»©[¡s¹Ø8ÏN(—8Wùòî·¥ŽËk°è8kvÈ›žÝúÂüÎþ˜¸Ìˆj·À™¾Óÿ.%ŠÁ5˜l“YŠÁ5˜l“Ù†É5˜l’Ù†É5ˆl“XŠÁ5˜l’Ù†É-ˆ¬XŠÁ-ˆ¬XŠÁ-ˆ¬ØŠÁ%ˆç%ž;³Ç`ÎÄs’Oƒ9ð˜Î|'3Ÿ ̦Æc)|Ly—ÄÂoždó!âO2˜É–f9å!yæG”™&òBœAâÀ­Ÿ\-àTŽäe8®ÆP†ü&¾¾Ê¹¬­´¬jªmªšz;ªF_¾ zöŸÚ5'ªè=ÏJz+xÝÌÜël¼Ê#I‰Ž`x(Ïùˆñê¾ÇkBÝ=ÿÜq±òÔÙaR»›*Úª™xÛzúx2±¶ðj!ȱ·áo"8³ßø…]]?då74Ô}|ØúÞŸ²S‰Ÿ ¾M{ЙÓÖ»;ÌŽ¤£ú/ϽËK¿­¸Ñ· Ww¶ ²Å®É±cWKO1K’ÜÌæ×hä~î'QçA] æ—¬ÿ{õ»ñ7ãÚ.àK©µëtß.ö¶ÛÊæç¸ó ô§ûçåóÖµÛ?¤b5»]VÒRÞ¿[´Ò@Þý:ò#M¹ùîT-úÓÏU¼öà_y‹š)aÛ1ëjöZ¨[¼çýô£Ýw’; Ñ}ëò¤q»ã Y†É5˜¬؆É5˜l“Ù†É5ˆ¬Y†É-˜l’Ù†É5˜l’Ù†Á5ˆ¬Ù†É-ˆ¬XŠÁ-ˆ¬ØŠÁ-ˆ¬XŠÁ-ˆç$±ä“Ç9$øNg <×ñXÏìŸÕómÿºo‚ëyÆû÷ʆÝß½ÃðXps>÷Â'Îûl? ô—_Þ|ï_¢ú‡ìô:fn$¿@íg·cƒ½†€‚cßûߺëøï#ê ÖæÇëÚö]”n~¾î/Úž•-,†Ë×}«´}÷IàglßGvÞ@ â?¯|ì}ßkñ´¿VÏ[È}2ÿÌ<¹n¿äÖ<ÀQ’8¯Ê޵¤¨éýI¾‰ˆ×í5{<ši}CåœÈÓ²Cã†I€ùÀãO·z—ÑðòA4¶êj6ºm~÷v=¦ðƒ›ü*L0+òs®¿Î?½z("k0Ù&³’{0Ø'³’{0Ù&³’k0Y&³ ‚{Ø,X‚É5˜lX†É5ˆlX†É=ˆ,“X†Á5ˆlO‚[Ø&±ä¶"œ–xç%ž)ÉgŠrY°˜’l&3Ÿ Œ¦ÆS9q˜Ê\e<ËâC̉yÌñŸœÏe‘œò#ó'’$¢,gðAŒJØZÀ«¸Êq\ˆ¥ø öÍ}]•cYSiTÔÒÛÒ4ÚÝö¸Ðêý‡XzÞ“Ú´ç¦é}ÃÖŽdm8¡ÊÓüÂ!@!ñ\ó_ÇšØT3¥JQP&×î'Ö×Õ–uU4Å­/Y6~­°îèë_ô)Èà*që¦Í;kæ·\>Çî_?öúv>Û¨m¿ìÖy•huy˜öµ:ÿpØ ý ›ÜÂäWlä­©Ñô ÷À(Sôž |ê¥èÚ¾Û–Îö^T^xõ¹½%U¯|³µË;‘jDÓs½lÖzù¡±Õ÷¸­Æ6*ú×ö‡ÕÇwÜã/³É$}Çoyù˜Ûk¶_LÂù¯=zÔ´{³õ÷Í6çƒÉ…¿@ùªíëòl #˜žÌIìÁdšÌ6 ìÁdžÔ ìÁdšÌIìAdžÄK ²Mf $Ö`°ObÖ`°X±’kØ&± ‚kØ&ž)ÉìC`–Ä6 gŠÁ,ñNKrÈÁ ‹Ä¾pŸ¾0+Åj"¬7!)Áv•kõÍ}m…c[SgPÕë÷ F¿s@Ñê÷úÃ×´¾Í¨=KÕ½ï×O¤ýƒ‡<·&©C:qÒ$£Zk‰µpéËZššBî_ëFÓÕo÷Ru³ú ûýðTøO~ÓÌn¸6ÞÙóçr¯¶Þ{VµR¹â½^gV ^^5½>¿Üö?Aæ4¹ Ûy‡|têß!áõì.ZÑâÆ5âò·Öøó7¾}Sæ¸Úö×¢n}¶ÕVt=¤žÓVÆqA[V\ÑQô¿+»¶öMk?Ö> Y‘ OÜýdÓÔO/ùnÊð#+ÒÏtÝm–8O<3w˜¨ªÙ©V·Ÿ½vÃÏrû–—<4_¾â>`VkÚ'³^ÉbÍ{$ö`°X³^ÉbÍ{$ö`°X±‚ň,,A`±f ‹X'³^É=ˆ,Ù¯džÌ ìA`žÄ ìA`žÄ Ã9=ˆ,X‚Á4ðÎMbɧ†Á,ðÎK4sËÄ“G1$ÑÊg.2Ë„¦Rc!æOžsñ˜Í‘ã/>Orò`ÌGâOX͉àWŽÌehmDT†Ü%:÷`(Ö¿X×ÔØÕ5´6ÔMU ½O­ÝëM§ØuG­h}¯Hz7Õ}×NSR©\–„:â}u}YgU[NZÒTõÓa뺹M+{(í°øoÜ€1r>ÿÕýO‰uí'·í½¯õ]÷Œ<¿ÇG"ÌÚúš(ý†ê=±ô…˜í·„¼cÕ}«ŽžÑÄ_zõ¬2õïfÇ×gSºóªØ½›Ì¸=!€µ¿^mµÚ]¯aõ¯T÷Únü用úµ‰ £,ù™ý3~Lú%y0˲ÇCNÝ,µ=éôOúFåÙܺã0‹{Ó9ÒWÊKU­,ײOf½’ÅšöIìײX³^ÉbÄ  °X±‚ň,lW²Of½’{X,X‚Á=šö 6 °Ob ö °Ob ö °XžÉìA`šÄ ¬A9<ðÎO4SÍ ä³Å1,ðÌK4r’ͤ’Ç1œ˜Jg&IŒ†YøÈó›ÈÍäñç/&rxEŒØc61ÏZ+QaµN «^®P«°ªk©l隺;ZF£]¹×šMf÷Xzö›Ùu©z¿úÁº÷ƒý\Øjéê Ú~ŒÙèµ®o=;è?¢§oÐ?ÙÑq ¨­væ·¾ƒì¶é7~üÕvJ7q­êj•u9¸—´º~Lmz×9ÿÎÿz휆­£ èÁèǾÂSÕϼ>q•ôoƒâ«~÷¡×=ú·ÏõÞ{ô]Ëîy_·è¾•÷ºrxöÌvò¾÷ÂÞP*ç–oÐÇ篬`ZòñÓ° ×Þ×F\Ó~®ÿ.­žCžVH?? ÏÌàökZ,Y¯d±b½’ň,,×°Y³ZÉbÍ{‹5ì–,W°X³^ÁbÍ{%‹ì–,W°X±^ÉbÅ{›ì,A`žÄ ìA`žÄ +Ø,Oå‰àœžÄ“Ï‚yᘞx'&š)‰¦ŠbY¢˜šX¦$–9I%ŽS9c“<$3ÏÏ2c‘ç?GŸ9GÒ`GŒ¸a6Xˆ¯ ˜Š°[€©^år•[ÕŠ¶Tu-#WCk@Ôkw:ãG¨ßê[õßmÐb穞ᥣë¦ÇÖõ>Ø|ç²Ç; =Þ@ °3yMÔO÷¼+³zŸÒl{!ê:l— {袡“>¶Ÿ®ÊÇlèò´¾£ÍøëÍs¶òÎïÅ[½£®÷blõÕ7aç¼÷ÎS<«æÿH<º@:Ïé[´°;„dØçí[[°ÕÃÝûÏéëóáúâ²!­ÞA?<¼3äžÍkE›ì–,W²X³ZÉbÍ{›5¬–,×°X³^ÁbÍk%‹ìlÖ²Y±^ÁbÅ{›ì,W°Y³ZÉbÅ{‹ì,W°X±^rÍŠö Á9bÅyËÁ9=Šö Á94ðNO43Í ÄÓC9,ÐÌK,R’ËÄ’G!$‘Êgž™åã#/>3<—Ÿ&>3²ÄÇ0#Â\cš2lDW‚Ì%Zöë•+\¬R§°¦kéìišÚJ&«]¶×šm^ïVh4^Í£=SÔýëÖ™z_Øÿ@§\]ê{X8â‡U|ï{äw=ËØ>~î56[mîµ°W›ÅZè–•}>nÝ«’^µÇþÌy;ô>éÆC{Ó@:0ëã™Ü3ú &H|6;5u;M< îÖ{¢ë_²Ž&u€?<Ÿ¡¿Å!ó`<øòXµVÑbÍ{›ìlW°Y±^ÁfÍk%›ìlW°X³ZÉbÅ{›5¬–,Ö°Y±^ÁbÍk›¬–lW°X±^ÁbÅ{‹ì,W°Y±ZÁbÅyË+ÎX±^rÄðNXž Éç¯9<ðLX–‰æ‚ri¡”šX¥%šIdŽBIb”Ï<3$Ï Ï2G ËÏ ŽB?DxI‰SFCѕᱠ^½¨ •®V)Ô½P£NýC]KcHÖkö” F³s­4z_aÓ·ë¾× =7õ+ùsíÜí|»ã$9ÔOýׂö¿Nú4þÅɺf›ÚçŽÅï0ǯɱ>ªŸ«ËFm°ä?j½g˜ñ§™'hä¡›ˆ)Ÿ™“Ñ—éˆXìcç/ÊZ]¾‹Z½úYåo û÷” >€qCòÝ7K ><–-U´Y±^ÁfÅ{›ìlW°Y³ZÉbÍk%‹5¬lW°Y±ZÁfÍk%›¬lW°Y±ZÁfÅk«¬lV°Y±ZÁfÅk›¬§¯9fzó–g¯`±b´å™ëÎYž¼å‰ëÌXž¼äóA9<°NO,3MIJÅ!4°ÊK$Rç„™a‘žxde–>LÀã–&8å‰rFGÑÃ4Ex,ÀV­j¹R­Ê¥*—ª(ìiÚ:¯[¶×m>ûNh4^Ë£=Gß}?ÓÞ~Ÿþ×Ò÷(.àöè éÛ›ôŽAqÏG½ùëº}akÙµŠ<±«v‰)ÖÓæáÝÑj¾ý¶k?$íî_Gï|L7mD û·3èè6¥íoÒPûªÖ*ø¡³Ôr;MÉý1#$8H~nxø<øòXµVÑbÍk%‹5¬lÖ°Y³ZÁfÍk%›¬lÖ°Y±ZÁjÅk«¬lÕ²Y±ZÁfÅk›¬¬Õ°Z±VÁfÅk›¬lVœ·=k›llU°Yžµ‚ÅŠÓ–§­9bzó–&¯9bh%,O^bÄÕæ'–Iä†Ri"šHe%’ 32_8dHÇ#?1æyðcà1ÇÏ‚<3ÀŽ9#!ŠhH`ž½{5ʵnT)Õ¹T£Nõ3_GcDÖk¶ºãS¨ÝêM—ØtǬz·¹úÑÈ~gõcÛ¶D/>/õ¯’ü‰õˆj;o´}ÃŒÿ^£ßmÕk}r^3m²å‡f}–ñ š'aåA›ˆ ñÛÛ\ÇuOë5ãvüë÷žTdì—@´8“3o¾^«8ÛÄíŽÏÏu;'hÝÕ³O­wa=xw)Îó;eŸ8Ð÷|?‘ƒˆ@çÇ’Åš¶‹6+Y,Ø­`³fµ‚ÍŠÖKV*Ù,Ù­`³bµ‚Íš¶K6+X-X­`³f­‚ÕŠ¶K6+X,Ø­`µbµ‚ÍŠÖ 6+NZ±VÁfÅk©ëX,ÏZÁfÅ[™ëNY±ZrÌõç,OZrÌÕæ,O^bÄÕæ,M¥‰`”žX%'’ ä†BlâÌ›(ó$Î?$™Ç䑎G—çÀ <âcxE$dQK 3BA^Äj¶êjÛªS§v™FŽÂ‰¯×ìµæ¯U¸ÕmFóPz÷®ûF€ô~äz|åõÌcõùÏ=qž©ñAÀ{óÜ=O•Ûf©ò>E}Ф~qöÏuø³YåFׇ5©»Î­W s{ËŸWã|¾Ñô_Yš«^¡Cé^¿U7»ÁõëU|{Û7öçkïZö\yÐzt[Ö—= õ¼ ̾åëEWÝètót}c/‰ÓÆ}oš`ý{QÈý's òöÝ7#õ6ù·ÒtÌ€§Ðù·â“ôÇùœ jÙ,Ù­`³f­’ÍŠÖ 6kX,Ù«d³f­’ÍŠÖ 6+X-X«`·b­’ÍŠÖ 6+X,Ø­`³bµ‚ÕŠÖ 6+NZ±VÁjzÖ 6*Ø-X­9jzÓ–lVœ³b¬å©ëNZž´Å©«NYš´å™«ÊYš¼Å‰«ÌX–¼ÄòÁ)PäK”9££øÃÁŸŒ<aãÎ0yŒñQÁ$uå®EZjäg¬V©f™V•ºE=nÃ\PÖlµ¦¯S¶Ôš]°hOSï_¢ÎÕŽèüÝþ‘:‹Ûqú’¥c¶.‰ÍŽVFH-zCðÕû/üh b̵b­‚ÕŠ¶ V*Ø-X«`µb­‚ÕŠ¶ V*Ø-X«9nz¶ v*X-ÏVÁjÅYËsÕ°Z±RÁnÅK«,¬T°Z±RrÜõg.ORrÜõg-ORÁjz³ç©9nz“–§©9jj³¦«1jj³¥­)jZ³d­)fJòd­!g:ò3¯™>pdO”9y‡"_1y$F$ñ‡ƒ?bg†8žpñæ$b/1Ô&å®E^ZÄUgªW©f¡V•ºE=}íyG[°ÖšÝVÓTiô;íë\ýà&ÒÈ\åý?™ßÒ¯9I7l5ÛÀp[ò‰úrüÆ€>›l¬U°Z±VÁjÅK»l¬Uœ·b¥‚ÕŠ³–ç«`·b¥‚ÕŠ³–ç«`µb¥‚ÕŠ– v*X-X©9nz³–ç©`µb¤åÉêN[ž¤å¹êN[ž¤å©êN[ž¤å©êL[š¬Å©ªÊ[š¤Å©ªÊZ–¬¥©jÊY’´¥™+HYξeŒëÈO|Éòƒ"0ù&ó’T^IUò&ó’d"ox%ñ‚LcÄÏ p21ãæ"¾P×ι…i+U–©I镨[ T×Ü×”u{ a¬ÒíôƋԽ¯ÔÏÕ¯Ú¾-öóqÕk½Q3ÃÉjÅK«g-ÏVÁnÅK«,¬T°Z±RÁjÅK»'-ÏVrÜõ,ç©9nz³—'©9nz“–ç©9nz“–ç©9rz“–ç§9nz“ç©1nz“&©1nj“æ©1nZ“¦©1nZ’–ä«)jZ²¤«!jJ²³­™g:Ù–r­™c*ù<×ÈŸÌI‰¼D$ñ$˜á&`g1™Eâ1˜ `Ê ÒV"«-R“Ó+еD©¯¹¯)jö³]¥Ûi'ª{Gª¥Îdp§šÀæãª.âzviêÎ[ž­‚ÕŠ– v*X-X©`µb¤å»'-ÏVrÝŠ“–ìTœ·=K«'-ÏRräõ'-ÏRrÜõ'-ÏRrÜõ'.MRrÜõ&-ÏRbÜõ&-ÍRbäÕ&-ÍRbÜÔæ-ËVRܵ&-ËRRÜ•e-IVBÔµd,ÉVBÖu³,ç[2ÎU³,e_"ÇšþIüÂ'B&ñ‚_x$ÆâM„8a±Å,QÄg™AŒšþ+оjž)åLÃ_6¼‹YcVUÑl=xì[ôËÕŸi€RœÚßâ‘‹SÓœ¹59ËsT˜·=9‹“S˜¹59‹“T”¹59‹sT”¹-IK’Ô”¹-IK’Ó”¹-IKrÔ¹-9K’T”·%I ’T·%I rT·I yÔµ\ËYÔ̵\‹YUȵ•\‹9Uȳ淒ʷ’ÏŠâ¿‚ÇŠþ Á‰>0bM„8a±G,QÄg0ׯ*Þ+оj)åLÃ]6¸‡WcTR¯_±Ãôcí€üšþ²º¡?7 2Ãä¹59ËsT˜·5I‹sT”¹59‹“S˜¹-IK“S”¹-IK’Ô”¹-IKrÔ”·-IKrÓ”¹-9KrÓ”·-9 ’T·%9 ™Ô·%9 yÔÌ·LËyUÈ·•\‹YUȵ•_%¯5¼–|ÖòYVUüU¼FO1’Å$ÐG%|+UÆ©•Ližh5ær݃~ xùÈ04_ŽÏÙ‡[‡åøy’!jZr—%§)rZr–å§)rZr–ä©!rJ’ä©!nJ’ä©!o:’ó©™o:’ó©™o*¹ò«‘o*™üÕȵ•_%¬ªù-y«ä³æ¯’ʰ²­à³â¿‚Î5ñ,ã_Æ`XŽÉã†2h¡Œ–(b%‚8 +aXήO4”F¿Ìc»^¬?bG¶ü¿u¹û>ü}žŠb'’¬…¹iÊ[–¤…ÉiÈ\’¤…¹*H\Τ…¹*H[’¦e¹*f[Τ…¼êf[Ê®E¼êfZΦE¼ªd[óW"ÖU2-y«äµæ¨µæ¯’ʰ³â·‚ÏŠÂÇŠø–1¯‰c0'ÂÉã†"x¡ˆša%‚( *ãPΦ4Ï4Qƒ³#µÞÅ@ÕkÃð¶ìˬÐÊX<–ä§)rJ’å§!rJr$§!nJ™—$§!o:™–ä§!o:™ó©™o*¹ò©‘o*™²«ä·æ¯’ך¾KJÂÒ°²­à²­à³â·‚ÇŠø–1¯‰>5ð,GdñCÙ½õv}×é õ?lž(þÓ?!GÊ,DÙÖÈ·9 yÔȹ•LËyTÌ·•LËyTȷ毒ߚ¾K~jdZóT[UÕ¿E¯¼|Vijâ¶%œ+àY¾øWŒ± 0“Åq€øAö‚ão$‡âÕ?Y?–Õ>YÄ,e[Éo*™–ò©‘o*™üÔȷ毒ך¾K^j‹jžKJ¾ ~*‹XÖðYñ[Î5±,á_Æã,Gƒ<Ú=ëõ!ê~Ø8-Αøi£úrüÍ”@Ÿ8‰2„O•o%Ÿ5|–¼ÕüÔÕµAiWÁgÅoœ`ðMŒc,@ÉÞÿUž§õ€çÀüCz§êïòÞz Š‹úž{`ão$‡âËå´ÏËÄ ïÐÙÇÎÿ€§íƒó7Õÿ£¡ê z÷¯Ôññž|üÜþϾl~)ŠuÖÞš.ÈùÓÜÁè¾ô¨NÞÇâÕ?d?š£†` ïzGWߦNAßBøéÛ¡ïÛWÉÏÅ›»^OT9˜pϰnâ{8ùÈ0ò¬ίR¹n>çk½X@«Ÿ(ú¿v½½_vŸ|ãç Çæã«Ü·ÆOÆ »^¤Ï›÷8È>ÿ»:…í³zh·£«î¤ÿU£ð¶ýŸu`t åw@ÓDìµãóqÚï~Ó¼’|gìÃ¥ŽºÿWcðÓGöñÁcòà§ ÛÝIçIÖkôSΓò§Ø7èàu¹Ø6ô¢â÷/‡Pœ_ý Ê'i£ð¶ý¼|,ü}¿UŸ?7/Ò0üܾ“ó`;#ìŒüÜ¿HÛÓó8ýdýÔüorö?/Ü ï„u›ÊþA€ÿÄ= 7@P04p!1`"2356€#H$%&'A(ÿÚýë¸WÒZ¨1>r¾X³;=âÙ¶Óþ¡òÈ,XNÓ8¿”î|iu³Þ-™³þŸsÖYMŸÁ¯j›Î+å[§],÷‹fAlÿ§™EúF/Ž9Óê§/÷H‘6€ù* + ÿ§Pd¾ÍfƒúL†(n¬`8?œ>Æÿ§œ­’ýìä(JØœ¬ˆÂp8}ÿN¹s&û©ÇÒЋ´~œö2$G 'ó‡Øÿôçª ›Úï°¾ÿXbQÂȈ‘"GO\¹QíôÚã_Ij·Þïw š÷‹ì1xRD¢¤c"DH‰há\¶faÇ¿ôש|Ž f !|ý%­î€cÑ:d·ÕÑqÏý5ê†}DyÄ"í|ý%“ô}˜È‘Co«º×âÕ&ŒÿÓ^¨qªµpB|ý%‡üƒìÆp?ÏÅäÓl›¶å¶,ûï\{z]¯Ÿ¤±7ê´qCãN²á_ôæ÷a³d”oMNŸtânG³—ÏÒY¢j²dùœëͧëyE;ù˜¥Ò¢ù‹ÿÓ¾J¡«¶ò".9uŒ¦™Èf;×ÒVq_ý;ê6Ù"ßÉ(½Ã 5Œ¶G¹•.•m?ôïªKDnL%úœ ´ÌÔ10Ü=›=ÿ§}EÚ¾ÐãX ¼ :[ÅP¢Señ×ì^Nÿ§y]×–TCtä˜Ô©ðoÆõ“éê)ë)ÿéÝîÕö ù¥úSYK”3QÄ·J{ÇÿÓ¾g¡¤¶ò’.pÃs-S!r¦5]*+øÛþõ?CW/0Eö½¡–ˆãñŒéNáüÿéßTv¯VÅ ~nŠgFtÛt§·ògý;ê‚’¯‹à/' ¢iUˉ̓ÅwJ‹?%ÿӼƂ®ëˆË.©:n)ùA úŠIÿôòçl¨²]§ÃÊq–衊DÓ‹+é.\qÿNù‚Ù"ÑÉÈ™•1–ˆ÷.aÓÒž¿‹þ¿“fÆItê¶Ñ*£ø³0nfÂ3ê¿ßޤíPçЗ=:ÖYâ~s•nÞ­‡ëÙÞeAã9VO{Ío~˜å‘A£ƒùÃíߎ©¨*㢄½C 5Œ·?þLgK•ç_^êO$Šç¨OÂG *uEF}ûÍŠ~ûu!l¨¯ã˜ ò[d…Sü”É|QOKË?^çHWâÆ¿–†ˆ‘59])î]ûíËÖ¯¶xÒY|ý É#¯¤´æ^êJÓ }ÂMUž©™0éFñ‘ûíyµÈ¾Z%Kšn€e²d3)'"Ít§¾Yþ»ÕE²tÛ2NDë\øâ0é¾íöo'þûåt4–¬¶¥8©{Y¦ùJšq-ÒžñÆ¿]ç«D^3®Ë¬¶Gª†DFqýÃìœ÷÷ß›dSÓrª#†("e–lÏRaÓuÛí2úîAjûvÃuÒ«¥Â2"2aŽÝ¾ßÇÿ}º–‘O'‘] PV2Òæ{dÃ¥k·«aú÷(ÙåØs ,‘œ†DM8*ñç‹¿}º¨þ¨»Ã5Ì£[«ŒéféQ'*ú÷S–‰ô\‹%–輩™0éVéO7ýöê«üЗØbö‡Ú3§{¥E¿”¾½Õ\fe)ÿ;Lc"&+×ÕËÌ}º” ««ãÈ ì18RD££â»¥EŸ’¾½Õ5®lëGŒRæZ£ÕC"#8J¾’ÙÊß¾ÜçOQSÅp¨bŠŒe®% %}]¦¿ëÝ@ÐÒUñ…dU]$j „DeªéQb¼þûgTõxD²æ› e‰{4Ó ¯«»aÿ]Ìh*î˜Ò ©’Éq8å22iÆ·ˆ/Øï´r'ÒN«ý ËDӅ.úöui™c¾Ée¾%#"&9])î]ûíž?ÿ>]™eiUÌ:jºT\8ÛëÝ@[)¨yS-1îS"&(Ý*&Ùÿ}¹×âÂ*’†¥–¿×Ì:V»z¶¯u_n›E/úÙâ~£"&/\=›=ýöêZžžO!¢ç 0W2—õq*Ý)äÞ¾½ÕE©NÇRpÅm‰CRȈκSÙùO÷ÛªŠzxja/0xV³nÓM}%$ý{¨ J¾0©†dT±øLdDe†ëöCûíÕ®DÜjù ^Ð2CqRð7Åϯr¿íLå/Ó«”ÉQ8äÄFM0Êú»¶ûëÔe«í5€¿veµ·A€ü@úþQm›i»J-Ñ(©4àŠŠŠ®'ýõæ[]Eߌ`/Ÿ¤gŠ(¨é+êí5ÿ_çkB³r,¿ëhr™0éVéO7ýõΩê*ð‰eÙ'@2Ç^L2¾®í‡ý{ª{|šlÚëf‰úŒˆ˜t©vôrßi_Òá©D2ÉS¦œKt§¼q¯×º´¤•0–¶•S"&:]*-ü§ûíšSÓÒfÕ)ÅJ2Ñ…lÓ§ÚŠyÜQõî¦é'Uqæ¼],j ¤DgWÕÛy#÷Û˜-töŽN]™oK­˜t¹ÿú÷5PÕÜx¾¢eÔÊ ‹Ô—.¢¢Ž£÷ÛŸè*èùIàR§2¨jc:R¯«™Cõì¦Ù>÷ŒÜ’UÒÊ(œtŒŒš`u˜?ï¯SXš«Ò­ÒžMëëù²¢ÉAýmQ8©4à„Ÿ¾½TSȆ¦ëþàÆSþ¥ÿˆ__ç{K³òD?ÖÊß‹"&,TSŃþúõKk¨›j„¼Kð­oŠ(è8 ¢¢O,ýª+K Ï¡,Í{C"&'TSÃQûëÔ÷üùú±–¨Ôt<;t§³ò×úµ´¹w["PÕ²"aÓE<ŽEýõçêzyÜW~Kc,­{6ñëýTÚeTâH¥KšÈˆÎ¯¤¶r·ï¯2Úê.üc,¾ÃˆË EE$ÿ¯õ l‘_Æn¥Å,‚?R\DfQOGœþúòüY|ý Ë$Q{Dïén¯¤»[þ½Ê¶É~9¬†(*à(£õ)"#&õõ”ÿ¾— K­¢ñËW—îõ—˲ñ§aŸqx«·:^ª¯üÁÒÍ‚]‹…½î Ák°%]]--˨‹5mÃñK_Rxå-ï·(u …ñ5þ¯®ZX*±ì¢–ñ…ÃÌ÷<ž—!ê?,Àk¸÷“°ÞPµåù¦1Y©9“?Ééjz™™ˆ^lû6Sf9C”,M`½uÁ`‘U¼­øÁ‹Uó-ÖªõÍ©ŠRñ×:qÇ'wË:½Àq{¦'ÖWÞŒ§y'ãz“Ÿ3L>‡¹'åLpä.NÃx¾×nænIÊdßyï;ÁÌ;?Ãy„Ï9ã{4ž[åKÌʾMç*[§U\iAŒbwß½µ]]--_>L¼\ÿùÔ ê–Óyâ¾i³rÕç=Ím|w‰ßzÞũΠç?ÆŽù.UŽa¶¹ó}ÊçUòo8ÑRà<óò ç¶YÕî‹Ý1>²¾ôe9~iŒ`VoÅ.X¹ÝRÙ¬·šJºZú_™ê×QoäõÝ’ãsdt£QQŸ¯õs©FŠhԹ̈˜t«vôr/§õÿ3ùy_êzg¤z#’99,ñ‰~FÍì2qN~¶Õ–‹Õ¦ýGùü±ð³‰þ)ûœœ^z“å¬?°`¶¬~/¥©³tÍÊó¹/:ÓÅqË%Ó„©¥ó IIKAKWIK_K&­ôÿÔ‘Þ©q«JÖ™yÅÏ·XœWf±LíÔ-‚ÍŒsn¨9ò» 8…-|UŽt”µô¹ŒŒ¤þUÅr[^eŽhâ¸äœC§êº¬Ë °X,ص˜æÛ\îç›MÒ†ùk÷9'ÎÝL{œOð³ò9K’ï¼ýÈø. ŽqÖ8gX.9ȸçrnOÀ™çn­1\säÞ*¤¥æûWIK_K…VÔpQÜmk“ÌÙ̘,žD㎌³©Ö¼Ë·Zx}‚^5Ónäû%%-)Õ—ËÇ*º_æ¿¿ö"éiµß(ú¾5æŽë¯ÇT\?“ò›¥ÞÉøºÍÌ“CÅx?Mœ{Q˹aWIK_K’Át釞m7J寄fPó—5vêûŠìÕØ¿ü,êŸ#ª¿ä¶ ›³Ö Žr.9ÑÍ–«¿YX,×>èc¶U’ÚðÜs¦¼õeÊ4””´§PÜ-KÊx¿Küù]švºZmwÊþ‹çÞ(ÅþôWK`´9—tUNª¡ùž¦ÿçèŽ*cOú>”?Íõþª)¤ÌÀQ¢QÃÓ5}%$ý?¨([̽8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆ“./[Ó=3Ò=#Ñ=ÙÇLEG²*&Z«ïXýn9Ï×*x¬95ƒ'¦üÞXøYÄÿûõS˜×bå¼gŽrÊ®´i¡©þ0ù0¹uAÌuÕµ]Fs=e7â‡&Š˜~(raø¡É‡â‡&Š˜~(raüJóYgê›—í•4½bò54½hÓESmêߊë«lü÷ÄÊ›=úÇÓ}7•m’.üsSú¤ZÚt1œñ éüÛ/Ï*ô@ôDôODôODôODô@ô@ô@ô@ô@ô@ôdÿ‹Àð=3Ó=!I‘H"‚T•n·Ü.õ6^#¨›.Õd´Øä~w,|,âŠ}úÕÆ¾ÐÁúºPʺ{½s.| íÕÇS®•Ö<ˆrù™ßt”µô½Nt÷kÄèz\Ëæe¼>uGñÔæœkïwtßt¡³óo~­¯T¶®èëûc•Nµ~tUð³·Z¿øŸág|ª\¾gêÛÜêÓŠæf8GüK‹gžîk”RáXcWL_Œ:ÕÆ¾ÐÁúºPʺwë‚õK>ÿÑV5ö~u«ñO‰þvêã¯~—>:öëWágE_ ;ä7¬ß4Ǭ´¸Õ€ÿÚnýFã_uù“….”7Ž#÷:rä;Ÿ$ñ§n£úp°}ц_2ïܹçjê+·$ðþÊ”q?Å>ùV5ḵÎ6ºWtïÎ}í±þ&sÉ×9ÒçÀ®ÝQüu9cágE™äº»7nkºPÙø£Û-U«‡Î¨þ:öå¼áÀœ¯Šä¶¼ËíÖo"ý¥}éçŠæqfu«ð³¢¯…ºÕø§Äÿ ;gùá½â ²ýÞ¤x»ºtóÔ5/%Òû•÷ßǬÈÏðê@ÃxnõUÁ\ëß.מ¢ù¿Æ­xn8u«ñO‰þvêã¯~—>:öëWágD¹-®f-Û©îI¡Áxã¥(™æ]¿ö›¿VœW31Äz4ä:[Ž/Û4ËìØ/ÀØçÀú0Ï%Ú²Ž×k¥ Ž×Ðý–ªEƒª ¢« êÓt¡¾Zûr¤™yW‡TºíÔÏNä¼¢Î@¥§™Û?Ìhxÿ à.?¹ó/(öÿÚnܱ𳢯Š+rº[,´YwT¼cŽ/W|ƒs2,ï3Ë}Ý3Åž ðg¦ÏLôÏLôÏÀðg‹4ÿ3äÞAÄ w¬<΄Çzžâ;ùmº[/T_F¹ÂÕj,Mø²"iŽÝ¾ßÇþ’`vŒ¢»ð?ñ£ð?ñ£ðƒ?1£ðƒ?1£ðƒ?1£ðƒ?1£ðƒ?1£ð‡?q£ð‡?q³ð‡?q³ð‡?±³ð‹.ü[ÐZT€jÛ4¡U×Ö,óαq=¦ÞSÓÓÒJù÷šóìK,ä~eçlÓ´ñß1Xî–¾¢¹¢Uò>SÈùwƒ±_¥Ä²~jà 4TðuE-^KÉ|¯K‚à¸çcœ­ÈùOœÓpæÎd¼ðÿ%sgbøGtËq<÷šóìK,Í1nlÏr‹PœÙCfå…œIÓet\qIÏrñª_âg‰ë Õƒ’ú‰t””´¹ï5çØ–YšbÜÙžåWíâÅ-ŠP¥ X¥ž™éž™éž™àxàxàxàxàxÀxþNÉ™Þa`Ú*¥Ûn–ËÕÐyúÕMhääY£ñ¬dDÓ€>ce0¸ñ‰6U¼{.µŠÅƒÙ,ŸØ\•—ËÀ°>аÏbÇ>ƒÖ¯ÂΊ¾}g;å,#Ži³þ®ïwåt¹Þ«tØ¥ŠP¥ X¥ž™éžàxàxàxàxàxàxÀ8à<#Éò Jç‚uƒ2ž›Îqê‹çúœ¶ÖRrj-q(+™4鎾®³Ž?±«ie×QÚq‹%–ì>²3Ó(x×—`@å —%Ú¬¥†u]ˇâ½Yq5/ܹ.ë`ú¶kšãø?ȽVåÙSSU]R l†P¥ X¥ŠX¥ŠÀð<Àð<Àð<Àð<Àñ<Àð<Àð<à€pÀkß¶Ý.vZÞ6êÚïMSŽäøþ[lùÞ­¿æh£ý["&+×ÒLÃÿbïü C‘s'öÍÊél²ÑrV”R%d96C—\á–Ù ¢B–)b–(à(Àð<Àð<ÄñSàSÒ†¤±Å³²3þ þîó?3Ú8¦Ñy¼^2{¼¹DÈeÀC „PŠB(E âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž#„pŽÂ8Gá#„pŽÂ8Gá"„ŠÃïaY®A€dEÍXÿ,Ñ|žSlŸ{Æj?TXFFAQQGQû¹Ï\õMÇt׋½ß'¼K”A,†`€PŠB(E âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰£ÄñTSÎâì[…l«mžÿfÈ$|¿+óæÅ2mygU|©Cì}dâ¦5Ô %Ó–y—Œ°>=ºW_0÷#ºbXžsÕ—)ãçMüÕ”ó÷‡R<Ñ÷BÛ&I.Y0ÀC "„PŠB(E¡"„ñ4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F#„p‘BE $P‘B5îÒÕTÐÔðo1[9;üî¬()(ùãr¦2"aÒ×Ãÿì\³þ-KWUC?åëͰ°æØÖGÊsO&K⌥>!ûrwlëÇ9æ¹™Æ#'‰þTÒRÔpwCÝüãÌ6Þ2°GMmL¹d@C $0ŠB(E¡"„PŠ!#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCC„Š(H¡"„Š(F½Ûòï]øÃ“ñþRÇÿ7«xaûì»2"aÒ×Ãÿì\¯ùâî»ã¼­‘ÙLk’1ÌäúܽUOÍ8z’–‹Š;õ›‚ɺa¼Oð°êàWCÝÜž[xßÊ2[¾q’K–A0ÂC "„PŠB(E‘£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$4E $P‘BEÖ½Þ0äüƒ‹r òÑ’Ú?3«ëW£u]¤ÆæÈˆ˜t›ôëÖeãµ_Š8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)|äl2¾Êä‘H"9q.Öÿ(Çâ°òÞ5t†TÙSå~[˜½T«ÿI\C“q÷~`°KÉø»Œ©*¨8ØêàWCݵUTÔ4ÜÃÊ\±•J–K€‚Ha!„†E¡"„HHHHHHÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$44E $P‘BE×»ÓŸ/þd™Ö1EJ»R~’"aÒoõúo6M—Uíh{DƒÚ$Ñ ö‰´H=¢Aíh{DƒÚ$Ñ ö‰´H=¢Aíh{DƒÚ$Ñ ö‰´H)§IŠ¥ÉÈ"§"¦"¥dRcEƒ+¿ãq®^³\ÉSeO•ù¼ÁÆÔ<©ƒÿù—æX‡[”®^5Ôo å%]-}/~¨þt]t¡±Úé.\—Ì”·NŸ®“hl½Br_g󞤮wü†ÝÂ9•ÎNQÂü—a¥án¤çg™j £2ç#ðä)¼óÓÉůŽrÖ8d2o5`£êÃÅúPä,¦ëŸPdƒÎwNZ䳇9‹3_ÄN>þÕꃖþÚ¯“(—ÂC $0Â(E‘¡#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCDHhh‰"$Dˆ¡"‡Þék—þ×¢ü¾¯¿B»[£s(b&+]*$å?MæÚysr¯a’{ “ØdžÃ$ö'°É=ŠIìROb’{“ؤžÅ$ö)'±I=ŠIìROb’{“ؤžÅ(ö)G±J=ŠQGC%Vz'¢9§8éH¨ÈèvL·ÄZïy==Ì´SËmÖÝy¥üÎ@âl“irŽˆïòª²^å\DÅó\» ªà>¨>úWvêàWLvZ¬Ï.í×®†UÓ§‹ÕUÿ…Ž­9RfˆôqÇô¶l'·VX„Ì#”x³5üDãî¨òù˜—ôùÏ6nEª.Öº寃n•ÜWÏý¹cágãÕÙvSIIKAKÉ:ñï)^l 6-fþÔæ®H¦ã|&D­à €‚Ha!„PŠE‘¡#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F††††††††††††††††ˆÐÑ"DH‰BE >í®å[e¹ðï'Ñr–#ù]Y|3]­_íñ—>!}7—dú™'²È{!쇲È{!쇲È{!쇲È{!쇲È{!쇲È{!MKªHôODôg=˜öSØÇA±ÚöGcQ”6Ë­¦ªÏÈéä͆|¿Íä&Àù6—•ø£#â\€¹«’øÐêàWCúç:\øu’ýèæN)ä.,±ñ—âÇ‹Xuƒ|ÀrÌ[£ ºªŽ(äî=µò†Â]=Y¸vªõØ1ª[×Pü/`ª´Ý(oHöå…Zèn¹ý­UUMCMË“[Êy|©d¸!!„†Ha!„PŠ!!!!!!!#BF4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F"DH‰"$E ÷xw“ëx·.¥ª¦®¦üž«`õ8Ùv´E T1.|Búo'Jó¿{1ìdzÌ{1ìdzÌ{1ìdzÌ{1ìdzÌ{1ìdzÊ{)ì§²’©µ7Ò=#Ñ=Ð8©…JCFCB‰ÒçL·â•SÕª‚‡òïyåæ×ÔǹÖ.5öÇt;t®›k:£øÐÇ~¹Î—>±ñOŒ¸Ë«øÛðŸ‹Â~,? ø°²ãÖ j—(Ê,X]ŠíÎ<ÁÎùvÒŸYgX±<[?ö›·,|,è«âŸö·V“2"Y.H!!„†Ha"BBBBBBBBF 4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hhhhhhhhhhhhhhhh‰ "$Dˆ‘"„Žû½$òlÉÒÿ'©»\úþ.‡µô‘ø»ôÞA•çyô@ösÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œör }Eé P¥ H¤ AéÁçRÀäS]«Ê<3ÉSRSQÁùEåó0.¤)*éké{õat¡·ð—Dø½U¿:£øÐÇ~¹Î—>`aÕÖ>OéË%ûÑÃ}ð^@°r/XüUyͺZÁdáüUÛÿiŽ1Ín™¡Ë :*ø§ý«ÊÍ7a5u•·‹”¨ „†Ha!D0‰ 4$hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑ"DH‰"$Fˆ¡÷mw*Û-Ï‹sºnFÂ?#¨OƒÐö²~’"3>.ý7-°Ý.—¹ù ÷? >çäÜü€ûŸsòî~@}ÐȺ}˜}ƽŸq¯gÜkÙ÷ö}ƽŸq¯gÜ{Ù÷ö}ǽŸqïgÜ{Ù÷öG€\濸u´‚–)b–? je}<²šê²‡®®vÌb‚‚”+óºÕø§Åü…™pu%]-}/nuÌ*¹÷’ð :‡ðÓªšºZ~èj®– ®ÝrÕÒÇUÒµ]-GÁÆÔ<©ƒôñÉ5Ü1™vænI®Åhp :‡ðÞ®1«¥Ÿ—ºuÌhs.#93)pK5ÿü æC§Ÿþe‹˜jéh¸££ ºZ~WþÕçŽQ§å®L²\BC $0Â(E‘£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F444444444444444444444Dˆ‘"DHŽ(H—»Ó§)Qq¶]ùý«Äpö±EŒDgÔSÒòÏö-Çý¾(¥K&\$ÀGq1ʶÖÔ¼KÖ)ltTÿ%™q=ç-ê+%ÅqÌÊ×'§~K㙟lõ“—N6ê[™¤ñ·àüWBg¸åÓ-Äï½"å9Akèºéc®âž8Êxüån8Êyºt]t¾WXºEÊqsÇ.˜–&rἡk²q5qyö7R—à ãlsí—áxÆ{f§éƒ2ãúêj^¥«¦bIfǯ<ÍÁxç0Ðâü ÈðÚêñ™paw®”3L––“¢:ª ¬ …3ìK,þÓêk“%b˜¤‰z%ÀK„‚Ha!D(… 4hHÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCCCCDH‰"$DˆÑ"C÷z`äùYv#ïòí«íž5‡ú"3þ ÿbÞ?•¦U3â‘bqÅoÅæ"’ÙIEû UUMCMÈÙ­O"æÒ %ÂA $0¢B„„„„„„„„„„„4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCCCCDH‰"$DˆÑ"DkÝâÜî§ŽszZªjêo{àPBÂDFqÿÄìZè=J*,rcT”´KöªnAû‘,—$ÂBˆQ !BBBBBBBBBBBF4hÑ£F4hÑ£Fï£F4hÑ£F4hÑ£F4hÐÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$Dˆ‘"DH‰"%îô¥È¿xñ{àPv±þ®"3øƒû›UUMCMÈÙ­O"æÒ %ÂA $(…¢$$$$$$$$$$$$hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F"DH‰"$Dˆ‘#^ïçu’ì‹WëÙ4㿇ÿ¹]We¿dá4ð¡%Â@ˆ !D(…¡!!!!!!!!!!#BF4hÑ£F4hÑ£]´hÑ£]´hÑ£F4hÑ£F4hÑ£F "$Dˆ‘"DH‰¢5îôûÔç¼kîrŸÄÔZ¿^ȉ§ü?ýÊê&ƒ)åi0’á D¢BˆP—düÝ~N¾YŒcÆ1ŒcÆ1ŒhhcCC"DH‰"$Dˆ‘#C÷:BÊåÚ³s”þ&"µVȉ§ü?ýɾÝé±û%Mumâã*Z D…¢BˆP„…Û]µùš÷4hÑ£_0Æ1ŒcÆ1ŒcÆ1Œc"DH‰"$Dˆ‘"Dh‰{œy•ÌÂ3s”¾&¢“õlŒšqßÃÿÜž©2k_ÓÂJD´@ˆ !D(…¡!!!!!!! B]´kó5ß^þ¾eŒcÆ1ŒcÆ1ŒcÆDDDDDDDˆ‘#DkÝà|’›'â~ü§ñ5Ÿ«dDÓŽþþäõgöüÒL$¤KD¢BˆQ „!Bù-~N¾aŒcÆ1ŒcÆ1ŒcÆDDDDDDDˆ‘#Dh~çF™©lïÊ_QIú¶DM8ïáÿîO(_¾ôòT”KD"BˆQ !B„!B¾o_0Æ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDH¢/s¦‹ì\ïË .IE'êÙ4㿇ÿ¸²¦ÊŸ/¶aw©Çñ*X”¤KD¢BˆQ „!B„/”Ñ£F¾mŒcÆ1ŒcÆ1ŒcÆ2""""""""24F½Ë â§¾w埉¤ý["&ÿcdUSè1û8O•—!²ä2>W¹ ”ÿñ~ êjê<¦gÜ)ÎX•‚ÓÈœÅ|ºZúu扴?Ã)™u_ˆÐô‹›æ™/$ü6õ fáÚ®"åÛ/Ø?³2K—°Ñc·Ogºvê†ñöoSÂJD´@ˆ!D$$(B„!B¾SF»è×̱ŒcÆ1ŒcÆ1ŒcÆ2"""""""""4Gîð­âšùÄý¹gâB)?Vȉ¿ØÙbÞ+–ŠjªË}F1Ìw«YaÍq¬’“é.Á/,¼öå…œOñO½ŠÁ/‹º¾ù¨¸/6ä;ÿM7yâ{öeeÇí«æQí’dc×™9”êúã¸ä"R%¢@ˆHHHHD!B„!_'¯w_4Æ1ŒcÆ1ŒcÆ1Œc""""""""""##õïÒ5òeÇ{s=]·“ÑIú¶DMþÆÊñ— ŠœŠ˜r"F9Ë95ŒÇ¹“ºÍ•6UD¯éZ’–Ÿƒ»rÇÂÎ'ø§ßi)`êû{6¿L´PZ$)2nR”é÷egÞì¬ûÝ•Ÿ{²³ïvV}îÊϽÙY÷»+>÷egÞì¬ûÝ•Ÿ{²³ïvV}îÊϽÙY÷»+>÷egÞì¬ûÝ•Ÿ{²³ïvVA”dÕ1¹C’9TätÄt¥¢õ}Ç*1¾k ©-÷ +­æä6Z\–Á…âl íË 8ŸâŸ|ϱÌêèeü•àRÿŠ> 1JÀóÙ}¯Y¾UUõ5ÁÔUV›¥ ò×zê…ìX¾kˆæ´¦_ËÜi‚Lþ(ø(¹O¹²æ˜ÆEyº]­v:ï?pÞ:`Ü£‚rW¹”s—áÕ_Å\†Á’Òö»r·XËOQü1|ºN¤8JÏ]ˆr÷gs>»6l¹ê®d·ºX|a¨[‡&¦KY‹dt¹M›”kënœŸ%Ñ-"BBBBB!B„!Bù=ï£_2Æ1ŒcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆÈÉžçK7Š›g/öêGã)?Vȉ¿Nç%9åž5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTQAQíž‘éH䜊˜Š™C²Õt¾ã•kÜÛeÚÛz¤üþXøYÄÿýÎ{çÊè.œQÀxæ Br§O8Æo/:®¾Ý ׆xÛ‘.œóÅô¼Mžc7kï3ãÜ…Š×a¼7Ò &O-u'ÉwÜn‡8wÀ)N`àë7#RôGIUAU”bö,ÒÅÔONÜu‰ñ×Cªêéh)rŽE˺–Ï0^/Áøê†®’–¾—˜¸Š«‹¥ðw8Ù¹zÌe]2qY;±}×çÛuº«¨«]¦×c¡ê—„±ÊüO¥NT¼ò#õÎG½:z\e-)¿Ó!¦õ$qÿì<“Wÿ±¤¢Y „!B„! äôk¾¾mŒcÆ1ŒcÆ1ŒcÆ2""""""""""2g¹Åÿ;u#ñ‰Ÿ«dDß§s$¯<ŸÙf=˜öcÙf=˜öcÙf=˜öcÙf=˜öcÙf=˜öcÙf=”¥¦ÕO¦zg¤z'¢{8é‡HEA²e­DK «¢Ÿaå{Í fÊlüÞXøYÄÿûóvy3Ž8Ó£û\ì‹—;õseªÆ9ƒ„sɜƇZ¿ú^°K³q/n®'^q^]Àùä‹7n1Ågcœ¼uGð+¡ŽÝcr=v;ŽtY`—Cǽåݯ< ÌÔ•tµô¦oeªÉyÊÓk¡±ÚÎXøYÑWÅ?­Í›.Dº«„܆õE”Âá+Ô•~¢S`®¡û:ç(–@@@BBBBB!B„!Bú›Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆŒŒ™ïõ#ñ‰Ÿ«dDß§r¼¯<‹ÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œösÙÏf=˜ösÙÏg=œ‘O©Þ™éž‘é‰èÎ{1ì‚¡µ2U²MDËWÁÚy>ÏOùœ±ð³‰þ)÷ë‚õU"ÁÐǹ×9Ðýêª}€ëWâŸü,íÊüQŽrÖ9˜ñ.p­v5Õg2c¦ Ö­ Tëþَ͔¨þt1Û«kÕUךz\øߪ?޽<^ª¯ü,í7nXøYÑWÅ?­òNC4«lM ôŒ©„¾SäÏìþ3¥ÈHHHHHD!B„!_RcÆ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDddÁûœsUS]ǧR?‘Iú¶DMúw&Áå~ôODôHôODôODôHôODôODôOHôDôODôODô‰Ròzg¦zg¤zB”)'¤‘2ª’IEOw»ElÁt”Tÿ;–>q?Å>ýpYj§Ø:÷:嫥ޫ¡û-T‹Ö¯Å>'øYÚw"RÓò¹ãN=ÊfrOGXÚ‡¥\òó…rYÕÀ®†;umeªµsOKŸ»õ5WK[Î=äãÜœdû•ŒŸr±“îV2}ÊÆO¹XÉ÷+>åc'ܼdû—ŒŸrñ“î^4}ËÆ¹xÑ÷/>åãGÜÌhû™s1£îf4}ÌÆŠüK§¡ñ"Š\²eÂDÛ¬Á:Ê·kÃn7φ[­ÐÊ•*L#”s×áwÞ]꓌*ð|Nû÷_)µõaÂW ”pNJïÏ}8W_nœQÔ} \šººZ ^Wê>†’OO=5UqõÌÍy›¸îéÔW&Y¹K¸“©Þ+¢ãÜ_(±f–#ªBóžóÞ Wq5u%]-}.uÌœqÇrx—Žr<ƒ’rŒ¢Å…غ‰ê'޲Î:éo—°Þ/®Â³ÜO‘-ut”µô¹ r? g_ÎØ(ÒÞ²5KÊ|•ê «‚øf‡‡±Ã!êW‡qª¯¿?þÓǺ•áÜ–ªít¡±Úùo©Þ+­ãÞy2Íż……s7r%ÓëU2hé§VN½Ýi%è‘ fL*!Ú¸ÉÔwš8fÁQKL$$$$"„!B…Ù}EŒcÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒ˜Gît›x©¹ñ9Ë?mL®dDßìkÌ^y·)¬Ž¦&I¶ÖÏvl"mQA‹Zè¾VéǸ ò»ðŸ‹Â~,? ø°±bx¶/îeV#šÒÿ œX±<[ïzÂ0¼–«ðŸ‹Â~,-v›]Ž„û¯bûÓt´Úï”5}2ðumV/Å\q…öºZmwÊÂ~,? ø°²ãÖ j—¶_Ä3«äíd¶òB„!Bù|ÓÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆˆŒŒ˜GîtyðÌ埉µ~½‘Kwr…Úßý‰|†(ì”Ö9³c´áUE †Ù@¿½ý¢¦ë]I,‘ )ˆdDÔ]å’Ë­"™rý)ЈB„!Beõ'ÙŒcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆˆÉ„~çGŸ ÎYø‹WëÙ4㿇ÿØ•a¨‘Aj¡¶ÃýóÅfØ+©à$¢Z!ȉˆ¸Kó“UÖSÛi¼â™$$$$$"„!Bì…òšï28%A6ñ Ö¦% έ8.ó ²*_˱ŒcÆ1ŒcÆ1ŒcÆDDDDDDDDFFL#÷:<øfrÏÄ„Z¿^ȉ§ü?ý¿©¦‘W"³ Ž¶ •!fDL/yîgzåXªJ»mÒ¢B„!B¾Z7¸¢‚ÔT”ñÅL;l­+sND^¤•cÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆˆŒ˜GîtyðÌ埉µ~½‘N;øû…:8à¿SM™«•mM9ââU^îž:º©ôw/÷‰D²B„!BÌSÃê·bŠ4±«Ämã7¸O»•ªhih¨?Cò¯³Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒ˜Gît›g©¶q9Ë?cý["&œwðÿ÷ £ýú›ú^!^”EOô­ý-ËýâQ,€€€„„„„B„!Bì…òô_Îu?ùmÿå›ý+L“ô”?¡ù61ŒcÆ1ŒcÆ1ŒcÆ1‘‘“ýΚ¾ µñ!?Õ²2iÇÿpª?ßi¿¥Ú£“Sý+Krÿx”K !!!!!„!B».È_)Aþµ7ô·ÿ–oô­2OÒÐþ‡å˜Æ1ŒcÆ1ŒcÆDDD2"""""""""22a¹À–z›µñ!?Õ²2iÇÿpª?ßi¿¥d¿)1?Ò±îžåþó(–@@@BBBB!B„!CÆ-ÑVrµLdÞ@Êç͇9Ës|¬•È·ø`¥äš(Ê õžæþFßþµ?ô ÿ,ßéZdŸ¥ ýç¿qöcÆ1ŒcÆ1ŒcÆ2!‘“ žçÒÔÐñéTO«¸¢Ãs4㿇ÿ¸Uï´ßÒ«ô‘%_éîOÿ¹”K !!!!!!!„!Èó[F9 ã*È2"\’ D2È`!€P BZò[Í­Ùrú ´Õùöÿõiÿ¥ùfÿJÓ$ý-è}×ùì}ØÆ1ŒcÆ1ŒcÆD2"""""""""22a½rm×"À2"iOOOGOûQyÈív%[È—yå6}È-|‹E=ÒÕSÖÓü­Gûí7ôªý$_Ò¤«ý=Éÿ÷RId$$$$"„"®¶–ÝK‘rU]`¥Ç6d¹$ÈeÀC¡"„PŠ"Í”ÜmNÙv¡»JüÛú²?¥ù&ÿJÓ$ý-è}×ù¯³v1ŒcÆ1ŒcÆDD1ŒˆˆˆˆˆˆˆˆŒŒ˜Gß‹þ&v¹~¹‘“joWi6[}]UEmG{]Þ¾ÏQŽäÔ™ªÛå’Û6³–pÚiUœÑO ÚÎ`Ȧͩå,Ò¦Ÿïï 9ûûÈ#åœÀ£æ ŠTÚ>h§Šm,áÕ2¨2|vé¿QþýMý&KõdÄT•§¼È¨¥¿I%ˆB‘æ¶ÌxºÝî¹ L¹ˆ%ÀC "„PŠB$$h¦Ÿ>’}ƒ)“s_™nÿVWù(?Ó›ý+L“ô´¡÷_ç±÷cÆ1ŒcÆ1ŒcÆDDDDDDDDDFFL#ïÒý¶¶»˜û\¿\‹^ÊÈÿ¤ßÚœâýöã½]òÝI¼×͉}§5ʵ@ˆ-ÐСQ!Q£Ùìhö4{" „ŽÝ &Z`e%nAj†ÙÊYm¾+W/cÕPÛ.ÖÛÍ/z÷êo舊’¯ôüÃj©¶åòY(–@@BBBBBB"¶áEl§¾ò%uÆTú%É –C,†¡"„P‰ 4hÑ£ɽ£ó-ßêÊÿ%»ü“¥i’~–ƒô?žýÇÙŒcÆ1ŒcÆ1ŒcÆ2""""""""222aõíѵž¦v_ÚåúòÇúFFMý¨Ër xÍ†ÏæèÊŠ‰4Òê§×]]¢!—F‘) 0©Å RODôODôO@ôN:b*R*B:$M·BÅE>Ž¢ÑÉ™Už /(â÷8 Ÿ÷êo舊’¯ôýEPQɵHd¢Y Œ‡6 ³«Âã{©—$‚Q ²`!€PŠB(D„4hÑ®øÎKí—nÿV_ù)R†)¿Ò´É?KCú–}ØÆ1ŒcÆ1ŒcÆDDDDDDDDDDFFLõíÑŶŠV rüçúòÍ/‰‘”twk‡í?'d“oy £~É:¡J'ÁòU,(‚ÈB”…-ñG‰£FG‰âx#ÓC”‡!S":DL¡„Ÿl—M:óg$dw*j»5Ößt”ŠÔ¡©¨þ•ès}£í.§d¦K !!!!.wë]š ¦_z»M•N‘’ D2È`!€P B(E¡4hÑ£F½Ü[ Ž·ò­ßêÊÿ,õ&ÿJÓ$ý%è¾M³f1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒŒ™îpe—ì#9þrýyjÿodfñö›:Ⱦìã”Ò¼UؤÁ¢\;ŠE+MxöqC ŠºBqVÎUtMÅqj/n„õ+QQ †¶ —>µ¯j©„Uò“†¢L}´xY’:be!>2¢Ù2\Ë>y_A5×R\b©þ•è;MMÿŠibþR™-—ÜÒE4>3ª&K’A(†Y 0 B(E¡4hÑ£F½Ýv†(¥Åb»Ãx¤ü‹wú’š‘þ¤ßéZd¥¡ýʾÌcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆÈÈÉì6zœ†ùÛàW?×–èºF`±o7J{Ÿä 75ù|£ž¸Ÿ ¾ÿ||||Yz‡á{ýU%]-}/ÉåE‹ ±^º¶á{U/óV-ÌMäËïÛ¹4©z Zì¿“¨áþ„º¨Yê!ÍñÔ!Õ#ÚÑíˆöÄ{bD¸Ïþ3pÅLôyÑÄC+G©U,†²KÉž$P¤¢”L§&Ò “mS)gÁp*¿ô1/ø¯&X¾ìr<–Kd¶@@W](­r/-}ÝʧÑ¢ d2È`!€PŠB(E‘£F5ù6[›´×Á1ÃïÛ¿ÔPÿ–iZd¥ ýɾÌ}˜Æ1ŒcÆ1ŒcÆ1‘‘‘“;ôÃŽý¿Ë¹Zé"ÑÇ_«)?HÈÌâö/"|?§QGQ‰u%›Ø%á<µ„gŸ+tãÜù]Õ. Ž`|›ÒàùøOŇá?Mœ?—Ë»EÌ,eÜ-Í6nd³|•ÒÓk¾Põ;Äœ{EÅ} wå¾oåy_†3ìûŒ>œd/ÇidøÃ"Bí"w¦E0ŽzG·Å,ŠõâArŽ ²bwü†’)Ô|YbeãÒÿ±³1ª‘qm‰ñUB&ñîYO&}“'¢›*åDdÔÌBŸ*`¥8R¨ŽYÿŠzPE-C™¢e>ÉÔ…e¶ Ï¡«¡ƒ¹Q\±.ª¬^Á™Hd¦Kd ºeKQ)ÕSåÉ ”C,†¡"„P‰ 4hÑ£_™†Ýb¨“ïÛ¿Ô•ý(?É4­2?ÒÐþ‡åf1ŒcÆ1ŒcÆ1ŒdDDDDDDDDDDdddÏëÛ£LwÓ¶vç…5?ª$ÀåHˆŒá»]=㔿±yþ£C„ùã1JŒK¨=ÉeüŸZ¿ú*øYߨ¬:‡2â>Χqß#üŸTºï—ôÃÅÙž]iµÐØíGä‹ßÛ™,¹z&½È¦E©ž³ ´Í˜¤ÑRÈgA/ɬ¶Û®oØgÜ}’PÅQQS@RÞé&U¢u<3”ó©c—èO<”PÉ&Ól¨¢L— ÆÉ_̹³<ãºx‰L©¸ÒÛåÜ.Õ·RU>ˆ%K!–C "„PŠB$$$hÑ£F¿6ß[º¶TÙså{ÖïóÉþ”?éÍ+Lô´?¢ù7ÙŒcÆ1ŒcÆ1ŒcÆDDDDDDDDFFFFEý{p>7MŒq?nxøSSú¡‘œ ñsé¹O'àØUÃñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øÌy¿‹îØŽ48L+–3ŒÁz“Æo¥=E=e?Èu«ñO¢¯…ù†®–‹Š1ë-VKù>¨þt1ô¼ÒüñÛ4…*û6GjjoOܰP;]›ó*)©ë$ßø‚Ù]Î×b3(2X‘Kt¤®‚*9’J[«n\ræÂá"–L‘²¢“eÆÓ*|96 ¬»Í“§2|ÉrH%Ë!€†@(E¡"„HÑ£Fù 6½Õ[{ï½»ýI%ù&•¦GúZÑ|£ìÆ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDdddÆ>ÜyŠLÍó~üùQ"OEŽ92ýY¬ˆŒàO‹¿Mêžd¸9×’zòO^IëÉ=y'¯$õäž¼“×’zòO^IëÉ=y'¯$õäž¼“×’zòO^IëÉ=y'¯$õä’çJqèÑ£G‰â8 s6Ëñðî¦qk•=Æßv¤üîµ~)ôUð³¿TùCš)ð]ÒÇ]Û%ʱÌ6×bç.G劊¹ÝUÓÒâ}OY ¼œ­ÈùO—þ³¹&šóÅÜ—÷£‰ÿ97;2Œï©<¥â.qÄy~—¿&s×ñdËNeÔ†m/ï‡8aÇ:f˜Æ{Ó‡C¹[‘òž?2ްùNÓ}áœÖéÈœlrRö;êë’r\Ó5äœs>Ñêjê\úÏ8¶ó`¿Ù²›7lë:Ç8ëǹc™¹V]Ó,ê/ ¡´õ;Æ—û5M£ŸrÙ>õ–eœƒòü‡vû^ÿå=XOUª=Tz¨óEÚï…cê+>C"â¬vòïØžIŠ;uþ|’‹}ÙDêmó).²æ­@L“²}.ÊÊ̸òž½ÇE6–lÈeÀC „PŠB$$hÑ£F|Ž)Z©/^õ»ýI%úsJÓ#ý-è¾MöcÆ1ŒcÆ1ŒcÆ1‘‘‘²cïÒ).ë›÷êwþ2.mêÙÓ§íOúoTÒ%Ìäd’{$“Ù$žÉ$öI'²I=’Iì’Od{$ƒÙ$É öY'²É=–Iì²Oe’{$ƒØéÏc§=Žœö:sØéÉt’!™ÛFÄñW‡õB¦ÔX² &Moüε~)ô¿øÑ÷ÿõ1ÿú˜ä.&ê[78n§¥ŒfóÚ®®–‚–ãv¼õOÍö›] ŽÖuÇô·œ'¤¾T™˜â'\´”°UtñiüWÆ{eäðRݺŒæ¿Â¬s¤Þ+—‘ÕvꛌæX1î†;õËIKWKŸ»]«íx_>ñUMJu ‹Òå\?Ñ_1Uvͳ‹Ï?ò½¦×Ccµœ©IsàN}ǯT¹-‚ƒÅ­WO˜™ŽcÓ¦}ÙÆÉ¸®5:_á¾~a¥oâµGá:Cĸü.WÕÀ~–¼Ëo%6T¹òïxÌ©—ˆ¢ª A}Ž]<`¡»E ‘Q&¦ &J'Óì«¢Lʰé79uVêš ðÀ(¡"„P‰4hÑ£_' qKŠš¢ª~û6[¿Ô ÿVÛr¦•¦GúZ/Ñ|£Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆŒ‘²7ߦ¬Rf-ÄýúœÿÕ~®× 1×2"aÒçÄ/¦õB·Ÿxž'‰âxž'‰âhÑ£Äñоwê…©yOéç¨j®4ª:»Ì*±®.è~ËK>ÿÛ7²Õd¸_I7ª«W4s'Úèmü%Ûª?޽¹ç3ûõʼi`™‹qïn¨þt1ß®s¥Ï]®ÖºçR=¹cágE_ÎBûSîý…øÉÛ­_Š}.| ú½Oûôt4w {¾!q´”Wæªd×N©¢™C_*¶ ²t•T{2\bMÆUeºuõ¡"„HHÑ£Fù=›0ú¿j±û¶ïóÚ?Yjÿ,Ò´ÈÿKEú/“cÆ1ŒcÆ1ŒcÆ1‘²6FÈÙõ8󙛿ô´´Ô4Ýú¦¸ÓHÃ#Í™hMײ2aÒçÄ/¦õ=ÿ>Ñ£F4hÑ£F4hÑ£FãÖZ\jÁõzŸ÷êoé:¢E%>Êøt›‹"¡»ÓÓÕC0Mrã·Ý ¨Ù²t•T›2LnU|ªºÔS”"„HÑ£F÷5ùû666qüé‘J÷m¿ç·FåÏ´ÿ–iZd¥¢ýɾÌcÆ1ŒcÆ1ŒcÆDDDDDDDÈ™#dl˜ûôy…J©­÷:¬LH±~­‘”¨)&\~›Ôïü÷F¾[Î}vŠ8%©·*idÛÌÈžÃü‡ÈfÓ6#Žºzy’?7­_Š}|,÷:‡½Rßù§£Û-U«‡úÍÅþÕ㎇ïT²/ýê.ÖºJã®s¥Ï]º£øëÛ•q¹|‰ß~ôbݺ£øÐÇ~¹Î—>vÿÚnܱ𳢯Š}¨í8÷8ó}§†9G‹æd8P¼‹CÆ|WˆñE›är,¦ßŽKºòfOP­Ü¿y¤›lºÛo4¿C©ÿ~Î9{ÁU—d¹Õ|©sèç⹤O>°¯ä[nÑIÊ%é;*©v_ì2«¤ÖÛçPOHÑ£F÷µù›6llllãÏzÝþzÜv¨u*iZdŸ¤¢ýÊ1ŒcÆ1ŒcÆ1Œc"dl‘²6FûRÒÔ×Tñæ)/Â=Ϊ¢Pˆ°C›"&&ÿ_¦ó·æù–]øÊçàG+Ÿ®~r¹øÊçàG+Ÿ®>åf¿‡îR?‡îR&tõÊ‘ŸÃ¿+“:qå§ð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×ÉeWOÜ…f¦íU<²eÖMºÎˆ†*š—ƒp–q˜M˜&52žžE$ÏëWâŸE_ ;õΖ¾5Ç8£Š2>ZÈí6º®ík¡¾ZíjtÁÎt•tµô½°šŠ^Zæ®s¥Ï]º£øëÛ«Þ®º%r=MÇݺ¾Ï¥Ðáý wëœésàWoý¦íË :*ø§ÚÙUtÿÔWâÇ‹XX²Ì[(ùŽÿŠ’ºeEuDÉúM–‹Íë«Åsk6W/è7Ëå§´ò5WÝ®Òi’%É ”C,†ËaŠ Z¨f-Ë«¥ Ž °G:Nʺ]™5Ž ™s©¦SMÑ£F~nÖß¹³cccccg?zÝþ{YmÿBiZdiºZ?Ñü›Æ1ŒcÆ1ŒcÆ1Œˆˆˆˆˆˆ‰‘26FÈÙ1ú,a2^E÷z¢›S75E‚¼Y0éF‚®]ö/!Eá€MºÆM®™öÉ5µFÓVgKÁøS Âaù÷%êZß–g\-ÔÏ"ä|[õ]Ä–¿¾]dŸ|ºÉ2Šþµ²:\g£ýÆóˆaxÆfíÈ\c†ò…¯Ä9÷€&RsýTtµvnZåª[‚Í‹Y¹ZóÌ–““8Ǫ>W¼ñ›«Ž-³`U™•ÃÏr^¥­ùeÿ§¾£ò›Í‚ùÖmŠÍÛ0éÛ'Åò‹g8ç–É“²îZÎ%ògNÇxˆ1¥±§Þy’ìrµç™-'&qT|¯y㪯xÒÅN¼ÔX2Ì—«Oµ?‡.¢¾ÔÄò^­>ÔÈg^iìÓë<Ç0^êg޲>/¿óíÖÿt»Zìt<+øª®þà`Éz*Î-å—y¿§ËΗٳÜ_óbŠpÞ«c»\"”G$™ K²)³°>G›z©ùþVêÀ`Ëó<§nò¤J –C,†`1œš8%Zkȶ\"¥™ü¢S 'IÙYK³&°Aéxè×½¯ÈŠ% Jd÷Kn%RK†…£ü;G?zÝþ{_õ¶¡4­/ß§£ýÊ1ŒcÆ1ŒcÆ1Œc"""dL‰‘²6FÉ¿JØíÎÁÅ~ïS_óôX¿Hȉ‡K_ÿ±y+ùqÊõ&ÅA\n°™o7†ñfƒýw­<òó&á€aÔ<†÷ê3³f¼]Ðýêª}ƒò«óZÙ O0bÒj&sL^­? _2I®Ë"”G$™NM¥+mÐ̃ 亪YҦʨ•óyMâVÞPêc"ËI4ÉäJ –C,†¡&=‘ͧ™GX£ZóV»›¦Ê%2|—(fKÈ­ÇQÛ_–æÿ:j “Šz8aPËH×kå¡5±±±±±Ä8‡Ư~õ»üö¨bÕ³ý ¥i~ý=é>QŒcÆ1ŒcÆ2!Œc""dDL‰‘²&DÈ™#dÆDÿ™Å¸%O#fô´´Ô4ÞïR׈비•#&-|?þÅÌ­ÕŒCé~¯xæ%â4¿^ë‹ê¯önæ»_*ãú§æ+~+ˆô¹Åõ\yûÕUt´2.¼ÁŽÒÃ_Êyy]W{¼’í°¢CD‹-2“CâxË"”G K²¦Dcmßh½ZïÔŸ3Ê|óŠq¡—f™O Ý¥È ”A,†Y 0 B(E¡&;~ŠTTuJ4áõ¢ä¥ *dm]­Ê¢UÎß2ßPkòcŽçUÅMA.K—OüÔ>åÆ_¯DØØØâCˆqDq´ˆ¸ß¹nÿ=ŸôößÓÍ+K÷éèÿIòLcÆ1ŒcÆ1ŒdCÙÈ™"dL‘2&FÈÙ&>ý)q×ÝÌGÞê'ɨ·KôèY0éòžžOþÃæ=3á·Šè*:ÄÄ>u.4QçÌ‚Ï T©Òc‘3Ü~ç«äéí’dnr¡k¾È¢&MP¦ÆÇâCˆŠ2(Ì^Ž;}ƒ¶ûÛ¿ÍeÿBÛúy¥i~ý='é>QŒcÆ1ŒcÆÆÆ1±²&DÈ™"dL‘2&FÈÙDo·à•<›ÒÒÓPÓ{Üçr¦¸òZ)áŠ]3#&œð“ö>óY±ù*_¯qÍ›*" r$2…,P'øaP^(¢pÜh£~ÓMÛFÀrˆ¤l›D¢*í ¼_"Ž?”ä΢0î>šçyo$\åH ’A,†Y 0 B(E¡"FÓÇo^´4µJ%.ßY d˜áþSå´Û2k?ò÷£K†M-Ms¥¤‘NK§þj]Û"Œ™5B®WTå¶8‡â"ˆŠ2(ÌvÝæôo¾Í–ïóY¿ÛmŸ§šV—ïÓÒ~—ä˜Æ1ŒcÆ1ŒcccdLlll‰‘2&DÈ™#dL‘²6L‹¿La+Ä}þI}õ]™4â[]=Ÿc²ÞX¦§U.7Š©4‰äh‚I ±@k¾É±â6lób¬ª…At­Az¬…«ôýý¿¯”š‚íAíÖèÜùéë¿ÜlŠš¦EdȲl¶ò‡SZI¦H—$‚Q²d0À(¡"„HБ£FfG&eŽí TªyÊ%<3åL‚|©v\iPÞí±PÔû‘MþtÖÆ¢—&(Ô¹PÀµÝ±ÄESY.D5×H§¨£lq!ÄEdQ‘Ì8âËìVÞÛ÷-ßç´@ծߩf•¥ûôôÿ‹òlcÆ1ŒcØØØØÙ"dL‰‘2&DÈÙ#dlŽ"7ÛƒxÂo'摟ÕȬ˨¿V22iÇÿc*ªé(deü[ztÔJU>ˆ%Ë&»lóÑÎ#¸}–3Ù£=šaìÓf˜{<ÃÐŒôèÂ8!DQÓÂM¸QH-xžSw(8ÒÏ* 2dÓËüþPê; ¿3Êyï*A.I¢ d2È`„PŠB(D4hÑ®ô‘Ðϵ×Ã:\°Zj¢¦Ÿ&ÀUÈÚÈ-PÕH›R£#ŽŠZšÇ"–M*—!íCî6E2r…V] –O©™:'âDQ‘FEÂ9¦/b’Ý%Á.L½ößmö·šØš´P~’iZ_¿MKú_’lcÆÆ1±±±±±±±±±±±±²&DÈ™"dL‘26G2.Ô´µ5Õ<'ÆÔÜk„~Eoþ*;JN¼ddÒÍk§±ÙÿbïÙ££ËòºüÒºšÄ—$‚P 4lqj#©…8ëaOÚ¦M™2Ó‘’0 Â}ElŠ›uW®zç®{HêëÂM¼J€¦´e—8¬üCqª†ÓˆãV8¾C*ä,' ƒ”ú‰É³ø$Òè— ‚I¢d2È`!€P B(E¡4hÑ£Fv×kËÙ&ÐÕ(Ô_ㆂ²ÉÂO—²º›k(´ÇħM)-pÀà–È%(»ìqL*kåËU—(æ‘Fân"(ˆ£"ŒŠ2)„sHç«UÊýUŽØ©qËnÍ›6lÙ²ÞÿÅLš¶Ðþ’iZ_¿MKúm›7ÛfûlÙ³fÍ›6lØÙ±±±±±±±±±±±±±±±±±²&66DÈ™"dL‰‘26GDȈžût±ÄÓ/7Ȩ¨‘I"ኂÇ1V Œ›û•åvìJÝ__rÈîTôÚ%Ê!€K³ˆŠa2¨s¦MŽÓd·hm¼[c§T”46ù}¹JÙЇ–ØÈÌF‚’í˜~Å_o¶ìrÝ]p¹ä—*z}åÀ$6E6¥MŽlvN9¼Ý &3fÇåû·ke-æß‘Ú.8ÝÂ:Ý |ùÅ“Ž2ì‚ Øi £ ¡·Ëù,>8¶ò8eÜ H¦Ñ.I¢ d2È`!€P B(E‘£F5Û^ü‰ÑÓͳWÃQ.”rìÕZq"tl—ú( Ž5Ù²(ˆæ5ª\5W(ãmŽ!ÄEdQ‘L#šLœ9‘Í™q›Œ•¹2ölÙ³fÍ›6c4nlØ¿MG ‚–iZ_¿MLÿøû6lÙ³fÍ›6lÙ³fÍ›6lØØØØØØØØØØØØØØØØÙ"dL‰‘2&DÈ™#ˆŽ"dC)ijkªxwŒ(¸·üžV¹È´qÅtN;e‰5FÆF`bn +UOTf7ºj})Rˆ 46Lš¡S§Äˆç’UcØuŸƒò.v«mæ–.ÄË.XbùNTê‚×j‚ëq»d—iR rH%Ë!–C "„PŠB$hÑ£Fü¼vàéêi§yA¸ )çÁS&d%L½«*ާ±²(É“’+®pÊ'ÔLŸˆqDEdQ‘Ì#šMŸ¢ÇŒ^r9¸Þ)kÆålÙ³fÍ›6lÙ³ý$ïÒÈÿBiZ_¿MOú}›6lÙ³fÍ›6lÙ³fÍ‘1²&DÈ™"dLŠ"8‰‘ÄD÷Û¥N&™l¦ü®xøSqƒÿ¯¶@åб‘œOOUË?±<™–μÜé)¼T™D ›5@§NþX® W{tÔÔÔr~{yW ãJ>Fæìã“`“M¢\’ DÈeÀC "„PŠB$hÑ£F~cz)ãŸ2}ž¯Õ‚KQÃg¨ôgĉвvd±K‹Íj)…E\2Õ]Ö)†ô8‡DQ‘FE0Ža2q¯U7ã¨eE* reìÙ³fÍ›6lÙ³f)¨çþ’GúJÒÿúZô6lÙ³fÍ›6lÙ³fÍ›6lØØØØØØØØØØØØØØØØØÙ"dL‰‘2&EDq"&EÛ§Þ—É÷Ëê*ëöA UP¥ c#8âïìG$å˵ÐR(T‰D¸»Mš S§xFÑüõUU5 7*uG&‚e]EÆñ[*A’ D2ÈeÀC "„PŠ!#F5ù±Í†E¾lç*D0+tçO6Šw’¸],õUO2¦^ÕÒ•L‚¢?eŽ®ã ¢¦²dñÄ8ˆ¢"ŒŠ2(ÈæÍ&O,v†IQcÇ-V [6lÙ³fÍ›6lÙ³f-ú ߥ‚ sJÒÿúYÿÍ›6lÙ³fÍ›6lÙ³fÍ›"dL‰‘2&DÈ¢#ˆŽ"8‰±öã.:»ò†UŒc¶ÌKü¾§?àpödDå߈_Úw+¥²ËEø¡Æg⇟Šf~(q™KÈÜ{]Sôë…ŠÕEpºVä·zi:%@B»LB¦Í0¬!Ý"ùîMåüOŒ(ù™sNO&›D¹$ˆ%Ë!€†@(E¡"„HÑ£Fï¯ÉoD u[¤¶ÊC,Pš,õ^P?ü’l5ZŠ$O€®’f4³$Ám‘DEdQ‘FE0Ža2qئGaÀd¨eÊ3fÍ›6lÙ³fÍ›6lÅ@ÒŠŸÿäÒ°¿þ–CÿófÍ›6lÙ³fÍ›6lÙ³ccccccccccccccccccdL‰‘2&EDQÄG22'·c±Ýò[¿q†?Ÿÿæu[YYöZìȉ‡K4s3/욪ªjk×9ñ€¼ueÄöÊ›—YöÉU·.±ó™µ·Ž©¹~çSxç¾_¾S~(rarº\ïU¦™âÏzlôHôOD³åy†=Mø“ɇñÍ…7VÜ¥OMmë"ë*ŠÛÖ2Š›©ŽŸMmÎð{ÍoÑ9 õ¦ÑHÒ“,‚Ñ2lß7ŽXfåWOªª¦¡¦å©â˜Dª+*eH%É ”C,†Y 0À(E¡"„HÑ£FüÈæ¨\‹tsœ¹*zþŒúI¾PÁ§¨—2Ò¦ÂUKÚ¾Qúò+äºZ¨¢"ŒŠ2)„sæ“g–‹-Æÿ6ÃŽÛìRÓ6lÙ³fÍ›6lÙ³f)þß'ù¯ÿ“JÂÿúY/ÿÍ›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÈ™"dQDEDqÄLŒŽ-”´µ5Õ< ÃôÜgþoU5tÊzìȉ‡Iß×ûªªš†šñÏ|Ac©½u—ŒÈ/\òUÆ]ëœùrþUUT×TûšKÅ‹V™¥ŽõIÆwZkEòÉS|×1_'yÑIÒ‘=§ÌRᛄZ®ªE %U}FAy¦•¢TDDèü¢³Úgd—‰R¥É—óY¿?qÆ UÉÇšr|é4š%Ó’äJ!”C,†Y €P B(E âhÑ£F~\s – §ª©)¨eÈ…C ×H„Žã:!ÔÏÝ-dïYÄEÒªñ"[©¬™Pì'Es Ÿåþ´U ª–b* Ú¼Rú²²JH­WY•‘.¦á:Ý‹J‚9~áQ !D(…¢Bˆò<#Èò<#Èò6y6b?í’¡4¬/ 9rßþ=›6lÙ³fÍ›6lÙ³fÍ›Cˆq!Ä8‡âCˆŠ"(ˆ¢"ˆŠ2(Èã#˜G3· ôÅSí?!Α/Å¥Ù‘NøIõªªªjlש~1Äåf½VòI*åt¹Þ«#ÄPŠB(E¡"„Pž'‰âxž'‰âxž'‰âxž'‰âxžàxàx¦zc–9C’E Å3Üß1ž­jàäl'9ùN\½ÇoÇíòu < µDn*"R ã›/Ù¶_™È²l¶òRù\H¤H— —$‚Q²d0À(¡"„P‰4hÑ£F¿-ÌŠ8©­Ú‰C ¸fV‘zóLhl·Ê~QL** • mÊ9¦ÇF1qöÚb[°ÍÑ>á/ùrݲ͢´O¬t²¤Rˆ2ˆbBˆQ !D(…¢<#fÍ›6lÙ³fÌCý®Oô&•…ßü°?ðlÙ³fÍ›6lÙ³fÍ›6llllllllllllllq"(ˆ¢"ˆŠ"(ˆ¢#ŒŽ28É“ jjšêžéÊf-Sò9ì ñvdD㇭?bñÖ2ÜçÁh³±Ì¯ó|ÞgäèPŠB(E¡"„PŠBxž'‰âxž'‰âxž'‰âxž'‰âxž'‰àxžàxàzg¦9c”E$’ê(ê0þ¢9ƒê;rˆþG“ëæÜ3:9ÊL$(dؼ¦Yí±ßo¿3ʽBãve”ò ÞU9.I¢ d2È`!€†B(E¡"F„4k¶¿*dØ%C*EMYOI.L1ÔÁà™9© rò&E¢žCžÜjjî’å9õ3'Äâ"ˆŠ"(Î>¯mInd6éÎ]lDäVÁü¹.ž±¥Í ˜C d1Š!D(…¢BˆQG‘äyFÍ›6l‘M>¥Ê³˜´ ŸèM+ ¿ùdÛ%M¥nª”lÙ³fÍ›6lÙ³fÍ›6lllllllllq!Ä8‡âCˆŠ"(ˆâ"ŒŽ29„s m²çz­à^¦ãªo’½]â¿d‹³"'wðÿêÜ‹ÌGKÍz­ä’UUUMuOäèPŠB(E¡"„PŠB(E â(OÄñ[—9×ãŠ|‹"Èók¼ªr\‚ DˆeË!€†¡"„Pš4hÑ£F¿.dér”ºiõdäÒËÜéÎM „†\0öl¨›¢¢y.FÝ]Æ 0Ϭ™5¸ˆ¢"ŒŠ2(ȦÌ%ÖEM>ÍSú}nE–g ¦å{¦ÓÌãLC–x÷1Áò®<¸ËœA0†a d1Š1F(…¢BˆQ #Èò<#Èò(¿GÚÏý)'Í”¡­z™XWÔ̈½’™j˜Ñtpû~Í›6lÙ³fÍ›6y Ž!Ä8‡âCˆq!Ä8‡DQDEdQ‘Ì&L#gpî]ÊU¸bAÿ€ÊB.̈±Ú~ßÈ~§ò–Ç4ÙÿSüƒ—þf…‘£F4hÑ£ÄñÑÆTþnŒŒãšzŠ®EúŽ[œâ8-&õW’d*ªªkª-!!!!!!!!!!!!!!!!!!!!!#F4hÑ£F™ó\jžkŸIQA áNÑMÁLÃÔ=CÔ<Ê:é´U8íâUÞßíQ‹•O§Þæëê¼Ï3Ìó<Ï3Ìó<Ï3Ìó<Ï1Æ8Çãc˜9ƒ˜9ƒ˜E0ŠiÒ9ÄsË}Ò÷[‰ôƒ—Ýè¸óŠ0Î2¢ùΤ®4u<Œ»2"aÒÕ=<8GÒjª©¨i¹‹ªYµŸ ‘£F4hÑ£F4hÑ£F4xž'‰âxž'‰âxž'‰â8Gà€Š)dRÈ䘮]’`×Lsš,<†Zø)¥—õäq'=Ò}¡]ù¹ß#b|qmäÞnËùAÉ¥Ñ*A.I¢ d2ÈeÀ(`"„PŠ#F4kò⎛6¨¥¥Ò“K ±@%ݲ(É“”*¦ãäM©q¨ãlŠ"(È£"ŒŽaÂ9¤Éå%5Êñ[Æý(¨&RÒÓPÓ{ù cX5-’dºšŠï)ÒèÿI0«ÿ-Κ(ÉuQ²T¹“â¹ãÐÜóZzy’;æÜi†r>]ÒÆ[l›[Op´VA<†q ÑLÁLÃÌó<Ï3oþÃr‘Ñ0«Fitözo3Ìó<Ï3Ìó<Ï3Ìó<Ï3ÌqŽ1Æ8ÇãcŒs0ŠaÒ)¤sË?å÷<'£û½\ÌKÄpZ/žç_ŕّž()(ø¯é¾Šñí£–9Ó*åŸÏHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHÑ£F4hÑ£F4hÑ£F4xš4hñštܧÍðR ‚œ)¢šz‚˜z‡¨KŸ¸ñ äÛBþ“KµB“öéÊãæyžg™æyžg™æyžg™æ8Çãc˜9ƒ˜9ƒ˜E4Šiâ:ƒãœ÷ /£Ú:y¶{ ¦ú{ÿ°WfDL8á'Ñù‹œ±þ1¶f¹®AŸäž‘£F4hÑ£F4hÑ£F4hÑ£ÄñGæ<Ó”'H¥Ñ*A.I¢ d2ÈeÀ(¡"„P‰4hÑ£]ôk߉¨TUT¶ç©R!( wlŠ29…uËÓsj"Š8£"ˆŠ2(È£#˜G0Ži6yIMr¼Vñ_Kr(&RÒÓPÓ{ù×$c¸6kÈY.QEnŽtPz4f=çö•½¨ªQWþ[¿ù*'øSQÐ×]fZìÔ¶¹}¸²Ñ.ŽÉù9?N¼]’Lɺ]ä;<Ï^(5œ)š)¢šz‡dg^%?(j—$^½’“Ô<Ï3Ìó=CÌõPõPõPõ0s0s0sG4Šiâ:‚Õj¾dU8·IÜz™ŠôÕżϡÕVÖÝ.‹³"&œOQKÄÿFæÎ¥i°êšªªšêŸÏHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHÑ£BF4hÑ£F4hÑ£F4hñ4xž'‰âxž#„pŽÂ8GPK#–M’b¹e~!Y'#µdxëÊŽ®¢}#üŠªªjnGê³ÆeLëÞ¶U1.A’ DÈeÀC „PŠB$hÑ£F~\êˆe5M>¶*j8e(`&»lqL'TÃ-UÜâšE"ˆŠ2(È£"˜G0Ži2q6£Gðv]ÊãœOŽ-¾üùò)dg=@ÕN™áQWQOo—*Túµ"–M2Ç$ÅíV¿õˆÊ¿òÞæ)rhñ˜ëgJ“*D¾Öê ‹¥u$º /ÊÊ®•¹ëž±ë±ë±ë±ë±ë°çxç‘T"*¤YxË’²I˜ÿJœ¡w1îðê#áþ1Å~“Éõô–î;“ŽÌŒ›ôZªªjnz窞E©ù„„„„„$$$!!! BB4hÑ¡#F4hÑ£F4hÑ£F4hÑ£F'ˆáwqVÆ´~üùòi¤æýAà sæVÜêéíª\Ã>µI§•OÙ_Ê’|1ÒÚa[&ü75³kø»#¥?󃋲:£Â,ØëüÎ¥kêé8òve?§ÀTõùcµÞÅdÈ)®<Ä7JÜ·§üc6­©èö¶ oá7“Ó×4—~åË7áï$Ÿ‡œ’^1¬³¦öØKF5–dT߇œ’><ä¢ÝÁÅv¢¦éÇš**_Hüœ>ce7Hüg"¦ÑÀ¼Cc©³Ølxõ7Ó9ãáL¿ŒŒÄh).ÙÐꪩ¨i¹Ï¨šœò_Ȥ!B„!B„!BBB„„„„„„„„„4$hÑ£F4hÑ£F4hÑ£F4hÑ£G‰âxŽÂ8Gá#„Š( #–L”I›Uoªà¾X É­ýù•pî5£Î¹#3äÚé4º%S’äJ ”C,†Y 0 B(E¡"F4h×åG0(§Îªt¶è ”(EfÆÈ£#šUÜeÉ*j"ˆŠ"(È£#˜G0Ži2q6yIOr¼Vñ_K’h&RÒÓPÓ{ùÏ#ã˜%6mÈ9' TÒ[¦M †ž‰É Ž8û8‡ ^S-Ðx«ZÿÂMekÿ ¥M›–ü‡Tõõrè¡hšJŸJ—¥Ê ¹™—öSŸð9P)p dgZ~Úäÿ¡UUSPÓs×=Tò-OÈ¡B„!B„!B„!B„„„$$$$$$hHHÑ£F4hÑ£F4hÑ£F4hÑ£F¨dÐÌ©q»Öʦ%È%É ”A,†Y ²`„PŠB$hÑ£Fv×äÏ«Râ‚ß>{‘M µ „×fÈ¢#˜N©†Stõ£dQFEdsæÍ&N'Tèã˹@ãî*ÃxÒß­®¢¶Òç¼üâ~E]E=¶\¨!SêÔŠiTèlqFG4·?Z®ŠhW;&²º/ðñ슊œ÷ä:žŸQqzÆ•,Z…t§AWöU“'ÅJ»2"3§k]EÔþƒUUMCMÏ\õSȵ?$„!B„!B„!B„!B„$!!!!!#BBF4hÑ£F4hÑ£F4hÑ£F4hÑ£ÄpŽÂ8Gá"„Š( #€™(N},þBä ç?$R$J§%É ”A(†Y ²`„PŠB(D4hÑ®Ú5Û[=ŒöYäIÂÉ“ •êk5¹Á(PŠÍŽ"(É“J«„ŠŠ‰“œQ‘FEdSæÍ&N&Ï-vû¶Ivâ¾—ív¨?#:åk—–çFyUEk™4NE3“Aqé$8ˆ¢#˜L£Ãò,Χ%Ãhp»¥,"GùÙ9•ñƒ‡¨Üë÷ÈsÔú‰Üª»2«ü“šíumý‡Õ mlì¹vdDÃ¥ºzˆ³¯ ].TV[g1uroÉ¡!!B„!B„„!B„„„„„„„„„„„„„„ 4hÑ£F4hÑ£F4hÑ£F4xšÎ¢—ölßR\„ˆeŠî"(Èæ•J†¦é:yäÒŠ2(ȦL#šG4™8™PO«ÑÇ0äùÌŽq>8¶û÷üŠÉ‹Ûò®~ȯ*]%UÂ¥QÑÐÃšŠ¥"–U:dS “‹} ÖûYpUªD™2dÓI¿Vý±•Úà^­ó“*".S5/ˆ-ÞÍŒü†Y]IuË—fNþsf³‰­tö~5þÃêçU_Éë³"&'ÓÔC'çꪩ¨i¹ëžªy§äЄ!B„!B„!B„!B„!B vÑ£F4hÑ£F4hÑ£F4hÑ£F4448Gá#„Š(H¡#€Žd²t’Šr˜á–C,† "„PŠ#F4kÞ½U¸§Zéý9R¡ „†!"¢™TCé8]›DQ“'h«¹( ³#QFEdSæÍ&N&Ôæ;‘æ×n#àœwŽ)ÿ#9ŽÁ‡Ãz»Ýò›¥%¥B ›e5 ¹=¶8ˆ£#˜MŸ£ âËî]7‹Y1J/»EcÆ­²ü`¦ÿÇG. Q²¦"ñ7ÆN%jûüûÍÒžÇh”…Ù‘x¹óŸò³Zéìvì>RºU]ù)vdDÃ¥¯‡ÿ?ÔŸ9Qeÿ(„!B„!B„!B„!B„!B„! ¾4hÑ£F4hÑ£F4hÑ£F4hÑ£F††‡á#„p‘BE $pÀL–N’PÔJ¬— €P B(E¡4hѯȊ% ¡ÕÕH–K„‚%Þ¦OšDQ‘Í**à”ªngŽ"(È£"ŒŠaÂ9¤É¤Ùäú¤Ž7é³/Ìgb¸Ž9„Ú}ûÍòÑPgœåzÈ-sc—.–Ý 4“êÜà— Éò¤“n¤Û…Ld«…D3&M(é«®õø? ÑQCß™®‹Â‚NÊH<§b*£,´me!Ë×_±¸ÒX»3pÅ3 ¤»eÿØ—»´Wì‰vdDÓ€~|÷RüåE*‹å„!B„!B„!B„!B„!B„!{‰vÑ®Ú4hÑ£F4hÑ£F4hÑ£F4hhhhhpŽÂ8H¡"„Š8à&Ë%LŽŠ¦Ž|šÙ*B(E¡4hÑ£F¿&ó9É¡²Sj 2ÉpÂ%îÕÃéLŠa2vŠ»š€›šâˆŠ2(Èã#˜G0Ži2q6 Ä0ܧnüUÓÖ1AùƒÍV\J;Ýÿ"˪é- à äRÑA W&I:¶tÑ¢-"lÍ’ôaœmÍŒc°â~æQu™dðHöZ[l¿ðÄÉÑ“?—PO¸fŸ!Ô΢ƒŽ fA”<OOUËØw‹¤‹%¢L^Bìȉ§ÓÓÒñßÎõΆT_(„!B„!B„!B„!B„!B„!_™£F4hÑ£F4hÑ£F4hÐÐÐÐÐÐá#„Š(H¡"„ŽdÙe¾º;UD1¡"„Ñ£Fü«¼n¢²ŽB—¨!5îÜaò§¨«‚RŸ]AdQ‘FEÂ9„sI“‰³ÉõIaÓFE—î3âVß~ÿ‘Y1{~yÍ7ܺ+tSô¶èU5MlN*z8&TNœ)dJ"8ôNž‘e°Ý¯ÕØwP[f{¼zû6ËGI*ç娕•.6TF\'j#²Ì·Ø>Cªzú¸(¡6¡C7—Òõ=DY×ö'×Ò[¸îLJ8{2"iOOOGOóœ³É¶Ž/Åo—˾KwùD!B„!B„!B„!B„!B„!B¿3F4hÑ£F4hÑ£F4hÐÐÐÐÐÐÐÐá"„Š(Há#€™:QÝ¡ ˜¡4hÑ£F¿.ß¶Ü)åà>æÍ›&¥2\s#Š(¢"ŒŠ2(ÈæÌ&M&N'T^ –òEÏz}°?#9ç[?æñ{Êî4–‡¨f¸ˆ)éè”us§Èþ~”DØbLœ’9·€q ï*‹Ŭ˜¥½ºýâ¿Ãÿ†U¾OœÆMˆª˜:Z»ÍÂ’–E /Èu;>¢,âd~œ$ß7.3¥[]D«OöP5ô”œ_&%2XÆFb4—lÇç/—ËF5häþOÈ9K ùD!B„!B„!B„!B„!B„!BuùÚí£F4hÑ£F4hÑ£F††††††‡á"„Š(Há#€™>VÌfóQ£Fü¶WÍô¨ì”ž4™D0÷Ù±Ä8#ȯPJ¬Š2(ȦÌ#šLœNžO«HâΘ¯7Ù–;§´ûù6YaÄ-ùç0d9”tVØæ¸%R[FmAíÊ WR!CiÌ+*’,ö{ÖSpÁxJÓaüŽG¿ÇAAI'ÅU¶â‘+Ñ•'ÆVÎÒâ4Uw?‘æzêK—)"kÿ&Ââ†aÓ}§ìî3þÃêŠãG#$†DFp¥%Ï•¾s©>bûõ{ùT!B„!B„!B„!B„!B„!B…ò:4hÑ£F4hÑ£F4hhhhhhhhhŠ(H¡"„Ž8 °(ä̱Ý`»QèѯÌedª¦ŽF”k¶ÇãcŒqŽ3Ì™6(¢ŠaÂ9¤É¤ÉÄêƒã\Ï“+¸×‚p®6™ù‹Í´½EÊáxÈ«é-*êÅ1Kô¤8iæNpÊ‚ÄEÒª¾ ‡¯yt6+Ÿ ÷î×:[5¾mM]Þ¾ ¨(eE26ɱ•3 Ÿ^²¢Ág‘Ù¾G#¹È¾dȉÀë™3Á¹§Úéìüký‡ÕUM+ž»2"3¦Ë]=Ó>o¨îM´a¸GË!B„!B„!B„!B„!B„!B„!{ëóuÛF4hÑ£F444444444Dˆ‘"„Ž8Ie–êé–‹…5DйüÆÆË=4U2娉!ÌDSG8sG4sG4õ íj¦¶Ç0ŽaÒdâlò}ZGtÑ‘eÆ;Œãø•·ß¿d6lbÝžóEó-T¸æŠKi©“¢‚DÙ°Á"\±²(Èæ'°WÞnyÃÖ¬vÈ›6\‰yvHò‹<­TSæÃ 0CDù…lý.$±û}Óär¯Ø6 B%Dâ¬dOùÎþ–ê KM¿û©zšYÜ„»2"aÒ®žuçæ²|ŠÙ‰cùþowä,«åP„!B„!B„!B„!B„!B„!B¾W]´hÑ£F4hÑ£F††††††††ˆ‘"„Š8Há&@N–bWwKSùMl¤“On§Žá,о*Ô:´:£ÚOh=sÖ"¨†{ºû}DsI“I“ÉÕ&‚弑sâžž±ŒÈäk³b±Þn÷¼ªãGhþQÔ짤{—M._gdsIõPÀ°®-ÈsHñœNňÛÿ':Ìà)¤x‰xÃ"O¥L›S;B‘Ux¸Ùlôv _Èóe}]»‹ Gê1‘œu"¢«ÿ±9¾¢’«•×fDL:VµÓÊÆ>kž¹‚§“2O–B„!B„!B„!B„!B„!B„!Beî¯Ë×mï®ú4hÑ£F"„Š(H¡#„Ždù)˜­úeÊccccg›„œ¡§.:LŠW¦¡Ž®íUZ‚®s=²dd5µJ׊‰%eⲪç'“jJY7+Åoô­M«ŽÓZ}üã‘qì—(å\×.™ChŠhÕ†MUa&ŽT¥ýÈ£#šL¨Ñãùc]ŒpÎ'd•ùYn}SUQII \½ “#'Î.ž ŽpèlT%ÔíÞ \>8Ô©vø=:&Ftñl¨¸r—ö&Y_EvÌ×fDM:w ¤£â¿™ê¯“eãøßË¡B„!B„!B„!B„!B„!B„!_7£F4hÑ¡¡¡¡¡¡¡¡¢$Dˆ‘$p‘ÂL„›&|ûu] l‹'¸ÆÆÆÆÆÆÇâDQFEdQ‘Ì#˜LšLœMžNªÑÇ\%œrt}ÅXoÑûóçÈ¥‘žsäQ?J¦ºªžÛ&–2}YOo‚Q¥Øâ"˜G4s#7áZ»œ4T4VÚoÉ©©¦£“”ç5wÇOL¡%ËЗhã'M+*|Wâs¯W?“ê–çO:ó _§E.*[#:VµÓνaÜ+é-T\-®Ìˆšqe%·Ž>c9Ëh°\G'È®ynAòÈB„!B„!B„!B„!B„!B„!B„/”×}w×m4hÐÐÐÐÐÐÐÐÐÑ"DH‰BG $È ÒÌVéºáÝŽ!ÄEDQFEdsæÍ&M&Î&Ôº ®Gv⾘-v¸?#8åk—–fùFyUCiŽi ÊzBUɱA.i±ÄEÂlýÖ'‘fuX_ãØl?•f6|~ Õêé“VI§Ñ½ #Œ4ª¨ÒÆl…îßo¢µQ|ŸSŸ!+àŠd±“–ééá°ùZç"ÑÇbQÃÙ‘Ku%¦ßóRrl¼·*ùt!B„!B„!B„!B„!B„!B„!B÷WçëòôhÑ¡¡¡¡¡¡¡¡¡¢$Dˆ‘#Dp“!&ÀTJÚÆnßiP1±±±±±±Ä8ˆ¢"ˆŠ2(È£"ŒŽaÂ9¤ÉÄÙåERGð†_Ê Ç8Ÿ[}úÚê+m6yÏU7ŠšÚ™ôò«ÊzI4èlqL&NÐæL7àÙÕ*ІŠÛMù7¼šÍÁzäKÕÔ‚š(æJ‘¢z"Œ›4©¨ÑGCrÈîV+»·|§SØ×´Y ˆÙ²&Mˆã|naB„!B„!B„!B„!B„!B„!B¼¿?^ö¿#F††††††††ˆ‘"DH‰ÂG 2l¾¾e¢¾̱±±±±Ä8ˆ¢"ˆŠ2(È£"˜G0Ži2i2q6 ¥‘q¼Vð÷MR,s#8ä\{¥Í³»ç!VÑÚœPÁ6 e=¹o³ˆŠ29¤Ùæ%…_óz¬/ìXU?äU×PÛåÜyJÇN®¹ÎMxPÒÅ2dºtˆ% Í‘ÆMœTT袢¹dw,S·bvPR]h9O‹®|msS29‡ðÍÎUÓûªK¬™ºìȈΠ¤¹ò·ÌsVøÈ?0„!B„!B„!B„!B„!B„!B»!vBúÐÐÐÐÐÐÐÑ"DH‰¢8I“!'Ë1œse¶668‡DQFEdSæÍ#šLœMžOªÑÇ7šr„î>â¬;hýùóäRÈÏ9ïÈRjkªeH‘G õ7¤ÓË‘Øâ"˜LœyÍŸ; á‹Ò;e²‚ÍAÚézµY$Ôò–;"wâÅ„\­adþXJ|îOÈ£ŸQ“eÕÒý‰Ì™Dè†P 5ÙÄG0›8©«P–%Ë/¹â˜¥»·|½E==]>IÓ–{ŸOÒœ¨j0þÀpÊì^¨®¾®@»2"aÓ=<þEù~«yîæ#ó(B„!B„!B„!B„!B„!B…ÙB„/q|¶¿! hhhhhhh‰"$Dˆ‘#„™ 6TÏc¬S!ŽâDQFEdQ‘Ì#˜G4™8™¯GpŽ_Ê Ç8Ÿ[}úÚê+m6{ÎõëÒŸS>M42á“O>©È¦•N†È¢"˜LœyÍŸ; áZ›Œ4tTvên÷»¬›%ªŽ•3½4zg¦zg¦x&»lqaÒdòuRDêÈæÌÄ8®®g÷(ÜçÝùvdDÃ¥¯‡ÿ-ÕÞö}“æP„!B„!B„!B„!B„!B„!B…Ù ²ì»/ 1ŒcÐÐÑ"DH‰"4F‰“¡%ÔN ©†|eÅdQ‘FG0ŽaÒdâdòuIf³ßò»—ôµh±ÎüŒç”q¼^WšdÙå]-QJ—.)ÿæ’KdQFG4›Q£¯ù½N€X°ºw“ë&Sc”;ôá™] õ«ÍÜX¡¸5Q³gæM"œGPMªH¨¸Ã bÂrlœÆðË,¿¹*ëªî•˳"&œOQKÄÿ+t¹QYm™Î[[eß2„!B„!B„!B„!B„!B„!]Є.˺ùmüÆ1Œc"DH‰"4F‰ˆ› >ª~”Q‘FG0ŽaÒ9¤ÉÄê‚}ZGpWÈ“0¬ ãûO¿s¹ÐY¨3Îu¹]c¦¡Û—C*™J•>®ò©á"ŒŽa2qêMŸ7 á¦dɦ“ïg”ߊÛj‡Õ=CÔ=CÕÑÎ"žEPGTM­H¨ºA hã̲ù9Ç8ö>ÿ¹sú»V#ô]™4Ã(*í8ÊõwŸýŸdù¤!B„!B„!B„!B„!B„!Bt!w]—uô1ŒcÐÑ"DH‰"4F‰“a<⦟ëCÌ#˜G4™8›ª( †\#dQ‘Ì&OÑI"ºï_ÇœMEb•ùseJŸ*ûÅtÕSÿ òãð¯.eå7äó'ÁÃQú´üC‹É¨ Ãñ{l?Ý}O×RA‰ÃÙŒŒâ+OÛ\Ÿò½Væ³q¾>ù´!B„!B„!B„!B„!B„!vB»!B…Ù è,cÆ1Œˆˆ‰"$FˆÑ1:6äÍ™8›WŸsYYÏ'|Ú„!B„!B„!B„!B„!B»!]„.èB¾SF¿1ŒcÆ1Œˆˆˆ‰"4F‰ˆ› Q:o¦TV¨N-é’ó}™c±Úq«O¿“e–Fß›óI—6ȦI¥·Ã 4úǸ%B6EÂdýWKåfÃË?ìS?óåÙ‘”h)&\~S3yx'üâ„!B„!B„!B„!B„!B„!]„!vB…ùKæÆ1Œc"#Dh:“¯Êo[Àø§¿ÈÎùÊÓbw+…ã#¯¤´¨R›Òš‚\žÛ"ˆŠa2q>©B°î)È2£Ŭ˜¥ìP79õüšˆFDL:]·{> ò^æòîy'Î!B„!B„!B„!B„!B„!B„.èB»! ò—Ì1ŒcÆ1‘¢4F‰ˆ›æO¥Ÿ‡äÔ™Ž3ïeY–?†Pç|µæ‘QZã˜C.–ÜAI>©Á2á"ŒŽi6~‹e¾í‘Ü0nµcqþÂòùõ9ú)µè²"iÁôvÞ+ùLÇ$©Ì2¯œB„!B„!B„!B„!B„!B„!wBuÝvBúÆ1Œc"""""#Dh˜‰¨Ÿ Ó[뻟s¥µUι_®T¶¨%AêMžSQK‘ÛcˆŠa2q>®#Ä9K2ÅY±šØZЉ’%ÿIѹR%AéIdDÓµÔXñ“æì»îWüê„!B„!B„!B„!B„!B„!wB„!]×ИÆ1ŒcȈˆˆˆˆÈÑ&"t&”Öáyƒ9µ^{ß²{/MȵwÍåÐÚã˜C5.ŠmC†`["ŒŽi6~‹5’÷•\0n$³c ö“ëé-Üwô­ÔTìdeŽÕöþAò`æó*®ÿ:„!B„!B„!B„!B„!B„!B„.È]»/š”Æ1ŒcȈˆˆˆˆÈÑ&"j*aþX½âUþÃeÌoVy,Y-˜åÚóu¾Ö÷ ™Û`¤ŠHØâ#˜LœN©HÂøÂÿ˜Gb–,J‡ö#¨«¯Ùüm T Žk"#8N‚’çÊß)ÊÙ\¼Û‘~uB„!B„!B„!B„!B„!B„! ²„.˲úÆ1Œc&"b'Âq}t-H«™%æÕPϸwµW{÷dsIµ »E’E‡pÍ’ÍìWTw:‰V¨Hœ1ÜY0é‚ßí9ïÉõ•ËÅ8Ÿç„!B„!B„!B„!B„!B„!]„.È]—uô61ŒcÆ2""""2222b'"Áp—hȪ,µrÌÆ–e5ËÜ·TùÑL¢)Ó'MÂxZªç  º›ò.yF?fŠãÊëÂåe7)ðÞsI†?ÊWk}U-]-tï®RçêŒ*ýüQgçñEŸ™¯"Üy ý LÜU¬ˆ˜t¥k¨•hù>²r¹Ž§ç„!B„!B„!B„!B„!B„!B„! ²÷ÐØÆ1ŒcȈˆˆˆˆÈÈɈšŠ˜––˾cùÕ’+ݣܢ™éS[m— äÌ~Ó7©“Èye<˜¹Vz)X‘GÉxÕIøƒˆ•œ“‹ÓK\©bd|­©SÈymTºëòìCK*Y] -öÿh˜©"©*¬tÞ8úv5uþúêo—A–¹Q.Õ3àu”×9ò`£¹Ë”•ÊŽ"*ªb}m,0ñ77Öqå«çÎ6È£§¨§«§ùxÉ*r~Xùä!B„!B„!B„!B„!B„!B„!B„.ËèLcÆ1Œc""""""##&Q=SQWUo§®©£‹&²KQö‚¦Gaãøâ‚W&[—Ü´xIˆŠ\ƒÓ§=:sÑ”)RØ¥„b¦!“ %ÎBNßãéÊ‘ ‰U(»ËQK³VM¸Yÿ¾z’±ý£€#I“¬´S¢›ŽÎC·]dC6*©CžFüŠ(!‚ù.Áj0ü‹ïf3ùùŽIM‡â¿>„!B„!B„!B„!B„!B„!B„!]»¯¢±ŒcÆ2"""""222b'#‹kýƒ2ST“-2¢.¸t$¼>\3±Ûn=i]´hñô`=Àñ<{Ý÷ãMqMs ™…ÖjðÅ_–1ýóÚ¾Þ°M‘>’r÷2L™¤Ê(ájÿ#…¸áòOòZd_dñÏ¡B„!B„!B„!B„!B„!B„!B».ëèŒcÆ1ŒdDDDDDdddÂj)ê¾Î¸I¸(‰u„G«Èb£ ˜äøIƒÌó<›6lÙ³gãcŽRÁGNÝJ*êÑl·MÊ/¿ß|׎ǎrBîÆ1‘2Ãc¸d÷Ì+¶`øçÈu—zõòoŸB„!B„!B„!B„!B„!B„!B„! ²ì¾W}÷ùŒcÆ1ŒˆˆdDDDdddÂj*òÀp <·Ž.ØŽ]ŽÁOu‚"]rdd5B©ó×=cÕ=SÕ=SÕÑÎò)äU(öÿ+¬·ZïÙ<Ü_ Å¨?¾ú¤°ÿ5Ýöcdlé×¾íÙ>Gœï_oòçÏ¡B„!B„!B„!B„!B„!B„!B„.ëè¬cÆ1‘ dDDDDddÂj'£¥[¥<Ìd¾a¸æC ӆ₞šYbûJ)3`¹BÈkájb=­Ö{QíHuHuhбW"eÆSÌ®¹M·ñvgp›dâ<~Ý-%- ïÎi±ý»Æ÷c""gñ¤yÎIò7K•–ÙUUS]SóèB„!B„!B„!B„!B„!B„!B„!]—Ñf1ŒcÆ2""""22a1‘Ó5Þ !û•T”•ò+øÓ ¯Š³†-ŽUgäR¦Öq¾uG5`YñöVT}••dåE6VÓÑñ®uY6“‡r)³høZÖ¥QñÞC6T©Tò¿`2KF1®ÌdLƱ˞_Åñ»f!`ù{¼TØøƒèB„!B„!B„!B„!B„!B„!B„! ºùm›7ù¬cÆ1Œc0œqmÒ¢ÍÉŸ²}GÙ>ÍäÙ‘2dGñ¤xe‡äºÇ¹QJÁ¾€„!B„!B„!B„!B„!B„!B„!]×uò»÷7ùŒcÆ1ŒdDDDDDDddÂhçÔRO·\(îöÿÙ.¥ì^߆CÙ‘ÄpWÔe—O“ë&ñS;/ú „!B„!B„!B„!B„!B„!B„! Ü_+¿s˜Æ1ŒcÆ2"""""22a4¨G Ýj/Yû%ھݰL‘>–{"ga5|…–[¨)-6ÿ“ênª¦£™þ‚„!B„!B„!B„!B„!B„!B„!Buò»ù1ŒcÆ1‘‘“ ¤ó¥ºŠ‰Üwû'Ì–O°¹*"Sê§ðÿKãÜSå9ªš»¾‚„!B„!B„!B„!B„!B„!B„!^êù]ü‹Æ1Œc0œt™QOgìŸT6/ñLz:nãŸ'ò•UTÔ4ßBB„!B„!B„!B„!B„!B„!B„!{‹å·ß˜Æ1ŒcÆ2"""""222a8émûöO™ìŸnñ·ñý_"dÔôôôtÿ)Ê þ„„!B„!B„!B„!B„!B„!B„! ²÷ËlÙ³šÆ1ŒcÆ2""""222a4àEÿîÙN)ãŸÃ›7Êõ+ðSèhB„!B„!B„!B„!B„!B„!B½Õó›ü¦1ŒcÆ1‘‘‘“N:¨¨¥äoÚ®¬¯6Î'ú„!B„!B„!B„!B„!B„!B½õò›ù61ŒcÆ2"""""22a4³]þïdµ]aü3ú„!B„!B„!B„!B„!B„!B»/u|–ûïÝßæ±ŒcÆ1‘‘“ ¥WôýªëFª¦o¡¡B„!B„!B„!B„!B„!B„! ß_'¾û6lßç1ŒcÆ1‘‘“ ¥OôãúšŠÌ ö§­?¢¡B„!B„!B„!B„!B„!B„/b6lßm›6lÙ³fÍ›6lÙ³fÍ›6lÙ¾Û6lÙ³fûìcÆ1Œc0šTN6øwûSÖU4U?DB„!B„!B„!B„!B„!B„!_¾[fÍ›üæ1ŒcÆ2"""""222iQý8ßáßíOX>ˆ„!B„!B„!B„!B„!B„!Buï/‘ß}÷Ù¾Ûüæ1ŒcÆDDDDDFFL&Oõ5|CûSÖÄÏ¢¡B„!B„!B„!B„!B„!B¿%~~ûï¶ûlÙ³fÍößälØÆ1ŒcÆDDDDDDFL&“ÎþþÔõ‡ñ3è¨B„!B„!B„!B„!B„!B„! ß^þÍ÷Ù³}·ÛfÍ›í³fÍ›6lßm›7ï1ŒcÆ1‘‘‘“ çNßjzɳÔÉËþŠ„!B„!B„!B„!B„!B„.È_”½íû»ï³fÍ›6lßm›7ÛfÍ›7ß}¶o³ccÆ1ŒdDDDDDdddÂyÃÖšk/þÔõ§ôt!B„!B„!B„!B„!B„.èBüÝ÷ßm›6lÙ³fÍ›6lÙ³fûlÙ³fÍ›6lÙ³ccØÆ1ŒˆˆˆˆˆˆŒŒšTkðçö§­?£¡B„!B„!B„!B„!B».èB»³}—¹³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍŒcc"""""###&•ùq§ÃÚž²ì¾¾3ôt!B„!B„!B„!B„!B„.˲ü­÷Ù³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccc""""dDDddÖT?åc´ScöOÚž°þýB„!B„!B„!B„!B„!vB¹³fÍöß}›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lllllllllll‰‘2&DDFÉŒšÊ—ü¿jº ¶ÑWpçÑЄ!B„!B„!B„!B»!vLLÙ³bbfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccccccdLl‰‘2&DÈÙ&³§¦­Ïj¹ªÏM|â¤!B„!B„!B„!B„! ²¸…ùí³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6llØØØØØØØØÙ"dL‰‘²6LdÖp¥¦š÷Ë_µYE—ï&3ô„!B„!B„!B„!B„.ÈBì…ß~æûlÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±±±±²&DÈ™#dÆMgL¶µ9cö¯(²ýÛɾ„!B„!B„!B„!B»!vBî»ìÙ¾Ûí³fÍ›6lÙ³fÍ›6lÙ³fÍ›6o¶Í›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÈ™"dL‰‘26LdÖt‹gõòÚ¾s²ýËŸHB„!B„!B„!B„! ²„/{fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±±±²&DÈ™#dl˜ÉÌéÓM+ý«êÊÏMl夡B„!B„!B„!]„! ÜßdlÙ³}¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6o¶Í›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÆÈ™"dL‘²c'3¦{uþÕõŸkúR„!B„!B„!B»!~ZfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ‘1²&DÈ™#dÆO‹ùqí’3ä_©ïÜß¹³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±²&DÈâ#ˆ‰íñ+ãïÛ~jÀ?øûêIößtÍöÙ³}¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÈ™DqÄtÁ€}ïäÛž§ðºƒõ=öÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"8»p®øqÇß·<Õ€~#ñ÷Ô÷ßfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"8ˆ™Ó÷¿núŸÀ>èrÕwÛfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³ccccccccdLŠ"(ˆâ)ijkªxWü8ãïÛ¼ç¢Î±¥¶¶Ësú¦Í›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"(»tÁ€}ïäÛÞ®øëêÛ6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›666666668ˆ¢"ˆlµÛkoW>-Á)¸çý½º[h¯VÎGÀ®|m—}WfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccccˆŠ"(†÷Û¤¾0›>·öÿ©>+û÷ˆý[fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±Ä8ˆ¢í€a~Bʬv;F5hýÀêOŠþâeßWÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍŽ!ÄEß~xš_b¿¸9þhä,W'Çnx–Aõ}›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6llllllq!¾ý5q4¼ó$ýÃꋊ~õcÿXÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccˆq ÷°¬ƒ?È1 RÑ„c¸Jñ4¼$úÎÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÆÆÆÇâ÷:uâi|}Šþâæ8Ý6aŠß,w|jïõ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³ccccˆq{½-qÚõ¿¸ýDð¬ÎF·URÔÐÔýkfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÏ#Èq!Ä8‡»Ã¼;{å+Ý®ÛEe¶~äu;ÂtÞÍõÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›Cˆß»€a~Bʱ RÑ„c¹]Ep¼Î>»ýwfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lØØâ7ïXìw|–ïÂüUMÅ8¯î]òÇhÉmÅÆ¼[—}{fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›7ù=ðm lýÍÍp¬?Çó\+ À2¯ìÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lßäôÅÂtÞÍûŸÉüaò–?|±Ýñ«¿öÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6oòº}áy|ŸwýÑæŽ´rµ¢ùc»ãWì=›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³™Âü/wåk½ŽÇhÆ­º\åöÎNÇê©jhj±¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›üîâ*ÞYÈ,v;F5hýÔ箦äZjªZšŸì½›6lÙ³fÍ›6lßÉq‡d¥aXV?€cÿºÜÁÀ¸ß&S_,w|jïýÏÂü/wåk½ŽÇhÆ­»áÃ4\©d¾XîøÕßû—‰ºuʹeŽÇhÆ­»\ŸÆÿ)cù®`÷ôãS_Sû»šáXþò¯ å\SSýÁKKS]SÁ½6}Эýß¾Xí-£œº{¹àÕ¿ÛØî1e·>à\oŒé¿x¹‹¥©U…U-M OöÞÇw$ÜøÃŒ1þ-Çÿy9ƒq¾L¦Íð «nÿÛ§ë8'N<•™Tà0qö RÒÓPÓÐ[•®Ùz¢ÍzRãì’nWÓW,bÒþ©Žã[sÀ:D½Ü +ˆøû•ÿBò¾<Â3yy¯G”U3rîäì+éöÛ]Îõ[ˆôµÉÙˆôµÆ8ámµÛ,´_ôC+ãÌ#7—–tuh¬©ÉzpåÌlª¥©¡©ú>)Ç™¾o3é 7ºËÄzZãp¶Úí–Z/ú-x°Øòl“¥Î'È*o_$Ód]?ræ6\­w;-oÏÙðÜ¿!¦ÆúQå+½N;ÑæBc¼?Æ8¯ý¹Zí—ª+Çqò¦åÑÆ 6ŠñѶ_&¦éÓo1Û –œÙh¾RÛk¹Þ«lü+ËÊ›/J|¹t,}TÅ.ÏÒoÛ*l|QƸܿúQx°ØòkÇ ñ=òš«¦N¨¦þ8Ìþ8Ìþ8Ì̬ôØö_ïô÷ÃØÏ,ÁçŸÁç–Þ’8®†¶—§>£©¥ãž=¡©ýäÿÄV !1AQa"2Rq‘±Ñ#3@BP`r¡Áð 0CSb’²ácp‚¢ñ“”ÂÒÓ$4sƒTtd³âÀÿÚ?ôÕJ²’­%ß7¥fâI®Šû¿t*¢Btû¡8Ã.à“Í«÷>ú­(èÀum$ÃNVãÌs®*Ê æ¦Ÿi0“ ¹˜þç&‚t^`í `BL&ô¤êýÍ¿ÃT+ä4’ᦌNÛ£÷8ëAÁ¡Cî0ãN'šifÚ˜JREÆ?¹ç…±¯i8Â/By:®ýÏLŽùë}Þí¤æ†8‡÷=48—Ý´˜–(µò×§i>èhÕ´øûâ­+U´mdï‡/§“#¾+XCi9¡Ž?¸xúÅR¡¥'ª0!O&†ü)÷ÿM¤ûâ_‚y|À±E ‘Ñ5Jy=;šò9ýÝ»B%³òy‚`QÕrõ€`c †¸žÍp××ý ã%¸_ÃÙÙæ ±¿åHöm`ïOÆ>Ì÷ÈAƒŒ—;ñÏæ ±Àþ!ÕM¡š%Î<ž½à•ÍÖ ÀÆá§—³Ì#½ƒ¡]¿–ÐÍ pº};rô/Õ>ËáP!®õ‡˜i\ÇÚ À†NørNÕÁ<†G˜*… )=Pq â=<^Òq„à9˜(`B!8AæMd¹,¥'8™¦BŠ^@C©ÞºÝQä¬fÏeV‘¥&'ö!4ÎþAÁ4ª]–Ÿ„Óƒ95mY’…c´ë SO6¶œO $¡C˜ÐòiôUιv“à§Õ^`xQji]p1„ûáú£«Æ%¶7”æØje”²[y6ÑiГMb—GöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvFƲLÞNbe!N:…&ÂÂî ¦mpRFhš’•Fç4Ão'íòu¡b‹lëB’o7ßû"Ó™9ëYûž`€yðr.¥\­æjNjIÍÊi‡^kczªbP±T8Ÿ´…):ý{†ç¬zö“î†ø äóÏ…W(ö¤@„ã ðŒdSäû¾€~#: Pè1C Å“ Å•h1eZ YVƒU Å•h1eZ YVƒM[Jê<¡Õ[T:æörA‘Ð!ü–—ÓaæZ}G›K‰Ìx+{3FQØS.ÚrJÜ«†ðÙ«’äòúÝN…))Á-C#å šê¥ÔÌò7ìšæ¶8›‚\Q̿Ѿm¤æ†||Á47ü©›BàsøÆÆ%-ä –ªp¥’˜Çpêø»ãàÇpjörGpêøº;‡ìü]ëâèî_Gpêøº;‡WÅß;‡WÅÑܾ.ŽáÕñtKJØ »: Kê+«âèUÍñt''WÉøº2¶PØö@Mr¼ó 8STK$¦œ¨³.Ð[€+¸´¡«\'+L»úETÖé/‘rkrä)Õ<Ú&gV”–j©IzФ¶¡9ÆK©ÂJ‰QÅD“p›ÍÂáÈ.ôAæÖ·e$á~lst G%#Ú}°™TŒVO ¶‘Aæ ±Á:°þ{IÍ pO7WŒl{gÉÙ'IM.hLKK†Ý–RÓh(›•[ÅñýâìWë'Ê+¶?¼]ŠýdïùEj×Þ.Å>²wü¢µkïbŸY;þM]±ýâìSëgÉ«V¸þñv)õ“¿åÛÞ.Å>²wüš»cûÆØ§ÖNÿ”V­qýãlSë'É«V¸þñ¶)õ³¿åÛÞ6Äþ¶wüš»c!e¼™²Ÿ{&”‰gÛ›³E£mI´( ¼S cT&^2ÖË69±ÛHŸJ¦’š÷ î™ÂnÞ©)!¶Eéî§XI*6AúRËYL9-’’2,š7FVW”Vš|Þô0½]%[mæÔ,÷K‰*´·êÔã‹[Ž(ÕKZŠÖ£¥JQ$žS鬨¹Ä:iÙ´3sCù<ÉúM¬›–5O1ÿ茹úCØÖDÝDÇëIÖîîYBW¡ÙËå‘d‚JëÍ›”Íc/~’6E–Ò¦y9*IU_'•¶ë‰9Ÿ›*Ý×½% KE†]MÎ2¨$’I$’jI¼’q$ç'ÓyŸ5(u¤Ä¾'“ßæF²„ó2®É370Ԥ­¿.Ó«m§ÕfÇ~JH ¦Êêšw§S \ÝchD¿ –½_¹ç¯i|D8À†8IýÏ9À_ª®¨8À†¸Iå¹ã䃌oñŸ÷>¡Cì ÀýÏ8(²>Òºàc„à9˜èij†˜W5};~çëmð!>øG<ƒÌr"¨sÖPä«k¼oÙÃ=”‡%núZO7ôŒGE5ús1áÊ:„L7ÀO'‹µ&‡BÎ龺”ü&;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²%åÃIP¯5ßS°ADX‡%[sÐñ“qçÓÎ+Ê8‹ÆüjÇ=•ôÞg¯ø Æà•.n QÅg¢\Zwë\ûêí‹NýkŸ}]±iß­sï«¶-;õ®}õvŧ~±Ï¾®Ø«¿XçßV­qW~±Ï¾­Zâ®ýcŸ}ZµÅ]úÇ>úµkŠ»õŽ}õj×wëûêí„Z<"¥r’bÏ,Xø¤npY¬;$—qMüaqéÏÏXw'>›ÛIph/Ïšý^šÍxCȤã p<^M5–gÔb,Eˆ±"ÄX‹b,EˆJbÌY‹BR*¢uI‰Œ©,ÕC#w^­ëc•Fõj²ëŸòÇëyž#uÏùcõ¼Ïºçü±úÞgˆÇÝsþXýo3Äcî¹ÿ,~·™â1÷\ÿ–?[Ìñû®Ë:eÉ´8§€P°€F"·ÕJŠCŽ4Êmº´¡:T}€g:€&&2ÒFöY¿håB…‚yIM’D=0ô­:â— y#ÕH¸sMæøCÕ÷í'Ý p9ýÃÌy.e™fSË ªÅŠ•½òR/<¸ ÞDLe¥š¦Yë*¾Pžþ+|‚âÝQ[‹RÔs¨Ôòrh ÞœÍù<‡Ý´Ÿt1Á<¾áûž›ò9îÚNhcÍûž›ò?ý;C4Kày¿sÓ~Gñ§hfæ†3ó~禸)å=[C741Ÿ“÷=5ÁO)êÚ¹¢_?îzk‚žSÕ´3sD¾~O˜Ô´¤€««ÑáçôJ-rŽMfBÀJo¶¯á%?Í£Ïs\òí'4#1Í)<‡®áNŽ®ˆDÈzšàöºÿ¦ÒsB0ñw ¶­ö}<‘SÆþh©ã4Tñ¿š*xßͩãQ癟=aÔv“š‡‹Ìüç­Ù×øèü¢ºâ±X¬V*"±X¬µX¬4ÃÏpÜcrzsë¥a©ÑBá.+FèÄóš€4 ‡ž2[ãŠîOªú°K”˜´ÐbjsôcÉ_<Ípû]_×i9¡x¹m²j[A:JROTnM}[q=‘¹5õmýÄöFä×Õ·÷Ù‹_TßÜOdnM}[q=‘¹5õmýÄöFâ×Õ7÷Ù‹_TßÜOdn-}Sq=‘¸µõMýÄöFä×Õ7÷ÙéJÝ”¥;ÓÁgÕ´Ô£ÎÐÙ²ž2®èžŠk†¤™nóߥXs'¶×ž™h¼âP3›Î„ç=šá”„¤ €»ªJ‡SQ n.©9±O!ìÃÏ\òí'46 ÀWÌs2Ê}h6‚RA8œsΕe«Âm+Œ»Ï6aÌ+¯Ï™,£uZThµc]+ha¦­Pµ˜AÂ#)”ZBG T@Ò•åøÍ_“@ '/&#0¯$'ÖWe{uB¤XWª¯÷¤+IIÐ|Á5ÁO)êÚNh—ÏÉïô€ ЋÁƒ¤CRe›‰'C•'ïÖ×M¨iÝÑ)U)hJÖ•×th…®È±1”æVT„Ùi ‘¼â0½J¯-RuÁ%D•I¼’jIÒIñ\–‹n¸.­‹¾ô]Ø$\*/Æ´ÃÆæç\âq”Åu¥j®¡æ ® yOVÐÍùþ3úE+à›õÔ6ÞÃ_¬®³âÙùêÄ xÿ‘?…P¼#*ý¬®¯0MpSÊz¶†nh—Ï鯂oÔOPÚwx_ ~²ºÏ‹dç¨?àö'ð*„e_£õ•Õæ ¿#ø½ÛC741Ÿ›ÑBBA&àL94âÎôØNjcÎtò~p™—“å•jVûóöÃ3)wzw«Ñ˜òvcËiN*”ˆ3 +Ø{)Ô×Ú<ßœw[_k vÇtµÆö@u³åŽ{ºé_‘+à›õÔ6ÞÃ_¬®³âÙùêÄ Ûÿí€ÂðŒ«ô~²º¼Á7äúv†nh—Àóz)8å`b¬y??vÕÑh "Þ¸µ¢Ñ‹Qn¤`i›pg´5ßíÆ6…p·ºñ£ÛIUé òD¯‚oÔOPÚwx_ ~²ºÏ‹dç¨?à?ö¢„e_£õ•Õæ ¿#‘^í¡šÀóz&HH$à/‡–VT£ñ«š  +n±^X¬W–+ŠÀT%Â0$DŽ_~^Êö…4%ÄJÁTСS€RDIå YäÚaÁj•-*‰u<¨©éIRuøsÂøkõ•Ö|[#øw=Aø„}oý"Wèýeuy‚oÉä;IÍ pO/¸ynX#A„­*Àù¾iÊžóîþa Çh°™WV*qÎH$\û#Ÿò1Ü.iAçW`ƒ$ïâøT»©òÐH÷ˆ):"›UŠÃn©µ%hR¤R¤’#8"ðuˆ’Ù 5;¾QôðÿÈ‘ÂÓi;ï²¢jB”¢ A$ƒ¤âÙùêÄ pO*z• Œ«ô~²º¼Á7ÂO«Ö-¤û¡Ž?¸x½F‘Ó“Æ"-'Œ:DZOtˆ´ž0éi0„8—SÑœx®Gðîzƒñtõ*Wèýeuy‚o„=_õm'Ý p9ýÃÅÜ&Ú°Æ-Qhê‹GTZ:¢ÑÕލ´uE£ª-Qhê‹GT(銪Â]R{3B^IÆãìóS­—fÕ‘[î­ub3ßÄxã¢;y”Ÿh÷î74£¤öA“pñzc¹_â2{a™BS”ºð‘Þì?2ì«nf°­#q‡E MäÙ™P•¸Š¶ ,ºŠ”^+Bi½V¥Pœ×E)´ 6êAÿf¨eäº4+8÷]^)‘ü;ž üBƒ>²:— Œ«ô~²º¼Á5á ÚOºàsŸwÂ+—çò+®$ÐTB°Óo ʬ /fÚùæ])S(J€RJ TP\A¸ÆYÈrí$ÌJ­-Œ² §èsÝZ”›€ÁI‚“B(Fm a ) ƒ ><1íÖ;f˜™Ü÷‰½yþÏ竜æªf­mžLÝCO¥Ë°V<~$¼©¹´–åøa .I à$ðˆ9Õ½»XRÔµ­EJ8©F¤ó˜y”<7ØæVqÚ5C¬©µQBš‘§hBKôC‡ ߌuëíù–ÛqÓe¦Öâ©[-¥K4´H&•"ýp´-µ8…!b•JÒR¡QQTšPA~c#øw=Aø„üiü&Wèýeuy‚gÂ/”~´œa¾~3ùŽs„ŽC×mk4H„J \5Ô=çã–”¤Q «ÌÅhN*Hç…Ì´„“j¤ (o9³AU¢Tq&§”À0•C ïVo̯qíéÓ⎴—Se\Ç8?Œðû iT<Ä`v„6áIf†Ü$(såä=ˆÏeR—¦ääÍöÔš<è¸Éµy*¡ÕïizBÄd¼‹'“ Ê2–ÓuµbãŠZqg|¥rÜ0HèÊyC,J®Zq¤š¤†ŸJS»°¬BÙpФ‚SÀXÞ­*I"2®M˜Éó#¾0º€B]lÞÛȯâhu¤ï’~^GðîzƒñøÇá0¸Ê¿Gë+«Ìžø¿[¨@„öB8 äcSHYWÓ6h …ÃW™VêÂ7èürÂç’)¬Þ~:aO­X¨ôÁT-UUŠÀT15cz«ÓíšµtBT*“P|MÖ’êl«˜çãžiM¨¤ó#hD»Ûš«›5|a‚‘%!9”^ I°·ÜÏdoP8Î,Ñ §ZÈÜ*¢d …KHؘž³76,© ŠË°¯Ù¡C¾(pfJÛj–Ø @APúJm¾êÉsÕÆ&YXϹ°ãKo˜ªaÚsëùyùêÄ xã„Âã*ý¬®¯0=áë+®'ß à§uz¥¥ª4ë<ìÒÉÞiøÕUŠÅv•òja™•´nÃ8Ì~3C/¶ðªMùÒq–¿}ò)å ÷r΂’A"ãÍ´“}ÏÁåÑÏ×Ë·v%9•TÛÓ T¬A*P£Ï'CH"ä«ëT,çH\dÜ‘)“™K¬%¦ÓLùGŒµòÔxÊ$óBP´§Œ¥•er{ ˜šy-6œç„¥fB/Z 7ÀÆÈrÒ²ä÷t˜i”»j¥ Š•®•ÖMHA %!J¥£ò²?‡sÔˆ@ð?ûá0äe_£õ•Õæ8G”À„@ÀrAu-*ÑÛ¢uK5'°sA;t€Ù8$žhu¥ ¤ƒuàãŠE"Ì"UÅà“ÊnÚ{!¼ž‘á]IäßÕi¶øJyüçÏâ“l[¢xIë—TM¦ÕJÉ’“yUIjM…¾íÖìê>Û‹4Ci4¸¬¦§z*hAØL´•‡çìÎMÜ@)¬³'ì!^@›tfJÛj-0H*| ñ—vg% Ì¡LìÝ0A¬»DÒ…×ÊÓa²TieE»AQ”2”æS|¿8òUöSƒmMëHÁá_)TjR¯ùŒáÜõâ{§Û¯°ÂóüfŒ«ô~²º¼À¨Ã~ƒ<öæ.á5kì…(“y¿9‚v€ç†¥«Õ½ñèí„K4&ÑûWû0öm>ÞêÚ‘ŸúÜ£q iJ¸$ŸŒa¹"xfΡyì&Ãmàš&óùsxÄãi#z¯aø¼sè‚“d/5lŸX ûEüµËŸ©2̳Î(‰7Ô%瓸¸@ÝHÒ¨躶R¤Ž„%4PƒBÎptF·@Ï[.Èä¶·Y·‚+[ §|ë§B/ÕhÑ)ºÒ’/Œ¹²¹ì®VËdÊÈ’Fâ…oÝNýcE{Òw—Ñ{­”«æ²?‡sÔˆ@ÍÏ Ïñš2¯ÑúÊêñõ`y Ö)å÷ú ã´•a¤üc,¨’sÁ;M4§ åä×ñÙ Ë¡¯´®6ŽM¸ü•6…ð’(€Eh5'‘çrÊ•-&ÂU*WÁiº`VáÞ§P­¥`ƒ(¶C²ï¤¡Ä­iZT([q&ÉIÖ•&þˆ"„ƒˆºcô{—ÿZä4J¼ºÎd«ÎTï—-OúWuÑ ,¨éfѽpôÂP $*MMÀi&2öÍÚ`®_&Y˜|U*˜7°ÑûðÊAÜÅ1W&ff'Só.­çWŠÖju™)’3›ÈþÏP~!Ýï…çøÍWèýeuxûœú§ª k„žQ×è,öը\žØ'i–”ꀰ †ÛKI²žsœŸŒoÆáy8È[š±1”íÊK›*L½)2êqß×þÝ' (x@¡ºd2\´‹(bU”2ÒpJ/΢xJQÎ¥Ns¤\‡ÜYAM”R_(×u ¹ˆß&îŠ:8ËKÆ&ÓeÊñ‡´cîËÊÈYQ/¨¨Ë>Ú˜šm7• 奈7FÝJ“Å+E¤‡c.lª{+•²ÙT¬‘¨ÜP®øêMÝýcEjÒhÝôVëe*ùÜáœõã!yþ3FUú?Y]^>÷‚_'¾0!ŽæôiË(²1WV~žØQÚH©øÆkrE<£z»9¼%äiü®öç(Ñ) ÇÕPË5ã¯M/MVtRøØþÃä²U—–;ªwèq"×3 š†îºÙ´éª·ÉJ¬Ù ŠR6I“–2<ä^R7IR¯&e­óWÝfÙ«JVd8»ŽyŠ)*¡â3ÒÒ 4«m¥Z¯åùÜáœõã0…çøÍWèýeuxüÇ‚W7XƒŒ—áCÕè#î[Y9°ƒnM›÷B.]<ÝzÇ! qIB¥­F‰BR”N)$ê¶ 12RþV†q©Pݜ›¢ÒHi7Þw\Çs1%“¥äÚC,2†Z@¢P„ÙÌç:I8’a)¤8èNxÊû!ÉÙ)$ÎÌÙrÉR%[¤Ó˜P%º€€s-å6Œw×ËóMNNMÌ´Çs¢mõ¾–J÷[Í¥ïì§ÔÐ$Ú²‘d ¤Ä’êâGÝó¹Ã9êÆ a Ïñš2¯ÑúÊêñùŸüCß´"_AÙèê²ÚµïzqöVv›IR€“AHBR‘€üùññÜ‘rŽY]%Z£!A.L¹½e@8¸°<†êESjÈP1v)#’”îÓ^TÓ [¾•KbðÒ5'|G j„ "á p !锡*R–”% +ZÖ ”! R–²BR1$Ò2þÎÒÒW#Q×7È^PXïMÝCÜmŸ p}Ác{VÛp(,:븷žqnºâŠ–ãŠ*ZÔq*Q©&'Qi«YÐ}†îºAÀê5æUÇÚÓ%UG¬Ùé»ç•(ÙH*'01“%ÝiÅ)ÄÙ HTW„ ôî¼ÿ¢}‡³¹€JI4&»Ú!m­³E¥I:Æ<‡ÍãÓX#”í'ßùù=þΪ䧔öAÇjI]¬ÉÓp÷øãm¸òÒÓM­×h†ÛJ–µ JARŽ # l nLå‹“Šd«õ‡RyNäÑâ•9Ân%¤Ú—m 2ÚBJ„„!)”¤ÌÂÖ˜U”ˆ[ F[Ù,ŽHGrÛÊs–h‚òÍ.*4ƒõ‹»ŠnŒ³²<¡–•eåî2 Õ2Œ’¨5 tó˸^½êHªŠší-6¤éE7ÄiJ…5h¼ÓJ¡X0 @:E~nU¦Ùi6FùIJΣ@­Â¡W7¼@Aå…¤ÂÓ¾‡K©(X¨=#X9Áº› Z+[*Rk¦É"¾;7är+Ý´œÐÆ›Ð9µUÊh ÷õídI¦WŒ¯`»·Æò6Çr†ZXܹKT…͸ä)ŠQÕý”Ü<µ&2Æ$rB;Ë{¤Át˜r…ÕàÚ+ä"ƒhß ²1@˜[€DÔãm!nº´6Ûi*ZÜPB‘Š–µQ)ÉŒ»³»Våò5x¦yÄÒšåšUú{ëÉ·¥¼ºãÎ-×–·]p•-Ũ©jQÎ¥Éù/ÍõjXW5B¡BÊ”ŽƒHFhØfÃö1²=‰äÉÙ™"™å!ùy™‰i©–ÜÝ%¦^i*-—-ml†œWx=7¯¿hf†8þáèÁªÖužˆ03C"6>ÀöŠûüe ­Õ¥¶§Y B’µ­Fà”¥ •˜S`‹rÄÎX¨¦E ¼èî‡Ry÷6Ó£|ÜJÈ´Ãhi¦ÐÓhHJm!)JF 4 0BP¾od²%5™t­å÷*Õò®¸”’hý£”É Â2ÎÈ2†Zr³ ÜåÒ¢¦¥$2Þ`U×i‹®TÞ« 6~\òhè:RX÷C¼2t„+ï!*÷Âcô+<Êö97*ò”\•ÊΖêa LKK-)#|wtÌ(•T¦Òo³@†b’9Bë6G‘“"±7*šJ¼ª-\æû´6¿ `•›’Pï%†œufÊBœQ⥩J<€˜ys/½0åëyź¯Yj*<·h.]âépa‚†”œG¼k  /ƒ´q…˜œwtvƒ‚‹‡.~ÎošðŠÔÛ´˜g€=pÔÁøí„b 4 xÆGØÆTËVÓ[Œ¢‰më‘v;š*ö€P7;@¥N$ƒ bÒ9!²Õ¹‚(äÓ )åV• ú¶É°Š -Z m€˜¸BÜÚ›U9cÉñ¢ 5z5ޱâòÒ³&^U•¾òø(lTë'2R3©D$g16ËV&2¨LËÛÕ aÿlÖz9õçH#rÍebøbQ-„€à  ¸f„ R€‡_ ÏeÒY,-«]Ó9Mì«KÅPܸ*Î÷HòR(c*å™ü°îé8íP -0Š¥†k™®:V¢¥«:¾g%ä‰ü®öã$É])º:­ë ‚qqÊiHSŠØB¨cf{g äÜšöìãó/Ì<Û« !ªnHPnò,©7²M£kÉ {è¿ð¤ô•L~‡^-å,¨6W-.‘ïÊ‘ªÑ:ªa•>ÊoSˆ¦«Á'ø@'š˜&ó§4~’¦ƒ›!~U$R\©ÅAߦl­UpŠk©7Û&‚¤«æt²âO’oÖ3Žq ¬-!I5 CÂ͉··g‰òS½O¼óŸe<}ÓU¨ý¥@„ãà§Õ^¸ÚM•Šh:F¸˜–[Œƒ‚ýÇAöÙÀhÑI:>ÑâÙbùC-).™i:ß2âI·K¨ÃwMnµT´(­ý´Ø9c²Y%”µ,Í ;ã«¡yãuî¹A]IHJä¥"ÐNhÂè9”–mo<êi±U¸êœ)U¯7ÂQ¸c/ìÞfmNKd¥.^^ªI›½3/' µžYµ^Aÿ¸"„©­óqæòq?0&‚ònbLd‚LÍ”Le[RÒ÷(J‹¦]80ƒu@«¤òª*2~K—“a K2Ü» Š‘e:Ε,›ÔI*R¥McôÀ¦“!‘YO SSN ƒU%¶›J΀uV¦Õo¡¤È¢›@è¬&?D,ºîSÊ{’jS(ÉБWM •˜btš\ KI¥ú”Vñµ™ â3WNø‹®ˆqÔ0ÛŽº´¶ÓHSŽ­F‰ChIRÖ£˜% ’t˹Hå|±”²‘¨snºØ7”³jË&‚¥ ¥´Vƒ (M'5‹Ço\%Ä/‚ uVþŒvòLÅAaX§|T›Ç1¿êŒ¤öæÍ Ãgg=r‘æ@Æï€ä‚PA¼CÒ¥“m·^tòé1Ö @:@=>'-+18òeåY[ï/‚†ÅN²s%#:”BFsØ mLå[3.ïT™Q|»fãßù5“Fx@¥ÑB”Ci$¦ªf¨ ² !Ù€œñ² —Id ¦‚»¢v†Ì«jàœÝбPÈû7ºx o£*å™ü°öé8íR -0ë ׈Šã¥j*Z³«ærfHŸÊïn2,)MÑýe s¸á¸á®(R“CØ\žKÜßx ¹ëŽì´ïU0a³…ÿHª¹  oa ¡¼EUÅXû‡²ªã›0Àrý-¨:öA—UlOº³u›™D]=åu¨¥é¥j@›=øê{'4~‡²ÎKÉJË­å)éyN~«îs2½É·7Ö¯}]EÙºÛZkjêÐÑí–la†Ë‹Ëù%I™ž—™s™©uºê¹cf¿¤1–s$ädºÔƒ”3ŽZiù¤‚«L¶ØUQ*±fÞéßmM¶‹AÏ’³D(ê0¨Ê×T‹F„‹«^¾]¦]S.!Äâ“^QœD\bzdL½i5ÜÒ(Šÿ1¦³w >«’£¡'ª oËè8®ñ,…±,£–,¼¤™Y"Rwgmº“C޺СqV[¿zVB’2.ÇdrK!¹VBIḭóÎ.9@N¤Š!>JD!‘BÜ\³]ͤïhÍ´7©®u­TÔª™ÉÊyi_ôŒ÷”¨%s.ïA&ð‹ŠH½Hl)@R ZØöÃd²U— {ªxjaiàœá„^OÚ½dp—K¡¶Pß |G’0ç>á Vœ3p‚à5<Ó(RÜq(BET¥”žª7kgm‹Lä´—œß$̸ YF`[G Óž¦Â0"ÝHóo>·f¦S¯.õ8¼Thž`HQ) —GÇT'a6ZG%z/˜™;À4ž¯ë,/®¯1Lžôu=þí¡ ðøÃÑMƒäÔÎe%Í8›H‘J »¥A ¾ã¹¥+"íêÊPR"Mšvˆi¼!)¤LÊ…ÕÔøÇíï "ëîÚqИʙfS'0¹‰·ÐËiÒwÊø€ Ÿ14oHÔOÇFЉar óÑÞ¤i=_×i1/Â<‡Ýè¦À2qg%¶ò“E͸·Íר¹ TñJ-æ$ij4ŠmE}Îé”-¤j9®Ö5#d9•+—’³=6 J¨¯úf»¾:Ÿ °~‰£@A:• (Îå7ÌÄëëyÌ[Úx o[@БËSÌä]e¶èÍØ— £³nFœî¸Ñ£Sº)´ªÔd ‰Hd„¤´Þï6E4êAxŸ(7™–ï;ÔR©tS…6¡ !¬h¥hòSÊsòBœÎOÇfˆqíq3<ÛRÖ´¥)RÔ ”¤k$€³wg5·/’wʼ*qiÞ&ï mC~AòÜžöä:•Zºëî)ל[®¬Õn8¢¥¨ázIºá ]†ÔËá Æ‚§”á^jôˆRŠ”To$üs@‰TZXÐ÷FÚ|ÌÉó÷í&ÎSæ)³ÀäQêìÚNh—ú&Ã*˜}–Ã}ÖÙG¬âÂí1òre¥eÙBM†Zm¤z­¤%>Á|6ØHŒ ª ‚?Jós¬IäÎæ|²ÄÂæØ› ›.:,°¶Ql A ûªBÓnÒR¤­5§Ì4Ó¸†Ymnºâ‚PÚTµ(æJEæ6?°»9g82HQÿì8“yý›fšVoLJdö˜iCha–ÀJ„¤$`–Ða@Š¥"Êó+”û°…+MÐóÉH7Æ[Ù4–KI¹mò*‰vÈ.«A"½íŠ[UÆÍ¢)_/Ïå…Ù{œ¸ ¢Y²w1L 󸿴«‡’”í­a *8ueJ*8“X‘¨²‹YÕÔ>eóU¯–IÍ Š!Bw™†¯¾Ê9ÖÙpSM¢:!½˜äW«L§.šám®‹n$žQt µ"°Jge÷´µUŠ$´E *n¼Ò·V2ÆÍrfLAKo"~hƒe‰UZJUd”—Þ m´Ú($¸ð­CT©Ó³FmùÙ¥Û~aÂâÍô’„T’m-¶š›-¥)Íò¥¥¦'D¼«+}ç Ûi*Qש#(Ñ)MT¢&2èíEh˜Ë+JÅÄI2¥R¤ ŸxY&Íà¡›Š€;²‘TªW'³*ÓhChe¤$%¶Û@H ä¡´€z#DïS p•ëA0ìÊSž2æË¤2][RÔüÏÿ›*Rn¨. –ÒnÄÛ Õ P™_/Ïå…Ý{›ª%›'sÀ«;ŠÖ«‡’”ü™‰ *†Î¥+Ü;z4ÁÚH‰v·4Ôð•ì;y¾eÃD(ê>Û¡P!¡UQæ7MV£¥F'G<ƒÑ샱,£–Š]¡”’7÷Kˆ$¸+ô Õ%Ï\”·¡J7FCØÌŽIks“`Z n¯®Š}ÚR÷ »–ÒJŠšš¡ oƒE+˜z£?)»D&ó¤Ãž'ò£-×ÝCM T©j~dæ󀌻³i‰²¹|˜TÃ&ã2n}zw1ôIJß $òk bN] ¶š/Z¨·\;çE7Ê%T €”¡¾çŒÒ3rã U!×ÂsÆV˲™9•=4úNjòÕJÙm%ªî A4¿c.ìÂs)•³(W+(I¼“vü“ÄA®e(‹½|÷ÅzÇÙvÒq†ø äôS&ä©ì­0%¤XS«ºÚ°i”šïÞpïP›<¥P¥ R¨˜ØÞÀ¤òqjfr“³¢ú©=ᥩh‹Ôœ®UD‹IKDÙ J¡ -àóŸ${`œ×3 ç®à16”S Ù̼­¹y™¹‘PT eÙ4ò–Ÿ qm³™An!@9=7”3-çMÕQ¹#Š„Š% Ïe Ô›É'Ð%ššé©éŒ#ßà¡è“s”6RICH¸ÔvtFÄvöÉîçß2¹1.naÄ&¯M)>KÚÞ%;Å> ´‡-6”-Ht#%ä<Ÿ’L¬“Ie «G:”³@§YªÖ²”I²‘D¥ $%y÷óóhÝpUHuðœñ•²ì¦NeoL¼–Ð+‰ß(ñP‘¾Zµ&§š2þËg2²Üe….^G‘½uá¥ÕrOÕ¤Òœ"¯Ah…ÁÆ47ÃY~‰Ï"ÃÖ³8+üBãî<ñ°PÈØŽAÜîM,øe8á˜;˪_.åI^þÖÖéa:¢f} $©JRI¥#/lù¶T©|š”M: JžQ=΂“d‚ñ®6T”èY1;?7”/Î>·Ü8Z;Ô+hCiÔ€7š’OÈ[­£„¡É‰èg›¯\·Cn¡ÑTžPn#ÏÅÔJû!çR[P©§\Àß ^ïDçÑi¬èPèUÇÛf?E»1fQ#cYMÝÉ·+É/¹siqõìŠÖMxî²ÕH }×¥Úq„ÙVɲnÇe¹×Àyê–e›¢æ^îmÚZ²Ñe h¥¦2þÍ2®\ZÑlÉÉ„«*5XƯ¼(§ â‹ ð¨¨Mº<³Îë<çÙ<Ý‘ÝÎh@é÷˜3®ñ€äH÷ÖûŠÅj<÷t~PTa&ÂmâµpuнÃúÃO,-*´MŽ‘È{4Æÿ>¿T8tú:ÁPP¡‹La )ÀÐÂ^ãq蓉¶ÚÓÆIù½°S6Ù^L–îI<³0‰p(”:Ü´Ùm4¥–œ›e÷H´´%8¤“³™Faɹ闦æ] ¸ûî)ÇJŠ«¤oP„Ñ ¤¡! òé ©@ Ip@óìÒw¡Z.øèùEMNÑ5˶¼ÖN‘Ùý!rk+ØaL©8¦œ¢,E˜³bÌY€‚(L£ŠÄSZ®öcì†XKWâ­=ž~pZB†ªô_¶! *<½P‘Aè±i³ŠÑN¨2Íh#öÖ £zUìì܈ã*«hóŽÈ 4<ž’¤AO@\M•¨h>ͤˆiEsŸ`ÑûžšMÆÑ´Ëuß3~çæVÉâ}ÐÒ-ª<oÜú… FGL2‹¿„qìÿýN?ÿÄd !1"AQ#2Raqð3@BP`‘¡ $0Sbrtu’“”±³´ÁÑ456CTUcps‚¢²ÂÕáDÒÓñƒ%dÃe„£ÀâÿÚ?÷ëAHõÕ´Ô‰{ÔL‘éÅTžèÿØMç>%Æ×l´rGf_Žh¡Ž7‰tY’Ö4òJ¨¡Cø𠂤«$Eˆ#B<éÐþÁÐrÕòÖºói”Gèå$ï•P[]-'OEDbH·HèÆÓä#ºUÓ¥¥]]TzêŽ:xj;Ò5`7,Ní¿¡í’ í,ºXwI-/^ü¶k=âwoƒªù±˜S‡S¦3ÜŒ«=M*óµibQßõ¼cÃéuÿ|¼û‡þ‡2j>ÞÌ©¡µÓ|I/õqóˆ=<óhô׊$ÝUó~Œtb¡.+)Á¾˜Ï2mÞR®lÂí<@hæTqp"î9×Þþ†ö*†ÑËZÃ3òqÜç?U%ÔÿV,m$­b[^FK}r­×ûÀy¿¡èÜÆé"Úèêâü.¤~i׊‘Fên¬ªÀõ‚àăLfi¼Ž-Ä<£_6$C’FxÆì†âÆêÅMÇGÐöÌÏËå9{Ü“ÚÑ#m^5¹ÒþÝOêL7 W-Ôù1›ÇÉfu©kwv¾÷O~öèáìøãy¤H¢RòHÁGf6áóuâ‡c¢X•ë7¥•…Ù™#OÝÝsk÷ÄØÛE¬ÙZMÃÉ+ÂÚÙÕõèÞY·€êR‡ÇÃt“QÌÐ̶#UaÞºô2ž~nïóa&ßÊR;Žá<ñéÄo?-¯ºßÉ»åǵÅZÝO§W§›S'š±úl1¿Y8ô÷€ùíìý‡'ÎŽø¹†ŽiSÄü¤0ßî%qçÀ§¼1UN,tÆÖÓŽ)@Õ%Ý¿ÔH¦÷þÒ§Ãïó±ìýκ ÷“E-¿­B—¿~GQÑoÂ÷¸¨ÖøF6Ò-ÚŠYuÕeCÕ¡F_9»|ÏØêŽ×Ïé5²Î&µ>Ú2èF¾©-aË3kXIÝtY´ñ{ûÙÉD9Þ\æÚÌcÔÛY£xGžî,=±°éÄš1'§Å£‡” ¬K^ðKkøA9§áû±•l†ŠÖ¼BXXq±ŽWü5eÝ{[@À\áøbµn6’.O1-m%‰ö¶ªY-l@Uò£ªþþ¨dä«håÓ¹USÉ®ƒ™*6§«LR›ªùèÄœ1™ hÜpTÜ›n:AüXe(Ì‡Š±SnÚ{?±ÝFõe970Õ,õÈI£Pïµ]ø˜Ž†bÚ]MÏ U®‡] žž[pi#'낲‹ÿaì:u·™\¼­,p2EØ}R)ý8~¯[«y1˜GÉWV%­j™¬B—%ºG³ûϹ˜ÖSôMJ²ð¼…ñ¿ÏÀÜß‚ã£+¡ÆÖÃz6¥Kü'’óúïé÷ù²òr™>\xZ–ûÚ,íð{ÜViôêÆ'›U€,‘Çz$,~ï{ôiìýŸÏèo¢ÊeŽ·î‘>èàZ@‹r›Ûˆ^÷ÍŠ¡ÆÑCÊQU-µä\Ž»ªï(ó°ýýþlD¡²Ze¾±½Bõòîày7]=®*…ÔúucjÐ&jO‡OŸ.ô‰§ŠÈ<÷ö~Y7kæ4Üe;›ÞjÊ…Åú™nE‰¾˜ˆÝF&c4Œ4nЂ×P~<2”fCÅX©· ƒm=ýì· ž2×1Õµ—©^8Hø_”ãø­…ኑ¡ÆÙ¡ZºgèhäQ×te'ücã÷,Ÿ¶h©*/~^ž t¸Ò4m简ê‡1˜%Õ±™GÉWÕ¡ús¿ i!åÄãñéÃßßcé5Ì"¶©žÿ_Ê©ø91ðá;ÜT 1¶É¥+Û„®»Ý[È ¯ãÜþïˆ{±óòÙ^ÆüØÞu6†Wˆy¹œÑíVÃ…°ü1\·E'™¹·®GùmxüÞ·o5ú}ýì–̪c¹»Ó·Gs•Â9Ao)Ä|<Øœh}:±¶ÑÞÀ¨Œùn®Ÿæ¿¸¦ßʦ‹KÃ[ µõÝxâpÄto1epôƒ†áŠÅÐúuck#Ý©§}9é"øù…§«ºuk×ïïbä)¨î”ó!ò^94ñÝ^—Ä=ï›õbnÛ÷²Ê.TÄÃN–;‘ýï5ýÀìu7?2€ŸâÒ¨éã*;xÀîcÅ|t U §V6Â>ç Sî}Ünxôzß›ø½ý컄ÏròMyWÊ^žUQçb¾|AÞ'èĽ>XÚˆ÷òÚÁÕ¿ÜçáÝ÷`¦ÜÎdŽúMG%–Ýó¤°°ÖÚn§(x€xjwp;ÜT6²;ÐÊÞDÞ^è‹ñ'Íïï%~O7Ë›ÿ¼>øâ;ù·¯Š~ôy¿F$áŒú0ôUJx5<Àù fþàlœÜŽ@oe‘¤…´ãÊC Qâ‘nWÂw¾lT =U‘‡³ÕŠ2²›2Êzˆ7ÌqG"É r)ºº+)ëVPTØëÓÕåÄ£Lf+uo'êÅZîUT¥ï¹Q2ß…÷da{{‰µYµ~W]BôsVÌ‘0߆KIíã:^Úo.ëÁ†2ݵ¤žÑæ1š9>ô´íåb=ZUâÍ"ðÄ3CQË©4MÞ¼lOIQÄtûÕÉ5i  A4±q¸óa»ÜWiò~¬fhS0­SoÛS6O!qñ|~àlô¼¶S—HHbÔtňá¿É qâ³\ÐEº1' W¯5½:±˜©JúÀŒÌÚu;—×Ç슭©Êhê%¥™çÂÛ» a~:ëÇñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯WœÑfuJ\¬Pº¿(… ËÜX:`:žœQ×ÖPÈ%£©’ú†æ7‰ã7ŽAÚêÃA¦ƒvÜ»gïji#ÊðHÓV1±Öû±XØRWRWÅËQÔG:i}ÃÎBx ÙãnÙZÚÛޞ̸l£-±½¨é×Α"°ó0#½Åhæœg‰¹šÖŽ=Ô7Ý¢?Žop62^S! 'MÕ•>÷Q,`ù‚pü+F‡Ó«ênf•ZX1F;Æ·>v ÿ¯dm(Îó-GíƒþÆòõŒo/XÆòõŒo¯XÆúøCëá o¯„1¾¾ÆúøCëá o¯„1_8WŽÇÚŸÇWãôÓ [omé¦0ë>šb›7h~ å§“†ü¼M¨ð©é=8Ë6öx·#®äë"r‚ÑU§HîRnŽ‚¨ìuio®2Üó,ÍGΕ*dâ`“¹Î-Ä„'žÔ´EÐ_VOz; Á²Z Ú2¾u••‡˜‚1Ñðb°sO§V6wsН«ä›ÉÜ‘Ëp6]ü¡“^åW2øÖ)yºð´ž.uü¥¸b°h}:±´é¹™“¯>c~°ò.že²6²·“Ú<Ý/ÞÕ°þìxù`zþ?&>Xxý4Ç˦˜ùaãøü˜ùcãôÓ,<~šcå‡ÓL|°ú¯M1òÃê½4Ç˪ôÓ,>«ÓLTÖo•7à1Û^?M0k<~š`×Û§ÓL>hWÛziŒ—-Úm£mÜ—/ž¢5`²U±X(âÔ½S3$EsŒQ™& ]cc¦6{±‚ÑòU9ökQ[T¥_µ2ùd¤ B=£Me­©³Ë"šíZ•Pªª¼“ ›“å&ý~ô6[:ʲ얔VWA ¡¨Þ‹xÉ0½L¬/ AåÌÔj1SÙ &ˆnÓÃ[T|!E;éd^ÀÜmb5àUö@«šâŸ/¦‡‡¯K-G—¼Üz:¼x­­š¾¡êgÜ=…£TÀK8jIë$ûØî^á˜C½ÞO›½\¢nïk’·öpx U§V6µ-SN÷ï–Uû“ÿ7Åì¦ìµYžšfKDijªŒ°ò•!pªrô¯ ~Åûgàeÿ…®?bý³ð2ÿÂ×±~ÙøákØ¿lþ——þ¸ý‹öÏÀËÿ _êÇì]¶ž_øXñcö.ÛO/ü0x¼xý‹¶ÓéyáƒÅãÇì]¶ž]øXñxñûm¯—þ¾,~ÅÛkàeÿ†/‹ýñ´9o³SÁ›ˆJ¨šXy D£q#oÀïpÃTxðÕ>XÛÖí¨’E¾¼A#«]ß‹NŸq;8¹\×#rú'í‘çøÆÏv1Ú¬ÿ’šZo•kÛyˆ1»&œèht«“yHhÒ%¬öÆÎv-ÙŒ’¢X[9®]Ò*s!Äà µ5^ל£Ì*j"o[¨\PT h¿}‚“w9•7¬$¢“›~ùÖh·Y ¾tèÞ<0;ÜT6Á ¦R-ͨF>MÉOÜy¯ç÷\·/ž®ù試­¦NNž¦XRI ]ñ'qwÄwÀmäÝk¯¿­&J û¢T ·A´šø­á}m„ïqQÀãkP›Áx˜yyT]|Ìzµþ‡¶fC{–°·¯”תX¤¼öso¸ðÄ]èòb~Ú„Þ ªæïY á{n•kÿfÛ×èµú?¡ì·3l±¯»júK›ÛšgŒ5ÏQ[ƒÐA éˆ{ÑäýX›ÆÐ!z:µZ ”yLdÇýS0Jˆ•f‰‰ê êIó S÷£È17 g ¿«á+-ú®-ýи’¤^öHÕÖýL Ç‰}>,fcšÞX‘wÓŽë²üè{$q&[C"÷¯ILãÈÐÆGʼn1™kzub±BUÕ à•(¿,Œ5÷ ÔÓ­BR4ñ-T‘™c§iM$jlÏdï:¡ò î\o[x_ßÖÌH$ÉrÂ/ûN5ëŠ4ŒõèJx­Ã†$áé׌Às[’îWÕçäo»;ÿõ½Ãì®æ<Ï&ebŽ´’²2’¬¬*™HÔlAƒÃ/dL÷* C.kH¤s*Ù»eP{X«Ü3¥HQ¢¨ÆK·uÉÆ•=§Xúvm¢rÚi×4óo[U—–`.Ч;êù^TÜÙO)+£ z™Hê6ÒãpÅôêÆr»™X½ùêßw=¼ÛÖñûh;#ç9Vs˜eÔôÙKÃIPb¦†©¥*O<¥tj[^„QâÇ쯟ÿÉ>ñ[þ£Ù_?þ)’}â·ýG²¾üS$ûÅoúŽ?e|ÿø¦I÷Šßõ~ÊùÿñL“ï¿ê8ý•óÿâ™'Þ+Ôqû+çÿÅ2O¼Vÿ¨ãöWÏÿŠdŸx­ÿQÇ쯟ÿÉ>ñ[þ£Ù_?þ)’}â·ýG²¾üS$ûÅoúŽ6Çk«³úª)«c¤‰©àxÐQ¤¨¥Z@Ä¿-<ä›ð±QnŒG˜ÛÛziˆëѸúpÆE·™ÖMhà¬t¿Äë÷§‰ªmõš jBÅ*ÄXïÒTI#u’9^9ƒ££åteº²²U ƒq§¿M‚ýÆdÏø× Àb´hÞXÚ/ÝI~²?Åì~É9nöš=î÷3qýÈqòÌø^šcåŸÕü~L|³ú¯É–‡Âøü˜ùh|/É–‡ÂôÓ-…é¦>Z}W¦˜ùiõ^šcå©ð¾?&>ZŸ ãòb¶¿”d;ÜôŒÏ¦˜jû{oM0Ù•½·¦˜‚¦º¾u¥Ë骫ª_¼§¤†Z™ß€æÅ »·…êÆÇöÛ¢hêv’UÙ,¬î¶ìû•yÍBÑPE/'I}cvÌ'‚¢³ö…BÝq±Ý‰ö3b–9(2á_š&ã6s›nVæ¢ÁéË ‚†Ì^Ò†¢ï´Œ7½úö=rÙ\ÊxG]*¯ÃNÿâsƒÃÍŠÎQû¢¿c'ågö>Ø7dö9Ì3ºÜÇh¢«Ìª DñÒÕå©NŽB­¢Yr™äUæW?UùsØŸå]ªü;)ÿCÇü¹lOò®Õþ”ÿ¡ø±ÿ.[ü«µ‡eèxÿ—-ˆþUڿòô<ËŽÄ*í_áÙGú?åÇb?•v¯ðì£ýÅùqØå]«ü;(ÿCÇü¸lGò®Õþ”¡ãþ\6ùWjÿÊ?Ðñÿ-ûü«µ‡eèXÿ–ý‡þUÚÏòô,vjØ\Ÿ±æe’ÑdõYLyõ3ÎjY^*ˆ-…+© ®oÁ‡ =O.KŸm=re¹YYšÖ=»$-'&¤Û”žM"§„új‡ŽöÎ1±Ÿ#mFí^ÝæÝ¥ÉòI#š¬õvÖg,RÒÁfèi`¬åc`Ee<€¨ÙÙŽ£í-œÊ)2ØÈicRõ•Ex5]l¥êªMõ¬¬©{F¨º{÷ìxëÚi~rÖ–#^õá§ zµ(Þ=5â.x6+8N¬mRZ¾7ð¡Ý·Ö;|üáöØ}ªÛm«Ùj=šÊg®äòŠ¡UW̓/¢[¡«®˜¥Gf$ûùìwëÿ×Åù ãðÿCÝŽ½w4òPþ:¬÷\§V6Ãש?ýÇÿƒúìt{¶f:JÑ›y Oâ¸øqíqUÀãlJÞ J¿t±ŸòCÝt+~Çò£½ôñb«ôðq¶?ôÿÖ7ø¡îÇߺŸcÇù\÷ÓÅŠ®ŸN¬mý7õþè{±ÿî…gØÉùQÞâ«§e›úÇÿ÷ x{ÀÌ{#eYwd,—`dÝ59®[UU%Nþ”Õ»Ñ6YDÆõd XÄpv¡ œÛÝ®ÇÿºŸc'åF{éÕŠ®Þ½æ÷ :p@ñë?7›Â? ÆóxGá8Þoü'Íá„ãy¼#ðœo7„~æðÂq¼ÞøN7›Â? ÆóxGá8Þoü'’A¹¾¾¡uíƒ!>/v¶Ÿ>§Ù¬’»7¨*L0¦‰¯óÅ[©Ði­žKr„j‘ $ö¸Ú|Ò|®ªª¢V–z™¥ži¾’Y\¼ŽmÒÌŌ⭮O§VQ5ˆó~ŒlõsÁ$N¬T©R¤AƒÐF6+hSiv~޼°5H½­\:ET*¡žÝS)I‡@å ûSîÇcÿÝ Ï±“ò£½ôêÅWŒÊha–óK@ð2: >Mâ/î>à=wôרþ¡îçgªlÑò ¶²’9$˨ª*NgÉÝ„-:Ó¥D¨‘)1M–7ž4>º1™M¼Í¯N':œ?)ˆôêÆY6é]z¿F;صm\êé•ËÚð@ÌHYê¢ß24+Ò F $š éj]’A±'žhd¨©š*x!F’iç‘"†(Ô]žIª"(Õ™ˆq8®ì³±´Nè•uYƒ"ßçIY¯ëi%A¦‰šÖmàü•ˆ´›Á€£ìÁ±Õ$ ¤Ì²þs ÖP—Þ{BZãºÇ˜¶·µeTçã/ÌòüÚ˜Uåµ”õÔÅŠrÔò,ŠlZ6¶©"†RѸW"Ä{Øÿ÷B³ìdü¨Àï}:±UÀãl¿é¿¬ð|ÅñIñÇ43FñM ¨²E,R)I#’7^7RUÑVRAm_`m„ÚRóÓÓO³•cÊd†()€@e²Å%"¦ ‘H”ŽÅT™;ðûC6O˜VÐöÒÔö¥LÔÜ©ˆÁÊr2˜÷ù>RmÍíÛÛ}íÂçŽ7÷F2¼­ë$EåV Ä î—"öèº_É>63°6ÄåTôYŽ`µ»AW--<û™Œª™|R¸oEEJòƒu–7ŽºzØ_t·&»ÖôôôEKK4ÔÐ"Å=æG.ȲFc!§“4”Ol@mÊbQÊ\,†;¶ènͺEõ‡h²IìcMn–ܨ~Ö"Û·ßqI‡zMõ+p ÇËŒ¯Úæ’_¢Òc÷0—?¼;ÔrÕYï'$œƒRÒ·'r#gY\ w¶øRUXेO¸¿oÖýåp;ÜUp8Û.ßÖ?øG¾-»ýßÎ~Ù×~tøöþ|l÷¯EõËú1”þåeŸkèÿ7Øß$¯ïg$ûi?æ§¶¿øßüIŒ«×WÓ¥qò>úæsö7å¸t+~Çò£½ÅWO§V6ÇþŸúÆÿ¾-»ýßÎ~Ù×~u&çý8Ùï^‹ë—ôc)ýËË~×Ñþo±¾I_ÞÎIöÒÍN*?mñ·øÓW®¯§Jãä}õÌçì:oËp;Ží™ž´57üC×\§V6ŹԩÖÒ·Ü„ç÷ª#ާô|d+ã±êÆéÆáñcpø±¸qºz¾gnÿwóŸ¶ußIßùÿHÆÏzô_\¿£OîVYö¾óxýòJþörO¶“þjqQûsÿˆÿŒc*õÕôé\|¾¹œý‡Mùcîc¯]Í<”?Ž«×\§V6Çרü•þz‘oêk‹XbÃæ,1º0cúÁB8kéãôñcÓÇðcnÿwóŸ¶ußIßùÿN6{×¢ò¯èÆSû•–}¯£üÞ?c|’¿½œ“í¤ÿšœOûlŸæÆãõc*õÕôé\|¾¹œý‡Mùcîc¨ÿt¤¿|ô©kpäÄÍ{øùKZÚ[¦ú{_ƒ\6ÀŽ^t>6<žÆÞCïQtú)Pq·ÿ#öÎmg/]“TI³ÙÄ¥¤fPÕy]\­Î&¢’GÀò/-Gúæsö7帎ýb¿úø¿ÁŽƒ‡C­ý¹õmþ/pò¼¡3*yß”häŽ@ª@ š­ùËÄù˜qÖø«ÊkhîÒG¿þ.zi¼žVu°$ûžƒ§æK¨Ç*Æù%{9'ÛIÿ58¨õáäoÇ2¯\oÆ1ò>úæsö7å¸v…côµnéò$0‘ùVø±Ñðb³ôêÆÕ°5Ñ/Jü|Œäðc­[¨t¥¨umU– Hë-›£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌvoñ:¯Áåÿ³£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌvoñ:¯Áåÿ³£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌl¥,ÉMWËC$DÌ–#!#sˆ Ç“ NF+vz’§¹ÈÉáÃe¿×-Š·@ǬÈk©w™W¶"Ú!Ï·ÕE«}Éqã÷4šcrOÌ‚G!é×ÔüË%ðE½‹òJþörO¶“þjqQëþfüqã+ï×Íþ\|¾¹œý‡MùcîcÁÿÓ*Oÿ¨IçùÞ—õƒÃ‡CéÕ©ýÒ_±“ò³{)„¶[FzâŒã8ä9Ž@ú r ãø1È7àÇ Þ?ƒƒxþ r ãø1È7àÇ Þƒ|$$—ð—ñ`Ń‹ JF3 ž¥­ÕãÝ“é±Y$èâlCxƒ†µÍ­sŠí˜¯¥»B;f1¯4ZQåOmâÜ$Ÿh0ÊÊJ°*ÀØ«=DA÷$ÚøåÙÏù¶*=|}kÿŠ,e~¸¾ž>Gß\Î~æü±÷`¿qÇŽ¦oˆ×ƒÀy±[ÀãiœÑÁö±F«âæülN¿‹Øù[ÙE뀈ã‘ôø1ÈO69Oƒ†9ÕŽCÅñcƒ†9 rÓÍŽ@zy½=4¥†ÊÞQŽO–9v¸ôóbX)⥨’(bA¼òJËh4ÕˆUSŒÿ9ÙyƒEær‚W¶š4M8¤åY,Þ×’äŸw¿+bM®mâææÞ3a-‡“ݳ¨¨¤Ú\Ò¦’y©ª`Í«$†¢žW†xdZ©J¼RÆUãuèe`GAÇ`ÎÌ{WµuqìÖÐe™È‰UGHèÒ*vu\øó)‹ÍÉîCS%DÒº£SNìÓT‹á–ÞOaü’Ÿ½œ“í¤ßšœT~Ùêÿz/ÕŒ«×ÓÁÇÈûë™ÏØtß–>àl2È©˜^òËTí~±;F-â´c¯R|¸b¸ó[Ó«BÁ³IÇ‚#Så(O3=ý‘æyl9Mr×ÑE"@¤•0#©¹Ñ•œ|£-òŸå<¿ðÊü˜ùo”ÿ)åÿ†SÿäÇË|§ùO/ü2Ÿÿ&>[åÊt†SÿäÇË|£ùNƒðÊü˜ùo”)åÿ†SÿäÇË|£ùO/ü2Ÿÿ&>\eÊyá”ÿù1òã(þSËÿ §ÿÉ—Gòž_øe?þL|¸Ê?”òÿÃ)ÿïÆ_SKV’5-D ŒŒ¤¡IŒd€mÐq»ÜTÕRÑBÓÕO1o |’Ÿ½œ“í¤ÿšœT~Ùÿãñ&2¯\_O#ï®g?aÓ~Tû±‘Èhïq3ù¤¨’Að·”aøb¿ƒzuc< æµdó£ø¡Œ€èz¸}Žif?eEù,f®_•ÇÊ×TÇ×uI¼’[¢8–ò?uHÚ÷d ZñdðrKöª@iõPQ8hÒ´—S¬HØ«­«®”ÏYQ-D§ÛHÄØx(;Ô^¥@ª:¸Ö=XN8z„a“«àö %MƃT‹ñÁOÍíÚåù@x)ŠWW 94kÁ cËH¼]OSŸ~k´g¾{]šÎg­¥mB%íJM÷cAÍEñ M®Ä›œe;A˜ä•iUE;iÙ›µªSŽh´xÏ:6Vã(Í)³¬º›1¥=Ît»! ¼2$†K{xÚàøBÎ9¬>oä”ýìäŸlçü×¶°ÿâLe~¸¾Xù}s9û›ò§Ü ”FL“, ,M28ú×»)Ó­H?\? fšÞXÍ¿tjÿ­?ˆ{‡—çÙŽWMQKC"B*\;˸`BîÙ®«§Næø½Õµ¤–I¤if‘å•ÍÞIžG=lìK1ñ“î(Rp#óà&-óMøc‡°Á*o€C U–ãækó,²Q]Q„Ê ¥xü>ÃVÝ?uõd>#øú¿WÁÔ=]¢Û:d§¥e«Ì-ºMàLÎ;æ^<ŠãÁÚàe Š@E­M‡£¹©Äœ=:ñ™kùñPKTNÇRf”“ÖK’}ã¾~fã¯áó%ÔtàËÔ>OìHÚÚtÇê°ÞÆa˜Ñep´õõÓÆ.ñçHÂÜØ£yÌê* Û@N6oªë÷é²âô4z‚Á­U8¿ð’!îJFœ”MÒË$²!°– ·OžŸöô¹Á$áTœ,`wÞ`,Ü4Uæ> 6wa3,Ü¥Ez¾Y—^öqjÚ…¾¡SŒ*mm浃o){4XË2š ž™irút‚0ñºJÂüù_‹µËnB*¯7è$Ÿïg%ûi?æ§ç‹ýE¾1Œ«×WÓ¥qò>úæsö7åO³øè5'€Å/x£êGøF%Æhy­éÕ‚I$I$“ÖOxª·ò`˜2Œ'ÔSºo‹à°2õ`±>È®,xÅ€Üâ o­áñ<–õ6Ç$ùw“TEÞ²5g¤Ë¿%~6™EÆÛÌ­Ä ;5È7Ï¢Rõ”ˆ¢ìÕ0*޲ePœâŸ½ 1/O3¦"ž{hDob8‚ˆ÷ŠÎz¥‚ñÃ9o™¹>ËÌó¬¿$„TWÔ,*M’1ΚcàÅ翌º¼XƒV’´U6üE‘Ç #q½¼š¨%Vq½MLwYiJ‰ÆšMô”#Š÷ì lCb–’š†¦¤†:x½Ž1aã'¥˜ô³Ǥýä“ýìäŸm'üÔâ~ÿÏú1•zêút®>Gï]Î~æü±ö~L¥ó|±T\öý+tw©2;z•IñðâeôñbnÚ3ógØÓþHûÅUÿU›t`’}žHç@5$ðEÙŽˆÉI“ruÕC}¬›ÑS¸æóX~Ú‘N»±‘æóØ10ÍjëçzšÊ‰*jF–Cs»à*‹,h:¨ê½Î;ç¿—I–L÷©Ë½jçW¢ó-×È=â= †Š7ÞŠÞ·›£ôú›].•ò(ª‚Tž–FÐ#ƒ»"³qä䉘7@!$Ýc©ÙýŽËòP“È«W_e<³¯r…†¿;F×±SkL÷“MääC2}ä“ýìäŸm'üÔâ~ÿÏú2¿\_7ùqò?úîqö7å³öf3.}–¨·¯—×…£äo>ê›xúGEÞ&&à|øÚ¢_U}9–ׯËo„ؼD7ô¾ªÍ¼}Ÿœg¹vI+[0T´TéΨšÚw8ú¯¡v²–½†6—ms è¼ Æ‹.ÓçH\ïMmAª˜n´šëÉ(Xy«ur7‹ËÐ4€ä¹8٬ɲl⎺ì!W䪂ûjYy“slwÊê«Òñ®£ˆ¡nq±ººÜ[µ¬|–'áõ<]^žŸÆ¿Eù$ÿ{9'ÛIÿ58Ÿ¿>_ÕŒ¯×Íþ\|þ»œ}‡MùcìýŒ>ÐQ’}mg/qxÿ—ób>ôb~Ú÷‚eðž >û~%>ñ[Ó§Õ‘º>g;¤jÏ#¬hƒyØ*¨K1°u“¡ì‡KJ¯O“¨Ÿ¬u<„}b$` ÍÔär]#•¯Í*+f’z™žy¤7w‘‹1øxУEKñ8[¶#„·F2]šÍ3–QAK¿ðW«”òt‘u––ÄÈVÚÇË'Ôê1’ÐM—ÒÒRÍ?lµ-:Bg Ér›‹¸½ÏyÏ5,Knï1Þ'ÕkþÞÑ~I?ÞÎIöÒÍN'õÃŒ¯×Íþ\|þ¹œ}‡MùcìýƒE|í‰1ÑLëâc,ßÇÍvãþá;ÑŠŽÛ'µ*¯ú„^<,®÷ñ÷–èã/¼%?¨M…ðuönu´yfEêæÞ”´T‘Y§~¢G9I7A³no•#E¶Y†tÅù ;ó)"'“ÓƒHtiŸ¦í =â&$”·N '†"xâž‘¤dDFw‘•#DRîîÄDE»3 P/œìxïÉUç·†.k¦ZÝdÖã·d¶¤ iâ&Nu¤–6B†b§‰!‚4†Ô$qÆ¡p ¢À FyÞ\paõBÞuÔ|E¾RAqäôñt_ýþ‰Y[G—SÉW_UOGK¼•2¤1'•ä*·=÷c ã³¶ÚìîÒå4-kVËC_,³È°ML&.å$É+göȦ62;)¾'õÃŒ¯×Íþ\v#ÚÜ›e \¹Ô³AtPÁÑ@õ ¤˜Ê±oL#îqHHFon+eYÖSžSöÖQ˜ÒfÝö¦™dh™Æò¤ñß•§®¼”é–â¾ÎìzŒkkäšD¤õ‘¬<á[Ä-ÇQuïqSÀúuclØÚ¿4ÌÌGŒ!ÇÁÃï1êÈt·_³%–(#if‘"‰óÉ+¬q ëgbGŒ‘¤ìˆ‘oÒäv-Á«Ýt}­ åf_$]丫¯š¦G–id–I³¼ŒÎîÇ‹31,Äñ$œ3“€ 8ŽÖÆÏì¦aIó¼[)­\À¬õ…bwO÷IõP~‰·›Sšm.{ZkfqGEYS_@ðQÆÈÐË(‰Zi™wÝ´Ò5D]¤•¡¡¼D£N‚,n‹ÿ|q&a9ßÞŒøÁaæ* øTc.¯¦¤1sԪë >Í6s1‡3ʪZ ˆX]Lûh*b¸C $2›¾ümªŽ¹EqÌò¬³2hŒ ˜eôUÍã «¦Žs¾·ŒÉ¸|žÍìu™”·ïš•7mô¾U¯)Õ¥ºo§µÅQÐãlXŠUérG‰Œ@|j}áÇÃÕó¼žËÏvŸ-Èc=±'+U`RŽ"9V¿sÂ$ú§ÔŽñ_AµÙŽw!å¥äéÔžN–+¬)®…‡_ùǹðBŽn$œžœ\œ*Å% ³È‘EË$Œ8ãBò;›YQìÄõìw»¹UžX rèš÷ñUʺðÀÄXÙ¥: †©âH`"Š5 q¨DE¨°æ{èíÖ¥~+aNò«xJÂ/êmžÜmnÌmngAK^/G‚¢––®’’Xù*šh%*²$ISÉ$¦XvÀ°]u×?fšÇJZ˜¨¨°®’7dR¤«síQ£,ƒ•#vC"Â|±O;VЍ­“KÙÞa©õÅAÍ㈻ eM봵ћûE‚UÝÓRyxÛôtMì(ªâ¯¥†® þFu-(»ŒWx­Êô^×jAù¾Í22<ügtÑ[/ϹIåÜØs4ÝíÀz»gy+.ÆòM-VàÝ‹«ÁQ¥ÕÆñÞCÆÛ½*uóâ£gh%bÊgˆôpË~‹‰ØÛ«xyqG‘ÓSܤÎGYE^Ž€·þö2¥¶ðÛuBÿµñØ÷c?âlò–:°M *«Qoϧ„©1;ûQ;”ƒ›v´ŒÀ®æ ¨ ªUÀ  €öocÄ+ª¤Ýç5s.÷Z¬Xygóß*·ӫX÷ÌQ<w¯õÒ8ÿ'Çï 8|«q>_dÉ$p£Ë+¤QÆ¥žI""K;± ª:I m'dT‹~—#Õ¸6`ë ëíhœkÐ9Y— y.*ëæ©–If•å–F,òHÅݘêY‰$“Ä“s†rpœEcÃÊf9ÓüíHŽR®{­:u€À,ŸÍÅr=¹@oŒfò܆ )£å*YÍ[(y:H^ˆb¿£°ÑwÌŽ7ÏÍEÞùñxQeû—eý§g ¾tÚZJ¸u™D<¦ëžVIéê*#v*ÆÊ9N‹¹`Á›×,K)éR‘ ãeóçÌ#4Umz¸é)<êˆF—o hý¹âêCžpv4Ð<óE kw–D‰.ìFdÛÐ%-<ÑéG }ljyôÖä’xŸ›Û=›ƒjöw0ÉåT夌ÍA+ó½|!4 ñ@IheeÔÓÍ2{cŒÎŽZ:™é§¢š d†XÜY£’6)"0èe`TŽ¿Rœj1–@dtq ~,v4ÙÑ’dÔJ›µ™ J—¸³%0_cñ]Y§oÛ§¼ÎØHÊä¹"ÒÏP॔ǯŽèÝztñè1Xy§Ó«HûÙ¬ºßq~·‹[ûÛÞ{ûÃ^ËÏ6·(ÈÃÇ4ܽb€Eé.xr¯c:Yйå7HeÚ°Ìs·"iy:`׎’"VðKádžè÷arpbIË8Ôá"-Š ®¦²hংI怑ƻÌxk§ÙÚÊ£V kìw¸V§=°Ý7\¾'VÞû&hØ­¿š…ˆ=2‘ÍÄ0ÅOCiQ¨HãB"(àE€@‹§:¥Œï~#êvs‰Û78KI$y¬2IsfHšâK^Ãu¦˜ðïêNï6²Ÿ} ª9È.ßT¿ÿ‘­úñb†¦Z¸*áõÈ$C[ÚÈ…‘­®ëcaiE~aGT¤¼0ÓŠíò4}ä^CëIy@<`O vxØæ Íi©!µnÁ+ €ÑP–¸èíÈcåÁ×zhêX‘qr,ؤ]æXìW²žç0<ñoeô%jkK[u•Mã§#ÛvË(±äyW]SÙû!'‘åÃt®ôFMo¯-#I½¯„X°è±ÓKaøb´è}:±¶þkXßÎûˆÑ?G¼5 Pû®²š†©¬ž:x¾’F°×€,ÇÚª‚ÍÐ6“²4Ór”Ù1jX,ÊÕGJ©z/ñu·½Û¤4gLTU¼„–bI$’MÉ¿I=xg' ¤ârÝÙ½ŠÌ3ƒÅ %ùÕs!î‹}{V3c9ÐŽRâ>Ùˆ+ŒŸ"˲Hy*(@vP&¨~uDätÉ'Uø"…zè9¶w—drõó„Þ¿% Ùª'#¢(® èجHJïÈ»Ã!µ³mg™EÚñÓÒÓÓE$( ynee%äÑ[xuî­½±hMÌß×0øG©Ùš—*ÊîÒª¤«"ð! ªÜt釄-<Ò8æ¬O6Á|¬HQãÄTÄêú¯lWãüxìWFbÙšz¶õJ‘ÆNñ<….ôifcÞ‡iÀiÉ€I° ô ¦Èiv›#Ì2Z°»•2Å!]ãORõ=JtïC(WÒÛ˼‡šÄc9ËjrœÊ¯.¬ŒÅUES-4ñŸk$.QÇŒ\sO[0Ðã(„Í2($ñŒv;Ù±³›9K‰»[Z²²ãœ¬ëÜ`==Æ".§½•åëö~E%•åÑÞü2^ÖïbA{t^×µÏIÃæÊÞXÌ júÒI?=Tq×A+<ÃAâ÷† 0®ËÕì} Úü³!VŒ°ª®°µ$N9—験œ!×rÍ)ºw0¾3í¦Ì3ª†š®bEÏ']`„x1Gsn¢ìZFöîÇLON58Ž"qC–ÏW,pA “Í!´qD…äsÄÙG@±ÑT ±_7Øþ–‰bªÎ*ªlŽ´Z5-;wÖ›¢®EÐûXàa»&Xh€}$Ø I<ë8Ú.Èt”BJ\›v®§U5m­4DØ^ãPã[»`§»­×žqS[Q$õsÉSS)¹,ÛÍâñ"(ÑTn¢(Ý@ÝÇaÕ™ó îvï’–3b,$Ò2-»æ$Dúº7m¥ÅéÖFð¦sðîú˜eŠ,«+36èjÙ€échT£¤ð ©bª¬ÔMW“„îô± ž›q Þƒ®¤ÄQI<±Á 4“M"Eh.ÒI#DQÒÌÄ:Î6{+.I•åBŨ¨¡ŠVŸwz¡ÀØI;Hö¹ï»ãÄüÂ)vT^ùØ(ò±°øñS°5Û†\¾¢*®mù ~w˜Ÿ–… dx­kr|Ó.ÞíÚ šuSc+FL½¹µ ½ kknÈoqn#Õù!vCµêé6ºŽ+E]¹C™î¶$ùÖv·ñŠt11à˜Ηƒöq3Í¦Ž¦¡7¨òˆNa *JI4rD”°bºÌÂfGÒX`™-®žÎUgeEg`ª8]˜Ø 8õâ‘BE€*( ‹Xt‰8c1ncy*›~ª¥øoÏ3[«zF>ñQ÷´<±*ë)¨`zšÉã§;é$k xÒÌ}ª¨,Ýãi{#Ë(z\›z–rµa6©pîVý¬§Žð¼ÝéV„†V¨¬y³1$’I&䞻᜶ Ä4ź1³[_œ•˜¯jÐÜoUʽøéÑ›ÏÕóbw¸Éò,»#ƒ’¢„ej—³TNGL’[…ø"…zè9¶w–ä°òÙ…BŽ~N%çÏ1Kˆsˆè.wcR@w]á}¥Ûºìß”‚h²ýTÂÏ™oÿQ ¶ö–îKhÇH{oaê$—¼º¯Kžù¾´~ŸÇl*áǤIòœv#SAPJÚCA w·âlt·î–±¾p¶Ò @¾2Çã·èõ;1äy¾oC.W—Ô×­ËnÙ±òÒGËü­ä{Š^gßäe·&mÍm¥àØÝ«¨EÎg*ÍÀÏ—ÔÒÇ皦8¢_í8ÆÁö29%DYÎzÐÍ™EsKEìÔôlBîÏ$…m%\g|GÉ^(M¤I$“u£ùœ¦.[3 B® àxY˜yÔ<}\qJ,£Éú±' m6[–v¥\憘K2ºF!rÑÆ77ž-ÆmQ@Þ'Nm¬ÄmCE´Ù&c‘æ z|™áßïO/}OU¸î´Ó¬sÆ Ýf@® 3)ìW±RìVÍŠZå‹åÅlïQ™4L$EäÙ£¥%]$Ž8o(6KQ0áogå¨%Ìh#7´•´¨mÆÏ:)·uêÄ/§‹pÆm&äR1àªNœtÓà÷³´;i–d{ð)•À0ä"a¹ -S/7ãïK§aœÎe«œ°·ó`ˆuG667vöÌq$źq©Äp“ÑŒ·)©®¨Žš– *'“¼Š5Þkt±èDZG*ˆ5f\lçcêZVp#«©æ²ÑŽu$ ǺßöÛ 8ÔnMÍ“TU*`ЀÀ} ³ª –bl’IÐ5$ðÆÒöB¤¡Rdå*ê¬ÊÕõ, ÂñtT¸Ô†ý®ã^uÞA™g5µOW4•U2›±v,Ç€ž Š9ª¢ÊŠ7T-ƒ½!¼†ýH;Åòõþ.=xœE6Ói;[$w*7ªke“zÖmÄŽUIâÀ2HG@ßn›â!»¥ïê?7Ð6V.W<£½ˆ•‚/Â'Qç ÊÀô[MqN9£Éú1'V6Æmܲ§…ÜÆ€ùSzÚêwwšýálÌ|®}–¥íÝ™îz¢ŠIÂØ‹†':m¼ [^ÄA-ÕnYxýU½ê3˜…U™˜Ø(’IÐ5$ðÆ}Ù2’‹z¢Ÿ·e³Q¿(=±ÙæãsO§zÆ÷Ãö`Ú?´rR·Ôv½p$t€~X›£ºmÔq”vbÈêWs8¦¨Ê¦HÃVÒ¾š¶ôh³Çs¯&a(#»5‰ÆÓvG–¯~—%v¦£ T ªªNã)<„DðyWU»H¡Ú5[9:“‚ۨ[Ò“œØÃ3X*ª>r ¸yRãÖ`â7ø¤’ê$_)ÉrÜ–C/§oXË+s瘎™e<æ·µQhÒçqçè9ÖÒå9 |ýQÝ™KGKå*t£HÕ5^RŠÆû¤îµ¶Ÿnk³’ñ‡íL¼5Ò–6¶õ¸‰ŒÍÒ6+ð¹’¢I{Û¨<\ñ#N£ÊVzºx“©>SÓ„ˆœReóNéq´ŽäDRÌÇ *€I>!Œ‡±ä§r|ݹù¬)c!§qĉ\saïßÉ ¥¤‚N––%†ÎêFƒš«rOŒ“«17,Ä–$’}C†ïÐ6üÎyº"¦Üá ieB9ÝÑ0¤_¨â.÷×ðcn&µ41tÉP úÔF'ûÅ~?p¶".S=¬#O<ºôw±]|g•ÝÓ¡F½œé¬“w/¨ñ„_º‘ü“æ÷©Ù5z,ª:8›uóq!^ׇtÈšj9GxÔô2 ‚Ú¶}N¸š^8f¾)k;B繓Íú‚ÊO£®šãSˆá-Œ£"­ÌꚎ畺YPxr¹æDƒÂr/ý|x¤Ž×sä¤ú„Ûè=áæVÏnþh¢½þ”¥ín:rÜzn:޽Äçš|Ÿ¤~¼m´»Õ‘kÍY\õsŠ*ùÆë|>áv>‹z¾¶mÛòtñǽÕÊÉ{q¾¼•ÿ³¯xb èq¶RZ•WŽüè¾Nk¿V½å¼þ/z’3A>q$ ÷J(’˜q·)ë“i×¾æ6=<˜ââª{“®ðMðZvÌ!ºPî?šÖ?rGžøÙ®ÇՙХU~þ_DÁY7“纅:÷(ŸÖca¯-0¹¸1ÄêwÆ[•Ðe4âš‚ BÖÖIZÖå%Ýäsá1>+ >ƒží6YDMT¼¥K.ô4Qg“ 3tC?ÂIk€ü’ÊêSI¶™ŽtÎ&—¢ñÑÄÅaMÓ'Lòé}ù81nI# ¹‡žIN„¢užý¼ƒ ³æUèÞ'¯ÄOF(òéj#Ž6wb¢)fbxª 'Åì}º§9‹¡Z$n{kÿQ"æ¤[‰¹C½Îx™J˜aŠž4†Ò£HãPˆ£‚­€Öäõ’I×Ôä˯V£à€ Àz’>ƒ°°îe)%‡wži4ú—äuñ÷.Ž‹xð¼1Tl§W/)›0úT1§êK¿›GýÂìwsÌ&±çË[Þ×¹«=‡EÇ+¯ˆ¯‹ª:N¬m”œêT×V•¸éÌTçÓÏïN¢d¦§ž¦O[§†YŸë"Bíñ)ÆÐæmUWS<Œ “Í$¯nÒ9v¶§¤ÿ¾%—xœXœ*acÇaª* ŠìÛ¶é„õ±ÑTQ4ƒ~(NõDs¾á;¦bM?$Å“ÜvVF¶÷Ð&š*xžyäHa‰KÉ$ŒGÌlÆÒöIïÒäVЕlÂE{ìhœh?œ•n}¬cFÅng5LÒ<’IQ<ŒZGw.ìÇ‹I#oOMÉÅ™ÎóãýÕòÓÇ —Ä4å­¦6d«óv(¹:plõR‚°¯ à¦ÝÑÀ òisÃ{tã$Ù¼»#AÚéÊÔÚÏW ©¿AÂ$ú•ÔûvoT ›` z®u·ÐvZG) S¡íxÜówH2)u‚Ö>=zqÑŠÖ²Ÿ?èÆs/-š×=ïÝÙ>ô_å¯ÓÇÜ-€‡s(/fîõsIsÀîˆâæéùÓÎÞ× «:ml›ÕÑG¯2Þ.{‘§¹ë§ ß7½.Èù²å{3R7·d­’:Xúí~VSäÜ“<}pyEMCÔHHëÂ@ÍÑ„¦=XZSÕ馘õziŽÃùcÓÐæù‹‹-eE5,WKœ’W•Õ½²;Uªh-¿ ’,¿7Ÿm6Y³ñU/)R˽ Däèº!ˆŸá$µÂ¿&²²îcivÊ¿;‘D¼"±äi#6‰ù»Öõé@þÅüE;¸y¤›­ûçþÑñáW OÓç×ÄN(òù'tHÑÝ‚ªª–ff (PÉ'@¤ãg;ÇÇUœêÖ ´*mní™ÆüO#Ó›¿'#"EŽ$Hã@#B"(પ¨ ˜m©ãê±·ÐUK²¢‹³ª:É6]8ã.ˆEQ¯EA~¥ üXnÌ^Ñ·“IÊÍ,º÷IMx󨶾=u÷ c¢ä²*¯9$“_ç¦y?ͧX¶†+[š}:±´Rr™¤Â÷äÒ4òsyK»¿”Ÿz{}±Y–Ø5A™ÓÑÒQG+ y#™ê¦avyc¾äa#W™!È@×QØc8‰IZ¬¦BíÛj[Ä/A»sÀ\Ö@Ãv-Ú(xRÒË¥û•lg‡E¥Xú‚†øq&ÃçÐX¢¥¯ô¨ä—«‰Ž6·“ŽC˜!²ú›¶Šw.@¹ t›Xۀ㌓`³\ÙÕ¥§|ºŒߨ«]×uÞPžy$}Û•.#„ÚÆ`l_AM•ÑSPR''OKŽ1¥ÏK;4’¹i%k ùšÚüÕUU5TÕÍ< ¼²°UCÆÌtD[³±  ±CÙ9B½6G#\©¯WzÀñ§€ï½ÄI?8)#W³%fg5\ÒHòIQ3±i%‘ËbyÍ$¬Ib´Ç\Zçy¹íýÕúÑÑåã…Œ¶ ¥f¶˜ÙýŠÌs{J¨°RŽ53ï*5ŠÄ–•…›½ŠFëÈ„‹ä›7—dqŽ×•©±W ©¿AÂ$ú•ÔŽù›æQ:OªM°Í äðšŒ×/Š×½T,ÂÛÀ¤n${Ž­Ä7¾–ÔéŠU²N¬IÃE?%—Ö?U<¶¿I)ev°÷$‡Ëh!;׊’ž3¼,y‘ Ôt5œIÃíeoN¬f²r¹ckëîšÿ7Üþnž+{ÞÚ-´ÊòÐÜV×;V'DmÿQ-˜Gõ€4j£ ÚÌÃ:›•®¨æ)<…²(¯žSíg_/&Sñ9ÄÊ<Ÿ«žn6Êm̶Udx£¸êßV>b?¸TÑrõA¯vš(¹½÷tuM/¥õÒý8§Aâñ‰N˜ÌšÈÞLJü¤²I©ß‘ßßs˜x뮺ûܪª¦¢‚Jš¹£§‚!w–V £¨xÙŽˆ‹vv!T cj»#Í?+E’±§¦Õ¯U©œuÇp¦ÓNê|$ïqQ[$ÌÖ;ìIÞv7PzÉé>/‡uÞ$³“ú@ô¾ b RÄišØzÜ×ryGjQqí‰Y-m ŒØÉ®›÷X…›ž]wW’åÙ<\•  I3s§–Ý2IaåÝP±ƒÞ ù€ áéÀP>aÛèymkeÕÔõŠ ä^ì£ÛFÀ¬‹®š¡6ê6=˳ZjÊxç‚@ñ¸¸#ˆëVU”èÊlAÐë‰ë)ÔpÆÖfñ×N”°0x bò87V–Û¡Tð;ŠZç]ZÚn›ûƒ³ðòùÖ[‰ùê94þg»_È7.|@â.÷pÆ{/'KQ&£r[›ßsP8k¦ž?{›E¶yV@­ø¬¯)!qÜÏÿs(ÞÛévi×¹„nPmÖf9ÔܵuG1IäiãºÓü{Ø¢¹çpؼ¬‡‘·FÞcÎ%SÁO×ò‡L*ô|XŠÝËrŠšÙ£‚žšW *"–'õ²tIÙîÇôÔb:œÛvyÁÞŠoŽY‡¯u(¶‹K7*¤‚ª¨ªˆ¡Q@UUUUE‚¨€ ÂÆN§AŽHc“\n/WÍ3ü?‹è´Õ•TlZ–ya'Žãë—½o88¨ÎsJ¥)=d¬„XªîÆêa¦÷žþáìT<®} n߆yo{nÝD;ÜEý{vÚ÷×è¸Nôbs¡ÆÕÉ»—TøÕSM;÷Dÿ6¾/{U•´´=UlñÓA}$­asÀ–cíQAfèQÙ&j‘%&K¿KLC#Õ*¦ã¿k¡G–>j¸¨®y™·NûK9't›·¶7êóà æ%›¬ÿ”ta#-ŠzBÖÓ5°õ¹®äòŽÔ¡ãÛ/:[tSÇ¡“]9K¬BÌ7Ë®áÊrL¿&„EEV*³µŒó[Ã~«êlƒ¡o¯¨5#è€Á{ð÷K±ô;ÕÕ³éÜ Š+ô÷i i¥­Ü5ñ…·N†*N‡e-©Uxï΃ +=ü}í¼ÿ½¥Ûì»#w¥¦A˜W(!Õdݧ§r9¢Yc#Ah£ñ£KðÏö«0Î* õÓ´vä ]"‰M¹Ä9¨º-ÛV}ÝéÞ퇒I{㺾:Ÿ®oÐ>*_NެEN[6ÎÖæ“¬4®uk "/KÈæÊ‰À]ˆ¹²‹±ä;C–•Ÿ0d¯œD!¥Á¹¸nuGnQQ-¼&Ш ÐÀ˜SqêÜcx`È=5Áãº} µ%eEµ’¨EÞØÚч;¤^f°ö¤7YÇF*އc-妋Oá\ñ¿´Uñkο‡O½lÇ3¡ÊiÚ«0©Žš .yÎÝ bï+ž;¨¬@”6£²=faÊRå†J -T°kUÔ-ÿ„‘qR-xacÅ–IeV &«’f;‡§Y£û>âÀ_)cÄIÿo GlSQ³žÙ½«¯äªk££$ºüñ*è{”G€n¬–Qß*ÉmÓ—åÔy]2RÑB±D€^ÀoÈÖ±’W°2HÝ,x *…@ª>d1¾q¾q¼zýרx9,’™Á•甃㙕mâdEa}n|Ø: V6‡Q.þdúG én ÌäëÄÝw=/ï[i» eù8’š€Ç]_fRÁ¯KNàÛº2žêãéq›"žiÎö’»5¨jŠê©'•®I;¨·¿' c›w=ê[Ü÷Äœ3<Þ¸l<ÆFƒÏ…[è!¦-ÑŒ›g«s9Ö Jw•ͯaÌnüÞÆ€ûf ^É;°ô9HIëVV€^ž÷5>¸ÂÝû‹x(¾ð¶V3I–†âic4ÑºÂø~®k)ôêÆu'+™Õ·@pƒ[ÛqMº¹À›u“}oïS5Î2ü–˜Õf Xî'§and1tªÞÜĸiì6§²5viÊÒÑ^ƒ/&ÖFµLÈ>Ÿ0#u[‰†; uÞ`7ŒÕ1;‡O ðþÈöÇ⯜ž,u'Ó¨iˆâ-ŠZ&{Yq³]ªk7*sôTš¥mS8¿´FÉH½¥•zT¤r)$Påôyl MEAÖÊ9ÎÞŽnò?Fó’l‹({Áã ãŒ¶B’ž!ü1ƾâ*ðèáã1™=‘¼‡ÊÔO&Òi_N÷-§‹]=éúWàÆÙíí>Ì8 ¦ksW‹•1»Úž‘[ÖÍNç=žAwZt(üžìŽñ¬‘3¡Ì³š‡«¯•§˜¨UÖʈ·"(Y#@KÕo39»³1fytûØáý£íÅ…Rq 9kiŒ›g«39Ò HWk^Âʃ‘Ï5ê˜çÆÍìeL‘ÏR‰U˜räoC=« Y~šÂ÷ïtûÃÊ¡íŒÊ‚{¥]8kç*¥È¾— éáÀðÄÈ<˜›†3ɹ*Z‰5îqHúXžb_Ó£KéïN3u·V6ìÌv¿>åÉ/Û¤ –=ÅcŒSŽ~¶â0z²s7}AûøñI—<¬¡T’HrO‹9ØæYÑ*sVzHX+$ l¸¸ï·8o+?\vãA—Qe zxéãwG9Ï…#›¼õNIAe|ÀRx rmoÑú:èÁq÷z ‡2¨‰&HÑRE›ò ,Œ+X^Àƒ¥ìÞ.Ù½ž­‡8¤ž¡cä å$!_|–äÙSAÂÌÁ¯¯{Ã[â>ôbs¦6²m̾£]_u}ÔîÜù½éÆyÖëÇe-ž­ŽÒå™dŽ™´ ¬ *ä@.æ(‡%SfºÃ*n¤ïêlžÌæ;EXËG0Ãa5L—JxYȰ’Kww›“@ò.±°ÆÏìnU‘">à«®š¹W¼6µ ŠåbÂ%å$±ß B.âõc’XÚŒèÅz:vî²Ê8:ÅÓKpvèæïµÂµÈk /`fºâ¡®Mc~MjÕn9£†Ö´ƒs‡Î8Ù[ÆñA_æš`l+,‡‰, ºÌÕ®Ek‘¤„F¼2#™ƒ‘@Ë@†qmþÃé0¢Î¯ÂÂZ&5M!c¾Ì').dŠ!‚Šd”­ª;Æ…IŒ¨%²KÑÚ#'Ÿ–Œ¹yòBËÏìf™ýñ+†°ÂÖk­êäÖ7äÑö¥^ãš0ÙmkH78qìã‘%¼oÕðîi¦²À(x’À« ŒÍZäV¹ADkÃ"9˜9¤ ±ägßì<ºÄ2v\:ŠÙSZÊd6K!;”€’^Ò Ía+f|†WºAÆÁ„¤sFãJ–sI•$¤‘&L‚<Ò$H3Ô†9ÌEq b‘Î!JG9ï{•ÎUUUã/üŸü’WÆú ™!Äffô¹’d=-˜‚VÆšÖ¦äQÁvkìÌQÆÀ™&x"UeþÃÊ'ÙÚa-¬XÚ+[µ `15ùÒVLrÍ eÑ*ˆf0µÅâ#óòK¢Ë®k·¨‹Ÿ›/-Šžêw&Ië"`¼i/óÈE{%ÿþP5–ezügîd9_Ì~‘ä;±öÉOý‡xŽÌfÞ‚ ‹UV¬ŸÚ;>«à!ȯ3QØvFíØ(è¡i, ä$‡9òMÅZ§œ…oÔ~Óí/­‰‚ñ¤¿Ì"5ì—ügî`«,ÊåøÏÜÈs¿˜þLyì}²SÿaÎ"²¶gH†µ5jÉýŸ/Ÿµø ‡¯3QLé•¡)íØ(è†pëÊä$v±òCâ®'~‚½Ùzrp×DÁ˜Î_æ?‘ŠöKþ3÷0U–ezügîd9_Ì~‘ä/cí’Ÿû(pœsfˆd¶±`gëØY;j &×±4‚d1–LbÎ2Ľ]±„%×+Å÷oýÏ zw9¨äúLÓ×Gð‰çb¨PXVÂa^٠׈aÃjUc†P”nzÓ¬‚…ñÞ§ŽéI*ª?ì6i<»kaÉŸ4ú]˜ÂùK´ÄÛÞýÈü´±Žr¢-ý¡7'ÛL,ÃäãDo5,Žt‰óvÊy.;8Ò%òèr6öÀU6"a®Æ v¸%†˜jC2yY`4ûHNÔ§Þ7>3Ó&FAÅìße:º`Fßÿl7îeâB{£ÿÞzçâÌM#¾ž&%<9=CŒ*H!µ¿n=˜ÈÆ;å|1¬RÈgÙWƒû ¬põ»Jêû14fåÊ¡8Þ#Li"#‘ PC hVx‘’p8zÖY¦üCî¢ÜCVE´ŠÇ"+ØŠ¯Ø– llø#ÉcšóÄ<9’¼Cý°ß¹—ƒ7Í·ž^ê9¹}Œ×ìúÌܹ§£¿ŽÓºX˜‹»• LXX¤Ì…ì¡ÈÜq%ŽpõŽèŒ+d`H±«•ÓWö²ö¶%¤"j]™bBmÁ,~b1:$¶æhfExeqÊ ÝxYX&ÜQRæú›çÀŒÇ¾I°ìâ‚L•QbÆ\9V4Ò$[šD æð…±yݾ˯4ímêßìBØr¹î7o™ÚÞÈ›:ö‹ ¶÷2ðÔý3^‹îù*¿Ê‰Æ’CvYäò1‹—§'*té߯H盫‘v›š&_ªz±®EùUb¹.þìÌÔL¶ˆŒÏ¿<Ä2çÝÓâ™yû³Ï̋ƻ–ÀŽUÅ=¤‘ÇkÛ’,+ãË3Ò¤hZB¹ÒFdŽ#×7/öãHóE²bbKYìf±“8–²‰iº„÷µ7àÌŽ} ¨Anm™ƒ3^6ñ!«—R¹ý=öDú¹93÷}=þ&=\ÅBÆóM¼ÞtÔÉ*¨Þ¹³ØXï3W&&Y*x©#F.áªf]WÏf‚3bY-¥Z0ZžÆ´¹À²„}aR 7¶•èa”lþ÷J Ìâ]ÑUZJB9ŠÁœN•JÖGFŠÐ¬ZˆÏV‘Å0ó¹ƒs>Q:¼,s»ú»7³?sÉcS§£ÓŸŠ/OhI1;û÷“5÷y¶¶ôûºµ|¯‹Ò9HµöUv¡"5üä\E•Kå"BÁÑÄP5¢cÚòHRˆá´_Øw„/… ;b-DûHí:¾C#M©†UÍ%-H×F#_3Ý#5%·{ˆÏùV¸UýSÑŠßwª1ßc¯›ÄvjMMts5–– ¤Ñ(¨®ò»ÒåèõoDîéŤNØ –•µ òv‡>ÂúãDez6TȰhQicÌ‹`öi È_ì<‘3g°n*mvö·9­â’cVã64öÏ5»¤ÙòÛ;i½º.åÏØž7·/N­¾¾æ’/£®_CÄðws1Î _¤ÔÍzòùoi–Y·¿<úpÒ7Ú½zgß“‘3ïãLåùë‘Ôíîìéíñ‹˜Õ¶\ù^Ñæ¶´¦þÎÆàw7Yý‡xª²·çXáËȬbÞ—2²TxâÜ3ÆîŒf²‘ƒnzžöµ|GcS7<%kS»79Šˆ™¯NÿOˆ$vzFQ‘rïÉG.]ÝzzS…k²EaÝ-Óä³Zì¦Mèß`Q®]ù*g׀ˈsE—ÑLr¼2#ÈС8 5ia­ Š75ì{QÍTTEàâ2¢ÊäF“¬4yÌÄ N \2„£sH2ÎcØäsUQQ°òîšìk{:žkkc™ì馉¿³¸míÍ­ÒíêÓ¸üµ/z¶Èñç–Yèr·<ºåž]Ù¯‹79\C 4—ôDDÝEÓ%óº;œ¾KQ5"'‹KŒÃ0b¡…Vä;X×ómZIoD›$•^bGr¹èîˆ1\&aÞ.[!|ÈsÞÍd&ríj ZO.¢½îMùÓ$B.Ø·6ÂÁ…¬xL“S]ý³Ø×¹zú\å_sÍÓÄ&5½tHi¿ø£0ƒDò²Ó”Çy³W{‰×ŽPÌ GEkWD×£É͉vçÈWèãsWXŽDÎ]€jHÒŸØw‡ìÞ, ÌÃi1õw%ÖÙÏ‘4[hõ36CkúÞ6Œ›úD÷¸FAð'åä¸:QTǹ\žžˆöýžËâVfˆ1ÉcÞ¹éÏx5zäïeh4·,õ.}zeÆ5©$ïü c±òÝ(Ös£CsÿÜN’!ÿàáÿ›ý‡˜RóOg[Í©åv³Þí˜I/q6ùnÁÛÚÚ~÷5«p[MÄOÝÿ÷>'î9Zˆ-ÄÉ3Wrå¥o™6ÝUQ?‘xlC0Î%í­TEX¬:%ÛŸ!\F+ÊÓÉ8m+ù‡»h7£þû™E¸j©”³à?Y±,–±jÞ],{Z\àÙMƒ!›ÛˆÄ0ÄFpuÍ…V'£"5\¹û¾Äܺú~§G7[Hí—7<¼“µB½}Ä&~îYfüŽL”‚cÕ= 棕<ÿËÆ —y  ­Èv½ÌH÷®ZIoDíáŰ1#¹\¬l†‰ÄFŽÿ°ïV@üë9y5Œ[ÒæVJ[†xÂ=ÃŒÖR0mÏSÞÖ¢¯ˆÙ¢.•·Ü]Ö74ô.J©ôSÏâG5UQQrTTîTTîTásr;ÙL¨¨ôò¹áꊽáxÜÔó5[ÝÀeÄ9¢ËŠaÈ&9^äèPœ´‚0ˆÖEšö=¨æª*"ÿaí¥,·’ª,gUÉ|w=Ñß"’Ä3Àâ Dp\A9FâoV*+†ÅòPìjfç„jwfç1ȉק§Æšufá…ëš"e¤|¦Iå.~TG¿ÍÑíéž~,"w‚<5U^÷è ò—SuvÒV1˱>kDQ—ot/ ^Â;ûñ„HÏ3Æ[&Z9Næ9è{ÈQn¥1ƒlŽU‡ªÕ{c´m! Dq_ÃÆì³ÜÅË»6ªµrîéÓÑâFå×"±õ{ ?L®œþ¹¢dÖ¦œó_l@°Í%Í\µ+XŒ$‚Î}Û_ZG«‚‘n# \F‰üÃÔ£)>o¶n%¹‡Tg°Ã9Ä—+A"rUñØió¶( '”ŒnXdCl9½ÚLgaBÕ!­-"ÓÈldG ‘¢E¼ƒA9§Yc{žò cµÒôÿ¿ý\ã³*äÌn»îMÌqÅ—,1†"ñ ó &¼‹Ê²ghmÅ—%ÐÒ G¿Ì[ Ã0GyE òf*HXólàžMyd"¸(hÕ¡§aãÆÐƒc㜢BKÝ7žy“_v_D.^k¯,üùgӻĿ'íÍ:.CPŸqÉçkTŒŒre›-rûTñbÊ._Og\B¶æ·sÞí¨Kccm6ùnÀÜÝÞ~÷7£l[óz~#ž>g—Û *öÈ sYXHvˆñó/ëäÊp‡ Ñëã̖Ȳ9u¤ßßÉæ&ÈɃ̉#Ê øW?—‡[´3SÈB<²¥DÉ$»ÇãI›>Dj+Ù/øñÜÁVY•ÿ÷ã¹æ=6:G½±¶K|hÁg$»¸O¬i·.Ä5²! i_¼ýàÕO~¶ ÃÆ’½Ž(Pœ"¢uxXç{®ÍìÏÜòXÔéèôçâk|”×§SœºQŒ G)ëÜ¿*o™3vj©—Šö#NfÅ>“ ÑHå‘ÞœqŽ@¢í¼ÑÇ2XÀG5^&JÑ«PÄG|Þ‹‡Ú§åðÝp„¡xcµ‰cj!YÌ–±] ‘ÉÔ±¾­AJŽöˆ B¸ò}`%Ä9¢ÊŠaÈ&9äè@œ´‚0ˆÖešö=¨æª*"ñ‡oÔÈkjx%ò×VŽÎÑŠ/e;™ÉÏI†Ž@¼r˜o÷÷æÂð´twÕv’Юz<‘ÊÙt­dthÞŽ75oêÒ8LåØw!`‰ÄWdš• Š¾uDÛÉ3ô&§eèÍ}>!±®Ð¥vά³É§ö't_Ô½} èT^¼4‰žOc^™÷ääELýßOD²Nãq­c´‡#ÇH™Ci ÄV¢šT£4q"ë4ƒ #GíjüÞÅ.É3NÄD_>K‡)³Lý ¥¹úrOG?Óý>§­­ˆ¤£²¸«–¥k„Y¯»kã«Hõpy[ˆÃW¢0õ£hÊOlc–Ù¨%¶æÖö®Á(¯64î .k³¹]ÝK±½½¶m½§ð?Û û™|lAõ5 ‹©©¡s‚×jDD]HÍ]:uã ZÏ.Ä ÌKEa4ú]˜í"È’]°°†&ØF÷èÞG奌s•æü;0Ã8…yE²¥äU2ʤÁ*´…U-lzjí±¼ª½]íŠò*e—“§¢wp¼U]Äa‡â¶ ¤aÈk!‘ì"ŠXXvŒ…LÑ•¨VŒ¤b?4i™9~ná;¿ctJÛ( +ù¢I²|GˆÍ·¢’…Ôf9øÍhÊוDQ#³Û#Ù«»=Vç—\³ËÒ¼(WÚµº›Üš|®©Ñ:ç«?s/YÆ÷oÓÛÔîníò›"eîþ·ïêì^WkPræw·gh¾þøª®¶ Öâ;Êø@ÖBìćg*3Ã4Q¦ÌQ|°Ç§—fé v¼ä·£;L7f­]mcµ·J!FúYÑ®S°º“¿VGõÉSW®YæÕÉ>«²É=9zÌ`³»4 Ä´ÜÜÕ“ÉŒ5åžØó2u£†H)»@¾#ÌÃæ==þ1h£1ÆãUÈpÀ6 ‹"ed¹gV±Õ4©F4™ËYŽRŠâ=Î^Ç&Nc•®NüœÕÉS4éßèñû‡,“âš„ÜóËWµóg—¹â—Ùì ›zÍÝÎox¬½æ4m³cOmr»ZŸ-¿¸›ÛBù»wI¿ÊöÍE•W3µ¿Ëö„3DßÙÜöÎîæÖè·4éÜfz‘­kU¨Ñùûœ¤!Jç5s\Ñ\EOqÈæå’p7÷és]—§%Ï/[E{ËòµOYmÊîïòÝ£39}ý°ïlïmîí sN­¶g¥=ý  ‰/ VÈ–ñŒ|£¶Êæ#O!ÍDS±bÆŒ„"¹é8‹¶!µ¼IG&K¼÷j÷kjôôµÈ¾çrõñ1­WhTz•WJ£Xôj½§G¹3îWtê¾,YEËéìë˜VÜÖî{ݵ aìlí¦ß-Ø›»¯Þæôm‹cQ¾o_Õ`G®½·9š}ÁVsŽ}?—%] ¡4 ˆr¼‹(æB£Ô‹Àž~Cs_Õ"dîÿÕ"õóúÌ0CÌ ÉUá—O!±õÄedÙ«aÈtnÑ…LÚ×"© ÑÈ eR,â{û`?®òwÄETèöÌ÷[¡¬ÏÜò˜äëèôeâ–_z¢w9{Õ:åÜî\šˆª¨ž,MHÖbØP ÐÄV¿˜lŠ{DŒÁ9ƒ@¼w²Ôípž÷ìübD\ÕŠF»Ü]Ç?/î\Õéô8ƒi^]‰õ³#XB>—f\3²Db홄 6Ì6?AFñ¿-/cšª‹ózæDnªe4øÖFìK%¤Z·—KÖ—86S ÈA¦öâ3xb#×.§ù#½$ ÚBeѾN·;OOk—z÷5íråèEEõ•7qJ§²ƒi’÷G|ŠùB–£ ˆà¸‚j£(ž¬ÍF;ÊOlc *Tœ+ˆcÆo4‰ S,a4q b‘Í`Æ6¹ï{‘­EUDñHDE_‰¯N½¬W/ÐF¢ª¯™WÆVgå4Ú•=æ5îuV;ì{¼/RÒÀ»óì°Õù§Ð1oK™WD’íƒ÷ G¿@†Á³=,cZˆ‰ówÖ@üë9w5Œ[ÒåÖI[†xÂ=ÃŒÖR0mÏSÞÖ¢¯Ƌܺݧ,Ìò<ÎMY"9ZÃÓ¥š«ÓÄ7¯{˜Ç.]ÞSQ}f³lÃX´à™2BÈtƒÙÀkí”䔈s¶qe°²­$½ªq”£#JÿcE–E•¤&4¼2#È ÔfÂDia®aFFµì{U®DTTâWíc}ÍÞ9IŸ_aTLúä›™®^æmÍ}Ô÷ÏNåñÇs•UTUUꪪ6檾u_OOýýü¹ù¿‹ ¤Ò)ðåÇ) #s„4ñA1«ùxúâLáÇ,-¶)›-x23X¼?ÙwTžÊ¾‘ês´½}«¹wy:|œ¼BrõW Ž_¢­E_Y…-, ¿>Ë QOš}ô¹•qdI.ÐX0pÄ{ôl3ÒÆ5¨ˆžþ²&oìö ÅM¶ÞÖç5¼RQìjÜfÆžÙæ·t›>[gm7·EÄOÝÿ÷>0fª½zôi^Ö§ÐFä‰èDËŒ ôã†>ýÂùÀ“]4kÒ‰0¬£ëaP2aÑHÍÁ8z´¡(•á+Äí´sQu¿†eòªö»Ü]Jïæ¹=f$“šAXí!Êò½±áÞÚDˆqÊ‹!HºCÑ£cZžþ¸¾,g…„pí§sÚÎ^Žl[©lE`Ȼċ̎Õj1Ò6‚¸¬à¶[÷#xÕz0Ïk}ÆäÇåîùOrõôåÝ—m+˱>²dkGÐ2ìˆfHŒ]³0&Ù†Çè(Þ7å¥ìsUSçGÖ’\[²Ùs:6U‰|Þ¤M½ÂëHý  Cjòùu.ØwÔMà¬ËÚ½ŸëÓ,¾¦·îzÌMHÖš¯¿¡ˆ­g.è÷à‰ƒrH¦a(å©Úá1a#¨ÈUq/\c *Tœ+ˆcÆo4‰ S,a4q b‘Í`ÆÆ¹ï{‘­EUDñ4EÒ¢VæËºÆæž…ÒªŸAU<þ9,ùV¸nDýSÑèåÏ¿ª1¾çNëÂñ…-, ¿>Ë QOš}ô¹•qdI.ÐX0pÄ{ôl3ÒÆ5¨ˆŸ7ðÅ ¶xzªÆÍu‹ Á—cZÒ£^ç´Z!ÖÀcš´Çq\ÝÒäàó(õ/Ñkš‰üåû>³Qrú»Fž·5»–ÏbÍX{;k¹Ìöþæîë6yMeßÔdâKsË!îg–T.^om£,üÙç×»ÆaôÉÂÖ¾œÆôj}Oev}=WŒ.3 ÁІ[íc_ÌQµi%½d"l’Uy‰Êä{£¸n ÄEp™ó{Bc&H‹ˆÀIy“‚éM+ÊÔB,|©{"sœÁºd—1¹˜šøk—¶N¾•c‘>ÊôOwÖVÄ áÞVÜUËR5êñÇ'ݵñÕ¤b4ÜÕob*hå[Ñ[ÖF|‡= aç×ÈŠÃHд…j‘ÌŒÍZ7®MSdˆ™í¯NTlU_¢«š¯¥W>ÿUK§§¡Š¬O´Þ¾ï¬Á’åœÒ¥J˜vD™2 óH‘ ÕÈcœÄW¦)â¤sž÷¹\åUU_jŸ¤úÿ¿XƒÅ+4Tör¯TË£ž®jýEEEó¢çë1…#˜e•a[Wh#Y˶=<©Q$°ŽR!Ï%äEZ'±Ì…!­Kó~}4·’ª$Ë«’Hê÷G|ˆeE3€â Dp\A9F¯Þ¬TW ‹ä§/ÊÍo¸™5ÿÎr¯¬Âïïá5Ï¿¶”вŒCÒPlIô¤ŒqáŽIrȹÊÁ>L‡ ¦"»‰¹}Ä~8ßµÃ÷6ñoôa÷ï|àbxÛÜËIs*ÍKµ´Œ[ñF¼l};…üì“ ©7öûb״ΙôEåæÍuçÓÝÉ3ú èõ—±pºPq\™Œ…bÈyUãŒrqHrƹ¨Â¾,†\¡"7ß×]5áH°,m*ÌÅsù‡H¸Tg¨5…ƒ£–‡sŠÇµäŽƒÄp¸WgžèÆNïk’meîüO<úwåæÍ|@W.k¥ÌþÔds= j'¥{ׯla9„9b¼,c#ØÉQÛCc- Öª!‚ÙQcIAÄ‘DÜÜß›ò&!·ÒÝÌÚÑÉ £ž‡e_¸ýäsªFîä²kµº^‹ç²÷WS$ôôE_ ‹ë1ÔG-”aaÙŒ¤bH,x¯»“Œ*» rLˆ3•­V ò£´ŠÕ0ÑÞþ´ÿN>òâÿk7î¥ñµ©Ÿ±<Œv~•r“§¹‘Ñ×?¢¸6\–ã-›êÚ€kô‘y ]$GªƒM‘ʰ $9¯lv•ÃHþoáë´6¾Ð¦‘YÊ ¾"”–#šé;Û‹­ÛÅji› ^á7´‡€«—έú®cšß²åDþ_Y`3"$Ì)c ÊF ò¤6Êš[®TS±bÉ’¢9é9Ì©¶"9¾þ¸ˆ†JH†¤‘…ø²y]ÇŽç"¨L貤ÆR Zõƒ…Wl¤k¸Šì“R¡‘WΨ›jˆ«èMNÉ<Ú—Óã+sMHuUO:"Œh‹—¡t»/NKèãý8á¿p¾p(mµœ‡o*¦8ÑÃHïÍd‰'qY¯u…¤ˆÐ¹ Æ5„‘¸Â+†áp'®y0Œråß“\‹ÓÖa K²L™ÐBg.Úª}Ux´‰roÏ™Õ6ʏgŒ,yïë‹âFxXAWÑÊw=¬åèæÅº–ÄV ‹¼Hµædv«QŽá´„ÕÅgŸ—’ת¿ªz1Z™wõA»ìuïO¿Ü?÷Ü\Cš,¨¦ˆÒc‘á‘@Ò„à0Õ¤„F´ƒ(Ü×±íG5QÈ‹óc,Ï3IIeQgæ#rÌe+™!7«ƒÊÛÉz4n÷Ø)mxˆæ;£˜åc“¿'5r_·â2Ë[ü»òÔˆ¹gãÁ’åœ1bÅÅxzD™2ÀÇ6ðÈcœÄVŒAÚâ¤sXÆ5\åDOlqôŸ‰~òÍñöË>æ_YŸ’àêTýSÔjúz!öz÷' ÄJòïÀ²‡|#è ·¢L $F.ј3p$côl#3Òö5ȨŸ7±”Y/3*)–P9~ý#Rê+^2&É%@ $5pFŒ‚"´¬’ŽL—yîþÔŽÖÕéék‘}Îåëâ²ËÈF~÷ìyý]9ûÞ°â2¢ÊäF“¬4yÌÄ N \2„£sH2ÎcØäsUQQ}ýgUÏü(r`M² z$À¾, ô†>òÂù¿kK)æ[zéÕ’_ÌiØ ñ‹Ïˆ2¦hÊåž"1’¸oLÚ¥UEòJÜþY6˜™§¥3ELý(©æñ52ø›ÞÏ£×s?sÛåçîÏÖ`_¤ì1÷–Ϙ3¼ àˆSaH4Iåâºò¢JŽGDi1Í=…€‚V4‚#\ǵŠœT¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<ÅØbþh£ºYaÒßÕZÊVA|’Gƒ,ådvàŒæ ÚC ŠíDb/Ì‹+«Còµ”õó-,dí˜Ü¼øä—,û1ÆYÚŽ"l!Ÿ§HÆ÷ª5|%ø]½4ÙÑûS–šJù®§Æµ4:ë’ÎáGék Ç©×0‘k,«ãGc¶W¬||SŒiëæŠ@#¬$-­ÌbIг@étµŸk9bé3eɆ(¹2oj• &8jñ¼ñA‚)Ñ*)ÙhÄG1’ã2v!…5±ä5ÁlÈq% ÞÔ‘Ö&ˆr.¬0¼¹ €˜–¬ñõnì æ–Æ­ÖÔkÜC(ß"ÆÒ-ËœòÙ"A#Nƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢ø±z²ó¥ñ0Õ‰ØøåŽëHõuV’Å‘Îm\kºk‘äF´‡>!œºŸ;)Áÿrû°ü`ý×î$ñ`érXU¤«j¯k9z9²©"=P„"ï-xI!Èäc¤8®Ä5h™ó~ÞšìiÓê¹­­Žc³ìfDßÙÜ6ÎöÎæÖévõiÜ~Z—ƒ/jô~¯nYeîmý¿sÖa?÷÷ðšçç#XC&̸4Vó"—C µ&-|ƒš ׉ú Æ»Aö;,ž×74à0±”/ö±vÝ`ÿk z·?ÛRåÈ®wé›ÏÆý%¬64QÊT‰ d4fÊkž™>b^Œ'°ËL× ¬sñ½­ùa|/š°•ñ™ b+‡²ñ,æÉ´´’Ö•¯‹¸ÍÂh!Œb J°•!àŸÚâ Y,Ï;xTTS÷y†Gø î/*2þʼnW~d}×åÏÇèþ3cúÁÆ$Ät5×vnÚè"®»—.-”¨Evl¿í¢òá,=:kOZBL„)^äŽøøk s\ª,AMEÎìó<ŸkXÇÍrû±ùŽ_˜ÝÙßî£Õ­^°¼-ÍËKLEx)Òµ˜„nøéfÓÖ7elqòÕÑó†¦Ý¥9?@ßñ›ÖOø®À6cÕ¹º<¨3uš27E-\I|´~pŽÎ®ã2Æv{YÅgF‘ l,wd9a$yQ%GÄØ\2#IŽf° ±â0JÆDk˜ö£‘SäXå­°}„:öžWmÜOŽíÄu—4l¥3äGa¸æ+œw#³#¬i¢TÕå‰2þCŒºãIг"Þ™éÌÆ.;°ýtø|ݶþ$½ ¬æ™³­•®Šq§°$ƒa55–0‡!è22CÅ—#Äûü]oš©’$’CJ’ª0È›6Bµ¤3ƒ9ˆ8 “,dXÒ 5Àþ ’F¦• Ž á=ð®EL@rÝbŒGòKM1Cºña÷EUK/SÊLK$ðÒbHÇò¤cSGF– I©¨ ƒ†÷¤gÁ×»ÓÇ„ÿßßÂkŸœŒ]ô±}÷ªWˆs+åɃ,:ö¥C9bÉã'íœ.aY¬OxߥɩsÉr§‰ë…tÍÑ"ØÃQ×Ï`\b:KË‚ä&•‚xÙAJ¦ä 2 G™Ò¥²d ·OZoìâ¢6:—v×[ÄÉ271ÒDeTùc{2\×âu¦Y¸„¬Z`¸ÉmDs3¤I¹»½c=ÒäŒÒ¡lä)Q¦)|^þ1—àí >Ÿðoáw¬Á¶ð‰pX÷ YЮqY>UFº‚j¼B¥G†*,1m&‚L${DžåI^Á|…eKhj²â¾e]Œm؃a‘%ƒz9 [±ÊAî£35jôG ®­1U…õ$O®ÃƦ®ï-b Q!b ² cê½ñH6±ÁOSÚ;ÊQ¾Ñb¿äL/àù ^Ã’!TÏŒë©D¬š8.)ƈÎnª«ƒB°Ä‘Ç5Ú‘2|56¿Åeuh~V²ž¾e¥Œ³—ƒ_’åŸf8Ë »QÄBm€D3ôéÞõF¨A‡àÜLŠy•‚0± ä…h|Ü¢´;P¢È°tb[ÝLsº+U¹ê©cIii[ÍXJÚ=ýùÄÑμœ6¹B5NV¾.áGWV20B9Ä•a*ÂÂo¬o…<98+¬d.ƒ ¤Q\Ê$—ãÝ„ö®Ø®²{›^²°d/hØßË(oþŸí?p¯Í«t»‘†±dt­}‹a-¼Y´Í$©B„jרW´R#M”cÆH×nD°LÔX/¯‘QQ"EœÛ9›ss4ƒ*d Âm€rÀaAN²TªÚÙR¬I–3¾;ŽB;æ>54[&&$µžÆk3‰k(– ¨O{S~ ÈçЫ¸-ͳ0fkÆÙ_µÏ÷7xÀ÷.Ma„÷/UÉ­z*®I×»Ñâ‘IwS‰làW³@Ù±‘km^-Lc\\çYM>³)›Ûhý‘ˆlù¿k*HQƒ³,ÚòjÔÐÛLÒŽsÄœý\°¨Êƒ#¹t.…ÂGð‰—Åö} ½“?wÚeæïÏÖ<’î§Ù×Àf³b!"ÖÚaþÃo¤Çv£™Ž'h Ç ‘¢rŒòiÔPf¢ UÛ¸P'¸Ò @Æòº<âFŽk+¤ËsÀaÐF+Eò •Õ¡ùZÊzù––2vÌn^ |rK–}˜ã,‚íG ¶ÏÓ¤c{Õ¸ë›ðÃxü%ý c/ÁÛ<}?àßÂ*ïYþ§ v'åã–ÃÂ5XɶbêyGKKV œÕ„HÛŠÔww¤QØB³æ=æ#œ9…AOeu0Q7Ê$Z¨F q˜b€Oñí JpÄV£Ê6æôð‰ábì’6ÎAi[5®¯ [;y¢Ä˜¤†¯Œ&VP–3„Èuè;aŽáåņ|@™·Ú›¸“FN‰)¹L>|ªùV¶”xDl£u-\ÅH›`t¬Má|=ÎËÚÃxvI B9ÒƒÍâ /a,"ØE¯%LPM¢„n­!¢ËÜ;búÜU„^Èï-Í<׬³Ê7 Êe¹&„Ž’‘á\ǃ,Í`΄\2Æ’'¾9/þŸí?p¯ÎÖ+ÿx¿éø(³Ó¸7<³Ë[U¹åÓ<³îÍ=mÏÓ‡ÞL=óO1á;c.„8òvÜ‘Í&=Å¿2[¶BG øÄ0˜íbI1žDF™šø®}]£§¤Q§ÔÍÉŸ¹ë1#˜‹_gWh#_Ì:EÄYQ$°®R(Ô,EZ&=¯$…!ŽEó>UT:yäSǰ{ì#Í)Å›aÍk£XDfÖˆƒTE»R½Uꊈߘcø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZâ}Lšü:Èö¥Wá‰dÓ43@øÅpœûr1ÖUŠñ½¨ìµ1ÉÑ}pcs=±P-¶ve›ž]3–Ý|Þ²`íÆËÄ£ÖÆÝy{8¤^Íþ¦l?c±;ZL¹‡û ¾º@8 *ìÎvF‰Í¿Ê_‡Iƒ:4y°¦Ç4Iå„r"Ë‹ n ˆÒc™¯ãœOxŒ±Ã(Üæ=ªÕTâ41£Â… 8bC‡#$XãhcÆ-`c‰†Ö±F¢'Â_Ò2ü±ãÁ§Óþ ü"®õ»R¶¾Ë³l#ÛWsðãÌä-!ëå,¡s'+apœ¼Àh oÛ#u/gN“(QÍ.dÉfx±"Ç"L™sàS¯hÄ6¹ïr5x5/‚‰ü&Í‹"3eX7o ápE‘_.nñ¯-ÄRÀ‘»°£Fº«©„€KH2ÎáÅdÙ3 þ§9Hæ’VDð£†gÊpÀ7í d‰³d+Z¨ãžT‚i p”¯c(gF Æ‚•ó0ž*NÏ”–Ì$8r+릙|ŽÕ–úØ•åäq ¢EWÐF.(}RÀĽQv§%ØQk¤ívOgs<×?kY£_iƒgk{V’ëÛÒÍg/ƒ» ÆíòÒí1zyÅÌ#So×D¨¼D…(Ç·i+t,ݲò:8¨ñ¯eö/mvŸæo;Ú<·g\XTþ|å ïor;ÿE·»µåèÜ|˜ðMÇ…R×È0,î"M‹†0\bD#ƒ6 l]t>JÖà.-l Â­ˆ³ª¬[gÈ¢YÄ[¾ñÃ$Þçoh±U>0ìí;AÍ 8•ñ9» p¡‡µn*÷÷Šè<é£>+‰i„lù¾S•e¥t¾%¥D‰qÒ@ãψOÝ@ɱ .®Tˆ“G|¾PêÏQ[È‘c{c"¾5F `lñuÁ,å$WWÒó+ã¼ ’Ä–w‚) Adh°¤:u7úîTYÛ^Kü{‡ðµÉb‚Q£ˆÖ~Ò;U ÍêÆ#Î<œ×Æ—2+Ã(Ísþ§{†U DF؃áüSr(§”å5~«ÎÚÈ Kº‘†ð&¹òeÊÃJ ·‹\uQ‹åYÓò<ÉêàRš ûB¶ v .þ‡i4L&äaäf‘­ÖÄiýK¿ã·ÿª>°Xb®1¾,$ƒG~À5Þ©nc,T±ç¹¦ˆà„Î¬Û Åš·1G Õ͆¯’ÈÓþ§9 ¸á’&Kð£†`JhÎ6•“udy°¤#\ˆh“#‚Trj €ˆ¬{ð»à«àS¤VÇ{]a_hf’sOÚvuŒ„(’" ævd·¹‘ ’$6¹d^v¿aûö´Ö±ÒLÑ•vÊ<ÜǵÌ{XPHXHòâH¥C”#E”É DÞ"bMmb¢«8k oàÌÃk?7;ÛGä®bE扒Tl$ˆSc«šÕs§ŽM€+D•,Q×ÖÅÂÃ|u›n#…à0%<@P[ΗâVE€Z³Æse8Šh³¤òñžæ>L<%Nhü½œªô½ºBVvTîÔ¼^Ñ,[HîWH}…A½w„Jé0ëà×ÛxOÄx“­BØ-ÖÐiZFÈò;&¬$'G @h$åÕî‰.GgN“(QÍ.dÉfx±"Ç"L™sàS¯hÄ6¹ïr5x›GàÇ b ÷0¤A†ir"ÇÂ1&̳< ®+2Š}¨’¦Æ¸e|º ak;dŒ“%Bÿ¹×ÿ[˜?úž0î ðW‰‰¸Žf!eaÂ;µÉUÐ1d5_+l’;xÕ°àÛwæÁɕ≇1f'›6m8.„ZXUR"¶,‰¶X2>uÕqRB¸îsZmÂT*¹^ÆId²$Blƒ6‰x´p¥*ÉÒa‡OI‡š0§M®%ÈkPϣƓ¹zHV¸b·LIsGÊÔETY͉™\¼ûÓJ8ÃÛŽö¹µ¦—àŸÁ¦'ðƒ2#5·³¤×à,/e£–Ù£³Äî´Šû¯¬›Tƒy;,mä¹ø ð™àOazIuW‰kq@Zb†s¢DcWÁ¤5‰ŠJã_Ü(K\£@ŽA-0Ÿ7Êr¬´®’Ä´¨‘.:Hyñ û¨6!%ÕÊ‘hàO—ÊXûü]oš©’$’CJ’ª0È›6Bµ¤3ƒ9ˆ8 “,dXÒ 8ÖøÀV'ºÃòc„‚±ÅX—àIRHa¶S ][9ön±§4#Ã%-sÊ"Ï‘». Êæé‹ $M”˜P²‡.FÿSÞ'‘L Œ ¿Rà+“"Æ1Üú x§+#°§pA.4ɱd Õw‡%²bF“0ßêsñDŽi%dO 8f|§ q^ØÐ`ÖH›6Bµª‰9åH&Ç Jö1nmÓ¶‰j$>µþî Ÿ6瘟P¦5í• 4q:¼Ç¶Lô¦Žà‚`;j\ixkò¼ª,?M{Éos<ŸkWGŸÊóQùŽ_˜ÚÞØî{CÕ¡$Î&<(P£š\É’Ì8ñbEŽ7D™2 æÀ&<¦1^шmsÞäj*ñ&£ÁWƒ¼Oá8°î R{ø„‹E€ÞHuî=#c9I6¤GrÇG*4(¶;Í=lùB=bÙÜëÿ­Ìý áÏ ˜BãÁ5¬É *©¶rG{„lÓ*-‹+£†0'Z£¬I°êjp‡;K¨²ž°ÇŽaáúé¦Â2)ƒêI•¤¿ªZ£å¶­ñDZÈì-Q#dH4©1NJY'víqÐ,%VSò<È*ÅÓŸÚPêð9r¡Gv™DònIAiÝoFÑ}M`|Am«{íÛ ì;ËéÚå¹^A1G9»™÷·y_lZ9çòø£ý‹ú›õ7ØŸ÷ï¶9ÞØíü‘WËòý—ÿÝßþµµìž"Ýb‹ªú:ÁkNfyÚ-ó29åòƒÖE…#ÅHõÐE"t­§¶4r½4ð?õ«ðC‹ñµgæ£×\J‡päèõó‡\96ö—Ó™‘Ìj…#²í"´ ®ž9ì&a¿Ôç!â‰ÒJÈžpÌùNâ½± Á¬‘6l…kUsÊM!Ž•ìbÊÃÝq‡±dYß…±ewdÜ‘jÐ|öÓDy°";–CMX³[r$¯±jáÊù>â T†üä|QŒðÞ ½~ß±Hç°ÔñÌ—[¦[ÈÛ² ÎClyìÐ9Lc]‡<+`¬OàÊå$KÉòF·ôÝŸ ضt8Ñ,fÇ›cd’)©m« £ ‘Ù¾1$>iÐdÇ› lpˇ2!‡",¸²ÓG“@\ñ9Äö&Ü2Í{­T_’¬åápï+©í" ÜõxãŠ)\Éá±nj¢KÑ£qY˼R!AÖŽË2o\»³sW.þ}+Æ:ˆã™ÑBl9 1”Xâ‘)—c’qWm†8qrµ¨ò²,v‘\7æþ ny{('v\8\¿¶Ó–~lóëÝâ×<˜F9rïÉ®E\½f,¢åõv<+nkw-žÅš°ù}µÜæ{swu›<¦²ïêÌúÏ¥ˆ}n¾HëÛüäñ÷qÝë;¸å«qöGÚŽ‚^Řc†+\À ¬Ã1„Æ;Fˆˆ¹­^Ž@‹Ccbè]”~¿šuÃ<š×~x'³BÌö2ccGË­7ÎG”œÑ–Ö¬b?JnÆ"?mîͱ!Ÿ‹%‚0œX²)!ÖÔ0˜îŸ xKú@Æ_ƒ¶ ¹Ña",![I©$Ðe6˜C… {+6Kƒ‡0äð¡Be(âÂ*ÒTxQ ¾ÚÙðcDÛ‰¢ˆOžà4’HÔUDj1â/…ˆQÃcY"=v.(X1²b‚ =œ·¾XšiSyj†ìB•a*-¬mù ®¢ èVÎÕ‰°ogÓÚ™K:I­ ¾&š‹érf5ú¬,¹9à±jN˜bN¯‘dD†(±Æº§¥¯«³Ä^«öL6'jš$ŠIb—4!ÑÖ‘q`I.=3y™ ì¡Á¾ ÌéÁ&<¬MáХʉ*êæÃâicМÚy‘q-•„1Û!  8òh-âŠbƃ4xP¡G HpâqâÄ‹m xÑ£…¬#€L`‚1£ÚÖ1¨ÔDâLѣͅ69¢L‡,#‘\YpdF“Íxâ{Ä`•ŽFç1íVª§ÃLzÜ?[‰Ûp‚k™Ðƒ€ñ?-9‘¥±Že•”Šz+s$ü¯ê£HFÚ,q>G˜Žpä=•ÔÁDhß(‘j¡tÆaŠ>CÄ´-)Â7Z(Û›ÓxoÄéÇYây•5êAÊ*aá¥|Y“’¤Ó'Ìpãž¼*8sUM5R×Çžøv2ãøë<%QG^ëû‚Tâx‚z°s.dÅ‘aâ,6ÇÚ‰bf—¦æ„’¥$ m†I²­§Å)¨+ãÕUEL˜õñY1,ðýM¤ÆÆ¹[;¦Í@Ĉ±öƈEBϼ`ɶ#°¯‹ÛøòB²0ü›ˆ*è ]" ›©)òä69ªêåB™X„™e¦<Ùq·qÍå|gâ9ò;Í[ºÑH~®|cJŽ:úùÖK&‘‹áU˺ŽÇ: Œ?lçÄ¡ÑÚ;]‹ZÈ„œ’ 1Ô‰2$ŒÇðU&DâœOˆ±íÌ=Uƒã +w,™¾Õ®ÃgzÓ³«ß4–8~t)ˆAWáü?_ªšª:Fƒ2.؇›ž÷9ïsÊy+É"\¹,©’ŠiRŒi&)]Àoph+éã¯dc$Á<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªpzB¿–¤n .°%´ú¶jÁ¸†TSÓÛÙZ69"Eåb‹Ìp[\õäÉ_)Õ£4Á‹ý|q0,IÂTxVÐO– kƒv.Ekpì8ÕN4½¸qO0('¡D °Â–ó¤Wø%¦ÄíÄ8‚!͉+ßÉ…\8¸|öÃÒ.Ǩ<[(ñL)±É> 6Ý.U=¾ hð¡BŽáÄãʼn8Úñ£G X G˜Á"cF!µ¬cQ¨‰â®ð¿‚ãÈ©”û†z©5Kåb\Œ‘MŠã¤8új¤h‰ÖÏžŠ†¹=!ö¶$7b6±¶¯$‚XÍ^g·è‡0qÁ=òÆi°­ç ÖOd÷e‡ÀöÜí„™V‰_Áêî«kî+%mó5ÖãØA‘²aÈüIc,ríHŽ=Á»A†27'±ªŸ÷ÂU&ðŸÿÕÏi&¯ â¿ÿ‘ˆkDƒÿÔã’C¿ù8×ÈáÃÂûSbÚþbŒ/h{/a9{Ϊ®ÃQ‡&c#v•d„šyd/i2=‰`ÊAØÉÄrî°Ôì#Ë̵ÂÒ,Ú´f,xd³‹zµL1¢XLA‘\êÁ•Ñ¥¼#•²^9m•<+ K;rðíqLŠÆ¥Ka+"Ñ-«ivä¤XºÌ…lh0âÅg’[¥J‘ ¾ËIöKj«Ã‘)¥n#•Y«A-¢4]ºñò¦™bGLŠîF,Ä!, 1ñ…¿äõKa6=¼Z»(8†ö]j²[,!IC0øv²]s«` ¶46MbVHŒÐ Ę3£G› lsD™XG",¸²àÈ&9šñ9Ä÷ˆÁ+2ÎcÚ­UN >Š>ý"ë´««|ÙãÛ`ÛÕ8ÉM$ƒŸ>_æT°Iƒ U·0÷ÚQ@Ä2+5 [uV~j²â¾¥t³˜ƒarâf@Å [±Ê2mœC35i ØôV¦=ð­z>n&ìˆø.–Ä{jƒ,óÛCb‚u¤Ø‘,+bSJ™" ›. â;Éw¸‘H¾#øR® ¥‘W¯P¥Ý4¹¨ŠãqÊÙWódÖŠ4·–"ö77Q¦$*xѼ} `ßÁÚî<øƒ.EP±ÅÛë&ˆ„ų»u B²ŒÛñfŠÂÚ¶`7Ê…@x“„Qn¿áúøõTÕQÒ41‘vÄ<Ü÷¹Ï{žSÈ9^IåÈ!eL”SJ”cI1Jî&a|Q𝕑a«G:²pÚöÆ´«’æ•°‹¸ý²h LÐJ¯•.!ü6áÉÄŽY´r–ab8ŠIUSq¤Œó|w”p\P޵^!»6'·3«ãȵÃR)äÑØ9²«‰eˆ)êì±ÍrÇ› CÇ&!w"˜ƒ‰%áYPa~²ÊïÖ(º.ÕeyçÉÉñØcí7ØaDæÏ9,,$( ×G$sS¤GŒ×£ÊÞ'^cwH‰€ðlqœXv¾Z$X£Ÿ'*Ü>ÓïF›Ì]¶ ¹—øŠ4NjXê–_HÂж®41£Â… 8bC‡#$XãhcÆ-`c‰†Ö±F¢'ˆ³ª+ã®?¤Ž‹‡æ,Á[­†•A>Añ9ÄùE©l§Ç—ý¡_mÂÉoƒÌg#™Äuõä‘E&HRF ƒm ]=¦+dMÄ£¹e2\vÈ5¥\Y³,Ðs+eX[pz»ªÚûŠÉ[|Íu¤8ödl˜r¿XË»R#pnÐaŒÉìj§þ Ã8?Âÿÿ\›ÙÔXÿüÝ„¾R¾'ÿY˜}¿ëÆw”ßؾX»Wˆ˜b¬²{BÁ¤ ‡O”‹"CÂò±éqqdÁ×½Mq:*i–UÐ,8Ärݽ÷xN¾F$¦²–¦«ÃZ¡|çŽÇ‘Ý¥I\d„fº ™É\i(C6&ðy>fçeíbL;‰8¦Få1Fg¼•ñkâØ¦P! ±LI×V“%îÑ~I©úO÷ëxˆ7e˜Þæ.]Ùµt®]Ý:z`ñ bÇ>Ó]$a—KrIÂ]*VŠIbDy„ÅF˜‘£¹ís‚=>&½½Z棚¾”TÍ;ú÷xÏIvÍm†¬à@f‚?~XåVÚm]¢¾ŠL*ã4zsVv²¥ÇqcG0kÄy$Dˆ'ãwÈx‹¾°m^V9HÔׯ4œÛ5dMlŒ:‘€¨x­ djÄ+ÝÎñAôÿWø;ЏÆ8„³mq8)d Î*È´Q§C X‚B¶A ‰g6Kžr ãD‚æçñP} Uþb®<} `ßÁÚïYˆñ\Î]â §bÈòf޼s¥.X5˜V¡‘k7—®‰NGÊ”†9ÊöøïÂe©»BÎÊÁ0Ø,$Í"ÑÆ]‹üJièUåäö¤‰x|ÌšbJœéææ±˜GºoŽÊ–Э=„Ê»Û7/:¾A"Kôr9v¤ƒÜHéÔ2=ŠŽ_æ‡&<±3aˆ,c ãl¨ñ ÎŒç‰ÎjH…6<ˆr«¹P ÍaDö'¯¼dgÈÜU"6Š`‚)ÆÁÚ²D‹vKIK£ËÃð-à´à¥T¨ÏßFÆ8„Žª°À)d Î'4ùWö±§C X‚Q:8ņ§6Kžq‘„,DŒ×™àñáœP!W†>$Ãå€n]›s¥ZaÙͱÒ0Ú«.)`Ä顯XÄ`cĉ¹FÉ/Y¸VDœ!(ÆP ãªdy ˆ‘W"lj‡çÔAqÎ Ê4¨²^t;¾ “ÅÒ_á*ãÁÜdA W]=Ò\7‘%bV.#œ6¨„òâ›k Q¬R2+ÃåkÎO9úÙüÃüQáÈ$XTõ´°Ë-Ã|¢Eª„1É%áùã8@ÜEr°CnLOúæüÄ:§ú¿ÁÜUÅÿÓý§àîñÝa{¡nÖ^Wžœ™æë}†lNl£ŽÂ¾B ut‚G/+:[Oª.Kg\\Ÿ1ºœÆÀq%LðXZRG°—‡17 E\‹*¸ów*±=}i¥r¡Êh²§I¤‘E]¤Èqì#ŽÑ-…Ôæ&¯[9™±¸vÄ­Äl8,±—*$½²&òQÜþbmWhU«£Kå§ÈdS=¼bì9‘Å6ÿ _ÒÃ,·‘G*Öª\ä’ðˆådvìqœ 9X";&.Ó‰³h0Å,ÂÄq’ªª¢AHÏ0€WÇy@÷ÅHá«Uâ³b`OUÒ¬zÑ\ ÈØ¶”V'»«”Ë6,'ö¬²@ $yì)£”ù”…_‹eÇÁX£—cfv‹¹l/6S,’ YrcP#íDa¹kòÁ äNW]ÙØ²Kt1æÂ›2á̈aÈ‹.,´ÑäÆÌFHˆÖ<”xŽä ý=mÔ1KhÙ(qmatqÉ`Jq2Cv4ÍÌ6‘Œ)“׋Ì;8’ ÿÃ=•,ÂÄpÙ(qmqÁ È$g˜G$0G{‚â€Ãiªñ¹±|^þ1—àíÿHŸ„XWä¬5t燕°¡-XFŽ0Ù—%äjxï" Ò½îxä!4hÜ^%~Ù?Ýãjª¹=:õèÒ½­O ˆˆ‰èDDâö#NfÅ>“ ÑHå‘ÞœqŽP¢í¼ÑÇ2XÀG5^&JÑ«PÄG|ß¹‘ [†ª™M>õ‘»Éi­åÒǵ¥Î ”Àh2i½¸ŒÞˆÏuEÏØ˜ßªÄÐîÿCš©üqjâIÄ8ÿ ȯ¯eQâGÛ$Õìž²6ÎÄl-akÄÁ<-UÄÑQbmÈˆÇ · xP_^ù:bEw'˜@Ä oT5ÎGG…ÎÈl²Í»„xµq "+M[X9v1¼Xçëgð?ø±Ù¡É‘¯IåŒbŽ‹?RÁÏšå6‰å…WnDSš9šñì\ õÍøˆ=f9úÙü0ÃüaÇ“ ŸDœ ˜‚جÃ6ó™[älˆí› Æ„Èñ¤¨‘¤#w@'·Š§ú¿ÁÜUÅÿÓý§àîñÐ} Uþb®<} `ßÁÚïYI„c¾@ËŒniŠÐE$SÓa®Zdˆ†1•dÇë™´ã: ÑH8RÆi"–<Ì…¤2@¦×ӌր’x²IæÔ¥·ºˆÓÂNT±âZÏ™#‚ã'* ç&S³’_)f‰ Èõ_\i'ŠbIûË"ÉíH¨Åpb\Áˆ "¦Åˆ‘d5ì™&W—õ/ˆ/h·w·yî`âļ֡òÚ}Qr[:äjäùÔæ6ë¼'öìî{Ôï…ük…éþ‡“¢©ìÞσðxüÇ/Ìà™[Ó «Ù¤Krði’d6‰¶\ˆm1)åB 9&ŽŽÚ,ˆ‚Ÿ8QŒö)9²Ø'5² ð£õ“þWzÏß^ßäà¾L‡B# K Æ"Å©£Äa™$1ÕÛB‘,P ŠI˜Ä!Ç # ç68QœP} Uþb®<} `ßÁÚï9úÙüÃþ³}s~âÓý_àî*âÿéþÓðw úÏ OøËðŠÇŸH7ðv»ÅÿŸÿþ"úÏ OøËðŠÇŒ.¯ÃÏcÖJÂjEuOú×a[Ë‚jXD‰]ÏÈ–Ùy(înlíi¤íïïTãþè¯ýQàÿé¼Ýÿª<ý7€Rã½±YÀV€þ¶45ú'<¨ƒ>õ]Ì)Ól‘í¼® îjpÕì›? v÷ª.{J½ç{/²v¹šê¨¯/Ú6zôvfîöûuohÚnÞ·Ç}ªÈ©ÄÑÎ ¼G\À¬¦ ƒ:† ˜ Í6´ášVÎä”±e ‰!•ÖUÉa`é3–¢®>0¦‹TÑYÒˈ)DŠIÐQN’ WÜ>(!Õµ!¹‰$PàN°’jRÇ-‡„| &’®ÍqE1‰PæËlz[6Šª|~j[ cðäE:ÌÊpHÙNBB¨ð£=q¤0%ÅÕÑÒxÊIo|»:x ä­c…Å„ 5ª¥E¯‹ üµí‹ØÆLy°¦Ç ¸s"r"Ë‹ m4y1¤ÏãœOaBa=Ã(Ü×±ÊÕEâÃâ øö´Ö±Ö4è2QvÊ<Úö9¯c˜PHX9%Ç ¥C” ÊŠ`ÉŠÒOðikêŽ'“þÇïMë?8‡à[\¡ÒYj#çÍ76Ì?Éヵe¿7ZK‡±þ‘_^NÕ¼Ãl¶H#«ÙœìI‡ZÂ׉‚ ‰ºlI1¢ªKÛ‘í0ØÛz³¤˜Í[‰2‘84æK’@â6³¶ûCo˜‰örmà „oeÈh‚ n©]ÊØEÚýÊÒN£œF¹Z29>j¾VÙIWh1 3Â25Ëa¾çëgðÃñáGë'ü®ñbàÈ“ â Ä‚#…(¯Ã5Ÿ#ålxî›6dÇ(Á¬©rd+wNW»}s~bYŽ~¶ðÿÓ$È–VG»ˆÂÉ1Fʼn® ÁŒ×•ÎrG… E+Ð[@A„r"¢”Ç#¢ÓaÈ2Z3 Ã{£Í…Od3£\ª)Q1ɤ (ÊÖ½?ª&:þûoÿ(qýQ1×÷ÛùCꉎ¿¾ÛÿÊTLuýößþPãú¢c¯ï¶ÿò‡Õ}·ÿ”8þ¨˜ëûí¿ü¡ÇèÓþ.a?È\<ómª±œ °®(«ÃDqô”ÇañÑÌS±¬pšÒK$m³_Å@QÝ7àÉÚq:X"Å»‡$ÑSŠ<²ÞNSZ˜)…0a"´‹!­Q:;fø;+¥w5ÙYTC,(Úò7y”ö¶Ö+¼ö4åà"•Š] ! 7Ä…Žª‚QÒëØaèÊ6cV²n ‡Y §ÔV«bŒî’ñ¡ Á8A3Øù´5WÄwE$º{–q‡%ƒ_ç„c §hŒ8Nr£(Þ­ÒöªüÍÆQd¼Ì¨¦Z5@æ5ûôK¨¬UxÈ›$•,Ôj=Àq2ŠÒ²Oíƒ}ÑÞ õN›ˆ¾âî9r_B䨿AQ|xéÇ ýú…óB½û??Æ6¿!wqÝÇwÜwqÝÂ}õýÞ-E{™/¶TLòïÉ;Ýô5á‘*+¤L+Ú×kÐæ Œ{š6•Ù·4 =íB›A¦) Æ=¯à&Ä6Š+„¯ªLœÆ¬$K9ê¹’»ÈÑI -Ú*4‹§–©—Ûl·Ë'–B&ñž®1´¸¤ÑºGí£Õ¬ÒÞŸð—ôŒ¿lxðiôÿƒ«½fŤa¼@XåÙ¹-^"‰ðLÛ {æΞ– IèkŒFD¸›~)H}6vørÒ$m³.ìyñ,O¼ƒXìåä^Ul…a‹ÍjÈÀÈp½o‚ï¯oòGŒ õÍøaˆŸêÿqWÿOöŸƒ¸WÇAôWøEЏðiôƒk½eu#nÁR"VØ)eNŠJüé7¯ãMs@±æâ‰°’Î{Xñ˯ÚŠ‘£ë)£Ç[Ül›%sâÅ$Ü"Ð’e‹TÏ»2E)CÚ5ñ >8GEúF «)±£–v±Xà…cĉaTcQ_Ôs†¨Œé™Cd)ÖPG™6eÉ©bÅhÚC«½n#Ås9wŠ‚žu‹#Éš:ñΔ¹`Ö6aXV†E¬Þ^º&A9*PFç+ØáØø„Zq5·?‰q!ÌÉ ´™iˆ§È´BâM{ ‚=|ˆ5Ö¯ž„)V&ùƒ$\3Š+HÃx€° ˳r Z¼Eà™¶:@÷‡M=,’ ÐÖ Œ4‰q6ü"Rúlì+ðå¤HÛf]Ø4ò-âXŸy±ÙËȼ«Ù Úԑáxð`ä$Úª{«©sGʾ-üØpaŒ/B©] eÃS%¯ÆÁ–"ˆ¦sÌÀblPQXF$Ä€a›peUáØŸM®Ô<Ú¬î. ËÙަ¯HÃ`dD—¹ÅÒ_á*ãÁ§Ò ü®ñ㟭ŸÀü?ë07×7à~ ñÐ}?Õþâ®/þŸí?p¯¬¼·ƒY!&âüOecš&唤•ji1ë#lÇgÈݖȡڊ2J&Úç ÒA$‚ §­¥†Ynå-T ÁŽI/€'Èx€ÇÂFâ+•‚rbqÿŸÿþ"úÌkb°lKkbX‡žÍ<çª Ò݈€Ž9ñîäZWGxЛ\‹âæ—AÁ̺ãóÅ„(êÈM³ Lê8B¥´“Œo^Vξ\mÄj„Û[ÑÈXï_ë"ÛÞÊ‘?VÜ[RÝÏ4:ø#—(EeœBDcC—5­dW;•ˆGJ'PˆšeHñZãüUžÊž8ç^ÑA$*ºÐU˜ë;*ÚÆÃ`p2ƒ‚<ÈP¥Â…4¢…&öOÁ÷xFCä¸:ᆆ®QÅ6%æfGˆRL‰ ¹….K¥Tc›a’Q5#ÃÃÞ$Jü?‰|tðïpʼnÁiy1öRç=£²du¢ ™   Ïš$eXH¯,°ø¹lM[·`>U"b:¶Ä‹ˆá)ŒVÄ‘¢Jܯ'51¤®˜PuJ$±Ç€ãKnÄÇ"UƒpUÈêù;ω‡”'äm¾DP¼îÊF…¤+TŽ`ˆôfjѽrjÈjgíõõô‘­+¾¦o\½ÏO‰ÿ³»ù‚ñ‚\Cš,¨¦ˆÒc‘á‘@^Òà0Õ¤„F´‚ Ü×±íG5QQæ„ ocW°bôsš;BÓÒ¼|X?¾3ñññ`þøÏÇÇŃûã?ïŒü||X?¾3ñññ`þøÏÇÇÅ…ûã?ïŒü||Qß¼Hÿ¢ãâýâGýï?è¸ø£ÿƒÈÿ¢ãâŽþ#þ‹Š?ø<ú.>(ÿàò?è¸ø£ÿƒÈÿ¢ãâýâGýï?è¸UÔGdžÕl×ÜMCDÍ}ÕDôªqñ ½3þ“ˆLýéŸô¼~w™ûÓ?éxüï3÷¦ÒðÆ %"½íj+†Äj+—,×Ù;½>»7¹¬NìܨÔû|#Ž9¥Ö&H®UÉšõÏÑäªuDúU°ÜÔù} Ep˜ñ‘ìß9‘ã9Ûnh÷L=èôkTˆÖ(åß«æKz!_’'®âè<¡»p¯f ¿8kl8•ó‘¢…419êG(jEFµ^¬ZÕzµj»,òkS¹ä HËðvÇŸOø7ðŠ»Ö]a{¡nÖ^Wžœ™æë}†lNl£ŽÂ¾B ut‚G/+:¤'XHW%qcD£‹–APR†& ÒMFJJéwB¸¨±ácøQÕXôAÇ‹‹bǼ³à ˆÁàcmR´nIkT4€“ ÒzÈX_Eç¼`œAÏb…7æ^3½©cäÕàʨïšüE‡Ç`èS±JŽhsãˆ2bȯkh'b.1±~Ô{Ê÷Ç&#8Odº»I†ù=›g$þQdˆ39~VB¬r‘ªJ\Z8ñù0.!˜fâÅŸ2! _D‘dZ†‚œ“aÔÙºÒh¶ß…Ï&hb<¥Œ­ñ¬.±Ì)²a–D‰Xz™³&ÖI‰ÖÇÔ¶ÄÆ&$›h£–ê˜ìšXÑ#¾— Ò‹j²Ž¼#fÈì1ö›ìÓeò€‹–³¬d8¹©Ò$IsåwŠƒé¯ð‹qàÓéþ×xñÏÖÏà~õ˜ë›ð?xè>ŸêÿqW¯n軇ˆ‰vøíæªì«ªê÷a›?!.«E“ùfÇ‹ÚU-ßy&mÅeKñ[ìy_i‡ª#>)‘(O’f3#òu–[p½”¦u¤¸äeA‹€,mbÝsØD–6S›Úج$š¸ðåÑã§aÈdK›$Y&s2aH®<;‚?‹ÿ?ÿüEõÆ”Ñã­î6M’¹ñb’nhI2ŪgÇÝ™"”¡íø„Ÿ#‹"ý#U”ØÑË?Á¼ÉRs‡¤Oº¨ŽècdTÃdCY# À72ȉˆ'Ë<–Øe!Go°K*4s†»Åo‹¯ß!•TÑØi  &Qˆy‡$`¢µ«"lÙâÆ "Œ†i%Ɇ6ÌÄåLYî,qö)d€¤Us‰v è¼gV:º@aY׺:¤K•± r,6Æc.ðãHÚÅQÙgFÇH”ø¢¹¥$¶Ã€,`ȵ¦×&M‰M 6ðäHOæŠhLŠÊêÐü­e=|ËK;f7/¾9%Ë>Ìq–Av£ˆ„ÛˆgéÒ1½ê\}ˆÞHë Öâ––8šâsL•A dé„3H&Ç ±,ÆsB<‚–…ZÀ¼þq\>aå ÃvÅñãM%y'E)Å :±Ó¸1íasÒó Æø²Œ3G8žð¾¶ê¬üÕeÅ|;Jé;f1Â8åÄ>ÌŠ@·c”dÛ8†fjÒA±è­Oƒ*j‰qÖn…Mn’[(#ŒJ œ{*#IË= ø}ñ‰ÀÜŠéRÃòc¹’–7çëgðÃñáGë'ü®ñ6mKublÚAAN’kH/‰ªÞ†$hn~« .N뜰f“«ãÖa†ÊT±â“–8 >A1U \£&ÊdXnë•嘎‘!°¡WØWćäH±/åË‘´1¾,CŒ,Y»޽òQ™ÏN+Ù®»x¦>7iYȉ›XÅ >cš‰DrIÄø#ØÓT\&*Ɔ•ãKK;93¬ WvZÃ4Y1îmcÖqéL é"“Wþ/üÿÿñÇá/é~ØñôiøE…~F5•ÅŒšèÛ|Äû)qàÂñXoJ”A[§(Â=oMe#ÜÞö¢ÈS"v/±h…KEXɰ²`&â,AœuV†ÊŒW¢åÄYMXè­•4v²‹ Å?/ÉÈÚ%Ýܽ‡Hø2rŽžO2A™žË‡Sf$¦g(MÁ[‰qEíÐ 9ö\”ë)E¬ ×ïû4:½Ä®ƒ¶É'qŠFŽWGŽÁvþN„Ü;‹ïkâ×ógÊ'/°sJh"£@ÙSØÁ¶®“¹ËÏ­—t#ì•à.̨¤( ´q$ÐõÐQ¼nÉìr'Ìb*§B4oowVíµ™ÿtÇ'_F}Ùx¤·5ÉK—™w3\½+¥3ôäžYE{ËòµOYmÊîïòÝ£39}ý°ïlïmîí sN­¶g¥>g |ùB0b²[ ±†=±”æET49תCÑUÒòsÍWóõçð˜“8üýyü&äÎ??^ ¯ü™ÇçëÏá5ÿ“8üûyü&äÎ??^ ù3ÏןÂ`~Lãóõçð˜“8üýyü&äÎ??^ ù3Ï·ŸÂ`~Lãóíçð˜“8üûyü&äÎ?>Þ ù3Ï·ŸÂ`~Mãóíçð˜“xüûyü&äÎ?>Þù3Ï·ŸÂ ~Lãóíçð˜“8üûyü&äÞ?>Þ ù7Ï·ŸÂ`~MâÒpf\8Ы¦ËI"Ćb^Ç+ÌDr5ír·<œ‹×Ç›ÜÖ§¥Êˆ™ý^:fEþå>†k×üþ\—”Mò“Rd‰ò½„TMhŽL´éUÏV]:f6Hõé4…ÔBV9îL'·VŒy#¯—´åpFí«_de™ä38‘Ññ£ëV“u¤‘¸³%1„&¨ïk¡*hòƬ"‰­ŒjÐâ`DÍNW»HÆcu=Îs²N®Urõ_­põ/€¬_Œ«+ù[U¾é ØóU°æ›a"a HÿH’XÛœfŠM[oÔÏÃ4~ñ~‰u_:®ê\Œ=‰q ãAœÑ ®s°íTHñ9ØrÈxv&xf! ’¶\aÉumÕ_ƒÌΞÂ¥tŸQ†åçWȸ‡Ù‘TXåÚ!“lâ _§Iö*µ@;¯õ8bû 6îs2êàâºx%ÌÄPìWKÂ×’#莢7-%n™„;vXFÇ÷ª_8ƒÁÏdö_%Û®±wlsý£Ìò¼ýÆþLÛ\×çákÙò7|Qßj²*qts‚¯×0+)ƒ Ρƒf³M­8f•³¹%,YC"Heu•rXX:Ll3á XcŸ55ö‰Š°pO}:’ 0å´obAÙÃõ:‹  ÄÐéL¬’TÚI¦£\èÒ ‹¤@)ã„Ń/ âgÊ„B¯|I/ƒQ6¤Gr¨Lès%ÅR1ËIÅ ®“EƒðÖ'ðIG.9£ÚcìmP1DB4nÞ¬ÃÎï+ùĺ7¼½ªé“<ãzJjHæ -(pž œHÄœ‘VÒ\»E¤ˆY²&–$tkRÅ¥ ÕÔAÚ“ÙÕ¶ã,æO¯Åu’‡*à§ <¨uä¨ ¢^V_Æ‹á—â6¡ŽY]­$«œ6äƒiÅ‚ú„—n“"t-ÛÂs •¼µ…l›)2 nÊåðÕ† Æ—dü冰¾Ä’¯l´yr9O­­ˆþN#O>NìÐé‡CÙ¸F°O êû^ #Hl—ÖÎA?c‚F¹+Û*ç¸.Ñã‰Í%&E‹jhVb-Èʧ hð¡BŽáÄãʼn8Úñ£G X G˜Á"cF!µ¬cQ¨‰Å®¥ð‹ñ•e#ËbJ·Ý$j¶Ól$L!iàIK›sìÑI«mú‚;|]àã¾ÖæC !"`lA(Fá‡$`¥{œ‘áB \bQ’\™2žiÔ˜§À'ˆ[;ˆ5Ö¸–4 MQM]}›cºÍÕ¶8zÅÀYÍ,¾fûlËÇæ!¨0q3 âˆ|Õ|¬ˆ Z9Õ“†×¶5¥\—0œ­„]Çí“A`ð¦‚U|©q>^‡þ»~¬=’Ɔ­O_n9Û0cG´6‹ipl,ܱ FÜFô•ä5à+ݲE[™suq…­A"\K ?…ñ.j¥C”h¥`:ºûXB‘¨:Ô#œRÑIh%4ÑĵÞ|bû™ý±³ÝÕ2§ ƒ3ƒÚÕRlUk,7É"Žþ]'+d(1åÖÙH$Šnü Ùz¯ÇͰdŽæ 6ŠãÈicÛîXÄ Æ cÚiݧa´ó&î½Ö5±.ŸÄK|9n< Í‘p âÓR¬Ô•)aXI}™9‹¢òá,0Ev¨£äÑg!®Ð2ÕT'œo†°ýd„²}spÖ ·•6壕SMdü=^áG Q xÃMÉÏ0óU`²¾Ö¡| ã|K‡ìä-“+†±D¨W.X¥š&aë<˜QB 0dF"nGˆxg„©9–íñ¸ð}6=Áë…Mt³VT˜¢…_%–cçª)K˘³ºb{‹”‡;XÅ£xÄþaH§‰ni]j‘cJ,ÛϬ'#†.…ÌPÁ)Ú¥ ›sEœv·A #Ûø.Æðš‘Ù[QY⮚9¤,'Jì‘|ÙrdËœvµO*A¶ E§ \øÆøÔqÅ[[fŒABD¦ˆº¸¬ÂVB‘"‡Ë6pÝdEdndšÉ3æÑÛά‘I6Öž¶Æe4½Îj¢TèA“"²Nôx…æ ¯Šmر‰¸'kŽf6ñ†p,Id^ØöØqìöŒÚºvì@‹cV4×&¾ÒÎ[¦D4—²;ga•PŠD€©!a\"ÆGai©ãÁbT˜¦¹>s/%Æ4Ôl•6æDéakÆÌÑŠ4a1‘ÇëdÁ<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªpìcàv_`ß À·ÃΛٰE l¨ŽÁÓc£°K8úãC™%•b4æ:†ƒX¥Z¿ 8ÃÖEåëá\عkÍÎ CA†˜Ò¶%½ þ˜1fžC^9·§œIdŸp¯‚x‰+Ÿ›ˆ0¿/³µÛ´G‘Ïnîëå}Miå¶Ù½Îòz¹rÜÆGÙ¬ƒBüOfÚÈå áÉ|Ó%<‘Ã7/~êÊ‘`SíB k'äØV…ÏŽ‡å/`¬×‚éÿÜUëWã»ú·û„ É›.¹u¥®UvŽú{ÌÍ Ák€zü?‡ëãÕSUGHÐ`ÆEÛósÞç=îyO åy$K— …•2QM*Q$Å+¼Q]$ý…‰«t»G†Ù†l6䊻|Ä>Ò¯v³ Ý,®œõ“í ‹8v,ÂÞ0mÆ;ÀõqÎjÌeƒûÂaújêÄ•*$–1 Øð Xñ¢;»-lPZvt›jˆ"C“ 8ºDò‚9Œ(10Þ&d©¤ÜöDŒùÕ¡6D‡".™2$T#Ú²$€ZÊÙ˜#àLAàß !ßâl|Ãá¹Ö°dAyWɤyã×È—\Ðú 4Ж´v‡§«›ad‡Õ,‹lAc´Äv, JxÆ0) ÖLÓUNi¢tîI *Q±Ùceb•õîÄJŒ9à{øA…"œ%¹¥uªE(³l#>°œŽº0C§j”2mÍqÚÝ,ŒSoà»ÂjGemEdlˆ:ºhæx°+²DYò7eÉ“.qÚÕ<©Ø(IZœ-sàâwQÇmm˜j1 š D èRâ³ Y Dˆ",ÙÃte‘‘¹k$Ï›Go:²E$ÛZzÛ”Ò÷9ª‰S¡LŠÉ;Ñ☀R¾)·bÆ&à®8]˜ÛyQýNøÞîUÅ•t;˜¾åmâÁšhÑìãlà‰båçˆL”©RG¶VèfäG[âëÿÝö·2i bÑB0G 8q#+Üä xñãòˆ0´’äÉ”óH uþ§ _afÝÎf]\WO¹˜ŠŠéxZòD}ÔC&夭Ó0‡nËØââÂÿSÞ7 ¹“CêM~ »i­GËm[ðlK!n,FȱG+dÒ£NŒ2‘Q‹¨<cvZÓHy£¤¼ ˆ$Å0ÏÐæD’¯k–<ØR$D3‚@JÌâD“S uXzëÀV/Áµ–÷3‰-t°k¹ZÙ“C¾’ð…\‚äFîN³JÇé 8 ú«üÅ\MĸjËÔ¯„Ü+í„ñ`S.ì;†œê+Ö´Fç°üí㈢(%r|Ô§²,ÈS-ê-û7ÂþÄ&ÂÀSqLj+KoVžÞ;0½äΰ7kW´–ñàN¯бueŒ‡XW¿~-ƒªÜAáCXorTTUÿv#š,ú®ÐøßÎÌeSÛüo+gvx^É\øn#×OŽîZ’ D+øð–8Q][^pÙBÃTñ]4ÊxöŠ{þv$ÑÚVv™îÒ¿áúøõTÕQÒ41‘vÄ<Ü÷¹Ï{žSÈ9^IåÈ!eL”SJ”cI1Jî1--úŸq}—fØ\ÕÓâ¬E2®'"DZûžJ5_+lS¹X· ߎý Ù·Seqê×Ô?õMêƒÕGiz„¶øûÚ=­Ïr}Ùÿ=Ÿ–åy?ë\¾Ï±ñ“¿ÔÕäMlp¶dˆ‚ÄТžR © Ñ¡›Ï,Hå.·†1gM ­åÈsTÏñ€»/S8¦„«nÀ|€Ä«ÕɪòØiÜ££Âçd4ñOErâaÉqí‹ Ò)é¢v|˜”Þ0n ð|[ ˜µŠqplÐÕù\ÄóVr²yëLÌE,+FØŠ ŽÜœ<_á;Èz\ƒo¦ÚE‚žI-+H”ñÛ^¤d—™$MŠÖÌq:\Oá~,z\?E ²i¼Å™ƒ/±…ôg2ü‚9g:54x]Ÿ°cšC–f&®³âv9··¸¡µŸ ¡ðcRqˆ”²©§Íň±¥¤™s MXëŽêÂ,IòÀ^j}5­P*¼8á\AY.»pSü$áêw^x>Ÿ†$:»©òé·%ÒX]Ë"ö:Ô0Í“* ÇÁ§‰fÈÛ5x–Âò̾Ç]KS…qQm.'?ɉWZ)Ñc’ÂÂBŽ$1žLp¾AFÒLU#ea:\=ˆ<ø>‘ÍG¿Å8ºGÅ—lNmL*’¢K‰_.\²Š|‘Ø– ­lr…ÖÑÜË 7iK…éEµYG^³dvûMöi²ù@EŽK YÖ2\Ôé$¹ˆò»Œ!†i*…àâ¶ •æ¢SBÄx•„XÌ”FµdM›" XHÀÍXdžÛÀ—$,ÐaºLAü ÏægÇÃÔÚ-q—ƒÛIœ*H2å†^!Ãö2ä¡9p’!3›´šðH…c?lÚb[ ;1{-¶ÅB´§œÏ&]]£ÓJŽ; ùH“ 2É#Fr±ŽHþ|büw"Ø>)±ª‘†üf ·šb^[,7ÉìÛ8ý"¶bPóÒC.$;aÈäù¼G‹ñ~#õeárNººt „5áXâÓÓ•Ìæû?›ÉЬJØ'ƒ[BPÕ¶¬cu®!¥ÃÊο‘å°ÝZÈIÖ<Õ”8FØX•ö’>$³É·þÚ¶Ù¨Ãõ#À~7ÂÕS$׊êA{*ÌpäG™_&~¬mtpÍ%Ép†YRˆƒd˜±[6=…¹"xÅ÷Õ˜ƒíh’0¶+ƒ;ó(6©³¬G[&=¹›!ÁÂwR.^1Å“,òÙÞ=00£9NØÒ )ˆä7,±‡$À§ë$x-ða[ '“)ïÄ2ÈÔ™Âsa û‡”‡n!¯©‹SSbtÕ·¶Ž·‡…ð¼>V¾.d1ˆ­$ë9Äk&ÒÒKX>jÂVÛ7  aFP¾,H€ãÒÑ©÷Ùvm…Í]>!ÚÄS*çòr$E¯¹ä¡á1óUò¶Å;•‹pÍøïÚ ›u6W­}AãÿTÞ¨=Tv—¨Ko½£ÚÜ÷'ØÝŸñÃÙùnW“þµËìûj–÷ýO¸¾·´¬)ªî1Ö"‡Wœ‘-…Ï%3 “•¯‹¸Yܬ«‡ìGfѬݥҸ¼·ƒY"îmU=•Œ:h›œÕ¼¨0&=dm˜òËÌO(™;Qd“p­ÑÎÈn¶ÂÔÞq¾uärÖÙYš£_i¥„ ±…+ð•h£Èœ"rΜGIXñ_'–¦¾4øQñMG‚ìo5«õ¶õ’pn hí)¤9åBl®É)`H݉LIÀk”£‡|a,¨¥Ôb?ØŸÁô(ôç±ÍÓ­V,™B›_•ƒç°Å(¹ƒ aå7L¢nrŽæë ¾B;sÕD£í»•Áëïf99”æ?L=²FÛ$>Ò[6óȬRïµñð­5V¬²»Õ ¸dŽJ”¥ŠyqáÔ´# âº<ª)„,ƒSJ@,FM¿¹µ¼˜ 6(åÜX˳’8Ì! Èì<Ó­Jc¢km!Hôn§¹WææÐ\ÚÑÌ(’éìeÖI$ge|wž‚WÅHá9Ê7Cz·S¨Èøªš«ˆ`3RXêzÜÒI% "ÊUÂÔ©îµíFû½îû?CÖ`rF8d ¸R†;ˆ°¬lˆu±âK¸jäCE”F%]a"„ˆÒ1ÍOœküú'bZæ«ûDütÍëýÊ}U^¿à¯Á7-}Œnnv¥Ò‰šùóèŠÝ>WÚÔwl5Q7®²*+W/#<ÑSÉEB+3ó«U¼ãIÝ:ÍûTXèD{#®£–9‘ɲQF5y>+Üá¡f7¶%&~\±µ"7â­ö89k˜ÈÔw4ùYm06§ ˜ÁLhÆ1µ1‰¥ŒcˆÖ1DkZÔDj&H™|àßRx8°ÿÉp¤WGÀ&ýÙÓ«çxA7ÿX´%]¿ýî?3~{K¬„.,åmó66˜j–ÂtŽ8wåË„YÚŽ!{„v€ŒcnLcQ QÓÐB,‡K,:ZØUQI)ã_$‘à„|‡ˆŒæ)0‰Ší#b'ÈÔOõƒ¸«‹ÿ§ûOÁÜ+óp·–Þ -pµ§18íñYò¹XbêyÓˆÇ|x†y²vœØà+ÓO‰àþˆö“s‰-ñFØ$*%lIIg` É)FÙ‡Ãò`ªÄ)£ÈržÀÜ[‰'[6Ú†QàÖ0¡ævåv]h!×:sY2H¹÷EY«œº@Æ ¿2NÜ%‰'T‚NâšQçV<¦å·%v]&W6s™0¹öÅI©|º÷‰áˆõsp mðãeFÙä *]l¹Kg^ øËHØgÄg*K(cÇreOcÚºNç/>¶\yвW€»2¢ .ÑÄ@“C×AFñ»'±ÈŸ0q,hÊW´Ö.²{̬q7®b@º’=CÓ`R¬¤23Ŭ½å&²¿„nYî ìúdLý߉åæïÏÍ’øðŸûûøMsóˆÚˆª®¡·j"*"ª­|„ÉÝ} ½=<5Ç'w]ϽŽLʹ.Y'õ±éžZúfíf RDvy’XÜéÄê~èŽsNºJÞ¼ác{±÷›äð3msóÙ¡ÜäÄköÈÝ—j‹â1ô˜[ &D–ng6öüáb¬\÷Çai©äš½%‚T˜¦¹>PèâI %l•6æD†sÌâLa1ò‰±Ô¸úd^Ø Š¤’+6ŒÚºvïÏ•]hE×&¾ÒÎ[aË f2;ga”CD€ á|Á ú«üÅ\_ý?Ú~á_›J\Otó«=OÅò7n…uÛÿ9›àjÌåÓ×é#&Ã74ëÞn!… =™)¹4ÖW3­¬díóì¥È4û"`½*Q ríCõ½tlrc‰ó4WjÞu-ˆ´'1îð™ 2¹Y‚ê ÐHxÀ|ˆFxRvšÙ+O Â-ç DædfɘAŽ ˜“é¦Ê‡ §ä›.TøâÆB8bÑ„ZŒ×OÂwÐn€,¹†ÏØzË$"çëe05üÃâIX¼ìPsbž6è¤_“ì¦H=”z©p]¸7,ˆÝ“¹K¥Žr6¢p†Û/±!Å GpwDUs~«Øæ5>«œ‰ü½=aãÉ.àjq-|h6"-m£Å©Œk‹œû)§Öe!{i†ÏœipНh¦Fëa3æØ’dºÜ9‚iæÓMyŨºµÁò"¶Î@ëÀû!ɃŠ+­RBE®VÖ.¯Ûq^°–J°ì—#¦§ÃX— 84¦â–™°«ßYËö¤‡Í%€\Õ˜5Û—–b*ß5¥âLI/–ƒ!ˆCF’mŒÒ5î[[Ï3:NÛô3XÄ! Ó&4Ò¥Un © boŸÔÉ8šdws ×Íd±i9ˆ§ŠmªÖζ|mÈxˆƒv\H›2AæL˜rÊ—.QI"L©2âžDƒ•Î)Žb¹Ä)Hç„sž÷+•Wæl©ìgTØÆÜåçÖË‘h7„ðfTRâÝHhzk7fǹW„¨À²€c°DÅUàH–0RJsåXÔÂ'f8°Ã¦ª=d˜Ð#ü½Ô÷´DÆ·ƒu\] ÌA;K²WÇ ®V`º á‚H"Ñ‚lmÖ¶@õÓòu/ÒÍoßLKâû`?to¬ÄUl.sáâUŸ$›q,ªàG„]ÕbûÆ©žÍ #ˆ=EcP©=âé|,XâK qéû8ã“cG êp²ÉSf («¯gÊ^’­`Í »FÙ>AØ‘Áó²k+‹55Ѷù‰öRãÁ„ â°Þ•(‚·NQ„zÞšÊF ¹½íEu_‚Ös²ŸºÉžÚ¼£„v‰G])à”yÀ”uÔk¨B„רû6Þ,Öœ¸Ä–ó®¬K­9‰ÇqvDù•ÊÃ@A‚3É;ãÀ„0BºæÇ˜º~k ã [Î¥±„æ ÂÞ$W+0]A: ‘hÏ NÓ[ biáµ~™ÉJfÓ#âzšò’Ä(NÝ%åtWžP'PI©aË`ƒìÚˆ°œs†ÊžÆ µtÎ^}l¸ó¡d¯veE!@]£ˆ&‡®‚ãvOc‘>KÂ6¨ƒäFµ†cîË]*°Çµ¯e»/¸±]m<œÆEsÐ@ApŽETTTTT訩ܨ¾”õ˜ÿë[ü£÷åu\6ú®ÄmÝBÖTΊÈU¥5±$E¼µo7Ùó›¢n˜…:hË` ðË‹$Š\OtyÚu!l+Š™ÉÍ9©YˆJ~^*­)emÉ^ìÊŠB€»GM]ÆìžÇ"|‹ŠÇFŠªC˜¼¯h"^ÖJ”ukÊ&“ ŠšÄVŽrx•z Ïk}ÆäÇåýÓܽ}>Œ¼x*\fä5ô*·!Ú÷3—¼rÒKz È%Þ[;•ÊÆÈhœA”há?ßzD»Y`™v cê°¼yam½™$,Æ#…ì…ƒU»BJ¸0 ¢fX,jù!µÄ§6 9zêªö=E`܃æ]1¤J.ü⦛*D‰N­7RH1£|╈ J€Öx~ÁÆHÏ#4Úã Ú«-K K œAÉŒA¨>¾Á`Álq[á‹@Lj€›\â¶ôä§cbÜW°¤,îÅ”1¹Ú£LHï‘_"d5—ü‰þ”1/Þi¼HkQ¨r¢"tDD#²DO2'™C˜ã¼$(\w bŒá‰ªG Cb¿5hØ™58'íwýÐ>³ý'a¼°½ö¦à,7ówÙ"b,EŸ»Øzš“1~>÷Ž|ñ¯æ•3»wt´_9ðp=ù»ìq0î"–O½Ì M±ž¿{‡yówÉ%Ý»´[ßqŸÓ6"ûýgâû¯ÜIë0LˆEÞðÕT¿A”º˜£«ž-%c»áÉ´Ev÷Bòì#½ö&à,7ówÙ"b,EŸ»Øjš“±~>÷Ž|ñ¯æ•3»wt´_:0p=ù»ìq0î"–O½Ì M±ž¿{‡yówÉ%Ý»´[ß1\HÏ3ÆY!´rÌs÷îÀ;©LE`Æ›#•<ÌŽÕj½ hÚBˆâ¿ˆî\ú¿GOIZá·êfäÏÜô÷x—Å„ÿßßÂkŸ}‰øO Ož/³êÙR«g.Þf,ç—Í(q JÓ¾¼fšÙ"í+-¡Š;nï8øfþH#bú0C¯åÙ òqlaÄ’æXÄÙO³›jÕÆ.#ÒÙ#B(íì÷Bðü@¹&¥ì”Uóª&¢TE_Bjv^KéñEý°º·Öa±„á)!šò<±Œ¬{âÈuí”¶‚CZª¡3¢Ê%DkÖ<€l£s¾qgX¤p`C“4Í5JáE ÎFæ5H­b£ÏcUÙfæ§^E=„yÃn[«N O+ÌE*LmÅ 6·Ä=æ7pZ‡“¾Hti²;w;taÂôòb>tc$ÍŒK縫ØUò7൧8O8Á˜’ëjìƒ^È,°½Fði‡,·.hïmÙ¦Uï0«)ÍÄR ÍÇ;'ŽÓÔ…4{ÃèR£Cš³{Cµ°„­ï€û n WsÙ»[w³p­Ž_“Ûí‰9óÚ»4Ú9¨b°퇂ü\šÌO‰…­’YϱÉÏ…_6Ͷo,Ë?F®¯yÉ‹¥*ñ{ŠÌ±Ý6<~RŠ…¥…üÜÃY—tÈ—EÎ}˜aÈI¬¦…c*;\èùqî­ÍYÜa 5ic'l!æ'XR—,û1Æ(âÝRlY«HÆÆ"5-q .°ÆVuü-†êÖBN±æ¬¡Â6Âį´‘ð$y%žM¸'ö¤Õ¶ÍF_ÿâ/Püß;ú9ˆ¥ö¦Ç)ñ¯à\·Éo|ñÇW7󦟂q—ªX~©ßS¼—aE±»ÚݹÌó\ý­ž½˜ ­:‹¯sS4|÷® Â6ûÊËoµ¤Cn³áêC€Ž]3fvu편ËHÏ.-cäX'gH=$âüêG› Aá̆qJ‰.)ILY1ÈÒ‚Ds‰Í(Nµ¤Fædk^Ç#‘€C•'kRÁŽÌAü» a´ÑÇ~"€ØâŒAœuk¥ÌqfÇÛy9³ä<‡8é « ê9ZÒsO•k& Á™êU£ŒXj £5€BËR”ÍxXᇋ.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÇÇÏñeÇäþ>>‹.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÇÇÏñeÇäþ>>‹.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÅÄ·;²fÕØDŽ>ϵfáäD(DÍd‚Á·YÖê{šÄÏ79¯‹»Ö1#X’\V bJû7d6ˆ"x€0µÄi¢ (ôV²ã5ê ´¨A Ãd¤¢˜â {ruH†÷¯csÂ$kÆ ß$³ƒARôy2pf †Â„Â{H"ˆGŒƒ#Zñ½ªŽcÚª×5QQUä ÌêsáyØDå`Jª›&ÖõŠ=Âæ-Åq;–„ñ„›t’Î'ÉnóbFÁ²çêÄØ7™ÊKœi3¦áÇÉÞ¬±ŽÙfšúÞq¸u"F4ÆÖ¾»ya†Êº7¬Ç´Ï¯‘jSá‹Y5õñSåI¹¬ŒëJ6Æ'$™s šÒYØÅ ÄW…þ Î"ØX# D™XITIQè`Di1ÌÖVæß?úÕÿ(þg@G‘_SñW'9­\»F×Ò¼|X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?Ú…«Œ$DB75U{S.þ;¼}ÜwqÓŪ®q&³A7³@º‚¤ÜŒÿ!¤+@0¾H6f s¤E¼bÍv†s©jÌEØ{¿ƒ¸W•úe5ñbÇ£Y9ËÀÎ Á0ØP˜OiQ¨ñdb«^7µQÌ{UZæª**¢ü:Ë Éö;ê´Ã’ÖQ¢†#‹XkO- ­ÊòsF‡b7C”îFT‚DìH?ï†Æ8VÃõ "$„gîÑ'WΈoþµWsW+ÿ–VÌöVàé+#ijÂÇ"W4œ°YEs&;¡GHNT<•ÄsÈé@G#/L!>5¯©–êöO2—,û1ÆYÚŽ"l!Ÿ§HÆ÷ª5cYPM‘à£Áœp’<ãÁ|(âHDY0°˜§•M„iìãL‘ØwA,ëðɪƒ}¯¬¶šqÒøvðß_fí¾Z]¦4‘qYjmú裑#\t(Ç·ihÏݼÁº9I¼= =…sä9ˉ Ö VÐk®«Rª4WxcTi/8‡R;ðóXB>Æ¥ØqÞ6ø7ð _bÉR-a. šêöÓ*B©‘(ÇÂä™c„ˆ®£²ÊÛM3Ö¯L88†¤y[yáËÂy±Î\’Ço™„pä=bÐáÕ†c—j@Ž«d”ý¢×²DŠ˜ó$‡íßÞü#ÎÄqæ˜T8ë Ö^ƒ`™\ðcÓB‘7–u½e”RØ>½ÜÍ"G}“àÿáßS8Ù½ 0r‚œÈ3§V:t‹*¹“PÖzº¾6j9Ó&†Q¡Ø¡['‘®•â›ê"u‡ƒÏQl$AõrØÌ&)ÇñÙ¢øøN$èâõ'^ìôâ‡ó–±G',Øx†®õjðÿÿÞ7ÿ¡¸ ¤Æ¶üÂQ%³Å[©”Ò&ç ºôõ?mö~ß"°ìª­j*Íz†UMs¬cǹmÕ+¹[»@¿ 9ZIÔsˆ×+FG#GÍWÊÛ)*í!†xFF¸ql"ØWÂâò>— ==h§Kj>,+’Â3+%Éc£Mk£Çš 1šèrÑFÇ"Æ:{»gxA;À)6"t9±%fjm˜¸ÊV2$…àÔœÈë!OkÏê‚Ä‘ ¾—zÎÜ,iàÈ6²4ÝN³¬wJöL§|ê]Z( |Sðˆ%”»Óþ‚¾¸þï†%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_mÿçqñ/¶ÿó¸ø—ÛùÜ|Kí¿üî>%ößþw³Õ$Qs^ô+z÷øû¸î㻎î;¸îã§µ6s"1òòì&¸o)²ò– ·!™ê4j#̹ªÁ¹ªŽÕ­‰¢viºü †<|]þËÙ¦ÆÉ¨³il7Œ÷ü¨“£fÕÍ:3²ö@=¡î ´f|R<†Œ£q#£8µ"m^Ÿ Pâº(ò&¶:LJ{à+úôAÌl~ZÌ)ºXñ >DÀÖOI´Ïš­‘*ºCšœkÁxÆžt"ÈšåŠ6ªT»ŒZàó•Q®o#iÄdÙ< ÷‚&™. Bº÷bG^ûISàEKʸpE¾¦<Ûj'ÙVCåÙ¦9RÄhñÑ’L6G(ˆþs b;оD)2]8À‹8•äya¶Î ;’µŽÉÊXÇ•ã<€/ÌÇÇÁžÝ__ˆäòÑè/c“ƒˆ$ D@±‘Ñáb ²é"ÕÚBÖC…[0uñm¼XçëgðÃñ#‘Ó –E6:ÅÐÈân]ÅÁ–zÇx¥VÙSͽİ$ÝUÙÄQÉ‹¦‹.$È¡Cø¼Ý lì+ñ\¹;†]Ø4ò*%×eH±ÙËȼ´&àÄÚÒrŽÑx?0qÆPS–•ŒÒ0k XÍÃHä)Lî`°ª£–[‘è7ÊyžN`Àp]4ˆé{ãÍdŽdYD…„\C±r…ò7aȺ)»:¾Y H "Ç¿XÆ‹e 4JÇò9­qŒ‰ •¨24ãÁ|d{áŠLY1¦H°fI….,*«E*1Xßv1¡dŠb¸ì¼ è'‹ câêy,e¡ëY^‘æÂu%ÑçQ¥\Ù͘)¤.è¢á|bàr².+ן d,´¯’z»nPk*kÛ^ë8Rß]½$’ £ºN‰ A¶ñ‘Ÿ SqTˆØB)‚§jÉ-Ù-%.B/À·‚Ó€F”R£<|ø »HÂBÃb!©†ÛÕÄVš¤i¹CI“ ¾h¤FlªÔŒç¥‚Ì6IRc”ç8²¥´5Yq_2®Æ6áƒÌA°ŽH’Á½‚-Øå ÷Q™šµ Œz#’óînb ?שV0Ê ÓJ°Z˜»ž8¦xñ4Z›JbÎäb‘$Ü,ø¼%ý c/ÁÛ àøSö£ã Œ=ˆk£ìŽÒfˆqUìøçÁ‘Y°Ù…£Ï~¹"²‘#’‹ ´rÙGdh0cG… pć G,H±ÆÐÇ8ZÁ8Æ!1 ­cDNˆ.Râ¢å±ùi“°ä˜‰n1 ÙÖ¬Yd) ˆ|¼ic%,UdY&‘x¡×áü?_ªšª:Fƒ2.؇›ž÷9ïsÊy+É"\¹,©’ŠiRŒi&)]ó©a83,KhWáXŠñó%±.؉d ,Ñ":YÈæãò ¢Öâ5œT'ÎåuÅi¹k™Ñ, HÛ¶&Á9QM´vÚ8˜ý³ ‚~ZHDZU«ÛTø‚À¸–žJîΛ¬­Ú9 C² °ÏA]r„-R+yù’ëf½>龯ïmߎ?î¿v'Žãé:ÃïÖù rÿ¼‘“þeøøî㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸îã»ÖwqÝÀ/ëÂþzzþî;¸îãÚñí>× ›O2M|¦åì‘Þ­ÖÆ‘…Ù3:ŒñÜA ÄŽfЈA¹:p!^ÒóèÄ]Ûǰli{àHч!Ú¯96 v°™Š+vQ…iX„F»<Á4rtUo” ™Õ:kbjLœ™µQWáªWEDÖÇXðïb|^ˆ9ËY…7K!gȘÉé6™óU²%WHsS‡RÝ7š¯•ºz ð Ãynj8ƒj¸œ­„]ÁÒ¬…! ƒsI*¾U}„Ú‹ëYQåâ’&Òâ7ƆHCí8Ö8JÖÆYi¤UYKuæzJšaFD Åãýlþaþ<(ýdÿ•Þ?ß^ßäë›ðÃx±¬–ÁÑ*l†¢{õr~§@:»B@ã×È»icƒQîóÏ–p\™LVìq€)äEŸ®\K‡kÍÐÕ‘¤[sqhž+Ù–Yìw†ÙœI“œ‡‘Wú¥àïËþQãú¥àïËþQãÚaüe‡ï®éq¨ ®¢ÄT¶™UÝ×Dù²¢B,‰i±.Ѝ„qse˜R:†Ð2$È8 c{xDc£…ôøzsãDcÜ­Óf̘à…5•.L…néÊ÷YáBrœÞÌŠëFE.EE¤GîDŸröH“XÄ‘*®\ø››S²ÖÝnäb\AgkYbèKQ3‰Qaµ– ,‰3b„ògH’EÛÁ sì;ÞSÐB,†ÄË«(UQI)ã)™r'|‡ˆ+Bש0•èÝ#z áÎðNr’;dµô¢±Ä±Po!D$ì9 Ö¤j ÕÑ !’˜5žˆày+nªÏÍV\xo‡i]'lÁæ ØcÁˈ}™nÇ(ɶq ÌÕ¤ƒcÑZž/ HËðvlj2åƒvE¹´«&á™ÊÎ,ÚŠRHÈÆUeÅŒm¹ (S˜ÞA¤£ùÖ‘6l€C‡ •.\¢ŽuIÍÏA]qJ]2+yøq,¦½cÍ… !Ì¥D—£‘TiiA"9ÄçÀ0œÒ£s†A¹¯c•ª‹ð¨ Ï,±\÷gñ*kâåæöÚ2ÏÍž}{¼cD^£qXïqÊG?/wÉ{W§§.üüwIÖ~°÷Ìè‹ÿ’ŸðÉüÙÇýœwqÝë¿ì㻎î;¸î㻎î;¸îã»ÅÝÇwÜ rî#?œž.î;¸îõÜwqšôO:¯›˜Ã$³µÆfâûW?«º <–»½éÝ—™xa%è€5DUQ -QQŽïw°Ý\×#Æuk™íVmE¨DU]çû)³{Z×é#óQµèÔÌBÛyª 3_…àܦ|?ˆ<Y9•í‘âù|ë«BÝLe#’©Œ)b@ùr!JyÁŸëz!WóKVÏ4© ø9µvŠú)0«ŒÐéÍYØRÊ—ÅÁ®Cä‘ Ÿá”‡ÕY_a‡-"FÛ mN¸oÄûÈ4þb=XöÈW„\®  o4‡Œsõ³øa‡øð£õ“þWxü}{’<`o®oà Aâð—ôÿŒ¿¬xð}:wƒì6lÜ…%Ì™/ PÈ•.TŠ‘&Lƒ@yO å{Êcî!Hç=îW*¯ÔÓy¸wòwÔÓy¸wòwÔÓy¸wòwƒ‡(éè!C¥–-l*¨¤”ñˆ/’HðB>CÄ ÆsŽDÅv‘±v%ij»6’·–çfòÓ&ló“#Àð<ò¥“r\  Ø€ýõ¿HÚ÷µp?‚¤‘…i¥H#‚xO|+‘SзX£Ç|’ÓGŒPî¼X}ÑURËÔò“É<4˜ûldk šEƒm%ÚßLx%œÙÒf8ëP¦ç¹íà¥ÀñûðØš;‰·2äÅ|¯SXkáÞ{gì*jêžs–Ýå¹®B<~c—æ³»«kxº4î??üÿÿñÇá/é~ØñôiøE…~uâø0¨8’ÁÓª24‚5’ tU(^`…‚}ؽ¯<$‰K£:ˆ‘å¬9s@dùß“àÂÞ@°À{L"ªÈÑÈáºIåÞT©V@Ë8û²»^GD–Æmá$KHpá€? •(/ GIk ÒZÏGÚV²:4oGš·Œõi&l0îB)ÁÄOÛ/û˜¼xOýýü¹ùò`Sþ7Žï]Ýë{¸îû^·¹xî㻎î;—Žåá½>Y?—Žî;¼}Üwqå¹­ÏôÊþ^»{×-,²9Ê«’"i韹žk…ä`=ƒ×·¾v=^méíU乪ªöíµ3Ìœ0–’žgç©BÎŒo:íµud…b¶@ÜŒò\ˆî›qBÀ±&'\“=(®\ÜänjEUÒ’tøoƒl\ÇÈ`©°Å ¬ "É”jcâ\X\Y™±µ.ÊÂF؃¿6yÉ*Q¶€Á[§+ß¶ LÕ¤lcŸ;õצå¬jgD²#lFØ›@åE6ÑØPhâcöÌ2 ùi#ÅV­.'³$•»ˆ$ Èy Ê>ÃeÎ,P¹N®¹ -õ+ä­tŒ¾?kÕ}ÿªñ“ö˾ä/ÿ¿®~gD=âd!…ÊÒÃbn4ò^©”…GûR7ªy?W>?;øE_ùü~w/ðŠÏóøüì_áŸçqùØ¿Â+?Îãó±„UÿÇçrÿ¬ÿ;ÎåþWþwËü"³üî?;—øEgùÜ& IL³øœè"ïôíš»ºgž^nõãâS¿#ÿIãâS¿#ÿIãâ3¿#ÿIãâ3#ÿIãâS#ÿIãâSý'‰Mþ4ôž>%7øÐÒxø”ßãHÿÒxø”ïãHÿÒxø”ßã@Iãâ3ý'E‡ ŽË,ßaë—£7HU˪ô÷xælo‚å—ÈÔ²+´´ÊçdÏ$EUîOY›ÜÖýôzÏõ8é›ÿÁO²½ÁáR(—Jw¹¹1¹¦]7¾ÛÊO%ž]rË>R«žÅrjËØÄ¾È©žñ2yXˆ×n G¸Õ苞Z‘^Æ‘ýZ™íf™;ÊU̇ÒíhŠWhV;J…8Fµ­j"5¨™""tDDNˆˆÉðú¤ ¿Â,UÅ‚ß#ä¨í+â?ââJd¸4ú‚ ì5ihÅtw×ÓÈ3+Hu+½MaY82mE­liÐdÇ› lpˇ2!‡",¸²ÓG“@\ñ9Äö&Ü2Í{­T_ðWàâ|{ªù†ÙŽ”H´ÖWè)µ¶Y $Ѭiðý42¥|ðW¬Ò©/û-¢Ø×,¬=ƒëŸ»޽‘É'I™ÏN+ß.ÒÇdòf>7iYÈ—?”I% >c•Ž©Cjq‹ƒ"Lp|Œ7Œaˆ“e3TN|hŒ{‘Ò$6)“£È‘bI­Ú^ß p_&;fÈ„¥Ç†ã %,"b0Ì’êíÒLjYðE$ÌbŒ›…s] (ÿƒH,“ÓcÇŲäCi†²i0àaÉ4tvè£Ë, ÂŒg±rB–Á9ÎŽdf y1ÎX1$I †RB”üMo9‘¥±ŽWGèSaÌhLŒ"Å—B7hâ{¸²Ã2}ŽÀz­0äµ”h¡…ˆâÄ–ÓËpƒ+r¼œÑ¡ØÐå;‘• ‘;Ä’ ŸžØÝ<Û©;B([ØX°ŒæYŒÍc0ýÅ`B×XþhV¦š{X²!SšÒľ(¸CþiøXÆ"áXñC<ÑBói›ˆlDs$ø19ñ&Ù«à¬èÊyQeSÖ^’ÁõÏÝG^È䓤Ìç§ï—ic²y3´¬äKŸÊ$’†1ÊÇTŽ!µ,¯e‹ó3×ÔÏ©”6HÙweÔÀ¢Ÿ† l"ȯl£ÇŒY;0ljÌgòÐLÂdˆÍ™n¾.´¨Ä؇aDˆ7ï4V´+ºÛLt8bö‡ ²M"!Ýâ #¬yxÃÈì,‡È£q/q<ÕZÑd™^ÑSÆ›*î§št(ñ"‘¢II>]|y8^=À¬$DÂö±,Ó…›½«Ë‚–Ó—’P*G:½·aº®ªyR>\šDœt—Q8–?²RcO øûa©¾Ó´¨¥L‹¹wé—\ºÙ¢å§‚,Æìë|vŒ‚{ü$d˜ñü‰â0²L0 Ò§Ó˃3^W5«"lÙáÄ .ä‰G pµå+¶‘&8 ?[Ä‚#b$ÙL¸ÃÓŸ#ät‰ … dÇ(ò$X’d+v€W·çV*Óoú—À‘ ò1ÂL£5ÖWM€s#{cÀXs B24Ëx K2~xfúW)…q´‚Ÿ’›ZÉ©çíC¯c''’]_+d_šüì¥z@Sá¼Yå¸Êaç–ykÄU Ï.™åŸviã’Ìü–¸NDýSÑèåÏ¿ª ¿c§zøð‰$œ1ÆãZÇiF Ž‘.ŠÒ$@#ˆ­E4©F hâEÖiFŽ#ÚÕùÅûNWÜ_Ç”ö¦^lúõýOÚãÉM]ýW¢{‹éTþç#Ï5TF´iÕW¹2ò—?F}üf_Ç’.nòŸÕz ¢§MHE¦~uEN÷ 6ô^bVz\ŠÖgµ¸V¹^-MVw¦þh™#ž‹%ù'ŲQç’£•¢DÓ“³î.¥sMKòÇk£—á\1Ò¦ÅGâ«LE:¢$H‘OÚ%‘Æ}E³œq¤ÑbÉŽy''æ|’ÒâŠZûÊÂë^Zx]ƒ>9âspÒE}€ãÊ8ö0Kt]׺4=uq,ž|-H¬…6CuáÌ_R+Ä3EŒ“¬^qW[UJ¸$ªøƒáéC¬rÄuš´lþÈõ'€1Ç)ÿïG1'joüùßÕ.Ûä·»;ô;]«”×ð^®zIë¼#â?àÿʰåaª±Å°7æ|¾€ªD·ÚWɳÒbB»ÆÉ±8d±H^[ ÖîXšIxŽÑ±%b9¡”`•Ñd‘vëÇÊÃh롆,QG,‘É`I2ÏÅ®¥Äö6ÎÑå±%ZHYÕÜ­”9¦ØH–r> ° ·8Ã(š·¨$‹ê—ö Ä\Ž÷%Û´V6ÜŸ3µÌò¼þ6‘Ëó¸7¶´îì‹^­¶d J_ –öqw9k¼-"¾t}à’9¶%ÄÆB-Øå( ¶Fë 7fǹûÕ/„ìAáµ»/’íÖØ·±ùÑæy^~þóã‡8 í®WóˆµïyT>¦¼'b=“Úœïa6ÅݱÏöw-Írôù3ìîó_Ÿ‹£gËÝ=¥×†K ‹9[|ͦ‘a:FÈG;òåã"È.ÔqÜ#´crc‰+ÔׇlA‡yížw°¨¬jyÎ[w–æ¹ m˜åùƒìîêÚÞ.;Ϋ]b{ eg_Ïs8’Ñ$$ëjÊdÐ碌 IG’(ÜœaŠ=;lÒð:¼]YÍòœÓêìc™ñ-*$KޱÉ"±þäw–9ur¤D„Ið%ò€FD­ð[á'ÜáX\Ënð…VqG€¿œãŽÎž=…œ¬žBÍ”•§ÂðVÐK9+Š–¶Ó”´Æž 0,qüËl‡n15¤ƒ7ØÛ\xÄ¢¬yXRI,°;ždˆ‘B4åÏ%Pòâv…æ#º–˜ÓJmÖ2¶ ùVŽ$ëâr¾,zúèÑ«£¶<²s,wÌSÊ7 ÅÕîjŸ Ò9Ÿ  ¨Êª1&C4y°¤#\@¸Ñ$„Šy1çÅ“ $±¹ð3áfÂŽAyNZ“Ba`ÎЊnß²+,¹fL´—U¿‚ärf(B=©ëTt;K¤Ç–]PUc+»šÒ>)’4ºú»™*¥È­•FØHX£MF,iÍ%!˜ÂòÒããþ\à~.IJTÄ‚9¨ S‰[U†©ÖQ,  Ut[YõŒ²,¼+ÒOØXš·@ë±4xm˜fÁSnH«±‡ÌCí*÷k1¢ ÒÀjéÏY1Ðȳ‡cã Ö>©l$Ä…("–ºF ÂÌ"<*ˬLÂÄ»‰_,rËÇ ¡n«£Uˆ0+má@“W'áÉ’0Й† †h¬"QåP µN«¬™®˜)¦‘T݃Žž9D å˜Â®ò#ÿT'¿„) –(wU¶±G)ƒ(Y$qçc“‰’#œM3X„hÌV#´‘è±§Aðµ"ØR.Ș<‘åD•4y1¤0 ±… „öDk^Ç#‘ЬCuá×ã*Êþ{™ÃvŒºH6<ÕlÈAßYx¾Ò?À’$Šx÷ ŸÙ¢NÛô˜:oÁµî× ÊŠG °Ùx}^8öG—Í9×¶€ùUÊ‘ÂÕÊÒ`'‚]HÄtùãžíƒA‹Ž!a7µ0ú<‘ëO(Z§b‘j,Uc™©ù—0óÏ.Ø‚¯Æ7ùmš‡ÚîmojìŠócNà²æ»;•ÝÔ»ÛÛfÛÚŠ_îûïúqÃ?~á|ãZ*wötÜ¿ƒ…`Ú¯r*£‘ªŽÓÑÙj~{MEVªyDGz½3Èär«¤c›œº•ºS™å/zhhsUT]_+Â{á3Oňó¹¯Íùe«s£‘ºšb [šd‹£Jf!ê'ûq|²|·räg’åjíµš›–½]þð²&Íⲥ˔QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâëNØ’ËRÄ>â, 8™Š¶>Ã¥ÎSYͲC¬GÛ˰’µ²2ùä¥ÄâSºsò·q¤UŸG3!YGØl¸"”q‹)Õ—!"2Þ|“µÍ—æÂ æR¢KŠQÈ*4´ ‘âs„`NiQ¹Ã Ü×±ÊÕEõøßéCýæ›ã—û‡þûÇ~œpÏߨ_8Ó£s\Y ѧV½BzhÓ×V¬òÓ—^îÍ9#±$t«ÑSQ5uÑ2b·J6ù+¶¼d¢;,œWyEµÏ7¯r9ZŽV7HõuF'¼<|['EÆ.ÕÚ&Òxxj3Óš×±4£öܤeh·¢ÉeXE šHÄá>yO‚ì¥n\á <†ùµH™†d½y]óO*GbJWÖ—f,hµ†Ã°Ç¨„__þ”1/Þi¾2~ÖÝãÀ¿NXgïÜ/|éfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñsŠ §lIå©bqLÅ[aÒç )È,æØŠ$…†ûiv@Ö¶F_<Ô¸œJwCŽ~Vî гèæd+(û —RŽ1e:¸Rä$F[ï’v¹±òâ<ØR2À TIqJ9¥F6”#œNpŒ Í Š78dšö9Z¨¾»}(b_¼Óx“û`ÿtwˆŸµŸ÷Axênâ0$•OgÒ0ä5îŽùò…,,;FAÁqÔ#FQ½Xª#''¾l|?_/aŒ§:ZԚûÁH¹Xò£<@éËSY0ÞFͬ³±JÅ1c'Ï8Ád]ÿSw³ðì9ò !Õ€‡[eRs>Oµ€²$£ l+ÉëOP&,’<˜ÒÃ@ Å€p‘2„£s˜A½®cØåk‘QU8•û`ÿtwˆŸµŸ÷@ûèßÙ4 5eY߇hñ¥Æ}ED‰¸óc-– Y„›r'½d¨™b‘G,ñ£ÿ= ÃÇ(SÙÒAãE­à Tº#´¦Šc˜®—K¼R#$¹7Bzó#E½tŸÛû£¼MnYïö¹&î~ïÄò˧~~l—ß>ú{ qYÚ…øv‰ÑO&$–[[Ç6K60L自†9·#Ö2•ÍŠ9`“ á>z#Í… ðæC8¥D—¤&,˜äiA"9Äæ”' ZÒ£sH25¯c‘È‹Å,€Ý ]Aiß2¿“š'¾-” ÓFˆùŸb P¹¤Œ!KØæ@ŠËëdþØ7Ýâû¯ÜIï¡Y‚âËÕ]†à†}Œa¤Ñ² V)˜’ÚG¶ÎN‘Ð ^pî‹Úö€YNy?ÏN#ÀSeîvnÞ! ŽôšRŽ’ò·¢\òA4âUÉ 1¶1I6âÊ^R·èÞ¶CsÏ2nweñTBåçöºòÏÏ–};¼Qÿuû‰=`%Ä8eE”È&9Xhò#™ˆ@œ¸e FæeœÇ±È檢¢ûåØ[Ù—®ªƒ.Ê|²›bL£m…9v€'¿l#!_–‘±ÏTjÛßÍ`2òÖÂâXâµìŒ96rÍ4ìŽÂÅhS9Ò¯F"#È÷fåùéÂX”ï¡Àµ¬ 2d=E˜‹Uo) †¼É²t¹Z&•y‘‹8ò[œrzÙÑe€Ñ¥F*G“@ÞÇ8Fј ¤„F¹„Ú×±íV¹QSÅ÷_¸“Ö`_¤ì1÷–¾]~7 Œçfcz„ Ü9&ºÈûdl‘{iÀòÁ\IÏÊ4çíiß Y@2)‚42â®¶vÌsnЬ£ãñã\‘V(ÄJïu{vʝ¥t¢&~„Dóx¢þØÝ[â_úNÃya{ã4 (Ì'ûR í Ý’äº^ÅV®Jн2ñâ›èL&RaÛ»xƒ”Ò>1$ÖÖɘH`ˆ¸(Z…hÌ"9Šäa윉óÝMˆ!0™Gk]qršGÆ$šÉašH`ˆ¸(ZÒ´f5r0ŒvNO3úfÄ_ìüQlî­ñ¯Î5ìè¯Ú•šÎTbécöÏÊè#^7è#í/k˜ì²sU3NÕóZ|’ÙV9‚;˜À"1Ï®.˜åY Wâ™ a}†+vPeY4Ö1ç™n´jæžV3™ŠVŽTmÕ T;áó¤±äÅ8Çÿ£üKSOOS‰qÿH¦Ã¯­­¯‡7ö(°áÅûXB?jÞ Ÿø`ÄN!ùžv?«ŒO{{k˜d€ X’W4AþʼnSb×ç,/ÇýÓ˜ÿ÷¼Eÿ_ø²Äuñ=ä*:{›«‘XßbúL‹S žÛ¬dkŒ@)ò$R›¦QêÆ2:n•§#ãVÒÕøCÇò¬î,!Õ×Fõoxbu„Ĉ 颎-Ù÷Q…šµŒb+ºÿT~/¯³vç3®v+¸‚,ŒDÅŒ¼SG"F¸è"r®.Ñž@7yƒl‚ÿÝ9ÿ{Ä_õÿ†Xâü[ÊæGƒ±Î0´Ù£:êåömœÎaòU[Ù1,ypÆ“")m#îàâ<]‰ïá YK;«û[X£”Ëì4IyÒÎ&H`Žq4Íb£1XŽÒG¢üƒUP”’1. ³Ž–O®lÕ¨‹ ™Ä•SMdúû–D™±LÐcÆ"íÇ–y‡„‰–-ê#Ȭ›Y ®i¦ž¥C”h@“¾Xï)éÎWÊ‹[e*-q'’ºwÀ p6üæ4~™–/åcév’ j™Ê’Ý& ™°$g½™†‰­ª×pjYÉ“ÎÖëz|X-k'BáüâAMxÑþVÒIŸã“–ßõG{KM¹½·É옇™Ñ´NcW`ò›:—5Ìn®ÆÉ“ç¿ÍˆÃŒAÃp)ÜÙ H²pó‚kÚƒ![°Y•‡$W+Œá<£ \ð³ÅŒþ™ñßû?_Ûû«|kó‰“Ó‡îSü]'ÄÉP¤È‡(Z¶¤Ä1#œzØá¿A‚æšÆ÷1Ú\š˜ç5z*§‹|>Û‚Ýæsh­€4åÇ«{â3öÂ3?D¦²\©%Ô{6µ2à=›iš7D­’öƲB4 $£HerûWn'11nAOTù†kÚúrÜÚây±ªH•¹Ka`†¹ÅƒKŒ(±æ ö²)|Ì«6E”'1¤Èí„¿¤ eø;cǃO§üøE]ëMA_OøBÃäǯˆ’•++Ë[*Òcc \WÈ&(ÁÒæë"ÓLlhŠ»!¯ù‹`°G¹,zpáÉôŽ•¶TqÆ›if P˳™˜åu"I¸Qˆ8„' L§VÞHÄÄŽ˜ƒȪ4ˆ0¦$ȵµõЈøqô†öÀ¦ÚÛÉÑ&XÖb‚°d¹Å7ÎaäúàÃÎ .Ô7°nöyLÒcÜÑóQœZ7¡Žãu†O®’Hv‡‰(ZwN¬îz9ÑÚL°8µà žæ­}ÀY´“A¨ÌŽåå îÈ»… w"Ëã¡öXÉ=ñ&ѫƧ‡þ³T9îTZ« pZO÷f5|³ ÿ †1?=7çÂuD‰à9pö$$¬fÉQc%˜Q !A2ÚEé#Ê•­JAÊŽ¨¡ AâÆæ‹dÄ»²žÆk3‰ka&Òu ïjoÁ™úw¹¶f ÍxÛÄ_Ûû«~rqzh­Óþ#Ö´+ê‚ gäO+›=Ÿ±Zi)¨Åb¿žì‚GË7ÊNZØÃçy4„…79^ôs‚Á¡f0 |b9ä#žé™! ”³š®ÛA€a°¡0žÒ¢#Qã(ˆÅVdb£˜öªµÍTTUEùšÒÖ r˜/bŽç;›®Ž„Ý‘(qÁÙmXãM\ø™–Øõ9IKM»½¹Îo˜‡˜Ñ´>_Oor›:Ÿ+Ìn¦þÈ~{ñÎs³,ê©îF´|³cQË— [ õ"§!q 'Gkñ¸b”¤ œÁ4Þ,Mû^ƒï oŠ/í€}Õ¿4`‚¶âÖ¼¢ŒW „¸‚q]afÅ+†ŠE`ØÕz¦¥k™äÔãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“ÇèŸÿYIãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“ÇèŸÿYIãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“Ã#Ÿ^œsB`–ÞyatEä+21U¯c‘Z檢¢¢úÞï¤ÓXH‚÷eºÑª<Ò±œÌB´‘dí!Š¡æM—½H-ÉÈØø¢'f¯æ„D|]þËÙ§FÉ­Žm-Žñžò?” tc] ráKè,ô½¹ª***#ÆA½2ˆiBV¼EcÇ5>y‡'@¡_ÓÙRÌ,G ’‡Ö È$g˜G$0G{‚â€Ãiªñ¹±j0$2ªš;ÃedÊ1 Ó&K’eFµdM›"D³4#QÎHÑ¢°1Çâð—ôŒ¿lxðiôÿƒ«½f º¸íYà<@ CE&¦‡Ù…"²ÀšLyó$V×’F‘ syF6è¬,¦Ÿ‡¿bªzb²8%¥y¤ïÜš,™K2bQÃI3c¬–‘Ž4H&ÐJG0Q¤<£Ÿø³Œ?êÿ ~ÅT÷%|sËZðÉØ¹ XÒ’¤Ë£˜‘îaGI.ipB2!ãnx¤Çy(ÓËíkæ½Mۑռ͞w—ær/-»ËŸnÓÔUçmv/%Ú_™—Ü·hó|ŸÇjø;ÛÜŒ¯ˆníí{.c×ãäo±Å8¦¤‰± »›¿• Uyq¬ãÐF³-Tû[6LŠBr&½Ñ¤ ¿G?ñgÕþ ;^S߇D,Ê[(V±G)ƒŸ’ ˜âd†à+‚ç¡3 êÝ$b¯ŠÉ¶˜ÿE‘OÎ%ŒT†´ŽjýÄ—²cÉ-™lñ=œ„œù å‡òµ´µxËš³¸°‡W]Ôö*1:Â@âDôŠ1G삌{‡(ÂÍZˆF1ÉÁë¥ãÚòÈ·¸JºûËÈ.ÝÎÝ‹JZ» ÉY0BrÒ˲d$sh"Œ…±=„ÒÈ<`U˜…ª¹’HÑRiÝ–ÜP-eÇ]Ft¸ÐË ÉMíQd ¾nÆ#±å)JöŒbÚ®y÷*5ŒcQ\÷¹Q­j*ªåÁ®„U‚%An†u+G 7”Ä<—µ^m§ÈprˆCw ÂðÙ•àÛC~̸¥i‚DaQâ"°Ãat‘Žc—£Ø¨½cÛFf½HpÜQ°¦ÚM®ùü“ÇR0%43Æð{m¸öTóoœxªâ¹Û²…O0•¡Ò «ËWB‹qZ¥6ÖéÞS¼…wÏ}L 0!ª½§šâ´Ž £¼—í|UaÖfQÄœV˜|±$1…pÌ/&ý¯A÷†·ÅöÀ>êßš5ûz2õ;Û#³Ï´­½ Çõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÄLöòæAžHþíÖççõ½ÜwqÝÇw“Ic" ÝñFQà>–Œæb•¤‹'i ]ž`$Ù{÷ ™961Mk#±äɶ-*„-s‚Äæ`œ§:ŒiÌÒ#È)t Â*÷¿7«'UM>+ô¦ìr#ô=ÃvNÏŠGÑ”n$c´g´B‹Óä HËðvÇŸOø7ðлֳÁ‚‰Ö3¸°‡í/!É{"u„†A<ÒQň ­ajãŒ8sS€#2ñ|<Ûð…`*Ø‹ðÅ:¾®Q’¹¤ Óã>žÂæÎH+êmŒŽ0ǽ!ÆÄË+\{u 2ñE•Í Ü;Y£²“Ìͯ)¥0[<Ç"G)VaçÏ•aa7ŽÙ¤Xø[Â=lYÑâø,X2a qÙ=ä¸,I²#µ°¢‹wlè k7Ù•v> Î"ØR0|Iå„‘åD•˜À2#IŽf° ±â0JÆDk˜ö£‘S‰ØkÁí*K.[…Ì̇½ÉÌ>?Á$E–=¹q@_b;5èÐýCsØéØËÁ‘‡&áÉ*+gÚ[Eº‹mi_Q²n×°–XR![%Æ“è7%Å•C¤E•]áGë'ü®ñI:LxP¡G4¹“%˜qâÄ‹n4‰2dÌ#€LyLb½£Úç½ÈÔUãýl¼ÛHÃX$y²/nÔ¦…*+,ìçÄibÍ“NVØ2NÌkdI£™ˆùF.œ7& ¯‹.-z×ø‘"Ù„†d™+irÐ\®jXÙ$‘õ\0H±"ÄŽ 0gF6Øæ‰2°ŽDYqd Á‘Ls5âDŒ#kObâz*о}M”­Sg¬ @Xã2\ê“En…Y^ h§•BÞÐQ#ÕcJ¨ìuõ ^»elmRî½å=9Êö0¢{Ë*šQGq 3VÙZñu>M…mÝíí&ÞÕÞÛ$ä2w?8à‹e&Ê‘œáan©xD‘"9‡ a®kžõ;á~š‹Ùå¹ÎÉÆqàs\¾ìŽ_˜å÷vw͵«Fé4ë[;»»9ðù¦Âq7)åciTä‘n%ijaÈeà)ÁxÉn¤¤tºÒL%mEEq«¿6WK[_OYs–®«‡¾ }ãA¶"D£‹vAJrmºÌBÙ½îU¶ð‡ª»7Q|nJÖ¨q–Lu¬ëXÑZÍ6¼ä«¹X‡KÌè œ;~`-‡.¦Ö£È‘c{ƒdWÆu¹Ø›–4Öa‘ÙN)d³®#–¶Èe’0ñ[ZyŸdkNù¸8ÄÊU²ê“¡ù<5‚w²g¶v|ñ´Çn±<˜¬± ²r' ñêý"ý§tþ\¸-¢è®¿É¸L„ €¢òêÝÉ#»D:¡¿l•2c*c·&1xÇÿNØ«ïìÿŸOXKïý~× ûÃ[â‹û`uoÍ+ÿc'øÂÓŽî;¸î㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸îâ:åÜpýѾ³»ÇÝÇwÜ{^.¾D˜2Å«jLC1Ç­ŽôNkÛ¬os“º±ÎjôUNš Ú3üЯcØ7âïöX™† ¬Üà›N®Ù Góf^¤mE˜eZ÷#«KZ1›ZÉË%,tqÄÎe¢XêGm¡7ÍO†øKú@Æ_ƒ¶¶´íÉ$œmœGw6,ùów4I°´¬—ˆ´Åæt½3f°o‘|8X®°—ˈ)éîƒl×8ã_Ñ=jt³ãˆ ŠèU”SÊÖÈ4Ø’§ŽVè…*Ù†ñ$ÃG-Ï.JËô ˆ¦"\ÕÐäH–€Š*ùÂ{Ö×$`¤H¶±˜ØÛ2 ÅÒ_á*âºÁµò* ‹î.ñaªˆ’›æËìê±T¶ÁƲìrÑUUK€kÖr¥ŽJÌ["%o‹ÁÆ=‹;Åž¬Õ–ä,YW8KM¹“L`I Þ\Mµ¨S;8ÈqËpâÉÝ ös…m£ÍjÇŽiÕ®([sHI v2%Õs RÀ‘»XÄçj‹5#’Ml™°”R‰âðû$4¶´—¶Ò¶l€NH6Ó¦TÜYb3×N—¨s4]ÙIt±Ä3ÃÇHq´@oçëgðÃñáGë'ü®ñS`jYü¤¼[ÏH¿tIÁdæáÈdf×Hˆ‚t±×â)rJÕ–9$4v5NI±%Øxƒ¾Di·øœ‘™8É)ƒ²¦¤]…w*Xñ-gâî—y’RI‹ Ät ?ŽÙÔ‹palO>µðg!ÊÄXE–HñB²{à,bG¿¦dI`œÚÇ…„,+ºÀ4 ‚QÆLy°¦Ç ¸s"r"Ë‹ m4y1¤ÏãœOaBa=Ã(Ü×±ÊÕEñbì;‘Å6ÿ½ý,2Ëqr­q|¸1É%áÊÈì)Øã8@14r°DvLZÚZ°rµ”õðêë£nܼøã‰ÒYÚŽ!på!Ÿ§Q÷ª¹xð—ôŒ¿lx¿ú@´ü"¿7cX┥sF1 mW<„{•Æ1¨®sœ¨ÖµUrâ]±5 ÌMÄMYÇ‚/"0´)ŽÑ=YìÒX"l¬³H+œ'ŒŒéå5È™÷gæû Á©žh¼N…£m±ä•‚f­YV yY¹W0«ÊUw_/ÊÏçÏ~× ûÃ[â‹û`uoÍkÿ‘c§ü:ÇÅÝÇwÜwzîî;¸îõ½ÜwqÝÇwŒ?²ùÉðŽî;¸î㻄FùF^áEä=z9rÈMr7£\¹½ZÔF«œ¨ÔUà2¬Q!¨^#…±È‹9…·5Ûâö(†šˆ $µrjÉ@Dk÷Lm€ˆ;Ò » »LFnœ«’ÏËQH¾Ýê®óü7Â_Ò2ü±ãÁ§Óþ ü"®õ˜0qÖ­ÅÕÔ‚¹¤æ™*‚80Æ¡PMŽAbYÎ’×€„yDPµ†aü(ýdÿ•Þ³Áw×·ù#Æ>Ãt…UqKu­i9§Ê¿…2 Á™êU£ŒXj £5€BËR”ÍxX(>*ÿ±W >0oàíwÔ·Mål"îž‚üi'QÎ#ZŽ Ú®5_+lC´«!FáÜÒE°‹_a —¤ „HðµrØßNšè1¹Æ†mvqΓyö©RÞÖWÚFt˜ð9ØúžáEÕ~(‰½Õ‚F­„ÒØÕº¦îuƒFäXÚLæyƒž[$KQÈ8ðÏeîf98‹ ”Ò ŒÅœÆ†Ãò÷,"×ů#‰4ñm®§ÑUaÕ“›h"×â ?aÖšÖ:Iƒ:2®ÙG›˜ö¹k + \I¨r„h²‚!(›Æ9úÙü0ÃüxQúÉÿ+¼Wd;†©è)`¸-#HX§®#y%«ÊF¾BM¿˜&¸,ùQÆb‰JœØë›ðÃzÌsõ³ø‡øð:`㌠§-+¤`Ö.±›‡ ‘ÈR™ÜÁaUG,·#Ðo”ó<"œÀüÿÿñÇá/é~ØñôiøE…~nDèk0oÏ*8ãx !´ cV#NÐx¤ù™úcÁ4w6`ˆÆðž5࿪Urtý7_µÝõ8mÛí²ØÜõÛwWeäÊÜšÕs·sUÒ?Ÿ6lƒÌ™3ayRåÊ)$I•&E$žDƒ•Î)Žb¹Ä)Hç„sž÷+•Wʼn¿kÐ}á­ñEý°º·æŒEÿÉÿ–Oõ½Þ¿»×wqÝëGÓåÛüäøG^<¢j_C:ý¾û}üh«¯r§œÅòFÌÚâ5Î{ôµ­#Z¨5V«^îv}Í=ä·Èêפ{S-§"ZªŽ^…X5V9©†óñµ ("³K[FÖjFg§[‘5|§.§«œ®sœ«›•WáÞþ1—àí >Ÿðoáw¬À8„Žª®.©d Î'4ùWð¡Î†@±¢tq‹ Nl—<ã#Xˆ!¯3ÁáGë'ü®õž ²LwMË‘ ¦ÊY¤Ã‡$ÑÑÛ¢,°' 1žÄÉ [ç:9‘˜û¼‘Ö­Å-,q5Äæ™*‚ÉÓf(MŽAbX-Œæ„y- µyø ú@«ü"Å\x4ú@Á¿ƒµÞ8ž ¤DŽÏÁÅÐmMf1l¦\I¯}J§ÆGHØP¦[¸ášò$X’s…´Éo1 ómc¬iÖ’i`vÉGʶÛ¦– ¬bK0R¡ ‚±LJÞgÁ™=J݇•k­,¬§aÉÁC›!äIeµÜ ÃpÎJ‚æÁNË &Ì?ë}ri)±,‰õ“*-¤%héñt1;”±gtWËÔÁ+†HŸ*lIæ¤Õ×ÅñcŸ­ŸÃ ?Ç…¬Ÿò»Åq:A#¼X–ž‚ê Bâ8‚Š ááÇŽZ-ÿ£/ùœ|[ÿF_ó8ø·þŒ¿æqñoýÌãâßú2ÿ™ÇÅ¿ôeÿ3Œ›º^žÙj'ÐöG ÙýLº÷÷ññ)`?ôÜ|JGØý7‘öÿMÇĤ}€ÿÓqñ)܇þ›‰Hûÿ¦ãâR>À鏸”°ún>%#ìþ›‰Hþä?ôÜ|JGØý7è¯(ØŠ¨,³sÑ<Š«—_2/­ÍÊOuQ?—m­zû^ìþŠú})Ÿ#‹7/µFµHþW$ó÷/ÊôO³ÆCcòïwFŽb½ªìÕ€½*ÔiJ'fÕj5\ˆÕa%8’äuWyZå1SF¤D/ç;" Ñ·ŒB £‘È0‚sÒ1±¬csUräÖ¢"fåU\“ªª¯È>þ1—àí >Ÿðoáw¬Ä˜nc–ç—š*ÿ±W >0oàíwÁ~)øâ…_†)ƒhy •$q©­oq…EÔ¶‚óE‘ª|É1™y¡8Ò›œbøü¢¾AfÜÈðn‘’T²•X–d9V¢¤xð0þŒùj("À4ãµ®æ¤?Œsõ³øa‡øð£õ“þWx©±Í,n^ç£ß¶$¾s°ä¶²KldKB¶Y+ðì¸ÅrÄymŒËW,(‘, LWƒ·t]ÃÄÄ»|vóUvUÕu{°Ç¿ÍŸ—U¢Éü³cÅí*–36ÇⲺ´?+YO_2ÒÆNÙËÁ¯ŽIrϳe]¨â!6À"útŒoz£V@ƒE|,U‰î1EêG)´tlkgù¢ÚÓ‰’#¥]dÙ•â…"æUpd0 •¥#Aƒ<(P£†$8q8ñbEŽ6†6ÿÃl?¥ññ·þaý+¿ðËé\|mÿ†XJããoü6ÃúWá¶Ò¸øÛÿ °þ•ÇÆßøe‡ô®>6ÿÃ,?¥qñ·þaý+¿ðÛé\|mÿ†XJããoü2ô®>6ÿÃ'ÿJããoü2ÃúWá–Ò¸øÛÿ °þ•ÇÆßødÿé\|mÿ†Oþ•ÇÆïødÿé\M ’ 'ós]¤ƒ ÞÇit•k²r"ääV¯r¢§‹Ër7ù~ÇNoÿ>ß_ðxòUÓ/%?ç\×?¡Ç± „Ír×ò¹¢g“ˆì˜‹–^ÙÉæO:p«\AjDW|F?R+u!‰“Ì6èvòG‘‹Ñ<­:Úãµ² äªR:94¿'gì²t?q¨¦vÓÄý.Œœ ‚6mÏHÄÆÍUË“ZˆÔÍʪ¹'UU_§a¬KŠû6î·–çav$™³ÎC>?Á)åD&äI@/±ú5è~’5ìn"ÃØVU†*³Å~îˆkº}L¾Òˆ•Εc"ê$)Ól‰Q] 2h+Yk RøÃX—•ç½Nâ kÞK{–ç;&Æ<þW˜Ú‘Ëó¾ÖöÁ¶µkÚ& rñ…‚înUÚaÛÂ΋ ÄwÉK â±ÛÌcd–±‘J46Ô„(iê*ó¶»’í/ÌËŠî[´y¾Oãµ|íîFWÄ7vö½—F±ëñ3Â'‚†v~3m„y¶•0柴§$†x’žy=^ #L»t˜¡²Ðë17ƒ:^·xb¨O5{Qä“Ã6ƒrAtðØÊY`Ø#XùQ,¦“ô*æØ¶¦¶LéÒcÂ… 9¥Ì™,Ã$Xãq¤I“ Î`cÊcí†×=îF¢¯Â_êï ¦ìxÄÃÐ͈ Ó°[<Ö1V $ÄÄVˆç¾,JõŸ£M=òµµÎ©²9ÆçŽ\PêÚ:ŠéD,Z$°¯PXÎK!O¸Ú—.¯–ŒéTÑÌK »SÉ„z®KŒq'cÙʯ #v=õ†¸&‘* ϽWW6;uH…${o+L›zœ4cÆç-Î †ÓTSÆÃfIÌd·)ösŸjØË<‚Ùq#HÎRÅdÊd92 _ Ób›YbçS×aÃÃ5eհ厖X µ‰.¢®X¹yâHèÒv%D”’ch‘Q¬&ÁĸjwiRYs<”ÞZd=îNdˆ>Ÿ,±íËŠq{(¯F¶j˜÷q‚p#¾ÖçW:Ë:FŠ‚ëL™.I•ä yÌÐŒòˆ0¸q#I”ðÇ$?^fWÀ‰½GàëÂ)5XsaÊ °B«´)^‘)±4DrAѧnÀsË=M¶,: ˜óaMŽpæD0äE—@ÚhòcH ž#Ç8žÂ„Â{†Q¹¯c•ª‹ÄÏTxš½,áäÇaÚã ˾A ¾Æ$u¨Œ÷H…ÎÇk9y¶½ŸVŽ“™Ÿ’‚÷b?Þpש{»>I0^m‹žj¸%¡eA¦ÜEbnv‡br•ˆä†fÎ}ñæaºÂ%G-;âYÝ›I[Ës³yi“6yÉ‘àGøyRɹ.Pì@~zߤm{Û;àÙÒ1ÜG"eJl J˜´±jm+í÷Úõñ 6DÒÄdHÑ¢1FÁ¬¹R¥Çtx±lq\L`k1ñ?arÖ‘à¾|Š@Cvˆâ8–iÍ>Â4xœtüÌåY\¬v8è{¬kÛ‘l Vy<•~‰ÁY³i‡i617'w4´Šö­“thóaMŽh“!ËäE—@ܤÇ3^#Ç8žñ%c†Q¹Ì{Uª©ÃÕ˜emË$€ÖÃŽ,AB&g3T… +ùy±*Žeˆ1ÎÄw”ô‹!±2êÊTRJxÊfF‰ÆŸ!âÊеêG %z7HÞ¨ß>+dZáy2*‹1„ºÙ±k3Üí8A’y´4ðK\ùF“&8®o,+Ý[K Ö CåñBr؆½ÄV½óG3§úåö_ÿ¿þ®{ÿíoö_hòŸÿ)ÎòøþSúÏu°q<\ßÈ­ƒ¢] d¡ÙÚ [&HkTÉ ”vE1Åbjö‘öM$l޶WV‡åk)ëæZXÉÛ1¹x5ñÉ.YöcŒ² µD&ØC?N‘ïTjâŠl-k#Üâ:{8a¬º©AÝ@•ö²åÛÕÄ/Eq6ü©r–4mãM„$¹Äêkzy8rtÈÙ•›>²s-]ƒ!gGŽZÑŽ\hùJH§4˜¬™&8«æ—bNس‹^[CÆì{êýC",BzÒ®wi‘60öØWw54jÆÍù±"d—íLjÉ94½ú¸¥~µÏv–5WKç»,šÕ^œM¸’Ý%œu.ß»!j4Q£ë`‚„å£0@ÝQµåÛÜ'–ç/ ë—>¨½‚7¿KœŸaràsQQȨ¨©š*/¥‚Ùù.òU|ì_j½ÍÏÐåDËR9ç½°ŽÀ4X{\ÓÂpšF±ŒÈWî|¥y×&^K\&„|°ã±F¥i ^1ŸÓ>#ûÿgâŽÕÏ£õôô‰ªFýMLLýÌû»þrm_úJÙÎþæ)Wo§õ¾OÐê¿W?+Û°5ïq:;-Y/±û}]êÔr1ª‰í“4Í…p•¨Åæ&¦Lr*7S£ÆËQ‘ì&à•ù…td’ôφ«Ø²ÞÖ5¨‡Fì5QŠ×mÆj ô;>Œ6þÞ–hr9º—äCÚ]`|!qg+o™±´ÃT¶¤l„qÿ.\"È.ÔqÜ#´crc‰ýM0÷›‡'qýM0÷›‡'qýM0÷›‡'q+ÔÖÃøwžÙç{ šº§œå·ynk˜åùƒìîêÚÞ.;ÏÇÉâ¼9O~&G›;ì`„ò ŽÀlÇVNVóµR Ñyºée0€Ža™…^ÏÐ7üfÆõƒ‰^¦°ÖüöÏ;ØTÕÕ<ç-»Ës\„xüÇ/ÌgwVÖñtiÜ~~!ÎÄxG _ÍvÄ˪ «YCŠÂÌŒ9¢¬ŽÂœåhZôHb½¨Uþ¦˜ûÍÿ“¸þ¦˜ûÍÿ“¸]-m}=d]ÎZº®zø1÷ŒI؉bŽ-Ù)ɶ6ë1Gf÷¹WV¼û&õ?ê_´¹™Ÿ»Gµ¹O˜ìÿŽÏÌò¼çõ®cgØø=]Õm}Åd­¾fºÒ{26L9߉,eŽ]©Ǹ7h0ÆFäö5RLÃ`Hì,¹’VD»ÄÐ"´‡#Šöƃê<(QÑÎT HqÁ8ô†8D&1‰økaúÙu¼Ï%kÈ eèyÎa$² üÕÙ7(ñý–{ôC$Í1À·ƒÕÝV×ÜVJÛæk­!ǰƒ#dÃø’ÆXåÚ!{ƒvƒ dnOcU?©¦þópïäî?©¦þópïäî QÓÐB,‡K,:ZØUQI)ã_$‘à„|‡ˆŒæ)0‰Ší#b'‰ò1N§°šY’{@ŒµW2I*ÂeÝT¬¸â‹¤-‰&abä˳ª,e,b`*òȹ¶;K ËÈ.Ý íú»«K ÉY0ŽQó1 ²d€è!€«¥­¯§¬‹¹ËWUÃ_>ñ‰ Û" QÅ» ¥96ÆÝf!ìÞ÷*ø¤ÎàûM›6A¥Ì™/ PÈ•.T‚8Ò$Éh)ä¯yLb½Ä)ç½ÊåUãúš`ï7þNâ4è>°D)°¤\9‘0¥ yQ%G#MLi€Â‚@ Æ&ÚA­{ŽD^$Á<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªqýM0÷›‡'qýM0÷›‡'pIØsአ¥Žè…™KAUU(‘^Añ‰" @ñÞP® ž£q'«u ŠŸ6…bùO'-2ÔpÆ ¯RÆ€ædB²CÊÀNz¯.æ±t©Å0ˆ4á=y;ú®®¿ªê¿o4áxæXÞ£èü“¼kôšè^½U­Ö¿=÷ŸOVx0Ï‹ý3b/¿ö~ ~ë÷x׈6•øc~”8Óá¶°ð·¢L $F.Ñ­†aîŒ~‚„fz^ƹçáLÜ껵3DÍΈTDÍz'_:ôáˆUêýЃ2ïwDfy*#õ«S!´š×4O2ðŠá2ÕU1²,§£ÙŸÄšíMò˜ÍÑñ‘ŠìÚÅs\În:¨æ»~J4ÆG1Êæ9™µ'3>Š WKúœÝ_?¬æ»\©Ç|‚õ"±ŠõòB-׎iq¸ÚÆ$\˜œ' ëÚÿ¢ÅþVû½|¯ôï^ÕDTTTÉx(¿ÚÈöuïò­ÿ›çºóéêÏïñc?¦lE÷þÏÄÝ~âOñ~“°ÇÞX_8¦Žõr0â \­ËR4¬V9[š*jÉzfŠ™÷¢ñ”P"?N—þYÉÑšµz£\¬kÔCÐ~SFߟ§¼LήIž°ÈÍj€G*½!^ç½ ù,{ÞîdLÝGkCŒ)ð‚têß)>§ø9ÿ¦\/1•ªü—f>ãS»SÑËš£R¹­~Øóv•èÕq¹¼Žsܽ79u*ä™"f¾„ËæR½ë“[Þ¹*ý¦¢¯ÑéÑ:¯DãØ½Þثܹõò«ŸO>âuótë’m¯{Y×èyjôËêgîñš‘¯ýK˜Ì—û”k½ÞŠœ.àXïF…V}óÜÏí}^4µU¯ë“™*¢yÓ%V¯ÐÏWE\²LþoÞ}=YýàÃ>,gôψ¾ÿÙøû¯ÜIã^0/ÒvûË ß‘¤¦[¤ƒwr§zwukš¨ŽcÚ¨ö=ìTr"ñª½] ˆÞŒsž`?-kån9Æcœåb+ÑïkXÞ€s—>:ÇS74D|ofEͺ½¢&ò"uEsÄÖêL³êÝ^¹cO¿ƒ¿¹ mÛ"€±œŒ8eЏRÝ Œ{´mÊ@¹ÎiÔrˆºJJõŽ×.C›=Xãèp•©JðˆÌ2¢Ï•,JÑû sHÖTóºAÕ­f§#ZˆÆ÷5ƒX1·½ÚXÆ¢½Ïzæ÷¹Ëó)~Š¢}ETÿ›ŒžÖ¹;òr"¦WŒÔMþ×6'Øb¢}^þ>'þ?Îã£ÉŸ›=*™ý )ŸÙO£Â*HÉSª*%ENåEÜà/WkÖ!¿R&HíLEÔ‰“rÏ¿-)ôæõçÓÕŸÞ 3âÆLø‹ïõ—ˆºýÄž%ñ`_¤ì1÷–¾â±Îb­Í¢*µU½9ãtéæèœ{w/뼯åÏa&Ÿ!«íîºÕ>Y«æãóÇþˆô\9¼Ú¦¤V®‘…®ê™y/hÑÍ_Cš¨ä^¨¨¼#O&A›å;ILB&¤W¢;'¹S4ETEïÉU8µÿtçÊ‹ó5Bÿh®zù³k·™±{ÛŸMYt~–ëGinZ£™¾o$È©’eÕw‹šçÜ›iÑ{úu]¨Í3{õ°àkU3sz!H7ûf9½X[èTUë þþŸ†©È¢¦nF«ˆF.œô奣UEò]¤ªÞõj»¦fF«•Ù5ýÝïb9¹«×§UÉUÊœCý«îLù¼Ù§x,C‰.n!4N#ˆ(Ád*2RX‘Þ¤B¸Ïé›}þ³ñö»¾è/ø°/ÒvûË ßóýÚ´ÿ–Ÿ„á®óéËê#Ç—ò¯ÙëæñÿwüçqkþéÎÿ•æk½Ç½÷ǯò/S…ý?å3òÂ÷üÿv­?åÇá8j53]$wö¬Ð÷/_CZ«î÷'_÷ÎwßîœÿùQ~f—öWÿ/‰boü¦g‰ßéæàßÚýѼBý©î,ù½aKxSUᮎâ8iØL¿„Ç)'oŠ˜)¨Õ$´¬ &°Ïãý3b/¿Ö~"~×wÝë0/ÒvûË ßóýÚ´ÿ—„à„Ï ãJúºÂ¨Ÿó¯Øé×¢ð¼;õ*äþGíqmþéÏÿ•äEe¾È­{áÖ $5ãÜÜIOx`‘òXý™D#Hí <Ø]·6² "ÈË ÓÌóîGMhÝQcòû&w±¹r–v'ÙsB£ˆÉ¡ˆÇiÊÊœÙdl•\±öšº~Ô§-kX‘e«ä69ƒ`Ñ\„Y«4lr Cú˜Ôo Œñº —5WIŠߺь 2¸d1É­®hùv¯G¢jҊöWÿ*ðŸS…ý‰¿ò™ž'poí~èÞ!þÕ÷&|à5UÒ‚FçæM¦;$ô&j«—¥U|þ)¸ï½`"DbÅŠÇ8˜ñã…ˆ0€4b†ÖŒbZÆ1¨Ö¢""{Ôµ&•Êr7Xâ»’ÍhÅ~J¬ÛÕÊŽ1„Û* qìVðFÃX,v·éYRE–•²(ÏÖ¨äëÉòO-¨^ºH³uiË™ŒÖíå«=šÄÏ^i«ssÚ·FŸ+SGkÐ]¥¹É ºLuz1ÊG8HÎ` sѨ1%¯²dGµ¬R8Râ§ŽvëÜäî^‹“𿹝c‘7£˜öµíTO‘o?Ý«OùqøN$þÖ7ÜÝâ^ úç5¼[ÿº–ò²ü€i³NÈñc3YŒNæ§r""fç½îT`ÆÄq G4ckžæµdÀ +ÛíW+Òi‡ì~Ë ~ÇÈêÈÍkɽ'hƒ3 –dטÏyJW¸…)ç„{•Ï!ìÜ÷½Ê®sœª®rªªçðÆîtØmj·•1:³ÈkG°ui&CQ“¡^ˆ&½ÈF©a^£r+ =º‘¤býV£Ø¯ ÜÇ ÈýËá¥ý•ÿËÂ}ÿ/¹·þQ/Äî ý¯ÝÄ?Ú±þäÏ›¾þž°—ßúÿÿrû€üRÿpÿß{Öy“^,QícŽg®LßT„Vµî`XR ß£J–\¢¸ò íe#ûܽÉÑ2kZÖ¢5Œj#ÄkÖ±¨‰ãlˆ'pü¦¸Uw/%©’DŽF•º^ôLòxõ«Âñ“'£ô7•˜ÔÐÜMÇmjɦ4x]Z×®†¸%]n—„†l{Šºó¼hV†m„H¥pœç1 Ñœ¬z^7µ‰¥\Ç&yµxi#Ihå"1A ºHÊÖ«\»Î[6×mªÔb£Lâê#r³[˜Ô­Ã“%mÄ85åiu;641ÁfÇ ¡P«!ŽW9ÍÚj1F­m5T@m¢8s].Ī]NÍí0 VÆX¬DÎG5ÎÝr=7„L§‚GéÓ*$¸âÒö¹t6tɱWZ"Û±‰ä=Ú4“KÛñýßÅt¿“xý;ø®—òoÝüWKù7Î8{ø—ån¶TÕRÁ¶¨ÑÁtºâ¡u7'¸Ç-£4f´Q åsší棄rYaÉ‘A¶ªÒAœ©u7&82VÆY­Tˆw¹Ö·iÈõxÜI2gU¹¬@M®’B¹¨Ö®ëV±¶ Ûr¹Xˆã4º†ìÄŒÐçÇ}Ý\£Ëè"h9×·iN¨°\ô–2 Hç”D Jk÷XÅc‘=}çûµiÿ.? ÁžÁ)CFQ¸‘ŽÁœZÑ 6/OYyþíZËÂxׂ~¹šÞ+åàpïð^ ·†Ñ9îxã¢s$£†Äa–e,¢5¢q™Ë>;ÔˆG"øbÊŸ(1@Üü³?N·#M±7Û˜ÊÁ½X5å&•F1ËÇ-FÃVG]HIdQóÆcŧCÝÆAÒ÷wBbHUh#FTxÝÝòë¬IðGFE”õüñæhLåÿåa‘<{Wü’ÈøYeò¯‹÷&}Þ_‰Üû_º7ˆµcýÉŸ7qn kÀë0ØiÎ78œË¤ÞYÇ›âb Dà Xzkd9æaBÅAŒ­y\ÿrû€¼Dý°ÿ¹‡Þ®u«¶ÔìfÍxI¥REüˆ£ÛSGyFÇ|)"!IFŠ£ã|Å)äK9åI1ž¤)Nò*#³{ÞMÞ÷¹Ïqç+ºø”†v–§ÕU÷=+ÑõJ‰Þ©ÆG]¨þh¢sÐjšõµO×ÙÈÝ,òœˆÄVk„®vmz·Ê^ïq=Ï¢Ÿ‹ÓŸwÜw|#»ÇÝÇwÜwqíxl¸'‘ PõmJˆbÆ=lpß¶p¹…f±½Ìv—&lsš½x'°ÑEš*ÊÕÉFØè ‰,Žc´12ÉrÆBHÍìx„ɲVŠkói#ÙùšæGC•ì´DäR6­À€“ çxòåâ…¯âóýÚ´ÿ—„ñ¯ýs¿šÞ<Û09XNÂ$®’}®ì:¨´R`‡i^¡fÁ®,_¸1´¤æ4™äh€Ñü,‘bi°³ÐDhÆæ¾4S0›Zg‘„G5írV(ó:íh*ÅBŒÜ,«*ë{„ÝËEGèEP«œÐ³HÆŽË2B<ï)u={¾Du‰>èÈÒ^¿ž<Í œ¿ü£Ì2/çjï‚2Y /ì¯þrøˆÔîjdŸA$ÌDïñ;ƒk÷Fñö¬¹3æî'¸`r±ŠÖ¶T®ì*šŠÙP´¯P3`÷VOÜØRó:Lò0 h¸ÇJ—ï4Þû—ÜEâk³Ït„'wµÉPY{¿Ï>ùy³_¸ߟe6-| k·¥Ì3#Æéž0pÄc5”Œ3Ô÷µ¨«ïPj •HEŒÍÈ#Ú [&ÊxÜ?psëÅ­N6´Wci7÷‚Ÿ Ît–´ªÝCŠ?d–n„Vè |¤kÜ'¦.Üd'ó3>=€ÆªˆÝµdhgsK­­r9å˜6„ÄÖ¯w±¦Ø4´^ÄâyÝÜwqÝò/gMv©#¸äÕ!ŒË1“5Ôù o•­º”¢kÞ\ž7ß /ì¯þrñö87Ðÿñ3â*«˜ýNl™n,Fº;\ÿe{Ü"Fs$¥gå¬Ç#ŠWéj1ºˆEs¥­F¦kѨˆ>IkØåcØä{ÕV¹®jæ×5ÉÕ®jõEN¨½SÕkG NÛ’$r*#²Í ÄÍ^/]ú£šAê&Þã¾OÙ_üåáÓ—úþ&_‰Üû_º7ˆµcýÉŸ7)°ü'€S/-k©âSˆÈÓg,0€ùÌV¥3\W %#FŽV îÉ«âÆÿJ—ï4Þû—ÜGâŽÕË«ý=sˆß«““?wÓßãÀ¿NXgïÜ/œk[¹l1"ÓÖδ’8íc¤>=|RË3ÒCqœ19ÒlWäŽ#7!“ ßò07±2<;Œ\¾¹=`³Ö:Pζ:ÄS?a ¦kØß‘§a¬KŠû6î·–çav$™³ÎC>?Á)åD&äI@/±ú5è~’5ìoèçþ,ãú¿Çèçþ,ãú¿Çèçþ,ãú¿Çèçþ,ãú¿Á!ÁðNŽ;¤¹÷B±ÃQTl „­ìG ªdj3±!òž4)˜xãNƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢ü‰;âYÝ›I[Ës³yi“6yÉ‘àGøyRɹ.Pì@~zߤm{Ú9n.1)_!¡tZ JÜ2½e‘øŒt–;6ÍÂJÜ8•‘ž$9C}êj ƒêw²ùÞÝ‹]wµ»G–åy [=z;0ûÛ»:u Fæ§èù˜èB\àÐnÀOo9\ÞÔ/–¹C…¡^`¯#ÌÇ~™.ÏÆ‹èT_±Â9;—ĈþŽôù—ñ{¾o¡Ýë;øï㿎þ;øïãËF».íHŽËìñž„OÖ¹ÌO°ÕDû\yIû¦’§ò5Sû®:°dëÓmúW.½UÓêkéîñ‘‚ò¾Y›Y¯_ëÉ®óüºç–~ŽA ŒLÕQ3Ü"çÑÑ>ªªýž¼uk$7ÊêÕÐÿs4îîùV5~§K•FïÒ•4¯v}|ÉÓ»5Eû)ÆiÕ¹S»Äª½:ª¯r'»…éÂK€WÄ’Æ(ƒFªm;oPÔOG ÌÈ~@ÞÇd]äëZähnF؇sÕ­’rÀ&jÝ ©Îyc¿'ª;}6r ˼Ô] 'ëüÖñ†~—é¾÷FãÓ á"»“2zæmË]o¦â² E²‡•¯Ÿ9! Q¼QÜ@±…­SË3Yä¹F$V©ä+t¦€ UŽÍìEùAêGãoG€*èuúžˆ1¹Ì<9›yL{_“šäWªÇfAöMæl/ Óä±ÊÉÏµÂÆéÔð¿%]:“Û1íaQY­G¶¯k^åá¯cšö=¨æ=ªŽkšäÍ®k“£šäêŠ:§Â û+ÿœ¼7觸îÒ¼NàßÚýÑ8‡ûV?Ü™órœïÅÃplñ Îfî­€¥lÄÃYÐî-+gÇy¿(éA2JO2•%†xËE2­¨±Ïß»jRÅz£È4Ù©á|‡#•íHጤF‰òg/Ýâ‹ûX?soý9aŸ¿p¾q±ÏÒv&ûË7€KˆsE•ÑLr¼2#È Ð8 5ia­ ˆ75ì{QÍTTψÐîÃÀmRMq!ݸ,ˆÐG [m˜m’iV–6Üù(yŠâŒ±Ø {>ZÕÚ¿0­pm×O4ïźXöÃ$Âö\©Ü¤g Óyg»m>D=¥ÖÂr¶ù›L5Ka:FÈG;òåÂ,‚íG€=Â;@F1·&1¨Œ‰…áöm} Z5jAƒ:eÄ!«XÞN½ýšÉ#…©áŠcœ0’={bB‹ˆn±Ãø‚ÍØ¾EZI½«‰q³ -,¸àŠÉà‹I¤1"ˆ&—¬M”C2$Fƒúš`ï7þNãúš`ï7þNáúð¬|95c‚0lp†ŠFe,¥s+c‰ø|ò,cËM.S¢‘Ã1Ñá¾2Õ×ÝHZ)² >±ÄäaY ¦€²ˆZ£¢qµ }ÒD4{úй¢‡lµ³`Xͱ™ºE%Í$€†ê”ÆYÃŒ9Ë)jåÄ´H±6<ÑDŽjÇ*,¨ÒBhÜ·%6wÈG«º­¯¸¬•·Ì×ZCaFɇ ;ñ%Œ±Ëµ B8÷íÈܞƪZâšl/O‡.pÄŠÃC>®J9c¶º«¨—ÔbˆSãíKæc8IQ%œ´‘F‘ao…¬Ÿò»ÇŠ»\REÂØžÆ–¢ªšl˜tÉ\J“ê·‰ ÞDÇdZ:Ô35Jønj‡¾>ÅVŒÓga^hö$ÔæçSÏ™K.ÇLxÐヴäWÇ”v5Ê HÀ¡_ó\Ñ;)ÇÊgLò%¯Ð_(ð Xyº$1~[–WµÆgžµZïjåÏ?Bû¾âôëæËÑš§üy_ù¾ßOùø]hߨ쿕†ìAüô‘¼œõ{*®Úe’§¶öÞO¶éÁfC}|f Kâé› Í#œÁªöò±e·o#£SSÚýM±éÒç Kˆœà£Ø¥`êÐdx‘É­ƒ+¬ Ñ=ÍÍGÍc²rˆˆšWãïðŠÿÉœ9‡ Û+Õèi“ŒÂ5ªÖ¦ÓR¿‘„V«Ñ\'SÝ™ºÏNþ1µþÀ¶·o^®Jj¿{Vœ·;E“òÛÒº6v³ÖíÍ~FŽ7ŸÂ ~Mã®$Eÿyòÿúªðâµjæ=ºraPÄÍíjètȰãùªGnžK]£Sô±Í èì•îb8±Ý`-*ç7%<d ~l\Äâ!Qº^­F½ŠîO³Æmö5Ë,ƪϫ¥¾B¯ëš¾ï¥OwÈÙDÐìúü¨Ñ:uóð#|é“JÔËV]4¯V9Ù~‘ʽþï™ãô1ˬQžœ×ª»¯Ÿ§^=œk—û`¼±åÞªäöÌF§§<òr§w š9ªžK»Ûä+Ñ[ô2jª¦¶#¼•b»>«å'UÉš³_nG«G׫ží-jºQHçtLœß+¹tùI©¬vyf­ö]Æ'zd'»V”ÏÇÝÚæ#‘Ȩ¨©š*/z*yÑx{"ª¾7²¹!?$b=ù/ÀäÒ®”Žvß–qä ]­( CÉV¬˜Öûx¶"â‹å ¢{sLÓIBñI ‰á+ðþ!á7ô¤†]†h™"ÆŠOÁçd´¹×ÚTCŒwÇQBXïhC6ç¬tz¬ŽekÚ³?¬ú´û\Ì¥;$sšüù‰=CUãBI’÷æv¢ýî^ï7Fµ¨ˆÖ1¨ŒcÄF¢'ÉÅ­;ÜòFj2¹UW•òX¢öêÍ:È®V™6 ÁÓ×—öWÿ*ðŸS„ý®/ºÊñ;ƒk÷DâíXÿrgÍÌg‹J(/æç@ð £UœnÏŽ¶VÂÜp}† îÓ¥v€Éw3"¿9!g)äñb¯÷‹ð’Ÿ‰?¶ ÷Wx‚7e¨a.ìØÄjåÝÓ§£ÇƒbIy˜1YÕª1¯æ(áJ»ˆÅR ‰²IUᆣQîŽâ4d¥gÎ.9úOÄßyfúÄIvFÅ56䘆AæHÉÏ‹¼èVäq,"—ŽàÆcÉ.²;äKªÎw+¸Œ)Ö>¥íM› óØb0ƒˆÙ'xîѽ•ÉëÞ³Ï[.Q— ž8ËòÒ_á*âÿéþÓðw úÌX9oÙ‘†ëåc¹:LM‰Øv¹dfÈäÅa;B±ljuHS†/hséÒ"¼aœGÎru‰`ìDç¤âG~²+#[¬˜•Ïl‰¼”wv¬(ú$µ-+àIå%>;ïñÏÖÏá†ãÂÖOù]ã~0±qT¹—oWM64 k¹C2–T™áä 42-[­ U>´’W\æ¸V²%X¶–¬­e=|:ºèÛ†7/¾8âDô‚Av£ˆcÜ9HgéÔB=ê®_˜îˆ%Î ìtöó•Íí2ù`›‘„8Zæ ò<Ìwé’ìývH¿ö'N•^äÍ\«Ÿ›åWíqœ™*ÜÚ¹Œ™µÙù>Êôr;ÉöɲžRôr£|­B QÙ«‘îÌ„EVé]$"¹íM=4µQ½W§”¹ðg9ŽkKdw\ÕD#±Û 1ŒR9¨Èo-Y Ìš†’N®jCšLš8ÁñbŸ÷‹ð’Ÿ‰?¶ ÷GzÜ'þÿ~ \üÎ ^&»ìÙç†9âfÛÌÕ¦‘…ݯ()™¢šD"hÔ¬F¹ŠïÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än1MU~'ߟe‡.ëá±q·¥Ì¬“0· R0pÄc5”Œ3Ô÷µ¨ªžµ§³æj›«ó Ù :¥3æð8·E&¿à‰„˜^Ë•›’Ѻo2Æí¬züZRö¯Ú;›¤aùFw(\Î\ÅFôƒI.Üö¾(úå^½ë——á•PG"4˜åa£ÈŽf!pjá”%šA”nsÇ#šªŠ‹ò Ò_á*âÿéþÓðw úÏ ™&¦hŽÉÉÞ×d¨º\ˆäϪzÅéÚA£ÓÝOqS4ô.KÞxæªÙ›5.äj‰©Ýš—K2Ï-9°JѪ5…$X¬V˜oxŒC3-·7Ér ЍªF4U#t"³Ú®Íc9HR.§½Ýê¿Èˆ‰’5©“ZÔFµæ£ú‹›iñEw,DÔ Or«W'!„ƱSlBt"d®õÄý•ÿÎá¿E¿Êœ'ì#û¬Ÿðoí~èœCý«îMù·†p«Xw ÞÖ8§¬SF$5Î]Ô¨å˜ŽŽ‡‡Sl¡5ã2hÇI\ÀLjFc„D–jXñXB1’vÞWKp#µÊŠc6,i2TcG=æTÛÜ×½Ý\ç¹Î_J¹s^îþŽ,ôîŒÏ,òÖänytÏ,û³OY„ÿßïÁ«Ÿ™Ôè籫ê6½rs‘?ïÞ!ô¯ïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇà 5UsQÜ×¯ÑøC]†ñ •XÚbÈXc>íad:E!äTÉCVJ2¬jDB½Š ŠÒ.bG6°s$¸á—iO1ìdV¹@Ø=œ#H9%pÍTxñ@ˆKƒÈ#F¢ŸW:”ëØ›HfD6ÑmIŽò›fý]cØìœÕDøuÒ_á*âÿéþÓðw úÇx<Á’9œ9_`9·ñä™#â Ð÷Uж<Ü? C’SåÈl€ÚZE…2±¶-…±¼#ãzk {8»Ðð…eƒ¤Wμµ÷VÖu¤ v9y Î+u„–S‰Z¬}’ø‹uŠ.«èë­9™çh·ÌÈç—ÊBYA#×A‰Ò¶žØÑÊôÓÄ¡øð}_’ €cÊÆžl ¶gVYf€Jj"s}¡Íì ¯©´¾åcš í!A°L€Äð< Žc Gc¦JšA ÏdHÏ&&Èä@…Ó&DŠ„{VD YZ\ájžGƒli_ UÓŸ%VN<×%p˜fÎfájcØQçÄ,În€‚ ÷bÉC'¿ŠS^ q„nÖíNw°bÞÇä;;–æ¹ ÏŽáöwy_Î%ѽåíXE‡‚°Å¢HX¨¿}>æ¾TTh'F°’+*¬†MŒÂµÉ4Å3JP¼å£ð‹eáü;ÏvŸiJßìš(|¶$°¢‡ìÖÓärüÇ/~Ï9Û³ ¤Zw$ÜðK‚këè[ìÀÆÞ;Nž®ø)å 0î«OTrkí!Ë­¶¨Ä’Ò,Ge„ áTx“x8Æ^y²ïÙeâ8vuÑ@60rJ[œ¬ŽÂ%É4*+‘‚¾ ,VdæÈeRH©ÄÑÀ{L9b𬦠ƒuaÄý6´ášWAçPQe ‰ö5µÉa^Ù>0ü"Öä²6MA‡9 šñò£–’ícȰ‚*Øäˆ‹³$ Tä”ÃA&0f2ZPø<Áj¹q´pü&NÄrîgÊISÃ$ÁM²mtp´NZâ– …ØRçÅ•”Nwà,?) ñSø-´«ÚmÄÍì5‰\x‡´eɆÁö<€öL8¶sì7Ð1qµþ·sTù@Y  ¨ØË!£K‡01æÂpÌÐËŽ)ãK_LsÂÖOù]â¡õ5àÇxFínÔç{ Ö-ì~C³¹nk ¼øáÎgw•üâ]Þ^ÔêÿP8 òü·æ(ƒˆ¤^Á݇ß´0î®gsœùL9ÛðF\Ѱæ1º|[;ŽØæAV)‚ÎϾ´«ÀåÊ›!º£Âɹ$™™Äst1Z6ñ‹ß€U”v•p1¡®™‡µ8••7'DÂñc’¾ÂBÄ0â†ô\Ód,k4yG#Œ#‡'R`B¿Äô³ ¶ù’‡ÖÖ$ŒóbS‰’#½Áq@a´ˆÕxˆÜØ ‰/´/1í¥«Áx^+n±•°_Í8’àЌõñcרɓc!Ñà$$>b‚)¹øwÁˆ‰aüQo‰ïo`m{ ùë\4ÁÒJæˆ7ÍÉ16!ÈFrÂuâ='†¿QÂ)Ò,K_‰p<ÝÊùõÓ—«+m%HlÙ 5£,¡Í¾¥°…Yeòéc—dvøƒØGµ¦µŽ’`ÎŒ«¶Qææ=®cÚ‚@ ÂG—@Å*¡, †HJ&ø¦bŒQ3•¯‹Â£I:Îq÷F««Œçš°•¶ý±ëBžlÓů‹.X;WÁ†Ãw ²E¸£â_ 6VGòD•9E6ÙákÔI“˜ËÍnDŠ6û.â9ƒ)všÕ0ÒCäH¯NÀž½w` «‹ìiìõš†ŒkºÃ|'¼¤Rç^œ+ìâo@NëX:ä@LÜ&ù40œ¥0±&sjlW®á]¾/Ò=ÞRté¤U<ÝŽL“$F÷ð™?nJ5Pj¾A›Þ½Ú´™¾J¹ZŽv–¹zÎÏDUÓžÊ7ÊNý/jêNïëonZš®fµb=¬bù^ÊÞ€ódŽW*¨Ÿ’ûWªµU:RèOw äðiІÐÎÒ‹©5"YÑö&mr9½5éÞ†#TƒkAÃÀq¸E´½ŽïEþEEL•®LÚæª9ª­T_˜@G+Q’ÚènUkœ¨¥V¸(ÍÎ|„zœŠÔk«O·o®'ì¯þ^úæ98OØG÷Y'pí~èÞ!þÕ÷&üÛ¹ÅR U4QÆ’9!·Ä<Ä@J„‰@Sö,†Ê" É2)…j'ŽŸé¾Þ\AÁ½ì#عwf×*tâ/í€}Ѿ²,Îcg°)­í¶ö·9½á2‹—׸Í=µÍné6|¶ÆÚon‹æm:¹¹¯¨êôï_ü7ˆÓí¯ããÚ}µü|{O¶¿iö×ññí>Úþ>=§Û_ÇÇ´ûkÇ´ûkÇ´ûkøøöŸmßiöÝøøöŸmßiöÝøøöŸmßiöÝøøöŸmßiöÝøøö‰ö]øøø“~ßoÛãâMû||I¿o‰§ÛáŽA¦höªw÷¢ü)ÓpÍÌÊ“-öÍ$IZFq ¯Ã@°Ù'XÜÜcrÄ"˜fDz$\wLƒ)‘q‡™!Ñâ°Š6¤Ú©r%JpBÕ—*LØSdHV41ãÓ”šŠáÚPZCµ‚M)¿ Í&ÑHå¥ ¡¡Ì`Nž±†\}Æ´á—/†Ð} Uþb®-ÿÖëýl;Õ|þkÕ¯ª¾ÔíNÅ ÞØì/;?”äv·>æ9­^ǵÇÿÀýbñÿðÿX¼>0ÅÕö¸fU„®kø=$QòqÏŒ]ÊŒB\___a_]/nb‰ö•û‰:74dšòOmÅ>4…q20WÃ$Hñì)¤U¤IŠáš8SÐȃ>¸¬‡.sáb€Ù¶\&sx¤Î&<(P£š\É’Ì8ñbEŽ7D™2 æÀ&<¦1^шmsÞäj*ñYZ¸‰ƒÅ#àH%"g‡0Œ&Ç}募ØPn/\Û‘0SBÛ™ô´2,åÀ‰­­¥«+YO_®º6áËÁ¯Ž8‘½ …]¨â÷Rúuz«—ˆ¸þ:G ®‘$â¹2O ¹œ,Œ¯d2É•"¾æL9á4ÈТE›~TieIls":Þàˆð£V£Y)&á„pëœdÙ’)Jΰ–8Â8²(I¥YM“ ¼x4œÈÑÛ6D|[DÆ„i(ñacHFî–¸›u”8¾5Á#ÔÕÁÆÄÑcÙÚPÖ׋œ½ äº(nBÄo9QÖ±û|·ˆP($׿ßyÑλ榫sd2F%$-’Ç.Ô$*°X<1åÎy$ ¬âÓÙÀ}…üiE´¦\?Ô±­Ÿ(ë.äd|‹œW!&GÓk 3J8õV|ô¤ È.Ìx쵯¯™ʼnqþ 4ЍXšED/ ¹VÓ\µ.§:9ÈÅÀ1 F–úà–TÕ´4ÕålHkŸ ?Y?åwÁ¤æFŽÙ²#âØ’&4#IG‹˜pÐãB7t±â|âÆ Þ£&Ëxš×H2¿}s~b•§%±I„ü/ÌŸÙÕ1ã‹f®‹’G%[\XƒÛ‰b}ÈñÙǬ#LÛ#ÂF1<'ø@Ž G!"’2ÓV8`J\'˜Ñ¥TÇ©ªV h²9‹ 71HëK;^JƒÆ7#—j)äbˆ2sIVc­ßÊkxE„(Ó)4$B-œœÙ N,SãwÈx‹¾°m^V9HÔׯ4œÛ5dMlŒ:‘€¨x­ djÄ+ÝÎø© Ì³‘Š×ÂÃ8R)"¦Þ¦¹¸3 X9Ïî'Ç™tD°rÍ”&Ä ÀÖÄ®:ÚZ°rµ”õðêë£nܼøã‰ÒYÚŽ!på!Ÿ§Q÷ª¹x‘y„cG®$3aI yëÉY}D[jæÀ‚Øí…N“]A#YÂ%`H’T‰fú=‹ÿ¿†Ìu‘Ñ­Ífhtt~‡4ŽTnÞ’jÍ%e(´Fô{Uîù0Ø`™DV4ƒ(ÈÕkÆF9¯cڪױȭsUQS..{)G¶ž!EF£ ‡2CQŒ™œl›¡­ÚE Z4jÊDålø§Ò×h~•G5Éž¡nxŠß•W ïF½ÅÉír&Ùә拭s&—e©]š¹jòßž[ˆÄD㘬~lÑ™bªê#|Ùh]z³ò—CÕsVª‰HŽj"5˨^Nbrª«ZÖä»s¼œ²EÙ~m\²cš®ãPŸé˜½5êšHÞö®h©è\³jªuõ‹Ó‡¹‰¶vêpÞê„ô§wGÿ\bù$òW6=78p$‰Föª¦y.—åçbª&iöÛí^r+SæH79c‘ì{Zæ9«›\×'V¹«Õ:¢÷p ,G#$Gb?$z0¬B5ˆ®MY;®NTϹW×öGÿ*ðŸ±þN^2ý(†Õú;‡_«ÑS»Ä¼ûOº7ˆµcýÉ¿6é_!‡ÌNy®HŠhÇfÀ©ñV2d0J¡ƒU5Á9 $RdÈi”.ø?Ž£é¾Þ[þ%~Ø7ÝÄtrfšœïí†7=«ÓÐæ¢û½ËÓÖ\}'X}úÃß3ª>“à}úÄ$'ÑO†>]%¥•<²Ñß&ªtªùŽçŒŽÍ¢#‚âDp•Úâ•3cU"Õbú’bNdÌÂŽ8|Y !ÊfÅu™¤I4²!5ÏrYK"5Á4+G C3"9âV#Ú†‹(a“¨‹ì‘äG óFÂ5ÍO…P} Uþb®/þŸí?p¯¬,êŠøëé#¢áù‹ pVÂ+d!¥POA¼GŽq>Qj[)ñÇåãhWÀ›p²E…qQdMÀd*±è„‘+ JEygÀå=9Ê÷Ú¤-qGÖ¨k=gA»áµÓãÅ›Œ.K$I(€³%£InH ñÞPVÔÛ9ã“ Õ÷$(Hë=1ö#y$$ÚªzZXâk‡Ê¾-üÙ“¦ÌQ)] eÃP[Ì8ÆÁ–ZFsÂðx±v‚H⛆/éa–[ˆÈ£•kU. rIxDr²; v8Î F¬“ž qÇx±-=ý,ç¤qÄÄl$EaFÖHY´Äç‡*I,A!^#‡ß^ßär\@mH¼°ÄV–„Ü3ù©Â¼›J3é!À鬧®·¢ òûÊ5S”ž,sõ³ø‡üx¶à29ŠÈ¶ EJ£³íX=—Fœ)UrŽÊû‰“|0ÄEŽÓZÍ,§¼’Ï‚püŠøõSj°Å,kH1’.Ø®y>éÎ|'>)äÕó$K–&J)¥)Œã)]âÇ?[?† ?Y?åwÁw×·ù#Æúæü0Ä;*[@sU—æUØÆÜ0yˆ6ð‘%ƒz9 [±ÊAî£35jôG'‹Â_Ò2ü±âÿéÓð‹ ø±Çav‡múĽÙ<Çjv§bÍìþÍäþ íok“å~æ6ö}“O}Q|oõ@_óçÇ݃ú—üãìߢnÈöÿÿáÌþgÇAôWøEЏÀß\߆ƒæÅçûµiÿ.?¼Øâ’Ít•¹èr±Ãܽ¸JŒ{ц˜Vj]jð²+7¬à&Ëv²RÚ ÏÍr„k$…¡wÖ•ˆ_.>ÔrJVoÉÍê×'úuEîT^Š™¢ô^>Tœ‘¬ÔD2NœÓ|ËÓNèú"?Êj0Hœ"¢¨È¬jµÙµèá9½2\Ü" ze푉–Noƒ5­Übôó&§ÊvcÕÓ¿RtÔ‰©¹ø×§ö4ÝDèäÉî+]ò¯O2÷9<‡æßjà™¾uÒì•è‹—w™ÉÜö/V¯¹’¯Ì5TŽ|B+ÜEÏ=.Ý1u9vÆmEÓ§B±­ÐÖªúÒ~Èÿåàº}ÅüÜÛþGøÁ¿µû£x‰ûV?Ü›ók áV°î½¬qOX¦Hjœ»©QË1¦<ÙBkÆe!ÑŽ<’¹€$xP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5=e-vö› 7¯±Š².¸Õ•6–mÍ ìÒvÈô!7óÑ™Fò;,È÷=rîÍÎÔ¹wôëéà9"®”*»ÜM§·5ô&j‰Ÿ¥Q<þ²ãé:ÃïÖùQô¡ïÍÿÉ ô~š÷pºŠŠ©æo•ŸÕö¿á}¾áévnb¦ô¥È0##‡$ƒææ™C*Ÿ”;½%»ÆÀõ•ZÞ'ßÉ´—¬OuN#ëêÁœŠXÒ' ³°° ZâG)££¤ n+¶e uX~®Ex²T ˆ!…dHz{$¹dD‡™)å•!XŽ9ˆþ¿  ú@«ü"Å\_ý?Ú~á_[Ž(`òéW£ 1!¾,(·ñ#_Ǭ/x…¨Vl­ÖØÈ8­+#ÆkÒ8¨Ù%ò 7 È“„%ÀмuL"¡‘*äXñ0üúˆ.9ÄF•K·wÁ’|}{’øžÇ3/Ûoy?Õ«Ãÿÿxßþ†ãúµxÿïÿÐÜV¯ÿýãúЬcKo‹åYÓóܰ-'Òš ûB¶eY·Ç‚‡i4¯Ü‘äfÎÖÄpÝÇ‚ï¯oòGŒ õÍøaˆ,L0[^zÖ!¢«–ÁmBèÐËsjÈ&£ÃI °¨)ëia–[†ùD‹U0c’K ò 1Æp€¸Šå`†Ü˜Ÿ5ï?Ý«OùqøN *QÃ,`’D™2À‚8Å!ŽsZ1CkžB=ÍcÕs•x¯Ú†Š—¶pÊWª¡ÜDz;o7q '´@AB0^dÛ ýu­“ CL-JÅöÍs^ßlÇèÒ1Ý˓ڙ±Í{scÚªŒ")„ˆºY­Z£UÏʺè\×7&— 7åk¹ïjµWCÓØß—TÏÉréÍ;ѽùf¼0'òN½ýe^™~´Žý.ZUSÉTW4~±zpõÑìè©ÑUS¹Q|ÏO3»•<‡ù>ÕÁ+{•t»,‘ÈŸÈ©òÍ^­_¨«ò}˜ÞÄ2E+’t!ÚvÙå©u68“%UDÓä¢jv~´Ÿ²?ùxcÓ,Ø3½3îͱʽ}Μ÷/äw‰x7ö¿to?kîMùµˆñìØ››·‡¨$=aC›$\ÕéF'0“£N•qƒ0nŒ"B¸²‰œ­Ã¶7¬ÀÌ^ç³1rïÉɇS§ˆŸµß÷AzÌmhñg>:JøÇÖDÛ‰dk)E´Ù~ñª`?[ÆâcHžÆ”ÈO™µ?J>üßüÍNku=¬n¥DÔåîjgÞåó"u_]›ÜÖýË»ÑéúœtUzûì¯_´¼i 2UTF¢&·ª¯L½ š÷dÜüÜ2T\…I5~m[¸‘kòD•—/Èi©ÌÆ$2²¸2] Jµ³[‹¯ˆÖ8¡ÞªmÅ´^\ºÇIítIœ·BYº<€œM4½˜SaDšV“7(bÅ£FŒ!Ç8ØGXƒB!£F!mk65Æ"5¨ˆŸ ú@«ü"Å\_ý?Ú~á_[át1Èp*W¶KFÂ,¬5] N#PE3yrͪXŽW¡áy„¹àgH$w‹â{»¨- ˆâ (DÃ1î «uª";INç.@Žâ·kwI«©BmæÁäªÛ¼¯Ã$ÉÙòÑ +æ©ã“£š¯ âî{Y¶ÅpÔ,¹®‰>#X1Кø¶ ¨á!%ª<¤†bm!^±F"!œÍ'Š&«xlÚ¹±çFvI¸#¶Þ£vNÏŠGÑ”n$c´g´B«Óæ%çûµiÿ.?‚‰ÛX¼«»9\ ÉÍûÓì9yádî²6ƒÎ&ü'òŒ‡'çâ9ÜÏ/¾ØÂ6Ç\S<1#³÷1:L‡ÈžpÇŒÉrärâVð)1ˆàœ.Ô23½«Ýô®LÚö9¯j«ŠÕTá"ÌFǘˆš|¯b‘’&· >­r.j¡Ur£2s^L‰¡>‚qéN)WÇÉ‹ÞàúÒæ'r·ªµ¨›~×C‘ÍTTrfŠQQ{•΋ã^œ=ªÜ—’ﶈ¿WªzÒššç©Ü«¥})þ™{QS4_“î?Þÿÿë‰û#¿—…Ér•_q9b¦kèLÕèª'Ÿ‚;Òôn_­b/Û×ö¼KÁ¿´û£x‰ûXro͘ð¡G<É“(±"E$I•&A GŽ5Å1ÌW4bÚâŽkÕr¢q†p«X–¢ª8§¬SI‘ÖæÎ]Ԩ嘠™m"l¡5ã fhÇ0šÀÖ`5rä™âVýW»1¿eʉü½)— Êõ´j5×¥®kÑ¿¡Oñæü±ÇèSüy†ÿ,qúÿa¿Ë~…?ǘoòÇ¡_ñæü±ÇèWüy†ÿ,qúÿa¿Ë*z•^¨©Òû5zúÛ”r/ºŠŠžn?Bò¾ŠoËü~…äÿ}ß—øM8vh²Ïâxž…u}Û’wy²Ë¿®}2øÇcýóa¿Êœ&îšM9幈°ËòÏ¿-Vk–y&CÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùK‰pô€Ãªl¥™nðÙPQ ÒŽE,b#'9X8¯ËHÚ®TOR'v~O•õ:tÏèªpºôËÿ²Ÿç~.:?O_•éöÓÊû+ÆAa Õt¢äÝ]ÚÜÔ÷\¨ÑÃ$C‡ÊU={^{ŸµzKj ¤(JYªÉ1½•É#ÈV²ZÅc¼G™eÌâIÂÍÎlÄlj—²†p+†ãH{X Œ‡:Î}t­RhycbÅ£FŒ!Ç8ØGXƒB£F!mk65Æ"5¨ˆŸ P} Uþb®/þŸí?p¯¬±« ¹¯/„Y›pë«„Øöf¢ÝlY-®¢o£+öë%!éÇ`2óó‰[cT+5ii[Ê×ÅÚ=ýùÄâA£‚G9B5>jÂVÙGWV2ŒÓÌ29Ä‹_ÂÂm-X9ZÊzøuuÑ· n^ |qĈ é,‚íGǸrÏÓ¨„{Õ\¶T¶€æ«.+æUØÆÜ0yˆ6ÉX7£R»¤à 33V¡‘Dr.»BÖ²³prIWÌU·ak¸DfôÇ›ÉHp¥’´’ \˜Žˆ•ͶGÃm £Nƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢øî|%Gæ „üÇ›€psûLs+í±<‡É~(Åu¯±XÑ㺚l:ÈêhÓ£ßVM¬³I@™ZØ08ð]õíþHñ¾¹¿ 1ýlþáÿ j·™}}{¢ã`ÄhRG#'WbX1"o%Ç…w4²ä%\Zg²(ë+leƃeÏÕ‰°o3”—8ÒgMÓ½Yc²Í5õ¼ãpêDŒi¬ }vòà •toü×E‘6Öê=]þ {kå-&‰xE°4á@‹"ÃF­¬Œ¯d°íó`”Ør¦Ó¾O…¬Ÿò»Çà»ëÛü‘ã}s~bþÿø‹ãð—ôŒ¿lx¿ú@´ü"¾?‘±ˆ¤7 ãë‰6ò%CŒGŒ1mí%ÛÐbïW²m”zvØÚS\E«&ÚJu·/Úó)âE‘ýRð÷å‡(ñýRð÷å‡(ñ+ÔÖ%Ãø‹‘Ùç{ æºÛ“æwynk‘#—æ9sìîéÝÙ.[oËäz3zdmˆ%Gmêfe3“/b¶fƹW9¬n†«Ì"Ë–WAݬ¤{—¹;²kZÖ¢1Œj#ÄkÖ±¨‰Çw™M'aK´’£‘4Yƒ 79wöìCÁ–!˜í ;ÏUÛˆ^^Ô1ØyÕ&Ô’#"¿iÏÜÁŽlT&”æcjF!c¤¡ÅdŽŸ0g^ÞÎmMhDÙ²t ™£Öµˆâ˜æ+˜±@ÂÉ—$¢EQ×qpQK]W"ÞÙí½DVXYÂ’B Ÿ2ÃSÛ¤0ËÒפBµõ†aã;»Ö‚ çèÝ\®T‘’dÍOvyrÉÚÝì„TV*¹ûmN¼fÞïGâãlºŸsÉÛ ß¨ÍSÉrûfæ|¶õÔiäs™µÉçÿNåNô^‹ã^œ+ôûT\ߟµË«Wõ(™»2w7?dM­D„VésW/ôÿLüË×ä,³ëèóý†\½ÿþ7×öG/¿hÿc‡~Ê¿Íg‰x>]}ªýD#U~Âu_sˆŸµ÷&üÙn!8€JœÑ’PËo Ì9E”rbtQÆy%ºOõ'ÀÆ0þåñýIðñŒÿ¹|rq°­>ãÍ)ø^Ï T±Ì«ž·Åw3`HˆÖ‘aK¦‘Y($;ͼòŽ+ã̲ðŸc˜R$\S2&Ù\ÜJ˜“ *LËœA[°¤$×E”C>ºè–HIŒ# —nKÙA„j#ÓU2Aå¬p¾AÈiRUÒe̘ifÈV´ai¥È1¢ Ì‹8Gâ^.¬æùNiõv1Ìø–•%ÇXä‘Xÿr;áKº¹R"B$øù@#9<6ÈþüÆo1hxÔ—0±bË1 Ç˜“ìbH-2°©è¤bh¶iÚF}L«xædgÎðáÞ<×G ¦G‰€‰6(%(Ú²a¦À,¸â.¶I`Â!Æ+âGs”,“I+£ø#Àòãš%Íe"‰ˆqåú Ýð0¯cD&©Ã (mžRE̞ɕXvöEÙ:ü?‡ëãÕSUGHÐ`ÆEÛósÞç=îyO åy$K— …•2QM*Q$Å+¨Ö“ áüQÌv§ªÝüŽ×gvW+½‰pî®grË{O9§—|¾i¼|Sƒã£aGå«*+qMV7 ù§BŠ|S,¼Äò‰§.L™Ž­7’(b›Ó`z{zgHæaÁÄw¸zhêE#å¶©ðq¥icÇœRsb‡Š’‘ò£<™–™U/ÂM}./=ÚÕuda`ÅÑe0p6;+†;z±ä+¤EÚTPÖ'ƒÿ¸Bó‹‘ì›KI±E:VºØdŸ¾2cŠw·fÍó#:èù„CTÝEC’Ãb /"ÖæÖBÉ:N'Á»…&McÖ2ù‚p ƒ$qŠ,8¢ X¡ `ˆM¯¨/ƒü1~êøé-ïî)äÜÌÛ.°•@¹€,·ÆIRM<ãJšIâáÀ …®MVþ £Š°é"<’O‹RIC—UËÏ”*õ‡®kÙM_aœøöõQ ÖD…"¯øðÖzæ¾f«õcMc(±w§2Hð¡GG8+4k¬@@©O l±Ê€õ<@`\#ÁíTøît¼cá8qs\‰*MtÀÔ` ùÓfºâ;TôÒq!áÓOH‡.'+* É8Þ–•¸ƒckïRg¿¿8§]âÌ[:»P£HF£§Øv}Ux :º±–@jkDG8‡’K s­0ÄŸ™u]‰bE£«ºŽÉ削SÏiÙ’ͦ#-*ãÌ8Ã>¿´ó=÷úíáÊsšêYq(·-›^ÈñÀâë÷$wÂ%œå†4Ü“™bªÇ´º²¯§¬‹·ÌØÚL_>ñ‡;òåQÅ» ¢÷Ýf ÆÜÞö¢Æƒ ¢>°}t¿ X’WaÁ,v†Øî  hA.ÎÒ¾Kû.ÒœZRšÅ:–Ž=Ä™r¿ªüIÿõ»ê£ÿýnà¥Âø›âHá¯|™â—‡m%Nû»:oÍŠÇo1‘Û\ëªð¬ƒ¼rR$pódÅÑäN®‰ S âS¶xÙRD„ » bg”èÑÅ ¼•p]–¬•ϰ”¥± c¨ÅÔú«˜ï4t–($ƒC™HU\Ô‘ ly àñH@¸‘$ÉŠðÈ'Ã\÷¹¬c®{ܨֵ­LÜç9z5­Nª«Ñªñ"cµhs´Gc³ö8ìè&éÖDc•=¨ÇhS¼¯o¶õÜ2T#ȇ,:öeÄ1#I ½ŽöŽ4ŒÖ78oÒìž78nÔÇ+V6¼Ž­¶twrö`oÀÖ„ŒÂ”ûñÆ4mt®T{ÝФUE+Á‰±~Ħ $CEE4ðIäÔx’P$´¡8JÙD}G´ÐºZ¹ûdWjW+Þäv—=ÍF¢)¢7ÊLÕáLü´ïUyœŸíiÑ[ÐhŽM/øMÏûÝÿã½sÿdwòñ/ö„ýŽû*ÿ0~%âGìDþjñö°>äß›#=¶=R^ÏÄPæH†ÖmlRȹÎË|øo ž<ŠÉpe ˾¬­¨úP÷çx‰ûaÿs¬¸úr°ûˇþq±úÿö+}âÆ–5Ïr÷5ˆ®råÕrDëÝ×èq8„÷QFñ„7ȘsZÀ„ŠòÅ{DÀæ†W®”b»$XÖ™}N×®ÑR9tÊÄD®‰!–üçPâ‡^«ãè“Lö¹\¬5Mo3fÝ_›vŠÉ¶©Ÿ4ß`.УÀøY"³#B棠Û3™{wææðs Ò!ÓH§&º@ÈDÑg.\9a@4¼½AiäMhÖY"Ì•61Í ²j!Hã`úçîÇ£¯drIÒfsÓŠ÷Ë´±Ù<™ÚVr%ÏåIC˜åcªGÚžÃt…UqKu­i9§Ê¿…2 Á™êU£ŒXj £5€BËR”ÍxX…HY—Õm|BlÈŽC—4eB %O5H2.Ec@® 5î*1Œ{šð†=Ôá·N™qa‘Ë©rèléå&…U·cËc•šÇ¡î" ½àB=BÛ Jñ#—må +ÁÌÉ^6È;FåV¡H‰­l"­|*ú—G&Ù${ç 1¾^èQŸD­HÚñ¢P/s—Ë/­îáȭ͈Ôب¬|= ôŠþ`DG9—D{ÜÒ…ÌV´ò£il¹„4«ã83ÃaBa=¤DF£ÆA‘ЬxÞÅG1íUkš¨¨ª‹òa-ñ%¼jákNbqš-â°•ÊÃSΜ@F;ãÀ„#Í“´æÇ^šx-Fç°¦w$õ³ÖèxºYC¨Ç7qSçP³fI4쇨ÖM‰a*¥ß YnÔ7i`Õ\×g’!}-^ˆïoËæŠ®buãS}·òÿÛÆÉ•T ¿T.ô§ŸF~Ù¿Û7®häTTTTÍ:¢¢÷*/ÆF93kÚæ¯ÐTÉz§Túœ)ŽÒäÖ©’út®KçÑÓW¡ªÕ_K¾¬jwêZ¿ª_ÅçEoEá õL•Q5½|„Us[›ç\òDîÔäËV®<„sÍÉ\ìÐëåçîm5ZždB®¤ÏhƒëÑ;×§¥W5_¢ª¹¯¥zøù¡§±Þ_•š´îÔåÉ®—¢+“«²v´ò¡>uþ÷øÿ\ÿׯ—’ØFj¯êŸ’µ==QŽû|Ü;öW5ž%âGìDþjñö°>äß›¸`HvÃ~jîXˆ°(áä[)í‰8QNAe¸²ã¬GÛ̯Œw5²3â<(QÁ0 ,H‘D8ñ¢ÆŽ6ˆã€Mh‚‰­„6´cZÆ5ˆžºTV ÑÖ†ž VëL®Y[•³/’F”`ö4:á# µ¬T‘¸Š]¡pDDÔ¥Wdëºö澕҈ŸA<Þ²ãéÆÃï.ùÆÅU1ÌK´Ãw•Ñcî0[ò&ÖJŒî•ã÷F³p„ž§=­Er زÎ=dG$um¹«G<¡;Ÿ]Œ :RÁà"¨t -æD¨/t<9Q¬DËyák‰*V’£ç'HqfÌÙt“¤~jA¹q‘B ±dÄù½Yᎉ–8f9+±£0†"áŒäN›˜²Ñ£A5òÖ_'^i‹ri󤺕ÏxRäícš:øÌÄp$,vËi¢ŽüK\ÈÁ‹•ö¯–ÑÅØ“¤$ "–ªm—ŽÃÓL+b¨òjl™eaɇ)Š%±Kx/æ¥EýU‡%T2EŒ¯‹*e¬ià=|fJ%…Ü)1F0+8rØ@J®¬‡¼*É1ù³‰’#˵6¨Ð,K—UYÇCÕµëŸ*l˜ðâ‹Nä™Fp[Ú6k1\Á³YÖ7S“SÜÖ§UDá[QmÙ”cxÜѾº¥.’§˜4˜Â0H¥EqÄýBëUH¡sa%}8ù… /5)#û"21Ë=dE/G1HaAŒ÷hæ Fç‰\–Ö¶Øù /bL£>+$;sÙW+JŒ@!°CzŒM`üž=¯ÜwpŸøÒ™e–]ÂË¿¯Äóϧ~^l××/N§ŽªIØtŽ‘W÷Ì9Y¦~—Íz)¹G™ Hy$êdy2<\õL¶Lº@9íiñ˜KåˆÀ;p¿%aÒŠðGf ˜DÉ%¬DõC‹YÉ;ÔÜC>7/f¢s–¼¤¸µúb³xpôH³73\NDuó;D%¸Åg˜õ9˽¤3jiÇ!ÇE§¯yH( Ú‹eVê“1c²E„‰“’_ðÆD”ÿBнþ†9}?¥_–î_+-I×MößÎÿ·ý>‡*uÉŠ¾ÆõùG~‘Ù÷1WÏÓK³ÕÑso‰x Õ=²/_Bù—,Ó<—%Ë>½Ë±ÉÑÝS,ô¦}t¢«[šwé\“¹SåWáy¹rãCZ¨Š‹ätÍÍô¹Ý‰Ü™gÞªÕUÍ8Ò­iÌâj·lh¾ÕÅWuêž”W**¨ÄM½\#ȺÞÙfÑ·Íä S‘–y½UÄòœš‘ŠŒOY$~R®Ò¹¨ÏlçÙÔL—=Oj&IÕS¢uëð› ™»pó[ÉÓB2(A«S-HåtÂkÍÊŠˆÌ‘¹9]ë_ú÷qcû0ü/ì®þk¬‡.)öÃÌsk ìC$Y ¶Qí!å|>ööx+jk@²&Í« LÍÖµ¬GÇ1\ÀEŠL¹%hÂ,‚Œn•EàåÇ¢¨aåG.'è–÷q–GW€ñP¸x RI8%1ëxäet‘–ŽC%Â'wÃÒ,—ùIñ'ªõz~•Þ—7ÓÞäïêŠåN¼ko¶OGËÚžo±èá#-Æ7ØÝÑ5±¿+—íOG{QUzµUÜ/ ÃÕ쨞J÷*¦}Ùä©Óª³>çùÑìÜ""£š¹uL¾¯úww/TøN¦ã—§Ok×»»Ûæ¾f÷õê‹Æü·í§N®ÒÕÉS§>ª3UԊϪ4lØO6“ÝïÌY¢"+Ÿì뚦A{õFµ:'Õïꪪ½UUz¹Ê¹¹zªªúås•UUrDDïU_B|&²)un$}â5ãQ—ˆo墤•'iL%6ÀI²Ç¡  y¹ Œ]‡ÚÙÌf…¶8×|yï|FàHèˆ×Ë‹$Zhæ®\çsÌsæ1Šç¦)¯!JGª¼„#•\÷½UÎr«•UWŽî;½r¹ÝÉÕrê¹'~Išf¿U>Tƒ÷^ΟCØÕëö²÷xÉ$7?Õ#˜ŸÝ=­j}U÷;øüðßGþw¯î㻆”JñDa‚a9Ã0L'!aŠ×Œ¢#Zñ‘ŽkÆöµÍTr"ðø¨‘!=ƒGF·\¢D;D$Þe‚‘ûe.‡§j†õº;ƒ&|ˆê¨Mõ]ˆÛº†­ª« kbH‹wjÞo³ç7DÍ0 tÑ–"Àá—IgŠìy¾W™ml ‘k*(êwǃ¹Ó%>Uœ˜ñaŽté\¨U½ß "¢ä¨¹¢§z*w*z„ ììïóko™éöµeòÞdEN¯qtVäåÓÑQS®´ÿŸ.ïméTÏúã4¡SÝý2eÓ'ä«—™sNì•|KÓ…’¢9ªªþ¹jÔ©æîÍzú<¯¢åõú—ê'WОïÿµzqþÔJæš›íU?V½þJy)í\¹é^ƒfášžSòòZí*¾Sú õjDÐÍEÒö=Ìs3ò.²'vY´mè©ä \ôk²UEz«ˆºœÝ{jŒO]š®\ZÑr÷[²ú9/Ðãóªþýÿú¸LÆt\º¦–*gî.´ÏèäŸA8]Oxÿ^5ëô6õ÷{¹q—0Þ½:µíOª®b"}\“…GHйÿã…þw<·4‚²ÀåŸ2‹[ÆØ…{‡µ´ \ cò„Ž0:<‘JŒMÀºÆüœÞžtsxÞÕͤÒ èá‘­{\Ôù–ø’Þ 5pµ§18ÍñXJåa‹©çN #ñàBæÉÚsc€¯M<£sØS»’zÙët<],¡Ôc›8À©‚ó¨Y³¤švCÔk&İ•RÎïØQ®Obæ‹þžeN‹îpÕîrt{sö®ü^t_F]ÝÜzQxi‡žÚªf™ûfü°ÝÓûœÑ|ËÕÍèÒ«™§ò*/Ð^žðîœ9Q´Eè«§ÛtÏÚúWÜN¹úSÖ퉪R®y#SVJŸ¦Ë¯L•t§^t÷ð’&;V]v“75täßusòvØŽÜvŸ)ùª*"&ÈSÚ£|’9½Ù*iöåÜŒ]Þ­ò‚湊cQ­Näj""}O^ª÷}O?ØáZÞÍQS<ÑQ§›6¹>¾}?G¯Âlqå*Óâ:Û“Å‹ìykÎl™ÚH@ž;`•½S׿õÜW,Š’ܼɷµ×ÝÌkéé—Ðá«úw=ËýÒ·§Ôjx—‰±ù«ÄoÚáû›~k†éÔœ½¶$+Å5E"% ¬£ˆn/:ï"„.tØ… YXEY¯åMðŒzh¥ ˜§¼ÄRãJŽVA*ÒÍÁ( 5pÈ ­ Êǹ„cÑÍ\²U‹û`to|Xé; }å…ïùS¤Ç‡Zw$Ê0ã€zÞѳYŠæ šÈö±ºœšžæµ:ª'­Ãk&¶½’<«a”€°°´+6­«c¸¨÷¯²,¹!@4¼›].S§ÂÜÜûÚ©öSn?²ïóxöãû.ÿ7n?²ïóxöãû.ÿ7n?²ïóxöÃû.ÿ7n?²ïóxên¿­ÿó'ò'ÿÿÏÇÅ¿ÀÿóñíßýÓÍãSȹ'鞈Ÿi~ß|zŽÌ`õé5òȀǔj,„‘\Îz= ©¥X+ È2³q6Ýù©&U¡"Œc–²&o.¡”,„ôœ"ŒH‚ëdQ¹\RíµTHq j¹Z0±£+ܯz£ˆÔW½Î{ºyNr¹zªüiGB¾©1ŒNb,¿±*l‡Ë¦›« `ߨß*– ;¥›&¦ÂE,…ßn1E™æ=Nr¯i ÚšqÈ@1ÑiëÞR 6¢Åº¤ÌP2E„‰“’_Ýò*¹«{ˆßÓ7ù5'›ê¦išðÇ5Ù£‘8Ò¾~åô/™~§Ûîî^9BûR¹:ªéz§“–_홢/D_j«–•OðöååuVª#U~‚jîϧ:¢*ôL•Xîôûiær{ŠSũ˒§™:ÿÙ×»„w•?Ø!Û"³§£.¹éò—©rÉ6‚<ÈäE˪çæG™* ½¾lò~Óï%Qä\Ýò­ùAçÓÈ芫—E{úûm6½Ìõꪽý?Ñ8VµQUu"d¨«žœû³L³ú½<¤êÕjj{—5û=ùåÑ{¿ÑU~ȾÌÈBöK BkW—NV1õF!¤½»!èG77ÈØ(£™8`„ÆBcF1¨ÁŒlM,cÔF±Œj#ZÖ¢#Q2Nž½ÿ®á¹¢§°H^©—G8®jýj¢¢ùÑsà_ÛýÑþ%âGìEþjñöýÍ¿5cÂ…ó&L8¢Ä‰D‘&T™h8×Ç1\шCkˆB9¬cUʉÅtñ-˜aŠ¥µƒæKb]eqN9SDPPˆëY”‘È‚•fÖr”Ÿ”Vûg„a\û´«Õ2ÉudgyòÍÓ¿8訋ÕëׯV‰îjýr"¢ù•3õµT‘bE§­ƒW’ÇH|zø¢ˆÃ†ã8bj•ÃدÍZ6&MOx·Ìµ”Á{+\ÇMœá¨Ú¢ƒ\×È&²‰¯TÈ@B4²J#ŠÖù%‹IеõëÞçuo=;J« 4ŒUFµ„'¸Ü÷>L©iÓŽï]߯Z›š÷&išñ—U^¾âtí-û~žäóìD4qˆR‘Ú6 º\÷¹Êc©Ïrä{þ1bOBTMëýÌ]_aSìpÁ’´qýYÉ—e‘Å“Uɬq¤L>oTAµEŠŽzjÐ=oiàÌDl˜¤QN´c•?® u£{€VäP=Ìnà^ÇååqßÇüwñí¾ßÙ>ÏÙ>ÏJÔú.OÇÀ[_‡­Ê’G¼’!"C ”{­zO›ËÁÒFu¬„BæÔ§9¨£6#·ä‘Ù««êQ¦Ö< Vk±×GÏa„(S@æ‹0Ìvî¡4µ”ñ!#Ù,|¹ÃR³hˆ9Ó"`Æáù;L3E“Ÿ“<·êùîÅ–ª¤­e$Ÿ~ÜѤIXb‘–"H¶–Ò1Å‹ÃAæŠ9Þ9TxxR0¶’ P¦ÇÜ ­ï£Nmu„¶U` b ê+dOH±šÕ ,è×4,Ò2+s̅УÊ]#VWÆ{̪õ<™èéžÖ0…AêsBÍ#c*è­å.á‰ëßúïù¸cUšÕj§T]Œ²TïÏ>™p/ ïç»Ä¼Iýˆ¿Í^#þÀ/¹·æ«|$^Ä;*hÏþÆ"$gÄ»·D”  Y;…PaⵊpFb:ñDHÖ,‘G:!>yRŽÑc’$ÉFÀ) s˜ŠÑˆ"\òîkÆ«œ¨ˆ«Ä¶¦~Æà±~Ž ?§¹“ÓÑ×>U:°/s}ÇfÆgîù/ruôúrñ¯¼o93Ù¤›X뫆ôi稙¢.NÚŽ-Mt¹nk™Žj#K ±ãœ¶ÖÅÞ”lšÖµ Šª¨¢D«¶£‹S´·7=ïsÎw–ALW§N;½w“åýɽÿ¦^üºç§R§£>&k!ŠöŒ`ŽŽsÊRy ÔR‘î{²b3'=ÚQŸzà4Wšb„§qã;ŬSn©¬›È´è𨊢r•ˆëCË·*°Œ{TŽ7S ÄzJa$A.¹æÕÄ&Ú*àÀ‡œõ+…8£ ÅVµªG0,cUêÖ1ªõMJÖ53É©ã‡v6µ!©N– ‹Íp !¯pÏ<}bÏoØY q<±1<]üwñí¸xj+æÙlq^8QÉ!Í\ƹʃjôGh¿¯o§xŠXé¢0¹8^)³ä1ª{çČҵÆcLEAIªôw 5e`’cFÑö„•t¹Ë“Ç‘§:¿–qЄæcˆ¨ÅÐÄÆ|„˜{Á¤ª«›'Ëc‰š¬³©¬I1Ë Á/'gj'S «.¢ ‰dE±’iÑêÍeq>uµŒ¾bÂÊYçM>ȘoJ”Bœ»@Â=o]ܘƢ|”‘ÈïdvkÕÌó/Ôî_¨¾~†™èrùIŸ¶EêæùÿçÉ|¯Òðb£šäÍ<ÿéèïEè¾%áíssEó§Ú_2õN Jf7¦Žææ%Ë»-~Ñ¢z6ÑÎÍUxÍz¯•“•4G.zS$N=Ý)«5ëëü¥ïö¨\åô"}¯Fyuë·ÏþÒÕG"/w³;4Vä¹ûy~FY Ú^¹½ÝÙéjg¡¨¾f·5ô&k휹¹Ëš¯Â²†Í¨;C2ȹlGͪG#®kå‰ìÏKŠ`‘„d7¯¯ØGå=îÉÆg"!$É"#wL“5É­cZÁ ƒÆ6|!¢ÏNé˜ÌòÏ-z[ž]3Ë?JpUô ÿÌ^ý¿óÝâ^$þÄ_æ¯ÿ`óóR=N™Ñðü?‚±-Ä1 Ý A\4’€dëc‡‘‚š%Z¤Yr"VÍbG… 8!ÆE‰(‡4XÑÆÑ

ytôtáÔDDL‘¢"'r"y‘=³ ÿ¿ßƒW>ñ=Ãí»f<"kLQÈŒ(ÍjÝŒž21é³Î0e*È0Ø2B©ÓÖæ¿öªú<ë¹Ëå/¡ô­÷?•zýÞ^ ó;¡këÊŸ<ì—)‹ÿÈ>Xwçþ…"r[?äéfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñ*ƒÁ›C>pO*ÜU0,“R4HÛm6$i³8¦ÊË áZœàfW,(E²¸°mc'o˜°³–yÓdl‰€ô©D)Ë´ #Ö÷hØ6äÆ5äüº¹ËÜ6yO^þ¨ßBd½{ºzxGÊèÔ\Ð _%S¿ÙL¨¹{žOOl¼#ZˆNˆ‰æá?Jåûö§ÛDO? à ÅÉÍTTTè¹çö{ú§£¯2|²yIúW§¶Nõ˯TÏ®•Eóø—‡µS£‘Q~‚ôàÂ/M—iEÒ©©Š¹&éïrù,cu¹ÞBõR' ­UÐLV)Åͨõý#3ÔôÉÙäÖùHíAã%ò&fŒÓŸ“šw9Zˆ‰èL¼”nkð¥o`ŒÎ¦œaÑÛ¥áBOce˜ƒ:‘œPëb*¸ƒO+0ƒ¨ÎÜÜ#l“JÒ9®ÛqÚ1é m £cB+Êò;áÀýÓîŽáÿÚýѼ1úZÖçéÒ™x—‰?°—ùŽà?±ù‰óF>ª0!µû [8u•Í2f66àË8û²£Ç‹.jžLoš4“:5F§Õu,A›#°¦Úo²Ì•ʆ0 :qÔ“gÈ`ÌÍ9ä9¨ò»á•Mð>ó_úë¤ë¿X{çPÖW0jk£móì¥ÇƒÅ`½*Qnœ£õ½5”Œs{Ú‹ýQ0/÷ÛAùCꉾÚÊTL ýöÐ~Pãú¢`_ﶃò‡áBǘ2dɇX‘"âŠIeIFˆã€SœSÅsF! ®!æ±W*'Ìù62QîäÏKš5¨¯!õhµå1^Á #ÚÕ•q=ÄWH#¹`<ˆFÁ„zÆ‚A‰›qØì•ÍÔåRÉ+Tç+œž±UW$N74ïÒ‹ò©éËôÎó÷*&Mè¹æ+»Àþgt-}ySóÿ’¥±ùËüÿÐ…NCKgüœäµ‘Îâ K2Ÿ E×ÎØé+còÑ0\u~s§iÝYý›Ê\7ÂUãv.nã†ê¤Jdç[29.Þâ'mα ­1„A,D•_[^i·»¾OëѽxÊ:hO‚Ÿe7'ÔÔïCÑ:¢/å©ëÕ^ìœå\õ{l³ïËꦯmšøÿÓ§»õ8D^öô^Ò‰š§»çáñ]ÜÿdëÑ<´îùf&}W$ÑÓ«¼KÂðé`LžÖ»RôîL•W.õvÛUÙ®iìMEó"æç+—ÒåW*ùºªæ«õ~Ñ ®!HæŒcUä#ÞºXÆ1¹¹Ïs•­j*ª®I׆ÊÄ=ÞʉT2j2H™߯z;¿ÚùÃ&0B1ŒmF0cb#XÆ1¹5ŒkQÖµˆˆ>@ý¿ÝÁÚÜ¿U¾R}´Oñ'öÿ1xìCþj|ÐEEövÖgHð¡GDÜ)2W¹ÎsÕ¢&¼ò¥â0‹&IED#[ONÞft£^^MÛ™£k‘ôG–ƒpŒ­­a(B!âI&|ùŸ ÂU/ÀsÍ0àÐ/d™5|h%ÝswY²+YìÐÒ4DßÔf½Â Öâ+F 8ðÒ×É>±¦Ü»+Jù…´¯C?x53ß­ƒpDZ¤¯cŠ'ÎL‰³d8`,©råqãEn)äH9\Ñ\B”ŽhÆ6¹ïr5xÏcÊ#ó{Û]ŠSbM;ZùŸS¡´äóÞnÏ9±Ìd^_w`ûl'bLB'¥tÚzf0ˆâ‹íÄhæ)ØÖ4®pâ6Ù†Œâ¡†#2ŸÎ\›|¼«,A¦is»Ð"Õ]¤ôYIÝgl¼ŽŒú|1… ×.ß/É-í¦‹!1 ½>-•(¬èBElm¡=vóÆã•‡…mU‡„Ð4N…OE^hÅ#HG¬§»òbí{DæŽXãm„jÈí*˜…dI¸êÔ"Û!®§~’¤hÈ4kæáøu“ %rº)èÏ" ¯Š½ŸÕ}·ÿ”85•ÅŒëk;|Äû)r'M>ȘoJ”Bœ»@Â=o]ܘƢ|%ð°þ+Ä´pÊwJ$J{ËJÈÄ’ñŒOðB”8îB7ÍR8bÚXÔOꉎ¿¾Ûÿéü~?âæüƒÄp·N(@!lª«fÉ–A¬|© …}O!È¥+bD‹ç #„ZFвãÁŸbÝÎbUn ‘S¹•ê-˜ª®Ž QŒšì¤î•3vXF€A}ÆÅplWs˜‹X•Ð…‘^‚ÙŸ*Ê”çÖ ®¶6Ñ^ð·yƒi辁 ”ÀI VÄo“ „^ø² ªd7;•DWD—*2‘®PH0´‘Á­¨ÆXRÖÆNç/·TNš}‘<åÙ‹aN] ¦&†. ävLc•>bC± Ñ6ì.6ßçÿ½ðK¶×OµÊ?œYfÈ8pÀYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ðÈ“qÕQŠ@6C]N; Câh×ÍÃðìáˆú„åtR²X5^&ˆÁ{ãzÁ—¶š·¹ÎÚŸƒc-®_–äSs{¹›{w“ØÛŽcyÛãÔAÃxxG:º ¸ðdXÛÀŒÙ(Q dz—"¦aÖ;yYR D1•SG‹ªn{^ƒ”ÞÚìR‡ êßÚ×Ìú _9–ËvyÍþ_2òû[çÜ‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯É=ÜIõ;ˆ/(9Ížs±m§Õó\¾ï/Ìò2¿±¾mÝ[[Åі㳯gªÎЋ_Ê7•³©¦—Ï&Úrö3ù\IæF=¹s;I–FÖCsÍ”íô“ê‡ÑZjÙäûtúŒ·yŽgžLIÍnæ ®Oclºùæl<}Rañ4*M·§a£ Ø‘XÚ ·“ïkÜV¸‘@HÒ¨FV; âZ»b¸’°D}‹aF%"DšiiÚ C†Æ–T Œˆhäœ)y>N›i5ÚcAŽó“' ¯&”òÒn‘ šn#7NA‰7§íg;\¹ò$½Hæ3Zùñ FÇŽ= Œ7ûQÆ1"äÄá=fÚ/ºõëѹ§“Ó,œþäëÝ©zåÀ`ÀäJí¨ñÅ–n\•|êŒcÔWVˆ#kˆG0ls vê³Y$IQŒO•$«¨¦{Yý¨‚qH8Â\bík_“˜šä šà)âREø2òz(帽p—t`”X'ˆ+)Ë¡’Ñ “aÎN#s`ì\;_ •øpÝ,-š¢VÊ|½ˆ£9ÚÊ(¤tP ¾Ö¨ßZŽ2ÏÏ@‚ÇŽÒÕréc\¹5Ë’tj*÷'÷ŽÜr䬂9£k\?)%ˆ×¸{º61Z6¸YïHa4µƒZ1­`ÆÆ£Æ54µŒkrFµ¨ˆj&Hä8ßAÿtw ã^%~Â_æ;~ÆÏæ§ÌöøH½ˆÛ^ýŒ DI,—IP«(,²vćÄ"sàŒõm‘¬_òtAü:¡ÿ¢uŽééíñêfÞ¾ç®Ä÷my¹« ñU˜jæríO^ qž& Ðˆg’òZÎ+Øæ: bV‘ÅùÁä®ñ¥Pæ!æE4JþjòL90ÁJb (öE¬8Šý½«Æ!ðM{£ÈA”XKN—® ögâ)ñëùk7o´{µ5©gÏAÀÆ~›ªùu2rš,…`. ḧ‚ø&‹‡k [»èI‚Ÿd¶—0ç(̃dˆQ9}€š+A)r2mýÍ­äÁ±G.âÆ]œ‘ÆaVGaæ˜ÅhS\ƒi G£u=Ê¿0»¸iqà€,­ lžØ­‹[;!‰WrÉõÑ6BŽHÑDP/` Q¼cÄxzPX ØD•Ce&k6[ÏË‘ù«\»¬iÝ",:x"S™¯Ž±€Xš®Ék…eˆ`O®•g²LǬ¡WJ£NefŽbÂI$0  ãjSŠ;æPÜUÝÄÝ’ª,"YF–0e|wžL6¢0Há9ÈôaFõn—µWäªÜ. Æ Ìmµƒ¼¦´ãB”#fÃdA¡Á&L˜ Ô(«ŒkcÑÖ+—ê'ËæjzUW»…ÍsrùO\þ[,ºwtL²N‰Ñ=9¯Ä3ãe"G‘Q¾?,PÔ~Ë4>ȺyíÍ‘¹àR0\ð‘ñg®¿’äM› !ÄeK—(£,hãqO"AÊæˆ šâ¤sF1µÏ{‘¨«Äªm ùÁ<¨sqTÀ²MHÑ#m´Øll‘¦Ìâ˜G+,'…j3˜!^@°¡Êâ|ëk;|Í…œ³Î›#dC·¥J!N] a·® ƒnLcQ>OÛT¥_ëlê©ÝÔ‹ým½[å/§<•3á -PŽó ¹ì7.åÒ½\îüÕߦӖH‹ð•sÜOu~¯Õúüˆ¿OÕ1ÞÕý|Êä#Sõ¿S…Os§r®M±5DM/TꪩÓC´½{½®Y¢*ø×‰SÙš™×Jª¢£šÞ¾O”FV^N~S}nbMˆ½5K3^ƒrnhrGL¾#t“Éj´h¬ÐS Îf¬¢2®½r¡òˆ×«WCŠÖ3!¦†d&#›êÕ"½îù/ÐwÝÂx׉_°›ùŽà¬góSæt{`þa{¼;‡eãïsÃml§Æ.â@€DüÝòdÉoam ÷áï†ÙJJ꺇?ss›iaÉ¿ÞÓ¶Î_K­Ûm\ù]íÄClÖÜ}8Ø}åÃß7™6þ檎NØ£—qc²1$¼d+#°óL8îLF‰®R8b#ѺXåF±&!€Òºm=3DqÅŠöâ ´sìkW8q lÃFHqPÜ!„ª¡Ãæ5O‰ .ÎLèÛŒHå+$TЍûM#æGçn¸V 2´ÇRÊ{±V&µ·ŽI²6j&ÅåôâÜ)gX¨|8h¶QæÉÐôž^RÌõD«ê ñ#ó¶ïÐWŒÒuGBÉnXŒ4ö °1J6‘à`d¤tGØŽ£1ÌŽ€Æ‡m&K£=^á1À”À|&t§íE‡Ò¤—Kß¶ãqLýkÈýc¥sÝ–Mj®IŅܦé-„•*ÈvÀÖŠ,mlP¼´Q†>öÓm½Ò&ãܼ'¬Õò£Ô‰ßÕýʽù*5Yçò•ÝÚS8õa\…ùâyP¬^"‰’H-M&£®ë¨¦ùF¥k@…#‚˜ÑBkX1 F°ccQÆ1¨kZˆÖµ2ù-k¥ÙöØgPKªÃ#g"½Xùa?? ²áÖE£Ü‰öQêpƹî{^äj£ŸD\Ýš¦J¹ôË>ïX¬b«ßÝÑ<„\ѾR§”¨™¢®„wO?3{—%Eòz¦…Uþ·“¿J™f©Ÿ\Ó%MJ';R¶CëòÄ{tQW'iz¯Tkž­ëÑS‡}Ÿ¨¿öÿ§N\óv$îÏq½š7¢f¾R'O%Í\“?ðV/Ë5Í÷z¦\KŠí:u¸¢ÐˆÖí½ÎèÖùoG‹ª7=½HÔj·ÄŠ7=u5ü—h(ìü£ª1¹5ÊŸ,ý*ѵïɪÃÙ$½ŽÔ‘†ŸfŠì·UíGÈjûôi QÃ"kÕ¬cZÆ1¨Æ1¨kÔÉ­kS£ZÔL‘¢'Dù/ë]÷Gpž5àˆ©š***/TTTî^úÆÿ"|Í®ÅÞâ! >³™é$’â=B¸¬ DM ¤£GÈ$¢HdkĆØs©ç|Š[òÎJW"{Ô¨åôtW·ìý]„ÿßßÂkŸ›r&Ípဲ¥Ë”QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâX«í=W܃& »fxO)a>Tr9½ÈîlE˜jé³a”êÞÍ9#Ê¥ÀÃàƒƒ+¤äÖ–‰;6;á>4¨ëu!nœ¯– ••5vpœ8­9"šI¬®,g[XÉÛæ'ÙK‘:iöDÀ zT¢åÚ†ëzèØ6äÆ5æ‰Ó b)µA‘¸¦…”yµ¯)ymÉ]™bué9̉\ûc$Äùt:ïš,i…Q8æsì0¹ž7,œ¸™Mk í–u˜ÕCH[èLlc"²3‰L³7 b(V‡¸¦…”ˆ6MymÉ]™b–„×KŽ.}±–œœºN׿!‚®1¶¤ÞÉXïDßi²3P³Ôe°mÖGˆq™ÎI%Èé­âOXº}²ù,ýr÷*ô^‰í—ÜEãJw5>Ϻ¾ê¯U_:õã´ ŸÝíÌw_i­wgÉ1DíC)&kF©Îrçn¨é—É$¸Ä–ði«…­9‰Æh·ŠÀW+ ]O:qï6NÓ›ziൟÂxyÜ“ÖÏ[¡âée£|Ü ÆLB͘$Ó²£Y6%„ª–w|ÀÚwIÝŸx„½ÞÌäîîw’žRéÓÑU8BwKßרƽþÂÕö½Íò½²éÕÑUxÔîDê¿éüžuã 7ÜÖ©ôSÉoØTW}g‘ËÞ½îîÏ¿/2jˆž³}Ù¢74gê—«]õí¯ŸÉTñ+Èí-O?úuû+SÈ™½uŽL¼¼œšZ©ŸLÑz·,Ñu§~~l×è«¿œç.IÓ5\“Çù¢¹ãMy"¢n7È*";®HDr'N¹¯ Uîö«ú×&Kö³âDw/TÈf_Úu~ô™*û­ùoðî"X#ZÖ9ïŽ÷iÒåqtmEÓ“‘ª$vnLœlÑ«©îãrZ¾0<¯#ÚÉr§Dò^ÅA³<ú½˧ ô½¤áL.ŒL³](ÝO^÷½Q©›Þ®{²ò•~H‰úÅû£¸Oðÿ«Ã?Zßäù—(ç™2aÅ$H¢$‰2¤È#DñÀ&¸¦9ŠæŒB\BÍc®TNŒ|!C±S«¨¨7£NJ@‘Q—M’!̵W7v¬`1£Un{žK‡´Ÿ ãWùÛ‹qCSÑ“îäªýÍ2ú¾µxÁùŽgzœvÛ›[:{|¥½åôî>S´y]ÝI¿³¿¶ͦ|ØlüY}”Ï—aÜòÍ™ ±‚^B¶+ca˾\e•ÉE?("¡äíD°ÿk$™øÁ?l´ÑSKeûLñ}×ÿ9Œê¿‰KáîÅXšÖÜN8e$ÈÙ¨ ˜ñ–¤E¥ˆ‘êa#¸Œqb ¦B9Å’w“æ°&C9¢KˆaI‹*1^ ¤í($G8•¤ ‚F´‚(Ü×íGµQÈ‹À¡Î”]ZÓÎ!Yµd’cÌ[Á•³ÒÚw ’-ÛtÈH¬‹±ÄøÅ;Â6NÌÄ 5D’±Ìy‚‹v2º"#€£d‹vÒ¾jš+"Æt‚¾0¾A$'! Xq"‰ŠgzçßÇ£è~?û8ü|eâÍz =²ÿì·õ_iž~¹'ÔèDDOq:'¨çç¥zäÖ.J¾Rù×Érèo”º‰å&\#ÞçjòôªÕEUÉ4;N^Õ<ù«UÙäõbzÉQ<„FŠ®Ï¡‘QXÖüª5ÂWô^®*ôEêäF¢«—,‘:ª¯™<ê¼FzuCic‘N{žÄººuȞɗr«S¹z§‰x1•º¶‹Í›S9ATzôè­{[¥|Î_Óiù#ؘª™ä¯^Œovy»Ò™¢éLß—TjñìÅó{QtÉséå»<Ó/6Úuóôê§s5µ3ïÉ ü³îë— ã^õxÚ÷±ïæs3Q³W“ÑÝzü¿E^<žKwXŸ,>«ß’{·Ï¹WJ9?l¹/ÌÖÓ×N¶±“¹ËÀ­‰"tÓì‰ç.ÌX£)Ë´ÄÐÅÐ!¼ŽÉŒr ±6&&c©€] Ìr#ahÒ­$(Dj¸Fµ0œáZZ ÎFâUÕ‘`¬Ù·?!_Üìò­·²™n‘77¹gYÏ-ÁßÛ ›iÑîm^{cÔ­õØé; }å…ó\-Ä“ŽK9@æ¡QUƒœ·•™gHÐòG‡ çã-”Ø#–接IŠ@$¸|petœšÒÀq'bÇ|'Æ•n¤ €-Ó•òÁ2²¦®Î‡±ç#ÄSI‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯Í¾î¸jàñâ8ÛÒ©äüK9Uñ~b¸«´3I E-„>RÕ‘À<åàPñ­9ðé6@ޏ®q­ª‰!‘Ìù…4ÇíZà”ãà;oŸœ­2äˆqŸ,¡±©Ÿ Ò¾FæÄêé@› ûEx ³&3Èm˜d 4=to²sUá×ò@A˜/-Ž í Œ"ÏA”Db«21Èæ=ª­sU.Æç/sS5ãÊöÝ\îîŽr«œ:tUTOs‹{§hUÖʨê&àô´ræ£ÇÐ: ®½Fÿ,ˆ¡*&ÓUw¾Guæ)µEcN¨r°ç!¤ÈUAG‹ ¤L˜ukHg ,sqƒ"QØÑŽQ¬ "IØ+·uŽtYLLAi¦kM\‹(ãaé²#¢×TJèãOËKh‡ÁÝóE»¤jäõ^ƒºç|·_”g•俹[—C{9ú{#Ú‰–K›t3Ú³O~i×R¹sò²ãO¶éöµ/s—ª.•N<¥ÒÏ3»êþ›%D_+§£.;¾¯úuãªýÇÿg§w‰WÓžIôxÖEVÍ—{—õ9ú<îúëš±£žKSù½Î_Bfç/¥xV1§›ôù§˜Š×¢3ùFû*é{\àæÕã½ró75ToësUË»¯Ë›©Ê«ë¢ææ5’uÆz½röé¬hÕÍ[Î113Ï=ZQ5*dŸCk·“õ0yëÒ#µ $×çɾŸ+¯•’ôàEËNàØü³Ï-mGeŸLòÏ¿$ñ/ÛÑMìÕúM_/–¦g£Ûe©3Ë.&Ò]Â5u­q–<Èr5‰ù#š¨æ«†`˜naãIÉTb Lb”ò.ùµ µdÆ&mÜÓ–¥Weñ?”ò<¥v¯)š:£Q$D舉܈ždOÛ×ÈW®•ó1u.A®û½rê«Âxׂd¾^Jˆžu~‡^ÿ²©öý;% ZÖ3\“&¡¼ë«Í¹Ÿs׿¹ý2s®EEEÉQz**w¢§™Sæ4L7†âs3¤æB”Šá®„71²,¬¤5„å ÆÜf·è!JR0É&,S) ³Åö`knîÚÕÛói{Ÿu­(j‚V±Ä#˜)6òDɳX!о¾³ä7"w±t»Ü] ~_ܹ«ÓÓéù¶ø÷–üÝÃ4ÿ±ÚVŽÂí5roø$;Á‹Yð,áNlL¯çb4®¯æÈÍ¥|:2z‡§vŸ`¥”GÝ›.L¿â-¸Ò‡·*1\ÇMª$²Á°íùn‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯ÎÊÃw–”¥q¢H3`K(cÌ|¼‘[a ÊX„N!S–ž žÃD†b±Ñë|!Öçñú¦¥í0sÔÙþݰŸ2ÿíQkðïŸÛaëXVð ¡7ᙤÙ+À<´±t4)£ €¼ðf #n5²7._ º²iùcG¯?(}­íÎÞ^»ØöÊ×jœXìöA¸)«Qò =P­oòpž67¯¶Ôì²ö£ò¼þ—èN‰žY÷wðï¡Å]y0£!$°9ržérŬ>Ææ IÊ1+UþÆÖ{!WÙò4ê˜$Î9@•£D;¢ÀY£!6òP‘‚&6JÕŽK-æ2D ‡z[Guî*´=Å£À¼Á˜°Q£¢ £Å‰QáÃ9Ä3…8FI&‘(t™');¾OöG£sîô¯rtjyK–ižIÓ½xöTPÎ.›†jõòÜŸNäV'•ñF¹}ªð‰Ñjy-NõËô©ÞåëÕ}ÜܽëÆCG žç·w\óÍ:·§™¾înTã¯ý¼tO«çÿO¡ãÓõWý>ߨãÜÿOµü¿o„)û»Ú5ï÷5ú=:|ýÏË%jéfJ¨šS¢í1S$F¹XЍ½}£Q\‰å;K^Šª½sè¹õo›ØÿÚ‘Éíššò®)¯Â$ykŽaš½®±=ÝHŠ‹–më’¢åçNQ½¯DZíTs^×µ®k“¢µÈ¹¢§ENýL]`{]×7ëŒuw—ôAµ™õÐNŒFðÖå–ÑÎÿmšîçî|S,º÷gçÉ8^Åî{U«—•Ó§^0ÑæD5uÜ8Ê*»ö·M…yª‰ÉRÒ»Ÿ€w$ï-±%Ët'ÔΚSŒu¸¢¿•Y<Ë«§¬“]hÇP<ð¥÷#:$¦F²Œ 1 6^d(ï‘"~ÖÜ›ãþÙ—„Ò^©éó÷gçÓ—F™ûŽÉ;×Í’ú=<|Oü?ÿ/ËÈN½Ýÿe|ééL¸Õâ:*d¨"¢ôTTcsE÷|r4iËSsÓ–Zô7s»åµê×çמ}sùŠÞÉÉáøó…ãÊÑÉWj¤ ŠÛN`™Aƒ«h² v”ŠØ“5 […ky^k–u”ù|«;Yc "t¢~êfÊȵ‘¤J˜H0bóFGü‡þ”1/Þi¼=Sú㵯ÑÐÁôúŒO«Ÿ­¢¢ßå;jæ²§šÚßå»Fh!ó;ÞÙÞÜÚÝæŒÏR|ÓRâ{ G˜à)âREø2òz(帽h—t`”X2" Ærèd´h$ØGs“‡Ã£'¨zwiö YD}Ù²äËðN"Û({r£ÁìxôÚ¢K,ЖïœAÛaÛI´öМÄ#8[¢aÃ'––.¡›†Žž Áž¶¶@ÔÓÀ*¼#Æ f ^‰Š«A!ÌsÁIiK2I½0ƒ–òΪÓ²8ébÄCK¬*g³#sbu| M†}¢¼Ú“ä 6Ì2šº 7Ù9ª‰ð–ÆFæYÛA…!^ŽW0CCÙ#…“š&ýxªô{vœTÓ­Zö3è'òzÇ»ôˆƒN«çÉïéÝרý+äù¼ôðtì$á”Ã’š‚XÐó™(/f‚#÷cG(Ú77CÜäa¬W9>E%Æ$·ƒM\-iÌN3E¼VÒ¹XbêyÓˆÇ|x„y²vœØà+ÓO¬À->¡ 7YH=UJRÆ)­CDÈtÀÕ!‰õÊûpš§‚â*È|'O˜"5½33¿;·Î©­½^ü²ò[úlóò\œoÊBùÌW{]]èÔö£njºSÍ©Z‹’åÆ˜íýÑÈ¿à·.ôé’»¦}4ªuãQUÞ•êåéé\þ‡_µÇDËÖwù^oÇÆ‘æ÷{|þŸ2uêåèœnÈçfÔoLÑ®é’ ½UÎÕÜì³É:#|¬Õ©›YÜæf¨õóû"èîTÒŠ1»?)èò1ìÒ¹¯~Yg“[é^æ¢5:«’"&nU˪ü'¿ˆPnë¦TÙÃ-"¾Â˜Á*¶.üImd8Ðùy ­B4­(ÑöpVõöB*ôEG!ÛË#{üÝ\½;‘ιI•uyFuÉ4«˜Eý*/Q¢ù×§~žœ/âM1ÁÒIR_;œœ¸ŒšöKF)š3!cï’cÛºÏ*£d´ lvH¨ÅøvôOc”-èv3Ç-àtn`@°#+ 8ò& 6µ÷¥Ïg,Æo±Œ,<{“×f®`q•÷W†1Æ òÁ- b«¬ÈsF!•‘„ÖkÔ¢r§êU¯þb»)oëš©ü©ò௷)@3s3̬OKšçkjus‘Ïó1Œ•2Tè©çO¡¯Ñk³V¯ÑLÓ¯ºŠ‹õ3N "ÊË6äF#zyN_!Ý:æc—$éš®\hI-Ísöí ÛÓRõyÖ'Õrf½ªñšÉ æ¹{·WÏæµË§~Y{½S!Î&yûV*eôuèûYð®Tîêž~èx³Lžgù#~æj÷õÏCzwur«[äç­ªç*¹ÎUUr®jª½UU|ê¾uù‰xCê pÎö]‡sË6f‚Æ y ج=‡.ùq–W%ü Š‡“´qEgƒô>¡ 7YÈ=UJRÆ)­i‡"d:pjÄŠúå}¸MSÁqd>$M› ó&L9eK—(¤‘&T™qO"AÊçÇ1\â¤sˆB9Ï{•Ê«óùØ^êm9É–û@æ$½sÕòXjùû •!cs‘Ê”ŠxûfD"rÞEfÄ-1gU4\=cAä4£™0§Q£Œ\¼€ZNhä™c>“c«á|#W#I¿Ù¤r£v”V'Ö.­jF¾¬êDsÔkÅ¥ÏW=Ï ž³WOdWûµÔÜý*ŒÒŸS.î&LP0ƒ\öï»mV<¹fA¶Ž]Ö¼±ƒ=›¢nMàˆöï#Iò$ªzGbý‰LH† ŠŠià“ɨñ$ IiBp•²ˆúxšì\°ùy®§ؓԷ¢Ìó§9a×´†mM;$ è´õï)QbŒ®n©3;$XH™1I%ýß'ù]ëí^õèšXÞ÷.j‰îg×$ã3æ ÷´-Ui‹Ó) æEoõ¶þŸ'.¦"ñ´"¹¹¦–·!±}ܲóªæó¢£´¯^3;ºw£2òSª÷'ÐUMNEv^uãÉO[îù“ñÿ§^¥rj/”Eîú —zå×JtË-JÜÑF:³ÈŽWwiDÍW刭ÔßcF«¼¥;><¯)Uº\çe›“¯rw ªŠ¨¬gz.Dq;þ*|/XyS€3l36¦œrïl«‹‚‚ ¨²ˆ6»T™Šǯ2bŽ3âÛÝ0›ìEyeËdTSOžq †âž3J„­Š6\K×bå‡ÌBm8æË€´Ö.pùy•.„&¢»y ]0Ç;žÝÄ™i­#œç4Èö1Å$˜èŒ]ØÊä×Ü„¢ |ýÄÕܪŠÖ«r˪·Ûo1éž}ÙµŸŸ?i§Íßž}2_¸”-µG0͸‰ä»`‘WÎôß]ÉïTòsáñ$’I“ØÂ""#¥Uá>•V?[©òI£lè¬òã3Ù¢kÉýpH¹ißL‘5]FùTLÐN#Ç“»–]:«[—¸ª¨ŸC.2!‰—éEú ›~Þ¥ëéïã«[ýªiþEéöW:}_ÇŸZª¾œòüIðàÉ· Ñéú¤ùf/¸öæÇ{мþb±¯i“I’£z;½S-*Ghꉒð«Œ{rUF¿6Ï“;•йeå*{Ñ©ÆNŠeÍ3ö6î§÷BÖÔ^ʹùòÉSÄ¿éòÎñª°ozwfÖ9ÉŸOBqå¢3,»Ü‹ôrÓŸwº©Ã´;Ù_ìb^Ÿvh×ióµŸ'¶Èl{²\²áQŸ ‚™ª¦–tÏ=NÏWé³ÍÍFgÕ>aÀ¢¢€{;k3¤xP£¢n™+Üç9êÑ^yRŽñF‰E“$¢Ž"±/q!ŠqdcÄûg E ‘FÉ̯ˆói³8¦¦µ”v«ºT Ú‰±ÈS|ˆFc„D–jHñXB1’vÞWKp#µÊŠc6,Y2TcG=æTÛÜÑ‘3ÉìkÓ>üœ™¦}ý}nÿ¿®~hH›6@!ÆÊ—.QG4XÑÆâžDƒ•Í@5Ä)HæŒckž÷#QW‡Uø-g;)û¬‘‰í«Ê8@a7h”uÒž Gœ G]Fº„(@-z³mâÍiÀ[ŒKo:êĺӘœwdOy\¬1t#<“¾<C(Û®lp ‹§ç/»€Äsbl6¼-¢²—¥ñ‘#€û2Ô‘æK¯ 6ÅÅz´ŽéMJ;f€¬ ˜qÙF3.–È¥¤hüÁ#4úóÄ–sF÷–ºdÆEIpÇ5cH’0¯®œ4hÊÈ•Ð@¬G#ž'Æm’¸¹¹ÈâoØ™¨¬A·i£M:ÑÏ{~‚pÅwËbjtÍ^G#S,Õ3Ë=K—]åÉrñS<ôª&]WSº7§ÑTãKz#S$Oq:'Óß‚ kÊ”šå,Hå4jÐÝ›!ÚšÔs·2{œŒ7ä'^b›PTV4ኇ+rL…Tx±" DɇV´†p¢Ç12%­åj07?…0û¹'­ž·CÅÒÊF8ù¸Œ ˜/;‚͘$Ó²£Y6%„ª–wqÝòzŠ37HÕÉê¾HÅî¹Ùy]~QžW’þ¨æåÂK·¥*'\‘]ܨQC{ÓVMG9WVY䉟±ô¨«šôÉQËÓ??L‘¾gf©Ÿêý®ž\¾RgüŸöûŸgÝÝ96ƒ×½r{útÉ2ËÑÞªòZ¨­r(˜š‰§B瞎ìžô&´~–¯Ý9kn·¹ZAñÕU~Š÷yòOCSÌÔòZ>ßÄ[ßÍ=C@°ÏD·»†øÜʶÀà’…Ã R’0ì[Ç#,cTrqO†ê ÓW Bòð@Ño€ ^jazžtâ0"|Òl¦ºAÊôÕ⣞æ| ®H%ÖôÓlg’=í·nº#µ9Ž{6²šÒ4Ë=Ѽ}þ×$ÝÏÝøž^nüüÙ(6¼Ÿfhý>J™ÁTò³þ·äçßçEϯÜ®LÆFH ×嚪Ô;%ÕšG’«z½«ŸNƒÌB^‹úw¦~uùTËå[ȹqÓ…kÑ©ª™¢¢ôTT^™/rçßœ-UŠåîïp{šï:±W£¾!þV—Æå÷~ú»§SDÏ$óæa&nê½w˜Ö³<¹‡9Ù"zÏÎÑÿyù¼~wïCÿ7Œ˜Ö±;òkQ©Ÿ§$ñ/ÉÝSP×úã“ÙÌSâLÈ,#PÊó±É—Ì6ɈÅÃÚyq%´yL… K5ÐävÜèû\à„ „ÄX¶Uæ‘{—Õû“‰Ì¤¬AdزqÁI(J覱XÛpGËDhàDhZ£2QIÄ‘(ß#Óý7ÀûËÃXÞj#Q=ƦIßëRYžf’Ž‚ÖÒ" ÌFA‘ÌŽÕÁH·H„þa€r‘FÒ¿3aûo»u‚Ãu2"¾lr¤&ÌŽKǸ‹ØdoÂkLai…-%WÖØ<­·Në"Ÿš…EVN¢,žXq#CÉ"dëZWŒ¶Sg"Ìš8‹Q¿9À—Æ‹.)…&,¨Åx$F¡@pJÒÁ#ZAnkÆö£Ú¨äEá+|$œŠí¶VA楘íÒ\@ŒàÆ4 Æ2i-D1L £;>ÖLÅ0EaU>œ ›«ålCmà.Ô˜Ï I¶a$ÐõÐQ¼nÉÍTOY‰ %û„mÔø­v–3àx#2ZžÅ8E©S[ôk#žEs•¿A8®Ž™gÌ„Î蹦DF¯vNÌ™§UòS»ÏÞZŠÏð=—ííåõx^*P£xœ¼ñ¤c˜ål¦$Dr"« °¢µ žÂ1U®Eù U1N+ŽyPf‡pᨡ’(ÙµÖØ6gˆ'©­ÇµcØÄŸeQ68Äg^â«CÜZ<‹Ì€Ã:* [¿SßÞ‰Ÿ¡­ëí×§^ôïá\åiLŠí=W— ›Ü×/Ë®zt«û•Ì·8Õ©Ù÷£³V«{³F#W&5rýSÕ3kžæ¹Sá=üEÃXj/5>Nd)H®*èLs"ÊÊCXNZ mÆk&‚¥xaà ™ÒbÅ0¬Õ}PâÖs­õI,/Ë‚^‘òõu\ܸµúb³d“5ȳ73b>xuó;8>;µDUòª{ºôíºÜ×è"u_Buâ*ª¢{tëÓ«„öµ>йQÒª‰Ã\ÅòšWª¹.N]²ú2Tkœ¹"¢ôïÏÆî7Fí.ZïjŽÍ˜×¿4Oo«<—»ê§³±4þ£¢§Ôs—?72ëßDZuov}ÙΟW¯¦_µÃ˜ôÍk˜äêžK“'&i×¹|Ýxp]í}¸—4]BUTj¯DÉÝ®òSÊEËÉÒ«Ãߟr}µèÞïK²O(+‘F‘½]’åÞÇiVª±é›ÜÓSæùø ®c0ÚôêÕVçí˜í*æ£ÆìØö¢®—£›æõïz÷5¹å©î],n~mNTnkÑ3Ízp­cµ>C4]kžo*é].y_›•èWfš“?˜#§ÃU®lK¡yx!qvDù‹ÍL/@A‚3É$OšPBº×H8˜º¸m·„#ÁÅV,ÚtZX­–˜~€Mq› å*Å=þð«t•Œi§Ä—Ù$?$áq—L)羘p«“æ@]TºÌÙ´öèÐdßÔV Öâ+F 8ðÒ×É>±¦Ü»+:ù…´¯C?x53ß­ƒpDZ¤¯cŠ'ÌÉfÈ8pÀYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ðL;àºdè vÒÌÆ#NL²ãÈ…0Sk+`XV¥Œ·É†V^°õ¶`› Ì„ƒfÂGΑ,pÌþUdòí°„a2M}˜#ÀMŒOÝBÙQŸÆ0$Ë9‘¹’«…\©ØX¡üã½OÊ3äo‚.’o×Yò±cNÕûω "åç““|œù|rìŽÑ´ö3$Î3DŽhšYf|‚4H÷½è4yŽ{ÜË79zðŸC€5rö"Äc~‚¹„ëîê"ú:eç꼯µB=>Š#Gü„^ßÒ±ýÒ½?öx£†ð˜tõƒ(ŠÇ ¢#!¯äG1ìr+^Ç"9®EELþ@uæ)µMcN¨r°ç!¤ÈUAG‹ ¤L–ukHg ,sÂrA*Øû€5µôbÉͯ°–Àê­aŒA=EiÞ7$‹“ì­áHƒÝójPÏM â*ûåý2;7.^fûªš•Žgò*É–¾N¬‘4¦^JhO$I×Ìš—[•Q\œfUɾa'r~»Ò½|¬úç’7»Œ‘ÜõÊ®^:;l9éÜTÕ›»‘¬byDr»Ñä¦KÞ­áXstkUW4ꨙû#´å—rm‰QSQ<±9kš÷å–y5¾•îj#Sª¹Ù""fç.]Wá=üÛø6‘Nö­|ˆfn)˜8Òc°¨Úùc©Á(\ë"ϰߒ3G„£—_(HÚ<-T ŠÆœÒ”yÌCI¨¥‘*\²È™,êÖŒ-,© ãŠw/‰JÔöX¹•=ÑtÞN®k{‘ žNw±èjy~,PÜG%¥Jˆ‘ ¦” mŸ:È3`ɆxjÇÛ,ÑH0fG2ŽBEÒx²¥µeTøžŒ`a\sÕuY[‹âDi¡ 6i$1n`@SIœUñll€>tˆsO)dóöÇl‘>npÝm+œcFS ¦ Å ˆ@I‹(`—ÈŽaZ) ÉÀ’4ty+øgÐNèq›—q¼Áœ×jUEÛB8*ŽEêÖèfžºt¢'µéâUý ²OÝå}ɹuôð|Ú‹ÓC³Éu7Ny/¹å¯Eô¯§áò&Íⲥ˔QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâMƒÚ`Þ1 ˆàb[‡O‰\²^F’X™@±àÙÊã| Ù°ª"OR=±dCŒ"XãÛκ².´ægÅÙÎi\¬1t#<“¾<C(Û®lp ‹§æ1Hg§±‰½îú+ÜÆú\ï3\©ž•NÌ‘FܵrÁÍ^ìÓÚˆ¾[è¹4lÍÙkUk]Â5±Ù—µby]{úù(Ô\óèˆärgŸ^2beëÕ­MoË<“Íî¹|È5*äÔó¹8ÍþZ&];˜«§4Òç;.¹…Žë’‘US+¯“¥sFe–ZrbiM¶e©4·½äz¿¦_ D§ÊPGœ(w–VŽF»P ­PžÚsŒÊ [E•´¤VĘɨÛY®õ]ˆ›´¡²µƒ«Kk¥Ç•ITîo³ç7D$u¦Îš2ÄRWž¼2åF'® L6&cÄQ Š"5Zñ‘ŽEkØöªµìr+\ÕTTˈʨ¨æYµz*9¯NЋ܍©çO©Æ¤è¹ îýRùCú2ûEý®¹·Ä¼Hj7R¸DDnyjͪ™gæÏ»?7 ïO7ú}¯‰~[Êoë“¿ÍçDó¯Êû¾9³Íï!sÍt=¨Aê]-òô9ºòLµg—N*Þd+dß”¸ŒìyBV1– «Ô ¦¢-t—ˆ¯)‡$ÇkÜ΀ ÿÌËxÙ: … ,G² ì‹YŽI•HÉ3ß4õA— |ìk‡*3ó' ;K4†nJXÝ™t%%˜îVYS< Á2­eK”ØñêÑ©œxrÀh’â±¥E’7‚Li {„xòV´¡8J× ¢#Zñ½®c‘ŠŸ °;"Ç#HήÉt¯V?JµToLØFêMLs›Ü¼G˜4Ӹܞ=Z”Ejé Õrnz\‹¥Ú[­š_’#½bðåï_7zôLòG*&~ÙÚWJfåèœ9ùæ1ê`ú½QÞR«ŠˆõUnâõFü£ŒùO“ƒYM]:ÚÆNç/¶$‰ÓO²'œ»1bŒ§.ÐSC@†ò;&1ÊŽ—‹oàá».^´‰&·"Éy÷Ųƒ]61âòSí7…%RO$p8/åðå~äâs)+Y6,œA0RJº)¬E6ÜòÑ8¨Ì”@q$J7É‘cªCWaúÚÙ­Û#yy5¥ÃF®#XÒ"ÀÛ€R3 •ÈQ™ƒõ·ÒÚ¶Q±\˜æ’ƒbH,xµäŒ™qáŽIrÈ9ÊÁ>T‡ ¦"»æL‰³d8`,©råqãEn)äH9\Ñ\B”ŽhÆ6¹ïr5x“‡<HÛ®‘fv/|y±,ÜY;Os0è¤r§­åÁ»öSb,×H9IT:÷Á‡k3ç`v¸vÄц eÁRk-X3Ö 1ÌÜ™ »LˆŠwž âËAÈeÕdÒ§.Ä<Í2¡›jê+Í2šA5 ¡0Üé ZI´ˆÀMÔÉPá-™ÛÂ}â?î¿q'ˆèŽEVˆ:‘3jª™zú3L—¯›¯€¥åÒÂÆ$[­;<]͇¹¡ïöšÛ©É£SW»á£±Å<·5̲¶¾8Ÿ*ÎÔñ@§|x1Gû_2[âÖF<¨c:/4y+œž§ð‘9úšˆfIæQ9‹K^R$«RŸ¼8z#Ö–®'"K}¢nï“õ=È֧ʈW$ê½:¯O£Ç°{süô]=rvY nïG.œœü¾]ºPˆœ|Åj9Q_ HNüÝ“³ÏW_;ä5W>3êç/{ÝÕÝÙw¯¯UUÉ-Õ¡{܉›Õ3F®]t£s\”Èi“¼§d¬ã&ôj§Ñ×ågì­ Ñ^ì²LÞˆÔô`˜­køÍW5ô¯_„†¶žë[;œ½}lI¦ŸdO9vbÅN] †&†. ävLc•oá:Pe±@õL#W"KX×ÈD¶×‘»ðJIl4 Q$$ò\5<3G… 8"CˆE‰(‡4XÑÆÑ

NOqxͩ߄ïùV«ˆîü»˜Š¾•ó&}8‹û\?so‰x3QÚUÌ{QÉÞÕTTG'TîïïN"ŸÎð‹^kšª¨ÑȪ¹yKß›•} ä½äk~£—Jý¥_ÿo‹H›ž^ÙËÑ­ýrÿÌ™¹r\“§~‡pVþMLCÊѸ¢Y¶‚é ˆÄvÀ×ìî³qG–¤Wð±B(Ñ£qãÇŽ6À „hшBZÁkÆ£Zˆ‰ëx’œ&˜Ð¨bÜÅøê #%´MÂ1&žP«¦¤º§KVžD¹©Ä©86Ê#®LŸºqYWì³6ÅG•K/”†àœöŸQÍ9²sc„å®¶ƒ6®Â>ß1Æ)àÍè˜qoE’Á[€(Ì=lMb#ÜØöªü/³ ôH¶ ìYäˆÉ¨‰£ÊsÚˆ’Ýœ‘¯y‘˜ÄLÝšx×–»ÙdkSÉèܲ);³EF*‰2r|YW®]>L>¨sb] ËÁ‹²'È ^jaz žH"|ÒmÖºAÄÅÕÀ¥øA¾d7ZŒ:D™o¸xÇRÅ—e.*ÖWž¾JÅB:1iÈ’ÄÚ€˜G@Ât0i@\¹‡¯,Ùš $Âçì¥<ö6»åÉH¼ì£ò‚*‚6УO“±NyjüÅssË>˜jªæùú#ôª§é²óúêY…¶ki—V߬ߖ;iUl.—½ÍP+a@Pc]Õb˜…#þdßÚP,*æ.·¸$už½ågvTQ‘ÍÓHd‹ á¡$³aTø{ ´0Ä+4¢!$’®¤4PÛp~r8‹ §ˆ8ÕÃ$vËY³§|í5ìW1ìr=b«\ǵskšäê×5z¢§T^©ÄZ«åÉŠª!\¼íP °EoDöì}†çOat¡åÌÍIµ÷'q÷_¸“ÄW¿VrZTo]Zz¡ªåËÉk¡2OÒ¦HÔH¹þˆ*ÓÒ;`=>¦mÉ}ϳðÉfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñ*ƒÁ›C>pO*ÜU0,“R4HÛm6$i³8¦ÎeŒð­Fp3+È”#Y\Ome'o˜°³–yÓdl‰€ô©D)Ë´#ÖõÐ!°mÉŒj"tù?mSý¨y*·¢d¥_ëLò›å;ôÙ¢*g’8ÿªl³4Š%jèÍZä\ßÔžS³Ë<º7C¸ÔUÖ¾f÷1½W¹¾~ü³^¹tU_„.kšä¾Ju^‰«¯£§ÚëÂ.i’µ¯b/O:®HÝ.è¹5ºÈÝ:UÊÖ&¯¯^º³\•Ù䩚»,ܾS×5îÖôn–.„øGx!ì\:ݧ›[G”È2³]@éѧmα1ÎJA,E‹ae^iPÛzäòs)+Y6,œA0RJº)¬6ÜòÑ8¨Ì”@q$J7¯,‰¼Ç9žÑ!Uä)HõF cb+Þ÷ª5­Es•8%^ò—ØØœáòX¹«Îsâ{'M±,É­ÛüðÐÃ"róx4¹E4¹’ÌóÈw¸Ç‘ ÏW„{³yG»5UUW*ñ_½ÌåîäË!ŒïNü—m3N‹åièrãe]–¸È4^ýøH>ìÜ®Ë4ÍsëÀ…ž­±°yå–zÏ.¹g—vkâ^Älûöcéú;mÿÙÕÿíËÄŽÉE{ÕQU3TV¢¦½^SQröŽTêÞçÌlè».ôïò•ØÓ»§·ïO!xF1­or'ú}U^õ^«×TiR6Ȭ#5±¶5œ­"8ÏbÀí2ü ŒV@Þ;ô¯]ÊâZ»¡´ãÓâÒa²s9K]3O9Zb´b^fãÉk°­(DöJ›±gëÉñè¯ÆYØRL{Š1^F×6<(ОÑà šËi,o‚¬‰Í)£q^Th™Ç›\ò—™QÅí:ã˯IÎdIä%& Ì(aßð–opÈ75ì#­{ÕÔױɒµÍTEk‘sEêœEšŠÝÕnÜ¡·/b”/$ÍÒ„"±®_e ^íÎ\‚{²Õã#—ÌÙ¢f¿*ÔÔ¨™¹|–æ©ÕS¯6­Cg°…S£UŒïz&kÐÔôÍUt«Zªº~Jïàë„°ÜëPFÜCNÎ<Æ<¶ä^Ô²<:çNk&F/g¶RÍXäæ <‰;bNÓÛÍò(0øËÊ)¬p†[Ù[s¤Á“ŽÀÆ«§š2É^RÈ|«O%ð¨)ª¨á”î”H”õÑ+#KÆ1>CÁ!Žá#q\Õ#†!±]¥Dù ú\YŠY—ì—’ž~æßÛ÷=vÿ¿ ®~dI‹ ðn±¡}‚d†—³ÊøâÙø‰‘ȇƒ`“@b¹À›qº!AQFY–uòñ&$—ÌΓÄ!£‡ ºÜ÷G­­Žç“–ƒqú¬…)Hi“ &t™Róº:[‚évR´½óëšF#c¦z•$ׯTsv6ÖPBOŠñÅÄ“@dG#ˆÁž9p½Ê„M •ívFö7d¾K‘QÙi\¤¹sê'3§¤¾Æß©›Ó?sÓÝÄw&]JÖuôØÝõrzåîú{¸¢V&kꆥ;•|—ÜGk×§éZª¹÷&Y¯D_…ïâû“ÉË,\?Xè²qÁI)„ÙA¯,¨ÛpGËKq'Ë,hZ£>(ÎIÄÊ Æì\:ÝÆ TÈ”È2³[29.Þâ'mγ ­1„A,D•_Y^i·»¾OUUDDLÕW¢"'zªù¸È ­ äŠôEIÏ¿—c´éFä­qI–K«GQõòÓCÛ'yJ¹ª£Œþªåë×Íž~Jw5ÖéOGƒVëÉŠªˆ‹å#rE_#Û*5ÎDÕäûm(º³Ï'9ÍW¢fÕ艥Q|¤è«™ŸV¹µÚ¾*Úx­¬dîrÕõ±$N›#dO9vbÅN] †&†. ävLc•"ßøLp'Î âÌ……a™’jF‰qÁÄ„|}6gÂ5¯¯€e¨ÎG›yÀ‘E(à‰ $H¢xÑcGDñÀ&´ADÖŒBZ1­cDO„/hŸ™·4e=}n³f&æËGipàÄRkÎ\¥j=‘å$1Ì’ŠåK"¤ZaÊtŠú(Úyh¾NØœsí°Öš.ù2|†”²"lÙ‰ *\¹ExÑcGŠyW4AD×¥#š1®{ÜE^QàÆ(e1Àb./´%¬käF…Jš9`Š]ø%$B}¾¨Î“\rQ̆ šcY\Oke'o˜°²–yÓdl‰€ô©D)Ë´ #Ö÷hØ6äÆ5»äôb"ïOc {Ýæê½Ìo¥Îó5Êš´ªpŽ'”ˆíMI°{^«—Á.DëžhÌÕÚuÊÎ?LîíJÉúV§sŸ¥nMO2|!\çiOO Ю†uMH¨®\ü”vMÍ¹çšæòˆ®z#xïú™®^|•s^¯É|§ü·¡c~ßÀìZ¾§ð“ùæz¥–Iæ$DÒ>^®«›‰*ÇT§ì’f¸õå¬GÏÂg•Ø^»–æ¹gYXH+åYÚž( ‘:Q?u3!ÄdZÈÒ%L$1y£#ýy¥J0£FŒ"Dƒ‘) cŠÑˆB\òîF1ˆ®r¢'®À,Ø T£=ý„AÄ{›d¨ˆg ŽAs5œg”¬‘¥ Ä PÏ,™E<¹rJâžD‚D™+³y R+Êc뛞÷9ïr檫Âc¶˜¹+G×qÝS=MËRtË6³7¢;ª[ÆØÊÅê‹ÑZ+úå’}Lb垤yRqÛ×ÎõÉ^¾æy'N‰Ñ2O?^9'I ÅTL×Rn5O2'EŽüþ‹}+¤>îµÿѽ|kÁˆ¹äÆ=ë—~MEUË»ÑéáòìI”b;p=¬Üò7ȉÄð5¹4.ÞsKš’9­sD "nzF&4cn¥W.–1©›•\¹'UU^õñÅ®ˆÝR%™G«Y©|¢“m„{Bj1ÞŒvØXò*dÕâ$«Ü(QAN"¢‘ÃŽ&…ŠEkXÕzµˆ®V±©žy5§ÂñÔF’ª(mí#2C^èï‘__"XXvŒ‚#‚â ¨FŒ£z³4i¹94=­{½¯DsW%Í3EÍ;úñ˜Uc5\ۛƹª*æ';¢"fŒA¸hÜû•DZ+$74DÉPDËNjç4‹¡ÉèW*ô\»ôé8Þ%ÍÈšÚ¨ŽVtv‡{W¢fžSSª.y*qßëQã(ÞÒ ƒr±ã{SÇ·'1ír#šäTVªf‹Ä;VoéÙš6åì3“NÝB¸lzä`4ÜXÅ Ý’»‡/¹Äò°Š@…Y9±F¬@1ÌÉÍcúJSõrg×¢èÓò'ü5¸W Û\ ç4Už(û5“2L,yWRÖ=L3¤w í©¡!ñÆ6¸²@Â6F*ºªÂB äˆú¢· ‘ÉARD:–‚Dt$¦È‹{1ãEŽEiHt‰ÍÉ…mŠ ÓѸ’ŧ‘òi䪢ÔCœ NQ¤È¶à±Œa…‚Úh‰%‡ m=tšèÛœ¼ Ø‘àÂñ^rìÅŠ1[§) M Me#ÈìÞ÷*üH滢Ê×•ÝØæ{:¥ìom›g{gowh»zµm¿-*DTÉôF/_)»Cv~ï–ç74éÓ.ô_]~“°ÇÞX_1…<ÚrÐcs®1d=¢Ȥ#&’æ“–ƒqÏKèŠ9²¦ŒF¦• fM¸ùâyꤨª.f;Ú„‹-¡~¦4á^õMDcL5‘ Çh-ççÍEö3K&Â{‘KÊ‹ÑW$Ü 2rÇkLÔr+Faœ —®aÖU]O{šá¹Ù·Njç¹êÕ뚪+¾[/„9-OÎâ K2Ÿ E×ÎØé+còÑ0^u~s§iÝYý›Ê\7ÂU[™¥yÅ™O†¢è䫵 ±Äã¢í§0ìçNÕ´YSû6=lI„Þ.ï“UUQ5U舉ު¼i‹›X¹{>O_J Éró)“z©å£3]ií©íöÎ{‘}±H¹«Õ{×,›Ÿ”k—Œ‘ÜøFMòßúVõË®Y¿ô¨‹Þ«’'So]J¹ù9.Ò5}¯ôG+“ÿˆUöš“_ªæ¾•øLxP€ys&QbDŠ"H“*IÞÑ

U…\ß؉ÔJÄåæÈ̛ٹåu`>#æß Åò£0/!k‡Vä;^ær÷“bÒËz È5Þ[;•ÊÆÈhÜA”há?ÖIvÓraZ64j£ct€*ìšbg¸çjÕžJÉågE‡ È”Â[ÙE‚C6Ø>,s‰*,FW†º.üÙ9lHà#È` "”î¤Åçžâƒ`•ÖK Ùœòãܶ ||Ú14ñc[Ï(O!¬ Ê %³›o‚ñX•:p+$XTÇŒØÉ,²sZÙu.#®¹%dÇ*°£á”%c;ø L‡þg^qz¸Š‘ìäC(ÆÆ¬’+! Ó"æ3E%1Xí2å| Ó¾V»Ù=¡ìi‘¡ê4ª)Ö÷ü3¿Žþ 6ŸbSŠÌ * ùr+j$Fte˜) º³l:†‚DtפšÑÊWˆqÜR˜,xÉrú,*y€’)Ö efØ^ÀãO‡•“«¤ä±âɸ¯)¤Gs ±@ñJx‹‰±%î!8§0û0G‚²L&l»™óZÅwžÃ¶D¨W ±ÌÆGH§4A:—QàœË(Ó§F[«8“E³²hv—O°±‰°øâ,qÆ”!B>@XԤ̌i"ivBL9iÐBg.Ö+êà H˜÷&üé‘Á­Q-ÍÃv&¥W>§&êfâCrí›S_òpúz)*“ìA­5•ÅŒªèÛ|Äû)`ƒÅ`½*Qnœ£õ½5”Œs{ÚŠzŸ1O#±ZGŒâ<`“! •4rÁ(H ÂB}¾™-ŒyqÉGbhO6aÏ.d³–T¹rŠIeI9SÈr¹Å9ÌW8…)âŽsÞårªñÝò~†¢˜¿ílTòz"ê2÷ žS|§y©¨‹–ä—#›äij!ªjò˜'*k^©å—ôÏf—±—Dëçrõrý^¾o¡ð…U\‘;×!òS½¹¦âeò™±ÈÔ\ÚšÝæUpÑêÇ7޽z¢¦yjèÝ9«‘Uz»ª÷kr7KB|#¿„<v.nÛˉ-cÊdY®‡ tŒhÓ¶çGؘç% –"Ű²®4ˆ»Ûzäòs)+Y¶,œA0RJº)¬6ÜòÑ8¨Ì”@q$J7¯4™&xñÄCœç#DMW”Æ+Õ¬†Æ«ÈGª5Es•8=fäæ$oªI¢* (ˆì곈O!#9ápåØ| §FêÙ‘Tg)l,æJ°!Z§™4ä“$ÚÑpÆsÈä˜Á Ù0l`Ù“ÔMé^Ä6ä¨<Óp¾J»Bf©¥W$DoÅÊOcTGpbrÑ4nI’¹¨Ý(Õj*fžm Ó«U^­N4¹wf¾weé_ù“&¦k’&~5â0šé·ª763-µÏ-^W_ÒæË5î"ùÚÖ5>ƒ³Ïù‰ö>xbß—6LxqìbÖiF`ÝesFß)éÕîk}.Dëà aY³yX6„ü¼Ÿ-ZrŽb8ú5¨ñŽYÜ×½»¬G>4Œ*ÿ¦ð×LXUŒÞF¦?1#gÈWC††ŽNŽr0d–9ìTvÓ¤VI_2ɬV¬ù=ìÜdŠûv9Zý+첚3–A9Q~Ë9‚‘9(€lfF'•¥0Xÿê{޽+ÿÉüSÜqýé_ÿ@á“oð¾#£†S¶(åÜRYÖF$—Œ…dvl`‰Çp‚b4Hå#†"=¥ŽTöÉöx|Ú /ˆï!ˆîŠItô–vq‡%Œ_ç…ÂiÚ#Žœ„A”oVé{U©î9þô¯ÿ'ñýO1×÷¥ù?€Ï‹çŒÜÐË)Ôô³Sh¯ ·«n, ØÆÍãr˜Š-á+-`(ˆøà. !â&ÊÄ8qÑ¡°„k*CaZ˘àGj©JØ‘%IQµÈæ.‘»ãÞþ3¿ÿ«T¯øÿëWÎ[Lg4A8ŠHRm*Y`ÆF½ñd: I†¢ˆ®‰.,”œ é#_.ª9HGsn aˆ£ ÜA\ÈWó,áˆú„Ôl¡²X5 ˜TŒÇ¾5U2Ò‰žº%dbIxÆ'Èx!"qÜ „n+š¤pÄ6+´±¨Ÿ31OûÅøIOÂ+2Ò¾R+rÉuyZ“.‹«=YùóÏÖáJ¹â߃g‰h«æƒY½e¤XòE¸ŒÃÜ Íb#Ìõ1ír"üÄ‘6l€C‡ •.\¢Ž!Ÿ¹<œ²ÅÃõŽ‹'L’˜M”òÊ·|´·|²Æ…ª3âŒäœHñL’±-†˜Lå–.­t¨Ø~c¢l WTÉÄæe¸–Ë&n™/Š3Ž #Åwß'j{šÆ§{œ¨ÔL×$ê½:¯O£ÆÜv½ƒ\ÑÏË#9ª8]}ŽnŸezjöTsZŽñ›Ñ¹ª®~Vj¿,G*#ˆþ®]Nèš—KZŸ Ë4süÌÔÔô"jW*#\­j+—«œˆÝNTN5=Ú²în^ÄÜÑ3ò]Õëßå?Óñ6ª"ñôUWêªæ«ôUz¯»ðÖÓ×汓¹ËWÖÄ‘:iöDó—f,Q”åÚˆbhbèÞGdÆ9R-ÿ„Ç|àž,ÈXV™&¤h‘·HGÇÓfqL+ZúøZŒàe"mä ExP£‚$8€X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5>½¥#˜·4WÈ®¤šÌ™åí ÄsXñÀŠòëNn^†= ”‘Y.@W´KÊS Jȯ¢Ž­å¢ù6>AÐb5„¦±à‰>HÞY˜!ˆÎÆ<Ó<•ÝÌow{½ÌÑt¦o˪5xÒ$æeææjêb¯™šæï2£U_íÚ¯b*7„<×k˜k¥Q2îÏO“—zèjd½îUÍÍõ¬oê“ì'Uû\'ú}Çõ8rå–o^¹w¢5¾:"ê÷3ÏÝñ¯`A ŽõÄoV„n"°QåŽLƒ=š´!HB“-#cUïɈªŸ `º¶(2åÝÏ ]Éu¡­»ŠÍæl†Ö{407õp‚£ñªª¢"uU^ˆˆê«èà&^Â5ééV¢ªýUU_J®|bF 8ðÓ I>±¦Ü»+Jù…´¯Þ~ðjl­ƒpDZ¤¯cŠ'Î?Ó|¼·ü0iÜÆµ‰Ÿ~ML“?[ƒ!ó¶ÍÈí·6·µv‹{ËéÜ\ßgr»º—c{lÛ{Où…"lÙ‡ *\¹ExÑcGŠyW4AD×¥#š1®{ÜE^ †pÉOÃ:k~D'ÉŽDpæÍ‘¥ PJÖ–®¬­iFŽÒÐi9!B¦ùè ¸†4YQL9¤Ç#Á"4€=€ÃV& Ò£s^7µ®j£‘8Ä$ \c+¡ù0ñp±\IqÔhÃf!µKc\$kƾƹ‰ %Ī‘6l€D‡•.\¢ŽÄÜÓJ9}±¥ZÄDôõêÅTF;Z#¥qsvcDö5sËm^ˆªÔyÎF»½UˆåòSè¯Þê¯Ñ>ªç#Q<ê¹'Ù^¡ÍÑ7J»%òº7VlÔÝ:^äÕìŒsD檹½Wªõ^¯Ò®êªìœç®jª½UUÙdÕr£Z‰ðŽþbßö?„‰Î³Õ,°²O0xšGËÕÕsq%Xê”ý’L×°<µˆùâXCìãlaè“É̤¬AfزqÁI(J覰XÛpGËDhàDhZ£2SÀIÄ‘(Þ¼³lfEÕ<¹²(QïhÚ¥9ÜÁ GµÖäÍîkSª¢pJ¬ר5ây ͽÊó¶²t)sÚ¦Ï&St[$™E<¹rŠâžD‚<òd®Íä)ˆ®!JG®n{Üç½Ëšª¯iŽÛ““:ëUUîvIšf‰í[åä½TjÅãl åbõE\²ÖŠî¹iO£›¹g©O+.2zùÞ¹+×ÜÏ$éÑ:&IÓ>þ¾¹ÌÖ¹ßCÍÿ:𜠹æºÿPНNŸe3óåãwoõŽ,åË~¡µ‚h-vN{^õt©±Æ^äÔ¯r5s“ä H®98V4€ÆR=cˆòmî$ã ®Û q"0åkQådXíz¹=>9®^ÂTëÓª±Q說"zW§"d‰Ñ:""y‘<Èœc[G‹(&RWÆ>±®äºÐÙHš-´~óvCm^ýoFMý"{Ü# þpð\È3"Êv$!€„~ÁÓ4‚R †Œ9’Ø95‰’d1Žjš½md°¼-eŤ´+ž$rÂ}#Y7£Í\F"´Ž9vÈE#F"|Á‘6l€C‡ •.\¢Ž ä¢5›bn]:5šû½ÍܼÞ7q}g½’B­—Ûêõ²”é e6çM®ÊF ö—Vò»qº4»ä F3ÅARGˆÂïdh”àGk•P!t©2d¨Ç¥‹"AÍ–áHåñµ<êxù'tœov_As—ÐÖ¹ËÑÅÍ™ápï/ím" Üõxã…±)Éá±njžI£qY˼R!AçUïü‚Â8t±»r'ÜL7ZÍçóªa l„p™³ìm”î'­½–ÐÑC…$G4”Ö8¤J·§$`È›c4Ö@ ÎG•‘d8hä ¿0,n,ËWTÁ—e>FÙM± rJ”m 0§.Ð÷í„d+òÒ6=êY4pGØx-“·£×³RYÛˆ;\›ñÚr€»G§†¶2YH%´šè6,ùì^4*~µ}>çÑóôógÝ—_‘Ü÷®McUÎ^«“Z™ªä{½xÒ&¨‡š¢¯Ë«}:úµª¨¾Õ69"¹ÓǤG'»ô2Í= ×½:§剠Ù9F…òƒ«%Ò×iD"7VœÝ›ÜÏ£—†:s}˜}ZÝ9 kÜåíUjyosü¦êŽäøB¹ïkžu_«þ‰ßÃ>Ä5É7Ï^ªÒ­/±¹¹iò˜ª‹åy²ã%r»ª¹UÝê«çvYf¾l×®H™ªü%zð <|¦ÂÔ$ÈÚØæª©JXÀ,'(Id:pjõ”Ë}¸M°Od2p ]…«¹nk–}•„‚¾U©âÉ¥÷S2VE¬ŒyS  ^hÈÿ^ë[ûÖÁi)PqN\ôËšá€n6ÄkCŸž”¢4¡U‘Ô%^IBC8Ø,h‚‰¨ÁBb#1±ŒcÆ¢5¨ˆœ^ØêŽF>ÀÁb.¨æ‹ Lfcõ• ½0Jâ1ûd{œñ#汪EÍ«•|Ù¯N¿Úë^žŽ5ùÈò}«•:{ô[Ñ&YÊ‘»f`Ì=À‘ÐQ°ÏKØ×"§¬Žß;\CjѨ•>Ž© ÷2GuîEãÅŒó]5=Ù9Œ_'ª1¹?£•ª¯LÓPú5U<§uÿO£ßÓ¢¦•Ë×'™íÏBùº÷¢û‹’uïNÿJ*µÉ’§zzõhýSõ _üc³ééЙ½rèœnÎUèæ¦nnÛ¼èˆÒ+rèÔ_l«“³{‘úSáü6‹ ÕžâÑà<®\/XÑѲ%K–Xðáá…¥• #$“Gˆ7:Lm§ 8å~jñTî‹fŒl<*8¥V šèÉhHÌ·˜9õ’ëSᮯpï1ÙØ8‘J#B­”2lé»8ÌŽæ?qË(ù®ÙÛ2BaÅ'‰R‹*L‚™ãÍ ± Ç$„ƒ\9&;¢ÀŠä¨Æ÷«ž®s·ed!¦K¥Ê‰š/韱¦j‰—¶ïO%r^âÐÄèâ«;½ꊙ+[툊÷÷#u"g­þÊeê®wTGg©U¹õÏ?—_+¦i§5O\½x éÍ-6ÝŸ"@È)ö1Jc]0 0£# môÃD‘½,ñQ)¡ ¶&I–æ gØ8JG!¬%5Œ|’k9œÄ\ƒ àÄxèÀ·‹‹1¸ƒ8!¸q1ˆ®Ùnl8%Û7±9‚— $*=ݶ¿ØÉñ7'wœïF'§&¦kõ2\»þ[·ô¬kzwtLºx—‚ªeš7¦k’gî®K—ÑÉrôqIWˤBÅ®ÍGBn ç¼Å‚#Ð…b¢Î,‡{Ô-ÏH2 1áö·RØbE¨­i$qÚÇH|zøÅ–f¤ †ã8br ¯(دÉF&nDõž}b¹§IßösEî&KçÏ¢ñUIæ$ZzØ5q‰!Ìt‡Ç¯Š(yÜ1ˆn3†&©\1 ŠüÕ£bdÔùÃÆ¤ Û»°¬ö{[µFAÒÁ\žR;t± ´’\žC¤kpØ«Dž¶ãéÊÃï.ù€¸ Ÿ˜Ãðg ÷W‘ä#Þ͉¸‚F‚e3¹$ºQÚqYYƇ.¹¾4ûOŸ Ó4T\ÑS¢¢§r¢§TT^åN¨¼kgG·$(—Û ßóµß(þç&}ÎkÚß‘ÎTkZŠç9Ë’5ªªªôDDꪽÜkz&f+ÌDoDòœ¯vœóéšùÕzyÕ{Ó×ëo·jwzSÑôSª¦]ýÝzeëÏr5=ÕþOJû‰×#Ô!ç“—Ê»µtòU2ÍZW¶ÍÍriãО„ÿO³éóü'¿„Ÿ‹Ç;aöí½*+ˆ-4ÍpeD[ Œ=6@…Kx½h‡Wmå G…ªQXÓšR€O9Èi2²%K–Y&ZÑ…¥• Ä`ÇŠ764`~¼¶wvk`‰™ä‘­í ±}K*SØ"(bFaeZ¬ˆÿ'‚Vá.kÓªVÇRÇÄ2Õˆ®#ZhÇxëb¸ªÔFE{æ±Ú÷ÍeH¯LšÕ{×7.kõUÎs½ß:¯U÷W†êöYY/Fü®hŸ½·¹5ªkr9U,Úšå¹FΚ@Îîïm’ç¥zü¶§ûfù —FÔk} ü«é_uz¯Èôo¹Õ]ôt¦k—Nü²ã؇õ^¹ù¿JßwõSÑñEo\òg“õ3O+/¢å÷xjjRjr&‡.yçÓ£—Ú÷÷÷zsOjº¸Ä›>a1£-dvJåUW+X1ˆâœÅs°†1!½èLbƒ²œñ¬¤ëÈW¦ÞÊYDee±44"(ÞÌEtÀ¹–bp$·ÇMBÅb¸…}¬”Q“[&¾$=%è-%qgkb#˘ª¢b¢.šFÅ{³îɽÉÞÕòÜ­g’¹ù]8 ¹žZôÏÚù]~Š¢7?6~5⎹̌Q¾Ê<ƒ†[uÇ4Z÷v„ ¼j2´ŠXÑJ6 ìÛyÆ‘XÅsÛò1—±ÌïT§owgOoT{ú¶ËŸ+Ú<ÖÖ”ßÙÙÜæë=a—NNb°*¹ûdA¡[Ó¹2S¹=ßOr&«ž-øx–оh5[Ñ&ZE$[xÌ=À‘ìÖ"0ŒÏS×"*|â_]rÜ£.,ç[¤}Å6ìçK–øÛú†ØG±›ˆ+ýºš‘©ëpŸûûøMsò}§ƒ(~ftŸ€ñeÄi«D2µÒ0ôBF ù™ÒvÖ%ò=Ä…%SRgIšÊŸ&IjÑš9™«PŒw¶båýÓsG#^Ö?K´åÃNfÕ訽7§¶ò¯nAQQÍW1Írü†ö·=RØè¨^ÍI«W™Âaš"¹É–^Ù¾w.”ýk¿›ðŸÔ»Êoüé܉Ñ|Þféñ«Gå¿5j¯•¶ÇtËRµ®Íssskz¢fçèkUxU2î*æ‹©ä˹2M £¦k¥<äz9ÅɪŸ >¬<Ç©À¶ 36¦œrïl«‹‚‚ ¨²ˆ6»T™‹ñëã̘£ŒH·l&Åû^YrÂÓÁ'œBa¸§ŒÒ„á+b—õعaó›N9²à/ÂUNÁßb ”±äFG”P*ÈÍ2R Ì”A™Ìa+á“urC&L1ˆöMÄv’lÊ=[ &‘ňh˜D‡ H»¨ï¨ÇHpÚC¸„M|nØFWWGäÞõ\òF&YùNôg¥[׎^´YûeR*y=ÞÙ5®jä^š‹Ó¢5È­ã[¼³®jâ.kÕÝùgüïl¹¯r.”TÏ[ÿJß2õèçw'wTêôïмdÏboêWÊó|¿Eïý.BçÇ_H'DïWÏúµô'žï”52[2h]Ì·¶N6›t±òfÔ(;à<¼Îí·HÔCÙ–ÎeÒãò„|JH›;û.™,¯qæN(D‚idÿÛ‘±ÀÐB O!ñ£|ˆïY:jÆAƒHCr¶&ÈNçpín¥0Ä‹Q]:ÒK#µŽ;Á1e€i!¸ÎœƒkÊ6+òG‰›Ë-·£>± ™ûžß,º÷gçË×`qÆcØR†C†0Lt‰•±åË:´hÔSJ”cIUMfR˜Šâ=Î_“G‡¨». óqN`k…EXRž+mž…b‚tâ4‘VÀȱÆPe«V0£À·ùôq4nº[ h‰­ZÝZ^7.^Xõ;&ª£Š­v•Vm{Ç"9®j£šæ¹3kš©ÑQSª*tTîù×ÐDîDô'ÂW¯·Ç<öÃÎçX•šK(t„å'Á0*`¼êgïN&ô†µ±,"Û0tøn¢ 5p´//-ñXÅæ¦©çN #’'Í)æÉÚk¤¯M_u­ý€k`´Œ ¨G¸§.z8Y2L­kɵE"F2µ=¦«¢ðý†xÒZ¯ ,í€BtæŒÑ¯gÀkXHPNý[’E"lÈåA±6z3\¼–û®_7rû«—DUéÂ)2,…nmgº‹ÞΞBgýqÝ|•Ñ×6qªFa .¦ .¾Ž¾|òùw§´f—/Q<è6õzççê¹ù²Ôå˦œû“Œ³Ðßö¶}_lîõô/ʯœ{_î¿éõ:q’ø™º¾MŒ·ésbÇ“KQ~[þ%# a4Ò$¸QįN`ƒzÒ~-,kÉI¡AZ:UF(¤©¥y%µÜÀ‹LPBjP$Fž×Ãõ½žø.ñI :g¢ ZÞÑ'”‰Ú†QÃЯ SœæíQ—$.„ÜÓ§WŸñg—M]ùy9åÓ-ë–Bo›5Ϫ.«ULú'òðѧʧÙ^õ_?zæ¹y¼Kø‘i$Roe!β®«ŒÍ¸;¡+1ë3çJÀ„lˆrãNôs0][ ”rîçÈ®äºÐÖÇ„]Åfó6Ck=šFŒ›úŠÇ¸AQð®r¢"&j«Ñ½U|ÈžTˆ"±ºÑ;‘ùyHW¢/º¿G‹ÉmRLsIA=cŠD«zrF ‰¶ÃH9dœäyYC†Ž@‘[ó‡$M.ÈI‡- 1ÚLåÚÅ}\iäß285ª ʏgŒ-yšgíˆÎ¾‘½Ã_©›W/sÑë ,PŽÄâFˆ¥ì¨% q)$G@Fs@"­„ÊøÒgÞÞÏ=µ™ÖDÙ²7 L‘kZÄh‚‰¬X `£DŒ!FŒ!GÆßŸEáaÌ#’)\›$r¦ÔR*®¤vi›eTW;V؈šÜÔB­ù DΚuù"·SrÚª;¯Q37{U׿DòQ>ñªª!æ.]ù9.þ½} œk{ÕÏéåyMé–Y+QÚrÍ\ºQ=¦­Ob~ßÁk0¥w6±ygYO9Y²¨Ž‘Ù"t¢~êfÊÉVrAa Á•Ê™ Ó WŠw—öpôŽ"¶Ly»&œ’fí<DeªE»dº[Å`’5n±-¶Òe(2ê„(Ë£z\r<“›<(›c{ðºÎ$¡½u¶ ž[Îc×½1#L˜±‚ÑÇŒ$ê÷0bÏ,‚ë9ŠWë‘ìCDU^¨Ë,ó\óF'§W”™d­Nþ9záio“™ôäÖúsG7ÐÔEy3s²r#\º]Æéݬ«åy^R«óÍv‘|¥vjß-zùü„Uã!&Ó?Mòëõ{™š/Êææªtwss—ªùÕWÏš÷¯»éïã¹ôìÿŸK–^âÿØœwñ’&nF§ãú ö:ª÷p +6¢“t|‰ ¦ÍŠ@óê`.˜F8–'Ê9„4D±|SÇái¡ Æ&I–æ gØ8JG!¬%5Œ|’k1œÄ\ƒ àÄxèÀ·×K²oX¬ÊwL¾Žçí¿¨@_‚JóLÐv©AÌòêåh›ÃŸúVôÏôÝÍîô»$ü\)]Õ×5ùb/ÑEÏ/l½sG+WƼD©‚ÝrçÈdat#˜ÍkåœÛ,)8õH’FûQÄBªdÅâ4¬Ú‹8bƧ¿lÆÑšÈç‘úÆ·SÜç»,Üå\×äH®98V4€ÆR=@)mî$ã ®Û q"0äkQådXí"¹4oì³Ì‚g~_+ŸŸÚëÏ/>Ytïñ?mQ­v…^ä~^J¯Eè‹î/Ðñc·<<­…•]XFŽ0Ùñ¥K’ò5Fƒ@¼w±i^÷¯Âåˆi¥ƒ’q±¹ªäÆÍjfªª¹"wªªú~ßÄ[ßÍ=C@°ÇD·»†øÜʶÀà’…Ã R’0ì[Ç#,cTri QQ@mMh<(QÑt ™«Üç9êâ˜æ+žyRŽòÉ—$¥“$¥RÞ¼–7“È2¾<]cYÖŒã×DsÚIFÔQ5Ú=Œ(D,’ò´ÕõJz9¸D`£€´±Žðì+.$C†¡#\W:¾6Q²6Ô’OÙ“HÙÝ–kÜÖýÿ™3wEÉ.?Û¤uNéštÍ3TrËÊêõÔºu74MéÄØ˜^ת'L˜ìú¯•Õuz£SJ·-¨CÛoûb§Ôͽ꩗–ÿ+¿6ç×oÔG/Ë;ìw¯£Ñèóqׯ¸ý>Ç2O¡âÑŸºïù“èùþÇ~|6®‚ l&+W1ŽØ3!Žy4U`Úâ”mqÌ£·NVOÄü½í®rS“V¶MXL†(%E'É`·$lŠ'HÈp&(lëÇMìæíØVJÍ£"†©XáÉRjæ=Û+‚F8C¶áHÈÔá€o^ç*'UW/F¦Ygž_ÝkNÜ5ž–_K—¿ÌŸA3ë¥ƼXâ34kY XÄGsÇAQ„õ&ìbF‡¶vÊ$Y•Œ6C8Ýò/“»ÁÈpíRꪠUÏ’±Ž]‰ÐäZ"Œ»{yæÜFoLž|œŠˆ¹éŠÞþåiÇ"§TVø²G+|¦;4ô5ír·½:=X¾â÷/wŠ4Îc{·îmí¶ö¶ùM’Ž‹—Õ¸ýý]‹Íné\ÎÆÚìî—炸¦Ó2N!í ‡l«®]\ðN6ãX¢nÁm`7mÏB“0°”hˆ™"&H‰Ñ:"zÜh·‚9“lÍdRꪧÚW—PžÇ.Äøq¡Wl»{fa÷ß&.¡“Nó‡ sáüÛ·cˆ@seµ%™æi(¨-m" œÄa$Ñ)Éá½\‹q$ˆÑ¸Oæ)m ‹ò]¶l€bú©Up«4)Ô:àZ[MAÈŽè`Hn›¬ÏsÖMºn$È­V7ÏЦ3«>%%šå$W½Ž+Yš³"&†¼K­žÈÆ£ÕF¯k‡&1`º†F÷*w/Eê×5È­{ˆö=ǵ®j¢|:D§"寗¦·4`Zü•ª¾KÍ­É«ÊË,üÈß…HꚌœ³ÈåEÞÍÝܨÇ5\ºu5;ýªúÞþoŽyü)‡Ýα+4:.–Pé ÊO‚`TÁyÔÏÞž2M;!é kbXE¶`ê0ÝDjáh^^Z-â°‹ÍL/SΜ@F$OšSÍ“´×H9^š¾ûké⯀7ŒJb4¤sÊUÈbÂÈWdçmDz „*µ"9§ª¡i¨pùY",Ÿ(d±·ŽBy.m­UâxÖ¾2¹\…’)3%€¨&"1™53ò×£/6y/^©Ñ3^¹÷uã&¦ôŽù"¦iúl•Ÿ©êõÔ™æÞ©ªSœìœŠØÃþÛÛäºE’ù*®ÎFY¢£z/×dÁ7¦Ó<‘§Ñùgõò¼¬ü¥ÏÏÇvÉö?~¶-M,RO±š]€IžoÉʪ®rµƒØ×Ò æ€cÌW š÷6Ýó;Oü 8Lˆ‘¨er©» “Æ&<¢—óDªFë SÁ R‹x¿!ŒF!cÊR•íÄ1µ\òîTkÆ¢¹ïr£ZÔUUˆ6#ΔкFü†Ê‘›Ñö.†‘ºØäf^A®~˜Ä—$ Ãc1rDMe_±—O>]%W&yiÍ­M-NäÿOåïUñ¯1)Ó0Uëƒ_×ÛXHÁEò×'+È-Žð›´wô4NŸ Þ^ls]OgkÊîìs=Òö7¶Í³½³·»´]½Z¶ß–•O¿%QÈ¢Gyœ¹«æïM梧_2ü·‹.½2^åË®~~åîꈹ§LûÓ5â ]x¶ VÃ5»1!…‘ã tÏ!‰¶±šÊG‘ùj{ÜåU_œ:à°á1#ášØÒǰ®+´.§°2ÝJr†-¬.‡ì˜DÒQ9Þ·Ý¹ææ«ëjê‚4s9wG¸•*\—‘ª5"™„£ˆ€sJÆ5„„Ãp¾J·Ä·Ú®¥‚yÒ2|vÛMö(qy£F'N:Žï8¹™§v¹Vñi‰íÊutѵЊt:z†˜¯¯§Šæ(¶ ˆš\AÅŽ³$ºE„†,É’HÿŸ¾Ê’÷,y.ø \ö ãŸËs‡åäºe®HƵëðN”`•ÒHôøj5¹+Þæ°hçiGêŒud¹jz£{•zôEîàbW¢¹­ÉʪŠåwË9Ëçs—«—½\ª¼trqßÇüwñßÇþ%sœkQUÎräDꪪ½;×!~m“¥WVÂ/Ëyno’‹–LFù ~¼ü}ü³ Wsk–u”ó•‘k*A(èH(Ÿº™°â²Uœ˜ñf \©‘‘n.ÚM‹ö"¼²å„2*)§‚O8„ÃqO¥ ÂVÅ.%ë±rÃæ!6œseÀ_„H©£`¯ñŸ"4#ÈÚÚ‰H³ä1¿”rÖ¶Pˆ —\ÊÙ ÖØ‚ylg9Œ^D`Ä2`"Æ (S«ÜÀ ˆC<² ¬æ)¸b"ª¢ù/éç]I“çÍÝzwd¨îòš™n&¯)4õjy:˜º³M]\®Éúš™»#SWòýQ<ývûœ¾O•“•Š÷§•û_öÿ§O[›œ‰ÀgMBÑa¥|wT¼V6‘ .gU0'1â Ô m‰ò‡”èͳP+Y_IqÓlm“-Íc¬,^5#ö2Ñ$¢ë1œÄvAŒÒ¨!†K@‚•y4#Šc˜®’:µ’Øä‡Pñ³:e²Hùü^œçëžFkÐ(44MLnj£È[¢+ô*hcpU¨G¡ÞŸ ÍQ})Ó¿¢ý”\¸ÒLÕ=Ç9®N¨½ÅG·<ºä©št\ÓŒ‘¿Ý*¿í½Ux_(ƒUËÊÕ2Ë.æ®cë–KäyÕ{úð¹¯w{^G{U˧Ķº"õïG~©<Î×)ä\¼Œ•âë×Û*Ýý:£zzÂê{کݤî.®üÓÊltj÷dº•;óË¿…×&XòËÛm.Cmäî÷rïéDZN"e–{í(»óöªºuww".^uêœtŸÙ9[å9½éÕS^—.išt^äT÷8ë $_Ò‹'zz«¶QžnìõuEË.2Ø•QvщӻRµ¨çzrUÓ«'eѹwñßÇ­§:ÚÆNç/_[ó¦ÈÙÎ]˜±FS—h!‰¡ŽÐ!¼ŽÉŒr¢ZxQ/9%ûO†*l 8@a;tw–1X Gœ GDhig   ÚVñf¸ƒEEµ5 Hð¡GEÐ&f¯sœç«Šc˜®yåJ;Ë&\’–L’–AHGzüì¿jxÄ=m,}K*j±È6ë{FAÁŒ¤UE•+KU¢‘Ë2Q±ÖhVÀÔô’ž»tÕ¯`Q‘öž&ÈAùì0ÞþpF*CG*¤11¢Ó&èéÜ‹—~^Gé—¿Üé’¹:q¤Þ;WNnUv‡w¢¯Ê«š¾a¢;£‘\×w¦òù r¹ˆjgÝö£u*ªzW5ãÚ¢¯§¯=g‡¡ó.ÒÍ–g  W ÄA´²ä¹=×"ÇiçA’øÑË‘[˜žÔ%9uˆœÈZLÅ@ÊN`Õî…å5f¶qù¥t–zbŠ/ÂW†äíEàæZ‡J¾[œÇ ¯&KµZ•yð«NSµ„QHi­DnYzÞþ×ÛÏæíçªóA|ùiì¬4r½£æHí4’:(Ì#¼‘ïP…ù 𙓠V÷Ì;¢ d5“«*âHt´á¦ÃÃÂe9’<‡æù7¬W<<ŽÏ!±Ï\»òj+—.î½=üššS>î½=7¥¹UÙ'OsÑ’tO ‰–}|¬×Œš™zÞþ=$O`fòÖbñHŒŠNœ§ïÇFCŽ3ËÈì;‚È4$³µnWCŸs< Y,±Ìʦ#?3"›vJ¸c!e”r6&N˜0ƒoáFÉVmbíUÇ~£¸ºDæ2K˜Ò6ÓŒ»’t¹àÖHÂ’öí9çšGŽ&¶º-c õ‡£ÜhÝ£Éa¥é)7f=ˆWî9ŒÚŽ‚Ž.ï\½x{y×Ùmg¬^R>OQ±UA¤‰„g/23Û™%rÇCµ#××ÇXqG¶=-njåUW*¼„#ÕÄ1ˆç”Å{ÊW¼s—ä:Ÿ¤ø~±ˆF¹ì$ 4èÔUöÕÎÍS«ŠÖæôVåéëë/¥´l£b¹Í%ÄXñj)Ë2&ãÓ%s•‚|©5LEwÎ2•%†xËE2­¨±Ïß¼jRÅz¡4Ù©á$‡#•íŽÒ8c)¢~iŸ¶{:úF÷ ~¦m\½Ï]®¼[+aÆÈ]˜ÂÈñ…ºgÄÛØÍe#Èüµ=îrª¯ÉÁõ´˜4ó#Ø¢²LaÌÅM1"X9DùRN!v| D…Ã’{Î\²kæF9=à„çL‚цJ¹å¢ëHçÜsŸ¸âŒ~Ìåv½ö•ÊÆ±ÃW|‰ßÀ¬Z¾§ð‘9Öz¥–IæHùzº®n$«RŸ²IšãÖ–±wà…Û‡_"(ä‡CÌ™(®)äH#Ï"AˆºˆS®qG.n!åUêç/²•ÙfÑ{¨½È™û"÷"ü¢uÕ›|¤ò=‚6kåw9éܨïÓyü–ùís’/C|¯;×ÛuþDõÃSœä`@ æ9ÌW Ĉhâ¥#šÁˆmsÈ÷#XÕr¢p9øÔå‹‘_ùÁR‚(¶Ö}¤r–6K_¹RB±ŒÛXÒÑF8UÐâÀ†[1!GXÂÖ÷û`X&k#ÞGijj{œåòœ«ð¬ìeµ§Vkû4ãæÓ(öã·Êk àL’u D6C$ªðHõ,ìxNÖÍäT%™†»ãÏ{-¨[‚xŸ¦3]&4ê ‹š¼<¥sÊb½Å)Jåy G¹\òîÍÏ{ܪç¹Ê®s•UUWׯ^QR-éFÍÎs•Z j¢\²¢;j8µ7S´¹ï{†0² ½ýzúÜ)U<[ðl±-  ÖQoD™i<‘n…ã0÷G³XˆÂ3=L{\ˆ©òAeÖHñEÑÒ¯´Œ%@N„°¶t#ÈŠ Èy£ €6òéÅ>!¢J{ï9ŒêωIf„z’+ÞǬÍÌȉ¡%ÖÄÜcQê£WµÍ Ü×±íG±ìTs^×&ms\×'TTè©Ýò­§:ÖÆNç/_[ó¦ÈÙÎ]˜±FS—h)‰¡‹ Cy“åEÄ>ãU\Ù< mvr2Φ±$Æo2[–˜\¨œBÃq$ºˆ*'Î*ÊI È«øFvFßµ¥•9Xäu½£  ÆqQeJÒÕh¤rÌ”p¬ua¬¬—'KL¢B±ò”Rä°¤Ù“hÐË|WÏdhº‚ˆÁ€(¯GnPL¼·ôÏ>åD\³NzgÕ8د§;/e\óråè\½¯¶Íry~N]xÝ”ªb.^K—4oë—?d舟¥ïO):úý5¢Ù« ¦F±¹6žZbS½¬e%Ê,]JÇȉÎi ’ˆ°‡ÌÛ(ãØ\ŸW1/KÔÏ@…Ä  FqU2-cNtÓO’Wá 4ù‘`‰ÏA4²ä 0ÜUkœƒkÌö5^­cÜŒEÔ­c—,š¼+jãÌ·*±cn5.’¦–Ä–Â0H¥M '«†=ƪ‘BàŒÌ§Œ¤z£+w)ÃÝaÃOsÔúƒF¸Ò N*J' ˜óÎ)Š÷¥+•ä)HåsÈG»7=ïr«ž÷*¹ÎUU\øîõë×TÔ‹zQ³sœåV‚(¨…—,¨ŽÚŒ-MÔí.{Þæ ,‚„$å"{4“i%‰<ãµ%TÍÛQ…©í‰¯sÇ9UÅY2Oò,ê¹â߃eL  ÖAoD˜Ç-À¼fàHökFg©k‘íSOÃsj-ÜÔÖÇäâv]¦ÛZ1Yms†ö´qìãòâ4Oè5þ8¸ßÂ5kkLWQÐØCFL<Ö!––1f I0Hªj¡¨Å<³Ä6>4XÑ]ió‰‡j6ŽIsn¤[XŒÙÙ¦®K5y®|Odé¶%™5º?<40È›x4©$4ɲÊCÈg<Ò$ŽW”¥{µ<{•\ç*ççã2#K#ª5™£„ÅÉ:§R"êͨ®Nìôæ×ð„*è•¥rûLj**æ¾uó"¢¹U¼ieÝš÷¹ÙzWþdÉ5É?\(ñÆCÈ9X,qLsÈÁ"b9ä)ä`ÆÄW=Êj*¯³ÅÈZºö”e/NвŽàï*J(Œ¨½ÁBæöš£fì+A%ÑjêâŽB@ÆŽ,ô±¹«•\竈R‘êâœå{Ï Ï!ÎBzøö“C®ø›]©ç6O±M$™jaîì‰ûLvá4³7pñ 5ÄÆ7N™1¢GhK©rèlÉ‘$¦…U·cËk´j—»ãeÿðjïÊœ|n½þ _ùO‡¶&1£y;e“bȧwÝzãŠÆI55ºeS¯] å^èµµ ŒºvÅ!³%žCuë9PÆLÉ©ÍÓZX­bëV©ÑI¾šiˆ±=i5#\ÜœjàÅ+‡“×19ê%v—«Ìbµæ*¸¦+ÜR”®W”¥#•ä!ìÜ÷½Ê®{ܪç9UUUxîøBð½xìúÿc´¾ÂÁíWG€*¢9Ù+wdK›+\×È{\ªáG™äáû4“h%‰<ãµ%TÍÛQũ͉®s#±ÎUqdDƒüŽx’ÀQe‘äÆ6<ˆæbŒÀ8HŽBQ¹Ã È×1ìrµÈ¨ªœK›Zë,5*@O¶ ²€”ìœWœ­–úÙ`)¬c««§VCH "2µ@éxè¦ŠÓ d†>dYŽE0$—rÇϦˆï‰)‚z¡ÈÕ’tZó\YŒÛѬ±Á`xJ×Å0y 4ZøÆ"+O{!v˜^C1³¶‚oÎ.¤å—ó:¢U§2…EÝí©ÉgeXÝ´‹Ø[ªMç©’N„¦õ¶0RC–2"¢cßC¬©¢8ñÜäU T˜ÊQézÇpªí”wÈàÁu²¶îq~®dÚdCÃ1žœÖ½‰ •¶å#+E½L *Àâ(dÒA§¼,Yy‘9ÆGí.DpšäÝc|¦ç¸-LV«‘¯k•®òUxkØæ½j9j£šæ¹3kšäè­TêŠ:ü;¿ˆ4TPgoft tM“%{œç=Z €"kÏ*QÞ(Ñ# ²eQÄB6¯xE‘Úvcåçz’ @êXgNay;©9Èíý½PŠXñy:Ä—L3>þ¬Ú(à‰ $H¢xÑcGDñÀ&´ADÖŒBZ1­cDO„“&mÓGœzDBO!\p›/J=•sÃïÎÛÜŒ…|1L3ÿšfåiÅ%篢Œ¿E̓t‚#Kl=JL†BÉX ‚/Ã\ï!«í|•U~]è4Ol¿aˆ¹#ÞÜÓ¨¬r;ÊEÓÔëòÞY™¢"7âa^™;Só^òO3:+™~—,µ&nó«|ýý}z‚š.QÛ¼†µ˜‡ Lw…ƒz€’Æj’íà#"†“‘šg ±šS ö•ºèsî'.òˬ¬j3ó61w$*Œd$’0ês%ŒAÛñöUVÉlʩ̯ÕÙ:¶yw>>ËÄc˜O1"›:s€ñÎÆÒeÒ¤“Nä‰%yÎM k¬¥WúXÖ±ºœ¹5¨Ôè‰ÇwÜwqÝÇwß ïáÝ|Ü2qÙô)#l²×>jc¯}µcQ¼oÐF$gÊ:¶8H÷í¶abÈŠ‰¢#!ÅBÊÆ¸„sÊUòÊcä9Ȩb<Ä{š!ˆ-T†Æüðʉ±³Ø55[›»œÖèŸy¿§m›{g•ÚÔlùmíÄÞÚ­ÇrܺPE‡c†J‰‹ Qå>ì’@3*n02 !&¹WÅŽâ#”#VücqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjÝbr©ÛAùZH‡R"À£‡˜«cì:\áE9œëD±o2ÂHÖÈËÞxt»2Äøž¥òŸËäûg¹ÎØvc\šÑŒK‰×áüwð+¯©ü$Nuž©e…’yƒÄÒ>^®«›‰*ÇT§ì’f¸õ‚å¬GÏÂg•Ø^»–æ¹gÙXH+åYÚž( ‘:Q?u3!ÄdZÈÇ•0`ÅæŒõå›c2,`F©¥Í(±‚Ž{FÕ)Îæhâ=¬n§&osZU8=>i#F{$F•ˆ$‰Ã˜ÿdÐÒѱ§Î+¹[6`¹¿gÌ1`ž;$8²¥˜Ò¥H#"L’¼Ç9ˆíO)ŒUq W¹u9ïr¹Ê¹ªçÆ·"'rùygÑÝPb븾×Ûù(ŠíLTÉè¹fÁ.Y”™«ÈÝ뚪ô_%ªDÍŽwvy ½Nì•ëîg’tè§Ÿ¿5õÂd<‰`±Å1ŒW#‰ˆç¤{‘ƒ\÷*5¨ª¼×)aÄ("=r86]íj;‡¸YÂ#±Ñ"“´2•ì²+%Dx8uñ#Aˆ{Qa€Q£ qî)6À°lÖW¼ÒÔÔ÷¹ëå9WÖM´:jl@êhü´Þ9ÐŦ Ê>bIÝ·0:÷IìmrðYr¹"Q‹&A4±›‡9R¿HÚÖ7YçicZÔÏ&¢'O‡wñßüÇ1„Mq R‘ÈÁˆCb+ÈB=Q¬cQ\ç*5Ux‹o‰þŽœ´¸ÔÚXés…Ú¹˜äã#juÈ#$¨ä €HäùãÆRä°, ¯fÖ5×µ›ŽìXŽTy»Ä‹$íHÇÄpÆ!«DÏ[qôåa÷—|Yàê þ ÄWW¾O´¤ƒ-{27³CxÝÚ+zÐˉØ[2è¶i«Þx «³b¦¶"éC 4Rٵɤˆ™f­v‡i#S[¨Âu ¬i¹*fǦ¦®NDrf‹Ü¨ŠžtÏá]üŸ Tκ².…å …ÅÙä/5,½Ï$ ‘a4€…u®’q1up–ÞäAÅV Ú|ZH­–˜~ Á5Æl‰*Å=þð«t•ƒi§Ä—Ù$?PÈ'iݹ¤Ù¤€PºK°† ìÞ®T«ˆU  fAU4(SZ£÷rôÃc„ø´ÐÔ¢©Šñ ãiÙå*–[ÇWÌ’óHörOM¨ãDkxA‰L…Ë/8[ŸUMH¾R§Ÿ,‘ª“ÉVð…”»¤ó1}¨úê˧EOÔ¢ Ó7&NEÏŒ“¢'DO2'­ïá¸[b’Èö'ÓËCÍŠg †¤gIh‘¹Ež‡ž/8Xqä6B"Â3lXÌar}\ļž¦{D%!+Š©”hÙk`"ó…˜xí¾´@b Yckõ£•ÍÙ"ÅY9¨„Þ€ª½ݧ4êV½žB"»JéO2».‰æóû¼eìßÛ _öÜ×/Ô㸿¼'ýGÓ°Ÿiz§Ð^3Ýc}ÅFgþÜŸo.B¿»¢ mú(½½}ÅoÂ;ø_+˜`ìʲhwiX5ÃB…ü»õÁ‹ÒDÍqÏ¿¹·Ÿø#ë‚RL0öc0›ó -ך4`ÑUs"‚;N€Žé;ÅIóË6ÎywçXË‘>iô [Òæò$l,G¸b=ú6 ™écÔDõØDr@häpmd4gÄ÷G™{i.!ѤFª†TSLr¢h4rŒÃW írü‹cqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjßbÉíÚ=Ôç‘óù8Bc"ÖÀÝ hŒ‘ÙõÀ‹ šXÂ,½Ždè§)¾ðæ†åO`vàz·=²ª«ÚÉPeò•ê®êto’ˆÜýzñßÄ[kf á ø¯,É4{k˜Î!pÜSÆpŽ ÑFˉz+š“9ˆM¸|)pU8j°1M±pÂë{‚Nöʸ°`†Y§Ý•(‚k´Æ†’¾#È=$Ix]¡îß’£ÍÓ«yD÷°D#¸o_„wø»øïãÛpÓ,¤ˆ¤+í£˜ángxkšÅ>àjæŠr×¶B<*(ž¥`¤¼KmhÍçì× ŒÞ]úàÃë&‰ßŒ\>>ãÇÏ‘Ÿ<ئÎv'WaËÉð eÙ—²LˆåÛ3m˜l~‚ãvZ^Ç5U=~«°ÄúÜ5Eh5Œ»2áÕÅ$[¡yM³ ìÖ"5»ÙJ½UïO>yêDëåz\ª®Ï¹S5O]ßÀl­^ZJ c›@É>Ð/7Vĉœ1¾;AO˜'1P°Ï„b½ãtZ*ÈÕã~[Ï9òdiyˆÎjaÜYrö ÈdåØcÔAÐ,˜Ÿ 5¬&îQKâ* lgdA3H¯ZÁ²žý¸cÑy‘R9¦¢çÇüwñßÇü{nÙ5vØé ‰¿)‰r·ìg—§–¥ 7‘Ç(ؽ W0~W tÅN>aVÉ•ÍJHþB¾H$Æ/G=ÍŒ÷jרFæQÖò&Ý™FFªG×BÔ¥Ô2ˆÈ“A‰J„±8ž®)6šª&…‘aF0µmÇŠÇõ½Ä~ ­u‘î{´µ5=ÎrõU_žŒB3"$³RGŠÂŒ|“¶òº[®TS±bÉ’£9èç6[b{›ëh¨¹ŽS¶®k*y­­þ[´f†þÆàw¶w·6·…¹§Nã3ÔŸ"È›6@!ÆÊ—.QG4XÑÆâžDƒ•Í@5Ä)HæŒckž÷#QW‹ìY=»Gºœã²>b'LdZØ¡’;>¸asKE—±Ìå#—Þ%àUê7+˜ØÝÕró®DÔ®UîÖÔϹÅßÇü ßsøO;Vht<],¡Ò”ŸÀ©‚󩟽n™ýDUã,”Ò;¼éšr4ÍôÅDwË7„$µÒÏ%R;z5zwªj]+ת®dêæùáÔFµ½ÈŸéöW½WªúèÕuq‰6ÂivcFZÈì•ʪ®V°câœås,!ŒAˆozDºÄ€ÜHÒŽdp)éÖ»hlkËÍœÅ~ée Ò†ÌÉÑ{B_ÂÈŒf †ñ%cH"ˆVdÑZñ½ª­{Š×5UƒÌ¡ŸÙd.ù{8ÁÝ®S«²8ÎŒÕÑÜT#äOhÐÈ‘#„ dg~~ þcù+ÏÔÂì%qùûÿ ±ü•Ã6ÖšÆké_uz¯®m}4VS¥vb_¶Çaßÿ‰EŠÂ˜M,©/`ëj˜¬o^aŠykËDæZt¤Š ™ OØ•eŸ%¢B;rSN‘á©â{½àª~” }ù¿õØÚÕâÎt8t•ñ¬‰·ÈÖR&‹i~ñª`?[ÆâcHžÆ”ÈO‘/ìZS†ÎÔÔNŠy1$²ÞÞ<²\y±€gD=T1͹±¤®lQË™¼m] Y!ÂÖp Æ%Œ±Á„×Èz33H"÷'¶`B9e¾,¹§bŠÍËꇳoªIa|n\4—«ªæåůÓ›$™®E™¹›óï™ÙÁøA«0§/rÝŒægÌaè¨ÿ,¬|˜²DIòZ= Ù„ôžUCMlˆ¦„¯³½°•e1êü‰$®{Ç‘æåâ âQ"µäzŽ,v ÔºœnÉÈLLº9Q3Eý2çäuTL½·zy+’ð‘à@Ñ4©U4æ½í_•ÍWS½‘Ù®MG¦k­þÊeê绯•žy·>¹çòëåyüœÕ=rª¹ªú8…caù‡¤lÈææöŒøOÞ\ëbé&ÞîÐÑ’lØ”ñd$Ú{ SB=ŒL“-Ìϰp”ŽCXJkù$Ös9ˆ¹:ÁˆñÑo¼”S0-%uE\E^$rÂË!\G£Í[Éb8m6¨ÔyIÃ×Z=ªõÓ–^F”F9™§¶T#^«ŸTUÑò¾²ÖÀv g‰emÍ|m¢O¯‡¸ Ñ%XŽ•,õ´´½áµžÆi2ÈO‘i°4"Ÿk Ö7Miä²1mîXO£”õ•:dǰ¥&Þ • œ±E1…÷Œ ¸‡4YQL9¤Ç+Á"<€½€ÃVF Ò£s^7µÕG"/Ø–vÃk ¦x3+¹Ic{ãXBÜ("¸üŒðɉ̠);<ÀQBF*úæÎ¾›Ë¡”¬‡CyæN0†¤PÅŽ4U_•cŽU@¼¡I2…b©ë«”ÔXm_!ŠMŒ·êMÙ$Wí±Å!¶#³âq£4†#…;:Õ&7§‹m íž¾O’ªˆ¿¤r¦¦úQäLóTÉWW 4uÜϽÎDÖ7"yLËúÚõê™®¤T]ojµÞ»¿€N˜„¥ÃÛ q%È>Æ)C¿ª°£#Û)AD†ŠË7Df² ,!ƒØ„9S\Ö>ÆÉÁR¹¦±˜Œies¸hìƒ àÄxèÀ·Þ"L=îݸ©ªÜÝÛåvJûÍý;oßըܮ֠åÌïn.ÎÑx‚'*æ²wš‰çåÄG÷ä©–µb*wª/OJxð|y¢ÞæM°c5yKªªŸi^]B{»áÆ>…UvöŒÂï¾DŸ”aϵ «M2cŽEE`…UQ)À˜¼ÈÏ*² IšV‰y’(ñ›”qûÇÚÓ?B9Ë8é ›G#"ÌW¨´ D¶yU17‹µ‘QÆb÷õöDòõ9ÝQPŠ©š.¿+--iF‰ÄAˆx‡ ¯V&B9ˆMÖ•:¹V ¶ç¹4h#Iu;Ç寰&›ÉÔ©–­O?’®ò²Ï6+¼‡;F^.þ;Ó44ó¬‘JXë "Ñg9—„ö'QWÆ.ʱÈÉ2D¯R…Íç ^’ñ#cb;Gm½¢0\µ–Qœˆg(ìý˜¥T™bL… Ñ WÉ_x¬#JÖbϱ³´3Õ¯ßlŠˆÑ¢F`ݸƒ@¼wrÔípž÷¸ Ñ%X­‹2T´´½†;ý‹©Âp÷^ª¹ª&·5›M^õFèNí>´Y»71/L²Ñí¹r¯Ù]Yø… ! £8†9ÌôB±å)HæŒcb+Þ÷#ZŠª‰Àm1’š "ˆ'G‘R²Ýê<à‘†ˆè‘IÚYLöY53!¼:ø‘`D½¨°À(±…¸G›`X&nï+ôµ5î{³s•~£°´Œ4Œã1_*XÜAo1K#O$Lpòr‚h¼±ùy”hçöES˜ÔÍÛ½‚&ï²1`Ã!Íp²A=¶~ñ>"ä4Ú™e "a£lG’ô•Zº°Ý¤ôé:iFFuÖ×¼Úón »{SÛ~hËk>íoiY¡<ù«ÛÝß–|rx¼i.1Lš­b°HJæ+Tz \Ù#Ýj9Q»rÅ™t¶b¸Ø9P¤Ç™º¶¤E0äš\¬vÙ„ç ú^×1Ú\¹9ªÕê‹ó÷g…ipøeÙ׆½_ii%üˆäK { •±‡–Ï&4ëgì˜BgŒÕ™ñ£ÿºÿ¬|hÁÿÀ.¿ë³¼\IÑ«cÖU£ïåL”ÌÛ.lÒ,ɤԈV¢‹k@óG¹x°vjæ"ÆW½¨¬·Õîͯw–Ôö®wTÍ}f1»s±l,êêÂÄsù†È§‹*\—‘ª4㼈€sJ÷¹ã„Ñ£q~CÂX/;D0Ù ÁËH!‰"¢‘â‘›¦!á¶> ID gtW¹e­äýäЉ“FJ4V IÊÁ1§™ܤ³éŽˆ0´òÄb¨Æ Vç´¾ÄÖH†Å<ÚõYš,ÞéË¥$ˆmB5®W5£ÅF¯Xè7QúúÅÏåˆç'ÐÉ­þV¯³Lf"còÚ“­Q©©®9Q¹{³Ò¤ó‚Â!8mq³´kÖΑ—ƒp{FäÙ$dMÆî7[3“´bò«8hœ•sÝYÉ• ¨bj{œšÛT8þB* »`ÖëÔýOwL6‹þüeÿô¥ããuçðx”¸&úØVèѧ„¯ÞÕ«=¾Î|ü¶ô¦½í¬õ·o_—£ã«¿‹­ ð×€Ó,\¯F(aÁ3Ö«\»®[‚­Fª4®.§·!«u¹Ÿ¯ƒÀü§ÁXuÎ =è'’ÑGRèyÚó4OsrW¦3XìÚ…"&¥kúê÷#ÑêhP•ÄsQ®M§%§‹mUÈõV‰¥ÔÆäDn¶¼Éek:HämïFS¸pµ··ðvá·K„Ây neMå̪¯\ºgÓ¢uwUÉ<”ëö¸tÍ­rn½?Nš²¯?Ec×Ow´Uò“&#z5¨Šç½}«ÔÍÎw£Ñ×$ÍQS¿ˆíÛ¹UQõgÉ<¢9Z™&K£,˜ˆŒWq×79<ëžKÓ»&«WN~R&¬óïs“§¡“¡jnçi ‘„RF´; ¹Š!dÇ ŒÃä0ù2÷‚1Jßùú«ÄAh†ÌKZáÈÒS¾Alé6#AFDP„+[&ž8è|Y FG)¤ú~‡ØüYøžhˆý9åçPkç^÷"éô§z'CЃˣI›‘½–]Zö䉖HÔÏÚçÁÔƒ³H$„Ñ¥Ùne›W5gµË£¾[Ðܺ§²éWeÑÌzd«æs´èL¼ë«O»—^?<÷Ñÿ¹d $ý+ÑëõÌÜ¿Q=Þî%VŽ%ÕDÙ²ì‘Q«l<Œƒ _7µ:;¡$zþ‘–½§R—ueµ¬åÜÐ:ÔØ~Q QŽ>#kØæ :HY± ¥ÓG ýBIv@IQ4–6ø%Ä8eE”È&9hò#™ˆ@œ¸e Fæ¼dœÇ±È檢¢ü…Œ¤|bªµ>…³ ,q£aç­S¹]lc|ÈòíÝ CA‚MŒŒÞr¸’Mï#m£)‡[&9ØíÕ&†X¡[ËŠ>Y±Œ42v•Ísä‘îcò* îfNòÄÿkži©Åîw“¥U4‘¦¤áöU±Ð rk•}Xÿ\4feäE_lày\·UbòÞL6¹ä#Ø1W<„#‘ƒÜÜ÷½êcŠç9Q¨Š«ÃO}¨h›ÍJ±3ïÒ3\s9<¯,­¹@âz*0BÚhƈÆiz4lAicŒÉ¬Ò=(ˆžOD™eÞÇ¢®~ŒœŒû9ðº†FõîVjú¾Ç­>Þ~ç ×,»õ#™üôn}Þn:iý»÷lü||P_ݳññí™ýÓxèŽ\—/‰¿/³§%úœ.BLòÕ¥¨ïGŸVKéÓŸ¹æá=£}=ïûËÏéá59îËÝÓö™§?s<òã&µè'ÍçV¸J™·åSUí—Û»Rõjy¹*¦­¦ª´¦ Ó?jݵÖÍ ô]^[ÜÝLÓ’£Ûw" :åÞì²Ôåï_ù“¿$DL×/ÓÜ^*gÓέƒ0Í9¢idňƒG¹îA£Þ¨ÄsÞänY¹Ë×çé–Ã=ì;q Yfü'ꪈ1D½‡ ŽªeƒA"`àl…Ë ¹²È´G³™±_!“$CW0O÷’öµöœ Ð5ëÓ±¥¬²ÜËK·3ìí-íÍ^Ç¡þÌ6?¢&¬¼´D\Ñé“Ñ3ô9;×Ò¼*Ç3†¾Rè'–ÌþU¨äÉÍjw*®ë²ôªyN&Ê4Êš¹ˆ]s{•ÿ£Tʯ~²9£B92MôDvLI3‹¶ÒµÁÅA›B;ÙZÅyÜÖN¤j½ŽF»Û5{¸^ÎüôV´e‘-ùË"9êö…3k™;K\ØŒkI¶.ãÚÇúÿhßîSjß°ž¾3¾U®#U}×£©—TcýÄ˯›€±Ò÷bæ©¥êï%sN©“—<Óªy¼oú Æw¦†¡~Í|Ÿ«Ê=þW¶i쪹­­þ[´a&þÎàw¶w·6·E¹§Nã3Ô†‹,*1ILixdG¨Ì„ˆÒÂ#\ kØö«\ˆ¨©ë“tC&œôî1¯Ë>üµ"åžIŸÐáZ±‚ˆ¿¤FG3K“ê/^îî;¼_š׆(ö¤ßé—ʘüÃdöupvÑÒÏHŒþiâåö«Á3D賟wäRŒ°wñMí|Æ;þ ZÊÕ}Ô‰Ó ëËXÁ§*C…"8E`{XyQJÏy(6{¼„سvµmîr§aöõé~z4êÐý9ç¥{¸öÜwñ߯—£^ÕïkÑÕëšt^韺;¦^B¸IýÈÜÖç׿,ûºôNƒÔNäsÞüº""7qÎTj"tjtO2|;'µ¯b÷µÈŽj书h½%ëÆ± ­wé•\÷'EO%^®V抨ºrÕçÏŽþ;ø…J%"äÜœaêÎ5x|¹fÜ@H`ˆ¬ö¯0ö4ÑBED/Ïåû4™"ÝÕ"±Êó2ÝÏ4ç"´\6Î$ql‘ã ÏS#›$ß«ÃõCÜk00Á›Lñ‹qÞË*O.#™á… .iØrñc¹ªÑ¯Øz°ADŠºt±…Bû[7m›i!¯4‚oL#5 ß É;AH±@6|ƒ0ï-§²è§Ýs›ÙïöüôƒËrûIµÊz›ÝÞß&ÿ9£h<¾£ûÉ/nþ¢LŠk"׬WD”dŸXcR:U!Ž@d>Õ—^Û.¹¬¯I&ŒÒÀªók–Te®Â°œätbdÏ#'Gް<™PãÇcÙñEkÄâ'•ÇüwñßðÞþ;øöümSA!…¯lÓ‰ì5ñ—PP›²ßä9ád™ñA½5@ª@Æ"'¬_f’m/°°{Q§šv¢äª™»j8µ9±bµÎ`ç*¸² "Aþ~ð®( _þyAc;èXRÅåœo÷xÛàú‰füäÏ„ú²´Wx–;9/tq°Ä¦Ã›XDÔ fYC˜]e”àÄx›ÈÉ[(ÎùNå¹M‹ÒÒíooêõ6áÞg^Ðrç;/œÙÒ¼¾ÿ/º}­â{Éâš6°É*¿ØÄV³—t{šàCŒÁ9¤S0”2Ôíp˜Æ°‘”d*¼[ Àsfê¶QXضhFÑ„E˜&¡°5M°Kæ"*Œ;‘È‚b"¿ÞSF4l[–5èBîû+Ö†¡ÂùJÉR³'\»•%±àÄÉ4ú¬ZG<[¹¶0š–,òpˆc­ÒT \BG;^„‚f¸f FåaQ¿'Œƒz+^Ç¢9®EEDTãÛqßÇüwñßÇüwñßÇü{n¶Ë°jW cË+DŽkŽvè4sØÕz¦”sÚ™æäá[4pé€ÒYRÃ(¯ܻϊçÊi7=©R!4ŽxÚÂå¸ñM¡äÞÊUd1«:Dä¯#ô .l¸’ÆRGÉì`™hðâ‹VÜh¡p[ÜGèšÁ³Yç»KSSÜç/UUùýÄá`áºEtFÞG,ÆçËv1Y>i"½g†ajÃ>\Äfç4èå(£œÏO^ËkHÆõ/‡Ì)RHøÑÍ ÖÌŽhôIZ†P”næmÈòѰZ؇åk J|ƒcqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjÈ›6AæL˜rÊ—.QI"L©2âžDƒ•Î)Žb¹Ä)Hç„sž÷+•WÞR]aæ˜#¾ÃócƄձçZA<[©F4pÑjÁrðI“¡ÇÉŽ"¡% ëthó"—NìiA€CÚFk Zñ¿A×·SWKÚ×'TEâAV°Ï z7k¤J„ØîÚA0±á„É\Â3$&K â!Q^q^MmJËÛX§ÜEq'Ž%€”Z]›ã«{H¯Ð¨U;Úk›´åzD+ãxÌQ¹¤w­­ÃtÍ ¬- á…dLI&Lƒ‘u*,PšIPL,‡°JÈÀ<‡ /­Ã”í3kêÂádO ¯)‰&Lƒ‘Q¨¦•(Æ’T*²0£ >AÇSb0)ª‡NæÈi4ˆl!ÐM{Pd·ÅÌäŠår’Z'”f^ûÊ`™‘X¸‚ Sí{˜‘ïŸØsˆ2 ÛÉbrFr¹XÉ Š3 'ûɶÐc™³ˆ©áL!Ìß| UG‹¨&5v ë<€©ajî`dÇ}kïîc›…›Ñ&FŽ9µ‚1]\›’†kÙ°³ HkÛ˜—VBä,1Nóec;¥”Xûe]ØU5Qg›u fÁî«Y¶B0¥æu„`Ná{Ê\Cš,¸¦˜Ò£à‘@„ Àa«HiQ¹¯ÚŽj£“> Z×—˜g -„í”[Ðæ’ch쇸1ûfÊÌô‘r*'¼•uà¢îÈÃ×Þ•¿£”©¶Ä“ì.3}ûFQɤ‹-CÛÍ»ÖÅÅ·ðBì!\b¨#OÞÌG\Äfç4èå(£œÏHõYL,o‚oí"ŒkÈCÒW-!ÜlË# “†šdyž%*-|¶ "DbÅŠÇ8˜ñã…ˆ0€4b†ÖŒbZÆ1¨Ö¢""|‹áéýà°÷—ÂFÿð^ëÞVÊåC±co"[ì#BåJêñ5‘ªâ™ïy M±0³¶Uê2¬æÆŽé k§Lù}n~Q{ËàBÅ9£Ø»ÇqW…î2Ò4I`W Zå ¨‡4Y"UÐxæ(JŽÕ÷ªt 0!Ä”Ôó\V‘Ä`²mû_XF5‡Y”qç¦,I A¡\3 ÞZŠÿ—æûæ®ß”ÝØæ»2p&òûûfÙÞÙÛÝÙ.Þ­{oËJûÕQý=V}àÄÞòëïWàîd°äÊ’p¯Þ(õX3s:{.ö}/'³žÿoÀIÜÏ1º›\§©½­‚oóš÷CËé?¼²ñOC ç$JJºúˆ¤’æ>I#VÄ0>CÄ0‰ÇpÂÕ+†1^®V É©ïSGôõY÷ƒ{˯½^ •(;§¥AeZý³–š[˜tï6‘½Œ6uÖÓãí¥oî£â ï-‚!LŽ påã 5TY"aãI"ê@ Ž€a¹Ã(ˆ×0Œs˜ö«USÞ¯B–óŒAÃsîèîH²póþ¤[°Y•€¦£PŒâ°D \Ã3Þ[B”óŒaµ%»]ÌiNƒ.ú¤[°Iu –£QïŒâ´D †g½V"üÏ'ÛôVô¼æÏ1Êv¤ yž_tûû»;áÝÓ£tyêOyhsyS”—W;[;œæðG‡¹m{£åôöï7½¤ùò»I¿¼z¼E‡yžs°/méyÍž_›ì¹ò ó<¾éö7ö7vw͵«Fé2Ô¾ò¸Ãs:{.Ž 7)³žÿoOY¼Îþêmò¾§6övI¿ÎkÝ/¤þõxò3ÍïÞ–ëwgcOª@‡rÚ7MŸ'Úœžö¤æ69 nìÞW_5çYvXˆ5œ>Y±©+cÌŠñ1…C˜‚cd9æ{ÁFAŒNa\oz·MÎââ7Mq5¥pÜ1I æÐ5‘Qƒc˜‡GŽi\bs$ô" ýåh¥EÙîgßXÙ?p¯æ&Šâe; ¤{•uTû`h„»ªÅ9LB{Õà¡Wô‚®}°â¹Rêk¥ÏhÿÝ©5Ñ _ü(hÃüöïyUãQž+fVáÚ€YBŽ‘¶ÅmÉöîs¡«£æ³|³Ê’'‘%É!d©Jâ©ïW2w3±ênö’ëkgwœß10ï-¯t|¾žßç7´Ÿ>S—ÚMýàûÊaü=Ìò}½ySKÍìó¯jOg—ÝþÆþîÎðw4èÝz“Þ³T:ìÊl7g"©%Òd[ÖÇu+cФ‰m´8DVkIDkcF^ûÊaçò Ÿ6—“ÒBF{"4E¯žÑH\Èx׳jc°’cIQMb1±žpûÖâ¬? ç,:—“ÙÏ·à$îg˜ÝM®SÔÞÖÎÁ7ùÍ{¡åôŸÞIxÃØ{™ç;ަ›œÙåù®Ë3ËîŸccwgxÛz´n“-Kï[ ó<¦Ån·vwõz›0q-£t9s—Éïj^_˜Ú>ÖÉ=ä°$g”Ù½ÎîÎþ¯Sa6"å´n‡.s²ù=íKËïóGÚÙ'½~ Âò÷ÜZ;Y•í<ˆd€I±‚g$+Ä#ÊáÎÅ„\Ša¾4‘G8œÂ¿ÞGâ÷)ÇHpØÐÉËN“g2=œ½©êö‹~¨U0ùˆlI·qÄ|ví$¯zö] S¶1M|âÉ;>[:Ô},ˆp ЋËWA§“*;‹"@K`†{˜ QDÏybHaÇ3È“Š¤ˆ¦Œq°vL*Ÿc&Cª5S\²E&L†™Bï#ûׯĬ`fµ\bšK Ù…Tر@4tcÖn¢çIkQ¡HØÇ=ñå{ÈSáøO¦^Z×SÄ$§‘‡&Î`aò!­Jf¸®JF¬Ýä­u=hyjê˜1+`GÜ)¶!AŽ8±Cºw”åÚ˜ÍÃ…~Zˆ÷½UËï_ˆ0¼½†Šòªe{O"çŽ“É Å±ñ4§¬™±a"„Œ“DÀV°¬‘ lsÙ å‹.$¡<˜²c‘Â+Œ!IÈÂY¼àµ|¥’™Œò¯ ÚÍh@BÆi1Ú ~ï+=€Y˜ÂÚAZaKÉÙe=T(²€Dl`œ6m¾×FkÔ±¦Çß÷1‘â{ØÓb¨ì9 „­\)hÓF`Ôb^!åED‘ í¶‡E;b‘Tc™(†ŽA5OÞ:¾š°<Í´è••ñ÷ù³¤,Pîâ·NV3pÄ™ž¢=ŒErSaøO9aÑÕWSÄ$§ òI² aò!„N;„¸®D7\¬“SÞÇay{ åTÊöžD1Ï)& ’‹bâiOY3bÂ.E &0ˆ#€­aYï#O‰Ì×`È-ž'=a< Ĉ±éRDY,)Ë´[YÃövp«©¼ñ5T@ Ø•ñ¬äKˆ‰4PE³‡`:豚Q‚¡+Øó¾Fò7Þ6¦j  oŒYK ê±§Çai 4ü¤Y;k">)Ý$q­æÜ>!ßCU}ìàbÑŸAðTïe ɤG¬Är+«dm±ŠòΈ©ÜRbÇd.ÒWb{Æa,4v€°çÛ ¶Ai1Ç"¦°eµ·ŠÓÃNdg•Y\x®„¼ÉœˆÍÎ@ýí,iìƒÌ×[A—[>>áC¿ trE”Ðôâº$.Ðí äˆ,½ây1š©ð?+to+-ë·ž§c{ÈÒ‡·*4‹æŠ\Gv7gÎ݃5{Ü’ò4ÓãŽjè>V{7l ýQFöY’erT˜÷ÎHížÏ‚-º÷é÷‡¨£Íõ]b/+VWvôo"dè¿™‘CŸz [ogöƒDÂK.~÷6ôqÙ®â&›¬;åiÎî¼fÙå̃óN)¦SïN+¢BíÐpžH‚ËÞw“ªŸò·Fò²Þ»y êv7±L({r£H¸Þh¥Äwcv|ámØ3W½Ù/!³M>8殃åg³vÂÕoe™&Q7%Iq¼áDˆÞÙìø"Û¯~ŸxHð¡G<É“(±"E$I•&A GŽ5Å1ÌW4bÚâŽkÕr¢qQG!š.%êºÄ^V¬®ìèÞDÉÑ3"†>ô¶$ÞÏ퉄–\ýîï°œ÷mê €ÉüœÑ=’«gíLGÈìûE›Ê¬‘ ^Ç,uP[{ òÖ53¥Öϸ#lMƒ ‘et( ´q=›!üµ ïb£—Þ w“ªŸò·Fò²Þ»y êv7±L({r£H¸Þh¥Äwcv|ámØ3W½íg„ª¸¿íTx§`?G±.$rð¿d¥›ac;ÿ£UÑßï]OZfÆÚtJØ÷ù³¤,Pîâ·NV3pÄ™ž¢=ŒErRá 289«¹`AªO¼™‘l¤o¶$ÊË”âËŽ’ÙQ¾1ÜçGÏÞúÆžÈ<Íu´u³ãî;ð§G$YAÝÄqn€¯fàH2³=C{ˆä²Â¶Dæ¹]©,›DXöµ’™¹tv?_cBYQãYÅs%rªgûÀ¿Â•£tE…Ú8b;Å4E<Ò ‘lo]@Šx Šy´¡nV<ÒÙn$)UqýïÖòŽ«›Æ8olÑy8Û¶vÔšÉÏÒ·)ߨßuÄ(§Ëæ"H¯©Œ’.»ïW†*utÃÖ3D:z†˜L°¸”מ(¶ ˆšš2J޳$º=|w¬É‘†øTPYSX t]±5{œç=\SÅsÏ*QÞY2䔲d”² B;ßo(ê¹L‰6Í“µYSw œý+r}ý‡\AŠN^\Šú˜Ë”û_?ì¹·ˆUø˜™,¯‰$éª$1âá²$Í% ÂVów Xjë¶Žttð%¯¾ ¦·³GWM(A)íÚ²¾â+Xx¥ß‚RjpÇ*:LŒéò°æIíðÕÀ¶¬ig Œ™!‚6Ó½Šd^h1ŽH3€£›CÀ.fÁ!­F¿?ÄÄ—±' ác~è’KúÜÀ3âW±Éµ  ¬w/elB8o­*ºD+r>ø~®éëaH/íD|Ý‘KÂ0Û:|½°ªΩ9‰8: ç„K »´%¶¦+>"a¼7™'2¤Wt!¹‘ee!¬'-6ã5¿A R0á†Lé1bš« Ñ0í¬¨Ä”e‘$Ä1Ë.\©TkTó&H‘(­Ãd3‡š¢@c."LÒPœ%o7pÁņ®±{aHçGOZûââ //a¢¼ª™^ÓȆ9ã…$ÁrB±lB|7Çx…&ºž´<µuL•°#îÛ ÇX¡Ý;ÊríLfáˆB¿-D{Þªå÷È•á/×&!ÔØÊ²FèČᘧÅh{J„­b^$PÈ¡È[É,†èw§|ûUáŠ]0ãuŒÑ$ž¡¦,.%5çŠ-ˆ"&¦Œ’£¬É._ë2da¾« Ñ0í¬¨Ä”e‘$Ä1Ë.\©TkTó&H‘(­Ãd3‡¥!NŽŽX(b8¯J¨n¥C,\ÍM 'Ê·÷Í—†ñ$Nf œˆ"Z9µÓF×¶=•l‡0œ´èÛÐýDCC˜0dÊŠixoDå§FÈ‚(ÕÄ…cŽ{cÙVÈsÌÁ“¶ýÐ2ˆ£49:4¨¡ùñ‹á/Wf)ÐØ6²xFØÃŒÑ„ Åj{Šc˜®zQ¤ ÇQÇKÈ̘é”ó û纞ἴèÛ¦£¼šI´ÓHÖ¢½ˆ®3NØÙeZò SD1¹¤:4 ðçÑ^À=eµaÖ<ØR7L‘ís\ÅpŒ ÌxÍš!¶HI<¨ã6ž4æ5¢&°×dŽÑTF` f;8ú(A¨+1}`ÚK·5vÊ<Ü^ǸÚkŠj£ÏpÈÖMD’¾l&e°¯³ŸE{õ–Õ‡XóaHDÜ2GµÍsÂ0 '0ñeå.1E&1K£#¾{T„SÖa õ·wmjn™4½Oº×Ö¦˜âÌ,jˆÅdÙ¬) __gŠŠ+*k‘áBŽ‹¶!æ¯sœç«Šc˜®yåJ;Ë&\’–L’–AHG{édXÛXÒ– ‡áùÀåØ[ ¦’C0ì÷H,` ã«›ò$ ±æg©¶pì$B›ðæC9bˉ(D&,˜äp@ Ö”' Zá”DkH25Ì{QÈ©óØxî“Ùør“”>#°ijPRÜ~Rh ¯TëRSY(¢|*ñÒ¤$ƒ6%u„ *(¬©¬G… :.؇š½Îsž®)Žb¹ç•(ï,™rJY2JY!ï¨\M†Dxê[3xئ4q£G i­mB&´Uv…sFá´uv„H) m4ˆScžÈg,Yq%‘äÅ“ŽãÈZÒ„á+\2ˆiF¹j9>z›ONÞZ m£^^N$*hDs‘ôG™'lŒ­­aY¥âFƒ|øq0Þ‰ËA™ R+I6ÆiÆÈ²²Ö™'mšß b†pà h±Cï­:ÖMŽ”å/QNØÓÖÈÀB¼Š%pŒ ÍŒ¶ƒŒûxcA&A€•2'Ñ^À=eµaÖ<ØR7L‘ís\ÅpŒ ÌŠöë-«±æÂ‰¸"dkšæ+„`NaâÊË\bŠLb–9FG|òÄ·¹aðÎ߈ò˘G·¹€xÜâ ż7‰"rÓ£dAjâB±„G=±ì«d9ƒæ`ÉÛ~‡èDQšÀÆTPüñ‹øJ©<:øg^ÈÂV±IMœ˜äVó·ðd1¥ PJÕåªä¤¸#w¦ )a¼÷Ý—†ñ$Nf œˆ"Z9µÓF×¶=•l‡0œ´èÛÐýDCC˜0dÊŠ`>ÍAiC`s†³W´Éäa ¡…b·Ue©a‰&òjI1ˆ5;`XX,ÎóÁ(ç™2aÅ$H¢$‰2¤È#DñÀ&¸¦9ŠæŒB\BÍc®TN‹±êAˆ#òò(é@Nn…̳§•FÐL½†w8[dÖV” ce„²@“Wï¿>Šö,êlÀ±æÂ‹¶Qækšæ+J„­aâÊÅ&$‘ LbŠ@†FŸàè3­°\žbI@È7 lˆ’¤ zµ rÑ)bÝW•ÖÉ’K"Ï·ùÞ>¨ub] ËÁ‹²'È ^jaz žH"|ÒmÖºAÄÅÕÄY¢Î:@›½U;£@Y£ Ž)U¢&º2Z3-æDýd‡zÔÇ÷ⓈüGÛ±‘;zv|ˆQ+);Lsðédr ­åÏ»,õ³e¬'G9GTJöA‡U2D)±Ïd3–,¸’„HòbÉŽGñä­iBp•®DF´ƒ#\ǵŠŸ;„­Âµ¼×+Ë:Ê|‚²-eTyR ‘:Q?u3aÅd«91âÌ$2¹S#ONÞft£^^MÛ™£k‘ôG–ƒpŒ­­a(B!âI&|ùžü“­aØé@Rõí=a Œ+È¢WÀ0œØËh8Ï·†8ð4d S µž¬ð܇8¡X´fuEÀã éTöÅ8R¢n™0ÖC#ØG‡1 Ÿ;=±ˆ]; áVrEƒArYâ—”©J)[L×^,BQË…Ì3aöFOl!S᪈4µÂм¼4[ÅdpÅæ¦©çN #’'Í!æÉÚk¤¯M^üï¢ÅU@·¬qÃ)Wœ$ ˜êª)eÄ,yÎqâÅ1¤E#IÄIvôÌ>&ÂòÞ)pÂiôМRbH ŒÑe ÷5×9!ó[NI± /ΰkië§[XÉÜåàVÄ‘:iöDó—f,Q”åÚˆbhbèÞGdÆ9S·<'ǃqb¼‘«pØdõ•Žo/1ïºxöAm9‡G@-kVnåÙ%JK¦N!ïÕ'x< €ÁöL/,xt—r#í4<‹˜Hñh'+L'{ «,%¤7Éì²ÊÖDú+ج¶¬:Ç› B&à‰’=®k˜®€a9‡‹(,iqŠ)1ŠXåó¦ÞÉÉáøó…ãÊÑÉWj¤ ŠÛN`™Aƒ«h² v”ŠØ“59|9_¹8œÊJÄM‹'L’„®ŠkE·|´FŽAF…ª3%œIïØ¬Kèègæ+­kÞöõ„r™l9&([„6†lYäF:4'ÚIàÉŒéÛxqÛ¯$©)ð£‰&¶qÞ1Ã^Ä#~šðŒYi¾ÊÀÑålüè¶žºuµŒÎ^lI¦ŸdO9vbÅN] †&†. ävLc•iáIüì§í>>©°(áE„íÑÞXÅ`%p%4†–h¡µèNÒ·‹5ÀxP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5=ûäB›!Ìbˉ(C‘Tip@ ×À0œá”Dk†A¹Ì{Uª©Ä»ßí³.ApÇT¨»–ù<Ê6¾Aå4Xxê"I"±‹FåetaŠŽ;%Î!iñ-Dê[k^^p-á2AâóPËÔ ñŽÈóáð¤í9ÑÎV&¯œæÚLw©8í¥´O›d).<ª:§r¡Úájži°aRÔ•ç°4IQ†‚à1À@K»•ðeäôQÄiù‹"¦èÁ(°cË-t‡PÉhãÆ¯Žç/¿›`bÊ7@|»Î׊l=eŒbòQ^ þañ#$®JP9± 't ᬹ¸ ö–ÞOAˆF(ÓH!B{Š1^ÅÛƒ&t™Ãhá†M],kZdF·ßÙ°1e   >]çkÅ6²Æ1y (¯0ø‘’W%(Ø„€“ºpÕÖÞO;W3uÒ©e6"bÁ ¦t€KûǦ¤80"Y±Æ$g¾DÈ…69á̆rÅ—P‰LY1Èá<€­(NµÃ(ˆÖdk˜ö£‘SçÐ0 룋.aàk ±I0¹û)Ou0È’R/;(ÙD ºuhÖ-–4?ªû‘ì›ÒøØf†òGÑÊæ’®ùy@”Û'†²Ê¹˜tdn|G… 8!ÆE‰(‡4XÑÆÑ

p Ðκ8²æ°P¡ë“ Ÿ²”ðWWó ‰%"ó²Í”JÛ§VY;Â-Ÿª ^Wæ)eÁ¤gçÀüg”K‹ C|)å[EÊK c›´â»7¶žº MtmÎ^lHðax¯9vbÅ€-Ó”†&†&²‘ävo{•}ÿTXž”&4 —q~¼€ˆ9m/d$Ý "–t‰b®œ“*-Zy5òÔâU– ?ªúaïÒÈØšvó§ÑÊæ‘nùx ŠÚ׆ÎÊ|¸xtcn|H…69á̆rÅ—P‰LY1Èá<€­(NµÃ(ˆÖdk˜ö£‘Sæò RžD6.îWÀtp §æ,Š›D&.ÀêZæžž R_ìš#ÏŽÖ³¤$¯‘Ø|™Å×2)E%ðÄÚzè55Ñ·9x±#Á„ â¼åÙ‹b·NRššÊG‘Ù½îUþÀ·aš«r¸Š“ËfÜ1£ÉY‚ê"Ƕ†â=‹4#"@È× IØIsp#í-¼ŸƒŒQ¦B„÷b½‹·Lé3†Ñà šºxC”æì‡Ê¸òyLQ‡íhÊãÌŽXC0cM$0rÝ]5[ÉÙ€N(—š¯<˜Ï€Q•Â8žÿ›(³jOƒêFt»,MD 90‘7Û¬œãòÒœx¯ ¡TI$cÄ}Äy V£&^ÕÅÃu{=ÔQ²9ó‚øîIŠMȲDÓvÄ‹2â ug“ÈlxP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5?°Õ·Ðm«¤íó,¢Gû%aŽPÊíC0õ±tl#r{©.~<ìc''4P9Ø}²5òeHZY #‹t|@C¬¶«¬„ÑÅtx(Á2_!” ÄðÄ”²p¤‡Ù‘„<•Œ‘YTpA¾”q®ÙÌèURc 1PΑ¤2ùš‚§ÃU®¬K¡yx qvDù‹ÍL/@A‚3É$Oš@Bº×H8˜º¸dï¶~§âù_˜T¥‰:íÿŸðMžRéëô‘¦•mï7ÅŽnÌ”ÜÛÔþ‚–13soç„vò %HKY qáó€k÷áÖr5ˆé¹x d’±ßØöâ¬3UnW1RycìÛ†4y+0QâÝDXöÐÀ’G¸Qf„dCHáI; .nÄ}›¹“ãÐb–L!”³^âŒW±w'Fƒ 8a“Wq4…ŒœÝ‘9§4‚ÛaiÒkÚ$[ŠTKªÎJ³'ÊI o¦ À©(/¼XWGB¹ÁcãJ`>g¶žºuµŒÎ^lI¦ŸdO9vbÅN] †&†. ävLc•"Ú<!\^Î2’êBÍð¦æó¾5<dãŽ5máh‹ÌQ\A=²-£ÎÅö"ìã).¤(«6o;ãSÀå€H3ލãVÞô\¸…Ä+)Òƒ[O]¦º6ç/¶$x0¼Wœ»1bŒ@éÊCCYHò;7½Ê¿Ø öâ¬3UnW1RycìÛ†4y+0QâÝDXöÐÀ’G¸Qf„dCHáI; 6f Å'¦Á$±(î!-œfÏq$”Yr)QæCªFº,FºD »ã%E‘HI¥õ7Ûðaòÿá©A´æù†üS˜1ö }™˜­ÚÙ<ž°GͬˆScžÈg,Yq%‘äÅ“ŽãÈZÒ„á+\2ˆiF¹j9>d1¸W ÚÛ‰Ç4Už(û5“2L,yWRÖ=L3¤w í©¡!ÑÆ6¸²@Â2F*¹ªÂB äˆ&ú¡· ‘ÉARD:–‚Dt$¦È‹{0ƒEŽEiHtˆ Ñçbûvq”—RUŒ› 7ñ©àrÀ$ÇTq«o z.\BŠâŽ”éA­§®ƒS]s—[<@Þ+Î]˜±F tå!‰¡‰¬¤y›Þå_ìd+új«Èb;e%ÅtK8Ã’ÁLÀM „Ó´F0ÚVµÑ”ŒGi{‘y¸ðmpÁ\y’$· ذ1¥YM<•¬[xpAÈD‡ Ñ‚3<[Nã0 u9ª³˜§kH Šytq›lŠò²\)x„¤;Jccº†á¼„YLpš#çÁó­"¶sà†Vpoù¼·Ôs´‡¹Œ FHŸ[kp!”ØòŒÀ)«n+§TØÆÛæ YD‘h7„Ëz,¡ˆâÝFaëbkFæÇµWä÷͠¸’òŽè¤—OGggrX1•ñÞxQL&¢0Há9ÈFŒ£z·KÚ«¦ì5XN ¦=…”[9&Œb=%º%lDsÂ5òöjG …Å+JÈ,aâ;ÜBqNaö Ž-d˜LÙw!2?浊ï=‡l‰P® c™¬Ž‘Nh‚u. ¢Á9–Q¦ÎŒ·Vq&‹gdÐí.ŸacañÄXã(B„t€±‡)Hÿì5mÅtjé;|Ä (‘çB>ÉXqoE”2€»GÌ=l]ܞƪ2\Ü TŒ ŽÖÓ’ÃFQ´„"9ð°üÊÈe>¢¹(€t—'•ÂXÃ2Ÿâ¸6+·ËʲZ‹hBȬRï@‹[JsëcÑeh¯a¼Á¸ch1n³† kˆ{€ÙÑÉlÂ#ÄÈ£â íé¢#ˆò b±¢iMbÿR}¡¿›w5WoM/žqyŠèøîdó#äH}šË3kyÊvDz¸Á˜®¦º6ß1>ËÛÁ„ â°Þ•*€-Ó”a·¦²‘ƒno{Q~D m=tëk;œ¼ Ø’'M>ÈžrìÅŠ2œ»@ M ]Èì˜Ç*>$,‰QÒëˆÃÑ”m Æ­dÜ@µÊ}Ej¶(Îé/¬„=’yètXocgk¶®Â~sww_-êtwúy}¶ïsœ¦{âå÷ò>Ìb\r—}g[GNICXÍ’¹ŠÜùpÜÓȆT‘#¸pä‘[ÊÎQÒy­Ä˜„N„ØW, aÄÒS‡áQÌS±¬pšÒK$m³_Å@PQðØKXt•|ŠÈöVñä¶J̆ÝY¶e³BëŠRMq"£8î‚3û  þšªòŽÙC‰q]Î0ä°d$0Ba4íŒ6•­B4e#Ú^äVD›€pØD3¶C]O˜zJ‘£ ѯ›‡Ö²aA¤®WE!ÝäA•âqB²@…O¦D9±q#t˜d ÜÆJŽÙ¶³!¸ñܨQ6\IQ”j9…¨nøùŽ¿Œè?êÏ1×ñýYããæ:þ3 ÿ«Å“>çjv×1ÌóÕ–:ôvpvv¶tê.½ÌÛ£ãæ:þ3 ÿ«<||Ç_Ætõg€Ê•#Ý[šël­áŠbxÛ¼úzª›Ù{ÚqòóÁ™DÄ.è$ybÁ qbœRÙW8Žtg$iÙ¦ÜH‡0 æ¢,°4êÄA9ÌXóa`<d3ŠTIqp½$y1dÇ#J Î(-(Nµ¤Fædk^Ç#‘ß—ÿÄ-!1 AaðQqÁ0@‘¡ÑP`p±áñ€ÿÚ?!þlÙfaeAµe]îþæš^)äÿwˆÀ*ºðf·ýŠq~—–7ÍÝÙ€ä\ÓO8”@¡ `÷À_ù·Ýâ52ô K>¡–T±¬X¢5±“rWb?•Á›¡P÷À_ø÷·Ýâ5"¬Ù\kÓ¿Çï« ü,üEìu—\²ñ3ˆL8Gÿ¼Wš|·õfîp2f¢¬ÆAÀÕ›‘s­‚fïYd³öž?üxö'v/ê’¢K¶àR¾ÎçÅOs0Ád¿ÿzyÉ¿Âvéæ·/d»B œ³s ¶EÓWUtׇvwßÒQŸüuÿ ’ögÄ镨þòcm*“Á_y°Ü©½ )K§9|ô f,'þ8I;qݺŠJþÍ:¨6¬¼àÓ['PŸÙ·tãíg`†à؉ÒÃIˆ3àKÙ«¦8gY;˜?T~ÜèÿãfëP?ÞX+ð^CS1¨ŠE³jHì‘‚ñÌ´k¾êÜks‡ÌS Ôgk§l4¯ ?Þ<ãä›< 'f¬ÿãm'žûQpÜ÷‘\àseÒXɪ{òŸ{üG} 0F”½ßãvŠ|v«¨Å¾ó•ð.R»OIùѵ¶Â:M”ònÛªºÏ\®Æª²èkw§ÕZ[QÿŽG«›«5ß>ÈKš‹D®¦@š•ñˆ\DPLˆÖ1„!]ñ-Wˆ<ˆar— RŒ*Äå º(u°ñ1¦É ¸@¬¹a‡êK^­¿X.Ò˜nìÑOþ>Ø "¶ªcJjwa<†Æ€‚)B:JàPIÎC(üzÁšÙ«[¨5 íðLZ´P]#”íPZ*lŠªÉFæÏ/[L®õU†>°ˆ/þÓGÔ{>U‡Ü‚z?ñì¾à#ǸH\Ãaµ»èeSzòŸpÐÔRÒÌ rKP,#ÿÇ„C[îˆËNʶ¾—´ ’×›âì­­@EFIskVÕìÜäÁÃå ‘º! cëÿǪ¥ÈÛ0KjÙãé¾kŒÑË¥ ;‹G4yòÆFàDKšœJÿñïûÝôÊd+€n[u‚j$ò‚iþ*b"$È‘ª•ÿǤǦڕ.u‚¬G›H¬Ê‘WGÜla—J[ áqy)À¶‚ÀN @-“šï 3´ã ­÷¤_ÃIà ë+”yA2 ÖÄòžXˆí,AGË®€ ÈëUMáh90¢€}¦¯ üãÆjs•ƒab”°Î{pÈYÐZš­’2»c*ñ1œÃÿ]µUjUR‡È«Ð'Yy“=Öð‘)Ua­Ãm‰¹ ñ£vr•“‡½ ¶B˜¢™Õ~ÀQEËßAJÝ3 "J‚JÙ(s±¼ª÷»ÒúÒ%üðÛ’Ò ´âJAÏ侯À¿1x Sš‹Ù¨ä åz¢Z ~À4ÒÊ%zzç=–ß3DxŽ]0ºWeÓ‹°žþYÉ<^Ìò˜øc o[<°Ëv´%6E Õd–D+t¥¡³… )CˆЏ¾ŸØ Mr~Éo|Rc®E±7W¦Ü‚z?_K1®BD)Nn„ÍÒ X 4¥—ÉA;—æ# Þ˜f¢8¦:¯ç…F@|Àf¬Ñû´æŒíJ|R˜ao¨.'Zë«?¯?¬åšE}IKÆ¡‘ÝîVÑ`%‚ñ‰VýpŒTÙõí]$CØçó¼+%àÑX¢˜ú|ÈVT‚òÏj@:*²¤y‰We0¼FT5é@7th§õáÍMÒ˜,’JG q¹…`ÚÚ¸+G(Úl¼ƒ|sCÿÏ3H`¬½rÞÏoY º0Ô ªÑ£*À;!t8mU¨°1I=DaëÄA{à  ]£~J»@,9]QÐ-ÜTLnÀÈ|š¸OIYåk›‚»*Žê²a‡Kn6²‚45¹$ƒˆÂ“õñM‘ªâ÷pG)‘5íG5[;˜îg{NX ]¬ûïhw† lŸÎé,n‘!ÕCâ}’±¼-ã9<¥• ;ËD8Û“ˆ0Ädå1…3ªý}”ÔUŸMv½äRè‹ÅwY| ~GÇÄ0ƒ˜7œ×3›¾;’Ú·ôŸx±ÖB¬CëØP+µ…‚ƒc9¥—špHsfê´¡A³¼B‘¤ß¯ˆÞ9Y"€Ö"è°«S äÐ…¤w 5WËÀfË ,Ùg¢A‡yÒY÷Ö¥þwˆP` P&¡2-˜ñô–žK°°4QÙÖyC´öJ¨§(23¾XÎV!úø¯Vé «/E°°Z]$.]ö–õ# ªPæÙiž.h]Èu#!ŒûhÎôÎâ 0j`Ê8OBÁå’ ca~Ê(SE‘ åå×€FÌ¥œz¿_îÓnUiµeè-¨ÕpzÉ Ùl†hp´¸‰JÖÂ…Zµn-ZæÎx1÷k®H"@ÎéÍ ïÕ‡QBz5L¸¢å ÈKr"„]àaŽ ‚$į‘ o¾¸â¶ßº]ˆ­Xî)?f·öÆ >PÌ?DqLu_Îê7ô‹QÍAP®˜ìU–ò‡¬2GìŒ)«öŒ¬ÏÛ¢uUù’boÉ«·mò˜Áˆ*·ùÜ…Ótz½7Gxp  Í>Úgì É,àbUÎæR|ˆ6Úª2®ÜÆQorƒ¡¦ótW40o<ØN­«ëÍéÿ;N‚=ƒÉ‡í-<$µæx»+kP!DV¿¯ˆ‘ºf‡i44›6\F‡‰3ùj‚)T‰Lst;5Ø“À»PA‡( ’ 8‡ù܈o|˜„˜ªÕw6zO(Ã#-¹rÞ @ ®Y`R€@Ø–MŒõ†Ám•­ö~¾ßI°°Z]$ H{»¥.Àæ5`Òé¬*é­éÐ1óÃb0âˆ>ÈH™=Û œ%ã4úéahòÐèhú°JÔeYVØ2õý~x þÔlú‡'".~wßíFžÖÐZÅ»§4ƒûþxîÓnUiµdÕ‚>JËf„í¡5jVd·„=„}ì «· Ú*qÁf«HS± ™É²ÌÖâØpÁ‡ë 3Cçe¿sä Šá°N±ãé¡GEä„è,nî«<ÊÔ ¿q&ÕŸ×ï6{ã›–vãÎÑ·äÕÛ¶ù Ðw‡XjÉüì’Æéa†-^G‰èX<¢Â ] î[”òÄ:—iÆ09j:Tl ‡¯ØÚmÊ­6¬¹¿¯ãT-RÂa2®Ü£+7VQŽéÜ4ToƒçŠJ.àbKÔ'77˜mó€¥§ºÊfÍIFêÆBTªR@Óԫÿ_" ×aSÜx.Bå“ÒR`s (Üó@7P³š7Šˆû#Šg«þwPTÄõá”xž§£€ZŠ*àÓšx¥ Ö |ÛÅ@0ÇHÜQ²ê#úþ1"Ȧ kQc<£#ÁŒ²’™z ²F-¤fÈÏz®µ*aAƒdJô ÖIÍ”&!n ¦ Π©m`@ê¡Ô‹zÉ l©¶#ur=Ý¢ìÔ¶p |Ú¢êêè¿ 0@0;•ñ·ÞÇó·¨l»Ì­Ž²7–-I>«d@ {ÓÙž^‹V€¶~ÀbÄgð%½l7£äh-QL8*E-–Ú³a6c•¼'=VÖW(<™P9àÄùÅ G•¡÷žçWÛô‡Ì×bC^ Â#ùM½õˆ ­`,°ºJ\èÖ­îRÁÃD³ h`ÎìÛšØ6°aòþwp: 1 1Q‹®ì<µîÒùý€åùÙmŸh-‘É/Má}R³A(Ø Ñ¹fÍýøÃ‡Ö)¼'§ùÛ`©®ÁŒl(‘ݳÂk°ÈËn\·‚ÑPàM!ÀßÜ‹©¦zh#Ùõ‘ý‡â²=¼KÂÂ,Jb´‡X 66Ø7€ðû‰iþvØ"kЧ›4*í9¡ÈI«t¶Š¢¨ M•¢0öF¹a¶ê´èÃÒÏI¬@óN2 y“bí³›HÞVb=—Uçl EâŒ=Ã…¤ ° .÷¡TF’›­Ú{#Mév­Â‚JFn¡“ö„-Ÿ†ïdÆ3=Ó AhÅ¡|õNþS¡>³l­Küíp¬áRåp˜'Y²8û«Ée¬lÞì˜('ê@ûïëçA_'aj’ %å ° –4ÆÈ¶diÐкºº/z&ϬüâêÐëOIüíÑ`òàòµŒÙÊ¥ ; @ûŸ°·ÛõZmY=EUÁ@Ýe…ƒ–9’l½í@yœ†*]îrQÓx²jÞi²ßXà ò¬>äÑüéé³ÌÒøjÎÃÊxovYlÖðZ…:M(*·J£À®*”?°5ž ¨ý TSX‚e|YÏ7Íd.ó(ÃoÌfŽ)±ƒÜ:Äýl2ȵ8åË—.\¹dWÑ^2Ä@ô ·ƒnÒ´•„Ìi.± 8aôG ±–Æ…ÀЊƒSP.‡¬—T?U—Èa†@E©ûm¾1»ÿ"»êïÉŸc§æŸÆ8')—þÁ"×Q¸Î,ß6A¿7ð¦7.ÛÆß”çƒ—ì—=wîèÛ¤¢O(’üfZ*Ô‚Lùh·sc¥põPäºÛ‹;ç ïdCZþß'H8 l=æ(6i˜Ž•~5%œá6"¾PŒ2-O“¶óÓ¸éÙÚù+k2 k#d¯„·ÒThö›KÀ`EdD2çn&ðHÁXƒ|;‚E[0ª¾êI“˜…˜{©1 0÷RIºþKÒÂ9?˜q$£O( †§ê ¥‚8¥ãÓÅaD’~Øé Nx@=Ú²d!«n ¡9¢úsÑfA^Ê,R ¿)÷ÿ° Z€ýY)ë9e}cŽgrì¬iƒ9ûñ‡_ÙvEõ÷óÁ·jÊ¡m7¬Š0¼ %ØÔ´ ¦v¨ò‡±54âU1úˆrÝEe?¶fÎT·ƒnÒ´•„í«qqÄ5¤ ˜é¡ºø$¼v•¤¬ þ€8®&¯ù?Ûj¡(À}÷PÖ8à‹£ýJIêð†XŽG<“óˆ~‘6Ì…="³šÍm]&3Y9¦6Ù…PZ òm|§£s|­ï³ösiWÏ1Ð4!É7Õ˜ºÄ`§£ó§šo`Ãû7š5µV·X(SòOî­6·`“ý(| ÛÇì1.þîö3‘ðmÚV’°Ë—À¬¨Ò±a;™˜„¨‚;I7èKð©è&e%7”Vz ™IMåÏÛusjë=ýxýüªR披7†ÓÙ6¾Sg~°T! sL‰o£^éjaF ÌTÁœÅ\<ÚFðÐ'ê$n›£Ð TŠ Œþc¢D‰$H‘"D‰$H‘"D‰$H‚¦…Lš÷f Ý'£Q(—-~¿·D©€q?‡Àͱ||q/à €‹P/à €‹SŽ\¾í´ìÚ›_Bùl0ȵ2ãå…I8,‘ù@h —°"m€1³ÐþDóó؄ơ¯0äçSf'~Ë à¡B{W˜Û:QwNQ`ȼ–ø‰ûQÌÖâ„ÚfŽ`†·0¬>Ó9DÛaÝÀÂj¸–áJ‚E¸:ŠH‚ü 4Í…‡œÌïãÁýZP‘!ö“6ÌØÌ¢Ô»DÝlÝAüE(=Ôµ’ûÏ mMxà¥:"³IFßO+g(¨pHcä ó3a˜»Ö«T·ÈÔ„²(âno]‡S© ÚÎ:‹“³˜hHÈa†@E¨à®¡Ò ýü¬ §Bj«o©‘SL»3ã2‹RÜ`„b¡*° æPˆ‘0RRׯmyjÍ @° (}­–6Δ]߬NQYÑ ¹Û‰x^ÀìÏ&øYYiôqàþ­(Hû I›flfQj]"n‚6nÀ þ"”ëOžà9Bœ<&Ô׎ S¢+?êãTxWmyl½€û´ò5Ä9ó<1]Í¢ÉK4Ф·á ÿ ’í*»¾Då3Ÿ‹>-W '°y€«¨ þtd¸GcÏF ú°(t¨¾lT,ŠÒɰ_”€œ Ž #4 à5°÷¾@ 2-@]gh„µéFM.(u¢Úò–‘V”.à8Î4ë x–ᓘóçòž‡xïdz!ûºM_­,‘ù@h ”Ž‚Ú ä;ˆNFÃâóÇ­‡¼Ý…”kab ²3Ebçjmæ õ,%Âk ؼÌÄ …”.m÷Œ¥IЖ Û…ÂS4ÈãûuOYÅð.‰šà¡å”I[c  $Óq 6†ê*ëp†·ƒnÒ´•„+% c¥0>¬1ÔèÙPDd Ñ3\#t Z$\œ‰ u:¶T³Ï#SHp0–E;XNÅæf!ÇÇ=ÏŸ×æR½/,Ö•·ä{ ä°Ã "ÔѯžÛ•°P4Ü­™±1Û.—¡¡­¡`¾C±–¥»ëœ3¶åTE?6f:†2ž‹ÔÌBˆVSÑz™ˆ@1B¢³ÿÿ³u¢„™ŒÏD /à €‹Ry6C_ç´ú¥Â;xJn™`,Y:`šCÇAiqP½äz¿ì>¸ïç²ÉH×$½òª›•] ~œÇ¨¡нEuÀB,"..t=§$æ› Éú‡àM¾û÷žO´ò}§“í=Iå{ôžW¿Iå~ÓË<²¾žÉ<ý'“í<Ÿby?©äþ´;«CÌždó%+[7>I˜tý¡Ñ ò„t4]9’°”ݬ…˜rZ^fø3—J…hÄ;Àd‰å0^®‰¿”&ŸÐeËÝÖ‰'#ü›Ë´;í¬;p•¤¬#8tzq¬ X¶‘/à €‹R«1àŠ¥†CN€$-•Á{ñVzRˆkZþE%FxÕ‹œ†&%<”_ 'BX/n>|ùvdu?iÖ|*ó™usLz¤[dÞ+”Ñ–-(’$¶Æ@I¦:¿:ºà-ÓÅçt Z$\œð>l#,RÓ€D_'lL×ÝÖ‰'#>_}Ïž¸Ë¤¾ÁD ؼÌÄ ø‡j©°WA|[Y•ZAãV 316”Sj,j<€fe °N˜§}t)lž†M_`/ ]Ö¤Hñ«0øó5I·8waj. `½¸S ¶b(•ÈÄÂÒ °–E|²$)z0^Y­ ‚“8-øðN.ª$xZر•ÿö¦)uú\P'ê!KÑ‚òÍ}„…%”l¾Lm]sïTÔ ¾xþe 'ñO—ßsú¶ÂþR¿œWáu„_óÌ ûñÛŒ´Õ‡g2êæ˜õH9ÑÁH4'ðD ókÂU… W(;Å£¡à]TðdÞ »JÒVà¶&k‚„IrXc ¸&àÛ´­%a*La±1,½Ý†"ü=Ñö„5º{X@Vúßx2D…/F Ë5\ŠÎ!óÖ³¼ñ´¹ñêû¿ÿð¹zWÃ;8/ýSIŽ.LÚÄ-ÁNiÏ |'BYË€‹pËÇBéJ|>ª²Ô!úV0€ž£jucTøa²usÜÍ9Ñêû¿ÿðªÌ›j¤à©·QäY0«´ ¶(È'f¬ßê~ áÄù#¦×å°B>`ªT¡G)R¥J”h‘"ThòlÙ“<]¦*ilèˆB ’\Ê5hίa`Mè F[¥ Pΰ¸U\nżPCƒ!KHÀPáiu’Åq^Ëaz­ÀûI³¢hØ]П~G‘ª4rœ(L.µ.ŽÁS[¡Aá¯iÚJÂLãæ!1¨kü^`Cõû“ê©ãUa¨ Òp u²ꪊ“jø0”š€Áa[¸>PŸŒˆ®Gš•ÛÕB@~o0!ú}Íõ\Jp/Ej-Ag.G7Pjä(P˜r5FŽBs… 0%ØókÂRñ\´4tL)wFOŠ3š«¡Ý†ðZ ëNpmO´§_{©¸]L|€6dZœQ£œáCL vÀE<ÚðJ5D–TÍò<Ô®Þª’£%<úcYƒ ÍAƒ½2LÈÄb‹Šüzs>åÚÙZªM»çW“ˆ('Ê`V9PðùC, Ç#ŠªM»çW“ˆ(›où×äâ ë”zü#ôLr'_– +ÉÅÆM&›E$¦Š;(PÐWÕ5ƒgEÚº¥òØajGŽÓå8)àófÀöhã9úK¡¡§Bw{E6‡£Nðšî‰q¼)ñkBD‡ØÞûqBȾz„™0t*ÿ#àÂPjj‡Ôk¼°”ñª°Ô†é8›où×äâ ë”zü#ôLr'_– +ÉÅÆM&›E$¤P5Ø¡!8]°O6¼38ùˆLjÚ^+–†Ž€)„K°6)æ×‡™ª4rœ(k„þ@ÂþtŠÿµþ¡÷¾³ʆ”… Ü­ùQƒ`¸ÃâÒ„‰°?eÇÝ*®ŸÝÆ6ü`”x Q‹ï|¸ÔÆ]ÛÏÃN£Ã¨eûôÁ/¥È= ßãåDŒpFdpuSb `¼xC^ý&u'¨œYÝxþe 'ñ V¹ÍeÓÛˆEÄU†sp¿£!P׿D IÔ™:Ãñ‚yR3ÿG'Pjä(PÓ +Qj9r2½¤fÈ©6ï^OD.!yÓ‡^!èëu‹ œ¶oÄAî‡xnü¿d8A"‘‹I«œ.ë¼·Yy8´J•¤-™Ð­Xc®“}<‰ï‹C;_°€Á²TQÍ«¯;(Pß·E}S\ùô0«j gdåa¤ØŒG+îüýÂ6„wyÓ)Ñå:0è‡D:aÓ˜O—G—GlO'ÚvÄíMG¢0à 0ôG§UèÎŒèÅ’“àYi‡Tæ½à'Dß(†<6oÐjú>{ß_X<1Q†üÜ¢Ìíü‘d¡Z^V…Ü[h 9´ýd9B¶êÖú TàcFÄ9%VKƒ‡ZdÄŸ±#E˜Ë¼]?8 Ÿ ÔQÍ«ªÈ$þ#Q$n‚¾|æ‘”@ý̘°“ÅéŸÂj4?W‘ÌÿÞ8xãètò9±ñwT„£õ_Ê™Ñ)Ó? Ð ¦0“†IÛ3¶glÎÙÑäûhòiòFa†aކ‡Bt'FttV|õ}߀øL|ŽðÈ$ÁÃçÿÙi‡Tæ½àñË÷iC›O7ðo–ów-ë|?B6È(ý·t¼Hõ}߀ø[Õc=Úéú5Hé‡TƽáºNœèNŸw:S¡::'NÑ:4vç©äâÿ}ç—K¦Ë,²Ë,²ÇG†‡K[CàYi‡Tæ½á½V3Ý ÎþQêû¿ÿð©u\ŠœŽ´ÙøE÷), ‰‘29'³Iß¾Sî™|}'Ýe‰ú8¯³;RÔšÝ%<§Btû©Ò9ÑÕ4IÁþYß~ß~tÙe–Ye–_U»¾Í.”CŽÏæµm@Á¡C€*KWÍ— GQÙŒºp"Ï]¨‡®hú0r ¥ïFÚ}©Ïóq«×ó-ë}‡¢9ÆÈ†ž™¹ežãlVùÈ_ñå„/ ÓÑtC¢è‡D:!Ó<“Ë<½ý4ùe<'—íþO/Ûü”ðž]>^þ“Ë<³Ë˜ôǧ¿¼eéLzcÓ˜ôÎŒèÎŒèÎŒè΄èN”éN”éÄ8Üã†ležÛb¶Bˆçóm‘ úJfi9âulÕ¥ ·ë9¿˜ý°›õk}Ø=ybµ¤™ˆSÁ*¦–®Nûúsc£Þ'Btu΄ìïúÔI$’M3¿wÃÝû©ßºû©ßºû¨ÇnïCÛºnî=»¨ÃÛ»nî=»üG·ˆÃ =»ÿc/ª«ý> ”ãy0ʧÄçW¯ó“Gã«â ÔŠ'{ùCm,ØÁ¿—óÖZaÅ9¯x^ck©×I!€ù3¡:s¡ßlèΟ’I$’IªïÝNÝÜ;ws¿u;÷S¿u;÷S¿uÝÔíÝÎÝÖ‡A†ÝÜa†aíßûc³¿óဠÿO\®UqP}yⵤŸ—ÄO¯»ðÿ¼TéDf<ÚZX‚Æà ¼YÙt6“L• Âåò!öpBÉ ³õ®‘×VÁŽAt÷G)Ð-À¨T’I$’ÝßïÝhíÝèïÝNýÔíÝhíÝðÝÜa†a†a‡ä@OÿŠq¤"j%:‡Žj(jZ! òÞ÷Qü@(ƒ#‹És‹!V£¡S`m|¿˜/Ü1-¾aº’¦æwªšÚ¹»ï¦±6q:S£«wwÛÃëÛßû¢I$»üÂ;wpàÝÖŽÝÜíÝÎÝÜíÝñ€Ã 0à 0à ?W}ùñ~µqs?÷Ž8pé碙Ðß(gŠÑ€T|ª)Ï#Û=ðŠå|}À'£ùqÓ’Qú«Ñ }r²ijçû¾ŠÄèNœèü·RH ‚;wpãÛº»©Ûº»©Ûº¶áPÃ,0à 0ÃÃWw}ùÎîûòáýèÎÞûûDNLD šZ¹»ïzÀ‡ÊJ?]x!B¿+F0y.3i*”4 ì)OÊsOtpùVr èþZxUÍPNœ£JBQú¯ô mbt4ú—OT ƒ·ˆAqÛ}»½·ø™e†Ye–Xa†Š*îï¿>*]+„,’Õ¨P. ÓÛjk…òhóòÕ ±M<©ÏÿËzÝO˜B`ÚRSSk§ñý ‚ ‚ ˆÎûO/õ;m§¶ú{íÃì²Ë,²Ë,²Ëñj ]Ý÷åÁV÷}÷ç©ô{￘˜;Ù¬NiµþZÖ}u©UJî|ÃÍ’ŠÄèMœqýý÷çÄAAšÞûp/õ<¿Ôï´òÿZ{ãöYe–Ye–Ye—äêªéUEÙß~ݽ÷íòãÁâðT€å^‚ºÀÊ…8-Õ”ÁÙØ/tìôƒ—òËŽ±†Pojæ —SW—”ÛÄèNœÚÄèNŒéΜéÎŒè÷ßü †Ñ ‚ èÐj»ï;âvÚwÚ_Á—ë;í§¾'mõÝ6Ye–Ye–Ye–_ƒEèk]. ºZ] Ñï¾ü:3§“ˆû:’ê»—È C†¦.Eªi)V¾M$óMÌØúÇHÄ‘‡²ê#û ÑÃ# ï Ãã à­nxÙ/Ëógxž,ŽOMôc#Ñž ÒÔRRµÃxøÞ›Os)b5Ñrmh¤Â.†°íÂV’°œA«¡C÷–ÚhÔÿ²yx`n”r=*¬fSEM¼it§Oîîûò〠$’I$Ó8?¾'}¾'ÿtÙe–Ye–Ye–_•ªª¯ý@vwß·g}ûVð…’BQú¯õ XÁcñÜ8Óо¡  ´*È_t‘=Ö@)A­“yÍ7¾{ýÿdjSêH.:Þ 3ôÊ]mœ¿Åq-€Ã¸H"ü©Qè ³ÄÙ—On!ѧÕ×¹jWoUN†:¬~µ³ãÉ–ÜX@UjÀ?xd,§œJœ9èÌKJ?UýáM¬NœØ×vôû»ïÏáP¤’I$’iŸ%ÿÿ÷祖Ye–YeïþFYeùªªÿöç÷í:øM1ƒãéjæï¿íÞ8xïÝü¹û£8¥WkE1Agº3šoï¤ÚþÇô)øÖ|ŠUo§^}ýꤛœ—Ö¸”kà&³/äÆAqK¢f¸(CY(K)ÀÀ®eåUûÊͼûRû ¾4 ´ï³ÁÊò“~¶ñ6øO{;ïß»¾üô»»ïËà@ªI$’I$’I§ßýñ;âwÄòý§|Nøâû§ß”e–Ye–Ye–Y~5UUïï²w÷Ûð}À»;ï߈}»Çû¿—LD¨øÚZ¹»ïJÁøÆ@Ná €ª´Öë¼ßéþsŸôï§i,CˆNb>cqÇqÇqÇqÇqÇqÇ£ANU‚KGN[âŠmdä7+G3å¦Å(4‡ œ4±{Í rj\Žù‘ƒò %²(rÄ ±{ÀÛ©Óì/¯Æ—eHÎ#å<°6˜dZŸ»û²HJ?Uþ¡Dq –PðH¿§¤16gC_è÷ß~=÷í±¥Ýß~_T’I$’M2M||oÿºl²Ë,²Ë,²Ë,¿ªª¯÷÷Ûð½ð-éG ÉËÝ×Åê£"àí<»aah£³-¹TGáÀKÏ>çôå¬c,Sº¬KÚÇÃæ½zõëׯ^½zõëׯ^½zõë×­„(A€.ªÐ]xNŸÖ[ÿˆk¥yNCpY©t¥¦±Æz}2—[o/ñ\CRä„ wÌŒŒ¼è:\W>DþSv˜É*Ùš?Æ¥Ô­ƒ¨¦«Kä°Ã "Ôãí¬t•¤¬!lCrH‹sÞ?8õˆLjߨ4÷€]@‰+ák£KèUfÎ[¹æãïX)¢ÑÓ æ,óŸ®HÎ\6ää¾-©gqË“ÞÓíµP”`>ô@k(u—†1¹bwã¤\²?ÝâæcÆuÞ½šõL)×ÚEbò`F_ý¯Jß°Cê*±ä×÷Eu&Ìéjý÷ïÙß~ÿ)UM)'òI$’qß¾8¾'|k÷Æ—E–e–Ye†Ye—ãÕUU_¿¾Éßßoúö÷ßÚv÷ßÛZJá»|ÔèîÈ¢ |Oí5“¤ ävW$gK@(O±Ár~œÆé=¥œz+`nŸüa†ã­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­“¯“¯“¯“¯ˆ ²¢&Ojç_‡ÛP:¯¤»üK#þ,Õ<¶=Zˆ‰¦¬KÙ6›rúæ>ìЬñëѯ⫰ácH¤ÔDÀ• ÆÒ$h…f])Y¯R¢%ê4„áH&´­Štˆw±Ô \@¤à|ØFX¥«‘‰…¤4a,ŠVœË«›ƒ©¬¡VùRg€â{ÏÃ(„¥á [ö}Eaާ@Ê‚*]ôZèù{aMmàÛ´­%a3üªÜ ¯PË»¤ÙÃ#fX_ † nSÉx8¤ÒðíZ$>Àº†¤¨o‚Æ#iXÄÛ-_³¾ýû;ïßáÑjªiI$’I$“Lãÿ螎Û@e†e†a†a‡áÁEW·¿ëG¿¾Ý¿¾Þ7Õíï¿¿Á©Ž¿¸øþ&¦©ý °öÚk7›ôó[¾¯¥X§†SÁ)à”ðJx%<ÈžDò'‘+õ;êwÔ¯ƒé+àúJø>’¾¤òÏ!ôžCé<£<Ÿ£<¶Þ+áö”ð•ðžIä™rûFÿãü‰Ë?âÏùÐÆíqWi×¹FÊÃ…:f»d‡ŠXi|]æD+ñ­oWaÂÆ‘H­öÚ¨J0yñ2È4Œþ7¤]€wª¦Á]ñm†FsÞUøÒåý@̲ؽòqi«h™Û–+v{EÔAxC, G#ŠÅãÓ²§“í<Ÿoòy>ßäò}¿ÉÙ_äó¾©å~Œò¿Fy_£<¯ÑÁžÒyŸIæ}%ÿÂwXí…ÛÀB ÿ|'Aú3©úGÿˆÔAµR5½X²ëÆ_‚ŠTänÌ,P¨Z#)§ëmï*(Bñ`•c¸¥ÓS“ûÜ$ï ³âOŒ„Esjê—Èa†@E©À†­˜‡J%2¦p”L%ðKb=€vׄ OmÊÙª¦Ã]ñmW¯ å_qæ…ºÊo•&xœT"!|Ð_Û¦¹›ªýÅ5”¹õ–Du£"`¦…®Óá{¸›~“kG»¾ÿ©Ýß~Ý÷íñýUI4¤IA j½\ÑÁ=\`=˜Ã 0à 0à 0Ãó ïõ^Þûú|˜ëûÿâQý€hÒ„‚ŸŸaß(m¥^ÿOÔ%–Ë’4\@ÃáfvÏ*1µëø}¯_H:¦>%J‘D=z•‚ǤԪ@bÓÍ‚é’Å€«: Ð0Ô )P Ï1Å›Ct˜û¢uJ¶°ÑH¼·Ac² ‘´á]ßñ¬ºyMá‚à43Â!ÐZ¶ýšó‡ü £A_!? ¼ß:eÔ¾@ 2-M“0Cr@±u "B—£åš\X@UjÀ&B«€h!¬UQ(J® „Šª% Å„V¬£L¯0t¸®"|zÑ{•ÚÄÞvd¼£N%(w*D…/F Ë6ú:¦aw¨ÀaÁ£p,à |îÞ+_`ë„вV<îå}ÅZÉBXéLÀ¨qi«hý­“ÐÅÐ~ª\4¤16¿Í.ŽŸg}ûöwß¿Ä+õU$’I$’I$Ó8¾ôO,òéôO'º,:L0Ã,°Ë,0à ¿.Uÿÿ^Þûûð¹Rðõu»¼¿ÁZ=ðzB披7›Hmý‘Œ`2Ô4¨m œóòŠyȳfÇìew3?v—t´…aoqÆÌí™p3)ns`Ê7FÕŒ. °X×yÑ›‹­mO6á”j¶˜ECÙQ ‹x‚døXZkK_"Í\ù ¬Í HªM>ðÿ:#Þ1%mÆŠ¢xY|½Ö‰CºíôwZ‘#Ä~n ÕÈp¡® Ä,ÃÝjÁ»’ZEa~o0!ú}Íãø¼À‡ë÷'Õ«îIi„ÌBÌ=ד¨5rœ(i†ùÒ«»äNQcÁÍñÍÖqEý‘UGî2úðØéÀkF‰ ˸˜ ï­†ln kBèSTJ'–R”Åw¹½öâ$в/žìÙcqÐL˜æ#Ëv 8'#)è¯b Èa†@E©ÈÕ9 Ê?jà¨b?z‡fµ«aá6±6fÄÚÒè÷ß{ð/ßßoÁýT ƒ@AAc„<“ѩꞩêø@aìÆa†a†aÐv~~\ ªªÕ{{ïéÀø§‡›¨XùêÁ5“Œ0íCm;c¤þÆÕ#( Tp+{¹˜!Ü«"ݤ[«lŒ|¸ÀÆU»•ü&0iÐAWTo!–¾PªBÃøU Gê¿)wCâÛ¡W<#ogkà–¿÷÷Ùð4 ‚ ‚#µÃ„IèÔõOTõ|  0à 0à 0à 0üȪ¨W·¾þ³·¾ùülþÀ4kB ÁHK$„£õ_êãE±ß8h„Ûûÿ…†mÇUê“<¨…ˆÙÒ¬‘Å„Ÿ !¿Rg‹×ø³=G½ÀžÐa6±6æÖ·ÛßNþþû>€AA¯ˆIèÔ©Zž‰äÔòpa†a†a†ñÀÝßßáUP½÷ôáÿ¡ø¡ÅbØÇ[hÏ›ùA”,ªÕ RÍÅ”B äÚFÖ5m·¾þŸþà ‚ ‚ ìñÉ=`y'“„ta†a†a†aù UTÓï¿Î¿ßß|¸›?° Ѓ0RÉ!(ýWú…8Åz4gÏ6GHF´BfÔÿ'Œf•ï€a;1Ta6fֆΟo}ýþ2ýPAnP‚ ‚8É£Õ<“Ñ¢¥ODòO&§“€0è0à 0à 0à :æ@UU@Ý÷S»¾÷àö‡á¡“Âyß2=“²¡m†Qâz$£@[_)±ïÆ{¿“˜(mf•×w¶&ÔÚÑÙÓí￯ÆZª ‚ ‚>É<“É<“É<šžMGPà 0à 0à 0ÃͪªÎûÛŠ­Ýá©['€ªŸsÏà >mâ ÚùMòyêý|%‚e *°M™±6´vg}ý'o}ý>;UPAA@y5*z§ªz¥h©äÔòhu 0à 0à 0à ?8 ª¨ ³¾öÒîï½õš²HJ?Uþ¡O…gùzÿ+²nÆoõþMËŒb#ãq±›SkUÛù *ª ‚ ‚ y4W­MO&‡A†*0à 0à 0à <`ì÷ùP*ª .ÎûÚwwÞÜnðò¿³W|ûÝ\Hóã-±¶/Ì^ÔÑ7²lg?™>U‡Ü‚z?’ã S·2[î¯^š-¹µ6õ}½ÎûÛãPAA A j+EÉ+¤®Ÿi]'’Q¢§“C¨Ã H‘# $a# M@p ƒ@j䪪 Š­ÈiàÅCäÆâ¥Q@¶Ã(ñ=†™þSkß„Úùÿ&kò²RøÄQ1È©#flM½_oã«U  ‚ ‚4 +ˆ<œ`: 0à 0à 0à ?£€ªª‚Õ¼›‚ªÖÎÀî*Ù¦”çïÂl“50݉]_u¹µþM¹³òMUh@@ P%J•+EºJé)”Êé+¤­+¤©R¢J‰$H‘"D‰$H‘ ‚ ‚ ‚ ‚!‡Z:Ñá¢ìï¼NÎûÄîï¼pQ¹< À8ÓÅ]¤¬I½‘ù•j,È<‘”X¤üç?~cß?ä½jüÞÛ«U†Ñ!"ôïjDÚ›<;[]÷ÿ~ U@@@„ @ P%JÑR¥q™]%¥t•TIR¢D‰$H‘"D‰ ‚ ‚ ‚ †a†aâ »;ï<%[Ú¸ÒñçŠ2“r {4%ùÎi·Óù/Y¾Ÿ•Å Dt˜M™³Ãµð‚ª  ÐA%J*WM)ÑR‰D¢Q(ÑRºJ•*T¨’¢D‰$H‘"D‰$HAAAC 0à 0à CÎîûÇœ':“Z„œ³B_”ç›}?’õó;P¦› ðqflÍ®¶¸:І`‚ @ J•*T¢VŠ%t•)”Êet”h©R¥J‰*$H‘"D‰$H‘"D‰ ‚ ‚ ‚a†a‡¿îa‚`‚*€SÁÕTn¼+…¢§ìÖ[Þþ¦×Ëù/^4Ó@Å&`l͹µ68 ØÔ :F ‚ ‚ @ Já*Q+¤¦S*T©L©FŠ”J•TH‘"D‰$H‘"D‰$H ‚ ‚ ‚!†a†a‚`ƒ¾ýa†~4Ü^sù¯™á@ ™OÖòÀdû§½6>_ÈúÏ )ÂŒSe"Èê”R(_š¿Hh©òÉ·6&× VÄia† ‚  @©R¥J•)•Â)•*T©Q%D‰$H‘"D‰$H‘"D‚ ‚ ƒ¾°AA 0à 0à Áß~°wßy‚ûï0ÃúÞü äê•;«tã[2}ÓŸ×Þmò~Æõí–_Tãi½®°±Òûl³©îBbÅ_–íÇ-ÿý·[ñG|á’Ò»üWç¸0Q!økÚv’°“8ùˆLjåƒ=Hˆ^hÈ/¼eˆ€7É^Ë‘È⇂’~qOÙ³lÈRÖ¸xŠ ¡º6îoº jh·g¯‡COö°.ò¨#flM®„a† ‚  @¥J•¥:•+R(•¥J•$H‘"D‰$H‘"D‰AAAÃß÷ 0à 0à A}úAß~C :xîð>‘ö™Nâ-Gp²É÷N~üfÏØÏûØ'¬;#r€8-ϧd„ÐŒUj\6ÝãþÀ¾PI¸pãOÉ›œØþ\³.|n¦GŠ>I.–â—OIû`³Zœ;žj)ØßFTlЪH fѧÈTŒGœ«Ar]’üyŸPÂß ŒG„µhCp1:ÊyðÊÁùâ«VÑð3.YEp d?oÅU ¸ !!K¨ í ýœÞÚ¬9­°Ì^†Ù=‹y?Ôò8¬­¹µ‰±6 † Úa†a‚ ‚ @ @•+J•¥:*Q(•¢(•¥iR¢D‰$H‘"D‰$H‘ ‚ ‚ ‚ ‚a†a†`‚ûôƒ¾üà‚a‚ àà/2ºãüÈ(sëÉó÷ã9¿NDªôåNPÐO—ñãÇ1š ßeƱy™ˆ@1ðH(Àا›^rÖ»TØèÂ]/ZB ÐÑX¹Ú›ì ² M‹©¶+è¯b –H…‚ì 6€›x6í+IXBäl¨´i$¤DKÔi ¢A48]Œ¶4.‡ÂW{›oÁƒèf×K¢&`*á»’ÚEa[”ãÆmÉÄ”…¯×}Ú 5‘GFxÏn0¥Æ|½Tãƒ~Ó´•„ȬŠ, ñT¸]Œ¶4*—ëÊ Ñ0£7ðÁf1o½êeyX€­½ÒS-H¬±6~tDò€ÆÒßAG¦Z:NÌÚÇ Úa†a‚ ‚ @ J•T©R+R¥jV•+J•*$H‘"D‰$H‘"D‰ ‚ ‚ ‚!†a†a†!‚;ïÖûõ†`Þ3ÀôÖ˜gkÜ›¯“Y>~üg7éË|ÙssÚ*«­ÜéÏéÏéÏéÏéÏéÏéÏéÏé|¾ûï¾ûï¾ûï¾öž~ýr+­Ö׈ôG¦tgB_Åðöʲ<¡°lˆ¨‰Ìꪦ¯¿J”[…ö¿.—-ð:½Uªô­øl0.C:h¥5¥Ð§Î¸OÐtT¨5;›à*úPÐà)ì ¦cC’ŸSáEÙJ—¢;²Ô'ÛHQýƒEp L´®5 ,Pä¡ Ò1“ƒ )V:€6÷…µhî–i£!|€6lZœk$z¿òRöľ@ 2-@(œbŸ‰{ühò¡Ì~™°¡©/à €‹RÌì®æ  N @ƒ‚ó(vÀx•ñØ5»à1Ø{Éÿ!:>B Bêá»’ÚEat±tLÑn¿^óZliÊŒ |‡˜ÈSíäg  ûJ(myKªª—µ¥Ö¤¯Çq®hTð(z£Ëb¡Ú!† †a† ‚ ‚ @V•+Ju*VŠ”éR´M&‰$H‘"D‰$bD‰AAAà 0à 0ÃA}úÁß~°Ã 0Að+käÖOŸ¿Íúv;ºú$÷ø Õ/ÑV;ªwTî©ÝSº§uNêõ;êvÔñ¾‰<“Ë<±ƒÓò€ÿˆløËdéõ Tûf§?åøc+{±vKS{Þv;òi—,L¡ÄšÓË<¼vT¯‡ÚWÂX«dúOÉ<º<³É‰—(/ÆõöÌEB ¬Umí! ;Çq“`!TŠé‚àUòIrÞq[5ÁBqÛ5ÁB'Ë?Ûj¡(À}þƒ5MdPKWÖ Ëªª‹u„3”S´ŠÜx?«†„‰°=€Ä'#a‰‰qy‡}®F&ý„ÂYÒçæá‚\£!àL%ž7"Ph¶K¤ÑDMäïb[›«ÃÔ¹%˜‚ŽÐí Ã}ùAß~Pm0à 0AA B @PÒ´©_¥iZ&‰T‰$H‘"F$Hă@‚ ‚ ƒA†a†{ò†a‚ ï¿8;ïÎa‚&稯ըS‡^OŸ¿ÍúwFïûÊxJx}¥|%|%#É<’ž¾¾žIä”ð•ðûJøhR<’žži_´Ér<òO,:!Ñ:0< E «€ ª»Î_Ð$<—Ìž\°Ñd°´o'–b^›#°Ðá!ÈjŸì* §†~R’åœ"á¶&k‚„Up $UQ(xEÅlLן-zКU4tËʧuJ>A“Ì2©C«d·•µu+Ű|‚Ä'#a‰‰pù‡ad-t¦`Tr10´‡ìȦ—?Õ°¹xÿ…‹pþ-™5Ö[YR¶>²m›e—*1qQVu½·g&ó ŠhÅ‚ä,â3ÃࡳP³”ãÐí0ÃC 0÷å‘A A!¡­JÒ¥qQÀ­+DÑ"DŽŒH‘"F1ŒHÁ¨8@A †aïÊa†t¾ü †ûò†`ƒá‰>àµäùûñœß§Qš,«#aØUÞ6Út°t1ô1tššIècècé54Òd2Ú_¡iÐRh|:µ~ýÃV¯×¨jÐèôJØ!³b¶ƒ¢3·ódʲ/Í/´´0)Cck¨¥µ:Ï…ùBv¼X#ž_œ!â]CuÓ±MÙæTI™$Kç ³Ê"Ñ•~Z\µ2—hñ*èÒ bn6ti` NÃá.?UÑr-h„Â/|°pðô#X@°n i¶'&Å1^Çìe·©t\cËÕ¶óü8oÝ¥i+q_K¦Ó¾@ 2-OØ\õÉ–þ-Є‡ÆÖäJÑ@›&Èl‚j,d\dì»ZC‹yn×?í1Ãb¿©ˆ·JAÁ´;A 0ÁÚ“ß÷¤ê4!5•+ZÑR´S­jš%Dщ$HÆ1‰1#0j AùƒóÀ=ÿ_ ü8†`œÐq͇À ›½(œ fdùûñœß§sÖ‡ãÕåY˜x×_½÷ÞzˆzŽm²õÐõÜuÕë%ë8,óÞˆz.%¹å¡!&^iv­Xs/Àv|b9î•É ‡Žmíh°5P/žJsEU”æ\ìÆî£hˆCeh6¡E¦gL¨åòÁb n8ü΃¾g…E£*üžZ͇ïÆ×ÐÑ<6‡„pØ{ÌPlÓ1*fÜœ;ÐtT¨4(;—Züˆ[µòØajGZüˆ[µ ’^ý) -j_WÒ†‡ê;¤ 'œ¡z D‘¡AÿÁ­dC÷âxmÄSͯYRM¯`¤±€Kä°Ã "ÔâUOÍ™Ž¡ÕñD!F§õ¬‘è~üÈaH{Û~/« ô}(hp¾@ 2-Aji"ž±OY¹¢DJÌì:`ÅãÒ²¤q‘€9¡¯šAYR8ÈÀ зƒnÒ´•„W ”Iò7QÝ hÁúל«à*úPÐà>§„©€?ø Uø²Û" œ¶’ål<%m6È$K)Â>¯gª»mW¶·Î F`1ÛhBQ³9ËUå.!Ðx ï¿(aáñÀ‚ B„†¥\¯ƒZ¦‰ªp1ŒH‘#‘‰ |pOÀþtŽ;ïÏIï¿.ÝÀ0Ö˜gkܚʲSdr6°*„ó÷ã9¿cmÓ‡væ1˜Ž‡‚èÅÑêß0{ÛÑ›º&Úä•%†”ÑqX¡ ÷ŠÓEµÄÉféêѳ’ZEaK—,˜…˜{¨‘/Q¬' A5Ù1 0÷R+è¯b Ærêá»’ÚEazèŽ:¸nä¶‘XAdˆX.Ê@OÒ lÅá媮¹-¤V¹lQÑž3Ä@P®c- ¥Â¬ŠÈ¢À¿UpÝÉm"°”ýl2ȵ$±?@[ ²-D¾@ 2-M%Ëb¾Šñ–"߬…dµbŒàÇ“˜»á(=n´m‡ ÂÌ£”oÊ`°eåJ£6ÏŒ­2'pFV̱,åƒ\wß–ŽNßÒwõá©É„B4 Z•(Öªhš&©Æ1Œc‘Œc js|@ùëþ €;ïˇ¹´s|"{=yûñ›c—ÃõZmYxjQb †î%qÜh&Tžn^= dáJ„’à¼FÞÀ¿| \_^»1®JL%:²lœór[Hç¡£›qɃf/0ñ @‰Hˆˆ›ŽZî]|ÔäOÃä1ørh „B„! @Ð/á&©¢hÄàcÆ1ŒMãè~@¿Iß×á}9»ñ¾óŸ¿É=ž½ÓŸ¿·ö3Zx]CLcR†èû !GC³ûè€æFª°Ú¨ŽlÚàÓzcæUVÏrëeß‘z2éø¤’ë£[ó$I´-Ø“_—¿ Ëß„äÑßé§ñãàÑÉr„!¡ Hh )¬6ÞŠ†„JH¦”ØO-›f‘(©•å–ήð,,A€/p™qΠ»,Gà=¯¿Rb«o,oÝpEÇ»F:1ŒcÆ1ŒcÎ1Œæàßýý'ç?==þº{}µ;}§o¶žÿyÏ9§7¬öN~2}=šuîœþ¾óg“ù] E.P‚‚$+?Ä —ÐJ6Äš oJrUáˆ! Q žíx»û›¢2YH%PúÞ‹-gÇ* Ȟѫ €[ßí­ÛíÃÿy8B„!¨h× 5¼^xczZûÞnQ hDº t¥ïKãB³©k¸œî9  Ó›*tl‰L(`;‚&)¼\Ï °.#‘21ÇÌJhaz%£GV*öœ±ð¿o¿üuÿÉ=‘³Õk-#à=±rQä͵ÓX µŽ$¸a×"cèò¢*ªìtâeNޱ ô!¾†ú›qjØriõkH›žSú=\<àcÇhÆ;F<ôsF3š{'²{'²{4óiü¸?ç¯Ïß9ùÏÏG?|õ{}§o¼çïÆs÷ã¯ßë©ì㌀9(ìÀõñ/á¡þsŸ¿ µó†Ÿ*ÃîA=Å‚Þòª Mõîô¬¶¾à£¿µüâÙs™PRykµÄ¡Ã(üÅg5>\çûa²ÿSúѶç”Ù¨øÊÚrÎYÉ94÷ûNIË߆ŽÿYßë¯øÆ¼Æð†+ý_Åùg*ÄÙ ¤‡þù›¬Ä2YEblât§CàØR™Ú\P¦öžƒÎ}i˜R ßBèjmÃÜmE´[G¶‡¥wßœ\™L©Ì¥¥B*0»åN²hZ­¦Od¢±6q6±:𒠎˙ʗ+O8Ž!ßÐdÀÜ=îùOèö8\<ï«£ÄÇmñŒæ÷NiìœÓšsNiîÑìÓùëþ|_ïôÕí÷лï˃óNoX·œñ^¡ö_\™ez 5{&Æ{Ïâ‡úÞV2l“K5X3¤£ÏµÕ)©9eg%•I·¤âh±£g*CdàCMàgÛy—pq!Mí€@AxCðƒááá)á<½ý%!îûóÝ÷åÀ)$A­+Eïr3¡` )±Õ ë~lèë0†Ý> Ñ<ìŸeÑ»¾œ|^uwŒcÆ1çóŒc¡ÑÍÂÎùpÿçð¾K¾üâï¿8ô¸¢Þ=ãÔ|R§un€Ü+ä[R.IQd01ª ¥µò›?cåué@7vi¦\š}Ÿ9KõÛ+-fÃ÷ã¾ûí¹*­I%òØaj|§ZɇïÃR$þrþœÀ¨ƒÞ_À³½¶ÿ“L b^¯” Ë*íhO¹/“e8Q$LXÕŠSÂ4”‰„M’¼ ËåcÎk{Ð[µDr#„r#áçç þ !ÿºwÙßaÿt£ÝÜÜ«ª5t]x³rúPØþÖж×6ÁÌë.¬)À)Z6rdymël¾ O!eA[‘6V s‚,ÀŽtZ™qB–Þ XÀ¹e´å–À›™nNÓFÀ«&­ÙŠ7 D(90‰³´aà -UÀUÁ¼7”ñ ¿dßl{«¸²Ì Ixa?œ1MW{ŸØó³Ÿ)Ÿ¶.é³6³ ¢™•KÏL ,I“¶Øhúºˆ],^ƒ”®±:3¥:?ü’ ‚*T®''9±`J˜!À&gV"ÊGQâøêÞe"»x¯ÖggÓ_Ï.‹«ÀÆ;Æ1ŒcÍGG7Æÿ^zQG}ùÇQG4Ü^sù¯˜2(@b® ëÑá}ûÃmsÍŸ±òåû_a ìFú¸×ÒJŠŠB4Á¯òÔ‹ò­9%¤VÄŠíLö*aþ!:†I.Z£3Q#ô:v@¬Y>V&€IBî¥êá»’ÚEa°S# ÿ¦âƒà8l-Ài‡õ À­ì({n]þ“ZÕ{˜J(”ÖžÊðÐö®AªÂðºÚª²Ð ÎZX=crÞ1ž3[Ø ÚTÈÞFæEæî«–-Jè› ‰aöVØ×ECíÝ6o÷$“˜.eW%„ù5åï(5'¬ŒgèŠwj'ö¾E²æ/Ÿ¶gÚ]ËÊtóè[» Öæ y„Ò X)mW¨¿sºàa½X·aÀrº¸y@L¦ThYŠbµUs¦€Ša‹`q4FdKª)0Ô™M–fÅ¡Thôø£X-)tŠQ¹ ð1•’Ót« â‰Çc<È7”;cí ¿dD|e PGÓ2{K»v’YXff µVÓQF‚Tx½G·øÐʶfÄØÒ¿}5×Î¥J)X0bJj%Yø•‰µ‰ÒþÎûéÀ)$A©R¥J4£ƒ5$ƒ%0$œc…rÍc:ó?¶‘¶ÎϦŸ­]V1ŒcÆ1çóŒæÈïëð>(âï¿(»ïÊ.ûòŽ8âŠ8µt@•®«…¢ûíÓhñ$;­"RªÃ[†Ú6Ç,ùâ?ØäA{á 'D‘‰B¼-•5}7lr^y¸§ú•éóèÀaÁ£p•Š>h˜n¢öà³_`?¤‚­àÛ´­%aÂã} ²ßD bU KÈ0?ƒ.ö Ä©bMjì2¸‡ÝæµVÁ|µM8Ýâ•Ùx‘.•Ÿ:$a×á1vÖb¼ë÷Þ¯ ;ö@»Âóé‹MÒÌ9äØ`Uß—¦à0%𢾠îŸu Û (¿Ä Ú ¡³Œo…n—Ej89UÚµ}r! FÏ1J(*.K(I-“D°jeE h˜1Ì–ò„Þ!·Û1Pª‡Ú 9bÑ&9ßaè›1„º›lýI½˜¯1CDXÜÈ:p¤mâtfÖ'o}ïð¯ÁRH ‚*T®7}õqrÖ1c•£ÏeÑe¡T4¾.ÍöÃVïKé ¾“·é¯þ—E­V1ŒcÆ1wŒQ‹S›àZ{úk÷ôàî8âŠ8¢ï¿XãŽ(¢Þ=ã½O8“[ÂR¿Ñ6žÍþ“ìÿc¨-·×6ÓSN8ãŽ8ãŽ8ãŽ8ãŽ8ãŽ8à"¨váM«'¦2¿¤dgöLº²‘~}neÕÉe3€'ʰûOGÊÏžÖJÇJ`FF±y™ˆ@1ûöÙ¿uy“-Hº”«KžˆÇšäÏÏÒZQµ`Q@ªÐW,ÌŃq·M”`ñ»è ¡Îõµlï†rßÅzñ!ZæžxÑÆ2ÆÁ^³jŒfW\ (ë¶Ébl14¬‰Æà¶t³RÍ‘”3s L((ˆÍÜC2³è•(ÅKã`’dÑ«\Ô·b&¯p¢à²þP­ˆ~¢+[x¾–Á½€0/ CmªK[ɶ€ ûõŽ8â‹x÷›‘ZèΗ<”˜Ã”zàv'cœ¢Ð¥ "§½UÊÃqUfóžmP”ÆÐÕ7@Õ‰}˜F4hÑ£F4hÑ£F4hѧƒD€•pî§’0Ã6rŒ²ÛL 0|ó|róåŽ}‚µcû]ÚËNOŸÈ ÔQq{×˃­áê¨áþtG¼,U±6£š-AÅ„ ÖÔ ZAèVh¿7˜ý>æñ½e&ñ¢9œfLÿób`4•}ÏáÆH#Èèž5VÞ À€dËSˆÈ ÜfˆB•!Ìn"AîÜÎXŠÀÈeÎÜH~o0!ú}Íø]¡t)Ø*ûz– ۰ Ç‘ÄWÐz™ˆ@1 u€ö:pÑ£þ¿µíÎ$±>ë:äëN¤YÉuëßÞrÊ™ Ü£MB¼6ðji‘I‡àD|Þšëói·<såð!˜<šNºd…¯Š0‹lÌ;r4°¦»08MÑu`y _«°H½Ü£`HÛ•Š{:ðÃ&òØVÄ Àj9òŠç`梨˜èE«äàÂDK\¥ £:\(}Ý÷å I$A*QÆï¢ÅÑbÎb§}Iþáîž8³ä¡ø¾œØÍžOƪ#]EŽ«Æ1bÆ1cbÔQ~4/Æ¢Š=/]ÇqÇQG}úÇß~±ÇQM鹫04ð×Fi+„:Q£FŽ(Å˲<`ÓIaª4¼¾ìnoºåV܂љ^»l7ú¡^/…k¾ €½“’Ú\NÒÑLÑïjq±(M€ð•°E]5¹§¤Ê£D‹¿[JLˆz¾ƒå'ÏÉÙXß—{œ¶ÕBQ€ûÛÁ·iZJÂ7ƒnÒ´•„æø ÇdU¥òØajhš ?ƒ8P@máßy¶ Mó!™¤Ë¿$Û©Óì/É9 f…îÈpz\úæä§šà»å7K–LBÌ=×{Ùù[(Ç[HÅvØco”N–äŠ ¿€¬5=,ý BÔ³KW5}õ¸ #°KT¦-¯²SX ÓÓk¦ÊŽuñ °ê÷=ßo§"s)[`ó(Jä`PìFÐ@D‚Ü âó&ÝÞH”Š$:…¢,¬K¥,°k”À ƒ@%J8]¸\ˆNRˆ1—pdú’Æâ_‰W,XÃÀ·¿ïFÏ,n^¶ÇÜóE/Ã{¼ÿoM?Ö ª -°1ÈäÁ¤—¢Å—,X±bÅ‹,X±bŠ(¢Š(¢Š(¢Š8ãŽ8ãŽ8¢Š(ãà£roÍØíir¶O%Tÿ8§Q"}™ŽÃ „_Œ÷N3ÊXÚ¼´hsþÇâÐoø%µnm–"]YCy«­éа‹)èÒ(¸¹Øì^öÍæÔâ9àƒ¤ç˸n´«-ª‹ÞżÅRá]™&ÙQ܈Ãj_’g_ºD'¥cÌsR;xªH‹ ƒËHMa‡Æœ8.ÑõÀ&Pú¤!à›GÌ¢+ !—;q;çJ®ï‘9EV T ­Ò×,ŒT%@½aÿu4삌x?‹J$>ÀÜ t5¨¨«œ¥ØÍ7(è¼ ZÁý"8ÿÒ1=+uû¤BzV,<Õ(hûtÍe¬j:ЦνÈZLÕ !mЃÅv–J 4^&ª  ¬ÆæB¢O𫯡ý’÷p-ÐÖà[¡¨íEE\å(>Ælªædþü¨€ÖPë. 8èÇÈ üÐ݃ýz1òÿYC¬¸ 1ŽÉ…Dì¦RêsÔŽÞ* $Rg1¨ÐÒE\7r[H¬-çI`àc‚8X4ÔDvFVZæÎS¯þ=„ 06)æ×…ï“3¡` +!¼þ®‚b@ONte¼ Z.ª†:Ž`a™¾7ûOÐ8Å82S^è“Í àÚ¦Z! ?î‰X›x ÒûþõZóʇ¥‰ý[®r£gsÉø?Û¿Œµ…D xΕ€® x`Xı2Y-AÄçrŠ8¿˜HÁÅ €²@ˆ¢ DÂ'$ë©R¥JÑRµtY^C¯6–ƒz€­`‡à]À³D ·0ÁFºÜšÊŽÔÈ!TªDøT•U:$Ôóµbä¹uŒÀT_‚^¹éËÖÝ(z„wúݸ ËÒåÅ‹,X±bÅ‹,X±bŠ(¢Š(¢Š(£Ž8ãŽ8ãŽ(§g}â(øêwã!“Âyß2=ƒU¯?Øå×@o¢ÊËÇ…CUPÐ]®‰¿ðÚÅA‰ðOˆ3bmŸóûDg×J¹a½Þ#GQb$)z0^Y¹¶YhLå¨8Eð퉚ࡠ%1³Èfg›/á‚Û°Ðû¸¡*øb2ð5ù¸8i)g)mâYx— àm]DNb9±ÈJ)ŠiÙëõ$øb®d`üèx}NiÖ óÝÜa,épB q‰µ‰³‰µ‰Ñá>IÊRÍf·4@Pg¦ð7\âp»¶}d3XÂÚÇ!¹Y<”üVr À6&& ·ˆaÄ¥HÛKXX`jМ››¦»@b¶_9w*¢¾ °¦§ƒun/”d¸R”­„Ê=›i7órÀÅ XS°Mt-:¹’nŠÊºlÁ™l@¬@ “ø­V¢¶\³KgwñŒêæ’íg`†[]¾ß´ïöŸÖèÌn\¹râÅ‹,X±bÅ‹,X±EQEQEQÇ}ÿqGqÅ §g}çPîク(ß›²í`4¡`¤’BQú¯õ pï@DâÝ¢8MЄñ·–Skçû#Õzá»_⮀Za$*NèèzEkøL×õ9AÚjáÇf#ã‹fâ@ûÒ*„æ”—' ê<{¹“ž-Æ0õÿ¦êt¹x®Ûzº<vMŽL«Ð{Iv®,›qöÂj0úBòý Ì©[±ÜMÇ3–ðP2ÇBt ¼¡·‰BÛÇÊ ¥@<™(‹¨òaܹ®ÿóH'µ_² DÊ#pW¦:! î™X›x›8›XÙß{ð_Ýß~s³¾úh.„¿'‹zWêˆÇæëœ ôÓÁåÐú8¦(m ·6ö«0Ó³Îò^m6¿&Wb…5”TÊX`®¼´¦IZÒS¢(‰Z:,ÀâÃeUØWÇ@®/ž„½Y`m i3ÂÅR@à09y$Ìuä^B¼£T ¦%`õÐÞ,* |jÓÕöÚÙ@» Þ‹%’ãí¹êþ†Ùý.TžåË—.,X±bÅ‹,X±bÅQEQEßH¢Š(ãŽ8âŽ=%÷ŽÝ=Ù¿Á+ÀÞ8 (¹A~¥3CeÓÈ­¶ÅðoÌ^ÔöMÝôœðÒ1 !ü¾ÿà*ìâ2ÍÆËP\zêq[¿Oj“ˆÚŒœ®TFf*BXåÚZSž‘”µØý!+Ù ÿ|!xAð™ ÙO1Jºº¶¶·K ±Ñ8hâ`³+Þ©‘¸‘ÆØ¯E›ÐLd_\åÎuœ³KW5}èâÕ"¸Š¶¢JŠC¥6q:S£ðOÁI¼àƒÕ÷³d|´Nï³:V¡MÀö2‹PÁp¸Ty(l7; bAZK=H`°AµÒSÔºK+BXQÚü.Õäž"ÅB8"¥Ä6@èhRz°ø³,ÖZˆ0ÜÁÖÀ†kQnS 62¥J¹dÕÂÂ*,i)åÏ´UPÖ¸îï¿>^Jƒ«ô”n[¢Édrs †ÖK§÷¹râË‹,X±bÅ‹,X±bÅQEQwÖ(¢Š8õ§vwÞ'g}ã„·~oK,þÀ4iB ÁH $„£õ_êâk®¢M–Äè¹Çk  –‘䤿›™³ëü"ç¡Ì ň‰41v]ú±ˆ¬DK£ÛK÷„I&TtàøCðƒáá€à»@ЂáÊÑ•y‰³ “w‘AÝBtÕtââç`1E´-¿e’‰IXˆ—””;Aíý°Ì <%NÑ>Qõl¿*î#ÌÂíße™ú¸­š§ã{Fȧ£ko¥:s³¾÷øÀ’ILrHÅ ¤‰Hæ M;ª“@ºº¦ Ê—‚1«2K¶O•¨£uÀ/0Ö XÓJ„Gzò€Ž :V5XXž)›e´Õ½3À±ç’äš®€ KÈ6]J„h)®m3pþ¨¥íe¯ìo¡–9$вÃ+G?¿IJâä´JR–ïŒh÷wß— §VgÃý"²ä¢úËu…åA}ŒíúiýM®,¸²åÅ‹,X±bÅ‹,QEQEQEQGñ**ìï¼qD»ór-·§'P±óÔ;€k#&¢c$’®ïtØl©vœÓsXdœ¢GüD¾IŸ¨ð¤)Lm*)•öÓ+vjö =i(D (&'¦Bô_ÅÙÃŽ` P €Á)ξbPmÓ(m [|‹…XØÓfªÊ¢î¤Þ*UlŠ 6F9¶Ðç‡ÕìÁBS%¸“¦]ƒf UÜïèYñ ¼Õ1¾8ÂT3*¨+0\OCÿ<ê À…X2¿É#±À< >§4ëfîÂ\K¸Ü4öC+§:3¥ðRðM)E ¯®Ù²¼¤¹y÷Ô(n_5Œ%I€@¤r"dMª¹L`1ZXªºTD*Ž@)2’ÅT¶0¥-Ã*aˆòÞ>sP¢äUŽø«hº.ˆâ€±¹tÞ €°*A{[ÐZD a‘G“²R0æpÅeZZ«Fêï TëÊâW&oË æÎ\î’âæRjv5. HbÒ½gw}ùpyÔyÕ‰…¦ô~RLmåËÑrúËbúŸèŽÖH‹ZÑK+µU݃’r-­fóyª ŒíúküÂúË‹.,YqbÅ‹,X±bÅ‹QEQEQEñ*¢ ìクÂw~oKZÓ“H]r0ž+Áøul¤AêÖ’MÚsNÏIµòþ×ë½Mô¨ s‘oµ“ô‹Œ§Û•Ö! Â’È’ €sãáζÈg^¸ãÇ×f\E ƒÌ’ö[<†€õ6k’ÔØ®î }›fÌDˆË-õ£ ÇË`X[ #½›Êê¶ëȆ@ÚŒ~:[壣ò’ð2âd€Pñþè•V&Æ&Î'C¾ïG¥¯öwßœìレ‰$’AT¨‡"‚ÖMÂÎfþ4 #€w‘Åt2e¯ #~ )k!¡sÐÊMŠÉ‰’Yi/¼M0( ™°Õ‚m,€Ž‹†¨læ;,›4æã7zeUØO<  £8°[•r[FšQ„‰)ƒ!†aZ ÏËÕ£W…y¯§zN¢ê•v ]ý(Ê»Uh-¨r`ºPÍÍ5¶3”nÑË55YºhµÅXuçZu œðîFi³ Lx/†b€¹æ—¢È¾·ú!c-MHkÁBÄt»žvý4²ù’.\¹râÅ‹,X±bÅ‹.‚‹AE ¢ù"ª¨ÎûÚwwÞÜîÍé»ßæoÉ!(ýWú…ú ïÁaðP´[ˆ 2éƒr$q%0¤7âŒ!H1žéÍß„x~‘Ô¥ÝѦŸàÁShÞ#–C[ÌI”ü‚öeuì”r•B’„œ''Öee›B´]´ ŽCÂÀ`B­U¼e¶.IÄ<Âé¢S)nŠíÓ gg¹œ”ÚD2º/dÓd\@<çä®õ&0 ÙqõáúÄ¿X.O¢ð!oõ?0…(ðÜahµxø*ß­J1v¶Ðç26P!2‡€íñÌåä MÐŽfÐaõIî`ñ? {eQ±‰·‰ÐÐ)Óûÿ³¡¨I$hWMGcº¼ÜËp[w±,6)ë6w ¢ < aa#B0FâEy)a7+Ÿ(¹U#•g jßR;à$Â2ðÆ^[=œ 5YntKxÂQnÖì¨Ì FUUy±,®ò^‰Z0g8^'Ö/Ã*5ÁHX×Èr¨›rRwÑ\ ’*çÜ¡;«—wŵµg^ugRŒê÷ß¼/ÏÞ~è¼ÃÒu-?¬]p¹ÀuÁráfsmO4ôNéàœ ±¥DXáΕyçoÓI+ƒÁq†0à 0à 0茻»ñøuÕï¾ñÃù½™»™{JÅ;àõ"UЕ l2ÐdóT«ô[§¶Õ@·[´¹´Ù–7UÏv—¿ø1Âg€p´:ÜïàÊ>$‚{ ê+å)˜!ÎpÁ«XÑ\´U~ÿ↥×ðê¨%ÁªLÔÓ(G"ž=+C Pà¦÷gr©{?A€ÑMNÀ ¯ä‘ñh'ú†EýƒÖUq Zع9>ì¦KþæHNÈß6qtšB¯ÉŒH#žµ½,VYµïÀ?ü#+ock£ð[ðI$’ EiL©N²e¬r¸gsc¶ÎƬñ›r€ÐU›ØòQ B ‡›nžG’‚À’ч㠱ÑFüÄæ#HdŽ»@¨©¨kœ"@ÁÒƒVž· ŽôÂ6‹*Ñ¥ºà ujÍXHÍèáD‚ØòÉ:‹Zò+¢¨¨#öð_u4ú“­¼ÂØp·³`²ò¦Èñ_©®›Sëðrܹ…dª³x½Aýf½#çÕ’ôæÐè0à 0à 0ÃùÐUT@/þäÞ–lé†iª\H,=…’BQú¯õ |G¥&ZÒg.6jªÊ­T«¶[…@i;²´9ç£wKb¡ «?ÁWÖàU2¢CÃŒFÁó6Ä–OæaUbUR‰D"¡„À[ìƒMnœekåë¨Os‡ ¼Wì™8Âкi&Hq/¤” ü,¸½ ›çw ýg€€Ì«8ÔmIÞ!LÌP¹F’AN>¶=qm\QõlÝ:ä›k­kyÄÌ_d–cA @tgJlâmcG¡ð/…$’4Ep±Ø Ö~Qä¶kf)°9¶n“Á,9";DÙzó/_†çP–R°dX½jP¨2¬+‰xâPÃÆ8ßBNc€ÒÏ8# “Ä0¡±0™Ñt)”s…‘9Q+~ji§ÚUˆ5nà[~´h¡”rÆë·W/UoÅÝ÷åÁ§^u§RQy!sþfT`™^éÍÙxnwìÊÌ„HM‡^ÆÄ™`,ƒ °_0‡Tu–Rò2SÆA9.éLéþ5ó.a†a†a‡çUD ûw÷ßY»˜­¸–I Gê¿Ô)†iº_ÂH,=ŒE UÁ `Ι••ÉÜ `*•ñ,³ž Ëø3…Ô¹øH)9—útùG%Kü¢X”r…%šÕäK› :V¼%’ŒÚ­+f¸E\‰Ã!0ðVÐ-\¹ljüÖÀðìúÄ/õ€£ NƵ¿Rt³Ø¯¡æ½ùXbCŒ'K¢¨"µ© J¦¶®~Ûé¨Å´ØÄÚÄèp·÷÷ß”ìᄎ‰$’A…J•(”JÕÑ)Ö±w‹&BÆà6ð¦h=R[ºjãÀ—ÌÙH‰Ðm¬´‹etÁ˜7ŒÙ   b%";ŽÉµKk·N]e•óàņ)›Ð•}ËB T-kháø¬ˆºN_}ra‡Èñcai€Zµ·©:“¯19›ùƒh¦9‡kX~‹C3Bçê*+7Ëø‚ Î6§›I˜¿®ÐÝåÓù¸ Ã 0à 0ÃË€ªª'·¾þº=½÷ôàûsC~^­-<@(OaeEð×ûèºOø¯wbÒrJ«!€1 ½“Û9à.d¸ÃY¹ü·£ñÛóÊ,CÅŠÄ¢¥1T¼††…P-ZU GUÀÍçO1¬ -Ø•/G‡A´ù}Ê‹&-€?Þ`sóÆg‹'©»+¢S^=ŠKg)ì•Ö'NmãœÚÆCK§§Ùß}8$’ Š”iL§Œ‚€J*\e\ ŠnÀ[U¨¨&haͳw„e}MÉy6ãfDèþü%¶Ûb ˆ&%ĸq(cã.FîªBôù+/ØX€!bDȘLæu¢S»€íã]ÊV‡š+lªŽ¤P80g¡ãÝðÚuçZue\âëm¿z–åYfN0Lý©¤„Avxªy¦æ±5X`Ý¿•‹|]sµµ7yt ¸% 0à 0à 0à 0Ãñ€Ww…Y«÷÷ßÛXÜÓ·@äàÞÕÛâÝÈÜbBŠ¡ÕRÕlÅK¥<”ƒaǃ¨ v¾_ÁrÚ7)Ffà1¢~@”†%2¸´F)Ð £áˆ@ô²óE›nùœˆv¥úZ%éçå¡eP”~«ù—Uœ7>¢ì–™vacŸ€}øBV&Ö&Æ'Nt§Gà–‚’IR¥pº:,`­u |•U‚êT.v‘øfŒV€nÔ€l^ùŽœÜ±Fm0EÁ.÷§_óÒYƒ*  ‰¸¢Y•3+†é>‚»FÅY(¸fØ—_Éb¢ÊKÆÎU,“Ÿ•‰¡‰v \ÑBël°0Q…3¹6€š3+“»¾üø4ëN¼êÊùÂ/1ÏÙ“p¸E†XèD­ ,:ò$‚ ƒ³À=SÍ¥g.täÕ`Z­«««kÅœÞSÝø/@à 0à 0à 0Ãñww÷øÕú«ÆäßH¶ÜpÂÝ`a¿ut¦r§+|ò„æœÓÙþÙê=_wàþjÕ«-‚AQú¯õ ~œŠ\Ì$œË—ÂÒRíE¼Ð*˜JBSÛUh¿Ä ÐÃråfƒ6³P%‚qé,‡ oŸ+‚ ³CšæV¶g$=GöJko£:S£Å^vwß]D’H ‚*VŠ%µta@Ê«€ ¬(ämgm˜\Ò Á]KäT¥86+ Œå¦zR‘*Ñ]–©1¹¿rÆ,,ÃMd‹8 †Kv›,ı¿Ò›àÜì‚Â,1ñ‚d4(êX؆°!}E ª@-¢€´¾|*yÖXæ ™0(ƒUUx²Û'Ì‹ÀÄ`…V‰$’I$£ÑÀnfXoÓ¸­™[5M–hæŸÕ©r?G0à 0à 0à ??Ýýöq~½½÷öãj}Í9Ó*>6–®nûþÝ㇎ýßÈê⽟"Ó±*ý—í¨ÜàKzÜ,’Õ¨RAÃèÀcšÉ„fYŽ?ÿ'éŸ.TÿOÓ>\£¹¬˜FaéŒÆþq»,”àkÆ“Z=_wàþBtµëu—ž©xîYMʪ†4gþ®b8.ݱa§k›µâ~™òå¿´ý3å‚c¢àqwèÝ>Ü7ðúØÍ9tdƒåҠĤD¨›Â‹Ì¤î48FìÁ"R•BQú¯ä 5s™`Ä:RÇ× PJÄ blbtçJtgCSïï¿9Ùß}8$’ *T¦SÀèÅ„ü}t]6¼²&GD´s/*«e@ƒ€Nóçå rñ­±~æ¦ànÉLÇ@ÂW#ñ^biº‹¼€5™PÛÁ›CÆ ¬!IiY¡N‰ˆ‰»ëoÇdÊ‘˜ õNþûÞu§Voæ y€y•À Òì\`Ü› ¤´ÞÎRI$’I áWª}¼$¬(@RÜG#¹£šWÀ¬<a†a†aøÀó¿¾Ï‡þ©]Ý÷ýê½Iz¢Y$%ªÿP¡QE|kEê¿ FÖö(X´tüã¼ýŠ…’BQú¯õ œnË%4kÆ“ ”†d(ðh¹º©t¡è ø} d”~«ýBœyAº'D:!шtC¢Ë<°éžYO ä”ð”ð”ð‰ð‚ÿÒð ×ëÄèIÓà¨æz„pWN#Ä~ÍumjÂiAÔfÏœ­éJ<Éj⣤z­ÉN PbVGDÛµ•¶»Œì(DÀÓ;Àø…ûçâ^~©™ ØÙS1ó½ djºÅ@†9[PV’p­©ì”Ö&Þ'Ft§G¾îtxìï¾¼’I$¢ŽF,LYV ´A”Š„Æ§N•(–@,d–†Y·ÍUÃKXg-2*.‹P9Cºlßýéˆ[ŸÑãª?Iè€Ï£G2À(L€A¦ÜâXz¦ÀÞå)1ß¿ ·€U¡ºó©:ÐKÌóIÊØÓúYr!Zˆ %þ™·y‰z¥|Ht‘À8UI$’I$’I8½Go†Ó›×úã÷A†a†a†~TªîÿïÙß~òìï¿}íW­hÒ±NøýEH•tXµuÐ9ˆæläüumœñÜ“öɦhtŽñôŽx>¦­DÙ:™îf¼â÷ʪnUt1ÆÁ¼ôggæ0ƒ¢tC¢IÓ˜tÂ|²“Ë<³Ë<³É<‘éƒá¡ëLªC34-ü’]ä"MJ€7…¶p _U_6ÄV'Ó®P9ŒyãøJC€›L„Vs±¥ÃÛeÞó¹ `€Rè–ü12·ŸÎ"À²¨J?UüK:ΛQv D½¡ËÀ?Ü!9MŒMŒNœéhô4ºz}Ý÷åÀ $A ¥J%5bÅ©HðàÒåZNÈH@¢@Ûk¶R²1•ˆ)D8d2"óFÃCš¡¡k‘vÖ6Eœïc`ážAÍïѯSÆ0ÂÊ„Eò Œ‘8d°e†1Ï} ‚—8ðáFæægVoæ ³1¿^Ü£[¸ÂpM›hÉfXÝ÷åǤ’I$’IÁýó¬nÏ!9zNo_é¿MEwÏØe†Xe–Yeø•UWûûíýö|ü»;ïÛ{ƒN´äoäp !0`O?¬×6H­äÇñÑÓÏß/×ý7¾USr«¡ˆÆ9¬˜FaéŒÆ^¿¨Ç*Ž\ºàNb”aôƒb?P ‚$’I$“ƒ-;cü»­>]Lc£-äB$ÚÀjþ€¢t „Ü@¡8¿Èm¥¤ÍaKÙüº Šù|‹›ëë,¾¨ÆÐð]3o2•Mœ¥*"¢[Ù¼Xc§°ÊÀïM Q©AN>·kfeF€|ÙŰ%y)"Ãu§ã‘ÁUÄP0wé*¬££Ò‚= A$šF…JeJá]숭֧» 6††xs³*îEÕ¹4*Ôï ÃXÊbÀÐL&U@@Z†]Ù^õfX¸Ótax‹P˜åR'qyÁnaiZ«ÌMàCÀ1¾3sˆ„,"jç Í€£x6`VÙ˜5@ˆŠ±ÖpÀÔ½-T%2BBÍ»?¼øþ/À0aUòåÜ¥Ünåá\nÈN6`ˇVÌAIxè€À“`É,K§%î$¤,—ˆã‰H—Ÿê0]E/! &7p „mQÀÜF<Šžte B#€|Õ ‚ ƒUßm*ÖÚ—¤æõþ™ßô„˜H0Ž[ì²Ë,²Ë,²Ë/΍UÝß~©~Þûûk[°³=h¶ÜOÈéѾԫ8b­Ø³›ùT ¥`Õ4û4º¾öýrÀ²HJ?Uþ¡O"èa÷Ôz‡$3I{²Á‘êû¿ÿð„ðªö÷ßNRI$’I$’I$“¿ý†¿ÉöÔí‰Û<³Ë<³É™Ñ^S Ÿ•MÇ:BÁ]¤Bˆ_ÁûÁʈùAëÞ‘”erÝ€ò´Š2l]‚P•„Ø›ÈrÁMš ]­a̾›jÖV Õ‹h¸{ï= k{üÛ‘&Ôâàñ·äs o+€á†V%‰ÐÒÐá¼ìレ‰$A…p»hëÍiCpl­·fu‘¡°˜æb‚ÙUíÅ‹V¹tœ¼ÕÀ PRQmsêV`<[[Åwa´•äAhÅAfWÒQù–ža—º*XRã G8Á {¦Ë,²Ë,²Ë,¿ª«U]Ý÷ýÎîûþ§g}ûõfìÞI½™v ô\WÝøû„u“”~ºðB†~4ŸŽGF»Ni½œß¬k,®}"Y›i/aàX1,’Õ¨Sà‰÷׆‚ íßâAnÿíÝi;w|öΟ'ÛQéLzgBtgJ„&0ï ۉ,«’¹6 nd¾B`¡…øÄzÜ’s0‘˜´€ˆåƒùÖyˈl°€*Ë!L »¥ èî©Ô¿i¤·ÌŸ€9ŠQ‡ÛojµŸF%¹1a@ðò•Ö%‰ÐÒûþ§Bt¸ü’H Ю’´Q*%hèÅ‚6Á›˜)d<²€»D‹¤€€náPÄE¡ö‰—FÖ-œ ¹,‹‹·;Ƀ‘ˆ»5¬©- y±×ª3Šï ^¨+—$øÿÄ´{5wVl_[zò„«€¶»âò»/ÒñâÖÑä ÑJ\¤4‹SçaovNë nM½AÙl–7@âh^-PPÌQvÙKôÞ¦§ŒÓChÝ­¸ó”`Ì¥­7&ÅÑí%r— ÜoFÓ/‚ȰLpQ}wfí™,ýë¦¡íµ™Õyßß{p×âÀ ‚ ÐX ÊF’L˜"<œp"€ P`ÐÂòÖLÀ=F[Ý´Ôß! ±­0m`”ªÔx½2d¥°$»ã} ¸|¤2‚‘pë²Ë,²Ë,²Ë/ê!w}ùë[Ý÷ß—½]-ÌÍÙÔ—(œ‹=㇎:yDÄþ”ÛuåM×jÂt–ƒ ÒÆË¢„gºs÷ãþŸ«sK±+Bù7ª2‡(%’BQú¯õ |¿’UUH ‚ ‚ ‚ÝÔ íÝðýÖžÝÜï¼ï¼ï¼òiò}£ÑˆËÓ¡Ð9цò‰]eå`Œ‚SÎ ž)òÓÂвQ¹º´c^½ïYK“ÃoèLqŒœ£CÁµ³@ñnYÐ ¯e ‘‚%V$ιòê§fjÉ¢Ÿ˜[À@ôE`Ã錨¢±:sc¥:\Hg}ôÔ $’4*S*S«£yæ¥*6®¥\c—^Šõ])úmµŠØBîôð®û@ …±ß«®($¨Ux+а¼ói¼#<|ñgesÚùй¶…J=˜7õ ⃒ðsx´åäû¶ÀÂŒx’ÜF©Ü©5€A¢˜â„j ¹Ašš öʨ³¦äëδêËü’ÝBèLªµ©3b›(¡Y@Š2ÆrMRª†—$–<ÛÅ@0Ë¡aBu(dl ,KäÆg*ÊîáŠse2es0™Šî¬Í¼Î¶ŸWáVªA’k"Ÿ›õIö†OTð{P)r6îî‘U`»Q6é)y[œm1¬5Ä`c±1w?QçÂ’ºªÙ\ª­«Íc³ D8G#†Q ãƒê3mÕÙe–Ye–YeøÅ «»¾ÿ­W«À^'3«µ17'WÄ¡ÏwBˆçò­‘ k0¬mªÐ½›m•PC£ŸõXk`CÔ0«j “z£(p‚øo“•UUURI$’I$’H ‚ ·u©Ûº»½û­=öáöc££Ð Óo)—¨€Gv¬a‘}hºæü?LÐÖPS„G–Èá× Õ´Çm¯ù¥A1M’ ç%—‘Ü["ÞæOŽâà/ÓØimN)ÞcÜ£†á :]Hûeu´¢±:Sg¥£Ñø€’I$hQÂèÆ,¾Ì+,“ KB­Q¯PPUal¨dÊË•[£hضɸƒl,×µ*òQU-µV!å﻾-•¥0Þ…¼ÕãNFõâòKŽÍ™sY»,‹ò¢ ÿ’ àŠì0“.+ÎP.Ι•ƒEƒ³âæè³:/SC3©:Ð Ì _ÝÓÚ(%Ì:´FdM©ÔÖ”µEÝ5Ò¢v¢=ìgÁ6 0Ë!v^æ‘ ¼*­Ì/Å5ý°½TÊ{(Ø1­2™=|I»ÍbóNõuMìÆ6F29Ÿ7Äêδêü•I ‚;wP†J4,!¤RCk*.‰BƒHŽDpœ¥ž;¢Á)B`vL€Ñ‘ªxĪXqšÛà9s”khXF-mEšß C`|Þ +uœÕ67X²@–‘³<…˜ÆËŸhþ´ *8+¶1= ä .³e ¢ªÚÇA†a†a†€³¾úpUßß~|:M.¼ÜÌ®óô”^x­i'å±Ç«îüÿŠk‚Á:ĆüàvŒm «« ”ØÁ<´Q£ãõ={ÑóÞúúÁ–Qtäpiid”~«ýBŸß–uUUUUI$’I$’I$’H44;w™ßºÑÛ»»¹ß»àïLe†W¥:s¡å¡|ÀÉÞ#L›Ç,KüŒ¹¢!8?ËDµ™…Ou‚c!ÄÙ9hpQlP ¾ @þ‹ü_à|¯bR)¯Tç…°iƒ­ž÷B‘Ebmâlbmâwwë:<%ýÝ÷å;;ﮢI$ÓE £­é^=Û»8lP¼‘bïÌU Í-DÜ1›J2‹´ÜYnXÎ…bÐÆ@¢Å_>\ý é4ZÒi’ÿôèþØ9 YÒd¦ÂŠW¸Ä¿ ç%c …‚oð UI”NNi¼†zéÙß{N¼ëMüøÍüÁ/1ðèS-Ÿós. ”Óº sÃlö˜¨TfãüåA m –¤j 7r©wé[¸.Ùõ— ·É÷”uÈ!_yG uT:J¼’Hu6nÚ¥l­§· Òu¶@06–ûf®²’‹l…Å ÂJUS sÚ¼Qp-QnCÍ2 åÐVTcÏàûJAmólê_‰ë£u¸aI$’NÝÔ!ÆÁ–€a†oÔÎ4'–¿NFíE3¦\½ö¡ØªÓÜ¿P µ¶g +!)X3¾iÍ-W-H,–Å‚5½#bűz¸x›)Þ«<èeѼ ‹8pyD« ŒxÄŽ£ Ã 0à :ÎÿÝC³¾úê÷×àþu4:ó©7ó7s¡V¢ijæï½°n=Ë1óò˜³×ƒ°8ÃPDsJ^Ë §²{fÇ¿¿PÐY$%ªÿP¦õXÏv‚?-ú5Yi‡æ½à¾«Ûß÷;{þþ"ªª¤’I$’I$’I$’I'ÝÜíÝÎÝÜíÝðvYe‡AÑ9ÒÒ…hSP­L9cÞGð±È³ãkhµäœÔÈ^˜]©î;º9Y؆‹cpÀ\1¤‹£™H»ÌAKœÐÑ›Z Ý||fs§“âùJÇÂ/@Å(Ãí–æ›¹ÂÒá }²ŠœMœMœxM¬NŽKƒÞÎû騒I$ÒVŠãëŽm”o‘å” ª,ÔÍgt­Û:Ý2 '6‘FB9ÝÙ¨(ïƒzô«)•‚hø”sbW{ñðtXå æ{ØR³`0\`™o1`"b]v÷J±¥´Ü\B ^ugZT9†û¡·ë,DU´‘Ôâ½á—>Q+k½òAã X`òŽüT •=gkc㬔FØ,gmÖˆ´ÙÈ4 ÆÑ(ˆBÇ%¸Fî«Àõð‡ G¨ÐAenMì‘+ K’nØ-¥c-³±2Ý‹¬ÙF |i×׺œ ¤’Iß¿Ì%Íì\d²ÖµLJ"#·ý½Š_•:P, ´ÕÐxJÆPÊV\¤îL×äáv‡·u{wZa†aíßùtÿš÷×G·¾úð/ßß~:ï[C©:ý÷ýδêÍüÄÀœ”QÓ¦$=G÷æjY¸ÕMÙ_HY“¥¢…¥h ªø· <ÓdSˆS:¿ÓÔcP:tć¨â +“¦_âij6 ù•]UUURI$’I$’I$’I$⃷u;ï;ws·wïÝG¿uýÜe–YuGO¥:rÞQÆYÝpªèÂ3o06¯‰ˆçÿRŽø =±rXå’,|r€ZxdG4Ù…qI O‚êùêdñ®hMbWå°µX’baX‡þG%ãÌsdÏÇ}(˜Ä|ðR*¬M¬N„ÙÄÚÄè÷ßõ:öwß^I$‚ é)•)á1e:Pµ#° ·Q(% 5*M¯ƒ]4QâÙ‚Ñ&6RÒ““pÚ°–y;”é²VDY2´b¨aV€µ]Žw@©U–Y ‚‘F‚É'âÆ¸ð :Ko’!…rÛÔÛ¶ªvwÞó¯:Ó«7ó¸ä©r p¡óÊ{UÛÁÐ"e”ÐQ°Œå®Àª€­¨€òG¸‹R3ðÊj^€Än*â 3²ë (j¬Q \°3¶3|q,Ó#j!•–*­‡ˆÒÖp°ˆdSÞyvü›@ÏBªà B׌l™4[ú½JJ”m•è…p-«´ÚÔçj/¬ËùοxM>¼êðhI$›Íá¡ß#îA§3é"ˆx¼Ntmh­Z.Q}!RT±é®_  † ’êÂü%C ÃÛ»Œ°öî£ =»üG¿äeø5Uþ¿]´ëÍÌÍÌüåãuLiÞ~Y˜Y¤„©4Œ)0ç œ§±ôçí÷[Öád”~«ýBœò~wÜ*ô|jóž"’I$’I$’I$’IÅ×m§nêwî§~êwî£ÛºÐöî£ß»Œ²ËÓÀNt'Bt¡·‰‹xøÑ¨pNêlU„“ü‡Ë‚TŽ‹ú€£ ·­ÐØ Š£ Ä ¨§÷æx¦jÇê¥}"ºgw›åY.R0%w Á>EК˜´}°'¦ÔúȬfÁí€V&Î'NtgJt¾ ^¥ ‚ 8]±bzP#˜X¹5øQA16 )U Ê8Ægzç0†M¡MÁBÃ\…WônæS¥ê•´¿C¯âÚ†)­vï }íb£KÍy«Qƒ*Ø51p‡)“fÕz÷Þg^u¦î|föe7˜tÞ_òñh‹XÝ_‚‰9‹A‡Óùh(#`- 7PÑ&…+<Åœõ9¡{ìõ€ Ùwœðwu•š6ò?YàhO\óºúäí-C*,£x½l£Á¦„6ÇŠ¥ÉaxDLK÷–í« šUùÒ°]6þ>/—ÔçrØæ«í¿œ€Ñ ’Ý:7–@#ž½¾/êzu'^ugRu§W…@‚'½“Œäðom• XŸ”æ”,©”ÅҵкŒªî• |?eïÝÆYe–YeøT:ÜîçC¯ÝN¤ªó¦a øWö…®|ãÄù[…Ó'1J0ûdœÛÃE ]#¯÷OÎsy3±éúcŦ DÊ&b¤£ãkø”9è_Î*®ªªªªªI$’I$’I$’IhÛ»Ñß{ï¥ïÿ#ßþÆ^ÿò0ÃðÒîþ (—éÁ ­‰Âca`ÈC¾bKn´‡eéoê‚W‰ÊX+P’»ÅS¶Åß@ðs„^€lzf˜ÉÍñÂÊ¡(ýWò. Y°³[Æ_Š>°Æ½`4ÇÚW_‰µøÐï®9:íïþp A$œGhÅ‹Qãµ}ÐÖß¶p`Xöœ€YP£“¬Çw$¼|)çbwRïËè¯b !¹aC(˜qäîä;m&ÖLù¦P°b¾LÈ™†.¿x0wµÎë‚_æ ¿3­""À”9î@i7ï¸Ü^Ž$S?H ’8G– ìÀáÜO‹e¡uNY^V(_<=½báˆÕÂ_EîT-|¢ E¥cú[(i)bŒ@U‹ù8ñ+ÄÎ’Ê–Ÿ¸1( Ôk7ªàpk¸Ô*k¢ñECí›ÕÞ¶ÍAPÖŒ}ÑÙ`QÐû;oŽå ‚l庇ä4³-³–›2æË —‘ÛÓXÑå"ÙolÀÖ,˪$’Á[/u´Xíža†a–_‹UB´ßüÎÛ†_çPy߀>°@±ðgq}hžüíK7©»+›f¸hl àƒøð+xA¸žÒµ ÚèY$%ªÿP¦\?jezŸDa?@A$I$’I$’I'ûw;ws¶ó·u¨Ã ²ðVîï³O£:öNœ&ñU¦pRí¨&¥ÌMÚs›¢ùÑ‘yËDÝ D•@#i@ a•Kg2kÛ“•k[Ê"`5¢¥‰&AMbQÊmâtgJvwé:?4I ‚©RSGVµ2Êè`3”°¥å±QAêɶÁ­¸Œ¨#ÁYº‡8…½ÖÄ#F¢Ã40Wc¿ò^Â;:¿2BäÂ<¨L úÝ wúª“tSæ»ð!×›™Y¿™Uç¿®˜VÓ¿ÿp˜Ô´øH#™õü,ªÕ S¡X¤^oâÆR2ÂU¸2 ´ÔÓw“Å`ÑÿcåoXÁ¯E…- ¤³ ¼ –®ôK)K¦±ßA1Ç“8g›Ü—¹v ÂëÚX¦µwT´$SE~¯@¶ÿí)2!âz ih— ƒMºéƧÝe"Oxj‹æ4±' yΤêο„ëδêC®Iמò›Y˜Ô˜ŠÅ’÷'(·œï¯ÚetJð5ma¦%QæûÏ7ßSÍ÷Œ0à 0ÃTêN§½Y×yÖiÕiׄtæò.©Í{Áæ+iú`EÜuô|÷¾¾°v¢¾ pð\Õ]>Í/Ò¹³[µk}‚f¥¢¿!ït5K2¢¯¦Œ6ŸC³ó ‚ ‚ ’I$’I8ÿy©åþ§}¸ 0ÃÀ«[Ó(eÝ&Јð!¹Šv&[diˆJ1ƒ&˜”J—>=Án¸(%/À6¡­²9 SHÐøaeP”~«ù—ל·v¢F™W,cŸ€?¸@zcoco¥::·OO³¾úpI$@JÑD¢&ŽÚ1ƒ•°niHŽåÎP²5lnÔÊV¥;#”%ì* \ÛŒ €­å(£@/1òä!(0³Í ´—:)tÅUl}ÃÂFγìòŽ|Œ ^s­:Ó©¹Ô‡T: §‹_ÔÅIA0·4Ö0gŽÐÕ*ýÐùEï¬Ú„ò„’—rµ_¸‘0ú©Žp5»fyÙçÔzþ±ë\eë^VugVu'Ru§^uçRuáøÀ#˜?w,v•s‹Êô7õ³ûÖŠ[ß*©¹UÐÇè,¶÷…7æF6*›ÎÍÒêóùþ“˜*Dë“rƒÌÿÞ8xãþ¤tòAA$I$’IÅÿ}µü¿×a†Ýþ#Û¿óà ÑÑ)Ñ—Þ>Ðßá#KL&Û÷ü$He%¨ªì¦ Π©©G$²ì& ΂(-XÆiƒ@êý^_ÃÛ"‰Åª~ÊüÑj§%¼E4öA+g§6q6±:Mw}ùê$’I…Ju+GF,PÎX h`UÀe…`¹ˆ÷UPÂëu82É*°ª/t(p@ùÀïüØ!¦‹R9Í‚ äø†"Npî*°®¢‘ÝE­•V×*¶«º¾.g}ýg^uçRuew™EçǽôÔ™øû…qÅCsj,ÃD¸YT%ªþ@§½1öª>Þåc8ð½¯-+} ®¸ÔWU‚ðQBîI»è°†X¼ Q³ß'þR=ö¶)¶²ɳ’DfɵŸkïч:‘)N(âÚç@‡íÊš%j™ai¢\þ(œ§5eÛ¹|ˆP -¾aN¡(I¦SZ¢rJv P$ U¢ñ ƒñiÕIÔ‡\²¾ð26ð÷Áæi"ºƒ(V…qmÚáæžyçžyçÑçŒ=Q‡ª=QêTêN¤ÝÌêóÖyÕ‡ãƒþrŠlUüq!-¼Å º?äVÍo „R÷ýiØ©ã#(ô?7iÍ9âÃë3CÑÖüK‚´öÚšaDy,’Õ¨Sõ8€4AI$š}ùp~øöàýöàL0ÃWº£¥o( ãÇ”åt2·Ã&ÈŸ3@ÐTi´» 4NU”¥"Á*é7–.®‘ÏÆljøeP”~«ù„µÌ:–ÇO+¾T×?Û`ˆ¯dª±*¬M¬NŒÚÄèñ5ý÷×Q$’4+¤¦SÂÆ1¹}Ñ­¿m2ª¤q-<ƒ]qÔAñî]RaÀ,ÑØh1 å(„5C'Z!Ý~7ñzì3wé#^j[ßܶ©yœ4І€p½CëN¬ëMÜ÷ºY"Á¥&A.Ÿ¿cy| H†u5üE臫é ÉDŠ¢J¯‰Í+Üt" ƒì!±…©,Æ–+fglåµ@ÅÀž1 Q±£°XZ¬›J©D[ñ†ÙAF/eU‹k§2¹þ âm·¬QÅ,Za`½Óy‰¾0·Rl”H–Eú,-¥¶Ñ×?ƒ\¼xkbFZH±Û#j¨|$8k”ƒAbš`Ä^c@©¥Y„! U²D0>Î8Ýïx ´¿W³î§BÛ Á%(ƒñYÔ¹RÕL  æw²"`@F-R~Ó,±èÒæòÝy§žyçžyã×<ñë\qÞ=qëIÔIÕyÖƒã þ£o„rs4ƒ ¤C âÅmÑŠë‰ëHAËú>Xõ}߀øH~€‹1KvEÕ)‚9+ 3Ý9ûñ—ëÊ÷lÜ3»à¾Ïo„v{ÎÏyÙïò@  ‚;?0‚ ‚ ‚/ûãƒ÷Û‡˜a†;;ÿ'gììレ¿}øét'g}í:s{ÞRí â,Z гt³@t yaˆå™‰¢Öñ¬|°TQ(sÛšIÄÕ™L|‰Öy½™Õ›ù”Þ`[Ý9+—ÁNIzŒ!Û~Q8µE™]8Îøm¡Ü¤½3}5x‹$<¡]æ#ÐÒUnö Öž`äähùp—¼ÞÏp}Mð™YaCõ“%Ô¢64ÓàÖ7Ãëˆ÷#9H@riÙc. Éᙫ¦Ü¨¦Ä»\XgcÖuÙÑIÉÖÏåLpŽï¸¦5zN8GsØSǸr¹³$+ÒçÆi]56Ò+c¨4bmÔ1¹ ~[`àÜ¥COí/‚ºà·±ü1uU|jÆd±]€,¼"UÄv9Ü¿«E7 ÝV;3¡Ï/¤6Ñ‘óCxnâ¾H(X„˜õ…3Õ~ÄQ¼Il&.u¢DŽþº{¦ß¬[ù1Ôa?¡L5Æ:þãàø™5V-?ɶ¸† !‚ ‚ ‚ ÐAA¨Ž  ‚ ‚ ‚ 2N/ë+¯åÖe†~ øð„Þ a!”¼7Cí„rá„ûó÷·À:P‚ $á…L';¬ ¨-l 9ž% /ÎUìu›m›ù¥V71SXŒxd´JÞØ:ˆäD2Bü·V%w¸H   +R‰O2`lFÃC9hh ¬Ä€ Çé9ÑL¢±frÕAL¢K% xFάÝ̪òCÚwë ϸÇÍr84¶ÚïZÞ3¯bÈOý ª,ÉLHÛ°#“¿‹ä[̼…5éLRSAs$:±…¸mYÖmÙÆñ”%O b´Ü"Ô§J«”ÞIÓ(¥Z7ƒV”°Úb Ó#…ÜÇÇù+_íØ ­*ói—îÙ?BÄnÀHiQcº÷òq^ØòU9ŠzÌR‘—Žžäϸob|~‹äUèŽüÖ¸zξ9¸¯dùÎè -PàaŽLˆìB ­q´›ˆNŒp•…{úp/x¼–КàY$%ªÿP£Ö>NQúëÁ !‚`‚ ‚ † ‚ ‚ ‚ ‚ ‚ ‚ @A B ‚ ‚ á£Gªz§ªwÆ«,²Ë,¼5îûòà§·¾þú} ¿‰¿‰ÈXÀQ‘"9#ÒFøW’c¸N°tçJt{ïûâkû;ﮢI$IL©N¥È ƒQ¹õ|k=T9ÂÞûÉB„ÂM¹µ®.I.˜SôAh "URwHî%‰‘FS0J7Ó2³<‹‚g†,†h™Sc޵¶ëÃØl–E©Ý÷¼ëδêøÍìÍÜÂ.ý˜¬q°''àêÅ¢¿Èј±'¬°Tѵ…#ŸïœDQBB®Y3Û¸H&«m†²"ÖGª#'òYTà4¬U:’›ÌÐf)Ébë ê~©oNÊ+ìƒ%Ûm¨È× UÕy}&=U …çšìì·ut³5mø†¶Æ0c”¨e$= „Yr¡w 2*¨+ -Aß!.C‚ H4©¦ $üuþ{®t“™ué@7ti§ö Kñ£ê“åýzÿ³KßÏõRçÖìâ¥áò †!‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @„AAA‡kà­IäÓê×e–Ye—àÔ*z=÷ߎ™¿‰¿ˆÃxçÕ×L($禀Qux1”&]ÒÒéñ`$’Gk•+¤¦S«ý@6¯ µ‰q"æcÔ¬@ °9xM¹±ª„ €3žÚ_3pÊ©‚Ôªu!˜o0ËKCt\ˆû‚àóh›bµ˜P.øñwNVR®¥×i»Ÿ½™MæQy€¾nsEô25-ü‹>s£¶Å…K$qvác:Ù…•.lߨ­ÚjÉ­ BÝQm©TŽ)l,[Œ¦p`nÕŒüÓ– ’ÅÜš¶‚ÍÜ fŒ¬®¼rfŒìwcœÅÝJÔ ž³àoƒ!bÒÀÐwÀ†/m ÙP^Ý5Ô,­vÕR¨%æ‹B%_+Û†µ´uÌ Tø~˜Vp≽8ÜÐôÀ·•Î{"]@Ýè, Ç| âP2¢ —ÍÜ:‘òL¬ b#<µþPÈLø6l‚ÝÊ?c¼žùÔ›VKO°Xìw‚ŸvœÚV_Õ<.Ýísˆ ‚!‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @ ‚AAM©äÑèÓäž­VYe–_‹Uª|ß–r—aXÍÔŸTWÐípp [Ùîï³O·¾új’I&…Jé)ác€HBùBù؃Éxæ&3w0¬ÜÚÄØÆ¶´X©Em† þ± ²ÛÂ9Á¶ÈÁê£b(qD¶§ ¿1o:PíI:Ó«737s7ó7ó¼Ä¡Œ´@{ÜÏ 2S^hü 5ÐÚíbá€|×Ïßœ/çýeñ.ˆØ¨xÍ¥ ˆÜÕ*^A¬Õô:¶¶o¬fØË7öÆ;° Í‚·-»>Š*pâówå´p2æ"Ã6k¸Ð;â ©0Ú6wd¶ÍfJ¬Y¢œ9˜HÌP’>Ã'ÁãU4 Z%ÂBí‡ze"67#t)ñ,2 XÊòò`)‡@€sI'äj¤DhLõQ@N5û%’ßY—j GÀP!¨°ÍGçìI=[Ä~ªi‚÷8˼ða÷ÃcdvžéÏߌx{Þ(ç †5<§æVåMÎñÆACAAAAAAAAA@ @Ay4z'£„e–Y~W¨ìï¿nþûöÓ7q ¼Af‹;8»]: P;øB¸Q@¤go}ô÷Ó@’I ТWNVú4oBÑ-„md¹Z­]î --M½á©bʘ¤ÇÂ;2e¬Ó®ÆèéÅÍ^eatÀWyrœ]ÝØP€PÀá¨uçZuæöfæ`—˜,ø*:¡ñ.åp4‰6§ï ؇F2ÿC*. bkáœc•ZÞ™ƒn© ¤Pª µ°, S›¼%t~¤CÉ+¢³œúcxÊ´ïÕû2ÚVm´`öQª*†9®^W×Jj ‘¾,¡ýÜÉÁ\»ÿOs— ‹Â â©ÓÆ…ÎÖ±y"ÖÑk}%šky7ÂÛaÙµ×ÑS&Ó Ö,9°l¶U¥s“f´¿!-F XÊL¡ær`ÎÌ:7­ò'À|ï>Ø@[VÇäø1P KA–;h€3”on”9\ÛÆTG¤ôþÅÐ.k¢Ý6ªcT˜ @6N's´QXÑÏâ|«¹ô|æpˆN„žyºb%GÊéjæï¼CA AAÁAAAAAAA @ @„A‡“SÉ=ѣɨè0Ã,¿ ¯üvwß·}ûG{wÍ‘69v'ëzI ƒBŽÑÞ1‹E|Ó;N¶ ¹ &Þ%P+EŒ0Ê®'`V’ÅXía%2–˜ßÏB:pöwß×O¯:“w3¯+¼Á/Í3æ­ˆÙÂ){º ¤'ÁŽ£…°ÿD —u8çP?¤”VTJÀP(¯8ØÖŒ@ÞÚ9šà $¨üò°Ù ¢7£Ë&­›oÓ!e¬.âÖ½ÍÝbň€B«¾JæÏœNŒ%Ùeâó‚èŹڮ"ZÞûÚ=S²Œ¿ƒªàa^e1¹›¸ñ ƒò ?T÷ÇÙE\oµÜ³Ü×¥Gé‡hQX*DÉW”dkÚ9ͨiNqGR‘”™L£Š¹®‚uØ—'¯ì¶º Ow† ÓLYb+ƒÁÅö7ey ÄZŒ‚yÊ|‘yFí£Ã­?b¥°¶J‡dÃ8Á(t‚ˆàò€€/e†Ú»ž%ël\i½diˆ”-¥«›¾ÿ·xáã¿wò ‚ ‚ ‚ ‚!‚ ‚ ƒóAAAAA @ @\@òO$òO'0à ²ü*¯ÑÙß~ÚnôßÄâ vsÊs$K¸·$’ ”jš:¬QR›h.ÕsDJ ÐwÕ%@do•PbQ«±eŸщÉŠ´¶èuôº³{3s0Np–à(Z$³vÔuœ¿KW5}ø‰„§ê "N|õãmæ$ÊÇ$±è CõK¼›±É¨¢ ¥!ºW5bÖå„Ò²TŠb—Y¤oQÈõÜLWUÉNJ0•7À9·t9W.w¨=ç@<ñÞ%˜G‘q¿‹f¹ÂެìºÀéò* Åmœ AJü²åC‚­ìˆ(¦Ø!©†sª ] ÃIT,«šwbQv”’‘Ìßþ1¦¯&Gà“äÒ•Ôëz¦7¿¤c9X8ÚçñTïpi”[†ÜÃm…¥ØÀ€䤈šAUBÃ0€0kæ‹­C~­Kó·Ka7P7›bü±ñAÁAA¤Aâ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @ @Œ$òOWa†a‡á•û¾ý÷æìÞ›¸j•úÊZ¨×:>Ùg~³4(”iG,X •Ê{3sT"îËðåm6‰ øèõ`øèõcÕèbÛK• miÕI»™]æ ~èú³ˆ<Š¥ºoÈv•øRK&Häb{ «­5ØšÀh«!©[U³fâ°ÞbCÅÁ R0åÝj‹·9ðÞ;Ñ!Á}t7TÜ5¿0͆x˜Ç%•*Ó"ó¼¶XAX…âÁB‹•T´2l=Ý ‘´õ)d(%ð6†‰ GÊ‚i®v«irªˆPñ퀇­…­¬”*Xæñ@>pzÜ> Ý”™O¤ó²A˜‹a@1A`¾Dæ'ÐX¢“BÚ Å©lŠ#Z(¶ÞÉÛÞp†i8¨| ŽlˆØ„C[àÃddJ2ïUKƒìc†  q eWóŠ0ç’gÁ°1|¶ CiA˜ ‚  ‚Ĉ ‚ ‚ ‚ ‚ ‚ ‚ @ @ @•*y%p‡“Q†a‡á€×·¾þó»¾ý£»7%× hÁ¡ñ‘JPµÊå.RPÅAe‰DMã,Xº†Ú¤…ìPó°¶„ÆqXÐ ÎŒ/׃ã¡Ô\cÝäP3ãé>¤êÍìÍÌÁ/0–þè—,݈¾ÞÀ“êsN°m 8нðEµ³!ëèU *há³h\€œé°ÅÈb ®6‰ RAÌ–½&àvX ]°iÚ¨²½`@§ˆ}¶óó *Q(”^`™FH­4¬5‰)R6Ѐ_üÿ ñ0£÷ô€Ág 7o«äe F%uÿ’¬ÃA­`Žq6 #ûUµV…UnPJ0sübÞãÃwÎÓç+ò}ùàGÃIøË÷6z¶€$T¥NÛÁ(U»;Q…]œ¿b³o·ê´Ú²º•×=]ôgñÓÝ6Å¿”ùÄ7L‘êéLåNVþ…Èùj?óÂ4 ƒ@üèjÌ ‚ ‚?AAAA @ @¨¥h©äžIäžMO&†a† ßßo­v÷ߔߛ߉hâr´› 2‹@„ ÔJ%hê±bðl73ŠÉx ¤A ¸EâZü¡•…ÇÔÜ¿XŸ÷Éõ€ÿ¨`Á>0jðQ-js(Ų*¨sT:Ó«*¼À/Í2…í",˜ÉM{¢ðt8° 6igÒõ^=³ŒD2& 3›·A>2¶›$ @kÙ¹X æqÃÒ; aز&=`Áʹ<¯|#˜P(ÀcĪuᘘiP¶–ƒ›BÑkMK†ç1gûŽg#ĪsâGÂ툸[;A à¶ å1±·(îbçâðjº•³.±#«ØzùJIXæÊQêça'Y‹24«°qƒä ÆÔg¤ÄóI­‹&ãí§œ¿DLÛ›¤Š †j<‡Qùû)_ÁÒŒ7[¼ëÞ;£òüØÉ ¦èõ¨¢¾^Ñz¯äˆ!‚ ‚4 ‚ üéA AùÐ ‚ ‚ ‚ ‚ ‚  A @*T"§“EJ'’T­Fa†~)Wÿ §7q7±8ûÂ-2ß)…¥.9‚„­Å‹ÕQJù=ƒõYHÆkO$7 \‹È³€¡¢«î“—É}~bð¤­à¤vÈâ˜ê‡ýŠb˜œ@#}v€EÐâÃõž½Y­ºµ¾šjºBþùvDüå45QÄãà‚?0~t ‚  Ð ‚! @ @•*T¢WIL©RºJÐè0à 0ñ.þû>¯Ý÷ö›³wC¨¸{VrŠ!”ÖDÌýØ+Pšpرbâ{ûïÇŽ¤:ó¯73:³©ã73)¼Â 0uÒ=‚|™·í¿(œZ¶ì®êkø‹ÑWÒ Âˆ ;ÃÙcÈ0Ñ78äWB©âh_8‰¾¨”)•• §µ4¨¬Ð¹i\t•–Ü;<‚Ž¬ÝØj@x}=\nçF¹Ö†sƒdJof#C‹%c;Û†t˺IOW×C«•](¾ ,’­ìßùÏ‹éË Üé¬ä€¥t‡LJˆµ*ÊÇ0}Êl¹•Iìqcå b@ÆÈîÙÏ̧ˆÈ¯!x‹QnMìXÑP.{Ú^‡IûD…{ë€ÂXzÎ&R`Ô*<0§B¶‡¼x{ßõ7ýg×Z•T¶qÿ—¯ò±WJg*r·ð AñÂ? ˆ˜5 h@ @ J•*T§EJÑRºhHà 0ü@^½½÷õý÷öÖ7æö%ƒ‰º+¸b{]f[+,_¡N¦ŸRugZnæWÏÆp¼Ð¤¦–®oÛÅ?;àÕAÍ Çíkœtd€º\]’‡† ¨Và©°Vk»œ€ÙVÆqÆÝ4—¦ƒ§9vÒy.Ò‹ÀbøPr%\¦óѳ´+\ÈÚ~ö⥞ÿYÈdøv„­†S±vÒÕ‡¤à9³¤I“Ù˜•Æ’‰Hæœhg\ãÕ- q?(CÉ)9—¤saé,ÆwKÉn* D.Óó‹ˆi5?±ÚéÌP€… Ö) Àlœ.NÎÚ(6t=ãü|Ó6û~«M«*Ä!9È¡æ¼áøøè@ÇÎ æ44@„  @©R´Q(”J%J‰*$Hà ?U/îènÍÌJxÃ[¡G9=í˜ú¾Ó»¨uç^u&îföfæ`—˜/ª# ]j2HÓë[Ïà"`2!”‰bcÝFAaÞR nÒåÑ©1‚Ü-Õ;š ä¼8Šl•Ÿb…%Bë°ÇO-u w•X^@0=[ѪU Ù‹=º¯pÂ2‡ãY&[5L·/AƒgyíG>‡Á~ù™FÀ餘!ñ@~鑳ŽÎÌÕê…LBä”@ T®óöL«÷ìõT0ªdùQÇÿFÎÓ#£’ !,ã‚ ,f5vÕ-vAýˆ€¾LÊÕG„HÊ”½–jì~h—í1T¦Õ“²Tô‚~v”ø„?¤äáMA B @Ð J•ªŽ 4T¨‘"D‰~¨{{ïéÃ廉¿ Ý“ ÄM’…‚ ¥(ÚµT)Œ·»ï¿-®—ZuçZuföfîew˜eè&ö¹ø‚ûÀQOzŸÁµYbD-ÀG=•¶\°;ÇU'ŸùQÀ2BªnÛ¬‚¡ªÛVBÒº’E¾ŒJÃJ¢ÕŠ'¤4(iQ*çã¼Á~mà»:èŒç[6#àˆ;;•KÙúvÄ›FÈ¢`§-#Aè€$$_‘ÄnÎßè‘’ÊÈ”3””ÊG0 Ì3îi†Sxxðœ òí€Oãg™¥ñÕ•¢Ø\ ~P O¬zÈ¿ìbBv®È*güŠKcŒš²?—^Æ,|ÑCþ­JŠ_³*q¤ùŠ@7ý !É9''Ã95 B @ iZT£†‰R¥D‰$H ø@Go}ýg}ýx4Ü›òÕê=•PpÊ'Â¥ Üéu'Ruææe7@-`¤§ªèn¿(œZ¢ì®êkø‹ÑWÒ/‚â¶´n”nÔ +E”Ê‘%S/ofH9mVÔ!6°¢}ƒã½‹-°(_ÕÈ’â]mÓ«œó(“ßÓBmÅë2Ðe³ûþ`Pê54ÁÄŸ‹KðWVÓ‡_ÃÑ…’ªÖ›"üý‡ ÝÊ™f$#´©>‡JAS-ñ[‘jù#Ô§„¿V`¿ŒŒ,å¤bÊÊ–¹O8a—&æsœ™®C•[Q++‚p7Ì?ç@OÕa”0ž‡óн1Ê× èM=q"Þd Ïð¦M~Æ–0١ΫÀ±Þ£N ãÙuÊþ£ˆâñ, ã‰ðˆ_Œ÷qîÕöp‡º{µ=“Ù=“ÙÀ=œ`rj9'&§&¡h B„ @¨iR¸hÑR¢D‰$áT½÷ôà÷{C{ž†è3•ö\CÜ™œa]‹(Ž—w}ÿ|u'}ï:óru|föfæfö{úÀ/ÍÎ7t=TÒÕÍùzNzˬâU”U Gê¿)ƇƒHÿv…AvyŒ–HÕT jÞ "­Ðo¹LÓ ²tP^˲4På85—[©ŽˆpŽpm>>Á©·ŸûÜ5¿uT˜~&£À©jå!²JGF9θoͨ|/ÒvˆÁ?àAA ÎPNP$,%Heæp•ʹô›zLu”"‹d×£q¢B=¤ »újÛþ_Üf‡úCOÌlµÖ:þãàø–`t¡&`§Ì·p‡»SÙÀ½œÝÄ/t÷häàÉø| »ˆœ!É œ„! !„!À•(à£UDñ‰$HA³Ûލ;;ïyÝß{ðk¹7åøy1®—Φ©â¥u)á”ëN¼ëN¤ÄæoæoæSp¿º;³K±¨Ñ"Nw­o/€‰€ÈP†R%‰uqOÁaÅL ‰`ît½Œ¿KLÁâ2=ÃdÍ‘cxåVÍ1®€ÙF*<~@5‘ÁÀFY%3«*ç¼Ê…å÷ЛC¹at#URgR(úñyèÃõ-R×qî<:=£fTË«ÞxsÎBÆ@VÄO„¯)áö””𔔘ˆ‚B9Á9Á.nÎ|I'÷"fÒz5Q_¹ D&„¨ šÁºÊ÷™|ºØéæoΆFˆÊOv§³SÝÃîìÑîÑÉ©ìžÎîžï€Ý9'&wrj“A9!9!9!B„!†µ(”J%JÒ¥D‰$HAC;»ñø4»óraò0Ñ)­È„@m- sy$´zš}yÔ›¹i‰Ìªó¿t¥¼+>\æ= Ü0ŸƒH(GPÃÌ$Z[Ñ †ÿ”:FÅŸ£F4.ðòÚãŒFÉ@Q´‘2Àq_vw€D@ `À—(Å2Žr®p­î˜X¿ü±ÅjTAÉñ@/¯ÍEyFÊ c3Ô4 7P³ƒAÃÌ”`í¼µàÀÃÔoV¶Æ‡4Îrx€› ÁIMÝc)×ržÓdVÊ´ kÄà Í6‰H˜Ÿ0pÎpŽrÓß ÀzÇúmÄMëýFF-²þøK?û“ÓKñ¡ðÕ™g6•‡Ö8g#Æ5›©¯øÇ_Ü|ÿÎ?òõþV-îáw {´rhöpMOdöp‡ºrNIÉÄIÉ=š9'$äžèB{'$äÐNHCAP„7„6„! kN¥:Ö‰$H‘ ‚ ‡Š¨ìï¼pS¿7f^8œ­ “-7QîÎUõ'Ru&þe7˜”½¿¾g¥V1—çÄÕÓµløÿRÉÿ^½÷üŠ+õ0dß\J ð1Qo- ¥UL®VVzß5gL€!PTf(ªéµ$¬%:”…l¬°«_V„%çQ¼Ä—ï½Ð›¸Djç5§Ãf)ÿ÷V›[°AÄ@¼ Ô³2!‡ìJ7§ÞWĉñ‰ñˆñƒãÆ Œ"âÛßlž±öl$–¶ ïü!#MÙ—ÞxÚýÍêðÅpzÉ‘Ú{£Þ³£Þ£ï­Kò·J8 ¸0‘,ùÆTQ9gºrNIìžÍ„÷kû5=ÓÝ=Ó’rNN÷Ot÷OvŽIìžÉìžÉìžÉìžÉìžÍÉ윓’rOt!=“Ù9! Éh'&ƒ”7„6‡(o áo©··£Æ1œÜC0Ãw߬0Íɽ7&ïâZ1£“ÅgYŸZÁ]Ô²ß\KrW!è„(+>¨ÊŠ3%!éQB†ÍQÒE.VÁÉn)\Úä8–ˆÁ“­çÝ <Õ„¨×‡@2AÃ:.Fÿ%£†š ì¨[a”xžƒG¾D8‘Ö,YȶMç»H\ÃaunóÝñáŠà)†îÍ4ü Ûoÿþtn‘AòârÏt䜓Ù=š? îží>Îîžé“Žt÷Ot÷NN09'$äžÍ“’{§ºžÉÉ9'»„9! !Ê„!¼7†ðßS€ãtuc£9¸@NþºL0A=÷ë èoMù¹:¦ ›ÇH„.áŒ[5ƒYA+f éš©^0dy 6Ëa–¥JÝš€4…y2]d(ÞéU;€µ‰ÈÄ›õ šŠ&×&Tá;:1[mªõV4ÑUylËâªòLHNܹ…$AAQEÿø"@Yª•Li¡ã ùnÇEgP°ü¶¥!æÊ÷Î’dXë‡'ã=Ó’rOdöj{§»O²{8º{§»WÙ=Ÿ’rNIÉ98ºrh÷Owrk9!¨NHC”!BqCCCàïãÎ1ÑÍÂ=ýt˜ ‚`ÞnMé¹7e°]è·²fPÔYsB2îÉÙs5’Bt˜ÙtÍýu ÖÚ úš¢Y ÜTÇ*¦è² lkF¹Ô€^a¯º:Nšgs¼ñ^rº8‡†Wü»Fʼ…Ò×:fÁ Tß+¡ØÇ–"ÈÕ©U ‰Šþ†+È/­ó´œ³Ý§“O³€{µ½“ÙÂéžÉìžÉìát÷Ot÷qÝÄNhäÔä„䆂„!B„55'GF;Çxï´s| ðƒ¾ý`† à›ÓroÌ `Žgì*("Ó(Ue«j-øG¬’²‹%ŠºiØíÀ<œÆ0|:ÔÙ0í æC/¬¾¿¬@µj#åÊ?sæ)ûœxãj¼ŸÁt’Æ0ŒpU ¢\ZßwZ0™`ðÅöž_¹VÕýæô¾L óÇ…T}ä„öOt÷NIÉ=“ÙÂ<šžÉìžÎ09'$䜟 öOg95 ““A¨h! „! ¡B†¦ƒ¨ð.®®ñÞ;ÇŸ¬g6t÷OwÄCðAó{vÁˈ.únUªsP2+æÁ«Íä±ÙÞH»>¨á£Ñ|jrè—|è³›xO­¾›ùù&7vˆÕ Ù9·áª3wT‚øN‰ Æ“R† Æ\öp¤©p²C5k¦`ê2ïÑÃÚÒ'=‰öå ²Ñ»–Åà ±'¡¡ øSf†?}`z$iÚáñóåê`9è—@:íÊUZË=â€"Ï”ctÉ£…Ceàï¾xo=š=ÓÝ£“G²{4{§»G$äÔöOdöOÃGº{§º{§»à€rNIɩɯ$äâ „4 !„45!¡ ël¹o £ãÎméÍ=ÓÙ§¿¤üø ï¿8{ïÎàƒxfäÞ–ú’ôU*TCÁ¸Æ’9oʬºkÂ]«q™ÊW, Ó‹ªEX>QJ@>¢Œ¤äØ=ã칕|wa*Ü×þ®à毗¾gwŠkä[¤Q \O ñ1›"<ýµ)É'.eu!„ÒóÈQ„Dˆ³x¨ý>‰ 4L€ŠÂÀ‹ÌFÀ°¨àá*¹ÍrÇ¡¶èè-€²\*f§,(Ù¸­¡#qqpøXÀ ld[ïô¾ØlqFã—ƒo4÷1âÏ¡›ˆ8L#¸Ê@-–m&IRÈÞ)ì}- T`ÁX+ F¢½XàÑy7‰ý£²náa«Æ—Ièš¼Œõ¬ŒÇ6Qj‚•Ák³æÄútZ:”9Qr©1Ð5Xe'£äNt;&´)„/Ï›ðOt÷häÔöOÃGº{§»S’rNO‹ï“9598!B !BÐxtx]´sh÷NiÍ?-?Ÿûòƒ¾ü¡Þ7‡x7›“ 0š‡•pñ ä2²;ž­x&6:î­5n ŸScL4 Àä…5²Bè3(Ò#*=Q—ÁR¾i~;iªÛ Î_ m¤d%,_Gô.&·nplŽYW:²Å÷!þá…p}“É=ã `4[·T‰‘¨îü†H7ŒYP^ñ‚ü 4ßÚ­È2S*ÁY®ê ¼-Õ¨A­ÖA ÀmµÖþl+9eµ±<ÂpŠ]³ñœÝ S{$¹ÒEµ÷ºÄùG"_RtÆw¤à _Põy‡·ªÜ¢^ÀãOœ}dúi’KKØ„‚µ9)Ì‹6íVÍ2ÅüV­Žë´  ¯ÑÜz`¥Õ’ï4©m_Äȸ…®=¥]•±tˆ³\‰*ÜkÉàE‹wÈxÿáÁMÁ„‰gϲ¢>ÎîžíNOƒîžïN´h èB !B¤+—­ËÑkF1ŽÑŒyÇG4æøOƒ¿}ï¤AóznÎw­±xçc¯ BRí•1YÚÍ¡°½Œß9vbˆÚ i¥#S§”2ò–¥#¨ÅÛų’ø‹òî«q¨†&&*ÄÂU‰Ö=éýJ³˜ÉÊOMâ|%%tQ‹¿ã̵•ƒ¹ k‘’µØ…È‹…[À§<¡’à#d-èƒûýö‡`|øî/4Pe'£ñÕœÓé+ ú t½‰Xx·0yfi¥«H‹ý?˜ÈUg€ýwä]Ô-{ú«M1Ô+¢öOg{§»‚{'²{8À÷|¸œ ¢ÔPŠŠƒA„!0u ã]Æ1çOt÷O˃÷úÎ~ùÎßyÛí}ùC¿}í¬!ÞæôQï};›^”=«½Ðš÷Âj+¾†ªfy R«kj¬–“(Ð ‘‰A@Qš…l/9OM4ˆˆˆ”‰ˆÖ X6€ap—„j³oô•T[ò‚¢ZLÀ³ £ûðTÔ\׎Â=‡© ðØ:„^©r!y>0ÿSO DY&Ç&§²{8»€rhäùñQj-E¡ ƒ0`Â`Á¸0`è:^—¢Éf‹xŒg7öi÷içßYßé9ûñœýøéæ‚àÞnKô4õ9Ü#R³zã9"’þ[ëÒS{àµï€ÿ¨P>02ž2¾2¾111>0|`øÂñƒã ~=¡–¬©,0yU(޼šNEÖb~üzÒ|ÔoEÐXjbÆ•>ªŽÀôò£ÍKí¤I˜mß&ÎZuîöG Ñ´ËOÈûM§~ˆZŽážÉìý (µQhQhQh1B 0`Áƒ 0t:\½-à꺬XÅ‹¸ƒùð~ÿIßë9ûðœýøÎyÍë9§<;Á¼k  þ€VòL Úaèò¤M±ÖQql#p‘ã?²)^*ÏÿË|ϧ€…ù‹óÀ…¡EQEQEQEQEQE1Aƒ0`Áƒ 0`Áƒ. ¹råè²Y,Ñn—¢Å‹1bèQ~5çOç§¿ÓSŸ¿ ÏߌçïÃOå¤oð3bŠŸúÁWÁü'—e1#ðÛñþæžzâßdvŽUpÉ©ÐJF8)´}—×è?™esá=ß$Z\ ¢Š(¢Š(¢Š(¢Š(¢Š(0`Å 0`Áƒ 0`Ë—¥éz.Y,Ñz^‹,X±‹\"ô÷õàÜÓŸ¿ßí§šsèæ˜!äÑû°À(¢Š/ÄQEQEQEQEQEQE Áƒ0`Áƒ 0`Áƒ.\¹råËxBÝ.\X±bÅ‹,QEQÇ¥éqNßiÛí§›G<ØÍ¯¬ÈøKü+½[ -rßõœ¦)³â¨¢üEø‹BüEQE¡EQEQEQEQEQEQE0`Å 0`Áƒ 0e˃.„¹d¹l¹rÙrÍ ã,X±bÅ‹QEQÇqÎmþúüÓžsÎxœoÕoÓÒî°Ö˜gkß¡Òi¡| ˆ BŠ(¢Š(¢Š/ÌQEQEQEQEQEQE 0`Å 0`Áƒ 0eÁ—.\½Kë-–Ëë.\¹qeÅ‹,X±bŠ(¢Ž8ãŽ(»ïËWž~Zp¹Íü§¦¬÷x˜\~#ТüEøŠ(¢Š(¢üÅQEQEQEQEQEQEQE Áƒ(0`Áƒ 0`Á— ¸>.[¢Éd²Y¢åõ—\X±bÅ‹(¢Š(£Ž8âŠ.ûó[žsÍŒþßñX{a/?DAÚ«à\EQ~"ТŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(0È0`ÁŠ 0`Áƒ 0`Á—\½Ö[ÂËë.\¸±bÅ‹,X¢Š(£Ž>ü£Ž(»ïÎ.ûôŽ8´sMŒþÄm—ƒ¥¸U4þM"(¿~"Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š 0`Á„(A ‚ ‚ AÆÍ<ÓÍ<Ú/„a…‹QEQEqÇñE}úG{żWsûŸÅkÓÛ x¹úBÐ¥ (¢Ž(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š/ò 0`Áƒ0`Áƒ 0`Áƒ.\¹råõ–ð…Ëë.\X²âÅ‹,X¢Š.úEßH£Ž8âÞ(£Ž(£ÞsOì(û&Qp‚Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒ(0`Áƒ0`Áƒ 0`Á—^‹—¢åõžiæ—Öy¥Ë—Ö\X±bÅ‹,X¢Š(£Ž8âŠ(ãŠ)Í9âÄ‹RÓÉø“"‹ñâ(¢Š(¢üÅQEQEQEQEQEQEQEQEQE 0`Áƒ0`Áƒ 0eÁƒ¢åè¹æ—ÆèYrâÅ‹0Š(¢Š8ãŽ(¢ï¿HãŽ(·‹xñü¢ˆM~bŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š( Áƒ  Áƒ AA¾¹æžiæžiæÔóKŒ0ÂÅ‹,QEQGqÅQ÷ߤqE¼{Ǽxþ+,_eõú7æ@™CEQEQEQEQEQEQEQEQEQEQE¢ƒ 0`Áƒ0`Á„ 0a@y´_¹æÔa‹‹Xà ¨(¢Š(ãŽ(¢Ž8¢Þ=ãÞžÿ)üÅúÿËÇQEQEQEQEQEQEQEQEQAŠ(:€‚ ‚ ‚ ‚ ‚4†¼Ú}Z=Ž¡†a‡ã€¢ znMé¹ЯЃõ?ŠŸHûL§~’ZŽáQEQEQEQEQEQEQEQEQE( ÁƒP`Áƒ @ ‚ ‚ ÔæÔõO4óO4óO6§›C 0à 0èŒ* ·47&äFe'ü¨ì§yåÀŽ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒQAŠ(0a aAAA|šz'¢z'¢y§«€0à 0à ?" ¨ Ü›ßʶxº¹D°#‘EQEQEQEQEQEQEQEQAŠ(1E P` a ‚ ‚ ƒ@ƒCͣͩ枉|Ñ<ÜÐa†a‡â€ ;;ïnMïåjС]@I>à”QEQEQEQEQEQEQEQE(¢Š(0`Áƒ ‚ ‚ ‚ ‚ ƒ@âÍ=0à 0ÃȨޛ“ ùt-䜸ÖÓ ã {ôªMQEQEQEQEQEQEQE¢Š(¢ƒ b„A ‚ ‚ ƒ@‚8Í©æÔ¹êž­OF§›C 0à 0üPUg}ï¬oMùþW†B»"(—Œdµ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š QAƒ 0`Áƒ AAAAAA hy¸êž©êž­‰æà 0à 0ÃÃUg}ï;;ï}czoʽHuR›ù\Áj+½‚EÃRŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒQAƒ ` ‚AAAAièÑꞩꞩêÔópa†a‡á€ ƒ³¾÷÷¾±½7¿‹½âèc™%éÆ&1?K뢊(¢Š(¢Š(¢Š(¢Š(¢Š(0bŠ( ÁŠ a@‚AAAAÆÍ©êžiæžiêÔóhaìÆa†aŽÏÏÃ*ÎûÞvwÞúÆü݈ò"ˆóÿ.ò®Çò}JÕº~–”QEQEQEQEQEQEQE€Áƒ0`Á„AAAAAy¸êžiæžiêâÙŒ0à 0Ãò¨ 7fü'ãUü²¿š4Pã`‘pÅ1EQEQEQEQEZ40„AAAAAAAy§£ˆý³ÄVa–~8ì_wf:Ð~ÆwòÕ6¢É0FQEQEQEQEQE0`Áƒ€Â ‚ ‚ ‚ ‚ øièÔõOV§¢y§«€=˜Ã 0ÃÈ %ß”ääÿ-öù ÇH1ðçEQEQEQEQEQAƒ P`Á„ AAAAAAA©æžOTõjz'›„a†a‡ã€ ?~oO®×‰ò/øÂqK‚›ƒ OÓQCQEQEQAƒ1E(1E a ‚ AAAAq€õO4ôjvÌíOGta†a† ÝßßàÐîKa2a6!køÃZ÷ôÕVšc¨WBŠ(¢Š(¢Š(1Aƒ(¢Š0a ` ƒ@AAAAA`=SÍ=@ôq€Ã 0à 0üPr~ìݘȸ¼.! ×ñƒ`ãÿx½ý;EQEQAŠ 0bŠ(0`Å0‚AAAAAATóOG=Í=\†a†aø@ûwýÙ½ÝÝ(õVø ìuýÇÀÿñ7$‘•I Gê¿Ô)ú`ÅQEP`Å 1Aƒ@`ÁƒAAAAAAAv>6FŽÙž‰èãìÆa†aøàùܺþZÂD4ÁÆQøBû¯Ó‘Š(¢Š  Áƒ P`Å@aAAAAAAh| Í=Ñ=Ñ£Í=\(à 0à 0ü0þö÷ßÒw÷ßÓGzce•„üH]ÂÿøË˜O®ŒÒV% ÁŠ( Áƒ(@Á„ ƒ0‚ ‚ ‚ ‚ ‚ ‚5cˆ©æÓèž>iêã†a†~ë{{ïë§»74,(î>†ý˜¾N©Sº·@oã$¸ ¸0‘$ýA•¢Š(¢Š 1E@Â@ ‚ ‚ ‚ ‚ ‚ ‚ ÐípìqÑ£Õ£Í<ÓÍ<ÓÕÄa†a†:#÷÷Û¯îð}½ükñt?©%"òn ©[;¿O£PbŠ(¢„:AAAAAAAAbÁöÌí™Û3¶glÎùÖífYe–Ye–^¯oÞ}œ:û“{2¡ÌpŠÈª­þ4?é$eJyÿoEz!Š(¢Š(0`Å A ‚ ‚ ‚ ‚ ‚ ‚ ‚ @âÕ<ÓÑ=³=Ñ<ÓÕÀa†eøU_÷\Ýœíb¬‚òßÌÝŽ¿¸øþ"éLåNVþ P`Áƒ 0`Áƒ aAAAAAAAð=Zž‰èž‰èÓæž®a†a†Y~U~þûuÝý-黹[ßÆÌ™:àÈK+ߨ’dXë‡0`ÅÐ0‚AAAAAAA¨>ѣգͯæÓê³Â 0Ã,0Ë/U{ûíà÷~nMÝæûާ¢. n $I?™Q^ôß2Ý~Y$%ªÿP§ê0a0‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ AñÕÃþ©Û3ÑÀXa–e—‚¯oÞ}šïo}ý¦ö†ÿñÏ<ƒ1¤:ãû•²x*§ùú”ã0` AAAAAAAA¨>ªy§£GlÏTõOTí™Û3ÑÅa–Xe—Zö÷ýNÞÿ®7õÜ›ÿÇ@c­gÒ0ªKû2§OÕ(E@ÁÐ a0‚ ‚ ‚ ‚ ‚ ‚ ‚ AÆÑÀ}¶g£[Õ¨è2Ã,²Ë,¼UW¿¾Í·¾þó»¾þórr§øÚÞ)„d?Ž“ýmoÂ2© ÂAAAAAAAAAñÕÁ}ÑÁý\(Ë,2Ë,²Ëðê¿å‹mÏ»*q¤þ:¡³*q¤ýR„P0‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ AðÀ£G«Ošy§›OªvÏl2Ë,²Ëðª¯çw}ûBö§øÚÞ)„d?ýmoÂ2ª Á„ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ìh> z4z§ªz§ªz§lÏGXa–Ye—áU_ÞÎû÷ÒRÉ!(ýWò>ì©Æ“ùÆ„P,ãÿ/_åb±×÷ÿÄAAAAAAAAÚáðÀ«O›ßW ºl²Ë,²ü*«ùÙß~ò[Ÿãkx¦þsK7¸/AAAAAAAAv¿†z4z§«‡ýS¶xße–Ye–_…U~7»ï¿[ëûÿâQý€hÖ„‚ŸÇæ:þãàø›@‹Ä~«Ÿb†¡AAAAAAcâTóOFŽÙ³;fvÌíÓe–Ye—àÕ^;;ïÛI³hÍܰþ@®YàÈ^'Âõp4AAAAAAGkÐ|0èÑêžm>‰èž‰èཱིÂl²Ë,²Ë/ÀªõÙß~×èˆQœ`Gþf˜‰Aüƒ¥«›¾ÿÎBð>Ÿ«¡„AAAAA¯AñÑ;fz´ù§šyµ}S¾x¾Ë,²ËßýŒ¿«Ñ~¹Ö!Ò¶Õïü„J!Fr„X£ÿ5ҙʜ­üAAAAA®|Pú'lÎÙž©êž©Û3¾g£‹ì²Ë,²ËßýÀªõ~ªÀš˜þ}g‡ý£¾_$z÷" ‚ ‚ ‚ ‚5®|Pù´ú'£G£ƒ÷ϲË,²Ë,¼{{ÿºÕºò?÷Ž8ÈÇO3‡3Ê2“w•71úËÕ§Ñ;fz´ù§šy¸÷ïÏK,²Ë,²Ë/Z³ƒ:Ä:VÚ¢=ÿ‘‰\ÜH’FTQ¦"P~µ¥«›¾ò ‚ ‚ ‚ ‚ ìCâ¢vÌí™Û3¶glÎù³Çÿ~ZYe–YeâªK|ošÙTä6Œ=¥o ²HJ?Uþ¡OÖnAAA A‘™òoÝÿÏÇû,²Ë,<@~P?’†ïû,Ç_Ü|ÿ?®Õؾ+«Èb ‚ ‚ ƒ@Ð8Aèà^­Dï™ß3¶g|Îùà}óÁûòÒË,²Ë/Ü(…ÈÿÁ4ç8s<£)1‡zVôÏÝw× ‚ ‚ípƒ@ø@«O›ã{ý–Ye–]h߉Ó*&–®nûÃ(ªY"ã?“ôn˜‰Q4µswß–)º_ëï釲 ƒ³ ìh Ôc†;g_Ñ;ævÌõOTõNÙóÁûçK¦Ë,²Ë.•›¿åZ"»q¸õÅäï(ý¾g«‡ûæwο|ðvYe–_…ÎN í]¿”®äÄþ ¶ëÊ›1ƒö–®nûíø`¢vÏ ú'£‡ûç‡Ùe–mø`˜ŸÁ6ÝySq¦"P)éjæï¾† äéÆž… $„£õ_êý‹oÂCwÌõpÿ|Îù×ïžioÅÃVep2õXF˜‰Aü«¥«›¾ó¬ IGë¯( $„£õ_êý“l¹Û? ÿí™ioÉ}»Çû¿žGþñÃÇù\éäl ³Õ_È4ÄJÝZ¹»ïÄþ ¶ëÊ›1ƒùgKW7}÷G÷r/É!œiˆ”¹´µswß8¦ÝQžLD þ\ÒÕÍßÛ¼pñß»ùäïÛ:2qMº¢_ûcï»ðÿ Ÿž§1º$UþkØ=ybµ¤™ˆœÓ(?jijæï¿RQ5üJõïómK7©»+˜dVÁ†Atçʨ:bCÔqûI¯»ðÿ j¬g»Aú5’BQú¯õ 7%’BQú¯õ 8W?ìø ˆ"­¢ËL8§5ï ý'Ýa‰ú8¨þ` VÄ ó¢ú>{ß_X>Oùž¯Ÿ^´Riˆ”²´µswßÍKt™\es¤­zªÿ<ø¦+èùï}}`âü³0³H%I Gê¿Ô)û}=ﯬ<ävÇÄ,’Õ¨Sùææµ,@Á¡h9±ñ $„£õ_êý„¾ž÷×Ö';çù±4WÝøÿ…GóZ– `дœŽÀØø…’BQú¯õ ~»góZ– `Ð¥²’°¢lŠÇÿ€Å1êû¿ÿð‡.£“˜¥}''üÏWϯZ)&‰:Á!’ýh¥d.J²u’ü3û7ª2‡(’BQú¯õ àxõ}߀øAšKØx– @ô E/Õ–ËL:§5ï 윬?ðlØŒZÜRÌZÉG.£“˜¥}''üÏWϯZ)Ç/þ?P݉‡tz¾ïÀ?ü.•ðÎÎ ÀÇåù_ ìà¿þ xõ}߀øC—Që9ŠQ‡Òg„—‚¥­"ÁPçd–BÉ!(ýWú…?G\ºŽNb”aô‹‚É]X­*3—å|3³‚ÿø`1ãÕ÷~ÿá¾USr«¡ˆÃv´ó¤† å™[õ.ÿèI˜–ÙòÌ#9óÇ«îüÿÂ?|®¦åWCŒïpZÇ$Fªh/Qµ:±ª|9ò¡ñި͂=_wàþùÆì²SF¼i1ÿý?Lùr›ý/üLÀ0¸üuyÌÐCòÙú÷¿ÿð£Õ÷~ÿá;œnË!4kÆ“! ¢± Pû™1'A sY0ŒÃÓŒâh¸ò,ñI/Ä—¾USr«¡ˆÇsÙd$kÆ’—…à Æ,4î 7ò}JÕº|D©†a=äz¿ì>¸ëmHJNG´l Õ¨Sù“ÿÚ c€Á¤3‘ÈÀi£æùR¼±²€hÃr#R®@¶Œp€7‹„UsHJ,âÀR‚¢ÁΪ¨O*@žöW\'­) ƒ °F«HÝHXì€ú`Z&à@ɼÂTðß'€D:€C 'šŠ1¦H~À=½LƒèäT`y d$àÀ°NX—×€83è ¯(0à  R‚@ 'h²ˆ…(€(ã( réhðâÏ<óÏ<óÏ<üËf0À   €ƒ @A B€ Aá•,°#%4ÓI 0à 0Íh²ö” R€€ÀIR°@¡JƒÀ €$N4€BÌ £,XÁŠ:È‚Cö9ø#J`<À€AE(ð €À J Æ Ã 0A €: p5C?=˜À&­û¸,@HðŒ€†D€‚@4"  €0B$D 4A<3K$á  R€ ˆ#A€Î,±KaÐB  0CË "€±M$ðO8ÒÃSŽ(Ç BÁ ru0‚‡ðÍ<²8Rã b @ï0ƒ± S pGS8’°€ ©Ê@B±@ ÑNøŸO AžƒŠ\Æ$Â…qÊ,3ˆ´Ð â 0Ä$ÂòJ<±ˆ$ˆJ4‘O8±‚I@ÑÁ“M(1€@4¡E0$Ý ó‡0 wÁsó$$¡G$2Þé„,`Œ,rÀ(€ò2(3ÅóÎr€‘ ˆ8„±À(‚4ÐÉ.uF0‹<ãŒ$Ì(Á!`¥„©(aD |Y§Á0ƒÍ“‹ˆÜã#M³ƒ,ÀÜøh0„(O<Ž 1†(BI(CJ8,$Æ€b(€ QC 4£QÌ7º—²Gq ‚ 0%*(HÀ%ý/pý0Á ,£Ê4ÁÀ‚ˆpÂ4aH 1$COR ¡Ÿ¿K,Hq#Ü¥GkyxžÕg“2ê&šjõûóœ{€úwO¢Ã ¼ô56Ùò= ýþ*€^‰¤…6«æö®r^kï§ß’l¹ÖN}]6¤…8úiNÏ3ÖÔ¬NgÆGòlg9º!Ù¸èÞ²tö+ãçµHM%Ù-êÍ‚a$äýö'ˆ~—³ñYº{›Ëä¨6CèC×øRÀaaF8'*ÍåòRˆçÉëR-Ç¥»Úü~ûð.¶è2è^ÇsÏŠp8Ú Lq´Y§øVŠ¥9´"s¬ýíNw[üS‘Á‡bgï¾€6nš± §â²9žô ˆ²'·¥¨dP{þþ0™ŠLº6@4¢ÈíNüË{üW8`y>üˆnÎÏ®k‹§¹J[VnpO¯ïç‹2«Þ ¼#^¦šý>*ÄÝ£Ç.?~@÷}Áô˜ú,q‡¤üTƒXG˜¿ûüFXXÒfûïíI lÖ<šw?~\7OZg轇¬RžTÏw÷ø>ÄÕFö¬Ý=©äëùø¦ˆZ#¸”2 ¨=þû‚²nˆ{BÄéøS‘œQø?€Ï3y⌖y–Ú³éø¥}SÚ=jDj=}O¾Î\½¨HSf+ŸžÔ®g!ŽQ~“ëüAØõsÞüe¬ýíNñÄxfÿä_$å†;¿}‰ÙG²i’Ó„öÿiB7_/àFuD!vž40ŽÌÖ}?0l ?¯¾æ|Ôö^µ›§±Y¼¾J‚VÈ=ü0£DçË·ÒÞÏR*DsvCó÷Ù‘áòžÓYó?5ë¿£‘;£çø  \¯°îózý–Éèþ)Á4Aè'©ë÷Ù…Äìü+G_ŠÈçJÀGãø1èϤЅçX¼þ ‚]dq˜ö¾À‹„žHCe;Eds=é'#îùÖ³ßÚ©‚òX¬Ý=Šy:þ~)BšCÙ?}ç4!ëîKE‘Ú±ô÷)K˜XêïÒDpÙ¤!$q‘‡›Ëä§ ÍøiKîÞ‡ðˆy´L«uÀÑSVŽWy†r0ا'°­é&]D Š3ö©r3’0ýÇ€ú•w›þ °ô§gyÖ´òzÅ)ó`¸%E­BT©OêjÕ«V­ZµjÕ¨½’ÍÊea/½IJ¶½¿%5{ Õ¦ç ¤dHNä@ 3%1ƒS«¥ * ,2‹\'Úe ÜèÈô~‹aé?åüBŸÀæ½ÃYÏzqØöºsv`‡£c´~áH$Ï>l×ùžoï³_æy¿¾Í™æþû5/âx~O¿Âx~Jÿ áù+ü'‡ä¯ðž’¿Âx~Jÿ áù+ü'‡ä§Ñ9DÈvÚþ §N;12K:4_¦³ëí­ª;ôÓñó¡_ž6ø¡>Í_3¡FºŸ>AF<»yób¡X# ì|íBèêNÌãG… 4ͲÏÆ•iËãd¦ms¯ 6ri>Èxx¦Z£\¹wm…! äcJ^a+Ñjª€« [íá…oC)3kñ¬tí.†‚8qˆjÕÜdÏûáDæƒvW‹cÐ?€½JwŽžï¢¿zŸšv6Wx|~à'—’È0D.š,ð:qñ{ÑÛ¼Ü/¥Þ[~ޛלíç—M} FóÒ1ç{yåʼço<¹Q¯ýßÂúõáí¯àáñ¢Üèém¤öÞý£Ívøž´ÙùÄÃØ˜ØHm©XlÀs-¦f:f‰‹j/+kZÞÕ=n0NCf¤W``#®°‹tH Qj± FÿzÈÓ†E3Ã_§“¥; ´™îÿ )bÆïÌÆkžÖ‚Ɇʚrc3®ƒcbi“9u ªUUUgïr)Ýl ôXëDAÁ¿y¤EÇèŸá{N‘”z •~ù3À[Úù¦Êlµ‹Ïà¥o»øñìm¸¥øVO4¬^~{R‹Èw u„ÿãÀI'K©:ÍÎ5›§±Y§ž^˜Iâ‡ÏüxHQéG¸ŸŠÍåòR‡Ù=ãþ?hr*ÚÍfòù)\àǨüÒw¹ÿd²Ò˜ºûS„æûsïíÁŽÂDP°.Ðbo~ûÝÞˆ‰YÊÓãJRÞQü$A"GX›#®j\WÔwH;§«R '„e`Ñgï“çÐ[ÔŠÈæ{Ö}O=)JrvSãöîÅNäÅ¥£¹®/–NõÅïòÉÞ¸½þY;׿Ë'zâ÷ùdï\^ÿ,ë‹ß哽q{ü²w®/–NõÅïòÉÞ¸½þY;Ô˜ÃJ€X-GÙ܇½+OKöÖ¦F§$&‚R©1‡R„ê=Væ+ûØtéüÖG3ÞžG³ýÒž uön2 `0œ¡¦,O¢z9p'Ñ=¸螇Ž\ ôOCÇ.›ÐñÈØŸNðx· ôï‹pŸNðx· ôï‹pŸNðx· ;w¡øzmp*è€Ä0-Ã…röTËG¬©”öxoõ)D¶'Ô¬\ßÛÊÝu8»yw…twKÂ:;¿%áßÇ’ðˆpîÔ8wh‡Iuó­Go~Ÿmí½ø~}·´v÷áùöÞÑÛ߇çÛ{Go~Ÿmíé~.†þ4s<ºyÔêp½XÛÎý iîùæõg~’.h£ïC©x™$´‰‚’[Òé5!,¢"+nÌ]€·Þ Êža{Òæw?ï}¿n…``É$Ø3^1·À¯ÛàW„mðòZð÷ݯño}Úð÷ݯño}Úð÷ݯño}Úð÷ݯ(ñæ­B@ ¢êRg‡ ¯çÎôˆDKÔm(Ðjf[dbÝTÁÈĺ@=à]U¿Þå—DÄkîwúiäø§q·»ø3ZNå &¦à áK_ Ò³RgÅx °&Ä€[ï›ß,+è±Æ“ñ^™ÿ[oïô˓⽠÷ö?ãׇsè8èäWÁÿ =÷þÓÉÒ†âíþÿÈ,òt¯'ÿYäé^ÃîÈ,òt¬ù^ïàÕ[…%3”ˆÊP€PÄDMijüøÂm·ØH‡ó}«ö§¸{ׇWø4Øâ£Ó®@ʶ·gG•€Žju$Iå­ "5‹'1„êÎ ²2Úr¸Ø¢ØH-@b\؆V•p¹”¾)váoæ¼Â¾Ï_¦ß5áÕý½§DȶƒŒzWpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8SJm¡r=ŽÅ Ʀ÷ÓŽ=hV÷3ÏȧB*"ˆm„¹Ï­ÂDqÈ¢ åÑGH®¸ã‰'æV*e´1èCP‹‚Àí ¼’ ¨M£du³9§ošðêþÝÃŒ|OïÌñ<õäõþªyäùˆh_Ÿ)÷öuŠ—:Ô·<:ò©ìzþk£¿/Ï©Ô;vy~Nåpûòþ½*\»ðó±¥N“¶IH´zt¨ž_ÔTMcï.S‹ÑÄó¯øéD5m¹ë¿èLˆME$"¶¼±D‚° ²æ JÔJ C™‡i,Çòøôé‘8HƬТ. p¼›«/еÆÑ¼~CKS‰ Ua¦§’-üÞœ9¾këûx/EÚÆŸÓÒ£þ¹~ ðÞ¹¨†ÎþlPy_C§ æüiÓoJ†ç~_×…C~“;mÓµq<óµ}µ8qÒݸT7ó§ÇÅGKõ·çà IÇSXÙ}~ˆòÞi|^p0í;õþ½jã Aži¼!Q  Éra^VD‚"ðdâ X €è1 rL`’ÞöxجÞ§¼G¡ô$g‡ãûíVgXÊÅý»A¿Ì®x=‰ðúaÍó^_Û®TeHwU+Ïÿ|8pMljø±ÿ”É—`%dCPµô’¦ÞpüT!/t&ð³@¤ ¡ SQëF@€ `þfkì%¤™­!ƒe´,E€3`q´-ê·¡ñQiâ£óBCkZD¹™ͦd´Úžט:¥r˜}VzÇÓoš“]]¿ƒ"ÊÊÚ 8×mD|G‰Y_Î ÆÐ’§(Ú*6Ô€éÚb= …'Q_câ³püÔ“·æ=(Š .(’.ÙXÚ€œ € Up´£] ÒpápN db±’tŒ+jn (ÄÜo %›Ûø+0æù¬ù^ï¸ ˆB"ŒÊz'&Ñx…´Â ýì ²Q9ƒ•(€Ð¿¥\®D<ïíṄDˆ…Ä ˜”JñL…ÔVêªþÖ*LHr ¦6$¡bƒ Q¸—-ÃjáÑÜ­CÄ9Bá;NL(:gÅZœ=¿·Üe̼þ ÷žÿ¸Õ Eá`Œé/v¼:•‚Ïà¬òt¯a÷>ä/ï=ÿqªFWO¹Þ¼:•‚ÏàŽêíýþžN”l¶óíG IJï ºSÁ§Ak07Sl¡FD›'XWÖI‹TP‘æÌ%×¾³°Â8ÕØ ¢`YbL•¡^Kq¬TpU³¸ÇÑÍÝ pu ?Rþóß÷¤+MRöþÅxu+ŸÀ<6^ñøúèÄÖ~Ÿ‹ù>Ór ð/ÕØÊØ¬„¬ÄÌÀXõºÓ_† ¶—ÍbšS_Ëåéw{ùÊ”2ÅC‹´ ùûoRœCh‹ÛS¯µ7L[g£œ·¿(ÞÙZÍ0fóÖ'½Y¬¬Î”…q‡]mBÿ`Ðâ3b9¢ÿÄë–N”–‡É,»ÊGJLT5ÛRçZ·ŠFAl@K.ÀKJâî9€íµï=ÿqª@——š‚BœaMaÐ÷þ«ŸÀgç¹ôË“â½3ø1‡î^-ãVHY³}´yg‡ñó ðaâe%8ØjŽ<ävЏQ×Ö8ʳšêv·¼imi6]$ùÓÚ·‘êÅý¨ƒÒ2:’Š˜ŸjKwZVœ­“[:ß‘¤Ð‘î^¿ŠÓò\Èô\r‘ne®^\¸ºgZú;á›5i¾Ï17q<¹BÒ&åYÐfKóÁ½‹ö†lm­ñj°H‹‚. $B fÅ ƒ@³¢—"PC ˆ";"'íäwÞáñX ?€vø}çé§“â½×íÁ@Ô»+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ*t°aÄ¿ÄóÏ,Ôš'z¬ó½cY7_EËÉÓMêßÕ_»'R óB$ˆŽã×ø˜žpUð\À¥ <¯H‹L‹iIdÚói±Xƒ6Æ)Éb]7%£TéK ¶Ý"ѧNº'¡åóšväˆ!&fA´ä~ˆJHÑôW;‹«HÅd‡Í`Á€Y…¥áÀåƒæŽÞyŠr8a3ç—¦$ FÉk&bZ¡î¶ÔÊÚî åý¤‚K¨=ýŠÁä{Ö> ?€ì=xŸcé§“â…œSÛãöéÊõp*]ÞíK»Ý©w{µ.ïv¥ÝîÔ»½Ú—w»Rî÷©w|ÿÕ.ïŸáÚ¥Ýóü;VŽ¿ø³g_Š.°Hq‚êô÷šŠIÂKY(-ŒÚkŸžÿÌ#½éÂAÔDi”„ËÌE”\d``…BˆDˆMDŸO¤ÑòiÀˆŒ3§^·ÆoR@æ„õ7Ñ’Ò³Y4G³|•ƒÈ÷¬|äö  †äz”#‰)íñûv¡†Æ†¼×â¼×â¼×â¼Óâ¼§Çç”ygÃÂ|3oïáûpòïáà_æ_Ô¸2– µ¦,Rt¿¥/H=_:Tñ-íÐ \i º+NÃ5n©uÌ•êòþ¯E†W #eˆ—@¤*Wt+”=‡Í(ß6æ¹b깤ý”W>FÔ £å‡@JŠÀ° D"u!$$ÕŽ6bƒ ÅÇD˜Ã,҇϶éµds=ë>¾æ¼¶ßÁ“Ê(J.fñ }&F€ 6Çð²pÃÙƒ¨šEŒóE‚6Ip¬Ù&bñn:RæcŽ_ó¦ÕN²ô;xÆgè#_=èÇßµýñµFÙž·1ãÇfia-¸à“ðZáYLdöÜL#ÙöiCˆuFãÈ0‚͈¸˜¼ŒÇé3ÌïJ —³"á!&U¯k"B&£åömÿ‡!¶|ÝìE‰À„¯Q]C†•ÑHF…¡äO· Ö뽟-ËGzCÀR †Ã9 !,ýÈÉ_ƒÈ÷¬|…FLÆ/"7³YÏzÓÉñF omö;" ¥¬2·8*©^kÊÔm­¡›©O)xªë¾ŸÝ7êâî¸ÞøŸJS®ß$ý4uøÿÈZÏ?&ªROp=D&EÇ*HÀÔIa¥,k$k“ ¿f‘À ¦Ì.)‹ˆ HY¢PtÁíÂÉ o¢ÚÞµ4+& …ø ˜ÐJ~­Z1 E•B0m訕áĸ¥va”ìb<Ä­XàQ¬!ÆO<¶¥bYCKÀÈ*ú$Ëĉ¡$fðŠpy|5‚Ïà<ÿŠÈæUèq}«Ìl}Œ©S@·¾°˜t—MËí]`-bQó9V¶olöøÏãJºâpPÞð™tÚw«Ø\ 34¥™ ƒˆCI¾u–ßÖ3ßÞ‡ËßñÝT÷ò¡»»Z'×]>i»cYJcX‰1µA2xÆŒ”ޏìLZ!BE²Î&÷Ïí ÃI O^fXÖFB™Drü~(b•ƒŒ–d[IZ¼#f.ÆB²­ÄKmacŠ$T €` µ´ÓÑd¡2¡¾s«Ë£F2¶üý?º%°Ž E²¬CªÛKÚ¤A×)Ie#¥)œ²­© nÒ¡ ±_$à#Œç‡cãUcà³øs«ßü¬]}šË¯â‚0Xû£‚L,ÃqìŠØJt¢•G\·÷åΤ±rߤ¬¤ˆÆ™‰ÖÚô‘¨~†dA‹^¬Ò$‘ÀÖÆœ:m)‹+z,l(mƒp\–ÅÉ " (P\H·œÉdSkæ.…€Ö@MÝ‚èñ©™ TT@É»Œâ÷j:Ú`áK`LCd œ8¹Í²Â¡àúq¦‘Áì …….L[ ‚E‰2k­)³Ú,_†ó+¤êٌ툯­¥¤)„4i$ó”9Vñ@ÄÁÄm™ƒ' þ”Œ9=Ç+«Ÿ¿@í—`¦-¶??5›Ëä bÈž6çì[Ì78Eµ3 1t~U*ñŒ Ø ‘c¹Þü1Aî]Z q`µ¯ÉZ0n…‹$/ÌI?ò®XBciÌp£‚X;îåýÔ¬ÅP‘1ùÝ¡¨Á 4p9”R„Q²0úÔ)|[®\w£€â¦sšY’ÉY(mª*º¶/£H›b-bÆŸéô +HAÀ~ŸŠÔ«3›ÝXøÕXø,ýúX!ê õOš¹]ãØ¬Þ_%ÛøO¯ØŠ¨*Ø*è¯`¶-+Š’ôTÊyÖu›ÎßK¡²¨áK²4ƒ(%bŒì¹Í; nÊþø€UX.«`.µr‚e$‚šj>Ô’S/;¥ |…µþ% Ì»»P„‚ge¢ìL\½œ9†ßеâV… …,e@!"NfKôÕHl<#Õþ««Ÿ¿`ŽÃªÕ¬Ý=ŠÍxyíBsÚ]‹ö~Ĺ/«ÑÄ¥ÙߟG U².ôÖÛÑÌ‹jn d‘$“*¸€ýñ#±£]03ˆIrðã3ÀV$Ш‰Ëàî¯*¿@Êñ}ü(Ódì'¸Ø)œFja™0¡$I Š}#IàþqÜå½n’ ¥…™x¤õÓ¬“_v±ñª±ðYûõDúß“Ÿµ«óËО=‡º}‡ŒÔV·]²Zé9MÖ–Y¢èn…´Ì°Âðà ;¤¹ûà.§-@•›«‚¬Üð Éµ„–ÉN¶E¨%`Ö³ BFÆö×N {mL›F ™nÏ^d\e‚ë{ó¶‡VÅXÑB‚ äRaÁXh̪œôÅŸ\Å”‰©'SÜJqÑž–(To&ãc™…¾gõ’bëîÖ>5V> ?~Ѓoèꇖ¬Ö/?‚ü_söøaˆø8ÆjâNmoSÖý£j„Y¦X©¦a-aêÔ®+ûÑh8jš%B”áÖeÓÉ–§d¾ˆ´A@DŽRLPd@Õ½ùf…‹9ïËx5¿£øk FJÔ™MÁK€Š¬qE’€ÂT¥º¶ƒVFÕNƒl ’ÔÁÀ•àŒ*t‡;wó‡Âñ¥\ˆeܤx¡Œþ ;2y¸5£È”!p ¸Ñ`ȃXºûµUA@hJ’/ÒRmÔÀÀ .uIÇ÷Ì‹U£€Ê}œÿ \Ÿ/°Ànð,YÅ"ÔÕpù½o~Ã=oÚ§]ÖÞöàí!»$òýØš#áðC XÅ«LUb#pàë0gŽÐ âj À´Å‹zÄm£M¡ócYçhäî¼²òŒOá:êŒ`PU€²†ÛG„1lT5¸'Õ4 ¨½¿¿"Y BÅjÄ Ú­Q†”,´„;¹2…¥Qº¶°äÔ E¬ K6CŒi6ÿpóE´¥~@ß ·/|Hê52Å(E'``íŒJ€S¥Py)2ä¤Dd…y'6ØÍ¤4€µ"†%Á3 8Ë^"_ý_¼¢VÜÖÊ$2”Yƒç¥ËQЗ&â>ˆz4L@u^ó”Û2MæzmÒ dZ2íj±ÉióJª¬­ÕÊîþõÛœc;¹ctúèÄѹßÙö÷Ë™9$ÐíKÄëÔõ¾ä]£*´±=.ñÿ*ÞEÔˆ„·•.¬ºþå¦mhebY¥.ÚÁ;Þï“+&6ÇÀ (…¢ãíæœ¬ÌQ½1ç›Æh%^£8‰›ØÖsDÔ%0ÒQ K¬¥ìÔÆil?ÿQ½`¸åÖÃÐЭro˜œÄÞu-Öõlsütç7¨×ʃ H¤ž›*opäÍO¶&ÖÀCë´]NЄ(ªÛ KÝ!ÿLc‰·À£JA‚a‚#o¦o4*y¿ŽŸŠži—i¶}À;K_ß!ÜÔ,èŸArt?Íã+ˆ›çO°ÙêÊîË3~Ñ¢'ûÆ4mr?7…‹Jûų·½@ÐÜ"ñ „žI›T@ ¼†–$'†«!– åÆö9¢ ô’-€çåö¡ØïÃÏÈ¥¹H!’ÃWJ›edÔmh¼*±¹P (¥Fëˆ ú`ƒ’ï¬úf¡(A±½ãn,1`´VžOŠ(LU`ôx!(J—Ò{Œ€Y²¸ÄÇ*a:,)C(”°$”CÄHp Md dŸ¢“Ú*Däº- ƒÃ×ZP®^¡D'"‡&,Á«ûù/ ¶F‚-´®ô†ìUÐÜù(GQÝ_Ÿ°„‰¸ÊµªWÊõK$È&’:O޽8zÐ$dÚà–ŒÊoÖÿ·}PʸD«H †ä^£ «½€ÛOn©S@ ±1[Ï:s­D¶"ùÄ#•·ÁÌŒâfòzß›Äl8&… Á­« xS)°ri@’ˆлù3È‚8¢Pw &d¤'ÈB (&ÊöA¦Î•ŸPõþè8“ ¦12à—­‚3 ‰xRÍ„Ú(§XyE–ÚZ÷dJ²ÁëŸ"b”FýJ™ Ogá!Á‡%ÅA¨ Ë%›ÔÂbï¿Â•2ŽÂà›?a"R&rþmëYÏz÷ê¼nϰÐ.8„‚è&Î"(ÈYT«xEÕÌ *hH’8[LL’ÝÍ—ö΢4!NžJb+¢ !e¢4›¨”b(bÂ4ŽZiê¬4ÎôK~wãÇØßQ¨ýC†ÂT ” C>E o˜´ª”P¨ª«*­Õn­×ô€CÕlÖÅMòR *Br0éÍI†‚ú]Ť½$º'ò ¶bÐ ÓÞ[RñiÞ´[S\ãúþ¨5™VäX".ÀT‚‹œ†Ö*TÌ –²†Â.(2MfLñlÃaÿ…\ö©åÛÁK¾ŒÍ¢§Ò`,‰»Ô5ÙúÉì²7A<æ`Š3<$¢J p¸¸­/ûå\¼ŠRË–W«þÖ1z‡‹iíìbVˆLÜdaÙ½’T—e‹k\†–²,@c×öoªW•i0Ü‹ÒB@*’n(D‰J®K@ÀØŠ‚#|½@|üÖo/’Œ†â'Šc ˆ‚""H‘"YÐ@lCöJ‘¢ð‚Òi`Õ@…4\Àäa(…‚Ç-0vÅ­š‚7Ç…,föµ²Tì‰8Äc°O[ÑÑAœÌ@»öX†!M 60¦”æ.É AÏ.P ¢ªªËúd.ª­(ˆ•0dfL„…CtFÆl$%‡•n’"[|PŒˆÁËkpÍ­}8ÏÙm°\ã=2ëµñGxM¤½Á2¢'#ho¡ñW­ˆ¿I6øÒ¦Qƒˆ@޹Nc¬þ†¢¼-ȽÁ:Ó¼lzù.p»Óû©‡BSØõø'#€êÕ¬=ŠÍåçµLzHö/gíG²ŸŠUV§Îí”N’b%MÍP,‚ºr”0ˆrNH!”BíGXY.W¡™ €X‹bØ´a:ÞÇõæÜ(VþnoíC ¥À]X¼p±£©RR¢H×€ÄPY*²XFøQúGÄ€DRL¹hi$†q(e¡œ¤–Ç …’›va5 ç ¬H mÞ y]¶Ö•"‹Šé 5V7Z `@ Ì›ÁÃQ}Sà”¦  ÎfWœ¦Ûç”–ÈXEôìšTË/Hú?ßЊd2ç FÚ’=+7Obœ=#ºs³Ö§åþ ¿ËeÃݲ¯6^1Ûý©¹sÊëµy+žä’)KºÑsªÆò†·-Œ²,KŸ1Âctãk»|s ¬pÆ ÁH ÐÀ¡›P‰!¯ûïù³BfÅÚ.æ£hlž#²ÖÙ_ \ᨲÀ*à£Ö\~ÀÊ(KpR˜ƒc„2YiRm}~Zܼ8vžœÞ&ªÃ›°iÉòÐZ’JE’j ÜA/Rb@yJ`K0Ɉ£/ªÁpºä‘Á8`t©LË9k6 ¬Ë"BÃrÑÎÅý='ZRrA&¨-ß{õ #9ƒ‡èfw pP÷ôRÊ»³FËÇÚÿ5!žöíüR²±¼ ô³¯j¸ßÅ ›zÚ"êD’ ™ÌN€õlgþ"ýè@XÃÖÜ¥6ÁÖ€=>;ß8ôöž5Ö.PJÀ…yDA(‚DI$C)U‹_¤%lè” C¦R]’*И"ýHY!Ëà†D¬‰‹ b¤/4΂ËZ"o¹! p±,‡éˆ ÀÐÂÔ&޲Gã\N#X§ƒá@‰NL)ä«€6R :²Ú„D(²0PÀÀŒ DLBE ÜD$ÙÌa¤aë±+ÌCÖ^^Ø©šu³/ôôdC‚:Aô4óù?¾uw@ëqzÿxI$KMÑ<–úYÔz³Vî©ýý¦QÉDLšAvNÚâŠp‘…&èc˜Ô(ƒI¶b":kÛZDãÏš3X9ßNÝxßJ6Úõÿ(Ý׿„…£ÇH (JŽlX€Z6ZI¹Q³0E˜qà,ÕsÀ’ Í T ’Á„/-%ÔL¿Õ¸ÎsNŽ%™ÖÑ¡¾ &¥ƒ²ìYÀœ@RÈŸ%af 1T~˜¿f-+€'UƒÖ•YBЗK`Áµ¨ Žóèxÿ°KŽ8žjU¶µ‚8,ð@x¿¡*4¹3"‰äû}¢|ëQ>ßðS2Ö¶Íܸ߲u¡=éù£{¸8Ûп¿ÚeKóŠˆJOɵ ‰Àv÷Æ­=ï·Oy¢È ¶¹˜÷W…cIÛÒg* À1yÒÚñµù…[vÚ‚ ÌáÿAòµ”¸,È•ƒQ4cBHÈòB'Ð(E•‹±ÝœÁyT†q´‰‚,Z½€C¢ þ39té‚„×õnZ* j#Ê X C!nŠ£i*]Ý_ü´¶LkÀÇR1¿÷Êü¸ÅíA/7¶”§ÉrQ!nà[t ½ÐPÀKÈ©•­Îy}~‚Èàz‘ÖÔ8[#ø)¯Dá{—çY¡x6ƒ¹\à©íñi£')*Y‘æ3‰©³$ÔrJP)(i X¸ꇘ‚¢!ÀÌ-› pBÄÌ”¥@l"†A JɯjûÀ¬!MC>ž< æªqQCÿ¡9vê _šJk—$Á¨€n àƒD1K Ƹêå %sƒg¬ÑŠàog¾74šy@ ’fNQ“J]£2ˆ |›ÎbóÿÁK‡aQ•e”J½¨ˆ¶*tòÌ[Ÿ÷VÌ€ça8¸6 ÏÑÐëC²!ê•£¯Åds=ê'¼Ü„¿IžŸÁà››_.úþ"²9žôrâ¿å7r_{ñûyp@B#ê%à—!Õª@øK@hXp d¶ac´,‰™`ª¼JK¤r-`±Pm†ë1íTùÀ9!*8^EPbA҅м„…rð½g<¹PU ¢ªªÏþePr7]U°-0]i4VЙ23¢rmæ~“ûó©Eåc¥„ºO@h?I¤¾ÃûóXºûTÉ 'h=oüXý©ÜåïáFÎó­CÅŠlX·åÛ¨,Y|`pQéj4@rZ€‡pP`BD°aH ô5–ªÚn ÖúuÓë·lÓI„lœ:Æ~w¬îEã]/š`bØ‚È|¿ø2më tl%dÀäÞ€IfÿD.êÜ<%B»LB¹¥V_£­ÎCóø¥I‚ê 1ÄÝ„r…` ô«BÎÈÈôC™jBáZf4æ9{Uâúþ>=éÀrXËÍ Z#ðX³2þ÷¬=ŠÍåòT“\ŒðŒý¸uœvR Ä¨,„f‰!±J\ÃØ (1 AdÚ°«êªåY^ûP-ÎýgKŽ¢›PF&eÀ5ÀŠ)µx-œ… FÀD¼®PPª­( m%žÖb÷®„j)wLé(8]]uWvÍ"ǯ`çñ"´{$²™ x â)I×*ߟ÷¾lÒ®WÏóè ŠeÄé&ž¼ ˆ „1ªDD>ãTÍæ\­Ûþ¡PgÙÉMÈÙS”˜þ ŸRÐá«LE,«ÇÓJ9zyéR>×ìKßßí¦z싆U¤DËr^—á ‹€„  ¤8,°E ¯¨¢ç”ŽÒ!¬¬ƒC‡ž±òAg[ä9ãN1‰¨x"D m@í)D!+0¯,ÀRa`ÝÂbxR­JMò¬ñß<èÞ= â?ÎW¡9/¥ãŽëÇ„×.õôúBùæå+žÚõéå¨ÒWMÜL¶Þ*epæâå œ/ü”Rô ôëô¸ßÅš ÕïÛí—!SÄ)[£IwõˆjóèÈÄna†ÆEIn¨U%2«7ˆ»ÓQj·-œc[ÿnfi)T*lP• ‘(Ó ˆÊQ XR(Ehª”Tªªª²ªÝVêÝ~£‚;À <É“p,B^D¾åÌÉSáä9PŸ9b‡Ç´{´ø*ئþÎÑI\A3ʳv4‰¥EuA{YeSh–9TP-uwx²ÿ'΃bƘpꀊç^ °ºòÑ0Ř²U’ÀhLL®è¬Å€€szœ£Þ˜@êt·™õ Œ.ȉ; `T$URz¥?ú.L‰ÈBqf¿Õù§’ÐzÜ~öGŒ×sÛ†¨`ØÇòÓÂãöTéô'Cð|×8W ×íhí£{!ÀËÅŸ"pÀeÀ* °&‚Ù`¥¨eys-ýux³Õ ™¸›ñ·7»AˆM„”‰!ªŽ%-3(2dýƒ7,êƒEÓ™GØwªÄ“ÖþÐtûQµæÖcaB*ó,èæX•ˆÐ²ŒŠi“`f …k¡®äª¹ÒoeïÉÎ)P@&U6ÕÁÛ#Ä©T0Xa¢RFVpáÕ“˜Ÿ°ñ'u×nø¡#¿jž-ÒhèЀûE$AIL’dâP,@L’ØÁ/71±¼(gDi×Q´XY³2Œ –Ñâ*…Á+Bn ŒØQ–Rî|–]UxNhFAlZg¿^”ö‚ˆ–Kp“6“MÍ"P–W)¸KCqö+º'Lh°|•›§±Y¼¾JxŽH9Ä}¦„giˆ„G[y—6Š˜€8"”6íè©4¥”ƒ$é.:¸7i„è*¬jȲðÓCsfD½¯ÐÐ! (N/Át10 T˜WX’öHDQœÌŸÏ"IEVFLp·@ì"Ð^àiJ¾mFËÓÏ4©ßdò‡Ê‡ÚpÈJM­jÞí!¶-GÝrA. „ÿ¡BM†NTžâs$U DHc+ÄYϦ ݃R¼õrËV+„PJ[!㜥âÊÄ Þ'“<0æ‘­dN6Y¯\Å[@t‘Õ(Â÷iƒìßmͨq˜b@YTÐda€U¼aS ÁÀ,Ä\Y€@ œ’f;ÂïP¹·ˆ y‘õ÷´4Ê!Î?:ð¡Úo"SÈ ÌNdN¸ä=E‡¢r¡Kˆ#Á¹ö‰ÄÌ0Ë& Ý!´Òšmžùø¾36¡x–ðee #ö Œ§”’Ê#ßfožÄµ<ø9oÿˆ$|üT÷=º¤ÍBtƒž’ó €œL?΢#%raD‰Ý ¾¦HÞƒ`SnÕf'zòš~xNçÚs ’\$·•[9‰;Ô‚‚4ŒÚ‹Ùgµ'z€ãù»J4Kù›ìõì½'©ÇñëÚ¥mg¥¸YãR×ÛõôÞ‡zï½ж¬|~=[¸« Y-èj"Ï^ öm‡Pð¾BˇAª¡œŸÏo¥ŽvœGZÇÐË;{ù4` ú5>mµbîïÚ¹ÍLÈ\ Y™˜3l旋ΖYë|╃ÞU¶" wÍ¢!ò7ð¸âX È .19Õ½cÊîIÙµì°`ØØ=CÔ‡ŸÒH7»éýu«˜´|'úÿ@ÚƒcDÏ$ÎÌ:(wåE`A²2Ù8A®í´ÿÚÉ@´°²é ¼©€c+`’ã¶ã@VOøø¯†9ž“PÀ‹—Ì:Y%µWHÿêqÿÄ-!1AQaq‘ð¡±Á@`Ñ0Páñ pÀÿÚ?ûÔL˜¡[‚AØ7,áÝ’ZF¦ôòäP""$Ÿøø0(h³c Ãb’‚&dG8#ñÉ¥˜Œd›cïÄd¬,Z’Fë/%¹ÁóS”LD8jÎnwb1P‘¶ ªfÙD0Ï×8ÙÛ@GA°0vTH‘h_°|ñáµÑuÅí¤zR ‰%$¨4®AE÷Ù=€FT ‚Ô¨”ÌN·â*'•ö$s´8LÒK‚²Œ)rJÄ }rI‹q3|C; Œ†L^äˆÅ–ÒQ¾4ÚÚòb¬Ë„†å›3}hMº°Â¡"Œ"H£¢Ÿ} ¢ŽzC¡“Ár^ôŠ(f!‘’Æç”ªÕ—õˆ,‘\O¯tfÙT”"[š“¿µ¹{Ö!«HŒO3;{ч„@…d!# ûîÛAa6uDpÜžþ…º¥¾+]§[㛄ÔM Í‚…6‰Œ -¿€ ˆ.Ét£ HZ„Ñ”ì öµ»sææ­²Ñ³5ßÃ5A ’Åb®¶V/¾Ü ì)¨è^§QŸCûF´'Š=±ïD  d°269¦ U$¥% ¢ŒH1ÇרtQº´^s ¬¡‘ËÔVÄF𿤵2.;æ:Rd²­B/%!GßhÉ""‚È,(0&èqM~R+Y]zÄŽòiCIæÑa‘³sëÖI’%g E+¢áØü|¼¯¢ÞlŒé˜Ï~|ªÔq0Œ‡¨E¶cïÃC¤Ê¬¶0¢Øa¹a=u#æ§Ù/¡É¥¥ïÈŸgb¶C*ÂÀˆ^ BPAur…À©Èäôˆ·S7ù”8 b×ÒyíÆ¡„¡ÀSˆSÔ‹Ç&ió3H@’ɲ$1©%))bAŒ†>ûÄñ:Ð$)fI.ŽçÁSLZðp±ì7ë›Óš#Án!!eT¿^d* êWO.fG‚%é%¿¤Ò¢Q2' 1ÓöD€#`)I‡ßO0CäÊ‚$„7Tà§ Œ±ò5#uǵF{YA(“¡˜/ð4Lcs>¬Ähà¡U‹®‘½ûß¼Ðq°råŒÛŽmVL_eX'G, ’ýôQ`a2]$)  ‹ËS}ÇÊÕƒ·qù qDØ2„]Å7#Àˆ$%e2‚`AÑŒJã‚Iê{Ô–òt~DZ$¡… pšdCÉz—ï¢Ù±PŠD< ‰DR-ð·z2­·Äzµ0 r eç—™›£õðÁöK"ØEiL™iº3´0éÑèÏær…Ó:xµ5¡%‰QëL ‘¾¤k(!1@mc¤Ó[ö‡hG±óW”A ¼]±‹_ h(»ÍÄ ‰gàÎM(¨!64宜ª]‚Oly¥CS`ntÛ.l±÷Ñ´(ÀDilŠÜœéÛÔŠ9tõ–ˆö#a.ˆP´È%íüü€bŒ¤‹àKaSЋð^[ö›æ¤V"ûÙŽÜ:Ò*:eÆ bÄ•TŸ}µÀº’ ɨšâ¤âtT­_¹D`A¢ÈY5F Â""$Ÿ¯Ê³65™ÍDkH…8c”7±Çh¾{@úP2¡4M¥âÃ0ês)DDQ,ˆÜG'ß@™Ë($Pˆ‰#4ö+¶ú›ëµáÔ©ìÌžÈrÖüjHÑ’A¤Œ:ýzD,r0¸€œJPú–  QÚ/`ßrÌg]¸Å^AuÇEßcž•Á”\A˜˜–&%Ïð‚Ä3AC©P5hÆsIìS€!¦G¾I`6ûU[¹"  “5py>’ûTÝ4t˪I˜˜¤q0®HápA…úõ}Æ%²cbµÇ™çCµšj|ø½Ú¬ÓSçÅîÔíÉá<^ü«D­5|壴ón>†Õ^cWÏõÎcl1¯çÈéÆƒkô×ÎÞ»ÛLm×ÎÞ´;[¦¾võÚêôåy½i†ý¯œ´Þþµnºj¾žÌÉ .uÒvôȹüµÍ³N×ÄšãÜ*Õb%–K `FMz ¥@`U…”ªý ¥Ó‚(·MÚ%‡B¾L $˜’Ô<*D3JÈ07Ôš$žG `¼ ¿^É%•ëìwòéƒS<ˆ]¿¾=æÔŽ”JhÂj..„9O¨t&«*ŒÅÜ~9·¼çÇ6ãÃלøæÜxzóŸÛ/8ø}§¡ôù¸y6ƒ§Ñüœmè¾.~Yátÿ¿ ôŸ"íïÂqNŸ¸ Œ¢RÑ"+¥ñJçôߊ™¹ÿ»Fò_OaK]­š±rë|Ò‡nOý¸Zd^ãÆxxÚ¢‹ŒjósѬ\š¾|}÷¬Xã_›Å|gºkòyöxÔŽÝO8{TÍZžEl-ZþDÓºƒÒŸôüÆ_ÞSaˆFbêËУkÉÜþ¨éæ~? ß§$ û‡ÔbO*ˆ5ÛàW¢tcàõ¯8Ä||—ô §‘qöùjô¾”|^µå›|OÓï–mñ+öøå{|ZZ\×î’¶ðM]ŸHóú©òÈIÒ%m½J²Ìlê‘{>aT™ ñ?{0Ø>²JD àQ€‚zÎÔ9q=IzÎyÑI3.È!YÌ¢Mþ l)yü5Å ÿ± +®äc‡ù³ëCFn_ òó¬—›'œë<¿ƒÇ˜ö¬}ûä¥Êž{ãÛ!=º8z8û“ •DÛÜS FBÓÝÇØÉ&âÔ˜0þdKÄ`&3)R Lܾ¥·'Ô¬œŸséÀ ¥'W8×úÍ ü×úÍ ü×ú/Ï}šÿEùãï³_è¿<}ökýç¾Í¢üñ÷Ù¯ô_ž>û5þ‹óÇßf ¬3É´È9#;6¨vÿvçÃ?¢ ’Mšêœ~O^U”:éåÿšÊ¾PщùQ¢¨SV,å¸üÔêšàµ<í#'ótÙ¹|+Ñ““î}?¢ýˆvóÄïPìùþê¼ñ;ÔV/?ƒôƒjàÎïç(FïXh‰KÐŒßeû@küÀ÷.Ô´ØSú X&þ g@”‚JÎTÌî„ :gÖåÙÖÒÅ“ƒ?æ|.‰Y¹|+%2r}ϧZEÆŽ5 Þ:Åý® ðí¸rôÞ¦×þ§nOjƒOú¹«Ã¶áËÓ…Cåzp+˶áËÓ…y×ÅxvÜ9zp¯2øâT>W¥jˆ$÷ÿŒòû.öÓ¬Tñß»ðu¥VU]Û¿Ì âW.?ÇèPèY•¼ß=ÑÃj^Ö•ÂÈü<»úÚ†#`ëk£`Ⱥ ?˜H@¢ ©aÄL¨Œ5›—½ñY9>çÓ‚@a€@tšðOšðOšðOšðOšðOšðOšðOšðOšðOšðOšðOš˜"ºqý-«.×wpw©°·c=_À4¸„€]")pb2”³†(“Ž I@-ö^Ûñ3oJÀq=_ê–íÏ»ÜõÒô†Ë"D(H†ã%••$1 ‹X?—7¶ö ÍËá^ˆø£rto@Q(*þ¤X4!k2ÁÈ:êõsˆþp2{N"•hÀÔèSvYÔÖüÿÊ'‡/‹ÁÒ”>kµe5[‡»N³ DÇËMìS3#Þû'ú^,MAQü„?(ÑO¾Ð† ŽbZâT‘ ®!ohˆq¡½1¢TÿS7/…yyÖ2Øìp:“$ c¾u`7yAãa& àFi'@7)E"q2Æ\ÀíŠz¸„d‹h‰"L)¼K? 2úŠ¥‰ ¿xB}-åÒ ËhÒTqK†A3¼a’àÏ j$ŠŠ‚&ð¹( J€Ïà!Ú;>)ÇDw¼¼éNäþâ¯ð¡èÂoíy¾£²`M¤%5ô+Ø$ð\oOJõcâ±ä}èäáDúÏÜu=ì¯1µaoy[úrȉ7ž5†¬=šöÀÉ ˆ@ŒA‡ ¨“ ‚‚±´îlw»ù£"3= <&e‚pϵP Vfâãb9Êòb†l8ØŸ‘®jq9šœÏ’ܱBa=H柚⎯À×¹üWîR:º_Új$ÍOeGØý< Ò¬•þÃø)!3G½?iéý)O0æ§õûRtðsµú¯èºS¯ã«Â/Reævéäë\çÎPhu¿½A±Ú ÛÏ ØíJh{{RŸÜ4¶QèÛÒi¢`ÐLÊÈ ¶f0–r\Lˆƒi@“’K—-úTö^ÊðÛýB9bìãpt…é^Ãø$Ö‘X×/¶2ÍŠD‡Â³ùú'æ‘dA& ²Á†>Ò@ÊÅ!´uß›±çÿç 2Za„ÒÊZ[ݤçC—Ò`¸£ëÈ ¦U„…+<Žô³é÷,Q¡„‡ENà2½‡ð2Lß ÓíøR¼û“Þœî_í~ƒ˜Ox‹„ eà‘¢Q”²ÑDe‚HÇ^^–9êüuk#È¿¯-Z<íÒ¼óÏëôQ“ƒ\—hÙ;~hlÉÑhÄXóóR8gõÈ€G7€Þ-`¹ƒ;‰‘9þŠS¤/þ×¢¯Q ¥ ¨»Äàx€”j!.稡 ‘…úrß èüÖOGåþ!3Ùm†Œ¢ÅìÒŸo¬âÌ÷ü*øfXº»Ì¦–uƒé‰UI¥…áÅ'î~ýû÷ïß¿~ýø‘#µâ£ƒe59;BØ÷*L8­sD Þ‘QZÉÑ܈&P¡0DQD„K"7ÉüX*V*0?$¾³äQq˜xX€q«Ò&„ÓàÐŽ:†(eCMtó=¿X Ç"ÇsþrÉøÅv}¯Q ÂèÙüzÞ‡{œzclUÛàÂÀÙMƒÔ.3¹“ò{w¥pôL<¹kôÅ’†-7Vß´[zõß'ð)`ƒ™ 3 DȆ!ùø¦Çhí6{ºSŸ&>(¬,¶‘fyúq®;¦‡<_¸îš8ñ|ãºiË?N5Ç|yúq¯iìãÅŽe{Og,s+Ú{8ñc™^ÓÙÇ‹ÊöžÎø oïJ‹&£æ¼öý@F I¸pÄ‚ÆËŨÂ;Š$ŸöˆÍrH°HÔ¢§»C‡‰D¼{Ë T²¨TÛ²]{ì‚ %ÿ®“æ[„ïzÁU`ìO R2²É0 ’` eÏܤؿ‹Yõ«Ÿàำ¯US³"ÕTm|P©€½¿…Àݱç* g’ÇJ@ãé¯÷“­[ÐøAÉY™{ó>N¥"‘!4ú8é¹3 êŽÏ—ýI°:0eC6ÖmÊWþgÊEðbÓg,« $B`ÃðwÒ´äD”ƒŸ y¢•‚óÐÓ¯|iNuüyÝ¡$ï"’H’ܪ)ïúñ¼Ç—ôWÅÏø$àl•†€ Ì“5—“ñPrßK£ÎÒUU`»6 9 o±Ñ@~/œ¨H›½7sµ ÛNU‚?dKÙÑ4Çâ)HÐaü<ký£…â7Í3Baäþ°ÏVøc‰S:ÈÖ; ,‚ð´Sa9£Šˆ;ÃI%SÚÖ"ÁË\Eðáðjùµ:ö™Õæús1~a¢Ze È‚.ky –Ý–õAÿ?ëIf4½øVCßðW°þN» †ì&DVFó" ©Ünü=ª+ÈD"Ö²ùø§Y²Œxª¯ØÌö5~4ˆ=WwÃ…cþÈ¤Ñ d}¿ç ßKS6‹Ïl{Òò<Œ¤•<–á‡gõZ–m#‘$aF,ƒ¥/Y‘D8Ér\>Fdè»âtÆ%2€¬E]NBðbì¤ R·_÷κҸéùó[Å2—(’!‚ùrÓK#…”¼ / Mdž“™U˜Á-Û÷á>j‘KT#u™ákØ UV ªØ ­qŽ€"=)@ð‡´[Ö¡=‡®£¾9u§mY2…OUûL¸g‹·å¨¡‹A(‡ÓÍEŒÑ­sÃks´ñŠÕ£–{çôч“žºœJ’<+$ùÖ'¥ ñÓMユŸm±c×gê5 :¸K¼aé4C[n­õ_k&ª¯è''à^‘B …’â è3@«]|½+ani¾ž[‹AÞ'‚ÊJ@ãq„Y@ËçÙè¨3òÛÃÆ½…_úù(7Fƒt'"åG" 4§ ·z0% !Œ"2D—ûâÓ+ÃÖûP±`寚þ¤OA¿Ï¥jm¿8Ïü˜6›v¥[ª»¬ýPGŒã.¢€)7uD3&á˜nŽX„J@›‰#Ù¤›4–Åø¡á‹HÅ‚þh倪Ð'vÂ)Ë/*àÃ"HOBpÅ 5‰W€),ß÷gx}“ÞÝ«ØT"æS—בàH‹’eL€9y€s{¢ûÓ=·±ù¥¶¢(Š#(ˆÚ‡#±3Šˆ¼Û~:¿¨H·ÐÕåç¥;+ȼkõ耕VÀVÁv… R0Å…\«XI €ÀB eãÓ)8F9Nr^\ Í"6XF£¢`<OÑ3£x€Ð€½ÓiÀB阼  Å/î€ÏËFf³O–àüý{N‹M„°ÀBAŽ¿0iĘ= •(‰ €I¶TÊ€•'ì; ÇdvüP€;óýpSI¡ƒ¡/XúôOU„± P“í!'N ;_m†™-L a @€Ö63*2ßO3OP5ŠDCÄxñ@¤R2# `“0K3ú ·:HYJ¡b/ºA#’~è#‹”Jõ”ù^,úG_¯D˜:€‚/ ÂÐŽ@v3ëJþÝãå¤3xÉ;gr5ûl]ñ·Áúâ<ý{ýr´¨¥Hë -k&ÈB„Ú`ÞÍÖW*(NIBˆÖ|ê‚IsHÇxï©l¤Be‚Ü´óŽ ¤¥¥=KðI #d×L!°7 #1£ÙÑ‚Þà!›¼l(×÷z×â½e>sØùéõùOÍIŠ#² y²JæÇ±ãI‘Â}½mïPÁY Ý(NI1a¢x{1ë 8ßôX:RR¹_Ÿ[J€[“pd-˜觃zp2Ã#\"º¹L³7Îÿh ±¬m­ìk¯f•*-¶å½ÆŠäT(D›ÅÚ@³Ö„”58Ù \ `/+uj(h#©sæžIS|–‰TËpFÒûR9ˆÍ§PMâfíÆQ[ëÀh„ˆ 8%kRèM­~(G7Ü>*óÈz8%.‹èL‚’q‚ApŸ]? 6a²­È\B–K„ŠG;«³ž¯Yð]FbnEû Etù}?XŽ¥èyXƒö00&¥A’ô3„ôɺEÈ™šïž#¬¦ R+2Þ•áÅ]ºZ(¶·éo3Žx¦ N#ÐÞüÒîô!fR–Fº1!RŒh @TblÕ.f–šÐ±aÆ8.æA q5´ÚldvLך|)ÙM—öîèÄ“3Vj¾VQˆÊžb› i+bËs©¶'Mœh³jÜÁal‹á€³$‘vRTU‘o ÷©jÂO ´Èƒ.AúØn°ºkŒÅ‘ lS,z¸íZ”ZvÌMûQñÆÆÈ“ÈàT‹„Ÿa˜eõo'õš]R^_WLÝ–u/ÎòP…à°âÈAan'W¹¾ØºûæñŠ›7ÒVëÀóÖœ,¦ÞxtJ]vÓP5B–š Â"+àXTô0®¨6À]VêÿÈO®BwYù×¶‡‹S;Óq7…•…ÑÕp›G²ó‹-º< « "éѹ")•{!‰EÜƒŠ¡ˆHH‚b¢yÝ1ÿn°8bas ezbW#af!¤R„ !d:I‘èý™Ù/™™/bÑ"€A ˜‰,²ÕoºëMo  ¥D&H"$| Z#AdYJSe0–°ß·áY<ão”Æi"ˆ%U¡Ò&ê>Ã9¡ÕKqz[êD™þQ*‚ƒn ŒÊÌÌÒá!ÌòÅI.²ÙVÿŽÜ-ÛÌÝùó¼b€J‰4l[NºN¹*bø ¬ÈC6¯ ï–‰ÿq£eê [‰¯Î"8i4 Óô%¸5'ÈFâ·R#ÆÒÊFðL"o‚Úi¢HÊ 4gLwWT`VÄäaƒ™}•T **¿õ* *˜ÀÌ `–‚#ÖºzˆÞ“}<ø¡X ]r t}*pˆ9X[üèVe§R%a•˜@úÕà‘I&3ÜÐö£Óü bóÇsŽ=z±c$`’ã ¸7C‚}‡gWÁú6í8á8´÷9ëMÕßêRbBèL÷•ô*Õ—‘‚ÌEÌ¡w¶š¼:éR›¹¤‹kòßçKR$0ï[„¯b 5¾V$rgT\%P$m€º­Õý†[ÉžŒ’ËÍ ãEbÒ¼EL"‘ФÈ)©<‰\`¯ðØ –Äóa$âêØªXù*fm 6 „ƒa$Pihw>,üÔ6ÓŒñ‰ž¸¢B‘g™:ëÄÙ.@„ì%¬B)GwÁóFoÃOõBË9’´ØAû²;%N‡ ÍG><ã¢Ue.ôãôð`cpWL…%jÅ& Êkœ… %^è$\¢êYU»¬Ò9Yó¯¦ Ò’ÝÓX¿œ ñJc–ŒÏ Ïæ•ˆw„¸!`¹l)tᲿ±5hµ§,a:)ª¹¢Ì}–ã“fœÄþñc‰ù¿èì³€Âp·„ Jи˜”CUÅ ”˜afÓÉo3—.AÈ ?d2†[ì•(B:hÕ,^SÌj0èÊ$P .ª!~(™¿`$¥¤[}xïY :O! %f”t¾çÍrÐʽñn§$)WÞ û ÙPú&ɵ´/ò7=MiÃ$Ù³‡‡_¦1îLHs ÂØ¡A¯Û „E€`UYu½8_ŒUÝYçió›Î‘-—SÎÜzTt¤H*ÀS"@X&$ŠÐ• € X ØP£ª°jÙU”H»D U­RiÚØŽmCÆ€DaÓ2#ó³¦*³Æ,VáúeÄÅÇp 7Äù%—&8¸²,BØB…\?]-'€2BÎU˜GþaðAÖ„º %Ò¬çÂ2[%Õ˜†Wîƒ=.:·Gô¹bNØZÃÀ‰Ê’ˆoÙež)'ë×Ù& À% &T/GŸ À@Á§ úÞ}-Šav“M Eñž/*v*.$An„Áö ¢"‰„Í-26%klëÎæÔ¦Ì}ÜÓ!IgZ¤Û!Pé€YSÖêô ©*«*·VúRŽnóíÎ߉½:,­¼í¯iÑ27Æ7Ÿ;Å&ƒ›l]5¢ - œ;3sHF7iÃe`]¨[!QP—d†Âö6†ÈåÃ]F»Â6u¡ ¼ÌUÕ)Õ.ûpÒžë,É (¥*!îö:ùx=]Dɦá½ce..,cäóýÖ_R’Gœ8(H E±dŸÝ(Ÿ>òE'âßCaA$?E$XŬŒ¤[Q~ùÀÊ\T}yÏì"@B¢bG!´æ"Ä׌҅ÛÛÎtS¥y  ¨ PHû¥U[«+ºý鸚èC8!05çm¬žOÉåáK0ž>tõ«º«M™LoÕ§Ó:"é’IDI™©¤$[è„`³Deº“²€öÈ>®  T¨á"bÖãÃ"Õ‘, &$6d>ÇK=½›|ž¦‡H-¿žuµ+“{-ÍúÿV¥¹œsÝyxÊÊß\þŽF÷7Õ]4ñýƒŒ&2+’d2à§TÀÍÜ–NØ¥%Ñ(zŸ’¤â"„& _Á9, (.¨RmAгb\JÃù®= ;ÜßѨ€Î¨a»!D‰>ÔñÚ¼P*N—#<ˆ0H`‚NF$ˆ¡" EòŠ&€hâ˜ÒM"Ã0 “L6oÝ–,·›úù‡gÛ|ëþR@p¦Æ-ª‹®u~*6HXåziZª!C > ™RìB×`=†D“Ac‚8ESWÉA†J7×Ôn4†`ª™KÕK«NÇ t‚Òs|½ºá»³£ I´bÒÒ¡„Æ š"#U`QóU%P](FrØá‚”*sÀƒMqÆo¯ì:ÂÞ¦¢º& –b˜´¡ÑÒ aà°a×!?š…B÷³FIÀÁ ó¡"”¼ 0V)fHƒc´õε—ü´ó»?å xRʼnµ/t(Në}¨ˆ]X&e€Ã4I£xæËkA|ðëR7uÏ¿¦šòÃC~ßô0Š¢V‰ÑL0—É ¼¾nÌSÅ 8§®¾¼iQ2&…h1 L {#n„‚_°ð¢iT:èËMŒi@ ‚È…ŠP0pD“˜Vñ*Á´!X9öÊU°ÕÖêuÒÜ­9KÓ„&áâ#‡,EâõoŠÓG% #WŒjÂD¦"X,ûÖá 9¶ÔeÉš¶Ñ“áàZÄY$´~„/Œ¼‹ºžç:UUÊ«Íý…'&œƒ ¢ #x3È~_šfCä›áäÔhÀ|RL«ØBËÀ¸„8’\r!kÁÈ¥‡hž€~*$¶yÃnŽþö°÷312dJéBMS`ý¦‚Œ¢ŒF$©]~ž]tð’)Õ—Ï0um*x÷|ØåM×Ðþü1J“-gR,D¢pØdA´‚¢P€@ÏúÅó’PBV ,$¡€~ÁæVEŒ*ÊY‰$N6L솄œ0e b+ f±&Q‘leX%2µ[º´¬ÉÁ‰››uÎüjsá!X ;æñIHÀ¨÷r½u !@%JÐÑ dYÂV#,ÄJa–ô%ÀAùb.·Xº¯é$ÄÖÏ;m­?³n 6RÁ9€%Äu g¯K|V›ÐÍÀ6Ôœò*/Ä=‰ M]@›ü ;¢Dœ‘"IÆXé÷ϽDزò”|íR`¶Ó&jëh£í7Bä!~[ÉlkK‘="p èJ„L©à7_'Ï\ óÓÎm+¤ºúeÓˆw¥bÝ4Íïó~%#† Œ°Mîý–Mp„‰[¨¡L<1R€E¼,™Ð)šŒ^(TÔÌ-è6©˜‘›¶ÎVäE:2»ãœpbú[½¥''*_ÇÃašJØR5`¥°€ [,X?ªÊÇ÷@CôXj“ž+øüþÊTõ'Èë ¡@¢Ÿië+Ø–Œny–Û,khP’  \#AD_àAñ„$皈0ªÎ’Ý­Qñ¦°Z÷óµ]lEÇœòÂEÊ'ÚdÅŒ:—¼"“Z'Û³cÓ¾3ÛKn·àq§„ú,cCÙ«K´Ó»Žvö«.!øz»t1QyK2.l«¢*?ûÖVGŒ:Ü3RjJ'Eyà XѰ,(²eX"šÚ½FŒ`˜ºÌ©‰Y(šT²Ìz¡ë×›RQÂ(fä4Éñ"T@dë}{Á`€,ÿ¢»&ÿ©‡‡«¡ùëµ,ªå»û 4¤ A*T( Iõ)'5`“èRˆŒ|VHæyß&™išRó«0RZ LÃÁrܸ°¨EÂÕS­8îü|ÔWbÑÛGyb¯"1Àdop}¦‡5 ‹M EX „Ä$f2z"-F‰1FàÐdQ(VÍb+Y"ÌDпH Hš*A@ ?l™Í<ú˜ºþ:žÅìË ÿ¨R—€[ÆáàÖ´˜ODŠBè3±™BÚª¨%qhS·dQÑa°º ÌÓB“{žü·½+ÊoÃÒ|œ”žSìq zÁ‚2â@‰lFˆ#‰ÿÆ2ß áôï·ë‹Š›¡®îý4ëû&\X•$!(BÖX#…“ÃsŒR‡åäz&SQ Íî¡Á©y£(9Œ±JÁï$V²±®û#È:ÕÁQ€Ȥ-ÅŒûtTÅQÄFa¹õX6b 7Jž‹DJt‘`íbÞn76°0eÝË«HÀÌg¥ï´ú[1N~Á’‘a8h4¹d‘E“1E$| ð €—Ï&¢Œ¶M˜oÄ~U µœ7s|-êûtý©M›Òß–¦ðäÁ´i—£Q.F2*]éÖ&B™Ýd‹àÁüœ4ÒD"e¶²DµFu9ÃüÒ \¬_æ³^ “>­ê½ UåÌÊRÍÜý¹ Ráð xÂ<C„ÈugôĪRØ(Š*åu”*ÍÆjenÉ@nb›B]ÕéâÌŸŸ"‡ ôΆœqÆ4 [–Åš¥µN“™„ìi.$¿BàÿÆ´èm6×?ïæ‹±}õÓñú¨]¡1 ¸·ž_ëJ·Ywiå2°$*–“ C´. @¤”],ml°ù`*DiQ W*àŒ2HŠlŠœ_rQZf,A:ØÍ;¾8Döb¯öAY*¹ˆÉ$á/ÛŽñу‚ÜË9N>"Št@ß llƒq†È2 (€5±ƒ}VùÊD¦æ4óêP2’è 3.É- „ ˆj@Àoñ@à`&Æï‡Jâ´kKÕ>h ;ÿt€4ÿ… ÔRÙ“ ñá¾xª²²º¿¹ VÇ+’L[^2Öv¸oL$N?ƒö QNƒB ‡(ö?=j&Äü£:bÂíRÑ\ƒ’­c¡5ûh8ÑrC»â%¬ëU˜BDÆ(°"ÏLô¸Y,¦UTÄ•º»O {Ðj˜@ìK{è8YÉë·×¸¼•7žªò)h@XÍJHÖ8šQj]1ˆÛ{…Bèmi¿¥hGoûÕoã-<°âåé§­¶ÇòVé¡)¬JH-D€F ØŽÐÅAÊÞ׋úžCA-- ,p‘ll…4œA†\@*J@‡ sÛYJ…9f/*ᆲ0ç-Z€A}‚Ç9…šx!»8™áÃèµpÂÆ`9h<6­Al#]'¨,`,?Q„vG³BHßRI›O¿ëÄ;Òœ{ùΈyƒÖ‘‚8¬úZö¾iU*¼ÿ“(%ÕpÑ•¿ *Cn“×>õ·-'ÓÚ7¡9‘ ‚¢D]-cö¹*Ñ}ÄŠ˜ezxĘ\໢@Vq1˜PÉq0›®ÞÂ"Yš1]Ñ]E§AZoJ™ácûíÒ媾›õöÖŤŀìÓà jªp˜`p4'ý(HÇ·j⫊v¥utƒØ)W*ógùd òr…+ ò,t5ô¨¯8”ìöü_IbR*È@("ÉûTë«‚ ´dh Z$pƒ"MKtbQY©#–ñ·C"–‚Ä8ñÆ’.f!½ñ¿Ý ˆC2*_îxˆÄ“‡ö VÁ’1q•E)ĸ?9˜²Ä“ÁïÕ‡j¾ŠÁè VD¾Ô·,„dåÁ L@%„¬—6XCPS2D×0dFØ °*.Uº‹K‚Ö‹e¤bX÷ØŒsçKÌU‚ ½­‡§j F¤x!%?¶çò•aöÀ  ª¬U°ZBD„ZfŸ’ Q.]ØégHx–blc:G>•|ÕÆc»Yj+*ý¢dÖ™ ‚H³ $8{Ñ–¢†ðôIª(y: U`hÖëblŒ.&4#¦* v¶ÇÆ)ûœ==xæf’ )jİn¡°¨qP¤ Ò¯ ¿Ø……ÄÍ‹]z %‰~¬öf:â™ áÌðŽ|÷¶\(C  ´Ä¹3Òõ,—c–¥biL&ûLáµ óÑÿh©Îûküó[#ÉM(mcI¹Ü©7*MÊ“s¹\oF`êùó@j/õÛÌmÁ §<ôÍÀ þyï¢e’Q%ð‚¤Â/·ûNú{'µèrÜ­ë+núT±e\‘ò´-Q0J yaTV—x@j¥\_µAÂ÷÷ö vyŸ„­ãÔ|µ=ÚvÇGóñKì䉥\«ÍŸ°X!@ @0DSŽÿHøš°‚eásg~¤‘£´(@"RãÆ0J¥Kq 0 0V P‚/?5škÈ¡Â'ÿ¶R"¦@a! Hu„/‹ ­À„6±\΀h„±ÿ•¸4¢CG $JFâCp€ÿÔã?ÿÄ.!1ðAQaq‘¡Á±Ñáñ 0@`pP€ÿÚ?ÿµšè / 0v@sHŒ€iãmD!`Át2íÐI4jDzÌïÜÌEßúÄ3ßßj9„ ëö×Á„”ÀÒr:ø…""cæ…îlÉÿãŸ÷¤Ÿÿò¤ó¼˱¿l °žñ…Ç…cðGKð&'H/Ì@p€°b@Ç"G®Óã"yˆ«60ˆˆì5ãÄÓî[7Ó_ŒfÞ¯[\ÿüpÚRPμAÄ¿Ü µÆ3¢ƒ b|­@ ¤YûÑ °¿ê}#%ãu w­þРLºqÉ#ψq˜®PˆkÁ†Mñ¯Ù¸¡D´ ¼…‘«žnÈ1€böŸ H‘"æPŽ@ú®@YKÓÇ$±œ.>Ï”u›ÅIñ"`¸An•ä<÷ÿÇÚé”±_YŸøÄÈÉ‚/.¸-u¸~§ÆµÖ7p°!pZƒê­Ð‡ `½§$MOY<¢7€Bk?iýªGp“ÿÇrÊ7-½>…#dö2j„¤0n‚5[×H×1¢\µ!´‹Œá €ˆ,ˆ€Ç€)"„—ÞÊÿñës»—¹ZNCŒš$1еAf®÷Å ÒçH‡çh7`´a0@à"cJþŒ÷Žpþ=Ë$ç¡'àŒÿÎRïàÓ/&úMdfú€NcõUð[0¶2N Bð}yLE„ ¦£ž ;¹2‘Ù8{ÿãåÚüѶ<¦ñ­D!î[ ZŒÞ#ÈSÕ^wt ®˜ p?9(q@˜ð\®±'kö˜ñôª |ãøÝ·òÎÈ™Äo²/~.{ªVî PíÃùFtî2"uòŠ¿‚/Œ“wPØqêØËVÿãÎ¥§jh›ë®ì"EÍ›ÔT@¯ ‹ˆjÝ äÁF‹6sèYç¤ ògqÿÇÓUo m8òJ–!@\ÅÂF.f'áÙ4qUÉp†= À[ÄäxC@” Æl¬¹;Xô@aßüzL™Ý Ãæ—¸‘¥¤d8Íó°,ÈÍO:ÀA&6r/S°ö€Á߈ÁÁˆwÍ ×!ƒWÿ•òÉ©øIì(aæ2‚TøõÏߨ%¥Î bEXÖ¼¨ìGç"‚1†EBÓ{$êbîøû4Á b³œ¿t¶Ý q2ƒ`_7úˆqæ ÂÑ ÑS€08a6I³ÍŠd9›;áñþ‡ «ˆü‰/=—”ˆjý•+¢Ò½ksAšabzC°“ÿÞ«—]éf0Ýv„Åó\/yOWZnÑ¡™Lqak¤Dt€´÷8yâü*)}9g/ýóMBQo E޽1áÌš½~¿øÂ‹¢OB1F1 ,°nBx&ƒÁ—Yõâ\"0ÿÞe¿ÿ÷YÌ¡2Ü5Ìú<•›ŠípÐgÏ’Â8ÞPX㠛хÔ+#Ä_Y  i^Õ×7ÿ](ÒÃMŠ9¥8C˜æ¸d´D0âÔÈ ˆqÅ׆3,€Ä4 ‹D4'f’Á?3^jû”û¸Ëü¿ºu'ýÝeŠ8°}eù?/BŒ#1 l'N–5® Ày€ÈF+Š X0€b÷ì;íê²ÿIQ vpI—@À46 ¡„ 0xÈ¢5xô„A ðߗƱ‚ÀEìïqo[°WR-ÊÏûº^[#ø^6 ÃŽ=g«ôQšèƒ'½÷HC°¿]¡à߈@DxÙ:2€ƒÂ¿K´tk¿ÐqÕ‚^—J ˆÛBpE‹ÁHhH×dJ†ÉÌ8¤g#ÄG'ÖÏ5Ëk›Ž.N€‚Ì œ«ê ÙVuoûÃÅÒ(ÛNã9C.w¶ƒº aŸ(ÉjB@ö‡Ä!ËÄP> ŠÝx©2†È©„"`Àeyðcãÿu¤17ÉÃw›ª>â‰B*CfÉÉw$z£Éš[-– .@ÍGÒÇ Âˆq`p ¶,_S¦ÿ¼Ï}o½â7á%±á‹ÿSo ž H h`-¿â!ºW¢“k‘NŒû“¨ôÐ$j“jØyR‘P¯c¦ïn•/pð“…K‰›‰Pr°‰Ä|Plñ2m“òMšÈlÙ[ÿzYÏ ˆèÓ×Ý7¿ d–VörɶüY,›u‚´¹Ð mÚ1ÄðÅsŠ"l 1|«à±‰ØË…馳ƒ ÿ½SÙWγJ”•)<„èeÅg´-eŒA`##¥r¢,b@Ö… óþš›n° ÷›Dûü/@ï•៘TŠW9mD<©ì+;*[!U7ƒÀC‰CR¨ Àà] -Ÿ’Jª××>ÿï~]-7nx.L(î¨s¨±E«˜ÁÄl "BxZ€#9#,•ð$v‚ÆÏhÁ ùΦ(; ü³×Cßþï5–[tð"÷áXŠ¤Æ ÜðÉ,# åDZþ(f EÛ„Ö#Y‡úò¥HQUÔ‡q!²:rÙ·Sd/+|cS(v)NN/|̸ßþð‰Æ‘tÑümÜS47Š)¨|â;áÄx:NeØ1ìo  àÕT%¯®}ÿßÏX€Êèòk²FfãÄY†gÐà"D’OÏ¥ê{Û˜ {Eÿ¼4óâÔ˜ã!.Àü½yYLHDd^ü)è/;žÈWM6žÓà$n!2 Eħ ¯o1;ÿ o§œY4ebÓ© HOd*wv$:T, €ÝÞLC\0Eä$€‰Ä|éˆønT,N̓yïþò¤ãݺÃN”-[tò3Uv‰-nÆ2åR Ñ”O¡c^.ó!¼"ha¡kÑ>;%eÊB×-Ö§úÎ24D@QÝ`Ö;ÎÜ"}2v£ËrŽÔqK ÆÆµÊŒµ‰s”¹±@ˆ„{!÷CŠÿïk´Ñ»¶Ô"ÏéÙ†ê5 é6ÁÓðˆ•„;VQŸE óÔ@?­;—\é(BI(”~ûñlR²¯×Ñ d8° ²p`Ò–®A›1ì+Íç¥tË'p@Ÿ’œ-ÔÁ%£7;+ûº2÷„«Œm®ÛRÜ!YÂ÷òA^?5§†x‡Ûñ»c H ÒÁ̇°Ûôy/ÆúÝÜlÛ¦G®,Pn ¿@&ÒàŠ3”ó˜ùÁE‚&¿¡Qÿ¼cW×07ÏŠ ï Xqìfó¬.Ù›á‡"õVèK'ý¯8Ú¶í ‡æt?Ð>1à èa Ö)dàq”µ[5ÉÜÜòƒ¨ßñH4ÞÉ °m¤Å•ƒ:×þïÅPòd÷±}BpÞ÷ýÓÁŽTØ«šM2 1NBeRjƵÂ{k%á` Cs$­”äÁ¨,7ÿ@F^ð‚•qŒÛ¸äQ˜VfÛ±pìwwÑÐ#Ã\‘DA{ àNÆ0ßÑA.t}*…¤œƒÉÃÂfî£_.`¶2«”ÕvR’¼ŸÅà0k™åàé B$‚@‡HéeÙ´yïýÁ6•4m‡Ÿ¨2õËvi§L&Ú$øŠfÁ’ƒR@~ªàü{Û DuNŒ`Maÿyèëe‹†ô"Ë Í;îéàJUêåRÑ@@¸ðëÉ䯺;Í{±6£€“ëý’|³û)šQ(¦zJX)Å€¢$d'3ÄPGˆpHÈ¡hSƒ…yC¶M‘r¡–´D>ÃÏýæiÅŒ ¸ozŠÎ c»?‚{R ‚ðxf¨Äýµ•h-™|„,MËßúà‘ˆg:‚†šx`bÎL‘+\lZ™FjiW˜ •ö?†/·ú ØçZ´.¦·a>éÀÚ½ÆA“1€@@#qŲÓcµv‚9˜//TFD‚†¸áØy:#É`¬O?÷p<@ÄþrµÀsHà8ptfäÆˆH‡@éK'ª*]<,ã“»ý ý<Šdyn£Øä£4*0ºÁ ™ØÍœ&AäˆÀ/pdd* 4®ÕèÞožý#¬ÅذNÔŽ¨E¸{ú•k…o7h[^nŒBˆoþ€†Qèöý@$Pµp@á%!ÈPácD∀€ÛÄ^ü€ðbÑèÞ8ÿ¼Iì…Ó¹\é)˜Ôw/#Ҫģ;(ŸBQŸE óÕ-…aÓ ÁÿA/kÎûçïà¢iCé$Ä{‰[ XHí Q$`$¬ÀöÝ Ô<>§…‚ädº¬ÿ»®ã^Óø]ÎAÊ#ð‰Ã2CÜD‘=KNÓÊêé±PÊ öCú 8Ú»NØzÞŸ•4ñ§£E%#(ƒ»zLðø³Ž„dDz<PÄœm“ÂüRïXÿÞЦŸ¿‚‘¥m¬>^yZ”¸êq7¡ò`AèY>ÑVóvŠDœâݸL’49¡¾ãý‹Š-/±[øb†ž !Ø ‰à“,@@9Ì7”ï/éBÌÞQÛûÆõÓˆ9×eÞóƒÂe ÀAO´m¼ja.À•ä| Är¢§(üsþ„óò<NRO¡ÀV»¤4e`ø‚¡)à 8Â$àƒHÖ\¦©‹“Wî˜`1\Å`‚¤Ç‘ÿw5VžOïiwüLk‹±SÌZ ìÿ7EY?_ñcZá2ñÛñ¢•´»’T$§ŒO±Cý)[Ä UÆ7àÖ~*ÂËá)¼;u!U1€?f› XoRRe-€Ä´w@ò@‘ãáYÃö/ûÿwÆ ç)wñ\sÍRÒbù’m¤ïR5Egeÿk´q¥x(€É‚ªàf-ȼô}!­Õµ{„Œ-¢£Ä3e"ÔmtLÖ‰¸é”‚&]*¸Á“4ðƒ tO°Ÿt˜†Èÿ‰óBÜt‰ŒTü¡B… (ÀÀp0ˆÄ\õ}Bª2ÓÒü¶GNpÁ£éŸ âÖP‰?×÷ÝIÌÀ¼Ý†;·L@@ qÒ¦1S÷@?ö2_UÅ;À^÷þyðÛ´5³7 ƒ\t‡ú²­ÛOR³‚ÇÅ30Óac[¬ìƒÃÏm¢Yt§( _0Ç¢S¬bÌÄÖŸébÀ:Ôv. ,Úða‚±ô‚¿äÉ9›‘ý¶R¬ƒ´lóSWXúЪ%-ÿœ-²ÁŸÁ| +•¯Uw­pqUšŒT`qÒ¦1Sô°gð_ š1ªB€Zy7 úZy©4‰ãö¬ùÜM¬°c]Aìñ£{—tpÔó.ÿÑoð¢eö…5Î Ë‚ø6—ðãúáµåî>Ì9û†@ÒÜt©ŒTý²wé§ÉÃ%à¸æ!p6}EÂ`œ=(Ϊ B #7 m@ÞurȈɇB„¤Jál%Œ^;_Pµ<¯ôxûU¯·Â°3øO˜á°óÉ|š"’ƒxAro«ŽŒž&™<ú]_°=²·% ÊÓK®Sá‘2d H*Äå‰NßÿTG:Ÿ(Q° XQ ‚Öú…Te§¥ÿUÞ]Eãþ«™5Ý™ ƒ}Bª2ÓÒü“ˆi¿öKAýã ¾Œ1‚¹dþaXÏ"[b2.¦ u†dFn?ò¿q:€ÿ-Ÿ ÈxSdée>3—‹òæ0ÎrçýI¹ mOÉ™ûV …t?!»ûOüÝá,œ_€öÝ ‰yðGÕ(°þ’¦ªÕÍ–çl\Bdk ˆFÓ‰zöÀ~©Ùse‘LÝœÆ (6aûÿ'¾¡Uié~²…2 ʺ=Ëòâ 25>%°‚–YÜtÍôÌÓ¦³}3A4颉¼N†DÝækdÄrõ*PËÖyÄ™"¥o7j£Ù{å'¤,*™ëýøÙ,`K”. YÉÒ€@‹€¨({p(bNA*âç2Ò©Òj ž"àf¸™ªG^½zõëׯ^½zõëׯ^½zõë×ÅS;¼£=ÿF%À‹MûX#Š+0¾ë7O ]¯üÅ;¹BèýáDcqþ?Kã–ýë¨ÿ”칇2Ȧ ¸éS©ø@ qÒ¦1Sò…BÛ²+¸Ä·*c?4¯KÄÿl) O#»Z%‚òÞ0Gô¸=èdß×ÅôP¹ì¼UîS6O`Hæ”~Œbþþ€Èþ¶‚G{Ä7÷ÿçf«bküÑÅsA²'9KF‹ä›dNr–É3 T¿¾ó0y²ôFn™X±Ì×AÍÒ¥) O#»Z*TV²mTNÀøÃhÁô–Aš à:x pz¨€\3èÿ×Ä=<ˆš.³û LàðÈ1NüS`CZEŒ'‡GÍLVq2œÓ^÷øH‰Ïå4t(Äð‰‰ H†+g(å6”×P%Üt©ŒTý„ڟ›+è»'D¢V!“ý$ˆdˆ¸ž(ò_¦"(hÀà˜F¨Çá±b…klÐ$ì¨Ìg85½â?›ûÿúêgÜ»¥ÍH³Ì±Ôš€2Ï‘k™Se‡`üa´`úK ÍpSF·v&­e›ÿ±³ÉD˜`6ËA¡2ÐyÐßÿE½§™-FØ{ {Á|°‚ , °‚ , ©:¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ,c(¼#xÃÚ €q^Äö¡LÓv P, á)È5c U±˜ËO6¨É„DÞ¡ÚÌ%Üîò#Í… ‚s2v愹EÖNn"¸‰]¤¿Ä?ŒÌ•bõ’ÑŒÆmSÓ1Bˆø‰ï8}”ézÇè‡`øa¤(ÿK—–¶(™RÁC ¥ƒ?‚øÙ°«2ŸÙVXaü°¢Y³v®Eâé•êÙq…Ÿ¸dôGýŸ¡;þU§ºÕšY¤‡ 'ŒÅ%Š€µ‚­V(‘NiŒsì"ÚP ¯/¨UFZz_ÆŠ (–;·Q%1D×ÔQ7ýR -`«D‡åwWu¯& ¦(šúƒª&ÿÁ–&Ž…ž"q[  £#SâËMÛÚÌ÷‡ÿÃkPŸÐàÜÓ]⥡ï§â[Ž•1ŠŸ¿‰}Úªm‡¯œ4&á± 2\ ¼°Æ–ä†Ü¾_ã=áÇa´•qâ 25>bÄdj|?¤ÿ‹…ý›‹9ÿÏ=¯Á”cÄ·*c?][½¶+qY$8lé• œl¼,FÏHÆ£Ë ûÞ0AsŽÐÅìP,1¸­½€C0^t‰­àȈ âk„L\šø%9ü ï!Îà,Ÿ±•‹èÐzˆ «€hü¡Cmø›z¹e–S¶O`Ë,QþV qÕy7+Ã8<¨à¨a3÷¾«æÖÃPÀÍa`!¥Çvê+-*4t xzÇAbÅŠ fx+M ÖÛ“xœhš†Oÿdçëbªè`©k/,1Âr= ø~’ôbhZfý%èÄд±BË,X¡@Q©S]6ó,‹ÉQî™Qú?õñÁº­¢¸ÛM@à`A¨½€9 +&êÕ‘ M…¸-ÇJ˜ÅOÇ`üa´`úsH¹µ¾•C韽ð¥‡;Sÿ0Š•3ˆÐfú0Æ@Y¥FŽ„Xè,°Ò‰c»u¡ahá'Â!ÈE>MÀr!p>rÉF}öäÜ@‘ °%˜,|\¥ä2JÁ‰œÿA!N"ÑM *¬ˆ‰Ÿ ™„'nŒNØ QP&L™2dɘ˜þ¢ IñÖ?ª«""¦VDGCfB) Û¡›â¢äŸeÕ>MÕÿP׿âIð«/„ކc~ј`[ÔTOl!I ÁñìMˆ® bø.qÇþ„õEåv(ËôÉ2þßI‚D)‚ʆ|B3â¿ODÛû„Ûû…PŸJ>“ ŒïéAòO”eý¾“Poáø@7ƒ¢©ý W´ Ùþ€Þü‘]‚&Ô¾Æ(6 ¶1 |¢–0œ[¾Ù`iñ(I“[Ÿ»:dÿB6³ß3"e²ËkñÈEÁ!¨pÉé? !ÔSŸ$"Þ²© iEÇc<>©02@’Lÿ g+º»­y1¾ ]½IévË-mR©2ÓÒüÄãDÔ2Éψn:TÆ*~ú€âÔîæ( ¦(šúƒª&ÿµ,ä-vÙü­U²ŠÊº=ËñDÊ hÁhNÿnÓÝjÍ-bÅŠ %Ž‹&mŸÒ\¨Οþ qd÷‚ë¤ù×–î"œÓçØE±U« WDÊî®ë^Lo¨oRz]®Ö ´@hqÎWuwZòb±BË,X0â#"<ÿºmQ‘©ð 9q®Dú¬(fÕt{—™#¿qÃB†¿°‚Vve/SC¶g‚´Ðm¼8»”QÁÉ;bu J}AUxH4sýíý+YVh­ ßükOu«4²Ím]Vµø#aB'„Hœ\…®Ã›?•¨(X[mø¤xçÿîó½7>W)BSqÊ’ÁÏ€; “8™b ú™â"äŸeÜSl « s:³I,e}_Ü®”ûãxßtàm^á#ˆ~@ ìñÀ-@¡ˆ/[#|sÐÃyAa§çþ‰oÀâ+y)³¦"ÈN ¹ýQb={¾ôþ®ãǼ E²7Ø_?Ä{Rô>|Ç=é<¡@FP0•\Ǧ/òI˜Q,èºú¡²DîhåGEò¿L$g—‡hi¤]9û…•èp½„\'kMèdËêÎYBxÇQ‰€L‡IokÚð›»`£†¿œHRéÚ7/øÌP¢lnÞÖ`¼?º;_ã/t¡ÙªL=þ;Ë,¢¤ Ú¹uÿ€Õ º®rü‘r§‚†+’ÐcŠ…&7ok0GÞÿÂCBšffîþ’2¢,Õ”(±bÅ jÓú£*uXCªww~j¡_f$ëEúš™òß(p+ì·kPŸÐàÜ¢!Ò¡ÐÞ€IˆÅ7ù‡#vܘݽ­Áxü…ŠYc×6X³tfŠSl¶µ„²\ Í:W`\¨ΟõGOyp¿Ùß+©¤±y™óìÏ„c¬5Õ(‚cû84…Ur;}Bª2ÓÒýp°U¢Cˆ|ºsLcžaêQ–ž—á´'Zÿ½9%š·n‚ÍMÅ>0kPŸÐàÝ)C5z¡(„(Y…)ÃøÄ‚h+*·„ö† Ø­šIc+ä'o`V÷ù€-4‰ 2ú°·™²--œÖ ÷Sî<§ÜyA’0«–j°ºäB i`ˆƒ¡I&"`?õ5rºSï‚Þü6 SÍ‚C×,ŽøP2œ?ŒH,þEA†Ëx•kNÑèb#¤Xi€ _ÇêÅŒO‚„º‡ÿÛ´O±ÿ¯i·f[ºh0 m¤H‘"Fýןè[¶é©úYö»c”X ™ùté™pÖ÷è,˜a윤s© 2ÉGh¼påÀJD"`À™ÌŽ1ÈÀ€R/æbI6˜@PÌ&Œƒ«. –)YOåù/ðÅøgYâ»Q!ìæTüÉ[ƒþÔ6X‚Ï™íà{B*6ÓÒýõP¹ä¼Uï§—}CœªÚ! ¬TNÖÉ[W3R³°!ï7`\¹~ã8É—u#öÈQJ²§—}C’6†Uyñÿ$B‘ÂóX‹d/‘¿VÀÔÎe@oÌ•¸?â"åæf67ϳi#u7áüÑ*<©+B6A™µ RþUƒÇÿÏÀíä—ÔM]ŽÀ ¤ˆn:TÆ*~Îe@oÌ•¸?눹y™óìÉTGÐGuIêGí¢•dšt¦f5ÁÂ<(ÚÁæññc^Gr+d:Aü\ Qf´§Dø¬‘"¥€Mü´uÛ‘u0hê'¶#"ê`ÁñY"ECšE2¼ÖH‘RÀ"LÃííø¿ƒ)“ÅI9µX.×1¯;@q‘1“þïŒ*LòO}Ex ‰»ÌÄ·*c?ždvOBxS<¨Ü®™>F!4Œ½·ö ¡þÒôÛë;ã £Óž$ÈŽW’Ɇf¦ci“©YˆX÷›°{AèÕ?’ˆŠ{X7U´C JóY"EKŠ3··âþ ¦O$æÕ`»\ƼíÆDÄjMq´‡8¨?èè¹y™óìßU žKÅ^‘´‘º›‹pþ(”\¼ÌÆÆùöyL¨ ù’¶þYü9"Œþ ÍÝv|µ “ø¥ d¾ãã€<ì?Œ6ŒOÖ߈ÎðÛ=Rðƒeúb!ñ¥+FÈG»`iWòuÏmÁkáKÐeä‰ê1ÔÎPØÐ¡U`ކHî×m€åNêK?1ùØÒ!üõ´FÖ{Øé"LnÞÖà¼?ý4ð¶ ‰—{„›S\æöÍ1ýØÒ!üäÁø”uW þ×â)n{sù;ñ%n B¯àáy,E²>ø¤ùðœgÄ’$T0 ¤†_ý–Ä‚Û \´µ>®ˆ¹Â³h{Ñ¿º¢«Ë ‚ùÆ$ï³jGí¢•d¬ ¿á¶z¥çÖ߈ÎðÎÐ`dLF ÿ$æÕ`»\ƼCííø‘”Éâ‚óY"ECŠGüw­l1„¥T¼ú$Õa4aO“uAÔ5è–#d½¯ƯFÍÍ™•ˆ{K¾Â½!O „”‘#gÊ"&7uUb"&#Ífœ›N`rœ” „p 'V[ºœtA \Õ|N× ÂÚ†h‚{0FŸùê|›ª þ¡¯P7ŸDš¬&Œk[ a)Uà²C…g'I“1Œ­Ã(8DS™Ý¶=„ !º90|%þ\\À×<áðx $€@X!Ÿ- D‚D`I©ï‡AŒ4e’h*LC4ÆÛ!AÏ {ƒ@-À%/½€³óHÇÕé?ÚáWSþ=™ø¶™wT(ͼUÿ„F"祋/Œ° y wÄ>*À û¬ž™Ê:f&AѸ½^™"Ò¬›S16ÆÞód]|Ê-`]’` †ìPÁ¸DÓp0$S0e/‰‰8ÀÇn~ v¿ŽˆÓÒ9ú‡ Øp° ‰ÓÚ,²3 Ž ‡QÀšžéËGF¢À|«ux+²³˜ 3+8CÙ_¥O†e¼VKM”þTØ)ð°®í^SC“]”Ì@0ä÷úŸ™Ërn÷ñÀó0Jzg(è=¡ñVWØ„ a@Êpþ1 +“K]‘.¯ˆå‘~ ÆoÉt “¨¹žT@ßWì¦O¼ÙÍìÿH£¨ó¾A``€I9#H GF0M«¡Y¢(ÁˆáK…-Iz#©4Žÿ”Mât2&ï3Œ*LòO}K Xb`*pFãq®©ý~ÿfS‡ñ™e¥õˆLÑYPèb… åìâ€åKð^ÊAeÓBÈp­T«BP˜¯yi­W>3ÂëB¸vbµ ‰ ® ƒ*a0ǯb E0‘˜k(9—@&\ܲ«·YIÑÛ"Û¥‘œŸá;Ì #pާŽÕîèp:X0Ø}Õ`Ã&LÇÊÁÚSAaô>ÇáXyCÀ™©­ö>– ͦ t矟™à7X k,ƒa,N7 9m$=øYl¸lØ©U©÷Fp·/ë¼F2Âqä-Üàîú ¡Z‡vô8%`EâtMm‡ñLn#Rþ›\a7 ’òNÔç|„ä3!Ï€™ÿHJikfKQ¦ªQw|]Wü‰4BBú‡lœ–Äj6ÿøÉU(›ÄèdMÞfŸ'APÊü”ü°)õA Ù­p •'ÉÐB2¿Ð$̃ò>ѧÃÄ‚ ‹&›@_¾ƒ3‚ÌjÊÚ#ŒO#ȹ5¢ë¡Ù*F#f †ÀR¹4×#+ ÕhR.DB`ν ݈~A«ï_'bº[L"*ŠÀ|D ¶~,Ä@íø…ð5 }yC Ô?ßaŸC ÔmL¹± "dL‰‘%{ ÍžÈàäÍГ¹`ŽdÁ|0ÕÖ¬ò¼˜,ΆK½¬,-gðd§C_dô§CÕ¶Ìé°¸ÎC³ª „Ϭ•!gË,GÉ«Õ(dzÇ*}³ãu;D¥€ÄÛLóôØ ¦ß&Œu‰ldâ³Þº´ÿg S‡ñ‰=Èν™hkÄc,'BÝÇùºÉÜ]g'H›®=*rpò¤<|‡?ðܰn(i]MM _ÿÖÇĶÜ(NÆ$½]Ó&¸ß’ùyì&6¿áºSÂ.@ ú™®½ÓLld’F!¼G¥*Ôåm¢ÿˆpnƒYX¤Ã"ÒÀáR_%£_pFÞE™Ã߬ýÁ`ÊøåÚýAŽòÞ(`²Ðãq†RC>cs$fÌP´Á¡~Âw#ÈYFãÒ}Ãqé>á¸ôñ±ôº®ôýM죆?¬†Ž¾°í`Ç ¹á`ä[89ô°{c|X,Ûf°ëÀæk³0à½ÌN‚Õ>7S/‹,*ÎBÉERìêÁÔØu+>‹©èñŽêd+¡Ì±^u†&'E: &wT„^¤50S\U£ÙÓ2nu»îÎØûÂW’ˆ"7õ^#a8òî"-z(»¦Oüî8P2œ?ŒH·©†”Lljßõ˜2¦2€ ž>Á±ŸŠÅFtœ¡"CËÿfƒ½º6­~2V{VL ÈÈD <Û‹C†CÚë­ñvM6!f?9P‡Kà@Õàú3¹IÕ+mÙ%.m&=еJ‡ÜEÄZ(`ôwÀáñE£Ô¨z²Ùƒœ–×~<,/{q ´èÀœŠÁëwpV­1¢r‘|ÝŠt=¡|xì.êÑO ¸î}&Üw>“n;ŸI÷qìágÉE–xðFÓ~D,¥`@Þý°FËVƒ‡XËéXkžYk&°2…š¹áaûm\ì« 9ØâBŸV›“Êë[à¹O†}û‰¾ ¥w€sX5âW\MM‡Æü\ÆJ|1§œX)ÐÆ¡ÉÅ‚·jåŸrY`q·Á©S!U;*d8ÛàÔ ÆŸG“$ú@…Õö% ˆ"Ô@1a‰€©Á?ËCýÝ…ÂÕˆðèûV^*¯;DãAÄ29(úæŠ;Lc7(!yƒvÿ²ŽrIÊÊjWîj讣€Z©åE€@OA×FXÈêMæY<ã!7¢€f ,Rh&†W @ „숊€‡&J`Çâ ØS ÓBuÏ£fì šŸÞö B ‡¨ç4;‘œ;³"‡ CãIƒ ®mDr…s&ì Ü \Û€×d&mÄ= ÜɇÂè°÷³y·@Mƒ‹z= "A·eÚÛ¢c6ôJ ¤Û»·v!üÀ6öBeÃaíPÈD6ú<"2ø|¢.`{#à ‘0ø< — c‡ mÅæ0`›KôðGF³ž ˜Ñý<6‘²»!Fì9(q‚8iuØ8Ám—sãÊ `ØQ†w: Ì ?99 ܆e{ Æ äõ£Íñ3·ˆFqCŒºra’…6Ô¦…–mÍîÁ0mmY©B¹µC)ÈZ†Æ +[„P£l!Æ\ ÒÀÂÊ¢`ˆ"Õb 騰ù@O ýÍMÖpmŠ.N‘¸!H2A ¢„Ay,~Bç)'A¿ì¨Í Éj4äMT%¦)ßSÛϾþÿB—H»F0wè 2Çä<¦™îXŒ7M<º 0jß#¨…Ö|‘àî¥ÃÛûó±]àÃÃòµu"ö¤B†rÈÁ³RaÇ\¸ÙaÖm»….ž#Ráû`Fy¬:´Ø|¬ ý(I=åZ7Ÿ„%<½ŽB ³ƒØ(2ÈéìxAæ^z'ÂÉÂdá2p™8Lœ$6Ðò²¡ŒÃ‡ÉRaÕ7RaÝ6QefTÓU6Ùó½mQeeÏ×–Š ­Îšj¦Âª“SáwVSÊöì.n†wÇ•¦Ï‡ÀÊì;;¿èÊù𾱦xTÙCaøSõP$ä¦B㌕ƒTEƒÀÕ`T/Ίt(ou®pS¡Q¿,ðS¡Å]k˜À>¾^xä¦Á«Õ’ŒISaUv¨f”86“:S6fVª5öfTâÖÖ7e2‰˜9®òÿ?Aÿi%?ú! Ä©!\€FƒÆ†¨z€>¤Uª2åØ}!ÌrÚÐVHÍJ´qÿ°^#`òî­·õ»@c$IÐPÀ0‘ƒÅ‹&š‘ohPéW9Rilq{©SWm¸’ÃO+½æÊD8ëÈÔ(BØäE`O—Ÿ3X?p±ò,b°k¬ˆ!‚†Cò8jŽ!ï|ð°±=K±z—p«ÀV *±Ç ‘)éØð„Ü{ʈVçÁY8L©6Óe“„ÉÂdá2p™8Kñô²¡y0ãëÊ1Ê·¦R×£åŒ+B<(2\<©°©¿•&Óeƒ3Wø l-¨GÀÝ`ÛŸ¿[µæÏ£Àê|)ïú=Ï…õ3öì.n†wáÔm~ôX7øÊÅM…=_ª ª9ù9)°§«FV,†MÆ«¡—Z©Ðª6°À©Ð§ù&{€S!³÷’*ºÙqz›ϧã—*oJ–Â×2Ÿ ùű”ÈqU ’ŽD€Ñ¨ |$LC2j¡-1Oü”áüb@FzµºÛ8­íÃà9 ŒÊV¾U£ …@ñw q˜‚ÛÀû"¯?,SM^R†‰UJ¢.@ë E«pbdÒr\6žMiˆ”áX)9<ÙÙ 4·xöú`˜nœy×)p¬{›ö©ã£P°«¼/Ì)Pâ¶˜Š— ¿+Œ-X5qúÆ+¼ÎðCZ¥Aîñ–ÇE…Bø>àò°¨îÃÊÀµ°ïÈXÝûä,jÿ!M‡tÙD:ìxF!ÇÁä!«sଜ ÁZ² `Ê“„ÉÂ2à†àñÓ,¨]alŒwY‡`#¼ôO…–ñʱo? UcãNÇ•0¶ˆÖkBÛõ|- UkŽB—{ˆXXSô{XT6'sáaq}ðºðyS¡~W <)ð 7;œ¤¦Âž­)°žÕ‡56ÕiÉ`Óü¼d°j7¬†MÆ«¡“qªÁ¦ÓÆ…N‡ëuÚÂÇ–dÉêfÅ2*<‘%2RàZ§C‹zs>+à‹•>kàƒ•2o>ó7"&0z¬ù’¹Ç‰7æ±Û1õf ¢D‚›âl ݸ¾„BA€Rœú ×1c A!.óã¤088 …·ý{ÿçþðÿH r4Ü£ÿ¸?ð…„"Ñ~}`šJòÊWK2Èr»Y ‹›- D8êÛEŠ\8§…Ó…"Z Pa ù1h¸…ƒeN ,Åõ`t+±}Y÷R!ƺðÑ`~øäd°®â±XV]ûà,}gäi5.Õz)0¶¯ó²Á‘ÏÙä(²îš(2–Žáú>J³Ïd  #Á(³ƒÐ ë<öBÊ™S*eC€ì|¹DšG°Q ãÐE–yè”m—Ç£i«B|,éØ`BÙý ~4qÂÀ­…žz1Î`bjË©ÐÆ¤|©ýÒ;‚§C -vìxXXá…ã¡u»Ê ü¼¼d°9›ÈÁL…K/U_ƒŠÀ{°œ–P±Ž ¡—Z¬:†]j§ÂšV]. Ÿ s«ÔØYÖ»ò$°oóVBà¦BÿUzN‡›+ÙS¡yª•Âsáù_X@Í…_YÜØiÕeyG"@jª!Ð?åè’fAùC+EÎô(OÐ?Ý8W¸ËI×fü©HƼ(€Üº pE"P@šSØ+ðFéÈ]ü㘃ÎïW1¸l;ãØaL Å2؉•^‚§!µ)¦éó1Raùãã¨U¹Ù:‘+Q¨R\T8àÚÅK…ÙáòÛ‰R!ÝÁïjD+e²a¡\_¼,*†¶«³~ôXvÝ…ÍÑÎì.ýð Ž~Ï!`Èçìò8ÓEƒ:µÏ%V‘á·‡h`ñÙ-²€ó‚³Ïd!xxíÓ0áqGcÊ;P…¬ø¡ © GÀtQ¸?Q Û—Õ¸%–œZ€‹,Ö0òÁ é d3õaX9{E`~êãb°¿uq±¬/O«ˆµ`eî0ج/m«‰µN„yÂãÁXPÓòw€°ªfÑN…cdï`W™âF ×BûŠ™óPp/X,KNð¦B¨Øã…]ÎÇ,*ÑÞvBð@â<‚‚ag±k÷±M…þqõ ‚› ˜åû|Šl-6a—åò)ºÏ•uªt-j¶œ<Ôè`+Æ­iSgT ÍmU¦ó 5ÚbùZÿÛ®—þ`ÿ1HC÷÷©+¼o.þ²­iÚmAoXÍJÐÈK.‰.Aà¡bØ<×ñƒùÊ]ü…È¿ö8ÿ_ø € ‚ ‰å¶é¶„šÏO‰Ž ¶éò›"YxÓƒaR¡,<ë¶EI¥ -8Ra½Z4¸‚¥B³½Žw‚¥CüXâðŸ1ìeƒQÍùÑA•ž²ÙÆKŒrèg~Íü$°î8uß¹pÂUÂI†þ†ÊC‰ÂŸ× D%V·…ˆ»¡åZÚÖTeÇcí``ö‰ÜØÇ°ˆÜûvÁ°-Œ{ƒ€vf=£…†/"GK>7cÖÝÜr¦C;a`ü‡¢Áù¨ì,½ÇaO…f!¸Xuàñ%…Æíðܰ¥Cmš Ù¢oÉN‡¼1ÆÐ°«Æ62²½ÂÀ©Ã‰–WÅL…qiµŽ*t7;èÀî§B±âz:FÖ8•2ב¼:ú/È…6^1ýÀ©°¦…r$¦Âî'e]j› OŠ£¬;êŸ['ÂÚ­c105VšNc ­_A>« /ƒ#›ê¹þ 4mÿðMðAEÿþ$¥+Í;ªƒBwŸ ßø£v@âÿÐ;OÄ¿õ¾g°JÈ)q’fÔ bäGL63O °& ‰™^òÈ:•’ÊÊb$Ü¥ÀÙaÃÜ4¸©ÚŸo!a×»a˜pJ— ¶ùøâ D(|Òâ ‘ ¹àT¨w«È,Žo΋Œuó¨X5ߘSq¸ÉK‡ñÁÎK ìñÇ›²°§çF•V0å`~èÃr°#Wå`egÂ7~È}•ÀÓÛÐÁ¸öP›n‚sã@!€êe“®kðöšŒƒodpìEÖvhéÔöû½#m¸ #¯cäp瞌¢°t¿p¦ÃÈŽ 梅ƒ÷QÂÁ~Îa‹h°_½DxSá¯n0¼)ð×죈µO…x7ذøèÄhlSáY΋øiÛpä¦Â®ê#Uƒ^gq!„–Þñb¦Â±{áÀ©â¡; r¬B )ÐÇ*ÁÄ"Ê68„@S!_²²âè_Yóx*d*{O Š™ ³sS!Vs¦e:·™ù©ð·ÍkˆˆŸ ný«æ.Õž)ÂÿU³X`þwÔºsYX!‚!âªÂÇá†ÍO"æ^ù¶Óg'KxÝò“_k·¤ ˆsëþµ¨^ÂÆG±YÏD€œrJ°ç ™!ãß„mÉ…+&ÃiûL~¾H âšhnñZà¤B¼u¡Ra«Q«ç*Œë(ÉŒ ˆqažõŒTˆ\’áeØ Ü ¬Žo΋£›ó¢+êÛís€Xkù82• ±´¸ à°³¯eJ„8ÆáÁWƒýèxX¸;„òX ÑÕÎÁ^ Üvz ñ‰}Ø,›0å Îe /ŒO ±°{C^§ ²‰í>á°öš† ¾`œÊ5FÀö£°î 8[SØEö=ÎÆ¸G r p޼vÃÁ‡ëlŽÂX·N…ÂÁmÆÓeƒ·!`¾Žúˆ…‚üý`¿?@Xu˜ˆnÚöãFp°úÒ㌖YŠÃóÅ·…‡ÇR0ºÓ%†Õ|ƶ¬ñ+ˆ.d°jâ¦ÃçbûBÁ­<Œ\)°ûäc%ƒã{Îã°þíÔc"¦Âýzº;…>û] \TèW›Åù©ØYé´¼¦@Ô±–¹…2-ô~`§B…{c:ûÆ¢ÓSáeÕQ„Ì ê¶°Á0§Ò¬°6𾫄 ì®´d9BªˆãðÃf§‘í”XY|&rÄçÒ¢A˜» @­BÞnÐÆ Ú˜€œwìCŸúй÷Á¯žý¤ ˆC1r%í&”ÊPX}#B8µ†Wf}£B,aoäµ$£¼K,Ìi,Æ¥móÆ’XDSâžç\[ióˆ‰_- GQ":Á,aO¨F…ì1/gC" Y<"“Ê¡\Ü)hNµ¶{#å߬0+×\j^K'Öäå„aWitQ¦Ün->9F¸¶SEÆ$yD»îÓlJ#HûØ Jºn ÊøÃú@­»°D¸ôvÊc‘#” Àq!›€Sî¦Èaߨ¬@lк‰PÛáà¢û9 ×SDNÐ_(áà·äÜ€õpðG…z"/ñ‹qj›Á0ò6˜ÕE—ÈšÁ:‘†v|¢"h÷F­£¼«1#j<`_Ä5>þÈÎ2X|tufGº°´Z§ÃޤefÈ÷²·Íé°…ht ½Šd*¡ªÁ8C{ÈÒ½0âÚ´FpFŒ0üž†Js:gÁ“:Ïç,`”hÃåß-”Ñ£˜3W`ÁÙ0â¡nìTÈò©ÞáLÍ1txÚæS!Åú}6‚"¦Cl÷ð%>möüi#ÆæĬc>]:úØÅ „T÷°Ñ‹jÉ$|*î% ؄쫬»å M–-TßâÂ÷Ú•eïÆ Œ@?8 ’ÝÝ­Š'’¨dP1¯(ÿ£ÉòW3J,'có7ŠwüÒ–pt~Î…A)ó&¿rE;‚Íä·Üuø©}×lOÆè¤:"N¤¸÷·µ[TªL´ô¿Ïä@ïÄ•¸?÷)Vѳà“_Ð2/åBHpFÜÄ’95“Ág-ÂìÓ7C“€çÀá ·[Û%#ʯ¦dŽ•u­&&o&ª·T%Ýzq.ÕõÉI…ÞrüؤÂòáÅK…QÎàª1•ç%"«ÆP‰É`TãÌΊT8Ë(Já5*ufEaùý܉ÉK…xÚ¥Ã_¦À,£Ûž‚Á«Á=ƒ÷S ‚vÎ÷Cè,²@nîJÛ‚| ÛöaíØú’P²Ûö%A F¨(O ™†å3 Êf”h ì'c¸GøGàÜàûG ð~B4¿*l1—’uœ¸å`YˆÚÍÖ¶†äM`Ùly Ë;ÚÑšÀìlb°;¬þŒþ,>ù˜lV»ÛÑSá÷£‰µO†ÔÄì²Å‡÷YlSáYLNbAM…g#¬Y`ב¤,SaG)æ"ù,ï#SaWEÛ#׿R’Ÿ yëÁ‚Ÿ ìýÒ0e>öâ |5ïînØ5P¸àTØ=ËÆ*mOˆÈØmb¦Õ5¶7 d?~Ž)ÐÊÐlZå:UZÖ…¬ùÄ%05Wä˜úû¹‘SáU–Œ“á}W ‡1_gþ(6€ÿøf>=zt%‰OÛÒóQ R ðˆ&ˆ‚˜#ÙÀSxò¡»G€?éPÃÀS±Ü'c¸NÇpŽá;Â1Ë€yÁ.ä#“B{‚0HêÇ„pnðŒÐ<´ÑŠC‘ÀFH@ð’86>]L‡Gi, ð;ÈøXåx\°7Îñ*½`js¼K/jøo­£ÂÂ÷¸ÖJ4º6èsµN‡OÓ5…êËf;S¡Q²G1°·ÓP§B£d—Xž†)•Q¬ùÁó ©Ïr8ÅM…]†F*.õ‘†Ê|8ᱺEá%>­|ˆ)ðÇìq‹©ðñQØÂIׇ´Á”c û³À‡SaÆ™çh²1…N¯b§Â¯×õŠ ûúÄ:…{øÏPó™ŠýôÄ8ðW×d*ºŒˆŸ ¬´d„aUù`1’ж«³þ¿öë¥ÿ˜?áH¶Kð- âËÂ2ì%läéHr+ÁÒ§„˜·ýqÂÌNa)ÙÈp#Ζ¢DÀAÄ7óUëüSõø©D+ˆþ¨ X*Ñ¡Æ4PiD±ÝºŠEÃZZmœP³9È_‰Kõí`‘Y¤¨6§hÀÈxr†4!dNºy¯^d ¥Ãï]h hU=ÖÊ-"OÌ&¸UuL;ªŸ¤˜[â·y)«x¹ˆpØí,3WÃ?¯¬ôaVº^p ­\ÂKµòo€X?{7Á‚Áñ†Žf°ë)–ŒìRá^·¬:ÌÀ–¿Lv ³1f¸,À•‚ú?&¬ΠD<°Š“<…îO¤0ÓÚv;„Ì7(C/.LÖDÈŒ½L–DȇØäЗæ“[ÁàM$5 Ê7ÇÚ™ Æ7Š(ܺÂþc²8ÇÂkÈÌ?"K±´÷Sv€°6ØÁ`tv’ÀŽÆ{jVÐ;QS!Mh=MN„-ƒ‹f,ð«-˜ía{²Ù”èz¶É iT$du–jd8ÂéŒûS!}c¬ZS!}a¬S!‹nÌgjÀ»´—f?£Ö™þäqi¨FüîàÄE¦§BÊ?DE²S¡U#"]æ¬ZªÉ))¯9Ú DØ?ßwÈ™…2S´¢ ¦BªvXŠ aGÝú±SáWVF T ½|àTø|¯¢ÈF¨Ž˜„cUÁÝÌ]ZÎãʨD03á}W.‡#uU?‹d¿ÒšÿÛ®—þ`ÿˆŒÇdLR„ˆ°ˆ"€œ†ŒxO2ÀgA Õé9ÿ£Ù€«ãÚ˜¦ši¦ši¦ši¦ši¦ši¦šsH–ˆ9O‚dÌhã {&äp0@bÔšÔàCAÄÍ‘€k‚”.ž«¥€dÂe¸äú ä0œð¢jtù!î0ØÍ²?¾ *‘õŒ²ˆ¤i¬âÿv´ÀúTÖâ ¸ÉS©ùfFÐÿ ~+ðª×½ºdŒ“Áå oõKég®L¯CavªƒBò$«¨HC¦_8šK‡W2]©ªüŒÌ¨cDÕ÷)Ãß¿"‘ Åž›K*T?|¼±ÉK…ÙѸF1+´¾áÍ2Ыp9bV x•ä—X?{7Ø ¸èiÅK‡a3læ¬Ú²Éa÷̃`«údc ¿O…v<È–gQ$0Yia°ˆX\Ü™¬ 1'il„<“ŨD!á͉ØîÀ5'¨&a¹LÃr™†å3 Êf”ëŽáPþÀ5 áƒcí‹JðüæÁ±ö¦CŽÇHÍ ¢61S 4ÚK_Äü+Á¿°¶#ˆÞcX¬DZ™Å`v=ŒÎ+kq¼Å2ÂÞZ‰f°·èë))Ð6èsµN‡­E’ýX^ô23¢§C"Í3XY|=Æ‹3 d/¬F±v7˲0Ð, °LxÝL…öyö=)в§˜ˆÑN…zÆcE:ïV_‡ƒ;èULZjt*ü±˜¶Jd+Æv2ç;DÄÈUNÀˆŠ› © má^ÇÃ* ‡tÄ…>kè‹…>+胅1ÅÿãAqS õ\Øà 0ãöžâàŒ*»ŒÉƒVXme•]ŸðXKHÈ*È•Ꭽƒ( ·.žOøÇ9Èx(!„wÿžÉ·°'F€É¿Ç4hÑ£F4hÑ£F4hÑ£F;|ÂXH!>ïzƆD²¼”D^'‡Ì‹8 Ó0aˆx’TQm²þÁ Ñjã©èÃ"ž!˜leå2ÅÐ;B†8J*ÙRåþôöé¤þH{Œ63lîÚÌ¡VWÇö¤³ãmˆäŽX¹ÉaHu¨¾JÀ€ã¥Lb§åŽ©UfZz_…0«uGüv+ÑBç²ñW¢b€Í/õs-ŠÈ¸Ö¨t¤Wûíà“kµÀ$€#‰¥ "ORª:j¤Ößìï Ñ±0;ÓBÚ0eóß‘†o c d£1ˆ@”×d_ëE†¤SÝÔÏ2›¦sË Œ–¾EˆŽþ*Áf½±f†O0ð¼±[B“$rVdªWŒà„ þ#€]#îÄÈ Ôç _%Bí}÷cL4#UŽL ¸Ug«¤¸UTR‡V<A =×$ÄH…Y¿àµH€©á8]™Rá^r´ØÁK…y¾¼©pª°B%`ÕÐðBkºÈGeƒSÓ2]Ôº~Ìá!bÁnøf°ú~Ìà°¸Î^Ù¬ëå`vgmš¬ÎÒXÄì °7€ØE`X“40 bxí !¼Â(`?” 2á¹AÖ ƒ,:1:ã¸NÇpŽá:ã¸D…±r ,±d”p>Ê6ˆÝœ£pl}«Ñ€qÚ86>úXø‚X8Ä8ÞÎJÀÚ#i«·¯Kh¤°#±¬ÔÈt}TÈto”œøm=Fz©Ðâ‹$°¡¸Þb™a{ÐÛ;Tèq E’XY|=2kßÅðøz>VCiƒeLîmˆ‘ôWéxÀÇR°-‡Ë²0Ù`uøx;¨G+­ÊÃ…»©Ð¬;X°¶èÂ{©Ð®Æ3ÉN…tq‘¶j1…ôÞA•“S!V|:2S´¢ ¦BªvDTÈUHèS/+Ý—>ïÎ)Ь}ŒÅªl=UHÂlp¯Ø^ Ï…StƒŒÕLÓc ªf|$õGÁ(„AÓúeÖZeýŘ¾Ú%¦€$èü¢†ž wü PFÝ0 2Åü2ÿ>=&¥ä‰¯kùû@ò‹4ã:dÀ‰C†% J”1(5#à„hÑ£F4hÑÞáÇ2R:UI "D–c?N8£>Ó»I¼4IÆàœ-<_]&Ÿ2ð ~ßz 9Ÿ¦Ý'ƒ ØZÂ`ðŽŽÈ`sAÑ7ȃ‡P©’rX3 @ð2Õf`Ì«M¤ð¿¡TsEÝüáþ5„ýóû†‚ ôˆûoèÀ ¿»_ÇËD^ÙãL¬¨æQ³¸£àxý»{k)%ÞŸ5º ]½Iéw‚6"xD‰Ä9P)?êŽ,žâuz,µ>(f‰ÕÜm~x‡…åŠØú’˜¢kꨛþ‰‚õã—Æ_AûêQ–ž—ð¤æ@µ¡þˆ4¢7j9¾JTïúÅ ¸éS©ù¸ŠœvŒ¿aØm>!Ï¥Ÿéjâ0™`ö™¡‡l/ë”0SB6Z¤Á´­¥z• *³°)pªÏWIpªÏWIa±ªÊÒ¥C*ü…Âq0‹]þà ˆ¿“¾Ò$¤Ã_â2 \8¨àîIŠ— x„J— ºQk„!ƒ‡ÈxÝ`ôÞ²Ž %ÙÀ¬*Ï¡Xc`³2°ª>@Ñ`t%¹Í`6a†Þà¤Cx Ýî`o°ŠÀè}Ñ\ ‡gµÙÚ[!$°L, \î† Èê(˜lþP)1Ù¼¬‡p™pܦ\7+.Ï‹.ω˜nQÀ§¶N¸îÎØ¹Ñá$dAöQ¾Îo ÌÑÂt/æ(å{\1ö°Vko^–O‚õzÁІ;ç’ÀÜv:X;Än%n+x Ÿä°7ˆÐ‰yXzŽÝ•‡¼†FÜ3XqÀGQ®x©÷q­Öt°Ï~2Ÿ´5Tʬ ¢2*o?E‘·µƒG±SX…ÆéL…¶÷qÄy*l7Œ¯Ã3 Üñãu:¡Øän§l_‡èJt+Þ26Íat~êt8­vX§V_ ÄŒYL…T숬 © œâ½ù˜Š™ ©ØP *¤gdÙB0ªºs t+c1j› ÃÔ£qSa„g\Âðl7¦ñ;ˆcÆÞëÌØHÂþëy9fʾB€ÀcUÙD4ø aAÿˆ’%Ú”g±d°KP\Ý)GÊd<(rc·d0ÄØu?üþA#7\7ý/À+ð¥øGÒü#é~ôœõ7”ßÍ7óMüÓ4ä„è=¦ÜÙí6æÏi·6{_°_°_°_°L»±P÷ò«| wØú“Ñ ˜#î„JV2 iá‹ÙòäoG-LOI·¶>‘êYÐfÁè˜{§G­\àI“—‚ à О#q/@éÃ$ A²–×&ÞáÈfÂvdG$p5e¢,ý¸üÿ ýë@a ‚½">Ûú@a›èÃJ (’)ÿoÀ³2È\k‘>«œlw=V¡@EÊ.w»Û¯LޱÐ~ì~ÙoÿöyÛ‘u0|‹ž¸Œ ,ˆtE,ŸPª ´ô¿PA¸¯«ªÖ¼ @üàòbQ‰uÅÆ¢õzbK¤;&äÊøó)(B õuêL.ªí%«=]hF«ØäàgU»*}rTa ý×e&Z \¦Z©ï™K…TZdÌÁJ†~`óR¡kY´'d$óX5v–\Hy|Öº{'‹Úè›÷>,R¡îË$5ˆX^÷0MamÙ>Ý“ã%´y2XŸš!xnz  4’0`ç”/ Ëp#å Ž.ÌÐ}‡ådSÓ ?‡ò… 5üw,»>'ÙÁý'ã¹ÁñbŠÁÈðÀF£·G;bÒ8G„NãçÇ´Fáãǵ‚Fq™GǯŠl¡ŽüX;÷56Š{öSa´FÓð¬±Ô~)ðÚZŒ´Sá´µh°û#ð,=â43ã’Ã÷¡»>VÚ:‹lø§ÃÖ†Ë~:þˆz½a޾ÅažþŠÅ`úÐØpêsa¸Ö#¿`i8"¯X;rÞ¾,Âã…FÙhÂÃ…»¬*µ»X­ÚúÄ^,Áá:ž±˜Ð©÷W 8ð¯w‹sN<+×™ ©ØS+/‡B¦Bªv”D# ÓðÌD)ª¥:VV Ÿ ùÊÊ ¦ÂuF…6ã\Üa>_R|ë>î7šÂùÕZ“ƒD»ÕôÎÀà!#[Ësþ»RŒö,–6€ÿøJ«W±Z›»7H2«Œ-ð}ÇÆgßáK€ü7ùü‚p9ÊE¬¹³ÒoåðS ­£Ê5ÈÑÒ6æÅsw¥@ÓoïBîÿ`š¨ˆXz?Ò¡ö£µ°y+;g´ß’2þÃÒeí¾*Ÿ{¯ àˆ»tÄ/:޾/BCFbPt·â<„rÐh"ù‚ÙI³€ˆÞ­‚°dKHn¸ Œå£ ð„H|Œï‰¶")– Äa«[n`€ÈrŽ 8’I,è³[“-Æ%6‹dÛ¬l»­‹Âƒ¥&¿"7öù£>y‹ý"Ê( ´'Á´÷Z³K¾ ]½Iév³2Ê·"c?(P£‚ÀÂ#sÖ½6ÿx.°á¨æ]Õ¿ÂÎ €/ù4´¿×…6—ð %ø°%\‘©P1B1ÕÐċޕʺÈF D(Ö÷˜&d»íõ’K…UIªî3%†ƒš¯`%B¿~ZT¸<ª²rŽâ+,³Ã•&ã¡3*պ͘‡-=·“Xe½Ø¬—Fƒ–ø¤<î°8ÂéœûXU ž‚•ang5Î6ŸQÙB—CÙ”÷XÃaî D7ètVýkWÀm>–6§‚ÀØy'´0cóÂq†ƒž „u<ôãÀò†3$ûƒ“íàÞÖC¸Y_QÑ §úª©Øî]Ÿ¿ÏÒ8FŽ=#„Œ‹ûFþ€ŠðŽGÒø€¯á:ó’x/wéZ9ÄaÕ‚Ü•ƒ·¯L°_=¿TØmŒ?JÕàýó‚Á|D£õ\î'¨·Î+nñ-E¬?Z-Ç%‡¡ž†ïV©ç›5jëÁ:TúÜWK/`íñ}aägjÁ#Ø«ÊÁ¬ ™u9°ýèÕåM†ýãqËIûz~Å>£Ñàî«”z<ÔøF¹¼[œí›jˆ¼Y‘L<*¤t*a_ÝâÜÐc_ž ®S!U;"*d*χB VWa| ™ © „aÝa±XUß’!0¦BÓ•c­êl/ÄVH…6oOšOõóñµMÖÆ®›̃U~¹XW·eÄ$Å0²Ê¬ÏøjÔ!áU$áMÍŠ©CnTž °©^!üJ'h, .K&®HÔÑOþqÂŒHCÉ¢YÐE>þÄã'×D=*!éQHdè<°@ºà }ýèûûÑ÷÷ ¼G]7@ FÀ§TxN¨ðQáž?ŠýÉÿRrFÔ€Û¯Õí2·ì3V”g™í,aÅd‰´5>¦Á m‰PvÍ×—% ŠfmNZûß Œã"$1i_” €Ãd§µ“Í# Q/ã0î¨ „h$¨²[Í’>žM“3À¥`9|¢Ý¤À¨ÐSjn1þî%C"oó1-ÇJ˜ÅOÅš Úº­kÀœ‹qÄÿNXX,Ì·ñ /»UM´.%ÈŸE„:lƒ±:€½ZŸÏ¿õÒÄJ¦´Vó5OŒ”,89 61/žm1õÏWHbQ2 ‹p¢š’ë:™x̓©Pë §†kê¡‚Aº¨ê’áuShÉ%†µV܈g겕.žÏ2 "¥Âªg@Žâëšu¡Åm '*S2RR¡eiy™²jT,©Ù‰‰ÕH…Þl»3«üFÓ&¬Xý#Àö¥C`;Õ}¸™èh°8ƒå2qíaö~CèX{Dêd,Ã%´y2ð°v‰ÜÊ̘v~i²ÁÞ<~,¬¿+êÃhûa—ñ› `õ’5'פ2ƒcÅ—gÅœÈé–@3'§YåeÙñd••õ=Ž2#ê}œÒ.¸æ?Qñ÷é‘mâ÷é å^Qžc‘Z£„h[ÒüB¼&l#‘Z«‘¨õùšÁ|DÞV ðG傸Ù`¾xtû5æ*áûPSü‰ê(â§Ã[bÏÙ«6ÒÍ NÅ<ón¢¥bÃôr6ü\{cÞ«ˆF±Sy„u¼5½O¯¯Å7£W•7¾wð)°í°7ŠÎ|,5ˆänÃŒ>g…ÆrÖ~Åûnô§¸«Ž7FŸoïÎáO„+‹Å™Jd*¤t6'^o­âÜÔʬ ð(±¬þÚ b¡VŸ†b!N…õí°*t*¦Fv)Ьxr06©·]ýÈàTC 졦“ d:>©äJŸULTÿ_?TØø:2*l#…oyg s K;ë2‘wôâ…þ"HˆƒTr1Ø&Ê÷kŠý‡¦5×$ŒG\õºÄóèǰóü7‹»ú"®/ïwލ ¨_ÌР@`PH` ½Ð•À$`EàŤw0>¶'Ø—[n•‚ ö@nsÕ>$-L@Óp€]$uㆠš2¢æ Ò$Å2¹O+›°pЇ ™}F¥,¥t$8“€?ÎY÷¤š—"Bâ[Ž•1ŠŸ”Êñ¨Id5¨ Oèpn•:<=c úKщ¡h#ô—£BÔ¨ÑÐáë Y” *ÊøRYô4±5J}à«æÈêlkPŸÐàÜìöˆò‡¬íèÀ¬;¼WŸúèíŠ]MÉ` „¢+4Ø÷P®ÿá]é'n4PiD±ÝºŒÈáÐáë SbÖ®Ds4DØfv¾Z£‰m!Ψ‡ò„Ëä‰ •?­kAªÌA‹)eªñÕ%Áꨡ! ³¿fr4!U;„¢žhUõÀ™a 5´á é`Ͱó2Á„(eÀ´º,»>*ŸêuÇp‰F{?ÂŽ¤="QƒõÐ#xbk4JÀF ö뿨Ÿ±Ý¥²3Á§#×A”S D7ÝÖF©‘î|çdâ5£bØ`°·èé.Qî|硽äTit}Ñã †6‹Ô3qì~Ië'h÷û$xÃ;µ÷F»)8Ö¬Í0ÎíE—¢Ý•ãØÁí¾+Óáq²ÄHÂWö;pK»…ØŠÏ+uå>ŒÆÖFí…Ĩñ„åz5Ù[¦#‘n3¡ef1ò`ðûž7Œ-£Ÿ™æk£Ë ‹¢Êd*¤t(– þÂëÅòtH¬:s'±Œ<_,°Ð‹TÈUHèQ£ ë ˆÑ…q+66)ð•k¬å0‹u缬ñ¢Æ/Ç?6m½nPñ‡>òñ‹Í…ö·xÅÉ_Q§œ\#F2¿›â`bçÙ'ûÂh`3¤ÍÄ)Í+Øça>OÕ¯’ŸxßxXÒ]‰*+‡$¨osèÿ£‰a^'Õ0<ï°kÜL‚Kª šƒB±½žEÐÀ„sÀ1€ˆ(ü^;Z| ÞÓƒ„#-’ÑK(õ$–ò*f˜HÖÿ…ÞA¬ Æá v¤ñðY zX~Æú±VÑÐYjÃÓÙÞ –†‚Òö¬>ÏÈ} ¹&¨&iÍS,;šËeƒ¼öüNØNpßå~!^Âqöƒï< Õ rEf†sýU?¢²ìø³qõ^r«.Ï‹.Ï‹.Ï‹7QuÇ1úŽr‡¤p‘”}£4t#Ïâ8D¬õ~ˆ²ñ˜üG•ž¯Ñ‡yüX$N"#àÙ;câ ~á56ç9S/Ä9—K°1þ¬ä×K¹{z±a·ƒTøhdr5–†s°Ý­“+_Ȫ ß‘Øï(جÛNÁzŽK÷·Z²Å†-…‡+ŽÚ,ëchÏ ‚ÁÓ±ëñM­<)”ØKqìV*l4ì¿ ùÄ\o§ŸZE”Óá÷âŒø}Äcx£ƒ¨óìkŠŸ ¿#h¡>vW<àûý𦷊¶ìB› ö,¼B(1©ôx2C{o~†j|7çÑÝ”ú«Â"§Â½IæŠ ©‘S!U}¸2ãã‹™ Î_sS¡³+ƒaS m°cXBòÁ¾u†™…>— ¥ê|#ÚžÂË+‡÷„éHvö1Cð3É\_½ÿ/o!“ø ƒØ¯ú2ZH)@I@ø( qÞ(χÜF7Š3·û˜´QŸ˜Œ/'Ö‡e<ú•´Y‰°×¿c\V |vê› ¿Ø× úÎëÔû>zäH©ðª”œB*|*¥"Îþk-H-b› ·0cb™ª7ÛS!~)²S¡}Çz½êt/°ã¿z–òšÜ¦Ã³ *m2TøN£QÈ)°ŒOßVœ—ôDIˆª9ëFÐÿ l[ˆÉJsè/šJsðSjÀ ßèÖPdBÌ0(&#` MF•Å[••ŽN‡†q `hZDXðwVÙFæ’`@WÎh@XB`6îB l!ç% EŸ˜<± T*ÑZØT˜4«zw_¯ŸªD:¶¼XTˆ[§¿Q6……]y+ ºÆÖa2¤B«@‰Ša¡ùëÉÑDuàN%K„ô‡@s°RáXÜ.ùÁßɸaFœ:r“×C‡ú­M§í,øîr¸[PÃÒÍoùj·äô*SXf;ŸC֪ŴLùò¬xÔ㢱àv|Ë5øÿS7Mj†añ^xª ¸rkT0“ `:òƒ.Ìëúƒ¯9…Ø¿ee¦‹7VnoÿÐÚv+ §áÀãYhuâï7°ðùˆÂ¥)ðûˆÆñFf[b¬Sá÷âŒø}Äcx£;xy÷EO‡ÌFŠëC²žt/üÌYMƒ¨óìkŠ›:Z‰©°¾½5Å Œ8z…¶ˆb¦Â½‹/©ýoôjO…aœÄââ |6­F¡”úkrÊPp¦Â­ÇÌئÂ<õÁ½O…õ9 ÓÒa_añQ„”Íp³ ÛÉ t,¨[í„S¡ÝeiÀ"´-®å`—ôû†; Ò‚ZÂÞ “ýRœúÄ q ìšþ£Äø@]2 „"ƒ#¬5ã€[^¦$Ò/í4,áØRa6ë7ä^h.»ìŽx1‚— ÅVbRl•Uׂò¡À¯M‰H…ØÕ ’¥BÞï¨à¨UŸ&v)ª•¤ÄÁ*‰´À)ýw 3QDäÛ(Å7ž6bq¸Y›´¸of'… ìÄã… ûõFL>à.ˆÁ•¶g½Ö³èV+Ðö}ê­ù= œÖ»'p¾JÍ´šÍ`¾Û‡?f¬8ýß4ÍÓù®‹˜|A×™JZŸÄ0É­PuçÇÍÐe€rkTi9Ô1µ-ØYCn@¯aAfãêÍÇÕ›«7Q,ÆŠ8G&Š8Ã(ûGÄpæµGŠÕ‡1ú˜°ŽEj°óïdf³W`Vb%X@©Ôní寫ñ­Ö æ²ËS:ÙL·1Z©˜­ÖùB ämÖξFüëvS¡¥‡*Ù~Íž.mTÝN†wŒF½OaÍLÃqìV*f;G½×ÀŸ» ›qŽ"ýò™ ;~JvÿsŠ3«QÞ¯kNçØïõNß,FÚfžÎ±8¡‡Ãx63¨Ã± øS¼>è¬ü? þ¬GŸc\T#1û-&öÖ «±´^/Sà*ÎÅÆSá_f&ÆSé퇑6.§Àû8¸e6ëId¦íSfÆÕ6Èiè÷)ïß1æõæY¬Ý&|g2s]f%N…öt“!ß§@ˆbA³ú"$Ä@ÕŒGõ£hÿ€z>kâ”çÐþ%KŒ!„â;ô?éò/ ‰»åœÝ+åž3èJE¼ ¶Øu1’`AsŸ Žb¡ÁG>B•<ðÂw¸¾£ðÆ*L.ŸV[@£B[—®¤¨w`¬`-*D.-^^ór®¼€ÂeJ†uæÑa ·SÀ™E„8ÛÐÎ NÕÙÐ(¢üª^ZPRáÜp¼ãe˜Ë‡ÌäÚhè¶ÃÙ«ŠÁßÉÄÝBN;ŸB±Y{@eBÜ9ÙiÎïÙ,1Ó‰û•«ö= Íaû9áµêÅ´Lùò¿ß~Wà;ïÊÐÀLÖ«±15²À|L«t?ºCÆ}ƒ­'!ú†Î>Ù Ço ±V |D¬´Ñ; Ñ>ñϤûÇ>‘#7gø²ݲ-µ¹> /â1úT=Â7 Ö Žr Q¸t5ÒÀÔWœ¸‹Œë#qÆŸÊ`Ýá^ G{àqWƒQ=vÄbµ1´V¡jch­BÖÄL|Ü+nGuªùxóšÂÕfÊpm-Ò·u½aè×…:‹ñÈ^§´g[)Ì_ˆ®WíhÀ×–SCiج0[œî¤ÅZÌ<̳£†í°iáòâ0ñãC£èþX‘ØÞ05cNƒt}¸S¡ó…ÔïY¿ƒqSNº£˜älfTíÈÛ@L†阘îÉ’ý·#"<ÍNjoG‹P#nž£Åêt6ñØðè}ý˜¸Ü§VØb&§ÃÙ©Û l6²§d )°¿ÓtcqSuª7…7Z¶íÚõ‡}Íá&Âú€I£ž<ä§BûÿeÄfTÈUHYš;ÖUZcîÁ¹`°ÿHJúÎþí.?݇[¬¬ìb°ô´çwì–ÊÁïöjÛ“Õj°½š«Ö‚$Ö°¹H†‚fµZ Öë5™V€jw¢µC ÀW´0P¼vº°C6Æ€(údËO^Ð ‰¬Dy)×8N¹ÂuÎ@x)—¹D1 Ö½££|(†"±(–±‡+¶D°"ªh†#:ux5ä'."ã:Æ clkÎé‰@ÜkÚÀcÅd¯!ˆ‘­ ¼†"F´+Hßa­ÖàÕ:i®‹ ×ÈÚ3­”è ¬5M:Šý’ý¬#éL†bш®ç{©1[ƒê¦Å8ðœF>swÜàu&+áè×aB0ù†FÿŠƒà×k»ðýö÷C~Aéý©Ð«³SN¢G±ÎÁNÞ}ÑS¡¦7dj™øaØñ²™ûF®PcÜHàtS=TE¸Z¦@ÕšLv§B§ÌÆ7)ðû9g160‚ ŸÐ#hS¡ò§d SaRgâre6Æy‚-SaUk§¹>¼)®/©Çæ*l/«M冀N…y>ØXTÂÕû¹‰‚¸_WÏRbQ H6@Ò×úà)Kþ¹…#JZÓµ÷Z(ËvgШĪ•Ürþš$šmž†X¢@·øšhAuŸFô̘ÝèùW?#;Š“ ô~ÅD‚³–þB‘=PIPâ¾$ˆT,!z— ñ8fæÅ.°ƒâT¸mÇ¡©dB­Ð[yÙI…{6›Öàú‡Cž‰þÛ¬€Ö*\>`/&ÓF\>`/&ÓE‹>{7Ñ2h|šÃÄOÊÅHÃaì÷ºý­?+*uå~Ö  Øô+;Oª‚К Ë±3­•ÀÔ×€° ñët/hpÈ\bgÙ@19S B@ Õ Dä?P¹»ê€¬–n>¦Þxô˜dêÉd䨠›yãÒe‡¿I÷„fƒFýD."±D¯:(Þd,ù Ѹw÷ñ^Ä|‚%cq¦Fãƒ=I^ EyWñ«– æ²Ž cl~ö¦6Çï{«¡ûÚ™àÕ^¦AÅÖŠÝkE~…û뵄à×êr+õ|ùÖJt3«+Àôk°¦C1v"¸[œî¤Ålrª›9ÆmäVv¬ì{ð§b¢ìÅa€ýc~è?cØ«è}ÅX§=b."ÚyÏwâöû”è6Ý‘ÛFS¡¦f*2™çÁn 2t7^¡tïn±J™¼ô£Åêt+牕:>&0½NêµÁN…TD ì§VØ ¤pSaxøü÷)ži³Ì6Õ“–L¦Âú·<È |8ñ ’nµG!Š› ê æòŸ®ºÌÑ#­`[a5ªäÄÿl @ü€/:YÈ)Š%0V´ïøl‡’ê†eNÉãþšr‚§*œ!Á 6S;„Ø"+6>T(.Ë Æ6)l*„¦,u"Sæ£AÝÖ[¦Z¤A´4lΕ"¯©f¤Â¬×·¹K…YPƒ›T¸uOÀR}i¹³ ÔWt,Æå&»37 –¯ÁÉÙD¿Û¼T¸|À^M¦Žƒq€ÆóFD¸ÄãYH†BüMG)òLô+Ò• …Øšä¯Ù¸ÐR r´ç[Aad†vu›¨Øß`ªh¯ØõÏe\ O_5Wñ2«Ö¡â³È^Ð à,<ûÝâ|Vhd €œè Ð,aP É8QB)µ~à<€Æ'Þ9ôiïÒÍÇÕ›©÷Ž}"WX£ø?PD#1Òu„xöí·hÜ;«Àø‘FáßßÅxLü¨Žk(£v+@ñYCx#:½^ Eiöâu¾ˆ¼N¸Õ_hE™úWÚnu‘ZGƒ[à°šñaÊ™ èZ-ºÞ°ß>Št3«+Èôk%2‹ñÊøvÈf.ÄW s‚=Ô˜­ °7ðVt}¸S¡Ÿ§|Ú¦YùPÂv{ò=í;=ùöèú;p§k"ì”èiƒË1ºçÁèþ•2¶èDº gžóá‚„}Û3¤PS!ûôs6S+#ÑáL‡)XاU1âeN¦ü7Xf§V¾ã8¦Q»å‘L¬_¶{ÔÈ_ùÔîXûÇ<Úå>x†É6°‚M†3 d µO†|˜Ü×ÑîÂW™›Ô΂†$]ý¤1Pà"CÚè@ÔXEé&öïønÞnÐsùÊ•ÞÏúp>0cÿ9K¿€mœ7¨}›¡Õ†žþÒZÝ,´hb …Ó]D«·Ý ^ãÓm ó ÄÔ¨x©ê mQ » ž_¢ä8B¡Ž[‹”‡‡¸¤Â¤ÝNò¥Ãª~š“ öm¸ZWölÂõ#Õ@YÒR!Wfm» )P«†ÚhÃÏy\(ÕpöjÕ#18áAÆ„<âpó“>Ç$ú©¹[œî¤åa{9ÖÁaG_’_c~U»)P…ÖšüR¡»Ûê°Ý`­¬W‘7YYÁ^hνp¦ò°?{ \çzÝ Å° à]æ=!xíïâ`|Ov x ?nreîT6µùU~xL½ÊÎY¸Dð8~¢³òÜ;¢ZNˆØ[:ö¯â)Û„n¿Ä ˆñY+Àø‰‰ÕËÇ5— â"ãQÕ\ê yW07T¼)­uK˜ڃ-)”Ö†­¿3hºêÜ-» ¢¶[Öó§ÑO„-ePñò=íL†büEr‡¥†Ðj êd3â+•ð=ì)°Ì\oÁS!˜¼^+•ð{EÕÚa-ë×êÕ»q¯*å°ÊïÞÊïlEÞ¯Ö ÷b=øSè‘aÌTï[möVžEѳқPæ#ꙃèÔT#VËC™ î×c/jd/æ{‰Z÷)ÐzîFÇ ueèØ§Vü‚øAN…gˆ…ÂY›±´¸*eG÷ 2û?@+º4uáN‡Ž!žÁL¯P† 6ÍÌpõ>ÿt™)𪀜\ ò¬G“4úY¨ããú "jªáýfvì÷)qþéâ]< å/.ž +û$P‡_ôÎd “d¬NÊzJFAðÁº¾âQ“F^Gˆ`‰›r,7ur~E¹ºe2к´“œŒ"¥Bçüm,ºäÁ’cÈùD©U}ÚònR+Î<àˆaVüª¾cÝ 0µK‡VGí AI©öxRjRÐyÁI©ço޽­•Ù^}"ÂWñ ˜æ°q“ß!$BOôúô¤ã¹ô:ÝIÛà?âÃY­æ¢¹-¿^•›iÙ5Òʆ²„·'ªù§äÕa!p‰zÎåa,Mn˜yV€jgó„æ< ¦Bö€+@9üá ÅðÒ@¶3ì„ Ó²IÎÀoÚ}ãŸIÖžý,Ü}Y¸ú³qõ°aí>ñϤpŽL=Bâ‰F㌠{D­å>¸Fä0*ðj;ÚЉ`sLJã^ÔcaàÕV„j; ­âÅx1Z…1Ñ1Z¨]‰Œðá_n;­Q§#}†©ÔkÛŽ5åN ¥ºVî¾G£YZ§,9V̾FÑm‘‹ßÜÈÙa¯H‘Æc±ç´ì"*L*ÁâF⢌Æ=ë® ]w‡©0®2œÜ©U¾) T¨UDìB• ›k3c\¤OkíÌÈaz‘ùB®R+\ÏŒ¨Uƒß∿:„®17œºßû>†Ü­KñÀWKs€=Ôœ©p…‚üMp·8ÝIÊ—Új­R¡÷ß6©vž~(øÚlMw©¯Wz“^0urÞlõ娛ªu/ÃMå\†ÄÓ”ØðÜ«l€ÚçŠÝ°6púS­=úYÈ Ã´%GcP•…ãÚÂä{DÌÀæÊ¦Dm ¸L°Ÿ>‘;5V£WЈÙktNÐ<"8ŠÇÚ- 㱚7N‡ßê½ o¨çŠ-¡Åj*+T]oÚ‚¹Ø×ÕÌ Õ*’šÐ7Y\ySl7_[ySZYRð¦°Ìzõø¡–ˆ´W蚇xäUë~Ã}qæ|!hº¸ñ·aº¹ð[£h¼_\ƒ¥—ƒê®(·FÑx¿¹|OF±ÁM}p7ŠáM„|Šô®gaèÖΡ˜^жѭ;+;¼Í|s¸×jäeØ=yš»Ò×_ª}¹Ú=<)ïƒåaêÞüùú=©ð¿6´Y+8S|ø=”3M}¶@ð¦BûõÜKÒ™YŽ*m5ÖØaŠTÆ72 ·c¦§ÙûѲå:›ðÂ:æ"´)•ãC©Zò300È)Ðiß_¬TêîÆ¡S5©Öe2çÑ·rJ õ¤‚› õý¶á+¶½úâœEUùÿjÞEäª%ƒë9:D~A"PI\,Œ²ÚÉøN'oúg8e qÂpS-$>ÁÜZ·ˆhCuFn„”;[:• ²öPM4?}ù \2ùÖ¡IÒ¬½² ؼ/Ù•]áÆ*D=õ”¦J• ”.s ªŸ³Àš‘*r°µH–×[Æå"`Ög˜©Wù7ä,÷9MBüÏŒ%Cà³RuåJ†}Ûo%£~á^ˆd.šåèY‰î…Œ·í7U@!4¡`´âk….àWÁÖ¦¼n¡Ü95zÃ…‚Ó[«Ý‡Ï^À]îê’½€ºßŠä0¾¢g–*ä9¾ %ž(_:ˆ¶ÔNh ±â·@ì ÇÒ…ã·¿ˆ ÷< vØ'Þ9ô³qõfãêÍÇÕ›¨•„khá}²3¾bݬáXº'a„g|Å»Ѻw¯jô8¾¥Â7v>ýî¯Cê”O1V~£woµššÐ/±NÎúžjôFÃ^ ÿC^?Uþ†¼~«ý xýWð6ëps5~™Oa˜ù×sÛñ_;þkáÂ|!hº¸ñc±è×¥6Žë5ñ=ô¦óyïL¦Ú|Šõs+F·e6 <ìB =žê{Œð6Þ*9ØiŸU?œì4ϪŸ†Ã­©ðŒw´kRSá{!ªëÔü¸ø}©µ¹r¦Âý­IC0ûq¶b^¦ÖFZ Saùm–àØU¶Z"/*}?™‹0ŠŸ_®Iœ)Ôÿ¢´)Õò!¥ÁS+é‹!2£f ú…ã’§Bû§íŠ{üÄnTÆ>a¹S7©ç!N…þ¾YVrx<56vþë!¼SNi°ÄÚMìJºˆ6Tô•¬{•œí'oJvO?ô¾eë™”â(Ê‚V5qØlAuÃÎ0P :±K5&Œý´šÅ»©p»3—›báI…q{ ¹DÌ#GpR!\þT‹«Ls!J…wpÔ²«ÏBÁH‡) H…X#tÏ*GÉZs°)P»6°_ŸâÖŽæì†>ÚM9´äˆdþMeb’Úbo5Âúân®Ýnpº“•.°_‰®÷µ'+H_iªµKq÷êoްÍfá6óÇ¥…ÉX\Ÿk “íar}¬áXº!a:ÇÒ'c jíMÚ#c„NÈñ[¢6†;"vGϯÌváXâ¦(bݾÖh6†5½E^Œ«Õèq}I2öŠŸµ6ÑmzS`âÜ*ÿÔÎ"©Ö¸¾ïGÏ Ìèk‘ð­3}þÇŽøFÑ}sçnÃusãÍ|8aÀðkÒßÄW.°anª 6â; ¾&ì+; ð5Qe5Æ+ë†SòÜ|Ø)î3ÄXkx)ö·"»SínE›{¹Oç~•%?cÑ£pSóæÃ‘ÉO…ì<†«”ÛaÅú1Ssç‰ýPOËBÚf¦ÃòÑ+ÁO‡ó1eáM¬Œ´'@§Ö[b§×©1SêÞ—>fQqb›Wê`ã157_ÖØî»t yð¾áP}‚Ÿ¯oß n½½™ð¦C÷K„®y_&Ä©Úú†rƒ©šÛ¡ô[Ò“Ïý3˜O›£ã¶`ƒpl~k©“2]pó˜’é;[L®WJÜEÄ]FL.¬—”¯5¼ì!0Ю2È…—‰½~ŒˆWå©*Eõ®9¥WÈ6!K†]_)›b¤ivƒY•#ä­9ظ]K})>|ž„pRé…§3—’¤Ãk¬ÔyWºú¯K¥ðgV)< ±ï™¨xy>«¿Àèc&½ %Â6 «ï< ©²»Ô×Ô; -7×Eh5zwæ¯*äBÓ^ ™5µE¶8WÄægâsø@í‡5ºÇ4ÀÃn>!xíïâÖ×Ó ;G@¤Ù–#ÚÂä{LX|øFÑÔGÅå°c鱊!háŽè…³¯h˜q¸¬Ñ!ãß•x5û¢'dp3­N¦è|~¦^ÑSö¦´EÖý ÔméZ½zÙZExSHÛׯÅ<‰Z*Ê”›Ä*¶ì7W>¨äT– ð¯:+=Pó<¶cºÍYìkši°ÌwY¯‰¿ ÍM„<ô¦ìr¾¸eº%ˆ÷Þhln‰æ+ «œÆ"êí\æ;‚¹Ìv+vì­kÊŸo`åw²§¾¹XiøSóæÃ‘ÉM…çØj¹MÛѳ#²†\~Û~Šl?m²ÑJ›YhNM‡å¶Xc€Su§žŸ¯Û¦Þ§ë÷pÅO¬ú.¦×9ÜóSnù¼œ> ·:©¿Eާ5>®ùÊŸ÷›2%æM¹S5ýަ)Ôß‚´©˜j߃™:t-6ç»Íiý€¦Œ‘íÓôp)ƒáYÉÒØø®Ôï‰çñIDËh@ïþ™Îº ty Ûjœ´¯ i9ÂÙ©f¬ ùßWo£ž˜]îEÆå*±û;ÔˆxûŽÃtºë]† EjÇS²‘ ¦ÅK§öæ ]g¹…êEfz©0»{–ò¤Öf܆ÒRòâÀøÔ—ßu?*8§?>´T–Ó}KE&Þ\ÕM^ên¹e&ûç-»MõÇ™e²Ô-Ë~ÓusâîÓiûá`°Õéö$BÁÌ-Êw³°{½Z½úüNÎë~+Âúš0‰­ª(_ÛÙõº¸û:¡|í^•±>Ð;KU^³ŽgÓ!s`XR}ãŸI÷Ž}'Þ9ô°¹Ñ+D1šÆÊ™‡+Ÿ”MceL‰‰GÊ"p51Eb*a2‡•x5ûª(ÄTÂ(ˆˆºßªÔmé:ä@ÝR)Ü=§ð#š°§ð#š°©äNÑVÔç<‰Z*Ê”¶üWÙÐ×#â¶lÇÏ?ªx°ÈÝ\…>ñuµñCÁ¯YáÄO¶lÀש°ÀŠ«VèäWa\æ=V l2b,×ÝÊæØŒî®”Û.ÀÝ])ûëv½à´íÚ)¸]äv+ ÔúæÊŸ±èѸ)õÄ}•6 w‘ì¨fén¡ÔÝŸ¢xA5¥†W)ú¾>ñSéÛy‹úŒÆdˆ)ö×$ˆIO©{IM¬ ]M­Îc•sR!ø o§Ë†:j§ÎÛF/K†³uíìÏ…7[EΚ©°“Â~paº_C—6† d*Íæl„TêÌÛg¤Û®áìÎúëpeÃßI/‰¹·S (•IGÏð"ÞnÔ˜º?‡¿ú?2ˆå¸óX‘€aüÁ?C03ȉiŒÌ JV ¦Ä79ÏîÁ–:ˈՕØDXr¸Ö*F–s˜·*Qƒ©P«®œ2*CaÖ>¸/I|åI‡Z4®&¯cäÚ¥ióØb½«ä#x‚“Ë,´ÄÞŸ>L´)0ü°[>tG„?~ u½Kl†vš~»¬åϯRxÀ_]©;É«ÊÙšô·LðPu.šÜ£êxó;-8ÖÞe’!`ª>mLìmNGòlº½¦ZÓRö™œMŠÔííÎë~TÀ×ÙÕµ ØÂ¬@F9ú@ÍœKÕ\€X´åyO´Y¸ú³qõfãêÍÇÔûÇ>–„BÑD}¢68æ·DÆ5Rt@ÌGcí§zô¬5Â&%?j'SS!Ǽ¢‰Dr¦‘·¯_‰×h>ëØj~Ó³²®VfbF¬«Ó˜['ð#š°©äNÑVÔæ+ f.®6Vv«tDÅõÎÊ}ǃR§ßÄUMN6ào«Vè–"¹‚‡ƒ]…(EõfK†#*ål˜Œ ÕfJÅá(Ù[©¸ðzýO¾<žª~<yOëÁåoÌgh¦ŽJ~úZ.ùšŸ¶†GC„òSöÔHê0–j~úZ.ùš€o–vÇJnÖÊ`èyS!æØÙ¹Mû1ìH)õˆÔˆ§Ã/#—§Ã.²‹‹þ<†ä:Ÿ[›È<)µ„¶=­ØãÆΊ~³Õú)þªmIÏŸvçIºÙUºoìc'i)úééƒÚW”ýú Š™òmà~\¦C/n¸³û2©Ø­ýp^ßH2>óv¥Ëà€ÚM¿Øzw‰¥4=64nÕ‚g†ƒ"!½£~p œØš6GÙ©«ì 8& ?£ ö„Tm§¥ûê¡sÉx«Ý“ú`»üG ¨,ؘ΋ž™äKlFEÔÁž°!̈ÍÇúo㦎g±`zkØPëY¼2.“üÓÁ3R –ð0xÒÍ&^ 3¶Ò¡AvÛ¤²Pà#_x˜S«„À•¹b+Za‘èÑR4øùHÚÅH…k‡!KûÝÂŽ ò„üêvR+V:”¸W‘©oWúw_|/¾ÆI‡í–X"n*M@m3ÑRáú}z*^óFð¥Øü w©¡ÁîâÍê+–'`άRqàWJNÃ;îû’³ÜÕZ¥–ÈwY«=Íqú¥Ø5jµ3°Uµ97‰§~FÌTìFQ†ªwÔ7!M¢ÒðAÒJ|/'·;Ÿ oUxåOáÏ­TÊ|·:Rã¬öÒ;ONTØovc6)õÎw´”úËråLû/dñ%ÎŽ&ì‚?Øx„LþQ¬çžA‘óü·›µØ‚à¼ôj¥£Ê$clCÃ;,|"ýþ“´æÊX!æû"Ààµ\³iø™ýP ŽïB ¹B‹“ì3ä³ü;'~š|œ2^ ŽbgÔE4Fú/•y4d?ò²c«æ¹ßb0©JD<븗¥.©Å˜)0ýÌãÅ….®n¹\àÏW6ú)7|ÞL/v^ç—TæÌš€žæÅ'k3¬£X² ‰†D–6Pø‰Ø_:ôˆ°Ñ!¯h‚ FèÝÛíf€`DyDŠšµzõøˆ×úN`juä áXØjÊš°3°Õ•58ØjÊšyïÉè:¾®S–…8Xj¿Vð±N-<볫fÀЧÍXê2®VÁžuÓ‰åQò¬u«œÈðkµ;c²°S1ÀÕENÆ1*Ã;Ä« Tì`sñŸQý©Ç_c½”êõíMÛ°k0ë´Çy¨f¡1ë2¦|‘ôd¦o¨áM‡ŒÆâx\§Ôå *vûú2S©Ÿ· }NüˆåL:Þoö/ÍM­ÎG…ߓۛ€wSmã n§ËÍLlÛf~ÎÇI¯È¿éãi°ÛH)ºÄm¹òTþ5 Ø~Ùe‚8ç3Ø-:½,C9þÆƈ T_!å(~e ŸàEºZ»L§ÁÿF«S<§ÞÒ7ÎìBx£›§¥‘A‰"QˆcÏ#fEžœÑy áÉëC2뮇ˆÉ*íùÉçö½îò£GB‡¬t( ýèÄдïê¬zÜ@€8“ ‚)‚Lc .Bâg@‡~Ä€§¯gñ1›ƒóÀ® yV8[|”<‰³óñ1#JF¶^‡£c'M¬¶Ãº— ´õdf¤éAŽš©~¥øçkæõw‚ÃM›ëx°ÑK¬Qr¥é=‡·e"l€Õ㊓P;”š‰–Ü'm&M³<©XÄä$*ü§Ìô%Æi¢!ž…bɆÓóÒ½Ìú¬T‹Ì°Ä´Új'Â6¦ûDøXpƼh­ˆË߯ÄÞ$ñV•f&fjʹYMxúU€•¦­©+*ò€%j ÔÇ ½øD89 {(_Ûíf€° ;aç×”Y©¯d ʃ¬Ü}M¼ñégϦY±tÛÏ–n>£„uöɈ˜dIceˆ‘óëÂ"Â4!²öˆhݽ}D çÊ œG•j6NDNÑ}V /a©Ó§ `Ej¦1j°3°Õ•4ó‹ElSÙŠjí="&-?B¶°ÌUŠÈÈËÅmhžA è5RVv‰c^mVÍ:Ʀ¦ DF5åCæ»V–‰åQÉL1•Öý 'ŒëÊ™Œ#}•c)˜ðj;§5À‰V v09‰V§µàªv1ÔNêqÔwïd(Ô¯jv¢èØTÈcv~Ê„ZÍa1ëU3ä£áLßQ™°–c{zS½_ 0O=NÝÂLý¸S©žýBœoÜÚ9|TÊÇÁ;.èâ.ÐS©¾L*Òв¸)ó¯Ó²Ÿ;~ù;)·Çÿ¤l§Î½*~¯ä¿ÔÝ_ O Wy¼ É:ŸçöS_Nøhýžd|ÿ&9 ±$Ê|ôjÙØ€Ê#EûiÓ§N:téÓ§N:téÓ§N:sI¼P)¤½ïXËžbGÌl€_L¶©dé÷ëÃA%÷ê ¾Û6:„s+a„fÈîHŒ„.“3è…1Š_]ʇ –Â)ßþ-Á‹þ0”Zlì€8€BŒO„±y™óìÔ(Î2"ë¢Ãýa‡ò‰fÍÕ‹ ?–K6nà`8Db.zò1»µ¢}Bª2ÓÒÿˆÀÂȇDRÈ<…G2Å?AŬ¡k}ÖÒU·)¾ ×y”µç {*TbÞ*ü8Šô±FQ‘Ï` 8Y>?ì™búÜ‹ž¿!üîï+G¨MFZz_·R-*_šoôZÊ'þöûŽý^(ü#:…*E(“X¬Ð"‚cH21ýB!oV6‹ÇðZVr õ¸-¡——Å“‹žR´ÄIgàꂎ´4Ùogöeq“?B€4˜Æ‡ÙY E‡KrÞE=ûˆ….®‹lwR^§ôl‡ ¿ø(ö¢!;}¹Ð)5Ë›TºƒC89±K«:^T½=o5&[X w3Rj&vØ4µIË=Iö¯ð'¡åá‚ß9Ø!uMKÏr}zZ¬w4ËÚ}_zÝ< ô¶±+|Ï\²ƒrkæÎÃÇÏro3Å^¬Å³5N¬Æ¦¼f¬Ä·Í\¬F¦¼& "J'P3€±@ó\!|éõ V?P;Kr€,|â€&@Ö(¤ «Vn>¦ZOi·ž=&ÞxôˆXN±ô³qõ±Š ‰ê(‰Ã/H…øDXFõÈFéÐûýFÁÝŽP àEE18ƒQV£kt¾¦r6Ç4榜 Øj³0"Ü;zyÅ¢Ú±?Õ…N6Ú2ª¶q°Ì\¬ì2*ÚÑ==)÷ JžÎÑ,Er¦ ðÆ­[¢XŠæ eǃQS Ð"ñ}X®lˆÄ]Wb®mˆÀÝWà¦c ˜ÔÓŽ"¼§p~ OXÅ>ïl2"¾ÅspG»mšŸŒFb{ðø+a˜Êѧ«Ôú$^ÔÍ®ˆˆ:øS¾Ç|(G a1ë2¦ú°ËcíM׉ïÉS~Y¸† m@ËcºS·Bêg‡§Ó=»‰)ØóoTÛ‡î°$&9Ü] åMòv–ÇÁSnÚ NÊ{ãno-ên®Ú¼õm’›éãúKd§Ý 5SõÖ=œ$•¨xÛiÙOÌïð{Lºáà—:ʇöŸ(/œj?žîïø1Ìx]‰&Sàÿç NjÃÚ´!¿² @£ .\$¸Ip’á%ÂK„— .\$¸Ip’á%-6Æé;€g8NÜ6¸ž?wmãñlê7'ß­6e˜H/À¨`pZ/…ÙJÇB~{#â4¬ÄŒp›ˆŠðe¹ÎJÿ ÄÃ- þr… @]z²S\d¨(s)ê}ؾ˜bê’ª*|= M¬o%ºeDvx꺀ò8x\s²ÄjÍÜ#šó…¢ )Ôƒ’Fôâ7éÄÉžÖ fe6!ñÖ–-Ái&¥íð‘ ÇJˆÅOÚôÛýàºÃ²„gþjl@ qÒ¦1Só§,SÒdrþŒ7û¾a÷Üt©ŒTü°s R9Œéè€àÿ1„ˆÒ—þï_Â3ø/†˜Ža?‚' ½zdLc—¯NˆjÔmn—ÔÑDDG!ào÷z"`„ÄD¼Uc8}׉9??Sƒ/I̦)ÌÅ1¨'3ÉàâbyUI[ }×´ÖF«âœ5¹CnþÔáa®ëÇŠêqàÔGŸ8S±qCU9­ˆÎÝûNkjy”óâJb£™O;[G¾ÔíýÖ*vÖ v£C(ÔÔìa¨–ý)›ï?i j#pÿÍD¬1yS7–‡ÙS=Z%¸áNÛ±²¯6èBS·pžz»…:‰´hਫ਼0Ÿ‚»£ˆ»AN¦[cº§[:Ø•:ó4œâ­I–Sy%L>7ôíukµ*u;våOÔ{1©…ÜÜiñ¿ö6îïø1Ìx]‰&Sàÿç^àlö*ÔʦU2©•LªeS*™:ý2U@U@móôPS.ìô™wg¤Ë»=&]Ùé2îÏI—vzL»³Òi“©‚«ò²6#·&,*/.x&™»D@ËA+t=€#ÀA>p#–='ˆc€fÁhªGœC1†·if.œAïb²³xçŵµ“Nò»(wË+¯‘âCL3·-›Žm˜Wœ?ù‘`aâP Œ#Þ1v»p íäjO,l*•äd ©G¼bívå†èÁ*¸ d@~ ìÚj_ýFÛ#c_%³çB@ˆÀÞßýO+ZÕf£áHb¢2л&#‚kÿG…Åô| ÑiÀ€ã¥Lb§ì`x€BŒO‡Ô*£-=/Ô,’BQø§õ >1dR >//$0µ ¢ =!2Òp™8oql`Þj(0¬UƒEˆ ¤ „P\ €Îa‹—¿ œ¾ÊãbD( €‡ ›¼ŸÙŽÎ…ÅC¸Y°5èã®ìkoÕ'M¦2ÁK¡‡d¤Lüú馜+¡¾!F±Ýц*FÏDz¥S=Ú*§n€)-€áH¨IÌÔÈŸRR¶ÐO~”§ÏK^T¬"g;5–Å4ÛœÌ?I†Â':ð¤™Êë>P[i€¬ü+ &£Â¶´Ê±ô¥ ë’¶°J°©+cl°ýñšc3Lš…¦iˆöS­·RLDÏÅV.ÄÊëý ñboõrpú½ÜÍL†¶ 6Ç ø˜ þ³¯)øV‰÷Ž}'Þ9ô²bÉ‹ŸÁ0Ó¡÷øˆ"hÀßîôHb/÷rkÑM;µWd=„Ä ¼¦^“´]U…°×ߺw¢,ž#âz"Éâ>+a¯µl5÷]¦Œ vʺS…ò¬ x®lQžÃ:ÇÚœ5 Û½UŠpÔTrCn†¸ÙLDc^VÁóQÍÐ[h¬ü¦Œ«Â³Ÿªvã+k:–¿|)ÔµûáNÜwÞɧÀ¾†í|.'F¦»†$‚y>ÓãÊ™vÐ4ÈYê Äí™;FÑ©ü3åL¨ˆéÛÄFêv²Ü:§§kì*uhÕ‰S.äÙàˆ«&¼øµ2ÓCÈ u•ñ²fiû*t ~š c4ÙLƒO#o€ï‹¯‰á0úñnê`Ó²œ&gÒ,*É)ŽgúÏwwü˜æ<.Ä“)ðó¡xŹE!õ2ç“ ŸY&ÞØ›{b¢^•ôž³³yA²”1ZzO·‹tUmñ6öÅD½*%é6ï ·xU2 2 ³ n“olTKÒzÎÍå—„Úº@L¸yT2C³>ƒäGfð€ŸPNòdçïïH^+@‹°(L䯠rÉƵPÎÄ^ä™m¥™%¢žKíf˜U "ÌÓ)X S¾=ðûr… €u‚­Y—ëZ 48¬P¾Œ16ˆ?86½£`»tÇðT9¼¦LA·…ðþ0Ú0}+6(™RÁC –Á <"Dâ,-é+d˜€Í B2ã€Rk@>³{,ˆ»D0eæ.…Àaž(PîbCȶYøŒù€K’Œ¼fv ("¤€Džç„dA±'ÀX³’,…å‡jQ°³áZ¥ÔD§ŒÔ¨e¬²©T/fÈ‘vJTh ¡Rü&²4´"ÿ6y%Jã€ÎJ¦&FR*Pµ#A+NþTõ2áue¹O6>xO619}©XÇÕb¤™£ )Ƽø¨ ¶ÁYyR¦¶Í º «T¡i`ž…‚uªØÙ,<ä­Žžë´Ôm2Ëê`Ff™5?Ý^œ‰•‚ÿžr˜Ÿ&䂵;{õø€°h…³·»êÀ#€© #ëËÿCŽÅ1¸íü â6BªôHLkb £woµšÍM#o^¿X}§"'æ«ñ0S¬³SL ½& ØxÃÒh¸‘á4p4É‚E‡ÅÊ`:ë%‹EVˆmÞ«…8XeXmhaí p4k5Þ<[íDÀŽiŽh7«^ÔÀ3¸NdCêY.©©˜ Lh[Jò˜Ððh&´< ˆðh.àzís8ÔJ5$37‡Ú|yS/¡Ÿ*f¢ìG´8±ÞTʈŸ)’´o·)•¹Tb v v˵;Yà]õNÁÛCè©×ybÑÐ©×øxkqÍÿJ€l·¿ ©Œ}^TèÑIÑ¿šl¦AèžÂ˜Ò‹}:ˆ´èä)˜un¤©›_8“„ÜÇ`H¬BØÅÿ® @üà–ž[¿àDÇ1áv$™Oƒÿœ2Áï/(íX¦.«éWÒ½˜ €]ô™hr}*û@_·UÀôœ“ô‡6ø€Ýô™o‘ì*ûWÜ¢«éútV™w•@i‹¼”1§ôP…ĉpV€qÁAáÐ8i8@ablLy×êŒ6a!%ø—ßWÁª>,  I"\Â5€”È6"Äf8HQ¦že„b3ôß‚_ 7eÉÒþà7øÿñ ú /(\¬h€ÐâÀ¤½š—ëZ 48¬Q¢~txzÇAí Œ_ÝÅ€gùMŒþŸé#™%*ÍŠ&T€pPÃE`!¥Çvê8#aB'„HœB…†¾2g@²BG PâÊTïS<@ÃÛPÌã6L%¬aÀ,'m±C ,ÅOÈv™\ û¸¹†É»BòêbŽT  <…÷±A|æ IÞ é''¢(YŽö d09ßW)­ä¥qä„Hñ¯¢¤Y^ÁR­—^Šhèqç’SM΃ÙR¸Å 9%JãH¼”Œ?©6 âvA#™Ú˜©XMÔ}'µ€À á¹hœÔð( ·@*¦¤\<þÅ@Ä×Õ\<Ùí[ZeX©BùÖ<ÂÁ:Çêxà)¹{¼×JØéî­É9!Ê“äÜ€hÔÄLüUb'ɹ#•¥›Í}Çøpμ²lx­Ó`ÛúI,<#pîˆ"c[?‚&P<|¨"š s°¢šr"~j°Í0a#LžˆŸ‘î®N D½ pÇð¢& ‚¦X©€Ö)ÀE£Êx=£Å¡ º«ÇF±C EÁ ·ÀÖ^ᨨd†GCUb˜5 o¬¼ àù ¦ En9ÌsL†ë´¨i[a«r5¥}ˆ8WK˜+lz±=¨äPC<Ÿß{¡™¸¾óç¨ô¦Q>#…ØÇË3} *d¾”x‚™+Fñqb™‚#Ê£ø!N|ÊvÈS¯ðᣨA;¢x ®À#¬Mê>ŠœôÈ úðþ‚x_~>…ëÃú)Àï°ö§S‚IðêÄ…2¢eÄB0à?ã ˆß×õƒcö[= ÈùþLsbI”ø?ùÃÞp¡ZjîÀˆEàªÂ@²þM¹5,*ƒÜu -¦BÞ?âž fä!b$’"€xŒ‚0{]/?Ñt]8 p°h2¼ÿ7EðÊì?ãÀf XÂPÏšcÕ„P `Ä;µÈ¡‚ü }uz«ÁµH†­Ç¶¸¡rˆE˜0$Ü‚ @¡Î] GxÅ¡aDGAJrFì8,[C‚ „!ðr8×~)VŸÝ…šóçI ç‚ÎŒ¡AG¼bívá°W‚{€1þœöÍHj*k°Ñu%ǽ½¿Ò±A?Æ©¸dÿ çÅ(V5Ký1(ÓK5êC–ž¹²Å› íõ ¨ËOKñÊáíà1Ò"[Ž•1ŠŸ‚…¹wo™cÊxÀ kL ²X‹ÞaÚHf˜AÌn8(F¶dùB]X>ðÿégƒÓF>QXCÈ $–¤¹–`—±{O` ö<‰µ˜‡"‘ÀšMÚ¼›,›­mê8ÅJÐÆñ>¬8#Vu*Á ÍžŠ-¡ì¡BÊÊz)=öJ¯-áJÓFä¡–›€þT¨]íPÇS‘ Ð;¡–§×E 6“E5 SuZ£s M¾]€©Ýº‘€çõÊ‘ŒN_‘CmÐSP€¾&°c• É ·Àe^@^h µÔ€+±HBy rü €`ɨ™øêôæV”NÄÊëýŽôKàd;XrkTËO^ÓoëÊãRÆ¥ˆþFL˜„± 1# gÒ2W®H†T>Va3š÷Œ„8áÃ"àAÁƒ0 Ç€1š `\#æ›=£QïkHp‡÷6¬}Ø×H±Š­pQ³€goQÁg?ñ­É×óÁuŒäõ£òX3ø/e`Òµê®ü£#žÀªŠŸBkú3?(ÙàÜ ¸éS©ø£3òž Ú£m9Ù’Kc›ÉAî™QÔÀ¥IÆùÓê̓û†é™£¯M¿Þ ¬[™XØß~ÏþOÑ3w>ˆ€ã¥Lb§åŒ÷‡†ÒUÃ2æm%c;oðצßïÖ$#õøóSaòH‘ã©Î™¼”œé•Ø€ã¥Lb§è(8öyš,¨(Fn«dZ†p@8Db.z£8ÿB韖ÁdòBqO³/ÁtD²íÇ Á°]‘,ºú…Te§¥þlÜ7LÍ꘩8ß:}Mä çL¨ŽËœo8ÌàhF0^Êô/2ÁãEupBÅ“&à¥8’!mù/`-’föxCâ•V©ãÒ 6¸ê<Ü…#$ ±pJºj"( æry> ƒÉp$ÉÈŒçtá²4"·A(\t0<©Z=ÆÄ|<[¨B`£ì 0…Dö†¨úITÑ¥+œA.û2Ó“=‚÷vð‚YøAl91ø¬§4Ë7Ð}ò†[úé 6§Å+›)¡²‘‰ãò(ft®tO“ÌÌè*¤¥ Lëž"á@V(b÷@g^PÛ|Uá ¿Åt†&i öŸ Øéî­Éå Xœ‰Ð§oÀ,— #ýa˜tníö³D4CÀ¦\‰r>V?ô]óÆR!àQôôE“Ä|D8dDÁÉăú1ÂÄ p2@ÇUb`ài”ÀeÕr¦>ë„.èém`†GCU%8mÒ=ÓªšŒn5æ(!‘ø¢|kT:ÝÅÑ’'môÈ$t5ºFÂAÖh/ÈÖèBÕ·(8$gL‡ÉŠ*(_QdÜPA= 6=”3ÏF4x!±S*p< ž‡¤ƒÌm$9¶â(&r=!gÁ·¼!žÐÇ‚‡Ž‹v§ ùgy– Ž”ìIsýA6ÏÁöžÓrÁ /¬õö£+yNPNŸ'°¦5GÒ îìòPO}9('+¶Ap'RH!`Í÷¦þ±'ŠËçùä(¨šŒ‚pŽÉ€5 ŽcÂìI2ŸýÁÁ:Lƒ$‹XAgb Q,( C  w"!Ò@1$@€H<ÀApA'&#Ã2’½;ôâ¥4f –<Â5±‡…îÿô•uBŒÛÅ_¨P¡°Ì¸/€<…G2Å› Ë‚ø``8Db.zP öT¨Å¼UýMT¼=•*1o~$)äcwkF|‘=¼·¨{*TbÞ*ýBŽŒEÏB~ƒ‹YB$ÿDßvêE¥KóMç²¥F-â¯Ä·"c?(BÜt‰ŒTü ¸éS©ùBŒ ŒEÏE¾NCˆðɨÁH.`-“ãÉŒÐ% g#1¢h HBvés©C`B[Ò ¾ û]œ€Dq±Š{ Øóç›È \Ô"˜P´qźhøŒZ!âÍ9C¨C 5š• #Ç·C/þP3iäÊ44á½Úu衉eײPJïŽû”À7”Óƒò‚YOÂŒO‰rèe“ïð¡²Ö¡Âà=xO†–ðÈ'y-[ à0­ItOŸ0Co…UŠPº'½ÊTаÄЬTX”@³¤.rŠ8š«P@ß$€È a©è™YðÄLüUb­NÞý~ ÌáW{dØñ[¦,|¦ ‚apØ"K6¦FáßßÄHLk]ÿ0ˆ#1Sþ-FÞ«™¦"%â¾"2!‰&‹‰Û½Uˆ\=£ÂˆŠ¨²j3@ãUBã(û¬Áîñ]¡‘ÐÕI  ÅNxC#¥r†$_þ¡†Gç¤17ðûÕ21¬ÙLÄyò‚GCuM2?=!íï°†x‡Ûñ ÷÷ÚâoÄ3Ä>߈g;~3ÐïÚàx4Ù˜¡ËÄ} žÄyBÀí±'d›Éô= 1ɶ1C8R! ÛÈt3lF¤:ë àž§X8÷=]‚úAÀ©€ü êÐ{( z¸ôQ£/Ï× \TEȸ¾ÞÊÜ\nZ|´%ÐM™ÕÛ‘¦‚Š–-Ïçõ©} Èùþ=˜æ<.Ä&6˜£E+X€J¸Æ0avHœ9B„.€%ù–ÀtmÒÔL àJpú70®+Êkƨ!´À0ÏšÁà£ýè ½áÚ&òDã•›-6¸ b†eẟ™0$`"0ïÐÀ_f¬ÞU­;C1n ÌŸ¨%¢§dÒr cÀå®Di> ‚D5ÇÑdY¸òqä¡¡­Øµ«¡ú³ qâ>PËSà„28ø?WBt ı=”Ðù(e¶ßHY¶Ø!•!‚#Ép‚!¯ –DõÚÐ Ì} m²¶CÄ3:W#ùáÐI ûð†gO}!“wÜ¡‰74PÁï¯h 9@Hd9ÁÒ o\ µè r˜š¨º8 oâØéü9/5X …ã·¿‹ ÊapØ#âˆ!Àh¹„+%žÓ7\PA•” ¢˜"V6â6jR˜‚é¶Lö™J»?˜$û ™È‘ ø7ÿ DKÁõWÇ/Hcecü ±{ü×hmº*ò…ÃÝ_tBã(û¬¸Ê5çD0{» †GJå ^þ¨!‰è¡?b ý~¡“6òÀ[Ä1"ø‡Çê+”Bþü Ž5p‚Õ²ØÅ÷—”=»> æûþ¡œ.>Ï”3…ÇÙò†xwýC<ßÔ;CVH|ØÔÐòÈ"^󱊓Aåò#i ÏÈŠÕÛÂê7:Òg«Ág©ðU³‰ãé röGñ{m:@ïsŸ$*Ú[@w«íZ×Ñ 0?€ >@éy<OÞ>ÐÇ5çúÔƒm[mæíK—Áq³äÿÐy“|É‹…'^ ¦J¥rUÈø,âR›·â* * ;†ÂP#ºÕ˜I¶sÐ SyA<Ëv‚9‚Û‡ $‹b9ɤHkäÁ¬»¼òz ©\ ÚêL‰•5@ 0#Ëv…Û27C,Y¶Q5H¯µZOAB@¹`0ô_È<È<“Ãy@Í£dÔòÞîÀVÈy Vèe‰}Ä“°‡(y>ÇÐA IjÝr [ € 2æ²Cnïñ 'çH"”è\åå IºV¡™Ò¸C¿Çï„3: «P¹ÀUd¦€`ÔS†2Ñ2óü¶w]ý%¼ÃÁ¼A &]„h¡€Ä⦑ c‚÷IÉ á¤„ÜEtP¦Bˆ°Xcô8 t³ÌK„AQôCÀ c—¤@!©Ô´ožuã âH‡mš!àQ ࢑MøˆbE7⑘т)ÿP¸8F´C#¢æ+¤08!ˆ7õú…™¯a Žž»A%Ñ| ˆÄW”ÈüòÈ;v{AˆöÃ0EnƒF´ÈPEnõVèyqû3ÉöüA=ñí Ÿ˜úBÏ{È'¡é ƒŸ“ô€G?!ʵò„FˆC6Çè]óp†ûHÙˆCv¥Ö»C¹¸üCnh©IƼ¡`Æ( ÷@0ä BÃ8×P¹{¼ÿÀ ó@9ajƒ]ü5l°¥Çb¡„éÍ;“Øk4-À 2áçp`QÁoF N‘•YCÆÁ9… @ nÏ©ÈJ`’„hÌFÆ6ãUþ/|꤈pFÙÿ1#,XƵC¼sL† ß×êƒ_¨b÷Ži±c"˜ ©AƼ!ˆ_ØRä~v†9Šé ¶@1B”g^víœÃyV5®6Œò‚X+d ¡"¶@Ú+d ¡"¶A qõo7‚zÄæØ¹ô†"­Õ¤Ðô€F’í¸Šò#Á^y!y!Hí-à…lày„ãÛÚ󊳓¥g'HbN ¿â `î´†&;²œš¨!€{*|‚”œkÊ‘SŠC ‚ T"€r<[ü.BÃ8 r0ð3: ©çýþÞþ —ð'0‘.€ »8E‰aÅ´Œâª½©ŒŽKÍFðù]*µ¿À,^ÿ5ßð Nჸ®?€bÆ;ýC¼sL†éUjdk¤; õÚ…úí ¸×Hdt®PÇ1] ‰© Š¤Tã*ò†IOØV5®p'‡V5éy;@ç1íXÖ¸A6³„B‡g$3ÁÞ}¡žo¿êàAßõ õnþÕ¼ÝúCaÁáFô%ZÀ Ú ZÈyR‡•mf9 Cò¡q’[5¥=-!á¼¥5i—“ÈVÒr)؉ؓfí%9%ZIrL×ÁRç?׈k9:þϯ]½)Ù<ÿÑy¸-R/Ғȳ•ø”;%U1’<ŸAsü‡ðüMTÍMwÒ€Ê\D+4µtö¥Ù,¥”²’ Ç’¬Ò•el¬ƒ#åO¯‘]Ý«9:C @ß„N€j­iÚŸNÂÝ©IªŠ‹@à:µ§jV/噾ÑSäùÚ‘Rð ¹ Î•Çð.þ€Üÿ,DÏÅV?ÈÅÃH"€$&àrPV9‘D1ÏÅæÿ!íŸgðâ¸þÜ|ÐþbFBæ|…=-)4é&ô´ìNÄìNÄ›1ò’œÇ’­$o‘ಜçÚ¯ê›~„LþQ¬æ œnU(89üþÀINÞ”E—‚ô^n#&]¡Àµ82w†É.E@¼¢Ð'Ê @Έ%0¼YA ࢕„!œ‘0;D+BŸÍ'µºúí Q3ˆ)g.ƒ+)e,f<•8K4ƒ«+ed*}|ŠîíYÉÒµ§j}|Š:%ÞD¡ð 1SÃ_܆õXeΰŒß®fã!Œ`¼ZÁ›“‘¹ú1N€wyÒèT~LHЦËM²ªC‘zs‰³+Sœ» rj §È!1˜óüJ×Êà cſȹ{¼ÿLcQ×åÓ°qi°. ^Å@=eRâQÀp'põü"¬aþbEÅHrñâ|ǵ;ÎÐ9dûE‚/þ$Œ "xdY>ÑRä}«ô§ià)F}8˲ jpp¯(!€ÃtsÕz^N׃ÀVóv†x‡ãâ·›µn–«X·:]]+y»CfO Cò¦9 Cò­¬Ç1áHrTô´­¥´æ|…=-)4é&ô´ìNÄìNÄ)“™INcÉVôà¤ÉäŽw°;þ"bqq½ëƒ@Ðÿ!Ôs÷iqþéâ]< @\2 à ’ÚËôªçÿEæàôpýÿy%rÏ_ÃHSˆ0+”+¥ÒGoàyŽM…°n}r×ÐFíŸ`¯øOjÊ‘VƒÚ(Œ rjA˜òUšAÑËMú¬d|¢r ä—wjÎN“MCÉ‹'(\‡tK׌¦LM0lf k³¡ÈD1fò†2sWMºÁWî-> N¤L*ßsu"ê+y1‚“ úk8âßàgÀΣö«•ÓC}ÿŽ*­iÚœåØR*ÏâAð¥kàÿCçÈî/×_Ô(±JÓ… \ˆ´çþRtùÕkü¢jeN?Äì:þlkÒåâ(Äx?Á"âTÇ3åLs>TÇ3åHr>í<…(5PSŒ»*vžBœ+ÊÔNÅÕzRfíN2ì©F}&nÐOpÝ+y»Vóv­æí[ÍÚä<®®•¬Ç ©õò Cò¦9 Cò­¬Ç1áHrTô´­Ò$lù†ä!Ìù zZRiÑV3è+hNQÙ;±yö_Ê”â€zGƒº>DìQÏ28öQDãàHðô-±ôßÔgôÈ‚ |$&%ÓÀ©3x%µ“"qå@øÁüå.þ/£ R4ï·=7ˆLÊÅýÓI’ÜÙÂSX§h ÈDxGøí±TqÉð(µW–\³×ð‚pç&Ø ¶6—zD`xB义éؾë·wðŽG'ä«!›WuìG, œ!Ë}¾”ƒ#åL3>„ìá)j[]ü€Àukfèv=å‘<ú[öR4‚Âh êæðý;&Û§ÊlP!/ÃÆ….V6_9ÎD8úýk4Ýõ*T?8ºÖ*–Qa,>üÏ€"Ó®,ºú±†€uÝd,{µð‰C•¯ƒüNrì2µò¤#åí¢ÀBIÑ €&.Ð8˜„H —»²Ë D—G‰ÑSç2&¹‡Î¿‰Æ]ŸàÀœÊ±¯JC‘ñüÌs>TÇ3åo¼TÇ3åHr>í<…(Ï¢§vTí<…c^•MUzRfíN2ì©F}&nռݫy»Vóv­æí[ÍÚä<®®”oHñICʘæ<)Cʶ³Ç…ÐyV²U¬Ï¤9Ÿ![„qÏÙ*ZZRüOR ‰ž¬´b1¾›ÑÛ>Iön„„{ŸÀ="Üû3ÁßÞQ±&çÚÞÑF/>?«`6Wô­iÚ“7‚K§DQ…Þ —ø¾å2#fM Ü`œŒ ŸèÍú pµöÜ Ö[ lÑã1äßÑyál‡a÷_—í²N“þwm Dýò¶:p´ nÆÀFûö¹=soG{#¥Éuj…tÐ)B¼žý*lQš'”³çàEñT«¾'ÉNïö™Ëo™·…׋~bÿ`ƒRlù!OÕkˆà*œ‹ÖÄÙ?<•»'£Ò(8›úÿ‡Âƒ°@D9ò‡Çø(ÌÂé –ÚÒŽZßjD°9@#•ÒÖ5£é=*é ÎaØè"v«>òþEØ]ŽÊ! ü}Eð» pIZ^O›,18CÁw½hMËF¼¡‚Ë fɰ:±ŸFÜâ™hW‡íŨP‡>aH‡×¶1R!u˜µ_rJ…Q“€R 'WÆNq D+£+ÊÁãIvp+»¦mÊJ\=è,©¦”L!CÅ+‚iq'S?Àt’*Õ#ø•‹ÿ' wý ÷uû/ †<›bÑk‹6±¹p;)ó¿™S°þ'ÓßðbI½X×¥!Èøþf9Ÿ*c™ò¦9Ÿ*c™ò¤9 vžB” kÊœeÙS´òÄ ÅîK+ô¤ÍÚœeÙRŒý©3v¦ÉÒ·›µo7jÞnÕºE×GK£¥o7j]<µò­æïÚä<¢`ròYõàÜ©µ‡!å¹¼“š´Žx·’QÃ/D¢gÈøyE1›ÏÄLMÞ"OJÚ[KhSkºòáÆ=ËWG=QN7z?QÏQ•¾ÄãÈõ8ÛAãú·Àˆ‰+­ TÏ•kNЄƒ°º&N’éàåüƒÒ“Çü¥úÎFPDÀ‹‰ñ.†áÝd¯š'be3«Á“·Åqc<Ëk@€` †AÍŠZtÏgçE kûÛAš¤’;æK ä•í³„c(¸ Ú›CÑD‚VÈü6ÌQöq´ÙBû§™Z,Å¥jux“ƒ&Ä0µ.G¼}_nDh;;‚y†–òBЯg¥­Œð)lÊ¢”ÕÙøQ÷4¸^èiC¹±ÿ˜j\K‘ÑU…?!Úç<-ß•ëøÝ:¢ÞvH²ðÊ5…3Ýj+0ÃDÄÑ-ú¶ší¥`ÐDìT£“ò`ŠZ³ª1ïñÊq›#Ú)p࢖ƒX„rоc⋹q­ƒýèF×Ñ1ÔMÇj3±@09:Ð2€ ZkäAt°må«Ü¤CŠÛ0lC„8­÷b¤BûìÓöÐf¥ÂÞÆ{ò$¥CŠ 'ÍJ‡•Ã5&tòX>?™¬!Öó+ˆä¦Lü‰:󡀉:þ­Íg+‘@±·"4 qânþb Åÿ“b×Ã[+êM…Ý– bc)íÌBåÀì§ÎþdMäœx³ø˜‰`MÁÿƒˆ>ÿŠeZ¤9ɉ9”fs>Q1&S*C‘S±ýéX×¥;.gÚœeÙQ Ý©ÆUá&º(œ²¬kÒ·bz]\²·›µÕÒêéutººFï£`B8àI>¼«y»ôŠx8~”…<€åÔ‡!å[SgÌ‚ð#Á(º’ y(øo£˜ÁöúDïŸð‰ã„u#Ú7^AvŒ‡×É=:ꛢ1׿A>/äŽÑÎòþ~l}H/Ú)2v»šÛÒ(²çX–ÿPŠR+iß ¸ApRRj£ü ·KU ʈ“ƒþP×;ÊîiЊ”ìÑ©Oðx¢4@$°` ä4àC¢@(ÉöCb¬Œ·3ˆæX`A´/¼b›˜F˜±È! ,Ëï!ÝE¼™ãz¡¾X1ÒïÐ`Ct©ÚøyB¶öÏöäÉÛx„xd$óo$&\Ø!‰63âDI•òfö¿û.ßöÂg¹¹0D(gmH•&µ>EªD(Š·"B— wñ"M‘oû›”ѱc Ñÿƒ‹V¨àæºG0­, ÁnRD°&àêC‘S´ò¥ò§W„q+ºüG1}¿QҧRæ}£ŽCïjQŸ´\†òŽ `ûþ)FuåâÜü]]#äÛ~#ž`møŽx6üVéGÉ5º8b>¼+Y(ÝóðG 0RÒÒ)æåŽO¹ŽêÚõŽA‘³ß=ç¾ßHçtwS¾;8"™²z9(š°¥m'=: 8öþ˜Â6DÏÀc²9ßôçW‚QN>æå4ø±ò˜&ðÄŸ¨œôª¯ •Z$Eâþ2¥9ô ÙDú‚pyT3?ò”µ)*ßåNA(Þ³-ûˆW¹Îè!ï à‚pé%0ŠKNσˆ¯ØßŒT#Ä!†›RáY Àà $ –¡ÆiµÕ³0x?%ådCE›â÷„74•Öð†fZáÉ0Ü]jhA…Ž:dËÀÎ+kEÙ‘<¬ÞˆA·¢%˜àÑÂÍNJMNP"¥yÃ*D¬zÔì‰^¥E2yþ5¼¨JĘ `}¤Ò’lÆ”ŠkÖ5°óA ÿrØÜ™n‚¬lÀ½J¡©6†Å&—ûæõ&UM$Âîz™J…SËRT˜U8aºÁë€Ö.°‡SçÅŠT=Ù!g°ö‰ÔÈY†H"Íõ;ûZ Öë‡5š¹šÆÄ/«Òá°@í…`™i>=¦,ïÊy\ü’ÿAy"˜'Y„` ýFàÄswü5#Áþ–-ïÊj0ÜFà9,’’˜‰ }ÝS††ö¦ÉÒËã[EÑ(—$Þ‰`MÈÄ“z85þ?|)#M蜶ÙZáÍ29 k”r×(ä5õÚ8ƒïøŽ9 éI¨A þÿT c^QÄ®è#†fºG‡ÞÑÃ3="‰ÀtêP*¢Šv¹†þ‚=·Ê&Ð=l†„úDÚkdM &¶GÁ>‘Ï&ßõô£žmµvædSÈ_Â(—¼ñk!åc—’Åãø€FϾÂ(ö ³†(”|6°%ÆÐ{(§¨ð3›'É="l~zE65í5?Ò4eûúáLsƒíì³Èè)×Ű‘ö¦kn ô“£8aå1‘ÁÊÊÂlÞßÕ*ŠÐ×î!^ [=”^¥9ô—5%¡=½¨TbQÛ™ ò}ÿÊ8î´†.ùn`G>OËÈ6$˜ŠõÈÊ@……S¦€àœL$ ‚A…˜±N†œŽİ$@Np[n#Àdƒƒ?îH)3ˆò»!`CAAñ•l!Ù ¨-苌 ð„Y5Ðçòº·O½ð _^kæS DÀå@¹É­cÎ L+Ç×*\*þ¸7©àÙì}EH…¯ËÄ”¨qQÀbT¨qf¢Ri ÖÛpÁ`ÕÏÐR¸ø=æ°û?ƒ³Y¯Àwß”ÅÃ)êUÀlMµ²™«?P3€«Žuåÿ¨HÅñ0 xºöÊyøÄî\?ðÌ ¹+2þš./–ç¤Æç$µ/ªñú]ÿË“O@KÉõWC\îÒ¥üä²G¿Åv‰`MÈ™“™D¹&ôNIDäì9m²'$Ó"™ÌüéŒ7øŽ_×ê8ä+¤p8£ˆ>ÿˆ¦¾)xG0}ÿ@â{tQ8¨ä5®Q88›nŸHút{G<oúŽq¸{QÎ7cÊ9â@Ûñóm¿òI|îˆ÷bwüE<€åü"‰{Χl<–G¯¹tB9øEÐåü#ž§s#³Ø–篠|£ñØÏj}8î/™ôŠ{kÕq"ðÌùb…ï°§Fûsn¸S#±Í¥§ cT}$ëü[ä)ÜbÑALüD™OÔèf48Ï%7EtTRAÜ94ßÖàˇ¾’_'ÝXùü&"\Â:ý$ÂØ2•‹ùþœ2°Ùý£b7à£ñ7ƒpž¯ÜÀ§ÎÊëÑ9¥ÛoF¨ßoQ·»…˺¡Fmâ¯Ö$y|%\Zn$ñ®Ô(î ×I.­gC:C5ãÔ^|Ä ü‚{*TbÞ*ÿšÎö2˜½3ãø4þH2KÚþ‰GTˆª1–4Ž ¡R(@ƒ€Ê”ük¹òÀK-„¯*ILK8†ŸÁ¢’Vt2”*Î0jEã8^€ @6Dˆ–8ÎÓ àÈ8à@—ËÌs#}À°€‚Xx€I3YŽ @¼88¤wáÆX‰´ kTÁÚà¤uN©ê9c0î¸‰à ˆ”…¾òÚÑöY™‰ ÂdQ6 €{曯Ç͘"ðÑÒD¸òí êÐ45ÀD&y< wO„‘ñÈŒ ( šœH]¯‰³ûÐVPòºp†5RT%¾Ø‚ƒ$'df£‚Â)0”E}wü3ÊÙ@hCA}‘F!€)0ãG 8Ty€é ›àÁH’ï¢ëyCE±«6¸í(Ìm ŒK‚B Œ"'™¤ˆ¥’>mÂFe(!lZ:† \?³k¡æÁ=6Û´èˆHOÜ93ÊRøœT‹e©»/P’knˆ†ÀXGÒZYÝ9Â1©h&‘²e`†„²8¢Ëf¦dؘúKÜÏŽíˆL´+¦Êã$ÓB¯©DÛCö¶‘ƒÅ”E[€&J\0ñL’¡\Æ"9,ÚÆW˜&Óù82ÂOŸ)Pâ0¸YçE‡´N¦BÌ2XzÍf´0­Ö@óY•rîA çAïñý g ëË 6’xLYß”Âá°D–mC.þ `MÈØ…£0d 2€"HG‘wð (_}NZ5‡Ÿå{Êâ Øc²ˆë|~”`¯áÌ cx«ÇðÀÄËßñd5õ]©"\º;.‰G¿Çï„L10QdL Ú¹DÀ³DÀì+”l0­Á¯ê‚9 k”q8CÚ8F#ˆFªÔslÛr×(¦ºǘ£Ö¹Dàâ~ôŠ$ÜgúQKMlŠX’ktSŒÍ·PE~$Ö貉$ÕÓE~$Öè÷šÙòmÿB)è;òŽy’øˆ§l94O?<¢wÐêOâ#¼˜£ž¼@#žÊ6}6ü£mP"ŽxrÁã©E;£»7’ŠwýÀŠ™|ü¢òèPAF¥úS¡ÝLòÛו;vä?*u;tÅL‹%Ä1*~¤v(^TØåëæ‰ÆJûŒÿ°Ñ’=º~·I•¯’Šq^"*Ñ ÑS„‡1áM«ú8‚GZ,ÛO>q^»`8ÈÖ¥1CÆ8^­0ä@œÂ ŸËì£sDZ?ÉÉö#>À±fŒ ñÛÅyÿ‘—Îð°‡eY†µ†±ƒÿ&MéGÔ*£-=/Ê´×ÒÞ „’ à`4«9’ÒîÓNcdÐÀšð0t‚%¢U¾ÂÚñäÄ4—‰€0ˆ"ŒÇn­XÓ@€Á‚ F€ Lâdî€PEäÀÇü&åâ…õ¤´L]ÍØÓ·¥y(òj˜áw‘9â%@M $:Õ¿KlÂZM÷ÂÊ9ˆGÃs9; ¬šYl·‚rT"AÇ À•!@Aè@, €Œ‚ Ú)ƒˆB†÷0š@àÀln²ÍDÃm™á(9Pä]ì¿lßÚ‚óò†02½€†>’·RèTp­±œÉhâ,¹›ÂU(®Ëὓ$CA$UÄ´³d;£2ÎcH !·!è5­qL¶fMçtÑ´y6ÓBäî³°ÆEaüùe#)†‡5rˆ]çp¼)Pª3•ä©P«4•Ã5ƒ…zX?:fO–ïäý¬=f³_€ï¿)‰À\'[¬ÄζÄÕŸ¨B¬ü@DãW{ë™ü·gý syó=v:nÿ«ƒã?ó”»øX²4PiD±ÝºŽ@@!FF§Å˜çHѱe„®á@`Í܇޽ ’„±n‘Çåà ‘ €o>ÑpÄ@xnä»pÄ;0BÀ&€n|3@à`TK±ÿØ[¢@êa5€Lë±ò †ËJ€9Ú?€BGJé´lœ´k)Á‘à ˜9’À$À‘kŠîä€iŒà™»™@¹ƒàØúReëøVÈÄôG}`‰x”HÀ½Ir˜€™ãøpà%íY g‡ïŒÓÆ5Ò&¶h–”K99ê‰4ÿ¨˜ouløimbŽCZ«¹k¼©Ô¸}G!­r§ :Ü£€ƪÅ› +4r×*7–ÓñLÀsûR¸­‘>¥ë~"o$è=A^bUº¼Ä«uy‰Vëx^q2¬QÏ&Þ|xG<ÛióåNÔ·ŽÑO 7Ÿ fdì;FÀÎ{ðŠs°jbwS²<–áNÖ[§k¸€ÝN×8@;_@ùS£®fÜ)–6ù" ež.ð ´0Ÿ³ÂùšMˆ¶\ßéM™ã?{”Áœ¶ôTúŒË¸±MãÈô¼­­°ï’áF3çV«Åñ×»pN'xÿ\«¨ƒaUOIÞ?úSϪÙüXšì´)€ Û®yÄÙÑÒðü"ïÃrÁqó™ÃÆb Á€Ä€¿Ç @ @ @üàMzH@$²$/ø‰`k$/Aü ™Ýhîä ÙhQ¢ÙD7ÏŠØý8qìþYI;2™ün;±|±îÔœeÜt©á–,ðÈß»ƒI¿W‰QU¨)ó|YöØã÷þ•˺/æõ˪‘˜…€y»Š æÜ¦=<»ê…•òЇþ¬Rœ¿@úT§A{EoÂQˆv¨¸7U´C O [æþzН‹aÛ¤òÑ}»„—Ýmó¢ òXѽëºÞž]õ}Aä|‹ÅÓ+Øã û¤ZÄçó‰0Q‘©ñ!ö':„©ç³CY¬úd¦îddħÿK;ã £Ó©¶BŠUGD¢ óÿA+>vhÑG dB ³+AOÆî-ØYyÂà᪔—Xò»hKaÞìr¡ à®&(>‚Xp‰€{†ÈßYÑ’Ë\K£tÐßHyžW‹D°v°qgdÕq»Œù(ŸÉŸøP/¯fî4I™oT[V5¶íœ”e '¦å»ÒBy³ ˆ@«ó¾³eÌhåjÖ™5A’ Úð&ðì èu³8½ˆ``-²ÖoW[bùɱËÍ^h7± ' QÐp’CV¨€¿ßG?¥[Ò– A”?ÿ¡4JâCbxfþ*\8î˜qù"aH…¢í#mº‘ ¶5 $â L.ï/‰.`)÷%J…qxˆa‰Ra…K&E`üè_z• †§ÁR¡îÉ <„ÏÈ“¯0Rá ™ÌÔ.LNá:ÝæÏÞè ÎjÄØs[ +:oë™ü8a!N˜™{D°$þ•0šÀ+S õ\ ê‚T¸D´âlq¶¶@ƒ#ý£⚨|·„NfÀ³,€rÂU\×=á#7ñ$€J'Æ~‘/€3»Ú%âS´ßU‰0ÆÄLÉÕä²N‘¹kší–ºyüFå®ó]£r×C[kñ&ÁN¦À#a‰£X£ÔÕMN7Ë­‚9 MUŠaºÀæ(ä5®TÃ|£óCTV^\ÕI8ø–Ò§š³¾ÑÏ&¦u‚L{G=½ößÚ ªÕ;À »‹xŽáLɵ?"Šy¶ÓçÊ™©¾p"˜ÈmÌÀÙnæ·S'iܰÙN•¼@n§aЈÝN§'”ÓáÕ‡R§a,J@Ø5`TÍÛŸJ`ÑŽÞûZæ'…>#Xguû.SeS¥ÊoåDÔû£ëX1SõÓ+˜ŽTÝv·cºŸQôjÕˆô}L\œDAŸº)ÿT#¼‹ÉTK ŸŽFR‘ I– I‹«¤p"÷ð „|•oÌçu‡ÔðoÁ`P!Ùã8‚GŽ 8$pÌú ûœùÒ$O~ýû÷K,\8$ aÿ«8^Š ¬ä_`†NYׄMej螇LˆØZ±%7mسÏê&y´î„óœl3Š ¡|ÃÀÏ I0´§ò<Ìÿ)TÅ~èÀÒ@¶ &ˆøÆ;'Œ€ÅY¾»«ü Ô?×èMø ‡Ï Ä·*c?# â#Oýú0ú…Te§¥ø@^ -Oƒå@¦tÿª8²{€~’ôbhZ­ÛeÔ‹cRßxÇÒ±ýT5Þ2RÜ?;?Þ¶½¹,òWÛ"my€?Iz14--뭜׫´ “Êþ.ò‰¹‚²¯ü!-,d $8lé¡Uié:f('òG\o  £#SçàµØœßmR=ë¶+%\À ‡”æ€y£‚lD¦§ \Nò—1V#imj~2gÔ cêt’«$CpHVàÑQ$Üþ&±ã©yùM%ú˜QøFu Oa}ÿM”’h(ž†¥#Þfô ÁHƒœ”!ñ«ÉÀ‚\Q¨‹£ƒ`:)[0™ ×£ƒÕ­ $¶ù"iì a.ùSEAÙ,lò0% ÑÞÖÀ"pñgI‘€-,ÓÆ ,3àKJ4Ý>aÆ)¦‡¥ã¥Â¾ó8ÓB¾~±Š— nÄ`6àÍJ…Q‘sp ¶òæ µòa,*Ï¡R¡Æró œ÷6è4±`¶'Sú´0'_Õ 9¬år¹ ‰¯@m~+Â;H¬ã™ôÈ$ðÀÌ:`ÂF›ø%;güY }{ÚôL1±1}œ•©ÐW•ntÉø{Ϫnf°÷.“íq%sYtG.‘ Èÿ Zu”ë@ñí2ÑߤQ/æQ†I‰:e  "Ž$Œ…éq«ƒàE»FhA³¡ü6#TßôßóÎS$ååÓзd5ô˜ž1®‘0ÄËÚ`beí014õj6 iñPüGeñ9W„nZéçñF&Á,¾¨DÚkJ3X'X{P‰´Ê°ìº&²ò¦áZrŠ945E¹.k? a¾·9¦&£’cHš©£puS¦4š ­&‚ið ©»O u1íNÏm^» ü)›Fó>Ê€÷52¢gÄT#+}SS%iÚu2 "yS£S'¢§s䑜õi7\§Sµú•0fe”Ëmc;ú€¦G}½• #Œâx‚Ÿá½”ÑMN—©·ÇˆU>È8Òj~ºûpÆlêloßèæJvº‹³7‰Ã'¾=Çñ ͆úò!QŒQbïú0q‰¥ÐvúRÜRwJ-’ª›£¥.èeƒW(œËÿ8P€bÓµ›bͱfسlY¶,Ûm‹6ÄàÏãilÝ”Ã"Z,Ûm‹6Å›bͱfسlY¶,ÛmŠ;vå8â “SLn;Æã±U~v5yQXàx*§úª©ØîÄDÏÔú^ñàF°þ³rš%Ði¬ ëHF~·ø)3Ù`RwüèĬX5N³kb4‚HuŒ"ýMJLE+DTÅÀ:ÁVˆ 8€ñ…Ÿ1DÊ h±f‚¶®«Zõ¥4×½þŸÄˆœþnÁ!ðÃHQþ¬Ìµõ  ËOKõ 4Çu» k(X´‚Ò£˜ï2uÁ<â™q¬( t“9H¢a&ë±h!‘Eì¹ªÍØ£+s– Uý¢°¢&jQ‰ƒío¸„B3²ÃG$÷ä' óÖ2B²0ð€†ôB¸1Q  tÈßZÍ‘$ (%Ã{­< ‘*Íp*8…F¦[*Åâ!†%`ÕÐðBj›º™©P¨j|ÓCˆè,·‡´N¦BÌ2Ah'©ßÚbp Öë çït0sZoºij«Ðœ~ n;Æã·ô@¸y¡ü8pL@L𘉟•hg`«*jÐÎÁVTÖ¹ºïCÏ*9¾Óul¼¡ÔI~8„Ä@#BùrK‰›‹}b¤ÍÑ^_üª¼ˆ”|}¨¢I™A>/S´ßU‹Ø=¢fIÍ8^Ë04áÀKÚr^kêzV➀—“ê®Od)ÓÄ›>ªqÛ¡X¨FóF½+'€aRS¦U€VZšçe0è+sÂ;.‰¬¼©˜øü‚™‡ŸØ+ MU‰ÌÏW•3 «Ê°ÊÓ”ã’yñà òž|c ¾¬*vç!!ÅÜNfUж¦×Ë™¶‚|ðTÍúLÚ{žŠ˜uèmjh­³ì)ÔÊ„ÜÉN:’Ü:§‹3:§‹3?R|–àEO­Æ$ð¦Ð»Ã›³St¾í”Ü./P}Vüf=b§Ëc¥/:Mø)ƒlTʾu)Ôÿ¢1´)˜èÿ£™:5xÄ[–Óc÷qƒ+íc­õ4K’o/ýhb  ÀD„2(”˜`€1“CççñnÞnÑÌbJJrëÿ?*s VsXK-&!étÁ"ŸS-'Ç´ÛÏ“oÖ'ÚbÁ¬|¦ ‚apØ& ‚apÛûvÕIvÔÄdLY12¬¡™ôè^; +:døEÑ„01D€( ¡9x3®À’V/ÏÖ‹#ÈIoÀ¨„µÁ±ž¨ñ®“{ÿØÐþb'ë©D>X³l(Dð‰ŽH¹SÁC \!dºà`«D‡É3Ëâ?L²ÏèRÝêÝ)`Ïྠ3,,n""žŸË˜Msy62Kâ€z+#ÜÃÆŒ%!>Ãþ¿ÂE32yçEµƒÌêÐá#B€ÿ ë…ˆê𙤌—vHÁÎ\Iƒ^#ÿµ”㌑YãfMø¬«`_ˆVi°C$ãÁh Z—C² é¥ÓŠó„3&éWDPZrÁ°ÜD¯D2Õ²À`÷qìÂà'á¨h!ã°â?•O#HDÚŽ¿oý,˜ƒ•Ï ÙH—ó×2¹Ÿ–b ¿˜†“%àð`ÈPƒZL.üÆæè¬"üúñazÔÌÍaô>ÇèR`ø˜ Ý`?Xì…è`*¯E°0¾¢Pcãß„€mQ@–oNŸxçÒu„xöˆ"ÉÈjj§ü8ZÁÎ>“<&&^Ó“NSx“ÅXðñ´Ý\xuöŸßÕÅeƒ[:ŸmÒ¶šÅ–ÃÙ²˜Ì­ýJtk¡„Ϋ.yp”-´ÍçïÛ 6¸æ¶@ƒ"?‡"D„yŽQšû>¥ApBËRs"Ià‚¾  I›¢¦­üÓHˆ”jÿÔHÏd@bnD“5b7LDÏÊr&^™ sPN@KÍV€×Õx×׿Õd5õïkÓÐOñ=§S‰•‚­©&œÚeX+-ú¯ªqÐW*ËS\þ©ÇA\«ÄýóÃ|UÊØj¯a®vNf|T1Šyñ€ÊÝûÁ ; ­?rS±à ~MNÆ: à©Ï™ÊÁÅ;}lz53ã¦]М¯ð¦o|à6ð¦ÃiúSw²rA†[©~Ä^¦û°Kr§S·nTú”N®Ã>¢"r$°Së}O ljNû›”ßʃ mSc~ÇÉô§ëq¦†Ën7Ýê9ì¦õ«Ï^ÈÖ˜ñqLÖ¡…æaLÿw˜²jeO£ÁÝ^¾àq¸Ñ¿ý‹sŠ‚2]_ØFÐÿ!*ê ØUSÒvt¡FÞDGà!ä%…Ý“©ï €XK°%glO¨ã™#—é"³t?óÛ0´e(1’ ~‹ú¸ã‡žÄ&ô`a -d>?Œ™(PA¦ìoàD’þЍ_×FÚµjbBþiW…»4 î“(æÅƒXùþ0ä&Öƒ#’PƒI’ÏØIº¶£Ä2S€ ˜–bDx¸ útDªãƒpA¡¯ÿ"ãt0<ßë OÌDµu(‡Ë0Pü‚6ã• 0Íô aŒ€}Bª2ÓÒþú…Te§¥û÷”òÐØ”P@ qÒ¦1Sðؘg ¡„K–YjüYµˆA5á (Ü*FšÎ/àpZ2áçýðE™`¡`ƪŽrÒ¿ÄñB†Ã2ྠM"¡ŒˆÕyŠ:±éûçs懲ÖO,îð¶»k‘$Z¬!h;ºF-"@0 ?ü7õÚ×gwÿþäÿŒ€áÂXψ„ BA;]íóФrfðLPÃd²`ÁŠa€Jâz L·8ÈÜ„*q34[I ò¶ãx´¢€Lã-%“aˆ/pѵTÉ‚J…DÃf\×à=¢ |‡ÃÆEÐ@¼hKñ®j‹ˆå¹F3ƒ$ÔÚúÚ5¢—H^q"€C ¡ìËØX/‰€Ð~¬ÄÊ·Z‡ŠÅ ÐÀSyA°9¾¥Âl9­Ð9ÿLí<ÿ°&äK’oVCTÊݘÐÎ@ x ɇ3&έ-‘õ< ©©÷Ún­‚ŸZoÊ£çä;5•«g`ÀW*nÿIå¿V/Rð*÷º÷µŠty­Ø²Ÿyû2ð=aéŸh±â¶@m…`œS‘"BbÓ¬|£r“È@$m··L„ó:ÙkqÁ 09ù‡jjÐDáE¯Hk†5d‰àÛd‚{Z‰™@sñΖ¢ÈQ>3ô¢QW{N@KÏÅb7õÝ÷Ærj~º¹5;MßU××½¯O@ ›þóÜ+ñN6Ø*·VV™Ö558Ø 1¯++Lò®'`–'ïÕ‰<«Œ štûá1žu æ¯-‰Ê¼' rK)„d2¾Ï„…;aÙŸ9)Øð¿&§cÀüšžöÄå`«±SŸ3ƒªtpÔÏŽBŸP_íMÞø™  fÚ Õ¡M¨™Y`ÒÅ µaeñ¾Å>°ú”´&Õ>¥~fÜúÂ7¹ŠŸÇ 1Üö¦×[y±M¨½ÙøSkƒ‡•=üfòÔí’ï„jpËu6Ìt;©•èa˜ toúÜb¦kîDár­(ôx;¯!íߨö E•»Ü““›ÿK_뀥/úæt†÷ÝÒím"ʲÑþ𸄻Vƽ"|Ãø%Ñ@oèÿ£éqJîj¶"E²ìY‘‡&„A‚Aƒ!”HŒB@C ‚€¹ÃĘ`ïä{@H!0ý@€žU³½~¨yˆXÐg¨¼Ëå_ãÕOzWªªý#þÈQJ²\„Î?!ã] Ä8·[›ðéܵä1KÿN. öxѽ˻{Æ7÷ÿâã˜ÂËðŸé§Ð(ò_®"3z7¶ºHvÆF¦H™¢q/0÷¯éE32y *©ÇhËöT é^ª«¨ê{Ò½UV7/Æ[F¤%loWò–4D¦RŸÐ!;;Ò­-½ ÆëtÑ\:OŽ‘ˆ0§Ú¤3œp}¹ÿ˜Ë›Wù䉚'É4N#%æõþr)™“ÉŒnecÆy¿£1ˆ@”×dx¯ÖË7¨ú[Õž+õ²Íú3„ MvA)OZ!«Š™‘ÿd(¥Y¿N‚¡•ø)ì©Q‹x«ÿH×K>Vð!fÇUërõžJ¸G½q˜ÃÃ<–/31±¾}™ë)çÀs¨ A‘1ug£.„à@/ÓOY;¡sÙìFŽd…#ÓÀ3С¹óUbw¾H†)W*†¤Â½)€ü “É?áÑiZÝ©L hÚD5`†,,”Ž“t0ْŃAd9aÆé¶Éêê‰ãÓc¹ aUn1pPïâT!É øÀ<"`‡²Ñ;"Ÿ r¼"›C‘¥àà8|8)$<ª·FШ¹B9•ff\q&5*݈@6'«„]9ïÜ‹¬] (®`‰Â @8 ƒ°*ݶ8 sÂp¬öÈÇ?^Ý2ÒU©–“ãÚmçH¶"8Wäà×ø®ÿ‡ $<©™à Ä8‚œ™ÂC‡Õ‚¢V“`v…ÍÌй*™EÓ€ËmFs ¢}®‘ГÀ2,Úóò¦Áb‡Ú¸)±žçЬ-` ó¡7ö=Ÿ©Ñ¯xHh§Æ«AͽùÙö do¶­·ZKþ>ZAÛ+d×dBsyÝbxG>÷b)À î[æ(‰x’ÂX\“™&Õ.½…5háñšv\$‚gKQ;!Uz$“ì¢fPüD&åhM`ˆeç?IÈ Zoùç)±;Mß|g& 'â«3ñö³c?k6 'i»ïŒå8Yiʪч5e»«s ®4Lð¯+k±ýñªÞ3Ê ¶Ä±5íL¼Ï\+]ºÀ.›\×+q8 ªÌÓŒ¹%”݇»)”í‡f|ä§cÀüšŸ{æ*~ç+v§ï©Ðc,”ýµ´ß÷56 =™l¦ßÙ–ÃÒ jÙ•êlm¶Á †jNç'u6£fÃu?Ù rY”øÕ™0sbŸø.½M¯³`2š›Zß':…27ÓxIõs[—+ñÜà¦Wº!Nñ·³‘õ:58^Æ6À©µ·[AOÿ¢ñx°ó:2ÄpmÈä¯{ÁÁÚÙƒrÁaþ•ƒ™¯÷( ÀÙ¿‹v5éNr ææ(Üדý8 ‰Ì„yŒú†ÚÀIú7† (íãÕ䎪ªí5âŸûÍ$ý`l¾ABVý±þô5¨ Oèpn4„o8ÿ¸˜\¬h€ÐâM®”áY¯ãÌòÊ‘o‡­1NósíâYV¸Jˆ1’ \%$0ãŒ~ÜúL»*ä0G lÈ6ÙWOIh +aÒh—ÎÊÓõ®"0<ÁÍ0žšù¦1RDâwü›Óo×þ['û6m™!/àŸ £Ñ£%¼bP ,·¤ƒ Á`Ó ƒ »ÝÒ€Y‹ø ‰m)ÎÊWO˜qŠ“*d¥ÂU«ýp¥Bê•òáä°iµñ GÁ8fEÅâr ‚˜ ÊßÀƒŠ"à,$À1XK$›"Zì‘ÉðLÎB"Ä€BHC¦CŒøµÓŽ$|FÎÜÅ5Þ\°ÐT' Ä Xˆ©NÁ.æi‹çAïñÀØÔùBñÛßÄHQ™iX¤‰rNÙ& 'né@Iû¤æd7-*zpw‘ÈœºäD€l&*Rö,ÓX˜ '9ÒQ¦VY™Š x Âúƒˆ&5à¾L,°gyÂŒØï ߆'G–‡C“ºë)˜^§ÇN¾ \©‘¯Ý!TÈù²£È’Ÿ/ü—LÌ1£±²4H9 6‚9NZ5‡” ° bÓ¬|£/VHúfaƪî)X3½‘&k8ÚxMšdyH«@ü>#nÍ' D@[Uz'd<úòˆ ˜îQ3(~"SV„¢@yÏÒ±úÁXýW2fQ>3ÆŠc?k63ñö³ží5mNSÀ•¦¬©Mì‡5b·: äüXÑ3¼h­ìƼ)ÂÓ<q¢·°K\)‚Ó3TÊ×@;¬›‡&»S3•Õ‚Ñ~v®`Là_Wà¡›¢åi®”ûFp£¬"§îr°Wj~ç¡R‚ŸQU|ÅË•Íg‚Ï,àåûç´6b!ƒ4e ,Bh€,A´ÊWæS4i,—y8# Âpû†Q>†%. <§¬Ããd~“¹®ÑuàÚÒb8C{.ý¢P\Ø·˜s½è!Â0Æê1Ae_º–F„­€! ¿ò§áðh»†úYƒ%ߌIn×=bë…lA ƒ±ôÎ`h`{ ±pÖN‰a²JÙ ©Ó-:ÖE…ÅŽ¢" — ûô1‚‘¾¿@š“ T÷&ì¹øú˜{Õ‰Ð"p¦ôE‹ŽJÚ)(ž'vÝÃYiŒPc`1$°,‰ís€1à2® +¯L ƶ™ —ƒÝ-šÃ1¡Š&… g˜àÙ=È gò†gÓ¦ZOkÊapØ',<'à˜WC_UÒd3‚\››9—X¬ ’¤"¸”dSïn!*Û xÒH8ªeA_÷x fPDƒé/H†‚9¯ˆ`žè´y4­q-¦¿t˜XÖÔç‰:MO=÷›2;_÷sk25fÙ•67[ö¤ö)Ѷ®©4‹/Xnùã'–¤>AÕüm€VnhëÚÎN±è„¶B53"nû£q¼¹ú€þ)OHô¢VÑ&À`ÂÛê"1ËÚ&e ¿Ó"eÎè‘ÀTÑ(øûQV„¢°Té“®õ ¦¿¯©˜ êºfvšµOvš¶§' %i¿çœ§:0ÕX­Ì„…[W«{L…Ã×Ôá¹®i­öµ;<”Àñ´õY.ÖÇò¦Çj¬[¦}[’Ù›êÌÔÝÎwU·2šç•Õ˧^ÇàWj~GggÚžù–à~à§¾g;? }½“•ÞŸØù/WÞ¦Ù.Ôã‚›Qø=)·um¶˜ ›f[ ÔÚ€•–”Û}¾–¶Å”ú36á>ŸôÈà§Sþ˜ÂÀ¦Ç]íÜÇ©õL.´©•3†@©‘­päÞ§E§~2c™Ð)Ñó‹÷³67ÔçÒ›­Y•±Ú§ÇíLJ.1«>](«åõìjØÕXp ¹¯¿™„I"LÉãÔ1ØN”úŠ9)ˆ’I˜ÒÈ„±$ðÝ/g­ W1ZÛÍÚ™ƒvíì'[Ïü*O–¹¸;šUUEEОyÚ¢¾èè/äþË{áð?…]f™Tz x°¿©¿GEhó)fÇAÿØQƒñKüa]cIG" ïÅ…‚l0œ-Â1‚yyÂÎ31½ *Lö°M ̰Áð‘±ç ¢ÉÀÁfO+¥™Ž¡Ž$0 ˆØßdƒ’lÞ ²uå¼3åñг‰hœ&‚\\`1™5Ú |BÍïD$la+ˆ¡³€ƒ‘;‰ pž!ˆn™ÂÎѼÞöa/cMþÛëÿÿ"3ˆá¼nóÿÌŸÁº‰D³ïÀ†h3=®í Üö4¢o!…æ– à€€˜`zdÃà ³ÙHжÈb“ üºÌB— V¯ôE‘ ¶¤÷"r+ŒÔ¶C<å«`šhW›L§i*L*œ0Ý2Ыð̼P®ÏéÚ‚&%  d“M"€#i½ÚO h ˆ` !”`A (ƒŒÇ 1¾zþ„FrG DmfS_ ÙæžwH8¬±&Ù¦LHrE•°ùñý5®?‡‹X<¦ 'ãê{çÃ*Cdj($1¢„!®¹X¡Œ‘8ÐÇä´"„ T>÷aãjÝ¡‚'°•l˜€o_Pßf¬@OΡ0DŽñ?Lœ`Sã¥xÉOU² j™¨ßScVW)ñ²¯ûŒ„èçqx€™¯ÈŠ“\So§¿]1Lý{æöI ß l,v@Xæ…á·¯«9cp}!C6Ãw"vˆAëƒ*­€Dø¹ô ‡ðã(/,$FÀùפH̰ØVhˆ”|"ÚXVü£wsëÞÈ"q52¯KëØ*~“®õ ®L-5,Õˆ0´×•< ZjÊ”æÅ…¸ÕߊÜÈHUµz·: äü }犰QŸZo®|ÛÚe€®PãL›ë’·ìWœ,-Ä÷EbÄÏU^‘î°Íj݉®ïSß\MÕ-÷Ìô]£ÆRsШÉOÎéÅÆÖà®ãv&ý*k¼ËøýSòãéô§ÔlTB›®9šÍM¬„õ#P¦kv§YjfxT3 å’ÁÎl§Óx·©Ôß‚0´©Ñùø.´ÅL­!´¯S#WÝ8äʇæ3*do—ÇÄèêêÆ¡S««…Mú}D)ñÏ×DµÅNu¤sS#ߣP¯UÛ_=Ô(«N\'ñ8ÆPÛ±üDAˆª9ëFÐÿ H`ÔïUYLJa,<·k,3®¸V—9€OéûDØd=)ùÄb‘,üÑ.X ìÏWØÇѱÜ<ª\Ñ=)ÍœÁä¡`Ë8×9AK¥Qœ\f]ûÁ¼ ¤[ö'”#h0¼ñ«zº,z°êP”Mëd`H`òI¡ƒ:,BYVÉ uBÒÈÑCq :Àò‰/ã°‰.Ù‡`5s„Zx›ÌìTò#<1¬ôñ‡Ê²&D^–n}áü&$bø’¬!Ç#Ã`h<‘ÿ8ž:±Œž´XåºI/guÔ*F€° @ö„@‘Ø‚õ²bÆDj ¶ÈÐÀ$ áa–êL*û|\X\Yßaˆˆ*\+Ñú#"oΙ,m<Æò›²ŸF•°ÀÍH…qu¬#%&V:°c%‡Yë °¡ÅšœÌ — ÄtSzC•†0,ƒ\h³Ž˜k‚à§3€LãR¤C ANHp1ÔŸšH(„(™Ž÷KÀÀ3n¶éØÉ„=í·y¡ˆà`g¢ÌÒÅDŠp\‚$Eè"?’\“¶I€Öž1ô‰ gÁpI’‘Ðà€y ^^(—†T¬VF8A(9äVÁÔ@hÑ€»³²bp{)€rX_~TèbÂ_¾†¨- þXÝÌ„:•ÉŒ€åË À°,P, +p‰ D9Ô'Ƽg`µÊ™ü CŒm㚌f'Fý«§qÇž³§bšxìõõ¯(Aû{‚ ag‡ª„{bØ\\iÇ^ 63Vô…ó§Zk'(èà·( äÄɉ`s€x(Ž®®jL¿ÀŹRNÈs[+Âø|³Â7FõíÒ矜"gVþ"ÙG>«Òæê’µ'!^U©€ºÿe;€óWîÍ\¯`<ç^ü‚Ó÷¿ÐWŸÅ¿â¾œ_p -7üÆÜ§o`¼×MOŒm7W¥‚ó}vÈ®o37ñšÃ7s‰»~rSc<{W3°vkvW: Íõí[±6(ÅOûßÛ…óÀ_MŸfvg_ -uƒ]9Sé̓!Ÿ€§Æÿ¦oz›Y s;ÉLÿL.³p¦xð;>Ô̱¨ž&ËOn;†U_úua%:ŸôÆ:5Q/‚™üºÒ¦Vd Sc\g!NÖ¥cqŠ]XÔ)—®°Õ±X·ü¿LZ§ÆU‰Œ”ÈÕhD TÈל­W§œ1àƪñ'ßV<Á…i«ÿ´'JC°È—°È’!ñqÇB $ldy*vžBêéGD «°9WŸø‚Ò_Z)Û>Q8Àáç/Ææ6ï ’„Ø“j9! …‘ðÍ`ƒb€¥]lA’d§é€S[+­f7¦Šäù‚à}×dáhÑ“¡¡ш¸æ-[n<{@/"°( […H§Òýà!€Fæc"ñ9€¥¡B  „tB°Ç0˜AHƒ¼ÊOÀN<Ð "T@À¼Ó™o²ÖÍ“+”zR#X@*B-Áq(miEä{Ì[ÕI»œIF5œ^ÿÿS²?Ù³lÌy „üVµ¤Œ×±„@†fkšiúPK–ƒ;hDXƒÂ müÒI–,™‰ /FWütÓCù}@RaÅC#,B•êþB“ ûµ¡ŒˆTîß‘jàNo¡9…*sœŒ£Š“ U3˜Íañ×eâ Ô|X¥Ãq‡Ùù¡1‡“-½Ø°:Ù,Q˜ Ás& îŒ`ƒ bHs3  ‘ HÈ‚Aˆ$SŒž¨`*[8‚ü‡ú2½ƒ€ï#“ë †y°ktÏX… ‘²á@Û4À$ !ˆ0"Æbù +¦R`£r!É0;oüY }Whzk‰„E¤“ SØb8¬„Ð$EäU¾éßk[½~ƒ6‚LDIh7“1Í‘ MNË=šÊ(nì%â:°‰@ù,º­¹¨B ñÂãHp"Í@£åÂR@Á;’áªBà$¸0Œ\–Scy³*´`S£gš¥3>9Õhg2<µ}y§ø5\Ú\™x7¶^ö£¤4S¦ŒU‹²ÊNÀ6Ô kõ Ão_PȬ?@ùXÜœ÷;Gæ ,GÊí ©·0)¡€CÀ<ØHo?T™zþ ''m‰;C!4FÈñ["ÚXV§$FÈâkÒ½:oggt[ /©TQ»ºŠm·³V)¼`=ÕÊ|å°·SFO}|€+µ?>l°Sã|q´ä*j|oÚÓ™¨…3ÇÙý doúau›…2²Ô·µ27Ý®æ^ÔèÕ» Zê]saSª®TêÂ\ K©Õ¶zÀ)‘¼×’å3*¿)MÔøßSí'×XqŠŸee†­Š›¾½c_X ØäT#ðüÌHàTÈß÷èÔ+×íøµâ0ˆWËèýŠvlgóÇöÁ¸pt‚aá¿oŽ ê\)OV}JvžBgqÀû»Ú32`øÇþÎ{*6ÚY)áu´©É¢ (bÀÀH ´j œ(¶Í­±$J,7qY2@!埼Š¡¥næX„;!ï¡DcJ‚vˆ×œ9ôŸ"sÛÖ(Q…š÷×.ôAÁ³¾véRA@"I0p9hŬ2?ÀÞø‚»Ø»" £°¸†qgº1 Œ'€“–fþ»b§Â4ÒȹÉ9˜Z›­G¸á£Ú^fJ’FIÁÙÑ¢Z –¤Ay,^*·Ÿ†âÿàTfÙy·ñõ£›"JqzìlØ­?vÉG[qyP„ ¯ƒ&³zRºivð„8—™Y ÕaOéŒÂÃâû¾f- DÛá=2)¶†|Õ‰.À¬yžËÉ}-àFK³ÖAJ‡«,™ÖaG(ü§X-€‰ßõ1‡'ՀؙûðÍYúà+hú©“0.H+œÂ$Ld 0G¼ƒoéß'bF@pÅ.ÁºÉ# !Q¼A:@«@F„d[_6PÆðq$˜2YÁ­uºä@˜4@áÁÃP•*‘耰`< D8L1±Ý.ÎDP$ „0Y‘ÊXó£ZÆBL% _ÅB&B±ã-Öcn'›Ðèt $< –¤ ŒMHž~ÃÆÉË<Ü-AÇäþàfÈ  ¦x‡S°Ê¢´-‘"‹@©Cy–;6K=s©Sñ#>6ü®¤§FXçPÑ‹„ÃÇ–"Ÿ- q‹ë÷-Åɇí÷ZÄÛæ¶Dóá€4aÌs—åþ ’Æ4öC…_B^šÍµÅn…ɯúŸpL´>–r§Fó1á 0HÀéË"5èI›¢¤ËÒ[¸6Lüa±Ï²'€oâ#‰5oê'x­ôÈ‘Ä×¥z_’¶ÕáU5 /©+ÍyW17ú¾¦®boõ}MMmMySØÂÓ_¯Ìû&¿VÝ‚úãÎÿŠúqŸZo®|ïØ.®|LŽfüp‹­‚á}tÊm£É¯qS#™»\­žÁy­ÙjÜö›Ílëû>ªå>f1ÄÝ© Æøãèmº;òOOíiCa~gO} ®»3PS/ò} ŠÆ×ɾ6{S*6Î8©‘¿kw2è©‘ýø9›©Õ—³åB1ÓS¬æ›’d§VÙi§V ¥ÔØÖQÎÈ-Sc\ÏË›ØßV~²ŸÂ;$ØßSÙ&Fý4ŸÇ¹NûûÀÀê‡Õ_ …Vñòl`Y_;ZÅ ÕõúD’$Ì—þØ6€ÿø ÕCsì8-üèø ‚iBf@xrP:pÉs>ռݣryøI†¡XÃwZC|œ7y€"Lê ¡Ò#. ·*¿0á=lŒ0ðpͪn ÑÐÖ-Bc›Û|óöòB—ˆ7¦´¸µp8°ï”C,F$úŸ„8¸jFr“ï(§˜±gÉ´õuÖ™…а8 XhÀ!| xX‹Q¯ß)ôTm¤Ž „T0@Ö=˜VD ,&! ^Z(À¢ &;½²‚$ue06»xOW’"rhùé=ˆ-Áž9¡qc¹6Ë;]‘HË‘áB\D'øá$a2A§›ÜܱrwîPX'úP’-P lRñ€«–ð@B;TŽõ(V;xR¹´£i€PÀ`ý¥Q“¦Ñ‰ñˆK,:Z°Db†}@# ah}"‚0fàjÀúèHE ?s8抋c~ã+,x£^Úë}ñ—¶¿N³ÅNë`‡£OÄìa’°ÒU(n¤C(PÌØ°ø?§X,)`çi!a"wب2…Àe3Y­rkUp?{AÄÖŒãÒu§¿K8æ}2*ðŸ‹@yG=A£láñ'<13{Á2 ."1RäÁÝð³#°7¦Áy0•ï)ÂÏj!0 )¾'@¼ >·8~}“Eç°†X$·ÐÔ†hGp1¬$0†iÀ0 àTá-zpÃúS|‘¦b ÷k0—)À9ap·ALœ –C¶Ïòûû`Èñƒý1ŒBH„H;æÙ£ãhì†Í‚ ˆÑä †éÅ‘£ wQÑ69eˆ®G‹T4´ `ÜTrÒðƒµÿ%¦¨^ã¶ç(3Ãtã{: $Ä/šL28ÍÍb?Y¾Ð§óï§©QIp¸qLÜ x@>ˆ×(`kN†Äò€^E`†¬üÅg-º!5Nw<#!GˆîHŽ8/8&nŠ“/_ÀciZûu dG´BòkqçŸHäš·Ó¬@Àc75çdÜÕ¾/|¾yW‡A^qW…°Ö€W……ÂuÄ•ñÐOUòÌëEŒþn±£i³Õm:îM~²ùÍvTÈæm8 âvÛ ³¨ø™ͧ…Ib‡Ú¸* ž' ¶"ý›†)ÌŽÞgjĬ3ç…ŒÝ|ð¡ß .ÌÕŠu½à0š3¢õ<…X…ÕùÝo*ui™·Ô¦Äp#~BËÎêdy4ö°êlECa!y½L—ç©1¾Ùßöáz Š";Ùu‘SãîÖ{ñ›˜!Æ9GÇ9› ƒ‹m€-'*lj¬k‚ c[ˆtæÐ§GÅ rsrÛä%¢1uŸ$\‡Ùsë"V(‘Ú¿<Šc͵ m ‡2Ûx· ÅÌ€"ÿ|›ãìÿEÿ툟Ûrúë;û´¸ÿtð[ ¢ùÊp@ÁâJì|ƒ^8`—(Ï¢¢²&GèúŒ¹xÿ†±ÀöÿžÀy|9þ›Íü†Ý1˜€Ý\ÿ¨¡`(@$ÓolpÀCˆ}–Oº$0˜™6}ÀjéÖ1¿ŠÊÆd4à¿7ÂçÉ<Œƒ€@†!š§ Šw4§õ({ͦší=<ˆ5Ù½3„¿ú%RþJI)#2E"á>¹ßø]<6¼gnmôœ ýgiãRaƒ‡{£Ì¤Bd›€“ÉÈäM¥d…e7hŒ"/øÅJÐHDŽ£‡þ¸ç|EÈ÷PnH ÄåÉõäæ:s˜1åŸD0:Ä­†¾ Úl` sŸI¶/{„ÃCMäpP¥X݆2*\*ê– ¨B~Ùš*D(~^$¥B¨ÎW’¤B°l Œ1+³wŽ+q¤¶rsXU‰ÒCE…кvùÍI‡CíA`>P¨!{a♸\怉ÇÂá°ô°¹ ÷Ž}"+Ž_Á`‰·2$ºXä@ÞB 1YÁy‚ìA ™+$òÀáXꈥäp …€³LìºV€k[cT¬~¤!x9H0:ô/U‰!ô´ü#C„e“ œ¨ !“O¶ó9Äà.ŸÔHú½ 9&7I½UèKÈÝ•Þršv,#¨k.ü{Ó€PY!À¢H€/ N `ÉÑg´Â©Ämq ‹¤¬<Ã1²ýpù`S£maO‰ñ¬js°¨=ßXÊn†5§>¼Jeã}§ˆÆ,4L¾fŒØ4yAàÄ!.|z!4$$%j6;ò§"ˆ€@†ª!Ä–â*üB8ôPÌ+ ðmÅ«â2 ‡éõ¼Á:Ñ×µCÇlã<›6i_pò“‡¼M J ‚ ÄA æ ¤ÍÑ^ãø\–YÝ#pnæFϑ݃_Uá¾Ä;Fä15íx¬ƒ+à­c¢¼-€™\´5€WÛYEL‹ í5º¸,/¿*u¤95úVÕ‚Ó6ª66 u´èænËæ‹k“US#™»\¯ÊÒq®”ÈænÀW+à;5ÙZŸCòǘçèW.ØÐöwáh7ænË] r›Íg;#Íø›Õ÷ú§SŸCŠ˜_-ÀB™ïŒÍ¸^Èú‡Bò¦{¨›p¾jdy;é!éÕ.…¸Øøï¿Ó uÇyþÛ›SãìY ¤%*l}U–À¦Æ¬?‚à¦×y*t|üÃV¹N_£iŠ™"Êà™27â=Ñ0øÉíñXÍ›êáí¯—Õ¬%xÉ_¬6ã{'+Ü} ?¹.Ô£=‹%‚ ?þB0ÞšÁÙ¢ k0X¤ˆb"Ì„_†É€$“¥k”L4'e;Ûµlóg–ÿ uÆ9+ º 6]M¿óG'à _|4kD,›~årA!GK>€BÅcëwŠÖ¡š b$uË?‚/¡ðøÙ0q»´ÁtDK<§Ò±^1ÃJ\ó 2ãÕ2/ý…¸=¢aO‰…«åB’I®8‚$ÞüG{glIBIŒFµ" §+Ê:u¿ë¼†Ž Ý=‚³Ôa7ÒÈA«‡5‰íOuÁe&É'|Ù™š]ì!ºÖ̆A /4µˆÝÇ`¸F"¯<)Pà}”6)–¹\z)¦‡Éì``T¸hÛŠŽa0вádEJãbƒ+nùÚZjǘÊó’Áë_×0’Á¬¦u°Éa{¶ÙÖ×̬à4â°_-­åjx×éBñÚºE°0¾¢P¼v@€þ‘ˆ7ôá“GD1FI †C1`%°`db2‚$À À]ƒ`bà(æÍ' ’ 4©Äf-:Æxè€ €½úØø’7q`FðÆETL{7„KDp⌢®„Ș±  º LÔÐ@%ß…e‚èÚa¥´ñ²HIºg°µõ9§Qr.+€P ìk„;L‹!œ’ð# y±¿Íe¹4ñ¡R†…žluª¶ÂÈò×ÙV‹“@â¿{,òé§’œ†|BÉ´Nx鉙·*"á‘_’ªŸ`¡jp@±¸rq¨k…J·ŠŸ)ˆØVËCùº¸ðuüX­¨n¼6º±CûàÖ '?1­SJã¶x…U ¸ €‰rcå¢Mq˜Å - ‘  B1<~¢ˆfØ}þ.µíáž]¼ûD®:Þ/€¦Fã M{@¼“Åd˜µ°÷à#róMåLmÏŸÝ•ÄMöVPZ‡Xnµ°Ýb9¾ÁX)‘s}‚¶S£©žšj´‡&¿f¾BìëgS£™»/šE|‡f»*tuèWµùX15åÔÌw>‡[)‘Ì݀Ʀ´Œs7e¯À&»*ƒn' Ê|w·p £yÇ<°Piãó‰¬'x=ÐS£WÆÁf[bûgŽTÌíámçu3^{< ÔØŠ·¡~*}KÕ·›úÇékaÇßíø°u>žÏ–ÁÊ›·Œ-ScïõñžJdzûwÕ:>M[ÍáLóÏŸÑhScÍkf„©ñà EnÚß¡Œ=çÅY¡œÈÔ)Ó œ\eÄIŒïî£hÿ€—jQžÅ’ÁöÏÝYÁì&ªA¸ v`‚M) iåZ 8 B` À™K§€G \ œÇþÔ˜<“ ?ãìPÀi]T1uóŠI®¥(!A¦r«,@³JBï}X!U¥ˆc™®M™£J!&9Èä’rYxjñ fÊXpðä„8wEKÒ-Úƒe˜“aöL–RÃáùxAVWç» X0ÚäÑ7æÙúÿª°JóLß ½Ë ™÷as€d DF3¦@/Ú-a õÂÐlŒÇ Lh5ÀžÂi¢²Á—GtÓCêìM41•EÞ6Їž$`Ä0Ыª6D)»ŠÉ%¡©BŽM¬„mš“ òoƒ‡â í8¬/VÛ3ÒÀÜ0Ðkj½ÜÏAgœU«jtï•€çŠÍ ÐÀW´H>3ü@íaÉ­So+ “í`FÉÝònrò‰`ôPæ %€à À!D› 9ey0 bÐHð"A`ˆ!)ʵêvt_X¬‰þ¥ †ÏßÐWŸ $DÄUÆ´&:cV !+íÒ½¡ˆn±ÌI`2x½˜s±”S8 HÊbÕP=R"Þ¢Lä•Ðù¦ó”ƒˆL ü¬øÛ}ÚŠºJteTÜ^9¬¢Û;2~EÉ·íö›Ëæpþ_Aº´JvfånÎ â+”˜ K¼66ê‰ |š0ˆÇ"òÉJÃWÓq_;mýX¯n±[îíFH2ñÈ­A”DÇÝ–.”Žå^2¡Ú·¿¨:Àr?¨¼(!«Ÿa–òîD@´G S8H*%Fáïø\Çü!8€!3 ”p´øåÇ:(´Mdˆbs§X€¯%Œ15í9y7™VX…•“«Ã ïlN òÖ‹òÖ‹òñÐZÆá!l±ŸÀª*tuõYù7þä,øÅ÷Ï©›0ñìé‚›ñø9;©±o?§º›BNêmöm¸IÔþ¶~†ä©ñª”œÆ*|ië3dÌ}Ù~$›ø×™G&©‘¶¡)ßnL>©±IÑêÓXDØèÅzÄËÄÖUeOñªÐÂtsÄ_Z³:¼_}•쩱¾ÜjÝB‡øïfï‰G(ÀÆ!¸þîªs2¤~ν`â©ôbrKŽ%¤k,ÀvMFOdÀ€…¼Ý¢`M"T¹_ð¾îÏoú®Cøeh||"wCî9 ,adÎ ²ÓøÐš°G*ßkÀ‚!«Çœ!†÷·I~E5C.‡@d€œ‚Å -0À<šUÅc0%É+€Xbd À€<Ÿþ}qËRÌ'?ŠCÝ–¹Û$$ @ƒAšâ‚0o`:& øŽM²d\DZàb¸F"¯<)pºÁ§[YnŸOx¬.+c‘±K¦yY„êD(Ô#‘2M´(µ2J…sˆDä°+œ&ç°k_&臯ٙYj•3÷˜TÌü¨&pÎ'âÀlLê8 \Iâ³@ía[ +:d°À,.Gµãú Ë^‰`NÙ¬ÐoÝ’V„€’@£žQ¢;¤Èt°ª‰^Ç!$È w† AC»@àÈ¢ç :'¸r\B`ëß²V@•™rPlV±W31k¶X… • ú~þ¡"‘&‰0 °\æÈǺ®#‚SÖG…òóqòÍp` i©€@ XKL’KІc`«jù!Æ?+ÆØí±üÒå>;=ôصåLìþŽ9èQíÈ!€^ðœ£jqˆÆ"0©¨0d•tlHáBÌÉ µ¬|~S_`¬é‹¼´9h¬x={+Ó¡÷Y,VÀÄ|áb‘”Ftë Ê"cî˘ý(2ñ‘üC9†ô†r?«=5U7Å·¯eð›<´a,–Á—aÂÁ&Ë7”d|ÌxÁFDÒµ÷#4@óZ#Œœ¡éXgñb”½kÅ rkE©‰¯Kð­Õƒè;>|,VÀN¶Xäú¨¦0ò}TS¶uø±´~/°g[:lVê|u´åWIYqcm9aµÐYYX3ÅLÇsèV Q!–5–&öbq5Œøïn&à,&Æ{ŸB°Sã÷…æŒøýÀ`-4gÔ­ÈX-ñ‹ïôñÊÅÐxötÁM_•ÂÓÄÚ1ìÛp”TØ×¡eæ1Sc}N{ø×ÞŠ}V§G*ñh‰* Yñjòp7¹S#YOæ%N‰· i÷°)ñ½dTØ* ¼Ö-Uâòããæ–…28z•]r¿SUšÆû»–®g$R 'þ¿½'Ù(Iÿ³íã@²Ž$©¶^ôŒjYÆÛ€~4åäª1FóÄîþÎpÒÛW(@@†Ë+а’²OœºÆj!0€Š©0 FÜ ! gX!‡&0Qpba&$fÂÀbKð`mÿƒ† ü .™A•¯7ˆÖïê×7PΞiD¦0ÈA–¨@./Â- Šé õØÃÁP„Ssl|::~Þt ¦Z…š^âÕ*®Ü˜ ùô©Pü‡ÃbÖåÓâ°+‹­a&äß Ä:ÁÊ„!ÝòóXŸCDÏÈ“¯0L\9;ý+±3÷à 9š³õÀ ³ñµÏº ÞÿÐ0{¼ÃUþ8 {Q„ ²Ž.@ÞÂÀØçQ ÄÏñÁM`w$¼I@a¶'`3 €È \! ƒ‚`#~T¨ƒhB%ˆ¼…@±ËPJÅPA € å'¼è`€áÐ3ÁøQÝ`Ô’ˆ œr ¢àĸH-_L`("üêÌ’ÜÇáN9 0Fãßmvü1°5û Ä¦ÆøÏN¸6ÓÄoWîÆôô©qr{Žgwß>"'„Ὀ"衤D@Û6ȧ~pM9¸rÜÄ,¿¯Ót ù—:_okQØß ±¡¸¾S ±ò?JÑÎ#çŒT˜ö)îÝZø>GµŠ´X´ÅûC>`γBXèG“õ\r?«>益øÉ7?ùTøG¾Ò4'ÅÃ…6D)–ynÕâH™, øE— Ïâ8ÉÈ7¤pjMyGžîÕ\3/µåç§âÅÐ{ú±[:Ù1‡&Úíb7“Xn±2±[’g·»Tìl´çWÍYp;5’Ǩ¬}mÒ­±y¥nµícën—}±e[ xÔÌw>‡[,Qƒ)¹¾›Û'uñÞÜMÀX(MO‰¸VUÊNé÷­MÀsâÜr¸[â|jìͦ„øþzó¹ScYx˜)±¿óÛLØšìØ,‚›ô,¼ØTèÕNÒ`§FúöØƪéÊÅÆÛÚ±:‰)šÓõ½MŽÛί¹Oìרaò¬ò Ͳ¨_¨8>Q¯M„¦Æ`Õµ|Õêš­ÔÉ^/¯nÂ2L<Î&È]²1ŠeX‚ªªÍ,…íŠz7Kû`K!È/jz)CÂêé Àn€ áÚHowÿ”áübA2dɈ`Øÿà߀CÉ0“þ:ÙJZMµpŒð°Ãw£8A“bõb]‡VÆ#B¦…¡ÎD—Ù„I,â@CHàO‚ÛÚ‰©Ô%cFØÒÿü/O¥…yÎ' gÍÃó!š!„?.C]±ÚV :¸…“±ÅƳe² \DS-bp¿€›gÜ3õeBÛ²–vFëÔ¨Uo+˜q¥rÅH…·iVÞM´(=ßtRáPFN çƒ^­ŒÖy:ÂÅ*ì³ÈXu‰ß¥cÀÒf³LNá^уbgï¤Øñ[ vá:Óߥœ°¹>Ñ!X¢‘wðpkú¡üœ½ ý«Cä¬ $€ ~†‘"¼XèiV‹§±âèX‰BÀ/0GAŠ`ËnËa” DÃ(–H &j°b$b B$b{)"Å•ì¾Èo%;¾Cϸݢ 0l²Q­â= çg xÕÑQ’[ÐÀ@54š`÷P9  Üoæ"§` c}U³‹2;kxE6ñ¿ /¶X> —íž&ÇßÛ˜5¶g †ÀDä^Úö†Aµâ9½Z…&0D…¨á>ÙÁtzt:Âè‚Hù`CÐÄðòä~ܱ¡Ç°¥G˜èmšÆŽÇiu·`ùXÛv `±v1…â‚ÝØÖHcÜv;+ŽEd˃>ÐÆFaý 4cϤ0?ˆc#0²‰Íx-ÖÔ¬ð"FA)-aìÔ™O‚¼®¿ˆ08–NÔÑŸ³Ÿ=#ŒœƒzG$æMGTq™ÙîíQmÓ ýY§Z,]½ýV.Ø ïø´r‰ùQLáÉ?¸î™ûtâ+¹&{{µOŽÓÖî5V|ÍJKüu5­º]öÅ=ónÉ«3X糕Ãm-ɆÃ;Í•±žçЬ-aïõMïf¯ —­MäÝFlwï †ZO^p¸[â?zØ×»®Îz¼ÛdqãU!©S5Ïßy³52«|J5Ùó3ØÏ5ŒØ(f/àF²Äº›¯tîA£ªã xóTÒƒNWp˜÷ÕRdo3ÚUuê|oõàF1( <ü§E0=ŧþÑ´ÿÀt×63ýòßÞ¢AïÌ"“g¡|ƒ#çø·›µ!Í’M«£s§4mÿðoŠ‹’|U—Fé»ûâ›`‰XK™  {úJ ?þA‰u&):nx8æäRÄ‚oCˆµ ×hp2e(t‡+R-:³TÆÃ8j…È. ™U:/!r‚ É{r€81 tG&‘í„%‚¡jÖ)—v’ÎÍáW´JÀtÈ«$\Íävœ#|OÌÓœÀ¼WÜì…BW[þP,çè`Û[œVmüS3‰QÈ5—D¡#,Ï=éLÆOÎt` Ý•Ö5Š4k+&`ñwB'§ÅÈnË(rš%!µ¨:r׊ÙÑÌЀañÈ‘¤Š|ê1€-ázf+ºXå?æŒÌßÄ$ÂPˆÈÉ÷,jº%8ÄÍIÓ\†YžpÒ\5û‡®Ùl‚Wbwl_¥/t´»pB ¿oØ‚¤Ã³ì-M´!ãç‰1Ä4¯¸ÁŠ— |SØ’áQË­Vç•Ã5&wP¬>:ì¼VBgÈ,.‡³žêL:j 0à%[!z «ÕÈl~Ìò…ã·¿ˆÍãý ÄàœœÕ×ÕvÌ€·¾@HŒÈr@01ÔØàɧ“ÊßbŒìbH´ƒá(CA•ÁƒÁ0!}i ¬(bCS^ÛN9Ëoj}ƒÊ€0¯Û³G&Ö ‘pA ³€\L q »ƒe$ç¹.@à2X 3,@DFt;(¥EoäÇ#Jd‡ø ™ÌðÝV‹¤„0€,Þž‰Zj8ÀØ*A1×hÎÈCKãqí÷ Ý>a°žè ¸„ ˆÚñyqùZÖ¸—éÞTBðVÊÆeÀÏØ@¨W™Æ?Ì#Ü!¤Åº«‹ˆMcó-ò“±TÉŸ‘ÈšÆñ$x½KÎÄ ±ùîDg5ѶɵJ5ÆÆËl®3«–%Ö±Úß £¼–&ñäv® Ѓø„‘†æHZs¡t/Ǥ ÛÊ'5æÝtËŠ(G…%.|Ú„‰™ˆÓ)ìŽ2râ7ݱ(ãö$°|‘Ç„g¢¦Äj\áÕ«œüSmà}×uŠø ÿUÉÛß­•ÉÛ³ëe>;KS–‹¡ö? Çõ ¶ß¡Wn‚ËWÞ;¹ßµX Õªo?M±³µ‹ìúö±aÀöjJlkCÑS"üC¡çu‰} †3ÙbY—àÄÆ,lnü“aÕ‡'u2=eð[2£ßOäÛd”ÈÕŸ¥NýÓÊè•25gÁ©Sã]“ÎSŸ©›r |kלSãcÎS›ó\àä4å«/+IœÕC‹ÐãUÜâóãUž®bªÃKÈÊßµÌTøßYà ’b›|Sù–èâa¨úD’\Ä”4_þø‰ý·/£Â#¤€ŠÁ¨*ÇðŒƒy="|Nü£Þ€ÐèÚjD,š²/‚dNTªþÍã‚´R‹n—Às`€õË3ºŸ&ê‚ÿ¨kÐ %YÍRÀÖe,àëàØ g¸–$0ÆRÊñXjØåŽªL*“×// ÕðX|y«áÂÍ Ãí&.á[ð5rUƒƒëäJÀl F‡ñ`3ß#¯âÁÁ«ášú{NX9ÖA°6b‚õŠíY¸eC*PʆDMÀé3ŽñQå.^C6¨)œ‘â0ŠA 7ïåšøÚ&r€°{3Îpl½ØQp>iwã2˜Cþ/gŸE¡ªLÊšÁ÷>ð!–l,WŒ–I z¨(+¾Ùž Ì”óÅ;c(P– ’&Žr(Q h–X j@=¶œ‰°t$Bš?΀? ¦Dÿk馻n¤ÑÍë„J·È‚ ¤¾Ä$i ¤M`1”XŠÁ †+¬pɆàF/é6кÃRgÀ•'õû¬Æ*T+G#b“Lú;ÔˆQ¨pL“- GŠõ2• edo+¼\m+%ÙÍaT&|¢….…šœÌ ½‚µgÄËoÕ˜|Ve Ð o*K ~ v9@m$ÕZ°¹>Ö'ÚµzþIÉ)‰ãé0ÆÄ2"I :®¤cê„äǸ U°–š]8g‚d6Ž»p`B‡ð.s‡á±0œe ÄHÊ™a`¿:ÉЀ1hÛ>M‰Ò#pÑÆØi`pY…‘Îw'ŒA œæ\6@3$eÞ « DÀ’€Œ &Šš> Ð#Dã–•², ƒˆ»:…È7ð±¨ÚÔÍ O¼À‰âˆÌ@ì¦Þð"x¡É±mI"".ÇÕÜ HŒ´ÂN(Í„„><ô<6®œÜ˜Ýê®Iý–}æ¥FThB1J5 ^2RãTÆã,_‹ ábýèÝ+žæ5²Õ÷£8Icéðêä,hoô`±;ú2ú±.Çè,M³¸Ê¯X—aÁš· †#¡Ê† õ,>ݱØ#r^mÐljª4R Ÿ)ð†Å¸Û)°Æ°â-‹c“ñF ѼGSÇhæÅËŰìô±CÛ5šÄÜô:X»›®Tèïµ¾V>ð ›qÍco-ÌóXÛô4œ–7gП¢§GŸ'XÞ´Ïõcsãp©,L½ÙôTÈçôÛ—k›Í·¬MºŸK¿ÓÀÝNŽñÞ󄆊tk³„…²S£]œ$4+¼ç<䨕27ãX™“)&^5â )‘ª¥25ZXŠ™© JŸ©ß’Ÿõçøæj²Ÿ‡gÌs6ÃÅÍW×"sU–”øÕe£$ª°ÒÁÇš«m3#,j̱aÓÆûyöt è{µ8I"^Š!K“þ 6jyr"ªfŠ )ÀaHOøœ ¨"fÄvý"°d@âü¿úå>MÕÿP×¢'¨‚–|uÈ; ãû åPÇ4RÞ,Ê¥ºfÄÈ:b`Ïš†*aRŒ¥œ1P„‡æWD`J%¬0Že­Š$ Ü7³ÅðE„] af°E]q¦E¸c0ætX@UЖ‚Ãx³x@~Ü[ÜÌ!¶p/Rà2ÚGÀr ­›äQî…¥¼Ž™à׋òˆ'dk†vlÄnÈ— ÇÀAáá˜qà‘.‚6–΋p8OËX@ çé¹ôÜ-餤@@¦ò°O@§á¹ ™¶Å2¤L‚FO¸V‰Â`l¾Cñ ?¸ppÇ©CÌ#bNÐó ö{ÑNß~‚g@bÞ3ñ±÷!uu$Š Qã?ä´gÞ­Dá.#ï'uÊ$Ú”Ðôút pï£êËh¹M Äv ŠÉjÒ5áÈI³í°¹0‹@þ&À3À„3¨‘Ж׫´‡`ò¨[?Uþ¡OòïÇzúP°ï#‘ pœ@ 0Á¸SØQd±ã´p^óÄ82{C@X$l"2DA7åîÁ48iá{¶B÷F„&¿ ¤VÓ|Œ`ÅJ€Èå•’ÄM Tˆt³sl£5"cdGäÆo¸GM]áæVm›\a,~ß¼Œ–XñƒTxCM£úF*LŸvÒCx^®=š²6íb}l°_·êˆÒ €ØÇ1ø²…`é÷Ž}'Þ9ôˆ"Ä¿†Zx« (q `†Æp3=N0'?‚ñ¨é(œ(Bæ²ÄIæî•íÒ À@๙‹Ë‚"‰ƒÆR"ÝVXç ÀÑÝd2B¨d,tqx "ËN€‡‹LrÓì/š _Áñ™¦‰±DÐÎFÇÓ‹‚?¶îÌÄ FVˆÄæÃQà‚}|Òt5 Râ)‰$—&ð—^%€‰   Š‡Õái?$“† BP"-ŒÓ‚{DýBÞ Ü¥™ƒ7?“Çh—e('ˆa) €OèL:H|MPB\@‘!«1µÅFÔa‚;o#ÎþÐÀ…" å'4ùoîÍûŠÂ8Õc†Â&]`k( B4wôl…Ÿ8ßô^… ÈøŒ1% þ»ºFG놴¼äÏ–Ì[dyCÇéð¸6ÁóXx€’KÌ7šÄÇôJ&÷[| ƒ¬P/su1@¿Cì±: ^Fì´>`ÉLJ@N:ˆå ‘¿ˆŽPß‚„b}XÌMZ¬âªÑJƒ¡Fˆ$KˆbAHP¹;L²‡(ál[ÙDoäèëÜùdF1l }™ò[Æ«êgɬV.½9è!Æ?užÁ º£[¸C«'¦åïqŽ·ëéð_žÖ?“’gï³·´Æý0œ9:În¾gŽ­)MM×XT 1’bðÂ8C­MÓÚ°ŸLÔúÌOvÔÍ 1³|2ËS:?—ÎB7 àœy½e;$@ŠcU!'‹•1ûûç ¦T,çH1Õ¶¹ ‡ç­Fó ãå«™XÈqžÿqÞrxšÖ¬‰rñ/¦ÞýØÄѬut8Æ·«&ÁF%«óƒ!Æ&®Ìç|Z²|ZfU xä¼NÒC$€I¼ùD1Lÿ…Š`%?üY¬¯E‡d­ XC,Ã3á‘VóvŽË‡PÈãnášÿr hÚÿà!†,þÒŒG½/‹ú ÷á@Êpþ1 ™8®î¸æ¥Â³¾9 ©P£âvFð¥B‰Ù• ¡(‹ÀR!P‘É$Cp ëœS3X<_‘XõöÂ2XUy¬,¼_àè°±êMäj°¨ †ã%…Bÿ ò°°ÃÇ…*WíÎÇ’¤C ~+6B=*$°ô|Ú°xžìy+?ƒÙ`ÏA¬ÂuoE >™к‚K–âÄ €;ÊÊv*Ð#Ÿ@Ý@Ú9¨ÁWÑDDœr…dˆˆ™°š½–ØÈ,IX„\]‡­åtÑ~Öžñl丗ÂÈßsé "Ž5OzžcÄMþbÙLLáB¡fãowüBKQèì­b“ÝŽGq¹µè”%dZ¡FjHº¦Gb0 Û62LÄQ(TQA@âF@r5¸HüÁqÂÈACÁc_ü¡MÐÍ›îcÊJ¸!!uŠÔhKtç€ #¯Xä s(wd ‹óµÂm†Ij +•âY’a¸‹úC Ù|;¦[d>dÂ1M4+Ör‘tËC‹´û{…"j)ò6,>%¶ÚËB¡´­‚0Ð㫞ö)pîYM®„Ö·9¬*„ >kh L͘æ°*Ù18 …{WSO´¼v@€LL:&"a¿‹zñü¾¾j‰`æÄLÉ(IJøš¨8(Z˜HB\ñð¶*T4@õ €€ bÈLRÈÅÉÈÄñ:0-˜ @€Â2‚ \ a¡LÛ'˜”´Ï©‡.b!j[m¸Š:ÄÌK¢¡> °pGÈBbE“Úpá.Ìê"@1æÜ{m ã™¨Y±AL‡ ebšk ‹Ì1ªÕñbŒÇ‡ FÐT“0RÇAˆA<Û ŽD‚0±KæL2ˆ%¾ÀJÚ›¼“h‹ Ö×ÇvÅÓbÌr926éx ØaÖ2-šÓ•I—¥-î!ÌëØŽ’{Vpl*\wª’IŽf«€%Gu}æR#ȲÉ2RcuT“š¢ú•‹Nõ Ôˆóãc-”ˆþñØAÁbT©ÀÍJalĬnv¢õã{A;,}:cË‹t:cÑXµslV+qÁpPm¾AâcvÈîf†>HòƒíÙ+@Уr^]È«8ª´U3.…¤ÞLä-—I˜lQ€Äð9±'É<f ÌB2DjO„‘’'R<& NùÜ™hŽ+lw0+³¼”CÌö(†=™ì2Xßiƒ)Ñç)úd±ª3´œ-XÕΪtj6Èd"7ÙY3¬”Èòö_nC%27éë2å²XµÞf¦Çï‡ÊCE68W¡ŒTøáMàbåOŽÞ.Tøåme ñSãׇ“ÁA1°Ôoœbp ly¬ØZ¦Õ6Ö’ðSõ­fdM¬èþšôÂ*teæ¾0Š˜úÛL„â˜ÕT€Šc}Vö™ñªËFF„Tõ…â 'ÇJ­L&HÏXã°ƒ¦õ-à^Oy d=Õå’G%íäÿ‰Ô­ ?þAÓ…7ŠrarjÂàù$bÒj«·…!È£àà{G\ÞP`ä/þ‹ žjw8wÐà •„õð}²–ñ`†U-Ó0 ’žTòåµR¡T}‚¥Âî©’\8ÂVáÐ!ÂUò‰¸.|Hb:9íœežÎrRa/\n0 L)ê,3X5¯:,ëKÆK.%µXu¿z+6©É¼ Voފ͸ÖMàv°í«ÈÜyXvwÓ•Ñåh³ñö*\/¦§•‡OwÁîL,¨GÀR!cÐÖîT€Õ¦,Ê^˜ðd† _ô(Zo>ˆBXGNˆð†êÜ‚†Á‡LP´Á¡~SL–DÈ„nlO„pzòÐ×hôä!XÅdd•Å8˜¬ Z¨@^y!ä­ƒ Õ+>E°…¨§„ØaØ7øÀ…EYß°œ!‘ÂÙŸò0O™†s XE‚5ŸD#³@ .k¢ä5ýVâa”OÖÐj˜F„9séC¸ÄÁC2ˆ†Hã?Ê(Îeä¬rO•Ç?h\AšØ%kA˜A™¤þÆ€m9@ ¶XEt†ÈrškÍfv¼h±¸õ"™$˜qCCˆ¹ªÒÃaR!ÅÚ[½îˆP8~b¸S}›æJ‘ £c Ê“ § 7X|uÙx¬p´ú†êD:ÊgÆ x êÀ~k¢‹`+¥s¨û1Ù Ço2`$þD"!gðpkëÒ%¢Q.I?D°‚!— Q.RnHHù‡âv_%B#S¶evŠ›€Ñ(Âd⃠²žœÖH¹ƒ Š!" „0Cæ„(˜q$±áw$›’‰‹´"Â9ˆ à€D 'äÚ]¹‹[€Â¾6"Ð 8`J0qD` ÞŒ-ˆ‚ r%¬BBLzÒŽyIíIsþ¼Tj°Ø1°Õä×—ï*luª¶Âèùûp@ï!ö^$wa(NÈd˜€yK#Þ¨À†ˆ&&LEÉ\±…fSÐo”¾p!‚^DÔ÷F…#Å2Ç'gª'È[f?S£ OQ²—ø`ÀH Â7gç=êDw-erD—ÏCÄ2•.<ÔÿR#Îß8©¿ˆ_ÞdÉbßRëKV-G7çE‹QÍùÑHŽ^,è豫ą ,hûÕåq+>¨‹Ö5xð±*ûGŽT˜Ö®9X½>6ŠÉbë~¡Ç ð†2(cÊ`s. €Jds!@€ð…a²x€I‚+è/^ӮàZÀ«8¡ãÙðyM”uéQ®Qd1FÓ½-ŸÐ$4FÅ î¹mÜà{G xFŒIæ –à"ËxaÊÄòN†Kü~‚Ŭ@X›ö•‰¿¡åY=d mXý·BQS£ÎS'†Xó¬Î+UÅcÔ³:AcóßAâ±k#äªfíÉàIMiàB3Sã…7‹•>8Sx¹Sã÷o‰SãTæáŠŸótgpP oŸ5MŠdNûjc‰µ‚™l©qz}Tcy–65­ï©€ÇÆuÜo1ãÍyÅ'Æ£RIñª¢èhÒ¾N-jïÇb÷ÊêL IC3ô5Å4 Dd>Õ¨¤HI ”˜YP²“ k¾l¥Âþì§•VåM5B)qðySaÚ O/cƒ,àö”Ð8ø<ôJmÇséGaÜ!dC8c¹#ÄVFîÑÂxºù—…ôíúœ}Īm`^Ó­ÓŽm@ ݽÀÒ¶5š¬/ÓÍù¬ºuñ;*Ò2è¤ H ø •G9ÐrÉ”¥³ü\|í[çdöþà‚ÒEŽ£tÄ ž#È™¦à°FªûQy§ ¡Œ9NØsFbàÑ$•B÷›âŸŸ?ɆüVÚ^ìÇ Ð© -Z_ ÞÌíbCç„0c`( LXð/®Ã$%¨-^S pƒ,CAA½ì›i)ìÞÊÎé@jiº_Ÿˆ@…&i\±R!Ų«s …F¤r T+›¦âW!åyX<{òZj¯g °¡ÅšœÌ oÙŠÕ›=¿9Ë×”/t…Ý_JkMj™i>=­m}2#ˆªµ§ñ(μÿäIè '‰ø £|þhä@Þ¥¼Ãʬܦ²‰šB‹€Qÿ躻°ˆð¢¸ÒKf ŒÑ$°,.XÒ@Ø 9'À‹< †H H`G@æ7–g2$°'4Yƒ¤@!Àæ%ž`†À'mI@H2žÕð¼ hô ‚Ù{• Fd•,Λ¢1f€ ч:7¾µ‹â$È1¾/»µpSÛ;2~EÈqo›äoA›n´™¦œ<ô# ¶Eá K°'7öz@`†Á–X,¸à še»~!ŒfØûœÀÜmåI"FzÓ@àêŠÚ =8LMü,^íñòÂChû¬Ð‹^7Ø]Kím½"5²:Ѭ%øÂÕ"9Å÷®—üÞÖ ¤ä­åi±‚ÆcO©“öÔsí°Xµß/9æüè Î^†^FK¤ÞF«›®÷ÂÆÃÝÇÏ óF<‰Ÿ¨v/XÙ·ÎÂģşǩ~d-äa AD¬‘Ž„G0¸líTìoˆrÁòç³áSu(ÈøµHD›Tö@šM‡Â$'𹫀Væl:Ò0´‡€€B8ݯs±€G "­_Vòëí™;3¬^±‹Y³^V.’ž%OY³^¬ßN˜hÎTøÖR ÏrØ)ñ¯',ˆ‹•Ïs:Yjů¸âkµ“Þc)±«ãذ‚Ä«±¸,¸~B3S£}e;†%N~­ÈB F<ǘ»[;‚ð8ý¶òèÐûñÌTÈÕœé™NöòSãkU–ônWêKÄç÷¿L¯…Ë‘F5]`Óó[Wó´Èîk}nM‰ÆY Jnjº;š(!ß4jX#˜¤ã`þ ÜÉ3 ü€!îq?ļ¸U§p¢ž/ â£¥ÓÀ©s>ռݣw_@‘ÀЀj×ÿBÉá¿¿ïý™cŠ¥ïþFÐÿ B€®ÓÓMäÞ×’¥CóˆJášÂÍÇžbt ŽL$¨qúÆWœ”¨qQ•ç%*TeyÉ`Ô3c+ÌÔ˜Uö¶®`°êµ1X5¯“tÁ«ì}XEI…Tn°~t/ƒ•ƒ^gyŒ”˜UÝ@j°kį$¸’• óXUW“))P¯%ÅÌ&°¸Ùþ•*­6•*çÏa~clï!aPÉ†ä¬ pèyX˜¨+å`cŸå`ãR)%§pô¸©°í"vDÂB¼ ±À,ż {ÖTÅ—„0ˆôª9”&c"¸[ÉAæ&ÍŽZfdøÆéŸfÁcÿŒ1๿۷ \jù´Ab€R5$Ü+X>šFI¨ƒ{ÕÑ @X nlY€òËhˆYòu–ë=…Seÿ‚MÃ8E5¿ÂˆF¤›(µS¢ 35ÕŠ†`z/¾ha¶Ã‚%Z! ÀÙa­CX}%lº©ãДyÁI‡û9¬ ¬ã,&4 L8¿Ö×±R!Æ™öqRáP¦Fšyæ{, Ë;ØFJ\+>)pÓäÉÎjT=Ù!g©™ùPLaœëep^"…ã·¿ˆƒ9Xð­•?ó(Ï£üœUŠÈké4‘Q´T" a¦†Rà †}„:A†àˆeEAIȱà@, Y„Ñ8pD É"„&ò0 “\ €ÈC¸ ‰˜X/ÄÖ“C„+öôaaN"¥Ž#ÎЈV pÃÎŒ…*íÁhÄ_™•Î¥W0à@¥¥·iѶú<ï¶0¿0¯Ù‚›_'º¹2æ/R¶À…ÁÊ{ÀÛküLyÉ ¸6$<—¸F®0lð¡„"g#6²Òµjâ-ø—Aø—€÷F¼ÀžÜ<Û-²0âhia˜àpA˜úrør–A-'£ÏÑb (ˆ!>àâu‚ ŠóÆôó`<<€PaÚ¯Ø B ôÂíƒZ±«½&a ¥FªB܂DzÿS·¨:—Ï ,3XÞêx܈Õ\à±,õˆi^2RcOV ï“'ZrXõ—À±áS$ê׺rÚÖ ~5qÊÄ€¹úp‹.äþL MˆÀ¢7‰§b% ÈEK27Aø™Œ„<ÑÀa… Ã6£ù@ ñÂØÍÄ OœœD $I$’I$º=.tl†Y±tJÂ5‡´KZnÀ6°a”Puî|²8ùðë^¢zX¯„NÒ ù}ÕX½ZàvV-\@ŽåbߘvTÿ7.§Æ¬Às5YøajŸóHXß¾6Õ‹÷³tX,Zó;€ f±!YèÎa522óÏ.c%:;Ÿ†'e:;ôbvS£]ÊØÜèÔ³·<”Èòó×òL”ØÔí«…ª|lÂÚÖÒd§ÆÏ;ýÆB9ÕeC>5^’d`j» &óìÚÀ£Àó0°8~-Ìô¨öz,ÊC9º¦þÉÚåƒ^±±K…e3)™…‡*È`°þë2°øê[•‡*È ,:Ìľ ²ö…ƒ£rÃh•‡YG°ô» øºÁí°°VK¶7A‚À;{X²ƒœâ† Íþ’xV 'ð+ñô¡a¼üXoK'!­Ç€²¦T fÍ lñà‹¬óàŽ9\”íì"vX5ˆ FègVøŸ”Ë ÐÌÛRN<=ŸB® ô™ô*ÄäDž“ÎsJò}¡‘ºUqÔ ß;/ñ~¬Ïƒ^Šu_ƒ-_ÅTãû.‰i¿ú8À³M·ClÎ4š¡›0Mœã!@4T0M¬îí6!p=E4D@ÉÄkœÔCµ“˜ ^ò VÿŠACÃâ&Þþ¹ÿ~x (@ ÍcWâu‹ŒcË ˆ8¶†È¦´ ¬0#~Ï Ó 4I0mŸd“-/Ó]HM4*Ê·0¤Ã+–*D8Ó>óXwU3r!PÜÀâ˜âãiX5æwÉa{¶ÙÖ­æT˜t)îÙjàZ ˆ§ŒUΣìÃd/–¶¾™0¸mü æ $i¿ƒÖ¹D°tLÉÌ¡#Ý0`Àc˜‰â6Àˆ@Œä€Øñ1AZ v°Îš‹20l‚álKI¿ð2„îúAÇS3•€q0ŠÄ€$†b¤‚`qCoÌØyq)!Œrò‰•hE Pæ°h$@£Ê«v*lcæ·|g27Ô*7O'Öö*ohq!Gµð†ƒ”È´kVÎ;xC6 ägS@`‹âÏŒãâÆ q1"T@ý†iÑ™hz\FGºÞwPÌ@M|þ :?Ã0‰‘Á ׄaPH‰"29‡ЙÜ`ÏÆ¢­>ƒtdö–±Ž4/V`0þ+ÝëÞ: ¡ñH ¬TwÏu(/€I"Ž˜Áˆ€Q-œvŒ@A€Yâ¹Á´$d’@g˜†¹øQ(J,A:8„ƒ6„110ÌJO0^Rgaí ³Ýý¡¤DHÔE„Hì ‚s½0@(z ô,2B ¢áj PÎsñƒTLø†å·ÁÕƒÄU¤¶ÈÚ?¸3ãg<¬L DøX‘kž$¼j瀱°Å¹<:1õ¹Ü…:<ß||Ÿ+‡œ”ÈÔóð7ScS×–ªliÞ¥’ŗ̺ÅÔÖ5tÄ­ùÄä‡Õü—18…>7÷N‘ÌiêÐ÷•:8yUâÕ27v/çcb™W° Tèß„µq>9û® çÇ™Šö"áLŽôÝhTþÀùÓƒaCŒvýËqreàÞÛ9àcÐ~Jc¦fÏE&ÈõþU‹Uªÿ˜?©YзãÖ×jÄzån/6« ’"*–À&&V¾J·›¿HØ(åbåÝ/ÿD @ü„E¯EtÉ®7ˆÆX…»í€I`£UY3l”a ìð"»*<€!Å>VÌÚ°»g B• ÷Œ†ŠT-¦¿3d–MÓòOµ…Çok ÞÔ¨[gWâL´R!|£µ¤ã!¢Àâœð6P/Ç‹O, ¨Þp–ëyÆóÐö°/Àí *Õ"aeùž—ÓíùhV‹¶lXatÎ}¬*„ÏAJ ¾¶vsX[k©R¡P²C3°µöt² ޼ºÃ•d0_¿Ù™X&°ç§ÒsšÃã¡Ë•ƒÛx ¥Â³h,ïS ‚Á~õ0}˜>3}Ø,ØÝ àf/Øv€Z²+xGKš£1ðð/7ÓMÅu±ad„ý hÂÁ?0ALòÈ%úæ:†%3EÖF¢m™þÉoÖ‹ê¿Èê:'‡Â«ÇåÉGÞÌ9w\[E–̱œò´Çº2`*­:£aû“b¢ä,Ê |,k“`œHg"JDDY7íH¨$âh-¥îÌp­ „ÂáX4D· "0 ¡Ðº@@ƒf2M^T¢Cæ€Dß±}î5vð› dè›kYeòÛTˆq;&ê°§ôÆaK„«Wú"á`q¾^Å5e1©ŒÊ!Å\sL*•¾² ¼Îò,:ÏY ] 59˜!Æþ½¬O¯š¬xƒ¡x¶ºBë±8b`;XrkTËIñí6óÇ¤Ë óéAcüXÖ¸D°&äK’Jpà%íˆèlŤLc€ô Pâb<¤çRK#‰OÆ(H ép$€LH˜!;>Ùj&etlŠÃ-—ÔwÜÿ3Al=ÇÅì¡ðÁ. À,Iƒ*mƒ8"MÐø@{[³1Pc\OÄ€ ˆAÕ§Qztp5ùŒæÇš¿- §Žÿº}AãŒîó‚{Žgwß0øˆÁ‚o"I„13ÃdÅ\‰¡‹¿ƒÛ=¬O*܉,úK.ðSts#óxò¶®²·àör‚ ”ã¶ÝŒ'ÍŒ›P AgŒá àBgÂÑ%ïý³Tü.¼'Ž—^‚ä"SF¨×#â@ºèq¡ÀÒT@ݪÆ)QæïR;©1æ -¼ß%û±Âû…™©Q®Ìã!²Äž±ÇÄÖ/]44€¹cVîÎ×^±°¦ìâ¤G÷ŽJÁü}( îFÚÅÄл€CDFÄÞø§€ÒØGÍç$NƹAœLH1(´q$æI™( @ WváYJA$2xÈ‚%œ71­‡Àƒp …̉¾Ò„n’¤áxb¹ŒÅñ›ð|«WëÑZ¿¥Z¿^ˆÅ9åèòTÐòÇÙ>ØãOë%‹1Wx+c/C‚±ì¨CÁSãMwÁî|o«i¶=½gÙÊìzŽj¦Æ›œœåv-‡ÀÚj›n6©ñÇÍ:NPµÅÄ)ѨŠá'F²×;‰SƒÔ½v ™»¿Kˆ*lo·C[-ScWû´b e…™R£¬Ài…65ãëTþÍÞ-® nnñüÈš{€ÚõúøˆžBÖX‡ã4l•ñú Ñ)öHQ ŠÅŽB?Ȥ1%‹ ÃÚ»FlãægK9“ ÈxE<€çÑE €vŒ»OßþóšL ¡ô\0 [ã( ÄŒ¹úE|˜„ÁJ…vqÐ)P®†36Maoêë…¶À,-ãún[¤B­út Wä:–™~ €ž‘•+{¸\7µJ|Ë÷ÐÞÕ)ó/ßC{W´¿ë{Výá‡Õu†ÙI¨t9áJ…‚°MH‡Á®&R!ÇUöx²å¿g¡íH¢ÙH z+±´Éǰ°3úGíH†PØ,Ìæ°3úm«¨o;flÒ:©Põe“:À¬/vÛ!V¬/VÛ3Ò• Æv{Ía{ÞCI¬/VÛ3ÒÃѺZ°ôn†v¬?—`%ÒÁ¬Ìî ³0w¸,ïS ‚Á~|° Z¶ 2ÁÒýƒ¡‚ÕÜ¡€ç táAÖyì„/ÇÔ.‚cbô²¦Tƒ)ëÙä,œ#M-ÇÒÀZÃ…Ý*l8æÁ»©ð¯ËÖgnBjd/¬3µ`åþ'ž‡€´Ñ aO äÖ©û¡©QÎfô‚à_˜«‰$F0þ=<ʦ`?áYP4¾}**ÏŒ0_êÁ"•Jw•®ÅM‹¢Å ‹mE(Œ€QÁPRZeã‹+ €òh˜ÛŒx!ñ–D®® J³2r†ºÂÀTD ÁÇø*YçX6Òˆc|•B@Íh7êdØjÅXÊÉJè ÞÑTèæté‰m)ÎÊ_·«)%&þ1±J…ga¿ÉÔ¸U†³…"oΙ)p¨S î®!Àf¤A¼ÔL˜Ó6x‡¡”vRá§É“œÔ¨{²BÏ!2ß§ÐÑ3cgó…pQØ¡xíïâgX^ïúDXåüØ×¯àœ“µr¬…“ÇóÎHÞ%9Íi‚”všûÈr.@œ­B`b`g,†O©ðÿ ™@† q£vñ;2fwè¨À!4`9?•b „NƒZ~ÉY䈖I2ƒÈ• ‰ƒd:@!Ä"y2Å °l„ÎIt¨¢ƈc"{ÄùÀ1›/Œ«Œœ ‘¿ øDÀSã}¯Ò ?mlÃ’SoÚ. x@½¶óá j%˜çZ /JdNzt<£ ?O‚ Ï®‡•&=Óe27Û÷­-’¦ðT˜õMÓ6׬[=åàë%>5’Né@o±9IN·525,Îä`±*†,Jâé7‚§F¸Œî9¬zâ3¸æ±ýñŒÚ7…65â2¸ÚÅMÞû SiFÛ ›2<Ö‡B±«¯¸‘PLl-wËáˆe2fqõ><Š¿`¦ZŒÍHœd„Ä_qÐB€Ç|‰°áÁ|Œßº“n%Ø”¨Lq''‘¤³ a£ áTÁ€ÀÒ\Šx8~‘ĸŽp†ò?÷qÁ8Ñ¥u5£hÿ€~JŠ¢À6,*U3 VëòánJ\#•Fáfr— ÷yN\+ψ¨c˜C‚Ùޥ¯7›… çÏe.£Ùàl‡[ÍÂóãg!o7 Ïœp…¼Ü/>6y±ìð6RaÜ{9zlü›Î0awœ,Ù°wáý}X1Û{‡<<˜VcBL2»KÍNx5‰·.¥ƒÑ xqRxø-½¬ ý“Ðöž> !oJD2ô±·µïS`„»R¡êË&N=¬(óèPšÂõm³=)Pã9y……îÛd;X^­¶g¥… ²²dðTarXQßàÁawÌËÒÀ»LÉ`¿?X=ð ¬[O,µƒàBã2†áà”0¼¯†À!‚ÕÜ w>1è-6ã¢P ©¡M2¢dá2p™8L0˜VçÁPeÕ5Q%ß^K"­sÂÀË-cÄÔø{ötÕg±ºØÄè¦@F¶ä2S!¸mì Tøqç „Ï‰Ÿ¯Ón½½ç²ÒòÜß'A.îUƒ4"óO²}hd„8m2ÓΫP"°"fÈË ôá(Ä6¯émkÉ„ÓM=N«>õà68Š‚¨B´Á„3 Já„«QÊE‚"Èfh’£A‰k` gCÎ &Ø ÞÃ3¨Sü³»ä„µü}NolnNÔýc8A¾~ÆáAå÷Ü•"Œ=™§Ûµ¸ÎnSí´‘ãñ9à nÊL}ú55Š<á Íî±¹sm²jÆÔÏ€±5~Ìv °%Oip3½Õx8É/ahÇ!‡˜ÜT#Nˆàà 14Ø&M°ͧ©¶ ͬx‚/ˆÍ:¸‹*‰ðŸ©¡#o'°Qhã°‹­ätB.¶ö .·‘Ñ«Br¢5š°~ýÈÎë´q¸ dp¦ì`TÈá…:>¡”7csoŽBÆüÝçq*t^ÿ9n5XÕ8GÁÑbþãdïc6<ññq©±¬^ø@Â0+sÄ|FOkàâÅN5¼Äbæúσ;ÐcOÏJ|oûèèYOŽæ²:S#_—Z<Ë[ìÛtÓÄNüGÕæ¶–”ø ¶ƒÒ±µóÀ¯þ#,ä Óÿ°X‘ňCæ@š Þ,0´ªBÑ“q"6Ľ`y0þ-æáÑ09…jŽq5sñ“ý² "~1X¬ÒÄòŒçZN¯Rž…»ß3ƒ¹•ᶇ[ÜexÇÛ[!áæj½½ñ4(z³¡äÛ%+šë'µ@âÚ´Ë„­‡mÙ>ÓÌÕ{{âjWBû[8“¬E ‡C˜Þ¡Pèc3•ÆWáœIÖ7eöóÜel;nÉö¤qóÙö¥qŸ«àÂÜ­kÕgŽæ¿[€7š£XsÂøC§ÕϵC;žø_O·d"Ø©C§ÕÎx­‹m½¡ïrßÛ2b¾pžŸ«íéúÚùëei’ß· l¶ýVÞÌá%‡ÇR¶Õûý1°n¶ï¾Z‘°ÉGé¢g13«j«h Ù!¹ÑA¡)X<æÇ‘ÐNãÈè-O à%Ã6å}yÝ« [öFÈ`:ý!öTÁoh`ß°ý!ûçhg9ñüBÈc¡)× Þ‘#`زl3BèzŽå\ŽKø¦Ê.— ®|{/¤,8<+&ã¡ØSýGËBç –†—ì`f§fòó8îp§ú³Ù¾fë§ .ë+å9”ûÃ>^J x_!{ã'½ ÛäÖ©–ž½  7ôDkïàâ×wA01»ŽhÁð¶Ä'y¯2B FÏBs€’ZvÆR•×u¥DBÍ’_©…@GÚ8«A IÄvD|ëÁ‚³1ƭǹ ¿¹Æ¥l§Þ<ôÔâðÌž&ߘŽ.‹O£‹]~p ‡…£tQ´ Œ&2XMZ¦ ;AhQÆ6ðÕwñi%㮬ã‚båÿZƺ" ~3¦Û•CP£´x’—DªÌOˆš÷¬àY°¼¬‰¢¢g¹'0Àƒ+TzQÙÙˆŠoåÎä°…ÖÀ1, €N2Ü“ÚnЂX9¡7hàÆ7þ¾«Ã§ÍdRo„ÄWš—ó‚OÔ”Ðj†ÈdÌu– ·‰üšpâK8»ÒYÄØ1[¢Ì@Ñg«Úá †@4¦”#m†ÝnÀ l6â0¹›ì'Ú/#9“!) šÄ¶ùž¬Xø@ð!!RðÎ޺إ_dz³È[Ù¿,ÀÔV®¯ÉaááÔçÛ]ÖƒW§)¯¤D¨|š£eãà Q“…ú‰…Ñ/“”àžA…åÃçŨÇ ÎäÄ¥@¨ ‰ÆQ`ä[Ò­ 3ÄågƒÚ8ÆOû»ç4c˜Ð³g%‹¹bxZ½q<õcîa¡ks sà߯ÊÉð~¨Ó;Ç®Ôèá¬2°:©ã¦—XƒxwÌÈîo°ÂYƒœWm²Ç-ÆÏÊþ28Àßtÿ{†ë6¹N»;;mÄ3S£Í¶Yu²6µ ¿’ðd§öo›ø0Å£ïæ t,‚<ä.¸“/ï#v(m‡€Ã€4/tH<( öµ¬³NWR'žþµ¿Ä ¿NdLŽ,Pä!süÚC$\õ±+?Àœƒy'vDáµ}SBhDædæÞáSt—\FÐÿ!<­KßÛJD(Up°}~NÊYÕÏŸC\D¸{™›n–rá÷…æßáWœ‚¯'Ï¡®*\*ó‰°P— »+ÍöÝ.pi¡./ÀX(ˆöâp¸Q— íÄáp£.Û‰ÂáF\7·…ÂŒ¸on' …0žçÐëu.pi¡Cï¡Öê\>à.ÓB8ãFL%°ö{Ý`éÙõø¤ÃÙô%QRvøø°x€ök‚{9Ü,³Ü“§àáþ…ðöm§X>õ6 !¼þ0†‚ØÓ¬?z›2ðVÚ mø°Ï~…:Âõ©´ËñKâ0Û¥„{ù?k ±:Ë¥"톂R!¿CÞ‹x¨¬ âví`o°‚ÀîË„ðàKUn{vRaÇ‚W¶ó°ƒ!…Ÿ!ÄJÛ&r† ðAcbô™qØûYS*``öá¿Ô.³ÇD#9n=ƒåA“óÙð¦Âšï›©Ð²¡u…Xkp t(_l¯#(,ñ+.&¦Ã÷¬Ìc%VF ö7LÅìS!^ø’jt[мÆ)×éòö…ˆ2&Ð’éàGi?$ñüR†WXA!ÄÏÊ`|DH"±Ñl.–D^ ­80zµÁùµd¼#àW‹sÿWPAäÍÖY¤ïR€¹“Ø‚–ëƒô“_3ð¸Ø= 6ý@ 2vÊäC°†pq϶)cèÕˆ!± /S-y¬ÀÔ¨\ÐڞСÓöL5&À‡¾˜‰&aU;-“©0º´2¶âB•>a`̰è›èNaH‡í â°kį$¸’ÃûÙ¾ J†àÓ4çÐ…É–ý4pÙ`¶&vÙø° ñët×\ 6¹â·LX<ùLƒ&`ñü¼×H–‰g%_ å"4j87gêÀ0p Ëý×俥u䌈雌D%Æögt„8Òýn±äÔ**xš£åÕË@÷øÔ!‡öÂáÍ(Ñ‘œk´M€$–K ´™g¯œâ,ô[ RKe2•»dî’$A,$° ÂlXÕG ‰‘ØÕFô8ÄV¹dâäÓ> Ì‚ø†Û>Jmð;Æ«D8ÀƱAÛé"%õ,—Ïís ¡Y@£Bµ/Öü .™@ÞDéÄñS¤ «A\†P½ `˜D ·G ð‡V ^†ú„qÁàY4GY^4Àõõ¼-8).5 €yžüi{£cË–q±YÔbP™íú±`Š€À\¹ 6Ѱ òj-(ƒüþ˜S1-]Iójn¦9€Ás©B’^ØÑ­? Iª6Iƒ,‰àÃt0# 1°4‹sb<)äâµ!×¶'^ØŒSáù…ã‘á›=/håÈS#ËŒjå‰ËŒXòÇiIbtg¶«6Ú]©Ñ¨Lz̬nae³­vqôhM`ºøZïjnëõ¼T¦ËÇ™b/Š£ó…âƒVßøp6SΣ{`Smw;íb¦ö²Ël;­ö7ý‡Ð|÷ò‚ z9>~Ùv9aóHÕÂæ3D XÛžñÚ1*îöÑLÃпqÿ€YjÀ¾¤ `wÐà •€½ðdQº@ j0S0ÌøRDÚ;Ê94À蘆0Ž›ÿ.Zõ£™-Fž>¬Á!THR >†.?þø KÂoWܰöñÙ?ª»!Ðäì¥oôâl%CæéåÃîà-4%Â…ø t|¶ÍEK†öbq¸P€!†9ay¦—¸ €´Ð•ï …ZÒ»·€ºŒ«{Äà.£.Û‰ÂáFV7Û‰ÂáGû>†Ü­Gç…愸}À\¦„ˆ}>…Z¥Ãîà-4"qÎL=g½ÖþN8qv ìânŸ¢ñ&Ø{=î¤ÃNý4Á\ð'€VRkAâ™I…^[Ãñ|ဲv–kËWΕ«±;õr—[ éažõ6 ,>†¦Ó,sRø-³ ÁaGs¼…:ÃÐvwè¬- 53>s[[ æiÖCÙÌ`°! ³šÀÚ™þ¬ ²¼Ê¯X ÎÒÔ, 6:!‡€<¡¯s¸‚Û€(k9—à!„ìO’² ‡´Ô5è‚ô¦Øt $l<ö !`|*żý d+CÖaM…•x:¬;*ðTøS]ð{ µô¼Œ °*PâCU‡ïŒgmåaÖ°ƒ»•2VÈ©ðâ´•:xÍšØPËÀ›vO®)礹$–L›Íf‚ùf“~ás `±»ŠHnB$ý!A‡©ºM:ðtƒ…ˆíXÖžÞe¸¨&à“r €=ýàü .™Cq®2”Dª·s€çë‡dDn ;±Ç?AƒçHp†ÄÛP†€”ÁÊvv=2e ²yïe.Mó2×P¤B³í‘Ň]gaŒŠ—Ò¢'áÄ£ˆVšžQ— …2`V¯|¢rXÑÖ{,½›àÁaüè`bVBg¡¢ÁÚP¼þ/ÄçSL\95ª ó¦@ðV¦ZOk[_LŽ0×Û¦#1ã?Äì}ÿç npmGÍ$É2B8äDWì<!à€çŠ˜à@!ÁÖš¢p@@ÀÀ3„Ɖý1š³ÖÞÑ MNïzÑelIÅÍ[ìž–ÎÍÃ÷†JA"Ž $sˆ…^;ð¦£.z4ó­PŸÊúâL‘Ƶ_:_ˆÓ›Õ„ ÷«'П­ŠsŠ ·–Øs­ÙMŽa刮«‚=Ô˜ Ù’“ádÄcï‚‚žpà„{¸×íîÉéâÁÃù}:QËnÜ E8½‹CÿZã8@§Éº ¿êôpù™QäE¦PðO-áHr>ÏÛþ£ŽŸ8tp¾ã„Š‹?ÿ`ÀÏî=y->€&d’ÁJßîwSJ†3¼ó|ªƒž­ãçÕ*ÿM\¥B®~IøT¨?m`ÀVššÓpQ•YŸ_Š©Ý‰ãÍðÛ€;oK¨|_M.pi¡.pi¡.pi¡.pi¡.pi ËpsÖmàWJT.›|}ð+ ´Œ7š2 ÍÆ'Ê@m“X`dc¹ô+#ÏB½)l=ž÷X5yõ¦ô´à+äˆkÐñL°t°boÊ0ã7³–Ô$ÃÐök'Ï¡ëU‡èfm2ú¿{NWTÖbwéaï-¿,Ráìún°ö€ÔÌÙŽj\!°éÔˆoÐö°7‰ÚŠÁÜ9ÚÏ+;„;XÄí%¼g€í`o°ŠÀºÆÛå`[sòd…îO¤%„°nOê¹>‚Û‚G(aà* 5LüüYùøšƒ€hE€óõ°>{öáL„êÇ)°Â¿øURj|/¬)”ØaÅZrS¡\_k â¸f§Â¯Ë€Ò*d+Îv™)ðª€A:ðâí59§ôÚÜÝ ¾Hµ€ú! ‚öî„ DΑ"¯yÿÄ´°Jýäï!Ô3Rø2v@€Z€!± Ø <Ä„ZlNW ¼6 ö›”ä^6 +C$xÌpDʺˆ8°>ž™K!!e:(@à EœÆÌŒS 0Xìl5•¨;V»V+Lh5ÀžÂi¢õËÙH…h(‚— ÷¬óM4+Ör‘u&R´bˆ]MsiˆRawŒªù¨T=[ ˜W“|,?‚ûJÂõm³=,c  T˜o·êÁ'Z¡`+Ú`~~,¡™ôë7 7Q!=ÿ‰Gø8µÓªšh5§Â-fPÚÉ` ÐϘ•,ÜH pz1¨w†Óä—&2²DMÜ–äŽ\‹¦"ú”9…bzþ5gpC˜ÉòÓÙº†Ì|âÆÜ‚`v6µã!i×T0Ž˜v“f³\/#"ƒ„íùâÔ"s‰A$’9$’ó$‰Mº}ub§F´ŸnŒ?ogÓÛæ·ÜìÅ2ù¸;ºmð9²¤ˆ‡15‹¡ØâL÷=Èeäæ`×Ï Ú1Yüîc}·ë@„Ó"9°{À!´†ý€Êó`6ƒU>…š¡éPÀRwcÚ ;²!F@ `™Ce0 €Œ ôDAæaÀÀÂa90N$Õ½¢˜qÜ~¢b›œ„µí„Ðfä€@V‚¾ ¸.ãE"Õ;a”Å·óe¢vüÙC¬äýª ´ÝH²†KRY5sP0gàÊ™£R8)Æá–Â0¾¥`cšôñâprÕ—T­!CDì»1[|PKLјªšC»éš†DÎóÉNVGí¦¸qo÷Cî'lEû0Æ\{ñ&Ð N ¬zÅZ 4ÅNÓÈ]\20gñè£<ñ Oþ@65q}s|ñ&ø ¢ÿÿR•€hÚÿàbEºå…æšVñóꊕ¦®R¡W\ÂÚiWù"Ü…”ò·ûêšT>f­XXz¿Ç• »!m4¨?gÐÛ•#_Dô Pø=šµJ³¡ìãíôº{36š=C!`šÏÕð^k= 2 Íg Ü`16š"…Ø]™µñ׺Îü©†îó"˜{«Ê‘n18ÖR˜dþMeb‘~q8Vv‡÷‡Ÿ‡ó8 Ö'ÊDùÄáYÈóЯKô»îîd†Ó³X`³3´å…e# ‡³ÞêL'¹ô+&Ø{5ŠçÜúµXzX3¿öjߟBºX:[©² °ø€È[RRü™è(â°ÛÉõ—aè;5šÃÐvw謠73³´93ò°6ì•´Næ^w3ÛP† ϮКaå4"äðP‚G°hIYR 5MCQÐ+??~~&܆ðØz(áa¬w‚¡Q¬ µÇ+;‡ÀÜxXvõÓ•Ø6>³ºd)þÌ9Å9esÞrSáźrÎKD…6â6 J™+A©ShÞ>9µ 9¬Ï+÷ !aaTü„'^$ðé–F2 ÏX&ƒ gFD'd«SÜÉÂEæÀyÎA³D40S! ½_Û¼–ô€Âé‘xD`¸)Éä?ƒF¸øõZãB‘€íRd ¡ …ȇ^/ˆ,‘##V&X`Å3x²Ú!6Ý2ùÊa¡u•_1Š—6øð2±ªÞF*D8»æ·¸R!Rˬ”¸]Õ:4ЦæV>%–Î…ðr›²¼`¥B6A΂Ï!3N}\™Ã[,ÄËk·BñÛßÄÇhëÂÂä{D0ßÁ¿ø85þ+´LlÑ0súT ÏZ8Û´1XÚ½x €¡ð¤ŸÙ€‘Hz8* ˜¡ÂÍžš‹” lB˜Å‚c §©ýL@ö™Ññœ„"Øú¿9!&!î|âüé#4 €hÖ‘{È<ü&øË™Ø“Á±iÐ"ü €RyŒè åÄ9õ xÕØÐ¸©ÑØíYÐãß-ÅÈãÖ±ßfS©y  òÆò‚é-6{ï!'q ‹„ Ë n¡5i‡ÑCb¦n Úä@hZŽ?ûyóõÐ"$•‹rÞHè¿%ÒRÞ:б‚ä‡,Õ4&vzÃ7…0ÈÌ@ÊY%6h÷´2jfDV~±B8”‰ƒ×0dÌ/h4Àc–x_éLoƒ2ŸÈ^\tÈ\R#M$@àÉÆ**éì>jû˜¬RKmU€T_Ä¿7 ‘w]BF“È+H¾‰Ãq '¦ ÏÔî35 NÑЫü‡„{šÝ~›;t†ä$ Ï€ÊÃ$t2æáhì w߬-Š)¡ßo³sxgܾñ²ý"ƒûÝXÍÐ(ŽøyÂ!€A|¡ &{BÔ ³5‡ƒÅãÚu¨r<$åS D ާ}è &Cº¡Õ¨t Å`xº¡Ðák9TX¿+j*:ô£Š†ÎóÍ ð;Æ®@‰µ< ˜ÛwÈ1Äå·T¼>"Lx{…·C$ÎvùaeöIÐCá¾¢máÊ ïî@^ØðoŸ–ñdãˆ8àòúòÿÇ|¹a„_)<ÆÅ±,« #ñvàøÏ>1oœ(NÆ$ +é˜xs˜ÅF…Er&K‚Ãa°ú¥Ìýé[ÍÚ9ŒYü3¤fZ{Çü~pE‚Ä‘€x! 1>…¿«î˜ø–2!ût, Uf}~+ÍÃÙ«UðÛfô¥Céô*Õ*Û½œ¬üRš…ùŸJT¡ìïÊ•¦Ö ÜÛOCKþ ¹R³¶Ó~C ·•mÞÎV~)L2'®”¨eí×)PËÛ®,R¡—·\X¥0ÉüšÊÅ)†OäõÀ’•Æ8ž¸±åV§­Æ”Ã'òk+‹{7åG*$ú«ÊÔ¼ô+¥yø.Ör ÍÆ'ÊD2âk…hpyñiø0Ör!-‡³ÞêD2œN%ô= è, ,šåggiËÁ°ö{Ýs[iÊïÉÍaÊËwþÍ~Öé[©0Ó¿M0_½šU–,3ÙõòKAÙ¬ÖЙ›1Íaô>ÇèX/‰€Ûõ`ï ý L7€Ú~BÁ†Â²X<0ÞÝ#p0€ïi¡$“´¶BHi¡€lþPÀu#›PäðPÃáÉYá;Âv;…î‡Øá;áã±mÂ8#‘áœ, fû1X¶‹VüjÇ’°¯;ìx>V ýa b°m6b0Õ>y¦IЪ6°¸2_ËJÛ€Sa}šš|Ö)УQ¿%2˜FÛc|dŸ ßduà¨ùà„é1`Ù "7ݰÜr‹×X%ß³!.' d;ò/Âd’Î Ä—õÍj“écFDx%öY Ržy¿˜q4“uV¡€cÈÍ"Ëhr‡’û"Îþ-ݽˆ~äÐè…öƲyA~Ì'œu#$ÛIáce c4#Äl5œ&‚xmƒÔì“Ú‚w m±óü°F/î>ÏØglîteOV‰ ©.i«vÄmnp¬ö±¢på(¸'•Œèoˆd(rK(@èˆmJ]})@Ƽ¢a¹Ù À>=¨ak¤þë£hÿ€Å!ßÞ¤®–XZxÆßj‹#ÃÒ•à ³;êêT.†6 ¡PRª6œ…™_9|=Ötåit=œ}«á·vÞ–´w7d1öÒéͧ!—‚¥0ý´šÊÄ—äÏÂë|®®‚• ú¶ÞK çÎÀ>v扸WÍXÆ7eV­XÆ7eV­Kñ7 ~¯_îüì)ÏÐùéJ…Ú›²-Kñ7 ~°3ô+¥?‚ìêN°¡ìïÊ”Ã'òk+§gÐýµõ/LJŸ#ø.ΤêD2bk•#vìÖ-ŽIõSr·8ÝIÊ‘ …øœ*KèzÐXZ]‰®WíiÀW†R¡§f½)DïÐ÷žJL4ïÓLïf•e‹ öâ^¥j³mf¬ŠÃô*‚ýÌ´¢·äô;å`¶&{~,ÄÏoŃ¿¯l¯Fý{¡xaÄü¬ƒ ÿ¾N^®(^RÜM €BàüÍ R9µ¤9¢H¹&°¦¼äÆr,Ô»P4‡Å§ÿB¤þèBë()œs’#›õgÕ>MÕÿPעƠ^“äÄR¾aà.J×ÉG @%öÌ:DX©ŸA wþ¾Ç,¸“àhÚÿà1„b§ÀÂ{ñ6 ¡o¥'ϓЎ „<Ý…®yRê6œ…žÔº…§3g¥÷À 5©)pÓ•¥Ó›NC/K¬ ?½)tÂÓ™©©vt=|®·Êêè"°†CƒL`¥ñúk—Æv“])|ei5Ò—<2´×aKã+M3ê¥ñ•¦™õRøÊÓLú©sÃ+Mv¨dþO\ )YC~f­R[Lõ=T¨dþO\ )3ù5.¡i¶v}Rávm`¶vò©ò|¥Â}ûbÃý°W¥/>m9 ”ºÀ“ûÒ——œÎJþà.Ö¤¯ð{réWy³jš—NmÐTŠ“L-6Φ¥å°û¯•‡žíhA}ðSp¯õ±…ƒßâ½Ö;zÆJ÷Xì=ë+Ýc°÷¬d¯uè{ó%zØåwçACºÉ›—q{®wWj÷_Ué}pVÐRl>º„T–Ð\/5¹*Kiç*€X.<Ÿ_—¯¡èV7EÃÝ^°Xøÿ/R!´›Íp¶9'ÕMÊÜàu'*D2âk…ô= è)È]‰®W©í9VêD2 Ír°ðþ©PÒÁn­¹õ^––œêù,-,Õó_c`ʶuû…f°›É¶X-É2ÛÝ‹¹&[{±aû5A3ce•>K±3Úý“¶jaâ>U wñ gÝ øXT0œ~!uÛ'\w ž3 Êf”np}¢ë¤pør >Ö °hf&°_¤Vm»Sáï G3S¡¯äaˆX^4ÃÁÝL…K?!`TýHè°ª„ƒ Ÿ û¦Lm|Âð¦C †Ü VXV9r®—Ù\_Ï<8Îêž t/×<ålX‰©Ð„¥e†ÉKtŸéÀò¸`'Ê„oÕЂZODø@]2 €l>ßDÎ;õ¯îñ..]f@Óˆ˜³fô€Ä"8Ý4lmˆM¶G„Á‘ÍóŽJM¨níá6-YŸ±º)g–îÃB¸ÌàJÁ¬x½ˆÕ*YÖ{ “*Èyi¦…Öeï+ˆMYQ«5R!\_€¼©0ªpÃu‡¸Ò[99¬/vÛ!ÚÂÛ²køˆOêbÀ/´÷V!qØšd×\¦ZOk ’´µöéˆÌxÏßñ(μ¢Z%ÉÏçJa5€¬Q že»Œ¥¡`P¡&•bŲ% ‡a}#ˆà8€ 9++"Âe Ú K羉¡êU~( jÎÝNÇ>åàb÷'åéƒX,i Š|ùÙâ½€^’ 9"YHIùbľ’Þ()HH³ ʆfÇz¬ˆiݽéÁ½Môûƒh,ScÀAKò† ˆ"†9bÌorv8¼x( ú50ýš~X$Èêh¡…+%R"sû†q¸Üo}MS€°}“°¤vÞ¾ 3è³ÙµÀeƒ$c…ˆCs™IñìãŸ8ÈЊ>à‚$ÂB‹$!ô´úüt ñÒ§øî"€ârzn.›Ä†8cøÊŠ IŒŠ@‡PÀÓ@D1ÌH¸€À$ ’Áà€&|Ôc H€0‚lE`aÞ¬2LÆÇr_›â‚èîyX.7‹í3ü)6öÙGÆNIùÁ¬Ùñ¶ÓW6%ÏÅ.¾”¹Ÿhà(ˆ厑iדƒ# ÿDVèÍÛÜüzº× ëÂ’µ‹x¤q.#€ \"û7‘ÿ­G÷‰:— „ @ü€&)~þõ%pµê]BÓ®XÈ®¸x ½˜)uN™c0‚Ò…ø}/w…×½ƒLü©m‹giêÞ¸~ZuËÊ—¦‚Á­Iu“Ðo?Š]Dúô¥ÃöÓ¦^½‡fê_ õ©¨"·I ÞJü=ùØ4וÇɳjRó¾pqµ˜©tôÊÌT¶‹r~Q‚—mØ›ô£.Û±7éF ]·boÒŒ¾1?(ÁKâ;šÚJ[ ³¾ºRØe‰´ÖðRmOªŒW×um{¯ªô¾¸ «h)6]€¯Ø©0ÉüšÆåª<œ®¨Å`¸ò}~^¾‡¡]& дÔu*D2›Íp¾‡¡]" ±5ÊØäŸU7+s€=Ôœ¬(rkòj‹UªD2œMp°ƒð>е}§*ÝJ†BÝk¨A~Ç¡}:ýŒô­Öy5A`·$Ëov,?f¨- I«&°@Î&¶É`Ó‹žj²tMj†Ï_»¨¼!„œÈŠ °r|¡hnöðok.ψ¾Ã«½,ˆÌ7!§Áá‚<,$ â!M‡m¡‹¬>ø1RSáW_<Ö¿EØ……^%h"%L†u•á±S!ÅBw……\ß ã%6ñ®ï¨SaiñYÝ2Ÿ LÕ¶(†–¯Ëq*l/­/ôfj«‘÷Í…>È¡™/|¯÷­è Í…aü`£|0ƒd+ÄP”*‹á( 4…¼Pð'ºhdØZˉd1¡dF% ~Á6] ±©(ã%‰"C•³òBm¡«dÓÁ´wR!׬§0/RáU'Ä)p«úàÞ™lŸšYh±Âi¡u™{Êâ¸]Õ:0Ðý ÐsŠÁ¯¼’âK_§(€¡K¡f§3¤Cx åú ð+]eÃ]!sQûÒiªÕ›„Ë óéб G 5%€Ô‹‘£®× <äTSAÈH6 D@Ñ!(‚@Dà‚¬†¾«¤x’~À N±ó« ƒ’ºŠ_èRn£ ÂàĨ$$†Ÿ˜8C7}fÓÔÃnj´Z€Af*º‰‚™Ú;ý¶ö ö"t>ozqx™çq˜ÙY§§‰è’öî†VH$yá6ª©ˆ ¹I$Ä“2Lm“27ÎæÐoí{Mle27çÑ·rJiî=·]¯„øˆ‰¸C”À6ƒ5r†PÍñ )Ì(ë‘ö…ÓÅ#6tîoTãf ÷ËÖ£.;‚Ãé)ùÍ.‚ØÈNP6†¤$ê  Ëä p—=£ §ëÈfEÀg ¬‰þÌ€p`‰hX‰_ ãa8eŠxß™ÏÌ1´ ‚Ðð`Ú|‰AˆŽ1ÈßOt3»º$2J§²DïF‘ÒB òl"„âfCÄ™à’JB™Se†ÎoÓÊbÎØñWÍ: i±jØÔìMR'® ¦i/ð©$¡üüðÿžXÁŸ€R*ÔL7;#1+b ™x? &Ì´"[ þLîÿEÑJë>‹æBhmœ~¤@E®´äü:AÂ&,Ãu´¹:ÃÿZ»¾´®ˆ¥Úî(Pâ$t›Yoí"üi½Ÿ «{Ì-R³ý:YífüsRa_(p¬ÎvPRòãÙ55‡V 1üZñØ25/=Íù°Œ¶Ó+MzRé…ùšµK² gÜ<úÿº2ú¥ç o'+2CƒiÙ¯JWZu«º…¦S=â¥Ô/”Íøâ¥Ô/”Ïj\>f­Ré„#Ÿ¸Ú¥Ô/”ÏjÈ9ÂÁ)ž°ZPØ]ž²¡ð{;ò¥ÓG?qµJãi*D2'®,Z‘Üß•uêMÙ{_B< éHÓAî¯R4Ð{«Ô†Ì{5s\VŸTó^‚lÈW¥" ±5Ê=š”= >B8`+Òd/ÄÓ6 ÛsЯJFñòqñ 33´å…efصšÖèNûŸU9ýž+̰ÚY©­T¼ n jHsäÏOkßÄÞ»ü²¬=§©»Œ– pž¦†)–ê&Wú„Ð-æ?Àu>¢®Ð-ö}>H:ýXt€`úŸ(\l:PŸA3 Ê¢>ÕöˆYßÕŸŸˆ‹N£²2ÌfãË¢†°é‰A{ð,ãqÚÚzwÝÐ-fÎûº8^Þ[U>o#Ì Ðn¬P‚ ÕŒ!»jc\Ä9Å 0ƧyŒN!0< Ã&àÞè1²ÿ_l’˜_ucuðb…þÝênl$q5§èÀñÞÛ^qîYFÿŽxJXÂ[{A"EÞ^‘XAqˆ…NÒQ3Mèˆ``Å‘ ¬QXð¸ðPÍ­k& #X š‹‹?]ÎSÂ÷» Œ7²ƒpÂæ§@BùcÕ¡ 6WŽÈš°Ôì»\ Ð!ÆVyxÚPÃBî£PÅêÛ(–Ì Ý[DÙ#dP¡>̶Þv!]¥ƒ¯(9ûÌÀ€18Døðç1â] ›é!`Ó•›…›¨…øYgeÒô±Ð)— ‰V†L¨†&"M¯8´_Йƒ|Úðc|T¨¡8ZÒ'‚¼)J&"½QcƒfûÊNh."ÍÎ1™‹¼1P b” Pü%7±<¬ÐixئÇÚ«8 Êºås$0 ××!³„H\I3ml„Z(`HŽYú¶ÄgÐ\ðH“œäÊ(õ‚@™s!TJé€ ¢£'Dù)±ÈåZˆAÃÄV´ù¹Än}›ã0xˆ=D—°C@ñ7ØûJmà‘Ï¢€à¶ùÞ5Ê>m ¶á>ˆ@dÚ1O×ñÁºÇ+ Pš€Döý‰î¸ ŠçÁʳ*Cñ¾}K|uÑ Ì{1Ga…–WòEÓ´E±FÃŒM‰ÁÈY ®¬H–³-5A0³…ìó¿GÅ0 / +ËÈ¥Â<Z“Œ†v“…GÄjζï!®ÈšÁ‚ÅÀHƒyø˜/m—ŸH.%Tqu:-UŽF$!üiž¡hŘî4mEÃXR–ÓÉý!ÀŽœL…O››ë{! â×>Ÿ‘r›Åžœ¦öÏGg²Ø©Ô¼ƒÀS0ZÅ \;äq¯(CUâ[b D7ãøX„ºAô¡Fljî_Âû¡þʉhBa3$cÅæ|‡vݵ v†5B|&@²h FMÔHÈ 0ö(€è3}üp|îBš0¾Ó€@Ät3¿,§40ä²s†¶„0fbq¹©É½ˆAÂH7›L˜m“'“Ñ?ž \))¨[Ÿí q…™¸Ã"1Ò †4îÀ`°âA€‹ bf0{€` 0fxs£°±™q p0ņØñ ûSÔÅÏPÎá)!òYx2 À A&‚˜¹4ò?ðSÈ?Œ% »ÜfÒžÆ@ì÷óñüóaì#šaw+(SðÀ7^wÿEÝi MòpÝæMWáļ\!øvzF›VóvŽÌ!±u€´3ÜÆd›ÿê#¬¢/úê ls9X5÷r—Qg¡.3R°‰ÌÈUØ©xrO® ¤Ô-6Ì©xð¾`¥ï¥Ú÷‚y±‰ÊÍûÁJ|ÏB\f¥>g¡.3Wùž…cz¿Ìç`Ò¦¯s9Ø4Ú«Û"sº»RþLúõ&ÛMKE'OŠ^œ2‡¨«Û"sº»W¹ž…bÊöÙ›…ÕÒ“cð+©),0_\º’ÃõÃ),0ßV½ÊM rkÔW´ú¬J“>z„T–vw× êo7WjM‡À¯PA…Ïy¼×}OB±ÁI`×e}r¡áäú¬VÿW¡Œ,-6œ«x©PÈ{¬ðÞ´Ý[è´…öšÛ ©PÈ ëY¬'-+]pµö Ý}@VkC:á\ LôßЏž¶Äâ°*Ýj`%[ ˇ'_Ô0ÓˆH8ÇâÃsä|A— ‡â˳âIÌý §úª«!ŽÝ;¤BPÙ¼EqXø‚X‡äKÊÀ†â[ŒÔÄ·¬*ÎcY¬*ÎGU‡§É,±M‡Þö6ŽPÅŠ<¾::Ëó t8Óó‹”ø^%ua¡žJ¥¥® ê¶xG¥aÄÑ׆•V<“ ÷æF)ÍG Ȭ …‰€½ˆ{ÌôJ(O¤ ºBa*}V9Y,ý¸jRöWä‰&šîÒ5 OJžÖ‚ðR!ßSiò Ô¸P|ûl G7çEUy1±I…y/°ª° lXÜüÑ3päÖE :úz ¥ê®Bî¦ì¬.Gµ…Èöˆ"a¿€:UZåFU(€ Aë àO|¼1³ ž‚ À€h(dÑfÑÉë8¦Á4ìÆ®‰›¹°€vÐcëˆDˆ=œM³g‡JÔíí»iK0 È¢ f© :.oºmäâžµ€€@´pZ4ÖF òh!Hç r€xf5%"Ö×ÌE À(@R@ K20˜ do™j•dÆû^Ó…±LíêÇÂ!Gµ‡Ð½æµk˜â,ïe^ƒ¨„\lè G˜ôŠ$@&XIå7bù/ì«­‰Ú-´½ÙŽ¡RSŠ@ñæ=4F® Ú2y¬rh 4Š™ˆÄ"`¯ùˆ$£Ð2\ À+NëÑPÒ`XN¡ « ÑBØXÂ1ø‚dA‰3_ QÄå<¢dÓ`½‰;”Œ$Ÿ Å2]“QÅBàí¶§D£ü™±[+P£!{ú?a»¤}±ùp‡Â$„¦€$YØà"ö?†zIDö@€i5á…ô-S´~¶rÅ—7Ï^/Œ?¤,§È)V“‹L9Âöj«dËkI–Hëà8þ >¥¢šSg÷x€°X–€Äÿ¢ìC ¹S cÄÚ±! <—˜²mູdnNÑÂdâ Píÿ, £ü@­`È× ^úØ/ú÷©{jftK%/mΧ æ¥ï¥‚ïr—Qg¡X®(ê}ye+jfjüÖC+MŸ ©XðxRžØœ¬¬T§Ìô+ÅO¯,šñ™5áI¨Zm™R¡?ÃúO619Y¿x)O™èV*Sæzã5ls9Ø4ò÷¦›œìÛ¬SM„NvmÖ)¦Â';6ëÓa›uŠ•¶¦~rŠ•„fuŽ N›ë¥+IÓ씜9=þ+Ë"s6T!нÌô+W¶Äåut´_])0À=‚úŽêN0 öã5%†;ê×¹j„ÍtîgÕc5&2ÀW¥'a‰¿~r_S~šÁ˜¨,Y‰î‚½ÔÝ…rÊ\#`»—»MõÇ™p‚êãÇÐô+ ‡t,÷W)P¿Ö§¡]!ä/´×̤8a`¯Õ…ƒ;*õ¨xŽËϱZ‡ŠÏey?…y 7•€s÷á`œ«è2á•ÐÆ9ÃӠˆCñ Ì¿Oõ fIöZh² Ê©þ¢‡ðˆáãÂ8ž&°6Ôv°/ÀýÕN†ð;Ûáa{²Ù”è{¶É"Vy´ÃæJl+WlŒâ§Â®”ãÁO…kàÂ0*!…óæ£ˆµL‡›=„ˆ)ÐÆš®¸Ï„ê»p˜_U»!Œ±©½ O_dë}fë½ÜmÍ]ÆÈ¸} sÖ¨'Š<§?³Æ"ªf q+æD*µ()0ºÍ«cb• …yHbWˆGk¤µËÏé¾À°þt0š«iž†ŠD:NgÎ ðºA–É­P\ ÉË ‰‚3þpÔ?ƒºuSC0Ï$ˆ ÿ%€pô„T˜ÙTs@˜ ,±¼¶JHf4¶ÔPÐø/=‹&4&_Éè}WzšñíÞßá˜ãw´7j’<,‰"$Ð’Ñ4# _J’FX³öNF1y, »‚Ø÷Œ„àPÄð̼}Wã± |v&¨^S/Øü“>MyQN xþ Œ‚Ñ“C_©¼v!† ±wÕªDf}„ãxĨÙü:‰D2ý’Dq8(A\«üTD§£ìô¥o©«B•¶¶š½J»¡8ã%(ëèwº—QºM6“çÌ”¼a¥¦®R±à >I<ØÄä=ö¥=±9YX©O™èKŒÔ§ÌõY¦›œìÛ¬SM„NvmÖ)¦Â';6ëÓa›uŠ•¶¦~rŠ•„fuŽ V™Ö8)@bj ¥aÉ:}’a°‰Ä×€êöȜW¹ž…b¯`ñ8 󂓺e't¤6C+ë&á,Ms’Ù8›ªÌÖé‰À]Vä¤ì2¾ÿ™¬“]õèW…&…õšÕMTWÜÝ…OIJаU;ö›«ŸÅÖ èÙÔ÷üWÁŽÝ¦úã̸BÁ}sæ]§_‹~ÓvUöoÁA¸rUäÖÖqZëk8¬šÅ\ÄÌÊ®NXø™zòP½p§ð°óït0âµ@°~êPuç*(cj[°†3µ—gÅ—gÄpƒ‘oHá#"þѾíˆüGз¥IÖDV+ˆSÅ`Nè§ÒÀÚ;PX]c5…Q‘èê¦C?Ës¬ (ôbΰzÒPÈÂ8)𫥸Â0SaCžÀ1u2¥‡Y:ýÛCEN„¼W 0ÄD0W—‰Ÿ ¬´dqà“Ã_¨«í¸Äˆ¼/£ï'µ8éÙí Dލh@ÄŽ¡Æ?쒈ʂ¥B¡^R\*ÈÃCŽ®{Ø`°ë9`À!]^N&,ß¡í`ïÐ÷ºÀ'[¡ˆ ¯ Ð+ @˜‰†þA‰W–܉`MȦM`ŽJ( ‚¿&¦³n…¹a8h˜dÈïqNÐxæÎ™ƒ£Z^† op³40Âïuëø%¢S°›ý ‰ne["»@Îr,`LÔ @v([ Ä4€Gá <ư—Ø€DB±}6d a  p'Gz¦¼&Þ>FÆ÷;·î' u/!´GË3Á(Þ6;¸@6»C+V`ÍÀ;QцËçeNnÈ¢™‚ã‡Hítã)º9³ýÄyIWÖσ•fT†8‹¨˜B0Ë,0@e;£´™Ž¸ ¤#Ö!ƒ24`ß¹]Bø°©’ò!¹#ê3ˆ/†‘¿CÈPH` 0 ¸ Óö Ëð]¡’.qL¸.L}s¢,ð˜"Dã‚ Gå‹I$³–É`ÃjŠë…y`”I'ýZûL Ãä‹ pQT\¨TE`„‰0dfXz…ŠB˜…8—(ô8ÍAátP…í45iÌàB6ÛrŒ–HcÆüÄÇ(ë‹ÿ­CkLˆ“žþÓØ„"s&µD¼¼ÔïB$X"@(˜²màŽy·â$p, €Hp‰ÿôYÍbY:Z³ËT€šË †À0d pIµ)s*QyGÌíúŽì òõ ‹\hŸÎ­ÿ81ÿœ¥ßÃÁ¢$ñjTŠ}í×Kÿ0À9õ* =úR7ÔʯR¶ÔÄí””¬a žý)G]”¨c©”*!Hmº•ŒNBUŠ”öDçe`¥Côñ†ËÔ;5yR¶ÐN°O5ÇÀñvÊSÛ••Š”öDçe`šg²:Ÿ](nΞ”¬`2¬ÍxüO619}©OlNVV*Vç¡X©[ž…b¥=‘9ÙX)XDæe·X¦›œìÛ¬T­µ3ó”T¬ 33¬pLi‰3¬TŒ95”¬9'O²L69ׄÓa›uŠ”ùž„¸Í<ØÄåfýà¥cÀ|’q±‰ÀW$:‘Œª*FÃÝb˜Èrk¥í>«¤ãÀ®”†wÝ÷%õƼb·O½),ð–7×¥²'‰ª‹©0‰–m‰âk†Rိ‚Û´ß\y—X/®|ïø¯ƒ»MõÇ™6 ­5|ü©p‚êáG¼ð*õwi°VóWq7Ý[Í`9àV+PñYÃ!ö?7D¸Íf®çMÚŽÞþ!ô?z^;{ø€\M`ª«-4Yv|G9CÒ©þ£œf?Êx5ªÁ#‘Z£‡cÑè-Ýf°w w·XA`t}TèqF.°½YlÅX¦CŒn‘Ï¥NxÛ‘Æ*t-k6Œ­pa6’› nõú ¦¸£îù0¦Ã¯ºNç |*ï[‹”àÙWYâ ¯Öb'«-¤Ø_¾=òóT=r†b½Vèc/÷úS¦AôDÐfD8¨Jà¤Â®êU‡Ç-åÊÂìÛl‚ßÂz›<&nš¦X:šäÓ²bÎüÿ@„FØÿåµjŽÍMUˆìßÒ{!ÍXŒbɵµÆ ‹MW–—· olØÉ¾žå4 ú~_!!zn_À&å|tÓ¬¶à{4ï|Lºœ;š 4õµA`NDfƒ¹Ä*Ïõ>&¾z §F6}I‘¾­×Mª}7ÉΨ!ä¾7ø`ÄV·†L ¯˜ѹù̸áxBѰ5XŠEÆ{ËÙýªï8•ˆ%Ì#ˆø]kOŠCÁÇ[Kji&¡¤•Ñ:„"E£JÐáE¦TŒeô‡¢1è`˜†±6þðHbÓ¦ à­(E¤wknÒ’Që h Öð@%€F(3±¯ˆpKœä,d“$–IîHIDàG#÷¯j'3Ô‘®<÷?ÚâŠÓsïɧ?›ˆ!2ðÎ;@T,ÎÝÈÆH"‚?·iå‚Dï"×D‹Ê9ž6HøÍw$»þîUfÔ¦‡¬PßôÅK¬ f½ë‰«ˆ­eÌýé:FÈ€¹ /¹²^|COôh72°šëàº9:# âGy%ÚÐS€LLе1”L Ø0éiÌ8Á Wþž¯ ¸˜ÚÿÛ®—þ`ÿ…"Ù/À´€#…ô€ò¥Cðs†ÊQ××½Ô¨~ž0Ù]d2´Ùú •¾‚ÆÏÊ•¿ªÀ¨˜vkó\|l¥oë®SM„u>ºR°€ÌαWY{5Šæ†‚q©'šãàx»e)í‰ÊÊÅJß×\¨ù ÌNÎÊë>𮲠çñ<ØÃAuXÚ˜ä+Ây±‰È{¿+œ¬ßµ+™JÍ%¹R·= ÅJÝÕf¥N“g>«[’k9&4äüÞI<šðšl"s5Âi°‰ÎͺÅHÜú«Š‘¹õW”óc•›÷‚‘£²q±‰Ê¼©À`*¢®»Í1äÖÐW¹ŸUŠs3À®”ƒ ññlŽMté‰À]VäfÈw_´U¦x åI¸K[•¿i¸W+X•¾x=³Û´ß\y–H…‚¨ùŠ-6 «ŽVý¦êçÄ»÷ÖÞ 5zƒpäÕëDy«Ï*ä0äûW#SXX°ñët/¾ V3Ÿ½Ð M` ¬”ËO^Ð ‰ß¥SýY*Ÿê8Úì¢ËÆcàE×Çê8H†cYùG<ÕRGòÐþ•†ÙÄoaž+ 'èíÚGQ"*K | ¦Cq¢Ü™ ür9²õ:×¹ˆ¼”øWÛäZ3N¼*ï“N§Â¯÷~N…}ýbN„ES[qxUtdÄO…VZ2F0žmÛ6ÕhÆ é7°x»íˆx‹D½Å£1‡›JÇ s6Y äÿ³2±™B—CÙÍ`ÃaY-L®!`šÍ´“ÂbÁçÏò‹­þ%ò‰`NÙ¢XJb&$¦™«êhÓxѳÓ…„‹†Ä ‘F !!~{ê†"µh>’D†-o?Å kÜÌn¾h"ÝË4ì½óXÎõ ö2·›wáÆHM7œ¸{µu¼õ€_ðÅíû–âäËÁ½¶sÀ ty¾FÍLÄmÁ 1“H×HͶ ŽA¬S(hų±B `ìIÁmfžöþÌ|%¯ú8o;¼ÿó'ðÜmvÂÓâšOPo¨ÔnZ¯’Œ€µ×›NÄc Ë `GAB]*ÄcÀ 8† ¸KIÙw‘ùéêÉÈAfOàqŠHµ…%Æ-È`D€| ¶AÄ`ˆ´I¢@,&æX ¸Y=Ä#ŒøGbÀ_˜`XˆÚ` Zç¦ÊÝœ‰%pŠþÆHTªÙ;,-¢AûpD ]ãð¨&·aox¸;ʬµÆä3²ÁÑ+%è&†ßwÂ͙М°IÒÍp› Ñ›pô<‡ÿ ºÖËFMÔ+–¡¾Œjû«àÀ K€,› ið,ä)1„Ba¡;"$q$ªgXÄðþO ÑÊà'ýÔ÷éâW]‚&?Œ€ÀSÈ ÏÔPÈhÎÂ9´{ÿ;Iéʶ-„+{yÿŒJ‡éã ”­´´ÝõÔ£®‚Uо²:™qÈR´3<SÚÃAD)G]«¦~0Õz†Bu‚y®>‹¶R·õ×*V9Ÿ])XMÔ}.h »ø¥bxT¬Kè/Ï´7Þ\&´†¦uŠê;kº‰ñÊæ€Ë¿‰ía `žla º¬ æÄð(§›ærÈO619wâ¥o©•ZÊV9Ù·JV9Ù·JVç;++žºØ©O™è{©[œ¬¬T§¶'+7í8Øøûé9¬N°N6>>úWÀe^Å×”ÆC“[A^æ}V)ÌϺ^\n¶&º –'*å8ØÀ`-5Ú‘p–&¹V:“ÕbT¢Ø ñø¬÷5·-5(èß´Ý\ø—pæ¿0–H‚¨xß´Ý\øƒ“U%z2:êw¡Í‚µ¤›M×VÞT—‰ºÊãʽ‰º§SW» ñºÑZ®F§ß¤Ø›…=IÀiÕâk à+ˆð™h™{”Ëܬ´Ñ°cé‡9Ö¨á"gå9qàÖ«G*Ý`·"©”Û2ˆÛ‹s×ȇ¿GnÊŸ´uÔ‚Àõ¡°Â])Ïè°ãÙQŽ»çaàî¡Júo"FÈ…2ç;Aˆ‚,aF£aÍO…]Ôr1e>ˆäl*d×>spM_U†ë«â]']ZúˆØ¾¯v¶w‹SòF2·C¦¨$F$‚%å¼õòo#qŸ’EDOì-Sɦ+G8Ÿœ,s—­"†A€ ³`Ël˜\6’ÆÊ†$\Œ7ç('Žþ•m`«MIoø¯§&Ûñ5mù½’'!ƒ›;ªá††6ÚO+ˆAbf¯¶Y‘Ѱ›ÆÓõ[«ûmP”¿Ûݪ@5(Xâp!DÉ9ãa6ÉÇÄ3½«ïÎ#OSã{·˜Œâا&Åß°Ù)ïbÒÐðDÑБjJ7Ä)§ÍØÝÜøL>#m€&¼´ G¶ÆH<=ƒå2  ‘9 ,h{ûQ”›0ã‘ Hɸ¤’ÜvøE˜Ü'æºÍÃä€ r“È€ †NKîM+IãpRï”@…g Ç’×:¾Ý¤˜YÄDBPƒ"H˜80LuÊÈK)›YбÆû‚™@m̶-w’£ ‚ „"lB ”?³H…æ(ñÙ|®¥žó9°À‡÷9Æý$)æ£ÚÊ´@œ8'AD0Ó1²Bc8 €Ç?^öu03;DÔðV`¼n’ƒu ¤ô.Vr–QÍ( †ECþN¡ò9ì5§ùøKO?PX/Õ—Ë.‘’ Ë’9¡ÈC!$Jʈx©8GÖèÁÈUE¥l4iCÀö¸íl†XÈùþ-bG‡écÃDÐs øa×þK¼ ö\²)΢<§–v änk…(ë©•`¥m©b¥c ÷éHßi{R²äÙW. 33ésCA8Ô[™Þˆ®(jgšê¾”¬OŠ•¾Ò¬TªaÒi°©¿O ­jfÕjê¾—4]üC-NЕ¾ò¬M€}MúxMh94SZÔͪÕÅŸ_WPV˨+eÔVÖs@eßÅ+yX$2ö¥b\ÂÁÑíJÆ'/½§›œ¾öžlbrïÅ<Ø—3®B{SÀî|'5†‚¸WÀeëÃ+Œ…UªâØ «Â¸ÈUZ˜ÈrMxL69×… ÎWYð’œÌø¨ãi ñótÃaxVÄà+’œ# ¦±V– gQÍXê}VjÓAãæêÏR¥V{šÛ–šìÕ«|ñ_˜Ùîk…"Ä×)¼Iâ­*ÌLÌÕ•r»‰´×îÊÌjk¹´×ʹ‰¾¤ƒlMÖ}¨ và kt[ ê%ç9uíÐ<aíÄÖ0i÷…›«7Vn>¢V¬=£„ra袌þûEöÁëÊÐÀŠðTØ”Dêì– b%µœ,ÄDj?ö>©Z°ô·KþZ¾°ò3µ`ö@>E^TÿVvd3e´^ ^yY 0 a&'8ØÓ•ˆÇ¾a–“¹ÈyâÞãúˆ]€3ÚïVM?æªö‰úF À ÈÔ+/›=Óo€܆3 øAmƒ‚<†A$ˆÚCLÈ–D†Üæÿ³G$¹EVÍoãtÿfϳä%üasŒ/ Û 0yR­‰_¹0%À¨!€!5„ªšŠÜ–ñüÔ<€´Ó…`©Ðl 8a´¦d9B$àmB&œDàpá u·æf7ELGRóÎ"H ëÏ·‰C6 xb×Ýæw!”Zq¯G^B»&ÿDzIý•,j¼q™T5 È„)âH¨áðk2‹‰·Y¡Æ4n‰*{ÅR$‰|ÞYÂLI$Ť ˆfˆÂ-}Î|jXÄÛ‰|Z‚£(gã£D.µ¥ƒÃ ÿ„¼Ì>·¯°„4Á¾† ‚!ð{ð€$:ÄW‹1´¸ä2~O¤HL5Ž"”â7ÇÃÈ@Èšëþ‹”­â*ãN!ñËÄKH¹bÏð8¶#·ê+“¡,¡:ÒÇÉoó ¨dž7¿ÌY ا£t¿ÆÇÖhpФAñ̶“(%›í.|¡‘Áõ?<.¡ƒ™©Y¶‚Š•¾Ò¬PÈàúŸž53M°>gC-O®³`94UÖc]«¬ÂºR±< (e›í-=©Tä,ØÔßV&´š*PÈ]3¯…ÛÀ¢…Ûæ *õ*˜t¥SË'•¦U‚i°©¿O ¦Àrh¦4š+ˆrh¨CA+Í\¹ Hzô¹ Hzô¹ HzôœÖ^@¶Êã­—@¶ë€0„Ï¿i&ß*âÈ ýùtÆC’k‘„NuáHÜú«Ê‘‰âœ®H ©-棛)æsºß¬T‹ÏŠŠq¶ë°<Ôse _•r­´ÆêÏR­´¶V{šãõ[X%îºXq3¼è¶Äñûãem |[æx|󲳚à}*ÌHLÕµr³5m\Ÿ”µ}\®D-5:’±_f·A i©!oµš¹ /© 9š³õ¹†Ü&ZOh €–Ìî²6 ×8N¹Â87QD.#öÿ¿ˆõCÐì#r8Åã‘Z¬ÄKoÅi,Dµ °ÀðpÃöjÍ´³CS±~öŒï©,Àٗ⟠þ‘q¼QÃÂ\p·g¿ëv6±N‡ç®DïS!U;"*t+±øbË »db› j­¼)ðyÔ+`î<*º±ªà03!eYù±]¯§˜î!4è‚obZ„,B Až´3}Ølôô¯árV'Ú#d<{þ%×Ú%7"fNeL'N…f§MWêž3×½¯_ٮʙ~pVsvüÃæQýE #ð´œÏ`±(2è‹ç² I¬²p$Ç#%° 6Ùc'@/=oÁb(Zt™ì˜Î8Y‹¼&v3Á ÌÞÛYù@.i¨ŽÁ™£söÞdñÔÙª '­d4…J]þöá6ØJx`ì^6Ø~Bô Í·Ëû’±ÃêÆQ^îʺ —F?´â-[˜QDÀK ×9‹ìÖ`¥(€²¹Í5vBƒ[G£ ‹²Æ*lX¢¶.ð‚ØT#˜ < `ÄRè( ` !$›5kt²À½wxæ[sRQØÁØo  8*yÒ0¾sŒL pW€"{Þö'Tì…Œ‡‚ Û®¸ìÞ«Ø` ,ô›L7 ˜'F¸åÛÌð䄨 ˜·“Wk Æ-ƒµ†TQH‹·Y~‰ìî©÷8êú‡ùUü*¹žY µŸ²A€ í–2V3>‚•¸;kI((½ÏÃzV?¿èËx^µØ3ÀáØ~èò,‚mOà›@Ml€ÀDr  ìŸù”L43MÂ:k›þùoñèÊÐjgš3mp¤o´½¦¶}OÈ. 33é ¶‚¸RŽº V*VO©— ìÕŒ… OÏ(e N’ëu+'Ôʰu+É¢º€ï¤.@ÈAë+À¢žlbtûåJ¦ €8CXïí]`}:ºÀ ½l¥b[AuX…ÛÀ¢žlOÏ*SÛ ´ö¥nzër†[úéJ¦!€À Ír˜ÒgùŠcH IŸæ) 1&˜¦4€Ä™þb˜Ò™þb˜Ðrh®Í? F9×…+œìۤƃš}“M„Nu»)ÄõÒq±ð*«‹`2¯ àJªhGU jkŒá–U•À”f­½AÉ®¬R¦'*åZh<|ÝYêMøzV€ð¬õ&ü=)E°ãñYÚfn®JÐÄ×JA´ÈU2³šñú¶ÄñûãdþsV”6ˆ…ƒºŸ—be`«+;S`«ˆóW«ÂÒ€ÂjÉ 6ír%‡>÷@m\f'ìS­=úMÆ´X\Ÿi—¹DdÄnü¦ÞQuÆÀÖ¨€˜#ý ÛŽp;þ \G#™î™±±­°L¼5içÊ a Çb³C»Ñõ¦ËÉ[¥õ’aX‹3 =# ñŸ±lsáØÆcE:ÖÌ[$–ª‘‘¶ÂÖ—YcZ(ˆõmŠxQ¨ç¡Æß™Û0Fàqàå#) 06÷hPcz©½¬D_eY„ÚQçœá‘$3ylú ùÍ3&]É €A1x‰1õ4_e4D SŸó¸ÀËø˜æQ¹kšíYX'Ÿ¡V-±É¢·ìW>'G3~¸ ‹~{7P3#Xúžtl‹öÞõGŒp¬p›Úå‡Á£¡Ã¸,‚DrLfk„¾@æØ. Á€Iwék A$³’ q…­E<›,0 `M‚Ä‹Aá5"H ˆ”¯¼XVmö’ÎmÃ&™î3ï—µX (,—X S8Q'qJa‚S! B,#° Ï =Æ#„‚|£ ˈ d*ôA`Ò—hG÷r,á0.Çž'Þ*CÒ´Y<ïfÿÛó­vwÿþOø,¾Ï=¶µ>`.þo"º¶-)š[¢ãÌ'Hŧ Œä`™´`ɇˆAÐ@Á€ã G%'D†xÌ0¹€%˹&e7meíÌØ'F1¡|[&…Ê0›%€g†™“aM ¡bH9n†4v­Ú%_Âí ¶׵ÐÞ3+©^"ìÛRœÀ9ˆ46| ½02‡¶™A…?¯0¼L#~k‰F•07z›“c„T@ȱ€’KC2Ž]þ"I}èèJ{¨Ê´:Ë@âgv‘F8Á)h š r=åÊž„2†'£áJ¦)Tä2ļ¬úÜ©—ÓòY§À¢¥cm<7O6'E9©m*y »![&4€ªša°­K%#s['5< (0”NíÓ €äÑR²&¸Én™l5ÙHÄå\¡¶è ËÊ”/‰¨åsæ­¬ü©)BÓ\!JÁ\£NÓ¥;Mpžk…nSÑh~~'"e`¿çœ§ht«S·¿T]‰•˜üN`*JÀ ϺÉ3‰©Øamn…ÁY v–ª½cšdØ7+ ŸxçÒ~¢&f6Dm>Ÿ¸w÷ñ^ â<ônD\i¼-Åb´2‘­1S Æû oj ,9VË KFUºý¬8ðËG–ÀÞ.§Ÿ˜Œ/'Ãæ# Å ðüõãp¦Ãöç¾ãh„B™ ©ÚQS¡}{°ˆÍN…cѱL†þåW>Ê­¯M¶´Ï[Èiн«Í„æÃ÷Ý8’¹_ÞMH§ä¾ÀæùÇÊx;1#ÃVéÙÉRÉÊÂ'pRku,?-ÎéÐ%;f‰;f˜ iãI§ OU’øŽÍaŠ™Íø áS`ök>=ÇÎ[Ž5õ‰àn›xß_fL¤¦ÆúùªB1® <{j¡ Ÿj´„ŒØæ+ñ°“ê§1ž;Å”ÏpL>kKõ{fMÊ|eæ6È Œ‚Ñ“C_¨aì9·CŒÈìz †/#HÞ0@ˆ6‰‰ì´€„CлÌÿ€Î ì2,+r /'?³He$qš¨›ö¾ãÁún_Uœ8mR«A;\`d@Œlè1ÆyFC ÆÒø@„¢À „ìJp@v ƒ’É«X Þ÷€å –îÚ'a4 ‚/Eæ43CKdÁæ@×Hx– r7e ”úÑ¿´hªEäð–"ý¯Û,2B$à´\A„˜X Æ D¼Ä4Á…]4&S5—m PEUY‰¿ÇßÓŒ“œoÌ.B¶6ßù}°ˆFâ!$àw‰Ž‘¹¹ýEþ)§µyBz‰%{ð| Ý´~-<_•q©8Àõj†hÉ €§˜Ù2ongýhö¶‚ú«ñú2GËH@pÁžÔ !X>°hÁNÓÈGÿ¥ °š(KJ,¶ ã­e«¤ƒ(]$D€*é Ê$WIØ[ ¸\¯3€UòAÀï »![ ÎWÉh9¿Ê‘€}e’•»®”ŒKéù,ÐrXUI·SRÑ×÷Âc¢+4ã^|TP[`€ªš52©Ã$ÚK ÍH¸yýŠÜ>*92‚¾«kL_T¡©®ÛtTÕ•¦u‚”,´Õõ$öB™=+ÿ¡ÓÝx›‘2°_óÎSr&V þyÊn`*IÈ 8L@DšÑ û FBØø÷á ƒ'Úʃ¬Ü}M¼ñé6óÇ¥›¨žªÔoêú¸w÷ñ^†ÄW˜¨Žk(©±ûÞêàh~ö¦Að3ÒkbÑáP‚¢Ãö®*f£,òǺÄaYO‡ÌFŠáó´P› »#a³ÌÖúã ï¿52R:…]a`. ™ }Ùo§e2Ëî‘ÈÞ§z¯¯¢l/‰ªÅ:µÛ9ŠŸ û©ŒÊzKû¼7T [aú10âIéÙ´Îcƒó‘lñÀ)ÆÀíênØ™›«¢–^Oª¸'0ó€ÃÎNóãóæ…ÙɺìÙ›3Õ[2e1Ž= J™÷ó{šÆ¡!O©ˆ‚cÍU¦b`xÙU”›5M•„:;¿ÅåOìjÏ•27Û¦"᡽0ùŽÐòå0øˆÁ6§h¾­AfÇ&¨Ú‚ŒÀÝk˜BÐî2¨á÷{+ÀϤ:Ûãq;_Ú‘xÒ_‘7Vu¶%°H@@j–åqˆÆ“€x‡2Š8SZ/Ae“ 0’}ÆXiG9ÉW!`¸€'tXrƒ!¯XÌ™)Ѱýû)ãƒeǨÞ0u‚Àͤ÷ µ@ˆ€›f8ßð¢ÓDlpE·LçË ?ûh|¡ݲ»YVêvtî#ÖdЈ\77 V\ð„\a°—ÞBTÞö¼¡Œ|{êÔ11¾Ùüó“ (ÛU Qt°,Ù™ÎÜ/WŒ®âªxãëDg~ üA$Iÿ#V¼ƒb™€Î}_DÕ ¦à0B¡;Þ‘€ ²æ,€àó&/s™‹ÈCý”¹¿ºãÀÿ|hÊ !3# ¢a&ô¥ÌüéJ3裃›ÉÛõBŽŽ\¡±óíþVR·ˆ«ŒcœJÒ?Èþ„~!-Lv- ¶nh®§y†Èe‰àQA-Lv2À>¦ŠØ *Hy 6÷D2ľ߅¢`vlÈZ!}H¸~¡–o ü(e™;~2ÈÿPËÉ¢…´V˨+d<+tÔŸË"wýC,ŸSúP¶ƒ“Eh­]€² °¶AÉ*t©m(¡}HØQC(bz>ËSë¤2”ŸÖ±e)?­bÊRZÄ!”¤þµˆC)Iýk†[žºC-ýt†X—ÛÛ!–O¿§!–ç®Ëñ»èSÅ:Ôµo àV0ØM+w]'À¢œð0¾l‚ÛTÔtMfvP1'Šs’½€0¬”|Md7C3t”55ÛteåJ¼× €ÔsVÖ™e÷Ò”Ìë( Ö)Ì…2z&^Oª½=+1NDËÍV`0N@YÂb$ò­Lp»ß„ÈCŠÉŽ~¿P#!ÐN´÷égÁ–'ÚÀò°¹>Ñ V¢v1àÖ¨6†œeûÊ'dj®A¹Ž]zez5å_n+â¾Ð‹3¬ŠÞ°Øj¬S¡˜õY)ôEÇ’¢Ñò®*|>b0¼PŸ˜Œ/'Ã×áã…6Ö¢ËÅòAŒ*Ídûªm#>û" mS!Ç]^âÕÖ¾Ë-ç2Ûo‚›¯Ç`U.Nº. |/ï+ìašr{{°žS¢c¼äžP XS߆fÀW Žža‰¯kc’}TØ)ñû€ÂóF|zÐ\¦Œ#õÉ•êdj¤5*ly¬ØZ¦F¬¨Æó)ñ²¯«ä1+žÆbP¢Õë^^27̵Jˆ §öçuNà¦f·‰Î7[‚mó[ã_ —Í« îú¨xÎïÔ1pä½ÇáI‘ €[{;=:0q¬ o«íØq4yŠ,‰=ÈÉíûÝpKaóJ À?‡¢·Ô(eë]ƒýçôu­¤$§ ìpø„NAH4\Œd‰`˜KR€'I8˜1$ˆH(aÚUô¸oªŽ Á ÁÚBã< a ÃEÉ…·cüaŸGQYŒéûœÔ¤p LÑb –?ûUJ, è‹—TÙ¹=²ºÄà›ÔËÏgû”˜ Ð…ÄW” I.'•ÖÛ’ CΑTu–ÞöŠÊ›ÞÖ’B6Ѷ«b^ áæj­´Ù¢ƒ®ÓñŲ ÿ!ƒ3ð0#ŽQû·ÐI¯èe™;}e‘;ü(e—&>Ðî²€­¾¤ýC,ßo†Y“·àC,‰ßô †ƒ˜ »+d©·Bí ž2ÍöüC,I;~!”/>„2ÈÿB` ßõ ²}ÿPÃ@l‚áp¼ › €õá@VÈ2‰UÒAvVÈ&Âà=xAp¸^]€²Ð[ }Hµ' ¯@l´Ó –ãW”=½tÛÅ: âXV¡r Z:l—ÇéAÛ¿A%«WA„+'RÌÕ–3: ©)Bèš8¡¶ø Ï”.Ÿ{”6è*­R¦¸Á[X%X!ƒÚe—ßI¦™ÖT€7òSºpà'é9€äá ci‚µ;{@Œ¥Â'ý~  BñÛßÄfôÉ…ÃdÄȈ¼n–uá°cé¹ò‰ÀÕŸˆ D*\Ä\gõMmA® šÚŠð§°…¢¿_ˆXXmÖÐS¡{‹ñ”V¥Ç£]…qøn8Vs ÝGnøUÇa£2vcœd¦z¿£n7©õ„r‘Â0SüUÏÄTÚÁ½±¸©Õæ¤oS¡}‚‡I6Ïiu¥ê|/ÖÝ­äÁ‚qặ ¦ÂÿìsC2 .ú<ð†Ã8_u‚y§Õ°2¬F 2I©?Ùà˽CŠù ½Nç¬&u*dj¤5*ly¬Ÿ`¦Æ¾~¹‚=ÏžnWêK˜_: ØJniר^"Ð1ç-ºÉØÉ—íù&}¯)·¸öïІ)§ÍÄ]îtÃä)‹ÀK°¿Ô3mb/΢†æ8¿`Á }è<%0lŸ6&d1«Œxÿm6mBÞÖ肀̯뤱±*iª­™’Z퀠‹¨²:O°vºó]Hé „†€ˆ7+8¤.løg,W%cÛ^?f†&>gÏdâ €À B…XPXa…í(Mó‡”B-)”Yk«5¸S$vWøe³Â_ýH©"˜‚gÃ+ÄÞñHvNî!É3–Y [-¢¢‹p+ÃXÂÖøð¸„,@%fhãÂ5KÈù+Ý %¥çƈa8F­ìA„äýÂÆ¨nm¥±´VȘ@03OǶ¹YÈ(ïÃØIùp‰ŠÿêÿÍp˵]IŒcÒOÀÍgÆÕöDº„-ÏÀ´«`D¸½=ø“€vxJÖgþ‹ôó´LP\ÈJˆˆ;–xO4‡å.òsõd¼Uóö°~ÿô‘ܘè÷ dðßþÿþÈÏÄPKSפ2Ë“hlÈ?žÄgÀ´ÔŸË'ßõÄþj†ËZ¡–| (;>мü!³ ¬$ Ý ³}¿Ë2vüe€'Ô2Éõ?¥ Ùð Ñ ³}¿ËN߈e©<üC,;þ¡–O©ý([@Ç8}@Ú+dÀ+Dap¼ ºÒ­PËû~!–$¿Ë2vüC,I;~!‰Ô? ‡Èúðò'oÄ2Ì¿Ëû~!–o·âCGÂb_ix]±/·âKiN‚x+tÀ0­ÐsN‡ƒ÷䄨—ÒßRÚ[X!™Ò¸@Ä`9—1A!ys—àC3¥p¢p}PC3 ÍÔap¯¨`÷¨ÀX'X”6è*­R†ý¡‹Ø%ŸÏHm¾*ðššdÀDö¤XÕŠ@Šb=”Æv”ÔLìÁ;.OÊÅ` "q<}@<BùÐ{ý@oá‰'DÆã±D0h› ‘; ç^‘¼+éÊ8[õʶW¡÷û©+ùØj·Wð6 o%>´_\ù½ÐÝ…OÄÞEø÷ÌÖç{©1T»OYáÄYM:êŽc‘±™ú#Ñó²™êîÄŽ)ðjë‘jŸ Ç/pSaùãã…:Øþd8÷>óI𿮀ëÂúÊÜf`Ï:3Ð(0YwÃà'ÄÚ`D "pl©¹60QJ [¬›ÏdèÛZÜ$-’›¨>lØáïAvñ‚™gtªm6 ú¦ÒÙê¾ZرªÚÆ"tFõ}E6ñåëÛZêfí´!f(QŽqÔ½!Âeî5¸Ç” ù޾“NìgVHcV=‚‡¨>Ê.„._wŒnß$å~¡ÁºÑ@4ŠH'?³he$qš¨Š21s ²5JäP€neZ˜]ƒ8EH@|›žŽOÏÙÄ ca2ÀÊ’H@Ç–^Í4±T{t äœgUe¨NÕ°ÆÑ>e# ¦â ‘Ö§ÃVYpÁg®vÑǺ‘g)°ƒdp3ˆ:µa\àŒL 23*þ _±¾‚4¡,Î}d™öG? g{:X!MŸŸ³;ø›Ä;¶HÐN<Ú!+Ø Rç‹,˜bx…!C5‚ZdãYË(Aðß4ÁÃiäØ P€A«a,N(‹ÎËm™ÉÑŽc£ ‰^÷„7YBþ+‚Da¶:ÅÂ!Z¸s·D*Á¶ÎÕËXl ÿaÿÿ£Ø)8ï{Úéâ­[~¹l,;ˆÙ³«(Óÿö\¢k•G89Ýt)Ç]Ì a“naüóaj¶0 b-€q•ù7?Q–ßÉd’½†éA?ÈŸ †ËX Ù œÈØGÚ fO]!–Dïú‡€l‡g·C,øPKS×­PË"wýA$ìÖß(b(Â>ÐËN߈e©<üC,ŸÔ<¹üŠ HVlƒG Vèy[¡–o·â±‘ò‡ÃrßP6€ ÙÛ9@@ú+t>ú„ÃV½2ÍöüC,ÉÛñ†­K{(e l0æ|¡àHÀpô´VÈ@l´VÈÀpô…šÃï(e€}`þJÐ[ m² BCšt2É÷ýCróèøC+\¾Óðõ-[¡™Ò¸Aƒk/hx¸>ÐvïâKV®‚9­vïâKVè"¼ºbOÏhb.à÷¢=æ¹t @¸>¿¥ÐÁï•T”¡iaÒ X:Båîó]!·j«P°{O„,ÓâºM32ʪjØéï×âz&C”'ɹ“±0”@ÎúöÈÇ:òé€ú ,ÚÜ;ûø‰ ŽÂ#d05í9óùÂfq±Lâ6Žë5ð=ì)°l.7åR*t3o"³µN¶ÿc+T燻ñ{}Êd*ѬÇS7ž€ôx½N‡rõâÕ: ]x3SkÖvÄj› àÝÁ±Na°ûN“5¦p/S¡^=ÌÁO…õ|ei60NI}]°&*…n< “€1A°Öw™'þ)ú83ÌÌʼnIl«™A:8Ö[ÜÁOxF­²®ëI–UÜBm­®0OÍ2*þo dkˆŸ)>™¶çe +­Ätê}ák­]aáIЈæ°BH¾ À@BǾ㻟HsÃW`Š쯥ø@]2 C½¹¨Ç žÑCµ0,ô6¥Íç`$øËúbÆãÚ‘*5œlX†w¥‹§70x±^€P«P€1…þ½þ ‡°”kðÜD_;~°à€. 1 öƒ=pŸ`ÂÞ:¦ï§=?.)_-ÿ¡-…}»oá7ùcräpš˜¶ØM“aâ“¥I ôš³µ%¶ !°nm@Haô¸>jX_}ÖÏ)’2Ñ¥1FIŠm9‰ÊØ¡RJëLå,5VpøtÙX˜]÷”}PBtaY?¯OŽyYæé:mxâd΀¼sجlD`$Á"ŽîŠ>+«±Ÿ 1Í··|÷Ô⩇”b¼U„´àÿÁÇIõå²×~S`§!¦oþNŽy=9_ÌP0 ÿÄIb jŽF#ü|Ÿˆe™;~!–ÿPðçò(l²·CFö†X’|úC,‰ßõ ²rßPX0XÌðËOŸhe«vö‡€l‚``(y VèeH1C,I;~+:ö†XwýA\9%ê@­ÐòÇ´2Õ³zC,ÉÛñ‘óéY×´2À¿êdûþ¡–­ÛÚ—Oø+tø+t©·@ú+t©·@ú+t©·A¢XŠí7‹r¦ÞÛ—+=WµóÀÝMºò_}©—yÅALù6ðnS*ˆ06µÊt(zÔ±š™×[=±)°¾²l$pSáǘn“aX°å:Šp/N¼/¬Oàƒ•>Ô<Á¢T/«öð‚û@r„4Oã=NÁ‹2™¼ÄIC1¶«ÌÄÈÕYÛ6/­_AÀiâjÔ®*nk¾é‹ Ú/8X§7+à’é—Ím€šÀ n2B ÄшÓÖ(H1µ6C‰xÜ…˜CîÉ_VjŽà¢Nß‹\ý2Q32yþÄ·\Ø|Ò‚pðìÈäÁ@"T‰SÑNœín¶A(~ŒVt¯ró»3–ÄÒÞ'”`‘#Q$”79È{òØj¦»aÖ¸Nq`Zð×xP“!˜/9«ÐDÑb-¼¡³ó}bHM¦"½“Îæ®ïè´%FÌ<3à“ñ¯ëb€HŒÄNVN 4&-hÆ™1ì!«ÔW↦Kƒé 0ÀAÁ¥xúa—¤@Ù¢{ò„¸`Ì"­­:Ô!¬¿(!¹cŒat‹!í}]Æèêm¹ã‡H“J0ü( VÆÐ(iþÊúmd­äúXëþ4ž”‘6€Ÿ>‘Ùp†ÇÂlNÎAÒ(‰Òèœz–_ï÷áÍôPË.M6ZÀVÈy[¡–$‡°†X|ûC*EŠ HVl†8n£j@ƒÁ<€‡€l‚``,‡’n¬Ò †X’vüVuí ²}ÿUœ m²s†C,ßoÄ>GÏ¥g^ÐË"wýC-[·µg'HxVÈ@l‚x0ò¬ÒÄ&´ è¡–o·âb_oÄ2Ä“·âfN߈e™;~!–%öüC,ßoÄ2ÕãÒîíò'oÄ2ľ߈$öú ž%«ukNÐ6«d2À?Pù$u¢fûQ@ã3éNMT\sY”ŸˆbN ¿â 5í ΕÂ…Ñ9ÏÊ+„šÍ ΕÂhbƒªb÷Jªh`÷ʪHX=ñÒÊÅ LMT] LMT] M2©è›$€$°@<›ÑWú@*ÍL;KU^µµôËlœ³¯Ž"ªÔNÈñ[¢,#Bˆ™CÇÄlˆ#1SV£oUÄ­FÞ½QžD­eJSÃ^ƹüSÍ¢c Ü/‰» ÍMç}v§¾±ØŠÒj{ëÑÚŸQôG»”Ø~[;A•Ù©Ÿ.éoNÙ„ìxLÙr,ù ˜ßËDø1¼e•zCܹæ(ÄB˜€”oÃ]‘&Nk‚û(þÊŒ þÊ\j0©“å¥<"¡Á†ƒ—*C—˜#ð·´q8CHO”PAh)È?úD˜ö…ål ³ñ@ƒÿ$󥜀˜è|¡²B²BíH1A-IäzC,ŸÔ0È[ ²N@¬Ë' õ ±$ì=…g^ÐCAË”1À+uf–!–$¿whe“ïú¬äéh­•¦Ã´©·]Ý¡–Ÿ>ÐË'ßõYÉÒVÈðVÊÖ wÄåê@­ÐòǵÝÚîíwv†XwýC,‰ßõ ²'Ô2ÈÿPË"wýCäwk»µg'He€}ÿPð'wö»»C¸¾ÇÐQS)5QS“UÃÐ.î]‘òBbKxCpmÿváü¡„¦wCHl‚Ù IÁ·üC¼ù>”ç*ð†_Úúí Ε cZ2 >öÈuP@änP9”7Éäø“?IÀŸ¯áÈ™y@/àÍài}'XzöŽ×Û&"a‘Ì"bQóõ Ñâ E1+Eßc´7w)·ÄîBqÁÖ5’kÂá®-^P¬3´· £n¡çaé0,³í²„ìþЄܔ2=ƒÏ¶ÒC¡Ä’78É‚ W,@P¹zô|ñ¤{i¨ÿYpâ$× Ï2$¸$Á´d1¶–ÍÉÅ^8´³ØL ¢’@šrHfÐ{8ÉÛ$Ày‰Ö¬ƒ7€bÅŽ óÒô$šó˜`r&54nYò®9D6c?D°‘øÍÂÿ±cÉž½°ªF÷ ùlN]´j,1y€ñv¶ÞË ¿P(»X -ÀåïêD ²5ÆH<¯m]œdxfLõÚ x&mûm¹‹ ƒxwg“[ù`Aœ"ݽE2!"ð1žÛ£àóï!¡ ïÛø1¹ëgÛºŒP"þeÒã¸ÿÙ¡ÄûZ*°€À0ÎÒµ6À)Øþô­æíN‡ð}Ñ`H‡ÉËý$eï)WÜz–_ï÷á÷gø‚Oy;aXÁü‘Ú³“–AdØY¡Žd Ý ³}€ô»»C,‰Üú*ÎN°³!–dì=…ÝÚ` Üú*ÎNà l­iÚÔ[«9:Qµ R •g'Ha¶P>«Zvõ VêÎN•œ+4± ³}¿ËVííYÉÒ³“¥g'JÎN•œ+9:Vrt¬äéYÉÒ à¶@ÚñéYÉÒ³K;¹¨÷pIVrt¥'ò­é\+4±°ô¨õx$©IƼ©ôì íËøR“UÀ#²”çé F¦A IjÝq~v†âÛ~¡€_ßêŒ:C¸sN†gJá þ¨¡ƒß^ÐÁïêŠHb÷@g^P@½Ð è™X/ùüÆB¤€Cúˆ þéñD„÷DvC@þ¦"%â«a¯¿ªØkïßêq®,Vv‰cû¶lª|Ö©ÄW0 nã±e5Éçkb3»^ðWc˜˜«Zå>‡×²¦ÔD­´l¦Ô ­°î§V^Šu?è„- ek çz­Øçú™+{ÀIŽÁM…ôñË M©÷§«mfL…V€DÅ\¦õ“ÄЈ„;XòŸßYNà1Exßÿ‚ÁtíwXl‹B¾ÂÂ8·lƒNïÄ!çrÎÖ½v„0däC”œÏ²‚Ìœp÷ûü"ßödÉ 8‡öhU~pP`R1÷–ÖüL‡JâåãL€\MB&ç l…›É‡JN3¦(Î8¨Õ(Û°ÓŽ'²h˜D ñõîHNŒc–·Æy@ñFÙÔy„%̶#sÖa3‹ÖÆ6ñ QîÏK8ÁŽçKœ û¨Bö“ `Ñ\§%«ÍBl ë0h7…‡ßê"$v ?Jžd0CGˆ…è7Ä9¯æí tq¶Ç»ç~À¼¾°ûacäÒQøÙì‹jQŠ~÷2&ʽ ¿Ã¨¬~kWrWYtG)Nˆò–¥oö§…B÷£Ÿu…‡«R_ÖŠEZ‰€º'oÕ.‰˜ß;G¢¥@:ßm'éÿéaFÐÿ ΖrJ`#¯€} –ž~«9:ô‚``*ÎN½¡–dì=…ÝÚm[T àçñ@úv¦Ÿ »´2É÷#Ú³“¤ 1~­;SƒƒÕg'He™;awv¤(U­;Q/nÕœ{Vrt¬äé ³'oÅÝÚîíYÉÒ³“¤<ñéh­3à­àP@#€eAðVÈ@l¬ÒÅkNÕ­;S“Uf–+9:]ܺÔNÄ•g'JÖ©ÎUáNrì)²t‚OokNÔÙ:Rœú s—aD3v§9W„Ÿcè)ɪ‚•‹ùA* rp¯ SyRªÔ H\À ƒ r!¶ø «ÂÈ䤜1¦þA™ÃÏÊ‚³x¦ ‚$°xðÓ½{D1ü3+®öˆx7"õ0p2ôšÈÓ)ÃQÒxæ¬ú­¬05ŠÜÌW†W6Ägu_‚iöj}D{ö¦0Æ[Žøe6¡a²EM×âzðøgÝò1ÁÔú·–1ªd*ëšcP¦W…N®ìj2ÎY§Õ^CÜ-ãv;p°á½ØíY¶x.S¢ ûÄøÕ è¾5ìã2œ±¥„ ÈHÔJc®5Û¦ ¼ñqåêÔ ..%›'u¬™ƒ\j(ÒÀ»…Žfõ؉øM,þhÉs;ûw?}a/ÃûäÔq}œxpØÖ"¨ˆ²Áß6ƒ=‹Z²QH(Âp¦D¨sA(¬“, ‚3âI$’LL’‹-´÷¤ÐÂm:ÚÍÌâŃ_\]†Z‚Ôò7ÆÒ„‚µ§jÖ®Óv¤ÍÚµ§hµÃÐRfíZÓµÎK«Zv¡Ñä¥&ª(|9SäÀœ[oÕ+_%†A ŒÂ‘Ÿˆ r3@ägüÀ ÌéUbšƒQþ‰ŸŠ¬©˜‰]w¿á¨‰Z.øÆ6"Áü*`)ç¼?Ô6ïU†¾­Á⣓©€f3ºÏŽšÇZžeN„üí[ Æv|µÊm@ú2Ý0ó1ìJõ>'¡Å”øWÑcئëúÛÔÝq¾MÆ¢jtN•;/ä³ÜƒV9[ySØ_YÞlÊv ‡/dç$=OÑ&Š4cO ä°"„‡R.èaÚ8!xÀ‘,½Xð•>?\XP‰Tàïö]ñ±íA´cò=•&¤A Vf&?~h4lJ6K¼‘HGôÔ¢]U†4Ñ LÀc ÷\þzâô7s\ó¶[}ˆn{ÍËO—²æˆÁâWlrGx†…§-ƒXž`‚lN,4qÑåFlÕ ü CHŒZ²B(†^L?‚žƒ‡G˜ðÐ&ÃÜ ­¹ø»ÿK¥Þú/P‚»˜ˆq®dgâ*A‘ò6u888ýQ6g€ îí@ÙH*ÎN”§hc {ò¬äé õ#€¬äéK ®­;Sê+•g'JÍ Ë»µÝÚ±‘ò¥ÓÀ«Zv¬äëÚ³“¥g'JÆg€»»]Ý®î×wj]< µ§jÖ«Zv­iÚµ§jÖ«Zv­iÚµ§jÖ«Zv­iÚœåU‚³“¥g€ô»»^NÔ§>‚µ§jÖ«9:RfíJs®Ôç.“7jÖ©²t­iÚà7jSŸATÑNrì)N} È)†cÊ•¯‚‡`~»C°?]©ò3}£ü’9yþËÝæºþ@&:Óߥ›¨Ç/刉Z.ùã) c—¤6ïUbhñ]¡‹ßxC ÅN‰V!ð*f?"§cÕxO>1Û¿x)ÇQÝd§T©n¦_•¢[‰)¾­Ü{Së‹´ü*7¸ð¦×Ôýnø°SãxgÆ*d+Lx¸§Bª&Q!M­;¡PòC‡–Zw”ðµ?òAlww~«—CßB¸`€&IrH àycÛZ‡â ßìâ‚Ëç]{¿«ÿßðÀbk|í9¤4wŒwTp6þ= »siX,³' ?vÀ‘é‰ÐÚw!M‹Ï2†‰amLÄsX Ñ@š³¸!ÚÄ0­I²ô  lÓÈtúÀñŒCM2™&â^‹£4šgù—dê‚/•ÂÆ•ä÷ßð?è»Àn÷ ´Üø8æI­ÓƒIДØÐ0‹¼Æ éµÔܱ¶ŽZÒÿ.V¾ ±‘ò§×ÉYÉÒîíXÀ-Ú³“¥.”D‹Ûµg'JÍ ÊA‘ò¬äéZÓµkNÕœ+9:S Ï…ÝÚîíH2>TºxkNÕœ+9:Vrt¬fy »µÝÚîíwv¥ª'ÓµkNÕ­;V´íZÓµkNÕ­;V´íN!ëukNÕ­;V´íDtô¬äéM“¥ÝÚ³“¥)μ+Zv­iÚ)bÎ¥&nÕ­;SéØRfíZÓµ6N•­;VqèJSŸATÑNrì)N} ÈxRµðWùÚœåØSœ» ֡خЉÿâRq¯?À0o¿ð– €0þ‡"'çù`àdÃlˆ˜9C ŠÀ¡pE£ÈC#¡ªšœ/+4¶·ÝLÀñøÅNÜem`§a‘õÒ¶†UyS/Þ"™Lõh–ã…;#êÄ5 ÈSks‘â l/ß3›ùî4¥çI÷LÛ•>¾ÍÉÉL…Mµ™é:2qô-ótŒe=L¢ÒOVφNA¾Ì*ÓÑ#â¬.oªÈ¨ù6üÛ~³‚ƒ]rL«ä.-4<%Ÿñ%´ºkƒ tÁENb“cË´ÍŠ2 (9Gº2"Ø ž}¹ жªÔÆ-'žr¶ßÔ!g²ùÏØ´ .n£ó”ºsqxD‚€ŠÐ(©_±ƒ¿ðf’{í aâüÑ©>6å@øv|Ò‰ AÆ0ÃÚ|úGe ?ÂlNÎí%PQ6Ïø·é¨¹ÆHëÿæï?ŸˆÌ­|+9:Vrt¦Ÿ »µ R$g'JÖ©õò*ÎN”Ã3áH2>Uœ+Zv­iÚ³“¥g'Ja™ð»»]Ý©GÊ—O­iÚ8¶¿â³“¥g'JÎN‘KGWwk»µÝÚ³“¥g'HùÖèŸP n‰ß n‰ß n‰ß n‰õÖè¹w…g'JÖ«Zv‰Î?jÎN‘Kpý.îדµ0V´íNrì)Î]…6N•œ;Úµ§kÁÒ( oÚ8‘ƒíú¢Ô8,­iÚðxJs¯ ¦Šs—aJsè)CÂ& Ûx.oÞ”ç.œåØV´íNrì)†cÏñÍù×ô ÒªÏêx8˜žURþÁŒÿb÷×ÝPÈèj¦†/|꤅‹ßåNxC¸×,¢x}P;àkt ]íq89åw IÎGhÊŒÜ)ÛvX†ÕÂA§à•7É…ZO¿©SÒSáÄ¿)tÚÒù0ÔÍL…õ©…ì&ïC>|‡³~q½ 6Ü8)Áȃìq½x°´ñ31ÂÀ³¤X»õ±Äèù¸ômøÿ²¤X×Bp¹óÙB耉f¸ dõóÄ£KY‘¢cÆŠ DžòÕ!ÑdÉ&$—€vöµ‚ÆxšÞNÁ E㈃Ë'âM¨ÌÀÎEóö P Ik¢9KþOR1««>Å¡À‘³€–3—M¿ÐûDo¢ÃAË’€›¦hw¬°q` ?»{Qg‡ŽÈ ‚ÑjDKÏþ–Ac Õ`_øWnõ뜻 lƒÈVrt»»]Ý«9:RƒƒŸÅkNÔúùg'Ja™ð¤*ÎN•­;V´íYÉÒ³“¥ R ÝÚîíwv¥ÐpêÖ«ZvŽ9keg'JÎN•œ#–ÛÚ9`Hßõwv¬äéYÉÒ³“¥g'JÎN•œ+9:Vrt¬äé´xô‰õ[¨©‚³“¤{ƒl=…ÝÚ>M¹ôUšX¥"ª r*¢¬ÒÅf–#mDnHRœý)ȼ¢éÃyRœý)ôôŠÝNr¯(ÛQ’­;G»¢¹‡Þ‘ÀŒ_Å"­Sf V¾ =Á»éO˜G0}¿Qî ßH@ŒÇð{ wßôJ×Ïõƒ6®?€bqŠF¼èˆpEè#·Ä0{¿Èé\¡‰Ç¨` Ýþ íß„.øŽGàBïˆäPC<Ÿiñåám·ò‚z¾©Ø=—G§V ^§V<‚Tß'il|ó§ÙýSáœst›ÇȹÓU>©…˜¨YoX_k;•óv²  Á}ÎT£0fÇ_ŸÕMù'ŸBnQù QuTèwñÁ{ÑLH3˜x~G-E¤ˆZSgøE»“ÜÄ@+$Ï4Iº&·.R4à­àUÔDDúÑc+<0´ó9!dbGã˜`oCL¢6‡'#cBçàg ‘ÌàÈ 9h)ÔƒÒ3Ä]T Qˆ/OüýÉzë;û´¸ÿtðÂ" °4´ }ˆd´48@VS1Ê$ãœfZˆüS¶‡ïØÅ[ ™,×ÓÿŠ¢ÖÛäñ»ÎQq æýÄhD Î]…6Aä+9:]Ý®îÕœ#ƒ`;~«Zv§×È«9:FÍ£pd|«9:Dà›À;ºµ§jMÄv¬äéYÉÒ6m€wk»µ&‡Ê'|@5ºµ§jÖ¢gÀƒåÙYÉÒ³“¥g'JÎN‘ù>‘ËF߈åˆ#oÄrÄ6߈åˆm¿ËÛ~#–DmøŒì#@þ‚îíwvŽZ{öTéV˜ñ*o\Òõ>Ó[X ä5lÏ‚Êv§ïªk±ÒyŸ¼( m/é8!¾®Û[ÁZS üT“4‘1RŒq?•,àÑ­o^BPЗ‚°Ñ’¹ñ¦$’Ã"&"‰€Î-ˆ¤v( dcÔŸ’Q»%BH9 I$¡AmK¨`Õøç+Ù,döÉ¼Ùøá$QJF:Xƒ8`â`tˆ:gj!QR¡z¿˜Ç<&ùá$ž¡œ BÀVE .A•I3"Ùð«Â¨˜ NߨÃhyDÄŒk.PߌË_ÿô‡ø >5P¾Š Î]„QÙ½«9:]Ý®îÕœ+9:V´í@I¹»Vrt¬äé[Áü‚¬äéYÉÒˆ{v­iÚ&'•g'JÎN•šE‘ËFÿªA‘ò¬äéYÉ×´O¨·EŠ·¥xDç1è¢äÜ·„p#ßñsQ@`{tq#ÛõÒ–ÎÞäUEHáÈG1­pŽÚ:’8ŒkÒœŠ¨£†F»R*P@À@Ȍ ätþ@7£pÂâ×þÿº½ÿů¯šÿ]zþ%ô‰ŽgÊ™Ÿ˜ bÍ÷Š !K‘ùÚŸOh dcÈCc?¡ž!öüC<@;~!ž`ïô ²ˆüA8ÚFÇá ôØÁ”îo2™ãqqíLxÏoÂ]N—çáÝM•µÁߦþ‡ý'h(9ra°sWM1°dý/#3ò¯(vLôSÂàÝY¤mA¦ëęċ=e;`dÐòã¬ûêÓi')i¶ªWº‚G†½Z4æÀ“ 6§r0‘ÆÈ ”ô÷ügŠTÀ”«ÔÚl„ÍöÓÛ‰„ ‚ûx'ÜœÁ‚C¸{à­Ô€`AæK·SŸü-²@®û¬0À¥ØˆŸåê ûIîñø‚#¡aÜp=£f`’И+ÉËÉdC@ f¢$îù°~ÿÆcrjA#Øì!US¬óLîs—aMy ÎN•Œ ðý®îÔM‘à€¬äéK ®U­;DÇ" ³“¥0ÌøG,ˆØú Í,Vrt‰õÖêÖ«Zv‰´ ÖÈøãÒ³“¥ÝÚ9bÛñ²m¿šX¬ÒÅg'HŽàNpö‰õÖèŸP n‰ß nŒC0t‡¤|ñéYÉÒ.áØ Ê‘6„‘6„ÙhA­‘O lŠq¸~pï›B lŠz["ž,ktO¨·E+\sAòZ£fÀ±|~L1üzDÇ&-•oJ呈æ}"›N¼"À½lŠ9H¦{[IxG1­pŠ$óͽ©HƼ"r÷Háˆ?k$qõÖªÔpî‘DcÚ8‘xñEÖªÔpÈ×hÜeHÜ !Z"p65Ê7B¼hŽ-|ª¤¤p÷¢cª·ùpb'ïúË]çø”gÑþ&9Ÿ*vž§€¦ ФUzAÛ—ðÎa¼«ô‚N/×”<ƒ¸ý‚—¼ìb‚p³ÁŽ !œ/ö>3¶{˜'Wò¦X96x"*t3}í¤”éV˜ñ*lÇ9ù;\ Áaƒ_ñ¡‹`¦ëôŒåÂÜa,5b¸4Ëx¾è'„ÙŠdì%ìýït\Ü2ôZ°6p‘¿V‚‚Â4 ãªQ€¶@¿Ð•g«>«ÔImD¸ LD|ÇàA‹=ž0ˆ«ZvŽY¶ÿ¨å#ÔrÀ‘¿êîíwv»»Fv A²#oÄrÄ6߈åˆm¿­€ãõ¾ ݾ ݾ Ýê­Ñ> Ýê­ÑÀœáí£=ÆÏ”rÄ6߈ŸP n‹úÓ£–!µðŽY6߈ù¼¼„rÀ¶†~Q6…ëdsןPõÊ> °öðm¾„P1ûÚ9k„Q¾Ñ@‘cY#˜Ö¸Ea\Á25Ë£ˆÄ}é6ƒEH¼x¢Žð~£ˆ7÷.YƵÂ7 ŠF±˜ƒaíá^5G¾½£‰ôŽ-ŸÏ˜ç$ €oG¾#:ñü<ÌK*©ÿ´Brsþ€øþN ]ßçðK’o.¦T §ià)Úx ¦ªQŸµ6N•z@Á®g•o7hx![+XåºA<ÈÝÎG¤<6à·hxž1#µ2óèöHQz¢Tèq—ÞTË>ÃÉ)Áûô©¼xñSÛìפø¹ɯKõ>§7ÏoÃ+ #¨O;PKaÚ¾pCâG¦•@šUœ´aÆÿNÑÁ‚QbqÝÈ9¢SbX3ù?Gð-cœ9B_A”°Wþð0°Y£+0àãHÃOßÙlSÕøHUΡPÝA7„Úe+ÿÙ|CuDh”ÀúÖoi$TE“á7-ÈÈ<<§ûðKD5 S†œ.ƾÄ:ù Z`@s°ìò„A5¼ €®ë'/™ÉÓ<§«»ß   ˜ïý3|ž#­‡àn 4RÐW¥kà«4ƒ( 7Ú³“¥ R g^×whå‘~+9:Vrt‰õÖêÎN‘ËFíí°$oú»»]Ý£– ¿Ë&Ûñ´lÞ•œ+9:Gnul‰´ ÖȆÀNPô¬äéYÉÒ³K˜hз²ŽY¶ÿ¨å›oúŽY¶ÿ¨åˆ#oÄrɶüG,ˆÛñ²#oÄrÈ¿„hÐGzñ凎ù^B9fÛþ£–·ýGzñèxG,ÛÔrÀ¶†~Qp_JtSÀƒ["˜Ô]RDú‡®Qî ·Ð4[…F~aíëdSÄ[¢ˆ7†9þ„Lïhæ5÷Ò(‚ó sýG Aûíp#ï´pãâ(¢n!ëu(Ý;p;(â×õE1+ ë‘ůêŠ8tj­Fã(zDà{@»ž¨¤kÒDf.½ŒD T]¾Yýþ Æ6 Z!9£ùµóÔû‡>Ñ6$°&äK’oDÀì+Ÿâc™ò‰Ë6Ú c™RŠ”gíM“¥c^•¼Ý¡äÿ¨Yõn R“‹‡ö­f< œl#sò†t¼!ž§Á'Pp{@ÏÂ!²yìŸ.“R&Ǿ€kÍ[À}b¼í„Îdá56ò \zB28Ë×µ á;,¿ñ@ˆ‹¾Žî›­î`›„Ò¢ Žã}Íþ@ÀžFlH7QN7ìpŠq¸c„Scqü"›ˆ÷á£#Á£rŒèålâ|£kdx§EÁJtM¡¶DÚkdLøkdSЊÙ¾,El‰´ Öȧ¡²)â­Ñ> Ü£•®iøG-½t›Ûþ¢à½lŠcQ["}G?"‰ÈÄs>"‹§^p^µtQÌ=nŠmˆðQC"õ²(æ>¢€ÀßeAZñ\:•„ ”ÐÙƵÂ8t6øŽ8Š85Òªš8hò@l¯#b×Ã[+qkåU$sŠ«QÌ]*©£²èŒ«Ê6…òμb‰Ž¬“ƒ?h.8@´B óýn@HsüZèœëÊ%7#MË4L ¶%NÓÈV5éM“¥c^•¼Ý®®—WJ]<ä<«kk1á-à„8uñ=Zò§=QAFvðþœ¦…¦×GE;]Z•çl=™î»GÕb­Ð¸ÎÔüêcwcdÊ@ùå@Љ”ëb¿6!–ŽŒÓMµ]øhË™ýãékÝ À(fÍ'DQ2ý@c´³°D~îhº¡$ ’ÁCLðñ`Àì@lC€à€Ãh«“¹ ŒÃ‹ &ŽŽŸ&=¥Ëij0I¸G`0ÁG+’ê:ª.àb@ƒP@q¤ØË”_išrA¤n`cvÀ@"I $‡°%Gm Bs¬!΋—$ÚJ…²:aŽ¢&Œ-MÇ®ð) Aðf+@…ˆˆV0ÆòÔ46¢Â{¯:½áïdM jÿ¾MDe Þ yñˆê§ `e9sŸ‚èVD3X@ ‰½’ăÔÈ¡G`¢59¦[!¦Õ¿,±PÎK‹£Ê(NfF •ÆôK——R‹Ö£—DñDðòbB"?¦.–Sÿ@K7È2¾•K8 ÿ íÞ£bašðÈ*ÎN‘8Ä€}ùV´íhA­•œzVib9fÛþ£–>×wh¡¡àÁê­Ñ;â­Õ¦Ã´SÁ”M¡¶DÚkd|kd|ñéYÉË+:öŽX‚6üG,ˆÛñ± ·â9boÄrɶüG,›oÄrɶüG,›oÄrɶüR¶ÔO¨·Dú€ktO¨·Dú€ktolÇ4èÝ£1È¢ÛÚÄrɶüG-½tŽX†ÔOÂ9bolŽ[zé6·ýEÁ}'íð.+@‰õÖ豊(úCaÑGmåÊ&ÐñNŠcQ[)Ž`‰€7­ 9k…ÃkúоÑÇ>ûP…â¼CtQ7õº”n¸Ç”qk EdŽŠ‚”wïdlZÿ(ìº#*òÃ] ,¬8ÑäS¢‘‚E^2!ìB'‰ûVGOH „#ȹAò/@ƒ*Ïø1$ØV Åãpœ^7‘á9]Sþbeüšš«°këæ¨˜a¿ÄlXÁJ5åO¥tŽ ¼òTàUADóíêbêéX×¥!ÈyA;cäÈ:>Bè<¡á¼‚g¾ wº>HíŽ=·² d/² îžÑÙÊ™+¥psº„_qyVöÇJ¿A‰šC8YZ'„7é…íqZ¥1x[¼ú†GmHc¬’AtÀâ C`ðKK)¡š€¨Ž¬ õp”yámó¦Ý%•Q¡ap5Š!ð‹æ1½XW2–ax»Þø£]À½ÚÜìÈ$AApA ‚ˆ3(˜˜AÙç„ìÈHpAŒ‚" 4TË ÞXxX|iƒÜn2áǤ!Z N¦€Ì7lÆl)À¦D6NX™pØ¿Á+Þ?nÉ r;F7È´Q8 Gh=¯!$KÃŒ?ÞŒðSOàp{ söÉEÇ‹·‚vÌ·þeÌûDÄ®óú†z¨Û{9T' Ì``“äGÔNHd΂6ŒÂD­|°‰±@u!ÂÁ_àœœBŽÿùè %/BfÃ3á±mø¬Ò ¬äëÚ'Ô[¨ŸNÑ3àAò‰´ ÖÈøãÒ³KfFŒþQËF߈å“møŽZ6oJÎN |{Dú€ktO¨·Dú€ktNø€ktbƒ¤=#”dFÆŠ9F[8Ÿ(Ù£#°4QÊ2<(å rŒŠ9FGƒE£#Á¢ŽQ‘àÑG(áèxG(Þ=å·®‘ËÛËÈG, oú›Ûþ¢fÀðh¢mè›B lŠx DÚ M¡¶E8â=øEÈ·á¶#‘EO]"f75‘EÁz寢¶Dç1Í:‘ˆçö A¸±Ëð¢²ââªh£˜zÑÔƒt_‘Í—DUMDÃçöáˆ?}£ˆ¸ÏZ©)Â8µ†"²G E Á Á°×™£˜ÔUIŒE ÁH;ö‰ˆ6 6-aó]#²ùv¬Žž«´Ákû@±t ‡§ gçê‚áò.@‘$ΟÖÞÑ$Ä¢aŠhœœ!²8µÞ<£ˆFªÔqÈWHâUpÌ×H¢p{V5®UºZ­ÒÕÓ¢ä<©ŽcÂä<©ÍZSÒÒ 4Ki9Ò¨|]÷ôN I*v¤õÑR–—' ºôÎþˆµ?ÃѰòò年dŠD-@Œ Y˜~ñrÀ2±u‚wÊ(—eŒfç'±–2ØæÂ<  b@6YdTb0"€˜—Á_ÇȦ…$®Ojô·#²èAì"&Ù7´E޾:rDtòÈÆŒãtÚI“B:ðtE"õ„|)¢_Ãhü©g²Tï“ò€´nÃú[¡ÆzS22IgiC3bòñ".AnT  ”˜öã,1âÎ㇉æ˜0øŽÿ}?b‡Éo= rå„laÇòRÁÍlŠ“\²+.j¦Ÿ&?‚|îÊx|Nz\/TŠŒú¬_¨RÿF-јº :‘)W:Ñ_³c¨åÁG, þ®îÑËF߈å“mø¬ÒÄ|ñíê­Ñ;â­ÑO>QɨY³mÿQËÛþ£–doúŒn#RþÂ9j?Þ¼yaã„rÔm.‘ËF߈å‘~"†ž O¨·Dú€ktO¨·Dú€ktO¨·Dú€ktO¨·Dú€ktO¨·G ,5„‘]²+Ä{ðŠì­‘> Z„O¨·D÷D>´èݱŠ(ݱ ·â9më¤NØŽErɶöÃtrÛ×HÙ°1ÈÛÏ›B lQN8~>£›¼©ðÇ?Ф‹¿ kCÁ¢ŠË‹Š©¢ŽaëGR‡ï2?QE¬!Åd¤ êQÍÅÑ A¾³#²èŠÏÊ' ÞZሡX)FÃ:„¹£³QUj„ ¢¹ö£a`š-a–}#³QUj7 hðœŽq®ÓÃN˜cjpFbY=VW&2´ m'`g}þ-€™ÀñüBðÛ×Õœ+XÜËñíZÙSÿ€< Ñ$—)‰ãéÁÑ3'2‰™9¢™ÌëúŽ ê8wˆ O3 ŸÒ(à× ÆµÊ'Ô“[«y»ô­`—íNF.Úä<©éiHs>B˜Õ¤386ÿ ±;fsð{(6;pìí´Anä,¬YÀ![ùPœ#Øp×$XhØ5µå4žrn¢ÖX¢QކÓÌ ŸDÄaÜ{“ƒ˜ÛÎ* ù»k®Ð¶d±'~e¶„¶KgyÆñœ®-ƒwºžÀŒwwî½;A‹óª®Gµ\jÆ"þ$ޱ —ÒÊrÆ# è'†8Ôq”f„³hÊýj1@=œì¨â%r á¶ØÛ¥ðž\X=¢ÊàF Èx å)Za‚8ɲøýšr㬰pUQd42oûç{ùC A‹RŸ™7^U-7R ‡àç€mÿQÇ!÷Òl¦U„4±4 Û¡©‰Õ21r§õ¡)£ÿIM´¾,ƒcö[&lÙ‘ðA­•šXŽY¶ÿ¨å#Ô~CϵÝÚ9bÛñ± ·â9dÛ~#„.@òŠln#ß„F8Ft3àA­‘6„ÙhA­‘6„ÙhA­‘6„ÙÙµˤrãÐðŽQ¼zÊ7CÂ9FñèxG-½tŽS›zÒ!§6õ¤B9fÛþ£–·ýG,Cmí‘ÊRoZÀ#–Ç®‘Ëo]#–m¿§#fÀ¶ÿ¨Ù°<(›CÁ¢‰´/[rŠìÅl‹‚Î9Evb¶EÈqU$ãb9T¬`m§†êV6SCdM¡âï(¦5²sQÈ¢Û"Ÿ€©C[\4QY|EeáH'#VXQn Ö½ h|Ô3R Ð9~rŽËâ+/ Qº¹Íš…(èj9£‹_xR¯ͪQ°Î°Fů–Q¸kG„öbN1})kجԂ$gW¦ˆ÷^P2  AEÉÈØoûç9±•¡p™Ž6hˆ@„¶( œ*ÿlœþ‚@™Fîç×½‘/˜ÎÁíñ)À—´voUb;/‰Ê¼#ÔÕXË]åNmàM†µÊ)´ëÄQDà9Ÿ¤M &¶G<º)æ´…=åZÈyV³>G¥=-)MZ@äÕ¤v¤ÉÐA0rðÏC£’‚yy? Ál,õé8Á!mZT Sq_©ø7ã}‚ÓmÌÿÎöÕ¦5¨˜FÊ&‚K£z[ÓYp†qÙ®RÓäáœs¸ ¼¯Ö@ï†{ㆠ!¥ ='†„Èc’0mc?ÔL†Ëgl½G$CA°¹2¢i‚$Ê5PÁž®áh2;;éŠ K#»ÔõOl°<Â¥G"ÅÜ#€À»Ž²·àžÙýËþ衅 >Q0ªlx_h×4‘ƒúç¸rÏ÷ëK<‹1êñµ¾ ðùÈ㊕¯“üH¼…P&òÕ¢žè 6i®AÃÉÉÛ+lCÿÓ´ê*pÑ 8 aAÿˆ’Ñ´ÿÀXÈùDú€ktSlåŽM¡¶DÚkd|ñé¨Å¾£–m¿ê9fÛþ¢ÌvŽY6߈å“møŽX†ÔQG(Ìr(£vŒÆäQFöÌsNí˜æÛ1Í:7¶cštpÇ[zE67ïÂ)±¸~MÄ{ðŠãqü"¸ÜG¿®7ïÂ,â|‘g«ä‰õÖêÔÉP ŠºH®7ïÂ,â|‘r­øDúŽnòÛÈ¢ŽX†ãó”rÛ×Hå›VPÙ²jΩX@ÙM “ àÑEÁqU4Wf+d棑E8ÆøþÃu#Ú~xEÁqYùQ3b3dœÈ‡ÔòR†¶)ŒÇŠš+/ˆ¬¼)C[dŠËDEgåDøkû¸B“!ð‚ïŸIð†Õˆ¸žÀ›‡&Š#'íÕÆ3¨rœ 4áRè[úÓ(ç5Ò ‚4gTDÛK%< úÐùí Oþ ͪ††Ïk¶Š›@þ>wUßõÝ«|Ô”*¼05Òéç‡B³ˆL‡ã¡yõüw4>“î-zÎ¥¥X+ü)š‹|ׯ2gÊÚ?Ÿ€•ÿý2Fw9¯ØÔÉú·ÖŸŽ0ÎO8‡µëÿ€Ê@¯ÓÞø£<‰×úÁ³à6&‚iÍÎMÈ%òëKg!ÿªxj:‰PÏ8 RSÆ9ž<Ûô"gòg2òGå±møŽY6߈å£fôÃpßQ> Ýê­Ñ;â­ÑO­QMÄ{ðŽQ·‚Èå rÍ·ýG,ÛÔrÍ·ýG,ÛÔrÀ¶ÿ¨åmÿQËÛþ£–·ýV1$ôŽX†Ú^9JMëXr”›Ö°å·®‘Ê8‡„rØõÒ9NmëH„rÍ·ôãdlØ7·”rÛ×Hå±ë¤rÛ×Häö¬Ÿ„lØéDÚ M¡yÙh«Ñ]˜­‘tEl‰õÝåDVÈŸQÍÞTŒCkû,Ô­]˜l<†H¸.*¦‰áxqU$ãcäT3R Ð5±Í4Ø ûá–ˆŠÏÊs#榤 lxEe¢"³ò¢ ˆæ ¤^<~A–ŠË”n¨gs䬬1\«]ºÄ#³j«T£hcRB¾Š·â²:ev•$óDêãíJ#^ÅxMdiÓP2ð}Ué¨d¬Žž«Ò²:z¬®L@ÊÃvuñŒ­Aª±ÂF¤ˆ!1R@ƒ*ÍŽsßõ6èkÂr$YcšÉÊÉÏÅ“”M†_Á Léj!ÀTÑ ôK¹)̬ÓÐQ¹kší§CÄc­Ç«Øáÿµ°›å€‚Üô‡X¨§†û[2y©ÊäQDÙÄ>¦ƒÊä\² à 9þ”c¾äèpŒuñ]‰¾¬ùÑHÈT¬SÚÞ<ííÒ4Þ ŸÀÊ6*Ç¥265øŸY ; d'›b/ÿÖ±×¾o» Ë"”ŠÚwÃGîs—aê­Ñ;â­ÑMÄ{ðŠln#ß„WXA¢&|5²&Ѓ["m5²&Ѓ[#fѸ°$oúŽY‘¿ê9`[ÔrÀ¶ÿ¨åmÿQËÛþ£–·ýG, hmç„r” hJ6mG?ˆåCÂ9lzé¶õÒ9fÛúq²6l oo<#fÀðJ6lŠcCÁ¢‰´/óŽT©@ðmä²a°<(›CÅÞQpAw´W`El‹«ý'5Š*F!µý–jFƶR0ʼ)[º%0Øx5 “Ò§š¸ÌUZœÔr(©Àç^Ja°Ê¼.Œ«Ês"gSÉ<ØÀç÷¶R ÈÔp)ˆZ"2¯+`ù¨fÊAº*åX>"¹†*A¾:áYZ%•p¥äU•¢YWXk^VðñPýVÖ+ÆjÊÃ#WùÍøŽjߪQ´W ¦¸Öá5`eWUêÈéëÕ5‘Óתw gf)ÈØoûç9ØýûÝ1/ ˆƒ>ktànõz'?P/P;cµ²ZhëÚmÇk‚³bÈ…€ëh™ÂªL‰´J"%j(’bO œp%}ÿ<¦ 'â«1&¢˜¥414èìßÒÚ͈šŸ ”Ì 3ýð‹€æªhÙðšç€mÿB)è;ö¦Ìí.OAÚ9êw29ëÉohçÆ§â'.‰íÜk`»"Må%9%IùUî…QBâðr*¢„Eù<Xçÿ©q«õ%†ÄŽ?Ýl`C²ž/?§Ib­C·=“gÿZ~ò•¼@¥\c:x.@& «TrãÐðŽX‚6üG,A~#–!¶üG,›oÄrɶüG,›oÄrœCj? 9N!µ…‹d¢¢Î WÉqоH³ˆUòDú€Ej> Ýê­ÑrùÏžè‡Öê9SÃc­¼²+°"¶Eœ@"¯’'ÔUb'Ô>·yNj9Q»b9TŒCkû,ÑËƯ,7R©‡HåˆmE+þö¥S”¬ l¦†ÊF9á1¡àÙåpDUMØ['5­O$ãcäT3Nj9TŒ`s¯*F9W„ÆckÂö çtæGÍC)äs¾ÏŽTŒ<~AXj+Ô@ÖŽG¨«Kàp5ÁR/? ¬5·Vºë…¸%•C%"ãæ ·" ¥\x5ñojGês#æ ·‡"ÿjÚÃ=Ú)íÀ:õC1CÙPºJsJˆlä… ý9¹P˜€½ëîA² w-§üUFCÔO“Z«ð‘8™ĪËLÃØj#ê9RXð3¼h¬Ÿ#÷Çâ{1Í[õ[Ep~„ÖFŸßÄÔ ‘»áL@ÊÃwÏIÈØoûç9Ù#Ôì ìÇê±;û÷ºgRô­¬P¹Ÿµ1Úlq¶¶@ »×„kç©Ö޽¦Üxö±¸+[Ol›qDìr‰”Dc—´Hà.÷M‚fwÝí1\òU¡5pNDÀ¡•‚­©+c3*º­VV™Ö558Ø9?`ŠËLMgáLÆ*òž|`2ûÚ‰aGµ;À §Y3ƒ™rŠzþ"ž§s)ÖÏcQÎøìH§qöKð¹ºÊ1Ô=‘@‹íì+b¡ô‰†£±ú­RÅ^ë±Bg1»wÿо4}á×ï“ù‘hI®V"å“ÞI,ò.FÆHã~x]æÄÖ/ý„ @ü»b7"Š9Fc‘E´f9Q»Fc‘E´f9Q»Fc‘E´f9Q»Fc‘E´f9T)ÆQ>YqоH³ˆUòDú‡­øEÈç<"}Cëw”O¨äQDúŽEób9QËÚ‹xåŒÇˆs4棑E8ØŽE#ÚþË5+Æ6ŽÏjU0éJ¦)X1°ô:L6ƒE1¡àÙåJŒ§‘¨d˜Ððh«‹"#g¯jã'űûðÉÍG"ŠöÀç^Tl˜l r5 •Å‘zö˜Ìr x^Á\îœÈù¨c œŽwÙñÊa°Ê¼+‹"2¯)ÈXb3¯ A9ï³ã•"ñȨr®3¾f¬,2Ρš’t>ûáQ•ÕzØ<‚Ĉž"½« ³¨f­íƼج¬2ªŽ«|O\Ål5 ‘õŠ©,xá^4VDäzõøžÌWê·Šàý ÜHÌUµrox«B±2°Õ•)1+ ßTP18ç=ÿP#k$ N>P5­2${ «-úM¸ñí6ãÇ´Ë^Ñ<Uˆ’f}zDF9{ôè‘À]î›b#Þü&’æëOÄäL‰Ì­Õ±•_V)ÄÎÁ\­ãjØjL¼ø¨)†è ï«°ÎÚÁNÂ;véN¦=©Øž2R;ÑÑN“±¹Sª'”lør%î†mÊ8}úVõKZò‡6da"¼JÕ,Rç>ìO `ï.ÂkJóÇþ(àƒ‘þѳ•ûÿã6‹¹ìÄ€øÁüå.þ64dx4QÊ2<(å r” hJ9J´?¥4dx4Q³FGƒE4dx4Q6‡ƒE³#¥§6õ¤B9`[N›ÛÛÏÙ°<Ò›Á¢˜Ððh¢m éw”Z±FÊò‹¢+e+ú(›CÅÞQpAw´W`El‹¢+eÈFGߤ棑EJÄr(©XÀÛ5ö¥në¥+Ú‰V*VÇ®‰Rȫ‘âœ+‹"2¯*ã1UjsPúÛX'ëÊNF¶tÃa•xL69W„Æ…ô©æ®3V§5óN‚r9_oÒ c1â¡„†£ÏÝÓŒuåZ]ˆ®Ba°ˆÄZ+¥`"ªJ×Cî²V‰ePÉl Ao‰â+˜« °Â­Vö‰‹Åsd”¡a–¹ÕQÈ©þ _æº[Úµ[Øf‘•†¬Æ„¨ÄsUj·e\­ÄŒïý¬S8ƒTxƒÅZ, Eõ0¬‰…†ï‰–"Ãpì&q%h Ž6A2©^…ýþVH‘q¸¬8gïñ¾q@m‡5²Å–¶ž™:Ð<{Y9ø²sñ° céiiíÑ7Ê#dx­‘#3+5b7ô€'ΪÐíê¸Nη*ÜÈHUµz·: äü ¬ÏgÅe`TtS ¦ ò¦\95SCZðSO‡$ו;ÚŸ])›m?Jf¦;B: Ýt‘S*$ÄlŽxËSè)×[„ϤÀ/&>=’êÚ[t'|ÁÂ-Ïàn÷89:”j?ˆƒñ$1)é5'e:ñR5=&àÓÿ²{Z)‰Ä‹ÇŠ(žè‡ÖÝúÓ¢{¢ZtO¨äQFíŽEnјäQFíˆäQFíˆä~n-“ê w½ œð‰õ­ÞSšŽEnØŽEnØŽGáR± chìö¥S”­Ýt¥ae46G-G0ëE*˜t¥lrù “ c•K$Ã`x4SÒ§šàˆªš+°"¶\‘ðœÔr(©Q˜Q:ÁriøRØëÊNF¶tÃa•xLhx4wWŠ«Uűûôœl`s¯*FÇÝ\Tº¼¦«Â¸²#*òœÈË:†rR Èç}Ÿ¦«Â°ÔyûºØ<è©è¨‚˜l"1uŽ ÀAªuk¡÷Y+ D²¨dƒ¡à×EQÈ®ŠÚ2ΡšßÄW1[GƒP[ÑPZ Ï^ÊÆˆ–5ãUo¸®?T»Aâ­V&v¶§8âñÍ~an5Áú¨ˆ6T\­ÄŒÅ[W&mqTɼGе2ÖŠ—¥j%h©ìAch© &pñò¢‰ÇÏÚŠ¸:{¡|j=~«Åb= v‡ª¹ZÙÓ VbãÒÆà'Ü9öŸpçÚÒÓÛ¢S%µdAnÑFàß×ÕhU€ô¬D1¿×”‰©«C·ªåZX*Ú’´2°Uµ%ntÏâž*¬VV ÕGE0Ú`0¯+`y¨n˜Èy¨a;œÌ«ì"s2¬Tᦦu‚™ûîjeDψ©Úž†Êv¾ò§P6 XnkòçÒ1í>ý„SsOA»T}sÐyŒž #Þ·RŽ'ŸÄÂO–ÿ§çȺøþ\x \¾q¨þLFhå(Ðþ”Ó`x4Q³`x4Q³FGƒEhx4Q6‡ƒEh_K¼¢àƒóŽQ³J|"šlŠ&Ððh¢myDÚj­EѲ+°"¶\ŒE_-‘>¡çm¢®Nj9SÃDÓš‡ÖÚÁ9¨äQN6!Žu,Ô­Žaº•±ë§M69á1¡àÑWDe^UÆN>+¬ÆFÏy«Œ­¶Nj9vN609ו œlé†Â*ð˜Ððh¹Ý9‘óPÆ òØï©:äÀ×—\09W+‚#\+‹b3¯ ’^]Z]ˆ®B°VÁóPÙZœTBd‹Z#ut¬qº­VºÝb‹Ä±ÂÛ3À×µ¼9=º2[ÑP[fx©#JÑ#ÕXƒ=öR†Æ¸§·´L^=xÙ[‰ж®RÁ•†¬ñâX3°Õ¾|ïù¯£ q11VUÊÜj+ƒô+q¨®ЭơZƒ˜=«’Æêš œ ö|¨¡dïn·ÔÑl.+n«18ÕþÝ6±«P;ÜcgÊhÙcyX9}X‡tå½xNf¿Q O~<"g ©2"&\îQM¬*f†Ýß×ÔÌâU©‚¤©1°T†=«s3!VUèò´ÌÕ§\95·Ì°ÌPtšì®Mm;œÌ«ì"s2¬Tíµ3Ž]L»¡,|©ží2Øp§q¤„©Õ+7*wæ ä¨FøµÆ€Šj_¤b1¨z(¦3ð{ü›‚Šz8(¹mø‰×"ê1[SOæ×ô÷Ÿ©7hÌr(£vŒÇ"Š7hÌr(§›È¢ŽSˆmGáG,CNÑn­Ê9dÛ{aº•L:R ¨—ݱÂ¥bÆÑÙíJ¦)[ºéJÂÊhl¤`[OÉd˜lŠcBúTó\SR°ðh®ŒEyWl¹о['5­O$ãb9YHÆ:ò¥lzéÔŒ r¯ ŒÇ ×…+A¨d¸"1å{sºäˆÀׄãcyRŸ#ÑösL69W…qdFUå\[xN609×”ãcyR Èå}¿H)ŒÇІWUjäÀ×—\09W)†Dz«CÁ®¬V¶ˆ«œ$ZÑ‹«¥"ã, r­t#ºÄ+Ä.«½† ñŠ“x–"· ÞÃ1q®,’–-8Vá[î-¯>%Èõëñn³b½¡ÀYa÷Pñ.Â9«U¸ÔWêÛñ_F6&V²¥+; [Sœ˜±³»ñ;ªdîÍ\V™òk Kו{}J¤…“½ºßSLȸ­ª65½A ãQëñ^´øP¼6õõ°· (Ö ™hïÒ΃¬n¥Áô±¸)–ãÚ'`”oh~‘ç^•©:z"v@_oÊŠ±Æï~8œåŸ¤É¼ž*å>.Or}À0´ßórœû„±5ƪ}æë+êÙ³}v˜|9?=©–´NwUø)ØDæeX©õëÚ¶‚f¬*föd6SªVjd§s¤N¯:£;ܦÁó„;*e´ÞIS¡>鲘ð·Á죞͸tP81ÚÂúOßðUÍ k5˜ú|š"ˆ(U© 4<(›CÁ¢‰´/¥ÞQ6…þqÊ+¬ Œi¹EѲ+Ä{ð‹¢+e ò3ÜtsEѲ+°"¶EÈUþ“š‡Ö§’q±Š*F"9ŠåJÆÚxn¥S”‡²*ðŽ[s´R°²ié0Ø Lhx4w\ E]-×A¶ÉÍG"ŽÉÆÆ1PÍHØû«Êi°Ê·e+¯«Ša°Ê¼.ŒEy^Á\îœÈù¨cóc›÷‚NG+íúALfªSäzéJ{ zÓÒi°Èú»Ö‡ƒÜøM6dhoב„VV †ÃÁtÃ`x3¬—F"¼¯`ªµ\f%?~ŠäˆÀŠž Í|Šð¤cyRžÐÚ~TŒ`s¯*FÇÝb˜l r²°L6>zR0ˆÄW•#qê±\‘1®SšÃZò¯r>ë]s5~ †*åJÃuù%!³]X®H‹×+–ëÚôžŽTœâº*Kf;ªjMÁ®¤ƒ<ézOºÇ5&1ÄWµ'q»~s_Qq¾ºQEâx}ÅIÜK8ëÊ–‹õÓ)6Ÿ"½ÅIká¸çSAÒÜ TIŒ|Šö†Øx5#Ý`‡‹Y¯“Qñò+ÚÛð¥Æ7Øj‹¯°ìWJLr7a× 66‹U¼P´ºÑUj€B;Ë}T¸±¾Ãû·…½h°ÕZ®µçuµh»%µu¢¶Õm]h­µBÄ‹®é]lkØŠ¸-¶·@àÖû!z8Š«•Á| ĪäÛEÀñ[:öŒ a>ŠhÙ3Õ2÷*+!:çØáìBòwí6ãÇ´Kš!i')t6G šo(†$Ö¼+ಷWÐ ×­!u¦¶ÆKnÁi­•þ‚¼úS¯¾Áùú³[’j1ô¦ßàWµáƒØ/4vW9~)×Ï}?*ïìáX©ùqìŸW)¿±"ÄéeŸOÖSõû¼±Sùò[Æ÷åßSšØãöFÊ|ª^êlp‡½ÞíÛ÷ZÍn²#…Ø=æ˜p‘²­ Š'Èð~Ôÿ§Dš"ˆ(U© "èŠÙ WúDú‡ùÏ ÍG"Šy±Š*F!µý–jV06ÓÃu `Ú‰pœlCêY©[þÃu+c×Nšl rùÒa°<) émbº­·\ŒE_-“šŽE“ÚÇQ6«™¯ F09ו œlêCÙ•xLfcÜx5rÛ´]\øÛñ_F2ÃÂÃuqâKœy£%àEµ/ M†ûëo KÀßeqáI°Øo®Uì õ*’½ÜW…ñUrt5…ˆ °Æ¾ w‚*ßn€äjßÄðkÐG(]åÑYF°dëG^ÖN~,œüY9øŸpçÚ'k6äš½°7(7¹­-‘bå…k¶ÈÝßåd®bo2úµOЏ)¶›î­¼)¬s5æ†ßšúpß°]OÀcp™¼×*ls=|Ó6ÇàWr\üSµ>š*¶ÜýÏB…ÅMÔo3R*ný u<)ØuìÉN§nܨ.Åükú)_úFÊtE¿< ñS"4ãÀÝNºx›|¦aÕš‚š|cn?¡Å½zFÃhß'Áºÿ¨TRlØämç„Ã`x4S M¡yÙh«ÑtElŠì­‘r¤÷w´A¶ÉÍCëm`œÔr(§Ç:–jVÇ®0Ø@å^ àÑdÆ…ô¶±]VÛ©MdFVˆsUÆbªÕɯ ÆÆ1PÍH'#ö|r¤=9W„ÆcÅC+ŒÄåëÙWÄg^ŒuåBÿ#Þæ A9ï³ã”Ãa•xWDe^UűׄãcyR Èå}¿H*FŠé”†ÌguZêMÆxâk–ëÚ“xž"¹š¸8Š«VÉà×EpÀå\©1Ä.¬–Éž¸ŠÝŠå”|A¸ÝV¯I÷X­ÑȯhwÃÁꊷ´O\©1–¹GÔO¶üWÑŽ)±¼ii¶jmDÊËê}J71ÁO©_™·ÜõåñS/¬$l§D[óÀß2#¼ Ôï8~Ì?¤2œ4=Vhœ¡ö¨#˜¹`V¤ÔÅùÿ¨6»¯Þ)"&¸RqkëÚ•ˆcGgµ*˜t¥S”¬ rùÒa°<,˜Ððlòš¶Þ ˜Ððh®ŒEyW8ø®-ˆÏ߆Nj9TŒ`s¯*A9ÙÔ‡²*ð˜Ìx¨aÓaÈ5ÂcHèk•ìÎë’#^ŒuåHØû«Êa°Ê¼&4ˆÄÖ+Ø+Ó™5 `¥F~ExRØﲊ½²}]ŠàˆµÂÙŒî«]8ØÀàkÈu œŽWÛô‚¤aˆ®™HÆ#;ªÕËõí}z5ånEtTˆâ7UªÖÃqŠ.£‘]#Œî«U®„wX…&N%ˆü«VÉà×µ6O\©ãaê²[v‹±©ø–-°Š»;v‹«ŸÃäz¨Y¾„wX….0°Ý\xßó_Fv‹«Ÿc‘ê²[ö‹ë:âëEmåKºÃun<^œÞèâ±óW(÷ T]ÀÚ,5¼ÕÜ ×ÖóW07_ïÊÓ6‹ n±XñYò…øêZ"Û}N¢®N†±±ÄVU¨ ä´vÈUÐ@mqÍl…ÍßSð­VN~,œüY9ø²sñ° cé¼ »Dm$¶gâ7êô¾‰ä*ÔnÇOáM´ð+uÕ¼•üM‚Á[ÉkŸvøÎŽgÕd¡au¤ú«‘o¸¨Úè¾°çV2¹Ð^o®jöcÇÜ~¦Ýªj|ocä½_z›P“ŒÔØþÛm‚7ÝNë.¹rÊ ¹¯e”ÞªóŸØÚI6"ÖëÀÝ:Ä݆‡‰)Üø8»1S†š‰"V‡­}¢æ4SÙD¶ý2ˆŸôøS%q€VË8Œ¿IÍG"Š‘ˆŽb¹R±¶6kíJØõÓ©O—¯JVÇ®‰RÈ«Âà˜X39ù œZA*l-¶Ó B›Ûm°C§Æ¬ØZê ­6ŒÔØïïr§ÏÍLl¦Æª‘Sè´ô#H7_GR"¥4=zFˆL88ü5$rS|SƸ¤¥§(Ü´ÔR‘[Nøhý°Ø Æ…ô¶±\ E]-×A¶Ë’#^šŽEögÈðó\ƒš~‡¶:ò¤‘­HÂ*ð˜Ððh·WÄg^ 柅#ëÉP†0ÚU‹©är¾ß¤Ãa‘¨d®,ˆÊ¼«‹b3¯ Íx?});vS¦«Â¸²#*ò®-ˆÎ¼)ÆÛV2äÀ×—\09W+‚"× qªÜ×,׵È÷ØRw]Ì”œx5ÒôŸuˆ[¢}[š‘AÂê±lž tVèÄW9©1ī͢ã}YˆX±³ÝÁ¯ktOURZ؃vnknÑv5?ÃÆÃT|íÚ.®|KŽGªË?¸ÂñPó.0°Ý\xßó_Fv‹«Ÿã ÕLj¸Ûˆê²ZâÑh­”¸ÂÃuqâôÆÃ_Ì{¿Ü ¢Ã[Í]lkê»ÔWŸÅrt5Él }Wp7^{+4/ÃO娋êupt5áµÁ¼S W‚+œÐ Eaé¼|v™h>} f`e鼺O¸sídçâÉÏÄë~“ðš83ñCX¢Wy3ʲD¼ÍdÝÍyÙb¹àUÁ^7 +u`°VòZÇ_ªts>«,§&¿Vç{©0_ٮʛhò}T`§ó‚º*9Ø)øSóæÁÍwÇÉ}­ÅM¬„õ#P¦ÇòÛm0Ä)úýᆠŒcC€Ç%6·TÿmQ$骚ö½µMÖxǦԽ‹WXåa»â=¨‡z¨èŽD€EH:·2ÿ¨ék/ jÂt¸Âb1‚•±ÊÊÁ4Ø@äk„ƇƒE\Y—¯.®3V¨PœýŽŠè"¶Ù9¨äQÙ8ØÀæ*©uyRžÈ¬Û¤ÆcÅC.‚+mÕűׄãc˜¨fžg·È÷éH'#ö|ršl r³n±Lf1áa»PÊ[þkèÂïQ^hÝÄZ-´Ö¨äV*C—ýR\äB½Ü|òæ„|éIx‹êu5ñ}µš%î9¬ÕÁÐëû P/cU/Ä+‚ø} F5 Âs÷ºe ùô…ÍßP,óÒe£¿I˜ñí2÷)—¹D/&±M¸ñí:ÁߤJð0è†&±D¼ çY#r8š ð¾›x¨ ­5¦+@sYn´öñÒÒšÛ} Md&§_}ƒóõlrOª›69úù¢¢áî®_¯5ÚŸ’z}¦»Û-Ö¤¦Ô,Îgê›ÛN‚Wd¦ÖBz‘¨SãVnmt1°ë=âç!%6¹Øt§Ç¸F>wSu³7Iµ¸cæÅ?ŽŸ1 Týv;ÈÝ’¿FþñŠ#8Â7-˜éM²'%çÿ¨¸ãb9YJØçeb¥lzéÓM„F¸Lf9¼&´<:®ŒEy^Á\î¹"05á8ØÀæ*©uyR0ʼ&3ƒ^°W;§5Ž¢¸O61ÔOÇ ÆÆ:ò¤‘Êû~Sr>q!³]X©Ä`j¢¯mÀßWà¸`qû ‚"× Ëg®B‘±×…ËõínˆEõnjCf2º±Rqà×KÒ}Ö!H¼K¤\e®W×£^QuŠéHDÅÕb‡ƒ]º'ˆª‹),r=V!}ÅØÔübÄKUjÛ<÷œ|G!bÂÌTUìíÄ_\:“U’úŽÅ{Rã ÕÇûEõÇ¿ôc.1°ß®WØv+4+áa´Vë6mlWÔv+ T1w"¿˜äï>÷½I°ß}]/ Hðjåuq¶·Šëc_UÖǯš«­}WÆÚÞkHðjå x¬áŠƒâ/qŒýî±/[¡xj+´.h>#ÑBðÛ×Ô?O½ W•âg)×8Y‹6é–}ßS®píŸ ɬQ¸7õõŰè܉W‡Aãõhk(â¦6æ¼ìµ öVPZ‡ŠÊ à½äÈeL±³&g+{¹|…§:ÝN¾ûçêøÍvTÈ¿g×)Ñͼ ÎÕ:9ô|Ú§ge¦ì†7o>:ãiÒ Tܸ°jvÉLÖýN’ }7‰ qŠ›ãOYÄ©±«î›Úºíê|yŸí/›æW|;©±¿O6«6?E T7J,nÀÔ<¢xüá5ìîÅåb77ŸrÔJ¹ÖŠýœÆ¢ªIÍG"ŽÉÆÆ1PÍJÆ;êò˜l r¯ ¦{ÛOž „Uá1¡àÑÝ{sºäˆÀׄãcyRŸ#ÑösL69W…qdFUå\[xO|Æb~'2<Þ A9ï³ã”Ãa•xL[(ŒEyX“ˆÏßarÀà}{\08}…Á•y„–$â07U¹©Ææ+ëѯ)ŒÇ"ºRXâšÌ-“Á®ŠáʹRw]Ì–Éà×µõè×…'q•×üÉIÜgußs_Qv5’“'Ä~U«dðkÚÝÄUE”‘±» µZî;~jLr=|Ó÷ÖV),^ì®®<<ö‹|l7‹±«–Ý¢êçĸäz¬§=ûEõÇ¿ôc.1°ß\ùß´_\ybëE}ÍöŽG£X¦mÝ]j+Îë\Z-²ƒxä)\Xmºú=iԇЉëN F"û~ùZƒšÎ8­aÈ«•Á| ĪåˆFrõº¡ˆ¯h—‚9¬Ö!ËÖè^cˆ¯H\$`eéÀ= ƒã´.nú`khëÚÉÏÅ“Ÿ‹'?®ª8Z1öQ Éß´p™üW„œŽAÍlÇ8š Ë_/^JœçAßÝä;û WÚfuZÇTTèæ}VV/¿:Ý”ÈæoÀW eØ] 4!°^q¬î[ ¯ýè­(l/ÌáéæT"ÂØ›})‘·›g`Êf—h;7 Ôê§0¹”¿Âè)µPa™SãËT_mTïb±S~IÆ–)úë~pbû\l:ß~ kŽÅnʉÅÓG” Ï,îžE¿ê@†Ç†(ºŽJT‚Ä•ÆbªÕqlFuáriøN609ו(i¨’”ù~TÃa•x\Šò½‚¹Ý9‘óPÆ A9ï³ã• œŽWÛô‚˜Ìx¨aìÎéæÜgh¡zs#桌‚r9ßgÇ)†Â*ð®,ˆÊ¼¬IÄgï°¹`p>½®G¾ÂÄ”F"ê³%Écårpk«¤û¬B‘x–!bN#u[šúôkÊÝŠè©;Œî»îkfÑq¾¬Ä-Ñȯj@¾ Ün«VÉà× ·DñQe&8ƒÕ’µÜv*üÔ‘±¿ ±KEÆúé–,lÄwECÀðT˜ÇȯjMƒÁ¯pEÖÑx¾»e·È5ìc¿Áìa·hº¹ñ*9}ój¢Ã•o¬.´UZ¥G#î³ZgÍ]¶aØ®”¸¸¾Ñ[…&9;ϽïXŒo°ÖÅF¸ðkð­#u†·W7ÐÜ® n25¡¹b1â³ZŠÎ«Â×#2¼ÐŠ«–#Ž}î® `eë´/C^Ö >}î€b+Hàùã´â2 …ÍßP,UÒÉÊf<{Y÷}Y÷}D ÝŸê!`:ÃÚ%`ÇÒ8ZQ(†&± >öFãœMzW…ðæ+°­–€æ²ÝhbfkuŒÞMQ_!iηQº° kh)‘ÌÚM¸S#-‡³ÞËà;5ÙXÙô6ájv}Ët_³èmÂûx8Þõ2¡ÄÛéLÖýN’ çàäÅ@9iêè9S£^"c ™í´«Êîìw l{Öé±ÕOj»°Î§]Dy¹½ˆîÚŠ¼9ºËn‡i¢8.°›­œ°ÿ©î1WZbˆŒ­ò¤n=|Í8ØÇ"?ï¤ô °×ï•ËšáÄ{ì&1lf¯JFãÕb¤c®Y—,h»@â/έEØCL¤¶c°[WÔ#Ãq£)©8ðk¢¯r>í4Qs#‘]),qŠÄ)8A®Š½Èû´ÑZ¤r+©©;F°[&xUbƒpÇZ’ÝÄUX¤Ç#Õd¤çß’.¶â*¢ÊLr=T8]mÄUE”ž=eõÃÉe½£ éùRc‘ë«.P|ŽÅXØ£¸¾ÃxÅlrª›„KÃðGº½Br káopj ê»‘[øTXGº½HŒ/´`jÛ‘µºÃUj„0ÜUa*9¶+ì;Ò•uöÏÅŒ3°çM“#JÛ¬8ŠùöŒ°ã%(¼/·#W,¡à«)aa«¼«.U|älÊ´V-a˜›A9Žs¬bœÇ:ÝAnWÔ•‹èz=pšÃ9_“La”µ¨á˜?S°psŸÞPmã‘Z ëŽU1cÌü Fâ0¢ƒoY!ŒkHÀåEÄdž’³¶ƒ UMñ:ó°O³“{D®Ü¿¥ ¼‚‰ÞO²-› ßÊ)¼ç›~q=ýÏ!ÉÏ•¯' 5€V¼›rÁZòg ý\ú“TU—Ö8ÎÍ/5‘•ƒq!³Šò®-ˆÎ¼'ëÊNG+íúALf©¾,ÿlˆ\NtQeÃ:ãiñ‚8Ô!9KÖ±Xɬ`´15íjbe[)–âe[^§GS-5ÑN/­ºVÌ¿'‰Ï Œµp_•§^8ñ‡œrw™n0ÖS¢Ýg~êaìÕŠud=þ…2?¶è» g‡ãYœ/ v·[3¬…™)‘iéE„\0*u7àŒ-*fr¦3mSªæ·.TÊö~‚¼/ØÄZÅN½Î„Ù‘^DU˜M D =á·ýVD°Â±ŽÙZ&ßSéx¨l®,ˆÊ¼«‹b3¯ áŒõö0Nd|Ô1‚NG;ìøå0Ø@å^Å‘W•qlFuá8ØÀàkÈu'cîÚtÆcÅC/`®wO6ã;EbœÈðk¥{‘÷X©Db+¦X“ˆÀÝVæ¹`p>½­Ñˆ¾­ÍHlÆWV+`ðk¢¾½ð¤Ê³QRXâšÌ-“< qº qÎjKUˆ_Qq¾º[£‘^Ô™±–÷Õ®ã±Wæ¤SC0ß 0=Qµ×Ü_K̘äz¬•®ã±Wæ¤Ç#Õd¾ãºÊÅ&9ºã?¨ìWE6Ñ…†ì$a/¸î²µJŽGÝgïÚ/®<íò {žøØoê¯_aجָäUÛc*9už:Fë oŒÕÖ¡cC‘_˜ÊŽDKZÍc1iØzë…ãÁ¯Â´·¹i¬5ºÒ<ÞåˆÇƒX­Åg T‡ÜW–¦"u²È>k0® `kÄPÌ1íÀùù¨@¤r+42¨ ‘nX W‚õc,œ¡ˆúuÀBÏMV}ßV}ßVzj¡øÀGV%ƒ_QÆ>Ê7âkÒÅÐ{öSbkÚÔÄʶNcàOzŠÄ|«uˆþºŠlVêq|ͧ*Ù•ÖÝšì¬IîrÃò ›Œ17í‘?lÄãÇ`ý·‡=]ù'§ö§GÞ÷š½LýÈvh)‘¾íN²2TÃWPŽFKAÉ’úc ™­U¦ toº?±Ü)‘¾¬ìHS;­•:´8‹)àZ±έdȱ޲ØZQ&àH¯„‡þ©ÖEh›}O‰‹èrLf‘uçÇÍ– OÞ°F×$וˆO±extí‰ÁYp;5’ü‡u¢ü¬D)ÑÌú¯*w‹OÊÁM/¯B±ÅXÌN><ê?8œ.1³èmÂìúp§G­…”Ó#ïôÛ„à¦z´OaÍêueìùPZá¬ÌpŠ™Uu¶©‘üѱ2!Nœ_½˜)›TòÀ§GïëhlS­~~‹EV¸6Í6,Îß'ÅÓ2E…§¯KÿU†`lbþËl69W…qdFUå]f;ÕűׄãcyR Èå}¿H)ŒÇІ^Á\î¡à×V/I÷X„MG"ºµ\EU©Ð,y`nõõrÀà}{[¢}[šÙŒ®¬S™ t­t#ºÄ)7‰b+Œ”›Œ°5ÎkÒ}Ö!I“‰b?*Õ&o1ê²['ƒ\2ÝÄUX¤Çqº²Wº‹±®YbÆÌGtV,,ÀõE[Eâú픘äz¬•®ã±Wæ¥Þ9ï,XYêŠ.¶â*¢È7ÂÌTmt]mÄ{«ÂÅ…˜¨¨øùìa·â¾ŒeÆ6ð5ÊÛ´]^1Rã øå}‡bº*ºûGåX£ ï°þÕ‹ì;šÖŠüÆTr>ûæÕ*ûì?¿‹zÑaÊŸEù]•f±œ<í÷Âú=iÕáÔ|é^n>u²¼Ü|ëey¸¬å²ÔÄN¶ZƒšÎw¬GÀαˆWC×Ř~jeãÇÝu ùÚ`##ø†0Î>ÐÆYÐ@®*+'?N~,œüY9ø‹.þ„q”}£ˆ—Û¤Y`ŸÄq“”¾ò‹.?—œå·âr×ÀJ·W‡A=wÀ`±[=ÿä'­n¬¸Ö‹[UËU°S0Ø{=ì¹,¿^ÔÈ»ó€Â³O€Â³Z €¶žuÁÏ*dq»\̇VÌ–÷Y™Æå2<Ôæmaj„cazøS+?VD•25ÏàNŠ„68©›T²Ä€¦k«øy‰Eæ¯_qh 9ˆ3µµbb-ø /Ö[ÿV†,uÍöœ$ñ@¹|ãQü ï’‘„F"ª Sf2´aõHlÆwU®œÈðk¥{‘÷X¦3ŠÚ Ø+ÖÁà×E^ä}Ö*FŠé”†ÌguZéÖÆX¦_W×£^VèäWEHâ<ÖªMÆxêź qÕ¹©GšÕlž tVèÄ_V椱ÈõX…'`yÍZèG¸ŒTœ$oU™-“Á¯ktOURcˆ8ÝY+]Çb¯ÍKHÞ.ÛqÈt·URc"½©1Èõ×}Gb°ÅIŽGªÉ}Gb°Å6Ñ…†ì$a-ûEõÇ™q…†ì p·¼ý©8CÓ‘_ˆ®/°Þ1®T,.´U4T¨ä}÷ͪ67Xjž*‹FU´Ué…†¿_‰Wßaýü[Ö‹Tú-«EÕ¶ªU×Ú??¨ä}ýº+@ßg=­#Áª+Ö©ÕÄ025¡ZЬF<ÇE x¬åz1í98‹ÄëeˆþU€:¨˜¼e*Â(:ãÁ×ñ DgD0ˆ5å hßD ëÈþ¡˜xóÒ°ì¨:ã—éY9ø›qY÷}L3uf²r²rŽ=¥dåHÍ Ióúåïê9&½§/< ÑX“ Ö~ŸEˆØ ÖÉŒ<™íîÕŒÞMQV\ ë…1\VX3¿öJ|uè ·5‰ÌÚÁ8ñö} ¸'0ó€ÃÎNóãóæ„êÐ^M´Ó«ApÓÍŽ½ôâ™:³Y“¤d§T 90 ”#ò«ÅL¿ÝfB™^®c€7©ñçÌwIѯzÌb¦F¾ÌcW¯¸‹ˆ´Pà¿ ¨²zÃ&“¼Õê:É#ÄÌ%ÿV ö„“|±˜ñP êÈèk•pqV hx5Õ‹Ò}Ö!QÈ®­WUjs#Á®•®„wX®‹\)`k•&Çó.W¤û¬B‘x–!I¸Ë\æ¾½ò¤áÈ®”‹Œ°5Êú‹±¬”˜ÄKÝ&leýçu2‘ÎÿΙnŽErÊ@¾ Ün«U®„wûˆÅIð«t3ÀÕX¥Þ9ï,XYêŠ.¶‹ÅõÛ)wXnΠxÛ´]OÄq}†úç9íÚ.Ƨâ\ca¿ Ÿ»EÕωqÈõYN{ö‹ë2ã Øáoù¯£ …¢Ðk»Ta}öÚ±}‡bºR®¾Ñùø¯‹ ‡;:>w­Öú-«E£*mT¨¸¾ÑUb‘ºÍJ‹ì5²¢Ã•oödkrµ°37 ÅÖŠÚÅ©˜­B¸Žbµ àèg¦ØŒÁÐõ¾ˆØVɉÀÞ+Ú¼Ž"õˆšÌ,FÀËׂ…ᨮÖ+àj;”aÄ0Žpôè^zú†23´1ƒœ=!ò?¨`##ø³îú³îú³îú‹¯gú²sñŒÿQü‡pò‹¬'3úŽ=½ýF×$וŠO´+°ßñ1‡&Úíb7“Xn±[’g·»Táŧ;¿f¿;5«,S£­™ Þkò°bkkfc¹ô:ÙbíàcYOÌ7šãóæ„Í¡á÷z djü‡8ÍL÷fÜ/S£·ž‡ rº>¥ÔèÔßÌ X)ºÔÆY$øóæ;¤ø×³œÆ*lEµ¬ÁÒ*§»áã„FˆÈÝæz§ƒÙÚÿ1{™=å ÕŒ:‡˜O‹\/E]Y r½‚¹ÝCÁ®¬VºuˆLfcºO{ÖcÔü< ýXŽÿPÚGŒ£}–jŒÀ׸+_úŇ´ª)UR—Ñ+ƒˆªµ9‘à×J÷#î±R0ˆÄWL±'º­ÍrÀà}{Z¤O\Ä©GšÕlž tU©Èô·G"º*DqªÕ³n¸ÅnŽEtTŒb3º­_Qv5’“‰b;¢±afª+vÑx¾­À©4ãóÚÅ…˜¨­ÛEâú·¤Ç#Õd¾ãºÊÅ,]#x»mÇ!ÒÑq¾ºd[ãf#º6:ƒ…¸ë%&1ò+Ú—u†êã)oÚ/¯8 ß Æì*õ¿æ¾Œ6¼|©¸Rã øå}‡bºRã ÕǃëÁ¯Å±mã*åç õ²û ò¨yc¥G#î³R¯¾Ãûø¾Âü«v[V‹FTÚ¨WŽB‘ÄOZu­ø\±ñÏj%ǃT]D¸ðj‹­Åg+ÖⳂÐÄJ·CV"½-AÍg;ÕÁÐõð¬FÀʶZŠöƒ­ƒZ ÛHäi>Èr?¨6Ò3í\r?¨fJ´C PÞu€äPe„d}ßPÆÕϰªoˆã¡égÝõXNgõ\3?ˆþC¸ùEלÏêÅp?Ëô*ò±IœѺÅp?É›[8œéóX­‰‰ÛõOòfr­–Ÿ“TU—³Y,qll^wÕM­|©Ö)ÎÓ”˜_O>?0Þhhu‰¼Ü(ωï3‰ãÌí¾fm4&ЇC“º›+yìð,µOˆ«z˜ÅA13²| XåÌTØßíû0¸)ñ¾¦ “ãϘî“ã~w|µˆÕ>7ÖW‹ ÊùËÜmt›4 Øp'¬ÿõ”ímó0˜\B©­ýp^Áb Êàâ*­Rn3À×\09W*EâXŠárDXƹW¹uŠc1È®”Æw]÷5kaθÅ38Øz?¸©7‰b+Œ•É•à×Kê/ƲRÑñuX¶O½­Ñ|,6ŠÝc1iØzë…½h°åO¢Ú´Z2¦ÕJºûGç⑺ÍH‹ì5²Ð<ëUE‡*Þ+ò=sØ_‘ê´_‘ê´_‘ê´WCÖø#`e[- DGæêGkÈX€ù¬Â¸81ê5²bñÈ­Èqé {ûú„Ô¨~Þþ¡€êÈÎ[E `çH`|ê ¼dzjªoЦøä ³îú‹¯9ŸÔYpÌþ#@·EלÏê8Æ‘æý—èUåb“8£uŠØ Ö˹&uÚÅlLNß«¼ŸYò9Lg‡ìÕŸ³R’ÇÖÍ/ùj›áá™<Ó¬Sàœ®œøüÀcy¡‹-‡³e1Ÿ§‰âgmó3i¡MèrwSuç³ÀÝOëoƒRê ‡O–YiScm]œ¦ÁMG+› oSc\ÓÞ§ÇæÁ•…Oõ˜´Z8øb6#¿½=‡þµù‡ZÚOEöŸ<<»E¶À×:¯I÷X„]G"EIŽ õY-“¾¬É[q*jK‘^”›àßVE[Eâú픢¡b’Ç, a­MAò;†(·ÆÌGtlu&0ðkÚú‹Åõj“ ¶mêÌQo‘WYª“YƸPG>ë$[ãa¼]\¶<§G¾<U5*0ðV÷Ÿµ' Da⥠{ÏÚ“…*0ñVá‚>¼üR£‘÷YàbüjÝL^ŠºébkãÁñJäZ2êÅ*3·Ø®×Ø_•nËŠü’ÆÖÚû ñfªQ}mßSF½žÛ _$i[q–ž}©Q•–ŒŽÊYwò3û;Õ³ëì|XÌöØ}gœ‘„%àú¨¢IÛ#—¥eÁèÕ°NZøïúŠmv°Àæÿ©Û_:ßëEð3ÞÞrE6è}Û»à¬\Œâ7ü ›[(£…è¿Gv.X¯„Ž”V.þæŠ/Œ¹E°ƒÁù²ÈÌ?1å‘mÙ dfÔ%ˆ:±­UMñg¦¨[¡‚ŽïÁNÇ`ŽÁ;€OÇw¤NÒ5/ØGö‰F'`>„NÒ5/éDèÕŠ'_ÄR0Å€ÔhœX¾PÏÊ-û{—DyÆéîNÝ"Æ1¸vk$HÇæf´PÌ}xv±½œ…cŽ´¼ÁíÁ1üÆá€k‘oéò»9¢_÷,ôO}úåÙŸgiúÇAi¶e26WÁ©EŒE¼Ïi“áNu „”.Âê…ŽTÈן®l dxË,5az$e[áÁ½1ªxB0*tk±Èòr"ˆ¹˜Sqdõ å£ÿÖøã°"­™%•s­ûúôk“x–"¸ÉrDXƹ^“î± NŠéI¸Ë\æ­t#ºÄ)1ˆ–#º*Kf;VÉà× ·G"¹e&8ƒÕ’ú‹±¬–,D±Pu&0ðkÚ.¶‹ÅõÛ)1Än¬•®ã±W椵ƒpƒ|,ÀõF×[ö‹ëÎ \aa» —¸ÂñPòÛF°8x‘„¾ã ÅC̸ÂÃuqã~Ñ}qæ\aa»\/ ìWEKŒ,7W7¼ý©8[|ƒ^Æ2ã øå}bº*ºÃhÏ*±J¾ûïâºÔv+¥"0¾Ñ«nXÌx5ø®µȬ˰äW╈žµšÄc}†¶Éi Q_a~F¶ ì.ÈÖåk`f>n3¸¯É-LmºÔÆÑ[­AÍg;Ó˜ùê+ð3­Ö&‡¯’ÄnEc¡ˆ¯iËŽS¬ ±_=(äƒ-#‘Z!ä|Ϥ1h¶á â yCÇÚ¸äPeã#ô*›ØY÷}Y9øƒ,##ø³îú³îúŽs™ýY9øŽVgèF94ÑF~Ì<ôŽQ«šÑ¼IàVˆã(gà/Ô«ÊÅ&ûiª±wÀKÕ‹ Öf²W;;0Xþ¾ÔU»êe ©Z±Ïg[­,©…ùþ©»ý'–ýSc=Ï¡X)ñû€ÂóF|~à0¼ÑŸä,¾yM{6 ÖÍûgBÛÌ”øïV̨&7ʵ²À ˜úë,žô8ÆþðÏsr›û˽¡LïVãm¡B1¬ü¬Š‚NZøº 倛 MB4Î}ò3Sõ«ï| Œ_Ùl˜¾ù)f TÖÉà×EZÚ r®pRw]Ìt<è­ÛqÎ Lq «$ëXòÀÔ¼EZèG¸ŒTœ$oU™-“Á¯ktOURcˆ8ÝY+]Çb¯ÍIÂFñuXƒ¡žªÅ&1ò+Ú“U’µÜv*üÔ˜äzëŒþãÅGĸÆÃ}sçnÑusáöŒl7àqó#ýGbº*\r=VR–ý¢úãËíØoÀãæF3ûÅtT¸ÂÃv¸[þkè‹FU´T¨ä}÷ͪ67Xjž*‹FU´T¨ä}ÖjUü«–Õ¢ÑUj¼/qÓ¬f¸Øs¦ZGƒ[â®¶=VbKX\f2¦Zƒ‘TYjch­Ö&¢z骔_Qج”‹1Ö¡HŽ¢FµW›ŠÎ[-LDëe¨9¬çzÄ| ëuŠØiC$Åã‘Z-LA¨ìœµð3¬b±Î^µ‚¡]¡,t=Ÿ¨I Añú†=ýýA×êY¡Tß}ßVN~ ËÈþ,û¾¬û¾¢ë ÌüY9ø³îúªoa^s?¨Ï95¢.¼ÆØ ÑcOBýIŽß«ñ0~)±~n±_-ÿTøí-oçEèUnúúÚüí9ÝSSc¯@wú©›gy¬çÇ{q7`¡N ½O¨t9;©ñßÏ¡ø¦ÑgŽTØ×¡eæõ=ÍTí%„íj2yÅ®ScÛÏÆ©ñ¾ü}y¼)šÔqç5:5gÇ’÷‹äl×I¡4WÝÓ• „Wæì þ¸æ ÿ íÞ£a¢ÚŒî®Õ­†:ãº9ÑRwÝwÜ××£^V+‘È®Š“62Àþóº‚ÙàoÖÕº9Ë)øƒqº­Vºßî# ]oU‹lÏ\2ߊ÷o…˜¨Úë~Ñ}yÁKŽGªË ûÀß•XË6b;¢¡áà×µ&1ò+Ú‡‡ƒê°X±³Ý-¼UxRã øåmÚ.®|JŽGß|Ú¶íW>%G#ï¾m[ö‹ò¨yÛäö1=ñ°ßG9ý‡b³R£E~,l‡g]ïZ/­ô[Þ2®T¨äDµ¬Ö‘à×ä×äz®–°¸ÌeL¥Z9¿V&¢zéªÄÔwM‚Äc}†¶Éb7ƒXäNƨ¬FÀʶLZÙÈÓ`qZŠÎW­ D«uy¸¬å²rãæ¶Xn˜´Œ «- A¨nœ¸ðkD1ïïê¡]¡ŒJßwê†iL†¨Kû?Pu€äV}ßUMñgÝõdçâÉÏÄüwzOÆ™,œüE— Ïâ8ôG²Ž2r éÇ3úŽ02µú“*Ñ{{ú²G&´T“×ÕŠùÀVÙ©±~÷QXïÀê+SпK$V?½–üSës]¬g!`ŸÅ‹Ì³X&_ß_ª|w·p ã÷…Âßã^î Ísãù~ ƧP•>5R“˜ÅA19~lÍŠljÙ0ú×)ñ{Â^T#>.åšÐ¦Fúö5 ñû`zM‡í…·0ó’4ŸæMl¨…ÿüÔ’Œ«]î± EâXŠáCÁ®–í¢ñ}[Rcˆ8]Y-“< TzOºÅHDÅÕb†x«èäW1X°2ÀÕZ¾âüj^dÇ#×Í0_qÝeb—Á¿ Ÿ»EÕãMâÿ¾ÙøXn7aW¢ëh¼_]² ð°Ün¯[Þ~Ôœ-¾A¯cþ¯c ¯*n¸ÆÃ~¹_qnu?ã øå}‡bº(wÂÃvu ¥.1à×чØ]•GÆ6EåC)JŒx5ø®µŠéJºûGçâ‘mÇß‹õ_a~U»-«­S)Q…öŠüR£‘÷Y‰¬F7Økl”K¨ºÄcu†·±i`kê¸:·Àସ=VŠàèg¦ØŒäz­#`eQÁ1k`eXÁhb%[­LA¯!bÁ¬Ybèk‡L^2•a©ˆ¢ô>þ¡šS¡ªÁÎXFGñ c¸ò~ ëÈþ¬û¾ª›âÏ»ê°êÉÏÅ“Ÿ‹'?N~,û¾£Œ ƒûGÒ‘´w'ñ{þ£—2gY£Œé•þS6”NWxXº˜êýOCL ñ2Ð~j±õ= ô²E[¾¦z Š|cœNfË>©ñ†p›lø§Ç8ÇS`¨¬ZÃßê›ÞÍ^øÕæóp¢Ýµy¼áF}ÓÆåMzä™ZTê¨h¢§ÆªSa(6e}˜•65­LÚ¦ku_ÍÊtm¨JzP¢¯\‰+ÕÿŽ;¦Êò{v™õ• HØdñ²AßüÃ(þ?óSüúÍ‚ÅÔ˜â7VKfÑq¾¬Ä,W#‘]&leýçuõãY)-g"ªé3c,ï;¯¨¿ÊÕ&9¾i‚û‹±©ø-ñ³ÝCÀðT¸ÇȯyKŒ<÷œ||Šö¤Ç/_4_QØ®Š“U’ûŽë+T¸ÂÃuqã~Ñ}qä0ºÃqƸ[ü^Æ^>TÜ)q†úçÌ,-Œ«h©QÈû¬Öõ¢úßD=9ø¥G#î³Æ66‹U¼T,-Œ«h¬lˆ˜ÎÞïR¯¾Ãûø¾ÂüEYª•r+ñJŽGÝf&±ßa­²ZGƒTWØ_‘­‚ü\ö¶uÂÔÀÌV·'-|æ)ñ¬Gò=ÔS˜ŽFuÖ#àg[«ƒ¡ž›b0WCÖø!ŠÅ–†"_›ºrã”õ‹C?»”iŠÑjb'[!Peã#ø†0s‡¤xÈþ!,wOÔqÈþ¡•‘úMñ z¡Ø@p9Õ“Ÿ‹'?N~"8 ÏâÏMUMñû0óÒ-¸f\ôŽ3 oHÏ!É­)< ÑbíïÑL¼‡%êýÖ.ñ;~¯ÔÏA®#oæ'A!ã%\ÉõòOä>îV>¶iËTØón';?V,v'+†4qvëÝ ñïLMæ„øÕÂóy¡>0®/6å9•—Á©±N¬þÚLøß÷ë`@ŠÃ‡2Žl,Sµêýd/S>³ƒiPŒo¨þ…~¯0ã+î?xûdé. ÿPÌP0 ÿÄI¿ð®Ýê1ÖÑ´ÿÀ4ZCÁ[¶‹ÅõnIŽG¯š`ƒ¥¢ã}tÊLcäWµ%‹]ꦶmêÌBŘŽè©w {Î>#ƒ|,7°«Öý¢úó‚—U/q…â¡æ\r=VR–Í¢ã}YˆRã øåmÚ.®|>цü>dc? ìWE6Ñ…†ì$a-ûEõǾA¯cq¾Œ6íW> ó†Ã®WØv+¥]}£ò¬Q…÷ØjÅu¨ìWJTaȯÅ*9ušqºÃUjû ²R£FÕ¢Äc}†¶Éi oŠºÔr¬ÂºŽkEQXäW×Z˜Ú+u"ÜDÆtëS:Ùbj'­> Q=iðZ˜‰ŠÑb?šÏtå¯n˜µ°2­“ºÔÄò–ƒcͤa1§à_¡}í cZÊ ¼e¯âÁÎeã#ø„±Üy?PuÇ#ú†q‘üCPçÁC9†ô³îú›knÞÓpÙé6ÎOégÝõ`dÔq“oHæ ^QÆ4´_yàÉÚQ9S/Ô«ÊvÒr€Êÿ+iïø±[“ò¢§Ç³ò¢§þŸ•?Àž¦Ž [ÏØ\±õ·K¾Ø±aÀöh\¦Æ±Á¬ î¼á€ó»âíà\/4gÆ®Àclglø×«„ÉÆSúþï6f¦U`5*|j¥ K™(=Â5 MÊt{¾·ÁL i»\â.SãXÞüç9±¿_fË ÑŠ`ßÙðÿó7>ß΢6 *1Š#¬]ÿçg¾>GtV,,ÀõEnÚ/Õ¸&9¾i‚“x5ín‰â*¢ÊX¾Fãvû>ãºÊÕ&9¾i‚ûŽë+¸äz©ùÛ´]\ø—Øo§çnÑusâMí¸©ï–ߊú1—ùï énª ¥Æ6ëŸ?AØ®Šm£ Ø ý^PÆpÚ] ËÄsþ!Œáé^2?ˆKÇ“õ §#úƒ/Ä1‘˜j¦ø³ÓUŸwÕŸwÕŸwÔq>©¾#sv‹.ŸÄqh¿hçÌ™VhãØwõdƒ‰s[­\à0‡âÅ|ÿªk¿[+“·gÖÊ|v–§-?Cì~X »_§;ªk°gú¦Ç÷³W…=óôýéO^p¸[â|s5Àø÷ãr¦F½y‚™©ØTàõƶ T ­Íš`/S¢-´ãXBò™é§µ˜¤ØßY¢0P‰ï©Ôцü>dc?°ìVjºÃhÏ*±KŒx5ôa·hº¹ñ.1°ßGÏØ_•CÎ;ŽE~c*9ušqºÃUjÚ´Z2¦ÕJ´_hªx,mDµ¦½i Q_aØ®ŠÆ"¨¬MDõÓU‰¨–ºè´1°ÖÊ%ǃT]1àú¨¦-läi°8¬FÀʶLZÙÈÓ`qL`x>ª)Œ9N´1¬šýUËS+EˆøÖë°2­•¤±üÝ\x5¢ε ÂÍÕ>}¡Œàt—h2ñÆ¿ˆc8zA–‘üC‡ö…Eže„dzjªo‹09ƒÓ(íä<”[o#à¬Àh{uS|QÛÀx(æ ^QÆ<šÑdäÒ9E±.zEï3À¬Â8Æ‘Òï ’\ìµs€Â‹¡öÏk¡ö? wìÓˆ¬}OCnÂÇ=ú‚Çõ­õ%69Éõ¸uÆ.Ý{øV'¦¯iß±ìøÝY=ò¨œlÀ•0 ¯6äƒÑîádË>5R%Ì–5w¬Ìdñ°é–m tM¶Œk^Sãí«ÜÁWëîüŒÚO" hE}ýƒå4e䦤÷þĪ4 TìVƒþ¸/`¿ð®Ýê1ÖbêN27ªÕk¸ìUù©,cf"ï”$Æ {Qq·Õdƒ|,ÀõF×EÖÑx¾»e ]aº½K~Ñ}yÁKŒ,7`k„]m‹ë¶A¾`z£k¯¨ìV©q…†êãÆ÷Ÿµ' okØÆTcÁ¯Å·hº¹ñ*9už±ºÃTñCÓ‘_ŠTr>ë<~ñY¡_ ¢·Q…÷ØjÅöåY­aÈ­®R£‘÷Y©Wßaýü_a~U»/°´e[)QÖÑšÄÔK]tXÍàÕ¤n°×È­, }V\«EeÁê´Xš¶ø±4=mñ~GªÑYpz­#`eQÁ1k`eXÁhb$kU©ˆ5ä,@x5‹,]¿©‹ÆRÔ~ ë_Ä1Ó«7Tùö†0sÒ^ ¼dÆpô„Ô¨c#0þÐǪ…“Ÿ‹>ï¨c:€}•S|U7ÅS|U7Ä_oà¢xœÏê9Fgñ{~Ùæ÷,;GGÚ¤–Ž_‹hsú±G“­‹¼Nߪ“ÐKe©èmØXûÏAAcö~CáSù»šÅceðmªÄõ~¥bóãp†'_‚¯|y] ®š3£ùë“+Ó© J™©ÚPS#U;€Š„cUt¥j…ª~…8¸)±µúê|dõˆýu27ýfêˆ ±õ!å4ƒ¸mCÿìwÖuòK¼ÊÆû4Ÿ8Z.Fü?rRnð}~£ê'q µ†ì0« .Óã`±r7a…XQv˜¿í–.Fì0« 4­ºÃö¥Œ[‘WmŽEQXÚô~ë†#ca묑$ìn°ú¨¬M †”&‡ªÑbhOŠÌ'-Ðôk$åºd±t=ÉbÆãÕ‚ÄИiAb¶U¶ LHÊ"´+ƒ ¦E½ò­–.‡ßÔ1‘œEh‹¦.¾¬PeôîÚHÕÅh‹a|‹h!ŒŒãí‹6…·šÈÎ>Ж#Áù²}¯»úC‡ö†0s é†À·iøîOÇw¤üwzOÇw¤üwzN°ùzGÎ'Ú8ÉÈ7¤L^رAï}¢sŽ1o o.z(—¶eÎýD¼æì8ø±ü¢_±òrð±¶>NZA1å†öÔTèô2i›qÍcô£_,e™Ì˵ˆwúˆcP˜ð±;•‘žrëwGLN2Y:<Ý],S£}0™ñ25S° "ÔþÜ,Š,cmæ÷ÏK%2ŽÄ‚dkðð,bmg.)¸Œ‰W‹ïÏ?8‚£Ùžf,¸èŒÂ#u>p#þÊûßÌ‚E#q+6N¨IˆÔ^/«sRc‘ê²_QØ®Š“_4Á}Gbº*Lr=uÆ_qÝej—Xn®…2Ì|šÅceðmª™Ä|ž9S#ÏŸ_èÖ7:•:5ÐÂgR¦FªCR˜x׻͙©‘«> JŒcÝx´Á”ØÞqùæÙ Ú·§¦Â,¼{§×ÈS£V[ÞFÄЋÏÎÐ>ÑU¼#¡ÿæËCŠø‰"bÈHvÅ=¥ÿžÉÑ/KnÑuxÅÅöÆ5ÊÛ´]^1Rã øåmÚ.®|>цü>dc? ìWE6Ñ…†ì$a-ûEõÇ™qÈݬ%-ûEõǾA¯cÂûì?µbûÅf¥Æ³¨xÆ¿0û ²¨øÆ…†Ñµr•}ößÅ E£*Ú+"&3·»Ôa}öÚ±oZ,9Sè¾ÂÑ•l±œ<í÷•ºÌMJ‹ì5ø´ÆG*ueÁê´ZÑTV#ùõÖ¦6ŠÝHŽ¢b´R#¨˜­¤ñ­•¤ñ5²Ä"±Ý9©Ó˜àg¿êÅ| ÷ýX•l´2ˆ­Ö¦ ×±_[¬R%ðl‡èò±A” Óº ¼r+DqàÖˆc#8Žü!,šÑÞ2.:C9†ôƒ®9Ô2²?ˆc#0þÖwÐôÏMV}ßV}ßV}ßVa±U7Äqøx(ßgÄþ#ˆh'»£œÞå‡hãGK¼+ÝïKéïÊÅÛߥ‹Íf·w?5L¿éô!zœÓÜÛ3g§G˜jmšÆõ ¶v©‘Îüɲt±/¡pÆz…‰•²ºüÏ¥‰ßéàn±¶éÆ[¨Æ7Óù6Ù%25gÁ©S#U;J |j·”‚›œûÖå!·§¦Â3£XÖÆlˆ¯Ãב’ Τ4ÿ´|ð5 è $GÆ *Ñ@a"½Œ6ù½Œwø"½Œ!áà×±Œ˜Çȯh:[ªƒ)q†úçÏÐv+¢›hÂÃv0—Ðv+¢¥Æ«׃ö¯P°ºÐ}UêTr>ë5½h¾·Ñ1ÈR£‘÷Y¨×¬5V­«E£*mT¨ä}ÖkHðk|WØ]’•häWáR£‘÷Y‰¬f-;]p´ÆG*uù¹ì-aq˜Ê™c8äWä–&£ºÑbj;­&£ºl‹1Ö¡hb%[©ÔHÖ«ô÷á~ƒ¾ü-LDÓñb¿Kv¬WÀÀÖëC\:bñÈ­µ±½ ûAàÖ‹‰@Ä|!ú¼¡ŒY8ÿPeâ9}ǃZ!ŒŽ@¬Æp5¢ ¼dÇ¡aÚ÷7h2Â2?zj³¶ƒ UMñfËÆÅTßÄNƒ¶Yéª7ùöã9öŽ2r‡Ôr½®\ôQÆt†—ùScÙÞ^îŽw‡¥³°¬ÔÈí¼ü…rv>M7¨ MÐöe诗Á´NªuL€©,Xp=š’™þ›N…2;ã}ÃÚ^:•:6V— ›f§F½á!¢™©ÚPS£^üHD©Ñ¬} …ªly…~ÈÄ F˜¼^õç‘j`Ea–x{>¯ {üÓí,€_øWnõë ’ù”psÀhÚÿà7íãRó.0°Ý®÷Ÿµ' okØÇ‚+ØÂZª½>цü>dc?°ìWECkF°Ï~Ñ}qæTaȯÅ_a°çX¾Ã±](Bëí•bŒ/¾ÃûV/°ìVkŠüÆTr>ûæÕöåY­au¢ªÕŒ÷1:Æk‡:e¤x5¾+ò=sØZÂã1•2Æ"¨©ÔLgN¥G#ì,Fðkë¦0<UˆÞªŠÄoÕEb7ƒê¢˜Àðs¨^±(ƒTU¤±­Õ§"ªåŠøˆºZœÓUŠø¹,R9 Cô yAöƒÁ­)ˆø6Cô yCÖƒòƒ/ÑC<Ñ ãW¢ÁÎý^PÆFaý¡ŒkH:ã‘ý@ñø³îúŽÁ;‚v;§à¬û¾£Ÿ`Ž?/däÄvØæÜ¾£ŒhÌ$´rGÒ_å\¤Nòð±p‰sµœ…Iè &ý±õ= » x…¸d§GÞ¦É~¬hqì¬o27иbc¨X™[+¯ÌúXÖçæx“ ¦§Gœèækè׬&uS#U;+U šû3*loWäÜ©îvª±!E5R…ŒD3³ßÜñÅÉõÿ9õDà-ÿµdNtµÿÑ€¥/úæ¢ý¢úã̸ÂÃuqã{ÏÚ“…·È5ìc.1à×цݢêçĨä}÷Í«î;š—Xn®<^ ~-«EÕ¶ªTr>ë< {Ú ì.Ê£ãņѽ©Vì5M½h°åO¢•uöÏÅ*9~<¬f<ü_a~F¶ jëFTËüŠ¢±5×MV&£ºl†6ÙFðjÏ+CÑ×â²àõZ+.U¢üU¢¸:·Àà±[+müX•l±(ƒTU§"UºÄÔwZ-L keŠøÖé›[ó!ú¼ ûAàÖ‹‰@Ä|!!ä¨c·Ýú¡˜dgá `ç ¥Ú ¼dÆ5 ëʸäV.ÕMñg¦©†@~'ãL–}ßV}ßV}ßSñÝé7 d¡·‘ðQŰöŽ|\°í¼yñé¼øñé¼Mh¯ts¼=,Cà{Ý\½úÙbNèåÚ™¢nŸáW'cM:<ÃSlÖ7­Ìè,o‰]øXæMX±/xùoKûsŸ¦8)ѯxHh™xÕ[2d§Æ®Á­»)Ñ®‡é‹)±~*î&K1Õv=‡Áª!4"¾Üï-çDs\%.ªö´jhAvœO ïÿè-¾ƒ±];áa»:†RÞóö¤áNE}ËŒl7àk•ôŠè¨B-qèÓ_Žý¢üªq¡È¯Ìq²/<ê9ÏzÑaÊŸD<Ç!JŽGß|Ú´·¹~GªéJŒ9ø¥Xo°Õ4ØXr­×Ø]‘­Ê•häWáXš‰ë¦«Q-uÑc7ƒTV‘ºÃ[â´°5õYpz­¦bµ¹b>uºÄ| ëuˆøÖêÂx(«ƒ¡ž›b0X•GÅ­•c¡ˆˆ5dÖ&£IÖ‹S:Ù;kàg[¬R%ðl‡èòƒíƒZ,R%ðl‡èò†=ýýCô yC×Ü;Cô yC‡ö†=ÍÚ ¼dÆFaý¬ÀæL³îú›†é¦@~& †×ân=&ÙÉý(-Ÿg}`"¦ðˆá»øGÐ3x*’\¶Hã:CKü¬M¢w’ÅܹÙbo°Ÿ•‰ÐöuÝB1è{9,oZ ™¬jÀi3ªc ۢ͘ƇÊ™bÙÈ :X‚¯X–6¸bc²Æëðc3¢*Ý&ÎJ™©ØM¼kÐúbÁOŒëAúbÊ|ZpªÆe27×›:(qØjñG$.\8#éÿ¶±êRÿ5êRÿÑ ~Ñ}qäM8XmáoðE{mZ.­µR£‘÷ß6¯°ìVv(Bë £<ªÅ*ûì?¿ŠëQØ®”!uöʱc1°Øs³¥½h°åO¢ÖZ*­XÏqÓ¬f-;]p¿#Õtµ‡"¨¬g¸‰ŒéÖ&¢Zë¢Æo¨­#q‘ÊYpz­äzZØ›…ŒþEðXˆ˜Zhž´£Z'­ˆþEcºs"[ûµb>uºÄÐõñòLZØVËC‘Zj­%ˆˆÚ=ÅZr'û¶Kàk|Ö)ˆø6Cô yAöƒÁ­ÆFqOÀC!ÈʳC㿨~¯(cÜwõ ‡#ú†3¬}¡Œáé  ¸¬û¾¬ÄfN³¾‡ VŽG’³îú³îú³ Š8€Ðöë1:Ù>ÎMíÃ.ðö÷cyn$Ž1 0SãÖòXØFš+o~–'dë%‰Ù‡"±;>†«{7;Ùä)Ñæ›f±½h&Lh)Ñæ6Û 0³%‰X ñ+ӎלL7X—ãúq–ëúŒñ2ºjdkÎv“XƇØ1*|c\~˜°S㙪ÌÈQSqƒÏWXÄKuf¨æ-ßöìžÿßÿÜžÿßÿÐZ!FÆÑaÊ·ŠÇ‡"¾ŒO|l7çQÎaØ®”«.=›Tln°Õã‘cÚÆ®:C„z¡svØ6?}ßS±Ø*›â©¾*›âÌNƒ¶Eöð '‹bÄFÆÝü28¶Ñ9Ç·„FñçǤqH„n ~d±p‰sµœ…‰¹èMbt#ÉȬHl71ébt=œ–7­¦V7½„”èç¦}dV%FC²±9ÂÓnAL´í<‡K oQy)Ñ®Î&^5{÷i’›T.`§Æ5Çé‹2/:¯.D×5TxÛ}{ÊhæâÛt»ÉÇþâǨuIÿüרuIÿý¦|ÕÛa·h»*‰QÈû¬á#ûâ¥FŠüXÙó¦½FÆÑaÊ·Š……¢Ñ•m‘ÛÝêU†û SAoZ,9Sè¾ÂÑ•l¥Z/´U<« ö¦‚Ò7©×äzç°µ…Æc*eŒþEQXŽ/´Vù¬MDõ§ÁH;Ø«™bj;¦ÁJŽ¢G:˼ÇuˆÞ cºÐÄD?U¤±­×è>u²ÔÄLV‹SƒZj±_=ÿV#`e[-N`ÕúÞÐ} ðkEŠD b> ý^PÆp:KÁA¶‘È­}ǃZ!ŒŒãíÜx5¢Èä É cXzBÐÜÄ1@>ÊÁÌè&Ûɽ¡pl~'ÛÉý,û¾¬û¾¬û¾¢vn-íüû"4sǤqh¿hœÜîÄBn7sÂ8ÉÊQ´ãw<,StØ5^.Þý,M¢w’ÄìÑXÑÜí!áNf{ ³S£Ëîh…:>­¶gHðø;>V'8ZmÈ,Ol<Ú§FZ~e3 Ôè×C TØáóæd©±æ²ajŸ׌:Ä©±Ö£Ûâ` ñ½!˜Ê«È™1p LµèÜ΄@ÿâÀdð×þÿþ‚󥜀˜Å üD̆å*ûì?¿ŠZ*š*Tr>ûæÕ¤x5½Ëì.ʳP…×Ú?*Å‘9ÙÕëHÝaªµ}…Ù,gŠüXš‰ë¦«HðjŠû ò5°_avF·+X]h­±XäW×R-Ú3§Íbj'­> AØŽÇ™bj;­¨ê%­‹CtýV’ÄJ·_ ï¿ ô÷ájb FŸ‰Ìx5N±_=ÿV#`e[- ¢+uúŽëDíǃù¦¨c¦?V`”DÍÐ} ðkD1‘œvŸHeÌVhcÜwõÐ5å gPþÐ}Ç"ÞÐÆ|ŠÑ `æÒ8Ôûy?¤1@>Ê©¾&a±LÃb™†Å3 ŠÎÚÁYŽÁ>ÎMí›K£‹aíF7–‘Ä4£ÉbNòÜ#pì“–&Ñ;Ébn\á 5‚¼çÐ’ÆßÐò±½ÊááN»mÒ!N«m™ÒbTd;*dyÂùœ»X—`wóºÇ›ÀÅOŽ Û ]McCŽ€’,c_a>9𬄿9æ«@§Æª‹¤3ó¯Èȉ6ÿÝõ©?ÿ¦«¯Ì‚%‘¿:åoZ,9Sèµ…ÖŠ«T¨ä}ÖjU÷ØØ_’ÖŠÛ•ˆâûEošÄÔK]tXÌNÆ¿&¾ÂìnV°äUˆø‰…‰¨ž´ø,MGu¢‘DŽt˱+¼Æ¬FðkÖ‡ƒT]1kg#MÅ1‡ƒ-ª+CjÉ«ND«uiÈŸîÙ-L keŠøÖë°2ßñ1xämð¯Ð«¶ƒÁ­ÇL~¡Ÿ0gY¡Œ h†29¢¸äXëA dgh>ã‘ohc#8ŠÑ `çZ ËÆGñ df>¼‡’€ØÏO·“úPÛÀù)Øì±Ø'c°NÇ`³ÓTN×Õá»øG€{ö‰MÎ¥¼"ŽOˆ#ˆð<#pó%xq‰èt±0‰a÷X¬M 7šÄÚwÏh)‘ÚwúP§ÐörXÕΪt}Ûl†‘ QÜø‘Xœ·2MóS#~™˜¶Jt|ÐLÂõ>5wǼ•6<µg!dTø¼ê³1‚cUÌâÁ8ñª¦rYšOQï´#Ï =×þ1@ƒÿ$DIˆª9ûž(Pâ$‰~r±}k&!r•r+ñJŽGÝf´Ö«WØ]’•r+ñJŽGÝf&¥EöüZFã#•:û ²5¹XŽ/´Vù©õŠÉbj%®º,Fðkb˜Àð}TS¶r4ØV†F´¹XIì25¢c ·üQ®ÂÃö¢®‡­ð8,VÀÊÛx2Ú¢´1¬šýUËS*É,WÀÀÖë°>îÔdƒ/ŠÑ~¥ÄûAöƒÁ­ÆlœFÿˆ~¯(c¹A·ŽEh†0x&²CY!ŒàkDx¹‹úCÔ3xd$\PÇå䪛ÐQÛÈy)¸nØú|'ã»Ò~;½'ã»Ò%o(Ü7Y†Å[Ú,´êYÓáFfŽ!Mf± Ñ &Ž-‡¾–&Ñ;Ébv~j±/Äí!ác_‰ÚAcsflòèú¶Ù V5FC³ª›œú)‘¿OY—-’ŸiüœX)ñ—~<˜IOŽ>{•7Þç¡°©Ñù_Žb¦FÅIÉŸ¬´d)ž«ô¨ ñb.ùÿvÙÈ%_ pH.Ø_•nËX]hªµcdDÆv÷›¬f¸Øs¦ZFë U«ò=sØZÂã1•2Öò*bj%®º,fðjŠÄcu†·±i`kê²àõZ+.U¢ÄÐõ·Å‰¡ëo‹ò=VŠËƒÑ«`®†zmˆÁX>‡£Y,VÀÊÛ·•iÈ•n­9­–(9ÀÖù¡Ž˜ýA—ŽEh­y+dh<ÑÚD b4 ‡èò†=ýýC8¶ÇHc8zC8¶ÇHc†o ºkgC‡ö†?% ²À¨mà|•S|LÃb³îú³îú³îú³îú³ ŠÎÚÁYŽÁòÆdqŽOÄqžÔq KøFhŸyî¦Di¼–&1=”èïµ¾V$#€örS£Ð–ç,Ö7«,™écTd;:©Ñ÷m²D,jòt…«¼ #jÅÇÜüœYM_8æa TøÆZ`¦Õ5Òd•:&¥Æ¹8>5Œ„çÆ«- d j¼ÿzÇÖhpФA¯ýºéæø# •}ü)Ùgßß½Ô«¿ û ò5°_ahʶXÏäU‰¨žºj±5×]‘¸ÈåN¿#Õh¿#Õhµ°3QZÂëE|‚r×ÎbŸŠÄ#ÝE9kç1OˆÅb>uºv×ÀÏKùÑb>uºÄ| ê¬VÀËJ&0ÎUŒ3ZˆƒVMZr'û¶H>Ðx5¢éÔxäV‹Pc­h9ÀåN†29¢¸ÊS¢÷ýCìƒ^PǸïêdò†3¨wòPÊucÚ/¸å [I¶òoh§ÂÏMS±Ø*›â©¾*›âÎúÀNÇ`‰Ù¸·´@Ú#ˆhЉcÀä#ˆj_Â3D虣ˆGSY«Âu ~¬K,‡&!LòìŸ!bm¹‚™kå´BrŸ¦K¯§%Yk2¦ÇžíÈd¦Æ¯Ã2唨֬ù˜;ÁO4íy„ ؽKäØD…24þô¹ÊÞfæ —Œj³x¼A €jª@Uÿ¡º•ÿ.ì}f‡ªDsBC¶)èÝ/ýb EÞ®ZÑTV6¢zÓæëQ-uÑc7ƒTV‘ºÃ_"µ°6dV#‹­µ‹[Ȫ+üŠÆ8¬GÄL-F´OZ S4üZhž´#ùŽëüŠ¿”å¯çíEb¾uº±}’=p±[*Ùhe[­LA¯!Ú´C1ú³G"´Z¸‰ÖÈcÛ÷A·ŽEhƒî<Ñ gXûé §#ú†23íÜnbÞÐ;ϑϤ1ƒ˜oH]ÕŠΠk09ƒÓ,û¾ /|"ðŸŽïK>ï«>ï«>ï©øîôˆsBÛy‡aí›Øp§¹á¢t ÌÑÄ5/ábä7žëÛ#ÉX—Ì’~,MâCà%ábo•ÂUzk„Ö7f{ BrŸ¦KO“2¶Õ65“µb×Y˜ì¦Çöq‚Ç­vs‹6-] %y%NŽ>¸ “çYBÁ™ €jª@Ñ”˜]£ï6ózÿØ™ RâËq ´Bbpðs­–‘ºÃTWäz_‘éb?‘_]JŽ¢c:Ýbj'­> Aäv<øR#±çÂy>ƒÈìyð¿Aß~¤ñ­–+â m³ñjb EY$æ9αŽkð3ßõb¶U²Å#(ŒéÐý^P} ðkD1Ó«0J"Gæëò­Ç¿¿¨gÀ¸é `ðMd†29²A÷ ¬–$rd†1¬=!°?ˆcÜzöè·”Àþ(-<%Tß/ŸwÕŸwÔÛwô³îú³ Š8€Ðöéׂ,´êÄCO„J1;ÌÑÄ5/á¢| æ¦Dy;Ëu1Îç¡V¬Kpyî±:ÚÝ'B[œ–7CiœV5FC³ªÆ¯ŠŸ½™ÆËTØÊ²ºÅý¾2{Ìc%>5‹ù7– |j?·°S#Îÿ8¬loʣ̌e޵ç÷ÿ€´É3 ü€£¨ÃaP]H•fhûͼÁ EËX]h­±XäW×RÄv*æXšŽé°V’ÄDVñZh–´VƒÚ%­¡ˆˆ:~¬VÄD[gê´–"UºÄÁÁòÕ‚_Qfc¥ˆø‰ÖÉË_ÏÚŠÅ| ëuŠØVËŒ¢3§Cô yAöƒÁ­+`e½Û+Xè\Õd–ÐÖˆcßßÔ?@×”1CzC8¶ÇHc†ô…×ø†=õí ¤ØÇõ£ùô†-Áé6ÞMí±Û…žš§c°U7ÅS|U7ŘlŽÁ–Ä·´]hÔº8†€÷qìŽ!¹ð’3DøÍb fw–ëËKp&±6€ÜÅbm¹‚™t´Ÿ"JtkzXú¿g+7BË&jÅC V=K3¤-[–@</듧ƹŒï2’™·×“b=ί¹ÍÕ_!ýUÿàB¿åÁÜ ÿ íÞ£c_ûuÒÿÌñ÷ö+%ˆÞ c VƒìjŠcÕEb7ƒê¢±ÁõQLaàËjŠÄo±Ýhb"ŸªÒX‰VêAäv<øVœ‰þí’Å(Ιb¾uºÅl «eŠFQÓ«NDÿvÉbƒœXò±H” GÁ²ýJ¼§n<Ý dgheÌVhcÜwõ ºkÊΡýùC)Èþ¡Œë1A‚ub†3«k09ƒÓ,ôÕ7 ‰ø£ñÝé?Þ“ñÝéfB&çÅË0Ø£ˆèh²Ó©dCO!GÊ8‡'”d‰Ô £‹6úXä¦Ç¾Íb_‰ÚC%ٞñõ~äl’Çfq±cµ]!­Šl~ø'ÂÅ­< ¢Tøü:tæ*t}S6’¦G ê~p-E(ÿDºËL¿é 1|(TïUC–°ïý²¬ @ü€!-“6¶#ç L[¿â #¡ˆÞí–+`b7üLÚØLhßfíÈ;e‚ý‹6<â±[)[1ú†óv'Aý l²\Eø>´@m/Ÿ¿.ëxâÅl¢5sÂû@ýÑ–/)Žû.ƒanEh€þ tyî…㡪ä Y ±Üs$1dGh¬wÄqˆ VK0Ø °Àõ1‘˜S0Ø ¾-ÐtÂNDz³¶ƒ S/Ì6)˜lS0ئa±LÃb‹-Õ‡lˆÞܤDÛ¹'¤`˜Ð{‚#-áÑ—¾æ¢0‰Ý¼?(ˆh§¾Hœžnvv ˜?­„þd÷åÄõŠCùm‡eï’c*²ЯÊÿWH+ã¯&w\èÔòÂÒùØž"FH\e €ŠcWy-å<àÜSq`D’rø+è2 kQŠø‰!€ÿ|°$HébbÖÎF›Šc[TV+> Ê»Zˆƒ§ê´ägã|•§"»d±_(ºNÜx?šj±_9ß~§$Í­ˆùŒ“8b"+ue1÷e‹¼9ýA¶‘È­ê FŸBƾþ•šQZ û´CÇÚMÌXö†23´Œyô‹Æ®9CãÒƒØÅ½ §ò³˜:eãb›o&ö˜$Á3#ñÝéfLÈFÆÝü2fqí¦ug†žB0Lð9Å1Éä#$N¤xMœkÌNÖn±-·Ð•^±7ô<©ñï H*œ€”–=g2ЕŠ|k-ˆ}–-yÀ3X•§Q„Ö5Q±Ì"B6[S“ÿÁØúÍTˆ ÅF ‚êDƒs(œßò4%±Laœ«f±[(ƒTV#b%[¯ÔwZ,WÄ@ÛgâvãÁüÓUŠøÎûõ9&mlâ>p´q­ÖIàÖˆc¦>ÊÍDgAdœ‹éÇ¿¿ªzú†0s‡¤xÂcŸHc8zC8¹‹ŽÇ¸õíºÏýCÕ´1˜?4-í>ÞOé:ó°U7ÄËÆÅ3 ŠfÌ6(ãÐc´ìvÚs©dq KøFáØ{GÔ·„fÌ 1O8Üà{Xœ“µ›«Ó¾ñbé.HXýq23SãYYªŸð,½cγ6JÅ‹ó¡t\©‘ü× ØBHÒy§¸f‰&ü#¯ýºéæù[žQÙ®7V¿öë¥ÿ˜?é6­ìY,H‘ÒÄÆKQú¿QÝh±_(ºNÚ´X´Çê ´ŽEh¿R¯(>Ðx5¢ÅÞ<þ/ÔÖ¨cƒ§âÈäiø²t,Eh†=ÇcÚú’¯(bÐ^ÐÊøÔ1‘œ}øCÔè!wVH-<%f0zdŒyô˜$YŽïK>ï«>ï«>羽-‹d!7—<&^6(ÀbxØŒòáœjdw8Ü(#ŠË ÌBijµ›«Ó¾ñbõµ¤&-ëkNI›zÚÓŠŸ½{XõœƒÂV¬_½›¢ÁȽl4´M›ÿ…`)ñC?Ð87@ “2Èè’fAù"E!=Ä l±AÎ·Í tÇêͨ­ê FŸBÅP0?Nèc#‘§âýAˆÓèC㿨gÀ¸é¼ d;ÈÎ5²n6\^°@ï>G>Æ5z]vÀ¡ˆŒÀú£·S% ¼z!ËÉYˆÌ2ñ±LÃb³ Š‚ÑÉðS0ئa±FáØ{N¼ìd1ŽO6£Ï”dˆÔŸ #4|¼ÔÈöw’›|€±q›miLÛÖÓ+§ò]cõ­ç)ñ¯£2QI…ká‚%1®õÿá¤trSýðB‘l—àZ@_ûuÒÿÌð!n†¼&/KQú¸å›~!Ž˜û+4d\gN„²<Ñ gXó?T+1î;öPÎØk1hG¯h]Ôƒ^PÆF`eÃÇ”3¶ý!ˆêÒ³ Šm¼›Úq‘%3îúyØ'c°NÇ`¢´ð<HZubÌŒ¼lQŠÝî(Å?É /ÌÄe{p¹Àö±y$l$±[ŽJfÞ¶™X½?’ë§ò]»Weñ(’ft³þ·'Ù(Iÿ°÷8Ÿè÷€×kÿnº_ùƒþ·x BÆÄò†1¬9—”%˜äVˆ>ãÁ5’ÈÎ5²pbÅÐÆuŠưC;`_Ò·¤1øy(]á ´ð|•´™†Å2ñ±Y÷}Y÷}Y†Å3 Š8†€÷ìvÅ?Šc“ÈFhðÜÄ#‹’|#<[`71XžIÐÉMŽòÅå¶™(†^¹‰DÖíîÛ ýÃŽ'ÿ ?Þ]¯ýºéæù^ b@Ñ´ÿÀ9,€±Í^2=~¡‹qê]ÕŠΡý”PÎÖ1K1Ø&^6(ö³ ?ÓùNÇ`ŽÁ;‚uç`‹-:±fFa±F+t¸£ü8FŒ_˜#ŽX€vÐh›é'Ó"KOüZ¡Ê Ùtõÿ·]/üÁÿb‡ïïRWFÐÿ æóºÆà'Ü9öŸ2A¶ž•˜N™xئa±LÃb™†Å3 Šfnp=§c°OÇw¤Iv®{XÞ$Ì“Ÿý R-’ü Hh’fAùÏ[&?ýOûJŽ¿öë¥ÿ˜?âÜ8âò ýà5ÚÿÛ®—þ`ÿÅJ±|ÂB¥×þÝt¿óü$»ÿb©þ‘åÚÿÛ®—þ`ÿ…"Ù/À´€&€&d ʸÛù¤ÿò I™äesoÍc¶£hÿ€+b¢þÖ¨}í×Kÿ0È‚}Iá`ÇpŒe„áÈ[¸0|õ²cÿÔÿØÔe‚©cÿöÒ€P6€ÿø~榊ë8‹d¿Ò†ž¶LúŸõÅ}Y‚B¨‘ ±^ •IráË Ç·qÿgÞ,0´ªBd»ýb,*Ÿé]…)ÃøÄ‚[¨Zf¿ùáÁÈš¨KLS¿5ÿ·]/üÁÿ+4±<£9ÀØ ÈBçý¶À2£A©Ô«1`·ÆP‹ S‡ñ‰¯EtÉÿÜx£hÿ€FÐÿ 4Ÿ!ûgß.Œ° y wéÀïn¤ «_ŒbÃS‚4øþ ;èpJ *@è×þÝt¿óýÃâVX‚¤—¯OýiANú°T&8““ÈÒX6€ÿøißC€‚V‘§ÃÄ‚ Ÿ÷ 4mÿ𘠜£Ò4øxDÿ€Ñ´ÿÀNú°Ükª_¿Â”áüb@1`‰€©Á=#O‡‰A?÷€Ñ´ÿÀ X"`*pF¯ÿþ$ÏÄ÷û“–8P2œ?ŒH·‹2©n™Á…@rˆß«¶ôQ¼UidBˆ«™L±ÅR÷ÿ£hÿ€”áübA¢Eñ`Ažð…Ž*1Wßý]Â1–‡!nãÿƒ÷êŸ×ïàÕiP™ä˜Š[Å‚T·Là 9D‰¢Œ"ßÿÐGd (NÆ$IYUº“Ú‚I+*·øý=¡ˆ0 e8)oeRÝ3õØH"‘%¼Ú'ÜZ£hÿ€RÞ,Ê¥ºf¼ú$Õa4bI+*·øe=¡ˆ0 e8)òn¨/ú†½ 똃ÿÄxð«|‰²F©p—½Gf" \»/a@Êpþ1 ¤ÍP_õ z±)Eâ¯ÿÇÀ[߆ÄJ`‡¿Œ©oá@Êpþ1 3|T\“⬻%ÑÍQ¨¤ L’uK{„½íþ¦ŒÙü§ã (NÆ$gˆ‹’|U—WXntÃ;P+•Bš=D³ã¬Žm"¡UK.iO“uAÔ5è™â"äŸeßû±þ XCc&LФb´õÁ{ ‚l|dΆ̄R·F'lŒ(¨ ˆ`Øÿà?ÿÙ endstream endobj 858 0 obj << /D [856 0 R /XYZ 33.853 921.043 null] >> endobj 575 0 obj << /D [856 0 R /XYZ 346.792 747.754 null] >> endobj 859 0 obj << /D [856 0 R /XYZ 246.302 266.316 null] >> endobj 855 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F30 591 0 R /F28 616 0 R >> /XObject << /Im11 850 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 862 0 obj << /Length 1998 /Filter /FlateDecode >> stream xÚÅXKÜ6¾ûW4œCÔ€›)êedkl8ˆ19I°àHœ.ZR¯¨žqÿû­¥–ÚgrÚ9ŒÈb‘UüêÉŽ7ûM¼ùñU¾ïn_}÷>I6RŠ2MÕæö~#ãTäÅ&/2!‹|s[o~ZÓØ›×÷½«×µ¯ßlÿ¼ý öï¤ZgÌsîNíÞìêÓáäodŒ"^e=vÎû®õŸ w •®²Õgëª'`ÑKŽ”9ü'0CFë;YfËsþˆSù׫߽—ù¥r‘”‚OÊêZsØîUF#ãܵ[•Gƒí ‘=SMoyPÛ?b©[[óôn«Šè ã$Ž “à¦}ç«îè*&ü¶-T„ ~kº-¨ÀLÝcÖ}iC-3‘% î03 C0.-0V[ƒA'"ÎôxµS*‰L[ó༠ERHñð9 e\ˆ¢ÈÆs±¦F^Š2O¿¢Æ€j<¡ ‚äžH¨>4DV9Ûâ†!hÜÝów´ª`°T¨t Ö- 9ñæpª²Œ†‹ƒm&'›áÊÒfHaap Fà`xßõk¸)Bërâ}Ð÷—¾Yµ^θ¿ôQRh+£ÞòØÛož¤™(ôU¨ØÿžÐÝuª¢¡Ã¯Ä›»UEAr–N{×»a8ØwÖ4Ï©ZÂÈ;aC e¦¼Øî ){Ö«¥D¦&`ÆÌ°&)Õ"“éEÒµ[€T¾z^vô ž¹II¢DšçKˆÌñxpå:£§Û˜ðÔ'28ðR®:XÏœ”'îÂЮ: ïâtžm¿êXO0ä @¢p ÂÙ½ça¹ó“ƒ"³Pï‡@u]K«Ädé2ÉÁÜ\íÚ=O*°©í œ:Ï߯`¬dÝ>ØÞš{`â•aÝr*OE©'ËOYÕt¥È/yíÓ¡,4Ýü“ŽÁt©ÈŠUËî™’Ñ;LÎÄ€7^õ¸LÄúµÕµÚe:©ýýêi hô"÷Õ¥P÷E›Ç:êZ4YQD•iƒæ®A4ǃm¹êãy(ð}tÐ5R‡ “Ú4Ç)ÿù@PBfáðkëÌgÇXCqìšcY)@ˆÖ .Ü»&T*Ï+TûqpòØ^É»J>£­OÕ`ƒ9]8‰¼¾Ûa:®CsæÝŽ+Çšu{»Ñ“d}€Ã »Å Åü àÂ~Ýמ‚îÀ~Ûóàê¡3µç=¤0 ¨d‚Æ5Ïý¡£¡¶8‰ CÙWŸ ñ¾2 gÌ€Q+.BjüÇI‘R|ƒ\ª^÷Wδ10„jþ)»Â¢ën±Ã¢‡l· L©à™²Ç½-x&›êSÏyÆ÷è±³y{¯+ê÷æèjDCÚ¾¢õˆ«@LðHœQÿyY–Á‰ v"T‘ü³,Ô©[z/òŽeñgx;j[kG‰àͳ˜w1«u83ßñȵU׳:]OÍ*m(¯z]]Žå€BgÞMåÛózm½Û·èu8!ˆ0ÃÀ¡r ×÷¦õ‡é%N\m̓¾Û­]fön/ Ê}å|>*2S,àøá£ãÈ/0`ɉÂlªþ¸ÒV[zå…ÜÏ>òl u¡Ë©QüÙµÿ|>©d©”\–¤ r(… ïÓ¤Lé)³¸/]'ÏC4Àà4e&œ‘î³ä„´™»„ Èg Ož«Âö“§NE~µ§/K‘êÅwŽÕÔТ9×NLD’MeýS7|í@Hö²¼tÈüÃG Uªµ—´(=CÚŒ˜Ý“òAÍjc±‰a÷,‚{âR¿a6Š'‡c*úœN|ñ!Ë–cÅ¡É&$®_M0n,gäŒõرpÔ¾¬ ¹ú©ëS‡’2P`Ï©SÄZÔ}»¦Ú¥Ÿøp©ó?bwô‚¶ââ3ø‹ÁWYùçÉ ‰\ï4Hiï†óM,âX­ò4æóÔ“‚à&\¶éßùI‘€Å7”ºü€ý? z œ9ª3ÏXF’Š•ÐY‚/f÷ÐåbË·¯þ‚ÿk endstream endobj 861 0 obj << /Type /Page /Contents 862 0 R /Resources 860 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R >> endobj 863 0 obj << /D [861 0 R /XYZ 33.853 921.043 null] >> endobj 170 0 obj << /D [861 0 R /XYZ 68.868 410.305 null] >> endobj 860 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R /F34 597 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 868 0 obj << /Length 2357 /Filter /FlateDecode >> stream xÚ­YÝoܸ÷_±H_´E–GR_T?¤@®¸âz½^Œæ!w‰ö²ÕJQŠãþõáÒJ– z0`‰ä3üÍ·–ïîv|÷×+¹úîû8Þ ÁŠ4•»›Ûà)ËÕ.W*ßÝÔ»Q[žôõ«ºFGÑ”]¹hJCrP‰ÙéËh઄¾ÈYºæÜˆý.”N›b<œ_ÀUhdZu d6$[=­¸“fÇ…hJ™×% š–Gëç²m|,K^äIÁ¤Hå$™ê*´¶˜ X>H°ºº[R}„¨ÂÑ}dÔ›!`á/^õæ<ÐŽS!$…I|²Åó9J_ x­ô¦bVÄâ÷ßôµ³­×WŽáÊ \wåÂR¹yå·u½ºEøÓè6]0 ½,Læ[š¾@3Gï}Ì-æÊ+!¿pú*‚Û®iœEß;PqÊW…µ£H°ÎäpšÇÖ Í "‹ÈåãZ¶ðT)KErÄ÷Û³mm¾9ÐP9|×ßíèå‚äz»Â” bwÊÂþ-]cÓÒE–€¥Ë—èÿpÀOª¥ûºº’kˆ ˜µi¦¤Ç!ÅûA4¢´Œ¥2.ÞC*]PûZVWƒ¸+n¸ðFãKÖPÁCºÔ“e"ºAßñ‚”®¤=ª’Ä¥~Ì™ö5Vâ)_ˆSO*{QdOŸ@#SÄ|ƒ¬.ˉC{2¾êjÎ¥¥ ­„ss…û¢`[iR=â¿òÕš ¡™;à1øßÐ5 3 &§XLdص¹õ40ÛF“Äi½\Ëê WêÚ o((7êŒsÙÈíöÍfÊLX1×Pëõà T;›ÈBbŠ¥.‚–d Æ@œÏOæbÖ¤QWHfÑ»oSÂ%Èe¡¨+à Å.fŸ–†TÁá› OOèmý4ê Ÿw}Y€þƒ=EÊ’be¦­z]RµQ„,_\*FS ìò¹Šn{hÜÊußù­ÝêˆZ[ã+‹ÂçèfôkµzO3%=nõ=±8:Knëé„P“Z]á¢æ†BVÖðœF &*äõ&»ÁZ¯½ßÒ¬¯ëxäðèÜ̓ï÷¹$‡”A\BçN?ö”+ax40Aáaq²¸D¦ËªÒ ~ ÐÖg/õ¢9  ’>è5T¢9RèO¸„‚ás´3#;°4l m•½kSµR‚¶ˆk›HÌ ÕBq*Žƒ°pªë]žsa ’’Þ–+ –òºrêj~ñµÆ]†„kiLàˆëoÏÝexBÛz"Å‘Ï1”§/7ú¤‚½%M”·ÓEJzoš‹¯ƒ3¦ò|‰Ä¶™]ÖR3¸ÏTµ›‘ òFo~N€sŸË8X±§ñ„&}DBY&æÔ.«Q…/ò¹H$Ëåª8tòŶw7W_| "v…¸$ÔÇ SI¾«NWã»ÖÀž ÜS»{GyÚÅ,+pW³{õÏ‹¡¿ÿˆÍ”Ø2’8Y¢Bl5®ÉY .bÉb€ïÿ‘<ÎXåã"y¸ëRrt¹§¾i‚J>%²¡ 2ää²16ôMÛV§‹Óì…->Úeú%›‚Ú³pa«a ÚS'YƾžÛ¬g O"‚ñªExdx0°iJúcû\1À: €À?Eý‹ÖeïU2—§¡»¡¾ÒÓM_o0P¹†§Ìßq\‡0}ÇYõ_së2•r>¿dÐ…É|é‰7/kížÔºHò6áö¥ï¿ç–‰zr±ê{ŸÒàA¦èEøïó1þ'¸_×CbKE:5yø^žÏ}wîû– ­RôîýÃûÃÏqLÕxšS‡ßD(Ò­3LH¥íƒ…ƒYcýÄÌ2‰þ¼õåos/ƒ°Ú}‚Vš™áÓ§ù «›[ú­°‘«„ö£=ýýl®êZ½ùƒÌ=˜ÆOøãÎc Çןñ§ƒëé*Fvü5ü¡¼›ÇMEÁ5ß\ŸÊC‡Þ5ÝBr>pÈr–åb¹íÕ«W«ø°2ZÉ•£L)ïDTÄ\&³ÿziáÌ endstream endobj 867 0 obj << /Type /Page /Contents 868 0 R /Resources 866 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R /Annots [ 865 0 R ] >> endobj 865 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [378.136 455.043 388.904 468.991] /A << /S /GoTo /D (appendix.A) >> >> endobj 869 0 obj << /D [867 0 R /XYZ 33.853 921.043 null] >> endobj 174 0 obj << /D [867 0 R /XYZ 68.868 655.447 null] >> endobj 870 0 obj << /D [867 0 R /XYZ 68.868 524.887 null] >> endobj 871 0 obj << /D [867 0 R /XYZ 68.868 500.492 null] >> endobj 866 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F23 427 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 875 0 obj << /Length 1364 /Filter /FlateDecode >> stream xÚ•WmÛ6 þž_a´_œö¢Z~ÏaÐnk¡+¶^Ð}¸­\„ùm–|i÷ëGZ’ÏNìkû%Ž)R">¤hϹs<çíÊ3Ï×»Õ‹7AàPJ¶Qä;»½C½ˆ$©“¤1¡iâìrçÚ½ênÛºS¢âëMDCWÕøŒ\Q %X!¤•¸^øÐU»-Œ˜U¹KU·FÖ°–•\ñV¯Ü³¢ã’¬?ï~Ç64$aëß6SS›û?{Ñ’E®&ÚÖUrÇÕN”üJñæJüÇ1ÄGÃL4˜ì6AQ¬UgfÒ%»÷S¯½^qCSF±³ñS’n©VÏùÞøÒUÚfœ­ËÞÐÚ}Gî—øXÖ÷§L” ÏÄ^ð\Ë1wD¯¼Úö…§(Ìœ¨@.! òâ|»wmbÖŽlMÝ¢°µ’µœI.µrγ¶øªÁïv‘„Ó¤žhË®R¢8ñ)çR´ãˆÏ\ÆšeÁïy>[x»PÅUÓ}xSã³²@05>šº?RàÂÀi˜Ö–q‘ûó¨PpÛ!wçtêièë-ŸfuÙtêŒ#E}Ìë£aæžeЦLÒö† ra!ËxÁ[ì»›Áår.ÓP¡ütå¤#÷ùˆ¤– çã¥cŽ|i‚*j¦lÍ …»·›1„zù…^žÚŽ=˜üøt^Hþ½¾Q2×9O+k`¾Þš":Dv˜oCQŽëA„œÖÔlò~=ïæy Ë>]×Þçg¦Ë_Ì}ªLDÙ”—S±ta<•Tm—©Óje›‹ºúfs]$üp¡Ñß õúë´í7ë…ÞÉ€LÝsZ°aHûàEÕ•·vލ±€LzÇ2t‘G ¹M~'m½·—߼➛Ì÷¾½xC“ñÈ´ b²¥>¸šêmµù/u³öâ¶T;l}pc jТõ+»í_kT½Ç®õE…/}¯¥ŠQzù“GÃÂîHBT½_ÓQÎR߇Àz0ïj–ó–4_çâHCG©Uï§6<@²µŸŽ¼ó]¡Ì³:‰Nö³þËÅF§1 > Ó)´-Ç Є!L‡R?ûM€ACp(Ìj Þ*0æaËE£ŽáÄ×=6îÉf]%Ø4f… Z.eÏoTÅ‘¶@Σž놼 í WÚº/ÀÕo»Õ¿+ «žC4%^ì;>õHDNV®®?{NkÀ5lSçØk–N@â-ZÎÕ꯹¡|KI…ýV40gÚ@’™P%MfŸ)?v_5 –ºXjU.¾ô^k‡Û;Gÿùðvå\ƒvâ¾ê—íÇ‚é%úß$Àù“yaú.2Ö÷Ü? Ÿê&;`ì8Ôº7|/ÌÄ Oñ åð$LpŸ]|›d£ì‚ìB;u´\½,•~Ëÿ ¥Gä½€|òr ȆҘQ•j›”FhÛ&Üz.øA] ~Ý* D<ú^BØÍ…þzÖ2Óã¦ËY+³k!þâK\YO¶Ï³ï¾þ&É(–šË¦­KÝ÷°wÀ±º}˜Ù¨lú@°=>´–q&Gg4̹ÃüYØ޹Åe†HaBÂ$<ïqQŠÂùqX£¾k rœeˆÜA¿Õ§ [R$š±Ûø¢5•ÕËátù}ppY@MO0xÊòaŒ>™VŠúG¯d×Î`9{¯áÂÞN¦šsì쌳˜H )6A¤© B_àƒ ôÄÿ}P| endstream endobj 874 0 obj << /Type /Page /Contents 875 0 R /Resources 873 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R /Annots [ 872 0 R ] >> endobj 872 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [229.636 206.151 240.404 220.099] /A << /S /GoTo /D (appendix.A) >> >> endobj 876 0 obj << /D [874 0 R /XYZ 33.853 921.043 null] >> endobj 877 0 obj << /D [874 0 R /XYZ 68.868 188.564 null] >> endobj 878 0 obj << /D [874 0 R /XYZ 68.868 129.956 null] >> endobj 873 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 883 0 obj << /Length 2408 /Filter /FlateDecode >> stream xÚ½[¥¶ù}~ÅQúFÚÃsY)MÔR%i”™´ªrž94 fv[©¿½ßÅæËH›Õ*/`¶?÷‹Åáá _^ ÷ÿüöêåk¥QæZËÃí= “Pgù!Í’0ÊÒÃmuø1øÚž¿éë룎âà3üéÀÖç×?ßþð£8Œã„·>Mómq6«ÍŸŒ]ÿ+®|²{æñ»¦×'þnJÅ£Ÿ„"/xù(ÂHê¼àë7D»híX ãm½¡E¬÷jÞ;çþ­p±´ûea¬“5~¼x÷ÞúUõÝ`ãÍhúï§¶-î‡9BaüÚtEe†h‰Gfa–KÆó'@„|1€O2tìvîÝãÉ0è®Çî|9üê99RäŠýÀÂ×÷ô#å„b%ý‘Œ„©ý8v²1q|¸™$`&ú£š‰ôx^¾ŽÒ¥ÇeÊDÓ_åŒûÛn¬KÀ£â¬¡q$Ø.d뇖GÝýfééZ¦Ùίe˜, þ%H°qý-¯zsØÆ)`SÃKµí®’0"¿$ĵuÔÁ}O—w¶ Ózß ž3Ï"’I”wk.lx}ŒÓ,¸wv=kJj*oìòÂ|¢ƒ§šG ¸.°0Rä©¥/‹¡²¼T´Ÿgòriì‹à{€9ÁÔ;D)!ÃU©žÏâ‘ñ<µ=-SñœT ËN%r%éXÄa–i/êW»Ú% ÜpÇ;ùäHR‹EF*]KíÏÍxꦤR£RH{Z‚³Æ´Ó§f»«Q\$¹±yË §úá„ñŒ-#p–«IÁ`u}]‚rÜ‘ÉãˆÝmo '0¸¸ü¶¶.ÞÔE³çewîcmݵhcI`Þ8™à‘L!êBæ1>mAVðo'à#)ksa„Àg2ŽÿÏEÍ{ðOO…­wÀIRvm7/]K¤ßŒV´“° z Ò \ Ï€k!ÁΙzôµ»–Ç[!ÏBsu»Š¾È–ßÔgÔØä[^‘>¬{‹•{ç"”2¾¸­{æ„A Iü®¦›-œ 48EÃUΑ³¥FœÊŽJ¨0É÷üôâ“–c„Aò+Æä øDp¼™¡m*:L‰ðßÜ.ˆñÁÀ!£àNŸÜñº­G´$:X”¥iÌ@Ò_Þ¨˜,¼Ü2ä~À€£ÿ UtyF|Ç:„ÊØz ‚Óµ×ã"Æàjêö×çSèfƒÊ)Šà#˜¶…dc9Ü"¨hlÇûN¦é-Mk§Ál²lX»”žª=–vNޛɀI”†Zo”z‹Ë†4qj½§ÇÒYH™·y†uàó:þeÊ‘­34š€_±ë¡k¡g!<”ÎÞo.@óãÒ¢_ƒ‰º#-È%ŽcJ?„Çåü^æ¨q¶ñ¢â9kl±¡é]t›w>klØ l$‡U÷BrJCã‹)»n츪ÎóLˆµõ¼ï5˜Ôâ7ž>^C<*šÉUõüÈoip=ËW® 膊;ƒœk8γ«;®LU_ìNaµÉÅ^ím+f­ÂZÁӵǒˆ9à^&ÆsôøK1•»ÂádÙX×ll0¾H’§üR‘«wš¸d¯‰{¾4¾™zW—R.J…l•øH‹÷9¤¬óÖz¡±<ÅX@bÁ§¬× m~&懙q/öÆÐ¦ë§&Ì#ï pò²á{6š”ÙpOǤÌLŒlë‚ÖO&œË”u†/:Ô2[¿× ¶Ñã‡]nâ<Ì£ø B!]~úŸ«ÜÃTE¹. ¯Ýy}HÃ< Àñ<”B»Je3³þ%[ìS¡ÌÕFd+DpÎVÛ}„Isy8î_·Q€¾<×¼¯ŠHLmµ‡OÉ0‰ô"¦ùíànWL‰”ï#¦è½Å¤>DLÃü¬ÁÕ=„B ‹¯È°®]Jޤ‹ ‘ÂrjdPÛ g*«`Ì¡)À.І—crmÅ®NDðË®gfyË™ŸvG~I˜gÙï¶×ÏöT ðýûuá_ µ€;ä¦Í?™Öõ”'×er:˜ÛÏ“²ÄxÓ8.E%ñaÕ=F/±õì\èq©µ†âìÝ‚qm×­æAJd6Ç7Nà,fbõ:Óÿåöêÿ 2G endstream endobj 882 0 obj << /Type /Page /Contents 883 0 R /Resources 881 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R /Annots [ 879 0 R ] >> endobj 879 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [169.87 165.141 183.569 177.76] /A << /S /GoTo /D (figure.12) >> >> endobj 884 0 obj << /D [882 0 R /XYZ 33.853 921.043 null] >> endobj 178 0 obj << /D [882 0 R /XYZ 68.868 249.574 null] >> endobj 881 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R /F30 591 0 R /F23 427 0 R /F25 604 0 R /F28 616 0 R >> /ProcSet [ /PDF /Text ] >> endobj 887 0 obj << /Length 2537 /Filter /FlateDecode >> stream xÚåkoܸñ»…P ¨Œf>ćR܇6—®è‡+ì=\®€¢U¼Bv%Ÿy @{‡R+É´ÇvÒ k©ápÞ3œM.šüpBoùËàš°„1I”à‰49á¹LÊÃÉo'”(™i1{„Wa— 9å¸ôÛ´HÂ̔û!XŸþx`<ù¾=ù;ü 634³Õ@ÒfFÓ_ÎOž¾dÈ%¹”<9“(CŒ2‰”°$dr¾M~I_ÖcWne)ãÏN7é÷uqÑ\­÷û±ºb¨› \)ìž§\§/O¤,ö¸€Ußo,|Ý t9vï,¤?¤h¶ºƒ­}ñÞ£kàPýDÒϧ Ææâýé¯çv7,#Yæ©?ÀÀ°DØÀUúŠJj!Ÿ¾ä Þg­¬Vܾ²ON„Rð0ĈÃ))ÛæeYSmq¥l—–ñzâ­,š‹aw$ìÏÏ^¾éÚƒK»ÍøÄòø€ÚÉלA¤²º—$Ëu ^/“h’kÊœ€i ѹ@ÀŸA~BÁŸˆ<@ÐT›d}p3"¯—ÜÕÎõR¶\›ô»6.XÚÆpÜî-ÝÂùåÜ[¯ß/gL‚Ð Â\¡z. 8%_½@çH³ 9B¬éM³ãžÅøÄ8×vÿŠ!ÚPPã$¢&B"¹1ÈØ*X€—™cŒ‘ÍXHf:™)‹?޲^GyR\ü)K"cÙmŒñ5c'/Îgi„+p@ì™ÉàTn£ÿ/¿Òd /!b‘›ä½=$¹$”ÚóöÉdH’€PL”I¦­´¼êx4¤sôú?Gx3Dk¹7e$Ls0…$áÀþ´ x«¸$,›l&Ê'Á„M eaˆ4*Ùp ¡ßkáý®êª¨iX¥ßÊŠq³¤ÎªÄÐwUO¯]«̆ܤUÕÌ’²‹:-öûEFRÇŒtYtC]îý¯¢ï«ƒÝñzÿñÔð”@V2=«›²ZoÄ“‹·Ç”Õc¦ÝH[ÈpŸoÕŒHË@yiéܹ oÚÎ>Px³‡JÓœî^ö(Xº÷À‡ºð¶L°åƒ¯¬&ÛwQ¬2sõ~Ëc?‚ >Z…?±+xµ”°E¶EHÑà’µÁŒ:ž¹âò²sɇúP Ž3iuð–$i+ ¶Âç”?€ñCõÇÁSû^HÑû¸è• ­ÉIkÆiÍ­Xy8ÙXŒc‡Xªçár_=‰11ìŠaf3í¸ßm̄҄ÑÚ® ‹ (‡D>KÓ”Gë÷ ,*ŸËá†ß÷2BˆâÌÄ|SÖu‚Ë30«hâSŠ‚hI­J@æ=ú9”^£¯M% Â…‡vpf&ÑÌPŽ -XòÔÚݾoñÇd´ÆmØt±sJFì¶àK’æéߪ!E2E$‹¤CN2ì<þ3"%f}NÞ5m|vŽ¿šoªðø­žYUÏËý¨ ‡bû‹Èésê†Ç•“^¸3ù-Ùç…ÕõcvÛ×CÝ6>¹¸Ø2ÚËÕõ‘µÃ®!©x7E}ˆfHÁñ~t;o>ëœï<ýàP6rÕM ¹‚M5×ï"š„Û \FçîrW9ya^×é…ÏvMˆ³öVü,Z5òœÊ $Êr¢Yö0k„5f«4Å•wa §rØË¼Wì^QN¯¹%0¸Ìm "Ù·é|™6™&Še³´—86ßvÈ›‰`n ÀZR…íRªÍ£²2D¹ ¾ [àÄ*c…3*YC2ª¿qãzÀd²¹†¢)ÿ°Î•áܱ¿µ6ï:*G¸=gziàÏâÇÒ,»­É ²ú¹÷[`¡áîª3æ¦{?ç9|}ñŸ±ÕÄq@2Íå§„sŽ'?ßZg_ •…ŒÍ긇çü¾sGÜ×a®Áuá\ßÅÞõýí/íýÚ×DPaÅhï[G"Òp]´ÕTfIEÐï°ª‰ª0K­¯ª%!Û ZÔ>1–4aêþ~²¼ ?ºŸÄûº™‰?DfÊ¡ûd¸ÎL|á©Q/UDåæTÜÙI—II€^(OÀ ‰ÌnLJŒj¸çè’Ò„ î6RÞâhì %¤+!!]WÁ™Oz¨„Ä$$ýµÍüÚ\d'%¡Ö¹(»i(! Ë„é %6"qbÜlÂ,ˆ¹B%TL aä0„ÞËØÔ¾+Œ½ŠrpýzÛÅhV Ûºƒ×uë×›¶;ûÐSZ5™®m)ù†-W`+zÙÓzi'8ú6£2þclYã‚m¬ÛŸã¾ð …?ή"v"sl`õ®ÞV8 ðȱ)nÏóØK×5g#Â?þ=õ‹-`øzá‰ïAƒÞd¾déýlèßTøM€ôÒR)ˆ³í– `^ÀfÊ¥ocÃû ~7g™> p³¡›Æ@óÎà¼1(¯"šæI2 ƒ &6W¨U?T¶©( bÁ`¡¯ƒ²ìѶõ§rßúƒ·Mõaðp“mÁîmÕ—]훜=ì¦OBà‡!޽ïH ±î¶«ãÐîe]í·gÅ»ªëc.¢!‡« D 'T¾ ü Î×ó˃¦¨¨ŸQòš]mÅÂK'ø;µWíÈ@éôÇ×g÷{äÕK^<Ö® ;Ú•ÅV;mÁSõ¡8Ô_>ŠËbnñoWÛØ×2“´ãÖÎl¿cÙWýʤJ`gèÆ0ªfMÜ…‡XÐÙ÷=hÐêG—kËÀø¶Ð#µ5:aÚ“ Aƒ°Sˆâ`šg / l æ­~YSd ÙË ´18Œ~åó˳g›Ÿp¸3P%„År?n'±àâE׎—s·R³V¦%XmcæÊeFŽ Ün­RMC6 ¤¾˜¾6Ü—S~`Ûvás#?Ë-k«ÒmZØ,äÒ¦—*±ãé¶,—Ú‡H»R÷oIŒ&(áR}*# l>1R8j{¹o{œµÁ‘nþæ¸Óþ;0©!z: lBø|W•ojëf¨ºèñ†ðãm®jÊvl6Áß!¯j±òwHÅ–f05Â_4~x°ríúÁ¯ŽÖ4‹½õUN@‡"ìÛZEÀ‡cwXñ¡ Úa.†¨¥@½KåÇí¦’é©< èý,žâ¶¡8ؘZÆoŒ¥]ãî­ >¡2éX˜¹ÂB?.§2ûášw½FÏ€¥#¸Ÿ¢Ãs÷$.‡ŠÖ;¸Œ0“Ê#¹nÌËèlœËS¶«âŒe9ÉÜí õ×7)Pp×ù/Ô.ô³ endstream endobj 886 0 obj << /Type /Page /Contents 887 0 R /Resources 885 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R >> endobj 880 0 obj << /Type /XObject /Subtype /Image /Width 546 /Height 319 /BitsPerComponent 8 /Length 23634 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂ?""ÿÄ  ÿÄÿÚ ßÀç΀¢—®ˆ× yeïý³B7‚Ê?ZlI—sI| «5Qƒ[´Q¸¿88óê8§×Q~âØ ù]ÁK£½¯õ¹â#ᬨ¨6ø>D›Ý?–P þŸË/b‰Çæ–)Î{žËìÂ5þù¢ú],õå€Eò€zø<° ÿ(Ï¿‹çúãòÀ+ã+¬EÈVí ÏOi}Å#â´DgÌ ¯ãç‡g  ü°gŸq¬áº­á€7XÖ5ŠûQÅ,ƒD”P þŸËvÍä÷e®ô{ˆk?`Ð%×,äÚŠåØë¬k+5OK’„€ ü?–+6øðÛWU·GE`“¶ÔwÞwš»Œ85  ácóÓ†\×ss”šì€@'ø,àåùRºaôaèzóµ¸Ã½ÄÇ>ïW±Ž¹âA á¡ùšX[[Qg¢@fż;"rH_ÖO¢Kíaù€ ?Àù`1^Üz/AÔ÷7R¿Øhò䯆Hk~ïi®h·Y\ì`ÊM £äóàã>©—Ô@'ø,Hø[Òáu[Qèýä<«ý€¯ö@–r]hœ’­¸ÂßDÔoóµ¸ÇöŸà ü°@XR»SNµ¿´Ö‡µ¯ò4sÇ”zËŽY ìyhÀ0ïq £Têþ}7ôó‡.œ@'ø,ðp¶FÓFÓÌcÎWWû_ìË5¶Ú•öú謃 oÐå™$ ü?– ;jq ²×^ ¯î*À+ûZûØ Sí€Pú½îÏ]Go+ª³1׿Vx5¹ë €ÏúŸÞT ?Àù` ¬ÛãÀOZ­Â8Œù…ºµã7Mˆ±ð¤ÖUd¾ ¶>V5M¹GÊÆ©Œ¬j˜ÊÆ©Œ¬j˜ÊÆ©Œ¬º“ú‡êúX€'¿<úo¡êCÎÖîWªÿ°”g&9vgçû£Ãú˜ð£Ißæ ç¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿Ìýœƒ0§ëð¥çÖjœhix¢¼bþÐfñØñ<ì„u¤ogö§SÉdl|_C€ñ³ÓA‰€ ¿hUé¦áA–èW9.Aôua„=ì¤ðÿÄ.(70 @P6`'23pÿÚþR&RÆr/í‹ ¯Ïòïœ+²nÇ$œ…¢‘ݳ%#˜r.­n­ã¦/æ‰ÆÆðY_XÉÚû5&_– ŸÒQŸäʯ¶1hã˜j©‰pÀÁú¨†5Ô$oä‡cËæâþêÜ&  lÍ›Qš †Ö›òs% óD⌛‘“—m“¬Ó¬éC-æB²þØÝI€‚ A7Œ’uo%|ÌðÉõ4ßi=Š@s$9&\A”L«Ÿ¹-‡\àÇ-š ÁZØæe«îåËé¼­qx€B-ãouü¨ø)OÅŸÁê‚”üYü¨ø)OÅŸÁê‚”üY÷ý^¿ùAÆ9Š!W’àx mRø!Yì3ªÖ«Nu@|ÄSñeÛ5mauæÂ²¡MÂÉnªîîÖÂ×Í…ey°¬¨R[Z”–‹ƒ±óaY^l+*.Z.rƧK…ëÍ…eI:T‘VPs‘$‘?TØš+…’Žc³&¼õrW8Á"–È¿t[ b@ÄN¨ý+)Í¥ðÚÙOÅs68h•¬3GS“à„<ßØê‚”üYÖr9"U‘*D”“2öÚÚÚÊÙš²€h@,™³êYÿ°Õ)ø³ªêsY*£T‰ó9þöjÊ¡²fÏ©gþ¿T|§âΡqLHHâhzi²íf¬ c-šÍ²úíQðRŸ‹:†22ÚdFFÙCFû˜Ø­“ºë3 —÷ÿ?T|§âΞ¡™·¶Ô YY,ýúˆü¹\†3Í7YõLÁ¼ãÀ唸ÓLŠ4ze4ŽÊ]üÍQðRŸ‹:MV ’Ô7OkùkÛžŠ_þ*yûØÒ†qÍlQ%±E]äñ’cÖŒø»$Æ1l¼”Ù ˆàüP¤ÌÕ)ø³£ssmem#q.û6éj¨zJ?4h†4²Üâ·–qá,)ìí€ÿá„à ;nSq^Òì¯iׇ4ê.Èû*ûæj‚”üYÑ|É2 %à —½&¶`­(•ÞæÂû§ Äd>Uã¾öj”²×£h\,ÌìÏ*æê‚”üYÐ{·m–ÚyT`eþ»Ó6ÿ¦¢údä1âcÃÇ*/Âì '.P‹¢mŸÍÕ)ø³Þ\S8ššlŸÓ/õÞž¨¿"Y¡ŒóMÖ}\9x0vüÝQðRŸ‹=æ22ÚdFFÙCFÓ/õÚ±œŠ’èÜÛ[^Û!qÞ«\ßWª> Sñg»PÌÛÛjP,¬–}Ì¿×I§mÆ`al%Îæ“$š4ÆKµÝ u‘‡7O¿UCÙã³ðRöÄŸUª> Sñgµ–ÉY éÔjJ÷½—úëò|Ù÷$yÛ,D°ÚbVt4© Âè2ב,Ñuã £Oå×6×¶ßSª> Sñg²ææÚÊÚ6ÖKSÌÏc/õÞ«5eЀVµå•¤Sª> Sñg±äk,Â( ‰_‹û®õœ‰¸–œJE·{{õ£à¥?w¾~Y‰ U·!‘>Ö_ë½wºŠÙ’9læz)»5®.ú}QðRŸ‹;‰HcDàãÌÑ߈´ëÄZuâ-:ñx‹N¼E§SVL’\Ÿ‚S§ÅQV J÷̽EŽÖSÛC\Æêq?}elÖY]Û}¨ø)OÅÇr·:…jÁÁÄÄ÷0Ú3cM#vÚþÒ™*WñäB&ontқ϶ô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¥Ââa ðõGÁJ~,­G4ü.5@²²X ÷`,^EO'JØY&ÊÈ_ñ„Íû­QðRŸ‹l8•¾A&¤¯{æ ¡lü§VU @]„l`€®/ºÕ,nm¬”q¶²Zžfª> š5–a D¯Åþ¹­¨Èµ!ÀcåTuðÚ Þe*õX½Ïß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}têócòšN—êK`Ó îøþœm[¦‚lOˆeÿð˜ f£H*}S:ƒbN—߆¿N®óõ$ƒ-( g0îˆ%e1­è”Ô\?°häX¿;î‡ñ«ßÑÊ»l" ?ÓOw1ÃZj˜¹6“DñrúÛ# –ý;;Û9 v÷ùæ½àb2âä>è¹0°:¾‡\…” ˆÇ¡”1wÖJeü|Dx´ Tôp´ Lê°[´0$´Dë*BoñÿÄ< !12"@AQ0BCTa‘Ñ #3Rq$4Ppr%s¡ÂðÿÚ?þÎj]Z5 vÕ¦ãV›ÛU·µñ}¯ý ¦µúaGD‹5QrÄôTËn9HÍò,ƒ$|J†<Ù4#ÊiêùÀ]žIÝÔbÐáHî½Klw i1ÒÕ%RPRD:&…ñ$2 Õ‡ÏKZÌ< vúÚ‰GGJmUQV Ð@ÞNÀãÅP&Àȱ¤£ŠŽ2‰vf:¥•ó$®wg?¹°îø’Äòª¥r⮄«Ab#©Œ{)èû©¶@ ÉKPµPG:‚ºÁº7:’®‡nl/½³Ûªj–™ókAÅ#¶4ìÇä.Çò¡§xÃÔTf®¦Í.ßv£‚°Àl{½ÍÛìSÿ _SK´uË`Û l• ñëip `j?Ýù£ÊÚþINJÑ©¸édÍTG€ÊÃq{\ÙXgìsš”HkPô2‰´Ô¨AÜ.„‚žJÁ€e7V”ˆ9~£¶U³VMæèZÉ`õÒ)ÊE|@¾Mß~͘ª¢ª"…UUTX6}—E‘]]Yx« ûƒËšÝ„RRHo- †›“ð?ø”ê¯}“9íuµ&ž0#]u3ŽžK–Ç´‘z¦F“ÆdI6é=vk4ddJ nPH”LL|&'ãíϘÊv6,7"ákx5þSÁ×Ú“¹Zkl[lÆÌÉœÊÙXõ·Š$•çÊ|–0:Õñ~ŠÏ4û«eiZÍxÍn™¹bUèq )í©Xœc”̼#‹ZÅíõ/ók\Ô\‘¼žù±zôR^#‹§_ ª`ðzî>$(Ò“>KÔí^yËn=Ý„5Å WÞÕa{ïî:‘˜–ÁƧõÐù~wë6†*mÔ‚dbWG29«Ý-uÇÒLuXô©Ãâ2yü¥ .›²L¥S£MÛP %"?úcX@¤® ­0XÇ(f1ú~§ êvëÙ£†°»ü¤d_Õ[¨ ÅŠ¾iZM˜MlçÐãªÈŽÊ=U”²õ`´†·Zº!à³Ù2/°ˆ¬âö$úr¶»L­vS¸)‰ ÚJ%Š»áèÞ¬ª²Šödb»yO/ñîaF¦§-¨ç„ò:~Í@üøÌÆ%³ Dˆ#½Y,P\¬L#‘zɵœ‡³ê0ÑîOH¢Çj9KƱz}b— ÍCKº§V·µ-ÉšÙlìË+àˆ–E]ÊÒÚRW©‡äñ–ó,}Ž4äÙ±k3 &ãï,|¹ `a|‡É5TÊM±–  bž-;]Ýתd·½3Çùæárз)‹¸|½BâóøkJŽgedÅX§q];d–w×wkVcMÅ:¦Ç%ɸ hzC«Šã—m»cɇԩ©°bá´Ø]œÄÊš´bA¾¢‡ÊۆזÝö<žÍšh²öIÐ]‹]z•RŠT*©bº´j-50=Ò ƒl›MŒ/ÊÔy|1:ât½ÏMÂr&§RÅË8Ú™‹©f°“xP6kàsÕÍÍÄSl¨ÞI­S¿Õ¶^.’ýg‡6òÓ7,†‰•s$Èè‚Ã1ž(!ôÛŽ$_Z…~ø †gj¢Š{ì&¿UÈVà_]Û#Ö©n:®vY0B Ó«—ûEÅ\Œ}GŽ‘G« ¡bf9>6ä<1Håtm¶‡Îb–5ì¨!­TÌW³é}=‘øw +µ‹0è`D?E¢iy~@ÙñºÎz:ã;íÝ5™ÔÄãU17r·È> §MSÜddÆ«yž¡.TÝ1yYÄèÚaXWhëe /y²aÈ÷³í=¿ ž¢s/emH%*jQt-uéyßP?;¿ïXá7=§¡áÇgò´ëÊêDehi@É’`J"Ò˜Ÿ¼Éú…°~ò?ƒÛßï2~¡l¼àö÷ûÌŸ¨[ï#ø=½þó'êÁûÈþo¼Éú…°~ò?ƒÛßï2~¡l¼àöØù[‘vìaa¶]·-˜Å›•`©\b‰$äL’Y0* î\ÌÈü,˜B$fe$FE=Dc¬‘ÏHˆŽ³?öÚ \;¥³©øg÷j)±ÉµÞÝoEåÇhÕZ†:jÜt¿±H¥‹š•ËÖWec§þ6­{IËÝÙò¸›¬ö+nÒ* ðõvŽñŠY|Ü1ëy×ÄGuꈪ¶1×–™L€-«'’¿™È]Ëe-:öK#i×o\°]î³jà ®s ÿ£2™éØb"?ПÿÄR ¶÷!$05Pv† "#6@•Ö%1347B`–—·Õ×2Qw&'ASacq´Cep“±µÔÿÚ?þªVÝUŸº¬¸¯NÒ¹ž™ƒÜ#`¸ÛPý&Õ\£'Lâ¡ÍÊAÂxÌqôµ7 ´êõë6õ“î7›E¢8µ•u4,sR¸jªË(,ÛÅv2êE¬äxc,ryN~5Evn'ê[UÈ5欓ÕAw­Ø;ö™jiÔsÂXq–?‰†9³0ç“­.ú¾­éøÖ;¬XúÚ}æw_¾\Qýçrw]Vég&ôŸ/VêãË¡ËâÖ66¼Œ¨rŽ/"åÍr٦͘òjÜZàÌÃ5Ù°2T{¾vs€NêÙ ¸1òæÀ¤ñÁ‚gxóÄ3Ÿ/–i$v[ío‰\|Ç%<§˜õM‚âeÎÇ»½ÃZ®1ë¶µ4h'\W* m¥â½^FÄ­%ôd£ƒµ>Hö2·“8‘¥Ë!FGëîúb[.º`lY{`Òvuâ“:­˜<ÆP„d5+\Ùš‘,ÂPÁ‘ã¿s‡|Å–¿«lNì5 Éî`¨î‹Šl;Ê@”™‰„9c‡T°&@¾1¢TYꥵÖx–rR/‰ß쑲¡Ø–-zÀ`g °ûÚÛRÙ«BÞ‡ë²â¶ ŽB¸cÊ a|ó.QŠ8„#Í,æYòŽ19g9Ïý¹óñU¡¨ç5f¯^E‡ƒÿHî!“D“Š.öT2®5k ‚rSÖ­—Ër™Ž²ÍjÄ›Ku§`0@¬Çë4=º-¶ræ pUC`Z1VDÁšynáiÆe?¥–Ý5¢ßCÝ—KÓg{P06½•v%Ï.jY̲€eåó”Gƒu°º½ mŸˆÜF´â#šÑHÖ¼Œé+5ªZ÷ÉŸ¨–²´‡ƒ?É9Ã!ŸãùK8•¨öâP4•"ÚÅå\©¶öº¿[=xØa€Î¤Í“9 Þ™0£L¢Lˆ›¿ªw_¸ÔñéCÒ¾õê Uü·»7}ßu:ÿÉí¼º_óêx¶ÚøyÄ;¿²a|ìªBгe¨´eQtb:ë2hÙd^Q3B”ú¹Ç>a‰Lù6Ñ¥ÙØÛ\Ÿud–[FÎÙG‹«œ” ¯c òL+⽕—* réþS­’šdN›ˆ_¹ÜtõZM’k‘Öi¨Ëiéæƒ /ut©™zÄ(‡#âq(õzƒc4,·M ˆè7êW©±‹Ð+6jËIV®jHY]ÅÕÏoƒÆsüœqˆD|çëq ÁÚÄ»^ÙZó»l€°Š‘¨mjû W.EÕU-tD#k)†cˆâ3t0`1˜[é1;Âêšñ.&çŸw+BT©7òמ1œ1Ýd½|gÏS›Å °lZ×vÍQÞÿ[ÙPŽtK,ì³IŸÈ65­rG¸H³?—,K‘ˆƒußv%ökL&†³]WE-z޵¶¹;›b¦ÅÅûnY“¢ À’°€˜A'‚S‡ÇŠ;–¨ÅUS—±h¬í:ýé*•³³5‘š¶…u¥ëâÊ tR€Â¨Cʺª‹ZŽû®i+¾ 1A·Ñ»ýf º1KšÉ²´¶ŠìGÉ,¨Ö99Ýþ¡ï?f}°×üpÓê›ìíwõyû3톿㆟P4ßgk¿¨›ÏÙŸl5ÿ4ú¦û;]ýDÞ~Ìûa¯øá§Ô 7ÙÚï§x1ÿ=toýžÁã„ó׆ßûÇ|q ãx‹úþ§¸ÙhzΫ7\^™IkÂZ6·,¨¡Áì,]fX[êvë‹„sŒCÝ£ÚÊ46tS.©¬X°Ó£×v±¬Ô0D°;*wË%JdK) ,R ¥(xF¿‹ÛN£Ä“­Üm;ž6”,Ͱf>MZÔm˜)*â¦ó=w“[·À°PlÏMµJÚz»%µe 7öª6T­ÐbªòÀP…}ÀI6ˆôc–å`Ìó;Œ¦xÈ0hªö/Ú¯ºuÕF ­eÇcÜž­  ½O²NÐ=7~êñæa!@E‰æ1äžbHðÓê›ìíw†Q{ˆ:BN¤Á”q6öºÚQ¥É °³+™ø °˜ŒÂ$#(N8–3Î^ý²×Ì|snÖ/Ýòl©ÒßÕZ´5`Al‘t[9`¼ p F”08†eÌHc>yæWI$—3n8Ù†ºª*¸äfeƒJà&S³ˆÄ8Ês–#ŒçÇó— lµßóÎ^ý²×Ì|íròžý!1% å-’Vª¨ FšÄaPb8 Êx$FaO1å$3Ÿ´º²¯§¬W§ÜØÚ8½z+õŒ5Ã×m² quX(€>¡#Îb qóœãŒÿ9zöË]ÿ1ñüåèÛ-wüÇÀ-)l«î+êvÖ5n/`‹stP…\½&P¦Ird¼§ cûåÙuýw¾ëv^»s]SÞvÝ.çµïØ_¸íû€uº\Ý.°¹ùzóþrôí–»þcàϳÄ}8 Ož·Õ÷.çªX=Úƒ=bǔɓ·T½bg/ BEÚ'eSd 0›‹ç<…‡ža(Ê3ÄJ„±˜Xð*22¬È„Àˆ8ýB}nIç`Ó· -Ú¡;LÙµG–a*ÆX„g% ÚÎ1“8‰°,O#†dQéØ4€èZö£¶Õn¶ 5³Tß¿kaCƒÊ¶¶°ÝH Y²nvÚzk’AÆ:aŒáÒ6Õi¦kKîúžïi÷ÆíîСº¡ÙŒѵm‘×X!mÐ È92|yG€üÙÛ¶­µ‚éF¹Õ§¨jÚåEÖmg­¯<œæØ\elаû Ý Š©“ŽrªÀŠùjxþ¼ëÞÕnŽŠ»Ñ‰´›p¥Æ»y‹·¥Å]”1wÌhb&±V)L›«‘LXÄZg öë‹iÃX2Öd°¢a`¶p ¨æ’κí¬²ã•‚|Œ çÌXÄߟ÷ÿÖšï쯓q¥·ÛÚ³§ô~ØÒ™ú…õ]YºãR&%Ê»¥˜úlÈÑ¥Ï Hrá§Ô 7ÙÚïÐgc»Ef–GŠm+;ûL³]|VÔÈðižå¨Mx– P1[ieVdá=•£/j|>›5Ý@¸Åý´ŸI!T%"׃e¼ëåÐÛ\󇵎\ ˆ½&ˆ‹p¯‰UÀް‘Ú’¶É®b2š–É€[טX„nõɹ—Žaö^¶¼Ùp<ýÕN5ߤ·Ÿ³>Økþ8iõMöv»åð1à[u%*ZYK<ƒ‡œ‡êöý9D¡ª c8Œq˜Ù¶dsM9а°­g‰¼]›Ö ^s5_ZÉΓ·ýqtÃjÜÓš§­£\8Ñ"Œ”îD%Š«@ºa¸]4׉¨,ª« Yeˆ ®F"(ÄbãŒ!GljT[Ƕyn©¨ï(ÍÚggã3†3(w(³È8YVÌ¢€å,òȼœxCÅévÈ­Ò±³˜²šJ%9HHBo–0îuVy2:Û"b×KUÚ dV(µß¤7Ÿ³>Økþ8iõMöv»å”FßiµêvUl¡ìÒè7Þº0³*"±ŠRb´¶žmÅ'c”˜â_ñÊw¤ÊÔ‹ÈÛº t¢ÝåyF.Ê.”A[EN„–ºÕ¹û²¨·lòÝSQÞQ›´ÎÎ1Æg fPîQgp²­™ 'EÊ$Yå‘y8ð‡‹Òí‘[¤cg1e4”Jr„ß,aÜê¬òdu¶DÄ ®–«´ȬQk¿Gï?f}°×üpÓê›ìíwÊÚí“¢ï9dDŒK'’5@7d–9U9OcØ&Ý“ÏáÝò¢Ö±ç·«ÌN˜ 詹߀þK2IóÓ³eÚ }k,%ÖdJàþtoºßyqWÖ×;’ÉÚ¼Æ+¦™HëÎÓ–®Å÷sθâI‚,•âäaÕnÀ}Ÿeý!%§°ÁTqiðó¶]ú¤²Ìqæz&)åŸ>„3†ø‘Yä]¦ªœõ!‚ÉMˆv P¶ù,Jpî¡}D‚‰±˜sãÀ8‘råžÙ¼}ê/Äl¯ï.NÊ>—ë®PL ¾¦@”Ò\êgq€ý΂«:Ëý ˆÚõnÕÍfíqìl,ä+E':‡‡,X`’X@¡áÑ…£ 8ý7yû3톿㆟P4ßgk¾NÃbcñÞŸ5mÙ\¬‰ËöUdµáj"*܈ö+o’M-.ÉcÁiÍ骹ƭáãÙìûP•HžS2H±<Õó––;ɯ¨ÇS…ë”ÕØÀ×› ÙÁZï‘ܸQ/Ž#}ËéŽGã Òë™Ù(ûæ3é‡>»bð­zÆæºŠ°S¦Ž yþ µºæêž‡–Ö+$”ªÓX%|µÊ…]êÛ¶ÕìÏè¬ã¹‹Ù{àŒº%ŒCV üM¸¼\¥°nëYØ+´Q™ú•í`ƒ4zµ Âô«‹:<ŸœðL3ç8æé—îÜÓÕ[z…{(/qÚeéWI¡ä3hJá´rCŒsžWÏt.™ºeÏ>!Ó’u¨oÚRÈתº)¬>X`kª  à ´‚#ÿáBC`¿¯Ú(xˆÙß± _\- rN=†!g$±‚âp ¢0¡ÒŒ¡5»Ed¹¡ÓÆ<7Ã…8ŽxhM èAcëaclN…©Ë,Ñ+³z¸ÐíJ"l­e–±2Nˆã ½rl)UN ÓHyžb1ÿ ÈI~1Lbff9¥øæ1I~4³únóögÛ Ç > i¾Î×|“8ÀM@–šd°Ë,H§aƒ–Q@FD)I(ÀpŒ§9b8Î|Kr}[@ðÏ_Ùôzºµìã [ç©ë¯TÀ¨²”—¶µJÑ›ëV’‹±mIß’ù¥käôÎ)Ð ¥c¬<Ÿ°„ÑTé:;=a²(P±T4QµÅ€Œv¢.»¶µ©.À¢õ%Azµ×(…Õüæ ”=XþUF»c0¼‰ðDß^ÙÐyK3¿÷=W4G„â_Ru––t¯G ¨,r :vвWÎCò”–l9 ùÃ<ÈS$%Ž!úÅÖ_U²Ö^^ûaÙ6“”Ö—šëUy®=ý«‚$Ή’ìž{æ]K ul±j+³×ôÇÜ‹[ÆÁ›¹Ç®.^ô£Ôêrf~›,£‚u?!Õñó7ÿû_ºSÿéðlP-·*—¨œ{¦7XÚ厂¼ó7ÉÎç±ÈúXG>ŸÖÃuû¯ ýí\ëõ<½n÷×u«‹¸æévݯa¶jýŸKÈýn¯}ÜuÉÛtgÜcÏsáþ<óåúµØ¾ùg>Xÿ­‡>XÎôÆsãóË@þí6/õcÇç–ýÚl_êÇ€ëeÔ,+#ÔîT«Ñî©Þ/˜I€ô,[ââëò1‘J¶º¡ŒÉúfóögÛ Ç > i¾Î×|•OtC¢Éô °»€²B°jg¥ ER#Bªù¹µñjyÙUXåQš=s\S¶Emÿ…)I˜ÍÛgÅ*,YY1C¹yžHsÏ’  Ȭ²Áù-—W”"ÛU0$rÉ™]a[ɪfX*˜“–ÀM¢Æ6 Èd]J`&Áû˜ö–:sÓ:)7‘)d$¬kÕP•\—¸ôk¸Ž´ÌØ(zM…`F_Â×l•Ñv‘Y­¹n•¥­ÆEДj¡Y°& ¨~}XW hS) ‰¥”êì[ÉhÕ-‚Öµž¹¾o—ë)b™0U[‚7[+èÌ &11ä«Ï–1Ÿ/ÁZïQžs[ÂwgÚŠ˳nÌ’iñ(|=4)Y“·–%Æý?!Îp¯Úî¬*,ÃZJp¡I‹"Û­–Ñs9Ä Ä—ŒÌrxÀF"y`¦ä 5Š“†ìW'´‰Œ¯oCvMz6[ºí6˜â†¤U2œ?V*¼ÐË–Pý7yû3톿㆟P4ßgk¾D©Õ¼ oÆ(ÕèAÜ¢´3xè&Hˆ ¢ÈêòÌO- 8v/$¥®…Ų ûîÙ@Û,ÕdSÔ°Ž®¸L9ÊPœ%uo*žec8¤Ç{ tZÍw×þÿŠzoÊTî1ï«mý[ ŒÃÔ‚”}fl!² ‡‡¨ÎëÓlr¶äjÁ2±Z’ê+ˆ ×Ê\춳䯤¯fÁ‡”âæP¼þ ’r.¼?¦bŽøeáÊMŸˆZKoí´srÄv ù ‹-’õE…>¶|Ö@%…Et¿¡\‚qÆ1Éã|áκ*ÝÑí eÅvJl"cByÇN½ýZ¦‚fj¸Â€M*„»1íÊ´`i[uÆÛ`úµ•ƒ¨>ç²Z.¾f¼ ëšÍ­Ã 냯$̓¬¬‚Ë„ª¯ç’C~›¼ý™öÃ_ñÃO¨o³µß!k´^Lñ¬© |,°Éfc‰UV\XÌc“¶áÀ¨¤baÌÑ#L.´JqØñ¯sÑ«¯x‘Òk]‚­¡.B<5À¤Êy£¨óC Ú•ªwÛ,åi‡ci_lø®úÿÂñOMùF-WVÇQy{‘ä5Ýã³­.{ u xgE]Ù8(:Tc“"Ä•£}ÖûËŠ¾¶¿t\áÜ–NÕæ1X­0ôÊG^vœµv/¸3˜FuÃÿL`|¬³F9ž|ç˜ÇÌóÿgïgÿþ¼ý™öÃ_ñÃO¨o³µß ž•®€ãáæ•k9_^.þ;g¡Üv­ÛÀâïªHvYÅ4ÅgY4zÌós6!©¯¨­o]TŠ•¨/Ô)º "¬¨z§™N^u B~\Äœ§œË>+¾¿ðŸüSÓ~åÍRN…‹ |ê-p¬3ùDJòb}H—ùêš$†qç‚qÿzÆ>E„Ü\ ¦Ø ³J²(fV<$#®À À0¥!”DŒ HJPœsç6ÎZ¸õ®`,ô,…¢QÛÊWÉÙI#k®¸ëFWãîÓVªLƒ¤ö~ŒÞ~Ìûa¯øá§Ô 7ÙÚïÃO„Úd‘{iÜü©nÕX•×n’uŒk–{cƒ³]¶¢ZÊßåpæÎ²ÑeêyQbýÏl–ê±õyË $bY<‘ª»$±Ê¨‰Ê{Á6윆~åw×þÿŠzo‹KÆ3ƽlJ‹ø÷Ü$¢ úÕ¿âÕ“Å]cý&íñ®žíé´—éûM¹YP|E\½Ô»<禤˜luôàÎd#È·ž5.è­Æå·®{ÛÜÀ†®¡¥_äŽö£Î;¦¥ÛŠ$ÎEÓÈO6¡Ò©Òïxð*™í+ú¤xe©±[lÚx©S©‘™ %²PÉh,®ðFÆép€ÀÅëšJnL¬XÇ!zqüQõ%ç.HüóòÇÁÓ8§@.ÎÆ'ì! ÜŠUž°Ù(rwž °ŽÔ]W²¦­H±"!µM~œ4îê«íÕ1„ÖJ ÀAˆ†O1,FbÃıN>RÏÑ[ÏÙŸl5ÿ4ú¦û;]øGÙ-Bv哾®¹8ÎÊØá9–NLôÈ$ÒY†pÑ–° Ñ ned™°ã>öGœÙv.¼(ýQey½5‘+ç°¯ç‰>ð•M(V ` â¨š¨¶G·ûµß_øOþ)é¾5 Wi–ÛN½RË”jìõtdkÄã€kª˜[íDˆ²%3WS˜±Ê=HÌ_ }nÔÇRX<,*ìWó”ëm€…g$·Pbt&X]”Í(à˽(æucp߉<µYª»ë7 ˜6br_ÐO§‚¿®>\–ã]œ4p* À[TÙ.âl´Û™U¥‹¬ÊÇ„J8¥!¢Ar” Fp–cœgè­çì϶ÿŽ}@Ó}®üq€(š€+-4É`–X‘NÃ,¢ €"ŒˆR’Q€áNrÄqœøÁcTò<*ÔúˆÄxëI¿,M¨+æ9¼¹<Ò.ÁžßÓèšrµï‡Pý‡àW}á?ø§¦ü´ª-ãÛ<·TÔwfí3³Œq™Ã”;”Yä,«fH Ñ@r‰yd^Lüâ»@ŠÕ'}.ÅÝa…ª``õɺä¹eq´Î±ªÜj!g_†•˜W¬.¿ôNóögÛ Ç > i¾Î×~ \ÐKTܬŽ(ìÏÌøäƒÕÆ-‘jÁ!, !VÂÚÜ•ÙvÄÌŽ4လIúË Íf¤@ÄTå`àNÞÚA·f33%ëºQóDsdøMh¯^¼ðš‹Ž]õÿ„ÿâž›òø ò ݺ´-Ô£žBCÎDô‹~œdSU²œ†HÀŒÔ²I¸œ ØWÙƒ|K[ÐvjÞŽ–b%Äè—Å_FÜ…ñ^ûµèbŠÈ’[RZ0),ˆ«ßDo?f}°×üpÓê›ìíwà~ö—“lØ:ÊkœÉw`_¶š¾©f~¤ ¬}=VáÚ ÝÏVÉ„º•î! “[fÈs½ºî ]û9¾ ÷Õ+3™?šã°øcm›VØ i¾Î×}Ú¾ëm€º6¨yXÜ[!g1ÂÅhMîíÖ dèɉQkR^¾ÆeƬ»ÒRY–i#EDˆ+jkA…ÓM|gPóÌå)Jy‘LsS;,žde¶HVY)X) /¹¥´/1ðÞ¾ôš&Ö÷? ²ìH,ðú¿ÐÊô+ú{=ÄsžSzÂRÆ ,ù Íñ™“ï²’¦µY½osb\Æ0R¹8rõ æAã3)H‚Í1œô—èöM[fô]Z·`V³Éú®¯Bm&õ½ÝtúeüB‰ˆKŽEÌ2b?£šÊßNÕmlXé÷ÙkÕ:~ˆ ušeBœ½ a<óÈ!Àqò„cŒ0jÇH¦D7Ø6)2¤É B ¯-NG³‚Š-*ÊÙœcƒ®as_=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼5A@Õ«i·j{rÜêœ2uNp„ÓE`”c Ê|ò&rLÇ1Œ?CÞ~Ìûa¯øá§Ô 7ÙÚ﹞j…õ Ãh䬵ID½HéÒÛ`Í|cK§y}Ü.ºJEfÚÅiÎÖ‹ R6eêyQbýÏl–ê±õyË $bY<‘ª»$±Ê¨‰Ê{Á6윆~åÞG†¸Æ äóöGœÙv.¼(ýQey½5‘+ç°¯ç‰>ð•M(V ` â¨š¨¶G·û¾ŸOUx‡Vìn+Ô³O¬?>™»gD`õGÍ.BrsG›>YÇž|6šö7]ÿ.ðå2:ް•EŒðK ¥(*–­~qÆ#¸ˆT‚ÍOŒq‰SÎ1cÁ&µ«ëôg¬ž¡ âžÏ6 b*LƒŒ¾ŽRÌ#Ÿ†8ÇÓ{ÏÙŸl5ÿ=qÆ¢jpçSe¦™,²ËY@§aƒ–Q@FD)I(ÀpŒ§9b8Î|`±ªyj}Db¼u¤ß–&ÔóŽ Þ\ži`OoéôM9Z÷è~Ãú…¼ý™öÃ_ñÂ~h%ªnVZ>‘™ùŸzº;"Ô‚BXB­…µ¹+²í‰™iÃ8“õ–šÍHˆ¨ÊÁÁ ½´‚(?nÌffK×t£æˆæÉðšÑ^½yá5>ީծµ› *Ë |W¬ÜU¾¾^W¸nåª V²íüb¬]Cñ>@´IÄDšÑ+†Ÿm¯VÍL)osš;Nú×Î+Õª+Š÷b9PáfÔ1c"ŒO84¡úæ•êž‹ë^™ûåÙzmé×ößÈû´zÝnÇ¡ü¨]>¯Wñù:siC]KN,$Î̜ᅋ= ¥ÔÂÂbÕ׌°&L@Œ iŠ L MœJ­‘{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹï¶/Îo½õ{Í¿˜½F×¶ü×ýïùÃÔÿŽøçýçä{¸šÜ9žÏ²S „Ðím꺈B¯u,ÛÞæ5ÚÒù®$Ek-èÚ8L€^çÓ9N#Tk72]sfÍ«î¨ÆNS(â.'‘W1\,¨©$–Á±ªûXq€2ºØ^þ ÓmmŒS%_O_JåR”ãe§RÖÎÁ‚-jk‰”Ö ‹RøÖ ¢ÄÄÔe•¼C“U_cw cXíü—ädfk bS­`P×ÀÀ1,ѦQ¨ª<Žfœ˜rlÿô‰Hñzà\Qn/Pêš=†Âõ kIÄq¬¶¬I7kˆûV¸”ŽÁCgø“ά‚^6¯G-½ï ¾ö%oQ®MòÜì»*$–MI¯âBDVÉ(ÊKÀïÃ~K†rŽzŒËˆµ÷U›’ÛöÜÅmÚk¶’¬&§ zQÎ7ŠEï«{’œµ–:³‹äÏâg^N‚»h1/AbË%%P2ž®*ùÚF?}O­`ÊU„±ô“N¸";… ˜D‡‚Ñj±[[â-žª©Èï5ÚƒÔ!€— 1ýJlˆò\DÆc2E,ü?#œæ8Ï ¬ï#mh·ô†t¶¨¤ ;ÂmzÆÇ¹:Ù•&E2¬ g1˜¹ŸÃå³iبÛ-ömftÍ5 4-žºõº¬ÜDÔ«¬îK5kéâÝ»(V,¡Ž° SåsZNœVÕÏÑ9„/(¯ÐÍeÝCSÄò!¼ŸPчW¤\C011Ì\¤ãýðÛ YŸ¶¬FiûK3ùÇuMp³~xÌá‰aE Ë"òÉ!çf­ žXz˜£ ½cˆYSÛÖ¸ÎE‡ª.S¯³[å—NeV0Ÿ,±g8ÏÓnËuÓ(UÜiß°¤¾¢i¬Kd¨{E±‹eÃOpE (Ä£˜â5Æ|hæD\’ÎÝýS`±¾ÐPÓѺ*oXÊÜz–ÌkXª:5–g‘AŠÞ³’[2çø#ƒs•i’|fÿŸœDÿñMà +¢Ø–­Þ¯íT!™Úúe•Ü&âQ”HC¡Z£ÔŒñÉÃ8ÌqåâÛfgkÐ4.ÓJµ5^ŸªêáÈÈ­•{]–·êÎÙÁul,H\W¹ ÚœMœñ_49£û’æÿý|~è&ä8e+Âå„o/Ç€Õ:Œ2þ@³MiOÒÈGœÿ»º/ËÇå8QŸƒàøeªXJYÿ×9ÎsŸøç>~ Ú ¬ò…æé4™ÄÊä䜇>CSù B\²Ï,ã(çáÆqãƒÊë¹ôýþjÙK»ojëÑa{ŽåV©±€žÊÀã˜Öìí)Ê"lM‚H«M6œ¹žªÎåx,É»J* kÌÚUÔöÀ NîöÛn[¦Ä¬d(a•ÑùþšÍžÑ¨WØXËÁ_ ŸªqŽLb0m7˜C„2Ì˘Â1„sˆÇñ:½F‰*DÊLðV3‘™.1Ë6Û3mÎüXM“–PâÇ8ÇÁâãs¦¤ü»ánǦçxÈjr¯›r¬Øi`œÌ10BbY‘3Õ/:º®½[h‹p^¸‡møF²ÃÂe²;lša£ÎQ9‰Œ`8ãÄa†,Ѫ¢v`Ô'–ÁÔ… ³ÙÖºãÈd‚œ‡ÌŠ«ÈpÏ(ó x ¢Rƒ¥U«ìªîJú­Ù; ‰)J¿ƒÊl"Égä“E=~|ü¤®qŒc΂= ͯÒq~ïrá{ÿCRHUüXÌE{U'!|H õ¼ùØê“Ê~6-–½Þëlôœì÷.¿ô5_ÅÌÁWµT³Ä€·[ÏŽ©1‰âºƒÓý$k¿±8­FZÃÓ¨Bãd¶¸­ª3‘eÈ´Åm{Ë$Éâã‘+$âÓÎ 4‡³ÓŠÂu¦î+ÛBδþp–H…¥k X)œÈbœ°aHB‘#,ŽE2²eÊ+–Æîòïc²ÊЗÿ)0)‰ÓL-åXX:¼L(¶FºÉÔY™ôS$ËØZ&ÎcÌÏð“cv£˜½Ú<‚17†mPh2Ö1ïƒÃÇQ8Kz_±’|ÈÞ»°Úía͇ÃA½ª¬%Šžå÷/¹}Ë—}-„ù_İk)%VoË^¨çÃÙhhã ƒOt5Ž<ò—&¯U<Õq,% ±?@[ ²-I,Šú+ÆXˆl_ †¦ÉrÈ££p)­ZQ· Ù«èz5jðÚ’îXÁ¤ó×|ðSGŠ%ZÀBsr©;eðø(ô~çL¯õ€UýAM?¹f™_ë«ú‚˜a‚ú[ c¤ã«Â°äsØ ÃT7œÐ¨²k¨}Ër"+=òQȼ‚íWx=„都á¦U³Ïõ^ó˜(v¯M8_¹uñ–ÇÀc×ÞœwØT¯N™[ÄL«›UUÁöºBÑ2 ꆅ“:8?&3Ñ÷/¤£p6]šî¥G™ƒ¥Ë—.\³/ýN$¢ Ñ-‰1¢-gð¹‚tBµmԣʦô8Ê0·e‚¶ 㫲ûŠÎ%Ä<º½:5C¯F{–i„­Œ„S0Î@¥FK·KWøýïiDd?Ä´âŒ;?!®M‰<¸/•ž¥¤5]êu5{.@/°'P¦À¯–‹Å.áq³÷ïß¿~ýû÷ïß¿ {ZÔ¢›»—¾6ozþ‚ÀàY£jz‡ö!ÔîïÊÊ!UQPè§³ex¹‰V.c¡@"ï­´Ž°}wØîXü—u€%1áÉHºzMÄ íRæœáÏF-Iª ¯ÿÿÿÿÿÿÿÿÿÿÿïY‘ 8åò ˈIeÈ ð# Û5­EœÚµIF% ŒÍ}FÁ½Cþ×À‘L£af1´þGÙP8bÊÜýByHSŠvÚøD‹å¹ñ²ÐÔ›—ÈëýGÅk!ã=õÀŒŒµICåßâõû_Ã`d¿h%¸þbI0–W1¯:okÁFíì‘…pjkwvC‘WeˆÁ©¯ 5æŸ+*;_¤~]ä^®Š6§­,iG3ÓØˆøJˆô^Û þÕ°Ð~Jìù¡Z³ð~ˆ¼ý 1¯•õ s&HÈËþOd­øÖàx̽*<ŽEçÄ5Õu€ªØ¬Ïë1÷®è|Ý¡¥b[FUMM!(®gæ˜ ™Ñ=Õo™þVÎàóúÊ@w…êÞC`õRù.:gEe$ÚÏ¡½¾Æó5.º1’ä¢î¯„¿ÿÚ ñ†,G0Á @P00À 4AS(@00P‹ I Ç( @€@8è @PD ,@°@€02ó  @@‚@˜À ‚ T €B$òCAÿÄ"!1@ð 0AQ±PpÿÚ?ÿɤÎà])„ PþÜ@ѸÑ4C޽u¥3“PJ:Bs|ü6À€Ïà.RT ’’)wK…»ÖÊ®»§ ¿ñ?Ž·Ø”è*èðÁó‘Zæúú޶µT@„#_ ‘¡Ñ ô[(@,v”’‹¥ÕÞ(  ªÀ Up«ÀšYz ‚U=2ØÙötC“Ý^ÆEGùGä{à ŠÅ…Ä8ô€:éψ""nœÙºÁ§0sC¡wumsÂCs´r±,,õ¬† P¿\H"^õU:‰S‚­îhñåW_€ J—TGpX‹&=`‰Èz0À| „בÂ0Ì à@AGr¦šŒ4,4!‡odѨZ Vfäª` 8öÊA ÀöàP€5m…¨¸¨a…J¥²«ŠÁ€=§£õ£ Š uáÌèT‡¤ö¤`K<²YˆÅ`TG|¯"uþÄ!Ð9Ù£X@B¤o@€ PCíÆ]D¦Š¹ï,®ÐRN"AZñO9ûöóÅ<çïÛÏóŸ¿o ~yüfªöür⥔•i_ç}jªÜQ÷Ÿ-QAŠûäÅŠúï–9Zpl¡íî î„¡h‰ò€T ï"qQñ&“DzË7«%ê’+³}zÇ—asyYv"ÀúšàÈK $©úªJ¿ÀÀæ©»ëå Ê`(n+©0~PvP±ªf•C»O¨…4bž1yÎ9ÅIºSëŠzo£µ¢°i½Hà3”Æ  7$É©$¤¡Ò#[›„ª„9åGé€,’oÞ9Ù0y!ÀN5–)RTc–Ü0Œé¡Z a£WÒE 5\@ÿNÝÚϘ&‚mª5Ep±¾ {›áâ¬LV ¬%üÁR Ùû–CÓ¡nŠQZ&nëuµÅ1C‰xµÃËd·|³ Í»å™mß,È3nùfA›wË2 Û¾XªUA0%!hªtÂû¡(Z"|  sÖQ¶ži!¾ŠÊ,bôªXTØ¡¢@¶"…‡àÿÄ%!1P` 0@ApQa€ðÿÚ?ú,ú…Te§¥û]ÑH$ äm±¡<ÿÀ%ÆT4«FáV–&dCôÚ°(7 ™€(cƒWò†+Èr%Ò‹áÒ6?G »Ø=€î«úÔyù ÇQã[ WCK[k½î_ŒI³¬ŠL–šsÅ™DVÙ­’%Âl8U*h'ÃH7«©eââäB«-O, l"ɦ‘6UùR‡”+ãÆ´BhÔI’”ÐÁ†¼Õ·Üf`.”7áW\Ì>h3ƒyìÊV»¸LùúC`¢™6Ú"ˆá­-6Î$p,ùyŠÂî&E±ë°ÃŽBÑMÊ7Ÿ54Lušë&ðÃ…üï7DéùD3—D—DjžëªF•²)°ÄP§#üæ0…=Jô3·AÈÆhÓnZ³Cü’c†aˆ!4Äô¤·Ó6Äõä²î<†#H¤>|åüU5 )¨vM9,¡e (YCå^ýÜ5ùlp5QK©†LdãdÚNÎx¯`ÏK¥®$},ËѺe`z A qÒ&1SòŒ ŒEÏB[Ž•1ŠŸ”(à€p0ˆÄ\ô{*TbÞ*ýBƒÙR£ñWí†eÁ| ¢:´à'<ƒ÷Ð0mØ2go­;;^2–éÎüöž¬38c’wVñö< é;é¾×¯ÚÒQÔ¸&ˆKE(¬k2ôF.™X¨VíeL–åqº¤tµ®˜•§Ðÿd2;¹sÁ+(?$ýö}’gÙ`=Õ7€Ž¤ïïïÐ@ø¯écfü5ÿ±=,h[J?ÊÊ/G¢x/â;›ðM^äÀ“òpºþ–6oÃ_ûÒÆ…´£ü¬¡¬âž~AÅKü}Ý·Ç–n×ô±³~ÿȹ‹¸”s–, è7w¡Sè*8-ÙÃpïP\~» Gv+ÔåþÏFÝ,8_E,£g€há"-×N¾²æ—U%ó´õgFZ @X©€Dc¥ñЬ—Š€4EÉ mBU5=5‚ãTíâ‘ngŒÜÂ1†²•ÏÍýšÝÜ€¸ý‚Š —eVùAÀ^ °Ù“ˆ M\#UÁb/ðïI‡B´õ™´Å’ÔöGh‘Tˆ¿„²hAšTÍ“²2ĬHO ¤þåQßßß ðWÔÈ “UpÕÐgú¨2í&>ëðû¾‡œ"ê¶‹uÓµfüИý“9>&Œdp@kJFOn&L;³È¹!£±°°J š/ò… ª‰Ïeâ¯VQ­¬”i͆lSéj¤þuŸ›‹‹ëôD·ãd0?`¹< KôlŒy®ªe'Rø·Ö£ÀœxH¬ CÜR¡Xk¢³‹„ÇÓÊ,÷>¿Ueü‹NEƒ7ÉQ¾=Ì2öX/V’°£IièÔÒ,2Î4I.°k-+ \28« ˜ Èn ½wÝÏË`²†³Šyù/ðM÷vßY¸VüâU¾ ¦§–ˆ*`ÑW¨¶QALRõxu”îñ©ôlá¸÷¨· #^DˆpÝð=ýú9¢Ç<ž¡%”lð $Eºé×Àö\ÒêŠpúµ£J84iiéžê=}03Èø¾ÏƒÁ誯wR„“g$Y!¬§› THÍ×P&¼—ßN²‚¹iYCØM¨òA&î,WK`ÉHR‘nmAfåÄDÐÃV÷“!ÄVu/®è‹zžƒÚR_z,öÓj94nâý”Âk©)¨ïïïÐ@ø²Žøþý€þŠ’„Ï'Ö~+_ÒÆÍøkÿ]œÓL2cq𲋬9|²Ûñµ*øn ÷E’~û~C’gÙ`2ÝP üšÊ Û>[?Wã>ûnÉÀ¡þE§"Á›çRÔ=­†7Øx5þ/ú–U”o&>ëòû¾‚6Üäæ4¾ñÈP¡B… 1v b¾TPÛT(cm&s£78pèý\|Tb†Åí`*/›â3¤èï)+¡ÐGsP²ƒ¡º½dSEØÇ~ú »btô ‹X}ÆsDY‰S¡-{!©¨ ×¨šèßfãEÙƒ‡8páÇ8O1Iò[ଠ½]éjç5§_ÙsKª|>båôÏ¡P½a˜(·eož4DóNy?záÔ¯Ž LEÆE”=€tÚnâÀåt¶l”‘=¡™X»BÐ2Q«ÀᣲlÍ@ÉžÌjØZ0KçVç…ïÿÐ@ø°/è©(Lò}×ëYcËíߨWÃpW¼ O ¼Þ“äÛ2·¯GèÑ?ó”Í“ØK£2Ui_VDÐ+‘’ 5šOØÎ¤:;ßò„šEq©…¹Õ[ˆµÒD «Q˜Të–;É"÷[%Z­jÕÌÿ³õcÊ?Qeq¨ˆaM4 k‹¦˜„<­ŸÒ*y\>Â%œÌ(×Лjð:œÆûWFHêŽY‡¾>›§·Éû ï^A Ë|¥=h>C§è‚ )B5¬CIH…U VvRÓUÔ.r*Øñ21”\ŠS-ÐÖ añKDHNyq,ªŠ¯R„vªaá=-Pæ†ö­×û'Âwáþq» v=ûû^:£Dº2{í=Íã1öX$ 6J\f7%vP¸ Óˆ-_GJ¥‚¸eÛ‚s7ox׬J7ö¹_t"i“N§Au•àü‚qFF®@D™Ë¤%H©ý#ÿÙ endstream endobj 888 0 obj << /D [886 0 R /XYZ 33.853 921.043 null] >> endobj 576 0 obj << /D [886 0 R /XYZ 125.485 566.381 null] >> endobj 889 0 obj << /D [886 0 R /XYZ 213.563 496.439 null] >> endobj 890 0 obj << /D [886 0 R /XYZ 148.824 333.2 null] >> endobj 182 0 obj << /D [886 0 R /XYZ 68.868 161.684 null] >> endobj 885 0 obj << /Font << /F17 421 0 R /F27 556 0 R /F28 616 0 R /F25 604 0 R /F30 591 0 R /F1 891 0 R /F33 429 0 R /F23 427 0 R >> /XObject << /Im12 880 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 894 0 obj << /Length 1612 /Filter /FlateDecode >> stream xÚÍËnÛFðî¯ Ü D.¹ËGÒ".ÜC‘FBsHƒWQŠ«ò'ÈÏwfg—U*qã⃹ÎÎû©À»÷ï·‹À>Y_<¿æ‰Ç9ˤ ½õÖ‹S–Æ©—¤1ãiâ­ ï­ßéÅ2J"¿ít£ðúEÞåÔ5AyÓ•›Jµ~È í7‹0õwÉ[‹¸XP·eWº»º!”¿ËZªZ5÷Ÿ€€Tøe½¿SM¾Á«–ÜÀ(™c”øz¹x¿þÔ]rÁ„ˆ­JŠˆ•yXYj¹á9óóº `·St0Èýÿߪª!T½%„»Fÿ_,½ïºhpt3ÿQóªj yªBò–¬.ÎhǬó)Í9m ã(Œ‰^ˆ`g‚lu³QtD³Ö÷ôÝxf¼äQfxð„I™M½@ÓóÄ/ÊvÓ·­*赬éIÔxìõ¡Ô½Ån•q(Z‰[E,^­ ƒˆkcp¤–àÔ¨nÞŒF–2)‡‰ýÚA*Ôc9QD’"º)ÐÅ‘°œEêoô‚ûuÛ5ý¦# P¨FµígxäFUmúæƒSD¡è û†.÷u™4ágÐõþ€4(%di¢­¯r#1[,øz gü»ÕU¥ýÁ:0FiQãB-·M~¿·áNßʺÄÀ/[c&ô<}~EǕҟñ€/ÃãºTU±Ê?€Y òIÙL„®1ÐuÎ '> OÝñ3RŠ’{žÊ³ eÈdÂ!aQfkÓO›Få0‘\`*H.E5`á†?žºgq?µ( Ô·íHâŠî½ A´êfäñªÙc’”)2žÒB¶ä{uõöòNwÞß"äòQ¾ìôïŸÍú™ë—¯¬Á.Ï VŠðtßÝ:\•ú<þµnöywuùúÅ›ÛÕË×7/W'¸6îÔ}Y¯Ë½ZuêpÌÒSu1`„2€¿Y´ÎâÜÔ›æŠ6ğ•fŽd#§>@û.s7Oƒ4˜†ÎzWšJÀç’%5ÉßÚζöãKYÔª¦SÓO[ ø™d #Ð M]‚ M_£Øç„• Ò!£I!PTÁæXˆŒ…Âáÿ7PÉБYœTmŠá9!DÀR>írêqCÕ0ÙÞhz¤ØÖæ{Þ@dBë6…,’XÈZ×v5- X0MüˆEI6uÞ»€'§·¦å‹³4r’»œ5tÄ8<óùH·Ä‡ik¦ÞžvP ×N¿µu*yÜßéVÍ”<Âÿ„øº·—ËvG˜CõÌñ»í"_4P,X&R08œû ªÌ™P “ v°“ €€£P•›44}Z@lÆœr˜+Jk¥MîáÄ«Åh¤K—çO8ãVíôÛÔ¦šù踘¸ÿLdtêc7Z¤R®éڨؕÃT|ììÑNSÓ>ÞñßlêgÛzxÎÐgý8G"Áѳ‡r2Ö4h:FΗë‹. ºya±8ò¢,!co³¿xû>ð øÒ?õ æÞ¼ oUÞêâOZeNjnõ¤GZqdku¹³µn° uWé¬ï^¬~½1i|c-a=8Osÿë1J´ø§MÚñœ.iÄÒälìb nñæ´~ÓÖ’Úú¡ ³)´D·%` kÂ×#4“, ž¡GsÅœªPd"¾›ªõ¦ê §êbÉñ÷ÿÆ`{ˆ§ããiVå„%a|¶2¡z³ýØ*k“vZ©iB/m@Û«ÝÂ}Qª+ú°fØÒVŽ4Ê1Ë2>íÖ+wGDc›¤7·®á¹´OêyÍ'zƒa©¬ò†^>ã÷SEï´!âIו»@½VmÊ­…Ì.8PX,ÒGµÀ8`rtXr®¼A±“îÚ,Ö3¤"ɲD:4ÜPÝLˆq*¦“ý&×÷f¤ßf8CƒAü˜¦†C"0a“0[å2’Û#S·GhI€“e ¥Yê$Ä%¤ŠÝ, ”ÏÏÂPÛcùèÅ2ÎâÉb L©[’ÝÀ^\3]¹†~ãxä–|õ·}˜ÕÕüniÄùá–K¯óÛßt³4ˆO\+ãh­”_^+¼5ÓÛ§Á†Ë8l*2e’Û’br¦ѸŽ: endstream endobj 893 0 obj << /Type /Page /Contents 894 0 R /Resources 892 0 R /MediaBox [0 0 595.276 841.89] /Parent 864 0 R >> endobj 895 0 obj << /D [893 0 R /XYZ 33.853 921.043 null] >> endobj 892 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 901 0 obj << /Length 1981 /Filter /FlateDecode >> stream xÚ­Xmoä¸ þž_á. ÔSÄZ½øõ€ûRàrí¡EÛk€»4]ìy=šc=¶Ï–7›_R”<ž©'ØËöCb‰¢(’"RÃ}Àƒïo¸ûþéþæíT¬HÜï‚4gyšYž2‘gÁý6x S&™ÜDBÈ$ü›.ÇiÐGÝn”Í&’Iv;ú>lŠ8ì¦vÿ‡‘Çn)n§fr”²ÝÒ`j«®ýq«¥êŽý Ç±þ„¢5G3èvo›w÷?¼½ÙRWDR2‘:5ÿÞV°)á"|ÞÈ ô É¡ÜÈ<ü„$·ü4ÔÆ€vR6 ÌÁ-W 40ou´Ê=Z 33:öv±CÚ'ì6ÕÄÕ9.'R64BCíÇ ¯àX°Û¥Î. àl®À8kÔÐäºùîþæ×Tˆ áœÉ4 ²4fRAu¼y|ǃ-,þp¦Šf1·5DÇ­#»‡Ñø„}"jêŒ.™}tÃzCu¾ûèóü¨Í€Ñn:Ã|BfQ´Ã`Eý2`äçÈ ÔƒvJGà-á(ð\žArÂGnÇÏ=æxb– B^/C@…) #âÅo’\H)@RŠWk¢Oå+4¹ôIìûBRȲì«UÉX¡ÝþøuNå¢KaÄó¯¸a9óR®ÕÖbQ[ežÏ½ޱêàw× ÇÒØ§X;ñk¥¹E €â‰=È@ä²u•'ûš Më¶@îÝ6ãO¥¦KÍ{Jb‚a¯XÂýòqúPœÚ— |uYáa‡5¯Q)nl±/¨žÂ‘M=Rß 4‹j8(wÆ6w0t‹,¨jÍ®…7Rï °äÐùjbµY·éúe¿Õ4ìj¿E=drùDêmÜÂAè|¥VCÝZ{ª­m0‚§Î–ÖÝ£ÑV3X89˜ð=™~rBðÙ;^2Þ2Žè1«—±|Þn98ñ¹D©„"d‘`Mµ iS–HãTûBñ+Dî¸?ךÁË}ÄáZK–ó[lßN¸qõ™˜ãÜPÐ1øÛvËÆæÎ~ ïòxP†Ìý¸IÀ„½¦ „+˜ÈW¯PÙ õ²¥H0‚¡‚Ve>ý„ç;Žù ` @%ÂíL§[€½s@üî×Éöà£í¨kö ~üþ&x´üò¬a°Dé»Âë»â‹]¶KDxWï§A¿¼W¨µ#¡ ²é5®eÕÜMýSã›)›ï‹NÌf@_W¥{Mm]~®i–¹ßrÀià@øWãŶîuþh!{MµOìÛ²4ª^õ±ïCÔ?zËàQžîw¾Û}!û·ÄÙõºE@{ù÷~ÙÏ¿¹}3¼±È¶R¡Qíÿ–¤yÙ ³Þvœ(ô¶§çš°ª°ºä\êlñõe¥çÞ}]ãt!èLåYô—é|b¿®´˜Yé¤ÚÝŒóÕP¶{gnoÈtJ¿os'¿¤<¼ÿàªÈ»¦+—ñX¿ccßÔÆ«ö(Þ]3æá½-Ko¼,*¾*êîEŬ×~‹fw×5»"ë\µå=x [Ã]çG´nÏEAoçlµŸôз-*Í£“ø…oÕß/¯HuÙ;b…gÝ: –qYL$—,NX^°> endobj 896 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [391.928 366.987 399.774 379.606] /A << /S /GoTo /D (equation.6.2) >> >> endobj 897 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [424.568 366.987 432.414 379.606] /A << /S /GoTo /D (equation.6.3) >> >> endobj 898 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [476.026 366.987 489.724 379.606] /A << /S /GoTo /D (figure.13) >> >> endobj 902 0 obj << /D [900 0 R /XYZ 33.853 921.043 null] >> endobj 186 0 obj << /D [900 0 R /XYZ 68.868 798.142 null] >> endobj 899 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 907 0 obj << /Length 2181 /Filter /FlateDecode >> stream xÚ­XYã¸~ï_¡‡‘1‡¤Dû {L²û ˜Þ‡Åîb¡¶é¶Ð²äÖ1ÝFþ|ê¢,»=;&h E‹Åb_­£ÇHGÿ¸Ó_øø¯#ãTf]äÒLi—F›ÃÝóQ¶HuÎ,‹1,†}‰*µeÒóLÔ`óL¥SËL%6,½ÿñ`’èûîîßð¶­ÂÔ Úz¡Û·÷wï?˜ÔV¥s6ºßEY¡Š¬ˆœ.TV¦Ñý6ú5þP?N½_­ÓÔÄ&ùfµÎ²4þ8ö~Öð©ê–×6Sÿie‹XX»‡–ü–g»¾;ð¨âÏÔÖÕk]58Óñ¦;Q`݉°¡>¬lOM5δߴÓ$ç÷ûŸÞH’¥â®˜ª4ÍX羑ëî‡û…E‹BéÌFi‰Œ9Zà×ßu´…µŸ"­’²ˆ^ˆóÉJÜÕDÁˆd§ËãJ£r0"вà:3ÜAO¬á•is•å(”˜á.†4 1­K­œËÁ‰Jó’ÙîW…;¸¾v±õ›ieâÑó|Ü׎ÒxØôõq|›Ä/}8ê‘×ÇŽ¿•Lý«,ü¦MÚxoª¦oݰ­ÍµJuT?TOþ­q“,UhÜL«"èkŒ›@&Ƭ<K poÏ…{ÂæÿrpªK•9ûæ`ˆãÏ8Õ9ÚËÀ¦Á'Œ_±-;¡#@¸òØ€„‹˜÷”9ì?Èh[÷~3vý §yü²÷½¬œPz7ñ¤¯ZÌ"–Ù•]gWÎÙU„ìBµsÚ,Ë#.žŽ«uÈf–Œª‡m *ÕÀÖˆv%…UØõkØZ§´NHV|ôçwÏŒrö•èv/uÓðíðË¥7½¯F¿}‡¡‘³‹ƒ]úAŒ´éšé–iyÚíDâ¾Þ`\íP2XÈèÜe`ͧb Re(¼B$Íñ5ø œÖ1=Í‘ãZb3 :W^fß¿8ŒÙ• ›¢8Ó@@ÝW8 y«/°ìõ¬&¬p1œ·îºžé¬5 Éç$¥Ë$E›$¤!$ÁÅz`ãݺ iUàþcãy|¨ÆÑ÷r¹Nh¾¨°ã„õÂ]MwœíÜè¾ †ŠzÕ 3 ë‹ïðÃXÃyÂþ U°©}üë Çv„+Û©™† H Ú“#K®ZI™,ôDâ^¢dõÄSÉ.Úð&!(âw¡Ìv¾¿6µ›®Å ¦~eÌÞ˜½(‡´ã^ÝÒ[.Š—áúq{Ña΂ٞæx°b+Š5Ñ{žq4¶<áú~¹œÂÞ+#Û…‘A‘i`¥Ø²°úówyÀõ¥9Ý„öÏtZ²õ‹ f’ \Y,t_×j™$\,Aúü‚4§R;wZ”y€d’®¼;1"€dgó"¼<áºsW’h&5’KýH d‚( 5ãudÒ95`2£°|2ÐÐUH¦ ãÒËìÐõ2š¿›šÛŽÈU ]Šmºo¶«O¾n%œ?÷pŒGvÙ†£nTkéP²L¹$½ ñEá®ñiÀ.¢ @óÒœ˜CÚ„œ‘z =ÁG¨D÷­ï…†xiŽUŒ’oIȽ‘ŽA´-ŸÁœ[#@ÛRKq€ª10’\Ô`ÐÒ„ž!RIz^ ŠF"Àc§uËK= Ua/hãû½<³{ð©‰e†h“Ó¡-¢ÚRo}P\´¾u±ƒ¼ˆ’¯èŒ¸œPß’K²õ èbÏîbO±|júÁZϹBõú‰IДB5Á*äÒøyªÈ:c=Ö~`1m72ç4LÐné>ã çÚÁ·ÕC#YHÀ2îa®ÂÄPý›JüÖWÜ#Ñ¿J«Ú×aú÷ìuC™hUÉÞLY•¬ ³­ƒ÷l×S ›&Žl–&iÌ_wI&SÌ ”J¨ðylJ4€éÀ*áEäD7oAaøŽ˜‚h°Ô(]f·C9É`8 hD'üçÓ©¼Ãù7_êt Öá k•Éò3œ9Z @ª;¬^–3¤áR€4 my¶‰êøÛM#”«ÅÖ Qg`êxL·£ƒ9†š …iÓ€úòÛÿ @Hïð¹ãÅ4Õyüm7b_šÒÝ)aSCy©˜¸HV˜U½çÞû)M°=ë—^µÖJŸŸþð¸ÿcÓ÷–’Jê†ÚFJ›dñÔ´ÐkÕÊ+×9É(ž;•»ìú‰Í­-¡S¯Zœ{|˜œ“g’Ž[žÕ²Á?c_Í€AÕøV\z“¢Äÿ*ýÚEŠBfñwÐÈT}=t"šÑ•^ßêK@¬| D@㟚’\ÏȆ.ª$’ÎI¬×j RVžJ&ÒèùÓÖÏ“g’´÷e,Áî¢Gâõv‡›ÑÛ±~è™Y‰ö} 툧Æf?4„ô–’N23s#ã4¡KŠøŸ’qäC#}KÿŽU’‡d†6˜0_.[V•Wò*!ð@͸»ìo©ùÓÚIkh mϦÿÖ˜4¦Bßo†ðüCJ-ûX; TuSóL zç.‰A}C}¶í©EêÍ ûøíÌ”§Dâß3n–ÓzCÅŠ~ž¡†ƒse’_mèWN ¦uƒïÙ„R&ð÷¶6ü2'¿û4¡„\À7j/a¸àWpܘå†àwùÞ;#.NÄ¿?Z«UiàýgKUòC¤Ë.˜ 1ÿ/ÇÚêñ endstream endobj 906 0 obj << /Type /Page /Contents 907 0 R /Resources 905 0 R /MediaBox [0 0 595.276 841.89] /Parent 903 0 R >> endobj 904 0 obj << /Type /XObject /Subtype /Image /Width 1152 /Height 818 /BitsPerComponent 8 /Length 168932 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIF,,ÿÛCÿÛCÿÀ2€"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š*9¦†Þn.%Ž æžyb†bRòK,ŽU#Ž4Vww`¨ ³5%xïíðÿ^ø³û?üsøWá]^?øŸâ_Á߉¿ü9¯M$ÐâkÞ2ðV·áÍW–kx帊=7PÔ­ïH"’hÖÑFîHä×ÁÏø(Oíwÿ!×~%x‡þ à¿ÙßÁ¿²oÃ?k tŸÛ'ö¯±ø•ãý/ãÿ‹ü2Ö‘xªO¾x£áV½sðÿA½y´Ôø“ã‹%®½qqѼ9=Æ™­éö~AûrÁAÿà­_ðKß‚þ1ý ~>~Ë?²¿í§ðWÃÚ¦š¯ÄOÙ;]ø¹ð7Ä_ õû¡s„üGñGàÿÅÏŽ7W¿ 'ÕåÑtokþ ø•{{¡-åÞµ¨Á§ÙAoouø½ÿÿ‚á~ÍŸðNßÙþûþ [ÿ)> ý’¾-~Ëþ(xgþ$ñgƒðßÃ‰Þ ñ޵‚¼e£ÞxWÄ6¾ ðæ™©_ëZÝéÚ´ÖrG¯èö¥ ÔB[vY‘dìb_~'ý¥cÙöŒñ¶ èþ3øýû1|ø×âí#ÂÖú…§†4¿üTøUáOkúw‡-umKYÕm´W^»¶Ò-õ=cVÔ!Óâ·Ž÷R¾¹Yn¥ê<)ûBøÆ_´OÆŸÙ—F·ñøðá¯ÀŸŠ9Ô.l¬"ð«hÿ´.±ñ³HðN‘£_¦©.«yâ ?þW‰u/[Ýh–]–¯xM´½_Y½»Öì´ð~‹âø'¯ì%û<|ðo˶7ˆ¿g_¿gÍ;Fø-¡ü>ðÇŒ~ \|-øa¤xË¢üLø§á¯ øCCÖ'ð¬Wºœž=ñ î€u‹{KCâ3o%ÌŸËGüƒþ cûY|Aÿ‚†ÿÁl~.ülý…iÿ‹Ÿõÿ‰_³'Âß|"ý™çýŸi_ |]«üaøýðGOÕ.íÍ­ý„Z÷‚ˆì¼OâoxãÄšœ>]SITþà试|CûPêýš­ÿh¿þÌ?µU¶§%´S]þÎøsቴ®›<úôú67 øWãïøJöå’(µ¹fÑ<«iÖZ Ô—÷Ö“ÇyikùÉû9Á}ÿd_Ú¢ÇÇšÂOƒÿµÍ÷ÅÏü`Ÿà^…û8ëŸ |%¡ü|ø“ñHÐ¥ñm$ðw|I¡êqAt°ß ­f‰1Wþ ƒð«Ç¿~"|2ý“>þÑŸ·f³ð{Zºð¯Å¯~Ì„þñ­€ß©xóãoíñŸöø?â¯i=¼Úß„~øßÆšî‚.í­õ«+ ×kTý.¢¾ ý“ÿà ß³Çíâ¿Šß | uã_|}øg§|ný›þ5xBóáÇÆï†O©ªÉ¤êZ¿…ï'¾ÒüCá}b mntŸøÄ0ðN¡þœÖÞ"‘¯ík·íÃàÝCãÄoŸ>ühý¨|ðbm#OøÔ> Ùü,±ð‡ÂkÚd:Ö•àß|EøÛñ[à߀/¼}.w§jÚ‡€|âOxÇÃÚ^«¥ê&Ñ4k;è'`µè¯…þþß?>!þÕþÅZ¿ÂÏ? ¿h¤ø ãÚ?Vð‡ÅxzÃDÒ>øKâï†Ñ_[üAð‡-°ñ–­áOiú~‰«lkÿ¶ç‚eø·ãï¿~|bý¨¾%ü"“FµøË¥ü²økoáß„º¯ˆl Õ´o x×â?Ɖÿ~/îô[›mr‡¾ñŽ¿ãÝ#D»Óõ}sÃZe†«¤Ü_}¡E~yÍÿø{áïÚgöiýþ'ü ý¥~|tý«5_Š6_ ô?ø3ÀzŸ„F“ðáO‰¾.x«ÄÚÏÅ_†¿¾ ü+{/ì ÜhVþðÏŒüMñËÄ:¦‡'ˆ|¡x_Q&‹ô2€ *¥ýýŽ•c{©êw¶šv›§Z\_ê…ýÄ6v66p½ÅÝííÝÃÇokiko“Ü\O$pÁ o,®¨¬Ãáo‡ÿ·•‡Æý~Íß³í7ûD|Õ&½‹Â¿ümû>øáç ÓîžÊmgÀIûB~Ð|oâß ]\E9Ðüu¤x2ãÁ)´‡ûSÂÞ"Ö´›‹;ë½+¾(þоøIñCöjøGâk]x·ö©ø•ã?…ÿeas§iúÇ€¾üSøûâ _Å—7º¦Ÿ6áøü%ð›YÑí®4›]wT›ÅZç†lÛHG¸Ö5ÍÀ>ÁBþþÑ?ÿk/‚^øgñ÷Nø±ûøKሾ1xÇ?ì¼­O®|gÑ>$ëÞðƹâk{Ox’O†ZŠ\ø‚Îæ…šÁñ…¯|ñÅš=ö¥©é?Ëgí5ÿ0ý®ügÿÁ6ü ñöý¤üðãàG€hÿfM/Pø ¬þÒ?áøµû:ü~øq®|^½²“ãn•ðoF‡HŸÁZ妑ám_ã ßh~ðŒu«kÛýsŶžpîŠù{ö~ý£¼]ñ·CñƵâÿÙ'ö¢ý™Á¿ak=öÓ>nxî+»=Fîâ_Ú|øçñ¶ ÏìçÇi}»wáë¹/5=:-6ßPGº–Óó7Lÿƒ‚ÿc;OÚG\ý˜>/|%ý²?f_økáw‰~0ëZ¯í#ð >èpø'A– M&ëJѧñ–§ñ+ÅzÄ-^â/ ü6Ò|ðûľ/ñc§„ì¢ÄræHû§E~P~ÍßðX_Ù»öŠý³ükû]ü;øûðö¥ðgÃÝ7âˆøsñëÂÿ4kÝÁÚ¶‡ x®Êk?øW_¾&\x_ćÂ)ðÿ‹n¼ñ6ÓÀ?4ýRŽëP𽬶÷–ößJü]ý·¾|6øµ7ìï௠|Fý£?i;OYüBÔþ| µð-ïŽ=øYð§Àö¾£ÚiPøÏâ>¨_¤ðê6ÖO£™5À>ʯ,øçã?ü8ø'ñ‹âÃo‡·ÿþ"øágÄøáN•t,uO‰¾5ð¿„µ}sÂßtÛÓâÎÿƚ准ìîŒ {J9ŒRØßx;þ “ð2_Ú Àÿ²§íðçã¯ìSûA|V[¡ðwÀµ?†¼£è¿.ìn ¶»Ñ~übø;ñ+ã7À_x¢)ot¨×ÁúgÅ7ñeÍγ¥éöz-Ƨrl£ú«ö™ý íf_…÷o>ü}øãog©Úé²xölø_¨|]ø—"\Ú_ÞIªCá 6÷O¸“H±‹O‘/¯¾ÒW66©·ÆÀšŸðC_ø(í›ÿýš¾!|Wý´¿e{oÙŸÆ^ø³«x+Â3iñ÷€ü7ñÃvº}Üú†à߉ú®½ã +Ÿ êSÍáw[:Ýþ®k\Å¥&™}¥kZFŸû[_ÿðM/ø)ŸìýÿTø%㯿³vñWÃþðÆo|Ôâø»á¿øW_Ô|UáŸü?ñÍþ§¤éžñ‡Œã>“Jø¢ZZÜj·zV°Úž¯ Ɖok•åÿξ ÿ‚á~Ìþý­~þÇ¿¾~Ù_=ñÏŽôiîü áí'×?ÚzÞ êÒiϤ^jVVZ6¡ª ³TWã÷Äßø,ŸÂ¯…¿/ÿj [öIýº5ØßMm:îëö·Ñþü1³øf<'«] m3âM¿Ã_ülð¿íQ{ðÂýf±¾°ñíŸìñqáËý'TÓ5k+Û:í.GêÂŸŠŸ¾8ü5ð7Æ„~/Ñ|}ðËâW†tŸøÆ^¹7Z?ˆ¼9®ZG{¦ê6r:E4^l2…¸³»†ÞþÂé'±Ô-momî-âô (¨nnmìíî//.!µ´µ†[›««™c‚ÞÚÞig¸¸žVH¡†•¤–YcØ($ME~]x#þ «ðËãæ­ãدöuý©?n¯ø ľñ'ÆÙëCøáoÏâm)Ò-gDðÅïÚ“ã×ìáà_ŠWz4Ó[E©Kð§Xñ½ŒêÞån䲓íCÜ~~ß?h«ßþð5߉¬¾6þÍqÃÿ Ûön×ô­8|wøq{}£Ë­èún¥ák^"Ó5»zÒƒE»ðˆ|E£Þê„iSMMdµ@µ(¯Å„ÿð]Ù—â§íéð¿þ Çwû>þÛÿi‹6ž4Õ<=añëà>•ðŸÃöZƒ>x×âñ.ª|Gñ ??‡üM xÄ>Ôt/k‰w®Äš~¦šLq_ÝXû—üoþ ³ðKþ ƒáÍ;Çþ ~Õž.øuwacu©|Oø)ðe)øÛ¨xWâ„4øwÃÐxÃ:αg¨xÖßJñ”:®“£x‡TÓ­ï`¾û.³{cn·Òþp| ÿ‚ùþÇÿ¼oñßáuÏÂoÚÿá?ů€š÷Â꿾0ü ·ð¯ÅßüQø×uâH~ü(øcðÇMñ§ˆÛ¡E¯êÞo}á=/Ä_hµŠpÞº+ó×þ 9ÿð7ü;àÕ‡Çߊ߿i¿Œ¿ F¯ã~Î ø{ãAðÆMCQÑ´_êm4·ðÚéÞºÓü]sá¿ |Gø’ÚF™¯j~ _ h:ˆo4oê^)Ó/´¤ðb ½ãZû¢Šü­?ðTë;¿‡W_<7ûÿÁD¼Wû8Úéâ…øë¦|øK£Xj [ÕãñÆð+Æ¿ü)û^ë~ºÑÄZ½•æ“û8Þ]Þé—P^ÚØËáû‡öpý¤þþ×?¼û@þÎ?Ê¢¿1üQÿHøkðVûÂÍûd~Ï_´ÿì-àÏkš_†¼9ñƒöÐ~ kW^×fkmLñ§Å¯Ù«ãŸí àŸƒój÷(öÖRüjÕþZ´êkˆwÄ_êïÚOöŽÓ?fï„“|`o„¿~>iq]ØÁƒÿf†7ÿ>"ÞÙßX_jK­éþÑom'½Ð൱c>¡Ë©šïO··Žâ{ëxÜèª+ðÓöpÿƒ€?c¯ÚÓàˆ>3|ø]ûQxëPÑ>$|Oø}mðn|4Ò¾*êš_ÁÏü7ñ÷Ä_‹—Ókl~ü6ø+áÝ'⯄ôÛŸˆþ)|0°ÜIḭ›V›L¶Ô~ßÿ‚vÁE?g/ø)÷ìíí-û2Þx´ø6ë¿üOáÏèvZ¼ãÏØhšÆ§á_Yhúω|;%úh^&ðÞ½o{á¯ø‹D»Òõí>[}VIþÕol÷eW‰þП´_ÁÙ_Ꭽñ‡ãÏŽ´ÏxI¿Ñôcª_Å{}yªøƒÄZ„:O‡|3áÝJ¶¾ÖüGâMwR¸ŠÓKÐôM>ûQ¹c,â´µº¸€Û(¯ËïŠðS¸>xKRø¯ñËöý½>~Ïú£jÞ#øùsà€Ÿ<#áo B±Mâïü9ø+ûGüOý£|1á}&Í®u cW×~ØC¥éöWW‹ mhn¾ùøAñ‡áwÇÿ†^ øËðWÇžøð³â‹ˆ<ã¯ê–úLJõý.i%·im/-Øì¹³¼·ºÓu]:å Ô´}^ÊûHÕm,µ;»H@="Š+ʾ6üU‹à—ÂÿüP›áïÅ_Š©áhô§ÿ„à—‚nþ"üPñjÚî™ Ç…¼cqiq¬Ie&¨º¦ªEÔéºާ«\Ê–Ö0õZ+ò·þ ½ÿzýšÿà¨^,ý¥üðÀ´€üCû(j4/‹wÇ¿‡ºÃF×Ä?o>&iÖÞ°Ðìümâ[kžÔ~ø›Oñ–â}ÃSé7ÒéÖ¶«©LÚŠé¾3ÿÿ‚ð~ÌÿðLÞè¿´‡ìçûtI¡.¯máß|OðWìý¦ÏðÇž#¸Ò£×$ðÿ¾&øßâ|+¯jözS\Þ\Ú-ý³4zf®¶u&—z€~ÜQ_5~Õ¿´Î—û&ü)ŸâÖµð{ö„øÛ¦Zj£N½ðŸìÕð«RøÁãû Dеï^xŽ÷ÂúeîŸ5·†të?Ü[_jòܬQjš†¦Ç·z¥´mùõû"Ás¿d/Û‹àÍ÷ÅßÙßÀ¿´wŒ5i~0xçàÇ‚¾ GðçÃümø“­ü8ð_ÂßøÇÆðæñ XðLJ>hZoÆéš·ÄŸŠž3øsámÄz®…®_i—ºß…WijUñ'ü{ö„øåû)~Ä´Oí û6ü›ö‡øÙð·ÁVúÿ¾Ãk¬j ¯ÜÏâ=HÖu‹í+Ã²Ûø‡[Ò< á½KXñþ· h7VZÖ½£ø^ûGÒ¯ì/ï­ï ñŸÿÁVþ jßµ‡„bŽŸhoØÛö—ø•á»ï|$ð7í/ ü(Cø¿¦é«;ÞÛ|6ø£ð'ãÇ?„Þ"×-ã³ÔOÿÂsk® tùìΟöù¬m/=×öÞý¶¼ûü%¹øÕñáíñSÀúE¶·ªx²çöxøK{ñVëÀ^ðÞšu}wÆ^<[}SG²ð¯„4­9'¼¾×õKèlí­­/n&d·´¸–0&ÿ‚JþÖ_´‡í·û |$ý¢ÿj߀ðÎüi'‰!Õü—â_é:Ö“¤kwZ~‡ãßøSÆ·zŒ¼+áßØÂ·ÚFâ]SW¾{hÆ«e¬jº&§¥_Ü~’×ÈŸ°‡í¥ð§þ û*|.ý°~èÞ<ðÿÂÿ‹’xõ.| øG¡kš¾–’ê–Þ?î<]ž-n.´uÕ´A©}áE~züÿ‚–þÏ¿~?êß²/‹4o‰ÿ³/íy¤ø|xºÙŸö–ðæàψž+ð‡Ù¯.åñWÃx?Å¿>übÐí Ó5‰u¯„¿ðwü;¨é^(ðV±âûŸ ɬh¥ÓÙÚÜ «K`§þ •ÿý³àŸ³WÃߊÿ±oì¯mûLxËÅ_tŸxºm_Âþ>ñç†þønëO¼»ƒPÖ<ðÃUÐ|a{sâÍJ|3¡kc[°Ð4=b{hµTÔïµ]HÔ?V¾xÏÆ¿þ üø‡ñ'áíÿÂOˆ¾<øYðûÆ~>øSªÝ íSá—|Qá-#\ñOÃÝJôE¼¿ð^¹}á»Ë¡"âãM’aaö/çoü'þ ðWþ §¡GâÿÚösýµu劉t-oVø“ðŸàE§‹þøkTñ5ÄÖ:'‚ë^jêwºm´šºiØ=ÇèÿÁï‰ÚÆß„ >3xVÓWÓü/ñsáÏ‚>'xnÃÄ6öVšý–ãï éž*Ñí5Ë]7PÕ´ëm^ÛNÕ­áÔ­ì5MJÊÔž;]BòŽâ@F¢¿;î¿à¢žñKxÂÿöfý›¿iÛSÁ¿¼M¯x3Æ¿¿f™fÙ|¤x¯ÂÒy>$д›ß´wÁMwâî8kyà ÆÖ÷· äé3ê0|(ñχ5‡ÿ> xÖÎâöÒçÂßþx–ÞÏÄÔEÖ›©ZÛ]´7Z&¥s¦j–ÚV­}>•©Gjùïÿ¸ý¹?ࢿðNOÙ÷Çÿµÿìãð÷ö7ñ÷ìóð«Jð·Žì>2j?¥øÁˆ¾!xÿFøm¦jz‡üwáj~Ó¼Kâß %ÝœÞ/²Öîlï5[¨ÚÙtèÖçõö]ø¯ümý™¿g_ŒÞ*´Ò4ÿ|\øðâw‰,ð‡üU¬Zhvº–¡«j6ÚE¶£«\C¦Ûßêš•ì6I wZ…äë%ÄŸŽßðtwü £öæÿ»fÿÖÃýŸkõþ ÷ÿ&ûÿÙ¢~ÍŸú¦¼@]ÑErþ7ñ¿ƒ~x?Äß~!ø§Ãþð/‚ô=Kľ.ñ‡Šõ{Ã^ðök%ö«­kšÖ§=¶Ÿ¦iš}¤2ÜÝÞÞOBŒò8€:Š+òóáŸüCý¡<<~"þÊ¿±í»ûN|–öòßIøõào|ø_ðãŶ63Z]ø‹áîŸûR~Ñ_³ïÄï‰^Y­/£¶×>|:ñ5–¥5ŒÖz[ÞßKgkuõ'ì­ûc~϶ƒ ×t¯„7º‹] ?Bø­ñâ¿Ä„?³ïÃïÞ­†¥-¿|OñoNñ±‹NºwðòšÿŸø(ßÀïüqÓe¿‰¾ø¯û(~Óþ Ò/µÿ| ý§|7áßø‹â^¥WX¾øAãÏøÃâ7ÁŒ­¢ùˬéÿ ~*øËVÒìíî5+ÛtËy¯ïÚ+ó¯öóÿ‚’ü:ÿ‚zè>2ø«û>þ×ÿ|¤xBø»â/ìûð&ëâg€< ÚÞÞÙ]MãÏIâèÞ’ÐÙ‹ËѨ\¬6]Ýž©}=½Œ¯<^ðÓþ ÝðWãç„~jÿ³/ÀÿÚgö•ñïįƒ¿þ9êŸþøcá-¿~ ø⮓o¯x ŽÞ8ø•ñŸáçìóðËÅþ&Ðå¸Öô?jŸçñV»¢X\ëz•ªié·×ઔWä—ìÿÿ®ýˆ>:ÜþÐÕµo‰¿³ÿÆ_Ù{UÓôOŸ³·ÇïËáïŽÕu¯Ùx;úo‡<+à]Wâ&•ñGUñGŒõ=+ÁþÑ>ø‹Çæ¹â]oÃz^Ÿ¦Ï/‹<*u¨>8Áa~~ÊÖÞ ñ‡ímû)þÚ_³ÀŸxÇGðF‹ûIüNðÁ_á.™«ëó´i|}¥ü(ø÷ñ/ã/› ð“Ëßþø6d[iášÚ+ÅKi?](¯ø¿ñ£KøQðo]øÓ¦x'âWÆíIÓ4-_Jðìûá3ñOâì¼Gªé:f›7<7¦_ZÅâ8LZÄÕÍä:Œ6¾¶¿×&»[ 9e¯Ê?Øëþ ëû~Ü_þ2üø/ð·ö°³øãðg\ð׆µ‚¾>øEáÿ üKñN·¬ÝxÊÃÄÖúVÿ POéŸ õ/Üèÿ,i:ÁKü4Ó>/\xWàž‘á­câ'ÅÝsû{âþ•ð¯á·Áý<[¢iøßâïÅ/‡Öúˆ.O‡lm'Ö‚YIõÿü÷þ Oû/ÿÁIÿfIjÿÙç^ñ›ð×Gñˆ¼#㫉úUƒ|OðÓÅ~Ñ´oø‡@ñÄpk׆m&Ó<3â=ÄSêš'Š5ß#Wµ¹ZvK¨íÀ>ù¢¿.Т¾Ñnÿ |JñôÙ·àoÇŸÚ«Bømãká×þ$üƒà¶ð»Køá™ä³ñGƒôO||øÕðOJø‹©ø[R‰ôoÞ|->7м=¯ÅuáícW²×tíON²§ðÃþ ðÃâGíxa›ÿ…Ÿ~~Ñv_³Ï‰ÿiøkât-+Ã~ø{Έøc 1xÿÞ2ñW‚|u«ø‡[ñå…îsð£]øá;[ ÄV>'ñO‡‘n þÚ¿ ?a?‰_³ÿí¥àߊß¾2ƒ? *ðï¼ àíPñ‹|câíkNðï…ü3áý&ÚKÍS[×õÝ^âÓLÒ4­:Ò)nooïî µ¶‚7–iQšé¨¯Ì/ÁO´?Œ>o‰³_ìgûqþÒÿÙe¹Ó¾<|9øsðÀþñV‘’Æ|EðçôWÇß~,ønqoq.™®|+øWãM?]Š$mmPÝØ-×Òÿ²§íû<~ÙþñŠ>xÞMn÷À~"¹ðgŇÞ'ÐußüZøAã‹)n`½ð_Å…Þ0°Ñ¼kà/A=•êAm¯höÖÚ´V“ßhwš¦œ«xÀSQ_ŠŸ¿àº¿³ìåû`|"ý‹>/üý´¼ñ+ã¿Ç_|øQãO| Òü+ð{Ç¿ˆ>'é Ç|1ãïxÿñø“ᆑ¯ëZV­¬x“úf­¨Gá}GMÖ¬4-@jº]½ï¹ü@ÿ‚žøgÂÞñ/ÆŸ‡¿²'í¥ûD~ΞÒ/¼I¬~Ðÿ¼ðzçáýï…t¨¤ºÔ¼cà_ |LøëðËãgÅßAaέeã?ƒß |}áhmøWV×t››Û ÓŠ+ç?Ù?ö°ø ûn|ð/í%û6øêËâˆ6SÏ£ëAs§ê:v£§ÜÉc­øoÄš%ôpê^ñ7‡õ(gÓµQ‚)íçˆO\Ø\ÙÞ\ý@ÀüSø¥ðïàÃ|^øµã À >xoUñügâKűÑ|;áÝÖKÍGR¾œ†r±CXm­ãšòöåá³±·¹¼¸‚ >Uðßí¯âøGMø•áÿØ“öÒ½øY¬éxIñÄÞø¦jz‡„n!K¨|OÁ][ö±ý¥f²cyká¾ Eñ"þ ‘éþ »»º²¶¹ûÅú¶± øOÅ9sã Eðî·«h~³¾µÓ.üS¬iÚmÍæ™áË]Jø->ç[½† 2 ëÀmm%º[‹€bÅ~!ÿÁ ?षWüSÂ?´þ¹ûlþÇ û*\ü!ø§£xCáµí§„þ#ø"ËÆ6º”>%“Å> ¿Ð¾'ê:ž»{ã„ÒiƒÅ¾)ÓäÒ´rãÆ–¶^ðýæ¨ÛI÷wÂÿø(GÂoޱgü7WÁ_‡´ÅŸ…·ÚçÄ Âþð›Íkã§_áßÇo|Õo¼5ð±uHuCiâ_ j~(³·ÖîôMcKð&5Ÿi^Ô¬õ}Ló_ø'üöxÿ‚ž^~ÐÚwÀŸ|{ð¥û2x¿Ã>ø¥|zð‰ðë[¶ñ_ˆâñ1“E´ðý—Œ¼O¯Yê>½ð–±¤ø¢ÃÄúo†ïôÍV$µŠÖð ä€ôêŠürý¦¿àµŸdŸ~üdýšn÷â¿Ç_ ~Ï?>*ÿÃ>YéŸx+⇚kiaª^‹4iÀ?T(¯Ì„?ðW/ØßöøðÏãWìÓ¯øçö‡ºøÁ7Š4ÿüøWà›ÍCãþµàGÒbñþ›âx†ïÚwÃûÜkþ¶ñGŽ~"øÂ ¬eñ/„Œ>7º‹Æ~—\­àø*ßÁM[ö°ðìAñÓáí û~Òÿ¼7}⯄žý¥ô…èôÝ5g{Ûo†ß~üaøçð›ÄZå¼vzƒIáßøNmuÁ.Ÿ=™Óþß5¥àê ùSÿÿ‚¹|ÿ‚eXOâOŸÿloü<²Ó4kÝSâïÁÏiã„Z.£â;Û½7@ðÆ·ñ[ñw„¼3¤ø“VÔmRÂÞÊúúh¯u ÒòúÚãWÓ£¸úßÁßµ_„~ ~Çÿÿlÿü?øÁâ¯|Røðãö€ð‡Ã ø*ümÔ<+ñGÂ|;áè< ágX³ÔŸ¯æËþ Sÿ3ÿ‚™ÿÁ/§øwñcÀ¿ b~Ëÿh/‡ÿ³çƒuÜürÖ¾5è~#ñ‡µ¯µÿŒ<7¥ë~ðkØ^i~ ñ¼6h#¾m6æÏE“PŠìj2ÛÛý‘ûÁk?f¿Û‡öÄøŸû xàÇíkð‡ãïÁÏ…ïÅ߈šíð‡BøQ‡4}Å¿¼#?‡¯´»ˆÇ ñEü¿<-¯i\xF PðÔ³ê‘ká›O¶¿üËÿƒ¾?äÂÿc?ûJìïÿªkö— ê抯yyi§Ú]_ßÝ[XØXÛOy{{yé_³¬Ö†‘w-–¥?‚4ÏŽ´Áo‰Ÿl ¸¶¼—ÿ ¾øÂË\†Þ;¿Üjöš¦‰>¨ú]^+ûHüyðOìµû>|ný¤þ$C­]ø à/¯|]ñu‡† Ó.¼Mªè_ü3©xŸPѼ1g­jÚ{âmf 5´¯Øêšæa{­^XÚ]êº|=Ü^Qû~Ýÿ³7íÙá/x›öyñÜÚÆ­ðßÄ“x'â÷Ãè:Ç€þ1|ñŬ÷öw^ø­ðÃÅVšoŠü«¥ö“¬ÙZO}`Ú.·q¢ëðêÚ´Zeì°ÿ4?ðvŸíñûF|'ýмWû3øöfø£áƒßþ xGáÄoÚÓÅš§€,|®C5•ïÅ ?†_ ´MÆúßµMGÆV>Öí|[âx[ÂZ6™áÍ]ðý•¾·yâ8/´€ì~¿¿à¹_ðP?Û7þ Ùû5|=ø¯ûþÊöß´ÇŒ¼UñgIðW‹¦Õü/ãïxoáφî´û˸5 cÁ¿ 5]Æ·>,Ô ‡Ã:¶5» CÖ'¶‹UMNûUÑtC넟¶ßÄÿ‰ÿ|1à=sþ ·û~üÒ|Ewumyñ?âÞ™ûÁðëÂQÛé×—éyây~~Ø?|h–—rÚG¥ÚÁzõÁÔo¬Ö{x,Íí·‘ÁEÿà®ÿ¿à˜ö#ø÷û?þÙ^/øe¤iZŽ¥ñkàÏÀ„ñ‡Â-#QׯntÍº×Ľ{ÅÞð–âgR‚-:ËOÔõ;Ke½Ô4«k»ëiu;5”ôàgŒükñàŸÁïˆ~ßü$ø‹ãÏ…Ÿ¼gãï…:­Ð¾Õ>x×ÅÒ5Ïü=Ô¯DP Ëÿë—×þ¼ºB..4Ù&FbúyÏÁï‰ÚÆß„ >3xVÓWÓü/ñsáÏ‚>'xnÃÄ6öVšý–ãï éž*Ñí5Ë]7PÕ´ëm^ÛNÕ­áÔ­ì5MJÊÔž;]BòŽâOе?ø)—Â/|Sñ÷Á_Ù‡áOÇŸÛâ'Â]]ü7ñrÙoBøkuðÿᇊቧ»ðWŒ>;üsø«ð7ö~¶ñö ;jßôÏŠš§´y‘¬uMÏQÛf@?F评~ÿÁCþ|jøËªþÌÚö“ñ7övý©´ø­¿fïÚGÂV¿¾%xƒÂq‹‘sâφúŽ“®x³áŸÆ_ éòXßÅ«k¿þ!xÿMÑÚÆæ]RæÎØE<¾+ÿÿ‚ºüÿ‚dÙÍâ¿¿lü=´Ò´CSø»ðoàGü&?ô]CÄ×^…á}sâVµâÏ xWGñ6­©A…¦Ÿ¨jð Ëý*Úâò µ;$˜õbŠüâÑ?à¥>ø—¢øn÷öoýŸ¿iŸÚ§Ä:§Ãÿ‡_ü]à߃øC¦Oð’Óâ€<5ñ;¾ø›ñã_ÆŸƒßô߉¯à¿hšæ¥ð×ß|Qã=3N¿Óu+t­ÃWúÖ÷ìQÿ'ýœ¿n­wã?Ãÿ†ñ|DøqñÇötñ4~øëû;|rð”>øÑðËS¦ŠÒçYðý¦±â-WÐon­o,ìüKáø“@ž{`SQò/´¹¯À>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(®â‡ÄO ü øiñâÏ&»¶ðwÂÿx·â'‹.,-$¿¾ƒÃ> Ð5ë³YXBD··qizeÓÛÚDD—3*B„3Šîkå¿ÛÃúÿ‹bŸÛ¾Ðõx£Äß²ßíáÿ øoÃúmøƒ_Ö¾x·MÑô=GÓ`¹Ôum_VÔnmì4Ý6ÂÞâöþöâ%žXã`Ÿ?j¯ø%×ükþ S§h¿ioÙ‹áÏÅÝ[]ð¾>ƒñJ×þ|KŸÃ7¶0ê-ñáæ±á/^i––×1Ϧi:¦µy¦Y‰¦Ž;Šææ)¿–ø)Çüÿà?Ø£àçŒ?oßø%Æ? ~8~Êše÷Ç&ø®xÒ/Gwá_‡vrx‹Ä·ß ü[a¢é6Ðüc è–Ž¿‘â OÆúw"°“ÂÐZisê1É?ëüwöžÿ‚~Åß²GÀO‚¿ðR/Øö€ø”<ð»ÂZ/þ:þÉpxSöñM¯„t½K‹ÃÞý þ è~$Óþ(x{âotV²ðÖ¯âè~9Ò|Yw`ÏpWW°ÖµÍ[Ø?l¯Ú»ö“ý»¿gÿìû~Õžñ÷íàíá‹hÏÛàÄoÙ#àgÀ/‡~;Ó_Þ>ñ¶ ŸþÉ ..ïüð;À:o„-5­Bíµk&kcÅÞ2Ôí!–k{=OÆž/Õ5ßjVV’5••ö³qke¶ÖT=±WŸðI_ø+ü›ÅßgïÚâ¯ìÝÿø…¥þÒ~7þÎßþ&þÐö6>5‡ÇßüsyðÇzÁÿ xŸ[øk«Ë©|uñ‹câézÒ éÚž¥ã+-+S}M?©¿ ø³Â¾4Ó®ux›Ãþ,Ò,üAâÏ ÞjžÖtí{NµñW€¼U¬øÇ^¹¾Òîn­ ñ‚ümáÏø;Åš4²®£áÏhZχµ‹k=_K¾³ƒùÿƒw>øbëþ ­ÿ|m¼·[¯蟷ÏÅo…~»’?ŸBðÇŠhïÚž4·³”»a|Wªø?À2êQ¬Qäø3Jgy°‹ïGÀ-K^ýŠ¿bˆ|eñËá¿Å}KÅþ$ø·ñóãÏ~| øeãÚ3â„|Wû`~Ô¿?hOÀº_ƒ¾ è~5ñŠaøm©üd“ÂúÞ·áË=kFµ³ðýæ²úÍæ“ÕæþuàŠÿ> ~˶üÿâÇØ;þ wðÿÁ¿¶ÿí³âuû¿ø'‡íO¬Ú^x/ÄŸ~5kvVÞ.O ü:Ö.|!­[é^?ðýî š¬ £ZDoƒëM%›£~ÁÿÁi|C£ÿÁ=ÿàÿ·×ÄÙáÿƒ>xPðÍ”O?Á¯øoáô±ø·ö€øàƒž1øšÑxOKÒãoÁ¢øÞïZ›ÆrFÞ ‚óK´ÕWQ[» iâø÷þŸ·Âÿø$—ìo£üýÿbMoáÖ½àm{ÇÞ-ñ¿íÙñ¯á‡(Öu¯ø×Ážÿ‚o|WÒt}râöá´øm ø“ã4³Ñ4ÝOƒXûµ•ŸôûOþοkÙçã'ìÏñnÊæûáׯ߇þ"ø}â…±• Ôìm5Û) ¶Öôk‰#š+]{úˆ³×´¹až+McM±¸’ ’&‰ÿÿà—_µWüçá4ÿðO/Û;àGÇŒ_¾x¯Æ7Ÿ²§í›û+|ø›ûLxcÅÿ ¼gâsÆGÁŸ~|ðçÄoŽß ügáïëzœ–M{à¯x\iú°ð݈SDðŽ®øœÑ4ø'×íõãø-Àoø*7¼9û"~Ï?<1û9øÏövý¡þ|ý¥¾4|qñ¯ÆëDø‹}à]YäñGìqû:xy¤Ò‡_iÏkÞÕ¼+á­Ïá_ˆ€ñÏÃï‚þ‡Ä·þ5Öµ‰Z/þ ø«âއà{-–^ðι«x«òëþ ÷ûEþÔ¿²_‹o/‡ÿµÏìoûWi¿³Ž½ÿ*ý»þ þÊþüøƒñêmWáÏÄoÚ;Ç5»±ñ/Áƒ:W¿hÃ:ïŠ'xËà§Žþ Å£^ê¾ðf·¯ë^ñGÂjèþ(ðw„5½C¾ñ±¡éšÎ›¨ø–çÃÿ|Hðgü×þÿûVþÙ¿?bïÙ‹ÁßðQ؃öÌý¤üwû]j~´×%Ó¾7|'ø³ñOìøÛE´³±Ô-¼U-ƒ[h6Z”t|QðáðLJ¼"Éá?K¬é¯è‚|(ñ_í×ÿhýnŸ |ø¯ðCàoì#ðö•ðïü-ŽŸ õÿ‚?i_~дð†|¡üøƒ§øã.“ðÃáNã?'ˆ¾(xKÁo'‹¼Y6“¡øráÿ´õ8üKþ ßñ÷öÁý‘~#ÿÁBüûXþƵWü2¯Šÿà¥ß·įÙgã§Ã„~,øÕª§‚¾!|ñ¯‹5[ sà7Âû_þÐßüE«jW?>üHðß¿xgƱø³ÄCu”Zþ´ÊþÉÿðYÿÙãöëý³¿fÙßöÝýŽ¿hø'oíËð{Æþ'ø­û7xã½¶§k øÃÆ*ø/ñkৈ¼5¤x³[ð_ÃíPþÛøyñ+Å÷:.—¯xúŠu½;CŸEÖïõý3IѵDøáÿ-þÌþ5|_ø¯þÃðTk¿¾(øÿáNµâ¿‡ß³/ÃýÀ^'Õ¾ø³Vð†£âk·¿4{ÍkÂÕæ6¥á­ZïIÒîuæÊò}:ÆYžÚ.ïö£øu{ÿSý§¿àú‡Ã_ÙëãÃ_†¿±íoàïÛ Çµgíð?Æß³†·{§|5Ó5 övøEð÷ão‡¼ñëÄ?ð¶¼tþÔþ%ßê|+àÿ,îŸ_×uËI“÷ê€?¿fïÛÓàïüötý¹?gχŸÿlÏÙnÎãà­ÿÁ¿ø«ö’øKំ:´¶¿´Ç~,x&ÓÄ Ãÿ½ð‹Àúl^ðA¼Óü៉º¼“xoÃúM¦Ÿcg⟄_¼I}¤XiÖúØ›QžOê?ÓüÏÂ+øƒÿÞÿ‚‚x Àž×¼gãþÄ_µw„<àÿ i7úÿ‰üWâ¿üñîáß xsBÒàºÔõ­{]Õïlô½#IÓ­®/õBêÞÎÒ ®&Ž6ø¯ö!ý½¾;|9ý—þøþ 7û þÙŸ i? ü.ðN‡âíká¿ìÉñ³ö»ðGÄ»Í;@±³´ñ·Šÿd|tÿ„CÄÞ"³‚KÆþø•kàÝKž.›YÒs{a†£xÿšÿ‚Š~ÅßðR/Š¿´§Ç/„^ ø‘ð?ö‡Áþ~Ô³ïÆ(´?øgÿ|Dý ¾ ü øwâ/Ù³ö…ð7Á¯ ë?~*ü?ð¿ŠtßšÅáw…lo¼oãÝ*ÊËö‡ñ ö§aà­?Ä:Õ´Þ²¶þÄ?Úöïpý,Ûx³Â·ž*Ö| gâoÝxÛÞðÏ‹%è~øá 'Åv—W–~ø·ðÛÆ¿~"éqÚê7šcÅâ‡t_øÓÂ×rËe%Í­¦½¢Ø\]iÓYê0FöW¶ÓIüáþŸ²ÿÇ?ø'—ü÷þ £ñßö”øAñ7â¿ÃOÛßÅú?ÄÙÇö©øIðûÅŸ-¼ákOx÷Äz§ìýãï |5Ñ꿬;¾›@›ðvįÛ[ýƒf/ŠŸÿeŸ…Ÿ³Ið/í¿ðúóáÏŽt_Ú‚_‹Ÿ(x—žÓü[â/…ŒÚƧáøVz®¨ù›ÿƒÿÉ…þÙŸö”?Ú#ÿT×ìÑ^#ÿ ×ïáWˆ4ÅÓ¼Q­éqjºÎ§á÷šÖ«®Ag†ÿÁo>*|Oý¨¿à¡¿ðF¯ŠŸaOø)gþÁ?¿k]Oâ§íâ½?þ ùûQÙi‹á¨þ8~Ì^#™<گÛ üwvšÁêPÜéÿaê6÷Þ:V³~úÊiàÓüšÎÒoø%_ü¢Úk[imáý?ké¡‚X"’¦°ýŸ> ÝXËN¥K;›x.mT5¼ðC4%$~ÿƒ^ï.ï¿à…Ÿ°¼×·W7“%·íf“]O-Ä©i§þ×ì,-VIYÝm¬l-­¬¬àEmio´*Å/§ÁL?jˈÿðK?ÚÃáßìÙûtxëÅß¶ì·ûY|øQðÛÃ?±í/ñKGñ®¹à|+Òán|:?añgÁ­U×õ{mOCÖ¾$i~´ñ7…•üAás­YÉköŸ“àÚ¯‰¾-øMÿôý˜¿aŸ²×í·ð'ã¯ÂÈ~>Ýø’ïã_ìyñûá—‰l¼Gñ×âgÅ}ãOøÁâ¯éÿ„×þñÞ—ek¤jz景Ýë¶:­…¦“q 6w—ÀÒÍ2¿ðvŸí)ñ'övÿ‚Gx‹Iøi¨êz%×í!ñÇáÿìããsGšKkí?á߉¼+ñ⋬þ×$·°ñe—Ã8ü ­(d[íÅ:Ž—)1_Hý5Wççüþ ùðûþ qû|Tý’¼}¬IáI¼]—âxþÞÀj—>&xRðj~ñdZa¹³”s‹Ä:X»´—T𶵮鶷Ú}åݾ¡jÓÁ5>ø3àüëö/øIà 6ÛLðׄ¿f¯„ [@¶ßÚZÞ·à­#Äž-ñ%ä*ò(Õ|[âÍc[ñF´êåfÕõ‹é—@ û3Á,ÿdÙ'öµý©ÿm_ƒžñŽñ»ö¿Ôõ-_â½Ö·ãMKZð½µçˆmF’ëL¹øƒþ ÙûPþÓ?±¿ìïð×ö4ÿ‚Žþ˴ΙñCörð¦‡ð‡Á_´ìÝû>|fý¯þ|}ømà:ÏÃß¼Qc­~Í?þ$x»À+O ÙéúG‰ô¿ŠÞð›Ü]éð’Ýj°ßk—ú‰úOð?Å´/ÆoŒÞ#ø½â¯ xÇà_ìá¢x¼ ð›áì´‰_üY®ëºN»âŸŽŸ<=g&«©ü6Óü7ñ埿f¿j÷¿õ¿…Þð§Ã+èþ xKÀ—¾,ø“ñ"÷U—G#¶Ñ¬< iªÙh÷-õ´WvW1ÇOÙoö…ñ÷Ãø8þ /ûyøËöÿ‚£èÿ³í/ð#áÃ/…þ8ðNoÚ³PÔ®|Að×À¿³¿…õoÁÚ_ËßéV¹ð¿ÄÓx~âMk¦³m6MrËBžêK{pì3¾ü>ñO¼sà/…Ÿ|ãoŠÚ–·ñGÆ>ðG†|5⟉:Î Öú~¯ãïèÚe–­ãN ›ˆ,¯üEw¨ÝZÃ<ÑÁ,i+«*?ðXkÿ‚cÿÁcÿàžŸðXÅ&ðgã¶«ìSûoßZÚÉo¤G¤kv)¦øKÆþ)½…JÞÜÛø)»ooq,ÿ†uðÍ´ãÏ‘bþ·ô^hz6¿kiªØ[kšV«ÛØëÚN£ k–PjVpÞÅi¬èZ½½ž­¢ê¶ñΰê:N©ik¨é·‰5í¼0Ëþ|ÿÁZ?b /þ ÿûý¤eÉll.|aâß^øƒá íû#Ñ~4x#þ*Ÿ†7ÿnFI´ûK¿i¶z¹ubþÖµ»9¡º¶ºžÖpþ×vðþÐÿe?ØâÙã¿ð}ω ý±ÿh›eUº°»øEû6ø£ÃZ§ÂOêÀ·ÙŒÿiOá–±x·6~*ð/ŠÚ<Öwbõ¡þs?àèO‹?¼iûtÿÁ¿am/IÓ!ø·KðŸÄ ½ÂúEŽ©â«MWZ´ðŽnø‹RX.&Ñì¼G©xKšƋ®ˆn!ÑüQá­#íѦ‹¨k3 ÙIñþ •$qþÆŸðOèãUþ UûDª"( ¨Š¿ðIЪª P¾1ÿ‚(Á9ÿißø'ƒþÝZoÇ gà†ðÓöý©¼AûCü ø5ð/â7ÄO‰~ø'¥xÎã]oø>óÄ>ø=ðP^\Ùiø öڶ‹àû(µÛ ÿi^Xé%¾›ºüÿ‚–ø¾ïáþ‹¥þÔ¿°ÏíÇðCö›°Ó-lñçÀ;j–ò\èzŸÄO‰þº¶±ºµXHYMÜßZ~ÍKûAx’çâwÅ¿vW¿SâV½¢…³ÕΧ kw¿þx_Ik2?랻ռ=«|bøƒ­ßkž0ø„¾×µÏø^ÆçÁÿô-gÄÏàCÆþ,úš¾Dÿ‚‚É…þÛŸöhŸ´Ÿþ©¯W×uù“ÿ_øöŸ ¿d?ÿ 4¿ŸµWÇoþÐ?³ßí ðóáï‡f?Ù£âïí,^'Ôþ?…´ëojŸ ¼3­h_­µ-GÆÚtšEçŽu] rÓMñ$º#j2øR‚ÿà×ùAGì3ÿw3ÿ­‡ûAWæ·ü·ñWWýµ¿à¬Ÿð\¿ÛâÌrj|ã„ÿ~¾¤žlß> ê><øý¥Xø FYä¹:Mµ¾ð;áìz´ZtAªk6:–¯u—ºÌõÇüsñ“Å?¿`/Ù'öøãû&þÞ>;ø"ïö€·ÖõO‹Ÿ±Oíà/ƒpC¯ü^øÍñËI¿¹øÕ¯x×áÞ‡i}áOXhöIâs@¾Ô|jÑø[M²¼½Ô4fÔõ´/؃ãGüoþ kûI~Ý_³Á¿þÒ±ííhÚ¿íCðSá:MÿÇ_€Ÿ ñEߊ->*|?ð.­­hÃâçÃW\ñGŽnõ/øJgñdžÿá7ÕF‹¡_éÓ­5`Ùoø(_Ão|`ý„?l†¾=ÒãÖ<)âßÙ›ã^ŸªY¸O1?‡šýØË$r­®«£j–¶ZÆ|#y4ýVÆÎö!æÛ¥~/Á¦_´ïÄoÚKþ á'âV©¨ë×ÿ³GƯþÍ×5iãP¾ø}á/ |8ñÿ‚¬êId{‹/èŸ`ð&Š Ä,ô/ izbÆÉb³KôïíÉûUü|ý­ÿg‰¿²¿üÛö_ý§uOŒ_´O‚5ÿ„Z‡ÆÚCötøÝûüýž|/ãí.ëÃ^8ñ÷ŠõÿÚWÀ ¼]ã{þÔõ ü'¢ü!ðgÄWÔøÀ^,Ñ´õyY×ì×:§Æ=í²Å\yv†å®6ëmýd|2øIð§à§…×Á¾ü=øIàµÔõ=m|!ðËÁ~ð…×YÖîš÷YÕ×@𮛥i#SÕï]îõ;ñh.¯î™®.å–V.‘?ø6«ãÄOØ»àÇÙßö›ý‡¿à¤ üuñ³öðñÏÆjzçìûO]ø<ñ[Á<¢OâŸèÿõÁ­¢k Õî<[âiôÏhz<–º³k—6‹~öÙuøáÿÕøÿùøíûkVŸðRß‹~3ø)û9ü3ø‘áŠöÞ4øwâ›Oxê_ˆZ™â}@ðÏ…´ËÏ xâ?ê¾*Ñ|Qâ}?Càýzúî+¹µ­6=/QЭ|A¤~Ç×óƒÿþÂ_´íY¯ÿÁ7~<üøusûD|6ýˆj­7ã?íû(é:ž‡e⟟[Å_ µBéÞ+¾Ò|1âm{ÃÞð'¼1†o5K}SU³ø‘y‹m¨Ê·62€}Eðö“ý£þ;|ð„ÿf/ø&>µ¦~Ëòü2Ò>ü8Õ¿o¿Ú3Iý.~!ü'Óü7¦ø[I¿¾ø{à…ÿµŸÅ›_ ø›Â #é×_|%¢xƒÄVMkw¨è¶–º¹½‡ò×þ »×õ­gþ KñsNÕ5+»ë ~Ý´ ÚÜJd‡FÑn~ ~Î>)ŸM°CÄ6’ø‹Äºö°ñ ƒ}ªÞÍÖS_ш?j+ÿxPà7ÂŽz×Åßè7¶ßô‰ÿ³ÏÇ/ƒ^ѼUy§Ü¦—©|IñoÅx7Þð§‡u÷Š~É©êž!¾Òínm¼ x³ZºÒ´­Cùÿ‚%þÌ?¶Ÿì7ð7ã_üïÄŸ?iŸ‡ß´Ïø*§Á¯Ú&ÃöœÐ|⯠þÍ^;ý”>üFý–uÿŠ–•ñÖÆúßշů…ß³ŸŒþê? -µ½OźöŸñ›Hð¿‰ü+.‚¿SÃàÚ Q@Èü‰ÿ)Mÿƒœ?ìÿôïýh¯Ûúø=[þQeðþÏÿágþ³¯íU^¯ûüø¿ÿ“ÿ‚¦ÿÁZ¾"|gø ûA|Dý˜¿à¢¿ü/ûBü#øûû9|øûMXøk^Æ¿¼uâO‡þüð¯ÄŒ>ÔáÕ>9êzmŽ­'Ãû¯M…ã¹]XÛjMÊ?ðs¿‚¿moø)ìð3Jý“ÿdŸÚoÄ¿ <ûRxvsáSàwÄ-#ãÅêÿ >/CeñNßàÍÞ“Ä¿…_þé¶×žÔ|Mñ»Â_µxËâΗ¦ÙxNÓô‹mOÄàÚ¥?ðdïß XÁ?iÿ‹–újx§öÆ×þêÚ»•wo xà§Á?x{M·7Û,zÇÄŸÝ^˜äÛzd°ó“60þ‡´?ø(µ‹þÍíãߨÃþ ðêâóÆéðñ¾Ëû%üBø•û@ xx(ø¾mn?†¿"ø‹ªÛü770j´ø•âøG¼//ŠìáÓ®îtøõ ãSþwÿàÔŸüWýŒ?fþÇ?´ÿìiû}üø¥ñGö¿ñ?Ä¿ x‡Æß±í£ü$>ñwƒ~ ³ºñ'Å;¯‡ÑøSÁÙºÏÃ-qu{Ÿ^h\÷ú$–šëÝ^E§€w¿ðq{¾ŸÿZÿƒeµ+kFëöðÕt««û66×·:dß´ì!i6›=Ô%'šÂ[][T¶’ÎIÝíõ-BŒÇyp²HðPOù0¿ÛsþÍö“ÿÕ5ãJþVÿà¹ß>)~ÑÿðQoø#¿ÄŸŸ°Ïü‡â_?àžµþ¿ñ'ö…ñW‡`Úm´9¼;§|sý˜õéŸá–¥}ðöÊÏâGŸ£üñ~£¦jžšO kwž¸ÒuëØµIÏ÷Ÿöðý±tOÁ;~*êž ý›¿nÏëß´÷À/Ú_á§ÃO†~ý‡¿iWâÞâÃá/|?Ó­~(ü6?­üSðvÃÄåå½Ï…õ‰öÒ¼M Hž Ðîïô©"¹pžà×ùAGì3ÿw3ÿ­‡ûAWÊ:‰àÿ±wü3ö¶ñOì+ð·ö³ý»¿à§¿´žƒ¨Û|{ø#ðƒÅ¾¾øðL׌¶þ“[µñ$÷š~¾-ô‰¬t³}7ÊðAoÙCöƒÿ‚Eütý¾>~Úß¾1x¯Äÿ>$xoÇŸ ¿lτ߼{û@x ãw†ôñÍΣgâ]wᆼoã/†ºõÞ¡¯]ø¾-ân‡á›{ÍWWÖlÊê¿ð§‰@>sÿ‚Íxïö¤Ô?à¬ßðn7>7|ø]û6kÚ·í«màÿKðëö‰Ôþ:xãľÕþ6þÇ:_|7ñ'øð§Ã²Ñí¼g«i>ñ—ÅÅfšï÷ _É'ü;àígûB~Ó_ðKÛÏàçìÛñ‹â‡ìýÿèý®þøçÅ_<ðóćí)ãïkþüBø¥ñÂî-¬üy7„-ð—í‹û!ëú¦©§ørëâ^‡£ßjúíOáýÂÚv¯â;? x[Äz晪üUÕ<; Ý\hz¯ˆ5 /!?mÃÒ÷ìðÏá'ƒ?gÏüDø[ñ"ËãÕ÷í%ö/Úâ_í36ñ_~Ѿ>ø…¡é§‚ß1èš è¶š7†üà[rºwÃ?‡º…þi°ÅkáµÝùëÿ¸¾×ÿoß ~ÕŸ´‡íÕû"|løAñ·ã6§âÿÙ÷WøûT|ñ×ôþÇw«2øCà—Ãøá/ [øãÁÞ8²{¿ütñ.‘§Euã?‰z °ñ40øÁŸ t òþ eûK~ÒŸðJÿÚ{ö›ý…îbø*OÅÏø%U‡Äÿ뿲Æ?aOÚgÅ/ø1&«tºÏ‰<$úM§€nu¯ü$ÕuûÝjßI×tK{‹ûÝwNm<7¿ÄŸ.Œú¿ÿGÊ ?noû¶oýl?Ùö¿L?amoFð×üËö9ñˆõ}3@ðöûþÏzÞ»®ëwöºV¢hÚWÀÿßjš¾¯ª_KŽ›¦i¶0Oyy<6¶v°Ëqq,pÆî¿‰ðpïǯþÒßðL¿²WÀ/Ùþ ñgã'íáÙ‹Æþ Óüû þÓºŸ‡t-þÂ÷ö^?ñOü+ˆ´ox¿@ð¯„5 Å_µ†ñï„ügqkáŸøkLº‡U“Mï¼Uðçãü›þãØ«à—€¿h/Ù£öÒdÿÙÏàÕþ…ûTü øµû5Ï©xËáÆðÏXñ¯€ô«ïˆþÑ­¼Ká¿i¾ñÃ[ÿxbmoÂÖCÄѶ«¨Chó`åø#·ÄÙöy׿iƒðBÿÙ[ö°ýµ>ø«ãöïÆoÚoãÅo|&ý—¼)¯hÂãMÑþ|:ø¡â¯ Gã/Zx[HÕ¤¾²³Ñ¾øËÆú®‡¬éö½âÏiך­šÁ1u¯‹PÁ×ÿðU]â‚|ð‹Å(ýˆ¼ãoü-øOñ/[ø¹ðêËÅ‘èÿ°mÖ¬X|Añ¯‚ºÇ‰õ[½7ƺֵ¬\\ü5ðäZgˆ|YâMÊOXÙÚø—Wý#ÿ‚ Üx‡ö8ÿ‚qü#ýÿhÙ_öŽøñûàf§ñ;Oø‘ /ìññWÇñî³â/‰^9ñ~ã¿ |døgàïü,ñ¼> Ðï´ë ¦‹ÆÒ]hwvú$|<¾Ôõo†<ð¿öÀý?àáoÚþ +ñ{öCý¡>&ü#ý»?dMKá瀓örøuqñ‚…~8Ð5€úÃß…ÿu?ßj>ðˆµþÎZ¾$ñ¶·«Ù|'Ò|OñÖÚ/j>ð÷ˆüOdúÿGÊ ?noû¶oýl?Ùö¿PÿàŸòa±ýš'ìÙÿªkÁuüöÁhçøÿ/üø&}ÏÁÛwö±ý·µÏÙ›öÐ|gãß„ÿ³/íû@øÅÿþ|Bø-âo‹^(ñgí¡x?ÄžÕ‹­ë^øiûe~ÑšÜ_õF‰µ=á^±ð‡Kð÷†5"¥óN›[øºøCžðN‰aáŸxÃzƒü#áÍ*/#Lðÿ†<3¥Ú躉¦Á–òl4­*ÊÒÂÎ-ÍåÛÛÆ™;s_‚_ÿcïÙçþÿÏÿ‚˜|mýƒ|=ãøÇÄ^ñ—Å›kŸø·PñÐð÷Ž!Ðï|/ðâ-ßPû$Vþøuªxž}rÚÚïíÚö¡»_×õ¥‡OK?¥ÿfø(ÇÅë†~ð/íÛû~Ùk éVžñõ—ÂßÙ_ãGíðSâ‹4¨×¾|lýœü ñá6‹áŸËnšÜ_Äox _ ÜjrèwS^Xiiâ ß}ðŸÂ߉ߵ¯ÃïÚ§Lý°¼%©ø/àí;àé~ ø#ö\Õµ _x›À_dð¿Š<=â/øûÄ^—V±Ó~4|a»ñ¦«ªë:ƒâè¿ ü7á†Z>ªËã ;Å××`™ÿðjÇ‚tMþÁû?|H‚9.¼oñóâ'í!ñO⧉ïäkÍsÆ7µý þ$ü4Mw^Õ® š†¯¨¿…þxrÖ[ÝFââêF·vyIcŸÿƒ¸´ïøG?à› ÿh_ ßj>øÑû6~×ÿ¾!üø‹áû¯ìïx'Å âM6KÍ/Râ̇NÕŒ¿'ˆoà³Õ,¢Ñ æ¡ÿø ñóþ µª|ý’¼ð“ãWìÕÿüð'ÅãGí-ûEþÐþÈ^ø¥à°À–úoŽ5/‚?°—€®õÇ·òZ9®äо&x¹ÄØIÆ©~šŸœnbÜß§ðtµ¼ÿðB¿ÛvYíáš[9¿f{›9%Š9$µ¸oÚïà%›\[;©h&kK««V–"’{›ˆ ¦‘[ò'önøÏñ#áßü…ûxÿÁE¼YûÿÁOtÿÙOö„ý–ü7ðcá×âÿ‚t~Ö—ÚÔÞ,ðß„ÿc½6{­cÁV_ 'ñ^—¡êß*üaÐ./m žM;Ç|-¨|XðMÞŸ$ÒBöwóx—Âv˜—6ò¬ío¨\ÚùwPÝMesóOü/ûHüHý¦¿à³‡ˆ¾+jZ¯ˆ<]ð×QñÿÁñ^µs=æ£â |5ñMæ›à›Ë‹»–yîäѼs¡ø>[É¥ž{Éü5-ÕÌÏu4ØòÏø*/ÄOÚçþ ð?Xÿ‚Á>¿g_¾ðŸÇÛ½7Ã_´_íûW|ø¯û(|2ø]ðzÞóLÖ¿áÑO„žø%ÿiýƒþ|ð_ÃßÚ+âÿ€¾Ú[|=³·øû=üKý >)ø¿Æšõ·Šü{â߈>$ðÁ¯ x«UÐ,3ý»¾ |Ô¤¼.~øcàxÛCÑá’f“n&½ñÃÆ—·rG«]^Ms"Í-Ì…=þ˜ñ>™ûÿÁµ…_²Ç#þÇß>2~Í´·ìGÿøAãï_·ßŒ~*xZñWìûKEðÞÛÂ_<#ðWÀ ï~"YøïÃ>¶Ð5¯ê×~6Ö¼ay£ø[ÃZ A®\x‚]>-J]?ú(ÿ‚œ~ÀŸ¿à¦?±‡Å¿Ù#Çú¬ž>7²ÓõŸxîÞÈj7~&xZñ5x¾-<Ïju++MJ#§x‡IK»)uŸ jšîþ=üWöÀ*þÓÁC>~Æ_²—ÿ…±Wì eðãÂ?³¿ÁÝ#ÁÉsÿøùáÍFïD‡À: ÛjúÞ‹¦ÿÁ,µÛ;kžcë^$Ž-{^i5ëýFyµÝfyeÔî¼³öÿ‚xþÚà­Ÿ¶ÏüâÕ¯ìÉð“àí‘ð_ˆÿgÏ€¿~+|hÔã·€î>iúÄ_Wñ·ìÉû:èW—º‘ñSQ¾¹ƒL“W¶ñÄÈã·¾‹PÔõ5?àÿ´ÿí1ûþΟ?cø(Çì³ûMÚüNýšü%¢üð7íû5þÏÿlÿ´/Ã_i¶~øoâ?^ý<ñÆ>ñkx^ÇNÒ|kø³©|lñ_…¼oðàà=_À þ|C´Ñôÿ‰ŸüG®ø—Ãúοñ×â—‡´Ëým<e¤XxNß< u«§Œ¡ÑÿÁ?kÚSö]ÿ‚xþÌࢿ±wíðÆ? >ØxGáÇŒ|û1üký¥ì¼[ð£C¹½Ó¾é¾5ð?ì×áŒ_> |Bð·…,¬|3­x;âÇ|(Ÿ`Ò4]fÖú ­z_ èGþɼyñþ ÇûAÁSuO‚7ý›¾ëÿ±¿€¿c†Þø©¢Zx3â×ÇOOøž¿|iñëÇÿ 㹸׼m£Yè> ø[à=?ÇÂËÇ:·†´I/µÖ0ØXÌøçðnÿþ Ãÿе_ÙSá×ì+¥ÁPa|@ñxóág‰5?ãŽáx×Zñþ³áŸZøzÏÅž-¶×¦×4Oø-Ÿì3ðïYø]{㟀þø¢_?²÷‰~7|5øðÅ^ñ¶5î{àÿŠ?(jÿ±¿üÓû&Eð°\Øx{öùý“>xcöŽðå˜òôÿê—ˆ><øÂþ$»³…ííŸUðÏÁ_†š¬ZÅÌwZ„~›¯XA*Ûk7q?îoÂø)Ž4O†šV“û_~Äÿ¶ßÂÚgÃúE¶•ã_|&ý”~6~Ó? $|!ñ ìk} Íñ?Æ¿o´Û}F;-f(³oï×â¿Ù7þ íñ»öœÿ‚©ø«þ ?ûm|;»øyàÏ[üý†?eSеïˆ~§‡õ­çâŸÇ ß ë~!ð¦ãzÛÆž=½Ò>èÚ¶®Þ»ñ½ûkw–ú߆t©o>ÿƒ |ῊßðP¿ø7/áwŒ­d¿ðÄÛ3Ç>ñ]Œ3y¯<7ãß°‡µÛX®3A%Æ—¨ÝB“c8p \WöGý›§gd}‚Ëû'ì_Ù¿Ùeƒû;û;Èû/Ø>Ååý›ì_fÿGû/•äyºòü¿–¿‹ø/~+||ÿ‚Á!|}ð?öÿ‚‹|Xðgü‹öÊñghø/öý¤µ Þè:ÇÙZšãá/ˆ§ð ¦ƒñRÓQÒ¾øÇQÐ5ÿ êWñ…ׇ/´]Ùë qoý0x‡þ ðï@ø¤üzOÙçöô×´}sÅ׃ô߆þýƒÿjKVÑt˽LÝêßføii㯠x_UŸaÑ|qâ­+DðV¡©ÜÚY§ˆç ?Ÿÿø2Âòîçþ [ñÆ›«›ˆtÿÛßâ­„SÏ,±XÚ?ÀÙ~ýílã‘™-­žþúöõ „$MwyurTÍq+¿õé_Æ÷ücqñwöJýš|{ûþÒÿ²íÇð;â¿ÄÏÚ³â?Æ øâwìsûAx7àÙðuçÀ?…:b7ˆ>0kÞ±ð?ƒõ3¨ü"ñmcâÝSE¾«ªx[FÐfÕµv+²üøÿ‚«þÅúçü/þ õûLþǾñ·Ãÿübð†‡…|S~/?²,üSàxWâW†ôÿ6ž“_ÅáŸë~ °ðï‰î,­¯®íü?ªêSÛéÚŒ±¥Çóé¥Ál¿àµŸ°o…íü=ÿ+ÿ‚8üMø¹áχriž:ýª¿f=fïTðæ¡£h-¤¿|Ecáo|Lø{šì0&©©ÜÞxÓáfˆ—÷ÎEðÑdÐm¿jÿพý¢ü[ÿÓøÍ§þÈþñ'ÄÚWJø§ûøÛàÏ„|'¥ÜêúÅ÷¾þÚß³¿Ä;Q6¶ÓÙ›}#Ñøbø“X»¿Ó4¿øsHÕµícVÒ´6÷Qµì|9ÿ%“Oð…¥Æoسö÷ðí c§[Ûø—à‡‚¿d_¿¼=sâÈ‘`Ô¬< ûLü,ð‡ˆ¿e={Ã7ñÝÉáïø—ãW‚¢ºÒÒ÷Ä>¼»]5@:Ïø%ÇÆÙãÇìmàŸ‹°þ©©Þ|ø‡ãïŽmtoD–^(ðOÄ?‹ÿ|ñ“âß¼I¢$“Gá»ÿ|Iø…âkkÚâûJ±ðûè§ÃÚ®·áÉ´kPüPÿƒuÿäý?àã¿ûJÄý\¿µ}ÑÿÓø5âOø&ì[ûAüMøçðsâ7‡µÏÚGö×øíû]ßþ̳—ÃoþÒ^,ø ¢~Ð+ðî‡à/ƒ^ð‡À¯ø·Rñ$>ðg†¼5?Šï<¤^xkÃ×—ZáŽöm#KmVËø!ÄŸ‰?nÿø+¡ñ›ö)ÿ‚‡|'ð×íÿûxjß?gßøûöý£¼?àsàÿ|SøÛ¬ØOñ+ÅwmásXé~<ðõöµã+­3ÃÚ\]™õÍöSª€t¿ðzUåÞŸÿ½ýžoì.®loìà¡ o,¯lç–ÚîÎîÛözý©æ¶ºµ¹…’k{›y‘%‚x%ŠTY#euVŸ~ø#áOÂß|ð^…e¦ü:øuà?|5ð·‡ µ«XYø;ºŸ†t}íc‚+9-¢Ñìmí%…m£‚T ¾J£¯ãûþ¬ñWÅ_Ûkö[ðGì}û.þÆðP?Œ>þÙÄ/kþý†ÿi[ï…'Ã>øWñ¯À7÷þøœŸ…üsm¬kŸ´Y|9¨ø*ï_Ñu=.ÏU¿}RÖ8ôõÔ¿¤‹ø(_€-¿g«Ú-ÿgÛæM#Pñ«ø/…ÿ°§í3sûCA¯§†/|Po/þ Aðõüo§ø)£±“CO‰·š|? ÄóYhkâãu{kæ€8ðdçÃoXÁ?ÿjŒÚ\kãï~ØšçÃmc[`4žø{ðWà·Š<7¥ÀL~dí|Mñ]ÝÐIv]µÅ™’=ÖQ5w¿ðq{¾ŸÿZÿƒeµ+kFëöðÕt««û66×·:dß´ì!i6›=Ô%'šÂ[][T¶’ÎIÝíõ-BŒÇyp²qßðiî©ñgö=ý˜üuûþÓ±ïíÝðSâ¯ÅÚßÇ?|)âˆ_±wíᯄ?ð‰kŸ~xvÞãÄuO[x3Á—0j¿ üAk2x¿QÐí®'Ô<=k¦]jº¡¶¶à¿à·Ÿ>'þÔ_ðPßø#WÅO?°§ü³Çÿ?àŸßµ®§ñSöñ^Ÿÿüý¨ì´ÅðÔ?f/ÌžmWáÍ„þ;»Mà‹u(ntˆ°õ{ï+Y¿}Få4ðÖ¿ø:;þPQûsݳëaþϵ÷ÿüwþQeÿÓÿ³ýÿõ~ׂÁM~xþ Åÿ‹ý¡þ |Ñ|gàüyðƒ®|7ðÏÇOøËàoŒG‹>üZð¿ÄŸøkƾ ø“¡h-ðž+×>A£[ÍâNŠ-?Z±×&)¤N—‡Ê¿àœ¶·ðSöý•?fOŒ¿±ÏíåàÿÚcöyýžþ|ñ­?ö@øÛâ? ø¯ÄŸ|¢|7]SÂ?´–áQû$¦ƒâèü4šî“­x¿ãç„´{K{åƒTÔ,ŠÅ$àš?±¿ü®Iÿbÿ³øqÿ¨7üN½þøÿ“ ýŒÿí(³¿þ©¯Ú^¾(ý“¬ÿoŸÙ›þ9ý¹¿lïÚ'ö ý¯~%|=ý þ‚V^9øðk\ñ€¼#7‰-ÿfoxÊÇÆþ'¹ð†|}á/†žøMÂxçÂÚ¬¶7~%Ó&Öm´­>Ãíe‡Ò?ðt7‹þ&þÓ> þË¿³§ìyûz|pø‘ð7öãøGñÃÆú¿Ã/دöˆñOÂùü àï„ÿ´ÝJo|W°ðx Æ×óê´ X|/®jv‘^Zëvšös¥É€ÕÏÆ øÆ?þ)øGâµí¦›ð»Å_|oΈ:þ»ÿ½‡€uÏ êzgŒoo|L.¬O‡m-|;u¨Ïq®ý¶Ïû"ßPûU¿Ùüäþhÿà~þÎÿü_û+ÿÁe/Ú³öÔýŸôO2ñWŽÿkÿÚâO€¾ üÖþ$ê±øsž"³ðoÄíwšf¿ñt-Â^…´ß…ß®4Ë[ôíVîòú÷_ºÕn>ýý»¼?ñþ íÿœý®þ~Ë~øßðâ‡ÄÃÀþÑÿj‚Ÿ?eïêÚŸ…éöZ‚eÕ5}O:Ìñè:صçÿà>2›ö\ÿ‚uþβ÷ÆÙwö—ø ñŸöyð ü?øðö?ٻ⿌ô-ÆÚ^¡«Þëþ6ðoÅ…~ñŸÂéŸu™oüU«¥øîgŽûYxuϰHðÍrù ÿÃÔþ)éßðuÿügÿ|ð÷áˆüQûx;Ç_>|ø®|WøkmãÓaCNñŸãï|'ø!­øŸWÕ,üs¯x‹]»½øcá£aâoøŸKüAkm‰µBÿƒÕ¿å_ÿìÿþë:þÕU_À_ ÿl_Øóþý¡¿à¢¿?d?ÚâoÂoÛ·öHÖ>x?f߇W_%øWã-\ø¡ü5ø_ñ»Sðö£áïx›QðìåáÙ|UãmoW²øK¤ø³âÖÞ<Ô|9áïøžËèø,¯üÛö»ý¶?à†_³oìÅ£k7¿lßÙƒEý˜>%xµ5¿G¨k_~)ü*ø®ü"øº'ñçŒï\ë¾&ñ,¾=ñ‡-5Ÿk–·ž)×ôût½ÖóUo´€K¾&ñg…|§[k1ñ7‡ü'¤^xƒÂ~³Õ¡ðøÍaáÏj–WZF™®jzý¦»}¥X]é6ðÍyybÛþÚ´×ÄOØûþ ¤ƒãïÂmJÿCøá¿ø'÷ì™áø‹If‹Wð®­ñ‡Bø+ðe<]£Ü$‘=ž¯á(~ MâM*ý¾Ÿ¨iv׫͆OfÿƒqþøKáçü‹ö ‹ÂšL:søÓÀ>#ø‘â«°ª÷ÚÿŒ¼oãÿëî·ªÞmß]»Io¦ÚKròËg¢išN“‚ÏNµŽ=ÏÙ_Áß?à¡ÿðIÝö.øÝðKöø9§/ì™ðŸöpø¿áÚ àÅ_ÙëÆ7‹tÏ„þÒ.5ÏÿÂÍðÖ‡eã<â½ gJñ'…æñ†¡Ö´½5/åž)šÎožà™Ú§íÿ•ø¦ÿÁ?¿l¿ß~(ü3ø®xÂÓöpý±¿eßß¿iŸ|NøAâ?k~,Ð4?ˆŸ ¾øwâ?ÇO…Ÿ¼-}®ÜèiWÿõ%4õ²ñý–•.»ª|sÿ{k:¿ÀÙ§ö ý·¾ßÉáÚ#öoý¼¼§|.ñµ˜òîô½?Å_ ¾)øó]Òîä…¡º½Ñumoàç„"Õ´i.WOÕtÕÔ4ûø'·½•Õßðq¯Ž?áfÿÁºŸ´ßÄŸìù4ŸøX_ÿcOeMþ»Lÿ„³ö¡ýšõïìù~gýåŸÛþÌÿ;|ÑŸ™ºžöäý“¾2ÿÁy~:~Ìÿ üeýª~ ZXÃþøgð_^¼²ø›ðûÀÐxgTñ›­øó⟆<­´-Ö?°4Ôô+xu›þQñ·‰¾#Á9?hÏØ3àgì½ûc|køÓñSCýŸµÅðöAøññCáE–“á?ÚáÇõKMGâ§| ªü;Ò/ô¯ ü8ÖO Ç­K¯ZMw E.‘ ž§Ô`£¿ðF?‡Þøsÿ¢ÿ‚zéþ²kXü[û#|ø±âK™äûEþµãߌŸ|?ñOâˆu;ÖQ=õþ·ã/kZ„·7o5ÉŽh¡’yD*Çðëö,šKø.üMð‡ü™ûtÿÁB|UûÿÁM|4ñΡÿôýª>ß7‹´ ö9ÐRñ†m~\ëžð¾§wð/Æ“ØêÚœsZÙM¢\k¶7ÚïSNþܨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šòï4oß /|g_ Âdx¾|?ñއ‹÷¢MXèbÁ _¼ p6|دÂïø7ëö†ý‘à£ß³_į‘üÔüUûRCãXü!û^ü\øûàï x£Æÿüy«hV>"†÷Ã~'DÖ4í/àݾv4_‡ßtYtá^ƒ£Úør¼ÓÄÞ&þ®m­ï-î,ï-Ẵº†[k«[˜£žÞæÞth§·¸‚Ux¦†h™£–)£‘‘Ô© ùÏÂo‚¿þøOþ/_ ~|ð/ö®¥¯Âð›À~øsá?íÍfT›WÖáð~•£hÿÚº¬Ñ¤º–£ö?¶_J‰%ÔÒ²‚?‰ø*ÜVðA?ø,ì%û\~ÆV–ßþ~Üú®µàïÚ£öpðJ&ðŸÆñü?ñÇí+â6¿aà->Øè>Ö¯¼+ñsÚ߆.ôM*Ñ:éþ ÒÕ¼RºÝÍÏ‹ü§jü¯ü³Q½—þÊÿ‚7i2\ÈÚm—Á_ƒ¥™#É‚÷TøåûWÛj(1‘%ÔF™¤’ ÙÀ$€XÞ-ý…dOþÌ—?±Ö«û>ü.ƒöp“Â’øGMø_¦x?B°Ð<7ftÆÓ,õ Å‹6…âý%|½CHñ‹Gâ[ n5¸u?íHÅÑüdÿƒo¿lÏŠ¾~×°ßÇïkŸ>3Á3¿h¯~Ï ñÅ7RÝx¯Åÿáñ|/ðÖçÅ7vvZŽ¡â Qøgã ÜjZŒGQºÑ´¯¶¬Ïªý²yÿ¤Úþ"àÞmNþ/ø/_ü#£Gp˦_þÐßµ;Ë@±”žÿHý³>+Zé× å ªÖ¶úÞ©*H±¸»s";$F0±¿à™ÿôÏø+·üsþ !ûX|lÓí¾ |ÿ‚~ü@ÐfOØG៊l±à?j×´ÿŠ?tÿ_Û6‚ÿ|eÿ‹©é¾+¹‹PñV‡áÏ7‡Dú]އáýÞ¡ÿø{Pý“>|=ÿ‚·þÍVv_?jÿØÿã7ÂïøHüsáË4¹þ1ü ø‘â};áß‹þ |bŸOÓe>6ð³«ëž{+oË2xjd¼¸ðÍάê14ßœÿðd®£{«þΟ·¶­©ÜÉy©jŸ´'ÃÍGP¼˜ƒ5Õíïuk›»™H'žY%r˜àÅ~½ÁÑßò‚Û›þí›ÿ[ö} Ú_€Ÿ|3ûC| ø3ñ÷ÁbEð‡Æï…_~-øY&‘%ž/üFðž“âý‰#UF¹†ÃX·Šãj&&IÄ ¨õšü‡ÿ‚êwú¿üÃþ ëu¨Ü5ÕÄ_³Ï‡ôÈåu Øh𦳣ivàFˆ¥m4Ë ;Db Ž+ÊòJÏ#~¼PEPE~BÁkÿਯüwöEð×íá„1ülñßÄo޾øà_k¯áí üAÿ„‡þïé?µ¯…4Í?\ÿ„SÅZç‚(øßû6ÿÂ)ÿ ¿áý§íeá»]KÀðœX>©á_íýGÃVz%ÿöÅ„oqö&©ªy*»nþÏ!@?±*+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB¯œõø8 þ  þÔý‹õø"6“eûOx×áuÇÆŸ ü%“ö±ðÛë:¿ÂûMWÄzÇ‹¡ÕaðÔžŠÎ-WÂ^"³6—Zä¡}.g[¶òLý‰Q_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿò|çñwþÿ‚Á|ø­û?üø¹ÿFÒ|ñWö¦×|Qៀ>¿ý¬|7y{ñ#]ðd~—Äúv—y¤økPÒ´ét˜ü[áÖšM~ÿI‚aªD-eœÅp!þĨ¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù ¾wý¦à¿¿ðX_ØãÀZ?ÄÿÚ[þ‰¥|)ð¿ãü7Ò¿±ðþͽ£ßÜÙèš§ªÜF..­âòìl.¦-(""¡ˆþ¶è¯å á—üSþ «ñ“á¿Ãï‹ß ?à‚öÞ+øqñSÁø‘ðÿÅ6µïímÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…Gü=3þ ÿ¥~?óq>ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…Gü=3þ ÿ¥~?óq>ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…X^)ÿ‚¹Á{¼áŸøËÅð@ˆ´ øKBÕüMâ-ZÛÀÃ¥èZŸqªêúŒÑZé³ÜË–Ÿiqs$vðM;¤EaŠI ¡þ¨è¯ä/öqÿ‚íÿÁgÿkƒ> ý¡gOø!¶ñCàßÄøHáñΓûZøSLÓõÏøEÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ÇoìõÿÿÁ`¿jÏøZßðÏŸðDm'â_ü(ÿŠ>!ø-ñWû+ö²ðÞ›ÿÅ ù_ðxF÷þ il¼Ó|ø¼Û½+íú\»ÇÙï¦ÁÇÑŸðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòyÆ¿ø.?üŸöqðMÇÄ_Ž?ðCß ü4ðm½Ì6#Yñ/í¥ðæÝo5…wƒLÒl Óî5=oTš(¦š=3G²¾¿x ¸mÌ0LéŽ#C F®'^ŽF©Z¾"¤(Ñ£N*òZµ%S„V²”䢖ìôrœ£6Ïó<K‘e™ŽuœfxšX<·)ÊpXœÇ3Ì1u¥ÉG À`éVÅbñ5dÔiPÃÒ©V¤¡ô?®:+ø¬ýž?àå?ø*GíYñ3ÇþÁô¯ˆ¾xWÂþ9ñÇ„-¿iË_ê:ƒüoe¦jžñÏâßhVwšwˆt­oGÔ´«:îì^éú¦¡ Kˆä¯³áéŸðp_ý+ñÿ›‰ðçÿª¨Ö¥ˆ¥J½ ”ëP¯N¨Ö¥8Ô¥V•H©Ó©N¤¡Rœá%(N”e¥ÓLË0ËñùN?•f¸,^[™å˜ÌN_˜åÙ†¶ —ãðU§†Æ`±¸ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…^S¨ÿÁ\ÿàâË}Bú?à¾\0^]C ðµ®µo.(çt?µtûج5-ˆ¡´,¢ŽÒói¶!‘[”Wñ™ñ{þ ñÿ¬ý–¼¨üvý«àŠü)ýž| «ø<|Rñü¿µ3& xŸÆ^ðl b$º¸µ}KWñ›£è‰u²}cP±[׊ÐÍ*_Ÿ ¼u§|Qøoðûâf‘g{§é?<áOiv€j6:w‹´ ~ÊÎüZËql/m­µ¡ºóÍž’yRÉ×`ÞŠ( Š( Š( Š( Š( Š( ¿?jOŠ~Üþ7ñ¯ìWð“ã•—ÁoÙÛÂw³øWöÓý¤ü3ãøÆ~#¹ÿI³ñ'ìƒû=ê7ò<Öž3¾³e·ø÷ñ‹OY,¾éWð­ü3.©ñ[SñT W>#ø>ˆ_5ø ñ?Áü¡|@ø‡ð3Uðe÷‹<¯Yx—ÃgÄ:vû9xgZ»°´Ö´ë+Ö‹Lñ‘yæÛDÐßB˺¿£?ŽŸ~~Ó? ükð/ãïÿ üVøIñJþÆñ|]`/ômbÎ;˜/ìæ^+½;UÒ5;K-g@×´«›súkº£§êú}•ì£yyi§Ú]_ßÝ[XØXÛOy{{y"øÓÅ::É´—z«®üMÐ4(îmìí¬ Öü¯éj^÷O½µÓÿh5ø$ç†u߆özñ_í¿ÿñgì´ÚbøjïöqÖ~3ü5‡Ãš·„ØÉðç^ø×¡üÑ¿kßøïGGðþ£á­oö‘Ô-5/Ü\hz¹Ódû8ýøUð«á¿Àï‡> øEðƒÁ^øsðËáîƒeáŸø'ÂzlNáÝOB–öVVꪻ™¤¸º¹”Ëw{=ÍýýÅÍíÍÅÄ É÷üYðÖ÷ö-ý¶¿à´ŸðOC&ƒâï|wð?Å߆º]åÓ[Æ_uýCâ&› x÷A‚V7è·Ôþ^\3Ziòx¯N²Žæ[£vêïø:ïdziŸðHÿ|Ðb¹Ö~!~Õ¿ÿgÿ|¤Z6©â_øšßâ~‰ñZßCðþ“oÍýíìÏðÒâq£Éy=†çµ;{KÏ×/Ú[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauöØ+ö{¹ý“¿boÙCöjÔZu¯‚³ï‡>&¸¶0µ½ï‹ü5àÍ"ÇÆ…¹·’h :Š#Õï¢ò§¸M— ¶âqûçúÖŠ(¢Š(ù:ÿƒÂ?å²ý¤ßàþ©?Ún¿¬ZþX?àíMßÄ¿±gì+á˹f‚×ÄðUßÙ‹D¹žß`¸†ßUøQûHXM,T’?:8îâó#tÞ«½rõ?@Q@Q@Q@Ÿð_o†_>1ÿÁ ÿmŸ†Ÿ~xßâ§ÄøÁv~øðßš÷Žð¯Š´=_Ã>(ðÏì·û?xÄžñ›{¢ëþ×ô_„ÞÓu\Ñõ(-µ'WÒuk‹ KM¿··½°½·žÖê§ŠH×êJ(¢Š(¢Š(¢Š(Â?j]VñìÇûFh—¨ëšî¹ð#âî¢èº=•Χ«k¶§ðÿÄ6Zv—¥é¶QOy¨j:…äðÚYYZC5ÍÝÌÑARK"!ü¸ÿƒpþüSøÿcý¾ükøiñàÿÄß ÿÃCÂMðëâ—ƒ|GðÿÇ~þÛýªþ9x‹FþÝð‹4Ý#ÄGö¿‡õ}+]Ó?´4û·èúžŸ©Úù¶W¶ÓËû}EQEQEQEüåÁ´Ÿþ5|ý˜ÿn}ãŠ?µßÁQÿi¿ˆ>Ñ~+|?ñgý[Äþ×þü²Ð¼oáí7ÅúNy­xCZ¼ÑõkM'ĺl7:6£s¥ê0YÞÍ-ÊEýÑ@Q@Q@Q@9_ðMÏÿ¼ ÿÊÿ‚ã|[ñ·ÂŠ>øSñkþOþWÄß|?ñg‡¾|Lÿ„wÀWv~ ÿ…}ã=_I³ðçŒÿ°®ÙmuŸøG5-Kû2å– ß"RÿF´PEPEPEP_ËÏÆ¿ù[“öBÿ´Dø›ÿWíA_Ô5~|x¯þ ×ðÇÅßðRï†_ðSÛßxòÛâÏÂïÙšÿö_Ò>ÚŸÿ»Ô<'¨x§âŠ¥ñ¤%Ñäñ)ñ]üDÕ-£û.¹o¦ýšÆÃu‹J.`Ðz(¢€ (¢€ (¢€ þr¿à¯?þ5|Kÿ‚®Á¿?~ü ø£ãÿ‡ß>;þÓúÇÆx'áÿ‹¦Þ#ðüë¦ø{Âþ±ÔµÍjý †i–ÏM±¹¸1E,‚=‘¹ªÔPÄðLŸ ø«À_ðM¿ø'Ï|uáŸx/ÆÞ ýˆ?e øÇÁÞ,ѵx«Â~*ðçÀoèþ!ðω¼=¬[Yêúˆ4-^ÎóKÖtmRÎ×QÒõ[›ëh.`–%û~Š(¢Š(¢Š(¯ý©t}[Ä?³í h^£®kºçÀ‹º>‹¢èöW:ž­¬jÚŸÃÿÙiÚ^—¦ÙE=桨ê“Ãieei ×7w3EI,ˆ‡Ýè Äø7á?Å?ßðF?ØÛáoÆ¿†Ÿ>üMð¿ü47ü$ß¾)x7Äüwáßí¿Ú¯ã—ˆ´oíßø³MÒ?`_ø'_Ãø'Ïü5ü+_xóÆ¿ðÕ_´Ï¿jÂr|>áñgIJÿix{ÃØ>‘Ù}•>Ãý©öýKæo>ú^1ú@Q@Wã¯íÍÿ;»ømã¨?d_Ø·ÂðÑ?¶¿ŠæŸF‡Ãz,qê~øA#Ûƒ6³ãëõ¹·±mcKI£¾}æöËJÑ-`¹Ôüu«èvvöšv¹ãçyîYÃØÌëºTÝHPÃѧ VÅã±U]¨`°ZjU±xºò÷iP£Ië9rÓŒçѼ.ð§üaâŠ\'ÀÙTqØÈaqžo™ã±42Îá|ƒS3ân+Ïñ²¥–ðÿet_µÇf™zTazxz*¾2¾ [èßÛ³þ 'ðOöð¥ñ[\ø÷ãŒ[|/øáã¸ñÇ5™^ÏN¸º‚¯gð÷†&ÔÕl$ñÕ…ËÝ] lt 7]Õ¢m:¿>ÿgø'ÇÇOÛ7â¦ûfÿÁTZZâÓ—Á/ØäG:|=ø]¥]Ïk¨ZÂoáÛ‰î-¦¼‘ µ§„5%Ô5-b[kSñ'SÔäµÿ„[Nú3öÿ‚`XüñEßí;ûVx·þCöØñŒßÚú÷ÄË6±áÿ‡W71®íá½®£on±ÜÙ)6Kâ¦ÓtÉ­¬"‹Ið¦‘ám]Új?®µòXl‹4â¼E ׌h¬.YF¤1Oª‘«B” ù¨ã¸’¤¥˜æ Út²ø¹eÙ{Jë‰æ«èLïÅnú?åŸý³7ŸqÆe‚Ääþ ý%%…­Í1ô1tsðS ‰Œ1ÜÁó„ªá3/« ?ñ|Ý9dY+£¯üâþÅ¿~2x;þ2ÿ‚Á|h×¾ üLð¯À߈ßÿd=áÅ_áçŠt?…<Ô<-ðKàF¯hÞñÝæká^øsQѵM+WÓ¼=ªßO¤^éZ…ä6óØÜÅôuEú.ÛÆÍ¶Ûm¶Ûm·vÛÕ¶Þ­·«op¢Š(QEQEüå|]øñ«Sÿƒ¢?e¯ÚNøAñGPø áïø%Lj~kÿl¾ø²ïá‡ãÙþ+~ÑšŒ>Ö>$Á¤ÉàÝ3Åóiú拆¯u¨5™,õ.é,Œ…£ÍýÑEQEQEQE;?ðYß‚_þ)~ÞßðAÏü2øEñ?â/„~þÛúß‹>-x§Àžñ_‹¼9ð»Â²Ýü"h¼Mñ\ðþ“¨iž ðü«¦j-³â[­3NuÓïJÜ‘i?—ýQEQEQEQE9_ðt×Àÿ_´'üÄŸ¾ü ø£ñÃâ ÿþ kxáÃÿ|Kñ”ÚN—­>§ªEáé:Ö·&§$±=ýêX›kE’6¸–0êOôkEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEÏø³Åžð…|Mã¯x›Ãþ ðO‚ü?¬ø³Æ>1ñf³§xs¾ð¯‡4ëcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´Ê Q@Q@Q@Q@Q@Q@Q@ÏøgÅžñ¦s¬x;ÄÞñf‘gâxNóTðγ§kÚu¯Š¼â­gÀ¾:ðÍÍö—sumˆ<ãox‡ÁÞ,Ñ¥•ux«BÖ|=¬[Yêú]õœQEQEWä§íµÿªý‰`Ú¿ösýŽhKâU¿Å_ÚJÓÃú¶ƒ©xGÁvÚÿ‚¾øsÅþ2Õ¾øKÄßµiõý/V²Ò|?ñÅ?‹¾2Ñ<à/ Ù›ÍkÄZõ浄²ÞÎÖ%u©jº„å-4­M‚ëTÕo¥†ÇN´¹ºš([ùñ½ñ'íMÿÂñ&¡áß¿‹¿eïø&^¬Íc¯x¾xŸñ+ö”þʼxå°Òãhå¶›H–ÞTúds]ø7÷I,Þ!»ñŠ4Ë?é-Ä%k{‹ZÛèÖW>9µý'ý‡?àŸÿa/Ï¢|:±›Äß|K rüKøÍâx ›Ç~>ÔšAur'ºÝ;h¾Kâ÷o…ìne´¶m—Z•Ö³­µÞµyô/À_€ÿf_†^øEðSÁšg‚|áËqµ…„fKÝJõÕEæ¹â Rb÷úö¿©È¢mGXÔ縼¹}¨dX"‚½’¹2N¯O!âlM<߉e FŒ¡G+ÈhÕKÚ`²-FÝ´”19[ãñÜ­Ô*Rú¼~‡Å²¼_ UðwÀì“áß‚TqTkæX|]z¸÷ÅŒË6ð¼QâÎ{‚8fU¡QÏ“pv^éð— {HÓÀáq¸ê/7¬QEö‡ó0QEQEQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPE~5ÿÁCÿàž_·Ïíiñ«Ã¿eŸø+—Å_Øáö‹ð»EðN±ð{Àßm>&i>$ñ–›âÏkº‡Ä«zŒŸÓQÖ4Ox{ÂóiEºX-¼ix5IÍûZY|ÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ùñÿëý“ÿj?ÙáŽ<ûU~Þ^7ý¿|_â_xsâ?޾[ü1Ô|á³áýIÿ„&ÏJ·øƒñu !ªi÷úèÔT±>~­5·Ø‡í~ƒÐ^gñCãWÁ¿‚E—ˆ>4|Zøeð‡AÔ¯WMÓµ¿Š<ð·€4‹ýE¶m°²Ô¼Wªé6wW­æG¶Ö ¤œïLFw.}2¿‘ÚÇþ  Á*¿à¸?¾9ÿÁE~|M×f_>ü?ý„ÿi xJOhŸ¬|!ዹþ?|<Ó´óqh·¿þ#júï‰>  Iqã‡Ò¼/ðñî|5¬xgZMGJþüûN~ÍŸäÐ"øsûB|ñü¾+ñ%÷ƒ|-‚~,ø ÅRx—Åúg…µŸj^ÐB×ïÛYñ&Ÿà¯x‡ÆÚœ.uKO hZψ.-cÒt»ë¸?œ¯ø9³þ Ûû2þÏ¿°oí ûø+âÏ‚¼wûW~Ð~—à´ÿ |¯é^$×~xCÄ—qÛ|Jñ'Äû]6kÅðb¯ƒ Ö|=¢èúÓØø“Rñ½¥]iúdºU†±©iß\ü'øÝÿÊÿ‚µþرoíƒûþÑ_|wñ×ö+ñ_ÅøÛJ“Ãúÿþ5ø‡à—ÅÙËã7Ákÿ ]xKƾðŸ/ô¯|Iñß+xwàGÿi€ž øáã ,áð—Á¯|aøyáïŠÞ(›QA.Ÿ‡~êþ"³ñ~·%ôDIfšft×HCÀNkÛµ-KNÑ´ëý_W¿²Ò´*ÊëRÕ5MJê ;MÓ¬`’êöþþöêH­¬ì¬í¢–âêêâXà·‚9%–D‡âgÅ/ø!_ì£ûS~Ë_³ßÁ?ÚfëâœÞ:øwñ ÿ´WůŠ<{„¾!|pý¤¯ôRŸüqñKÅCIÖeñx³VÔu«[ «¦ë>ðì¶~ø[®ø'B°±³‡òþ eûdøwö£ÿ‚òüÿ‚b|qâλû þËÞ Óþ5þÑŸ¾ üøÕû@j¿´Åû߆ðüWøáω >ü=ø“ãü&𭿈þ_ê>¾ðŽ«àé#oÝxªeþÔÐn<>ýJ|3ý¸ÿbŸ>5—á·ÁÏÛö[ø³ñ•'ðÃ?Úá7OðëÄÇö:ÐíþGsâÍ/Gðö¥u§êÚž¾ÔuKÛ»[’X¾>ýª¾$ÁG>*Á¼ÿ±ÆŒ?³§ÆO|_øeñ³à‹¿à¢¿³/|-âïü[øëû.þÏ~ xâ‡ñÁz¶•‹M§Æ¸|ð·Çÿm¦ðìÖ×¾ ñˆ(ð â¯é~/ðÇ<9­éºç„üGá=sMƒZÑ|Q øL¹ºÑõë=Õ¶­¥ëz}寛¨i·_Ú\Ík4r·óàOø/Wüoþ 5ðj÷öUøƒñsÃÿ ´‹¾_‡3üý¤~ß|8Ò4 McOM K´³ñ£ézßÀÿj~ž{9<3©XüB·mQ±°Õ4k‹fÓâ¹·‡þ •ð?öšý™ÿà‰?±_„Ôj ö;½ý„4OÛ?áÃ!®Cÿ 1û&~Î^Ó´O~ Òl´Ëkï\xâ¹áŸÝø¾Í,ïL [ij떗z5¶­o(îNûnþÅþ"ñ-§ƒñ­àÿéëz åþ›.§áè:ç…¼E`—-u¢xFÕ´MN+mON¼µ‡ùÛø ÿ(Á ÿi¯Züñ—ÄË€ú7ˆ¼7oá-Gà—í+ðkRð¿àÐîl÷„u}cDÒÏCÓ¡Æ—=–§âë6H‹8fµŽcèì¡~ÉðJ/Ø?ágÃþÓ?³ÏÃOÙÆÏâ¿Ç›¯ßüuñoÁ~øe«ø+ã×Çßÿ´GÁÏø{Ç^8ñ™¡xŸÄ_ÂÛÙÒõ[Óâð–¿â \èð½Ì`©Õ‡â_xoÁš©âŸx‡Cð§†4;G¿Ö¼Gâ]ZÃBÐt{ˆ^êš¾©qk§éö‘–P÷wÂ…€gðçü=‹þ eÿI,ý€?ñ2?g_þxÕùiÿ|Søû8x³þ µûXx£à‡‹ÿhïØöný >$xçöÜøKá+uànué¾ýŸ¾'ø‡Ã²Å¢ë:WÁßj5ñæŠÛ÷÷wpÅóW™~ÞŸðRÙ#þ Éð“Äio‹~ð®¥cá[]ðO¿øH4¯øZ¿õ+{¿ìïü=ðI¸msY¹Ö5KeÒ²¶+áÍim/M¶º»‡ñãoü§þÉÿãý–þ'þÂÞý¦¾øsã‡ÇjúÁ ö‡ðŠ~øƒÀÿ®tˉ¾k~ÖüY ZøsR×­ ü°Óu_?þ|!Òõ«™ìô}Kâ‡Ä øÃV»µH¤¹µÓo þÍó|mø™¦øŸÀ_ üC’ø9¼_ñzoŠ8ñ­ÜV¬Þ“©ø»ÅZ—‹¼EwâøSI´Ö4_øJg×üM¡oÁ^€ø O×!¸ðg…ÒßÃúN†>³ñGíñû x#âü#ñ§í¥û&xCâ¼w£M“áŠ?hσÚÄ$ÔL³@,Áz·Œm0üPøwðŸÃW±é¶þ"ø—ã_ xCŸQ™Yá°‡VñF§¥XK{*#´v©pÓȨ̱¤äßþøðgÁ_ðSø7×â׃>|=ð‡Äÿˆ¿ðS†ö_üáh^ñoà²øãû2ߨÂq®i6z‡‹¦Ónî¯gÓ.¼C>£u¦¶¡© ­×R¾[ê³ãWìùð'ö‘ð‹ø ö‚ø7ðÃãgƒ®¥Ã?ü á¿i—7º}Ö•q§Yø“NÔcÓ56Ó¯nìÓTÓ…®£ 7¬Qï&€1´/Ú£öañGÃO|iðÏíðÄ_<«ßxÅßt/‹ÿu†ž×ôÃbº–‡âOéþ!¸ð¶‡«éíªi‹}¦êz­­í¡ÔlDðFníüÈ~ ~Ö?²Çí*Úšþδ·ìÿñù´HÌÚÊüøÉðëâ£i‰ „Ë©ø^6‰n­¢/t"Q%ÄNé£ üzÿÁž³·†~4þÆ^8øÇñŠÛJø‡áÏ_µ7üð áLj¬SSð§Ã¿ê¿ þxËâoÆOì äŸGÕ¾$x—GñG|áŸj]jžð×…5í?ÁŸðxîçÅ_GÁrÅ¿ìçÿ·ÿƒ|¿h/ƒÖ°øâ·íûGxƒövøÉ⯤z=ÿÄo…ÿÿeÿÂ3âù´ä¶›ÄV–þøßãÛ8SX’õ;ËDŒiÖ¦0ëîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾?ý³?mÿ?°çÃ+Ÿˆ?|@§T½Šâü9Ѥ·¹ñÏÄ=n5=/úSȬ–±Êñ W_¾0hº42+^]©ì¬îþsý¾à¦~ý•uàgÁÿ \|ý²>#µ¾“ðçà—…Œš‰Ñµavi:çÄFÓYîôÝ8þвðݹ‹^ñ´AÌÚƒ5ÇŠ´ÿý?à˜þ.¾ø˜Ÿ¶¯ü_ÄvßÿkMfkm_ÂþÔ$‡UøgðÞ)ïFÒ|;£¦í ÿÄ>’iNk sá_ êo%ï‡ ÔüA~6ºø\Û‰q¸Ü}~àútq¹Å¡šfÕÔªdÜ5¯‹84±¹«‹æÃdô'í­S<6-Ïú¯Ãïx_†¸S+ñ£é̸kÜÆÅp‡ùMZX_¼n­‡©Ëì¸s‰ŒåÃÑöy牦X8RçÁpÆ:ÍêÂoøIûþÒ_ðT¯ˆ>ý©à£VڟïÙÏE½O|ý‹4ëËÍ6ÚëO‘#m7ÄŸÐ-®¤S³’S.©—Œ¼F'–bðo‚MŽƒ©ÿC:&‰£xkGÒ¼;áÍ#LÐoüÖoÛÿ¡ö¾oÿƒ¯--oÿd?ØÆúÚÞöÊ÷þ Ýû*Ú^YÝÃÍ­Ý­ÏÃÚ.‹k›y•ážÞx]âšQã–7duebô ÿ …û&ÿѯþÎÿøe>ÿó3@Íáh=ðŸ…üsá;ÿí_ xÏú'‹<5ª}–öÇûK@ñ›m¬h×ÿbÔ­¬õ?¶i×–×e¿´µ½·ó<›«h'I"^Š«ÙÙÚiö–¶¶Ö66ÐYÙYYÁµ¥¥´K µ­­´*ÛÛ[‰D‰Q"Ǫ(ÅQEQEQEQEQEQEømð³þ !ð‡âü þ Gÿ·ýª¼IðçS?¼[û7xŸöeð7ÅMÁøwÆžø•û)|ñ_޾hͪiÐÙxßÅÄËÏøúßHñ)Õüe¥xûR‹ÃÓ_øOÁRiÞýɯñ¿ìÓû8üMÓ¼£üHýŸþ üAÒ>+êú7ˆ>)i^7øUàOißµÿøjÃÁž×<c¯h7öÞ2Õô/éZg…4mKÄQj7ºg†´ë Êx4»;{XÀ?šÏÛ×öý~ÿÁQ?à“~.ÿ‚vü7økðCöæ“öÊð¾«ñëáÿìë¦é~ Ó.?a» x‡Wý¢¼{ñoáÏÒÏÂÞ´ŸCþÍð†…â­SEðõ×Ä ÿˆzž%çŠu±‹M¿ÿŠü øñKþ -áÿxÃ÷ºþð;ö³øYñâ1°¶º»ŸCø~Ÿ>4ü1ºñÚ[Ü0²ÓüQñ7‰©\Î`µ±Ó®.¯în#ŠÕƒÿH_¿foÙ¿ömÓµöuýŸ~|Ò5ym[Kø-ð£À 4íRhÞI#—Q±ð6¡[^È4®s¬¯,Œ¤b}šòÎÓP´º°¿µ¶¾°¾¶žÎöÊò®m/-.bhnmn­¦W†âÚâx§‚Tx¥‰Ú9‘ˆ š´gí5áoŒÿ¿cGö`ø´Úž¯ûY~Ó±_ŠþêŸ|U5®³ã/‚¾ý¡>|}ý¢ÚFðÝøÔäðS~Î?>(øO╜¾f†lµË¯øÉV×^ºÓî?¿àò/x)à–¾ðCxÃÂëãIÿk_„70xA¼A¤MokàOŠ7·WhìjÒCmeygwq*Zᵺ¶¸‘–)âwþ—~~ɲŸÀxÆ??fOÙïà§‹üa‡Å¾*øIð_áÇÃx¦¸ûcEâ=sÁÞѵ=n6»ÿJ)©Ý])¸ýùoÍ\'Å/ø'·ì ñÇÇzïÅ/°÷ìñƒâoŠ?³?á&ø‹ñKöiø/ñÇ~"þÄÑôÿèßÛ¾.ñg‚µjÿÙÒ4­ LþÐÔ.>Á£éš~™kåYY[AÑÞ ø‰ðÿâ>›³ðóÇ^ñæ‘-¥üZ¯ƒ~Ú1ðÞ…¨ø†ûà.±uðÍþ h|[c¤ZêZ¥‡ÃÕÒ4¿…úľ ²ÓoÎð_Š<)tlõø>=gúøû'~˲ÿü%?ðͳOìÿû;ÿÂqý‰ÿ ¯ü(¿ƒ¾ÂaÿÏö¿ü#ð”ÿÂáÏÿÂAÿÿü$÷ö'ö·Úÿ²¿¶õ°}ŸûJóÎ÷{Ë;MBÒêÂþÖÚúÂúÚ{;Û+È"¹´¼´¹‰¡¹µº¶™^‹kˆ]âž Qâ–'häVF €xW‰?jŸÙ¯Â_l>>ë¿~[üÖl-õ|G´ñ¦…«øcÅÉ}±t»/_h÷—ÿð›ëšíÌÖúw‡|9á(õÄz½Ý–¡iš†«{ig7åíûÿ=ø›û~Ï¿ðNïÚ«ã?…µ øÑÿ ð¯Â_Ú áÍî‰câ_h_³ÅO‡?µM×WÆv~£­xoâ…t½àÏÅŸ‰:‚.Ä:'<)â?‡ºe÷ˆt9uÄ?¦Þý†bo…~=“â§ÃØóöYøqñB[—¼—âG€ÿgß„¾ñì·r1y.¤ñ‡‡¼#§x…îdr]çmDÊÌK3s^ýâOø+ÆW^¾ñƒü/â«ïx¢xóÄžÒu˯øÖÛFÖü9mã Üjv—SxsÅþñ/ˆô(¡§xƒáÇÆ¿­§ˆ¼Eâ)n!ú…ôÝ{[µñ¦³ki¤^x{Ä+1Ófü øoûr~ÒŸðI¿ø"OüÓâ—í1}âMsö¨ø[ðWö—Ðuï ǯøËþ/âWƒ?ksáþƒs¥júe÷Š´|:øu£üñU¶™ 6ã¾ø‚®d:v¥¯h—ô›£þÀÿ°·‡~#Œ^ý‹dÍ âáÔ¶Å=ösø=¦|F:±x¤:¡ñ½—ƒ ñ1ÔLC'Û´þÓ¾›ÍÝôG‰¼ àÜøJ÷Æ^ ð§‹o<â»_øïÄÞÒ5ëŸxâËIÖt ?xJ}VÎî_x®ÓBñˆt[_èïg«Ûé:Åx–z¥ô3€~u|uý˜ÿà‘¶ŸÁ=ã—Ç…¿±7Åσ¾1ÐgÖµ_ÚGS±øWf°ézŒ?hŸÄvŸ´6—&—â ^…¼ó¥×4ÿi:•¬Ó7uŽê-¿à?ðN‚¿ÿà™ž-ýŸj¿†Ó~Ñß±†‡û~þÑ?àžšgÇ×Q¹ý•,n®¼ðâP³Ã×Ö«ã+Moâ§Œß>·¨j·7:Ö¥¬_Iq¨É-õÛ³ýåª~ÇŸ²F¹ñrËãþµû-~ÎzÇÇ2ö-KNøÙª|øg¨|\ÓõX/ì¾$]øboZ^¤ˆ® Öcž0HIZ¿e¯Ùö´ðí‡í)û9üý¡l ÿÁ&þ!k¿²qñž›}â?‰ ðWÇx;åñ/€gmsDñ”þ7ñZž–¨hV¥âm;Àþñ·k%³YøwÅú¢Mykk<ó'ëÃø'Wüëàç´‰aOØßá_Ä \Ïyáoˆ ÿf/‚~ñ·†®î¬®´Û«­Å~ðF—®è÷7:uíîŸ<úuý´³Y]ÝZÈÍı¿Ø“C Ä2ÛÜEðOÃ<"Ë ÐÊ¥$ŠXÜ2IˆÌŽŽ¥]IV(ó_þ £ð‡ö1ý¿àžŸ%ý›®þx{à7ü)xóÄt›Ÿ iÚċ˟ Y^x‹â§Ä@máÖõÍVþKéµ-GY¾‘´l[&a¥Úé–ŸËü[ö˜ñìÉûHÿÁÓß#Ðô¯þÑž/ñ]§íCû1|øåmu¡ø§â'ˆ¼}­þØ>xSPðk^ñ~±'õ¯t ß hº–âY®þ$è7zFµ«Y¼_Ú?†¿d¿Ù[Áz¢k~ý™ÿgß ë1jëâõ |øs¡j‘ëéqÚk‰¥ønÖí5t»µµº]Ie«qmÂq$1²ík¿³ìï⟋>ø÷âo€ŸüEñÓÁö‹aá/ïÂßêÿ|-b‹*%—‡>#jÇŒ4KEIçE·Ó5›XUf•B#†þ]ÿàã?‰¿ ôÿÛãþ ë†ÿâ‚,¥ðGü«Â#ñ¤W~+Ðm¤ð‡´ŒŸ³+jÚ÷‰ÒkômEÒÖÚáµSU–6KÆæx„NWú¹Ô~&ü7Ñü:<_«üAðF—á3ö¼x£Qñ^ƒcáÓöçšûÝÍüZoú6·2Ýÿ¤ÿ£Go;ͱb¯Ëþ6ÿ‚jÿÁ9þ%ø»Ä>#þÀ±GÄxÇW½ñ‹¼mãoÙ[à_Šü]âR™®usÄ~$×| ¬ëš¾¡pï=ÞÝ^ÝLí,óÈìXôú¯ìû ë¿ ¼1ð'[ýŒ?dýcà‡‚|A¨ø³ÁŸõ_ÙÓàþ¡ð«Â>*ÕΠuoxcáå߃¦ðŽâ LêÚ©Ôu+H´ÔoN§¨›™~Ùsæ1ßðe‡Œ¼!kÿÖøïàËŸøn߯·‡ÄVß“ëš\^%ŸL¿ýž¿f›{J K¥Õ%°½ŸCÖ¡´¼KV·¸›GÕ#†G}>íaÈÿƒ¾)ü1Ÿþ ›ÿÞù?¼7ü+ÿÛšïÄ~<ò¼_áù?á ðõÇíûy÷‹¶jþ½øE¼OäêšÏجdÿ„s^Ù;djgþœ>ÿÁ:¿àŸ_´º½ºÔ®­t xbÃKд{kFö÷Pž :ÂÚ)¯nVžâY· Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+˜ñ§|#ðçšÿ޼{â]ÁÞ ð¶›q¬xÄþ#ÔmtEÓ-Wt÷º†£{$VÖЦUÉ 2JñÃydDiœáN©Rq§Nœe:•'%BNRœå&£Æ)¹I´’M¶’7Âáq8ÜN‚Ã×Åã1uéap˜L-*˜ŒN+ˆ©T0øz£:µ«Ö«8S¥Jœ%R¥IFŒ¥$ŸO_„_µ_ü‹âÇÇ?ЧìIÿ·Òm¾&|k“ÌÓþ'þÑ1˜.~ü Òšo²jz…ŸˆÞ ýÿUÓO™ ψeƒRÒìo‚hžÓ³í 'pÑc …â/2|«Ä«áèf<+à:_ZáÝhC–ñ2ÂÖ„±y³„©ãrï°µ©beGØVã|^_‡Ä¬–¿Íß°Wü_ágì_§_xÛXÔî¾2þÓ¾7[‹ïŠ´Œ„ú‰5MGSc>©¦xUõIï¯|? K;¿Û%k¹õïM›ÏêW1&¦i_¤ÔQ_o”ånG€£–åXJX<ù)RM¹NZεj“r«_V^ýlEiÔ­ZmΤå&Ùü¹âˆœiâ§æ|mÇüAŽâN$ͧ‰Çãe8z+“ —eØ:¥‚ʲŒ¾.,Ê2Ü>-˰°§†ÁahP„`Š(¢½#âŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾@ýµ¿o_Ù;þ Ûð³@ø×ûbüVÿ…?ðËÅ4¯…º‰¿áø“ñíÞ;Öü9â¿išö7ÂßxÛÄßiðÿ‚|O¨iÞiVú|OÒmô‰^ðgÄ= ÏQ‡X´Ñ|sá}źM®­omwe©o¦ëö:…œŒz…ý¤7±B·1Û^ÝÀ’¬W3#€ßð^¯ø/Wü{öÑÿ‚O~ÕŸ³GìÑûVÂÊøÛñ+þgü!^ ÿ…ûIx;ûkþïÚOàïüGÿþøWÂZwöw„¼+¯jßñ6׬>Ùö°X}«Sº²²¸þ½?d/ù4ßÙþÍßà§þ«_ ×áüÅû8þÏ^ÿ‚#þÚÞ,ð7Àƒ> ñN•ÿ áý—â_ ü/ðG‡|A¦ý»ö¶ø ¦ÞýƒYÑô;=FÏíšuåÝ…×ÙîcûE•ÕͬÛàžXÛ÷söBÿ“Mý—ÿìÝþ êµðÍ}EPEPEPEPEPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@WóQÿóÒÿkÏØ×ö"ý¨ÿoÿÙ³þ =û[øÅ|Eð¯VÒ~êOìÇâ?‚vñã/Ä·þðÝ¥Çìñgñ'K¶Ò ñ»ëÚmö»ñ#Å—Ms`ÖW‚â+ÅžÌúW¢¿™ÿø$‡ÁßÚçöîÿ‚x~͵·ÆŸø+üCøñ«Ã¾*×õýá|±o‡¼¥d|Bñw„´ûMMñ_ìsã½uâ]áëYï'½ñ%ßÚ/f¸’là1ÛGîÿµ·ü‡þ eÂoêÿ±üCö»‹ã6‹ ßj^ðíá?Ù'Åž ñÖ¹e·Þ¸ñ7€ÿfÿ…—žþÚÛ…¯ˆ.l-øÁÖÏ­|AÑ>ÞüøgðßãG¯Øø6×[Öü?‰~/|e·Ôµý/NÐ5 :î-Uîaýº¢¾5ÿ‚þÛŸ ?à¢_²WÂÚßàêÝØø_ↇ4š§…õ9’}oÀ~5Ðïn4Ox[–8mÒâÿÂþ$±¿Ó¢Ô¢¶·´×´ÔÓüC§D4ÍZÉ›óþ Õÿ[ý²ÿbïÙKö¬øÛð[þ ýãïøàEÜ ‡öŒý£¾"ü Ñ~ßêÞ%ø±á¯ƒ¾ñ÷Âß„? ~&üKø¯ñCÃz®§ã-Äþ‹ÇºWÁX%Ñ®e›ÄÛSÒ/ü%xýÑ_!Á>~)øëã§ìûümø¡­/‰>&|bý¿f¯Šøkû>Ãanú·Á°ú_Ä‹h~.ñUÞƒ¡ø¯Å~3½×¼-lÞ&Ÿ^·±²Òõ;l|?áßZýªÒ~¿þ “ªþÞ_²§ì•ûU~Ý¿²ÿü[â¯Â5øU¢ü=ñ†g©ÿgÏØÿâÂÛIõß|<ñ›gâOü Ö~,›z÷TÔ|fÚŽ¹ãïŦk7÷ZnŸ¦ÅáøôÝ/Nþ¨¯æ³þ Cáïø)7íåÿýý?k¯ŠðWŸÚ#¾5øÙ ø«Ä§†¼û.Á<¬¼-¡Ã¤|Bño„´ëñì¡âMZæA§øzÚ{ÛËH-Íäó¼vPyvéÏÿÁDiÿø*7ügÀþý®¼YñûÂÿðR_ØÞËÇ:‚~µum|¶^vk›eÙ&¾ešâé`°Xh©U¯Y»]¾XS§©T­Z¬š…¡:Õª8Ó¥ ÎJ/ìxÃþ2ñCŠò® àÌ8›‰óªÎ–+ËéÅÏ’u1Ì^"´éa2ì·EO˜æ™†# —eØJuqxìVJ¥XýûLþÔ¿¿d?†ŸÅ¯Ž¾1´ð¯†lÙítË4 yâ?kg–âÛÃ~ÐÒHîu½rñ!s¼F+kXV[ýRóOÓ-î¯`ü8ðwÁŸÚ‹þ GâÍ#âßíKŠ¿goø'ƇªÛë ÿg]+PºÒ<_ñ¾(ek3Åž1¿Š;{§ÓomZ¨Ý,Ã;QjT±\MÉ+ÐÁÝ*”rIó¾Yf“›ŠÂÇúŸÆœôTÃb2/3|ŸÄ_¤ Z0|Iãžœ1Ü#áuJ‘•vEàtqTmšñŒªàó/qT!õx*”8 ‡…yçµy?xÁ üáï‡ÿü/¢x/Á>ÓaÒ<9áéöú^£éÐd·³³¶D7Èò\\JÁ§»ºš{»©f¹ži_­¢Šý:t©Â•(B•*P:téÆ0§Nœ"£BJ0„"”c¥Å$’Hþ/ÅâñXüV'ŽÄâ1¸Ün"¶/ŒÅÖ©‰ÅbñXš’­ˆÄâq¥:ÕñëNukV«9Ô«Rrœå)I¶QEg8QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPÎ?ÿkÿÙwöñ-ƒ~6ü{ø[ð³ÅZž‡mâm?Ãþ7ñv• j·ž¼¿Ôô«MfÞÎúx¦—O¸Ô´mZÊ+•SÜé÷q- å_ðóø'ßý/ìùÿ‡+ÿü™^«ñö@ý—hØøËãoÀO…¿üU¦hvÞÓüAãéZþ«gáë;ýOU´Ñ­ï/ –h´û}KYÕ¯b¶V¥Î¡w(PÓ9>UÿÎÿ‚}ÿÑ~ÏŸøm|;ÿÈuòxïõçëuÿ³Õ?¨ó¿«}{ûcë~ÎÊÞߨ~çž÷¿³÷mn·? ø_þ%Sý_Ê¿×Oø˜?õ§ê±þÛÿUÿâ«ÿ]ç—7öWö·ü(ýW“——ë½çæ¾–øyüïþö|ÿÕáßþL£þcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡gÁ>ÿèοgÏü6¾ÿä:?áÙßðO¿ú3¯Ùóÿ ¯‡ù¹ãcÿÕÿ™ÓÞÿŽ-ÿ¬¡ÿÎQåÿðóøyüïþö|ÿÕáßþL£þcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡gÁ>ÿèοgÏü6¾ÿä:?áÙßðO¿ú3¯Ùóÿ ¯‡ùøØÿõDÿæt?ã‹ë(ó”yÁü<Ãþcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡˜ÿÁ>ÿèñgÏü9^ÿäÊ?áÙßðO¿ú3¯Ùóÿ ¯‡ùøvwüïþŒëö|ÿÃkáßþC£þ6?ýQ?ùøâßúÊüå_ð3èoƒß> þÐZ&©â_‚|ñS@Ñ5_ì=_Xð>½câ ?NÖ¥µÿömåÍ„²ÇçØ®ín¼‡!ü™â“\õÚò/ƒßþ þϺ&©á¯‚ ¼ð¯@Öõ_íÍ_Gð>ƒcáý?QÖ ¥µ‡ö•嵄QG=çØ­-m|÷ü˜";P õÚú¼×¾©CûOêŸ_äYú¶ú§?4­ì>±ûîNN[ûMy¹ºXþâ¿õSýaÍ?Ôõ‡ýTöñþÅÿZÿ³Öªû\ÿÚŸÙð›íþ±í¹~©û¿cì¯ïó~ÿÁÑßò‚Û›þí›ÿ[ö}¯ßêüÿƒ£¿å·7ýÛ7þ¶ìû]gÏ Á à«ðM¯Ùëþ ûü,øÛûmþÎ ¾%xáÿàñ€|Yñ+AÓ¼aáû™þ+|BÖíí/ü:× ª¥íÖ•}e}ke¬—WPÝÛxdi£Výaÿ‚SþÞžÿ‚‰X~Ýß~xÞ÷Çü)ûwkÿ¿gíRëM:]´_ þþÊß²qÕî4h.´Y}ÅuŸ‰¿ô—ñ³ë)kã5¶•á³·²±³ñ¿ø7*ÚÞóþ‰ûYÞ[Ãuiuð×âµÕ­ÌQÏoso?ƉÑOoqªñM Ñ;G,R+G"3#©RAû‡ö0ý|1ûëß¶m·€4ŸxcáÇíû^êß´ß‚<à½?û&ÇÁñx¿öyý>xçM¿Ó Ó´í*ÂÿXøµð¿âŒ­í44¸Ó!мO¢¡¸]@_ÚZ€{ßÀ_Þý~§ÂßÝë—^¶ñÏÅÏé±ø‚}.æóJ—ãÅ¿|`Ôü7c.“¤è° øWVñÝÿ†¼å­Þ¹„ôk¾&ñ z§ˆõ_d¯—¿f_z§ÇÛïÚRö]?E´ð¯ÂoÚ‹â/ÀO^i"ý®u/á?‡¼  x×P×î®î%µ»Ö­¾2‰út‹m>ÂÃIÑô{{gLÕu]KêðçìÙû2iš·ûI~П¿gÍÅ÷ZW†uŽ|ðŸLñ§en·wºn…ãÍ@´Õïí-.®¬ôùn.-íÝf–4ƒœáì_ðK/úIgìÿ‰‘û:ÿóÆ®óöÁñOìáox6ãöýñìwáÏ ÝkZŒ?gý°u‚ºG‡®|B–1>­ƒdøÓqo¦Í­&›ä¾¢š#5òØùMr¾Ó_ÂÞÿƒoè¨Áðµý„?ùg@]ÿÃØ¿à–_ô’ÏØÿ#öuÿçS[ÁVà—W—övðROØêîêh­­mm¿l?Ùâ{‹›‰äX ··‚/ˆ¯,ÓM+,qE´’Hʈ¥ˆãïø[ßðmïýø"/þ¿°‡ÿ,êî›ñ{þ ÎþѰþÈø¡ÿRþÖûm¯ö_öoaíí>?±}ƒìºŸÚ~ÛöŸ+ì¿gýÿŸåù_¼Û@µ´QE?Ò¼Sáßø>á&«ãÉ–×Ã^,ðSê¿ ¥Ôç†+Y<-'ükâƒc†Á§X5×Å­ÆÖvp+Í4úÌ»‰£?µ¿ÚZãÃvŸ³íuã&Tð…·Á?Š·*w’â$_ ÃàMzMqž[I"º‰WL[¢Ò[KÂZ@¬?>ÿà¥?ðJ¿~Ü>5ýŸ?i¿…_æý?n_ÙÅ0ýž>=[xrh3ǦêË®ÉðÇâïƒ^÷I›Æ_ 5ÛñuÅž±§jZ!Öu©­N©¥k"ð׈~ý²¾.|øáÛONý•þ þË~ðV¿âßÚOTýŸþ.|]ø³ãŸ <¥Üx£Æ? í´Ÿˆ¾hßü ñKÑ®tO‰l|Eñë\Ôþj~%ðV‡}¢jzµ¿ôÐÀoø2;âvµ­~ÈŸ¶w »™¦Ñ>~ÐÞ ñæªZ;KŸŠŸÓEÕà¶®]–o…67-f–¶ðÁq=ÅÒÍs6¡p¶ÿ­ðtwü £öæÿ»fÿÖÃýŸkókþ ¶ýž&ñ^µ¯þÊßµçìÕðŸÂCA²‹Ãß þ/~Ç>-ø¯¨IâKkw[ë_âχÿj?‡ím¥j×E(m>_\h°™Öî  _³ì=¦þÍ_µïüöðî§¢§‡?mïüñóxCM³¼·¼ð׌þü>Öüã½SPžf{K¯øNu}B†³*Ë©^k qb-ò'ü}ÿ(Mý¾?ìøÿWWÃ*üÖÿƒwÿàª?ðSø+lj¾1xÿãOÄÙ‹À_¿g_xGñ_Ãß~Îþ,ŸÆßâƒãË›x4¯ß|r‡Møs‡¯<5¦ß>¡/„0|MñGü47ü$ß~)~Í?þ xïÄ_ØŸµ_Ç/èßÛ¾.ñg‚µjÿÙÒ4­ LþÐÔ.>Á£éš~™kåYY[Aô}ð_öNý–?fö½oÙßöiýŸþ¶§C¨·Áƒ¾¶¡ ȳæþÎóOÓ>h³o޾YøÎ×QÓîô+ß ë_µn˜Ú_‰ôý_@Õõ=>ïOÝqôWü¿ÇŸ±oÃÏØƒö€Ö¿à é¡ß~É·¾} ⇆õƒª=׌âÕ/-“Að…-¼?}¦x–çÇ:Lj#ÓWÁÏá­KLÖôÍz-rÏWÑF•&³aùyÿÉø›ûf|fý•þ'üçö5ý™?àœÿðO½?ÃwËû4¯íMâ‹þ1xÏÁºÝæ§â _ˆ±üøw⯇‘hþñW‰µOÄ{ã_ÚUñOŒÖæÛßßiþ&°×ˆê/ìÿý¿à£ßµŠŸoüM¥j~ñ]÷ÃÏŒ¾$hMá‹¿>$é(¯ªxâ7…æö+-FÍö]WGÔuŸjoý¥†±6§£ëš~—÷UŸðl¤>,Óà¢ßðrãMsA×¼I£þÜ>‡Äš‡ƒü7©x#Àú—‹Ç?Û®ËÄÚçƒü«x·Ç—þ Ðu›ý=gÒ¼7ãoêZ.‘™£j-ñ$ÚhÕ®¿±º(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ª¦«¦hzmþ³­êV>¥YÜê:¦­ª^[éún›§ÙÄóÝß_ß]É ­¬¼×77Ç #É+ª)aü÷|hý¶ÿh¿ø)?Ä/þÉßðL™¯|'ðŸE»WÇ_Ûnú OLд­2L%Þ‡ðÚõb·½Ž}ELÐØ]iÌž-ñJG-߇‡‡ü)k{ã â%Àðý*« øìÏ9QÊr\ UlË4Ä%w =Ò…JÓÅc+Êž Jõ+ÕŠqRý¸§Æ ~i[‰Ë8_‚8SK2ñÄÎ*¯<»‚¸'«SÙÜf*ž'2ÇMK‘pÞYOŸñ6Ø\«]ƽJA~ÚÿðSÍw@øŽ?c_ØÂþÐß¶V¿5Ö—©>”–Ú·Ãï‚Imû½_Tñž¦n#ÒnüC —Q{¤^^[èœHþ5Ômïmbð¶³ÞþÁ?ðLmöo×uOÚ+ö†ñdŸ´Gí§ãö“Uñ§Åϼú®ŸàëÝJ0oô/†ñjh%¶Š+¥Ëâ©ílµ;Í6Ö; NðŸ‡æ›ÃíôìUû|ý…þ|'ÑûÅ:ͽ¬Ÿ¾*kñÁs㿈Z´[¥–ëWÔUI±Òcº’i4¯ ií•¥¤…ÊÞjRßj—¿iW•pÖ?0ÇPâ.1ViBN®S’Л«“pÚ’²tã˜gºb3zðNnž_K F)Ôý+|lá^áL×ÁŸ£v3È85£ ˆ>&æÔ)à|Jñ®tf¥R¬èT«.ðëÛGŸ(ðó+ÄÊŠ Î.Æç•iÒÂQE}Ùü¤QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEQEQEQEQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEWówÿÜðçü'öàýŒiÿØ#ökÿ‚iü[ñø—â…úo‡ÿh köý‹¼ðçRо|aøuñjéñíkñ1×YYé>&🄯­¤ÔTº";4²¾þ‘( æ»þ Gâø)ìÿþýœÿd_‰ÿðHÚ+Åž4ø'áÿh¯‰¼ûPÿÁ!ý¬¼=«[²Ùx† k«[<ˆ®­åò®nbd’¾‚ý¦mßø,•ÇÃ_é?²ükâ%·Åm[E¹±ðÇŒ¾=þ×ß°}—„|¬Ü¬±E¯^x7Á´‰oükšž]žŒþ&ðœ7—LîùmmÞ ïÜú(ó[þ û<|eý—àž³×ÂÚ>ÂKÚ1­¾#|Høú.µ¿x›S¹øÃñ£âÏŽþ/øöëXñ'…5 _Úöªúïîb»ÔtMWQÒX¶ú]Ôšu½¨_Òš( ,ø¥ð3àŸÇ++Lø×ðwágÆ 7A»žÿCÓþ)|>ð—Ä úê·º½Ò­ óS[~ÀŸ°Å½åŸìWû%ZÝÚÍÍ­Õ·ìãðv ‹kˆ$Y`¸·ž/¤°Í ª²E,l²G"«£­h Š( ÁOø*ìûV|fý·ÿ`OÛ¿ö|øñOľýŽü@š‡Ä/Ù7á÷Äý#á–§ñF _Zxš+Ï êž8ñ‡þNÞ0²ûO‚>+é~4ÕtCâ/Yiz.™«$“Nöwj/‡ßðRø*ÃÛÿÙKZøwÿØý•¾$´z/í9ñ+âÆƒŸÿiˆß &hljþ|ðOÀŸüOøcà¥ñý¨—Añ'ÄO|K¾šËÃ7—ö¶¾Ô^â{+ÏÝê(ʾüøeû7üøoðà×…ì¼ð·á7„4oøÃ6I"Ó4Ñ-m–{™ÚK­CQºe’ûVÕ¯¥ŸQÖ5[›ÍSQ¸¹¾»¸žOÀ?ø.¦ƒÿý¹¿cÚsö ýœ?à™?üJ¿|QðûIÐþ>x‡ö‘ýŠ|'ðÿVðçÃ^ø£Š´/ ë´,¼ŸÁàEÓì4ŸxcÂZ®¨·Z•¬SÛ=‹ÿJ4PâüCâíùðsöoý‹ÿd¯ðJÿÿ&ø3ðwàoìñã/Œšoí-ûøãáΗ¥|0ð†>\|K¼Ò>=þÖÿ´gÁAð²-JÎþÚïÆ¾øUû,ø‡ãÅÇÄ?h±=µ×„toxÏÀzLjZñÒh¶Wê®”Pó‡ÿÿ‚@üaÿ‚Ax·öøøcãoéþüOñ¯Á|øµ¦‹ "ÿÆ~Ð4ˆÖÞ ÓüQà„ÕµMWÂ(ðµæµ¦YjqM-Þƒ¬Gyk¨øwX¾ ©éú7mÿÉÒ¿o/Ú¯öJýª¿a/Ùþ ÓñWââüUÑ~ø{Ã?´,ÿ´ìð÷ámõ¤!øƒR³ðߎþ:èßE΃{¥ê> m;\ð‡¢Ôõ› ­KOÔ¥ðüšn©¨ÿ@ÔPóÿð§ü ö(ýÿf?Øöœÿ‚püUø{Ã-Wâõ®½ûCé¿´Gìqã†Ö:W~)üMøÇ§jÚ¯…<%ñëSø£ÜøÎÛÁ§xsÁþ+‘¯"ƒZ’âßN¸»KþŽh¢€?ÿà»ÿðLOÁXa;ÙËáÄmá¿ÄÏ|Uð§ÆÏ\ø¯ûN/ø¯Ä^ðß¼)ÿg¯t[]KUÒ´WJñæ©{¯c£k’i¾ Ò´;©4›«xæ1ûÏìãÚËÁ²ÏÁ¯…?bOø'ã?Âï…žøU¨o‹ß³æ¥ðT×¼áÂÖ¾*Ñ|aáïŠßÄÍ7áΪ,ÓSš+¿ƒ2øßÃöñjZU·„¼E%–—¯þ‘Ñ@ÇÀÏø$¿üöiøßÿ”ø'?Ãÿü{ø5ÿ–ð V:÷핦üIøà-'àŸþ$h¿¬þ7ë2ø1¯kWo¡°Õ¿h¿‰:ÇÃÝÀú?Ž`ÔÓÂÞÑüCâM,x“Äzß…± ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¼›ãÇO…³Ã}âׯèþð'†á}¬jók›¹Cg£èö1 /µ½{SxÞ/DÒ­îµ+ùƒ%µ³ìr¾ûl~ÞŸ?a‡ÿð•|RÖVñ–¹ Ðü9øIáÉ!ºñïÄ=c&km3OùÛMÑì¤Z¯Š5×KÓ”˜ ޳6£j—_?aÿÚþ 9ñ@ý­ÿà§pÞxw᎛ru€ÿ±„ú†™áÍLsézÏÄÛ‘/dšößý+RÒµŠ×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š*››{;{‹Ëˈmm-a–æêêæXà·¶·Yî.'•’(a†%i%–FXãEgv Q_ø×þ 7ÿôøk¨ÿcüEý¼?c?êþdðÿeø×ö ø#á]GζKy.bû»ã‹ Ÿ2Ý.ítò·D—Ví Q“¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùSÿƒ¹|/kãØsö#ð]ö¡«i6^/ÿ‚¨~Íž¼Õ4¨ìuÝ6×Äi=&ãPÑo¦·»†ÏV³†íî4ë©mnc·¼ŽžÞeCtßñ wì›ÿIÿ‚»âX|5ÿèv£þ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔÊøÂVžð?ƒ| a©kZ͇‚¼)áï Yk#¼‹Qñ­iá½"ÏG¶ÔµíBk(oµ«èl’ëT¼ŠÎÒ+«égž;hÄIÕQEQEQEQEQEQEQEQ_Éßüÿÿøý‰t¯ø%ßí±ûbi³'ÂMö£°ñÀŸÇñ×Eð½¶ñï^ñí%ðkáÿ‰u _ÄkZÜk­¬xCĺÖy´5 VŽñnÒÔ-,®íÀ?¬J+ùŠÿƒiÿ`oØËÿðMߨ_öÂÒfß…P~Ôº§…>(x‚ïãäþ‚ÿâÕ5Ï|PøwªËgâÝAîµM6ÚïÀòÏáfÓ´éí4Øôk›«8m#K«7÷ö´ý…?d?Û³ÂzG‚k€~øçáÿÿl·†cñ}¥ìz¯…'ñ Z|Ý焼I¢ßi^$𮣩C¥iÑ\ê~Õ´ÝA£³ʪà€}eE5_ð@/ø%Gì+û>ü ÒiŸ|ÐõÚ'Iý¥ÿnÏøwãWŒ§ŸÄþ?ð§…þ~Ô?´ì¹áÝš­éX<;i?Â?ZiãéVv×ZÝî»â‹»ë‰"ÖÖ¡?à¶ßðX#ÿÒðÂÿ…?<añ¯öñý«›a¨ÚizŠu]÷FŠüýž?à‹Z_į é¿à¯¼yÿ ý§üS"ñw…>!xëÅ6ÿ²_Â=Výíïî|ðgöuðÅÿ†¾ŸèÓE…Þ¹â/ jø–êÎ}^ÛJðõ®£.’ž‰ñ¯þÏð‡Ã Õ|SÿÑñ?ˆ¿àœ´ç†­®µ†~1ø¯kÚ/Á]w^‚fƒÂ_¿g{‹ýGàßćþ#º²¶[¾}wN¼q⠻ɓQÒu°ÚZ+ù‚ÿƒUuOÚ Wý’?o;Ú»Zñ_ˆ?iK_ø*§í¢|pÔüox×Þ'?¼9ðOöbð÷Šlu9¸‚/ìOK›H²°°Ž +KÓìm4ÝÖÓK´³¶‹…ÿ‚`iÞÿ‚üÞþÓÿ·§í£ñ‡öqðçí〲ì]yâOXþÏÿ þx@𖺿¾'|5Ó/t]+â§Æˆv~3Ó/õ[ߊzn¿‡œèZV—£Ýø_Gð˜õoE7?ðRø"_€™ªÛͦš¤ž,›ÄÖ¶÷VbÒÓNšÎYnÀ>™¢¿Žoø'^»ûGi¿ðu/íóðCö…ý§<}ûNÜüÿ‚xŦøKÄÞ-Ò4/èš.Ÿñ^ýƒ>.jÚ?ƒ~x>;x'C²×¹{¼Á¦èÚ=¤·—³ùP¤—3yQíl­"žöúéá³²‚{©á…ÿßø&ÏíGûEþÒ_ðtíÏiñößQð…¿Âø'ž¹àï†_§Ôæ„^Ö~)þÆž?Ó¼7«[³ÄIåñŒ×¿¯¬ÞúÜøÆmKGÒµ}GÃ:/‡ä@쎊ürÿ‚úxkÇ^7ÿ‚XütðÃ/ê þ |Eø¯ûü7ðŸô}SXÑoü#¬üDýºf¿Zëqê~¸µÖ­¡³:ë=ïömÄwSY}¢Þ2|Ò­øiðþ±ÿ.Yjúo‚>%Áqáð¯ÁÛY¡°ŸÅ~ øŸñãâïÅ ‰‚O<^?øyà™uu³Û}¯âÔ†9öÇý¤#O5€?µŠ+äÿØÃöFð—ìYðJÃá‡> ü[øÁ®_kš‡¾%ügøñãý{âgÅÏ‹¿uË-/O×|uãoë÷wSKwa¢èÚM†›`¶ºf“¢hú]„K<77ןXPEywÆ‚¿h¿†ž$ø7ñßáÏ„>-|)ñö?ü%_¼y¢Yø‹Âž ÿ„{_Ò¼U¡ÿjèÚ„rÚ^exCÑõ»:6û>¥¦ÙÝG‰`Fç?ÿGýŽ|=ÿÒý°¾5ÁI¿a†ZGÃ? ÿÁ=?ট³†1ÛY¤»¸?‚µß‰šßÄÏx—O°ßÐüuµÒlìmôKíìÀ?ÒÆŠóƒŸ<ñãá'Ãß õ/í‡ßþø?âg‚uB!}á_h%Ðn&H'¹†™4ÝJØÜÀ— {6#˜É}OñÇ /‰¿³.âï‹Úæ‘yrlõ={Åú—þ!ë×vº¤7ze¶¡âÛ«‹K yìôÙ,¿º¿ŒðOOØöƒøcð»àÇÆ¿ÙoàÏÄŸ…Ÿ|2ž ø;àø3M¼Ðþxbé·Ò<¤RxRÚÓþÐô‹&Ñ%²žÊÏHÓ’ÒXZÒ@²(¯óŒÿƒO¿`oØËö©øÿG°ý¤ÿfß…_,> x¯özðÿÂë/Š^ƒÆ–ž ÒüSâÚvE¤[ky Üê°øÂq]j7)q©´x£K´K‹Ñsýs|Qÿ‚ Á1¼gáVÓáoìåáÿÙCâ`Ó/ ðWÇÙ:ûZø ñkáæ¹'—6â- _ø{©èPê“i—öö·«¤xžÓZÐïÝc¹°c²HÀ?ch¯ä‹þ ½ÿ‚±~Ò_´WÅÿÚ·þ •ûiøÁ¾.üzýŽæñçƒ~9ÝEo‰þ!øáÇÄè~xãNñûÛ1ƒV×<-â_Áòè~,2^jþ$Ò+ë±GüÂÊÏÆž8ñ{ö­G/ÂÿƒšEÔÒYj~ñEy¦ÞßÚ¤wiŠàRóîà’Çáæ•âʽÒþàýƒ?àœÿaÏ _j6ÜüOøõã/:óâ‡Ç¿Ân¼câBúoµßØé2Þ\_ÜøÃmxÍ;ØE}s¨j÷!uêzµävÏkùæ/>Ìø§_(àÚË€¡Vx|ãŒ\#[ …œ-lÓšt³<Ñ{Ñ«‹|ùv\×¾ñ‡1þÇÈ<&à2L¯Ä_¤¦_S7â¼×‡Î<9ú7QÆU˳ì÷ ‰¦«åÜWã/ (ãø€ê'N¶‡ ðügÆqvÂÃ%É¡[4­ó§ìEÿÆ×<-ñÿl¯Û¿Å‘~Ð?¶‰d]RÙµGƒUðÁXÀÙº7ƒ,6 *ó\Ðá-ž±ccc¡x_Ì:ƒ4ØšÍüM¬þÍQE}VGå¼;‚X¶Œ¡T•|V&µIWÆãñuu¯ŽÌ1u/[‹¯/z¥j’ohSP¥Sà>)ø³ÆÞ1ñ3âŽ7Ì©bkáðt2œ‹&Ëp”2žá.À§ ³…øG‡ðq§—d=•Q~Ë—`©E7ωÅTÅc«âqUŠ(¢½“ó`¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ƒà¡ÿðO߇ŸðR‚¾øñ+ãíðCBð¯Åâµ§Šÿf/ˆZÃ_궇á?xBjúî¿àÏÙÝøBîÏÇ7ú•þ““os>³¤è‰¨Ã„Ö×yQ@Àïüÿþ úýž¿b/ø%ïí;ûOøöÆÿ‚ŒüUñOÃøRßÙ~øñûBx#Ç? uïøM?h_„ßoá*ð¶ðcÂzŽ©ý—§x²ïYÐþÏâ ±x“NÑõ¾Õ¤¶W?Ú×ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?;ÿjïÚÏã&‰ã!û0~à ¼3ñ×ö·Ô´­;Xñ-÷µ½OóÏì»á }nSAøûGx¿A³ÔuƹÖÚÚæëÀŸ|kuñ/â–Ÿ¨ê¶Ñø{íâGüúÖ?à‚ËûXÜ/Šÿà«_·?íIûn뚃Gw{ðOÁþ1¼ýšÿcÿ Ë$–·¦xKà¿Ã[¨õ—m:Ⰷŗþ6·×5Û [+Í^Ò-N$’èÏJÓ4ûVîÃM°±»×oãÕu»«;;{kcS‡LÓtHµ-VhcI5 ø´mHÒ#¼»i®LÒ´ÛZXÚÅúüXðßü±ÿW𦛕¥þÀ? .­aXÑ%ñ'ˆ~(øËR"(Ö%2ë>/ñö»«ÌÅTkéi M+<®îܯÄ/ø6³þ¥ñÍíï?b øNõU~Ŭü8øñ›áþ¥§Oȱ]ÛÇሚ~•s4^c0MWLÔmdE,ÖÒÉ éOÆÛ§ö$ýž|Sÿ7ÇÿÛöWøão²AÿwÆÚá'Ã?ý†ê®-¯áñ§‹´M[ì—Oð\}“Éš¢’7d‘þsþÔÿðVßÙ×ÂÚN­ñ#ösÿ‚´ÿÁ!àð·¼ ¬xƒ\øCñźÆ?ˆ_¼C¢¦£©&àÏüý²<'¨xIuÛ(ìtK /Ùãã6½mªùÚ®¯-Ô€…ðçü_öòÿ‚~îñ'üsöâø‰ñë᎑!¿¾ý„¿à¡ž*›â_µí*µÜ\xgà·í#¦éüBø¨ù,Öž±½ÐüSàÉõ˸õ/Mug Ò×êÏì«ûRx{öžð^©}'ƒüWðâÿÃýF׿¿g¯ˆécmñ/àŸf°‹QˆWM¸»Ò|AáÝjÆTÖüñÂ÷š—‚¾"ø^km{ÃzœÃíöZw{û:|eÒhÏÙóàWí  èÚŸ‡t?Žÿþ|eÑ|?­ìþÙдŸ‰þ Ðüo§hÚ¿–‘§öž™g®Ce±>Õ»QFz¬zV™©y­Å¦ØE¬ên•«Çgnš¥ö™£Üj·zF›y~±‹»› *ï]Öî´Û9¥{{cUšÖ8¤Ô.Ú` ôQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEùEûuÁA¿iÏÙCâ߇~üÿ‚fþÑ¿¶o…µ¯‡:G/þ(| Ôg³ðÖƒ¯ê>&ñ~‡uà+è¢ð'еÍ/Nðæ•â—:„$Øx§LSgQ5ÇÅßðú?Ûçþ+ûqàîïÿEÔWïü1⃹6A•åy÷Ñ—‚ø¿8ÁacG0â\ÃÄ_2¬ns]JMã1vEƹ~Q„©(µK‚ÃáÒ‚jš““—•[˜T«9ÒÎq8zr•áFL¾q¦´÷Têá§RK}g&õßCùÑÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‡Ñþß?ô_Û‹ÿwüè+ú.¢½ïøŒ~ÿÒ!xÿ‹WÇþ˜>¿Ò×/ìüÓþ‡ø¿ü!Êÿù“×úZÿ:?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿEÔQÿÀúD/ÿñjøïÿÓ×úZŸÙù§ýñøC•ÿó'¯ôµþtáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: þ‹¨£þ#€ÿôˆ^ÿâÕñßÿ¦¯ôµ?³óOúâÿð‡+ÿæO_ékðßì!ûUüfý¬þxÇÆ_ÿc‹Ÿ±n½á¯Ÿ é>øÃw-æ·â½ hzV«ÿ n–òøcÂÅt£ys£ì—#ízmÁûNO”ŸrQE~ÅY¦Mñišðÿ `¸3&ÆW\ eÙŽq›à²zJ*rÃaó. Ææ9Î.« •ÝL~;YJ¬ ¦©Â«B)Ò„*Ö–"¤U§Zp§NUÛæp¥S‹µ•¡´½¯p¯Àø:;þPQûsݳëaþϵûý_ßð_OÙßÇßµGüöàø3ð¿G¿ñŽõ‡>ñîáí&µjþ “à§Å?|l¿Ð´{ º†¯¬é/´Ý+LµI/õ=BêÚÃO†kë›xŸçÍNþ Áÿ”&þÀÿöNüwÿ««âm~ÝWóéÿ»ü\ð‡Å?ø"¿ì¥¥økP¶¸Ö~\üXøSãÝ.+”¸¹Ð,è¶Z®<­u§ê\ÙÝ„º‚d_æþ ½ð#ÆðN?ø,ßì[ÿÑðç†u}özÕ<}ð¯Âµf«áýëX¿ð­áý/ƒºÖ±«G r¤6ž?ø}oáïLѤÆž ¹Òoomo¼Aá¸o@?ºZ+’ð<ñKÁ^ø‘ðçżã¯é^*ðw‹ü5¨ÛjÚ‰<9®YèiΑ©Z<–÷–öSÅqoëz–‘ƃJ°Ôt_†^º¸ÓÑ¥FÖdÕµ mA¢øñ—ìÿ§ÿƒ|¿jŸÚ âOüçàÏü6OìñÿÅwßeø1iàý_âTþ žkBãOðö¯ð×ÀšÞ‡ñ_Fñl5¯èž;øtº…üeá{Íã]:}KN³ðÖ‡ý„~Ã?¼oñãÃþ=kíÞ³ð“âïíãköVyÙñþÍþ ðGÄñ'†Y!ŠâãÁß|oðÛâÇŸêW¯pÚ߇¾+iúæŸ2èz–“o;ÿ±ý±mooø'÷ìµûQK­ø[ñ—Ä/…âçü#I®›¥|kðí„>ø¹¤E¤Csw& ¿ŽôÝnãLÑ®æ{›]ëK“|ðOÌÀÍÿìÍÿ„ü4ÿ…£ |ÿ‚ŽþÆbÏ]\Ûi:ÿÄ;ížðåõÅÄ–ÿÛ~3øaâ_x7âwƒ|3ÑOmtÚ"üMÕ­¥€Èlæ„Ý5‡ö!ðïJø¡|?ð.‰ð›Mðvð¯Gðw†t¯†šGû=Oø¥|?Óô[Oé¾°ðÔpørÇÁÖ>‡MµðÍžZ%¶‹Œ:Tib(ü¸ÿ‚æþÊÿ³Çí=ÿÇý¯¢ø÷¡ø^9>üø«ñwá¿Ä_LÒåñÈü©øÃÃZ߆õ›ÄŽÿO]SXÑ,tJÓoì¤ñ^…©_xnI Ôc)ÇÁº³|LŸþ­û?Å™u¼R¿ ¼G”ú£Ë%ÈøgoñSÇöÿ¢‰¦%ÆÁȼŽŠ|¨´˜ì£€, €ÚšøóöÁý®µÙÃÞ ñŸû&~ØŸµ‹øÃZÔty4Øûá_†>)ø‡Â+§ØÅz5XøŸâÃÈ4üÉö-:îÖóQšâú9a{hQ|Óö|yû`þ×Z‡ìáïøƒOý“?lOÚÅüa­j:<šì}ð¯ÃüCáÓìb½ÇŒ¬|OñáäN‹~dûwky¨Íq}°½´(¾iø#þIâ_úCWüëÿ á7ÿDÍðúOÿÒ¿à·_øˆ_ ¿ú&hÿ‡Òx—þÕÿºÿÄBøMÿÑ3Gü>“Ä¿ô†¯ø-×þ"Âoþ‰š»¦ÿÁfê ÿÓ¯ëö¿/ØßþW$ÿ‚±Ù€|8ÿÔþ §_ÔGí9¥|×gß‹Ú쯭øÃ?´FµàmoHøEâo‰÷Z½Ÿ|5ãNÜØØx‹]¹Ð¼7ãJ5ÐÒyµ]F«à?Ù`ÜiÞ/ñ*ªÝÙj´u¨¯t¿~Ï>4Ñ5/æ÷þ Ïÿ+€Á]ìÑ5ýH?`Šý©øàÏø+_ìóð—À¾~ËŸðLM?Át4M'ûCöæý¬5kTœË5ö³â_jòÁ>cŸ^ñ‹uÛÍOÅ0ñâCÄ~(Ö5}wQy/µ ‰ù—ý„õÿÛêø:þ u©øáGìª~Ó÷?³©Äßx³ö‚øÑ üÑ<0u¿ØÀË{àOŠz?ìÍâOˆ^(×–h|±é~ ø;á =âÔ¼O#kú.•¾ýlÿÁ[|ñoâOìAâ | øk©ü_ø§kûA~Ã>4ðÏÃ&þßG¹ñ, ?nŸÙ¿âF¿ƹy Í—‡´;Ã>ÖuÄ—ÖóØxsBÓõnú-,&CSÅŸ³gü[ÅÕü_¥ÿÁFï~|w›N¿Ô|9ð×Á?³·ìýªþÇúN·,7O„üG¦üBøcãÚÅšŸu-¾‘ªøÛHý <ªë¶öŸð‘Øø'Ã2ÜÉáxþ/ÿ‚ÃÁG¿à¤?°Ý¿ìàïØçö1ð‡íMñ³ö˜×¼i¦ü\ðŽ‡¢üWø øZóáÞ…ðãU×<7àKïËà rÖË\oøº÷Lø£ã×Cð׆|yâø:e¼ƒMýõÓg¼¹Ó¬.u ìËû‹+Yï´ß´Å{ýŸy,ÉscöÈÃwöI™íþÓ ¬Sù~l`#@?ðFø*üŸðS…ÿƒÿ ñgpí'ñ߈O‹þþ˼ˆ³­Ý´Ú¥¯Ç/‹²†X.4?üøi¨ÄgSÌÌí[oÿtÿƒœ¾~Õ]ÇàßÙ?þ ¥á >|_Ô¯.ßGðn‘ñ'Q¼ð÷ƒü[«j—÷Þf‘e‡>#Úüø½â^MišW|b$ŸIÒî.n$þ§¿b 6ïÄß|YûLøƒL»Ó|[û_xÖçãµÔ£Xu=#á5Æ•¦xOöqðÍÕ™U—D»Ó~øsÀ:ÏŠ<9&ÖÓ>$ø“Ç×7®¥©ê/ ò™ÿ—ÿ•¶ÿà°ÿöB>;êùý«û…¯áëþ /ÿ+mÿÁaÿì„|vÿÕóûW÷ @çÿš~Òß¿g‹?ðVÏøOü9û@xƒþˆŸ³¿öOü(¿Ù;ö§ý¨>Éÿÿ‰kO·ÿÂSÿ Ñðoâßü ÿhþÛ³þÄÿ„×þÿøI¼_þ¿í_øGõïìßë¿âüL±ðÆ©oû7þÆßðP_Ú;âíÖ™x<àÏØcö«ýš¼)¨x¼»m&ü`ý¬>üøqàÿµõÄjú±×5]FÇJŽúöËDÔ¥¶û+ÿ2ðfü•Ÿø,¯ý”OÙoÿR_Û.¿»Šþi¿à¿ðFа7‰ÿhÏÛOöÃÖ|/ªþÚÿµæ§¯\ø«Âþ ¼‹Yð·Âø§ÆóüFñ'…àñ:Ox“Æ0þÈÕ¼U6=߇´Èü/áí7EÔu†ŠÿX¾ï~þÞßÿࣟðP?ø(ìSáOþÓ¿°æ•û x¾çÂ:gŒ¾|*ýžüAÿ +Ä—>x·Æ´§ÁߎZE„ž;»·o|5ðLJ~x}u†2C¯Câ½ZD–êOÝoŒ?<ð+áÅ?ßïfÓ~üøs㊞9Ôm 7ø{áOÅÞ&½·¶2D.&µÑt‹Ùâ€Ë–HÖ3"nÜ?—?ø&oí#ÿÿ‚ùë?iï~Ðþ<ý„àž>ø«¬ü-øUð;öeO h>,ëF…¢kw÷Ÿ?h@ñм?§xMñ‡Æ§?Ë_Zø‡XÖõ½Hm E®\}û;ÿÁD?iï€ðV—ÿ‚=þÜ>#ð‡Ç-KâßÂϲíGá_iŸ ¼_ã?éúõ=WÁ?>h&/ÿÂWakð¿âRÁ⇶>Ò®_Áþ|¾ŠG†¡:þ&¾*üðÀø;ïþ iàßx¿ãa¿ýŠ>+x›ZÖ>6|yø¿ûAx¹uíWá§üV‹[Oüdñ¿Ž5 x}l,4ë;À^¸ðÿô‰®¯umÃ67úö¯{¨ÿd¿ >)xã‡5/|:×á"ðþ‘ñâÏÂÝCPþÌÖ4³øïàwÅ?|ø¥¡}—]ÓôËÙáø›ðÿÅÞþÓ‚Ú][þÈþÙðî¡«ø~ÿLÕo@=Š( Š( Š( Š( Š( Š+æ/Ú¿ö¾øûü0»ø§ñÓÅ‘èZYk‹O øvÁb¾ñ‡ŽuÈmÍÂxÁúž 5=A×a¸¸škM#JŠT»Öµ-6È›‘ÍÆá2ì-|v?GƒÂÓ•\F'R4¨Ñ§çR¤ÚŒVÉ]ݶ¢“m'îp× ñgÙO p¦K™ñç¸ÚY~O’dø:øüÏ2Æ×mSÃá0˜xT­Z£JR—,yiÓŒêÔq§ Ê>Õñ â'¾ø/Ä_~%x«DðOü'¦Ï«x‹Äþ!¾‡OÒ´»Ý$ÓÊA’i¤)oggËyy,V6÷wÁ'óÇâÿŒ_µ/ü£ÄºÏÂÙ†O~οðO]#U¸ðÿÅOú½…ΛãOðÅ#A«øSÂv$3>•}a&Ù<3 E½¼ËsñT‹íö–ÿÃïÙÃöœÿ‚ÁxßAø÷ûoÙx‡àgìK¢_îüý’´m_SÒu߈ð M§x¯â£:n£ö JÊaøŽX4ÝwQ°–òßÀzo‚ô½DøVþ‡<àï |>ð¾…àŸøoDð‡ƒü1¦ÛhþðLJ4ÛMCÑ4»DÙma¦i–1AiimçlpÄ ±gl»³Ïys_5¨±™Ïj_½ÁçœWIýª¿|Ÿ!®´T—³Ì³*-º ‡ª£Sû ÛðÑÑÂK‡ þÈ¿ ô¯„ŸügáO Øl¸Ô¯ŽëÄ~,ÖŒ) ׉|a®˜£º×µëÅVK«€–ö–é¥ZiúU¥…¿ÐtQ_¡á0˜\†‡£…Âa©ÆŽ ‡§ThÒ‚´)Ó§Â1Z%‘üqŸñyÅyÖiÄœM›æYÿgxÚùŽoføÊù†g™c±3u+âñ¸ÜTêWÄW«'yT©9Kd¬’H¢Š+ òŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf¿"àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( ¾sý°þ4ÞþÍ¿²GíKûDé–êš—À?ÙÏãwÆ?Lš14:ïÂφ~'ñÍ¥„±íD±ÞO¡Gnñ›«`ë!S< ù‹ôer^>ð?†~&øÆ¿ ¼i§.±àïˆ^ñüY¤¼’Bš§†|Y£Þh:îœòÂÉ,K{¥ßÝ[4‘:È‚RÈÊÀü~~ÖŸðoOìû?þÃ>4ý­kâíEûZè~<øñëö¾ý¢|qñ{â͵ç‹ti¿hO„þ$ý°¬t øÆžð¾•á|(›â¿‡´Í^]Rñ§„ô=F?èšÚø“GÒn-¿A|Eÿ¸ÿÁ%¶Ñ|Gðoöh´øqãêzoŠ|-®ê~2|lðµ{§M ýŽ‹ñá§ÆO‰~:ðŽ>ë†%±ñ>‰kƒ¬êZåäzŠü;«5†·aß~ÊðNŸø(·ñïöÉðïíñûlxCö¯ý€>:~Î÷¿³ßÃo6ú>­¦ëÖúmýމàÃâ_xkPðÄð«ÿ ÒÇÄš?Š`ð‡‰¼aiñÄÞ6»ñ.³“'‡´Ëk¯Ï?üÿƒ¡?cWNý‚¿gþÌ_¿cÝ>æÓÀÿnïŽ#Ãú‡Å߀?–Si {ÁÒ|Pð§ˆxÃáÃ‡ß 4«ýGTÒþø#žÓu=bTŸVÔl<% Øhwú¤ñ¤qͨÞ[éñÜ^Ëq¤—2Jꈤ(í袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5+?ðvö±áߨöñ—¡Þø£Sпàªß³F±§xkMbºˆoôÏ„Ÿ´•í¦‡`‚·ºµÄØZ°‚b'¸ŒˆdÆÆ÷ø}íóÿHý¸¿ðwwÿ΂¿SðçÁ6|2Ò¾x[ã_ìñSÅM$>5×g¯êo xÌ]Ló\ëÿ ~ ü=žî+JŠ95^âûÐáÞÿ>:júÿÁBkû¿Ú³á·†µ}+Äv³OÃ_‚ìËû3ø³Äš¡©áý[ãƒmüuñ{âWÆ S°Ó5›xÓã ß›ÍrÌj:ÿ€5¸ãÓ­4߇ÿáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: ?âO|xÿ¡?‡ÿø½<ÿ长¾ðÿX2¿ùù‹ÿÃfiÿÌ~kï?¢êã>"|:ðÅßx«á—Å/xgâÿh·žñ‚ƒ—öø÷ñÂÍ|9ûw~Úš¿íð¶V—þ€~ i_²wÁ‰v®¾RèŸb±øñƒã'޼$ÏÃõøÓ¢xÆ"{Ý;Ç^ñ?†®‡‡¡ø;þGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óú!ÓtÝ;FÓ¬4"ÂËJÒt«+]7KÒôÛX,tí7N±‚;[+ +Xâ¶³²³¶Š+{[[x£‚ÞãŠ(Ò4UÏWìkÿ ¿ÿ‚sü0ðžû Á@>>üø>‘µÍÁ>ø¹ð'ö…ñh{ÉÆúïìçãÙ/m~kšDW6º‡/~|HðÖ³„t}'Fñ^¹ã;ôÔ5ÍFŸü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çÒŸà™_´·í‹¦éß ¿à ¿·ÊüfýšSWѵ¯þÎ?³gìÛmû&xSã3xSƒZÒü?ñ“Æwÿ>>üHñ‚†«iew¨xSÂ(ðž¦Ö6ow3Ý[Cuì‡ü?¡xO@Ðü+á}Lðï†|3¤i¾ðï‡ôKm3Fд-Ê ;HÑô6Î8m4ý3LÓí­ì¬,maŠÚÒÖ ‚4Š5QüôÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×ÞEÔWó£ÿ£ý¾é¿·þîÿùÐQÿ£ý¾é¿·þîÿùÐQÿ{ãÇý ü?ÿÅéàGÿL¯5÷‡úÁ•ÿÏÌ_þ3Oþcó_yýQ_Îü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çô]E:?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷ŸÑu|ãûFø#ö£ñ¶á»_Ùwö‚øYû?k–:åÇŠµŠ_³–­ûEØø‡I’Õ#±Ót­Iøóðü7wixê}NmS_KÈYmWO´(n_ñþGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óξÁ ?o¯„ßðPŒðS-þ Ñð×Sý¦>;ø†Ÿå×ÿàœV7Ö¼ eaðËLÓ|=oáM3öÆÒdÒ¡Ól¾ü?†ÖûMÕ­µfþÄi.ïÔçú"ø/ |]ð¿ÃO è_þ%xCâ÷ÅkíøJ¾"xá}çÁŸ x‡í:þ«y¡ÿe|5Ô>"|X»ðßöO‡.4}ûÎñþ¿ý±©i—šüÙQj‰¢éß„_ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷Ÿ¹<1ñ×ÅÞŸGý~.øàćÕtÛ‹|Fø5¨|wðÜ4!ÕtÇð™ñ_àÍÌ÷ºŠ4IiªÅšcw}3PóBÇüô|ÿ‚þÝ?à ?ÿà¥>ÿ‚®|.½ý£¿h/ jžøžž ÿ‚qZÞ|>Õü#©Üü?»]ÇÂö¶V—w£Ç§Oð»Àïc¦ëvúà —QÔo×RÕEï§ÿÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ~Èügý˜´Ú?àß„>|hñ>´|àëŸøËÃß> >xóÀ?ü+¦5¬_>I=ïŒÛÀZ«]^kqÃáÍVûƺï…5ícÀ5‡ÆþÖ5ý;Yø‹â/ì7ÿø½àÝà÷Ž¿à¬—º?Â/éÓx{ľ!øCûü=ø[ûRjž½hàÕlm~9AñWÄ?ü/­jÚI¼°¸ñ7‚go j3]‹í 4‰ H[ä¿ø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏØoØÏö.ý?`O€žý›¿eÿÚxំf¼Ôä‡Ï—RñмOª-ºë~4ñ·ˆn³¨x›ÅºÐ´³Š÷V¾säiö:^‰¥Á§h>‘¥XýQ_Îü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çîÏÆßü_ñgÂÿø{à/Å |ø³©G¥'„þ&xÛátÿ<3ávƒ]Ó.µ©µ†–ÿ>IâY5/Á«èÚp>9Ñ¡Ò5MFË^¸‹Y·Òåе?ÄÙ·þ OÿDý›¿h´Ÿÿ”ð‡ÄmSöŸñæ‡ñãoƒ~!ÿÁ:´+ÿ ëÚç†ü9¦ø#ÃÒøgû+ö³Òu¿ÿÂ9à EðV‡o jÑiI¡è>‡[ÒµÖѬÊâÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ}íÿEÿ‚[üÿ‚¨ü3ø)ðÏã.§7‡ì~ ~Ðß¾6[jÖ¶µ¨ëžðõÜÖ_þ9ŸQÓ³´Š~ ¾¿ðýÞ«æjèZ¼>ñ<ÚˆNwö/ÇŸüyñOÃû]öføÁðïà'-µ­2aâÿˆムã|T(ÿ‚rÙêÖôøÁþ+Ôt›/ iß¶>q¢Ãe¬ø ÂSi—zV±kªG-ïoÕ÷÷7ãÂÿۃŠ~xwà§íuðgàÿÅ=Ã)¦übø™âÙRøµ¡üEñ;xH±¸ñ?€~7í1à8þ[ÂEo®x‚ËÃúß‹>,AogªiÚÝþ¢º<ú–±ù3ÿ£ý¾é¿·þîÿùÐQÿ£ý¾é¿·þîÿùÐQÿ{ãÇý ü?ÿÅéàGÿL¯5÷‡úÁ•ÿÏÌ_þ3Oþcó_yâðNø7÷öÑÿ‚[ø£ã·Š¿f¯ø*—à Fïö›ÂW¿,>(Á:‡Š4Ý[Vð=ï/ü9«iË£~Ùþ¿Ñnìæø…âå’ßN¿‡K»UUºÓ¥k 9í?¨ßY´ÐôkOjvZ߈-t­:ß]ÖtÝ*M NÕõ˜láSÔì49u=j]ÊþõgºµÒ¤Ö5i4è%ŽÍõ;ö„ÝKüóÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ~ÿüAðƒþ*ø Æÿ þ!è6^*ðÄx—À^9ð¾¥çgx“Áþ0ѯ|=âmÿìÒÁqö-cEÔotû¯"xfò.$ò¥ö¸ü–ÿ‚{Á(<[ÿ·Òþ&ü'ý‘ÿj(ï?eÿˆ?5/ŠzGÁ¿ÚàÍÏÅ_ü6ñnµaáíYƒÁ_üñàìÍáCGðõ£èž&ðgˆnc»³°ÕÓV:¤¾%¹ñGÍ?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷žËûIÁî¾-~Ö¿³¯ü/áíQ«üýºþøƒÅ·š¿Æ/| Ѿ/xâ_‚ügá)<wðËSøJž7øsÿǃ¼1àËÿøcÀø{Æñ_éV,ñ>µâk¿øëW¸ñ‘ý_ýž¾ h¿³ÏÂᆭj¾(–ß^øãx»]‡N¶Ö|mñ+â÷ÄOü^ø±ã­NËG´°ÑôëßüNñ׋¼Wq¥iVšV•&°tí6Þ+X#_ÿø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏ躊þtáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: ?âO|xÿ¡?‡ÿø½<ÿ长¾ðÿX2¿ùù‹ÿÃfiÿÌ~kï?¢ê+ùÑÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‰=ñãþ„þÿâôð#ÿ¦WšûÃý`Êÿçæ/ÿ ™§ÿ1ù¯¼þ‹¨¯çGþGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óú.¢¿ø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏ躊þtáô·Ïý WöâÿÁÝßÿ: øŸâGüSûküa—Ƴ÷ì—ÿ¶øÛ¥~ÒvQêV:Œ­ÉñwVøo™rš~½¨Þxà í¢M[F¼š=:I|M¨Ûé³$kZv¡1þË—‹ôLñÇMJ®Sáô«U掼zðž']Gš8l$q>(P§R½Mc*°Šº”ç^Kéø_>,ÆÎ†9…»ì+çüAW‡8¯’ð¶UV´iUÏ8жKæ¸ÌS„Ru+×¥‚Ä×”`éápøœD©ÑŸîçíóÿ+ø]ûiútM.óã7íAã´ŠÇáoÀ¥Æ©â CRÔq•«x½t¸®ï4Ks,+em¼þ#ñDÍöOi—ðêÚ¾‹ò—ì›ÿÔøñ{âVûkÁPµ«o‹n~Ë©|8ø7‘uð·àFž.?´´ë ôXg»Ñ5MoM™¢6Ú ©½ðþyúž¯¨øÓÄ·k«i?¿°÷ƯÚ×öMñ‰¾5|@ÿ‚#þß´í[ãÛ½BûÆ_ü}{zº¬ ©ÈæîËÁºUïÃv_ ÇunÉiªj«_kZ¬›Ay§è…múwÿ£ý¾é¿·þîÿùÐWÅá>ƒ¿H¾#ÆQÎxÓ"ðî 5U['á ~=x ‰ËòùÅÞž;9«OÄ·C7Î"št¢¹òì½·õX×®þ´MqÒÃ_8s2ðÛèË™føÌÓ<ÀK,ñ#éáÌï&âî1ÃW§ãxWÃL//¥šøuáÕY7 mYºeÆ1PþÜ­–epŽE/躊þtáô·Ïý WöâÿÁÝßÿ: æ¼eÿÖý²¾øOÄ~<øƒÿ?ý¯ü àè×þ"ñgŒ|_ãh<7áo hU¼—š¦·â XøSg¥húNi—7ÚŽ¡woiko,ó")aúüIïô'ðÿÿ§ý2¼×Þ¬_üüÅÿá³4ÿæ?5÷ŸÒüV¿ü_ðb;õÓ›ö7œÎÑ|Ôý¬¾IbÌŽ0§SÁ/¦ ”^,ÁäòÌqÊñÇ­ÁæŸt "Žûö6¼¦ß°è¿µ_Ã_F<½›¼Ù|;àmR(3¼lóž?3åîØûOø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏíZŠþF¿gŸø:oĵ®¿ªxOödÿ‚b|cøñâÝB›Åׄþ|nðߌ ðGöíð‡ÅgöÔ2|8ÐQÿá%Ö4M?ÂvukMº¶¿bãÏ*-¦þÆ?d/ù4ßÙþÍßà§þ«_ ×ã¾!xmžgX^ã,6O…Í1™] â…<“‹8KŒp²Àb1XÜ)ÔÌø7<ÏòʇˆËñJx øÊXúT£KW >+ V·¡„ÆPÆÓ•\<ªJ›¦ÝJðòæQŒ¡ˆ¥JmrÎ-IEÁ¶Ò“q’_DQEð‡PQEð¯ü‹öÓ²ý€ÿd/‰Ÿ´\> ½øã­2O øàÏÂM)o¤Ö~-|mø“â ?Á þiVúU¥þ­s&µâ}^ÒmF-*ÊïS] ÇV¸°¶žê¢ã·Zý‚?àðß^._Ú‹Uý¯ÿáOøÒþäø›JýŸô_Úy|áE8ŠóOð“|ðf‘¯|¿¶Òà–=(ZøÏTñÝѲ•üM¬êº„×:ïõQÿ0Òtý{âŸü?FÕíþÛ¥OÿTð­q`òΖ×:‡ƒcÛgÇ~¸ºŠ#[ŸìOx_þ$±Š2õmN»1´–Ñ‘ú©@“ßðH¯Ûsãíuð/Ç> ý°~ÉðOöåý”~ /ÁÚ§á»ÚÅeeqâoøG4ø7â—† ³ž÷Kÿ„Câ·„u{OhóhºŽ¡ Üß[kSøjêç²h7·¬5ùÛð›FÓ4ø*ŸíÏ>™j¶rx£ö ÿ‚jx«_ò¤—ËÔüF~2ÿÁNüÚÌð¼ ßÉáøSD–x’6–Ã@Ó"—y¶F¯¾üA­Ùøk@×Gï¾Ççy_>Úéã®OúÄOþf*þ¡¨®WÀŸð˜ÿÂàßøXŸØ¿ð°?áð÷ü'_ðŽyÿðÂcý‘gÿ ?öÚ¿Ò¿±¶þÝý—öŸßý‡Èó¿yººª(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+'^×ô? èš·‰|M¬ižðÝêÚÞ»­_[išF‘¥Ø@÷7ÚŽ§¨ÞË ¥••¥¼rOsus,pÃ3ÈêªMyoÇÿÚáìÁðÃÄþ6xËMð_‚|= 2ÝÞ?™¨júŒˆíe xsIˆµö½âMãhôý#N†k™¶Ë<‚+;{«˜?4ï þÔßð[ïéÞ)ø‰Šÿf/ø&^¬Å©x_À¶Ó?âWí ºMÚ5®©­\«´M¤\OÜE©ùW^ðóÅŸ†l¼YâK+¯Xü§qD2ªôrœ³ <ë‰q´Üð96¢ƒ§Fü0Í1-JnWJzOY9Õ—îp”«Ö¼ô„>b¸÷,Ì|Bã|ÿá—‚<1‹ŽŠÏëàþÉa:8¾6ã¼~9ár,¶qÃåôöŽÊråEN—â¿íƒûJÁS~ x¯ö[ÿ‚tÜj_ g= þOüxý´µ;[Ý>ý5ÁRðçÃ6Ao¨Gý«i*¾›=Œ|G°Ü\Üx+«ê?®_±§ìIð+öø[mð×àLJü»«Ä´¸ñ¿uˆínþÛÿðtwüæïÃ??dÿÙ{àüÏöt×­5ˈ_´RiúµÅÞ¥¢j²\I¨Üi>6Ñ5ÿ‹Ú¥¦£dö¾Ñ5o~Ïø3R½´ÖnοÚ.9 ÔÂãĸçÖå¿Ôt÷ºø£ðïÄoéKâb÷YƒÀß ´K;‡Ó´/Ûjž>:|w>Ó~Äþo5~$ÿÁÏ´gíiñ'ÆŸ?à‡¿ðOÏþ×^'ðï…o®>6üRÑüaÿ æ ê©¶¡y®ü2Ñ/~k>¶¾×g¸Ñ4øëâç„`)¤ê½Æul²ÛÙñžÿƒxÿà£ðRïˆÞøÕÿÜýµõoÃþñŠgðwì·ðMô{ÍÛÃÚóÚ_]#ÆZ мðÒÛP¾Š2kmÁ>5ñV£á½I†ÿÆ:mÔpGgý~ü ýŸ~ þÌ |-ðàÃ|'ømàÍÃ@ðÿ…¼¥C§Z[iÚjËös{v|ÝK[Ôešâî÷PÖµËÝGZÕµ+ÛýSTÔ/5+ûË©ýŠ€?>Á¼?ðG‡^Õ|%kû ü(ñnŸ¬ZxBÎ}Gâ:§|Qkƒl®-­%Ò¼_¬êx›H»×/oõ-cÅ÷zn«mqâ«ÛË{=jK­ÃþÑtUø7ÿ@ÿ‚Jüñ$^/øgûþ϶^%µ¿S°ÕüYዯ‰·ZUüV÷vÑÜh¿ð³µÅ¢2E{;*é1ÙF'[k­Ÿj²³šÕ*(ùÿ‚¤ÿÁº_`ø{ûtÁ<ÿ SûNè¾ð…_àÀ9ôŸÙ¿áÇ-,õx¬üGªxwÄ~ Ôü!áïÞêÞE›Å ¿Ò€ü}7†$½×={[Ô®µM¿ø*ïüqû3xëRý©àˆ>øµƒt«Kïøëà?Æ­ èèú‘öø‚ëBøy­~Ð ks©-þ°òXYYYhK:YË “Bÿ×EüöÁ8àåoø''íýa£øg_ñöû)|x¸Òµ]OYøKñÓÄZ~‡ Æ4ÝPYG„~1j¶¾ð'Œîu )ìõ;M!$Ñ|Tеø>òtÉîŸôÿþOÿéÿ„¯þOøo¯Ø«þ´ýþßøjŸð•ý¯ìÿlû/ü#ßðÿký§ìŸé^GØüß³þÿo•óW€þÓðDoø%Oí…ã+ïˆ_´ì]ðÃÅ>8Õ,#ÓµOøcPñÏÂmkUŠ+éõuªß|ñg€åÔµwº¹›ÏׯƷqlËcq¨Kevéòæ±ÿÁÁõ?Ýø&Ïö*¶ðý¼úίmâMãí/4ÝJæÂ8ËiâsâÖµ©ÜéÐAMmáZMOÂpß™µ1 BââæPÞ ^ÐüM¥YkÞÖt¯èz”m6¬èzž­¥_Â’<--–£a5ÅÔk4rDÏÒ(’7BC#«_Èž›ÿœxá^ƒªxSö\ÿ‚¯ÿÁC?gï \ÂA¥xWGñ­¬ž°ñ¥ Ë¥kú7€5…:¬vwÁõØ"‹LÔ¼Eoi-¼:Þ‡-ÄWv4~Í¿·_íóÿ!ý·õ؃þ âÿÚöÀýŒ¾5xûà§ÃÙŸöõñåž¹oàßnÏSŽÿUïˆn¼ou©­¼ºåŽñ;᦭ñ3Xñ,|7Šü7±áëí=¼RýÁÑUìï-5 K[û «kë ëh/,¯lçŠæÒòÒæ%šÚêÖæxn-®!t– âwŠXd™b€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯ƒà¡ÿðñoøR¾ÿ‡dÿÃ9ÿÂùÿ…£¢ÿÂ[ÿ ;ÿ /ü _ð¨¿áñ·ö÷öGü"ßñ0ÿ„¿þ/ø@~Áç¡ÿcoùŸ¿û=~yÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5üRÿÁoÿâ"¿øuïí;ÿ Ûÿæÿ†Tÿ‹-ÿ Oþ?ü,¯øZßòpß ¿áÿ„Wþø”ÉGÿ„Cûsíó-ÿlyé>Mk_²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?Ÿø8{À¿µ?ÄÏ„ßðNŸþÄßtï…?µ'ˆÿà§ÿ ¬þ|GÖu)4ÁºÌ_²¯í‹y¬kšíä>ñt§A´ðµ¶¼u»8¼+âI5-)¯4ÔÐõV»3þfÿùÿàðúK§ì‰ÿƒô×ôÍû`|GøQðûÇÿ°EÄï†VuO‰_¶ÞðãὬ¦>|WÔfoÚwÄzwÄÛHä‚eÖ/äðw…ümðÚ×Fl÷ñÜÅ9–Ñ-î>Û á/ÄÿðEŸø:§ÅŸ5Ÿ‹×ßðVoÙßHøâ/x/Ὲ#êÚ6ðóǚ-¯ü?¢ø3Ŷ»cys•¥æ¦èwך¥Õ乊ÒÚâÊážæ@c‚'i_åC@ÿÁ'å_ðM?û0ØßÿY×áÍ}ÿ_+þÂÞ1ðÄOØ“ö:øð§áä?¾xëöWýžücðÛáE¶¡ý­oðÇÀ>'øIáoÁß-õS±Ôáð_‡o´ï Ũk¶G¦­Ï‘™å¯ÕQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_þÝðP‚_°§‚­uÜ\xÃ⯋#6ÿ >øZE¹ñ×õYî>ÃfékWRh~[óä_x–þÙàó#›OÑmuÏ5¦‰wóí×ÿ=O„2‡öPý¼"ÿ´gí½ãF‹àO[gà n®bY›Wøwmukkæ§™uyt µ-> N€ëÞ7Õ<9 ,êPþÂÿðL9>øÖ_ÚÓöÇñoü4Oí·âÙŽ³¨x¿\™µ |)–xDPhŸína†Ñµ-&ÐÿgÃâ+}?N³Ñ¬Âè~ Òô]&Þ[­_à³>$Ì3\v#‡x5Q¯ÃÏØçC^¶OíÛÚRI5Ó;Œ]éet§ìèMƦcR•8ÊOë>ðW„x …²¾’Ó̲¾Íðë3ðçÁ쯲ßüe„nð˜ùJ¤'_|.­Z‡c°ï›a¡_ Á˜,ÃVža„ùãàìñßöèø¢~Ù?ðT¶—û6Òáuß±m´·v¾ø}£¼©q¥ÏñHyÍ»™#·½¿ð­Ô·Æ»*Z'Ä]DÙÅwðþÓþ Ïÿ ~Å?ðM߃^.ðgÁ¿‰¿ >3~×s|=Šoß< oyã¯h×·ÓÝøÃÚ×Äïø÷Oð—†|%á™´ùµ-CÀÑøÛCñYZZhZeޝk¯Z~rÿÁS¿o?Úþ …ûsxkþ±ÿêÖ?h„?€?h Sáïíßû[|:Š÷þ­ÁW_ µ›Oø2ïTðž¥Ðh:]œ¿4]sþ9ÖüŒ>$ü?Ñ4jSÆ—–«¿ðMßø7_þ ËÿçO xßEøkÇÚGÃÚv©e}ûAü]“TÖ/®$Õ/í¯¾Ñá…×:Þ¥ð³À÷:bÙ[ZhÚæá¹|meho`—Å÷QjW‘Éîðÿ åü=B´pζ+¨«æ™¾6~ß3ÍqV³¯ŒÄ4›ŒnãC ISÂái¿g‡£N7Oò¿¼kâÿóL¶¦u»!áNÂK)à?øc ò¾à,‰ÍJ9_dќ㠵œaW5Îqµ1yæ{‹×3ŒÇ]BPüâÿ‚DÿÁo9/´¨ âþ gû^~ÐÿðB¯Ú#ÁðGoø)ͯß…ß²ç‹5Þ?ý–?l¯|Fðæ™áMGÁ°kKáM7U××Å7~ð„µíWÃÞ*ÕHñÝæ‡ã? ø‹Ç¾ѵm+OÐõm úïûnÑõ'Ä:N—¯è¦®hZæe¬hºÖ{m©é:Æ“©ÛE{§jš^¥e,öz†¨YÏ Ý•í¤Ó[]ÛMðK$R#ŸÎø*7üóövÿ‚¡þÏ^(ø]ñ{ÁÞŸâ~àoˆ:oìùñvþ ƒ®|ñ÷‹tý2K?é“Z–’m"ç]ð×…›ÅzKÁqý±¡é÷6æÖêX®áþY¿cÿø-§Å¯ø!_ů‹ŸðKßø,V³ã‹þý>üÐ?e¿‰Ÿüá¯ÃÃë_ ;H¹¹Ö®¼â?øwPð¶³á«kšõÝÞ­á‰ü «øSR²Šà¯ÙÀ?¼š+øëøiÿVÿƒŽà vº¯ÄÏØ þ ¯û:ü)ý—µ¿xºÃáÏÅŸÚ·SÖ4kÚ‘¬Ì|?«Ùé:¯ÆŸ‡—º›_é)—©jÞø]ã7ˆãÖ¬¬|O šlËj|zý´àëߨ¿á׈>9|Tý‘`¿Úá§„WG¼ñžð_Eø™ãèúÄ+w¬kZw‡¼+ñcEñ;Úh9m?ÄZ´>ñM–ˆmsû2ïÃvwzÜ@Ø¥ùßÿÁÿ‚’|ÿ‚§~ËÖ´ÇÁÆ~ ´Ó¼g®|-ø…àOÚi¾&ð?Äÿ é^Õ¼Iáë†Ñ5jÂûN6'Ñ5SûM¥î¡ êúmÖ©£hZœ—š=—è…QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQE~ ÿÁ|¿à›ÿà§¿±÷Ã?ƒŸ³¿ÄMá§ÄŸ„ߴh{-sY¼Õ´ëëË|<øµà»­/Áú–•-˜°ñ¿ŸñÏVðÔÚ®¯áí[Ý$Új>%ðôW#W´þWü7ÿþxÒ-oIðGÇø-ÿí]û!|LÖ$šo‚¿ißÙ¯ÆÒuýL*ïÒ¼ñ£Iý¼¼Oû<üQÕwyŒ4O†ß1Ô‡ƒjo[‘à½ÅŸï3%ÝÆ· OökpÑÿø$ïü¢Ëþ §ÿfûÿë:ü9¯¿ëŽøwâŸxãáÿ|kðâöÃRø{ãxgÅ>Ôt«9tí2ÿÁž Ñluo Þéº|öÖSØØ]hwv3ÙÙÍgi-µ¼‘Ã%´†$ìh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+‚øñGáçÁxƒâWÅ_h~ð'…¬¤Ô5ßø†õ,´û(|‘©!§¼½º“m¾Ÿ¦XÃs©jW’Ce§Ú\ÝÍ/Z´¨R©Z½JthÒ„ªU«Vq§J•8EÊu*T›P„!å)ɨÆ)¶ÒG^ŽÍqØ<³+Ábó,Ë0ÄÐÁ`2ü¶3ŽÆbªÆŽ ƒÂaáR¾'ˆ­8R¡B9Õ«Vq§N”’}½Å޼÷wsÃkkk ·77¤ööð#K4óÍ+,pà jÒK,Œ©+;°PHüý¡¿à ßÿm_Š:ßìaÿ®Û}5ª;ãgí”Ò\Áà†:=Ü——‹àoÚÛ]'Û®¸4¿Ø cT¹¶¼? ´ëÉ,ׯo˜ë><ý©ÿà·~%Õ¼ ðŠãųü_EÕçÒý†ÿàŸ?`Ïê1xP?‹~(xšÔ>+|uñ‚Ç'Œ¼g|d’þø½ÝÌ÷_ðŽøb—’æÎí¡fEÔuËÝgY3ê³~ Ák?àáß…ð/ÄOØ{þ «ãOü~ý¹~'xS@°ðoÅÙžO üHøgð€êÞ&µO¤Þ:ðç‰ïîîþ&éþ ³ÕΟgá}ZÓ<©júv©âF½Ñî´wüþÖ¾.ÿÁ_?àæ‰þø§øûöÿ‚TøoâŸ>|DøáÏx‹Àþ1ø»ð£Å¾’K«/ˆžÿ„·F7ú€ÒÓN¸øwáÍ>ûáv¬|K±ƒÅ·Zý…±×áþ›¿à™ÿðEØcþ q¡èZ—À߇qø‹ãÌ^¹ðO¿i/Iq¨|Jñ½–©ªÃ®kQ¥±»—ÞÒ¯µ[£Ò<'¦iÇû+JÒl5kýj{9/î~ï,Êòü›‡Ër¼% gCB<°Š½å)7yT©RMέj’ZÕ%*•g9ÊRÊ9~ÑŸµiºŽ¡ãMSF·i¼ º„úÿ‰õ_ÙxgÄ:—Œu7ñ޳¬ÿëÞ+ñˆ›KÐãÔÓIµý˜¢Šï>L(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+Œñ§Ã‡Ÿ-4눞ðgl4F=cI²ñ§…ô?Úiz´QI Z¦m®XßCe¨Å ÓEí²Er‘K$k(G`{:(¢Š(øÉÿ‚pøçãüÓþ ¥ûOÁ6üqð]|5û;ÁL?h¯Ž´ïìÇãÝOÆéú>áÏüMñô–^ðö©Ŧººfà&‡Äº‡u­7þýÜZëWÖ¯?öm_ÉÏüKâ þÍ?·wüköçñn­má| ý¯üYðÇâç.“TŽÇCøwñ:…ÓjÚÖ¯{aÐNð§ƒô/‰:ÄÚtP½ö¯gq©Å½äVó$?ԯÿˆ ø³ðÿÀ¿>x†ÃÅß>&x;Ã?<â½)¥m3Äþ ñ–‹câ? ø‡Miâ†v°Ö´=JÇR³i¡ŠSos’(ß(;(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€<+öŠý§?g¿Ùá¥÷ÆÚgã€~ü4±¿¶ÒÅ¿|Ag¡i÷ºåí½å凴Hgs}â_ÚiÚ݇‡4MK\¾µÓ¯î-,&†Êåâþb¾-ÁÓüsñŽ­ðGþãû |}ý¾~+BÏmÄ _Á>)ð—Â9K-—‰î¼?¦ZÏñëÃeÔ­Óøÿþ„Vÿ3>¬~oÐø/gìtoO‡?ðOÙ’ïP×4 øãþ aðÎûÆþ*м#¢øÖ_ xGÂß²ïíwâ=KT¼ÐüQ¢ø‡ÂZ^Üi¶>Š_hºŸ†?´õÍ:ßUÓõ®WOºõ„?ðKÚöðN™ðÛà_üãÏÁï‡ú:…Ó<ðÏö9ÿ‚\x'ÃV±çGðïìE§XµÜá®o$…îî¤[™¥•™Èâøÿ‚JÁy¿àª$kðUŸø(?²ÀÝn$¼ý¿d浚ê}:T2Üx_ÅÇÁÚ½€&X¦º’Xuøïöˆ¹IíÍ©³ŠÚ:koÙ¯Øçþÿ°ÿ‚iø~ü4ýžü;âx#J¿ñ&§ñëãšÛ|Zø¥c‡ký§w®é:¦»`¾ð=í¥®æ>ø_ÁªÊ’“ IsrÓz¯ü1'íÇÿI—ý®ÿñàšÿý5óí­ÿâý½¾*þÉ´wÃíþ ûVx‹TñOÁ¿ˆeŸ…µo€ÿ°ÿ†4oI/†µ'ƒ5­{áìßðÇâ6—¤x—Ã:ï…üo¢ßÚÚê²Ü¨Aº]èì×Á¿‹ ø÷ð‡áWÇO†šÎ±ðããGÃ|Xø«^i׺EÞ©àŸˆ¾ÒüaáMFëIÔá¶Ôt»›Ý X°¹ŸNÔ-ི–V¶º†)â‘Ò+àÿø%–•©è_ðL_ø'.‰­é·ú>³£þÁÿ²•«é­ÆŸªiZžŸû>ü=´¿Óu+ ¸á»±¿±»†[[Ë;¨¢¸¶¸ŠHf$FQ÷…QEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~`þÞ¿ðS~È×Z?Áÿ‡>¾øûû]|@6¶>ø6;­[T†÷UEþÊÕ¼rš:\êF™p²%Æ›¢ÛBÞ#ñ*m:u½ž“öïéžfoœe¹®ešâ©á0”\bç5)N­Y¾ZX|=)UÄbkJС‡¡ •ªÍ¨Ó„™÷xoƾ,q^‚ø!Åqf­Z8j• 6…µÇæùÆcŠ©C/ɲL²…ñžqšbp¹v_‡‹­ŠÄÒ…›ú7öÂý´¾~Ä ®¾'|mñ*Ù‰ÖæÛÂÒÒóÇ?u˜#F:?„´9î­MÓDe€êzµÜÖz‡ ðϬjVi=¸›øÎý»¿à§|AñWÀÿÿà©«ñ& OÂ~ ýŸ¿à•_¾Úß5Ÿ xÊ^ |QøÑ«ëw~Òô}Z²ÓÅŠ\M¨Cñ_Æ â =ü!àßxU†óQýý£|/¢þÀŸ>)ÿÁR?à¬|ñGöðÔ<ãMCöIýž|e¯èÓü?ð÷Å='AŸPø{à xF†Ÿã [à Ôt‹­zßÃPj>ðNŸ&§¯Z¿‰¼DÖ~.“gþAÿÌø£ñGÄþ/ÿ‚ÉÿÁMdøaû@þÓŸ¶ß¾ üLø9c¯ø I½»ø/á ="ÓSð牗KÕt(ü=áëѾÍàÕð]¥«øú v¶úŠßj÷–ZWÅRÊs^5«OÅ8z¹g Âp¯—ð…F–#0äjtqœW(7+¨Õ¥BRÃQ—'öŒ±5 èÃúsâý°8Îð#9ÀqÇxœ6#-ã¤^–OÂQÄÒ–3á¿iâa ´[„êà1þ-âèPγ*O¸?’åØ˜f¯ ñ?üŸþ ñ›áÞð“þ ¹ÿý þ>­§ßøÀ_¾8xOUð×¼ —6ë£x7ZðƉ⿇ÿ >èÖ^u–îêãÅþ*¾ø¦\ÚÛØêë>Ÿà¸ô¯ø'?üg¢kZý§í©ÿ–ñ6¹ûk~Ø?ü£Iã¿„Ÿï¬|màŸ„¾*†öÁ¬lµè^-×t¯Šzç†<+£éÚ.n>éé>½g¡éºÝˆÑµ˜¿­Ú+ôhÆ0ŒaÆŒTc¥Æ1VŒcd¢’I$’IYhV­[Z®#V­|Ezµ+W¯Z¤ªÖ­Z¬ÜêÕ«VnS©V¤å)Ô©9JSœœ¤Ûm…QTdQEQEQEQEQEQEQEQEQEQE| ÿ8ýŽ~~Ü_±/íðGÆß <ñ#ÅZ—ÁߊÓüºñO„t_ëþ4Ý|8ñFàøãU°½¼ðߌôcR†+ kB’ËUk[«Í7í guo7äÇüéÿ ø)ûQÿÁ8þþÌo›Sý¥ÿdŸ†¿ð‰ü[øs¢ø¾ÞoxÛ⌼?ð‹Z±ñ.¯¡Úx[Ä6tÏÁ5Ÿ†uÝbãÃW(šn­k¦¬šzÜLUü_ÁkÿcÏÚ‡þ kû@ø›þ £ÿÂñ'Ã…¾ð×Ã/†_ kÙîÃáï‡aÒ¼gàôø…á=çW³ÐàðÝLJäð‡‰mtχ7_JÃ~=ðŒž›Æ^ñS Füx|ûA¢¾UýŒÿlÿÙïöôøá¿Úökø¢øÿÀº×Ù´Ý]´©ä’÷Á¾3] C×µÏø¦Öx-®tÏøjÛÄbjÖÛÆÈ.­®aó-nmå“êª(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†kò'þŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢ŠüïøçûvÙ~ÇßAý®ô;áì±ñ*ç@²ø-û^ZK}'ŸøÂ}3JÓu„Ÿµ­v^×à÷ˆµ¿ÿhk þ%ê’Xü+ñ†…ª[ø7RÕ|9ã 7ü&~èºÞâM#Lñ‡u}3_Ð5» ]WF×4[û]WHÕôËèRæÇRÓ5+g²¿°¼·’;‹[ËIå·¸†D–6V4¼Wá? øóÃZçƒ-xàÏÃm Oö‡‹þ!ø—LðÖ’n|™§‡L°“Pž)µrù •tÍH†ûZÕ§Qm¦X]ܲDÞEû"þП?j-Å¿5?„¿Áï€>"›C‹ön´ø§êÞøáñÂö£Ymâÿ< ~"o†ÞñÓ\x}þx#[¶·ø‚¾Ó/ü_ã{müa£x[ÿ~Ì_ðD?Ù×áÄï~Ñ´ÏÅoðQ?Ú“Â÷-¨xWã/í™ãË¿‰_ÃmEòoƒÿ %Ç€|MÖ™=҉uïêVP_xs_Ò"Š/Ú (¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠþU?àîOéþý‡b/jðßÜé^ÿ‚¨þÍ~)Ôíô«a{ª\iþøEûIê×°é¶fHEÝü¶Ö’ÇgleˆOpÑÄdMû‡mÿaÁ9¿èˆþßÿøŒ–üñë;þ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔÊøÆgÄ/ø7ÇÚ,®ã x{ÆM®±j,ukm3ÄÚEžµa©d²Î¶zŒ6·±G{j³Ì-îVX„²ÞÝUPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEsÞ,ño…üá­sÆ^5ñáO økMºÖ:ñN‘lfñD¾ðµÖ¡£k_5Äϱ³§G ‡¥†Xœní¯ÛCþ âÿøã_ý‘?àœ‘èŸ>7ØØj×_h Û½9~ þÎ>Ñ#‘üUâMoÅÚ“ÂbãÃvé!Ö|M«ÜKá/ ݈ô¥Ox²_øGì4ÿø+/ü;þ 9ã=gÂÿm|wÿjÿ‚™øïÄñøâOÄ_‡“ëZ£âŸÁwwâá÷Å‹3Ç3êé&¹$:F§oà+Æ'ñ–¤ÓÉâ-ZÑ,-t{…~kŸ´üOVÓ¿àðIŸüVý‡ÿà›Ú‚ü¥~×µÄOGãyÿhM{@ÔmgŠóâÄ /ÚÒjºÞ™sàí7Ãß¼=ãÏ <:o‹üTuM6ÙÞ['ö¥ÿäÿ‚F~ÄßðL?Xh_³§Â"‰þðÞ‘ñ#ãˆEö·ñ+âF±¡Ø_[]ë·z–·¨êëá+MZïVÖ.ß¾ :/‡-b¾K!eq¼£ÌÉøcˆÇÒâ>.­G0Ïi©<»CšY7 SšW¥–R¨“Äc䬱yÍx,M[{,4pØhªsû¿¼qáÜŸ…3¾viÂã*|gÅ™¯°£âW¸Ì,¯OÇÜ¥ Ÿ„hUæ«ÃþåX‰äÙzœ±ÙÖ#;ÎkK‡þt¿coø&gü³þ çûX|#ý¿?à¹>ðv‹ðà­ßÆ?ü'ý…<}à„ðÝù³ñÝ.™s¬|4>–Æ/&»fÍ­x÷_—âg#øeàëYu Å¢ßê_Ú¶•¥iš™¦èš&›a£èÚ=…ž•¤iU¾Ÿ¦iZfŸo¥†›¦ØZG ¥…¤1ZÙÙÚŽµ¼Qà i*‹ôWÜË!EPEPEPEPEPEPEPEPEPEPEPEP\¿¼௉~ñÃÿˆþð¿ÄøÇH½ðÿ‹¼ãoé>+ðŠt J¶Ôt?øo]´¿ÑµÍ#P·w‚÷MÔ쮬®¡vŠx$F*zŠ(ø‘ýüCñçþ/ÿ‡×ÿa| ðþ‘ÿéÿ‚ª~Ø>%ñ/ì§ãÔñŒ–þ Öï<.lìü'à/øgZxt³ñ×þ ü×´ßè^¾ øgEÕ¼5¯i-¤õý·Wã‡ü¯þ n¿ðSÿÙ¿ÂZ„~$ø›àÿÇïÙÇÆzÇÇoÙçÇþÛë‹ñ3Eð‰ì¼1áFÖ¿´4Ëï iZß%ð^µyâmöß\ѯ<)¦]é“C2SáŸø6Ïþ áŸÛösðgìñ{Æ_ üOÿ…+ÿþ³ñKà]·ƒ| gÿWíð—â&«ý»âHük«¾›öÂZ•¦™>ãíšÄú}ò…Ñž/í;öBÿ“Mý—ÿìÝþ êµðÍ~DÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã4ôEQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEàß´wí1ð[öOøc«ü[øçã];Á¾ÒÕ¡µYÚuÏêí’ZxsÂz$ßøƒ_¿òÛȰ²–}GQšÇJ³¾¿¶ù×öòÿ‚Š|ý…¼%`ž KŸˆæö+h/§ð÷†$ÔÝmZ¹±¹¸Ô.#¸Ó¼5¦kÚ¼2iëü+þØÿðPŸ¿?l|4‹Jð§ícÿ%ñ§Åí{à‡ÿd½gMÖàøûx‚êÜxÃzwˆ-µC@ð/‰¾)è^;¿±ÖuýV×|MðëÂÞñþÑš–³ªÍwá¿ |VuÄø—ŽŸð¶ŽkÄJ0–.¥YMe=Fª÷1yÞ"–ª¬£yárªúö1GšÔ(?nNxgà^J¸W ã79ÎaÀ^ J¾&a2êxyx‰ãg—Ê+xc“ã¿vð8z®l÷³ZK…¸v¥UGŸ5ÍWöQôüãþ õ®|QðìÚ÷í{«|$øqªøJÇâOì…ûCaã˜|cûOYÍâÛÏ øgâÏÆ/èz]®¡|2XÓ¼E©Ë?ˆt;ÍzËÂ:·ƒþ ÙÝø‰µ‹³~Á_ðn‡íûsx›Dý¨?à±¾$ñ/Ãÿ†¶ç€þ#þÏŸ°oÃ__i |!àïéšwˆ|EðóÄ^Õîµ›ïƒ éÖžð~¿á-Rƒâ®·©éÞ$Õ>$xÊóÅÆ}oWýÿ‚5ÿÁ¿×ÿ³×Œ¼;ûzÁH¼]â?Ú/öý×|3â2ÿÃ_¼Cáï‹~ø3sw¯¬Z­áMnòÛXŸSñÆ•àûÑìõKMrx_Oñ¯¤ø[NµÛ_'õ?]Ü=Ã|’XŒv#W7ÏóšgØØÁbñN/š8záû¼[FZarì/- 1IËÚÕæ«/–ñ‡ÇLçÅ YG å6_á焜R²à/ 8j­wÃùjÇÙUÎ3l]~\oñ®eI'žñžzëæÙYT§Gê9±ËèùGÁ???fï‡Z7Â?€? ¼ ðsᇇ¦ÔîtOü:ðÞ—áO é·ZÖ£s«ê÷vÚF‘omj·zž§yutÑ´÷WSÉ,Ò;׫ÑE}9ø`QEQEQEQEQEQEQEQEQEQEQEQEQEQEWñÉÿøCöšÿ‚q~Ù?ྲw‡~kÚOÃ…Ú?ìáûNx7Æ“k‹'Œtÿø¶÷ÃþÕ5-+EM2[«mKNñF›áQâ[E¨x{UðÏå}UÓí¤¶›û¯Ëoø-ìçâ¿ÚÃþ Qûnü ð…5?xïÅî¼Aàè–+©ëž'ñ—Ã/hü-¢hZit’ÿ\ÔußX[höVÞeõÖ¥%¬:|7Ïoo(éO„üO¢øß¾ñ§†î×Pð?£xŸA¿Ll½Ñuý:ÛUÒîÓ†Û›¸&\3 8Á#šè+ð³þ ëý»¿á´àŸÞð_‰¼⿆b/øBÿbÿ~ñ«lñ£ãƒ? <¤_øÚçO6}Æÿ .¡ý«i}á­NÞ-_Añƒ¯XÝİ%”ÓþéÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3_‘?ðtwü £öæÿ»fÿÖÃýŸkõÛöBÿ“Mý—ÿìÝþ êµðÍ}EPEP_9þØ~%¶ðgì‘ûRøÂôø¼YøSösøÝâ[³ðûÆz·Ã‹m ៉õIÏ‚>!èºï€ü_åZ¿ü#^3Ñn­µo ë?b×4ëˆo,a‘~Œ¯9øÃðË@ø×ðâŸÁ¯½Ü^ø·ðçÆÿ ¼K%ƒ¤wÑè=ðΧá]e중$.ÓNÕnZÝäÑfÎŒ ©üý¦<5âø!¿üsö’ý§¿áªjïÚwö¥ð—Á]Á6?ÿjÚƒãÇO_übø™â¯ xBÖ¼ðgÇÞ9¾øY¡Yxoƾ!ƒÄZQÓ<ÿ zxGH¾Ó5þÑ¿ðVÚá6‹ûHé?¶Høçñ1 Ö<þ"—áßÄ/‡ú8øcÅ1þÑžð'Úì4ýKÀ³ýÅ­ÄŸ…~ ÕôýFóÄ÷׬¼G ÿÂÀƒE·_‰š_…t«†Ö?D?ਿ?ઞø5â¯Ù;þ SÿîÔükÿà 7ᯇ?i¿þÐÿ³?€¼ðç÷þ‹C¹‡á¯ÃücÑ>#ëÞ(ð¦ŠãDÒ5¯ÚxSJÒ4ÒìíÆªú©û"üj¸ý¤ÿeÙ‹öмÓáÒ.þ>~Ï?¾5]iVË"Ûé—þxkÇ3éöë,³J°ÙK®µ´K$ÒÈ#‰CË#eÐÕá²×ƒÃÙösøx¿õ_„Ëà?|>kÚÿ†üW®|4øáí |?Ö|SàÛ«ßø—Uðh±ÿ„sQ×ü)ywá½fóM›QЮ®4»›Y_Ý袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š*ž£¨éúFŸ}«j×Özf—¦YÜê:–¥¨ÜÃe§éú}”/sy}}yrñ[ÚYÚ[Å%ÅÍÍÄ‘Ã1¼²ºFŒÁ6’m´’M¶Ý’KVÛz$–­½Š„'Rp§N©R¤£Brœç&£B1NR”¤ÒŒRm¶’M²å~ÿÁYà¹a]Å þøƒÂ>-øõgcwo®ëz­ý¼ßþ \=»4mâ9’AŠ|y·yÑþiRÏx/ÒµØÖil´ kóûþ óÿè^ðGŽ< û,xÃSð·Âíò/ üLý§t¬®ÿÁþ.ÿÁQþ1xCöÏý©t¿Á>¾ü}ñ½ðÏöøÃàH-<}ûEéV ¼Ú~«âKÏì»sâ¿Üx‚ÏÃ0øºïÄ7zç…µ+«¯‰~ø{ö KÏ™?:¯æ|a^®YÂ8‰`rZU%C5ã(Â3Sp“…| Âqtñ˜»©R­œIO|ϱx•ìÌ«Ãú9eywý"rz|Qâfa„¡šðÑ®®"¦¦ž&”1gøñˆÂէᾕ9ÒÆå¾aêaø³Šc*1Î%Ãù$ëÔÅ|­û6þÎÿðWoø-·‹üsãOZ=çÄÿ4›ëÿ~ÞŸ´xñž‡u⸼3âè<;âï ü*ñÏ…ô¿Mi{qsosá&ð—Ãí%wèžñ…üCã xSU¿ðµ§÷Oÿ¯ÿ‚6þÉÿðJ/‡ºÞ‹ðvÏZñÿÅ\è×Å/ŽŸGÕü1øuðcÀ>øWð—ÁøoðßÀÚE¾àÿx/D°ðï…ü7£Úîhl4L‚ÚÊÎ2Ig—ʈ=ÅÔÓÝ\<·3Í+÷5ö.G–pþ~W‡T(FR«Vr”ªâ1XŠ–u±xÌMG*ج]y.jØŠÓI»+¨Æ1_Î^&ø¥Æþ/ñV'‹øó9©›f•hPÀàpô¨ÑÀäÙMƒ‹§–ð÷ d˜8QËrÊè¿a—efƒÃCšjœ«U­V¡EW¬~|QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE'ßðEoøkàü3þ íû"øŸYÑ|1ªøëöªðgíð¿ÃÚ¾¥¤éZˆ_âË|Nø…â›/ØK¨u_'BñŸ‚u=?OÒ¡–â×F[››»[(â6ðX5üpÁ~>|ý‰ÿà£ðJø+߆¼)|Q¯~Üß¾~ØF½âC¦ø·Á·~ð†<+}®XjzÝÏ…ü;{àï‚ÿ~&i¶·Òt&ñ–“M«®‘§Ëeý}øCÆ^ø…á­Æžñ_†üqàïÚ ýÅž×4¿øk\±2I½ÑõÝê÷KÔí ±K¸²ºž$r&ýÈÀt”QEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEóŸí‡â[o~ɵ/Œ/O‹ÅŸ…?g?Þ%»?¼g«|8ñè¶Ð¾øŸTœø#âqk®øÅþU«ÿÂ5ã=êÛVð¾³ö-sN¸†òÆèÊóŸŒ? ´þ)üñ[ÝÅáo‹|oðËIJX:G}ãß ê~Ö^ÊIHÒí4íVå­ÞHÝ`ŒèÊ ÁÚcÃ^ ÿ‚ÿÁ'?i/Ú{þ§ö®ý§j_ |Ðücñ?ö¨ý¨>7ütðõÿÆ/‰ž*ð—´-kÁ¿|}ã›ï…š—†ükâ½â h®4M#Zñ§…4­#Ä6«¬ÁcãM.ÎÜj ªŸ²/Æ«ÚOöPý˜¿h«Í>"ïãçìóð[ãUÖ•l²-¾™qñOá·†¼s>Ÿn²Ë4« ”ºë[D²M,‚8”<²6Xý ^û-x0|8ý˜ÿg?‡‹ðÿUøL¾øð‡Áƒáf½¯øoÅzçÃAá‡þÐÇÃýgÅ> º½ð‰u_‹øG5——~Öo4Ùµ êãK¹µ•ýÞ€ (¢€ üý¿ÿàºÿÿd_ÙËãŸÆß…?²Ÿíñ¼|ŽÓHÕ"_ß5ý‹Âltkñâ;OÞJüÿƒ£¿å·7ýÛ7þ¶ìû@¬?±/Æ¿þÒ¿±ìûFxÛNÐtü~ý˜¾ükñv‘ák}BÓÃ_‰þ*|*𧎵ý;Öº¶¥¬ê¶Ú Ž«¯]Ûiúž±«jéñ[Ç{©_\¬·RùWüGþ ð»þ ×ð&Ïâ×4-{â|wãüøðKÁ²[ÇãŽ?¼lóÁàχ~žé%³Ò#¿šÞ{½sĺ„3Yh:E­ÄñÚjÚ¼ÚFƒ«Òÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþt?à´Ÿeñïümÿ#ýš5‰îçð§Ã_¿´<IòßMx»âÿ‰,ô}Uí®-¦¶–ÿO¼ýž4ÃotÁï4øÞGÓeÓ®n Ô€¹ú¶½ÿœð¿ÂÙ>1Üèß°Žü_¥ègÅZÏìgá_|zÐ-~Ú¿ì?d_ÙCÁ¾>×|;ã^_ ü<ø ðòÝõ‰ß«ámÏãÏí%¨ø—Ä(Öjÿ‹~ ð}çÆ+)|E¤7‡¯ü;ðû]M:óZøuàû[Øum#Jñ íÿ‰/µ½~ëÄšÖ«iya¦é_°ù¯µS0§‹É8)µ*Ydý¦9âŠ{ª¹§+…l¯%«½<º2†;MóãeB„㇗õÌóžú"ÂxNÆð÷ŠIÚp•,ÃŽpëÄxNÓÀð­N¾YÇ~&àãŒã:Ôñ\/ÂxØ,? ÑÍsL=\â‡óÝÿ´ÿƒdý°à²ZF‡¬Á©|9ð’|-ýŽ|?wâ]xôÝnâêÆÏã\M%‡G´‹X¼ð&“¯ë7þ!×üuâKÿŠz’xª×ZÓu_î–ÎÎÓO´µ°°µ¶±°±¶‚ÎÊÊέ­,í-¢Xm­mm¡T†ÞÚÞH ‚$H¢‰8ÕQ@(¯ÑpøzJpØZ4°Øl=8Q¡‡¡N¨Ñ¥N*4éR¥MFéÂ)F0„Tb’I$ã,Û7ÍsüÓ0ÎóÌËœç9¶3˜æ¹¶i‹Äcó,Ë‹«*ø¬n;Š©W‹ÅâkNukâ+Ô©V­IJsœ¤Û (¢¶<ð¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(äoÛö&ø ÿýž¼[û9~ѰñoƒµÕŸUÐ&½}U'ðomt]gJð·´‘£êúÔÚ¿…eÖ®¯lí%Ô#±¾ -•úKkq*ç+þ Sý»ô;Ÿšÿü/âÈñn‘ûY~Äš¿Ç[˽ZÒ%M„ZoÆ 6 ¨ìš.¡¤ØIcᨴ_°Ó­Ò _뺿ø)/ů…ŸðO¯ø9Cþ éûcü\ñn™ð›àíûübøñ—ÇúÍì¶^‚÷Àvßµ-U× i,“)×|EðgD¹ŒoZMì=í£‹ëÞŠj:H‰$n²G"«££GF•Ñ”•ee «AH4ê(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¼#Xý©f?jÚ¦¯þÑŸ4=wCÔot}kEÖ>/|?Ó5mVÓ.e²Ôt½SM½ñ š~£§ÞA5¥í•Ü0ÜÚ\Ã,űºÇø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf¿ÿàæ/Ú;özñçüöÖðŸ¾<|ñŸŠu_øgì¿ xO⇂ h´gìÿñÏö{ñEíΛᯎÿ~&üñ£gÏw§èü­ø#V½µå&¹µ°×.'‚&š’XÕXÁ.?’ßÚÿö[ÿ‚ã~Ð?²/íÿý¢¿à¦?`›?…ÿ³WÆÚoá‡ìû#Ùx«Â7 Ñ~ü9ñoÄï |5ø½ñ“Ã<øy®ê¾3ŸNÒ4ý/Ç·ZŽ›ãÛxuÝKQM5´Ý7CÓ¼>?§ÿÚ»áÅø{Oøû=üQñÏÃÿ¿´Ïëß ¼;kâ}F_ƒ?îæ‚ÊúóáWÆÿ…×÷àÏøoÇضþ³ñа°ø™ð©õ[¿ü8ñ†ƒ<ºÅŽ·ü£~Ùßð_uø?ûþÚ?ðL¿ø)çÀ?ÿoMGöBý gÝâ…ü-iâŸÙûö‹×|gð‡Æ_ ¼ñŸÁ>'ŸZÒüA¥ø_âN§}a¯jþícGðü·š•”ºÚêzn¡¡iXø£þ+ðïüM®¿c?ø#¯ÁoŽÿÿiUß…$øÝñÁ1ü?ø-û-x?Ä0Ë£ø‹ã·ŽµX|A©ø‚âçÀV7SjÞÒ$Òô;YñZe…¦­¬ë2iÞ ñôÍðâ÷‡?h?¿~=ø9&‹Â?þ|:ø½áhîY^â?|Jð†ã= .U¦M3ZµYYQ¤ B¨8¯^Qðá‡?gÏ¿~x9æ—Â?>|:øCái.URâO|5ð†àÍ îYÕf}3EµiU]Õd,0>¯@Q@~ÿÁÑßò‚Û›þí›ÿ[ö}¯ßêþUÿààÏÚƒ^ýªÿàœµoìMû;þÅŸðR_ŠŸ<{⿆^Ò®tø'ÇíYÃÅ? h‡ü,ð›+Ç&^ðçÆÿÓÜ[‰pfžO‰~·EO:¼®#“)û=ÿ’ý²¬­ÿdÿØ/öDñçì©ÿø=ñƒá×ìÍð3ào‹¦ø¿ûþÓ¾øe¢ø»áÁŸøcÄ7Ú¯Æ sáÄ 4ê7þ¾þÁÕu¯i¢þK­6ÁàƒR¾‚ÍïÿÁi?à›¿ÿm/ ~ÌŸ´_ì¹yáý?öÚÿ‚ülÐhÙÚÇÅš˜Ð|)ñ&-3Ä>ñŒ¾ø‹Ä†¾1“ÁºÐµ[óý†ºÎƒ¯Í¤h%ÕüE¢€~ÜWñ1ÿåh3øŸþ cÿ |ZѤû_ƒìÿi_Šš z‚Á2Cw?Ä/ÚÏ㯉t #yV6ÍÒü©N`–5›l‘—XÊoè\ÿ‚ŸxÆãá-Éð/üçöýÔÿkK½Kölñ/ìÁñ?Ã^Ó~"ÜZ-½•ŸŠ?k][CÓ¿d…øse¯M jþ8ð÷Æ­bý¼1Ö­¦x^ïTA¡WÿBÿ‚hxŸþ »û.xªÇã>¿¤xËö¯ý¦>'ëÿ´í=âO?@‡Çž);¬¼áË•‚Ñ/4?ÙÉsç_­²Ç©x¯[ñ^£`ãE»Òmm@? ?àË¿\x áOü‡á†¯*ÿÂOð÷ö—ð?‡µûQ‘¼_†ü[áæ•‘²fÔðÆàŸ xsÁžÒí´O øGAÒ<1á½ÏÌû&‘ h}¾•£év¾kÉ/Ù¬4ëKkH<É$“ʉw»6XïPEPò·ÿmxgCñ¯ìMû x7ÄÖ_Ú~ñoücöfðψ4ß´ÝÙÿhhz÷Â_ÚGJÕ¬¾Ù§ÜZ_Ú}®Âîâ´Ù][]Áæy¶×̉"ýMÿ¸ÿÁ ?èÆófl?þˆ*ùßþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔù£ûÿÁ?àðNø³âwìkû;ÿÂñÇŽ| |âsþßÇOˆ_Úž:Ιâ¥füTø›ã"Ëþ&ú>wöí;O´Ô¿Ñ¾ÏöϲÍ<þ—QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQER3*+;²¢*–fbUTe™˜àI 2x¯åGþ ÿ ü7ýšü3ãO„²Çt[ÿØÅ£ø«ãu´ÖŽ•¡_À²Cyáoƒ–wÖÞ9ñã˶ÙüG W¾ðìm=ݳßÍέáß ?â,·‡pÔëãeV®#Sêùv[ƒ¦ñ–i‹jðÂeøHµ:õe§4›1~ÓV•$æ¿Vð“Á®3ñ—<Æe|1GÊr<öÇñ¯c!“ðOðí9òâx‡‹ø‚¼^+Ëè¥5F’U³μ~¥”àqøéÓÃKôkþ —ÿŽøÿîð–·áëC@ñ×í4¡yƒ.5$‡Ãm. †{?|UÔ­î"›K´šÞæ­ÂÖr¯ˆüHe´X×JÒïcÖÓø˜ø[ð+þ ­ÿüqŸâƒ“Å>ý>+^xÿÁ?ÿmO‰^ÑõYøIÒ/ìõo |>ðmíΛ¨éº:\ȾÑ|;ðþ;MJI¤Õu Z¯‰¢OÖ¯ø#·üïÆ¿¶N±7íÉÿ`øâ‹ïøž_„ÿe/‚ú·Ä¤Ô­üqÿ A›â-÷ÅÚÛFÕn xkLoêÞð-Ço‹éc5‡ˆ~7øãÂ:°ë¶’__E§ZGªx—ÄÏá½ Þy“@ѵ(´©/µ9­äÔnH袾üþE (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þwÿàèßÙëÀÿàŽ¿´÷Ž5øCÄ?~iÞñÿÂßk>Òµ?ü>¾4|*O‰Ÿðˆx†ãN»Öü7мeªi^ E¼ÓáÖmíì!Ö^k+5Xÿ¢ øGþ …ð;]ý¥?àœ¿·ÀÏ h7>)ñ·ÄoÙwãF‰ðÿÃvio%Þ½ñ/ë:ŸÃ½"Ô\«B.uXh6°Hv¼RȲÃ,3$r ¢~Ÿ?áo~Ä_±×ÅssöÆø™û,þÏÞ>’è®Æžoü'ð—ˆ&‘ãòmÌR4ºƒù±5¼ ›£x!e1¯ÕUüçÁ³ßµ¿Š~6~·߲ÄÏ„ú÷Â_ŒðMYþÇ´­{X³Ô®õ=kÀÖ×Ö1Í5•–…¢ÇáÍGB“K¾ðޝ I>»qo}á÷½›^ÔüÈ?£(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ñâÏü‡ÿcøãñOâ_Æ¿Š_±·ü%~0|@ñ—Å/ˆ¾&ÿ††ýªôOøH¼wñÄz—‹<]®ÿcxwã–‘áý#û_ľ¡¨fhZV™£Ø}£ìºfŸeeÑ~ßQ@Äü«þ+ÿžý‹¿à“ßµgí/û4~Êð­~6ü5ÿ…ÿWáyþÒ^1þÅÿ„Çö“ø;àÿÅ9ãÿŒ^*ð–£ý£á/kÚOüM´ÿ±ý¿íöeÔíl¯mÿ¯OÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEâ´·ÆDýgÚö‚“ߣøðOâ¯ÆGðfˆâ=gÅÉðÇÀš÷›ÃL맯®†t«0Ìêî&1HÃí•ó¯íãÿ|(ý’ÿj?Š^Ò|%¯øßá¯ìëñ·Çþм}¦j:×u¯x7ᧉ¼Eáí'ƺ>¨i:¾­á-KWÓ¬ìüG¦iz¦›¨ßèó^ZØêw2Åsç¿ì?h/ø(·ì»â Wþ ÿþý˜<3ã=#ãŒôo‡?µo xCã/Ãïü+M7Óhž>Ó4ŸëôÈWXÔ%Õtˆ|C§x–]7Çvƒcâ½LÓtOIûOé‡Ã‚ŸfŸjÁ_„_~øÎ9µ}OBøUðûÁß <)v0K4úÞ‘àý#DÒ—ì¶Âg{™-·E˜w-_ÆOìGñ3þ¿Ñ~ü=ø‰ðöJýŒ[öiø—ào øóàÀ߉>0·o |4øuâý ÛZðŽ‘à»oþÓÑ|oð…×AÔ4ËŸ|8ñoÄ}FÃáö”º„ô_ øOKÓ†¬þ™øÃûEÿÁÝ·þ)Úë_°oüƒGÑ®~øÞßVÕ¼âÛëŸézdÞÔã¿Ô|)m¬~Ùz¾‘qâK+V–çCƒUÒuM6]R+Xï´ëÛV–ÚPë_Àþ6ðÄ¿x?â?Ãÿé1ðÄ øÆÞ ñw‡ïaÔ´øGÅzM¦»á¿èz³=¾¡¤kš5ý–§¦ÞÀï Õ•Ô3ÄÌ’)=E|ÿÿ”YÁ4ÿìÀ?cýg_‡5÷ýQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWžüWø±ðãàgÿ|Yø·âýÀ¼§.§âok³›my«ëšÍý†£ØÞê—Ö–“~wÁH¿à­_³ÿüŸFðæâ-#Ä¿þ6xúã_Ò¼ðáß„nõmïLð³kö~.øÅy®x£Do‡ ÚúûÃU÷ˆc³ñŠîω¬fðo¼`ö÷ÐZþþÎ_°Oíéÿ™×<+ûIÿÁE>-ø—áÿÀ×ð^¥¤xBÛáÅ®•ðÿÄÂHúœÚ¡ðkáž½áÏx3úêúÎ¥«|Tø‘£ø“Å>0Òô½EÒì¼AáÛÝ7YðOÈçüQõ U<&Âÿmq>*Ÿ´Ãå”êrPÀГåþÒÎñIJ9~]M´Ó’xœd—°ÁQ«Q·è |ÿ[r,_Š>%çÿñ ¼ Èq¯›qÆ3 õ¬×ŠsjIU—ø_Îtjq‡â馧 5)äœ9‡rÍ8›2Àa)ž'€ÿ‚ŠÁ]k_ø(w‹|GûÿÁ-þ|dø‹á‹‹›-ÄWtmN×Ä>6Ò¼Eqq¦iž$øÃãSokáïÙÇànµyg©ÁdÞ7ñƒ}ã-:ÒEñöÖ·á Sþ yÿÀxæßâ—†j_ø+wˆ~ü\Õ<;gãíÂÿ±VŸá‹|&З]´½Å>-ñŒzìzˆîím.5Û? §„µ¦ŠâßÂ:Ö¯ã½CUÑSHÓ¿­_ÙÃöQýÿdÇà/Ùãá>iÙø~ê>ðÎ¥ø£â§á½×Ãö,øâ«+}wâ/æÓm"MKÆ>/½ÕüC©LóOw,“9?BÑp¿ö~&¦wœâ¿¶¸£OÙâ3J”ù(`¨=³2L+rŽ]–ÓmÝA¼N2w¯­Z£J‹~;ÿ­ÙÂÿ 2ø†>dÅ‹Ê8Œx¬ÓŠ3jKÙ®7ñG>„(Õã.4ÅÁ'N¥xSÉxo á•pÆ]—àéT©Š¥¦éÖ>a¤iVvÚv—¥ÙZéÚnŸg[ÚXØXÁµ¬…Žkkx£‚£UHâEET »EõÇó¸QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü­ÿÁå à¶?ðqÀ+ˆc±ÿ„›ãÁ_ÚFÓ–;+vOøNÿáfø¿ÄÚ¨K]:Ö[¯íÃñWÂwÓI<ïäI‰[í—š•ö¡?õI_ÇOíÉ¥~ПðMø8göký·<ã‡íðþ ÛñGà'ìeñcÂÓiúž¡â½._ X|øsý£©Í©ik¡h_i—OðÍþ…­èÚÌבéº_ˆm5 8ç{çþŨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾¯ÈŸø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¯ ý¨¾-øCàìÍûDüxø…á«¿xà§À¯‹Ÿüqàë ].úûÅžøoàxËľ²±Öæ·Ño.õÝF½Òííu{ˆ4»‰®’ù¢´y]}Ö¿•ßø-Ÿˆÿà» ?aÚ®mà?´çìé⯀ß~ü|¸ø}ðöø5ñçÀß<{à=kÂ>8ø‰á ø›ö¹ø±àÝE¼#á­gWÖ¯gmw[ºÐÖÊ ^O x“I¶Õ¢´þ|6qà_Oá]ÓÃ~›Â^›Ã~°±²Ó,tMÍô}ËMÓU4í>ÓKÓšÞÆÞÆÁÊÒ UX#Œ•~8üZý°>øƒÆZžû ü,øåû;hv·2Þø'ö›Ö"ý¥üM  ÆçÆ+§~Î^4ý›4„Ú…þ›zþ ÓôÿÃVÍuã 2ÇI¹ˆiÚ¶¿7†´æ¿ÀŸ¶ümàÛxkþ Sûj·ð§‡ ðýýçÄO%Ýö‰‘g•ytÿ"±t¹¹°X&ZÊÍ–W`ֶ䓬ÿàðŸÚQ&ø3â_Ù[öý†¼?ãhdÑõ¿Ú[þ*ðLj¼IðïIÔöv¥ªxoLÒ?kÚ'P“ĶW“ê:<¶¿ ®gŠÿO€Á¬hó˜®ú±ø1â†.ø=ðŸÅ‡‡ÇÁü5ð/ˆ~ éPh^ 5¯ éZ—€G†tKkK mÃã—:Oö6•oce§}šÒ+KháXSÒ«É>|ðçìïð#à§ìÿàéîî¼#ð/á'þ¹¿Úo®<9ðËÁÚ7‚´9ïJ–_µË¦h–²\mf_9ŸŽkÖ袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿›ø*§ü7Ã?×Ųçì5«ËñöªÕtÜÚüjðÖ‘àŸ‰_þŸëbKíîoøI/'ñÏÆ9|-l—z4Ï ëÓ—Å>ÕüY®YºÅáíSÁà¢ßðU¿µ·Æ=;þ éÿÁ¾ñ·ˆõ¿üTø/ñÛâ=·…ôÛ[ï%¹ðî—ðOÆsj7÷^ðfŒ©ãmgÆßSNÐ&Ñ´½K×>ëâÁîüQcú-ÿ¬ÿ‚2üÿ‚{ø[Ã0ñ&•á¯þÒ6š5æœþ*Ò–õüðÚÇS¥ç‡~h÷ÖÚtQ9·‹ìº‡5Mê«w¬Ahú‰®jz%ÏÀcø‹1Ï1¸Œ‡‚åIÔÃUx|ëŠkSUò¼Ži/i…ÁSmC7Îáu…„¾§‚›„±õy¯†—õßx7ÁžpÖMâ×Òb–:,ëO9ðÓÀ|·,¯*ª*¢*¢*…UPUTaUT`08¥¢¾‹ áÜ»‡pÕ(`£V®#SëŽeŒ¨ñ–iŒ’´ñy†.IN½YkË£FŒ²ÃÒ¥I(/Ƽ[ñ“ŒüeÏ0y§ÖÀ`2œ²n à®ÁÇ'àžáÚR¾‡¸G‡èJXl¯/¤”]z­×Ìs3Ónüâ FÇUñƒõ¿x×_ðn£¤k7šlqYËsqý‰¹hÐÆ‹&‘¬i³c÷¹?sM 7ËoqsÁÒtw¸VÕ[ý˜?à¦ß>4þΞ#ý§ðΛo~$ðÏ‚<ñëâOÅ–´—Ã!µ¿jZ‡Ã+Âúþ‘j±èö£¨^é:~¡ùïû>Á~¾0þÐ>×j}þ EûKéŸðLÝWñ7ÿ¶¤?¾ë>0±ðw…oå±ñ'Å)¿eHôû‰>!øsáíµ CÆÞ øcâˆãÃöZ'ˆâ‚ßVÕt KK‡È¿àåïÛká8ÿ‚1iþýžüyáê·î¹ðcá¯À #áíì–«ãO‡âÇž"ºðn…¢³Ï.†Ú…lþjê,¾É§^xÊÇÂó%®¹©iÖÕúý ê¿ÿà–ðJï‡:wí ©xKÁß ÿeoÙ+À>ñå®§y¥ÛéÞ(×ü'ð×Lðö±á}5I­¼Gâ‰*·½Ótí:ÏûB÷Å> ×BÀ—×ÌÒ~èú¾•â 'K×´-FËXÑ5½:ËWÑõm6æ+Í;TÒµ+h¯týFÂîx.¬¯m&†æÖæx§‚Xå™Iѯ‘?àŸž ñ¯ÃOØ/ö#øqñ* Û_ˆ¿ÿdOÙ³Á>>µÔ„ÃQ¶ñ¯…> x/BñTâà,âövÂþ;¡:‰„ë ”Ü+ëº(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ÊŸüËcâmOöýˆôßkVþñŽ¡ÿPý›,|'â+»85]Ä×i84jçOº·»¶¿·ÒµY-o¦³¸µ¹‚ê8 ­æÚ6é¿á…¿àèŸúMÿìïÿˆ[ðÿ¡â€?¨j+•ð&Ÿâ½'Àþ Ò¼w¯[x«Çg…<=§øËÅvú]§‰§-…¯ŠGõqûþÃÿ?a?‚øMðÛIÒ5oéÞÑ´Ÿ‰_®|'áâ/Æé×:¶©sâjš…½Î ‰­x‡_›ÃÝî¡aà½PÃz‰§Z!“ó§‰Íxýºy}LfIÁNê¶ii„Îx¢žÎ–UuÙ^KQ]U̦¡ÇÓ|˜(С)beý— —€¾ˆÑ†3‹°œ;â‡ÒrœaW-àjÏÄ>ø‹²”qü|éN¶YÇ^&`¤ÓÁp] ˜®áLe7‰âzù®gBŽMC’ÿ‚ÿÁ<¾ Á=þêÞ ømqªø«Åž3¿ÓµÏˆŸ|Um¢ÂIâVÏEÓ´ÕÑôÉt­'O›Hð—ym¨ê~ðÍÖ¯&‹s¯k7:Æ«¨ê7º…ÇßQ_—åø«‡ËòÜ- MRÃá°ðTéR‚»´b·r“rœäÜêNRœå)ÊRÈü_ÆSÇüKœqgÙŸqFŒž?8Ï3ŒULf?‰šŒTªÖ¨ß-:T¡N†ISÃá0Ô¨áp´¨áèÒ¥Š(®ÃæÂŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿œ¯ø9_þ ÅðßöÂý„~#þÓRKã=ö„ý„¾ü_ø½ð_Ä^ Ö ÑCivðxSÅÿ´ŸÄšeÖ£­éÇÂ/åÐá²Ôt«SžêöÖwûeÔÿFµÈ|Að7†þ(x Æÿ $ÿ‚MþЇíIÿÓýˆ>:ëwÓjž'ñ¿ìãðÑ¿ð·Šî¾Ã¯ØhYhW:]ÏÚ¬ïn,®µ¯Ù þM7ö_ÿ³wø)ÿª×Ã4ôEQ@Q@Q@˜¾ÿ‚1ÿÁ/|ûS¿í§á_ØßávûHÂM7­¼qo?‹¤Ñ4¿Ï|uFñ¶…ðÂçijü'ðÿŒÓVfÖ-üY¡øOñ ¦²Í«Úê0êLn‹?lOø#wü·öþñìkß‚ž1øÏâkkK -6 Sö”ý©¼3àý 6Åtø?áøsào~øyáy¦·V}JëÃÞÓ.µ›Ù®µ-^kíFòêêoÓÚ(Žøwà/ ü*øà_…þ´¿ÓüðßÁÞð„l5]Ä>+Õ,¼/àýÇÃÚ¦¥âêšçмIm¥iÖÞkþ&Öõë &£­jš†¥ssw7cEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEø{ÿ[ÿ‚Õüÿ‚{ø[Ä~ð¦­á¯~ж¶A®´kûÒÞ øW Ô1Éo¬|G¼²š9æÕeŽx%Ñ|¦Îšæ¬Ó[É}.‘eqe.£äçYæYÃøæ¦!P¡•(F2«ˆÅbj»QÂ`ðÔÔ«bñuåîÑÃЄêMÝÙF2’ýÃ/ ¸ßÅþ*ÃpäÓͳZ´+ãñØŠµ¨à2lƒ%Á%<ˈ¸—:ÆNŽ[pöUEûlÇ8Ìñ|0u%^­U>Ýý¹ÿà Ÿ`o‡'Æ_õµÔ|W«ÛÝÂð¯C»´>5ñ½Ýº°’kkiœ®á› ß‹µDM#L –±›ýfëMÒ/ÿŠ?Üþß_ðr—í?âý;Ãì~~Ï?$ðþ§â߉7–>(‹áŸ|#â¯.wàÙßO´Ò¯,|ðVƒàh0¹™ìô/XÅem-õã>§«ê š–·¬]—¾Öu‹»íVþY¯o'•þ?’f|_^ŽgÅØy`²ZU#_*àÙN3SpjtqÜS(7K‹RŒjÑÊ ç€À¾Uˆx¼B“§ý›xŸÀßG<¯0ࣾoKŠ$ñ§ˆb°ƒ]ñŠüUâý_^ñ?‰×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?;ÿà¦ðRß‚_ðJ¿Ùû@ý¤~>øã7¼ âоøE™ð;þ ñ7Š´íÅ^ñ‡ˆ´Í[S°ñÏćT~ø2ïJ¸º´Öï55Ö5]Þ"{[‹ËÛÅoø‹ãö ÿ£3ÿ‚¡ÿâ;üÿè—¯é ãÏìáð¯ö‘´øSeñWG¹Ömþ üsøgûDø;{¥¶[‰ß u+WÁºÒ¼ yekswp.lÏŽBhdT‘}Þ€?”oø‹ãö ÿ£3ÿ‚¡ÿâ;üÿè—®+âWüóû/ï·…ÿdø)f™âaà¯ê^ ø'ð‹ÃŸ® üéÚç‰lÿh=rïÃÚE¦¡öyõ-r×DÖ.t›(翃KÔ%·[I¿®êø“öËø—ñ÷ᯂ"Y<.‹5†­ã¿Ž? ´¹u[©´ÝR]'NµåÈŸðM_x»â_ü›öøñÄz¿Œ|{ñö(ý•¼mãox†ömK_ñO‹¼Wð/Àšï‰™ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ Ži¡¶†[‹‰b‚Þ¤šyæ‘b†bRòË,®U#Š4Vy$vUERÌ@×ñ+âgÃñįŠ~0Ð<à/ Øÿhx‡Å^&Ô`Ó46ݦŽÚÝ$¸”Íy{=¶¥éÖ«>£«jwVzf™kw¨]Û[KüFÿÁGÿà±?´Ÿükât?°Çü£áŸÄ=Ã^2×<=á[»/iZòë^-±ñ.·ƒiãÏ$Ð,oâø3ð;»µ\隥ÄW:Æ“e-÷Šnâ‚êãBðïÌqá²IaðT0õslÿ0RYVE‚”~·‹q|²ÄW©+ÓÀe´dÓÅf8®Zb¤£íjòÑŸî~xœø£K8âŒÛ8Ëü=ð“ƒçB\}â¿Ò®ø‡áY{JYNU„£loñ¦eI8ä<‘*ù¶g^t¥Wê9¶Ì(}‘ÿ–ÿƒ‹<ðDñ/ÁoÙÅ–ú‡‰¥–ëÃ^ øÝ¢G­pú©ómo<%ð2Ć\ñ OåÙÜüFxçÐ4hå’o ½Å캊tŸŒ?à—ÿðn÷ÆOÚ«ÇÇö®ÿ‚»h>0ð§‚¢¿øuñOàoìÏiãxÿ¶¼Sâ Ýr_xTý§-¯tëïiËgoe¡ø‡Â×—ZWˆï›Å>$Žê÷AšÌÛ\~ÄÁ¿à¾ýuß þÕ_´‹ávÿÁ@F‹ãXñ·†ü5Ñ|a9ÓWÂß<-©h>½’ÎÓÂ06óľ,ÑŽ±¨_kþ)š+; {»8í¿¢ªáÉxcñÐâ>)ÄRÍx‰Fk N”f²Ž£U/i„Épõ.ý¬•¡ŠÍk¯¯cToB‡îªñ3ÇL–<+‰ðgÀl›À^ ʾ§ãs ˜yx‰ãe—ÊO Ÿø›œ`­ìú5±YåUW píJŽ·&iš§š DHÑ#8ãUDDP¨ˆ *¢*€ªª PEö§óQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñ“ãÙ§á·ü[þýŽ|sðÏRñn›ðëþ eá¿Ú³ÅŸ4¯øž9ôoÚÅüMñ6³wá2ÛLÒì Ó5oj?t­+F½“QÔ,®µÝFhu)Œöö2fÕüºÿÁÏÿhH¾~Ì?ðRßÙ›_øwá߈ßðKx»ãäÞ6}NãRÔ¼9âíCá–˜öÐ-|/¬i(’wÃ:-þ½¤x“^ð¦šÞ·ÕEµåþ¡4LýEQ_3~ÅŸ/?iOØóöTý¡µ)l¥Õ¾9~Î~-kGO†+k8µÏˆ_<9â­nÖHn.£±û­ª^ZI§‹™šÂXÎIH×Ó4QEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEW‰þÒß4ÏÙ¿öqý ?h}jŵ=à/Á?Š¿5m5T}CLø]àM{Çö(ðAs:5Ý®…, ÐÛÜJ¦@c‚W {eyŸÆ¯…>øñðoâ×ÀïÇ$Þ øËðËÇŸ |_+Í/…þ"x[Uð†¿IsÖÏ#éZÅÚ¢ÜC, Ä b’2Ê@?‰ïÛsþ äÓü}û8ê?ðP¿ø)çí‘ûKüLý¬¼Eñöoñ_Ç;Â^#ð?†> üø]ñSö‚øCáŽþøw øŸÀ?µM:ÓàßÂøÞÛáæ§i¯è^ÓuÏ øwSÖ<"þ²Ô´Û¿¢þ3øâeøŸ¦hþñ¤Þ °ð%ÕÅ®±sÃ?¿ooø8oöA¿Òàž^8ÿ‚c^þÚÿ4,~üÿ‚…é~"ñÎû?øŸÂÖïý—኿µm/À¾(ðé¹µÑ_N¼ñ„zçÄ„ž-•´ëá¬Ùê^$¸¸Õu êÇà­Ÿƒ´ÿƒ l>øKþ‡ö? ¼gà_}’ ?þ¯[x[J‡Ãû­ÅÝ­—ü#z"Xèßd¶º¹‚Ûì^L7F‹#zeyÿÂê~|4ðµ¯Éâ½gÀÿüàý[ÅBm¦ñ&§áŸiº-þ¿-»K3A&±ue.¢ð´Ò˜šä¡–B»Ï PEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@TsM ¼2Ü\KAÍ<ó:Å 0Ä¥ä–YªGh¬îîÁQAf hJøGöôÿ‚„üÿ‚|ü=ðÿŒ~-.½®ø‹Ç—šöð×á÷…- ¸×ü]«è+jº„×SCg x[Lš}N×üQvn"ÒnüE¡ÛÃa©_êVV?ÿ·'ü/àø“ZøÿìÑ´ÏÚâõÕ·‡­4ïŽ^ŸÿgíÄš–µ{k¬ø7ÃöÞ×bñÅψzf—c‡Hð‹/…lµ {O]OÄÓê]÷†/)þÃ?ðGo‹?þ5ë_·üÿTÕ%øCá´ ðþ¥cªÜišH"øÙ¢Gá{­*ßKÐ&ÂÚ„¾ø;YÓ´MLðoöN·öýö? Y|>oÄØÌF:¯p•9†yNÑÌqõÔ¥’ðÜ&•ªfui´ñ„¢Ü°¹= ¬EV½¦&xl<]ISxuàwäü)—øÏô‡Ì³>ð³êUàÞÊýümÅa¥iàxŒŒ¡“pŠ4³ïsl<²\½M`òZæsQa(|ðŸöBÿ‚ƒÁsu þѵ×Ŷø'û0k'‰-¼gð ?7L–[MPø7ð§Å²ø¿AÚ¶§«Kñwâ%ÿ‰uÍfÏñéZ}®µ¡^h7þœ¿cŸØ3öVý‚ü©xöcøQ¢ø |Lž›â‹ØË«üBø§­xgJm'Nñ/ÄŸj .±âlG>£yºâh´Û=CYÖît7M­ärýEzœ?Ã8L†8ŒD«VÌóœÁƦmžã¹gÌ*Çh·¡…ÁQøpyvC …¤£BSç©?„ñƒÇ"ñf®Q”C.Ë8#Ã^§W á÷…|+íèp—à*;T¯Vœñ9ïæi*üGÆ9ÕLV}ŸãeR¶'K °Ø,1EWÒŠQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~~ÁX¼ÄÏø&ü'ÁR$o6­ûþÒi‚gX ]{GøMâ­sòÜHÖ÷^]´:ö›§MpéÌ£´9„r'èpŸüoñ3áÄo†÷s}ž×â€ü_à‹›Î¾E¿Šü?¨è3Mº,ȾTwìû£ÆÜ§Ì~MÁ»þ9ÿ…‡ÿZý€5ÿµ}¯û?á±ào7ÏûFÏøV|sð×ì¾g‘o·ì_ð‰}‹ÈòÛì¿gû7Ÿsäý¦_Ú þI?àØíOö‰ýš>"ÁD¿àßüy øëÃßðNÿü1àÍ߇ü7q¤Ùǧ|iñÆoüG¾ƒPÔ!·Ö.t_뇄üK¡iÚ¤Nöëä–w[]¯ën€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€>Fý¼?l‡_ðOßÙ#ãWíñ_FñGˆü ð[ÃúV«¨ø{ÁvPßø—^ÔüKâÀÞÑtèîf·´µ]SÅž(Ðìoõ{Ù£°Ðôéï5«âlì&Sóì‘ÿ]ø%û]ÿÁ7|Oÿ*ðoÃOß|?øÏãoü.ŸKЯ>&A{ð#H×uxWÂmq®iñ^£ª[èR/ƒuñ&‹£ê²ê}¶¹yá‹èõ‹=#ô—ÅÞðŸÄ ëþñç…ü;ãoø¯J½Ð|Qáhšo‰"\xÕ_ÁàoÍâØÑí£y<3¨>¼‰%ìÖöhÏ¥-Ú«Ýϲ’y£ˆ;¨ÎðN¯‰6øÉÿúý…>/|K×î|Wñâ§ìoû1|Høâ›È,­nüKão|ðG‰üW¯ÝZé–¶ZuµÎ±®ê—úŒðiöV–PËrÑÚÚÛÀ±ÄŸdWÉÿ°UçÂMCöýŒ/þi^1о_~Éÿ³¥çÁMâ$–|@Ñþ\ü ðtß ô¯K¥jZÆ—/Œtÿ¾iâi4Ý_U°}næ³Ô¯­ÌwRýa@Q@Q@Q@Q@Q@Q@Q@ÊŸü˯ÝxOöýˆüSc jÞ+½ð×üCöl×ìü/ Á%Ö»âK­áí'¨Ûè-¬1O5έ¬MlšvPM$×—0Æ‘HÌôßñ×íeÿJöÁ]¿ðÂ|JÿçMGücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨•ð'‰.üeàø¾ÿÚ׃¯üUáOx’÷Â>#¶–ÏÄ>»×4‹=NçÚõœÑA5¦µ¡Ítúf©m,Ëõ¬ñIn…UEQEQEQEQEQEQEQEQEQEQEQE|9û}ÿÁA?g¯ø'gÁ-SâßÇ?ivzÎ¥¦x¦ÛáÃ}4>1øÛñ@ðåî»§ü:ðMž«ÞÉ©ë3Ág¦ËªÿeÝiú4š¥Œ—Á¤º³µ»™J0Œ§9FŒ\¥)5Æ1W”¥'d¢’m¶ÒI]èkFlMjX|=*µñêÓ£B…r«Zµj³P¥J•()N¥Z“”aNœ#)NrQŠm¤zßíQûXþÏ?±7Á_þѵÄÝ+á7Áÿ\èÖZß‹u=7Äô£Pñ«k¢èÚf“á¯é!ño‰5[ûûÈ„ZW‡4[PKH¯u)m£Ótëû»oã+ãÿüöøÿ‚ÛüR›öTý„| ãϳ&­¯xßJŸUÐu‹Ýâ·íð›UÓO…#ñÅfãN°¾ Þhúž±©èÖš«x]þÙÑ­T·Õ­t«KŸ—>þÍ?ðPø8ö¹¼ý¢ÿhh¡øuðÃCÿ„/I‡ÁZv¡â½WöpýŸ4 X°´¶Ñt_Zš×âgÆ‹ùuwÄ÷z}µäi©âKÉïõ×:OöG÷[û~Åÿaÿ…öÿ ¾ xkìiû5׌|m¬}š÷Ç?5«xLCXñ^µ½·Ÿåo›û7G±‚ËAÑ#¸¸HÓ,þÓv÷œÕÍóN5«SÂøŠ¹g Âs£˜q}4–#0ån°|(§j¥J®}R2ÃЗ7ö|15 ªÃû?áçýpX.*ñã&ÀqÇ8œ62àÿ£¦2ržQÂkJ8Œ·ˆü~©‡œ*áï ÑÇåþakRγ:N‡úá_%˱Àb~?ÿ‚cÁ!¾Á;<%¥jöö:/>>I¤Ë¦ê¿WJû“á]6ò%Š ü/Ð¥g‹ÃZpoµ¾ÖÌkâoyׯ¨ÝYiVÞÓ?\袾×'ɲ܇K-Êp´ð˜J.RP‡4§V¬Ýêâ1¦åW‰­/~¶"¼êV«?zs“?˜üEñ#|Xâ¼Ãxÿ>Åñæ •bq •6 …³ÀåF]†…M’e”-†Ë2|³ …˲ü|Lø½ÿ n…àÛöøeðD×´K;ý[M¾øñãpð/…-õx,TÆš¦¿ðÏD}vÚfy4ˆÖÏÄík16Üÿc4QEQEQEQEQEQEQEQEQEQEQEWÁ¿ðPÿÛ+âì=ðWÃ>þÇ´gí½®ø‡âŽ‹ðòïáGìÅásÆž=ðþ“«xOÆÞ$Ÿâ¯¥èñ-å¿„4›Ï Xxnþþ[­¢Ö|Y [½ÜrÝC ÿyQ@Àïüÿþ 'ûBþÕŸðKßÚwàŽàŽ?ðQŸÙWÂÞ=ÿ…-ý©ñïãÇÂ/ø_áO€ÿáý¡~xÒËþ­wXøy¡iÖ?ð”j>´ðf‡öV×í>$ñgŸ=ÄVÓk_²üšoì¿ÿfïðSÿU¯†kò'þŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢Š+åÛ§àß‹¿h¿Ø“öÅýŸ>ɤEãÏŽß²¿í ðoÁ2ø†öm7@Åßþx»Á>“\Ôm­5 ‹ !5rɵ+Ø,/fµ²Ï¥Ëư¿ÕñGü«ÆÞ.øiÿæý¿>#ü?ñ¯àïü?ýŠ?jŸx'ÅÞ½›M×ü-âï | ñÞ»á¿èz³%ÆŸ«èzÍ…–§¦ÞÀé5­í¬3ÄÊñ©žŸ³w‹¾<ÿÁdÿ„ß ?à£?|/ñÇö[øUàoxOý²|à­ÃÚ×À™!·µÑ<;ðÏãÇÃѯøÛÄ0ø{¥Núoþ|{ð$_½´:5Å_†Þ´K]~Q|`øÇÿ+ÿƒ“¼3ñ3áŸì3¯ûÿÁ-­ôhZ‡íñOIÔ`øŸûhëvV×öÞ ð߇´«ý>÷IøQ«kP¦â›=+[‹MƒEþÖ—ÆÞ'ñ®ïðj××?b¯ø%ÿí¡ÿSÓ¾þØð^ˆ¿ðœü;ð·„<â¿ÙãöðœÂ_ Ì÷: Œö¿i]L¸øI»qmuyá?±ÿà˜?ðD¿|Fñ_·7ü³SñÅïŠÿlü1âôðwĹcÔ­z•xpß þ|;ø+àOü2øSàýÀžð¥„Znƒá­ÔZØÙ[Æ 4’34—7×÷OºãQÕu îõ=RòI¯µË«Éæûú(¯Ñ©R¥B•:)Ó£FŒ#J•P:T©Â*0§Nœ„!¥Â)F1I$’?Œ1øüvkŽÆfy¦7™fY†*¾70Ì1øšØÌv;Š«*Øœ^3ˆLF'ˆ­9Õ¯ˆ­RukUœªTœ§&ÙEV‡ QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü®ÿÁÚqÇáØ£ö9øä³-”ÿळ׎ï5&»Ô­^ÏÃñøCâÀÔÔéÐ\:Ý®±kụ¹+Ö¶ö—Me3]?¶ø‘¡êžðþâ½vÞÏÄöoeñ'EðÞ‰ÿ ߇ïWÅú^‘­Üj:.·w-­õåŬ‰spE¹¸bï@jQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEWñ7á¿‚~2|7øƒð‡â^m⿇<⿆ÿ<-y=í­§‰|ãÿÃ+Ð.®´Ë«-FÚÛXеKý:yôûÛKØb¹i-.­çXåNÞ¾[ý¸þ'øÇàìSû`|gøyo5×Ä„_²ßíñ?ÀֶЛ‹‹Ÿøá7‹|Wá›{{qkzgšmkI²Ž(E•Ù–FT·¼§ø[ö‚ÿ‚îÁbˆš—ìëñŸöÆðwƒ¾ |7X¼1®ø'Â>ø×ñ}¼u£[ÁfÞñ±ðáÏÄFñŽ‹–§ jú¼ö›w özœ¶÷1GùoûbÿÁÿðI‰þ ñ~·ðsþ ëñ×À:–ŸðÃÅ:=‡Ào~Æ·Þ(øoñ_žÇW{M?Çã×ìGwã¥_ È<5©[øOöŠø+¥ÿdG¶úç‡uV»ñ ž§ûRÁàž±OüßÅßtÙOàÏLj_?áBþÓŸþ<üEøoá?‹ß~5i¿~6|*øÛûEkzߎ¼{¤ø»Ä^ø»à|A²ñ·‚ôÝJÏš÷‚|O¯øVkXt}ZòFý??ðJOø%wÄÏ ø'âÂØÿöQøs¨<~ø›ðwã¯ìÝðcá'Ã_è×ÒÁgâ/x÷Â/ð…të_iÅ_NÕít¯Câ?ø£M”éÞ"ðþ½áíJÿN¼úWö ‹MƒöýŒ Ñ¾ÜüÒ!ý”gh´¯‚÷š‡ˆõk¿„:l|–? îµOßjž.Ô®|j"ð¤ú‡Šu=GÄw’é-q®_]êr]\Iõup? ¼G©xÇáwÃok7EÞ¯âŸø?Äz­ß‡Äƒ@¹ÔµÏiÚõƆ&¸»”i]]K&š%º¹Y4!î&lÈÝõQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQU¯olôë;½CP»¶°°°¶žöúúöx­lì¬íbyînîîgxá·¶·…iç™Ò(bG’GTRGòƒÿ1ÿ‚ÚøÏâ—Š®ÿbø&âÏ‹? ð³jºeôVz犴}+_Ñþ«ÿ‚IÁ-ü?ûø÷â?u-WÄÿ´çƯx|W—X>¿Ò¾\äÚë>)øMðÛSÑme¹¹ðô~5ººŸÅ%¹×59~!jðΫ2Ùiº‡´½3ö*¼<³†ó Ó‡â3tkãðóUòŽ¡?m“ðëûSiG4ÎãÕ\Ò¬= ¹SË©Q§V§êœqãWð æþ}a™å\'›ážYâ/Œ®ež$xËËõ¬-9ηøaV´²þÀb>¹šá¡CƘÜÃV¦_ƒ(¢ŠûÃù4(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šæü_àß|BðÖ±à¿xSÃ~8ðwˆm †¿á?èz_‰|5®X™#˜Ùkµk{¥êv†X¢”ÛÞÚÏ ’8ßfäR?‹Ïø7Ëöîý›ÿàž?lOø#‡í'ñÛágÅÁD>7éÿ³Ì^'Ñnto ø›Ã•¦‘áí+EOEi…´Y5›¿ÛëµÖ®ìgñ¾9Ó,47¼I¬¬í¿¶züzÿ‚´Á ?doø)OÀÿMñ'àõ…÷íà߇?î~|Rð•Åÿ†|q¢xÿRð¦¤|9§q¡]XAã}OC£^ÜxcÅðêúeÄöàÛ¥œÓÍ;~ÀÃ47Åqo,sÁx½ì.ô¸u NÓÃÞ$ðßÅÏ„è×[k7ÚߥÀ¸þ¸h _Àþ ðÿïx?á÷„ìÛNð¯ñO¬ôí_ÄzŽð+àƒt{›=ó_ÕµËMZ¾ñ§Ä ˽gIÑî|Xž×$þÐÖ£Ó¼?¥YiŸnÒ´ŽÏx¢¦²ÂC:âzÔãQ`ý£†)ÃÔÒ9Ž}Š‚—Ôð‘Ož–)ã±òJ–•¦ëSþ‘ð£ÀŒ&}Õ<\ñˆ+øiàV[­‚Ÿ¬-‘ øcÂн”‘ßÝë¿ð“jOx¶¾!º²¯rÿ‚^ÿÁ(¿f¿ø%­gÂ_m5]wâwÅ#áÍÇíñ“Ä:¦»{®üeñ CO>*“KÖu½zè÷:߈|a¯i>Òog°Ð¤ñF¡n/5 Yïeý>­¸…á•W­›æx©ç\K¦©ã³œE5gE>u—åXdåO-ÊéIÞj-δÿ}‹«^µ§;Åïñ\{•å¾pFA‡ðËÁÆOÂþäø©âV/2t¾¯SŒ8ó;”(âøÛŽñøx¨b³ÌÊÃeô˸/Êrå,=BŠ(¯«?ŸÂŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åöLðß…?fßø:Ëöôø]áè~ðwí5û|3ø½áŸøCÒ¼; Ÿø&o‚>ÔBÒt}O´…u†Ðþ"ø›ZºŠVûwˆF³{}%ÝýÞÛêþ¿ïø8÷Á?´ì5ûX~Êð\oÙçâÆ‡àðÒÓá‡ìoñ“ÿðƒéž)Öõ_‡ž+ñ·Å?ëºôƒ_ðçŠ|>úf©áýbóÀ·×KµñfŸ-Ö‰uá­^ ëK‡ûGI$ÖHäUtt`ÈèÀ2º2’¬¬¤`H ‚ €EPEPEPEPEPEPEPEPEPEPEàß´?íGû:~É> Òþ#þÓ~ü ðµâ‹/é.øâ7Âz£âíKIÖõÛZj:¬Ð[Ï«ÞhÞ×õ;{$s4–ZF¡:©Kiüzÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†kù—ÿƒ‰¿à¨¿ðNŸÚ/þåû`üøûiþξ+xÇþûþ_‡Þø¡á¯x¯Äð~ÔŸ¼U®ehÚ}ì·wŸÙ^ÐõnûɾϦ鷗Rb(‡ôÑû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùfÿƒ²ôm'ı¯ìáí{O´Õô={þ Çû.èÚΓ \ØêzN©ð¯öޱÔtûÛyG=¥íœó[\à ),2º0*ÄWê·ü97þ ÿHæý‘?ðÊø;ÿ•ÕùyÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jÊÐt-Âúá¯é–Z/‡ü;¥iÚ…£i¶ñÚéÚN¤Yçéše…¬Ab¶²°²·‚ÖÖÞ5Xá‚(ã@@­Z( Š( Š( Š( Š( Š( Š( ¿ ÿà¨ðWßðN¯jšS^è^:øõq¢Ë©i>—VK] Á¶RF~Íâ¿Šš­¼«&…¢)ežÃ@ŠXý˜¼5ýˆú-Ÿ‡4½Ú-1£µ»Ò´½.ãÇZGˆ5$×®n¼A£Ïý÷~ı'ìùÿ÷ýž<#û2~Í»ðÏà ͩÉ6¯¨gÅ*ñ6²ñI®øÃÆÙ‚Ôjþ$Ö¤‚Ü]ÜÃiccokke¦iz~¥XXØÛýA èZ/…ô=Ã>ÒtíþÒ´í @д{;};IÑt]"Î?JÒt½>Ò8­ltí:ÆÞ ;+;h£·µ¶†(!#EQ«_O‘pþ[ø7„Ë©NõjKÆâjK˜fXÊšÖÆæ8Ê—«ŠÅU•ܧ7ËjtaNŒ!N?…ø¯âÿøËÄtø‡Œ±Øog—à¨å3ÃY6–OÂøD¡—ðÏpæØ ‡#ÀRŒaK †ƒ«ˆ¨§ŒÌ1ܾ'X¢Š+Û?0 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àãÙãÄ´Çüãöµðü-¯xËâ‡eðÏâ7<=áoê^,ñ&¥­xâÏ‚u½JÇCÐ4k{­[PÔu?Åâm&Óà–â~÷)áŠ[y}_þ£ÿðWügöðÄß xƾñoÁٴٻãF‡ã»'OÕ øÍðËá×€.üi}¦[éšæ·;xoVoXê<ÚØÒ5ÜMqm©h¶sZïŸõ®¿ˆ_„¿¿ioø ü£Ç¿~/|;ð—ÿÏÿ‚°þÞž5ñWÃ/‹7Þ$ûmßÂýkÅ1ÝÿgÇd4q,ü acâ‰_¼;â¶ø“¡±¹ð75 cIÔ„:f¥®@ý½QT4­WL×tÍ7[Ñ5+ cFÖ,,õ]#WÒ¯-õ 3UÓ5 xîì5-6þÒI­/¬/­&ŠêÎòÖYmîmåŽhdxÝXß Š( Š( Š( Š( Š( Š( Š( Š( Š( ¼ö‡ý—?gOÚÛÁZ_ÃÚoà·ÃŸŽÞÑ|Qeãm#Â?¼/¦ø³@Ó¼]¦é:Þ…aâ;M;U†{x5{=Äšþ™ozˆ&ŽËWÔ V s >óE!ÿðq7üëþ Óû:Á¿lŒŸ?bÏÙÏá/ÅoÃ?Â+ñÀ ü5áßøþÚ“à—…uÏì­gO²ŠîÏûWÚ汢_y2/Ú4ÝJòÖLÅ;©þš?d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEüõÁX¿à¾ßÿ`ýUý›gHý¤n›OÁ§XøEp|E¦ü=øUá=uSZÕ|UñoǺmˆÓ4É¡ðà¶‹M𞓪\x©õ/xrúïMM1¥ŽãŸ‹ÂàpÕñ˜ÜE. NU±œEHÒ£F”çR¥I¸ÆŠÕ¹4_ È3Î*β¾ᬣ1ÏóüïC.Ê2l£_0Ìó,~*jž ‚Áa¡R¾"½YµS¥ IêídÚýý§¿lÙ³ö7ð$¿?hï‹þøe¦O§ø†ïº¿â *ׯßµ égWÔ<)ð£Á3^EâO‰~5’Ô¶^ðn«ëwSÝÚF–€\#å¿öŽÿ‚~ßðW[Ÿ~ÎðM€þ=ðOÂûÏ Ùj>1Õ|k­øsá׌¯l¦†Æß\Ò~,üOÒ|]â‡Þðĺ®±”>ü>ñ'|uã­KÔõ(&×<7uâ x{ÉÿàŸ¿ðIÚ·þ añÓöÝÿ‚—ü\øŸâŸkšÎ»â éÞ,ÖüO毡x»T]~÷À¿³·ƒ5ÝNþÃàì÷<ße† ÏÃiâ&ÊËû+ˆæ³ñF‹ýžü-øYðïà—Ãÿ |+øQá ÀŸ¼¥Å¤xoÂú ±·°Óí#g–Ydy[½CRÔ.å¸ÔukS¹¼Ö5Ý^î÷XÖoïõKë»É¿;æÍ|A²¦ñ™ÎÍÕýî;âÊ/ìÒø1FC]|U³Ì³*´>©‡ªå?ìuG€þˆ7–29â—Ò—uO/¨ñ'…ÿGüÁE~óe‰Ê|Fñg*¨Ú†2ÅpWæ”Üñ2â,ã8OÇø&güËàì+5§ÅŸ‹W~ý¨k#Y7„_ˆz§ö'l#ŽÆßÃ×¾O‡µÿ ËÄWˆ¯“Åþðü2DúÊÛ ßìZ¿?à»ÿðFo…ßðSßÙׯ^8ðWë Ûßá‡ÃØ4¯Ù“â‚x³Vð­ÜcJñ•—Œ®>ëÊÞ&Ðü©è~'Câ=+IÕ|eg|þÕ|O{âïO’}RKñ¯ösÿƒ«<}û3ÂIûÿÁI?d5ý¹þ|FÓ¾Ý音e‡¼c7Äfð†4Ïê~#ñëß§Ÿ\øâi®»-×b¾ð—ŠôhÚ—†£·†Úv¾þàè¯Âø&Oü%û ÿÁP>'Oðá‡ÅŸ„´/ŠüDŸ ~0øNÓM¾Ô´o\ÚE­M£ø›ÃZ·ˆ|1u¨Ú[^-ýÆw¨éúìV¶z¬ë§Ëo¦\Î?v(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾¯ÈŸø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( ¼wã·í ð3ö`øu©ü[ý¢~-|?ø+ðÓH¹µ±¾ñ¯Äi>ÐR¿2.¤Û^ê×6ë­jM©¦hÖëTÔdŽHì­'tež?ðVOø,7ì½ÿ©ø9â=gâOŒ¼?«þÑz÷ßø§àìöÍ®I¯üR×4û»] IþÓºÐôRx;þB#ªxÄiq]izG‰“ÃgWÕ´k«¿ƒOŠ—_ðR?ø.ïí3¥ÜþÑCâ+x{Çwÿ¾!~Ï¿°çÃ_˨üð††|2–3xÃÄú<^&ºƒá«?‡&º¼ñ/‰üa‰ñ.K_ëW7—ƒt ;ÿ<ϲÞÁ¾mžg–.ŽUÃ<%ÃØ.Yf|QÅÜAŒ•<» á쮓ö¸ÜÇVø0Øjxœm|6·Þ¿·ïüOûXÁKuÝOöpÿ‚jè>9ýŸ?f/ÙøÛáWÄŒ:Ç„¬µ_Œ?[Ä­¢[éŸ ÖÍï/¼>­á[½5ì´o OįHú–»¥lÒ­åýzÿ‚<Á¼ø¦xã‡í‰áøüMã[Õ³ñ‘ðwÄ󧈮°ñ¬–¾)øåªÎf_xže’ËÀáäð÷‡·y¼w·*ú6“úGÿµÿ‚7|ý‚t 'ÇÞ0Ñ|ã_Ú>âÚæS®hº Ž›àO„±êÆiµü"ðí½†Ÿ¤»›»›mOÅñév¶¡ ÷–:M·‡ôKýCK¾ý©¯”Âd9ŸâhgeEað*C“ðjœjá°³ƒS£âÂô³<Õ;J– såÙkÒ ‰r¯è ñc‚<ɳO¾™•Lã‹3L'&ñé%<-l»<Ïpø˜{Ç„üÂâqÜÀs\ô1ÜI%†ã.3‹rÄO&ÉcC,®ŠªŠ¨Š¨Š¡UTUUUU@ )h¢¿D?÷Ü(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+‡]“Åx_ñxš]Þoˆ£Ñ4Ô×dßn-_ÌÕÖØj¾Ô fÝpw[ Ì`-tTPòÉÿÁ/nø¯Åzg‰¾ܧƒu¿‰Óµ(õ?Íâ?xhi~/·Ö¼)ðËVø«=¶£§êr·ˆ4m_Rð§ˆm5 éb‡ô»þñÿ^ø)ÿYý›,üyðûQÕSâ׿ü0ðçí#ám_E]þߊž%ðM¶­­K ydA«xCQ×ì×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕüªÁÜš¡âoØwö"ðÞ‘â ÿ j¾ ÿ‚¨þÍz™â­)KêžÔ5o„_´…—ˆ4Õ[¿Ñ®n"Ô¬Ô\@MÅ´`Mw¯mÿ'ÿ‚ŒÿÒÅ·ÿþ/?ùõÐôëEr¾ðþ§á?ø7º׉uk>𧇼?«xÇXRš·‹5=H³Ó¯üKª#\]²ê:íÕ´º¥êµÕÉ[›©A¸˜1ºª(¢Š(¢šî‘£É#¬qƬîîÁQAfwf!UUA,Ä€$:¿—ø-üG¡þÅ?´Ø«öѼ)ñ÷öø×üo ø#Åñ.—â)<ðy<_¡É&„uMNÞãBÒüCãû­OXð­åŸ‡mõ™ôMI›P½ñÍ“Eo¥Þ~yÁeàâŸüu¿ñŸìÿ‰ñN㩼gðƒSÕ>)~Ø~ñæ±ðºûáDÚ/‹<ïhŸ xkH‡Ã_ÆKOôýˆ¿`o€ß°Ãµð­µ_ë0C'Ä?‹>"†ÚøÿU &–]Bú4#KÐmî ÂÚk¦™¦Ä«5ÃjzÜÚ–·¨ýðCà_ÂÙÇá¾ð—à¿‚´xÃp”±ÑôˆJµÍÜ‹¼Ö5‹éL—ÚÞ½©¼i6©­ê·Z•üÀ=ÍËì@¾³\Ù Ö£\CĘªyÇNœ¡N´!(å™% ºÏáj9<=+ZñÕoÇYʽXÓ’¡kÅ?òìdž_ƒÞ dxß|Âc(â±yn#F¿ø£šà¯?ø³žàÕ8fùƒ•ñ_ `]>ánxÑʰU±TešW(¢Šû3ù¤(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+óóþ eÿçø5ÿFý—5ŸÙ{ã^»ã? h’x¯Ãÿü'ã/‡÷>´ñW„¼}áuH¼?¬XÍâ_øŸOk)-õOH×mbÓíõ ýTÕ,4ý[HººPƒôŠþa?ø.Wíƒÿ’ý—¬bßÛÇþ ½ûnüTñÿÀ|[“MøÐþñ¶¥x£á$^,ñŠÅWZÿÄÃâè·òxÂ=/Ç u6sà-+B»[È’Òí`þš¿à•ßðZ¯Øëþ ÕáÿÅðÿÅøµð÷Ã~ñÄï‚ÿ´Èôïø^Ó^š}<ê.©i-Ɖã ÙkͦÜkúÆë)/t_íÝ3C¸×4ëI¿]&†ˆe·¸Š9àž7†x&E–¡•JI±¸d’9™Jº’¬$WñÍÿÿÁ%´¯„Ú„ÿà±ðOŸ†~>Óÿmß~øÛÅžø5¡]êš?Ä/ èZ½·†F³§ü6ðf…6¨Þ(Ëø-Ò”ÙH\OlùÛÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×ñcÿÄÿ‚NþÚ³GüçöŸøÛñkþ =û_þÖ?¼ÿ WþÙÿâ–‘skàOÂGûCü%ð–•ý»<ŸÎX]Aý§~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨¢Š(¢ŠÈñˆ4O èçŠ|MªØh>ðÖ‘©xƒÄæ«s–™£hš5”úŽ­ªêW“²Cia§X[\^^\ÌëðÉ,Œ¨„€ zþ ?àºð\ω´ßÄoÿÁ8ÿà,ø‹ðßß~&ø«á¿ímûOxRo]h~1ðì¾Âú§Ã߆:–•¨ÝkVCXÕ¼k§krYêžÖõÝoÂE¶‡ª§‡/u}Ngþ ÿyøßÿ‹ñ}Ïì#ÿàµñÏìOñSÃÞð×¾ X|7ñ‡‡þ;þО3}jOø—Ám5½FÊóAøMm§[h‰/ußiS^ÜØxáõmGUðdÖöR~îÿÁ"àƒŸ¿aOøWâOÆ/øgÆ?tÏ'SðφmR-_À_¯HŽhïtçºIŒ~$Å2‹‹Ïj&x4›Ä·O CΞÕüñÁþñ÷‚üA VÚ÷„Öíຂö }_@×-/ôJomm®âŠòÒh㺷‚áeŠ7Pý’¿l?ÙÓöæø9¦ü{ý—>#Ù|Qø[©êº‡‡ÓÄVzN½¢5¯ˆtx¬åÖt+í7Äz^‘©[ê:Q¿µŽñ~ÊöÆI?Ñîno?L×ðWâöý¿¿àØÚ§_ñ†|-¦|iÿ‚8þÓµGÅOŒ>(øyðwÂ73ñßÁßÛÜnÑd:ݯ‚lüã ø-óCœxœü8ñ¿ÃµÓµ¿híÓÃý,Aÿåÿ‚O[~Ëÿ?kO~Ù? <ðûâG‡ôÍwIð^¿«&¹ñßMš÷R}Qðþ­ðáÙñÇÅµÏ ëÐÞi)ðÞ»¤iRXÝjŸÚóø|C¬LúùE~9~Ïðpüóö£ø—áσÿmŸjÿ|_«é~ð§‡|eàŒÿá%ñ·plômBÕþ0ü6ð…«kšµ÷—a¦é:œúö¡seamm-åý”þÆÐEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3_‘?ðtwü £öæÿ»fÿÖÃýŸkõÛöBÿ“Mý—ÿìÝþ êµðÍ}EPEPEPEPEPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @W·üƒöIÿ‚|øVÏYý£>&Øèž-ñ>‰â-OáÂMÞëÄ>-_øzKè^ð–™ ÷W77—×V:bêú»é>Ó§º7ZÖ¹¦é¶z…í¤T© PZ³…:Tá*•*T’„) ÊsœäÔcÅ9JRiE&ÛIL&/‹Ã`0lF7ÄQÂ`ðxJ518¼^/R4pøl6ŒgZ¾"½i•4¡:•jN0„e)$þ‘øçñçàçìÍð»Åþ>üFð¿Â…> †ÆoøçƂ麒5MJÏFÒá–m²M=Þ§«ê:fci Åíõýݽ­¤M*!þ.ÿl_ÚÏö±ÿ‚ú|iÑÿdÙÀ?~þËñïtÿëÚ?ÄèšGí!à L?†t_ˆÿ´m¾áß AðËàeLJìüG¨è¿¼Quâý{ǯÚA©iñø¢+Á“tÁß¶ßü7ûH]ø¯[“Çÿ³—ì5á½;Á²é|Eªjž5ø=áx$^ùúÔúfŸá/ |dý õ]wÄúÅñ2 7áÿ†¡Ó4æ×¥“EÐõ?ÿ^²÷ì¥ð;ö<ø_¦ü&øàë_ xzØÅu­j³yWž*ñ¦º¶Ñ[\ø£Æšð‚ õÝzñ"Eiš8,4ûu‹LÑ4ý+Gµ³Ó­¿9©™f¼u9áx{ˆÊ8N2•,oSN–a(¾Z˜^Sèáæ§[>œ“æŽW Ž/ìü/pÑW C=ñ‡(ÉüDú@Õ¡KÃ^cg  xc:°UpYïŽrÂÖK3â% RÆežakÅЧìkñÖ' ñÈjü¿ÿëÿ‚_|ÿ‚yxÚÇÁºuŒ>.êzU¾Ÿã/‹ÚŽiaª]["B[Ã> Ó#k˜¼àky¡ Ðtû™®µ†ÚãÄž­5žœ,?K(¢¾ã*Êrì“C-ʰ”°X,4yiP¢®ÝçR¤äåRµj²nu«ÖœëV¨åR¬ç99?åž>ñŒüPâ¼×¸ûˆs'â|沫ŽÍ3‘sä§OƒÂaè–.Ëp4# 6]•åø|.]—a)ÒÂ`p¸|5*t¢QEèŸQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEr^>ð'ƒ¾)xÆ? >!øwLñ€¾ ø__ðW|)­@.´xSÅ]Ö‰â S·%|ë WJ½»±ºŒ2³C;…el0ü2ðÇüÿJð¯Ž_Ç_±Ìz› {oøŸãÇøÒv’Þo1<;¯üDÔ#¼dŠÙj·†œ#¹¸¶6fÔÅ_¿TPãÇíÿÿ‚[þÛ~ð¿†~#~Ì øoyà¹$>ñ—ìñ¦hß|_ci-…¾&•{àÝ"ÛJñ.”-¬¬µ‹4mv-5ìa}/ì>eйþfî¤ý«¿àÕÚËD7zçí‘ûrÿÁ%<_ð iu %Ja¶‰ë|ãq­i«{Ù[øNçâ‰ñ"ú,ïuÍ8¸þúëæÛGöPøuûr~Ë?ÿdߊ÷€þ7x:_ ëZ®†–®h3ŨXkz‰t!ªÚ_é£\ð׈t­+_ÑÞúÊîÖ-KNµ’ky‘J0¾øCžñ÷„ü/ã¯êÖÚ÷„¼iáÝž×,Ä¢ÓYðçˆôÛmcDÕ­DñÃ8¶ÔtËË[ÈÑE(ŠeF•Ÿ§ìµÿ\ñßüñöÄÿ‚k~Õ ?kßÚ£ÃÞøòì âY¥·<]ðèx/þð‡ƒl¼Aâûä_…ßÂv?† ü(Ѽ_¡xS_××ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š( Š( Š( Š( Š( Š( Š( ?ø™ñcágÁ_ Þxóã'Ä¿‡ÿ | §ÈßøÏâgŒ¼9à? ØÍ$SΑ^x‹Å:–•£ÛHð[\̉5â3Eo<€ŠB¼ŸÁ_Ú[öqý¤ô½K\ýh‚t]h­µcà¯Å_|SÒô›‹†`·ÔµkÚí¥„Ó5­ÊÅÔÑI#[ÎXÅ&ßæïþ ŸñLÿ‚»ÁW?ࢵ‡ÆÍ>ÛâÁø'ïÄ ödý„~ø¦Àkð&­q¨øÛOø£ñ×Oðõý³h/ñGÆ_ð€hºž›â»˜µh~ñ£xtO¥Øè~Ýêðq¯‡µÙ3àWÃßø+ìÕgeðóö¯ýþ3|.ÿ„Ç>°ƒKŸãÀ¿‰'Ó¾ø¿à·Æ)ôý6Sãoë:¾¹ág²¶ñ<³'†¦KË ÜéÚΣLý0Q^Mðã†hoŸ~>ø,H¾øÝð«áïÅ¿ $Ò$³ÅáÿˆÞÒ|_£Ãq$j¨×0Økñ\mDÄÉ Ø„³@Q@Ëoüƒ¨Yé?±÷ì ªj7Úiúoü«öXÔ/îæ$Ekggð¿öŒ¸º¸”€HŽ#y\€HU$Ò¿¦?ˆ>ðo¯øÓâwÄOéÞðÿ xƒÇ6ñV¯#C¥xoÂ~Ò®õÏ뚌¨’H–ZV“cw{rcŽI|¨GŽUòËÿ‡M¿üÛöFžy(`ÿ‚™üši\…Hâàí8òHìxUDRÌOM4¿·oüoöÿ‚ù~Ð? ­"ø}ñOàçì=àÝGâ/€3û\Wšv¢¶¦ø‰?Q?à‘?ð@~ÎÞøqñ?ö­ðƉ­ø¿ÂúMÏÃÏ€²Ûé÷ÞðÙ^ÿÂKñ1­û;Ç¿n®ß]Ú\ ßé7óI-Ûkš•¶”þþ¡+â)åy§Nž3‰0õòžŒã[•&77Qjtq|Rá&¡BéU£S“‚—$³9Õœ>­ê,_pÑg ŠáßsŒ¯ÄkáëåÜUãöYáŸ]hJŽaÃþCJ3Äæ¼²«€Ì|]ÅQ¥Š©Gë¸# €Ââÿ¶«ò¾ð7ƒ>øKAðÃß h> ð_…ìLð÷…¼1¥ÙèºbŽòýžÃM°Š [ty¥–âfHÃÜ\Í5Ìí%ÄÒÈýUWèð„)BéÂ4éÓŒaNœ"¡B F„b”cÅ(Æ1IE$’IƬV'‰Äcq¸Šø¼f.½\V/Š«S‰Åbq%V¾#^¬§VµzÕg:•jÔœªT©)Nr”¤Û(¢Š£¢¿7?à¯_µoÅØ{þ ÃûQþÕ_áð½ÇÄÿƒÞðÆ·á(|i¤Ýë¾’óWøàÏ Ý_I±Ôôk«ÈF™¯_’NÑ’èA)vXÚ'ú£öTø“â/Œß²÷ìÝñƒÅé§GâÏŠß>|IñBhöÒYi)â/|<ðïŠ5´Òìæ¸»šÓN]KT¹VÒÝÝI°Š'¸™ÈÀ÷EPEPEPEy7ÇÏk? ~|iøáÕ²xá7ÄohI©A%ΜúÏ…|¬ëºbßÛE5´·M{aº‚;‹y%€ÉM0uø#þ£ûd|]ÿ‚€Á2fÚç㽿„-~+|Zÿ…Ëÿ Tѯ<=áDÿ„öø­ðËCþÊÑõ _]»³ÝáÏhï}çj·_hÔšòê?")ÒÚÕ (¢€ (¢€ (¢€ (¯Åoø!×íýñ×þ ð+ö®øñö×Àvž ø1û{ütý›<Ÿü?¨xwN‡¼ð—]ðüºÅ¶£®ëòÞø‰¯|m¬CS†âÒÚæ²Ž=>Ý w˜ö¦Š( Š( Š( Š+ñ[ö%ý¿¾:þÐ_ðUø*·ìeãË_Åðƒö3ÿ†~ÿ…Cq xPÓ¼aqÿ 7Â7:߉?á0Ö®5Ûû-kmìJ4ß±éGÙaÌr} àö¦Š( Š( Š( ¼Tý¨¿gíöŽðç싪üSðÍí'âÿ†óü_ð× å¼,Ö~[jšö‹?Œ,â[F±m*-SÂþ ³b÷©qæéWD@QU›Þëùyø×ÿ+r~È_öˆŸêâý¨(ú†¢Š(¢Š(¢Š(¢ŠüVÿ‚þßßeoø(7üëöcøckà9þþÝ~ üÕ#øƒ _øE_øößÅòë’ZØéÚÞ<:º6‡eö×¼–pfZOæ.ÀÙê(¢€ (¢€ (¢€ (¯Ïïø*—í5ñö5ÿ‚yþÕ¿µÂ(|7qñ+àÇà ø>i—Z׆¤Õ£Ö´}=F±¥ÙjZEÕí§‘90éY¹FÞn«~€Ñ_+þÂß<]ûEþÄŸ±×íñ="/|vý•ÿg¿Œž6‹ÃöSiº~.øŸð“Â>6ñ$zsw¨\Xi ¬ë—«¦ÙO{5­† nî^6™þ¨ Š( Š( Š+ɾ>xÛYøkð+ãOÄo­“øƒÀ ¾#xÛBMJ .tçÖ|+àýg]ÓþÚ)­¥¸²kÛÔÜ[É,HÒh™ƒ¨¬Ñ_•ÿðEÛ#âïüþ “û4~×?íü!kñ[â×ü._øJ ðyáï 'ü ´Åo†ZöV¨júíÝžïx3G{ï;UºûF¤×—QùN–Ðþ¨PEPEPEP‚| ý¨¿gïÚkþgü(_Š~øŸÿ oâF»ðƒâü#rÞIÿgÄ¿ ù_ÛÞÕþ×ii·UÓ<è¾Ð-üûœys¿8÷ºþ^àÙ¯ùÌwý¥Ûö–ÿÜ=PÔQEQEQEQ_Šß³/íýñ×âçü¯þ Oûxª×Àið'öPøMû:xÛáuÖ•áýBÏÇ“k?¾ü'ñ‡‰—Å> ›]ºÓõk$Õ¼k¬.™¦…¥Éih–PË5ËÁ$³~ÔÐEPEPEPE~+|Fý¿¾:øWþ Ïðþ ¹¦Zø ¿gŸ‰_°F³ûIøŠîëÃú„¿â%‡Ä>‚-7Ä©®Å¦Ûxté¾ÐŒšd¾¹¹k—¿”j ·ÇoûS@Q@Q@Q@øÃÿ7ý½þ9~ÈßµÏüOà›oOàÏÛgö¨Õ> üd“Åzþ±­[øFÎãáÌPÉàËëMoJƒCÕÊø«Tß{{g¬BÄZ‘h<¦ó?g¨:ÿGÒuY,&Ôô½;Q—J½RÒ忲¶¼“MÔaVX¯ìâ)Îö%wXî­Ìs¢³ ÿ,ý¿à°Z-·ì=ûUüÔ|ð§Rñµmãx/âOŒí-¢ð÷еj>ð÷‰í>ê±jð[ëú–©â~çáäº6²Ú¼:ŽÚÒEê³á_Åï„ß|¥üKø#ñCá߯?‡ä—ðèŸ>ø×Ã_¼¬M¥ÞϦêqi~+ðŽ§«èZ„šv£ks§ß¥¥üÍi{o=­ÀŽxd~wý§ÿàÿ°ïí¡c-ŸíAû.|øÃ<×¶ÚƒøƒÄ^³´ñ ¼³Ò_Bµš/è_Ù>5ƒìúC®ŸpkñÄ–ööJ¨ …“[þGÿþÈ~»¾³ßíÁÿýŸ|=©êz¾¯yàÿüoðt^·»ÕìíôɆ˜4ÿ†º¨´‹tÒnîuíKÄZ®£§Emky©I ¾É?«º+ù/ñü9û1ê>’]öþÿ‚‹Z|[mOHÔ ø›â_‹žñ5­¯ö\Žm†,¼á@¬¶_eK{¹|e&¡§ju…Ý¥ÚØ¥Î‘uâ¿àš¿ðqçü¾îÛâ¿ì;ÿBñoü?À~ Ó<[âÍkàOíM'еkQÛY´^Ð<=ãÏ|S¶ñòÉ Û[É¥¶‰ñCáF¥‰mÞ xrÒçS&ðû?¢¿¿ðv¯í_ð‹ö{ñÏÁo‰Ÿ²}·ì¯ÿ7øDÿ WÄzÅÏø«QøkãÛmrV¸ñÜÖ ïo|5㆚”¾Õ¼ã? Økž*ñ>™«èºž³qi­„±Ò"Öÿ¾‹k›{Ë{{Ë;ˆn­.¡ŠæÖêÚXç·¹·X.-牞)¡š&Y"–6häFWF*A QEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEüCÿÁ’ºî¯û:~ÞÚ¶§s%楪~П5Bòb ×W·¾Õ®nîe džyd•Èc€úõÿGÊ ?noû¶oýl?Ùö¿??àÚφ·¿±oíµÿ¤ÿ‚{øê4xã¿þ.ü5Òï,†šÞ2ø+¯ê4ÝǺ ±¸ŸE¸ðΧðºòਗ਼ÓO“Åzu”w2ݰŸWÁ×~=›Lÿ‚Gø»à†ƒγñ ö­ø÷û;üøsà"ѵOøßÄÖÿôOŠÖú‡ô›x.oïof†Ç³KÉì4ï8Í©ÛÚ^}·ÿÔïõø#‡üÖëQ¸k«ˆ¿gŸé‘Êë°Ñ5MgFÒíÀJÚi–vˆÄ W•䕞Fýx¯’¿`¯ÙîçöNý‰¿eÙ«QheÖ¾~Ï¿ >øšâØÂÖ÷¾/ð׃4‹jæÞI 0ê>(W¾‹Êžá6\.Û‰ÇïŸëZ(¢Šþy?àæ?ø'—í;ÿ$ÿ‚{ø3áì•áOü@ø©ðËö¡øqñ¶o‡úçŒt/ßøÏšO€~-|4Ö4¿ kþ-»Ñ¼ˆ4ÛŸŠzg‰î-¼Yâ¯é×Ðj“Çáñ?W¡ì¿•Mößÿƒ® ¸•¼Gÿ]ý”µ[V‡l蟵7Á¯ÜGq½›-ÍÿíwâXæ‡ËžBZ[¾öI>ѵ oÒÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔW¢|iü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü]~ß>)ÿƒ˜¿oŸÙãgì…ã/ø#ÁOxgãfƒ¢è:·‹¼3ûc~ꆻ¢C¢ø»ÃÞ.Š}:ÏUý¡ŽŸ<³\øz IäX.%uýâ¥{wÀÿÚcþyøðWáÁ]#þ©ð\Ò¾ü.øð»LÖµÛ7öƒPÕôÿ‡þÒ|'eª_ÁmûC hou m&+»¨­À‚9æ‘"XZþµè åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ äûâ—í]ÿ>üRøeñá–£ÿNø¥éÿ¼ âï_jv_¶À o4ë?xPðýÍý¤SþÐÆ .m Ôâæ'–4Y>Bkåßø'%çü¹ÿãýŒþ~Æ^ÿ‚;|øáoƒð°¿²üeâÏÛösÓ|A¬ÿÂÃø«ãŠ·¿o²ÑÿheÓ¡þÏÔ|sw¥Zýœ2ÊÆÚi¿$¦¿¶:(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆzüçÿ‚jø?þQÿ‚j|2øçðËÀðH_„_tÿ޵ÄßÚWÔü]û`~ÍÚeæ‡â‰¾ð'‡ïü/¦Å£~ЫƦAà;;‹;» o¥–þåf;#Š¿¹ê(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆzüçý›üÿ(~Íÿ·íÃûqè_ðH_„^#ñwíÅÿ «þßêß¶ìÝmáϪÐfÐtïøG/ìÿhQ©ßÿjÃ1¸½þÓ'É”ƒåÍsÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýõùÏâïÿÁÊ>.ÿ‚ ü-ÿ‚¡\ÿÁ!~Z|Aø[û.ê²æðÂÛönjžÔ'Ûü9·Ô,h¾$Ö?l¿Ùò×Vñ“ð£Àz€ôíoT¶²ý¡…¾£ªÙèßÞÁh´77Ç*W·ÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýõÂ|Rý«¿àçߊ_ ¾"ü2Ôà‰ß4½?â7<]àKíNËöÏø-ægâï깿´ŠÚÁ%ͤƒÜAÀÄòÆ‹'ÈMX4Pñ9ÿä¼ÿƒ—?àœ±ŸÁÏØËÀßðGoƒ?¼-ðoþö_Œ¼Yûb~Îzoˆ5ŸøX|qñV÷íöZ?í ºt?ÙúŽnô«_³æYXÛM7ïä”×Û¿ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü0ÿÁ=|ÿ(Á=?á«?á ÿ‚Bü"øƒÿ [ûQ|Aý¨üGÿ Oíƒû7ißðŠøƒâÙ>Ûá}û'ö…_µèÚÙì·wÙ½“{y§_£ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü0üðü£ðkþ 3ûaÁF´¿ø$/Â-gÇ?¶>xÄÿµÛönƒÂž³øIà¯ø+M¿Ðu+Úk·:½§,ïo£ÔÅ ÅõÌvÿ»Ž*ýÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ á‡ÅÞÿƒ”|]ÿAø[ÿB¹ÿ‚Bü"´øƒð·ö]Ô?eÍ;á„¶ìÜþÕ<=¨x¯â/Šßź¬Ÿ´/öÜZÌw?¯­Ò& :ÑÈó$›?£ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü4þÙžÿƒ”¿lß_°‡Ç¯ÿÁ þø7Yýƒþ7ß|oð~ƒáÿÛöo½ÓojãÔ5/ _Úx†øM êW×ZU½ÒÚê6ÖI¨ZZÜÃëÿðN†ßðpgüçáW‹þ ~ÍßðFŸë|]ã9øVøaðCàßÃ]~ãN¼×~|*øyàmjïGšæãIºÕ¼%á#@Ôn4¹ïm4ûÉôéï4ù¥²šîÂÊæKf‰ç´¶•žõZ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(áïÚ[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauý¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯ý©h¿‡ß²7ìçñ§öšø©u%·€~ü;ñ/Ä/¥¹nÔ¡Ðtùn,´ -J²É­x“Tû‡ôXYvÏ«jvp±UrÀÞè¯ççþ Ëð¿ãwüËöiðíçûmü}ý¦|#¨þÓë¾<ø/û6þÌÿ´—ÆÿÙká?ìûðrïZÔì>Ù%÷Àü*ñÏÅßë¶·ñv»ãŠ^!ñ.‡©oN³Ó¼%§YiËö§~Ο¶?ÆOÙþ ¹©ÿÁ!ÿjOŠ> øãàOÿá¢?`ŸÚâ)Ò›âÍΉ§ŸÁã_ÙßâÆ¿¢hú6•ñÄÿ„Ǻ÷„üs}kŒî|9¡Y§Œ®üA¨x«F›Kþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¹]oÇ~ð׈|á/øËžñ_Ä}GWÑþxc[ñ‘¥x‡Çš·‡ü?¨ø³^Òü¢ßÞA©x£QÑ<+£êþ&Õì´;kë7Ãú^£¬ÞÅcssUEÈxï‾x_SñÇÄßøCáׂ´HÖmgÅþ;ñ.á 黈Ò]OÄ ½Óô›ÞFTW»»‰YØ(%ˆ×Ñ^ ðKö«ý—¿ixõy¿gÚGà'íåÿoKðKãÃÏŠ±èžs‹û]ü â-ytß5˜,l0ïbä+Þ袊(¢ŠüTýƒ?g_Ûcã¿Â‰ž:ÿ‚´'Å…¿´v­ñ³âf™àßþÎ_¶¿Æ¯‡? ôŸ€û4CðîãBð÷ì¿ñƒÁ~ °»‚YµÝ.ÇPñë_õ #GÑüGã-JÏĺ毥Ú~ÕÑ_ϧüÛö¿ý¢h‰ðT‚Ÿ|{­||ýŸc¯ÚÿVø1û+þÓ>%:6§â_ˆ¾‹Xø¿àƾÒô#âF£ð·Lðÿ€ï¿á>{kcÄvŸío5 JþÔér/ô@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ùñÿIý¾üÿÎýˆþ2~ÖÞ*Ò­¼O©ø+N°Ñ>øæöm=<{ñGÅ—±èÞ ð¼—¶ð\ÜZiÒj¾¯â+Ëx$¸±ð¾®_[¤“ÛGüÇû,þÂß~9þÏþ5þÛµßíªþÔŸ< áω^%‡àwí=ñ¯öcøSðXñ¦—gâ;O‡_ > |ñ_‚þë:gÃûKÛ/\^ülð·Å]S妙¨êºÌ©&—íøGÿÏý»þ2Ý~Ùÿ¶güWöÅñ…·ÄÚ7ö?þÃø…ð‡ã´šF‘ákö‘ý˜|mgáÝkÃ>'ñ‡ü;¦é>ƒâo€4ïxCñÞ§á+ ?D×µnUG´Õ|9â CTýÜ Šüøÿ‚¤þß~ÿ‚g~Ä?koiVÞ'Ôü§XhŸ|s{6žž=ø£âËØôoø^KÛx.n-4é5 ßWñå¼\Xø_G×/­ÒIí£þcý–ao‹¿ÿg‡ÿm¿ÚïöÎÕjOŒžðçįÃð;öžø×û1ü)ø¬xÓK³ñ§Ã¯†¾ x¯Áu3áý¥í—‡./~6x[⮩â]SLÔu]fGƒT“K„öŽŠü#ÿ‚gþÝÿn¿lÿÛ3þ +ûbøÂÛâ?íûÿaüBøCñÚM#HðεûHþÌ>6³ðîµáŸøÇÃþÓtŸ Añ7Àw޼¡øïS𕆟¢kÚŽ·*Ç£Új¾ñ¡ªc~ݶ¿Æ/‹¿ðRoÙçþéû&|HÔ~ x—Æ¿õŸÚöÊý¢|!e¦êŸ¾ü Ñlï¥Ò~|,]D×<9áω.áÓ,$ñÖ¯§êOà]/ÅÕt:ëSÔ”Ú€~úÑ_…Ÿ·?ìËñ»ö'ý—¾(~׿°—í/ûU^|fý™¼«|hñOÂÏÚ?ö“øßûWüý¤<ðâÎüOð/‹<ñãÆ¤ð6½âéúôÞÖ>Mð»U±ñ¾—¦iÅev"·ûkö[ÿ‚‡|ý¦?àž~ÿ‚Z\·…~j?¼Oñ—âœ×)«]ü8? ô½roŒ>½ºŠ+1©]ü?×<'â½KÕ¶²MYt„Ô`··‚öP¾h¯ÁßÙ ÛDÿ‚¾|oڣŷwƉ4jwvzwÀØgö™ñOÀþËsǦ¡§ü/ñŸŽ~ ^xGâ§Ä¯6‰¨iWÿ|AãïÏà}WXÕo‡¾Òü t+ÍKó{âí»û\ÿÁਟ³wì›ûHþÑ¿l_ø'GíÁwi¦|'øû@\Øx‹ö€ýŸ|]}â½ÁZŶ±ñNÃF°Õþ%øÁZ¾¹àýGÄPø‚+¹¦ðg‹mõ-=;ĺ>©Š€?°:(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þj¿àíë^ÿ‚.|hÒ4™š ˆßþø#^ds¢ÅñLñÃB¬ªX¬úŸ‚´Èg@щmÞhäf‰äŠOéV¿ž¯ø:KàÖµñ‡þ¹ûNËáë)µ[á6¯ð£ã*Ù[±YEðwÄoÚxÆõ†UÁ:ç‰6ÖÚ+fsyvÉm%Ô— ýÿÁü[aãOø$ßüXÓ|¿³ÙþÅ_³—„¤ò®Ré~ßà…žð.«™cDU“ûSמu±ìæßi#¼3·óÓÿðDÿÿàæ?ø!÷ÁÿÙÍ©ëŸ ô~о!ŠÎP_MðÇÃŒþ7ø¬Ú…øÒÒ>êòšoôÒÑÙEÏ<\€gôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEywÆxçâ7ÃOx3á·ÆoþϾ4Ö±ÿ±~/xÃ? |aâ¿ÿgkúV«¨ÿexsâÿƒ>!|:Ô·ô›ÿ _ÂCàý_ìšnµy}¤ýƒ\µÓ5K/ãŸâÁíwà'ü·ÿ¦øq«~Ð?´Wí·¿±Ïƈ—^.ý£¾!XøÛÄqx“Å ÿoïkÃúW†|5à‡žÐît¿xj6ð×ÃßøO@{»)u9´éµ;ÛËÉÿ¶šþ@¿lù\“þ ;ÿfñÿPoø)e_µü¦~Í_´ßø+gü{öÛƒâæŸÄ/ÙOþ 'a¤ü"øðsÄv‘ëŸ ×ö›ñ‰õï øËã‰ü=s§MáïxçKÔ¾|Oðÿn<@÷¯áÍ&ÏJÕü1m¯a¨j‘ÿVuüCÿÁ£:î¯ûVÁx5mNæKÍKTý¡>ê:…äÄ®¯o~#þÛ—7w22O<²Jä 1 Å~²ÿÁÄ &ðìW¯ÿÁF?gÃmð·öÕýƒõï‡ÿ~|g𮕧Šo¼?Ž<5àŸ‰_ üi{eg-Ç‹>xƒÀþ#ÔõgÁ ŽÿÃ7×z¡ ž“>«9ýEý™?jÝSö°ýƒ>þØ_¼aâOü_ýtß‹>øQªø¬x?LÔ~%^ø:MCþn¥ã¹ô§†¬Ç–÷ ¼ñ‹èìZU¼rk¿Ù¤p‹9þFÿƒ€¿å ðPoû!Ÿú”xj¼_þ ƒÔïõø!‡ì+w¨Ü5ÕÄV´.™®±¡[ ö°øí£ivàFˆ¥m4Ë ;Db¦GHåy%g‘€=£þÇþ /ÿHzøÿ‹Qð¿ÿAíðÖ?ðYúC×ÀüZ…ÿúköŠùƒà—Æ/Œ÷¿üGñWöÊø+à¯Ù+Ä^ok>%ð¦…ñÖËã߆tO‡¾ÒãÕäñ¶¡ñÇáïÃ[xì¡Õî5 xiÛI¶ÓDï¨]›¯.›<9{û ÿÁdgØ~-|$øÛñ‹â_ÁÇㆣĿh?ÚÓöe´–ûN¸šÃÄz?‹¾x;ÆŸŸVÔm^î9¾Ãñ;Áµ®¯¡ÞiÒIe«xOS´KÏÑÝ{BѼQ¡ë>ñ™e­xÄZV£¡kº6¥oÖ«hÚ½œÚ~§¦_ÚÊ+›+û+‰ín­äVŽh%’7XŠüµø=ÿýøûû|:´ø ûþÓþ ~Κ<Þ ›Â¾3þÆqüiñ7€G‰uZñ|7ñáoíû/]Øß^Ý5ˆ¾0xcâ·ŒuHã±›Ç^%ñ®©þ©ª|-ÿ”ý©5‚ðP_Û[þW­øsÀ×Þý‰|á¿‹³ŸÄÿ|>ðwÃ+cà·‹tÏ„Úôþø±áχ:'†<¨üJðïü//ÚÜøßÃ~ðÍÏïlüW«ø“K›ZYu+Ïé"¿7¿a_ø&Ÿ؟Åÿþ8\xׯkÚ—ÄËâ¯Úö–ø…gâÏÍnæM+Â^ð߆4ý7Ã_>èjèžÐíçh¢†ÂßSÖ5[]ÃÖúGé QEQEQEQEQEQEQEQEQEQEQEQEQEQEð{gõ­7ö'ý~ZÌÑè^/ý§õ룔7þøYâm3FŽE ™aXü{ªÌQœF'ŠÞCÉOö™ggi§ÚZØXZÛXØXÛAgeegVÖ–v–Ñ,6Ö¶¶ÐªComo $PA$QD‹j¨ ãÏþJø5­xÏþ Ùðãe5í¿ÁOÚH¶ñCÄÄG¥x[âo<[ l\©!ñ†“àÝHÝ2ÜkÖûÊiÙ?®¯x¶ÃÇÞðoŽ´¯/û/Æžð÷‹tß&å/!ûˆô‹=bÏÊ»#Žê?³ÞG²æ4Dq*¢«?Œÿx²óÁÿðz¿Â}I†8!ø«û.ê^ñCÀ"¯lôïÙ3â_Žmæ¼Û½ì‰ðßöê^H¥Hm-@œÃh¶ÒkUü`ižŸãWüƒâx~Îkë/ÙöOµñ/¯í¥i¤Ýx§öi³ð„wî<¸ÒkƒûCè¶ðØnžwb÷‹ŽÖå­?³úþ*ÿàöÏëZoìOû ü<µ™£Ð¼_ûOêþ+Ö#G(n/ü ð³ÄÚfŠ2±ø÷U˜£8ŒO¼†7’8ž/í2ÎÎÓO´µ°°µ¶±°±¶‚ÎÊÊέ­,í-¢Xm­mm¡T†ÞÚÞH ‚$H¢‰8ÕQ@ÇŸü•ðkZñŸü³à7ÆÊkÛ‚Ÿ´þ‘m⇉ˆJð·Äßx·@þعRB4+ã 'Áº"‘ºe¸×­ö/”Ó²]^ñm‡¼àßi^_ö_<)áïé¾MÊ^CöézÅŸ•wGÔg¼eÌh‰:âUEVþ2ñeçƒÿàõ„ú>“ pCñWö]Ô¼'⇀E^Ùéß²gÄ¿ÛÍy¶{ÙÿῇmÔ¼‘JÚZ9†Ñm¤güWÅwÿÿàï_ø+N½âXá½¾ðÏìÁãÏ hOp‘Ü*ÃÀ9ýоéiÍ$`ØÌþÓd·í„r:j:ŒRI(¼¹i·´ÏOñ«þAñЉ{skKE€V?¶5µ½çì‹ûTYÞ[Ãuiuû8üp¶ºµ¹Š9íîmçøeâx§·¸‚Ux¦†h™£–)£’6du*H?ËÿüW¡x{ö›ÿ‚ þÐß³ÇÅ­2M{á~¯ûF~ÒŸ³Ïˆô1¨\Ù6¯ðÛâÁ„:Ç‹ôˆ¯tÿ±ßéŸÚ)ñSÄÖÂ{[£yo%Ã^[]Ã#E¿ôÁûxø«Lð/ì;ûex×Z–8t ~Ê¿´'‰5)f”AÙhŸ |]©\Ä{¢¶e ±Èb6£œ)üÿƒ@~k_ ÿàÚgŠõ}>ïO‹ãçí'ñ›ãŠnò¦ûE³²ðGÁˆ5 x™‹Åiqyð~ùm÷¤Bá"ûl+%½Ô3ÌúÑÿÈÿ‚SþËðIß„Þ6øIû1Iñ#W°øãyø:óJÓõ ì£Ö þÎ4é >i¾ ºÔ#ÿê ÿ,¯êßâ߀µo‰ÿ¼Oà=âÄo‚Ú·ˆ­-m¬þ'ü$—ÁP|Eð”–úûÞxb_ˆ¾ ø‹à´»»ŠÒM.èëÞ ×­Î}x°[Ázm¯m¿ ¼qÿîü'øûQø/öÔñ—üwþ ™«~Ô¿tUð߀þ2ÇñƒöbÒ¼Oá Ú¿‡¼?û!iú&™ ÜZø×Åö÷š5¶•›}‰µ¸¯-§MJéeþ„ëøüÿ‚'|4½ý‡ÿà»_ð[oÙÅÛ´øûwàÿÚÏൕýµ½œ>3øQ/ÄŸ‰>%Ò¯ü3vìµáð•·íÿ–¦t¹?µü?â8o­­®ô»ké³öpýŸ<_ð ÇÅv~-ý«¿iÚ–_Ýé76Z‡íwð6îûÁ±éßE=Ÿ…Á?Ÿ­ÓYkØçÕ‡ˆ-+Ÿá¿Ço†±êq͵¢è¾2³µ¾´Öüâ K«Û?øÇ/‹<®ZßßE©øjëís³€~uÁÌ?t¿†?ðFOÚ×Ožfü_‡áŸÁ/è–ð›­GÅ*ñ÷ÅÅq¢éV«¯sƒôïk‚ÜIm¢Ü‹\ÝAû#þ û1øö9ÿ‚f~Åÿ³§,IñÇ€¾ ø~óǺ,5´Ú¼yu¨|Gñχîcfb×z‹<]¬h÷sü¿j¹²–äG˜D•ôŸø&/ÂÝ{ã'Ã?´çÆßÚ+ößø…ð?SO|öœÖþ/Ãÿ„Þ1…¬ÚËℾ~Ïÿ~ü"›â6—ö4:?üMàx»G™¾Ù¦k·öö7VŸ¤ôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEá_´ßìáð—ö½øñWöiøëáÅñ_ÂŒ~½ð‡‹ô*ÛÞ-µÄÞiÚÎ|ÑLt¿xgZ³Ó|Ká}b8¤›Fñ“¥ê°#Mg¯ÎÙÛàOüOö1ø'áßÙcᮽûþÕŸ ~è6ÞøñÓö€ø•ñ³à—Åÿü6ÑaŽÇÁů†>|dð—ÆWÀºÛxrß[ð×ÄïâMDÒÿ´m´ý^{ý^OÙJ(óþ ÑÿÜÒb­Gã÷lj^?ã×í¡û`xðüKý¦~>?†m¼'§_ߪ1Ñ>|.ð´WZŒ¾øCàSqw‡4›­OQÖµG‘ouÍAíì¼=¢xsãïø)·ü'þ û^ÿÁ@¿a_Úgöfýº¦ý¾~ÎÓh-ñCázëÞ=ÒõÔt¿ê'ñ/Œ¼ᯠi÷^ø•«üJð…Ö—ðÛľø“ªxoÃöðݹõ–½­h¯ýQ@ûMþÎ k߀_fŸŽ¾_ü(øÇá+ßx¿H­½âÛ\I æ¬è×ÍÇKñ'†u«=7ľÖ#ŠI´oi:^«4ÖqŠüàý¾ÿÁTÿc‚~ý–>ëß±¿íYð×á^ƒmà/€ÿ?h‰_> |_ðÃmì| |ZøgðóàwÆO |iÕ| ¡­·‡-õ¿ |Nøþ$ÑtM/ûFÛOÕç¿Õäý”¢€?0?àðMÍ'ö*Ô~?|qø•ãøþ=~Ú¶Ä¿ÚgããøfÛÂzuýú£á—Âï Eu¨Ëàï„>7pxsIºÔõkTy÷\ÔÞËÃÚ'‡3?o?ø&õ×í#ñ«öuýµÿgˆúgÀ_Û»öI›V·øOñ;]ðÔþ-øwñáïˆbÔ ñWÀ¿Ž¾Òõ-ÄÿÃ_Úk>!µ³¾ð÷ˆ4¿x.ãÅ"Õü>òÞê2ÆßªTPâ‡í]û)ÁG¿à¢_®ÿeÚ ]ý•ÿd¿ÙÇâ iº_íâ¿Ù£â‡ÅoÚãůé×±jš‡‚|Ÿÿgß>øaã« -QÔeøÙ¨Zh·ºu¼—Шõ_Ómá:~Ïÿ³T¿d_|9ð¥ÏŸƒ÷¾ ýü âûÍHø[§kÞð­Å‡Ã#Ç¿‡ìuïAá)õØ4±ã_iº~½âÛ‹õmf85zb.½æŠþ#t?ø%üqá/üXñç‚à§?±'ƒ|Añ¯ÇÚĈwZ>³ãkËk_¼Š+:ÖMWİ¿‡ü'¡ÛXø[Á¹Ö.t¿øWMÓ¼= [Øé–‘[døYÿ¯ÿƒ’|uñ¯ö‹öìÿ‚•þÍßÿdï~П~.|gøUàÏø¾Ë]ñÿ†¾ üPð¿Å<3?²Øuxïõ é¡ôWÅúF“tÉ—WðC"aÔPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEâÿ?h‚ß³¦…¥xƒã7Ä #ÁvÞ!ÔÛCð¦—,:–·âïkÉm%ëøÀ>ðÕŽ³ãoø‚;gÔ%мáýsV‹N¶ºÔ$³[;içŒÚ(¯„ü ÿ)ýŽ*x Ay¨ÙéPd|?øYáøÿijËûa-¯†ü1«][Z™õ ˜b°´»¹€Ѩ¯È_‚ßð]ÿø%¯íñïAý—¾þо3ñoÇïx‰ü+gðÅÿeoÛÚþŸ­Ár-/¡ñLž+ø¡iž ²Ò'lkÚÇŒoô-@Œ<úÕý„¼‹èß¶Gü#þ Ûÿþøá¿ƒ¿µÏÇ}sá/Ä/x~ÓÄþÑ¿áB~Ò<°ñ&{¨\iQI¡øŸá—Â/øST¿‹P·6·Ú-ž¹6µ¦I=Ô´ûTÔôæºú“öÁý¤4oØûö\øóûPøƒÁÞ+ø¢ü øeâ‰:ƒ|mω&|øíàKýSSûˆnä·¸økã_†7ÄË]*ëIðLj5X5OÁvºþ…a&³k¨ÜiÛ]ÏÚþÃÿµWì{û]|ÿ…û ø»Âþ1øáOø‹áµ­ß‚¼â_‡ÒüS &¬kú>‹áßøOÁ²5¤CÄv7çTÑô™t-BmFYlõ ¹–ïËûŠùßãWí[ð#öÔt¿üHñŽ¢|i®éÒë:Ã/‡žø‰ñ£ã½¢Ã<Ö’kZÁσ>ñ÷Å-gE[è$ÓµôÏ]iͪlÒÖäêÅlþoðOþ û!~Я~øâÅΑñÓOҦקøñá¿ÅÙÏ㜚·žnµËƒ?´/~üLÕ4[Hí主Õtß ]ØZÚo..#µ¹·šPBý©>(üzøCðÈx·ösý˜u?Ú×â×!²—á^“ñoáçÁ{ÄÐŽ‹®j7^ O|L–/LÐêZn“ Á£FMõÕ߈m¯7A§iúÔÁ?à©1ÿÁZ¿gOŠ´ _µ?ÙÝ~þÑÞ3ýŸÁ×âø…«jø;áÿÂÏÜøP¿ƒÁ~‹C»žãâLºÞK=\Y>‚o޹pÚ‘±Ó¿YëùFÿƒAÿäÂÿlÏûJíÿªköh êæŠ*–¥©iÚ6«ê÷öZV“¥Y]jZ¦©©]Ac§iºuŒ]^ßßÞÝIµ•´RÜ]]\KðG$²È‘£0»E|W£ÿÁAf?éÉâj¾"x2â6¹Ó¾%|0ý“?kO‰ÿ 5Ý9TmoÃ?¾üñ'Ã/xuD2Ê|Iáßjz·Ctu³)›Á¿ðPÙâ_Â/þ|^_‹Ÿ g߉W?þ)x«àÿ€þ&üY:gÄ{-3À:Å÷†|3¡|:ðg‰¼Iñ&k ‰Þ “P¿øi£ø¿H±ŸQÔ,®õo¼7âk}ßo~4|4Ó¾5xköx¼ñ'“ñ‹Åÿ ¼oñ£Ã¾þÇ×äþÑøiðãÅŸ¼ã?ÂA”þ´þÆñGÅ?éØ÷Úݶ¿¨ÿný·JÒ¯´í/Y»Ó½F¿‰Ùëþ càOŒßðpÏLj~~Ò?¾|ÿ‚yøÏö}øIà­KöXý¡üqñ¢óUñGÇoٻ↫ñ Æÿ¾|5øñ;Àúwìà[ÝSñ/†ô­×Áúg€#Õî4¯x¢ÛM¿þ³¼û_üñ×À_~Ó:wˆ¶ñï‰üGñGàׯ¯‚úÞcá(–m{Pºø{ñáïþ#ÿgZÄÞe¶¡„¤²Õ\éSßyrmúfŠü±øGÿ±ÿ‚\|t_‹Ò|1ý®¼®[üð¾•ãŠ×Ú—„>)ø?Mð¶“®øŽ?èV‹©øÓÀžÓõïk~+šÛÃz?ü3s¬ø×T×/tý.ÇÃ÷º…”7D~Ë·ïì—ûfëß|#û<|T›Å^9ø«Øh_¾ø³áïÅ/ƒßþêZ »þÍOü2øÑàŸ‡Þ=Ó-/ÚÂö;MN_ÿf\Ok<^4Ñ´`ìj+å‹ÿ¶‡ìÿðKÄ—Þ ñV³ñÅ~5Ò-,oõÿü øû@þÓ¾4ð­Ž©n/4ËßxKönø_ñ_Ä^ ´Ô¬Šßi÷)Ótˆol^;Ûg–ÖD™¯þͶOìÃûaèž%×?føžž֟Þ<дÿí=Ç?|B2â'ßéÚü­¶º4¿økD¾’KKÈÒ{K…ˆÂ?à©ßðPMþ ‡ûüHý¯µ¯„Þ+ø×õ èZ€¼/©GáØ¯õŸkö~Ò®#Ñ´Û/x3Å~6ðÿŠl´a¡Úø’ËVÓ<9á?Z.™x§A²ºýµ½…ÜÚÅ”mq4þMzoìýûJþΟfŸþÒ¿¼a¦k³^¯àí_]ðg‹ì<+â_hÑø+À×:¶ƒ©Meá?x{Þ"Ñ´Í_ êvVö3øvÄý—OGÓ­¥²’ÒI@>Ž¢¿2þ Ád?àš´?ÅüøEûWx;Ä¿|à|Rñ¦›á‰>Ðü%ð÷À/¤¯‹¼[â_øßÁ^ð&‡¤hñëšeä“ê^%¶k½6y5[»Ómo.àÁ`¿àžPk_ôÍoã—ˆ<£|Yñ¿…¾|Rø“ðö’øaû?üKׯ ¸²ÓüûIüDøCáÙÿÆMz.¡{)ü;ñ/Qµ¼ž[iåŽ)]?L(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùÙÿ‚À|ý—|ûdþÀßðT/Ú‡þ -âØçÿ²¯{§hßì4›í~ïö„’ßÄVž8Õ|à};Ã:ÒøæK¿ÙÛGáoŠú'†üñ&_øûAkËo£}ýWñuûc|4ñ·Ã¯ø:àWímû~x{Z?ðO}áÞ•¥þÊ_¼We©ê¿³¯Á‰:gÁø£‚ÛâW‰#øY¯Gñɼoâ½?UñÃèÖqÝßø+ÆÞ¦ _Dë?àâ¿Ú›Cý­àŽÿ|[¢þÂÿ¶w‡4/ø·àoÄ/†_´§ÆÏ…? ~øoឺÿ¾xFZxcâÅÏ þÒ¶ë㟠ø×]ðG‡ï<ðOX¹žãÄ^kë¢øM/'~Æ¿³Ä?x‚þi®oµßxÓà—üIâMföâæY®'»ÔõJööâiæ–ifÞYdvg?”?ðp>½}ûdÿÁ)ÿiÿÙËö7²²ý§<âýÂ:ñ$õ;_Xx3á÷ÀøãâOQÕ<-.­a?ŠüFÿ cðg€>ÙÍuãkºÔáÝ÷JÐ$øWÿ`ñ'ÃÏø+oŠ4 êþðu‡Ä†±ÂMVïÂÞ.×g ûYÑ,~0üJø‹.‘w­éš'í'ñs\ðn‡éº}ó?Ã/ƒ:?‚4{)ÓÄ~2ñô÷Ÿ0|(ÿ‚¤þÅŸðYÿÛíbï…-¼Oû4~ÏÞÓþ6ë¾Õô_Ãv¿¶ÏÅÏ xž+ßxgMÓ5Ø,5~Ïÿn4«_ˆþ0ðö³¥ØŠÞ7>{‹ Cᇄµëo~fümý¬þÁ¸ŸðYW¾ø‹¢ÞþÂÿ·üiñ;öœý—<5õþ³û|U½º´¶²øÓàÿ iÖó[éÞñ„z£jñxGBUÔ5/Ûx‹Ãö^k_‡¿ pîòÎÓP´º°¿µ¶¾°¾¶žÎöÊò®m/-.bhnmn­¦W†âÚâx§‚Tx¥‰Ú9‘ˆ?Êwü½ÿ(׿ìîþ3êð–¿kfÿ‚²ÿÁ5`ø!í%/í±û=¯ÀËß|2·ø”<¦?‡®>$iž±ñåÿÃëwFkɼoiàýON׿ð¤V¯-í±û–dŒÿ9Ÿðg?íeû6ÙþÃì{ñ›ÀִƧûIübñ¶‘ðNÿV[k~“Àu#â= E»Ž5½" /ëSÞ^é/y ‡öeÜw­o,E(ïŸÚ;áÏì½ûÁboÿটÿà tÿ~ÑŸt_„¿?àžð‹>%øçâ~¥¡xcDøy§Kà¯|/½ñW9ø[öŠøéñ'á‹Kã ø?DÒ<#ã/…7‡ôSÃðêZwŒµéåøÍyâÿYxfëRo†þ ð}÷ˆüy'‡¬5M µ`ìZ¿”oø4þL/öÌÿ´¡þÑú¦¿fŠý2ðoücöjºñ/Å/ÚŸÆ?µ7ÿ ÿÁ9u¯…ß²Ÿ€¾|VñÚéþð?ˆÿjmnóö²øƒñïÃ~ñN·¢i~ ñ†¼ŸìÿgÛ][B‹SÖ´xƒÁþ*ðö•§é0Ò¾!ÛOø]ÿŒþÚ²–‹û>~Ðß³F·ñãáî…ñûâÿü+ã_į…ßõÝcûÇ?ð?‰~ ü]#_𦉪Cis¬Ã7ü+ÿ«[1.¡¥¦‡pú­¥’Mf×ÚÅ~hÿÁb¿f¶oü;ö¹ý™ÿg]j=ã/Å/‡zu‡ƒÚ­¾…‰$ÐÿÁÒÚOìϧxWáüûþ µû[þÆ?<+¥i×õ|6¶Ôþ CJ‚×NMcú/‹.¾êú/‚/í+íNð—ü,h,lî,týSñäë2þæÿÁ/¼Gû|UøwûC~Óß°×Å=â_ÂOÛö›ÖÿhïÙèº_ü#ïðï⮯ðcà‡Ã/ø;\ðÝݽˆ4jšŸÂÈþ$ø†ÇÅf«I¬xþöòÞ+­ëGÔ¯²<%ÿmÿ‚{xëáŲ|{øÏðïöfñö¯áØ­þ"~Ê¿µíþ™ðkã·†u›½9Oˆ<ª|ø¢šŠ|usi;Ï¥Ç?ƒ4è^*F·Ÿ@¹Õ-5+37ÉðEOÙ[FøCñßþ ‡ûJ|øc¯| ýŠÿk¯Žµ¿Ù3áˆ<®ü6‘ô†?õ'âׯ|1ñ%¦•®øáÿÆŠ+Ö5†ú¯ xfé¼ á½÷Mðî™áKŸ #€| ûÿÊäŸðV/û0‡úƒÁ4ëúý¯äÄÛþ ÑÿEü|ý³ÿjÛë/„ÿ²gíëûèß ~~Ñþ4»µðÏÁO |Iðw…ÿf6ÿÁþ$j“ÅáoëW2þÎZÃXÃâKAKµñ…ÚÙ§ŽàÊÿ¸¿²ÄOxG¿·ïí¯ñ ]´økû>üný§õ_Úž:ñø—ÂZD_>þÊ?²÷ìÉÅKùõØì&²ðWïÿg|Eð޳ic©àxs\´ûV™g©^€~þÍÿ<-ñKþÿÿ‚ë~#¶´ŸÂÿ> üøé¡ø@ÁÑ5Œ³~Î_³‚|%ã]KF06™©øNÇâÄéÒ6¡¥xÏSÓ¼K§ºjöËmý=üý„?doÙ³ãOÇÿÚ'àÀï |=øÕûQøŠ_üvø¥Üë÷º¿Žõë­Vû^Ôo gXÔ´¿G¬øƒS¾ñ¿aá Nñˆ.]Ö­/õeŽñ?ÿÙ þ wÿþð¯üÃÿIý¤ügý›¾ ø#áwÆ]cÄgNømãOø á·ì¹¢x§IÑü_wmŠÒXêžñ]¥¥ÅÅäzÓè·2hw:”/o$ߨ§ÇKÇÿ¿cÿŒú¿ì•â½"óâ—ÄŸÙ³â.¥û2øâÃVµ‹@ºñÿŒ~k_+øÅ¬üÕo|J|kâI5ñ§íáÏÙBÐ>G¢è:Üšª| ñÀ- ö=SA‹Äö÷:„7ÿ®åñÚþ­7?ÿÑþÙß²¯‰¿à“¿³wÁMãÏÛϋ³¿Áÿ‰^'øáðéõè¬ü[ðÇÃgÅïj7¾'ñf|¶×zw†â±×4›µ×Ìo¤Oý¼–÷’«>ÿ‚”|*ðçÆø;þ Íð7Å1B~ühý…ô+¯Œ¾û¥ÆñWß~!þØ?´>‘àŸXJ‹ˆ|/®øËàû?išžÓWдˆô=VßQОçIºý5ÿƒ§|;¡êŸðC/Û÷PÒ¬®î¼!ªþÍZç†'–/¡êó~ÔŸ<+.¡§cÞåü9âMwF.ƒþ<5[È )Çá×íSÿ(ýƒ> endobj 577 0 obj << /D [906 0 R /XYZ 130.04 523.139 null] >> endobj 190 0 obj << /D [906 0 R /XYZ 68.868 205.047 null] >> endobj 905 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R /F34 597 0 R >> /XObject << /Im13 904 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 913 0 obj << /Length 2406 /Filter /FlateDecode >> stream xÚÍYKÜ6¾Ï¯œ‹p+¢¨gœ…mxI¼™Ù½8¡éfws­–ÚzÌØÿ~¿b‘z´5c/ÃÎaÄG‘U,Öã+vè¼Ð{sÚïÏ·W?¾™'DP$IäÝî½4ò4÷²< Džy·;ッ>—']«ëMK¿?¶Ê4cÿÓPÖ×Qæ÷º×ªsÓeϳ綹Žrÿ^ï,¹®;}8šLÛÔ<ÑíÞš·Sm]V<µSû¦=] ¿ìµ#ÐýQ×¼<6`²%N¯ÿ¼ý;εqÇ)ËÞ•§sEÂÉ(õ»áîz“$þÔ¶W;ëþµ.?kâ+!ö!¦çVu¾'¡WM¹Ãö~`ø‰,H’bÉô–¥™ÿG(â¶ë¹3S}¾ð¨îøÛ»5}Ó“QŠAë½Þò¸ªU{°‹šýÅ¢sÙ‚°²½²ëÔ‰xÜU_®ó’nb‘Nb,²‘e³vÇVf,+}; ¥Ú1#‚ÌRÖÉåœx‚dœL¬Lg¾­£T¥¹Ç#÷Ü‘ž£[„¾TðœÄüñu´°X™$h§¸x#ï+KŠ,D’išâXAVH¦úÈTKÛ/‚8-¼Õ K…™"R¢2ˆ“Øì-˜èÝ C‰ Ž!¶´tÚÒ%3º4HÀ1 D‘3‘ ¢«W·WŸ®Nz‹3°Ä|'A.so{ºzÿgèí0 k$¦ éÉ‹ƒHÆhUÞÍÕ?Ù»ìÆ­dd‘õîhM©IKl'¢ˆ‰N뇌d±P«^½ @æÑ\­÷«šó%v\ˆ5ç¸:#pÌ‚¨ˆÅ…ôZ¨ÏTp€$Ïü·=Ûy,ã Á–lè–†Œ;†Óí[õiPì©dä46tj?Tܦ€Aß“*»¡UvðèìZñè½pˆ-õ ˜<Úlõ4mB¾p&â5T&Äu0÷$ŒÉúA ÀxëÄÐûµטÐI„·î ¯†#mûއJúD0íÈ©i¶Èh%Ÿ´2ß·n,í‘4-ä<ðÀ¶i[(ØEÖ•3™8+ÓÐß7UeÎñ`W‡XÍ"ªÍ¾-'e´ß󜮑HËJw&_a dã–rnÜBÈÆx÷ΆÉÜ^Ù¾ÖªÚÝ”÷ÐÙŠ_ˆ„ÚÂ-5©lº¾i­Ä½}º0táOpéGî ¹s¼7º­ÒXÄ2oýy ¹äLF´Ídá­›þË›¿½57ø–Ç{õÙRާD›ªnñ¹ˆÐÂl9?…œ‚–µºïUÍ šzËŽ:6•·vSEW,(.Rß$çá4¥hZL¤ª¸@z„ˆÂŽrqƒï˜æTÚ¢„:eÕ5ܺ3õ•²ûXQ{è(§­l~3?uë ª29[Ó®oŒ $¼VÿÜÜ|›-2GØAî¹e‚¾÷×(‘˜W})ß“É?mîñOYL¾Ü´óý[Ý ph- …Yá.BÀ\`õ‹fqn@](ê•Dh^ÎÝ<Ãy¿ã‚v²(ü—g+PÖg“Ú¹`i7~så½7K~^d~«oŒÿvmâr˽£ªÎdÓîºfd´ŠÙmiùŽÁ”F÷ByÜöƒ˜ËñÑs­8^ñÍ—› |òE(|G0ÖÔ„qnôGÍÍ{t„›¹RpÓçò ¾>ñ“oq˜qýLeÛÔF×ùòÅ 7ÎæönlaM®æ Mú¶4à;œÂ #îÚ]Ç÷“p„òµ‰˜ïdà*Í#œn0êép›i.ÝAŠIœâq {„b|H0ËÜz“¨aÂÖ|†-®é­Î5¥RËÉìίPk+[È´Y‡% ?6%r© ôÊ@Ê4Ô;Ó«[Èæ\jÊæ9`#«óàŸ7ü üócæ¨PœãÃí¯¸üÅ ÞÖ@!å–ò]5@a˜,jz³5@älÌÓXÏïaéx‘á=üÚOÿG´¿qÒ<úcýÉ÷€þ3¡xØF¯äŸ ~02^ ó¯ ‚scþÏüÍÚ þjƒä;kƒô¯¨ ¬uýÚÀgÉÂeó´Ì]ÃpKJ'"äÔ/'ÀŒ —ð"4¯˜±0aFû`’FUñhM €/a4æÁòœJζ%RÓr²ÅélVÀÐÖ£™3zÜMý7m3œŸSÌAÔ?6âaÜ{ɯ¿N.ÓÖÝ‘çÉ·èk}‹šd¶ºvÎüf")»-›aªI‘q:bA@†¯ž7q/ÌR¯ÈMéòÄë¦ Rƒf¯›Knq(‚0Íh«,µ¦eÜgÍ*¤œã¦ñ—‡¹ú¤>÷’â²€Ø)‚Ð5F–˜$ƒÕÈMÜÄÐ<¥L}Õ³ P“°¿Ìâ±p¡7aÞ+jc¨XW8ü¢ùà~ŽÀ¢ñ½Oï¿XÂÕkH³ cKuž‰ƒ{ˆúd=¹q+—ÁÑæ û öHÊ8dc²Í×•Ë ãK(uµýyÆ•ÓÏ2™)¨?/ GS„ÑŒ+Â̬0ÌOÕÓ<+K\EaP€"²¯ÓI¶ ‚±þh¥{ endstream endobj 912 0 obj << /Type /Page /Contents 913 0 R /Resources 911 0 R /MediaBox [0 0 595.276 841.89] /Parent 903 0 R /Annots [ 909 0 R 910 0 R 915 0 R ] >> endobj 909 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [221.806 395.817 232.088 408.437] /A << /S /GoTo /D (appendix.B) >> >> endobj 910 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [490.364 395.817 523.408 408.437] /Subtype/Link/A<> >> endobj 915 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [67.872 381.372 250.167 393.991] /Subtype/Link/A<> >> endobj 914 0 obj << /D [912 0 R /XYZ 33.853 921.043 null] >> endobj 911 0 obj << /Font << /F17 421 0 R /F27 556 0 R /F28 616 0 R /F1 891 0 R /F25 604 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 924 0 obj << /Length 1625 /Filter /FlateDecode >> stream xÚ¥WKoä6 ¾çWÛ‹d´–ß.C‹6E tÑ6ÓSvQ(ÍŒ°¶5kËy`ÿ|IQrì©7=Œ$ê#E‘IGÁ!ˆ‚_.¢ÿ9üG8ÏXžYR°"ƒº½ørÁYWYNˆÙ6=[ª(&Ò—‰yBœç¬,‰Ze¬LýÖûÛ–§ÁOúâøy¶ÍLØŒê4ÛÌTûq{ñþ† 4«²,¶û /Y™—AE,!Û]pÞ¨ÃØËËMœd!O¿¿Ü$enU+7ƒì•hGïqLC£hˆ4˜^¨Žæ²“ýáÅÓu/w÷û0¡îvNÜnìUw ¹ èØ)ñ¬¼ðZ·§^ƒÒÝå§í¯pÉ OYšæ¤ô ÚK86 b“Äyø1Ê¢}¯[Ä¿¿I’ùÅËŠñe¹{mtñóvæ^,Ž“ -sƳ -xÿ) v° dz¤*ƒ' mÁŸy…lMp>°v^ÇˈUà»´Ìƃ=Õ_‰^HÅ3ß,/&á2ÜêèCîŸÇ X °"­÷C§ÍQö`´¼å%ŸM/[Ù¼eä~D“æyøeÍ(ƒÃ Q&d«;Ž#¢u lÄ`T½yè•1¤Í¥íBªÁ‰;J"ÀQe8¶ë½ /X–UKRL îIÛK²$|èõgd•[O‘s…„2m˜£ˆÕ‚†VŠÁFô\¬ÕË‚Z=’æ€8܉Vf÷Úž^#þ3‘ÑžIB ËZpŽ#žHûÒD'‰µ5¬|$Èg#ûN€Û"4ZìØå¦€©÷ìJ4Ç gܦ {ÞmRDÞ¸«E#ú%›ÝxôÜË@ãpg‰çFë¡R*»IMë4H,Iùòrz4§mW–ÎN8¡¬€SkÛ±E¢ëJr0lXC—å"àZŠÁG' Ï`ä ŒÇ<Ü‚iü!½läãe–†bòPkrÑNnö½8´ÒÆ¡,¦ÜÂ{ÝlËèNFOÃ÷‹çÇsësœÙ—h™¿«{) è˜ñC0ãY8s€%£ã‘nS#M»®Ö>‚ò+Ž`Ø UV²£ÓÎÀÜg9xÉRH8‹ë½¿÷í°ÎëŽT¯¼D+¯ßN£ŽÃ»«5 ÷(™€5¼3ó-T# ÔYYl'Þ@Þè¾æúÝÝ_¿­ƒäAuX±î p®£«5Ën7!b¨Q´*Ê8ÌmW÷×Ü害øôüöîùËó‘Slkse…-ÕQ^…;åRGW»=H’ölŠŠñlôn´òPˆ¡µdqVÄ™ÖÌ VU©‡~]­¤,-*°>^%*)ó)Åtð¤Åî--³ØƒOÚÈÎ`#ð¯%”8Êj¥ÿ«D§eÌâ´´²âhŠÛƬ](‡‚>éÈ\‚Ì"WñÒù4&ƒ$Âô(ŒŸ©aíÖ´{“з³vŽjNØ'Õ4$zÊÇ‘ÏÇÑk>Žfù¸˜ÜÈåãÓ*†ŸíÆpùšžVƒ*¼u¸¡GZ<©áèâ?å,ŠÏl@ME~î(³Òê¨1`Ý¢¥,þB«EˆP›ø'Âö…í pý‚²P\tÒ6œ0ó'ãƒÁ¼å¨Gé·©}Ež5Ãà†mua|5ÌZΙW1˜Aã‰ùœä‡û(e#Ù.Ö=Ö•LoóñJÓ´hÌÓŒ[æÔ÷,HpWDšïБì;t¤ƒéy¸;ã[U/uæ°ë™ ¬ÔÞIŽäõn¥÷Ë|F(ÏÝLJ}î•÷÷mô'ô¼÷¯’e'|oYÊ7Øòg«lÆPG¹OÊI 2LžPqo {Ý×nÃ,ìÎékÃ}:½­|~¦U+cý6NðÓ@ôjÐ[ 6[(’júúJªdò-’½o-d®(jì.õ`? p æ–äåÆC(^I(| |ˮǞžáªŠëp€íÏÂ¥¼’¿¶„;]G™(_Ó"O½>QtõØyx6|Ü8¶¢îõP듪'yøa=cµ¼?B'í z+j|¦em0•$ÐSÔ£w\º«ÁLùqð;’&ÓU`î¿‚ˆåD,’ÆR$úß8² ÁENuwvÒIünYP\¡FÁC‹+V–®;ÍÊÊé?J[_Ý endstream endobj 923 0 obj << /Type /Page /Contents 924 0 R /Resources 922 0 R /MediaBox [0 0 595.276 841.89] /Parent 903 0 R /Annots [ 919 0 R 920 0 R 921 0 R ] >> endobj 916 0 obj << /Type /XObject /Subtype /Image /Width 1112 /Height 816 /BitsPerComponent 8 /Length 118012 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIF,,ÿÛCÿÛCÿÀ0X"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ñãþ »ûGþÞß üMûüÿ‚th¿oþ=þÕŸücá K\øñ¡kzÏÃ?ü6ø}ðÓZñÏŒ¼U¯ËáÝgLÖ4ÈôhmìïüûMnóPŠÖ}LÒo5­OKµ¸ý‡¯ükðþÓ¿h›ßG?¾~оÓ||= ÔÚψ¾:jÚׯ)â©54“DÁþøWâ½] ßC¼“Ä­ñ ÷×tX|-.™âp‰4ÏŸðYÉ|9Ö³ÿý‰,<\l'’}Lÿ‚s|BÕ¼9¦«/Ù¬âñM×íÍ¢êsXJÂ>¤þ‚âÝd•£Ò®L(³þÿÁ¿à¦¿ðW¯ø,׆ÿhŸÚ+ö>ý›­>kŸ4%·±o~0Üx²ãÇö0ÔfÿŒ³ø[…£DĚܚ”š‹å4õ²V¼þÉkøGÿƒä“ÁCÿì¢~Îßú|Z Úßü`ÿ‚Ë~É_¶GìOᯎ¿¿dÚ7ö3ý¤?h¾øëÆ¿ ¿g¯üø«àø“Áž-Ö< >¯ k¿>%hºN‹­êšÆ×,uÿEÖ3è·v¶×º¾‡-ÿô_;þÒŸ`ý¡¼-ðãAÿ„’? j_ hÙÓãö­Káè|L¯?À¿Œžø‘¬xliòêz;ZIãß h^#øˆmõ;“x¥ ×t¯„7º‹] ?Bø­ñâ¿Ä„?³ïÃïÞ­†¥-¿|OñoNñ±‹Nºwðò˜ô2ª_ßYév7ºž£s –Ÿ§Z\__^\ȱ[ÚYÚB÷W7¹ 0AË,ŒB¢#3¯ƒ~ÿÁFþxï㎛û-üMðÇÅÙCöŸñ‘}¯ø3àOí;á¿ø?Ä_ôm(ʺÅ÷Âxƾ|emÈž]gOøSñWÆZ¶—goq©^ØC¦[ÍxŸ›ŸðqíñûF~Ç¿°?ícð'öfø£âKoü7·ð7?j‡Õ<¤|øῌºÅ·ÂiµKhŸÆãâwˆþ&¾¥âÍ3E𶛥ø-EÕµí;Å:§‰$¶Ñ¤Ñu ÜÙëã_…iO€_ÿhÏéþ Ò|ñûàÿÃO~ÒüYk§Xø«Mð¯ÅOè¾:ðöŸâkU×´‹?Yéí¾³k¥ëšÎo¨Çs Ž«¨Û$W“{~ÿÁ+?m¿‰ö_°oüƒá|_ðM¿Û÷QЭ?doØÿÀQüj°Ó?cóðŽÿIƒàßÃÏ'Å)ï?l?ˆ§áÍÕš[Ëuðæ×ƧÃ.?‚ ×whKû1ñ÷ö‚ø9û/|-ñÆ><Ò>|7ð»i°j~!ÕÅÝÃM©kz•®‹ h:6“¦[_k^!ñ'ˆu«ë-ÃþÐtýG[ÖõK»k 6ÂææTŒ€{%ùmñ3þ aðOÁ·>2þÃ?·§ÃÏÙÓL´mg\ý¡äøðâƒ<7á(¢[‹¯ø£á¿ÁïÚ7â?í)á¯XYyÚŽ£¬ëŸlOÓm¥¿¼†W¶–ãïÿƒ¿>þÐ |ñŸàü/ñGáWÄ-!5ßxïÁšµ¶µáí{M3Ïg3ÚÞÛ;îôýBÖóJÖ4Ë¥ƒSÑ5› CFÕììµ[ Ë8?Óþ eÿ øWÿ­ý‘à™?´‡Ã?ؾ/…?µ€þ.|SÓ¾!|ŸãV½ãH<à…?üM¡é-yã}{Ã:V…⸼gð’ÑÊÛPø©àÏÙÚ]êöº´ÚuÌw‘Zþ“Ã㟠ê~‹â_…/ãñÿ„5'Ž|5©ü>–߯0ø×Ãwz0×ô{ÿM¢Ouiâ¨üI¦Imqá©t‹›‹}qolžÂy¢ºŠFü.ý‘à¦ßðP/ÿðX/Úóöø¹û ÍðÓöPø%áßÇäÐ|{¦êséÞÖìtÿxËÅ5Öõ Ÿ‡>5Ò>8þΞ&ÂgoŽ^‡À?>js´ÑZ\ë>´ÖEö—5øßôQEWÀßÿà¢ß~|l“ö`ð…~-þÔ¿µއgâ~ÏŸ³'…4_xÏÀ>Ô…¯ö_ˆ~,x·Æ>*ø}ðkàÞ™¬CNþÅo‹?<u­E¨Z^i6×–2¥Àøgÿ3ø/âÚ/Ãß²Æo‡?ÿcÏÚsÇ:¥âo…ÿ ?iÍÀ[ü`ÑtFŸûn_„¿þüJøËð;â«¢ÁÛu_ xsâçŒ,¬¯&Ð ]AìÀ?F(¯Åø(×ü?ögÿ‚^x’}ö“øûkÝèR_éú/‡~(ü?ø¦ê?¼qâ=CÂúw‹†<ñ7Æ>ð?…u¯XéWóǨiÿo¶h/ô?Y¤’É êF¬|mûzéö:—Œìþþ˵W퇦|8Õuÿx÷Åÿ³—‡¾ ÅའÄþ»¹Ó¼Uá]Ä¿þ9| Óþ*x›ÂúµÞâ=à«üIÔ4/Yj^Õ ´ñN“«hö {Q_þ÷÷ìÕÿøM©ü\ý›¼Q«ê6ñn­àˆ~ñ§‡ï|ñ;áwŽôF_í|CðV¨Mþ«¤/Õ»,—šmìÿbÔ.&µ¾†ÖÇíSûx~ϲ©ðïÁ_5_x¿ãWÆ[û/à§ìéðÂZ§Äß_/l›ªËàÿ‡ú ™íü?¡Ú¬÷¾"ñÏ‹/¼1à Ú[O.½â­8„Y>Ê¢¿/5¯ø*¿Â„þ?ø]ðÿö¿ø ûLþÂíñ»ÄÖžøIãÏÚOAø3©ü"ñ—õé^ »ø³û8|pý ¼ðóÄÚ¼Bâ]/Høµ®xêõ,¯|•-nÊ{ŸÛÏþ 5ðóþ ïágñçÅ/€?µÏÅ/i¾Õ'ø3áׇ´yž+íCâ‰ß^ðþá8aDkÉ¥Ô.ÄzhmNþkM>9.Pô*Šü6ñçü÷ö:ðgìÇkûXé? ¿i¿‰? ô„Ÿ>4üdðgÂÙu/ÙË´ú%·Âmã.­âÿŒ¾ð?¼W/‰4)->|8ñ¿Äoˆi¦k?ˆÃcÚ֫ê¢úíÉû-k±îûzÍñkAðç쩬ü2Ó¾-Šž-Ž÷ÃÚ~›àýIaH­¦ß[.¯k¯ Nxü:<2–3ë·^'hü=§Ø^ê×Ö³€}eE~DéðXo†šŸÁøj¯ød/Û»NýF”þ)oÚ¿TøAðæÓÀkðþ8ýþ)£$ý­Ÿáwö)>#OGû8?‡¥ðâ6· ä–&zSÿÁY­üA­þǾ3ø1û5|@øãû&~Ù_ôÿ€Ÿhïk¯­_ZÞꮿ¡Ÿ‹zÃOxGÄvÞø!¤jºÜ^"ñňŸ > i¶ºÍë|0¸C½RûE~~Пð_ÿ…¿²ÿíðÏöXø½ÿöÿ‚™h¿¾7xˆøkàvcð³ödÕtŒwÏâ8ü/m'€oÓj+Å~|yðOí#ðöûâgÃØu¨¼1eñWãçÂ$“]ƒL‚æÿ]ý¾;üHýžüa¬éãHÕµ«9ü3®øÃá~»¬ø:ùï"¿Ô|%¢j¾•¡j×7º&ñü_öÙøåû~Êÿ>-üý•>#~Ñ~3ðŸÂˆþ>ÿ„‹H¿ð‘ð—á—à_ÝëÚߎþ/ßø—Æú‹ï4? h¶·þ%‹Ã>ð§Š5..†·Ûµí?¿àߟÛÇã7„?à’?²ÎŽÿðO¯Û÷ö‘º—Wý¤õýOãwÂk/Ù&ûÀ^?Ö¼]ûXütñf¹©h÷?kŸ†:¸»±Ö5«íÄ2ë¾ÐËx—LÖ?³´´°jú€ï÷ü{ö„øåû)~Ä´Oí û6ü›ö‡øÙð·ÁVúÿ¾Ãk¬j ¯ÜÏâ=HÖu‹í+Ã²Ûø‡[Ò< á½KXñþ· h7VZÖ½£ø^ûGÒ¯ì/ï­ï ó_ø$¯íeûH~Û°·ÂOÚ/ö­øÿ áñÆ’x’_Àði~%ðî“­i:F·u§è~=ðï…ãXý¦5„_ “Â:&©ÜÚÚÙøÃÄ_ÆÑû]xcÂEïm^çXñ'ìݤ¥„3,·ñ[.M~±Ñ_ž:·ü§à®½âÁ³þ-þÜþ7Ö¾øâÅç‡ÿe†Ú¾•àï‡?ôk|5ñ/ÄŠ_¾'üø#ài¾ øfãþoxOÄŸ¬êÞðfƒ5Õµ«x§Ç¿þü}ñÿíMà? Ùý§í:®£âïÙÿF:-¤Ï«Ãb¢!(êÕÇ|=ø…ào‹>ð—Ä߆^-ðÿ~ø÷Ãú_мã? ꖚׇ;þÖß þø¿áÏÂÍBËÆ?>9|a]vãágÀ…%§‰¾'xÇIð²ZÉâ¯5¾©ªø{Â~ ð7†Eõ„:çĉ>,ð_l5 CLÑ¥ñöÞ«¦é×0þÓßðT þÅßüwûEþÔ¿²Gíð›á€ôˆo®uH|3ðâ½Æ««Þ_YiºW…ãO?´?Å+O _ê÷×ÐYØø—â}÷€~­ëEa}ã›+ûÍ>ÚðôöŠóŒß~þÎÿ |_ñŸãÄ ü-øWà-0êþ.ñÏŒµH4D±3Ãi¸ºœæ[»ëë›];KÓ­ãQÕµK»=3L´»Ô.í­¥üü?ðTë;¿‡W_<7ûÿÁD¼Wû8Úéâ…øë¦|øK£Xj [ÕãñÆð+Æ¿ü)û^ë~ºÑÄZ½•æ“û8Þ]Þé—P^ÚØËáýR¢¾7Ðn¯_¿d‹ÛOöuþÕÿ5]+OÕ<1¦~ÍžÔ>"|Kñl—ž#°ð½æ‡¢ü=™ôMrßÄÞÕ/eÿ„Çþ!MUð…¾“­Ëâ+m8é7iÁÿ³§ü¯öCý§GÆ á÷ÂÚ×Kø­ð⿇>'ìûã_ƒš/‡~>|Eø¹®i~0Öu_ø#á°ñýö§¥Ýü<Óü âkŠºÏÅ9¾ø_áÄsÝø§]ÓìIºPÛŠþÿàŒŸðSoø(íïñoöÌð?í—û Íû)ø_à?Œm4o‡~!MǾa{q¬ëZ~¡ð«Åw~9Ô5;â'Ž|?§XYëZŸþ¦ƒá±ÜÛ5dž4È5ÏÝj?MþÈ_ðYÙ‡öÛøkûQø×à—€ÿhMKDZߊσ>7þÏcÀñoÇ7\¸Õ¼K¢è‰á /áG>$|?ø‡eâ}CÁ¾.Ãú‡‚~"ë–—qxsRº¸–ÒÔZÍs½ÿìÿ‚¶~ÏðRÿ~Ô¾ ü9ý¢>ø¿öCÖ¼៌ZíðëDøi¬i¾(ø}ñ7L‡Ã6º¯|MâKM{ºŸÂéÞ2Ó|Q£xj}&ö]6ÚÐjR> ºhê=òíSûl~Ï_±Æ—à©~3x«Sÿ„Ç⧈?áø5ðƒÀ^×¾#|jøÓãmPxcágÂïYjž*ñ]ü/}b5;ø, ðÿ‡¢½µ¼ñ.³£XL·Uò¿à¬ß~Cá~ØŸ²çíûü"ñψ´O h¿~=øSàn¹ðwK×þÕ¿?g øÄ~=ׯõ[ÿŠþ(Ò| ðkÀÞÑï|wñ ã7õÛ+OIð¿Ã/ x}.o|Gw>“kw­ê¶ûO xoöw¾'ñV½¡ønÂ÷V·ñˆ¿·]ïÁo‡ž0ø¿ñÇö7ý¯þü*ð†uïxËÆóèÿ³ÏÅEÐtMM¼Ôî/.üû=þÑŸ¾'Ém4„Kiàk+BŽQ¨ø·Pðîk©jv {Q^?û=|kð¯í)ð àíà]?ÄO‚~?|øiñ¯ÁÚ_‹-tëi¾ø©à½Ç^ÓüMc£êºö‘gâ =#]³·Ömt½sYÓ­õîa±ÕudŠòo` Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿„ø1×þI7ü?þÊ'ìíÿ¨×Ūþ©>=ÁI¾|ñ_޼ sû/ÿÁD>,x›ÀþTdü ý€j_Š~ñeÝÆ›e©Áoொ>øo/ÂÿGåßGmq¨ZxÇû6ÏP‚ûOº»ŽúÊâÝ?ïø5ëÅ??à˜^ý®üû_ÿÁ??à¦Þ oŒ¾"øCâ/kÞÿ‚{þÕ;Ѧ‹ÁzOÄ-?]°Õ#ð·ÃMCZÓ¯VMI{&:DöwQÏ>û«v¶epì+þ ûExËöKÿ‚t~Ù_´Wï“âÂ߀ž;Öü x`[¤Ò(¸_i²^iz”hׯd:v¬`‰ãGÖ´ þMí¦Dgþ ‹ñ—Wý£?àÖ¿~Ð~ ±K×¾;~ÍßðOOŒºÞ™ ?f‡NÕþ'üuý•|m©XÅoæMäGiy®MnùÒùKO1öî=7ü{à/ÇÏø.Ö©ðGöJðoÂO_³WüóÀŸto´·íû@|<ñÁˆÿ…tÝgMðŸÂo€¿>#Zh-£Ôa×õ=O_ñ§Å?xLеÑ/m¬µ[Ï?‡|Mú)ÿ^ý‚uÛþ IûCþÂ_í´¯ júϯhŸt¯ÓMÐáÔ~xÓÀ¾ø]WR‰¦éZÍÏÃmÁÏ©ßÈÉag¨Ë«È2]ÆÚÿÁ2|Yá_Á"?àŸ>:ñ׉¼?à¿ø/þ Áû(x³Æ>1ñf³§xs¾ð¯‡?fOë!ñ7‰¼C¬\Ùé‡ô-"ÎóTÖuRò×NÒôë[›ëë˜- –UòOø./Â/Ø ãüÿÇZ7ü›âÇŠþ þÍþñƒüxÞ8ð‰-t/ˆøïòê á­ Àúuï†|mŒüEâKKíkDƒÂÁž%¸¾²½¾ÔììôûÍ"ß^ÑþýŸjxï@Ð|ñÅ^>Ö|P-¼7¥øò6ûeCÿÿÁ>¿ißÛ;Iýƒ>,üø7íàoØûö‚¾øŸñëöXÓ5mNñ7Æo꺧Ã[¹ï<'câ‹ý'Ã^#×<5áïøÏÃiáË­RßVÔì~#^¦‰m¨Ì—R€}Cû,~Ñ_¾0~Í?>þÉ?ðKÿéß²?‡¾ ø[à÷ŸÁB¿h}#öp›â_ øGGð6ƒywàü-ýª¾0Ká¿øÙntýsÆÞÑn¼[c=­ìÖA«Mqgù¹ÿ]kš¾­ÿ¦ø¿a©j7–~ýº¾,è~¶÷E¤éfïͧٮ—m&½âoUdÉÍÞ§u&~|èsRý©5|2¸€¿~;Üü[ñ‡g³ð„¾,~Ï?> hñeî™w™qñ3żáO è^ð¦¥Üx²mY×µ+ý2Îh|¥øËSÔt?Vþb¿à‰³í§û ü ø×ÿ»ñ'ÁOÚgá÷Å­3þ ©ðkö‰°ý§4ø«Â¿³WŽÿe‡ÿ¿e↥¥|u±¾·ðÆ¥mñkáwìçã?‡zÂKmoSñn½§üfÒÔu}WIÓæŽm"k«G¯][}ŠOìáwÄM/âÏÃÿ üFÑtx[Kñv˜º­—‡¾(ü?ñ¿ˆT-4Ð}—Å_<}¤h1𦦭 ;izþa|°¼3˜<©¢vï«ùfý¸>ÿÁ\`ø)íÿÿ‚tüð—í¿ðOöÍð7Àÿ~Ò³^¯«&ãïøö|ðWü ž ×¼ ÇXÒµi¬F:¥Ý…džbñs _ÆÞ2ƒÄfH<=â[êf¿žï†ß¿koÙWþ ÿU×þ!~Çÿ´w?`_Œ?¿ex ã‡z¿Ä½[Bø¯¢þÅ¿¼ ñRѾ øZMGâ÷Ňº—‚ôŸ kþ1ø9à/?„|uàtð¥ýާy© €x7ì™ÿžø5ûnþÚ¿³ìÛû|~Ä´'ü§öàøOãüTý™<3ñ•ut🎼câ/‚Ÿ¾ ø—BÓüIâOü8ñ Çâo‡_¼W{á­'QðŒ~ñ>·c¢fx¶ÿ_Ó<=¦kþÿ«Ê,¾ÿÙÿü,ÿÖuýª«ï¿Ú¿ÁºÏü?öšÿ‚q'ÂOÙûã¿€¾~Å_¶G‚¿l‰?µ/íð/âGìËy™ð·DÕî´€¿ ¾ü{ð·ÃÏŽ.¹ø·ã—ð¿ü'Ú€ð‰àmCðEŽ£&½®ÜË¥Xµø9/þ Ýñ«þ MÿÞ¹øWû;i±ø—ãÂ/^ý ¼àGÕt­Oˆmáo |Að½á;O\’×IƒU |MÖµÝíGK‡QÕt;=3íñ½êÅ0î׉¼Yá_éÖÚÇŒ|Máÿ éž ðŸ„ìõOk:vƒ§]x«Ç¾*Ѽ à_ Û_j—6¶ÓøƒÆž6ñ‡¼á=)[QñеÝÃÚ=µæ¯ªXÙÏü¶Áã7ðI_ ^YÜMkwkû`ü¹µº¶–H.-® ðʼn`¸·ž&IašQdŠXÙdŽEWF £w¼oÿ ðìÉð£Mý˜ÿj/þ/OŽÿ²ÇÇßÚ‚Ÿ³ïÅ‚¾øì·ñÀß´¤þо!|Gð¾…àß׌>+|"ð—€ü1ÿ KYø‘§Íá¯_øŸÄš—…¬¬ÚQùKÿVx‡âí?û&Ø“öqý‘?nŽ<1ûC|'øƒ¬ëß ?c_ÚÆ¿ÂúÃj—7š?Æ=À·~ñ\пômòϾ½u¥xŠ gCÖcÓ¯ôMJ+pé‹Aý’¿g»‚_~xŸáÃ/ˆßÿgÝáÖ“ðÇCøà ø»Kð¾¥ð»B±Ð¼#âKñ›«Zh~&Ò °K?[Ó–-RÂâIe¶¾Y¤oÈŸø8'à÷ü×â'ÁÙëÆßðSˆŸ|!¤ü+øÄÚ—ÀÏ|×þÇÆx† *ÃYø[áÿÚøsÅ·Œ4ív;-õ›ý ×ÚυÌZøû‘êó®«ú­û,~מý¬4ßßxsàÇíaðbëÂVž¸Ö4oÚŸö\øÏû6êSMâ¸õ·‚ÃÃRüTð¦¤xæïDmê?u_XøvKÍê7±E¯èòÞþÿÁ\ÿaÏÚWÄðW?ø&_ü³Ã "|4šçÄ66¶ZÇ‹|ð.¦¾ÿÅkš¿ˆà†°¥þ·¨\êw–úWÇÍ›§ß,zG†?jŽ>ðþž­‹m'AÒtÝ*Í1û»K8#ÉÛ“õgí»«øÏöÍý~?þ˳W‚þ#[xïö›ø/ñàËøËã7ÁOŒ<ðß¼-sáø³Å7¼àMWPÔí|+â-RÛÂþð¶Ÿ­ø’ÿÅÒé°ê¶'‡lüEâ= ñÓþ¦~Õß?boØ7öRø‘û9~Øß³ÿ‰?àž?kúk¿ ¼w£xãÂýwÁŸ¶mÏ€~|+½Ð{ÚŽïÄŸÿh…þ3ðç„þÛxûKÅ?eÖåzÜ? îõÐ ÿ³gü®ÿÿ´^x/ÿRØŽ¾»ÿƒ£¿å·7ýÛ7þ¶ìû_–??hø7þ-ý­à ¾ ýƒÿà¨6²ÇÅïØ·AýŸ¼ãÄÿ‚r~Ö—Z׎t‰¿f­b{‹ïZü0—Æ:‡æo…ž*Ò­µ ôAvÚ’iï>—yý§Þÿðr_įücÿ‚o~Ðÿ±?Á?Ùƒö×øÝñÃãg‡ÿg¿x=~~Ç´'ćֺv‡ûAü7ø•¬[x—âg…¼¨ø/Añ™áχÚÐÔ|'u«·Š´ûû½ÞûF·‡R[˜€?HàŒ¼1ðçþ EÿõÓü/dÖ±ø·öFøñcÄ—3Éö‹ýkÇ¿>øâŸÄêw¬¢{ëýoÆ^.Öµ nnÞk“ÑC$òˆUá×ìY4–?ðxŸü³G²o²iWß°Ã]^óO¶ Ö«‚?àœò&£=¼Ac’ôI­ë›–S+Ë©ßJìÒ\ÊÍú¡ÿ¹ý«¬=ý‡ÿiŸ ø³[ñO¾øsáν¥üЯþ­ÿÆ»Ø5¿ _^?áœ^$Õ-4K­7SÕ,4å»Gømû,|]ø›áø93öéÿ‚„ø«öÿ‚šxöYý£ÿf | øiãCþ éûT}¾ohìs 6¥â Úü6¹×<;á}Nïà_'±Õµ8æµ²›D¸×l4oµÞ¦œý¹Wžü[ñ­ÇÃo…?¾"Ùé­¬ÝøáïÑ|?ÿîøBl®uÝ^×Á¾"]XøÁ"[Zi³X²j_ÚZ_—þÆŸ²?í ÿýª?i¿|4ø ñGö¡ÿ‚ZþÕ~/µø³á-Oà‰ÿ ãwìñÖ-FÖãž ø¥\§Ž¾$xûCžÏÃéâ_†ÚG‹¼@ºG„|5ÆŒ5‰u}>óõãÅ´oÅ_Ú²?áWìðÓöŽøS¤xƒ\ÐâgíGñ×à/ÄïÙšÃáŸÃ»=^Ö÷ÆúÃ/‡Ÿ´O„¾ü`ñÏÆOh–—¾ðí¯ÃøqàËÝjOˆž%ñeòøcJð?Ž? àõoùE—À?û?ÿ…ŸúοµUXŸ ~øKàÿßü*ðšºG‚þøK@ðW…ôÕ*Ík¡øoL¶ÒtäžUHþÑvÖÖ±ÉyvÈ%¼»y®¦Ì³;ägþΟâçíkû3xö1ýš?d_Û‡ãņ?µwÃ_‹þ*×þ~Ç?´'Œ¾Úüø³¦Ë/‡~0h¿ð'Œ5õ‹~Ó/,<)«ë ¤jÚ‰´}nM3VЮl[ú)ð‡ü+á狾x¯ã¡ý¿o é~ Ô|)¤k_<_û~Ô:7ÆûCÅŸfX—ŸÇÃk¯|@Ó´ ®L>+ñÃûøcÃÿg¹¹½Ö…ŒkvàÏ×ü|ïmÿ:ÿƒ˜´Kgk}Kÿ‚€Ù¾™¤@Æ-3Nyÿh/ÛÆÒw±°Œ­¥£Mi¦i¶²µ¼Q™-ôû\˜í XþYÿ‚}üeýª?hø9þ õñ‹Àÿ~ üsø‘û?Zxëöfø}§þÑ?¼sðDøSð‡áׯ{†–|6¾ðGìÅûMÍ-ÿ‰“ÀŸÚwЧ‡|#çEâÿjÒkº…ÏŠµ«[ïMÿ‚x÷â·Àø)'üïÇ_¿aÿø(·ÂÏÿÁGl¯ x÷övñŒa/ÚKN𭞃­|yý¦u‹k‹>!OϤ|*´³Ò>9x?TÖõÿÞ[xKÃÚu—‰oµßiöÚ@–ëîÏ¿°GíûÁYµø+ßì?ð§Uý¢þþÑ~ ¹økûxþÊž Ôô]3âÔvš•Ç….n¾5| Ó¼M¨i~ñ®µ­à¿ ø¯XðCjZgŠou»Oiú%ôú_ÄVëÁ€ÅÿIý‘ÿà¤ÿðSØ›âÏìyâ?Ù£þ ïðÖoˆW> Õü3ñ:_Ûçö‡ñõÏÃßx'ƺ‹,õý;ÂíÿÃðkê77–V¥á‹¨âñFŽçIñ¥\K ’Ú\}-ûcx3â‡ÃŸø ÿíOð÷ãwŠ4Ï|hðü?㇃>/x×D½Õ5-ÅÿÎîI­£ôûÿÛ§Å¿ü>|#û(~Ìÿµ5߯OÙ>•¦ë_´§ì³ñßöaø7ðoW¾µ•G‹þ,x«ãσ>¿|;á' ywá¿€«ñ?Ä0¾†Ï@ÑæÓ¬5Kè¿8ÿÁSþ(ëŸ?àœ¿cè¾þÚÿµçÇOŒ?°_Åïžñ—ÁoÙCãÆù Ôþx\ñ‰µUñ‡‰lumWI¸M6]RûBÒoÂØØÝxü}û;|$¿ÿ‚þÍ^ñ¿ü%ñ+ßì>)xßâÿ‡üáÅžñýí÷Å/øKL±ñ_‡¼CmªéZý†ƒà?xÁ–Ú­µÝºèþÑàŽ {{[k[1ÿƒªf¯xïþË«øsöxÓ4ï x3övø«ðƒâGŒþøFËNðöð?ÁšGм <# h6NÒàÒ¼#âxÆVZŸjcŠËÀé•§½ÌqNÿƒwþ3øƒÀ¿°Oì£ûü]ý—?mÿ?>ø+â%Цøãû|ø]ð½L_üaâëY¬þ/ø§Á_Yµm#Ä6?Ùeïˆluëëĺ²M%g‰VOoÿƒƒ¾!ø[áçü‹Åºž§ñoÀ? üu§ü`ýžüðƒÂ>¹×e´øýñàŸÆ¿|kÒ>iž𥞭â¿ê~=À3YÚiš6…«Çky¦§¬G§èöw𽀬ÞþÚ¿±Õ§ü,þÓ·Ä߇6³„Ÿ²Rè³6§­h°Y.£7Â?ì³ðbm[‚íñ¯ x(ü5[wñ+ëá´Ò^ï÷á¯ø5Gögøýû2Á'<1¥þÐZWˆïƒäÿ‚¤x{YñÔ´‰?àÓ/ÛçãEÄpxƒRøÅ'ì+c­xê=DÄ/n5(>*_þÎ~+¾ŽZI Ö纲žâ /$†Ù¤hÓö‹þ åÿÄý’à¡|Oû9èžøëû5þÔ¾Ðî5üFÕ?Ò.ÃEðkSUä¬7®Zö…£x£CÖ|5â-2ËZðÿˆ´­GB×tmJÞ;­;Vѵ{9´ýOL¿µ”4W6WöWÚÝ[È­ÐK$n ±ü¥Á¾Ÿ°ŸÆ?Ù³ã×í«ð›ÇÞ)¶ñgì»ûþÕ_¾~Æ^;ɯ"ÔïcÔ¯£þÑðÂý+ÀÓì ÜúŒ>2þÐ&«}©/Ùt êWá·Ã¿|"øwàO…?4KO x ᧃ¼5àxzÅYè~ð†g xI¶QŒC§éZ}­¬dü̱bX’{Z( €?à¬_ò‹/ø)gý˜í‘ÿ¬ëñ¾ÿƒ\å°ÏýÜÏþ¶í_¯ÿµÁøiÙcö–ýœ?¶?áÿ†ýŸþ2|þßÛ¿ûþ·Ã¯øûcg‘s¿û3û{í»~Íq»ÈÇ‘.|¶þzÿàÿ¿iÿø'¯ü§Lÿ‚xüjý‰j+oÚóöw×¾6økàÝ·…~ øÿÇ¿³çÇWø‘ñ+ÇŸ|âÈ?jo iìóà/ YøƒÇWOŠî>'|Hð.£¦èz\WöZ^§ª]ÿd íÇí¯âÏ ø÷þ Ãû[øëÀ¾&ðÿ<ãOØ“ã׋<ã ë:wˆü+âÏ øàGŠõx›Ã>!Ñîo4{Ãúö‘ygªhÚΗyu§jšuÕµõÌöÓÅ+~nÁ®?ò‚Øgþîgÿ[ö‚¯Wý©ü0çüGBýtÿ…_´¿íã{Ø Zý’|eû2þοh½cÅÞý›¬~i>'›á¿„u[_éž#Ô屓LÖ|q'†´ë剂O3N¼†–àÚ?ˆ0ø]ÿíý›¿a³íðã§Áý3ãÞ±â©þ9~Èÿ~ü/¸°ñ7í ñ â6Š4O‹^3ðN•àCS¾ðÿÄ}mü;&·kâIï4ý|[éXéfú`„à¢_ üñsþþÿ‚Jø?ǺD:ï‡mÿcãµÓnR)-åñÂ‹Ïø(Å?Ü\E4sE<:Œ¼ jÛÉYãµhIPû×ú6ÿ‚´Û[ÝÁ+¿à¥Q][ÃsþÀß¶ÊÇqs"ÜYþÏ¿o,î$VQ5­Ü][J’ ˆbž&YcFÌGí1ñ§âOÿàãïØ+þ 3áØ+þ ¬þÊ¿³÷컯üøã%ÿ‚t~Ö:~»gâ¿xoöÃÑã½Òüªü2°ñ>« é?<&­wo§ óoo¯6‘¦jÒXÚE¨~èÿÁRk ÿÁ6>?øÀ³OíÙñ'Ç_¶?ìkûJ|?øMà~Ä´¿‰¼[¡øŸÇŸ ¼CðßCÓ~1hV…ïÁK·Ö¼Qe¨6ñ2?j÷š ž©©húv¨mÞ`ÿàÔ¯‡Þð‡ü/ögñf‡§­¶½ñÆ?´Žü{¨O­xAøïñá‘w4«Lëaà…Þ Ð­Ry'h-t˜¡…ã¶Hmáøßö-w±ÿƒÅ¿à­Z]“µž™yûü7ÕnôëV6öZšø'þ É*êW6q·žüK«êÒ Éck&©¨¸“uíÉ—éßø7⟊~ÿÁ0>þÉ?e¿Ûà߯oÙ«À?´‡Äoi¿ÿc?Ú'Á^×tKÿÚâÄm/GøkâÍwáý¦…ñÇÚׇ~$èØ_ <3yyñ\¼°ñ zG†ï-´k‹¶üáý›þ4üIøuÿ!þÝßðQ_þÁ_ðSû/ÙKö‡ý—|9ð[áçŽ`ÿ‚t~Ö7ºËx¯Ã^ý´ùïu¿Úü2—źfƒ¨ßüñ¥ž›vºEÍÿ™uáùu 3Oµ¾½¸Ó@-ÁL¾/|møÕÿLÿÁ9ÿfx;Á_|3û;|5Ô~+ü)ø7ñƒâˆþü#ñÆ þ|iøµwñ#\ñφþ|uÕt_Eÿ„#Áqh6? ³y¤êºNŽôÂðR«x_O†ÿö'ÿ‚ˆxsã…ŵ¼7ÿµ/ØûâÌÏ^x ûNmûHêZ6“û]éQÞÌÖöþ%ºý¡ôÍ:{XÍõÒX*ÍŒ²§Æ¯Á´Ÿ°'ìåû&þÞ_þ9þ×Þ/ñ·ÄÚ+Yøc}ÿÿðN¡ñÛÁ¿ ¾hºÃŸ?†¼_¨|]Ô¾k>¹Õ|Uñ3_Õô-3ÃÚ†›vÍâ.!–̵ßÒ¿ÿàå¿ÙãÇÆ¯„´Øcþ áwã/Å|)Ñ|Wñöeø x ÷ÄOi>Ó¼Cã}vËãÆ±y¢øCE¼Ö!Ô¼K«Zi:¥Î£[^ÞA§_K [Kûcû4è_´¿‡Ú†¹ûFkšuïÅOˆ3ñ?µOøzüjÞø=¡ë·0Ãàÿƒ^Ö͆™qâK/xOOÑôßx¾âÊÍ|mãÙ¹'ˆ§Š]Y,|e x¡u xtM7Æv3kÞ—à߉ð_+ÿü;ñ?ì“ÿºÿ‚QþÕ°ßÁ_ÚSÃ~%ø ãŽöv¾*ñ/±xóFÔ´KX°¿ÖþøbëHm ¯·Û]ø#_ø©¯è³Z[øŽËO¼ÅlŸ£´gŒ¿mïÙÿþ ‡oñãáGì“ñ£ö…ýŒ ü×|Yf4í;ã'Ä?ˆßµÃ?…ú%Õ·ÁËù—â6‰Â(>'xÃSñ7„´‹O i·¶èøÏÿ4üsñÅÛCþûx-|;ãÿ¿hO†u¯k>5½ð§Â?ºŸˆþ3ü.ðíÆ^;м-ñôß[èšßˆþÕâ]3Àž=:>“ñüKká]iú^—?ôÄŸÿà©Q¢GìiÿþŽ8ÕQ?à¥_´J¢"€ªˆ«ÿ ªªU+óþ aÿ<׿iØö"øaû>|H´Ñ¿lø&/‚¾[þËñçÀ;j–ò\èzŸÄO‰þº¶±ºµXHYMÜÀÿPÿ‚sþÓ¿ðOýº´ßŽÏÁ ;á§í!ûSxƒö‡øðkà_ÄoˆŸü7ðOJñƺÞ!ð}çˆ<}ð{à ¼¹²Ò#ð‡mµmÁöQk¶þþÒ¼±ÒK}6Íø!oÃOë¿ð\ø8sâö¡Ú'|d×¼k5“;‘gs©Oð7Á0]¼ /mì Žy|»XãoèÂ?¾4ü2ø}ñËö­ý¦üñzËEñ½àÁðÓöTøCðû^ý¡þ+ü%øaes¦x?EUðoÀ½3ǚǎþ1x×Äž%Õ¾ |[_‡âŸü>ð’èžµÖuÝ/ᧈ>!x—ù£ÿ‚J~о>ý—¿à¡ÿðYÿ¿`oø*?ƒþþÜ?üñ'àGˆbÿ‚s~Õž#šûþ ñgí uzž'Ñ|/ðãYÖü9¨êvü7¨iÓéóÆÐ&§§q¥ßZÅgrý†xà÷Â?…wþ5Õ>|,øsðãSø“âI¼eñQð‚<3á ÿx¾â?*ãÅ~5¼ðö™§\x§Ä“Åû¹µÍvKýRXþGºeâ¿˜Ïø §ü¥Ëþ^ÿ³»ø!ÿ©í“_ÓŸÅ¿‰ºOÁ¿‡^'ø—®xoâ7‹ôŸ ZZÞ^xsá'Ãoü^ø‹ªGu¨Ù鉆>|:Ñ|EãOÝÅ-ìw7Vš‹qk§Cy¨ÏYY\Íò/ÿløÁñàWü×þ ñKãì=ÿ#øwðçþ ûMü*ñ?ìóã?þÀ_´ô›EÑ<ñöÖ}Câõ¿Ã»”øma-ŸÅ kªø¬XèúN‹µuâ=GD›Lki@µñ]Çü?ö‰ñD~ ñ©§É'ƒ¼v¾oø%ž‚5ù¼ âë}ÅÖÚ7öîˆÚÆšë[L/ ùOöæÿ‚vþѳßüá¯ü§öøsÇ?Ýødü,ýµ¿e ?h> ñgÅÿ†²øf×Â-ñáV»â+Ý'ÃÚ‡4/hÞ¹“ÁÚÖ«¦®·®|>ðtúl—òjZý£~›Cÿohqé?cßÛ‡Å5+im¬~üXý•þ4þÍ^ðλ"˳|Døÿñ¯Á~ømáK ´Y¼C­ü*ñ·Åýe4”žçÂñ¦©&™£j@Œ?¿à–ðU?†_±oü+Ç¿³WÅ/ƒÿÿà¢ÿðI3â^ƒcàý_Äš½ÿÁ¿Ž^øŸáË_†z—ƒô¯üC°ø5Íþð£Aðï´çñlß âOj¾3]#Å^Õí¼;qqÀÍÿþÙ³–&›ÿbÿ‚+~Ò?þ\\Åá¿|xø_o®xãá%¥Ž¸ñiWÞé~$ð´>–ÉṸf·ƒã~¯u¬[ÈöZ~<ñµ}oûfxwþ Qðö·ÿ‚2üUø?ðŸâíÓ⟄ÿÿo]öäÕ¼š<7«ø?ââþÌ^!ñ&—áÝgÆÚç‡|á©-¼UáùµOÙÏá§ŠŸ‰u{w§YëþI³”êÿØš€~Ç¿²ý§ì§â¥ñ·ìÕ üøWá/~(û}Χsªü.ðgƒ4 x9õ;Ëë[EõËmEµ²×áÕ,4ýZÓZ¶¿´ÕtûF ›H~Ÿ¯Î¿ø$ÇìcâOø'Çü³ö^ý|gâk/xÓáƒ5ÃãMoKšâëFoøÿÇ~+ø¡â½+A»»·´º¼ðï‡|Aã]Gþ½¹³±žóDÒ¬.f±²’Vµ‹ôR€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ üZÿ‚ž~Æ_~&~ÒßðOŸÛóöyð†ƒñëÇ?ðOßüYÖ5/ÙKÆž,Óü¤|]ð—ÆoØøCY×¾x—Ä#þ üjøw&ŸgâŸÜø²}+Ãú®¯§éCQñú-šß~ÒÑ@öðRo†igoŒ?f¿ø(‡€¼aoüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ð_Aÿƒœÿà†þ%×t_i_·-‘Õ5ý[NÑ4Ñ©~Ï_µ~‡§ýVò 1­ëŸtíG²7Çö­SXÔ,t½>2ïP¼µ´†iРÞŠ(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?“_øÿèÅcüF?‚üÄWàŸüá¤ßkß°—ìY¡é‘¬Ú–µÿIýœ´>‘!Ioµƒ¿´µ¤m4¬±D¯<Ñ«I#* %‚‚Gõg@9ÅûþÉñE²×ìç Æ‘C _~ÇQF¡#Š(Óà ‘Ç(DDU@U*Oød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"ŠþG?àÜ?Ùûà7Žáîð›|øEãøF¿à«¿´g‡|9ÿ OÃoøƒûÃö?ÙbдOímïû+F³ÜßeÒì|‹+}Íå@™5ý-ÿÃ!~É¿ôkÿ³¿þO†¿üÌÕß_²ïìýû2ÿÂÌÿ… ð³Ã? ?ár|H×~/üOÿ„n+Èÿá3ø—âo+û{Æ¿Úîî÷jºŸ“Ú ¿‘oò.ç>÷@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌ×óiÿ¸ýŸ~xOþ ÿþh¾ø!ð‡ÃZ7ŒÿníwGñ†“áÿ†¾ Ñ´Ïé)wðp&—â[ ;E¶µ×tåW!lµH®­”\Î@M&ïëN¼âßìÁð㿾 üGø½ð»Ã~=ñÇìéã¾ |ñ&¶—­¨|8ñÃéRMâ›[ËhRþGÐô’ÍwÔ_è0ÃPÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þ 9ýŸ¾|Fÿ‚FxgÄ¿¾ |"ñçˆäøÿñ²ÊMÆ ¼âmìí5 mmU×4[ëæ¶¶âÞ9ŠÌ#E sýqׂ~Íß²ïìýû |2¶ø5û4|,ðÏÁ߆šÖ­â+oxJ+È´ˆµ½vH¥Õõ%[ë»Ûƒs$´ìÓ•>Z„UKþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"ŠþG?m¯Ùûà6“ÿ/Á|¥üøE¦øÅ??lKßø3OømàÛ? xŽóLøñúïM»×¼;o¢Ç£ê÷:}ݕՌú…Ķ—–Ó[¼rA'ô·ÿ …û&ÿѯþÎÿøe>ÿó3W|[û.þÏÞ;øùð§ö£ñÂÏ ëß´ÀíÅ>øMñRú+Ãâhž6ÑõÅZn‹,WqÙ­¶·£ø‡ZÓïæÒá¼JçÊhÝ•—Þèçød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™šøGþ •û-~Ì~ÿ‚dÁF5ýösø¡ëºì#û]ë.µ£ü!ø¦jÚ>­¦~Ï߯tíSKÔ¬¼=柨é÷Cwe{i476—0Å<Ç,hãõÚ¾Hý¿¾øÛãßì!ûkü øi§[kþ4~É´‡Â‡úMæ£e¤Zjž6ø‹ðsÆ^ð¦u«js[iÚ]µî»¬X[O¨êYYE+\ÝÍHêùƒÿ ý™ÿfÿÁ ÿ`¯x·ö~ø#âk-.õx‹áO€õ½oUº>%ñfçRÕu=êþúàÆˆ†k«‰d(ˆ»¶¨õ·þ öMÿ£_ýÿðÊ|5ÿæf¾oÿ‚G~Ïÿdßø&ßì‡û9|nÑl¼9ñ_á'« øãDÓµ­+ÄVZv³»­_5½¶·¢]^éZŒf½·qqcu4$¹MûÑ€ý ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfkù¤ÿ†~ø ÿYÿºÿ…%ð‹þ÷ü:‹þ/øAá[x7þïøH?án}›ûwþì_ìOퟳþãûSì?mòuçìùkúã¯ÿ†]ýŸ¿á£¿á®¿áVxgþOþ¿ü*ø[þUçü%Ÿð­?µ?¶¿áó~×öì¯íOôÌ}‹ío~Ï–€)Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@Îßü/û5þΞ ÿ‚5~Ý(ðoÀ/‚žñ6‘ðÿÁi>"ðÏ¿è:î—4ßþZË.«éZ¦¡e,¶ÓÏo$–×3Á4°±1Èê~îýƒeOÙ{Xý†ÿc-_Wý›¾êš®©û(~ÎÚŽ§©ê?¾_jŽ¡}ðƒÁ÷7·÷÷·>–æòöòæYn.®®%’{‰ä’Ydy˜ýÃñ»àÂÚGágŒ>üsð6‹ñ+áG¬¬ôïxÄ+rú7ˆ,¬5[ nÎÚýlî-.Z;}WK°¾AÄgεq)¹[±ðo„<3ð÷Âð‚ô{Ox;ÀþÐü!á=ÀH,t? økKµÑt-ÈM$²‹M3K²µ²·Ë$‚|ŽÙbãðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPò9ÿÉýŸ¾kÿð^ø//ƒµß‚_µ¯ø?þ#þ/ jß ¼©xsÂßÚ_¯&ÔáÐï4Y´Ííó-ïöe­¯Ú¥IüÆ×ô·ÿ …û&ÿѯþÎÿøe>ÿó3W|û.þÏß >2|dý¡>ü,ðÏ…>4~ÐðŒÿÂèø‡¥ÅxºÿÄ?øCl_Mð¿öóÍw5«ÿcXÈöÖŸe¶¶ýÛ7Ìl5{Ý|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}_0~Ö¶/ìõû|,ºøÃûF|FðßÃÿÚßévqÿkëš-†µªÅy®húV¯uá½QÔlµ?7…tý\ø›_Òü7oªkqxN¾¸±Ó/nVÞÒàó/þ #ãoÙßþ «ûüDý®¼û~Ì^0×¼â/èÖ^Öþ |6]/_ºñƲžÓm/¦‹@¶¼¶²´Ö5}7V¿¸ÓæÑØi×^DW;šÖ—à‰?b_Ž_ðDÏ…ÿµWÆ?ƒ³–±«þÊÿ|àÿÚgZ? þêþ"Ò'ý˜´MJ{ísÅ“Þé^sø«Äÿô|JÔ§Öo-&Ô¤ñZjwÇêÜåÿöùñÏü3þgøÁûWüIýtßZÿÁ?a Þøƒá÷€¼s®êžðçŽu èzíôš¶™¥ØØj¾ñ_íñLojº‹ª^Z'ƒ< yáÿêž!ÑŸSK¯~tøöý®¿à•ÿ¿à©_ðKŸÙÿÀw?¼#ûZøCâìù¨xCWð߉¼Wâûø‡Â~'Ó¼7ñcÁš‚.#»>7»øñS¸ºE·¹Ñ]ït½[XÓ¯­|3ie@ëÿ …û&ÿѯþÎÿøe>ÿó3P¯ì—û"µÄ¶kû3þÎ-w6÷3Ú¯ÁŸ†Fâ{©.bµ¸–á³,pÜËgy¼®¢9¤µ¹HÙš B??àãoø-σdøÃðOføÃ¨ø'à7Ãûíö–¸øuñKÄ÷:¿ ^øËCÑe¿ñ­¶±yá½ÎÚiü+¢ÛÄþ–¿ðÈ_²oýÿìïÿ†Sá¯ÿ35üÒÁØß³÷Ào‡?ðHÏx—áïÁ/„^ñþ ÙG¯ø3á·ƒ|/­¥Þ¡®-Õ¢jº‹c|¶×!\@'LDˆÁF4ÿàÞŸø+?Äïˆßßáwü·ö‚›Å´×ÄßÛ£ö–ýŸþøÆƒÀ:%•Ωð?á—ì…)ø3eqàë J¿ñ³â¯Œž%Ô<ðXß zâ×Z°W’vÐ,.ÿ¥_ÚGö]ýŸ¿kÿ†W?¿i…žøÅðÂïZÒ|EsàÏÅy.‘.·¡I,ºF¤Ëcwep.l$žf–p£Ì`êÀâ€)Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3^ɨxǺMÞ©cªx‡HÓ®ôKêšÄ7·öö­¦i¾+ÕuMÃwׯgE¶´Öµ}WÓ´ùædŽâïN¼‰´Ž’€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þû?|ñ—íMÿïÓ¼_ðKኴÿÁW~9øsÂ6>$ømàÝrϾ´ø‹ñN M Öڞ‹u‡£ZÁoo ¾—¦%­Œ1A qÀ©þ¸ëðÃþûûþÑ_²/íÿ}ñïÇ? i^ðÏíqÿ ø±ûA|¼Ó|WáßMâO…þ+ñ¯Ä gEÖ5+=P½ºðåíÆŸ¯é’Ë£k‘Yjví;Å5²I ª€¨ÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPò9ÿöýŸ¾x7ö¦ÿ‚iÞø%ð‹ÂºŒà«¿<9âë ü6ðn‡gâ¯]üEøYÞ…âKm3Eµƒ\Ñ® ¸¸†ãKÔÒêÆh§š9 d•ÃKðÈ_²oýÿìïÿ†Sá¯ÿ35wã?ì»û?~Ðþ!ø5âÏ <3ñij×ÄâÿÁ]_Ä^=ßÿ‰~¾Óõ-ÆZÝÚ¤z®Ÿ¤é×P¤¹·ólá/… ûÝ|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E%Ÿðkgìûðâüçã>µãï‚|q¬ÚþÝß´Žk«x¿á¯ƒ*Õåò4ÏøOÂzMÞ¹¯ë7Òá™m´í.Ææê@Šò¸dHò2£|Uÿÿ‚—~ÎßðLƒÖ?ÿhËzÄ¿ð™èž°ÐlöãÅß<7à}sÆúÃèæO0iZâÐ/4mW¼´{-QíÛX¸²²wºüþbÏÙ þ ÿLkóüDý©~?/ƒ¾ þÆ_¬¾x âz{ßÛøƒã]§…,gÐN¥á+fîãTñon•ã¿ÚâLigs©ÙC¡èš•¨ŸC²ðç­üj?ðP¿ø:[ãÏÄŽÿ|âÿ Á9d{ÃÖÿ~jšÎ¯g¥üD¼²ñ†í|i§é#K0XøŸö‘ñÂßx›ÆšÎ Ì^ðÍ®…ðçNÕ´üI¤ê+ÿC¯Ùëö\øû)xc]ðOìñðÃÂÿ üâGâ[¿ xCN‡LÑ-õ8¼?¡ømFŸgihlt [†´Fh¿´®µM@ŸQ¹gù3þõûø{öÿ‚p~Êì<ß!¾†(ÚúÿOñÅ÷†´ó;Nú_†¼? ø~ ä²Ñí1Öü?ý¾xöôø÷ûhZøÃ)âøs¤xª;X#ñ.ãÿ‡þø½ðgÇ)cu %ÍŸ†uï„Wÿt»­*hº†­á›mb[Yõm&ÎêËôŠù³öMý›|-û'ü ð'Ào‹Iü3ðͼm¢ø.hìã·¸Ó| ­|Añ/Š|/á×p –Ðô=[IÒ/Z ¥åî˜÷[AÅ^Ó«øÂö¿àÿêþÒ¯üGà GZÕ|®MjŸÚ~¾ñ‹¨øw_—M¼@“Cµ£ê—–š¥©gµ¾&Úæâ .ìln-ºª(üðÿjŸø3÷ö¯ñ'íûA|GøûKø"?‡^"ø«áˆ_ƽˆtÏZê_üq1ø¥‰m´©î"ðÍ·Á¡&«¿‰t{ÝgTñ¿ƒl¡»Óô¨üO¦ÿÂ1'_û&ÁÉÿ¶ü&ÿ@ý‡?à°_³§Åx¿áç‹ì<=ª~ÑÞ$ծ一< ¨xÃW³]êºBxm¬~+ÿÂ9ðûPׯ¼7â'Å2ë(º>Ó+YøkJø…§ø1üUoy|ž¼ø™à½CÀ^$×´k8¯mmS^Ô¦M'W–7Ô¼?¶±áûÍ+Yµ¶Ô!þ,ÿà°_ðp—À÷ñGÄ=sö0ø©á¿Šžý­àšü'Øoo-üKðÛâÞñ—â•÷…´¯hQÅpÞø•à]#âÝÿŒuMÄ­»éÞÔ´8çkoH½Ø—ìÿ ýœ¿à¡Ÿ~ühø+ñ Âúž¯ã¯Gâ|5þײ¶ñ÷‚5M&öøÛL×<qt|Aiaá¿´º ë’ZÉ£ê>fy§ê7–ºŒ÷ÅŸíeÿšüðGí¿û"|ø7ñwÅúÀÚKÀ´?„dÖüT¯â_øsã_Â…ž)ø©á-sÄ:œéz,º‹ã•tX´mG³mNøs.©:xŽ÷Ä—ö¶ÃûþÒßð@†ðMßø-gìÑ©x“Ç^ ñǃ¼!¥~ן> øºÛH³ÒüsñÂWº_ˆþjš…4ý!uo‡¾ Y™m¬hº¸•#š5»°»‚V·¸Š«iíâ)"Næ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>ÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷úŠ( Š( Š( Š( ¼#ãWíKû1þÍvúmßíûF|øk¬çûçãWÅï‡ÿ íõ\;D³fñ׈t(ï±"´gì­.YÌ£ö¥øÎß³‡ìÇûF~ÐË¡Éâfø ð#â÷ÆuðÜ&A7ˆáwÃÿøàhq¿z$ÕŽ†,ÅûÀ×gÍŠü.ÿƒ~¿hoÙþ =û5üJøùÁýOÅ_µ$>5µïÅϾð—Šè:=¯‡!ðûÀ-i_µûiöÇAðîµ}á_‹žÖü1w¢iP¶‰ã_j¶ý›Ä>#Ó5_Ô¯ø/ïíCãýcãü—þ 7ð£Æ$ðÿðQŸ¾ðïíã?Þ^é~+Óe3ÅžðïŽü!¡êÚjOK›â®¹¯5þ¡¦OdçFðN¥ j÷ö¾ñ6ªÌû}¤~Ýÿ°÷ˆ>$ÅðkAý²¿e=oãÅüzT tÚá¥ñ&mNY"†-6/YxÂoI$ÓCvi¥µÃÉ,H±–‘ú²¾Mñoì+û"xÏöd¹ý޵_Ù÷át³„ž—Â:oÂý3Áú†á»3¦6™g¬x^(ìY´/é+åêGŒlZ?ØkpA­Ã©ÿjF.ã'ü}ûf|SøÅð«ö¸ý†þ?xÓ\ø‘ñ›þ ûExƒöxoˆ>)º–ëÅ~/øGˆ|kᆷ>(¹»³²Ôuh:Ã?øfãRÔb:Ö¥x}µf}Wí“ÎýüLø±ð³à¯„ï)ézMÅÃN°[êZ‡µívÒÂišÖåbŠêh¤‘­ç¬b“oówÿÏø‡¦Á]¿à«ŸðQÚÃãfŸmñàü÷âƒû2~Â? üS`5øV¸Ô|m§üQøë§øzþÙ´ø£ã/ø@4]OMñ]ÌZ‡Š´?xѼ:'Òìt?îõø8×ÃÚ‡ì™ð+áïü¿öj³²øyûWþÇÿ¾ÂGãŸXA¥Ïñà_Äéßü_ð[ãú~›)ñ·€õ_\ð³Ù[xžY“ÃS%ådžntígQ‰¦þ˜(¯&ø ñ‡Ã?´7Àσ?|$_|nøUð÷âß…’iYâðÿÄo é>/ÑḒ5Tk˜l5‹x®6¢bdlB Y Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ÿ8Ïø*'í›û^ÿÁPÿkãÿþ| ‚M*Ío¿Úþ‡Åîu{Û­KÂv¿þ+x·AÓ|U¦Ù[FÑü*ø ð×Pjÿd¿¹—ÄgEðö …ç„­¤×ÿ°?ø*·ü/öPÿ‚\üñö»ãñ/í!mà©õ„Ÿ³%—‰ôéþ%xç^Õ]´Ï ^k>²»msÃ?dÕØÝkž0Ôí¬íN‡¤xƒþöÖ5«ô¹œÏø4ëögñ?Ä_¶Çííûc|=ÖµÚÏÇ7¿þ4ü4øã«H,µ¶ðí?¤üsÖ¼Mñ Ã66«éÚwÅ{i&TŠá#Ó®<;e£K¤iv–Kcu8õãû þÇ ¿`oÙGà·ì™ð~ ÞøAá M}v{+{ WÆþ+ºy5?|A×à¶ybM{Ç)¼Õ¼I©CÒÛØË¨ 6Á“N²³†?¬¨¢€ (¢€ (¢€ (¢€8O|:ðï«ð‹Æú—ü#,f0!×5o†¿~Þyåãwki<1ñ'Ä*c‰âcuöIÚ8š7ù»öÏýŠ>þØß±ÇØÛÄš&‹¤x?âïÃÿèÇö{Ïgàjo{¯x/â§ÛÜZ”½ð/ÄÒüe¦éÖóAa,ºbé2Û¾q=„ŸfQ@È¿üû[üL·øaûFÁ'ÿiˆ¤Ñh/ø'Ÿ5­#ú.¡$²êMð§PñV©¤kþYRÈAumðËâLwv–ÚœÚ{¿xûÂ~d–+Lÿ×E Ÿð[•øïÿtÿ‚Æü'ÿ‚ÃþÊß 5_Š~øéðWâûN|5Ò­î´¿ê¶Ð<à?^øûRð}†£¬èºÇÁß/Œµ½"M×â…49ukÍEïWI¹þÿcړ¶ÏìµðOö­ðƒ¯x_Áß|oãmÃÞ(ûü$Z=Ííí’Øk_Ù³ÝiÃQ‚[)èX]ÞY 7 [˸\JôíQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûýEPEPEPEP76Ö÷–÷w–ðÝZ]C-µÕ­ÌQÏoso:4SÛÜA*¼SC4LÑËŠÑÈŒÈêT|çá7Á_ƒü'ÿÀ¯„¿ ¾ xûWR×¿á øMà? |9ðŸöæ³*M«ë?ðŽx?JÑ´í]VhÒ]KQûÛ/¥D’êiYA™_޵'Å ?nø×ö+øIñÊËà·ìíá;Ùü+ûiþÒ~ñ¿‡|?ã?Üÿ¤Ùø“öAýžõùkOßY²Ûü{øÅ§¬–_ t«¿øVþ—Tø­©øª?… ˆ>x“þ ÿ‚Óü4ñ7„mc¸ÿ‚bÁ+üM„üañÅÃx{ãçÇ]?ÄGþ%|8ø]{ñÅâk-K]ðÿ¼ â½_JxtÿxGº·ŠW[¹¹ñ€4í_•ÿ‚¶j7²ÿÁÙ_ðFí&K™M²ø+ðcQ´³$y0^ꟿjûmBå2$ºƒHÓ"”’A[8pŸégÇ?eÏø'oì‘ xGöiÑ~ é¾ðN§ðËàïÀ€ÞñŸ‡ôK/øÛâ¿Ä¯ ü;ð†4ϲÜêš®¡«ë¾*ñŠëæ«ö×Oðoø2WQ½ÕÿgOÛÛVÔîd¼ÔµOÚáæ£¨^LAšêö÷ÀºµÍÝ̤ “Ï,’¹Ìpâ¿^¿àèïùAGíÍÿvÍÿ­‡û>×ççüYðÖ÷ö-ý¶¿à´ŸðOC&ƒâï|wð?Å߆º]åÓ[Æ_uýCâ&› x÷A‚V7è·Ôþ^\3Ziòx¯N²Žæ[£vêïø:ïdziŸðHÿ|Ðb¹Ö~!~Õ¿ÿgÿ|¤Z6©â_øšßâ~‰ñZßCðþ“oÍýíìÏðÒâq£Éy=†çµ;{KÀ¶ÿàúþ¯ÿpÿ‚zÝj7 uqìóáý29]cB¶&©¬èÚ]¸¢)[M2ÂÎу#¤ ò¼’³È߯òWìû=ÜþÉß±7ì¡û5j- º×ÁÙ÷áGß\[ZÞ÷Åþðf‘cã BÜÛÉ4GÅê÷ÑySÜ&Ë…Ûq8ýóýk@Q@ʧüÉuâ‹/Øwö"½ðF›a¬øÒÓþ £û5ÝxCGÕn>ɦj¾(·øEûIË iº•ןkök íY--o.>ÓmäÛË$ž|;|Åí¿á©¿àêúF7ìÿ‰ ÿ?êÎÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5~EÿÁ<¾1Ád~#üKñ¾—ÿ"ý‘¿fÙçáu‡ÿ.ñ%ðy™#’êÛMÒt}&Â×zω­ÿ‚AÁ²þ%ý¡u‹ïÛ×þ 7}âO‹~6øÄß~2|?øU¬üA×5_ø†_¥·5mköœº½±V»Ôõ&Ðt >C¬˜ôí:M{KñC¥ÊÚiW÷¡ü/ð—‡>"ø³âna‡ˆ|cà?†¿µdµ†ÚÚÇþß…:·Ä_ÂQAoo e$´—â—ˆí‰ghÖÎ=>ÞáKrÑ( Š( Š( Š( Š( Š( ý ¾ü?ý¦þü[ýž>+Y_ê? ¾5ü=ñ_Ã?ZiZŒÚF«'‡"_øÓÁڜ־Uêjz„~ÏÊû4Ñ5üÿÁq>>Á|kÿ¹ý§ü3ûlþŸ²Á¿Ù‹Sÿ…+ÿ 3âGÂߌqø«Ç~ûíð—Pðgö‚¿¼Poÿ¶> ÚxSAÔñ¡_}—GÕ5 ßôaoöËr¿v?àèïùAGíÍÿvÍÿ­‡û>Ñ@¿ÔS]Ò4y$uŽ8ÕÝØ*"(,ÎìÄ*ª¨%˜’¯Ä?Ú;þÿ‚}|ñÞ±ðkáV§ñ{öåøû¢ùñj¿aŸ…ÚÏíâ-:î+ˆìE¶©â"]7áͼ‘_»ZjVV>1ÔõÍ*Kyâ¼Ñ–í¬í/?o¨¯æ3Qÿ‚ãÁNµÁ¡ð›þ Ïý¶üAáù™ÊÜüYø›Àïˆ Y­_ j<[} Òn’îÞk¨Í‹A 4“O<ðY_Ó?ཟ¶WßPý©?àðR…þlšÞ¿ðGK´Å®‰hf»/{rÖžø]g´6pÛÏ<ºŽ¡¥Å Ìïdò¶“߀L”WæŸìSÿvýo­RûÁ¿þ8ØAñ‡Ek˜|Iû?üRÑõ„ßt «3ê6Òü9ñÅ®“ªxt¸¡óumGÁoâJó#‡QÔ­®‹@¿¥”QEÆ|Gð|ÿ¾xóÀ6¾2ñŸÃ«Ÿx3Å·øƒðãRÓ´oˆ~ŸÄºö‹Œ¼«êúF¿¤é^3ðÄ—«­ø_RÕ4-kN±×,ln¯tJÚ)læþPµ/ø2ïþ …¬ê7ú¾¯ûEÿÁC5][U½ºÔµMSRø»û>_j:–£}<—W·÷÷·_²Ì·7—·—2Ëquuq,“ÜO$’Ë#ÈìÇúð¢€?—?Ù›þ $ÿ‚lþË´7Á?ÚSÁ?lïø×à7Äÿü[ðn…ñâÀÍWÁ—Þ,ð½eâ_ ŸéÚìåájîÂÓZÓ¬¯Z-3ÄEç›mC} .êþŒþ:| ø=ûLü'ñ¯À¿¿ü3ñ[á'ÄM+ûÆ>ñu€¿Ñµ‹8î`¿³˜x®ôíWHÔí,µ^Ò®luÏëº~®èZŽŸ«éöW°zÍùA¨Á'<3®ü0³×Šÿmÿø(/‹?e¦ÓÃW³Ž³ñŸá¬>Õ¼ ŽÆO‡:÷ƽàŽû^ø‡À7z:?‡õ k´Ž¡i©xvâãCÔ Î›'ÙÇèÿ¯…_ þ|9ðoÂ/„ ðï߆_t/ ø/Á>Ó`Òtèzz·²°²·UUÜÍ%ÅÕ̦[»ûÙîoïî.onn.%ô (áïÚ[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauý¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿ÿà¿_· ¿°/ü/ãOÆ/ üC½øuñ³ZÕ| àoÙßRÒ?²§×/>/ßø·K×ôÔ±Ó5’úf¯§iðç‰|Kâ­7PµÔ4ûï èºÕCttÛ°çþ õû[x{þ Ûû}þÂðHïØ—â=ÿ?fy¼Q£|ný©>(x.ÓP³°[;{[«Ý^ò)õ»H.aøOðµí[CkÈ[þ%ø‹ñÃZ*KsªizkìçöIýŒfoØ[àí—À_ÙWáF‡ð—áu¦¹y≼?¥ÝëÄú·Šµ}2×QñF¿®x“RÖuíwĶÚ.‘o.§ªjWWÚézu³AgagoòéÿzÁ?‡¨ýõÔm|âýgÆZN—¤Ýéú†µâ_ø~ÊÎyïM¥•Ïô/MtIã‘HäVGGPÈèÀ«#«¬¬¤†R A€?"ÿàˆðR?à¨?ðOÏ…ß´¸ÚU§ÆO Üê? ÿh J¸†HtÿŠž KTºÖ㵊;s§Ù|@ðÕ÷‡>"XéÂÝ`ÒÅè6×Ë£µìÿ®ÕüUÿÁ%¼àïø%ÿükÿÿ‚sxzM_Â?i߆øãû6ønöìYøwT¼Òt½;â¬>ðÖ›{swwª¯¼?ã_¾Òõxoíô¯…zÉÔmgfÓµJ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh ¸jÙ+âgíÃãÝGágÆßë_ÿa? G¤káWÂkžø‡û_kWúUµþ·¥ü`ñ߆%ѼCàÙÿïzþ? ¼­Yø£â–¹i­êÞ0ñ•àë?èº÷ؾ|ý›< ¦ü1ýŸ¾ü;ø3ðÿI޳ð—Ã_èžÑŒ[Åj/¯-t[;A©ê³Å fûXÔšïUÔfÝsyss$’¿ÀŸðUïø(o‡ÿàšÞýŽ~5üFñm·þøïöÙðÁoÚÄÒx;WñÅæ—ð§Å³÷íâÁ{¦hÞ±ÕÿdÛcK³ãçÂXñ®€Ö÷~øÕái.|ñóáf¹§4³è~"øeñ£ÂRé_<#©èZŒ‘êÖö:Ûhw…µ¹Ö4}RÕÕ÷¿e~Ò¿ ¼=â„´­>:iÛCµøCûFßÉe¦üMø¥à‹Ø5†“ñǺf§èÖÿü&m§ëþ;ðº[øc⎗«è^(FðçŠ?á-Ñm>°¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+øaÿ‚ˆ-ßüûþø ÿÜÓ®?·¿c¯ø'•´ß¿ik{6–ó@ñˆtÆð׈~-iZ´¶OoíMJïá¿ìÚ±Ï*_xW[Ô~ _éÓfæî ?p¿à¯_ðZφßðK{оñ…µ´ßõïÙ2ïâ·ì·¥‹g¸oübˆZ—Ãð¾°·1Y>‹ ^ë¾ñæ£+øðfñæ!©ÝÛi–ñ÷ü£ûø—àìgâïÛsã|÷ÿ´‡ü+ăâö¯­øfoÃð|^êºÃé/Í —ÿµ]wÄßu ÛFXõ­Åž ˆ.ttX€?¥Ÿ„ üð;áw ´xôü+ðƒ>x3HFóO🀠оßÙc¹Õu? üMøñ=¶“©êÛëZvu¥¶Ý<ê/ö%_Îïüû.xŸö›ÿ‚Cü`¾ðEÞ§ã٧ƾý¨ôk Íüšwä×|=ãËë7Kyî"›@øeãŸx“u¤–·/$ pVW¶¸ýÿ‚LþØöŸ··üÃöZý§¼ØÛÄ~8øoe£üDµ¬Z½ÍÄÿ]Ýøâw· xä¿ñO‡u-nÎ袽:N«¦ÜL®.y@?E(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh }ÿ‚¼~Èþýµcÿ‚r|ø‹ð—ľ Aÿð?Ž>7x{IÑõýOBÓ>øSöTý®ç·Ö~!^è»x{À7>=ºð?…µ[UºÓt«»ïi>}B;ïXC|'ð¿ÂÏØ³ö“HÔ>#~Ξ9øUñ_Pð/Åÿø«ÂÑÝêzŽì<yã)nüiá/kšÔ5™£Ð.n4Ûm'S¸ÐußjöçU¶þ“kù¹ý¹¿àß?…ÿµwüËŸðT~Ö¿~è_tj¾6øI௠FÚ®¬ÿôùcGðïÅX¼No¼áMÃöPXx»Â¶_|E¨êñÏâ7ÓµË üBÀöŸö"ø§ãޱì‰ñ·â£X|@øÅû0|ø§ã›·6eãˆ? |'âßZ=¡¶³6­m­j÷°µ¹´µ01h6ùKôýywÀÿü/ø£ðWáÄß‚7–Z‡Áˆ¿ ¼ã¿„7ún‡©øcN¾ø_âï é> ð 准µ½3EÖ|=esáMCIš×CÕô}'SÒ`xì/ôË «ymbõ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ʧüÉám?Ç?°ïìEà^kûm+ÆðUÙ¯ÂÚÆ•r,µK}?Ä¿i=&öm6ðÇ0´¿ŠÚîY,îLRˆ.9Lo³ií¿âßø'7ýïÛÿÿnÏÿÅN´W+àOéŸ|àßè³ê7Z7ü)áïé7ZÅоծtÏ éz-„ú¥êÅÞj3ZÙE%íÒÁ¸¹ieFbõTQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEVGˆ ý¢ntÛkËM;Cðˆ¬ü=â¿ |7‹ÄV~{Åaâu+o|aÖaƒû?Â_¼1ªi:ó\iÚ÷ˆ-ôàËO‹_4/ø8þ ñðQñÃOÇÿðLÏ‚Ÿ,ÿe_øŠÂÂûOðߌx#ã7Å­+RñGŠ,“MÖöür×þx£]ÑtY.-ŸðçFÒ4›»M?[Ô5)õ¯ô°°±Ò¬l´Í2ÊÓNÓtëK{ ?O°·†ÎÆÂÆÎ·´²²´·Híím-m㎠{x#Ž!"‰T~qÿÁ;¿à—Ÿ³oüÇöQøKû4ü=ð®™­ßx#\Ð~)xßâ%Ükÿ¿h+m×K×þ,ÝNn^îÂkµŠmAÑêK Áb×ÂanìRñïI袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(™ñ¯ƒ¼7ñÁ¾-øã-*Û]ð‡Ž¼3¯x;Åzà-i¬øoÄúUÞ‰®éWJ¥Y­µ.úêÒp¤Ìšþ\¿àÐ=wO´ÿ‚nümø4ÚË_ø‹à?í¿ñ³Àú¾Ÿw ­†£kauá†Ú¾—ªÿdGyw}c¦k7×ò[6 VC«éšý„/q™ç¿õg_Æ?ü_Vðü÷þ.ÿ‚°ÿÁ>O…õ xcöÓô7Àé®#+açxOKñoÆ ¼9¢¡»¸Ý Í üjø‘z¯+@Ÿ #Ó.£¶¹ÝÙÅQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@WÂðPø'·Áoø)GÁ ü øí⟌ð…>'è¿4íKà§Ž¢ø}â©üG¡xSÆž´±Ô5™tMyn¼?.™ã½^{­0YÆÓj6ÚUعAdb˜ó·þŽÿ”~Üß÷lßúسíøOÿÄÿƒ{bÏØwþ sûOþÔ ~)~×þ#øƒðÃþ¯ü#ú7Å/Ž–Þ2ð%çü&¿´?Â_‡z¯öï†ãðVú—ÙôOêWzf5 ±ëi÷çͦ Jþõ«À?kmû5~Ë´·íºdzÛ|ýŸþ2|k]a!‡Wo…¼G㡦J"žÖSùÐE«ˆ®mä+) <-‰ßë†ø¡£øÄ? >"h£Ò&ø]®xź?ƼC{ý› KàO@Ô,¼c¹¨‹‹3a¤?‡gÔWR½û]¯ÙlŒóý¢/ÍPäíà†_ð[oÚ.oŒ¿´üûHþÏß)ò4_cûT›þùv7³¿ö¯·û>ãšøgÿ~³î¡â€;ðÏí?ûIxàüÃÀß ¿iÿ†¾ø}e«ügð¦åéúµâï|Dø­àkÝ3WµÒa‡OÔ¼i©|DÔ,eñ—ü+χI¯Â)£÷^5ÿƒÔ?à›7> ñm¿‚>þÝÐøÒ ëÐøB]cáÏìù¦é1x¢]*í4 5MFÛö“ñ͆œš«Z5íí¾ƒ­Ïkl%ž-#R’5²˜ú3ÿ‚YiZž…ÿÅÿ‚rèšÞ›£ë:?ìû!iZ¾‘ªÙÜiú¦•©éÿ³ïÃÛKý7R°»Ž»û¸eµ¼³ºŠ+‹kˆ¤†hÒDexWÆÿðN¯‰6øÉÿúý…>/|K×î|Wñâ§ìoû1|Høâ›È,­nüKão|ðG‰üW¯ÝZé–¶ZuµÎ±®ê—úŒðiöV–PËrÑÚÚÛÀ±ÄŸdPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@œðVø(_ƒ?à˜°ÿÅŸÚ«ÄÖ¶ï‰tXlüðÀ÷÷rÙ'ÄŒ^-[«ødÏSL¶©iªx³Ä­ ‹ˆ|!áÜZ±º†Áßø6#þ w㟠hž"ÿ‚À~ØwÞ+ñíwûe[xçÄþ·ñ¥¾™=Γð³â–³¡x­~*^5ŤÚÅ—þ,Ïi¨jútöwº}·Ã/éÖgOoí»ˆlþDÿ‚‡x’ÿþ ïÿÖø7ÿËðÅίûþÀZö³ãÚ“Äz4î4ßx«Ã7–ß#:žžf²¹‡RþÄý›ü+µÁ°ñe÷Ž|Ie<ÚMÓKiý×éºn£iÖF‘ae¥i:U•®›¥ézm¬:v›§XÁ­•……•¬q[YÙYÛE½­­¼QÁoqÅi*€ ´QEQEQEQEQEQEQEQEQEühÿÁÐÿ µÙ«öŠÿ‚`ÿÁb¾ߨh¾7ýŸÿho|ø•6¤ˆú~«àËÍs_ø¥à9uYe{{];ÃvX|gð¯‹.îgIní~"è±Ú^ériÂyÿ²êþyàéoƒzgÅÏø"çí5©^ÝÍi¨ü×>|dðñŠÒÞî;OCø xNþÒäKÏo Ç…ükâ$[»m®-î>ÎóK6öë+°èjŠø“þ ­ñ§Oý¢?àŸ±Æ}?Ä÷~2“ÇŸ³GÁÝG\ñ&£/Ÿªj^1²ð>£øëûf_2]úå§ŒôÝzÇ[ýì„jÖ·Š]ÈÜ~Û Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþÏ´QÿGÊ ?noû¶oýl?ÙöŠýþ¯š?m„~'ý ?c¯ÚÇà?‚o×JñŸÆÏÙ£ã¿Â?êqö4Ó|Oñ#áoм _½ß›ÙVÏUÖm.ã·È™|ØöïK×Íÿ¶O†ø‡û,i¶ºO…~!þÎ^5ðýµžâ†ß¾Ä-µïøƒÃz¬_ÙÒkZ­ƒZxÆÌéÞ.Ñ5Añ‘­ê?S|[_·ÂŸ‰Ëã÷Xüß|h¾6‘ÆžR?Ÿ êCÄŽãVI4¢«£Öa©#éäöÄk0äWá—üAû/þÒ~ü_ý¶ÿjßø)Œ¿iÏ|øo©üY“ÄŸ¾Ï?…ü[©øfËZ×| §Z|MøñÆš6•àíkTÔ´KmYñ†¯sk5µÌ’ÉÓË nñ÷üiÿÚ°ð/o¼ñçöð—Æ–^ñß„"Õ|{ð ^Ó$ñE¾y7‡ãÔ´=3ölðþ£¬Ø>¬–‹y¤éúö‰{¨Û™,í5}6y£¼„úsý€`øOmû~Åßo _üM]!>$_|'‹àçƒcøuyñ<=kc 'î|º<Þ+]ÊÏH]yïÆ›kod ‰>·¯Š?àš¾ ñwÃOø'7ìðãâ‡5x÷áÿìQû+x'ÆÞñ ”Ún¿áoxSà_4/xs\Ó®U.4ý_CÖl/tÍJÊtI­omg‚UW€û^€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùîÿƒ‹ÿૺ‡üSö7ø5©«~×ÿµ,Ú¿ÂzlÞˆ¼c5¤v¾4øÉ§é0$×W—þ ƒTÓtŸFc0Éñ Ä~»–ßUÓ´[K¹ýíñ—Œ<-ðóÂ+ñÿŽ5í3¾ ð7†õÏxÃÄúÝÔv:7‡<-á.ëZñ½«ÞÊDVzf¤Ù]ê÷R‘½­¼²¹ „×ð¹ÿÄðˆÿ࿟ðZ‹ßðV/‹ú.§'ìcûx“KðOìàïZ1Ó5/xbk[á&™.ŸtóE§á(µ9ÿhCo+M¥üFñW€ôüÝhw @¹?ðnÿüŠ÷þ “ûMªü\´ûGísûP^èß¿hmFø‹­c»,n%ð_ SíwƒR“ÀQkZî£â-Ae¶øïÅ~,òî¯ôË]"qûýEQEQEQEQEQEQEQEQEQEWŒþÑü!ûL|øÓûŸRµ‚I!ÿ‰Ž“öõÔô¹ãžÚâ×Q´µºµº¶¹†+ˆýšŠþMàÒß|Rð_ì×ûgÁ?~0Å¿ðO¯ÚÿÇ? a‰UZÃE°ñf©â×ü7§]-ÌŸj¶¶ø«à"Y¼HÉâ˜äŽâí% oýeWò¯ÿ<ñ[xþ ÿÿ|ñŸö_ˆ¯¿jo‡ßt;iä…o5 ëÏÆHæ¿û9ŸÍ6CNñõIá†Dò¼B«y%´iÿÕEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´PÝßÿnÛ/Øûã‚è?µÞƒ§|1ý–>%\è_¿kËIo¤øSàÿO¦iZn±ð“ö¢Õ®ËÚüñ·âŸí cáĽRK…~0еKêZ¯‡|2Õ­fš´¼7V:îyì“ÚEt–0~ý|wý¡þþËÿµ‹´Gůüøm¡©þÐñÄ?éžÒMÏ“4ðé–jÅ6±®_$®™ ißkZ´ê-´Ë »–H›È¿d_ÚâgíE¢ø·ã&§ðƒWø=ðÄShq~ÍÖŸôý[Ãß>#x^Ôk-¯ü_ñçoÄMðÛÁÞ:k¿ÂokvÖÿWÚeÿ‹üom£¿Œ4o xwâÙ‹þ‡û:ü!øáïÚ/ö™ø­ñïþ 'ûRx^åµ üeý³üJÿ‚ŽþÜßµ‡ü×ö¦Ò÷ßx“Æþ1øYû)øwQF¹µð‚ˤÚxw]Ô|+,¢]áo‹+à†õh¢š=zçYø>¥+øƒO¼º—ûx Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ä“ÀšL¿³üõñSKÓüËmöûÿ‚{ÚxæãJmBóû:MsÂiáý4ëÐiÐ:ÚU.ÿeÿÅ —ñÎÖÐx—Ä’ÚIö§”­ºþE൞!Ó¿eŸø.ÿüoöÁ»Ô&ðæ™ñ\ø›û.øßÄCs=¼~Ô5Ý Â¶zv¸£M1í1â Äy®.<˜àÔuX¬dm„ß×UQEQEQEQEQEQEQEQEQEQEQEQ_ ÿÁAÿà¡?¿àšÿ<3ñÏã·…¾0x»Â>+øŸ¢ü'Ó´ß‚ž‹âŠ ñ»áOxÂÒûPÑ¥ÖôµðüZg5x.µ1y#C¨ÜéV‚ÙÅé–Îßø:;þPQûsݳëaþÏ´Wá?üþý‹?n/ø%Ïí?û.|%ø[û_øsâÄÿøR¿ðë?¾Ûx7À–ð…~Ðÿ ~"j¿Û¾$ƺ»é¿hÑ<%©Zi˜Óî>Ù¬O§Ø(]â(ûÖ¢Šåüqãoü4ðWŒ>#ü@ñ‘àïü?ð¿ˆ"[êzïÁZ™ÊÜ­¯Á/Š_e[&ûUÂ[¬s¬?Í—€à¸ðWÿø)o…|/£Á)¿à™w>ÑuOé6þ0ý°?këöÓ>izüú=¿ü$W^²¶›ÂÞñöF«!ŸL“H×¾'jwwZ}Ö¯ðÊÊÞf‚½£ÁðnWÄÏÚ§Äz'Åø-§üãgíÙâëNmzÙóáçˆuo„ß²×…õ ÙÖK/IÑ­¼?©\Ú:I4Ÿoð†>]–ßN¹µ»³±/|ýSQ_¾?ý—>%þÃú~?ý‡¿iOhz –£ka£~Ä?µÅKÿ‰³çÅ^íf:Â߃Ÿ~&Ýxƒã‡Àˆ)hîm|ká/xÃá¾¶-­®> ÝYÏy{múOð3âÿ„¿hO‚¾>xß·~8|,ø}ñÁgU¶[=PøKâ_„´øpêV‰,ék~t}jÌÞ[$ó,dK,CS¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+áïø)í­àßø'ŸìQñÿöµñƒéÓÉð»ÁÒøÃÚ“1‹ÆŸõÖMáƒ>ÏåõÍ·ˆ)ðÏ‚ô?x’{?ZÞΩq¦xƒâ¿õxËUº°e¶Ö¼/‚cv{[‹ÛFþ¼¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(çÛᎩñ³öEýª> èvš®µñsöqøáðÇGÒïÀ6:–©ã߆^'ð®ŸazYM¥åÞ­ ½Àe`a‘ÁR8?…ÿði¯í Æø#ÿ߇·K ¿‰¿eŸŠÿ¾x†Ðƒo¨4rø…~/xzòòÁã†Ku]â­–ƒÂÆÑ^]xzÿ|ï¨Á©Gô½_ÊÏü?o€>$Ám?gëMáÍcáOü⦩>ž«é–º‹/¼E xnÇM1»ùÛ[|:»¸†T-m6›}¦Mm$©#ýSQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?ÙöŠ?àèïùAGíÍÿvÍÿ­‡û>Ñ@¿Õñ¿ü:÷á¿ì-û[i¿eø‘Á¯þÏÿþüDOƒzLïÅÛÏüXð¶£ðÊçKø[¤ÞišÎyñW—Űé~ M_K¾ÑÄwšlÚä ¤GzGÙóíµyð§JýŽ¿jm㞟©ê|)û>ü]ñ§Ä»] úëJñ ø7Á^×üGð‡…4ý"ßHд_x7NšçIÐïítí>ÜE‰su OdÖ·º ÕÎsc<ŸGÞ^Ziö—W÷÷VÖ66ÓÞ^ÞÞOµ¥¥´M5ÍÕÕÌÌÛÛ[Â,óÊéQ#I#*)#øñ‹þ 7ÿþÒ~ý¤þ*ÿÁh¼Mû2|SÔt«-Fýœþ/Œäøià4“M‰ôOxÿIð¡ðÓág‹|E¦À-l¿ñჼ[¬Íqs!2\M.£«Ü¼³ÈKÍ#4ŽK1 ¬(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯á·þ Õñ+ÄðVÏø*_ìoÿ1ø â9'øyà_i¿?lørhµ_ j°i7—úìWíäVM¨üø37ˆõ }2òîÎ=KâÄ'ÂW2Úkºl+ô=ÿ©ÿ‚£ø7þ Kûx»ãlçLÖ¾5øÑ®þþξ’)‰þ'ê:|ÒÁ®ê¶tW3ø+áýž|Uã b1%Äúw†£¼³Õ<¶’óÀßþøçá_Œí!1 ®¼'ñ ç„|Emž)àO£ê÷‘!š ¢ ÃÌŠDÊH¯ ý¨¾!x÷áìÍûE|VøUàõø…ñCáÀ¯‹Ÿ¾øÒæDñÇ|àx“Áþt²+xëâoéºvŠÉhËrÂôˆ”¡ åßTñ¿ü±û0x‡Iý”~üýÿlŸ‡ZøF ×âð~¡ /‹oîüFÚ½‡éþ·¬Xx{FÕõýRVƒLÐôËýcQ™"’g†ÃLµ–öòT†%yehíà‘Ö(Õ¤€ˆ¬Äüšüÿ‚žü@øCû%øþµ ~Î?-¿à®? ~ 蟱'‚|>ëgàÒé¾ð]¯ÂOþÙ·¿&™|øEðGÂŒÍáoƒŸ <ð«ÃL𥻶ð÷šO„tfx#gŽ:v‘lZÝ’2J#2¨&ƒ<ñïáÂ¯ŽŸ 5cáÇÆ†þø±ðÿV¼Ó¯t‹½SÁ?|1¥øÃš֓©Ãm¨éw7º±as>¨[Á{e,­mu SÅ"/¤PEPEPEPEPEPEPEPò§ÿrÃ⻟Øsö#·ðÞ“aã‰ÿળd> ¾×–gЬ¼W/ÂÚM<;w­%½µíÃé6Ú»Yͨ¬ws5šL"¶ÊÄý7ü)Oø;“þŽ÷þ ÿ„ÏÆ/þ…ú?àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @¯ ñ·ümñóEÔ> [øSÃÐxêÿË:xzûÆ1iqøžóAK«[¤Ñnuµ¾›K[›+9ÖÅàZÛÈ$ꨢ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ¡ªêºf…¦jZÞ·©Xhú6ayªêú¾«yo§éšV™§ÛÉw©jW÷rCicaci ·W——RÅomo“M"FŒÂýÿðu'üã‚´O?ðKÙÄk{ûA~Þð¿€> ø#G³´oÜ|5ø•ã?xÀZ‘â)õmÿ‚b~ÄŸ ¿eÏ &™¨x«L°/ø×ã}6#¾5ø–ÊÁ¼sâ²÷ —O¦C-—†<'Ò%Í‚ü;áÍ>ä5ͬòËú?@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@(ßðw熭-à?>:ÛihñOìñûnüñ¾•©Û\ŧj–ú>¥á¯ˆZN­¤Zê¤=ÖŸm¬kð‰]M5…½ÕÔWú.“wöv‚Îf_êæ¿%¿àºß³r~ÕðIoÛ‡áT6ßë¶?uOŠÞS¹»ÅŸµ ;ãŸq9SgsªËà—Ð'š #–m7W¿°c,“ÛÌú“á?h~8ð¯†|ká‹åÔü5âÿèÞ(ðö¤‘Ëjˆ4ëm[I¾H§Hænì.íçXæ%A Y\~0ÿÁ½´,ÿ´§üßö ñûßɬø/á`ø¬Ë¨Æââëà&·ª|$±¼3}¦ìÞ­þ…á"ÿíÒL'º’æI.¡·º3AìõQEQEQEQEQEQEQEQEQEQEðoü?ÂÿðQoüðÆ›ÿÉøû9ü0øóÅ÷źÿí;câ]CÀWŸ£ðŸ ×´}" xâ ¾/¸ñ•Ï€ol%›Eµ³]O×ÒMR ÞÞÒ÷ï*(øÿ‚ßü/ÿƒŠü;ÿ½ý§uŸÛ·öŽÿ‚sxóöT³ÿ…-ÿ OÂô?‰Vµ_´~п ­|ÿ­Ïˆ>ø3Hì?çð†¥®}¯Äºnÿ ÙëÁöË–†Âè¯ÞOø:;þPQûsݳëaþÏ´Pïõ|ãûcx‹â?ƒÿd_ڣſ5«¿ ü]ð¿ìãñÃÄ_ üEa¡i)¾Ð>#èŸ ¼O©øZ²ðοcªh>"»ÒüOk¥ß[èZÞ™¨é¼Ð&Ÿ©XÝÙÜMo'ÑÕ™­ëZG†ôm_Ä^ Ôì4M@Ó/õ­sYÕn¡°Ó4#Jµ–ûRÔõ+ë—ŽÞÎÂÂÊ îï.®$Ž{x¤šWXјÿ±§üwþiŸá—‚?h¯…ŸðTÙçàL_´Oƒ¼;ñ®÷àÝÇÃ? ?ƒü!{ñKE·ñ•ÌS|Óÿf[ÿ‚ñ­×ö÷Úüu/€¼-ko}â×ÔofÕõÛ¤Mjçèï‹ß°ßüoyð›â…¦¹ÿ}ý•|I¢]|;ñµ¶±áÝà'Ã? jÚö—?†µ8µ Kñ&ûéÚ¿‡µRѦ±²×4­BÇRÒngŠþÆòÖêÞ)Ósöÿ‚ÛÿÁ]¾&|2ø³ûWÁ8?à™Þ OØ'àßÃßü\—ö¢ý³uëŸÞ|`øQð×Eñ‰¼AñáŸÁý?â§Áÿ§†õŸøwPÕüöCÇSkTW×cMÔ5ë-Ûú/ýªþ&|ø# é¿þxGÁ~|8Ó¼CâÚálöÚö›ñ§Wð-Œ6W·~0øâÈ5¹|!{âoè¶ž!×.¾x¯Á­7Åuš‡~#xYµ·‡Ä@wÿ©³»Óÿà—¿ðMÛ û[›ûØ#ö=³½²¼‚[k»;»oÙëáÜ76·VÓ*Moso2%Ð|gá¿xÃÂÚ¥¦¹áèzO‰|9­X9–ÇXÐuÛ }SHÕ,¤!L–š†ŸuownåT¼3#3ŠÜ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<“ãßdž߳GÁoŠþ0x‚ ü1øAà­{Ǿ4Ö¦1—¶Ñ|?c-ìðXÁ,° í_Q‘"Ó4M.9çVÖ/,tË@÷Wp£?ðoOÀÁPÿooÚÏþ ÇûXø?ív7Ÿ5?þÇþñE²ëO„ï´Ø­ìŸYð±Ôã(Ñüð¿…þx_Äzu¿Ùo¼]¬xëW‰ìüQ O$u?à¿´¿ÆOø*§íáð‡þ ûk º<>-Ðø£ðÃà߯þ ëûVü2ñ¿ì}ãoxá·Æ/ƒôÙãÇþÕ¾'½~óK×®¡ð÷‰ì§ðŸ‡n¼9§j>¨¶¶¶ºlæìIcÞ·ü÷ö8ý•¾ëxSãGÂï´gmƒgoÙ£áŒü5ñGâÆO‹þ*Døyá[Ox?WÔµ;ê¾)¼Óm5ßjɧèºu„“EÝÞµq¥hú‰ÿÁBàݯø&wüƒâ¡ñ‹â×Ãïü+øÓ®ª¯‹>,þÏ~)Ó<âÉ0[ÚßxÇH×¼3ã_ø‡\µ‚€xšûÁâkËQ ž§¬_ÙØé¶öT?bø!üþ &Þ%ý¤>xÅ~=øŸðïÂ'ñ|pý ¼]¢øËÆ~Ð4­Q¼ñÇ…VËBð?Ã^ÜèÉ}g}â+ÂZF´4©ï4ûv-"ïP·œõ'ö4ø=¯~Ï?±ÿì§ðÅ7ëªøŸàwìÙð3à÷ˆõD˜\&¥¯|3øaáê÷ép„ëy¨h— 0f‰†;²~“¯ý›þ6è´¿ìïðö𮓫èý > ü-øÛá½ Ä?bþ‹ |Vð>…ã½I×›u{§kéºv½og©}‚òîËí°Ïö[©àòåh Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ü–ÿ‚ÒÿÁM¼%ÿ±ý‡~!üu’÷E½øÕâ{k¯‡ß³wõ)-§—Å_µ»9cÓu{­K›{GÂmšOxÔÄðÅ&•¦C ­å¶­â-.?U/uíMÒ5?j:Εa è–Ú­æ³­Þê6vºF‘i¡}§ûnëSÔ§š;; mìWŸÚ³ÝMZÙ.~ÖÐùìþ¾økPÿƒžàµþ)øëã;SÕà–ðO‹¸ôøoUŠëOѾ&Ê/d›AÑ”Ãn‰uñ»Æø“ñÞV‹SÓ¾è>ð­qc¨ÝhÒ€~µÿÁ°?ðLï~̳ŠÿoÚR×QÕlÛæGø—âoÅ/<þ.ðÏÁßjCÆ~Òµ¦»ŒOk⿉úí俼y—[‹à#Xµ´Ö¼)yþ¤é¨‰$q¢Çj¨ˆŠTEPUTªS¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùý´õ/öhÿƒ¯ÿàšŸîô};Mð§íiû&xŸà»®Nn]Câ=µÇÆF¼·•îÖÙµYnu?‚^6þW“ý•q˜íäÔn"œ]ü†ÿÁØ–ñ|Òà”ß·õ®Ÿ`š¯ì“ÿð$’ëë¦Éªjö:~¨–? „éÉ,6ú¦5Ùú)f´¾uΠö6vsÛk^‹ë‡GÕô¯i:^½¡j6ZƉ­éÖZ¾«i·1^iÚ¦•©[E{§ê6p3Áue{i476·0»Å<Ç,lÈÊHQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûý_2~Úÿücðö4ý­¾9|<°]SâÁÙ“ã×ÅihoÓQñï…~+ñ†lÄ[ݛŻִ{+v´·&àHaóoòÛéºðÚÇâ5ÇÁßÙcö–ø¹iàÍâ5×ÂÏÙÿã'Äko‡¾#»KxòãÁ¼Gâh|¯_ËaªÇe¢ø¢M1tMRîM/RKkéæ{ ÅCo òócÿŠ~É´N¦|hý¯¿nßÛ‡öŒý >"iÖ~+ñ÷ÅÏ |HøIcá?jšü ¬Ü]øN×Ç~&x‚? ½ÕýÔÚâ™mÛMžÙ­tý6"-SÅÿðeoüb ø¢o|wý»§ñ”^Öäð”ÇÄ¿ÙâïI›Äɦܶƒ©kì× És§Iª‹D½·MwEy­Œ±®­§3 È~uý‘¿hŸø:+¿ |â_Øþ ½ðÃTý‹¼yà­Åÿ³wÂßÚ§ãçÁŸˆúÇ¿†~(´ƒ^ð¿‡|âÙ¿h?ÙãB|9°Ò.í øuáoŒz‰¼EáK¦ø~ fëFÓô8tÿnø­ûfÿÁáPü.ø“7‰à–Ÿ±áؼã uý{Â~2ðv»â­EÃڋ꺿†tK?ø(wŠnõi¶"{ÍJµðLjîu FkH4-^Y—O¸þŸ?àžß |wð;öý‡¾ |Rпáø›ðö@ýš~üEðÏöž­ÿÂ;㿇ÿüá?h_Û>Ô5êÿÙ Ò5 ?ûOBÕu=ÿìÿjÓ5 Û)`¹—ëúø'þ Syw¨Á/à›·÷÷W7×÷ß°Gì{y{{y<·7w—w?³×ù®n®®fgšâæâgygžWye•ÚI‰?{PEPEPEPEPEPEPEPòãÿ^]ÚØ~Ȱõõͽ••—ü»öU»¼¼»š;k[K[o†?´\×772C¼£Ë4ÒºGhÎ쪤èþ÷öMÿ£ ýÿðõü5ÿæš¿ž?ø;kÃ:boØkÁ¾&²þÓðߋ૳7†|A¦ý¦îÏûCC×¾þÒ:V­eöÍ>âÒþÓívw}¦ÊêÚî3Ͷ¸†dIêoø…ÇþQÿF3ÿ›3ûaÿôAPïµå¦¡ikaum}a}må•íœñ\Ú^Z\ij[]ZÜÂÏ ÅµÄ.’Á£=žŸw ”S5Ì–ÖWs¤M´Î|ûk~Á_²wüKáfðSöÅøSÿ ƒá—…þ i_´/ ÿÂuñ'áÿØ|w¢xsÅ~Ó5ßퟅ¾1ðOˆ.~ÍáÿxŸOþ̼Õn4y¿´þÕq§Ë{e§ÜÚ~-ÁÌ_´wìõãÏø"?í­á?|xø3ã?ê¿ðÎÙ~ðŸÅx‹Ä—Øko€Ú•ïØ4m\¼Ôo>ǧYÝßÝ}žÚO³ÙZÜÝM²%‘Jüçÿ‚õÁà“ß±wü{ö¬ý¥ÿfÙOþ¯Æß†¿ð£?á ñ¯ü/?ÚKÆ?Ø¿ð˜þÒ|â?ø§<ñ‹Å^Ô´|%â­{Iÿ‰¶ƒö?·ý¾Ã캭•í¹@Ûås¾/ðLJ¾hô-N°¾aÝΣ¨Ço¢ØêW¶ÀûðŸÀ¾|,øiðÇá&•§h_ ~|?ðo€þhz=õΩ¤èß¼!áÍ7ÃÞ Ò´½JòóQ»Ôtí;Úv›ie}u¨_\ÝÛCÄ÷—2ÈÓ¿ WË?°Ï€ü{ð¯ö&ý>|T’æ_Š?eŸÙ÷À%¼v’îOøCá/„|=ã .¤r^K—ñ¨´îä³JY˜’M}M@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüþßÞ3ñGüiÿ—øqÿØø+âVø'Çì9â+ß~Ó?ðÕâø£ÄÞÔ$Ðþ%øŸGñƒ^Ø^ê7It¿> ݯÛWÕ¾ x÷NPð…î¥=·íŸüÿR¾ÿ‚w~Æð­> ê“?í}û]¶±ð§à¦Ÿ¡ù×>&ðo‡níbÓ¼}ñfÂÊÌý±u=ÛWÓ¼5àCo&øƒâ} R±´Ôí<;®A¨ÿÁ¾ŸðJË_ø%ïì9 èþ<Ñm!ýª>?6™ñKö“ÖXA>¥¥ë3ÚÜ7ƒ~.¡”ͦ|+Ðõôû¸ÒîòÊçÇzÇ5Ý>àØkV°À÷ÏÃÙ?Â_kí_âÏÃoh¾ ð¯ûüý›4Ý'ÃV¶Ún‰¢éß³çÄ_‰š¿‚ô84›Qv±Øxgâ«izdþYyt­ßNóL=´QýÃEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWò9ÿM'ÆÙÿÄðKø)ïÃ/†šÄo Á<ÿiø£âœ׆ÇF°Ð>%ø‡àŠè6~,½³µ¹Õ4mÆçÃñà?"M¦húï‹tË ÛBï_Ó-%þ¸ëç_ÚÛö\øOûjþÍ¿¿eŽ]Þ«ðÃãWƒ¯<%âEÓf‚ÛYÒfûE¶«áïxvêîÖúÎÓÅ ñ>›¢ø¿Â×—º~£ciâL¹½Ó¯íbšÎ`·öøÍá?Ú/à_Áß¾¹¶ºðƆ^øŸáÉ-o¢Ôb‹Jñ¿‡4ïZÙµì1“\Ø&¡öÌÁo$wvóÅ5½¼É$1úí?ðA‰Ÿ¿à–ÿðSŸÚþ'ûQ|u‡âGtO ÃãïÙ/U‹@·Ðü'¬kšÿ…ô?‹š¬Ô|Uqcâëñ'€µ»ëKáþ‘?|5£|Cð‡ít=^ag®øƒûv Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþÏ´QÿGÊ ?noû¶oýl?ÙöŠýþ¢Š(ùlÿ‚†Á¬³í{ñcâ7ÇoÙËãçÄߨcâWÆŸí©>4é_ô8üiðwâEÿˆLͯjÚ§Ã8|WðòöÂ÷ÄÒÞj3x·OÓ¼k…5û‹ÙïßÃ6š¥î³«u¿ðOOø6Kötý‘~3x;ö•ý¥ÿh/Šÿ·çǯ†wpj_ uŸŒ6RèŸ ¾ë¶“ ›èŸµüDÔ¯¼Q¤\¤Wš ߈|u¬èú§®½¦hVþ#Ó´gNþ™¨ Š( Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ òï¿þþο¾#|tøÅâ­;Á? þxC[ñÇüOªJ±Ûizƒg%åÓE|ÛíFì¢XèúMšÍ¨ë:µÕ–“¦[Ýj¶Öòú ßð\ÚWâ×ü[þ ðÃþ7ûx‚hþø#ƶþ(ýµ¾*é/wá›=WÁ·7Úý–¾tÖK[Ï|ŠxßPÓ5 Å´ñWÇÍOà J×ü%¤^߀bÿÁ"~üOÿ‚ðÁU¾%ÿÁj?jŸ kšGì»û9x¶×¿±—ÂßB“è·!ð­Æ¡uà Êæ ¶«iðWí‹ñÇ”_ÙúÿÆïißdº¸Ò´x~ßûïý–¿f„¿±×ìùð£öføáåð×Âïƒþ±ðŸ†lÖkë±’ëUñ¹x3©x“ÅÕÖ£â?j>¥®êš…ë$~–¾û@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Æ×ü…ðfÿàmÏìÿƒøE$Ú/ÆÿÙ ãï€þx—PÒÞ;}GÄŸ/µ­câW-ï.ï-õ °ðŸ´_hQØO¦ÝZjVß5ÄÕíu+xìëûð·Š<;ã xsÆžÖ´ïxOÅú‘â ø‹GºŽ÷I×¼;¯éöú¶‰­iw³Cw§jšmݵõ•ÔLÑÜ[O¨Å\üÞÿ‚Ï~Í? ÿjÏø&í£ðÏâeŸ§è¿> üY𮩠0I©xcâÁß êüâ.I”´2A®xvÞÃTH%¶—Sðæ£­èr\ÅkªÜòü/ñ×Âÿ?àŒÿ²u¾‰ã9¼aâ‚¶0øñ +Û›«GÂ(ðWŠõ-OCðeë]3¼Pé_ |KðöïA¶‰ÚÖÛºžƒ ªÃ%¼@½ôQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´PïõWÊÿ·O‰~&ø3ö$ý±|aðSíÿð¹|)û+þО%øIý”®úŸü,Ý á'‹µOÿf¤rÀïÿ U®•ö5Iáv¸òÂË!ÔâOü?öø3âýSáïÆÛ›ö;øSãíC·à‰?´×Á_ø¿G˜<‘µO x£ÆÚ^µ§È$ŠXÊ]ÙBÁã‘ÜŒŽø×þ ÿºð§ƒ|[â‹Oø(·ì#¯ÝøoÃ:ö¿k¡hÿµÇÀ_VÖ®4}*ïQ‡IÒôÇ:žµªj:Œ–Ëge§in¡ª^Ü͵…Ýܱ[Éù‰û?ÿÁ²ðCŸüøqãWàω¿jkψðÿ[ö‚ñwíûDéÚßÅ•ñŽ‘gâñÌö~,ø?°Gâ·rì´9ü¥ÕíôÊnºñÇüÛÿ?›Á^0‡Ãÿ±Ä>×¥ð¿ˆ"Ñ=¹ðí®­5¦Ÿ6©m¢M¯¾›£-…”·±[-Ì––Ï)…>ˆ¯’?`†·?aØ£àõÿŠüãËÿ…²GìßðÖ÷Ç µÙ|Qð߯w~ø9àß Üø¯á÷‰¦°Ò¦ñ‚ÐèüÞOø%§üZI¤’OØ ö8wwbÎîß³·Ã–gvbY™˜’ÌI$’I$×çŸü3öïø·ðg[ýˆ¿àŸ_²çަøeûJÁIþ>øwàÐø¹¥ý¼Eð7à|þ%ðdž>$üGð¬·-äéž9‘üc§Zx?Th.¯-,ôßßøvüW¦èW–Ÿ¡_ðIßùE—üOþÌö7ÿÖuøs_̯üÃÄZµÏüoÿbðœ×,ú‰ð“áOˆ´ë2_d·Š>5~Óznµr ±@×v~Ðbr¨®E’g @è+Vÿ‚+Á>[álž ðoÁ{O‡,ô3oá¿ÚÿÂz¾¹§þÙÚŒíìR-'âTß´ý¶§mñ“Ä>(Óµ{{?Ki¯øÂûÃZ¥õ°³Ô49twm:¾uÿ‚ÿÁC>)þÚ?>7|ý¥õÛ/þÖŸ°oÆÿþÍŸ|]ciib¿¬tCYÒ| ñ>öÖÂææÎkÄßð‹x§EñÙùVZŽ»á-G\´Ž(ue¶·ýé¯â[þ ßñ¥cÿÕÿƒ†¼k"Å k?´ŸÆ¿ÞÙ§˜ˆÚ—„ÿl/ZV‹"F’-¸[k/ë‘.øD`’Útœí¿ÙÛâNŸÿÁÿ‚˜~ݾø³¨^øŸþ áÿÜñ7‡>ü3ýž­µ­CLøwûBüy×oýœÿhoß59<-y£ðgD½Ñþxoâ†ðñ‡Äڃ᷋<á?j#Ä>ˆ<áëíÁ^¶»ñ¶Õ'ÖþÉ ÝÄÿÙº]ôßf1ÆòÇúý@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@W”|uøÝðÓömø9ñ/ã߯OZx?áwÂOk~9ñ¿ˆ¯tÓô- ÎK»‘ml™ŸPÔïY#Óô}*Ñd¾Õõk«-.Âïnà…À?¿àáßø+bÁ1dÐ>jpÜþØ´Âë?¿gíÌ‹½gÁÖòÚ-Ÿ‹~5>˜±Ng_G©iö^µ¸ŠHõoˆZ߆ãk WFÓ|I ¿7ÿçÿÁ$n¿àœ_²¬ÿþ8i÷·¶·í]m¦|@øé¨xM߉~èׯMcÃ_¦Ô®škù5]%ï¥ñÄ«‰§iµˆzž£c<ú•†4;çü\ÿ‚;|ø›ÿÛÿ‚›üRÿ‚Ú~Øþ»ösøã˜ü!ûü!ñoy¢'ˆ|y>­ðóIÓÎØ¬µ/ü·Ô ñŸ‰õ;[htÿüwñ/ö´%¢ÑüW ¯÷—@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ï,í5 K« û[kë ëiìïl¯ ŠæÒòÒæ&†æÖêÚexn-®!wŠx%GŠX£‘YƒüEÿÁ a»ÿ‚CÁzÿmø$¾¯âôýŸ¿j»+_Œÿ²Çö³iºo„WÓ¼!yñ3M¹Ñl¯mô9.O‚n|kð“^Ô|`ßÚÞ*øK¤h׺eý†c¨èÛåŸðvßÁ[…^ý…à«mõè¾5þÈÿ´ïÃ/êSèšËè¿nøuw¨x⧆®æÕd–ít[ß üJðe¦‰¥^iš¥u7ü,íBãT†îËGµ·@쎊¡¥jºf»¦iºÞ‰©Xk6±agªé¾•yo¨i𮙍[Çwa©i·ö’Mi}a}i4WVw–²Ëoso,sC#ÆêÆýQEQEQEQEQEQEQEQEQ_ÎWÇø.¿í9ð‹ãWÅÿ„úü»þ ñsBøañGÇÿ4_Šÿ¾ ü@Õ|ñ;IðW‹5o éß¼ªY|1Ô,õ/xÒÏL‡Äž¿´¿½¶¼Ñµ++ˆ.îb‘&pßþŽÿ”~Üß÷lßúسíø7ÿ¿ÿ‚Éþпµgü÷öøãŸø#ügöUð·áKj|{øñð‹ÆþøSà?øEÿh_„Þ4²ÿ„«]Ö>hZuü%‡m<¡ý£UµûO‰ ÿÁB?cÚ¯öñ7íËà/‰e-3áïÄÿ|IÕuÏxŠ÷Sð×…þèÚÍçÅmÅÿ mômcÄ÷úžƒ£éZ£_xcKÐõë¯Ø=¬ž¶ñ ޵¤Ë¨)Ÿ²wì=ÿAkß <û@~É?¶7ì#û|$ý£¼ |kðÿìѧ^x÷ÄÿþÛüV³·ñü²xcáÅ/Ù³ö›ðOÂßÍ­k~øKâ»麶§¨3KÓ¦¼Ôà—Ù¾,~Ç¿ðxe·Âωw>"ÿ‚£þÃÞ&ðý¿ÃÿO®øsÂÞ ðâhÑxsR“SÑ<9«ËÿóðœZV½ªÙ,öF¥'Š|5Ž¡qotþ Ñ–#¨Û~—hÿðs·üKÃÚN— h¶–¡èZe£èº.û,~×Zf“£é:e´VZv—¥é¶_³Äz~§ÙÁ ¥••¤0ÛZ[CEQ¢ ?ÁÒ_ðD| ãY¼9ûc¯ŠüC„¼G.ƒágý™jÝž%ÖcÑïKÐûà~¡mÖ/„smkN“‹“ý£©XÙù×Q~–Á'å_ðM?û0ØßÿY×áÍ}ÿ_ Á=¾"j¿`_Ø{âÆ­ xCš¯ÅÙöiø‰©x[áö…<á­CÆ¿üâ[ÍÁ¶–{o xCF¹ÔäÓ¼5 [Í4>me§E,‘Û+Ÿ¯è¢Š(¯Àø:;þPQûsݳëaþϵûý_‚ßðQø%¯íûÿø)ñ_öaøƒÿ.ø3ð÷övø£â½3V½ðƒ?àž·W>3ð§ôŸˆ^ð¦µñXý³®©'‡õŸ øf}K]Ñ<3á)üAw¤¼²Xéú}õÆ>êÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþvÿàº?çøCÿßÿ‚~ںŵµ§ÃïüMðwìÉâ?Ü,ß`Ðu/âÝÆ§ [k—(‹„wö_|C©hóM9„§‡üCut°ÚiÓÉ'íçì-û~ߟ²ƒ?g¿‚^1ÿ‚üøåû;|ð7†>Øø0þ¿ ~&k< àØ¼à/Šºísâ­#I»Ðmtí ¤Ön¾k÷𥦛=¥â›«ó©Û}ûf~Æ?o_€ž(ýœÿhÏ Ýø‡Àž!»ÒõÍ7RÐõIü=ã_x×Ã× yá_ˆ¥®xÄ:½ÉkÍoÄÞ$Ö.ïu{W»c-æ¡y1Ž;{T·µ€ùdÿƒT~Ïû/|rÿ‚Í~Ä>'¶¶Ðügðö¦ðl–Ú#,ÐÏàÙî>+x_Añ”&HV÷÷úG†tWL»†oìïé77)zŠ·Ü?ðvì¼#ÿTøùá)ä¶þÒøÏñ7övøiáëI 7º–³cñŸÂ?ÍŽ‘Ê’]j-¤ü0Õn>ÏWR5µô‹nfâÑ/Úþ Ŧxßö¡Ñ¿n¿Ù—ã¯û'þÙ6ž ᇾ"i>Ó~%ü/øõð¾ÚX.tÏþПu=kÂÐxêêÏOx·Ã3øñI´°Ó´´ñ„Ún‹á»]ˆÕÿà™Þ-ý¢¾<üøõÿ ý¢tÚfÏ'Ä€Ÿ~üoÙßöcðwÅ(W˱ø±âoë¿>>üDø™ãí (­O…çñŸÅûÿ xfu¾ŸGð¥³k¢Ü€}ÿÊø¬þË_ðOOØ¿ö~ñ5ög‹þ~Íß ü=ã;Ê’°øù¼#¦ê^=´òåHægñ…þ·fŠ)Ÿnù¢ŠVx×îZ( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þ ¿à²¿µ/ÅŸø.güá÷üöñEµïÀo‡¾/·ñWíñ§D–Kß Ë¬xR…|[y©_ÚÜEg¬ü?øö˜­,4Ñq¯¾9Þi:%Œ­6…ámbçõþHÿ‚¹k¿°ßÀöFý—õ ýcöñý±mÁ¿toÁs«ø×áÇÃïêmáÿiZN–“j‹ã_j’]ø àìVÑ¥ýÏ‹[WñŽ.î¼-×Ò_ð@ÿø$/†ÿà•?²VŸiã=3JÔ¿kŽZGŒ?iÀöúŒÚn¥²{½á.…¬ ËះpjYÞÏks5Ÿˆüa7ˆ)þοiÏø!_íƒ∾7þË~1ñgˆþ^x¢ã\šÏXø[§ÿemxO–šÆŸö#ÂCN½Ðþ1|4jmcâ|B¼»ÑtÛ-ÏÔÿ³*þ>¿à¡¿tïØÓþ™ÿ‚e~Ñ/ð–¡ü&ýª¿e×ý•o¼~É™¥ñ[UñïÅO BúùqÝê>“âì÷£kú«²Yø?X³‹ÎŠ-:ÐÁý‚ÐEPEPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~Ðü{ø ðö ø?ã߀_|¢üNøAñ;EþÀñÇõÿ¶&­éÉyk©Z‘u¦ÝXjºf£¦j¶~±¢ëZ>¡§ëZµ§éúƨXêv6·Pø§‚¿`ïÙ¯àÿìoâÏØ[àÃý;à§À?ü2ø“ðÊ ³êšî›eñGCÖ´oë÷:牵=cÄ~&ñ5É×n¯®ußkz®±r­æ¡,qD#û"¼ÏãWÅo üø7ñkãä’üøeãÏŠÞ/–&‹Âÿü-ªø¿_’'¹–d‘4­í‘®&Š` ²Çfüÿ‚V~À¾ ü*ø?oû"þÌ0_†?|!ài|câÙßá&¡â^xgB±Òoüaâ}BûÂÚ…ö¡âO_ZÜkúýýíýíÝÞ]\ÝÜÏ,“?…~Ö?³_ì_ðÏÃÞ#ðãÿÁ´Œ õφþ&¸ñßÅÏ?³§ì'¤ü7Ñî¬u};Zþñ×Å_†¿|I¯i:Do¯Åeð§ág®®í§´¶Ñ^û^é6ßÏÿíKû Áo~5ü·ÿ‚ƒ~Ñ_ðWï±%×Äï‰ÿ³¬±÷ìÏwñCÃ>ý~þÑŸ¾|*1x‡ÄøÛðJË[ñoÀ¯üG›Åþ(Ó5 x‡[ñ¦­àÝCò|@SñëÖ^…ñ7þ Èÿ‚¥Â7-¶³ÿòýº¿iï‡÷ò-ÅO‚¾<ø×ð³Vø…ðÚè¬>0ðׄõï~Óßü{â½SC{ë}CøáK_kz™µÒ|I¯èUíÞ³§€U±_|ð»ö7ý’þü(ñ×ü-…¿ÿfo€þømñ3Ɇßþ'€|#ð³Â¾ðw޼‹oôx?á.ðkþL¹ûCd_"­}3^7û:x?á¯ÃÏÙóàW€> Awkð{Àßþx?á=µÿÛþÝoð×Ã> Ðô_A{ý©ŸÚáð½–•ÇöŒßùÊÿlŠ;1²PEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|‰ûw~Ùÿ ?àŸŸ²§ÅÿÚ¿ã=ôiáO…¾ºÔ4ÏÇoa¬üAñ¥Ú5§‚þøaîUx×ÄYh¶2yíôÈgº×u5‡FÒµ+«®]Ò4y$uŽ8ÕÝØ*"(,ÎìÄ*ª¨%˜’¯àöÉøãoø9·þ ÙáØ/àˆõ{oø&ìOâI¼UñÓâ~të øÿSÒ54øóHÕlí®´Û½OÅ.º—¯ÙçÏ—RŠ]&OüS± ¡jÚ厚ôGüÍû|^ý¿jŠð_¿ÛóLmWƼcâû"x'[µº¸ÑtKkU¸ð¼Ÿ<=a«4ÆÛÁß ´;uø]ðU&Ì·:_ˆ|bÌš®›á½v÷ûv®Cáÿ€|ð«À~ øcðïÃÚw„|ðïžð?‚|+¤FÐé^ðŸ…t«MÃÚ¼’%–•¤ØÚY[ $’_*2I#–s×ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPò»ÿn| ñ7‰¿àžß ÿkO‡zE¥×Ä?ØSö›øiñŽ=^kïî4¿ø–ìø+\Š8Uâ½{ø‰yð‹ZÖ£µ”Ä4¿Ou{ ÛÚCOþƒÿc¯ÚS¶/ì±ðö¢ð,Ÿ ürøYáˆYÀï'ö&©¬ép?‰ühýž¼}i ïƒ~5ü0ñ·ÃÅýž>|døÿñê#À~|CøÃãc£ÚCVøgácƾ$:]€xî£ý¢^ýŠÐI¹¹ò¡Þ›÷Á/ü[ÿ‚„ÿÁLüCÿÿ‚n~Ú°‹ÿdÿ×?²Î©á~Õ3Ë®>â·–ÞðÄ:„xÛãįØûâ÷ì]âüfñ§ÂaðÛâýÅõæ­®ÛxF×D¸>+Ò®õoxSkcw«]x{Z²—à k¢ø«A×4KMk\m:âæ?ÒwtIcŽ5gwv ˆŠ 3»1 ªª f$$€(Î~ è*ð§Â…^ñÕÎyã ü7ð6ãÍ?Ù7^*Ñü1¥éÞ!¹Ò÷EþΟW¶¼–Ë0B~ÌÑf(ÏÈ="«ÙÞZj–·öV×ÖÖÐ^Y^ÙÏÍ¥å¥ÌK5µÕ­Ì,ðÜ[\Bé,Äï±:É20&ÅQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~LÁe¿àª?à“±ÿˆ~8k°éž(øÃã®ü û:|-¼¹‘Ç_îl$5^ Y#¾‹À>´+â_j0ËfÎ=;Ãz•Ÿˆ¼WáÑpøÛÿ)ÁR¾&éw~ÿ‚8þÁ+­x»öÐý®¤ðÿƒ~$Kà‹èíõÿ‡Ÿþ Ëio¤|=´¿2Ám¢x¯âö•y,ž ÕuÝ:×Á_ %ÔâÚáÏ|V‚_"ÓN²´°_|(M+šTZe§Š(Ô¼K¡x×UÑ´øg7÷žø6×Ävw× uu¥jŸ&Òµk«Y&Ó4è?¯*(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh ßêùÏöÃñ–•ðëöHý©~ ë¿tïŒZ'g?Þ2Ö>ëÌ^Ò~)é^øgâ}oPøsªx†}+]ƒAÓ¼oic7†ou™´Mf-.ÛS–úM+PHÒo£+Åi?|&ðìéñ÷Ç?âó¾ø/à¯ÅO|i‡û?Sռ߄Þð.»¬|F‹û+EWÖ5?3ÁözÊgé(úæ~Í`­u$@€ß±¯üþ 5 |3ðeσ¿à‡Ÿ´ÿíû-j~еÙë^ÖüeãûŸŠð¶ïI‰üº¯ÇK?Ùát/‹¾‡B:_ü"¾8¼øS¦ø§ÅK=cÄÞ.ñ¾³©ÏâËï£>0ÿÁx¿à­÷Ÿþ)ÚKÿã~Õž ŠëáÏíäñ†«ñ[Ç^"Ó<)þÔâj^³ý’4k½vÃBV:¥æk¬iW½¬–PjV2ηQXŸ 4/ø_áß ü4ÓcѾxwÀ~оèð›Ó•à#Ãú~ŸáM6#©Ë>¢c±Ð­ì-PêÍzV!ö¹dŸÌsòïǯڲûá.¯ã­âGìqûWk¿t]*(¼[ûGøMø ãÿ…oá_ÃÖW¾%ÕSáï‚¿hMOöµ“Eð´:†©¥xªòÙÁ'´Ÿ@Öµ)5?]Õ€9ßø$ïü¢Ëþ §ÿfûÿë:ü9¯¿ëÌþ øSá> ü%ð?ÀûmËà·ƒ~xŸ,ü9ªM­øzÓá‡|-¥i¶Ðu›‹ÝJãWÑ`ðž“—ªO¨ê_ؤrÞÝ<­<ž™@Q@Q@Q@Q@Q@Q@Q@ʧü˦kúßì9ûèÞ׿áñF¯ÿQý›4Ï ø£ìqêðë÷ÿi;M^ûÄC}ý¨Ëo¨ýŽR#¹û?’ä+“]/ü:Ïþ ÿ¥ÿóNþÿòmðuüšoüßþÒíû'êµý¢kú† WÀšOˆôø7Bñ‡ˆÿá0ñn‹áOi>)ñoØbÓ?á)ñ¤YÙë~#þÍ€˜4ÿí½N­Oì0“§Ú¼ˆÉHÁ®ªŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ɾ;ürø[û4|øñóãg‹tïü*øQáMOÆ^7ñN¨Íö}7GÒâÜÉoo{GUÔn^ßJÐôk®5=sZ½Óô}.ÖëQ¾µ¶—øZý„¾|Sÿƒ˜?ਞ"ÿ‚”þÔþÕôø'Oì™â‹O ~ϵ®C«x·Ä:×ôþ߈Þ#¶k[RÂ÷Ç~¹‚mAµ[y./ñ¶‘ªü>ÿ„]–+K?í_ëžñöÌlnmÿáû)‹P˜¼¨ àwþ ûÁb> ÿÁ/i߉¿µGüþ›à7†¿áKÂwðþ³Á~ÿ„ëûgö†øMáÿ Å[¤ÝI¨i?ðŒxËUð÷Œ¿ÑѾßÿ÷öd¸‚öB ýäÿƒ£¿å·7ýÛ7þ¶ìûE~ÿWò»ÿ³ý½¿à¦Ÿ?`ÿÚ»Â_?à”þ×¾ üaøñ‹àgŒ?hOÙ÷öíÔ~/è-~0|?×>ÛøÿÅ_¼Eû|(ñõׇôYüN5 n%Ó4}¥²]7ZñO†ÛQ±¼“ú¢¯ý¤ôOø“övøõáïü:ñÅïë~'é^2øOàõÒ_Åß|-ànÛ^øáE×üAá=þoir]x@:ÏŠ¼3¥®­¨Yµÿˆt[Q.¥lü¡xþ(ÿ‚¡h¾ðnaÿÑþÞú톓áOi–ZÝž¡ûB‹MfÒÃH³µ¶ÕmD?°Mä"ÛP†$»€Ewu•2ùw3¦%n©¿à¸ÿð[ÏÚJŸƒ_³¿üçûB~Ïß¼om6‹áߌ?´¾µñNßá€$Ô—û4øŸÄ«ñödøákÈô)o`ÕÅŽ¡ãÄ[¨,n#:&µ–Ò¿kÿeOø)oß‹Ÿ³N³ûHkÿ²ÏísûþÉÿ þ ÜüL³øÏû]xwà§€ô=_áç„´‹[¥¸Ðü'àÿ¿~0Þ-dž#:ö‰­jß4ßø›M¶Î‰âOS¿Ò¬5€?gÏø/ׯÚºïíO¢ÿÁ(¿i}3þ › êþ"†ÿöÔ‡âwÃgÆ>ð­ü¶>$ø¥7쩟añ'Ä?|#¶¡¨xÛÄ |Añx~ËDñP[êÚ®©ip€~ê~ÊÿGìÙû0þÎ?³ªë-â5øðáÁQâWGׇÂχ¾ð0Ö]$DmPh_nepLä0Ü {Íghú¾•â 'K×´-FËXÑ5½:ËWÑõm6æ+Í;TÒµ+h¯týFÂîx.¬¯m&†æÖæx§‚Xå™IÑ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þ=àâßø+ßÅÿxÆ/ø#ü÷E“Ç¿µÏíC øWÁ6ñ7Ãín}CÆß ô‰êöš¯Ã="-%tÿøßÇ~ “FÔeñlÞ&K¯ü:×5ÏÞØxnîçž0²ý;ÿ‚ðÁb·º»Ñ|§KªÜIq­ø®êÆÓZñ^±~ÁÑEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü AñoÇ¿ðl×ü‹ãk‹+û+˜™d·ºµžX&ƒÇ#)µkùUÿƒNOÄþÊ?¶§ì½ãŸßøÿGý‘¿oߌ_|{{%ÓZéz'‡tO ëXx~ ɦ›JðÞ£â‹}gÅ:*·•a¨x‡V•~{¹1ýUPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~ÿWËß·ƒâO~ÅŸµ÷†<§j:¿‹üGû.üÐ|+¤èïq­ªx“XøQâÝ?CÓ´·´ÍÚj7ºÅ­µ“Úƒp·2ÄÐþô-}CE*¿ðr÷íµðœÁ´ÿ~Ï~<ð¿‹u?Û÷\ø1ð×à‘ðöö KUñ§ÃÇñFãÏ]x7BÑYç—Cm¶µu_dÓ¯‚ÿ‚~x'Æ¿ ?`¿ØáÇĨ/m~"ü?ý‘?fÏøú×R FÛÆ¾ø5འÅP_‹€³‹ØuÛ øî„ê&¬‚Pp¯®ëŽøwà/ ü*øà_…þ´¿ÓüðßÁÞð„l5]Ä>+Õ,¼/àýÇÃÚ¦¥âêšçмIm¥iÖÞkþ&Öõë &£­jš†¥ssw7c@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEò'íÑûlü ÿ‚{~Ì¿ÿj_Ú^þÊðG€´âºng%¹ñ/üe}ãÂßücq,)©x¯Åwð›KZHìôûHïõÝfæÃ@Ò5]FÏÛ>4üføaû;ü'øƒñËãOŒ´‡ß ¾ø_TñŽ|a®Jñéú.…¤@f¸—ʆ9¯5 û§ò¬4L¶¼Ö5Ý^êÇFѬoµ[û;9ÿÿ‡žý¢àíø(÷Å߉ÉâÿƒÿðH_ÙÆw7„|$“\i÷Þ6¼1iWwþ°Õ,£·†ÿãÄí6=/\ø¯Á<ñ|ø{ªèÞÑngÖoôSÅ`÷ÿaý‹~6ÁhmÿÁtÿà¤w? 4OÍiûü Ô šëÁÓÝø+U<)©iVz€O´ü*ø'x.¢ÐŒÖ /ċ˪øÇXœ Y±ñG÷i\Ï‚¼á/‡ð¯ÃïøoEðw¼ áÝÂ>ð—‡4ûm'Ãþð¿‡të}#BÐ4M.Î8­4í+HÓ--l,,­¢Ž kX"†$T@+¦ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åçþ šÿœÇÚ]¿ioýÃ×õ _ʯü%â­.ãÆ¿ðZï »Oxcþ ¥ñ¯ÅZ¬RÛ˜íãÒüe«kÚ.Œ#›/wöïx…o-Ìhm£KG,ÆçlÕUQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´Pïõùßÿ3ÿ‚–üÿ‚UþÏÚí#ñ÷À¿¼}à_|UðßÂ(´ÏÞð_‰¼U§kþ*ðïŒÏ>¥®ZèšÅΓe÷ðiz„¶ëi0õÝE|QÿÕñ·‹¾%ÿÁ9¿`?ˆÿÔ?ánxžÊyÛâ6¶ºoà ¾§§ßÞèÞ?ñÛ«ö”øÑÿ8ÿÁ@|=ÿ×ý†üO«øsþ ÓðÄ–Þ1ý¢>:ðŽ¡«‹hîZHµŠþY¿àëoا^øÑûxKö×ø>‹¤~ПðOOØ|fÑñG‹ít‰<Í3Nøƒ—ö'Äm&ż›|[hþ<Ò¼E¥Ç†3´òˆÊd€}©EPEPEPEPEPEP^ ûCþÔ³§ì“à­/â?í7ñ§áÏÀŸë^(²ðN‘âï‰Þ(Ó|' j>.Ô´o]°ð妣ªÍ¼ú½æá½S·²G3Ie¤jª”¶y¯ý¡ÿeÏÙÓö¶ðV—ðãö›ø-ðçã·€ô_YxÛHðÄï é¾,Ð4ïiºN·¡XxŽÓNÕažÞ ^ÏFñ&¿¦[Þ¢ £²Õõ‚\ÈóÿÁQà?´_üËöÁø7ð#öÓýœþ-|Vñü3÷ü"¿¼ñCÃ^"ñ_ˆ?áý©> x«\þÊÑ´ûÙnï?²¼9¡ëÝ÷“}ŸMÓo.¤ÄP;ø8›þ uÿéý?àŽ_¶ÆO±gìçð—â·ƒ¿áŸ¿áøƒà?…þðïŠü?ÿ íIðKºçöV³§ÙEwgý«áÍsXÑ/¼™ín¥yk&bÔ”ý<üyýœ>þÒ6Ÿ l¾*è÷:Í¿ÁŽ ÿhŸGot¶Ëañ;á.¥sªø7SºW‚á/,­nnîÍ“¢yñÈBM Š’/»Ñ^'ûK|hÓ?fÿÙÇö€ý¡õ«Ôô€¿þ*ühÕ´ÔiQõ 3áw5ï_Ø£ÁÌè×vº°+Coq*™Ž \,lí•ñ'í—ñ/ãïÃ_xÓ]ðŸÀ¯€ß?gý+ág‹5ŒºÏÄ_Ú¯]øñ OÑíôý`x›Iðg„¯?f¿ˆ¿ |D²x]k [Ç~irê·Siº¤ºNj5ËŸä·öÜÿƒy4ÿ~Î:ü/þ yûd~Òÿ?k/|Fý›üWñçNð—ˆüá‚¿>|Tý ¾ø_ã¿€þè>'ðÄ­SN´ø7ðƒÅ~7¶øy©ÚkúôÝsÂþÔõ¿…lµ-6ïèÁ—ŸðOÝ=+Ä_ ~1þÓ~.×|;«ØkW~;øóÀWŸþ$iZ}ÄW7þÖ5ï„?þxûÀ«âkHçÒbñ΃«kW~¸»‡\ñ,vhZˆõûÛü³ýÿd»OÙÖ}jëö}µý™¾Ûü ¹ñ²Oâƒ|,ð¬_ gצ™Viµ©¼º$š¤²ªÉ%óNò(b@úf¼Ïà­Ÿƒ´ÿƒ l>øKþ‡ö? ¼gà_}’ ?þ¯[x[J‡Ãû­ÅÝ­—ü#z"Xèßd¶º¹‚Ûì^L7F‹#zeQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE*¿ð_ÿø.'ˆÿeû+þ ÏÿýšoˆÿðQWz7e …µ­[àŸñl´c³yñÇÆ ªØIà-w?ð‰iwqxÿÄQ[A/„í<@âÿð_ÿø,gÅMsâŸü¯þ sµñ+öÌøír¿>1ø×á­Ô×ß t[_Úk ¼7ªÚ;.…ñ"ëC¯ÄOu¦Ù|ð8¼»—S±ñT×ÚŸÃï×/ø"üÓáü?ön·ð’è¾6ý¦>%Yiz¿íñ¢ÚØ»ëÚäy¶¾ðUÍ妥§ü.ðdÓOƒeq ­æ½¨ÉâÍjÖÚûSƒKÒ>yÿ‚ ÿÁ ¼ÿÂøo7ÆÏŽÃâWíýñ›HšïâïÄ‹ËáâX¾Øk÷)«ê ¼­\yÏrÏx ¸ø‹ãhæž÷Ç^%‚FŠú_ Xhð蚀 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<»ãÂ~Ð?¾+| ø‹eý£à?Œ_üeðËÆb+I¥—þ7ðþ¡áÍY­’þÚöÍoa³ÔežÆ[‹Kˆà¼Ž Ì/å…?Ç×ü)ûRkÿ±×Ç?ÚßþEûUx®ÛIø›û<übñæ¹û3>¶ñév^4ðüšµÅ×ü/àö¼[VšÛÄ >ñßÀzI7Z¾½ xóÆúÄi–ŠbûV¯ã þ¨ý™ï>kÿ±×ü—özøq ÿÂðý’?h…“|añ4“jQiÞ+ðÞâ¯ë__â&‰¥½›k:.™ã­%>ßë6ºÆ‹¬O øêËÂ×·¥Šhð€g´WœüøŸá¿Ÿ þübðtË?…>*xÂ?ü;"ÝØ_Ÿìoè6 Óã’óKº½Ón&†ÛPމlo.­Zxäò'–0®}€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>ÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷ú¼ÏãWŸ üxø7ñkàwã’oüeøeãÏ…>/Šæ—Âÿ<-ªøC_Ž$¹Škg‘ô­bíQn!–b±Ie>™_;þ׿nÿf/Ù7ö ý¥,<;mâûÿÙëöwø×ñÆËÂwšŒº=§Š.þ|5ñ7m¼;u«Ci¨M¥Ûksh ¦Ï¨Åa{-”W-s¥ËÄ!pÇ¿à°_´ÇÄÏÛ³öKÿ‚¢ø?àAÿ‚{üKý˜µ‚¿ üwðËXðÞ¥âxÓYÓt_ÝxÓ@†Ó\‰VQë¾ü@ñ2üOÓ4 ÿ øÒoØxêâÎ×X¹‡áŸ‡ß··ü7û ßé?ðO/Á1¯mŠš –? þ ÁBô¿xç@ýŸüOákwþËðÅ_Ú¶—à_xtÜÚ诧^xÂ=sâGÂOÊÚuðÖlõ/\\jº—õ³àÝyüUá x¢Ke²“ÄžÐõç³ILéhúÆ—k¨5²LÉL°5Á‰e1Æd¢´|§ñ¢×þ áÿx¯Ç_ýœüsð_â¿‚>*x‚=?EÓÛÄþÕ:WíâYë^ Ömµ™¼+w?앤Aªèº.»%÷ö>¡â\é„þÔþü,øià k_“ÅzÏþø7Áú·Š&„ÛMâMOÃ>Ót[ý~[v–f‚MbêÊ]Eái¥15ÉC,…wŸ@¯,øñÂ_´'Á?ƒß<oÛÀ¿>|>ø¿à³ªÛ-ž¨|%ñ/ÂZGŒü8u+D–tµ¿:>µfo-’y– 2%–@¡Ï©ÐEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wà?ü?þ …ð³þ SðŠOxK‰·ůÜÁð?á—•©¯„ÓS’]&ËâÏÄÛ8L³XøKK¿Ÿ xy m[âWˆì?áÒa·Ñ­¼Sâ_ p_ð^Ÿø.VÿÕð.Ÿû;þÎö–ßà ß4è4Ÿ…t›9û;ÝxË_Œ^Þ[Ëáí:{McÉ¿àßÏø"»ûYêß·×íÔúįø(Ïí¥âfïÇ×6þ*×>éþ1–îó\°]~æëU›RøÅãxožO‰ž0KÓ>™is'€tF†É|U©x·Éÿà‚ŸðCßxÆrÁVà§—> ø¡ÿøËñÂø’ÿÚZŸÀáâH¥‰|_âëy³nß5}Xíô­8-´¿ƒž–ÓÚ^aâX%·ð·õÍ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|Áûh~È¿oÙƒâÿì•ñÞ×\¹ø[ñ›ÃöZ/ˆ&ðΫý‹âM"ûCñâÿ ø›ÃÚ“ÛÞÚÁ®xOÆ>ðÿ‰ô˜õ=?UÑ.¯ô‹{MwGÕôiï´Ë¿§è äƒþ 7øÍ?„ÿeŒ?±GÄ;ŸÃã¿‚_µÿí3à¯ÃâZkõBøo¥üøRÊÆåöx^çCÖüm=úøkLk› ‰¥ñ6±µ•n’oë~¿Ëûá7üÄ_ðHßø,_>þÔüIð¿Á ÿ‚ þÕŸ´OÄ?\X꺥æ¯ðOö økâ‡6wÖ¾ÑôûÛÿhk£Éðßâß‚5OMvu¶ŽKKˆ<¸„3§†«iúö“¥ëšMÇÚô­kN²Õ´Ë¯*x>Ó§ê6Ñ^YÜy1Ãsm4ryWÅ<{¶KH@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûý_ËGü“ö:ÿ‚¼è?°÷í=âoÙ»þ •ñ#ã_Âl¾9þÎ?fŸØ²|Cøªø'WÓ¾)éž ø­ðönøqaâhü qâ¶Ólü3£êš²HÃÃÞ*еû]95ê^¡¹Ky-î#¼Hd´’Ré.V6·{v–t¸YA‰¡h‹ V@c1– “@Æ÷?cßø<*çÀþ ¹ð×ü[öÓü9qáOOáû χ~{»]"ÎM*Îéßþ »|ïsm`ÐC;5íã4¨Å®® 2¿X?à™ßðtoí“|$ý¯ÿà±?³Ï…?gÃ&“ñ2ûökð…añrûÃ7Ãì:Þ‹áËï~ÈŸ³Æ£fÚ¾‹u©Z5Ïü,»hf{wºÓ58CD¿í+ÿeÿ‚Á~Ö^(ñ_†¿à†°%‡ÄßÙÿÁÚæ·á[oÛKãEç‚ü;à‹×þ½ºÐuÍKö}°ø™ñá?õŸiÚí¬öz?‹ÛXñä~(‚Òyâðî…d>'ìÓÿnÿ‚ÈþÇ>7ð¾…ÿÓý…ì¾þÎ0×´¯ Éûeü·ð¯ˆü?ðk\ñ×Ù4=Sã’|!ø‹ñ[À–Ÿîµm4»ßBþ¼ðÇž.®-¼S<‰`€Õ'ÂφÞø5ðÇáχúwö?€þøÂ ¼¤y†_ì¿øÃú…ü7§y¥TÉöK²¶ó ©+vÑœWwMGI$ÖHäUtt`ÈèÀ2º2’¬¬¤`H ‚ @Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùSÿƒ¹u_ß°çìGâørãÆö…ÿPý›5ÂV—bÂëÅ:¾—ð‡ö“¾Ó|9m|Ö׫eq­ÞÁ™ Ù³»ò],ÆÚpžSôßðúÿø,wý+_ûDâ[i¿ý ÔýCQ\¯5ÍoÄþðo‰|KዟxÄ>ðö¹â^^®¥wáoVÒ,ïõ_ ]j)kb—÷:ýÄúT÷«ef·RÚ4ëkn$§U@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wá§üËþ oð[þ 'ðkì¶ŸØ¿ÿkω:UÜþ%ëKä´žeœ¾(G§NšŽ‡ðßF½ÊÛÛ$–zßõ{wð×…å¶Šø— üßþ eðkþ )ð[ì–¿Ù_kωú-ê| øÙ‘¡óZ}:?Š£³“íº7Ã}QI#¶·So«øÿ[³—Âþx"¶ñ/ˆü+ù_ÿ ÿ‚&üMñÄVÿ‚¿ÿÁXÿá"ø¡ûjü]Ö¿áe|+øsñRÒ9¯>ý°FÚÄÏèƶ–™Š|5ðiúv‘ð;ÃPiÛèÚŒí´Í;áÞgü/þ¡ñ«âçÆÇÿ‚ÇÿÁaeÕþ$~Ö5ËO‰¿>|A²‰à \Csá_ˆ¾>ð©‚ 3@ñF‡c„?þÙéö:'ÁÏJ¼ºÒ­ðÇ_‡¦ïM³Õuè%\kÓøâ]éÚ>·á¿x^m h¶­=ÏŒm/©°kKÐÏ?ø:;þPQûsݳëaþÏ´Wàßüÿþ ‡ÿ*ý¢¿à—¿´ïÁ¿ÿðD?Œß²Â?ÿ–ÿ„·ö‰ñgíeã­áçü#ÿ´/Âoè?oð¬?¼&©ÿ g‰´MÀÖ»|K¦ý†÷ÄÖÚ‰ûbÙ› ¢€?¾*ù?öõÓ¾"k°Çퟤü!ûYø±ª~Éÿ´^ðÀXnûqø‰}ðƒÆ6Þ ûÄ•þ×ÿ ,ºgÙöÅ#yÛ6£œ)úŠùçöIÖþxö]ýžµ¿Ù‰´ƒû<_üøw'Áh´#mý›gðÞ? ixSMHí%ž+{½/IŠÛNÔìÞW¹±Ôío,ïH¼‚pû\ëß<1û.~КçíA&‹ìícðwâ øÑ¾ö«¦^ü:¸ðΣiâ})’òkxnou6y´­&Å&K­CV¼²±±Ý}qn­üô~×_ðBoÛ‡À¾>ñÿÄø#'üÇŸ±g†þ+x›^ñÏ?dÏø·ÆÖŸ³~ã¿j׈üMð˜x[Iñ”? ì¼E¬M%î§á›_†ºÂÛ\Ýܦ¯é޴Ѽ#¦s¿²?ü_öñø‹ñ?À¿ÿàµðQ_~Ùþ øUâ-#Æ~ ý“<ãoˆúïìýâ?è­¨xsÄŸ‹to‡–+²ðåý½†¥má¯øVqlÞ ²Ö¼A?†ÓSÐ<@ýÁ?´ïhÿ°oìM¤|SûXø¥þÈß³vñ_ù¿n<±ø7àËoý·ÏH§û_ü$j?hó¢Ž_;˜ˆùQõÍPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wó ÿ½ÿƒƒ<9û ^Øçö%Òì¿hø(§Ä?Âú7…¼?¥Kãß|Ô|ErÚnœÞ(Ñ4)¦»ñWÅëéä‰|ðŽÚ)§ŽæâË_ñÄèÇIð×@=£þ ‹ÿÝøoÿ³ð†›ðƒáF‘¦|ný»~+XCÂïƒ6Ò\êV>´ÖÝôíâÄû¾¬ÖZ‹$ ð‹Ùøâ&£ÛXÜéZ4úí§ç÷ücþ-ñ/Sø±uÿUÿ‚ÃWâçí»ñÅqüJ𯈗ú´? 5%!´_|GÒ­ËhW4ø"±O‡ß--×Âôm;EŽ×M‡Åö:fðóÔàˆ_ð@|ñüÿðRø)Þ³sñÛþ !ñU¸ñÖ“¥xËYOY| ÕµtÉñ¯¬Í-å‹>5}•’Ýu‹I'ð×Ã[d‹GðA¸½±ƒÄQÿX4QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWósÿU~ÌÿhOø$ÿ‰|gðÂëÊñ'ìñ›ÀµýÕŒq‰.õ ü9ðÏÄø¶k!%½Å¿™áOüKÔ~ ] ¯&Ó|yf’KŸé²«iZ•œêðÝØj67w–Ó#E=¼ÒE"²9óïþ 3ûsèŸðQØövý¨í5M2ûÆ~(ðU‡‡>3éúdQZ'‡~8ø6Þ⎒úTx}ÒëĶ·"ð픪¦_kÞÔ ól¯íg—ôn¿Ï[ÃÞ&ðwü¥ÿ~øä/~~×>0ÿ‚`þÒŸô[ \h:8×t? |EÕ5Ïø‡DžË_ñ5ÿ‡|ñ7WøHúG޼–÷~)Ñ<{§x3â"ßjð‘jP·Š¿¿ÿøçÁß¼á?ˆßÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷ú¿?ࢿðUoø'Ö¡ÿúýºì> ÿÁH¿c{ï‹×ß±¿í;gðªËá—í…ðNçâEçÄ‹Ÿ‚~7‡ÀÖ¿­¼+ñüOqã{¾—… ðâ>½.¼öèêÚƒ[ƒû_”ðU/ø$ßìÍÿ+ý›>,x Åß >ÅñòóÁž&ºø#ñÁô Ç>ø¦šLóxBþóÆúEˆñß„/5û}.ÛÆ~»›QÒµ­ÏéÒjºeݘQð×þ ¿ÿÅá×€#Öÿà¥?°|zÌ~ ðªjéªþØÿ³êêi©®…`·é©-ßÄav·ëv%‹tÀ¸ €5|3ûc~Õ?ðn•î‰ñGö–øûCÁ?µoòèi¨Mñçöbø™ðSÄ·úç†<5o¥ø>ïÀ?þë—?oüQ¡Øx{AÑü*§[mÚ=#@ѵfA¶ŠÙ ÿÁ­ŸðDH<7áè)øãÁW—¶wv°Ogu}áë™ídB`’1$À?HÿcŸüSñçì‹û,xã㥛iÿ|gû8üñ_Æ+±‹K{Š~"øeá_â ›é¤péÍmâÛÍ^±Š8â´(mãDH£¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯?ø©ñ[á¯Àï‡^/ø¹ñ‡Ç>økðËÀ:-ψ|eãŸêÖš‡<;£Ú”I/5JöH¡‹ÍšXm,íÔ½ÕýýÅ®ŸcÅíÕ½¼¿Â§í]ÿ;ý½?à⎚ïüïþ ¢øÏàçì]is.‰ûB~Õšü:¿ƒ§ñ§‚o^K-OQñž³onš¿Ãï†Zõ¢ÞAáÏ„zD¯ñKâΜÒEâû-#B½ñ/ƒ<>ö7ü¿þ ø•ñâÑÿ‚_ÿÁ´«ÿÿµ¯Ä+ýCÀ^0øíðá"ñ‰ðêâK;Ø™ãÍSÆ <]sðÃMÔnít©´¯Œú7‡õ;ï…"ÒuëÇŠ SÒ¼hšS.©<ÑÙ ¯¬µ_;F½Ôm§üÿƒYà¡0ë_µÏø$‡íà‹ß¿µ¿ì'ÿ .‹cà¯K>“≻ñߊõŸ4Õ#ŠÿLñÂMoYƒ@ñŽŽk{¿êÞñ>…%Õ´Þ$·ðÿõÇ_ÅOüû|Bý•þ(ü8ÿ‚ôþÁr¾øéðÅþŸö—°ðärØÁâí{ˆ¼%£üSÖ-ìï-µm¯lõ /„?ô8¡uñ‡€|Iey©,vº?‰o/À?µj+àÿø&ÿüàgüÏöWð_í;ð+X[«A ð§Ä¯ I¥¥ð»ã™áßëž6øg«¶§§é²^Ýøpx“KžËX´´ÍCÔ´wMšKMF-¿xPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~ÿQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE×tIcŽ5gwv ˆŠ 3»1 ªª f$$€(Õù—ÿ/ÿ‚´~Ç¿ðJÿ…’øëö‹ñÌ7^;ÖtË›¿†_|#w¦j¾(\Ç,–‘É¡xrâòÜé~‚ù kÇ:óØxgHòå¶—ºÔ–-ÿâ÷ü+þið_ÃØ·þ Oáhm_ÛgÆš»øLñ‚ô«ÿü)øâÛ×kUÓü5o o“ão¬G4:_†n_À Ôiñ7ˆõy4}oÁ¯ç?ðL¯ø6ÏÄþ2ø•üþ oãMGöªý­|/ðØ¹†ˆVK5”:Ÿ´ÍZÖÞë⟋äÓÖ}6çã¿Ä >ønkým~xMÒóľ¯íûöMý‘?gØà—…?g¯ÙᮇðÇá„¡&ßLÒãyõMwW#]KÅ>0ñÛM¬x³ÅºËÅš¯ˆuË»ÍBàGªK …•¥·Ñ¶ÖÖövöövvðÚÚZõ­­´QÁomo,P[ÛÁ¤Pà J±Åj±ÆŠ¨Š& Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ²µÝCñF‹«xoÄÚ6•â/ëÚuæ®èîg«èºÖ“¨ÛÉi¨iz¶•¨Cqc¨é×Ö²ËmyeyÖ×VòI ñ ø{¥…ñʼnWÖ¨ÙÓ¼ðþÂ_íaEÁ‚ÎûÄk¦x7ÃÓÞY¿Š¼K¡Z\ÇrŽßü~ÿ‚ÍÿÁÐÖ·ðëögÐ.ÿ`ø%¼š½×‡üiñ'Z¸Õcºø“¤Â|­GKñ?‰ôÓ¥kßµw¶û@¸øMðØøáv=í®ñ?Å’ǤxŒýËûÁ±ž øñF_Ûcþ …ñWý±ÿiÝÛkgàµï‹5ü3ðÛ!ŽúÃNø‰âUûxÝt)å—OÓ~x6à߆ìíäÒ-¡ñ·‡îí­´ïìÞð÷ƒô¾Ðt_ xcÃÚu¦ xsÚ]މ èzM„)oc¥èú>™®Ÿ¦iÖVñ¤–VVð[[B‰1"(PùoÿÁÿ‚3þÅ_ðJ 3à/‚?á%ø¿®iV¶?h¯ˆYk¼i*Ç_Yi÷âià?Ov¢[ø:-;J‘-ôùüE?‰uÛ6×®?Xh¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ø'þ ]ÿúøEÿ8ý¾#þÊ_ûÛÄßañÃUž¯®ü*ø£áÏ´Iáˆ>¶¼hwÜØý¯PÐõë+kÝ2ãÄ> ñŠ|*uM>Û^¸ºïj(üïÿfŸø,‡ü'þ ìðW¿àžŸðQÿÙwÇŸto…zuÌ?²oÆK]oS¸ð¸Ð.uÓ<7¥ÛxãS¶:~Eoæ§á´«Ý'Ç~{þjz6š<‹‡Ÿ¬¿²ü¹ÿìøƒãoü1ý¡.ÿÁ¼ðNŸŽ¾2ý¬ÇŸ<¢|:ý¥,¾ëÚð³ÃÚ'ßüø¡ðŸFñß„üQâ_„ú懡¥—‚´_ørûáíιáÍ2ÊM Äþ"Ñ|AâýVKûpÀ¹úF±¤øƒJÓµÝTÓµ½X²¶Ô´cH½¶Ô´­SN¼‰g´¿Óµ )f´½²ºÒkk«i¥‚xdŠFF tkøx·ÿ‚;ÁsÿàŽ~"ñ¯ŠàŽßµ>‘ûH~ÍWZ½Ž¡oû'üuÔü=¨x¢÷DÒ¬æÖ'ŠmÆzO†~Ûêw𽯳cªk_¼eð›Æ~$µ¸Ñ¢6×R)‹Lú_öhÿƒ©¼1ào‰’þÍÿðX¿Ù[â'ü£ãV‹ êz¶§ãK¿ |HñÃ}l[KpÚMÔ_[šŸÅ éÞ"KMKLðö££ÂÕðÞ±¨i-tž,µ·ÔÖÛLþ¼(¯æïÇðv/ü;Âwtí ñâtWÊísyàÙçãFŸo£•"¦¤¿¼ðöîV‘I•‘kª E"GIqý.ÿ‚yÿÁU?bÏø*„<[â¯Ù3âdÞ$½ðý­—޼â­ |EðœZ“ݦ‡¬jÞ¾–[ŸøGüAö Ñ£k¶3^i—SYÞY=Ä:…¥Õœ ¢Õðoü?ö5ø‡ûpüðdž¿¶?íûë¾ø£¢üC»ø¯û1x»\ð_|A¤é>ñ·†çø{«êšˆ|5yqá ZóŶ$¿°–þ[iuŸ èi$¶°ÍÞTPð;ÿ¿ÿ‚6~п²Ÿü÷öøùãŸø,wügöªð·€¿áKj|øññwÆþ(øSãÏøJ?h_„Þ ²ÿ„«BÖ>!ëºu÷ü"úˆ­f¾iói^³ø‰â»=Jc©xkOó’àGÎé<’:ÇjÎîìgvbUTÌHIWó?ÿ$ÿƒŸÿaÿØÞú÷àÿìÒÍûuþÔ÷wsx{Hø}ðWT]Oᯇ|Q,ßÙöV2ø£¤ZëZ~¯©®¦Ïl|ðÒÏÆ~${û9ô]q¼!qsk|)`ý—àáßø/ÜÐj¿µÏ¤ÿ‚c~Àþ%’øRú—®øOÅþ7ðÃ[Kökφ_Ú–ß|w%ýšÃ,—üSá_%èM{ž ’ûI_ðN?ø"'üïþ £iwŸ¾Yx«ã4Mo­~ÑßâÓ¼gñ›Užâ1÷ö>·5…¶•ð÷JºŒ%´šÃ#ÂÚuݬçZ]gQYõ;æ×Á?ðIïø,§üÅúÇø,/Æ~Çß²QÔá#ð?ìƒðúÍ|7ã t»·†æÎßOø]}q«é¿®a…¼^7ø÷/~0X½¤–Sx*=3P·Ô¡þ¼¿bø'÷ìÿñøYÂ?Ù/à׆þø~u²—ÅåºK«xóâ­e‘ǯ|BñÖª÷^%ñf¦âîKDÔoÛKÐ㻟NðÞ™¢é:²¨ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾3ý¯ÿàžÿ±·íçáÝ?ÿµgÀ‡Æöx´/ëÞÓOŽ<9§®§o©jO†|s²ø«ÃZv·äËe«G êÚtò[^\Ëiqg©}šþßìÊ(ä¯ ~À¿°¯‚ ¶¶ðì]û'øZ ;Òícð÷ìíð‡Gi±˜JXÆtÿÛ²Ú+[ÀÞF|²ðÆåK"‘üõ~Ó?ðlŸŠl¿jÿŠŸ¶üÇöðñ7üGÅ?|)ý›«|øSðßTÓ|6±rtéõû Åøà›Ÿ|?ñV«£i~%½ðd^ñv™¢x¢;CÃööšgöF‡¢ÿYTPòkðOþý›4 CáÏÚköý´´ Èt›_øŠÛN³ñn·¢iÛ#Ó.üwâü#ø©j·6i7—ÖµO\Üý¢}WYÔ¯ê×ì{ÿÚý»~ÁK´ÿø'Wü›àOìÕû)ë¼>µð£âw»­GÂÿÄËá™üm¥G⿈ß¾?øûÁš·†|Q¥i:ßôkÝÍ­EñzOøãN’mNê};úÛ¯Ìø(üöÿ‚¡ÚøfÚÏáv¯âøH½Ð¼ñ'ÁÞ8ñO‚|màí+SÔ"Ôµ >M'Qÿ„kX´ººˆ¹³ñ†¼IglóM=•½­Ó‹…üâÿƒþ;|øÓÿ ý±üOð—â§€~"è>)Ó?fmoÃz—„|S£ëPëš1ý±?gýš¾˜¶wrMy¦L‹ç[ßÃZÜ[_Ùköü8Ñuky4=?ÆúÆ…w¡ëZaþÐ3C¬Á¬Z½œzq@è=EPEPEPEPEPEPEPE~k?¶ÿÇŸÛ‡þ ñËöý‡>#é_þ~Å/†®ÿmÚÉ|áo‰þ9ÿ…—ãØõ8|ðà?…ümk­ü7Ò5«ìÜøßâÄ? øÊßOÖü®xcOðY}"KÝw”ý±ÿk?Úƒþï®üøÕûA|z׿lÏØâ‡ÅŸüøÑâÏŠ?þ xöŒý™5¿A¨?ƒþ)iÞ!øàŸ‚ÿ þ$|.’úÎöËÆ¾Ô>i>,Ñ µÒ®tOj÷WóØLûõEW³¼´Ô--oì.­¯¬/­ ¼²½³ž+›KËK˜–kk«[˜YḶ¸…ÒX'‰Þ)bu’6d`MŠ(¢Šþ]ÿàë7Hÿd¿ø'Ë»*"Á]?ewv ¨‹ðÓöŠ,ÌÄ€ª ÌHIÅQüÿÁå’Ëükö_ž $†hà£ß%†h£–)cø ûQsöíQEQEQEWÌ?m¿Ø×ö|ME¾:þÕÿ³Áùt–¸ŠþËâOÆ¿‡ Õ!¹µ¬I×¼Gc©Üj{¡’(´»kIµ‹…û5½¬· ±ÅŸÚ'þ¹ÿ‚8üÔtÝ#@øÁñö’Ôî®55h¿go…Ú¦¹§xil’Ù­®5/|KÔ>xKX·ÕÞy¡ÓÏ‚µïËØÜ¶­—¶^€H´Wñ×7ü§ûvþÖæËþ wÿ[ý¤þ-Ú_µÌzgÆÖ^!°ømbò# ë0ø#IƒÁ15ây,ôRc‚kk)nÕÚþ×çö9ÿƒ­ÿà ÐCí+ûhüÿ‚lü-Õ™†±à/Ùþö%ø›§[ß’³.Ÿ¨|Ÿ]Öõ(m¬ÚHÃTý©4èËùažYn¯mÀ?¨¯ÚköáýÿcMx‹ö¥ý¤~ü ²–qacãßèú_‰µÈØÊ|3àÕ¸ŸÅÞ)˜‹{‡ÞÑ5K.Úæ_+Ë·™“ùøýÿcx;âGŒÛàGü+ö:øßûy|jÕ$’ÏFñ6¥àxoáÜFFD´×¬< ¢X^|]ñ6‹ ³\x§Mø9k¦[!¼›]ñÎðû_ìÛÿ‘Á:>øŽ/ˆÿµW>;þÝŸ®naÔ5ýSã¯ü)àmcT¶ˆEo7…¼wkã-Gj¥¿ŸcãŠ>2Ónã´¶´¹´’Çí6·?ÑÏÀÿÙÓàìÏá<û<|ø]ðGÁGkðßÂßxoÀú]ÓÙ¤‘Áu©Aáí:Ãû[Q>tòOªjmw¨Ý\\Ý]]]Mssq,€Çÿ‚FÁ|ÿà°“ÛkÿðVÛ6Óö=ýu‰­¯dý“¾½¥þ¡s¤¸[Á¥êþð6·ÃÈ™íîž×M×þ*|Eø¹ã_]5ܧ†-’Òëúÿ‚~ÿÁ¿àœ¿ðM»}7Uøð+L×>+ÙB‰sñ÷âãÚüEøÉupšçKñ¥c•àU¹ûÝ¢Š(¢Š(¢Š(¢Š(¢¾"ø¡û| øGûo~Ìß°Š­|xÿ¿jÿ|Hñ·Âë­+Ãú}ç€áѾø[Åþ0ñ2ø§Äk¶º†“zúO‚µ…Ó ´ÐµHîîÞÊf¶Iä–·h¢Š(¢Š(¢Š(¢Šøƒþ mâÏx þ ·ÿñ×|MâøÛÁ±í_âÏxÇÂzΣáÏxOÅ^ø ãícÃÞ&ðψt{›=_Añ…«ÙÙêš6³¥ÞZê:^£km}csÌJ oÑ_•?ðC߈Ÿ>,ÿÁ&ÿaŸˆÿ x›[ñŸŒüO©·ˆüAj^!ñGˆïµ-sZ¿h!†¼Ô¯®n QE“dhêµQEQEQEQ_Ã| ÿ†ýÿ‡n}—ÇŸðÐßðÏÿðÒkÿ„Oÿ…wÿ ïþøF|¯øI·´¿á"þÒçû3þï³}›÷¿Ú¿w@nÑEQEQEQEQ_4~ØŸµoÂÿØ{ökø«ûU|h‡Å >é^·âØ|¤Úk¾(’ÏWñ&‹á[A¤i7Úžky0Ôõë*M©Ú*Z‰åÍÄþ¯ð›âO‡~3|,øiñƒÂ ¨Çá?Šßüñ'Âé¬[Ge«'‡|uáÍ7Å"j–pÜ]Ãi¨®›ª[ Ûh®î£‚äK\L¨$`@¢Š(¢Š(¢Š(¢Š(¢¾"øû| ý ¿k?ÚÇö2ð¯"ø¿ûÿ¼ÿ…½q¯øOÓ¼qÿ 7G“[ðßü!úÕ¾»{­m²‰†¥öÍ#Hû,ØŽ?´¼}»@Q@Q@Q@WÄ_ðPOÛûàWüSöw¾ý§?h«_]ü7Óü_áÜCðçÃú‰¼Iý³âÙ®àÒ™4½O]ðí³Y+ÙËö¹Î¢$„) ¹;@>Ý¢Š(¢Š(¢Š(¢Š(¢Šþr¿à…>5|]ý§?àºÅ‹ÿ~'è_ÿà¨ÿ>|(Ñ~!ü@ñgtŸ†>Ò¾ |N²Òüð÷Mñ&­©Ùø/ÂmžŸaiaᯠæèÖvÖV[ÙG´(€Ñ­Q@Q@Q@Q@ñíqû| ý‹<{û$ü9øÅkãË~Ú?´…fσïàïéúÞoñÆΡiøÆæ÷]ÑåÑ|:/|G§›½NÊßX¹†¹‘4ùZ4ŽO·h¢Š(¢Š(¢Š(¢Š(¢¾(ýƒ¿o¿ðQ_ƒþ&øÝû?Ûxæ×Ážø¯ã_ƒz¤t kMâïG£Ë®Ikc§kzüiºå—Øo^ò)®˜Ii–7ý¯@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûýEPEPEPEPEPEPEPñqÿsøæëã…à©?µ´™üYñ“öµðïŽ|Gysq<÷^'Ó¼sãKƒ-ÄèÓG©x¯V–[€Z{‰.[íˆá)úmÿNèöŸüËö˽¼‰¤¸ðö§û5ë[¬²F ¿Ÿöªø' I+¢0Y”éšæ£ŠPñ‡™& %Š6_Ëïø3Â_ |1ÿIø­Ç{mâσµW„ü!â;;ûskwku¡éÿ|ñÝÀâ9 ½MKÁš¼Wvò[Âa–-˜Ý½#ý8ÿƒ¨üC¦è¿ðCÚÿM¾‘’ëźçìÛáíWËĺ•·í?ðwÅrÆûäFÚ4 j²%f“|I˜Ä^lÑ}Éÿ`øŸ«üaÿ‚PÿÁ>üy¯Ïsw­ÝþË? <=ªß^×z•ÿ€ü;mà+VéüéÌ×:¬¾mF{†u{‰nZw†Ýäkx¿M«ó þ±ðÓZøGÿœÿ‚}xÄV×vZå·ì·ð³ÄzžŸ·¾Ó.¼y Ãã×ÒïmÙRKk½0x˜X\[L‹=¼ÖÏ À¤‚¿Oh¢Š(ùÿƒÎîÏþ ‘û8_Ê’µ¾Ÿÿø=}rbBì–öÿj7‘±d]̪]Ñw½vÛþýÿ‚:Ïoo<¾ ý£¬åš¥’ÎçàmËÜZÉ"+½µÃYø–êѦ‰ŠVµº¹·2+.&ˆ¬ý/øïÀø£á=cÀ<á/ˆ¾ñ VÐëþ ñ߆ôoxO\†ÎöÛR´‹Xðïˆ,µ SŠ×Q²³Ô-£½³`½´¶ºˆ,ðE"|¼ßðNø'“L· ûþÆ-:ãlíû.ü3.8d>.0  ÇjüZÒÿàîŸø#>¡igwñ㮇op³4Ú¦©ðÅsXX£Ñ.ãÑn5MÚᢎ(MŽz‹%Ôw‚%¹’Þ¬?ðw—ü¶[¸­ŸÆ¿´¼2\¤7Àu­ ‰åµä©oªO~m¢Bfu‚Êk³‘¬“mˆþÝéðOØDšKöýt‹‰còeŸKý™¾ XM,;•ü©%´ðLNñïD-˜®åVÆTÑŸØ‹ö/6«ddOÙ€Ù$Æá-À/…&Õnv4ën|'å,ÌŸ!” r¿)lq@ƒÏÿyÿÁ–áà_~ÐRD³4Bñ>ëBÞHÄ…Ê,š´wbQ檽ª\ 5ºË˜Ä?ñÇüÇþ†ŸÚ#ÿ ^¥ÿËêýê_Ø›ö3K94ôý‘ÿf4°šQ<¶+ðáRÙË0òñ4–”yQbFBãËä\hÇû~É0Æ‘Eû.~ΑE,qÇÁ/†‰q¢…DD_ …DEUTU ÀOø‹ãþãÿCOíÿ†/RÿåõñÇüÇþ†ŸÚ#ÿ ^¥ÿËêýþÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?ŸMCþÿ‚ÿó3@çùÿˆÿƒÿaø'½ÇüŒ ÿjÇûPþÞÿi‡W ¼ ð§W·±ø}ã·²MÇÅKã_¾»Ó|R«hòßiÚu®³§[¤‘õ‰ä2Gë&»ÿ±Á:mîãO ~Ì?¶®­`m‘¥¹×|=ð3÷ive˜IvVüQ ¶Ë Á"]5ü2¼²ÍYÆ$×Ôÿü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34üuêÿð|À(R¡~Àß5)œ\.¯ñ§Áz"D€/–нŸƒ5ö¸fbÁÒHí„`)W±UðïÿÁòZ´’I¿à›:uœQÞÉåj+ý«.u/4à®±yš>û>iK¦Þ»¤“n»ªÁ«Â¾qe?¸_ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhüý5oø={öÔ×õ í<#û-þÈ_íg†øÙjo>:øòËOœyÒXÿh¯‚5ïjZ‚„òmåŽËL´W¦7lbTÿÁÑ?ðRÏ‹¯ügwü öcK¦v ~ÌŸ¶Þ¿š58ÒPŸÙ×ö„žEðóBÖÈTß¼ò]»;ë¬wßèkÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍÜŸðTïÚãGÇoø:ÓáÿîcQyìïÿÿý¬í³ËÛ˜ä·Óo|/ûþÏ•ÜvçPÔâ‚òêêÒöãìZEõíêÂÚMIlÿà‰ßɶWüùÿý¥!¼X—Y¶ƒàßí›á‹[àSO‘[Z|KøSñêÒÆÒV´YÙ½½ä0 6ßmÊi™»ÿDÿød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhøAø7à¯ø2'áKÁqâ¾:ß[BñÅyñ“Â_·ô¨fr»ŸGø_ð+ᇇo&X‹Â‘^h×($3­˜»ŠÞæ>ý´¿moø7·Ãµ§ü Æ¿ðOwø-௅_³ïíusñ/ö±ñ¿e^ ÕlþZ^|8ŸCÕÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Úüÿƒqà·ÿðKߨ/þ « |ý¬?ißøU?,¾3|Wñeׄ¿áK~о9ò´Þéh—ÿÛß ¾xÇÃ/öØígo²Ç¬½í¶Ì]Û@Ì¿µ¯ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhø¥ý«ÿà·ÿðK߉ð^ø%‡í¡àŸÚwûköiýœ> þÓÞøÏñ'þ·í ¦ÿ¯üCøIñ—ðÿ„;VøMaãïlkž+Ð,~ÕáO k¶ZÛþÓª\ÙYÚÞÜ[~òÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øýµòü'þ<ÿ‚1üqýn‚Ÿ lŸøJ>&ü`ý?io…¿¼3ÿ óûUèŸð‘xïâÁøOÂ:öψ¾éÒ?µüA«éúöž»ªéš=‡Ú>Õ©êVQOsôkÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ,ŸðGïø8Cþ û-Á3¿c¯Ù÷ã¿íuÿ/Åï… ­¼3ãßÿƒý§¼Oýƒ®G¯kw¯eý¿àï‚Þ!ðÆ©‹kËy~Ó£kZ¡ó6 ƒ"H‹úKÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>×àßü>ÿþ {ÿÿÃvÿÃNÿÆ*ù¿áCÿÂÓÿ…-ûBÿÉVÿ…•ÿ ü"¿ðƒÿ¦ÿ…ÿ ô¿íÏøD?áÿ–ÛiýÍk_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐò}ÿ®ÿƒ€?à‘ßµÇüçöºý?g¯ÚÓþÆOŠ ðž“ào‡ý¦|)ý¹¨iŸ< â+ëøH|oðgÃ^Ó<FÔ¯<Ýc\Óà“ìßg†I.¦‚ ~¿ý?àå/ø"ŸÂÏÙ#öZøcãÏÛGû Ç?g?‚>ñž‡ÿ éûXêŸØÞ+ð‡Ã? x{ÄZWö–ð'QÒ5ìí_N¼´ûv•¨_i·~OÚ,o.mdŠwþ€¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ â—öÿ‚ßÿÁ/~ ÿÁbà°ßµGÄßÚwþ¯€ßµ7ü3gü(ÿ–ý¡uŸøN¿áð]Ö“âßø¦ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúkðoþ:ÿ‚ßÿÁ/oOø&®¿ðöOý§ák|\½øÍð£Å–¾ÿ…-ûBøÍÐ<5{«Í­ßÿo|IøMàï §Ø£º¾Ë&²—·;ñim;+…þÖ¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>×àßü³þ ÿ½ý”ÿh_ø,wŽ~>~Ó¿ðx[öªÿ‚Œü]øñðTÿ…-ûBø£þÏ…>(ñ¿Ä=cBñWؼð›ÄZ…þݧkºUÇöŒí<;âKoµy7š=¼ð\Åöµÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ¿ðY?ø-ÿü÷ö¬ý¡àŽ>9øûNÿÂ{áoÙWþ 3ðãÇǽSþ·í áø@þø_Æÿ5wÅ_bñ§Âoê>(û¡j·Ø~ ´ñ‰.~ËäÙè÷Ïmß¼Ÿñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhø±ÿƒ{ฟðKŸØwö,ø¥ð—ö£ý§ÿáWüAñíñ×â–áÿøR¿´?~ÙàO[x*? ë¿Ú¿þø·D·þÒ}#QÙ—z”ÅŸÙó§Ú‰`2þìÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™®"ïþ íûßÝ\ß_~Ãß²íííÄ×w——³OÁ‹›«»«™k‹››‰¼óOq<ÎòÍ4®òK#³»31$ùJÿ‚ïÿÁwÿà•·ü£ö£ý–eŸÚŽãâ¿Ç¿Š÷­>ü=´ø ûKø^ïÄ·~ý¥þ øç[µµÖüqðoõ¸µðdž5½FunÎMFK5ÓtÕ¼Õo,lnJþ¯´Ø öðö­¥ëúìSû$èzÙk.µ£þÎ4Í[Gմ˘¯tíSKÔ¬¼柨é÷Cwe{i476—0Å<Ç,hà ­¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠüÕ?`ï°¿üOã—üöø}¡üqø]ûihz¯íû!ÉãM៤øá[ÝOQо?|ñŸï´ß†Ú¾¹¨I¬ø€x¯áÇÄ_xO¸ÕüQâ}sNñÀÿ„†ÞÇÂ\—í¯û!þÕ_ðYOü øñûà6½ûÁ?¾|YðÿÆÏÞø›ñ;á7?iÚkZð…¶§iá…:g‡g/ˆ_¾ü7øe»RÔîüSâmGã·âN[íóDðΉ©øn+‹¯è>Š©aac¥XÙiše•¦¦éÖ–ö~Ÿao …œ)oieein‘ÛÚÚZÛÇöðG0CE**¨·EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEW¼¼´Óí.¯ïî­¬l,m§¼½½¼ž+kK;Khšk›««™™!·¶·…Yç•Ò(¢F’FTR@Š+ò'áü—ã7íœ|kãø'‡ì£áŽß³¿‚üWâOé¿´¿ÇÏÚF÷öjøkñ›ÄÞ ½ŸJñRþÏšo„¾~Ò>6øá/X‚MßÇž'ð×ÿk:­¶¥m£ë—±é—Suýà Þý¨>$|gýœ|Yào~϶ìã6–~4þÍ?u/ê¾!Ó¼;¯[X]øoâßøfúóÃÿ¾øš SOþÈñ¶‹öË)ï¬,|[á¿ j¦“i~úEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE*ÿ³çü-ûrütð—ÃíGKÿ‚~ÞZ¾±ñ#žñgƒ ·Å]'ÀOwu<ºw†gø†<3á ?kšf”ÖPxRÑô ]ëÃQ·Ð.µ} -büÖ袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¾ ÿ‚ŒþÕþ9ý‰dOˆ?´oÃ/‚7ÿ´Ä? xÇà?‚üð+I×îü1­|PñÆßÚágÀÍ+º·cá¿]Ùø‚öïâDo ¤>Öš÷X†ÊÁ¬dK¦*öýüù~ΟðWoø(?íYâ}ÀÞÿ‚þÖ5ûý6ÏÄ¿¿lOÜ~Ͼé·^Rë'¹¾ñW¨üuñ KçYxcÀ^ ½×3ÿ„Z)øVv³â]&Û P¤gq`ªÀ¦ŸðE¯hÿ ÿà’ðN?hqÖ£ûüñìëoÛ¡Ö>*øFø¡â9.n™¦›_ñ†§5ÌâUK«‡–æ;k8æ[H? ÿਿ'ý—¿àçoø#×Å¿ j ¡ÏûCü(µý–~&[Ûioã øëâ—Ž<áÛ xµä6Ú›[ø«â7‡u=7t }§á_æmEl4Ë Oèþ -souÿ®ÿ‚jËkq ÌKû~ÈÍ%¼±Ì‹qgû>ü>³¼·g™DÖ·pOks"H.!– UeÔ2Ÿð_m÷Äßðp—üFÑÖ;JËâÏÀïÝZ‰á¿Ú×Âþ%Õ/5"G“áí^h‘c•¬æ@àG# öáEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP/ãÞø;Á^0ñv›á|AÔ|-áxŽÃÀ^MOøÞ÷CÒnõ;_x>?kþð¼ž(ñ,ö±èÞOx£Ãzj×¶‹¬kú>œn5oæ+öúÿ‚Æ~ß?ÿk_ø%ìÿ¥~ÈÚŸìsðïöæý¶þü:Ö%øãâ¯ô£âïþ˳υíu»oâN«àkoC¼ñ¿Ä/?‡õ]/ᧃouM/A¸Õ­íï¼suñ—þüÿ‚£ëÞ#I§o†_²Wм àÛy.'XtK_‡¾(ý~o´†+)¡Ô¢¸ñ&§-¼âX ÷ˆ//…¼W~K@ûûc]ÿÁB¿àžŸ³çlŸþÖ^-ý¸ü7ð Ãò|Ký¡?g?Úá7ìçàh¼YðƒÃDêu¿¿g/„5ÿ†¾(ð_„bÕø«Äß¾|Zðö«a«Y.£ªhzpñwÅkÕÔµÖ×Ä:ñ Þ‰£]\=¦¯£ßiÐjš µá¿³Ïíq¬þË_³/ÂÏ?>ÁN>>þÒÿ >é~ñ4Ú÷ì¡ñ‹â׌¾0xßI³“ûSR—ö—ð~•âoÙNéu]MnmtŸxÓöŒÒ`¸ÓbÓîõÝi®®òëƒÿ‚$~ÀÿdþÙ´oíC§iý¥ÿࢵ'Žÿj‰ ¼7âè?tßøŸÅ¾$ð¿Ã—ñ>”?±¼EâM*ëÇ&»ñ±¡I6ˆÆûNÒôùî×I’þð÷&Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿>?mÏÚïÅüWðöhøŸï?jßÚ×Ä^"Ð~Kñ[VK/†ß|#à›}&çâ'Æ/ivšÖ…â?iÞ> ð߇|#ð뺅‡ˆ~$üCñg†xSÂ|®j–¶7ÐxAu‹>7–­se jÚÆ—éñ^‘ìðF¯ø*ßïø+‡ì™kñ×Þÿ…ñ?Áòü;øïðÀÞûü@·Òl5eÔ|5}.ÛÍOÀ~-ÓoâÕ¼-¨ÞÃÔ/¯áËÙ.µ?jsþŒ|nøÃàoÙïàçÅ?Ž¿uXôO‡¿¾ø·âOŒõI56¾ðn‡{¯ê¦•ãYïeµ±’ Eo6öö[{Hæš4oããþ ¿øñG@øûqþÕž,Ð.ü1ðßö£ø·ðãMøU¦È¦ßL¿ÿálMãm{ö¯(y4?íŠ6^‹R[8 º¿ðf¡c÷iSEhý¬QE|Õû`ø3öšñÿìÛñKÂÿ±·Æ? |ý§.´­'QøAñ3Ç~ Ó|à}?Äžñ.‰â9ü/ã/jzn·>ø“¢é:§ÃOø¢ÃB×õÿé.¼ñφ5×|úExì³àÏßþü6ð¯íKñJøùûAXiW÷þ)xÁzÃï ëž$ÖõÝW^:G…ü+áÝ7G°³ð§‚,5;/x^þëMµ×üA xgNñŠÕüQ«kÉïôóßíñ§Ç¿<1¡êÿfÿµ?ˆüC¯Ûx3àŽ¥ðOD¾ÐÞM>òò ÅúçÇO‹ß¼3¢øPÜZŦ\jv:¶·¨ÚÞßZ;è¯d.ní¿ ¿bŸø*Wí§ûFÿÁw?i¿ø'ïÇ…¾ ýž~~Íÿ±mçÄ—ø9áÏè?|A¨üEñ?‹?eoxGÆž/ø¹g¡ib}NÇá¯Æ‹­&_ø,[ø;IÔuMRÝGÇ7ºf‹âKé6¿/ØßþW$ÿ‚±Ù€|8ÿÔþ §@×í~øöÕý ÿà¥?¶§íGû7þÆ_m?f¿Ùgöñ“ðËã§í;áÿü=ø¡ñ‹ãÇÍN}f_á¿À»‰º_¾x3ÁߣÐõH|SãÏ|=øƒ¨jºü}¦‰áØ´kñª7ìÇÆOðÇà÷ʼnVÖËysð÷ᯎ¼qohà2]Oá? êºüVÎ¥ãg“OX˜#1×ïå3þ ¼/­Á7¿iïjÓ\ê>-ñgíÿñ0ø\¼¹¸žïV{€ÿ³Ž±×BILåµ?kw“ÜÇ\\Ë|ÂæYRe„ôCö‰ý²ÿhŸø$ÇÇŸÙŽ×öµøÕsûT~Â_µ‡Å[OÙñ~?xûÀ þüyý™~8øŠÚçTð üCÔ> x_áÁ߈ß|[¤é~#›R¿ÒþxÅ> ¶ðε®Ý_ëöÖVÚ>«ú-ÿø]ñ{âïìåeáŸðß‹þ)x{ö—ý†¾0xÞ0ñWü!Ô¬gïÛ{öxøñâÄ×¼VšV½u£i–þøoâ Ë«3Ãþ!ÖÞ;so¡x{^Öf±Ò/?ÿàð=>Î÷þñ«ÜÜÃæÍ¤~Ò¿õ =üÉSì÷’ŸéO6ØÝ]Öõ¿—:ËóüЂh¡’?¨×üm}á­ÆŸô_øsWõÿÛ—ö¾ýµ?à›Ÿ¿á°þ3/ìïûFþÏŸ|Wà«/Ú'À¿þüNø=ñcÀ>ñ߉ô߈?üQâÏÚã.ñ"Oø—Ä~]oÂÚ—€ü úç‡ßUñ kÞŠÆk(?Z¼ ã üLð?ƒ~#øW¶ñ‚¾ xSÃÞ7ð†½g¿ìšß…üW¤YëÞÕí|ÅI>Í©i7ö—oD*eܪÙð'þ ™ã_ŠŸðTOÙ?ÆðOØçöyý¦tÿ~Ò:×Ãß üNøñûGþÌ¿f‚Ÿ³çÿ|@Ðê¾ÓüGøñWÄͤü?ø³¢ë^ þÎÒgÑü#â KÆv:þ…ª¦­á½>;­4ÝyŸÁO€^&ÿ‚¡Áo4/ø*µÿƒ|WáØ‡ö%ø3oð_öD×>!ø;Zðm÷í1ñRò_ˆŸð”üZð„ø Áâ?Ü|>ñ½ÿ†õÝ)5[Í/ÀÚ_†´qhú!ûmkVýŒkŸê²ù^ƒû1||Öµ)²ƒÉ°Òþx®úò\ÈñÆ<»x$|É" ÇÌê¹aüòÿÁœuoÁ#5¿j0]Ågñ‡ö¹øÍñA’âŠ'Lð„“Oa#" ›E×>ëVÏ"|ð×ìçÿ¾ý™áøŸ§|V[Õý¢~+^üføAðÐé¿¡”YêtM?ÆÿþxÎ)¾)YÏ=¯‹¼qá [OÔt%ö‹á½ZÃÄ^!]sà sûMø3Æÿð^ˆ—?³g€¼M­x þ 'ð[âD6¿´ÏÆMK­3Ä·wÅ_‡^ i/~| ÔÖ)`øðËÅz40|GøÍes&â¯Z¾…ðüj/á ¼CîÏÂ}/à—ÂÛ ÙŸàå§‚¼að?áïÃõ±øEàô²°O‡Ÿ|A'Št‡r Ó ¦iäÿ¼_g£ÜN¾f¥qá½ff’y¢žgþ=< ñgþøcàÏ |:øuÿÓý‰¼à?h:_…üàÿ øƒöbÑ|;á¯è¶‘Xi:.‹¤Ø~ÚðYéúvŸgVö¶¶ñ$qF€êOí÷ü›áçü}tOÚ§ö‰ÿ‚ª|?ð§ÂßÚ§ã¯ÅŸhz_üªü6Ö|1¤üøEðÏAÓ<.wðÏÇ4ë[kßø³ât³iZ׋ouÈu}ªOµž±gæ€~ÖÑE|Õû`øÏöšðìÛñKű·ÁÏ |zý§-t­'NøAðÏÇ~4Ó|à}CÄž"ñ.‰áÉüQã/êz–‰Þøm¢êÚ§Ä¿ø^Ã]Ð5ÿi¼ð7†^&Ÿ{ðïöe´ø…oÿ §Æ·EÌ?ˆì'ý…t‹ |aý øÓÃ>-Ô¼eñ^}KÁ? |ã_ xöðŽ·«ÿðÃOkŸµ.‹ûG\|@Ô¿àµcÅm7üÄ´>¥a­ü_ñ/†ÒòÚÇá^·ðC\€¶™ªþÈxZËÂvŸåðMÆ{=GÕ­týMøi§Z~ŸÿÁ?àŸºìk¡ø÷âÄ/ê¿´gí§ûFj¶^5ý­¿koÙYÛøÏâߌíìâµÓü;áÝ>Ö(¬>|øyaøGðÂðiÞð?„ôí;NÓ´èL &Wü þ ûÿ UÿÇo>=ÿ†sý¾?g?¶ê¿³?í1¥Y}£ì_hógÕ¾|cÒ`Š_øX³ÿÄ?6ãLñ‡ƒõ;}Gû'ûFï_Ð-&žmkEñ éMà²ÏŒþ?|@øðÛÅ_µ/ÁÍ+àí¥_Ú|Sø[áÿh_|7¡ø“D×u]êþñW‡u-bÂóž7°Ó,¼wá{ ­Jë_ðþâm;þ+dñF“¬E¿Ð_Èìoÿ+’ÁX¿ìÀ>ê ÿÓ¯êö‡ø¥ñWá‚´¿| ý™¾#~Õ^%½ñE–‰}ðóáŽ>x_Ñ´;'[¿¹ñÞ³ñóâoŸÜéuþ›¦hwf›â+ßÍ{â->êÏE¸Òìµ›í;ùFøðsþ íð¯þ ©û\ÁV¼Eÿø•{ð§öø¤| µøg¢þ×ÿ°œÿ¼!cáÝöjÑ´ïOq}ûAiþÕîõýžVâ÷AS°†Å|TcƒZ¾:8mDúæøÕà‹‰Ÿþ-|7´›ì÷_>xóÁב|‹ø[UÐa›t¹|©/Õ÷H ¹”þPÿàË{§ÒÿàœÿµÃíVÊÿKñ_„?oOˆ7^!Òµ ckq¦¾§ð/ö}Ñ#²¹‚V[˜/íu/kV×¶ÓÁ·’MÏ'šÿT_þ"üHø¥àÞXÞKåÜx“öø#¢éI”}ü¾7ñ ‘|άq¥è:”ØdÜä ŒI"~ñÁ?¾êßÿ`ߨ›á&½ݶ¹ð·öFý›¾ëV×ð=µõ¾­àƒ~ ðΣí´‰ÛÝÅy¦MÄoÊñ²!R£ò¿ö•ý‰ÿhÿø+·í û2Oû]|›öVýdï‰Q|v“à7þ!ü8ø‰ñïö£øÃa§ßé^µñÝÀïüIøAðËᇃ­n/ãÔ­ì>&øïÅ+Ò¼M¯èq.„5Ÿí? ÿA4QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE|Á­~ÓZF•ûh|4ý ðúßkþ=ý˜>8þÓZ—І¿ á#á'ÅoÙëáf‡áöðºé·šøê÷ã_ˆ5×åÕô˜t3ðéôë}7ÄRx†æëÂàOÑE?ÿ²/Ä?ø.>¯ÿ‚ý¯<ûPxÁÚoüE‡Æð_·Ðüc§Ã£G­Ø¯Á{ßx³B ñ#ÅÞ9ñW†[Ï‹ú?îuxWW‡[µÓÂ5èŠ( Š( Š( Š( Š+äÿÚóö¦Óÿdÿ |ñï…áñ}ÏÆoÚÃö\ý–t&_ÿÂ/%¦¡ûI|gð§Â©|QmuýƒâíY¼¥kúŸ›Ã_f°ÿ„ŽßÃ×Gööƒö¯íkP¬(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¼›ãŸ„¾+xïáO‹¼'ðCâõ·À_ŠZŶ›…>-Ýü:Ñ~,CàÙ­õ­6óS»?¼Gªhº'ˆ¤ÔtKmOE‚=GQ† >}N=[Ê»{³¸õš+ùŒÿ‚~Ü¿·gí=ûUÁa?goÛcãÖ‡ñÞØ[ã¯Ã_Ÿõ|&øwð£EKÍ#Ç¿µOÃÿø–ÃMðf§ë3C㛄~ÖMñ_ˆ&ü?øðÓâ—‹¼3ý™¬Eý‘àOŒ#ø³á?‡ZïöÌú|^¿ÿ„‹Ä¾)iÿÙšf«{¬ið‹ý«]ÓôË-o÷:¿ó û6ÊàðP?ûEç‚ÿõ ýˆèôþ ÓÿFøñÿ½økâ_Zwì âOÚ3öuðV‘áy3kß u«û¯x߯gÁ |8²ñŽ™¨xfIâmÅÚ…þnÿƒ£¿å·7ýÛ7þ¶ìû_qÿÁ|5 øSþ GÿÛÒü9¥Úhú}×ì9û.ø–âÒÉ pͯxÏàσ¼aâQÔ–ÍÞ¹â}wWÖ¯ß8–ûP¸|…ðçþ ©ðÃÄž&øÅû8xïöuø³àïø(ÁïŒ^øÿ 1á}kÂ?üañSƾ2Ðu¯xWÅ_¾%-×…,þŸfíþ û!øCàgÀßÚƒâ·Â¯ ~ÐÿiËïÚ#GøkñUŽ{ß|'¯þÏ/|)ö»(¾ßw¬xYøŸ¡ÚYYë·6ºŽ§‰;ÍùWû%øwDÖ¿àó/ø)ö¥ªé¶××þý†|â/ ]N¬eѵ»Ÿ„ŸðO ÜjVeYBÜËáÏøƒHfpëöMVéB‡euÙÿƒÕ¿å_ÿìÿþë:þÕTýsxƒÄ„ô sÅ^(Ö4ÏøgÃ:F¥âxƒ[¾¶Ó4m BѬ§Ôu}cWÔ¯$†ÓOÓ4Í>Úâöþúêh­­-`–yäH£f“ßÿà¤_?m Uø¡ÿ÷ý¼?ñköpµÕüA øSö‰ý§ÿhOöRðoÆ]CÂ×Óé:åïÁO xWöý¥þ(xƒÂöúͼú5¯Šþ x'á~‘©jV½½Œ“®™,’|•ÿTøû‿à‹_´Yðºœ>3ñÁŸøûUÓXgÓ¾øâN„ºÜSÜC‡ƒNñý¦àÝQ $Wúw‰.t¹÷Ã$2uÿðJO†ŸðPÿà™_° Ÿ?jŸØG¿ ¯¿dÙóWðdžõ¿ø'ÏÇø‹CƒZøaá­_PÓÔô_5ßõ³§7‡~,ü'øáÇÄï…šÜzÖ†±ø‚ÞËAÖ´›½gJµñ†tsªéê3|ý¸>(~×Zoˆ¾!þÅß|ñ#ö}Ñ|oã/‡¾øëñ»ãÖ·ðGÃÿµ¿‡ž#Õ¼ã]wàLJ¼ðö×üKðÿCñ®…­xI&`¿“Vñn§ã |.×|%{¦éše¿‚|K£x§Mñd?Ëü3ãÏü_ø(ïüGÂ_þ ~Ïÿþk_·—¿~Î?üûFx£Æâ§Æ¿„ÿ¾髨|tø³{ð[ö~ Ó®?ágè¾ðç‡>ø¹¼¦x£Ç:¥Õ§Œnb´µŸõËþ ÝÿSø‘ñÏöñÑ?d?ø)Ïì)'ìWÿð×ÁŸ‰ið7Äz~£?ˆþüWøEâ[ÿxÇâþðó[ž¹f‘ê:—Á_ ø¡ŸGñ_ÄOj¶ß 5(¡ñf“«èwZN¯ògüwÿ)Mÿƒcÿìÿõýh¯Ø€?¤oÙËâ7í¥ãmsÄvŸµì±ðWöðý–•mqá}gáwík®~Ñzˆ5™/<»½3TÐõ_ÙàD^²¶²ÍÔZ¬ZÆ»%Ìø³:d MÐðßÚþ Eá_†ÿ´¦‰û~ÏŸ ¼MûX~ÚzσÄ­càIáïx?áÃMð¤~?|]ñAŸDøm ß½ÕŒ:.¥èž5ñþ¹6­¡3Á7šö“yw÷N¥ñKÀšGÅ?üÔ5ß³üMøðÿâ_Å/øgû3X—û_ÀŸüGðŸÂußí˜4ù|?aÿïˆ>8ü-Óÿ³5=VËXÕÿá(ûV…§êvZ'ˆ®táÓþ û½ý±¾9ÿÁJ?àºßüñàÂŽþÐ^°ø€¿´gìÛñ#öŠ×›H“â¿í+§ ø&/~Ö_²ì¾Ðü /…t/kVœ~6†öÖÏÁ~–ž‡Ã“ÅâèûãüâWìMã„6ðRÙsÂÿ³ïÁÞ9Ó~xkö¡ø ûBê_´ÇÀÿ|E×­šçÃ~øéq〟³GþZkÿeÕ!³ñm=B÷N“þ Ùÿ;øÛÿ»ø]¬~Ð_ì+âÚKöwðw‡ü+wñâæ‘ûA|=øcmàoxÛÆÒø ÞÔ<«xÅ~;Õ,'×o¼m}â@¾°³›Æº\1ÚÝýƒZ“OóŸø(ü3öçÿ‚‘þÊþ?ý‘¾=~Û_±¾…ðóâ£à­^ïÄŸ ?àœŸ´ˆÔü ã= Æš]÷…µ_ÿÁMüo X\ÞÏ¡V’ûÙŸÃzƵekö+˨5 OÿƒˆþÞü&ÿƒq?hÏ…zŸ‰î|o©|3øeû|?Ô;ø—á •ß‰"~Áþø“ö[ý¸>hqxÆO‚Þ0ÖtïxKâ¿Ã›‹X¯íþ&þÏ¿4KM;Eøàï±O—Öºž‰àŸé3Ûk–š§‚-e𷊱»ïø$ïü¢Ëþ §ÿfûÿë:ü9¯ægþg×uƒŸðUø ÇÇ/‚æaûDIñƒÄ>šÛK|j~ ðŽ•ñ“à·ƒ¼#w´I{q¤x²ãâgÅ ]Ù5İêæ±c0ù÷Mrý²ÕKù®m¬on,¬ÛQ¼‚ÒâkM='†Ùï®b…Þ 4¹¸e··k©U Yçe†"âIX"±«tPó‡¨ÿÁ}¼eðwööðçì5ûfþÀ~1ý•õ?|$ñOÆ›IñÿÁŸµ?øFÖÏÅ ôÿ‡~øIàmþ x×â×Ä? ]ü(ð¯´ÏZx¢çÇ÷V‘¦øƒP¿Ó­o~¯ý¨à¡¿¶Çì±ðÆßµ¿Œÿà›úEÿìëðãH“Æ^<Ð-?l þÖ>øujÂmWÆçÁ=;àV³ð^Fðæ™"j¾$м=ûVøƒQÓ- Ôž#xš{É/ãŸíÓá­Åðx¯ü[Kñ—i¬iö¿°çˆ êÚŽ± x/À¾øñ?â‰uo xšãÂúˆ|;á¿ëþöÿÁeôŸÙö‹Ðgø)×ÁŸ þÈ_¾|@ø·ð‹ã—ï·ß´gìïñJøU¥]k~?ðü%·Á¿€ßü=ñ#KÓ ôŸ Þ|º‹Åú†•¡è:µæ¹®xsNÖ¿(?àÊ h6¿ðMoÚKÆú]¤>'×n?økWÖ‘¾Ô4 |ýžõOiwgi£ê3ñMÝ’9µËö%¼Ðÿðr÷‡tOÿÁK?àÚß ø—M¶Ö|9âۛľñ‘x¬Ö𮉭||ý‚4ÝWMºTdv¶¾°¹žÖuWV1JÁYNýkø÷ÿ0ý²¾~;.ý¶5ø&…Ü?²÷´8ü{âÆ?µàÿÛ3EøL®ï¾!jß³eÀß|6ÑÛGÑdµ×uÏk?´öŸã­ɯà×t-3PÒ5 8¿M?f/ÚCáOí}û?ü'ý¦>kW:ÿ¿Œ¾°ñ„5 ë'Ó58í.šk[í'ZÓdyN¯xW´Ô4zÁf¸ŠÏXÓo­áºº†4¸—çø+ü¢Ëþ Yÿfûdë:üF¯€?à×ùAGì3ÿw3ÿ­‡ûAPâÇü?öŽñ/Âø+oüQðÏáÀ¿~Ð?þ/þÞž%Õ<áÝiÞðƒá¿‡?´oí£|mñ{ã‰ü5ðãÂZ=׎ü%¦YÁmaâßø³W×m¬¼àŧxŽïBþ„~>ÁQ¾.~Âø;ÅŸðQoÙNø9û8øÃÅz?‚ïÿj_Ù£ãέûUü,øI®ø’h­|:ÿt?|ýœ¾)xAÔ¯ŒškxŸÃ^ñþƒ«.•¦-ýÅö¯onŸ’ßðn'ü¥7þpÿ³ÿÓ¿õ¢¿oêýÍÿ‚Íø?Ã>9ÿ‚KÿÁG´_Á Æ•eûþо0´ŽãìÛÄß>øƒÇþ ~×ÑyÖ¾2ð΃sm±çíÅö)`¼ò'ŒôRÃÄÞÕ|7eã-3Ä:£á GC·ñ6Ÿâ» ZÂóÃwþ¼°MVÓÄ6Zå½Äš]Ö‡u¥É¥o«Au%„ö%äW nË!üŸøAÿ8ø‘ûlê^<Õÿà›Ÿ³†ÿhO_¼Q¬ø óö£øûñþûöbø!ñ#Ç>‘SÄ:/À“áO¿´ŸÄÿ‰:FŠÓZÛ\øëSøkà¯ßêOm x‡Y†ÖK¶þk¾þÐ?´2ÿÁ–ÿ|Oisâ)|Iá øßàWƒ5èn/SV¿ø ­þÔømâãê8™ô_ |=ñÄ/ …–ÚÏÃ^cm†ÎL~°ÿÁ¾~ÞMÿŽýˆ'øûN~Ä^ø]{ð»VÔ¼9áOþÁ¿þ&ø¯G¸Õ> øËQñ$^%ñç…ÿठ4k×*ºÖï5mGOøsá7÷3Á6“Ì3K(éÇì‹ÿ/ð‡íûE|hý‰þ,ü(ñoìÃûk|ÐôÿxÏàwŒuÝ ÆzŒ¾êÒéÑi¿þ |MðضÓ~#ü=•õ½ ÛËýÁÞ&Ñ﵋[[¶sÇv-þý¯?à»~>ýƒ?k‚?ÿkŸØ7Zø+ðKã·Šþ$Ûø;ö¢Öi_ø›C¾øuð¢Î;ïxãOøoðûÁ~0ñ ƽgm©øV{O†Ú¶± x‡R_è¶š}Íα#éCØ´¯ø%?í â¯ø*‡ìéÿHøõû_üñ>|ñ·ÀëÏ…¿cßüÐþ'x#Åø©c¤ÅâïøçöÌý¡u½ðlj¾(Kâ{i-´§µ½_iZ_Ù,¤Î©æ÷üCà¿üCÿ‚¦Á¶>ñm„z¯‡5ÚÿâéÕ´©Ò9-uK];â/ìSªÿfßC4rÇq§_Éc®£lÉ‹›®-ÃFd(ènÿø™¤Á@¿e¿Øwãwì ñOá?¶?ÃÝgâoÂEã›ÏøçÁž²›ÅQé‘~Ðß 4_…V øc®K…'¼ñ~…àÿŽ_5…Öz¾qñ 5äþëQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüå|Yý‚ÿjÏÙ{þ oâø+ì»ðšÛö¡øeûJ~ÏúwÀÚ›àw‡|àüpðäº.ŸðÏJÒ¼yð®O+ðÂoY-—Á?…†ëBÕ¾$ø"ñä²ñ, äêê)ýÑ@| ðÆ«~Ô¿¶WÄσú¯…þ$üZøð³á÷Ã/Ù¾|<Ö¾!iŸ ¿g+‹>+ð„ücã-'Åwm>(øûâ‡Ç?‹w·ú?u¿x[MÖ¼-g{ñ'UŠ×R¾Ó¿¾|6ÿ‚©xþ ›ûJÿÁQõOø$§Ækσ_?e]#öoѼaûX~À­ñ7E»ÑÛà.¤ž-Ôí®?i{ Ëmu©|¿ÓÛGµñ3Ëoc­YêcQ¸žÖm&OëÒŠþz¿à¿_ÿn_Û+öø×û ~Ë?°_į‹ZŸÇüÖár·Ç/ÙCÀ_ü¨ø7ã_‚>*øƒÂzž‹ñ ㇆¼}«xƒO´ø{÷:W†·3xŠÞóOñ5êé×vÍôgü—ÆŸ¶wÁ_Øá/ÁOŒŸðNø£û"þÊ~hžƒã¿ìsâ¨h|3ð&‹ðçV¶øk®øwö€¼Ñ<*͆`ñ$²|[½ð™¶­›aªê×–s³~ÄÑ@ÇoìãðGþ §ðÛþ Ñû^ÿÁSü[ÿ§ø³oðcö¢ø üÒ<¦þÕŸ°–£ãÿE é²þƒgãODhÛmþÚî?ÙîóQÔôQº»ÒÓÄÐÛX^ëòé%µ?Sÿƒ˜ÿeïø(üŸà‡„ÿc¿Ù7ö ñ÷Ž´O†´w€>7¯í ªü|ý’üàéšOÁ?ˆž¾Ð¼1áürÐ>'Û_éþ øµu¤j7^+🆭þÕàÝBçG]kGÕô­Uÿ«ú(óú kðQÙ7ãÀ¿Û›ö1ø…û4xs⯇î¾xÇáoŽ>*| ø“ªjúf¥£iº‹øÃÀþ5øãÿˆš=‹xgÄì$ðž­¯Çáß[kþ²ñx^ÒÜÚ,ŸŸ_ðOß„ðQø%ÂØ¿c?üÔà¡?²ÇÃMkÄ1þÌ¿g߈ÿþþÐøs®k:·ˆ,þ|høYûL|Oøà}Bç@Õ5”Ò¼Ià‹ºÒZh×vºDZ4–šm¤?Ð5ð¿Âÿ þÒ¾4ø[ãÇÇß /ìûà…ÚŠ´ÿ„³†•ñNñ׊õÏxÖÚXø³ñûÄž fðjþðšj>øqð»Á:ïø3Ã>øy¢¯‡|à |@øy}âx‹ÄšŸ‰´{k-7LÔüGþ ÿÛøõûeß~Â_µ?ìœ|)®þÓ_ðNOÚ3Løõðóáwõ¸¼/áï‹:4ž-ø_ãxF_3hzˆŸ\øAà›&çÄQÁ¢ObšÕÖ«¦Iq ÏûãE~züðïÇ/ÿ´îƒûY|jøâOÙJø[û<ø÷àÂÿ„¼ið§ÆÿïõÞ>øCñ ãwŒ¼O}ð3Ç¿þiþ³ÿ áÄÞ?×=|Sýš¼Y↺F­n¶~!×>xörø»û@ÃãïˆVÖ°x Qø£«|,ðLJõãcâïhž)±Ñäð‰~ ÿƒ—¼-¤øþ ûý¯¼ ‹ÕмáßÙ/ÂÚ*êZö±¨®“áÿÚÇötÒtá«jsÝjZ¥è³´„]j:…ÍÅõìþeÍÜóO,’7ôA_Ïÿü#ðÃöÖý®¿b/°‡ì“ûxûã½ïÇ?üÖ[ã}ŸÆŸÙ“á¿Ã¯ê>øýá‰Ï„õ] âÇÆ/|EÕü@4†Z{Gs¤xJ_ ÉtׇÄÓj>µ¤Û€gÁ+¾3~ÝŸÿàš±‡)ñ'ÅÿÙÓ⯄~)ê¿ ü §|;Ô5?7Á_Š~9ñ–Þ°ñå¯4Gj|A“¥ßëï¦]ß?ê…Rþyílon­lfÔî­­.'¶Óm¥µ‚ãPž^Hlm澞ÖÊ®äU‚)o.míc’E{‰áˆ<‹nŠþ9¾=|ÿ‚ªüUÿ‚î~ÆÿðUþ ;ñ’ÃàÿìËû<ëŸuï‡:·íYûGñ+Ä×"ðïíC£]x“H´Õç…í!Ó§ý¡le·Òï5ï3Q‹Ã~eöœúœ+gûÿ(ñ¯í§ñöø¿ðàwü“ã'Ĉÿµ¿ì…ñwᎳa7ÇÏØïÁz_ìýã/Œ×~ÉáÿˆÚ¿Š>=Ú[ø§S𵿈§×¥¹øTž8ð¶°ÚriVþ)³kÓiûE~Á½ lÿÙöø?û ~×±§þjÿ´¯‹:•¿Åë³wÄŸ|Aºø…ñçÆÿ4ýEÒ>|[ñ¿Ž4MjÃKø‡47’kþµðû/‡ne‡^k½FÏM_.ý›bŸÚÃþ {ÿ'ÿ‚þÑŸ ÿgM{öÇý—à£þ3ðÏÆÍBÛàßÄ‚> øéðo⮓â/Š~,Öô OÁ¿´_Äñ_…5Ÿübñ…Ìæ‹ñNBÏK‹F/¡Kz—VUý#Q@Ç'üköÿ‚¸þÙß¶ì û}ü6ý˜ü;xß±ÿí ðóÅÿ ÿd]oöø;£j^ð_Ãhß>è´ìƒâÿx#Dñ†~ŽÃÅ>ð¿Ç_âUÕÊjÿ ã†Þ_ø[Äí;xžÑî­´ëM2öñüÿþ éð3þ ›ûp~ÜŸðKŸà–_m~Á7ÿi]Gã7ˆgñwíOû é·Æ-<|^øã5°ðn™mûDj/áëk½àI{ CÅÛjsâØmõégE¯ÿ°ª(ñãþ 'ã/Û3ãüÃâ§Â„?ðN¿ŒÞ/ø½û_~Ìß´¿Á}ÀW_¿cÏ Ëû8ë~;ðN¥ð×Â÷ÿ¼M®|~¶ðŸ‹mµÛ_Þx«L‹àö³ñ `´ðõÖ•â[Ÿ j†Ÿæ|ïÿùü9ý¸ÿdØ«àwìûZþ¿>MðWNøÏ¨ŸñÏö\ø‘ðçÅxãã_Œ>)èÚ$>øcñÅ_tzH>#_idMá+߯ž—P¹ñ%¬ÚŦ•ôE5ŸðLïø'·í¡ûþ׿ðSßÚû\ð†ƒãO~Þ·ÇÏjôø&ßâ}—Áíã/Äÿ~Î<âÛïCðúûQñEÅ¿Œ~xÏÄ~Õ´ß ê¾×&×­&ñµÂx5{ KÄ^øðÇàÿ¾%Úø“ƾ:ŠÉ|;¬ëßüSð÷Âþð¥æµ6ŸoâífòÊÒÇöŠù+Àß°ÿì×ðÿö2Ó?`=áõ¥×ìÃaðoPøsàMZy/$×<­éºWˆåÖõHŵÕ׉›w,ŸÖÝâ?>%üNø­àI|Qñgötøû/ø¥5íCKá¯ÄŸ|ñ߈¦Ò­-ìe´ñ*kþ#|QðJéÚ¤×WV¶Ö2x•5»y4Û‰/ôËX'²–çÛ¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ÿÙ endstream endobj 919 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [125.188 108.991 138.887 122.938] /A << /S /GoTo /D (figure.14) >> >> endobj 920 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [165.696 108.991 179.394 122.938] /A << /S /GoTo /D (figure.15) >> >> endobj 921 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [420.037 108.991 433.736 122.938] /A << /S /GoTo /D (figure.16) >> >> endobj 925 0 obj << /D [923 0 R /XYZ 33.853 921.043 null] >> endobj 578 0 obj << /D [923 0 R /XYZ 124.291 514.848 null] >> endobj 922 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /XObject << /Im14 916 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 928 0 obj << /Length 503 /Filter /FlateDecode >> stream xÚµ“KÓ0Çïù>:‡¸¿ÍAܹ-{mREäÑMZ-|{Æñ¦r+  „*ÕîÌÆóø•“áä]Æïœ€ßœÐÌHM4(¦„"»>{Ê€I-µˆ’äŽÎ5N2ÏE4=]Œ|5#wÑê5sjumÞ÷ É›1ûˆŸ5¬H’%Öµ´"©íu™m¶`±læ5VU6Ä8æŒ#ÊZÆ"åž<Ðm{8Ou^Hô«¼PÂÓ²ís u1×S[ÏÁ)éØDÑ1/„¥õ´«‡/§êP¿0¤‰×/‹föóúè4~ zŒZLûóÔ‡˜²ŠÇyh«omÕEÁnìS=Ïí8D÷ÜöEþX~À–‹Ð¦2±ƒsW¢Hú™kÞLc„›­”iû°ý0¼%lOA”½-“µ€öÌãünÅáðpŽœìщï2éy^¤=®ÕøÖ‘O¸ŠeÚ×ÏA ®0ä2àâ«kWìø=–x³!ËŒ½”ˆÍÀRã=D±‡[JAIÆ­ÿ”:æMJ©ù[J“Ú~M)pÍ,øJ¦`R (MEÏ‚(žC} EŸqU×Es3"´Ñq¡ÍU4%ô¡ñš>4 }¹p lhûl7þ”6çð(ˆ¦¬ü'Ö0…Õ*3ý1ip—4KÁ"qâL‹—ÜÚ_‰±©É 5k endstream endobj 927 0 obj << /Type /Page /Contents 928 0 R /Resources 926 0 R /MediaBox [0 0 595.276 841.89] /Parent 903 0 R >> endobj 917 0 obj << /Type /XObject /Subtype /Image /Width 1092 /Height 816 /BitsPerComponent 8 /Length 106477 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIF,,ÿÛCÿÛCÿÀ0D"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠüKý½>?ÁLo?oÙ¯ö3ÿ‚xËû>øOMñwÀo‰_¿hŠß´?€¼Uã_ øžñ·†|áuÐí¼'âÏ_ÞøƒVÖ5Í>ÏÃejÒ]G~Úž›¥hÚÕí§‚ÁG¾(ÿÁaàŸ°ïÆïÛþÚ¿±¯Å»¿‚^ðÆ½©ü3°Ž|o®&»ã/ øBöÚÃÇðÚ¾3–Ù´é|GöëYn<ÃRK?"TÓã̓öŸJø‡íeãÏÚ–çÄ‘ÞÜø¯öwøKðDð€ðô6óxf‡ÿ¾5|DñG‰ÅgS¸¸ÕãñÌŸ6ø›.‰iðëâ¿þ<÷ž-“öØøv—w:½ÿïueµ‡ÃqÅci{kno.æYY}oàwÇø+Á¯ø)·ÂÙGöå׿e‹³wíð_ão‹¾|]ýž~xÓáîµÿ áø?SÔü5ã'Åþ=ñAðÍݾ‡®Ky Œ¾"°×mµ+ 7^ûN•â?J¡ÿ¸ÿÊ ?aŸû¹Ÿýl?Ú ¿]¾.|ƒâÆÙSã^$Ãú§ìÍñ7âÞÁü=²Þ6ðïÄ?€Ÿ>j¾‡SmONŸÂrG®øçÂ~;:ì0ë±ÝÃàI|/>„ÄPø‹Ã€ÿÿà¦ßðP/ ÿÁqüÿïð÷ì+7ˆ¿cx;CÖuÚI4fk-SÀ#ÄúÿÅ[/ˆêán‡àoøÄÝ|2Ö<®h2ø£[ñÏ¥øžÖóÄ^Ñ.  üxðü³ösñ?üá¯üSVøûd|2ý¢>,ÇãÝGÁwŸ¾éÿ þêžð~!xöóÇz¿ˆüskâm_Áž ±øcâ­Âúï‡|!­A¨x’Õtû´Ó­áÔo¬>Œý¼ÿ࡟ÿàžÞ‡âWÅOÿµWÄÿÛèºï‰<_ãÙçà÷Å? |2ðï‡~Êu-wânºšÎ‡¥x7JHî…ÂÞj7~ZÙÛß_Îa±°»¹„ïº+òSàwü/àíAðŸàÿÄ?ÙŸàÇí7ñãÆÿü 'Ä»Ù÷Àø`>,|;ð+xÃÅ>Ò¼Cñ«Äž(øÁá¯Ùëá>(×<®ÿÂcã_Žº^­ã->Ê÷PðÕ†©o£ëí¤íø/þ û^øƒö†ðÇ;¯ˆŸ±×ÆÙcÁšÄŸ?j hÞñÖðçYºÒôÝÇ ¾øk⟊Ÿ¾/h:ö»®h¾ÑÁïø÷TÔüQ­è>´ÓdÕüA¡Zj@ªWãçÅ¿ø,¿ÂOÙËDðÄŸÚƒöRý·fŸÙ×â?‹ôè´×Å߆_ ,þéZ¯ˆZ!¡Ü|Cðg„¾8ø»ö‹øK§jaæk{ŠŸü*}Žî;‹x&‰b×m7RÓµ:ÃWÒ/ìµ]'U²µÔ´½SMº‚ûNÔ´ëè#º²¿°½µ’[kË+Ëib¸µº·–H. ’9b‘ãubvŠüçñ/ü¿á߯|ýœ~ü{ý¶þ-ü'ÔSEøÅ þËžøw}á„ ”Üð§ÄoŸ¾(|ø øÜ-•û\x~)ÝøâÀØÜŨxzÒ&)wÿfÿø(×ÀoÚ'ãGŽ¿f ­âìÿûX|6ðýŒ<[û1~Ñ>Ò¼ñY|¨˜c¶ñׄn¼5â_ü5ø¥à¡w2Ø^x§áGÄ/hºmï—¥yh·vv÷ÍU-KRÓ´m:ÿWÕïì´­'J²ºÔµMSRº‚ÇNÓtë$º½¿¿½º’+k;+;h¥¸ºº¸–8-àŽIe‘#F`vŠøáÏíñgñÇÂ|Lýž?eÚ›ã·ÁmZKÃàÿ°ýŸ¼࿈zeÄöÒx—À:/ÇOÚáÄßxBôÀn<=âÛO‡ËáßXK£àíK_°ž;†ôOÙöÑøEûji_õ„:_Ä&Ûö~ø÷âÙ·ÇöŸ< ª|8סøŸá|8ñçŠôû_ x…áñ=¥—‡Óâ^›á{é|G£è²ø›CñÓôûßG¢x‡\úÞŠüóø‰ÿ&ø5 üvñ/ì¹ðKá÷ƯÛö‹ð •ž£ñWágì¿áïkiðj×TC&‹ÆŠß¾!üø ðã^×£Žê]Á¾(ø±§øÞþÞÎæî/ ý‘bž[¿à¤_>7ü{ñì—â?|Wý›ko ø^?]~ÍŸ´…´Oü@×| ìÑ7>x“Á~+ø…ðƒâφíçŠîÞÿQøWñ7ÆcM“NÔ_PŽÖÞÆâdý¢¿?m_ø-ìûû|]ð§ÂO޳§í»åøïâG„>x'âφþXž.ñ§Œ_O6ºg†þ)øÇÇž ðþµ&•k~ú†¯o§´÷âÏKÖΗeª\i7–ñàüPÿ‚õ~ÄŸ~*|ð?Œ´OŽv¿ ?i¯Šº÷ÁŸÿµ<>ðZþÏ‘£üWøið/MÖ~ø“Å:Þ‡/ˆ­< |Mño|á[Ϧ•k©O>5ý¬ŠÚ6¶‘I1Òo¼ŸÙtIcŽ5gwv ˆŠ 3»1 ªª f$$€(ÔWæ.‹ÿJøiño[ñ†ûþÏ?µíÝáßkZŸ†|añSöið÷Á+ॗŠ4EFÖü5ᯌ_´§ÇÙãáçÅkG3ÚÅ©[| ñij¸»†Úi–án"ƒÙ¿doÛóöwý³ï~)xOá~©â¿ |`øâ(ü)ñ×ö}ø¹áKÿ‡?~ë·BWÓcñ—õW”Ë¢ëC%χ¼cáGÄ~ ñI(ÑüG{5µÔP}©E|/¢þÝþø•âèÿ³oÀß?µV…ðÛÆ:×ïüIø9Ámáv—ñÃ3Égâèž8øùñ«àž•ñSð¶¥èÞ'¼øZ|o¡x{_ŠëÃÚÆ¯e®éÚžeOá‡ü#á‡ÄÚðþÃ7ÿ >>ü.ý¢ì¿gŸþÓ!ð×ÄÿèZW†ü?ð÷Ã< ðÆbñÿ‡ñ~›êþ¶øõûF|fýŸ¾ x×Å$Wv']Ð>øûÆz¦Œ÷ÖðjVÖ×x¡ôÿÙÏþ û>þÑÿ¼eðO—Æÿ?iŸ‡zU¯ˆ|oû1|~ð•ÇÃÚ?…ïš4´ñ–‘áûË­CBø‰à9¥šsãï…~%ñςຸµµ¹×¡¹¼´Špoý¥?h_†?²wÀO‹_´—ÆmZçDø_ð_Áß øÇâx‹Á_±v¯oñÅ´„Ÿ³/Žt­kTð߯üg´ø½ðãÀ:OŠ5¨!ð]ò|0ð×Á¯6‘áÏÇâïOÿ®±¥ÜŸðsÇÏèðLÏÛ3à…§ì·ûGx§Âþ&øQð÷Q¾ý¤ü7kðMþx2i¾0ø6á´Ÿ]kt?Œêvï¤[Úξø=â+´ëú ŠúXTŸKúÓþ AûaøÇâÇìÇûü;oØ{öÈøsà«¿Ù#àké_´?ÄM;öj·ø!¬éz?Á ]èÚöŸ7ƒ¿iüV]+ÇVöÖÒxGíÿ ¬µ&þÕÓ‡‰tï ±½@­žÖ+ê¿?hŽ–kQi7^ý™>j¾!ÙZ¶®k·~#»ð®¦Í†tË=â ýUî°š•ö¥ÛÁsªÙÛÈô­øÏû ÁqeOø)ƒh>9‹Iм;áÇñ+WÖ5?‹|(ð7Ãÿ?‰Ï‡ü 7Ä¿‰ž ñwˆ²ÿ‚—| ð÷íà/Ùoö‰ðwÅŸØ÷ãWÆîŸàn‡ûHi~Ó¼#ñÆæÂk mGCø_ñáGÄ‹?õÏØÝjÚ5¤¿/¾ i?fºÖôX,ü-u&«`³€~ˆQTµ-KNÑ´ëý_W¿²Ò´*ÊëRÕ5MJê ;MÓ¬`’êöþþöêH­¬ì¬í¢–âêêâXà·‚9%–D‡æ/„?àª~øÙkâO~ÈŸ²ßíûhü!ð¶«©h—ÿ>x?àLJþ뚎…s%ˆSៈ?hÏŽÿõŸöZ£oy¦]ë<9ñE½Ô¬n¬tMCU¹XãõŠøóöKý»¿gÛkáÏŒ~"~ÏÞ)Ö¼A7Ã?k>ø­ðÓÄñƒ>2|)ø…áô˜ë¾!ü/ñ=–›âŸx®Ú{k›;[yìäÓu››[‘¡jšœ6óLŸúgüûÚ~Ò:çìÁñ{á/í‘û2øïÃ_ ¼Kñ‡ZÕi€iðÇC‡Á: °Zi7ZV?Œµ?‰^+Ô~!j÷xoá¶“àï‡Þ ½ñ‹<'e~#–2@Ý:+òƒönÿ‚ÂþÍß´WíŸã_ØïáßÇ߀µ/ƒ>é¿Gß^øy£^ëþÕ´=ÅvSYÿºø¥ñ2ãÂþ$>ñO‡ü[uà‰¶žø§è”wZ‡…íe·¼·¶÷?Ú[þ 'û;~Ì¿|û>êãïŒ_´÷Å µ¯~Ì?³÷ƒn>'|lÖ¼3jnïŒõmÞïKðï€< fm.üï|MñG‚ü*ÂËP6ú¼ãLÔM Ý”Wççü»á¿Ãü1ð?íoðWãì/©|mñ­Ãƒš·í-ªþÍš„¾#xûSŠItßé/ýœ?h¯Úú.¹¨eŠÖÓÆz‡…üÙþÍðúž’/þ™ý§?jÏÙÿö7ø]yñ‹öø“¤|6ð4‡ôë›Û}OW×¼Wâ½XLt_øÂ²Õ¼Yã¯ë†Úáto xKFÖ5ýD[ÜIm`ðÛ\KÐÔWå/à«zÁÏOñ»ãÏì5ÿøû8ië çˆ~?øëáGÁý[þ Ðfº¶µoø÷áÃ_¾?ý©¼á»?´ý§UÔ|]û?èÇE´‚yõxlTD%úSã_í·ðÇá7ìááÚŸÁž øÉûU|)ñ•¦•¬øfØÿáôÿµÍcÂ:¿…õ¯[xòÏLðö¥k¾ M'Et¸×…ï“¥©hÚZÆ÷Ú¼$ìj+ñ—öDÿ‚ç~È_·Á›ï‹¿³¿hïjÒü`ñÏÁ|áφ'øÛñ'[øqà¿…¾9ñŒ<5áÍâ±á|,дߌ> Ó5o‰?{3§ý¾kKÀÒÍ{ZÓ¼5¡ë>#Ö'û.‘ iZ޵ª\ìy>ͧiVs__OåÆßɶ‚Y6"³¶Ýª Wš~Ï_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›ðCþ<ý¿¿jÙ_öý¤ü3û>þËnôM{ÁšWÃï‰?¶­©|5Òþ|+ð?Æk­áÖ¡yá (¼}uñOÄÿ/µ?ØxIÿŠCÒ<-­ë?ð•®»¨¦… ¥ï´Á$lŸ‰7±ü[àôŸðOOÛ¢ÃÉû#~Ⱦ´îû(‚¤Ù|ð‹Å¸µý¬n¾*¹Ôm OXJß —ƧAº·{ÏYêÆ}"Þz(¢€?ÚWþ ;ÿ.ý”?à¦ÿ°Gì—ñWá·ìI{û:~Þ_<áx×À7?/ü&ñ³Ï xËÂ7¯se,°—ÚV©cu ¦±áßi3Ÿ²k¾ñ¥xA¾Y,5.Æö) _Ê3þ óû YþÓÖŸ²—ƃÿ¶7ì»ãÙ¾ø÷ã ׈j6Ÿ¼§ü3ð†õß]x¿ÌÖ¼o?Œ5Í3Äiá½cAðŠøOÁ¾"»Ö<_g/…$¶³×"šÎ ÜZ+ò?àßügöfø­ûphðOo|7ý¢¾~Ò7ør~*|/ð÷Ç_ø'ÃÖ¿¼#ýâgM³ðwÄ¿ø¿À^$ ð§ˆ<_/‚¾5øKágŒmô<Ü]hP\ÝØÚ]}+ûEþßÿ?g/‰>ø|þ9øÃûKü@Ò.¼IàÏÙ“à„.~(|mÕ|)e!‚ëÆºÖeu§è?| ʽ øñWÄÞðL÷±\YÚëóÝZÝCÛuóíM7íwÃ'ìQaû9ê?^¶i-j KâV•ðÚO G¤krÞÅ ×­7Tñ*øŠç]OÙÙ¼° .×K¹Öu uuge§^üèÁP~|1ñ·¼ û^|ý£?a+Ÿ‰úõ¿…>øÏö›ÐþÞ|ñ?‹/£’]3Âsüxý>3þÐ?¼âma ºþÅо#ø÷Áº–¯%¬¶úuµÍËÛC?éu~ÿÁ¿à¥Ÿ¿à©?²§ÆïŽ´o€þ|9ñÏÃ/Úçâ?ìý§øoáЬü?‡<ð×àß‹ ›WŸÅ¾3ñµÞ«âE×> ëöwº¶›{¥h÷zuž”-4;I¢ºº¾ýÀ¯åþ ÿ“ ý³?í(´Gþ©¯Ù¢¾ÈÒà¿¿ ¼UûS|Zý~ÿÁ8ÿ੟þ<üñøwâ_‡ü ðGö|Õ´/ |¹4}w^ñÏíQaáxgÄÖ3ÙêžÖüQªhvº­…õ¤‘lžF·@ß+äÿÚ§öØýž¿c/ÁRüfñV§ÿ ÅOÂ!ðkြ1¯|FøÕñ§Æ$Ú ðÇÂÏ…Þ²Õü{ð§ÀÝsàî—®xšy-|;mñ\ýž?hŽþ ø/m«Ý {XõOø{¥XÜ^C¯{§I òÙ€~¬Q_~Ö¶_‡?d¿è/¾þÓ¿´'‡5»-cVsû)|¿øßy¡hz.ŸcªÜkþ!‹HÕtë}3E»ÓïMÞ•zn¦]N++óf²›bâÏÙóþ ‡û*þÕ¿~üGý~þÒÿþ |n_ˆº€?f_ xÀWƒ¾øßPøwâ‰^8Iþ)ÛüøIðÖ÷Å–Hðç>-|cð>â Bê=+NšMfËXÓtÀÙj+óƒöjÿ‚Ÿ|ý¡ÿi/‰±ž»àŸŒŸ³Gíwð³ÃöÞ1׿goÚ;Bð&‰ã]oÁMOxÄ >#|ZøWñÃh—v7Þx7â³<6—±ÝÉj-íïå³ý ¿™?Ûçþ Ÿÿ1ý…?ࣟ°ìËâï…ÿ±µû7Á@?kÿ|økãOÉñÇÄ?ôO„«ñ³áGÃïØßøÁо(ÃáŒÖ4­SJ³ñƒ`×¥ÔmdÒõ{-/ý;úl¯ãsþpñ§„¾ÿÁFÿàÛψž?ñ&‹àßx öÙñ#ü†Éõ˜>4xKàÿ½:×UðжkØþÌ|?ñcáwˆ¦º°ƒ]Ñ>Ùi{¤kšzÀú§…üYáÍb×Nñ'ƒ¼[¤¥Õ¤šŸ…üQ¥i:å½åä¶"ÎþÊâàèª+äÚ—ößýž?dð—ñoÅ:­ïÄ‹šÔÞø1ð;ῆ5߉Ÿ~2x‚Ú5–óNøoð«ÁözŸŠuëm.'ŠoxŽK;/ x^ ­îiZ]Ýô6úÕæ™4W‰júEx¿Å?ŽÃo‚ÚŸÇ= ¾:xn×HðÞ½¡xwöwðÁøµãi+Ô´k Qø èwÑÅâ› -u»oM¨Yj#O‡Ã÷Úñº6¯!ü­ý“¿à¾ß±Gíƒqû@é>ð_í;áþÏ^3øiðÇXøiñ#àå¾™ñ_âÅŠ ñrM/áoÃ…ÞñwŒ|w­xßÃ1|ñíßÄ?Ä…¬¼¤éw^"×µ_ è¾*Õü<ûuE~Ox“þ ïð{àÿÆ¿‚Ÿ?koÙïö¦ýŠu/Ú7Ä_ðˆ|ø…ûBøà~¡ðÇ~,‘¡ŽÇÂò|Eøñëã¦àjS]éÐÚhŸ‚µ$}JÕ¯m¬áŽö[OÖ+ù®ý½ÿà¦_ðSŸØgöùý‚¾x›á¯ì9¯þÌ?·—í¯á€>ñv'Ç]wãO…þêŸ~x7X>0Óµ/ø#ÁúWÄk¿|FÒuZÐáñ—„¬ü'øsàÍQñÄß‹_µKk«Ûü<ð^Úž·©>ÆûVÕ¯åû‡|- Øê$ñv· øwO¾Õm¼?â/í×{ð[áçŒ>/üqýÿkÿ… ¼á{ÅÞ2ñ¼ú?ìóñQt@Óo5;‹Ë¿~Ï´gÆ/‰ò[M¡ßÚxãJУ”j>-Ô<;£ZêZˆÞÔWþÏ_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›Ø(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Ä_ø8ûþP›û|Ù;ð'þ®¯†Uûu_ËGü»öÙŸö¹ÿ‚gþÓß³ìñûÁQüñkã7‡|#áß i’ÿÁ5¿l? höréŸ<â}Fÿ\×øÀß³í¿ñ3ÇŸ¶WìQûDø3á/ƒ>~Å_´ŒüM¡ø—âOÂ]oÁ>Ñ~2i7ÃÉî¾êãWñ†-ö‰ñ=<5®Ecc­Im¦]ÜisÚÐÌŸðjGÃox3þ£û6ø×@Òãµñ7Æü|ñÇÄ=Y‚=滯øgã·ÄO„ ³Üyk;[i^øiá-ÆÚYfŽÖ+þTrùKðü áÇ„~#ÁàŸðJ/ x«J†ûD¹ýmþ ßY,p¤ZŸŠ~_~Þ_ü¨jhÑIûh~7ømà­^ÜÝ$’G'‡ôÖ·’ ¬¬æ·û[þ Ãø­âŸðM€Ÿ±·ÇÙoöáø1ñ¯à/…?hÏøÒÛâ—ìaûFx#Áš†•©ü}ø—ñCJ±ðwuï‡Ö~ñ_Šõ xûFFðF—¨¿ŒµV×W±Òô+ÁcçMùÇûH|iø“ñþCý„ࢾý‚¿à§÷¿²—ìñû.øà·Ä?Ïÿèý¬lµ•ñ_‰|!û`éð^èž ºøe‹u=N¿øóà»=Jí´‹kÿ2×Äéúf¡kceq©~¼ÁÒvÖóÿÁ ÿmÙg·†ilæý™îlä–(ä’Öá¿k¿€–mql™­.®­ZXŠHmîn ,bšEi/hˆ¿³‡ü)ðÛöˆð¥©Šž ÿ‚AþÏúï…"xâç>?|FñOÄ¿‹?·7Æ…?<ãtøßãÏjºßüáoø'¯Ç=/JÔl´ÿi>ÓîÅ]kz‹¥ø†ò]ëV›Ãz?×?´ìÿý¨ÿà¦ðMïÛÓTðgìcû3ØÏÄ2Ñ~-\ü7ý­¾<|nñ×Åÿƒ;—KƒRðF•e«þÃ_³þ‘§¶‘¤]üF²‚ÃXñÖ—®ˆW_iŸIMuÕ|»þ ‡ðëö¦ÿ‚éßÿa?~8þÒ± üKñöUý¯fφ~'ø÷â ø{Æ÷6W:ïÃ?¿³÷Â]?Å<9§jk'ˆã×üðóÅú æ½­ø¡ ¹—J2Ø~¼é?>3~Õ_~Øüø{ñ¿àOì÷à¿ØøïâçÆŽ? |Ið?Æ_´¿ÚÜ]xsà¯Â¯ƒ¿ô½ã‘§x›ÄòéŸÅo|Jø}à[ /hwÞðuŸ‰uïÞëÿÀ? ?â+Ù7þ‘ïÿvÿÄOøkÿÑ_¤ÿÿi߆ßðZÏØ#ö§Ó>|=ý¦ÿf/ üMÐþ7þÈš™ý¢>èŸþ(里þ èö÷¿¼/áßøëÆš‡‡ôý?â­—ö&¥&¿§Ý]x‡@Öì^ÒÒ+on¿Wëâ/ø)Ÿ„£ú}û+ÿÁH¿e_ðN/ø)‡üGöÒ¼[ᯉÖZÇÚ_ã¿Áψ6 ã_‡¿´ÿ¿Ù#ÁÞ²Òo|3 _i2i"ðçÀŸj~¡a>£¤ø·V_Þ}‹Ä2ø“ú/¸þÉðPoŒ>ý›þxGöþým_…ŸµG‡¾x7MñÅÃ?Ùcã‡íWà_‰>%²ðÖ›ž&ðßÄßÙ{Â<áKßÈmï5Ï üZñ5oøš÷WÐuK›Ý3C›Ä÷\ïü‹ö7ñ2üoÿ‚©þ׿>ÜüðoüÃâGÃ$ðÿìÉãÐdñ&›ð‹áGÂ_áÝ÷¾*hþÔµMÃ?h=sÆ~6ñ·¼¯ªjš ¿´‡ÄœšåÅõµã—üß­~Û6ŸðNÏüSø1û;þÊÿ5Ž?µ'ÆüQøËñßöÓøÁð‡âïýƒh‹k» ³½ÞŸ¨\|N½–ûSÖ|A«K¢é7º­û^þˆ~Ö?°ü“öÃý½à™?¶E×€ÿbOÙPý†~4\kŸ/|xøçð‹Æ?¼Cão x3^·ñ¾| øÅ¢ø[ã·¿umÇAø©ã/|9ðo†'~Ó¾ þ˳Ÿìsû{üqøð;öáøKñËÇßÃ/دö…ñOÂÉ|àÏ…ôÝEü%ñZÇÀ§ÀÞ7Ôn¯þ&hVvpøWYÕla»±×­5mCKºÓ<™ÿ¦/Ù“ö¬ð§íM£x‡XðÇÂoÚá+xa´(µ='ö›ý™~3þÍÚÍÅÆ»kytxzÏâï„|/‹×J63[k·Þ¸×4Í*êK8®/¶ßؽÀóËÿÿÊ#tû;¿ƒ?ú‡|Z¯®ÿàç/Ú+âGìßÿwý£uß…z®«áßüKÕ~|¹ñN‹<öº‡¼'ñÅvv8– ËwŽ[?øH Áfÿ`ŸŽŸüoðßöŽø1à_‹VxûOý¡gψß~,x'ÆÚ%§„üá?èø½áÿ_x‚ÓÁ^+¸ðíý‡ˆ´í/ëú÷‡5ÿ Zx‚ôiÚ¸„âOø$aý½~Á0`¯ |ý?a[߆w_²¯Áox{Yñü㟂;ü(ø1ûHügøçâÿŠº­‡öÝß„“©5ܺe¯Ã»}JÊúþãP‡OÓyÿø&?ÅÚ£þ ›û?ø_öÿ‚€~Í´‰ôÙÕµOüý®¿e‚k_…Ÿ~A©ê—þ ‹Ä^ ýžü)ñ'ã?ÂßøcOš? Ťø¯á¥Ž•&‡¦è“M«GuçÜ_þ£ü/ø…ñãöøÓáoˆVøŸû=þË ô?4Z/Å¿CàŠß´ÄO[C¢èz…çÃmB[¯|4ø7ðÛB}wT†Ëâ—…>#øóâ&³ ^ øWÂßVóâ0ó3ðnÿþ Ãÿе_ÙSá×ì+¥ÁPa|@ñxóág‰5?ãŽáx×Zñþ³áŸZøzÏÅž-¶×¦×Û£|søû@|BÐmuü‹Ÿü7¾Ò|'®x§áÖ¼‘˜eÕôéÖzç‡$ÓfºŠìŸx®ÍvmM,¥ðNŸŒ´ü£öpøwû ~Þ³Ÿí«_þÍZŸ þ~Ô?²÷ìÿñ“ö´ø/ñÇá‡u »/†Z€Ð?gO|TøÁð·Æ:7„£Ó¼5®x_â'ÃÍÈ ßX±×$‡WŠÂÓÄhŸØÏãWü¿öâý”þ'|nø/ñ ölÿ‚q~Ã> Ô¾#xwÂô˜¼ñÓö¼øÉªê~¿)uðª=NëÄ ~ è–þÑô÷¿ø€žñÖµc{âk  Aÿ *êžúÃþ>ÿ”&þßöNü ÿ««á•}wÿÿ”YÁ4ÿìÀ?cýg_‡5ùÓÿ|Oñ?Š?àŸß´ì]ð£öfý²¾?|løíð×À7> ÿ†}ý“þ7|cøugø¿¤_ÞE⯊~ ð†©à/júe€õkíK·ZëøºÞÃPðæ¢4 ,"x¯â±ss$¶:gÅM[àÔ0ë[´pê/|?3O¥ê—0\~í~ÓÁC>~Æ_²—ÿ…±Wì eðãÂ?³¿ÁÝ#ÁÉsÿøùáÍFïD‡À: ÛjúÞ‹¦ÿÁ,µÛ;kžcë^$Ž-{^i5ëýFyµÝfyeÔî½›öÛÿ‚X|ý¯à›z—üzÎ?øVÿ<7ðßÀ~ø¯ÙZ RãáGˆ>iÚu§Â¿¥™šÍµ›m1t›}+ÄöFêÊëÄ^ÔüA§.¡aw©®¡oò7ü¿öŸý¦?bÿÙÓáÇìcÿý–i»_‰ß³_„´_ƒÞý f¿ÙÿãOíƒð?ö…økàM6Ïÿ üS§ëß³§€>"xÇÀ^-o ØéÚG‰tïŒð|·Wšhñ>£«Û_뚎‰¡€°§üÇöÐø+ÿlý¶à ¿­fO„Ÿl‚þÐüGû>|øãñ[ãF ¿¼qðÓOÐþ$jú¿¿fOÙ×B¸´½Ð´ŠšõÌdš½·ˆ~ ÞG½ôZ†§©¯ç§íÁð¯Ãàï_ø&F™âûu¿ÑüûCñRßK–?2Þ÷Äÿ &é?>xcâ^‡á¿ˆÞÒ|WiuygáÏ‹ ¼kð‡â.—®£y¦<^'øqñEðï<-w,¶R\ÚÚkÚ-…ÅÖ5ž£oe{m4ŸÍgÁ/Ø¿ö‡ÿ‚#ÿÁA?iÏß³×Àÿ~ÓÿðM_Û§W±ñ§ÄÏ|ÒìüOñëöNø«¦êþ,Ö´­Gÿ ^ò/|VøY¾/ñ&’¶Ÿ…ç‹m¼;«éßhš–¥ðÿJ8ýƒý½¿à–²Gü—Yý5ïÚƒÃÞ1ÖµÙÇÚ‡¾¿„|i©xA&›\ºð¥ç‰|7âA`’6¥á¿Ïà DY¾—â Q¤ ÐüA¤«ãuüÑÿÁL¾/|møÕÿLÿÁ9ÿfx;Á_|3û;|5Ô~+ü)ø7ñƒâˆþü#ñÆ þ|iøµwñ#\ñφþ|uÕt_Eÿ„#Áqh6? øóâÅåÐEæ›ð¯BðçíÀøÂûNñŽ|M§økC¼±Õþÿ‚ÂÿÁ0¾8|bý¢¿d¿ø*Gì!eá½göâý‰uÍ„Þ+Ö¬ü#áïÚWà厹©jڇà |gxöö^ñ$Vþ$ñ®¦_ê·v:V¡ øãÄwš¦Ÿya¡9ûÏǧü«â7‚¼að÷Æ?±/üëYð"ë> ¾øQâ/ø›ÁºÃÏj6~"Óü5g¨xïÁžÖb¹·ñU÷‹õ{«(<=›nÚÒ›k‹™d¸aë>ÿ‚•Xø›Âú|7ÿ±?üCß.-­á¿ø ©~Çß`6zóÁÚtëoÚGRÑ´ŸØâïJŽöf··ñ-×í¦iÓÚÆo®’ÁVh êSãwÅÙ;ö~›â÷íaá/Ž?¾$üNø§â fãá/ì—ðOâí?¨|"´ñ6›«ê¾øGá½áOƒ5/ÞøKÀ^ð†á¿|[ñ&™ xOÄÿ5]K\i¼)cãŸxnÀùÎÿƒ'~øJÃþ ûûOü\·ÓTxëÅ?¶6¿ðçVÕÜ«»xKÀ?> ø›ÃÚm¸)¾ÙcÖ>$øžêôÇ&ÛÓ%‡œ™°‡wÿ»éÿðU¯ø6[R°v±Ôn¿o WJº¿³cm{s¦MûA~“i³ÝBRy¬%µÕµKi,ä‘­ÞßRÔ!hÌw— 'ÿ¤ø‡â¿ìaû0xçö9ý§ÿcOÛïàÏÅ/Š?µÿ‰þ%øKÄ>6ýˆÿhýá!ð·‹¾|ðm׉>)Ý|>žþÍÖ~k‹«ÜøÒó@Òà·¿Ñ$´Ôo^êò-?˜ÿ‚ç|Hø¥ûGÿÁE¿àŽÿ~~Ã?ðR‰~ÿ‚x~×úÿÄŸÚÅ^ýÿi¶ÐæðîñÏöcצ†Z•÷ÃÛ+?‰~ðCÅúŽ™ªx~i<5¬YÞxvãIׯbÕ${0Öø:;þPQûsݳëaþϵöÿüÅžð_üƒþ •¬xÇÄÞðž‘yû~Á^³ÕÃãý’>'þÒ´ÇŒüEâ¶Öô/…:EçÂO~É<ðûƾ>Ót}^ÓÂšçÆ¯|=¸ð'‚"¸†[»»©5y-@ð—‰õ +ö§]ý°´ÝÀW^ µýŸ?k kâD:žßà–›û;|JÜøÅ­†<ÿ $èðÏq]ŪîÒ.üeý“~ |ø;â;Ûk‰·Ë þÑ^øSñâŒõ I}áÍÃ?>ëÖ ³wªßk1E¥½¥Ç×ÿ>üÿ‚/~Á?>x/À´gÆO|/< |ýŸ>'~Ð?|gã¿Gâ߈^0øƒâ/üðŸi^+ñT^!»¸ÖµE·ð‡…õ sÃ>}vÝ.´8çþ7¿à•ß¶çí¡û"Á?à¤zÇìSû2øÇâgüût~Ð_~!|lÔôû ‡Ÿ~Ýxöy𞽯ø"×X3‹?4+Å>+ƒÂ:~‘­ø_á߇|=/¾(Á}¥Ká¯xÿû[ÿ‚_x§öOø—û|(øÓû^_ë¿ þ7XKñ+ľ4ñn¤ÚÿÅß|WÔü­/â^»ñïÅ72\j^'øÙmâ}"óÃþ?Ôïî®a‹SÑF™áö‹Â– ¼?†_ðl¯þ |ýŸü{ûþÑŸ±§íÕð;âÅÚ«ãßÅojÿc>ø;wà/ø+C×퇊þ+k^_‡~½–?ë^m'ÅÚÞ–ºÆ¿u¢èZºÍî½enÿ'~Ç_hø#¿üWöËøð'öÿ‚üTÿ‚Fü[ø§¬ëš7ü Ÿ±7íâ 3àGÆ(bµÓüGâ‚3Ùø2þ/‰ßÛTÓo¼#e¨è—±/Š|kàOxbëÄðŠÇ7€(|-øÏûKþÑ¿ðv7í‘{à ¾3ø“ö7ýš¼eà€Ÿ¿hŽž5ø à†>Òo¾ø/Å1ðw‰|û=~ӥ׊üQ¨|Pñ¶¦taàM [Hñþ¯©Oã;(|7¥øZýëý¸>ÿÁJ¿mÏÙö‹ý“|Sû&ÿÁ>¼9¦|zøQâχ־+¸ÿ‚‡þÑ>(Á^#Õ4ù$ðwŽ×ÃMÿ³ÐF¿7¼]o¡øºÛFþÝÑS¸Ñ¢³]cKi…ôþÕß°ÏÇÿ‡ðQ€¿ð^?ø'ÂO|W×¼}ðÃ@ðÇíûø²×þŸÆˆÿ 2øqá>kI5Y¼O¦/êô?ðPæñƇ—ðSö=ý¸|Wñ£R¶–ÚÇá¯ÅÙ_ãOìÕá ë²,±[7ÄOÿüáÖÞ°»E›Ä:߯|_ÖSIIî|!áoj’iš6¤ÚÿÁ3¿g¿¿²ìû/~Í´W´ÿ‚|þÓ¿"±Ýãþ×ú·ÂýSW”¤’·‚>üøMã/èP3GçAe§x“ã/Ä-T[,ÆÔÞk÷w1ÁÄ÷2ÜF>*ý uÿØoà›_ÚAý¨¿kO‹Z¾‹â+¯k¿²·ì­ñ‹ãÍÆ·ãèOü%#±³ðçÂÏ x–?†¾ —V×ßÃ? ­~ êúd á½/NÒµjš6³«WóÕÿ”ÅñöSý˜>%~Æÿ´§ì•ûkü ø­ãßÚ“â?Æ¿ k¿¿dOžøI7‚¯~|ðô?Ú¼Kàm7Á×Vøeâ ;m_Õt˽NâçEµÑ†¥w¨x6k×}?þ#ÿ‚Y-ƒµŠë¿ðOïˆI­‹66ÃXH|ÿ’$ÕD% ±I£éÝùÁJÓY@kSõ÷_Ä/í+ñŸâGÄø8ÿö ÿ‚ŒxGö ÿ‚žê¿²§ìûû-ø‹àÇÄø'Gíia®Zx³ÄÞý±t˜n´¯j_ ,üSªèzeßÇoÿj^A¦­ç•¸úfŸ© u¾þÑþxãOø—àO |@Òt_øsMñŽƒ§x†ÇAø‹à¯ü8ñÞ‘m©Û¥ÌV-ð4ÍÅž×­•ÄzŽâ-'NÕ´ë…{{ÛHfF@Ù×ñãÿ)húOˆà¦ÿðm¯ézv¹¡kŸ·v½£ëZ.±em©é:Æ“©þÐ?°-–¥¥êšmìSÙêv¡g<Ö—¶WpÍmwm4°O‘Hè°êþd?à¹ÿ±‡í]ûVÿÁ@?àˆþ9ý˜>¯ŒßöLø§ûG~Òž2ñ‰ÿ¶ôO…:=çÂo~É?| à|@Ó´ZÇ¿Æ}wáÝ×ü—q½ÝåÓêúÔsèþñÞœý7×ñmÿöñ޳û)ÁÖŸðSŸØ·á¹¹·øû@x2ßã~¿à69,|3áÿŠÚ׿ƒ?­t˜æžÊÂåo~'üAð¥ÄÖ©jš’x—Oic†=?M²¶þ¤µÚÿÚW„\¾øûY¿ŒáÓ·ÏðŸJý˜þ.ë¾*ÿ„!Gð}¿Œô ]|»½‚¶œž.‡âÑøa!Û«ºë5ùŸÿ»ÿ‚hüRø_û\þÙðTÿÛMÐôÚïöÓ×.t¯|"еí7Æv³WÀ K|3ðÓXñΓæh~.øu£ø7Àzgµ Ü^øFÕ|§ÃáWQ·Ôµhóþ KñcWý°¿àåÏø+¿ÅÏ‹ÜëZïì¡á~ÊÿlõSçiÿ ¾x㌠µ1áKšá4»Ÿ\ø;Yñ%Ö£jðÜÜOãï’"ƒÄw¶£úáø·ðÃÂ?>|Gø;ãý6cÀÿ< ⿇ž.Òî!†x¯¼9ãûÃúŹŠâ9af’ÃPœFdÕ$ØûIQ_ÏïįØ;ãüïþ »ã¿ø*ßìƒð¯Ä´GÁÚ¯ÁWžý¸?fO^è¶ÿ¼/­Ý_x_VƒãïÁ 'Å:¾£üG™õ¿ Zêž+øyý»¥ø•n5ŸKáhµ¨¼I¯„~µý§ÿoOŒ¿þ x×á?ì û#~×þ9ý¦~&øC\ð_„µï޳ÆïÙ?àÏÁ wÄZTú\ž=øñ?ö•ðÂ]^Ó¼ ·W:ÌOÁ량þ*Õ4»]+GÛjvú¥~RÁ›ß´ÿÄ_?ðN‰Ÿ|}¨ßëºì·ñ²oü5Õ¯åšâ[‡^<ð헌켷WÍ4ðøcÅx®m:2#‡MÑ5½#F³,´Ûh£ó?ø7cáÏ„µø,ŸüñWQÓVçÆžý´¼[௠êReÓ4?‰´ïí«xµ!‰‘¶Ýß\ü4ð´iwÇ,VÞÚÑ_Lµû'ÿÛý†þÿÁ ?àœ«ðö[‰_¼Ocâ>'|{×¾ü ø…ñwÇ¿þ*xö÷Â^ »‡¿ ¾h>(ø‰¬øKÁúu¿‡4[}7C¹¹°ð‡5ox†ÓJó¼G%¯áÏüâ§ÄÿÙwþ ÿ•ø©ñÛöÿ‚–xáçüöµÓ>*~ÏÞ+Ô?àŸŸµî˜Þ“ã‡í;â8SÇí¥|9¿ŸÀ—o¡ünð–¥5ίöocâ#ªë6§[& íßðzc½üötÖì¬õ+þ ðµô½^Õ¾©¦¹ýŸiû²öñ»³cw§Ø]·–2n,­&'̶…“ô3þ`ý¦>%þËŸðHÚ7Å? uO@ñÄ{ÿ|_h÷š…<7ñ;ĶÚO5+;ËWŠâÆïSð„ß…lµ'‚ãN¾ñµõ¬«um?˜_ðv©ñgöÂý˜ü ûþÌŸ±ïíÝñ¯â¯ÂÿÚßÀß|Wâ‡ß±wíâ_„?ð‰h~/øvâãßt¿\ø3Æw3ê¿#üø±àøz|DðŽtO|\Ð|3âM;ÁÞ-—×vúî‹%÷ƒ“ð¯Æ^Ö¾xoƚǀµ­#Áñèþñ?~*i^ ñ­æ‰ý·¥Úß躎ý?ñþ Õ§~Ú¿oïø#wíð[öý§~1|ýŽ?hÍã—Ÿ~x«Zø£ã<ñ?ö[ø‹ã‰µÿ¾™ 4Jømῃ±ücÔ< ãx£Eø‹s/…4¿ i×üHúåÿŸý¿noŒ~"ý‹?m/ø'½à‹ŸÚãþ ÿãÏ‹~(ð_Â?‰·–z¾1øK㧃4O|BðÕÅæ«£hqkÏáýè¶CZñ7ƒ-¿áñGŒdÓ¼káßÅ¢O7æÌßðqoí‘û9iÒi¿ðV/ø"·í#ð/áeÅÌ^ñçÇ…öúçŽ>ZXë•y î—âO Càùlž›†kx>7ê÷Zże§éÓÏûW×¶ŸÆÛ“ÅŸ¶üÏöÌý¿a¿Úgƾðÿƒ?à Úí=ðOÇÚ†>üFð¿ÁŸÞ~ÍZRi^2›Å^2¶ð'†~ xƒQøyįƒ>×|km©üD½ðŽŸa[5é4/¼>(þß^ øð«Æ>ð‡ì=ûqüvñÿü%®xNOÙßâì?ñçá?ƒ|Euâ=&óJ üFøÓñóÀ>ý˜¬ü%ÒiÞ/Ö¬þ-xŸOƒDº½»Ó¬õÿ$ÙÊõìM?À ?cßÙ~ÓöSñRøÛöjÐ~|+ð—À¿}¾çS¹Õ~x3Áš?„¼úåõ­Ž¢úå¶‹¢ÚÙkðê–~­i­[_Újº}Ž£ͤ?O×ç_ücö1ñ'üãþ Ùû/~È>3ñ5—‹¼iðÁšáñ¦·¥Íqu£7Œ|ã¿üPñ^• ÝÝÛÚ]^xwþ ñ®£áß^ÜÙØÏy¢iV3XÙI+ZÅú)@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|ûûIþÑ~ý˜¾ÚüCñ'Ã_Ú â­¥÷ˆ ðÍŸ…fÏ€ŸhŸˆj7:.»®[ÜÝx/áG‡oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüôýšà¬ðN_ÚëáíßÅ/?µ×Â]wÁ–^&Ô¼!syã]KSø1¬Ç¯é6:V£}n/ø~ËÄÿ¾|;øâ+MÏáìÿ¨Zh–º×‹<9«êVúE­þ©©ÞÛi±\¥”zýÌP¬×w'õa¡þÃ?±?†æ? ~ÇŸ²Ï‡’ñ£{´Ðÿgß„ºJ]wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þ %û?|ð¿üÏþ ×ð׆~ |"ðMwÚÿĪÔı•rà¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÏÚÃöOý–tßÙgö•ÔtïÙ«à†¡aðã%íõ—Á¿‡V·–W–¿¼G=µÝ¥ÌŽ{k›yãI žIa•HÝ]A”_ðlïìãû=xóþûø³Ç?þ øÏÅ:¯ü4ö§‰|Yð¿Á"ñ¥öÚÛãΛeöýgXÐï5ϱéÖv–¿h¹“ìöV¶Ö°ì‚£_é/Ä~Ñ<_áí{Â~%ÓmµŸx£EÕ<;â "ñY­5]Z±ŸMÕtÛ¥FGkkë ™ígUuc¬”à6øû?üý–¾øOàGìûð÷AøWð‡À¿Û¿ðˆø Ã)u‡ ÿÂOâ]gÆ:ÿØ’öæòäjxŸÄ:Ö³sæÜI›½Fà¦ÈÊF Ïü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEü–~Ó³ïÀKø9ëþ ·à ‚l¼ ®þÂ?õoÁVŸ |má-gV³‹ã©´Õ5_ ⦨j6¦ÎÐÛ^ÝÙMsÙmü©WÈ‹oô—ÿ …û&ÿѯþÎÿøe>ÿó3WüAû0|ñWíà?Ú³Ä? ¼7ªþÑ <¬ü?ðÅ{¤½>'ð¿ƒÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3_š_ðY_Ùƒöjð¿ü›þ â/ þÏ|;â öPøÇ¨èúî…ð—À:F³¤ê¾Ô$¶¿Ó5=?Ãö÷¶–ò(’ «Yâžãu` ~Ú×ñOáwÃÿ¿“âO ëv²Yjº> ¶ó[ÎÖ—Ö²É Ââ“c’+`€Èø#WìÁû5x£þ Mÿùñ‰¿g¾"ñµû(|Ôuw]øKà_YÕµ ¯éò\ßêzž¡áû‹ÛûˉÉ=ÕÔòÏ3’ò;1&¿Ká¿dßú5ÿÙßÿ §Ã_þfkÒ¾|.øðKáÇ‚~|)ð®™à†¿<7¥xCÀþÑVdÒ|7áÖ;-+GÓÖâk‰ÖÒÆÖ(á„M<²lQ¾Fl“ßPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ35üÚ~ÌŸ³ïÀKÿø9ëþ Ià ÿ‚o| ¡~Â?5ÁW |sá-V¼‹àQ»Õ4¯ Í¢¾§ê7FòìÜÞÚYCs?Ú®|Ù[Ï—wõ§_‡¿?b_ÚÀ¿ð^oÛƒöìñ…´«OÙ¿ãoì‘ð‡á?ÃÏÃâŸÝêú¯¼#ÂU×4ë¿ [_Éâ=*ÚØøO[òõCO·²¹û<^DÏöˆw€~Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@ÌßüÅû8þÏ^ÿ‚#þÚÞ,ð7Àƒ> ñN•ÿ áý—â_ ü/ðG‡|A¦ý»ö¶ø ¦ÞýƒYÑô;=FÏíšuåÝ…×ÙîcûE•ÕͬÛàžXÛõwöOý“ÿeKöYýšµGöjø¨_üø7{}}{ðoáÕÕåíå×ïOswws?‡$žææâyiç™ÞY¥w’GgbOÔ¿gÿƒ?µ/Â_|ý ¾è?>øëû þïx™.¤ÐõïøFÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌ×óIÿáþÏß¼sÿsÿ„Ûà—Â/Â5ÿ]ý£<;áÏøJ~x7ÄØ±þÈû…¢kh·ÙZ5žæû.—cäY[îo*ɯ뎼àWì»û?~Ì¿ð³?áBü,ðÏÃø\Ÿ5ß‹ÿÿáŠò?øLþ%ø›ÊþÞñ†¯ö»»½Ú®§äÅöƒoä[üƒË9È/ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(ù,ÿ‚Ü~Ï¿<'ÿÿƒ4_ |øCá­Æ·v»£øÃIðÿÃ_hÚgŠô”»ø8Kñ-†¢ÛZëºr‹«¶Z¤WVÊ.g &“wô—ÿ …û&ÿѯþÎÿøe>ÿó3_˜¿ðU/Ø—ö†ý©?lŸø#ŸÆ/ƒ~ÒµÿþÇÿµ¾­ñcã¶§¨x§Ãú׆üwsðÎX53LÖ/í/üIrÉá­\;B‚öõL†„yñný ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfk€ø±û$þÊvß >%Ü[þÌŸ³å½Å¿€(ñ÷ÀσÞ8ñ5çþ?Cyâ/ü2ðW‰uÛ¸lþ1ø¾ÖÎ_ZÑ/u â´¶Š;{hå¸t‚Ò‚FŠ£úÿ†Bý“è×ÿgü2Ÿ ù™­¯Ùãönøû&ü,Ñ~þÎ_ |;ð“áG‡/u­GDð?…c»FÓ¯|EªÝkzÝͺß]^ÜùšŽ«{u}p^áÁšgØ0£Û¨çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™šþi?m¯Ùûà6“ÿ/Á|¥üøE¦øÅ??lKßø3OømàÛ? xŽóLøñúïM»×¼;o¢Ç£ê÷:}ݕՌú…Ķ—–Ó[¼rA'õÇ^ âßÙwö~ñßÇÏ…?µ‹þxg^ý ~h¾)ðïÂoŠ—Ñ^øDñ¶¬è*ÓtYb»ŽÍmµ½Ä:ÖŸx·6— äjW>SF쬠¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfk‚ø'wüúGi$ý…ÿc§wfwwý™> 3»±,ÌÌÞ %™‰%˜’I$““_bÑ@äýûRxOÂÞý½à£þ ðG†¼?àßxgöíøí£xo¾Ñ´ïxoÃú=ƃŽ“¢hzEµž—¤é¶pªÃkcakoko¬pĈt¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ^gñ{ã?Â_€Öþ(|nø‘àÏ…?<;mqu¬øÇÇž Ó|7 ØÅmgu¨L¯©Ü[Å-Ȳ±¼ºK;s-ÜÐÚÜ<0H"|zeü˜üwÿƒ´f…ñߌþ~À²í3ÿøá˜ï’ÃXøsá‹Ï|3×ÉfŽçVÒ.ì4üQÔ|;arˆ%ÕeøW¥XjQ 'Òõ l$µÔgÅð?í‡ÿj~Ñ~ñG‰|ÿøý…fÍ YþÒÒ|%oñÂO蟴îôí–Þ ·ÑußÚ kµâá.,åñŸÃ=7J¼Ô-–;¿ jztwVó[·×ö:]Σ©ÞÚiÚ}”2\Þ__\Cigio—–âæêáã‚cPZIetÌÍ~;~пðpWüïöYø³âoÿ¿m/ èüýš¾%Ñ|'ð¿ã¿Å/JŸUÓmu{[9|að“ágŽ|>£í³je§ˆgÔ4‹‡kVÚÊþ)­£üGðçüÇÿDý¿çÕ|wÿ‘ÿ‚§üOû7Š|7k¤Þ~Ï_³mýœ>ŒZêúµökâ,ô¯ |°‡Gi¢¾}?Ãß¼PúÅÖ«"?Šôÿìyuۯ؇þÿ¼ýέ©ü"ýtÏxÛÄ^Óü+â/ˆŸïßã'‰µm&Â{kÙVßMñE»øÂÓjº¥¾§­Iàø]5+˜-!ž?ìý?M²³ÿ=Šß¾þÒŸµŸíÛñûá±sâ…ÿ?lÏŒž?ð¹y¤êšÖ­áoj=üú6·ic«é’\ÚM­e©YÚÞÛ–òî Š@È ô?ÚÇAÐü/ÿÿ‚”xwÃ:6“áßè¿·ŸÇ;Fд-:ÏHÑ´>ÖçBŠÚÃLÓ4ømì¬,­ãUŽ [X"‚#TE«½Q@Q@Q@Q@Q@Q@Q@Q@Q@Êïü¯ãïxkþ åñ·Nñ|% jöùý¦.E†·â=J¼6òÚ|;X§·÷Na‘£‘RP›£p¬J°ÔƒâÏ ø©.d𿉼?âHìš$¼}YÓµ„´yô)rÚ}ÍÂÀÓ,r–R†A”#cø.ÿ‚Á ¿àœ?ðQoÙ?ã/íûU|&ño~'ÚþÙ_¾C¬èŸ~#x*Í|/áÆðŽ£¤Ù¾!ÒôÆš ­Sw¼kcu:̉,®Äúãÿ‚Á-cOø&.ñ7@ý¼â韵? k:‡^ñÿŒ¼xú•ÿƒíu«- [i¼_«êÒé«mo¯êi,V-w&dyÕÚÊ€~‡QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEs~)ñ—„< ¦I­ø×Å~ð~ Ìójþ)×4¿é‘%µ¼·w%þ­uih‹oi÷S3JVðË4…cØt•óWíMûbþ̱/Ø>,þÕ¿üð?ÀšÔ>Ó5ßßÍ ëž!¸²½Ô¡Ð|9£éö×úï‰5¦Ó´ÝGQ:^…¦j7Éacyzð-µ´Ò§ó ûcÿÁÓºG޼]ã/ÙWþáû7|Uý¶¿hCo„ü3ñŸLð~¯/Â/ë:¸¶ÓWÆ^ðdV¡ãO‰w‡µ«ÔÒ÷ÅúwÃ\j‘ÿÂAˆüQàÈ-O‰<«öÿƒg>"þÕÞ9Öÿn¿ø.¯Ä¯übøóñOQÑüøSðçà¿ÃmkÛ­+À_ üáÏx>ÂóS¸{ÍNúÛþÓ´½&;ýRöI/uKákö½FöYo/fžæY%oO ˜?eدöOýˆümðÓöPøð×ào„â´°µ¿OøzÞßÄ^(m2Ú;;=KÇž7¿7Þ6ø‰â¶†(fñ7ŽüCâ/]¬iö½Rr §è¢€ ó×ø·ð¦7xäøðö9#fGGñ§†ÕÑÔ•dumH2²°!”€A¯B¯çC[ÿƒTÿà‹~!Öu}TýŸ>!O©ëšþ±¨ÌŸ´ÆxRkýNê[ÛÉR¼`‘D²\O#¬QªÇ!U@øÂý°/ìuOø(oüÇQÓ/m5>÷öùøûsgcs Ýݼ·zE=µÕ»ÉðȤ4rÄbh¯.ø§ð?á×ìÓûX~ݳÿÂ=*ïBøaðwöÊøÅðûÀz5þ«¨ë·šg…ü4¾Ó´‹;cW¸»Ôõ9 µ†4’òþæ{©ØšWrMþ·´QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE!ðSÏø8wâ­ûOüÿ‚tÁnþþпµ_>#j¿~'|D×|?¨ë>xšÇXÓôÝ?Â>Ö5Iôx²kxíüQ¬üHñÜëžðg‡´Ë´ÝS[×nuë€~ÈÁR?à²?²?ü»áf£âÏŠÞ)Ðþ!|]7ú‡†f¯xçÁ°|dñzÔ±HúídžuPêú„´Í-ÛP¼ñ-î‘-i4ë8|Éu(—Ÿ„ðOßø)Ÿü{ûH|<ý­¿à©^Õÿfø'÷­sQŸáOìã©i$øsã¯ø?ÄêúûYü>Ñ'Ó4¯dkÐ[øRÏÄÿ|ks¥Þøƒ@:d? íµ¸-õ ¯~…Á1àØ?|=ñ/Š?jOø+‡ˆ4¯Û{öÅñ§‰®u¹­5/x»â/ !¼ðæ©¡ø£Y»ñw…<ãüM†m"çJÔ‰'Õ<a Îº.™¡jb(u…þ¸èâoØ{þ ÙûÁ9¾ê d?ƒšWÃkzÕ׈¼I©ÍªëÞ.ñ—Š5›È,meºñ|_©ë~&¿¶ŠßL±†ÃGþÒBÒÖt½2Íç¹y¾Ù¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†Š( Š( Š( Š( ¾&ý¥oÿÙóöcñï¾ k×7ø§ûFüO¶›Pøuû3üðf£ñS㟊4;F”j-›Âz;Áaà¿éimy&¥ñ âF¹àÏZ +ÈäñÚ-ä€z¿íaûBøcöLý™>>þÓ^2·kï üøIãÏŠZŽ•ÿe¸×Oƒ|9¨k6^³¸ònþ#Ô-m4->V‚TKÝBt(¿™Ÿø7[âÃ'öRý¡¿à²?·ÿÇ…Þøéû~~Ñ5µÖþ:ürøàï‡Ó~|4Ô!ðgƒ¾xK]ñÆ­¤é~ðî•âÍÅÖzo†´ÍFÞËûÃþ Ñ Ó–×Áºc(ï÷€nÍWø¡à?ƒÿgoÚGöBñÿÅ›[NøCiûBi?5? |O×t= çÄúŸ„ü3ñ/öuøÕñÿá‡ãð݆«®ØøÅþ2ð¿Œ5Í/D×®ü?¢j©¡ê¿dúWãÇ„³oŸ|qøíãÿü/øOðçE›_ñŸüSvm4N‰ã‚0DQÏy¨j:…äöÚn¢év·ÚÖ»«ÞXèú6Ÿª_ZZMù5ñþ Ñû2ÁH?oØ«þ —àÛQñ¾‰û#ÙXéþðgÁOø3â/ÁêÞñ7‰ñŽ f׳§|ý¬fߎøicм ñÃÁ¼Oðš-GÆ^*ðýœ ¤Kñ*ËÂÿ.fÐÞ-Æ»ã}ZO/HÒ< cž-¿ñðxvûjAd??àÚØ»â§Á߃ÿµíÏû@xSøkñþ Qñ÷WøëkðÿÄv·6¾*ðÁèµÏxáô~$´¼ŠÖm/Wñ&·ñ#Ç>$Øm¦“Ã7~¾¿ÙypÚn’ý5QEQEþ|?ðC¯ø'üö©ý–þ2|Ný˜ÿà°¿¿a†ðþØŸü/7ÁO|³ø£\ø“I ]jž6oÏñ«À—ºõ®§¦ØÏ§a2Û&‹ ‚þãí8?f?áÊðXïúYCöˆÿÄIÓú(kGþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWå?üþ ûÁ'¼ ë?´7ˆõ]{â?Ž,µÿ‡üok«|GñŽ•"ÛÞëMowug¥øgÃ1_Išž!ñ%þŸe}¨ý¦ÓI]J]3W]?Ù¿à ðQ¿Ùsþ ¿ð;Åß?ho‰Þðî¯aáOêÿ~]x†Âßâ/ÆišmÜú?ƒüápókZ¥Îµ«Ck¤\kQiï øt]ÿiø‹QÓtË{‹¨ÿ”¯ø ü/Pÿ‚”üPñïüþ _¤ê?üeñ;ã‰õïÙ›á¿L¯Ãë#H“ZÑo|eªx7YÒ.lµ/x;Yºø)áõ¹µÒ4KŸ^ëòh×Çá›çñ¿Ùwþ ýûmÿÁ̽gc¯ø]>˯h¶Z x94­GÃ:Ÿˆh ¿ ø¿Pø©­éWZ>‡o§i¶–·^þáÿeÏÙ[àìað[³ïìÕðãEø_ð«ÁÑÎt¿éêêâóP¼e“R×¼A­jWš×‰ü%ð6Ÿ#Íaàφ~ ðç€ü'c4‘AËiáß iºVm#Ámm ¼6hͼ’R(ÂúPÊzwì!ûhÿár鱯짥ü`ÿÚ£â¶û<|"±ø’5?1&þÒÿ„æÛÁñx£íþtQKöÏíO´y‘£ù›‘Hú²Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¨jº®™¡iš–·­êV>£Ø^jº¾¯ªÞ[éúf•¦iöò]ßêZ•ýÜÚXØXÚC-ÕååÔ±[Û[Å$ÓH‘£0¿_Å÷ü“ûi|bý¨þ<|ÿ‚~Â>!ûOÆoÚ7ÄÚÿ´þ«¤^ßÙCá_ ^›Ms¾ñµ¦¤Óéþ‡@µÕþ/|cŽÒo­| áï XyzŸˆu½p“ÿcï„ ?àä?ø.í{û`üwðO‰>$ÿÁ>dß è þ x/_ÖµÛøÏ^²‘<=à Két‹ûfðÿˆåÓ>&||×ü)¡ê–¢K\ðFã%Õt RÿO×ÿ½ xO¾ðÎà¯xgÃþ ðo…4?Ãþð—…4m;þðÖ¤ÛGe¥hzƒ£ÛYéZ6‘¦Yà ¦Ÿ¦éÖ–ÖVvÑG´ÄŠƒâßø&ßü×àüöTðoìµð*FïHÒoo|[ã¿ë²G'ˆþ%üO×ìôË_øó^û:Eios¨A£é:F•¦ÙC®‹áBÑck“§½åÏÞTQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþküû?à†Ÿà·ÿ¿eŒšüÓö1ý•þ=üÛãåý׎~2|WOøº/\?…#ñ…Žß¼[HÓôè4‹+Ïì†Í}vŸl›ÉÙõÝÿèø›ÿ=ø•¡üSŸþ [û6üý5í'Uð¬? l~xù|uiâ­"îÏ[ÝøŠeñ׎?³nt«È4(tèÌÚwÚb¾»o*ãÉßé-Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wñ/âG‚>ü<ñÇʼn~#Ó¼!ð÷á¿…5ïx×Å´¾N øcÃZmί¬ê—n9ŽÒÂÖiDQ$“Îê°Á³IløÇÿáÿ‚ÃØÿÁ&fÍUø{¢øgâíWñ³^øðÛ_–êîÆíÌoâOˆž&д{»MwRðï‡b–ÛLÓ´û;›×|W«éjÞ­´Z™‹ãø7·þ ñËöoñ_ǯø(ÿüCAðî£ûzþ×>"Ö¼k\-…ω~øwâeüþ6øƒ­¦éš}—†|ñÇž&ÕYø±åȨmo…ÿ,Úý¤HìµWB°Ò¦"yMú[Ú^MoSö£ð/íqûUøëTý¾x÷Æ¿±ïìߠå/ƯÚgÁ¡Åñûâìºæ“mªMð«ö\¸ÔaÖìþif•¨ÛGãÿÚ\Ñ®õËÎ|ðÃDmWBñG‰t½Ùwþ Uÿüý#Ž÷à—ì¿ðÊËÇRÈo5ŸŒ~8Ñ“â‡Çjó´Sê:ψ>0|Coxúî÷VÔ#:­õµ¾¹i¤.¥,³Øé–HR$ü“Ôàë_Ø"äEwðÏöcÿ‚‘ütðôìþO‹~~Ë:=÷‡%ˆÁkqmqÏŒ¾+x.öHo£¹chSO2¶šIã‚,äºÞðÇü_ÿÃkí2Ëãg…¿l¯ÙAuI¢/hÙ“Äe³Í5âDgÿ…_®|Sº‘^ 3| ­áû$¨ÄyðÞÁiý*Õ SJÓ5½>ïHÖ´Û _JÔ!{ký3T³·Ô4ûÛwûö÷vWqÍms àoŠhž6Ç*hÀ?f¿Úÿö\ý±|/e¿Ÿ >;x^Ñ ‹U½øsâý'ľ¹¹µµ‡‹4+{¯øGS¸Ž&‡Kñ>™¤ê2Ûp–­¤ôu~J|qÿ‚/~Æü`ðÞ±|Ðxâ'ƒµ‰¼S¥E.‘&³§Gr÷)õßì£âoÚuü=â†?µ·…ô9¾,|-mNÿ…çðòÅ4¿„´o†µh5£üGðŸ†æÔµcáÇŒwé–_~êòÞCàï=GÂúî¿àŸxjô}aEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@#ßðvwíy þÌßÿà™ÿu{ýWö›ý½~'ø Bÿ„Ã:‹[ë¯ð†ÏÅöö–ú¤vŠ÷ÐÚ|Pø­…¼¡ØÈmm|Wc¤øúÄÍwk£jšmÏõ7ñƒâ¿~|(ø“ñ¯â~·†þ|%ð7Š~#xã]¸ÁJð·ƒ´[Ý\¼XË!žh´û ͵¬mç]Ü­  4¨§ø±ÿ‚|$ý à°¿ðRO‰?ð^?ÛÂ>Ñ>øgáwìðý¢Šê 'ÄšÒéº<þ‘ìmäÕ¼?ðs@Ô|Qi¨x»S‚ÚÿÄ¿±ñâ ì7SCãÏê:ÿŠîm ÃÛé§U]+OK}2ÆÊÖ¯h¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õ9Ò¼qà­wľ)ðf‰ã ë>0ð3i ão i^ Òuø=üA§G¬h â ÒîmSÃí®iCªé «ZÚKN–;ë!=³¬§¨¯Áÿø,ì3¦Ýécþ Oû9üVñì}û`~ÍzvŸªøëöøOc¥Ý\øÃöpÒî-`ø—¦ülð®£Â?ü)ð¯Á¢óân™áÿE‹Û/¿ƒS^ðþ›«C¬hZ¿?à©ßÿfÿˆÞý•¿à°ÿü3û0|Zñ6¢Þø?û_x2êþóöý©o-ßʶ:ŽõdY¾|HÔ!â÷áÅ‹:"ê·Zf½Öô-À?Hþ<þÔÚ_ÂxKá/‚þ|BøýñÿÇúF§âO üø_meàÍòßLÕ¾#üGñϵ¿ ü<ø_ðçLÕ¯lô³­ø¯Äkž&Ôå›EøsáoxŠÊóE‡ÉÆ?ø)U¦Ý_Rý„ÿfkß™$gÑ<'ÿñV«ñemWÌ(Âþ)ý‡ü ð±õ ÐürK–{e}Yc7SZxÏí­áÏÛcà/Ç¿n¯Ø_àïƒ?k;ÏüðWÀ¿Ú+öTñ->xÃÆÿþxËâ‡Äo…Ÿ~|MÕ¢Ô|1¥x߯ÆoŠZw‰<#â"ö×â…â-t©S^ðΕmyð5§üköðÖu©< Á½_ðR9<øcñ'Ꮍmá_‹ß>+è–^ø™ð¿Ä—Ú|ZÆ•k­Ã¢êÞ#ð‡‰4h×k>ñÿïx×áÏ‹ôÖšO ø·SŸNÕ­´ÿ¢+ósö øQûTÉâoŸµçí³á߇¿ hÚKCøGà„øð³^oxSà?Á7?µ?†žÖþ!«‹/‰îüEñ§â_‰<}ãmÖËÃÓ6±¡øgÃÐI£ø^ÊêãôŽ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:×óÿžÿÊ9¾7ÙÿþÓúGðâ¿§Z(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿'¿à³_ðSŸ ÿÁ*?b~ÐR¿…5Œþ£kàÙçáï‹mõûÝ#Çßu+{Mm5‹_ Ëk¬CáŸøoKÖüE¯j'SÐlØ4ÿ·ˆ4ÍcÄz ¹þz¿àáÿÛƒãíÿûEø?þÿöµ‡ÅÞ9ñ׉4ŸÛÆQÃxþðøÒn|5ãO øïÅÚ5ö¡‰á/¼iã?Ž·÷¾¹{-V×Á Óu4Ö-|iá›Ïë_ö/ý”~þÃÿ²çÁ_Ù_á5’Ûx3àï‚´ï AvVUºñ¸ÆMGÅ~.Ô¼û‹©¿´ü[â‹Ý_ÄWѵ̱[O©5§—goo Ï×ü ÿÔñÿìóðOâ7ü#ö­µ½ÖlÛæM3â2ëþ#Õô_kº'ÀÏCkñÃ×OªY5ö£¥ø›âî³â#ãOˆMþ¯%Ü6ú/€4WHÑ5ßjö²ÿT”QEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E ÇüÛãOÂO~É^%ýŸ>$øëHðŽ«ûp.¥û(xzÒéî.u›ß üPÒçо9x“DÐô»]GÄ:ÔÞø'}ãoÁg iwú®¥â|3á*?íïè©,_?mßø'Æß‡'øSûRh¾>Ó¾øòÁôOOû^þĵÏÀ߀úΛqó%íÏÅÚ#àÃß…ZZ2ééþ*ƒÅöÑèófëš~¯e1ӯϞ9ý²?eÿØ[þ 1ûDëðPCðcWøéað¼~ÅŸ´ŸÄý'RŸá ß³÷‡¾øFø‰û>øWâD6º§‡¾ø×Ãÿ´VŸñ[âŸÄOëw>—ÆžøðÓZ¼¸×­|?¡'é¿Áf?à’>ð½ïˆüGÔo Ý…„oßM­xç·ýNýÿnÏÙ£öïð¡ã¿ÙãÇŸÛW~ÔO‡¾&ü4ñF™yàߌ{ÿ‚Pj)â‚?~%ø#À>/øSû0ü\ý¥|sñ#ö.økã]"ÿº—†fícÀÿ ôåÕtoj†-Cá¿€þ'ünÑþ5|gøià+3A‹Ãß>$xb ?@Òt¹,mOÛ#þ {ðÓöŽñþŸûMüñ÷ŠÿcOÛÇÂ:p±ðOí{ðJÒÂ?ê¶0$ßÁüzÐx7ö†ø]pÖZt:ƒ>![Ït¶öˆt;6¹‚äôþŠøWöñÿíÕ¯è¾?øyûz|øào‰? µHÐ>:üñ¥Ž½ðOöžÐõ[}ZGñÇ‚|©\‰ u­û6ÎÛÆ¾ ñΟö8ubÊóÂ:Ïya ýÕ@Q@Q@Q@Q@Q@Q@çÃÿ:ÿ‚ã| ÿ‚xþË>|Fý”oo ºý±>=øýê¾Ò5‹?Ú›áo‡>ê>#›Åözíåσmü=ñÇ©«ÙiÉ \E¬Íu6šÖsÝééW"yËø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPGˆuýš¹âŸjVš7‡|5¤jZþ½¬_Ê!±Òt]Ê}GTÔ¯f9ZXØÛOuq)â8bw< þ¿f_ü_ÿƒž¿à« ûf|lðÖ•aÿºý„¾"x£ÀŸ ¼/¥>—7Ä ô»–ñg¼1ö›+ÛícÄ^6º?¾!|r—PµÒtëo=‡4ûè&ºÑ>Ïö/üÑûX|Ký¤~8þÊ_ðCÙ'Æ:ŸÅÚÇÞ ½ý¢î<)¨\JšÃÿ]ÉoáŸøöÓIhoG†âÒF¥ñŸÇš<÷öÑø_BÔõKfÑõX&—úbÿ‚yþÁÿ?à›²ÃoÙCàtW·>ðEµÖ£â?k ñÄ_ˆóÇwãøÊy"‹Qñ¢£ìºtIe hvšG†ôÖþÌÑìÔ}§mmogooggo ­¥¬1[ZÚÛEöÖð"޼*E 0Ä«QF«hªˆ¡@j( Š( Š( Š( Š( Š( Š( Š( Š( ¿˜í{þšý”ô sYÐn?`ø+Mìú&«¨éÞi¿²¯Ã‹:îm6òk9.l.ö……ç²áimfxbi`xÝ¢Œ±Qý8Ñ@äqñãn‡ûI~ÔŸ·Çß øWÇ~ðÿÅÿÛâÿôoüPÐìü3ñÃz‰ú¶ãOéú¶»e£øŠÆ9–SOµÖu8-®UãŽöuPä¯fý³¿å#?ðS¯û?ÿÚÿK4:(ý4|mkû+þÕwf/‰þøMñÎO‡W>~ üLð–‰ãmþï Ûø“Áºî£àÿi7VwúV±£êsÂ?ã 2Ò÷HmZËÄZ–°ž"ð׈´Ý/åß…ßðFø%WÁŸÃñáÏì û3hž2´½]KLÖï~èþ&“BÔcšIá¿ðÝŸŠ“[Ó¼5{m,¬mn´ M:{EX£¶’(á…côÛöÐ?iëß |RðÅþËÿµ¯Â;RÓ¾ ~Õ? aÓ.|gám+U¹†ÿSð|%®G7„>4ü×µß|'øƒg}¡ÏwÕ¼=wáõè¿0|Aÿÿ‚Â~Âֿض§ü;Qý¶¼¢Gå¯íOÿØ×eñ6¡â=:ÌBTñGì±â‹ñ熵ãg4wž º±Ö4ÿC¨Ã© ¿±­ÅŰôQE1šü—ÿÅðŠ×âÏ€?m¿Þ ‘ž6ð—ÅŸÙ²OøŽá‚Ö{»ym´Ïë–&k{j—i¡0§…Ô¼Á4¶l?àéØóâlIeû*þÈ_ðQÿÚßÅ‹G£üý˜µ,5+©d¸·ãS›ÆGPµ´ŽîÒîÂk‹W/må,¥†‰àþš«Î|5ñsᯌ¼ñáw…~É ôoƒ|=s¢ø_N½ÔõÝcVÖµmCÄÞ7ñ÷¼CruüHø—ãmn{¿øïâ'ŒµV“TñG‹|C{y©êWM"H4ûK+P{¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¹¿x·@ð„ðW†õÏø—U¹tŽßLÐ<7¥Ýk:Ρq$qÃe§Y\ÜÊò:"$LÎê ‘ÒWòÿDÿÁGü]¡ø@ÿ‚CþÉ~ñ_ÄÚËöÕÑtÛhß,‡Š|Iá¿„z®´KàaáÍ5 y¼Eñ‚ÏNÖ,î"]?:wÛzöâ!oâ-7S²òø6'á%×í¡ûTÁEÿà¶ÿôØõ|^ø÷ã/„.¯ôç?„¼9'ñÅÆa!’!mgà}oá7ÂÿkËuiaáÏh—Ú¶¥y¬Hµ*øGþ ™ûxsþ áû ~Ο²>qm¨ßü-ð¢ø÷Ä’K-§Š~+øžâãÅŸ|M`÷[ݦ‹«øûZ×çðÝäfëKð×ö>“4³½‡œÿwPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬4QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯â×þ »ÿ‚~Á²¯ìAñ§á‡í#û\üø#ñoÛ‡ö‹ñD^ ø“ñÃþñžÕ¢ð5¦™­&™©ÝÁrÚuõΙ¨AmtÊ–[;„V&&Çõgû8~Ù²—íƒcâ½Oö[ý þ|}Óü w¤ØøÆóágŒtÛøjó]†úãF¶ÖeÒn.ÆmN 3P–Î9Š´égpȰô½Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@GÄßè? þüAø¥â©$‹Ã |â¿øŽXL"hôè7þ"Ö$ˆÜK¸‘4ý:áÏ<0†Ë,i¹Çñ—ÿëü2ø•ÿÿ‚†þÙð^Ú+á%·„¬|z>þʾwˆ.õ[mö=ü0ñšøh«YM«Çðÿá_…´†^$Õô«R÷ÄÞ%6›Õ­úé_¤ÿðtßí½aû%Á+~)|9ѼKi¤|Wý°™ÿg¿éL·²j—µ¿²ÉñÒò´AXGðÊ}KÂ××7×ö‘]x×Kˆ‹©®!³¸ý4ÿ‚L~Ê¿°ÿü{ö>ý˜5›8ôÿ|6ø;£Ü|@±†K™ ³ø¡ãëíKâ_Å;kyná¶¹’Úˆ¾1ñ 9 ž7ŠXØI•€ Ðùë~Ùßò‘Ÿø)×ýŸÿíÿ¥šÆ~Ñ?| ñsößÿ‚‡|OøaâÝÇŸ øræåµ?ˆÿ®5%¼ø-ã{ø4}?WÕ<9àßiß µˆòéIkᆶ±×ü9­j_&ÿÁÂðTïÙçöÃÿ‚sx/ö,ýо'iŸ?jÛ·ãÁφ_ðÎÞ ¸‚÷ãoÃè4é.ñƒþ0x$&øMãoˆžð¯ÃíCÂ/³ÑüC¨^ê´Vú}ï‡l5ëëoÛÏ_¶/ìŸÿTÿ‚yü9ð¯ÆßŠ_쵿ÙóöfðÂÿ†_ !Ö¬_Ç?¼IðëáÖ™àŸ è^ ðB<%Ô´ïë$ê:ïöM¾ i“^k>!½Òì,îçˆõKÀþ4ðÏÄx?â‚õXuÏx÷Âþñ§„õ»e‘mõ ø§I´×4-VÝfHåXu .úÖî%–4$ÊQÔWÉ_°'ûÿ„?°ŸìWð›UÕ´Í{Tø_û%~Î?õ-wDÔìµ½Z¿ðWÁßøjóVÒ56æóNÕôÍFãL’òÃSÓîífŠêÖæx%ŽVúÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?‹_ø6ïþ ÃûþÕ_±ÆŸ‰ÿ´ìðãwÄ8nÚ/ÂñxÏâOßø«ÄQøwI‹À×zfŠšž§i=ÊéÖ7:ž¡=µ¨*)o.T[?ÕŸìáû~Ê_±õŠôÏÙoö|øQð OñÕÞ“}ã?…žÒµñÇ…þ(éÿ ou™ï>x§C¾Õô›7ðïŒìõ«› R{Ѭéâû>«á¿iw7ºUÏþس'ì9û7~É_µí£~Á¿±ö½«üý~6üiÒ´;ŸÙ§àô–úÖ¥ð·á§‰¼sc¤ÜG„­¥xu­ +9R+‹y&`“DÄ:€~héßð^Ïø6?GøÃ¨~ÐÚGÅÏZ_ÇíZíµ_ŽZwìûBXüaÔíî¡û=;¡ñ2Ûö]‹Æ—Ü@Ås­ÉÐ.EdùkæoÛCþ aÿÆ|PðWÆ¿ŽÂß²ígûXGðÃÄ3ü:ÿ…Çÿáø‹ã|Eñÿ‡|%scð˾%ñ¿ÅOÙëà '‡Æ§k¢èóÿlüEðÕ®áøå¶³Ötµ†ÞHÿe?fŸø"güGáÁß xcÆ?±çìŸûDøöþ|Wñã_ůÙçàÇÄ|Gñ÷Š™uŸøžÇPñ‚¯í|5á-GY¹¹›ÂðŒ7üáö°Ñ<1¢XXÛ'_ñsþ¥ÿ©ø¹à=kÀóþÀ¿²7ÃÙõ†ãKñ¯ÂŸÙ»à—€|oájÂAu¤k:V±¢x uÓïã‚êçÃ>'²×üâh"mÆ>ñ‡îïô› ­?cè~>ýexcÂ>øá¿þÍ_¼[áï|2Òìô?†þÐüGð»ÂÚÆ“á‡Ú.Ÿþ£ø#ÃV–ú7…4»ô=?A²°´¶ýÌ)_Jו| °Ñô¯‚ô¿xsÂÐ4ß…_,4? |>Ь¼-à/ hö~ÑíôÏx#Ã:j¦áßh–QÁ¦xkB°D²Ò4k[->ÕV xÀõZ(¢Š(¢Š(¯ÌÙ;þ “ðöÉý¸?m¯Øëàæ‹ý¹¥þĺwÃ;|g³ñ=¦£ xÏâ/‹õ/é~6ðV [i@ÛÙ|4Ô¼)‡}âgñè×#þÚŸ´Çìcÿ)ý›"¿¿ñŸÆïø/ã/í«iËeuaá¿ 6¥¬éÞ ÓõŸ’Yìí<)¤é¾.øÁâøî¦ÓV 3Lø=¹ÔµÌVÿÚsºF$ޱdz»»DE™Ý˜…UU³’@üaÁ¾~Öÿn¿ø*—ükþ ñ& ZÖÏâžµû-ü¼K™n#ÓtÍ;û*ÞýìlžûSŽÆoüð¯Â Þöû«{¨¼eâXlJÀóþþøß ~øá—ƒ­ÃÂ?|áŸxZÅÝd{/xGE±ðþ‡hò*F®ÖÚfŸk :DZBÁ£±¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†¹ßøKÞ>ðŸŠ< ã &Û^ð—<;­øKÅ:á”Zk>ñ›s£ëzMÑ‚HgÚŽ™yug9†X¥LÆ9ðâªZ–¥§hÚuþ¯«ßÙiZN•eu©jš¦¥uަéÖ0Iu{{u$VÖvVvÑKquuq,p[Á’Ë"FŒÀøÞñïí»ÿŸÿ‚ ?gÏþÅ~ ÿ‚ ~ÄžšM'ömý¦<«xÏIø«£|%…ç‡Á¿~:x›Â^ø©oaâOèÑéž]_Å?t…ÖE‰’ÃÅþ*†æÛû/Ø?gOø*ükþ á©Úü/ø ÿùÕà™_|K²ø¡ûi|k×<]ãßø7ÁÒ–‹^¸ý4|,ø1¢x³âÍå«>Ÿá·ðÇŽ|/á½YÆ£âvÓ"†û]Ÿ‹ðxÇücá‡ÄøAðÏíoñ¯Nðî£w¦§Äo„Ÿ ~IðÿÄ2Ù]Oi-χ.¾$ünøoâ‹ý:FƒÏ´Ôgð¥¥õ¬Ð\ÙËðo„¼á{i,¼3à è>ðíœ×7³Zh^Ò­4m"Ú[Ë©%º»’ >ÊÞ'¹¹–K‰Ù ³Hò;1é«ãø'WÄ|dÿ‚}~Ÿ¾%ë÷>+øñSö7ý˜¾$|@ñMäV·~%ñ·Ž> ø#Äþ+×î­tË[-:ÚçX×uKýFx4û+K(e¹hímmàXâO²(¢Š(¯‡?kˆ^5ñ6·à¿Øëàwˆ¯ü1ñ—ãÞ™ªêÞ/ø‡£Æ$¼øû7è7ÖoÅ‹pܲKm§xû^þÓ·øcð¸nZã⇈áñ›é:Ç„~øõ,½ÿöƒøíð÷öeø1ñã·Å=Fm7Á´?ímHY[µî¯¬j—¶š7†¼)áÍ62&Ö<[ãOjz7„|!¡ÛŸµkž'Öô"Ô‹Øùsö?‡Ãþ ðÿŒ~3üvø“ð¨þÓÿ´†«¦xçã4ZWÄ_jú/Ãý/Jµº²ø]û?ø7S›PFŸÁ¼%|úÝ[%µ‡‹þ#êÿ¾+G¦éwÿu;?Ïø7«Àžø_ÿ”ÿ‚ý|7ø XxWÀÞø§àoxCÃZZ:iú†ü=ñã•£iV‚Y%™¡²°µ‚Ýdži®%Øe¸šYämÏø.Äù¾)ÿÁvÿà„±6¯¨yß¼3ñWÂ?µG‰ü#24úOˆ)üg˦^\ÞGoŽX¤/k$ªXØ®¤ù§üÇI»´ÿƒ­?àŒ0¸0Ç kß >øwK¿i•bºÕ´_ÿ´ÕÝå´n؉ØÅãmÂHï<—ÑÆ‹¹£ó?·*þ<àÙ‰·ÿlÿø.Gì ¥Ÿüý·~"øÛá.ò®Ÿ¢Ú7Æ?‹ÿ |xºNŸwwsse§Mmà_†´ñE9¸’òcwt²ÝaÕüFÿÁ»ZMÞ«ÿÕÿƒ„¼i§o<7cûE|lÒeÔí¦Yíä»ñ_í…ñVмÑo†ho¬<-¬\E2JUãZ?1²€nTQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óìÿ‚Á ¿doø(¯ì±ñ“ö€øÝñ#ö¨ð§Œí?l_Ÿ£Òþ üf·ð„[EðãøSQ±º“C—Âã6¯4úýê^ß Ð.!ŠÒ1fÏû=ÿžÿÁ9¿è·~ßÿø“vüî(úu¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðËþ:ý¯î?c_ø$í1âïø¦o |Kø¿iáÿÙÓáMå•üšf­sâo‹:‰±ñRèš„)$öš¾ðƒLø›âË)­„w(þcose6ËÛ~Çþ ûéßðOßø&ìùðÊa#|Dø±¢Ù~Ò_e• £ø¡ñ‡Ã>Ôo4¶Ó\Û¿ü žÓ<ðå¯`ºžZO>±E –Ð~ÁÀ¿<-ÿ ÿ‚§Á,¿àŽŸµËOÅáïÚÇâßí[¡Å¦Í­iú>žt­]²Óîmå¶›GÔu? ü ±øÏ¯ë:]ÂÞÚ¥¯‰ô›m^M&Üjoíva·†+{x£‚#H`‚X¡†”$qEHãQ*(  IEPEPEPEPEPEPEPEPEPEPEPE~mÁEÿà–ß³çüçCøY |}ñŸÇYü!Õ|U¬xj_ßaøuwuâû=ËSÄSËáï VÚ´ 6Ó¢T¶6’ËvååóðŸ•ÿñ ïü›þ‹wíÿÿ‰7gÿÎâ€?‘?Û;þR3ÿ:ÿ³ÿý ?ô³C¢¼sâOÀÿ þÍ?µ?íÉû?øQñF¯àσ߶/Åÿ‡ÞÕ9ø[Àw> Ôµ-Åöþ3ñÃé>ŸÂº¾ŒñêúW‰!×.ìdÐõ-*DÔ¬uEµº±uºŠ&AÿõøÝû(üMøà¿ ~Ìš‚>‡: —…¼}û.évš_„þ!þÎ^6ðìº'Šþ|Møn«gâ/ ø›ÂºÕ»é7š–·¦¬~)‰,|O¥jšÞ®izÅÿÖ×Â-ð§ârøýÖ?·Ãß/¤q§”Â'Ãzñ#¸Õ’M(ªèÆõ˜jHúyý±ßÌùø_ÿ~Ë?´wÁÿ‚¿¿moÚ£þ ;âïÚÆ¿~k?gñÅ¿†Ýx{Æz…4ÝK\ðU¥¯Ä¿ÿƒ-?à›Vñ­÷þ<þÞøÒËÂ^#»ð„Z¯~kÚdž(·Ñï&ðüz–‡¦~ÍžÔu›Õ’Ño4?^Ñ/us%¦¯¦Ï4w€N°  í¿aØ¢Ûà-çõ–ÿ²GìßÁ‹ÿ‰«¤'Ä‹ï„ñ|ðl¯> §‡­ltñ½Ïƒ×G›Åk¡ÙYé ¯=øÓmmì„'ÖõñGüWÁ>.øiÿæý€þ|@ðæ¯àïü?ýŠ?eoøÛÂ>!²›M×ü-âï | ð&…âOkšuʥƟ«èzͅYN‰5­í¬ðJªñ°kÐEPŸüRøOð³ã5ß…¿þ|?øÁðËÅÙŸð“|:ø¥àß|@ð'ˆ¿±5?ÄZ7öï„|Y¦êþÕÿ²m~Üøë¿WÇ¿eÐä›Aýü3¡ë—Ÿ¶¶±ã‰-û7áßì½?Æ x¢÷\š×÷:—ˆ|'aàý&îãûWRñ,>õŠù›þ ïÿ‚vü[ýŠ¿gŸjÓÃ?µ¿íåñ£Yý¢~4xBÙíî%øu¤ê7šÖ£àO†ú¥ô3^5æ¹£Oâ¿x£ZF¾™4}OÆ×>e{ÍûPÔ  (¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¸Šß¼)ðcáwÄŸŒ><»›Oð?ÂøÇâWŒïí­ÚîâËžðö£â]ÛÚ«+\Ím¤iW“En¬­4ˆ±†õ6¿ðuíOìïÿŽøŸðûKKÙ?d?Ùžk)´ýá‡ÀïÙøöÞâa<ƒâŽ¿¦§‹>*H’m$ø‹¯x™´ëfiMŽ›öK<ël²¿ÞQEQEQEQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« PÕuM7CÓ5-kY¾´ÒôÂóTÕu;ùãµ±Ó´Ý>ÞK»ëëÛ™™"·´´µ†[‹‰åeŽcy•T‘~¾[ý¸þøÛãìSû`|#øi<Ö¿þ)þË´߇÷6Ò<7þ6ñ¿Âoøg“ÛË‘IÐ뺥„‘H’Äèꬲ#ÀùÀøÕñ+þÿ‚±µßÿàš¾ ø3ÿøý…5™.î~|Rø×«Þè?ÿi/G$¶zWÅImôï…¿ Ö.-[Rø¹«êÚUÕ†—ðÂZ±ÜÝø«Å®î"ðÆ— iö„×2jFK‹qa ÜÑ}I£êúWˆ4/^е-cDÖôë-_GÕ´Û˜¯4íSJÔ­¢½Óõ ¸າ½´š›[˜]âž c–6de'F¾Uý„þxÏàÿìCûü%øŽn[âÂïÙWöyøuãÃy»ígÆ~ øGá ø Ýn’fûI×4Ëã>éeo7vds–?UPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@zŸŽþ2ÁÉ?ð[/èߢ]þ ‘ÿµøÉ¤xËTñ-öžÒÙ|EÖ<3â»{™o›g5¾©â~#ðö„t-B{ðÇÁ3YñUͪøûKDÕÿv¿àå/ø(³ûÿÁ4üsmðî[Ÿø^µf´ß²ÿ–үa‹^ðèñAsãßiÖ1Ⱥ¼òxoÁZf§£hÚ†—Z7|[à[—hÖEßë¿ð@¯ø'\ßðMø'Â_….Ñÿ²~7üOÇÇOöóÇöŽ“ñ'Ǻ>^ϼ.Ò|9ðÆ›áÿÞAç^Ù¦½¤k·š}ÝŶ .&ý¥¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿV(¯0øÛñgÂß> |]øéã‰&‹Á_þxûâÏŒ%¶›ˆü-ðçš·Œ*xö¾øÍû[øÇþ _ñ;Àqê_|_â÷°ÿ…;à­vÆæI­¼W¢ø_þÏ‹Rë¾(Ю–ÒëÃ×z—ïtk6±ëÖzñ ¦‹©èÞ'üãñÇþ ïy£~Ø?ðXÚ÷㟆|Qñ"Ú|=ý?g«Ï è> ý–ü∟WðÃ;-â…|m¤\x¯@Ó/ìì¼qkðêÛUÔu[K¨uø—P ®nø/ÿìøËþ uâôý¡¿à“¿¶í ÿ §‡¼­[Æ?²ßí5¯øÄ?j=Åâ}S៊u¿ø+á¶Ÿà k_ÒâŸOð‡ÄË¿xºÿÁ:ü–7ð›;¾¹ˆú¤¢¹_xÃLø…àøûEƒQµÑ¼qáOxÃIµÖ-EŽ­m¦x›H³Ö¬ Õ,–YÖÏQ†Öö(ïmVy…½ÊË–@›Ûª Š( Š( Š( Š( Š( Š( óáÿ‚~Ì¿ðZ¿‹Ÿ²ßÆO~ÀðRo„¿²À”ý±>=éW_ ¼kû:|/ø§¬ÏãË7ð¤Þ ñJø›Æ ¼k«%–­§ÝhVi‹¬-¥£ésK œs+ÍýxÁ8> ÁKþ è­à¤¶ÃÿÛ\×õ_ Ü|(Õ<ðwÀß¡ð&•§Ùë±ø²ÃRµðO€<¹&½yu¡\ZϨE©IbºdÑÛÉj·2¬ÿ—ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ò—þ gûrÙÿÁ=àš¿´§ÇûkÙ­¾!^øJ_…`²º[MJŒRo xGTÓæ‘"ÞŠóTø™¨ÂÏ—‚u[{7kù-"”ù²ý©~,ü/ÿ‚ÜÿÁÉŸ±‡ìÁð³ÄŸð³eOø'Vã?ˆÿu]>-Noë>ø©üCñ=3í=;Ä Ô|wá¿?o]M¦éS^M&a-Ôß³äÓ\ÉgfÐÛ¼òË,“4fG‘Ù‹éÆŠÿ#ˆ¾øÏàßÚ“öáð¯íñIø¿ñÛÃÿ¶'Åý+â×Å ÃÚg„´oxòÍ<;ˆ¼S¦xgEÒ´-'B²Õõ–î 3NÑôËKDE œ¡^ÍûgÊFà§_öÿ´þ–htPúS~Ú_·ì©ÿòøS£|ný°~(Éðሣ¡¨é–·ŸŒ?ÿàâ¿ø /íð#ãgìÿãÛ²î×Â?>|Hø;â››Ù›öÂÖþø›àígÁZäöE¿gå_µÅ¦kwR[îe_9S$kõãöòý„>ÁA~|"øWñ£ì×ß¾þÒ? h=o–‰ˆ)xãÿõKý?ÁžÜø£@г'ûF¿¸µÖ´ÿUÿ‚ ~Çv_±'ü¯öMø[6•™ãŸ|?Ó¾;üYapnn®>$|i´µñ¶¥g¨Ê’=“^øGA¿ðïÃâtÌéïmá i!žýÞ]N÷ð»þ qgÿ ÿ‚èÁ.à”º.©¹ðïà–¸Ÿ´7í9 éZ¢ÛÍö”6µ?ëû™>Ç«Ùüð WZ3êXüe7†Ý¢žÖEþÕ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþcµïø*üêÃ\Öltø OöÆ‘eªê6š^¯ÿ {ðò×ûWN¶¼šGìÒY—·ûu²Esä9/›å±ÊšþCÿlïùHÏüëþÏÿö€ÿÒÍŠñŸˆ¾5ø§ñö¤ý¸|yñ¿áoü)‹þ.ý±>/ëÿ>ÿoÚx«þ¿Œ5ðíÆ·àÿøI,,µ¿ìK×’ËûJÕV¯/ÍŒaE®=|¯ûtø—âoƒ?bOÛÆ>ßÿ —Ÿ²¿í â_„ŸÙJï©ÿÂÍоx»TðöjG,÷ÿð•Zé_cTžk,,±’~¨¯žk¯ˆ>9øKû(~Óß>!¾%ü3ýž~4üAøx¾ Ónõ¼sàφþ%ñ„†¹£Ø]XßjÚA×ôÝð¬øŸíç\†;-ÎE¿)u{}2›‡î¼qÿ¶ÿÁæðWŒ!ðÿìq…5é|/â´OÜþÓ_µŸÙü5«É¤Ý¦›¯ÜküpÖtŸ'G½0ê2ÿièú¶²Ù¾Û¦ß[y¶²þA~Éß°÷ü¯|,ðgíû$þØß°ìeð“öŽðfñ¯Ãÿ³Fyãßü?øwoñZÎßÇòÉá…ÿ¿fÏÚoÁ?o|C6¶%Üø‹þ ûx›Ãöÿüe>»áÏ x+ÀZ7‰üA£EáÍJMODðæ¯/üÏÂqiZö«d³Øi”ž)ðÔv:…ŽӸƒFXŽ£lýC~À? nþ ~±GÁëÿø#Ç—ÿ ?dÙ¿á­ïŽ>k²ø£á¿Œîü ðsÁ¾¹ñ_ÃïMa¥Mâ/xŠm)õ k²éštº¾ƒya¨Iaf÷Þ?­ëàø$ïü¢Ëþ §ÿfûÿë:ü9¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ²>¸ø={áÒ>%|,ÒlgÖõO‹‡‡¼gŒüá­,ë:'߈VrjË¡þjüTøÑû'|pÿƒ|¿kŸþÅw~·ø ¤ÿÁ/¿j øSÀþšÎ)~&‰û.øòΆ^+С)á¯øBh¤Ò|E¤kvÖÚ·ö½ÅíÊÏöµ»Ÿôgöéý¬¾~Æ?³/Å_´&³áø|!¦ø_\Ò´êóÛË«|añn©¥^[xჼ<ÑÜßx¯Å>¾hô-N°¾aÝΣ¨Ço¢ØêW¶ÀNøOJð®…á_ èžÓ|?£ø'Gðþ¥x;Hðž§øWJ𮟧[Zx{Mð͆:E‡ìtˆlítk=.(´ëm:+hlcKd‰GA_,þÃ>ñï¿؛ö<øañRK™~(|8ý–gßüH–ñÚK¹<{ᄾð÷Œ$º‘Éy._Ä:v¢Ó»’Í)fbI5õ5QEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñÿñέÿoÿƒŠ¿boø'ŸÃi[ýžÿàœþ1Ò>;~Ò÷–‚ú¯„5øKUÐ>$|Gðö¬m#2]i—ú‡ð÷àM…Χs¦›ã¿øºÔYÉm“j?ØÏÇ ¿f?‚¿hOŒ¾!¿ ~x#Ä×Z¶µ¨4q麉b’ê:Þ³wa¤éÐO}{o ÿ+ðiOÃÛŠ_ÿà ?ðRïøN;‰ÿ¶Ÿíoã5°×nî“Wš×ÀÚí׎µ]׺„wZþŸ¥KñâN»§km>­,~#oøXÞÛ´þ²¹pìŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXkÅÿiºìÑû;üzý£üU¤êúÿ…ÿgÿ‚ÿ¾6ø“BðÿØŽ¿­h |®øïXÒt1©]YißÚú– ÜYé¿o¼´²ûlÐýªê<ÉSÚ+çÚ÷àußí;û&þÔ³]‡ˆ­¼!ûBþÎÿþYx²óN—X´ð½ßÅŸ†¾&𷈮´˜nôùµKmm}5)ôè¯ì¥½ŠÙ­£»¶yDÈüÝþןðm7ìyÿ½oÛ;ö?ý¢>%~Äú×íqàm3â?¡øq£Ûxçà×Åm'â¶kâsâ-GáÅ—‹ü5¥ß‹ì5ùïŸÂ_5üDÕüAñ+Q× °Ó>iÚ‡|IÿmΑsáo Kã8tBËè9¼Mñ_þ ³ý„§ðÞ³¥|lÿ‚†~Êþðþ“¤|Ô¼?£èZwŃ¿µÕ¦´ÓæÕ-´Iµ÷Ó`Ôe°²–ö+e¹’ÒÙå0§ÑóìEàO|-ý‹ÿdO†_ þ"Ø|`øiðëö`øàO‡Ÿ´¨í"Ó>(øÂ? |'áÿ |EÓb°½Ôìb°ñ¶§éþ%³ŽËQÔ-ßSmïná <ŸOÐEPEPEPEPEPEPùðÿÁ¿à¾¿ðOŸø&¯ì·ñ“öuý§5¿‹ZÄ‹¿ÛãßÄhmüðÎóź1ð߉ŸÂšn—#j°j–h·­uáÝHOiå….Þhúðÿ‚pÁXÿdoø*–‡ñ[Ä?²~§ñRÓ~ j¾ѼjÞ=ðMǃ&Š÷ÆvzíöˆºlWצþ6ƒÃº‰º‘LbÝ„*C~_Ëø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEáµÇß þÊß³ÇoÚSÆÉþøð›Ç¿u{ /†šúÄ> ðÖ£¯Cáû[Ói~Ðj>!º²ƒCÒü« ùäÔu X­ìo'’;i@?’ÿø9³ã/ÅßÛ?ö–ý¿à„ß²ôKã?Þ$ð‡Æ_ZÞyÜ^ðŠêþ Ó|-eâ¨m_:^‡á DñÆoXßË£>‡¥x ïM°¸þÕ°]CúÔý™ÿg_…ß²OÀ/„ß³gÁmMá—ÁŸh^ð¥­Ô–÷­Ý–‰e´ºßˆ/­­laÕ:ð½—‚þ(iþ;ðî¥/-~!xâV øCIñÞñ.·â=Â÷^(´ƒA]?HcT¹Òu/ͯøbOø;3þ“/û"â4ü!ÿè1¯êæšî‘£É#¬qƬîîÁQAfwf!UUA,Ä€$$^5ÿ‚xÁÓßü⯇Þ>ÿ‚¹þÅ^1ð7Ž|;­xGÆ>ñì±ðcVðÿ‰¼/â-:ãH×t oK¼ý‹¥´Ôt­_L»º°Ô,®b’ ›Yå†Tdr+ɯ¿àš_ðtgÂÙ“ZøEá¿ø+Çìçª|2ð'ÁÝ{ÂG„äøo¢ßøÊ÷Áú?…o¬íü1kñ[IJæ¥ñ*F].!£é~%¹ñ|ºî’¦ÖKMRgnÑ{¿í1ÿhÿ‚ÂþÖÞ+ño‡¿à†Ÿ°=—Å€~×µÏ Cûjük¾ðg‡üñ‡QðÝýÖ…¯ê¿³ý—Äïˆÿ <­ø2Ã_¶žÓHñŒšÏSÅ0ÚOq‡´8ã!ðfŸø+wüGö9ñ¿…ô/ø.Ÿì/eðçöpñ†½¥x^OÛ/ཿ…|GáÿƒZçˆî¾É¡êŸ“áÄ_ŠÞ´øu¨Ëi¥ÞøŠð5ç†<ñuqmâ™äKýéÿ‚TÙÝéÿðKßø&í…ý­ÍýìûÙÞÙ^A-µÝÝ·ìõðî›[«i•&·¹·™)à•X¥FŽEWRÞÔÔt‘HÝdŽEWGF ŽŒ+£)*ÊÊAV‚ iÔQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_ÅoüµûHx»öÓý¦ÿcßø ×ì¹â/Äß¼ â¯Ú¼2uhtßx&úÅ5 èÞ2¶³†â_ øSÂÿí ãm$Ïu¦i:_‚|¯\[\jVÖ§Lþþ/|Nð·Á?…~2xæúÛLð_‡þ1ø“âÍFîòÓOµ²ðß‚<=¨ø—Z¹žúúX,­#‡NÓ.®.æŠÞ7Í"F¬Ãùÿƒeþ|oý´iÿÛ{þ ³ûNh ¦»ûPkZ—Â_4_o¼Ñü3áÝGFÒüX|-s2EöO x/AðO€~ øwZ’ííf/x¶ÒòKHðë`Öì¯û8|;ý¿g/‚ÿ³‹{¸>|ø{á߇Þ—Q‘fÕ58tK$Šû_ÖfEH¦×ü*ø—ñ ÆZ—¿güh¾ñÇì•áÏ‹÷Z¤š§¦ø]®ü(t_…·÷Zíà¹ñ?€áø«^è׺„°ÙjúO‡môOi½Oìÿý¼~"üOð/Ä¿ø-GüWÄß¶‚~x‹HñŸƒ?dÏøÛâ>»û?xÆúëjñ'ÅâÝá凊ì¼9oa©[xkþœ_Û7ˆ,µ¯Oá´ÔôAðOí;Çš?ìûiþÖ>'i²7ìݧ|FþoÛ‡,~ ø2ÛÅÿmóÒ)þ×ÿ ZÚ<裗Îßæ">T}sEQE^òòÓO´º¿¿º¶±°±¶žòööòx­­,í-¢i®n®®fd†ÞÚÞygžWH¢‰IQI–z'ÇÏÛïöºðÛüVý‹tÙ‹àìÿ®Fo~ |Lý­<%ñ{â—>>xdŸô‰:oÁ߆^;ø''Ÿ†^/:ŸÃÍWÅ?üIã_x^];Å:¯Ãÿ ÛêöZyûö¢øA©~П³7íð FñdÞÕþ8| ø¹ðƒJñÕµ´—· Ô¾%øÄ ±ñe½œ7VRÝÍáË­j-b+h¯-$žK5‰.­ÙÄ©ùyÿ&ÿ‚vþ×ÿðMÙsÆ¿kÿÚsLý¡üA¬üO¾ñ7€tŸ øƒÇ>0ðo¯&ÃLBð߉þ#èþñK¯ˆ®í_Õ|9¦xkú“Íýý¡w©ëµø|ÿ‚Ë|^øKûxsþ …ÿNø#ðïàGÇߊ¶Úv¡û6|øâ?øƒöký¡¡ñõÆ‘áHÓ|miÿ §€øv{¤–ÏHŽþkyîõÏêÍe é·Çi«jói¯üžÿÁÕ)uñ—þ eÿ_ý¾A£ûRZø¿^×ã‡F’Ùõý7Køñ{àÝŸÂGSå›MÒ´]sá§ÄÝ}/õ*ÂÆÊÛYÔæxí-îæCÁi>"Ëãßø8ÛþGû4kÝÏáO‡¿…hx4“徚þ,ñwÅÿYèú«Û\[Mm-þŸyû xH­µ¦‘'†þ?üpøaâ‹«{K;h´Ëi5}"‡³GÚ*Eáûh­m¤·…¨öaEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§ZþCÿàØoÚ¯ö^ø3û|kð‡ÆÚGà'ŸIûw~ÒZÄ~ø•ñ‡áç|DúEí¿€!³ÕDñGˆ´½I´ë¹¬îá¶¾[cm<¶·Å+¼…þáà°_ýçì‰ÿ‰'ðkÿ›JúîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ð+þÿ‚´Áÿ¶ýŒ.®~ø¯JÓkÏŽ—«áOÙÛD¼Óa×OµÒ5] o‰5=2ê)lF‹àï êÙö_.¼eâ? A­Ý¬Z¬–@‰ðW_Ú3ãÏü»þ }£ÿÁ¿b/ŒÚ¿Ã¯Ùÿ὇tïÛkâ>‘£®³ákÏxR°Õ¼[kâ­4]ø{Y×|?ðwÄÞÑ>Zè%Ñl¼CñSĚƛ©}³NÓ4ÍJìö&ý’>þÂ?²§Á/Ù'áÛeðÁOéÚŽ¦"MSÄ:Æ¥ªj^&ñ‡‹uXíÀ¶‡UñŒõÏx«S‚Ô X/õ‹ˆm”@‘ùÿëÁ)/ð_ˆôøOÄŸ·wÇmcþ(𾯧ëþ×´‹ëk-SEÖô›‹½7TÓ¯!ešÖúÆæ{kˆ™dŠWB (ý_ëæÏÛ/ÁÚ7ÄOØÿö¬øâ?ŠgÁxëöløçàíwãF·®ZøcFøC£xŸá‡Š4MS↯â[ëÍ>ÇÃÚg€,o§ñ]þ¹yck¤Úé2ßÜ^[Cnó'Òuâ?´ÏÂY¾>~Íÿ´À«{½:Â?>+ü%‚ûX®´›)¾#x_ð|wz¥ªCp÷:u»ë+5ì í5²KÃ!`ŒüöÿÁ!m/ø!ìQðoų—Â/ÚCödý—üo¨øûVøñ«Áž2ý«ü㯇SüLÕ´mFÔï¾~ÑZïuo‡Ÿ~&—á­6ÃáȰñšø¶ßÃ6ºaøá⡯ؿêwÄø,üÂ-ë:e–­y¦ÝXÙjÚn»¢üQÔím*úXn–ko´¼ÂÊvP„õcöøÉâïÚ/ö$ýŽ¿h?ˆéxóã·ì¯û=üdñ´^²›MÐ#ñwÄÿ„žñ·‰#Ðô뛽BâÃHMg\½]6Ê{ûÙ­l„0Kwrñ´ÏõE|Ñû|×ÿfØëöNýœ#øëÅZ寀>| øy§Ï¬üNøóñƒ\´½¸ð¯Ãé6Ð]HoõAaw­ë÷ÁÞÓõŸx†âÛGÒ.¤¯}øãX>|<ñçÄ[¯xÏÆ6Þðgо–º‡ðKàö§xVÒmGIðtvÞñÏĈDO¬FuME¸—MÕ|Yâ/þ4ÿÁ`|=q¡ÁÓßðE?ˆš”«o x£áïÂÏé²¼raõï|oøý=Ÿ‘wiäø—áËtP€Dó«Êâ92š¯ÿYÿ‚¼ÿÁC|Yð‡ö3ø“ÿGý¤ÿeŸ„þ>üðÇÆÿŽž1øoûKK¡xà–ŸñÁ>%ø­=ÕïˆþxÃÚ"ê¾ Ñ5MoZñ½–Ÿm¨Ü2ˆîžÚî×öcþ IÿÝø—ûixcödý¢ÿeËÏéÿ¶×üÿãfƒû@þÎÖ>,ÔÆƒáO‰1iž!🈼eðÄ^ È45ñŒžðÕÖ…ªßŸì5Öthô~m#@ñ.¯â-ö⿉ø7+AŸÄÿð[ø8SâÖ'ÚügûJüTÐcÔ ’¹þ!~Ö|K Iʱ´~n—àJs±¬ÛdŒºÆP«@çüûÆ7 nOàŸ?·î§ûZ]èrXèÿ³g‰f‰þðŽ›ñâÑmì¬üQûZêÚû$/Û-zh[WñLJ¾5kíሮµm3Â÷z¢ ¸Ïø"üCÄÿðMßÙsÅV?õý#Æ_µí1ñ?_ý ¿iïèyú><ñIÝeà\¬‰y¡ø6ÎKŸ:ým–=KÅzߊõ-Þ“kjû5EPEPðÏÿõÁ!àœ?·ìmñŸãGíWû-øKãÄûoÛ[ö…ðT>-ÖüOñH¼Âúø.ûIÒ§…|e é†;½kS™&ktívë,ò"D±þïÄ8?ðDßú0‡ø]üjÿç›_"Á§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€|ðf±ãêé^]¦—¤Ã¹,4›d—T×µ«×´Ñ|?¤@ÂãW×5 ?M·ýýÔuüMÁÿfÿÁp?à¢?à·ß¶ïû»_ƒžñΧþÉß ¥ñ%¦«ðú_|?Òôß Øiíá­J+ýCRðßÂMDðö³©]%·†4Oü^Öîuÿ/W›NñF“ÒŸðsOÆ/Š?µ÷íIûÿÁ gOê~ñ7í/ã]âŸí}g{¬húr|?–÷ZÑ<§x‚óM/»á/é>ø¯ñ[ÆžºÓµxÍÏ‚¾ëöê6¶Q×õ›û5|ð'ì¯û>üý›þ[Éoà?‚? ü%ð×ÃMq¼w×ÖÑít³¬ê¿dŠ i5­væ õ­nâbK­Zþöä"ù¤n¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ãÛþ çû~ßúg4oÛà_‡þ7iŸ ïõíOÀ¶šö·ã-<=âk}2×]¸¶x“òÜ6£o£i‘J·Ò]G´CDÍ!„ÿâø"oý?ÿü.þ5ó۪ͯ(ü–>8|$øuðöÉý¿~ ü#ðŧ‚¾|0ýµ¾4ø+À~°¹Ôo,ü;á}¼?c¤i×zµæ¡©ÜCeip¤×÷×wNªiärX•èß¶wü¤gþ uÿgÿû@éf‡E« y‡Æß‹>ø ðcâïÇOI4^ ø/ðÃÇß|a-°ŒÜGáo‡>Õ¼aâ -įFdÒtk¶ˆK"Fd ½ÕrÃÄÿm/Û¿öTÿ‚y|)Ѿ7~Ø?døGð¿Ä<Ò~é^(O|Lø†³ø×\мMâ]+G›HøWàßëö1ÝèÞñ ÈÕïô«])¬¢°ŸQ‹PÔtË[ÏÆÿðq_üöˆøñ³öñíÙwk᎟ >$|ñM͇ìÍûa ë|Mðv³à­r{"ß³ò¯ÚâÓ5»©-÷2¯œ©’4ò4ŸðoÇø+½æû`ÿÁb?kߎ~ñGÄ‹iüað÷ö<ýž¯<3 ø3ö[ðŠ"}_Â? ìµÿˆ~ñ¶‘qâ½L¿³²ñÅý¯Ã«mWQÕm.¡ÕüSâ]@6¸}»à¿ü³ã/ø%׋Óö†ÿ‚NþÙÿ´'ü&žòµoþË´Ö¿à_üý¨ô[‰õO†~)Öü ெÚ€5­KŠ}?Â.üâëÿëòXßÂlìZúæ.¿öoÿƒªÿà’z×ÂÛ~ѵWü!ü3xGÆ·V¿i½{Â_u …Òî>)xãÿõKý?ÁžÜø£@бu&› %îÛÈ<5¦h¶·*³[ºÐ:(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Òöòý„>ÁA~|"øWñ£ì×ß¾þÒ? h=o–‰ˆðömg¤h>д‹;=/FÑ´»;];KÓ­m¬lm ¶‚(— ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_çÃÿ:ÿ‚Nüuý´ÿe¿ŒŸ¾ÿÁW¿ooØ¿Ãöÿ¶'Ç¿?ÁÿÙ³âŒ<ðîãPÑ—·>1—IмwáË&ñ·±oe©Ý<Ï5¶§$—¬H±ÿ^ðNØâŸì!¡üVÒ>'þßµwíÙ?ÄWÂz–«þÔÞ9ñõ‡ønÏ]µ¼Ó|7ˆ|Uâ‡Óì¼HúŽֳ«Ù­Äú>žÒ¤æ(Ì@¥ÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE|}û|þØÿ¿`OÙã—íañ6îÒ=á?‚µWEÑn.!†çÆž:½OìßxJInm Ƨâÿ]éZ,1ÅÅ,k²øOÁzæ·;Üèž0Òõ]o¢ÿƒ±†ö c²ÐõkKÿë+áÿ€|ð§Àž øaðãÃZWƒ~|:ð§‡üàèVËg¢øcÂ>Ò­4?øI´RE¾¤i6–påŒvðF¥˜‚H_EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEüÇkßðo¿íY¬ëšÎ¯oÿÿÁZtx5]WQÔ Ò4ߎÿáÓ´¨o¯&ºM°…>+Æ‘YX¤«kk",pEª(ä?öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯ø‹ð«\øûR~Ü?|MñSÇ|Að×öÄø¿àígãÅ RóZø‰ñ'PÐÓöW>1ñ¦­¨_jwºˆµÉ"kÝRîëP¼žk™]丕‰bPúãÑEQEQEQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP^ûO~Ò_¿cÿÙÿâÇí3ñßÄöÞøQðoÂþ0ñn¯4¶iuq»Cg¤xwA·¿¼°ƒVñŒuûÍ+Â> ðò]Ãwâoëš'‡´ò÷ú´oîõþ¿´­û@ÁÐðT~É_ ~)øo@ÿ‚VþŸ¼+¬|EñG‡¦“ÚÇÄm.ó\²ðÿ‰oôG»Ó5/xŸÇÞ7ŸÃ¾?ÒþÝêR|2ð®‹á—ñ†¤©ªiV%õ_ø&LŸ¿à¼ßðZ_ø+Ä߇ž$øgûþÆ:gˆ¼#û-hšÌ–P cÄ:}ö­Ã#PÒ/nõ‹}KÅÙxÛ_øŸñ3Å –ëFѼcáß øB×_šÒ×H5ýÖד|ø#ðßölø7ð×à/ÂÛx[á§Âhþ ðv‡m‹M#F¶Xk“m´3ê:„Þv£ªÝ¥¼?mÔîîï5yØY Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþz?àá/ø+†¯ÿâýŸ|#ð{à.…'?mÚúçWøoð;ÃEßÚõŸØ^­¶ƒ¨üKo ihñ&µª¶±­ižøm¢Ù[Y&¿ãÙ®aÕ$¿Ò5ƒ?ྟðWO޾"ø·ðÓþ ÿ™ñµâ¿Û7㈴ø¥ñ#àψ ¼Õþè¯q©;|5²ñƒs1ðw‹ç‚Æ|Oñ6¡qioðãá´²_ù3øŠ]KÃ_³ÿðFoø%Oƒà‘ÿ²Wü( +ÅúgÄÿˆ^.ñ÷Ä‹_lü!„§ñO‰õ/KÒìôkky5MkS“ÂþÓôѦxf+ýHn:¦³ý›¥ß뺜 ðüÇÿ;øyÿäýž~|zøåð¿CðP?‰>Õ¯~ x¢ëRÕuË¿„žñV¡uw¡|+ðå½ù·Ñü?â ? >kñ?PÑt”»ºñcëž‹Ä> ðΑ¦j:‡ô³@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htPú°ÑEQEQEQEQEQEQEQEQEþ|?ðC¯ø?ü2߯Oøvïü0Oü3Ïü6'Ç¿µÿÃIÿÂÁÿ…‰ÿ …?á%ò¿áÿ‰oü#¿Ù¿ðfgý'í?Ú>oËå×õáÿàÿ‡­aüVÿ‡¤ÿÃ(ÿÂAý«á?øS¿ðË?ð—gc}]ÿ„Ëþ/øK?{öß¶ÿÂ=ýö/ÝùÚwÍå×åÇü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šùßö·ý¤¼û~Ì_?j?ˆ£Îð‡ÀŸ…Þ/ø‘©é‰}k¦ÝøŽãÚEÅÞàý&öô5¬:÷ŒõÁ¦øOÃâut›\Ötø 9)¥û]~×?a¯€><ý¥ÿi?ágÃû(eÔoŒêη«ê-ž…á? èvÙ½ñŠüG¨ÉŸ£é6Š7HòÞßÜXiZŽ¥güpÁ ?e¿ŠÿðX_ÛÏâ‡ü“ö䱓þüH“Eý~^ÞÝkþѵÿ ÝjWúEÆ‹wy¨Ù^YøCöv‡PÒ`ðkMáãeão‰Úî½ãU]Tðt¶úÏø'àüþ ý¦¾þÐ?µ‚uÙ—þ ;ðƒÆ/â†þ¿¾ñ/…üCñ'Á&[ý#U´øUâ8¼u¢|WñŒºÇÃôÑüiñ'Q‡Ãƒ´o_Ùø:å®® Ò÷µð·áwÃð—áO„´?|9ø}áý?Âþð‡,-ôÝCÑtÈD6Ö–––Éa˜‡¸»¸p×7׳\_^K=ÝÄóHßQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWó¯ÄYÛšÏü#¿ðéoøGÿµuì/í/ø[ÿÚ?Øßl›û3íþWî¾Ûö/#í^_îüÿ3gËŠþœh ò8ø‹ÿ ×þ“öáÿ†ÿ„þþâÿü.oøUÿÚð®ÿáblðïü$ÿð…ÿjÿÄËþßí/;û3íßé?fÙæüÙ¢½›öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ã_Û/þ ûÿÁ><#áß~Øßü%ðGBñ…Þ­eᵫ?x‡Ä~-¹Ða±¸×SÂÞ ðN‡âox‰tXµM)µy´mö5µ].;Ù “Q²YÀ>ʯá{þ ¿ûbø÷þ Ùûaüÿ‚ÿÁ;~1ü=ñ'ƒ¾&_ÜkÿµWÄojþñ×Ã[­OÁW6¿4¿ê¾2ð{x¢òÆÃà•·ÃýkÅ~2дɴíKRñìÞð•ÿ•¤ýš~Vý¾à­¿ðqÇÇ_‹?àšZÝÏì[ÿéÐô«ßüFøéãß _éºßŠü5­Agá¿èzÇŽ4=ÅSÜü@ñF®êÿ„þxTðÝ– xÿI‚T×ú5ÿ‚@Á?eïø$ŸÃ‹ |ieñ7ö¡×¼3¬øoâÏí7©i7š'ˆ|_£øƒ]ÐüCwàßøz]s\²ðÃû ß xXÙèV—wWZ…öƒ»¬_Ýj7R, §³À¯~Ì> ~ο-£¶ðWÁ/†^ øeáÁ²Ú=ÞŸàýÇE]Rî–sý£¬Ki.­ªM%ÅÌ÷:íÕÅÅÍÄòÉ3ûUPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬4QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óìÿ‚ÁMÿkŸÙöXøÉð§àüSö¨ý¶|?í‹ñóÅr|dø7ª\YøFßZÖ–wÞ ’¾ø©µô84«+Û×:š–‡Y´Ö ËýwÁ:?mÏÚöÑÐþ)ê¿àŸ¿ÿ`«Ïj¾Óü5£üq¿šúïâM®¿g­ÜêzŸ‡L¾ðŽÛÃRévvºˆX¯ƒK¬Z$Û é-Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Ïø³Åžð…|Mã¯x›Ãþ ðO‚ü?¬ø³Æ>1ñf³§xs¾ð¯‡4ëcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´Ê¿ÄÇŽ¿à°_ðV¿ø,wí+ûJ~Ë_ðDŸ xáìÑðïÂú„uŸÚóâ­éÚ¨¿µñ¡`|iá_ŠqÛë>ð§ñCLE¶ø[á(|®|AƒÃ¶çŽíoô;û9ï<úKÿÿƒ¢?aسXñ¯Á¯‚êÿ¶GíMáÍr[|5øa%ͷû/Ý¢Gö {âÜ:f³£êiwóG¥ê€tÿë£_I|9w‘{ÝÍæì-ÿ•ý¹?ஶݧüÿþ }àKo |)ðo•eð+ö,ñÆ“:¦³¡ØÆ5¯ i:ïÃûÉ&ƒÃtmO\»Ö5Æ /‹>)x¾ÛU‡Å¾²ðmÊoöÃþÿCøEÿ£ø nž0ÑþüMý®üxÖz·Åß–:-íãiëgp÷ÚÃ߇÷~%žîãHð¿„î'Í«èš_„ï|)ðÍ‚¾xÁŸ ¼¦gû7Â^ð¾‡àï éû’8Ûì:‡ltí*Ó1Å"Ò<¤q©ùQ@ì袀 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯æ^ÿ‚äÁD4sYÒ¬¿àÞŸÛßZ³Ó5]GO´Ö,õëÁi«ZÙ^Mmo©ÚðbP-¯â. Y@ŠUGûÄøþý³¿å#?ðS¯û?ÿÚÿK4:+Ç>$üKñgÆOÚŸöäø­ãÏ…(øã?ˆ?¶/ÅÿøŸàߥiü]ðÏZÖS÷—þ ñͧi-&¯¡O#Y^»i–¦‰‰µ„ü€ õÄ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+Æ~,~ÑþøsÅ>-øËñ—á—Ãx'JºÖüW¨øÓƾÐDÓm4ÖÕåžîÚþþ+Ï1ôÔû]­¤VòÞ_FÑ +{‡š$pf¢¿–/‰ßðvïüÏJø‡â…¿³‡ÁÛöÈñ.„·G­ü øS Éà}bÒÒò]>âûK»ñ'4¿ÏaãéŠ5&øjºT°jöm ü—DÙŸŽ~+ÿÁIàá?ø*WŒô¿‚ßðNߨCãü‡àæ«ýŸ‹?iÚ7Á7þñ3ilÚoˆo4¿üPðNáM.ËG½MN쟄ºþ'oÓ-¯ìµÝêøéVÀÚv»¯h~ѵ?x—YÒ¼;áýÊãRÖuÝwQ³Ò4m'NµŒËu©êz„ÖöVVÑ+IquukGa£ÜéÚ¶Ÿàd!y.®õÿhz]š´ w¨A-ݤsþUøWþ A|{áŒðUoø(Ïí+ûoxãLð¥Ö‡yáÛmOSðö‹¦ÌÏs™¦èž9ñ–½ãŸÅáM*)“Sm#DÑüÚ¯‰•õ{é>Ës¨éšììéÿÿ‚A~ÌÚ=¾àïØ[à‡u(ôí>ÆóÅ_ü3oûBxP¸Óî§½MedøÀ<_¤hÕÅÝÄ’ÜÞxCGðÚ4Kmaé¶6vÀËŸíóÿý»àãÓ¢þÁ_ðN/ØÃã'ÃOÙ[ÄzŸÃO‹_>;|uÓôŸ†ž"Õ¼§Ï“«\ë÷Òxæûáoü+;Yñ†›â«? x+Æ~5øñ ÏÂv·^Ó ªëzi°—ìû8ÿÁ9¿g¿~ÍŸ³'„äðï‚t{“¬ëÚæ¬t»¯|Gñ•Æ™¥èúŸÄˆºÖ‘¤èvZÿŒõ;DÒ,¯õ+}#L³ŽËLÓôí7N°Ólm,àûa·†+{x£‚#H`‚X¡†”$qEHãQ*(  I@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htPú°ÑEQEQEQEQEQE~[ÁU¿à£±Á=þü,´ð'‚¬>-þÕ_µWÆ þÎ?²GÁÍKR“KÒm7ÝÃç?•ö½QEQEQEQ^#ûJ|ð'ì«ðãí#ñ>-z‡Ÿ~ø“âOŒáð¾Ÿo«xŠOøWN›SÔÓEÓnï´ËkíDÛ@âÖÚ}BÎ9dÂ5Ä@îÝExì×ñÿÀŸµWÀƒÿ´Ãµè>|nøΈ> ‡Å}¾“â(ü;â­:OLMkM´¾Ôí¬um: «h5 Èâ“r-Ä n>Ý@Q@Q@Q@Wó³û7|møÏ®ÿÁÊ_ðQ/:ßÅ߉úÇÁþÄøš}_Ķ\xy ™¶Ôþ½ðßí­ÿSü[ø[à߈ à›ÿðOÝLø‘àÿ xßÂú¯‰þ,Ý\ÝÃáïhvzî—-÷†gý¤ü={a«ÿgê6²Ig¨ÜnÓîÖK{ëÙ$†€?«ú+ùLðÀ¿ø;“ÇVkþ8ýµ¿àž¿æ¹b–¾ÿ…i¦x×T±6ÒIjò^ÜhÿüC£Á òC¥jm|i¯ÎÂñâ¹·Ò^e–üEÿ‚%Áwm=FËÃ?·‡üÒ=?àÕÌwÚoмû/x/S𠧈t —Ö:^­áxsà„|Wçj× ‰üwmâ‰,¬ml®³«OeegjýmøãÇ^ øgá=sÇŸ Þ ®ôëgÔa[Ë<½éÓÄvÈ×·—0Ùlÿbßø&ì5ÿúðvá/ÙSörøsðæÿLÓLÔ~%6ƒe¯|gñˆ–çQ½ººñÇÅírïø¦¼ÕõY-4ëýu´Ù_6ƒám#Bðݵ†hüùiŸðVoø9öðOÂïþËŸðEŸ…ß toˆ÷ºeÕ·h‰—¾'пáÖä6º­çƒÏ¾xÏÁ‘Ù\ɯy©ë¶šÃÿc[ÊÐøjaqorié°wüoûD|2Ö¬¾;ÁY~þÎWºßˆ§aà_†ß þØø“KÑôÛë-KI¹Ó¾-üøCá?i6×WI-¤šUŒ.®®ô{eµñ ö¡§}b?°Z(ù7ð/ü·£k2ë~"ý¨ÿà¬ÿðSOŒß5æÓï/Ýzgyàïø4Gþ I¦ø‹Äž*ø±âÛö˜×Ñ'‘öíQEQEQEQ_~ÝŸ·÷À¯ø'‡€¾üFøûkãË¿ügý <û6x=>øOñ¢Ÿ>"èÞ/×|?.±m¨ëºV^[/ë#PÔḻ¹¶¬£O¸YÞH@>Ý¢Š(¢Š(¢Š(¢Š(¢Šø‹ö-ý¿¾~Þ?ðÑð¤-|ymÿ Çû@xÏölø‘ÿ χôýÎø‰àO³ÿmËá¿°kºßö§‡[í1}‡Sºþ͹¸ù·éðã·h¢Š(¢Š(¢Š(¢Š(¯çgþ ;ñ·ã?ÂßÛÛþ9àï†_~'ü:ðÆÛ[ðŸÅ¯ xÇÞ+ð‡>(øV+¿„K†~"è~Õ´ý3ÆÞ‰u=EcѼKk©éȺ…è[`.çó?¢j(¢Š(¢Š(¢Š(¢² ÖL‚ÓBÕ#»»{(ešÙ'’X@>Ý¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿV(¢€ (¢€ (¢€ (¢€ (¢€ þ.?౞9ºñGüçÿ:ø-ª$×ð‡üñkK®'KxüEñãÅ 2ææ(â¸@³G'ÀÏ MpDj·ImmѺ·O!?´zþ+à²^ºðüëÿ;øÏªG{‡<{ øá•tmȲ›Ä^ øÙñFâæÚÞáÄqËsŸ¼.uRg’ÚÚîÊ_$ˆ„àÚ•ðnî<+ÿ|ÿƒ…?g­=®Çƒ—öµø“ã} ÂYd¸·Òn< ûO|}ðDͳ\EÞ«¥ø£F†òV†y/SA´i®"kT[Ÿí¿ŠŸø6ß·7ÿ‚½ÁÁ´n“ïü ×µ7Ä_ èZ„Ñ"Zj—¿iÏ:X¡ž6š ït­Ãd÷ÑZ\Ì–±k¶/+2^ZHàÚµQ@Q@äÿþÿ‚ë~ØßðNÙ#âì™û;k?~j^0ý ¼Gñ†ïâ7Ä¿üEñ‡Äßk:Æ…ðïÚދ¥h)áß|7-æŸðþ×N#Ä:î»g-î·$ik7öEõ·ë½Ÿü³öךÒÖk¿ø8Wö²º–Ú nlÿáݵÝÏÙ.$‰^ko´EÿþÏäHZ/:0]›Ð`+ûØñì9ûüAñ6·ã_þÇß²ßüeâ[ùuOø·Åÿ³÷Âoø›_ÔçÇŸ¨ëzö³á+ÝWU¿›jù·—×sÜI¾FÀ®sþ×ÿûÿ£ýŽ?ñþ ÿó@Ÿü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿ëó‹ö¾ÿ‚¦þÑßÿkø'×ÅÿÁ\ÿeŽ~(ýœ|yñCÄ>øÕàŸØóö‚ðƒf+ïÛü8Rñ'įø£öPðO‰~)éÞ0_ éñig‚<ñ*÷Fo j¨éÚBêÖ ª¨Gü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34þ{ÿà¸ÿ¶‹~üGð¦§ÿúý„|e¦ø›À~/ðö¡á þ ëûX躷Šìu¯ê:m߆ô½gRý„4};IÔuË{™4»-NÿVÒì¬.n¢ººÔl`ŠK˜¾Zÿ‚oÁ[¿iÏÙö/ø5ð;áçü_ö@ý”|àøXŸÙ¾)~Å?´Å¿ø þ_ŠÞ:ñ~¡ý»ñ À_±ÿÅ/ øƒþS_½ñ¦™ý•ã½wû+GñŸ¢_fjZmæ§ÿ¦gü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34þ_ÿàª_´Š?ॳ¯íE¨ÿÁ]ÿdÿ|Eøið;Ç^ðÿík¥~Ç_´&‘ð«áf‹âñ¸½øwâ„ÿ²~•ãÿxƒÄc^½]?ÄšŸèúañžoÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ¯œ?lø,ßí_ñ£ö\øùð›ÅŸð\ŸØ£ãŸ†~!ü,ñ„µßƒ¾ ýƒÿjx»â^™¬é7w~ ðçxgáçÂÏxKBø;ãoØ?ö ñiš6“ogiàßøÓÂÿ±G¼9â}_CŠ5²½Ö´_xN¿š&ž×W½‰–fú?þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/úÊÕÿຶƱ µ­¿ü‹ûxL-ì3\êžÿ‚k~ÓWú‹Z…–9­…¯Š?àœúΛ,dJ·+;—žÚ×P·î_ôÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?€?ø}'íeÿKRþÎÿø©?‰_ý/j?áôŸµ—ý-Kû;ÿâ¤þ%ô½«ûüÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?Ï3ÇßðUÚâΑeáOÿÁ׿ômiú•æ¥ð«þ ÅûL|'ñl mçC#[ø‹á7ìið×Ä×öÉou<¯áÛŸYèš­Ìv§PU{{k«_‹~|}ø§ÿÁI¿h_êÿðqíYàOë_¼£éðPözý¤®>'ü|×l£ð8Ô~ø‹áÝ¥×ÄøoÁïi{ý—©x~pžÓ–Òæcudïþ ¿ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐùýxö•ýŠ<[ ëñüÿû}êš¿§]é:Æ›7ì•ûjÇ ö} ÛÝÚJöúd3,sÂGÚÄ®3Ãÿ ¿àÖ=[@Ñ­~>ÿÁo¿à¢Ÿõø´©tÿý¿Áÿ´‡ü¯I,“>l<#¨~Æ>1ñ‹§F^)£Òî~!ëªnâi§ºž)M²¡Çü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü'øCÂðc† ÓáÖ¾)øóâ–ZU¾suã ?þ se>¯y0E.½¨/€~øÚ-Vñá’æâ*ÛLÐÖk©ÖÓFµ·[X-½ù>'ÁŽ‘¢"é¿J¢ªÿ ?à¦9 ä“Ám$Œ@ùÙŽY˜±$ÿf_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐò=áÚ³þ  ðF’t]Âÿ³eí›]ÍzfñìiûcüAÕ¼éÒ$t÷~x—\[E¡†ÁucnæY-íâyæi;½öòÿƒ04;øµ/~Æ3ÜB²¢G¬Á8~<ø†À‰chÜË¥ëÿ²î§¦NÁX˜žk9Ë G*+¯õMÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ4Þÿ‚©ÁŸþÖ¬|Ká þÞñ˜Ó>›¯øoþ gñ#CÖ´÷¸¶šÎáìu]3ö>µ¾´ií..-fkyã2ÛO4Z)][é};þ$ÿƒq4{[;-#öŒøe¥ÙéÑÅŸi§~Å_´Õ­Œ6à"³·¶ýš"ŠÚ8B¨‰ DX€p+÷ þ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šþBÿà½_ð^¯ø$÷í£ÿžý«?fÙ£ö¬ÿ…•ñ·âWü(ÏøB¼ÿ 3ö’ðwö×ü!ß´ŸÁßøþ*?ü𯄴ïìï xW^Õ¿âm¯X}³ì`°ûV§ueeqú1û8ÿÁÌ_ðD~Ï_ü âÏÛ[û+Å> ø3ð¿Â~%Òÿáœ?kkïìÝþÐô}fÃíºoÀkÍ:óìzͿڬ.<¿:Öæx9[÷sþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šþ)à—Ÿð[ÿø%ïìëÿ*ÿ‚Þ|øÉûNÿÂðö¾øÍû;ø³övñoü)oÚÄð°ôÙ|y‡ÅWÿØ>øM®x›Â_ÙrxÓÃKö_èÞ½¾þÒÎmx¶wæ×÷“þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}¯Á¿ø8þ ÿ½ý·g¯ØçÀß³í;ÿ ;Å? ¿à£?³ßÇéð¥¿h_ÿ`ü)ð7‚>3èþ)ñWÛ~!|&ðžªeê>,ðý¿öw¨ø’÷íþv£ÝÁk{-·öµÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡ö¿ÿà†ð[ÿø%ïìuÿ*ÿ†Žý§á]Âÿÿ‚Œüqøñðþ,·í âïøK~øÃû7þÏÅ ð›ÄÿØ?Ú?g›þ$~&þÆñ%¦Ïôí×rîþÖ¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ âÇþ ÅÿÄÿ‚\þÒÿ¶Ÿü‡â×Á/Úþ_‡ß²wí«üRý º¹ø_$ïöW‹~è:ߊ¼Äðî²³<¦øX_±áôõ7¢ÝøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡ö¸ÏˆÿðsÇüß^øyãÍIý·¾×ªë^ ñF“¦ZÿÃ5þ×°}§PÔt;ë;;>çà 6Ðù×3G›q4PG»|²$a˜~ÔÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@ÆÇüÛÿÔÿ‚VþßðKŸƒ_³§íGûRÿ¯øÉáOüeÕµÿ‘ý£ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Úüý«ÿà·ÿðK߉ð^ø%‡í¡àŸÚwûköiýœ> þÓÞøÏñ'þ·í ¦ÿ¯üCøIñ—ðÿ„;VøMaãïlkž+Ð,~ÕáO k¶ZÛþÓª\ÙYÚÞÜ[k_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµú³®~Ã?±?‰ÒÞ?þÇŸ²ÏˆRͤ{D×?gß„º²Z¼Áf·[ÿÜQbFˆ)pˆ«Žwþ×ÿûÿ£ýŽ?ñþ ÿó@æ›ñYµÏí[ûzþÑŸ³†ƒãŸ‹~,þÛ¼eðÿÇžøuãè4ýúàðÞ¥¦^› cÃzf·¤Ï=•Õ¼òizÞ™¦êÖbdKÛyÊ+ýN~|&øWð_Ã+௃¿ þü&ðj_Ýê‰á/†ž ðç<2šÿ•öíEt iºV”·÷¾L?k¼‚âçʋΑü´Á@EPEPEPEPEP_”¿ðV_ø&ŒðQo„¿ nü㋃ÿµ‡ì¯ñ_ß´ì“ñŸSÓnµ}Á¿<)ªéÐÐ|_¦XÈ—÷^ñ”Ú‹¹6˜%Õ4=[Fðߊ¬ìuÕðüþ׿V¨ Ésö™ÿ‚¥ë? n|áø&³xGö¥Ô494þ+ø›ö–ý5اÃ>)º´[ñÓVѾ"뵉¼/¤ßLÞ$¶ðïìÏ¡kz­­Ÿü#W^%±–q¯×[ÿ—ÿ‚lxOþ û*Z|µñdŸþ-xçÅúçÅïÚ'ã-夶·ß>1ø½-]Õ Šêk›Û_èöV6‡,n. ²ZØÏ®ßޝëROúuEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ_ŸŸ¶üÁ_³Ä_ƒ_³Ÿ‚¼âoÚ7öÂý¢®o_àßìÓð÷Uд]v÷š¹›Å~$x¿ÄSÅáÿ…Ÿ|+ka¨GÆzê^\j—ö7:O…t/ßXêÑ造tWäOÅÏø)?Æؼø+ÆðQOÙW¿g¯ø¯Ã~ºý¥~þÒ´·Ã_ƒþ,ñ•ìw…áý ôßüý›Xh·-§k´/Å=6OŽ5ñL§‹-3Hø£x6×Qð‡tøŸS—Xñ'޼G¥]ÝȺ]®áýGÎÕntÓú(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿™}Kþ Ùû]iß¾7|+ðçüöáøçàï‡_´Çÿ~<ü°ñ7~|RÒ~|pø‡ðRóÅ7ž&ºøO§øWÀÚŠkßõ=?^Ñ.¼c®Ûi:¥ã\jöÐ<€颊ù“öLø—ûGü^øOkñöœý4ÙWÆÞ Ôîn4O‚ÖßtÿŒ¾(ðß„V TÓ.~!x«Aðdž¼+aãVä__\ø_ÃxOðþ™.™i{âK½lê–:oÓtQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñãÿ¸øŸ7íIÿ:ÿÁa¾.x—PþÜ›öwøU{û+ü3¶»FžøkÀ_|àoØh®¤·Ó~Óâφþ#Õ/Ý-ÞîãQñWˆdŽâÂKQ²¼þëøÿ‚è×¾ÿƒ„¿à¿z6°±ÛjW¿~8ø–ÖÔÈ<é´o~Ö¾(ñ.—x‘°I94ŸéJêMy "HÙÀ?£oø-G€´¯‰ðI/ø(߇µ˜m§³Ó¿c¿ŽÞ=….¢’X—UøWà=cↃ2¤S@Âæß\ð~qg)vޏ šhn!íåù›þ ´ý¢¼AûJÁÿdOøÃX¹×­6Ÿá¿ iÓ]ÚǨëú®›b×0 5?.¿c‰¿à¡ðP€ý²¼{û]ø¿ö$ðÏí ÛüPýž?g/Ùëá'ìáã{o|ñ4úÂÍKãwÄ/Ú3àÏÆüLñ7Œ¼,ÚwŒ5¸>›Òím|C†•5¬‘£Ù|ÿŽ|JÕ¼ ÿŠÒ¼/§<Égñ›öµø/ð×^X¤tIt/Âß¾0B—*² š®|(ÑdXäY\Go0Œ èÞ3ø·¢øÏÄ~$Óîu žê>Ö|3â=P|Gñf£âm*Áì@:KŸÛïâgìÕûxüý…?mo†²þØþñÆ­û)~Ñ¿|-â߆žñ7þ {ÿ|ø‹ðÃÇ>?ø­yáOYèšÇ†®|'ã ⟉4Ïj:ÖŸ£Üxoºž§cfß®üÝüUýž¾0ÁV¿à©°?íA'ÁÏ‹?b¯ø&¥ßÄ?‰ñŸÇïë¾,~ÑŸ¼{sà‹ý?Dð7Á?Á¥|WðÃ_ ÍðïÀÆ­âÿŠþðUþ¹<>'ð¶ágÌzìÒ%QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE`ø§ÅðG†ãUÖu{ùˆ"-7M´¹¼º”ƒåÁ ƒŠüœøY«þÙÿðPφ¶?´OÃoÚýb‚á—Uøào‚ÿ >üeøÄ¾´z?ˆh/üoÐ~-øLñ¯ˆ`Q©ë|àM ÷ázÜÁá/øûÄ>(Óµ‰mÿHh_ƒ>ý£¾|pýž|]¨êú?…><|ø—ðgÄú·‡æ‚ß_Òü=ñCÁzׂ5­GC¸º‚æÚ ^ÇM×.ntÙ®-® Šö(^h%Z6üÔÿ‚/Á"tø#ÏÀˆßtþ/ý o>&|Qºø•«ëú×…¡øá­×EÓ¼=¦éÞð¿ŠdÒí<àþ%ø“© c}¦xzþÏT¬éŸkþêh¢ŠüV׿lÿß°/í}¬ü5ÿ‚€ø›Jñ‡ìOûRüUÔ_öAý³¬¼1¡x3CýŸ<_âÛé®tOØëöžƒÃöZ~‹¢iVq¦|øí¬þ-³µx~"ë—ºË뺄?jh¯øýñûà×ìµðkâíûAüBðÿ¿ƒ ü?7‰¼uã¯M:iÚFœ“ÛØÙÛ[YØÛÞjúïˆ5Ý^óNðï„ü'áí;VñWŒ¼U«hÞð¦¬ø“YÒô»¿€?`¿¶í‘ñÆ¿¶Ä-2ïözý…|_à¡á_Ù ö]ñoƒ48~4|IÒg×t½fßö¾øÕâ «I|Qðþïź=•Ö‘ðÇàö“ª¦ÿG‰%ñЬuZÛÂþ&Ö?W袊þNà·ðZÿø(/ìiûGñƒàÏì1ãÏÙ2ˆß|/ðKÂ?¿jþÎþ)ø… x›Ä>ñÿŒ®/¼-û<ü#øñßÃsI™ðÛÄ6öž ø¡ã+-.ÖY4»¤ðŠìõa&™ýcWòÿ«Ê,¾ÿÙÿü,ÿÖuýª«úý ÉOø*OükÄ?±´Ÿ³Wìõð¾øûlþÜì> ~ÍÞñ¥ôöÞð±’ÿH´ñ‡Æ_Š‘éw–ž ›áïûMnÆîïKÑ$ƒTñ ôéegummiª]ÚEñCà'üáG â·ÁßÛÿ\ý£?h_øoRñ_ü(/Œ³—ìßá¿Ù«âþ©£YF‡>´øMðïÀß´Ã;¿‹iô øƒ\ý¡þ% 'W½°Ÿ\´Õ¬Rà/áGíO㛯‰ŸðyoüËᾺ“Mᯃ?³g‹¬ô-4ÜO ¨×/?g/ÚÃâÓkÑ­½Â7ÚßSÔ´ kœ”ŠòXÚÝÁ=ª:Ïý£ÐÁðM/ø(¿ø)¯ìðÏö³øQcwáÛ?®¥ øÛÀZõ¶£¬ü6ø“á‹aâïê—¶© WËgpÖÚ¶ƒª›[ 5ï k>×åÓ4·Õ[NµñŸÙƒà—ü/á·„þ/ø.ÓÅŸ²¿ÁO OûZþÝ~ÿÂeðÇâ?í)ãx7öƒý´~?|~ðg‹üRžøóû9xsáÃ|KÒ`‡ÀÖ‡ÄJæÉaÔ5ÏxG\–ÿÁÚGóñÿ˜ø—VÖ_þ Mû8x]Õü¥ø+ö›Ò|Ká gM_ÜxGVø²~9øëº<:Óê6Wz¾“oðo÷J5K ຓNÓ×P}F-ðÁûûüTø³ÿüýš´OÙÃöåŸþ )ûQ~Ò>ñŒoµ¯Œ~Íß´Wío üN¹×5뛽ßá¿Åÿƒ^ø¹¥èÿ×O}<øfŽþ'øuâÃ}qeâm;Âñi·:^Œô·ì/ÿ ¹ý£~8þÖß±ÆÏh ¿l_؛žÒ¾)økºž£©ü>ø‰ðëⓉ~|gø]s¯[ÙxŽßÃþ,ðÍö“{¯xSZ‚÷Qð=þ¯¤XÜkÚõ®±¦jw?§µøÿÇýŠ~;?üþ ÿlý¥¾ê<]ûf/~|ýžõí_ÃÚ·< ð ᧆüá ÄÿG„µ={Ã'Äoi¿ ü¨Ýx+Hñ¹'‚e¶ÖôýWV½½¾ÙþüPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_ËïÆo€)ÿ‚`Ám¼IÿTÓ¼â¿þÄ?¶×Á™~ þ×Zçßêž2ÔÿfOŠúsø_ |_ñwƒ¼-i©ø²çáwŒn¾hcÄ^3ÐtJËÃƽãOÆPØ É®ÿPTPówÿfý¸~~ÜŸ±§Ä¿ØKþ —ãO ~Úß´Ïí{¦hÿm¡ø¯ÚüGøkðcáç‰õ½$|Lø‹ñûâ§„eÔ¼ð—CÒ<5='Åþ!Ó|Yw®kÚ_Øü1ªYYêéoû û~Èþýƒÿc?ÙÓöF𦡳§üøo¥x_Sñ6i§CâÞOuâ/ˆ>.‹OLý†?øóZñ'‰ÎI.'µ]PAswyq·S}EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüÁ•?ò‹/ŸöÿÿõeZþÿioÚwö»øQâ}sÃ?ÿàšÿ¿j›;MÂÿ@øƒá¯ß±÷¯júåì $úä?>:x_âN—ý‘(jü+«»I܃¥½ô%§Oçkþð_þ ±ÿ’ý”þ)~Í¿à“ÿ¾$ÏãOÚÄ¿t_|.ýª`w†|MðãáO€¦ðø³öðëÃ%“ü4:”Z¥ýâÜ®¬-žÒjf˜Ù?àñÿ‡:·ÿà‘š'‰´è.å³ø=û\üø¯IoË ¶“©øGâ¿ÂHg¿‘Qŵ£kŸ´[džF‰úâÊØ9{„ŽOèsö(ÕìõÿØÓöH×´ægÓõ¿Ù“à.¯bî;Ùê_ ü)yjÎC4!`®ê 3 ¹ûTþÍ ÿlÙÛâ÷ìÁñ³J¹Ö>|iðf£àßAap¶š­Š\´WzOˆ4+É"¸ŠËÄ^×lô¿xvö{k»{MsIÓîn-.àŠKy,ÿb­?þ 'ÿíýž¼û|Cý“—¢ÛM`··q4š ã§ü·¿àð/ø&†ü5íÄŸ ¿eŸx«Æ—0D’A£Ûø Zý¯¾,o%F•m¬¯mu? éK-ÚÛ<šŽµkg™.¬äŸûV¯ÄïØþ ÕñgÃ?¶í3ÿOý¶ßÁö½ý¤´]áÇÃï„ßµËïø öTýŸ|?g¡Zi4ŸjzV‚‡}¨x{À–)ñ]݇…¼5{âý^ÞÏÃöºÿ‰o¬´ }B=GY»¶Ó­®fOâSúÇüéàߟ>=xsþ Íû1^üBøÍªÇoyâüRý™ü_â |/Ðïõ¿‡ÿ¼+¬ÅûbèVº/Ã/®©¨\éÚ£iQë¾'Õ|CãÏ kÆÞ$ÖõËÀèoöÿ‚ü9ÿ‚xhÿlOÚ«â—†~+~Ú¿´ ìÞ7ý­ÿk¯Àš‰gÝÕŠi¿ >Å«?~ ø8[èz‡´ek}GĤhW¼0[i~ð¿…`ëøÏðÃÿÁÔÿµ—Ŀ߿mÏÙö{øWûø‡ö„øâÚWÅ_|[û:\øþ|:ø»à1ÐRßOý©>"ëw:wˆì<,tmVÏÃþÔµkû ¹ì)lîo-®?³ +æ¯Ûþwþwãü6¯ü+ÿøeoøWúÏü.ïøZá ÿ„3l~Ûvÿ§ÿjý¿ì?ðŠÿ`ÅYÿ göü!ÿñUc×Òµùì§ñÃöÏý¬5_…-<#û2~Ë¿5KoØ«öHƒÄ~ñ‡…~)x‹Á÷öãý .<9ªjšo‰|A«<³Ý|ø=â,×àΜ²x‡Å:Ÿ¯þÙ§€4_þxŸÀ´_ìSâø+W‹¿j¯Á®¼Wâ}Gþ gàoÚ¿_Óõo üøŸuã¯[~Îúü‹K}"ÂöÃÅwÿ ¯õ Cöv›â~­ã/x3Áž&Ð>ë:σ|?¤ü@øaá¯ïF¼×ãÁÏ…ß´ÂïüøÕàoüIøUñ'Ã÷žñ¿‚!jw´/ì+á~È_µ‹|g¡Íñ£á¶“»¥èÖÿ²ƯÝ]Åâˆ~Ñïnµ†?t)ôoøB<7/‡ðÎŽú¿EPòÿ«Ê,¾ÿÙÿü,ÿÖuýª«úý¯ã¿þ ø!ÿPÿ‚±þÌ?¿f/ðJÏ‹~ _þÑÚÆ­GÇß?jOØFÖÇW²ð§Ãß‹?¬ô½BÐimcPÛ¬‰)­}³V—K¸²‡Mré­=Ë5¿ô#û8~Ô_¶Å?ø_Âßÿà™Ÿÿeë KJÔn|OñÄ_´ìoñKá÷†u[6âîÛL†ÛáOÇŸ|MÖ£Ö¯a‡KÓ¯-~ŵÍÜsjËaa ÷¨üÕ~ÕÞ»øWÿ–ÿÁ=~$k°_ üdýuùt-A`Sg&²ß³ßíSðm´¨'fŠ'šÇT²Ñ/µ( ¯uki®Z\yN—vqKýªWäü[þ ¯âOÛFãögý£?gŸø_áwíÃû üS´ø¿û8øßÆv÷~ñdi{¥j)ø3ñPhÁµ…ðBÒc¸ÕôûmKRðì^ >Â[-{^‚î/‹ÿÿਿ> xƒáÂø'¾¹û<~Ð<7{à›ï¿i_ÙÇÄ?³gÁ˯Ùcê|©|%ø“â¯Úâmß„¡½ºÖ¼+¢k?³ïÂÉõ-FÂ͵9lcV²ºü,ÿƒ?¼'>¡âOø,ÇË»—ÁÿjøO×ï7søÿã—/–Þê0ðMw—ñ£Ã³^à ÄÂnì$!Ræ7›ûT¯Ïïø&'üÛáwüö:øiû'ü0¿›Ämáµ»ñ/Ĉ–cNÔ>&üWñ$v’xÏÇ7:bÜÞ&‘i{5ž“áÍ ^_¾ƒáÃú%Ω«Ýé÷µ÷è QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWÌß¶í)¤~Ç?²_íûTkz~*³øðgâÅ8|#.¹ÿÊøÏWð†ïõOø(x“û#ÄðÉãz 7Ã0ëØ:ßöTÚª_dj^GØæúf€ +ñKþ •ã¯ø+o€f¯‡º¯ü+¶^$ø³qñgI³ø¥qaῇþ3ñîðúM>ðÙKáO |R·¾ð]þ•¨øˆYiž2ÔLÔ¼A¢éWÚ†‘dšÖ¿£þ­| ºøµ{ðOàõçÇÝ7Ãz7Çk¿…Ÿ®¾5hþ ¸k¿i_®<%¤KñMð­ÓOr×>±ñ‹ë6ºÃ\Ü4Ú\V²å,d`S¢Š(¢Š(¢Š(¢Š(¢Šùgö4ý§ô¯ÛàE¯Ç} Ã_ðŠhšŸÅŸÚOá¾§oÅâ_·é_i/‹_³þŸâÏí84½&ÿ„îÓá„>7þdžÞê/ÂCÿìz׈ÓK_j`SQEQEQEQEQEQEQEQEQE(ŸðTÿÛþ eû ÿÁR?à•ÿ ü)ûcxoIJïü+öÎð—ÃíSá ?³wÂ}'Ä~øy¡|xøáox_ˆúÅ—‹õïXx³ÁŸ­´˜üWcÿ¯‹4Û½3RÔ4ë­>ææÂk êîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( â¿þøýûwxö3‡áÆ—à…ÿbÏŠÿ|ð¯ÅߴωúÇŠ~5|\×ÃÞ%ø»á Üø¼áýᯀtýOá^§â¨¼gãsÄš–“á»(΋¢O¬ÙêßÒŸÂOŒ?ðR/üEðÆ‹ñ£öý›>|0¿»ºÅ¾?ð_íõâ‹^(ðÝœzuäö—ZGÃ»ïØ£á•¯‰æ¹Ôâ±Óå´›Ç^[k[¹õspÖkcuüÿÿÁêßò‹/€öÿ ?õjªþ¯~%üRð'Áÿi¾,ø‹®ÿÂ;áý_âÂ…º~¡ý™¬jÿhñßÇŠ~ ø)ð·Bû.…§êw±ÂQñ7â„|3ý§=´Z>‰ý¯ý³â-CHðý†§ªÙ~RÿÁZà¨ß?à—¿ |KñëNý2i_´Oƺw…¼MãO[ø7Ãz©à»ÿxÇâ šeÏŠ5O è×¾(Ó¼3cgsâM;˵»HîÍ¿Ý_í ñ/Ç?±¯Ã¯Úoà÷À+ŸŠ?>'|øCñ[Ã?³ý§Äï øBk©¾(i>×uŠ>4°Ñ¼7 ~ÑüG¨j3ë:Ž‘§¶¹,D:–¥g`?,ÿàèïùAGíÍÿvÍÿ­‡û>×êüïþL/ö#ÿ³Dý›?õMx.€?ÿbø8WUý±~.þÔÿ³dß°OÄ~Ô³ÇÄ ü#ÐgÍ'ã7ƒ~ xËÆ>1kÏ‹úOÆ=_ÇäžðW~|.ø®|+³Ñüwñ2ïÅ2ѯµ_x?ÃÚµïŒ|Kàß ø»ê/Ž_ðV?‰°×Å?ÙÛÂÿðQŸÙwÀ³÷Á¯Úoâ |ûK|ý§çøûðÃáïÄMFÑït_üu·ñÏÀÙ»_ø}m¨AóÏâÇÇ>Ò¬¬5}WPסÒ4mJþßòOþ ÌðÖƒuÿqÿƒ–üaq¥ÚMâ} öãÔ<5¤kN„ßiúŠÿiŸÛcTñ—o&p–šÆ¡àÏ ]Þ¡Rd›C°`WÊ!·?àõoùE—À?û?ÿ…ŸúοµU~ÃÝÁBjÿ‰8KûAx^ÃâþÑŸ³oÄÚ+^m"OŠÿ´®œ<'à˜¼ ûY~˲øCð4¾м=­XjqøÚÛ[?iúZxNOˆ??à ðLÏÛŸþ Gû+øÿöFøõûm~ÆúÃψ:‚µ{¿|4ÿ‚r|fÒ> x{Sð/Œô/iwÞÕ|[ÿ7ñ¾as{>†tZKï jf ëÕ•¯Ø¯. Ô->öøóûfXü5øõðÓöGøOðú÷ã‡íSñSÀ~$ø¹¦|9‡Ä¶^ð‡Ãÿ‚þ×4Ï kŸþ1üB¼ÒüEqàï·‹µ/ÁšøoÁÞ<ñ‡‰|U|šv‹á«;-_RÓ>qýµÿoÚÇö ý–þ/~Ôß¿aï|Pðǯ K¯Þh³—íSªøãU±¸Vv£SñÁø—û3ü¹ðïÛµ<Þ#ñƒ4߉Þ$Ð-"þÒ›áÝÎ¥©éŸŸŸ·GüëöªÖ¾.þÊÿ´üGöéðïø)_ìYûü4ýž~!øâoöhÑÿhÙ¸ê~)>Õüà¨àø‹sá 3ÇŸ|%ñAôøI|%â ø§Äv„Z<;â…qø‚Œþ-ÿÁN¿à³ÿ±çÃM@ÿ‚ÛÁ/~|hý„|q¦j? þ<ümý˜uû-N{o‡?mî|â-CÆÞÑ~%øïMû©m­*;}kEø+¦jÂþ×G±×,õ똤öÏþ 9ñ³þ ðKö6ý¢üiûø àíºxöwø£ñ7Ç~"|YÖ4ü)мáoø›Æ7 þéŸ5»OxòßÁÚ-Íï‚u}o↴m3Å72j:6¯mc$_”?ðn‡Åÿø(~‹ÿ†ý´_„?±ìûñcá ßü|m+⿎nü,ñι£ûV|l½ñUþ§ð²×ö<ø™i¥Ýè¾ »×t½>ñ7U>#³Òìµ¹îôIu‰4­/öÏþ CãÏ üSÿ‚:þÞ¿¼¬ÛxÀ¿ÿàš?µ'<â1*Úk¾ñì¹ãŸxsYµY’)–ÛTÑõ;رÇ(Šu"6T~wÿÁ¹_¼ ð;þ Ôý™>5üR×áøeðáÿí—ñKâ/‰¿³5oþß|?ý¨iOx»]þÆðøƒWþÈðþ‘¨jÙš•©ëÿgû.™§ÞÞË´ ³ÿ¶í‹ðöøâŸÚ3ö”ñ¢ø/áÇ…æÓôÄk[gÄž)ñ>µ3[x{Á~ ðÝ‚¾¥â_ë÷)$zv“cÉoÏa¢éš¦¥eòRþ׿ðQÍWáÅÇÆÏÁ/tUðÑ[Å:oŸ~Ùº/†¿lcÃm§>«k·Á-öñ§ÁKÝÙ5²¯uÏÚ·JÖ-µ)'ѯ¤µÕmÖÒç£þyñ?Äþ oÿ#ø!± øoᎹûHøSÄúv¥ãßêž/øYqñ'Qý ~ xFçXøƒàÍ#Å߯¼o øÃ÷mÆ­áÛx3T»ðç‹õý+Mñw…¦ñk0MŸð®à©¿ôy°þ+OöŠÿé±PÙÛþ !à_Ûoö/¼ý®bøƒã¶­Ú‡†Óà7‰ußüø‡¢|QÐ/ô«O|(øƒ©x¶æóÞño…muHõmBK«ÍOIÔt§Óõ/_ëv¹£ÞÞ~wÿÁñ…uïŒzO‹<¦ø†ßÄŸ<ñR_‹?t/†öþøi¤|6ñOtÍO‡Â³ü]ñ¯ÄÛßÜÝøÀú†‡àßëQÁ+?à—$ÿ‚oø“ö×ñ_ˆÿhOüj¼ý³¿h+ßÚPðׂ~_ü øð«ÄšåÿŠõ/h ðæ­ñ£ãv­qáû©|Iga¤®©â‡¿ÒôO éwšÍÈ›QoÇïø7þR›ÿ8ÙÿéßúÑ_·õ~È~Ô?ðS?ÿÁ?›Á>;ý¼¿fÍ;á×ìÅãOé>Ô¿i¿Ùëã»ûEøGà÷‰üA$ñøzo޾ ×~üø‰á?kR[Keiãxâ~Ÿo¬I§èºœ6ޱ¤C}ú­áÿh^,Ð4?x_XÓÓÄ]²Y…E˜Ý¬ÞkyÌW|-ÿ­üCøñþ»û9Éñ}Fú?ø¯ãÃÏjÚ›<“ê?|)ñZ¶ðô\HO§xjê}[ÁzZ†t²Ó¼3m¦FV;?¢Šüxÿ‚µÁO>3Á.¾êŸ¬?a~Ñÿ³Ç„´_Ïñâæ‡ñëá÷Ë_ø›ÆÞ4ºð6ƒáíKÁš¶‡âê6Rkw^ ¶¹ñ6“ ÝipÜøßKµU•ì5Vµý‡¯Àø:;þPQûsݳëaþÏ´ô¿ì÷ÿøÝûhü ø;ñö;ý“økAð§üþ ·¥øsK´Ñôû¯Øsö]ñ-Å¥’á›^ñŸÁŸxÃÅ:£©-›½sÄú_¾q-ö¡q (üýÿårOø+ý˜ÃýA¿àšt÷GíKÿ·øéû ~ܲìyñ§þ ÁâO x{öÖý¤ü)ð'à·Ç;¿Ú‡áÖ¥¡ëžÖ>,xᇈþ §ƒüàj–šŸ…bø‰á·ÃÿêÞ¼Ô´Ý{L³—Ä:Uãßgþ²þ×??hÿ‚±ñGìÙû kŸ¶/‰LÚœšçôŒß> jF•§X}²;Ë]Gâ'™oâ ýJQ%Ž¢é6òÝËtª%xRXÙ¿›/ø8ïþR›ÿÇÿÙÿê?úÑ_° _´ùÿbÿ‚¬XÿÁ_ÿf_‰´¦™ð:ïàŸàOÚÅ¿¬ü)}ñ‰WšÝ¿†>|+ñô^.¹Õmüàh4yµøš4©<9–±“h†õ|Az5²Øü1ã?ø8SÆ?à¡ ¿`¯Ûþ õã?Ù§Rø•ðÿÅÿ¬|th?üdÕµO iÞø›â‡v_~|*ð.¹ÿ +Æÿ>$|3¾ø%á?iþ3ÒÐ|WÿŠÿÁ%´¿évšÆŸkûxƒÄ¶ö—¨d†{ÁšWü[ÆÕA\]è~'дjÁ󈯴ûy`…Hì‡í%ÿ ý´ÿeÏ^5ý­¾#Á8´É?g‡Añ—t=ö»Ðu/Ú×Áß­¼‰µ¯kí¾KðVVðÖ,š§ˆt/~ÖZþ£aei{*…µ˜§AðÇþ ‡?í›sÿÎø'¥~Õ~·ð§‚|IãÿŒß>,j³oìûðïZñÿ„ôOh¿õéŸ ¾;øûÄÿô ëúf©ñÀž øE¯Ø|1¸Ôô} âŠ<;â-Hi6þÕÿbÿ”YÁK?ìÀ?lýg_ˆÕùÏÿ®øwDÑà†ß±î¥¥i¶Ö7þ/Ö¿i/x–êa.³­Û~Ô_<'¥xY˜5Ì^ð¿‡ô…d¿dÒ­T©ug`®ÿ`_ø*g‡¿l?Ž_´çìñ?àæµû3þÙ¿².«cÅß‚šŒ¬~&økRð®¬,?²~!|2ø§xÂ+ã^¶©£ÈÓj¾ð–­Ÿˆ|5zúSE¬b×ð§þ„øáÏ„ÿðPø77⟌SÂ? ?l¯|@ñLš&‹ªø“YOx7ãoìâ-môè6š†¹¯êk¦i·Ma¢èÖº®«t"±Ó­.o'†ícù\“þ ÅÿfðãÿPoø&ðqßü¥7þ ÿ³ÿÔõ¢¿`ýÍ×jø(„ÞŸâ‡Ãïø&¿†õ-£jö>!þÙZ'ßÚÇUÑ Ésl`øC¥üøƒðOLñ%Õ‡Ùçÿ„OÄŸµF‡©Y^K.‘©Ée©[=»z7ì ÿýÿà¢ÿ uÿˆ¿/ µøYñWàžŸã‹:5“Bú:k÷ÿÿg/Šsx¿P‚έ“S²ø©ã]sF¶¾•í»øçW²¹¸žïR¼’àúUý±à¢? dïüýŸ´¿xÏã÷ísûGÜê6ÿ¿f…M GãoYhé<šß|Yâ/jÚƒþü.ðä6·×~ ñçŒ5kkhì´rMMñ Þ‡ªY[|çûBÿÁIÿi¿ØsÀZÇÏÛ‹öðïƒfu¯é>+~Ëß´î§ûNø³à>ŸâVNñ_Åÿ…ž&ý›ÿg»ááK ZÿI±ñ§ð—Äß§Ó%½skeª"Y¶£üñþÏZ·í9ñ—þÙÿ‚ŒÅá/‰_~üPøgû7xƒÃ µÚà—þ>x[Iømáé¿f +HÑü à_~Ðß³N«¡ëÞ'ðLjïüoˆ¿á7Õ´±¥ë¾77Ô¯¼Qˆ4Oèïö™ýÿà¢?µìóñ³ögø¡ûe~Âñ|>øïðÃÆŸ üY{áßø&ÏÇ{_é:G4Ý}wÂ÷z×ü3^Ò,¼Q 5âk~¿Õ4=gO±×,4û»Í+P·†KI€=?öØý¹~*þÎÿ³Ž‰ûSþÌ_²•ïíËð¾x›ã‡ŒüIà/Ž¿ þÛøgá‰áMÆúWü?Œmµÿ‰6Þ&ð–¡«ø‹KÓ|ay¨>—áë7šž­ éšç?€ÿà¾>0øáûjÿ¶Çìíû j¿eø[ðw]ø½ûFø&ëã–£¡ø?á-ÍŽ§¬?‡þx{âFðÇ^&ø£ñ¿Ä^°Ñþ%_xcGø?¢xKÀ>ñw…µ_ˆž<ð½–¹¥^^ýeì—{û ÿÁþ-þȺ‡Å ŸŒóü ý„iŸGñ*ë£Áø–É~üMմ¾%ñ€Ðí´7S´Ðlìÿá%ÕÈ´Òà”Ý!Š?˜?àÕ/èÿ‚~Ê:Þd¶ºÄ_~ÑÞ2ñ\êK_±ý£þ)ü>¶½}ˆŒZ? xÃZp24¯²ÁqŽ8À?[ÿaÚßÃÿ·wìð;ö·ð·€¼oðÃCøÙáKŸÚxâ%‡Ø;ñÅ€Þ?ð?¼[û5øçÃÿ|áßÙÛOø=ñ3Ç8ÔtÏüsøð÷Äúž­ñkÂÿ[¾ °Õt¨t¿ê·Ú·ëÅüòÿÁÀ~ýº¿l_Ø¿ö€ý‚?eØ#â7ÆFøÁÁ[›OÚ¾;þÊ_þéIàŸ‹¾ø¹­Ø§†¾#üjð×ÄýCW·oCᓠǃ´Yu—Õ¬õÛÈ4ϲja~Æ_¿l…¿°ÃÿüKÿ‚w|fðßÇÙÇáÀ_„zwÀý?ã§ìƒâ-cãU߆<5áø«Äÿ¼wcñæ/†Ú.ƒáø­uÜÁñGÄþ×5 3NžÏDÒµM^{¿ÕŠ(øõÿ‚Eü ÿ‚¦þÃÿ·'üãçÆ/ø%—Å[¯‡ßðRÚWNøÍáéü#ûSþÃ:¾­ðwO?¾>øÍ¬k+ïZüI7}ƲŸÛIšÎkÁÿø6Óönÿ‚’ÿÁ2>x§öAý¨¿à´Mâí?®übo^ý¢ÿc¯x7ÀúŠþü0ð%ì^.ðv‰ñê÷â Âè·_ ᾎ_è^.¾Õ"ñ’4›¤4Ú‡õ³E=ß¿à™´7ì¥ÿ%ñ?ü+þ «cð÷ÆWßü??…?mÏØçâOŠçøy¥|b†âûHÔ[âOÁˆÙÞƒàïŠmªèú~¹{eã Oê:¢ø’íµûqã]fÈ}Ë≟·?í%á]CáOÿeˆß± ñž‘7‡øgàˆÚ5Ç…|{⿇Þýš~;~Ð>5ø£ã;/ jzàð‡âK„:[xôK[ñ“eo}±ôPÈÚ¯ìqðâïö Ô¿àŸzuö¯¦ü"ºý‘¯?c‹Mäû^¿§ü8›àÜŸíožT’ÏíZ½¯†.Eš×ϽŒ°’ Á—ð‡öýˆ?à¡_ÿà›3ÿ‚,|\ýŸtë¯jZƯƒzíµáŠ?î~ê?²—ÇÿøŸÄ¿õ9| 'Ž ý¤¬þ3]øâÄ] ÀÞ?Wà ¬j¾¹Ö¾&øjËI¹½ê^Šü ÿ‚½Á,<ÿQýt‡·~.»øOñÛáŠâìÓñ¿M·’êóá¿Ä‹8¢V©io-½Þ¡àï-¥…·ˆ¬¬®`¾µ»Ó´/iÍ6¥áË+[‰~ þÑÿðS_|?Ñ|ûLÁ;µÏŠ¿t-2×DÔ¾5þÍ?¿foÙŸâ6­e–²xÚú×ãÅ…>Zk¦u+ïiþ"¾‘-ä°éÏu IiêÕòÏìÕð¿â÷†n~'|Xý |M¥jŸ¾6kÚ&©ªx+ÁZε¬|*ø+à i-£øáûíoOЯüMŠ—zkñTðׇ5ˆ?ñw‰58´ xBÓÁ¾ ðÇñýÿPÖj¿ÿÁ[ÿàâ/ˆ?³Ï‚|)ñ§Á:í÷âãWÀkÿi~ø‡âý?Ä_´wí£?„ñÖ‡ã«ûÇø…ámcÂZ=¦¿ý°ü[ñ‡Œ|ðëÄþ/øðŸÅüa¢ZZÏ¡ü(ð_ˆ~øSÅ2žmFÎÎ{#ÄüYà_i³YÙÜ\ê²ËâOhÖ²ÚØOom<×óZZ\'ðH¿ŸðTߨöäÿ‚£ü|øÅÿ²ø«uðûþ AûJéß¼=?„jØgWÕ¾éçâ÷Çßµ‡Œ´ËŸÚ#NÛZhŸƒßê–çPKŸ Mo§xT:Ô `÷gü7àgüwþ çðúÓö4Ѿ jÿðNÙÇ Я¿iŸ‹¿~$|ø‡ûExÿÁ^¿ÒüAmðßá?ÂÿÙŸâ·Æoé6¿ˆl-ß_Ö¼iñ{O:¶›c ¤ÚT:aÕt~ÖþÍ?³¯Â¯Ù'à'ÂŸÙ³àŽ‚ÞøWðoÁÚg‚¼¥Ípo/†ž¯%Ö©¬_˜âmOÄþ§=ö½â-UâŠMW]Ôµ FHÑîYG¸Ñ@?ÿðpÃÛ[öºýˆ¾4~²OìMãïŽ÷¿ü?ðgYoöfO†ÿ¼¨øã÷…þ$k>Õt/‹¼ñWñÑþiíΑá)|+$>5Ó^M¨húÖ“oýQ@Ž_ðMþÚ?aO„þ8ÿÁ9>2|7øû$~È_¾èÖü|ýŽüi¥þÐ>2ø?à- áì~øu«ø_ãÝÝ¿…µ?Ûøv z+ŸŠ©à hí¨¾•qâ›Æ²÷ÿ> ÿÁV¾Áw?loø*Æ»ÿšøÁ}ðö›ýŸtš'Ã#ö±ý‚%ø•áwðç‡f-ÃÄú¨¼ý¥,¼/zº¤ÿ³ÍÌ·z5¦¼‡J‹Åpy:¦¬ú<‹©c´Páü¿þ ·ñ¿öÍ׿`oÚö^k´Wü“ö—Ñh|.ø‡®Oá/ ü^ðü^-øeãOø?Çi¨ZøkÄÚÏÂdÞjöi¢ËlÚ¬7Úž˜æÞvú“Ç¿nÚ;áOŒ¾ø3ö1ø«û"ø§Æ~ ñ†¼Eñ{ãwÅßÙcÄ6~ ·Ö4+Ë+ÝCà–ðã_Ç-WÇž~Ì¿³î­ð3Ä õ¿ÚÇöµø‘âWñ&‡ûN躗‰ôv°ý¥5? [.“ÿ ksc£^ëjuøEn ŸTÑ¿µã›NþÇh ÇOø(çm_°ů‚Ÿ?àœß¼uñOöºý•~=ü#×<1sñçö:ð”³Ç‰¾&xXøq¦Áñ'_ñÇÛmÅrGkâkŸ[·ÂKÏéwèï¥jÆ‹w}ÑüÙÿð'í×ûÿÁ>þ~Å´Ïìñ?áçŠg_ü}ñn‹ãë?Žÿ²G ø¡ðÏâÕæ¯£ü!ýª~K£_xz÷Â%ñ¦k:ƒ¼}má›ûÞ-“FÕtæû7„§ÔF™'‚ô»×û*Ú?ö÷ñþ‡…|%ÿîñ_Àωº…´¶¿ÿho_³_ˆÿg¯Þ̲Áÿ .Œ¿~0|IøáñVËH`º•—„õ_…_î|W¶ ûÅ~—:æ“ú;E~CþØž ý¦~ ~Àº×ì“û5~Í¿?ooüVýž~;ü+ñ'Å ŸŒŸ³ÇÃ7â¼+s§Þ|Fø©}ñ«âwÃù$_ˆÞ/ñ÷мWð¯Ãþ%Ò¼-‡¨x~'Ã:;xRÖãäø Wƒo¿ØÇö<ý™¿`Ú—þ Ýñ?ám·Ã ¿©®~ÑöŸ´ì…ãï†V–>3ø‹ñ[ãn‡q©øKÀßõ¿ŠðÝÞê~-±øw —‡üâ¨bÕ%³ñ¥¦è2jrèßÑ}QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEÿÙ endstream endobj 918 0 obj << /Type /XObject /Subtype /Image /Width 1092 /Height 829 /BitsPerComponent 8 /Length 112643 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIF,,ÿÛCÿÛCÿÀ=D"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø{þ SûD|Dý“¿aÚƒö‡øC£Yx‡â·Ã…Ú¦±ð×CÔ´‹ŸiÚŸ/ï,4 Z_èvwú]î­e.½«X ­>ËP¶¼»€I ¬†áãFø÷àwŸø.ç‹þx{Ä_¿mØ?àÇõ}#KÔµo‡¾ ý†¾!üe´ðÅåý¢]^hZŒo¿kÿ…÷ºž,‹a{.“¢^éS^ErtýJîÍ-îîÿFÿjo€0~ÓŸæø?{âHü-¥ê?~øß\¿—ÃÐøu?üø÷ðÓãˆü4ËOJ‚ > h^Ô< »4בøVo§ŠBñ*èçú§ÑügþÅ?ðSø,Gíÿ\ý®ÿà˜3~Ð_±ŸÃ™?dÍ㻪|mö:ñ׌“Æ–Ÿ >+|?øY zÆý©<&Ú5ψ®¾!iúÄ©sã»ø´[{ ËD›X‘ ™ÿD?oGþ ñû'þÏ??h?ß´Ÿì#ûNYüðF»ñƾտc¯‰¼i{áO Y^jþ)›ÀéoûO|[ѼKªéœÚÊhú–©á«VÞÖþÇJ{½at½7Wügÿ‚-ÿÊ×ÿðY_û'µïþµßìÍ_Ü׊|7¥xÇÃ#ð†»ÚtOh:¿†õ‹}±7Ÿ¥kš}Æ™¨C¶x§¼ÛK©£Û4DwbH¤BÈ@?,?à ß·Wí)û8ÿÁ.&ýµ?eÙçþãE÷ÿ„^2Ó~Ï£ø]Ò|;¦üC³Ðoµÿx‹ÂÔm¼aâoø.ÏU{­_CðÆ¹§ÞClÇS»×týKÕu(~’ÿ‚pþП¿jߨƒövý¡¿i/‚“~Ï>)x*ã_ñÏÂY­u=4 ˜øÑû9þΗ¾'𦉥|ð/†<®|Hø‘gŒeÒ~èºô– ¯Å¦j*×"Ñl$½Yµ‹Ë "ïV?KþÌ·Ã?Úãö'ðí×ð›Àß'øiㇾ6ø‹á¯‡º‡„t›ÿz¥‡µ/i7žÓüàßx»LÕüc­ê¾µðÆ¢x›S“X¹½Ò­xo.ÞÞ³¨¯Âƒßðp·ìAñSö„øÛû3x‡áïígðâwìýðÞ_ˆŸt¿Ÿ£ðn¥Ôÿ¾|)ðÏÃ_xCñ‡‹~-x«â¯Äüeð|;ð†…ðêðøÊÏXômBâòëM²¿öÿ‹ðW¯…ÿ³T>ñ_íqû-þÙ²wÁˆ^3Ѽ áïÚ7ã'‚~ _|"ÓõßO%¾‚~ ÃðãßÅ?Š_tíM¢‘ãÔ>1|2ð½¢$ƒR6RE4q€~´Ñ_ž>0ÿ‚‹x@xÓâGgÙ×ö›ý¶uOƒ7÷ÚÅýcö^Ð>Íàox¿J±–¯ðúoˆŸ>5ü ð/þ%h¶’Øÿoü:øWâxÓÃךžŸ¥kº&«ÌöwŸ°Çíûû6ÿÁD>jÿgj÷Ö~ñn­ðÿâ/|i¡\xCâw¿hl£RðwÄ?^K=Ɖ«ÅÇqo5µÖ£¤j;¶ª]½µävÀiQ_'þÕ?¶Çìõûi~ —ã7е?øL~*xƒþƒ_<á{â7Ư>1&Õ†>|.ð…–©â¯ßÂ÷Ö#S¿‚Êøz+Û[Ïë:5„Ëu_+ø÷þ Íðçà>ñ'í‰û.~×ÿ±_Â/ø‹Dð¦‹ñ÷ãß…>ëŸt½sÄÓÉkáÛoˆºçìñû@|wñÁ{m^è[ÚǪ|hð¿ÃÝ*Æâòu{Ý:Ho–ÌõbНgyi¨ZZߨ][_X_[Aye{gx NÇÃúuÍí¾§«ëÞ+ñ^¬&:/‚ü áYjÞ,ñ×uÃmpº7„¼%£kþ¢-î$¶°xm®%‹â¿ÿÁVô?ƒžŸãwÇŸØkþ ð7öpÓÖÏüñ׃ú·‡| ÍumjÞ)ñïÂ?†¿|ûSxÃviûN«¨ø»öÑŽ‹ióêðØ¨ˆJúµE|}ñ“öÔøwðÃöwð‡í;ðÿÀ?k†¾=] ÿÂþÆŸn?hxƒÃ ðö­â{éš7‡u+E»ðréšCG.± ãçSÔtm"ÚÞãSÕm-_à€ð^¿ÙöŸøß>ü4ý¥þ j2ø“âÆ“§ü±ð_ÃM3âõÇ…~ éÖ>"|]×?·¾/é_ þ|ÑÓź&™þ.üRø}o¨ø‚äøvÆÒ}h%”€²Þ/ÕµÂ~(×|=áËŸkú/‡u½[Cð•õ®™wâcNÓno4ÏZêWÀÙi÷:Ýì0i_^ki-ÒÜ\n+ñþiÿ ýº¿à¢žý§õÏÛgö8_ÙRçáÅ= ¯m<'ñÁ^1µÔ¡ñ,ž)ðmþ…ñ?QÔõÛßü&“Hðô-ñNŸ&• ë—4°µ²ðχï4}FÚO£¿fø+ÏìÕûb~Äš·íÑû4øö‘øÇàø¾çáç‰~øáþ+ý¡ôˆ0ørûPð}×ÃßëÚž“¨ê:~‹âï x†óQðÿ‹µŸ Ç¡jö÷Ã\qÜvúðN/ø+ìóÿ=½ý¢tß^øûà Göañ†|ñ3KøùàáÞµмIoâG“H±ðý‡|S¯Ù_øjûš΋â?Åz_†53X·û,6w‘ù“Æú{E|kûTþÞ³ß쇪|;ðWÄMWÅ/øÕñ–þçKø)û:|ð–©ñ7ã×ÅËÛæê²ø?áþ‚¦{èv«=sâËï xÃv–Ó˯x«N!OÖ¿àªÿ þøÿáwÃÿÚÿà/í3û ·ÆïZx#á'?i=àΧð‹Æ^7ÔPK¥x6ïâÏìáñÃö‚ðÃÏjñ ‰t½#âÖ¹à «Ô²½òTµ»)ýC¢¾qý¤?j„ß²æà›Ïˆ×^ Õ|QñOƶ? ¾|.ð‡ïë¾$hÓAøað÷áÃß|5ñÅ_\—»þЛRø¯ðßAÓ.¼?â;í—sèÍ-Çê·Äߌ?ð…|¾øÉðóáÇ¿i{oìÏ k~ð7ìûsðã]ñ—ÄMÅZ®‹eg«øûâÄ?†ÿuM2×HÖGŒ.oïþ i6·^Óoî´Iu}IôÝ+Qþ5¿àŒ_µÇÄ?‡ðSø/÷ŒôØ+öÕøµ©|Sý§~kZ÷ÿ†:ì½7Žþ\Øx§ö©žü`ǵ<'½ª6¹um§/ÃoüIÒMdž¼@/µ{SG›Xþ‘?à–?´WüoãÿÊiÿ(ý|/û)|ZøsñxK÷Þ×þÛà/‹š*X»ê$ð–}âÿëºF™¤ê¬ê÷^-Ö´[j–“h—!ôÝR4ýI®_Àþ#½ñ‚¼âíKÂ(ø}¨ø§Âþñÿ€¼pš~5ðEÚjw^ñ„~×üWáxüQá©î¤Ñ¼@žñG‰4Õ¬®×G×õ8[ê7=EWã/ˆ?à¸_³??k_†±ïůŸ¶WÀÏ|Y»ø†Þø™ñÓàv›ðà}׆~øKÄ>3ñ×Ï|sã½{¿x{IðåÏöž·£h:´šsßéš••–¨Gª®ÏÄßø,ŸÂ¯…¿/ÿj [öIýº5ØßMm:îëö·Ñþü1³øf<'«] m3âM¿Ã_ülð¿íQ{ðÂýf±¾°ñíŸìñqáËý'TÓ5k+Û:í.@ì çÿ ~*|:øãð×Àß~ø¿Eñ÷Ã/‰^Ò|càoxzäÝhþ"ðæ¹iÙÈéÑy°ÊâÎî{û ¤žÇPµµ½·¸·‹äoŒÿðQo‚? ¾6Iû0x¿ÿj_ÚŽÇC³ñGˆ¿gÏٓš/ø5ðoLÖ¡§b·ÅŸŠ ºÖ¢Ô-/4›kË Ò€}ó^#ûK|~ð?ì©û=|lý¥¾%Á¯^xà?ÂïüXñnŸá[+GÅ:®‰àoßø†÷Gð͆©©èºU爵ˆì³4;}WZÑt©uK»TÔõ.ÄÜ_Ûü«ðÏþ gð_Å´_‡¿d?Œß~7þÇŸ´çŽtKÄß þ~Óš€4·øÁ¢è?öÜ¿ ~'üø•ñ—àwÄWE‚¶ê¾ðçÅÏYX;^M ,ºƒÙÿ<ðvgíûûK|6ý‹¼[û4x+öYø«à‚Ÿ¾&øWàÿÄOÚÇÇ:§Ã‹ox®(bÖ¾$Y|9øIáß øçÄ~:»“ƶ¿ï.µŸx¿Ãþ³²ðήøv=&ò÷Ä÷ÚpöiE|ð_öÒø™ñkâ_†þxƒþ Ñûy|Ò8|k×u«»\x—áÝšZ]øc\Ô¬´Í+âL¾Òü=ª\izì•|çðKö„½ø£ðÇÅ_~&ü øÍû"iþÕuËm_@ý¨¦ø3 k‘øgÃþÒ|C¨|E}Cá?Æ/Œ ÓüjöM©k~/ÒµKKÏ x‚}KE±ÒaÓuMOäïÿÁQ<ñ¶ÃUñoì—û)~Øß¶Â="ÿVÓÛã·ÁŸüðoÂ/¾ƒ{s¦ëW¿ üAûM|wýŸ5ozE†£a©ië­|Ð>"i:îŸqk¢Þjs½¤w §´WÈß²ÇíÅû:þØiãÝ3áŠõ;_ˆßµÄðÇÆ‚|3­ü5øéðoÄr‰ÛKø“ð¯ÅöšgŠtuŠwмCï„üM½ÔÞ×õxmnd‹ã?ÚŸþ Iðö;øïðûàGÆÙÃößÒæø©ñ³ÁŸ¾|_ƒà žŸð ž=ñ¶·§hÖ  üTño޼-£êÚfž—ï­j2iÐÝjshZf±}¡éZËéÓ[Ðì-øñ+þ ßûü&ø¥ûð+üeý£ÿd¿ÚßöHýŸa“Oß?hË/Ù£Ã~Ñ-µ[ó¦é×¾)ð/ƒ?iŸüyðlwWfÅŸ‹¾hz´&îØ\é°3H±ýÝâߌ_ |ð«Vøçã?ˆÞ ð¿Á½ÂÇú·ÄýoÄZ^Ÿàk>Ÿ©Š'ñ%ÅÊicE¸Óæ‚êÒùnZÈç·û+LÓ®éWå^‰ÿVÐ|sðöçãŸÂ؃öÿøÍû5Çeu­é¿´‚¾|+Ñ|9â¿ÚÅ%ÊøãÀ_~(ütøwûUxÿ”cQеoþÏšéñ›,ú¾£k4r7Ú²ïíUðöÐø1áÚögø“¢üRøSâïµÃ¦x‡I‹P°º²Ôôپͫx{Ä~Ö¬ôßxWÄÚ=Æ!Õ|9â=+LÖ,KÁ,Ökosm4ÀBQEs>4ñ¯ƒþxKÄž>øƒâ¯øÀÞÑuø·Æ>.Ö´ïø_Ã>Òm¤¼Õ5½]Õî-4Í#JÓ­"–æöþþê [h#yf•I šŠüÂðwüûCøÃá¦ø—û5þÆ·í/ð-–[;ãÇ߇?üà?iI,gÄ_|7ûE|xøñ—âφç÷éšç¿…~4ÓõØ¢FÐfÕ Ý‚Ý}/û*~Ùß³ÇíŸá?ø£à7äÖï|â+Ÿ|Qø}â}]ðů„8²–æ ßüXø]ã ƾñÙ^¤Úömm«Ei=ö‡yªiÊ·Œõ5øÛûOÿÁl~þÈþ|øÏû4þÝ%ÏÅo޾ýžþüZoÙûOÒ~ø·Ç>'ñ%¯‡,îô‰þ0ñ÷…´­gÃöÿk]z{­* ÝRïÃp^jš6ªý’âýÅðV‡Px?â'ÅŸ‚ß²ßíûV~ÏŸ [Ä¿ðšþÑŸ³÷~Ü|&{^ϧø×Tøv~.|qøGãÿŽþð­å†±§â€ø¥á»†Ðµì}[TªeýR¢¾sý“ÿk€ß¶çÀoþÒ_³oެ¾ ü(øƒe<ú>±:~£§j:}Ì–:߆üI¢_G¥áÿxR†};XÑõ"žÞx„ð5Í…ÍåÏÑ”äßÛãª|)ñs~Í|&¸øáöm4x /Žw^0³øRnÛZÓWWOà;ÿ h|:u‰´Ø´kc-Ƶ›mu5­Œ·WPþ"ÿÁ¿à©Ÿµçíÿû@ÁM¾~×? ¿g¿‡>)ý€þ*ü7ø5¡øƒq§êž1»ñgíà‰Òê^"ñ׋õßøH´X5ï‚Öø6ëNðç„'O¾¿}ZßP–æÔiÿÐ ðD¯Ú·áìáÿVÿƒ|7â[øóâŸÅø(.£oð‹à‡Â/ê>øµñ5¼ûB~Ý>1¿ðÿ‡¬š×MÒ|/àÛm{B›Æ_êïá¿‹~ËzÃ[¯‡ÿ ßÕu; LÔµRám4Í"ÂóSÔnÝdtµ°°·’êòáÒ$’WX-â’VXãy)ŒÄå߳ׯ¿ þÒŸ¾þÑžÓüA¤ø'ã÷Áÿ†Ÿü¥ø²×N±ñV›á_Šž Ñ|uáí?ÄÖ:>«¯i~ ³Ò5Û;}f×K×5:ßQŽæWQ¶H¯&ü*ÿƒŒoßÚ[öJýƒÿi=àOì³ñW[ÒüKðîÏÀ>9ý­oõO‡gÁ¯ƒÞøÍªèß îu "Ãþ™þ'ø§âÍߌáð¦ƒmoàM3Eðïˆu{ÝëZŽ’úu÷¢Á'm/‰ŸðÃðM?„ðîÛËþïøeØßáÏü/¯ìßÙ#þ¯ö7ü*‡>ÿ…»öøkŸøZð«¾Ãÿ—ÿ »þßøDþø@á!ÿŠz€?y¯ï¬ô»ÝOQ¹†ËOÓ­./¯¯.dX­í,í!{‹«›‰\…Ž å–F!Q™ˆ×•~Ï_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›ðÿþ/ý¾?hÏØ÷öý¢,~þÌß|Imâ߆öþñ§íPú§€4ƒß|7ñ—X¶øM6©møÜ|NñÄ×Ô¼Y¦h¾Ót¿Å hº¶½§x§Tñ$–Ú4š.¥ÒÁ+?m¿‰ö_°oüƒá|_ðM¿Û÷QЭ?doØÿÀQüj°Ó?cóðŽÿIƒàßÃÏ'Å)ï?l?ˆ§áÍÕš[Ëuðæ×ƧÃ.?‚ ×whJûùEp?¾)ü7ø#ð÷Å¿~/øçÂÿ ~øHŸ^ñŽ|i¬ØøÃ>ÒmÙ#{ÍSVÔf‚ÖÝdžX--b2ïo®-¬lâžòæ$øÃðSX¾$xB‹aø(Åï€×ÖPë?ÆÏ |%øKá'ÄÞºD¸ÓüU࿃ß¾<|1ý©xÏâçü'×ÞøƒûB| Ò> üO ü1ð‡ˆükãˆþ7ñ¿Ä.fðG‡´ ^ÿkk:N‹«K¥Iw¦\ê¶vUßö”`µ4Wã×Åø,·ÂÏ„¿5Ú›PýÿnÏ~Çzbé÷÷_µg‡~|,°øvÞÕoM¦™ñÛ῎¾8ø/ö¼øk¨Ç%†§aãû_€3x^ûFÕô­VÏRžÊìJžý¤ÿÁK?g¯‰žømâÙkLø‘ûgꟾé_<àoÙ¿@ðý߉!øy­ê¦¥ø£ÇúÏÅïü"øoðrÛP×´/x{MÓ¾2øûÀæ­¯økÅš>‘¥ßßxGÅèà ôWæ÷ìÏÿBøûF~Ñÿ?cm_Á¿¿f¿Úçáo‡m ¼ðÙñ†<_¦A‡üfÚ½½ŒžºžÚv¾ÖŽ‹ûûþÝŸ³Oí×àÿx«özñÅα©|9ñ5Ͼ.|5ñn­x âÿÁ¯ÙMyk{àߊ¿ ¼Ug¦ø«ÁúÔ7šn«gm-íƒèúÌúNªt WV‡N»–À_ø<‡þQ ÿÙÝüÿÔ;âÕJ¿öƒO…þ ?²í¿Á»¯%¬ÂÑü|½ñµÂõF¼„jrø‚o‡–ŠÝ¢ÓÍÄ–út./®.m g™?¿à‹?ðSÚÇö÷ø“ÿøKûZü:ø ðïǰÏí¤þÏÒYüÇ—&£âm#Uøáˆ7Wz÷Ž|U­Íâ 9|Iðô¿…ïlt? ¸Ò®ê677£[þô×òÿëÿÉúÁÇö”?ˆú¹j þ®h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¾<ý¤?m_þÌ~!Ò<3â‚ÿ¶'ÄûýoïâK;ÏÙ¿ö:ý¢ÿhïAß^éë¥jþ*ø=ð÷žÐ¶¼ÔtÍ;S˜ZYÝü§ÿøÇ¯|ÿ‚W|'ø ñ›öbý¶þüVý’~ üHñ'į |Lýÿh_^x’Ò×â'Ä/[i_dÕ<?üc¬è—öRè~ø|úߎu+»»}6/Fhí˜ó«öjøgàßÿÁçÿðQ?x¯H‡UÔ¾þÇßþ&xK„ŠDÑüe7ÀoØ?á—öºÇ,rš üHñ]­³¡Ž[{‹È®¢‘^ úoÿIÛ[Ïÿ+ý·ežÞ¥³›ög¹³’X£’K[†ý®þYµÅ³º–‚f´ººµib)!·¹¸€±Ši¿!ÿfÿ?~ÁÈ·wüWŰWüþËöRý¡ÿeß|øyã˜?àµî²Þ+ðׄ?cí>{ÝoÁ6¿ ¥ñn™ ê7ÿ¼ig¦Ý®‘sæ]x~]CLÓío¯n4ßѯø8û⿊~9Á4¾<~ÆßeÛãOÆ¿žýœüaàØ>þÆ?´Oü¥é:_Ç¿†ÿõ[Ox÷Cð×…ü+â#Ãõ{}gÀú†¡ÿ ®¬^èÖZ¯‡ìâ¾’êØô»þÁðûÂß à“ðN­Â:zéÖ÷ì}ðân¬ Fd¾ñ§Æ/‡ºňÕ̑Ǟï]ñÇÆ&;H?ÕOø&íYcàŸø&?À_ xÿölýº>xÓö2ý‘¿dÿ…ŸþøÛö"ý¥ü?ãí{ÅÚÃ᦯kðcÁ÷F»ñÆ/]ð~£­?Âë?ÍáÏ^躿‰­ôhµKxëð÷þ‡ñSâì»ÿ ÿ‚ÊüTøíû ÁK<ðóþ ûZéŸ?gïêðOÏÚŽ÷Lo IñÃöñ)ãöÒ¾ßÏàK·Ðþ7xKRšçW‡ûN·±ñÕu›Ó­“På¾ügý¥ÿhßø;öȽðwÃ_…_üIûþÍ^2ð?ÀO‡ß´ÇOüð?à é7ß|âø;ľýž¿iRëÅ~(Ô>(xÛS:0ð&‰­¤xÿWÔ§ñ”>Òü?­~õþÜÿà¥_¶çì‡ûEþɾ)ý“àŸ^Ó>=|(ñgÃë_ÜÁCÿhŸGà¯êš|’x;Çká¦ÿ‚Yè#_›ÀÞ.·Ðü]m£nè©ÜhÑY®±¥´Âú”ÿnoø'oíû=ÿÁQ~ÿÁj`?‡1üsñ}߆OÂÏÛ[öP³ñƒàß|_øk/†m|"ß>k¾"½Ò|=¨xóBðöák™<­jºjëzçÃïO¦É&¥¯Ú7é´?ðPæñƇ—ðSö=ý¸|Wñ£R¶–ÚÇá¯ÅÙ_ãOìÕá ë²,±[7ÄOÿüáÖÞ°»E›Ä:߯|_ÖSIIî|!áoj’iš6¤ùCáÏø)ZÿÁ ÿgOØÛþ õûj|ý°kŸÿf êçÅØ·áE§ÆŸ‚ãÃVÞ<øà/øN|MñÇÁÿ?ˆ<1áOiVwzm÷‚l¡µÑßBšÖwŠì[Úý/ûÁÀ¿³×í»ûJü6ý˜< ûÿÁF~x§âwü&?Ù~=øñû=ø#Àß tøBü⟈W¿ð•x§GøÏâÍGKþÔÓ¼'w£hgðýÿÛ|I¨èútße‚î[ÛoØŸ€þøà_„^ðÏÆˆ ñKⵞן|wo§ÿdi:çŒõ«Û½sÄCÂú;4³èÞ ÒµMJçEð6{s}©i>Ó´=;SÔõMFÚëP¹õºþ[?n?‚?ðWÏØGþ -ûAÿÁGÿàš¿ þþÙß?lOüÐ?iٛŚÄ:O<-âÙ÷ÁŸð¯|¯|?kÞÔ.4á¤ÝÞj?ðŠ_ø²ùµ_xé|EðòkHtYùÏ…à»_ ¿hoŠ¿cÿø+ü×ö—ÿ‚møßÅ_~|Hø9ã_‰ñkÓ|*Õþ5ü øÅà/ŠŸ î ñ—‰¾|:×4=Xø…áMIÔoì4?øjßIÔïü=âiºV¡{®EõWß‹¶—ì«ÿoÿ‚ªø·ÅŸ±Ïíñ;þ õñ£Æ?²‡ˆ¼/ñƒáOƒßƚ׆¾-xsö;ø#à_øƒÁ¿¬¯âø‘ñÀ:½·‡mü#ãß|$ð¯nü!âÿéÚ}Üßð&‡«ÿ8ðüðXßÙÿHý†~ ~Î_´u¥—>-üñgŒjOÚöcøÁû-xGödðoÃψ7‹|sã/AûNøágÅü[ñ„4½cá—ƒtO†~Ölo!øªKâoøsöš½Áü§ÿ‚™|^øÛñ«þ™ÿ‚sþÌ>ðw‚¾&øgövøk¨üWøSðoãÄÿüøGâ?Œü&øÓñjïâF¹ãŸ ü&øëªé¾‹ÿG‚âÐ.l~x¦KÍoáîáØßÑkº§‰´ïé/ǧü«â7‚¼að÷Æ?±/üëYðKã;Ç·²ðlj"·ñ't}2ÿU»±Òµ Ç ³¼Õ4ûË ÏÝžÿ‚•Xø›Âú|7ÿ±?üCß.-­á¿ø ©~Çß`6zóÁÚtëoÚGRÑ´ŸØâïJŽöf··ñ-×í¦iÓÚÆo®’ÁVh òoø!ì#ûKÿÁ7?`O ~É¿µÄO†ÿü_à‰uŸß|(ñ|MàÝáçŒ5?iþ³Ôxf/ÙöüøÃ5´wž)ñŸíÝñàæ¥%ä p#ðGÃx3ÆÚ “4›té5ïŽ4½¸Ó’8íZêòk™ind)ûýÆÏв‡Àø¹ûXøWãÅï‰>*ëڽϟÙ;à—Å/Ú‚÷àýŸ‰ôí_UðGÂohß ¼ªø–ûÂðw„4ïø«â߈4ÂÞ'ø¯ªjzæÿ YøçÃ~°þwÿàÙ¿ŠŸÿcï‚?fÚ[ö#ÿ‚Œü ñ÷ǯÛïÆ?< ­x«öý¥¢øomá/Œø+à ÷Æ¿,üwáŸ[h׃uk¿k^0¼Ñü-á­ ×.ÁiñC¾ðî©©iSj¾°µ²“C[ÅÖ"»ðWÄ?‰^)ÐÖ;}oMÐ5K»+K[ÿÓOÛzÃöåýž¿mø#¯ÄOÙïà¿ÆOÛÃß>~Ú_ ÿlh¿ðŠè>+ñGÃ}{Ã?±ú\ø¿S×|A¬øCáâ|[ñ‡>[üFðéuk+Ÿ‰:ÿ„õßxbÖÒ/u½­ÿ‚€þÐRþÝ?±wíû~Ï_±ïíoñ/ãí+ð«ÅŸ´Í3ã¿ìñëöjøGð‡^ñ…ƒi_>"|`ý£>ü>øoyeðŸR”xûHo„ÚßÄýwVñ„ô˜¼1ctu 3T ¸&µ¤x“FÒ$ºÔm^›‰ü}ãDPxŽöÔ\?þxGãgÂψÿ|¦Ã¬xâ§¼WðóÅÚ]Ä0Ï÷‡·ák]SÅ?·t¿­Æ³âÉ|-µ‰ µðÖ¿´ÿíéñ—â¿Áoü'ý?doÚÿÇ?´ÏÄßkž ð–½ñÃöaøÝû'üø!®ø‹JŸK“Ç¿¾'þÒ¾øK¡ëÚw–êçYƒIø=sñ"ÿÅZ¦—k¥hòmNßT ÊOø3{öŸø‹ñ§þ Ññ3௵ýwOý–þ6Màÿ†ºµü³\KcðëÇž²ñ—ƒ–êây¦ž x¢OͧFDpéº&·¤hÖq¥–›m}üSþRåÿ/ÙÝüÿÔÇöɯÒø&ìðÛþuÿë? Êü@øÑâ;U¸øµñïÄ?>øë⇎>"üQñhð߆uøuð³Àš/ˆþ kž𾓧xÃÚ™¥è×Z‰ðþ{âýZÂÂîÿ\~#ÿÁ%ÿhOþËðQ/ø-ÇŸ¿°Oü ÿmÿ¾ø‘ðĶÿðN_Ú¿Ärj^ðG‹hK›ÏøI4O ü5Õµÿ ßêÚÄÿ j:5­Ö—"µºjPêÓi:…¬VW Ú…RÂò=BÆÊþ(®àŠúÒÞò8/í.4ûèc¹…&H¯l/#†îÊî5p——PÅqm2¼3Æ’£(·@ÆÇüñàÝâWü3þ Óøaâ˜în<ñWö»øð§Ç}µÃ[kÀ¾.~Ã^ñχn\ItïøKÄ:΃ªÙÜE=ž¡¦j7v7Ö÷6w3Á'ôAÿf³´›þ Wÿ(¶šÖÚ[x`OÚúh`–¤†)¬?gψ7V2Ç©D’ÎæÞ ›GU o<Í I#F_æwþ yñSâíEÿ ÿ‚5|Tøû ÁK<ðóþ ýûZê?héÿðOÏÚŽËL_ GñÃöbñÉàÕ~ØOã»´Ðþø·R†çH‡ûQ·¾ðéÒµ›÷ÔnSOýÂÿ‚˜~Õ–?ÿà–´-‡Ã¿Ù³öèñ׋¿lÙoö²ø)ð£á·†b/Ú^ÿâ–ã]sÀ2øW¤ÿÂÜøt~ÃâσZ«¯êöÚž‡­|HÒü;iâo +øƒÂçZ³’×í 7ÿÁºÿu?Áºß³/Ķ·»ñ.£ðûá¯íƒâ›-6yn.§ÔÓÀ¿´§í{¤èq1Ïä›]ÓH²·‰Ô[Ú¤¶Â8â‰Wò›þ _ø‰ûq|Fý›ÿmÚ£á÷Á_Ù£öƒøŸñûö×ñcükøÇû@þØ?>üHÖõýáŸÃ_Øhø[Á±í+cá-&ïâwˆ5mZŸÇÚK›ïk ·‚ô›Újº÷é—üañ#Å ¿àÿ³?ìñÏöUýµþ|nøgiû@Ëâ©~8þÇ?>ü#»Ó|QñÏâoÅM-í>.x·ÀÖ?ämOÃ>=Ótø4][ZÓuËÝnÏVÓ­´‹›x­.ïüûö4ý‘ÿh_ø ÇíQûMøsá§ÀoŠ?µü×ö«ñ}¯ÅŸ j´OøX_¿doˆ–±j6·ñÀÝ*åý‚¿à¨ŸðRýu-áŸì#û0|Ký‘ÿjo~Ðþ øË þÛŸ´OÅYéZ ½Êø‡Áú/‡ÿáÝßM•λ«Úø7ÄK«$Kqà«M6kMKûKKùGþVÿ”Y|ÿ³ÿøYÿ¬ëûUWî·Š?hߊ¿µd:¯Ù;á§íð§Hñ¹ /ÄÏÚã¯À_‰ß³5‡Ã?‡vz½­ïôÿ†_?hŸ |=øÁ㟌ž,Ñ-/|!à;Û_†+ðãÁ—ºÔŸ×¼'c©ë’Zé0j¯á‰ºÖ»£Ã}¨épê:®‡g¦}¾7½X¦ýÚñ7‹<+à½:ÛXñ‰¼?á="óÄðž©âmgNÐtë¯x÷ÅZ7| á›kíRæÖÚxÓÆÞ#ð÷ƒ¼'£E+j>#ñV»£x{G¶¼ÕõK9ú üg»øõãø(g€ÿfO…oìÇûQ|ñz|wý–>>þÔ||ýŸ~,|ð§Àø?e¿Œ~ý¥'ð¦…ñ â?…ô/ühÖ¼añ[ᄼáøRZÏÄ>o x‚ÿÄþ$Ô¼-efÒÙŠ+ùFý¶ÿålÏø#Gýš'í-ÿª‡öÎ¯êæ¿‹¯ÚçãÇÄÁÁÿðO/Û£Áß°wüïų_ì¹ð3âçÂÏŠ¾7Òÿàžµ:\Áâx?ö‘ðvŸ/†ü=¨ü:°ÖüK¢éwÿ|/ªêºm“Á6“=Õ΀5Ë‹chà·ÿþÓÿ~ Á:>üð£¡iÿµ'ÆÈ|ñ+V°–kyo¾x÷¾3½ðs][Ï ÐCâGáIµÀ’KDÑ5}ò7²Ô®b“ú¬øUð×Â?~|=øEà &ÓBð?ÃxcÀѬmáµ´Ó|9áËBÑìá··Há‰a°±Kld“_’ðQ¿ØŸáüsþ רü7·²ø«ð7Å)â¹>!| ñÇ‚¿¾ øãÀ< j>Ôu[ZàÒ®u†üeÿ‚¬|TÕÿc¿ø9ƒþ ñƒá?Ûtmsö´ð‡‚?eZ~šþ^—ñÀ=øá/Ã=5¼Ma€j7>ŸÆˆà½¹šW‚ãá÷ƒeH™t`›Õÿàñ6ãZÿ‚v~ÉÚ=ž§w¢]êßðRÏ:m®³`Ò%ö‘q}ð7öžµƒS²x¦·•nì%•n­Ú9à‘f‰ MëôWÃOØ7ã—üþ ½àø*çíð·^ýž>þÊž ³ðì7û1øòïG›ã‰µ‹[Ïê·>9i^Öµ½áåÊkþ)½Õ¼'ðùu½CĆ]# â«}<1sŒ¾7ÿƒžü}ñ3ö¨ø1ðSö_ý›ÿcø(ÆÏˆ?n¯†ßýˆh½sá|ž øuðßâLJ5I¼#ñ=< ƒ¼usªêthô¼#©ë5Ìv:Ëßjúi¶´[àên?Ù—ö{o üðާðWáw‰4OÙ¶ÛÂð|ƒÅ~𯉦øC?‚ô]?ÃÞÔþ\ëZMäÞ Ö´}KÓìlµ6™¨[Ák pΉ*ÿ%üe«~ÖŸðxgÂßEÞ¡ð·öø&|_ðÁתïáÛkŸ³Þ‹ñyüz–›âA®ZxÃâv‡pš²ù²µçÂÏ ZH ;bÿV³7íGáÚ“Ãz׉<3ð¯ö—øN¾»Ó,u ö™ý›~0þÎ$–ëR°û~ÝIø¹á? Iâ›KÏSÕ¼-&µ£Z_¯ÙŽ¢í$-'â·üãþ ¯ûDh?ðPÙÃþ ;ÿøð®‘ñ+ö’ø`žøûû3êºþ“àáûH|—Añ'…5wðw‹üA'ö‘ñ>ÓÀþ%Ô¼+e¼ƒO½‚ÏÂΗ4ZÒ86^%ñ#h¯Ĉõ+­BêËÄW¯«x[NñTúf³­h6Jº/ü^ßÇò~~Æß·¦£ñ¶æÀ¥§ÁO‰?²wÆ/¶ˆ¥£·Ó¼QûDüPð®‰û/Yèv×ÞXÖ|KáŒ;[}3Ï¿Ð4¿]G—wñüçþ ñCþ cÿãð?ÁŠŸô5ýº>ø“TøíðçãEµµÞ•à] ãˆu=^ÖþXɤiÖšýÁ{?Äü3ðˆ?³fñ–—£ø'á÷Ž5Ë=_Ò5]/Yû»Jñ—üëBÓ4ÝDý‰àž:>£ØYéZF‘¥ÁH?h-?LÒ´Í>Þ;K 7M°´ÿ‚LÃicaci V¶vv±EomopÃFŠ£ã_ø#oü§ö§ý‚þ*ÿÁHþÖ~Ò¬ü7ãÝ7áGì±ñ‹öŒø1ñGÅš\`ºñ·Âß¿³×‚ü}ð‡EðÏŒd5èt¿‰+ø/…&Ô¦Ðîf¾²ÒãׯþÒý›æøÿã=sâWÆ¿zn¯ð¿Ãÿ¡ðN‘ð{ölÖoñ'ˆü)àï xWá¿…,µ½cÄGŠ5­PêÊþ;ÿà^.±ð7ü£ö(´Ô5}7á_í›ûKß©£]ͧKâ| ñÁËM;ÁZ…ô¬ƒL¿×~-Ùø±m¼§ ®x'BÔD‘¾–‰?ö!_ð[_ø%\_ðUÙ{Cðo‚¼ceðËö”øã8¾.þÍ_51vÚ&—ã«3 ß…ðÇíáË1åéþ3Ô5/|yð…üIwg ÛÛ>«á;Ÿ‚¿ 5Xµ‹˜îµ4ý7^°‚U¶ÖnâÜß„ÿðR?hŸ 4­'ö¾ý‰ÿm¿…´Ï‡ô‹m+ƾøMû(ülý¦~x߯Zu¸·Ôõo„Ÿÿg¿|HøB<âØÖûA›â~ßi¶úŒvZÌPÿfß߯ŲoüÛãwí9ÿSñWüöÚøwwð>óÁž·ø?û ~Ë:þ§¡kßþü=OëZ-ÏÅ?޾ÖüCáMÇ:õ·<{{¤|;ѵm]¼)wã{öÖï-õ¿ éRÞ|wÿ¦ÜÜYÿÁ.¿g»Ë;‰­níà ¿ îmn­¥’ ‹kˆ?gÚ¢X.-牒Xf†UY"–6Y#‘UуGõoðçá‚>ü-ð7ÁŸèVZoï‡^ðçÃ_ xpÛZµ…Ÿƒ¼+ YøgGÑÞÖ8"³’Ú-ÆÞÒXVÚ8%@Ëäª1Jþ?¿àêÏ|Uý¶¿e¿~Çß²ïìaÿøÁñCá_í‘¡üBñv¿á?Øoö•¾øR|3àO…üá‰Éððø_Ç6ÚÆ¹ñE—Ú‚®õýSÒìõ[÷Õ-cO]KúH¸ÿ‚…øÛöz°ý¢ßöqý¾dÒ5¿€"øQoû ~Ó7?´4úxb÷Åòÿà”_Æú‚š;44ø›y§ÃðÑüO5–†¾.7W¶¾hà'üaywsÿ­øã ÍÕÍÄ:íïñVÎÂ)ç–X¬màì¿~ö¶qÈÌ–ÖÏ}{zÐB&»¼º¹*f¸•ßúô¯ãOþ =Õ>,þÇ¿³Ž¿c_Úoö=ý»¾ |Uø¡û[øç⯅“?ü“þc׿ÒôéµÝ3öî“GÓµ©l­¤Õ´ý'\ý¤ÿn{ÝkK²Ô^#yi§kžÐ.õK(&ŽÛP¹Ðôyîâš]2ÉàþëùLÿ‚C~ε_ìQûsÿÁbÿj‹¿|}ìïûnÿÁ@~=CáGG𧊵_‹Ñþüvøß®|6øº~Úhïâï|øÏeñ¯Äv>ño€4ÏkQOá¯x¡<;qðÛÄ·5Ò@?Wÿà¸_ü!ñ³þ ÿ ðÇŒôë-BÇÂÿ²¯ÆŒ3^Y%ëiþ/øàíSâ÷„5-ÒBö—°x‡Áz|qÞÃ*¼Ï8xî­ÞkKçÛökÿ‚–~Ñ~ÿƒE~#~ÓéâOIñÓà—‚¼Aû1x?âl·w3ø4í_ã—…>øÇZ~§4Ër5χ> ø•¤ÙéúÛÏqs¯àdÕç77bhŸöãþ w©|}ý¸ÿe×ì_ð«âm¯‹ÿiþ§Äß¿þüDøðgà/Á¿Þ[ZüG×õY¾+xkÁÞ0ø¡â¿xTê~ð¿€þøoÅ×Ëu®M­ø²ÿÃ:6”dÔ=¿À?ðJÙ·ÀÿðKÈà”í««ü ¸ø+­ü)ñˆŠÛi¾*ÖüEâ{«ïø‡â²­·™eeâûŸ‰:•×Ä]>Ü‹½3MÖÊÁ¢¼Òí¼€<ÿÁ¸ÿ|%ðóþÅûEáM&9üiàüHñUØU{íÆ^7ñÿŠõw[Õo6‰ï®Ý¤·Óm%¹ye³Ñ4Í'IŠAg§ZÇæüí¬êÿÿfŸØ+öÞø['…ÿhÙ¿öòð~ð»ÆÖcË»Òôÿ|*ø§ãÍwK»’†ê÷EÕµ¿ƒž‹VѤ¹]?UÓWPÓïàžÞöT?cÁ3µOÚ3þ +ð'Mÿ‚~Ù¾<üQøgð/\ñ…§ìáûc~Ë¿¾'~Ó> øðƒÄ~*ÖüY h>|ðïÄŽŸ >#xZû]¹Ð&Ò¯þë:Jiëeã;û-*]wTòïÛ“öNøËÿåøéû3ü4ñÁo‹³wü/öiøuñ›â—‹>>xOPøSñ—ö©øib4OøáŸÁ}zòËâoÃïAáSÄ:n·ãÏŠ~ðN¶Ðx·XþÀÐ[SЭáÔ;Ÿø8×Çð³àÝOÚoâOö|šOü,/‡ÿ±§Ž?²¦ÿ]¦ÂYûPþÍz÷ö|¿3þòÏíÿf¾hÏÌÝOèÿü'Åžðü#þ óã¯x›Ãþ ðO‚ÿàœ²‡‹|CðWÅŸxVâöh$°Ñ´ÏkÓ¼--ì±Åi¦ZêróZC¸‡ó_ö|ñŸÆßŒ?ðH‡ßðK/~ÈŸµWÂÚªûöQð÷üëâ}ŸÄ€Ÿ´‚~ ð §Ãí;ö|ñ×ÇËoÚvç@›ö{ñW‡`øUý©ã½AðGÄ_xûYñ@¶ðÞ—à{ÈÛí”ì_ðtwü £öæÿ»fÿÖÃýŸkíÿø&O‹<+à/ø$GüçÇ^:ñ7‡üàŸÿÁ8?exÇÆ>,ÖtïxWÂ~ðçìÉàcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´ʹŸðXïØÛÆŸðPø&í_û&|7½²²ø‰ñ;ÁžÔ¼º•õ¾™§jž4ø_ñÁŸ¼-áËýNî)­tË/kž±ðÕÖ¥r©oa­%Ü×±Â×0þhþÏž3øÛñ‡þ ðûþ eãÙöªøAûU_~Ê>ÿ‚}|O³øðâVðOÁ>´ø}§~Ïž:øùmûNÜè~Ï~*ðì ¿µø‹â¯k>(ÞÒüy}²€><ÿƒ–¾-kŸ?o_ø"wü›[7'ö~ý ¿k¿ƒÞ1øå  ÃOø‹k¨ü|ømð«ÃþÕ“Íò5 +BÑüAã›ë½"úÚâÆëP×4=EÐÝioö? 0Ûý¼QÁ¤0A ,Pà J8¢¤qÆŠ¨ˆŠP¿à¶ŸðJßÁC~ü ø¿û>ø—Að7íµûüH·ø×û1øƒÅ"tð‰õ{ [Ã>%Ô¾xÊîÑãºÓtïë~ð–«¢x|ïì-wC† E¦‘®ëwÐ{߃¿à¦wQxøÛû ÿÁ@þ~Ðu’Úø‡àw„ÿd_Œßt]Gű¬z•¯€hß„~ñGìÅ­xfæõ.[ÃÞ&ñwÆ%öœ°\ê–:-ÅÂZPàÿ>*jÿ²ïü ñ7à?Ã?¶é ?oŸÙÿG×¾3øBÕñá«¿‰ýüGñCCøŠ4ØÌÚëÑMðÇX°:‘[™æ»øãdËëòÉoüûàüPÿ‚…Áº_ |_m%÷ƒ>)þ×ÿ>øÛLŽ_(k>øñ‡öð_Œ´)Ë$‘Ée®xg\Õt‹ûiâšÖîÊöâÖê í¦–ýÿ‚zÁ9>8x»þ +ûDÁfÿn Y|/øåñƒEá¿ìÏû1ÛkúgНÿg?‚6м#§ê¼OáËëß j?¼Sám ÖtO ßêþðÛøÅó>§w©kði>ü©ÿ‚Ø|]ø›ûWÿÁ@¿àŒ>~ÁÿðSOü9ý‚jËÏ‹¿¼KüÓö¨ÑíàðÃüký˜øvÊ gy#Šh®î#Ø×’­}%ÿ?ý«,|mÿÇøõá¯~ÍŸ·GÄ~Ù¿²7íað³á'ÃÿþÄ_´¿ˆ<} ø»_øq­ü4Ò-~3ø>ÓáÉ×~Cªk¾0Ó¯ôgø£gቼGáë-kWð;³—q|‰ÿàüWñOÀßø&—ÀØÛã—ì±ûqüø×ðÂÿ´gŒ ÝÁ7_ ¢ñn§ é×ÿ|g©]¶‘mæZø‚]?LÔ-ll®5/í{ÂÞ!¶ño†<9â»+ {J³ñ6ƒ¤x†ÓKñN«xSÄúm¶µ§ÛêPXxÂúý¥†»á½zÎ+”·Õô jÆËVÑõî4íJÒÚòÚhPz¿”Ïø9¯Á#ýžeý€?à°ÿ tY¯üsÿøý¥ü#cñ: fgñÀo‰úæk¨izÝÏÚ-•tÆñM¿ÃûH¾Ó`ÙøË«4z…´ÆÕ|ÅûiþÌþý²dÏÚ#ö[ñrÛ.ñËá7Œ¼õÓN‘hZþ¯¤Ïÿ—ŠU­ÒYEÏ„¼W‹â{¡nöŸmn5GX²±†çV‚§ü“û3~ÔŸ¿bMÅ?¶Ï‡|Iáoͦhÿ³„|+ã-÷@ñ/¿fÙƒÄ>;ðçÁ¿ Þ麛µúC?‰<]ñGÅš6¥ö}:×_ðoˆü©YYÏ`,uMCÁ¿àðO_Ú+örÿ‚¬þÙ 5 kZ?ü—ágǽ{öÿý—oîôíV/ ë¿´7íKðÇPøawáo jº„/¦êÚ/ÁŸë´MsÃöWw7¾פøoâmIa›XÑ®î@?xµoÙ§à'…b}cö@×vøOöcÐÿf Wöuñ’x|$tö .~ë—W>0Y¬‡‡f°ð:^]]ø©®-_Lž9u™."xZQø]ÿ‘øÅðOàwÀ;ÿÙ_þ¹û,þÓ?¶Wìåðïâo®¼Kû_þÐß¼ðOàŸ‹~"júÅ¥Ÿ‰í¼ñW𵯊~"É¥Ziöi'ü*ïÙÞYX[iÓÜjsêÚÌ÷—¿ªŸðWïÙWãí·ÿÙý«ÿeÏ€&Ó¼)ñsâÏ€ô};Âú¾£.‘¥jÏáÿøSÆ:ß‚uV(¦u—ÄxwXø}s}r†ÂÖ/¼Ú“G§¥Ì‹âðK/‰0~ΟðOÙköqø§û1þÒ¿~/~Ï|ð“âWÃ8?fÏ‹þ5Òµˆ¾ ÑãÒ<_ã üIøYà¯| ñŽ•ñOÅ6š¯Ä M{Añåõ¨“ÅGþ­;P¡?¿à˜z·Åm;þ½ÿ‚­øgâO‚~üñŠ¿b¯x÷⿃ßuߊÿ  ñ˜Ó?aKý/ÄV><ñ'‚ϊ5­JËÇÞ"ñµ{}ðÃÃM§x—Æž*Ò­¤×í`‡ÄºÇПðyü¢7Aÿ³»ø3ÿ¨wŪó?|/ý±cÏø8Sö†ÿ‚Šüdýÿh‰¿ ¿nßÙ#Xøyàý›~]|`—á_Œ´ sàV‡ð×áÆíOÂwÚ‡¼âmGÀ³—‡eñWµ½^Ëá.“âψ[[xóQð燼Câ{/ÿ‚úèÿ´ÿÅ/ø$ïìÏÿÝпg/Ûßö®ý²þ IûÏñßâ—?e?Ú[ãÃ_ø£À¿³…ͷįEûFEà½c¿õ]cÆ%Ž=sRѼMâ}zO\ëvž#k}_LÖͰöé_Ê7ü¯ÿ'éÿÿÚPþ êåý¨+÷?Âß·ïÃÿ|ñ/íÿ ÿûuxwE𞽡xoVøkâŸØköœÒ>=\jZìZD‹7†¾ Ÿ‡?ñ¾ƒ¤¾±ï‹|¤x‡Âzd¶»K®5¾—w<Î7üÃâ§Ä€ß·OüƒWøÕûÿÁF~xgþ û}ÏñSö|ñŸŒ`ïÚ[Lðoü"^>øÃñ–ëK½ø›âUðú_»m+Oøá½WÅ×'Òü-áÍ(êwúŸˆ!·Ò¯ž 쎊( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š*–¥©iÚ6«ê÷öZV“¥Y]jZ¦©©]Ac§iºuŒ]^ßßÞÝIµ•´RÜ]]\KðG$²È‘£0»E`ø[Å>ñφ<9ãoøAñƒßVÐ3êúÏÁÕðÇÃMcÄŸ¾üÒ4_~Ó_ | ¨èZ·ÃÏÙûàÿÂy~"ÙAáêzLIñSÄ9·{›}7]6‰®Ú Aÿ­züÿƒ£¿å·7ýÛ7þ¶ìû@ÿÁ'å_ðM?û0ØßÿY×áÍ|‘ÿüÓ¿i¿ØAý›u}~÷ºOí ûh~Á_õOi¶pj:†ô·Âo^ëö}Ô°[_^èöÚüº­ÄðÁu=´pK,q»:ýoÿÿ”YÁ4ÿìÀ?cýg_‡5ü§à'ÇÚ#à?ï ~ÎÍਾ)ø#ö¹ý~9h÷&»OéºÀÚWá·Å}wU×­4ë« SY°Òô ]ßOáý'PÓõ}z(IÒï­/®àž0æãàßüåiá]VÃÃÿÿàª_´ßÄ¿€º{[Û§Á‡> ¼ø5·kyö˜¼=u®jŸ~-hQé’ÆÁrºW€´¹A\X>Ÿ;Àö¿×ìéû9üý“> øö~ýž¾è ¾|8ÒF𯄴¥òmâÞ÷ºŽ¥u-Ƨ®øƒZ¾–ãUñˆõ«Ëýo_Õîï5]^þòúêyßá?ðNo‰'øQâ}oá_íÓûlø[öʵÐnõŸ|y¹ý£|}Û߈ú}­Åþiâ¿ÙÓQö8o†ú¾¿äYk¾Ó~Zê0ørF³´×~ÕÞKáŸð@¿ø*Þ½ÿUýµoüXðöáÚ_à/ŒÇÂ?º&•i6—¦ëÜZU¶¥áÿˆZn…83xnÛÆ6Ú6Ú—‡¤‘—Iñg‡'üuÿ‚~~Á°F¿û8øsãGŒ¾ø||SñW‰añî‡{áí?þ$‹@ñ6©©~Ôß -üQ«ØøkÆ>—Pñ>‡à h:íÕÀ°ÒìšÞ{;¦á§?àðoúG_ü#ÿ }Cÿ£ª€?¬Z+ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨¯åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú((ú†¢¿—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè  êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWÇ´/ü_þcý˜~=þÉ?³oÅoÙ_þ _cñ?öÙñWŽ<ð&ËFõ­#SÖþCàÙüIˆõ‹oÚmü9o ~;ðù´¸¼WK³-È@>ÊùþÓh¯åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú((ú†¢¿—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè  êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚€?¨j+ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨¯å?Ç_´ïü“ðëÁ1øƒâoÙþ #†ü á_øËÄZkßnî¢Ñ<1¤^kz¬–Ö‘þÔ"K«„°±¸hmЇš@±© ¼3ö5ÿ‚“ÁÏß·ìÝðãö­ýŸe/ø%>«ð‡â§ü%ÿðˆßøšž×'ÿ„Çž(øo¯ý·C½ý¨žæÇÊñ?ƒõ¨m¼Ö?i´ŽÞñ1Âý‘Ñ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_Å¿Œÿàª?ðs?€¿mƒÿ°7ˆeoø%t_´?Ç?†)ø»à&×þ}×…î¼àõñ;kW—Šö£ZeücÂ:ÏÙì&F–ã˃azcì/ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¼sö†ý¸àêOÙƒàoÅÚ#â¿ì›ÿœ±økðcÀ¾!ø‹ã‹ÍSøÓ­jÖÞðÅ„º–«6Ÿ¤Û~Ô+>£v–°¹†Ò&Là"M]4Wò-û<þÜ?ðu'í?ð7áGíð£öMÿ‚N_|5øÏà_|Eð=泩üiÑukŸ xžÂ-KJ›QÒnjŸN»{YÍi+!rQ‰"½þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè ¯|ÿQÿƒ™ü{ûhü`ý¼=û+Á+¥ý¡þ|0ð·Åßi7_ð»í|/kàÏ/†E¸Ó|Pÿµ²Ôïä.ѾÑa ,¶þdûÉò ÚEü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ün~Ù_ðRoø9ûöý›¾#þÕ¿´ì¥ÿ§Ò¾ü+ÿ„Cþëÿ Ïñ³ÄúäðœxóÂÿ ô±hv_µ\ßy¾'ñ†‹ Ï”ÃìÖ’\^>c·p}ÏÀ¿´ïü“ñÁøƒáŸÙþ #7†üwá_xËÃó]ëßm.¥ÑÏý½g¤}³ö£í&/´ÅömZßl9mŠ1@Úmü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü[þÒ?ðUø9ŸöRø¯û*üø½û+Á+¬”þì*ñoФּMíF,´[ˆ4krYÛÜ£=äñÛÁ p„i´Wòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_Êæ¹ûAÁÞšJ[µ‡ì3ÿ¦ñ9¤YcÐü]ãËw³«ÜŸþØ~FY‹2Æ-éÁüåˆËó¿ðÓŸðx7ý#¯þ ‘ÿ…¾¡ÿÑÕ@Ö-üh| ÿƒœ¿hï‡r|eø?û~~Ç?âý¦>üsñ¿ÂoÙ~Ï^;ºð¯Ãí-¼'cáå“Lþ(Öþ5\jÚÅž¯y«Çy®é~6—DÔ-³ÅŽŸnÐOqxPö_EPEPEPEP_€?ðtwü £öæÿ»fÿÖÃýŸk÷ú¿¿loø"ƃûvø;Ç_ ¿hø(¿ü—_ø/ãÿÿÂSªüÐ<{û)øcáå°´ñ<>-ðï‡!·Ó?dñ&­áŸkzTþÓüYâ_]ZË¢é7÷×ú†¯h5'ú«þ ;ÿ(²ÿ‚iÿÙ€~Æÿúοkó×þ ?ñ_þ á?°'Â/ø%5ßÃ]/‹ž øµ¨|_Õ>"Áð‰t}a~/ÃÍVËÁúÆ¡ñp=Âé>ÕüqâË­àí½ÇÆMgBð‡‹u¿¬Z_ƒµY—ì/Ùþ ‹{ûÛ|!ð·€ÿà ÿðP?ˆþ h¶>ðÀ‹þ0ý˜¼SðÊèÞ“Ã^ðŽ«u¡þÊžø–<;á»bú †‹ñE:|šN›n’¶›ú}ÇÜÿ¾ü.ý£¾Þü4ø·áÙµï ÜßéÚÞw¥kºÿ„<]áh³ƾñçƒõ= Æ¿¼sáË¢×^ñŸƒ5íÄš<Ï)°Ô¡IçI@:ÿˆ~?ðŸøÛâ‡Ä rÃÃ>øuá/xçÆ^#Õ.a³Ót/ xSH»×5í^úêâH ·´Ó´»«¹åšXãHâfgP ¯ãŸþ ÏøñFø%ûv~Ø%Ñuøö±øÕàm+ᆤþÒÓ¾ ÉñVÿÄž"Ód)Û´©5ï‹òøIu8Ꭰ_ÁšÍ¼`5”ªŸ¹ÿ?àŽß>>é±øöšý²¿à ´—Àoí]?SÔ?f߉Ÿ<£ü$ñ<:Uå¾£§è¾;¿øIð“áÅψº ¶¡gg~šo¾*x•~ßim|d7pG2þ¨xÀ¾ øcàÏ |:øuámÁðFƒ¥ø_Áþð¾—i¢øwÃ^Ñm"°Òt]I°Š =?NÓìàŠÞÖÖÞ$Ž(нIꨢŠ(¢ŠþJ?àÍ/ùFÇû?ÿŒÿú¦?gþµëùiÿƒF<1¦øWþ ³ñÆÃLk–‚OÛÿö‰Ün¥Ydÿ‰W…>øn× ‘ÄtíÈËò÷yFÕ‘cOêZ€ (¢€ (¢€ (¢€ þ|?à«ÿ³Çï?ðT_ø çÆ… üWã†_³‡ÆÿÚWÄ_üi¡ÚÃ>‰ðËDñ]‡ìøžÔ¼O<·=­¶°þñY4QÎÒ6•t ‚«»ú¢€ (¢€ (¢€ (¢€ (¢€1þÌ?ðGïÙàoÇÿ‡ž"øSñsÀÿð¿á-ð‹-£´×ôøIj^/Ð~ßo ÓÇö§†|A£kV»e}öZ³¬ÅWö‚Š(¢Š(¢Š(¢Š(¢ŠþhÙŸã׊?àâ¿ø'ÿíIáÿ…ž+Õ¿g¿†±Æ¿ø÷âÍ¥œOá xËÄ|g/‡µ[Ó:Ë£¨{GѤ¬ulºïãú¢Š(¢Š(¢Š(¢Š+óãþ ÅðÃÇÿàš?·7Â_…^Õ|sñ#â'ìÍñ_Â^ð~…O¬ø—Ěυ¯¬ô­L†I"Ioo®dH-ãi4Œášý¢€?>?à“¿ <ð[þ £û ü%ø«á]WÀß>þÌß <%ãë±$φ¼I£xZÆÏUѵ8c’TŠöÆæ7‚â5‘ÂȤn8¯Ðz( Š( Š( Š( ¿˜¯ÙgþV§ÿ‚œÿÙ€~Ïú+à NµñG¿`¿¿nðP­çÇ-ñïãß |ñÍ­þ¿aqà¼#àµð¢èòh^DƒPÓõvÒ>Ù{>½} ù»ÙiœžPÚôQEQEQEQE~/ÿÁÂß>1þÓßðGïÚóàoÀ‡ž"ø­ñsÇð ¿áð„í£»×õïøF¿j‚¾/×¾Áo4ÐG'ö_†|?¬ëW[¥M–ZuËÌ¡[ôËöfðî·áÙ¿ö}ðŸ‰tÛÄ~ø!ð£Ã¾ Ò/VïJÖô_èn«¦Ý*3¢ÜØßÛOk:«²‰b`¬ÃûuQEQEQEQEüøÁ(?f/߿ਿð^?Œ>ø¯Àÿ ¿hÿÿ³Wˆ¾xÓ\µ† ân‰áKÚ jZ\rM©éÿ¾7|3ø§{§C€Ë-ý§¼O®ÏgBêÔÈ÷ƨ.`,@š=ßFWó ûaÁ©ðNVgÆ?²t>5ý‚¾>è­k¨øCâÁø£Sð|:Ö›i-­ŒšÏÃÿøŠátø]L=ïí{À:ÇÛm£Õ&¼¿žmNSªÿ‚ÿÁAÿi|Cý¢?à“ÿðQ릟öôýˆ¦ÚüCÔµY/.ÿhÏ‚7Wv‘èßàºÔ’ÓSñ%þ—k­øWT_½”þ-ð7Ž<¬êš}·‰`ñD÷ÒQ@Q@>ð@¿Ù‹ã÷ìÕÿEÿ…ñð¯Å ÿápÁL¾=üZøeÿ E¬6¿ðš|6ñ'ö_öŒtO&â?EÕ<™~É;ùnû1ŒWôEQEQEQEQE1_ð]ùHÏü¯ÿgÿ¯ÿégÁJþkâÚ‡öøû\ü`ý¾7|V¹ñÌ3ý‰¾+Ýüdø7…5û E¸ñuäž–hügcw¢j³ëš@o é{,¬¯4y” nÏš¾_ÚôQEQEQEWñ7N½ÕþüAÒtËi/5-SÁ,Ó´û8@3]^Þè7öÖ–Ñ@2O<±Ä€ 0ÍvôPá?ü}û9üqý•?à“Ÿ> ~Ñ_ üMð‹â¯‡üoñ»QÖ¼ âûX¬õÝ6ËÄüS¬è·76ðÏqG©iW–·ÖÄJKÛϹÅ~ìQEQEQEQEüø~×ÿ³ÇïÁÂ?ðIÚ{Â_ üW¯üø'ðCö¬ðïÅŠº}¬2xSÀšßŒ¾ ümм-¦ë×Mp“ÛÜëšÇˆ´M>ÁRÞU–ãQ·BÊ þƒè Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠñÿÚã¯ÃoÙ‹àÅ_Ú㸾øcðoÀÞ"øƒãM[lrÜÅ¢øsOšþ{M2ÖY­Æ£®j’E• iÊ—:Ƶ{a¥Únº¼…X߯¿Ž_ÿg†Þ#øÁñãâG„>ü1ð•²Ýx‡ÆÞ7Öm4= MIGMutên/nå" >Ñ./ï®`³¶žfT?Èçìùk®ÁÅßðUöÏñ?„üEügþ ɪßhß³.‹ã .òßôïím«Å{?'ðæ¹¦[%æ”·6:7‰þÎ_ |)ðcàWÃÏ ü,øYà{Ó|+àiéZk$òÝ\mâËÏw{y=Å]Ëq¨jW×·÷7sË3€zQ@%_ðpç€üWû~Ò°Ïüsànƒ4ÚßìÉñ Bøû]éš@XåñßìíñþïCÓT¶Uµ³žh“ÄÞ2øu³ª]\Ü[ëž;øg46í„íÓúÕ¯ý¨?g‡¿µ¯ìïñŸögø­g%çÃïßüMðïÄ¿f}¿Oµñ5¥®½£É2I¾½á½DÙøƒ@»tqe­i–aXÂôÿø×Ÿ¼àÿˆÞ×l›-cí¿ ÁÚß²ÿ†¼Qá'öÃýŠÿmߨϾ<¶{ßüFøð͵¿ kšu¼éî¬Ö1.â«Ý*ÓÍ„KwàøéÖy ‹)#€XÔWðÛâ_ÃÏŒžð¿Å„Þ8ð§ÄŸ‡6Ò ×Ò´û=v?XjV¾ ð€á×$ׯ.´+‹Yõµ),WLš;y-VæUŸòãþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWϵwí7ð«ö4ý>/~Óß5ŸìO†¿¼©øÃÄ2Äa:Ž©%ª­¾á ‰`Š÷ÄÞ.×ntß xgOy¡[ý{VÓíh–f•>„¯ã'öüñ¦µÿýÿ‚¡x3þ Oð+ÄWòþÀ°ï‹l¾+ÿÁB¾(xcS6Zoüy¡jhöÿ ô^q§6‹~º§€tü¯,øÎëâ7Ÿ¬iß ´JPžgø&wü3þ ÕàŸˆðTÚ{öÚøßû êÿ¶uø'¿Á…>#ñ&™á„þÐïo4ÿx§ÄzDzEÌÕ­’òÒÎÿÂO øëÆisqñFÿÄ·úí–‰}ÏüMø}ÿÿÁOtÙïþûûqþÍ~(øMð£Áÿ4«¯ÚëöôÑ!ûG¾;|ø\`×<9ru;+¼­x‚åì¢Öt™¼3«Ã7Ž~!ŸOâ xo x²Vþðü9áÍÁþÐ|%á]Nð÷†<-¢é~ðæ£ÚCa¤èz‰c™£èú]ºGoe§iš}­½••¤Û[A1"¢(4Æ|9ø{àß„Ÿ¼ ð¯áÞƒeáo|6ð‡‡<àŸ iÊÉaáÿ øKG³Ð|=£Y‡g“ìÚn“aig‘ÞVHCHîå˜ötQ@Q@Q@xí û6|ý¬¾øà—í#ð£ÁŸþø®Ù Ö"økã?ƒjOۇ¿´WÄ}'âÿÇoþØŸô¯‹_t/ižѼ}ãË4ðì>"ñN™áJд ËWÔ[¸4Í;GÓ--A6p"„{7íÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|›û_þÝ_²GìðöÃâí{ñ˼¬j7:FƒuâÖumoÄÚ­Œº•æáOxSJñŒ¼U{gc¸»¶ðî©Ël²Û,Ê’^Z$ßRêZ–£i×ú¾¯e¥i:U•Ö¥ªjš•Ô:v›§XÁ%ÕíýýíÔ‘[YÙYÛE-ÅÕÕıÁorK,‰3âûö"øO¦ÿÁÄßðR_Ž_ðQßÚÂqøûþ ½û"ø‹[ýŸa¯€Þ9±¼½øyñ?ÄvÝë¼Yá R&Ð|Amu¦ÍgãéZ…ÄZ¶¹âoxXºÖô…wZeèÿÛþ;ñíï.ûÿÁ þ|Wø«ûE|´ŸÂZ¯í%®xSZð†¾øcV– MsÅÚ›©i—~!·¿ÓôÖîu/ˆ^%²ð¦‘ðæ¬õÍ?ø‚K{-'úÿ‚KÁ2>Á*¿do ~Ï>žÓÅ^>Ôæÿ„ÏãÏÅÃbm5_Šßu;x“VÖfi.¬¼/¡@‘xsÀÚ “0Ò¼;aÅë]øUñ±ªþŠxSÁ¾ð&‘‡üáO ø7@ƒÁ¡øSCÒü;¤BâmƒÅ¦é¶vQ°·¶·· )ÛÃ>\H«ÒPEPEPEPEPEPYZö…¢ø£CÖ|3âM'N×¼;â-+Qеý X³·ÔtkEÕìæÓõ]'TÓîã–ÖûNÔln'³½³¹ŠK{«i¥‚hÞ7e:´Pñ“û.êÏü½ÿ`×b¦§ü×þ eñ ø}ðßá÷‡õxׯ¾*ÔmôŸøoÃúM»\ßêzýË$Pà I„Aºk‰š+kh¦¹š(Ÿó«þ ÿßðïüöø—û9ÈúF‘ñSNkˆß³ïµtd‡Á¿¼)oxÞžæúg»Óô?XÞj¾ñEÕ¬3ZøÄ—ú…½Õõ…”uü®|#ðoü»þ ÓâOÙÏþ ýûz|!øŸû+~È¿±XZ~Þ~<Õ,|G¡x“ö³ø­ðÎþ ?ú,zÞ§§ZØÝø“[ÐF¸Hü-©k¾°¿Ö<_ñ¹õ]uæø[ámöÇà·üUÿŽøÙñ›ÂŸl|yñƒáì~8ñD¾ ð¿ÅŠ¿ Âõ |Íim§[Þø¥|A©êž´ÕgÔ4ÔMSÅ^Ðô½=JÎïÅ—ž²w¹ú@¯Ì¿Ú¯þ ûþÕ±4?°–·ðgÁßþøCÂ÷š'ÀûÏxoF±ñÀ rIEý§‹þê6³Üiš¼šÌqê^)In/,º•ŸŒ[V‹V¾i/¿àÜÿÚãß…fý´?à“_µ×5üvÿ‚m|U¶ð·#ñ¾£ðâ Ùë¶·šoƒfñмPú}—‰X·ºÖbµ{5¸ŸGÓÚTœÅˆôºŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ùÿ‚Ž~Úµ_ü›ö½ñ·ü›þ Qã‹O‡þøqitoÏÛbÂïSmÁØOui¨|𮽡Dnì¦å™ð¶¸þ»ÿ„—Æ>1‡Tð•¥ß‡¼àïˆzƪ­ÿ«ÿ‚’kß¶§Štßø"üÏÄ–ÿiÚnïþÚsâï‚5¬ü5ýŸ~4‰Ä#Ä~0ÑcÔ,ïUÑåk/ˆ÷vÞGáŸÏ©x:8o> xÏDÓ4Ïèçö$ý‘þ~Â_²§Á/Ù;ắƒ> ø*ÇÃiªµšXÞø»Ä“É6­ã_k©=ÒC®xóÆ޹âíbîf·¶¿Ö'µ³e³‚Þ4ù«þ ‡ÿ”ý’à”ß &ðìñ᛽GÇ^*Ó48>.|lñd¢÷âÅ[FK‰æýÕŽŸá¿Á{}}>‘áÁi¥éð˽“XÔà}^ãôö€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þP¾=ý?àëoÙ/â…´ßÙ> ÿ‚’þÆþ0øã‹ÙLvÖº‡Äo†Vz¥î§h[Û›†økðÃö;Ûa¹Õ–%—쎰7õ{_ÊŸüÚ—<_ÿoýº,âŽ/øeÿø)ÃÝ\Ծȗ oá?‰o£xÇÄwγAq‹ªØü—J¾Û=´M%õ¼+{gy=›¸õYEPEPEPEPEPEPEPEPEPEPEPEPEPEPEüÇkßðo¿íY¬ëšÎ¯oÿÿÁZtx5]WQÔ Ò4ߎÿáÓ´¨o¯&ºM°…>+Æ‘YX¤«kk",pEª(ä?öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯ø‹ð«\øûR~Ü?|MñSÇ|Að×öÄø¿àígãÅ RóZø‰ñ'PÐÓöW>1ñ¦­¨_jwºˆµÉ"kÝRîëP¼žk™]丕‰bPúãÑEQEQEQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE~BÿÁ[ÿà­žÿ‚`x᎗¥|6ñíûV~ÑÞ+_þÌŸ³7‚žî?|Iñ Ôt].òûQ¼ÓôÍnÿKÐloüC¢i‘éÚ.±¯ø—ĺ֑ èEʾ±ªh‘>#ÿƒ†?੟ ´íoÂ_àÞÚþËâî§dWá™ð4ßü{ðó^Õïà±m6ÏSÕ<7ðSûTšwÚ¤ºÕtÏ ëZ®¯,©k¢\[h7rê6`uÁ}?া;ý> øöOý‘WQñWüSöåÕSáGìåá? …¼ñWô~ú/k¿ü…;4ËÛ›åð÷ÃÛÍJKKgñ}ÅωWíÚ7ÃÿÃoõ§üëþ àø%ìwáOZ4Ö&ø·â‰£øûE|QŠÛß¾,êöP.©äÞNd¿ xJ_ x2ÊâTUÓ­.5Éí ×µÐ>Úúçü"úö›â›ÝCÆþ7ñ·Ù?§š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ù×ÿƒª>·Äßø"Ÿí+ª[[ý«SøGâ¿‚?´è„1];â×…<¯\,“Ë Eö x×ÄZ„…KÍ46’ZÁ³ÜF‡ú(¯Ï?ø+_µøÕÿÂý¿~-´——úïì‘ñÚ÷@µˆÌxcáî»âÏÆE¼SÎñ·Št=ÎŽ&–XwÇR; GþÊ?ÇÙoökøÖ×+zß>|ø¤o‘Òìü@øwáÏ”xç¹Ös«yªÉspŒžU"F÷Úüaÿƒxþ%§Åø"÷ìâe¸k–Ñþê? $gA‘?Á¿ˆ>3øH-Ùq°Gऎd&{q Ç™:Ì'“öz€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Šç|Yâÿ ø@¿ñgŽ|Qáßx[Jû/ö§‰|Y­é¾Ð4ß·^Ûi¶_oÖu‹›=:Ïíšå¥…¯Ú.cûEíÕµ¬;çž(Ûùîÿ‚èÁb¾þͱ¯‹þþÊÿ< ñö×ýªmÀ¯ÙëáßÁ¿h¼g¤ê_.Â:§ÄYôß ÞëSiM Øj7¶Þöí'‰þ$ÏáíM±Ôm-üC>’ñÏü'N‡þ ÁÿÄý¶ÿàª~&Š?~ϰÕìß±wìL×3-öuâM&ßV±ñ_Äm»µ–7Ñ5ŸøâÒG–ÎâÞ?>ž;v½ÑƒØÿ_5ù“ÿyýƒí¿àœ?ðO/Ùçö`¼´²‡â‹á–ñ§ÆËë)íoSøÓãù¿á%ñúNÈ›]ZËÃz…Ü>Ð5(I[¯ øSBmÒ2?éµQEQEQEQEQEQEQEQEQEQE‡âoé>/ð߈|'¯[-î‡âVðîµfá.ônÂãMÔmœH®…g³¹š&Ž„9 ¬2åü´Á¦>#¿ðçìûB~Éž(º‘¼wûþÛ¿>ëÖ3#Àöö2hzÔ7‹h÷wfÆ;ß¿-þȬ©ÆrKO+Ëq/õ/_Êüᔿàãÿø,_ì ÷bð¯íkðïá‡íÃà[k–Ù©¯Eu§]øòM1âŠ-FïÅÿ~ È­ šmWOðŠÞÞ\ÄœFŸÕ…QEQEQEQEQEQEQEQEQEQEQEQEQEQE”÷íÿ)ÿ‚ÙÿþÐúY¡ÑGíÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPùðÿÁ¿à_ðOŸø)Wì·ñ“öŠý§4O‹Z‡Ä‹OÛãߨn<ñ2óÂZ0ð߆_š–—iPiwˆ×«uâ-HÏw憙(¾P'úðÿ‚pÁ'?doø%n‡ñ[Ãß²~™ñMÓ~2ê¾Ö|j¾=ñµÇŒæ–÷Á–z펈Úl·6FÂ5ƒÄZˆºD‚áŒ,J˜¾oËø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP\—|yàß…¾ñwÄŸˆž%Ò<à/øoZñ‡Œü[â È´ýÃ~ðîŸqªëzÞ«{1ÛXiºu­ÅÝ̬NØ¢m¡› z·tIcŽ5gwv ˆŠ 3»1 ªª f$$€+øÂý¸¿h¯‹?ðpÏíq¨ÿÁ)?a?j~ÿ‚||ñF—¬ÿÁAkýn£á‰CÃÚÝî—ð»á¾³b·:N¯¦gI»†[çƒâ'‹´¹0ðî“­5½åÐMOKѬîíž]ö’[´Py_¥?¾ ü1ý›þ|:øðcÂzwþü*ð¦•àßø_Km¶™¢é0¢óelÍ{¨ÞÌfÔuVíå¿Ö5k»ÝWQžâúòây=V€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?’ø.ãkßðO/ø)üSþ g é—ºÂßj­ûþØúu¤Ó›„<¹ñmÞ…âi­-. ší–“㉷Úl“ZÚÀÞ.ðÃ÷U‘5-:ÖßúÂÐuÝÅâo êÚv½áßiZv» kº=å¾£¤ëZ.¯g¡¥jÚ^¡i$¶·Úv£cqå•å´²[Ý[MðÈñº±ù›öæý“üûrþÈ¿´ìŸñc |løo¯xN×R¸Í>ñg’ºŸ€ümh¾\ÃûGÀþ7Óü?âÝ7t5îOmsKo/ãÇü ûMø¿â÷ü›þ¯âóÜÚüxÿ‚{üUñìƒñDÔ™ÛWÓ´Ý™~Gr§tIeáý{¯…Úz!ŽAÿ ÊçÍŽ{èÖŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿˜í{þ ÿ‚?ø\Ö|C©øcö„mK^ÕugPh~8j0Â׺¥ä××mCB"(ÌóÈR0HE!A WôãE‘ÇÄ_€þý—jOÛ‡öuøU­mðßà·í‰ñáÏ‚-õÝIõf ø]<;¦éQêz¬‘Bú…êÚ‚{¶Š6™òå8¢½›öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ùÿ‚âÁC¾?x·â·€¿à‹¿ðM ›»ÏÛ—ö ´²OŒ_4K›¨-ÿe¯ͪ^ë:Þ«®iÑ\Ïáx“Âòɬ_øÊ}OÁåmO@´>4ñ§ÃýKOùÏþ Qûtü|ÿ‚¼þÔÚ÷üGþ Wã6ðç‚ty®aÿ‚ƒ~ÚZ=ä×> ðwÃ{9áÒ|gð¿Âš¦¸Ô•¯ngðÖ½‘¬i·?üS|6µÕ4ÏEñÄ5ý%þÃ?°Çìïÿóýž|û8~Î °ðÏ…<-¦Y¦½â-mÆ?|T°¬øûâ» 1\kþ(ׯ^âîif+a¤[K…áë-'úv™¥Yù§ü'þ ·ðþ sû.xOöqø%§Ç¨G®½ñoâ…í„Vž)øÅñ6{ kmwÆÚðY®ÞÆÉÞ°øWÂñÞÝØøKÃXèö÷7÷QßêÚ—èeQEQEQEQEQEQEQEQEQEQEQEQEQEü’|5žoø&OüçñkáÍô_ØŸ³·üsáU—Ä¿ÜG+A¢Ú~Ó_ Õµ-jÖüïXeÖµ[|K¹(ÖÍ,—ÿ<%o á2ÝÆßÖÝ6ðsïìÓã~þýµ~[ÉoûEÿÁ3þ3xWö«ø}¯XAu.±aàTÒâl6’YÍmqm§hòhþ ø§¯\Esm"iŸ äÙÕF#mGGº0´‘l‘¾• Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¦»¤hòHëq«;»°TDPYÙˆUUPK1 $_ˆ´wüÿúø#ã½cà×­Oâ÷íËñ÷EóâÔ> ~Ã? µŸÚÄZuÜWØ‹mSÅDºoÛy"¿v´Ô¬¬|c©ëšT–óÅy£-ÛYÚ^~ßQ_Ìf£ÿÆÿ‚k‚-Cá7üŸûmøƒÃó3•¹ø³ñ6?Þ#<³Z<¾Ôþx¶ú¤2Ý%ݼ×Q›‚i&žyಿ¦Á{?l¯-¾¡ûRÁ?à¤? ü9Ù5½àŽ–?i‹]ÐÍv^öå­< ðºÎ;hlá·žyuCKŠ™ÞÉäm'¿þ™(¯Í?اþ íûþßZ¥÷ƒ~üq°ƒãŠ×0ø“öø¥£êÿ ¾:èV"gÔm¥øsã‹]'TñéqCæêÚ‚ßÅ6•æG£©[]K(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(øµÿƒnÿà£ß°_ì«û|iøaûHþ×?>üC›öáý¢üQƒ>$üFðÿ…|E'‡uh¼ i¦kI¦jwp\¶}s¦j[]ò¥–Î቉±ýYþζ_ì¥û`Øø¯Sý–ÿh?…tÿÝé6>1¼øYã#Åöþ¼×a¾¸Ñ­µ™t›‹…±›SƒLÔ%³Žb­:YÜ2#l)Ÿðmßü‡ö ýª¿b?ÿiÙà'ÆïˆpþÜ?´_…âñŸÄŸ‡>ñWˆ£ðî“®ôÍ5=NÒ{•Ó¬nu=B{kPþTRÞ\:¨2¶«?ÙÃö4ý”¿cë韲ßìùð£àŸã«½&ûÆ6 <¤xBßÄ·š7Öú5γ“on·Óijz„VrL KË…B¥è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿ÏÛÓö¯ý®à³¶·¿à‘ðL߉7¿fïó}þ ûpxf}JᬧΧ¥êßü¨èz–•%ݤڶ¡áKéZņ­ñÅzOˆ4ûÍWBøgàÿêzàèÇüãþ Ãû2Á:<⟆ <_á·‡ˆY¼ð¯önð¥gã-oÃ?µ¸­í´=Sã=–ƒw=Ç‚t:ãSÓoíü'©µ§|q-ÆŸ¥øoH6ºˆ´<ïø!ü¿Ç?±Ÿ¾!þÖß¶F©7Ä_ø)'í™7¿hë—–zÞ©ðÿK×o^²ø=£ê–‚KšÂí ¿ñËèç_´Ó|=¡µ×…¼á‹©}Wþ Ÿÿýà˜WV~=ø_àÝ_â·ítËË_öøÏym∠&©<·³x?L‚ÖÏÂẾš.<-£[xšëBUÓñO‡µXçL×¼9â:çH×4mJÙ¾[‹ SL¼º±¼¾Ymç’3ÃWAE _ðExçþ Oÿý¡¿à‚ßu[CáН|[ûMÿÁ:¼s©É"¯ˆþë§Sñˆ~ÛIvÆ{›Ùô Äýݵ¸k3Ç¿~1wx5Í*Y¯ÚþR¿àè/ \|ÒàœÿðU/ÚIaÛ3áü>,¿ÓcHïµ/‚ß/ ÕÑ|-o¤ºLËkñÄfÖ[(ou6¹þª4ÝFËWÓ¬5m2æ;Í7T²µÔtûÈI0ÝY^ÁÍ¥ÌD€LsÁ,r¡ ¬2â€.ÑEQEQEQEQEQEQEQEQEQEQEQEWæ=ÿüþ 3¥ß^éšüCöJ²Ô4뻋ë;ŸŒÞŠâÒòÒg·º¶¸‰õÑÍñ¼RÆÀ2HŒ¬¿N+óÿþ¹ÿ™Õ/¯u=Gþ ßû%^êÝÅõõåÏÁŸKqwyw3Ü]\ÜJúyi&žyYdbYävf$“@çGûDüEð'ÅÏÛþ ñ?ᇋt|<ñçíÃñ¿Å ñŸ…õ}_þ'ðî¯.w¦kZ.§hò[_é×öÒ$ö·P;E4L®ŒA¢Ú'á×>þÛÿðPï† <% øáç€ÿnþðgƒþÍžÓ~þÏßþüø¤Ç YøKᯄtOhÆH-âµ×–º- ÔõYâ†3}¬jMwªê3n¹¿¼¹¹’I_ò›þ {ûpøŸþ ùàoø'×Ç&Oˆ¾¾ÿ‚—|øiñÁ bÔ5üFøM㿟´­ˆ<#gá­6âÚ^ÛëÞñ‡‡|òˆõßøOÃvãlË ¯¸§üàÛ"3~ÊÿðTXÙ•XÆÿðKÛȼd€J9àL‘–Rv±Gt$®Ë‚@?Qh¯ËÏø{Á¯ú5¯ø*þ*Ãöôÿç_)üIÿƒ”?à—?¾!7ÂO‹þ&ý¥þüVFÒQþüIýÿi|BW×–'ÐѼâ†Ú_‰µ”žÒTé ê+4Mf&! ¤?µŸüïöHý¶4»8þ>|!Ðõè owà^’çÀ>kšsK>‡â/†_<%.•ñÂ:ž…¨É­aoc­¶‡q¨[[cGÕ-Qí_{öQðgí+ð«ÃÞ øAû@øúÓ㦑ðý´;_„?´mü–ZoÄߊ^½ƒPˆi?|+¦iÚ~oñoÀRiÖÚ~¿ã¿ ¥¿†>(éz¾…âˆôox£þÝÓè¯x®ÃÇž ð—Ž4«iz_Œü3 ø¯MÓ<_áwÁ^-Ó¬9ð§ˆ|­¤-²gÒ"øká¿Å†Z-¿‹bÔôM^{ÿØéŸ5ÍzMç@Õ“Äú?†ïW[]>ÏQÒµ_MøñGáÇÁox£â—ÅßxSá¯ÃiW:ç‹=¹ðí®­5¦Ÿ6©m¢M¯¾›£-…”·±[-Ì––Ï)…>ˆ Š( ¿™¿ø-íƒÿ…ý˜ÿàŸŸµoí#àß ~Ȳτ~ÇàíHñ…~*|Iý¤h gKøñ‹Á¿¬üAá¨õÏ‚ß~|-Ö£ƒÇ6$†ëQO‹wjÁ}¦ZZÚê‘iÞ#‹úd¯Àø:;þPQûsݳëaþÏ´úCÿÌñŠþ ÿÁ7¿àŸ~=ñ߉uïøãÆÿ±ì£âÿxÃÅ:µþ¿âø¯Ä¿ü¬ø‹Ä¾#×uIîµ=k^×u{ÛÍSWÕµ›‹ýGPº¸¼»žk‰¤‘¾7ÿ‚ÉÁE~"þÆþý™?gOÙ’ß~ÚÿðPŽ~ýg{ŸØkÿ !Öõè1øãâhuí;áÔÞ/ð¼všF¤ðhÒêzäƸ5øZÒ/þ¦ÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþh௾+¿Öà靸"ÃmB8n¼;áO‡¿ ü{¥ÛÜ$sG¿ãôëûµŠHʤÐ/à Ü[N¼W±MŠXVFýþÕ¿à˜Þ)°ø[#x öüý¿tßÚ¯NÐÍæ‰ûFx«ö¦ø¥âß jm,RK ÿþÊ:î·ªþÉ>¾×­à“[ðV‹ðCK¸}[Í*Ã]¶¼—ûPó?ðEŸø)ˆÿà¢ß³?‹®¾1h:‚ÿjÿٗ⟉g_Ú—Á¾pè±üGðT­hž4Ð,o¡ŠëLðÿŽ ‚æê.S/ö7ˆ4ÏèQM=¶•Äß°µüQÁ¹þ)»ðÿü»þøI¥Ä¶žÔ¿iÿо)‹M·eŠÇO»ðíeñëÃ:Ác¿àà_ØòòÝtäÕÿh/~Ö ÒÖÄiÿdÑ>.^xËÆšòCn‚8H‹Kø±ðÆ-+kxbOEi¡¹€CýY×ò•ñfY?dŸø;öyñÔ—Ùžÿ‚’þÃ>$øG­_ݺÁ§ÝüNøXš¦©g¥0{•‰ïZËà÷Â-3I»òä¹—PñÑ ¶D¹’êPêÖŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Šüñÿ‚€ÿÁR¿cOø&.ðË_ý°|â韵?èþ›AðŒ¼xú•ÿƒít[Ýv+˜|!¤jÒé«mo¯é·Ëw&gHÚþeÿÄXðDßú8ˆŸø¿ù ãƒöÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯#ø§ñÃá×í-ûX~Ý´Â=Vï]øañ‹öÊøÅñÀzÍþ•¨èWšŸ…üJ¾Ôt‹ËW·´Ôôɧµš7’ÎþÚ ¨”š$pEþ’ŸðR/Ø—Mý¹ÇìGà_ü9ðGÅoƒ ¿mŸümøïàˆ i7‡õ†ºìÙûMøØ6x¯‰n`øñáô£BÁYíVîòu’ÖÆâ7Åÿ‡&ÿÁ#éß²'þ_òº¿Pëáø*ˆ5ÿ Á4?à¢*𮹫øgÅý…ÿkoxoÄžÔ¯t]Ãúþ‹ð ⥣뚱¦Ïm¨é:¾“¨Û[ß麕…Žíí¼7V³Å ø+áÆá/øÅWúì^ñn…â&=>ïO¿ðö¸l5X÷Ý µ´kZ ½*æöÒMÿ‚=þÞ–¿·Oì[ð»Å^4ѼIðóöˆøqàøcöø_ñ LÖ|9ã]ÅgÈš_ÄgÒ"kÿ´í;âˆw øuñ_Ã?|ÓxZÃöB³ð熼M«Ýø'ÃÃİCâ/i–\jÚf—wz~ˬ€ÒŸø$ïü¢Ëþ §ÿfûÿë:ü9¯çþ ]àk‡_ðqÇü›ö–Ö-$ƒÂ_u_~Ï–úÔ÷ o¦xOãOˆ¦·ÓžgfŽÞôÉûEhóA©êbO³ÚÉ+ÛLm¿m¿à_ ?àªÿ³OÂ?Ù[ö^ý ~Á?5ƒ¿þ|>ø%­|QøAûCþÑz‡ÄÛïü+øwc௠êú_ÃO~Êžð®¥â+ïìuèï>%èqŽçRÔ,BI¾™qôGüwþ ãð›þ CðÓá'Ä s^øuãŸøÏÃÿ>|tðT2xÿàwÆ/Ü‹Ï øßÃk~¿fÔ¬‹†Ó¼M᛹­mõýâdµÔ4?Ùè%Ѐ>ÿ¯âûþ ¡ðM×ÄOø)üÇöÁ´²’xÇö»ñï‚|¨ ƒ=¦§uâÿÿ~(x’ÊÞUH…Äš|<×Ax¼ElÐ p‘þíkžÿ‚Ñø›á-ÏÁsâ/Ø Á5Ôô9<'©~ÚÞñoÇmcÅÖ–—v‹¥Þ|Að¿ìs{ðsDð~‰ñ+i.5"Úûö¯×¼¦øž;YæÐ¯ô5}}ÿðýþ Á6?eÏ~Ë¿SS¿Ñ4½OÄÞ3ñLjʹž/ø£ñ+ĆÞOüDñ}ŬqÃ.¯¬=¥•…º‹EðÞ‘ øvÖYlô{yíú(¢€ (¢€?•ßø5_À>ñ/üËãn£â?xK_ÔíóûL[ ýoÚ>«x-â´øvÑ@.¯ìçœCI#$Aö#HåTb¥ïøT? ¿è—ü;ÿÂ+Ã_ü¬¯ç;þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQExí)ûBü/ý“¾|Zý¤~4kÑøoá‡ÁŸk~:ñv¦Æ6¹{"ؽ¶‘¤[I$GRñˆµ'²ð÷†th_íZ߈uM3H²Y.ï`€?<à®_ðW„ßðK¯…¾·O_üný­>4Ìþý™eÿ¥æ¥ãˆÞ)»¹I±Öu›  íkMð5޵uia=Í…Ö·â}bX|/áíRKÛ'ñ¯ö@ÿ‚C~ÜßðTŽý¿ÿà¿:ü7‚šÃij§üÃB³‡Eøqá¿KMQ.¾,ø1n5Xt=1^+5?‡Z¾­â/ˆž.½¶µÓ>0x¦ÛEðõÇ€5Þ·þ9û1|Bý¼ÿh‹ðpí·áØåø•ñÓZ×|+û ü7Õ –}7àoÀ¯É©x.?h·Ð ‚öÿH‚ëÁÕ൱ŸQÒÓÇßfþÒŸâ­¾¡mýqÐ6ÖÖövöövvðÚÚZõ­­´QÁomo,P[ÛÁ¤Pà J±Åj±ÆŠ¨Š&¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùÆÿƒ‘¿dŸ¿fÿ¿·/쥦Þê_µgü+ãí)à "Ò{ík_øuos¡ßüTÐ4ë 6ŠëVû+xKÁÞ5Õ4D™Ž»áŸx‹@¶²Ô/õ‹K9¿£š(âø'_íçðoþ Mû&ü4ý«¾ \M‡ã+I´¿øGP‘_^ømñ#BX ñ§Ãß…XÃßè„É%Ž ‘Gmâ_hž&Ó“û3Z²fû~¿’ø%™§Á=à¼_ðTø&–#ðÏÀßÚ#Ã>ý¹?f¯ æ }J½¿]*_øwÁ¶QIØcOøNu¿Á¦ýš`<3ð>ÅãžÞ-8hZôQEQEQEQEQEQEQEQEQEQEQEÏëÞ𯊒Ú?xgÃþ$ŽÉ¥{4×´m;XKGœ"Ìö˨[\, 2Ç•¢d rB.9¿øT? ¿è—ü;ÿÂ+Ã_ü¬¯D¢€?ÊOöÀ°±Òÿà¡¿ðS;L²´Ó´û/Ûçãíµ…´6–v–ñ]èKÖ¶éC€±Å""€@¢­þÙßò‘Ÿø)×ýŸÿíÿ¥šþ”ß¶—íßû*Á<¾èß¿lŠ2|#ø_âi? ô¯'€¾&|CYük®h^&ñ.•£Í¤|+ðoõûîôoø†äj÷úU®‰ÖQXO¨Å¨j:e­çå¥çüÿÔ-.¬/ÿmËkë ëiìïl¯?eÿÚþæÒòÒæ&†æÖêÚoÙíḶ¸…Þ)à•)bvŽEdbéoíÍû |0ý½üðcáÇÆe{ào„ß´ÏÁïÚ7TðޱáË/xkâ8øM{«\·ÃŸhšÕµï…<]k¬]iÚä7‘êVWeí5 U°¸º±›{þùûÿÑ‘þÈŸøŸ¿ù‹ åWþ ßÿcÿ‚ÿÁA¿fŸxOá?ü·Å¿?hƒàKÂø‰ðûàí­àñÀ¯rºÞ§û8|bÕ´?ÙÖê}càŸõKKt½·½ÒõÑà­jDñF›¢kZt¾,ðoŒý+öÿ‚ïÁ»?°¿ì;¡øö`ñuÏìýâÔøo'е¿‚·ÿ¾?øÏ↽ñ‰<9!–Çâ7Ž?áƒø/â?ŠïuÈ“NƒÅw~=°ð´zd–vškø;ÃÖÖú.ý0ÿ?`¿ú2?Ùÿ³à×ÿ1uÍøËþ ±ûxÇÂ+ðŒÿ±oì•cŠ|7®xrkëoÙ·àòÜYÅ®iwZd—Ví„­¦[¥Ñš#ͼ‚DSñ6$PßöøÉâïÚ/ö$ýŽ¿h?ˆéxóã·ì¯û=üdñ´^²›MÐ#ñwÄÿ„žñ·‰#Ðô뛽BâÃHMg\½]6Ê{ûÙ­l„0Kwrñ´ÏõExGìµð:Óöbý˜ÿg?Ù®ÃÄW>/°ýž¾|!øeâËÍ:-ïÅŸ ¾ø{ÀVÞ"ºÒa»Ô!Òîu¸tÔ§Ó¢¿½ŠÆ[–¶Žîå"?»ÐEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@VŠ|Sá¯økÄ3ñŸˆ4_ øCÂz.§â?x£Äzž‹áÿøE³›QÕõ½oWÔf·°Òô­.ÂÞ{ÝBþöxmm-a–yåH‘˜Y×µíÂÚ³âë:W‡<7áÍ+Q×¼Câ{Q³Ò4= CÒ,æÔ5mgYÕµ ­ì4½+K°·¸¾Ôuëˆ,ì¬àšææh¡‰Ý‹ïÛã>½ÿ&þÛÞÿ‚qþÉ:ÖªßðL_ÙSâ…ñ'öéý¥ô ¦°Ñ>/ëú õõ®ðïá¶¹·¥]˜µ}+Àw†ìµÏ6«ñf;Uð§Ã¯ jzåOˆ¿?k_ø9ëã猿gÿÙ§ÆÞ1ýš¿àŠ<[¦i¾;éÚ&©áoˆ¿µw‰4Ø,å×>hò˯^é¾'ÐåydÔ|=áéôÛo øKN¸Ñþ!|XÒ¼IâY~ø"êïö7ýŒgoØ'àG…?g?ÙÀ^øqáxÖyUdkïx·ÄsZÚ[jþ5ñ¶½2­×ˆ¼_Ⳇ}[Tbˆl†ÇM³Ó´‹; 6Ðè/ø?ÂßÍæÓmþ'x×âìIãífÙôÏ][ø[À.° %$°¹Ô¿hojpÉu$–úTÚTºÊ +‹¼¯êο–Oø;WDŸÃß°WìãûMè¶72øŸöMý»¾|X³Ô,¼èîí4i,|c¤^Y­í½Í¤útwþ)—Á­ì3Ç2_XXE¼¢hÿ¨­VÓõí'K×4›µéZÖe«i—^Tð}§OÔm¢¼³¸ò.c†æ:Úhäò®!Šx÷l–42€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè ô1ý§¾ þÖ¿ >%ëµ¯ì¨øÇ~4ñ ¦–¿ÿc/‹ž,ºðÏ¿ÚR/ èúg‡´|9ø‡qªŸ?hmº6áK/I¥ê? ~!øLðö…ñ'D³ŸÃú/ŒtŸš>ÿÁÁ?°Ljá_ík«üDÿ‚wþÑZtp'Š>þÙÞñ'à 2é±׺'Äç^ü+ñ/….&"}ıx¯N:Ö“5¦¬º]œ3¼Pþã׎üjýž~~Ò>oþП~|pðyóÊxkâÇ€<-ñF¶–àD%¹²°ñN—ªAazLò%õ’Ay ÖÖÓÃýºbOi±k>ý±eé,o«á¿Úá&»¦Ì“F³Dñ_i~.ºµ‘e‰ÒXÙ%!ãeu%XÆ|Hÿ‚–Á<>i·Z§Ä¿Û›öJð}½¢«=¾­ûA|,]Zv’34piú ¿Š'×5[¹` Á¾ŸðF_ƒ¶Z‡ƒàŸßuK>EšØüQ—Æÿàóæ{¥k‹?¾-øƒg{¶k‡ /`¸Q [ÛökKXaòsÿÂðÇíQ⋯„ðHÏ€¾>ý¾>#¥ûèºïÆOFñwÁ/اàÕɵy_Wø«ñׯ~‡RÕšÁ1¨Xø7áß„õýkƶ¶—–^ÕùìÌÿ¤ß²/ìáãß‚š/‹|uñëâíÿÇŸÚã,Ú«ñ£âRYÜøoÀ–Qøtk-á…¾ÛÛ?‡ÿþ'‰_ú=¶¥§É¸ùøׇüƒþ ?ÿÐþ+k_ðÈßµwìŸÿ ·Uðž—ýûS|9ÿ…y¨ø×þ«=vïí¾ƒíwÚ–Z'ö'‘¬Ë”û,úŽž˜o;#òãþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE™­ëz7†´m_Ä~#ÕôÍÃÚ™­ëºî·k¥hÚ&¥ZË}ªjú¾©},:n™¦ØÁ=åýýäðÚÙÚÃ-Åıúÿ_¾!þÑ?ðt/Çï~Î_³‹¼cû?Ág¿áü}ý¡ìRÿLñ7í{ãmëLÕŸÁ> Ò®^ KÝ"O°k^ÐõÛ;½/ÂV7š?ÅO‰zu߈5O‡¿-ý#þ {ûPüdÿ‚Ð~ØŸðD/ø'Ÿ‹ïôžÔÒûþ iûWxx´¾ðÏ…ô`Yk_tR £ƒWhµh‡­hV—+uãï[·ƒgk?‡þ ø¨ÝÿQŸ²¯ì¹ðSö.øð×öhýž¼!m௅ 4Ñ<;¥FËq}<³K}­x“ÄZ——š×ŠüS­]_øƒÄÚÝÂ,Ú¦µ¨Þ]²D’$1€k~Î?³ÁoÙ+à·€¿g¿ÙïÀZ/Ão„ß ´X´O x[D‰„qF§¾Õ5KéÚ[ýsÄZåü·:¿ˆ¼E«ÜÞk:ö³yyªj——W·SLÞÝEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEøuÿ#|2?àŠ_·VŠ–s{á¯xâmŒ±[½ÅÅ‘ø[ñwáÿõ;¸<»[É!S xW´¾¸F‘iwWÆ{«+s5ÜmÿÁ0>&Cñþ ¿û|MŽhç¸ñì‰û=j:¹‹o—ˆãøYá{/Ù)Ž XÏöˆ­uKÑ[A5±h¡Ž2¨:¿ø(GÃø\°Wí±ð©md½›â7ì™ûDx*ÎÞ>Óvu|#ñv“¦Ëc±ÔÜê6÷÷V×sŧ_O ôVó[ÚO2G~jÿÁ²?áeÿÁ¿b»¹æŽMOÁÚWÅŸ†úœQEå­¯ü ß>$hº$ˆ¢I$“ÂQxvòiP>é®d–YÖW ½4QEQEQEQEQEQEQEQEQEQEQEüÇkßðrö¹¬è¿ðçÿø+N§ýªê:_öŽ›û7yúv¡ýŸy5§Ûl'þ×u•ß“çÚËæA$o»ý8Ñ@äqñãü4íIûpüoÿ„Ç ¿ájþØŸüqÿ ßâ†ÿÿÄOÂ@ž¿ÿ„oÆš'™/öWˆ´¯7캥˜ÿg¹GqÆh¯fý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¯çöÂÿƒž?à—²Å_|}{ã7í+ñÀ:•ŸÄ›Ùkáö‰ñCø{y¡Í<!¶ñŒ<]ão‡~½“ÃRÀbñ#xW\ñZÛ>™©Ém«Yê6±ßiÏ~Íú€®~(ø_âŸðËÆZœº½ñÛIÐtÝká' jæûHÒü/oñ–þË]oxCñ–©«®Ÿ¦|@j ¼7qepß6xŸâ·†¿à_ðKÉfñ_íóûFZG¤|Xøáëá“û&ü#Ö­V_kž ñ ­µèð·Œo|'qs¬^êÑìÖþx>ki6ïã_ü?þ¦ÿ‚ØÿÁ\®?àŸþðwìûû4ø}¾1ÁG?j‰­|û/üÑ´¹‹RÁq¦iz³½Ÿ„Ïmu Þ.•ðêöÞêõ$Ó´Ùc»ŸÄgÅ–Ó[ÜÀ.àkßGiY[ÿTUüªÿÁ ¥_…ðU¯ø8wög¼Xl þ×¾ý¢¼)¥*Ú$ŸÙ5ߌ>'ÖZÞ8,ì Zf§ø‡áô:}ªC,6V÷ÑÛùÒH ÝøõUEPEPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬5òŸíß­üGðÏì=ûex“àë_§ÅßþÊ´>·ð±ô£tºšüGÒ~xÂÿÀí¦µŒ¶÷«~¾&·ÒÍ™³ž¡p#6òÇ.Ç_«( Â‰ÿ¿c¿ƒðoÇíyaûxÁV_üEÿ¶ý¥õïø¿Â–ºDº§Ä6÷ö_ø‰{?¶ø³ÆºÅÅõýÿ‰µ]jêëSM~óV‚ãìò¬¶Ñþ®~Ö>ø)ð»ödøûãßÚ>÷H²ø áÏ„ž<¹ø´5Ë«k]?Rð5χ5 {ÃùºžÙ.ïüOgvþÒ4¨¥šÎ¯ªXézM{m ŸÊí{ÿøáâ?~Óÿ àŽ_ðTà_ÃO‹^2³ý¥¿àœþ1ø¹âY¾ü?OŒvZ­‡‹¬,|9ðñ> Þü>ð§Ä;-K^´O kŸ í¯ôëF¹±Ñ|Uy¢.Ÿ¢è¯û3Á?i¿üwø}ÿÇÿ‚¦¯í{«èúåÿÄ?°¾—ñSÄr|&ø—âÿ…²iWÚ‡µøîê?tφòxƒÃ÷ºî¡ü$µKVÖ´{_ø’o ë7žñôyûÿÂÆÿ†ýŒ¿áq}·þçü2ìíÿ OûKöü,oøT>ÿ„ßíþgï>Ûÿ 7öŸÚ¼ÏŸÏó7|Ù¯«¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:×ùðÿÁ¿i¯ø-_Â?Ùoã'…`ø&ÏÂ_ÚÃàKþØŸõ[¯Š>5ý¢þü,Ö`ñåãøRxY|3ã‹> ÕžËIÓít+¸55ÑÚÒíõI¢†òw¶•!þ¼?àœà¥ÿ4?Š×_ðRØ»áÿìs®h¯„íþi~øÅào‹°øïJÔ,õÙִˤÕüf‘€}¿ÿ8ÿ‚büRÑ£sÒÛX.§®ÞØY5íÄV×Aj'3Ë*ý¢¾i?>;xƒöÄø¿ªüZø]¡x‡Lñnà^'‡fñ…´Ïhº®»¤ë¶ZF ÒÚA©éÚÆ§iv‘‰a¼9(ýqëåïÛƒâ‹þþÅŸµ÷ÆŸ‡¶²_xûáì»ñÿâìa‰çšóÅþøQâßxjÖ("‚êI¤¸Ö´›(R(í®Fp‰ÌDmõ ekÚâYð׈´Ë-kÃþ"Òµ ]ѵ+xî´í[FÕìæÓõ=2þÖPÑ\Ù_Ù\Okuo"´sA,‘¸*ÄPä/ü×þÛû~ľ þÛ?³‡ˆ>&ø£âíð‡Ãþ×õŸxþ|=Õô-j_øÇÄ>9ð­‹ig]¸Ö¾+x—Âú7ŽüC®ø§Æ>4¸“R½¿} ãJ±Õoíî¿@ÿj¯ƒ?þ6|ñ¦ƒñ…¬´=ÃÚ.§ãMâpc§ø£àŸ‰ü-aq¬h¿<â›Ym5xÏáÕå¤~&Ñ|K¡ê:v¡e>´Ý}–[ˆeþ^~+üÿƒˆ?à—³øþ §Ãÿø(ì ¡É<_>|vÓí¼_ñŸöðÐì¾j6^<øAñ'Çð„³¦—à«íÆþ0Š ÃM·¸ðÏ„ì —L|?‡?àâÏø,6­eðÓþ E§xþ ßûê×z{|tøkðZÂüRý¡<Û¦½ðOYþ%|Xø§áƶ&ïJñ]ÿ‰¼[áMtÝJòAáï%´>Ô¯ìWñkÅcÙ/ã·Ž,ÿ³¼kñ«öføñkÅúÙ’Ïì>(øð³Â¾1ñŸØã‚Ö;O³jÚÍÜfK[dƒg”°B¨#_¦k+Aдo èz7†¼;¦Yh¾ðî•§hZ¦ÛÇk§i:6‘gŸ¦i–±ŠÚÊÂÊÞ [[xÕc†£Uµh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ù°ÿ‚öÿÁI¾'|7´øsÿ¸ýî$ñ_üköèxA·ðΧö}[à/Â~+‹üHÖ5+G7×µ­ q|/«¿þðÖã‰×7Zpð¶ƒý²ñü+ö—øåÿÓý¯üEÿuÿ‚|xÊ÷Áÿ²ÂmVÆOø)í‡á»>™w§Yê7Vš‡ÁÿßYj°Yx›EžöÎëA}Gø‘ãk ø.VËáoüM­ø—ú¢ý—?fOƒ±¿À/†?³OÀ Ãàï…? ¼7máÏ éJë=õÑY%»Õ|A¯ê(_XñG‰õ‹›ÿøŸ[š4ŸV×u+ûù3?–Ÿ.ÿÁ+¿à›à–ß²'?fφvö¯‰’|Oñ«âtv?dÕ~,üYÔlí£ñ‹/¼Æ’æßHµò!м¢I,‹ øSMÒìd{DêZÿèýQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEðüwþ çð/þ yû.x›öVøÿ7‰´Ÿ k÷‡¼cáßx"}ÓÆžñ¿….'“Fñ?†n|A¢øƒIŽåìoµk]iSÿhø_Äö• ößE¨ZýÝE~.Á$àÿ‚Sêÿ´§Šì¾<øûö—øûIjþ¸×~%üXÑ ‡ÇÚ_‡~iÚí¦‘á›¯\—\†{¯]^ÝÞˆ´†¸û.•kums‘¦µ¯çÀÁ7ìÿK~Ò_Q²¾ÿÁYÿfmã÷„,"‘¡²¸øáðšÏ_¿×]äó ½EσÿhO]ÚKWÖÇÇúl°´vrªßÿX5ü¢ÁÈÞoìÅûBÁ¿à¨–¶óYh²¯í•iðÇãV¹§ˆÅÉøEñ‰ôWZ·¿a$w)i…|ñ/GÓn‹ 2×Qñ¬–úš\6¥em õwEG ÐÜCż±Ïñ¤ÐO ¬°Í ª9b‘ $‘ÈŒ®ŽŒUÔ†RA¤ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXk¿j+¿Œ¶³7í}û9ÛÚ]þÐv_¾.]ü µ¿·‚îÆçã-·€ø¥üAÕþxŸOðf£àohòÁ«h~1²ñÆ›sácKžGLÖâ±½²–;˜"pðgü+áÆo‡?±ÝíïÆoÛÛÆ?ðP{ÿˆßüañÂ_¼{»Œ>øSU²Ð¬àï‹l<]âøÃÃ5ð†·¥ë3øßáÞ½ªDß ãQ¹HšgŠ‘á¶uC,‘ă#¢e‡ñû5ÿÁ³Ÿ¶¾±àÏþÑ~9ÿ‚×þÞÿiÏŒ¿| ã‹á»¯‰ö~6Ñ|a®øZÆûVð?‰|suñÿEñ§Šnü-ýÏ„æÔ|CÕÛé÷GKƒ¥Û{_Åø7'ööÕ>|DÓWþÿ‚“øéµx¶Äx#ÄÞ-øÅ¬øoÆ&ï@Ô-Ç…|C£ÉûLÜǪè~!2djÚkÛ\%õ…åÅ«A*Êc`ê+öoøÛ ~Òÿ³¿À_Ú?ºN¯ x_ö€ø/ð·ão†ô/ýˆkú.ñ[ÀúŽô}'\mÕîý¯¦éÚõ½ž¥ö Ë»/¶Ã?Ùn§ƒË•ý¢¾(ÿ‚jø'Åß ?àœß°ÈÕüã߇ÿ±Gì­àŸxGÄ6Siºÿ…¼]áO~мIáÍsN¹T¸Óõ}Y°½Ó5+)Ñ&µ½µž U^6íz(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø¯þ ûyüÿ‚o~Ì^<ý¨h-sì>ðµ³éÞ𭌱ÂUñCâõ•õÇ…~ø.ÒL‹¯x–{Ô\LMд›]SĺõÍŽ¢ê—ÖÀ3Á`?à¬? ?à•Ÿ³Ô1¼Ò£øûGüV½›Á_³ìû¦Éusâ‰ß.|›Xoïôí$K­Ãà? ]_XOâmBƺÔ.®ôè³/ˆüK¤òüþ Wñ;àïÄø(ßü"ý¾%ÿÁNkÅÿ„—ǺοŸq'Àë–öÓZü(ðÄP&™¢ø’k´ÛG¢èn¡|6ðŒvþðö©¨x³æ/ø#Çì'ñçöÝý¥¯¿à»?ðT ¬_¾ Z[Ëû þΚÒê³h³gÁ¡ý¦|!âØôea[MNçLÕï5‡V÷¶^|Rëš¿ÆKècñ¿‹ô›Ÿ ÿYQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWã§üûöyö—ÿ‚?þÜÞ‹KþÔÖü%ðwPøßᔉõu¯€šŽŸñy¿²U"ži5GGð~­¡Gio\jPj×\%^ô0ý‹®KÇÞ Ñ~#øÆ¿5øcdÿ |o¨¾6¡âïëW­@g0‡G½¿K+ùwÿƒI|_«ø&_ÿgÿ\±ñGì™ûc|}ø#ªiå hl£’o üDšM=áùåÓ.|Kã$RÝp×Öšˆ -Õ›úˆ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXj†«ªiº™©kZÍõ¦—¤hö𦫩ßÏ­Ž¦éöò]ß_^ÜÌɽ¥¥¬2Ü\O+,pÃÈ쪤‹õòßíÇðçÆß¿bŸÛáÃIæµøñOö[ý ~ü?¹¶‘ḷñ·þx·Ã>žÞXäŠH¦‡]Õ,$ŠD–'GUe‘ÎƯ‰_ðp¿ü®üÿÕñÁŸø'Çì)¬Éwsð;â—Æ½^÷AøçûIx"9%³Ò¾*Ko§|-øÁã‡^ñÌ*øÓû9xBQ,º¿Æ =µß†?<}ã x5qªxßBÔtO$µº¸Ò¯ü)oouªéWö&ý¤~~ÕŸ³/Â_‹¿³Åî‡ÃÍOÁÚ—‚ô™­“PøK¬èÚUžŸ¬| ñ^‹ v÷ñoÃkØdð¦¹áÍBÇOºÓ®´Â«h¶¯nòVý¸i߀?²OìËñ_âïíªx}~Øx;ÄYðN±qjÚ—ÅÍ_VÒ®¬4¿„~Ð¥ŽæïÅ^(ø…wq†4½O°Ô&¹“R2\[‹næˆêMWÒ¼A¤ézö…¨Ùk&·§Yjú>­¦ÜÅy§jšV¥mØ]ÀÏÕ•í¤ÐÜÚÜÂïðK±³#):5ò¯ì'ðëÆÿbØßá/Äsrßþ~Ê¿³ÏïÍßk>3ðOÂ?xgÅët“7ÚN¹¦_÷K+y»³#œ±úª€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?χþuðçþ Ïâ¯Ùoã&§ÿÝøùûü5ýžWöÄø÷kwáßÚOFøƒñþ"Dþê1Oá‚Þ?ÓG‡ntÙ|=™×Vånmõ-…º´rOýxÁ8<ÿZð~‡ñZ?ø*OÅÙG⧈/µ_ ¿ÁÛÙgMñv§hÚ5½žº¾2‡ÆKâφŸ%–ööö_>Œl Õ£H-µ4¶ŒÑ¥ÇåÇü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šù7öÐý¸?foø'ïÁ köýª>%iß~iW0iv Ð\jÞ'ñˆïwgxSÀþÓR}gÅ"¾ $ÂËN¶x´ý>Þ÷ZÖntÍ MÔµ;@£ö¯ý«>~Å> þÒ´_¬< ð·áÆ‘.¥«j7/šž±¨:²hþð¦–óA7ˆ|câ{ñ“á¿Ù·Úµ=Jâ(ÃCÏqò·û~Êßÿ࿵O†à¬ßðQ_ _øGöøk«ß·üóöñ@—PðïŠ4»FŠ o‹?´Ë›[M?_ðþ«©ÙZøŠþþæÒàüZñ…–šÂ‚~Ð|=âîözøOûLÁÍ´Ç…k¿ÛÂz÷ÁÏø#§Àoêz¿ìÛû.êzN©ûNø’ÂïTÓ´ÿ|@^©:j1Û"$9ñ£ØYéZF‘¥YÛéúf•¦iöñÚXiºm…¤pÚXØXÚC­¬Q[Û[Å0Æ‘¢¨ºˆ‘¢G,qƪˆˆ¡Q@UDUUU@  :Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùLÿ‚+´_³ÿü›þ ýûÉmi§ÚxƒãGßÚÓÁÚU±’Ò=;Nø¦Þ"ñ·ˆ–ÓMš‡Ø&±øÏðí-~Ç½Ž¬vö¿j±»°{êο•YMçÀ_ø;ºØ)UÓ?mßø&; 6‹¸­®uoë— ‘Ö—ºæ§þÍAi-^ËEÖyê×BÛPþª¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯æ;^ø/ÿeË®k2xwö·ÿ‚K[ø~MWQ} ßRðßÅöÔ`ÑžòfÓ!¿h¿fIâ7±YèÇ<Ñ™ÖB’ȸsý8Ñ@äqñNøë¤~ÔŸ·™ûNëÞñGí aûb|_µøÍâ/…ðêÿõ¯ˆ§‡SÄú‚àÕtoêQxvëRK¦G}¡i7+lÈ%°·lÆ öoÛ;þR3ÿ:ÿ³ÿý ?ô³C¢€?Ð?þ óûiþÒ¿±?ìÛà_~Æÿ-?iÚ›ã‡Ç_ |ø-ð·RÓ|C­é7ºå÷¾$ü[ñNµ«è^Ö|7®êÖÃ_„7¼hlüMáø¬§j÷ú‘Ó´Û»;¿ºhß²Wí&ŸüC¤xKã÷…¾:øÇàõ·Áÿ?î<=¡i¿í>迵/ ^/Y.¡oá{o=‚Þ_¥ˆžä}#ûxÁ¶ÿ³7í¹ñ_ý«¿eÚãìñ«ãt0ø·âW‰~éü:ø«©kÑhxËÅ ñWÃýJËź¥ÍâjZåχükáÝ3YÔfÔ5g@¹ñ^«ªø‚ë'öÿƒg¿gOØ»â÷‡ÿjÿÚ¿ö˜øŸûxü_ø<¯â?†ÚßÅý"_ü2øg¨i~¢¾4µð«ãŠ®©âOù6ú‡ï5o]éÕ,ÓÄ:ü$š.§£xÏ€gø;šø* þßðL{?Íá/K Ùßø7_{ë]MÍô»kÖ±]Ðk¸,L\0º¹er.&ÌlOŒŸ³güÙÿ ‡â¯öçíéÿâÕt_øVþ9þ×Òüá½GJñ–¥¥ÿÂ1ªhXxKTÕ?cLÓ|Myiç[è7ú޹¢ØYê²Z\^jÚu¼r^Býh|;øàÏ‹?ü ñSáLjl<]ðóâgƒ¼3ñÀ~+ÒšVÓ#ð¿ˆtÖž(gk kCÔ¬u+6š¥6÷1™"òƒ±¯€?à“¿ò‹/ø&Ÿý˜ìoÿ¬ëðæ¾ÿ Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¬ø§Ã^ð׈,=À#ù(ý€¿àŸŸ?à½_þ õÿX³ñýœg×'°gì@Ú¥å¿ÃûO†º6¬Oñ‡¬Ö[ÿ ë7ZjÜ][G›ñ“]ŽçÅíÄ? ðŸ…5˜þ)ø“Åÿðsçíã¢üøW}âÝþ­ûxæ ã/ÅHuMÇöÁøÏ¤ˆ¤µð¯†%¸†Ý®´Ï²\I¦øz<%×…<«xâF´öž"ñ¯ÃYÿh>ðþ…á=Cð¯…ô}3þðΑ¦øþÑ,m´ÍBдk(4í#GÒ4Û8á´ÓôÍ3O¶·²°±µ†+kKX"‚Ò(Õ@Ë *ÆËLÓ,­4í7N´·°Óôû xlìl,láK{K++KtŽÞÖÒÖÞ8à··‚8á‚Ò(‘QUEº( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ågþ ëo?Áïø/wüóûFÚ@¨¾;ñoÇïÙ«RÔ£Q¾!â}#Iðn—§ÞHté5¿ƒãïˆN›^Ló˜5_*--¡këŸêš¿•_ø:=Oí þ #ûTB°­ßìýÿNø$We’;«Hõ›mKâ ¼s¶Ÿ¨}žÑ®~ Ù›™Z âYÒÄÉa|Þ\qÿUTQEQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« gk>“â'TÐ5ý/N×4-sN½Ñõ­X²¶ÔôcIÔí¥²Ôt½SM½Š{=CNÔ,çšÒöÊî­®í¦– â’)0Ão VöñGFÁ(±C 1(HâŠ4 ‘Ç*¢"(TP@ &†ˆe·¸Š9àž7†x&E–¡•JI±¸d’9™Jº’¬$T”Pv£é>Òt½@ÒôíBÐôë-EÑt{+m3IÑô2Ú+-;KÒôÛ( ³Óôí>Îm,¬­!†ÚÒÚ ‚(âhÑEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óáÿ‚Á8ÿà ßµOì·ñ“âwìÇÿ…øµû ü7‡öÄø÷áy¾ x+à=ŸÄ}çÄšKøRëTñ³x†^t½×­u=6Æ};û –Ù4Xd÷h1ÁýxÁ8?coÚçö@Ðþ+i¿µ‡üSâüRñÖ«á;ïk^=øWoðºo†Zž»o­ézm½¿Ä¿ˆãXÅêzuÝÔí>’lÛE†1ØŸ|¥ÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ\Ï|iá/‡ñWÄx“Eðw¼ áÝkÅÞ1ñoˆõ m'Ãþð¿‡të_]×õ½RòH­4í+HÓ-.¯õ Û™c‚ÚÖ f•ÕšÌø›ñ7á÷Á‡Þ1ø¯ñ_Æ>ø}ðßá÷‡õxׯ¾*ÔmôŸøoÃúM»\ßêzýË$Pà I„Aºk‰š+kh¦¹š(Ÿø·ñW‹?koø:ã>£ðã᜾3ý—¿à‡Ÿ¾$}›ÆÿÎ}'âíyâ_Éo«ištMõŲj6Ðkv†• “ÿ "Ôt¿xâ|HÓü)á="î©wûDÁÔ´…ÿ‡t]CÇŸ³Ïüßöqø‰:¦±oo¨è7ýµ|uá{å­”ÒÛ­¬vѪÃsaex×6 4JË]Õ4ígâN¡e¦x_û.øEð‹á—À?†^ø3ðgÁøqð·áLJì|/àŸø^Å4ýÃú&ž„Ckk/,ÓM+Ky¨ê7’ÜêZ¶¥syªj——š•åÕÔÀ—ìÛû5|ýþ ø'özýœþi_ >|<²º²ð¯„4‹Nþ+1¨jZ¶¥y{«kwÚ¦¹­jº¦©}y¨jz¾µ©êýÝÄ“\ÝHJí÷:( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( æoþÛðEÏŠ?àŒÿ|Sj.Vo„Ÿþ|C[«atůÚtïž=0í…ö/¯xkâƒÝâ{{”Ùéàö¿Ü±¬Éömö÷“¬wPû'üÛâ+üUÿ‚UÁ<üi4ëu{sû!| ÐuK¥Înµ¯øEðN¹s 6ÖŠ“\jþ½šâ(`[h§y"µy­Ò)¤ý#¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþcµïø"÷üT×5KLÿƒ?hMMÔu]FûOÑaý”4ë˜t‹+»É®-4¸®í9¸O‚Hís&UˆHbŒ¶Àü‡þÙßò‘Ÿø)×ýŸÿíÿ¥šã?~øÿáíIûpü1ø«ñ{Vøýñ#ÀŸ¶'Åÿ øßã^»¡'†5ŸŠ^$Òöº¯µ?G¬ø‰4kÝ~ê7¾ŸN]wV[g”Æ/î6ù„ ô€ÿ‚¶ÁDüqÿÐýž>üjøuû/ë_µç‹þ$~Ñ¿gÍàï†|}ðÿÅ–±ñ/Dñ­Öuᙴφ_õ?k×~$ðÎá}7Áºw†"½Õ§ñ(»¶Ô’]5týGò7þ×ÿrÿ¥hk¿ü=þ1ÿè6¯éç⿇Ÿ"ð|?ü'¥x²?‡ÿ<)ñSÁ‹ªÇ+ÿÂ9ñÀ÷r_xOÅšiŠXš-WCºšYläbñ~öD–)cvCèü£Ãúÿà®_ô­íwÿ‡¿Æ?ýÕç¿ÿà¼ÿðW ~üN‰ÿàÜ_Ú³Á«'ÃßFÞ/Õ~,ø÷_Òü*¯á½I[Äš–…§~Éz¡­Xh`RóI±×4kÍJÞÖK;]WNžd¼‡úû®↿áï |4ø‰âŸ%„žð×¼[¯øž=Vú 3L“ÃÚ>¨j:ÒjZ•Ñ[m>Á´Ûk•¼¾¸e‚ÒÜÉq1ÆÆ€>Bÿ‚TÞ]êðKßø&íýýÕÍõý÷ìûÞ^ÞÞO-ÍÝåÝÏìõðîk›««™™æ¸¹¸™ÞYç•ÞYev’FgbOÞÕò¿ì-ãüDý‰?c¯ˆ ~Cð‹áwŽ¿eÙïÆ? ¾[jÚÖÿ |℞ÖüðòßU0[NøvûNðÜZ¶·ûdzjÜùyžZýQ@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü}ÁY¾0üTÿ‚ÇþÝþÿ‚þÇþ-Ôt€Ÿ õ7â/üãdžѮ´ßhžÕlu‚ð_$‘ØÞj:F©›Þ‚¯zÚ×Å­GÃZN¢ºN•ð»â Ÿ°ÿà´ßðX/|ñO‡à›ðO-÷ã/üÛöŽMð·†´¿ ­–­gû3³¿…~ xºtšêßFñžŸ§›oèzo‰-m4/xZWø›ã+ë? éú}§ˆ~Îÿ‚6Á*üÿ¯ý˜.5x~"þÒ_u8>#~ÔÿgšïSÔ~!üL»†W“LÓ5ZÞ vãÀÞ’ûQ´ð¼Z¨ŽóP¾Ô|Cã JÖÓ]ñn¯ €~Œüøð«öeø7ðçàÁéžøQð£Âú„<á]&2¶Úv“§«šâw-q©jú­ì·ZÆ¿­ßËqªkÚíþ£­j×WzýÝ̾·EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEòÏíÍàø­û~Ø žÞKÄø“û,þÐ^{HDÍ5ÒøÃá/‹¼<Öñ {«Ì“DÄ‚ Û9‹0Ý[¾ÙSò§þ øˆÿ?àˆÿ±Ã]]5Ö«à…øÑðïS,Å„ á£ðõª¹¹”-¿ƒnü4…dò¸u¶¶†Ì[ûãcgªXÞéš´7º~£iqc}gsËowgw ÛÝ[\Dà¬Ï±°*èì¬&¿–ßø4^ìhßðN?Ž¿î/]Wàíéû@|/»´¹“K7°ÛÚøoán¹ãǦË)kKÛícUŠ+ÉÙ㸿±Õmì¦–ÎÆ-€ÔíQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htP÷µÿ¬ÿ‚lÝÿÁSg??³ƒ]ɦxWDý²>üRøŸ«éÚž›¤x£GøI¡iþ9ðĽGÀ÷šÅž¥¥¯ŒáðŽu8ô%¿Òõ[s<®Ï¥êE¬¿™¿ñ÷ü7þƒßµßþoó¥¯êæ²µíwF𾇬ø—ÄZ–‹áÿéZŽ»®ë:•Ävºv“£isjž§u)X­¬¬,­çºº¸‘–8`ŠI…Rhù[ÿˆ7¿à‘¿ôý®ÿðóx;ÿ-|·û@Á±ßð@o‚×cáoŽlüøëãï jw_|ñsöÅøàx—U¾]KFðέ x3Æ~ Ñõiâ‹SbO±º´»¼³»ÓüÆš)£NÛã_üËþ ¹ñ'OoÚ7öÿ‚`|´ý„<[ñ7á—Âÿß?k-F]âÅùþ6üUðgÁ_‚>4´ð÷í'ð WÐ|3ñgǾ>ð|:5ÒxG^ð¿‡tßÚêZ÷°´cÄpÿlø;]øcâ‡ÿÿà›¿°'Â_„¿ô«ÿ†þ9ø¯u|Rð·ÃOxÆÙôWÆþ:Ò|ûb|~]Ážµ¿}KÄ^'ñOÂïx7ú]½Öµâ›?ì?QšêÏö øEã?Ù÷öýŒ>üG·°´ø‡ðGöOý>xòÓJ¿‹UÓ-|gðÛჼâ‹}7T€,•„:æ‹}ü*±^[¬w€’_XW‡~Ì ¼CðSölýžþ x»Æ³|Iñ_ÂOß ¾xŸâ-É®<}âx @ð®µã[†º–{“7Šu-*ç]”ÜM4æKö3K$›œûQEQEð'üËöûðoü3öFñ§íyãÿø›â_…| âo‡žÕ<'àýGJÓøÍ㯀?¿f{¯µî¯á¿…ï4Wø§¦ø&ióá]g⃠Í{càox‡L1ê×Þ—UÕõO Eqo§kw±ë+}§Xþgøoã§ü¯öYñl|ð‡önøm{¯[h±þ׿`¿øö{¸×5]Jk t?·?ƒgÍ?öto¶êopŸÚñ¯ì$’N÷[$2·ín¬i>!Òt½@Õ4ísB×4ë-cEÖ´{ÛmOIÖ4NÚ+Ý;TÒõ+)g³Ô4íBÎxnì¯m&šÚîÚh§‚Y"‘€hÑEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Ž_ð[Ïø*§üÿö;Ô%èšå§ìû j÷Ÿ ?àž>ñ]œÚ|^7ø¥\Ũ_üe—DžQw¢]˵{»ˆcÔ,¼e¨ü)𾵪·ÁínÊØôëþmÿ–¹ý>øŸöƒý¤ï›âgü_ö´cñö ø±â˜uí{ÃW~&¾“Å2ü"Ð5½ÓŦ‘ª_}¯â©£L,ümã{asö›ÿ xkÀði_¼ôQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@+?ðnlqø ö±ÿ‚ýþÏðÌÑÙü3ÿ‚˜xÇÅzN˜÷vÉmá,ø¿§xsPšÞ xmæÕ4O‡Ö"fŽ( ilžÖ+KW±ž!ýSWò³ÿÃþÐøQÿÁx~ ÊÓEcñ3Â_³WÇØc”ÝIø_ x{Y†òÚseok,63üwÕ4æMåínÅ„2_;Û„þ©¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†¾[ý¸þxÇãwìSû`|øyq5¯Ä‹¿²ßíðÃÀ×VÓ{‹oøûá7‹|)ᛋ{ud`škV²’)…í¡ŠEWVû|Ôú’¾Oý½~.øÏö}ý†?lÿ_.,->!üý“ÿh¿‹¾»Õl"ÕtË_ü6øAãø^ãRÒç+¥a¹¢ØÉya3,W–ë%¼„$„ÐãOŠ¿à¢¿²‡ü#à_íƒÿçýuÿiµwÀ¯Ùwÿ>xNïÀÚ·†ü£ø×àÆ©ðÓÆ¼%áíMâ†G“á¿Æ(þü9ñŽ‘}¢é3iú…ÜöÚ^Ÿ­YéÚ‡‘ïÿ³¿ü)ÿ¼øËû7'ÆoŠŸ´ß¯ٷǾðë¯Æ¯ÙËã_Šl¼%ñ«áïŽô˜®,ücàm#áÆ´¶~1ø&«Ù_ÚisøÃúýÆ«fÖ"óNÒµ™îôK)ÿàžßðPø'¿Åÿ ü;ý¡uŸ…¾ý‰jÿÚ»áï5ˆ—Ÿ¿gÓû.xß㿈otçÔðWÆø7Âí;á{ýUu­{ÀÚ—‚¼wã™îô—TºÓt]Aµ>Ïè‰_ðFoø&ÅÿÚwNý±þ"þÇ? ±ãOkú…åÜ)u{qqp<ÊûSötóìùð$ÍáëÿÍÿ oᇛá=V9bÕ<1'ü!:™áíJ)Ò9â¿Ñ[:mäs"J—Ò,ˆ®ÉEQEQEWÃ_·§…¿b?Š ¼ðKöåø›ð»Àþøƒñ‹á~»à |Jøµá_…ðµ>!ü+ñׇ~!xcÁñ&±¤]xËíúÞ¥[ëžÐMÆ¥«i’بƒí‘Ì¿r×óåÿ¿ÿ‚]| ý¸¼eû"~п´O„?ho‰?e‹ÿ‰–?|û3Üý³âUÏ„~!Ëà=bÃÆ°ø*Ïž.ñ—Äo ø;Yøý—ãŸ|!¶Ò~/ê¾ñ­ÏŠ<}«ê^·ðˆ@?r~ |'øwñCá_‹¾ øÛÂz.³ð·ÇÕþxÁrØÛG¡Þx3[ѦÐ/´(ì"‰m­l†•;ZÚGokd© ZˆšÊÿ$ßðggí?ñdzŸíûxïÄú¿4ŸØŸã„m¾ëšËÌï¥ü?ø¼~"ÚCàÝ-'¼¼{-HñWÂ?x‹NÒ¼Ù£ÒŒn,m®e²ŠÖ_×/Ú?þ —ûx3ጬÿeÏÍû_þÖÚF¥¡|ý•~xOÆ~<øÁâ?Š7ömá}#ƾÒü7>³ðÇÃöš¤ö×þ*Ö|{a¢?C³Ô¿³lu­pXhZ‡ŒÿÁ¹ŸðJˆðLÙÅ·¿´–ûS~Ô~1Ó~*üg°´Ô!Õÿá °Ó´¹í¼ðãPÖmÕ­µŸxoûkÅÏŠu +›Ý1:x?á×ù4ÿ¿…5mb_ë¿ |mzþ"½“^¸‡SÔ²°\ÛYéÑÇe[»Íû1ÿ§~É¿ôø+·þ%‡Ã_þ‡jÑÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEKRÔ´íN¿Õõ{û-+IÒ¬®µ-STÔ® ±Ó´Ý:Æ .¯oïïn¤ŠÚÎÊÎÚ)n.®®%Ž x#’YdHј]¯åþ Óû[|fý«>6|(ÿ‚ ~À¾"X~>þÔko¨þØ_ôÙf—Lø û7Ij5}SCñMþ˜âãIoxr+ŸøçO7z~«{àü=àk=jše¬`,ü}ø›ûEÿÁÍßµGˆÿd¯ÙOž(ø7ÿnýžønËž ð†‡ ŠÇIÒl·ÈÌò;=Åþ§©^Íu«kšÍü×:¦»­ßjέwy©ßÝÝM濱—ìƒð_öý›>þËŸü=ƒðóᎃ Ä‘Aýµâ½~äý«Ä¾8ñ]äD5?ø»Y’ëYÖ¯™?´\‹;(­tËK;¨h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯å^Ñåø1ÿyê°¼Ÿgƒö·ÿ‚YÛ\¤-- Kùü)âëh"™!7ï#\ÛÇû8_EÑjÛ¥Ù[/ìÉfÔ¦þª+ùWÿ‚§Isð þÿ‚þÓrG·Bø¿§|uý‘uiÕn’ ouÝ;Sðφ´íVæå7]ý£-5]Ê}¢ãQÑnçh­'0UQEQEQEQEQEQEQEQEQE~hÿÁGÿà—¿ ?à¦ZÂâǿڻàTõ_jú=çì³ñKß uÍâû= ÎòÛÆW!øãÔÕì´äÐ-åÑ¡µ‡Mk9îõ–[‘ ø+öføñâߌ ìÖÝîþ ü.ðçÂÏk<j·wÚ]«\ø¯Âvz¶ƒÜêZu»K~¢këHË\GôÍ|_ÿ!𥷎ÿàÿ·¯ï|aᇖ~2ý‹ÿjO ]øÿâ æ­§ø ÀÖÞ!øã"xßPÐ4_k¶>ðÌW­x–óEð[hÖW³iÚ.©xØÎùÛûKÿÁsÿàŠ~ øSÃ_þ<|ø¿áßøÂ賟ÂÍMý£5«íTÒmn<=áMwÁÞ¶ñƒ¼1wia¼K¤|EÕü2˜­#½»ÓÒçò·áwÄ?ø*§í9ã k?ðF¿Øâ'üóöp´Ôl®[Ƕ÷Å-SÃÿÓìtŸx2oèöz¼¾ñ®•¦jzÞ›¦x·Ã¯xÚGˆôý?YÕìlµ‹;ËkMNþÞ8î¥ëh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+åÛSöÅø)û~Í?ÿj_Þ ]áÿÃ=Kãeo%±×ücâK¬ÛxcÀ^±¹šÕ<[âí]­ôÌ˼O4º–©sa£iú–£hð¯üsþ Ëàïø%÷À ð¾—ÅÛã½ÛøöMøaΫ¬øÏÇzͦŠõKëø+ÂWú®Ÿ%Õ¥”IãÜèžÑîl¯uéµÈ¿à†ðKþÄŸ¾!~ԵƳ7Äø(ïí¡'Ä?Ú[ÇÚÍìZÞ£à«-oQißt}Y@KºšßTñìº>ÍÿÅÐ[hºLÚ—…<àûÓðÏü3ö1øßûr~Ðz÷ü«þ MáÛI¾,|^°‰?a‚z”ÏáÏ€?Ü\ ø÷DÒ5$ó-.õ=ö{o†7wq%åΫx‡âÍè¾×þ 蚦‹ýjÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Êïü}¡ÝøöOým_Ú_ÉâÏØ“öùø!ñF+í8)º°ð¶ Ú¤š·ó&‚îî¼Oð«Jz/뛉tEñd›t½BðdžÕ¼Iâý?GºñÇÃÝKH×ᶺ×-ãþĨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿVøƒþ má?x÷þ ·ÿð/|3âxÛÆŸ±í_á?x;Âz6£â?x³Å^#ø ãíÃÞðχ´{kÍ_^ñ»«ÞYéz6¥ÙÝj:¦£umccm=ÌñDßoÑ@É7ìŸÿ°ü ñ‡¾üJÿ‚þÒ_´ÿíëñ/FðW…#´øoñ+â_Žü/ð§áí´z>±°oj¿.l<#µ‡‡í"‡ÇþÑg²Ñ¢¶¹ð]¥™]2×úføû1þÎß²·ƒ!øyû6üø]ð7Á‘Gj’è < x>×Q’Ég_k’hÖ6·^ Õw]]M>±®\j­ÝÍÝÝÕÝä×7WÉîtPEPEPEPEPEPEPEPòÿÃ~Õ²÷ÁŸØ#ã_„>0~Ò?>ø²OÛ»ö’Ö#ð¿Ä¯Œ?< â'Ò/mü ž¨š'Š1Zxvk;o]|,ø‹áˆ6úÆ¢—éöúÌþÖ5x´¹¯â´»’Î+Ö‚K¤¶¸xÖ ÿßðoWüþ ÃûpþÆßþ4~ղ߄¾0üO¶ýµ¿h_CâÝoÄÿ´‹Èü/¡/‚ï´ ZxWÆZ˜a³»Öµ9’f±7N×n²Ï"$Kõ•ûÿÁ<ÿcOØLñÞû| ðÿÁ3âeþƒ©øêÓAÖüe­'ˆoü3o©ÚèW/âÿxŠ[vÓ­õN(–ÆKXängIYc(öuQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Vf·­èÞѵøWÓ4heþ·®ëºÝý®•£hš6•k-ö©«êú¥ô°Xéºf›c÷—÷÷“Ãkgk ·Ç nêCÅþ.ð¿€<)â_xÛ_Ò¼+àßè:·Š0ÿƒ o›ŠÞ1ÑÐ~|'øi ÛxsÁž ðå±·Ó´­:ܼ²I$’¼·šž«©ÞKsªkºî©s{­kúÕíþ³­_ßj—×wsz¦Ÿikaakmcacm••œ[ZYÚ[D°ÛZÚÛB© ½µ¼(‘AH‘E,qª¢€,QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE,_ðuÇ„uoþÉ¿²Gíåà˜f‹â?ìûmüø¯¤ë‘@o4ï ø‹U‚ÓQ‚ÚêXÜÚµ÷Ä_|%rd/e;Y$WvÓ±·h§ß øŸEñ¿…|3ãO Ý®¡áßxFñ>ƒ~˜Ù{¢ëúu¶«¥Ý¦ ·67pL¸fq‚G5ù‹ÿËø(ÿ´ü+þ ðâhoo"ý|]ñ'L³ž#7ÚµòØ|lÑ­­ÐIú|ú¯ÃÛ8´ÙöE¨5¬²,ˆŒcþñ±ÿh?ø$‡ìñ*{¸oï‡ìãேZ½ü7é¯uï‚‹wð[_¼»˜É!:Öµðþþ}]7(‡T’ò"1 ~©QEQEQEQEQEQEQEQEWÉW?·ßì'gqqgyûj~ÉV·v³KmuksûG|‚âÚâ )íî —ÆI,3C*´rÅ"¬‘È¬Ž¡ëZüTÕàÝ_ø"Þ·ªjZΩûü=»Ôõ{ûÍOQ»ügGº¿¿¸’êòáÒ/‰QÄ=IJJËi–!T?‚¿Ú›Å>ñ¿íïÿ!ñ‚üG ø¿Â~$ý»¾;kñG…õ}?_ð_\h3Yjš.·¤Ü]麦y ,Ö·Ö73Û\DË$RºI\¿Ç„Ÿ¾þÙ?·ïÁ„~´ðWƶ·ÆŸxÂV:埇|/ ·‡ìt"ÚïV¼Ô5;ˆl­"ŽšþúîéÕCM<ŽK€?ÖžŠ( Š( Š( Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€)jZ–£i×ú¾¯e¥i:U•Ö¥ªjš•Ô:v›§XÁ%ÕíýýíÔ‘[YÙYÛE-ÅÕÕıÁorK,‰3ãöøíûHÿÁÊß´'¿a¿ØcÆ×¿?à”¼_¦èÿµÏígje7ß´®·e©Ç8ø}ðÖY£:ç….೸Ôü-¢›˜tmbÖ/ˆ®¡Ón¼ áSÕÿ௿¶GÆßø)¯íEüwþ ¥âeŠïWgŸþ 1ûJh¡ïü/ðgá5Îoâφ‹«ÙMs[®©keñÃMÔ-/5Ÿ]hS´¾Õ>!ØiŸÒ¯ìoû"|ý…?g†?²÷ìýá¨ü7ðãᎃ™m$¢5Ïk³qâ_ø»P†(F­âÿk/u®kú‡• ¹¼»6šm¦Ÿ¤Ziúu _û8þÎ?¿d¯‚Þýžÿg¿h¿ ¾|6ÑbÑ<-ám&ÅfžûTÕ/§ioõÏk—òÜêþ"ñ¯sy¬ëÚÍåæ©ª^]^ÝM3{uPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP;âÿ hÞ9ðŸŠ<â+µøÆÖü-®Ú~ìý«Fñ›s¤êvø–9b>}•Üñ~ò)cù¾xÝr§ùÿƒK|U©éðO?²ÿНÕügûþÚÿ~ êzSÛ\Y]YiWáßG}-¥Ê‰maÔ|i­øþÞ+iÊÝÁ>•yÄI²7›ú‘¯åOþÿs'ìõÿÖÿ‚öþÇw±ÜÙÛ|HñçÃ_ÛOÁºsí{1kñ î¼]ãZÂXäòZ=Nóö€ðU¬±Ä’ Its§ÊÖ×67ôýVQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkøgÿƒz¿à¯_ðNØ{ö6øÏð_ö«ý©<%ð{â}Ïí­ûBøÖ k~ø«ÞIá}u|c¤êâï¾ ×´Á åÞ‹©ÂµðºF´v–Ñâi?¬¯Øïþ û~ßúgŽõŸØû㧇þ7iŸ ïô3ÇWz‰ã-<=âk}NëB·¹OøoòÜ6£o£jrÄÖ1ÝG´q;ÄÍp³¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢³5½oFðÖ«øÄz¾™ x{@Ó/õ½w]Öïít­DÑ´«YoµM_WÕ/¥‚ÇMÓ4Û'¼¿¿¼že¸¸–8cwP[Öôo hÚ¿ˆüG«éš‡´ 2ÿ[×uÝnþ×JÑ´MJµ–ûTÕõ}RúX,tÝ3M±‚{ËûûÉáµ³µ†[‹‰c†7uþ=ÿmø,?í]ÿGøÁãïø&‡ü—ÃRkð­µç‡?hø(=ÝÅŸü*¿xJù.­µˆ¾øª MwDÒ´ïØ[jZ‘ñäÏâïNúœ_ü7¥a¦ü@´òÿk¿ø9£ö‰ñïìûø×Å¿³·ü'á®úíûObÞ[ÏûLëúý´—^ð­Ôv–òêf¯oiyáo†÷zÄ\¾KO‰¿¬žâãÂ>·þ³¿cOØ£ömý~ø{ö}ý—¾éŸ|¢-µÖ¢ð…ºñ|Lš^¤ê>8ñÞ¼ñÇuâOë°iv’jÚµÂÅh£¶Óí4ý6ÞÒÆÜæïø%Wü³àü“ö›áÂyïüoñƺœ^+øåñÓŰÅ㋾5Ëw·á&»:7…ô(î.­|%ákÛ»M ­CP¼¼Õ¼M®xÄÇéíPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Ê7í¥2þÆßðsÇüwö’+s£ü>ý¿ÿgþÇ;¿O: M[â†ï®ŸÂQMp—+ íÎ¥âMwözÑÆ•w ÅZTZ•©»¾HÒÓú¹¯Á/ø8—öø‡ûdþ°üDýŸnu7ö­ý‰> i?µìû}¡EøƒSÕ¾Û\]x«ÂZ,³Ê#‹UÔ4Xáñg†ãŽÖòçSñǼ#¢ÇA©]H?{kË>9|bðOìóðcâÇÇŸ‰7í¦|?ø3ðçÆ·£Àún­¦Z|´ÒþxÏ\ÓuI¼·»—Áz÷ˆ¼o©És,íªk:5¶¥¨4ú´6×ð@±í ¦~Ö_²?ìÕûKé-mä|sø!ð×âeݵ©V—­ø¯Âz^©â= ‚–T¹ðÿˆ'Ôô;È•a»Óç‰] LÑEQEQEQEQEQEQE~*j¿ðqWüoDÕ5-Tý¼>ÚjzEý晨Ú?¾3»Úߨ\IkynïÃY"v‚â)"fŽGŠ’ŽÊA ÂOíÿ)ÿ‚ÙÿþÐúY¡Ñ^sñÃâßï_¶Oíûñ£á‰í•wªÙϧêVzLñÉñCÅzt^Óµð»Bøªêø?¶ïí¹û^Áw>8øóþ £ÿŽÕ¿áý‹¼+¨Øø3ö×ÿ‚€ ©|'©ÚÝêJÚσ~kp^éí­xdØX^Gm§ørþËÄe†òÚËWðÿÂfºñ?Š¿¥ø'ßü»öcÿ‚h|Ò¾~Ì~ þÁÑŒ–ZÇŽ¼c«Mý¥ã¯Šž6‡I±Òoüqãi•Ö«¨EcA¥é°iÞÐbw±ðî¥Y3@ÀÇû,~Ëÿÿc/€_ fŸÙûÂpø7áW¿àøwK ­FöC$—z·ˆ¼E©˜â—ZñG‰µk‹ÝwÄzÌè’êZ½ýÝÏ— o}EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüSühý”à±_ðEïÚwö·ñ7üûà7†ÿi¯Ùöë×%ø…¡|1¸²¶Õ¦ý•¾;ê³O.§ªXø:Oxn_ì;[y5[M QO7Áwþ“Ážñ’&¡à=%µ¿±ÿ`/ø ÿíyûFüÿ‚…ÿÁa?kïþØÿµg†¶ñ_ÂO„2^¥÷Á>-ºµ°Õ­n¬Ä–öÚ=î¹à¿µÆ­£éÿ<7à¯Xx·GѼSnÞ"žÊÂh?©(Ë>9ü#ð·Çÿ‚Ÿ¾øâ6›ÁŸ>x÷áO‹#Hã–FðçÄ/ j¾ÖŒ)(1´Ë§j× ÿ”J’1‘üéÁ­ß¼W§~Ê?ÿà›ß]l~>ÿÁ3?hoˆŸÒ®Q&²OékK¦µ»µŠ?ê¿’ÚÚÒãþ ÿ!þȵ¾ŒÑ迳ïü—ÂþÊ?aHRßI¶øå  xoÁ:ýÃA$Vm·Àë”Ôµe¸º¶ƒâ¥âÞL×Ú”¶`ÖýQ@Q@Q@Q@Q@Q@|•sû~Âw——Ÿ±_ì•uwu4·7WW?³ÁÙî.n'‘¥žâây|òÍ4Ò³I,²3I$ŒÎìX’~µ¢€?Êö¦ð·†<û{ÿÁH|!à¿h>ðŸ†ÿnïŽÚ?‡|/á}#OÐ<; é7 6Z^‹¢i6öšn—§Y« ­´Öñ*ÇH€V÷íÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@U-KRÓ´m:ÿWÕïì´­'J²ºÔµMSRº‚ÇNÓtë$º½¿¿½º’+k;+;h¥¸ºº¸–8-àŽIe‘#F`=Íͽ½ÅååÄ6¶–°Ësuus,p[Û[À,÷ÊÉ0ô’Ë#,q¢³»ãö¾ý³?hø8#ö˜ñüóþ ›â­sáÏì3ðÛ\û7íëûsiWÐé8ð¢jWº«ðÓá~©¡Ëq§xƒÂþ-Ó£Õ“Ã=ÍÜMñŸQ·k»öðïÂo ëú߉)~Õÿ¶oíGÿ|wñ×ükþ uâKÿ„¿ðOÿjð蟶—íúÖ´ÚOÄm¤{}Wá¿Ãu´ŽÁõ/ ëЭéÑ<5k­èÚ§Æ„°ß®k¾ø?gOþÌÿ³‡ƒí6×ï ^x‡Åþ!þϳ:–¥7•oµ¥†£Xé>Ò´"Ãêª( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿/ø:ömñGÆ¿ø%¿Š¾/ü7ŠEø­ûüQðíwà»ë(Qµ;M;áì÷ú'.`ÆØì¼?à¯jþ>¿‚]Ð\Z–î!¶Ûý×;âÿ xsÇÞñG|a¤ÛkÞñ§‡u¿ x§C¼2‹MgÞ#Ónt}oIº0I âÛQÓ/.¬ç0Ë¢)˜Ç">xìUûPø;öÔý“¿gïÚ«À†ü;ñÇᇆ|sýâçþízöÌ[x¿Â7‚D—þ ñu¦¹áMH‚@Ô4k¥ Àdý?_Â/ìÿ=ðoü•ãÿÚOþ +ÿÒ¾+·Â߆¿üCñKö6øËàÏ Åã›M{àÅ+Ùµ›-OOµÔ´©ml5 ¨ÛŦMÃW}/âˆ>'x_\kYt] Ǫ|ø3oãß®‹â7ð¦ck&¹/‹ô6]^ô ×½±D[Ã-¤‚y åSúîÿ‚tÁRgÏø)·ñO_øàÏŽþ³øCªøWGñ,_~CðêîþëÅözÝî™'‡`‹Ä> ­´h‹¨ÊÏlm%–ÑKçå?+ÿàÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@W%ãßx/áo‚¼Wñ#â7Š4?ø À¾Õ|Uãø—Q¶Òt øsC³›PÕõ_R»xíìì,, –âây\*¢eˆR¹«ëO‡ô­G]×µM;DÑ4{+KVÖ5{Ûm7JÒôë8ž{»ýGP½–K++X湺¹š( ‰IdTRÃøÑý³?k¿Žßðp¿í¯Á/?àšzíÿ…ÿàŸ^ ×4x¿ooÛÆÆÆõü1ã=OÕ­µ ¯†? µ„¶kM[LÕ[Oš/é°\Auñ—W³’â{àv‹â?ø·Žø¡ñ#öàÿƒ þ%xëàì³âmköLÿ‚0xÅw?iSÁš•§Ä?Ú«[Ð[HþÐðjº¾™¨_éR\Is}¢øb5ðÖáíí5?ŒjÞ)ŸBøqcýkþÈß±÷ìïû |ð—ìñû1ü9Ò¾ü3ð…³­½•£M}­ëú­Ô²\ê~&ñ‡ˆïž}cÅ>&Õï&šæÿWÕ®®%Uh¬,RËI³°ÓíÙöAøû |ð7ì×û5øËÀŸ | eåÛÛDzç]ñ6¹r‘mø×ƺߕ ω|gâ[˜Vó\ÖïZVX,l`°Ñì4Ý6Ëéš( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( 3ø±ðcá/Ço j>øËðßÁŸ|!ªéÚî•w¡xÓÃún¿f¶^&ðþ©áMylý¼³i—:§†õ½_D¹¾Óe´¾:n¥{j—)ÄŠßÆ1ý˜õïø6Ãþ wûk_>7|UñWü_öùø›âÿÙ×â§Â"›UðïÁx·ÅÞ|.}:5t³[o MâíVÒ¼cq§_ø«PÑë_'ŽúÚE’Þhâ•¿vŒÊûñE|cÿìý¨ímoØgöWý©¡’Ô>3|ðg‰üW²À–ö?¡Ó“Eø—¤[­ªÇn!Ñ~ é^&Ò"ò¡·R–J~ËjI·‹ìê(¢Š(¢Š(¢Š(¢Š+ùŸ×¿àê¯ø'‡µÍg@½ø+û{Ëy¡êºŽw-ŸìÓg=¤—ZeäÖWZÎ~"Æf¶y`v‚Rˆdˆ«”\àLPùüIøáá?Ú[ö§ý¹?héÞ(Ò<ñ‡öÅø¿ñÃ_´eð÷‹¬4_§‡u _èkw~ºV¯ *^Ø­íз˜4byÜJö?Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†Š( Š( Š( Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (®âŇ~øÃâÏůxwáßÃ_‡ú ÿ‰üiãojvÚ?‡¼9¡i±nõKPºtŠ(ÔmŠÔ½ÅÝÌÚZE=Ôðà Q­ëz7†´m_Ä~#ÕôÍÃÚ™­ëºî·k¥hÚ&¥ZË}ªjú¾©},:n™¦ØÁ=åýýäðÚÙÚÃ-Åıúÿßþ#|_ÿƒÿkGöXýžõÏü6ÿ‚.~Ëþ9Ó®ÿhoÚDM_E¼ý¯< I§ê0ü?ð›]5„WZGÚŸá :kKû_ iIoñ›ÆI®j |âµïü#ûGøÓàÏìßãÏ~ËßðEŸ‚&·ð÷ÅŸŠšl:¿„¼yûXÏ)ðõõÿ…gÑ®î]uk›¶Óµ KÁÞÕ¬SÂþðíþ™ã/Šú6«ã[ÿ xìwöhý›> þȾ~ο<¦x áWÃÚøÃZ›1Ë7”<ÍG]×.âŠ5¯xQ{­oÄþ ½¨kºåõö§},—.Ô×ü"øEðËàÃ/|ø3àü8ø[ðãÃö>ðO‚|/bš~‰áýOB!µµ„–i¦•¥¼ÔuÉnu-[R¹¼Õ5KËÍJòêêoF¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+’ñ÷‚t‰^ñ¯ÃŸÛ5ï…¼á/ø'Ķhȯw x«G¼Ðµ›di#š5iôëû˜•¤ŠTÁxÝr§­¢€?—_ø5Æ>"Ða_Úö4ñÍõÍÇ¿`ÿÛWã¿À»«9–Há²ÐïuxÏø!§üßö¹ý‘¿eŒŸ ~ÿÁ%?jÛgÁ“þØ¿~Ôx×öBÿ‚3øÅ «ü"øg{>ãßÚçDk°ø®6ÙÆ»w¬ØëiÏÆ+…“Á~±·Ô<'ðwHÔ JµüQ¥ÔK(J Hÿx€ß¶wü¤gþ uÿgÿû@éf‡ExçÄŸ‰~,øÉûSþÜŸ¼yð£Å¼gñöÅø¿â¿üñ´­?‹¾ëZÊxvòÿÁž#™´í%¤Õô)äk+×m2À´Ñ16°Ÿþ¸”QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQ^ûB~Õ_³Wì›á(üsûLüxøQð'·+|tíWâŽ|=àñ®K¦­³ÞÙxnÏX¾¶Ô_h’‹YlÙ®t»ÿxãGÕá&VÔ »ñ§À­I¦Š[[+IVõ¿ Á©Ÿ³§Äi^8ÿ‚‚~Ûß·7üÅ:T‰8³ø©ñoUðïƒ/&˜DuC5´š‡>%ØÇ|ð¤q&…ñgHkkBðK%ä«mulógí7ÿ¦ý°?à­?uŸø'Ÿüg@Õô ;jžøûÿ ñ~‘¡xOÀž{»ý'SÖ~ë)k«?ƒð¶©á‹Ë¸âr¹²‹SkËGVI"º‚¢’9Q$Pgþý¥ÿgÿ‚Ÿ´7.a¹ðÆï…žø¥áö‚u¹û>ã i¾!‹O¸u É¥µû麕´ÑÅsg¨Z]Z]ÁÌBžÑ_ÃìÏÿýµ?àÛøWûÿÁTþ /ÄïØZÎïĺìáûeþϰÏâ;½'MÔµý{ÄÑè^ Òõ;­1uËK+½BþæOëqøGâW„ü9 ýφ-¾'hNhßÙ_ìõûKþÏÿµ—ÃM+ãì×ñÀ?þk-äZø³á÷ˆluë mAmíî®4Mj i>ßáÏiðÝÛ[à ´Ó~Ó~4ñ¬?¾&i~'–Çáÿ„Æ6ßü©k§Ãúo‹¾$Hš¾w£éÝ®µsek£Yx‡Äw‡ukÄÑ >”º§ë¶•ªéšî™¦ëz&¥a¬hÚÅ…ž«¤júU御¦jºf¡o݆¥¦ßÚI5¥õ…õ¤Ñ]YÞZË-½Í¼±Í « ôQEQE”÷íÿ)ÿ‚ÙÿþÐúY¡ÑGíÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEüÊÿÁjëÿàœ¿ðI¿…0ñ'€'ÿ‚Œü}ðÿ‡hßø6ò÷Kñ^›û,iž,ð߇|wá VÓPêz\ßíuÍy¯õ 2{':7‚u-W¿µðÿ‰µV`Ûí#öïý‡¼Añ&/ƒZí•û)ë./ãÒ øS¤~Ðÿµ/‰3jrÉ1i±xËÆx¢Kù&š£³M-®IbEŒ´ˆÕ•òo‹a_ÙÆ³%ÏìuªþÏ¿  ýœ$ð¤¾Ó~éžЬ4 Ù1´Ë=cÂñGbÍ¡x¿I_/PÒ+ß|ÿ‚-þÃßÿà¡>7ÐîÒ?üX¿ðÿ‹¼+ðgD¶ß«@/ { -nòk;_°ø³â³ð¿E¹y%´°œ’ÚK õ³Y ñá= XñGеÍ#Ã>ðî™}­øƒÄ^ Ô¬´m BÑ´Ëi/5-_XÕõí´ý3LÓí!šêúþöâ [Kh¤žâXâFaü±ÆÿðwÏÆÖk¤‡þ }ûÅx²¼ZeüÞ ñmέgŠ‹­=?i‹{«¸¥·%¦‚[«IuÙ›bibl¼çZÿƒy¿à¢Ÿ·O‹ôíSþ ûÿoñ¿Æ¯„öÚõž³«þÍÿ³·‡î¼ðÓÄ?Ù7º\Úlb´ð?€t ¦žð˨[|ÔüAkq+j>!‹TžïPœé_Ú[þžÿ‚~ü3ñ쟿dÿüoÿ‚‡üe2\[[ø{ö^ðeÖ«à©/¬ÚAsioã½N¹ñDj‚áÖ>xK⇧†uÛ¬,±M|ëâ¯Û¯þcý¼¼û!Á3ü%ÿâðG‰;ŸµŸŒ`Ô¼}á+;¡%œšÄZ‹ô? êúlÅnbÔ^ÊÃözøªé?d’i/.rËýþÇ_°_ìû|:á‡ì›ðCÁßü=,6)®êZM¬º‡Œ¼esa•£ãëj,ñmú–žhäÖõ{¸l庹|pÌÑW×´ü¨þÍßðkÁOøÒËöÿ‚±~Ð?à¤_´ö¨Ðê^&ƒÆž:ñ~ðWM¿ŽæKë=L²P¶ø‡âøzáÒ×LÓuOxwÀ—ºl §Kð³NÑe}?¤Ïƒ?³ÏÀoÙÓÃ6Þ øðcáwÁ ZÙXéñè_ < á¯iòÚéÉ"Y%ä>Ótÿ·É<Ÿi¾72Oqqq,Ï=ÄÒIìUøaÿ5ý¸?h¯Ù«þ ;ÿWý~ø¯Jо~Ù¿¿h/|~Ño¼)áÝv÷Äú€,þMá›m/ZÕôû½WÃYÉãît « ‹Áw¹’O²[y`¹ôQEQEQEQEWŽþÑ/×~~Ïÿü{á{˜ì¼Màƒ¿|_áÛÉ­­ïa´×|5à­oYÒ.e³ºŽ[[¸àÔ,­å{k˜¤·PÅ4o²ŸÏOø!_ícñ·öãÿ‚VþË_µíâ-;Å>(Âîÿ„Ç_Ò|;¢xSO¿ÿ„+öŒø»ðïÃßgÐ<;e§èÖe𯄴;)~ÇgÚ§¶’öã̺¹žWým¢Š(¢Š(¢Š(¢Š(¢¿~;þÛ_´7à¼ß°ÿì'áÏéVŸ³ÆßÙ#â÷ň~›ÂÞ»Õõ_xF?‹M¡ê6ž-¹°“ÄzUµ±ðž‰æiÚ~¡oesöy|ø_íoý Š( Š( Š( Š+áø)¿Çˆ¿³OüÛöÉý >êÖšÄÿƒß³ÏÄψ>Öo´­;]³Ó袾ÿ‚d|pø‹ûKÁ=¿coÚâæ­i®üOøÃû<ü3øƒãÍfÇJÓ´+=OÅ%ð垣«Þ[húE½¦™¦C=ÔÒÃþ_Ú3áÿý£@ñ–¡£_ý«Â¾-×,¢ûeœßežæ;Û.êÚ Sô/öwñ~»ñöøãß\Ç{âoüøeâÿ^Cmoe Þ»â_hšÎ¯s¬qZÚG>¡{q*[[E¼ â(cHÑT{Q@Q@Q@Q@øaÿÊý¸?h¯ÚWþ ;ÿ¨ý~.x¯J×~~Æ_¿gß|Ñl|)áÝ ÷Ãìþ:MâkmSZÒ4ûMWÄò^Ià˜nuû«û‹1i(¶’?µÜùŸ¹ôQEQEQEQE~Á{¿nÚ+öýŸÿd/þÍž+Ò¼#âo‹ŸðPÏ€?³ïŽ/5 xwÅÐê? ü{ௌZω´{k?iú®{w¨xCB–fÊ(u;5¶–+k˜ã¹dýÏ¢Š(¢Š(¢Š(¢Š(¢Šü0ÿ‚#þÜ´Wí©ÿÿ†ƒñ^•âŸøg_ø(gÆ¿Ù÷áWö_…<;áoì_…þ þÎÿ„G½ÿ„O°þÚ½µûL¾n³ªý«SºÈûEËíûŸEPEPEPEPÌ_¿l¯Ù»öhøû:ü%øÛñþ¯ˆ?µÄ …¿³ÿ‡ÿáñç‰?á>ñÝ«è‘Ï¡jøKÂúö‰á_-üE£í?ê^ÑÛí™MA…½ÑƒéÚþb¿à»ò‘Ÿø7_þÏÿ_ÿÒÏ‚•ý:ÐEPEPEPEÇ|DÖ/ü=ðÿÇZþ—*Á©è~ñ>±§LñG2C¦h·×¶r¼2«Å*ÇqnÑH­€u*H øÃÿý²>=þÞ¿ðLƒß´¿í/â}3Åÿ<_ãŒ>»®èþÐ|!asa቞$ðÖ…Z†¬tÝ"Ù­´6Ò e‚Ñ$¹‘yÙåvcû=@Q@GÄo†>0ø7ZøwñgÀ> øà[}“Ä> øáÆ>ÖíCX5_x†ËPÒoãIdn­%Ê«"muVÌïÄÿø5oöo¶ø§ãˆŸ±/í}û\ÿÁ=t銭«kž"ø!¯jž"¼ýæ£øŸâ‡Ä‹ØïØXßéék¦××ðM¿ø8ûö_ý¬|Mÿ Ûû]i2~Áÿ·/‡õíOÁ¾*ø#ñƒûgÃÞÕ¼S¢ñ·Št½ËBצ½3[Çð÷ÇShþ+[ˆÍ¦Žþ'*÷KýWå·üWþÝûÿÁP´ýOÚ{áTßðžøm Ãÿ~jPxâæŸ¦C¼7‡î|W¨Aâ/ ȲH#мY¥kúnŸ3µî¨µÐóû ~ÇZOü?Uÿ‚ýþß^;Ð,¼Y§~Ñðš~Çß°–©«X[_Åáû/‚ú&â/‡Þ4ðÃjÖ²Eaæj>ýžn¦Ôt¬Lº¯ü,M=uC{¨ê³'îÇüSûOÞþÓÿðGÿÙŽçÄ7·7ž8ø mâ/كƫváîlî~ ê+¥xÊãs•¹‹áÿÉ.’ö8n–êY÷,±yWW¥°×ìKð+þ åû5øöUý4ÝrÇáŸ.üO©YÝø«S¶×<_®ë/ñ&§âoZñN»k§i1êúœ·º£Y[N,-’ËE°Òt{h£²ÓmcOââ×íû\ÿÁ±ÿðTÏ|?ðüƒö€ÿ‚vþؾ3þÚº§À_‡z.ƒÄK_ë:gŒ4ßyZ¾³á][UðLj~éú^‘âýGû'UÓ<ñÁ¿ ô”×üIàkMSÄ·^ÿC:+ãïØgöìý›ࢿ³ÿ‡ÿi/ÙwÆâïk7÷º­a©Ú.‘ãøÃJŽÖmcÁ<ðḺ—ÃÞ(Ó-ïôûÙ- ÅÕ–¡¤êzV½¢j¦ƒ«ézçØ4QEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@ÿðVÍFö_ø;+þݤÉs#i¶_~ j6–d& ÝSã—í_m¨\ ÆD—PidR’H+g “ý¼Wñýÿýøk{ð7þ ÃÿGÿ‚”jÉkð{Áßüû7üjñŸØƒiŸ¬µ/‰pxƒÂZ§ˆµ[춺V©¢xßâ¥Ðžc±»hâòöÖþÀkø‰ÿƒyµ;ø¿à½ðpŽÃ.™ûC|~Ôï-ÆR{ý#öÌø­k§\3”2«ZÛëz¤H©"Æâí̈ì‘ÿ¶ëËËM>ÒêþþêÚÆÂÆÚ{ËÛÛÉâ¶´³´¶‰¦¹ºº¹™’{kxQåžy]"Š$i$eE$!ðkg½kâ?Å_ø+oüËP³»ÿ„3öÑý±¼smðk[ºÓΉ¼/£|Nø©ñÆž)ÑÖH­¤»Ðõ]wân¡Gsogme·àÝKR÷º}í®žýÑEQEü~É¿±Wü-ÿ¸ømñoöCý‰¾þÌZ÷ÂMcãçþ+iß/ügð_W×üU¨øŸBð_ƒ£Õô-/âWÅí]ï¢xDÔtÝÄß -uë=BëV]V[Ø$²µµù÷ãoüïþ!ý¡$ºo‰þ-µ­õßÛnô‡ß¶7À™eIãI|/ðgÇ^ðãÚAqW¶Kû ¥Ä0Ïmo°Æëþ4Pù|ø[þ ÿ‚ÏAã¨> |eýÿeÚ§XŽîÒâòÚö¨ø©«G«ÛY ¾•ªêŸ ~/ü0ñMÖ˜‹ ‘ù+â¦ò®®"[…O Aý |Ð?àæÏÙÀ:ÂßÙÛþ ÇÿEø+ð÷LØöþøoÄ¿ iRÝ,1Û¾§©G¥~ÒÖòkÕÌpÇöýsV–ûXÔdS=ýõÌÌÒ벊þ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿE|ûQ~Ëðs×íiûJþÄ?µ7ÄoÙ«þ µ¢üAýügñÇ?´ü@ñ¾›àßjß ðõ¿Ä­?]øÕâMoXÓ­áæŠtˆ|/â\À×Z¡¼»¿Ú-—öñE/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA_Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔPòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ@ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPWõ E(ßüeÿg|Oøyãφºÿì—ÿš³Ð¾!ø3ÅÖ®ôüY·Õ­tŸèwÚ£q¥Ï{ûJêpj0YêKe5Ý…í´w+Ïis¼/óŸìðSþ‘ÿ‚vþÉß c¯‚Ÿ³ü'Å ¾ÿÂuÿλñKÇ_5¿ßÂÀø“ãŠZÏöî§á?ŽÞ ðýÏÙ¼AãmVÏLþÏðÆ™äèöú}½×Ûob¹Ô.ÿ´Z(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(øñ÷ìÇÿ>üEý¿þÁG5¿Ù§þ ±kñ¿ö|ø?ゞ ð¶•ãÿAð«Sð¯×Åë«j'Ðîþ6_xº÷ÄãÆº¯ö}Ö•ãNˆÛéÿiÒ®ü«ŸµýÙÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWƒ~Ôzü_û[~ΟfOˆÿ²·üÇEðÇo‡>(øcâí_Á>3ø™¦ø»NÐåŒÿ_ôPòû.hðuì“û:|ý™>~ÊßðKkÀ~ø_á„uxÏâf¥âíG@𞙕§]øŽÿBý¡|7£]êóÛÀ{q¦hE”“h4ûd"1ï?ðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿE|'àÙþ}øuûüuÿ‚ŽhŸ³OübëãíðÁßÍ¥Zy¶ßdþܨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ âëöõø)ÿHÿÁD¿dïŠß±×ƿهþ “á†_?áÿ„›]ø[㯈'Žìá_üIðwÅ-û SñgÇox~Ûí> ðN•g©ÿhxcSó´{BÞ×ìW²ÛjŸF|8ñ—üðÃáç€þè²_üjóBøyàÏ øE»Ö!ëGW‡Å!ñÌík¥›;»ÚÞýåÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWÁ¿ðP/Ùoþzÿ‚|<ø9ð×ãìÕÿÚð®…ðCöŒø{ûNøRïáOÄèz¶¡ã߆ºŒô Hñ þ/øÕã›;¿]ÙøçV—V°Ól4f{›}9ìõû¡¹†ïûx¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýðoì3û-ÿÁÏ_ðOïøi_øS³WükÄ¿ðÔß´gŽ?i߈?ð³~ xßYþÇñïþÍý³¤x7þ_^ þÏð…·Ùcþ̰Öÿá!ÖaÜÿj×ïr»·Š(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(øý¬f?ø9÷öÆøÓû|vø›û4ÿÁ64/~Ã/>5ü%Ó¼ ãÿižñНeð¼²éÿmŽûQ5ÅÄz‹¦é±ÎÒ­¦™al!y/~Ñ?ðy‡<1¨xsÃß°oì-ðUÔUb¶ñ÷€üað§Rñ>‚NTÜéöÿlï‰Þ ™—pv]WÁZÊ€%»e‘ÿ±:(ø ý¿àÛÏø*Æ­?â¿ÆÿÛ3ãÁ_‡_´'ƾ8ø—ãÍ7_Kêšî¥â;] ïÊöY¢€?(5ø$ç†u߆özñ_í¿ÿñgì´ÚbøjïöqÖ~3ü5‡Ãš·„ØÉðç^ø×¡üÑ¿kßøïGGðþ£á­oö‘Ô-5/Ü\hz¹Ódû8ýøUð«á¿Àï‡> øEðƒÁ^øsðËáîƒeáŸø'ÂzlNáÝOB–öVVꪻ™¤¸º¹”Ëw{=ÍýýÅÍíÍÅľEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ_ÏÏíûa|_ý°?à«wüö`ø©âo~ø%ðvÚ;öòý >ɧÁñj&æçÂËàÙ×á_‰5];SÓ~k^(9ð¿ãØÚÞx»þ­röDzèw×åÔÀ? j+ùùÿ‚|2øåÿËýš|]ûxþÄ?¿i__þÍ‘è^9øÝû7~Ó´—ÆßÚ›áWÇÿƒzÖ™iñ2Õ/ÿhüXñ×ÂiÏâ½Æ üIáML‡FÕ¬õ/ êV‹Ãì_ìµûEü>ý®g?‚ß´×»©.|ñ»á߆¾!xy.ûv›½§Åq{ jŠV=kÃz§Û¼?­B«¶ [L½…K* ÷EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEÉx[ÇÞñÍÇ‹m<ã_ xÂïÀ-¼ðŽí|-â=Ä ñÖ¦iÞ¡à¯äÞ]Éá¿ØhÞ Ðu{Ïk+e¬ZéšÞ‘=šZjVRÌÖÑE|ÍñköÔýþx¢ÏÀÿ¿kOÙ›à¯u³gøCâ×Ç…Ÿ*ѵkŸµÇujöÞE£ùésE½fŒ°Ó4Vf‹­èÞ$Ò4ÏxwWÓ5ý[°µÕtmsE¿µÕt_L¾….lu-3R±–{+û Ëy#¸µ¼´ž[{ˆdIa‘ãecüíþÝŸ±íŸûkÁNþ 韲ßü ãÏüêËà_ì/ûë:Ÿ‡~x{[ø‘ðûâMÿÆ?ðPm3QÕõÿ‡GâçÃO ÁâÓàþ…i§ø¢îÓ[ÔßNº–Á ¤v¶î?£z+óöÿ‚vüCý–5Ûï‰?´íëûYþÝ?ot[ŸÙ뿼o©x{á'ƒô‹ÖÓßPoüÐ5›ßéöªÚe¢j^*ñ÷‹ø­à«É¤¶³ñ‡Ãox{Ç^»¸†8ešÞÛÄÔuM&y¢ŠâÞY"ŠíäHç…ÙBÊ…»ê(¢Š(¢Š(¢Š(®WÇ;ð?ÃøƒâįxSáï€ü'§M¬x§ÆÞ8ñ‘á?økI·*'Õ Ðü]âQs ËÓ<ØÁÔ(êj(¯äßáü+þ 9ûNxßö‰ý£>ÿÁrjÏÙËáWÿoø(“ìë¦xû↕à-áíÛûG|Ó´†Þ.ñÆËM7Á¾»Ñ<§ßÙè:WÃØ´}îîæ$²¿beþ²(¯™?dÏÙ–ËöSøOkðßþÇŸÚÄwzψ¼iñ‹öø¡¯üTøão^Ákk=åÞ§«ÊºW†ô;+;+=7@ðoƒ´ÂúŸi‘¦Íª]jº¶¥ôÝQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüQÁüWñþ!ÿ‚úx£]޵}+âÅoY^2F÷hý¦µOi6‘\ÖH¡“FðVƒöˆ„’K+c)•­âkµüaÁ¼ qðþ`ÿ‚áü"ñ ¤šfµñJñgíáøonfÔü3ñ/ã7‚þ+¦£§ÆYÍí”Ð|jÒ¥·¦žÀØÜG¼0FðVë=Gþ Yÿ)·¾¶†îÿ`¿Úêù"¸d/4¿€~>Ôôë•V ¬µ K[ËiÍÄJ„2)–ßði‡õÁ¾ hú¤’KÃŸŠ¿ü¢¼³yÍý‘7Ä[Ç)ÌHñGÿµ xay.<¸bA©•moúOÿ–ñ~Ÿàø$×üƒYÔöýš÷ö-ý¢ü!ù¼ý¡ñáˆü¤aü¹w7ö¯‰l¶C´}¡öÁæCæyÉð·üÛðkZø=ÿ\ý˜¥ñ ”Úv­ñgWø¯ñ•¬®´‰¢øÇâ7ˆ-<z£,‰·àÃ~ ¶XÎ>ϪÄÒ¦Eþ…h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø7ãçì[ñö†ñøƒöîý±>üÖt«=1?gÿ€ZßÁ¿ƒú¸U¶›®K/Åÿü›ö‘?ÛòÃ.§/ö_Æ=ëH½»¸B¼Ól Y/óÿÿ\_ßj¿ðLÚ'SÔïnõKQÿ‚…|[¿Ô5 û‰¯/¯ï¯?g¿Ùbâîööîá为»º¸’Iî.'’I§™ÞY]™õå_ÈüSÿ(²øùÿgÿñOÿY×öU Ú?ø-íß­Á9à›´?í-à£ø©g¤i?> µÍ­µí½—ʼnzµ·„ü;â+‹+Øæ°¾‡Á0ßj>;—M¿†[=Z? 6•q©zcjŸðH_Øûá÷ÀÿØàŽ©âéÞ7øåûM|!ðwÆïÚÏ⯎4áâOˆ?¾,|iðÆ›ã¿IñÄÞ%¶›Ä>)Ó´½C_—Âú.™¯‘meáý&ÆÛû*ÊVº‰¿?àôÍFöËþ WðRÚÒæH Õÿo/…v§òÊ/€ß´Þ­´À‚Lk©iz}àƒçZÄs€Aþš?d/ù4ßÙþÍßà§þ«_ Ðó»û-|UOø'üñWþ gá &Ñ?d/Ûo༵gìçðŠ"-|!ð7ã8ükÒ<£|p¼ø“ðÓã¿Ãï‹+ðçIÞÖüM¤hþ|VÓüAá_ ðÞœ<-ñ»Ãþ¹Ó °›YðŽ©©Ù& àŸµÏaÿ‚`ÿÁaà”~ ý”t+ü ÿ‚‹ê~þÑ¿³€4ëoü#}OÁWŸ €~9øWáÖ“åxWÀ~>Òõ¿Š÷—Þ2ñG…Ôl¼KqªÜÜɨXNuù}ð—þ ·ÚÓEý¼¿kÿs~ÕŸµ?€¼«|=ø!u§ü8Óþ |ýœü#â¹_‚ß"ñWÄ}sOñŠÆ§¬Yxâ'ÄŠŸ|c{ _CáËMSOÒl-íëõ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<#ö¥øÎß³‡ìÇûF~ÐË¡Éâfø ð#â÷ÆuðÜ&A7ˆáwÃÿøàhq¿z$ÕŽ†,ÅûÀ×gÍŠü.ÿƒ~¿hoÙþ =û5üJøùÁýOÅ_µ$>5µïÅϾð—Šè:=¯‡!ðûÀ-þÜÖeIµ}gþÏéZ6ý«ªÍK©j?cûeô¨’]M+( ø—ÿ‚­Åaÿÿ‚ÁþÂ_µÇìeimðà'íϪë^ýª?g¢hß üoÃÿ|:Ò¾#köÓ펃áÝjû¿<9­øbïDÒ¡mÆþ¾Õl!û7ˆ|G¦j¿Ý¥?>x“þ ÿ‚Óü4ñ7„mc¸ÿ‚bÁ+üM„üañÅÃx{ãçÇ]?ÄGþ%|8ø]{ñÅâk-K]ðÿ¼ â½_JxtÿxGº·ŠW[¹¹ñ€4í_ûN ¸¯üJøuñ.\|8ñÿ‚¾ [ø+ƾ&økã)üâ­ ÅpøKâ/‚¯¿³ýµ|!¤‰çâ7Ûdì x“I½Ôô_xëöÕ±´«ÿ‚¿þ ßéZ†¡â­ SÖtmâ]½¾•qðó\·ø_¯ß|qð—Ý_ðOßø'ïü2¯ü'¿¾;x÷þ3öøý£>ŪþÓ´Æ«eö¶ýŸÊŸIø9ðsIž(¿á^~Ïÿ<«}3ÁþÓ-ôïíoìëM_´†xt]Ã`¥4QE¿ðvìÏñWàwü‡áoĈÿ·?ísûNø£Æ¶7Ã?‡z΋ñG\øOà?„ønOƒÿ´‹ã:ÁÙçá?Á¿‡—ZäZ·‚6|JñEÔ‘\x›Âž ÓÄø‹â­Nþ +†¿´ðçöŸ†|I«ëì귾¾ñGˆ jzÍܯôçìAð þ ûaü&ñ·íðÁÿÿlŸ‡?þ9þо6Ô<ñóÀºÇÄÅÑüsñ?ãŒþ)üVðo€¼%ñó¯ð«ÁxëǺÝÔð_„|/¡ë±Ý[ø—ZoøƒQ¿ñV«ø%ÿŠÝÍ©~Ðð\Ï j;Ý/ÚàÕÚéWPA5£M¯x×öÆ°Ö ÑÉ}¢=BÏGÓm® œÉŠØ*ƾdÆOè÷À±íû0ø*Ïà—ìAûOüø-û9h’jQx#áŸÅØõ¾3xáf‘«ê7:­Î‰ðóÇžý¢?gkK»m>îþôhºŸÅßü]ñ”ºyñF±â»›{ë­Póûþ }ñïÇ¿ à®ðU_ø%U¶¿âO~ͳµ‡ÂO?³œ¾$Õõ?Ý|±ø·à‡.ñ×Á7ÄzÕö±¬Oàk/üP>økPÕd‡Áº„uÍ7I‚ÞÂìiúgô_þÄðO¯…Ÿ±)øÍã-+Å^5øËûBþÓ>9ÿ…™ûJ~ÑÿäÐäø‡ñgÆ*—+aoö i…|à ¥õý—€þøOFÓü?á-*é¬m…Û†º½(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ÉÏÛþ ¿¯üJýª~ ÿÁD¿doˆ>øûq|ðÞ©ðæÿPñ¿†ï|Iðcöø+®´ŸÚ¾:hþºÓ*|Wø÷ñö‡°ðF¹¦øŸIø|Ÿ~$| ýœt/‚ÞÔüG¦Øë:òé~ ø—â¹§Ñt{kÙZÿi%ïì׃|áo‡žð§€< éžðW¼7¡ø?ÁþÑ-c±Ñ¼9áo évº/‡ô"Ê "³Ó4}&ÊÓO°µˆíímâ‰TºJ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ä þ ©ÿ”Y||ÿ³ÿø§ÿ¬ëû*×ôûK~Ä>8ý£ÆkýGRÑþ\jZO¥±ŠÜ4Ë6‰ðÓÅÞ3ñ+˜âç¶Ñn,Ò0÷K$¥?ðKÿ‹Þøñÿæý‡¾+øgS‡UÓüWû-ü7—?Ñ|M¡ø DðçŒôk…µy-â¿ðÿ‹ô}sAÔ­ávŽÛPÓn RDu÷S¢Hˆ²G"²::†GFYXee$2A‚5ùuáŸø%OÃw~6³ý¿i?Ú»ö ømñ^ÕðGÇ¿€ÿ‡Àù5ÉÃÜ_[üÔ~ÙEq)ŸNµ±–W·ü>ñ§Ã{ÿÛCþððO‹ü8­®ü=ÿ‚i~È^OŠºÍ¬shÚŒüIá׀|y«ªGjž$¹ñ/íeâ[[6ûR–×Â&¶D…4-Hé?ØE|£û$þÅ_³ßìOàßxOàW…5-CâŠï¾ |Yø“ã?k~?ø»ñ›â&ªÒK«x÷âÇÄ¿^j^)ñ¯‰µ æ¹®5ï°Ø=ÝÜz>Ÿ¦ÛÜË }]@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~8~ÔŸ$ý¹üoã_دá'Ç+/‚ß³·„ïgð¯í§ûIøgÆþðÿŒüGsþ“gâOÙö{Ôoäy­_j:–£}<—W·÷÷·_²Ì·7—·—2Ëquuq,“ÜO$’Ë#ÈìÄ÷GÇ?eÏø'oì‘ xGöiÑ~ é¾ðN§ðËàïÀ€ÞñŸ‡ôK/øÛâ¿Ä¯ ü;ð†4ϲÜêš®¡«ë¾*ñŠëæ«5ø ñ?Áü¡|@ø‡ð3Uðe÷‹<¯Yx—ÃgÄ:vû9xgZ»°´Ö´ë+Ö‹Lñ‘yæÛDÐßB˺¿¨Ê+ó×öÞý·¯¿g»ïþÏÿ³ÿí>?~ÝŸ­5øð u¬tm+F±™luÿõû–ãáÇìëðââUŸÄþ'cÕ¼_«G€|£âFI4ŸÐªù+ö}ýŒ¾~ÎÿhÿŽ¡ã_üeý¨þ%j>øñGâ®±¥x§Æ¶B±xàƒ5‹Cü øG¦‡Ò>xGxÚ5¤÷wz¾¯¯kW—z¬À‰—ßðLOÚkþ ÍâËø)ì‘­ÿÃXþÚ¾ Ò¼O}ÿ,øK¨èúo…´ÿÛ»Ã~0ñÏÄ?ê?³î— 7VŸ¾*ü2»’ÏNøCá/ ¬:<1áé>.°ñî5Û¿ˆŸº²Oímð7öÝøáOÚö|ñ_ü$Þñ7Úl/¬o펓âÿx¿I1Áâ‡?¼/<ሿìÿxwPËÂæßPÓî5QÒµ[ÿ¥kã_†ß°¿Á/ƒ¿µÇÆÛáTþ5øã/ÚÁV¾øáðÃÃõ–Ÿð+â‡tÝoOÕ4Ÿ%øx4i~:éÚm÷…Æú>·¥Zk^ñˆ¥ñ6…®xQ €ìª(¢€?/ø=[þQeðþÏÿágþ³¯íU_×í~~Ùð@/†_ðPi ý¬ÿà¡¿ðRïŠþðï‹ßÇ^ðçÄ?ÙCCðžƒâqc¬éVz­ž—á¿ØëI7wº^â gFÓ/µ‰õ=B×MÔo-Åãý¦w“ï/ÙÃöñ×ìó⿠뺇ü;öûý¡|3ám+QÒbøgûDø·ökñoƒµ¨ïtÛ>ÖóÄzǃeÿ‡ÿ5mGE’tÔ´»·øBÖ×ûMu+’ÊPçïþ •ðÒ÷öcÿƒ’¿àŽßðP=Sv‹ð‹ã5¦£û&x›ÅóÛ[ Eø¯«xwâ÷ýÃ]Õgo²iSxÓÂÿ´[-_‹w’ÛÁÞ$Ôtû™¿²/Fýnø×Æ>øwàßü@ñ–«m¡xCÀ¾×¼câ½rð•´Ñ¼7á*ï[×u[¦P̶Úv—cuw9PHŠ ÅyWí/û0|ý°þø—à?í!ðßAø£ð¿Å?fšÿÃúÚÜÃ>ŸªØ;K¤ø“ÃzÞ›=–»á_蓳\hž'ðæ£¦kšTÌíe}–U“âÁ(<-ñCÀ–?~;þÚß·ÏÇÿپٴè5ÙçâgÅÏ…¶Þñމ¦\Z\CáO‰¾üøûLüVð½×Øã‡WÒ>%üyñ\Zä/ Ö^úB’Føõÿˆüñž‰û(þÕÿ¶gô+ßÉûpþÓ:Ç‹üi¨Ø5¥Ö¯ðïáóë°Xøš)6Çúu÷ŽümñF²ð‹løz{Ëi¦·¿„Gýo×7àßxOáß„|1àøoCðo‚<áýžð†tË=Þðχôû}+BÐ4-O† /HÒ4ËKk ;O³‚kKH"‚Ò8ÕGI@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ùÿÖý°-?bø%ísñZÏÇ—ÿ¾#ø›á†¹ðwவáßÞxgÇ1|Yø·i7‚<3ªü>Õ´«í;\±ño‚àÕµˆvš®…w«áû?_xŠÚX›I2/ë¥yŸÅŸ_þøOþߎ¿¾|ð/ö®› ÿÂiñgÇžøsá?íÍfW‡HÑ¿á#ñ†«£hÿÚº¬Ñ¼Znö϶_J¬2²=ÚæÞòÞÞòÎâ«K¨b¹µº¶–9íîmçE– ‹yâgŠhf‰–H¥š9•ÑŠOå'üÇþ ð[þ ÷ð[áïÂ/‹¿¾"|.¸ø]ñ?ˆ^ñwÃÙ4««ˆî.´«_Ñõ_¶»Ñõ[-WG»qivRÛTÑuKk;»KÉ4ù5Yýø+ð›Âþ ü%øà/í_øA~ |2ðÂoÿojRë:çü"|-¥x?ßÛ:¼ÉÚ®«ý£YÿhêR¢K}yç]HŠò=2Š( Š( Š( Š( Šã¾!üAðOÂxÃâwÄŸé øðÿÃzÏ‹üiâÝ~í,t_xgÃöêzƱ©]>DV–66ÓO)Pò8O.(ä•‘ó?þ‹ûFx—ö¹ÿ‚nü$ý¥|Wâ?ø§QøËñ{öÐñ¦¨øÓV¼Öuû/ß~Û¿´d>ð¼—7·/i¥x'ÀÖþðo†ô+I#Ò|5á½Iðæ‡ke£iVp~°ÑEQEQEQEQEQEQEQEWÎzçí‡û$xgÇö? üIûRþÎ~ø§ªx¿Fø}¦|4×>7|3Ò|¨ø÷ÄZ¥¾‰áÿXø6ÿÄöþ"»ñ~»­]Úé7†­ôÙ5ST¹·Ó쬧»š8[èÊþ,ààŸ‚?>ÿÁa¿àÝ?‰žøYðÿÁ~/~ßö-ñWÆ^ð–‡áß|GŸÂÿ´ÇìW©x~óǦ‘eiuâGJ¾ñÇ‹®mu=fKÍAdñ¤Zå„äí:Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( á¯þ9ý”¾h?²ÂÚÜk¿õ¿Šúßísà…6¶)øÇñÄß <#àŸ|øÝâoiÞøI¬ø†ïáï®õÍoᯄoµm[Ã>ÓµMEôãÝÜÐÌñ×õ/ð“þ ÕðÃàßÄ_ |KÐÿhÛ÷Åú·….î¯,ü9ñoþ û`|^øuªIu§^i‰þ|Eø¿â/ø¦Ò(¯d¹µ´×´[û{]F=FÒöÊÚhÿ¿àôë ëÏø%gÁ‹K+»«}+öôøS©Ïoo4ðéÖ2|ý§tÈïoå‰,í$Ôµ?OK‹†Ž¾¿²´W7PG'ô™ûW|tñÁO…ß|gðößÃ>!×ø×Çž8ðåú^\éZf¡áÛ]{ZÒõßéÚ–~ø™ÿ/x/ãoÂØãßí×ðöÛý²¿g¿ˆ4ƒº›ðßàÏÆ7ðÂ/éß>7øáV½}­hÚ‹eâØ|Pt߈Òê–^%Ó7¦¹7€þx³\×l|¯éž)¸çŠïm®ì¼O¬jZ†¥ªiúÖµ›¨u ÅÔ!üúÿƒ£¿å·7ýÛ7þ¶ìû_¨ðO¿ù0¿ØþÍölÿÕ5àºþLàŠ~+ÿ‚ˆ|yý¿¿à¯±?Š?noÚ‹Æ¿ÿfßÚ3Oøuâ/ß>#ÞxÿâþƒàoƒŸÿi…žøiðžÙkøIã?Ú,4ï|Iø£áOZêvZ/ÁËý#ÃÚ5¿ˆüEáÿø ëßø-—ÄŸ‹?ðC¿ þÈÿ·oì½ñëöŸñ·.iÿ üý¢foÚö øÙûGøã_ƒ<[àˆ^9»¿Ò¯ÿho|V×~xÆÖÇᦷa¥ë5= DÓµ=oJÔ$ð–£c¥\iwÜwü‰ÿ)Mÿƒœ?ìÿôïýh¯Ûúø=[þQeðþÏÿágþ³¯íU@­Ú7ìñëö†ýŸîü{ûMþص¿‚?lŠ^_YÍû=þÑŸ¿g/‚ß²÷޵ý*[Cøðûà§ÂŸxkÁ¿¼3ðÖøéþÖõÚFø­âˆ-¦ëzΩs¤Ÿ KðÏø6¯þ ñ»þ ?ÿÛ·øûEjqøŸâïÁÏ^3ýž°ðGí™ñ‡þ Ñÿ2ý¬?cO€<}û=~ÿðO¨tß þп> _ØxgãŸíñóWñ‰ü5oà/|QžÃY¿ø[ð£EÖ<ã¨.5‡ÃFñð5Ôö>.±Ñ¼Olš6wüŠŽßðG>ÿ‚ˆ~Ç_ÿhï|:ø+ñ+áÆ‘ûQþËß´Ïíñ—ö§øsñgáÄh¿gÕ<;âÏÚ7Æß>'ü(ø…¤ø·[ð´&¯à?é¾k:·†5;;{Í/Wü‰ÿ‚-~Äß³wÃÿø,wüûöÿ‚€þ;8üNñŠ4³÷í!ð{áçÄ××þØ|Cø¬j¾)øhÿü7®›Çþø½ðïÄ~$ƒÃî„u5_´¿ƒ/Mþ©¾ Á6¿à_ üãO‰¿àž_ðNÿ xáç…)ð}톛á Ï{w}á}7S¶Ó4¯ÅñBñEìZ†¯ìtµÔä×ì@?hÿà»ß±ÂOÚSþ éûeüDø£®üfžoÿ±ßí ñ7Ážð·Ç‰þ øMã¿…? |oñ'À~%ñϯ x—Kð7ÄGAñn•¦_ÛIãXQŸgk´Cj¿™_ðnWìðÛãüö1øÃ®|výº<%®kWo'ð—ÂoÛÃö¯øGðšÎO þÕ_ô;X´„>+x{áæi¨Ûè°^ø†ÓMðõµ¿ˆµ›ÍcZÖc¼ÔõJæçõÃö¥ø™âÿÚ+þ-ûF|cñ„®|9ãߎ¿ðHŸ‹ß5ßYÙÞµÞƒâÿ‰ß±¯ˆ|S©øJ×O—ÎÔMΗ¬ësèÐYÉæÞ™`XÌŸ9üÑÿ‚$|tñìéÿ±xGã÷ÃË ëßþ~ÎÿðP/‰^ ðÿ‰b¾Õ1øqû^þÆ?|Yû(|qøáû<Þé? |[âY|!âKë-⇄g‡MÖ4Ÿø·Ä7¾ ñg†üWg¥ø}4Fm.ïUðý®‘½‘áÿÍø Ö«ûfürý¼ÿ೟³oÆoÛÛöø»ð ö=ý£<7ð^Î/ˆ¿¼O­ü[ñF›àÏ‹µ?€|!‡¾ CªZZüÒ¼Q¢xëUøÍ}ð‹Að_޼o¯é¿—Gñ—…´?êÚN»ý;þËÿ¿b߃Þ6øóð{öCø ðOà†¥ðûWømñÆÓà?Áü(ð½ÏŒüGáI|Yáø†÷À>Ðtßx×@ð6µ£xŽûK¾[KÃ~ñ÷…/_ɶñM°—ùµÿƒrµ­"ø+7üÃáÙµ;µýWöì›ZÓti.¡MRÿHÐ?iOÛ’Ç\ÔììYÅÅņ‘{âOÚjWQFÐÙÜkzT7—ÖË è—üÁ´·ìû4ø·öüýþ:üfoþÍ`ñïÆoÙ×öƒøÑñö–øñëॶ¡·4Ë­/ãw¼qâ߆¾+ð­…ä^-Ó|Uð£Æ^¸“DеíúÛQ»ÔôÛ½;ô÷öý²þÁ@ÿd/ÿµ×Âø&Ó|5ñ‡ÂCU¼ðÝåÔ7šƒ<_£ê¾ñׂu+˜$¹»ðŸŒ4}kDâ dÕm¬íµ{{x­oàZùþ ÓûBøöpÿ‚EþÝÞ#ñÖ«e`~%þÏ?g¯ØÜHÂóÄ;øÿá=cá_‡ô­&Ú<Ï{{h'xCà}·ÃKOÚGð&¹¤Ù¾¥â É Øx“à sc¯éLÿÁ•?ò‹/ŸöÿÿõeZ?lù\“þ ;ÿfñÿPoø)e~ŠÁEÿcüýƒj_ÚsáíÇûwh¿µgìõð#âgí ¤ü^Ö?joŠ:‡ƒ|W«üð^©ñWðçˆ?eصh¿d{_ ø¶ÇÃz†ýáÏöcj0Ik}Û1—É¿à”þ9ý¤ÿà´²ÇÿÛ?öºø£ñgà×­[NOü6øû)|[ø›û5ØüEñÃHíüñ‡ö‚øñwà߉< ñ¢þOüdмg¦x ág…<}áßü=ð—‡ÃYOëÚÎ¥ªÚ~¡ÿÁX¿å_ðRÏû0Û#ÿY×â5|ÿ¸ÿÊ ?aŸû¹Ÿýl?Ú €< þ uûSþп à´ðRø#ÏÄÿŒß¿h¯ƒ¿þø_öýŸ~ |iñ.¡ñâ×ü1â=#à¯}ðÓÄ?µùåñwl ²ý¡|=ke¨ø¾ç[Õá»ð†¡yý¯fá.>Hÿƒ¡-¾ ÞÁB?àÜÛO„ºŸ…ô_Š—_¶WŽ­¾ë>8Óµ_ÁZOÄþ6þÁñx3Sñ†“£ÝXêÚ§…ì+ü-´ÓüI2É4º†‰û5ü>×ô/Ù.Ã4§Oð¦¹ð?ÄVðiKo¦^ê:”Öë©7ÁÿðHOø)ŸÇ/‰_µí{ÿ¤ýºüEáŸþÙ_±^µ©\øwãG†<=aàËÚSà…¥þ‰e§ü@Ö<#§\Ãß-ìüUàÍo[Ó<;g§i:/Œ4áo¥Åáïj:‡ôA_ÆìðÏÄ_´§üwÿ?ý²¼—­ð'öwðfð/Äþ/€I&‰­|cÓ¾ |ø#{ðö èÑlï/tÝKá¯Äj¶ÐÍ4º3xwHKè£}VÂY?B¿i_ÛÓãGí[ÿhÐÿ࿲Ľ_àv…ð³áeçÇÛÃöŽð^áýK⿇¼ö^èß >ßxŸKñ'†<#â oþÃý;Å_ïü=«êÞG†cÒµß ^S¦ÿ‚ŽþÌ?b_Øóâßí•ûþÕßµÎñÃöUðV£ñËÄžý ¿iߎµÁ¯Žþøom?‰>)xSâ'Ã?Úâ´ ®¡à{ê¶Z¿Áx¾jzf£aio¥Ka²“MüKÐÿe/ƒ àìŸÚÀÿ·‡Á„ßþþß|]â¿Ù†OÚῃ¾#|;Õüw¨Úü,ñ‚Çâ.‰­øn߯þ›á_Äÿ…šX´U×ÖÛWÓ´û3>2²²¿þ¬ßþ Aÿ¯I?àšßðOèãYÝßö8ýgvo‡!UUA,Ä€$|ñÏâµÿ4ÿ‚=øWþ ðgö“ýª¿coé²ÅïÚ@Ò¿gŠ Ó®>'økÀwZž±á/‰B_j÷¾=ð‡„þÌ~7´øåñŸÂž"ñŸÅ½ÄúÕî¿ûI~Ð_>ø·JøÉãÅÓ|SªOð«áç€Å:‡€<+áχMâOx/Ç÷ž!O è_¼_5_€zçü'ö‘Õ¿e¿xSÀ³Õ÷ì_ûROð“ÃÞð>“ðçÀ‡ÁçáÏÄ¥°×üá-ÃKÑ,üãY¼aáMKI°·Ó¼K kº‰¬Äk +üÿ¸ÿÊ ?aŸû¹Ÿýl?Ú €?Qÿa†¿´ïÁßÙàwÃ/Û/ãƒñÿö˜ðw….tŸŠŸ|5i{m£ø¿R]X¸ÐÞ µ=3EÕ5›ÂsèÔ¼SªèÚF©ã OG¼ñV¥¥é÷ÚÌöpýoEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEóÏíSû*üýµ~øãöoý¤üañáÄKH5ï^]_é—PÞi—Öú¦‹®hzÞ‘uc¬è Ðõ[K]GJÖ4›Û[»iáòÙ嵚æÚœþÁ9|#ðAþXxö‘ýª?iþÎK ~Ï_h|+ñ„þßÙh§„´mnÊïá÷Á¿†ž3ø“â xWYÔ¼?àýsã§‹¾+j~³¸ûW†nt­^5(¿D¨ Ê_ø(wüÂ_ðR½Å_¾6~Øÿ¶ß€þxÒ/‰?gŸ‚ž1øá_…­ï‚5KM{FÔµâ¯ÙÇÇ_u)›Äzv—âK­?Sñõî€uÝ'JÔm4{9´Û3¤|ÿ‚~k?eÍOöWðgíÝûqê$:GÃÏ ü6ø±â¿~ͺïÆo‚^øpt;}3 u×ý™-üu¤k&‡†µé¾%øâ.µ.‹}~ºN¯¤jFÏR²ý¢€??fø ?ÃØûã?Åß_à ÿðRÏ |Cý¡xÏ]øWñãá]ÌÒ<³Ãሸ·º»Ñn{¿´xWÅ6ž#ð”æÿP’] 徺’\}öÓõMGÃsþÐÿµ?íYû`øwÁÚž‹­øoáßÇÍ{à†‡ðÎ=kÃWÖZ¯†õ_xöoøû?hŸnü?¬iöZîŽ>5AñÚËÄVZˆã·þÝÒô½FËïÚ(ó'ö’ÿ‚LþË?µ/ígáßÛ{â«ñ¿Ã¿´€> øoà—Â_ˆ þ.øƒáïÂ-3Ã^7ø‡ãˆügà¡áHìd½ñžµqñ3Ä^ñ^:ŸÆ~Ö!Ùk:g‰4Û›¶|2“ãÍ·„,|I¢hÚì¿ ¿áz?ÂÍzûKµÅ~ ×ì<û)¿\¨ =ø¯ðŸá§Ç_‡2øAñ‹Àþø“ðÃâ‡uáÏxÅÚ]¾±áïè×›L–—ö7*ÈZ)£†îÊî#î¨[Zê:}Å­ý¥µÌ_žß ¿à–z'À Ûü(ým¯ÛËàwìû§ÆÖZìýᯉ¿'ñ?Š|Uâ;ùµoø×Ç3ñ>¡«ø³Ç7ñN­qqªø›Æ+Öuëš„Ïs¨ê7·oñÿKý•¾þÑðUoø8ÇĚνñ á¯Å_„ðPë­Cá/Æïƒ¾+oüSøxÞ)ý¡?n»oé:f¥=޵áÏx;Æ–º.‹Œ¾üA𿌾øª] ÃºŽ¹á[í[Ã^¿Ò¿´ï‹~Õ¾'ü:ñ?€ô?Š?¾ jÞ"´µ¶³øŸð’_AñÂR[ê6wïyá‰~"ø+â/‚Òîî+I4»£¯x/^·:uõâÁoé¶½¶üZý˜à€ÿ ?cïŒÿ~=| ÿ‚ƒÿÁK<5ñö„ñ­¯ÿh½CâW칯éŸüKoâ½{Æs_øÿKÕdKˆ/.ïuÏø¶IµM!´}rÖßÅ~"·Òµ]95[’ÀLêðHÿ€ßþ-ü>øÕûbüYý¡¿oŸ|"Ôä×~èµWˆ>Éð“áïˆ%·´µoh¿~üø ð?Sñ“en¶|Yð÷Äz‰¸Š ׸kÛK‹_Õ*( ¿/¿à£ŸðKoÿÁM|%©|.øÉûVþØ? ~ø‹ÃþѼcðà?оxgá·µøÖçǺ'‹&~Éךߋ¼(lü'§Ãá­cHÔ?ck¿ Í ØÙøÁPizJh1Øi á]´È-K³h¿¨ ÿmŸØ7öoÿ‚€ü1Ñ~~Ñ~Õu(<âý+â'ÃOx7ÄZ—‚¾'|'ø‰¡oþÆñÏßè²G©hõü’-ö²ªéWâÚØCÀZÁ?—^Ò ðÇÇ¿Ûö¿ý©ü §F§Føñ£]ýŸô/ ZßÛE·IÕ|Imðöwø©ü\¹Ð®ã²Ö´{Žz¯Å ×ĺ^•ây4yüAa¤¿ ôPãüwþwû4Á-5ùõ_Ù¯ã·í™¨è:œ—·þ$øgñ#㆗«ü#ñoˆ¯tY|><_â_†Þðü-¨x®ÏLkhlµˆì-¤ˆéšCI¿ÙVñ§üïðÛâíYðïöàñüwþ «~Õ_ |;„>|c_‰Ÿ²v®øK‘ÁâÛY<5¥ézWìmcá ß[x÷ƶڶ“q¡Ïa­[ø«^‡W‚ö=Níeýþ¢€?4ÿiø'÷íSû?é³ÿo/Û³ÃþŸá¯Œ>|YÔüâÙ£ÃÞ-ý¡ü1ãˆÖË\ÿ…ŪÞ~ËÚÅ“]Í¢µï‡/†zWÃm"ûAÕuM?XÒµ1vÒ/ûÿÁ'<-ÿîøW¨ü øûgþÛúÿÁ”ðÄ?xá§Äÿ~ÎÞ#ðïÂoâG‰G‹õO‰ß gпf ë¶>>Ò&Ö|Sðþ;Ïx†çWð±swo5§êýøáOø7ßá·ÿkþܾÿ‚ŽÿÁOôÚ·â‡áø‡ñ†‰Ÿ²tÚÏ‹ü(ºo…4ˆ<5­è—_±µÇ„®ô+x.-7Io‹ 2O x~çO‚ÚëJ²žÐÚ'þ ­û1þÖÿe߉ߴή|lÕdÿ|nðO‚4Éá‹ßxÂoÞð„ÛŸ¶ÅDý±a_Ù‡öñð&ƒà/Ú[áÄ~0‡Á~"·ñŸÃhºÞ»à¯‰Ÿ ¼mdÐÉcã†ü#¨hþ.ðn½kqkerÒiZ¤VZŒº}‚ë:Œ6pBž?mÿì:Ö‹>3þÛ?·íðn(^Æïà¿Å_üÑ|)âMQ*Oᯈ^5ø%ðàÿÇ/ŠÞÔ-¥:~¿áÏŠ.ð짬üðE—Ä?ø×GѼ?/†|MuñàÅMOIÓ«é+¤|åÿÿÿ‚Fx[þ æü<ð?ÀïÛwöðñ_À†×~4½Ñ?fß‹ž5ý¼SðnæoÇâ[­Y.bÐf_üDÓm-üWâ‹ÿˆVø‡áÛñ¬QêZ•¾¥ew¬éš§ë…QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEÿÙ endstream endobj 929 0 obj << /D [927 0 R /XYZ 33.853 921.043 null] >> endobj 579 0 obj << /D [927 0 R /XYZ 125.683 491.51 null] >> endobj 580 0 obj << /D [927 0 R /XYZ 127.307 120.165 null] >> endobj 926 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /XObject << /Im15 917 0 R /Im16 918 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 932 0 obj << /Length 2030 /Filter /FlateDecode >> stream xÚXKã6¾Ï¯ð%Xˆ½%ïelf‚Èb°ÓH»{`[´MŒ$$ÕÝίßzI–ÝJv/Y,ëŪN6§M²ùñC"ßïŸ>|÷)­7iïË2Û<7U7U³©›*N›zóÔnþ½n³:R]çãí®LÒè鬷»¼h¢`z½óÚí™`ü}vö+n̷҃» V‡mµÄºŒlé­ifÀ-A;íƒNrØ'ã|è®Û&‹¾¾²ˆL~‘¤.å@²æýL g (™¨íž~‹wiEÅVysÌ¿“´8¨ycÞDG§ÁXT<ß³AðEj0€´Ç¹Óê+o`Ûô‘íB ÷Ó…6 ã>ò,“ýF¾ æ°…ígÝ‚½EG? ,Å‚ÇLäëZ(2:`Í Õ_:8:«ªhZíN–UóL[1ÉÆ9ýBÁrÞk Xº€u»ó‚…äåÂ2G]î%°2%r;Ý+3x^è”;á¥$Å`.±‚ËÅÌ’sÏ.\ `l‡˜À`Ç4ðÓ|¦Ùüo X1é•” 5ª—TrÆ®eº~“@F ¥<-tJÌu*Xweâ8õf(Q€uÎX;<sPÙRÏ+Ê/N×]ÆTu†ô«·ø$5û¨µü,*Ü4SÁ3Ž KjÌÙt|ýlÍ€ê÷}ÿ­›¸jª‰ÛŽáBq±€’?1›&5z­üèô·èèѽN^ÒYr,Ê^˜8‚èRó»&ÁÂ*‹ûò¦°ÌæYµ^p‚óešx&M^iǃ1íè¨HÓÎÑ1ßí^!ùî^!Á:v쨖Çì± ü[ÄyQ‘Ç @yW8A­ƒ‹ÿT¢.£è·ð·5/Þ,‹ÓJæNVcrceÉêfΦO)ƒ+’É÷æñf§…gôú8ÊÞ£V"äyfæøøåúe÷™p• æÐÉÆ{sý_±rK«ÂÝêÙt»µ¬HÛ®ä–å +$N=W^1BäxúbÔZÞ¦YÏiûÏq‚ƒg–yœÙÄɧבÁÛ«H‚hžÀYgUËùÆY¤3¹Uw v 'ëW1 %]¥)p£œÂu' Æ_.âÝÝEL¸´¼ać„ô]MΛ—“úVˆH<@9ðzYðk®ã5߈æV „í£ßð5 {Uç­ˆæNåË»<©g‘ô&šñ~Ô¢ôOè² òw ¢ªÎ<;”xSQ&~oÉÂsp™ê5¸ÂÏå‚®îáì_x|o50Àgß_§:"Ñ$ÖÀ˜$-‹ÐY¡€—å°¸ìŽK*Í`ÅR¾™: ž•7˜ M¹¬WM5s.ê"Ú©d53%Û‘·¼zE=íÈådÀÛö**X> uI­¦— ålÃY¶Š“ôA2Å•ÁÝÔ˜¨¯öOMd“ÖqYîïE„¨ÉË:…kÔu,ŠÏÁµ¹1àlÆ8f,QãCš uJ I2Û:pù)ûëŒö¹P‚Ç+¦$‰T½…R6ÞõÄÏP)rXZžBÀÁi°ïéÕ}Ëòß”¾Ï]^UP¯Þˆ,z3 (*+8òà²I$܇•^óÛÿ ’ê¸I1Ržç7Œ”Ãë€;Q>½·\OÀ‹ñ#Üg&€/ù©_H­þ›9¹<Êæàˆß¸Æ<9#r$3òÙ±’ïº#Wš4çR œxú.MቓÞJpH†¥„ < èãÒ„Xi• "<”E!¬9>/Ê8Í«÷ètÍíUg7${ó55ã{2½H“8ßm€ÿ¼€œêù™,ò£ „*¦°0º;Ø9fü‹ÀQÔ€4ÊÕ¡¼!/€¼ µ‹,€t®ÝñD3H£í1°Ë¦ôg…¸£òLùµÂ#7Kýj™dÙ”óèWã 1¿MçÀ®,Å&Ò°`Ÿ×²~‹^&Ñâd¬òY˜;©jꪰÈ@<—$þß çË¿­DÓ 1©4µd¼³g%÷Ư`ýÛ¿mÿÜÿS”_¿oˆ ãü'å& ºO÷ó³xŸìYç*¹ãúøôá¿ôè§> endstream endobj 931 0 obj << /Type /Page /Contents 932 0 R /Resources 930 0 R /MediaBox [0 0 595.276 841.89] /Parent 903 0 R >> endobj 933 0 obj << /D [931 0 R /XYZ 33.853 921.043 null] >> endobj 934 0 obj << /D [931 0 R /XYZ 68.868 599.346 null] >> endobj 930 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /ProcSet [ /PDF /Text ] >> endobj 942 0 obj << /Length 2551 /Filter /FlateDecode >> stream xÚ¥YKsä¶¾ëW°|âTih_[•ƒíì¦6)§”’Ê9¬}€HÌ "9I=òëÓnr†%ï::ˆ@ãÕèçטÐÛ{¡÷·«¿?Þ]}ÿIÄ^”"J¤w·óÒ<ÈÓÜËò4ˆòÌ»«¼/~¶ÙF‘Hü›Mùm×oO¶Ýl¡]ê®3ÍÚY⫦¢F¥zE­GÓ ª6êMÛl~»ûû÷Ÿ¢Ì‹¢ H§…ÞV¤È:èãíËíöf#2_ÙÞ”µ¦mL‡ßÔ?Y³‰ü£²¦~!J¥;³o4¬xŸ~0ûÃö´ÙÂvÚîZ{TMÉ;ž”Uu­kšÿ×?¹3G<|¨‰aGÓÍ9GV#H™«{Óè`³ÍŠÔ¿;À®0àß¼ô\&eæÿpó™ˆGõ€{êŽèıŽ:¡!]?ërè'ze~ £X[Ýà➈söxC«±û¸¹¯A,+¬Â²ŠRŸLw½U ·;Èæ ×+[]o¶‰ ýC‹ý'Çø£ûoiYàHÉHj‡þ4ôD=êgTcºcG㿆IHºãKÝÇi„Y Ü:.?]W·êQÛnÍR²8HÃ|œŒ×XÙr+c¤¹äû³UýtÐåÃMkšþ­½‹ 83üF`4)(ÇjjL2ΜŒí^u¦ QâÚäÂo- ÁCxýéT›’”uv˜ûdŽ“A{ò!\Ñîè»0DTê–¹œ©v”}œ&Àw$k43ì<™º¦Ö=ì¦AFãqʾP·oéÛÞ÷Ê4Ô:½x­ÕÝP÷Ü$µê){gŠ>åtÿ°IÀ÷Î'#ý[è•+¶¹ÓO0šKÇ J¦î¨áÙ<Š_emxíï‡Q°ø}åáxÅ«‹c&yàÆî²°À®ñÏB3ˆœÈHø%ì 2gÇéi<F'¢!÷n©çbÔ¸YP<©T ­¼§XFÔ1¶¢ˆ°?ÐeqÞÎjg¦HVxÀ£Ó‰©Õ=(måýÁØj‹7ÅÙh"]oGš) èÚÝ@.O3”s0H0œzÞØúÇ•÷ÅÍ`R¿P=Í¥dÄãìÚoo‘ù¿˜îs¿XëÜ6p—ƒl–$Å<|†ˆíÍÕµ†ô*P5úfs¸ÃјýçU¦+‡ŽuíQSËy*LµvLzÏ·ã¹…cß…blŒÁö< ¾Ã¸+p¤0»×è?hsqR@ÔÁ`…-UºqûÒyP–š’óø¾ò ]x=œÿã Qtrê‚G8mql14¢·EéÚŠBw§UëëŠÂ£žAxñ¼èx‚;E>È þ™š -¹ÆÅo¥@1 §èn[²œwW¿_‘]EžÈ’@êI£$Heì•Ç«/¿…^ƒÀm¹÷ä¦=HC.«½Û«€šŸ' NG &ÜKJI§Ò]º.8½¬% 4 ÒL,܉mOWtmÃW{>švèhØY4ˆ¼l- Š4žËµ)òŒ¤"ÃÄöšØR2YºL¡«dXŒ³ ÃÆí`©ñJ_xª3hœ\‚Zw›<æËBƒÂ Œö5ã-¦[ˆÔœÑ›‹h4Aò)@'‹ÜÉv !çœ"1þÜ×zŒvfADÎ, +N@а)@Ö]”-Í%Í<Åá_[U^@8ã¦ðÎ\qLvžm¾ ÔÎEúÚ—†¹íúÝ[l‰#ºEñgnQªóc?ŠÍ¥d`¤3ÿ¹w¥²xP§1‰á”‘õQñ igÕþÈð·#Ò^7 ª^#JÅÕçTñWûS ZhaºZÍüŽ@üR ;Ôæ`5çHLꚯ_ –Éå^%Ä5¬64‰®g7~2_3ýüñ&.bgõg ™_7e;ŒF…±³¢IxØZl«Ä·xy’¤ÆëÎü tŠ \'ÖÎðrí˜U<žÇpå ëcTpQi:CÑPUfÓ ’rîÞ„¾s® bWÑä‰^ˆà |'PCÔ¹Qum4e„¿ùþ"yQ”aM˜Eoà(~½G Ñ°_â¶OH@dŒÖΔ³¼‡'Š9E‚ˆ¹´†1bEs¸W; >ч¸cRL15¨ÈÝ© X½…ϼ¸šXäspidB̵ÀÞ:Ïïi$^>Re …ì|™ÒjÈC3sÙ&‘œ@( Î@.ÇyúÅÇ‘?\°3µþ§:ê«wæ™ü?‰ÿ]רSwhûï®×\ï=àÎõm¯O³…áõZ¨ÑMµ:[$!ü­ÑóüÏMigk"XÁ©kåN£þß]{'¼PÁ§ áwPGm/k(6 ™¿vïUž†ÍÎ ||MÍ*B«#)v\\3ž)¦ ­Ó­³¦ïÇŽ{\Àï';„ÚÚ‚@¨ŒÕ%`øLï`êï}ÍAe&Rpïd¡ì)æ5ü”ñ³ ¶È+ !/õ¼ê¯q‘mJí£q­‰Iˆ¦™üvÇUpš½ Ó]Æ “dñ¡k–ÜgìšÆ%dGké«èã0ÿÀy•^wǹ€ð¸pu—w.,³iî\u F¾{=‰gyÕ-ßµ8¯"Ä‹­Wb à€C^†÷á—QÀJp–EõBu=Ê´)Z™\¸õ’Ùj} ;³ñ!Iï½…ñs]ðšæ7cê—y0ôà¸@ØÌïèåÍ@ KŠdò j8žÄcÿðÇFôn†×1$sìa· ·ïòQmÅŠ ˆ(¢øJoO‚$]ñv8‰‹J>WÑǽÍâzêv‘¸R¤Aâ}YÐM¨€„(¢…iΠԼJsQ˜³âE|‹ü÷VAþ|î‘—7^Ôs!/u'cI<éÀÕ*ø‰-ðSº"þ>!5ÃwÀ,³äŸB0™v.ë¡{ éKJ1ÙÁXAØ•¸‚"'o›j,£úv¯³^o/†£ì„Ì¡R‰æESü-ÂÃ"îÙÍl>àKÕ%™œÉºd?†ñfãÛ5ŒÌªI"9Qd‰+lK±§I,ŽŽkh»{L6ãOf;ej¨AÉø˜ÛåBó²eîü#S€‘ÛL _Íæ€ýëÈX endstream endobj 941 0 obj << /Type /Page /Contents 942 0 R /Resources 940 0 R /MediaBox [0 0 595.276 841.89] /Parent 947 0 R /Annots [ 935 0 R 936 0 R ] >> endobj 935 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [269.475 654.796 321.049 668.744] /Subtype/Link/A<> >> endobj 936 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [345.72 654.796 373.133 668.744] /Subtype/Link/A<> >> endobj 943 0 obj << /D [941 0 R /XYZ 33.853 921.043 null] >> endobj 194 0 obj << /D [941 0 R /XYZ 68.868 798.142 null] >> endobj 944 0 obj << /D [941 0 R /XYZ 68.868 207.142 null] >> endobj 945 0 obj << /D [941 0 R /XYZ 68.868 168.287 null] >> endobj 946 0 obj << /D [941 0 R /XYZ 68.868 143.547 null] >> endobj 940 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R /F30 591 0 R /F34 597 0 R >> /ProcSet [ /PDF /Text ] >> endobj 951 0 obj << /Length 1648 /Filter /FlateDecode >> stream xÚW_›8ßOÁÛép1Æ8ô­wížzÕI­õ¥í N°BŠa÷òíoÆcØ¥{ÕJ{<Œ3ž¿qpâ௛øê—Ãÿ8àA¶eÛlˆÜ_Ë“i·Ù&áÓ "éƒèTCð\Á]^ÐÖûè â¦'Jcîú¢?/0aÄ8e}´u¯uT™V- )ðâ<}ÉáE.!ñTÄ÷p¥\-&«´8oIËVhÄLäá›f¨»ñPÓוŽ0ý›Xs8âk$‚±7mÑØœ‰‚º¹EQ=l$Â+'æ+€àIÞqƒºg‹fÄâÆc|ìè®°“„ .íð¥áfÍ } ìÚwíbÔùhÌxÔBÝS  HìO–|ºÑ­·l·pûHYIãóÿŽG™÷>U–˜Œ^X¿k½Èòœq2ÎDØOWã#oÝ#Ï–XQĽ§PáÛwÿн®¬¨‹ü ‡.?»S o4M¦Â]mú*:;B˜¨gN$Rs;«ITVc‰´ÚK·/|sYÅ®b‡$ÀëÿTÄ•ê¤ï€I®B WR+MŸe°à¡Ê†J ‰·ô{í@*‹Sq‡d0O"e¨‹Vmq!Ê™õËÜ»ßÈ4,Ó‡h13‰íÚÕXº3ǹ!È H õZÊW Û>eüÿ-Vò)õºü„Ý u>•x'Æú³:*ªÊ> endobj 948 0 obj << /Type /XObject /Subtype /Image /Width 1091 /Height 962 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 471878 /Filter/FlateDecode /DecodeParms<> >> stream xœìy|eþø?“ûè‘£GÚ¦mJÒBi@(å Š”C-*+¢ ¨ë~uWÝÕuÕÝõÚÕßâîº žVO ‚Tl¤”«¥¥¤´¥é‘4m“Ì‘ÌÌï)!´i›«ò¼_¼xMf¦ÏçóÌ<™<ŸùF’$ @ Äu…Àáp\m@ Â?xW[@ ðdÉ @ ˆëdÉ @ ˆëdÉ @ ˆëdÉ @ ˆëÿ-üðo³Ç=s„¸´qåÀ=•󻣄§#%êÊ÷î'ÄÕ$Arm¯åî_EÝ®åË‚@ âúa8K†<ùŠAéþ™êØEÏ=W˜(±"ý)•·}ÖÁ~¾0©O ¼â‰¬ìgEtˆÛârþtÜãYË×K“ÓV–I#ÒMï¸ÚKÿöÀÔTµR©TjFO¹û庘+"84ø2H‚¹MAâj|g–R™ð@I×ã <UÀôëfð  Ûùù\¥ ¾4×ÕBž|Å ñjݶ@“ýÇãÈTA 1’ø2ÇOZ{t[¡ 0X,È]€‡\OA<‘ü\AÌ´û‚VƒWðËÜçþ¸±úÙ¿O’ÓQúÞ^éí_LRÆÈ¸öG¦ý«Gø'ñÔ¦Ê_N‰…Î3v—×"ídøÂ+8êAº.P綬?•&Ùûniçm‹¢‡jÓ=¨BEȼ,ꮯZ2`ßÿ複™wެ›.‡á¾:@ ? |š+òDb±„C, ¼D†MÛÿXhHP)•ñ†{^+í Õæ’ ‰DÄéÆôù÷ýâ”ʸ¬;^)3»úNí PißýèÏ7´6¿{‡>%eÌâ/ø)™3û—3ìÛŠŽØ¸ÏtÛwï•+ïYž#ó€Ð;Æ´inʼOÚâØsc”Ñ‹¶šY¼â‰±†çŽùý"šºp¤Æ5î+f$† EaqÙs¸’’ÀÚO¬_=3-J©ŒJ±êƒj ÐóÍ]É7¯k䮃ã௲Æÿ¡ŠÇG3Ç>ôÒãósÇeæ=uÀ„që ‹Æk•J¥:9÷¡NðÖ×…ÏÍÏÒ¨Tª¨¸Ñs^: ñ1ä éx›¼hÒ¯ Ý!QŒ¬Û¼ñü„ç_8¦üÝoÛ¸ñá8ðhfö/þò›»fäF§NüùÛ',€GÔ“ãÀ£™9ÿ÷¯?Ü™«T&ç?½£±áËßÜš¥T¦¼²s˜Ñíß>·Ð¥T*5c¾°ã‚zûwóÒ(òv+Sï«~ñšóã‰$‰˜®ÿø×³.äUº› €Áêáà8ð¨~ÌòV/œ1uÒXýÔ‡Þ=a¿¢Î$@ ×5¡xëW¾~תÝãþ^qÁÜzðUí'¯Þb Ô–éÛ»ÿùûÿ_ç²ç¿ÿ5ûéW&çeÇ#nùïÿ–ÇiÙVsîÜÉÏî‹çûÙ>¦œþ‹[èìfÀuaçûÇâ—ÞŸéáñÒ»vÅÄÛbë¿>aWëDœütI¨¦½åÔø9i~ûSÄÉ3r¥ÿôä뛾;ÜÐIº§rlïþçîy®¦`cM{{͇ók_Xüܾž¡&zdË7Ç'üsoÕéCÿš†~eÑÊ]i/ïm1[Zn\mˆày¿S¶£}fÛ¨7ªÚ,–¶úÝÿ(ÔŽD(Ô€Û4ؘñè„3¡PŒ8ùáæÖœeSï¹Ksô½--a²ù»S“Ö|[QYµãã_~óEkÿKßöú…}Í­‡_Qúð¼e_û×QSSÙãäÛ¿y¿žÀÂ'þê£#,æóß?£øxõ“;;åƒÆAoå°jø‰WAÌ Ñ0ìúðíé)ÿþîÇCG¿ù¿Þ×ïå°#”â@ü”ñÅ’!><:6&&&&F›ÿ²ÿa¼ºècËm¯<}k‚„'Iœ÷Û_'þ°¢;W«—ÅÄ$Lyé8€Wo*¡þá‘ |aìì§~75ȸ«`‘y¿X Üýî> ÎóÛ>8™òóÅiâKǽöΡ½yЍrW½ÃZù]×´§Š­ÚcÄ-‡v™ÒæeÉýWA9ç­]E÷K÷ÿóÑÓ5és~ûùYðê¾v.xññ©QBaÔ”Ç^ºÝõõÆãCÍóêùOü,]‚`ŽãEŸwÏ{í·’ñ0‘Z?i¬Šï½/=<1ÏÑt²úœ™âɵãrb„~w`ØAÒAÇŒG0~³-úÂaÅ]áw¼[Ú~Kö—²~¹Hç9•óÞ;ñŒ¹Ù¶WöÕœ:—|Çœyåëž?xvÒž³ñ·MPâåÂdé·?³îög€%Z\·òÞU¥Nøvµº«Ù¦œ+âÎŦ+íß[(Ú ?"!²ï¢;ͽªi —Û}^ûÂæ<ûÁï_|å÷·ý¹žÍ(XùÊšgæh¸ÆÃ ’~ 2f¢=» ´blwù{Ûznz}V4x£ ïIüûÆÏêWý>xaj9w«0¡ˆOãÎþ¦7?"ŽÓJŢȸH&’ ’b€±~÷¹Öí:evòytO7ÿNrÐ2 Nï·2zx5üÄ« ‡wéñÜç\g€Ë¿¼l÷®³ÞôFÇ_ú;~D¼¢O_¡•Ûj¬N€P¿¯@ ñ“Ä—) &VÇ'$¨ûrˆDÑ UIQ±)Žþ+O¤2— âW$„Û[ºûâQHKk/2ðï€ f(óÀ½1sÞݾwòG-†ß.H¸ìš Ò;›—Ò¼ñ‹/ìŠ[žŽ­Èjû×矓M}BØ í‹`’¸i=–÷ú/5Q«5Š„0k};zPmuVy¼J„‘b>M¹¸Ó¶.œ‰¼ôçpñÚ ÕÉá]µîo‡î $<òÏmü“ê<º~å¢ÕœQõÎôKCN;÷mò®‰ã€g€§œœbl×¾÷JºIüñœ„'1–"æ£N?ùj†}ó qbÍ#¯5¯þêÈöìHQùüä{Z¹ÞF£Ðë­ > ’ -=èë ý€\-æ6¼ßhüð¥m—¹ÞD° ÁHSUž¨î+„@ âÆ!y2²œ‡î +~ö¯» °¤¹vß·G: ÷g(’$.BÑ,€4{é­Ìö·w·Ñdýgo•Ùú¿÷æ…ÇÊlçš{ƒ([,N_òó¤Ãxü펼_Þ{¹+iÞñÕ¹³cªþó±-wZ‚(llAüáÙ•=7=—É”ñó×ÞøôÇz3árö¿çŸ˜Œ©:1HÇÝ?O°ãåµ-.—¥bíË_ñ '“$O‰¿ð;V'yöËÿî¶z½Ô²q+î‰ØùÜk;8Ë:Íg´ÐÞûâhعýP‹ƒQxTt¸ð){uùmòeÌÁ*Æ´ïyç{Þmo¬®ª¬¬¬¬¬:þݟƶ}¶¡*$™,ÙCIµIpµ—½÷96Èhô~+C¡F?¼ ŠRzÐ×y(†¿Ñ¬mÏ_Þ:`v¹,åÿye·|þâLäA á¡Èø—ÝôBñÛ³O>?#Q­T%å>ðÆÞ:  yhõ˜87Sþv†,bú_6®¶¿”Ó”OUå̈éÿ&[œºäW³Œf¨•ÚyEÍYP¢”»ÊÆÛùùäGõ¿"ƒôNœ<+7’‘Œ¿-]<ÕÄ[µ4dÎÏD:_¦„ªwVÏN‹ŽIºéáÏä¿\_´,YXøô¿|úò¨m÷eDG§/Ù¦{éÓ×fD`ÂQËÿñâÌ7qÊܧOäL$­A6ñ_þgÖ‰g¦Ä«Tq~¾¶²—ñÞ—õÈ;LMŠR*¦¾ÒóÀ^ž<3ìþ·É‡1éÝZòÎAÅÏžZ¡‰åH¿ôÉö¯>8Ô‚I O½rÛ©ÕS&Ý<«à‘bE_$ß £Ñû­ ýñ*ˆ7¤ô`¯óÐ {£EIwÝÞõÒTmtêÝ[F½øÑŸ&ŽÈðC ñSëêêºÚ: ˆÇGoz,æÓý/f#G @ ¿¹²Ë'"@ D(&ã_©TöÛ3B>œ‚FTÜU—{­éZÜ=º6»ðSºàýúrUº0Øõ„ëó’"¸^@Ñe@ âúE—!@ ˆëdÉ @ ˆëdÉ @ ˆëÁ¡C‡®¶@ áI’W[@ ðÃá¸Ú: @ „ <@ qý1ÌʘD0:tèðáÃ#ÔøÄ‰'Mš4B#@ ®q¼X2 ššzÅ•¹:thΜ9V«õj+2®‘ 6œ“;yÚI¬8¸1ƒðÊOû967lÇ×&h@"ˆÅ»O&66V¡P\õÉ1âú¢ß°áÌ‘XÇ`˜âÖáçZ6/¾ô(¼ø§ÿ¹}HÉË›=+ˆÅR¿®ƒïø"Eøã×â/Ö2š$ÇÓÿ XPÍ™ãåå{@¡PÍ+Xýú(•Qz½3-Ôê˜ÔÔÌ9s [}ýé’’Ïtº ƒaJffŽïÓ²¢¢5&S“@ ŠŽÖ$%Š‹K8pàÛ’’Ouº «Õl25ÇÇ'¥¦f.\¸D ž>]¹yó:©IÙd&S3÷Q¡Pët›d^ᆠ·|2£P¨M¦æVSsQÑÎØÀ \yÙj´œ,«ý$6BgÐÎŽÐñkUû  ¨¹K]ãI|ª9süó/7Œ¶8<2ª®j÷ú¢5«V>@;qí?ÇFˆ¶ãˆàY·îÏK–¬‰Ÿ4 DÁººº†8ÌÍG¯ÙçNQÑšºŒ2ИIœV;ÓŸÌùñ/¾¸zîÜ»RS3E"±P(âþ?qâHMMÕ‰G’“Ó§M»U£ÑŠD"‘H,‰iš®©9~âÄáêêÃ/¾¸ÖG_|qõìÙ·ëõã„B‘H$ Å"‘Øln«¬ÙxWW•ù+¹P™©˜#äI|ù¡P´ûÛ¯W¯^”®×0$‰ãNŽÍ›ßV(Ôùù ŠŠÖ,oÈà \*—l­úw]ÇÑäı6G—ÙÜ.Rå$Î2hgGJ£C%E©ªo8%ÛýYÖ§oÒ©Ù¦—>ª3µ¸]ˆ¾óæ?ÿž·xBÎ$¹˜g¶»¶½4ÎBýèqþ¶×øslä¸a;Žž_\-‘H—,Y=ðG'`®â€Ü·o_}}ý•—{#“––6}útnûš½þžJ"®S†©]’'Nyù&1TOÃÊÊòââ î‘c¢DbžSFcí‹/öMjóòf, ñÖÖ¦ÞÞn­6%#c,gÌL™2kÚ´[/\8¿qã¿ÊÊvêtécÆŒONN‰Ä,Ë&$$K¥Òêj? K$ÒÖÖ&«Õœœ™™#K„BQrrú¨Qúùóö¿ÿ½uàÀ£±nôè쬬 "Qßœ~Ô(ý‰Gè‘’ÄׯÃ>*uÙ{NLn§€¦ÀE‚…‚n»½©q§©è+ž ؘlØ ë“q¸ºNu}ÛØÛw {¤GNÏTÎ LaéÆ;üšè_E^{ý7yy³ æÞóį_áì FK΂%ö„'Ȳ´ùò(¹‚ÑÄÆ¥Zº.mÛýCýç1aI9ÚY†ÄÙbÌ/)`í¶xJ)(X¥Žeæ/³þòO ¦]Z¡ÊË÷èõ9 …ÚǾX­æXmF„”¯”ò)«ˆN4™šúY2¦¶f‚À N£ >ö,$Ï1£±Î3~5T1³ÙÜÙÙÉmGEE©Õ¾^F_ùqÃ’ykÖGÿ{Ú”¹ùù näZÜ4:++ëªH¿a9uêLŸ>»þ¹¹¹WFnEEŲøxòÆ¢w3×5#[»Ìjµohkk‹¥O<ñj­q yFcí±Æ²ˆÛ!R®’òÃvìÀ±cåcÇÞärQRiŽÛE"Q`âøøãuݲQ1SWÓ¸\@3@³@³À°àäË´÷tð£%›×s›ü6N†¨ïþáT×·>1K9Çîê:Þ¹3l2•s’Ã'ú«ÃÐY(\,Ö²¼—ø[Ïäµ5…¯¼³uÛÞØî5Ëw)\Ü·-KÅb骕ÏuãÅÿ•F‰bbÇFÅGùâˆvb‚\#ct¸B- #œ1½=–=Æ¿9õ^39G;ktìP¿žR@©Zµò9‚À ×é2Â! ß{ÿoùù tº ‰Dª‰ÕÀØì‰‰¬¦¦J¹ûèÿîÊ™nûÇWCHÑësêªvkT‹HÓÙÝÛz¶r~~ŸÕØXW^¾§¦¦J"‘j4‰`4Ö*j½>'/ov¿87¿ð}@’$îi;‘$~àÀžòòÝê®ö4«Iê$q¾ðÛÈsT|^Þ-S¦ÌÌÐr¹\ † …BÇ0ÌÙ³gY–MMMMMMž'{~ô ;î~õÃáKªaié½>'„™{îPÆ+••å‰T¯Ï ‘‚—è§!p®øââùù C…e25WV˜5káÐcÌ3GÔSß)*Z3ì9ÉÙ:UlÔÏ¿7™š-Zðû…«TÆ™1Wl&àHKKÛ¶mÛôéÓ93fêÔ©WFnEEA’Iùrò¼…;w#Kæºfk—•–î(-Ý^Pp÷ʕϼõÖ+åå{òòfß,.ƒb8õuEô‰a‚H!OL³4N÷Z¾&c!aÑ¢å·,“Éy<Ç#I¼¢¢¬½½52RyþüÙ³gk,–.†ÇÂ`Æbé8zt¿ÉÔ⯑H"•ö 2ëz{»ÕêØ¶¶–šš*¥R- ¥R§EV«å̙ﻺ:“’O”4™š-Í‘·?ãp@‘vÛ‘´­CÌ—ÓúUNFîb V93¥mgMMU`“¿j—9¢Îº·®gŸ“Æ£¥©õ‘âx U·&>iì9|ºëÛß6ÚŽd©n‹–Œ @¯”Õ~Òd=sðÜöÉ) CÕf?xmç1[7ðë«K)q³zÕs8{î)«û¤¬ö“QÚœ™÷ßÖkíQ§¨ÀÖjk9ÒeP*Ç…ÇÃx<ŒÏ¯1$œö¡-™Ràð‘ÆŽ¹iÅò'ÀÚmᆄÑX[ZºcÅŠ'uÉéaòÐé2Äo|‚ª}C÷… Z3·Ô)¢µ§ŒÉÊÑÄj­Ý–ââV«™s¢z-¦¶æòò=o¾ùB~þ‚ü™¼öý9fµZ6o^[X¸œ› ›LÍÅÅš~amMël‚ P}×§>2¦¤­q}Måƒ>åï¬ÎåríÛ·Çñˆˆ¡PÈíäñx‰„a˜–––ÖÖÖñãÇGFF@ww÷±cÇrsse²á½jýðë¾üO¿ä6LÆ gÊj‡8Óh¬+.Þ`µšuº 2‡hpÅ‹+ÝÊÔ”ž ¬Y«Õ\Zº]¯Ï fæ=üña÷ö‡/¿ÏmTV¨©©ÌÏ_’8‚À9þ°pùÐ>À9ËæÇêâú)ã;Fc­êv± xB!&`">&ðLÄÇL¨™:”±Ê¹,<ôÕµkÿ¼dɪŒXT» qåaY–¦é~;ÓFiëÏ6÷ÛÉ0Ì•R 1R„¦vIâ­­ÍáHIÉ‹¥ÜO”\öôÓ¯%$è`Ñ¢eï½÷÷ñã§öÓbµZ¬V3WOÌh¬ÍÏ_8oÞbÓú&Ów]SïÌ–ðe.ÖYQòcOcvaP5‘¤R†ñx<†ñ0ŒÇ0ô—_n¥2J©Œ‹%œa¼ýû¿kmm’Hd3fìÝ[â—”‹í`œ”ˆåŽ›9)±± 휃aX]Ý©††Ó‰ì¶Û54œ¸_55U¬f¢ä€uxc"fÊ_¸°¼|wwý-ÉËH(Â'šLÍ¿ÎôqØtg·}bwY¢¥©^ ]ÄD]ÄÄS–]u=ûÊZÖFKSgƯòQ‡!|gÚ*ZmçôéyeuŸè5“Ƙùâ'öÌf]|üʗĦ Sgxò]Š;î -'¿9ùÁØoü€\®pÑ.'MIÂ%cæqÑ”¹Ù,âN ÙÔjïµ D"L"‰ŽpÑ$ ÷”vK‘lü‚ª}gnºE}×ʼ¼Ù~ßÃA©ZrïJ06Ö f‚À]´«³Ãd25 yäÜ¥ìÿ^wå óBK«}ò‰WU–„cúÒUºätS[sQѽ>ç¾%+~g5±ÚÂ;—ååÍæLÂ;—ùxÑ<ñq@Z­æîö EEo¬Xñ½1™t,rÚ¡A Ðmɤu·?V½ga_¿V­zÞ/eöíÛGQ”JuÙ›{Ççó¥R©J¥jooß¿ÿ´iÓ`ÿþý,Ëâ8€%þ<À)¦ïµ¥‹q vIâß¿ýȱ}ãfšÎè&òÚ`Nþ„¦¡{¿“^_ÈÊ˶Y»×¬y¾ àgät E“^÷ÏZ2ç‡âÎüÞ9£ÑŧFoÚüÖ(]æö˜‹q¦ˆãùBž@ȉ0‰ˆ'`"!O,䉘PÄ x}·F$Ý4wò×oo-)ù,0Gª]†¸Â°,Ë0—Y2iÉ6J[[ßè¹Y2?‚ª]V\¼ÑdjâBSÒ´ œt•Ëã5mUUyAÁÝ3gÎwŸ™––5nܤ;?+,ôoFbµZÖ­{c©„èpU„D!MVÒÅÅ —ëtåå{ª…'n_|oåღãÍi‰ÑÅÅ‚ùé’JåÆ<‰$YYã'OΗÉä¼N,–rN ÃÂÃSgÌ(HLLñ׌>K†k‡Çãñ"#YYãgΜÇãñÚ+ /Já)ꉧsR‚)fµšÙÎ:ªìe** 0€ ‡ ÿïy…BU^¾›bÀNNÉ€ˆvð–âfèÚexƒÝe€iªRœ0X¿bdi½Gœ€wà !)€öÍÉtÚìˆðheTüÖªc ¦žs據ſÂj¶èí‘jyBÀ­i4ZîËÕÖcÜpàri䬛î“HdNæ’ÓÜÜÕÒÕm²œï$#ðð˜0i¸BïÂ\” §hðá':n)’¯@|o·ý·$)¿áЩc¹Ólö“©Ù`˜b³õX­f…B­ñÝ«Z –J$²ag¸b±4oò,nÛÚmá’p 9C}[5±ÚW<¹¾hMñÖ3C?ÇŒÆÚÜȈ±¸¨è ˜Ì¸‰ø@ €/¾x|À0`Y÷ùKëþM®(-Ýá{òÀ™3gpïgÆÇsÿ¯Õj†Ù¿?èõúÞÞÞÎÎÎ Sh†ê¡h‚Ûp²Þ#1jjªJJ>E çýòvQ„¨±æ\0úp oˆJŽ™¿òNi„´ñôÙKÊ0}ÃÕÉ8ƒ!‹fþìÖ–sçwmû¬²ò@H¬ Š!¼î×èâo_ywõÊ7ß|>?a0Y%éãõ‰£ueÅß a9Yj0}ü¢÷´ƒ±á|LÀ>ãó0ãñ1ã¹9ÚMû>-»iüô€Ã¶Ý 5 ñÿÍ}ˆWTñ×›|ªø‚@ ˲4}ÉDÉâÞÎHK>}æœç™WT3Ä0Ôôch§°ÑXwþì±¥·e¦iGÆŒWq²eÓ7'ÂÃ#ž~úu•ªÿ ï‚‚{þö·gÆ:¿²fÆÚôùÃwLàÆãþ¯ßøÃ¾ÝU‘ò‚iYe‡ëö|¹³¦úÈcKç$ĪžxýCßMÓn+‚Çã “Uª¨]»¾lii„‹w(;{ÒáÃ?|òÉ»Hñ°ˆx</"B™““»mÛG--ii™\ìwH¯Ï9vìGNJZZfÀýÊÏ_h0˜­Ö‹ÿ´ …ª¸xcå¹–ºìÇm.°Ó€9íYÖ2½>Ø5y|Œ%ˆ–¦ž´ì2öΉ¾#A>Öó“!*;·{ ùÒhijÞà»ôÁ²Pªš¿'{\L*éÂc¢“OÞ70Æ,ø<šq¦ÅŒç¶õšÜ^¢k %ã»”%KVI%R \vex¬2"ö›òõ2IĨÄq ôv4Xº[Åbyx¸* âˆ3V‘T‘FÑøóJÛ-…NÍæ7T“)™õu§rÛÏÉþú(ô¾ýÑ^›B¡ÒhM¦&î¥l”:Ö³…úºS:]ºïÙÿP\¼Q¯Ïڌዥ®xríº¿Ôœ9X­³a¤ÕjN‰r##a[ìöE298z0À°zid™*±^®À¢´îö™-g²--°èܱ÷Êã}Ÿ°ž?><<œÛ&IÒn·SÅãñÄbqtt´D"ጙ´´4‘H$—ËãããÏŸ?o·û—ƒçoÇ€bûŒÓß’!I|Ë– çNO¹sz\z<Å’mgØþ¾ãÙ`|†–f]$ƒ3NC÷¼| 2~A³4EŠDÅŒ‡fÞ{bݺWóòn ÞºŠõn9ÐŒ „¬~zfTšúÈö½55•? ¦>Ã0¬ˆÉ»{j‹±©dû'^í1'K ¦_ôÔ8ô1~KK·¹9ûä'ÎjX0ï¾à½[î9W©¬ptòÛ^xî9^bœ~¾BãæÖ 6'Ë…GÅÅ©¤¼+'ŒeßëËW¼º½—¾ëå<‘ºÀ2Œ;ºllVZ¿£™£SNœê+¤†|2?¯]f25¥%ªÓ’ã0K±åûêú–ž‡~*;{ÒÀ“-–‹¥C¥Š.)ù4?¡ïñKV«9!F <©ÛŒ {úÁ¹îÙ£G½õÑ®¥·Ïž°ºÞ›7¯#\"‘.YâkH‡N—ár9#"œÁãñë7o~G¥Š*(¸»ºú°Ûáñx»v}Y_:7wFAÁ=/¿ü+¿qÑen)"‘øý÷ÿ!•Ê îÆq‡ÕjvK9rdÿáÃ?pR6mò/¡Ó…B¥P¨ú~YI_·îÏu=üÃc_·²ò^8\0ﺜŒô+V»l–öÑۉʎ­?¶EËÒ&Ç,‘ •p®çPUçVŠÆu¹ã£ï¬í* Þ'Cºßœú`¬~÷‘Ï&$ê‹1 ˜k­\¬PHc¸jy‚D o±Ö&(Ì+xóÍ †<Î!J¦dßaÈè=ßVSwþòñ±i©º |¡ÈESÝ+C€(ÌË×™p3vKé}{/¿á„$u¬€·±Œ;ŠÙ»ÇfOæ"͸4‰¤¬‹¿SccÉÔtß’•>ž/K —”|æ—%ã{Å$«Õœ ÍäÊd àn†–Ý"SŒÉË»åéTzútÕG%ŸÞu¼4·ý\Zw»ÌÚéã{³ÙLQTDDà8îp8²³³ãââ(Š2™L5558Ž'&&r'§¤¤p•äryGG‡ïý  ã@Ñ}sý|2åå{JK·ÇN¸ãñ»@8c§ÒÉt – ×`\FÂßÅóH† Y§‹q²¬§%sÑ'3ˆƒÈGhÖE2„“¥¡+eVŠ2+ò`ÉîššJw*TÀtÿŒ²¾ý éb(Š%%ÑâIË'ýßÇÿœ4~æ°‰û^aY–d’&H—'Èr~>îÜþ†uë^í—ŠãdÈÁôñƒaÊÀ‘\Zºý‡Ê„”$˜š–àm@~ÕÚÊ€}ÿ£“fÞ9²nºx"‰ˆ§XŠÿж¶f3£NNW )KSSK›dTœ Ù2W ÖRò‹^ë~¦ÌüxJÍß̹ó)CÍ{³#CµüœgtÙñ^’îÜG‘%ó ðÚe‰ 'àIÊŽÔ—ì?›wë¾[*•sG««µ´4rL}ýi©D’Ÿ–¢k¹ÐÂÕoõQ?‰Dj餀/ݲ»²¥Ý Ð7©ÅêÏ·¹O{ÿóÝ*…B¥TÜr›T*Œ·óÛ>ŠðD,–¸­ ãÉåáK—®ÊÍ õõ§$‰TÆ%·äæÎ\ºtõ@×Ó°(êžž®ÄÄ”>!O(º¥””|n·÷Êdaœ£G?qR†æã×v:1zY/+·¹ÀEÙï=÷J¶’^´è©`šõ·@MBØØYÚIKIm×»šþ‘ys;q¶ÃQ/¨¦iŒ–NíÕ×Q~î+™,R­ˆ#]}S%Y˜BÞ/Æ,˜<Âi7šO´³çê2I$Ò¼¼Ùù3èG+)ùÌ_·ŒÒh¬MHL§\NpRàr‚ËYÂUÅ$¬Zñ”ûE¸Á§Ñh‹Š í‡viOën7™š|±dº»»¹š¦Ç´iÓ¸´~@0jÔ(F³ÿ~“ÉÄE—qf „……¹+5û‹EÛ.ºAÜ!‹\ÁÉŽ® ÓÏT'©9†bHŠ&(†`ÀoKÆÝàÔÅ3¢’¢\¬“b('ët1NKy6H2ͪà|2.ÖE2¸“¡(†t2_é÷%µh]·îÏùù .=$íÝBÑ„“%)†ä.—Ú ëøUßî¯Y;|âþ@`Hš I;ÚáQÓ#yÉôwû>çœ3œ]ád¨Áô ‰ªôüü…V«Ùh¬ãöæhê7 E -æ"‰„ûèŽ.Ë<öèM«°Õw4¯{go«$çÿݰŠü×Êßm8Ò9ù© ??]ɲiûŸáý½Iò-¿¹ö™üh>uö³¿ý_ü»eèÑx— ‹HTHøH•1á–æ.`ü¿ýkͤÉ~,¢Ñ$ÖŸÚ |IKGOöÄ®~GK‹±ìû­ù7«”Ê´Q£ãÆàÆßôùçÃߥ¸‹¥\dç0IJéQOÉÓ'àP¨].Ê?Æãñ‘gkB¡H&“c†a¼ŒŒ±‘‘ÊÀ Feeù‰ – ý36FNÐî0.húÇŒ1éóæU,Á÷ÚeÜî_:>zQJÄä£Å'-»`¬zîõ\¯'ér<·=7§l‰2*þüÙêPÕ1“åzM®\¬¸S"Öæ’%«|¬AܯvY`RâWÝœ`ëvßkéCVqâ¶Ÿëtéžýñ¬]æÙB˜X2¬‹ Xa¤³\x"©µ.V. •S1$Ô…#µÎ”¥iÜÃM–>=™x³Òä,ˆ jD_‚eY[o¯/gú¸x7âZ&ðÚe‰ÔÒí¾tæäìêêÃÙÙ“ZZŒ--õõ§ZZ—Þ9'[Ÿ0`4¯ÅÔnîêò7'\tgÆÔןª¯?e±tX,ÿlAvf:hü¢,>N8«OX¹ê~Iá8ztÿ‚÷ºÍ¯_ú;ëö–и›ºº“:]ºF£åñxÆw—då içùáê#È+&SSb¦‰–Ó,0‹ZÖÍ“îo%¯\ F!ŽŸ­}ô“Ú§ÜfÌÙ†‰IéB¡Ø_f¡”œü &*)2,Šºüý%ÏWi´ž1fçÉXñö3¦ ¯‘ZžPc:(Êu걃i8žÑem–Ʋ£ŸÆG§i¢Sž©ÐEâ=¸×è2ߥpÅ£1[·‹va½Ý“ÏVÒ<Ú¥¸THZ¯Ï±ZÍ£ËÂÂ#B_¬ÝÌB+)ùœI±%NLˆ•%‹ÒÞ0K³º¡rÛƒaŠN—QZºÃ¯®ù2 ­VsÜ, 4 NŽÇðöM„mýzG¿$½Þ°/,À— N§3..ÎsWmÙårétºoåry`åË|ÿ&Š!Âi25Ñ,•Å]Í9¸©9N28Éà~åÉ$n25 ÅÂð˜FD;§‹urÿÓ åd)'Cy6èöÉP ø3ÖŸHwný)>a,Ñå°ZÍîP[¿Ô’¡qkuQƒ³J'ÆšLÍ]]fß´–!;AÛ ÚÁ™1¸«×A÷8ènW Í—‹8%Å$ø„N—Õ²0H¤FcÝæÍkŸ}ö ÷ îÐ Q” ê)Åíïè+óû§5ÿ÷LR A¹à¬g^Ìûõ½YáȺóžä5{ŒdÐÕE[nûïÓ·&Hçýö×ÿ˜þaE÷ÝwÜü~c«:±4 ˜û—ãaÀÒèåüƒÁ­&p†#_ª‚£ §BdÉlÝòihB\^»L£ÑZºmÀ“ÎÌ›Tö¯õ/¿ü«´¤˜´$M®^6wœJ©¸h]ðÝÞ’²ýûüu•èté-màK,V›ÅÒ±å‹÷gN;Z‘›– ‰Œ×'.JÁxÕ'OÅj’(VSX¸¼´tûþóçI“nÎËË÷´d**ÊZZ›šŒ3fÌ5òÜ–LK‹qË–~å:s‰§ŸþAFÆØ¼¼Ù2™L(¹¥TT”Y,AÌšµ@& ãà¤47ý4&S³Kˆ±1mOÄÚ Ÿ ¾YO†®]æËþææÚêê}S¦.äJ©y=Ù—Š#ÝxGUóž‚i<ÄP,c2AðuÌLÝç´ÊA“a‚øëa·%ã;dÕ˜_Ï~»Æt°ªéûŠ“_Ë$áqË2áQ.ÆE3NG/á=ºÌ)ö—?}³‰Xö¬ÉÔþƯÔU?@ÏGÇ‘Q.Ú&ð]†Ù{\ÿyòï„\Ÿ|­V«™[þÒ+FcmÔ"©Fž<*rl˜HÙf?OÒD—®Îh¬ f“!žcFcmí@»ÀIéÂnq¹Òl–úæs\uæÓÐúȘ‰¾ÍM###Ïž=+—÷wÍuwwïß¿Ÿ¦i¥R‰ã¸{L.Æ ¤Riåˆ 3sOÍ )‘„-Y²Š+VÆ;ÈŽ.Èà…é6chœd~ùdÄb©»Á3§²æe Â.†r²TŸ%Ó?ºì’2¿(u±N‚¶S A±í ·Ÿ¡ðrL?jü¢'_g† ½[2íp2ÅîËExïaŠ<ùù·û[l€š /:d˜^‡«§{¸ÍõCXX‡Š+eVT´†bºˆÀë/€g=åÊÊòí;7¹È JÆù‚¯qüˆ¸HîÑ/”ŠE‘q‘L$2$ÅP –ŠG&er.ÖÙƒeöàŒ?¥71>,sñG„eXÀø(´ìŠÁ“*$,ÞK²w SJC÷ævÙŠG|<Ól6ïøêË F\ ¯]Æ;1©<2[Ÿ®î¥ósãõn'ÉE']Õ5µ+W- DM¾ÔÒÝÛÒÒ˜;6©`êEWƒs±džqe€ñÊTLšH™…BUX¸¬²òÀ¾}»ª«Ü£Õ¦Ôןڲe£Ýn»÷ÞUPRòiUUÅìÙ ãã“¶lÙXQ±W¯ÏY½Ú¿•%òóµµµ'Μ©¾é¦ésç.⤘Íí……ËSR2>þxݺu¯Mœ8}ΜÂo¾ù¢¬l§^Ÿóä“ÉBov¹é ÀAh ¬ƒ¦TÆ67Õ}·ë£°D1Ä ¾›~¾Ž­Uÿ›:M.‰¸ðO„µn¶Š’dƨÓ\ŒYy2˜½GúßßOp<ýŸÁN.zÿM½>ûèA±NO,ûïR<£Ë"¥Ñ“SNNYHº5¦ƒV¼ÝX_Êq8.!ºìÖ‹·añ6¾@È X–aXÆ—÷[n)ΩóSç€@¦I„*€ššJ‹$,**6-5«´t‡ÑX›Ÿ¿@«MIKͪ¬,OKÏŠý룑ûwÀ®¬ßuùد¡ŠEb¾,\¬Ž’ÆÙ(«X å‹‚š` = ­Vs éÀê1~µ(¼^ÍÊÂtºŒ™º ½ÞàùZÄdjRvœ/¬ŒYœâ“qEQMÓ|>¿»»Ûm™DFFæçç›L¦ÎÎΖ––eårydddxx¸X,.ºl„:ÎA0v`(–Aèõ9))ß¿½bcYŒA­Ì ãl’q´ƒfý¾î•ÅOÐÄNŽr2”‹¥œ åd/+!àé aÉÐ,E0Ž‹Žï l?ÒáDô½K *»¤!ã½~É8(†àü0$ƒÛζ]IQ…ORšaiœî%h»ƒîÅé^‡«×q‚fŽ)Ç™6ïK1ÀN– ˜ L™‹oM¡Pwu™M¦¦Y-µõÍ/îÿŽsñ,e Á¯ àßk—q{ÎõÙíy ø£*U__[ f•5¦]©Šíwò°eà-'æò‰§Î Yšf\4ãâœ\°¾ š¡Îó Eý}çv}t^dX”¿½}³IôÍ& æ.='³‘]iÑL=ç<71ŠÊÊò3.þÌÒífŠ’GûØ8÷5¯`q—Õìö„ˆ²í,ˆeŽoÞ¼Ž±© —)Žòð=:]†!'¯­ÇH¸úæ[Fó‰À¤à¾ÆÄ&¹ ÓqxÉæu:]FT”¦ àžòò=i©Y ¥´‰)îô6Ì×DÍ8–û*yE"‘âmDoxW›ý¼ê2­6ª›j§%‰2“RÜøø³ZÍÚµ‰/©Jòp.C§Ë˜¦Ë,¨¼|ÏÝææ’¤±ƒ¯ëü ‚¤¤$³Ù,‘HFº´¬L&5j·§»»Ûl6wvvÖÖÖb&—ËAkøU»Œ íK1´èâN®XœÁ0¥¸xCí)cD¾ˆÅ ÆAÒvš $#׳Áu517+q˜‹% é]æ¶(ÆL-^'ë$hÉ$ÛŽ“øQÈÏ¿=˜DÿKÒÞ-‚¶sÞ¼ÛaÝOðÚ$?+üEÀK 3,Ó6œ¶9\½Ž»c¯ ’‰/¼¿¿FÒKU$ñõëß XûüÇîÀDEEkúCŽ ýü>"ËyèÞ°EÏþuá†gnM–:Íu‡ŽöêgßÑè{Æ?_ª c/tt+´ !ÕÕÑ‹…kQæ+¦œþó©¥Ï¿ûË-êÎü÷ù/øwmâkÑ@ÿ7×.ëƒ'jiëšH‹—z&«\n`ðxeOšzG*J$2à‰@* Ô‚>{ÉÓXº$Ž_Qu:/ï–¤ôÃ`ÈËÌÌ9}ºJ¡PoÞ¼ÖcFñè^¶ôǯ ç¯Xµê‚ph4ÚÊÊÁHÑéÒï»oÕúõo$5Õ,Å­i6eQщ,Ÿè-àc[hÊ¥ËX²dÕ‹/®¾GnŠŠÖô›JÄé‡6,»ÙV}°uSKø¥Bž—0Ï™±C¸cûãrn7ÜBòpy á´Ï̸wˆ“[“Ûk:NÍ#ÎÃÚÿ¼6ìB¥¸r¦s“x&6Iîd$B¹&"ÅsÏfKÎ D%ÉÙ¥›ßñ]ŠN—aµZZMÍEEkôúœ‚‚Åáp\î»ÑXË™"ùù 9×Jl„ÎÝB²jLÀRˆe¿€÷*¸UeÏüWôÍ&:-Û—€X,U(Ô¦¶fwG¬Ýî{d0LÉË›½÷èöfUE"¾ÄFY/œnôJÇòv–|æï u_¤ÉÔ$™¯ÓeülpëÅMiéys=.L5¬Ê÷£PÄèÑ£KKKËå:sæÌèÑ^¬ÙÈÈÈÈÈÈ~VM`åË|€»§æNº¿É¤ÑhW­z¾¼|Oé·ÛZ5±Û)ÄE€>ýܹŸNK&0.ɰ—Þt\R&¸¹…‹¡p†v4=¥®¤¨Œ‚U‹ƒ,¾ì† mŸ.½@Æi;ÅàÖãvÛaçä ³g- ¤ø²†¥t¯Ãaë9LR'…ƒ-µI18sé®ùý6ÛdjÞ¼y*Y5uÎtžs1TÞÒ©.ÆI³.ëì«ÊÀ:…¬S- ð¯ÒC?ü-k9<²›^(~ûõ'ŸŸ‘xo#R¥O[úòÚYàô=〛 nmm¬mcy¢ð¨„T‚ùJ‚©çýçËg–/Ï‹|‚”e,z¹øü•`†Ë«0g¤%<¡¶¾‘Û@–ÌO€Àk—ç-16Yº,Ù£”À˜§{àR’L}“ÅÜCæ*Q(Ô-m›\&(ÆójÌàSQ}î‰'~€”ˆÅÒÌÌœ5kžÇríÚ11rA¤‹¥,¦Î­ÛŠ–/ýMQ žR|ð©µkñ2sóLUεÐÎM|½@pP ]U¸<$Rú±'ýtTV”"„úí}!iÓ÷ÚeJ©öÖä_Uw|]c)ÛÖP—w¿6<Ûó|'C]?öû«ãU?45ÕæÏºÇÃÈæuõèØÜѱýÝ>ž˜"škŸæ¶ /.ÞXZº£ `±ï²èÔ±ÝÅFnÛá®`ÆmèÓÇ—ÀHY±ü °v[ôú‚À­VsQÑšüüÓ©Y?zœN—Á¥••å55Uyy³§ ^Ýx„¤°òò.ÿnÒësÊË÷p• ¸¥"ÆñxXyùŸŸ|âU«Õ\¹í@—ÎÆñÉv— WÊô×ÔTyFö‹Ï1Ïç¡©¬,/-ÝžMÚ¿—¿Â£:³/Èd²iÓ¦íß¿ŸÏç×ÔÔÈd2÷2^ñ´jüů·ñ@3Þ§qyy³õzCIɧ§¿8ÊŸ`Uh¯ Ö|\)¸™ =¦àÊ5¥q’TçN†×&¹-‘ç,Áƒ3ž–̥¶ö^ó÷ö(aÂÝKƒZ“ƒº»¡·÷GgRÔè!âÓHw^Z×ï*%%Ÿ9ðÞÛæÎç‰0ëu’ÚÉP\ìÅN†r2Åò(†uú³Øn?òéïžõ¨/ø÷êã0å¿§\ÜQP|¾ o›Ÿð`iÓƒ}DÚyülÞ/oÒŒàËÔÚÔäž"‚§¾ùùígý Í÷–eé‹NŸ9—9ú²J9§Ïœs Àï¸Ö¼vpÞ ªOV?V˜ À°À2ÀÂ%“ø-Žú–v•(j‹µr3¹eU)Üú˜ü–NG}sOuC‡^Ÿ@Û`œ>]E)lÚ1Ñ Ò4¥0†b I|#qÓÙòòÝÁÿ\Y­fw-&F»Åj–òÅ3“A(­–M …:HŸÏ`DŠ@(…X ¨ü® 6¾¨ò$bïÒ†+¿ðÑÞæ÷´áã¦ÄßÏjwÔ—_øÈæ´€L޾YŽH$Vª4*eL—¥-lÈ@&ß³P@«U(ÔV«Ù½‡ •• ÕÀUS–¢ˆTi4Z“©Ù½Çj5——ïVŠûÏ—Ü»¬Ýƒ!O"‘Y­æÍ›×åç/Ðës<ÝkV«¹ÕÔܯD²ïJú"…Û°޼¼Ùo¾ùçÞ9VY.ŠL˜¿è2!ÿÃwþØjj.¼s™Á0¥o=™DÙxCžX,--Û¡Ñ$úr¹< ¸˜ž'&SsMM•ÑXË©Ô{Óì¼ãç²bŽ;FÄÑ£GÏŸ?¥Ñhúe ¾wgz{%ÀúR_¡P¹÷=¿,3XƒÄE;a‚ZèÝQM Sæ- ª¬¼WpúR]W‡ñнžž·ÀßÌþÁ .Ð<‹èŽ‚¥C¿û£{1ýOà¿%sß}«vîülÇÛ[¦ÿ,?<&j÷aXšfi†¥iÖÅýO·í xQTÑ7ð–a<£ËNœª›•æÞö<„|2?¯] …ú›’OUaXBôeeyZ:lõ-=õ-½õÍ=b™B§Ë˜4-/à܉DZq°û.ÃóV>ñÄ«>.ã‰"RÅù18cC¡P{Χ 5w4H†–"‘Hƒ—¢ˆTåç/ؼy݃+žÔh´¤m7Ž;X'ÏIõe·ë’Ó=-%S[siéŽU«ž Xb0Á-&S³ÑX«P¨ ÷Ëþ÷Î3ãp8L&Swwwgg§L& KÆÍ°gŠ.­Ù º¡šâ÷Ø3° w`¸+¸¤Ö{¼¹R™!P(Ô+V<*Ÿy?“îÔës ~ª7hÜj°³f ŸÆßÕ?uÐ/Äbiaá²òò=»7çÌ™ ÍÖÖí«Í:f2?#f†@xÃ3ºŒãø‰3ãÆŽ>~âL¿ýÈ’ù Tí2…Bxî¤$hé°÷³+RÇeÜrGFðÏw&ÑÒÕ¹èæ‘•âÆ³Ø«D"µõ‚‹¥H·9­ãp2¤³×%‘„¹O¬2²gœŒÉÔ\TôÆ]6s.¾élm å\þ~ËEEOœ’•^úé0†wƒœé¬íWp‹'¹)ö®Yzù…Àæ´hÃÇMMx@È“XTÖ¦óµ™Y¹m¦F‹¥mÿ¾¯æ<0lƒžy2¾lëõ†ÊÊrn.EøÇ›ß梭B-%§¼|H$R‚À7o^·jeàór·± …šFcmñÖ!1f¼JÑh´‡JJþÌ55Uë‹Ö<¸âÉÌôŒ/Þ}Æfå tõpke.ó×!ã&ÈŠICàoa¼Âeù‡°ÁÁ¶ãþ&ȉÅÒP¹Ü º „*[/´7Ë“Á4\²Ä¿èÊ¡Ñh´¾eñ+Òròòfk4‰›7¯µ´™áâ"#Dk—!Cã5ãÿXÕ©;‘%ó ¨ÚeܪâtgÉÁ–²+€›eŽ´7ž¿V«eݺW-¦Nq|£ÃÕãb©ÎÞÖžCä·. áïåæÍëÆ]¨ÏÅ»6ñ…çãR4©‰oUxÌÞþpÛù—".#´¿Í6Ït.ä>³L‡'¾×.HRĸ¸°—·~¡ÈN ïËQ©cUªØñfööZ¿Úún›©ñô©CYc†Ê{ €]:äåÍÖé2¸Z%ß|^0÷žÐJÑ%§K$R½>'/oöºu1™šCeuètéùù ¥éÚu©¬,×hó&Ï ¾Ù¡¥pEÒ‚lóÁOn)Þ¸vÝ_ —ååÍ–HdýT¥e;JKw. @ÜHTLº.¸a;Ž .}Õª6o%9ka@¦¥¥:u*--íªH¿aÙ¶mwÍÓÒÒ***¼V:!X–µõöÀáC?¢q½ƒuuõ_¢¡¡!66V«ÕúòЩ¬,‡>×ĈØ!—rèС9sæøþ<­¬,/.Þ Ë“¥ˆfÚvœ—6%´~Î'£íliŽJàÖà+.ÞxæÈ*Ò=uî°²üíÑ1pج]»6wò4U ëúÙlÝEpå˜+í­ªÜ+‰ï»ÿi÷ N§k÷·_¯^la·ÍŸ¼½¨p™X,-?ø}IÉg°dÉ*ß“þ}¤xëÆy‹ÅbieUyqñÆPI!Iœ‹B1µ5oÞüö’%+ö]ø(¥¸xc0’~”ü¾´t»B¡6¦h4Ú8'p«Õ\SSUSS¥P¨ î L–_ϱŸ7lÇÁ@’ø÷ßo‰ý×Ȁܷo_}}ýUTà$--múô¾Š£×ìõ÷TqâÅ’Îü“ü! `ÞoµZÊËw›L͉Ô`˜ð*CÀÄ\²d•;'›ìúb2]#– 6œ%£Žò{‘–8ÄÁò]YY“UêK¡áå ‰%ãIñÖV«å¾%+G"[ÆSŠÉÔì¹ðå Iâ§kªjjª¸è5‰DªÑ$j4Z½ÞK°™_ü„ŸcCsÃvqm‚$9¼[2?ÉJ#×μ?T\k=r›Z2^ KñÓã'ùó…¶ãˆk4 ÄH0ÌRPžE¨éW»l„¸º}D\Gܰϱ¶ãˆk4 DÈ ªv14l×7쀼a;ޏ6A@ŒCE—!ÁpèСÇß2gþµ¿ûÛ¯'Nœ8iÒ¤j@ q-ƒ,ÄÂ3#Ô82c@ nd%ƒ@ @ ®?†ÉøG @ ˆkÁ¡C‡®¶@ áI’W[@ ðÃá¸Ú: @ „ <@ qý,@ qýáÅ’ihhhhh¸òª ˆëôˆ¸¡@·q‚†=q½àÝ'«P(®°*âz="n(ÐíFÜ€ a@\x_“ûöZ­Ö+®¸@ˆ t»7 hØ#×Þ-εšššzõA × èqCn7â {âG0ôaλŠÞI ¯ GÄ Å`·Ûh¬3knV§ËÐéÒƒSÍ;'NNI-—‡_•?÷‘cÇ~ÌÊ/KGTŠ\™.ÿðCINN^DD€±[GîOKËŠˆP†V«Áì)×Ým±ZÍvDï,Iâ&S³B¡ŽŒTœ”+)ð—¡,™ÔÔTƒD_|qµç¬õU©8¶3gŽ7µ6P4)ËÒtc3Ò³1 ¸ÁÁ (²©éljjæçÔÕHIÑ Ãûöí«¯¯©vˆ+AZZÚôéÓ;z#ÜÖ¡¯€'žˆáÊü$ ìv÷Ãh¬5kuºŒàL ‘°dºº:‹·%$éV<ð›~/‚üsio¿ðÕöN×W.]üè‰ð®®Î-[‹´#Ü寯º½¥[Ï5ýùòß ¥³ÓTòõ¦ø8Íò‡^9%Ýø>’Ä++Ë++˜LÍ‘P!íéì‘H¤:]†^Ÿ“““ç>³±±.99ð1_UU^SSe4Ö®NˆêîèvQNFk0L1òܶS[[³D" Æö¸b‚ˆ€ñ2÷ô¥úþâ!üÔG?fù¯['Nª8Zš19#}ŽŽbq‡ÓV][Vú¿mógÝ—˜J‡oOuÃoŒIŸ0´%s¦±rwù–ÿÏÞ›Ç7qÜÿŸÙ]I+ɲ$ˇl|_ˆÓ˜#`HS !÷ $Oû$éõ$ù5éÓ¦mš§iš¶ß&i›ƒ´MBh“BC‚Ž˜Ž ‡Å-ÙÆX¾åC²dYÒJ{ÌïalÙ–Œ!%Ù÷Ë/wgç3;3ZÏg?ÇìåCK’Ïö|äS;eãyœÔýÉŽdeåi4Ú~eü|„.A(/ßqÓMËGf‹ºª‹·FÔca<žîC‡¾è{¤¨¨8>þÂ}íØöÞ„$ûÄtOŠîøË»Õ9¹“ÑW^ñù–YÃÜÜ6sªû»âòò§$%õÿ+{ækɵîH˜LùÝü9Ót­»­ëlKKåÑO'_»ö)QŸ±XÊE¯C–R—ª(X¥·n ™Í6[U”MíGr²ñ¯}%11%55½±ñüÖ­ÿúÉO~#žji±WZvÉVùIƒ¸æÃÿòG~BQmÍåCH’úújëɃ²Ûˆ !øñÌG¥[óàSý´Œ…ß~ì±§`ÇŽX64b—ª!ªo™Zåo™/ÄÔc}AÑô…?Ê~¿ï“O6]0ïœ>}´µ±êé¥ç€ ã…oM>WúѺG¾ós‚ £©¹¡¡Öz¼âÇ˾‚6hðÊ‚ÚÒÞ|ä;Ï‘äe—Ñ€è‰~Ú‹jŒÒ Ÿ¿d~ œ±œ>w¼V­Š7ÓuŽªf‡£I®—¥OKKž˜¨LQ„˜ €yˆ=¬lïÞí~6ïÎùñ‰ñMí§¿8êeE+¨£¥ùì±ê^¿'}JzÖôÌÉ+'w·v'déNoÊYæ+$!1*D¶Éˆ/!bJÙAj¹Ql–ÈC;g¯¸‘Å ‡C~ „ ¼ûí¸yþW"åØÉ}ûë¶Êo ÊÉ8šT*gÄѤZIÆÑ„JAªä„‚R>$ƒ¼Ÿü¾—á}À Âßöƒæz—O›áu&„a–×,àèÇbè…Ýu:¬£Ø"×iÏ|-¹Ã“)ÿóýÓƒQgw5øW~ëî°YÆdʯ¨Ø6nA‚1?/‡8¹Ñ˜«&ÓÝí˜ô( ümyh@gÕòi<× ‚[n¯;wìØþn¸±ïmΙ³èÀòS§Ž¥¤¤=zàÙgSwõe°ªÂ·ŒÎÆÉg²±ö˜HggûéÓÇ.\¯›? °,û‡?üâ;ßyRŒìïéqoÛúZ¥Ö wÏ`*6®W'?pÿ÷ûÅÀ¼õÖ‹g¶ÛÆßš«ÐS¤€½mÞXƆÚý?›wÇ2v˜ç”Ä®êpöÁhLGœœñr\H°nkŸ<¡¨°°¨ïÙµkŸZ·î×`Ìë²ûG!ãñtïÛ·kñâ•0qbቇ^|ñ™¢¢âŒŒ±bŸÏ{óÂUëÀ‰ò"*'î[wÞ•)#úË#J¿ß[²ä®®.ÇÑšÏ7ØÏÓ~÷îü–\®èw›¡|ôÏ~199õî»–Éä1 êË`U]~Ëd((Íò¨{LÄåꪬ¬X¸ð’NòþûoMœ8uêÔY—¤?ô?Gó飠ý¬’P¤ûÛDi ƒ+V®v»GlDûCªîPêƒÞ?Ä%ý0b†˜ö µÇNì[ñ_«†©Ø\>vŒùÖ[W÷-àñ¸6n\×éjË[6V®§8å–Ç|¬šLié†q³ÆÅ%jN}q’uãÇ{6”²~ý+ÅÅË&`±”§N2feð˜ÃX°€!ægò‚²²òöîÝ>Z‚$$F‹ÑÉ]œf”çq(ÄP YdkLŸŒ{®PÐ}w|oÏþ-¶“‡ðTgywƒÇ!òSD·ŒPP #€ä1Ï !–…x&Ä•9$&…€ÌÊy‹î¸5bµà+r¶0\põÁÔ˜o=õ#”F|ÃÝ~0FËÙæ«Ö+b{ /}—÷ ×µÿµŸýêí=5Ý(’ò‹îüåëOÍÖEýÇÛo}ý§‹?°þâ5À’­'6®Áp†É”o?v®«Áχ°ÕZi2å÷Uf,–r¨Þëw[ðÆ©…QŠééñlݺÉëíééñ¼ÿþ_ †ä’’U&SîÁƒå¦p1ΠÓ:;Ûß)'hq”Z}0ý—;-ÿüçßÄb))i÷ßÿÒ£Ä`H1RššêŽ×ì•rŽ`ãâãE)o³°p¦ÓÙ9aBA¬‚¶y`Uá[>p|§œ qŒ=ÖÝíܱã#·Ûåru¾ÿþ_ŒÆ17Ý´|Ïží X±â®p1F«Ñh1NDÈ”Jezz´`|¼.>^×ÙÙvä H®¢¹¹»Í CO{‹¥<š™R‡wI5dõSc@«M(.^a±”ŸßsÎ0^§§Æ2ޏìwUU– ï7Œíjîh«v<ñÄ ꋊ1Œßjµ°A6mjŠ,Ž01*à Z°`¹ÇãºrA£È¨å.k$âF±Y “)ØP8¾A†¿h?ð˜SÀ(Ä™Ý4ï¶„Sɕʄ‰MCVÁÄ¢p¨?@s “g*½‰M½_²³r–Nš3h¥xx¼œ 1µuMQ5”ç’n9ˆ±è&/`HœqÛðwûÁ8†Ö&s=væhöÀ`ˆ>=#tíxúÑ7™Çß._3+ºÎÙ{Fu¿ñœ@»ýúÛÇ(°¤ÄŒ„k1܃`2åÛʪV­Z¥¥ï•–¾¢2SZºÁj­€â∠˜n‹Í&CQdRR IRâ­6Áéìܵ듧ŸþÕ;ïüù§?ý­R© F9AóDÇb[âr•J=qâíK«Õ!=j)`$'”!„ÐE)oRSÓGÓ¯ÍCT…BäˆæQl$I&%¥`ŒI’JJJÑjugÏž¬¬üüé§_(!0 „<&›O¸‘ÐÀËûÝæ ˆ’h¦}0°ÙªV}÷¯§§ý|ûOü ï)«ÕÂ0~(,œ½fÍ µÛë¶ÔÆS*“›„ÍV•73Ç\õ¡š’’»újUUp8šiZyë­«‹‹WX­•–OÊ)J.0Äj'BP­6áÊIHŒ"£–»¬p‹«Á@!Lr˜e1Ë]üaû|`1 ²Fåèdý›:y®.ÞðIù†¬¼¤¼¼IC”lé8~ïÙU‹6eõgxØ—÷ù¹Yx÷³pðÀþ¼œŒšsƒ¸Éùÿøæÿan›×¹ë@#žûòÇ?üé{Ïo>Òìå寢ž{õéũު¿=óäö4BJÑ÷é8H0pàÄóK¿‡þ\þ‹ìÏÿ}ñ'ÛÖdPþã?YøtüÛ;~2IÁ·í~é‡Ïp¤#D( SVÿåŸ?šò±;Ûè"ÙdFý%ýÀGDßž µ¨å&þï}³ÓTl^p—°€½{"Ïþ“œ7/óå‡GzCÖ…3_6{ýŸÌ›Ÿ0á!Ø´ãåŸýfÓF?¡[ò‹¿½|w¡–¯üäWT6èŒùß~é·ßŸgˆÊoåëÆ5îÁ0™òW­Z¶Ã„•»½FTcijfsAYÙ‡b­èQ©â–,¹Õn?wæŒuÉ’[1Æ/¿üÜÝw?zݺ_¯]ûdVVÞš5Ox<®ŠŠmÖÖxS -±Ûkf̘ÑÛÓp›҈R‚¾Ö%ó'Õ5û^}õgk×>™’’¾`Áò¢¢EK¹eo9Ãbºåˆ‚"¢Õ&\‰ ‰QdÔr—äÑhÏed¤å4ž­7äëEí…Ç!^ü!³<°è˸ÙÓ–Œ–¸±Yæoy¢Õ1LàMŠ!}í?Òé ÃT7äË{s¾ITcà¦æÀÏ<ù¹Y¶{Äzp°µâLÁÇ¥¿Kð®cÿýú£Ï×Ïm~ê¡§:u÷ß˽øØ«®5›Žü×Dæà¯W»{ À[‚á‚¡ úNüñÿʲ~YþÁÂ$äoµÙåÔõhp–~¯¨Íù¦eÂÿM°É\Q ž»,,‚3{ªòíß=ûŠÿ®âi“&d&È/¬X™‡B¿IŽÝ7Ü?ï;ölº3…à'üåÉ?¬~bïü?nycI&å®;Ý®ÆXðúãš'÷ÝôúŽ·æ'tíúõC߯T¶neÊ7P—¹Ã=Fcz8Ä¿°°ÈívVTl•šV†ó˜ék×>eý0’n¹å^°Z›Lyâ›ø%Knyíµß8-F㱘ø.^NÐ!Bˆi]ååCKZ 5 ±èr)áÛQ«5¢Eåʬ*„@4C…AiË–ÝçU*õÛoÿ)|êÞ{ÉË›pQ .h2Ôˆl2pA"HÄÞ2t¢$šio·×h“´æ;›;‹¦,·XÊÕüÉï. a(2ôòÆŠŠí÷Üó(ô1hÄ”è‚aò8yw‹Óh¼”»Ùjµ3?»›C<ÐSJ·í KQ(”¢ša³U…Ó¸XÐŒX„Ä(2j¹Ë¬Á¡Ô÷D¨‹½m0cú‚½A§É0ÍsËaVŒ–ØN!9˜Í…Xq‹èˆC»ü~_ à3.¨aCrøó`äæLìû«ÓÙ¡TªU*u¿b8š—7½pÙ%ËcJÓwn5)c"aÚ²…@å®üÞÊ7ý¢ž™Çø9¿ä•¦Ä7÷{ß›ñÏß_ÀÆ]ŒÄ¾x@ücŒ”#ƒíL}Áì}ê„ñ1†ÿ^/\¼ñ œ­®?î2çì³ÕõQÞxTÃúŸÇ(ö€HÄÜe—jˆ/~aÓëï¾ùÞß~üz“Õ>ôÓß=»"KƒÌCÜo’÷°'<~kÏM/=¹4“}N¡ξ_ê.þÍwåi7=öíô[7ëY¾LwÕ7ÿã w”Ìž½Èj­t»PTtÓÀíeF€F£½á†90uê¬p07A?üá³—D€AAÐAÄ€]Î0—'=Z°€„’BAáòe}ø6E¦OŸ=²ú2xUdM<kµZ­^ì¾=AÆ%÷°‘}3‚L¶ÑÍ´§ä” ðl0Ô÷å¦Ý^»(÷<êõaÀ@éŒmy¶2+|¶¡¡V\´ìÝ»]L6t3jã qæ\­.£1§¡¡výúWÄSÌ®A>#¨„’ñMϾßùüóß… ¦ÑÕ¢Ôív2L _.µ(Es•ÇãŠU„Äè2j¹ËNæqvñˆ4„ÐÊ’‡ÞxëÓütYuA™Á,'p®c¨¹=Ï¢MÝoÝ5•®Œ6[ð Bï!1ƒºõðð/‡NÓÔd¯©9½rå=#hžÈÁƒŸççO7nb¿ãxÈí5ÎØê9ï8x`ÿÜçöž±ÕE. 5)q£öÏÉ÷_øí†Ïk»9‚à{{È¥Ažímñëæ(c YZ [Q±½Y8*ž³)Ìæ‚a5ÎÀx<æ” Jw£S§3/›­Êåû±íà>ÙíRÒtvQÑ"ñ·Û¹ïð§ê±2¦ƒ€hŒ‚+©×ëW¬(ùûßÿ ­mͱ ’]F-wYµoògqnHâââiÆxêÝ^¹©iJO§àæÊåË\c'˜ä6,Ã*'˜q¼#÷¢H–U` ì_ƃ̹sg'NœÚïxmíÙ¬¬ìp–ÌaÎ éô™shBnøó …Œa¸P[ðì›?úSëCïíYoŽ'ƒ§·âጠMªÚçð°X  ØÝÞËg`|13"ÆXÀ¤œàC¬ ïs3B,€vò}¿~û¾_³®“ÿúñšŸünöÎßÍŠ9jõ?žˆÛkœ>snÒ„Ü=ÿõô.ÅèÃeˆAzF–4óîµ7¼ñôñffmú`óðòIb ?AÀ‘'¼.Cí9çðãlÍ%A„6=!)óå²ßL»Ì ‹…ëOñ¼R®ÅpÂÙ³UËž‡~ Þ}÷e1yíÚ§Äm1à JK7Øí5O<ñÂе ÏóÇŽí›9³xਫ਼žîCw3çcšÊƒÞ ßÚõé¦x]â¬Ù7 [s¬—××W )±îXâõzØéó÷{} w äv–mJ0g̈°cOÛëucŠIJ_B!æøñƒâJ·½½=ÇŽíg?µêxŸ;¸wï.aè`‰pk±|>o^¯ïžžîJËî^_ÇÇn©DÎìèn/Ûù/61b«"^Î0~ˆÝRIx|àr{†¸Üívuu9ÂÉÍFÌÓ^§3œm8Êc..1Îf« /â go|_n’37Éåê•o©_8õR7ºÝNb‹ƒ`S¤¤ o¥Ôj¸d‚25ÕèhTÀdÊßø~}n’kŒ®'@™\X8[<;wnV¦“qÉ`7;¼3ü ‚+™••±m[™ÉdúÁ~›kŒU„Äè2j¹Ëx§o›ÕßÙŒ†fº)1®+5ëÇ€.äôÕÛb‚aǨÉX,{“’R¢Ôd¢ ?õ忸¡J^p´¹`W/«LÍNS˜í:ø÷-¡° wû<üÔûû¾;ñæ$Þþïõ•>!ãâ«nQ‘QŒ™–â¨8Üö`æ¡qÛ{û=ü½ÆÓ°g÷„9“S•j½^-“×ß:}8ÛòüÔ—5=#þG¯`GDßža›·þe‡P´dþ¤ Ûvèý·ðcŸI— Gž‡øòIÿÅXˆ8áió=ߊ{è·¯ízí‰Ec(÷ùÓ†Éãtãï[¡Zû›7¿òøü14×]â´/oÎä„ožIæZ ÷`Øí5®–wß}.æSccV­Z ¢2cµV6µÖ€ÛíŠ5è_Äáh.ýè/$‰"j2^¯çTå®bû©1P}á »úØÉñ³¢Ñdb½Üélÿçºyñ3fGŸ)Ëçóž²V,È«ÉÈ(Æ@§ãÌ™Öé5™Pˆùë_{CaÑ’oÝíÛ´>Øí5¥ÿú«A—0˜&sèàÖY¦Æ9YêªlÄ®s5vT“&ÓÜ\¿eÓ[´LQ“ñz=G­ê¼*ª0€@ãùÒÙJ×gE£É„/WäCP2¹¿tnìrŽ ýãž2¾pùªÕsp M4ÓÞdÊß¶ãóÚ4­ÍRµtéâñ¬¬¼’åÿõ~…ÑívÒ´²¯‚ÑÐPëöuɃl+½³¥Ñ˜ÞÝÒ­ËŠ÷úÝa§/QÊkeñ G«G[T´(ܰ٪¨ ˜Ã¡P§p…‚rß}¼ôÒKç…^Ðëã—<2µ  3&A£È¨å.ƒîX Ç‚ŸwRz!$‘ˆ àx9få‚w^ûö£ú•Ɉ8b©2ë¸Uã«u|ó$+½‚üe˜Ë ãÍq¬ßïs:;úôxÜ èwÆïruñüež~¿O"¹ÖË{c|é%«|£OÝøýŸÞ²DŸ¨ÕåNŸfT`cõŒ§_^ûì³·-ÿ³A›0~Ú¬Ä6~Õ `ȼýgWþïmKÞIJLŸ9gFb£XÀ}òýgžyªÅ+ªôYþßÿNS×á:}8FsËó¯‘MfÐÂ#KfÕ§gB‡Ïüñ§o?ÓÚ‹ÐfÏ}è÷/Þ•Š°€™‡—Or«àŽ8áÅ”üå7Âs¿Z5ýñ ¡»ä'¯ÿ&?^1ùûý=ù/Þ9ó¿{™Î4ó–ÿï·Eþæ…É\“ỽ¦pEJó©îöZ_ß+3M­µ…+RìÇ<6›5š%l_A8xàÓƒûwÌÉi:Òœ/nPÓ§[ű‹Zl}6Æ%Ô6v"ðÀË¿;9¢¸ÆÆºÜÆjÙh;shÕíÆÇG—¯TàÅÎ÷=r¶-ñãÓ=¥ôööèIÙ³®öôª{ËÌŒ6Z‰ç¹òÏ>:yxoQwóQ¼wïvD!1Ÿ?Bz{½J9káÙ~ùÌíö5‚Àïû|ÛáŸÝèj:˜šQŠ×ë!䂯|ÙKÏK&œŠRÈUäÀËýGüìºùŸ··'¢â«ö¿ÙP»êîGGàÊ8ì´×jâTZÇù¶„,}ÍþšC‡>Ÿ5K ꃂ‚¢ˆJ`EÅv"‡á0mq……ÑÆ>Î>R·G“©Jž`¨¨Ø¾fÍ}¥<ÿüw‹‹—‡•%8tèóž3! Z­:1ËÏЂúqãó^zéÂçîîžMØ[¶A}Ûò%Ñ ’EF-wr_é•Á‡„…‰Õ3½”R¦£!N®ö„²™sr;`5¡%\Ýòxo¹[•;ø|ƒ,zÉ΀²©ÍÎŽÜÜþ,}ééq×Ôœ ü}†B¡¦¦ú­[ÿÕ¯pccýîÝÛäò˶Xnj²ç䌋ÐòÑzyOOû¿=e®4.}nóÒK§ŸŒ!nÊýqë…þ°€“²sÏ……½YöØÅó?û`&ýð¯Ÿþð²f ™A_QG.üM²ÉD.<¢dV}{%Ìyüsï_­yâ~“â—¬?ºD<y òô’§ß.yúÒqc ŒÅ?x£øÒžb ÃÞð׎k0Üq»]^¿+Îa.6òêõúþÞ&¤®H‰3ÈMJ»½&&MÆéì(ýø š¯¦ÄŠÍbe ñ@$  ~ ƒxô#[Þh/Ìð€/ý$ÜØ÷”ŒÎ=_:Þz³eIÉý#ÎÇÞÀ¡] pÀóÀó ˆÿr$ÏÏ úov·œîvlZÿò”ó.¾¢†Ù_±³³íã÷_7´ÿߦӌRE¶’x[=–É0IaJ&2 )Q,&ðô˜ËÕ¹åƒ×T­õ?n¬Â2okd2 (,“aB†I(Š‘1' pÇÊÏÇ‹8–à9ÄqžËbƒózÚ'zÿÜðê” .¹$£uæˆrÚ/ß½ï#mfÁ¸Åye[>4™ò†XÍÿûßìÝgP±{HºSo6G«(UTlëíêM*Ð×|Rÿïo¸g˜ööæ²²5  þ/É• —VrÄ‚æÌ™«Õj=Oøˆ§Ó·~ý–PHùúë¯G/NBbTµÜe©Cj2#Ýl!¤“µŸHrjè¦Ä¸ó2mLºx¤”“cLr›IV=SS™ÌL®= ¼âdÚØ‹·¤ëR†É‰™TX8£_Ä¿ÇÓýÉ'›zè±~…ÿþ÷u+WÞÝÏbëÖMM¤Û»<}ÄWI,c1¬MæºÖQìˆøˆ¸N{ækÉ5îHØí5ºÔ ;þ™¦kOÖþî»/?üðS¢o¸3fÖ4-G€.•®:4hÚɰlhݺâä=O­ø @è¶év h @Ѐ.~ òͶá+Œ’¸m B0 B0B¼xBS¼¼÷Ÿ[6¨ÕÚ‡gèHê6m„1d!^üÌ@ˆ€I·éœå9AðqÒÁo½õ¢¾×ýíšJÓj6XÒã9 ä4 H(rY A52#4^²lèÍ7çëyêì>¤  JzDÈi D) Ë ª†}iIܪÓ\èŸX>t¡ÓB Œxž9gyNzƒ¡{¬ÑLû‚‚"‹¥Ü~´!mjŠéÆŒuë^,)¹+l™  JK7ØÚŽ¡¹=0×-6Ö?ŒB¡,*ZdÙ·Û´45s‰ñìgǘMU½æL¦üp€Ê¡CŸ—•}¨œÎ#ï?C$)3bòZH(’ËåS¦LØ·¯2|pÅŠE/¾øjFFT¹›%$F—QË]6¶ýªh2ƒ¡ÿN÷a¸ü/2#\W!„fU’$£wƒÆÃ6ÛWaô¶<¿N‡u{ —r—]Ÿ=óµäj÷`Äܲ¶ §» öòfsAßÔ‘EE‹t:ƒÝ^s`C6U¡K¥1²Ûk£-“É¿ûÝ_”n~ý½øYVDÈ÷צ’aDa$ØD @a zü8t’y–ý Âj{õÕŸ‰_11•ÙΛm¶*O¨K½ˆC:ži ˆzͪµƒšnF HÔ—l¶*›­*1í2ç”@$5Fâ«bÔr—¥u_ňÿkL|¼îŽ;xüþû¿C-×gºÞ¯'£¸åùu:¬£½é»H¿Üe×eÏ|-¹Ã »½F§Ë0É7ÍÍ–pqÓÌåÁ` ¾¾Æf«òP56›•¦£M—¨×'®ù¯Ÿïß·ý÷;ãæå5jÈž1óf„€!"B¡7BÛ¢¬3zRE'/ú0€„ˆ›šÎ·ÕÛY•J©MÿýØcÑÇÉD–¢ŒSÎ\Œ± îŽýðöö;º×!£mÚ”»î}<Ê8™¤¤ÔG¾ÿË/Ê?y©R3³»õl²iÆÜ¥ÊyݨjLjۜ´æ±ŸWîßùû õìîæ“ cæ,X1°îq¡3»G,e0Z©)ŠpS½½=~æ äv]ò=÷}7=}ìÀ2Ñ0ì´OII_»öÉõë_ñ÷ø S4¦UFO£÷tûþãÛ?Ç€1%IÌ!eˆg1ì×ecG¶-¬(¥iW{Ò<~¦’õ±ç›=|H`1Lj1aæÕi¼€…àвk×®}rd+ÑÊœ¢‚MoP}kñ7îܳ§ü·¿ýíü㈓¸BF-wYZѣج¾dKÓ¥x‚ሞlã BN‚B,…Xº©ð>à),fFX ¬As4Ú¡+W©TÃn…94C²JÕÿ/qnnî¿·ükÚôØòWJ\%‚LÐ×ÛeáãÇ,¹¹¹O]¿Ã:Z= 2ðqýöÌ×’«=ܱÛkÂÌv{Í‹èt†ÂÂÙn·Óáhzׯ¾1ÁÊܼ)o^§–Ýxã²eZZì§*?û$wF_­G®ˆÞ¢îFÄÀË•JõìH¹ËŽý¢ìÓÓ‹Ý:{Î’èE@o}x¢0¬I"€n§;ÔÕå8tèó@á‚ÇnyP¡ £—B’äÂÅ·åO˜ºeÓ_â5ñ³f,ãp4?²sëÉ|ÔÇ‘¡«Wýv/AÌ¿,Ï\ðñÆuqE”ÒÒb?||÷äeZÇʨ¥„||„Ë•ªˆâººû÷—‘³?¶ìn™L>°ÀÐÄ´•™ÒÒ ç·µè&©i•JqX`…‡C¬À²!ž·ÑPGÝpsqñòäR…B¹ví“Ûm-Ë—)ó:ËsAxx ¡‚µ)R”Y«Ö®qü}4‚­tRŠ®xþì_þòw&ÓÔ—^z饗^š2eʲe¾’WÔÝÝÝïP]]]JJJzzzl¹Ë$.gÿþýçÎûª[!3¹¹¹óæÍìì7aX‡îäñM虯%#î~ØíµÃª.C`2E°á Çq‡}>wn„½Êz{{ªª <®Ñh§L™9lͱ^~îܽ>1Ö7b>Ÿ÷äɈRô“&MxÜív¹\ÙÙæ˜¤ô…ç9«Õ2}z„±îíí9rdïÀã:aêÔ91Iþر3fDØ)ûKOÛçëIMÍŒ¢ÕÙB¨ªÊRQ±ÝãsÊtˆLÂæùÀ{î¢Ìæ‚¢¢E£²qdCC­ÅRn³UQI@ja ïF|©S'/u ‘ Ï<ó3±äƒ>¸}ûö7ß|ãÞ{ïÑÑA“Ñ–*i2‘ß(¤á–ø2âiïñ¸ìö·Û)þj2åé#³Ã A0p8šÃot:ƒÉ”}ÑÔÓÓãñx¤P‰¯„ÈšŒHL¹Ë$$$¾iHˆoÒpK|‘¦½„Ä8ý3€õ#œ˜HBBBb Ò#â…4Üß@¤i/!ñŸÌP6œ $$$†DzD|£†[âˆ4í%$þ“F“‘ødï2 ‰ÿ@$MFBBBBBBBBBBâúCÒd$$$$$$$$$$$®?¨#GŽ|Õmˆ  ¿ê6HHHHHHHHHHHHÄå÷û¿ê6HHHHHHHHHHHHĆ'#!!!!!!!!!!qý!i2×4™ººººººkß ‰(‰l“IIIÑét׸)Q‚º»»Õ·Û}ÍÛ#!!!!!!!!!!!1ép4Ùíµ}êt Fc†Ù\ Ó&Œ¸æÁp{\6[•ÍV¥Ó%˜Í…æqSF]„ˆ­ú¤Ý^c³UéfsÁxsÁ•tÔ8Ú›­V‹ÃÑLÓÊÂÂÙWNg[[›ÇãQ©T©©©F£ñ* [õÉÒÒ÷&@ÓÊ{ï}Ì”•wõd}=gmU6[ÃÜn'èt.ÁdÊ¿’¹çp8Äç†J¥šG®¾¤? „Äÿc ¸OyOó©¢ÂÂâËcm¥­ú¤ÕZyAkŠç žCjLrŠQˆâÝÀ´³‹Æô¢¢E…E±Ö?q¹o³U¹½  "ƒ½rpÓ4g6-2¦¤_¹°UŸ´Ù¬6[M«Ìæ³¹Àáh¶Z+Žf³¹`5Á¹ÝN³¹`•4‡ÃÑÖÖÖÖÖFQTRRRrr²×ëmmme&55uÔUqEnµZ¼ZGÁ¼é§*ª |FIÉ]£¢Ö†µ>»½L¦|£1ÝdÊ¿zê_D‚ÁŒ–f >-ûÐjµ˜ÍâÑ´&žEE‹FðÒÁáp;v,//O©T655…B¡âââQi³„„„„„„„Ä@†Òd`87³_>ÿÝ‚{ÿ½µI.0ð02Z©O÷4Ÿ„æ}k×<}ûlÕ'ËÊ>ßXÈ`ˆŒM©Õ²xšRÓ”JF((Bt±_º\µn£1}ÕªÕ#Ó4ì µ¢ÆíïM餒à•c¯Ü à Ðé fsAaaщ‹oÑ£Ó g›Lyb=ö†Z»½Æn¯µÛk@ÉC€¤iå•ha†a:áÞ{í×`·ÇeµVZ­†ñXIã8®««KT`hš6 iii¦oŸÏ×ØØØÙÙÉq\jjjvv¶V«ÁõmyEÅ6«Õ"þšuCæ²’;w}öïºÃu`2å/±qÆV}Òb)Q{€°J#š³F6ú# bïv‹¥|dÚE?Dã•Ù\P\¼b0eÏÞP[Q±Ýívœ-C³k×®œœœÌÌL¹\Î0Ìþýû'L˜pUmqßd"h2Ã:•…5ÇéOÙ–£ IC”liiH¹á>R®äϽ&co¨]¿þ0a, À¡‡©„øYrý½ŠÒ()µœTR„ŒÄƒà÷ôÚvÖ >XµjMLKÿ²›­ÖJFèƒHÅ]Ò^¼r‘tŠLžL’‰+„òKJî´Z-Vk¥hâˆ~Q»qÓ[¢ Yaál³¹@I+ëí¢öRãp4#­€ ,6„°!~Bw2wíÚ'ûj……³£\‹‚€À@‰’¸N¯Óì§}W×TÔ*Ü &)¦;:|øp{{»Z­NKKKIIQ*•AA~¿ŸeY­V+‚ ‚Çãimmíêê""555##c*µÊRVö!)Wι¥½©ºñÜ ©´j_W/ò'ÍñzœmMÕEE‹J–ÞSÍŽöæ²²Ív{ M+‹ŠÎî»â›€ú*9&S¾hÖ“jLEçÀWÿøsåD¢×ác[ð•è3b§EùÕ°ú¼¢b[Lߣ­[·Î›7/))I.—÷öö;v,>>~ܸq}Ëx<Žã@«ÕJ¾gWBä•„˜»,šˆ„ÀßqneÉ3g.¢XYÙG'[[UI¹15Îb)‹fxÅ_ DøtæíÖ©Ò<&¤¸ Ó4rM)e„0¯2ÄÝp·æìÛÆë{ì§Ñ¿Q¶XÊ@B ·Æa¿ŒÀ”ÊHÇå¨âRUt‚cÌcŽ‚þ¿ãP“1%½dé……E¥¥,–r‹¥ü—Ͻ ÑGÎhLw»7®s8š‰D^–„dÙ¤¾ˆ$䔀)^ B<’Ýn§N›P¼`¹Ù\PV¶ÙjµX­–˜‰àv5¸H†<>g›£Ù”•wÉ}Îß:åù 9ÚÝ1ÝQ{{;h4š°#BGGÇùóç}>èõú´´´ôô c¡Õj5Ñh¬«««¯¯¯¯¯_¹re4‚ÂX«,¥¥²'̹qÙÃ'+·º;›Ö|ÿ÷®Ž&„@¡Pa€þúÜ<×ÒP]¹g#ÃøWݺ:úÊm¶*‡£©¸x¹¨0¸=.Ë¡ÏÆ4­2™ò Š ŠÄ*«µRì«~•¬ZµzT¼Å›õqžÔ¼Lu¶"àõ<¸sdöѼ¹ví“zÁZeq»FcÆZJѬ…4­,-}oíÚ'£ü¥¤¤477k4Žãü~WWW~~¾xÊétÖÕÕµ··“$)*®.—‹¦éÔÔÔœœ¥òª„„IHHHHHH|½‰ ÉäääDŸ‚YA¢„´ü²²\®®!ŠíÝûiÆ ·“$âbiÃÀÀŠŸ‘‹î=3.ÒŒ Äe„4ylï öãý3o™Ÿš 'i‘œÀù…dão2sÁÓ7¾ÕÏþ04h‚7ipS<’AÒœø“ž¦T2‚¦€1/°!!(ÓÑmŒ½lçf›­J´“¯Ø¸q]ô÷õÄ/\XþR‚l^0.UM“*I“„ !„Å¡Ï8ŸG†7nzËáh³¹ ¤äÎuë^Œ^ç­qС€±sÇÊs…úO›àÕ?þÜív‚!€Ò|„ŠÃ7-4)ÀMSj’Î¥x:ˆ%•CQQ‘Ýnß¿ZZÇqZ­699Ù`0@WWWuuuMMMzzº^¯ïè蕃Á`2™ªªbKa«>YZºaÚü»'ݰ8Ðë°£¥þtVΤY‹î©(ßd6Do  ÇÄÓ´²°°(;$ÆY,奥¬VK8çê¥Jû´ìCŽf´YIœ ”'q ÓîÝ{ê«ÕšñiÙ‡fsyÜ”õェLÊ›µd­JFæÜr`ÛŸWl¯hÖB›­ªbïöh¾GZ­vÉ’%,ËΜ9Ó`0x<ž¤¦¦Îš5k /™V«:ujvvö‰'ü~ÿÔ©S‡!!!!!!!!f?õaÝÌäRP(wâ…ŒP¨ß‚’pˆÇ!N`8̰E¢Áꑈ"ÚUñc&™v;$+ùœ‡>ðÕþM9ñ~bÂêÏþýQÉjê ³ƒ|±|(HÒ´R™4Ñ`‰Z“¡ie0H"JV—eÌž™Ð}¶×VVÓ–Ü1núøÎ¦ö–sÍlMÉ6Ž»1¿ålkßVö†ZÎë錱];YÇ5íÝíàÎ,Èðvõvï¤2½I›¼,ÑiwÒÃKð6G³z%Ø+GšdLÊÒMˆ¯9r¶ËÚ]Q±@Ç@‡Ütö”ܱ«rz™/äõ…zzCñÚXïˆ µZ­ÕjyžW(ÕÕÕ­­­yyymmmcFCQ”ÑhÌÎÎã8„Èd²è¥TZÊyf.^ërœïpœ9k­7å†ÖÆêqæ)H„@À¸®úxRjꑃŸ¤gN,˜sKC퉊Ší÷Þóh4"íÍë׿Â0¢pX¼8Ä¢§ßì¢E•–r‹¥|ýúWL¦ü¢¢EW)•™µÊrêÌ‘‰÷˜1ðÏ’‰‘&åðJT0°Z-O<ñØí5KþCŠF– ¢<.êÍÍÖmábgmUáŒÌá\ÌÅÅËKK7Dù=¢(*;;[ü80yò䌌Œ!.ÑjµóæÍÛ¿ÿ‰'$eFBBBBBB"z†Òd¢q3“HF¢³G¶Q2¦fš'Lwu4ž³€iEKh™òÔÑ>¿ ”Y“QDlšŒÉ”g?tV1• hEø ò‡|®ÌY÷»êwœ|'iúí¬ÇÊvü17kb|’6HøIBF ’@dÒÄljN[õÉhšFcFC¨<¨8ÞÕcãSŠ2¦ÌœÞ`m8Zvx¬9wÞ’E)¹Æëó±oWï¥tj˺Ÿ¦•nK§M0Ó{º5&m|aÂÄ™G›ëŽœËœ7åÞiйíé u3® èZ62 cºNÕw»œÝç=âž!âY4¡ 7ÅçLÉ‹OÑB½#–á I2===77·­­íøñã™™™S§N%Âçó?ž¢¨paAÄÏÑcµZ2ÇÏVÐ*og Ⱥyž•«©3'v´žSç€\¡jiªÓ&ë»ZÛž#Ê8wÙ»b·+Ân¯¥iUxS1o«~Ъ «V­6eåõÕgDÇB£1¦UáJ®\½±VY¶îxüÊ|JA²BM³ÀŸ—>0{تÎÚªúî¶D  ¤ Iˆº$@XS÷‰Z]0å†úšÍÕPuf/Xu`÷Æ’¥w”íüWnáMdl«V0› **¶.™Ê t}Ù"¬ßÿ6° Ï¥JÊM¼¬õÐ[Y7~Ï8sí_ÿöç{W?¤4Ðæ1ÆcBŽz™ÃÑÓš©Ø`7'' J¥‘ë3Ç®çÊ;îæ1Ïp>à1«KÖ;¾¡‚a4fˆqüFcFý¹Ó4¥VÉ4q2m†IÖÓê]¸l+„ü¬ð˜SiÕLóÈ<ò€¦•k×>iµZ,–rÇ™v³¹à¶GŠŒ)éö†Z«Õ‚RüHÁ‡wûq6;édùȉ„u1AhµZ­V;nÜ8†a|>Ÿh‡Ñjµ¢Ó÷’h·au»™“ õg*­5=Ý­qñº8Þ¨ÓÍœY,§‰€Ëív¹:P®>V¥RÔŸ=QAÊ”PQ±-šÌoáè(Û¹ùˆ­$êø8›£:¦{‰pwÆôÐaVN(¤RIÅqP„LO§0¼b…Ãû5‰šãö“#­?ƒa%KïAÓJ¨Ídd’gÙÞÐÆÙß»ÔM؃ š¦½^¯^¯¿p-Æ,Ë2  ÅV,ˆB¡P(4#L˜õë_‘eá„ ÚÓ•[ßóSΤC»ÿ¡¢ã”„Þ”=á¢hÀqm^þ”î7L(œ§7–nøu¼YÙ:cÛXõ¿?þC”Ý—ÅR>f•>˘o S1ºé-µPÝ×QM¡P^ÈQÓk•¥¢b;¨ùé÷L§âȾá1}Á,„ÎÅDåñÅ0ãÅ «V­^¿þ•ïÿ*ÅTÐRS©U«¯ÞRºÉt&䯧kr•©¡è uÓæ†_«x³FczßTxÑPWW—““3XžeÇsúôi—Ë$IæääŒ7Îh4ž:uJ2ËHHHHHHHDÉ•æ.C É”JøÄá±cÇ“J“Ui·ÀÌ9KIå™§mÙúaVna8@L/_¿þ¶™fl®úÔ”7Õ0&¿»­Æ–7iÁjØ»¡Ãq.qÜ‚fË;ÆyOt´æ”ÿ»lÚŠé ïñ–bJˆU"Ò„|Õ~ˆ!DA ‚¦TÀÁ… „â“â& ®dÏSV^À$Š@”¨8‘ˆÒÈõ†ô‰¿Ê2BNDé=FcÆ}÷>zÖVUQ±½ÙYr|p&1|6ÐÌ2ç0mŒöÖT*•¸CˆH(b†Áçó‰š Ë²ã~×z½^•JQÀ0/NQgüãÌ;ÚÄtš"’3e$šP0ON<ŽÇcÄcœ7%Äãªãû•jmBrÏss—,ÑÑIÿüÝ{QÞ¸ÝNYÒëST™YñfsP÷¸NÛ±­éÃZe ƒ*•šeCžžî ÛnR8)'Ùh6r ǼÀñÇa–ãY³œÀ±Ï Ø çfM”ËNg»Á2´ »½F§»‡Z§Mxü±ŸŠv¤–ß-š+m¶*j1¯§“RTéš|%¥î ´°BÈ“í²m¯ÎÀ0±Ù»ºº&Ožñ”˜@¥R¥§§Så÷ûÏŸ?/FügffvuuIšŒ„„„„„„D4\iî2)T‹oÿ¾RF(eL˜8½`Ê `yáðm÷þ0À Vð‡bV*À”•g2å;Ž4Ü9Éqâ˶³ã§Þ¼gÓ ºŒ)(%süü‡‚Ÿ½ò¹”úôîê]²ìeÍG_K¨>§ÊP8ÃxSÚç‹(ÙîWÜX/ð<æ,øØN`9!$þ*`AmP‹³€ÃÑ<2o"£1½§µGgJ0/`AÀ<Ãù8!Ä œ€yó°2A!z£€Ý^c¥ô¾¢1ÁjµxµHÅ…5Œ–Ï;Ô!]†.-VA¢½%--­¾¾Þáp$&&²,ËqœÏçã8ŽeY¯×Ëq\Ø÷L¼„ã¸(5hªµwËÜ€10ŒßÙÑȇÇ,ŸL»‘P©€Ç€ Ng§õø>OwWsƒÍ– 5ç;¨ö˜îH„@‰H9©à’@$#´) Äjµt)%1h4²DÙØÜLЦ0Æ~¶GÀ­R©ŒF£Z­¦(ŠeY•Je·Û333m6Û$JHHHHHH|¹ÒÜeƒ×ÓU¾û=1-kÙòŽÙWu|?Ìš³4{ÜÔ¾û’€1¡øöÿ¯ÿ ùèXµjõ«¯þ¬õ¸£pyÁ±-[—Üõ£IE+ÏU¾/»éA¥*cúíG?z.gÑ÷ë÷½MjòBiKª÷mʹ5A½®w0çœaPqžN1+äýAžá1×tñ˜ò¾ `ù '„™ã¢&Ã0þä.qÌÎÖP&äý ïç0Ûì`ù`€ë òVqBˆT}Cú­JG!$””Ü5p•a®º¨œÄÇÇÏ;×jµ¶¶¶ªÕjÑ&ãóù<L&?~¼Á`è«ÌDOIÉ]Vk¥ÍQ«ŒKؾþ§qñ†nß9½I_yäC0cöRC8iÞ'ÿµ‹«ÓŒÕ?´Õvò€Jc¨-oP«T%%wE/Q§3°ØÝíê¢[B\Gç—.³¹ ÖÆÆØ™&MšZÀÆ!„€@Ht“¨Ürl2!V†ðò¬—›uóB™ÀŒþ᥄C³+@ÓJÎçeâ~Öë ´ùØoÈà|Aï…¯ÛíŒiâùý~qûˈ¸\®ÌÌLµZ­×ëår¹¨ëj4š®®®ÄÄÄÁ®’èÇ•æ.ãìõt‘<3sæü#'‡xÜåìL4$@s‹=#·°©Áöýïýìµ×_àÌp.Š6¡¤ä®²²“3ŒùE¹{?yã–Õ¿ð÷tÙÊ~—9ëþ¸ä¼¸äÜÏ•4nA[ÓA_úí,ÊWž¬SLÀ~Ö1éÓ° ëéô0œD$Ãù8õ„œ ! p>†÷ù€"A.îû~%дÊÛé p½’ùY?'°ÝL'° çó±=®7ÈŽÕ±g nËn¯ó­¹ÝN·ÛY±w»ø†y¡-aý$>>~Þ¼y‹¥««‹ ˆææf…B1iÒ¤¬¬,Ñ#a ³ÙÍZh6¼úêϦ-}Ì×Ý\²<57mYÉ»?ÛZ[}œaü]ÌÄ…ÁÓÝ9®xÂÌIÅÿêx/#sNNÁ¢ÿŸ½ûŽo³:þ¼C[¶d[ÞÛò¶Û™Î„ÁH #Ð^è¥ÐÍèm{]ÐövÜŽ´½Ü ”R-4FdHb NB'Îð¶¼%[ÓÚzÇùýñ:Žãȶì8‹<ßO?©üê¼çY2zŸ÷œçœ­Ï?¾xÕÝEŒB¯‹­¬\úù¾*qöYGj/ÒSkñÖswo8ŸRW²¦æ3“©aØ{´fͶEQ´Œ’òËhz €ó‘Œâ˜`HRnÖÛÄW–ß”ŸÆ‹‘Žr*•ªÁ¨;¬Â²š¦}ÅÌj81ÈÒrOÈeõw¹ë‚ååóÀlÁ@ ˲,Ë*•JµZ …W´C!„ŠÜ¥®]Æ‹DÁnï;|ø`•Ažð"ij:SçyvízK*9þñ*g/1™Nl?±ðË‹G—!_Ÿ¿ÈrjWÐࣔÑîf?—ð>bJÊÿ˜š÷X=>Î~ÞÇ‹œ+h%„ðb((øý¼7 ø+ÔÕˆp‡õa¤ÝÆ=Ô‚'ä"ü\Cö€E$B÷ûy—ë÷øú91d25L,'§®îDMÍg&Sc àËÊÊ1ê–ÕÀ "!$¡‰Ä~ƒÁ‰ô#MÓóçÏ?zô¨ÙlŒa.6ô”Hèu±z}\gýg¥óï ¸íç§§ë9{r1ž ¤P†Ð×Ù{F~ÜïöRó- áV<Õ‡öUWï•V[^qË]J¥ªúã½]Bá ))mÆoHÛû˜Ú·n}E¬(,,6(a[EÉh9M± Å0KS, CÑÅP@BD"ð"!>@|T°Á[]aÌ,‰AŠ¢BTDS¿ ËêêN .Èç¶þt:íJ¥jñâÕ‹ßZ÷Ü ×Y›PØàZŠ ðWíŠZüè­PWwbÍš"iK¢Óé¤lþ°†ñx°åÓʵsL5¦ª·þ;}ubþ"Oð|„¤ }úÔú~ƒHzäÒÜ¥ïŽKKWù 씚gíèÓ¥†‚Ï‹\ÈÆ»ÉÑu´GÍFϯ\-]¿šÚwíÚb6wFž€1ÐPõ^éÚZ¯³uÚB)A^äì çál§]®&OFjÞí_þê྄Ò@ä·Æ×ÝûÈÖw_©©©%¯#+3oÃúÇLmuu'’’ÒŠî-k55VU½o6wnØðx„ Íš5ëøñãœ6mštå*eÿ_<ü2ŒÏçóz½‘güÀœÊ¥ÕÕ{k«^™vË£sîxüÌ-ç—kbC¼HQ}.’IÎ.€¹«¿®Mk¬Ùcín¸ëöÿaY™y?öË}UÛ««÷nÚÔ••_^^)}ŠêêOÖÕÕÔÔT@eåÒ%‹W_Êâu ‘QJ€"EhJàAB¡@_³Õgó——͉KHàÄHDB‘ˆ"ÑR(Tåå•»vm‘6[:ûl¶[ïüqA‚²¯ xKÛIi×ËǾû‹ºú“fs$U¤î´k×–Å‹#Zîy¨äää–––ŠŠ ày~ß¾}Ò:ÝÍÍÍË—/÷ù|&“)**Цi¿ß/¼yó §§Gz€B!4¦K]»,È‹.sccÕ ±±ñAJ±tí“gØÝðdNYš[vÓŽW‘k,jj>»pÃ3—É€B¡Ú°áñM›6~öÖÁ)+K4ɪ³{Þëj©ÑeÍÒ¥N8¿ßÑe˜ ð>KM­ªÈïÄÀŠ[îJJJÛºõÈršï·ºiƒÈs †Z›¬gœ)¹«–Ý7˜ÿ`jk¬®ÞëtÚ*+—V”#Cjè¹ç~µfÍIIiÍÖÏÅX? ÉBÒþq—·5T^^¹ø›·öÜÔÖXUµ=ð-^¼ºh<éækîx êãí›6m\³fý(ÛƒîãîtÙëêjÌæÎòòÊäñäETTT´´´;v,///%%e0ŒiæaÁŒÝnooo÷xú¨°°P¥Rµ··«ÕêéÓ§³,[UUår¹\™L–‘‘Á²l}}½´›êxÛB!„ÐéR×. ñ$Ä‹©©™+V¬}íí×}!‘ÄY³@«ÍëçDøÖ·~òØã÷x‘&š(sNRbÚãýò¥M¿þyÞòìÒ{ó-õ}½§¶tz y Liôóˆ–Aƒ*o[:®úËË*“’Ò6mÚ=~[ú¸à*hR2òWÝ~{x)´0›;*+—~i͸1?ØR©æ´BŸjÐÈÚ<]ÙâdžÇ0RC÷­{d -^´Z¯ÛºõåÅ‹oš)1Œ•™L åås{ì—ؾ&''G­V;vÌï÷gggKÁ œ‹dà\ãt:M&“ÃÌ;w¤GQX0uÍš¶n}Åï¶ι+³tÉÁíÏÎZùhÀc§TQq\Ð×p|Ïô[m=sðdÕ+åå•ÒTºUÚWUõ~eåÒ9•K¥}EMmfs§”k”œ”&½ N—]JC2›;/®$òŒBDŽð@(JŠa^t÷¹ý_¿Ù””^R>-&Ö >‘ã""/^$ˆ—„–"À­[_NJJKJL›RRVõö›Œå}]õz­z¤¸«æDuuõÞÈGç†R©Tùùù‡š?¾N§ ƒÒÖ¨ƒŸ‡¸¸¸¸¸óÉE.—«¡¡aáÂ…h !„B7&ÊápŒò´4Íl¤Hæ©§¿Q¶îÏ!¯­~×ïDΗ1µlÙ#gö5T¿ S—}-.£ì“|Oàü´L5eío<½BËî ë»ÄNƒþw¶¾RWwÂP¦‹ž¢”R¢ƒ‚?À{ƒ¼Ÿ!-J8­-,,Ü‹}\œ.ûæÍÏ™ÍJ¥*++?ðö¹®þduõ^)´˜Xº„ Õœ¨®©©ð¹Ä†Ì–ÎM›6–­¹ã):lhh°té¯Èår>|8::º¨¨Èårµ¶¶N›6M i¬Vkggg0”2%&à Us¢z×®-Àª²§­î8µ×cï’Å0¬œá $d•ùÝ6GOceåRi:_äÌ–Î]»Þ”Ò`*+—–—Ï׃þ³u'jjª¥ôú¸Â²¬¬üaiEƒÏ(6½ü§^w'« µ±Ñ„·Ý!?ÇBñ†¤¤¤ô¤¤4•J=8îB€À°åÞDˆVÆæç—FøÒ¤_ÚŠw——UVÚø”JõHŸ.)¢Û°áñq g SUUóçϯ­­íî”iÊÙPÒ^™S¦LIOOŸp[!„ºÑ„‰d"Üžzú¥wþš‘«€¢€¥)†š¦h@D‘"ðdàúËÞzHã:=±èâbҕǔŤBB`p÷rP§ôF?þØ/'|].KR QSS½aýc5'ª«ª¶ÀâÅ«'0ÙæZhè¥M`ñâ[««÷Jé1“à ây~ÿþý¢(fddtww—••õôô´µµÑ4]XX8‰—ªN—½ªê})k~}~’&óß¿*ý(åë+O}(i8BoIJJ“òdÌæN)€Q*UååsÊË+/å*ßlé ü€ 5%)]©TÉX™n<b4ͨ՚ÈË×՟ܺõ嬬ü+îiäMú`8¶uë¹”<Ï;vÌårM›6eY¹\~ñv™õõõ åååÆ „Bh\ÂG2‰‰‰iiic®]¶ùõç›;:äšó×CÔÉ%~G×=kGKدóײ*’B ã:”Joô%ÞK–ìúàÍê꽃 ìNnh1””š¹’ÖÞ­«;!eJH –MV 3ÔñãÇ»»»¥—Ia†’¶ÊÙºõ•ò5e±ÊĽ›w¯Xq÷¸ò£Fa¶tÖÔT0ÒJÖYYù“ø¾ò?z}\yùœ¡ks›L uu'¤¸zƒÛ–––ºº:µZ‘‘!eÂpçóùzzzzzzÔjuii)¦Ç „Bh¼ÂÏ.}RÙPç:B©T]ztq1)c¡®î„4#Hº?Y Õœ¨®«;Q^>çr_¼^±†ª>Þn25–—W^¦¨lPKK‹ÕjMNN¾÷Úw}ð¦4~¢Tª&kÐï‹Mš&g258ç7~¹|qÏóRÜÂqœÝngF i’““‡fË „BEn´<™È§™!„B!„Е4ÆÚGÒÚeW¦+!„B!¡KZ» !„B!„®Š1VÂÅ!„B!t Štg=„B!„ºv`$ƒB!„ºþ°G޹Ú}@!„B¡ñ¡‚ÁàÕîB!„Bëóù®vB!„BŽ9²hÑ¢#Ì“A!„B]ÆX…¡Ç'Ÿ<}êÄ(JJË.˜;Ân1ƒ am« !„št×òßµ\Ûxa$ƒÀ¹¿Ã =:J™M.˜;®Â—Òb$¤†k›@mÌ „štø?±Ú&𥌑 BçþcõjéG¥R9¬@ X¹úŽÛß]¸`î°Âa ½Å¸MØgm6ËéÓÇ·oßœrûí_V©Î·Å0lrrú°†`Xmn·Ûb±=zT¡PÌ;—eÙ!50:n”n_\›(Н{”×+Ѩµ ÃŒY›¤··{ׇo5¶ž‰¨–E?´þ ­6šQ&“+•jŠ¢"ì›Ãakkozíµg¥ï¿ïÑÌ̼‹û­¿¸oÉ „št£ÅGnô¯Ñ/^mÉŒ“gïW Ö~(7D3§žºþwýÉœckglúöÑ7–EE\IÿŽ;¤Sȹ‘Ÿ{QOt¬âÕ%÷ÿöoO¯J¾±ßœ«‚ùS„•J~¿ðàÅG&ÖâŽoX­–´´,•R}øÐ^ŠaXžy½^øÚ#?³¶Ó§O;Θ˜–e€¦iQC¡ÇqË—/WßúÝΗþõ«ŠƒáñÅy¼×öo÷ü[\lü˜µ‰¢èpô9s¼ÍzV7[¦KÐY«=»?x]¥ ûÝîä”Ü…‹nÕj£#ìÛ¯ó$ðr¹‚aX†aÞß¾™¢hŠ¢!„ˆ¢( ‚ ú¿ÿ¿‰1ŒùªB¡I1ÊEÖ6YÎ_,777€Ñhü‚ƒzÊÓí}4“t¾þ•ùßüÙ²£¿ýÝy‰£Ýj™fîÄÏ=ßV°¼»aþþ宥¿®y‘bé‘/!'ÁM\koëeúxˆ¢8øXŠ$fèSƒ…½^¯F£Q©TRaF#xqᑌôÇðûÙSËfuwµ8y˜ã¹œìü’’im¦Æ3gOŒtÖÐã<ÏÇÅÅeffÚíöÎÎNQÒÒÒl6[SSS$ÿÑZ†ªãôE·R43Ryç™÷D‘DÒ·ÞÞî]»^ùú4@˵VCÒTŒÙµlæ4·Ÿ;Ùhéê2åçO‰°oEÇÇ'f¤•J• þ€_ø˜ƒ.Z/Š‚×ë±Ú,g±o!„Ф»øKGºÝÖ˜÷@¯¯Ú&˘Wn¬]–˜˜¨×ë¿xG" K^°2ÛרÒóéÜó£#> Ö7W|푯ܷnÍM ïúõ~»ÀuíøéšYeS§–”ÎÛðìq÷ï›÷àùss—|÷±‡î[»rÞ¬Û~yÐ9ö¹C¡@ˆÖ%jib}s•qá£Ü¿ö޵ßÛÝY÷o,.)(*,¨¸ã©-<ßö×e3p4ĶíÎÄØ›ÿÙ#B¨á÷ æþ×™ è¬þíÚéÅ¥åeSæ~ó# ß šøÐ6úÕ÷µö¶^Ž!D£ÑH‰æéï3ì˜ !Äãñ Ç3®+f2š¦Ô­ ð{ö¾GD1Áxö쉮®v&Цé¡%Gª d2™ uuuEEEEuvv:¥Ryn¼"ŒQú&„<þž_÷ñ‘þ'Ý÷!lm'OV[--™ ª¢4ƒLTjeº„¤D§'`±{âbâtZ¥ÅÒ "ìEQqq‰•³ed=žþžž¶ÎNSgG‹ÇãÊHÏÉÉÉÑÇ1 3Jm!„Ф û%»÷Pï§GûªOØ ¶ÁY×ÚßÜá [xô/åÁÚ>ù¼ïH­½¶ÑÕÔîî²ølÎà„k‹ü…ŒY!D¥R©TªÑDÒúèWnçÇdŒFã°r_Œ#!æ]ï4E•äëÏßoú{Ø{¶½vSLðÌ/»ÿç‹üiFߦ¯ýÂýøö£Ëâ™þêŸÜü?/¬úqI¸ú·Yv÷»¯Í‹ríyxÁSïlØù`bG¸sCÎñÕ>½¬ôÏtÈÖëÊzôçŒr°ƒà¶ÈïÛöæb=×ð§eßµ<¼ëä¿e«ŸZö•ï”ö¯5‰s0ÿü¤#ThÙÝ™]B><Ñ¿njõGžOe)\ýöªÿ:P»"†ý΀ŒÎ¦Åp¾‰ÑG|®µ·õ2}<Âþ-‘‘#éÛíŽŠŠ’Œþ×a‹@QÕÚÚ “ÉÒR3 ‹Ê”Jukk}QáT)‰°6‹Å²lLLLrr2˲½½½)))R,4®¾Bt*ù4cÂÀ!„€(rnÂÙ)§Œ¢F|EC[Ìm%ÆäÇGi”´/¤&>º«·Ø|YYêôÔ´“ ].—Ý`HФo …O·w4ët±IIé^¯ûÌ™š(­.--K©R†c¾j„BhR„ýÒ‘ËhKÉe4Èå´œ¥e,=Rá1k–¥X–’1ËÐ,KËXjµ 2hð–îjÓh4jµzؼ•q}yåvA*†Óé„ Çq¾GF#Å a+ñ©YêCƒÏÐúi_šC(snY"{t_{ ÷Ì;GÛ­¿}à¶?€èã„"+¾VF?}UY4 Éšël²rDq4ܹC#õ”Ÿ}´÷ÑL–·~òÓ•|oɦ­ŸvÇt=ÄY³«§ìñÛ³Ši_Y—pÇΆÀšy9Ë*\ÿu¸kIÓ™œo}WóÂuqGwáúB¨ ¥þéמ<±ê¦å«–•'é Ûlbl×ÚÛz9>Ò¬0—Ë5xD§ÓIQJØÙeƒe¤QQQCÏÄHÏ¢(z=ý4Ãr<×ßïlm©·Ûû4ÚhBˆ(Š‘G2r¹œçy¿ßo±X<˲Á`p”Fª¢Qkââãê[OË2w§]$¢ @›]¢jÒPQ”¥ÑèXFàEša Ç„äÑ1±Yùœ@¢¢bX¹îóÚÆ¾>sllÂÅyÿá^)ÅЬÍÖÛÞÞ¬VGefææd؃æ›ß­ölOufŠi#„BWÒH‘Œ\FIÑ‹BÆÈXJ&›x$Ã2”Œ¡Y–fYJÆR,C±ÌÄk‹üê"ÂG«ÕJ1 œ›·2zUýÊ-|R¹4Ž#ùE:ƹøaàÇþóÏQà®Tù@TD•eßuû] C/®†œr#Ü¡(Šˆd¤sÃa 3nŸMþ}wK`P¬’=_þ¢k:uÑʼŽîþ _uó†ùúwŸ}—§>eUYLÁc;¯úlïÞ=¯?:ï÷¼¿ó‰Øp aMDäZ{['ñãvøE*3Ò˜Œt«@*£×ëu:ݹp•H¿ÅÒ™™™×××Ãõu‹G>ŽvyQQm¼Ðcî$@Íw³ÃÑa$#Š¢(ŠIIIííí}}}6› X–õz½Çõ÷÷GEEÙl¶èèh™L6fm@‰¢èñ¹D!býááþ„¯ÅËÀ4xº¾ü–䟼¸£cɺ´àÉ×ßè›òÃ|%¥«X™ôÝß¼üà¶$ƒú&øÁï>Jø÷ÿ00@–V§.oÁùóæê-x³5ð¤1\&°fÞµö¶NîÇCf6ü2Rú¾(б±±`·Û¥2v»=66V¯×Ûíö°§ŒÔ¢Änï«zïÕÄ̼@Óéu½J»…Ø|ÄÒkêíÝS^Q4™ÅÜi6wZ­æQº4ôG‡Ã!—ËÓÒÒL&˲Ò,µZ­R©N:¥ÑhœNç”)SFZ‘yhm¢(‰ñéËbÖ(å RÓ£‹Ð"!¼@XZ ç§1kKJÊà‰"ÈSþ@ (7»êÐ OŽçÝ×7kµÚm»?ºm¥Ú˜SôÞÎmn·K&“GòJE"*•*…Béõzº-fÍÙGgüê”õ3-/O\øéŸ þãÓ57…­ !„šta¿åò!³Ë†ŒÏŒ¹VPØGjíJ%£RÐ*£T0*£R2EM¬¶¯.ÆUàRæ­ 5Ò•[ø1™‹o*1ŽŒ [šõé£ ×jåò|ö¥Ù ³zù9ó·¿UYRÈD:iåoþùë#y®¯ö'óó~ËWoûÍs_Î`½GŸ”ç=úÂYYþ+аÙwÿï_o§€I¨\¤·¶L[’¥`éy ÔÿÙ9gQº@t×üå¾ïï±Ó,4Óžü¿…Ñ Ó…éÀÄVÿ¾ÖÞÖIüxHw ¤ødØÁ°…¥Ž¡.>2º¡%NÛ ¹\ÞÑœLHˆ•5õÏJÑt´•46äšZO«TQÓ3r#¹k¢Õjív{oo/Çq„–eC¡\.÷z½*•*%%% &&&ú|¾èèðë›]Ft˜MµõÕÓKæZ©³×$¤1Z^;÷\±±û¦P(Ó3 <®N¹\%W¨§OòùþO2ùœ³ššÏÔ7.ZxKllBKKÝHë&_Ø Á—âäáæà‰Ù O[?ÛÚôœ‚QÝ’õ•uZ‡»á˜uÏ´¸¥akC!„&݈³ËXZ&£@!§/uvÙ…2ì¹i6×ȘÌ%Î[&ì¹7ö–%Ú¥ÿl¼ðÊ&zÕ» «€Ø”Ûþû¥ß_mÈRVüì­? { À¹Qwí8s×À 9ß®:2ò¹C{Òå~Pu¾ T<[õÀð"Š’wüXz<婓ާ¤‡tü-Úw˰²á:`ÒE±¯¯ïâƒ#¾ô‡þñ»ÝÎLALf‡ގŠ1®Z7»°¼³³õØ 0¶› 3O™2óâ³Fª­°°PzÐÕÕÕÚÚÊq\qqq\\œÙlnooÏÌÌŒ‰‰ñù|@ ’Ú!”B®IˆK“ÉÕ:&‘¢D‰H€FÅj âH†eÙ䔬ӶNVÆöÚÜÓËËûžÄ¸Äi³¹SìNWgwͰÍ-g§M›Iß~¯ÏçÉÊÊ ýgéƒA1%£å Å2ôÀÜ9‹¯g—!„ºbFž]FËY ÆdèQ YÛ° ixgµMn$‡CzÖápÄÄÄèõz‡ã¢+ÞKpcG2SRZ¶éïÏ­\}Ç(evn·¤´l¼…G7ôßcîT¸DàI¿=Ñï¯=º?9%+33¯»¢Òiîf#HXeý€˜˜ƒÁàóùÚÛÛ !ÇÁ¹-q"ŒdDBD¥àÓ[ÛwÐç’¶DB€P VkPgBÄ‘ ¥ÓÅÉQœÀuôô PKQŒÇëúäÀ~ša¢) ü~¯ßiߺ{:öîÛ.íŒÉD±­ÎÓ%ñ³Wf¯—1Šìè³ÇÄPl´<#„BWLØ/´¤ó;*äÌè…ǬmJ^øùá—{LVmÒLû¡O]|äÒa$…ƒ7˜… æÀÎíïŽR¦¤´L*6®Â£ú÷ÜoéjvÚQ:{V±*%³<+_«æ8ÎÙÛ-âç¤dNì?%:NŸÏ'‚B¡ÈÎζÙl‹…¦i†aB¡PÄc2@LÁèXŠ¢`ðY ´†¡d0ŽH´Ú¨h]|SS­\¡ô)]\ZrZ¡J­Q*TjµF©T}þù~A"©íöÛ¿2ô)ƒ"®:øîžö×Ó´¹"ˆœ,Ž›ÕánÈ‹š‘ B¡+æâ/i z„…¯ëÚ®Œd°pÁÜHb ÅÐ?~CÁTÅì¥Iq S£õ …ŠÂq¡S§ŽX¬æœE·èõc)„- T*»ººL&Szzz\\œÁ`–föù|ýýýÆ6›ù³v €Á') ÀÕ f›Íy$òrƒ!éÄÉCy¹¹¥E9]v‡ÃjµZÜn—»ß)2sæ¢Hj›:eÖЧ81H÷‰û̯·õ×€ŠÕ”ÆÍIÓä—èçb$ƒB芙Ü/§¶qÁH¡«ièÿÌÙK‡w»~ø¶Ïç-]ywqñ4¸„›"F£Q­VwvvÚíö¢¢"•JÅ0ŒV«Õjµ ‘D *¥æŽ•cRjÔÚÈgÙ&%¥sŠŽ?ØÞÑ,—)bb J•F—–š£ÕF+•j•jÄݸFùU°”|¦a…Z¦«±W9=*&ZKŠu•Ql,F2!„®˜k9Z¸–kjrÓnBúäÓƒ§O=Ù&ƒ 9XÛj›”5„Bh(üŠŸXmÒ—ò‘#G-Zäóù"9Çdº:"I¶‰ÄÐËq¬mbµ!„B“¿â/¥¶q¡Çþýû›šš.±¡arssçÏŸö)ý˃ „BݰœÇøÆd¤0¦¸¸ør÷ ¡Í™3gàâ`ÄB¡‹écb`÷îÈ˳R³|ùòË×§AO?ýôÏ~6ÂÖ}áäæænÛ¶m¤a™½{ö\áþ „B]³–ÞtÓxO¡/G?B!„Bè²ÂH!„B!týÁH!„B!týÁH!„B!tý¹¢‘ ¦û#„B!„&Åeßsîܹn·›¦iQ ‚ -P‹B!„BpÙ#š¦7½òŠR¥T*U Ãpðûï»÷Þ𥽟nÈ(q{íoË•Õî;ôÍ¢{é-gÿ§ôäÀƒYªð†G!„B]Ï.{$#)-:¿ófí$ŽÆÈ³îùùÏ©LÙù#¾ƒ_Ë¿OñvÝ@èrq„B!„ÐõïJD2Cç•€ “V5›¸hý¾± „B!„¾@®DÆ?ÏqŸ;VS{òäéSÇOž …B ÃŒR¼ç½'æ%+)*ªèÞgNx€ëýåúò?·òà=ðïiÆï €ïÐ73³¾}ØîÜþ6¬}¡«ý™¥)±±é«^î x?ÝšyÿO¿±¼¢('Éç_Nz „š^ýÉþílà2þB!„B“ìJD2ÁP(ü¿Ï_1uj00jÔ4mÞjøu­‡³íº·ù·ÿèwME߲魇S3¾µ·ÛnïØ±>í‚€)о³¶òùê³-¦jùé76w ¡Ž÷ÿçÏo·†&ðÂB!„BWɉd‚` à÷ûý~ÿ¾ªª1":zÕÏŸXh`ÙØyÿ×JÏÛ¯žöV|dIw>¹6[ 4ÞrK¼é€) ]ò/§oǪèIj!„B!t\‰<™` ØÒѤÑh†!„ÄÄÅŽÚ£8cÒÀÂeŠD£ÎsÖÎMR?­A+ ÒP2Ãû92I#„B!„®°+ÉüþŽŽ­V+“É€¥Z=ZiÞÖl ( hivi3ce«d„/…‚Çîõ#×@Á!„B¡/´Ë>»,ø|>¹L¦R«X™Œ•ÉþQ§‹‰ý;ö§6^p|ö—ïÒÜq‰ @•³ ­óýª. Øôú?pŒ¸ü¬v7·»Å‘ ‡ÿ!„B].{$ÃqÏó¿ßïõù½^¿Ï š]¯Èºç6Ë÷K£ØØ›ÿ™õ«­¿®Ô€,÷áÿ{Bñ_3²òKç~ëÄôʼn#n£Èàû77oHd¨¨m`½gÌøG!„BèúsÙg—qGÓt PªTƒ EøÒš›ºZ~úì…OÐúy?ÙmúɹŸù•ôÿêÙÿÛf€Á`üêë _}ý\ÉŒsÇlêjl¿ôçuæÇÚ%ÿrŽ´ B!„BèÚtÙ#i똢’z´=dB!„Bh.{$ÓÞÞþ³ŸýL§Ó ‚@Ó4‚`2™.w»!„B¡/°Ëɸ\®ËÝB!„BèFs%vÆD!„B¡ÉuE#™§Ÿ~úJ6‡B!„ú¢Â1„B!„Ðõ#„B!„Ðõ#„B!„Ðõgò×.{ôïUt½p<õá0ÿöíÙãßGþ°mÒç!„BÝh¨7/_¾|²j|þÉÛ§><¼ÎAñ>š³Z!j² %›¬æ®;Ï=qÛÕîºBZZZ¶mÛ¶aÆaÇõ11°wÏž«Ð'„B¡kÒÒ›n€wï^´h‘Ïç‹ä”É“9žú0Å9è`Å{è“<ïX"°"'çXÈ]'yýtA“=éM_û*º^ÀH!„B¡K5ù‘LE× §eF:hX≠¬((ÄçOŸœ'ÚÞÏO=¯Ÿ&*ÆÝ€,výƒåîwªÞîÇ.|¹x´ !„B!4“Ÿñ/]¬÷ •®0‘§¾€¦—íÛ#³~ ‚wŒÙ˜¯|mÙº$fÒ»zY©Œ31ù]/\•Î „B!ô3F$#Š¢Óé´X,v»Ýív‹âØÃ Òź[ 4r}·7ºS©íUB¢>…Ú!×ö*X? Œ¿Sæ86/äÚAJʘaÐ1Œ²`Fù¿•¨ƒ0“A!„BhRŒ6»¬££cûöíµµµÓ˜Z”%»óÎ;§NÊ0#ŽO}XÞ»D"öƒó'º¢â=jÐqRàD¢PDQDIH€¢NqçN¥“f/úAzýÏÞêî'Àæ._ò0ur³¬l¾Vwßý¿ÆÁ¦(Mjþ·nOéØýÙææÀð‹V–/œ¾nj¬Ž%¼Ï¹wëgïØtëœÆž²h†x\ìnx~gk@)JM_WkPP¼ÛVµïØ;MA»þ¡éÊ:«&C§SÊ„ž¦¿ÐÚÉ…«Ö,\Ø0±ž>½;?÷KóK€¶8»¥Ñ7XódB!„šá#·Û½eË–;w—V¸ÙY©º–[+0Uiÿáxë­·>üðÃJ¥2ì¹RžÌà:yg £&3ä@8üÀFKOQ@A`è©b_C‡cFf¡ºç°—€\¿ N¾g=Þ{dÊt~Û¾ÍRÌ SPttváwWÄžÞ~`k{èâ¡"yRþ½yÞ×^Ûx( +‰¡W{¤»O|G?ï“ç¦&³#T{aç4ñÚþšc/ušŽ{±&”/ü-cž B!„B“"̘ÌáÇ7oÞüÌ3Ïäääiªã|ÖþîS‰:Öãh÷ó¬L&{衇žyæ™={ö¬ZµJ­V;}ؘŒÄO8¥SNô,Mø‹¯ýÏ}5µ¾ÕStg{R¦Äª»øp}¤UeÓUÞSÕŸ˜G¬³Ô¿p°xÍâù·Ç€¹¥õ­NDÞ8CÍÒ”,»¼ä®i‰©*J$”JAŽ2€È9‚Q’ðåQ:\µža] .SÛç ÖÕb ¯ë“¾óÏᘠB!„B“bx”öìÙ“ššZTTDÓôß¶ê<õ>o­á ôy}^«Õæp8B¡Ð/ùËiÓ¦åää «a0Of(AA䩱 öæ6󼌩®8ƒû|‹{ ‡†PC«ó~²­^µdú·+ý¹ÚáÍ®µæÄÆš¬J¿pUå†Ö}>ê‘Åç}u®jÏ{ÿÐlj¬îî •:é Zž¨a( «ÕªC>¯®Ú¶`¸jƒ=».:ˆy2!„BMŠá³Ëd2ÙÊ•+u:ÝŽ;ü~?Ç…ÚDS[‡­?”]¶²ùdvv˜Ý-&P„Åû뇓"<%@ ­½C¢Ç²ßuË¢Â×a»(UåâÙø(ö‚XÆÝóê'-¥³¿5K6_G“Tž¬RPÀ‡BýA2Ê@Ű çïéçD ¢3²gFþNØâyÆ\E+c—Í6wõðã¨6,“A!„BhR “a¦¼¼ü{ßûÞ«¯¾j±X£eQêi9Æÿ¶ö 4M¥ª?ú?lnnþýïóÍ7SuqÇSfÇÒØØQp `”hB±„U c_ú“à©“®/¯ˆëÝß5##x«ôÍ\±üÙ[ù¦ªþxv  àîþÇëô†u•ß?ûß#®À…ÕÐ ý’Uå_ÓÉhÂ[ÛM¯ì²!&lƒ!Kã[­37¬_êñr^›½Ñ}nàHð}Þ([óÀ*£†XÎ>»ßP„©vpL!„B¡IAmܸ±¸¸xùòåCBº»»ÿõ¯=vâÈÉV`TD%Æ©5 aJiéÏþs­V;RÏ?yûñÔ‡o+Û_ë Ú{W€ðÙlœf–ô•v9•JXz^Ú¥‘Å®°ÜýNÕÛ}co¡3.Ï=‘Ì¢¥¥eÛ¶m6lv\{÷ì¹ }B!„º&-½é&øp÷îE‹ù|¾HN ¿ 3EQ©©©O<ñ„Ýnïêêî³÷gg$ëtºØØXšc3Mi• ÉÕiJw]žëTŸàaÏråâ§ @(7ˆrYä¯ðz‡c2!„BMŠÑvƤiÚ`0  „„Kv±Š®¤`†P2>z ¯É‰ucüPC@Âj£äzÂj‰\/&j€Ñ\âk`ôYß¹§0}èKá]ï¾Qý±s¼i,—½iÌ“A!„BhRŒÉ a_¬3ΰ€ç@dá3U.‘à4mü«i’+åì/ÿuø l—Þ4ŽÉ „B!4)Ƙ*6ÒÚeÃþ%²˜òÞ7GzöÆùÇdB!‰fµe;x#J@è>ã!té0ã!„ÐÄôZéÍ»è”¾Û _½4Ã÷!Gè hÿ“?&ƒB!„&Ìë§žú‡rÝ qå8Ó /nÁ‘„ÂÃH!„Bè²s¿æ©‚ Q£†GnÃ`¡a$ƒB!t­xkO´1Oˆ“v‡ü(Nd3…‘ B!„Ð5¡¦^ SQ<¢QÃêEÐc…Ó1˜Ah8ŒdBE ¯¢º|zíŠgÕk—:†7fAŠ0˜Ah8ŒdBEä/ÿ _|›Ý÷ÛkÅï„&™7Àþj{ÂÝ ]aŸ]¹>= ù9Ì tü6B!‘3]$9Þ8È>õžCÊ^[¤{+#„ÆôÁÑøÿwk_Bl0ì³5,˜‡k ¢ƒ„ÎÃH!„ÐØšM@­ZÄmG¥"oìÕ<ó–¾¹Cuµ»†¾hZ:Õ5õÚ^»üjwäÊyç³´œÄPBL`”2ù9PÛ½V f:ï¨!„Ûñ3”ô ¢Døž6´ã3Ž7{Ý>¶¦I½ëhÔʙޜTïÕíáuÊë#5uµ{q yëcƒÙA5:„ˆb(T`àKÒCI|”F\Îë æDk: ũܯL~E½ñ‘êžeþµKì-]šãMšjts üå¹Ã“•Ñ(zûÈæí"ÈT«€1#tµ»sõÕ4Å~Ò"ÿîÍŽ ÇGâÌýŠ»æ¸ÝÒÞþyHQ˜ –fqÉ|”†$ÈÕîìäèsiµé¿¶¸1’ÂÆ,H9 Í&0fIÁ yq ùÎzœ_ƒn\É „C³ î]¯zþî¯1ƒ{0^xéý¨••cº7'Õë °Ÿ×Ç>ûAæÜ§úŸÇcÅ31.¤Q ·Ì´5vF¿u$inžwÉlë’ÙàõSæ^º½›¶º¨+IŽr3ˆ4:qòåf>>·-òSV.·ÀW@£†ŠR þò²ˆÁ ºaáG!„ÐÚ»!#eø-pJ|ðV÷ÎÃêãuÐ(ùEe½,ê€ç÷åžhMðo <‡ h60fQÝÉ/2úJ\®€âo ÷7g[½º«Ý»+Í”ÿþãŒ[smk§4*4J¾<×þÀ¢îê–è­ñ Qc¦°d÷ nÝ ¡ÇF7µSùçu|Oö£ºÌÇçµÅë<‘Ÿ2˜ú/©(¥L§þò²xYú‡Ð5ï:þûG!teÔ6¬ò0Ç5*ñÁUý»ªuE•x@£äÊr¬y)®FsÌ?gUföç&ÚÕ œ7ÆÿSüÅ#4hÔdÕÂÐÎO5Æ(Çý3l5æ´MM…¢H Y"„@œ""ÑK¿IÑŠ`”"ˆF @@£€Z~ñ«k܇§Sï/³75ñåÜÐã%÷oó;{bþúqÞW*ۤϒ×O½þ¡rÁ´P~6ih%ÿó/ÕCkÕu6ßì½Óù@“øèq„1’üxq ”äC‚ ¢”röãÈ ºAa$ƒBh4Í&8Ó=bV±F%¬¨tmú €*/pKÕJ®,«7/ÙÙd‰ý×ñÜ|ƒ¯0ÑÕå:}ÍÛw€¬[B'ĤiTdåß΃Q¢<ˆKU`e¶IÅ€ðqJ à ɸƒò.—– Ž€œˆú|r Ääa S"@ ^€X¥*¥â‘¨•h”\=';’)š.ËêýëvýÚeÃ#1µ’+ËîšzõóìÙé®$íéÍš'nó3¨(€_z/êÁÛ<Õu34QÛJÑÔm% 8÷\êÿ@èrü4óú§@x®×J ¸zº±`$ƒBh4ý¸wx}Pœ¾€F%l¸Å¾éÃx èòüóûú©¡©æÜDG³5îý†ÌüXoA¼Í  ¿ñß ¥×J6W‘çtÁtJœ>•ÞlÊ (rg^]‹=~—)kE¶)Néµ<†ˆ›œÚç ÈÀè÷³65€Hì^Ìý 49I®ž"D-±ZÉH ^Ö…éúÜÑGzb¿:ëôñ3Š»gŽ8|W–iÉKr¼z$«Ýÿä—ZrR·^ÅA ™—vÆÜ³Ø{ Z½ºc}qëËNN¸)õÿø)ª¹KDü÷¹·@—y`”¡F2!„FóéQqÝj `´{½•°áfë¦=ñ@QåyΡO©Á)©ÝÆx[‹-~{kEÁªl“AsMÇ3^?#¥j\&Ÿ¢¾ÿåá¿Ï>OôkÍÆòXO¯ ÚTù½íýÚÝÙkrΪ˜Ñ¶ kpFŸô >²¼o`àªÀëg`Ëþ˜F;“ש€£Q ŠóŠü)ñÁÉ |!ÅóµyLi€ý'Ù{o핚­2Îå]žë¯êÎö‚cJJ×àS…¾üÌà¦â懆Ó× §|±¾à«õ—R‰×OÇÅ+Ÿ/ðȤ¢˜€4·i „nÉ „ÍéNH0P½V*%n´<Šß°¬ï•}‰@Q¯Å¬–K“;sâúz½ºÏ-ivÞ8/±+Sg¹œ7o@ÖØ©iî‘Ò,Ëׇ6Üb¿ñL³ À˜uÁÁ>wôs's-kØÑœukA˧§tÍ,ÎlùŸÚ©Û»ŠW§žU1þIïÉÅ4J~ðAK—†¢(šeæöç¥û¼~¦»OþéI­ÙÁ”¤‡ÒCÆôIèRU[ΣS› Úþæ669†eǘš¦ØÏUw͵%Ħ‡zß8OQTirçùΫ„ ·Ø_Þ4}-¯þI§ñ«… õÄí^»üoêZè¹w!q:‚çî2ÐÖˆw­ž¬n"t}ÀH!„ЈšMdÝâHïòj”üK,»&Ð)‚~øäjy0KÞ›ÓÛæJ¬ï¯¶§MÕ[‹bƱíåà Ê»uŸ5k‰ Î1öWäxãÔ2››ÞôAìÝ ]“>[iû'ÔºUÄ„}î¨ÿ;nüFE“7¨ÈöÄG{VL ~P›4}o¶éõ–¬½š’ÕqŸOn7Fçõ³ù(æKÓ8Ú,?P§.Ïïרø„Ø`yxýŒÅ&o3Ëþ´CS`J2¸’œ@B?Vvµ–ĨÒ„Ãöº¢pÄJ>®M>Ó£øúJ“ô£Z¼§¤¡ÅÿÊ©²¡C|¿~Yß+§R4sm.¾»£”¢Á vŽ]4o€ýàPl~r—3!6äõQ;ö‰½VH0PR8ƒ©2èFƒ‘ B¡µwAF*€Ûqú±Ëk”|Y¶ç÷Ç3lœ1F,J èÔ¡d;!æ‚û÷™:K¦Îâç•zóÎøf”FõD_éxÆT4õƾ~&.SšæX;Ã.ôÚy$áî…ÎOk4[>ÖÍ+öK˲MŠã§¨)¹$3ôõG=sÔø­MñQî÷M¹5¿ ÔJî–©=Òâo«Rº«,©03nÑ_¹`æƒÃ±æ¸u:š–ÉzÍ\¯]‘;ˆ¯Q 9iþœ4ÿ¬Ú”ŸW™tI&—‘ÄGiÄ£š3öLЦæ¤5K?¾q€úý×Ãçëoý<ˆøõ妡¥Q¾¤h÷ç–´ô(]I|û@÷”üúEÝ»O&»© ‹»ÂTwõœudR4µ<½vb§×4žr8ê™Î;‹ÜÔ0­„Ú¼|g=CˆŸ"w­ÆHÝ@0’A!4¢ÍUäciWo€ýßO yqÂÚ™=%gqiOvÇliH¤:]á/ˆó¤é¶½‡}ó°¬(/É2’cƈë¡Ùú}¶”‡²K?6·Q÷Ì4ê0Ó·Õ)Z¼cZø@× q-L¶º67O»#ãŒJµ’[>ÕÜh‰yá@ÁýÓ›§Ì]]ö þŒ'~múDÂQ_@öÊþ´Duèwv {9Æ,*å4‘ö&*Iƒîkq ¡Ë#„Bá5›ÈºÅ#®¿ÖŸ~pKO]—Þí—Åë}ÙJGv¢ãæ ÜT˜ÝÑmýѯµ&SäAë×1¾ôø@b¬ozL}± ê $îtÎÈSXÓ%=™i!~NÙâJèpGtjÀ7#ÉùhÉéÁA†a<>æKe~Ш„WÚ_Ú¡ÿû'š‡.=˜ÙYE?r+ü}ö¹´ªÎzlN‹´£Èž–ÄÛ‹Ú‡–W+B÷U4¿~*??Ös [›­ÏrE²ËÌxýìŸ?Ôÿèv+PM1tb\Ðü¹fô³4*ј2f„–̯Ÿ2÷±ÇëØؤX17MLM çÇ[ü‚òmKñºŒ3*v ¿ÿøiª¢dx†Œ/¤ØSŸ£-Èm¼N- ”Ú)šÚÖY28YQ­ å%9(šÞ|¢à¾Š&iå·«È/¨¶ö¯I83Þ}Ayc¾º5zíŒîø‹¦kJV.¡_Ü".˜bÀ fèÆ‚‘ B¡ðÚ»HFê8.‰Þþ41')ãïqjÝùàqµ"¤V„â£ÝSRaiHÑëÕõøtýœöh|u'¬¦)‚FMz¼­Xî╺ýþ’dÖ+oSPã^³k(¿ ló$Öºâ»úi}Ð5#ű °^£ã}»Ež‘8£Q‰®rþà嘿¬~HEaøKÉHôZ©nuת z_PþÇ™OÌ3IaLk_\¼*åv–Z¼wJÖ³‰rn×iíòé|‡˜™N_Æ™x»Ç<8×-…yN¡Wq•¤Z:U9i…—1fpÆ Îë§Ì½t{ÓÔÁôؘ)9$#E0f’îü…qÝqŠó¹"$w]˜;ä )þøy陿)©Í+ŽmËŽ¶ìè)¥h(Ôµ´xzPÔëµù÷Ni¸ºÁÌ‘þ¼åq­±Šñ¥Ç´öÅýíXò=…},i¥˜F Sr©çßÂÂé®ÅŒn(É „ ¯¶fU D2ýÐG¶vÙÛ'M¤%˜£T\§-üPÎ`Ò?,ä”}½%¨óêz¯á¤-äïšÛ}Ú(Gj¶Úž[šÀº“iK45¾ë¿€¨ê $t§<¼ÆÛ_fèXe´À :Ý¥œY|>¢Ð¨ÄÇW{6¾§né’¨'Ì|r„^·ò\ýüCã“ Ûâu8µÝ1s²ÍaOT˃wÕ¿ÝTÄùiskˆÉf¨ŒÒ¶ð%jéT@yþÀ 7Šx÷LõlùX÷ÍÈ"™A1f ÆL¼>ÊÜíÝôï6C”¡ùþÙ¾Þ¤ îfÜ»ð‚–Õ«ûÛÙüG§6Œk÷!X•|ªÝ›¸Õp-¥âì~9x}D£ñ¢J% dÈÌQf¨”öPŒUˆ®+J%¼àw뚃l"iUæ4ÝmÖƒ+'eÄKº QˆÒ.èŽÒ>žuöW(ë¦mxÉ öá›ÉÓƒ_]B8%fªŽhÏ÷Ím$ø²§våüÇâöxÝÀtµ¾~m¯‡> 3H-Þ™W÷NKÑ¡nÕ=ú^KBMC’8ùÁÌŸwë~´Æ>ø#E¼w ±¡$ßk—Ox%7š3!.-:`LŸNŸì2S‚+LÉ%µdÝ­ç7,²úô/7ü{QÝ6R±][¼ª¿Ö“ž¢ÐåiL×—ÕÿvS-c¸bZ‚Y4 s´ãØóTOÚ‘ž˜‰öÛ¦DziÔðýûá¿_…h-¦Ê  F2!„Âèí#§;ÉêÅ@ú½T·Šж¹ hŠfÌ.hºÑ%£(:/Ž<ÿQN‚N ((è È?mÈÜv4˜OÏÉ碵 •öj¤(,Rrö HUõ¤BOÔD•3Fß)T´Œf„Pzzw0y­ÛÛî.N ¦'µj>!&¥•J°‰:‹ õyEâèÏáN•ç¹ q‚¯º¥Kó¥©aF]ò³BÍ,Q ϼ¥ÿÖÚñ ýîuæßâÀ=µ=ëû7u Íy8ØS^ïè5¨e;g·ÉŠ4éîÒ5uks‘ÄóãêÆèÞªŠ{pžghúGT&©ÆgÊógZ”—²&µKÔïÍ;«g Á@*JÁëƒ{IŠó:ÚÝIŸõ¥®Ï­¿”íVbåŽÙº@g0ñçŒEѧ•´_ ß5S UüÿÙ{Ïð:ÎëÞw½ÓËî½ W¢X%‘”HuJ²ŠIÉ’­¨DŽbû¤œ›ääÆ9>öÉsOœäæ$N®S,É‘e[V±dÙÕ)‘”Ø R$@½cWì:{fO{ïÀ ;'‰<¿OÀÞ³ç}g°ùpýg­õ_žÿs.yYÃ5ªû®z.óø”ä|}¤ÆËª¯½r3D"ÂÀV«ŒÅ¯–’±°°°°X»ˆ~0²9\Áõ5˜I2ùß¾ïûÝÅ WE’ÂBE…þNw´Ù‘ ¯kAyÕþÂAD lµ ÑY‚D)ƒA r*AA‚›V T@ )ÅOå  bs`Ç8ìØà4:D9) NdÝUå )–:ݧÖy_j¼³1—7É~Îm’9‘7wl)=ý*¿yµ¾¹MýûœßU˜3ïº${P_¼‹H õg¯VýÑ­SçʘdÎv0&ܳvä’çá)åîªÞ—äÆDÝÒ7ÍÖß®%/ÿêV 1ËÆ²äÎmçå…H?7® ùÊ»sÛÖ_ý£¸r+Ûë$E $áé|å±ù5ÎæªOçý7G½ÜUŽ[Y€#åa°_j«gSµÌ¨@+÷Öô¾:Ù†üŸaTÆÜGZëf¾÷bûŠƒîáÆkÓ+åºhd;™¬*Øî¨¾¢d”$£þaêŸß Z‚¨»GëjC=g­V‹_,%caaaa±¢€Í½‡Ð®»Vz¸ûÆÇŸ~:³ð¨^à4ð;¡ÆHÎäòƒrÝ=”( Î ôûNUõpw‡&òóŠHÖ9@€dƒCd“C1K ð |Ùu €ãI{¨µ;•¸ çqQZÝ ¸9WÝ3Énh)H2KÑõ•çõˆ‹¼ùøÝ¥§~"|æes;~úgöË3‰zþCâÛÿU•ê«/W|é†äC?ð}aÝôen§”«Ÿ;^Ó;êl«ž›\fõü]ã’üù+žsëÊæ ÈÅV‘7Ã.sh‚«¯¼†^Ôî%óNX”(‰þê?ão|aþüÇsÍã²ýêLŠ—£ž2ñå¶tÙ^ãS)[ÿ”éaì§s]Û<—Óò‹Ðg6®g†ÏUns¼r¨f¼^»~bXüÖÏÚv1+¸ìÅÌck»/óä’LöqC“D, ›W—ÿê·Uô_¿M¿}BëjƒSƒxûf+'cñ+¥d,,,,,–M¯ØiòÒ»ŽºhyÉŠ£ ¨¿}’m«T$ DDºÚŒ¦:³˜zê'B{-nkP^}Á‡—'e8_”1—ÀA„ và°ÐS¬^N U¤¡êˆÌp¿´KI&2ÔӻЗ€– ãwî;/ã!òø3·(?z‹ùõ{xú§¶Ç?U\YÌì=JýÇtI¡þôÅÈ—oL]ÐêSRèSܽëG/“<)fÍÐNÖ±6ª–ÍÙª¼ùÒü…Œ¹^zßóøæÂŶÔ$ èœxxkgiß þ*”Lœ¬"1TàÅLˆT‚¯þþÆÑ\Ô‡ù5&†{C¿üÑŸ!wƒsuq[+ÉÈ_ÝÒ-ܸúivõÆâh{ä ºð¯ˆ^ÔN@ç¹8”Ê̳‡kVy¥ë[§†§možt>vkÚÝÔhš°…<3&‘¿û½ÊF§ÞVQ® –ë¢K»~K 50.>½_ØZ£t5—ô¶$#D¡ñ)Ë‹ÙâWKÉXXXXX,M[ÅbH”ÎⶦóJË^zÇ–õòB!ˆœ_â"ò¸«MkªÓûGØçß@l“Þùù‰ŠÁÏê.Ø”éH€ÍEªUT0T¤ÝÈ‚äëL el”o"t5`ürENô;‡f˜½Ãô uåÛ6fc)*ÜÏÕW˜ï÷l[{^¦"à5î¸N{òeö+Ÿ•¢ñôOmÜTZnªýТH¼yÈóåíéºÈ…±éÑ!ÿg×\±-Àªw5Oþ㱚‡6•T¬èn°gã*;X³L,KîܶD‚B!XZÔ-¢`Ɖ4µÜõ.‰L:3”gUùĹ/îÞcÎÉs'å&‚€ÍŽ+艿ܥ5n8èNz:½ÉF>Ù͵MAu”k¶’Ì×9äX˜í¨ýåTè-#ª†Õè¼^—dÁñ÷Gëk¯ Ì@$h¸ko¥Ã«ød³c j°­+-ÉT|–³÷Ž»Ñm´U(UAÕÆë6ÁìŸr×6ÿö×—Ð`¡›;ЩAÓòb¶øÕÁR2ËÒÕ†ö»î¼ðánw/‡ïºiY»­tÿ6‡M/LÅÌ€Ÿ<÷-‘Ç]­JS­:8ãø»ýÑ–:6bÆt‡);i5Ì䛘‰dæâsêˆÍR§6Ë9—6;C‡MŒ~ /I¡&lß=hotê›WIõa5[$EÞ8Ñ/ní,‰~ó¨pbÐÝÙpÞfê«õ­E´ç µýõq¿þô«âæÕZW뙊×>dîÜb¼qÈÙÕ(-ùˆý§}â_ûÅ»k¯žÝ¿‘R³º§ŽžFW%f^Øë¼ÿú¥3( #´(_EÞ¬ê½Ãìå+`'…ÆêÒy×øâkf}5 øPs½Z£,· ¿äqŸ²Î}œª.ØÖ¸R·Î‹¨µ¨'…'‰µ-foƒ0JpŒ ¿ÞÃd‹Ô†ÆÔ\aäR VrÞ[Žᜥ< Zß¹/žŽW‹¹¿´~ØoÏ@Vwïε6ùc‡çïÙ1yî‘"¯×Eõº¨´mí윪ùöAR@—•GÖg"¾ò’C]EÞ’€ˆ[^Ì¿*XJÆÂÂÂÂbYB4ý€é, §O¤ÉOÑß½ÒÌ{4_–t¡C@IãF²@ðn*âÔíÕ !?0"Ç“-rgãJ½Îq¾ÖÀÈ]žŸ:g¼ ä!o‡+k—z`Ò~`@À×6Hÿû׿;ï÷T˰g€ÞySnÛ~æƒ("ÈŽºó¬m›jõÝ{©î²«Íxüni÷>€»@Ìì9ÈD|èĽ«±T]b˧‚w5]}‹Kc8;’â÷Žz¶×¥C(Køkp¬ÿJOòÒO[¥ºœ#™N1ÜùÃIkÊOÿÔ¶mÃåž?#ÖøµÞXü³¾øš ]íHîC³« KÒ¹:dƒû(Õ8[fÛlɇÏ»! (Úñ1”1wRiÊëÌíÎ^7•s„O z:.ìP€’Ê¥½/ôùšÂå›G!žfÆãÌÓû=M£­²\Tm‚qîß®%€¡ë7 ç^»ôV-,>XJÆÂÂÂÂbYDa®ÀlñIF_{–ÿÚÃ¥•ûCf“Å<ŒØáD?ã{ *3^°Ÿ*Ø+­Ë? Ÿ«>ãåçHs'HÍÔ‘>ç·wG¯m,]™C!isi³4.•mtŠŒœÑëWÁÐeNÏ<9ìŠsñW x—•1%…–Êl_ÚI Ô‘ÄZ Z0';yuStæN[ßrŸy}[WzƒB L:¾ýfõµ ŦhþÜ‚Ÿ4& MÐëÙœgÁ½G«_Kö°hÙNô’B̸¾ßí®sh·¶¦ë"KdB®Ñkˆ¼>ã*C‹ë œvۚس‡ªïëœñ;›ID?qŸöä©h|æãwŸ~U€91³{/KÒTg“rÚ'Ýw7Äó+š®Ó6W&ž?DTÞé¥äteíþp!y¹]ì/|à¼ÿ†•’`,e"ó¼Úõ]ÊÞãÜ®[.aüe26‚¦ÜÉ3 ¯$Rxß1ü•G‰áì§›:Ô>ñ—$c†Ë5²/&Q±‘¼#—}–³¢Ñ­ƒi†\º×f8m:\ß)`Q0E>¯¡|Á¨¼·Ú¡§e ÇÞÚÌÇóoõ¯-KY€ éž~sûu¸«ÝJ¦TBSqrï1&–¡Újª°aÌ…F¯¤½™Âà.ÏW‹ÍªîÇ[î õz¹¬ Ü ÜÆbõ&öø¹_T‘Ó[ÃÊѳž:½éªœÂåÄNoúþ–³³¬‹ƒÈuó Y’Éqáoßv‰MÃhä@`ë:Ô3‰{ú-%cñÉÇR2+ Àô^Ô; ¢/¾AmY£|ÊI¡&€ÐNzëÝfЦ÷Í(Î*îKkŽ}pÈØRO_æZ"§w6Ì6V§ßÛ_¹*¬´VäüN)OLŒÊãÐ'H2X ëSƒD]¥«í[Ù ¯Jef`ÆuhÌ 6Ug¿ù镊¯Š%²-ªÀ‹ÇØ¿ÿÍóÂtSoY•úÉéŠÏ®ØÅøRàÁÛçvOì4D?~wi÷>€qØÌ=g™ÏßR^NÆÀá‘íñ˼-+PÎíéÑc·ÉÖó´ì Ó‰KŸùýcζªeëÊæà(©Ö)‰‚›E‰4¹\^k#}ÕBjѬ,‘ÂsfeEÆŸ #ÍòY_ýìËÆôêaÍo˜ÐsVYÇ%ì@îϳÍ>-h7¼¢67AUäõ ’o@ã²Gp艄­‰B¸Mé´­ªhÑ©˜yãˆçÃ3áÇnIŠ‚~ÓòÔjk2>, XpÀgvµi’LÄ’ÔxŒIçÉXŽj¯ÖÛ7:(„Ý…ù†Ÿ!¥¦¿äûtðŒUb¨jûZ`ÈN.¡ÜÚêå7Fªþa ÞGªíŽäí—•U+)ÌÀŒ3[$_íœåë´ú òÔ^¾w†dÜToÀ©ؾù»¿ÿá±”Œ…………ÅJ̘õNËoÐÐÕ¦€$ýcBÄÐ »oŒoö™×6Ë€Ñ×î8mh9®—Šˆ"šI^qɾÈiu©ÆHn`ÆõrwdUP®Xïåõ¢Û¼°JÄY'.˜S‰“=åæ6v>Žüx<4’âEjSUîákÆöÒ­ðã ®* œ[Zv.µÁÌF•ûáɆ'6ž7¯=àÃwn5ž|}å,òxÇV¹„þë—¹[ô®–esDÃSbkX¹8¼¾:"¹áãlüT’ëòÆU³VÔ¼.G:»RNb–9=F}éÓ—°McY’’.¼"onY­öÒ+(Á’Sc¨=âÁÅë¸ÓS34Íq7t$àÓ’BI2U,Q 6Uö²N=ä4¼vmÎLäu‘7€2ËÁb¿ÂyeO}}n¸@8ãž¶Û×÷ Lß}Ó³¹¥äó˜3¼÷(ÚuûyÙ3‘7ë«Ôú*$™œ–<´×óô3YZw5c¦Êo˜h‡çhŠ©ì%CZ¬Ë<~Á%(&?!ÏH>ÀFfz8{ßuS°<%••ÊÌLÖ6’Íp5‚º©*ëõ¿~pxî€áI€€7>wÞ\¸¥½}Â*0³øäc) ‹KÐÕŠßùM§ðÖ.ôâ[üž³LKÚjL·o]Sܹí€x|†èlT ³ZIå4س_Oe Ÿ›DTE1²‹ ŠxaDæÅœÖQ›lŒäFpíXŒt8=L2ö^xXÄœ8…Z«Èé¸ê.×åÎú«yõ¦ÆÄœÝíeÒ3ÅlhÉ9Åž[Zv.k*gAüì̪»ZΫ‘«¯­EœHAÀ"›j5ñ÷/¹·´kUŠÈ_¨XvsÜ¿u‰^ «Cä´[×&žy?\áÔêÃ3¥|”!“Oå–îÏ€çß·?°mYß¹jéÂÆZõ©ŸÛ6-ý)O¸R.åÌòb^k÷øÃÏŽúª2°‘Ü©¥?vyhˆK£À0DªÍ™­T7 äK¼S\¼É"§‹œpC]´;·Â\ÏLQ¦ÆãL:ÏŲä\Í\[…ZR1ÎP!ʉÚÊ¥¦ ¡–Õbc¥ôÆAçûýd³WÐ)ââTäür6²¶.ˆÒÿ{{!£Ø­ö|n|D%×vRéLOíçÕûÅôPRsN—íõLj‹kÈÃd$…žFÁDV¸`jjIãF2~lÂ\ÛŒ-W;‹×ÕÅïé\¢´o<ÎBˆ$§Ó¸»—»~“üö <ƒ€ÿ¹ßÿѱ”Œ…………ň:=aÌý7 š›’xý:u׭ˆÈsœB;°_ÑŞȩ,¾a*H€Ç§IHçÉX–:“¢[B€Âäu˜.;vˆºM0Èë"§ ¬JÚk•± ºfx’><ض!šYS1½°Š·œ€Èà€:ŠpFé7ŸXnc+0¡DNñˆý/_öêêý©‚Æ~4^]Õй¯wµ/þ<§ÍvÝR”dr`œÿîÛþöj­Ò¯.4ç O !§p_ñ|É9í¶5™W>tþ¦{ÈðÕ&43ÊjH$“Òi“÷:Ú«´•ëÊæOK.uyö˜K˜y=n áÙìâ„–_¨[_§›È9{5–ÓshˆÍQ "Ñcë ,ÞÀœDVúWºŸ"¯‹¼€Åq“’L@<ÍŒÇ 8=P˜’Ê÷ßë û`tPákHexçöÙº°ða$ó£·Í/?´ôƒôFAJZçY±e³ÑGø…ú/WNŽõ–O¤„·¤† ÝhªTì~¦G‹²¦ZM¦ns-O‹œ¶¹eö¥ÃÇnІÑBp¢ä8“}D¹NÌÛiõÎú1ŸíÅx=SÜ µåwrä×ȯà0‡Æp×j+'cñIÆR2— –€Ö(¬®Ã]m—Uu&FˆA{ºOãµídÀ~Àõ5s'ÑÊ É’d²X¢ò%z"Á¥%—˜‘"sÛ‚«,Ÿ5ƒŠRªñkŽÎxŽÅ½ëó«#S§¦£c9[Þdª`ëª|˜:’oœRÂQîÊf·OÙî[]š`wmPWðd˜rgdꃉúždU›YÛ±– –d$òFgs±±Z‰Ïò'Fo÷ú®©/F<¥ÝGùû¯¿zóå娋®-‘{ÙoX?Bø«“ªî¡?ÉóÃïÄ,szœ¾d]Ù"¹lØõkË{Ò»n;OÉmçÙÑ©Å){>Š£?óPT×U4;yÑi. ƒ` Œ/KzmZ¦«|øâz'™õÍWf0W]¶Ð7’LˆA²»½ÊM²(ë­}ñítl\îK¢334`ÜÝkDƒ¦(˜07¼ø`µ‰±‘eØŠ$òµÁ¸"¦¡…²§ÀU­õܸ7ý%ÆÈgKÉ‘l(!·”äì~{“ŸÕ\Í¢Zÿg"n¤®’ë<·F¯ìŠúgɶˆvÑüõ{JO¾Ì>x£qªß²c¶ø„c) ‹K0>¶vá}Smær56 l6 ÚQŒ‘`æínsÇË>ž EÞ¸8K !v@XãŸL“ñ¤L"|œšV¹ŸŒ…~:Žrê 35Þd»zŒúZb|½}àítd{àD’­ô—ǧ©ÊÐ%¤šÀ”o¨þÉh+"`ÎZweDN¯‹ê"…’BÄÜ/öIf¬D<Ó—üì•ÒXQ|óˆwxŒn€Q!TY”M“I¢h,N&}~øÀöKוIÑ<./§dD¿×K^¿n±æŠ&Q…G˜L/j¤¡Qž¡ÿàË!E–Œs²4—I²%!\"mœ’©‘>^î°þ õ‹7‰¼ †ŠóqšÊ|Ïë÷ßëTfÑrº@zxù;ï°€PKΦ(D’¿·“‹òôËïÊm×´‹ˆ¬d$ ¹>.Óe—Ílj„³ÚžBÞtªTEO9”P_fr¶³Yoœqz‹šnÊe\ÉdþêÁç÷ºî»yä*6?<%Þ·F†ŸÿÓy|çfõ¯žg̲bµÊX|²!þ½7`aaaañS¸©ß¹Åxþ]þ²>pnà„@è*f¥À [WQ£Ý‚Í(¬òϬ«‰»ídÞŽ¸·&Ž„M,²ep ¬ÎÍ<)¯µM~0Û ëÜå/Ô;ŽÊéQ*ä»´-²@+÷ÖôžÊûÓŠëò—8­£&á'ó_ÚžÉ)ÌÓÇW8Z—’œ—†K"rúmÒ»9 œ‹M¢­Àxìl#æ/ª»Oh¯Ö/§® €\^`¸ÿZ½gì>º{¨=i7EüËsò#_Ó‡F)Øw”úí_ hÅœr2†dtg•ì©£L5=íP–톞ïi[iHë•‚uUNŒ‘Z1Äá€_ܰÞA0üöMò7£¸½YÛÜ&igö[_LýË—ó[ÖÒf)q÷=Žö hó«"ʥΌ;é’«ÖX_)65Ùœ=6…âÙÃÃöWFë÷›Ž-ÙʨpÒ*}úcep@}¿—ùhØ9=+†œÆ§BW±çñ77ÔDA¨¯6Øb"z¬´ŒÅ'+'caaaaq æ,˜ë«´ÐYvh‚]Á\Ægˆª° ![þH, ùàWKɤS%‡ž˜¤ê§ô›ƒmˆ@™?ØÐ#0åÑL€ Ñmý?:ÕtWӘߞ¯&Æhí!äªb’ƾ>Ó¾³òB_æåèÏP±$Ù—$V÷¹O+wWö¼o¿#tš'/ìÐ{L©DÌÕ/K"MÏdðÎH±ŠëT6Qtž‰fŒº._ºÖ™à©_BçŒÈé;Öå¿û¶ïwîŽÅ¦§*üNlØ£jbÄôL¦¹§>¾õÅÔ¥ÏLR/I2€X‚Ì N€Í÷N#‚¥i»­œÎ²¾ˆ©jß},‰ Ýá¥?sÊKH*™ö/ðÌw`HK…+».DÑ”§B'hBÊ‹ÉKg½ÆãlUð—Ùt¦®I™”¡”¼þ@K mhsiC¼c«òÔ+`zcŽ„CñLÖUUÁ#ÃP¥âl3¶ŠŽ¨ˆ,åèìȂ׹e)OÄD„®‰FF4ó6œJanxÖœ0Á˪'³âäx(r<.»Á°K:wxÑ%ùIø?[rù‹H2_$ ØØaœ@§°åÅlñ ÆR2+14Šo^ƒçrø;¶”ž~Ýñ¸O[!â?5Lmì( „DTE©¹ÐꊈSÑØ`éý±–®\i⡎ô¹³\‚)fuÿO4lˆdÖTL7’“CzåZ&Ûì3Mx{jõ-ÑK;e OÙîm—&bÔ® Ë&+¤ôã}G ˆ¯˜}'Kh™ôßÜŸöÚaD»ÚÌî:[€'_0ŸýÁDY¾‚ÑŸ,/ؼ!#¥XÀ¹ÄeôL²séˆ_:Š\JLO:lÂÚ:1/{É´Èã_¿Wyêî–k9M-;N”ŠrYÕ Î_¥äÓ´’aÒXQ¶5ºe éZ@ãô”4.)9FË•¯M…#¬ÚåKïj:+ÐÊ×÷­}¤uìƒÉðý-ƒ±4÷ÏG"×Tñ\èšêlØ-ÜK|»J @’©é³µJ‰§è¡i°>4I"³¹¹™¦fÏ$–J ÿwÈÂâßKÉXXXXX\¯k¾6LäÍÍmÚ‘^û¶uËÆÄgbhοK •´Æì?õUäå+™R™ˆ¹”/¥úìíhlê•v•5ޤ˜òCƒ?<Ñ7Wd&tL…¨X=ž/³‡b›B—ðËÊË”Ófì樂k‰’îzß ÓÜÚeܹüËçÈ¿ûóÄ}e‘ÇB¬„¹÷sm;<—Nþ$ÒÔ{gÉ7_só´Òê«uÄÓe× è.UTq…j.᢮ަ¹µFzaŸË%ŠÕr2­·…øÓƒ!Sæ°64Áå%!€¬D¥ ô¾Q‘$A ‚¢H†F$ºË­(鮋0"—£‰… *ÅÂ]“ÙdöÛ/ëí•èþl9kk £ê¼=6BÄó{õ¯îB˜VJåËJp€×å°9œ™LZ.\ÙÄÌþYâ1Ï¿‰’M×ÓÙ¼R&¢nƒö‘xAäñ7¿„xÖÄHÃ@É …Q¹, Nªš”'‹q›º˜Q)i\O¦r¼`?•·­v+m…?Z{¸Œ¹b 8[\µ)Z"Há‰Ó³U°+À*ëd~:]§¡BÐü¼‘(làÑih6p¨bÃÀ†Õx™¦é‰3óëa U·5â¯þ²dŒÅ'KÉXXXXX¬ÄøTEmªV¾û¦·µ– ,>Q\7/ZZ‰k,B—Õ$“ÌŠg¦]»‡›"rå:¾ U¹STW±DtAc#Üüó~-?Ô9øv_%`Ü^9ðQ©=DÅxJYãß;Õ°²Ï Ǹκb_’>7Ñ$ÉDÿ(ó·éU~ýÎ-åúj¤h:âCOÿÌñø]E‘7šÄQ‚€ƒÒškÄÅ~t¯$â‡âÞAê÷?uÞ´sá)¥‚ŠUˆ1Åà'ÕàÑr=©A“¬&ÇŽCsÖÊ!@ €™Yq&ŽîsK•ŸÚ'6¢Bnó ?ëc>ø­îbª|Ï»7 F—v6…~}k î]£6 HÏšØ4´¤Ì¦@¨EwĤU%+öŒ1×oéžB¯|? ýÑ£T} ©—´ç^fzó“§ç–Uïé0k@R/ëîspn§]3Éx2%Ë—NmI2u¤×–.Ò^»Q,çK\<±ç—Ëh\j_ÕŸì©÷R²j ¤1 `ÒY‚Òä²®›j!n`’5»FÛ5‚ÕL”ÖíY`T/á ÂRËŽ”é|G¯(4݃¤e7ØK£feЮÊxJÙ’iïÚ”b›r%«¨²ùÁ,ñ‡·%EÞ87-¹À·wWÜ]&à–Oô‰Ó)Òë2»ZçoÈÐ(¾¥óßôÞXXü;c) ‹•85€7v-Vúˆ¼±cƒôÂ~Ïïܽ„ÓñB“ÌaVå@+=2/)ôÀ´óû{ëÆ55ùÿç®Þ]©¢Œ æ$äR#â%\ÈFe;±èÈ[¾eÕøÛ½ã`¨pZinçÎò´²5:øãUØÄíÁ‰å6°œí¨ÎìÚ€@’©qn ØÜܪüÃWÎËÒˆ¾i5ÑP‰×¶ªß}Û¿c}±.R¬`ãeíU›[™³Ë¬’Œž?HýÿåÒ)7ð£ 0š3]1<Œ×ùˆ|’»ßTÁÔºZæÕQ[#,¤¹DÃÏçØœKwŸña³ëæÜKï:þän)gºö©Wo÷c}]Túñ‡Íìl>ïeƒ+§JÐØFçMª¿×v  ¦7F‡ŠÅ‘ôoÞ ÇO™¯íÁqßTGMøØ0×Õf@_ùîþ‹wRªy‰|†ÀNŽðؘ’AŒÎ¤5ýr³7oõ`ïe»¶0žàfóD³ÇøýÖ4ºM@¨5¬@¥_±óšÈiwµmËn™A±|{mJ‘Šždhcc¬ë”d¤&Å"€àŒQ<ÏKèZ­cÖ­Œ–’¨˜‡ÑQcdÃrCІÀfgŸ^ö4™$Uúp‚­wh „0Æ»ê§޹¯iÌvÖÏvý/O…ý®eeð`ŽY¨@ {p:»¨!ǧ‘×m—Y|’±”Œ…………ÅJôLâ ªSê¢RxØ6³'ø[Q dƒŸƒ½EÆÐ*$›ìÉJ[Ì À|ÙX‚ð­qw‹-m5L×j£k5.Ç¡¨ï €D€ñ¦`î­cî/ÞŬ¸)`é¢u/)•N—µ+éŸJdøý“ÂÿûÐh}Äy _|ä¦Ä‘±³^­«ˆI %ÉtQ¦¡‰?+9%f®S+`Ó=¢Vé‘l¼~ÇJz’AƒL‘Ð@ užÂºYV›§0"-jèBшͪ~Ô=îË«ìGiOˆUk™¤:›t²ÊŸþ ZØ`™pqºÜuIGžãñ(®µi€1#r›*Sagá¾kJPRÙžhhª,E}ê»ÃsJ&1Ë6ù–õÌžvÜÝ2EvÑŒeè}ñÝSƒèÎë-ï2‹O2–’±°°°°Xšö(tŸ2ܾÄ[·mH?ó~äOY<ÿ±÷™8ZHH%˜*@m€IÇÃUI¡&íípmƒô?>5vÁ¦èzŸ‘¦±9dKçRRa/|â.°êÃGŸ=PíT•3•×Ú2 ÐÊ5£¯ UßßrV`.–(^¤OQIÝsmCþ?z‰é¢€cDNô†égÕ ‚\Sk£NB‰p#¸ð)øó¢oÿÁey_€®Çá÷ûxo…\ÓŽvÊ%Æ(—° +©ìPÒw\uäF「{S'{È?‡Îëœ `œa˜÷Ž+{q£e׌ÊbŒ×xÇ+Ø ¥b`(M*å0ÉIˆÍ)8µl«½øíI¤ÒõΜ[žîõv}å1xñuì˜-üúÏܭؚزfé-1`xÙË”“¦m¨À¨—›†YäÃ>ï—n˜€ÎÆ ôÌžY.oh-€Èé"§Ï¥&êÂ󒵤ÐH*3E…ž˜3 MÕÕØt?¯¹­Á•­pdýl ,ª†Ñ%Ì@Rã‹e h’¨­*Ϫž*q YÒ ]34Ó°‰¶Hˆ „éÑi¾³]Ì–¨®òèOß•_™qxiQذ+RU‚Jñj­[€7×'omSV€—Vޤ•z|áIÀ”›ÝÒññð–ÆÑ M޹êBÙ¢LµU,ûå™Hñ•þEÕöà©8  ÀÐ(ê†'W|Ÿ-,þa) ‹eÃ]íK˜H‰œ~m£ttÀ{ÃêE¯­¡qúk;b \ÎåseI¦&ÅáÏ“×6—vnJ.éȤ!.Ez;”ÃFA'.0°„ÁnZq$:çÉø"«>|ÍØsÝ5}¼«šGØðÙr7TÌüèTÓgV÷/ˆ™9kï±Õ±Å[ðÎ/mø "o„½(‘ánEà´‡¯ûaw¢ÈÕÑ©Nè9C´:ͼÝ&MÌ,nnÏr¡wèŠ(•™·NG÷™÷­ÉFÝE(ZRgì#ªv«‘œ1• ë¸J7<ëÿÉHðuB³As¹¨CÞ_»n\`UI&j 3öüX¯ÚA7w½Û]z|íü¨–|†ñ™ù?÷@šà $9“F2ÍŽŽw? ÀYŒñsoEðûWçiÂç‚é~çcçÿõ ¶Û`ßiâÉ÷Pã!êέF}õ¼¦e°æ¢ •²ØÑ£x¯âV@2+&$¦.’Ÿûµ³! @<õ> ˆXÎOb®ºLàT¿jƒk,Ö~Ó,É*O–qÄ>¥œ†˜ÉB8UtÉyΔm Î" ulLY`Ê­ÐYá·$åoÖþÏ›5FRfK•íð˜oï ±Í¯¶Vjv›12žÍ9^ϧï-ßhØ5¤‚îÀY?,= gxÚq4c[o”JhN+α¶jæÇëÖV1·®ž~ö`ÍBÙñ·‚ÍtoŒ_ß4»üm;ïäŸ<,%caaaa±,owã7.]gßÍoek¥èwÍÓ…ây𧻝¯G)‰,éï¾íß¼ªÔYW¬‹®ÔA1A×Uk£s?'ÀÀKOT,\³­PvÉwN}°kä¹cÕ'íÑ9%5Þäz…þawÃC]ƒƒ ïá '6ÍÙz±lHåΎ˲Qž£³^ùðŒ÷¾ë¦@`Õ‡Ö §ý¯¶ÞÑÐÛbö3«010¯èö N £ÕuWM–Tö/>j¹)ht‚Si–I¥ J “ ²¹X§õ†ÌR6ŸI@ïlõ‰”›¸Ãú¿¯9š˜eþù¬ë[_(€BÙŸ;ÕTŲÛ9jËÜO|oSæ­ZÛ®¸Ñád—].MÀŒÕ_Gä¦(µ0)…^ þžô2nòÍNNWR=ú ³þ¯¾ð4T>T¸ñiâµýÄ55ê®õS"ÈÚÛ‡¢ð Õnm?ÏÏ-â)"Âû½ýl™¼¸%†5U𨳀h³¨, "Ky9V)rÂ)¢yþP;ØíÙv¯Ü(:ÐtÁžU}³*³6T¾»3óÓßV›7IZ6ÄoõV< Å–¨Ô;M>ó‘úÀ¹)˜© ò5µjYQôbÖ£OëbØã!Ö!]c4IÐ .3±°½7»mŸß0“MšSq"à[Tb[nöHÇFC[›ÇWJ{{£g¦ñ†–eý܆rÔBVÓ.€ˆ3±ù°¯í'?sÕg¾,,þSa) ‹eÁØ…¥•ŒÀi·´Ï¾|"ò…mó6ÇÙ"Yžà%™Ü3$º ÂWk›,hõÀÐ%×’§ŒË˜ö2ÈÖbž^òH€Ë8íÁuco&Äts§}¾§ÞŸ>2íþ_ûWíjJ~víðœ Ô¿~TSž…/U]AéWÈ#¿Ýë[\‹)×y“ˆ"žZ{Ouo„œîóU§zGàÅ7YÀæ÷éO¾L·5ß冕%ûÛ“«kþ‡÷Ýxóõ‘¡š¹„œ•¢yg¤º’M‰Ël MU9âsÇì;iû­;ÔiT•ÁÎR¥­#TècÖrS-î±!vu½ªøcÇ?c·ëãÍ_ØÚ¿Ä&Œùðšá§€sÉtùÜO6?鮫W²Ê þ¾ÞñµGbÏÏ5 A¸œP_[+ä/´è²q¢'ò¯} Þª^þå_L2oKÈtmè<%SÈûÖHnö½ª>¿iPàTœ„lZN0²%@† @œ Hqå%æ’u5ž$Ôxàõ¸)ÊöÒ{02›9ãÿüÓ¬ŠÑM¶›^ä¿£ ŽíÞ³‡¨½W‘³ETÌdÜþŠ(Í TLrrŠ+§Ü‹1”g°÷¡:ÚTf±8«¨AGm`:A{Ñ]mçå”ÖÕľ´v] ³¾.ùìÁê!ɹ¥ÍÙ†gœŸZuŽ Å°¹`aw&Fܹåj’ÿ‰°”Œ…………ŲÜÒµÒ|ºP60퉻kƒ8=B¶Ö«Ý}ÂSã[ËÛ¶fÞvñžËz#£Õú¼ár‚!œ^îȸêŒp…acéœÌ§íˆöÿ`ºƒ.… 6 Ñå Ñ”7ÎbcÞÍvxÚnªêýËÄ\îÌANæl © )·ùÇ ½o¿=Ô,kóâ›ìº]€;·{Ñ»n»¬fý´âzfhÕo´õíïqþÚºì’exs(&&S5>m¿Ö5Ó螨ª"XPs%5ód*Ø›gª`¦‚l#O ­õܸÜ]£óôP`C}ù£ZåèCÈ™Ì{ýŽ‹féèÆ\¿G q)5—hË1Lú¿õÞúÇý½µo)‘G· Ìu}ÌòÈÅÖÄA¥Ì›©þ×áÊ-«Õ³)zï1|™—¿$FÂ÷u,z?°zÂùB«Kª²ÇiNR~N(KŒG¥ø˜XY [¯n!I¡ÆE¼åw±Œþú;…Í­rµ®«O5†Ý&É›ˆZS€Þ3©æ5Õ¿ÿÛ¡ç~{ê'ÂשõUªŸŒ¿öR¶¦ÑÖÖé)p!¶œá”4…ËN#á„D ©Àåëp!ÐØnÛ#¯§‰¢ê/e´‚›^i«®òJG‡×·LÞÒ’ Ø\Ëív2-Tú.ô4k aIF±ŒC«´Ì⎥d,,,,,–Åç¾Ä·¶MýàhÝçƒ8“"ŸOܼZû_Ìî6«" Í#òJ’cŽ,Ñœ¯¢EÑ&<¼ÜÁ"€¼T–(9khi_.J§r_Þð±@+Pïež=X &î¨ML$yS7*CW<¤. ÷Å=eµ¸Ç½ŸkseÆ><%ß½Ív{Ǽ Ì™T"­_0dæbfU÷ã-Ô÷NÅ9 ‰Žº%:û˘›ÖƒCŠß0 žIÝ8 9 Ò%VáÂnʬ$'fN©ŸßP çð”Òl ùnÜVË&q%®Þ»šÜ¿oüSÐ~á*´RØŒüX–[qÖ7~à™ê?ßÑ–8ïšv‹OTž—4 ÏŽ´’($ûþèê)»·iµúå }5‘º‚¬Ô¹Œ¦|v]]…ú™YÙ&§9Òg¿Tí©À1®®Àvž ês=¼qô\Yu9H =0iÀÃ1vß(ÓàÒ:jÌk7ÚHR*J±/}zþ0‡7 V1ˆ‚ƾ9Ö~[õéñI3Q̬»ÆwÏÝ®Ÿ¼šÝý³¹Hvµ*w^W~ò…2]H¯YÃʬ7nk¢5ɦ¦y# (=GŠ6DÜQó±bòÒušõîK¹]¥ :Ç“Š—Ë®«M<{°z}ƒMóà4·ùÙ|.?t|³}is¿ñ5Óâ“¥d,,,,,–¥*ºRNVmö—ö T¯­˜@€¸Q x585;§”´ÉÔ¥»P¦©ÈBB¦. ³vXbŒÌSº}½wKǬ²Áƒ{ÒQQ^íL^çG3Tÿ(ÛÙ¨ÌmøáMco~Џ…ÞÎÔŠ!ÿ+™†`æ¹S[/z½Ù6ê“ÿØçBH¹a»[5D&7"ï¸NÝ{ŒÝuë²SA k¸ß,´î ÷eãÅÁào9sÁ*pqìQ£«È©-bGÈ Ò…´§Ùih65SRRÝöd†(zF4‹%ƒÎ û¹µU.2³zâLmL\[§¾¾%ój:ßYtœß‹¯Ø4=¨dHªf¸U®ùøå‘5÷mÌžð­2hæVÛ¼Œ‘dª¡ØçÊŽE3nà#kšf?·jHÌ2Û›qgþÜ[ÌW>»lçú¹0šb—f­$ã´V\£4—K*…òª3D»BqÉü›ãß ¤êktÔ$¡ï­ýÜú‘•ÅLI¡cY±P¢†üÜ—Öìµ-mÙOoQHN´+”t<—<ïëÇóÂd–w:tDê¢tp¦Q.ŒUÙ2²lçü¾;vègOç¿óž°}šÚusñ‰ûa÷@éjŸæÊéíŸbktµ-™zá0õõ'JÀr˜‘}3…kBŠÝE§ËΘìÌ©þt¹ÞE–}|"dHʦ ôòÇ‘‹+‡c®»/ʤ„½ •ˆSÃÔ[þm†ZXüGÀR2K³º‰È_z–#¬«Ž¿Ó_UÒm€Íç?p|éÓé¡Q€¹çÁ>Zæ©R™Y!¾Œ“UvSZHÈ$ Ð #+¬˜3Y’ |aRf°T3]vd4f—|´ê8O)Pcp}ÓélÁ½mmN½mÍÌ3û+³h×ZEä¯8Q °å ]Ǫ‘dâϾË|~{úÃ"5›‡ˆ‹BŽ ÎÇ ä7à,›HSïÒñe»Njõ;œ½.*󳡿/os&iôÆi’Wþò‡¨µš#(fK‡ ä6U¢¯_h‚š£Tfâ9[^¦GÒ¡i¾Ö¦5û%¯nY•ž›â²é 0‚³Ÿ4.r„ãx¡¬Rý)>ìÈÕ9'S•*ugÍÌdÉSÏø| ÍÚçAþλ\,çzüŽüŽíÐ?Œ_ü™¹ë®²»ž¯©¢`Ìd‰z¨31´µÃ*-³øäc) ‹¥Ù¸Žzý=#ÂÿJc¶¼&œýÙ@õ¶¦¡F™áIa|Z^Ý\´Ê ´TfWP2“dxµvrá× ì­D+y"“$ñót‘bòÓZðˆu@y0uŸðñ¤²Þ•Ͳ^—4ùþ1ç¶u¹’B÷O9°abUE®² ½Ú%Å$ǹJ&‘¦¿þ#Û° Æ+§lYdg‹¹J·Ã L5›y³«YÝ×Íï¼y‰çè"8Œ£]ì eOÇ*üö<è[ ý3T˜ÐµJmÊCf@ðhT½ÆˆH-‘åR0Ý}Á©†§D à)€ Ô åÊDzªGNÖ§ŽK¤«ÈºÓöi–É⌡ж WéÚ*¿u¶êÐ+c›îÕ~.f°nbÛò3qo zö˜˜ðW¤*×2) ý'ºmJgnu¾œªßzÖ»Keøùx]ôUA" IF]«ŒçÞbv®Ë׳ F‘è²ä rbf¨ ûÇKÕª ÎªŠ n—ÀØaƒ˜Ôò¨¤öæÅÜ`"E|õŸÌ[ÖÑ@Âô zâ¾²TÒ§SüþWBá' ê‡'n¬‹ÊÌhZ<’ä«yµÙ'98us}òÞµËJsä¯òÌÀÅoÙŽ’ÎQŒÆ¿ài¥Ã7ñþXÓ¨TÙÆ“…dÞ^Á†¢Mjß*u&Æ<ýºss›ÚT'†¿û®ùÄHVÒ#©C‘{¶ Ýf›C(î$²‘€¾ï„йjq9žRªJ•#®Î†_vnjŸ©²Û^<<2íÁ¦Ùì)V¸ŠµÁL_R|øš±‹wëuâPÌhÐR2Ÿ|,%caaaa±4¢€î¸‘zòxâ~X¹à¾Æ— ¤½{=O\?»û¸ÓÈÊÞ1E9¨2ñK¸?g‚j ˜³ ž¯;JB¨ÒKŽ‘™#£»«™ÂœwÙ¸Y=¦ùuªÉÔ=®ãsÕVÓæ{]i9lgFé¾w<ЦÚ\Цž“ožòíS÷eU=KÈ^xk²®=8?¸3‘¦¿þ‚ãÏ>“ŸK¹¤âj“~&CFb%¨³Û eI•K!¿\"MÏà-P¤ýI2¼ºÜË %Ur˜õ>ÜzÂ$Ù".‘vVÉ4«}œÀƒSÔ '.åI%CÏ.ë÷æ çÎë.0R&˜1:ËùlrÖ“ÄNeµÑS=S±¸›&¢×Ûs…+?üñÄu÷iœT1cc)‰©|Þ6ð‘²ãQl<|@Pï­8Ð…ÿ)Ýqcàs*ß»"ˆ\‰H¤éB‰È ¾TRÓòê€0ï¢2Ÿ ôFÃÝ›à¢T(T®ª9]»}î«E ú«æ±\еÚÀ¼\”Jpø:5€¿ñEÔ;LU†4¯ˆ%p}µð:› %…ŽçlÏôÕükOE¥ Ý½jüîŽ%tã`’1]„®áÌÒcXi–ŸHÑž 6T!€B^sÄ'&ÃQ€ª6ß8"íEÎ=®6†½S[:äï¼ÇŸM OlC]«‹øÉO|†ôÚx룙ê/c.†ƒ'ÔÀ j&–_Zä·TäzcO•VGrÙ<€ÖׯãYñä„뱉ô»+}²WÏý»í„‰ñ/bgañŸKÉXXXXX,‹(À7À“/‘_ùµK´ªo¯éNµ`3v›ïMؾùÒF•Y–¸hêý<*â„gzhá•Ó&–#£˜¼‚¹i= #æ ®W&‡DžÑ|Dž³„28PËôÏ¥‘T‚Á¤SP 歹ۚF²y85¨wÖgž9T½5’¹}Ké™=Ák¤ÎÆeÛr–Ä'dý¢–V\^.;4Áï>ÌýÙýùs% :¥ÞiÃÛà÷Ǧ§D^ßÚ)Ïà-&;ªK„½){bî×î\Íí’êZ¥âÊR„˜¡|NJ±`ä’¸\€Z—†§mA§¹œ0+“lÙLÛ‚Œ¦xf'*÷cÓÌúWÅ+VÈá_ÅãdôƒGo{ Í䣹HkäݧèmÛºûGÏéë‹=Ÿó¼Ñ/>ø'Þx¸¢GR()CM§XÀ-|¡¤—r-Æ„³4YO¤"Üñ¢-  Ü¢+³¼7í«½ïñ˜ø!<: })nHÔ®ôbC¢øBOZJo¹ï­–’(‘@p„h0`€Œ7=¶ý´­6Õå}Vú¼ïC7¦gz†#6åïÃDWVæ­[7+bî?Ï9ÿÓhRX%ñ^ç —Éä­~WV$4£ÊÞ·…§^ë€6<Çl¡k[ÀIäã{[°CSðÃw,íc–ÏÝPøÏê-›ÈeÒÕ_—“ê‰XOæ5×òÙ¶Z¦ª|„IZˆë¤xY¤¦ äà÷îÞ䯯ÔOÎ4lj„Æ@¾1ï«u]ZtÖzÅ…4óê³Ù®vED'¿–¸x{§é¿lòSɘ˜˜˜˜¼Ñ¸E@‡N’{·¿_1GË·Õ•ãBC_ýlR¬*žiÖ¥¯ŠÑ&mîÚ#dí…!5¶ª³Ù8–Ò싺ÍCÉ  1p@8B˜FR@PÆì8 æÁ0ÐpZ#(L’G&ô Ó˜Ï-D=à›#R_ÂÖoü‰JC=ð¬öÔÞä³GË{ö¼).VÉÈŽ…˜v|ÔòÄޢ߽&c:† b¼E&«qƒ0—=ð.%Ó~r¡TŽö» Ü5$þÜ0$U¦êÜ"ƒ,³Hvج"‹W*PNÎëÚú¶ïÅKÎG·½§{õUŠMZr®Z‰é–ã/îú3ìÎn'k)ž­{íGó÷~ŽÈ§H¬D,“lG³¾0òÙÒ¿ c{^Š|}ÑÑXПóÖ¡rÄ"Ôc“a⸀ê*lc oÍK–aÛ&£éÎÖFõ§ƒ-Ÿn\³ã-ºÔ.U±+3ä‘sÔrïnÔ»Zôk½Ý*Á&[ÅËàÂqô"þä>Íï]ØŒ¥ð•§›ž§£u œXˆŽÝß6†M´wy³¥*ùÜ…èæH~]…ÉUdÖ+ñk~–PÞ7tCRn·8¹@ZhÃÐUXX&\6d¡ä‡FWÄÌÂB¢ng½H…‚veß­84iLdؽéûÜ» }çYµ»6{ê4QÁlVÌïE,&…¨åµœ Íi¶Q¶+B•¹¤›YÕ‹9þÓò'®p›ZIžU¶Õ•ÎÍni[€…ßWSh ”šÂ°»‘Lf©X‚OãcË Ãã0SËLþC`*“ µí?J\ÁºÞoKÝb¿^ˆ¶_É¡™eGS¨!‘ÔÍc2攀vɪÂ@ªâ(ÓäÙî Ñd£Ôð%èâ¶PbBŒêÌ Ç ‹Ï*> 3ÊJ"#¬/¬Äaª 3•ò¼4áÓu³+ÿd·xj/'l*J ?Ø©µ6h;;©cÃjRwWƒ„¡Õ¶“?:À|– Z;,VF]ÁVþEšb¼‡h²¥¾Âo/X¾öð̓H+àåD•ÐíºÖÃÍ$Ë·ôU^<âøÚCiw¨VA˜ž˜ö¸œ¼ÕŠB˜Lƒ QP•Ù™î%ºŽ™¸½3¬¼Oÿ™u(´E¡-››®ëæ ©ÖØ~<1ŠXš§Tù¥˜ Z |É]›R’zåZ&ŽãOu¨sÁ³“;lûùº»V·û¤`½X!†s™¾šZ.«±½vÎ  Nï5Þ‚ºÔ.xWÒЫ’¦Yõ{ô3Åš=ž)AÄö¡ßøÔÚ]˜ž§ß²i¹u£òÂaë×ë”X!0+Ø?Õ~êBEc{kšýÙŸB½uëC.EkƒJZ]ùIÂx¿  mu •JI¦U SU¤øŠ§¸Íj€…’VÄŒ¤ r²ŒÛ’T¸ž+ï»U^Îac uܰþèM_€Íy[˜öȆ,ÍDZL{{”êã=MF]Ùñ*d¤;ûæÿ¡L³¡ÃV×b-1–â>³=](cƒÎÝ}™æ`îÍÑštÉê³WÆ3ܦ¦Ô5+©5ÕhM5â+ƒd À°º°©dLþC`*“€çо[•ýGÙHÐxŸŽ(%Oåíáðÿ¹íÊÏ/Ö~%T !Ñ{õ´ªD 2/X¹¨wz\}y±'ð:«Úâ®–üÞcÉé+ÝÍ­åzI†eY÷ÉQ?^¦4ÅB °á†¤ÍÔð ±»ÎXÄhjÚäDéò’!´)˜óg®mòCÛ ¡ ‡–ˆ{¶ŸÙï*«ã4½58wb2ÒæRB dF)À ŒÀom¤O S?¤h› ˆ¨'H'±ùl€Fà˜“Óm”¬ëš“Õ4];ôކiê~²@©š®jk)RAª8oY]+©NÊ–Z¶JÐiˆ¢ÏNêB> Ùi æ¢‹‚ì|ñÃê90äztKêƒÏ»†ªLS¢¸TôxãÌV#€ïÍíæÕ‰ÿL©J˜«Ì$ Ia`1ˆ+y&ñÞ0”|]Ïð¿[¼¼h7ò/í§:üÆÎõ‰>ÙïÑÆ ë‹ïkö°Â»’FDìÊ,uä=þæza¾Xý‡7ù/Ý!_+¡ûî«ì·>µj;æ÷h!7>´è#DGWm¥×cÝŽQ>¹az*éþ‡ãmõ,ùìÐp&Ç5bò†oœÌ:Þ¡ EÚêµV :øt0l Űh@÷îQƒDšœ_&²%ýYjx– ¹Ë+3vË?§Ã5öpš2€ 6µåŸ}Ë¿©äY¥7R89è Ó±êÍÍ‘¦ÿþCÒw_eÿÞâ&&ÿ1•Œ‰‰‰‰ÉÃ[Э•rOLxÛâÜtÚqK”»#(­¹µsQqÇbF-:g’܉8×â2€Àûºq`§?vWíj%C 9Gtg3¹æZ¶bJ6£y£T¦—˜>(tÞi6¢”®0$aÕŠ4&Õ¢ô±¥S3ê`½˜¨eùô‘BÐ&?v¯<aJ$ÑÓû Ó *Ô¨ÅR”}·U£u×[‘|ýŒËcÍíÙXX UUÅp 3 Rb’ˆ%z¢l;|ªê'¤M{¿ŸQ)Ñ„Ác’PÒ «DØx§K•5D²ª˜&-¥¥§ùôÄöò{ÿ<²H’X®¨aÈ8žm±€Ôd)ÑŒ¡´ò/­Ë€Ð»G­Šk/ €(YÇRoµ¤6“‰ „2À@¤22YŒ#aih:Ž€``¨ Ã0躮éº*Š!—ª‚*Ýu”z0…¬¯ä|è¨t#àÃï~ͨlÓøÞï^—’‡_|«*Lƒã7(Øà-h Sè„g“5ÅÁ±L³_ºKè¸î6í?jùâʵŠzS?ö«LôÉš1 µZ äå‹IÉT^®À1Jo]"䬟ò5zø¶&i‰oñ(ËNiéÃLÉ xµ#<"“—EnàpMn¼q>ðìÈ„|ËGâÍ57ã@ÂÞÒ`™üüCÒ?þœK‘ÞÐçÐÜ\䩽IžÕ€çDëÔh*HdZs<µ'!ˆD¥JΧ䦪pfÎʹ¹W&Û›¬eœ3¯¸w÷¦ŽÊPܵ˜·ÞÓp“\ÍÃg¸•1úà^´&& L%cbbbbò¡ð{ô½Ú3¯Ù¿þèÍ‹ãyuÚêÌé|ž¸’¥‚/ýÐßæFÁÛ€ IÐ`Wgþ‘ñ•“/Âú o_«OX6Q|us)–E90£z›™Ìüà¡á”½Ã6ê$óU•ÞBMÏâ-ËyûR9r$éÞÎWíÌgÛ.@QŠOd|M»¢!" âêgݺ=¿ÿÆgôÞÆ¬£H>76´¹Zóíž-¹Éyî{¯ú¾öP8Z/\ß4F"œu·zCîøI1ÒQJ“*iEŒŸVHÇ.È…àhÒ°R¦Ë4¨¸&R†ê¥DŸ«Üh³NŒAg8nÑUÁ°=À¾º†) CEÂ]W È„À@ Á®›¶Àûà¯O7þ¯í'*l@ñ6ˆU0 kâj^6Ä2é$‹v"«FZm/•íFæuAsåd«žÉ§e›hµLØÚ[üÒ#翌! Ã1 €`;1y?ößIŽù_Ÿ³F!êJDTKm$l¨¿ÁZ€¸Nʤ*ŽV÷û5½)SbƒUÈËò_~I|æ5{$`¬”ÀKop0й–&êìëÅ66™Ð½\ã£ÖíRU»÷ÝàžÏ^¹«K©4Œcµµ¹9'™ù03Áx—V-€4РФ²äÞŽU5³ìo —àÖðÔ«sÝlyœòÕ±¥E¨¯±ÄBNe,ié÷‰2VL¡Ð³‡ÃÛ›+ýÍ×™Ëñ¬´#A¢ýnÑïVšjª°!©^š7ú»rP²¸ëà‹þ¡×'¿\—û5–˜Ã HiêçS£`·$l.RPµÍ¥Eï©CyÑK[,«·Ì9¯Îj]LÃ1Œ|¯µ›sI‰dÇG?~§Ä[Œ}[ä8>wwŽ·èF™wfØ?þøuÒèt®å>ÿŒB ÇGÝ¿«“`“ñ\¦¶óš3s|­ÃÁ¡…Å—G][ëð¾ÆÎÄ3hëŠ_œj`Œ.ËŠ^RYp¯}5 óý3¡?ؽêݼR3óóÙNÒ Ôe·cN¯WÙæõî?š2ôñ= —×þãónÀ°þèuÆ n›¾œã®­qZÈñ}uÅÆ@ ßäN›ñˆ9q‚™«vpÒ·¥Jö5¬~AÄ¿ý3þ[Ÿ^8l^$;°”$Þ'ÔÄä#ƒ©dLLLLL~6wU_?í¸8aëo»¹ÝSg„p-£;øÜ£Þ2cÇùú n oÐ/^{$©ÝFy¤T¿¤ÚÚ-™Ý"jì©l‹–7º&D-¦Â>BnôÒŸØ” +«5ñ,.n²Nž)µüÓ[Þ§7g£õ:_[ä¬ÌE_-æ:“#“¸ß«ÿÏ·\8JÔn õð‰ç‡Z6‡ó=áëo󽿭Ïìw>½¯p­˜$ò^ÓDçsÕoNãy|ôÞ`“kwج¨ï¡ B;ryì0Ç3xkûÚåÉ=EDqÍ‹I Ëá>¯ÚDjŠÀƒÜvl”yþ92bŒU1FÃiœDP@R,a¬…à É4’ ]yy”û'«* &òØd®c$öÕ}K@Ø  R–yÂ8qÛ”¶t‡käÚ²–²5Ç¢”„…ÎljÖèìßë8–¹ã)ÿ;?Å ©Å½O[‹)ïäÛPXÆ«£¶-ÞÜ8-ÔøÆNÖ;'k9HRàÖ5…7\;¬ 1Ž÷5A¾‘Q¹­(<´µ´²ÖŠ;EêGoúß™úÁAú[Ÿü®µzÖR —p*9êM8ŸsUçp”TÐé•¿`cdàUº>¨Ý–œö}ÿPóg¶Ç8öýL,tÖA–’ÚWJË Œ¢ë Xªý÷—™¡+ò“ÍùÏlÀ~rÎ5›æÞ¶Ö¾ÆiÕgR\ß5òæÚš~Ž–7Ô'.+û¶)?¼Xkèºß¢>7ä95c{dòÏYÝŒûâíòJ/£CWÈ/î­N/`×Ê8“(Ä=÷Üãóù¢Ñèÿ˜|ÔÈçóýýý뎳ßùÌ~ö³ÿ;&ebòo…¦P}@ùågƒO½1d!Ë0ŸÀ²rk‹<£øœ‰‰Œ×áÈZ&¹rÎÞbу®{"~Eoœ*ÙDÜ嘮±$ +9²ÐÛkÏРJµL}•³¹ˆM5E¿Kå2c¬í s9ãg‡õM»êBY _MÃNÉER.!«‡õH†8|Þ9—1Ô²°»T1ꎦ¹XÁõÎR}‹«@×%›½ …á¿8Áu5*4… •·üÙ¯k”l¶;(>ýˆÊs@Sh1k§ \.—ž~w}€ç@Q ‹mPZõß¹­ÔߢK\ðâÓÐРªÊ}ތɘ˜˜˜˜üfð}߯ò‹'ÜŸ»#½R¾|-ÝMF®Š«e£}2ÍO­-.$RkOÇãàÙaœZwUB·ùQÙÁ(#ÕÚJ%êÇJƒoТŒU|Öômþ)[ø»™;%'V,¯¼xõÚTÿÖ?Qßþl6Oq¯%º ^;2¦+Dv†'i§»>«áº”yl‹ÜX:kªªìΆgºî_æ:û<ÙNwìÚ Ú;¯?óšý‰=ÔwÞ ÉÙôö ]kÄ[ºJçÁFnæÎ $/%f¡¦Êù'¦3@¸ÓûīֿúºMP„ï v0KWõaù_áê-1²ö£h¡è÷°Rì®ׯwU¦_›q´…Éì—vÆàð9çÃ=oÑ6vHÇ QsXAn¦2·8çnœ¡MÈ7ŒþRJdóª=ßWJi§;>e×g1’(Ú70b%×ÖÏ¥gdS`èD²gÇbtkõ|g·÷–JY’©î¶Ü_=X;™÷ šÎ’¾,øbÚ^iø˜I$.=ÒI$ Z1Aý_`AÄÆÖ&:ãfÖK‹LV傾¦ÐZpViÀqØÆ_¾z$誜ôw­>ǪpªáJr­ÆXŒ1¬/îêkL·„ .‡fSµwõ%n Îè4O(Tp»Z€MMÇ–óøX·7x7±‹© ~c[ÏzGrÀ|´š·ßîϤh/WÆ£ Ú—îÆþáó×åo|F}ê–ÅÉeçOÖok(ö5¦yVb- o6åÞXïbçr3CÍþ4Ç}©–P>‘³¼~Þzh:ëì¯ý­ÅÓè®ÓyųïÑŒÖÄ䣅©dLLLLL~cš"ÂN‘zöPð«û¯=n·B¡dÜ2 ½xÄñ…M¾SêÚS;˜oj­îþ§±æ64»n´¤¬ŠàÇ• މ¼êºT¨¹¬úÚí¥e°GùK‰Ã™dën×GÓ˜:A“h5Å(•ÁŸƒþög¿×ðC¬¤°gR­[üWÖÏXS^: H,мm‡×Nç;=™×fžê¾Ôå›or¦^Kt'uû6÷Ôµ}Ö£µÒÓ^åŸúfDk#ž~âã•uÛVÞ¢Z ½\%ÊN««µC©,9µHJEøá‘Œ$Û|N)‡½µÓå¢ÅúšËeúœ6¥ð£×-·Ïÿê ò[^¹#¬LŠ~ÝÃx?àˆ*{1U»Ür_k~¥[â ¯\d¿ò$w^­-s V”¶cõîÜ—3šT»|‘‹•¹„àmOíý@BÉ!Íî¬}¸¨c8¦²œŠÒBÈ;3r†Ùú×Smßû¸ÝSYöåFÐÒœUšlëÙMØCUDd„WA2‡Ûs`À™l÷nÏ„‹Sl h(ÅŠ(‰7 ƒºdsnwmDëUîKoZ/Y¿±¯p1f »yŸS(Îyû›¿N²rŒÒá—Æ“î«JqŒÖmp³z «ÞÝ»<w<{¬f[ci]íŠBZùJʘ­Jµ6*4‹gfAe9?}·"µçß ¿ñÉ›dÖ;’+dÜYã‚Tw.ß…Ù.õKÿp€9tBÞ»CíkLÀsÃ^À°¾†TÀ¦¥¯Ê0 sq×)«t?5g¿·vùì0·gseeò—>2‹}ó!¹$ÏãZGhdhѰÊ[P؃nª²LL>b˜JÆÄÄÄÄä_Cs¡(Ðï\ìî]K°±Y![¿[éªÓN]âÂíå¸tŠˆ[ N hZŸsE«a9ŽÙ~–Ù©ª¨Ž(?>’a)Žï/éJ¶ i÷Ê`ð+w¬W2žjº&y6GÕ”ã)­q{vÓ-+ÇÃxÅ-œ]nyPOž/B 2Íýõ§_Í´íðŒkæ­õlT(vÙÕ˜®ÛfÏ׊g¬ÇÑ$3i»ÇÛWÓïcóeÁxW8\Q[ U¬`*Eè¥Z8ÞætsþZQ1$IÔå*È\W^:ÀÐ=¡(Ä×MõÂ({2aûüxc p?9]ÿÀÖâѼ•½qe66$Ÿ»Ø| €ŒØ­Ç€) *ýž‹É±j_S¦%\ü§#‘¢@njÍñ¬ 2ë]ÅuDÛX )’*”4GpWô„ÇÉé­_ŸÇ•Ê[Î&؇£…©ÈÁéwˆºœârÓù«bÆéºŒ¾ÆtK¸ø“Sõ§œíÞêr_Q2‹kk-%¯*Qõvä?ß¶Ä1â3¿²mî^õ€^)iª•¤?¯­œá_¤öYMõbòˆßØQÄÄÄÄÄÄd…MmùÑ„åÒÌZø€çVÓZ6w–seS2Å4»G°€Õ´ ™kG ˈܖ×idÁ@±Ye#¾°×?´ò.‹‹A2ÑAMHIñžP܉•œš¤ÚTKàuÓ9×k'¨Ï?$]+0,¤ô±š‘KYO¦ºf¨•.Ù^œôßÚ±xhœ¸­C“ÊÅ|béÚ£›*ï,„(’\¹°Í:w»kdNóΪõ+¾3~ö ÿÉι¿übåøuat}›A$siéüéÌŸ~_ŽÓNùÿ4ýGO&NgØoÿQÄŠU¾û÷UA$l¾Byµ°GPt )|5^•éý1÷|oëðá$•þ•Ë…YÔ®Íõ,Ü€dX.”Údºm”ôñÆsjEùòÆ8d¨Úiªs‚ì˜ÊÐ}Òåí乑Ÿ³°k3‰µ¥  ¥¥0¨LÏ»ú±/Ë¡†«2€Ÿ—›¶sù„æá5§M#l 2–lûN¾œßñH8yiO`õê,wÒ¹uÑÕ­µöb_oéòo—ffe†m¢½¾DøüìZu¾ªUIÉæòéåÅÂÒŒ”Ž!E0(kÙÓ1Çö„6×5Eíì:ÃëT–ü§“¶½øžÈp¬rK{e‚‰n#GøMÂ,#·ùª§›NHݬÔO…™RNsÜxæú Yõ©[—œöì;á‹SnI+ÒV£"š1HU‡ìRÙ´ÿÎÆ¹•·öÝ¢üúqã€ÇÇ=÷÷*ÝÝöÌ…¦ÌèÒ‘\TÔXhmÒ¾t·vì•Ê`À1ʧ·Å¶Ö_ŸsÌf¹•˯ä¬ûš’9p!ð©þœÏ)ð£»^=;ÄÀ…10è”@ñ×sóX»O·qDk´¥¤™`fòÑÇT2&&&&&ÿJxVýì­K§æéÃ[ZSõµAG'½Xfí8j °BdÄÎiõ‡ÄM'Ä®”aÛÊÌØ²ÙË3ð¥Ž+Ý…uCeGF¤Úœó>,AáЄ-Ò†2¸Ä•ìởn+9›Ê”ïÚó-”´Ã·t`¾ñê‘S±à7¶ÌNÏS†¦Å³š¦rÙJ~¡ÙQ¹°õ:xŠÀ€ÅÅ]üŽÁIm㫃 ã æoŸèÒy‹ñôÇ*Ç‡È £4yqÒù½_…~ô¦ÏÎÈNŸå/ßõ{÷¥îêNÅUþÈŒïîÝ6§½Ø^®°®2j{ùû©‡¿^hë½ödGââ˜gŸéÞÁÄ D‚ÃÇåcŒ\=d<Ð<ý:-‹€+‚“ÃâdhšiJû:PçÆ†fµæÒ¯êG~m[¸ˆ4µÂ›‚jÜøË14i y²8?shøÊÑ™HÅ•¡ưîE¨/!ç·ÆûÚC·µ®f0*«„CŽLâò´óÆ1Wh VãŽÐ=]OÆÀCSºý½N¾žUû›³Oí^:9e½8å’H+_]€,Xš— 𰪎°»¶ñ^ëªââ9Ô5º.Ã%]à/–íýµh´%]¤œsÕWâÙ×’ÝÀ[Pk“òÀ oóé¢õR,ðÆHäŸG½Žcøê®l¾J]õ¿8å„úšVàlg±éyúo³ûvV •%ÿðGSDûúãÅC@  ésgòÑÇü•›˜˜˜˜üëáXõÎÎìÏ/†«2 <£ïæ5…K!§1£¬˜Œc¢=~”^0ê/j=gÕn `3u?X6è™%Ëù×Q‹®n¯åt<¼+‘pØQHúÌ™²4 GåqÞ(—(Ï¢­'em¯X e€zg²ßym²†â Ç}öò|{b‡Ö… #ÔÊȪ¦ „—Re<'Xk½¼ÏJ‹‹>}9y1·„ÙºK¿ðá-è‰;Õ“Îß®áÙCx|gþk[îo-}±'¶Q9nÌÙ¹@5^,G:m)R)À@»°os凿fŽ_X­wç½AÈÎI»TikðT}ÙMÑÌà-—•ÈP ÏÁ-àè%jšª-®€š ié£þŒÒÜíláç@âÃï,Ôîê60 5 —[¥‹”yù3Ð.\¿xàs ~«¶œrDѲÏÈÌríb,í9ú‹ÔÃ_—Ü×)@wni‚}d^óÓRNa,€aã…±dš·Qƒ ñ¦P±®§þ¯“…¯*«`TœWȺT°ÓrË6—«]:Ñ1wБ[ÔD=¾3hcL«— Ü@*ƒ½HìÞNè8]+Ž5È£-Ú˜¥Eƒ9h¸ã³][{éI¹~I ÀÙ„L›=^™¡xäÆÑ¦Ä†­VKW ¥Õ[lÁ¥eÃöÞ¿ßõð¬öÔž8HÀd³ „iX-šákp×9¯³bÛÒ«g ØJ€e…ãSþú%ÀBI·ÖLN`¼«/œI¶^šõ› *M tä¯Þ ÀÎhúÏ÷èŠ sﵫ§Tž}ö¬ý® k ™¼Åèjпû Ë·ž¬ÀK­/¼ÅýÉÇË×9ðŠß$ªgbòQÃT2&&&&&ÿ&š‚…­¥7GVw–aÞ-羫71¼d©Ób8š† £¦²‡ñô.z°žŒ9ðBB rZºHÖÙ4âf-Ó{¦J5¸R á4 ²Nó¼Ryì.($ÙÕT¤:®XÕ¬NÐ"(zº$G]mXGÉš_.„nk™€Nu!½«Y;zi-ˆ£å&g懧ý ™ 4{H]bÿôµZ7¯~iÓC£xOºÀ_šñþÁ‹Í/Ÿ íìÒžêO¨ùlKÁï’hÌh¤KµÌòÛÆä®›¡;˘-9#¿ûænŸ˜½32!àü8å¼Å.Ç–üÂ:þå óîh0™*Öo·[„¸Fñ+âP°{]‘Âm¡©TmG©¦§ffiŠ“Ò|5â¡ "¥0ƒÐ¹ìî36ÝKØ]™Ó·e_ïUÏõÁˆàH¥ëB©-'¯…SRìùä“wk É«uM4’<¼ôVüÂñ´C,o²Ló„<-úþqqlj˜#¶ÌfdgO8>íNÔ^;ÿcÅÞ¤j¿Ë>x[pöxjõ×Èâb-].èïùžÕš;I£T:6ì¸8éÌöLBæYmf‰_*ᲨUÑuI†<‡6tèGWÃ2³)÷¤nïö®( 5¹`õj•ù"~"ç=w\,õ¿=0ö'w_©Uã¹å¼ÏQ9|Þ iñÝ‚žweÑË'ÜtObC`¶L¶û´²€ý—Ø¢íëO”V:É€Ça”«ÄʬƖÍì2“>fÅ¿‰‰‰‰É¿•–`~.Ç_žöÖ%Â$T1žCÀ±Ê¶ºÒ± ¿«pdÊS0jÒà°`2 ò°îæ²j§Ÿ9דÓnR—}:º7:·ò·NÐcKTydžõ¡ÒI9 r ‚Ñi«Åî¼e ù7o†>Ý›¶ÚÉÉ t-ZoÀ:[§oÚ›t]Ix}™£ùO7þÙ‹v®|zÖ3›&NÆÕ°«nk«þÿ<¾ê‡&ˆ2ÈÿùSú¿<^©³U‹:“Ô,¥ f]R´™Å ÓzíÖ³@zÚ¤±{¶RϾå(¿=v¢ÜkÁØGþª¥Ö¦¦ÔO7äÒ´ßJ†ê»?9¥ú¼Œ×©fEJ'B XÁYž©ß'**ŸŸ›¨ßÞ¸öœ^ñ—ÎRÿëwÖº‘¬@ááuÊ^¸4à ‹›bÿ¬Ù]é »n\gO1®q.ÕÅ8 ̆†a¨¢ÆÚX7­–Úò«ìýhÏ{ïÏûëk¦Nùæ‡éºz­_ÛÕSÆ©‰2;³¤·¶n2"±8Í^,>;W YSÙy¡P›¢Ý¶´[øÖ¨oNu‡¬%‚âäôÕA.Œ²—Çæ¡Ûƒà$óNOSwi.-:ãeû±´[Ss)72PÐZ´òÚÙR‹”WzËx¹‚—U³¢Óc)@3?­Õn nn_vSФ'h,ß½Y˜\à'×ò|œß¨í?çÚ(±ªUmëË¥‚>c0ãõÆÛ3Á+ÏXfRîK–¨CÛÑ\ÙÈ.ÆPÕ¶Á'!„"x úüCÒ?¾Êƾr‰¼s‹š–YX,Ùjxå¨{«àw]ç6=O'r8€ñÝW-ßú”pUì‚ ÕèßíÝ(•ÁüÞ0¿61ùw©dLLLLLþ­pŒrgçâÏÎGmàºýts0Wu¸EHXE”t˜Iæ5×tÅ3œñBôœO¸ª6’1`¾äI !ðr˜M{‘aø¬%D¼„±­•Ö> ß®Ë¸(ƒ˜ýnïÛWœOí¦RRî©} kã¤rq ]?rŽzìîµ°Éíͱç.6»ÆôóRÍ¿ðΔk¶ì¢9 )m.è8£8kKrTŠÍ,%ñB Ëa,½DK›i» sÝLµ—y9ëj ®\ÅH'@xÖú'O G‡©¿;Ѻoê"Çs¨ÎzͶ{ÅóÓî\ªj­Ã[<øXZ¼ÔÙO²./m÷,©º}a°6ö–@ÚN”{0Ÿ}­¹ÊÙ!ö {×·ñÚY‹re9-òÍÞÅÖWÿ¬¸ã‘|kÏMÍUšÏ»›ÀIûje §/x•8­¨Jcºòã\ÝÇ‚.O!žu†›·5½ “A½áZ%Cáˆã Mª>ó¢±ã¶Pcó@¬XgOŽDË#ÚmgC5eQeßž®y9Õ»ïŽF§u[À&&®ŽÊ’ÏŸ·uÝÙ°ÛµêNV±„5Ї€„:[¢Î–؆ªÂÌä|¿œxÐfè|±›Ë¥uÎç¬À&ÿâ[Éè ç€Å$_¯=ÞŸ2n‹hãÀBK±,ë‚WŽøó6G;§37¤È ™Ì³^?ù룕ø¥–@­e¶»:rìX»)¡Biðb»îÔ È²¶áÑ–1Ž–y úø]ÊŸ>Ë|óÑü¡7FL¬jâ3K<2PËz „ïþ’Ã@ºÑî•עëñ8Œ¥¤©dL>â˜JÆÄÄÄÄä·Ç(ŸÜ0óÜ¥fYÑÊ•’ß»v¼N! ’¦ª”Ó’ÉuxNlïÖ=¤ÑšuöÌvt6 Ñ^}Y‰2 „t4[À\Õ¹¬§åwNí{éz‡FéòûNdW–?Ó8^¶‘Ïœ=\ø‹¯³œÕétºœn-9¶T•d¨ÊÌä¢e¶1²ÃÃñþÆÄ²¢IˆÊ(‰qìè,ñÖÐ\gêm=5Z]ˆtií^ûD†î¥ ;O¨Û,ÓVšãue<ÍfÇüÕ9,á5Å‘2c­w`U­B…ëtüܱJÛ­FÕÂ^;ÛM͹Ÿž©ê¼[ÎÉ”§%Œ·´ùy[,WŠK3º¦ „“æ8’½0íy4:‚Þý\ñOSßûݵ-/IRA¯“ÂÔ™TQÕÁ’K7üêoßîù‹8Üs7.”M*òrzʱ¯Êµ0²hÛ¸úEÙµtÉðpöÀìxåÞæR2ØY³4˜u†Ú2ÓqgëôQ)_3…8†xíÙ"M {êÜlg§­Øx[²¸(^‰Š“Æ¿ ¸ÄÙÙO÷Räþù¥°~™¸»Im ¯~—oÿŒß|ÍÎ7¶)¬+˜Zÿ{£åîàâ˜(`ÌíÖIPKUòè˜;YpºÞe¢’“n¦À`’ —KÈiÇ>TX¦Høêšou^£ Yå˜d‰òyÃð[dA@ŽTމg˜éeöè<ÓâÒº#ŠÓ¦÷DÑÂláÑh¾ÎžºqXž‘K󉓪oW‹r¹Ê¿8ÖöXëÈ™aö¥S$` cN ¢€%‰®TÐÿwÀþ_ºÎ>[±#X¤ë~cgzô"\ ~Þ§ÝÔ0&}L%cbbbbòÛcäÛ›’?ªÔ•*ÃWŽ*mVL‘¥`¹ ±çõþÊmÓ…M5Ô4X©RPÜ,Ņ̃Wö¯U•Mx‡áî– Öý“^‚f’ç…]"HÕ6ÅÍÉà´v«aã ¸ú”úàRÏÝ¡e/Wðrм(Ÿ5t/ä–’¤(Š ]º^NÁÙ)iÌŸº5XÌ;”bñ”ÄœMÖ«BU-WvÖ+žÒ'·ÿx_q<6FtC^äÂ3y-kÐËy—C£Zd;êDRqÑ Î ôÕnñep&uƒ2@¸hÃ1êYó5~ ¼Ï ôì2‚¬ƒ3Š$IQV'Ï9î¬ 3ãxï†ÇëƒXøR¶|ú'ÓÝ·¶Â NŸ¬ôÒ6h¦®P9qÚÑ#ôÙËôo_ ‹ð.¯Óé‹ÙÅ\\W†ø‰Áäý_ òèÐ%þ&‰ena9åí +¹¤P;@å¬(­[µ’ );»XÀjÜ•2çR-vO9‘µÚ‹l¿>Ý´SÃWK2H ažCùëŸT]dɶæmu&è+OùÕd³6ÿÉMnðYÚÛ—fó&øýƒüŽÖÒôöäã^Æ¡‡™e0h«ân´çÖ·R]½ÅñÇvY—’Šks`úAH¡JTªøðéÔϦ±]ÝÖ–:Ñc)•Áaþ˜ë¨à6^[UgËjòE‚¡6v±]lîP »RÀz½ôÿý ïÓ;Ê·ôݽ¦«grB`•õ¦ «÷Å‚vòDK9¢× Ò–¿x§µ0½üØæªÓ†.ÍÙ¬*`Ô\η7œ?zÉú_ÊúÝÊʵ©=2E½t†ÜÛ¦ó!9Z§Àßï§ßGÆ@$€ŽœÅº>Ì—61ù÷Š©dLLLLL~k4x3wÔ0KzÛŒ¯¹¢x,‹yd FL |€Ê dãFW¬6Lqy¨JtƒEXKÜá(éû§¿yë‚ÏQÉ'Ëý‰éØö½Q²R­•…Ež­ð¿šušj¨:ÒtCÓÀ0atø Ög•B,±8™¶.¤§—+ÖÆšËóZÈ]M”lsyë`‚ÒeE©TäBFΖ·7b%…ÁlŽG›³ ‘ŠÕÆ$K¶Å¢5/:ÏWkP¾\22®ä¡2)äÖÁÚ"žMÁè²Ð,Dö:GV\ª ©2Z®»¯e-D±¬ûï-½Sv»Z¨Â4aVG$=}M™°[|æ$K6Ø÷õcœÍ‘/ \þÊ{f²%YàØjÆm¯àMDKíôÜB´am…Íïo‰ÍsÍn)-\Î3ÁNµÿͪ4åŽàžXˆéš ¡£¿€Åžä6pl¦qWÓzaà”ããЪŸ=ko$›Wì-á::€'`!Ø]>µ@²»Iª¾eö­±è+WÐ82°ÕB ŽÔ¿ð°úÃWÈ'ï©xüSíæºMÖ°ssÛ^tB²Ì…ˬHûÒ>Dâ™×lI¾ÛíÚB®|ÌÛÀffpå:¯0UöXªÅAÉw„‡D=•m™(Õ·ÙcÀ³Ïj~7À¦ãôñ kcjmpG>\Ù ÷tkK+#I"XæÞΔ‹*„Û£Ò²¢9\Ôñ+|·@U$ÊjÑý.Ž¥w $Žœ©>vïÍF´aÉÒrÖ53[íiÅc®§Ý¾w[!•ÁŸ¤÷ö«9ƒ€WO©ÛüÈïV‰œ\àÿñ(§ FG=vç5K}@A?Ï¡xæC}e“¿˜JÆÄÄÄÄä·I›?û½söWmwpa¨Ú%2À‚’Ðm'fì÷9E ¬)‘UP¨ƒŒ½{BÆuÉ/Íxïm*ú•T–üÁÛì÷¾V(+ƒC¡‘©&Çê³êG¶_}OÌ'¨L9KàQ‰V&_œÂn '†í1‘²…Ü?ŸAú¸"Ër!.eÊ@8I=¾önŠ—þà ¬>ÈílȈªáË>ª2C‹ädÞ}0Y£V‰ŽŒÃQÅì0˜dy'}+{ŽÅW·­†¦žsÝ— ±WïXŒDŽî›]ý‚a·ð¥ÝåïuÖØñÿD£©$“V”ÍuÉ“sŽ]Ñ< r 6[nn?¦mX &Ìe}­.Ág+É@/ó‘ë­Žâ`¾‰·à6^M•S) ¥ªïìÛšÕ•ØyõC7Ô.ÿópë…áèk¬ÕÔ\ÁV/ X¥ü<Þ¶vH pœ0d¥ZÚÒBfIVàõù‰˜« I‘¶ r×'Gb. 0CÇ  Ñ6«Qá9¸ïýùýø•íÜÒñÓ9K­ÏrëÆóz¶͆I2X±P|Re‘ÄpDZ^jjåÃ)wD+.¡dL¦êüi¬ýÎÀr§;RÚæ<]hµJ¡»ê6³hé®×êÊ…)îswf&­'Oâ#xýݽ…¦ÐMœ¾¯’Ãn-O¡ÕWZ±— úÇZò.*?½Àèªq+ #Þþ@T*É»¶übÌÖìÒëêYšBÎòù%˜žÃ¢ 73%Õy2c ­Œt¦2»ÐØÚ aÖtÉÆóœ¦\ÂPܵ¦¤²Ý„óù¦f‡¬K¢Z(<±Óxù÷ÄíåÇ\‡Óf”…U@ž0‹þM>Ú˜JÆÄÄÄÄä· Òd_.v>Ó‚SØ(æ}Ðy~V¯K,É%Fr»¡ˆ!=™Ey™~MÉ‘†\‘(¿E¶¤h¬–Žüøœóÿz /¼Å­ôͰ8¸Å´äPš¦\ûqWŸÁ7Õ¬9“hœ­XËË¥À_ñRŒ,C¬Ü‹Í:ñó¾ßÝ› x5¡J¼ð&Û…œÀþþÏm~¢#¢48Sqkmæ ݉‹>º¬é@Ú³"Ò)tT&U²ÏÔÍ[ƒÝH* U!W5¤O8–°ünóÌ8D`RªßW>‡œ…ÍS£eVûìИᤠ .9µqsh~¢XÈ6õ·,*¿½|(j«Ø}Ö…¤b\ÙØq.6»±¾?¬ÿ½ k# yË·ÞtþýïU. gY^Ik#¥jÝËß-ly0×r]}?GË­.áB<²³aæêA—¸¸È5­¾Àñ<ætB0 ‚@cWðÈVÊf·—K%H8£Ù Œ.ËÀh² ùÃtv,Tˆ-;ë)†TŒ ,H€h=ºïã‡/=Q$ä}[ç-5Z–ñÛé<”U©´ðB>îh»£6ûfBÊ v؃u’TAÂz7¶X!p<ùTýøŠ'Ä BÚêœ<\ìòÐ…•øØ…)n ¹ð(‰óA$ú[ ¶W&_š±¿9îÛÖXêk¸I) ”Àn7JW_.ʶ|2çh`ÿIƈ¬´\ýá5…+MáÊî¾´ Q?˜Ý¸•ŽÿÝ鈮Hñ# X\VVõ9VeØ¥Xà¹Ëîma»;Yã”^9ëÚÝLÜ{y¼íÕ¡ðƒs8ERåŠôü¹jw“ °êÞµpä,±o?¥½ÈÿÉÇË×Ö÷ "Öú`“å°ÇX›±‰ÉGSɘ˜˜˜˜ü6á9¤Kòcmߟ迯~‘ÅÅ¥›«¨M!5ŒÅO&k6{+“à&Îo«wè[½©]îQ#EM¦u±Ū#–*g¹¢;»¹›/[qvÎ 6߯Åz/«Àž°H!Ŧ e’®zïƒýNµ ÚúÒ©”,k4hnLô’PuL$"„¢·=1•òüíÉîO LsŒÌÑòÞ†Äé…ðý% ‘ÔIÇÏû¢¹êH¼èÝÌ]N92H|í˾)§Ï«$Zco¹„…º' û6–GcV¿[19ª.¼Õ?]•¨Á™ÀßmÝV_jä9æ:‰,²…ÑÂÕ—‚Zªhãõéyjyi/탳³åmay¢Ü>]võùå’J÷d·mèÓ)}8¡u¶V?ÈÿóSÒè·$ÓqܰtËË'îˆißšJá Ÿ4B;W$Ï-’Ÿ»sDœ,c1ÿO×'ñzù l|ø§tpøEe‹†Ê?3“)˜¬µséé…šl!šÅTô¦Í¶¹²š…çe¢%«X+kÖÂiÕÛ¶‹ç M¶™§z?¹«*+ørýÒþ¦õA²‰YÆ¡¥èd±í»3ÛŸX¼PÀŽðêý'tNð^<(k2FVˆG^ÿø%°{;í‰% Ö¸u{öµþþkAàìM+os×i–`jX+[X2¼„íÎìgNŒa’˜øûÅÑOï¬â}]¶$Åm¹«–ÉË\ŽëPzÐ|î¼%üA÷OÞ?|áêÌ…¦[«šÿ=ó›7µÿôr\ÌTB¥IÓ°WÙÄya(MuŒÎÖ‹†ÛZRû;³Ÿí=›Šó´¶¯5}4»´° d«JoÐ ¨õ€¢hŸàG[˜z‡6I¢u¯BàèsŠJ$ï|PÄ«ƒK‡s³Á½FÈ]›«» ²è!mÜVë8¿vÜeÖ+|k˜Ö“…µ.ó8‰r±¼)VF¦ÞÔ툸޽TÃé×6³Mç­IRÁ,KCBò(®5€ÁmC¹"ù{ÿèêj±ï;`\¾¿@« Wº¹Å33h$š€‰\¸a’ôO‚¦È‰¨ß/yÖçž¿91ÒænÜÞ=ùö{/Fe\„þÄ´çàz„˜Àš;·áç“n i,¦käúœ<£okMdlVdG&z/vd±l{DX?Qö©LlWHlôüŽ‘dOPCq ©h£AÍñrß±(Q.ŒbÛûƒ_yš‰–?³ç¼›¨§VšZ©º»­vל…¾qzÛßž_%¥3ç•/Üxêc»mÓzeÕã ¹Ÿ|2ÙÕjþ#°eÿï»馭‹¡½RyÇ!ãðnÆñÉ88888üœíeOÔü'=ù{ÁgíÎL X\mAŽQã\­nºü´’cY“»âÊÎSíj“™Ÿ&_š%îÝWýþ³®ÏÞ¨®EÔ(&›W$ÕðNœåugýÆb^¾¥mþòL ¨ÚÒy+~wbí׃Çü×)k3Šúñ\‘ ù @öÄbÓ6øƒ²À]±ã%Ì‘ú9¯§uÃ]Ã`*<}²ÃkŸA@W«pd¹}ç1î9ý¬À«V¥r¾yíǹÙPú¤ÄÌÍã;ï'go£þ©Ä ªMvJîû¸¡ Ý`ô6O#⪭ùC €×Òš§“è>ä©¿0—À°–N~²(\Œk쉢K"ˇ›Ã×òç&žÅœ|îÜŸ~lÝaE©ÍÐñM—”½æ¢{|õT×òke±#íKlúvxJ½!žš©„Æ¥LŽn$~Ørƒ%ZkZ,Gª8AQdªá‰yêP.}V @6ê¤Ë‹j´¥ášF“‚iBv—éD¬p¦"Žz8æàQå…ãÂÕ}è%Sµ©Yð“ÙÁ[FÑ@(s™&‡ž\ e«ùt9K‘šOò´·µ¾9ÿp:ø£3kª·‡ÁT&¿êce6.Àz=‰æ›ñÁ ïaŠ2aji0<£ÄW»‚…\C|j1èä:õU^œŠ# C6€mŸœÄöo#^l0˜ªÂ†ËkB|À?±ö³b°óÕЩ‚[lÕÈW“Òßê¹6"ß{mÉí‚ùjèõÕp˜Ñ.Ì×åÚôJ€;sÎþêó±h„k$W¿¿º\üO%:cë™`O>sñ¯`u÷‹[HtUVÌdê§>6‡_`ŸŒƒƒƒƒÃÏïp'±¼ø…Oh‰¨<äÏ ¦^T%Së 3ZÀ5fJ‚$@™ð@³nœz1M³dÔcüÖ­Õ““lAcmÒùrû÷’;~´24U $y÷H㣽gn ŸŸ(m’1°ˆZwÐó,¦ÀãGâ€c}‚d¬Ï|åŒÞ<Ç}æ½Êm×Ô¾qÐ{éS³úÈ|Ÿ+7‹uýú«zJm¶=ñ¿ÔpûšŒdÒÞÄ\ë{ÐÀÂóÑâ<\IP¨mÁƒ×Kˆ¿tP¹N¹ñ5o €Î ¨QG8=Ww‡Ü50M£iXAv=HLǨé󢚥6|ÝÚ¶Ü^Õî–gK«5ðÏÝ_½Ú2FUµ Ya¬]ê‹Nýñ™»Ûs¾ß¹t‹aZÙBù™cØ'ÄÿrK­µ…†wÆrž?ÐUªaî¶^tY`üüŠÈ5 ¨«Oái­Ã—ûøÐ)‚Ä+ž‡ç¯yquàåEîæ®f˜©N®ÚÏ€„@Y¥\´Æ`jÖ×sºÑ7î.HdE1Ùóåö® aܘD6þ†šxä…Æï¿/Ó?H½XúAr>ÙuþÞîó;¤J2ƒ‹¼µmÈun¦þìK[Õ\^štydXß–'Ïs0> l}ŸØO7ánÞfç Ž[Æá]‹ã“qppppøyRT¤"¸¬ä̪ 4À±°G?Tì¾=|®l1)-êÁõq~æ°6ŠY¬ (b½¡XeV)¾]gZŽ4¥È8š®k1¶vShÖÏV@lï +Y6B~ˆzan™ëjÝ0òŠÆqa8½ÂHâî]«—¯*Ð3'EYÁ¿ÿ&ý•ß,Àu ìÐ1Ï­;Ë>LqeÕ—lWÀe0.#_‚’ M•ú“§Œ•//uµ÷tUthX$žãfhg묡¶ÏzÆš©(~l@†ÌŸ  ¼.ÅlÉ­“‚N6¥æ›tA&—ž‰»\%¾Sït7z¼ù_áiíþ©ùrè•t,Àè…¦ÄSêábàÁá3oR£JA£Jù¥›* û:ðåBìÙ¯­¾ïWo`Ó¡‘lÚ×YtǺ’¯ \26¦Së¥áe}´åäT9šÓè†B‚Z“¨é½ó”÷ðŠVÂq@>¡¦äˆßøK{éèK8ŽaÞDXÐ 6`X#0ÀA$!áòâ¦eL™}ìp `ÍìÆÀï2yÃQÑ"àH54TŽÖÁl j“ÞÔµa¦òÈ„÷õ% ¹ŒOï8Gèå‰â±nU®YÕ­kŽ]â‡Sî/Î5À\"½æùµzÊ»¢Ëßz­}G³ÀˆºI»I}‹rÆY+Ò Åö)Åd¿ôzÿP;:ZqÄ“E–õá`x[XŸ¬"„¬5UmnÖ ìç&¦êí/dÂÛ…Ââ¹LÍóÅ7º( ûÌ­‡ù¿ò"°!ŸÖ4TÅ:Kx.>m±$C0AÕpÛ48·\]©Žo“š&ø=/¿ÑÄv·„èÌásôÕé1?~ «7 ´yw88¼Kp”ŒƒƒƒƒÃϓㅖ÷‡üwkOvaåjcÂT­Ý«, Ç…úéf|”_eqe˜XLÖÛ»%u¾Ú’£•yä‡Ð,ÕëÁî©Eô©ËçÄIŠPëèÞ1ù‘CîÏ]T2:ÆÎà‰!ëäkî£+Ò¯îÞ´*³¢^ôgü¿ýþõ࢞¶&*Y½d¾`¹¦Ì ð¤ZGL"ÐL•¸ $çÊì_<ÿƒ[—ƒRóò©0 ó &¸ÜÔù ¹RMê'ëm3 +Ç?+ü`^ï¼§«šŠnõ¨Áz _—¢²‡`Hz1ÞSmj?žð{Ü̲ΜIù]–®FÕ `¢á.-'ü´>ê“¿“ßëM]_üãï0×ÝÖwý]½SþÙsî¹s7|Nür@ •@u•„A¥IÀS¥NAÕNÏ{çªØ!Ôé6D50!Ôh€"‚ª’4\3ÚD¦Ð®Ô,ºýÁ"ÉÅÚ—OëĽ×4ÿî_Ët탤‚óiÍ3¯ú‡1MÂ5­ÖxéX5j”?¼ÞŒ'¼Íʼn”Ù&áñ­#”œuÿ·½]÷˜z—Ü›½À#ØÉô¾I„Úæ–<ï%ãààààðs£Ð” ÝÖš€Û®k~ãÙ`ŒuïŽbLF¶Ù7ä8A‡««jT6™óEr%ÏK¬½¬X1uA/֛ãÚ삯+b«‘Ë­U†ãiܲ`Ýt ùô¨ͯp- ,“ ;å†J¾áù»nŸÛrmcWWC]­y 1«Ó]¢ÜÖ“gc\ ù-ൊ˜˜W~ìXÄÍ(Oôüþ-© ´9¼gµî#”âëì¶íi=S[©¬¥<|ÜÕ‚Õ„ ÒT[(ÛhAé¹PW:ÔM*­+¾Ê2[8áÖªí)û»8†k¾(>Òb×BKZµLP,¶¡1µr0o³8YƒÉ Ib¥•Êk^Ù½ž^r*…Íž§í@îOÆS:¬B€Õ¼¬‰Üz¢E«OWÌ@Û˜¥®úy©0“‹ŽZ‘8OÁë«á©zp_||XÓ…”$øíJTdÔ§Sšâ“–@t{™ ±ñ+XÞ sLÖ³Þq§ ³°ƒ§"÷t­Þ°- í!o£HãÐöÒ¹Û¼5 ³‘-eÌÈH˜}oœ—[vµV¶™ @ЖتˆFŽVŠ›¾šg'ü÷ìXß6’•Cç:ƒÊ<ìî*<ôzôšF ¡‘¾z{¬žLE§<Ïçîï™ãH5¥Ð¿1pú¿< ½®qõ»' ìGkeŽ UÏ;ý‚°ô/|Ê<–kn ¹Üxh1ªÞÎ.–L1ËD·Ýê}v2{s¬%Œ×F\Ëû|e¹ Óóè•ãX%Oÿö/ã!¿uì0uÇ~’>ãzþÍù÷Œë‹.‚¡yAX»VDZÛö;à Û/¢s xÔgWªëVœä±ªÔѹ9[ra×ZDªTQ± ãÃ?½ùŒƒÃ/"Ž’qppppø¹q,¿.´Ö%pÖ§n-¼ÜlYHâ±hã²9Ó³¤»ÔºÜ¸¡k·I“I¡çšeí/ýUå×îÄ.°ÔþíTjB @mÝ*Å‘Èj(¢âÀžê7žö=Ø¢ÔÈCØH6 ö's¶~™}ršÆ <_F¼™),WÆvqAìágèOP8!Fs»Ñl•0»üÀ†½«X쪩àî&ãš·ÍÝvQhd}å´¿&Ðs““âøMñÕ4“8sVúŒçùŒ·«µ8•J¹%œ ËSfP§Xb‚h]u5Š®zNL/&Y¢¹7Í®t \> €§T? íböƒ€ùjèÙ\l—§àÕ\”€J+.(ÇÉhøÂÈÎïÒ;ÿvÒlwQjéœ~%Úr•f¯L׃EUò³7ˆ\äzW 0LFdw9³¼Qš¹aMœõ¡z[W2«†«[ÀNu†”–PQF ²,ƒJ`ùÒa]íÂÖ¦{uÞíOeS+XlbÅô\š_`ˆÇÊWøŸ|4)¾§³¾­5ÝÔèã‹‘<Ü×höG³~¯.»Ûl„kf9­°vb¾"Ž]î@sùŸhp1—’òPõîhèļ÷†8 Œ iWø)ÒF´›,ÀL£µ•–ƒžúR%üo‘#”_Ož\”WQ {OwzU&Ük`t´ÔzΞ—… ´Û€a#j)Ë]·¢1!¢6À.oë.?•´ûŒJHÂàäYô~ˆ~ý.ì󟄹$zù8}ß­Êbƒâ½ÆGÃÛ‚U{YÖÞ6¹§›ûî¹Àï\¿¶yEwK„ê2V¬bm±umÉëR¬`Q?€äÅàÊbüaï6%ãààààðó¡ ‹y…: e/XÓ–aøW_é½aD­˜ôžù8»¡ ;SR½}­ðé{ø¯=…]ÿQÌÒ¡°€;0̶«9à9ŽD¦r™’8+"Yó+l‹É3ðòJ×5‘rеQ™êrr%:]‚Oì¬×³ïӦ͠Žù­ë·™_Œúü:ˆ”þЯ¥÷ï¯75Z6ج,¾Pniu#Þ‚«ï€³Iml¯w!Ú¸€× Qvä¨{|™pጯºô’ͪy’‘…P0;-7‘-‰Ýš­l¼×i¶ä‹—|q€qZWÜeEKÙ霯)¶ÊîPÉߥÀP ‰áX]g†‚ɵÓ)µùž©¯”vÜ~Lè8[ ¡FÝ«o™~:ŦwÝã;|îÆß[¥SåÖýÑ GÚY¸˜ï 3VZÂiF\>IÎàZÌš×jI[ŒõvžºorU&0ËŒË0p˜<ˆ ²´¼×f¤«¸ ä"޽ߗCòj•1dΡͭo:ÃjªÄÇü…zàBÚô4xFßÛ—¼¦ƒÎV]GæB¹&µ«¥ÒÒN4Üþ2õ(—‘?Ÿ’n¼ÂKCÚš¿¹P»UX9µ«#÷Л-7MDRæý0¡`xdMÛý1ówÏBÙ6<˜Š¹3œŒxígR±Óz,‰!’ÀdÖåâ€G €Æ"Ý‹Õ$¬º¾² 7ìÆú±uÇø“‡ €¿þm\à"A3}„~élpW¨YÅ”Fc˜uý8êدžÆS¯–Û½Äã'ã»6)°WTMìå,=Þovµm0ó¸Q2MŒ_j݃}ù›ø {œŒ‡w-Ní2‡ŸGW¢{£›k¾Mæúîå¶8ñJ%>Æ._.cÀgçêšMchèšøg÷k>BSmÀÒQa‘`J 6–aZ—Ÿ{`Oµíòš%Ϊ>·:‚“ØpxÞ‚Åyê·oʈϽPÌÛ5³Æø1Òi½x—›`ëz_[÷ñŒž•îŸ`Ç<úŠëðKz.©V)ÿ¼0:¥û"Wf4akRmÖâE›v ŒÖ5ŸfY·{Ó°I5u×ßœóío)¯uÉLÕܱ‹Î½‰eÚÀKBK\ Û G$~¨‹v#yÕ¸B!ÉM˜[„Õ,L¬bÿó[Ö‡ïÀî»s]Æ€À¡Û¯ÕŸ8Eúx£¡3A£¼vÜ#XÃ]ćo³ráìdö_žæÊ,üLÌ-a± î¤û;¼‹q|2?ò OA¥;|W”–*é^ Ó–™F ÷Â\øþÁ*Omtl¤Ê–’%¾½EÔ„qòHAWl–ÅS7K«´/Æúce[Æf·íá=$^™NçÅvŒ„[ÃçÞjm„j}z÷tÁö¤;ä±òuwÐ}EÚ®Qëë߃‡_ÆFo5""—Õ^=Á}éCë$åñøýn×*ó³ä]Òê<×W§\Y'«þvv)_á$éߺµ°D'@#hüB9›vWËçvs­TòW¯§µ(©ª@è4—ñ%À— õÝ.Üò+¡åÓ1¥b°RD˜ýZýƒýåÉðüÓ«û?Ý”Ö-SŽRïíyŒ¸.€*Eìχ[õŽfÈû–.wÓœ«–ÎÍe"½ W`ÏÜCù–ªwÝV¾Xf p¬ @Ò€o~ï™#-ÊìCÓvDJÛZRröÖ‹wš&€-•,Ùº6²l1Ãøj÷)„KæC;ôSrµžÐf¸Þ-)°FN¦yFßiúóBÚô\ Æ3úh{¶'RÎV„ÓóÒg11}ýô¢g°ÝXÐ^ÜÒØFóƱâÂŽDññÓm·‘WÄ–¥´h?]¨XáC³äîYX;8Szý0qfªH¬ø›:®é žFQª^°Ýò@5ƒBM`mÿœí× L°5Û­iøŠóÙ´úÚ2C ÔmýÊŸþšòГX(¸9Y%4÷ P-ÞFªæíë+)\Ö¯T(€>s¯5=/ÿãAÃnÒ×Òc½[û߆“çÉvnÑŽÆÁá]ƒ£d~]ŠÞÞµ¸é`ÓdL^+Ä÷Gfýl¥[ŸX }ÙgÕ|J56Ì þ®8™º^Ze\’F¸¡¾ÙŒÓ¥o&ùørÈÏoLl¹*¬¼lá°hˆ€mÑÊÑ•ØSWµ£Ø=£rɨÊ|ŽË•¹PТ]¢(y¡š%ç_ÇÔZɼ¶Äðk2f 1 x©òKKÁ¿Þv¼Ä®Jé¥ó~*; †iæsY<Øa™Ñآ薟T3×¥¸8æJÀ•¢ƒ¤uE0šî̇ÓO?¸ñ³“Œ¡àµbÃã_ÌQêÝ]ç¿?Õw{bñSíùl‰}ôhpü}#åÎè5|½~W¾¼q¼áò- ÜêA߬FR…L¬ÃÕ†½~2ÕËkå”îò»­Mó¼–í½É_èûá’»ÀFäÊ$;ÚNS¤l"ÌÒ@kj:Â+*&²œê“l®e‡y^o6:ëgçÝ#uœ‡­àY0ÈW]ÛZ*Ï^àÑum3°æ¢ ë‰p¹©Ñßy#QM¡ ¢ûºZC¨Í»aCÏJ §I&ØŽå—ºCú+g…í1^UÖ89ÝÓ"ßœèÝØ–ÈF,‡d>v&-îÙ¥7uÜ´1¹f¾‡2m!m»D–ÕW g§ê±Ãó4™-œš6\ùáíjëÕ±3^QéŒF§*(‰Í¿|‘b æª ´&ÐOk‡ünôô›d9àý•¾Ô‹)ÞÊÔIxFÙ©MÏëÿðCêW`ãÃëqb…>صEí2·€Š•õ1sI 0<pBËÞÍ8Ñeÿ^òdÛWç¨ÔFWíýá¹µž0¡zwb2¥z¦ªí—ÆœÃCv®hPAÆö‹› "ÓÐŒyE€–íŽ0ºÌàª{°¥ËZæˆ-¼¬ÞKd–Kž¿>Ü»&c ä©ufÓȧ^´Gº1Ä᪎Óàw™ËZ tPÈâf_dŽU{^š¶"Q~C ØRˆm”àñ3lGk±Nn(õP,鯤À6 #·Ô Ü56~õ:Û¥ÆBqk›^§¹ÁaÅBÈ=ðé/ãï—ä|[î|ïÑG[fÞôæ—€§Ôbé'gÛ1œèŒ5~ã@ò}#åÓËâWõœ^ ošç=ÍzuÓ%è ë´² !è=þ¸§^^óɬ(Q Ã4·¿ÌMð“ÙÁãYô ʺ ®ÁJ¦ªë扂eQju-…f 5Y¯È<Ë´á%½’ó—æ]CuRØò–×»MˆH2Øèæžü‘¹ÐÛ –5zI¡?¶kñþ¾U{©tðþðDûëåþ’.±«9¤T)°=žžÈP¢{ãêËš›,]¶:|N³dƒ²¢‰*I.ëÁ6·na(å³”U+hZ UòÔ´xjÊýŸþIzù¹ê6y׎ÊþÿÑ»™èè9rPd´kËê<þÁŽÉ/Ü_ùþ+FÌ]_­¹.ÇþêèÐ×ßúÚkO/ˆK¦8ÂWð6q]uàĆy¶¦gþê7õWO‘_þ‘+¼Ó*d'/P7ìp2ïrŸŒƒƒƒƒÃ¿—³)ï{›½ K•ÐÁtôÞöE?·ñvœ£ÔëB3Ï”†qëON€‡Õž=Tn}½;R\d7UZb Äš #…ÖŽÌò"`Œ‹ðøñÕ‰×{ˆ O¥?pÅ)k®˜¶"{(rÿ ¶;OkAÁ\ª„Ú¥u+üä97^‡+X¥ j:' ·Ž'Ž5”ìjw'ÉžµÁ«–»“Úˆ «€8»Ð<”ÿC:C]!d±AïòBQŠféB=¹Èö˜¼)ü)ê©¿¾è­ Ôfâé¿/ÞVH YKOëôx{“£5U¨Åj.ú .ÐâïãŸÝþ¡áižÑ:£ÕÎhµ©Ñ3ï×÷÷•þh)讫L”¬Ë¶ilº Ëqf ìoŸ'0páQŸ°¬trº0lÜ»]¦ìcóBíöîI¶&ëod‹®°F0¤R&ê%¥½W-SI^šœ15©:?Ýw@Œˆõ%CÎ6HOÚœ©²‰D@¹ñííK†Ùv¶Aæ«® ¸uc” Yÿû:ª—»hfRÒÑÓâs(¾¿Ý=Ð^—ˆ  ŒDüLT´—ònò°¢D·ìS ôí‰õâÝ„𫄝ë±,ô=Ðírj7:Eƒ VLV¨i­ÿ´Ûˆª’ }ù3—oþtŒN÷Y\Ób›¡U¥µ¢w·0õNWö†Dݪ)×uäàN€¦Æ ÿñbïƒúSÓœ©ø'–‘R`ÁŽÌTÈC'|m!ÅÅ[!ŸŸ¾×šžÇþÛ?ºÞΔ0ßÂ's‰¹ep|­¼¸ƒÃ»GÉ88888ü»XÈùÙAÏ™'‹¥Ð+éXÜm\•a©¾Ï?1­¶)÷û™äïÞ£ œ-¯Ö&VC;br«×²ä+ÆÓ8–V¯6Á޵u¤’‹¬ä× KØp;•Óňœ_:ã2Ð`ù0Y9ÄâçWø¡VcͼĮXêx®eMÉäòè•cèóŸÂu`㣞'Žk»ï Bò…£p4ŸÀ.àí—ŸKÀy>+àË/O?Z%úd>_!ÁdD{\nRÛðS‘¶U–Σ®4Á`“Œ>WÆóU!(^qçB¥?ô•÷~j-1†#Ô¡sχýL•#lYŠ‚%»vðÈäkÅáÙCFÅþî©íF.{ü—’IfóMµ‡ãÀ>0««pÍv³É×ë]q_zqÛír’<ùHÍ͆#ÓP10’õÈã+´_ðÐpº$ÄÂùÉ¢+¬Sl“šŠªeWÉod6¬‹¶ÜÙœØp3ÜòqÍ@tb¨P1À|;+¢’üƪw/@"¨Ô›ä-½ù#sÁ»¶o­d¦K®ŒÍ^ú•gôÑDn4‘ËW…ÉñË/Æ÷EùÁx5(ɵ|& Ü5ZþÇ#þ SMÍȪ¤AMV‘*ÍñŒ/jâŒ]M1Ëe£ îÓ¯ö߸ØÔèó©Ðt‰üËZ"%StÝ»§ø6ùH,¡°„â£Ë ˜ìR#|¢ØºÜ¤^=s—äm³À3Z¾êêôªÉõZGG>¼= 8ÙíÉ>úFXr[É,]¨â‡¦Ýý>#"™~ €cèáW0 W§çÐøðÕW^÷ꜚfn§í~qq”ŒƒƒƒƒÃ¿‹g§wo»¢dÙb1øÒJäŽî…—J=~¦rõ),¡ôrɃ™ØŸô à¤Yʨ±UD‹W* G˜¥)š¥hE ÑÙYn¨"P+Z€»Êßx6ð`\vÖç HœB뱞:æºÜ!³†@©Sª{‡*±vå¿þƒý_~MXp¶ÞÌVq á EŽg<ö™r8äU/?·1ìÅH¶Dd±âoF‚¦Å3pe>‚fãÈí1[.×…u‘# J«µzX¾–›X/lÀ³z‚W×Ú ^"¸0áY<µzQƬÁê_x®<ôþÀ±µ#¦iÔj‚Fo iÊÎ\é›çwý~Ç£äÙç Þ+ûZšR˜oÑ»CÅ ­)üw]._ªé ·«¦˜^ªì!õ”õQ•WcCFŒ•fVmšmÖd0\y>=RÔè_í>Å]V°¡A‹^‚óWÓE1Š,äj–p«iò’â]wa¹›®ºTéÚ!)YHN `‹Þ–– w!½¹©åæïˆÑ—U¢¾æáIïû®Éê´¥[f±èóË<£]=IP”÷‰òήüLZúÑù¸¡X{µoâ.s¾è¸2CœÌáŸé]ŠÆâÃ×u[-¥§gªW2´Š²u“ÜnçõÝ­•n·Úy¯Í£Ô r½SÀ‘j¿´Ô/Áõ!öÉö¤@{Ç‘ÆüEdZÁæK¥ðŸÜ5õõÇ™ý·€òªÑޱž&ÜwÈ .7±z’)l¤ÓËžª •zóË߆½ãöøÐfY˜+Ñ€!ÿf盃ûâÀÁ`°««ëÿõJÞm”Ëå©©©±±±MÇÙ¿ø Xøä'ÿ_,ÊÁáçÌBÆÛPèk:7® “Ñ;z–‚®Ú¡Bǵ…-O|âYúù#ÍþvÜŽ´ú¡lêX½‰~*@«E7” /ŠÄ‚mÛU À4L·ÇCxUÇZÔ khʆ&±Ó— Põe(Áz Ä©i‡CC›m_Š0E’hZì‘—ÊC4_«„7‡a¢‡/—2 û%Œ¢4iYo’ÿ†‰œ1¢.Ò ‘ëVxŠP{ý˜õÂ11ÏÒ8 mØ”6‚€×]’­@a¦äm»tÜ…7,‹~½ÒÑ'lÈ¿å4Oàñ­ÇmÇRÍêâu÷ìæü?]ÉéÝâüôf‰h‘TXl˜$ó/+×ôí’,ŠgE¨–Cç¹µZªcw°¹ÔëÍ'k¾W³F»(ÂMÞ嶦*Jˆª½©tõ±É3z‚#ì%_¢ÛXhBd¾‘u÷Ô[cg)⊼ '1 B™Ó…@7£©B=‹M5«å®=F½m+Ç‘~¯‡Ä.EêØÛÔL†e]‚ 7ßN P¤Õh¸}¼!0úá)ϵý%ÇÞ\ò÷G7ßõ« ­ÝªÄo®¿|ÙTvÄÛˆ7½~æÉ¥Ð™ |£ŠÇê?JÆöµË?^Ü«]ßoš6ʦSé¼ñüjÇ™eb5‡ª% 3 ž´¼aæšöbD’ߘdQ,ÔÉW‘ ú§ˆ±-VB˜íqûèQý£×åÚÝõTÝ}® ž“¥8£'¼ f?š“õ†«ùŠÀÒÈëZ4…ù$”hµ­¨ÙÄÎç]Þ-wÛO¼H=ƒwÛ4 7±¥ž,ºÇ{T¯ÇI’qø#ñÍoÀüÇ?ÞÑÑaïHŠ;>‡Ÿg&}÷lßHXÈû_X``i-ûÙ[×MʉL»oÙ†-»ÁXâú\ñâ™Fwݬ𢠿¢”3…Ù¦iúr5 '™ížòªJ¬u˜‰`µO_³üêT»ÔsÅËé>âþ³ea+d`åÝ`fn éô±gûiS5Q(Ž ´–ß ¨¯œõŒ]V(Ã~Ù É„«¹X¸PfþüãEÍÆ&fÉ/ÿ+;Òiu›¡€ ŠEXþ•>½éêÝÜ¢¥£çVGnŽŸ];’5çÓÌX7Pš=û²É‹©Á=oõÌwºgŽ5z†×K•¯þ´'R=7ÛuÃW ƒMд6ªÔ)Œ¥ûù¦;ÒL]]'aÇSÃBýzŸJe`qÅCèi#ŠchÑ ìàæÃJ¼¿¦3wÓï­¿–÷^}¹:ç š–K.5Ü){Þ`\®¥#•–ñ¦àrsd³ŒÜÝäôq£Þœë¾qí”R¥ %Ÿ¿Rz;1Ðá“35ÏH¼v¹2–ä-Ý2'+ÂCWW¢Û ‹+}âòØQX¬.‡ž8¤ªŠò,¤Ö¶àê‰b¹ÂŸÈÙ6 Ðj­NüÑþ)žÑÛ"—…&"k€É7L†Ã¶p½E}(¶»Úª¡j5[* áõdäÍ:ÀÌ)¢`Öê­&yøœ’0xøÌ=æôþõÇÈKΙt…Âyº³¥ô³­ÐÁá GÉ88888üŒÌ§Å° ¥õh°…œïù¹Ð]Cɵn-EEêå·Nlxä96âƒï¥>{ ¸séŽ`nÁ?Ð3&›FáåÕÀ]±|T¤ÒÕõr42k&¢ÀbV¡üDi‘ãì– ”ËÂV¦íØ ™À/¯eËÀ¡¾»·)wÅkiÅ`á—«ñÊ⊡?tß+%E3,l®Né6æ A¶©[" œ™)_Q'ª ž¹«V%B®-æp@6ÉÈÙ¡€¾kËä°—Žé"±wÌæ8œý›ÌÖh²e™>²ÜumëÄüÊáIšÒ”ÎgÿOiøÖ|ÇÐÛÙJ±dwóþkš=UGØË_¶¸¶„nc,ÿþƒÑ KÙ¦aÙX /$uwœ®O[½–Ùp˜fÛ€l°˜Š ÈF€@ T@@H`4Ø>ˆ~r„ý\›çó<†Ã=KAwm7s2{fNøê+½ 5ê¶D%_.ýq]bn ÿÐ ðØ™õ_ƇìÞ„=½€ùÛäHšmz~koþÿ£d~Fž‘îݽ^¸v!ë}v:p÷èò¥¾²Ázˆ­_]Gýø Sä@جÔñ¹öÅi²³eõ“€¬äÍl2 E†@a& €‹Lžp1ÅÐ$[ü‚\”WL¼ogéϼ¨dž8Ëñ—6œEMY¨†ÏT£þâ­Ì‰ÿïUù?ÿV«FFE¶ž®™²±®X´¬f·Ð`€ÀYÉÌ•èKj„»Ö3L4ÊÅ‚ö£ YMpuµ£®v[nbÓ øW¾£ ÷’Ãjçܤd8RÝH¾0—8³ÛÖ’8s¤šëzî–÷~Bý?õÉ{©r7[8«ôp[¸#xÖ¸e4ó̉ЩYïXw¹©RŠßã’§Pü.Å?RîèjÞàê”IÙ¿ôÚe®µH!q×çmŒ¬mnãˆJ?\xÝ+.n©óV)»9y°ê,t^öÖpù‚ eZkj”—+.!ÃÔ,Ã2-52âÖ&íÉó Ãh\yû¦i”òYw¸Í0LSÝl¬¯?LZ[«—ö©OzöBX’aù ·ÌñœïþËZÑȷݤÀ¤Á¤p›Ç4„F%yƒA ŠéÐ<Î¥š¨ërY-.×)¨àÊb¿³ŸÂ ™J®ë÷EŒ0ÀÀÙ‚&Vv[©˜]©y±š¬i3p1Ñ>£Šm!d!„ ¬øBÈDȶ‘r5¶m°ÐL½öÛß–0g%а?}˜ëõâ`ÙK¦"µ Z’uþ«ÇcÅ‘«…ûCò@kíRu'_%ïØk÷¥®(JvIÏüóœ"/éy‡w=Ž’qppppøY˜O¹#ÍÔ€ùŒôÜ…ÀÝã©ËÛ6 ÚM©[ž{àºæ‹³ÒmïѺÚt¸ïüàKžÜÌ´ŠöÓ¯“¿|A6ñï[%spombQzÏ©R¢Z­‚ÖXËì¯Ö\5ƒ xƒTI5,$°fT´æW]ñÆ¡“þO][_sÈä랣+±¢Éì—>ÒsBn¢¯ÿÀúöŸx]nõñ´)^á´xó\luÒÕSù %cvÑ€Ô)AžÏýúnêo3nsÀ£ñ!«¿×ªÛ¾Ÿ<ÿúù–½ãv<‚B—ù3xZ»©sá;Ç:º;Ô+Mžìû4'n]Žùjâtö´Ú3¯wtÒ‹W*°Æ­Û³ß|>ÈvwøD}s¬‘ÁòhÕ¡q¼ÑÐöí ¥&7;ß^{ª)´N·\ÏòZ™O¡!E‘Õ n—Å ˜^h=üX-1^è\wé4—kÛ\8i0¢PžC¡Ó\âøÆ>èáàJ÷þ†Ëwõ -ÓhV‹Œ/jå’ÈÔ¯ÀÓZ€Õ 1આ=f®Ì†¼êu=ùÇOEuß ciÉr8A7»¬ZÖ)¤óvÍ 8 H™pë8£cT ø°pe>Ì*é<½OLr¸ °óx.x'äF¨G¹>woùžÙ+_CVVpÈ7ðïLa«cµ'ªÜ5žlªÔôªçÕIo¶æŒ("¯]ÈÙŸ j€mÑPà!Þ"]ØÜÖÉÁá]Œ£d~žôÜ{m æSžg'}÷ìHm*"\Ó™(¿µQ%pØ6†“úÅ#6nÙÕdš µßÿ)­XùÎ8 &f›ÅÃðìrûÁ“ú/ï.R`¾\J˜òiBm•©²Þ·³ôÍçCŸð«?˜þæcÉÓKá7S>ŒÀwµTîŒ]Š$ŸzA½çfžÌl¹Ncñª-‰øáI~ #×;*Æ‚ú÷^ÇúÖåE Úº¨ÍHª^¡b¾·K[ç9pùûo·CN¿Yl脺ctu\Àh\³yî0+‰ýÌÃ}Ýo™¹¾ WFÙ™#ʨ¬õKÙ B÷¾§øÅøïitågš,ų›3hMÊE¨²ÅòÀ‚! •ÎÖR㲨Ä+3îlÊÕ<ôX–¸ÕÖ¿&ƒå ‰¡j49õRbþdvǵÒj²'9ùxÓßoëFØR6é+/V÷œÞþ Žm‘̳†Þ¨XMÛÍôÌ–ÚE9#{blvØ[Óµ(¶Ø£–æáÖÀÌRHLŸ­Ý½K\ Ê£ãtìÝr’ËQLö{ÉáŒBÂÂ\“½+´úƒ¹¾{GwïÊÞ2*þõ÷LM…s x:£Y&é§«¡QC·C^HºÁ¶t`Msëì¯wNÈoD½ðø‘†aq±gÀ·àC®çUxÖë*Žu¬’Ù"ûÔ›ÜPûÏßqïëÜBû=ú‚øZ‘»ûÚ- m;8¼[q”ŒƒƒƒƒÃ¿™ùUa ª†¼ê|Ê}ð¬÷ÞÝ™ ´Ù¯jL·¸utÙÜ2{c?:xÖû-gu›SyM±=T9 Òì&+²EV êîë+¦%Ò…‰ß}o!ÞWVZ“9¦X'_Ydz¼Ö=;”½CÕ³+¬¬CØc}óùpo~;{ånŸãH’òû¤3€ÚÒªª½ôò‚Ý: WÈ7£jÔú?ÇO¿Çd…8«F†¢°H¦³N¬ðµÕÀŸôœØ\^ìÈÔÍ&háöº–ãR&ÉUxò%{¤ê…Ú>ù Äà÷V>fk©Â¿­!‹+ƒÌÊi£{‡~Bnâ«9«4ˆb i– ®e‹yõñç…þ˜wIåºüˆ ÉÇôñ¦Èé‰ o+ask%¡K†÷<—ƒ´íIPùÝ)^Æüvü ©Žéï*‘.%¯Å: –_Þs›'µzã©zçx­¥SgùôèÃo>j[¶ÚÒ'¥§0Ûöξ¾°ýáF“´ß2?Þªæ0„YR+QYZWhCq5І r6Ј´nìj¼ŠÑÃ?NõîJ@Fê®þÙÙ›µgæ‰ÕÖßëN§!ö×…Jû¢Ú)Ö~,{¯ë‘oÅÆtÚÍîÝ?š ›IPÚm»ˆ±a;³¼’Êáÿë çå ³×»´{IJ=>–²‘iœ¥w5U¤P¢‰X7ü”·aï˜üg?â0Ú¹.ܼ¹˜¢ìQ¬Ôp“ °œh$Iؘm梜1-:-ÍΖ&Ü»d…”Uòø36ž>.¾šdÐ'vËŸlI¯¹ ’Ü—Û½’¬>üãÒçyラA×AºÜ$Å Õ X(€à½]šÜÄÎÂ1D^¬\fñR¶LÜÒ^“l òvoèu„S8[ô¶t;(´Œvu@WìǧçÑñg›ûü_?eßÄÜ6| XùÒcT¿ï§TÄ’› 7±Õ,€WêX±Š½p¡±çŽæ26ÀÎ-uµšÐ1†:íûö¯{Ã^jÄz‰ß 9±LÿÑ$†“€A®!b8–ÑD£gJ¾’Ó):ÀhMµsµ†wâé" ØçÙj`ùí}%ïÇùbÊ}þTðåïšbLu×ÚúVo¸×³2;ô½F÷5µ–Nd˜ÈFLò åqÕ¼]™î!N+—èxHßt#´¦€P+К äbµ}§ kѳÿjr~ƒ—dO²áÁlKôœÿ|×ͲBLO²i©<¬r‡{CoéíÙ„b²?Éw{Ìv¯öÊ÷áŽó­n"%ÓBM…œ™·Î¬”‚q×÷6º¤UM‘üm1·¿†~býù…µþÚk%³¾Œ,+./²d¢†yVÀOZ†5$¨2 ní{kB>}o»vB1.uÂù«ïS¿þõœEÏhm‚ÑÔžÞØsËÌp ùï½Â µ^±Udÿò3^.ÌŽu¿ÓgâàðîÀQ2ÿ6N^îS²E橞û÷7õ޼DZ¥ßJÉ>­Ó!Ð`¬W}åwï~à]Âÿeï=ƒô¸Î;ßçtNo¿9MÎ`€Á,’¢(‰Q²‚%Q+K+Ù*¯}í­½u·¶d{}åÕz}m©$™´d[$E*P¤˜Å‚Id`09‡7çÎñ~˜ÁÌ`0 ûWEºût÷észê=ÿ~’¹úù£ØÑ4Qø`7W“ D$³1ƒÏÁÁ¦bÓÒ¿üÎ[3ÁsXÒ{ˆÇ^uNG¢€ù\·&CU‚rå+è•s „Qd_– A8Á 47¹wÝláÄôq{[W«ÅÒ›î¾$‡1’LÒ±øØGŸ}áŽ"ÏÚ-¡,$Iµj4 ñç`IK×êwð³€ÈªM"ÙŒm&Îa²ëBA±¦Ña=(IC¼UõÍN±§^t4Ã#j¢#ðî/ùñz9ÞÏÌŸ!R#s»nÁÈ-Óm–I‡ ã”*‘jT«\~Ô€i5YXš­df›SázJËoì? È+WÞ˜}á@gîoŽ6ÿáËpŒUšÏKÑþ¸u¡ÆÖf•¶ÍDø NŠ%I$­w‹ü7{³Ù<– m®°¾”Št˲䊒‰ÍøÎÍïÿŒ+†oªƒ½ƒn:ëœm %œ4™Ny÷í—_ž*‹‚mPæ%±Uz5¶§=i\˜fV” F‘8‰U«¹¢g@Q¼žï (ˆE`¸ÊŒM˜_Ù6á+²JœŸ%ÿéuôµë±ï|rdÆ Àƒ-³ÿ6ÞtB :º=P¿4;kúýæñQþŸŒ(së>ñž¡ °uþ' §p|°ß¦A‹aé•Ía‹f cˆU3ZÔÛ¨Z‚®p¸f¯h«É™Ü´ªgK OëOžóŸÍleÃû‰!¸ôm}ê÷w_ÉþìˆÓužzÅÿfJàbôÚGž’ñðððð¸N0=aóè0õàM•µ¤^—“•Ä6ßÖE-NMrƒ«ÞhCmÙ?Ù~8JÇpdY ¹ jŒ¶¢¨ê8rݘ™v)N¢¢‡P GÑVo­èÔK2ñÇ7.Dýò’B6Æô¯5–g%Á’§W’býô.—1À;Ó4ÂÏXë…MHÌ™O¡VžuA;[ ¸8¾’ÆŠd¸ù˜[H(¾È’^jQ.…€)¸pêœ Ü}ÅŠé>§¦Ò¡J·m]L6_[ •騷–³Ä¶m«¶VÞ™d÷‹sP“±°ÿýâdHW×MLF Ë)t½û¤Ifvܺec„ˆ.xìûÐ>8°…îzb© q5Õ¹«ö¥2è‚<ÀŹp`á‹w–Æç˜ïþ;}×ç™rN;]ßW\¹èx²œˆÓU §Q~0ð*F™žâë¯tëèìqæ”c»€0„Q¤cÙN´‘¶Š'8mº=uú…¶ß."ƒæÖ ËЖ‹¢\ ô‡Oу=ê)p1!À‘¬¼”oÝÑP`h»)åkt(Œ½[?·=•]"†‹uÉ$˜62m$;´e#ÓAY•.”$!Ý„RÑýëQ_wûô¹ðé ,`víöÍé0wÜ€o@ê‚A‚ ~V÷9¥sãØÙ‘ÊYšÂìî5ri¬rf©žkeL²GÐ RÕîôË ¬K“¾µA,öìwv ûl¿üBXkIÓ¹äaœÊVÿük"ϽŸ$ÀEºMùpcUzéªÜ\X¾è­Ãsv&c‘ˆ´ü>ßDà×>¸´ˆÏ©9è8ùH¡ïÖ`iê}Ûb.Ϲ?€ýúU@ƒÛ®¡t Z#,Îà­Ö©E9±É³øÖånxÖ‰vFÆrzáÜü)›ì]o6«øú|s·‰ä cæÁWu"Zo”¡… ó‘™#¹¦“‡¾dÐlóÉÇ”D;ç®dÜD3€:ò«ô­¥ëº}j¹Ýšx>|ÛgôÒÑ#‘‚ U½DiF#foœDŠÆ@F®BµçˆÆ¨µ,¡uóRA „™r_›þÆ)¦ˆî .@4 Çs:hK” h”ÛŒn êƒÔdSÀâØðŸ=I”gÒQð&y£3¤Jà…#XùYø«—}_¾¥|ÿõÖÊ‹šÏÏäÝ1ýÆÝxs*¸Ã_l‰” ê¾̺ã0"ĸµ@&«ØøœõÖ(÷À ÕØ¥žS4jÍlóÒ…ÆŒDeóh9g7´`¹2 (ççIh[m ÐFµ´j“¹0'|r‡6òßÓ+ ]~v$˜+ðêHèvŸÛâ~¶¨ëááááá±%ªòUýpLT„˜°EYÌ#sL[½¼içκ¥Øx3/àöf´êŠaªX$,É¥@²‰¼AÛºVÅd¢ùç…$ÈÙ]ʯÊùrÅrû£™öVv×WítyìXéÙ—•×F¨3VìWèÆ]ÛÐöh­lß¿·´VÄĵ@®Ã“Z]²y xÖ°ÚÒL‘ H–ÆSÙI¯®õ«ð}€ØXxsÇÈ“óC•¢Í¤^ä+Øü¨PÁ€çà®›àÈI8uþÚ|Ì·s Dç;ņ.s¥fsåø‘L]»_ùâ]Õ£ç©S#ìÚ¡ŒF±ÄEW3€a`î9»(SKæ'{.üŒýN¦¡Ç ÙØüeTævÝÎe¦µú„càJÄåî¡Ä˪Rcº`\}ë B¹Õ]"&ê˜ L‰ý¦^&|A»ÒíÎwã™V1ì{ð/4„›ß¸¯Ü¾¡ôЬâ§Fùÿú㈎Ñ_¼«ú*½*é^’¸‚£ÏîÅH"[æf²¡[ë‹V«V€ª&œù~÷BJõsvgD,¤ßq] }ÿ¹Yû`o—“‹ÉÛ[*!ƬKбˆ›*€P®Ìå‰Fa5 ]ôV›^㢣htF¡WêÏ%êÛ/ÕÝ·¯¯çƒõœ ÜÃã·OÉxxxxx\-<ç¤Kø·ƒKb-Ö83ãëmÚl‘¹:É×$§3oN3ŠÅ|º»á´¢bÑ®i¢õEaJ >1±=ŽÒt”zOŠ'“É)¶ËDT»2ž”æ±Zš)N ¥I†ÇÙm=»îj«o [絺ëì …#/½<÷Ôq÷Ñó Míz~¦ÿ|¦1/]üˆn„)³5³Œ‹,½>î9½ú°uâÍ3EÓšê°ìZ¯Ê5$ [ga¦tµõÜ+0³ýÖ‚Nk ÅP3_»¢©DôAª¸þÈ<ßk9Ÿ¾ª1_tµ…y º*¾…‰àèlÛ‰tðsý§³–o¥(Ï:ƒ½êã‘_ ³…P7»9º !‹ÒGJ?) ÇZ>™Š´¯÷°Zh{v©û°A³ÌœÔuaHµ²¯.^¯Õ·¬ˆ¶˜c05ŽjgåniWœÐƒe“ô3X[Ü–ð’M/jLV6"æÒÑZSEÇ}Œm`\¢±EL4i‘c¬çf˜[Jõõ#3æ {Ù³²ŠN] ÿý9þ‡ï0dnܵÚRV‰Óc¾ïý"úèó!„Ðß}%Û5 ò¬¦‹ î%Ò”£ý å­ñÈÙEC@ZÛŸÓÇZn ´Ý̹kiÜj¸`tã4±³³¼¿SùÑëõg¦#ï?G“Uß®ÆÔÙ‘*¢8àsGcõèdlMÇKj9›€…<»³UYÞÞ[€ªL¼•¾~0 ªo/¶N9úŠ)=<~ëñâd<<<<<®žua7[ bá÷ /ÎÕÄÁÀfÅo.±Ÿ<°^ÍÐDt–m%1ˆ†`/º‘&¸(_Qƒ„«Ø¨6s,ß9o »Õ=PÏ–åÓù`¢ £T‰,Á„–ê­ž]äÚjø¥Y£Ê¿ý@ónž—Ͷ% ßÙ:ó‰Ê°¯I°X`Jû“œêZ‚MaJkk-†ÙÕΫ嘶‹3胑4’±ÑŒä™ß¼T÷wGÜÑ(JW;ý(ß~8ÓÐITS,†¡TƒbI} §»|¼ Ø%¢…çàáOZ?ü9 € ö_•Q^öÏ _iœI1-mò™Kƪu²Êað,Tlš&֗Z}ÌúË_oìÏAãêΠUä­rƒUÍÐÜ…øþœ“˜´ë÷'VŽ’šÒ¸øÎlÏÝ+éȸbZ ×!¤ZSã½²/ê“§}zµVߢ†J¼üxáÀÝöÕrÃ2¸j¸˜a@ɰIB}>_ D†’²Ts*«B1 Õf~SéØOœ !1>/Ë6S— Þ|ë=4P¬¹'狤†’ÕÀ¢<;ãºur’ýÈA®÷·ÙÒ ½‹ kÄ{ÄáEê@·ü…WåuB´ÍõØtq ­' ôÖ"0ôñ]ë6C³÷Å/‘ *tËËVü-e[ ‘ßÙ1ÛÕPûñ›3þöÇl¡1f‹±® œJIe¥ÕeX<(Ãràæ>ÄІbÐ+%eŒ¡Z̯Æ|ßÙžùÇÓÙ·=Øl´ÕUà­bäk½g.¿…‡Ç‡Ï&ãááááq tÔÛËÙp0“4*@_îZ&ÞÓ»þy[BóÔÚ’cÒª0ˆ0åd’ÜÏ2Àã–ìPE#ø³ÂnM¶µ91ºjKiÞ•1. [L/bœŸôÇ Œšçš³LC£<Õ,ÍÐŽA8ºhfOýôL·vîdÚÿìyÝ^¡›‡ÄT{ :¼[ÿÄò»}áë;G'ÆýVæ­ôg¿ôUÊØtºîôd [¤-Óðö-Û@VGa'Øëï¬Ïºœ&ÝõG+Tßl}j…Îc?šÛuÿŠŒ€8^Éi"$cÒb¨tEw Ñüæßežs¾×œZÄN _•_ßx>rGbY´²‚]Ë2mkûL´Œ—ø/ ž€´•hB›ËÄÂÖÃw¯;§.Ð (Xc<( N1â²Á@K‡QmÜîZißR®Ä{j³*óÅY9 £ôj®yG ;‘ ÷$Ô°X.}ëCá£Ï$'ßMµ RÓÆûš–](•s©E)3ïb”í•|- €˜«Çò£V·ŸÔÓ ?Q v‡*Žjœ9^xmÞßÈÔnH¦(ÒVXô¿2Æñ†/>Ü4žË5mw[úôDàÿµéÑ—£Áþú=éݵ&¢Is]i@ðöfáòÙí!§…Õ²¥õ ¢E…²›Å ´VrîzvØuá¹òÐ’]ÿ¹ƒ ­õ_ßi>3¿|‚.#u~é=ŽÔc‚™«ðÀÑFk°†ñüÆ–!Ê89»§WžÉ†îj«@®Â?;忾+ÇR"ÅÍãáñ¡ÅS2×@]ÌšZ~¿¤Æ é”ÿ²¯Ñ/^dù7Ffrá·y ÚºŒñˆ±°Ö€B‚UÕ‰£¹ °„3¬¶¿mõ¶&ìÂÒn㘽`Únº¬µ‘å Ó¢Ù˜”YpP´ ThÊ×kàt{ù\RY€d™’ÊäK‘Ìl+£†Y³§W)YAà9ˆE ­^??¯úŠúÑJ®eº¥Eº8ER• Or;²x#‡é’Mé8•µÄEÛÇáZ‘óM¤Ñþ Ûù±ÙwçÿæM÷©‡nõ±ˆùÞ3Î[‹HÁð¿z¹ùm­ñ«s¾~wjg׿¢¢Ž‹lw}eÄRÎf=à­é Þ—Ôž:¶>5—„-€ÁÔvfv/=1\ ¿\ÝÑÕTýì¾¹wg’›Z^}¥åüC‡ÜXÄm Ë#‹«N€>Z{7Íž.rë} ×SÁÞ†ê+±žº²¢S}¤ÙRužµàÝJdGt<<>ÜxJÆÃÃÃÃãà9'UùÏä²J —Ùd\Çumç7 ¾÷ cZ<ÿ6öԹ淗:ç«ñ‚ppZáb¤£_¦æ°$Žõ;¹¥!çtòbµGPtS–k½‚:Aöº–aËe[ShƒS:F¥Øº)ÿ¸n_áø]­ÅšìÞÖ¿ttRŒbéjŠá e<4$Ÿz¶04&µ\ú\`ZrW£vßM¥¿ýr–ôŽhí7°ådË|{+Ód/Öu“!÷Ôzí¬åâ7ØdZ‡_åÊËã{îÛ(c€Ãµ¼ºjQy_3´É»l½{¬ÛÕjú}î“/ ï3ògçã‡c…•\ „£×)cE®ùÄbcQ!Þwa­™dÒ!ì’>8ÄXçæ†Åp@ týî÷Ÿö) ‡üEùF#­Ÿòš´&»ÖOוZëu`Â0ƒb-6Hir‰×»«Þb+b&?Çâ«Sµ-Œ+`¶Áèù„4Ú¬Ž9.šCu%Lȸâ²ã ú»rû]{H:—ž«|í;ÔÔö¯»wÀu»ù7γsZØRúÄÒÞYøHW­€…þ5{à—Ù¡ã…î)QPWå“4n­+m‘ànÖ'>Ö´tëðöL_R}íÔêl³zct‹”k„ÙÊGbº¹ü³K½óZò3C3ðÃwúcõ9–êìçJÿ,¶w‡ ÉòHvUºTk¨‘¨êzŠs©Ñ,.™LL°¢¢ôÒ…†O \ÛáëÝl×¾`õ 2z¼8k€gídÐÍ©im7QRÈžøGï4†©úÂ’ôÑö {va€PNö§¿$Ó*aY“_I‡4Þ.»Æ~tІ-ÖjUI«µ(ÉL›mÖVKƒ‹jN¡4‰;ºŽS)¾¾ÈD÷8§M,3OtÇyk&n D¦¨xÒIÿýøO­»~¾4Ô@×ÚøL˜-€i;¶¡ñ$È& ÇÉ/ÃͽÔ$Jð!gyʉÝyH}äi¡«Õ\‰×Y©(CjÃä1àJ…/—ä‹J†dLZäÒZµûc»b“á¹-ò%¬ˆ@è»Oˆßxpk-ôÞrøž¾õïô„£§­h»¸»aø’Îè¾.fU’HwªŠñ­cös”>ا×Ç­ÇžânÃp І…~½½ØˆO¼.Þ…õ'¾’‘ @8FšUÅ„ –R\›+Ù´-–Ëí¹%yäÄKìþ92å*°’tX±h$Û4 $‹AÔZŰª‹¹8e‡nÀkÅ*¼|Þ^â>¿¯1êj¸6¿ìäMâ@ƒ’®âŸ?¼¼R#2€—Ûh¸ÞªÍ4Jñ—ŒhAisl×/¸MB 1*TÀ@¤ ¤Ï–køºs—kê›4ê©<úb´¯™¦¬ë8°U*‹°¸Ú-Ì61é9)þLj`›˜ßÛPzü\×P²8P·4§‰äÒèï}Ôá9Ž1Áuse>Ë2±¯µv¢às/š}ju¸©v.¨+]H"„:â…®` NJ‘ßmڢ쩇LJ OÉxxxxx\#hõ¿+‘•þ2›Œ¿ŸÂ"·òæhìG¯×ío¯íì(6´fÈHTT!Â>­æ¥!Ì»a*Šo)cÀ´¬¥åt_÷r•™ƒæf|Ž’R–ƒ b§_š§­*è8u–Ù¡œ\Þ×{êÁˆþÝÉë¾] I1‰$¤>«=v>:4&7œ(6”¶í|t¾ªšQÚ–Mòsôõ­Å@/ûä ´Dˆ§G-&æ(ežu ˜Ï½ÉÝÛº›e¨]ïþ[¾íPº®{˳¤ÖËVó²?ÂW n§†¥Žƒ—·ìŠ `k&žu{5ôݧ_¼«ºª¦.2“ E=*®'{ý\Ò"Õ¶JÁë8e]xäLšÁU†å⑲MIªM• ˜—ÖsgÇÂö—>§kÓø\ -WVoÄ«•VgfLØ1…%iWQYV @€-æÆÂ‡ Å”ôCÃ3Ñ Ó”k²u'ðú²NËäuzI§pˆ6ðÉ…–Ò‚k"„Œ€Ä‹¯M‚©‚VB€‚å?®Ö;øLé•#Ù TüýÏú ¿X3éÇÇ„|Zkaõd»hø|?zÕ®cÑ8í:NPJ§Aé÷—8JWMÆ8+·eËÔ¼šÌÔ#´¤4EÀÚã©J湓¾ÆFxÆzà`ñ§oˆ÷ Wª†Ðþ~¹.ÖgœÐzsÍBæç“ÝÇon[<Ÿ >¿#£“ïê?ø“õ‰‹ ær‰‹d$²zOL96ŸüX .,ÍÍÄ©¾¿9ý›©ØÃû.L/ } ÆX¥yÈ_` Ï ãáá)kd°C;rN¼ïpîJ f$bcfXÕbÞÊu€þÈqv@gCõG¯%`gGÑDÌ"ÕÒ€r–‰ûí¥1g»é@=YQ›3:ÖAÍmY¼Å²LµVØž_ˆúÉj€(qÊ2¥Ò|o”‚ú"è8õèt}ô`]HÉþOó'j5”WcÍSLw[í6 ö)ÕdNg<¼s›Xy¨ëô“ÏGö4˜ mÀ½ô,©óˆ ºZ©eb%ÛHÅBË»?›Ýq¯ä ½Ï ùI=UV”Œ$„cË[§œÂp$)(ÞòàÅñïU¡G~íÿâ]Õµ(v83ï?йžâùõ³ñ¢Œrÿ¬-ÑR°Ã2k„Y€E%±Ó/…ÚHä”*…juUù(:]Oo,½‚d`zX)*¸“®ýê;L¡‚Ū®*1c…„3%»"Tôù¿vÂÕXÁ! I'íBcH„® • /h.O+JI5™wÆöŠc\ã$˜^Ò’“Z¤‡Ì¿6Š&ßKêWmÞÞ. /ѧÙ ®Ý>PhL­\AÒˆ'ßôçT¸¥¯¶\ó¹Ž[ÖC®9…œ—‰Ú×ÕXz;“§ÀEàeò[ÝŽÓÙÊé}q¹1¢‚ëŒç1¡Ù·Ò‡XH?Ыþô½„TÑVbT®–Ð>Þ|~¦l²q ¨â€ ÿüuëÞ’ºòGÇÂ;Z¡X#úZddcyÎI¢¤ŽMJüîpñ{'Û¿¾kj픣µúO'=ƒŒ‡€§d<<<<<®•xØHŸ¼b9sE§š¹u3WŽÿ"Õz[<õë³8ô­îäóó7.O,Šß®áö{ĈžvEV[([ÁEÓ‡0ˆ³Õ—òM Lþˆ´­•Ì·3³—ßH­Uø·#P};Ó~gà8ŽžÆgÙ‹@QkÕÉJÇ锯±fu´¥ÇûjoNÅ÷è )®\·½xz*´HØ_?±#JOeü¹µ»]4¨eͱ˜0¢Ñ1{¾ ¯>2Ï:7 jO¼Â}ãÁê_¶ŽÔOœÝy¯$¼ŸŒ‘ÔÖ -ïã`¸€€¨2Ø£ Gž |ñÎòŠ˜É•¹·©O ­ZŠ^?)HؽwtVI«b£Pžt¹PÖhz5Ÿ15V b¦sÄBŽ6 ¥'_äÒ%4’Ázb\p¸…2üîž´äÒ9 r:Ï: n³æÒØxÓìIƒæÓÉn £~v¶õSÐéN‹­5J¤)¬)ÀbÙõü`,©mkÍ?w~Û—Õ'J]WzÌ“•î%Ó7àNüõϘúáÏ¿‚‚dùD¡ò7ïõ*’}GqÓ ¬gSk×–„Ïߤ½7â?y¿÷ðÔ¦ *: o+½aÃbA«ªdE!]ǹ.&e÷Ý2=Yô¹ïXVWÄŸWOS>‘·\|œç ÅÚ(¯žµ·±Ëm‘ât1š6Õ©ÌL0ìÏCdUÌðŒ™©‘ªáü`ÓÔsÙ^Ò¬=>Ú½§YŒd\ÛWÑÖ6¶¶µÚ“OVöø—Æ?q5ƒ–ðÕÞž‰4¬n–­¡âÜåJ!¬*_UÌÁ!ôè ¡•2)|_½.½r赓¡¢ŒÝ{(µÖ×%"X´gq¼’¯é©Råd×÷Ú8ѱ ¿Å*iTŒ7öë<çðìÅh%,$82ß~ÅâŽlÒ1X‡ÊŒ¹97ÑS[*F¬=à«K‹"_Òs5J” Ç@´èCÕÚºK^„+³Ádf4‡s[Š™× ÛK*îÎ,<[b;÷Õµ%1Ùßšî9ža’Pëëëê]=;rù‰ËpˆeÍúÕ´Ý™´’Áæxxx€§d<<<<<þÜÐbÈêÖJÀE§?ßÕ–?Ûwzußeé¡t—)øëô 3Ö¼<:Ë’ó¦À!Œ²Í53Ù× íQÒ?ÈM,êñw¤ú -r0ÀKkWp,S“«M1ß\FJͽÁ9 ]­Ã]‚ÆiÔ™Œ^e—çG롨ñdfÏ}ÝtHJõ-¼^šRÁÖ”Ð.´gŸå‡þèüÿõlÂ|Vá@ý”)ÉÆ“VSÀA3Y&\ýNêýì™_˜ßÊßþû ^͈ñ´ž®®ç ½è`¶sS³ÏFøU)ØÙ-À£/„¿ð‘â/ϳýé <õZ(]&¸¡|zL€•”Ù¯M‡zË×H5k¸ÄÜÌÍ'wªîý·®Ïà‘ÑPCPŽ…/µ9 CîŽc9꼓oòÇë÷‰†YþÍlТ[:ØÙËG†g­]pG_Ý9$µ5\2GÖVQH*î÷™0‘ ØB’lŒà;ÙòêøèCŸ»õ<4YŬ⒂ ªBÌgh@¨(€PF¢&«dGÀFŠ `(Ä[¡%,¦ä{Zs5K¯–òbÛ€˜ë ̵ÅÔå‹0® >ÊØÓ#Œo^Ú½µ{n­“†Oàò!º´Åxx|(ñ”Œ‡‡‡‡Ç5Ó–4– ìÚÊ~# ®¨y¤û®›‰úVc0dè l–=Ãfg±ŒD­RSjö£o³ûö+2pMlmY $ß=ÿÌò¶»ëÊìl•™×â¿Ê÷íå—š¹ ƒ­®Mm¹LùëóG¦ÂQ:áÊ@¹Z=,d!ÎÝpªèk¹ùä¢ÕtQH4eÏõ•gƒ)_cE£»–Þý«Ïí“´D|‚U³")XÍ '^[øÍxËS!ÇvtK{[³]'Ë7_Ÿ<Èž~—†«S2mÄhm%K\ÙÁ, ØeéÊõldg·$ î{<Ñ1žz=úÆ Õ0àÈY¡¾[""Í×AÄÊßwS\TªßÕ:ö¶£es‰€Ë˜¤À` Òv[§ýÆ úþÛ/ÉALƒv¸úV>¶o}B'WÒAèeÜJN0Ë2%Ó!ø %¯¯Â#B… '^#¾pãò£Q©’ÛuT‹ùÞ™¾ì‚ü™í™{òªÉ¼±Üp¦À(íÖºôÁî%7Ødyê°È.êñÊC‡Åáµ÷áÒÁ©u6)ÏóW$l°gÕ·MsXÆÙÂyO"|‚U­‘𬕑HC[Ô\j%dk%ÑÏÚ±+{ʉd@5ÌY»àTŠÖl$‚rW–ÌQËÄ’#j´ZѦ ÐßnO5ÌKB€6J Y°¨eÚ34—a.¾cn$ØDov™óðø0ãÕ“ñðððð¸fêÂÚL†Ýú˜ëK±C!it9pv!9“‹äjb¶&"â’_œ”™´Hâ™<n€¹H=ÓÛD¼s¬’«ð4žW¨%ÆÚuÅ_Îõƒ«]üìý‘“£JäÅ\ÿ¤Ú²z!Ëp‹Kd@õø³î§ÏRý>ÖÍ S£\®íl4Lɾx¨8{y³¢tmÛêåoÞV/`©‚sCcíëŸÈ~îãFó­loÓÁNeˆmó+-‘mh¥êgömýE$ÃÄý[Ôý$0X–Ü@ÈyuŒÌ6÷-®Œó{¡yeÓpb-µLwu.åÓ¦ÛtúÍí³o–¹½·X‚?zòͼìÿßÇzDEúwÌt5I#¥æŒîxwóås;ÌX=éø€“nnLí`gÛéüëÕþe}sÊxÖ¾c_åè0µ6MšÃð^^Ûœ¬ÐÆPìõR¤Î¤_¾ô¾ŒÉ1f4 Dr[¢,Dé[úJÊbú»f>>8ýåý#ߺåÌí>,Ìͤ;"FëǰÀua²*œ­ iƒ>œ(†¡Õ§ÍäBÖ ’žAÆÃcOÉxxxxx\3kg•ÐñjÃuÝFÇî(±\ˆ‘Å$›W}Ð$¦[˜ÚÛ‹í+gqõöðùn6÷F¾îW¹¡e# `®R%‚ƒ‰¥'†»6v&¦Îœ?›yKÙV¶‚ÐÉOV×+K|‰øÎ¹ è/n{=é—¦’×5¦NúÔ²Q¦K@Uk5ÎRv5[¥ß¥yƺ;u;óë ­Ÿ,oœ þÇ¿±Ýõè0-«WåÖ•–óëU5‹ÁF®º´©ÈYˆ¸fw‰¶zùP£4Qa¶ïõч†íöfXÚaŸŒÛó›ZžšâŠœ5\~‘ÉâæÌÚ¤¦zÀ\ÓvyÖùO·ê¦6Û‹x5ëJËnD‡ÕE¿Ë ”³š­† ÜZê9Ë04Uöµl<£ô®@íÕùžl¼ÿTõÀKGÃ÷4¥?wýü‚žü—ù]¿ 0©ŒëÂ×nŸm jÍ9¬å§7^¡ƒ=,ÏÑuq»©‡¬ýÅ»*ðÝŸúeSl†ƒÍ)ÂÀÀhÒ^µ8ñŒÕrËRœÕùª8V»ü¬«dÆ ã•ô-Û.Cm Ô§¾ÚwÎÍ"ÑÞ†oK.öG K*åº(Ië“UŸ€+:ÆìzºúÇo%ž’ñðððð¸fxÆLˆv®¼Ù1ò·‹VQ¡Zã¥ÖXñP×Ü¡ŽÙõíMÌöZKºëÝO¶|²õB2`í "¼î2TÜ)LÈQ ƒi3Ò°ëolû‡Ìö—¥6HÃÀ êô%©Zv«dL#DŠt»Å¹O'Ov’¹_-µ)h‹« £ëêÜ_íÈDóÆ.™ç§vÑSïHí“J Gé~é­ÙÕÜÙ<üé¿0úîÖ©¦ƒ¼”m›9’ ÷4¤O$ Ó#侄yg*=f‡‰ª?y”—Ò£;î‘Bq29®7ãŸÙ£i÷‘gÅ©ùv « ©SËëòÏ “ö ò%ŸØÆÌ*×à]¶Â/Ž |¤s0ø£WÈíää~âDÒ[¶œ( Œ¼HÒ,Îð›9¶Ã1æÆ=¡¶.ðÇ ÌY‘8-Æù¹Íò•´j@º­héŒÛq½f“1Iâ뉨ej˜oÓv7§'ª¾oïy5ºóK ¯$¥ÒOR»N,ù&OdïŒ/Þ¹G¹µMÀÆ)";vùC1˜º‹Ÿ˜Ò#oÕ¶oùÔ<ë ö(¶é<ÍWeälåG§ãiJ´½*r’~»jP+±+ ¹ ‡> ¡Ü•È:‰²P“Q8°…Y‡cÌOï™·grÁ˵!Õe\ÇÝá¯ÝÙ2»¬Qe…4 ;¡V ^S.¿‚‡Ç‡OÉxxxxx\²²ºk‹kËÅÍJæÌœ¸¯¥šU·6×GjªÃ”LjW` ãéÝìt·oîlž?à›ŒB­_ä5ã¿´²3o¿°œ/‹PMù}±ô¨’ÈÛ¡2S—óueƒZ²§±“ûÔn¹¿³­\ ÂJ ßÐ/û9R1‚$Ï#¥ÃâpÊÇ¥–uK5dóðسð­/»±$3Ù¼/ÛKŸ5ËsüR ,“ªe°rÚòO[~ÍøìÑ®ÛF­î‹Û}e׬U«=p‡ùí/Õ’atzœùîOý¯¾'L-\Áé€g­Tá’E´ìKRþ’F~ ?ͪż8ÙRéØq÷€õåíS÷õ•^9ò~Bh¡F°XÍ(-sáF¬OS¶Ä¨¿d•,&šL©.N`îÅþ;ÛZìÓ¼éµt%Ô QH³`¬ø˜¹8µ^ba¬pQàŽŽérŠn_»B^ <5Ù—qÙzJÝßVùÇÈgÓB”9=WY”þä¶åí…åŠPÇ×lʇ…ÂZåŠ!I ¦‡cDõ…òæl=ƒ½ÚûõþJ¯Ín-ó2D]T2€aÒ²–¸zȡ٭ê] ÓP_‡gæSXÀ·µƒZ¦,Dhó¦ºÑ~fi5lo¶?Ú=ÊQ:ÈK„4L»õa³®¡š‡Ç‡OÉxxxxx\-S³ÎùßÖ©sÔ…Ô™üf%stÞÑ–‹ófnƒ×EV—qO,õÝœ¬ºšC…!3œoÚëχÙò¼â Óån¿ZÕìm …öY/žÆF•“‰Ù ÑÊò«Çð„4š¨œ‹Ns§¹â”X éS¤^:¶˜*F5⣑;‡j‘ß»’¾íô·ÿ3Ý"˜\éÞðéF\ÚݱÅâ’;þ–ò»wš±Èzÿ þäTëa™qÚLu5 Y¦¢c-ÃOS-Ýc{ÿSAìIõã±ãýÑù“ç?¾ÏžµíÒ5ú‹wךÖéIö{¿ˆ¾v2˜-®;’É*~j”{î-~4íd ëú¡l ä/12ð´9¯Òp¨&3RjþáÄ6àw“G;¸YS;åÏzíä֡蹚¸Ó/€­É–\£‰µC’‚‡ùu›ƒˆ(ÓEÅÔ˜‹.*“=Û”7‡×»'è%‰]­âÙ…&–ÝH &%PîºmG–'Öõ[P_.:¢Œj1/.lûÑtOÎeâqBì ŽÖB-åÙ7G‰Á¦Ò_hÿ½ŽÎÀx‰…)ÐFªëA,[²1læJžfíMÆ·‹¿<ÞBlKTPÐWs!´EÕ²J¬¥‘S†E[ø¤} 5ˆ¨ €‰—ÿMÀ?œ¬;Ð]Î6>r²~vÚÐiæ¨5´m´T! ŒÎABÀ JS¼§d<<.ÁS2×Bÿ+øÛG,×12ò%Ÿÿ§—Åu× 5¢¦Ê—¬Ú$ 6¼¸°í†ÀRˆ.Oš½0Ï-%·G kRàB“¨©ºmÁB²'ßûELVñú¥(­Ÿ__|#Û@¶ºDë©nòÂâ’üï'¹·3üé,u~²ú'ÿ,Œ§jóeó©WÍ‘EL¶q Y-Â4aãI^îdŠ_¸#·Ï7¹½z¼¯r¦¯x¢³x®¹<ž¬Ì¸ø÷YR+ƒi"q©èÛ$Ÿ{:›¨œ«sç [À3J¶7_¬¬2ú›Œ÷.øÚµûn*~á#Ŧ¸qdØÿýgë^?ýÙëÑGŸ Á.ý?¦]˜]—[:˜¡Íá*›QLæí¥Î_Ìö¹.ôWNwëÁ0Øïn%lfJ\IÌÔ@xø£ÌÔ"öê±ÍñHå´ÂêBŽ *Z½£ìRÌÈ&SÄ£mhÎMc‰ØnmOŸé¼¾Q1ÕùÌBÂ2ìƒÉÊ¢5—ÁO¹ý­õH3À@ä<ªkA e…ð±æåWððø0ã)«e~ÉýêÇñ¾fúÐþØÓúÈl%WYW,§gøÞÆ*$ò»K›k>‚ëæ•@^¥úBsi3i;àÇÊo-´ç9R[»øB^ $ÅÕ¥6Kj€ãõIç@¯úè ¡éEöÖžùcsâÆ;®Á’Ú¾º‰["³““vžN¨ÁĶó©×¦íª,—¡d’%‹ÊØü¯Î‘ÿ8ûïÙ»™ÛGØÞ³âД¯wÊ?š%*`,QÑ÷˜O†BŽ$Ž£ñ³‘“Ï}ÓÿóŽå÷šËãIiQÈ—ÿÏCyŸ-¯öôIà Ԫ¡ªJ€ë¸àº@RÏc+úˆDÄ^âVÊ/®°ÉÁŒ£u‚&¯”B`¶ý—3ÛŸë)ýÓ'ûBsÃsl"v‰ÏÏZÙS<:Æ].fK\}`5dܶÌZ.-ÃrP®!‘37\Ë[ZË!s7j«Cƒê‘Ó<„•¸N¬Ë”(¤CP3pq£’1\ §hþ¢ ¤hϦüÓŠïî¶e;êKÆ@Èç_zU)äÍu×v¶¯ ‰R׀ܳGþu~o»ã+OF `«ø–ËYñ4SzKO³¼Fµ†Jw2>÷oÿ•7¸Ô8M«ÙÛ’A9¯äʼn’\šÁþCJ† P€Ñ ¶^ot­3²ÔT)_+SÑ%soƒ¾=2BÆvl©:'·ÅÍ¡Ë"H>(eÊÇy6KðêÉxxxxx\-çÆÝ‡‚©eLôS?hþð‰Ìð(}ãu«Gßœ§ï= Oó ¥èôJIõ5~=Ý|Wëœ×ꇸ)Å _O‡¾¹ã,¤d1ÁU\xÚÌVåA/WC¹³»ÜÙ¤<ÿŽ¿]6>»göÇo5~îz}Slú ÍL”¯hVt’Kœ°Ä²”oQ~i-áÓ«GBIýÝ»ç‡óðÂbÛ'ÛF8R× ©YpÜ`uΰ…Š*:ùÊ…«€àÿgï=ãä8¯3ßS9uÎÝ“03˜ˆ `I‘)JV0)Z¶dY²µëµ×{um¯µ{e˾ë5}-ÉÞK‹¢$K"EQ¦‘D AäÁä<§suåðî‡̃a>®êÿiðVwÕÛ5ßœ§Î9ÏœÀ<>ŒàÄ §P æÏAD8)8äà݈㠂GÌ2t 3mŒ7Åx·y—ÔÄñoƒ(}ù¶±U d‘ɤë¡Mïj ,°æ#;KÏð?vpA`ÍÉŒïî–5îXµ*FCþ±dl€ÀQƒ2tÃa£ðÕJ)Ô3gÝ–Œ ¾Õ9°1Bǹ hhƒQ˜³›ku[¼Õþ`vÖŽO°‘9¸Õ•ËKX˜Ã>³gŽÆû[V¾<Î…æüTõ®&Mí©Ø+?P÷?þ+$e®‘`ÒªüfµÅŒeݘ¿âá‰Gà©çl@Ø@/VãB.¥$²^žÑæ5º!ck%ßËbM ¤5•ªÊ4†ããˆ$JŒž-¸Ÿ¾le,† ñ:^ßî/œ,·ûò/ »»d‚Æ÷ø/-žçç©®—A^O#§’ºaËàuÁû88üfâ(‡D&‡z¯Õ@õ¯3Ž]rÚ_l âë;ŒÀþåµd‡¹ÖÓ)üðòº]×Þûv&¼%–€±©ŽýTéÅË´,U:¥k7£@¯+êJhÎÓÚ¼DÉ:³˜·8k Sª‹_ù‘iT"ÈDk?)×%•& zú¶ØÞU­Èb 2V³fVj$[£@1ØÌ·¯iþRÒìD_}jOþ§!Ž7ìl´³’á£)I¢¢£ù‘ñ†m㮎êYqÇ@öó‡>C?´sE*ø—^(ÍS^Þ±®à¶øáŸÚ·ny¯Oû.,¶ÍÌkÑ#åÍ]øÜ×jM"ððÄ#øè„ýä·Ì;û"~±” "ˆJsƒY“VsE­l«9 [š“ƒaX¾²Ô „ž©Ðò3†c8óCÈg{[ä]t%*€GO‚T–iæ t0>äÊ/ÏõnåÓ™ÜÙ^-2¡»}g—÷ñq·ð¸ÞXþÉtï^Ö‚Œ±°£î]M¨~cq”ŒƒƒƒƒÃb6‰ë–¢·XH?úZ`w‘‰ð¦¤1e…<° ޽£—«°Ok€ÁBÍvU^­͘›:¼Q¨ûTù…ªëí,wïØâÙ&D׃‘9((ÞU^·}žštMÉ, èýÉ·~á}öuþ#û,Q«5•«ˆ£°†0°¸Õ37‡'U“š)s4£íü á`?:9gv·EníÆ6Ô—€£ÔÑdZöè˜>}%Þ ÇÆÊ}c±öMÔ ¯É#î¶ÎÚe@„äŽEò—Ȫv^lýÖ0vW¾ø‡{.{:ëDK]éhž7®oŽD—lÖSu©—Z M•W2å6(!ák£‹˜[ž×cóîsã­Ý÷,é¡ ÃAÌTþóþ ³4‚EªÍÉ& ÔL&§y*Zȶa¸æ2M&ôôdÌC©ÈBZsÓº@« 0Úb§µNÚ)“O¿ÞÐ`5„מ«¨åÍ ˆßÉM¥W2†»)'´Mü÷£=[` %c[&FàT™'Yµ³ÚlÁ=8OÔªæ~ïÔÈ‘r{*â“Uêl¶¾ƒ4—ë ãê¤mדÍo]JDˆuÍÊ}‘Ü<Å”@xÍOñ,VšÀ1±-.Tn~ÀƒÇ ƒó°{3×–†a@4Îòˆm¤®): ` ìïž§t[AŸ}÷^éæ¿R¸ÑS˜!lM1Ùy®%GðÛ}ÉFwæj±¢FÈ»%¢Nx×ÝÆ]]~—Œ{#ëÜ.¹ÐlOŽéš]Ñé¡´ÑýÏÁÁáz%ãààààð+#pÖã;kCsî– ”©ºgÍÇî,Â6„'¿ O<aÎÀ[(óCYöžÆœG0ÏäÖm ¡¾<Þòé¾ùå³ÍËO©ñ›¹Ô ž›<âH6vU¯_aã>ëõ1ꯞõliÄîÚN\Vw«-‰6I(ŠfË: •H˜ x7?wõ£·©Ûn¡×¥\ϼE]|Qì ·zÖCØ[9™¯¿…³þ(ü/?Ëúç\ó×z/Æ9­¬yÂ@U5CSJ< —ðy|Ðî5#MØÓÌ&]²Tõw•“³„½"´Î|dwé¹þÏß»$ 4’Õ\lÁµÔR˜m©4…é)ÓKU<—U‰žeëï s†p_Ö`¼qÏÏ7=:0#p*°„ê[43»®OäÀÿ²óöÞ†ã5„D•ž¯EÙ‡l”«“%¢YÐÁ²Ã¼6^!'*èö¯¡d ¿tíðMŽøÍ›É‹«Ó\¬@Ç™Ü:wûdRh­“VšÃëæ˜°—²Zhm¶Df R®ÍMÑŸØ(~ãeá›Jn_êìqe{!ðõS¡?¹c);—:i[È“0^Äþ• ›Áã?•:·”ÖõÞ¼¥÷¥›¦uù2Þ0®4/·Í,s~0‚èź\3u±ÈùRlˆŽ¹Ö‡ Yšˆjœ‚eg…\ÿËg˜ÿú)~p„ÜëjcrA^/ê:6-6]®„fò•/÷½³|ôH©u~ª¼?fXu±lÞG.Ùpçé†2¨N‹`ièõÔHÊÍáø[¥À݉µz:8ü&ã(‡ÄåqØ:°â®ÛÑ =óFâáÖÒ?žnÞèK œ °Ô6ýÔ°Ý›àÖæôéd|vZyx[jp‚uöT-øÅΓ WV¢Z"ÅÅóL#»CK¡-I’¦yCOs[(ÿý‹í»Ú$aO»ê£x?õнdSœ@¦!‹EAýâÍ f}ˆŠù¬ ÛnŒÑ€góos-ÞAžÑ6¶h_IÐã™À¿]¬›š¬¾2§ÅŒêvoË_<¾çÙŽ-Á‹Ü˜’>gö$Œ˜T±Pij¨Ýiž "Ó;‘$û;é4u+r\;Í -WÝëh¥Ðç–÷ñ«=uú›‚{ûo0ã’5.çØ;¹@Rcê9}#Yê $#Þì}•*þF^Ë×ìèœÞ2ÉÕÍò ëäU&f×3+3‹/´zBéµ+ªÔ2È ?¹Âã­X»ßаêÆfÑÅ›¿j+pFí5çF ¢”)¡¸—h\Ò¯Ë1ÌZ£‡sc¿òÜ ÿç¯S2Î,¸×A¶Rªh9B5mw¥x%Åß⫾~ÿ“Û“‘ëÄ O© ,Óæã= ’|'’'`2麿suòÄF0µÿñ–׿¿ž˜©ˆdÀ*N!¸Ö6³ÈÄ4¤ ÄÁÀ2Haq±ÉS›3\Ag,w;½2´çüUæø%ò/?¥F‚6$‚(—Ç"¡jð0Þ;>Ͼ™ªßHîs_Ä-vùÐÑR_j¤´Q¨v÷@Ò†rfq}–íÒqºIV­ÕI'ÁC9ÃdnÆQ2ˆÁy®‹˜Öì®Ó‡æÜ$C ´¬$R6ÀºVôÔ°>U»`ð»b…°Oðþ"ÛtGNŒoïXñNU] O·g8ɬŠÉyFCºyn*hqG[òÛö„­ƒ&¿ðsKýë–âÝCûáÐ~"[`ªq~œ?:åó°Þ[©²«a2™UÕûš2í±âwÏ4‡iô{M£H‘>ræ>CÖ“yü~-Ò~öË®cDÓg»F¡p£¬'£‚¥j;»èãW–£ˆ8¯’»ÈäqrÛEbS‹9éÁ–ª¡¶tUžy-Òñ`$)ªôTÉõN^@¶aPOIÛÛµuÌH;\ ÷·Î€¤»õœdwå#ñdi–ÙÕð64^,2o¼N°5Ê«ŒH-ÓY=[cïã ¼huųÆWîð™wm*Õ áùÉè¹Ë¾W)+1ÜÍ2S+zȰ P3ân|¦l×ÔÂ0Ì^­dvµL…#œ÷Ú¹ñ«ˆ U!®1¾i[¶™.”VÜ3/¶Kž¬`Hð{PV‡S>¥2Ì[î…ª[Öã€Òðâúl–jŒ®þtR7Y.sûGC§_õ!T^ß÷ÞÿfÊ Uï«x2‹m3ËÍ??Fôv`€á–Ä…]RAä|ŽÙ€á$¹ì4 )øáã< û ]Ñom v2‹GB+‚³ ùÞ¸ñôxÓ9ŽT'féwéeÓzØÜÀ•îPÞA]ÛÉó``ÌßÉ[µFybnñt2¾!Ðèóà& Ds888Ü„£dÞŸ‰iôÑ}«‡Ïoé(|çdS½ ¸}Ôõ®»O<ŒÎ\2³ç†»?nÁ±N÷„f'Ó^°í–ØÊTûђПHÉò¤¶ôÀÞÄ g ÊU±Ý<Ä’(Â*%3“ZœØ˜+‡/„ß³zKgµÖËп^<´$…üþQÛÚ>uɾü:¬ ZQ·t[4MìŽOnÿ†zGó6®0_‘‹Õm…ôŹ¿?ìŒâ»T¹ÀŽ€ÄG¨š²-tu²©bÞ›+P‘ :ðÆìÚtjšh}]k÷™"*T e¼$ÓS&óõ,AȲ[xå¡ÖL"¬G× f1ô“ùú‚â ref Æ{b(±³+¥õ©Å —`NU£³%ï¡è)–T\FEP+`à¬Np¸Þ8àù@ÑíÇ~ûÖ* T•ðþŽL{¼4YŠ\®&ÂõH°ªT¥òïÓ³«$7†U5¤×G±™ÊR†A£\¼¾ZQ¸@«áô·JÇ}‡îA¦öàˆÂõ™*QSí;Øó«ü‹Cm'ç©FºR¿UØâ1jÄù í†Öš.qtWú;—›Ž˜uÊðòúà,¹¥«ºêº!09>¿í`ôåïÀ¯,flZn›Y4h'çzÛÃɆ¸5>Í A¨-*T/âŽ*6Ã⊤àßú©kç} û†²®Å~êr ÇÅdß*tˆ hÈøÌéÅÌeȆؒÁôKÃ!W±üЇÒ#ø†[ì!T‘ '™æ&e”³VrPȆK31èGãþ»ÃÀ,æ[]Èçààà(‡÷§ºFk7ð¬õZï,Йª{U+‹ÀCQvïë6¾ÿSm÷6¡‡>Ò2 §\;»Wj®¦ á9™ZlèWL¢€ ÝP£ü²Ž±Èˆ@9b§æ/““¾6ÝÐ$ J8T‘é÷Þ¶À™¦àËff·F>½÷’¤’¹ª«±š^Ç'ÿeè¾gÓ~ ÄBJF6úêïxQm¶F’m+¾5âÆYW¾ÈVxx(xl*%r^·!¶Õ ©:4$•”2Uà¹<óÄÎÙ{åûó­²9/+ÉáB»[Â*ê2Ú³°æÞxJmóÔ&kÑ W€'­Ïlö&CBUÖ ‡LÕÓëIuf0¬ééâž^ÏB§o[§m¶u·$mRîj$Ê'‘n£Åk•QËäJ\V$ÚUΙ㗽ýÀÓÚ†è\PO3íå t_ë|Ïz//à,f,(X¡*†Õ¤@EªºðÝÓãl{LÜ7PIsM h%Eˆ^¿¿ÉyþÁ^‰i ºRˆËÌ€oåÐp»¹¬.@ë²Ér”jr|öŽýb¦ ‘±%1ÙÎM×3ÙsRÇw^"ÿîsúÛƒ`4Š£´*`P$HÈåŵ\ú«ºþüQ1\}7%‚0•á TÜêîv-lî–¥lòfŸ„3s‰Âdíó÷§“TÈm—KL}… 4+£¶¬NUC¢JM…³ <4v<ÑŸÑ[IÊR¤€À;^Ì7â(‡÷§\ƺ5ÖýD§½³¢{U×Âù«,ØæžíÄ/‚ã³C#šxOsy2åBÈ^î”ÐkÒìöNkÛP#f Vœ XY—)vwÊ`D}tnxõÜ’¹ ¹¯ÃœxïmOÎsz‰Ù‚»ÄÒÇ”ÞÊöxè˜7ž{Q;Ø~KåOÕäñ¡À[InO/åe•êlå¬ÙÛÕ9»÷V=+r>·ù? •lØÐæyà€oî„°YÉÓ )èòϥʫ™À Ó;£á´†ÓpDÙÐé[èpÍ€Û’SôÛZ‹*#‘^§uŒ áùSõ‡n-€ÀYéʵÛ5%¿Eo¾'rååÓ|¬3í}&•ë÷Ïö·ƒ¤’s"¹!dYâÿ;ûüª>*þøD"趪›7Ã^‰$Àƹp8Š3,F^¤JZ•®¥=P+Ù¿Ñf*ú'6ûÛ  ñËX·Ûª˜º©SÚX½çÇÙ¶[üUÌý@ëèN…>w×R/ÊÄsh`ü²]ëFùõÄL¶B×Mæaq%õÖÈ®½á‹VàÊ\rˆ2èkPn·TRh¶¬áŠŽ/LžþüÑÚÍ2‹åëß9îR Žn®óöuí^Wf¨-½j®Hÿü,ñù½9…ð*”«YN )Ñ•¿]h­gõ0§7ûj;Z²·wéÏ®ëkÊ€l°#P4ÙzVòYGÉ88Ü€£dÞŸËãØÖ5Öü6ÞÛ¥,¨7 _Ïåñÿuÿú—DÙ` †fMµ“Å£§­œ!|h§2e4áGÃh‘¦|V15T}áô¿}5t5[ýðŽìªKðŒŽl´PÂ×U×\™"vm¶ªêåU²Îä$¯d0³¢ûôÔ³ZÌ„F{aþSÓÊ„œêh"’cóîïœû®?»wK4…kÃ{~}šsÏGº‹œ™aÜx(`Ÿ¡ÇîàzÌ£†ÆŒäàÉß™—bl–+—‰_`׉݊É9Íܼ®Ö¡µóÞÃSÍýþ…îzãìH`ïÆÜšw•#U?«'•ø¿^Œv㸑öº¤"@¨h®ôˆ÷µ–arô…‹±Î¶ÍwE¯p¤ ÄD„ŠŽÓPÀéµ4ʇ¶ ·- VM@5O­üäþIctƒ–ha_‚–Ò-UÿÁ8ð[ñ¡_åÁ¶v†5`3xÃ8³1ŠònHkÖýЖ™ÖV/¡cš'æXÀ)N¿×UhÛF6y£6`Eɮʥ¯?ïþÜ]KFm“ß7NøûƒÊí»²Ë’•µ%DZö½¤‘îE%#)Ä›t×îNíø *hËNhs)¬!¾Vwûƒm~ 13QÂyvEÉä Ä/‡©ÿñ…¼FŽ•i‚¡‹$‘G©²l-Ç+Õ?8´†w3ŒÔšO”ÛcSãÖ{Lð¸Ýb톑5à ¸¤ÿíÇþC[圹Xˆ2¶Ž5÷Ò:WI÷FõûzFVv^YJ6ò”ŠT°àÈž­º»ƒäS:8üá(‡÷çjê†vÿE&féû¤æVøîXc^ò†®Mê8ú6ö—ŸT€§Ô0od ÷®½d²L客ÖF[5¦§²³òN¸:¼úÎ úÿüntŽìïXÛ§+Êk«ÂØ¡þ!ªê8,J—š§¦135÷¥²«ŽÓÛ½5­o‰%ùÕR[ëj»5²ÇŒ½!6saÜ÷Ìï§¶Vû7¸7EKt@bECWïé›Ï~:»¿‡x§ÔÒÄÍÔ€èŠá8 “dl1TÕ|j öO/„`g·âs[OþΊô2,˜-j^··ËNxƆSÞWÒµ,w5ŠÿÚc oõýÓ¥žšÓaWµl ägjB ŽÕs§,G-µdôµV,M?2Ùø†-Þùz>SÁ˜EI³ § ¸¯@úr%îùÓá?¼s‚A Á–îX?á&eã¿ÒôòTνÞÃo¸EÔ&kÌTÑÕ¤¸º½Pªä(Œ\ïËÉ’Ö_=0+)TªÀG\ø¾M:`îjÕ89åL½! æ‹ç›7¶*å‚õsþ;7Z¿¿¿26ƒã³*Yg /ÏØ‹Ã<ß¾êÚ³‰ê0–zcvõ”Ÿ{Óóù%xö-üo?»ÆÌS/¥I:s½QÛ¢˜ ~Í÷ÁÄŒmÝPóuô÷ÔXÜð¨™pcÛպ6&ßÎMK–Ï⡹‹)~ƒëÀf`µ’)êþcå6/¡,~Ž#ÔÁ ±è`Æ3D:µ”t’ v<åêï¾òéŽÎà˜ŒS4­M($¶ UX] ¸D«/„•TR V`º¼RF~‹:‡ß`%ãààààð>äòpp­(q±•9â©â–©y–•̉Y¶®Ó[¢¨´îIžPL›˜Ôu>v«yìÈÛ…›)ቘkÿFö- ÀzýSs@Âêqò‹ô5TŽ_õ?¸c)8žLñû×I12Z掾uKƒ`„X½ÉSÛ–H}¨ã†ˆójºqóúr›¢lmì:QˆO ‡›•ÜWJ.(PÑhUæÉŽ­èÔ±b4Ä—û3íÑÐí/ž¥ÜϾ1Îìï!vuÜf$Y˜«o=à?¼yìÎâ»™#–¯H§Z›Bá`-&L~íµÄóg"1¯ 8tY`€á¸—7Ã0 «‰Ñ€O#Yé ²Ã$±¼æ -š¡a€ t)04ó½W=þ»¢jä_aÍ ,sb(phÛ‚ŽQ:F@ð^˜òŒ¥ý›:u·XjõåûúçyK50J®†óº­òÕ«:Á3¡¸×Ól–³¼™ÜÖôóÆ–&™cHd’çgÙ·GájÆ0c>åŽFócî3Y¾—z8ÝO#\žWâ<¡è%kÔv4þê#$ÌwtVøâÝE -‰±H@‹¹Õ‰YùÈ­ºÀ­ýM¸“ãóÛ|1#©d›kEûMÌ1€A[£5…Ú.oóÌ¿Yí—«ƒ¹?»Þ±ÓËÆ½«dŒbqg*“Þí›Xþ€{¶ØGÏ`Ÿý_(jW Á‘L"Ji¶n^œ࣠›ù &è-Ò1Âcâ0¼'aN_{älµ"„ è6u]Í×¼!×ÚÙ!‡ßL%ãààààð>ˆ5ú×XîñO_”`_¬4WscxcÍbÎTC;î6fuÅ0^œLZLŒ ç2 >€–˜!ýÑŽ4Ôû— ÆlÀŠU¬×/®q·`eªÄ¥ùÄtI8_ri±«Ä0ÀüË[ßYó-‹øIèc“¢OV[ž; \ù¶ Ñ;‚Ž0Ÿ¼Üô™îÑ$^¿“ž>:Û–“Qˆ/í¦kºý_¶œ­èB Ê]U¸->ZÃv)"T ßoOZÜ{9 H*•›Ôò5õ©“¾î(ö©-ÕoŸv?¼-€ÕTíÖ0LÔøñxä`cå­J¼‹,`¸»‚±¹9ا‹õQ`à8T!"°í>Èc@â§éãúfG.B'pD`@ˆÇÀ¤‘®ŠO ó"lÇ7áêà4ƒOªuu ø²oÉÈBThŸËfqe¯gp^‹þàJu¼òå‹s˜wÌÄnmщ©‘ä@›?g BÀb @$|•¼n}å÷ðµ£è]5‹bÆ5;:wüÝÄLM&ÂR“ÌùaaC“µÜÁ_Q™ú  –f\:#,ºëö¦©lj˜AÞNÊܼQBëØüAÿ¬b2#Õ¦”âUÜ!B÷‘ZB¨&‚èüLKëŠ ûјĻ<ÊOÊ%O[´:Ƙ«­¥×ÄÇè’Êœd¿°¿4 $sNNÅz×2ÞppøÅQ2ïÃåqlkÿê òü>ÐiÀÏG:ó:ƒapOëLˆ/¿þî÷ÐÛh9A†} £8T¯ß›¢28CüýϰLÛ0eB&©¥ñÞVº1n¯¯§Æ 0–ö†MøœDa8¶­¡âåô/n {Ä‘Îh%ÐàʱµO“-ÀÈÕód–‰KZÿ||ã…q÷æÚâÒå11×té }Óu³…‚!PjI]j¦®aîjδj¿[ÛÝlÜÕ=>Uœœ¯ã¤ú‚/ŽFöQfêú I*5–ôœœpÀöV±¿Y|hÇÊCwµ,+jØ6ÛÃÅŒ¤ª®\¼cꈅ$VïAåb ¡uäU¯_¯™ŒŒ¯‘ù8»5*6ˆ>íêè– ±åöul¾C˜^ªË³^{»a qÞ£®Íäùô3êmô¦þîYþ>~¿hš¤qòãjS'1d…‰Zˆ¦Á™ 1ÙÃÆ$Ý€ã‘C›³W§…7/†÷n\@ *EP˜‹+‹£'ƒX©ˆGfñ¸¡cã#ò¾YÓ$mݶA´@`Û0FÐÈšý¹~šG~L·m°,ä#tä!´ñ² ud7B.Z!£€Àh€ÓÐØîš¯û÷§’~b…l@6H ñ­ã®¯~<¿|d8/lnÏK*ùôkáž„öЦ‘ÿ…ºKÀt¸Z ½VŠÚ¶òÉ”æ9^©óãZ¿ÐáZؽ¼|’u{à…£xKûÒ?t„ z­;?€Â Ã*èƒÉð2ú¥9×›SúC{¥"¸HjÓÊhÙÚ»h<‡ßT%ãààààð>¬ÙîÿÚ ~Ï>øÙ`Û¹ÿ©®¹ç“mïäêïl._žÄŸèWyŽOÓ­¼TQkÜÀ€h¨+{ÜVH„ÐðÕSGÆüæÝ{´L¿0Åÿ¿?™Å)òé·.†?¼}!ì]=¿¦¿U:vÉuhŸCi$pH‘0À×P24f×ÑR©H?þêÀ=mÕÏï¸A?p¤:Dõ!û¼´îöD!kO©ùk6hyÛsþª´9¬"‚ÚÕUä(µ;8Ë#éÈ”ÿ“­…)œswxk•7“õðÝsþ6¯¹½M<´5·lÕµ I££n !Â]Lyž4–*èþþDÓ—vÎ,þìò Õ$™^ Á`½þJyOÚZ.ýàд:6{¨ã‘0¦\so“ j:ƒlTR—Ô]²êF6B•$?”«ÈF“e¢Çè8¨Ömþ÷§¾ÌüW@VÄe€‚.º2ƒïêÑà¥Ó¾Oï–YO>ƒ xfftÿö;±/ì/,ú§…­™'æ¯þmü ðZ!êÅ´#@¯kno ´Æ-hòt.‘üè0˜½ëÎx/¦F]LN¾÷=_űQô‡—.„žÑÃŒ¾PÂ^gD¦ƒÃŽ’qppppx/$ºo.-›Áöá¯׿c¾¸uTàM4 : WSo^~rs±£®öÌ/#»xñÔ0~îõ»w[÷ì4ÚšlI1_:å}í2ž)“;{Í»ï:6z¾û:jfjC³Ú_Ž]QOO³ÙÓ¦/×ÿDj¦Ì@.ßÖmOk¥›º&\¤ÝÈÊ&=ƒE¾#NmîXt^š‹·»Åˆ¿6ª„ZBrj¶¸xªyiIÉ ¶&Öüë0’¶KÂdþç3±ÿ°s&#už½J—¦UÂ&ßÂß=2þn!–IÔ2Œ.I|ŒÐÝ.%õ“³-vçÞ%ÁFƒÚ„RU*$hÉk+MŸ+noŽU+¶Ï‹¯!"a¾f—ZßbŒN’'߯öoœ×£GÊ›÷zmÝüæÉèºm~ùÅfÅüÖùo-½\lüTëð1=ƒþ¶ì̶øCd#d»7ÄæÞ‘-_>ù·³ý¸¤€PMÆàÊ {bØåqc™*uh_!—ÇQêîÝš¤1oÿR>9ÜÉ}íµ;½íˆ— ¾V©Xu‡<¤%hq=7ËkЀŸ4€°Û!™ÁGº÷o‘ †å™†X —I¿ßžo@ÀªšÈ/'-UMZbªÀ9JÆÁaGÉ88888¼™ô¶¯^<|ŠMyš­)ó·úRaoM6Ø¥3/ûj€/\äþû#ÉÑIüÒPþòÙÐûƯóœ}r!ÐÍ=~¿<:E§+\1¯43æcòß9ÞлêJÉyô<—©ÐÓhõ´ªÈ¶sJ”ì €“+Å6’‚·ø /iœKz؈=‘~v‚á™Ì|ª®g‡Bÿ×mcßMnz¬·˜.™æµ †}µ|Íkó\*k!Ó²pÚç•ÊE€Wëš9õo^޵yC‡'äîÀÎpê¶Ñàš1jÞÅÌ©‹.S—™Ð¼»WŵM7LÎñ™¹ŒkhP 4¸§¦€CªZ¯÷¦±î&N»pEàкVóðQúäÛÖö­Y8Z둇²ï/†¯e‡\Õ‘WÝ똣Jì·Û®¹rUàÎsýëßu«IÖÑ2£U&!ÞäŽåDP%çÍšÛX(™FÍUW”œ”òkZ‡:ÎU &™f²$I §cÁÃ!ðxaH.Ù˜@ƒ®• ÿ´ænYã=T4hFa좺.7œûþk•Çî„Oÿn3Ž!SšEÄÔ›k ºh­¤} ‰*åõ}>€uGþ9{ÇÇLŽ`bŽÙÐhø|èßþÙÝY ‚xíÈùÀ­1å¡ixø˜-û2ÆyˆÏÍzs©òêíhôÕEZ¼Z›¿r¯a~&¤”îZ׊þã“ØÁ^t÷#q™³é†6J®” eí|Ý»q~˜¼­oIZ3H£ÈX ÄýÒ‰«þ­¿ÒÉþOÆQ2ïÅl óynXY(ósl£Q¬íjT7¶®Äñ¾…§.7ì½zø­ O½@îî·¿ñÇú §¢I_°¨ÌRP>™ò쨓SILàÐt9t ÆCiúù$ûÔOèD0;8çõòÞ®Â@—*)¸$ÉêèE×Hž8vÉÎ[;7,¥IÁÊEª+fóŒ‰,ëµ`º>P·Zœÿá¶©céö½‘¢ßÿòjà– O©€lTÓè©j`C°ú´Hi€¾Ê NÕ¿5϶yÍímåOl¯¨Z[þÜÕàv  &¾_Üwµ4ûý|u³Þ5ËQÓ耰ÔNØš[IO·îæòzCÈXI/Hs#Qâ)<€gó¤+¤‰:¸i¬¼N»yÆØë´!é/¾: ´¦¼ôR|8"‚ño¾‹·2%bõ—÷@Rõd…Ö¥3ì ‡ò¢'I0)¡¤áê ¥ªBš ™lpÞÛ—ÏÏþÏ“íÿåÖËÍB¹ƒ¯)‘æë¥ýÍgä?üd°™MÂh¢\†Ë¥“­²†÷º4Ý û6‡[¦ôêÜ[3gsìŸ6&­ê˜E» W÷ÖÇë&'¦õ¶æ›úû€ýAÝ™™£/QÌ>Å~ä6©¦±8N¤E_$e #˜Nxò:·}½ EÍw¬Ò^¶_z…üCÔÏšúÿU½ó©ø•³ã™Ù$šgçé&ÆŒ‡!äÇëÀ-`‘0ÀdÓ²k6™ÉÙ€ð·7“nwÀÝq³™R±ø÷¼H®@¥KÀ{|óPS) a¦‰T‹8#³úKíàð£dÞÌãZ s%îo^ŠâÂÞvû¡Ý+µ[–nLOÖÒåéÕÀÿö³²À/½ëÎþ̋Ӿ÷¬d映`¤Þyš<µ+ÙÀ,.Ìgª¡×ΣmÍ&A³=mÜã›–ºº5` ‚wëU‰q53…»ÑÙ %qQ׳\=™[ÕÐÝý»¡Ÿç…S ­‘Tƒ\£:%‚m²Æ–¹•´h9Us‡P1 "’ºYÉЄM\ð(pèîÝúá£äùAâûcîÏïI™-€A+==z–†Ý}õw¸¯ú©òµ×¯mp +´ÒeCVGÌ0¬ŸX³½¬H]G¸Åx¢†<¯qŒ”¦Y|‚]ßf‰ g¨À[›jTFZи#0•ãêê1ÜÔÁ,’P$dÕ÷Vµkg"7C ëCæ×&É–»OÿBX•Dªß=B¨¨y‹ ìÙøá¾´1`Urï¶Û²˜9µþ±¸ßŽÍçû>¿¯ðúL}" `:™÷ÿþÎ\Æà$à^HoÆ0ð‘zÙbî \ Ð%ÙW'Tø MÑx[3ÖÖŒÀ½5] ½–ÍÊZyjʬ)¯œ7v×C8Ä2~cÎð|æsÑñ+…»:±¹¹B LNå~eåqì<»«Ï|§tƒf3 PlÖÏ*—‘+2‹ÖŽ †ƒƒƒƒÃ{qy‹E–‚ªÉ¤ðü©€š_èð¨‡n[’1¹]svÕ ÂíséeÈé´—F@ƒÚ…®Ôë3)™±Ùx;ÅÝ`ô†aKl%•ü›#ñ…Åu©q4»MÚm³vÓâ"YËÑÞ NqýxÍm?TuêÆÚ>ŽÆqë†;,s»Ž{ÝÒ¼V®Þœè0·Â¯T˜ªºK¶gÒj8GÜ‚oÝx¥àšJj2×·øKí1èW—-ó·yÊ·½ùÂÑïž÷o^_€—ÏGlà Ի•c¿HoÈÙì=‰Á1),šô‡#ge è OJE7¡F7¤Æ8B]58æ"Õ×’ß¼<ÐqoOŸÇ[üí½†ìï}{öå×Õ©äM µ÷ãè;ôÝ·ªÐÀ²¶bha(¯{`wŸ81ïoK8²ÞÁÁÁÁá]™˜ÆÝàù×¼€ãŸ¿?Ëc€aþ¯xwvØßü“¥XíåsCsúöõ”b²ËÆS‹p„Òˆo%ƒ¡‚X±è‘Ææèï(k„×%€5æö¯?á'†½ìÌŽbüu ]Ma©ñ©{­Þ¡j˜“9 ph­ÓÍs%•ÌÙ¹n,e<=éNh !¥*“€P"¨žIã;{µsW…Á‹!ØÞ*>ØŸ–lá͹øÆ„U)ê·Æä°·¦Ø¸—16DWÛdéMY è6f.P ~;ëÒ+" Ïྨ¯•¥³¦T^´uÆËpälè“›Kÿ þWn(`ƒ;ú¦ºy=Èj5iŠ7È„1³lºâ"0+\ð³ZyU€üÂùă)ž²¿s²væL¬ýL3·Ö½3fS9sý‹Ûº(­„¶+ÖŠRº*Ï›K2fk%¤*néIXi XŽCZ­Îå‚¡p Ñih"gløh»ÛWûÝ“Ããø÷¯_ÿRº¨ûsâ û§A­£³¦“áGÏj«ì¿÷x¶ò㳌ŠûƒTHÀê£F2¿rø$ó‘ƒ]ß¿í‹Å+|QÿÉüŒ"Zê¹Ò<ÔyíC gŸ”¶w~Ór½gfÕ{I1‡a`ÁM6©6Ðs³’²íÁæL ªmßÎúêƒû쟼‚É$väg6€ý¡ýx[óÚv.§‹ØÃ:„y]ÒhžÑçØÆ~0­¥ÿo¦ ¿ZžÇÁáÿ`%ãààààð>üèW¦dïìŸ;L¤ zt7\™a³nP,»Ô±¤2í‹vùW…q¦ºµÙý‹‰fO-ëgµCìú0€Nº„ZV`ñë:Ñ%€ÑI@¶eã/ž&ºbè¶ h±Lë“âu‘`©RùæDãÇ‚7ˆ 5[5ÚëêQ—Êù¹<÷ÓaW{ÀþÚk @ö3oxnkÌ~jW…g—\Ë ¿9ëd« ™T¨ ŠfGôÂÍ·B#ƒ܆(Rî²A†x*KŒBj@Ÿ3Í\MŠîDˆóyµ…BéšÉAÒõ·¯1Š„ÁÔ&bƶá¸ÒÓBäû¤bÀÛvWŠºÀ¡Þ;ïÜsÏ}oáþïÞû¿×4ס¦ {m·wg"›"ʲ3ï=[ä?þñÇ“½!9iL63Ü´ÕzÎØF_kà˜ˆG/ˆ[7I »Z{ìK—L÷ê€,„z”w€ãX–ã:R).U*¥E†ÀQ^z m|µàÆO•wz•™Zôû“ÛnhÕbÏ]þ#g­Çï1/å¼oŒ&wu¨·uOßÿvE§,¬”õõIb<¥¶º²¶ ÏLÝòdê,Kª-š•õ ¥Z¼bs²ÉetOá´¸ÝGhnR‹qµ0_áé œÄV™œcbŒH6+1.ø§wúB»uñ…hB³š<œHˆÆ‘‰Õ"®Ut–WÂÝñF®Æ»ƒ¶Ö ¹ur%vRoºóU¦ZLc†ŽžÈ¥æ$};¥bá¡¢»grxn¿pØÜ·èî nìË´–#gév¯g.ÊÌ£[&Ý0Xyl›F®@DBŽžqpp”ŒƒƒƒƒÃÍ™K?8N2°eõ7£m}vG+þá‹D—½s«òÍŸ¹ ‡6Ið^ÚÏý·›åãåE9Ôë_?U›ÔB·D³?®Çò²ÿî`í¥ ^0 †°4I!,U=?ÊN.éq9{cxs»åsã'ïV ~𦻳MM†5Q FBäR¶ «ÚFU$@ D,«šÚ…qî¡®JÙP°M¸gsÙw½orQõq:[‹*½Õßp æ7g·<ÖtÓÎ!%.PóuÚ-8êaEÆXnu¿ ek.eÉÖ‹u> º“¾˜—+àl}ýmߟ>ü~~ÍíôlœÌ®õ—2þyªƒ­ÊâT(béM®íâXM½&dòU×÷GBýÐ(H2zŽ8x_°6™Kv¨À"µœÍâè1sûvr„E*ˆ¼™.ƒX™KôÙ³º®f×Ș%ÔâÒÊ¡{]7´Éd#A™#ŽTü4$ùô #ÛþÝ]ã-ÔòJÁó÷cmQZPš‡V®z›½CÀù«Ìþm걉¦¨Çúë‰[6w÷çO6uTÔ@øír›…ÉqŽÍ]¼QÆ,#šÂ•t5bê*Þµo]˜ðz;½º7©A0<;‚ûBKsñC…ÍóhúÝ1u°[ëhCm°sMÂþÖº{+Ú¶yÅ<`¹±TÀ·®ÄÛüœÞИÕ"¡¡Q{Oþ%ü&€#c%ãààààðþôƬ}CöPÿµ;§ŽV´˜ECýÖÓÕOºôVø±ÛóËo‰<þÄíåoζÇ#›“×ÝVr„‚ 8¸[¨ÍÊQ+]ÿO_õöFlKU`h“¹_´#Áu[úÓ÷WÞ÷tv5•8}a~y@€ÑTÌqhýSù‚é‰ñ5È•˜t• > {‡äo¿ÃÏ’†¯ýºÁ«Í»ƒ‹s6?·àkõÔO”»öEò–±þü* Ú•gÀ° $Û‘ôõ ,i¤±Rl“UÊ÷ÂhãS»³ÿûE–·è€ûÒœýçáˆ\WHc¡r™lj]«dÜ4ª•®5'96þ¾9ÈПƒüâçcàáþüÿÊß» "!©-h–íœÕßDšÑ¬ÈÛ©V2ϴ߃-鮲ů]è‘|*x) ¸êªe!RÅ„¢ê^••i÷b!õxlÔ°!, ¼|éϵ{³ß»ÐIò¦éwqkåÌÒ–-çq“ù‰”M³8¯@ECUIyùN¿RÕ‘¬cɸ6Oh0|gtëÁäÕ‘Ô;¯Û¢&^/7t/ßrð@Ê~°Õœª Sµ@]cF Á$­ËÛð°ZÌ]¯UTÀ¶dºOæÄù±íõþÐ¥WÍô>yBŽìYcÜpd_Ô•)H†±¯¹lË*}j:¶ùVŸU·|ëJô¶åד¨¤XÊ>ÿ¬ß“jÞÏþó[¬âjéôåCBEÐÐüm™Éás#ø…7ñ¾í¨;…Ö†hŽœFO4Vÿôrz]eòUWR4hÛÂ%“•–7Ü6.]E‘S-ãàà(‡›³sО¢»S×éŠd9Cõ["oïè“Æà«/%á½§Ç<¥îð]˜²¾µëºGÝRǦ^˜È^lZÓÆ*Ä}$éf´¯|¾ _ønëPßM;oøì‡]¾Òø‹ïö³‘  4ycñ@ÖroçàÙ·¼³ØDÆíýK“tßS{*/¼ãKä°·²Î^H'O瘷¤8Æ€1þáx„$ðÝ]856š@#ƒÜF£N»*ŠÕâ֥ح‚,ÝÊM[ê¦;7÷ïšRn:í2©t‹3Í\樱y"Ø3´ô=µg Ïsвr+†¹òØþÝÙ(„½eó÷“¬¦²8õä~´˜A‘Ð5y&2¢rÞîG¼Pݶ+t:6«{öŠAC`/‹Œö^(!SK[^‘«Y„e#Fô4ÊE¸ÚhÛî-¹ÊRµúÉŠf×KNÑî›?t©é¥cöoïÌü¬j1”êAÌØ˜:Ô·²Æ·ÓaÅPc¢ìãQÜC@A¶+ÊŠZîÏa¿8×Mp‹¹" ^+ Â6 †…ó2TUI"å®tˆ…¼Æ–£Ü²Îæjž…ª8]ŠÎò­¢þçÈûÛ«û{–g0yáÈö?­„Sv#&Ô dÔEº#iLÞx9tNðÉ– ±"d¹RoÛ}€¥J3‘òD…Oj$ 1\¶MäÓæ¯°Ý<­vDÔÚ¼e6øWêí€á`ËtH¨ˆ,»9K2ŒMá¯?kt¢þˆ„Ðä Œ×^²eêÕÒèE©6SÑrå/,àþ&”oÜ9ÔÁáˆ#ènŠ(à÷Zßxž[.\YyQÄK¥•š‘7·vUÖàÝé5“rg=añ_Þ ]˜¬m7?A%ö$åZº¢Æ“ÝAI÷{uïcKÅùÂb ^Ì.28K²ôÈüЧEmP‡ Ér„rþŠ0‹ü{ZÌG¶ÏQÔ´ˆ$µ¸«­öüHr$ÝôŸØþwïœWCOvÍÿîöiš%?{k†åˆOö-2‘.ÒGF“ùЏáz´×eÖÀ°l“Gßlå’B¾r…êK4$U÷„©°a~q'žTï^yE þó…JUß›^¤ÁÖV"4²Æ<3º·qr–xåóÛÏó·t“Å)ع=·~NÔ!â’‚Ù ŠßE;› 5lšAv„Ѻ\j«h"°ŸË&‚ö\^²€çÓ’MÒ¼ 5–i¨RJöyæÀ°¡ªÚqÏu'®Ü¥|Ë+s©"»›<7Μðîp¹SÈ¿6Œ:Z¯…õšøjVò6ä%{¶bdÛÑA&áeD†€ÍÑù[BŬ;zaãKºÊ9.‰yó‘j™AU`´¶P~[sš qW Åü6 „Þû’(÷óù³zÓ‡;Nõy±T‘ÓF, †®óÉa°< °… ò5÷U­gsA—¦I½¨Í—ø¸m9¢-é9M·éˆQ€Ïý!j™GS—÷Æ–^žiûÎèÖ‚´’Ÿ& 0´}æ ¢% oD_þ'xá-¼§-ÉX’ñùaûü°}ähî+ßšûÒw•…é¢ ÐÛÆ–­_ûßéß{šÚLrîß%ãààààðþt´Z{­oº–#ò8ĹâµýT¢†1œœõ-G ‚\¥×#÷µÑß®Êà…¨ý[•ßhKŠ ¡R.ÚXñ±Â7x—-ÃG[iÑSËΊ,òöþk¼Æž¿ÌMâ…LÖŠmb ¹"õݑ؞ã‘íÓ0›²üâDß‹Ùæ¨Ç>9ïý÷Û†÷÷ê[r­¾Ü©tâs[&F­fÛ°«îÎpUd /¯?w.öµ×RSKë}´Çe®,»X“>ßÍvïåã.Ø4ÌZ¹8¿°X5/îôÁj’›¡˜ª¯VÚ&¿7’º0]~‘k58óêhÓ“}…“çìã?3þzß˾{w+Ù—Q€Dr7Tå,Qʦîãÿ$»í…³î(¥tñU(häx>WLôPŽXÉ"Ã@˜€T‹À´¸lÂvVêÚã^äÉ•ËU.>~%¹£¨øþab+ øDß…nº úhПP5~ü\þɽ×Õu`|ͩΰ ¢Øsec®bŽyÙŽ0ïèÍñ…ǺóoN²k»ß„y]ÒÖ»”-vÚðM[!Ô¤ZžXŠ={¹çIû¾øH¦L<ÕWxiÆ7õ+÷“¹>/­>™:kòB:k9)¬U¢Ê4Á ˜ump%8P1¢±1]MX‘¶-í“¿Bè ÆT…úbó@TYDrÑ uòšîêî@GÏbV[}Ùw]Ù_zqºíÛ#ƒkõL,·ïÄö¥ëû?5¿ð7æ×Ÿ±*5 ì'|¸÷©ÝíiHöu¬Ë¥˜Ì-- ',ãààd—98888üBºÛÍjƒzó´xÇŽ•€@G3^ÊRk«YœþÀ¦Lº,~ýDßG·M&…š»™RøÙ±Ä`k,U75ƒ‰CÁ ›>Q êˆ!í÷b7Æd(†$-S_½G€€ÓlD©Tí¦½šaq ¾.¹ ! Ixg&¹©™ê(]*´\4“q—†Z_¼ö@gU֘׮´¾›IHAf7?sb©‹ ‰iª%¢Uª §jBÂ݈·ç»â•LY˜Ïó¯ ûûbroK}¹ÖE' ¯,Û0m’¦yžW”õ&“ó,ÞÙŽDFÃ4‹•F­NĽlKÀªÕ¤œÁÂÍñbk¯÷äö…7ž'?þÆüàãÝWšè¢aPÔt.ã—KÑ¥ÊÞwX¹ý‰¥¹™µŸêÃGN¡Ç¸¶¥åž¤õ‘U|æD¥}Ú³rfuÀ;…¦‡#«r‚˜³ÃF6M›ŠR1ýK¶û6áâêÃÂéšÙàÒuêx¾«¨1Ÿh»ä+€m«$SØÆ©a›B>ÖH„Ðä,áaÙq+*TO¥“ý×DîÊ„ù†QQL¥† º˜¸¿îæ¹3±OÞžXàý Ý+ºp¶°íl6°7šÿÏ=Ï ‘y»3â2·´dæß«cá²àýLïxHXÉx$½÷‘Þʼoñb¥g‹(§™@ÜÌÏØæu€r0føuý@[/‹ëy¢¸²c±üxÙ“€ Zå¬Ìx gíE!;—G‘0hµÍ¯Š¨š©{þöç®Vž ˜Ù×Îãþ&Cg+ñGGçG)Ä {·XC}*Èzcžö1*ðX§0m ާT @6À¯ÜZÇÁá_NLÆÁÁÁÁá òö޵X#Ï_Y‰Ì$£öÄâú”*‘Õ·´dv4Užé¶4{ÑôÝÝ» àMD/ÎÇ “§¹‚½ÐÝ¢(4§HÖ…±•GÔëc2¬ E»L©¢×¾ìsYû:ì«Öç¶Ë€Ðúû¹²åž$ÎU} ÷J% ^Ú-ŽöGæCbV¿{ÓÜÑŒ¿Çš+*¾ÅÝÛÚ ØêØi´¸«ãÑÆÎHÅ«·oÉ~òöE¯hþèxà+?‹O-ŠÁç6`˜fMÒ\îõqI!þö¿o«ŒˆkÙM`Xö\I+H–—#ºÙJ 6vÍ9óT‘D€™ÇSïn •ž½Üsa®u¹gü×/$ß8Sv5ÔÏu}Oº##¯/¿‰E`iMLæheK”4õ15]¶é4¨Øä9)54Ü™ÈüÓ¹M‚h¡Œ½?¼ÈZzÀe•X·¿QY•1@RH#XÖÂåÓ¾«AkÐj9–XŸc&#Ñ0¨T â Q¿&üÄÊB&ØÅZZSñÈyï¦ÖÑJ\³ÏÛ‡Y_þ¦ùŸþ®qøµô=‘¹É|Íßµû¡m}"ðÄCÔÐÑÑFÜŽ{䯿Á®þÊÀÆW BÔ'€@k`ƒdp02MÇ"ŽŒqppb2¿ "oß·§ñÒ;ÞdÄŒtQ°3埅miZêŒϦ2ˆVjpü¿_øñt D1]Ü+—q¬!‚gQ;ŒÏ¬ó°\1,x©Â,huóÇ}Ò\ÍsG·œŒSÁ°ýòQâ`?,WT} “}³˜”fiIúÍsmÁ2\Òzz‰Eöz³"hïMD=avg"? ‰Ûèóǽu““‹U:¹ÆtWä̭宦z¶ÈÎe™—N‹ŸëoÃ*ø\P¯ÕBñõwÀ/å~ó€ šå#ÜÐó¤¢bY§|aj>maÑö¯MLZ¦Ëk”4o€"<µ‰]1œ x^¾˜Z²Ø™¯Ëë(|4vzLnY[Ÿ«¶œ`69‰&îD¹k·7¿Å{eIbJDpeýv\š¦ùÀ%z¨Û¼üÖBìö™ÕóuoaF¢[økÛÚ+ÖˆpC;8¬àü~)DÞ¾wíÙ#^I!EÞ„$eÍ"krÃF;Ð6¢õ •fÑ>Ö=ïò1³5÷«¹DgXR€@€ø­Rª‰š0#_})¹\9a“Œè´‘Ê]½QÆ€ÈjE› º­¥"‡m(q‘—s/ç67ÂðXxTã‰ÎùeS6ý£J¨¾®M§Ü4‘¸3r™s‘‚*•…àòò²ÔiÈKEN Ì©Š˜¯¯¿793•”îØVþÔÁb–ñùõÂÿø‘orž5MC7-Î}MúLÎRx9Mˆ 7.iÐm”ÓÙ1#P!¼m(Ýb¦Ù5V¿óSj¹= U]VC`´?è|©*Ó§ bO’s Y¼ãœÚµ¡kësWíoÎn»Ç¿0àS¼%âšÝpGÒ(f͘=²‹oT6'\êrÀj‚¢uÓÔm¤›ÈVå)œìf®u Um~Xéy¡¸i 36fO^¡£×›çü?:øü×Bÿö+¾ßÑMO”ÃNN¯ßCÞîhÖl¯yÁÜ^kŽhóyþí+Á¯½–zëRb:ëÏ×Ö«Të'GÉóÖÈL ¿Ùºs }.Yc.ÎÇ¿w¡>³óÒ@riuü‘³ô{ô‹ ‰6¯ù'S÷²óÁæ#¿A¼©zÝF¯n1,P$&6y!wð£lzÆwõb©R ÝÏØP!’ d´rUC£_ÓZ¾üxCŒ¸•ŠPž•ØpÚ×¶á%þ¯ßÁOÝIOm×É­-˜¨÷ê–ÌpÖÿ3›§ó!Q€ûo·óÎúå9ùÛ‡£¦jÌ4è•´:ŒW"R— ´È;1'&ãààààðË#òÖý;äo½ù·§ã,ɤÈoœ#$ÐêCM—¾³¸­0sˇš.Ýß”©…8/•–B"§×Áçf+ù:øìÜ.¦ks’ªWøª€H3/çèFzÃi@ż'@¹YÿE+&¤ñîŽ.Í¿ñóÒm Dx¿{µs_ª:ª-¾$5߯¯Ï‰š¥::­EYçU¯aWFuGW#B¸*Q¼É&¹ÆÉ¹øCýµ›íƒØ œd}l[ñ«¾—Ž3wînìÙRëUdô¥Ñÿç'Wž¦ä†s¬ c2îÁÇìBJŸ® oš­.FC”,D„zÚå*IT¨R/q$OsgæŒÄ´S‡‚Dí^+굂œk (öÁ»4èç`èTË®?K óÅqy½Iä´°«ÖÕ"}ûõÈÛJSiâóÏÄÛ¬ ¥Ü©&ƒá˜]]²z\®@,Ñã­Ö7Î(ŽütûÕXMC3Ëk} y'd,Fj.Ê6Jp›U0y¡xëÝÁ“¯À\ï@˜Â³bWÈV~k ÛÛEÔ,FWA\iø*ä'¦zîè½ú2ÖԹέžàácöSÐÛ@ÄáwÐÝ{<´…òm¡üt>4œñ¿1½3•éN?ÕÉ 8:îÃÀ®×,ÖæÞV‘èm8“ƒÃGÉ88888ü ¤’Òm2õÜÑhG²¾”g"Á›6HáIµ‹¯Û6¼œßÜÂ×ünGÌÙC³LÐãuCˆ²5 A ™¯u…vé5W³|¹ÐÜ@ƨ6¿¨G³†§j1u‚ñ Ö…Ÿ,~ñ³@ V¨D@?|ÛUuö†Ê­Mh¹¿Ë‚·,H°×Í&^ƒ æÜ3õÛcÃ'Gè^—w9"‘ªSiÇd¶yg³…ØL!ÜÊßì ’ïj®ÚII!Ʀ©rÃ{lÄw×Î_&?{P_.m‡_.ùAjŽŠ¹‘»I™ö«Ù2H»šƒ.3¯påPT(N3Ju¸’ú›cý·o±KTôogR„|¯ÆdËâ\‘7 ö¡qIX1Ê»¶&=ö’ÌüåÀyžQÏV“7ö°;S"`*ãëöÖ‡øB7MƒÞF¶¦sí[´ø¢ º…Ɖd©¨#ËCQ8-„ši¯u)Ð]…î5»ª‘½\ duù¬‘,wÄÊ7¦Õ­²Ît[àŒöX¹=VYc' Á‘\àBÕÝì2º| 6D½=ÕŠ ÜÀ?s+Zù.*Ë!ɺ$×òr›#gÈýÛ‰Ÿ]ÙŒ‡ú®h$»Ý=~6ïãÎ>ªýR‡¬ÞÝ4¼ÈÉ‘±\GSáè;‚ ÿÃÑîÁ[)`ÀÅhXÂ’BÅýŽq™ƒÃ Ž’qppppøÕèj–¦²üTÞ…Msë&é}FvŠùœîÝížx­Ü¯K Ep÷øj—î˜×í¦"¹r“$+„èa.P}á|“š ¦  a.mE1†wµ&ÒRT¡Ÿ÷Qåו?YÙ×*–êbœÇ€xo1ÒY¼x9ù‘H§+ÉÛë–”áÛÚ”éSÊ–>o•tóma®ÉûÊ|êÑŽË­Šœ™.“¼‚¨ßÙ5óÌH÷Ó7W2Y:5²EÊ'òöPŸN™Õþ÷Ÿþ?2¶í¥š˜#C>Ô’°Ë$S¯è|èol§„î€Zð7æýµÙ«ìu‰i$<`ÛoŽw¾Ì¸Z£CgµqãÍÔm[ˆ øÉZ{õAÏøÈ‡¹Í#ZË|u)¤iì—n=Çÿpâ–¡6T«v’$4±õ0]C¼¬Œâ嬔á:~0LîØí> M”nAͺšíš•R¾&ºüé"´²ÅíñùD–px§›Ñ,ÜÐ>Ç0­R­ f3àvi‚U¼ñ—}„e“£r¢Î~Œ¡¦±UÁTfA¦±“œŽm<è©ûy[¨·É>²dÆr™nÒœ¬p›rT$ Ô MQ·+¨ªV¬Ç3ô˜¿Ý¶ð'ºçÖš#Z°kž¦M}êߌ~¨w›3бôX&¾¢ÉL^(l¹µôx²Ónm:`(sB+¶nP"ig—‡ñ…éb×îÄÕŸKŽÆ{Qšu9‰þèã+ÿüÔAó™×øOÿ†üþYaïé™àÅE߉…PO4ÔfºzÝ—Õ\^º^Ô˜†L½7wpspø€á(‡_ ‘3n/|ûͶ~AS” [=ÛhÚF*÷ø/ý4÷†˜"á¾7:½‰%#¼léelÅÕâ1JsJ4)ŸÜ»ðæxR*…87-ÙlÕy¤>â:¶vZ?¯ ßm}¹ªî%,ëì?Œt³£^®‘H¦.¼¹på²Þµ»ÓÅ×ÖÅ"j\’­aò‰£^Ó£ŒÑXkõåwt±ó`ۈțc%­±¡Ûc¥cÓí·µ¯/öXF#VBR’BŽOX};„ìÅÓÄgÕ%Õ%4·Dmè­3ä—èÞŽqȇZâ¸Å Òk“%6²ñ‰ìU2¦mb¿ž{DÏè{ûømhö–Ùo´=5]xÓ¢R•\Å—šŒïÒ(RP[”wµŸ:ƒ òØT2X(\ZÄ4OÞÒÏZŒP c PÈÖéæÎ¹WN §îtåܸ€ ö–9,uö©b-Ý“­F{3‰ÛsùýæÜ(5v~•¾óÞ¸9—ö´€‘eÑj|Ù9õyÓc:ã›ê½c혜èh»¶Y‘½w‹ùÒÛâã÷lPúµŠbr’ÎI¶òbºÄÍKP`éÍôÝŸ ¿:hÛÂ5™ö¹ßg‡Ž’qppppø•9ó“w¤ÿŸ¶æ+BØ'ßlO*>J/éþS~ã……?ú}늷›\„%“"Aêu:œã[“òaêõFh2˜ÊÓœ¿W÷èÕWÎÒŸÛzqµÜy-F.ÊPI<—¡¿{yà¡ðÕÁ]ò—ÿ™ñ{¨{wY·m¡¿±$OŸ¹|ØÞw êî@¢ÁJBÄW™:û:Ck×9s¥ &åË-ÈžÑbK_pn›R5Vœw„ ÏŒtw‡=a×3:¢ ĺmùèDìGø§÷ÖiÒèÛê-V뢢€#!ÜÑj; OÜgz³Õ¾p=õÀúØKw»1µÄœ¿" mZù½hÀ©6W2}uƒ-kìXÝåÅšiJE$¾¯£þú¼—c"v_]­!ëè|\5q°eãò-‡ Ž’qppppøu9ãß Ÿ;ÿ7{æî¦Õ2|~¸ÑÜT¯|ä6«ž âêèP€å LÄÓ&J•Ëv§ VÓÛƒæVw5 Of4ò“­·¶Õ–»j®%ÄVÇôæúø´æUg[>»y,$Öà¶;‚‚Ù€áj÷]ÁžÇ\]Ã_ÇCðÀ'Z¼jvšSn)H*bmfuBžV÷'&Žfº¢‚di?Z‘O£hͼ0Þú©¡á Ïn¾Í8 Ð_¼ ò®ç˜psº¬\+C§Þ«ø, 8‚ŽÖ•XÖAR$¡ºL.Ë›b•:|…êÚ1? §E„à¯:Ç^”öT§Rÿ*ˆ¤ÎéüKŇ¡BÀ"$…It:ç†üÄ-WNÌw+Š2 m‡a CˆT‰‚B —¥·OJ™©Z²‹©»£¤‰)ÒIƺAˆ4c–¥`6-Äö×jÛÈÂ@ۺ˒h¬y ‚< `ÊêêÝ„.ûlU¾x·ÃDv¢@Å þÐÆùT"§g«ïk†°†|EÌJL„×!@èή™ÃÓíOögϾ›e‘Ùb8ÓíæÔþísð•9ô[ÉbY£ƒ.Úã Èz£V3ßëwÙjNf\Ý~+÷ч˜Ÿ<϶x…hˆ.î~˜´uæÌËs+M•X{¥g À±ŸÅûkúЇIŠ¡êEà† š*l>Øð7\êù4Ð ‘’ I–Ý¿—zæE†‹ù-/czTéh:ÒulaQzÎ`KÀ,ưؠ:"ú\Åõ¡n¥$²ãµ§:j£…à±1Ï`ký—Ü7‡õ8JÆÁÁÁÁá×$ÇÎú¾s¢í³wŒ]ÒYÑÖ 0•š”¬Õ—MdÁƒ*[áÒUÔk¨k$¡ ¦\¸òÎ ï½Ýš ÚMõÁö\W¢òóKI€è:13rI.µ0)òu•Wíƒ%…b°–—¼oç8x"a £C®»ŠúÁÏ­½¸¸K£J™uëäiõ–ðü¹Î¦xVB×΢-˜å‚ÃKÉÄu :óU×sg£û‚Åõ {è•<"¤5ÑèéVʇT›Rë÷d-"E7!s°Õd°ÁXêçXVEµËJ¥Á?å1K’8juõÁT ¬ –®±ÞÇÍü=:ØT€PM¡¾sÆó[;+ôNOÕ½:­ìˆ-B€\žFP¾„À ´¨–íWÏ©;è´Ò50BÈMKOpiZ`Úˆ²u—ÕXÅÔ — nÛé,Ö1/®aT©ÕZƒá„ǶJÏÌ»>r«uä õø}«\ `Û¿l½Çsçb÷ô^½¬ÉZI¦Fë—Ž,µ<¶wøç"‡NÅIŽ}õûÒßÿ‘9SŠÜj$5¡òc& ”°Œ6û-Ó¬VÊJ½Ja̓늧%*à{ë?<ù¿ÅjÕ’RÉ+ͽ•H›7=Ýrü99’*t <ä;u(A‡ŠûŸ´ Ó³4ƒ-,%{óm}Ë 3‡ à0€l]F_{!ÿ{¿Û4f±2fm ’ÍVmƶAlè,þókÖ“÷™mD`QÜ ð¤ºÚ™4ßðü¬ÜúH×Õï,µö‡æ¦ žú¡C™Ž=AC·ê†àˆGÉ88888üÚˆ‚ÕéÒnm“Ž\nºÙžT¼¤~.뻣£¼ú"ºac‚¤D³‘6=A*€1ik‚’Ö|Mtþ2¬~oÿ⿜iGmiÉÀù|ô,nýw5a7uí‘WKê•SK‰Ç[®«lèJ%ŒjîÖ©f—zéøÌÑcò@'ÙßeGÖD ‚\eÀ“?\jnWKk?~gÇô³—{:B…e&kìkWš35â÷,&=Á¸®òPʃ;ƒ äV_A€M2€¤†çdó4Á€–.:ÒeÓÐ ]1M[ ,¯K÷ùyŒëŒÇ0z¦õwÜouÑ?%DQNl¨…fY~vvË÷HƒõNÖC÷zì¯>4·-Q™“xYk;Ã@w¾ÿìí]it‚ò“躞¡ÀDÙºa¡DuAJ5‘9Í&‚V±O€hÀiÀa€2ö`@’^2Ý¢ª32õDWF,“S¸Y ʆ ~º¼îè"g€eJ*%ræú•]ÏO4ïj«¦â•]*=] ÐÈ¥e÷s“:i3o½#ýöƒXRÈ·ã¦fBfL0tV£=9ÛUÕHQpyýœËP¤:eT4¾‰'¬Í]È$СŸVnß²RT£³|¾­¯ÜÔã]šõ-,Ê¡Öì¿£ùc¦Fë6xßÂoü¿u¯WC¬ Œa!ÚÖ1FCb-ÓmËßzÓøó'©¸[¡ÉMZ ‹lMUÞËÀt]õ—Ç¥Á¡ ìV9•N~¨{NàtŒ±¬ÒÀC_+¸¶¡ç&4‚¤OÎz»bå />h8JÆÁÁÁÁá×DäL ›UgÊ®óUîÖæ‡ ¸æ/75Ç"+÷²¨³†]›¬)„ZÊàÒG©Í0º´¡Œ:RÊØßŒÊó °úÇ·OOä‚ÿë^uvÊÖ´§„HHûÑ´àŒ­ñ•¥H^r…= I!S-ÔØ$mÜæÏ­]ã Ûºœ£B=.…³C©zw Ʀ‰·Né±o«Œ®ß·º²›4m_gÎ%0ÚíÍéÃÓíÚ§' ¡ÓKþíÑâÃiЖI· + Ä«6²Jé<»­ í2ÆÔ˜lpÈE¨,²ÐAoØ€U­ë`k^³À@\ŸrµxÕ3$–´ž · ÎÇÔ‹WZn#9"?%x[Z2g¥×/¸ÿîÉ®„>'³ kÏçH!ÈnLyBËq›uX´`êfÍbY¬®ÄdLC„† ì)|Kš‰Y`@u‚0™Y^ù6TÌ}éíîû£õô¸Gçu#ä>šúx˜Vû|¤†mð’š‹ÐCŒ«2.¦ ûD®°ñ÷¦–<€ñ²—]W¼úýÑ𮄠²Æ*dÖæž¸Êáêœ šûÁDLÀy9Ò‰’,M±$Å‘Q·I±È+Ú„ËÓäÖÛܬa [²‘7ÐÕªŒ/z†—˜­[)1A[)–YoÓ´1ˆÅŸK›lŒ½éqÔ™kEA­ø*sˆ$\JN0ò¦2ßœ¡‹ÉîÖFÃÖLLHõ†ˆÔ޾ú·_ôµñ¿rãùÀl%‚ ¹ª4I¥9^Ó;4€$N?t‰Þ™ÈýóѦ߾{}£$‡ Ž’qppppøõ‰zlgÜÓ·?ב.‹VÆ[ªÒbDà¢= ÍðáA¶nfÆÍäbÇbŸ'4½ •)$‘è7¥2`KÎX$Ê:ÿäö Õ^™ÙLÌÖDl Ùæål0ìiH*ÝëÆÿs<øPÏìÚ£“íò2EäÙÙ(¦g@`¨ßêI¶Ç¦‰ï¿BÀ¾­¸;¥EÉêq5¹ìR°:‰‹Õ‹ûßÎÜ)}¨gN2Ø‘l3"ТêÝ)†7»Ç¿R¸;Âk4 >FÃU#åA•£æ¢lq5‰WÊl €›Vm„?ùbnÛÞz dkke_{¼:3ëëb9ãùÓÁ×ß üÉÇ­&J¯¨dÊé<_±EÉ"%ó:‰2Ô—Æ6(Þ€ÌÈt‚ÅkZz=iV+à‘l޵µAòRGßÖ·7ù‘ãˆõ÷âé{¸$×kɘÇðiîrúü»Äþû­ýŠÅ`Åä$““ 6£x…(w,ï~>Û¡tÛÆAZ÷2ª›Ö]´æb4à)ù+o‡ÿøÞ•Ž@§ïŠ«¯¹¾|*õDO~O(÷Zºc“}ùÉ}ÚÝÒñyH¸Òmþœ¬1 „d‹CR1Gjl¤,üb”Õmà OPò¢M†²]ô$SO#©jè«:VU[3,E‡ÌŒ¼åËôð![kÄ/æ(ž!8ºØ{ÎFûëï1ù%ú©ûÌÚ ½ÌZDÎ|lOùG'ß¼#-nT`öv6y°y%¨èŒ¥’~Ïê¹É¯"Ìy»D…… ¾­ëÛ98|Ðp”ŒƒƒƒƒÃ¯OGTKùA)æµO/â¾Fؽ>ƒ¿ZT–tmÉÏ!Gi1»|ú€h‹db$dz›;‹lN„Y°t»´èŠ6ç+ÒÏ^5— xß6x|óR¾^ÿÞ»œ— qƾö¼f»L=ß.þd$¹ 5ç.“]Þú:5ŠDeU1y_¯–2ëËcDõ[Cý–¤ SïÒøUnÇ6­”‰­ [³*2£¸Bc¦¿^ׯd¹’ ˆ¦—7à–м‡nжñ¿Å¯ùDë|Ks³7¦Ì£Â¿ñêìO÷<Ú‘]­>¢-I§8—ш«é…i¯éµþø‰Z”Ð'íĸ¢É­–:˜¥1š‘mJ2p­¡@,/¼ö¬;w;ScÖÔàƒH—+„? uÉà\„¹Žã‚ pBÝ|+s)Bg—ÌèÛJ;YH2ÙµzæÕË¡G‡Ò¦iœ¸Lîìå —Š+ç¿ì]Æ“j€]L—\°µ·¡ NÒ™ºÆ.ÖÝ5G/ãÞfâg©«ù9ÃËi€ 'Ó_>™:˜ªy\VCc‚7êý‘ú„Œß.ŠRc–â°M1,e³$fI‹a¨ iñ„M”d“R³aÓrI‹6"u!x÷ƒîoËþíU]ǺIU³XÓlMEô ‚Qjv(A ¿ƒhÊ 4êÓˆãÜŒæGµ8~Åsk÷uÉŠïCįìî’~~!öè®ùuo–Z;½°"Q|‚k¦Ä–u[»ÝL¢¯½˜ÁV$`"'ÇÌá£d~}âA娕à`g ìl*ÿôjëS[Æ×ÕýÏ-âþðüQ¹¿C¨mc‡ß1oé''€$pÒRËnzUÕßLMW­Zcý<ÝŠEÉêå{.…zëÇg;`OëäúObÓjVÆK9]–l•òpfMÅœ‹üuî5ƒJÞÌ“#dàS‰•xŽì» 9ÆT/S]'_E~SßÛïŠóå´Âhf9FjÈ7mEO—Zš¡sÑây!I4t›k4ššª¹‚¾>,sƒÊÂ&-ê*ÁaÛ`[˜u.67ï GlÞVú÷ò—ÚéÙ8™[Т‡+ý1ª¾IœãIe*㋈zØÛ€|fŠb$NK¹Úð?Ö^·öO« ÐjH¸öî… _ïÙBàÕ9¶1´ú¬DïŒ+ˆ –ênDÞBAÓ×…<3”ƒd•@@`Ì™acaa$ƒÂê¼—¯å³Ñ&]ª«†irbqÔƒg›áÑA÷—NïÿýTÝ3çÈ̬Fy ŸWy¸ô$Y^–!^òئÕp%ªÉ.ƒÛ`I*ê)ôÌPBQ¯FûŠ:ªkXÑ,Ë0Ó °ÊÂú/^w²6Sß¶_×÷æp1ñéöó«Æò±ËpçêõBy}øVôÛ`ýã«el¿û˜£d>ÐP£££¿x¬ƒƒÃ¯Â¡C‡œ_–ÿzDÞÌJ+U%1ocB?¸Ô½Î³xxÌÞÚµmè ²VŒÅºU€ Wî£ÉFFÀÚý‰ÉyëõE¿ê»Zz(¹õ wïóË+ϧOf»às=Î/$ÎLŠ»úU-ÀÐæ—2u÷åtosY`¯QQ¿«¢Y>–!´¢rƒŒ‘Tj|^Œ¿qTè X{z¥ûwiiCÇŠ¹9XÊWåÖØ“îK«í5·ÆϦ ’w]I½„øµJ$h¥¢;‘4kzŸf’7ÅmÔ£éÿj|òÁ®k™r:+bà «Õç‡[;RÄŸô1§Ž×W6ŸÂZgDVåù99úÜ\_Yíòæb¾9 @º|ûïð>\ùÐc1¤É¬ºZš²~u:妓šŒmÀ/ë©MDþ¢Öµƒf±~¸ÖßIºÄ™N~¦‰ÉÎ)ÑWòýMt=S0·4­Ì즵±¦y‹gçvåÈ)ùñú«` öJ¹¿¬³¹š»¦2U•)+ô©%6i—“ cÝËëŸß1%²šÀêÓYÿk㑼ÂÜÝ3±,˜'gÉD®XóoÒTë¶Ô„@¾w•1€Pã’’ñªYoyŒ›Ž¥, e4ÔEvs‹:ÍHE0ôм(~è¹ñ®»[ìíXµBäê;Ñ× .8óàï&Uð „ø–Ή¥Z¢¿j©Óî¾Á~ö>»d¥t¢TL1˜`1pé©cnVõ€fh*D nivŒ«Š´ ¶}ï–ôwN¶%ʲö€3ÅžþÒªƒˆ¼‘©‘ Ö«à€ºÆ"ÀÐú-PÿñUâð æÀ.GÌ8|p¡öîÝ ‡úÿ{%ÿÚèìì\þ}98ü+F䌘ÛÌW°0 $BÇgR{Ú®•#“C½$Ëö“…¢éÕ 6I­<„^›v…¥ò_0žþx4nº$ðÑè˜+€æËûšuE¦eÍ8•ë®›ì½ÍÃ0Ô´”SC"+¨eJ$”˜§þÓ+ÍW­ßß{Ýãí°‹¶±Íp¼K^šÌ_Ë€ÊW„Å"?•a³5qQíËŸ¹–uvøÍ6'5¥yPXÑ’âV”ŒÀhýÁâ‹ÓmŸÜüîÚ5€ÂµŠ…¸Û EóD Ä~©Œ£UÜf£YšxÇ:€X›)§3B ‡øVÏ_|\Û1@²$ýØw7ýå½ck­ý8G(Ý®™f6““<'æc™abG¬0Øžç5xý4ìÚ#y#Õ6 lÖ€Xïm †Ðꊀ0Æï%Lj\ÖöNªmÜL€¬œªuÙ¸­Ç5ÑJ·k¦™ÏÌ5¢'èX„$½ òÀ`h†\-¦6EŸyfí!d•t6SsW%¢ê¿xT€&^ïö7<¬îåôM‘âü¬ë±ÛÊÿ"Ü@OPò{ð3#ÝOo€¹49Т”P­,0}M`’)’Ñ2 ³æV®âvÙ¶FW¨.×H’ Y0q)àJ°Ñ xÁ²ÓM­ÑêÂéô;Ö¾ö" Teð>=1PæYßì%F¯˜n1Á±¦'šÝt[4s!’=ã¯O_&·-›?¸Rñbš˜’ ĺ(P sPP¼6…Ê®bÝ›© ±Œ ØúñÅÄ]-S­¦bñ•à§›Ž¯=Y‘3ÇË×\j» ­$ç  ßBÊ?¼D÷oÔ¾ÆÁá{÷îuî·~=Ú#êRY\ý3ÌžMd›7Gç`¬ÑÆù¼g]èÜ ÛZ$’}€^iëN’׿õ/}%ÿ…Ïx?½]óªðæ¥5û'•à“ÍW‹Ì¬êy¢åÌòHÑRBìÎ#“©'ûΉŒ6‘³ÿË]‹Ó »:M@Ç&ïf•ÌbE•5f<ãŸÎñÇÙ—qk{uo_yy”\¢àŸ:„9ЕãJ¿Ÿª¬–‚´r£ÅàL9²ÖM’Bö5Á‚eë¼Ù¨Rdį”q[R»:6íê~~¶ãÁŽë¬ *ÿñWîÞ—T¶µ#š Æëô®¸âÁ o4O«­>µÕ—“5æôXà«/$6EwÖ SÅf¡(iq Î3^¥Î¢m«áÁµ(™ƒ`¼Z¹fQ¶VÖX7½ò¼Ÿ#”Anüp­?Ig9RÙá9×-¼É; <©ÒR¹¹nÇÆ«K)Û‚A¡¢2•’l6ï¾7ôö(¦¢1Ê®$«…8£Õ[÷ŠöÈñò_~tz]:âsoEnë‘#þ Rç‹bsPj–ŽÏvìi|öêþûÿ½óŽ“ã¬þozÛÞ÷ööz¿S9I–m5[î²q76ÅcšI!$¼q ! %´€ ÆØØà"WYÅ*V?¤ëý¶÷™ÙéÏûÇžt§ÓI– o^°÷ûÙ?nžyž™ßÌ3·ûüæ×´á z–tWÚ|.£¨ØËfõ˜¶™F1#eÕ2øJ¡xVŒKˆÁ0©ål¸'Ÿž«V$°ÆÍ+f¾·=zEìß6©¶^‘ 4#ÎYä|8&;‡ö²,ÎùG÷Mwo¶«ù@öØóýO­>n“Ù_s®i­ÄØè§jÓ¨H_E÷§ò‚ß5WqÒ2ôS¾¦c\UÈ—NÔ,çË.^ÅÔù´Q^·('QξpØñýcÍuœº¶6¿¾-}ËEg”9MŠŒŽc5(žÈg•01g¢añr3½W뾌ݺçåõ£¿ê ØŠ§-:6PE`Ãpði3CT‡ Ër \ UÆf•õñ1®}ëÔ²V§XÉÃ[A*cÿç¿ßíÞÕõ¾®é4õì²·½ÒhÖuqgv¢pÎðŒvÙ²øšrp‚î gSÊð$˜˜ ˜‚aÁ'6·0 ¡` ¥ÝôAf×ó@™ñ˜Â`Šjt˜;F#Ã0/Ù5½±;~¼LëêÛwÄã“Ò ²`B$]è¥!ˆi8AaÓbȲPRîÌ¢ë.²ýö¹§¦ÔNk7´Ÿá˜·.ĈE_`R •­…ÅW²€²Á’<1^´O-»ëcÌS%zL¶nêJõ•ü%ÝD:p ·X£NBrÚžŽ% J› *e•öfDpà@‹ñ˜£†ƒ9M&\œ ¤þ¹·÷›SWÜtcA` (ÆÝÃûœ¹lnåæ‘Æ+Ø»Ú#{q[‘åJ飣—÷§Ã‚exj1@Z§ÔŸcCqÂ{A“ ƒ£˜¥óBý‰lTÄé¶ñ¥z!MÖq·2åçÓI2ö‹Øç>tá'¬Rå­FU“yFFF ¹¹¹ºyöf•*Uª€ÀêI™îòj’Êøí<­ÞÖzò‰ÑNºŒ_6z I²z»”²hÄðí ëZåÖš|ˆÕË[‰ øÞ³ÄgïÕ·ï'5MI¤¢^þ²feuû_¯8‡óÜ5ÁôKéÎRLMͪN#h7=‚y«G7M qû<°!_*Ó6V“uVÖ;nðŽ´ijÅ”˜7ÿ|ÕÑóÈ_d# *lÓr+µ#ß~ÎGóšƒ!2žCΓF{9Piáiµ×—9¬‹Î‡þËÀºñ²h18Ža…Ê4ÒK¸Ãa-‘™úll 4¢™Qº)i¸¶%<ŸXk$•ñ¾/|d‹Üºª0œ-§ú÷¨ÚZùžðªŽBØMÇrKÚfNÍgôv;ÔOlZkT>Øîð¿¹9{:Z¦lP”¡9]g îµ!'¡ô®®,ôçœ÷•:B]¨Ç9gX—ÂÏ–BW;GïîÚ;}Ƥèxd¸!¸®á(¡®½T JgøþÍa°@Ï“ÊÄnu|ê–ùʤ•|ÊIÑ!êì”dß9‰±HÄ0…ÒššÜ¡”7l¤X‰i ª³àe¢J­õd<¬ÎsAÎRu©)J2¢1·%eO-*Η¯ÁM­Œ˜¨)JõÅa^ŽAúÛµN¯±õuÏm“àN wýä ÞÆµÉbq|Ý@Á˜ÿø³áäðŸ<·ò‹ï.ð çØP DQªH$1wÎXœîl’iü{[É/Lžyj¸ù½=‹ó˜Uh ª‰ À¬Ælô¦%…ñÛ@*c?ø5ó¹©ßJ•?~–(¡UeÁ`ÐårU7—ܬR¥JžÕÇRÜÂ%iÙ`I 7TÄáJs=6“+Ûþý›fÇ~v¸5­S²ÎÀ+»‰;×[Ú´ÆøùVR7Ì©´h”RФÚüôr2¾ï€ñ7Ñ}ëëôµ½üm«âË#ùZ—(– žD'†š§Â‚2VpïOÔ~óØògÆÚÙ"hTLÆ,byí;LÚ^ðv+¬»Qê «#¹”–n.êÖDNdÀ>eÕÏ·xR#E{Zš÷Ê"žÇæ\¤¼v³¤Ðà1ÓE܆_À/- fž#jEœ{e¢é=­“§®¤2ñ·?öܱV»õ*¤±LÜæ&ÿôŽâŽÃD©dÊ)É"hÖë¾ofÜë!>øPÀ‡> ÃpCgU>6×ÄÒ•áã.L‹:äT™Ú™<>Ò3– Édz:Ï껇¦tWñ<£ñŒÖ噸.{:Qwëjƒ§ÕÓŸ’ÊX&²tëGG–[Ržå;Uwe!ÍQkfAfìçö:?°¾4›á{žØý»ßv}~[ÛÏ·Ìl€ÐE¡™:FýPãÁÛ#ûW¹Úì‡^Júö½3¤ŸÙp€²2kR…‰øÔx&›“u@Þ”›’Æx‡%Í— ",UÓ4À˜æò%uކ×ÅÜ­Q ,8<è¤Ô²P3nsbÆûô—[õ¹¦=¿šæ#G/úØ/'Vݶ‘pˆ¾ ¢‘ÌN¡$rº(³Å…ú &þç[ÉÏÞ£  5°Á<2µÄý€Ÿr46—×'0'£•TžÝ)ܰÁ¼À¼ÏUª¼U©ÚdÞ€æææ… ÷êfU©R¥ÊÙ=­Ïÿ ¤e×OÆ:îi:™OMuoïß¾ù›k:é´N0e[QŸh ç·¦–mjjvˆOõÍþËÝ"|¨ÆcL`Íõ¨?ãøe¢é¯š{ùÒó´ð­WjÛ"ÉÎîÕl[—-Õéž°S‡ÊŸÞYÿW·¤[ì¿Íwö‹ô½{CPxå”"œK`Œ¤Á1 “Nm®Nÿ0¾q¶grq<ƒ)kÈc‡¬nìžR¶4Œ=7Ñxw×áJ Àp¦‰ˆ†JQF›UÀÄ ó¤~ 1«•ÎŒkAè´äL+tƒg.GRÈ¿ÿEð†öâ®–u 2iÅË(£üo3ðn’êl†¬è „8•KçsÊšŠSu5gèi-nSR¨ÓõeÂÎ* ˆ+Ô;ë&ÒɺՂvKñ¢}ÏD8)FÛ\¥ZWi­súÅXó]*£ºý“?|ÖÚÅj{ÂÓ•Æ¢BÕPê;Z'¾ùzÓΡÚV÷t°£hs kdÃ3ô«£¶ÎÏsÝõ–ËŽ6tdnu-6SŒB<«+ˆ-X®ŒÂ½ãö‰éÐ.¤‚LŽ‘‹*bäÖNÚO 1]µDfTsךÅÌ£¹q…Ó Îï³yreÇ$­´ ¬qíÚìC/ø»S…bí*š´òŒÇÉÒ`!„¡¦jbûódôg{˜ÿø‡@¯eÕœ&ÏŠH¯´¼ÅÉÈ…° ‹“L²(kåòâú¡ðØsÔ²f+à³`Ȭ-ÎÆ’nÇéè²…œ@Zv­pIvF.Ø~õ²ÛëÒ›ëÞTÕ*UÞ‚T5™7&ŸÏW7ϵY¥J•*Ðè+qTþNK·†Ûïm=éåò^.áØáBÇlz`Xô-wLå1×´p9žV1®­Ý7îÚtcÇ Yê´&Y¼¼å2ó“w‡í¿ÉtÝè§Ì#—¯mƒnéµ×]{†´»6ŸH¾_Œ­ÞèMJ©X;ýBzíM¶a¯\˦Gâáed8Ò*)bÌÙ¢’$ÅØÀ¹ÊR‘.Œ-ÜõèNü¯ß……Åš 0 ´à3ƒXÓjt°Òâ ÍŽÒîéæKkç|Ì4Œp]4i—`” hPj°ts¸ yö1+Ð8ŠÐåYÃUQöÍÖÜÐ4^Ù%)ÔÖ¾-ÍòGo(Ê:–,ã6‡ß?b5¯@ºÔ6à_ýMv6Mû]R:™àƒu¸fZêÒ@pl’¹hùuK1b>gw-&hi`™Y6ªì >¡ÐYea*-œègr‚µ‡mmb§netš»±£¸¶>ù‹cmȲ–Ef!˜(‘~{鶦ØcƒL0RW.¬èŠb¹ù•º$£‘ ó…Ã˜× -u°}ûÓ[ÓpÊ&;Qô7Ûôç‹kHp Í#­T†5öLªÈÖ¹‹À`J –:=Sº§ªçÂ’ƒ•£Q8Ôr*e©Š1;hÔ…Ù`aB8ãÞ«S¿|²ó}íB>™¡j]¦¬»£,ŽÉ®ˆ{²ÿûÓ_ºk˜|‘ň#5Ò®ž‚!Šz¶NP¶éTAÊ–v‡ÍåÅ«œO#cÞeqd€Í—‚P›Í䪚ì®t{ÈV\”ãŠy­ nIg\¬&0ÚÖQÛJª¸ù_Uª¼­¨z—U©R¥J•ÿ)a—YcþûDÛ½-'O)o°'†VÛÛ‡d»‡É׉¤9÷ºá˜WŸ|rêº@¿T_+w˜íïê]F?“ïºÑ{\ óyʨ$Sάr$×­ÉßÝ<õóX%‘º©¶ÿÅ1ákÛÙ®`éΚc²ióðJ“;y™pp¢,«ql±¯Eâ^—#ZWG’f‡­ÂÚÅÈ~çz 0Ü#,ýžÛñ0¤ÇñÖÓ-+‚3£¢#-ÏYªS¦Àã:†Î0ãûY›§†7$ÄTÂ*Æs¨,de…záHHÀŒOÜœ-¨X²<÷{­™@Ь„ i5×›¼BÙqÀÓÐ¥|¹kqÎÁ+pÖ–…ÕnX–EFZjZvup"dDÒÆÎ¯¿yFm d7uM¿oÝ仆Gж_ }ë×þgö²Ñ€ÆÓê]=ƒù2ýÔ‘VÌ ÈB²J·„r«¹ÝSôë㎒É#ÆV9š$£g_6½nì»ñ¾!s×qîÓw,^ÁË:ÛŸª;ž©û¯‘uÏÅ{¦JÉÝô´])åò09i¶f[ÙR·{BDÌÔpz¦¼Xi‚h5m! 2£Ž” `hà³3õnRRšÀô’†¸ãìÛUgLßÕ2ðõÍ$ˈ@㠆ݫÒüød0hlµe#+H«°,þŠ»8D˜Z’«;ŒµÏ‚ß®%mÞL.ŸM%tÝ_ƒn ›8’ _þ%¹iÍ\!I¬¦‰˜êí4Ñ6Eb[§›‰!pæšZ *•lplç1;†ã·_ž…*UªT5™*UªT©ò?G`4À@Té¯\ö¡ŽÁ…/•9RYçj‰Ú{í`ñ² ×ò¦ p¶î…¿¾Ëäˆr 7¾ž?ÆãÊ 4MEzýÒ4cä@Cxܲ¥M.gV³cMÒW6½¶ë(yrÈâãc÷\JýgþÊ´è,ÐᑈBÌM¥Å"ùëÄÚEú¼Ñ/`È)æ2p‡Žcu5 Öâ8™ÓøPRÇéQWÙä)eChvÒø‹w$§JXþ”•Hcx(dÁЏÍA›ÐÞ„F4Ç7éKÊbQt-]7™e.kµ5†¤Ìi>.»-¯ãR$veÓ¬ø5-‚gu¿½tmí(pÞ{m6ì²ì¼<­®ŽÆÜ¥ïíhC†eI¡V¿feBÍI–¬>NèŽZd¨¨1›×Í Î9‘¡¼zåÚN×ôÍD>¿gÍcíE€Ô¼5²¿…KR½+±Êr£ï"jZ&ìmŽG(;‡¦#gÌ©¯5h NãÜdaÎd°N(&XŽoˆ„HŠŠ•,;GIˆÓ”¥ç-»X<ïôñ@»uU—ôƒ#½ [@z9PGJ¥¯.¾±5žÎæ4[`ÒÑʃT«LÙʳü1¡0+hG%wœªQ„ÓÐõBÒJ[2ŽÖSûì«ÄgïÕ+ñ-q¼Î‹•ìùÑl«w%šâÞxë"I²,’É &)Àñzû9Ñ*UÞnT½ËªT™cûŽ×ú9O‡îž›6®û:W©ò–‡g´5>ùñ‘à•µidY©¢ `.þ_T(@ æÔÊÎ%j IÉò g —"p7Œ+®’Á¼zˆ@€É•GTi*©šèÁîÛ@€P<ëp›a„¡ÍÓŸÖû§°+»­{;wjãYéª/‰ë×8ã+˜=aNmcYYáåÑØ#Ì# §Ç’¢nž3<úÅ>ìŽ-æá“˜ë6 Ai0G†¨;*ðVüBáDÎ7‘Ö»Âu„ÛpÃÎéÓù9˃EÒ Úì°]E/vÍzy]×fÅ9g÷tóFÆ'd•yñd/èŠÙ©&-Gc8JNÉm‘I‚Š€Õ7µâ–JnÛo¿|M‰㸅ç„F·4¶ètb™ò9k2€ÍYev[\f|fd ÓBKi2|Ba•7s8^XN,“ЀgÔåuq„ÐÏû¼Í9XãO/O}«}8©‡BþFWøÙßÎxÝøæõ8$3äÉ Õƾ³Õ;¡ÛšÜæÅuEÀàS—Ìg¾®gž™ uó…ëÀ¶![4¤¿,z?ì–(¯± 픺7ý,^&qËk‡ŒLÖš˜œ7u»?d£ðD:Á3DÐ-Lå$I# lÌÌ@ø"bX4ç«<¹Yš42öÐ ^zqëð€­qYw{4FxýEçæP¦VÖ•e5ïhCÖdL–]Ä8Æ(2FÑP‘öåI‡fóÙõ¬[f¤˜Ï×.3‰, IHС.õ(<Ôx¬d[á›zjº»EqyÙù¦1¤K¢É"ÝzñÔg^Yy®I©RåíFU“©Rà”frï}÷Ÿ§ÏC?ülÚ¸îMuþýÊY¥Ê, né`ÎöÒŒû…I×*w ª,‚=¬žWiMÕ§Ê™–º6c*ÈPC$2*ùÞu†©B4  Éd§¸ÈÅÔ´»5Glö¶6gÐ…ëù4ŽDðk¹<)R®OkâOt: ݤª×ÑÏ-k¿ú{¯‡Ô•í‘)C ®j›|dcƒ#¿Ò;CRĬlÏ­ÃÀÈv×FùDCÆyzRH‰˜³³lC‹|xJÙT;òÄhg½+2¢˜× 1˜Z²˜¼érókÓhÀ–1[œ;WZrîHyèÝ'kÌË£ ^Bù঩EjL…²·ÍJ%-›»`(<ƒI†Õ(çE"&ØV¶‹¬’)pˆŽz´3bǧ2B4pVè9†WR0;n²\¶ ¢B;(â¸óÅ”7yS/5¤‘£x¦ ­¡~¯ÉÚñIá²e"4G•{×Y?x™~q7çײ5¥Z§|è$;:K¿Üºë©u]Æh¬ÜNÎn¾ôŒû/kÌhÆÿÛ™ðuñµøD¥¸$›$ù¨3o^cñr;S)þSvÔ3ÅÁâÒ|“O5mŠ"U)YNç| ‰ôÑXâô@”¬ÉòÄ—à1SygxÜä•ëÄÿøµ{s˜p"³€ß[¾·y†š”íå¼31®ƒÇíI*ÁòcˆÖ€ÒR]Ê ÙH’ HoŠx1sðù™ûïINCt·±ÚÅ›”¡N%„h®C3qèõ)W…G¶¥Z®«$(€°OØ›v¾§kVû¤TÑîwœòT¥ÊÛ“ªwY•*ÍÄãâ+ŸšgÑÇãâ·Üpsų¨ó’ŸÓ«TyûpeM.Êë4KHÛÊFé–Uc·¬ÛÔ5×å…Ù‰žxÉî®IÔq²Š›$f´FÄ•-ù¦ˆØ‘$o¤ÝžkwÍ,Ê _Ü7qÑâ߯xm95“ƒe§h¾Aô§·ãÝÏ+kiª…8ͤÇÈ&Ù¹xžRVz3{f[@2Ie`Øü¯+!WêˆÔŒ<}„H8ˆ0|*=±½?Q{W㸬³Û&š|4¼ãä’jLY–á *Æ1„=rV¢¯»´¸ëwxÀNXª_KbÞ8^·pÔɤòœ¥Éœ’“¥‰‰"i·ŠPP(­€ežeÃ9žV¯hŸ¶£I~a»¤ÐkƒòÝ+3OÏyÖµ5è—7ÉÇ^Ÿ8ا»[ê|Š„fSƇ®Tþä¦Äʖ̵«Ó™v¨.ã°¬2}35_y½þvÍëÝ©l‰°q:ŒL±=õæ,x» Ï¢b TjÚ¹ ¨rÆ®§A<]È4 1hØ"MÅRif4(†a · › ²‰Y(ÇmuÀN‹²ÞyYá›/GE+øôîà×½¯" ÉŽ›’'-•“s“¨. ¶<î¨e¤E·È¡ÌÔ—ŽI1mù‡ÌÈõí)Rþ&4´œf9¢/åžQ•ž‘™ð²ùnGjOfÞǬP d YŽ˜ÓmÞ`ZªTyQÕdÀ*yðã×,oinijìØtßîJ›(ýØõ]xuQ^â37·Ýùâ…¿QùæãcÚ™âËw·núÎÄùÞùýÞXR€*çbÉ]g·°,˲,ZÀé–ÿy«TùÃÂÉiïZ6xcíìh~z²ö‘ÁU{ãmŵ3å ¬U¯¡KG¥ö(™g¢Ø‚‚~{åå¡6³ã§[B°Tmb¬0Käò¢³êH}L¬ÝÉ\Û?]Ìu•Ži"]œòMìcñ¼§Ez_DZšrþçû–Å‹¾WŠ_ÛÕ.+ÔùÅÇj¼¨·€5çYu^zÒ è<;!ÓäLŽŠö´ìÒNa–‡SòÚ©´iE˜j˜HÆŒ¹¸o haätb>b{"€zWrÇLK§G¿{Í`LDçRc$w„MÏ*£™ÀðÏP«ÇK¤À™÷^›Û5`;<ä¤Ú¤Œ!_ æãsÆÊ Ï.>¨—×E…r Œ(IY°ÛP…æÔ9ãõ:žQï[9KØl E…r³ ¸©SÑÛº@àQo—yE»¶Ò5%Pú{îö‚e„Ýfo×\À£-—;އú©£“¡/îì@>½þàéÌÎñY±M%è²Í[Ç–8bq†k¿]Ç0Èç4cód@ÃhŒ¤0M2œQ‹sgÆ–LTí‚â^µÝ szˆÇÈæøˆŠÓœK7¬€G[Ó!ÿûЪ›olž¥9k¸åiðXÉiÅ‘7Ü9‹C$à??RZõ±¸óN1¡cô »2É5¸Ê‰fæ@1òÄÌšŒâx˜MÍÝíz[Ãa@l€´è|x¤h¯\¯›×Dõ+oV©òv`^“©Tp‹µ¼úøî¾å«úGžè=ùò§ü?{ï_?¹D NaÝ—ýüEüÒ;— |ò‘oüU$Þ„–a½ÁÏÕÚÌþ¿xB¬S€´€Ê®³;WvqWÅq\eàÙ«TyËcgµ‚BóŒ¶<{àÒ7„§iY9ÙÒè3³X Æ‡%Óx;?)3\p2<<•Óëue†Á2v`á6­E?tÜÍߨÕv"å½²ñðZ®ï5½±Ívæ¦G ëH,Pù™)ï²pabUÐàÆ®™§:§‹ŽÎ`ùGÛ#ç—|rz»æ¾3ydÞ8œšDj <&Ó•tG)ëƒ3/Ì4i/[Cv*¹1…# / H›UÂۇ:6;³ðh;5kB3/Î,»4\ººed¢pN5$W€K «š©|±lr'°zȦ'sœÀ÷^“Ú=($s,”.tü¨Ñ¢"d•nr-u]æµÑE±,¡9ík -ì%@çN~° £ôÚ}d,0ß„²s ëÚ5Y—`|ë ¿TÆŸÞŽoº¸U®8©0î—Oð[6ž¡ŠZ¹ÌùèD[^ÄþvÉEUM‡r¸ÀÐ?Å(6W€).’D£2ð”FR¸÷0¹YRÆq )|i2Š.L…¼žHœ€äʦ“’s”(›+Q,€T&ŽÅøC˜ðê(óù¾ÛßÙð›M}ùe±I¦ÇZ±™£¥¨†ð™2íá ·ØØL-Ÿ˜\FŽ IRÖŒ¢iG9päíÁeüçô‹±æ¾|+Á³É4G({†ß´úþ‰¶­òÔQ¬VRªšL•*‹l2g—ok´œåØ÷¾z|ÓWþõöf`j®ýǯÝÿÎ×^—À˜}úïn\¿º«uù-_Ø™µ@zí¯ïüÔë2è3Ïüã-kW,_ÞݳþÞo*!mê7ŸºiU{gϲekßõßC‰—>÷Å}É—¸éêëÞûÕcgFCéÇ®oÙüŸ¸ïÝ·oY¿öÆy-oXù=ÿvûꮞ•½+–­ûÓsPú±ë›7~ä£w¿û]·\¹éŽ­Hò»PüÉŸ\ÞÝÞÙÑÞ{ó?½0ædhÞtÿGßsûÍ·ÿŸ2o¸úþC›Ùßû‚ANQ1°,i“A‰¢xº3ˆ¢x.«N•*omFËZ]ñŒ¶¢>ñ—ŒMNùÉbM6ß¶ü¸ÑV6Ù•ÜÐX‰f8ZÂhÀÐ~u†ÁZîèÙÇ ø ÆÛÚ¿¸³£Á- îâ“„p« åÀ4{á¤é`:Æ7N¾BëÒÉàú˜ñÛKï^9ìä´Á¼c¼Ì<¾+|ɱB¹ÿÙÙ¤!ðôÿKZª[•lu•Ôºõ΄‡ÖúÓuyƒ ÑóŠŽ£Jêƒvj ã¼3;#|¥?U×lûJÑk£éU¡ÉáÒßð»!C)딽(k,/@SP‰eyXãž+“¿Úã“’¥›Þ%÷@¢hï .U KP˜)«†a ˪È|2n Ü+3<£²²gÌžÊϽê+–I'§Ù8=SÄÎXÙ^Z×)ýÍ52àÀM59™yÇ;ë‡ã¾ÓÇ9<â}àñ¶¬Âþå¥ÃGûDQ<ëF £Ó\б•(¡–‹-ÜiâLÎÑÌägÔ:ÃÂLu™)‰©šI[‰oZLAÈÌê~*{@’y ç@£ì¯†o=zh«·',ÿ˺™û6Jïº9s‹°§. *Gs1|ç Ï<%<¿[b_Ý‹Çj_Ÿð•uÏ\Ò H¦aÇtÇõÈEäVñC%É’QkÒŽ·ê')ÝáåŠIÓ¹šö½³²ÊG”ÛÙô6©éÃ]ƒ>[2´fÎ'ÄÎj…òX«Ty›0ñvùö·FËy± ¯g¢ïí¶ŸvqÚ77Iÿv4iÌlÿĆ=Û¾Q#íø›Íûìæ=ÿyé©NúøCùçÒ_>}à*?QÜóé«ÿä?7mû‡¶™|à“oyüà“=(Ù,ryÿño×>óË¿zêá+lKŸÞ,Å©w>ùÈz{á¥oü§'î}öÂöû ÷ù]}×¹1«œW( À,ÆÈ;ŸzäJ·zü߯zÏç.ßõµ5©7-€6øµ«þ%ñá玾¯^ÝóOWÝýñ•»v‹À,%èw?õØå.liÿ§÷ÿ¿e!çñ+[R“©üQ*•ìv{åªSåíÌÂâ$àwJï»tâ‹;:vÕ/iL¯ÅfOdƒ'„è„D»ð’‰€Äa¿ÞÃcê*ºï\Ç 4„¶Nº?±~ôt|ó¾iw¤›iXe?ê ÃAÐ „, rc­×•¸ùÿnžQ—Gc-ÌPÜý³>¯÷¨yÙò%ÊSŽŒÃ]›@8ml·Ì ÷»æÔ4"hÙQgÏÀ¦šá_wu¸¼šÑçì$A⦜…"59žu/X‚–uvk¢¦%`܉E„äpî¿@t†§ä¦I"Ô40Íña¼ë¸{E3@¥>ýŠâ_ÜsÙl‹ûl~½˜®u/QHÑÉé8b…LÊ ÕÂ\ôühç q¡ŽÐ룪×n=¶/ð±kÆ  ‘µ^B§¬ý½òå“(ž£õCo·þØs”Ó—[ÓÀï‚ Œ2ôÝÃ6À‰º~¬â·åRôèKünOÀIæØ Q&´/ê¸Ä6³H†‚­>—·úŠõ­Lª&’VtÌÖã§ oê04æoÀ4ñu2ºÜÉö§j‘Ææˆ²oö²±8ý³CÜšpfE}bmóú¹/ªÉY¨«±Ðh>ì ºI5Y8ÒÆ‘çu΃‘¤Î8€$4J‚ig4’¬£ÂÏ„^í¯¹¨9µ(VäP?ôvÏëÇÆµ}©ºZÜnÃ>xCX5SfͦÅXÅÇì¥ÙÖtZë›Ó»h€EÛ§£®œ+ÜÎÜéáÛgZ‚üýMã27‘¿ W.áH1›ªŒÃЋ¢D0‚Àåâ¥ùô¦šâ:…~xgô£WF¨DQc¶IZ×â`t¨[$i@§Qt*Ï2/´n XÔW„^=â»lE:#’µ:Ïñõ_>A|é#Ò3¯’ù">›Fw\'™âDWWç׿Ëb8÷w7$îùg ¹N[/>ãø³Û羉2á±Í¹–y6ØêØÁ…¤ìíiÍN•ÒW ã²B'ÚN¼Dh€©a¥ç I³ÃçºQ8&6l¦Òy{ÇËõ»‡„K[Jû ·M=Té b”.Å ¤ÆpT9 *Nk$o7¥!øí¥Ë‚¹’ÁmꜦHÒ$<›Lüè%ÛµMÎ;öÎÐÁqŒ`èF‡è¡ÕggÃÝ))As2P±ÏµÍ«½ãyîÐx%+·Gú_+wçM"N©Ø£%¥ªM¦J€sea®¸ßT|o¥–³Àík¼S¯ô—Þ_3·˜—^–-ñsdZìŠ~úôy ¥»@à5çõŠa²Óþ‰gö]¿ûå—_úÅýë¿rçoŸýd;²ÌSΆf"îw`‰ÝÉ’oRjøÿ=ÿïZ–4¿T:œË&S±ðTú¸\.§Ó¹ä#÷?W­«Tùcä¥ÑÀM“«_¶<õ9¾ñ²+þkrKO®›ð™¡#V“hQýf3†C%®Ä‹•\PÔº=œvsï¨$ÃEÝmðcÐ7 ·6OÕOõ55qd.…1 ’Äœ»#lÖŽ6TÚÒÇh¤ ¦_ãlsÇ÷ŽÔ=µ+²¹-»¡#¦ã¬$àÔe½xs¡–(#ÀÕtxta˜e]µø²&^Wƒì xÛ(pS勆3jÑ6\ý\ádÁ?[ò¶¸çB8p é´]ó4²ÙQeîW»W›–]%§ããuƒ6âBÕ˜ ²¿Ã™›g;tŒ‘KEÒáØ$s\À=—lES0컯´|tóp‡0qk—[âX¤ÊÈeBÆtzð¤òÂÅA $ëðŸ/óBšBj©L­iÏ>÷º'™eâœgu@YswìÐqöÎK-C×o2>ù üs4“òÑmüº+ŠŸ¼Ý¿S™Í 5èí,†}óWî?»}^÷$¯{›f‰¹+-ëìq¥9âă…aŸW,®OkQqf%uB£T$¾Fg-)GØí‚Û'åÒK^‡+‡¦°O%oÉ~Icñc×Mˆ@[ B‚•jK'“Y¦Ñßn+fD‡W¢n³P"è­™~x_C‹âY=LðÁ:#çð£Ä¦n`î¤:á!mÎÉI¹†7«ÏꮣQ?£yhÕIi6R-Í”º"âjÃ^³¤³Ûbõöâø‘Æ‡øL©«é”,PµÿW©°¤ ½¹¹¹¶¶ö­×²$lÏG>Þñê'ÿþñQh³Ïÿó'ž|ø/ÖV~σÏMë`å_ÿÙsêÅ›ëN%¢Ì}Ñ­­Ç¿úÝ} ÌÒèÑ1ÑÂ\knn8ú_¿(#¤r ‚ã@µ ÿºAJb4Ͷn¼íþü÷O´N½6¦ Âž>;¥ƒ•ÛûÈsÚÅ›ëØ7/æZymøÈž™Ò‰GñhjÙ–6ö‚å:“?´™ý=>!3‹µ83 À¢Î5&›ÍV:d³Yp¹\KFü¿©®*Uþ(9óµHªhŸ(‘~ûœu¢©¦¸!”?™@Ç3ÁÃÎÓ_eV`ãyóÈ™X'6â„bsL«ÞÅÖÐEAgO`ˆìÎ:Z/º24Sv²€Œä µYNÀØóÎ ¦«ìlŒe0‡Ó]ŠœÜæNN”Xg†÷gX_Œ«™äê&™Ú*šâœÁæRºPüÕQûgŸì<dNŒ˜?p ͱŒÓí)Èü½·¸Þççþ6zù:étwõ¸mõ¶–ðþ|èW}?ûŽ÷›{·íwn;à’90S#¥æŽIs”²Ú7½'Yçæh åÍtv ×DŽ(;1uZUvͲÑû.¿)5¦¥H˜®kÀY†nÒ<0¶ }±ÖÑÎ_ÒPÜ~¼–#”„ÁLËΉBpQ–ÅÄ iÚ]xJeÒͪO óë?¥õSÉôxÜÕxË£)^`Ý…_nw çÕÎ:y*Ýñ®~æ¢e ì;B†o?È=ú¿e­¼Â;C ìekäÝöÃÃÞE‡m«W×wkÛ8`2ÁÔ”É]Óâªcæ%¢¿I,÷GY·4áaòŠÉ½Zìö⥠ô~Bài%ï)œ[ç¼ ¥cv›åçí‘UúÈDð³Ï6fê%]Æ—/}~es ³´yÝUÃi‚":ÐôlŠ–=¡”€ éæñ¹¹æíâHöõ˜†>Ú?IyÜwÜæ8ãFE}´š¬w&ꉋCƒWGú.Ň‘¤¸`Š’ÅD\ûõæ´Á%œ°î÷ä£*A—1:{Ê3Žg´q±j“©Rà\6™³_*¿5Z–€j¼ï§ÃßÿÍÍÝ”-“ˆ\vÿÃýy' i <ÝÑW?ºé߯Òzë¾ýàÅ@*?ÔTã}?úNüÏÿì’¡,<´å‹ÿk£­ñ¾~iòcïZõuÄRlçŸ>üЇ{?|}æãW¾ñ¶ï>ö+ßXs@¥Ã_÷/eq™ÂªOþ×&@OOÃŽû7}i^üwà—Ÿüþ§?ºeå0D6¾ó[ß{‡ÿÝ_éü¡Íìï«e®ŸÇsvãÙ „2™Ì¢g·Tx“\UªüñÁÓêô™QÈ'c®;ZÏ(ÜÀºoc©­±øÌXoÙ;ô‰°sù=ÙË@® ;Ą̀¹wÂukïq¿)iÀê‹´¿•—,×^¼CiÕÜ+`›$µ^.s ›aºì,ë6ºŽ•?Ò¡íÀ…PW"Ò¾HB³>°%ÿÃ'Õš0õà_WX96ª¯ï1) èûÊ>{=†Qôš6¬µ–ŸÆúà öÎN0Þ´7,|,®š€ï<®–DKWŒV 9­æ¼·-2r¢hLS´3JÞõ²ŽÂ(©Ï©sËS¯¤[jùxŒj»Â75§ÈoöVËžZª,r†X‡`äuEA´­)¨ì<îºmý|ÅžÕ[kòÏ÷G~s¬uS0·Â?õøH§@*>aÞ ¶Ý)ïˆ{ `ÒLÅþ€æR0?½¿a£ ƒcä/^ä0 _¿\Ì€wIC VI×ð¨ë:äÁ׿iÀÈö€ÀYÉ4öè.¼«o®5î¸F°À-Md<õ÷\vòÇÛÂÖÊ–y ŒÀ™mõÊs{‡ì•$1Ò×d+»©\ªdz¸ÁáÀ/ZeÄ!Æ(ëÿF÷ˆ›Ê@™ö¸‹C„¥ÚóC†§ ´’ihR!ô{'&çÒà ÏÞ)çÚÚü§¯6LûÉR@Ð2v:\¢lÃ鯋 õsQö‰}±Òê€òD:4ŒÒ Öª ´ÔäzÎÓYK¼ú«;ÕõtÚªòÙÌÔÀíñZrAWÎpó[Ñl å~ü’_Íh·_>0Ê6ŒM?ÐÔ§Xœ‚X˜ÚŸŠÀÑȤ"µÌÅt­õK©‚Íï#mÀï$À=ßÞvÏ0ß¼ UÀ²¬T*uvã¹:¿©ƒ_j]¥Ê3Q^—5†§ç^QŸHrw¯=C“ËÀ0RàʾF—°m¯U¬ÚêË—¸‡žšê6 44 ð‘ˇ*ÝRw±¦—Îé@%ræ+¿ÑE‚¿á nëqÛ{zä®G:Ï]í4$›U¶Ñ\È³Žœ¿®¡ï9güøxÏus†K•ÀY×_ª>½S×é‹ÏÕ4 b¡L¦( {u '9Žš±cpɓւ¤+v „á4†c¸@;l€O«yÜÎàõ’ ÒÜ÷^Á(†\éΈEû$ÏG.˽:´‘.¥ ”ÂÓŠ W'©îÕöÄL’¢Éße%*»ƒ¾áö†â˜­ÁÁ*¦4[°µ6½{h±µg´kºgÙßäæ”JÏÓÃõïì¨Ì‘›Ô €Åâ knÁ^” '¯½ò~|>@½Ýzo·.•ñÁqæŸs¶ûцnueû’ ¬–梤ÚêËÖ6vd’n®Ó:|Z2C bóc_a!@ð®kÔJõž ŒQ¤ ©ì‰Þsùä_  •-óß–g^wqá¡üƒiì/®Õ$Fð¡ì“‡šÒ*{S÷„ªá” *k/&—a$ÜÜ_Uf|”!– ¸©ÑR’ Ô±¡R±ÈÓDÐë|ñ¨°oÚ ]É}xý\úï('¿ò|À¦K”mZqÔó“ /SÚ)LÇó„Æp´2'dw°’h1 °Æu«òÛ÷ã ^7æ³’âÈ:Z½¹~ð8…É©3òJŸº{ú=W$'˜_öÕcaÿî‡wÞùh/ByÓ‘DvÓÂz#Ÿ={x•*ogªšÌ…¢|ýÎ;¾Ë¼ï'+–ò4®òÇNwÏŠ‡~ø-7Ü|ž>Ï>ýdwÏŠ7Û¹J•·'£qW‡Wª¤À:Mo‡yxˆs4Kˆi%Ó›.MN°>ã\ß­^üí@tZc>½ánŸÓn£À,kú”jœŠmÀêj1¦÷fc=ɃÇ#ÂÉaçcF›aÙt»Œ¬È8Ó®åœR"-aºÎ°„©ž¶Š4×7öÙŸpL»®·Ð\7ï>4=F}ðÖ¼ÀÇNÓÄ$•Q¡ÃD”}¢,ÔE*ÞÙi•™(ÑNaEý7û¨{7—ïPñ­cÔdÑÕéç]šA½8a#(Œ °ŠUÿÖÕÊÕîÁçb¡¦ˆ½$0* ðÛWG9?4RŠ4`¦¦6O åHI!+WNÃ3Úòf³ZpL×,¯-ÉÔÏ·|pm?¸eFÇ0€œáj%ç9ò%LõÛÑ)ÝÎêí,±A•Êäñ1þ[O…Bn«·Ynª€gõq‰–Ušg´D–ÛÜ=³›Þ “'3Ô£/’'3ä/ï¼ÒüùVòD JðáPçRffùv›M¸gsâÇ/¡•­…§6ï½:ýwøž=äm~ðŠòž•¹›ëG“lB`fKß[y]M¬Ë3qzH {äùM³E²Þšl,³ã„ýç'}µœvES¼Ñ?3S‹It¨Î9¢Ž öåÒ®_“PF83BœC<–Ê0mêœR!ã£48Uˆ.äÓg¨Âz×füPŸiÓŽ8SÛ€çF†3#Sª]8à S˜ÛÔ[:lŠá+œÅpB’P‚l<¦×´Ò¦e$L•ÆéÈ›n‘7§‹ åw¾ácR¥Ê[œª&s¡0í²ïãÿûç­šMþwØ´q<ûô“çéÓݳ¢ÒíMu®Pø¯òvÀÇêÒ)›Ìt†¯õ.N–ò›Ù“Ü¡r¤ž-zð‚À™½R[}ùÁgœ'·áW®Èõ¶±?Ø×ý¾-ÀñÖtÙB…YB+îuc}ƒfß0öµ}Sþå@é’&𤥠J* ¢‰dIƒU™É"œf"*E´“—Ë8Ƽu8 Ê ¾Cºïf쑽x(pÆšòD‚xNç7ãY N¯—ÁìfíËÖMÎgºžKœŽ;OKÎá|`ëaáÆUJÄK`ÎOº!ˆá–~E´t0¸¨ÍZç}äxûÎ,™yŸe"Ó@–‰"¬†,ä§U«ÕºE@ÈÆj£-R5–'Å ƒ)´©åM· rH•5ʾ¡N•Ê‹5˜Aλ†žë;¿6àê^¼®+–€4U4r[Öä ¿~!éœ0Wb)FгöƎמé>”íº¦õU*Zg”6±'†ÚCGJáf';:¬yƒ“u—¯W‹cV©UM¦J•ÓlÚ¸n¡îñ{ì\á’éU©òÇ †Ï—”ùÍIáK·ŸåHƒÕZs)7:dE*ñå04ã"Ûû–‰ÛúTO”æ]ø×ž„¬tÑ¥E£û†ÝÛ7ž3ÈI¶>j%êt3.PÓ´ZŽ ¾FêæLÇú‚·,Zhîf¿p CXMÈÒÁÔ1MLg‰ûo3Êp^xJ¹88¸Üd§”Ы¥îZ®¥šŒîØR»Ä?„«¾®ïÐt† ´‡h§”K#s•OhO¤‘Î=7Ñ8"R·Fƃ˜ì(Ì€dCXå-ÒÐQJç´’‰â^ !dZ–…, 5pZ€×ܼjÝ[l)Ä1¯«˜Öœ..'Èñ[ӌϦÙEÀ Œ/ÜÔ‰~;XײÁ–@æù¾ˆ”d‹á9·:ÉdüÔܺÿذÑáSLj…`g#pFSÄhŠHkÚÉD–þ˜w¬Ìèeu}¸Ô]§]ÔY|v6›FÛG„/Ü™¬˜¹ÐõÍCT2C.Jg×SyÒ—¥£˜º÷êÔC/øY+ÛKpxس{Ã0Ó[#8¥Þ­— ç×¶g¿ÑJS÷ôY$›D{5sz³?Uw(åAz½™oÝ)‹ùb±(ËX ÍŠs«WÉHÎvqb Àá‡3MbÐå˦§\‹3h+0TsXŸM3ã°•Ò¢Í)ƒù…üóý$`°}/ÖÜpzœ^ì/F×oÔi´D¶qcÑÝmÚÉÆkG7tf¸ÚvÜEæö•—§ pi½bñÌwi_ûëÄ+ùîå€Õ¦2Ây&¨J•· UM¦J•ÿ ªÿUÞVŒÎ:ÞѺ„¯”F¹H†ŽåH¿»Ä`ФÛN 6ϦI B›jdsl"Õ—h3?ßZÙ202Žj|Rå =±ÝÄE•Eœ 'â¾VP :Eú]€9yº ÃjÄR"ð"¢5†¥;5UÛ÷œÇS—¬ëÑî¯ 3¸.:áö2½=$Æv?½ºÀÁO˜šŒ2Uº¡,Q†…#”6a¼ÎJ )ÑÝj'†£;ÚgØ)Ø _D)í>ÐËPï,‰†c¸ÜÐÂÛÜÞ{)V×Èœ,;êEƒéòLÔÙãp @Ù`Se—¨3%—í²›Ò¸‚Læ ¥2U(SȲ2u2É×zÚƒÀB6íTß±Luêd¦D¬l=CÔY5¼Òž¿½¸¹!þËíï츦gºšŽ€0 f5{;7rlTìŠàwm¼ Œ0©ð˜h1-R6€ÖvMó,§ÄîKU["¾6ƲÅäUíkþJm£‰ˆ+=R£ab‘qZ`Q öòÛJ[·Ôí3BÑçŸÊÀˆO}½=uKh{u¯nXMà§Œ@¡lÖDÀTº,‘õ‹ G“ö‹DZ! f/Íl¦àPùÑ—Ž'š1¢plE³ðûgUÈ©‹š£{r¥N©¦ $‚æ†H†Å5Šöª² ªˆdIäsª,)’$ËômÛÆŒWV9¬b’´ŽóEc²9%:Ⱥ‚¬u1™1}H1Ì7{¬dö`ÄáźÀ©M—6MÉ’¨ÕðyU+r2“•˜ŒÌŒg Œ>6cT˜S.m²™L[™xÙÁ¿MØÆÜ¥-¼ØpúDg§ß¤&2ÁØ4³ †^H$ÖPZ¤Ÿ<Ñð/- züˆeÍ|ð DçÝäžzÃi0iù‚™.j§È Tï¸ ü¥ÍRʼn+«’÷^>Â1R(©ß;H_¾`ÐtÄW {‡]a¡|ÉÊHgò ?Å]òcÛÔFô Àä}úu‹„iÐH$˜ä¨ª®:û‚eŸm®Z8I¼” úz]èõ 5D7É”öÍpºË“"mºÔDg´|{гÉîû|}«–œ\ I–cñ¸ÓÌŽ‹þ Q®ÍfdV/&Bö¥b²¢‰K ål83îIÁ´HQÃè)€’„7­·›"=?D[ÏÇFSW†â98³•Ê7Èjø¨x¶êZ ¯ÕðV€¼¼ÉÉLVf2ÈI{LªÖéæyñ¤Iqšt;D­†× äË»ØuŠ?DOU21d°““ªrž{ plG_3U#ݲ1ø­g\e‹õ•:‚að‡0¼¥q3³ AV û‚–Á»œYîÌVš3ÿyÅÌÜœùóM÷£O^:–ÉÀ½iM5¥‹VØG3Äbg¨µ5ÖäÉÅ Ö›ù{þÊÖÓnØL`2€A‡ô˜í¡qd~u´qhP¼fù8»VøÃ+&#Çj­œA¯5ä®új¡µ–ŽY×m,ãÚásÒŠ4OúRÃÞYË$2<‰£239“’"Q¢IF5Ž”‚ÑBÁF´ÌåÛÖ_n—¯a÷¦˜™J† 4,+»ÊÓ¯™>ëÆ¶®Çª+0gU«^Ï44åÓÞ2ã<¨rZÖÒÀ7½{ùy´ZQI å­{Bµq•ž§¯w @ÿ0FpÚ>º¬Òµ€_p»4©·‡„MKh ^Q ›´ð®“w)òD»wïîëëûgäMMMÍš5kþÙ£(òa¡ñ_äÃÎæ+›gI.¼7YÒ€…¶ÉKÍ&¬½5ÑH·4Díµ³§!^Ô¬ÖUŠ=ƒÑ_"PkççÜvtÕšè ¸9 ۺ߹Ý|± ÑÓ6š»;6¤XB:"ÂC"î2P#qIR ®>¯Ö>“³\ëÄe*m÷5¬Þºšxâ í‰ÉigO­®È’"K@.•€vIP07Ú¢ %)P@ËÐ$§õДGLJJB„Ȳ¤ŽU‘ÂñzW<›ÃÞqŒ‚qÍI%£%y %Fr&«vN¦Ú‚°a&… ÉçPOö¨v‘\d'E)#l\•šÐÎÃìÔXù¡¯&†§¶Ve öm¾E«Jz¿xAâåt©—JÀÎØÚ%x×ßä2Ïä:dEº?dŒ²¡,µÌï‰]±pöDÀ-†r€ªö R»aóê,MÞT8"¬³`eH•Õ 6¡Ñ.7N,ÏñÿÍò‰‹”LKe°dñã϶ë¥4ï)¹î– Ê?xü”¹ñ-KS¯dkVÛ•ñÈ“>φdÛîhÕòi]çíHÎùNÜÃh=ÙBÍ®sN‘ÈŠœZ5ÆS–Ñ’ –üE°$?š&Ãz–KÀ9ojEAÃ|÷+ðfœßÐdÔ8L ñ˜@R€fu,#eyªËÀ$6Õ%|¢9_Æø…dÿþt5¥ðcIÃln1D/зŸjÿÕ#:Ýy-¥WÚòW&Ä/å±´¥VÃ{˜d_ܾÂÕÛŸ  H‘=š¼Œ¹üòËÿÙ#ùGó /@QÌù‡QŒø/òGG‹þ”¾cDøÄÅÓ6»YÞŸ¨ãÄœŽåë¹t÷8vCå`UÉ,ñ'SáXXÔ¬Þ_‰~ÿüúyxð–d·¥‘\@Fâƒcj#)‰¢¨µR¹Ä@ò:Œc¡”$+ðøÛÐÒ¬1rRÇ2–’òC/šJ[R –`]ç>!*+Ò·×ÙYñÒÆãL$Ú2õD¯3uœ$--8†á¦âÜúÊ”H €Š¬¤È“Tü|‹$«n ·Ê€‰ ¦ dYA  LUAUAVqªbª 4R1U„©@ñ¼Žy¸dB¤Ë™”*˃„~(«D:TþrÂY¥K€K›ˆx4:@!„Ütr‰.úDtññq“K(Q©kXÆÆ00èR”êr”é¨ãð„©h‰#ºªbâœI¢YZ㩬HwGèÀo½2ùçCZ¯ÑßÖM_½6 züeÃM7j9þˆ·R—â<ÊD,[U’qØPÛ°ëõëÆ¥Ù ›}HMdäH¬±Œ'" MWꬦ‰¶ÀÊv[ºWf2æW´£¼soºdç»É}dÌ4¯2ÝwÎSŸ%§P9+J"¨:=¸‰"VðRa)a¡9m¶ÉR†Õgc)¶ C2Y8°êôJsMú[õâîãÀ€’rW2²’ÊIZ–Í+™§ºó0}AS,§hÒ0™dŒB¹t =3Qqq­¸ÒD¡ÁS Ç,Úå U줌€Ö´ÍµN‰²¬ÔO<3и«<¹Pœ³›ÎñwT¤ÈM^ÆÌ8ÔüÃ@SSSgggQÉùÇPŒø/ò!áÕj¾Aä´…ÓBŽ :øÍÎQBßZ¾¶guòPëwN%sÔéƒÕeòwè>v ¿Ä±°n6°ÊWMK£,‘Á´öìÀ(µÐ•+d¯Jd%„KÇç¼¾Sºa=<ßK]oKœ`òÎf¦‰¡'ŽO.ÙqPwþ²ÙmDYî Y,—ÕÏØÓMÕgTz±M’A’)‘(µë™áYǨ*©%AMä°‘ŒÁÆ‚²h„Á´Ã£K‚†TpLÁ)A¥œRˆ*¦ S1IÅŠ‚„„Ë*&« ¨ ‘%Y•;O‹š%,‘`vCy¶eOÈ[&¶H£÷HUTG@ðÕ "UQ‘Šª6ʱ8઒x#C Å„cc'bÙ]iÀ)æ.ÃÔ}Ð$+ÕXƒõ¶´œRS!‰ŽUNÏò|Š%öì#oØ0BøâuáÁ ¥Ñ‘;ÚC]~ ú‡ñ+dËÉrãÄ|™ ó¦T…ý˜Ü‹¥^ïÖ6iSߨØ{*î…TCkc…QË¡8¬ßäÚ>œX¼€«—NpTܩׇ:’#G‡OÒ×á[œï@’t襘 gÞ´**6œ¡*˜Ô ¨‘èê̱.z2UÂx!źÔ[á t¦ªVg²Ð3€í:ŒÖ.a0sê’Zy”++1ƒ1{k̶кržV%È©2ÆÇ»ßÌUV³éµ¦I3–uÍ׆ßn»fRfkIÞLC1Ç©<ÎEŠ|˜ù°ÇÉ<üðÃÿì!¼gÔÔÔ|½ÏÂûͰh)òGG 8©YXÍgrš^ŸîÑ£¶Z\تVlNªô|G¢}ÈŒiæs¤<€Wv`Måök•ýƒôSÛàÚ­…ë;VÚ($¤™‰hcª¶ÏI¢œ F¥~“LgTœ0»¼=~ßæø:Iä´r>W€Hkƒe;£ÖëôíÕ¡ý½ý›µÕºm†’ú_®¾¦6xëÒã3>˺Fsúˇf\/uµ˜ˆ'YÖˆ0 z|ˆr[Ó6½V’,J:‘ ¥í)ÿ·æB‚f €9Y §€‚ÓÇ$ …&04B€PHÅ |Qõ…¨aEÄ)*4€Θ6xE£ÐHä/Ã4z1•”hEÁûr:E+A;)EOˆ ¾-a‹ª4´éÍ8HNǰœøÆ Kñ™l*•!Ã’b$@EÒÀˆ@ŠèORµæ2ª½‚a˜‘• Z 0ÌBë+RÐ>nUø`˜Ã"ÀÑ.bQcAßj5¼•ŒÙ%ü­c:ÏaU=Fæ^ISFÍšPˆ¯ˆÊù(ôCIe éA~N ˆ±”kß”[¬9©’ oáNœZó é.†Îù/ê"ÂQƒw * nqbœræ?êâñ]гØ}GŽÇvµ‹áKÚM‰sŒŒcØïmFG nù\Ž–’á$>ÃiÕ]4˜ccò®m~÷¥Þñ›ëš-VšÃ¾KW¡­[îì€ö\ý±”Í¢Ö™Û¦Ž03º˜D§f„--wù¶õ—WráOÚç>á"E>ˆ|¨•Œ(£O~ò¶ükTø iÿ…ëÐÉ2èäS“×'ßOV9õjæ…Éæ¦7‹¦TŸÞÅìUf `Û3šÎ”®§Œpz4­ûÓúž¾,ghdFë³ÌwJ©ÍüÏiN[“eNoèŒÀ¶gDtÁƵP¤H‘†Žö0‡éÕÍâ=— qŒ<šq©ið²È©L­&ÌrטØ5j8§’yk/¾½ ýöK ³Q¥@Œ'ð·öbV6Ä.›p°Ó̧íóD„K8Ó  î¦0™H LŽÇé/ß^ÞѶèåŒ@;t“ÇÌwŽ3K7”e’òüÞm±"T5_¢µ¨íÝe¡õÅ%ý§'ü͸%½W¹§ÉR£qZZB‹¤³‚¬7AâéDªÜÅdâq)ãæÙh\õ87“R/±ª¾™k¨ˆ€àŠ$Ìì7OiÛ+‘úe/Öo0~õ°]Ÿp¦]¨mfR½}2g&<ª±Ô$®Š!dz -¨"¤1͘¨A*Oõtç.½ÔÖhè=Òo¤¨{ ¦LSâR«ËfI^€ey2ÅS`Iž<6f:ÐVÛ°1Ibœ©#òXŽR%m…IÝ3jÂpüH.·Ü,Er`0×=Ýc¿ªjâÖÅ­ìÕ«ÛxE;&:»ùÒ V]M†-š¸ëÕô^Ë©)§r‘l8¼åíbI³É7؆6-éš:¤áà”´V™%cÞYHbΔªV*ý#”·:ÝÆ¹”F×?J¯q'H†|­ÝquÂXËŽ-º¥äT‘ÒS|œE 23Í´Èçx‚3J|†VÅzçàiqW¸ä…÷_[|X†4jɡѡËJ¿îYèdœÖÑÇë3)ñBSëŒáJX7§znX‹Í¸nÓ%¬!ÆSÆìì¿ "E><|¨• R‘ ¼ßØi/ÎX¢ðúô‚g¬:wޫ霉™“˜cÑÉ·³Vz&~&>ò‘ýùÑ?¾O”L1â¿È‡$‹¥©vˆ×6Nn(D½çÛ æâv¾d9ÛÏiP­!Óp¬Ÿ¶Ö‚aìñ]ø?«Ô–iú£*ÇÂò…ê+;É£ø¢æ|ö^Œ3ÂVØ0ý”ÚO¸ 2’‚àrà…ÔÆ™,Üõóðƒ?ÀFÒæ2çød•¾ 1GYÚhŸx1¹<ü|¢lþ°ñ‰öë×—ÎbîŽð¦QïùŽi‘ÃnÕjÔh"“dÈ ’‘ÕƒFŠTW»²é”>=6N»<é!“jTÜ9“E#eµRê”i® HŒ uË >ÐÙõIøb¬[(­Ñ÷m×^³!*êžLŸ†™t¸ªI÷Ä([„²ä§ð¸¯iô@ïÇ®w¯®À«+`ý å±W563öÎq0¢¹5W y»Ê)òf#Ù! ¡„î¯íÖ;Öc¤æç»ìëÈnÊ\Öb—škjS‰neë˹®˜¦3¥ÇqD3„§ú OXШNåhÊ€c`§’D0Slc’ 'À'S„.  ÀFò‰’:=„.Õî€v¢:”ÔOÕ–¤Ç+»ÁŒó{еϭ(V,¤KJ“':-K@Uüâ ?³¶†—5Ï÷µ À¤’á‰(T¹„„q kÐçâ)mÁyXH'H{9¸2c/n|$YsUõÄ¿-ng)8 w™@$Z’ßêõŸ *iYŠ„doÆç¨žæ¶7’r-Ö…Æ5ÍÁÕìˆl?a3Ósr¥+RäÌÿ%“;tçò[ñ‡üh sîÂs!¤ªçñü¿Âl:ÿ{$IDï'7âbÄ‘<‹Ê Ošœ§+V^Ƥ¬LáŸ}B¥Mš¸MÊÞ˜ª\³ÿEdrØ·¡î½Ul©Ñ2¼¤æÛ‡-ë凞gÃ5 œ£ËÊÂ;!‡mJ]  3ƒ¯Å6r%s ÿì¥HM;:ˆ¦J!èÇð“”,ObžßK´–¾TÏó·W¤•Q Üø†Pê€ÓˆäLÛÇ«7yú¬ôäø5Ò[V¦‘SSnÖ̰z@Wš“¢7¬ý.ÆÒâr[6˜=Û©DEŠ|˜›’ —?Ø †?xáÈÏnýÊkÑ©\ŠôÛNoPãX}Óç9Þ[%3·í0ßñã5îÊòüOÅÒWßù«í£9UUU•(Ùò•»¶xðw·»€÷LtLmw…øŽ¯)¿öù°r¶B飿¼ÿøùmíï{æ“åïjnïŽÌ_±ôÛGOJ—ÿŸÅ<!„ÞGFªx<^4Èù0ྨw×^`ók5…RC¢ÝKv„%EE‡NÎoˆgðÔëºj¯Z].ÛmÖH’Ÿñ)§E×oÊ=±CÇç( \€`xš˜É 2Ãr‹¹Þ±8pŒøìV|Ü•-6ë‡x‚02¡¥xÊÈÉåÉß¼U3fpiçGZÂv.^qeÖê-Û÷œ}¨pDI8c|èDÝ-UÝS‚¡´¬ÙYÒãÃ\ºôXhfX‹(+©XQ¬]Ÿ´`™]iB•h­Ql­u2V‡B¼&æãíK‰ãV"Ñ-”¾–\z,]g‘4Á3ž Ö¯K‹},Ë6µÍìh[»vAºu€âÔiƒq¦v°Üýéó.½±´ëྸ{Y-ÇB¹q¢†ãëS]¥Ú>0m=9­\U’^¿ xïeÃ[3 €=×áýÞ¾%oŽ[6”‚1æî¿:ªJ”k7§5 Å8mªŒêÊùŽ`é/Úç÷*W.ȶ”Îî;Ç2R£›ïŸ–ÚqX.K\l†¤‰ ˆv˜#ýäáCË©ã^"”UéQpêjL¯Ä—MÕåQoz—¾y&J=ÎO9Š85A{©#-;.jV~t[ª‚ÎtްqG¥atòÈ„ÇÈkÊÅál‰Ž@(¡{pWݳÇ<­ïÿfícz³ä5J-I“Eç ^M8øÜ`É %\"8ÂkÛF\ÓV î\aŒŒøñ©gûÌ`¾7ï£[\‘"ÿæ®d#4 m¨ÚtÛGë„Ç&â{¿Ð8ïÖ{n¿dùüÆ•_Ù›A™ãøüú›Ùl«^÷¹‡ÚÓ »÷ ÍÿÆç/]wÞ²y çÝúÛ㙂F_úÖ• K,f³gáµ?ØR²SüôwoùØ#ãc¿½¼¡²²ùº¿ú•Ü¡;[æçM4³Ô•ýÛÉe±XlîúÍ÷9w>ÈçÕGêœ~€ZüÓ#Ý=ƒÇîøýkßrÉçþ:&©ˆ°.¿úêeV|®íZƒwW~®?s›œ£ Éš< Ì¡5YTþWcž²ÿ‹yŽy¿ØdŠùPˆ!-„³¦¨H6Y&ÏdõùÌTÀq¨k[Pß30ÓwëéízÀ`Q“àôxc©l–Ÿ%üÏa•·,î8xA&Gp,¬[½2ív&ÉrZPœ6¶„HvFËOdF&(“NVN! :©…ÈÑV>6`ûÓž²«_¹tj½)‹N~£·*TÑ4²òJ¨~û¯öÁŽßvÖÝZw"‡Ö™Hsùèx®Å÷…âùSk¦’I¥hQr„ÑqAÝÈ›',(%rqL£iðȇ&Jf”§1ÞIV²mët,&´§KŸ_z0Rá Ûý ¯ùþKö›û4©B¦éU®L:WZ"iŽUÞ9&ÄG"§š%bIRJbŽš —}¤´+ˆï™0n®/ì…וöïôy ¿y¬3Åa–‘XFªó&KÝÄFoü£uÿ;äøñv÷‚yFÒl gŒ‹m9’Õ‚œýÙÀ°¯->`Ã&ÃÙ¾Š—V‡÷¦Æ«Ú¹ù!Ű:€`F©Ü”ÃXhŒwiÍ̉•\[?dJEdrP´'cÊïFÏ{Ú·ô`¸~$åŠäÎòþp²¹L½a¬íã•çWéËÊíœ]Ô®ùáß*S²K K4‡ŸôK¬ròC #Ï3Ï,ö¨{s]è3k{æñ»»Ê.IÇÈNJÆÈR‹º´ªÊZ¢ÑÄ1ÿS}Þ”v%"2 tëüÑ}úPb2ßÆz|æ²Ï²tm£îçŽT>ð޽ÁY±è¡[ú]úËåÒäß2c²#½'6î«4e}¡x–ŸC’Gâ3 N‰‰ª5±´PgIïîr‘éqM:¬ÕH˜†:½0x®–Zoi»Ø~\Oð‡#¥õ/Þë«ÝÞîþÄŠ¤ÉƒB$Ÿ€J{Æ.4¢%x=&ð˜áúuÄø8€LžzIÅzü}ÜòcÜ’”vYµñmoCsƒÕÃŒ6,ÉWëR{† >f‹•‡f¿“FxÓï5Z«¼ýdžue$ÿÕ‹B—7'EêÕѪ¶G1ÄUK•ºto³}Ž‘u•góHgÑ¡—'Ì}¹ŠÝ™f‘\J·ÓïSíN¬`iÑsj$1MYUÛÂ'Â\ 3n°[,‡nö¹ÄyÜÅ$9Ãápécý‹ÿÒ³x¯¯v8îgŒ3z´³Ø G-=2õâÓošw •ÒÂå"\Òoû–lE½þ‚ìp®-(‘æ4ññük+ÿ¦Í}ç…MÆøgÎï­tƬq?ÈJ–Àâ´0À*Å@F%£ˆ»ÛËDvtä 7—wYµñÖ!ýšy‰JglEyü郎S†µ±,™%nX‹¦æåËJÌñqï½»ô[Q8Ï]ß2q–…-RäÃÀÜ•Œ°ÿSÍ·ËVºþ‡ék~úã-v@c½äË××2–kÿóËÒÖïÜ~ž$m«¾xÏeòËlËa¾øö«+)ªüÊ/m̽ôd¹ö‡ÿ½ð¾»6•08SºåÎ-;ôèšÖà™Æ1kÝ$NãÙÑŽöÁˆˆsÞù sò³’ÉûƒMÖ”^¸¥,vð€_Tóg&«™£?»÷oåßy³§ëĉ=OÝw±‹PBÂøÛ=˾ûÔßþ¶ý©O¤úùûdN¶†ªªˆ]ðéÿy½««»ýé/ž½ëîía¬tËÞãz{BRUUMþË›šÍ×Ïcæ:ʹLgÊ\B‚g÷Â{žÜ¾ý­Ç®ù¯o¿è—À|Ñÿ¼üŸK¸–{¶ï}çÉO9ïÖ{{7>°«³wׯ6÷ýðãßÛ›PB‚Gç‚ûžÛµóÕ.Õ"$޽ú¦ùË/v¶¾öæç¿xÓ^køîÛmG_ºUxè;ö ꬓeVÿðëž›ÿ´ÿÁ=^éÄN®Œ’Ü{¦NgŽö\ òþQ2p2âÿŸ=Š"Eþ¾Xi±?®Ž;BS ¼ÝNN;P²¦TM&Q½#wd¤` Øqȸ£—¼~C ‹;>«¿†-­ó­n̽Ýj€-ç«»Žâ™ìäçb.›•”¬Hf£©€Z™¿Ø% 'rb E"î|GÉÑwn[P53Ђe¤ ç#ºÁ sV _mh[¶9Ò¸ÆuôUwÇ^’ÏRÖ’î W94’¬Ì*c@•%Y–q‚’%YÑZ–”ŸˆpYb2~›8ÚÔ@dçÈj¨Õð ¦á KÚ¯(ëŒ&Pœ2*Úý%~j™Ë€Çšë÷M EæÑáÒe‹¸ÝíäÑvôû'ÔêrÌ]‚ÿ`|ó•žA«6þÖ;¨¥ZΡ›Œ’_èë‰q¡´\väœ>ˆ ¦§M)ë²3ñZ«-œüÙMvCz"gÌ0KGx•= Wú#X0Œ@ׯiÏñU¼¤6³KmÈ(ô&ý¡*jªIE`Àâꪲ”`g¥½üB‡…|Ô†/Õ–;z.,m¿¢¬óBKúRú~Ï#Çæo;ÑðÎ@åPØ–è ÞÝ@†|Ò}#¥IÍùËÒS%)&3zÝ×jÆSN¸F·Îiì?þ?ÏÙ39"›¢âÛÇ쯶[¡o,ß¶¤b4ߎÝ×:ao¤¤dQp×Â·ÍÆD·îuZpEŒÕµàc•ÝVm|ÀoÀs˜y¨qÇZá‘·\°g¸z­uÒµ,'3]±òÇú?Ûßö­µG6”Ž"Y¹ê¼™ù»‹ù2w%C-ºÿ­£­ÇzG'Æöüê¦j€0” Æ)6–6×: „(g­9ãŠ@<¦Â×+aòréѸb¨?Ýöéeó6}¯S’9uZƒgbÖºhÁ×ú÷Š·ÿýÂZgÅÊ›¾ÿúܨ©êœ~šzÓ9ô §ÅüC!œÆ²c݃c\M BU¦óoÝê%Jx/¼mmîõçz²H=YEÅ,‹.ÞPkÒ àª/ýÂ¥ÆÎ<æºèÆšžÇÞ Hª;ø§wØË®©cæ8È9Ngê\@cßôÉ‹<¤’e«×X|‡ÇøSeRU”íxò ióŸ\f ÓâOݱYzã‰ãÆ|Á§®(§@UAU–·ß2ß@P¥›¯®Ã4ë?sY-‡ië.ÚZ<4’=Ãd ²jêØÀÙ:}´gþ)ôð~ ñ_äC†aÀ“ÃKÓ¶Y#’ÞCO½âqÈ}>Í’²@OBcì3­Ì­ëÒ«B¢¤HüÙ ÇÂÚEêcÓî |:©WWŽu‡´ŒÒë*'}ÕN„™ï>ç0RJi)fKgí…eÄ [|¯÷8þr¤jž#Za Å]å#«®’Xk*‘E2«u(09[â,0`X<>&êœ,-./‰r#„ýý¹ñ›ä*ÎRýª,¿~¿¶®ëºúnx™½à'Öµ¸Ò3™Œ™`5|FÕV¸ˆ®q%žÖ|éø²JéÁ̵WzË `=¶mX¤ÉSñ÷ÀRÂùeýÃn8é`Ö?L+Ãk¾ÿ¢ýºuI4L¿w5—òK´Þ;¸¿ÊÉw±­%Üì%VßïÛxöHŸxho…‘“?ÑðšR~$S¦àïÉêÜ)άQ\‘*ƒBš¸ÿØzŽ„*+™J¥}©£Õ×– åEþ±ãêæ‚ÚçéÂ%A$Ë;Žš{ãÜB÷X{?f²2G“õ ÍÃ0Øì¸¹áè<×h0¦}µÍôù‹GNŸu‘"Bæ®d0Êäp:V5Å\r*õ ¦]¼/X¸Gˆ½qÎc¡@ŽôøüvRôƹR ¤¥Ìæ¼áÏGºòt÷ù_üh 1­Á|ó§oDg¯Kš—}ú¿_88è}ö“âo>ÿ­}sqEꜽË`zŒ¾” $5kqT0#PM·ßÿÅҽ߿vMËÂË>ÿ“IUUDèœúBü:¦w³é±˜XØ®#¤ªr¬õwÞ¼yÉò¥ V®ýÈ_|™´ ¨˜}Ýó†ŸxÕ'Döýy¿ùò++É9ŽQãt¦Î¬I‹å_â$!ó¢Rh©`·㾌±Ò¢É×X+LÙ@TPUDè:l²MBoÏ¿E8E’z‡Ï_f4ª ¨ê&{j) ­Þž¹ÓYG{晢BXÐû„bÄ‘FZ´ÖºW[ÃS 2>~škYŽU1‚¥‡Vj²ÿ÷vóúÊÜ¢&”Ì9„¨Î ‰$§9F¾hixo¿þØ€­®…øÔèŽ _ŽfÉù-D1¹³Ë›ÎV^Ó1nE¹÷Ê‘å™2M:%Óý|Å©ŠYž %¸cCŽçŽT~÷ÍÚá,ig„J{a gŠ,¿4Ì9¹#o/ñ¿m&ñ±‰èÙG«$B ©ÃQ•e‘±Õ8£‘Œ&¿n2úÛ:Õ 2†ÉÙÕÔT^=`¹û²§•YJhñøn°¾|;÷" ØÞçÁlÇlÁ˜T‰_i}‰ 2FÐ9‰y9¶x‰}´Ì€ûÑ}ŸÅC¶î™Ãvè“HUCI=¬[*oÛ=© ÷eæÃåŽCþ¸þåþŠ¥Ž\gÜñTO|uÑ‹«:ìÚØ_Û–V‡×yûÃò±#:Ò ?ÓtF3®GÇB—;­vöOF½û½“@þ[œc‘?2ÓYÃíå”@ÁÌœ§ÃR‚]—¬°†ÖT}ï¢ñz/Þl$²ä;½ö¯¿ØxÏ+U n"ÍÓùÕI&èhaãCd&¾,ÝÖ1L@ÖZ:Ï4Ø\Â?pÌŽcØ¿®8¶°&€aÕªã`ëßp7ä{\;þRÔÆúZ“X®ÍÅ„ñ¾c¸ªÑ*7MÀ@À„aà0Mš9Fþø¦àKÝú‘´&D¸*®Z~XmÖÂUîC ¦á|†‰`Œùáߜ׬sÊEŠ|Hx×q2gB;ÿæ-šm÷>°?*ËÑÜû"~ñGç³€Òo~ÿ—{#²Ý÷?÷½Á]r]#ì‚[oÐ=÷õ½6œU ‘žÝ¯ÏŒ‘ÄõN6=8–šñfÖºÙþW^:èË*@émv=•(xNÞ…wš¦d„á×ÿ6j^²Ä‰«j!ê -7}÷w/:´óák…Gî¾ÿ@ZEHŽ Mdó»m>Пd=z"¯%RÕ\×_ý…ÿ¢Ÿ¾¾kßáÝ;½¹Dªªª`>ïæþ'^>úæc­®«¶”s¢:wï²É¹L›BhRဪªªŠëÝlr0Ìç/óÁ„Öi$T„›ÒÛôv¦JÄ“Jå “U€:EŽäWæÌÎ>ÚsͶH‘"ÿ@Räïß’ 3\Ë€Óªn³Œhš­?ìÖÖr×\ÑX¦Æü Ÿëœ_œÈŸãÁ1òÇ×û‚Ú¬È.žݱsŸ‹ñ©_RèòQ#T™Slí1þÇ“nÀ`yE–cd_JßhŽÖÀ`@4 ×<»¯ô«ÏÔýiOÙî X]úþ–ŽrVœHœ–A!³7+d¤[i©#ÖoQîtß›W9ãªÈ¢‚“À$F’Œ‹¥Å%ñwúíÀ’|†‡òÜ 4jjÏÒHk–I+JÖê2'»ç—>³¶ç’Rß;ÄÓûí¼Ròµ‡ 6"µe­ØÐî Ô\šÙë°Ä €Ã†Å¹ãÌ4k,%¬,¼ÐY '– †11GćÅlÏ«Ãó^ö¹ÇrTX š­‘[æ›ç,˜D^ë(¹©%Â2"KòLìõv·”S’ô³ñß¾åÝqØ8àケ‰p9™Ùîk9õ^íê¬×€Ó t(e€¡¾ ?ݹmæ÷ù”ôNPáì»ðÚe²7f[eóW:¢ëÇ®\:ø™%¾UÎÌ…-ñѰvw§ù+)`›çéyGùMÁ˜Çiëbý£Ì®ØüÛö¯3éäïß8±ŠøÃî=Î ¯€*'xÔF"ÁÛ{0îZ(RZ°¦\:ð¼ýºR&sIMïH†ÌH°c¨²LŸ*7|&ÛÆL«ë§)I£sOí<³×ŽÚGËÀ± ‡j¹¡S‚1懯8¿~qÀažSZ£"E> ¼gJÓ¯ùþ÷V½pSÝ^{ã ÷<ñƒu ¨²«/‹Ýsž×^}ͳUßùó·—²À.ùÆs¿ÙØñëJ­fKÙòþdgH™ùEWßø¥ C_¨³š½[›Ô9³Õ•ã‡üôye6³¹ä¼û’ýŸ{W°pnÌ5w E’e‘OúºÞüÍ×>ó“Ày_¾m]ø©üÐö7Z}YYÕp& Gb€T@™w~ùûÃQIŽ|äç»Ù—VSê©*ª’W¥‡Ã‘Þûè+>±Ð—aé+¼çÇme×oò¾›D^s›LÉœMÉcpª*B*]Õùš×ö§C1YŠýÃoÇÏ¿ª™Yñôv&³‡œøf,ÆÙ˜ôèxJ™>¶¹u:e´gÉ]vÚïŸE1â¿È‡„hŽ\k âÓ¼¼Ú²6+9‹AÒjD»Ú ¿xËlð¶®E 26aDî&`!›Â ßô,#]´0ðl«#Yȇgø?‚yÉñie©Ážz¶}åˆa`œþÞuã•v!™Ó´öûº£}ä÷_°wµ¦GxCÎ`üÑÕ=ŸÝØÕ²á•A»1=8aƒ "”Ð!‚íõcQJ›ì#5·Ûé FÆ\5kðî~Æ6Ðq¦ÑbŠ¨ÈŠBé U@Š”¥íNST%t,É[H!‘¦í¹^¯;Š-a– ƒQúá½ú«×Ÿ1v¨©2'ÇÃrÄï "מGÜñ(õóÇr=C4Wj_šìv™†òÅ~ôg´n'‚Z§a¦’»!eg„¶aשƒeŽ¢f›&Yƒ<2²8œÓlqùþmqûÇ´UX&JêL°€ÐÛmίü¥¼µM8Ñf+~ïu¡5‘QÂýè‰ÒçŽ:ïx¢ú‘£Í¿í[tÈG.fU±p{gia™;Ö¶À ÑVE¼§´H“¿cOgœFH5Rщ¬áLkr:zî™~]Þ6Yž|`¯suS¬ÊX?âêÕþû®öÝrA°Ì)ìÖ6>–;ÿûc7!UùéK,ÏÑÏ4ýa•cˆcdIï®4Fÿøvɱ[MI²—g‘¬†ŒÕ,}6æï,]¿×.û~~lÁ`Ô´íDƒ‘O©¾Á 3v*½„JÐÖ3j˜—!tY7øú·==V瞦3¼æÛ_ß2‘«)R¤Hž¹ÏB7³õ´#‡ÙU¿ê:<å=¦›ÿ©w}êÁÓºp]ü½_ßõ_3®RÞ-ßzrË·¦]sNoªüØC‡>öÐÉ·ÞûÛÛÎ\÷/´~cNs™Bþ™þ¹Ë©*±õëk–|HSùÂ5×ÿꉮsás†T9qì/_ûÚ¾”гÞ7ßóµ…´ÚŠÈ’‹.ˆÿ÷Õ‹Ž…‰òÍ_ùÉí-´:Y…jüô¿­ýÒ7®¼Øl3˜ª—,vÑùèæ_·n{®î;œØœø.¦3Å»ìT„½ªª…òM IóÎ.½ã—w~ÿ›ŸßðËë/úò¯ï\Ê!~jE€íœjJg³OVSvé'Ï{å?V/ºƒ]ôÍwiaeй;2Ú³,BhîË÷÷'ñ_t0+òf(joë.«Èœˆ™Áiðñîm˜!fyŠ\æV_ÜcV²™M%â8o©„XŒ+µ$ûæÔ†OÍ Ã2ÒæÆðë=žMóF{ûÒÍâÎÃäÖ5¡ªH‘ai]ì™Ãv—Aªr Ûgì]©^]h¿H_R½j%9…yÍ늕7š'“GFØÍu¡ßtäœ]Ï”býà°[ãñd.ÇÆ«šžJ£°rû£©ªEáªæY,ddRGˆ)Cn<¤-÷Ò¡ÕµÁgz>s~o™>5‘1ظQ£0¸@Wv$ÕÜôt§©'w[î¾l¦O‘¬e5É‚Ï[GtŽ)wÝÕ2ýj毇ÜOõêãC>\«—44¸à©mêç®À6,”Ð $ –žÝðµ©qôÑ5®¨§š}þe}if¿d¦8û:ýh“}fPJV ú–c& Ç9ʤ~ò‘aŠ*!û††±@HS]–󸇆3ÎãIÛâÕFKë´Ý`†±˜>&XŽ%kËt²“1&„#[Q«™Ž Óý à(C£3y›m³Îc:'Ü«Ì“ŽŽ¯µ{¾zß>ÝÅ ªJ䪠„œ¾³ûæÍí¡õ¬h2wìË­¹TÒ[+*b·ØüÚíÝ;hèOàò/^»t™hÉо`ÙâÚd—@ÿ@_[ióýúxÝb[vuùäì6¿yAiŒÐ8g³ âX&áœh;4`‡°¾A:z ‡­b”á5ÿñ¤ûîKƒES¤È Þ˃&ÿÏ‘wÇ:w9Mí^:þ…Ój«*jÞ×^~ nÿõK·OýXÍ©ÛÚ»îýÔ7f­¢‚kó7ŸØÊÁ¶8P0¢™D<Þ_>2ÑèwöSÕnaíüT©du±I¯ Új þ÷ñFšU5Û 6® íÒªà5Køšù†ìD¤€‰M>˜NêçÑ}G‚Ë·dMÓöׄ˜Î°.€–“˜"%I‡Ýtpâ@ÀäÔ'JšÈJNnpSz ÝÜ„÷ñBûϼíhö SýÊNuŠ#¹ösVúìe°mq›CåXdÑædŽk¬Ñ\µyø®ß°%þÚÕŽQ¸v+éyqùS°´¸¢4þÎ`‰±ÑFPýªÑ­®6:í7HõLuÚ+õÒpVsCSø Ï¼ÌP³C—èY–,ÐlÛ±LD*’y5—TêíYŸbµ†zÃp¥3—dE:+1‰ e\ÒA„>b©…M”¢è0¦ÚdBà=Ä5$“gÏa}:v‡óÉ·™­ÕEqlØ ~Ê0r:"­M55xǶ!y­~ñμ/;{©@¤SœWºeÍX︩?n ¼ºf]*ZÑñüxÃE> 2úÎCKb{ÊáÕJ[ë»'ŸÔ7º‰•-•ò&Òi>àï7 „ؽ#5UFå¢òXP#T—¨ýÃÊÑãhÑ< ^=hùÒÆhQÆ)r:E%ów{f?%´þÝUDé¶Ç‹,ûÚJÓ»2çéüßäý£d h)òÁ¦Ý_RkJ×Zb‡ƒÞjäÓùw{ÖÖ¨›%ÏÒkíž*gVÍ)€ðhLªªÈðˆñ÷µ%µ…@ †ŸÚÂv…ðüWë*‡ôË´¿|‘ƒ)û[·E;§4Œ7ÞáÇ0ì¡çY·›×$h´ä¾ ³jbÇaS<­YXŸ d$ºÖ”ž:*­†¿¼´ã™þF¤ yÎÑq£“ “Ñã2>ÂoôŽ€Õbßø,GyH ;¶êƒÈqà•TÕ¢¤·Jb .p˜"JmÆGÉJƒ¼°Åÿ§=e[ë ó…íx<§V³}VÖ÷bj¡U’ÃÁ(=ž ÎäW–RìÇ·óë.`6ý£ðûgɯÞûs{‹‘FÇ•R~ì#6‹Û£/s«-¾‚k4¢õZÓ³6˜¨Þ€Y²ZÛÂb66¡qâÄàêúi~hÇlû†Mƒi²Ê eõ0ìé·Ï/¯qDûBÖ‡Í[掵”ø–—ø·õ–»-C;Ûm»2WTL|¬¹r ó·à¼®¬ý"ûq-ÁK ,%Ø ±I‹¿©¸Õ»7§09EË#&ôÝ’÷°TuÙç…9œ7A" ØmxhIÞÊH#)W™þ4Ï‘Óè Üt,Ÿ®-”Ô=ÑmÿÞEÇÏ^E¤µñuç_ÿÄxÕP€YÓò³ÝWßJ:S~YFZP2LD^—·ÞœÛaiÝn¼ db¿¯ä¼ˆÎ ¾ÁØ„TØkQ˜jb Þ!ŠD(˜¥ô«#IW0­Y`Í÷įX¾û•æMÕ‰Çߤ®½0Wâ@½(ÕU‘¯tV¹…Böð"EŠLçï¬dfz ½¿ø;+™BàÊ»êB¾ò¥+ÿý°aã×X¥Gê»Ê¼UT2§ó¾R2EŠ|€ÉŠô³ýÎ;Wtde-`à± »Û ë’c9w‹6¬=͵ì¹C•N\Pré'w[®Ù¢K{†ˆ —͹q:,«"æ“—O$Èâ€ÐzMpŸ¯ìÕY’ Ü~cávPˆFp«&–5¥~ÕZæâ0Ã0ðgŒÝL{‘–䯪îz²»)ÿ½÷ŽŽë¸ÿïëe{_ì `Q‰F°w‘T¡HQ*–%Ù’l¹Çvœî4—Ø¿ÄNüãĽÉU²­.Q¤(‰’Ø{HôÞ·÷òúüþX°AЖmy?;3ofî¼]ì»sçÞ«Å¢jS+b|Sç£{N²Í½Ï­êõú‘Ñ9"ÿ^$å©È[ÆñAï¾gÒUK£ÕMPðI#£¤85IRwšÙK'õémŒɚ캤¬Ád–(ç[¹Ó/§—"„ýïËÊ•çÊ ›Ãvï'ïÙ7nM¦í–Bá¶êžÃ>w¬u{en™g ôûúV¬_úr7±¤N¹xïånÝ·Ïîó¢åñ;H›.g…]çù® >slÚ”¨¾ ã/ÏZ1¯2©]¨tÇ`(h±°2ðŒØR:Y팄íOœn^îŽÙ)d.?Ã?±¬×qa©9BØêr«ä®â!wIýÓñP»®®I0©að[=†‰aŵyïs8hxU™ƒ“ÆÛkR<{)gÛãè° Ã°Õ5ù/¿?/+J:‹¨R{ÙPJHª:ÓŤ$ãKÝ Ç«-ʖƘ¿äÒ³õX”/³^R!xZlöNT9"ÿu´ASAáMÊó ¿4Žê #>>4–w½Z^¯‹Ôê†`X4lwôŸ •n­œýìnÆ"—·ò‘LÍø#PqF#h é4ëÃx3C’ ®±¸ŠÄ¬"åIR%+MoðÅ$ÇÞ>t£? /wÔÖÙs޹̉¥œ–z¼wýbÏæà‘/—üœå aætçSÍ7„Žâ˜“h¤ßþµü 9Ƶð“zËã"uÃy%Ã76ž ÈõS†ŠNÒ–q§>á#ÇzöQ±±MÈû†Øj^Ü~ƒæé ö9`ž0EŠùóÕd`ýúõpøà[艼38Öw,ïý=?ùÉOþP£WWWÞcŠÿEÞ­„S†P޾£¹ïb‰ŽSJLj(ÎŽŠ†E†;ßz|€aw/¼X²¢I3W4)gÍ6öL¬ìæh24†äi_šÙ„bÌÛ½äWé~kÄ?1j}ëhdój‰FrÜè8eÛ²ô+qï2çÔHÞ»Ø>·u…§Å«°ˆ@ ž¬­ŒËçç…Ö:>05‘Ï/4®ÌòÁ–µF»Çy졤ZmÜ4ù s:” U9 f›XäÊuŒJKØ&×ô…ÂÃªŽ˜Ìè'Ç|ô+ÑåÛm—ÜTÎtPÛÉ/>":íšw›ÏƒšæBÕ«ƒ€Á÷ÁyË_šbÞï8°W}¿“CïY+ÿæ^U†ÐX˜Ð +Pý“¦_žµV™Õ["Õ¥YÊ]“ˤcŠN!±fጫž}ö¨IÌ›¯e9—¡Ú¢ÞÚñ{f«¦W¢ËKr"ýz§w‰1µ¦*¼k¨¢;ë§'“wØg]ÈùZýp<‘ªéÉ/7áR#qrÉC!o$g.¤$â0AàÒ9ÂQd«Åz€ÐDBA†¡ Ç˜Ž[™„DRžg9Š ’bP ¯bŠ( *ùòU„á¬+"2w4ö.ð&fóXï y\¡v oiG~ýß`/|wdÛd¾Ýv4ä:PмSôZ¥¥¬\Éýêœ7™§BSÔ¿Vý˜LЊ§!á½/+@:!'ÇÚºÝ-™Ó"+}£üÎ}•þà†Lk00‚ï5oª‡{7SÇ)2Öš ¬_¿¾¡¡á=‹"¿/î¼óÎ?àè/½ô\P˜‹ÿEÞÅrß¹è’' 6Þ̸̬X8#T }¬$.ÐwÍ|’K˜J;ÏåÜ6¶Ä.$ÍVæÊ ‰kYmnM¦sDÿ™mž7W }#¶¨·O1¢KÕ24vN­vð{³Í´4c"*ÍQs{QOðõSq†>?issf—9óéûè¡Nʸã:?Ê›•¿ùÌÈŽ½X^ŠÆ»PÕJìÔòšØ+¯Yë Ïõ±œñŸßpû¶ÞcÓ¼Z¾Åv^“Ä¿È7UªŸzð‚6…€HL?ì¾:Ø[+;h!Ó¸XûÁðhëTÚº8‘m¬Ð~̨GÐ9N5xå}í®Î·¶:ó…Û†xVf8Þèª Ç¢qºÄ †ñxàì¨á‰#ÆÕò#Ä;j"›–͹’ÄL óبiUEjqyî¯ëùêáEí`Jv¶nðLòB^GäWûÆ×Á¤w½9ÅQB«-2rL'W½dxÓ°µ¾ ›¤»ÆnK•mv$TE€TJ¾8Q Ç0`Lfk{?¶©¡OðÉÃê+iR2C%‚N3¦Ë{Ëæ‰lŸ‘ãÄ[]X½S[ß,½göÃsMœÔZ}vjØA¾6¤»å[ûWýµrÂLõãüƒ£¦ÆZÐEÇ·°Ä‘ çKMOjîÚ$çÌ÷•}ÎÕÔX“;pj´~Sù žÁ)Óž6 ÕeÐÖxrûû©OÔ¥àë»Ì‹Jˆ{7Õ˜"E®Á%MæàÁƒýý ‹}ù'Ŭ}ñ+±Z­ðg,~¢øï¬ø…q:;;/N h)ò®d(d@êp””hð—ˆoEKôÜ6±Ÿ˜´>¾jFÒ•æÖÖ4ö½Ã6A‘»8û¡wKéà´–rŽÈs˜à§SÀîÄr7•NéW]1V:#&ÛFòô¬r“8•){å5‚9t)ñQ°ížh(Ó§—: J4M/Äh!ãOE•²0¸Û•òó1ÃÛ½dM^× Ü°T¸ï–é8Èg:ˆ{WHT³y88ùëÔ©fü¥p»±äë†OÝYÖWY"ž4¯ùF€Ú°‹,}¬±¿_·ôéóMå¦l“{¬ŠMOdî¬)*3Ö0\«ðT»µ’om‰ø=©çyŽÐ®ŽÀÛ'ô‹ÜÄ_Ü]Tcй6ÓšLáIîì;›ßOüè»pa_üjÅ/ŠÿΊ_—¦´H‘?]~xÆó™5×—¸h)/³›ÈaŒí‚NÎß)¹³a¶õIÉ¿ŽîäYi‘3 ×·¼*t*SºìZƒò¤æH€|ªßþÈÊKÎåæàíåÌ«DmÿX›QJ=‘qÙUÐdp––iQªAGê8åâ%2Æ1õœœQG¦îj` ÙE>tK„eù/ñ±µÂPH·¸r¡‹3 ™å9%3Z¿ºáè¾Þ“á5Û+Ìcírõzú¤ËšóŒæéiW™³½F¨«ËŽjÞª\¨ê3Çôi8û£xØ —–Qáxx«Ý:Øêï@STJÁ·<Ýy'˜lžœŠáo²76Sw7e6-»¤H”˜YÞÀ Ä”Ž!â;φëÚºFy0ÀtL°ëêó÷lLNèvç&BòæÕsI…BZV ûÆG÷­ \žž¥€Ë˜®²ÚÄhfiãDž°¼>áÇp¸Å3x¹OÔ‰déFk¿•I”²Á“™š,ÅœŒÖ-·õ°˜UM`3ÈêöaQ›mFãÁLJ1Éb¥ãWNP5¸v¿*Ü·<9’taÖä“€ŽÒÖœ@ePÙd† ÑÁ$îÔ+U%Â=îÞ¿uœã‚]rÌ&fÍò”1k-‘9}…A¿·¿gùùª¥Öú`ßÒ®b˜èʯë‘+wue㉠š ÕÝþÕÈ–-“´I˹¹rèl ôç­Ë=ñs`?ðÞàÊIÌ@Øöt·ã¾êàç¶ \Lés`”&h¢µ:ŠÑϵéþåž9)R¤È•Lk2ýýý<ôh:=wLÆ?in¿óÞ/=;ÿ³lQü¢øï¬ø…q/?¸Xôø/ò®ä@wéÖò„Ã8ããƒa˜ž ‰ÂѲHÆô½öê¶ô9f ;–k)'¢…¬)Ë*BO­^¦-”4!”xÙ©yÆEøÜG£w ™?wË ûjƒm0¬_ôÊÁî;oINÐÞ& ­Ñ:L4¡ìžãÖ‹ÕYÜÔO×¹¤€[};hõ¹`8ÞîvއjH¤±@Џ¾5𠝥†9¿yýíÖ¾s–Žcœ+0ât&³™MÜXÙ7^Òä Ř'þý H8u,ߨ*´ßXa³VgòJð@°i¾Û¥ã|?ó}IÔ±Ûª: /õB,C›³yÒ8v¢ÝûYl˜ì ã?yÝÞL,rd­<ø\Ó'Áh•ð¼ˆ~sD:Òž[×"î~µsˆ?ÜÅ­kÈß»)Zhæ² n3³w„ E§}v„̱Mãÿúœ÷‘•©‹FžÙR3ÒÍu‘oï7wÉ›–|2œ7¿¨ªÔ¥«Œ!›˺¸X°Å±x~½±½’v–Z„ ü²õNYË–ásÛÏ«ùð¨èœS“é™â]tÌ ‡§ú+ïr -©9æ‚)©“ýŽÜúƤÓrÑ÷É>›¡q3%æi!Kæ²\xBŸŠñ½‘Ÿ3v¿ö›¬žw`I.;I"q55¼¦´*ذõ›#ëÓÔ‡û·­4L!yZ‘ãiq­oÀ*Û5æ¡|L$M”¸oÔ½Ôý·›Ú.Ÿáà„Ãñ÷-M„bô—ž1ÿÕm)§uEŠ™~ù „´wãÏBãðþ¡çùG!þÆu­ïšßл?ǸÿΧH‘?~ÂIý®AÓ†úñYåJÊ)lHµfbB(Îå$æû5k韥ÆÄKR¡™žÂKžë¹3žfýX{Î;ÿÐKŸUx §l{Múr‡•Æ`•E”««^z]²ò„P8£ŠqEiÎöš ‹™»ÉúRaÄ­ÀóíœË*$ew{Þ>”ý›Ÿ‘¦¾ÐÎ"EùÎkû:õÙ?²lŽxÄÿÁ`’ÝS–Ã9ïGšz/º\¤#[¶‚¸¼diéäÓ]uuRÌDI Åb&ç~2¦q$£9l2¯[?»¾ëÊrŽšÌ#Í ©ìäÑIØPîe§ppìúÌ­+…W[õWÄ^Ù,wë ƒã܎挎SL޲Wö£ÁTc’KÅŽ1fm–È’>›Ø6a~s¨ÄiP*­9·1}¥€sO z%+Kƒ °|¼¦™,ËÑ‘9?ÈU–Øý_Ûë)§s™‘Éñ»Oðn“òžÍ¹8˜X%sÕ¨7»ºOL•¦Äªxž> ‰uôöÑÏÙìn“ZU"°àƒ÷ÅÊOïO•Ö·:S?9Ó¬f†:FU¤à{ŸÔó ¤éÀ¿¿›üòÚß<‚M$sÏÐOìd×5ËŸ¼wî5wZ¥ÍuôDp†oÒ™nþ‰ƒœ¡ÿçýóe×)À3ÒºÚèW'ºŒ›–Æ ÷e‘e¤Â<Ÿðõä &Z²s‰ËãC,6µ§ÊV±G2UϼȴÞê´„FG³(‡©€æÌçƒsÚ%ò&BŠ+ €œÄ Dìð\¿S•”<è\åSËgÙ 0Šˆ²1JÈ‚†øø™ŽÉ)™µiŠ–µW*¼njB}ÖUŸúAοœ<pŒÈe §ûxVö»nHÛ]|Îã6$ØJ÷¡Xo×Ûá=­#8^qgY×ÕÂKì î]ú‡ŸZh½nCK1ær‘"×Á¥/TÈå¸`rÙL00©! ¬ð€J Aü…D[àêõŠJ§“Š¢X,6l.ÇÓ?®Kü½ûN^_2Î?b ²¼ãw!´Û=ç¸Eÿ"ï&f@¨ÒuÕmøˆL¯)I¾.Èùl;ß«tÑx™M.é‘÷Ut¥™ÑQá‘;t,&ds€Hö¶Cƒ̵á´ÓîÕëw޹K(±Ú”¡õT%²èä ³ú¶²Ã@ƒB#Ù f@Õôb …ÏNɲ"á\–³# …|‹¡ŒÁvùä)!ÇÊqÙ‰èIõtâ%Utxغï¥Ñ[>8¨U € ÁèÐäÍÖNð™…[oBç¡tO7q|r¸v%òºˆË£5ç†<×—oô± e✢"EŠ\*ÇumKs¼0,˜r»ÝF½Žã8žçûúúEÁñßéñŠŠŸJ&FFTEa9V–ä¡^ ÇýþZ“ù·9iðÇBèæM+ÞxûÄœµÁà¨Ëå›U859\â©ø½Ïì·bYædž»¯(ʃ¯ŒNKˆP–P¥:ŸoõŠM þ3-RäO’×;m÷,û‘ÝDŠgâeKõÑ©ŒÓK –Ù{Ìy…=÷<ì9såµN}êp¸´TÎ!¡^ˆ36„›í­ñòXÉg–œ›g‘ßbëˆKM¥:)ÃM`ÄE˜€òkçG&OFñÂvûˆûÕIËÇ7#†ÉƦÆt,ì>a¾c–TçwŸ2ŠDV t¬Ì3b®°‡ /³aÁÜ›vœÊ”$,ÒEìtÒLÌ¡Œ 1ˆ¼U—m‰XÉÄãø’õ Rná”ÃÜà—îÝÍæÉ`ŒIeÉ)æÀ0½½DûPËË«­ÑªÒþLiB|úôIÒó¨ûpéñßLÜõ8Ø“º\$…›°‘`ÓÆñºí¦ó‘ÏæÔÏÿ”é SHÿóî$f?ØnÿÅ ~ýbõ“,(›ŽÓ>¼E>p–Œ8tŽzÏÍY§M9Ûg2ñ³óÍÖ–©ð NèüÞKƒÛ>\}†#Ÿ.8šw¿mô`Ñ_ïJ<´<³Ù¼VÊjÌbzüÇì˜ØTN†+ø¨ªÀ<¥ìPÊÕ¸öL•”4¤`RP0 u8ìŠÛ„»-úJ_º¢’3âG-x“EEVe å€ b¬K¨´µùšÓ6M8 Ý•_€øªª ôucª(÷iš¦(Š$I²,K’48ÐÍ0\m}ã•= ®Sü×ß:>gûáÁŽýoüº¢ªiÃ÷_´H;ðRgûáõ7ÞW³hù;0Ñü™Ïßü1üÛû>¿øQ ²üîw_U•'Ÿþ>±h»aÉǦrÈA §Gô=ûÄûï}Œ¦çží•½=þ‹¼›h´/r殌Ø@‹§ãv9V"{G0¸"ÙápÍ­ÖAŽ˜cï™§„õî‰î„³Õ5>¥¹æÔd(“QÈíX`$áÜä‰óôÜa‚/Âù;Ýý¯¥‚Sb™‘±SíZsèUø©¬“Ü3lÝ׿èÏ;âpOCji=€·O™}RÁÛe“iëK…lžÔÍtÈá(ÁG|†@^婦^©LÄ«ÜTÊŠ'mp)‰ ‚ªBŠ0±ié&§à@_~m‹©\~jÄXÀŸ‰Mýdê9ëÒÆRѬW74'ïÝ(À€¼¡©ÿ­'£Kâ@o¯é„Я»–l×I]:˜Ñ;­gÞ,½5 «ÞĆìD²"‹Ó$RÕ‡k³ûû|?k·mhE—’Ò,€lK¤±® ¾]R~iÂçºÆ²_ÏÊw5‰{Κ>~A“M¹V™#)dóDï~è\œÒg<Ë 7ÞQeà"¥tðlÒOiAÌJc{ñ/¤Ø·ïùÞŽãsŒ*v~íoUeáÇ¿òæûþþ;oŽÏ÷ç¹¹ÿ´zåÎæ(òå²üŽwÿÀѽñÊ;´²5Y )ý{©ñÃHS'ìöðÛž88¯4³)züyw¨ŸŸ2/¯ŽÌÓFCPÇgV{úÖ– á„îòªÑ´iP¦»ê,ŸÄ0 1ŠæpàŠÀå™&™ÃáÒZ[t!“·ñ ƒ^/Càh¼Á*üäT>ÎÚ_ìä7—¿¯)¸ý&> @(F?w†Ý´lú䕎SÝf)ò¡Î«á9"o¡âUìðJ®}%}ÞŒ§R˜ñ ³²Ÿ_gJ%Ê ’òÚô>ȳoZvçj E3ø[ý¶2Ïrõ0¸=Öà¿£/o­èi­M:­ÓÚ‚D±?ä?©&`GùtN•fÏÄëÆvj+ÚÇJ€‹j’JÄ'âv?§ÃˉÈËìwÎV=ä‰i¢ô‹Ý™ŒùÓKKúМÍcg:¨=Ϙ èk/¿°cœvY¯C“€5Ñþ438©/¼<ôº¨ØÙýgn€÷ܘûè¶ÈrÇÐfSìK7â8¤4¦™šèÏW,¹»é•ÌÒ¾´`IÍÄßÒ*ÝÜñ•aõ®8 „%ãÙóØÄPÿÈèX[œûèç_Ús8úßçõgººM&h\\±ôç+ä ¬úÐ#º O­ø‡´Å¼Â0êËÄ— š€2#¥ÇÄšåyW9‹9†:@" ¬Ÿ½°1ÉRÎM×qhIƒxß–ÌîÌÀ¿Àmª•›ê‰°À‰)R亘e“™m¯¿X5Ðߓɤô:½Õj­¬ðÅãñŽs§A`†ã8I’R©”ÅbÑ4 iÚ•ýh©Þk&c [Ãærs3/Ó†®' \ŸQb¾iÅbMS,³¢(f‹Íîô¤S‰p(`±X€¦©l6‰m6ÇÌ®5¢ä®Ï|¨…“SÃõËç+*79å·µ\!œËm'Âañ\—ø{ö™µÉdôµÝ¿øÒâfZw˜øç§ö¿öÃñXï©•& cÿòÆÓ§×fsÏìQ —þ÷‘_ÞnQ2þcÏë l?öŸ;¿ÿ€wN«Ò.ÜܹîBAŠ«ÕÎEA–ßýîŒ Æ×<&ç€êß]•ïÄp",’qUиt`üµMWÿÈÌ*)züy×ðÚ)Çû–įÜ<ÎIÌPÒœOÛ _2ô¬Åíðl¬´`{°S–i%=?5mË-Xy± »j›o ˜|†I#æel9Ž˜Héb .‡€¨NÊR*mq@?òõg}—ºÀ1ÐaâÅ—Øe°,"0ˆçÀG&)×ë}nÐÐMÕS›Kscæûnã YÈÀ³³3{lhÉ<}ÀŒÓ³uæ„Á( K,Ê2ö,祂4sµÄ®ý ÂÐú&å•£ü²Ö¸¹ÆèÒâĶ%‰Ÿ¾yã§Wâæö#BIEÆW]ð,??UÚŸÐýƒw—ñ\gï²…QxF|œ}æçïEš«1bðñàš÷Ðf»/9Ù<öÍž©S}¿À 2 M,Ô·3Áý:ƒÚ°XýôCsx«÷F°Ë³ñ,ž•ÿâ†Èž6óÇ=™ƒ¾‘8ĺ¨uuâÿ}dÆ)D–ÈWsÃ6*y"W•AÌ€h'p(·JúqŒXÇ œ0h¶â£€(ÍÜ­T—Ò{ÏRF½¥6n&åZ¿Ú;Â~ó9ÛúFñò°lSMY•é•ìLt©™[&wZ¤ó£+·Ú ‹a$sh§²lCaS‹×8íÛòÞª½ßÃ<ä[”CŒW25cìÒ;ür&H£×|ÛÆàÞ^ß]M³c)Rd!,ÈO!”Ëf|ee&³Y¯Ó3 ír¹ššš4M;tèP<Ïd²š¦E"’¤\¹!­&z²öu÷ÖœyîÄ(¹Í‰²*(Á#/îS*JÄ@4/ ¸cñÚ5‹,$\µ|ºS5vöÙ§Çß~“ŸÅ@yö¶éŽÕî«꺮]ùyj'ÆGªü~I’†††+«ê c*•ˆÇ"‡CÓ4Ð4$ˆ±Ñ!«Õ>G¿&…ãYÒVfÑR¼Å—ê:säD_ ­†’Ek×´xXÈŽŸÚw²/˜S1‚µ×mÞÚj#ÕìHûŒfŽøá½ý¹<üâºp¶lûF¿nž/¥ëëÍk_}ãðå…F£µ±qÅ cý÷›õ˜˜ßA£çÇ:ò{PNb’¢°›5×ø,çì ïÇq‚1zoùäÿT¢»oûêwÎÞþ¥e¼4±çëÿø¥'ŒåÙ²>ô•¯~r½ !¸`¹¢¶µóï>òë`^þ­[üÏÏïžõÊf(Èò;Þ}„Óæ N|IÑ–‹Þøà§ž|áç!_UN&4Íó|d®,,züyŠs4¹cÝtȲœH÷‡í#IC{ÚP¦—k,9##थÛJÎg2Ä¡~‡·œ>›·‡EÚO¤t¸°ÁÕ³ÿmÍ~}"YÓÀGF©’5pö¢ù¢@©… ¥%é‚&³?RµÜ<®#Å+{4°éf—‡êÈ#zJ3`݉*5,~ЃÀJt:qG“”Q.C›ÉìÀ³2{è8µ'‚ Šs wΦfaÐZÄY¼úï~¤û⣌¥Æ'³qçT^awN:ÜvrÒòèâñ³•îÓ†µµ¾jýh¿sÏS¹E+Î:n:²>º¸=uHC¥}'ÆkVúçtÙ÷—þîèF7öÁ•¿ˆÕ¬ícAù¯ë­vêï¬oaK©Ï¶Uß´M†ä7Ú`É"¨ª¸êl³y¬w<ØNÀmkåªò¹u•ÁqnÇâÙI0ç!'2YÊ䩱(Ó—¢ÿúÉr{¥õΊ@ÓÊÙº¼Ê ®“y¯…M¤”Ö˜•º3?3BåCPß(ðáI !×QmY6áÀ&<‘Ãè2§‘át[ö‘ Š™Ì€ŽÓ–ÔçjËÅW™õÛ&rJu@X1¦U*¨ˆŽï5²¥¦¼BŽ%=®»/Ÿ•ŽGY÷þÒÈ©˜Í §#“ãd.kÜbžêÌY\`åy\†™ –GŒša¹ EÉ/>©[¾Ò~W#J0wÒP¤H‘ëg¡Q˜1 “eyrbBUU«ÍÎД(ŠÙlV¯×§ÓiŠbjë›Ò©dw×9MUg÷£Æs¶u•e)îȉaØaG9!вSbÝ£/²q¹Žçž8Ø[vG£N§€0ùë çc#žÊ©r¨o¯ØÑRãH‡„ßÂÒ³@ñB€@Q”\.G¤^oH&£Ãý‡CQEQ’Éd!¡»ª¨š¦Ío….v¢Ê™©þå,1ñ{÷O•m}ÿC-nm`ÏO^:SrßJ8{rÔ´þ®ð°Z*ÁLl´{ïÍÖ®¾©>zÀøÞOn+ÁU@Bxj"½ÐÐ1ó‹¿ûõCW.Âê wÝ÷ÂÓãÝ÷Ó…H@¢PPc^æ,Áªe¶> W>»£Ù«Jùn½Í÷õǧäEÙo<öWnúÖîïß`¼þå÷}òï+_ýÞÍ€0@(×>GíW¿ûžÓŸ¢¿ýæ¿¶°¹öÿ¾²Í®Ëu™9e™_ü9k¶ÝtWá|>ûÔ‹¿8è|0vYÌÜüÁ Ûo¿.ó`‘"ïv˜ÖTgÚíCQý±°®Ê¤®,OU˜3w4ö\l³7âm´¤`W°©ŒL„2X‰Š´TˇތzorNräܱh/§Ù0v4[UÎ¥ÄXfúÍ; f)Ÿ’1 &ò%&Bô²W9«6—GD ™#šAQAÓ0UƒlZj1¦œtJG ö{N Ÿ<§Ì‘- R[Æi'SBþ¡ì¯Â ‹g¾ÑÖüé–öyÖ¹H‘"ó0# óüš EQ}&‹R­×ëE!I'Ȫšz0MÕµ‹®ìG‰ôŒˆÎ &-WêÓ:9 ì𢔌cükZ<\zx2ËUz¤cÃäš%Zøêå€ÓùªLgOŽ Ûí(2Þ kî/'Ó!A½žÝñ9šÍÛ2›I“$¡(J:6š,…ðeN‡£à ”L¦Nw,Æ0 e3iþ²ãÝ!P§^øÚVÒ¶ü¾Ûj±±§Dß–[—¸”ðX”)«×wôæÍKHLMK™ÐÈ (ÂI-꺲ÙM kª¨*ñ‰`Hx‡N— „nÛ²~×k¯¬]uÃ]ÇöÃÓƒí÷«9LÌÔ˜—x[¨zÙú[š{” E—ªp½Ó¹h:ÝùÔ ñM_ùÄF7 à¹éã.½ëéS©›J s¿œ«Ö —ùåççl³}›ù²¯‚,ïÈÝ/ðì+¿Þéø@®ñÞÑÿzx˫űp›LÑã¿È»€¬@¦q¬J¯« ß½bøÊ6#I×*s$¬‡M­ÕÆkÒFª'¬¨6f(Êßá8/C¬#óe¡âfR’elŠõÖ(3ì™$IÉêôÎÕäh1];™ÉEò ;„•¥2`"¥40$ê3“o 155Þ-þ8Òà/¿0úµOÈ?yÑ‘åŵZS-ÊklP2fGB¡ çI§R£€ÊÆDàa!ŠÙE²y|÷A~ß [¿J^ÓHlöLås0–ŠÀt$rñ±¨PJ˜NT­|tMádeãâp¾|Ÿµä¶ûÞ”Êj“Ë$ŽŸX´¾äÜ~Þä ³îÎìòãmi·Rm)¦\ó{îÛ"š|6ËÛ?UI¹Ë¿%ØIŽ4“Z?€=K>~¯ªã/N ;ÞΜ"Ö·Èßþ«k[ZdŒ9?BÝÜ8U B²QQ±ÁÀk¢ª€=t 0ðèR5fá¶šÙ!žCqîí„»LNg '‰á´«3ãšôáKN_Ì*3!”èqÉÇ$”²¥tB§C 0Û3Lj%CG\íÐÈâÒ˜j §·­&#à€‰iÆÒsH²ai'ÞW?Nú3}ã¦Wß6®©ÊTTN¿»Jò“Îdoˆ÷O¹—ÂUXÖÑ6ZÖ¼*=¥°Ó —*õ[ÛvéS«BeM•ÝSeýoç—nžuU˜² éd#ßs³#JW[£m¡²;|k«(R¤ÈÕ˜a“™'¥†aƒA–åL&,Ëvtt¸Ýn›Í¦¨BÓn&“f§æB½#’ãÆ£ò^Ÿ¾ãT·ZUƒ²a´ž…L4#ª!ÆNÇ «•‚‚.ù«lí§áN[ 7ÀÔÞX†g'òWûBwÍç¿  ,Ë¡T"‘Ëg jŒ$IñxÂ_]/äs—;{Ïè !DÉÝý‘ÅLvìèÓ¿<Ò5º„Ç1üÚ÷¿þºª!¤IÈ–cü«×µïyí©·cÈä­oY¾ØžI]ÙŒÐ3Ó=kóÍù·ç«®Ö!†áŠª€QIQà MCs§WÑ@Ò44]/§)à-:%2Mœú›[WÓ’ÓP“Î)n„Ó4w­]&ïUÚ ãeû¯YÞ‘»©Tl9ñ I‚‡G¿úð-[vϼo˜«züϘùÓEÇ*Ÿº1¶§ÍœHãÕž¹3·tÇËœã8m©²:ÓÈjk_RmOr¥˜HÒx¹9äÔ§†R®_ ,½Ë×yµD–ð}oŠK*ø\7é´éGaŠ$ä Fè)©„ ÀJÏ—Zþ"y•ëJûúU[9½– É$dÖáY%tf&3Ž¥¦gõïZ”××ÕfrÔøÉÆq°x˜©‹@T2sY¦;obR|Bb@ð1ip³Ižxrnõ&%¾øKžàøÇ7çËý]ù²‹U²Š*(kã™ò®°ëvoÿSð?º7àÊ" Ý£+Û³P)ÚÔö;^}*·hÅdŲsôÝßßå¬1É=‘©/–4å‰Þ¦†-jlë/_·üCÅ+)‹9f+€DÏêé3O:–4!ÀО#¿Géf ÉÖ·ÈŸzïìi“$…‘4"h…`d H}˜,b¢t‡Ç·88„ÔPcˆÄVó º ãdšg¦dü{}K¼:µÅ¹­äü•‹Œ~&l'âãPp@źBsŸ%g@(…'#˜3Aê]áÆ›ÝA MªÀÆZð™ÿxYh­ŽÖ–¦^;ç=6ny|EôSr¦Û±V$è«Í™6›W­¥ e–J›“ý“õ«†ÝRßù;Þ§w´d”Kž1N³xžy€Bä·G¼·ZŸ WüUãÑ.Z‘"E®d¡6‚ I’Äqðt:­Óë·mÛÆ²ìØØŽcó=/Šþ IS_ûÖ¼MEèl§ÔTšOK2§!„Ô|R"­ IâW-Ÿ!`\µ¶3§û2-ƒ]ým^” ÚUgðŽìʳ/I’¢(AÄãQ§súPY<žðWÕñ¼nb|. XŽŸÑšVÂr“ã#Yws3÷ê[«ô ï|ï§ïöb‡1#öÊeî%[lL²kç/öõVßUª›£YæŒ]Pc@îMž^–Ž"mÕMï#Yä%“Ìôä‘×_³,[îb‘×êð}}Ï,å.k/œ-´&ÌsÖžFhä»ÍLY ²¼S6™L:¡ËŽo›ú.†ÔJ+ï°—Ìß¾èñ_äÝŠß“yÄ*ô›~¶ß»¶:³Ø?;‚Ùù”îÖŠD^e“*!Tk£jY˜%À‘Bƒuiè…á†K¤Ñ>zµ±X<ï&Ói•O’v4­Ép,›—¦ŸÈÇ5{%¾æœëÉùFƒMÛ ¨ Èfž€) «a#]®ú‡Wå:NÇ;Muú=c•# l‘7ºï¬mcëŒh…ÈÑ¥\>‚é_=#=Ts:„¼Â@D0@ oJHŽÞœÞNJ€ ‚O 7—ÒQâØpî‡{Ù›ð­k¢:N4.)ÏñÐìà“%Œt4e­÷WÐ6©Övíÿ^±Ï?t*ÃØ'ÿ~ú¦¼û†g;MméºÁÿ[9àé}¢þ~Ç`?DIÊiM`¶{Ýû[eÇ?voXW›kµ% c˜Ü¶fÆÆ­l#þþ‡ ô×;ÄE>Æ5ŠŠ$H’"h†¤9œÕe<'k‚¬b²‚pÙ¯JNM EIÐ µÌ0À¬0¨× '1ƒqç™°©êݵ1M”c1m‘î°]g3¶š{ è8mó"5%/&c™ BT3Æ36mur:”¶ ¤æÞ?âYùîÃjl%»ÚBõ¸çßÔÔ¸}­ïÔ)A¸a†u=V·ÂÝö:ío‘hn¢bciø„•4g ä1ZÄgp6“¶y•½™Š¥ÆhoÊñˆ¿{þA‹)2? õ“)¨14Mã8Žã¸Ao8uêT,kmm½h™ $ºƒ˜oÛÇïkà!@Z²ý©'޵g[ê<ºïXè¦JM ö´O’åܸ<©¡¹ËÑ“ D;ýÎcGöULKïpi‰QéêŠÌ‚¹–V€a¸$I8Ž[­EQ4MK&S•þZŽ×EÂÁ\.Cฦi…|2³4™éƒq!Œ·©äÜ‘6z›ŸÜµû­öµ^Žkb*WLv*”,.UÍ¡LB£/¯m®86»™Ë,Q„œLŠÈ¸`›ÃÂÄi×¾+;Ó©ìÞ#tN {6eÔ\Þ@âvëÛI‹eo©˜CYªñåÑ!ýd„qZ¦Í/eúÀÅß·ä„ófÔ4µEYZϯÝ" í±Œ‘ô´(+PX¢Ë{æ)a}É䓽¾pÆm‚í¦ŽÉþsª/:L¶c–¦|¤ÿéÊ#"É3]mD[(篷tŸ<4L”9MÁ޲åë[+¿zÌHoàå®0¾ €–À ŸÇÛÇ ?|ƒþÕ#•ë“ßx«Â–ÌTb‰àdœ‘ž“5IeU”•ŠÜåÿcÓYü¾å×q&*'1ûhÚ‘˜eÎØX–²ç""¤³©ýcî¶Aû•ZñXÖÝÂMOÀ‰gÒ`6@Ãð+ãC\ä¬ÒÃô#½åµ&»%p4HTâ8´ˆS} ‘Æ4/•ÁJ¤³ù†Íuò¤u…'Þ외Zçô@uëŠÑ“Ԭﻬٮl®‰Î±ÊeQ³G‡5[RýYJeí "–HÆþî)݇o‘–4L¿ç¼+؉IÛ¸â÷B‘"¿ Š]$EEMÄq¼¢¢â–[nG½ê…(7Ù¢k\lÇÃCጠH_íOŸÎ´ú0ÜP[/yñɱ,f([qÛÖj"=!h®R~™9eõ{ÐÛîmK\Jr`^EæwŒ^u‘¯ojb„çùBËD"Áóú\.;>6,I㪪@©¯rnß÷ SÚ]SIï;šyßÖMçOxåhTD8mpU.Û죣ÇÍH#uÎEÖ—’T¨qãÆáÎÍü<[^ï9²ó¾)“¶e·¿ƒ±ËîÚ¾éÅWÞ¾¼0Ž·Ÿ?òÿ Lʃ(¼ltW-ã8þ7²t×!,Ÿ½³ëð?[¼µK6Y¬®YÝHgÿ~Mëße®XrÃ{¿ÿÌ#=BD˧ôµoñßï]ñáŒF™+WÞõ·ÿ¹¶ú‚®ÇÎUÛTqÇ×íúÇU-Å/ýÂîß?W›™¢dy§îþðPç«Çލ¬…Ô”r+¿ý¦»çi|ÍÞŠyÀ³òb¤Æ“<9èüþ¾šU©ÅåÁýžmC…&‘LV:®c$ERxAв޷’5l¤šŽvø»†Î_t¶ÞSÓÍÏuÒŒÁ QÌÊ¡—Ã@´¤ŒaeuÔU׊ˆ ¨®aÅáÃ#[Œ' f(ÃFi€¨’ŒãëöuHol©ø÷ fóøöà_ýÀ$F„C)ãÛJŽOÙïjsg„îÕqêF¿t¨‹k½Â¤@A½±)áÞaê¥Ý©Üª,i”s2›“Ù¬Äd$z2c4ô«á:½”·1’™½Æ4èhÑ©K"”á…AW«9dèßôºX©ZšYm꣥<-Šódè–s"yb#1¤!œ¥q ðõq‡rÞTø1§ô£Kz­>h ¥Þ¬Þõ¬k–žû`—DqáÜq?þ£ç­oLØîÛzQ_Dpe~Ç™ŒMáe% ÊH3¶O¤ôoNZ—ÚsM®h…5<u´3¥ÖÄd„m­IÜÚøÙÁR˜¥Ì•nrL缷ᩘ ¨ò*“aÊi›cèB3ƒƒÊ ïß, #ïJí”[Íbæ8aë¤[M(mQ#¼–Ù)%šgBš‘`Ô–ÒÉjgôÍÊÓá–íÕ#vÝìÛÊŽ JU‹X;wD¤eqVmª´Þ9z*—@Ìà1©q—0&‘\šÔ£ÄóOá}y§mzIûóÍ|äpÊ{—­c! X¤H‘yXP> Irtt´¹¹¹pÀŒe™ÒRÏeW^íB¶bóÃK++‰ÄxR ˆ’ ;òúí£GÓÕÜxkÃ:ÚjâI$¦Â#ÁœŠÌYŽ[[o¿ßã!`LCa¬¡Ë–5˜Åø¨Í´l¡ç‹æ cŒår¹Ã0š¦éõzI’ScA`¦ªªªª&³Å`0Îî36Üö~W5¡B:ÌÜtÇ{]åú„L–¯ºÛnÕÓ UÌÇƒÄÆ›|¥fcH“²‰ñ‰bì+ï™Ù,-_³­uG…ÛÀàZvrx0~Õpþ×%þ ;ßœ5y½ÞtÃæû¾µï¹¥{^7¸¦j–¯»ù½†DèiIÜÑyðË·¯Z·ÝlqÌ–šªýÔ«=Ÿšk Ý›?ýÍŸžQeÿ§×ß„´9j”Þóõ—ïùú…—>G›n+YÞ©»€ŽZ¶§¼›|d¼,ðãk¦µ)züù3gå&–‹ôkÞãõ!‚¸øh§“ç³eµY‘€R}&¬ÚÔ`¼Ëi ª¹aà)¡Ñ1 =Û[¿ÄmrÍá»_ cÝš%Ź š N’¢Ïbæ4®kTÏ]Ù^6®1ÕîÁ"Ù“Ë{ ª€Bäè87••Þê`>qo 僡VM¼Ì4 ˜ùíCêã›§ˆöðc âw;ŸW< ¢›ëÃ~÷¥ô%Õùo¼Æ„bŒó*©!Ïö踗¬5å¾øˆâ´kyyJ°_p²I–ödéJSoNf3"=‘2@›LN¤ûƒÖgú\åze…7þ¹ §/VX›ÜQž7¶ÖÏʬßsÖí±òót°hÞ¬ªÈv!ª˜’ãX©Ç©8«k­Ÿ“àh¶Ça)Ýþ³žEÕ-&MK—‘^µ¶–èÕ¡„NIÈ› ãt¥‘”W0C˜&÷'Ñå)VyZ¼}Q÷ù`Ù‰€×g4Í2RSãrI)ÜÔ„ú ¿iæèY“ƒÊEm驨¡D$Y¥¢…î?R*>ÙÓòÂ9öãïcœ¶Kšp»âu¡t«>beŠ™"ÿ?{ïçÆuß{ÿÏô‚Þ]l_n'¹I±ŠÕ¨Þ%¹_·ØVžÄŽ87íÚyÒœä>²;q‘,ÉŽ¬BÙ²-Y•Å*±—í½ ,:ÓçÆX¤À.B-tâÂwµñ_æ«]×6yd<<>νÑ_sYUL`UT E…€öðÔétmÔ^üy—k #õÜÈìð¶Àx­+±k´p´=t– V"FLfýí`ô¼…c˜¦#ÍÆÐ’žâRˆƒ/€S©Ã  ¡ÆRÁÜ5ì3­âÕ¢‹¹#’½m½Ny˜~Ù¹Rgxª°Á3ù£¾†Zv¸³åLeºp~C€¯ ©;±¿pÜy}Gº.R€ W;×’L>ü¼ëôhi{‹z÷Žs.xRάÀ¨£úDXá‰`̘ª¬sÏõ7W8 ×82Z±ÓFþïÁ›o†Ñ}èºJ9±¦[†E¦&,Í0BMXºE$FÇßÿåùÌZ04Îõ$ ¸a£Z_µ|žQÀm&üàz뢳åÂÙØºcxÙÍ%…î»ïò×Úõ Õùÿsõñ¥4öpJ¸¹­WR¨XnÎaMàôëWÇÝWu皸ß%À@οÁsÆÑ‹E#˜9C±Ôao~%AÀzþD‡†º‹·_É”,®‚ŒÁmyìr ,ÐXñãuN#h#frÌ½ÑÆzŠ3™_Úƒãun8x|pÍJwj>É3Ø]Z9WÎUåøîËg+;ýÇR-aÝ‚Á}m?ç*Rø³Þ–LÓfÈE¨ªý>O9ór™2ïñv‡K´9bñØððp㊇Þz€¨©m$)ê<¶ó§Ë¶ß~ëöù‹._¶}þ¸:¶ï×ûg˜ÊõwuØ¥™É ™‹åbòð"„¢Õu²\š1 `Ëšf¢Õu>MОSƒÌ¶ÕP刻e±¨Xôðíúu©G^ ܵ)}džìÐ”ãØøü!Û kru•¥muÚ'lw]yf¶’L¾Õe{ú¥g³Ÿ¾w¶Y&Á"„Ř¢hH€iŠôP¸¢„8GMµ˜Ë@¦ŠtÅÔ¤k!Ý^w♎#J{{¤O з‘±g†×_³­šÑdwb”Ÿç&Oc„f4IŠ@ –aV¼úD±imª¾Žvó?xÇ–Õâ·ŽöPçR2³ÌŠ™ïýšü$fæ#:–%1Clo]ä~&)ôÀ”óÇÇ<õnkCMþïn<§ßÔ‘±ðuÓ rX É”È púµ­©GBÚ4&pú¾”÷3Þ3²–E$TÉr‰|!ž]ôöh¾ cØh;]ü•UY;çİHi#Oš ›©C€(Æî ±ÈŒë†Er‘ñǹjG‹Ù´3ÏZ™ãÚ“hì_{U` "~ÄòMA€-069]ð-õ¾KT¶¹Oê:Í+gÛ[Èþ=ãU³ªo!לÕÁÌà yÙg¡¾|»ÕT«• ¶’c(GBc !hU Ÿ7SE™2e.žE6™ '™…$©p¤ .ºÿ‘c]ç:4rz`™VKZ¾}-×bù ˳¹ØH‰‹^Î< ÃÁÛÙÏßóþÜhƒƒª TD®D(ì#»‚´ŸÔ9‚"A„’&uLµ8RòÛ|vŠDØÔR½£ŽÜ-ï¯ɼ€¦‘,RXPÎŽŸ7L©MEëÄåwÿnºð‘Êß;yyÝ´¹ÉölÐÙúí©kêVkgê¦çä `ZZë:vì$`•à‚çr5ˆÞ‰“òæçÓ _ ürÊÞñgC÷\®¼fÈm%Rä|Üù¹üñÛä<Ã>ôœíÞíJÀ½Œ§ÙXŒL—„o?+››å_9%rç ×\ÈpÒ{MeF`ç> õaujfQ ÑªÚ$ü¸·êSíK·6œOP~ÂnKR(‘7ÞJ5-æ*ÿœŒ™*ù¦ÆÕºmÒ¤âHhsAùUt…èØM®c®sX¯üׇãnðÛò÷uô½sŸ˜ˆÌ÷$-••¦I‡W·‡žÖmá‚·9ˆh9;hUžF­A=9~»mïuŽC ÂȬŒ‘k‚ Û‹ÉÉ9’ò'}'ÆÃöʶ¬]{ˆ×ûŸ~#ðÜ^‚¸î ‚xàûÁ¯?í:q*³sÀÿïüß|ÅñÐëÌC»ég†jôg(-/gƲÉÞx²/&%Òõ6Y+ȉcÃC¯œˆNî}îèÝíÙ»oÄ üH˜‰9‰¬eY8_̉@)]Û’FŒ°1Ó ÔºÃÄØ—WüòùBÃ>åvº– ט;ãÛ=]/ûû^µÜ‘ìú[ÄÂ8 ”î¼ÉpUNGfJ¸'÷ ào#_)Oñ–¢lsŽÀ—i»-_Vr "?q‡ÚVQúé‹ä±Ï|»$G{„§^uï<骯°îÙ’þÜÍ±Õ Ù‹”1ðJŸ¿9x&Ä3âS§è%}œvLÄd‚]ÒNcÅ¢hðÚÍ©n¬+Ù¯òŸÉúp¤»½£<¡ät2leÞQ%êé}“pî¥,Õ¡Lú }v9.³žW{Iˆ˜ ž‰Ód|hUpÔ’cl€1Xæ©ÔÇØ4ÌBákŸ&þódÅ_žÇÛ×x'|B–A–›Tý8mVÖtDÓ„P&“È7aÑU[ë•®)íúæðŽÏ ¿tùg¦Z·4½b $¯" Y Û~1rÙ`’¹í¶ÒJ餒bfð«ã_ÜÀß^ÿœaóõù6þßC_x¿|‘“dÔ7D}ÿUî“×alꃓt-ðÑŸ'+:´ãÌyÅm™2ÿ“Ù~õÕðÒ‹/nÛ¶­TZš¢pYæÏ444üü™'Ö\¶á·8»ßGhhh8ŸòòËËw—öuËÿe.azâžk*–ÌÜÌT¬‡²[) „·¦©ˆ^=Ÿj)ë™SÓtÐßé_‘œØy4 wvÆVVNÆ?9R·¾2»2C¦f–²˜@-E0¢ C´À a)“¦fQPÉr( ;IB3Ja'` GN›µ5|MPøßß.06¾B™®ñ`¯ËrE±Ì¿Îpë=ÙÝc¶F/066f ¦=ãån]5W'‘áw[‚Ò¶•‹ÒKžó~ñ¶R¾D~ç)4•¶ü‹ÊÎ\š¢Z<¥%¸¥*o*J^E#8,àD%B“ss‚kà£þÝÏ÷¬<íh¾µzàÉÌŽk:bùn+_@ “¨jQ_ÿòøú¯¯|dÏ uÙT ©A“šÜ_¤¾PÕ‹hŠ6ŠMù#kÈMƒ£B}õÌfyÜÙ¦_5AüÇs$%Ú?¾M¾ûÚ Žàû®xÇ‚ ŽO8WU,**ò&–dRäÏLéÕ)÷¯=ÕÁ/ž®pðîÚà™!Òa’ãöò»zqzº)Ç­­Ò¬u(IL—ÕzD<÷±ì`öÈmn2ç"Mà\–*”¦85eÐvfd ~ÿ4i9åÚ vúå#źA©€QJèùݔ׉¯Ú¨¦ŒŠÀxå\€@£¢YœÖ9J1D®p;–™.˘2eÞMæ”Ì–-[àÈá¿ÓÉüVhhh˜]Ýy(/ÊËW—?{Ý7ß|sac9â¿Ì¥JïŒp[ÛòE*9¤°!ˆŒRã˜)‰Î¤äxb䲕®™f×=Ã"¥ "€É`Å=îþñ»óH¨9(¯«O6R?9T^YW… m!BÎØäs$¡ŸÝ`cÐ7M‡Vè½"‘;ÚÅî9ACÞpCPžýÈV ¸²ªsëvCR8oE"¥|ì iÏqes‹¼ºA-©òË=Ñ£¡•Õq(ÊT£Ëèšb·­Z¼ö$ú|TD’{»ùÁ»ãòìÂ}ùòÓ¤hÁî´ñGZ¢PøÑ‘hÏŒES6¯ƒ ’f¾(Ê‚†ç¼ÎXC‰ÆŽÑjîêUÂCo­¼Ö;YX&£óFkÊ`í-O¿î—§]_»mz7X:”s‰D´elÅÖøÙ[BÙ û \Ö×lÓR·¶ôýäxû,&DÎ?ÃYŽž¦_í¦Á'®EG#ˆ}ÛH‚­EÞéA2g;8Åß¾fxI{Èe.T2#3þ+CéÙ|×µM>öfÍœîwÎéCÁ(Œk‘cY¶’ZúßéñQÇš¦’bñoémJêbí™>!·1“=JtƒxQJfÂTmÓÔØJK¼WñÔÓé…wx˜MN䃵i²3Zèù³ïXŸÚaÌæÐ(®ÄùœFvF‹ð›UkÐEµ¯4b"‡—_Î.­µð[B’‘T"&ã„Ãf]¤|-Sæ÷Ž3.³[¶l¹àžï¦¼üòò׳(Sæ÷’dÞ6R üŽÂ²G9B65³Àñ³/LXïšÞ—lì–Önó ,,%F9¬°µ3 õÇ\î«jö—nkeíß>Ðþ¾ë‘KÏ*¶ x.%ó6ãt]¥“’ÒC/Û¬û®UüMÕO?‹j«:NN=6àŠsÓ2h7ëBÊj¦¤êòê†Lczþ €ílU¯i{ìÍŒ­U5‰|‰j¨?ï^epœ½kR Z+ˆ^Ÿî~Á»¹E^Ý´Ì ±HónÊéå,Í’³ÙLZ•K@1½…Z{¨ÉÔŠùÌ`zÖgiN'„s£ÔÉ„«lÁêì±læ¾u¨m{cáÑÍ_­Ÿ½±X0].²(Ó~ðH²üÕÔèÕá“RèõtC5_h±ñä\ÈÅ= mˆÇ«jÇÃÙþ)çη‚êòk«å'_à7TâÆ¹$D„ÒÔ¹®X"œy™8úZ.–oØ(×WiØWWÊ«>VÛ]rŽ÷u6jCmnK[6àž».÷O‰)‘Ç7l•ŸƒË¸«.Wî_?òØþêˆKÊItÔ¯l©¢~~ÔxœŠ†tJ(â‘7W7«J¿>èÚÛúèµ3"oèˆËÑ~LÒ*粪 ¦q¼_65P9rúXž[éVÆFSvÑFŸ5µªlXVOÕµU™nZ-tÕ^ ØøÕA_Y_?zD{o¼RÉSë5L˜¾¨žó#08ÎvM —4Ú¬ÚT9}¢ÆâÂácS•[ÜSuÆX–öÆa¯×Yw)ëîúko €  …‚摇_ß­ö¤Ø—Ž*m‡¬›®"êk.VÒüªßþW×/“õ$â×Þ8n[Ý4÷ò­„pKÇ™$cµÁÌå óãCµŸÜÜ›,:öÄB›6`Ÿ˜Û\éHf¿kξ7ái^ë©¥k\‡H˜’™%ây5ßÿz¾ÍCeg«] ôpwáº;gÿF¦F[ŠUŒGinwÂ…òƒ…¿øçb¦˜&—‘r(“ QœŒY—™“è I‘ K¶`H„šMfx¯OȈ¤¤¶¼øÿ¯ ÉDß»÷Ó= [-~óÆM:ŒÅÞ±ò,Sæ÷…ò‡»L™÷ˆ`0X•)séÑ.«™>×Ñ’Ê䳆Ó5WÊC z;¢RŒïœ)õåL[¿T£˜sv”•p:¾)T%púªº™m€½=T£_Ù?êè9­Ïl^©³‘dr‚©:‘­«0>O.°LW4žåþâGtZ±5ù16L}&¾º!3/H hÏ“¼0û·Èã¶*.»µë '°Ú5Íɇ‚i‰€ú Kñó£NP!Ÿ y]èíáæŽËsMÖîTC7jï£Z4`(K«Ìq¦NÓŘni&:켬À…ÀÔq¼¯Ùß7â[¸Š°¯/œ.rÞ1okUq¢«rëì¡ö*ê5zâæaìØ±>+ò«KgC²¿Ñ&eÆ&ÍOí0ú"—Ó%U£…‰Ðz—4*qÞO7uïŸö$Ø šÀ4˜MTÒF,Ê<6õq÷!ÀøO’¿Úê#úÿz?×ìÕÅhðŠü‘SÖƒ[GO^8ô(漩!¿l©‘7c™¹[÷FoյѥƊUÕÓ—Wæ~~¬þߎÔo fÑ í€ÐÛ®„Щ>*wG¶ºNÌ2t ΂#äzv¦·TuÁ ÏCNi^ÿüK•bE^9 œÊ}áÃL´ÆòrUTF¥m3®vƒ¶«$›#d~†& Ž!Ap“4å(Ž@¾(góE‡Jöè¹>À¿1G{„¯üÈ- SÖuÏåúÞ/×W_lZ¹2e~O)+™2eÞ êëë+++׳(Sæ]&™³ ç¨YÏŸe‘Æ‹T–# ,Rdtæa9O*M¶‘kܧ‚]…¶¹f¶¥w!€ãä q§×6·o'§ÆôŸ¶ýøçfÌ /½–Lësì/5#YÚR“B÷ÅÇë~ÝS‹LÿËûGîÜûèu)Ó°Úë¬%ŽuBJÚÜæRäñŠZÝe·¾ùŸ|]({ymnÏô”Â^yhúL}Éîù·wÌ £»‡ÔšW¬õVmU{…<Õ›{íé¸37êV'`ܪ>ŒÖôQ-†há”/{Š)Æ `ËÍ(s·ÅfÉ-J¯ˆ‹]®Î"çj*ž(²î~ï\YFÉ þ¿?õPÓ¹o®v^?”·S~[žÑ‹k« (SYqFrþ¤oÍ‘˜K/*Ü¢!Z7RÉNL6£»Ï3Ûyø±!eãM‹šH âI¢% S)´ë)Ö5ª'G)WÙ¬€ˆuoá¬*ò>¤ÀÒ9ާ9Ž“„9W3§ÏƒVâi2i_q1s¸Žöˆ_øwßÞSl³[==Œê+ÍÖjk˜Ó0y ¹åge.YÊJ¦L™÷ˆl6[ú/s‰Ñ=ḡî|uŠ‹ ]+£¼Ä9)`A!¨°¨Øö™5Ï×ÖÌ|dmöµn+™åÅb¼h÷ÀŒASºšç='Oº®YEÎÚ@H»Ñen®Î¤xFˆ„éäÇ7©8."†M¯ŽX Š"뽌¡°ùCòK÷Xy‰ùò÷l€Ðû®ÓI·5˜ñÌ¢de>Hß×Ñw$éÎU^µ™øÄ½<ø#ëè),•7uhÊõyO°³ ; ©D O»›}¥³Uq2gûþÑðÇWMfdúÄx˜Ò‹˜#îÒá„ÿ¹ášë*‡¤”¼¹"¿d6—ß»s„Ü&ŒïË_”£¯°÷%¥¡eþ¥]/–„ íe¶®¶¶®ÆOî§~úûàctï±i%9Jæ&]VA°Û´à ™’ù‡ a¢pFe™†^˜‰ H!ŽsÿUãDšùÖNï_šÜ˜Úæýó÷I­‹îa6bYÉ”¹d)ÇÉ”)S¦L™ßîiþC›Æ.ØÍCäÁ9÷s#"Mîìz‘!¯z‹?¡6ŽÊk×°N"²ÆXPOÑ+Iv=9A7%mëH¯mL½x4øìçÆ:Àzä-Ô0V¯±U*#ÿü¾`’ÑüMtzi‹2#[¦uj”¾w»¶uñàà̵ë©é“V°Ö&Xe6 1üðhoïàõÜ •™˜á œç×ÃbÖb ¹‰–¨²%²wá…dƒ-GþÈj°¬Ìø®á«¯IŠÔ9¼},€"vÔCT@å](7ÄÖ‰ ÿ/EùÌmã+bDZͧ£«Wä>Š­'^³­¯æ5š€¬Œ}¤ ÑÜ3ݶ+î›{RÉSŠ ¥i!ÌÄb\tò†ÚÉÿûjå†Î¼´I•srÌKoâzHQ|þMØÜ®~û¹(D €×èž>ãS×5ED‚¤À¨÷´ô¥œZuwSog»²¢õ á<  ÐÖ·ÝåŽØWÕ,U ©¯Ð§’ôHÁ±*º´[2'þËU¼uÄï,…—zªl"T5“ÏöV—¨¿^|xÚ¥ùˆ+±d —Q%Ͷ7©` GóMŽÞóÌ Îr-c°¦RB"EųôÝ×É’Œ>y|ïeö“×êG{Øç÷£Í+•5cv;É»üÙ@Ghú í®5¦G—œº–K ¶Ê˜j›&«‚æ…¿Ag#Éä¯:_ï§,Ãhö(›ÛõÎÖEß©‚D¼€@e%Sæ’¥¬dÊ”y/(Gü—¹ôHf…Á,¹lðÃ<™vñš’§3ŽPFÀrpØñòöIŽ×ó'¦ÍÐ ½ÁOjÉQ·5Óý*#ÌÐÑùБÓoÞ4óʉÀ£G\Ø4·T)[Z³tÈ["_i®Ê­æ¬¢r“Äb“H³[£¥ÕõÊÇ„»®Îà„øu!åPf™ßÄÎ6Q,9¤Ý½~æÉ7܃2íõx¿{*`Þ¹"²Oú„ì®.,œÉ UÒØá\ðå™Èu¡ØZÇD¥¢ÉùðËþÍMòêÆEkg\Ák÷5=Þ[cedUÐEd=8 %…~áh0^ î»Ý¾JrHq^ $ÊQ l°º©0<#~qø®Ïw¦ ¨“&P=ÓâQ‡÷ØÒÛÑü$OPõWoMGŒ„ÂéZ¯~,îX[%g äKÝâGt;mþùýŽš¨»s…¢”Q$…žN1ÛôdNl© Ž ¸†„ŧRè—Ý͈€ëì3ƒ-µb>ÌeVÔçÅî9Mí<®jg§‹T–Fˆˆ¨%:â“ËYf"~ýcüÁwûºE›þ’BÿÓ®Ê?¹jÔï”@`µM5ñŸ¬¸-Lߺjæg‡œ0‘µ¹ýŒç¬¤ÌØÂpîÝ{“0öRª­šs{˜sæ;ÛµŒH¢kX¸v 2 –v°­—1²Ó{÷ïÿ `…Á!ý¡çr«WÙ;ÛX:Di¬‹sØXÎ÷²”¦ ÖÍygT‡.;¼s½$SýcüC{DS×›Ýò接f §†Éõ+—QteÊ\”•L™2ï³ÿe³2— ]ãö›Ï÷¬²%&ê•(°ÄhÀ1 8p~Už¿šIŒ»ˆì41Û*É™)Ã~95##Ȥ– ’B¿xÄ/ ªJº —âYt`*ØVí«.žœ=ƒêiò¬d͉ðÚôO‡>npœëlWÃ[|”À†ÚW“9Û|õ’yvb K=}00¢s†$¥óÌýuÝßxŠlß:×3•#Úô’Ê $}‡^‚DkÙ?lYT¥juc®1*õÛ¾ó«È]›Ò·.ž‰–è$&MPÁëºAO8>ä{ì¨ûþÎLëæEj¬žIËîÖÎä¹§}ä¦Z¾õ´ùù»²E…"uýW»‰{ƒRí_—ÌéÕÅ.«œ<¬Ö‚‡q[cC(– wCK%1Æ¹ÖÆp¼/dûÅnpºœ5uþv{»z›º§ÏгþÓŸµJô$étŒÒe !Y—si€7s*͉ØHšjðÁÕ•ÚÊŠ™#ÝHוQ¦,ëÑÃÎF¯6Ö"Ùï’æç& 擎;:¹)J ýW¿¨þʵã~çœøIdøz5|KKQU=Õ Jæm/ŒºîÙ”?;™›ÑŠ ã·Ã²ð¤¼Å5øF¶þ¶À¡%‡TÌ 8wωÁµÒ·N°:A¼F ïÎãôŸn÷'°X¥±¶¦EeTô£ú'nN¬ª¡k+ÄÁIê¡I ­¯¢†ç %µLž=²”F6»—5NKõè4‹.\1S’©þq᡽6K×›\¥ÍZgËò£zèô›T/-Sæ÷޲’)Sæ½ ¾¾¾œ¸¬Ì%F×÷ámçL…¼C1%d¨Ž…E#¸Pq‹ÙZ™AbºÇläi\0¸Z£{”éWéƒS¯6ÖïØ”:˜išêB¾:1ek:¼?3®p­µØ]å6=°Ü‰-À¦È[;6zÞýù¨ÒÙðƒï»™Tö§öúo_3§O$™èãüÞ)qká4ýtªc%yzœéê÷\~f ñ ¹·?üVÆù¾öô}í}Ë:5€È«³ÁØsÊyy3»¡ 3XÏ*’N¬êç5¹²F:£%…~ñDx:OýÍM#:#vìëpؘáíB Ø":hTÇþp•ÿÿ;îýÖÖµwé»âµýEøà&‰Fs¶2©}CÀüî³ì÷Þg3”Ò_ì‰ £$¦¿x“©&â¹ÒºãzïžãE°¤ñqî²Õ>,©tëµ>SŽ]vÓtà7Y4¬«ùIÊî„|éÉÍí<—¬û@ãhЫí¯w2j˜ÏMdÅ—Æ|© Ǻ¦´ÏCŽöÃÉ®i±»kS&–÷ôyR¸%(·Täü΢È[MA²¥25¿(I¡þ♊?Ý1éwÉ Édÿ¸mÿ íO¶OÜrJ7Uä ØÌž¸×dýô2ej°e^š¾L69$›œlq2f)öV$dÄHÀœ¤Š°Z}×~åú›•g-Dkzâ8sg§-’?¹ð´«šXÒeøãÆÛÝ•NiMd²ù~Fqíïõ>zØ·y-Scz©1Š´TGq4Á×Éü¹}·TS-áX¿óá½6Ë0V8¥Ííê¹4Ì<…âœ{a÷4ù²wY™K–²’)Sæ=¢l)s)14åÙtñ¼®e.Ñ-:LÇô ge Î⢽öYP’ ÛÌÇT’í![õŽO˜Õ5ÑOFNÏFÌ7rSG np¸íŒySÝHÿ|Ê»ªÚ#Nv³ü2',Àe3@ä­ö*ýµÃÎ+/Ëuvð¿¿£‘\.‘$fÐä4õýW¸–0±¹ÃØÚ‘÷yˆ¨W®‹ä+]Ä7žf(;…÷37nT%™ì9äÖò…-kKwl˜¸˜EÕUÛVð>ÛcØ‚tÀÀç·Ôj{†¹•UÄñaÿ{>¸*}ûúdFw¿Zh½Úv¼¬fÚ‰ì¢ º¨gÕ…¦D؃™gßPKŠóŠ$Ÿ%¥ìè¸òw/ÚZÃxk§58¬ÇõXW1Üç®.TV$ŸÅøçŸÿöƒ(T9I]·ÊýÖ‘ØdÌ@´>d§F´îé1‚"k¢l]½ÃëHÕgJ÷^]yóÏP‘{Å%à5Æ ¡k\jm(WDŸlq0ê–ú‘-õPR™¸'‹üˆ$®ÙäšÈŸP,ìÚ¼¢tÇú±’BOgm{ûý 9ൡ ÖÛÒK¦þü©ðWoŽÏš­)êkO{>±Mþì “³|| h÷‘ ‹Ób´Žšu-›ÍTVÒ9IçŠ[ „^ÉÖ?Yò;c2?«!Ü´f§T;©6 3ûr‘Ž)?“ã™[`ádžÕ7EðØB5оÕùÚgÞåÙbA6ª-ÞÊ*Ïþñš­­Z[¿R]ò4:“ÇUá9[ʺ6éל‰4ðhÄgzãMµ7¦>‘7·ÊÿøÉâüØî¹-4ÔW[_ºKûæëtOŠ÷âø!nK»þµ;'¿òCûêú‹ªÚNP´Ë¢Œ[@=}À·±Qº~ÅÓ¤‰ÓCIÿ¡FŒñ_BI‡×Ûú´¼JƘ­¶ÃS2xnbÅAåjG¼—’öOØ£frxR*í_}ÒñGMó雿ê®ìIøÐöO÷¯USÖ›qò¥cÐV¹öÿµVzf”ßì::Ît%ˆ¦u×ݼå ìz­xÍŠˆØâ%?Œ¼†TBàsáB‰ x©Š«Csõ.Z¹£¾ûõ±º¼V¿±rP`µ•Õñ•ÕKV×u„Ü#Õ—,õ%„+bÌŽuÉÚP¦6”)©Ì Ç$Ë>ÛÓà·+#™£=äÛç¼ïžzÝÕÇmoUð±~g®ÄA"’ܾ ×;­¡+³ÌÖ–¤¸2zò´üô]¿*_9ã“IcÕ©§Ø(¥~©¦Q\4I¡^xËóz?ÑèT>¶Iël>gþ·sORí52€–)óûLYÉ”)ó^PŽø/s‰Ñ5A¯mºˆ½;†Ù§ÚvPDÎ Ðù²ç”ý~"{z@Ü?`[Ó¨¸Ãm¤rŒ‡3µ Bìòäêb<­@·h¶d ™á¦@¡ò¢o˜úáϸ-+µµ–(¼}1lÌÙ4DÞìl”ŸÜíüÜíIèì F­J‡äuÛ:Û…ÊtO ëçBnê«­mVø:÷Ê)åŸÉΙ¸¨’¤3À‰UΦ33p»6íÒ%ò­ci§>ã1ÆØÂî« (LSêÃB½ƒìe\€PR21`°Ç3ГDÔêÿ×½¶&¯\+XÝ ¢P5žÙr­™•|;ûýø˜e©ºšÉ}jGŽ“%L'R¿ïjÚí¤§ù¯ïÚ­¿yœ¯¯)¬Þè¥õ΀)§“™ ÅŒ–FhÒß3CN¡*'Œ —$r¼ò²š—;£HZÙV54œñ?ÖµúþÖc³!»vWÕ%¯[MO§ùñóÌ >ž ´F muJÀ§½Þ_½yðÉ×í5Ô¿ïó26>3aqf`H~å´rßVógÝ®½Ó$AQMÕ»Í1…Û¢˜Ìá¯~lÍɳo5oº&R‚—¿€Z®ã½EO®ºÙ¹(ÙÝ}@»îö%Ò]WÑÎîÑ¢…£ÄÌóc.H"oÞ~·ãÀ+¹“ytýFJV š‰}‚¼¢MèðŒO§…c#öNy65#¹ÙlAsLBlAäºR>ËÄMŽQ˜Ó0Þ݃¤©jßV|§cœ-–Ël”ùAYÉ”)óQŽø/sÉ04)†È]¸|øP8 LKô\(ÑÌ:p¡D8Dë|…hfysˆ i÷¯Ï^?Z"œqKóã.3QdüJL³!1Aÿb·qóºªz¯Å(R+€È[­ÚŠZÔ7Dü`'¹uµÙÙŽ •1ÛÏH¨ºJ94 Mu•¥’Æ660ûú¬„.T%<€q¾DÆÙÑŸ‚纱4ê‰[Ø44°ðv’Ÿ¸Ó„šýËT”_&ðÕÖ¤©Ñ;㫪2ó©ìLfÿ@„`Œñu¹TŒçÉÓd<ÜÇÖŒ@­¨Ržh±Pˆ©ýc<üàu¡É«ÿý5ñZwú/š©€×HdØ¿ü®X×îIõç$âåLÃ_o²„ïþ¬ô7Ñ> r7“R_>IüÛ縌"Ý}8|Pé’"$–)ß q[3oi;Ög~É_áÑ@:0ã£D3xªê¸¡ºH^Rè)ç£{¢Ía¥µ"çwIxün[éJ™ösf)3£?¼Ïf*ÊÇ·~;ÌB EÂe/{—•¹”)+™2eÞ Êÿe.%ƦÙÕuÒ…û-Ɔsq²"h‚håt…ÿ¼:HRèGvWÐõonÆQ£-h¬ºÕ »ž,1¾ÔÓÍΠ ÏJ±…'¡x¶µÕü‰øÏCÌšzdDÙQeXlAVa°…‡œü`Yq¦UËÄqÞÒeãĸÓÍëN^€¨_A}ö­9yCäÍcÝìÉȱ#ãõðƒgè÷Ýáó–ŒWĈ)8ù̸¹ %´ÅØHuizÔR‹"ׯοÔåµtîØ0><íþ·‚ë\éoÿ2|SGÉßNð¤ø?¥ò²±¹¥ßüTªÌ¬L€4àt—"D|Eu»R½½\ñÖÏÀHÏÊOí  2;ÕKîíæOõ§[Cø3w:L®´®A‹Fó%E€TFÖôVÖ¥&†ˆìDÑÕ¨[ÒÉFöiã”< ­#`­.MÔòú÷ ¿r‘:!{?î]>´cVÌììo¾³±‚%y´°™Ë©§G1)Ú^ëÇ»ºmX×»gÈ]ýô•MøÕ“ùíM37lÆÓ)ú?(?Vpü|’4Ts¯p]Û¤“¦lAnÓLz¥â±Õ`áUµ‹JÊØ8-Ï÷®¼ O)ëÝ{×Dæl;|Ïq¹yÈ7&+¬z2f|©£› Ï™ÎxŒk!-ì) Ÿ¿%óè˾öZûꆬf´¥ø)iœ°ñ¤“7s"§¯ª›iŒäúc®Gák[fÖNïÓÛKÉ¿îâL}üŠLgó;þŠ-¸ÃÊ- h¸ì]VæR¦¬dÊ”y([cÊ\2œ£Öµ\ ÿ2”¦Î~F¯0XÕ h¬$}®Q’BêótÅy9軩-/RsàÀZøp&k”@ßw+`NeQl6-$Y¬„YÕ@Œ¥ë&°¬æk†JЦó0™-Y&ºbEc¨À°5¤ô³Ù"yåª4<õ<ùú„½º 櫾”ºÁm9DôÎФÀ6ûqo ÆE!Ž!Ë|½_C$qÅ:KäÌ ÇŒ(ÓS3UÃy£Þ£…C(¥:Ž%ˆCîl0‚LV`µû/}t_4â.ú«Áø¬ÜeçÂÇe{sþ±B¨ÊºûÀžµxzÌOÐnOÞ8O‹.‡3ê“&KËïšdÔ°P•2÷.;ãó·fø²='1ÛV%rd󓈛¦*jÌ9S¤Àé«j“áÜtN<>ézñ”»'–0õ®õÆŠt6/ã2÷›€ˆywÊ2e.IÊJ¦L™2eʼ†&øËù »–I*°InFc…M&”¥³ìcƒÞÇŽ¸ï_“¹ñrùÕ&*æTà4Ä%±OGÌݪ“ŒEÑ4I„y¬Q–n!ÊĨ`Ђ’ñ1¹¥Òøíÿì¯ ‰øÖ÷¬/~µËØy”غŽìlŸ34F_ò$2\À­t¶â]ýúÞ^Ǽ’‰g„ÖÐ"ýÊ‚Q’ÛšHsE18A¤ÎŠšÍjUbÜAi„5©¾¤½‰Bؽ@Ûì>¹©!ïwI%…„ºbì@ÎZ¿FŠxå?¸B¬ÃÛbïš:xŠy~?ÓV­µ5è¯ þ^ò5úİ!£ÑÒèöËÇ ¤± É9š±xÃ%ÁÐ1÷¡Mc?Ú]q׺é€{.¯—ȱìÅTá)es°ÿÙñ¶|‰O™ÍŸŒ·άëT"zKCJ2—ß2Á5|ÚÑù‡òJéúË”þ Ç3û*îÝ:Uá0I™–‘!‚nkî†K2`bC›Š©=1ó®Ëô׳‘­z¾o¤nSÍÐEÎÿ<œ&×u\¸RM™2¿¿”•L™2ïåˆÿ2— cÓLgÃEå-È´‡×@`µá v\I‡ÇÌÙ­‚B:¹·ŸOË&7#ÙwúR&ûÁkŠ SÑg2~?±Wm¥) HL!L`'T13EX` N§4Š¥ìõÉ„)MæÜMþž)ßÕ®±³grô4ùÆQôµO|â>ºoÐúÎN½ý0ý¾›PÀ"otÖIOïó|ö¦©PcÃìÆ‰4»Ð³©êh´Ç²dÀ3#ò¸¡†úþKD]„›/µž&‚£tuÔŠUO,¨#6Áײ¦æ.Ù¤&³Â/{mÿxgeóÌ­-żÊmŒÈ6›ãdÉaÓSÑ`!I&ú†é݇¨©rëj³ª…Õ~µËd=®µq7'?|¸qûªìßW?üª¿Ð;mÊ“…5›ê *j…DñŒ5,“N;CQÆæÒŠs[vKÊ`‹Üb¦?3m„¸›hm1»PDÁTòÚj~t·á}$¾YtÆÖ‰]iÎw$­à­Þen;´â…ÜS{ÉÇ%ÁÐ$Ï“¬µ¹)¿º©¯vîêA|Kñù£ž+×·ÕÉ““Ê*$³B¢BêO£¦ n(ƒ¦¸Ä+ZJ¥G²±rÔCø:è’OÅOOÔ†YMð+Ïž ¿ÝØ\ø0.Ö«ª¤±ƒ3Þi4„¾Òý ¿Õ»p93EçñœýÓ¾Á’Žà¬<p…–5Æ"››@á1Ù9«±²“™o¾PóÀ)“““Ór—åÔã0Þ=€…1Æ`Y[M^+ê—¿ÔÚ÷úXí¡8ošœŽtT\T½¦eÀÖlκ2e.yÊJ¦L™÷ˆrÄ™KƒS£ÔºÖ󹋒Ƃ¥&°7–©Ê0ÜU´ª¼Å¦-›fÐfVUj5¤5`«PA¡ƒÒDžGª禀åýU k Z¥õ&F¢’·ÖUT+'•h1¾ðºO½(6¸N–ˆêì ¿b‡|ÌüËÿ [«è÷í0ë*¤à°}hÊV)no'^Ò§’ô¬’)È´S8cY’JÐ5_û”º·×»ª +1ÿëZ}`ŒªRN/5¦Wh}KÒLKÈ5À®¨ÕFÆ¢ˆŽ==Þ?Ù>‰ ÿ/EVø´>¯kL½xª‚CÃ2 ÚÌÏ y«³Uíl©„ÆGáÆt_Ýaú\0dz¯ª¿£`#6»2œðÔÒ7m±>01ýËAû›¡wR)y6TzHu|8qK~—düÿìwxÕ¹ðß™ÙéÛ»V½wKr·åƈÁÆôjœ@ $¹! $¹ÉMá¦Ü4R @Ø¡…f:Œ ¶Ü›ldIVYõÕ®¶÷2³3çûceY–e|÷»ß…ìïÙGÏœÙ3§ÌŽvÏ{Þ–®aÚTÉ8¤À$Hø1 )‹L²—‘…¨¶ ìj6ØåU¬¬˜ G‰”‚Qôûu6—‘ ö…ÌÏnjÐyë,çÜùÖz_›¢7©¨ÊÁ»½š'cÞèÖùÍÜ>âµÌ\ç7ÄZ¯øêã¨ÓG¨ônSa8¶ 8´·“ZhEë¹^yŸ6ðÚ!©T+hŠäÙ½\+H9LðêÜO -dzÛ©+æ#¥j7‘‰XÕ| ST¯KÄ©››¼oÖ©7†j¬þ-®‚_N®Öí7Þ\5Ì2”'>U¹‘BÌ!©zž¢O%â@ÅR”3 ¤ tªìõ“cÂ"J•"úæ š+ªR¥J#‡ùZµ91jÐÀ§˜[çA–ûܬAì6•p‰Q† Y[zÌý~þâŠAŽ>~"çƒrètã<›µ.ËòEæI2{÷îíí6Yr–,ÿº”••-Z´èVÎzügùb`¦ëòS<ûq»ÝñKRÑuÊ©{«½Â›¢•zúå®*Ç*r£‘À¨A+ú1å CÉ«¨ÐL˜Å:Nùõ>Aº±à$=)Y¡ ™0 :É›¹@ÿ˜ªL#G|"kT\ƒ¥Š=#L1–Ælhb â½ý¼A›^>wªv¥´ˆøý}hëNiû ùÇ›ÙkÁ¢ß–C–[õɦªô‡vdw•¡•g8ë€qø$Q“ƒxF‹L(70µ­^”Øô¶*gIÉ<‹? NéÎ…^ÜP–š*Þô95`ÒÆOôêØU¬u•%Ë1âuË‚¤uˆàó…óo2Ï¡òÂùH?ñëgÒ8Ò±X(%qió7û î4û-&)ß¹H³íPüñ·Řo(ˆõ$´§‡•‹+îˆu~qئ‹™¹0ÒæaÞq5.¥è¤/Mùu³K½ À}X¨ËÃ=ËÊ‚­Ý´5‡HQôŠœàÛùQPÍ0 ׇŠ5î—;*üÜŠÒ$‰ÝýÔ;èj+f³1NÖªI.,ìmSð3fÃ؇ÈwP€á©&ßzót.<Ä­õAĽíü5‹™¬2¥ù(‘–ÏKΩ»Üĵ•m-ȽfFòí65N‘…U¹¬P® ž%öøùpN~H¢y©á‘ÏO3– Öçã=qj^Qø†¦Þ Qa¹e´òŽ)Ñ‹÷ú ÷Øe…6!‚–ãã +3Æñ˜žO†[bE¬€2±‚žʵ)’‹Y "O 3ÞòÉ~S›Ë0¦‚É'Ä+­Öæ‚ÔUMéÁ˜ñÀ ¢‰jú¶%19)ì;å±{©Õ*„)ÁóGKæægN-mZb ìÌ^mÉ.ËòçŸK21¦¦¦æ`4Y²|Žèèè€O.Ìdµ1Y¾ »ùVb "–PDŠpœ ëcÇ:9ŒÀKµ’Y•6ð’+¦¨6'ªr‚zyEÐD…ôÔY_“Ý£ªY•ÑÉb ÈC€AJ“OÇÜN¾\C¦¥PÇ*jUiÜÖ¬ Â&“¤Àè€ë?_Ómh¾`[žÃ.[A”¢ÇÞL¾¸›¬í§zâÂÑÓšÙ•À0g`|'ÛSTçŽëdÜ^ìÅìºEÇH•è r&mÜSÓr;”æÍJŒìÐ]öœŽº¤Ê¦œÇÎÃ_öšX9úÚ>ܽjöuêÜ) p•É#q „`TAO3~–"âQZ„ÃëÊ5Ïoóüc;qý jihæEOHiÒDc)dÐÐMõ‰»0¬å$U_"ç‰ÄþAñýí£8Cuh ÖX–Ë̪%òX³×ürмî&¨Îç;%çP§öÆë"ŒuF=Ë*ÖQJÍÔ˜ŠTlé®jÒ{ërF®©î:>`~z—±­7F*9ÚHj¹$'ÒX–xdaÔ#ݾÊ3ažíh¬…Î}mŠËÁÐXÜ^øÍséõIœå/©týá}õÒRøÚš³k÷Šbñ©7¸åó€gQiaš2X› –à`ÈÂyÕ!89„.m4:’à”« ‹b[@IÀêÈw=*S0/Ÿ‹XéPçŠ%=#ÊgŽê‰ E¡ëÔïdÊ5Ü­YápÛøpD à¤ÏËŠÏv4:ŽS9T !0R©Bu!äc´‹õ¡Jn˜£Sqáì'd"pgR‘’°±ˆ "E†C\”ßÚ%Žù•@kb0RÒr‰|C “ †a0hV™¯Ä§ú„!¤j.gnkÏíó_RëøtÊsyV}V!“å Î?—d2b †aGýP–,Ÿ fÏž½fÍš7ß|ó“K2Y²|Þ‰%ðS}Ä©E×VU•³êdƒiU2ZT [·`dr}$ça1U¹T^µÍÁQ¯$?Ö½h¹¬uuŸo  ßc`”‰òNí]¦¬D2ÍÒÃj2­ ö9e³ZöM®6ßd¢{[©>êRýpmÏ…|]2ðÖTý¾ž|I¬+”iå'?äÕ4µ¼BÞÕ…»} ³!=%ù3;ë{cÕ/ ‹ÍÉŽ!~©6>%ÛäÜ<0·d Uà7½«½wÝø’2Û&”8̧¦cvdiÎKîm×ÀÚæqˆ=ý J©µ5œ’‡“œÂØ~ºlãÜöó/gÆOÚmÒoX@—[w¤ÿ±=9äà»|r˜\· b –ŒÄX–iªKV”¤Ÿzƒé)þí !’2½j·&||ðžj…ŽN† éʜ¥‘ò¼0Ϥ…2h Bðò"¹‡Á’‹Øö-lN—¬-Ãl¤k”£ƒq²Ö4T¬{©½B)yqOBÁќծ¨Œ,­wÀkûrÊõòWWº –Þ} ú|L÷Ók‚‡Û8ز[¿m¯÷îu\Eqàgïkß;¡ª2Ãâ†sž žE9zÙí#2q\IZŽÛr†N¯\„ª½r{¯¢å¤ ^Ü(µHæ=àaü˜²¾‚ÈtkØ€ãy¬P$e"üók†@BbF9±4""JS=1•lXˆd$‡ÂYÆd¡BÈ×¢D* Â[ýF·D‰ê@ºwe-BK§ÆmÙT+n- @ aÀpLG¢ÒÅþŽ´œFźhŽ&nÒÆ>t ÌI88Zn+¯©ëäÈäì âƒ6r¸_<œf–ºœ!Õ³ çЧ&ð™–*³tÚì0ª³’L–/8ŸÔOæèÑ£·Þ~'þÉÒgÉòÅF–å§7ÿõS¹ïg=þ³|xw×éÅï[¿7š¤–ñå )!e(IRTk@‰aФi!>×6*té›s<<êp™ UæY¿’ãÏcà£JCäPÎ)ç#MÓ² )&I––•‚"N²¦9 Ä’tú9³.Á‘I.zs'¶z ÅsÌ0ðOçÅs°ñZ¼ÛŽZŽ$ÖÏUl>¤—I Ãö£Ö_’î‹#ÆâàrcÛÛ°‹ëå¶^xqVWï— ]Ê9#¢ÿVuO§ ©*†a؇Ç4Ëf…’2ûVxæ,ÎQBM3w€}ó´²L-.(‹7–ù3'ûü•ÕÑ „ ÅM’9"UHóEm£¹õ6Ç”pš¥ÄÐ(¶aIœ£E첋eEòÉöÄú¦d‡Çôð‹ª¹ÜÈÄèšœD"És莫’G:ÈwZ°æúØý‹ºíãQW骊˜ürÜóÒòT·‚àôU&Ìf¥æ:ÉëÃÊzQEÖÍà‰•E#h´ ‰Á’*–$(@’¨ŽŒ>qŒ #kánšá+·¹]A~Û)†Õ÷цYÕãæˆ¯lãÌlê²%äËåqw Ó‘NýÞ…&>õ7/?èCºÅ#{;tëšÏy–Ìö£×_€¸ªŠö‡°p"£Ù(,Ÿ±Ö݇ï>Jìì@ž”*Q¤;iÀñ%³1½…q‹šö¤éŸIF ÃSB ÆS€X QÄ’q“Éè€W¿Ò:êH¨ RåæY֠Ƽ™u –YZj˜&P²N!ð„4’b§œï÷qñÕÕ10 D5ô{i®Çç[ºÜò­*yÛp1’ᦪñh<+]Òè{>]H_Ú¥h®‰]ÕÞ×e:`/¾eÑH&ÃÒ?%õª¬$“å ΧðøÇq\’²ù•²dÑÑ‘^é<²ÿY>×lÙ®@+*%7¾6Š%= †a}^îÐ_¢N›UécBà UVÿšúÈã;K/*âÆW]úÎaõÛÝÊ›ý*VX)ÄÒ1‘T‘bdJGÌõåÓHJ2Q“çO Jéˆ8òŘöS( 9úø¾N}C)¼~´ÈHÄ £Ö’;È”±ÿtv<MõXnì>A"½~!±å8}hË.}‰:ýÕÿ"jlÐ1 ×-–ÛzÑâ™ð[á3Çu’¢]Ždœ—å‰÷i[:̃ÆòËu:ò¼Ͱ¯C‡$yÕŒ`‰ílŒæÖ^®©,Φ£7­ÈÓ.¤:8:µ¢|àåÎJ#éÏîÇ“ …(ž ÷âîøcßÏÌkª'–Î×üé©‚(¡6’–ôÆwLåûÓ—ÍeKò<‹ôf¾Ç÷u$1,ÕXé(5yí^ãQW>Ðð• q¥‹²(öti+si·“­*wÆrlƒPXH ò¬¦áÅþY+LÝ®öð]O"U\m)QmIœöÈ€a#–Xƒ—Èò#{M(^”ŸÄ"–ÀÞma yî ñH;qõD˜J•ÿÒ‹RŽ1jouÝʸÙy³M•”cÒ`'B*ÏÉ®K`¾´Å"+ð´–ƒ˜€Œ šÒų¨©Vjª•.[’>ü‘â¥}¸V…®½8žÑäø#®*¤"C¢Ê HU0ÞrþœCsx`ÍO‹À©‘E9ŠÓKõ½z:Ȫ4 Ã@"]áÂQ}¥yz+b驹’|¦]ƒ–óO¥B”Ú¬—ÚÀ„ $‹Ï%†ÿ¾ËüªÝ*$…ÕEÁ>R=ñ_|ÚØeY×±,Y> Yÿ,ŸkZ;Yg¸vE¼å$ßrJ‹áÄÞa¦\jl)­RZTá[;wš ¼ö°"#ÆÄ“äXCÌwWŒ˜´ñèERI"4œ+Éœì7Ìd=U! Eød–ÀÀÌøÜ@-Œ/ûx6=£Þh-ÑsÂ’š‘obÈ£\RÒ¾#P+KP¡øø Æâ‹c&ø/lE´ÅrÚGaê„öÈ ïâË¢¶ÐYµ/ö•+#ùT*<{ ËvëEîÉ"t–,ÿš|:Iý³˜†Y²d¹YmL–Ï/OîæªÌÐrRiPKíCŠk–…Ö-û$Æ“dϨæ`Ÿpì’:ÆœL™pÆ9+ŽÉÄÔü˜û{x]%;­C£”!™ÈS%1ŸRQ ‹‰¡ÌŽ|\d ͳ¡h ̪Ȏ^s¥Y±BÛþ¾§I¨Rs6žX,ÐÝ@ï¶£ «±AŽ^.+@ehé\p¸àoïù'ºÜÌŠÄË{urÄ¿xŠ ·Î¼Ïg¼´Àn`ƒ£ªÂU•¹çX+|à¨Ç0¸yç{Gõ}eIîÔˆÕ'zuOÑ|ïÒ±)bLß»¶!°h4c ±³¹D8*µ$×ùš½zÂúHA³#>r×iñ[«§Þ¨„(s*º©žÀÝc¯†ÖÕ*¯kYV Ñ`¸g„ÿËnm™AŒÙ¨ÆŠ°Í$ìmוX…Æ2_‘ÁSdð øLÛÆ ÷èä´¼¢ØUlŠÏ­OÆâ„Ã>Ø¥ÚrLþóÉc¬I‡d´º,º¸üìåñ’F×3{ó=h½¢ÔoÖÆ`ÑŒÈovéÄ4¶ë´âË+Ó'¢-Û9årmZYYœP#ûÄL+t±@R;2".­?g^5eâKÛ9Ó\ÕšüöÃNuæd2(L€ÿdø{û•É_¿> ‰Š[:c¦j¥w™rÉœÚˉ) 7ÔŸ˜·Zb¹ñaÉ&k<–@€RJÅ} í #Õ×矓:f2z,)gƒæ=£9——pÔ¸¿ »Íœú¤7÷"Æ ¶º Ëõ®L ΛXbƒÙ•XB1êeZN©]")D%ÛÓ‘·¤f¤©*VQ˜<Üκ…ž½y›©¹*ÖXž:”É'»º—6Ç.4Ú,Y¾d%™,Y²dÉòqÄx•I¾w]b âÔ 6÷ã‰'ÉRuú'[‹1»±!phHsrXƒR1"Ã#PSŠ„+Å[aÒB«oTéúKšiÄSNᵆ¤E”ŠÀ˜dÍ&¾Ù€ß´kÀÚ¤ôƒ4¾EÍÑ©%®ý½Æ+gö¯2žÚꬓe¨Ö ™,™°¸I€¥säkVOýiS*É3r>j“R)=OÌÈ¿³õûŒ¯ è0¿é™öÆ[jOdZhÌ}Í^Ó±>—vrx1³A²êQŸ7Í'}mu18"•èaÚªºcI4­®+TØÎ]¬u\e=«BK©IÀa†rÖü‰jÁ´.ŽQb26à7é=AG©§ûÊo-éÌHÓ¢D g݉½qíÞ±ÜËŠûŒü$kII )D1DKpN€JL0ês$ažIóLÚ¬K6–C,¡èq¨ž9¬êDrBS`JòËg‡çÖïPï¶S]n®²ƒ¾}•ÿüÀè9ZùôY²|Ñù´’ @[ÛGmm'?¾f}}C}ýŒO=œÄñ­¸tïO+;Æ™OÝÈäv>ÛåY²üw“õøÏòù…gå­ìöSf½À³R·_KŸR&ƒ=¤X—(1%03ŸvGÉaçûÌÝ×à§æºоQ¥’MóLšgÓ'z8µ‰©VuMigŒ(É4d)0î¥6$š HœË?æÖ_Ww:Ã3®2ŠÍþ“COˆ7ib—åœjq–ËRAç±1@²ÍKf§ÍÆé÷æb ¼»¼nŒP õÒž””Ä“ÖPÎ5\aúD¯¡±Ì6]œ  e¼Q͓ݕח jǵU<“^ÕÞrÐpërϤcIÅûGca¢\—n,›f5¼gHyù½p y&רŸ5iÏÙP/Ѻ[\eþÂý`×ýîÑè5 Ò<7µtZÄhxF¼²69/º®´oמp¥Mjª'x&Íi™uMŽx’"ÿð/iijsêÂÀ‘ÉL>ÍgÚ¯®8Í‘IŽL.Êm‘,Û»Lwž(Ù’ÇÞ! á<›€xš0)â±$ÿþ!½3¿ºÅdz’/¥Ýã-Ó*R7ÙŽ³Ä9R÷HJ5„& 3Kÿ ²ñ‡ÕzÒyõ¬CSè¹³Ò¬ ó8¹«?ï–âÓöãT늀)sìKh·;KVå÷¹sœ¾pI@A¯ˆò2õ%ãÑâæ#pAÃcžMWäǪÇ,7Ììùá«y‹"ч¶ª* bsmjICtõùÝêÝ=Ħ­ÚæÚÄ´ÑÆ³i1³|áù,:™¶N>pÿ}E Ã&¿›)þׯ_WwF1Œbݯÿú¿¼·7 k›yÙÍÿöÃ//µNõ‰„BM>Hþuí §ÿcë—w_qÑ#ã„•EËîøÑ¯¿»Â2Ýy—ßw?–K\P‰”8òýewS_XÔIýýªy?±_úħ.ÒbÓ×ùo íÝûçÿÙß¶wd M ®ùÙ£ß^ ÅÿéðàL!Ëÿ2²ÿY>¿”æ¦G=”Y/ÀÒ2ñ“H2#~u¾k[»~í\„¹G™µ!“6¶@àrtù ¨PŠmµc®²ÜåÃÊ‘Ìê϶ãÇ-^Êš+yŒ¹¬ä9ëò>,ªëˆž÷‡ëŒn«? H&]‘s~šËܯ³ÞµÂÎ*’MûßÚJ-<¾qÑ@k;ÑÞC˜çøÄD÷ cw.4×¥®¿DØßŸÐÅ¥9™¸½9Ù;”ÚqR“¨Û§<ÐË/¬ˆ—ÛB€/Š·9r{ +»ÎÙ}(±EÄɧwçÞºÔñ£WsoD/ª›&ž}˜ž½Ô”#:xÍEêH¥É¹¯ËÐPrN–L.ÎéÝ;VnIjßÚ+—+c¶iÖ©i1sãf{³+ýOï²’3ô‹—廵ýi“°ñ:r†6æk\piíèœ$Õ3¦;íã†z¨‹92¢»qv5Õó&VC²D½ÊJP¯öš2%|‘»æä˜ÓoÑÕ±¨|°Ÿè‹Ezê†ÆžçŽƒ$vêçæfŒç‰Å‰—*VT‹;; ØxµÝvÔrÏV‹$ƒÎp×]wÀã?ŽaØùÅ3R„ÐûÄWþ:rõnÞ¹ªÎˆ<»ŸrË>oó:ëùjO„ãg$Ï·½ßªdч@ÍüÃá®Ð&F>üÃÆ _ÿASËßVéÎ4ãÜ«×Ãǘá‰þ¦¯ ¾ñ\—¡˜Ù÷÷ï²+ŒSƒOK¢Lø…ŠŸÙûÎwî|$yϦݷÏ3ƒ¯çð‡Ô¤;wáá}’)dù_EÖã?Ëç›Y|y¦±2 ¥9⨇ÎH5OINÈ2¨>a74–ú´œX¬÷u®šBˆrj . U‰¦â(ô°£Ç¬f•ÐrRé `V­\jrŠh¯¶°”ö«)8=¥Äø¢v4•cA‘½îò S.à±7¤ˆ%ɉµ&mÌÌ }£êPPØ×†Ý°¸¯3V° ¤¡¸ÿÉ×Èå 2؆•öQÊ€æêxS…PšŸ€x’Ôói ÃÒ±øŠl8M–— ‡»Xoï ¢Þ#šrƒ {T~œØ8÷£ioBc™?'òvÑ÷VDã5­mžiõZ"J¹Ejg§%q,2Ív«HÎ4 on/œeùÈ>ß´ ä´ ¥¿'i‹*}rDµ¸ `lÒž|Qô[Cs¬ã•9Fh(+·ÆBÊ6§áx€á£23ŸVkð† ;Åùœx[Íð±“B¦Ý3V\žŠÍÓ9¤ŠÜˆS^¨K´+‘,_\áÝ|*?cŠ·h«Ìñõ—$–ÌÄ»Gîbm†xËQ´ñ:r,¨.å"O¾(.ž­hªÿñ¬³ +©Ô–îª&£¯Î2¼Àäp' ô[Ö4ž•d<ÀçÛ§y|â‡{ͼI¸wÅp”à:…§"¦zµç"íY×É$$´Šàä ‘¸jôÅ­Ú«±HÆgfÇU»ÂªpŠr¥¹pBRÿÄ¢R/‡CH þ”v·l…eQ*$k[R5+¸ö$gMZ5=n“ˆ­)tµŒæ\H’€%cûíæ+›úDñ#Êe³BfƒØT±îò(ZOS®@Z¡Ë§Ø´UÓ\“¨(L C6“L– >íò»’ÉòwÞùÔSO=õÔSwÞy§$I“‹²,OÔDþí¿z¨mö¯žýɵ³ó5 «ÍŸyåüñ*+ÇÖ_Þ4¿®ØVR=ÃC{|šÔˤîdÿÑ·†«ÖÌPF„‚T-»åÚòTïGQŽw>ýËëÊ‹låM+¿ýì©B8þ çþädâ¿;oÎ7ÿ½[/[²tv튻ž8—Â{¾óå\ާohlj˜uÇ–QéÌhϼRö-Ï9ïÿñ-ÆcOïpKAüàwçÍþúÝwÝŠ¹ .~àˆ÷ÜbÄýáÏ®^ZŸ_Rd«ZpõÏ·¦A°ÿeyãM¯yåL›ÑÃ÷7.xà@|RG¢óx·XwË͹¼‚ä-5˯[?SƒŸ?<éüÆÏ«ùàÖú‹7 ‹ vì™Ë~þQ ¤G·ýlí‚ÊÜÒâüšÙWüúd¦N6ûú ¯ÏB0Ì*d²|NÉ•¹ý4ØL‚ÝõIUÁ—4ºô*ÝT›ã€'È.¥0BAˆ1ŒÎ|µÃ»G•†í—f:®^îß°:¸¤1&+U}\E…:©c±`œ±•ú’¦®ˆ²Jã™c2,ÊKÆŠsàüó.í¾SÔ†5‰b[lYaŸŠJµºŠlt¢W»û#˼^Ð7Æ”ÚR_»ÊÝXU)±½†Ç¶ÿôýÒ­vµ‚C>ý;½Ê~/ëòKV~å aq)T˜±þ(†6Ûä¾Ð8Ñ«íp óR§º?íÔ/ª;Ï?Âk5Ø[œ¶Ùj¯Ž db¾eîÕ Lp¨ÍËšØÓc8ÏNÿu”BgÜÕ·QœÓ&MõÄÆëHsÔõÜ îXüìµ-›ýkz¾6«0츟F‘RN^^Ý0«í؉”›T©9ymm·šNí°ôû‰1By<¤QðôáíæSù·×ÍÍó?ún^,©ˆ%ÿþJŽ,Š—-Àl”Ku¨wýè±ôõW<‡ {ØÕsÄב-GåÖ¶³ î"ûêŠÓCÕ©±ü|ÞUgJô ­'¬Ê¼;²,Ðù–4%_ÚÉ—k„x’zýpA¿‡£5âH,÷©þ&¸¦àhÕÄð¥´&•” Û=A\ u; ÓÎý!ÛNWÝÛUc„þd?{hØj:537Žã;,›ŽÕïµõ{ŒÓ6®”b1Œ ˆº½¡²¥Ói„†Qá)¹l1Ý¡%‚Ú„SÅÊà åi¯¤R%ÊÈþÁ Úó´àŽ“Pžó…ðÖÓãOÏÊ¥ÂúK¢ÖÄï[_×ítÊOíæؤ±1È 3YþøŒÿ“õ›6mÚ·o_ww÷”j™¿ñž÷Ž ?[jƧè'ºù›{.~lÛ“KõÞm?»áîooâ4~=:{€ÂÇßì-þR“sâ¤;½íý~E^….qàÁÛ~Ò}ýs_Ÿ ­ºã¶›,Ùý‹ÆI—§»OÏ|óµ_ä£îÇÖ^ù£7Wÿ㺜ſùëõǾF=¶ûÇ ÌÔù@²ã¥-cµß½xv­ÓôĦm£koÉSB(5º«½ñw~SÂÄ¿<¹(ùŽ6}õ±¯=_©Mö¼ôo7Ü÷ÀÌÝ›V^~cþcO8vÅÕV"GŸÛA®zb;©/2¯y&ûį~ðÛøµ+fͨ-ÔS€rêð$/^ã—N©95éÖ!±Î‹ŸøýOÞ-zpÏ ™ñøhg?ua‹»,Y²d¹<+-)¢ …R<+¹BŸô·ƒgÄUõ-‡L «’.§‹í=mX;?ŽI! Ía’ùJêö+nœ›èNfU CÑ|c ‹15óÁ6ÏX{ø¨¦¶(SªéUWÛõç-'òcfб¾i«²\•ªÉ'3V7•²*Çóð*ßP|~Qèw×÷ÅŠžaþÕËxhé\a Î,ÈMÌÈ þöɺrÝ „JT"’侸r¡9¢âÒqF ÇŠU¢=Dúè† 2ç'Ę 6<ú裓k¦Ãc1Ƭ£ÏžÉoöµÀŠï}™•Â(ÛÅ÷Ü™w⥣a9³ ŸX#„PìÔ›íÖ+fë0„áØ7g×U—TÔ]úÇèUþl%Ûùâªû¿2WG(t³ï|`UúƒÚâg/P˜V}yu‰U°x‰aäèpòLèÄN>óV áÚf#StÅkÇóoŠ™¦ýÅw]ULC&1ð9EÜ0ëò•:`Êò+¿~¥¶cw_·]zSùéçw8ÓH~º…_sM3¹#Ð,ÿå–Ç®f>þuÍ*™³îo $'Þ<[oºÆÏŸÂäÛ~vþ'FN·÷ûŒÍ©­1(.4ë,ŸœÏðŸf·Û3NÿY²|NY<#z¢—À>ÝOG‰-lQ‰z8°èâ®0á°@ˆq\¡ÀI><¦Uç(KÕãš0­P=‡wj £Õµü²fnÑ©èˆXì =ÿº´ëg:'ŽsŽ>Þ76®/êa¿÷ŒñÚe±ÛVúÚ‡IOˆksØ~¼«ñ¶Ü¹¶Àµ•Œ$d!ñÈë¦Íïë ÄšüÏu£ +]>Õ·—]5{%C+*…Û.öˆñ$”˜“édâù6ãã­ow)¥TZ–å•Õ^@€$y~IøÙVÝ£ÛŠúFÕK*^m±ø¢Š»/€hG²ìM+O˜Ï¿E{"%¶´ãõ>óBƒb9^lJt «§ÔŒ%ˆW[™ÊªÇR²-w4•s^c¢˜–pz¢¸¨>´£¿HòÇp X5©â*ë kUOl'·l#^úÌÖHÃO0„]º&ï‘^³ß~_B@¨,ª3:)E9tò™ŸþrÓή€Hàr$Œ¯NI·,»¹þ×O¾çXeÇ3ôk¿SJMí-¾ôÞß^z/ ÔØ¡Í÷møî½Å3^ÝX8exÓ6>¥çèd2%ºî[üæ/÷àUõ£Ò‹îxàÁo.›6FB–ÿ÷d=þ³|®áYÉ!€gÒ9Ù`>I,æ «fyžþ0d‰gÄUuþ}ºµÍ ˆû µ$ííg2Õ)`N¢ÚYd¯Ao 0ˆ KÉc1íPg5&¾¼f„®Š¹<Š!'þû×UÕ¹¶Hª-y>qúÿð˜¶}˜üÑú REôùM!‹åÑéµeîûçŸìî§|cÄk'yŸìñؾ»l0ãóã ò?}¿ôƾLè-x§¿bÁ3•ÕÑ·zµ}ƒ‚~¼Ê~¸SÝéâ0‚°‡±päÄ÷ QÁñ“ËŽvëÙc,Ój-J¡Äšl,ÿoùHyÍ¢€’÷?{°Ð¦‹Oöbo WúÁãi5ŽÃ ãðÄùr[èé½ySrªiç7,Š*ÅÀˆøõ«ú÷Dk9"©UL[-§Ó"NrêÌg—v4\RjÍ)ê„ß0!Ùʯ^íô:>:ÙîR|õ*¦©V€¿i8N!(-<÷VàÆËÄ£þüxܲ&ß;!-|4b{­Ï²®ÔmŠªj>$IH’¶ö(GS–6Ù\Ý÷ÄÊ1F˜ R,O¾ À‚ŠžC׊ïÖ6çž“ÍlÂ6^‹=ù’lD«Wà<7®™éó›>èÓ)Ú<¹V>ÚlðÆz{W“$Kt€ºAï½Ä0 ÊŠ cŒ;ª‰ ô`ˆ÷&)G’Êe##ª£Z¨4ú„².'d1ôMî<©Ÿ•9å,&Øé2¤¤™IœÂÒB™9´½3ÿ£AëŒBG§ŠM©b“wVŠ «FüÊN÷üt±ÁvêTç|q\ÓEVÚÒ. šš:–Ca’ÂǼ¦"£Ç¬ #§ÖVePSàá ‹[Rš4Q³AZÜ€Þý[ÙôÛjöQ¦'ª\VöIÿ=³dù\ó™¬ËÎìLßsÏ=b ôôôÜsÏ=ùË_0lÂi˜òU3Éo½¼{ì’+-“öB“§7üyû¯gM6N´N4?~´pˆ^zS.1Þ'FªF“;3…:‡ õyS¨LIw_µê“gF ™Èhç1$O'É àþgw†…ÄwVÔ@BR–_z¥ëîï— `“šœTLu>ü­?8nn÷³Õj"ÕöËU·Ž!„fX|ëÌzç¸r«mý‹ÞϧÌónØ8çÏß:æHÝQ€3¼ 4>e 8MHB:S”bÁ„¬ÊÔÑ4Üò«§où•è?ùûnºÿ¿îúÝüi,¯³ü?&ëñŸåóÏN`0,šP˜uŸøZ&½°,¶¿“i(‹>î:©vX³.K"F®ˆª;H^?' )Ät¡òbÌa1²$†ÄT"Œ@\¦GiCé(R >6¶p¹%¥BiÌ‘€î~rÏ1Êéƒ>I~ä ³ÍË3Û½ùÈtÞëó;÷ ~:)|ègêJV%ÿé+žÖò€]¿åHÎÕó<û»c1ê;K‡'Û°î;R}ÐÃ@©2ÕÞ若šÍ;Ì>y÷êáïn)¿»ylØMµôá¸:tužbéŒ1otð=~z,„«9±$7Ö7€YŸ€›ç>{¸èæ¹-€?¥=5vìi-/¼¬:È’ç¬>íçZñ¹}ä+GɇîNí±Ç®™/1x¢žuO•®PLM9/JB㻇qîšh»µWóp±9qiáÀ‘tùê£n»ÜÖƒ-ž«¨CË‘ ¬¢s„UHFudënæ¾+¶r2æ’;ä~OyÎgœÛOxÔ=Mv“*¬ò›;|ÆËÊ;‹ÍH•ò™ Ø-­úÛ¶ôWdlFÔXœŽ&(“&ÆsÈh ¼Þä+ïëWO²â`ãµxwzòeùúË1³›ˆÎ|"b‹)µ-u þí¡Z’ÆuyŠÁQÿ­ÝqQwÊ•?Q áöPÞÁ¨±LÕм\'G%'’QNàõQZ|Ü|+–À»û)Í©A³M$Ä 1V[bȦ&'ÍT˜ ˜’.®~öpQŽ6:!ˆr´PlòŒÒÁt^]Ø>"ÿj¯0óbCn°Øˆ¦1ÒV™ìâäi¢ÕQ(©¹q‚ßa7o4z8:µ Ðùz[îWš§F!Ït´º8ä ò™®ƒaø 5½þ²it£n?½gHõÃuþH ve7.³|ñùìÿ÷ÜsÏæÍ›3gËËË3›7o¾çž{&{ücºe÷³æè6üüÕãŽH">ñÖo¾ùí×ÃÕ7_ɽóŸï‰K€RûÝ'}ÒÙ^ÆÄ‘{ÒÍ‘“ON~15×\Dnûí¦#AI òwÛˆëkØsjN¾äÌ1Á›ÙØðhTžêÉ-y÷lÞ‡­øÍûûwîܳcçž»ßøvõØ[/¶%¦6uNQNEDÆVš«$@ôîûû[#©ñékæß´Àýäu¢ðúK ˆ)ƒ‡_ÿÓ£¯é÷%%1:¼ç™¿–JçæÓS‡7}ãS¦À̶:wr¦ ƒonj eΧ¶}ÐêHHˆTê JÀþÿ»Ë^Ÿ…¬Ç–Ï;%9©Î!%”XSáøôNB¥”{£ô‡­žI¯jîm×&‰†ºj¥‰o0@§T®ƒ°P4‹Òé¨k"  k µ G‘bp(b©<Ç…gÏ¢¦aý%‰/]¤È)Ó¡ŠÑ–ÿò12xªËæo}xÓȯŸNÈ©¤Ë‹.[(°$Õ\Ò>€,Iá `ð«wLrZ\[oGé„Û‹»½¸ÛO¿Ó‚ÓFƒ/(¯¬p¬m¸¤f I²õF¨Ò<ØÝf¹¢"\’^Úà}pÝ(BÈ¢Lm9høð¸þÔyïRß­sB]~âO;õ¼™ó‡÷Õ‹gŒo´s´°²ÒûüÑ’xŠ€Ö`>60ÈZŒ„o´ŒLžLj s““þ[Z™o]ášÎ¶p¾5 9¤³„ötŠ•Sî¶ì~ã)gÞ/Í~¹³Šô ÁᬳÅërFXüIB fÉòÅà³Ea>«6€Ûn»íᇾ÷Þ{ÿþ÷¿gêdÞõƒùJHN´svD“T2dñ•_YôÖý³ª¾ÎÍzðƒg®·ë‹$×ÎgŽª¯|îâó™_ú»šýé³­÷Þç¨y&· LÝ=÷/ûêý«—ëMmùœ99ô™I¨fÞ¸»é•ª_¬´N z£E§~ÿã÷9¢pmé’ÛþøÛësq„ðs‡·~ºÆ§N¡àšŸ|yß·¿´ìo&SþüE󌃀BrèäÓߺï#‰àòçßöËÍd.¬Ê’%K–¡žEE’/L¸ý´EŸkU»Lã!Íù&u©áÈäq±žÇ…||Pm,Á1ñ; €[†°Ü¨CPkB°ßm[ië›ÒrRfG’–Ñ”:T£5"D"Wõ»•ØK›hB²Ô>í/âã9L0§¬ÕŒ‡BØÿaµý d™6èH¥2H¤cq‚N}p0ðÁa€Ä„ê\¢¹~d—Ùc~wí¸çψ‹ò’Í5á-ô¯ŸâËÕ©!QSÿùúè‘NÕ«­4`ØË{´×, fÖ—ÅfÿÜýüñÒKj( ÑÑ0†[×WzÎ_|—˜£~Τ€Û§pú±«óSƒ 9Ýé½wùøR5‡ë”ʇåBCÚWDuÌ­ã”…kT©kj›h6X­oµÓŒ‹}öíDÃJøã¿ó vV”$*Jà—»Táá±í‘ôw¯•Ò”ŠÄ‘ <—æ'ÿ°¿ÉèÆ¦!?c|×?{¾Ú®S8*ed„­ÝÕ²$¯©ï€ß½Jýä–•vt«¶ŽÀåRÓ €<Ù¸¼/Lšõ‚Y€°'_Á6®G““{šØe˱­» ål¼x dp jPT¾*ݨ÷Zøð©”¨QÉr‡Xw&o¦OÖ–¦ºÎ»Ð³K`#BaE|˜.3õ'3óÚöv¯±1SGât|Ÿ9žÈ3ãÔ<‡‘gÂ[óâäëG ¯š31LÛŽW]ÛGâAp´PƒiËMi$E{ú¼Qö§'JKTâü¢P¹-Ä1S£8]n”öõš®š€KjFžÙ_Pž8¿&χ\ìè¨qAY$yÉ\lʶš;ÀüâÓ’¼B2¨8ÉútÛ Y²|Ázè¡5kÖèõú ÕØ¼ysMMͱcÇn¿ã«áp^zñ÷}뛡{ï½~øáL™ÉÅß?ôÇk¯»áÿvtòØ«7¯ÝõÕ÷þ¼dª×ãçˆôÀ_×^½ûÎ÷žù’é3¤œÉò¿‘P(´ãƒw¯»îº7ß|óöÛo¿PµÃ‡wttd*dÜýKKK@«ÓÀÎ;þgF›%Ë#¯í³5×x6ýônÛÝ«.îö|ú\ÚW•ã{y¯îkk\}~Èͬ˜Vå–xÜò¨#èWZƒ™d›Ædex•Ì!&âNº4€T5‰mÃu³Œ#ÁÓ}U÷ÕÌ´™BŒS²¸M_„ó:edè²Úw€ÝrØ|÷ªÁ]ûd­kªÇ샊!—bù¼¤Û‹¿ð>ñ›DØ}ÒtÚ£211"0w†pä´î•ƒˆ5Êthe­ïííQB­¯-óu™¥-€ãm#Ù§)Z¯/W f&fÐAaŽ4ìå_oçË5XÝ[{XW¨ÍOµÓ€A—€ }úÚ¥a³A€†sÞvØîj°?øÇ´¿¼¢ãü›ærû:õkŒÀ+Û¸%³³!}lØqÅ—Í7pŠ ô)_^_XÙ$sa–ÙoUE•lçúfì:¨xq7º¸­^&w‘õ¥Ä°Ÿª%ð›6°&‚ñ»fõï$Fbì’z©ÀŒ~³3¯ÂŠ[Ôò—êº`4•s*•›CEÊ©¡ÖÑÜþþ¦ÃÐÚN#Øòù‚Û [Z˜Ù s\„a¥®½{X3ŠÜ}N͈[RçÌt×z k9S„ˆÅ¡»ZŽAãLÃîp!É(æ eJ!=¿¨Ú°&Ö=Èìk§¯]3ëJªÂ'>ÒÎ2XëîSØ §7Ô,›EÛ’'&Þå†ûU·]ó)eR_¹ÎI ””ØÁZ‚£.e÷OœŒ'Ém'­Å¦DE¹ØMV–¥ºkBG£¤ÆÇš@&¨˜¶ŒH¹øèDýX’êV¿Ó£*Q‹ J"9ú¸Y€–žBIÉùï¤omãhƲ±Ï©ö2KëÏI/K*6o3¤ø›çD”˜·µ›l›îóËwÌ߿ܽçÖT•.-Ý>ÅžVfýÅQÈ’åóÊ‹.€¶m[ºtiüÂúÌÉ|ZÌøß̶þŸÿüç3ç§Ç£{ý_’ø‹¿qW“ês¬D@ÑÏ>çÿ£Eüs<‹,ÿd=þ³|(±¦œ~®¡Ô69å'ĬOÕæ&?<¦S}÷˜º¦W5×ÒËfSmËñJU2™L¦$²*-a5‰àMPœ"yb,wÎ'ãK\¦í¢±Šp±Èñ=ñ››e>àÙt¦¯v¡Çˆ€J ¾ˆÌFÙ¦ƒÖNò°#Iâ-‹û\Åû't¸xÇÎø e×Üap@Æ0;³½¯º´ê’eɌ؃馤H¹p)—Ü÷{)ä.wÉ]¾É7!ÀA!T‡n ÛØÆ6.²-Y¶Úªk{ß™Ùé¿?V¶,Y&oîqgŸÿhgö33ŸÍÎ|^ŸwãZªÜh@0BŒ†{Eca»"Eã&% /ŽéºÞ·ÝZo‘t]ëê§¢tƒCñZÕ“!ASøÑ‹æ—ºa1—‘qUÑ÷ô˜î^œór±´\H`08‚èn‡}!²É&vËF2Æc)cA½¬(Í64–µè}$ä «#ÃzyÉiSHA®¯m ˜23Ë„Œª(!s:uȼ¸±1ï¯Ôü•ZÒTûìoÃÿTiKîÒÊtwÌw|ÔÛV*¡‚v"T<¤–1Œ(e¦L½Cüû½B$ß{yð‹y@F÷ àdC Žf‰Ù< È´…¦£U7á‰áÖ«t·sz=Ë@}-~8Sý¡hõ©¡°ì¹Ø=¦+…tÄ€ç4½£‘/uÉ/ì4·V(‹[rj2ɹ,a„3f &ÐKÚ”• %·C}yŒ-5fή%C…Æ¥ªÆÂgŒµ2™Þ}@cÂBóø®Œ¿_«:“€¡åË燎DJG ®z¡× §Y!bË@§Œy[ ž „éìÌ -3´¼ÊÊ-®‹qy¢gÔô»Ã%~³|‘?—äñZs&‰Û+K´ž1Ó*+¿í¨©©l:£ÆÑAǾ>ÃM+bšýcg‰=Ÿ\¹x–Œ1¼¼ßñÝ«"n[~Ç)Ӧ˧²ZWè"Eþšø4ÞeÍ-­?ûù/?¾eKKë_À‰ /[·ù–3Çý«C‹½þÅu_ÿÈzùžZiùk=‰"ŠÿE. |aïIû|?xÍ*ÿI”Œ‰–<‹›³Om³7W£fz† <Š™ÊhNSÓ]`±Ú5EŽE"qs“Ošó…Í Þºý)ãòfîÖnÖr&${õá±€ó`Àôë& .XÀҲפ<ô}ëš©ñËh¡4ÁñÐ7BFdóþã¦*$Ô3&ÿ㸓´ÚtU…áÜÓ˜³Lg°ß¼êŠvË*äÕ~òöEY3«@‹_@ÞëÄîØ˜ÝvØÐ^×OŒˆ—tÈOîu\âšØq’'ìŽ:«Œ X_o©š«…,‡í7¬˜ŸÍòèäŽ^ ÑACádP‡Ì@6bc%¬CÑò“s^´Â¹DRÌ›{µ«‘îP9|Ø)æ–-fÓ•æÜU §Î4ƺoj‘ ‰s@Ó0àdëädL¿u½âvjjH|dmÀb¢Œ³FºM// €N‡ºŸ{%?Ž»îÙ˜T¹Ä[{ɾtº©’öYX—…£QÁ¬¥bG‡;>fsŒCeÿþà—.—A׿÷öàU·8A'†C«¿®#uÒƒ˜g)™w»<«½ 5G•Ù¹£}æ§š+È¿_,÷×WK¡˜ØÙ'>¿\Þ•ÕÄ‹“Í7•ô8èž©8.¹ íÎzÃà7þ-ûà]šÛyz§(J£Ârkàw¿EYôæ@îûþ謞³ ÜuúÖûèÐÐ@搜åÉ»[úÆ4$™ò¶¦'^–/Z<\²¤)µêú´>a j]9—LÉú-× áÁ µ QðWª³Ï[¹d¦kÞSñ(.d-3:K4aŽôbÀi´/³œÉf¦¦¤ÙïÍô'Hìéžÿ½âHŠ© %ÉjÁ9ÒŽÍ KËíµ‰#©’«ëâ¡ ß™¯íe¹üT™šÒœoȸûTÙ©8{‰³svë’X[5]C)´lë¶Ý¸$|¦¬Ó¢A‘"K|Ò }Åáx‘"EŠüíÂвפDSL‰]ØÛç˜_óivâ¶K7ñO°–à›ùšš¤'¬VkJÒÊfL09«a¤D;Ó´GW4­ã¡Ä"{Ö­F š6þŸÝ·¶ÄæWGÎÞ³ Ð‘‰öVÓs¶Á (j®ÀMÕÞ X«‚Ir&{ÇJ tmy‹úøvâ'wåXƒƒ#Øh«,'ÚÂäêIN@€ãÑžA A ”¥¯mÉŽ† Àq„$vPÇìÒk§,uv­­Íš:&¥,‡‘øo÷›÷õ›Ë•æJÎm˯YÊ/iCõÙºµã½ÒÉ0Šª'3u×̳O¾°‹ðÙaÅ|ÎÈê„{$kŒåI;Â÷ÇÕ¯¬®v§`gÌB;€¹‡ÝnebŒiòžÁ^qûщ›;´û?3#‡•ŽëõÊ{ñ;«ò*æ8k`/½MÕŒ_¬KdÑ_n7ã$ºfuuËôМ5hþrÑ_.°=µ×JC7¶ôÓz* ‘]c¥ ¬ÁýRÙ=÷dl¶èùÂ&½‰© ó,ãΉ~ ›2ø˜sŠ«° ¬¾Äð‹Ý%dÜx{[¨Ê>¥v¢YÓh¿su~q <ñ2\Zšàh÷eÍCÀñHß:0†ã°¢]ñWÉf.æMc ÊëI$Á8™vQ’*N o&pJX|Eá³ÅÄ„ÆæúÒu° ™3 tœ(ñ‰\ζ×B H ÊÐ~Nà¹`ÿœ{øÆÒeá\.•*™¬2sB¤ÐíXÎÒ­—p=™ŸÜ0CEâødTŽˆÖùÕQ„¬ïž°ß¾rìLz€±^Hjw¦óEŠ\ð|ªz2EŠù„œñ_¤È_5m•Ù½}ÎËÛ‚aŽüÓ­ÏC}e~×€'ã.û'ÕFÄ`0Ð6›¢#¼Š‰!`l²£RVT”O9“=bƆ5‰í(€ÛÞsß|qÖldóU9…JËTR&#)+ ²˜åU¸¶6¾T‡}ý†Áè «’úùÉºÒ KËO¼Œ•Ø4·SçTGŽG Jt4„WxD(x1±µgqtK…ººcFáBN@¾ó[k¡$ôFÍsfV‹È/îœ1\Û&'xú­úö˜# AªÍê(OV”É *V£Š ú˜$Ó’Ô ¾ùþôÑ´¥o€Ômµ7±´dÒɦw kL¾‚Œ€cÔµõçõè“x)zjäéípûZ}ÑÆÆËÞÙ ÊW’›ì3'c½Œ€Ó{ê<‚®Õ•2#£ñW{,´™¸{=Õà—çò“*÷)Fµ¾.gBóO½ël)“*ÜB:ÁéÏÎ+”ÏwŒ 5nÇ`uƒIFVŠpÄü|ªÂMÇ1®ënuº(/Q‡‡\;cî[†Ouv1g¥:;²¯-MAÁns£L†|eÕÁRfÇ¾Ü {±K[õÚrí¦+ ‹b·rðPÔ÷ô{î‹øöÚi3xH0/qæ@›åS#½±«> f“QáÒª2÷Uå4Ò†²™y‡·Çê`4VOMÝ/J;ëõñÔ9ÚìOÂKT9+ÀÎÃÖÝ)¹­•uÛò‚Lï­‰ðÄ—;NœÔv~Ĭ^2­¾>褯Xí ±Ñ;™dö[îY;pö>_:Dý䎩èÖ Ÿ ϨH^¤ÈÉ'P2ñxôÏL#P¤È… Ã|šâ¢Åˆÿ"^+÷îI'CËC¹OŸãU"ÌÙÒê&lb¾oZ¾À¬dTŒBÌçóyÈÅP Qt„7”D1“Ó‹‡¢ú ¶ãq+«¥AýpÔhü@HôáéÅ¥©G>‹‰£8•«t“±½'í§‚j­Uòš@vÿT6ËÀU+µç¶á_ûœÌ´›K“¼O€ zb”\Ü,æ5 g·!ô<ÆhKKñ‡±USS“‘²û²fµãÃè±a¥o¯‹Ö6x#s<¬òš¡ªï]3ùê|ó:¾®Bècÿï{6Ú˜µ9 5ÇAæ-J$E—Nšç9…@0€©|Ác ¶Á‘,U'3¸+@Ïw$úCp0èb¶ü‘j8ynq× rACöƘÏ.8íšZFÌg#‹Úú:³|svÉ”asA´½Ž©+çõZÙZvã²xÁíjˆ3]g¦¦ÜÒ ®eŠ»ÉIdÎw£¦ª•HF³§{-ô¿ªB”ª:v˜¡)¿Ï<ÞõøöŠÍë1Ö0Û¥íã‰dÍõ6îåö½!ÓšшâEê÷Åík“ü£°¸ݺ›ŽÄ±BÂèHœØÙGlZ›Ë©Â–£>{Ö̰ ŽQkÔ)A^@+zš¹ðùs•Ì¢E‹^õåÿÒ®)òWÄ¢E‹>QûbÄ‘ †–=&%šf—ùòÑ´ñl'þ¥¥ðiå“× o§››Èé’”Hâ #*B"ˆŽâ¸ª¢nÌL¼ŠåU”—‘<Š&Ҋ͉ M‚$#UFYPhŽKã’ &dzm}V×°œjëi¯Ñ–Wjƒâ'ï–ÔZ”û.‰Ö”d¢)vo¿óìþø+õ’“ÐyëhQ›ýÒt{ ( Ø©(2k`ÚŸÄ7_”9“í ½Ç•u|G™h5iOìÐ÷öÆPÍ_.nÐõ­{˜Mër,£û+u¥ÔR?Ûm\ÂŽo?¬ŠêªÚè‘Ü5 ÍŽ—!d°L¸Òk¤ãIûv—/%#êTÿÑ0I2$ ³úI/ì4ù,ÊOnO² $p'*x…¦ÉÙss…þ0Dµ%¥RŠÊçÄï=®½ÐmÅ zKƒ½»/[]IK™8ÌE·\[EF½DlÃÓo™¿zc²Äž•bb³Û<š·=òvÅEµ\{mÜ%xÍ•a+:VHZNÈÀ©¨a‘?Bê’!ìç )kÝ+ãZ¥YûV{Ï™¢7n§¾¢ž|ÍøÕ[²C»‹j†baЬÙÁ >€‰Ù§F[½‰~°V²´²j~¬Üezù€«¹D\TŸˆÈ¤ ËLªS#{œÏñ‹Ö€…!Dãó³+ùœAS0œ°xÊÒáZæ.³rï¥ZH]U’Åî0 ü†Eö'·Z¿zÃÜWì¼ ðvå ³×Jš¤Þ¬IÓMKÍQaÊu5h Ò‡ðMëUØ}”yàjÒyj(GþÛ\i»æҥɫsRЄEŠ\¨ü¹JfݺuëÖ­û‹RÊ éxHW•®ýÛ&Žl­_q“Þ2#l¾*U–ÅpAŠ&Ñ"ÿÓ f—çûxŠÖ˜" 5N>˜dí¬L±¦’ÐtÈ«†-É,=†LW-S ¶n  `š €é:¢‹<š¨8Jø+¦<—ööº—ÚÛi—¶"¡8ô„Ðv˜+}šéËÍÇtE ¤J^E¼¤Åúa0ÂM µu击˜“cf·M81N×ÍŸ‘:™°§¶ÙA‡›W§Ï.ënãDÞ©²,Àìꥪ¯7|Ý»êèÞPó:rëN ÁЃ·Ã|mE°Æ~*䲘Œ“£sÄ׿™pÉ‹ ¦LðÂ;{èÁQ­É«Ý¶.óôxíÖþd y§ªÙ—o.ÏØíý(é6øKI!9œ# ®wuyß8e¤ÌdµU¹q948“47CHt4KiŽÜyÈŒ™¶’sú¯ÈB*ÞQí:vе3ÜÙ_I8EˆÓ¾5%ÙÛìBÿ¸åŸß©ñÕƒ*å§Š¢˜¼—\s-XI-ÆåáüÄ$ÊH*%•¡à˜šç€Æ„Ûªú_oúµkÂɲ¥5Œ°<‡ì8Œx=èÎAêÆËÒ»{Ë“¾Ì•¦fçÛ “åÞ>r>»ÆqE%Säç“Füÿ?Áç2“C'¼¿%|bG•1_ã3W›"‰?ýèIUÄO{›/©Z|eYýB{ɧ #-R¤H‘"ÿõølü—,«˜;îücTálÝ*c •Q[²7Zì#Aqç®ì—nfòñô»=–ò2Æî` ƒeh =>BõL‚¦êªÅSZ¹Aº´&b¤D—9 œ€…´Á ½{”ª³)ËR8óÚ¼Û ‘¤!”uÀ#[Ko[fi Å1^$Ïžàg}A£úü»ÔýŸ6-–&#„Û¡ †ÍŠ•îì§®_0GEŒ³eªÚ üÒjþýSØÞ.<•eAüåêÖÉ›Yp;äH’þ`£¹»¯ÐŸØmüú‰ž—ÉG‰šÝš‹ÿv»ã¢º|©3q]5òÚˆG•€"×4dÚÊ&ýÎÈ߬Å|ýéøvÊÆÂ øÛ,¡¶aQ¶¦l¶áUE#ˆ9Ôæ"R03)°‚€n5ã y\ì "¦joc•9¤Ã¼Ò‰À8sé|LÌ¥•sâFN"­ 0ƒ~ÅòÜþ‘Òu¸u½bÀµzC60íµ#õe™þIË–#>·I©qpIQ_ÔN@­|·E‘ÆrX\o+j¥ vÉÕH& Nÿk· Oms ËÔ¯‰À9ˆ¯KŸXÉ>|øðáÃßfáÂ… .œµòÈžww<òŸEkª©\µ¢Ê^·! b:\™ƒÝ˜”Ðä\Nx]8zâµG{6übÐãñ|Ò¾)ò?–bÄ‘ ‰3v˜¡ÛVù 6<˜©ó’™R:¸%àýÎmb4ˆ²´koê¥ýچպ̀ÔZÓz–Ëea‡Ñç6®F¨·?€ƒpqÅx8cê7ï#*i¡gL¼Á‡¹ù_€Áaðš‘Bþß‚X{m@ú=÷úö´Ç¨p5ËUÉ_©\¡;Ð͵Òö&Á³ç¶ã†=cÌ×g š ô'«g v Mey‹øøC“[o©¯ ûás,Šã€ âemÄÞ^òÆ…b†#Z*Èly™&‰w]<Àåñþ Ë?¿lÖZÍX⻥5ù‡£U=of<¬¤ÊÚrëÀ ¯¯G‹åó ©-ذ®Ì8kŒÕÖ³É1/µý°fk©ªuKÊS© ‡tÐÔÌŒ²+ƒD3®ëuJ÷™5…J5:@¡R Ì·ŽË”70´<¿&VW’¥Ø÷úܺ®¿÷†ÁtŸ]Jã·-äêSmTÉ\PwW"|ZNOéÖ nX*n;JäxŒ™mKÇMeöç¦ËGqã¹9Vƒ¼©ŽÉ1¿åHc£GX*¸–YQ1%Øù®!‰!wÔ LsB^#®•³JL"£‚BcÊuÄžw饥\ºŽf Ú˹'_3”º§ÂZf!ÈôPÖ³=R¢Êr.’ºwñ±­£u¹¦zèßp•­GSõqÎThì²äVÍË-ªÅC1¼³é "ƒ*sÙb#\Ó>u%é§÷”êψ$ȧúIcuйø4Jæ‹_ü"œÎcvÆ ììÅÇü\%3tlg‹]XÛdDç]Š(*ä"jèàðñƒõ¦ êU—’¾åŠÈû{»çލævo®¿Óóf×OÚç¨Lü©à÷¹é3ÄK=¿\lø í€?p_Ó-è‹'µä/¹×"í#þ‹\H4¹…tžŒòŸ$}Y¥Óˆ¦ëÙa £­rPtHã‹›Ò±ýÆNáK7×§Ç£¼¬h¹¬"’¿;Þ4:&T¬¦Æ-M ÆÇÆÕ…ÆHm©|ã5'Æ“lœ£~³»¤ñ‘yML4%¹¬Óª£½6UW–{û =®¨!‡Ùeš=F¯¯–Ÿ|±˜aG?±¢A0ÌëœV2o}ÄPVÖc›Ã80Ä[®«žWŒÖÔ«Á˜ÞÑ,~àñ÷éå­ê’d0rG/¾i‰”XŸMö X†eBêž]xÂÓR.uJJV-‘bIÙs4㽪1qbœþ0HêºöÐN«ã#™Çö¢%uå×^šk0Îú_€ÅÄ`ŽB…éªf&æqª‰œ|¦Ïh¬(ùL{®­<¸w¸¦Ôœ€LuZeA˜!"t ¦ƒ_œ.bÓy‚xl;uÓ2eÓúé–<ŸVÏ’ÌÛ'uƒ‘\EQd""ÿŠHI‰Uæ¹LfÚì“ ©|‚qWàˆ.¤¦ò/'X¯ ÝrØ{n½ U’~/›gt•cœF.–ef%zðŒ†)_¸x´?h5oßsré¦ZTft~H>ïkšÀ`¡7ÿá˜Ç$À†KNRã˜ÜéP)_úäU†ü ùµP3.’ž‡¼ÿ3Ó&2A¦‡2îw#%Rj³ÅWá]tª÷\.¹Ì*‚ _jî ƒÃÀF$„N)3DkPüåŠÉ€ìušJíÒ5ó§þ -{X9’bܧÍ29k­œÄå°èYÜN(RäýÛ躮iÚÝwß}÷Ýwkšvîâœ[‘î†rvå#ˆ©A@5¤vCÕê;ñåßÖÛïÓW|_-].ïíø¸€˜L¦ÿ·óú(áí?º~žC1øZ¯øÇ øï.«¼ÿ£Ù¶ûƒ¬ºùÁoªüôY}Š\xøýþ²²²ÿî^)ò£Ñ—L ¤Û¨D3Öãú£l£°ÀÒ«¢TÂÖÏê(žÌ<ó¡—5èVä·ìÆ"º‚Rå¶° ' o0žŒÉ¼ÐýÞ„:8ä#Ó˪/«fëJt³¥ÚXÑ0vÝ‚¡Ï/^ìöZ$„döô;ÝQû̇ƒâØ #šbXZ¹bQBÎ {ŽÏÑ1Ö ßq°·‹lti“QAEÎ$€ê<Å´VÈ$CÏ2æ@\°Æ4Š!¦GÒ£º£^òÚ´Hïh¿ÿîñíTß0¹a¥¼½S\S+,mSö†-ë—¦V/Jãf¶ª½äË7’×5‡»ûã/î‘|v¥ —-±#¬=5žè:™yó$5Âá¸@PIMfŠ_»4yÿâ°lÞšZ4)ùÎwÁ,ŸI5AdÎè,9û+I‡XžSüÿºm+À®°½PÂ%•EDy†ØËJ5œ¬§[$†~ùÿöžbp›ºfé ¡ÉŠÄ‰{NyسÓÿý×Ê»H“BdCuZ×txúCßžc:PZâuXÍg¶ÕIˆŒ`ˆ^RQEà8¼Ñk\ߺȟû gî'g4§X‘,EÌxÕæ‡56»®K k²QÐ4†–çWGÊñý’ŸÓ¬í|WDu¿E³¯<ÌáàEs.4ÌÓ9ezÔÄ$Æd3u™õD_ÞÙÏU€¿B¾¤MÙ±dúD¬âç'–½2ܬëpwíÑ[ýGÄàø®Ò-ëD·Cý(\”H€ŒjÎ¥ÌÔ}©3zŠÄÐÞâ´Uy¹fÞŒóªq 'Ǧz£a²Â3û-RäoO'£iÚ=÷Üóä“O€®ë¿þõ¯ï½÷Þ3‹>úèœ[‘ŒY9ÐDÍBÿKHjXàøtÙÆ[”uèc‡ùƒ¿æeTÈIÿ ÑiZxËæë*|÷ÕÀý+|éÙ½­óO~TYÈ9´ îYuûmÿ,òWMÑSäB‚¥¤ˆ@º™ÙÓÀs²#:Oæ›,1“Ƕ̒…4‘‹Ô˜ƒ“®ª=ƒU—ø‡¿qƒøè³É|Ý•Mó,Nßþ3£ˆ5ÍÚŠjù`ÆyçÚ0CI ¥m–€N#Ö¸jùH¬a4©‹Ù±ôàPª£Y÷WMŸ'¸<¹§ÇˆQ&”qƒ®—xÔδñáWÜ›×Çg9á°mù<ù‰¸ÏJ˜ÍêŠÚé¯þsó½[ø¡Á9â œç"Gâì5¯ö˜~¾ ™ÉP=¸Û¡¸ÊO¿˜yò5æ±w‰–RÑa–Þ9^qߊK+¯©N̉{gË |ó&xkøîéÁ/!n\€Áˆ}Ë g=ôêI#‚ æËjGì¶ãøEucµåt\Ú«–. ,è]Õ@LEíÞ2ÔæÈ$§\Ñ^ìnÙ;¤-œÇUxÑÔ '\«=S'‚(˜‰™Ö'í)›7Õ §ÝÉvèõ³×-›ä”о‚ ƒAêƒaš±“s¸.³N\7òLÕùƒ[[@‡+ªÒ‹j"!û3®ƒ!ë²²ôò¤ÚgM¤¹4/€¦È¹dŒBÔRsdB¹ª.ÍÐr]IúÝž²ãc¾‚â:Yƒœ*ÚT$tÖHF$ º6ÛÃ*$‘v$ÐËvlHX¼þºEC-zàþ=W4¹……UáY2•D´Z†É0‰¼^a•üÖë“f˜6ì‰q\ˆK¤†©¢™PJ†Ö}Dõ<._U»·þ¨á´Ðݱ‹§Ñ¯}N€¸hL¥Œ|PkZB,40àù¨<Éã?zÉj¯ó,.‘Äp,’ ÜöéÔµ¥™§w•œq0;1FÍÊV³–ù³óq)òWʧ´Éœùüä“OΛ7¯ cÎýölp Õ$„Œì„H7H9UUÃGßDŽ? Ù˜vê9^†¼’ ÚùV”àë¿ÜG#ˆ©é–‡Žå ÇÒsǽ} GÜÙqÛ#G³:·{siåg¿÷•Ë;šj¼Îú~yœ+4ÖÒýÇuµ ‚0e—þ¯íѩװ4~à„Üqß=—VšÒTÚ~åw\dG!³móMŒ>ti‰Ý^~åoÇUn÷æÒŠ[¾s×ÊÆªÒæ{w§Ão=°ºÆŠ#B—¯þÆ+ã2ðºÿ#áü}(R¤H‘¿nJr3 úS6™CñXíêZ¹ŒQ•êØxã/Üy½Ojš©ñ¥ ¹÷hžr&trôÖè]·`]²Ï’om°OħìQ,­°´RëMojJ½3áZQ)_RžÏ§óÇÐÆª6ëÆåRšÃ_ÝA&'+´PæÐës0Ã¥Š!òU‘“¡q‹Éh0x‘||_“Í ]SïÍ0É„“S‰9 V:ÒYfJ¶i¤Q6¹ìÙ~N@:Oßú5ýÁ°õX•Lê¾_Yž|Ãôä[æB¡˜æì®›+W9>»\n¬¦Úkgd ,óåß0—Û8†’Ú*C7ÕEûBÚK½ö‡:ëzƒ¸“Å+­Ó“‚ñDr"õYµ«d ·Ùºæ‰á”1š5Ã9p fÆÓ¿ñKôÑ7õF·rý|þ–†É• ŇïOõ¦ôÝ7æõ®lUcÈXaÄÄ öCõÆa .%å^[º¦ëšæ±N]öÊÐw.9唹|F|+TõX_kˆ7W™755±(+êO_6H±Ö†¨ÎPâEÕá·U¼4;ö_ÒјlXÀœÌ©Ób†3zŒÙèÙÍM‘Õ©˜^rà èp¹Äñæ((«Ï. %OìoŽfL$(õÈdPb’ aR¹{]/$6ŠÌhb õǨªîpùO;—léo4bù¶ž2‹L2¨Ë’_µDîMããá¥75‡EßtåÔØ`Oº­Ù³òUd® f¤º¶á"¯ÐIÒ?ÙæsÕ{ÖUsË«°¢-;œ=4š_•=9j€œ€_ßþ'r¦)r¡òém2?üp]]Ý™•uuu?ü0œß&ÃZÝ‘” ç ð jzO|8¢åÒ‰S1ȈÀË èHP>¯ë* æ+üû•N·/à_6ä¶üþ„üÑ'_•®ûÉ7Wºµâ?½A~õñNï ߸±š ýë×»†÷çø£O½®\ÿ/÷-¶`„ïòüþÊ©h?Ä~åû^¼ƒÙõÓÍ+ëÝ´û¢ûž8Ïsw^ûŸk0 `îKn¹ªÍE"¨¹õóÿø9û±·ûfn5WŠümRˆøÿïîE‘"1<æì˜@DŹrKÀXÎ{"ãÚXÚ݃´âªôÆ[Ù,XE«“INÔY¦Cê{ûµ‘“Ñ¥++m­$QðÔ¸ßß/ùjg?…`X%óq‘²½ ióó ¦‘5ž®%Ý&B<){j¨5E[‡î3-´Ä+4kPïØº¸!×P¯XÛ¼.¶¢-Wá‘R9¬ÑýQ(Ød>è¤ØÈŠ¡ç–8“ܦØÙkö…˜Bíð—i᛼7Pyëü ‚ãÿþ~é Š5x¸ñ`T}à?¤«Ö k–cÀ´ ç^Øi<#fŽxNÅÙÏ/5SÒïªq ï #Á@~ƒýÐJã œÆrÕ‹—3‹9('’lŒiLÑ¥*J1¤8š›v»zf·ç÷û Ý0î2çㆥeâ"oà#Z\(È“ )Ú(MV5]U€ ÙWÞ•þí?†û£ôö€¥ùòúî-ýÚçä5ˤŽÙíPe„¡!í€À²{áP 5\8P íÊÏ>÷P®ªÍ0ôôœ¡¤Ï. Ì7G÷Ê¥høÍ¸ÿíX³¤QuL΃ c¹“rj&¯V2¢›]ÆÌBorË@Ó¹ÿý„ÎȪnÌOß!9“‹INžY æÌ Ä$,°cCüÂËR"…Ø$„8Ó™kç\êw »Jùh@ð%4ƒCJ” CO_—c¼³ŽÈKTw¸üáÛ¿I^_m=þùæ£-î1:3ãvŠÈÖ÷•'žWüÈšå§;#ùPÊÍÉðyÈ9Ê@$ÅüÇ{¥–RËeUÜòª©$o¬A %g»«xì|O€Ñ05gŒÙ¨§æ>H‘"Ÿ>âÿ+_ùJÿtüYÿW¾ò•‰ø÷x<ù¼¹I=Ÿî 뻆«–Wè.V×U9GÂ9$%@J$hêüÉpp‡ß;e{¥<~Kn$!ƒœÍÙ¼S/SÊÛ`çÆã`F§±ðËG SY£œ£Ñ[8b¬¨³Ÿ~Ò#là ß{zGO8/Œïü†áéÛnùõÀõpK™õôFZòÀ/7_âwY,V{É¥ g³âL›Ì\}(ò7H1â¿È…C‰ ]ü¸0÷;ž·îO”µ;£{Õ‹ž­Òú=ZÚíŽf"ù¦8yéÃà~ÿg„ëd{‹IPè·÷à¾ce=„’úÎ>\WÅF'?ç! œèC¾uËôƒ×€ç›í#ë+»¿:¯k0¢ŸˆÚŸêœ·g°j(ê,c31Ù¬Aíhä—·HO¾aê&Üv±¦Œ_½0½aqEÑÁQtðWH0’7»ÙÙ•sš©‘=³8¶m¬Ÿö@+õ(ƒcÓ¯×á„ A/51¨—,1 Ñ%ÃGÆâ±|÷ÿÏ_&üUÓ#TÖ mX"¼°ËÌ X4c:8n»{ECŠ5öH)%­¨]×q,à¤Q¡…ê]LtW² ŸŸiYã0x™½ä+[åˆ%i®Y_ !ò"Å‹äc{léË«úL”è2£š°â¨9„cã¦BŒ…PpY³‚ãÄÀ(ýÖ^ Áq»›X¿©î ­¡ó”õ ›C´ˆjD¸Dß_ŽŒPÈŒ :;‘ÊiÓ·D4Å ¤q+;;žŠ¡¤¶ŠÐuÕáÝÝ ∸Uhß)´“(ºÆ5²¬"áH+"xÑ\«g¬ÖÊÕÁ9Œ¡ž¥/ÆOÍI¤¦]¶sF»!š l_—è)ódIÂ>k' ŽÐÝ ïI%uµ{bA?r˜Z4ˆØÎT¹á%ª;Tþ¯¿ØÛhM¦~l}é -G[=cg§| 1ጘ©÷ÃdT¿j Ò1oJÓŠ:}P®®3†Ç™:L’ÄlíaÆÅ¾ˆýç{+Í^ö¶y¡å•Óf|Ö z­j$1ËÁLñ˜äHÒpb’òØE(Räo’O£d 2æ©§ž*,ž±Ì<õÔS13çVn·;Ë‹òЮ#Š>Ýk^ EPœ¬´ê>“NbÀ‹ªÎ?‡ ÄÃSO 1<˜6VÚ låÆd_xêW,†z“l™ã|bˆ°•›rã©©‡ªŸÌœãî…Ð¥«¾üKˆ}#…}"³M‘Óe‚!ì_?ûýÑ[^î§S‰àο«*æ++r^R©T1è¿ÈF••CPˆæfÇ0ÄëscMõ¶L/Rº=Y #мؘKÉåT@×GÉo?fô—©›. ™P1†zc²õø†éY»Ïyl¿…0ÏÉ=ŽÄæ._ÈñðüÔ_5ÇCäšÓ‹Ý#7·ô•YrãIöùNëÞ“†cCn>O@G#ÇÆìÞ.¢³gj‚LWÅ—(²u±rÁT¤G\§ ÄŒÁzJµò(E£Ó¡ Ç'mM¥Ó¿n–Ñ·Ÿê/ÓϪʩàßðm¾8ß´²¢œÌMtMLFÕuKLn×ì·°¿<¿a1ÿôNÏk'+®71u.¤H@•7˜iÐõýs h É» Ô¬w/Á»Z¼ÙU+é% ˆS#ÈsoêG'œvxØý/;믛7±¢aLV´PJ`pm-ró)m2g /·ß~û‘#Gn¿ýös¿š}$Eüë;û‚Õ6½Ê 9 räUDÓ´œ¼ 4EtÁü›>ï±µÌÖïÿbo\Q“û~ù¿ßf¯ýl‹˜Ž;®!^ùî/öÆ%þá/¾»»úÎŽó9n3í›7hüå¶ öýþgÛ³á%žýþŸù /&(r&ðî¯~º[m\YC`f“ÍΩϴ|Fb*šª,8(áíÿa¸8)R¤H‘¿!¼–,‚ ³‚þã‚õÙ±¦6g.Šš/&z 1Í…y1žØövÊcFCøK`ë>êûŸã;š§f¦»‡ñ5U‘јºd1•OE1ÊÐÙK¸}²y⦋Ôç¶á;öá?{øøÑ1ìž«Î[ÈÜnTrÁb•3¶¢~ä¾%Cf'™ˆ¼UýÈ;UGl\ž¼ãê\*‹>ô<Ë Èè¤îsá‡ÃxK•Z¨o8Î{—ÚgWŸ éžj†kÙá„ÉuV, ËÀÚVmp€ÆýWW„öÃWÖAuÖËŸy|`];vëÕçõ>0Ûˆ¨Ñ+'S.óTBähš-'ò5öȲJ%”ů_z÷¤3šš~Ñ‘zÞ)Us] “×\Ämºê ¨[æÛ—äIzÊZVõÉŒz$AÚX9‡›.)EqÌiL» !#c ë¿Ý?x<þ¹Ï¸K}Æü×®–Ÿ{CP›ê®G°eúK2]6qü|=/à&2ãÊ”Sßë§Œº®§µó–m)xšÀïöU[ó!s8p4aúв>ÍÔøÅ€O K:ÒM)iÞ{}œä\ i¶ z˜ò9´‰¼tÚ}W×™tbœ¥Õ”#óYÐô‚k™=32ÎÐB”*Vdú“„#‡0ã;r¤mÌç_Sz}Äûü â÷Çjà—º}þñVß8CŠ`ˆqf×ùΨ fÆPWõâéM"³Œ#º5?‘”If¦’á%êõ€ #ñ ž±JkøÜÝ–¸åÁÉÙ÷ŒÇ.ì&®Ÿ÷qFË"E.l>Mfx衇Î|@äìÅÙê ¾ðòoúðí[hOÒ¨d"uEYGTMÏË€“ä{ùeßx|;Aœß²AUÝ|uøÛ­¦CXý¦¿ò¯ËX0¯þù›?ýò×x¾—ÐíóoýÉ›¿¸Ô‚œçwXVÿü¥¯ß¶yaÝ?¹íy ÓJë€#ß»ý'· gt@íMWÜÿÂï¾Tàõ·}{Ý6{°›—ø±z¬(Žœì ÷¥›×Oöªm§>è]Û†„Ò ÀÜQ“±œå7Ýu_î蛘Ð^Þi¿qu²Ñèä ÙÞÉyNŽ™×5Ç·tú¾pÑÈÙñ'¸&âb”ϤO¡ñŽbÔÅÕúÓ‡M¡*£›‘jÜ<rg;WiàG5ÒÞdPAz§ßó_×›}ªFâó{Ød—ÕHQµ—‹±ÿüCú¾[’ç»ÈçR‚‡?Z 0iÖ5mEµœ?.Á]ÁÓ äÙ#þ¾ ôÍÕ£–682eWysCÍá#IÒ4”$p£_껑±¼ši¿Úyèì=ˆÉ3¬/ÈVxEŽTu¸G ¼‰“) ™Çó鬫ÕÚw)õB:뵜ÙRÄŠÔ©["iXãØ;²•YÚ"¨ôLN +ì¹SqLSgKe,’¨«|½ÿ(i—¡úª~N¯c‡9Ô2ùZ‘A•qÙ¢' ¦ÎHÁKÔ/ŽÌc-xUv¸µ54ç>YƒLð" ¡$“åñÁRîž{•e`2¦}êÜNEŠüUði”LÁêò«_ýêcçð›ïü;móýo¼øTÿËÿÔaãºD ªªÈ¼NwQ¿ó«?îÀ슧&†¾7+Cbê¸ï™£÷=3»ñ™0ªõÁS§Ÿ ¨õ¢x­÷Î4üyágý_ZÿÃ9ŽJúïz¾ï®çO/Vœµ[¢òÖÇß:½ü3XúðÈ0œ¯Eþ)DüÌŠ\H0¤Øáàbù©©bA¦_nfè<6Þaê-¬LˆÖä–5̉!ÄK(ßù­ ¥ÈK¬|$95õÃÒJ(†£º^åJzÔüá\ÝÐaå3—r(Íîì7×¹sÍ®AÑõÕZßúËß=³cvË Ûq Àgç÷ž´Ï?=@£A@Z³âZ êJ’%=ËãGûé÷{1DW˜‰åÒÅÀ¦^d‚N¹ˆÏqÄ£`¥OCwŽù®ª›‘„ ƒÈ¨þüdsi|`wеyItD¯Ìæõ/.Ïô Cì…÷^ËìH ^¦?UOkŸÓ˜a*0Øyغzaj,J•;r… ~ù¼àƒïÔ|Ö ËªÒÏ쯺{õô+‰Ï“‡®SQfieúî‘ï¿ß~©àªvó‰ÛóÇÍB2`úãGØ&l ²®Tä Gß„ôÑAú¾ýU?º†ÿúºüÏß&òuʯ¬åNQÇcÉxcY&X¦îØ …´4*˜01¥Z·3Öš¥w¾KœÛëlÚʃµîø¿ì¨ q·=ˆq“ZžŒ9*d{©-hûhÐ>ÐPçAGÈuÀ]VÂNœ½yÂàö§öÇ*X«,S žÀDÖTjÊãq §©ÁC”ÿа½ñÌ&”’¯ˆv'Ìå$—q§‡¥+b”g<ï=‘q®õ <<^³iõXLˆ8žØß¼¸4Y¨ic dª–}̉pyü•nÓ/nÏ«\¡Î agšµíôê±áBô¬ëÁËôÿwr¾Ñв±I¦Ú0c¤ÀË4/QÁ´t2–Ú^^auEkprVƒÔ^•1ÎåZ6Eѹ¬È…Î'V2 .|öÙgÿd›ùEÑkn¹n¹óÝמ;øÌwXÂ{^*Ñrÿ׿ýÓOÚ™"EþZðûýÅÄeE.H––ߪ*|þ`¢6P×:eÌÔhŒ—¨·’ÍÛ&p1£røãÄš6ìƒ$ÍnZBI¬7  k;û½žz»2!ÇÓñÏ_mIÛ‰áì.šö0µ•ùÎa#€>Ͽي5E{&áž+ÕÁ$“Ct=•™!ÆR:„R*îÀù4ºÞ3•ÎêгšÖr:û†Ï2€¼©ºО0Š‚`ÓÃÌ(bj f„ð˜¹\Ãi;PŒ³ÚeœÞÉ2@˜©Òø©í]¤ÆU–dK—A'eB_x»y-ÿ£—l­•3” /ÓlúbSŸ“MkPë*„·Xöšà¬T†–ï^z²«ì–¶ÌÒÊô+‡ª¯[4Äç‰wºJÂ9bYUæîUý0u`J£9˵y£ÍnáagWÒ‘Ê¿\76Å”œö˱!5òÛIú÷w½ìw~M"(b”øxœÆÂ15>^Ò>ñ¼j5kóþÜÙ}žéN¸¸¾8v›7õÞ`íŸÞà£ãäC€z|_Óg 2”$G†’8¹«,6wådo6Í­•>U[™ÙÆ)¦ eÚ}KÄ©°µ~^úðÓ2+x&DˆÂ`Æ´Ô>(!FvlHn^jK T]\hOÊùòÐÑ„µÊNú×rˆõ€ÒTM^ã>4sn,OÐ C"me“µ®øáaÏc{–”¥6pûy»ïcÎâNï×Öeà´›Ù{©WN«+5ª\D“r­uì”ß  Ð¯¶”¾n¹p$iã¼9‰ÊˆTJ$»Ó¬í¤XiÌêº~yiÄBòí3|N¶3Ÿ$Ãñ}ƒESäÂçÓ(™*>뮹uÝ5·îßõŽIJ_¿î¦¿È>‹ùKÑSä‚„!óA‘Œq–C‘²¤JÞZvÒAOßêûuÕLÎÈM~çE{S ¾º•Œ ܪùÓq&œ€}÷Y×ׯÈÔ” ‰cÙüûsÀ{Kq&¿v¡^áH£&03j‹#"FYMpórí…1…TFûÿÙ;ï¹ÎêìŸÛÛô>;Ûg{‘´’¬bU˶lÙ¸Wš+`l'€! ù $„„!6`L(†€›Ü°±-WKV¯«í½NÛ™r{ýþصVZ­dðGš˜ß?š;·½suwæ=÷œç9Ù<ârÌÎØÊKf_4×€ þó;ø7n¶`&u3@æ§PžÞ‰×øô´ÜƒŒ’§+û@¹*¥ûÔbß´oC(g1­¹y¯ãƒ9S˲¤•4®„. dèšÂ^ýÞ â@œ˜;ø»“5kC“¾Ó|Ò8Ƹreöñ7ý}9âs—J©,ËÑ: `gRTz¡ß·)’€ÇvÔ€i­ªÊ_Ñ\E—¾ïù¦ë€¶¼<ï¥ÜY1øð¡E7G‡»^oNOÊú77§y»´Â#î5?s•ºë$L呸4Ñ=Å5– aêuZë/Vw½—s:Éêòs?þ? 7š{e$¶i!™£õF“túôzª99„Þzi>àÕà‰#Ñ¥ÙEe1Cדã2G{ƒ•.ç´s¸=gqcþÚhlfÌSuj÷ívO :³9ð‚h %aB"üʸȅèĸSNÖ\>³%©Éåã‡UÒîŠ÷ª´}¸rÕS•ÕéV— ËÀxÖÖäËš @K)ëêG—U’otD¾;qëz&9Gq`*gK)Luɬ”£ñÅåÊñQj¶•C3oJ:íÄUÅ¢à`®6‹P,¥…–F~—¥tÃBy(!óvR‰:’WTœñ«‘¤‰wÒKÎ<%‚ "&ÈD˃·O‚eMa L£µ¶Ì¹Àù:™ÿTYʥ㖡·ï{}âÈkuën‰¶®JO ¸Ã•†¦"(ŠáäÙæýEŠ)Rä ,©,r ÛF«ã*yKå0ƒJ©‚cÆð±wÊÓ¥0kÅ¡ÚÞÔ¢†aø ÞÏíôƒe‚eY¦±£CþÎs˜e0`™A£sÜh*±j™TÖÅF…Ê©0!Sõå‚'lò&þìëÔ¥-às!€PWœOî¼¶TæTËyä&ÐR8Ë#àµÈm±gÑÍÕ¨ô~$“2Cµärÿág…8­´lHt^_Õyöy÷ Q±´,CÏNöóµv?Øõ, Œ’·\¤€ƒÓwÐë¦é€[€7'Z]”|¶Ô›cŒ–2­o?6hGp<%Ó¢Žs¦’Þ—®–i¹ýd§#”*((Ò¢p«[DN-㨣0‹Å 59Ì81Éܺ$´+;úKÞIÚøLîG[†›j ‹«óÿ°ÕßTÆD"H[‹<“§¤§lœ—ˆ±$)Gþå)ÁÖ° ÝðpF™[l”ê;Ë¥Ú‰fûºìL9µ$/­ŠÉ$ÓXW™ cf*Íž|øðù·Y°íÈî7·?ú@Øi6VWlXWé©]ƒŒ’KTúµØIL͘ÏK/KÇ:^z¬sË÷‚Áà:¶"Eþ'STü¹PéÍÚ,Ó*w‹=Ùjg’!äd–ýÍh3?œþXsrIý¬=±u§Y*»¨‹Žlíªß7VveÚÔÑÄ\À°k?Ü~5|&€õƒ'Ä[orµ„ýVŠÕBG ÜæºTC£8Ƽj¥¼»ÃuãºùÍ7N1¯'#iÉ$nÍ‹d¾³•øú]ZçîzTDñÙÇØfw›¹Óc“dyNhžPœ ®œIÎtíæÝd§[.ÅŒÊ(“&]³AÈÉa¼,4;¤æqÚdŸmsSúeáùOâS9Ûwv”~¬ujqõTršÞÝáºqmüX¿{o¿=iR7/É­D­¡QzÝr~[—·:¨¼ÕG^Àü‚± 3c*¹Å!aš€!–$ÈMHºÃ.1•Íxé‘”¯K¢ÿ¦ò€@9¿?¾jﮑº2ÓHô<´Ìs8YõÝ#[õEõ2Æ‘B‰¥¨†¦ÅÚɉ‰ž^¥n1ã4ù*ÿlPw€¤Ñ¢A‹ P[ÉõËm½íÙ#è’ ‘—m6±T"-™°6Ú:9ˆÜsý1!K)Ë*âNÆóäÑè¦h¢ÊŸÕBã–-CD½nOy®C©WíLtiÅKê`¼zeéñÝ#­[IÊA©øtÖ˜Jà ™,k€ªö·™T¯Âxõ‹ÖzK|Y!ŸÎÅæ„WÈËJ§IS=»96=Ù—\y5KkÕáÜn±oܾ»=¸®•/+A @ËþÖVEEšT]G5݈(hªBe“PæbÞÎ6t”åáyuôÈÀç7¤^SÒhA£‚CSÍWûS"1&Jõ’r¥‹€55)ŽRYJ=ÖEÀ’š÷cÚ,[ãZØ»o`¹m=±Åê²"8&’ùÔ§>ï{”*;}ñ§?ýéÙ‘ÌÐñÍé²FÚº Ñ à“Füàð‰ƒuö¤ ³eY÷Ýw<öØc‚Ì[\p/2P_¦5bWý5dǑ셚HÍ–JO+N“–ăÝgš¦6¸=ÕýnZbíöóyÏÿѱRO¬ |ü½³Þ_ódêÝÛ}Å"Ó"ŠÙ˜"$íqwkp:àÈ?}²îîŠö*gò屿Aݵ¸‡Áç?}OòÄX ¹h‘G:{Ûâ"¡þj—ó/¢IDø—'ởŸÛÁˆ›¾gW~Ý_º`~c+ú··çdŠð!b)Ä-;Gëk›³Ï-¹ï’þ‡Ç1z¼pÆ/‹(§õKwÙ¦Øò°ÐõZëÕ½L$(‚5-$ŽBY•Àá±é…*¯Í˜V¨´JOj”©›%¸¼¶ÖBIÀx±Óž ²€Ý³Aj-;Íz˜‚H-÷ü¡ð}— ßRŸÜÚÓ0¢bO‰~ju¯’(ŠÀû“2UšžÊ5_ís- ºÈ‡V¶uÀ‰Éï„vô]#–„:=øxjm%[XæîßÒÜÝ2áûÍ¡º•åùEe1ÄPqCÅ¡Ààpï­èÏž½ýê1§Ÿ $„– &©:ò•S}™:~2WU‚¼ÙE†©¸æ7s’‰ˆ2NWc ‚ŽR€…‘€“Ía„“B5¨ëTKuU’%,CÓ AŸ #XJ¹¬aôôJ³™÷”ŒÙJ3´Ÿ‹¥]O#ùlùÁßæJ[§ÃÕÁÎ#¹Ž8‰eÆ-Ë…£å·Ññ.ø¬†–qËÇ«ç|€9\ÀýŽ(…J^C'ƒ@ 5ÜT¯¹Ñ*‚E!`N ˆµ Ë ¶_+¯‚Œ^Í•—›ŒÃ7™GYÃ5P òm0%QYƒÔ Ä0jé|SPb0ùÒðÜOÄì´Qª—Y8ŒŽ5㙹YIA"¼¶…=ÞîÄo¾òì¬R‘"&’1Mó¾ûîûÅ/~–eýøÇ?þìg?{jñ±Ç[p/’u˜Š¦Žè{ÉK‚˜+݆ʑÒ6kì°xðÇ¢ª¼ú_ Eü·o—n4€ßyWýíÆ¯ûþã $] cŠ)Rä<J²×4÷€R†§|6FëO Ûè–&GªÞ>—²àh èŒ<ûãuêUa€×”ÊÓ aN¾¶]¼ï„cç¾wÓ<¾¤VÈ ú®}´¢:ÿúö©€KW-l\w–"ß%mÚ`ÜUÊÞRß½µ§a$ǼÛW`(E¡ .S†êQ¦Òp’­ìt¹9ü™] †c>[Ž@­§xBV´L=ú ×tJ¼0ÞÖbOÕÖݯ´Ä}?;Ð|uùx…/©àp,\½yêUëswÊ€…É.,&çj´v¼øó5Âן ï]‚uk%l6‘׈´›ë<5u£)È[†Y,Kµ³¹€W×þñ?°ÏÞŽºì(G¢`$nTX¼®iºfꆥa¨¯$[M„Ÿ!Ìllæ|çúAØÒMÿ÷­ÔÌà ”¤g 0@0Ц‰Ü;_¹²Áƒ#B—müҋ〙Ý÷ík£,‚²e›ú‡›#UŸ;(c EŠœÎÀÀÀŒè¿H‘ ‰w{Ê/‹Ìz¯*½=|¬½¶ MLteÐX ^J.ï*g6`)uH Á2{q°ÌKVÊ08鸮YÚìÿm_ùÞ ¦­åŒÇG±i,èQjË…îN%i²röP*`IËQ S$èpyóäÁ¸WT)Xˆ]ŸÉÌ@h”b`Ƕ¥Êš™¾ØÎ•ø±ˆÃ`PYF(À‹>Íi—´¹S…Ótá]ª/BŸ!±8Ô‰tͶ5;÷«×¹M”´K³)”¶F9ìAwRõõ[K~üj9Rí°÷oh-®LÞÛ6™U)Ç~ÞÛÐìϬë±þçáõÍ[ã7®Kr´ôH]‰ê®×ÔM½Õí–Tn©ï®°ëoOzvOyê¹B˜oHïËêv-ß§¶]])¸Ž“£èÓƒ¾ ŒSv÷–wOa·nœ Ø4ÃR”|•sâþy‚À_Ê,í@ê"µùkÇ^›,oï+w'“v9ÑJdÝ2dûž~îÆè›–Jùœ~ó2¹ÙŸ9´uµÃ—6Œ‡8í“Þ±~¢Ì/—•Ñ8y´—Úu˜¼ÿ{Ìg¿ƒejš.ÊJNP&sêdÁæ‰NÁ1¬¹’–ƒGðáS}û¿Y¶uxÌ–î *å“íÞì¤MȰ¹qËâË®é]ù )Ôèë|#sŒ¸…ï´ ÓÔtjø(3Ñ¥ÑÑÖkfZЊd˧ƒ=¡Éžhß®Ö#¿ièy©jl§M™v‹ ‹$“Þ&‹µ«v?ÎÐÎ Ù-/‡»[j¹H¥fï%ËÐ…lZÍM¥&rÏu8G»s±A¾½I&™'Ê ±ÄeöÎëC‡® ª· sÚK+T>ÝàR® ŒïÎF%c~^ÈIÈ‚¶ðm|ŠšRc"1;M*Ȥ“[ 'óÚ>ª¹¶Éù“àÃD2ðè£Þ}÷Ý3¯{{{g^Ü}÷Ý>úè¹vaF‘ ƒü¬Ïºn‚¨˜–*²¢¢º $IœóÄÊðS/ú¾ÕÎkém· |ùÚÿ»_°ò;ÚòPÇ5ÏÅT5öÂu]qÕC;rÈ£¯µ¯zl_×àðÎ{¿öÀS€•ßùÅ뿞úôάž;øeë×ÏOž#ùŠ8Výå‹}¢iä}ÍýË;?ûRÊ´rÛºþ›ùwgµÜá¯Rϼx®}‹Y€Åÿ÷(ŠùcÒ•¤—UÌfBüö‚e™×–NV: 7´Š“)¤Þ>r¹·£OöíÎ-’MªìZsþ“mè–u³!ÁXš)óI^*›<нåòP¿Tyúñ{3(ÇèÛö»CvMJ ‡[г|fTlÕV XJYQš=6YpÕA9–™‹0Ä"I,™&ž=4ëà<8a»a±äuZnR³(–1 §öbÚ窀bZ¸…K @–Ž<õªrÛzäþïR Îêr—0—JfÙ¤Ä4„‰žib÷@`—ÜX) ëâìE:ù´No©¼­¼?›?÷³P–Çþñ£É›6¤N5=äh-d×SÙùÁŒß)lÚPÜ 3ÁLcO•ÛEÓ9•€nïÊQ0²'ˆ¸äáÉÔ¶Ã6‚!JìCÅþv»÷’˜çü–Îæe1}Q­õ‘ªqàå©åYÔs[K¯ê"ŸØ˜ò4ìg†ZË•tÖ:zr~0óÚº©J‹aeA™EqѨ$¢Kk­U—ðÕaãòÜÍ—æoÞ,>úEé²=ìGþ[úh×|¬ja—éž‚¼¢º…Ä4÷¹Çë¸ê_\ïÃqÏš‡¾¹…þ7ˆÇ~ñ[õúþ‹õ~‚ð¯ûÒ·oÔ~ûÓ£¡¿tS@G¯¸Â?¼gX=þ²~Ã7¼È‰áÍý·ëÏQ)‹ÖÞvõ"?‰ Ž–OüõÇ=Ç·õÊâ±_¾ŠÜô÷÷-ubDà’¿øÚ%\±ö¬ÈïI4---ýàíŠùßÃ`ÜÕàfáðÒñZ°`0I€“Ó›JÔã^“.uu„Èü.¾yP© ÚôÞiüëwª§,•ºlÈ#=i•ø`myrPó ª•sç0ÍG½ 7n˜ºlÙtއ“#p„fVÆÁ)Sn¦ ê›Êô”¸ÀÃ;£e…¹œ b¨4b½{ŒýÚm³¹ˆcÃö²€‚àN @Ò ®ÎE2CëÒœ©À„éósb°ï8ŒÝ¶¹dµÞ4.º¦‰Ôy\›Ý=•³½p$|ÓÅÓwmžºx™Íª­ÞÀtúñ¹¸hoº.†j~÷y¾õ±ÔÆeYŽ™?­ È] |ÀÍ-“ovû€Ò•¨Ôûij/É`ÇDû «IÁ('™`E¿jwXýÉi&Á“”ØrÏî 8¶nöóÓééøcgêK¤ËÝ;ÅVÚ…_Þ2¸‹jø6ÿç²Æ¶¦÷.m7Zšéˆ~üháî«0Ž1Ryû÷÷U|aÕ°ß)ª@—„½—¦iÍeC]vS2˜÷ⵉΘwEðöË™%Uçt”® ç~½¯býYï³´°é}}®›ñ'’žæíT«Ç‹¥ ìË=å·µØBáÁ²Â•€=ÝÞÖ¨…AÄ^í'6ÔÁÙ½g0uÍÌLèž*Ô‰ÖðÃ¥t¢W.On©+’òæÓÒeuÜ’eÔ‘;õ~õ•Ö/_6i¼*Aw[VJЕŽ1Àfåhì˜"[4…Ìï½³ý=¸mǘ[.æûÆàWÛC×Ë‹«§æéôL)‹J'ÃŽÂÞ‘P¥Û¾¨tR¥È¢–[Ðãow”ß¹¦2g÷–úÆ-Ëš)3“Jš §'_V‹  i*€¢€a€a‚’é,çõò¸sÄìÏ»âþî"UF,­ˆÈ&M.­T0‘5$£9:%Jå-E¶ÞPWù@ætÝ”µi,ÍôQº¥k(¥¿¸]ënŸè‡u—š¨ÙÏÅ`ÒJWßþLŸpy¨Ù›ÖF(1Ñqžcmj2á«;É6Fæßð'G‰»¯Ê/¸o‘"Rñÿàƒ>þøã3‹µµµ3!ÍÌ;3™™³ Qцvînw3жtD 0Aq²ÂeÉ:d%È+†;÷_ žHÈ4(‰œ­ÂCá.³M÷&h&@‰÷Ls¥ÞsC„»ÌÎgu”ôdÞX¨W¡|ü[ûÛÑ/lï۱ąˇ¿Øxå$á)·eûS4–Î ì[¤H‘"<‚L¼;B^¿2 ©,÷½Ýå_\7ÊRê嵩½ë­ò‹­…Æ`ÌYÎJÕäpZA'+Âo¤¸%âDKyn0îúHmáµíæg¯C8f6+A˜ûÌeiÁñ;.™Óñ»´ñµ5Ü#’V°É¯h’¨>†ªõ˜—ëãB¨”;Cú?ϾL°½Ž~çÎY‘ã`Ìym#`˜… @`&Ap”Οr^cI„ÏÏe`RŠ§Í³¡GÑ{ÖËc>ú‚þoß+Çsk[àñ×½W­Ñÿ£»ò «ûü^ú²ä"¬«²ÛáGã›—ã;ûû%îݤÔÝ!#8ÿÂ`ãR-ÁœÕjsv´°é©œÍïœK¤PºìÉǾh;ðOC·Ön¾ ip»±[K{^ê.òdíGñ‘Ø´/ÄäcNEP‚(±žÝç#bmcbÁÍ¢«XzHaKG;ß»ˆí‘Mæ„R+pd ——dò'ü5-¡ÔÕ†ÿýï?\òŽèoÝ·þÛŸ–Fð›ßïqIX2 ªˆ:m¨¢Â9™ö~äÞ›­÷ÿ§Œ%u¹ÚrñáýuŸX1|*ã· ~Gá²:õ­Þò‘éÚ›ì{ÊþBdÍ]J_qkoŸ=RÂKaÃtWDeœÎî]L|@wø$™è ðÜl»NQ£E‘zy°´AT÷Ly´êPµêð4ðɪ¼ÍFýêÄýÿ0wn€ÁçÏâÞˆØ ~C¶IÁ$‡©°€—q°LÎÔT-=ž˸ڲNXŽžQeç!dÝRˆ„¬€OZéé{=Õr…ÿ$ƒÉÀJîƒªË Zjvô㟠œ²²˜a`Œ »¬™0²H‘?>duÙ©²;ï¼óÈ‘#wÞyçÙ«æŸ E‘èG{cUn«Ò¼ ¼ ²Š˜¦É« j@SD;,¾õ±ásžÛÌ¿ö·ßß“Öé½uwÝÇš`Ûî¾–xñ+ßß“Öõô{ßÿÊóØ5÷´qç8»ä®-æ ¿7”Þß|÷­Â‚WÙòÆJ'zâ­>9¬»øŽ+Íç¾ö“£ySKîøÎßŠüžÿE.0õ8¯­Ÿ}êôü¡à׎ÌL¯ƒ.Pd¦èemCæÍ.ßé{QºÌ&ÖW £îº×ÆëßhwZª§ ý)D.GG¸|úg{œm5ʩꀊÝÊ]¼T{o€œ®ÀqTÇJÊ´q'VhóŒæ—qž²/›YܶßõW×@Ø7û¼ëĨ£©¬N9)À"q‹"1̘³æ0C”ç§_Íœ 4§âžW[KêrÛwë_øt‰Aá—Ôók?Úîüdí ßQÐz”ˆ6Á²Õ¡ìÕµ.â{㨹Á>òƒ¦ÛDŽ1YB^âMŸHŸiOv&Õ~1–ý}#59œ¬x V„Êô]]¥Ð—³a(€Ý¶ùb#!¡Ï.™Ðí^*÷ãý¡5õ™¾¼m,Iö¤¬uµpzD´ ˆ¡ÒB ׄQÛ" ¡hTZÁœXMŸT1*Íù—R]¢ܱ¸|­ûWñMGsµ÷×$—õ¾(¶çÊÃs¥qv«#|,¦¨èü9úÀ0´Öw¦ö‡£µVŒ®ªÈ?y¼¶ýÚ§Ù+ J•©ã÷|Åб_ ¬¯»iü¶¿œ¸îÞ>ÏŠu\N_¼y²b%F⊘ºÎ×,µM$Wßšn\Tïq,1u‚|o4úÏGV<×ÛðÓ®ÚQwÊ]µ=Ÿ ½òý';ÑfߨͲ£C²+Î€äˆøµI(7a}· I‡¥T–V.±±ÞYæ7]èd´\‹V˜ÑJà¼öÕ¥¹Û¯²`çäá_!ûö+djb[²e怖ÖïƒÔUëíƒ( ¤uæcI²­þ|á_‘"&'?øÁN½@äôÅóìõÉo<óÜ/ðÞ¶Z晦QÕNZº š…¦%k€“äÛòª/ýô-‚8·âŸª¼õšÄ_µØß‹cu7ÿã‹ßZÅ€c㿾òíûï¾6øµŒåY|û?¿òýMNdá„9 Îÿúìî¸kYíß<¶u—†FÚŒ]þ•¹êÆ;[êý!··yíú2צï?ÿ>ù‰‹_D"?ó™„G‹J™"¿/3ŠÿbY‘ ƒ“cÄ]—¥à…=%+«r~—0ó>Kk©Ë¥¸%µY¿KÚõ¡¸»*4ë6‹ ‡(åèdО³•SÐÓLüÝó¿HE™øÕÛĦe¦«)2eѾÓÚS2bLwÕÜÒØó\_#Q ‘ÝÀ£LsG•A•&¼´: WFéáÓ8c_ÆÑÚàZW–fI& ÊÄÞ8wýÊ1 I P 1G,Ž"$eöWÄE®Êš1÷äŠÇ9»ö~9ËûÊvëÁõiA´‹]±ÒÏv€¤ÓïHµ^Ú÷Ú!çÅ"îl 8ô¼ÇJÀÑNjënÕqØÂ9#+RíLîNÖ¦e——^ø‹"ì^l,/ñæÆý‰c©ÐÒõ7̬Z^üõÊå 9©R‹iw@yh©òý£­tZ;˜ô|¤ŽçX}R&OöPœ—Xü}þ£1S±K‰Q•J7iÉ4"/%ÛF(~ÎKPªÒãkHá¿~·1è¸üGo¹Þ‰<-¥¼#4í+uhÉ1¶V§ àÌçG;‘¶¦… .*ׄ¦Óþ_w.¹©¶ûô<•]ÊÚ„)ßÐ^-›W¾ySM …:’?ìºî¢ôô¢ÒÉØ¤‘õ»ÆóSŽ¡–e “,¹fjÌÕç+ß©Ý hp9´(Öw új*ØC}\SÀ.h§5m©Ø\€EÄÆ”ðüÓr—¹´ ®åí†àRH>÷Îõz8±±ÓwÉ™T™k>«­âIŒwKŽ'§ëCÙ^_ÉÀ¹ ì߇c,°Ì/ÓC}xá8ûý€µH‘ ‰©“€Gyä<‹ ‚aØ­÷|Þ¼ëÏ·õñ¾çþ¦Í•Æ-•@ C×D‹n§>òÙz¾sëŸøÚ<‡4ÄÞöà¯=øëùŸ’ñP-ßè~¿Úu­þòK=_>µá¿ž¾—mãoÒ3Ž¢¶Ûÿýðís+¾;ó{ÍW~7ô+õÌeÛ+Ü玺Š™#ËŠ\0 ޳Í%2GëÇú\–e.‰¦O_[æ:'<3¯×ÔM½p¬ä3ïG2!gaßp¨µ(kÞßí)Yz±ç¤(I¦sŽÆoœßqrt\·SJmI¸äY;cÔP0U0½á›î‡šV†*£Žaˆá>ÂTË•qÙÆìUšK­øé’Œû²€[zøÏ_$¥é:iiph0xuí¬Ô‡"€ 1‹Å¡P˜Ý݆ªy ?UÂÃ%0[Zæòx³»{ÛҘݾ۸ò²€’É 9ºôŽêN/“½sC¾kIçµJjìh'ùïo’«/]»®ðò{wUè™þÈî®ÌŸÝð¾v‚œ©c¹²KÏÉxÐüˆPe?1؉æ›O_ÅRjƒO|òh´¬ñ’Ji¡H®nÌ¿Òåè}_¿äøp& I\ÓŒú퀔£ŽQh¾ mò›S%Ö(±xâ)44„G*YÜÑêz½?'™dW̺õbc¨ù .ŸvÅ{üû³%M…ª·kÆ4{A„·NÀÍWó¤,©´„Ç}i¬y±gê"¶Ý&gý±#Z*£'Ó9ÚÏ×®Ï\Þ:³± ]Üÿäñš‘i®fl]b¸òñA-0îú|q?Í6Õg ÐX#å¿h¿ê«T’RUˆ4¢ œGè^E Á¡Ù¼*ÊXæ\ìâ-?}l(NÐ6›8ÖU…D½Ë Ĭ«ÄIbˆ1;#L©áê ñÇB´¢•Ö*}d[¢eB®˜êIMÝÚ‡Ô”C$ß9'T%^‹— 8sÆ58ÁݰD>Û+¢H‘ ˜?8’Y¶lÙO<ñÛœg-Š¢×ÞvÜvÏ›/=uð×_YêLì~ùñLóŸ᯾ý‡æ¿mr÷öDÝÆ¶€5þÚ7¿¶·ä£ÿVú!³ZEþô(fcŠ\0í¥Úêäd†ÚÓź¸?½Wþ9·úá&/ry rÔÙ﹞÷öËÓRоZ û( v½™ 5ƃµ*ÉÄÃuuOý¶ä¡5ïº Ã$Ÿ&(J³{ó'Ò-,>h0gœÎ泓P›í@²‘òÈY¥~„Õ韚_â5e88T…`pùÊàÉW¡ecsöçÕÊLÄ‘XmZå%–Ý6?ªik4¾ÿª­µñŒ„̱AnIµð×´H‘ ‹Éœ?Pùý¹üÚÛ/¿öö};ß°«¹.¿årÌÿd¬üáï]»ù꘬#ÞeŸxxë_6°2¯H‘"E.$’i|{/zåjå+¿ñõÆô‚ÛDÚkGíFxXM½7¸®ŽR¦äÙ¯Í#Çåmq4F=HrÒ^•Àuµ«€H‹«R0ó¼7¡Wt”+D9•ÌTHçÙ°Ó¾¶¬c[¢Å¡Þ>¢"ÄU•zëС}ør\œ5÷ø ^ÀÁDn\›ÍCS3™`ЦŸÒ”³¤I"–Œ€4}¶œÌƒJ¢†ªÖlBFÁŽ3FB¶gX™]—ÕNí=„~ìVïØè¨l2G¥ÚË=ƒ3aÌ´£.–†[‡ËB U×TámT|X £åêº ‰ “%áÑqxüMì®Í)ŽÖ\^äß[ˆ^í=4sRR•<™1ÿÄþTéªö¥/Ë {GB‹ÎRÓ(}oöú”‰´Ùì—OÕqI©J…/\Ô¾µ§a8 ®n®6=l>wŽìó@‚܆tP[ ©"‡O½éyÇnòS÷†“ƒpè¤Ô¸©™†BF@¥˜dY£ŽR‚ÍCòBÍ»OåÊeÃUÅ´÷Ã)­ÿü!†ÇâISq©)UÒ‘ñ!¡»Gw„Jï­kª"FÜ J†VÃÈϬ¶—úíù°>åzû Ñ×`·“ÚdŽ ù_ÞüÉxI}ÆW^>~¸±wp jƒJЃ“ŽpµóEc¾(¥+Õ£{Hk RC)L‘lŸû´&²ˆƒGhÞ$XŠ`@Ir^!ÁæÆTï ÏflܘÂ"zßô“«„i_NžÓ˜ŽÁå®ñS5›iwÒm>¹­ÅDˆ'‘ÑIäéw‘¦hZÍuÖLHò›‰¸3äþïŽÐ7®;ç)й ùïÏ(¬Ú°ù¿{¿?dÃç·}þ¿{Eþ2#÷FrÊ+Räýø½ë…m{¸¯Þ xn[ÑQÓy4™¡…£UARy»ß1מe`ØÚ5êxhÀaÉrW§R®äµŠ$Ó !ŸròÅL…+ŒXŒ ÕÁÔ°¥«œK;j ”bpùÊÐÉ“…Ú>¡²–VQ"I–T‹'³ß]Y'A&ºÆý9|mDKN3· «ñinQéœ#Gšˆ¡"`QˆÁ òŒÁ¥Íyk®í˜B{Ž`&(—’# +6)‘gJ܃ɫÝ= u3Bÿ4á& eQaï¾ ÇXÙ{tÔ©¯ªÊ£Z”ww¸vjÚºR~kÆgýàÌñu” ³šYP@ ÄÒôY?(VÏÇqç©aXg›î'Q+ÄûbA”@|\.«Ð—9žà;‘;®T¡Ã‚yÄëð³RWïƒw³¼«çS~cÒ_K ·"7•uǘ!IKñ-eÈ1Ú½Ú•~nŸou­´¤&½š<ñޱüòÎýRI¸}å]§_X–R‚œž*8N ]&•p§¹˜îT%(³é¥Aìð€£´mJÒéž¼"íÁË–xÒBZâ<ÌæsE(9ׯ¦mÑ•äKüŒê¡µR_úào'ABQÏ%â{û•ßazí"ý™Ýðõ»µŽ³ÄÜ|¥¬)Ç D EÇÌz—–ñjcÀè…æ$Æ¥U6eC•ïM­*éÀßÚ•¯Z"UÔ²n‡éèy Ñ”»ì½»“‹¯—/]söw4*UÀˆr#DU¦|Ú5rÞÝ/§×^Ã+dgVò®¢„nóØœœÃ±Ú¥âà¤×Üñ}È1UÕ¬tÌ͸"ÑøÁ›h³Œ(0›0Äùl6oüþ­OÁMw0¦éR¢n× CM@Ì*/©8¶ä€1LdÅkäüH¶[¯XðºÅµp=y¾93TØ ¢#¥8}gµE:Õ""²ë :È“­§éd^?á¾ieêOQ¤ÈÆÉ>|øðáÃçßæXV¤È…AQñ_äÂ``µL#솛/_¸âÿc€e%ÓDÀ«ü;ƒ¡TÁî·ÊXí¹·ÈÅMdYÂR³Iåío¯oÃMÅ.M°ÊTÎUs׃N3Ûsz3—4Ë*-¤†’ÏR!wPz^·ÔuöŽßòËDïïÒÔlŃõû6h'úV_tƒuD™¨q-©É,©+dŽ [ˆÂ¿½a¯sÑÍeJI B"&‚ bÌ”–yõ¬hRêû?”ã¡-3•#gâí©ÈFvV´Ðãé ÙÄŠOè;:ˆ d×ßèÓ]m+Ü:°e1µ,©$'ù‹‚èoºÛ>ÞpÖ·ÉϼÅÜ{S"¦8öç+n¾¸ÿÙý>FQ®‘ÿ#Qz¥õ¾&²çìk»²"¶,ü‘Æ<ô •ŠïWJ#j0jçÁå<šE¥¾%(QNò“•>.·»¯¢”«ké¨×°3…J_é›Q!™œÌ°ÇG?~/PeS›‚b™_´1zÀ=ëy HXï `íé Á´B.#ÑX“œ¾¤´3ïŸH7â1+µn¾ÂR<ê˜COò¤/dždÓå•FH'QË@)ÜT&xöï{*þý–¨—"\ˆî¡pèë1"—ÉyÚ·i¶P¾jIï y®[ËÙ:½‹'}qg«CK³â$„w¾¬”ÖIÿxWê™3ïB0,åiuŒžP·V¿Ô8øÔ4²‰1Μ>Ppzµ+äZ³íÓ\$F‡Ë¥fZm’ÃBÃÑY ¤¥Ù@Ž˜Óª$¡:àñöY5‹Ý$ë%h¢œÔJ€_X¦’1^ôƒ-\64«]ó˜Ü¹üë8 }»wT’Næý¶H“@Ù|c‘"J|˜HæSŸú¼ïQ† ³ÚÍÓúÓŸþψdÄ}÷7~”x¶óá‹qÿƒ·¡[»YÁ|ð~EŠü'PÌÆ¹8ÚaY†±eÝùÍ‘Ž1–ÔŠƒdÀ«±”²©:±o4|MsÁce^Ù'}å³ÎñülJ'U°ÿàpôÏ– ø³PÌT\ù~ñ(ž()Mcü\§K)›Òøl¤$Äçs²H_÷3”f÷ÇÙ?/ÖûškGë\“ÓÛ’ïpÑiª ËŽ%r¶ÆÐì¼|Ƶ6gØnªé¿e­!HX"MŽL‰þwŽÒzïíÆ`ŠqzSs1×p§YLÎxP íh¾ÚK«^:pS™‚,_°J¤Q5R³6LΊÓé ?ó·‚ÝË9²n|ÎÔUT ¨¦½š<§¼çtœ„âB•·ãÑkJ;|©É4ñõ'˜ÆÔ¶È²³³Šÿ±4{Å¢âOL‘?E>¤ ³eY÷Ýw<öØc‚Ì[ü#ñYyë7¾T=“‹)RäC’LYo5ÿþ>‹›ïµ0!ŸöÚ{dS5ðAgaÇh8Å;Ôɱ/ßÍNl¥ND•úÑÑš?[Þï·Ÿ!Ø@ …äc–”ŽQõ‘‘²fnVÊœŽýfŠ/9œ&6o p»¾Æ•º~)O‚îÑÅ—°K š°7Gû°Ò‹³8È™í¿ŽålYy¢ š9ƨ.•¢QÌîÁcƒyåÿ±÷ÞrTWÂ﹕Cç<=Ý“g4I9K€$„9c±`#cì^§µý­w×öy ƬÇÀØ€ˆ")¢œ5š;LçTÕ•ëý1Ã(0ŠŸwŸ-ú÷‡¦«êÖ½çV©«ï©“TZVœoî±Ä³¦Sn ¶ š*½±VŠ·A1„Ôê?,U/²õ;ÄÒÚah8r ð»g¢÷]ÿ6GûªÕLÌér¨€ÄXî:ÌÝ{¹ Þ„£—£×_6OÚûž¹tÁ‡’›þ%ø…?Ö¯ÿ„cèCÁ|™jk;‹àT?Ž’½œúëþya¡»[2Ø1Ù¿S¨V XäLvzUK:’̆»Eßz6÷Ô°Æ9°Vz´5Ä‹7{êªWˆñ [ñ½iˆj¶k÷,+=rQÀFâx:¶ÀMuÖ¡š*ÍÊOƳ„´w@ÛéûÖUL“ 7dK9Jk%™÷#ÌÔAUíKðXO¤ñA÷á7ÊöÄ’ÛsþB­£ýþ—աܼU¥Pý™ÿƒá†Ìeú1‹Ãÿò£Å»¾>±s°@Leq…µRª(:ƒt>–Ev¹mÿþã~üPªvvíÎ?ö]z£ÌÈÉÕois¹Vµßlš19DÏaéºÉŒD”¡øÊÃÇø™Õƒ›ôè‘èÒ:h.y8\u¶‘Š.fceÍë”E¶…tU3e‘–2´V€bÐ4jɇ±’2Ì´§^íXWê­côg¨âkõ÷cTȘԳ6ôÛ¿Ý<}ú .n.D“1 ã¾ûî{â‰'À4ÍŸýìg÷ßÿÔæc=vî]bÒ9tÕÀIììí>€ð¯X÷ù Q¡ÂŸŽJÄ…‹€¢`®™mø<çúèåY£³N=ÒGúÜ:GÉ«êâ/ì°v›­¸£¯`[€·ûëÖ·¢ÆLtÅ-ôªëÂ>Š ßÛ˾ÚÇ×pÊ¢Pn†lý%®9zÃ.¯0 œ½]zùE˵Mf?@~œòVmF3®.¨vîx¾Ú¡Œ÷ò`V3«Z*’ )œGÏ!.oa}·]YÂs%"S<Ї÷#~ðñ©ë-íxÎìÍKVgÂUb‹N2àÌWrÿúT÷š9ðÃÏcváT+¹¸ßkÏä…\æÔ•ås{è[?óÝîÆ0x-Ùy§ùÚ<ú½|©³8ÑypS©Á&+WÎŒõÆ/lq\z™œÿDIÍ)D•é’ì!NöؤÂ0 ŽHÝâÚûh×ì†úŒŽV0Š8|L»lq^TèWû­kç©8N]†Jk‰”}B“%²7jÏ•ðYšlªß¢6Ê—tæo¹ôøšÛç‚Æ0€PF‚ˆK°ï(M`UnL½£]w%.šðÔYëgœ:QÇh‰q€Añˆâ0ÌMÕ0R*ä—£þo›ãµË“×~aêá²Í3‹¡F&=Î÷²îz[l[(ûª¤Ó›h®ø_úeñ²;¸úFBÈõŒu–“·Ž@Ñâvdzù¡®,]M–ì^[_öÕWwïÜlYå·i–:#c˜7 ΖV5€ŠqÓ #=º×7ÑUUi$I£}ôÈÁØ‚[K6·UÈÙâûF«æIkaÏvqñêf@jD¢8JÞÐÝêd”:Ï4aÊ¢B 2/X‡rüÞ4¿À/_:ߺr!\1'"d'#§GrÀ9å”p;£ç@AdŒv¯*íxß¹0¬¦ 4©*¶Ë,äq½âhÚ³(U›*,H!ƒÑ u 3Uéc¥€«‘ÓkµÛׂÓë(Œ¦Dˆ®ë\[Ïtï­_*oÛ½´©ø£/b<$ATÕÔêÅq+mÄbqQ:µœÈ»»,·Í—'²±)—/ͽÚR¬Ûà¼<0¯õíMòCíÅ [ŒèAÕëCùÙu „° Û|׬¨r)Ç5™”`!ÖZÂ8žC(»€éŸÈˆ•.;:l%D”©¤;¸¬n¤Ž%,‡"_mu©øˆ¤óz)³kÄv¬¿v{„i´¨K v^ûáÇú‰L¡Œ÷²˜F®€¥ó¦M£®˜iêz{• ¦Yå1=8Ôƒ®]…5TË¢’0uã¹®Î+çf%ªe*<1˜iê ÇñRœ’Wü(qx·2sæÈâëÊ®Ú2fhBW-FÉb(S¶BNc¹R¨¾ª'Ê"?Üç|ç¦ …Å«Åð4&kd¤ëZ ш'­„ežï¤H•ïö§Ž¥íÕà 41L†®{Ð9i¾¬êÐ[¡hóÄS°L6wð°¹:C5ˆŽ9g‡*¿,>¢\`î²G}&ì0SjÌ=÷Ü3±ÿ\˜Rc`õ÷–Á?lýœ“2#nØ¿hϾ_Ì`ôä–%_ùÃ×ߘ閎<¾~åúû—õ½x ýÞ—núNòóïåþvޏñ+«®Žª“<âÎï~îù¦GÞº¾ +ì¡+~hþ”T"þ+\ð<ЦÏÏ~γfÐ¥÷£ÆZó•7Êó«õå1je ³¡· À\^?0ÕXThQaâEëPβ/Ã…Xu?³¤&~}GTÎn»Ã°Xò©ñr¹¬ê€L™2ÒE&`3Љ€‚Q¥–eßßë]»3¬×’înÈö‰5–ÉQTæPÑz Ÿ/¬)[¤¬€tSu ”¦ÉàÈöÆíÇ‹8¬–šò¹¥3ÝdMw*e“­¬=¿×1s†!ˆ¦Ã†|^7+ÆtCÎL& 8…)ƒ )‰ŽØ mh¡~6“›«Žî¡1ŸH‹>·$ã2FRéGgÕÆC±TÐém¬’û`RÈ×ÇWÏlPª!ux·r~2‘´ 2vRF‰+ÂÎhpF‹lø·vø‡KD]v4B=×Umšºi˜z³“º¶!—.ý1j¼€žÚ^cšf³]Ã84—EsX&MX5UZG“¦Éó&Ïž8/ a Fgio™·pËSÞ5èí¨jñ1dõèšbæST6âH yzßQYO¢yí¹Ï|²& ‘Ù~– «9á´ŠÛâewV!—Pr¢< ’ƒ…|ë,¡¶‰NsÝ-Ûß;+þ âž4Ñ’èyçéøµ÷€ªi©¼¶¥ßµ"œ¯£ …W@á„B2*kw ãªÙb¦ÍBõ\ûØ^G¼xÁõ›6ºšè¸§&† %ÑâÏè¼uv4“4$ËàïsÍönUf<£‹¯¶3õG_輱Ğô`%Y”’D&G°Îð¬Õ«ÈåT̺Èòâh‹ [83ëíé~ŸÛ>©$Фiè°#ÁÝ´`ð4_Á .r.Ü&óÈ#lÙ²¥·wÒ ¸¹¹ù‘Góõ[ý½ó›ðÜøµ»f°÷]²îZ :?þõ»þù–×z¤«ô'_Ònþíƒ í8دüú·.û¯Óf?9D0˜päàþ¾¥îVOÍÜyç'V… g§b©ð—ÏAЃ%Ràóœ½ñW_¦>þ<~ÇUZ4Ÿ¾³ðŸë†úK7¥\3㘨ТÊÄ‹¶á¢å@†¯f”ù¾Ìâpt"1׉¦LŠÑ²”Îzªü \Êe²yEÓZq¯Çrš6‘g,Íxª # ãÛ…–`ÅÞÇŒ™¥ý9¶.68_æÏ@‰²2½`«¤+ºª`¼”uÉe-u21™“×faéD‚  >NÞ}½ë—w”ÆßîiAù›7éÿs73Ò'Öxóqú_ÕþQæ¶Š•ì“:Lÿª»&9Éì Û¨oéVk}0@#©.à{ÔöKð=³Â±!0ÏrnV&å¬|©{…IP°Õôæ|ž4™˜h«â $c3R åÉ踦ŒÏ¡LBmaŠ‹üf0ÀÒrrL´eT:ì•Ú ð¬:á[uލˆÉá^„ GººÄQ»Û ¹¤£ç1‚ ÖÅ EmM™CîX¯=rrÁö]W~0µ¨P·]cByRfMS‹H"í1Í&›O‘%Í:&ÙRŠ{·ØÄâà î@µ3\—Ev°×þæ †iŠËÖ”k|»ßÎ-¾©ì<î{Ö5Î.k/kXƒÍëlŒð(Ce¬‹”ñÐɶˮŒý"*ÚGúÞÉ_qM÷+= oêÄ4Á0ò¯l,~⋵:L%ÆÓöB|0qýg-…tí¾ççÝ^âÓ^"MSµbŠyDP@óPÈW')"&‹”” Ápc²º#©Ú Õ†tÊCä\tŽ#¥´2Y/ˆ%¥NKâéÁ¶Õ¾Á*[ö·Ù‡Ö÷ÃDñŒ6˜p]ÓŸVŒ > \xÄÿ<0¥Æ@ooï<ðÓŸþô#þMÓD™¶mݲü[ï“ DØCŽd6²;þâ—¼áPJÅ1=ŸÃo— µ0"¸×&ÈRÓì:Dz ¾ý›ï|íë_Xö³íú¿ùþϾyM°Rl§B… N!€ó4Ëpté¿Þ`Þq-â(yE ³9éŽ)ô»#X÷‰¢…××ò¯Œµ,Ëû;B»ÇLt‚JÕbCÉ„9pLfø¤`ØÕ”9o%MÊzÆÂÛ5¼ô®’ÕuÖëfjʸìªÃÓdfP¥¬eÚ•c„"rJŠÑ " âÍ4[Ö™AÑÃi¥É2öAvŠdÁúì~ǵíé2îøÎ¯ÕoÝq<š¨Ð¦iÀ¡¨siÃøôÃW¨ðà#þ|ðÁ'Ÿ|rb³¹¹yB¥™Ø3a™9&”™©Ïçv‚%éÀ¿Üù­‘/¼Óûî!íùRÛUQÒ¶–ÆrÚDuf9-è§„X#‚ÁuE›N/eDcÂ2Œ¹–<ôó·ú¹’Üõ³¯YÿÕËÿ{凟¶*\•ˆÿ 5‰£‰¼Uçs–ùæ>ó½]DS-â-9 ó óž5ÁkšÎûu2Ò5ŸHY—Çç°Ûl46ž+& ý5«³´4=Æ c „cûë#üx¸³dåKŽÚÆñ]¯Yoõ° GJ&€6i‹À4²;Ÿ'¦IöØøìMÈÆ›{¿sßy¥9󾛤*¸l14:1ÒTF3Òm« ¡Œï:æxôÕÐÒ–rKua"›”ÄÈQóBqWɃ?ݤ$5©G¥Vœ7ýh\¡]µŒ"ëlF¦j2G¶‡BmšÝCŽ…:«Æ&¥"%£Ž%¬‘Ü¢5š³]ÂÕqâ#=ä¢9ÔxÊär àѼ* Àâ’“R2ŠÓE¶ä¼Œ LÙò`Ëc¿™²Å&õȉÍb9>æ<~‡ ”ôT„yµñ¾×äž_ýpcÑ8å4¶áÒÐØËïFT¹ï7?z=;QAê}ñ…í£‚”Íë³QèÏ4™t…¿`&"þÿÿ–¢B…ÿ+ªÐ?z?'Œf…Õ}cn0X»)OFÃéˆì;EÙdFÍÚQ³v§9ÿ tŒ@ÂæØýýÙúÞ€1â×G¦³,ëõù-F×TØþ²w˳Á÷ =‹îê™óxõŒµ R^}ä¯PÆ íjfÃflnƒ„ªDØÏå+€gÀ2‚û²3Ç,U:5mÿâç?ð>yEáÉ#+¾~xñÊÎzðg?Þq¤}üÕtò°ÜÁÏë `TŒ ö»çÂÚ6š†©ÒV«Rèp oËWÏ¿JÏÎå†{\¡Ø±¦%\1f)eås:o…ƒûÌP|Û+ë’ b4'ïÍÞñeµ¶í\äŸ eZí'÷ã†l“"AáXX „NÜüÓÈup þîû×ܲ¾s†7àtw\rY˜d_ùÏ}áîOÎoþ†Ïå›{éêÀÈ)§‘MŸùé—Þ¼kAÝ÷†•kWúû@ÏîüÉ]wß>˜×qKÃå=ñŸËùÿµ™TøP‰ø¯pqÀsÍ`g®ŒyA„oþ}÷3ÀsÐXkŽC¸ŠpaȘaÄ´\nÇ€­ÛÇÚ=Á:oUEðy??{§ ij:›+° …謇( €÷›®òxóøÞ^ÿ<…dúW™‡Ä8C´kÇÕ‚=“^lŒÇ n¢SÕ'}åTYE„%ËÚüU8”¬~$âõÝž{#+[œç±™,ÝšØ&"®„Ó´. LfD1Ÿçøám~ÕÈòèëÇ¢³Ÿáfó« >÷i«""‚B¼Ã¤xQžLqó…Ž%^ ±<€”(ô–Ý·¬!ü¥"¡H#Ìj wçÂ{á:º ó·ùnŒ7¶»†GKR™)ÈV›Ê“c±¼½¥té<ÒÉèÕ\¬KªJ˜µn¡€P£3ÌŒ¿Sì˜ ›LÜð§ [ ¬V${°"ƒä6Ôo…À4Ž„$Aج‹…„KÙŒ SµïT"þ+\𜠀ñÜ9=ê_}î»|©’½7Ǻ¹2\°ÑD»;z•”Ïp£inÃf»ÍN†ëªkÜ€]«B ‡qN•7@ÕáøhÝ‚ka«±¥bÈšÞ>øN_h©B1‰š@îH¸ ÍJeç_bœEÆ‚-Àç%‹ ) ŠIǃmHÍ V÷϶>Ëæj:*Øl—'¹ij?²Jù:sL¶„z:à… [°UK'5¢,:ºö0c½BëÂP q§<ðôfu{êÐìþL‡ï¤Ú‘8A’fõhš¦R„%Ëh¨‡›[7ÌT9ã–Öç_Ì]³"-HÁÝJGR¡9Aiv›7R]Ñœõ@ʳ¨~œ%¥”F¥%G\²›`â”Óc¬ÕŽÊùWúŸ[Ž9 È£äŠÔ• /w$@2XÉd²†­ô‹Â2'¡ÔI7V˜‡:óu& Üfa6‹Îêö["‡X—xç‘ù×ñìi5Û¹­¢#s@o|¥tí¥0Z1E§”?°BEF¯^O©’UÌðÅd0¶±‘² –êƒò-×­H—f,þID<Í^Nv±J(4–TËžvW1î’ÇS„»Ó“ÜÚãv˜¦YÔg3åƒ]Dý ÅãËù[zß>6¬ZlpýLj²Hï~£,ª+otmx||Ýç%§4µœÎ¥ºL1O Óg› ijЙ VÊ&Óý†Ž2e”Q¨dXDza>€D†ÚÖÅ=xsfBôH²f_Òe¦õG·ûž$ržKähùB¯e… ç­ÉÌŸ?ÿ™gž9k› •§B… *üYôœ«&³ï0s;'[¾ÔSÓâ,5Ù Ù™Ù“ ·»g´†`¡!XXØœ„úÆ]CÃÖýŠ­Ú_[㪪óÉv5ÅÊ©s‘*!9¤§H#‚ìhžôfu£qð½þúiÜî7ÇŸ>zÙßÍé(“;Åplo_x©B0‚ÕëØ ¡VJ*”˜‘qÙ$¢Œ‡·_êãäjxÎA”rò|–e¸nIäZ«2^3!û{Êvà9sf£¹ï¹°!o?º‡íÛŽÝð© ©J‚©„ë®ú@²æÙÞy³ÝéwÆë¤hÞªš˜X*Š£]S³àYóšeÊÁ>®ÕŠgnæ ÎqC Ê©Ý>ŸLRù†bÖIŽ‚G;n¨9²È‘IHöÙjè°Ð(êªÌ±ü»l+fbJc²q°±ÊÐî·ZÆä`Ã/‘ŸÏFD“Ïzm=6ÆÊ3`¤’Ê¡-öÂXÎ3c¬ay‰wíØc»“¾ªéÎZ—P̘]¿g:B¤ÍÇ.¹Š~ï€7ìS¬œÎ3 GŸÝ²1…odžĒk@!™´=˜¶!4›RÊÎäHo[vø ÁU+:ùk<Òàñ`*’æ×ݯǜ |¾O7½Þò<é]üZrÕX ¿d­báàÙ[‹×Ü´Pªè¯îïïGsæÚ·¼YL•´`3·ã•ä'þV™*Щ)Pˆx¦èhÖLÄ‹ÑÓI›3mNì¸÷—‰S& òhÊš¶¸fÃ4Õn–h$/æû#eþÅÁËa<‰ójnAD]¸èx,S½#1Z´º­ø·öÇÃïĜ̹_º .J.D“©(**œ/•ˆÿ  !#’À'jóD =¶ûáç&ßÖ¿t¤e?“—©½Ä‘RV;)ì{"8~VM|ÄE…N”lG£Þ#Q»‹·Õxêjle?•4…¬©©Š¹bâŒßG´Ü”ßÊ´ìslèÙØÅÔ 5Ž|ºãéßWÛF=s®¢Þ¡qtkWýj™æˆB @Q9!6îºl¤%ì>póÜXf hK—‹’QcÑŒd¯ª"ÿÈ~ J]GD³M»¬¹ø_o¸®é~VìX˜¾éÞEÚ¼Ÿ¿z¡%_VÓãD”ÃÂz¥¬x:jE'•Õ0º@øÄÍYMe ­KYh³Ú¸L ä˜éh1Œ€’Oº!å:<#C/u,õDzoF£¨bƒ#5–,;¶§wÀWïÆ ¶§ê#šÕÉ;‰²«ƒýbre,ì¶rÇ®'‰#K8­ ’Ëfÿ!¦g‹BÚsžæ‘Žë¦Ú`~†&È-/®» V-- eY(K%Ãe÷Ó£I"«2)™‰¨L]÷Y4¯b8VÅçyRF¦D¢z멪¹ì<5 ¸B±‡¸ÙÍuxÁõ\.i>ê,¤ÖY^PS­F-9¯ å¸17mVýV_Ù»5å•&a#Sh–W|W|e3¾p¹îõÅ­MуUå± 6OÛ½I•T&Þ_¸ã©"6Çç®+–lŸH{Ƭ3mÒ¸MÆŠ˜EÖ6&nåÝN錣 eGb´Hƒq0 D…~»¯.%Qw6lŠV%ŠÌ¬†î¡Ã+šñqÓý‡¸/Dýt>l‰_î¡¿ÍÏå»Ó, ä³V‚d*|Ô©$®P቉ˆÿŠY…¿tªýú¦½ôÜö3)ðëW±ïÞkð@²`Mäõ‘ÇwvÌ EYBNi§M`ÅQr+YçJŠ*“*ÛãYû¦„¤šÝZ›«èF‰B¡ jÓ»3Q¦„åMüÚ6a/Öc¸üjã aœ«)÷ïó­¾rð(Ü›îèt,¾A>ÖU?s4b™…Ô6ãöÇsM•¶¡vÍk/yöì)´-õéå P({Ý–Ø~y÷IR%2Ô{Ô­—g'UWdQ‰&Íq)Ð'×xíBÇ(ÇãeÜ"àÐÔÑ!)@Œk‘ÂÖCäCë@'tðÔ£ô ž°v·¨”Ê…´Ë錕Åv×°•’7$0@‹-I‚¢`Þ7¶S7ÌGÕv=Í7ÐÆ%¶ƒ2ãÉë#–u+Û9o8ìØ©%/Û0O a‡z4EϹš†:nVHæ”–qöUĈá)ÅbmAxÖàYô¢¥Í ÷ËZÔXQ£†Æe»¨Ð$ )µÍCË4nzñvðIís­¡¬u羂n–›ÃްWêò”b¢¯ *&óø˜§Xg 4Ö3pDa¬4‡£Ô¸œÁî7¢Ñ\x¡Ìbábð²h=´›î.w.ŽÝúéEi|Óú¶+Å%ɤÉG>žnv™"ò2ôD'cÜ9†òâ k•.Ç\ £+Öø1¯C M¤öµC„Ú×ÅÌm“ðRà Ú[+'‡ ‘ðx½ùÔ8n(eO•0„Á{z¿èF{…Ðú!žä¾øágU‹V=b¥$ÂbW3n†)j¬Çs*„‰dÌðOi2f:hÓF#ÒP±Dïß“s¶®Ž´=8í $²ÉuÓ\ÒTCúÕmÕ¬ãQŒâÕ'¦Nã(yjQ†ãÊÀ¨Àh&…ëfý+?¼åÛ†Ågõ…YSæ0]2˜&‹’‚t5$ÂÞãõ*éÁ:ÖÁÜåL­Î÷óf±ÓJRtHIúWÏÕ¶Íü䙽åÐÿ±~qy°eq{þ‰×Ð`¿á £¹XO48#œSºûózÝôjÌäES%w9V•ÍSáÃܬ•åÍ,U0[Re‡²¡0J&Îd698Zµ+â|p^¿×VÊx Î•(í÷·®˜4Ù±¸æãa>^Ö˜Á¼ïXÖ‹8ÂÌ ½’|¹B…ó×döìÙ³gÏž3·©x U¨ða*Ö˜ Z¡B… mVµ™‚8½&#ˆè¿#f¶°E80ìÓœU€#¶›fF&Û!ˆH¶ÖóšÁÊ ”ý¯F1˜´f-“µ,SïÖ3¸.Z…H‘´Ñ#¨= ó4FÜáì ¿%7úߒܛêXlÝ´!»h-JÞ¶©÷ólÂ7ô¦$ÊdÏ®ò‚Ë¡8Ysohü°ˆò8ð‘Ã1ßüp©{˜nF»v;ɳ—$×ýõ‰Rñ¬1w†RNaOÖNÈIÓ¾ù°k·à[½PcvÜ –¹Ä²fŠyYˆ‹iáƒk@#©õ(&“£ªQ« LB¬¹Õžæ¸q¤™Xrñ†qÿò|<++¢º²6Jè¹Ú’IA?–¯%1Z•¨è­fSïf¾ôqÕ,—Ëåò”x ¢pCf pPrFv¸èI’F)<É5äö€ªhÙTÚ^Ÿ®¾ôÃ^dÓ"È´ßv6›ŒnÕÆ¢·/;©eJ”¡”ÀasRemÑ!H7/È£kª×4ÈÀîH“C|2UD™9ºÁ IÐt‡˜gJIåÒk›Þ|V¦ k“AòŠë”Ñ$Nã±èââ[K37l¿ýžËû7÷3¿ýµ¦$Žeü³ëª*38Îø˜Á> bGöA ^µèV{²nî íŠåtøòqÓÿž´`1u$‡[Âæ©• &80èÛ1b¿yNÄû]e(å09Bü—·ªçtZxF;ÝÕxm°#a°Æ»qg³ÛæµTBe*|¤¹À,̦iÞwß}ðØc!„NÙüËø'AÜö×-EÿþؤrBÕ}ì»ßEµäùvc&Ÿ¹Äw×¶í_þlróž?Ë™Wø³ ñ_áb¢)¤E„Ï=ÍbëÕMÄß®ƒ7S JÔ¯¹¿±f¢j ä ¯mrÝæcò1ÅöáÓÏ $Ê”,ztÐ0Z!­ç3¬^ÆqC)˜n0{%ƒuSò>¦ácÙÐðµy¾Ÿ*é~æùø*’#ÖZvTùu:3¢IŠ®éœ5üHX5ÏànΦfÇã}9KKŒ¥3xïÔ9K uß©’˜ªË(̬ÎeN êâÎjÅ&ZZÄÀ5AÔ?pÒr“ÄIàI’$ $mâ”Nq¤€ëEc0ïp;ÁÁ‘lÛûF7Ê =ŸÏ%ˆZ·MS+I2²“ZƒwÓÕõv9d“f›½û< š ;)Ž%W"½¬<3×1º)ÛtS`7…t'&9LÁ&êQëjñ¬½.V?ûüåw/«Qú¸ZSuj\“ d³˜g×dHIômýMôŠ{ÏÐ&‘¡[*(ˆ2뀴Å?q”ÂÌF½Ô·ø&²,b +#·Ó»²¨Ti\ãL:ÜÖòòËÍWíx]ê4šJYÛ| ¦‰×R†î0åç,K¬¾ñÌÒÒHªÅ‡ m:AÁ©•dD‰|ã` ô×+NªóÎpຖá×÷xoš-®i;/«Ì¦HS¢„©²¶²*ß“á^î©]×ÙS‰–©ðQæB4Ã0î»ï¾'žxLÓüÙÏ~vÿý÷Om>öØcçÞÕ)&ÿ)tõÔ·F„Åú»/ 'ä½ãò-”ÞûäŒ;ôÿî}z•0Š©¨1ÎL%â¿ÂECЧmÞÇÎi;u•öÜë4 x'—­oªúÒ%Ã9vãΫëŽCd )¯Ÿ“ѹ@2!Ë §LœRžb¸f‹Æ`º){Ç2HÄèQÌÕ†Yk>z€½º1¾Sß v‘Çââê«9uÜ}˜ôxùè ‹µ×—ˉiÒi”UfS´)d)È92ÅygûG{23øÓou×\_)ŽYá#Ì™žA§ãD­ã‰'ž˜9sæ„óá£g!dnü{sãßoýΊs²ä›? ßöåõ+çΜQœ¹îá%@å‹+Bˆ ¯üòÆÔ‰ÆÕ5ëþϽ—µÖU·ßù·ÝúóÈÈ×]®ð5OéâŽkë>·³ ÒÀs_^ÓhEáŽÖu¿8ù"¿ð•+,B|ÃÕßÚ˜Ð1Š™€Æá4Ãù·ÿîªV×É£ƒ‘{ÿßoh䯅/ÿâ÷n«®ÿ›]åM¨ÂG‡ÆÆÆP(töv*ü%ÀsF,j€D"…Å2Ømk'”<`^Ǥ'Õhš ¹Ž(³¸ä •ŒrÁ§é Y%ÉEúc˜ê¯vbŸo’’L»øÓ:AÀì•¥‰;"R æió×Máî? éÆÎ37§jüg*J£ šüÀ|¤˜˜‰ƒã ”HDúþ­ðä“Jbðß®ÙA ô³èZ³ƒ×'tÖZÓ8¾ë¬¢žBٚȱ&õZ¢óX®Þ;à}~‡÷«k¢§¨1ðö€¿†Ï17/Ÿ¾4MYc~Þ?·Í™ìðŒ*;–¹Ó%»)Åʨ&ÀÁѪó¯B…‹† Ì]öè£À„ÓÓÓ3±óž{î™Ø.L¨1«¿· þaëw`ÂKí,§Éc¯¾ôàŽ§að‰›Þô÷ ÿx ȶä+øú3ÝÒ‘Çׯ\ÿ²¾oå¤Ñ ûíÙ÷‹,€¸=u¢w™ø¯¶°ãëk>ñÊÕ¿Ú÷‡›ÉÌÑ=û‰Ê¸ç[WÞýú ¿ízy­wü³êŽõ3¾|gðäðiF¿…zç‹7ýSá«[rŸŸ)¿÷+®Œªœã…©pÑR±ÆT¸˜èNôó!”Ñ·Ÿf¾ý‰ãVšm}–Ï^94µùr·åÛלT>åÚ׊û25‡5¯†˜+ˆ]áŸgío¥2’S³QÜ™"ÝLØïáŠZ$‰66Põi²fªŠÖ8 1@ rU1k] Ú 8f‘3¼žŠ‚’8?§æMEÆ“ãŠiœÛJ`’~þ½†EUBÙnß§Óe6šfÆÙ­¶É¡c¶¤±Ë[’7-Î>MQÒ‘½C—˺´ƒ’D¡XDYɛլN‚ ºöWµ›{!è¡ÔŸìö=°&–/a/¥g®ra°2äpŸK͇Ո¯<‚r)•àqÞ3ˆ;ý–9Î22{dœ6ªçý€B:³wÙl]Dwß¶pGn$ÖT ¦Ã†N;.—K¹ö¿2tíCg•äð0±°ýL‰¼TÀI‚PõÉW•*¢HY„ýæ¶-šabË/e¾ð5xô©-û>¶f±ów¶£é_Âå—âÆÜ=f¯¥ ©6×3ìh9«$Sä‘5hŒº-ã5Lüåhç˃žETä³WM63˜tªöô.ÛW×D@PiûÉÞbiÉñÌHÛ]µ]n67˜ôP ä Pk/eꊖágv7TÙ‹S®›*|¤¸À8xä‘G¶lÙÒÛ;iÓlnn~ä‘Gà|ýÄVïüÆÆ]×}e]#õ·eíÿYÿ«#ÿºdë»dݵ@u~üëwýó-¯õH·Î <7~í®왞³Â¾ÇžÉ]ÿÔ?ÝÒÄ€§céIökqÿcÿoúš'¿qu˜¨½á¾úO³¹=÷W·ºOìŸfô«´§^A·>wß<;°êo¿¹êá/žß<+T¨PáÏž5V6ë‰ åsM¾u3ó™µÚT¹ÌÞqi­úÞA¿Ã¢B9‘l´ë½q' dcU„”²ÖSvhËD¡÷©§+BÀ“¨Fìg‰S]ÚNR=Š@õŒ¡þª¼¬šºÅž‹s¦À1e|õX{ ÙÐHÜÿ!¦\, Ek®\"?úô½‡½1zçæ}ž{oÑⶺÆô¾ªÒhÌ>«0(Iét÷“éáøòvjP I¾ÑSZ¾ÕçëK_[õ:Ä÷“–¿‰´ßYst"Ñ_¤`¡YÂËæ `-Œ¬nN¼p ø×—öœ£l*\L\xÄÿ<0¥Æ@ooï<ðÓŸþô#þMÓD™¶mݲü[ï“ DØCÎÉ·;„3l)ͨtvÇÃ_üò7J©8¦çsøí²1ÙØq– ª©Á¢{Eè4)Ê”DïxzÛ­Õ40•<êÌ‹¸O4ÊÓŒ®æGJŽ+½’"®ªÎqö2È.j*ÿ.2Üv#šœÔdö¥ÐÜöI­f<à —E {ÊE‰€®Ý^5é`;–å'T‰ï—= x! å †!4ñ†2*…°‰Ï€0„!H鎆&7q0 œ„Œà8€À€Çd ÑIõdÙJ`qhÌV×›2J2UÈò!#Xñ6î3eI/‹8ŽC9;jMMGHÈj,~„ô» ›‘¤É;Õš¹"0ÇI•KŠ„"jB e`YËé6$Z‰²Ã 3ÜFÀf(Ù—xÒ,)Oˉ2 õ¾Ìb‘Øt´ú²öȇ;©Páâæ#þ|ðÁ'Ÿ|rb³¹¹yB¥™Ø3a™9&”™©ÏçtŽšê‰–Íù ¢ÝYK­‹éÀ¿Üù­‘/¼Óûî!íùRÛUø™"8Q«BðáAHO½5Ó)CÇtSÒ]ç«jü]ï/.áO+Ñ´£“®K®/©B+`б¡œÞvNó«pS‰ø¯p1á°è¹‰4±õõкâÔ¡‚ˆ7;´ŒH­N®æ·£æ7&NI,+él)ï¹Ä5ô/Œdœô:J2™¨îÒÝ8*…Íq$Iá÷ÇÏwJïýàßÌŠ&óѦ±±Ñá¸˜Ú þ< zÕþ-”±ï<ÃëΓB>bôÒ¦ÒPÖšÌñ^‡È2=iüÃõ1¼ LYàÿcï=ãã8¯{ÿóLoÛû.QÙ%Q,êÍ*–Õ,¹Hr¬+¹Ä%ý:÷ïßÄÉMþin±ríH‘»%«¸I”%SbÅ^¢—°½ïÌNŸû @€`“ØÌ~_ðƒ™yfæÁà>¿9çwÎiA‚€@!@YS , ³N‘˜…! % ‹%qÌÒÁÔ+*GaV‹™¾ÙÓ ƒ2+¼‘Cš%:©‹HSA×YMCMͰL4ÍÒ 0LË0I" ³,UóŽ‰ÝŽ‰Ý³ w )çÍ}˜ÌÕï:½¬7íaX¨ÌisoÑf¿àœ`™§?û0ËšU2`YÍ€eé&¬Ù7p"À‚:ÿHU儊 O—}@N±Èá'w û¶FcšnäÑ<8åÚ à”lÒoW;»ð4,'7Z¨‰ýÚ‚ž5JE,x‰¿çs:MIÁ:²œËZõsj É(ÃéÄ—¾ß |-±îö‹œF,ADƒKïB)UÛô(1÷ïÐz®ÕºÖj.Æ/$ªi€{²ñâlÂÅÚ­Zïjû¶ÝqÕÀm6utÒµ¾×`«`²£Òo=,LÿhàO­úƒëÔ6¢È~¾Ot±ŠJva ?÷ùJ~Ï¢‰q”Òšjö¤¿w¸L³ M¼v%W°“ÊÁ|{I§Þ9pæþ鲤0»ð¸]b¢hóÙÊ£~xãÄs»ê>ì’.;±FßD.Óñÿ•¯|eþ „Й›¿šy ºñáûrŸëö$ˆüõËu ë?÷·ï¹ï±îv_ÐåéÚ¼5º\K/zÅ£xË÷à ›Ÿ>ùÖü‹þê/¾þŒùħºù÷VqÇÊþáçßZP2À_õ—o|ëÏ>ö»kìwMÊÓ~Ýãûo·.¾0·ÜÝ‘óÆ|ñ~øC×:~E®òÉ»BÏž÷ÝUÿÔ¢15®$xÖH”ÈWwsA˜É03Y „н;Î{ÜxJ¢_: 8Ì´Ht·¢Ÿö¯DätÃÂN ŒA$úvy Ž#’©8à8à˜eÃTY8n˜…c Y8²HÌ"LÕ´æµÈ=Vr)ÑÂL0U,sÆ &uOÄH…’Åpl›B9åp ^ªà+»#d9eFÃ33%gKÈ087Q"sk´ƒ“fhi¼Wäü96P&„ó>’9(M€ã§ì¥2¾iC~á µyçÏ2 ³Î Àç¢ù€S„Ãõþ° 8ª<“ö¶ÖfãEêF@±RöÖ8韽ƒU۩̤do].§€F² WÒVЇ@˜ ªBØiýÚ,V &È.?>QuØyï4s~#¾+çÎR2Ñw_­Z.&¯l–chCÏÂÚ¯JìØííçUgTê½Fú£ÿp†¥èÃæÓÌ¡·¬ÿu-ÒV¹ó>ûÞB[CŽê´@*™K+¾-WM¾´³zË{œ{ß°6ÝÂ|¼õÓ?Ûùúöîû¶”CT"Î,/üRìϾÃý?$¿)»ìQ&˜m¶ü÷Oz,ÃúÝ-ËÔx§Z×ÂUnð[²Rs„XíL«XÐ^~g,ØSÀ1Ú­ÙçÞ -[W F+•ËwüùË_>ÏæDèî¿îó_[´lxøÿ|xaûï`˳ÓgVX§Z>úƒÁþàôfýW'Æg¿bZÞÿÛßÿ‹.xõüQªþž/þüž/ž=áúïds³_-wwpmúÜOÇ>`¥xó³¶×%·á¬Q£F_WxV9Ì_ž$?z£²¨ ¿inŽT£žj½·ú‹A_“«2'n_# ¼q´§Wæ,)ÈA3=~ÎÛ˜çn"/ê̤ØYŠøhµƒÏ¬àÇ-Q3 Å.1µ-ø‰Çc_?èù­MúHÅPC7ðZž²îTp^)È;·g‡§µëî¦wµuÔs^»hrvÊPSyŠ Ôl%ãi$éœ<épdlì¤á ‹¤³BØTDVÌsþ®’ ÔµÏnsz’¨¹n‘ÿA%–{×¶€ã|Y8œŠì|lÕHµ~šxN}aðhïà8ø¥ /WœPÀ;®ö)íôÀÙkÆcÐâƒÄÜå¸ÈéÒ%(„!tŽVc¢í®ðÄPÞ˳çs°¸ðâ)9Ú|Fv7WÈb.võ?¾âY‹¨Jüİûè«æ»®J=þÇ» ], ©ÖÜ\=#'„ÁƒbÇ5Í#„Ê·ßm2Sðúz“ŠEƒoŽÚB¶ÊÔdî½ò¿ú½ôw®½½d`?¹Ê^¶‘¶2¾T#>‰ï³[È‘›eÍÁÜ‚ÐTžïŸR?~{~Ù xˆâ€m¾ÄÛV5f¬8Qòâ8ê²§?9¦ ÈÐy£Ì §ÑÝõñ*´…? ¾mXúŒâÄ_™j˜½“K{_úž\QÊý#ûôoshI g|Î2ìÈæÇZ†Þäí¤F0Ë;0³Ôs"¨b1Tߤ⌈¸¢Š‹êòJ‹gÇoË>»Íó¸G9Y­K¢>¨BYºq<1™ÊÛûñ/l˜°HfŒn‰–uÅp¢ƒÐ Tdj3}ò]¥{\oh$–¦0Ù À!¥b9(n(yi/Üvγ”BÆ“ø½½è£Æ ¹d,r©Ö½õìÔõ_üJIýÞ&±ùÝõG5w}êÚ‡ÄhÓÙÃL]µ…Âýï2ñáØ F_ø;µsmé·¿¨ScLÏêôá“äê¨JEÈ)eÙ#·_/?÷S£½³|ÕÁ7~0u÷GPgËJçXì±ë&õÍd[ø´%xõ- |úò4É[¢8’ J12Cï£Û}°ie6wîÛåP&Onüñ‘Q¡f[Ç€l°*mCáÇÈÙßÂDÁO1¨Ë±èçÈѪŸUÓ%a¾ómëÒ¯íw‡Ý´ß}ÎV¡5j\I\Ž’© •‹À*üû{n½3.ëȳîC_zþº~eݬkü†Rsü׸Âhªo P¢„Ÿ©dFâÔšÖ¹õkÀQùÆ¡ÐýW³Šƒ]T{Äy$+ú_O†YY¾7Plv¦xܲ€Ât»…á–TE×”Œj/˜v¾+üöR×ÎŒh=Æ„°8ئÇÝÛžUT½øø0a’bRÌ ƒYÝMûª AHbÁ×îÏ£ü6‘R¥U.g[¯ËrÄûKöºB 85Ã1xÔãVBahQÑÅjU«. ¿ð¬±©£úÚ»Îû¯_>Ñè2x;zo}üå‘)•½»§´ý]æë·H„ƒ £cöÍ…c)¢Ù$/­|œÙ>#Ó×À‰}j· +:°¥ÿùÔÃTœˆ´éÀM…0UõÕ‹-†/¸ƒÎd²\oËÆ’l½ÿ%³¬* 5¯»fKBG÷½–[uÇE敹*)zzB?Jz¡9ïjËô¾ó ¶dë<ö†e˜±kß×ø³¯iùœ¨ƒBÚ6vÒzïÙ#ià4N–òY‹R9—³§©8Ô_¹ö:ZÇ÷${®Í4wð><>±ÉM¼x¼mM62nýí÷ÐM«¬Özôü6ºéVûɹz;á´ÃÖÕâ7.ÈxI¡^9Ü `ÍULFX¼0'Bd“Ý^îj£2$¹¼üëÏù ]…¼Ñ-Î_xFßÒU|~—ë“÷$.æ1Ö¨ñ›ÎoTœ€_’0öë µò3¯Å>ó_=‹¿6Ôÿ5®<Â^³äµüÛ#äü£ÕÛ‹–65Ÿ…Áª¸°’‘Tz4ï?P ZÛ ýÉÚ"L¸bx4SÓ«°èjU‘”ÙEÀ"ÖiaUƒ@€v*vJ‰†ÈxàØ¡ï-E3*7=²Òö±S¥þ±’½ÃPP±éÓ“þÉTü¦÷ûiAGÕ¤ævɾœ  1íUŒì”œÑ Ó¤–_œ`y¶{8ŠÎ8#Š,²DœmõÒHœ:2`[Ý^>÷÷w±Œg}­öJOÝLAªT MŞ߃}æ©™1ª%B ŒóIg»»0ÃÚßT{{øxÔ¡94]*ÍW[7S–\C–„98³Œ˜Ð…\´’æðe´JÞ»Ò™þù ³¾ýÂ/nüD)«:\DÞ™˜@2M]çO*UÇ̨7~X®Xåæ5ûíþv:ß`?ÿYtµTB”䉿½õá“;@i\“u¸Išã ®yefº‚Gë@g9‚!©rÒ:¹j­ô­—°ÕJuÍÁc;|ã}éÆÎtCgQijÏXÇØžø‚aDW@Öõ׳IŽ|ìæe‚é’ðï4¾e¦·aNc4yıœ­·>QÐ]ÛJ·Úû\D~4ÛÝJ.N1ì…e~4!Gå¥cáÞúÝâw+›Ú+ot\¿®VǬƕÏ9R\kÔ¨ñ«¦P(Ô25®$xVÇp|&½ EFbì}«½Q~~—5" Qvhž (Ü‘Â-©à*›šs[éRó"C;Ó}šnÌx2_Èdâôä1OvœÅÈŒ³;%¬ÌÓuˆn¿º°»ŸMå~aùçú¢+|ȉKbÃcü_ݘW&xÈáEðEKÙ*7%á cz] ¼Á+ íK.HY²×̤ÈÈì&f(8q Íϰsd—(ò†X„]°îléoî)uÕ¡>¾Ç\ÓeÒ<å1—Ñc)÷+Çë>»q|^Æ „0T0\oŠ·Ùûæ{•žÍD1ÀqX#—:ûϨcå¥imõÕl;|êÂMEkÔøMç’c2Q¸÷÷Ô]ŸŽÏ€,’™}.*à1¦®ä÷_æ; 2ˆzÕ.ð]žJ““ª”=¥ü¢u6g³DHÖŒQD†JZªÅ»@<ç’úLªˆbÏŠÉLü×zrå*Ù¾(ŸƒÉ ß‘ë¹]<+¯Œ$p'(ÂÌ;yTS X׺ó³gè›¶xî|JÆSIÒ}c+îÖ65L)E@ÛtXºªéºiŽƒÇþÊwÈ›ç:8`)KÃ%§KÑ ëåoý_µ^c¹ÉàÚ™ÝâŸtvÕ¡-ëè¿x¥éÿ<<ˆdý›/„?ý¨"nã¥ñ·ƒõYþëGæ-1³å~É{@n¹IèsâsÏ<¯ÑÜY)d‰ª'ÀM-ósáhõj¿”.ò>ÇB1tž5nßX|æ§¶ ؙɟ5j\y\Ž’yâ‰'àt²%­-g7¿ñoüç*iïÇ;!_èûÒöƒkÔø/ æø¯qEt£Ivuû\ŽþÈ4±zÅÂZmrÕ‡ôPhæùþöM‹O” ÌhŠE§­ßˆ8pÅÐÍéiDà€W+ÍtnU4—Ø#F´­oÍ?- ,(µÚ¶ïÛ´ëöw]×m¸fƒâŽô¹{À™œ0 S¹êv¿ Tðˆ¥[GÝ‘¢H¬ŒÙ|ãûÌp£ÈxƒÕé ¡iÄÖá†J;žLÙÝ“ªC0D¿™±ÜLÊ~=”*þرˆ\HׯÏyê‚°£è4Š”©†,¢ìt&¢Û«ë ‰Œ/.»$=??òÿáÆ~K¸þôAãçoI¿wm©"2Y§‹B¦Š-Ä|T a;[Ìã ¥á {«¦›ÙB¹X‘¾ ãðXœ³ZÈé§µ i)n=[¡=ŒT(¥I‡O»8%ƒh©Š˜.Ù¶âáIvSGîb.ÂâÕû3¯BéÅye”Zugcn­ §§‹Žéž»Uzé'|*ƒnî>ß2=T™r•'F¢×*+šˆÓ?¨¾^ÊèºÛ8Úïºÿ‘ù³LO®è³JFalZ:a¿ãæüñáÃ\ïÓ?ñ|öfö§wîž^³õ…Wñ®uæ4ݼ>´©íïÔ߰Ѩ‚Wš¿”¤Ðoœª°žØØöôJ¸“ðqht^Æœ‹iÃÞk_>Eš¼âLŽ;SÉ€(áA§ñê.ö[ÄsX£ÆÀåd—Y–ešæ“O>ùä“Oš¦yöæ¯|–s(ÇþW3³ùû™ÿÐ2Ï5jü1ëøÿ¯žE¿JšC‹Þ»oÀ[¢ ¯“@Ðgp”Òæß™j‰U‚ņ·Ò=?N­!»v{©k¦jã‘‚cšLÎôí­¬´¦ï𞸷õdo4~©“1GwEõ;eE£ëªéöÃ?(…×4Xûá¾;¸fÈÝ3{ÔÔaFÀYÂr2ªeÒVŒ¬ôÇ2ënPe”óªŽ8³l3D‘ ä3}^ì6&KºF¨¦æñò†§Þ•ì¹.]¿Þ™n?ürpf¡ä±ŠQ ŽQX¡›ìÙï’G˜1]¼4½~º}²¸ÈomçPÃÍ‘Âl k>à´ñÊÓ/•n•ZŸ®ØI4lQöÚ›¥® n­ÄP%6»G×µlõ/þ¾Å#^GmÅTã çrÿ¦i>õÔSÏ<ó X–õõ¯ýcûØüæÓO?}ñ—ZÒ©QãJ¥æø¯qEöÈ{NÍ-‚G&©6Ìd$•N˜¤Í9.ZS)û©ª€0´7«úpy]¸à7L]ôÙ+¢Lù_>l´¹ì×´”ßwV³óK"IDšôñ3÷”ºC*Ö¯sáE-о]¿1fºÖœÒàó#)_·ÏÏé‘/—To³ŠÈŠÍëO#H<é]Ó`Lð¥d*²2 §g›‡¨6.bžlŒ¸¹R®*U4†Ù0QhMDšôR)0Ý×~øåb #^ð¥ð¬qÏšÌó;ß6³Î5¹ÚÉde÷DÙñã~\^ëÉ„’϶üRUR¨×'ŸÛ2:iãܶww üþu’,saåç#ŸXÌZ\Cl\±Éöj5Üéœ:UQejίҙ #±~?¯šŽ¨%W1N˜ k”E.ÌK3–®"Se¾j!}Á.c$åAç|`Z‰{÷Ê‹x†ßðÙFôFÂðŠIïøPJWëøºŸÿÄÃ'ñ‡ §ÅúÒwˆžÔÕfø=s‰‡èQ-®ì$_¡rŒ2e¬¸§™¦dŒ§8S–€xñiì¯þa~?¢pÙÙÊ—R»¦ý;!€Öÿm›xòn¼Ð?’Í´?ñ‚÷kïð@„:›öž;Œw²8UÎÍÊ»±´÷—£OmõÙ—)öpHë€ë˜“üêDÅ~昤J±ä¢§š$ aúœÚžgÔ‘ööïKG™6—¾©½òå'S02IÅ¿Q…jÔ¸t.¿3æ,Ï<óÌîÝ»—=z~BÖÿ öìÞ…ºD1c÷ýýcø“WF rÃSsë¾”³kÔøO§f÷¯q‚Â@’)@p<îK–ñÒñð‘‚­^Ð,CKÜ;€¯p%·â£I²©#ip&át£Àv†Ã6¶IÞïiÂb6øwýq?†Ài,X¢Cù±HÞ£¸íNèã… j¥`+DzõkÀ›*5npVR(ÒSœqÚØ ΀J1’;ê)Ï$»ÖäöÆ<ìt^m!HC°ªÄ€fB¦¬(HbœƒÔbJU¡b€ƒ¿Ç#ÚÝ ‡³gë¿[ÙÔQÝßg»~]@qÒq'os0šÉ%˶þ\ã+'´ÎrÔ%6å<¸"ÅÑŠŽÑ ¡­Ò—|ú…êO>[˜¦ê}xi] ?–mpÔMÌÙë§åP'QM4^%[šz¢§Þñ®Uð¹ WõUH’mV%Ý¢] ä¼MŠW\­ Í€RÌðNOõ"~ÔY+ˆé¢Ðj/Oe¹:ÏEd|ã} öRbR:F~’·ÕDÖζ=?/¼Îų֧?\€«V[ƒcÄŽƒt¢@lêÕ·tQj\9À£æ\j2O¹±óÔÍ…r^îÊô«Æ=zsþáÿAüB›ËÓt|ÌÿgÇ¢a¸s‹ÑÒhaG&PÇnr.mì»oy?²®ÚÉ Ç4ºLÚTÀ§,WD(7»Ø—ßQ‹$S¡‚ƒ9þžŽÉeeÌQ£C°š8>V›,ÙzÎXÀœÝl4iÙºØåSË$™œ¶¿3,èŠùþÄ™Ub "¼pÑ…5~£¹L±þÏÿüÏ0‡™—1ùÈGf÷_ ó2nú‹káÿÛýçpIbÆ*½ý»÷þyú3o~µôÆÜpÇŒöÛ—úMÔ¨Q£F<«•¨/ü¢¥Ùi §´»:•ŽHþžž!%øæùð­:ÏZPÕF^ïÔË¥XŠ:£7u*÷_›ó»d8 ‘ÿL’d¸N›ßlËÃh©Ë¶YGµc}í·HN/ URrŠÓM\¹ñ ç³5‡r¤_7¦1¯/œ³™JyW}4s,înÎ4_mKíáË©”¿>… ,$8•K%$Us‹¾&; †’)ÉE)ÃÚŒ;TeÝ“6]N»3“³z&ç­W)¶­^zí]ç™E™9Rt®3H^¥~2kÿÚno3WÝØZ{d„“¯ŽÚ¿xÇI˜¡šOžT`Lúèuº‡ÌÇ; Ù2Ákaļ’I©vW@3 £Óþ†U-‡úç'ßj Ÿ4;éJš%Å$‚Íá^;B:ë!ªYSÓx†–YN®^@P¸µ¤üÂ@–¿»}ò¥ƒõ-ç4uÌ¢C—ªÞ‘·©•mšTl²Öï Üëa.¬ŸÄ*þÚÞãÔ¸u®JÏYkº´5]šXÅNô³_)°"êilTünÅfJ~u&&´ESG&C]yË<}›RâôìîŠï–R\nífäi%48†ýË«þçÆÌ ·½›Y5çø­xÃÜÁýtïšÀ¾=Çë®Käñ4’r[T¶uª©Zø´n›fý·4þÞ¦»µ_sB5—&ß)À ˜mRÚð¹…ÂPF¹@!ò2¢½äô™{$…Š;÷ŽÙÁ0¯i.=zÝÌðŒ£ âS,®F+ŒËôÉÀW¿úÕ¶¶¶ùmmm_ýêWáRóÄnú‹Ë˜HGžý‰þ¾¿üäN†nýã?ÝZ³ú×øµfdddÖô_£Æ•ÄìÊé‘îÌ“[+Sé­3ó/¡yîÜl½º“±ŠF»ßœxu?çŒOÞ›Z½¢8+cÀ…Šet~ ç'CEmVy¶) eªm…>‚ÂLHer?>¹òÖùf‹­|úh! ¼ñ‰¡¡cåÐÐÐ'>ñ‰¯}íkhÙòòË]!d½°g÷®Múö%I -7)zn ξÈ@B}›»– ZãלYÇ-ǬÆF›ËÜ;f°üƒW/]¼ý& aÛ÷±/ì%Ÿ¸Eýý‡¬}¥¦ÕKëøÛ­R Õ]v‚°†è lei-Õ!‹cq†¤*žùÞ^Ãt,tÕðP…wõ:O9Qôu¹2¦º.×W´uäÈÙêJ¼LÚ WßèÿI€œ ¬ SÒàY¯Ï9i†BÙ ¢%†Övš}4’-]ƒR’ÀóíM +JiWÎ[ïÎLF†v¸œÑ‡ÛºŸÝýä½Ëô™…g4€ÂÚfˆzxI ®nÍL¸~ùƒi„`m Eð&_é8¾`Â!H*U¢¥£×„‡ «R,>¯Ðt3‘«0Vºœ'⎆ÙýÈQkzïèÑû˜ÓHÓº$–‰Ñ+¨j/¥ƒ® ”WÓÃ/–vciÏM‘üXÒuGËRÃOÕ`brp 60Rn4YÀ=0|¢YôÍ•sô3ÅÃÙhÇy½„£3¶m‡mÿëެ߽L}纀êp¦¤Õ\'õÖ=ªøúxÃ^k¾=ÔҌɑ€\2èùUÃÈî+mŒú‹G÷Ø*óâËÌæ^ýÓÔ’8à¢~%t–“Y'64ïºsC,ã÷ÌÕÔË.ÎÒƒ¨”°ì’J —Q޼£eŒ3÷#çï<¢Y˜‘-”@fZÝay yæ´J%,]±ÏÖ׮ꌟ\ôTs¦½Ê ÅÝE™üŤóæH¾7Rhò/­ Ç3Úpe¢–©ñßËtüò“Ÿ|öÙgg7ÛÚÚf%ÍìžÙÈÌÅ0+f濾¤9®¨­2UÐ(P²3%£V޶Ư15Ç+„FŠ„w”w³Õ%GxÖôØôöÑA,«ÑQ"YÅé¡éy d£.Ð&æÜ¤Ø¦€'-E¹É˜´nË̤ðá†ù¾ŠÝÅÁ—%d'¦äŠ@›'¼êÔ80œÝ%”Y ÝóÃʤÍo¦ÀäøR Ó«¥mJ^£©åµ¥] K‰j£)ìS»#(ÓLf¨¼4CcÙá$:8¨„Ã.›·Þ™¼¶ðêZ7=0¾•iäá¼ìôÞÚ™sùxÎ×öWLL‘<ö¿ž~ÞÖí.T à À(–§KE-0Y `8ZÅ/ê£éz¢¢xÚ¶ºöýæÅŒÛLjˆž"Zêô ä8‰É®»ïÍ¢·`9 Ls %ɡVEá‹b2S9¾ÎUžÊ Qwe~gUg*²Ífš÷sÛtKQþ~¼‹/fyY™Ùpõü0޳êù’¬Þ>ꛡ½iúì•:N^@ÓªÉÌÜ})̪ç”IàïŒÝâe÷ÊíÇbÎïØZ}ÕtÍg/»ÍR«{~·njÆu­ºö[¤xsîXå@ह¨hA¡ûØŸ»°GšBçÜHDÆP ‘,ìše]ÁUöɲfÚqØØV)KÄß¿`ÿü˜†È™‚q[¹Ú8%œeãI™ Q²<§d– ©ô»Ig*e„)j} ûç79{Ì<›¢U±Jžù|ú“Pk&SãŠç2³Ëæ…Çc=vèСÇ{ììC©Ë(\Æ­~üó¥/mKÊàwþîríµÆ¯9…B¡©qå´w¶•ÞI»ëCKµÈÈ~bý[­p€ÞuŒHeñÕîØŽLë’aȲTtaŸ÷ÙÈ„CC”K™rcÕF"o8‚’I…>1 q‘>“稥ïïW»bSdƒh2öÖpšÅr‹|*"UÚî2Áv0 §UJ+¤÷s¤@®ƒ‰ äÉÉûv®·ªÏ#LÅ«ÆÚô~ÊRé]G`õxpõX×m实æô‘öÃ/»³SË_ ]àÁ²š‚ùwË-›É~/$Wõ ­ÖçJŸÂ^Þ–)9_,oz½´>§9, m ¿“©(ûüTqɥʥRNRR=ïuUb6ù Ë»™R&¢@ƒL)Y)õ²ù±™-ª–Ï5=§¹Å1™WGmGeÛ„3à%•N½•‚¿Km¶k´'Úûé¶,î€èžoÇ{o9ó\–]„’­.óºGR¨—4åeêã·Mœ-cA±á–JUN¦çô‰£f9!ó‚)Z‘ršƒ…{7Œÿî5e’ýq_ô›ûº&âu9ÒmÆçùm÷µžQå2,ä¶Y8Vu6œù¬t–{I¾º8“† 7ú'šÃTîïnÊJöPh½¤ZØt•rÐÖ¦®Rocåk/eÂÛO´w›ËÈà™$Qñt¬OÒ¥V5ædºþo_õÏ}½ ¿õ‰¬=Þ™9ûô3YÝTîŸ\ÐÆbuj+£W>—™“õ•¯|eþ „Й›¿šy]ä¸þ^øì£¯kû¼ßí_³å¦àäÎkÔ¨Q£Æ™ „0„‘„ÝÉ,¼Æ™À~¶›üôª¢¬¦¸žVü¿`>õpÁE)9Õµ¤5$‹T  –¶6¿ )¦!(Oø)ÕK ¸J’î®æ­TZd£í×›»—YÉ Kwø¦Ê¦[šˆ8xe’€-Í‹Nbž0YΩ¼BÐå…Ñ‘@‡]´üaš)/ÿöÁª×ÛNNŠþŸLuu é.ïÜçeɘðâÉ3¸£ÒÕ„gêœÉrKKéí­̻¾ÉKJ6ϲ{À½©=óVº§‰Ë8‰¼i ’VÅ/O›<ÿžë­Á±Âî×¥ÕÝÉõ2BÁ1)p0[ŸGT¶B‡éÒ¤yÚÙ>7S ¯’QVŒÜÖ4õÚ>û­YsΘd¢J>à‘*`U`è â ý­Xä=ÍÓÿzªµõ¶3iZ“€§•ù˪”ãÌtÙ>{xŽ»Ú/ §6f6`,)u}.nyÛaûu«æ6E ºjý-j\ù\~æ/ùËçÙüîýËÑù¿g̹ñ~<ðGóÿaÙSjÔøõ`ÖîßÒRK‚¬q¥Ñì¯þÛÚ2ÊýÓÎù.ã#ØÏvŸþ  <£oî*¾x0rÍ>Iö¶M£[+»Y1o\ZвÀD(PÛ¹"‡’ŽgÊz•W "YG»î’T:B/³pŒŠfƒÔžq„!ìc"†ð¥ ‹ÒH7MQÇr¶ˆ?5j³m§‰kš±ü'‹WÛíõlòÅ‘K3»C !ÉMÔxˆHNV¯¥º:ØtªÕþ¯RèÖžøÙ%›Ggì–Ëg˜°‚7qJæýåÑn{nÕÏV몋_|…6 lý&a(E+UÓƒ)iƒ~;Á0°,h¦ËvlV{XPVÍ•­‰ÂªU™w¾M?8?1/SÎÙ‚Õt<–;2Srš¬®Ä Öæµ÷—Â6EráÊì¥,ÂËÁsý“AË´ ‘G Êûo?¦ëVF†Áê2~WjR gòs¥ƒ©ºNïžñ¬ï—cÏ\3¾l-c‘ ›¬“ÏŒ›êB2›×¤²¤h­lu²ê^r k©ˆÀÚ]Å £Ø ‡míÜUÓSØJO%ï átÚ J²$˜*m£Ì9?LºÀ}û°ûŸÞ;Ž;ËçðÖU®“û†˜®§O´=Õ=䊒éc0#àq$³EÈ+#Öv:} SéZ­–mB~7 YBö’j•å~4½Þ4À…+=¹«üs%2²m%vΨÝxF7-+•gfki”EÌë¨Ådj\ù\²’Y·nÝw¿ûÝ Ž¹ÜùÔ¨qÅRsü׸2A£ÉŽì©tt+¤2èg;±‡o׿‡ø]ÕÎ’«øF¦Ò.¯ŠhÈk.¹ f«” "þK±Êè]b‚ñ!#âeCWµ0U)IW!Ñßuˆ2套±†ëÞÆ£9z_aõ‡q X¡R)Ÿ“€¼Á8XL,Æâ˜Âk¿~ë# à•ÈUÎ?KÊïkîÉx¿ùn×=+'|Ž…Á V]ÁGéÄx9pÀjHMdëªÚ´ŽR;ÏÔ3ÛŽ»6w©Gs¡‡[€hk8v¸|³»0^®?PªŸ( G B½ ß¿¥hTôç^*nl,ߨš‰ÁÁ²/L•¦e›‹ÕNÈ^•TÚÙL“d°* É•_¹ž>•{Xe» '2HÕÛ¨ <”xÏ*H§’–‰_ÎH-ñ"¹ÎžÇí^FêõÅ8Rõ˜”ÜÚ5I˜ƒ£¾ô³º'®MIŠñƒ£uïÆ\?Æ%#)¥<üòäÆ.ûÐ8RÎ( ¤Ý-ÃþáÞ³ó Í6kÎ?s§=X/ij±Pj°Ã¤$TÌ¥êÔ4A ò㣔ÕèÐ÷O¬ì^Eé~d B{+Fù`¨$G¡¹d¶ÝƒÞ?ºeFc8Ýæ!“±ŠÃ[f;6Ü0+c@¦]v¥H88»‹(å³pÌhV‘} q,ÚŠ=·#‚°JG{,Î¯à”‚[€l²±j`F±çMºª×»f:=““å`¢:Šk!'Ø%|d„lœ~›\®`N[-&SãÊçr”LM¨Ô¨q©Ôÿ5®Tl¬†,X½B>žÑÇ’./|ÿUìá; ¿wÑ*j}kæÛûÛýìß”¸?Ý/G¯=CÉ–¢c誱E¨»Š™a m$gPȳJ)oúÇw5ܸ0È\º’#xפ`Ë1áâzêlV®,:M¹Â,MvQ—Ëå‚‚ÓŠ3ŠuÛ•½ûÈëoÁc4I^f…=G)=áé P|éPèªhnuË">KÈ®‰F!9ìu½ºOØbÙz£ÉXÓ:Jítg&v¾ö„mÝÏâ[ë飣^‰¶æÈþÄî(íUšàšúÄÝ] ñ5Šïü! ×]Žv{ÚCLÓ:’ò<ÔzH6™IÅÿJa­‡TZèLÈJŒž ­m}=”‹»šf¯àÐR)¶)O×¹”©R.ù@R/Þ=>Qì˜µØ 6R{qhåjO¶;#År”‡õ‘Èœ˜1§Ð§~ùM½õ °àÛûŸÜ2‹ ÷ïÊvÜ"Ú—yÔÀ‘²›P2¢ƒ§”·§ZLÃzlÕ±³‡©ÀÄÈfÒ²êK‹d ò5)¦¥¤Q'ÉrE_&ÁƒB±®Œ"ÍöÞa¼uìˆç¯mŸò»Ô¡ª¯R¡–ënpÆClœ%M—ž€£ã~@Èç” ÓºŽ™Hþ\d7®~G}5'̵BRž( &’÷†0FŽaQÓB­òÖAùúc[§· …ÝÕ kpˆìH*\A£ :ÕFez„˜ƒôï*»üL‚ùJHFp±©e³¬nw·ß] e=˺V£Æ•Çå8þkÔ¨qÔÿ5®Hl¬†QdK#ljKÿbÐ÷'߀‡ï0—Èàhõ–•Ùa5ÒÓlî? V,ª »æ’–lKk‚Ž¡V;Jº”IW)…T.ªÉ½c7•¹¹ËVdÒÅ,†Í—ÈëÖˆCÃyP|µ*Â`¹öša©@ÛìvHØ›Ury¦Ë½4siY|öʇ®ËüêCg÷aI¹'ßÔQ}nów:ŽNöù^«løëø‡ªšý3ò?nífe%º’ßþzê±53&…B¾Bo݌϶¨Î!0]7ýø iÈ:KÊMŽÔjwöGí.2¿Jx¯óÐznD2é7äµ{Rþ,:¾ÑUšåçz‰’–¨ŽU A&š®ªìàQÝ0yÂlp&ïoë·ʾIG#] üÙÃ=9%D"«T‘ÆâÙá¸zgÆg¯@oCâêú⿼Ývæ$g]ò©úŽó<®¨P*øþïÈš¨­üžÖ¾³(ÀG¼Q©—ûÏÜ_u·ª¦¤Æ=N;àDZ\>«ŠÇä‚Ê¥Óev¿Ùz›ÃÔôþ){˜J’4Ü8~›ïdÑ"¾‘ÞøJù†Ô+)Ô÷û|·öÆgÏ(aîoVï÷(9Â(Zá¹ïE¦½¼šC×*…ì4ÛÑj¿fXñ¢trÞ¸­7þæTýRëPž+tîphåÆÝT^ Š‚¤¸´¥Ò xë±,\ ·œÈ_T'Œ5®jJ¦F5j\>eZÜ,­<”ÒþðQþl3K“/ÛîI·bBu‹3ƒZôÌ£6³,ãî—Óë N§ ™’ÌÑdÄÃgËz öÎhÝÖ2{FäÓ²¬Å1MMUAŽ»óÓMö¡‘² ³NµRlùOÃL¡LÙ½ â4CFK›ôÒp’Åžf¹eOYÇh«[ó›ÚËÏüT8|rA­‰™À÷Q»Ž‚Z–O Þ9Eçdèßö9q¾·œÝñ«·ú;ªw+ßZÛ÷³ö±ñu¹<,_µY10ŽÑV5¥QöHÌyl*Ì‘r—orµ'û܉U’J3XՉ绘[˜C½è”T–SΖ"Ÿr•&˜Óu– Kq+ñ [¯ct2[pÛT‹ÇM˜ 1ESnÉUÁ¶LxxmVQõ~t”€#cü¦ˆ|¦)¿-˜¿º¾¸ãä\— ¾”õœzs¦cóùŸNcGÿûç‹%œIÑt¾­­]aÍEGó|“j 27B³œ`wÄRË”3žÅ2!S”4]Áî~(ìÓRÖ©´P*ây–M–Å«½®ÉO5iæâ£FäUiíû®â #:þöÔUÙvn¦viÅ´"¸lª&>NÔ1:AD ]´³s¿NšaÅ+X‘iÙC¬¯[Á÷%™›‰k¹Ánjz—º^¶ð’EŽÃb;TtZ ç‚02FÐ9›- ÏV*GÀ‰ñZ[Ìÿ-¸ä첃<¸´¯Ùjh5j,¡æø¯q¥R*ªã"•J[Ÿÿëw¦ŠÎæð9=$k£ñçûÛ¯ßXùÞ/*›l,šNÇie©2acŒ¥„Ï„ ÈP8,}´.YcY&ìsN%³‘dßT`}™Y$„JUÒÁ.X5 Œ–8zR0Ä^ßFNR*8hy%£T%PMD Š>ÊbfyÅlû›ÖMw±NR]¦Óü²¬n¯´Õ£ÁQìKÿf…¼èÍxg…¼¨5j=t“ÄsÒ³Û<÷mÈ œùùGMݬg*ÅÆ"«öFÞ×9ô‹6ü‚< CÛÍ , RM3JèÚpiÉxŸ=ÜóP×`w <ßßþ`ǜۄF2d‡^•0î´U7Õ'Žnoz„ÂeÞ,qzÑ®åRŠp鸮ª<…I:„h9eoE4KY-ÜÖ~êðˆû¹·ì÷]« ¬ñÜ€ú=§f´Ï½'}æ”8Zm å_?Úq"´µ;î;»æ•fÏóˆÅÆAÕkS$³LìzF õi‘«Ù>ÛâZÆ9*ZA¶úâ1Œ íºDò|þøº÷Î Ñ2«c“­ç9Ã2Ì•ÞRÜŠ–«&Ã`U #I5ÒÓz±4œŠZ•“F IÀ„D<Ñq HÞÑ¿;n¯êïCµ ‘<£ä ŒÎØVpJÎ.O—„Æ,Û¤)Æ(„iIm¡Š ô%³E;üîæ'6Šb:‚]•îNjš#d£f ‹²+SfÀ-›uÉaü Ã˜IS~·ÚŸÄx¶æ“©qås9Jæ‰'ž€Ó5Ê–´¶œÝüÆ7¾ñ_¬d¤w?Ùñ~ìùþ/_u¾ÿ7ÿ½§Ô¨q)Ôÿ5®H†'M„àÏ¿Mþï'5Á.~{Ÿoë¹s”r]}bW¼ñ¡uÇw˜lݘW2¤¥è8}ž ./çpW°<0ŽêÅrÁPh:>]—«PÁ£Þ¹…¯L8ŠÈЫ<•Ò’T’)‘î¾i£­Γ]¦˜­€2iÓŽ#L±±ÍöÃo(ŸøsÌ6ãCù Ÿ°²ë»–ºef xáåcì–†ÊtœrÍ¡hÐ{þmæŽRÑ´m{µ‡³ñ•¹Áv÷„­÷mk- „;xÁÑ1ÿ)•)*C†@V‹­¼->Qöõ82‡¿2ÖÑæ­b8 0ºLº\žw¼·6ÁXïôÎ}‘[tœÌPA Y@;'(Γ6¤T%Ñ. Kæ¢Ä6ŽÑ\œfir_Œ;•VÚÝÆÉI¼o:°±¥>ýÌyÖ0ïoê =òRó£«Ï±.W,楫Ê4SãPo+ÇK™JæÍdŽÁ¾KN,YÎ1+²RÍÝbΫ*%ÚCU i)0·=Ò[V‹; k»‹;¦Bî(ŠaÑûËïg×fÜýç#]NZÞè T©böƒ­·X8éÔ³ŒRÅì ˜©åÝ”"e©I†5ߤœ€!r¥ŠÊ’5ÝHfòá_R´VÚ5Ò¸¹eœÁªëmC¯¥ºhÕm/e¤…ψ$æéµNçÛ9<«ÇóÊâµ¶˜5þ›p9JÆ4ͧžzê™gž˲¾þõ¯ìc›ß|úé§/þRKB:ÿ•ë{àb“jÔ¸4jјW©´ ¦¦.œöŒ¬ ^>9’€­‘áŸLwÝpmêK?ɶÜv®„©˜ø2¦Œ¸@]J¦ Ñ‹ReG‹«4LøŠÉ‰Hþ”…аs™æ$–5–Iá“cÄC3R <åDÕ­P>²Z$4j<ç«·'¬s+ÌPŨP>AMW(§[ÍLÔ7±Çèwß.n¸qnLÊ]øAe`çAôéÇ–¾é«øÐ$;§|0‡om®®n‘J€´»±¥2úü”ù'÷Tº0;~&žAu¢ºÙØþÞôÐ0¶¦ß¾V3 @wà™yû«Ro LW,vG)â”(YÚ>%e#5„fkd&q*¤Ø¦ødreæä´§Î´(‰vé@™ˆŽéž&khÆ`šðLâl‹Ž©ƒiˆìgnI¤ß"Aÿ À‚iÂlGËz©áÅï&ïþá8Ö~Ô `ZA— –åq˜` ò¹P›52lÙó#@€©Kãy!@a$gfž™yfÎÙ™çûüH²K¤lvG.×[éˆlj/=6äïdñÜbûñ­ê èk¥Q›d\$®é¤Kyeð¬ê6)MtCi!qYO—^s„Õ«Wïܹ³­­mÌ­ç!¤müìÚ¹cİsÞæbË'ÍÜúÝÖ ·81Ho¿¯æõ¥¶?Ì#{_äÞ‡ŸÞÔaËýw|táiNZúÈï\ùÈ‹‡Â`tûV?õ…Izù®W¿óÀ¿ýncW3Ö,ÿÏu¾§\ñ.Û{Ý/n|v0 üΉ÷o9é¶{«oCi}n®î¢oW |Rqر«¦%e(ˆì»!íà¤PR7’ÆjLX2?Ó6x×Y")¬®H€æìMëË)Q‘‰ŸÅô¬”šî÷ô»çš‰sÅÉŒ ÏùC¤G¡(e-OŸ€øœ«¬¼®˜¬éì…”L0 yn½vt1“Ã39|(Dýa;_cUgË]>! €òxzœgè•KG·Å¿wCÆXˆF‹tú1»`>U–+j© 4‡a|kQýåJz=Æh~‚Ò÷A¤A¤Ùk¼þ-†ÏÔ÷Ÿúj0j˜õ霋Sœñ„¹ÅTUE ˆ¢ÁH<Æ•»säÓÀœ~XL•Žw˜ïœ/÷fʽ™Å3°¶^fçQ¢eŽBã|ä·©u®ö ºŠ¢´ÍöåA /9 TñNTd, µe°Ô¡ljByÐrëÐ4@¡=n!pYÕ¤ “^;€O »óú\3dh{UìÈù¿‚éã³AŽÌ÷gH€~ð&œàYÅeVÒíŠÒÀºhE0o´"Ïía'Y²kÛŠlèb°ÓB€pJ¥uyœê3ã+¥ªš†4 i#ôiLŸ:£Ò„"©äeò#mŠYK©b¢y7p[%ÉáI¥ñÍÝN„Pƒ{€%ò¸JØ9ì!)¬\7œÁm.íÂòøœhZSÞPR°ÉøTp)Jž~úi±Ãœ”1+W®Y1œ”1pågÁ#;ƒ ‰ªòæE¿xfcð¦;\¤ö=û.Zºvª.{à›Wßµaé_[ÞYd~ó+Wܺ¢æè;7Œî£%·>´ä¡¦û×û÷΄=_³øš‡j[žvâÛW}nÝ’½qCm>0h<õ 3,z~íý»Ny—É]÷—ÿìé÷ü7ßíÅ!±û·ïËÞšZ1þ^ ÿ>©ÜtAƒ]íì¶ýÊ-W «<ÁßÝå\:é|µ#ml¼Sp°.‡¡/x ‰žYgdBÖpJ±–å%üh@7Q;ÁC\b­2É©oˆvê„QKž`Î÷5G<+@ò¶uk÷Ï„`tR<ÍYã`0˃8¡ÍY)>ç~ÿª™42—pV/gR,Ÿ¯ªñlx¡íƯ)úR]ªç\ûÃðèsèû÷i<:ÁvQ[;Èy•R¥Wú¯ûNY®žzÃ1·\‘1y•="x‡·5#˜9Qxí©þc™ÒDŠí/,IŒ!›ulMÌY™±YDêl¿hÏ_mm=˜{ZCâ£Þ…•Á2çhЋ]lÅëüTÉ€¯zv÷+*Ïw@©Yމ$O ¡˜"{Éð Ûµ(b(8UÛ„‰Æs5¥£nžUk³µŒàMíø+»ññÁ~½¯÷ÄäÿcNg&O"€Gֺ攈ÍCT˜Ù œX^ØõR³&KÍ~„38<}÷ìäž>kož—óJ“UóÙf¿vÏgrÉâ©,ž‘™!Ïd¬7‹`CŸ=GÐÒŽàÓÉ’*³sU„…—C&N6pèX©[o' <”iýºW”GvòZ+óÛê—ÌJCùŒ¡»™'iaèÞÉÇ¢<¢y y•äTY–E% ú<ÂÊ;ÓzNbÌ¢€¢pWÙT?!¦@D h Ó& *†qô@N£ÛC*Ëp)¬*¥ä-nê€XòÑ@±ã ¥(QU\D1»$ëŒJ’%Œ Gå`Ìò çâòÆÜc/ssþÑ®. ü¯pé6™§žzjÇŽíí£.ÂUUUO=õü½~bWþðâÛ’e7®,ûñ3ë·ÞíIïyvµìíI|öð3/D®yþß—1%Kù×Ç'þawü3£>ÓÙëßoxùësí$ÀåÿlÙS7?wèqò…—â×ÿññe•<ØêgÚÎsR¢dÙë{æÁÏ=P”Øþôûº[7N¼¨Ì› œE!â¿À' +•MÀ9Eúë=‰%Ó„`†¼€YÏO7µoIÔ_qyüÅ×… eÀs@Ëi™ÔQRRÔ¹Ö4E‘à!²Î‘W0s²Ó(…}Zp€ðœ¿Wª¢!pùÄeÎ4’GM=¼œh1ÍÀ‰Ô’‚©ÎèPÚV¢‚s;ãZÞ"Gýª£ ‹Ç(›Sò§ˆÊli¥y¨ÇÜs4â«c1WÇkf²ðÝÕäÂ)Ô_·R0»^œ;)³|xV³Ã­úÖ¶djjt1WÕ×pa¹»¯IL=¤ec(™B”#är´èëêc‡ÊZÞÏ‹†=ugéÏU²=>uxŸT?{rüƒlÓ³äIJ PZž•3-¨Ì‹E"Îꆶ·öW~­ …z dÜÃê¯TN£æ:µˆz “'â¬Ì“üøûÞaUVeÚ4mïŸÞE·¾õ*r[XhÂÆyú?ØM”3×ÝQîÁ‚1ÿÀø«02#ñqŠæÈ×üEˆB®Þ6Ñ?±<¼yöÑòŠ"ÏÊz#ñ¢¿þîI-*!ÓN–—)]œšédòHåH@(•£ú#< èËëóÙä{¹R Çp[³­ÈqÃ;¦aIG  ¨TVV&Ù¢ÇSvÇojÈW›‡óŒ#Ò@ÈBVM„òy9Œœý¸» †¼j°2´ë¨áF2ÂX’ën5Ôóñœ¾ˆ2d>J‰)  ?Ž6§ë%@%l/€ã¤ÞåÊÄ#R.›éµíuS|~Ð1‰ÞØguÒbXÓ  ¡/ïU fHMÕzSD#hªjgEPÁÌ  jFN4°€ªceÐ4ž•G”0Ï© ‚^W°ÉøTpéÿ«V­:)c ½½}ÕªU¿ùÍo.2â_Ó4„¶`×γ¿»õˆ,ý콕ßvÿÎåÇ~÷Ó† äƒíÑ]·×zi ‰ ÔȪ£JFŠö¥-ó]£®§´«Æ’ù ’ w§¬ó|Ï{¯[5å›ÿùFïÊÛýf‹ý®Œc.¼SgQˆø/ð ÆÈŠ _.®´+íýü†Cº> XΣd€ÅsÕ\ØÅ—Ï~oKrù5*%¥ò:WŠªÂôô«Q¤¯[õú(:WN£‰N‹.Å‚=àJÃù@[´#rÙ‘#Ù+®¥t|ÄúN‚Àl¸<*'*ìáwV|Þs¾( °iÃI U4¤pC™å’“fº>x%tç·cŒ×–í:Ù8“ÃÚz™x [{€®/W*ŠÄ%% ž{dŒÒ«wê´r_b’¹-N»Â-Ë—(vJI˜;S5”»ÔÛÓm¿Úé«>ø—„kbÌVš>3e3ƒå¦QÇCÈY9ÓÙщC·V[šj’«p JqT5 MTó]Oœ(›‡—Í&"&)b%ÖjÞœIAÞ~ÒæAáûr+gF8FÊÈc{å5tn WÍ/õ™<ïjCa4¾}eÀ`Æ„ÑÁ ³”Ž´Ä“6¢Ïdzã‰bD’›3IÝ~«¯ÄôFjG°j‘¹ËBÅ UZä§æI›6ò¯ýÌgíqê²c$±ÄÛǪ&vïæ-DÊP Ò"3”ÒÓ49o:£rƉ^éJc2)­º5áö«zF¥ry#¦0ëØKˆÐ eÏÈa£_œ6¹£‡ºî©™ÖÆÑ[²W£ø“z†S –›olZ¬_LÆX"¯ÈR208‹“Ã}s½CÛÞ«*†rœÞI‰QžãíoNØøljVÕÅd²™< ¥r$hZ2Kô‡5œÄ@Õ18D5V@Óó%SàSÁ%Fü?øàƒÏ?ÿüÈbUUÕˆ¤Y3b™¹FÄÌÉϱQ¼ô¾ÚGž{û˜eý&Ó­›êÅZêpW¼ÒþÜœÓó{Gþ'ÍEºXÛ°õÖï³ò¶2}´e07²r,ÐéÙ;1ç¢g}õ»kv>Ü]tÏÕçÚ©@óS°Æøä‚ây xV™T¬*Îv Iû†mZ‹ojy£Ï6AœÄK ïê«ÍÁ=”ñÐñxõ4}ÓésLJm—óûGÔŠH0½MêÒ)ñ*Þ#:Ópá'±¦ª½xe`Hº¹²/…•ØÄ4XÅhœóC#Ö4ÒŒ£š–Ú¢»!už£Ñ(O)âèàg­J"‚«])²×ìxùÈœoçv¬¸üt=C£¼zMt¢obiß·#FO5Jð^Acªa Ã7–jÇJ†šÛË'ddÆDÀ°¦/×ü Œ›¥î’æw¥õC¸S‡†®ÞÜØ*Ëê€a_mgB÷Þ¿Õ×€µÔi²›ûš7í$î^Œ>G k{?h)ruf½€®-m;@êª+Šô‰"]Ëã1 ÜØ4ÏÂ/¹)E4P£_- @ʵØëâ¢ϰâœKçŶ nk;ן€YŽÁ¶˜ˆÆ“2½/b`h§!IÔBm€²ØÌ´h$_q-“LFr&‰’{˜êÚÜÁ8btiqú(™JŒå¤žaÅÔTýÀ[ýõ·”U–²‰ë(É u”˜‚€Ðë=esê %Fz˜tãƒaõé %wÍ<™Øzäïhä_ûÇJÈfòdûï¤QbÖ¸,h…ºç>-\Êo}Ä&3òyÅŠ\±bÅÇ7]ü¡.~Ü{Ýý Í?}ø‘Íö;€ŸüÅ;u¯üË÷ßíΨ  á–-ë> |:r+—’o|ë‰YŽìzâ[¯á×ßÓèh|àvãÛ}÷­®¬¦IáæÝG#§?Nqƒ›Kuö¥N¾|eþƒ ÿñ…oyù©u (Pàӌ˘:=Æ…gä‰å!'ÅúåC•Ç=Yqlû ƒå&Ó}Lùâ…fT]“"­,®îõ»‡£0ƒ?:Ò&¦¬± K‡uJÜKez%sZ»¨ %;!Øï;Š<÷·™{-Á|q‰¦O ùXP;1wšÆspë5@¹J1†ãC-uŽà¬ºìêu†Lîœ#Žg•¿qÌÏрˡg!«·õ@\1'dzvìü÷vôçì>,$Žlfnmnò—'”Vø¼ ¤Ò™Î®îC'l´¯>@Õp-áŒBó:oé#Hpš´Y¦¡d§Rz–c—I²ñ"NB×åüùÖ +–ÂÖ%'ý²ï3ïŸpuÙ~BkØÖòp4ËæôE9C‰Û’iЇö V~Gé¸$ä(«JŒÃ œCi>.‰xZµá‰åá™Éç7Ú3¹±ÓvŸäH¯sk“ç{ï–vØ ðàgÃuYç 6™Ÿ .Qµ?ùä“+V¬X±bÅ“O>‰:}ñ¿·gƒ{–|~òÀæß]·V¼ËøioüÓ¢c_k4à3Ô~öG›†å“ÂæÿòÝŸU­]ê$IÇõk+~úî ŒˆŸþ£÷W_uäË <†±•7þê@òô¿wºú®½ªón'Žô—ÿ®OdšýÅkщàÄ/ÜP|‰) |Úéìì ú/PàI8¶V™Y6Œv[c' ôJKMS°hÌXÜK'Uƒ…áÉ¿þúx6‹ˆL:p"Œ±PM]Dµ‘Èc©€—“2V/j:)“ÃʧººGWÍDq› L§@I‚±øÌÚ&Eö|køÂ –oM颂I@$§e"=Ê«ïëzɹְÀÑ×i5ã7,75ÖåVyón–/–.xÌ'6+ÜbkwXÄCMäQ­tº± (L3PjL"À ƒxòœGH+”ˆQF8»…H±Q‹¯«f~¨hŠ)ÔQsäM—¿ZÓ¥ÄêéÎ Ú¡"ègËÜ¢Î[¼L¦ŸUÄ!I/’LgÙ<_`—19zÌ ²˜åˆ¬‘v-Ô׫º² ‘CùÍñú¶LiN9¥g¼í»ÂóÒkg/_ YÙPd Å_ÿª¤Mcmfv½0"üÎ…Ý^X|»Í›:*i‡­¯=1ÉüAjÜDòÂSžD“Œ™®p‹+²r$ަµtC{¨g(‰'“©tS¨øùö.˜’UÈ;ØDSʶ¿_çopÓÉù%áCÄÇæÛ­ôì¼Åq°’ ထWe©Ÿ²—Z³2SaN]íkþFùމX«AŠ NG g<r¶ô‘ï5¶Ä1¦Xï1tH–‚ÕýiWD0‚’†S˜ÑUú>ƒŽ¼­Ì®˜ä(¡ 0©2¶¤1ùüzË¡cü8Ãiã±AÏ£NühÀdâäŸßؾlŽRUâã- ødséÿ¿þõ¯Ï³ø?æ¹k‹|׫¨â¥?Z·ôGg¬s?ÕÛ3òIßøàŸ?øç3ÂTÜòÄæ[ž8}9ýä.÷®i»wÍéiOËxŪk=˜)PàÜ"þ |Rá)áãIŒyZ€Œ@÷ VØÂÝ ç_:'O´Dê̽§7 “E2Å¡|–åC‘¾åpp^£ZÃ%×~ä¼íÊıîjw ÅK š¦AñbŸÁÁŒS3

3}DÓ)£#<åv‹Õõ|Ïéuz¬Öªœ?EA&‡e²’+Þ¿ÝOõw›¾r™ÇÍgæN¡—_-¹¬e϶¡Ýa÷4›li# t12fíË=sÒñ4~Ïœtg/±)_wg%òà ¥°0ªÙô:-ÓÎ5ó¨(HF¤Î9„Z|Q‹söÖ–²­`jªF/ŸÂ^<•e‹i’ò'dFÝtòX¶f<×Ú\~Í/wJóE’Iaœ¤á2ô'@Óæ6„sRZ¡-ÝÖ¹¾þ¼ÆnÕ×±¡c¯sà ûjà¯Ý-±,ãr{¡0–I\> ß¼‡¸b† µYИW7ê–/<ç=/sÆ®¯Vvw[¼^í¾9›÷P›÷Pýeã®·4›ðؘ»P˜f¢T@ÈÂ"YÃÒ2/æâ‘Œ’‰~‘}½;´)7xÒ•˜×Úk‡ʉå>Wô0eÚ;èM†°F–ya©a?„ÔF;epdñœÏyÁ?Äײ¹¨“—lùt‡T -ò„$%˜Œ,Š>2 x¨Ë¤Ñ289™¡3šÄX®šDDR†Á0•É ¸L£0qãÄè¾!O2­=”Hà.’N£áp‘&+ª¬h²\_"ÿ~3ý¨-ï°©“˜®¸ã~— ÏO¶E¾åÒO(ð‰çïV2S¦Ly饗.ØæRûóO‰–ÜûÔÓO,vO \"…ˆÿŸl…³=¾8Z[í†G õö¾rsðx¼äÀÔqúp5ß#"¦Ÿ(GÊ3Gö§ÆÝؕ׽ñçîq%§);¡Lú 5n±/Èj²—@Åz’•Nf„.ÉÓupðË—Ç#ÈiGG½:-/\¯ÄÍ&Îk=¹4òÁqûg&§³yÒyr(̨~*ÃZCPm–\Fɪ¼×e,F€\\95$Y.:c¡{Ã;]‹ê6§ªÚ´}åöüÇ»tÁ(ˆã7ÎOå÷®•³âÏì¶M¾Œ8)óô´$F_Ð<‡†Âçœ"LH”…P)ùg<œ®m2^¾¤¤©.º“;ÒŸpÔÜ5@’„ÃL åJŠôE™H:= T nÙhJR7ÏîXÓR·†I·Oì°cÙË'–KæA”—t¿ÛQ2ÙYä<Þ›vvt¸ëý϶O»5á7ÏQÇ•Ó:>àÌåòP]¦¾·8ÔD6ÖKP]*‚[ö2󧟳ó&Ú֌ͪKÀ´‰Ò£1­,:a&O}}Ry\&1ÇU–IE ™€Î8’TmMWÍÒâ&–8åw·jå“àøpÑስ7‰O4&”wô¼r#¤=0¡sGª ')Ach”×$I@ }¦É+3˜Î£žìtУõþE[6ƒ>žÓŒ¡Ù˜¦c5K0%Lƒ #â ñÛñ¨‘± •fBL³Ù6L´¤¥¾Ä·û8HãÍi–7±O¦GN„2éTPQë>F›6‡¼f$4èCÿ6ù£óÝ |z¸%óI*çE~ùêŠÛ·X>ûÛM‹­Çk´@³)Xc |Rá(!”•Ž’ I°ñ‰›êZ;CÖ—ö•ßÖØQ/løÀ÷måWÚZ~·Ö~[b­gèTYIžÓ–Ì“ÿðõϪÕeÂ{Û™“Úf„`” âÕ%ùáÿÇ}æ9E©=Ý=+u*EÇg³=:Ÿ¨C"‡‰,.K@e5R"$Ré3CJzãŽ:9bãëîäE ŽÖµ×BF-ëÆ©b.þãí57Õ†¿6õø?´«¢h¦Ä°Hk4H–„eÉ‹“6g~4Ù@„0—Ë}F5#"ÆÃ%|À‹¡¨ÄH* ¼x£‰ÒL¦µ¼NKr™¡^uÙªyBÌlï°Ôº¥Ëj”l&jp™2YĨ’Û²²q4fHrͻÛT ¯(>xúå(P.¹2æ§ÌyÛÆômÿè^(P À?5^VÌŠôYJ†£;'v‡leöðÉ•8®YLªª–º½#ÎÇrÚ] G>øÈ3a[>©tR¬ÿçëé»g7ôdb¥³p¼S€x…ãþÖ<0΋ÀmÕa6£f2hñv¼—TÜeÙ^½Q€¨Hx>L(g’±ˆblO±Çû' dI%X)ÁD ^M«Ú{az‘8±ôŒÔ·§Þ?–•íŠFC$(dj¬Ë@7[S¹ãårïm¸§LбäùFœ‡[uà°ˆÛZ@U'N2¤ ÅÆNv(­3qjPÎsÐ40öq (Ð&< cEwgEº+æ8±..í:yp8-Å™#—ðî]“f-GðÏ–Ñý}Ý©@?7½¸^3èã¨|ˆwú-®áöB½!è]è´dü)Ê@©¢¤`ÀQÂx令ҎDÞÀzêã3ƒGNp/~)D¨/*ŸÕ%žÕî¹!ÿ‡79¯KuXžÕ–\žo…1†®azGQÎåÆy2«ß5à,÷­%þ퇹{gwåü´“ë›2µ9—' *Ttiù|¹Ž[¦ûΔX*ÕEÏéJI!œÀöúiY§8´o]~b$'Ø8è°wÒŸáa•Ô òÙ¡ÿôãDq‹UýJDDJ8[¬†ãȨGñ„ˆYuD&–§µ|±œWP¥^KÚ ˜AÆ,® b^/ÅJÅé#ƒPaÅ&Vk&-©Q0ÀU,›ÌÛBå3JÂýª]RбæôïÑûùë(ði¦ d øß`$Ü¿¢â|%É ø¿‹;,dfià­–â{ÿ¦d’šé ÔUÁz³*µq¸Æà6”{„î°#SL™~dv7Œ7¿øZ绪ÌC ‡´ƒaîî™Å­¾€ç”•‰Tµ°;‘C2m*µU˜4-.d8ã;á’`Ö£U…":9ŽI¼3/w5sdþtÑepçâ1B‚×¹/¨dºäp»=+ñ9ƒèA¡›¨x «¯¿÷ºî—³¯œ½çÉã ~²m°rQéñs!“Ãÿ°C÷ãÛCÁ±µ“zä†ðs•Ÿo­Ïfg!!á¢z†@½2Ù±‹c*ŠÆÉcɄ҆߯þLéðãÙ Íhª'†õvÓpÇuý/(ý Wq ä~ìêû+ýw)Â;öî¼ÉV2µ¼m“­‡ESÝ É|6椒O}ã³ÌÍ^ÓÖŸ(ÿxûÒ¼îkæEûûwŸb‹4¸Ïa<«ÝrUþ¯™•KsAõ¤—éõÕ-GgVç?;-É0KÚ¸Š™¼r^*-QUJ*Ûntû3äš7˜/ßš9×í½ü”>˜&mü©;“éÍô­áZ:h;º©¥õá©ÕŒx9„#=ºË\YATCYƒ•TÓ@g²ˆ@$Æ@f3²ˆd4Z]..'JtªvÄF„QNÊA¤¹a`óiâÄD&Ko Úõ,L2‡kÍ‘bJK„ŽBiÌB‚EªÍ WLP?ò»—XŽôûQ B•Lú»eLË0Ƴÿ£AË ü³ðw+™8pàüm>mh \ …ˆÿŸ`ç…]Ÿr°b(¥·ëS}jÉ j›Œ· žÍ“?ØTu[}¨–ŠgC¿Å;u^A´Ï¯þìgý«–Ó3æzìÑ×2î7ùŠ$»ñŒ¸p Ñ(…Œ©,íIüa+k²USlõæ@>Á<¼£“©Ñ« –¹ZL‹ŠÁEÓd>|ºubAÅ»)ãäÅPœ³›²ç¹RŽªMI”µRG|åúÈýc/óWŽSè©Exæð´á¦¹q=1G©ylQ´~¯ñ«‹™,úÁ«¦§æÚ“E×ùO޹­¬Ö?ûNzlÉjëøügc÷Wõ”H2/„ßUºn@ÇåjG´IŸOˆ$Ê©òÞ¶­ƒÕó‘~*,ø´Ð¶N¯Õ+ßTs¢+b_}püTgd¼wèÔÝÖ˜ï²Ö“/íUhÐ…®­ì5U„7nÆç™B¶L’ÓR)¤K–è( lÿµ½á[þÀøö¼a÷VÝõº-ê¡fªqÜ9ëeEú„ß<ÅîZ’9T­k˜ÞäÅL^•3iCAµ\Ÿo$š‡<€Â1„a€ÂPw† Q‚Zî}ÒȆáXÑGñÀ†! GÕãÈp@:˜©Ž00¥¦8f0_!Àb £ñœª$e’ÀG ãôáÑ›„é&‘À5„éÚ‰k¤š,IÓp’À <'PÙßë=t0yÓ¼B:²ÎÇ¥(™ûî»þ–£ì¬Ò–#‹Ï=÷Üÿ=%“Ýû`Ý-Ø+-¿žvvvüä)þzUà…BÄO6fFʈ´m,£Áxwì@Àã )@0“<Á8÷‹M¾o,è±›2 Á;[ŒEžAG £‹Ö½6¸d67g$ˆP ÔÜ„öXÜ7Ë“T4ÈâzEC)¤CŠÉà}]Ùí›c+çÀcwåxF¡Q`WoÅb—XÅ÷ÉÓ•fé}©æ¤Œ1SêáˆÕÉŒ1.1J“%(³e›û óΫd`JéðŸvM( Æ/åí7.¿L4àÉWŒwÌXÜxàO›gþdÇÛÁ'8J8kß‘2:Vúþ=Fá%>ù-ÆïÍ5›˜””¤Ž1›>fqL0PÒúPB÷«½e7×…ï™zN£˜,V41—€Ãæå5­²&j-Ö¥#W÷¿?׎ï=¸øÐe3ë¶ …QŸ` z}=;Ëç84Õ>1l¯“þVœ´¼ysÖ\œÖ[&í²¾þæxD³³R™ÆÚLƒ{ Ü:Ðçþýžqs*cFRŒ ‰&Tñ²ò¤Ò¹g‚!`áeœà”ÄøyܱAGkÖö½- ­¶Ÿ0^Îd`W@÷å«zm|‚õ’‰4¾õˆ}Éåá?¼É<«åd:#1)‘N橸@©Šv$Æ»‰|OŸl͘)ÒÀk»\¥eUñ1SkÓ­·~mvïYÂøt^ßí›]Ý7Î#›¬LÞHϾA·dksDpÛeÎæ³ö2ã°69uu?H|‡†°ŒHÛ±XŸªäC‡Ôz‡)ÂzA†Ã­ºwè~n§þW÷Œú¿õ'3¤ª:½>{°_ÿÙò¾ÍÝe”Íè°„ @çæ³0kšöÀÀ3Ï<ƒ:kñ¿¹Ÿf¨Ò›¿ÿ}TBBv×ç«o£_;Q4ÿw)Xc |‚ÑÓBZ»üe‚¶ˆ«Q¨àú kP·á˜åë FLÁãO`‹§GŸØYíÊ’_¢‚Ä”¼¤HÖ2Mż.d×P,eæ± -§))¥Og÷5š¨Ù5™›î;åxJ6ûÍß™±†"( Î:òT|ckú¬ÿÚ8FAÁH @•'ñÇmÞyã/p±#9Ø|0ÆPfE/æaWLO€A§¾¸Ç¶”œ5§ÿÐzÓ„[‹¯ß~Ö¾ïí×-™šþþ+ÆåÓ¤HZ:°=8ùT—l<îOž[%hÌâ˜)MgÂGÅR6O¾ÜÌQÿ2£û<餀eY³ÉÔÝÕ ={….5âk7R‚&jñY¢³B;”­ïZçÆm¾Ÿ·w€ðÅ­ÕÞŽíqG9— €¦,€.%…Ä`ÍìªT«Fà¿Ø7éæ…9žË¶õÒO®Ñß¼0ëðÓ& •´Yì]Â4s³Sèщ1NŠJ.®?åèáe“¾9R ¶К Þ—ojE JÍ”¨·[ šÍ& @‰FSÆw¤8I.±]E¿•,ŒjÐ.òXÞ@ •¦hÚ5•‰ÃÖr’šÛॠﴕ,*OÏ.ëŠí‹þˆ»ùáóʘ]ÝyÂZ4)‰ÿ­p§ y•e°„q»U |¯Œªúðü¾`e0F„óÔÌ¢ÔÜZJ§œòëkDMû•†Dߺ1å2)?¾=ij ì6Žl ék8REŠªœgyƒƒÌJL_WÚẆR»þÜå„ øÔs)JFUÕx`õêÕ iÚoûÛ/|á 'Ÿy晋?ÔY&ÿ(’Š“ÿKù˜ ç¼w\`а@þ‘Œ9ƒ•WÙCÙª F9¢,¦[˜šÙ—ölóÊNó’)™_ì­·g†céïÝ•!+3 à¤&ä@’qa­iTžÐiS¥TÍR]ËÍŸNc²Ô¤!JT ÑZþX/}uYlHp³X ·9ì]Zt*H£5ä˜c‰ŒÕMTŒ„8Fré¤`Œu˜sç¿Þ‰¥‰íGx ‡}¶.wÿ¢pLe ¢HXi“Úz‹_>h¨žƒë‚–2Ç©Äb[]Få?ßá½)ÙÜÃa4£©ªÝ0*ÆL ÊŠZfÌ€£s¼!Ӫ΀ç kÈðônç“ã7”õœ¿çà°ÛþQw¯cóŒâÀY ¢_ÀRÙ]Y9cóÓÞÔþ„7ZÒ¸îX´¶– BÌëKd™`Ú^W_QÚ4Tï—!@«Lâhá lÞ,¡÷䳂}¸«8pØ> Q†TÀÖ®Œ5B²½Ú‡Ç0ÂdnpI3Æå5‚^~›~A#9*Ñv–#"‘”®¨"¶Gu©¤8³X(å£5üмkY9Ùÿî.ìÚ«ò«ò±ëƒÝmÌ]W ôî¶\WÝk×%»üÆM½ž‡öÙ°Ñ1Òpš¨Ò„„f4AXUÌÊ Cå ºJµéôöY‘î Ûö,ª•¯ä`º·ß¦Ki°»RqNʾ¼1­õ°_Wçœ{%Œ×&©C8y ¼S‹‹Ùd޶X„€Ï]úaGy«oZeèåÕ·MjIHP @s)òÓUÇêÕ«Ç?"c>¾õü „´ßÑ6~gçcó.Ê’£ ¯{h~¹‰@1Eó~c@€Ìö»½%·?ºêêÆºr—­zÙÍŒt@ïùÙÒ a\Ñ‚‡~¸Ü[ö•}9H¼sµiÒ¯ºG&½2;ïóU|ý`þ¢ÎR|Ë7ï[[ê÷…í§&tÄ–Ž3]µfx4oLzû}^Ï=[ÓBïëßXX®ÃâË—|wcðŒ‡­–>òÌŠÉv!ÂÖx×Ó‡S@¾ëÕ‡¯ªÐ#„pSí-è’²{,)ýòGÃî¾ñÙÁ¾'x,–¢kþØÕôãó—OžtÛ½ï}ÛÎ7ËTàMggçHПHt”03œ¾&&™_M¶ãÉ…üþ ÎÁýËÚ ‘$öàÒS餷ÝfmuS©Sˆ4uç–7Æíu’,ã9 *ID¢ü=mKýô·ÙŽ#©åB_㿾¼«Jn)ÒС߄’&Hô„8MÕ– Ç3E-ÄðÔþ¸ï·]³ÖtOùKçägZŠ;Sºuãvö”ïì.?6èíÙºCÖî Å‚á8?ó=±4ÕÒ§»àõ:-ù-­Mb²‘6§F™<«6Öf¸¸·¾ã¸Î€¿Üø™kóêÎ=í{Rî›ûÍ-Ó7¦Æ‹EN¶´¬¡Êx×MÞ·ž.]óSû—îwO›_6iºÓi=‡¤d®–õ[¢Ý¿}r¨,Ñú—ç\CM¨¹ýñŸ¬y)thor"xï°iÎDeÍÌÇ»Ý5À: ʦÎòÞ¸nåäcv]òp§õý&Ë}?µ›. c`DÍêå–:£¿gN²2 ~TlWFuiV xÛÖ¸æX5hp]uï<{§0›.²,eR)Úh€L_»ÅúÊ6ãu“Ÿq5 ß-•Œddä3ÈUs¸Šçâ””mƒ¥RoQ ]:^ÏÑ‚òÀ‹ûË.Øí>µ\bî²§Ÿ~FL[[ÛÈÊ•+Wެ¿Fd À•?œì| F¼Ôο“aÆ7Þøöûã­ù¦ß¯˜¿â ³:Þº‘È÷½wlÆÁ=¿)Óš~2cöª¿,Ûz¯Kl~è†Ç“ÿº#þ/ã…­ÿ¾ðê!iÕÅvígé÷𴇞«9ý‹ª¼yEÑ/žÙ¼é©}Ͼ‹–®ªËøæÕwmXú×–wÙ‡ßüÊ·®¨9úÎ £ûhÉ­-y¨éþõþ½3aÏã×,¾æ¡Ú–g§øöUŸ[·äÅCoÜPAF› OÉLâç×Þ¿ë”w™ÜuùÏž~ÏóÝ^»û¹ì­©~÷ø‡Rˆø/ð †'…Ó 3m™Òö¼m±¡y¤ˆ!G ª$ÙÔÜñ§ b"IˆÀr@3äöÓVl| Ò‰)-#rVIjžÈ’ë?¢ì†Ô¸’H×ûÞ>ÝÝ‹£<«°iüíM\Ùgr¿x×Hæ #ˆÆ­±nºFÉd!Dàž[½Û¤¤R›÷RÅ.YÏkÛèÏâXÀ~L±.3 ¤ØzÄÍ_ªügŠÎZ:eŽü–0a£@<ʧE8€Íï;šp¯ípsÒeÞØ7f4Ÿ …ÂE¼%{*’IÌg5½}Û ï±Ò’©érߨq¦jß•m0cIC8ÖÏÖ 9ÙfåxWEU0= u³B¾ÂÊÒãí­Ó²ÄûËn˜Ú}qÝ/PàÓÅ%ÆÉÀSO=µcÇŽööQ'પª§žz þ^?±+øw4Æsn¹¨†;¿}Ç–­oËß8 €t-{øÆ2*-²?¹³'¯ÿqºñÕ&q€+¾þèO>ôÿyÂö™»£†=ÛvD–ݸ²ìÇϬÜz·'½çÙ Ô²·'ñÙÃϼ¹æù_RÄ”,}ä_Ÿø‡ÝñÏøFvÉ^ý¦xÃË_Ÿk'.øgËžºù¹C“/¼¿þ/«äÀV?óc¡§A”,ûbýcϼ3ø¹ŠÛŸ~_wëÆ‰cEÚø§¡ñ_à“ Gæc29…y?ÒPD§®µî?¹5ÆŽŸˆ q¶)¹(ÏŽÖ7ì³’<³¤8úÆQZŠ NºÕ'«À':@•e!%ì:.õ´çíÕº‡ïÕx1G$‡?l/u ÏÇÕ0ÛiñdpH&ƒ†¬4Žš;X"ß´\鉖˜ƒ`ãÏî|oöåü„*t ê65Žóˆ/ló­˜;È•Z:¥~øšyåœÔWf·êÞ?`uÌÈq„’ÏxŸJåÎÅ»6Æk®ÒüÉ'_³ºMêÖnê«‹EyXÐ8>·þTF/«Ž $Î9Òæy4>ãÝšÉaë?TæÅÛ&gÜ;?â4뇣§r¬ëÐÿ¤nŒR5k7™­F‰‘ähUᔰé[›_rEu±%6àðïM † ›³uí„#––‘œ¥@’iÊ"‘, Ì„Ó"¢üˆøÅ3Ô­KT‡MÐ$ ?µ*·~¯eó!Ç’©©ÙãrÏo°>xCç´1jý^曋;Ž29°S¯]žƒŠR­¢TˆW´ê;‡¨W÷ ù5ljÂê‹IÆãéIbß^ÐÌѼ¶Ã-›=Hìè“}Åy—ªÜñw{ìÄß&Y-·¥×öÔ†v Ã>ÍìŠ1[³xžÁ0#G%²b&GìkáÍaÊTnní±R ÊÏb›vdê§²5å´€(•ƒld0UŽso·éþmqç[]Õ9Ÿµ;8u¡ëhw9Òm¿›dr¨ÎùwHâþOséÿ«V­:)c ½½}ÕªU¿ùÍo.2â_Ó4„¶`×γ¿»õÂHí}ò¡‡õî±°„cJ"Žß$¨¸Î¦)"†H—s’ GûÒ¦«í#V}ĹKMø¹|Qg!Œ>ÓX·‹,ý콕ßvÿÎåÇ~÷Ó† äƒíÑ]·×zi ‰ ÔȪ£JFŠö¥-ó]£Á±´«Æ’ù ’ w§¬ó|Ï{¯[5å›ÿùFïÊÛýf‹ý®ŒÃÆ^àŸ‹‚5¦À'„ 5QÒœµÏ³tXè3~í<¯É9ä [3Ê’Õ%Âp”Ù1ÀÝ5=òâaK>ÐûÅ[Îe5&Ž@(¡ûãFÈÛ¦”'—›•D¼'í)'³9sM;òn{ÉÝÇÎ:õÓ{ߘjDžÊ œ¦lü©aß@”ó™ÏY”CÖ¦Á–CÖ–!ú®+‡yF.ò‹ÚUü¹YýsF|Âá6ÃÎfæ‘e1‡E€ªâü†ýÜÎV׆@P<#áÄp¦Ú`¥?æ¿|‡i K56Ùe ¥Ú“Ô—œò+3r¤¨¢ódšN½"5ÓÏmfï¿ÙèRHy‘–(²ér‚Í^Ñë{|×”ñPzm«ÃjæOI7i’ÌܩɞeÞÄ–D'ÍÑqÔTm$³H›âÎZ‰ÑµûmGÓ¶ùµçȬÁµsµm¨å‹Îè*ÏÈ7Î £Ô_·èASÜiËAóüɱZ»ªâ0çË=ôP„9× ¢ª8Ûé7be7Ëó§ç§N4¬n.›LEsñðÃOaõq:„`Õõ~ 6½‘ô‰‹¼Q#ÓeÂIîP®¤w fÈ!·–qsŒ}6û9m_,ž#”œˆ9·%vžàf×f'x[®ˆz\<ã·Ç`¹9|Ók¡‰gjžü Æ^éQ·79ÁøVÍéâ)b9-ÞM;×ÇÏ«m[»×¦)ê¤Ê±c½ øÔr‰ÿ>øàóÏ??²XUU5"iFÖŒXf.†1sòóÛçüøöïö}usû–I&"àku‹‡Îݘ´ëâ! j)-ëï‰+u€WDyätJ:šUÏœ(?÷YÐØ1­@/½¯ö‘çÞ>fY¿Étë¦z@±–:ܯ´?7çôÉ¿ìÞѾ™‹t±¶aê)­1ÞgåmeúhË`ndåX 8í&aÎEÎúêw×ì6|¸»èž'ªÏWè¸@þ‡a‰|D¡7…=×:ºµ ÈyV“sb•>#u©ç7XÚ“ôW†ŽÙfã(²¦–Župíé3À²™‚[ï—rÙ°HMx³þY{¹.®ºíf…:î÷^oqëQçµñ³B –”œ1{Ý`§”³ä¥(£—·Ùu ~ñÚÑç}¹;1#Oÿy_éÓzF‚­3ybÃ> ¨ðà §ŽÃ³ò¢Ë¢/lõNôftœœ–Ï=MzJ§ïÿshñÊØÁ·EÐóë-š¦" SE%‘;e ô¼Rd%#éó žƒzÊd½·òLjŸÝ“´Ty>Ü’ÑŒåÁÑ8‰£þðèúH—m8MÓÔ܆Sm2yrÃ›Õ ^5)L+â±¹H8ÆÉÁ”›Ö‡"™ƒ°Áª9 Ó(9eŽtÄíUßÛÑøãÛÏg.p9´À"QÖ³}öqå’X[½³‰ÚÖÅE–!4g‚ ›°ã¸±Úªdòc8ûñ¬²xz"55 ²íÛ‹0’üòe]M'”ñ³•[xõ•—AÑÄÌ“kø mž)ËϜɓ ãRyª+Ìí pWšÃ&zãNKnÃP­Î€Ûà|.|™JãY•óØÓV@éP–séųU4ƒåê­™¡(5šê)1<š+<Qh *w'à2wÒ0ÓÕµU.ÿ0Puã´¶Wwš¾éâu‘»¨ù¤Èו ‡7>õrÏùžûÜÄ»«kýÝ¡¤*·üâ[Fó[~¹oà-ƒ€Ð±æ?7ÄÎÊ{òweÜ{Ýý Í?}ø‘Íö;€ŸüÅ;u¯üË÷ßíΨ  á–-ë> <׸r)ùÆ·žØ‘åÈ®'¾õ~ý=ŽÆn7¾ýÐwßêÊjšnÞ}4rzÏpƒ›Kuö¥NŽeþƒ ÿñ…oy9 þ¹)DüødÓ—r?1ägó~÷Oèÿz‰ù¯—˜WÖ“›w›wã=¨³‚aÈd<6øèö𯱠Ÿüå[3&»å⚦3¯Ù™¸ T ž=yCöt¾°°ÛiTBq(¤š±¼Yî×ö¥ñ»*ħè× ãe1°é²½É´Oú³ù¡Â•€ˆ¤†*®Š"ÕŒ=xäƒù¶ç ¦çYmÉ,yûá9önUër+¯MÝ=+¶­YPOìîÐÏÊÃiâ‰ñFvT–Ì’ý:_›_¸wF³ÝŒHf©¾a[2%}ãüðò«s+—f=jwk¼òÉ5úW?Ðja‚"“'‚1æp‡ùp‡åµ]Þ‡ÿZñÂ6ï ;|ýaæT…Ëôr2®„DÞiÊ€¦É,]çœ;ÍäˆÃmÆïüÕ¥—³ _sjŽÒÐ"i8k—(r2”ÖÜ&6§ÜÉØ©[÷Q›dp ÑPéˆ|Ôgt“þ¹º.AÇl诘U“{e§9“»Äç>‘\âßÓO>yòBèôÅÿž~7õ[?¿fÙŠ†»Ël­Ÿ3·è|UÈ´à‰×¾ù¹;g¿†¼ó?ÿùëÜÏøÚ’•÷ÿækÜ1µôç.WùüEóÿg÷,ùüäVl­~üÖªã?íñúÞ¾öÿØ{ï»Ê:ÿÿsz»½ß;s§Ýé%½‡I ¡ÆÐUŠ èº*«®~Õýíºº*°ˆ‚D@!RÄ!=aR'Ó3½ÝÞËéç÷Ǧe’««†ûúgæœû<ç<çÌsž÷óió ×$TÒZ³ú®þzýK_ˆaÍÿñ?¿p÷uÎoE5ËÜ[ÿã?¹Üˆ KðÖÓê½_jä®ÏaÆÚÿ{Û³s¬§ ªïøêºîrb7ë.y¢u÷}%bZù…«‘5[æ>yCIá±ö·@!â¿ÀEŒ?k¨¢SI ¸JœIØ{’ú1›¶)ŠªÊšD‹É!qX"ZF<:,«s—z„{£5K}­‡³‹=©¯¯êŸš,á8¸&¥HVÑ@7éãÛƒ ‹ôÃ.]¤¯ô¨át`ûaó‹ã3ì;ƒ°¾ar~?¤jöLöÁ(õý×m«Ö™WÍbR˜[@Pô©Ã b<ýµ«çJÍÌÒÉŠ Ž„’º…\$š½Ôsü—áµ7.mÝ~ÄⱋójÒÿ^’Û~ȸ¿Û°8ëóæ¼C2ÍÿÏ—ÅL€LIe@A ÓÆÂÐ:¬‚¦­›?ú’±8N DÓX­óÂËm%f"™³‚¡8·³Õú¹5#v±yAÔÎð:—Î`©4a1fÒÙ5$ðÖôhE|;¨ZÜ\~¬tÓãoZ¾´$³ Ñ× ìLDlFc<ÅYr¦Ò„ht‹í½Û7z8f(3•k .› =X0J9,³˜cÔê2Az+¹wЂp´ €œIœÓçàÔ€ëȰisôw]RÏ é+[GèŽ|óÆhÞý8FƒHÂ~™½1ˆµâ{’ «Jø rI]ôS+¦ýeCq®7‰áqÍQIý¦¹üÓ‹úŒfÌYÇp¢Ë¸å þ®å©ïßìçAwj´¬¾ˆÿ:aªÀæiÂf‘&ƒ»D Û ¼2×ã3X¹Ð×{]kÍËõÌ€"¬œ–QšP–íŒJè<Ʊµ&Ø&” »<–è––©†Á>á|üˆÿGyä<›ˆÒ[yôÖÉíÀª-#á:Tãw;>°þ¢æ•_£ïëZèwk·èKÍjZùÍ·ú¿ùA—GÿÉ.}l .x–³A=wì–‹,¹îÛ®ûÁ´}îNúù=wâ¡ç¦…öÝò“wo™æÉKLŒ |÷¼ØuÏ‹S?¤Ì«<2’ÛT™ú}«˜ä;bMµÕþ¸VŒ¤5»t.›‰I ÆTã(RâÁ¯²Ÿ~}¨¡‘¥r¹÷už–œÎ n^=-´²A¼É–rX„Lõ‡‰ã]ô¾“hC)‘r‚Ë&r̸#Dû°áþÅcïG‹Ý­ºiäÙžF£YNr¸}ºeåD·qËý¥eâ÷oösŒ ¨Ä$Q^Rf²’ )%ěŌ´2þEíÔªÊaÌ %jË\MÎt8(¿iXo=½ëŒã†ÆD1Ç0£$`NQ¼}Äd7¦‹˜± ví5±L +=¹ÜîfýšEçŒû*PàÅGV2 .|þùç/ØæãŽçOˆ4ºïÝ@õšùmøÍïë ç¶Ÿ_T¦ -yø±Çý—ÿä*çÿQ•ÎÿK Ö˜+ çOÚ™8ƒó‹Ã;B7¸š€!øû`ƒ²Lš‡íÇ¢8A¡~¥X•Ã3«J…\LÖ4õP¿ñ`¯^SµzgÖkÏÙxÕë\‰/Ò†Ž© :$iÀã×·î¬0â|0@ìL.Zè<“ã*™þ‰Æ­Ã„"¦\ŽñYi0Ju„ËÍÞ9Ñ©ÛßÎ<|CÔašyŠÂg ¾€ù‰#®ÛÃë‹‚½ûþŠe½ç¹ q[QûIsõÝ ¦%$h¶¦.ül—g¾VÖew4[ònl>oÎçÍÙ –æ6xå€yÃ’\>­Ù¹K27iY2è¸@,¬©̶z¨ ”†‘¥Cq<ˆU‘sªéXv4¤wëýgR“ö°ož,þbcÿ|ê´£·EÂt1CéÉêë ¨Ú³Ú¸WÂ’9BépWL_*ëhŽâ  'ç¤Ô°·<ÐjœéÞ![“NJ9RgÌb`ÈP›"f–¨(ʸû ç/<Š ˆË 7–e¶²}áªÁ '¿odf&œ“ÎÃÆMsF'rX9d@Èï¼ Dyóí²h¾"Ù¤W|ÂmGñ‘¡ÜÊÕSÀ1ªÏ+ø¼yIC ˆŸî0ÔXÕ•õ9]lóÓ‹*Ã\\ÎɌǂÕSèX_nLÖOÜ‚1ú¥ýføÆuá©Q+ Á›q¡Tö¸mRn¼ü+® &ÞÅl%!Õ¥!Y„lòÈb&U­ hšöÌà¼Fטݘ–d¹‡¬õ€Ó˜~«Ízi=@1ç¿Ö [ÅR’Q^9­7rÒüºÙ¿0™,ê2ÿíT/PàÇÇQ2Bå‚hÉ£?¾nýÕc¼ŒX~æg/}¥ºp§¿ÔÀ ë}·ï¶lúù;WY?T®¸ øs1–6h0ŬÿLÎÑ™.«ÑõO4` ¾ÌÌ× ‰*;’ñ€"‰2©;5„W›3^SªÞ›äHá™ý%ÛúÌË2¸Ö£ìy‰¨2º\ɪ“½N‘¦' •«¨f†àW{{^<]-%¢<¯®/êiNUòsº,ŒÑݨµM®ß§2è¦KpU˜űõ] ðÐ ã.@¢<í1šÈ­E ñO—åçÊÖÐîŠÖ ·Á1t®›‘ Ô˜^ìŽ=szî'§~DÐ˱ž£ƒ®Þ‘^?}¢Û4¯*,MšX‘;´a }¼‹|ó½aIÎwŽª'A ù¨½Á  9Y–ÎD‘|ªh¡³¨AÆ(‘àd‚£A`@ ä´M+©h,™ÉòÄwvøþyõ¨“·‚R„µäÀ—«ŽÒZ&ÞŽ’u>ù¢¤€Ï¨vÀ*Q¿„a'…²Z¡H*¡šßkqFˆRRw…p¸Í4Ä›êê15Eh»/ÛY‘>£Ü~Ú#¢ÓÂ8/iHü¾ÙõÀÚs—FA`ß0÷Ñ7­ïrÖy“b’eò­–"@á¾U]Œ’#AâWï15ie“§©¦jrõÜiŽ‚DÇ\4‹(ǨyIyÙ¢d&‡u2/°!˜|¤M§b’"j~p0 ÔЗ:\Iš_<¼e—nZ›5ò^S5Y’T„R:UW>Œ’F=FÄ„«üq¥bÞªÞèÔñ‘ÔèþØãÚí„Æç€”šÐx––œ¬гvSJôþOyµEoP”ö·1EÉaUÎCŸ(.*+ÅtÈÚ¿ß>ô÷éQüy@·íJßö—E@>Üßçóý¥R ÀŸžž”n¹y2æ~©©ûH¢Ê.š-dlj3_±ºõŒ›ÒCƒÖש+»»¶›#…@R?ã¢YS … Šk!‰[S/Þ{³:ÔÎäÐtð‘Drwgæ¤UßP&¦Î7÷P2„Æ»ä±bJt 6b@â`g±XD“döõ”-Ñ…l:mëТÍÞf½š&€€5‘}í–MËÇÍq¥ÆÀ-𩨧ƒqý¹k³‡ |2¹ˆ•L]"þ \”ôÇ#9âפ0`°\“nè`Êw…©•Æ&ýˆ2L1É1¹pxLLDÔè’[çt—ÛÃåv€¬@@ Æ F˜Öì—{è ]Q½+çµç|¢ÃÌoX¾–Xd˵‡B,&ÕØbCæH/ëj¢ªuý^Ú¿m¬±±¬5NókS?¯ÏA “C¿ö¬õs—fæ×N3ш¨†SÞ÷GÌ×7 Ú 3ƒX‚_ííym°A‘zËÀ¬·"œÕŠÍrZ í­l‹–NmÆRâ•ýÝöõÝqYà™w]÷® ëuº@dd¢MÞß©gˆúÝ;hÚÍWd'ôL8­ã¬LW¦ E ¤ÆRz3.¸‰hZ éÕ8œ•ùšDT7•äYxµ¹¬Üš­pÅ)U´ðaG¦7­ØNçæe”Kø9îTáÞÙ¤…ª r™:ÔO•r úcA‡s†Eý~çÞâú† jWo†ÊO¤+®*¢ ½¿h[¾}Ô·È$<´¬»óåôÑ@esd¼Ü³™v¶[ת*è 8ZšZ„tnEæÔ q±[h´å¶Ÿ4 2åöwÛޱËlñ_`ªŒøòªÌOï™1Ú˜úd|÷1eÍ‚q¥Aõ÷"¨ìì9Ófåõ6îG·ÀåP¶‡¼(à¦átû(ÝC«-¹ÍssÍ¢*13#j—<<ânLdk9žœL SǤ “–.ÅÆ¿4C·v #dEêQË·VM…ßõ/¼´"FíœÏßê’Wj Ü^¥=#zÐÿÔ+øß}z–ú­ |røÈJæèÑ£G=›¿´þ(Dü¸XMéUE³³ÓÂî-d¬šwæJæê:ó{B)CW”SDÉ•¼åS†ooI]¾&õ‰ÊÛæžÉ—cÏGü—»ÄrW lj»¬¥?z•}kL·(ÓdeO¯­Ê,s¶À¨Í:¿z”cäÓýäº9c;š­¯1ß»:Îàü¢£-îyS,½¼~ü¤=èU—ë! Áñÿ^6~óƘÃ:sæ'É©wºË4ÐîYÚz®+eþú’¶?Œ4 (Ôšf3¢¢8nç„K‹Î¼1ÚˆbPkœlæ4fmÖ„5ºäåU@±Ä,ë>¯p·M:3¢û¯]Îúrº®;ž±9)±¬ @-=t»Åãiäín»¾föÅ‘"*‰´Œ¾Ú\®Wīܧ̉hjŒr2¯}²wþíÞv€åeÇŽVœxBø„B#±îLË1êW–¶ûã‹(óL• YTçh …ùlSë j@’ŠíKËoÂÜi„â 8…ÚñÜ2¢OÉÚž×ÐdŽÐBÚ®N»4Þ“ÀÑ¥Ò®ýüá3HHVV²z§AéM¿9e –9“å~ÓŠsfCF0ôŽ¥™3ƒäļM§äÊúsµ?›ÞQýuuã"–%x›ãX©¸<×Ô}ýê@û ~_ ƒÑÙ—Úk:¢S‹MÀ’|(K€"*²‚“51UI ¨—¿d‘¶Ù°ähÔè1Â;=å›|ãš§LÐ48î·yÜP -Õ»³£jjpQ™%xG½öô‰b»ÔÓÓ/úÊ ^æ>¹|%sï½÷Â9Êf”¶Ìo>ùä“~%“=ô…ºÛˆ—Û~¶˜É~¨îô¥öG–ÌŒ m]ï Í«ŒùÊõ[wó*Çûf*˜Ò§Dj0¥oIé‹Yéò%R‰!u°]ð,›—AâæêŠþ|c1J²’ÉR.Ýì‰Ë̘š)S*qOч>Û}ˆ’9…~fhÁí%mVzü‰ÄQF ë %÷`~y|ÆîÜÙ»òŠªheM¦¯•ä>0¤ø1k9ʶ‰`FMC‹‘È0b‚"—I¥¯­â«rá8è2SíM¿ØR½iáŒ"副>Åýç=™­Å°'b»­¢ÏÂÉÛz ß¾²÷\Ùí&8“ÔßÜ0¦Ã©­ï;¿°¾¨ã26Ÿ¿×TNôró*&oQuvùÅý%7-´›x‡™_Tƒ¢ìÉaéÕ> H£kfÜK š ¡”ÁÈĦÖÄ<‘«šKŒ(¶2”¦ÞJ+ƒb,‡ÓƈH^óÁÁùr}RÐ2êžë?f]Iú¥ýæy•ÓÞ eÖÐf¼(–»Ýg.pg ¸ˆù˜•1UU½ï¾ûî»ï>UUÏÞü“òe7÷»7•^Õ!³î+.ýÒ‘ó¥û,P @¿ú£öáy©=röG4–[¨ëîlqÙ¼««d­7±{Dç‚ÉÌä Z¹=|¹/ð|sE(93Ï•"ËNm*½¥© ^îªïK¸+Šs·­ÚæxøùlG/qËñ¤fÃ/îU~öâÅ=ª‰’iu±%i Ä_Ÿœ³ó¸ì.7Ú—ÛßB|qs|Vs:à•dx`Ι ʘ< ί°uIÆ‘œûìO9ÙÀ’ùfK-g¦|¼:¹^VáNdXR9qÚ­ƒ£êoNZö´z^=Vþ¯o5½pÜwjÌ K‹Æ¾¶èýÏÔŸ¸ª¼µÞ:xëÂá{—„ö•†{‚Á&OgòïˆÙ—‘ˆR„ÆÐ\zN®Å’Vµ]×8F»D”ŒŠæßÞäž”1À’ÂåžxWR?ã8:\åp¡M,Êo£íÙÅ:túí×ÔLÎøEÀ3˜®˜ßEôAÄ\„%t¨¢ŠylTÖKæ³IWŦËô™jkæÀÀ̸AM“k¬KKN%p™ªpÅW7Œ>°4ðÜ‘²¼ÿáyð+4Tx’ aO«ÐÑÉæ8¯©ìí'+<ãW1*ºC% pçª`>à8Z®ð$7-üÇE­G¦-Çßkõ„Ó¼×l$š† iÆÓ'œÉ•i”ýHõˆ¥`¢Ñ,/Šó¬öú§vg¾\0ñéC£Uù=3ïÒËÁè´¬E™òóW2ë‹‚gß™T³< |bø8q2ªªÞÿýO?ý4hšöóŸÿü˜Ø|â‰'>ü¡f˜t>&¸sõw\¸Y9 ÿ.JFº"J8W•yÍ5±#;ⵌŽDR²Ì­­kAç7( Ž÷)·G®Ð´W[Šnh™Hª;–š<#>[ø¥ÎÚãëæêŽz6Ô)©uE\vÅW"ÀÒ•®gßg´Á¾'þõEÐ:­=´Õøü3Õ,òÅ›g9+Ñï VhÈšfÓÍÒà\0¿ÔÔýN¼Åy31-¼$+È’†°‘$ËÍ×ìË4\µÒèøúÔܲÄ/NÎ9óUiQ¯©Í¼Ñ¥ÿÂòà ΙˋcT_‰x5Åœìg· Ê”µó0ÉÊ Öé6d‹–2ÉqYT»‚¾§zWçs|å‰Ëæ©úëmmr¦}¸ÆÙ0ŸrÏñŽ{á(Ö#»‚µ:$DC®w˜ÕŽDóæß¿($âÌPŒ3qÓNT¸R6G*š¨"ÕXMÂOeRJÌfÝÓ&/rHN3?A`ª1¡Ü][|å”'”˜´ÌhŠŒ“–v–nªé˜o‹¼ÒS—È‘q‘C&7^Ø«óϳñœ•€ö qëÔ­×`€ |,Û×26:š9ÞŠÃÓÞwá¬éñö¹%†ôÆÊ6YþÈKi –»ÂÜú~ΗÍ3>Ê ŠA7^†ÅCù¨ða±!¿y¢Ë°ý˜¡+‚m½{è ëûW7Œ>°Ì¿ãô… 0T–áw_—5éÕ§ÿH¾ò. £ i ©@‚â‚„O«ÐÆ8àEB·7;÷©ÞêMs&CJâŠé\ýcÛŒ„rylºÄðzH…Ìáo¬ûìk~x<­¨¹3[ÿa¡Èýöú;v̬=«äÚ~ä}öÖ;_U@èßú†í{'ÓÙ®ÿ²?wëªÍ¯Íò Ÿ<öÏüÏüŸNÎÝ‘|³eÙ‡Ú{ûßû\ï·ü툆+·lý|QÉßF‡¶ÝYŒ}È»Y௟ÏW\\ü—EJúB¶*Sêh„uÎZ²þ€W[ŠÆ†2 )W,,mtFócƒaÔeQ3ÙÉP¹3¶®:ôÊqw(~Î4S,)4:‡6ùÚõ¤ÐšÔ! 0ùÖ`Ò¡…K\ßxÀ\ïF~·yqþN;³b­ë›ÿìºõâ`å{[M¾È½{„ Fˆ¶héΑŠ;+;ó ÞÊÇZ4¢Ñ\=rLðñ”Ì“Èð45¹§œì/#BmÙò­»-=cԃ׌jš†½ÿ¶}  *܉z¿çô,ŽjSI+´ž9F›_/~ã¶”I¯½¸“Ú¶wëE’ªFGYDŒ!†^ÄÍ"‰DÉ(Z82©™Hõ—³­&|öÜÇPjHû:”Ò€×aÊÊHFÒ(1ýÈNc$…=tCÈ™8µkNëÑAž>;rLÄXŠàÈÉ?kL"Fs¸[NÝ)ËR  äŒÞÎZMN½Í83`•%…ùÖ¬¦B‡0™ÁyNñèbOìw­Õ³Š™¬B›§%ÊQ‡Iy»äü7v‚`”ꊢFÎl •Ím¬é4¡;ŸBh°^éí;-µÚÑO/ê32âás ÷…l´œ ‡UMƒ©†»jz°”ô2TVa<¬hãf7’À\êí9²žx9Fq¥`€]F@ùµ“eR+܉+£Ï¼ë,ˆ™Ÿ@>¾Mæ±Ç«ªªšØYUUõØcÁGõ»â{¾möÄ–?È›¾ÿÐb#F¸×ãÛ—Î|ö!8fN8Q]ÉüN³\ó•[|$Y~ÓW®Ì¾ò›Ö©A(˜ã’[®žc'ÔÐø™o|Úrr{Ÿ9þÄóñkúýOUr(BÚ–ϵb=ñÄ3‘ÿõÍ ^¥K¯ûׯ–úÕÁ¸€Ù¯ÿΗ[ ¦ò†Ï5!ÄÆ¯~¶É€ë›nº½|t_oÎÝ‘p}êŸ6—S´ïÊ+íýûûÏWÞ¹Àß>ñx¼ô_àbb$®ÓT˜oNŸ+#íkÇÊûÓD ¥§.uÊåe z°âõš¬£3£V$B9ÄÀMÓuH‚ËH±Ôä_S‘%>Jù‚Ùƒx)V_Väb`¢&ÔYÃ-qk&Zš<#‹\±—»jÏV¥ Ô´·è¦?:´†ÓÆó\õm}ô߯×ᬩ%k[mïÓHò3%ßTÞÖ’°õgÜsJüŸ^Ð ŠÖ2fzîôœ“Qc™5;µ±ÁHQRâýhé«£åüœžrð--ãôæªö£AËé±âyUüžãt0ÆìÑm^332­Â“¼rN|Ë[¶ CeŸ>~Äÿƒ>ØÝ=Yù«»»ûÁüðÿš¦!k¿oÿ+¼ý¯öï[ùí÷.ØQŠf¬µ®üÃÑ•TYf¼å˜Eÿöâw*Þþ‡ÊÜpÝ·¶Ê¸±Ø<›½ºÔ@tª)GþÙ]—øìF£Éâ¹üÑþTJP¥p_ÊZ_<](‰Áî@äÕÛk‹ŠŠŠŠŠJ–}³QY7zL8B0i*ß YBåEí<1M—â …É9©Pݪ@Ct„#-˜éÙó&…ºC~6ÑÕ½iNJo0P¹\?R>¯ÚzM=[ÍT¸âëê¿ov†â¬"Ë8~Î<. Á/°‡û’äkýõñÒžAòò¨³Ž" Št{ˆøÇxà vݪȱ6äÉßIj&<¯ž~'èÜP“ûÎ c%Nq(L?¾½ä‰w*,|rFÐö‡Ç‰ùK‰Ðq­A€É|2ÕëÇ=厷3¯ïƾzc®® b^ƒÉâÐÉ1U—,™ãè?,-}vÅàÎv[–?çõf€Ô‘<‰j¨¤±ˆxYeeä§÷µÉ¶Ÿï1?ò[6“C]j”穟57þÃòþ‰,dÄÔ‚Ö.ÆÚóÕÏKðM¦ŒÁÄR:c  Fðùµ¹~©µº’.éÏ\žÈȬ?¥/ÓK/í³öŽÎÌÓUŠá¦ª8m0*8-F–ž&~4YT£#§ýl‡h‘u»Ýît-¨Ÿ–8¸‚¡åtj†ÿ^£{x¡#ú›Žù3O ´Ž˜ü*Ò½øB×eeþ?ö•ÿÂó´’N«9‰Þñ5Ðá|RVˤrÉÌî`6A>CwKÂv$PÍR‚ƒ–—Œ9µ¹T`T5¿Ñ^Û7.yðt(ÇŽZ¸¨©ç{í›!׌y¿Ê£A˘èòDZÿÜU´yÙìu9+Š2$·l·$3Óݦ@¿E>Î×=/c¶lÙ’ßœ°ÌlÙ²%/f>äqòbYûý#c€0{õéáøø"šMÎô@-˾øËw:c|pçýÂÏîüê¾4Há®Ñ\þèühgLWj™ò²àOþûíß¼ekw$Žíþû2[¹>Ú>2=a-s¸?ûj÷HžÑP:úîç¼bíã#wDfÍFSào›žžž|Ð}AK%“ÈŦYÂô³<ù£=ÞTw÷æyéËVÃq]€¥´º\mé9ç«§Â_×yùˆ#œ¸@Š|MåLWՏހ%ÆîLT˜[Eý÷:'úz•ýíúª ööMôÜÇôÏçÆ”¿e‡ÕiáWÏ ß±fl]]¤?…ÿxoé/öVŸr‡ÎJáuAJÐb4|™¬[’ãša39ä庞ì‹›ã^KªLé1uiAåyâ®r6ÜÏ%#ÀÒÒúºÈs‡Êf=~V ^´ˆr¥Žw±™4ŠuåŒ?Ùn.ó©£}îz^Sä_½Ît¶ëŸíX°¶*4!cr˜qˆ,›«uèáCYƒ‰M+rÇ:•#-øïÞá¾uSr¾3 `9þVÿÜg÷3¬.©âëêâw­è3œè±N=‚$+Ñ4o´ØfYRÔáPÜn·1Ì´?+¢ˆ~äèKf¦m E]1Ù€Áy%hÄ4ÃŒ£58†æÙ"¿íY0í.Åâ“6ºý”ä..³„ìŒÔ*9ÿ…÷ 1 %"Ç(°?X•@¨Rz< ß‚Çe¡é l`þ:o«ž^\d5*ÛzKUXÏXñ¬Í…¶†¬¿>9' ”Ðj&À㪢¡bfΗ=Ùˆ$¢ªòAbuq‰õëŠ>370µ°Ì *г+ê2O½M›ôÓÌX ÀßÓ&3!<î¼óÎcÇŽÝyçgôáõ!»°óîÚ ¾ò³~@èúÍv¥fü§òݯ¿rp(£i°; $’¼ÑR;¾õ£½aYŽìûñÃ;t×ßÞ0剤òI‘-©+3â v=öB¿Üüûo7þáËß~½7«iR¸íੈÜ‚/|F÷Òß÷}4!ܾ{ۑЇq®þh1ƒ›Mõ μ´…ˆÿÃQ¶Øœî3NÃ,áþoµ¸S½=«+Ò—­" 3Ê•B DwL3(Œ±ÝXjê+Çy§ÿÞ&ƒáó­!Ëœ™ÕöH( -DûiÏ{Ñ9ÝT6¿|m¶¬ÎtãÕ†Fº¿[÷ƒ?8…»¤^?¶ÖÚ†ù§ß4ï`9ZrYù üû5mŸYÒ\OkÚß_ÑýÙ{‹aÀá|ÜP Éò‰Ó©¯ü‚›_#ܸv\W_Ìòc’.As RÌhÓZOËÛùOË]±ZGnOÛd4]V¤Æâv\5,p ·5ô:쉶$Š“‰ãmtc¹æ°*À±Ú=›¤›kƒ_ßax£MqèÇc–xÜ KKå>Nû°N­åeDs/ý×åžü‹7%V)#’QžFú©+H+öÀÚ>FOްC’£å+†÷OöM»QÙ,/h(q–C’•ѱ Ùîœaß°’qQEäTŽNŸ ³ïucç©D9s—€QÄgQa Î1GŽ'³Ÿå0’Á&• Ù~/­€5¥½'c¶Hî|ÏÞ¡îuˆðn¨©OÑÛHq"/ð¢‚p }žî08_gh2„ŽÉîž v…³ÜòˆÁ‚^]ÓqS]g­!Œq[k¸t@"9ߌ>­Ž[·XRPx§ÉäœåªKy =WHTà“ÂÇ4A>úè£wÞyçwÞùè£"2uóO;¾© Æ5ÿýò?¤¿¶°ªqþÊŽ-¸Â5ÃKW‰yäÓMFA¸¦‡÷<ýŸ+9 ÊnýTôëM:ÂvÕ‹•ÿß«ÿ¾lª»èë?ÜØrgcͼE+oÉ|©—à–þà­§×üR#‡¢LåæŸMªÜ’ïïzöÊ–œoÀÔP»éï>\¾›Ô‘ª¾ã«ëzîrbˆ~Õ/ ¢‹†BÄ‹Œm½F§1Ý›ÀÏ®Wx²Ï¾÷Œº¦"}Óµ$ô…l5– K ÂW`C­ŠïŠõtœÇú\áI®¬?µƒ ÆÎ9ƒäh9˜£–ŒEÒØkÆÏT÷¹Éä=ÎBžC{7k êŠùâZcñBצ¦Db4bÕI5Ì‹-† ïíøm»ûçÛ=¤^“U`)qŽw캦î[»Š ©¶ˆõ7óV &]憸µA§î æe²ðòvâÙ?d·|Sï+™ôffôFE‘‰Ô°Ý„¤³d Öœ½¬¸ëH¾Á"_°#Âö̆Ø9¬ÊN®òÅ̺TOy2²8Èc$›”ÈL}ò]zqÓ䬽’ô+5M5úœ?¸e§åÄ“Hâ\©Kèg”›]Z1y9tǶ!’#-`²}z¬ø¹¶âˆLÕs­d1·<ˆáDNEGE*ÅÑÒg/yíxÅÄqdYʤR¸aù!Ér`tDouáôä{˜Fss˜‘ö´³ûdzëK¡öíh¦¸/†£[i)B9 ›ÅéŽ!ørCÀ@ Í‘šü#'R]3½üò«ó¿³‰kt—ÿ|ð_n&}ÞÜïNjÔ}d¡nxâ# áyG5ù<ÝgPk¨å2n-Õ™,xEE’š‰%+õ ”’yU‘µóç9¢ž!¡šàÔ°Aѯ®h?š0å³2ÌJ0J~íY ˆË^˜>ø¤ðqÒ\äM(<òÈy6ÿ< ¦åÿòzç¿Llÿwþ»ô±~øÞ;½ÓSdw_ûãg¾ù?ÓöOv)½õ—GoüàGù´ï–Ÿ¼{ËO¦Ÿž,¹îÛ®ûÁ´}î-#ÁBÆkw%>È]y8š|àCv¤¿ÛñAe,ÒwÏ‹]÷¼.: áþ.úüæ e‰@œÛP6s¢Š³Ï¾¯[¦ëÌˉëŠ>ð@3 ñb,¢3ß’X»›>‘6s ^ï9 ¨ñà{Ž3¾âÜêÅÙ²Hê‡ú_5(óë“sª,#-9¹¤—YBe–PV¢CYãXÖx8^ŒbÐhÙ©ä¬YŒó˜ÕP,(üt»aë5˜ÁH‰YB–ÇÅ ¥3¤âRʃAmå˜QÄ`iSé±?è’¾´ÁŠà轫¢(ª+±ðÉœÏeFDD ­$è´œ¨áÛèî½\à˜q˽^Éìª `ô®îiD~´5Ùáç6"®åe#4vΜr3I}\Ñë{ƒ·¯g$ÄýÞP#ŠæY"ÿ° ííxƒ%×Þ¯ß(͵ŽÒ«]“q,-U¹bŠ>u¤á¶ygò Gä³8kJÂLÏCE–bþ!Ê^¦FÇT!Éa݃̾Ӽ_Õ64ÐßÚ}8Õ¿?Â/­H/›^^JE<6éβ,18_ª fÇâ5 ¦ó”èyÂ?,¹'WŽJ þ#QZk8ûÚ{†¨òqÙ¼'S±Ézì¹Ñù÷š;§6ÈÈ(|?‰Ãþ*­t†QGÜ (R£ë7iÉ1ÍYlhÞ*3o•id(e@èMë—÷P4SbVmö[nmêfIárC÷ëm•×Õ Úϲ…žè2îo£6/ÈEâ0ñõ(Pà¢ç#+™… >ÿüólóqÇS @þÚŠ0ÅÖôP˜õZ33>úžå¦ÁÍë'Mæ;‡MÿR26±é@u%Uü•€Y¦•H’lã;®nyË~Ó%Ñ©5ó°”8˜£@S¤38Ñcç‹´i·®OûòÊb42ƒãçµÊVfºèG·šïÞ˜ä±Üqè¢Ï¿N£zÉ ð踱¬q8SÜ‘«u3R¹.m x;(5vÍ‘éœB÷e]‚G¡ˆN•PA6SÒœnÉ=ñþï¾Tìrr¶Wàs´Þ˜Ž…€Ò™@ÊåÓXi¢ŽRy¬[¤˜pår$‰ëЬUFM‘„@\üÚ«%Ÿ_99™–QÊ„ñ «¦»cÞ±8ºùŠÉH‰öÁ¢·S®{–µ€¯Tû¯fùÛìöw#eÆå>lnyè<79‚RqƒoçöÐõc”…”Ñ@ßUÚ™O¼0Ö#1&‘b@Ö^E‹ôÓôIÞ–… èKí5WWظ„&‹R"$‹ð`çÙ§Se‰ €­ìØ‘äÁcÊʺÜÝ“YÚÞGÏ~õ¶¼©#CÛ›cvðjcF±es,›q(çK¸àûɪ“Ù*'—œH!Aô¶gæ,šÚr…½{G¸ÑÁÌ"Dw5UX¾ØN˜7Îcg¦ÃÕlZ¡òÕN/x3ÃYSoJ[Õ±áûB¦ïd¶*£P †#R£^NeݧE“˜2Z1qctÛ°;œ1ž+3˜D·äýÍiû}]š*f²ˆ‘ŽíìÒÔÊë†&¢à÷û\ ©ÝÜݬ÷ 2>A|%S* |Tòáþ>ßù< ø[áNÝ¿m íl³.òM›(¿r ¨o^?éoÖ²®-ŽM­ËN_ƒt} j&pNûFŽ–ïZÚ²ÓvÓ%±³ÅÌ'Jêû‚ܧçEvëâQþæ•Ç‚à‡5¤±‚® Çzdo*hÒÄ$ç×ú-Û-+ësójÒoîeîßÏ·ºOu éØò† \ “é0o Ʊ¤aPm°B•2³‚Ò?*9»Doñ¹ˆ”MØ?¼{kéV´?î[61ë!Óq½Õõ’1dbS¦ÈÉ’eu67¥ä(O)'E…èXwj\þÕÚŒ{;KVÕŒk0#õ*ÿÆIëÍk&ç¯bÛ,ºgYk~“ЙLzë½×t?µU¬Ñ'õ—‚Ì-›YB~¶|Ç›!ÁæY` –°§3Î`=2êÙX•€j¡%k.Ê·” ]4ŽUÎ6ón*ñÙÃ[»ë8¢ öAÒ’¬©ÇÅi¦ƒ wë¶Ô¯ªÌ\~¥unå &¦€±eÀÄ1ñ+Ä“§°Ë–8°À)¡êxH_a“ܸ”46™3”<ÍÐÄ`¹%†î£™ª¸@Ãò ô*Ó£qœ_l9˜ò]mmž1òwÛ±ŠÕ%+Ñ{;°híÌŒz-j À‡²rì*¿ÒÛ >W.…õ•­C¼sW´‘¡TÔ.Þ‹hZ ›ºÌÙ’•h·?e˜P2Y€LŽHåðdMmÖ™æëSc£ÿö>Rk£5UnRnY%–ù¯¶}zQK‰YžØqÌaÕK«çàô y÷† ü[(p1q±QâVMqâ*Pà/I>â¿àcVàoÞ1ãÕUI––ÎÄPvJ-ÂÝÇ­cQõ¡MÓ¾áÃqÝÙÉÍHà©àhº´´sN¹dY"q8F¾k]hËËM—&–i19 € ÆØM+F Œøã×ðû®‚ã’¯m¤#;+—å‚F @ @ÁÞ‰”éÄՙ݇…§Þ£WWðÕeBŰòÙÒ›{Hb~ƒ Î{u~¯nÜí—W˜¨lЍ†ˆT½DÒ‚ðàû0â9±£åïîH÷ôk?~=òÆÛÂz÷|»Æ*As€†?n¿2pJ,k4r¬IÆý£#áLªìÄ6Xº9ß`aYàùæŠb‹µÜÕh\µ*‰¶A78¬ã÷<”Ôïép_×8.x½‘2Xã#Ý ÷lVºzÕ“†jí¦_ì­^VšœS⇳Èd!b©óÊˉJæýüÎ]མGÌ©Y‰f Þ•=ÜQ¾9S+kHŒGýìÅÏXRØ\ÝñZ=‚!õ–<ˆs¥6ñ4dy¢kÄp°›M]^•þÉg‡@Í„2¦J,Ï`xˆ,«N¸ìò¶dƒuØø&òLDšßå'ŠLÑí¡$ƒYžz^Ë•X2­igŸXVNö3ƒ}ÂA2S)bÆú%{_æ£û'vö MKL NÌ?”v™PÁJÍ|D“—MF²ç¬þ2Λ=õº´€Ç.î=ÁÍ«I—0ÑVGgtüÐÛüåLª‰J»FRz8¶ $¸`†HbÅ” ÊŠƒÍ´`dD@€vZ% ¾v]„% g‡}øe+U€èZ€çŽ”­­ ýüãÓs"s+ÂŒ’]Q¼àZVàÅÅ®d øëÀçó—¸8 Ñ^[¶wÔpMõäêxï0óz‡þkë‡f4~kÀøõ)®e¸µ@ËÁRZUªœs±I–eÇ%Yæå®+£O¿iºyurb|°×~mm*ŠÒÕFâd¬x™39·ŠêÓ°‰¼PÂSÀ€ü ¨ÐiÚ¸¨’‚Èêöv4YÁôú —¦Žœ¢Þ=Œ]¶tæLÆr,çñ 4: ¦$bQ2)‘Çß1ÛuóVz:P}‚†¾¹ÆÞÞ@•NWdÐ'Åq! 'H£½’¥vî>1Ly\‘嬵´øLópå"`)ñöE½ÏóÝnH³”€£Š©¤*<ôîœÝ4£Jé;æ{ha]Ÿ«ÅL錣ƒã©Þ9æ7jŸqïÑÀ­×Å^ïðŠÎ)÷Î#Ž3)£$µÈ„,1Lû0_­ÏŒÉX_̾”>A¤CqÌd8dP½Y=_ –ào(kk‰•4GjY;UYhžŽÓÚ]ºOÏ‹n^ššAUD6Ö1T)¢ÏpZœC…a×ChãraÏQâÆ+ÍUêš…Ówö®ptK´á ;×(Fíòä—&´…º¡¶´U´9c{D·wÖá-ÔuïË5X•øD‘ÐmÈ¥ëйX t&ì5ÆYœñpMà%Å_@„3Æ0Onðµ_AŒÅ´©švÁ¦jPƒœ<#Ô©ÄeòdÜ«CEÅ#(2œ!66ô³$vyÙöX©#­VF£²Ñ„Å‚âÍCôß}:•å‰ O&3¨Ú/›Ý_Y3`7‹ä¶>æSó E¶ |²øÈJæèÑ£G=›‚ZgS°Æ¸8x½ûî ‘æN‹×>>+ †ÔŸn×=¼Ùï0OsÐï Y×—ÄÏNn.»&„‡ùZ9eöYf·ÌȲŒ„$ËÀ1ÊÝbOo3ܼ&3!fŒ´´sÀö©²ô ƒƒ$‰2-È:ëÍzŽÄP$ðTF~áMûÃ7¤8FÝò¶=ƒ£Ç¢%&V©¸Díïã}1üÅ[fÆÿL…Bx;øíà†ˆG^Ô=tRTF ZDR6°W\]òÒ–3w~AIòøñ¸iYCpÅs†’ZB…LÒ?Ž'¸X4££c.‹Nf‰ ·¡ìÔ6]ª"­·K‰WT_8î»gYEbð/œªþÔ<>o•ÊŠÔcG}ß©_Óà²èhïìŸ1ÎùšA¿}]œS×`ûUsãµµƒ`2ö#ðûß?2²òšêbéÄÙXņ@³Û.±f»7OìÏÈùJ CðM–ÁÓÑâß´6£Úe—¹MºÁnž]¯bª`MvqÕ2…˜…a»4eKõRÈåPÆÁ0ê°©&Hò$u‰{¬Œ<*ñÉJKç ^$æ—Ê}ùLÅZ…îeT¨Yi4ë–›í³´Ðh®‰n‘+WaÍ £ ©K¬}“éάnmQˬM%A:×”)+RY‰þco™S'­J*t7¯£)¤Ýß6G"1L#P(Eº/_iÅ… –I÷¶c~³„Ëš¦ž-c¢‚é½XÑ%Ç`Úy¯.CÿàöK+ÄŸï²!€8 r…=·iÞØ+§<2Z‡¨»®œçS ÀÅÍÇQ2÷Þ{/|£ ù ‰àÔÍ'Ÿ|òÏ¢d²‡ª»}©ý‘%ç¨Qu®çïxÁÃþ ‡úç8W ü_Ñ;ª»®.ÅÑrÛ(¹¨& ™¬ö½×kjг3Œ G¹bó,u3€cµú’¬ˆ´5ÖîÝ!m\˜qØ.÷’cÔ»7&Ÿ~Cóå‡U@œ@Ý–lG¢t[€¹º®»¤ÿŸ]¶ºr¡“Ï¥d`G³åᢣîxßÒ“¤®¯K½ôºŠ‘x‰›вf}ôwاn/rêÒ˜”†ÌìB+%ÿßVÓ·n‰9¬ÈIƒ  ”Š‘«‘'ö­]ïÎȘˆP¨šÞã‘WM'ØŒc±hŒ*FeQS!ÅŠX<Ép}eW;ZÃõE@£¹r{d±@íë.Û°BHÄÅWZ¸ÇïèÌŠÔÛÝ¥?ö½“tXÀcÀi\ë=²ßW÷8à©—øUìȪyú—Z«j‹d³ÿðËG™uwÌkPÚI˜e ßJÆOd‹¬dÎÐÞyÔûR ädÔ„ÍR>h‚¬@ ZúÂL 6x’†‰(ržL\é®A¶VQ›4Ä€ Ò6ÂWHy³ŒNKæ4;Æj %,Ý—tn=S¿ÖÝkÖQÝPaDREÚEb˜*`¬Œï>Q±ÌÁ&=Úଧsb~?؇´R7æß5dÛ¸bÜéîT¸d±áœ@Õ4 0Õâ9*#c = È@B¨Q‘*椑QÌH^]Š € h%Z´T¡! [j©£G‘Tê”j£Tá½èœÕ–Sã÷™ L®ÃoÉÖ&È)Ìk‘†–ÎÎ>j(Á¾Û•pmš›5rÊ*[ÀnÊç€PBçä&5[0Juʼn|}Ï>9|Ì,Ìš¦ÝÿýðÄO 2cóO<Æ È²›¿û]¤t–Ôò3dÜW}õûŽqÁpÁŽrþzFR௃BÄ‹ƒ¡ •7ÅtEPŽ– ÃÓŠ›‘áLãØiÏÿÆïÕÌ>¡ÌCj|%aÖ–þö·]MÚ’¹ ÇžOÏpŒz÷5©§_çn^›uX—.‰‘Γérƒ’H[I½ŠÒ¬*+b<#jJœ³ä•ýž@  Sû;ØÞ{ÇÿÏÞyÇIV•yÿ¹9UΡsNÓar`f€!KF¢’DÕ5­«îšV_Ó®º*" QQ‘0ä0L€&ÏtΩª+Ç›ÓûG7šž¯û~¬ïó©[uî©snÝž{~çIËsu©¥Í¹‡^õµØ ×¶‹E™Ÿ„ß“l_l®ô¸,•evÉÃäMY0te6ÿؾûÓ}Ž/\)šž`15Œ40B'9d1«›‹Ý7¾´ÓV¢tAÀ”tÌÐdL-¢&Â)Ó¦‰ð˜U7PÝ€‰eA`Ì]¶Z¦ç8}É…sëíŒë³uGÌS¼„/‘‹ HÊ´4táoì *Ð~«^í`eÅ àµäEÛsƒ•×¶¦ßò) rCf¸<œñ&»+ýjPžE‰2\àî~,ÚÀ+mã`š¶_éu¯­àE”ñH‚|gÂvhzLpkšUM6ZWûÎq•[O’†®gÜrY»xâ6%J|ôø JÆ0Œ[o½uãÆ`šæoûÛÛn»íðá=÷Üsê]Í3éœl°þõ7ÞpJ „÷yâßÿ=#)ñ¿†RĉÝÏüàêÜÈ4wI+¼ˆýàiÏÎNä²ÈýO¨k—â]‹æÂSFã®s+O~·;ôÏZ/º*˜˜¾ÿ¯øÚN£«unSYSÇæ-Í8ƸùââïÿÆ^}¶$¢Íáa&Ñì¿íöñóÍg{ý7®K?º›4Ô\íB•ŸYvë£ñªZ3 æÚY—ŽÖnØœ´<¹Ý~ñê%šeÜkvÒã9îÕ1gÇa²ë¦©mÙ+[3ÅË.÷ë†N/šL s1$(NÜ|½÷áǦn¹­‚ÎM¡:T@eÖ‰YžœŒº]Ê1!ø>BqPâ˜FV|atÑyŠQgÀ4²µ¡ÕH_ß>4Éž¬8ôùóƒX ’”§2\·d‚ ©¢ ÓÔõX1T ½/¦¡7A7dÒ=S:èÚ³/gu"g7Ž-”žÏq—j*G¤~úÊœL¡2м‚2Ä16A¡†“ž]Q—išKéïmØÌ‹gÎÁöT[‡‘†Z8Ám@˜RÚ7ŠÔé&øÕ"â,ã`jÝõñ—ÈÏ_'YŒ"‰:Íi6{YmïHÚûØþ†ÅÞÔâ꡸Þ"/mÀ§|ïÍm¸¬ÚšÂk’h¹G¸HAZìŽâ+ËEŽ5yI*¾F2Ó7Œp#3Ô›c ‚ Ão7k ¬¨ŒÈ¸å²¥ý«µü)îÞ[wù ¡‡jwiész’…Ôè:x+îGÞÜ…wµ'ÄÓl³aƒ‰k¬Ó‡ ^™sÓY%DL-ߨmKfaóÙè5‘js³ú™³@ÉÇûBçTeŒ˜¯dŠ2é⎔ììPW¬NC‰ÿ`|ðʘ³lܸqÛ¶m ~zb1_ù&lß¶uÖ°s’»fµîº©á“Ê-K>óúP4¯þÖ“ø§vy·ÁŽ ÿóŠßMÏÀ™¡GHËÊŸ¿õ̕ӟŸ=qI~ÓW®¾sãÖÑœN•­¿ãWÿèÒ²…í#ü–›ê¯+^{fòµ=ÑTŠ\õ‡ï¿£Ã‚˜Åý÷Þqó¿=²7 îÎëþcã]·uZõ©§¾zݿݑQÚ·ìóϼú£Öƒ'Érz~„- ϫćŸRĉ#ÓÜ¥‹xŽÖò< ¦/ì°ß¼*_S®@9ÖP‹Þÿ„žÍ›Ë»PŽEL;ÚÃ'W2„)…•áq{SS{®¡:?0ŠþòbVÏhšNà <¤8ÆüÔ%Â3AOC¹ÒìC®^k&òÖ]1úÂæxCÂÏN½÷Ä}CÎGù®_ë¬Ï¾Ù[(zéÒ±Ù…B0¤, LÞöd¯-äÃQ´m°vkZÀjt|€Ì£(°ª´q›Ë bùÊ®hFõ‘ªÉ²*ÈsŒvx ÎfÊF ÁÜöÌð«%Ž¡å\’Ó"åž±/cþðâ ‰`jÍç‚-þéžÉê%À`"øø$Xh–+¼=ÖÑ¢¤Ï =Ó>ít¿‰“vŶÀ%Åq›Ë $Ç ©h ÀœµÒðòï¿…¢Å;©ÐgÑûãºçñáÅ—Tö0øf."[–Þ{À»b”·zhD“ªÀŽø_e|Ó9ËPβ؛ºzÑÀ{#=æ®"µC÷V­‹!*Žçñ5 iJÕæÐ Ôy±Þˆ>réñ$ꥢ&WÉ2tþÝüo,!µù'kœñ'6Lôs:S^2µ]j‹¯üA½3N›b¹:2É6Ò YÔù@w”c¢ææBuès?K´„Ðb¥ÿ4{P€µíÅ+N_@È¦Ó "À1JFG©Mû+V¶"^›Jš‘é¦y‰²cöSŽ5# í¤%Óªà¨iTp±} ûßÞ±t¹ø‡_‰µLÀÉ4C®ëÌ}|C>g8v‹ì™Ü.dêÑ]Õ_^7‰³Ä!¾¼Ž}Ï˜Ž¬sÄÂ5dK”øH³ÐžÕ)p÷Ýwß|óͳ¯˘›o¾ùî»ï>ÅËØðýÕkNÛöÝõïÏ-MšxþàÊ{ÞîÛü©‘oÝþøôQž¡¶søógÂw¾I§'7ÝX†õµ¶•_}jP0ôÜ®o9¼ñ¶§Ç÷Þ•§ž?´öþû‡¶}©ðK¿¹ƒ0ó›¿xþ»/úsTQ¢½¤÷+|ñ¿ó{ÿô纻GdÃã;sUÅaqtÜ‘,Øy’y•øp“ÍfK™j&fð Ÿ ÙZá“÷õ[ ³qÎÅŸc‘[®Æ6äþ?š{š;f˜Y£“B˜²OÆèJŽ5»Zõ[.Ó†&Ñ_>B$3Ç}(l™iq.ªKöN¦ &"P2¶{olä@1ÀÜüÈî×·Áð@·2ÖP!˜¼8é¬ (Ït7<ÛÛøƒ·—>9Ðô—Á¦]±ð²J~Y¥0=- Ÿ.ß~&~püÍÑ.²»Ž ˜‘·÷«]éO¯]ÉìwèÓÓx+íùc¦ë½3Ã4Ø^G¸–a˜X4Ù+yÖ5+‡xI¤PC³…Q]愈§0P$zÖ$qLŠ­ŒNk:pN’P –âÜ¥Û7ä\äUy‹ÿÙ{fB$ÏrïÙO®õIY"»‹Þy—Åc¥ªƒŽ°ßchZjjDÊ&8Æà“cMŽŸ,^†jkª*Œ=ñ¡¦ÒUTö™©Ö¾lå{¯0оÜkBØ“çžh‚AÛѼ Ò݉ŠïYþætÐN«7vXš>žŒ™…) é^5ÜCvªu‚–$Hu0˜R™©¢Åê Àº¥úã/∮àˆá´Î_˳¤|uÛ@•½¸ñë ûBâXv»ä}³Ø:$V©’Q!öe逌#öPÊ’.ßþÞÈ×&a篾b\{1ArÌÚ–DW“ÐÕÄÏËô}ÝDý˜i l¨Ïl™T¸¥åi•` NØtF5è™Ò}J´Ï¾øll0ò§ç±/ýˆíè›’©§§+>w·xUàê Êp>·š7;ô–%Ì\A›W‡*74$½ö"JY„2±^Ò*œ¸M‰I>¸Mæ®»îÚºuëàà\B’úúú»îº ÞM`Ã÷?ÀˆÀå_¾¢š€ÚsÏõþzÛ˜tKwÒ³0ßiWϦ™'Û>ùOüŸË_®è:^c×…_½º–€ê+¿zî¿ÞøH÷V¶îÛø7åÒǾ²ÎK¬ýòO.¿ëªûöþð 4ÊwØ7´ÊÝä©èZ ïq*{ÂBýüb9öçU¢D‰ÿóüe/ýÃOà/{©>OÞÚMÝyù1AÒ‹t-BjáÁ—˃'J×;›×Q2ÁÔxÅŽ5¯8e½ûù²+V¦.X.<ð‚ë´výñÞÀg–FjY Q1ˆŠAˆ€ 4¢i«FÛdãÆƒíõ8ä›Ï”6n¢ï¸)“àxÄÿí·ß~XÆÀàààí·ßþ›ßüæM+¦i"b¾°}ÛÖ5ßÞüþ$fñXf-Aaš¨žÒÉFfǯ¿øåÿ~î`RÅP=—Å®”o“Áíeι½(ÜYn)ô¤UPÓE×é¹M%*Ðèâ_NaK¿óÄw¿ö^ýïfóEŸÿéo¿uÁÉ܈ìGßœW‰ÿõ”"þK|Øž¤/ï9F§Éõ5ʦôU§çlɱ.wêÅì/4Ö.AºÚNé¡`UI¶ºHz-Jj+ †‘˜Ùà™†jƒcÍdÑþ»Þ†këÆ«œññ¬ÿÌJ^"é¿í`z"¼*"¯âLg›³(J7ÙÒi@èæ ±¦MÍkFÏ”âÖg¢QLWC™Ô^~"{Gku™[ÚÚí¨ H¬RïÛ_v^ElVÆÌà6w@–rÙéˆ`UÓºiÄèrËrº|l,ÒW ;U»ÅÄh;¯Ø9#„!ûÔa/BCÝ4,ñ›Érd\Að "äƒØ~墷ÔïÊá·eZíÅ—r®.¿Êûlh2o8ûp¤hÍ)TwѤ•&V®´4L³‘YA¥kE…™{ám{E¦4ÅÜU íA¬,6˜—‡GQWÐ|–¸YÙ‡ø-¹‰~²=-“F6 ð»á®ªrd•w¤Œ[ ÂæI¡©KfòT MZljj¶æ‚PˆÔ½}ùf©,LJÏ_§ÝÿW¼«“GHŠ¥°Ã^|‡Ÿ¦À4?^Ÿèµ%½å«ã êÌN¦¾?gi´Å«KKdö[¶OÍ8Zì¤U}jËjE¦âÝîʲ´ “ ¦ ?Œ* :å²áLÎQ šJkÅös—·dkaD^Dfâh¾CðêCo ™Ý“æõ×2¿¹†Á ù¾ÉPmùØlokC33é"d–VW…ZcˆHØ /Œ¶:iiQhúð·È|B±ÏS2‰´3s¹Ë† äѵzJ”øÇáFüßqÇ<ðÀìa}}ý¬¤™}gÖ2s*ÌŠ™Ã¯?ÀHNïíRÚÿÃë¾=ñϯ¾ÑéÀ¥Ý_j>ï¸ÿ•€šˆˆæ"ýK¥‹ÂYnÉ Ädh%@žéÏpenu­¼ów¯Ýù;%ñÎo?yöÿræè½G¹Ò.4’…ûù;L»Äÿ^Jÿ%>ÔLÎàå <òz?rËÒÑE*çñö ûà Fù¥èý2®¶“÷²G[-2 ¦érè·\¦ Œ¢÷ÿoo"ÆñÊÏ´ x¸DE[È’ß•cÄ@PÆzë…Ű_kHÑ)§Øûºùé3¥®f)Q´ýmï«ëzAúVÃ'ƒ#™ŒvǯìÍ~sÍ"5ìÓŽ7ŸS7&ø8ÍŪån,´êµÏ¥gnS‘lŠ ¨¼ŽƒÃzjF¨…äÞ3<‰½Þ‡˜€€i4ûôÓÚÕõË Ÿ†ÇàÂîDe](oȳ‘es0„t^0:‘·$DBP¨®åD1fãˆ^ž^„âæêòá£çè%²òå–c&~x5µ_Ô´pºó%>ò|p›Ììëo¼ñ׿þõwÞùàƒÎûè»ú89˜-ÈvNŒÌÑ‘@†”WØŠæ*;Zì•»“ןhp…¿õ_[V}g5òöϾù¢å’W[`»n¾˜¸ðë¿Ø¶éë+`ç/¾þ좧»°Á§ÿšì:gy9góúl$r´Yê8#Y°ü½/D‰ÿ-”"þK|ØyòâÇ7 09ƒŸQ¯v5׉v4æ<¿: ·\‰ŒÀ/„µK®¶“ü‡²CžIÙê}ÙC j:Žak6Öã“Z¸g"«å{sÝÃ/@wá·ã-ç8W4²{úô Vi5av÷3»¦ÌÓ,è§?å¯cbÒ¦áªÛ³”üÜ`ó‹¢U®",oWxŽoîcf²–ÖJ½2 Ö”ÍßÕÞ­ÀYúòàÔö~KKPŽÒHgCH†uùÃ…\&552Ûøm¾E¡œ?ºŽ…MêóOOž~eëžbQ( vϘCë¹"ŸÒ6Gkzó®]I}]ñÛO[†·17&lކ¾Ûxð±þÅg˜K“/‘´X®¬ßct5ˆ#^5¢\Œ §QTÚc•öœ j´ Ñ‚FÏHv Τ10žßžpUïȹ[“ÔUM3Ð4LW-”|igFM ›§ƒqžn gÉ»òeKÏð|mf‘ÃaŠ êa”” E žO/ S… :îÀ.³sˆ’€_ÿúׇ_ rôáßg\ÿP 7üËÙÝäÇ®²œvO÷Ÿœ{›]úõŸ^pùmÞ€ÓÝzÚºòn/QU×\žþú"Ëö¼áã?zê‡+9°þóç~ò¹›/ö+mº:®ùñs¿8Ón¼³óWŸ¸áÊÑœŽYjμsã/×p°ûÄ#Aê)Eë}¤)YcJ|xž ?¾Tæ#žÂþô6Þ€½}ìñÄÌþIÇšú9—}Ž…®6h¨ûŸ€“‹VNH”“gCÜ»ÞG‚Lýä­æ+êãw¤y¹ÿ/8lA{¦ô²¥ô}ÞŒ"Òž1ÁÄšpž‘ß?EKÕôM+Òå¡!À„MƒÍKü¯%ÿüpK¥­Påzw`ŒÁ1†Ï­u5‹¼ˆÎ$©‰òù]dM‹òÈ>—üÜ`3æÍK@}Yþ¡7B-AiÛëv"íV ÃÓ±iEœ»|•®ÃJn ©†sxBîîϵ1H£C|fÆUĬC‡Øto# Èú²Ô•U}ßlèÕtà ë˜Ñ8” ÿN_o£cmJÚoò«3eYµùBhA‰!P}–v%€45@€D 5  gHÙÄLŠEM4§‚àÑñ4ùà>×éeéHBOr®7GíhÊKä˜D£¾+Þ<à³åGsþƒ9›M—ïKÖk*„È¢h³L2ˆºlý’ÁL+þ>¹\Fk«ˆD%6þÞù™Ù™W17ÅÓ£ç൅éáãµG þâ@ßSS&V±¨vê™—„ËÖÈÇ,è-¸q(G\d/nE}²¿ Z=VJÙmk³'„‰‰-{¤o]5AÙùÿ³§&À)ÈQÙðÆÒ>7¥tz†³|½Çâ`! ï*œjFE£—Ö8_?Dî“‹Ù†c5ûä@qíÅÓ¼®=ÕQ“\pðñ„ùò^ó+gW§Ä9?FóXgv––#E¼®µ Ïeü핉œ£6¸…Lr rZv6²É[¶=Ê^ºb|Ó%Jü#€üüç?¿øâ‹].×ñZ<ðÀ---çœsÎìá½÷Þ{Ýu×Á»æ”yîa³‡>úèg?ûÙÿé¡ÿÏÂo¹©áSþçþ¸óƒÓK|´yúé§oºé¦ã5عsgOOÏ{8œNxíÕWÿ'GW¢Äß“×wÐA½¶B}ò%¶«Iýù³–¦Š èšùho«Y¾þlË/ì™÷&/ÀÀ²e/º¶Ë8±žÑQªh­`…B-ÔU†¯û½çŸ–xm…Ùîy½z­9fËÊ-«=9<ð܈Gé›ñ3ùh½`µ:Á6wØ&]T¶iKÆÍbÞ<¿¶çÅñ6Ó0Ï«î>ñ4yãE¼gŒíKXRV·&ë×7ŽZm6¹-/ƒS6”vœ¿éîW䑜ÂiÙñf¦îÒÀ®ãö,Àþ…»õ–ò•îÔçŸÓ((¦Öv*³ö M•2R—]B”å£?ˆŽó³C {ÿB“ù" (B½ãÇÅ}·ño¤©à¨N`¦BXÃŒQ0ZAH@1^ÇAyåȪù¹ÁæJ[±Í?O˜ÙJÞt1žÖIÍÆ›TD·ÚqÙ†**{ðHv4+jô’7þ뮦{’œe¥}Z×a y¤ÜH-qI ›ô˜Q™C-4Å<¥šÉb ?ç=+|Pœ`¬v»Õ’ˆL©š¶`{'¡2€ÿaªÓ ['¿y-Ÿ1Ñ¢yÄ{4ážÊpK*¢Þä»þò#%É<óÄT½KËzñˆ‹aª/£ã8A¼5 “éßKÊÏõ7µzSU®DJr×Ö:b“3‘$•‰Ñûv”nwªå£©Bg=èÎÍÄ¥žÇpŒiª`4ÁT{¥Ñ$ˆ•¹S8ì‡6ËëÛô³Í^תš8Æ€¨ÑÏFÚ®¬˜‡äÜ­ƒ}j4"ŠÙƒÜ¹ŽãÞB}¹Jh²‘Ž[‡«ÊìESÓ'S̺Ö9Ë—(ñaáÌ àå—^Z¿~½ œÒÿû¶É,Y²äÑG=i›÷Ûm‰mJÿ%>Ôüi;ú›/JO¾HÕ–kµê-gÊ#ÓÄy«‹/ìt¿5hYÕ(vÖÍùÎ8ϯY kÇBW›ÙP£ßÿg ³«õ¸ÙV0Cæ„ÞV1²?ðÁ¿Ÿ1¨HÂëoa‡‘µúo¿¦ÀîŒ%)Ü¿¯oSÑ#W×?W€î8Åà2H¼³ÞÖ¸¯']‰ pnåId pŒÎ1:Æ0{Èðz:òä6cÒE÷D(¤%$·×Êg¯e0\úUó‘è Ëœ³³N‰Ž'"-W—Ío³29uŒ¦¹¬)>öl¦é2ã»ëû^<`‰‰úa€á2Š™8QÀƒÏ¥Nó³¯Ê¶/¹ßy–]û´¶özõé ²+ˆìjÓVŲ>"€È9k–0޹œGFÂ`˜mþ¹ {!ÒÂÄ5£"ŒdR2ÐiÃ.‚W4êZ“ƒ‘ò‹f®Ž.ì˨D³fZE|Ì1?+…HX¿t|Q,¬cU3åQNbðÐÙm±PRpxج¡©|&I#zØïÉd39~„f¼†9ðܹžîçgZGå¯í\»Œ/Â%3•µÔ9sÞä^A"XZ€½‡-{¤‹Ïì¥ZÓŠ²3ãò0ùJ[ ®nUb¼ÿOÝMK<©}K«;up:4šæþ{Ûä¬á¾ÉË_»4õ5¿ªšØT Þ Þ쀕µ…Ô??ŠWŒðþ‘ÝQ羽û}¶­²Úª®¨ÈuTÆföøkÆ-—Æ'-Ëá]«iÌðº»fh‚Ü? •â8éÞ6;î¥óR¹}™ò&û‘w2Yf‡ýSŽŽ²’Á¿Ä?.DÉ”„J‰€Rĉ)Ããè•«´½Ýtµ(ÐP)D¨Xмb}œ—ð]ý®»_ªZ]Wì¨I¾Ü繬ë¸Ûà ·\¡Œ¢¿|¿æ<ÝçYØ8£䩜^Þhøè®½Ú;½øÚ.ãóŸ<’´*¢[Ïjš`òæK”eCq–éj‹Ú/¢ƒ‰¢Fo·^S7’’ÝEï{÷ÂGJr<2Þ|cm/ Å?™þæòÂúŽ$/á:jk´Œ‹¿Ûdú­Z½ÿÃngŽ'–µänº±¶ÇMó§-HÄ`Ô¹cܬ¨Ìu„³g7eîÿ36¡—7ÒnZx]ôœE9*샨,ªbQ]’R2óûžÀ2þz÷ óo-ÂÖi¢í!ì¢6¹k1¹¯…ŠL%gÌü^¥‚­ ŠVŸB2EËŽ‰¼õˆóSKç] Š4ˆàÇf@6éòÜÞ!¢s™/•E¬Ð ƒDÁ”e“µ,v™)dN€ªN§¨ð„¥Ýj8%Eª çµcpi•gz×Lø¼š¹Ë•Jgò8°S$` ~~^2ÅDsY‰NŸæ#“5-’5­3û!p¤Á@Š;½bŒ>4Öó¼D˜†úü|þ@\޼õ´°2Qç¼[¤Eã6Xv?Ñç0Æ\UŽÂªª™Ë»$Ê^€iR/š(¡iøpÛ7Ê>¼×yaCñúÓ&YZ%ÃQR“XZÉÏÕ‡c)¥£*^ÌòÙqÜ»¥¡É#Bæ_Zúéú&U<²©ÜÚ¦OÞ¬D‰S£ñ_âÃËDзìCo¹l. ™côóVåxÑu“[ám}G|™D¼3ì½÷ú‘"áµó'èc¡«ÕûÍÇ_Ä×v]­ó¯‰,÷Ÿ›Ëϭ˲œõ¥iÎn>ÿÉù®G ž{Y‹¤PŒ ü6À鹌ù’ÁxH¶'êkƒPÄmÝ)û™¾¡Sœi_®²;ïýDU¯›ÎÀº*±( !QSã0"㸮ްžˆ¥™É$ã·›FÛ¤òuÎiCV€A"x‰ŒdØG¸ =¯®pZ«@Y gÄ1‡›/2÷Üh{]Âù·åW§«¯%{DUž’dÀ`yª·š ‰ ¢°ÚýHˆ™nÂ’wâ#‡Ð¥÷‹„‰â~Ѳ²eu‘°+E,ù!ª³£ íìåÀÛ| ÉÆ‰À/wV~ù‘5n7ÝÎ2bË&-™´dÒ2BI&Õ|ffñ%p[@ñ Åá<çv!¼`²¾!L) k(%Qn‘õ«d˜3Xq”Í^6×p'yûl:P5}&+VÚÑõ¸„ÍkŸ6Y§–òaéK«zþ¢7Ì76ŽNç –ɉ¶üÂ7÷bÓ“ÈÚÅ0ë¾XkF· §3¤ÒÉ=zë¼[“Í¡„û¯#~AþiIæ×{ ‘ØP—rÐBå³Y °Z¡8œÂ_ïv÷Ì0«ëŠ?½âÈJ@1QÁ H]â¬êPú˜Ââ,¥°”âµ—Êd,Ëýt“¸¾¡KÃ}¡ÂœåÍ8JÉ4Gr6>2T¨<ÞdO¡É™[îR¶'K\rbrJrÌÞœ(ôE,d-Q⇒’)Qâÿ%kL‰)Ol0á{·hGW¨ä}M³ôÂN×ëÀÒêúÖHùŒã•ß}Ûš–WäÚË›c|s6½ò/!®9W÷yæ¢öx6nÆÔÂä¡¢ÒήXR‹çŠºpLJ¨]‘0«¦+Ë¡®šÌd!ê\æl=¬îS…þB%ŠB=›Úó]âévQ§ô§·;Ó8!Y¯(?b½YÛ^d8w0D‹ÅLz.7G«5!µ&”²»qgDùÛ eµ}8#‚S˜¿ÖæÔɸ2ó¦ N4O›R]zÇÂmÛ–j¯§:-j}c$¸Ì{$ø$‘³ìŒsKò5S '¡Æ.È)) ]‰=ò,™Ê†'îÕèêÕƒžšKÊâ5„T–€¥˜.wˆù—'ëîzÊ™Ê@Òäí…dy‰ÈnѤâºM0É"vL±¢2‹*Y¨‰M"T2 0`€±"`¦¶ ®i¼¢nöÍヲEŒ€&FV?h TÞ೚tDܲ„´<0ýÜPåGBÛUݜș>R­¦„QÙ:¯Û8æ.G {MÍgû›Õ(Õœ€Ñ„ç–À¤ ž„ˆ GÐYS @PKD¨Å:̃ÏãÏÆêÆ2„Ý”Ë(åâ–‰Ÿtvõ±}uW–M6T%$5ùÆžª×{ê󊹪®ø¹sÆÞ;A·Zùi°–¯)âú½ö–R8T^MòÿZ¶ùÛUÛGü ¾lyEÎÆª‡“µâ8á ã3 ¡ÐÛŸœj¯Š?¼³êÒ¶ñŸ¼®v{;ª®qfòqÁ~XÉ$DrFB6Ô7ÿ[‰ÿ¼o%³{÷îÝ»wŸ¸MÉ­D‰%> ú­Â{=Áê+Ä‘fdš« Ï­S_îq_¾xšcÔÝ¡ßïj[Ê]Ýokvµêïgô†ã…í–Wöšæ5×i> b|\¶pan×9žÂ¾óuÁ•¶¡lPïzÖsåêô$.ç)ÔŒ)Ö¢h=ÇÛýdrñùÞaqr#éÌ;…zÄ˂Gd ãK:ƒñLN,œžëéýu ë²ç¶è›º²º¸ EMÃI²‰¤’KB“O,ÇùjçQÙŠ8ý´ÊgŸÍVúµHÒü{:ÕZÍ9<ìÜ ·ø»¶v÷¤½©&PEØŒ£’ËÇf‚ÊVMy1QùJÚÛéÊŸQ7t&Fæ4&™Ó®2˜¶Õ½¸Ç—²Ðáê5ö|n ó'dkÄ´fs n ÊåÚŒBӕܘjgç.Túé¡ö Úþ\e#s ô¨ì·ÙQ§'1‡`RypÌV ?)ˆ®`ÙI'Ábgn–ðÊ|á°ôXrn\Nl^ë'4Å@â2éDõF$:jz•£Ö'”Õ Ü-§R”û úï?Ã4ÍE¡é鬥 ›Þ»CýUò–k:„ŒêœmoÕŠ@8†¹ª`¢ÿŒç”dyEJvûg’Ä­},%ç êY‡z¿ßùÆcýK ‹ÝG_¿4wãÁBij Äìð(ë’ ïñ;Šîㆆ¤&Ôh6†@É¡¸û•/€x€ ¶—Gý^WzfZ’I[[a0gjfuHYQ–ÝÖïc‰·†=A'ïs,ëìcr»“åÍï:"Œ dµïD5^K”øÈóA”̧?ýi8aî²ûî»ïêd„w4_þ©÷WË™£ß}ûsÍ×OöürsÜ3K”8¥ˆÿRöv-AtÁÒ–£»"ýЫ¾Ü2Gk‰,7œÇ½ÖÖ-Q¨á¤çÁýíK™ÃçïÅç1n¹L½ÿ)òÞÑ«NÓþósÊÑ–*ª„Qp–#ÓÏo¡£iô;7HýÎ…ŽDí!êsÉD±ÛA¡YRÎ-§“ë½{øúF·H“Ìw^›d0{„z.wXŽØFÜ.§Åb‰'â<ƒ­ëÂ}îcÜÛ™Ü5ì};BU±JM…Ëa«j ÕsÙx;ªAH^&"nÿ¤ãÞÝ¡j«ÚäÊ]|µ?`eª«þáMÃÀàÒ†Àð‹ÕŸhÚKj’Ô§ïJYþcÙÙN•+3YÌËáS ÁIŠŒ•P’¤*¢AÝœ1þ}Ùî?޵ü×¶†u•YÎN[­ì¡=#`IÌÅx—Âwµ!"AI^_ÌÖb34&$-4ZF€ËÍÙ{`He=‚³¢€øœûø;B£;Çíži óÕdN —XR¨u§‘§q )J6¡8áv9ªÂI,æyQõ‘§»ËoYyLšÅDc:‡€Z£MN£þÊþh†•g{S^·Ë^8»oïŸz:MÃìÏpÚK_ÄG~óI>i©ØÚc€U-ÍâÛªé>þW{ë¯iM~bé(¼Üf‘üegZ4ÝÌíñj YC«ûá[K3²‰[¬7¬ÊvT¦Š¦£š…TLÞƒŒQ(V1[ã·GÔ‚1-¿fÜ|ÖtÆÖ<{ÈRJ{y´Î—úuOgNžØÓÖ-„î©wÄq £ì˜. A}0óðžJ®?mê¡Í¡ÖOsô|§J—Ò qøA‘s+K®e%þÑùà•1o½õV¸çž{™wøwãÿOȪ«¾÷=¤’8yË%Þ'¥ˆÿFºZ³ùåÃØ¢Z¨Amå1«+ŽÖV5 »úë;½S¶ ë ‡?bIyQhºÖ“Éøéëêô¤Z=ïéövc÷¾€#Ö„ÖZùhšª±j:fzwOjËÒ?G€}*I!ÒTÆÝQÇŠv+(2B-ᦇ”r+.éŒÔ‰•LVw¼&´®¤FBäœ/ÃÐ>¯W’¤ñ‰Ièj º‡Ž(™Ù^¹÷YÑ]ï„.š0,®x¡Ì¦aúЙ Ó;ªVVÌÜ﨩±x‚À1;Kx8œd “{kØ7sVûçWØœ’eâhsGé¹èþaUtc¢Ã½.0²g˜ûã¡Z”À¿Ü9µ¶ç®iÏ¿pˆË£”&#“üôé;·‰+«Š?¼`9îg[*¯Y”Z^6aOñ2ãï¶®Á÷ô}ç@mSHk÷¡_i?0À»w ûžÚUuéÒ±¨âòáñ)ÕòÞ‰(nê³¹%¶É _­‰X+Ýcȱ;Ÿ(fÕË»¦4ƒÝ3AíÏ…S/j n‹ƒ™óœÜ´­Â2#NGgÎ]”~èuÿçΟoÏdɉ+³™ß`Z"×…ŠP¢Ä?6DɆqë­·nܸLÓüío{Ûm·>¼çž{N½«y&¿ºj`Ä)§î_ã Ÿ‘”(q¥ˆÿRj«Ú*“ô™º·Ÿ|þm¦µÆ¨Â1:Ô—_Úí‰Øzg˜ëO›o{aI¹Í?YãJŒæ|OŒ,iw&›sëàxyüE¼wm "WŸo¼¹ÄIŸ[<úô\ÑÔTdÇŽè9øÔDÊÔ j, /M¹¾ß2 4¢X9@U+ó$—“) ‘Ñý)¤üÄSËŽ­JË™l·Ëã6«Åba㉄(Îíµ¼Ú¦møŠ.j$åýëˆ/L)u\ºC?yZŒ¥T‰ØÖ„¥ÜÊc³j§Ú¯Tû3ëš§™Ü-6ÕtOlߦe¤Žù]²}ÐõùnžøZW_¢`Ë‹®zÕLŒŽ1ìk -‚i.¶¦n4 øõøÛ»Œº‰®ªžöp˜ ¡‹+ÐÁˆ}ÓNnUMîíê7.ÏS,—'*$eäŒSžšI¾Û1[ ÅÀsÂâJÑéWx¥œ ‘æ5\>)ì;Pã‰D[§ûS`ïòL‡û÷±öÔ³ÖshÞÍ—§‚ªéɼ >Ú¸¡uô'Ûk¿ˆ]f–Ê3õuùnÐõ(ž}sÂÙ\;¹}¸|u…%Ú©úþ³²Á ¥@ gi 2”#ÿû&…µ–¥o=c.ÔdÿˆçíqÇ×W6’þØPAs(ø¼WùÄy-ßoš]ßt †4äF:50µßóZí-kÆì6Î…i“…÷ P~ Ÿ y|[X:æúÜëÆ·+F³Ì÷ÞRGÞNhCÙBS«»NK¢‰¡„{4Í%eâÞWË5Y¸rmö‡›Ø}CÎκLsŒ|cëôÅ xŽÅÛawÄjoêÔ¯‰I> Mæðë7nÛ¶m```ÁOO ‚ æ+߀íÛ¶ÎvNr¿å¦úëŠ×ž™|mO4•"W}ãáûïè° Ào¹©áâõgGŸzuØÜðèîû– ß{ÇÍÿöÈÞ$¸;¯ûwÝÖiE@yò›·~íÞWFЍ½ñã?Ûôð§jÞkz9â]FåvþìÆë¾õ·aŸqëm. B§8­%¦d)ñá…cÍÚJ½¶RäEt&ILĨÿ~ÉÞèEÖ4‹!|Î’ÄCo†G‹øl5÷ÂR«g¢Æ+øÿ<½´Íšxñ™HoEPtC›ññs%X×ElÙoélžS2¼ˆŒQˆI^tºvzWÎ(Ú[)F‹ˆÕ…æÆRÞójç jRLªþje QäÅôÁ“ÎhÒ¬œ0¼k©;𖦂A6›Ÿ<&…ôX¡lLÛãXQ)}yYw±hþà)÷7/Krïδ à`š§îŒÀRŠOÍsêìÅäþ!­¦Úú³ƒ¨!G_ÝWÄê£N“ !¢ŽSε.kð‚³Þ©F¢à³FíhšÄmEÔÖCv2*ï1 ,‹ŸëorÐʬû›‹,:K¡Å[þ6ß@‹2j¤…¦Ó¬Ápf†×j»ví7þVðTïª4ÇÛݧ8ýYT¦œ$5#ggØ6ßhÖäfÐcI+(9lm­ÈöUJ…qwÈ8U¤=þx?j¥ÛƒÊs‚ÓT•«Ÿå¸Âý»œK©â5+Š·t¸0è_ß*SRðÕ/û²Ý[c§ÿ,zUš$Ö4Š?ÿäØ$6 ’Ö¶ÅêNóôÖ3lµ¦yß–ŠëOO/Á¦Š@*Èüeϸ¸ôh˜ÉÌO³6iüXõØ\·zÞm Ž¥Ý­TBÀœmÄœŒ9Á*o©Oƒm ¾ ÷{œ8†E£1Aš ôUz$ç{q&äÇåÓjƪ,ÃmA“ÑïýÑù­«R>ç‘\jYë¨Ê¿2ÈÎ&O;ú[xbi:/èH‚Aä­¶Ákj~g'–ÄåkÖÖ®tÞ·=4^$¾¶j?bȨb¾Õ(1õÓoú›ƒBƒ‡ ;ÂMÞg•£y³¥Ùž±WŠƒm!‘·zm…dA¶…m+¬Êy«ùÁ 殿zW7ó]M $\]0í£Fù;ª­›ÉhœŸ³¨<×ßk*‡gñbŒ·¹ "§4ë…Ö=Ç+—TD_îq-Y‰g¨ŠŒ¯‚@òðZË?·«;€ME 1WëÕ,~ÁS ‚ëTµb¢ç´G·9ü…s¥€žl–{yà2¸«@̹uÉ9áht¢-£¯•­RzÆS_3ðZÎ×€Z\ e9[ˆ»Æ*q䳋b©iD6D1€—ð—vû:Äé ›÷ì¸zì¶z·~þŠ|Mx.œ ò3ª²{ç/VÚ®ô$+´é ªC Xiå¡WzuE[Md‚Îv‘rØ…nÓ4æÇ±LL›çº¦Á*’óÓ¯µÛ&_kYѦꈑŽqÛô:˜”ùÙ ““oô äœq‹÷‰ƒŽ3k7›Úø¼#ä‘}î#,!¥¦óÖ0£@‰ÿð|p›Ì]wݵuëÖÁÁ¹TëõõõwÝu¼_?± ßß¹.üêÕµ$T_ùÕsÿõÆGº´r9àžK¾ö‰Fa߯¿)—>ö•u^`í—rù]WÝ·÷ÄCf/zð—×qài]å9ñ÷ûxF»ìw,³c`?çß^wïWßß@K”8†Rĉ³®eõÙÎú,/ØZ(zï–†fŸXæü¶"K“þ‰`ç>ôà0²v±LüôÙ|°É[¬h–’a2F£"ÇèA'ŒL±{û‰hùñŽ1Žl{Ë©ë º $?C'MÚc™‹uF qÓ+YÒåGŽ@¦$bó”*B㵺Ž,5w€ÍÂøÜ®L®Êæ@Ôèñ¢ÿ@Öcš°È–øRÛÛOÂã›®6xþMâ‹|®c–=²¹<çcåqÒ4pd$JoŽ1 .P:Ìš€ `žÖœF.[9Iéò®‰æÅ‹³hÄõúNÃ]®N„¡ ÕAK,]8Ã¥µd÷]ü±Ö´Dñø mLjM0÷Æ Ûëb^ÀVVÕ §²²†6—£>žÊdÇ¥Í{¹;®§Ô\®³±P_! ŒS¿þ£mM›ÜÕ"¹Ar£10ú¤`¡X®*°Ø25càc}³qÆ'òU+f_¿Q¨Ya™¦Qц2èÑ"m 7øj¶Õãnd01ã«€sYä² `ÓQBÈ•E»5k@ô¥m /×´Hw4,Pó0š¦ÎD¦k\ÎXÎ㵆™úºB/F” ­^–{à•ò«Œé²VEÆŽDòȤ"ì/Q2ÃcÆ‹²Xa&æ½ð˜_\K¢«VK9‘žŒÏå+çEäù7I·Ýua1^°u'Ýî÷,ñ¥ÖÂÿeï=Ãä:Î;ß·Ns˜éÉÀ`ˆ@˜I1‰¤DY‘”dË2µ’îJk¯Ö^ËÞ»×w×k­µ+Y¶îµL‰ÊII¤À Iˆ8˜ˆÉÓÓÓ9žê~˜áLÞ}žkñü>à™>UuNuntýÏ›VÔ;Æø‰éÖ¡ R2Ù·xkïÞcÄÿý÷ßÿýïåeWW׊¤Y9²b™y'àó|‹ß©%Ç(L,)x ‡Ô¥ñ²«%@Ø€Ö< h³«<‘Õ`€my¼,6ÅP›»4šVV¾=´¿ÙÝX¬˜ hÅ¥šåZÅÚYôÆ™ðʤè¥ôXr‘Fé  ”ŒJyøî¨2ï1s!¯èóºËµFºd-j‰q9dYÐ#~¿åå‹^÷ºAû™0:=AlìŸ`ÏVk©@‡£ìžÍÅSónzSê­žS°––ªŒÆMW Þäø<ÔQªSñ\©Ö/ÊSe— ^µ0~«\ack JÀ„IF'؈Ëj©¥ÛË–J{7¹nÝ¢Þ~S#]Âÿîï9KÓ¾ù=œ26DÚ¶KYy{ßåêö赓Äÿ| ©$p¤bJ.]¶¾88–“½¯e’y©å²P±/7& ]_Ò|ÓªûöÐÈ*Ó&êÙ·#!­{/ÍürZq/J±&ñ’:Á`ùJ´Vþ¸‘VeaÅnS\¢¤jSú´é‰+ÑŽkkŸ=ysÇÔŠ¶ÑHv.ØËz[]r9šIJ•J°sÊÛûT¹uâuöÚäÒÏ®??ë'B-Ö¤ª†“͙ㄗ¹õ†ò¯rj$"êWµiŒÏ%¹cl P»Ô Wçiš>¡zh*|Ç&4_¥§\}¥`Ywó½×äOOG_8d­Ó¥²;åªåCž¦¥,¹–×îñö¿oV¢ý:qnŸá6%Ÿ‘/¹Z|¤úÍ#½+0IAOâ‚>¼ïò ì–ˆXõzô ÍÚk'©½Ûòa¡°ÿUÏOfý=­-°%Zî N”Z:½ Âpâdþ6™•¿?õ©O}ûÛßþ¾ðƒü`]Ó;<Õ»¼v}ÿŸãЕ±½òßÿt¿ëöçx€ ÿ†î»¾åkß|鉯]¯}ók·>:â?êÝ÷|ýÑÇþêÖ6º8zt)º}Sp}´Þy'Ù|ïMöÇþçþ?ßöÁ˜9ñão<[·%ãð/ñÆ8ü®rf‘¹ñ² â’F;> ?zlñs·BO——¼‡#Ì7ë¶üÑ[J³3¦Ï­Š¼uïu…<yi”\¿uwèñgQp1 ¼ÀàÕ¨Ó²iŠ0L,FÌ•ÊÑ %0b¥¤šˆå»)„Y+ MP@ç¦AÙšI¬Fkè´''v57&ÝЈE|0±XŸUïËÉ!6½Ã3å§/™ŒK’áÙÓÔwÿlí^ËÀ;²Àû\ë}–.Š[¯·—^Ϲ:ÎF.7y¿«>ã#RÃËMLÈóÐQøøŽìˆ$³Ù  ÚE&µ6Ö&YÛ:Áb‚XÔP$YˆYŒ¿-(Ÿ˜®½ÒÊ×´þ&zß•ÊöA´œ¯ÎÕŸØÏvxÉÎîn³Eï»ÒÚ>ßûgô×?´šì9ÂúÄåcõŠ•›;³²Îr³…¸ëÿ=ÔÝÕ˶±õ•ÕX®½! °ÖÇcð¤z…ò‰ì†·P2oÆà„j¬Vþ]Õ6å|ïÕÆ«kBñx²~Üô& 1`ˆ>%”P×|tçâ>ò} 0}ÃìÐÙòÜ2…/»Â·d þØÂ;¯€°ùõ ®A.¹ãÆ+ª"o3;\mùun뀫ÐÄe×j€¾ÕyJYð D ˆš v䎂eg|-ÛKmØþö#Áûn*¯™_$wŒ/Ì{]×v0«±þÌl!¶kí´¬¥·WOf}=^R9_½¡+2¦£Éê_]U?§74& 0Q¢Vœ6`ÛùGÅþv2´n¸¼f”÷$ç\æùùŽ“ 1HzêÕ¢c“qpx¯ÿßþö·×þ@ÿòͼ.Ûú‘;K_Ûèzy™ê¾û¿üêÿ¾B|SäÙû·ÿõçï»-úç%üÈ}ü›W{ºü¯ž~Àþì¿Ù Þ®ÞÞ»ÿö‰¾•’AÞ½ûЗ?yï–®ÿ D†v_»H‡÷=SóÌd…úTàÜ6ñø0þ‡_ãë6ßøˆ¨!V¯ ËWo…@›˜U½“¾`ˆÑE©`4”ñî “;úõT°P>C¢#z}P‹4ÖL˦IÒ0mƒv#Ššhhœ 5»5Ež![Òæ,É…5ƒ’åi)³6 °òˆ[ :“&¢Á ѳuïkEÑ´¡…,|È÷ÒÛ¾Á'_ ?w«yÑú!g˜›¶¨÷I‡g¢›Roî—Ò~53Ø2í4(1Q< ÍbíѹØg&K5ªEPmcÕ¦D#»NžûqÓKÓ&I“œÀ F¬åëL¨3šþÍÑ–[Ô…®–ÄxÃjŠ9ÜÑbo4ç‹ü«Ë¾ï~;ßÇ»‡ìîv ùG¿ç}x6õ‰¦‰rQ<‹3y€xؼ_|ù¬{¡Œ³JˆÎä öµ4VÊØÏ/Ó>×E"ËyJíò¯åº·G&ÞÜú18¡o€»à¡úí{¯¿ŽVe¾”4³<;þËzÛ×ݧ¾Ÿ" áÈ pÓ?ò~þÌe‘œ*ër¡Ò:øåñ«?Ø,­‰žR·Ç‹OëÑ—•[ORY7\ü‰Ò•íÙœLÞ¿«ØDVXŠš oMåNÅm;hkÚ¨}²0þÀ÷Ý\[3 WÐ={"Ùi¾ð:=Ôp|ؾ޳HV2å@r휩ʘÄÃDuFOÖ,Û«2f¨×ìH³z9½®2¹{UÇ9U,òöMWª/¥î¾Áy¼mˆ~z>‹¹Ï4ø«ftù.‘*ÐÁá}Å{øÿÖ·¾õ/ÿ·AÅoýïþÇï\pLÜýýôäy¯‘{èþ¸ÿGŽä:îùæ{¾ùÖ§.ÿ»¹Ù•?}WþÉ£ã²Öò·ï}ο³Ì/Z©GžËãŸ=àÿüмà+RùñßÞ®t¤t€z³kùسM¡vûñ…@g“ÿÖ‘‚¥Lål4C ¶å¢TMݳU:œzD»‘@u0Åк\$‚.œ¯W´P41UAñ·„›7l¥ÊäüW¾EàÅ×ÝÛ²0Øi¬¥Rd,I8:ö,¾et©PÙ?A0ÌŽC$K‰Ü7ËÅ nŽ\ÜîÔêÎ>:?Ðáöù÷bp&(š@€ì ú?<Ìu¢d*ùšdÓSW ÊnHÓ2ëN3ز¸ÅaK7±n,ó7 ¸ÉlU3l\Ü[h81á©èú;Å“J'?Û„—s8:,e§pÚkåÖu {ÁHW<àÅíö" ×\dc*s"n[™Pç†Á…/>ú?»lçm¨_ÓžªeE/V?qÏÇ_¼k¹ºbí„]ËÇ\Åœ§hÅx‚xT¸éJý|³FC¡‚ûü#±°É¤Ý'* ™tI&QÏÐW' =‘â÷Æ{à-³ó98¼x×JfË–-?ùÉOÞ¶Ï{ƒƒƒƒÃ¿&>Æß}¥$Éðäoí¥|ä ÛbMÍ3Of¿þQi-œFÒ`Èø£»&#MµùŠíå„pƒh9‹ýÞ¸2<æÙBú‚ÏÌ5˜Ð°87c¦ FÌîn¶eS&1 ÖË “@Ûš‹F ¢4ëœõ€ h¯ÈØ&ѦOsáðdÝ]lW¯¿«w÷Âqþ+wimÊ•Ø.¿y.#Ö›²ÝÄ•%¿–]pwèðôÇÍBÌ^µîÞɲâ´|ÃSå‚'ôÍ _7iˆ Ê" Ÿ & Y³\.VÁÇ ª"”LEÚ‚µÃ‹ñDd®Ã+šÈ»®bLÌž÷ó¹£ôïV÷ê›ø‹75g¾ _F»/ÃÉDB (YŸ¯µ]á{ÛZÝŸ¸ó%{9'ͧñðLýä c\ ت¸ìjêŽ>ÿ¥¾ðÏÇÓC\•"àxÑüÈ>äž|)}õ}«·¾4Mkup±3lWƒà !¡WçÉ{/&cÜœ¾XmDû\«BÔ@\"ÖØÂ¾|ªtmO¥˜a46˜›Œ%«~„V2Z¼Í§×ÁáýÀ{Q2¿BŘúÎWýÙñóýfù¡ÿüÂSÔñæz™ajIýâùÔI{÷t÷-ì­¼&œ™¥î»­q~¦Ú\‰E$A L¦î‹²¡Ä%Ëæ~8Ö»­ƒêÚâA›#¸(Ú5ŸšvS5 ”<)Šã8 ljy›vé¶¼®uÒUcdUG–îs{±ÞXÓˆ¢]7A¨aªbXÄôr•ÃÙ$¼;r%f¹Ju¤mmÈäÀ%tV[Pè•\ºÀØz‹4#¾¡ªí;bö]Nºñ9ÃÅ«éø-]ó™ªëd>^4ét–žš‹õª# ØO#«Üù’u HFW%‹dKù<ï ©Ê¼`×ÎBs2Z}숸C!¤X¿‡"°)]ðº•W›¿ùrû5÷íÀûv€$ÃÄ4üìq€Ý[ð–Z=Ø6.»îh𭍣ÆêÍŸÜ»ôÇÿΉ6 ãÙã2¢hJzÄÍWÖÝ®âT#^&èmÑôJ¶8‘QÀjB„0 `-,€óÌ`&@ ~ÞTMNdˆ\…;Z æ,tkjZZ¬-óÅ)òT“Cž™W§¨v“aC3U_&(ÊôD÷Ý×­ñáeªŒ$ErÇ@@ãCepns7¸ ¤S\ÝÎYkò3ÒÙ’ˆ*@Ô'=3ÞÝ :¢‹„H³³6¼ÐveÓä¡Å¶¹äP×Ì 7í¾í{¿dì–PwH_–d8=ie×ªÓ wÜR9¼ty}ÓîËê”’‚¾ó[×íÛå‹Zc\¬^Vü6Љ˜]ã’2pYrº$jÖäQŒýèµ°V©ÕçÓ½Aåñæmw°„SÓÁá þUå^ïEö/‚îø£çÒô¿êlïCju Qô¾níî›.(6,)Ä“/ ð…¯ÏÕP¨Ý)µ=iýüLìõ|x{SuClX¤~´}ä'¯w4ãêöD¡ÄÆ1™ŠR §7D³|"!èÂ$Í6”ÓiKIFé\ Yº—4ë–Á¢?ð’º,âF®\‘5ó%­\Ï¡Sîï«_ªu>K§¢çUY Ë’Î ¬æ6¥¶Æ™<—Êp±i­uÎmcGÏÏÎ4@ÈUhõ™“‘Ôšš¥ŠÁÏæ¢áhµ>¸ÀÉ4›ÀiH†MŒX`@MÙé"éˆzºìΛ´_ͱ¨X„µXº=;…·‡êeÓ?Þö¸fE†6ÀІUIsàXäaà7L³eÏÛ"c lÓDl¢póÕ/ç„j µ'‘(,<<Ñ V²9¿gD>p~üùÕ”ÔŠ.µ$ȈM—…&É™O ùóó¡ñßJ¡žCÐùiï+ŒZPš7Qr‰3Êß=ûRÛt"¸Ð¶XS„\z D,ÓØð"Åk¦1Í"@– Æ5JV#¶;j†#4 UK9%"3Y[´¬t†‹ƒi6‡³-[“ãÓÝ{$ª7sô3wl˜!|eÛÇ·¼šô¿vÜÚØEÔ¥ZÛåÀèJëØo˽è¬3nâÿÑ}ÏÕ&à‹?'u‹xSÉ0>>,jªÂêRWýäÙ\pd)÷µûì;Ãó8© Ý%K2þÞÏWn d$‡¹¸µÐÁá}Å¿*%ãààààðÿ'j…¶àü»×oL„ìŸþÖú“O®WÎßñ%hšz‘ m*º¢ðFØ×?*I6¾0˜ˆ¦HÇc“Œ-ø”5“¶BÕ´d óUß‘tHWq£|¤¿¸©e}v8É`Èñ.spGÉ88888¼g%t¹e›¢>r£yæ,ýíŸs±z~’¾{»ÙÝvñ(ùJƒHE5‘3Û €Ð«ó¾vNËÞ™ÒÖÍît[8óI½˜MÊ:+0ekœVH2‚鑘Ã6I`³ç†T×ä:oÛ!LÙ!. [1•úr¹Ö0)ò_PÃiÿéÀ]—¯ ?Ÿñ±a­>‰/t\umPLî•|A¢G×:0×þÑ®yѪ¶ïŒ‘Ü훚'ý"gH yªF*¾†{ý“{@ŠBxæ¬X\€Ñ¡ô3éq_pl®h­-Õ˜~£fø%w«XŸ]ûëãíÁØÔœ9X '}RÜ]!úë¹þžÂ@x„Ræ8}ÍUÉúå1 .#$&¦ðÁW­ç†©æåtÆzö4qÏUöº)ýüî?}æœA ÕŸ;“ œ^JnL¤ßáòR-ð,CXi3X·tSÖQ¼C{¨ïü2úÅÎU/Í„3¯cI.;·Àl1¼/^k9Óå—}†ìüÙ|èg½ÏýÍèõ×´¼êžNçã[2¡Îu—Ó ºA@Y3€nT0 ’-ÆgèH5Xõ´y7zÔ|‰gÜâÝ^Z· :ødôð±®ÇO=W¸!~ziïg·tW’/ŸùÇûý µ œÐvêY¡:SmÝ– ¶Ãy2&4gòÙ>(š=Å$K:9>£¾”!šZÐ\=L¾Ç“›õE¼æ[g.ºt5AU 6.¾M©‡÷Ž’qppppxÌg™]ÚÙ9"£÷]¡o4&f¹ƒ3BQ¢<à’&hª/¦"’lÈ.N_)R¾Æ`[¾+Q}f¤©Íw7U‡Î9;ÑZ ×͇&zïî ¶Ã^©ª‡EõFEnTMN@<ër¹<"‹L0lë!,s[ÉWò €¤ˆ‹¥N~'Lg¼1¯ñ_2¿ÙÔ¿§ýœ¹&næ:?Ã\\³bp¥6ù ½Þ¹u£fËÐÈÀ¨’ÚÌÌÈŒÒáõ`¬V¤ïM_ö鯔÷ù£ `›º ¡,)¾Î9?UÊ?S´ÚBòrEMÄ”<®›I·’þõ±6@°»gFó®­=ž2úüs­®ìÓ½ØÆ¢ B~ú´ûÓ·Åά\K`h#ÚHmd‘8tÔˆÙˆ«çˆ;p$t¼Ù×6óóáîŽPA¸´Ë&$Hd»]nްHKÓ¤ZAÒe °oLo쀯0woJGËãt=¯ÙÜbÿÕ ×ª©*]w'½uq>oÞ¢³Â ø–û›¦ó}^=.x\5`C4Öûçž_ˆÕ9ï¥f†i€Ù¨TÀl ä&GìÛº^œµúNAó;‚z2t{»~¦©ö˜gäæiŽMŽ oºa{Ûo¾vÝÒþÇCWïÝ“ªb>;^M^¹Ð¼VdÌÏ\_ÿhc-×E+W¡z7u6££ãEH“ C5ýD ŠJFýÄÎùÉ%ï÷Žû>¿#Û¿´JAÄáþŽQÆÁÁQ2ï•3ó̽76ºZìs'£84†ú”ÏdE¢ïÚ“—Uek®ºÎ¥k®J™•{ ʶµ\Öc|M¤TŽQ®ë_üéñN ˆ­M§‹-SA*,Øzälß]c4©ñ,-câ¡ÊRa‰¢hñ#–u57<„¡$½˜+Júê›°4D½Ç߸gÆÂweÞ² z,`°‘2–c%LÏ-¸ã>߃ӽw§fSžõNA²Áýlªå³}V㦠113m»&K¯"¯rõ¤1ë,\¸G¦.“n7²t 8¯¥Y†¡QÖ¬ñ¤ÒÉç_aã9™êœaÙåj½ÃÏV¯LpöíCÓ+'™‘Xñò#<­ÞÙ9:] Oàºf°íbxˆLDÙg^Ó>²mŽŸ3=åJÌð÷…;‹ëº Œ¶/•ynõñ¾ŠÁyËÞV®4ÜÍåá²»%ãjºÔUÞ ikÐì)þðLKO§J»ä‘Š=Kôáû²>oŸíXú'+?ÆÙ/úɨl{[`é‹а?0µõùÃæU[ì¸ÖTÀ²a¾j}øCª!The!„ ›\§í°× t¤¹TÃ&”zêmY½#j[þX‹¥i_»i&´.:CQ@à ¸[cÊ&ëp”ŒƒƒƒƒÃ{f,V<¬î»µñÀ“þûnªˆ¼Õ•R÷§—\퉴qçRàžJt6k$Kç ¯f… „+Hkm—QKŠX,„¶'2)¼À±>Õ—Ü×m/-u2æ4æ,Ù°AW”–T³d­Þ(ÍMQ”Èò ¶îe`Þðk{ožNÍÅúbjØwÉ­6,déæ¨î²•6s¶@„3THDZQgžœiýdûXH¸H}•ççÚoi^^ ‹ß_h»#2 ó9¶]PGÜ[;  -¼ü“…m¿ç>\'„µ„¥ËÄj63[UtÚCè’BzX³!¶ÒìÎÑq ÖPx^B‹ÔœêúèÖ¹•䲯t.0¡ŒuÕBÆÔÛÙ¨"x“Þü2ýÜiës·/a¶m:ô‹Þ[Zß"î:NûgòÁDHÊâhðÔIÑCª1\´Ž¯t»ø&l¦ôEÁÈrÉèOÏn¸å¦öµ4Êk,*L³<ƒ¦á >}<þo:çxS«”ƒBÖ×ÕÜÝIT¨Çz@Öú«'Ë|,ÃD/}Íõœõ±l¸=F™ëÒ’ÅÑ®ågÊÞöRgSAÜ8½ßÒ´ÖWŸîÂSæÒqcGRÿ´òd¹¿íoJ»ðÃímÜáYú?ì-û mCîÝv ¡‡6¤ÕÄ\1¸PFRCNˆ–Ȩ ö„Ý5I¥–òÖdwðõ]ÓˆÞb…Š:c¼ñÞÒX88ü®ñöJ¦³³sdd¤³s½×©ƒÃûœG}Ôù^8¼Ÿ™Zàîºl5¦_äí›·Ëß&|ÿmË"oÞ°­øàÁä§šð¦2ä£KøýEh‚U«…œœÉ1*ã>SKµøU—›Ò³fTÔ»z-ÊôƒYC¶Æ ’"Q¹R©Õê@Q´×ãòyÝ–&2Á²tĶw!Ù°ó22Öw¼S~1ùÚî±·î3`€lÍÝ[?«Ã³ÑÏ›?­µ<;æÁ¶5Ø–¿ [CÖ÷’kI´y)¾!¥_4 ‚bq‹F %r4ú¹X4Š‹0Ž@q¾íôS’§©¸ázßÑ߈úé^©¨»‚](Ï•—ìHËÓ¡k ¡LIýóÓ5)–{­ÜÚ¾Pkî9‘m==øÕ’Ÿss†$³.ΖbD„ËÆzCÕª­]>íþ;Ö[º.Z ÷éwTÝÕÁáw›·ÿbïÚµ }ôÑÿý“qpø×DggçÊ·ÃÁáýÉÂ2Õ;·ÑloR6„ƒ'Ã{ó"gîè’ž>¿cûüºQ¯]aAeA@Í©ÈÓ“‰¡xÝÏÙ¬lÙË“Ù`[¶y–!h†dÝ´|>‹ìº¬4*ÕdÈMš2f#’¥UªšE­nS6Q_2óØ¥xqºí†ÖšÀ¾Õ@̱,òòÚѲÆ<;Ú $.mzj®íÆ–(Ⱦ¼L_›\ ¡9³ÈÜ{]a:Ë)Џ=nJ Ñë+ªlØ)ž¨“âJƒn®&¹fŒF‘Gìb»ÃÈ'â DÄjJ–-òUññS¾{wÏE]Ñ’\Aúñ0Bëç6“ögæ]ö„'l|Ü=;¹äùû§[?yբȭu Ï3ÿöƒr®HïëY•1ùŠ•Ø;w®:ÝÉ:+\Vö¦UÏYÝçô~oa—o:•bª:å[|‡ ÎØGéa¢¡6T67Ušæšºà¦Ýê¹¾p¡’Yª¹žº«^¬{_šŒüáåYâ”@ëëØõʄ̅2lÛtòÓz“ƒæ0·PîvYµvÈVï²íz'S û¤¨ÛÈW„°O^9¢ÓÜr¬»äoöeg=3'!À˜ÈÍšEçD[vÏÝwe^-?K¶3 ºÍƒv”ݾ¿œH¦?³Gº¬žì„“ Þëö®, ’Tº!SOsacÞœ¶¹d“çDkoòÆlrÉ…}‡+ìàð»Í;zD±k×.gÇæààààp>Ã³ä¶ òùG¶öVŸ>=9l/t%ª3%÷ɹè`Kv­ƒ¤=—ˆX¡5‹¸k¿œîã]äD F Î' MLdK*M©l0iÐ40€%ÛT™ôBlÆ€¸ž]¦<¢—ÍôŠª‹šaåNm¼ÆšƒÔíwäg&ëìóË?Ûñú[ô‰A57OܽMŸ'" «ôÓɶpc°%KMöÉ÷f›ÌátW‡WZñ+{r¦õ¦¶éµ¦ñ<ˆ¼ÙUNMñUU€0_™’æĮ™e¬Ö,fåçš´µºÅ%±*’ŠÙ­#0Ú5]…—‹ÍùŠø7›¿ºw!¥F¥” '²‹h·¤d“ÿ\aYcþñXü?ãýõö+@àôÁö¶­Ÿ‹\ÙÕØÜ]˕؉2ó…æòô"|Ãñìo¦>wùr¾æÊTÝs5÷©º§Ùel‰–·„¯çÏyÓ±1æéÓ‰|E|k÷¼Â"bôzÃÒóÖhL‡·ÕéÕl"ooh³ž?"îÝvî<“U׿Dšnhåz0§Ðm±2¼ nÿ¼wƽ0!ûCP"<4IEHeQmšÅb‹9®dª­t%gpïäð)UYðìñ]ðñÖY>—êË¥úzº’ÊZž`¼©QË{)Ò0tÎã+Æ&9¬é–!UóE{]7ƒmÄÚ2¡cÊË“ ‚U®n²u…õHÚF&×ËçuÏH#Â*ưêÖu1žŸk¿£ý’™—°š¡Ç¤ŸË€\™ÿëg“´»Ð« ‹l‘ ²oºáúXÏq8½”lkkQ4¹³’m¨Kûö¯Ø˜ß’d"T»Üù×ý— ÇêÔª A7ÑÊÏ5ÕºÍêˆk‹3vsXU‰QO=›¡ÿÛóM·tV1ƹ2eÍoVZ8öT=|J'{ØsÏûŸ>“$)²I;™ëØ·vpsg¹+Yÿþ~ÿÔ‚1œ­ë0Ÿe}.s:í:‹‚gFCQ¯ÕV¯HenuO\üö±úÎÎü#ÇbŸ»zêR+ !¯)U‘År@^ÈÓ‰Œ»g]Ÿm”žðô·Ó‘àªâ’Î6[‹ÀrÏÌlº®{ÕN!ÂeðËS°iè@emW’3Â$äk*¦x¬©Z)ÏJÈÇØ-n«b2yém\c~yÿiÿž«/Ma4™/gÁÆìòQι9 cŒ1ëtW¬xÅ|-ÕÑo ù4 ì›¶+‡Nðw]SkoRÚ›I¡ö¿zi”¶M¿‡Óžxûñ‡®ªþ_¿ |z¯úê‚;êUœ>ºèy[%Ãú„£;±þk8JÆÁÁÁÁá]35Ï|hÛE4‰À×”~y*ù»'V¿¦»ðÓ“ŸÙ~æ]œ§Õþù—´ ÏŽ W†éªm穸I°¬%!5©¦WVv±Š‹gë²­”æÜ<&µ²É¸z⌤¦ZMÒ…¨TÖO5-lîJïâx½ééJ2§1~B÷€æ!5lã¸Pi0FdÏÍ]£’ é­([ÀÞeì©Ô‰æ˜9÷Ÿðþñµéˆ5X¨ÅSÏJžu¥îf“74Ï@¾æ~h<ü—ûN¬5Õ%2è6 )Ê$ñ/^#®Âd«3zÄVXp¬ÄÉo„¾‹¦¤aŽÁjÍdá¨ožVycŒ_ Æ€qö±0±œ÷EþëãþVNÀˆ$€gxì2Gtê €cŸË€=õ—'Üg«t¿v|”{ø(Õ¥q¦„¹¯\5¹ÐFq)Â>©7,<ݳ1ûæV–bá ²Œ\!”e‰u´¾Šˆ¼}ÓvõÐ á®kª0[Šì‰”i³ÿ´åûlt5–i!Ï]ÓšeÓàYš­%Z@Ç̦ü ¦‰B©LÔd IC\®¾\6 d9ž\®(†yó k錥M¥‹ñÉÃÊFî(_8‹u놭:Öy¿–ì¢-LäçHŽ`b!ÖÅ•÷ŸüwÀpoÈAÄBLpS \G³ "ov$-´L¾<ÂN)þ])µ-¬þâEÿŸÞQzy2r]_áÔ¢¿9 =uÊ·¥“ßZv>í|ѽŒÞµã¤ƒÃï&Ž’qppppx×,dˆæøÅ·\mÑò{h²ew×\[¸-‡3Mâ‹P“ÈkÆÛâIÄC9b². aXDÊë^(‚z.6]pyççXŒ±®z®¦7xoç—ë²ÁPd0¨ÛÄ´îÌzÂ[üªk´j±³ª_69Ig1†¥º«¬°Çuo)ß{¥¿Û_Ç6nò7c§GüJŒhx‘4kG˜€á„;’æï½!'òæ¹I¿É&s¦B­a^:ºwà‚¨¡…,ÕÕ€åEŸ»ÀÔ%"´xRéàó'äþËŒãuÚÅJ^?á¶ëð6£ kkËï#WMLQ^_äˆþæZø|½A2f°í;/P×^ÚÅž€n¡lêÏ/æª{R1VJî`\k¸RC³¦wWSþÙ@DÔÒ6‰°…ºàí,´m.ç[šì=ù¨j)ZnÜ<áýBóªX¹¬?{TÿìµÚ§ÚŠŒ¿¼êòã± í±Ê©E¿‹7ûcÊÑqÿžÁ·ªÇJò¼—Õ"¼ã]æàà(‡÷ÀérÛ¦KÖ@쌖Ÿ›HN'7&ÓWwÌþb¼7橇Äj¥A¦¢oÿ0Y÷¦ ÌF˜¢˜ð7óê¡YÁß`9·]â¼á“µÖ6f<þ`­Ñ0L“%° –a4 r‰€˶™Rk’A»”»BÏÒÝ]Æô ±P3Ù>Hc­Å›€¢ê“–Å[âã8[uÆól[kOÍD¶zÔ²‰£#è6RQ}4KÄCèþ;Öï8£bíh69^}©ÜÓÙÄvŸ€éŒ,»-raþbl`Ç]—Õ®V[dí`–]c’†¸R”R?oÍ<¸:e673ÐD´ˆOXU2ANï Û½ùüõ³çz[z9+ x™¦þºÚs3 zG‹Üylyè†ßú­ðL.°“¶6Ø :šì±ç*æÚ?Øž »ß]9y‘36·Ö~%ðù›Ò€IÆvGYžÓ• Ô2LµˆØ1œ|[/)‘·wo–~qÐ{³r¶îÚ_œ-´A„=«+%©Ôd…²†`‚t4.T ²/´ÒdXöbQò†âœ¾¤Y ÖlO“(¼Qâ)Ì+ËŒ­…ÜXÑ®AƒÉ–9/cÊ~uŽ6ëþˆ¬èG£f›ÏÉH±ZLx ´é&o%MØÈÎéCG÷ìÍ(ž†àctÕo6bõÅfWÇ-Ô+zÊË‹ÀàUG!Û4´F ~P% HK·-µ4 `lš`óÐÒIÌ÷Aþ,Ñ‘ÆÚÖÏT}×ħVâyVôF[´¥/©Ý¹SÌJ<^.0öüßuMýÍ3iµdœÛõ¾°ÔygÓ O«ðwƒrãúZ™Ã3ä¶ ËùdUy|u¯°¿ÁÊ·xRïßn¼V§Ý[SLnå<‹ÔŠÁ~ªr¢‘ÜøFá’„žˆ’1ìé%O{âœðГ ðocf\jTä¼Ôµ½ÓÔþeéÿùüv:v[ÿüð9Ôk!š÷wD/“‰@âos×ÞL{¢âOLx»7‹ï´‘Oò:Å›sŠ·a¿ÓíG$ ¤ôç_÷.aF`´W ©Ë;–ÖZ³%áö~¹,&HÔ»É31)ûBâ,‚5—ŒpEå˜`7GØ Ö(½la”'›™Æ‚¡Ù$%ˆ.·‹ªaEÕE0 Ó&„{!´©Îz ƒ4^É7íi^µFF½ó§rW~(úÊC6I®|Ÿ<ÜúÙÀ¯Å‡þqäÚ¿h3-SÎ2ܲ;6ÙãžW&3_ýûПܬtu¹+õÈKbÐmì,¶­ËÕ¶ä_Ÿ‹-ÂÙ|¨3RŒºŒé´Øž¼d´ %°F“GÄ»¾#¿“8_‡wÇÔù¡+Í·î#0ÚåM™'çÚdƒkñå:üÊc¨“¼¥¿¸!Ž7·I+2þî…Ðξ’Àê»»ç›i¹ªÐ??ÝMûÜÏŒ^Da®Arœ‹ÖÜ´¢@Ç&ãààààðn™Ï Tüm” „Äêe‘Ò¯fú?Ú}l0¼ðR®+Cˆ•‹v^°[¦PÂËZŒ1Þ®ÖépŽo P¦^U@²é¹ÔÆxHƒ×72×Ä,•`Ó%nuˉm„­UW%S·Mø©”„ßÂ}Ir‡–4§·ù/ZáøêàUGF_)m › Bݪ,¨>òÜ´oÚ%?ð÷ºR'ÀÓjÎdƒ€_-µ¬erEz¹wí©®ëœ+’ûz Îím4 ÉðÝß@R {~‰,TQ¦h1Åæ-ÍdvV)Õå0·!`}E¸Å¨j^ñ¬dcóÐÚ20¿uÓKîöĪÕH6„jåÑÚ‘™HOÜL“af2-u%ß¼ -Ä¿,¹À“.È·Ñs„/Vš¶F$‘PÒª(©˜=Ï`C‡ó,õ¼êm•ýÖÎè’)nN4ÙÙ(””ÇãŒÊm—FrŠÍ-¯d‡ëj§€tiA¢`+ñ^ËLu>}.I6¹× Í×F–‚|þùYîÃ×^$ïs½‚“`}ª"À“Ï÷ìÆÅ*t´àŽ$é¨Td:<¥ÅúÌòG4nc»ŠÛ4*æH¯Ÿ.‡˜êos=Þ9pQ*'°pÖüƒ¢ŸCÉÀ´Òý¬?ÕÊî¾ÂµEßÉ—'vuý:äS{åµb8gª­cnGûj~°Ž” ›3Ì·.~øZ5ré¢@5ì›$Ú]Xï×NÑXíê÷dÒè•ÓL2ñ.H ²%¡®±U…-ëì°ê­*Û=ì6+±%°®á*_y¹cOhhùy_¶³/²ÿV” &$Hd»|~ÆÒ&éPqqµ˜mf”.É z\³ÀIK4Q¬3¡iq°Y§ñê½39þÓ£©›omˆ~W£äË¢Û|ÓÒnŒ!A ûBZó&Àxsð…Ç^¢>÷ úÈ>ôÅOäÊLNuM,¸%û³—ƒÚµlÒÁ nÚ´›bÍ2\¸$£µó¶Òxîlt„½”MnÂ|_–¨;Y˜Öp”ŒƒƒƒƒÃ» W@#i, ïHÉÀ¦Ð™ )Ö$.×óµã‘ž!ÏøJ“jó'Õ.1—±gsL’À˜5ëÃ̦&+Öx·2P^Ð@’Æ h!çb8«ân7@757 Íy¢9¦`MËzÝ6Lƒv Ö[%´]aÌJ±S%pé$ÛJ•-[­Š:ɰHeAõ%—W¦ªÚœls³Zø`£]ï5Oh’Õh„˜êº5YÅ[6™ëspü 9ТE‚±_ÍgˆTÜ"RÉFxûfü½GÎý(‹AA(GõÆ[)¿7qW—sä|†(V ?£û¢â†6uB—fh±-.$€È™ý íà‰àžÍEÐ)æùÃLOÇ9Éåsµ,¦ç#w=q¶ÿæÎ‘óçótn59,˜‚%r‹¡ÿÜŠ<ê×<.û…×ÙŽ&{¨u¯/)ç¬Çkmyä ç}PÉl$Ò<¿¬a~ùµó€žJ}õ>ëçÞìr…X±2Œ è‰ ‚$ú›-ŸËjJ}|eìl°·‰Õ‹Õ?PÏ­Ê­é%Ïm½«¾p†… KØì¶O–<ˆÐxµL ¨Î€I°³\¯‡lŽX ÀÊV÷äS˶ûüs@ÚšOM›41I÷úRÏweŽÒPgcÝÓz<"ªMs¯`Ñ]ñ61ŠÔÔ7dBÕÕ÷Rké;s®6û å«-ÅE”’TjrÑ}xR¼ëŠüÈ4{褘7hÓ4À\þí!»5‰£Ýžœ¸‰Ò$¯Yœ®S·jâ‹uíµúÖi—‡œ©F~6uY›ØØš_±È• †Çeâ>Êñ.spp”ŒƒƒƒƒÃ»¢Þ€{v¿S<¥ÞÞ_Ø`J’§VZ¶SeÓÏ#õh£KÂÌ&!g2Çœ…½P?K´wë"®Å †Rá¯QÖ¬É6ã"”â9–"s¾Æ§‚~;;=Ç÷h†³.´R–Ù ô·~x=o·Äéº,GxÛKÁŒ6P €jú¬„Äe:¼Vç„#ŽP| &³@µøç§b‹ua‰ñL+}~Robê1¶êcµÅÄGšF —Çß}ÔúÆ—.e¾°IOm4²ËÆwƒo| DFÒëVÄÕ<×±–’yÜÑbv´€brKÍ}Ÿn;ºœ§Ê3™'_cÎÌ—]‰º;‰ã#\2jní©|ÿÙðÖ^JäL†ÂSerÆäïÞ±äSsB±`$]XÇk©±àH¾çÆDf%9¤ ÞÍq¥ÐÚÔxó¤;RF,l=ù¢ðÏyWŽôEñ‚Á!šH5ÈäFXšaƒ!·5µP~ø(Ý$Góh-.'[UGçÕD~u•²Eæ›û½;{›{Î]}®À{Û «¢?ø¼÷òþU·«…"ïM ¸"ŠÔ‘çxU²VDð…ÏZžÕÜ k%0)[kQÆÏR}4‰ýú"ð¤rctx¦ùñØÐÇz¯t  ”oXþDy¹ÁD3ñ­›™ÆÈ¬¸£ö¼ìKzÿšÜu—ô}÷žk™g‹6IÀñatèX«¯¤Üõb8I¸ÏÿF¥åßÿÀó™kðçoZ±_ÿÓ_$úšäJì ÓÌ»ÁÌ[DÑ—å®+¯"§µÖvvve)nÚÖ™f÷nk „æÛ½¹™zôŸf†¶ûKíîìš5æbUXÞ8JÆÁÁÁÁá]0¿„R‰·)‘¾žR·yÓOúz#ƒâÔáZ‡eC/_ègà¥êFEtEíF…ð ZÇÖF‘Œðÿ±÷Þqv\õý÷÷L/·÷»}÷nÑ6I«j[–d¹7ÀM`ÀƒJB Ižîý½.ì6° ¥x†‹ÁaÁÀ•¡E×c?ËYšþ'ŸÁyn〆ÞQØ}€3”Ò›§à¿<ÐV‚Xþ»|#–Bá2Ýà3+žl,!orÊ2¸c59·ß:þîÇ ;]¨Í±±9æÈ00ù¥·¸p‹;DQ‰ƒ,¨èü¹ƒÿ{@èòb³ƒ”ë)É`ÎËþß®~{iðQuYFbFâ7œùB_È ƒ»ؽ¦åȨháRl0wˆqùÍbJÎ¥žyÕq]“vߥï<él®•yö}^AÂÿýe÷ç¯-Í‘[[VŽÇKNË„¶Ê‚3f|ãI¦£À)rN ™£QG5DÊ…vcÈåi˜Écµï<6~׎OZrL8«·Çh´d™a ¹Î•0uëÇç7lZr®ókéù×Çù­G±Ý^­öÏz›A×à”Rb®%úR…«wÂñ#ÊÝóOÄæý·[»ãÇ !ÓêÙ9w“œŒó¸¥”ß=ž5¾!óý3Õ¢Lëu=ü®·!i)kÚ‰æ¾×»ÉÛÂ^´vDñb· Ÿ ¯Û À’r›oªÞµ˜R<rÕ%‚Ni^­8Í+ X²±ùdz±±±±ù<ù¦ }›Ì•ì|—'Ÿ ÇÞHÄ¢x±Ñ]\’1#¥Ú<ídA‹@²Íº¸º‹Eš,pjÑ”0Ž× NŒ„¬©kBjÞÁ`¢£šÖ3%¦Z%]Ë}qSÁL­„\±Añø%&±¦:ÝêSE M×$æR9OÇèˆIÃQeƒZõ!Ÿu›ãsŽb†Æ©ó#Ä„æÁ¤â¯¼vó¶kjÊu'7¢Îb½îsçJfèÝlU~K×l÷Ês–‡k`’«ZF9Ÿ5GÊI‘ AØiØ-ÞwS黿—ûÇóoNr' khÑØ¿yÜóSŦ=>=½H×|¢cø×cádÁy¦Ø¼Ï[Îk\°A}åÅöVì—ýüwÏ6€eÝá?ÓÈNZ8eø,Š—æÇÒó©g^uÀ}7– â5.½¯Kyé”ûó×–šj¤ùÜšÍÉhÁ¹/œaXk¸Tmòÿëñ¦#¹vóÚsWg+a*jMëº&)rÁÕ~÷üÔ†— @n@s}¥p ÊÞ8RîÏl ¤~v.–Ì;¢zªJ™wo.2\;9bY('GëxñT©ËȉÿÒÓ¸+2ž ÕžÕ÷ûêè¼ó_¿bÜw» XÉú.JÉο$¾ãÙsUí™?¸5uì<™H•o$ìS®®TÞre®K²Ì³F*mì Üä¿èÀäGc?ß”Í^S¹>ã‚"K€“S-·ºf.w¡0¾P‹¥ŽåUÄ,쬌¶kh“µˆ)æß^$@#¹š¼Éx.´‰ù|èñþ÷ß“rýg~P•º¨>}óɇº^[ $â±s­qsûÕ‡*êõDdKsþ̃ן|$<«ûxíýüÞÍë+%‹Î˜×H‰žDÑmÖ5¾ô‚‚cÁªíééÿ5~Í÷'¯yi±ã¥DÇ…B5 hÇf½¸2§:ßwIml> ØÞe66666WŠÓaÅS ˆèÊÅL_²æåÅŠ[£ñªÄpSµ>k6ùðü&|¤Ûh«L=WOM^ÚË"HÝ*oñIKÅ^UK¤&¨Œ‡O .73…,Î{ÜV&A4˜%ù¸Ì2T`Œ¼!KY‚¼´ ‰£ÛÓæGÓïŸKZÅÈ1¬Ö@õŽ´Øî8zaÇ™ØÎŠ Ü»+q¼ßjõ »ßÙ÷?“]·G¦XB®ãŠcÅðt_ÿýKÍç=?>ZÑ*íØ”[Ž)–Àë#Ÿ|jþÛ×|Z÷{ X‚Ð%EÆEG³ÛŸ¾˜v–KT†ù©ÙhG =”>1¾£kš£MX•ã ì“çd£5¬vµçºû™G^à¿EO5þrÌí6ÛÛù IcÅø°²¨RÁ5§ç)Ž^S>6M¾ø6u`¿÷±‹AVûRsKÊÌÕÄÿ<Ï|ü+›œÒ"Ÿ\Ê:ÿõãì×ïVb5+Sñ»Œb Bþ÷Zç§ßtÜ·’«z>Ï¥çÕÅhW7»ÁbÛBÚ¹89>WmÚ³ï5:Â×&ŒRŽõE“T´€Ë¥Äª@=©ëðj²ã¦ÀE dp`z­+‘f˜??¼ãêXakS9év£0"0]lÿ"WÕìüéOó65ýó—¤XaŽT¥ô »=ázðê" D©‘‹ŽR&íŽ:Ôl'¹¥só£‡=¿Q/)TNeXyj®-â(­Rs2…0TɪŽ<³@¹iÕE+nÞü„wŽ'•ãÈ…i™¤¡©õMÅ­-¥´ì9;Yé ŒÇù`Ö 3ªw]¶ ›!¶’±±±±±¹RŠ%ýè9ò޽Öê­ê†¤Jî'났ö¥–Ž”4Ïbz 9:Œb)=)2 ¹ŸÜ¸3NJÙ /&Hw@)À`ä&\Ê/ •eŒÌ&_œ‰bݨ‡ôè* ?¡úaµ'è Î3(s!eMò®uH3] ›&\È Ýòâr5_4i¬½røß‚'³Ltž«P,¦z{ -’·zμ“l9à›[J0µÙ7ýƒÑ®9ÜË3…-¾dc”™æ}É×V%¶7È!¿1=g>wdñþ(\£³<.«°A˜= MOø\á–e{GÊ ¡lµ» ¯ û7 _ÖK )ªº™9‘tµÉ×y‡^¿ñ¸·«M¡An€¹^½‘å 5,×MÚ"Ù"ŸîËsÞ³3´Æµllšü÷ÃŽ®í•gÐM“G4D³mõF¾ÿPß«T›"^ „V…×DÔP­4T+‚„ÎÏ»ãÊ`!ŠáZ÷èùBu‹ãÒ~66.l%cccccs¥8(C¶wXûÛ©-µåȘ)"†!«Iì%-X¸m¯úGÿÅÜÐnþþ'79ròV:wÙP™“cÞ¶ÎçrM›¨Ôµž1•$l0é^݆tr×V¦~=èùô&€‘¸;æÒÃ.ý¦öôLŠÍ$¼5Cå „Y€ÐÚ ²€¦¨wj›‚‚‡Ó¢>qµJ¤<äaú㮄swãÜ*µ%¥žá9Vûß›ÎNpÕ2F~óyÿ^7»%j&òÜ ©_‹_}sÓÉÑú=«çI¹©Ê‰>o17꿦H¹²|UDŽÏDš†ßÆ;cFNFa¿ ŽD– y×ù\JW›ùæ)¸ïžµªCÄ!\å5 •ÅåœJ¿ß66¿ùØJÆÆÆÆÆæƒ€–"˜Í®MˆÇ^]Ý"om̈ 5ºà;=ëÙU“ÿhõȺN’ÎèÍ 2°xºD…õ‰vX…€6_tÔй5YËLœ²Äüê¾¥ˆY¼Ú¯ ’ÚF^J–E䦅`+¥ OÈBÖ®ñEª”|²’.¼n7{ÒNŽœM ‚ŽLw7Ô¤³¥€œ–®¹” ԊƜĆbFÉvÃ@-øÅ_§_J6›SÿÉ Na:¬Ds”2ntÔßsy\ Çp}áV­sOôБù‡?·^ÌðœOoh»°À4å\2 ªñl‘ó€›VÆSÜæ€Æhî±£×\k9¸!ƒ áß|Þÿ—¿eæSêô"uë¹c ÷k ]mjs=âZ”Éék*¤>sS#­²ÉɧÏz¼) £g³/Ñ3êyôcr¿ÿI @Åb’(¼ˆüõÆœÏ*çsDtøM¢5bÅSï™dÙÚ@ÉäMÏ@1êhãk‰Ôú­•u`ÍëšµDšX.**!ÚP[åä\S§òñnïŸÜÿywÔÉéû;ËÞƒw_‚L 2yNo:Óoìõ$±¡âóFdDFÃ)B˜·Á¥¶Eäê€ìuÃöN2±Pá-=;ÝÙhª­þ$|dšýŸcüïlÏ5RÙ?ÜŸ§¢´‹°Rsä×çÅdšy«Ÿ¾kK.Öª&Šu¦"›kWÜ‹œGt×r¥Y§”+²ž h‡ƒÚ=[…‹ÓÎË@¿¶=÷ìIÿ—o[#}7$‚Wÿ×Ü· …‚âyúºzõt®òê`š%d¡¤eŸ¹Ò÷ÖÆæ7[ÉØØØØØ|¶ôÕ¶6ç›j„ÇÞ¬šÌ8µ»®ðÛ{/í1]ˆür±^Ȧ}®Ô;ÐøùúÁÓ¥\ÊÙ,¬GuD©Òür{“t eb™-a§RZžT×§~Ð ¤+D)!»«øä€©kÅÅépE¥#R¥RrKtEAÊî* xÂдbÑ¥–‚úнuÑqº5äJ³Õfƒ/•®§w¨o3%aÆßYdÜ ˆsÈ \áÕ¹†O6ëäþû×Ôoÿåw5ËHjΟýl¾»×ìê¼¢ ¢<«Ï§ ]×4Ëð3ÄÒD=¥ãåV<£…y¥”#hd/öýÙ]™Ê KÖµt‰ìj)9Þ\®ªYшòÐléGáK_“zãìöJaO ýé}6I=qåïº=Mn©Îþþ'˦ƒ¼é9e´µsÛa¥æ ¢=GîÝjÜw«Ö݇9¸zƒJ äØY˜mllll®žƒxfÅ’ ÈÄȬ{¼Húx 0äâÖ§5æå©Ž·“û˜wrñ¹©ÊÏ7-Ù(SñÈó%o££8…(hˆ*-ª´Fñ² K“–=Å“Q½EÊ_&ͺQ> µqT³ˆ×¤Èê,]E*¹¤§E'FŠ6:TÇ¢–˜,‰79¥³`å“ñü,'Æ×û³] ášquxT¥¶œ-éÌÙ¢Ÿ©1þaâžI¦³:u¡65à”ó‚`U`KhvpRþêÿDÇãô?}¾ÐÕ¦òœUÂ]²xó6òØS×X*xúç6´lX–¡%RXß`– GBxZµŒÐ’ÌÄÁzöhB>…%1÷vŸó4….Ë´¯L› Ôø®-Ú—¿T™OŠ#CùS3UÙ¼ÕâW †¢=¸+eJâß’@6ÙÓÒæµq7Þ_Vâ‹)ôGß#ï¿Eëj7 ¹ÞHç ûâe X¨ˆ™G5§ÑV°èÓz&nôN.§(XMEH-lq'¦–J&ãÂó-||¼@TE {4±è]×7¢Ïù½0­…¤@µ;>Ê3zÈ+5T÷oIîÛV8xûݯ¡¿»7þ§·/Þº5˜ªæ³ò?|+¨Ì÷~gá–Ýê¡SØß}™<°Eš#*@°yF$È¿¸/·µ¥äP å„X^y`פ›U;^Õ3ê[ºz‰ñEòJšÖxòmßœŠX9žÕÿø†Ü³'ý‚Lܲ=ybÔ)È%ÂÇi ˆ ˆÐÝk=ý+ó‹«ýèIãÜEÓ˜ž5 »G‡+`r‚(cóaÇ¶ÉØØØØØ\1л5ùzF<ñ|fgñ¯ï˜äm‡Bý¬§i—ÊtV–ÝfR‚ûÑÑM·UÌßœN¤ñws-V:z,˜(‘€ˆÀ÷ïC ¨%9k]ÕQûÍW©Z§Žì®*84ÚˆÈϨ8OU ä2Ò[B>ZT];+Ó¢´†Y”œ)9«%I6µ"âÆã1 ÎÏ‹qËrPåã5“ÄXü×—¿^ä9ÃpF…Œ83¨Òo{ñ×ßJ[ºö&†Ý=ÙQ§Í`¡Æ€q¬-ɘQ©®[©ÜÎÍ5¬M–=6…ÃÿæA-x·’=·í7^|«ŒÀòÁåSu{*‡™ n‚OÏ\kž€ñ9ª6NÁsæB¦:”&ÿæ§\kÈøý?ô&ß™€›öû sß}XDtú<ÖsA¹óeŽëÂÔâßV%ƒ}§Ð„að×9[Êß}ëÁºG_7Ožƒý»Ì'^DÝW¾£*¤¢5ÍZD»ôòÊ ñ¯zþì£)¸ ÏâT.\+ÑÁYåÍŒÁFŠ‚ha8vÏ.O2³ÀQ`̱ŒóÙ7óyüÞÂß•1h*ÉRšªR|y¶Œö™ #ÓÜ£/û®Ù$8cõ Fž×²‡Þ"ï¿YU˜@™«õä§|NU/ýäx•¶8Ó7]˜5+Âqi{·¢ƒ—¯‘:6Mu6Xiš2EÀ0`ðòã¨âò‹¢ËV26flï2›+E‰á÷)¯^].ì#×;å|Z“Dà9k×co—ù¯ÏZ¥é…oåk_N¶Ç˜äµî ëdÌ3/¢±iôðëeÌ¡ì݇€‰Ó%g]ÖÕ„Ô–zG^8#ϯDÆ¿tÚû¹kŠ!ŸòžËo,‹…ÝZ6m¸fñÛ¯û®mË@{pÚO©KKzSûÜéY¨P«{úQÑéÂæ³|ºi»kf0Á4dé¨73€o$cIóþE„6wà+J¹˜c÷¿} •úWîÍ!œ¬®L•DšŠ3€a€­HPžÑ·6¼%36‹ÿýÏ+ÒV˜Äô‡¶-„¦ ©‹ÄÅ)¾†,žKR³“éÖ`±ª!ô/±d¤~Û>ñ„{åõ[‘:|ŠmkÔMÕªâÕråBl¡'ýþ¯±Ío0¶’±±±±±¹"z˜§^ç,]ÿ½»“—Ûƒ^˜­xmÊý‘êyÚAüz¾S2˜dŽ?5áúX×øÎNùâ䎖®ê…”Ëã-¥ÂŒ;ˆUÛÍQéÕÓ šL¤ 0. «X{ÄÍ`EOåDÀ”59Ë}¸Ú7£)¥\iaZLL#S¥})Ð*°*bÖ”ÃÃFccÅ…KÏ.dªåS¢Æ,îS‘:¯ðÛ{]x† 2󾆱škYFþùH[fDÔ˜88«ìŸÖÕj¦‹tE›\ñÅŠÕ@¡´~S+ˆxÄ¿r0%a¬‡£T‰gõù Ö=ÀüÙSá™9Táþò`þ{_-ýéo ²$Ý{CáwïXtàÓ;nWö5ècª;VÍ™‰bˆDæ×Ç~Ü»å'}[OÌÆ.d›JÈC±âÞ,€»"g*ÙùµÓ€g^D~Üwû{¥)kî ßpÿ¦Û@˜j wÑ)ÍeåWÏš}CåÇ”ÈÐ y|kóû„*ŪŒéy\²hÝ€’A?yÖsW‡°œ¼x_ÕØùl`*æhuwuþìdduß b§ðcñŸëø¼ tE¡7׿´‚hu÷OüJÿÛƒ–N&oÝ•QÓùºy¬ŸûÇÏå»Z%ˆ'˜°oEÎñ «8 lý&ŠgÛö{:•£ƒ•ÅìŒN}éñ=‹@R§=>ý«[Sv¶äAÎç—q~Ê ïÉðõY!¿>'Fuâ+wÁ‘ò¼L¦DÏ{`cóŒ­dlllll®ËÚ4iƒßQ¡^8ßøÎœ÷v÷uVÌ}´º¯Š+¼’îxd áî­sÀ³fGþÆé ¾ä+¥œ.\®T,4±…Õ;ÎæéåÀ]Ó)i¤Ã)¬ÄEК¤­ª•i°>Dqe~¬0-dèš`ÑaiºÕ¿(T—oBW|ì¸ÈpŒhÉ8Z’æš­°Ëëwz|jrÚR6®N¿l‘4æd¼é¹±ÖZ°Õ[r1kªª$3ïo˜mÙb Òæñ×·.œ§¬ò^<2ç³Äm×c‡Þ¸l­•wA­¬yÉÀuMké‘iv(‰=ò¢ëíX¦$äÝ´ò@a¨ ¸â“ÅM{9Z½eGêŸ>…Ÿ?—’³÷l™YÌäþ¿Ýg¶ ÞÛË‘òÝõýo-VJÓÎdd*YX‘ .Õ1 òo³WszñªîG/?‘4ô¤Žâ£a„cš,ð¬ñw_Ôû'H“²–B›¼„z®@ó««… ¢a€6øÀ³¦‹ÓNL°Eó˜åÿã³Å‡Ëèê°*«ÑœH¶Wfy ãíæÍó§f<~·õöëæ6¨Œ¹D߬5¾Àïí’@–L‚FArEr¤Üî(-–ÞG ÙØüc+›+¢"¤¦ðÁ.ˆë;’yÇ7ßh®ó–ÚÝÇQ °„\EÏ%û“­t‘ -5ÛÙ)_œ"7¼TÈ“˜…m*¶<þVãÓ³ä»[ÿ¤ÆòfI%xR]Ùe[XFyo­“NÉU…i^Z` a‘©Ó5Ý007¡ÈR:«RuUž+]1ƒ§Çù̇KŒÄÓ¨ÑÀ•Q–eÓ³ãúeÒ¤eON§ln0_û˹v­|zSwGx檚…#ÓÈåÁµ*­”J2™ÆªÎ|–OζŽ,ŽÏZQŸµ¢:›àÈ[e+GeÄ›^¹¢HZ“2îÌdÇÈ·ØŸzm‡Ž‘Ôµ¡Ds½zYR–ªé&¸¦ú‹ÕÍàá¶Zá³5=SREÅŽR8RÖó‰Édëu›69J>uÛfzïvøÑÓ°l,J¤¬?ü?æ7~º:6X ‚ ÝÁˆ+\ƒe,ŒZÉ LÌÜ~{âWV÷ExâuÿìþëñÛo G'Íï<ëi¯Rßϯ¬ÌÀÓ.+wúLñáë3ëβ¤¼'<÷ÜDG«›+²'&ÖhQ޵jêé`zÂM.rÉñu}—L1÷ßItuâª#ªcÂáp¸&“Ò^§Ÿ}Ý 3 ßGZÖ¨Y’@*"H¤©øúÚ”‚ϼˆ:†½u$5§Š®Ð“ßú >6‰@3a0å {Xàhõ]“ ð/nlL$-Üá„B>u2¬vhnJ]×fGxvª`+›/¶’±±±±±¹"xÎ  Xãþt~"ô\OôkWMn®Yã…õÒ)ïŽÊÜWBpLÙ¡X ÏšQ¯96³AmrM×Ó9YY ´Aa,¢@Ô˜Yn£Nê¢Jñ”²Z`XK…Û ŒN»YÜ2’à‘çD+éøN½'-ùJ²8!„.½42T&?íÏ xÌt¥×ÚTÉ.¨îcÃï•çB±:À«¯¤;ÀÇëζùËâ#è,Y-Ur/%6XÝ%è*0ó{Öíkn£TaS߯"‹#û¶«ÝÃÔ®.,•…Dò²–„Àï6@‰£ç¾œxœÒþášc×v(?éµúÓ`YŸôò×}ÊT–” 3Û+zPáÄ’éÂ7n^D†Ù7½2·±)ôí—øÖ­.B¹©²·Å••«»:ࡃp®ÏêîµÆ&­'YûEZ‘A¸ß㪭©UTºž›SsIK/oµyÿÿKxø³ ÜãÆxmïrö¦Ûª/连µ®o32 a>EûäÒr’±ÕÔº·øR'ãMaW 0HðnÚhè ë•7Lf5ÞÏçËöœDÒüÖ#j.o=ü9*ÄTÒU`Âb"»””ÏŠü∫QÿòÅ#ƒðÝçƒ 9GU`ŵŒCÅY„¯ó.뾈¾þ-«±þ-Q„®{ÂØnÎõ£oýO¤ÐTžHˆ^¿Ç­6ú“$Kž˜çzF×ç’€¢„ËÙÕ$À\Þé#”¸êô­-áÊ‘rJÞøë€Í‡[ÉØØØØØ\¿¿A)’Fðæê9ÜÀÓKÇ S ËS”ª¸­lÚmΩaÅW$ƒ^3” s¾O§Ä¤¨Zá@¶uPjJKk‚‹™PëR¤«’)|,t¦Å=µnœ«ªçÕ¦³à\[ê£`y‚íþá9õT&6]½u¼éF¾0¿kèW{ÑŒ ‘Û:Л§-XªØsé>aý‹Î¯?{ìHÄÍë¿wçüÖæ|ùNk"ë¿Æ¿˜J ûv™ª…Sï&Kàõ|É¢\ñÉbË^p&e)¢¤\U1ùbOøÉ×Êbrl}ûe>v ³’-ì@Íe zi&·ÀƦ¬zÜ|è ¶:$ÄQÀÅÔE}f<>Ÿž,e×Oú™—ÈŠ ö‰}Æ‘ãzïÞÜ`@ϸûþ˜'^ÐÖÒ¹±*³:7vè-j{u¹6 îD^¥'Šá«ë^¨‘ öh¡=€®"/§U*‘&RÛ£ga•)æÀµe¥š`j¹qLWŽ‘ _Ðèdª!¿þwnjÏÌ;Á\ Äâq]Àx·Þõ.Dxæ;ÿú°ÕÕaͰw%`Ü©’\»?sðvóŽ½æ‡±'N£_^àN˲ðêpð–Ú<ãf~rƽ”–zÍc'X‚å–$Üp–÷;µ¬I/'.[‚£?©¤Jî+YO›ßåH n•bÆšö¥6ïÚæØ;ûL›€Õ¡ÿKˆ2u´¯â?OVD=æ7>:ýåÛf·6–?É1®(r7û'_9U B°Ð»&J-©@°©¸¨€ VJ Vµ•Hé\´F0ƒcShl}ûe®é@ç§jÚ|å‡È²TÒ²xü> ZH”'æ¡¡Ñ‹j<$XÖÈL2+iúúr¨‚„žy™ö»­ûn3vua½#æÀ"ÁsÐ3ì€Wi{wâ?úÙz/© ÑÜÁ'ßÄçqG¥ï²íYRÞW9z>@8âµGÆ6ïâÇèI–”71…XæÊp¤˜9ÿô²)f©ï4ÓÊ«YZ/BC˜+øô¯Šm±òµbµÆžp>K¾Üíì}WÐb`8†/å.ë¾_ÿˆÕÂß±–zÏWÑ ŽB$f9@‰ÕYÝkì(œˆÇN Þ`øÂL´5$ïm™>¸)å »Ÿu&2kÌ•ç§ý_¹®üªO—ˆäY¸l™ZWi(é¿’õ´±ùÍÃV266666W Ï€ßmýü<7>O|fÿ\C4¿®M"…½u¿÷†õ™©(7.(vÝX1knàå%ánFÒ’^PѬVå¶$?¬ÿÒ_ÂxÚRTÊí(®È¤"^+ã¼—¨üš‡)3zn”¬­òý­Þ™þfŠˆ­™2ëA×Ѭ¥½rC˜ŠW™­cæTMH)†+z˜®sÙH Ÿ Tµšß ›Ù2»*âÞÆÊuug[ ¹KTòʼnºòí8|Ýõ×½™>Ðóëü/Äž4ÏXV"KŸ ÿàXóã'k=œöéÍÉú È¯Í%Ð3溧c‡çœeêûv¨ˆ$å<P¦ ªÎÁ7 uP(CÂt}ÁrE|ÒÞ륳žo¿Ì]s˦û«ü̇¥J¶TÊßøÓyüKÃGú¥´¹¤ £§$K«©âÆ.‚„þø|×&ãÀÕ:ðºã¾-lŒMažpÞ²+]›‰½;ñ#Ç/æ¾Ì¬D$í¯è÷*™²0óê\ƒêt2EÑK–wÿ;#sqËuì¬~z˜:5Þv[çÔ²)2XX3W™€¢D"„t@‡O+!ÿŠ6[(zkébï`úǧ\=£>àH$X4˜•“Èg™cSæ¿~uMѱ®¡JÁ¢L‚Ê!—W€ç ©R&X:.\U*«-¡E謌ßÛ’Z ½Ou-"ÊäÛóœ¥æ`"p¸p ƒÕ‰Ë–ið'‡³ëí966l%cccccs¥ð¬±?¦=ßË~¯8Ÿ¶ÀZoCH¤Ð_=J|üiÃî¤%Ô™Mæ@û—ÂG×ÕM˜*$4fL‹6˜3 ú̺6*¢HMË\Š˲X^Fg ëW*S½TW6A²xVó‡ËÉLqT³ÔÆÔ&*%ø¬´ÿi)NI†ÈbÄÃAtA ð”~a*’Ì;.m¿G)µ$Á·´¼A¹±Ï×4¦†§¥·§ÊjŠgg ±Ó‘;wÞW}ÌþÌu®ô¿­€vM~ẑ-õI@h)èF°Dïî#Ÿ}Ýù¿=¾¢*öo÷¦– º‰Ó†êT‹yÌïŠO7퀰‘Lil¥46CD€c4#¿8iú®º¡ùãug×ɨu,ö•‚ï®u]Séë÷äg'ÍÑ"=’'ròeÃiâOþÛõ×H±Ú10³@F½Æ¼êk¤S§ÏHc“47®¤2{ú†J¦"+E™%ä÷h&iÌP!ˆ0¨$ ;Ò[õKÇ-M®õ'•\ÞŠÜßÄ%'–»ÁÓoÕ‡õxùß! ]Ìܽ¢¯\NÇh‚½eséwnQ•dýç+uN.9•É ~ô ˆÕ¢ûîÀVÛßÆã®»7—g«Z˜dQ8C³D9£KÊ$CuuXà G0D ÎÝA!H]UgÍSž7Þ)¿WgÆ‚j6 !˜Íñ4ƒeMzuâ²e8J Òj²èºô”Ío<¶’±±±±±ùÄ¢Z“Ïhª÷´Jïô¯Iš$ˆð—?´þæA-x¯z#„©Ð‰ñžqÎ · bE?”0'§ iøM_ƒy‘ÒŨ–XÝWÁ)Í"Mq¹(Àä”*Íáa„¡­q¼ñ«еIäÌ|@ϖذ¤|c0ŽgJÓF°`y"V¶ÊJN©žEm3r¦<í­'Ôþˆ9]Y˜¬e„ê ±®})Ýôã“ãñ ¶) §Ï&ª–ÌkѼqò©7U$_Ÿs¥7𬱧UîIÊ»ÿÓøêè§óÈãíOìŒLr´ ‚DŒÇɱYâ™_»ù¥ãͳ4¤ÌàŸÜ0wómú¬¹®~xåÚš `e‚®/¹–ùµ,ÒT_avŽªS¹TæLšïˆÑÊↈ%d¡xUy“9õ¥ý³,cžÎø_8GLl\½q‰±ú©×ù¿ú”°”z™‹Sdc#w] fŠ…ÞQ8×k~ëõô9£±;öŽ16qIu w™Xt&Æó…0¾±0^"%¸¿Û¿¥’-|¬¦?¯Ò…ä‹îî‹ÖŸG4$ùÖ½>Àf5Þ·÷?¦Wo6VYÅåE a¨ç¼ºìZn¯ÿÜöÍ ÖõMÒèhþšÆn2A=ó+STÉý×c]ë×äü”«µfÅÅ1«‘,MŠ@W1esJ»K81Û˜p(ÌìÜW ?z††•õ͵ÜkÉHw? /Ž»Õ\nI# %Ø6¯ˆ.¿üµžâÂ奵Ío0¶’±±±±±ùT•‘4þè«Á¦)]"W‡)Ÿ>§bŸ ¼0·“gû³™y ÕðÞrJ¬rrfâFx 6žD>04’pêkr ”d.= ƒFgfH5ëâë..MÌÒõ†‰Àg$Çe… Þ˜/ 0׬Ìñ¦0•%k½5Ñ=Ô¢¸«ÜÂTE¡—1ÊtÃ¥àVÏL;ôîgÎ_WŸñwøOh?={ãœ/‘Y3ˆ˜Ìg j9[@¯TYE¬H²-ùÜÄâ¡ÑZUºîúy™jh3»Z¿ÙwÇø´¿¶ûWU#ï¼rØõè«ù,ò;õ}[¥¯|¼pßÍ┽ª¡ôˆðø+~r:¥òŽ\³hJ“BªDºýG%_(,L‚$‚i¤)_"_ÿ¤jï½)t°ud Á%óë½’(Sª‹_uý4Œæ2áG/4,XNžƒ¥º7ëŠÌ,säŒëðiî+ó«]³–Êžò\ÛQxè~rï|>…î¿“¬©B£“V_;ôº~91s®¾v{1Vc¹Jëî2½ñÊC£µ6¶¦YRÞW1ZÐS•í ïÿ9~Csã½½¤ ¢Tl{pü,¼#wš&¸PyÑtŒÎó¾z‡~d_ž?ÉrFõg1ŽVyn;`¨¦äÄ‹ç+“ †1‚Á/Ò‰E>ä]‘^‚Ž4 JÀ±dyÇ…08žòí®š7•mäÛ÷Ô<«7yµöjõAÏ­»²‡Ïº©{ÎÁ“ÇðoÿŒÝ0Ïò:ön)=ñ‚"%¦œGeE”$p (Ò’e‹Óýa|!»“D”R‹ÕùÁÕ3Ž0©I!sNíäBê`ë]übR³ÈáPu”%O£)¨TáHÙK(éQÕ¡ݰ®#NŽH é‹¥$Ÿ WÙyf…à§s@ƒ\¦nâÏßXßÔÁ¥jŸiüγÞîb¼|M0~.S®Å™Öh±’¥€gÍ/ïMŽÎËzÇÓC›¼.ØS%Upé¼€Ïæ¼' ÷ó]¿rw|Ì[ìUÃ.HÜÔ… (S->!¯SsóO«gœ¨\6ÛÍo*¶’±±±±±ùð¬1”Æv¶æ3%bdÖ±g“øòßÒ©®Ü2Û÷èÓ Ôw_ˆ=Læ¸Ëò©±@©ù9Y"¡À6rÆÔÚ¬ì”!½"æ"•Bmvh¹£B0é$•Lm~†æpÜ.‰ÖpfpÁQgh&–«¡` Ê,ªvjÅÏrG–Ù§½E^ŠŸ’À++¢Áh¥!Kêüˆëë0Ž”‚[l%cccccóÁØS»egúÄ(ïrÐ3â€Xºi+æäô;‹Þœróæñ‘àßj¹0[±á8{7—Ž]p꺖ÎΧ˜ºbÍ!5Ð@–wê FM;ÁÐy!á”WvÃÎBg˜¢ÕÅåèÿ%¢™qôiX 坿UlÞÈËíùáêl_ÖíIŠdQ$7Ñ3ob$QSôÈ¢°03)åÖ§~€Y!¾ËdÐbÜÎ }Ìß{CC)º¥FÚÜ%ù#ƒCÚÕ¹ñRø\©²šJÀt1rj¡ù?‡¶üb4à•ò&¢³3¹çÎ KU~k{£¨ï}µôð§ÕX-T¶„¨4›¨i}­öS¢@7{‚8¾pOW¹–ÎØ ñ£ßPIf1²9<{Tœ%e(¥°Ì‚ÛÈ…Å´xäuÏ+Sžkïèødýèêø~J—?æ9}þ¸Y4Çü]ýÁ]ó\ùI±¸ì!ÕÃãîH`es¿äcvìlÙÇL‰?{&‹ª×mßxY™x¾Ïõ˜=Ãîža×ø,7>Ë&2àô¶Núx7Þ} k3ñå{ˆ\^?x'öÐÇ1 =ù =œÃƒ¹©DÊʺ;ê©Äª=|2Ç}ã•Ø]sÛªgºûé?þÝ­<üi5Vk@{`ºÓ#,êôÿeï½£ì*Ï{ÿçݽœ^çœ3½÷Ѩw!$À€MÇØÄàØNLœåäÞüRoû—•ä&qîµs“8 .`Ç€)¦IõiFšMo§÷¾ûûûc†QaÀÆkýþ¸xhiÎÙçÝïy÷Öš÷»Ÿçù>óY4{Ê…*ÝÛ„Ï_¶¼Dßð`êµ5s3ˆµAi>!1AKý;_Vp©š6‘äfs>©À7þ€ºï£”Ë#Z¬°g#§´w+<ñ2ù•Oi"§mhMo€tEf†–CßhwUÚ]I7e×+ò:$2¬Ï%/¨nW.ž’·²qYRðêV^&ÙYï¶æå£µá3ã- £8_`?uógöt”‹T9®klм‘³w¬ü]ÓVÑ5°ÉæÄe‘ùžïËèÒ&ærÂ}cËÌ­.ºÆ"Hª<—K¿Ï—=“«Ýç™~ÿáˆj 7Oæãɰ£§Û6” Y#%R³QÅï&ÛäŠV-išRÒ*R¢Tn+†QIùÚ&óú6¼¯'²¼ÏYµY‰Å( p%2^u»Z;NN ì÷œö_x¡ÐПlì9?% v¬æ•D—·’µ3`B!ªe šµÞÇšö±WwÖmi8¸ßv pvm@k9ëÌ/‰ÕDÎÙò,ùéW'½_M^÷uÚ„ä3bå]¹dÜ~:ô†±w—ø·‡|òÑ¸Ï¹Ž«Øùiç‰)a*K!„]–Õã NHŒ1` èÑ£Á]^c,jè¥B:âÜv<‘foh/™¤Ï_B$7ÝéVñ•†9p~ÚubÖö…MË/—æÄ]}Ê¿üÞõÊöÔL§åîc‘`£3pW~|Üù¹‰ÿ}¶k›šåcɦ²Í iðë:Œ<‚P£óÊÇóšxæpz¹êtÈ_yèŠê@ §`c°Goo6,6K9ŸÛBOŒ¶}¢J`äãsM75\oJ¾B¡,y¼¾å°¶»)½˜(ŒU®iÏÊË©×T }651Ÿöv¸ËË#Ë.W(èDÑØí-yë—]¹4¬/Óïs€‰É‡3&cbbbbòÁh (‘$ÍÁÒŽ¶òÓ§|· äŸ>éŸ=hfáJ%´À*»[æîï¼´†2uÏD7O•%ƒ‘×Û¤c£6(ºt®äëe§š Qƒ¯<5/rö„³‡®fê—/Tuî¹Tw=†ál`…»Rë\¿4œst(4,’² Œ*íŠÿ×\±nÊ¿1© ½­Û»œÚØl »ü½É–¡ø5;ËëX.×8(ù½2WS®Àß~WÚUŸã ©_È'‘c>MfÓÚpÚÝÉ>V ªÉPq±^‹}vKú‘û {ñî…(ášËØß)/ÛÊ@]óÛ!ôÌH( ÖRWóâö»èr¡åð÷Å/µÔ½ãöËð‰ºMÞÙ!™ùØe½\µI X’ÿåü­·ömﱌ£Tk¢“—^¨]<©ÒÂxËÁ¨«©ÉŸõ[´‘…šë¾‹%Û×ó [ñþú“ÜÝš¸NÆ”%úü´ûžh>1%Þ2Ph³«{e‡UßОßÐ^¸aSî†Mù{÷gî»1{ßü#÷æþùw²Ÿß—¿¸P½kõ_E‘˜štq޼o«BY÷퀛6³”Å6 ”«äOø¾BЋ¹—Ž«ñÈÅÁîõKhxZº«a,¡³'–[|N 4m6åâB“¾lÙäZ9lʨ ˰(1ˆ@å Õ¿ù]¥B[ M¬¾õ³ìªÕª¤êSr”Û‚³Æ5-”!ûªs"¨"îÈr`d¼ ˆøøÆXAgŽ,økÝIç ôžåþ+¬âãÕw[8˜˜|¸1•Œ‰‰‰‰É#èUf"«[±¶ÚbU+TX¿M_i¸w³þÒ‰ëMZj°Ço ~Äw ðvµç¼Ö—¿ß%ÀH¦>€39PCsÍa¯CË´J³Œ±j‰›¶+Bȉ-9wZ–¬-)×nºšl\I-c”ª=ra±v`íUW6Ü9þì\Ã×Pk2'Öáå-ÆÔòrW}a©=¡0;ÝSo'CÕõŒ˜W8“«½®Bæ:dÌÍ© ³rãëùþí|C|3*yjÕé&)½Â[ Kß~AöÑ¥‡î(ÿî'ʃ=*„ü8•Ò?Ûe¼þ¿û\ù…qñÑŸ á "]¸Î ùDå®Ís ²|¤gNj·º¼ͯÿÀ3{i刲ÕÃEÇéJ«V5‚"—«=ç6ïÿHSá@`”‘«þðåöÓ?À³mÆ»nz[×F¿©{ùô²#Y¸¦Ê"žáKN×ZÑg§ý ¢®KƒvÅȬ"Ñf=ñ³øÚ]K¿}ë2`ì·é»{ò³qþ}–n°ÿã—ÕÑi˜œ#þ$IbØ¿]Nkk¿¾±—½w;ÅýÇ?ô¼9M¶å[·V¹??Øõ~f€§¥ûægK¶ŠÊõ6j¯dš:—~>æVYO\ é­Á‰KVÈB€|õxð³+Q-«œU®°\%5Lêx5_Ì`gew|ìG–q± —Bõl f©ú2[ —ÜÕ$(4·X»©d4ìÿ¨‘— Ö°]ŠóÙUH©Üª¯@hòídÝŽ«O÷é苾å¡Ù–[Š‚kZ›±Ð_:åFK?Öïhk(Œ†ÀSRŸ-y4Üú®É¼G@FEl’ª‹õc¨÷ }ǵ÷RÆýÒbKù„™Ýö0EÁ îðvwØÕúbäèëñWÓõŸ½Û~ïÁ¢È_ tˆ"ŽfŸµ‰²cW£öÑ‚ÇIDóä7¿+e$ɼåTŒÛÕrMõÎá¨w~÷ÍK»îá‹?Ü™WX>:x§säe£ª UÄÍÛô{ŸîZÚ›;Ôvü©†áã‹»? t(ÌõÒB`•m‰sׄeŠU†¨Éwõ‹ÏžªËT˜ß¹-|û è‰1¬h˜9ïãoÕÀ×>¶°¡5-r*¼rÞ¶»7/òZüzUv=¢ß«ç èÐQ&XÃb¹T®à™ !°ÊR’M%+Ã>=lýÍÝ¥¿y0ñȽٖºõã0ï¦ÁßàN$êJ¼¿b}µÑ»–¼éÎŽèÌ9ÔH,”+ø'‡‚@‹Eôïÿƒì# ‹PÊÓyKàÚŠ—²D;ý¬&¯Z“a’€ ¥ÏÝœ[¦//Ê€àí¥–ug’U9‹N0•ªŒ)ÖbáÞí{&y ©¶ÖÂ}WÏMÐS×|ÕðžÆek´ÕdÇßW7š˜|ø0•Œ‰‰‰‰Éã«¶ãœú™}‘±ß’Ÿ>í€[wWyO×2`‘äE±ãb“<Þªô4€Î¹íŒ±VŠ­ :Êúg¬ÝþÜd 7ç‹íÏû>-*SÎùp'Ì”í¾w&²“ i>q9ìXù‘‘«M—[¤ÄDßÇJ¢3_øËúï[äÜ„¥?JydfŠ¨Ç†‘Ì[ Ñ–0tãb¼îÝS=S¨p,ɨ–€$3¶ö9û¦°Ð+Y¶˜ï¯ŽífÎn%‡f‡c~øy®>_÷v5‘þu>k jó`ò#¡ø¢d»\l¸zp‘Çã R`ä[æÏ×4ù䑨·>ˆz›É‡ï‡\¾ù}øÆ±Œy°ÂlÄÖTENS9aiû­™Þ=¶…±ÆWÆ5ÝÐ4@è-ç}_.?·óÕ¿°-Ž¤Ú¶Om¿?^Ûù>WÄo/ÀÜUf\ù*sЋª«ÍO+óì™§E¿{û´4¢ ž~MxüD|ñàì@sJxg’³‹ß¦ûœ’Èi56#‘ýÛkQ€­ºÛŽ_¿DìÙ„þà›ø¶¦\Y¢..P¯¨€ˆ¿û\nCgùº¢_†fGb¶lÍÜÜ¥8ìjO¿=ëËù‡™[”…åo¯ðè“j¼, „œ«Ò"K¹µQ®°”ª Í ­jT´ªÕENûÌþx›åÃÅL‰üáÄ`å]ñ½3Õ–.vN–$CtŠ¥.ŸœR®žDÒâânib x-\ƒïì.msLÉž÷1.[CàTŸ ¼a ‰É‡Sɘ˜˜˜˜|0V6”åê•gí"§ÞÒ— ÝAéÈhÈžYúŇi,[«áËiîÜ<Ùé,ëýn»È¬þn’IvÆ» Ü5õj&͵ã#m¿Õ°ð£úĈ  \*f«RÆ3}.ÚûÑÕùҭǾS±þÖó¹@j¦{î°¥š²íûãS;‚‘³1*x¬ãa;´´¯næ\Ì™*Ù€¦š¢œ.7e Ýן´‘·1Uä`"—nÊŸk,ôqã~}±Å²ä±äËøîņÞÛàAï™j¢ôO4?=îníä¿|GtC{AäõþÆL,IÖœËv\½7v‰4)0òæšÌ¹¤7Q¦ˆ Vÿ»*^B2VïL’¢«ÊY•ѾKß¿Co¨&~Bé¥be~Ž,`àúõM¼)ž¹ø­ËÃùÆšÞ†£'-õê‹?›¸Ëg,CýÎ5œY¤;CTf¥P ‰:ªic}–ÂrÕ–Øäw9Iùèlì‘MEÝ(ÆÛ¢f+y°Ž;ì ïó}®Êñ1çÀú9n&&BL%cbbbbòi *‘ås]³Ûk æçR‚ߪÿôlÍÎöÔko¹nظ¾›Óƒbrl<%úœéT^K0ˆô•N#QQÉ“‰~¦§>Ö<òÆýÙ¡DýŽwÖœ?RñÖ‰—ÏbÝ×øéèà-Pwò]É,îº'4}’Ñ Oq¿7Ð>¿v®š«å y` …õ³â‰Ç¸ær”î­)3 tlÂÓà Àr¥&.K^ç{º3_.6Œ—½ËI9<1§ù,“Ø¿­!÷¥ƒsÓѪu3rÝG¬Jæ¾@q6X*Ú{èEŽ®l«TR‹´·€OǵûŠ¢5¹`1Æ`š.Àq\huÛA׈=$A$K·w_.–…±Û#Ó"öÔ?ÇmÖÞœKs9í‰cµºÉ®zÛ…Ü,ÐD0Œ*:ËÖ…âJH`°a‚ l`ƒpØRKY¿”AP«ÒœÀ)¸Jp›Ú*Kyg^s9½ÒA—ªéHÑ,Œµ¹íðtžU4P5Pìe©@øýÚÆjt»)Æ2fžjrq Ö 0t0tŒ ‡¨bl€¡6ëOCÿöÿèÉœð/'‚_¸56=?Ð5À9³+]ƒ ¥µòœ+ X튊S9xçïF4µÚahmԥ̹7³¶z¨ÛÖ7ëíw.üùo|!&eðÉË–ÂàR4ôQ"§€ X[ô±ÙRè–ºÙë®J²†¶š>‡T|¥Ð%¬Z»m‹ °Ê¦Æ¸]ÔŸ[¨Ij„@±Ù¶²³ZÕu¨š­5T~Áîµ2@ºbû¯Å¶æ>šf‰×²=|êÛØe¥©»z+.žÍtßåŸÏvo¶.G«ö×Â}C£ïuOмzl‘¹{×{½obòaÃT2&&&&&«¨/ůo^!pêÍýÑÇO4ølÊÑKÁ-݉Ç^÷Ýð‹†JªöBîhX|ì°¿«[y–¯`bI·3HˆD\ÛÄ!k!<‰¶Ï´ÝXS Œ¼š õÙO?/s62½¨é†-< ¬pBèø‹˜@ºÃÛ0ô³TÛŽ¬§îÍñš˜F•*UôK…z”pQam9Îc«ýùa¿PA@PÑäW§¬w²¯½t&_»Ïµ~™Œì8šmMJô&i¡¼Ìö2R—+Òâœêr˜¼øq8çª\2Ÿ*³š«>X¬n”XÎ*ÒOÔ7ÐæºY¦J±\+kÙÃèUUÃHST8ëk­™Q£ÌïÝý•Í—ÃaùØY½¯íî’ÙñÙ­Âĸû7"mM'¾„B‚– ÑžÛK6·¥œ±TRb!é+ǰͭn…wH‚G!ø²FVt,UWŒÈ0IdÿóTÛþ†èr–™a^]äCu •Ѷ„=uѵ0  ÌÁKo¶!ŸÀ|Ò‘ž´ßµ7Žã²Â;²¦‹„Ý!³E”Î#â§ç¬ë+ÿrµ§Žüç§Äñ8H¾eàÑ‚ 9¬(@’‡ÎX{jeÀ8lW¬ê6lW•LOû•i‰€©ˆ{.…ïÞž J§ãéSÈÍñ-'’žfªxQªoé¸Ñ›yêdÃoß«ŸÏ#@‚·–€˜ÂxÄë]ÈhŽ@ïÉÉJÚj@2"\¬Â¿SŽ/°Jm¤Õ—þñDÇ«±€[!üW„)— dP­ˆ ËŽB¾^¶ºhùÖ–Ô‘Lð3þãk‡ÕÜãK–û›³Ã¹Ö»¼c.&×@§ÊÞí®©¹‚ÿGSïlèuÜÛDNÛ]'%²Üº}~LL>|˜JÆÄÄÄÄäcôt~¦ã§~zÇÂ×^mÅîªÍwתG.øö $Þg¨Ù¼u£%-rÚŽ¶òø¢åêØÙpÃBIô43åMÞ|¼;ü¢B …ÆÛä9Íd–& ÕÐ\ ¶so”;·Ôýä oI“ÅÀà˜ÿVªj3¹ßÕ{/NÔ(cšÅ4[§™7.vo¸…^)½à<ê#®íülFîÞæ©Sç|û: ò§Ú"U.®L†*åÉBh Ã0P€¢Q»é/Jƒ¦8@·Ø`É7ØB]È ;@ãEE'B$Mr"…0MSBðY0©KÜ.MW”Š,kª œöüXÓR‘®qIþ ˆ¬ò­lßWj1Ä Ö­5’EDí\_mV?9Ûæ·2·sßÞQ®ccbr"×¾GHβj¶âms3ÁéW ±`WÆV“-JÞR)0RÆVJÍ9íAÉê;[K:)U%$—›Ðs ù2Æ7XU; »6fLtÝË' °±=ñ"þèͶB…œóV:uQL—H0 –'&3$L[¸HT€»î²ªðО*ØD^<¬ß¶Ë‰zoÛ[j®ÉÀÿ?p#õäFwÐ@ ¹k=ýµ‘_îÞDÈr¶|ýžðÚ«}îÅ3÷™J°S,í©™yn±;WÛ¨šº»f1*B(bx›ˆ¥…¼—g@¢‚X¤¯–'aÍXuK¶fþúJ!‘ïï¼üraC8ef~êO7Šo-±ìMàîF0y]ä5xöTÝ®ŽŠ×Q^w„±ªO7¸mꊌ™™‡Oì'/ÎQ@êAÑRWúöSÒ—>ê †×ýø»9vAü£ÄVn¤xJºÑy=̪ h¶–Ž66®> —ÖÍ©€PL·ö¹±j›YÇ蹌¹šwt­%S`m£ß}|œ©ks–2›ÃÜs©nØi ÷[—¶ z‚kŒÄÁ@ÔW÷.Ú øRÔóqßÐ5çª èì£]«Z%Àä'ò¡tÕáæs=ÞÅ&{üð\Ö×Y‘Ó¢Ù_à|mbò¡ÁT2&&&&&‘7&’ÄJõü»ßmªÉ~¢—~â’w<âìÊç¦={{×ße¶ØÒ<%€ÈiÝAùìe×¾D2où§·¾ºkÞʵìvÌ€Âpwí’ÐÀÔïSߎ֕ßâµ Œ±¡uMwá7a Jel,$ DÀe° dç’g Z,$$‰y" AŠÒß²?ôw«”ˆ)HJÆ6N4T‚# J{Õ «2ϳz§X.©Üb<'³>•â.—QQ%Ê‘‘HšÂ.ZQ)ºžH H" lU † ”!cÀl8² €¶[¡"³ç¦,s%û¶N£Ã2ÿü…V·ÏYïjŠž^´o­ÍÝÔ™{f®ûÁöKóïŸû3þ×¼sgãmûgÿèqþ#Ù®9[®àGŸÔw¶½)µv Z#Üñ\aÓÎÆÑgP‡#)ík‰Ëúzðøêñ%o‘±]w2@-‚Nè¬)°vzsE°$ÊPUÔpŽž©ZG’;X²ƒd#¥ X°°’÷ªv+IìkZŒ¦ùGö¥›ƒ%x.‹É ë*™™yà|.°·{yå•Å(Y2ž: `‘,}ë ÆçAû·§¢ÛÜ×qyݬª«yúu›Û®ú\׫‘\™&XÎãç—zôr²w9aùKÇÑ£µw!‹Øº §`¾b;˜y÷°”º:¦N²†®@¨ ÐEŽXM-«ê\Zv”56*Û¢†%@”ú\)/“-Ö‹ˆ$ÀÅdA¤«IÝn-I¢ÍIÒ–m¯˜X’r„l<‘ÉÖ{ë΀—É#"4•õºùŒ¼¿iîÉÑö|…ÞÝ:õgE^«±)‰ ûî01ùða*“_…ýmj¹B¾—=n[ ·--š·¢;yrÎÖ•½öuv±£9Ïž«*oîÈ>öfpKýÓ¡š¯î\ðÚJo&û,z%—TËö™(stŽÃhwi÷€"€1& ‚ä’¥š&N t‚èPXËÅHwMSA`eXÉBèÛOúd!@§—jç²–f‹dmTþdéÁ[ZãN* ß ï¼Ã1òãC¶{weç*ÁSYw©d@ˆW’ˆk~¬«õNäf•:1E(DÉ)9íYH#lÍx 0ÀšµºêÏkX¹#ˆ±(þÐÛã¼›Vî˜&/w•}é³³¾¿~³­Å%€£TøÝÒOX%¿Ü±/É_}E¹çþú›k΀( ‡ ÝCóÿðÚV/[‡¡UO›/62Ñs"Àχz3öþºüD™÷F…Њõ•i0²b pÒòÍÓÍi)ñµ«yÁω ¿©·ÊERÉUKz¹Š´¢¼”µdж·k¹j—¯ädÀ†ÇË¿q$óå;׿ºBùãSž¦uÞZJ²{êJwn¼’^õÔÛÔ>¢ƒ®?°€À§GØýەσö7.!£cc°ØãY'²B"MFÓpïÂu¯WöeÇgúæ~*…æú¨PÏåâ[}%îÅÜêp)K* ’ HhÌŠZ¸Ž‚ÎÑxUDiÁÃÒr¹¦¬³ce/8(9ȼ~rãõÕb›….-VjNWB€ DÅÎ$mA?.H¤OD—pãñüuç¾ÌÜß•îràT¬}[Í$OJ€a¦`ÙþŽ“›ÀÈôNN'\ÿy¼óÁͳÂUfk-ylŽ3•ŒÉ¯¦’11111ùUpÛŒb…ð¹×W`•›{ÉJã©%Çö¦üxÄùn%³÷ÆÅ\)­9­; ýŸ5´Úµ±y>]´¼µXh³«DsˆÚž¾Â¥`~ÊyáÎ*š¤h€I$B$AÒd¥{Ÿä¯Ea‘Ò<È62³½a‚µeÖm0\ P-ƒürQ_q]hJ¶óÓIψ”.dÔª«Ï¢ŸYvý»t‘Ä·N¹íú +fi6^µ°ŠÀHX“ÿŸŒÏ~ù<ëH“lÒç>ÐJмBo2z¡jkj¦VÙÛµÜ]Wxó”Û}f¼âùÖ¶Œ3TÕ¹Ã. ’7_õ0¾NŠ šÚs§õÑ'Õ=œÄC}Í3¯R3Ñ@„où44nŸqmp©™–êTŽõG)ÏÕÓ¸°à?½ìøÊÖÙ³Éú[¸Z­Bµ:aÏe|!·^Wç òy†ç4§«¹¦Ü£—¶u­8O³ Qr"¢N‘ØP¾ù==àA€ÀãXUo;Ø,P¨ªÑ¸”H! ¢,ZŸc¿¼ïJÛÇ™êã»°Íb`]wØ ½Eÿγôþí0ØGü&(ß}órbO?A¢.ç:fÄå ú‹ï3õÙu4óëS ¿Ñ¶àa‹ý^ïñ ¼rZ3ÕR ­@másÒ"ö€ƒÌ.•j¶9Öq«S€“€w’¶$MåV©áhÎã¡%ùÂ>×ôJMK…õ–hž/]¹±yJê°Í[$ùh¹y˜m—“(@c…¨–;']™ÏúÞ«ÜwS-ñ£…Ö…¼¿Á÷0JµŠSeûšÀÊýuQl?8Ùp°#¹’›mõÕïrÜpM.¡‰É‡Sɘ˜˜˜˜ü*8,z±ô~í•V¹{ ò¿N4¢e è*X®ÎG€ãñgCk™9k`Œ»j*N;œ'jÿôÞi7›€@rZHGøø$VÕRm5yÉ-›1[lD׌2åÕ›{üx¡q æoS5îí^ô¢"Æ´À` ÇݵŸ×9{I§Š¹¢]náË¿åÔþîFT²aðW\¢_0Z,N$WÓÅ~qy°½rõô~òsãKw¬/cr„O@²¯óDÿýYÄΨÿ}×äbÕÿ\b³_ÌÅË6˜g5©­ÛX˜¥¿8uÏ-\®‰Ô^N7¿rñ¾¤]=‚¥œÌ7ˆzø¦RoE&zjì ÎâbÆQó·©œŠœ‚ন­>Ý.\ì„pŽ°Ç  M$…/ì» cóÖ[ßÙ+÷Ã-žÔ“ÛK*ÑY?oP[&ì9°—YnN«×<Èç.6‘ÂâDöË;æ†/"·ž8ŒðÁ hc/*”`1‚T]ª<ù*[ãP£iGP¨ùÔÐ3tyì.ÎÓ—‘ΈÔs%\®@ÀÞ<-ܰµ2ØG(ß;2’÷„ž®l¾­fµ'Ï å zº¼ò¥Ëp @ÈaÃ6 @ˆ±œ3ÛüiCÅŽ¥ÉÚÎåéø9š²ï…š‘m›liˆIv+³NöZ;U(5À‘lÈÊâZQ6ë†d3L]}¤N°EK­';öîA\t®RÅÝÎÒ"òúôR‰f'*þS­’öµèMEa¿sÚqÿ¶Õ[ˆ§¥=Áégfº¼BÞAÈ"§Ç Öë|Õâmþì+çý…2¹¡% "¯ìZ"MûÜïYŸfbòáÀT2&&&&&¿ AŸzl˜ßÐõ~Çxm¥ºROMx-Ú‰¹ÀWö| 93{®µlJdùçÇ-_Þ—Yv(”íæÚdJ¸ 1_âVдrMgÆVï=þ¤l)·ÊÚu«]iÀ .œ/œ>¾ù[9Õté•|°'㪛®²Û•4ÈjåÊ‘ BS°Ú(me T màÏg‰†n©¾ËU©‚ÅÀ~º¸Kœ­³ÄÊ~â»?³„¼”Ͻ*†G1 ö­—(£=õ—­J_ãÕKu`gc„'åË<M·©á@nÞ™Ÿò]ÿáü|ªÊ|uïäå¨íß¹´jü‹·â•ÈÆŽüd¸n7ˆ 5 ɳ/ÌwýåBÏßßz´>}iÊ¿1m*ÌþæØ §ól‰!WôF*Çè©á–L™ú¾)X,øwy¯qîZÉb:‘hþÞpßÇ{&Fvè $@&9‰à› Z6½VðX› -õ…?îôRv1Œ_|ÓèkƒújiDqêÂ’ç®Í««ŠÂ~ãlïaêÂÚ·Y€b™€K ¨¥VÿWHD€Ð_ý€€@?â;½"(ÔÏž*ä]¼’oîµ$üÖ²Èk`hðÏ$FwÎÀí{ @¸PB‹½÷nu,9KF3äxLî¹¹jå¥Ì|C¾Å”ê]L§èÅ‹îXÐÁ'“ã¸Æm5!‚¥†+>Ã0*E/Bè&ϼèb Íd¡’7æ  „DFÉê'ÒùœÄâJZÉ)\ùÿl±í÷œ‡ÍÅ ße%ÄPØ%V«dIÏš’yc¦) &ëWdª@KÎÔáù¦foaIµœ‰:{Ë×ÝB§Ü²!öý#AÀú†Ö´„ÔH‚2•ŒÉ‡Sɘ˜˜˜˜ü*ˆ‚;_Lf…þúX^b~¾èX’ØE«×ºjj<–vó<òÒWêYîoùþèÖ¨ÏY »v’ üy¦TT0 V»fKެêµÇϵí/¾Ù¿8rN­ÙÀVÏÌP~ÛÖ“ÏÁÏšºãSY_ƒ+»Ü2ìw¸–,Ë­ÅaÁÙòºˆt.ëlTgekt2ÙZCl Ã˜‚£™`±ƒ­jœÈK·n¯>ùsúw?©@"‰Ã_ùÜúßZ"íE òõ}HÞŸgO×·5¤"©Õ†Ëü†òX»tôbå–hCãR¹f*aÝhIe;íðÜÖÓOÌ{€.­ìYÀ]ŒM×Ê 'èìm¨ÉñR¼±‡»¥TšóyÇDÝ-©¡®Â茭Kj¬è3*ÜÝS2“e€éÚƒ5××» ŒÜZS)bçS—Ú7ù3k~Y,’X$eªÔå¡ì×îZ¬òÔóçíQ='yRR“Ó'5Y%BO-†ó/¾‰ƒbR_íATQØÿ5Ü÷¥þ©|ª`´‚σÀç1`âEú‘î~‘êÀOr7viƒê¡Ü®>é?_gþâÁ IPÿñòb×~¨äO{Ò ™ ©ÁÍÆt±}2©¿67÷•ª­SJ½ƒ6îÚ¼²V*TõÉÇ{3‘¥ä\2´¹Æ4 ðŠzé¹"yc[f¢àªØX‘ñ3JŸ€ b^“ “„„Øbž‰•h¯’-V@€¢c1M¡<" D  `°  ˆX‚ ¡XI„i4j©¤SÉMÑ+Å/£áVsùï52µÙ™Xȉó)¡@°‹%œ¼êßÑ•kÄ©ŸÙžZ²üŸçŸ»)ô*G‡¹÷Ð`bò!ÀT2&&&&&¿ "oŒ'ÖM\Ǧ†ødƲP¡O-?ÚsReûHÞÒ]¯òÄj&OY¢þæEï]}å»ê¤ä?Ûq¢T$S¸Æmã¹0kÙX¤,®ÌrÍÐs {>í?Ú÷ Ê Üâe%P«ò""‘f±êí›ÄÉsðÜ2w~*æo˸ëäËZ¯4\&|Þ¶ÒS´+‡øÙ„â ä Wh“Û\Sßr|´))ò:Ôó±#½o¤BÚ`I׸ó½M©Ã'È­úŸÛøúßS¼e¸€Où%{ž¬òì©:|×ÖÅóSö|™€@%â+L&,-?Ô¿tJ¶fJ-\‚ à¢âm&‹wúÎþ󛶨ˆ"L-[þõÅàŽöò†¶¼EÎä] ½*ØT–„œ¤4ØÇ“z$R~9¼h¸EÉ;ãÝØ’n¡gNÊ}u(øÈ¾Œ¨hžn X U#m°ëÖ»;ˆ¼Çï½Ù?þÔ¥v¸Úü7Ÿ7îè*‰œV.©¶Be›?•«(l4o™Kל©6©.i>UR ¥~‚ë©«hÛƒm‹K~têƒWÎ2³ÄÝЮ>AAö¶ê¿yoYäñÌ"ÓÛ¤vKŸüÔkÌ®>u°»òû~ñÍÒƒ÷•‡£Þ7"¥/P¼Vå¿ý Üs-I4 ôóQëlžÜÕF¥E’&rÃD  :9ÅÎ*^kj£S©lVc,ô^5’}júKw’>ïú»C`5Z´”'~ùÕ{æD- ¸{û=2S»óTLOxwÊ$S­²ýLÚÎȯç[(·Å}®‘á ¡·I_Yð ­¹¶ÚÒ˧\ÇÇkþÏ–ãY±îêÁ5‹‹–+ ËË$›°·ûÔ°?³tl&4ØGÊ$;ãÞØR¼4@ÍÿÇ'Õ"`U‡dIÍIÅ`0øµ"É(­k×g%qHª F£ø÷LΤó†”N+—âÁ€×Öꬔ ôw.´6:Ë}ÁpCü¢mqhnÃ= Í×½ýÃé~keX XĪƕÙv¿~>“s¿TóõߊÿïѯÔO¿È6ZúŘáÔgp»K{É¡ªaek¯žÛlX¼«ÿמ’ôÓÙ. )»#Ä$Gù`Ë6Õ[LK 7·NÈ¢,\ò{öŽ|7ÏÂwïX«û¸q©‘\[Š”eå+#E%[ “"T0˜SËõ?8RùÖ¯Ø|‰œvトK4R;Ù=°YYñd€Š»NÌ%Ê67¤9W‹z,25Wùæ£ÌßdÎ/¹^ï¨ÿ|ÐÏð5ɲª¦?1êÙS—üõ•RQÏ'®ž0‹$?Q”1gcr+™•L3½"q6Ö*¬"XcÅ ¸¹F± Ú·Î4ß²Kéäs Q*¡Æ"Ú£ÏÐ}MÚè„.øÿùpùô0ŒEaÑ(òx°[±‰ÆÑst,ÇÜŒ#‘’]©Ö[³ÇòõAÏ5G¶·`b˜ÈÚ(v°[‘="@EåÊin·–+@Y…ÉaÖO­Ÿ¨kÀ£+¦ÆUÌr„ÁJW®IÑ‚ÃYÏ^÷Á1Ô+r+9‘ǫ͛øðâÙ!¥o5V®5zøtÄ™SõŸM†=JáÏHX7zjáÑÀjôo,€V–"(óçÝÁ…o^ºjÿ†®vDÖ¬£KS¦’1ùc*“_‘ÖIüâ˜Ì MÞÔÝ-̳s5i¹cŸ?SÖÖÁÝÝXƒ¥Yyv2Þß%¢³£'«‰¹h´-üx¼ã6ý°=?6×ý±’èl}=ÒvW ɼݛ‹~¶´MY%7ÛºëÊsj-Sp´ï^~jaï®–COd‹e¸¯ DgÁV'­´ûË^'ÊiLª(ÀRН÷]c59 Ó Ò©¹Kò–:l´Ü·wÆç¬jÜ|Ñÿz¬cØá ×[cW;…s83ã¿äºýôxܽ3Ì€V§FCJÐÿœìÞÕõ9W5•ËOT½/åºwZÃDzÁU|~„ܵÇ=\t7r‰µX4Ø“ ÑÞxê°ØSÏlí­ˆ¼Qqø¼sÃPß Á„ÅÖ½OA³ûÿð;Ž®ñȽÙ¹•œJa{(•¯ÀdEØQ—* NÍ×aT LéŠúwî·æøº…0SgÌz,ï´Ë`ä¯7.E·—ksÈjÌw‡Z?½aª)À4Úœ¹ª:áºjóÃQ®O…î ìÙˆ[àþÛ•Š²<›ö¾´Üÿ9ï(OI]Î…Fk{²É–àiI±D%K¿T#Â#ÃnÀøÝË.(9p!GŠ3tB¥*½¦dÎçêŠÀ°ÏÙèrÉzxší’·wT3šãR¥®ˆ[ÚØT-爪å¬X·ÁSj«'&¸ï¾`ÝÕ+ok¨êµS$Ä2² ôøˆû¶©hò›â‡?ÉïÀr©FŸeƒÏÌÁ€%XS 'ËÙªµ!çèu¦(CIUt¥Ÿ¦ÀÈû‚KºT®Z,Ì/þîiÉ1Zðnõ墹U?îÅ vãá‹ðµ/ £§à¥ãpÛ.F§p_û{Öx”«äÿÐóÐîâ`guf§úÚ‰é|Μ§æØN‘Ö¢±X–¸÷†<ܺ§29Ï|ÿUW·0+97z3¿Ñ9 Yµ¸ t³,­çl[Q¸¾%6›ñ¾8Û¾½eaåVÌÈ;£³WÅd€ ±|% e³Y)„«Åwœ”e0+×Gª¤=Sx,^ŸKæ[lÉq«!zí}xÓ¢ïæUÍ“®ÿóUǧ¶$ÓVÈ€üûHA-#‚ .,ºî®)™µþ<ïùA“+¦’11111ùÕ‰e~٪⑥À™ˆkYf‚FìA‡¾ß3û¯¯8¶ì¶u÷Ù #òöÛš“«ŠurZr$%;únò,.êS_=–óðEö¤ÿe¾÷Î{-gW´––ºrv…æTÁî®$Ò‚/æoC$ åg~äÿÝ­ßv¶í];ÒgQsUvb¾°–eÚ;gbª î°Á¿ýÑõ•ÖÍî$Æø;g{?Ñ7%°2OIõÖX½5VU¹¹‚ï¹ÅîF¾X×ĵÉ_fÞv+eôÛûfPÊüÔ­=FoöKÅ* •{;ÑZ²Û<ª¼âˆÐjI>{‘¼å&š#3A²d£’Á/Ëþ#…žƒÌMâ2c‘7;+í Ääóg=ÿêK3rUayP‘\>½ÔT,Á‚b0Ã#Ú£?Röl!CG¿¯èÎNt5lcWÄÒkn øP‚obÔ²GYbA‘R‡VÃ/Ÿ·ß»uá•HÇ‹Ó ›|™&ûõîÀk¤%Ç“áîBc†[?1ç﯂ÑitcŸnÝøÆÇÙ*\ ã¾vb-°+u5«q¿D†ýëg]vOz%®¥A¯ñ“sÄSoÑX×öaŸ¾ä4a¡ãøhõþ½«óD$]aBe"ZÞäêõ¯–¡p¨ŠX$&d÷fiHðKÍÎD¢d{aªcØ_%yJd0ƒ¯îh–Ç¥Õü¯ŠÂІçÄE\(æRüÉ(ß$*eDKEsÄ->ü¥ºÅ5úFyóÍÜ´ƒ¼º96j6òcд‘XžTê¶|¡ôžq-ŸP¨qX›ZscnÝLL~Ý0•Œ‰‰‰‰É¯ˆ(è¿ }¥"ÑS1ç“ã^’" Џ·-þüb@#È©„žzB(K$² æs±¨ËAÉ-Bn 5c“ÃKþ¶6‰Å„ƒ‘çSM»K×ÚÈl|Y÷6^}®˜³­®x9-ø m¯mHŒö‘ÑÂŽGqÌý£oçîút‹“sDR%ÿæ§TIõ5k©t×K_-Q¸œ‡Êõæc#÷ÃØÀ?nùäàôJÉð´Ôí^l²%Fpt–:Rîp¥z<‹ï³o9ÜåÝ»¢)…»¬ù¯{7设5áÕh?uÕ†ˆýÌ¥¤ìÈèv'=3dø[=c*Û ñ•ƒ9¢ÚÊÏײñ žÀ@®î´Ðe•wY‘7»¥ö&”9ßyö]o!{ôDŠøËÇ]Ï|Ec9ä! R‚Á~ª½•œœ1žxA‚°|z»´cóEÃßYL3 )k³²VÃbs¤ï=èÔÒH&À·¢df#¶î€äsV³qþómC?ïÈ•PtM¬QÕ¸ŸÄº¹¹\±Éêj`g,à¾ÛDh»ã‰—¤Û÷bÀP¼j+•ýlXd8[jæ³æºè´ìoQåüôkasÎ ™1hKš.©· €÷nJ)& ÑvuNæÂË ë¬p^°™bñ?MìŠØ"¬æLÙ]Η1FWo^ys&=wo°=|ãQ„HòÒõ9p*48GáŽË—Uhi°ûZ $¾½øØO¡k®Ä¿HDóæãvÿàÊ"óö@§\1žrµ$ôb ¼Î3·`GGõÆ f³o xB/-ß?"‘Çm´Sz…²' ô¯ ˜ޱú•5&``tepiw_%æe'2+.ÅàÞÊõÌNs;BSu® 2©Š¦¿‚™+ÙÓ«[Òî‘£î?¿{'n&;«¸»ÝÙ}º/Î\¦¤Ä2­"©î¸:6ïZm(äàðÅQ2ÿvb~,ÉÄj ãeNŽùÞwM)üí]Òg¯Ê Hú‡·š~{ËdØSY.†;*¹Ü•ì™#ù?½_y{©þ… ÷ÎhfYƈ Ñ@—Ì¢2)vèh¥‘âºòK¯vÏåB]âH2 5óçr®îÉy¾,‘c\¬i®q .ý½#QHD¿zíW®yëè´§¼n}2>uê_‹ýž‘¿,o.òËu Ks)‹ÊÈÈ(Ù%˜R-žeÑšžYWŸt³ÚÞl¸¡3Ó[± )Ñ,´*OÃÖš±õ7UŒ¼0Û µî`¶Á—^žQ\ĆeOThݾ|0ž¬³¯N5Îèä¶ÞLŽxP8R‘sx8pï–¼JZg­ÐdŽ.ÈñôÚ]Q4‰mš¥™NЩ‚åËYža½&hæj³åÖä)€Þ‘±{›9>G<ÉýñG¨’B¶´‹?{Eñ¸°[´#AS@&ksÆÄL£‹ãvøD¾R©öF]äW|n ¨=p&LÄF´ÚI¢QJË1·ñ+9Í`WÊ‚õÆçQt\ɯö¡?RjÛæ[\–1Ëô% £©àñ7ÊøQ ­,È\N¨ +Q/î®!‡—P,¼öFeKÄpÚóÃn{Ïêpoè¶6ôßz-Êø½o/á›;æãU5jÄ>¯[$ ß¼¥46ËOžMvµÕÆÌPÒº®àÌ“/åzýœ1¡¸ý„æEZœ-Su{ƒYc ¾8T“.P¾¸îs¡V6ç#K!%‹+c([ÿr&qc}iwðØ¥w÷ŠÔ}½8|þ–'ßüÑÍI‘3 Ç3s|~ƒ‡pÛX¾ôÜóY®®íu9ÞGÉ88888ü{h©5R+•^%…›¾ÿ–·-hmïV>ß<™’ëïßlü­SËIÞ€a^¡}n–в«öž¥ª¡±ãe7šljI]u‹rJý»“×@²LÆ_ ³ºÿ~Ñ×ÔçœJ4 •“麭5+n?¥cŠ)h+]W8BñhZrº0|𯨾v}b÷Ú‰ŸýÇÜæ~}Ymª$ªõ²z:‚‡ß)æÊÄkcôU…ÐsnÄTcBºj÷·—ùŽàÏ*5ßùA±3Þ,7×þ²¢‘ÔYvJO‘Tw[‹ó1úùÓÙÕ5úøHôÆç×y(­Ã5}þQOåïŸ2Õ |:²¦ëöMx¿Þ—°Mf5¼JRéd‰êmÑ®ÝP€wGRÐà5’Lëž®ÔáËœ,XvÙ"šB¢OL´ªé™Õ>9"o…ëÝú¼¶¯ÒVWC#9“Í`öŽÎÊ“§ÉXT~8±æ<9– t VQ¿kÃÂÜ©©ð³c×F¶w™ÈF’Afeß sMµòË[R¨4uéí½Y]×Ï.ø¨µ)ëðXx}ãÊÞOǹ:µ‚¼(@­X^”<Ûã‹çr¡e%C2ìdŠ{ò°+Y ®ê’w_[/èg¢ø›£çNt4úQi ‡ÇÍÚz"£–ª ¶T©0Þ®Ì@‰pµó“î:¥¥nÅ÷’-“µqvsSP¦›*GRJÕ:¼À½±èjõºÚœ¢ÞRWhÎÌI±735~Z“N8/æM`´HÈjsjÕCøü)§³èÛûˆûwÊX_{~sy±.$ÀÄ4AÞ°žXÌØÿýQnŽ«ûÃëç{á2OzE¼ ³cE†ä¹kÛõùéé¡yügŸ¶#¡åªÄx Çª­aö œ(±5)á¬âjöØ[be‘Î\/žùQzÛÕþÓo¡ê=¾³vD–-†¥‚£™,õÊXÃí=+õèl SöŠßIM2 ˆkš2~&òÊ\htQÿÔæLÌÃeæç.½OÕæT›oö®Å•I ñçOø¾rßÅÚŒ§Õ»â“?Î4~^ŠÕŠI¸­fT¦S€Tå2ÙD4%ãààààðo§"°­WèºÀ†>0”8›>·sìü¿l±tc6 JsL»§-=™ôÝÒ\ê飚ùl.C.ÉôΦ©É\øñÑÎ+Âù}G$>\a<«#Ô²©CJOå+YŒÁÝ—Þ’Ž‰¬*î¾Ö²Y~´”kýÞ:ÈÅP%‰Ý/e 甚°R)îlNØØ’@ zq¸&´g›Só­ÚHÊs~I I¡Ž»~v’@C=¼£ÒV—ÛüÎñgŸÆ‘–5v"œ)»O•ܵ¢ÑÛ^õr†-/Ö[6âÎ xYtd!Ñ'd—9³·.[©&Ϙâ ‘¥«r©Ç‚[Æe½U˜ÎT=;£2aià§ôŠj€mß迭6ù™íc ÁO-¹þüûvOwSwõ¢œ±w*m›„ÿyqeÏ?uuõüòk«„ÅRœóžK™oçkßMÉÀ‚L»j<òæ›oîèèàyþÿö88ü¦±°°Édúûû/ÚÎýÕ_ÀÔ'>ñã¦þ?ffj‰Øïœ%›â¶(¬˜›ÎÄ õñíÓçyjÒûZ:2qzIyïêLu&rpf&í ­*H—þÛ+5£•hw(WãÍ·û‹ªÌì›íͱ±ˆk-Ò†Bf‚ÎÓ;[Êc®É£rózÃë¿è–$}÷)öd@Èc^ð·ÕT$࣌d#JµÉq¨/ÔnìŸn«ÐkÞwš4azY©ÕŸñÑö™dàÐd4î嶯SfçÅî&•ñ…ÅpÂÖ”ÜÒ¼ª(ûßæ†¦‰OÞ!­@Z>^neÛÅé¬gÏXÍ¢ÊÞ¸^U½á¨:Ã[% )ëØl°Þ§‰œþõך?²aIä ÚI0 trÚ½°@.¦Í‚%ìÚ*qVw¹Ä#Åx˜–<Œìwk±€ÒZcýüŒg}\-«Ì³§¨­îò`Ö{*µT-áOR][ØQŽPiÒªõT¦‹þ3©h­§òÜkèÆ+ìÖFû™ý8ãoì «"£ÀÞÑÄMKpj„žCT ‘7]»2ýÆqtÈD ›pi=<íù«g#¯œF’|j‡¼kk¡>*›&ùÂQß©¢‡â"?ª›/øk<ª5îëí¦ê¼…ˆXŠú”ž3C?|žös„á Eé‹Ö¼…šÅ×ø°Wϯ$bSã©zˆl^4c¬ezðæd7ùYÙÿôpër?Ø4ÚȈ4Ôø†—ÛkdY!Ÿ~Ã%U)‘³EÁ€E-^0Å~×Z|݉a6_&®¿R‚ËA“¦©Çf9"hªç»¹Î‘Ê’‡´¬Wϱ7õ]&^ÑÁáÿ¿4=òL>ø`cc£aï{<8>‡Å Q·êcÖc/±_z@€½oÔBwo½ Ò&EOœ‹W“‹#cãÕn‰õ­ е¹lõþõãßx£s/ÝuOóˆÀ¨7ßîð×}w|`¶ìº¶ar5iCj“)Kˆik¡‹»²Às¯S·\kèH8SV5‘7Ó* :Ó†¿APt üŒvz>°}cÁ–½Á;÷±ÏýŠóm dYcŽM5þ☻#ˆ6slmt¹²0i›ì‹œB_zàòÖê¹î̸ùÐÀtÅW{dÆ_‚1±¯fÅ$ºL@pðlí--å°W 4‰ß¯]L¢T•Šûµ ‡ºySêÕ±FŸ)ɺa½O[w]D<ñ¢,Ñ=M¸§YT0U£dÔ±AS–i!ž,ñªOà‹›áX¦¡TJ>‘¸º1òÒ¹–f*Û*L€È×]#Žœ4Ú>¯×D;ðl¡Dú+Ò±¬¹êdÉÛÝã«]SFH,LæÂñl¬ÆÊÝ×S€¡y¸}³‘,»Ã®òT&xSãÊô‡æÙÍqü±ã"oïÞn?ö: ?8#N²wôHwvg¨m=z{£66ïzáxäEa»Åo­\Õœ¾s`òÝ–Bäí.µ½Q?7à YîÛèŦFmJb—÷©RЬÛ\;ѽwîL6§óå;Š6rJA¦d Þ™kÚ³Øpgtî ;J.ÒŠsöbdDú;ªmõʹvÏ«bO½ÑÓª½j5ß<¾zé,ñ//ßø—1–q±še®á—›ïo9~Ùc|Œ ;-eŸŒƒÃÿ.ŸŒÃ_bwlТ![–ˆéyòäLºûª…‹ûÑᚢÅTæ2_¸Sy{)rSÛ¦¨¦½'‚Y«šL&€¡ìzV=0ëÉA|»kš'•ãmómL¿:_ObzÕ9Ã!-¾xŠY®¬ÛnÓôù:1DÊhÓ:˰ÁI•2MY Å@@0DV·a‚Šˆ(eø³;;Ò¤WNð¼ôs½µ_8Ô{òë›äÚ¨ëˆy}ô?}7ø`±§IchØÿ&ufŠüòG/ó5]RÈgŠUú¡’\"êö1ÂPG¨4÷½4^#)¢@YýÜ÷Ì/„Þ~A´•žhþšîtȃßJF7Õ.öÔ#·×e˜¶$½gÑ^„<éE¥¡¾µÞh¯µ “85!îôͧݪFy¢^˶uŠ‹éóeìšF*rÑÈf`íæ±mÛšD(âd`!¶D‚Iú 6_=éõ´ø¯p‹ù¤ÎD±¿FIÎÈvÕ[%™³ñ‹ ФZuzDnÞШ|%[ª ¢ íÆP:ÔÎ-Ek}’_”eÝ7SŸÎËmTòÐiþè¸7gø² ‘$"P “{}œ>»D÷ÕÃÏÝsI¡>dú]V_`IPK÷î(L W®»òý?â24Æž"Ù…‰Ò/ÞòF(;Ô-  Q%ÞÌÎ'Är“‹þi¶v!md*ˆÓô˜h½%׿<mfK·wŽl`O<]Þx]xª«Ì«œdç=ÍIÀ7_ò²3³1¯ð­¨Íç^§>q‹á÷¾—ø”òИȸ1mîË»eJŠPV葸²IyGÉ8üæàødþ2’Zi‹ÙÓŽÿò™ðÝýÆ5ë/ΡŸ\rÏ£à1ò*A/d i‡ÖV?¡–‹je~õÈæDùyn2¬mMŸÖ› 0FëÎ52“ùð‡ú¯®Ylð¥YPEiÛXç·°LgÑ??Gþõÿc€n˜ŠMPœhªRSHNV=aO AQäzOé{/°º‚Ô³|{X¼ûAK~•Y»Ea GÈ)”f”’²µ•û×—©ïîe¶¯7ö&þú š¤,'©¯¦ª#I!÷ðÄýxûºò’ž0Ê,W˜Ì u35îò+Ñ—fš`hri?~§ismq[[†rÈ >M€«âôLÅÓ&u –²ÆeZlž‡NseˆFítEð‹¼ ’¤R©88JÆÁÁÁÁáß‹¤R‡†w¯ÓN V6¶¡Õ„™eÎ,…®Lo|N=1ÃÁý½Aea^Ùbsâ‚¡ú[‹·XóÏÍn:FÕÞâIZíÎÅ\åçgš«îõÑZÊóts³¾Vêõ£Ä×>i,_Ý2 ¹RÁž¨Sq_õ٩ƾĊ§(#YY no^K¿Y3ž½Toº×…ßc¦ÁîÄiSõ¢»g/‹Bˆ„€ F³"Ð5m òÐT›2ª€ˆ €@€BD»¯Ò@€ÐËóëÛ3MᕪhªE”¹ü2¥¿ÁSI–]Ý¢K±ÑwÆ>³í½º¼ËCá ×PÖ²‰DÎlNTš›d‹¦©B%è;©vdÆ´ö€TãM7Êy9C¯÷âjÈÊøì4Õ¤K$®j‹æç˜G'6ÜÛ:Ìr‰kÖÿéëZßœA½<¨}…ŠDDBÆúælÜ/=ù†ÿ™Ó¼^æÖw o§¼}ÿpÓTéxñx¥µBœ~xªé†ºb¦êù§“­×…~‘f_•ºÆôMµ…Ï^33¶˜¯=¤U*æßt_8¯)齺Í\DÊvoç‡@ä­k¯(nꦦ†ÙüEœê`x3H ž´ÇæÕ%ÖߪŽçЉ2s#[eW黡õêBøŽ}7@£Ë@ÄŠ^ˆ&B^?R nve¡¶£GÏž¶¾ñh°ýÀT&.n-Ý_dWí/ã'Q«×ØÚ|ç(štm’¼—ïY ‘`¨*ôjG‡&Ž’qppppø721KïÞbJ õý—·\Qn®‘< ùÜëÔ}7¯EœšŠš€Ê¤ügŸ¶E‡¢ÌA³O¯æäç_–Úyqp”Ÿ68™°dWñUºçzÿG¬”‰¥{ÚÎNÂ?ëT‰tD~A8ÏÔô981DÀrÞeLUÒ…(M2£elN18þ—±:gSü–vÒï ò+‚AêY¯4µy÷>¢õo•{Ö_:Y“`«LHfmT>Xž’. |y<Ðc}è‰ê¾)çïÚÿ&ýðŠÈÛt¤Él¥/S®w•’Å»øµÑi[jíÇ:æ©L)M’e˜r9Ì3S)Sô]øTÙcƒ6.Óä,‚±ÚSï WÎášÎí¾Ùb…]’Ü?[hNðzÜ#!BžÐ"•ðâŠßÊ ÒbÕ•xc2êèÃUWô¶ðæa¯‰=¸Ù›fuüˆ_yè:ãù7Ä×2TgDkŒZ e׫£uósGïØÂ>>Ú N\ëýÕoŸn«ôW’Œ‹_ºb4â_+Åöì4A’‹iº¿ËúÆçÍïì)7]þä£ðè¾á·³ìî÷¨‚çT9t&q ©3jÌM©"¡y‰âù1rQ¶YŽP$…L娲L«”.ÁD™Ù‘ɼƒÃxRÛÚ&?ØwÎ]Ìý~æV‚- Ö»ÓWôŒú*Ó³î IµþY½ý¦«ªÞY[›¯´ò7z5Ý|S|I¤´ŠD|ÿ5ª‘(|î6(î}¯Wg]Ý'ÌÊ‘U™e×ݼB#„lÓ ¢…g§šž¶ û\&x©’ Û˜ ˆ²ÓÓáóÿ€ƒƒƒƒÃ¿\™üÏ?õÿöMåæ Ú›ì‰9âÄ9Ðc€¬Ò?>å—æ§>w« á¼îƵخøŒä ‡a¼Ì#¸ UM@LÀsóæü÷_‚À¯Ó=W»ÖÄŒ@«=‘¹&&U ü}çŸ]WX#Q™Î§õoÿýÏÿtA\°tKSt!Ღûü²l®)™ýKþH'ª Î0ÕÊŠ¥h Béî‡Ü¯¿ œ/f Ä•èp†ôdzÊ‹ñ´qùVíÍæÄ{â¬0Ð)€$Ãs¯Ó€Ð?"€+VoØØHO¿÷’öFóc¹pø—IA¤­ñ ™´›2* 2zÄ…›Äª|UKiïÉøgß]ÉT Vç"ýÊ€–K÷Ú‚ße ¯Pž˜±´ÈÔué­µŠÁe5ßx9\q¹ÇG‰.<9·±Û•éòÏ,ßírEïÑJCÔkÙ¾ÓÆöƒôže]ZÙØç&³Ov Ø=+af²ÎÀD6´`¦ä>‘ã'$özNouWö'ç bb­Gç*a^'¢$9VœÃ'ãßÁáNÆ¿Ão<§ÏñÏŸsÿ—»óµÑ…ÀÐÐÀO½F6%°(À/Ž&ÆÆs;›åë·Ã\5ör±­·Þ5o®Ÿ`)\(³ƒÉ…è˜o¥šS—,éDQG {´7B[LŸ šTžBk™Í¾Jr݉¿½/Ê$ívíÙSøÒn[¼$É…0Ô<›pki†$Fªñ&W¦óa7GGâˆ)NrÁ¸ièØ\ñ`š6 âkû’6"1H“uSL«W딳¼UŽ3jI'Uûòù) qóé7ÝQ Àþߢ8?|¾x’S3ﻪ e¿‘¬Y^k'b ÊKš²\Q¿ Q^e.ãfHäw]Þÿ0‘ĽÕítÖß|é^ÛgËs¼^œ¥š£æB Lˆ¨ Ë候j“+ÝÀ˜"cšU\2„¼í©~ Ÿ ¤ùæ‚· _£§ÑL›òwÖ”ŠeBÓQxq ¡¦³C>@™]õN¶ŒÃoNÆ¿ƒƒƒƒÃÿ!Ò9úÉâWîË_ÔãOð­Û­G_ nÛÉ8gëùâÕ»ˆ¡lý›Õš+:¬‘ñ•ö³Iú¦Þ\,düø&Dëê–¼ "£¬øUDÞÚ}MyÏkÖÍ7YÇ­ž^j +ö­I@ VëÍ»›]SÅÈKC±æÚHè2"´5le*âK'äÚå‹e7:A VÕPŠyŸ°Ó3`­ÌbÕ3“j¾qÊÕ"*ÝÚi«à"Lž0¦Œ÷úö'òö‡7+ FùÊçnUI†æÖZãLò½‚ÊVh5,˜YÙVæËèUÄŠ W@çƒ*pÈ0K€õ-þðPÝçb—Ï–™”Üý‰Óô¸•b…÷]x™MSÈÒiÊ6r(Ò€çN­aö‚†Œ<©ð¤â§ ­æJØW6=ªÍÈ4ë Ã/ä8+ßZoØSSae‹blàç’_ý¸ ®>P|ëvcèG¶ÏC(wp¡µÞS>™ïlHYðmŠç_˜Õ¸6' k `82ÈììDA/Ä=VRv[ØÆ¯žÖ…÷KEÛÖ·Ÿ±0¶oì‡ñYôÊÔ]CÄCÐZ¯r¦zWþìN0i”FÑÔX¦nKs–…0a©ª,+šaXvÕZ1‡šØÊ×ÒJŽüvóãߜصц–ܬË÷0/aÓúOS÷|®a\®r!FžRoK NW¢OÏõôy³z®ø½Ã®‡·Î¶=¨œßSÖÙtÙ]јé¢ûD^¬ŒP@¿¶ž)ŸšýÊ®ÊÅeBÖØ½“‘ Êë)t6Ëooƒ‹ˆ{«øU^'‡ßl%ãààààðk“ÎQ{^±®‰üe>›µ4Ø}‹èo÷¢OòÃCãrË 94Љ¥,W¤D5fh–ÞÔUXëc§Æ3¡ïëûË»’ é ¥"Ac[·öü³öGv/œCÍ0é˜쭆Ñlõd&¸½ï'炪\µþWñ«KÓTS7y2ÈéÓï§ c÷­ÍÓ´M𴤬hf2gWO)ò‰#7ÿBøÊ3{Qw|u»P–Tö}§¹VF'½ïè©KD(³M#“Ný* »L½§’Ѽ«s!*ò„q@§Ü†aærà&ÎèŒÊÎD¯é»Ìø$M @ºhÅ ¶”^¶ ë‰ÓгÍ 2¨vôr£—ŒÀ"ՇЍUˆ²HZ³Èö.nÿAW™ñl»R{òÕ%±WvÙ’Ï÷ÌÓY$‚·'Š L LÚºR5¾þ£‰ßý­Ø«‡*é{‹-aüóI|퀹¡]ù£Ÿ‡·t–šëLË4lÀøÞ@ÿòÛêèsÛW°ªfÁ†Žâ±AÊe÷ݬÊ2‡¿Û ò ‚×ÐÐúPOÞu+X—Þ<²tléór¬…Ê--.Ð Øi)›AJ#!™º![ôÈjþ€'Ve}Ïv=¶aï ×Ïâ;(¶>šùÎ4p´®³¦„íAÎSj¿xn-ºòTô¶åöP€:=€é‚x<'Ö»ÌvÕËé[ê—nïY«3±®6ÌH½Äö6ãÍë´å€€zùl= teCÒ(¹ßÎy.͆Y !”*_>ÊÑÁჃ£d~=&f™çÞæw_'}íÇܪùuyÍk©Ò`É–:5¯§£è³Gr6Uá\KÀÀhŽXþn-°úºÚÅýä™9÷xŠë^à¸èRã¡·õu[ð ÕÔdM vIÈ' WÌtyàÑ}pÿ­J¨~ül¹ñØ|m­ËÓº Ã£`—aVÀçÊEÛë‡Â’ƄĒF†WÌûr\Hr7Š•i s#V›L/5á•8œb~ôTùž‡lA.Ï[5ï»>?;ï®Ñ š°õ?tžœ3fæò‘Я±ÂžÔ³©ÞÕ dé4E-ûŒª„ÛÀÌĤä‹a¯Ûr¼ߨv™&‰YÌò´ZB.µPá¼çïb9NN§—ÿf@õÚ•QÜÑBÏ—Ú ¤ßO¯Ùͪ͗°W¶žé¢Iì!´°™¥0¤¸X ˆõWºscùñdñ3›ŠÿåñÈÎúœr.•Ÿç¾ø ’iÀ&Åüü)õæÚË¢?mÓRµQ]UxR¾5V|z&úøAêž­I85L?¸ÃyÐ(€‡#¢íÍ3^»/£þî3%À6xìÖ –`¾úc¾»}|@»³½Xã—Á´À¶ML¶Û`Û€± °¦ëºìéi Æ`cäUÀ*Æ 6TiUG^…mÊá¡TÏC“ý\”ؼÝ54W×ô­áfDªÏ ±5‚( §¦"oM¹'JÔU5Ê@¬øÌw §óýrÙ¸³! [“wôUÞãA·4˜ŸŠXç¦èï=-l볺Uh ZضCØUþÐùðÓì‹ÃÁÏ]š …Þ§-ªƒÃo>ï]‰ÞÁÁÁÁÁáN ³Ï½É~qW©"Á®wiD89ÏÀ_^£D¡H²õMô&bÄ Åù¢«ÆS€s³ü=ýk¾X^`ÒÖNB/L÷*wþhíMZ¶„fóíæÈ"ר’^@@LÑýÄ>èkƒH9¿>Q¸¡§?Û0”­?„ÎNZuAªX"Ü3ÅÈ5±<0X#©•V˜¤œ¯Xì)³÷ˆÞëGå­Ô17mA”{úõ­žŸ=BÈR=äJöûw›yêH="Èkr·mL¿~.œ/ãÙdþõ£¿Þ¯-O©AFËë+¥“±©3X£8±J‡%̪Úš;|nE‰œÑWÞõ]4HNóu{«Påü.5þ.Îí%m›kaõh6mºá:s¨Ô¢Xü9©q\i|¼¸íÒ3¢×ŽX59p  7Ø‹=Ɖˆ5Wâ#n­ÀRæ ª>0ÉF¿÷bðŽîÊ¡3Ì×~âÚ}ÃIêO<¥ý {kŽ–j›ÝGe EÖc¨”Ëårå³Öî¶ÀÊŸï ͤŒ¿ü9Ùש,–ôé4VÀR‘u&ÇüÕϸûo2§~J§4÷9ÍwhÚÝ]K‚mþè8}âgÈÖ3TǦk‚iœ`›'¸Ö ¾}BhOq‰$_“äëNRun"_e}UÆ_eýUn­8µ´®Û& KšPÀÁƒsuÞ¬$Ä@ãøxü™þ’¦›xõ­y&U"ÿós=DæL¡#N,ûb¦æÎÆÔç;NÝW?Ý’¥Z£ù°û½dÌÊããñ@·þð2|kçÄG Œëy9ó¶¶Òx2Å Þ=Õ7‡¥‰*+©Î'i‡4Ž’qppppøUÙÿ6wè4õÅ,ÛgÐe~D$…ø»}â@›öÒp£'æ’¶3#^¢£91ê©`O,u‘5K׌e3iÑîi©s—ŸYèÉ©kv¹Èã[v¨O‘ƒƒF£r6+ÔsÅ‚R³.·‹Y{çU+‡™ùù é¯ËÞÕ8¼ xذªˆ<¸X4Xs&Å,JÞ„« ”­Ñ4ªÍÏ(ñÁŒÛ¦è~×LyA¾Íª˜qU—RØýÞësp´(òî­ó4 -aûÆžü?¼…ñb¥³Çw½7 ¡’3Ö¼(È2Xž¯ÕB¢V9=UZ‹,ÚØQœ£Ó…  bó>Fâhë‚j×<ÇÒµ}Y¤&ììñJûÙB(­0?YÉb;Ù,II@7µpùæF8–À³šÝF™oH6M )_­êO¥GÒÄî«éHpÍAôÄ/lð­ë•C÷5I„à¢Õ˜˜†sE¶­NÚØ–ÛÚRþ£ú¯ë´Eþ¼ìlˡۮ¥WSJ$=ñ<ô¡/?dߺ“€…䚇BGôÊ­L…rU(×$ÕÚHd+¼˜ãÃ9!œ"91ºäkXò5.ù›–M³ÑÞB4Jðø pýžr˜ÚJÇ{ÃlU–¹®Ñ盢…ú²«ª32}Oîw·ÏüŇÎ|z˰ænmL÷ÆVkð¦în€½]C™ õ{ òx [}øöêgÅsò¹1¡#²">7u– Y=4t±Rõó"¤Ð¿â%~#q”ŒƒƒƒƒÃ¯Ä/°¹"þÒý+uÆæ’T]ìâp&xî°pïÚ©#í[«yujd%ßc¦J ¬&¨XhÅ!ÀkUÕxZíÎ^›8]ª­6®Ž)òøÓwiO |FKçaB6½.ÜëšAŒMC+gÃáO«;bãë|ÙŸÏvç€Ej‘Mk^/¥ž–ƒa±”¥cR—÷6` 7ˆïô¢á%²F&.ˆÂ¹§ßÚ¾sqïArpð=ÖçÌbMQgïÚ0Ÿŋˊòf#k²¸u‡õè ¿Þ·ó0[ÊbÏê?‘©»x®€ÝŒ&ófUàŒˆËHÿò;½È™· ”‡§.(E5=Fb@nm-CÃÅs†"Ë:›­zSuÏOöüíà–ã©@Éd|œ~wdćõ”áIšn‘ж²C;Øwê‰5gl…öûÔÛѬø@аÅuÔB°ÞLðCÍzNME–>q@âš~Éf€ˆŠt’™]DÑ"o ŒÖVS†yhÁ}⬸¼·\EßÙËîhÐ*ÚÊ%ýþ?q-uöέæ‰AØwþðA }ópbð]c{üDùÝö®R×|&zg±Â8 † ÍŠiiºà"i BÍW ì©@Nõåuf5xZí ÏÞÝ2RÖè ÷g¥‹ß¨w!jŽŠìh2«ÉÂàY,)$ˆ¼yWoõÀ8q‘Rõñ:º$ýÉÁ჆£dÞŸ'ž§Û÷Ý´æHÉ–·h_tX:G&óè©!o4Šô€ß›|`³|ð8¤³)»ê…_†3Ùxå‹;ë²y¯œ]< WÜCžËoTíãUðý7[> jUcKض7<Œ„.°ä”JÉR¥h8¸¬ˆî¬€Ç&¯Î7$¨Ô¼êŽàŒ¬ƒ@«0’ }w$1<<ÜÂMµˆ¾8A4ëpɵ1„゙äO^v}¦ ‘ã™àí}c ²[ÜFJÂEÀ ³ï¤‚Þ '„‰™_ã7—'Ô¸‹ÖÊ—x¹Ræ($a¶j±¢]€õõ¥ÃÃkÁQÑ€:4K¥ókIDjåy´k¹s¬14ãÏ©½§šþæhϾ‰Øÿ½Þ·v5oa² †ûç¹nD€&Ù7ùÞif§W›ù¬’š‚Z’²5k“‹› 󨶅›&Ò¹ºõ‰º¾Ðð´ôÓÓ©”?Áaë®ëwSÚvïéåÓ[êìruåÁ-§Î͉×4­D*>½Sý‹]ÉŸF¿µÇ38E»i ºo ás[ß{ÎwrÔ›ºË¶¡O^ðZbÓ@Yu|2l%ãààààð><ñ Ø¾ïæ ²b’y$ +™¯þ-°»¯FKLìjÿø†Xºõjü賨ª2Î=¿´°Å¨™™…KàIµ]œn㳇”ž)£ayc$„wlÀO~[2Ýu¾î¨G¬ë¢óùƒ,¥aÙØ¹£nèL1tp©•·õ—gêÖÇ´ÑRÿÎ]5[~oÝ\›8}þé>;´r§¡çüA£ !¡ä W¯½‰=ñæ¥b&§øÞÈÔÞÚ:ã"ÌV¡:W% ÚÊÏ«Àh··Ï>;ݸaµïЯQiŠ#”z¦¬ýRS!ÀIYP T²ÙåîõÑ€œ,­ 9‘·nÙX=xR\Ý’Áî]I¥gå=eÿó¶i$€+—*[ê“_ÙvüëO÷FçDFÎ7<>»q°²m¸38tKdÐ2 +_ÑåQ)Ñ£.€m#Û«6†¬?øZ&!/ë‚uë"j¡üü1î+ß¶×ßÔÑÀ¤ûøµzh5Q<1¿æ¡š˜†‘4<Ë-hˆ'ޱ]ŠÈ[zë4釗 Ä=†Èi™Iç¨=/ _ý¸¿ÿ?˜–¸ïÃxµ(ÀΫìOßcÏßü 71³v•DUİpùÆ;çS.á:y³¶2,±‘¼èþ¯©u‡qÃmúÖõþˆ¤±½ÙÂ6žRŽMÇ.µ]Z rï*ýé{ÛF<¬þøhçàRí{\wrÉ 7ÇŠ)…í¬-tÊßR€|*<6+üÎM¥¡YzÙK³Œ›× ";y2h%ãààààð®H2<ñ, zñ}·\\Ùv$M\ɰì·AèþëÙY;|mh<Àji„¾VüÏàZßJt}ÜMŒ›€@{×Ö~­üôv~hÞÏÙ+bf vݦ¤³>79g©Y:g|áóO1L³\•cÞ5×O«wÔÕðåÁ‚¸$3Ãy~°¾'2|ctÈÏ\ìm€žâì¨Õ±ºÅ¯e ¤lA,ßûÐEb&¯ù_꾩n²Ñ•i ó³ŠPµ.P,!WéŠhaLoùuÝ2­ô\ …WçõZÒUŠq{%}Bą̈Û?î ¹C ž“Çç¯ýXχs1ê‚5¢ˆ—òÈ:[Ã鳋@²\}D€çßpÿî­+ïƒÈÛŸ¸>·{NÈC´ÀêÛO¼Ø}ƒ²$}‘ùÚ'Íž‹µ4ˆÞu³që6óÙ7Ùo=&¦s”§e•e?>BÎæmo^*¡§®t0ø¹Øüƒ]'棛 RHÜ×Ä—¾t]ì¡,Ýì¼O·SÑz£s»:ÎÀN­{7=óÂÿ¶ŽÜT&8-±he¬þŽê'oÊþáEßHÒ::¸ö¸±mÛ¶ui}m‡Ž’qpppp¸<’ Ïí·[êñΫ."£vv^¬m^>e?p³kÚŒÜßr<ÈÀãÂÅ €ÍýÐLJy °aº]¤N{*|”-½O³HŽP63ƒ€àÚ #>…ó +T/UL#3-ˆ—ÿ‚ Ç%YWUÍMsYÉ;”®ÊÔ¿>ßúÂRÛ€0Æ®b€-¦ei2M^ÆŒ@J²˜e_PPÍ!ÛªP+Οe1C–Kâ `øŸÉ÷ì®nàSDfF÷UíË|#oö¥‰jzjöú5¾ sH5ȵء’Åê6Ck}cš£ÊðôšFäí–„¾çþ‹ÿ3¸ç­˜†O4ÿö£3Ÿ¿y6V'»ÙRØ+ùxÂ4ô’L.Õ~óTßlÙÕåÏ>Ðv¼;0ÃS*Ô‰I©Í–£!±Ôꪞj>ÿ–4ʃõÌò?1Ë‚§Ž6 A€ú­uà)õÞàñ¹ÃCÑ ­ï¼­:+Â…ˆ<DHÊÊÊŸ³Iž‹ÕtŽ~mœn©[‹`X½§Õ<›csO¼(Œgí¾VêõcÌÄõåª7”¼–óSwÊ·l5ö¼"ì?*–ÀÁ™÷]sI!ŒÓë£ÆéLýîc÷aî·6'1M¹´b•óm½ö÷¹¦×Ç3÷nÔÕ¢¢eß?ñfe.ŒÖŸßÕ5úNÒÿý}›8éŽÊaŸ<_‰*çÅŒ‰¼õÉ›rïPºÔÐ<·Z¬Ì-ZØ´Š’ã“qø@ã(‡Ëó{k ô ÞËìªHDÈ{)ɰasbR~¬óÄêF·¹ ¢lmÓëGÔCäD@‘M¸‹“„¥ÁûÁ"µÍtÀä,Õ’¥ëMb]8©ýÞ³ÞjÅ®¤f=nÍe==Ÿ8³Pó‹‘Ž/¼Øÿƒ“íÏN5b -XL‚7®ôç° aR{i!ôÓ± ŠÁYšÌ—iÉÁ"µ››ÐËz< /æ™ Ü>¶ Êým×ûÈ?ÊÕÞ®g’MxaÚ U1séhÀÓêŽøØ"„„¨gÿ[¿ªéÉ€ê¥4‰ð@Òˆ÷2ùÁª¸\n™¶Zihn劒B<ñ²ëÐúl–üÖÈÝqÝá*ö·¯(ÓH²DØÌkÃ5{†Úà6½¥e¸ÁwqKÍÿÜÁ¥ô'FsB¦²V±­ÌÇ=ÊÒÚ¡&€$®jY|++t4-o>ðº|ÇýM]m~OT|z˜?5¹èñ–d¦ xhE‹œyð”ëw>,]t¤(Øÿ‹½÷Œ’«¼ò½÷É©r]ÝÕÕ9J­B€ˆŒÆ66lì1¶×¹cÏ¿wò½3¾³^{üúzl ÆØ˜ì! I ¡ÔR·º¥Î¹+ç:§N>ï‡nZ-!Ϻ^Cý>h©«N=ç9O^ýüÏÞû¿7µ £’mß0¹Ö[Ø5f­«ÒïݲH0íR8ƨ«–¹½d3J;f\˜µ(GûØõªZVNñž_½wIm7I §â¶ÆãeFµqAH"Œ6{NIÉÂÂÇ+À’ÒýmƒË½™çO7öÎÌ÷&Jdéÿèc6.IÀ›ãÖÕ^aA¤…c´¥…‡·d Ýxz·ûäÐ|ÖŸ&«¾R'SáMEÉT¨P¡B…EàÀؾÏH¤Ùë_j\vb6LXl…Óƒ—pL 7,G~úšfz‚ ¨PêÕ>Ï“‘«QGʸI‡ÂZÈFWÐÏüêýê—T}áçæ¿Ú|½¿1/’°:ýöšcŸ[rò[K»gÊÖ1ÁÜiK=9¬²¦î¬î×u°ò»Óu½3‚¸x6ˆ×0}§„`Aò¤é…]-u–˵¯™Yú™;ßú³°4X¥ÎŒA W*éfpqµsZÔöŽ ¼pµAn=™&0.»'yr9uQ~Ǩ>‹<:Eïý€}êuS]P}âþB³åˆø‡›vA"OMx¥ààˆ“C•j×ÌÃ]½íþéËÔÅæ¸4žõ°¤´©&vhÔ;÷z™r\ô­t‚ܵllÿqâÏîA“š^zCgô­õ“w†ûëý„ÉÁæ’ù‹"3õ!}61¯è6/'F"CFsh]èR‰‚Š®¯¶­Tß›bë½ø\ûÈ«‡côšV³©œµ™µ§ßtœ´\îHA$Î$,Šn^ÉÆQ\0ÑÒx™&@€£¹ú?óO"’´'·–#кm²Ñ&¿tà÷P2À’RG`æöAøÅ±öÞ™ÀÁÓ–'6¦`,ḩ&ç`oÓÄ1ê-+²§³ùö“ÁÙ4£Ër¬X‰ÉTøDSQ2*T¨PaqÚ‚ð©Ûßn7º¯d> p` :Ë,ïõ;‘îþó©ügD³8ŒÆl[#ùÆrc§nz1»…±«Ÿ /â‰,Ý7Äœ9ZzýDÝCg>÷]ä3N²¶Žð-ÕÙïÞÜ÷ß7ݳt¦#8ã6…~{¢é_ú–¯´$l8Ñ꜀#9‡Ÿ-0„øõñ”€¯ðL'Eä¹–ÓñТ'¥ÑòµpögØ­em¡•Œ"õ¹ÎXºŒ|éQÉRB9fUll“7‰wÖé¹Úç蜞œ€1ÑÌèR=}QƒK¾Œ‚®í8ÂØÌú÷ºZD˜ w”±2a¶B^‰Scîx«./%Â|wË Ê8þÑq°¡‘w'}ൠM‹Û Èø¬âù€ÌgšQ­÷¡‰úNÚ^Sòáùÿù;+l]'Kˆw×YRã¸å•~A:° xÔ‘™ùE¨¯c[âS¦û¯[ØG’ño¿àCôÀ$“)ÿp÷4€ñ“ížs™iWIséÜ\Í üø ÿ¹°Æ9Fg-»=ìµhs[_ƒ+: ²~4E1˜J1T‚ñòsÓ¡[†Zíù‡6—úÆ…—Þbö~@w÷Ó#“d"óåÞ\±¤ÔœùTçГ–“²ÏlF gÚZeç­œZîùÜÆ MbK(uÓ’ü¡a3FS`,ò ¡B…O%S¡B… c@PŽE½€>ƒ\Ø©ãô8îsÏÇd~w,œá±;– À-Ä÷ÎЗîäŠneŽ…Ý½8ä(a\v?Í—ÑDšè>Ë0½¼Ïù§ƒOïvÂÛg!lCH¶Û.²°5ÿÛ>€Þ7Mþ¯ó¶h–óØË««¢Û¥šÞôS¯që;”«É4Ëa~Ñ-ÄÑêÒú\CUéÍÞC#5Ãyü¡e¹»×Í|õGÖŽv:ËÙ”ŒÝZŽ—Ì.6ÇQR®J€›œµÝÑT/øxo¢wºýí~ê©ÿ†¹ÌzV$§¢êu«/š _Æø2Vð‚€OÆ©4' øPžh°k^‹î4kVNÅýcyM ôø„7bÕz&}€,féîÕÓ`à ¤«€c„Ä Ãøåa èÆ¹š¨ >QT”L… *TXœºd&7Ç£۴Á1ôÉW‰€ ÝÔ¤À+ïùD¿kÍÌ…Ÿj¬Ÿ~ÓÙZKy‚@”^ÑŽÅ Ü<ö~13^zC5ô´µ íˆ6 \»\þèbnÁKyÑk6 q@u»/©"ƒÁ,wu>Ñr²žI *×8σ٧$eìæù­ž¢é¨"túÔ×ÎÖîŸn V¥]\þ¾–‘”ëùÓ+¼™Žà X3gÏ6Ü 5¦øhC_ªºÍ5)9êi]oN¼ï&ú+æÔY®tßçL/>W#f®±MïhL¤N\Ù}kþx)Õ ßâL(¼Ü?ÎÔ›‹ðã¯ß¶Ö”þ¢o”z¥›}t£à·ëN‹a7!–òEÚÀ„© © i€^U4ƒ¥¤•þôñ1φæi=»çM)íDã0;»ïvë”bù×ïœýÇÇQ’œ:"Ô]¨d`>“jÖÐθ&Fü†®-­Ï^× ½tïZeôM㪅 2'‡¿:f5 õá5…¥ yh~u¨fI$Å’NbK €Ø~þ6ñ(s9uW@ÀÌ&maÞðe"žG|ÅgÕ?˜´LÈOÜ‚d.ħm^­p$ló R"íÙ(ŠÚ‰í3þ¯6Ÿø§Ck̺òĶÎÙ€u'‚éwoˆ.<ÎÐoYQxq¿åæ®T¡„èŠôâ¤÷Ìì_W>ʇuúÃÍ­È[‡‘ü2²up¬°ÐÐùr˜JÁY\å…žaî•‘š//+mŒœ>­Ú•íØŠôÔa³>Pc`€4f-K6ÀFœÏgÓdÑEI××í:YÛE!µîÔ\v+5’týâXûÓxµ­QÆi`pqƒoè•Ñ« ¢ZãÈNNÎô{×^8±ßKÌxÐXµÉ}2Þ“6s,óÉYßÞ\ûÌk-tYͼˆóe|6A ÏàûQCÓî]¥þèK x´w'B—îÝMºE² W[¥SïÍ<{¸¦>hGÃÎϬ8óâ{ëZ‚–`ïÜ#Ⱥz5PëûËoöÿãã¨ÇdMˆœUìv"»`´ÎPÔÐõçûݯN„Þ?CzM2JR0×·Ý~^t½z8ôÞUo·­Iyì󀥯YKæMnkÉE+)Á¶´!÷½*ô©×M!fr„í\doÀ‹ø±[ÿ,µmMÚc/ÀhÌö¿_FÊŒË?•ب&b\«Š)ñÃ…B@ƨR™uÜyúw[@|´k –Ldp¹\ޝl%v(½ªÇ©^:‡sp´:÷¯Ç^îî7¾º!7ç:=³ýô¨ÿϯ™xµ'0!»&l;†-µ&åÌd±žã¿õˆ©šWø‰,ó½·-ËÅŠøÙYÁðt»yUjp‚þ·—ílÍ/èòT¡ÂÇìæ›onjjbæ=“ >nÌÌÌ$“É¥Kîièï}Æ>ÿù?Ƥ*Tø=À08Ùo´6^”´OPÉwññ˜zC[I±‰<–ÄÞ;÷àÿö95… N «Ã³TµG)ó˜ÅÊrfÓ{„”ÂM¯M§­FìS7-GíÖßoJ¦R×TH$R®¶ÓÅÚ§û#–â§Ú‡vÁc&x7´nµAFLcœÒåÊjÖ§EFRÔrGÜÆs㨚aC!¶’‡Ÿ]²ˆ%i^K±É™²>_\yÁëêÒ*}ûYÏÊÔa‡ð­ºtnA*­ÔÉcx*¡„ÂW¾JœSdÿˆÂ¡é`ÐfìŸd¾Ø1‚1T ßuºáG<ñr*í‘ò}J+ë´}=‰b>—Œ HÉpD¼e/Ê^ókñ"bÂA+a ¼\×ì´~`Ê×å‰Y‰ÂÉI‹ ÁÝMgϰç}´©Óý½Nþý {þ>Á,û«é…æÎà³ñ³òÁ[fLC“âÆ£/Ë­ñW¶@‰íǃïÏÐë凮Ÿá˜‹$¬Ò39S+?Zô¸Kˆ$a´E”×?°é%Vµ-^vU <8èVõ|'™“CÖ}Û½º¶|ûêä¹SdÒŠÝjé¨CwôZŠre–’§ó­˜Ú—p®Ä~rÔ§0¦}ÝúgÖ亚 Bú°BÚ0©ªšÇlµüÙ£Ô̘v¹™,`d’Œ¦°kºæõIï¤ÓIëÓ9ŽW°&»4ÃAatM8}m;J3ìXÊ´¯Ï&ðäDŒ}ò×_m‰Ng·YUy¹Ý§ÅKĺւߥòÚ¦-"“gæ šÔ>ó Œ>ôP8V”ÅMüPQ2*ü¡¨(™ ú û«—.,?>~†Ïà-CQà7ˆ:ASFGƒèÜ ¬îÔVwjíõÈé¤ÿ†¥¥x†vÚ16Õ:SÃU)‘ãR9c4ª6¿ç÷s^bÊE-o®ùa~M³¿¯uÀc.èº^å’¨̨ËYŒì4àq[ƒØOèZ 3’šc³ÊÌûxîC^Üz6–€8J˜¯V5{ >ò'WbïþÐÎ3>¾Ì¸Í¢Õ„ù=V_|ô•™vSÄD`‹‘ ‚T«ªQ§w¾*/]y… Á@µâRÆ6k9ÔX|´‘Iâ·{íQK0•ÖV+ûÎXÒEj‰%NrèÖ•Ù•EŸSâ 8Vo ËG,²B8­ŠF8üÖ¢& ç†rjyÄ0²¸Í®å2øïQ Ž0졳t£9=bÔqNfª'ÑV+“„áÄLÆ:5%õõów­UêkÏß$¢ü.¼Ì`‹ˆ4»IôÐX÷A0ÔhÜPemYÄ{J‚H¾Õx†ùìÒÌu‹¨ 3­¼;î_V•$P´/çX@F[È‘ÈËû¸¶ˆB o§<éeµ"¥ À—ñ7ÞwõÏR~[¼Ú+\xØžÃø²e¦:ûôÖžIÃûÆPGHAT ·³Â[“~VîN؈ð¥ñ*2à fX0¥ b†,¤ ç²0±³¥D-”á£øõNúÖkDŽŸð®>ožÏ™2ãg5ïÍ5Ò긮3m7‰ao©%T¨qÊûÏZ“¬ÅQ>2ÈA›åD­ñªïM27/)€ß­:Íú o“$Šø=•ÈL…?=þJ¦â]V¡B… ‡c¡o±¦#{ðòÄÅ{·”¿¸Yé'PK¿°êƒ£•µu¥c#n¤š:CU“…§žKýð¤oöa7v¢#3‹[Í^A¢zbO$$ Â_µë\TŸ£hÆDV]oçRm0¤<'­×Úĸ!ÐDª,è$åÏMÌ,¦ÊªYƒhpL¯ dŸ=>7”=1÷·ÕºÓŸ^1j¥•g„§â^óñ×[ôýõUÅçNÖ_a’:ËÉ‘eùZÓ/‚ û<^«çÉb¦@¼^VéþLÍS‡#/Å; ¡ˆ)#(Öâ7¾vãÄ]ËÆt ÂæE6ú£Ý¼:{hØ48mŽxdT»h3Í©a$„ àª6ç@Λ:KO¬*µÑ}æ–•ÂÎ4Ž·÷ÝüÛÝê`‘«ª¾¨¡ •—²3ãå…Ý0çàЊ ¥˜S$U7œ&@“‰üÇÝõññ—›¦—DR‹~¥$¯IM–,n&—×Ïû#sŒÞÕR^ß.?µÃ’H/ Fˆ¸‰Ñ |;9hyúmWÄ/}õ¶è\Š×…¼s©vZž¦¥†púÓËF`÷¤u¢`šs€xg4xw°ô-ÃsÙhs$4Ž!€DtT“ØÜH†dškØßõ™»Ï²W^Õ½‡Éö°âqj Häþ3U£y´82öPWüÑûQ” ZB|B ÎõÜœË([[Ïeëô¶‰€ ûÆ–BÈ+/}€ª¥ÒÞè‘I"‘B몕/Ü%OÁ…Nƒ*|Œ©Äd*TøCQ‰ÉTø  —8öü®hd’¬²:eÂÑïÖÚêÔt{y/öi{^ÌXuÏ»È ÂÔTÏÞhÒ½‹çÌc)}42("(fÝ T ãèØa÷L~v*¼ŽˆÞÞ8ÒzꟋ«¯»ôÝ^C C "I—šN3¾¢%œÌ©ZÍN?HöL> Å€R%R“@V4„À­¤,‘IK»`*flñhu¸VçÌom,¤{ò?Z•pD:«c¸ŽÆ5®ËVW©y|Nл·«­qYÁÆaÒDÙm6“ª¤Ž—«R²í?­Gã®lÎX–6b&@Úé±,·1’`I£,Jˆv9•!—ŽFâzk¨¼ý¤û¶Õh:UÀóKZS˜¥C2JúõD[ÄozQdÚ¥L®Œ MÃ&×(Çh©O ‘j{4Êÿj¿y ÔÕy«Â‚¯@µùª&#Kº¢"¹K“Q2–"ÿù5K÷ƒ´¦hŠš]lw_þpºvµ¯üÙu£W¾ HÈÚ#Žä€ð’sAbžß­’±óE ¨ß5?ˆˆ[ ”[›MüÝK®®jåŽuiŸs‘Ô¯þ!2äÃ"^!¨Æ³¸£ŒÒ®y-ÅUþì«#U#IWª %ÒÊ—Lf\P_¬bf£Œ¢‚¢†f!Çy§X>.†}ú\¸ìR)äǯãOÜ/@2ozáDèð¶5œø³;K~/B°gÄs{Û´ƒ6F“–WatÖòz·ë‹×Æê‚85êÊòĺÖ4Eêñ~÷:±½ fÓ„,ª{Žáô ª·öÓ× Ýð{*z¦ÂŸÿ‰˜L¥â¿B… *\…¡û‡ˆûo”8V~úmwkDôØEŽÑ»ZD‹ÉØßÍÔUi]Íóy;,-onNýüD ¦Á´Þ2È‘HÀò¼á0ë‚üùÂÉ! }*ÅlµÕ;¯r&Zq™. =Sþ—=+\·ÖY6üÚ¨ùú+Ï8®2Y "ú VPâÖº“x¨IWPI©¸£)4sr¸f ”P6TÈ¢RæY“¼"’xöP•qß%ìM„æMÉHÐjð4Ú×Óe¦ñ–ëßìõ‰liÏŒñô©qÏ’pâ ÓÚ—ûâ3â­ÛT×" è¸æ9¿—š*z•rnß NMžZß¡vuÌo¸ßÈ„ɉj–e™4€Œ¤Rºt´98Zýüµ3Vʳ{’[ž9ÅtwË( sF^F¹„\ÕãË2ç—à´‡—¼°—{b›ì¶áO|Êô×?L¦nî4î½ }·›ŸIà†ŠÌÄçntdöžx¡Z¼$ŠœMbÍ.}}‡ò?"(}w—§‰|¼ä¬¯¹3’XR³H iSaÿl`€”Y¸G_ÚTl¨FŸÚa€¹›PC©è„нßòí»2óNz—@2ìkÇõ?»[' •AÅaÌ ‚Dò+š ÃË¢UhaEv§F'¨‰"^MKº®{ÅÎH,¢×;eTI3LŒárCAS­Ýó¾Ô#·ä3û _ºIî>mžôbfÛ*ïÌp2¸ªeþ·f,áXåÀk-ír§²U±<ö¹³sO‰g»íëx÷YöÉ=Ô£›Äº”ÈÀH”Ú´FÞ´x‰%`rnèÔÿÏïŒoš .|µ¾Û*ü)RQ2*T¨Pá²ÔÕÀL <®ùG& ŸÝ˜sgºeyñ`ŸížkbóG†$ŸK™3Pº?g>[ëÍnlñ§EÞAf «ë4P ‚š9P¼5\ò8²;ã‚DÆ æé¼%Ÿ¦²Zm½˜‹¹ ¼0à^å-ÿÕ5gXJEˆ2¯ÚCWž¶ ø(pªYS,¶ÌêLs–öÙC®L6mØõQb8ê©—Q’2À:©,%vÍø¯†®3¬Ù¶* %bÌ"=§04]Â|÷ʉѨõÍÓ¯IýÍI‡™’"þ+ùÞJíK•Hûâ3ʲµRÇRPQª€{r`NfTUt-¹ÐcôG¶æŸÚ1ßÑÒ´$ÂfÖݵxºÚ'ÆÙzsÊBÏÈÅÿ©ïxÖ”,““Ú5!,™™—pÔrâƒí§b:'H$ð"Y,ã`ñ2ŽiìlIKØh¶mÙÔ |ï‘y›2ŽQc¹ù'kÔ…¡. ݽH4¡›¹ŠŒ©ð1§¢d*T¨P¡Âe±˜`röü“Q¬«y~ËåuŠÈ¸etÖ Ì{dqŒÞÕ,=ê ûÌ×´IK›Jé²mH±2¥â+¼N‹ae¥¾Y¥Ã‚p¬^TöÚîÙ˜–’kÝéZw…~átýŽ3tˆ–»šñ°Ë£NE/[Ñ!åtU׬%#D”ðŒm¹³ÿz¢õ—w¸gŽ‚¦OV-œ}»È:J&‡€9À0a^°´òÅàñÿ5uÏçÄŽVª…q|¤'oOÕ.?7lÄŸÈ. M[Nož²n£å '.ŰØùÏ>A¿³ £§¦Wß¡)*'gÍ¥dq*aèú‘üÝ!DÅ–Zò›_µ ©Ù ?;•åì¤Ü3eé¬Ê+š! ¼ 7² šÆel420ÉÜRW´PÊ“GÚ]Õg+ŽÇ|æÞ-!Œ×X(%ÉTe¾Z93÷ãç7—þ¿—h·‡€ÞaøòhW'hXÚtÎôy> Á‹H)ZxºÛ½¾‘âž4/Ý=ÚO^Q 3Cº«‡õÁ¥ù#“Vœ¡¤‚Ð7ŽÌÊ Žr±ÙÅ·„ò›pÉtæiq¦N¤«® Œôˆ ë‹æàý‘­¹]‡¬û†ð¿^‡ CX\ñ(´sO·\ÅZ_=bý Þ±¨«Ã…u‘¸ÛRÚ>мÜ-ÔXJ%‰<=¡%læ"‘ùÎÑ5,ïÕ,%»?tÞ«vPyQÏ H½ó8Vs³76YD$µÚ/aL΢FïÖ7¥³Aír}ª=5Ó›JÑ!çùëΰUöR"Ç~ÿíÀC˳G¢çÓ“9ö½)2Œf¾÷ù‹¬–9FHòìÜ Æ×©ìñ*|ü©Üå*T¨PᲘM¾`ßûâaüŸ¿44àhuËòä³C.rûõ8äGnÉ M2?þ›v[nkÜvç(ÇR÷ÌTš#ôŽQâó}­FŽ—J9¯‰’œÌ|+ÀdÞôjO@þÚŠY·µ$jLF³e4K\¤jav б}DLæqÔáÀMºf8Æöh‘VWÿ1C7Á®àÐþ®»2\Ð;¥‹çà m“¿º³ÞóÌ^ï–¿AOöçl ÓȘ/\YZŸn¨Ê°¿|ȱ¶o•.,"'p'Œæ€bu‚++ZúúûÍ?ùwONÜiºíȬ³Š,¯®Ê : Ú•¿ÿ5+gSh•×d±” çól‚þÌŠ±x«îÎec 7!e)6S9[$-°ˆ¡qX)§X—…¢ŠNž´Õ„ª$l¾D^œ@>ÚÕ*o #šR-΢ZN2P<TºûPеþþõŽó¦.1^Dâè³–j¢íÁϱîíÉwsM |K°”V:‹w¯9“̛ƊŽÛ£¿:jágg¼¡œÙr%žqÄó®V9ä*{â/f—ÿ [EcåP¢ÎÐè"2’côhýÒ6rzœÿåvÎP¨f~M‡ôjs¦¼ˆM™FãÌ{ÓLixhã§½ÍÎè×W'¦ ; ½c¨ÅFIëãɢåµ3¡³IÉaCk,¹jRþűöOu ±ÔE¹jѼRå±ä…Pˆ¸¥}öû–/wgzd³©ìqHu5À ðâû¸¥¡j}ÙÒ1<'‡àµ3¦ÜQfÝ© K4‡|só¬Ç&Œç-c ‡—^|×:®Y¿µyÖ½˜ÌÛ‘Òã)äo~ßftµW,*|"¨(™ *T¨pY8fÓ€#ø}«eŽ9 àh¥Å/îï^Ûz‘ÇhK›J¸Ùòô>¹ŽÑ¯G÷'Ã+²1µœFúÇœ(ÍÞÞ4É+ÔÞ^ó,‹Ô°ÜêÔùüŒÕ¨[;„zg–AU ±r+ f!+ÐA@ÅØ„­C$F-brÉÏJÊ Þ¤s9ì–p>Ʉܣ½`µ¹£Ç“ž.™0{§Ïf½á@1!!óíÝã}ùêÕ:e[btçÖõ«¨D¨åòkƒôG™›–fÞ챿7À´¤j¯´ºQ¤#LCk1+fˆÁ¢Ý¢›×o{4tàÕ¾=·ÝpQ0aßôc7ÊaŸtæ4rÍJ›$Šª€ ‘£y<–a¶ÖÎkÕt#ÿð˜v.´B…=%S¡B… . ÇBÿ‡OÝg±k—/4“YQŸzöH¸¥`r[.’‚L½1üÖmý31lÇn–¼\ÕÍ‘|cÄ0Aƒ]s› n€kÂt=@ÆNør²¥%MÙé´nRª$”" ƒ@ VÄ1ݬlzÖ Á^8 $8 C:eBhgÜᥠI å² Hçá ¨ÉªzSL•³µ×¦Mþºá½8˹¦ç­–©ž’ÅÍsÕôL)•eŠ1žœZwwÝðPü9û)¾ì^ —-ƒyû”ïÎÎô²Àl—;3‘p~ç˜_”ß?UîXBͰN»õ)]C:L±Ž£Z·¯q ao| ÜvϹq^8Œÿó—xpX„ÙY¨r›Æ¢9ˆeÙ[j²SI:äš/Ü— TUTH2Náâåës41t@çņ—ï>dZ}h4pOä Cˆ2` B˜@.—qTãì†ÉÅ•â¨&‘ 5âɤf«ôü»††Pç-žÍ¬:E‰:>áH2+«²_ºnº»GýñóT‚óYÃ&“Û«±%Æâö÷ã®/mA"?˜eîZ66>Š×¥!–>=N>°e豦Ǻî«íŽJ‘@éº.àËØÐ$³¿›‰åض\íSº¼S=…P-?«ylØ"™r#S̶e¢B¨ÄD]Œe¨ÿýº AÐû®Qí&òVšŸœ)íϘÕJ™©ÒýߤL¨‚chI%û35§Ò·\ì¼zd)i…Wªqã&&ñÞˆ{S]rmxžë®{°käB1“Éó·“a˜r¹ +ê’oï³ë®5½yÌHJLg;qw×äôt9W@æ•Ì©1ÓúÖùK˜Ë(#MÄ—n¾Œí7õM‘a‡²ºùõ úËí“—ûÎÍœúƒ—ñë›Ñ¯ö÷sÙ®PáOŠ s… (*.Ì>ˆÄeä§;‰nX¸O"pÍÁǧÜM¾Ì…¯¿5Üp}U4hËùœR[µÈ§àà0ÒàÅ<Ör™gL,ÚR]Y¡~zØK3›Û2›;fí&ÑŒ—¼D:ˆ'ª±Y’õ@@PD%§U8?Z”Ô@óú)C"ä’Ág%¾ Ê#VõЪYtÈæ :ùv¯c}CŠÀu à ֡álrŒLOê8kŠ—| Ll¸äoa³IÅÍb†î{?³ì:{“ùõÃf—I·[.Ên¢4É#%ž=Õ±„Ìnm<‹™]¨Ù†œ­ÍtØ¢.º(¡4Ù›‹æë,Ù:gê¢î©›Í¨nÐ;^V›Ú€ G&‰*4†U £ÈëNVÓBÖÕçû¯mN¿ÛÏ­oÍ‘øüÆ1t—žKbv[!¡&™ áüF&ƒ0;gÃëý3Îü¬Ž2h€Ã€< ×™³ªšPcQ%C˜l¨=(h(“1b=2;®»³: ‰4þ×ORÉœ†1\«_zý]\àQ]G?‘ öe|;md4“U~vÜ?kjôÖú¯¯/oŽ”%s%Ë—ñíý¾»—D9Z€Cƒ¾Á’ÏÆ¿¾¿ïZþhÜÏ#z:y÷Ú⩨sD¶Z£sS" Ãç’[#R[­Œ¡0ÅžÚKø›ÜÊÄdÙ¬Æf\/À™1ºlqšHéù—EEA—Ô«·¯ã1´±Jîj6¨­F,-õC“R5Uî>­ÝØ©ò(õÆôÒ‚BÝ>õaðjž'ß57PŸ¥thÄq}KNPÁa*â¾kÀa7U]×ÅLV;_,ëa“rx”Óè‘nÅ•/ß0ÊÑ †"gÇÐÖúù/ôgï9ïY™€“#ηN;\™Î”˜fO¾Ìôúkc@ºãšlµ]þù‰À_\;u9‹êDûÎs$‚aù™+•lU¨ð_ŸŠ s… *Tøƒp¤»ÝâW¼V¾7îKºjÝó&Qã)—¡aGrîGŽQo^™©›’wáÖ6Øê‚ã5^$ÞêöÆy"bSß4ºèȈ@ê"È2˜‹Ã<ëB‹Ó`&5ÉÅ2 K˜(DCUQ%Q,¢RÔæòP·5è³B÷p62fÓà™¤cþ&C3œgßÁ 1]QMCº¡¨†aØ{ÞÕ^jàTlÝyo êÃ7¥ŸÞå¸ÕªÌgq–ÔE[yXó¿Þí² 7\§&‘.^1Êå²&Nx<~pPîÑ`m[9ˆÇ'ãÄÎ#t[µÒçÜÞÀ`9©c©À>ÿ´ðÀÃ;Þ÷<°ùü¾™cÔh^u`xªD¥·MH8.¬À)”WágL¥T‘µ]ºh¤Rq§O ¶êâ)Þä€6פ™’wDÛ7y†½,‹uáÌÚê˜$ªœujy·‘Ãü%„€“¦ƒ§ñ/ÝTúùË}kÔëV«–jC3ìOšÕ²FÙ´¿¸~0¥Ùrª¡¶ÊvïÊdØÜ®ÙK³-¹c¤f0ªcÍØ¹ÀÝö!óßÞ4 gâ˜Ç^^”öóô¾sý_óÀ«#-ÿ]~§ÿøEÓcôºj¹®VuJ'y¼lõ¢Ä“oлP4|tpÄž„wzPÜŠùaÒŽe¾öàùý#w”ÇÈý–ÛºV F¸ý㬭yôArpXûÑë´m»•”Wº¬ÉÈ$¦ùñŒ­3õ°ÒtšsX˼¢u†¢fJúͱÈÓç.ª,” ÎJ›­b1>Ïçd]Uê­’*j‰,í±‹F4‹(0:kº³µ4÷‹_Ù2>·ªöôÛîõÍÂWï˜w, 8œ ²- »Ÿ:؃ÿÝCåxÁÊ—Ñ *Tø$P‰ÉT¨ð‡¢“©ðñ@’b 9z»ý:\ØB€Àµß>î $@¨;^wOó$GÏA"qÃÐ Íÿæ)ìÔ ­«Ø© KGH¸¾#Õw-«¾’Oî9ܹq‘¶’S£¼¯ZÂ0I(•ŠÅ\±TÕ¼¨"Š4ȬÊÛäø4Ñà§Æ&,!J_í󥜹i¦\ÄT5åäƒ4/`ù8ÂtUcR1<;fb³[+¹@Jå`f¸Qμöû6t¯Êa8–÷·ïŠ^;¦s›;G³‚Êó‚, †z^àÙ¡Áž3Pª_®ª[|;9Hî9F(b1é$a€æõ!8©?½K¬koí¸èuDÕ /ªù9-8ŸÂ¤!˜MÉ*¥¨%7•u,,•1k<¥IÜ6Rð¸Bóøë³¡†€•*Õr™=™f ¡kÙDN£.ü ÅÄ9öéxFcì ñ÷ìZz” —J‰7>ðeKØçoNŸÅϦ¹Ïo.j@ˆ7O(ž[Ú¤kóƒÓ¡Qó±A4ì$î¨=0g ô¼úRTl× ý ]³Aû|ÊÖ©1wµY­äø22=ƒ¯îPI9•´Z˜Étµè­®Üé”[4Ì6}ém@`ÁdÝáwÒrg•Àbâö=ê¯v¨+[±Žfä›±ióšõV»6‹\àF@àwkíuê oSgbÌñ7‡¿þiÜnC,NGmy~x" Œú½ «äOÁ10ÒºmYuŠDŒÞqû²úr¾¬€+‡lâ«§Z·›DÐu]U5Êî‘‹YA$ÞêñOæ Î¬TUq5nýÝSTmÐ`Iù7è[×ÈðÛƒîeá•£ÞŽ¿ª1Ý?fùÅ1W‹Gûܦés<‘ø—}¡­õÅ¡¤¥ÙQ*_F_{—˰Gîä9ÖòxÀuQkÚ þä¨Äd*T¨P¡Âÿe‚>ø›_`l08ö²uâ,)5Xr‡«±÷œ~%33kô•lé€ÄòØPorh€æ(†–Ec8‡×[倃g)ÙcÑ’E³Û\¼Üàç ¡ÄعBJa¸ _W4² €f0îcCŒ4[ 8Ðt³ ±™1kvÆ*ÉE•»LYU‹MNš†¦&u€Ô¦Ï²Ù¸{ä›:‹R¤æ¬"#5+¬â?õÜü™¥"ôLÆyC‹Ïon)±Í5±%§åeêFºš³|=ÒC?õ×VªýZ]µ"w,žvÝ2û¥w½ÜqÑóŽ’Š¾ÕgõúÎc¦›—/43àÎ!&¢œÏ3y.Ô$YC d.¢SRÞÙvaƒ‹7¹ûúKu×`}•V–p˜é±É)ÕQß>ó.¢–ϘZ Y0ýàÝЃmÉ%‘ôÍpö€yWªFUˆ©Xç) •½±’÷¦Îäу³ÛnÔû'¬Ïìõz-ÆÒÚÒœ7· S‡Ç¼«bT°Ö¼^ýu·ýï¶Ž@,‰wD ðZKµ6m@ ‚vÛŽ=ùûnï¬éc¶Ã»lƒ—^&Še”¬Fg© çü úÀãB²©³eD“/ý Ç÷ÜFÿËoËmµ Ç)Ãåš)Éu§«Ÿ²ež|N€®Î‹öE½#ð©›„CSr²`ò:„Cg8AÌË ·¥ôÙUãÏ ¯ɹΞŠÈ#¢Ø«y¿ïËßÕžË#6G|Ϙ\U_Ü<¼EE”/£¼HçÈÑC¾¿¼af6Eþ?/>¿ºpG«Xeç/œÀ[½Ï,É4òÿs_㺠ªÑø2úÔæõíRWË|ì«>¨Î&ðsÑ¿ >!T”L… þëòýï? =øàƒ ^ß½{÷‰'¾ùÍoþQfõIÄ0ª:/ ¼€y¤PBA‘i åг)¬Ù[)Ñ(á­³¨ë2`3i­µeàmÎK7‘e¾»Ë»ª‹;qFñÐÙ—; à‘cËÕ(B+Iø"•!—"Pn«’-£xOÞª–†ü+€ô.Ã0Ó†n°™(VÌâù¨fº¦†AšY÷hÎ`Ù™jülÉ옪) GËè¾è¶6òxÜùÈòÞ«™ƒ‹›¼½3¢ÿ_×À¦‚tlÓjaU'KâÝgñïáíµÚ‹Í?ù’~g °@̼1€o¬ç×?nÚ°Ì Ûseg]ñ$>œO^z^R AÀËÏ–\ž…ÃÊm¦‘’fÑ †ÀF#N‰¦qŒª›~WÕ¤ s#ôÎLZÿâÚɹ†•‰41”§V­¤Úm)™ ÎŠî±±h)>z[GÆã¬ÁøíÆ£÷eV¶âñ {jÒúöYw‹O,¦°£XçN¿x¦i]5Àè¬å\#È"Ù,,%7»„&‡þêQû:G¾»Wëêo œÞ•lGñ¦%¦…I_4Z¶âRZ·¢$P&ww×ïÂút- XMˆÀ”ËÞNÏ0>·¶þR¼³ÚןÈ@"s™f?|J~ô‚cçS¹ÎDÁãÒaÒˆf¹ÎšCŠÓ)àüà,%vÕø[½AÐ=Kj‚Hün'#G‡6x•M«Ñd.ýÊ ßC뇟=\£‰Øs‡ƒí‘t1&h(™ŽÔ¤ÂšÍ£‡t1tÃ0 Ç 0š$(•£ f®¨q”Èx ˆ)S’;ºô×ö!oî¶þùW¿n¤£N2Õ<Ç´öâ¶í?ÛX‡r¬x³§ow¶ C›ÚÙ…b¦ŸD"† Ÿºo¬ƒ'ŸW6]“qre–2°ïf(Ajmcz¤†e ¦?ý‹7±GïQ98i¬ÇAž|^™3#Èýë5è æNÍØ:k â-ϤÌ7>ç”=KÉ[Úgž=\“ã±íƒæÏte‡úƽòÞÍ(¸m¼—“cæî%³ßßгš&’ß{;„âXÄ$†ñwO_X 5çˆ0Ç+Ýþ{ºæ¼ÖÒî!÷†&xy¯#šEÙš]Pñz4³x-M… c*J¦B… ÿåдW¾é÷û{ì±W^yå«_ý*ÇÍ'=þøã=ö˜×ëý£Îñ‚¶…ð/Ü%^ØLæRº‡hEʈ `¡&IdéïîôþÕ-q]\ŸŸÙïóŒ¤<ŸK>·òý÷º‡µÇ-ë›ù¥…E7‹yó_å|eÚÆ QH¡R eÉTΘJ &;&#lÎÞàØ£ë†.«:FàŽ!j¾¤ ¢2Ó‰ÔlVVßIÐNys¨}–#Mâ̾hÀJ×poF.˜hÉã®<-×¢ˆ õ½XW>ÊêyŽ1öœÅÿåË|,‰ŒÏr»’_\òúl$n˜Šb!Ÿ49 «j3íö³ÿcðÎÛ›'ݦóËR"l&!Ë[l.±@Ép¥xÌTõ…ž¸çZ™\¼–׉•¦³ÉlÃŒ¨€¡¥\sôàpÃ=¼&Oó¾Wgj¯wÌ´¹&'ÔšqÕÍ$Ê€XÔnh3n´ž¢ñåÝfà ¿þé‹2ß<.xô^ãÉWp@Œ®6­;ò˜Ô[›Î 9œtK0É2‘çQŸIñ|Øåô$±²}>âÄR²‡U:ýâ®nÛ­› ;ö¨÷ÝF0Xy³½o?߆ÉM-äEb†FD!IDïIÚ:ƒyŽ…Ž´»Wë›"7™#¿HjY"…üö]äŸwí•«ºˆÑ*2y€ùíîò“/cºô®vƒc‘®Ìb†'ŸW6¬ÀrE¢: €×Æ'κ ¡Šù÷øÄ…J #n4ßÖXê‹ÀíŸnÐòÓ˜\€-Kb¿:züÆÑÏ,M?sÔ‚± ‚"“¼muÒc¿(à6^"ÎuÌ<5æiñ–Ý6þÜú4;ùo¾R¿µ&¹mÓ"Üc€¡óeäÊ¿¤*|̨´€­P¡Â-²Ù¸Íö¦Ûýf©ç8îŽ;îxóÍ7:4÷îsÏ=—æ›UøƒÒ0®Y¢?õºù Ç$²t4 __rúPºêÒ·¾³Ý3'c šm:NS³ XRZScl\)?¼99¥~ü;ÏÉENDª¢Lp„(hŽÐ•g+3N»’©Ì4öõæX¤tÖ'L‚Äœ=í÷çì Ρ} ã’H' F‘BÇ&Í4<Õ†êÖ–—l¤½6 Qˆ£û-»ž!û{^=mþFçзnˆ~wúËèRWÕIE±ö;¾òúG¿å^z‹Ý{™@©ÅÿªR ¶§½F*Mrt°»¸oµÌ±F]¾i­ö¹¯‘̵{¦5ׯ”ÍD‡ðe—["^CÝD±íüB–¨Šìx´p0ßyœ¯útõ« ù@[>ŠšÑEWr¢TFZ—¼B.ŒWË­»í Æú¹LxÇ7„;~Eµcö sîÈ€º¥[ŠùËa_­9*MN[7í °ç‡ÝgfÙ·ñ…™9R°¹%Ü4@×Ñe§ÞªðfÕ 8,ëj\] áôD….œ:Í¥ãÜ4*˜üíýªÁ°-Æ/Å>½ÒÕê.“¸*ɸJ«ÅóKc…Ä5ÞgÁÔ¥•Ð&ˆž~æo“_ìã7J5ì¦èd±%™ueæ¹ã§›ÿÊsïnLìð–St¤Œ;iÌh@é¢Ìä,3]³ÝÔœÿò Áû¶V·t¾o EisÎÑÒ¥)Ÿínª!^T–KÇD.¸˜Ø­8ñé±Ëá.0ÑÒ¦[ܹ9R,e›·¸ÔnªÌÒ¨Éz£}Æw"×߀åçTøâáÞÉ¢ëNj~‹¶ò#¡[›r2Éš¦ùÄëÄg>"5EÕ;å7©‘^>jlqøÜºÂ9ß^pŸdϧ/¢€™25£¸*N Év'åòYrÌõ¹~¦Â=?à{¤kê®ñƒ„ã+9†“\ÔÙ];&±‰Céd‹³´&f(EÆu9WIl6‰uolOq׌¢§Á™š·׊§×ީ״æ»^‹ˆsšÍ眡j™ñŽ»¦˜–9Áck¸–1ÎoæÆLÔ\´ÃúòÿÁ‘°›…—.Ú~ûît,øAís¢ë¦ÚJNïè¨;Ï**ö¯ •·.¸WuÛ¶¨Ðèɶ¸2A¢r>íšDM‹RÐAX²F†(±U™òqÊJßÖ!=mt·á@ =ˆæ!®ã¼ÓZ3¤¥¨¤£(»´Þz%Sâ·lsj…í2_=msliŽØÍ.4¼¶ÅacM «ë7g]L¶¡Þ°(ÂAtqØ"0ØÜ…­ *Ë¢ª2r‹²Î≰¦äÏFGW©]ñl¥csìwOñ¼Ës1GíG¦Üg‰‹GM¦í¤)©ØB™huqÚÝX;:Æš ­R~¸l¸¼˜w2¤t ³iwºÂîn[A&~x*P¬Ÿº=ų†—Ó_ mM\Çœp .Œá—ÛnÖ©óoŽº s:uþm“ÏO57A€®ËL¥…ZÖrÌî¹ç¨û•ý+³Æ];+Ïz.L¹6·”®þèÙsÔ_þâz& KÈÛÝK—„†xN{õœãá —°¯fohz´ÒWW²~¶ônéšœ4ž56·×Z¤‰yú¯žuïíV6\¥8 ……æ™N“æìHqèy °2SÓ´Ï»qy}þ=–±þ‡{*ÏðÍãÍR&:~Æ>{ÚJ´æ#]Þ‘Cs[Â1D`*ÉdÂ}Q\0ýã‡+¦ýélß[KM¬|`‡òüÁj8%¨ ”"훲^P>Üùì êë w­_–Ñ7·6·²ÛXÚ7\ˆ´yÅOmÏÛ¥&`‚N/¤ð‹³jªˆÆ2¨Õ¡”+Ù®nÇîþJ¥B~zzõsà6Q·â¿ýVô+á#ÔGwüæ÷‰ñ<÷øâwV_”}^œëz´õ¼¨PY"šÈœƒ]zÙÌéN@ h4ªJ¸)Œ{V†¦øE…š5sXÃ@°h  ƒ£Ð*º@ïi3ª5ºñÕÆ;9Ò$4ÍÆ8dhmò… Oj&åZPÙZúOw¥®ëGÖ4æÛ³Ÿjóq%øÐ>ñ›?´Âú;ÄL>:G}ñ®ÌÉ™À=›«P-[{ø•±™¼êJ«ÎA)¥«Mñâ+ç]ŸØžúÖ[¡Î \2ú{q AîƒáqÔ¹B5GÔéµ+Ž[·2:i'´*c¶éÉ^µþ+IVs%wâ––‹òÍmW|çÚeâ¤n0æ“ÿgjÿßÏÇzúcwKû¶Ç0Šð»lg—1’§ÕQÍ=Zk¡ìd<[Ø­"©4oà$ð´šð–Ú¼eIgÆËKÕˆƒfW*á;•„_KçÈOT´³ØÊª™KUì™Íqo½K(šºúW/b·oãhiú.çéϹ)XJÇúðsÙxfÅx:¸TpJÎJO®Þ‡ªÚ1³s¥æÐ-¢#7¼J'Kœ«ÿìÿ~wÓ'‹ï$ÕUáq%LüD%©/í¬¾²Ì¶$ƒË-GMÖáÀeRT‚µº©›ÔåPÌGÆÂiýÒ-£<óAK¤’μ´Ø}Ã䚌Y{|ÝI-_&ž=ê(T™û¶VBnéä¼·Á©ðŒzqÊÖÒ.ÉAÖÂL>NB‹VP÷:\,R$«R¥÷o“þÇßë³3†(X< ÞðX¥ EÉ•éy¼”3âmnÒÒÖRõ,Ư •'…®¶õ‚¥ ÍÛ'ŽV÷ù–ÝöuEͲ,o³çòýÍ KåHEC¯Cé¢& (_D>7jo‡§ÍYÍußNiï&BÄ*gohq,ÑÚaku)¸&Ý×™¹§}¶?œi䃎ªÏ&F9㙓\g=¿ÂŒÎá]>õÎþôÛ“®=QiUåîÛ¢«e±J9ÒYY’©áYâ\ÅÓj+Ÿšîk,'CÅ ÓÞ×/¹q¦9z£´—ÓOLû¯6k¾ê÷Nb=-æu;ØÖ©óÓO=»¬NŸ"êJæŸJ&“v8¾’HÀšKYµ ©Ô4À]x’­"Žwèï×ËœñE½ùáce6ç¬RŒ¯‘10Â&›Ï> ƒÅâK~›Tp®\Xè¸eM{*ójZ|»Öù½×‰7§Ü›ZL¦©qk·÷3Âÿð|Íî3É:Ô§ÒáGïuH秉ٚv¾¾°­šÎ¼í)-Öš¤!HÜð•W&ÉVß¹I;ƒo½cîëSƒ>ÓíÐÃrÀ£Í,/žÀõ>­–“Ÿ´]üîA+æ…C¿—?;Š?µße¯"*úõ¡ï=ñ‹ ž§ún‹ÁÜvþ¦5Þ¸+}ªØz®ØÎ7åƒçªµ+h&=“NôúN®5÷€/OñF° Ŧéƒiÿ÷ùWVöŠonWLŒ¡¦ae ’ÒÐ ÕeY #:b. Niq7¸Þ²{)™ ˆ-ñÕ~%¯ö‚.ÏûöÛ¹“80ÍWD²-!¼1æÛÖD®ÐÛ;¯cÃÅ ybB¾ÍŸöõ¡CãŽ;ŠXíòTú{3‚hML[Ͼ$ŠäðÏt`1"ä] ô*É;,€Æ&Fª,©íÛŠóßÖ8¿`âÅ•Ò ÷¹;s×\‚·/.•¦³ÑÙwr™jdä Ň÷n(›.ÉôŽâ&ÇPMY­A’ÌU­ùutp©öF÷…SYï>#“µ~÷«úÿeâêd¶«ÙÜR* ÔKc(°ù­*T*º¥AÜÞº\Õì¯ÍûZ}Ú„a{iŒf}÷‡šJ/O…ɪY«8™þ®é|­öEK'¦ý÷n¹N‚YsƒµœB_=ǬÎÏ u%S§NŸ&'ÿ(ƒbÒiA€já<ÀmÿÚCû¹¦RC.ÇÆ‰Çh·wä^Š}|Û,G+ŒTïí²!÷Fj„Ë=¸n‹. i-eÓåÄ®¿œÏ’r‚ªe%nEjâŒró}q×ÄZó Іªáx„™ž~ˆ'f©'ß`À2?v» ‚‹A^Z/Q\AeË—fñí}JÃê}êdeóm6R^¤«¤­eéLO^‰M‚ÕìÛŸ¿i¾I:;Øó(” ÷€þoÁdq1±+9÷¦õ `(l]‰¥«X5eÊ&ã%¹¡IÕåÀú»•bUŠ­ñîT¨Ã.x!È k´½èLäí!“B˜4zª ƒÝà\æÚPÍMžÁì/ÿþ·èß|P à÷¿þ͇–ÿg`î™…]OÎl½'1 >Þô½'å° ½·ÜO,üñ`[ÛqìmóÃJãˆÖ4_µL“DåË/i4KMŸ­Þø@p ÀV+4 ¿T¦£üè»ùýŸ&#y±–+ N?+IZX^É¢ÝZQÀœYöc)Yµfã͆™Ó·PG}PÛœ·Ò½€ÁmÁKï·ÃsÌ}"€ž8ì„:|ÂÙißd™¼º#ä•W‹VíÎÍ®0[›RGÙDCuY —>›-äbòÝÎjoEõïÌôÜÔ¼° Fó»¼m£(VWjÐÖe§cgÏ×–†r”Ͻ+X[kû#ì|-°ª¸ÏÒ~ŒïòU{›Å[Ó„"DÆ,;eªn«Æ ¹•\ì4J¿ñuã·£«ªóÛç]-NýÎÞb2R™ž3¿÷Œ6¶ \B_}áƒdÌ#)ö£í•/²_¸U$ì뇩‡÷V8å´qfÒ“ßòá4ÂH f+ÄTÖþ¥[–ü.A°3ƒÌ_=Éw7D{Ð%¤'ü×­–‰†¬£§¡¿çFT§ÎÏu%S§NŸ AèíýÛ³gçàÖ[³·xèзÛMüè¯T<þcºˆÔù¦)XÜ¡2ß»Øò™ë~P¦,NßXåéÅ©¬ï{Zöw•gÍøæ÷Q2ã+ f7n—äsÌÏ_GÆe*ÉQÍé,Ç3V—ÒÖ¤Jô«ïp–e~ì+ë4¢Mv9µžÝ4²böåÏÙåÊæÛyÆX“)™[œ4ß9ß~ÞtíÛûwX@¼TƒKir—›wðÓ5ƇÇûB…ť؞Xö\ 3€p´êk¹<ÜTÜÊRyŒØWàØá*ãµw×WýU’É;#yg„ÒZírÉ&‚¥q ÔXÏS'ÿ×竼^q›™ÑŒÿÈIâ†]ÄsÇløYÅã0àtŽNYM~²áå¹jû‰r·Ûlzôñø¡×¨sµùÛ>ò»M“ß?æ{þBxw27BÇzñM®Â³„$è,GÊ¢ÊùÅÙZß­k#¡‘¬`”­’O\|N0xTN zÀÅÀR^4)ð}^5j2²)"ê˜/-‡ïKŒ•ûé¢ÿ–øå•×·úßWÆ Œñl–xÖ€ÇoËN.Ú^¸D$Ùêy_ó€–Pñ;goìÔïì+MÏ3ÛZÓßøÇÒ¯|Ò’h_…o q‹µÈ¡²09×ѽtÁ,¤k 01'S+dpgÀÉ9ßx#•OÉÛ¶qß|]~øÃ®a%0$øHdÅ9)áÕÛ›ÊdÇt‡eª`Ô ÁZê‚Òå{‚LN®zmÍö×Ç`w²ú'¦/­¹ûl˜øÚsè«/È܂öo™Yqt…åý}9"¯³yâ3·(…ƒ'¦C÷yæÃöbmÉà#~Œ&ÀP´G;Ÿ<ˆïí¥ú»Ô›wŠ;úP*K=G­æá†>½-©ó¬ÅÑꮆòتë½J†ç`%gÖ»Öùù¡^'S§Î?õ:™Ey<žd2™L&[[U‡#ér݉D"‘ÈÚ½½½õ"™RY ®Û¤"謑@½:ݸ9œyöM·¤b¿tWñ™ÁÆÞp)æ)‘@^öh6ÞMé<\_¢ŒN‘²ÛßnËh¼/U/%3è:\»VÃ-£L»]S«Ý&A"‚tùÜMMžŽ„ÌÓÒ‘ëÌ%ÆÍ),-Àô<¶»ºÜâYÍõÝĘڛ“Ážã/¡í°IXûîäø\KÖWu ÍÛûŽè½;™q^5ð„ ¿hPŒÀøl¸ ²Fjs_=ªo¾†}öörw³þ¯ðE¶Ç9s%]ÊÀ ‰¶•y… ¼Xþ÷›†\H",s4å:|Ùå‘qõ?~–MÄ=aÈ|þ4w÷VAEdwz°ÌfqLÛ¨o«3ætH³Žùy©oûVÿRëÀè!­µ®6{xá°æ‰+¾ -½ A,ÎI ­šÓ èP%úOýo%_¶ì^|ß>ÀðYÕ¡™ !fŠê¡"+¢¢À<ăËc¾™Ç`Áwó¨“*UjBôx9ël±!ÉÖ  ¯¦ ºª±;íήæ>ëüÔíeŠ´`­zÄ+39‘g:ýš×®_×E€$ŒÅ¼ÃËén»thØÓR %ÄFˆ/qr†0d‹âýI,„ášÐÐàrÙPÐÏëª^Öl8ÍŽ_X.оpœ¢ÑÛŒemTGPmpH^vÐ:/¥CòŒWO¹¬Í*Û¡LÁú['ÈäÉÿ¡aOÜ£îk. æî½e£ë4A‰ímGÞÊö4Âè4>‰–!“C¦t]]£òý¡» <«¿~ÆfksŸÔ>²MX.ÚuQ»˜¥h“þ›WðŸ‘Ê«$Ç ³,KÔíaþÒˆ-Ä" Ã(Ò zõ®f½§ÅȱÞ&E3 +Rßœô¿×Ž™"áôk­LèJ:?ÔëdêÔ©S§ÎÿÏ”*¨!ò¾*z£ËC_z²a—¿úàÍØ/?9Ôöé­—zÂKI_nQ ,¡ˆM+±Äu$Êà$jðê²`¬åq %Ñãä¯gÊd)*ÁYYUyâ=$o7¤RjqšМ0ŠöÄyez‰¸£_ —Ò§0Ï3ÚM¶3ÊŸŠÜÚ- ðPë<]X ïÝpr‹áÆvÛt1â@%Ðt#kztWg¶'xM?J… [ð/^J<~k­‰.ff‰?;áøH´:<ô1U* z­ÈÑ„“†ç¿Q-¥¤*F­ršöÆóZÆŽÍ´Ýem»Ñvö(?üŽmÇV|ßÔ½GNý¥´O°…Zð>rq:úp¡j1zJ¸õžµër¥Ü-GÿD®Jd,bëmXBö¼å 1#t_‘6¥"ëd$ÊÔH¤Tt¦f¶ž_;CJvîõ6ùg+Áºz¹nÿÂ埫¨¹_)uÝíy¿w¦é·Èê¹qkú©Ãܯ6h@¨Õéim±ÀݼÇbl–Âp„H0IAóXªlõîjÜP¬á•JÁˉ¦®!CÅËU M–PÒõõ9‚LN.;¾sÞÝìÔw7W?ÇÜÚöˆ29X‹Ý]ya, Xêö~¼! 7ﵪ5ka»4¡°ùœbœ]!)à–`¢€Ýh)Ÿ<à~úÛ¨®h͘–^žòw³Ÿ¾»ú»ÏÆÀ²šìºeZ)]§Ô/ܪ-f™ø0hq`BwTÊ—aìq“»²\Í«'éxÒõâÅлi¶UvÆK7´åö¶ï »Ž¯ð­n³#$mkÉ¥ ìbŽÉ°é!í:Bèt–íK¹‚!uÉM“侓¶p‡ a(LtÅpBBf! L@¦¦ÍO„•×Uí/R(ÿ™‡¯߀¶Y«gf/oMÀÌdØt•ØÝ\ýòGç7Ĉšh9 èqS!5aÇ^Ç ?­Qã9à9ø ¹Ñ¼y""ZNcß¹ä”2ÙÁ¶'ii–VD_“û¾Û3?8…F–¨ñŒBðB¬Ó P!í܇sUïmÍK†äžW½&²Ë«5¥ˆ,CΟ»CGˆhšùì» "§SãE¡·ÛŸ_-6„u;o¬gK6'ÐrÊ øëb¦ÎÏu%S§N:u~rž=ì€?¸?ûâBÂÑš{ÕÍM³ÏMu†ÕµÖ"s±Bu¬J¾™‚ÿf×0ƒ]I×Ë¢O8 µ–¤6Ç™5 wã`ƒ˜¡LE CU<¬úºøìè{‡áäiE¬&•e:7²ÿîß}?øf&#¬}ФOY W•rl<¡sä¶Vqž%2UÒ~e»®*’²âèr‰<˜ (‘ÔDOÈVɆkت-xW&¸ý"zò0ó«ŒÍf½oŒù¬A×ý[Wnƈþýíóîç˜6·|à¦ZÀ«MB'eªvCpëù€žpç%÷²Æ"3lÇ·”V¦‹d F;gZoõd<ƒ¯3‘¤˜•N-zZÄ+¯|zWr¢Öøþy[šmœÉ!-£¶öSÈø7EÚZc©Äþ¬7ryœÓdÇ2.uÉÐU 'I’ÀA…EÅÞÏÏj¤­b9x(ÀB%DS¨Á‘Z;%åZFgòþožï½µ9uÚj»Ë9â&®#cD•žÉûç+¶Sf„Ì5…ô°£xï¦+MQþú¥ðÃûŠÃw6GÝ„dö…ÓÛ" d(¸®N|‘×l¬ SûøK“î»·K5Z3p¯KV Æ¢1ž6 £V®Tq‡ƒ£Ì‚J¶Z˜.¿=à²P5ìÇ¿ñúÌÏY`qn£²žŽu9³'&oNT’‘ây¶¤õgñþcÃvÝÄ^+âÃ29,à»&bÉsÀsÖJÉyOgmÿ#UABïÛL]wÂS'vÌEšPʲe™-¼”.Óß9ѨKòSÇtgþÚ9~h¦DpâÜÝ[þÂ#)AD³ú±óؾÍR2fÚXmxšýÕ‡«Ï¼Jìí±WQtÂJ1W²V³æð¢Ñ0Þ6TËÔù9¡^'S§Î?õ:™Ÿg …Èݳοç†ð¶Fkm.¸g;<óîª$®7;Š#åˆj²>¦LâF„—ßXN¶8Š$®ã ³¸ÉÙI§^TFºñ2L/²Q‡Õ+/CÄ…D›‘G`s¤ðÚi†BXÈ«€ ÌÞ””g–¸Fvˆ)­Vâ­ï‰ÇF»Òøâètbß¡ÑÀ}7°ven¤ Gq|šï0ÐÆéÝ$ÕmÃÔ.át¨uõG˜.­1Е#”M¦ˆ9ܸ\cdÛÓ]è V‚6íÅ3±‚ºùÝ#x<È?‘ku)nª¼ë ÿÂ%œ-ž áBŠ\œªÄíÅΧ¨`…ö²J-òäg*Îx*ÖÇMr¹YÔçg\mqrð]{›‡ʽI$E®³cèk•ŒÎgÏÿ%Á3dcÛàæ_\ñ4³Æú­˜"»qšmqÊZvnm DzY‰?"4÷1ËqrI[~ÈÀ¹RSW‹pW*1HÜØ+íÞòÁjW@.v¹®4 ’4f¢É Î'&ÚJî0/·²ùpmõC=ù>ÏBRvµêU².µd/îomÅfo M&øüÎð<˜– DB:k4nRP¶ÈÿöFoC¤f’Æ¥%[Zâ0ÎŽsöpÌEqô¥Yr~¡”É–u L¸UTÍøÆ÷«=Í2Ø}ÕEýºT_8Bõ´ †»AJeFæÏŸ ^œwÄ=êc7,wÆ+—;f¾Š„ÅeäsÆ-btŒvbµé²1v¶¯ ~ò†4E˜ ç§œ[êÝûjÞ©¨áæÕ#ä«–iåªVOD,pMtíK•5Í~vZÙß$†ñ¹[KšÅ¼t)ÚâWšãJO‹ùÂ[¸Xƒ±æî½2Ï™‰¨ùÂa¸{·v>xho¶»ÕÚ¹ >z#êiC©ŒÉ1¨©¡^ô_çßõ:™:uêÔ©ó/ a¯ç=Nãæíëq–÷&_ËöØŠ‡*ú¸Ò&oþx¶õ¶È%pè‘ñxœBLNè-)}ëVbÀ° ˆW*ÈéÐK˜&2~ïã·Ï¼;j?>ð·¸*¸=jfY«HEBªi6×{Ãî AM/O6߯ºüÏ bÔ{¥ "ÃrþÚ`–‰o*°Èvòl"ç€ mÌ¢#L…P„YHøMÉϚ˱¾F¦”ó$C¥ 2çf76 lmÐÛç\7m-%#Úãnabž~å8IÚm/ ’m.åáýÕ€ç:_Ï*"ó¸3G°n̈¡ZÐ*Æ)|ÑÎóA[-Ï—Ó¾ÉS‚+V¦úØå9LÌ×IJۋ«OörFƒµú4þÑ¿~ð͇SG½Ïýéæõdÿ̶;’V)T€E¢Ú¸‚V¼’D—‘9œ¥íU•¶°[•Z[ÍéŽû\Ãïê°Ù¶‹KQ³©Ì’Õ”,ÙÍìL®Ãm¥o‚@ðc†Ô«¨‚U5ÏÍM ¼ªð*ÁcÊ*ÿÆÙÀÎýÁã™"{ü¢ûþ½+"Pg(û:–.'¶­ý#ÀëÁÕÃoÞNž› z[«—&Ù—^ÍϤ˜Í­ÊbŽÍ ž@ ¡V5;ÁÂÉ»oÁ—çKcEÇžxC‹ÝÐØ„Â7_ÊÞu37?)MÌúw7W»qùºN×¥9ÓXÀwMX†Ö«9*ò¯¼zнiçÆ°#ý÷v kÓ3+Ž£³ôã;×˪²ceYö¶ù`lk÷ëéóÑöÚË“®É…Ú;ãeãnÜ^øòw™€»p§#.áùÁÈΆò¦Dú3èg‰ÃJsØxç âµ–kA^»ÚŽ™çàÐìO£.cêü¼PW2uêÔ©SçƒXÉ£ AÂ^=Îyæe³KÈû½ÓÇ+Í·»‡\jr¤Óšc¼šX+ñ‹³yGk@Ív““YF]E¢’.@e–P ,h+"ßäñ{Ù§³Ü;ÒÇ/ò¬ØûÎ̼ªÍ k.º÷Ä.LÓl)®•˜€ŽÑ>BÓ¹Šû7˜ã’8²Ú`FE4“kµèËçôîËÛXT’ kÚ}¼¶]f‰Ïõ%¸FYñ¬ÑÚ ¾vÆsa¹¹­Ì³F‡øÍwüM=¾³\¬XG/ðéŠ 0¼'¡ÅýªÓý.ñòáNÞÈHl ¹€Ãc‰¼Fð–È9‹Þ`:Üé\µ/G™]Ö4i…Ü<—.sÎóǵŸŸÚññH»öõ~¹-<–oéÒRpd@ kjÇç<¢ ë)a—¬^ŸÛ¼9>K!‹6°(ðsrnUŒQ$´¯'¥*)WR,‘Rö•þ?nýfŒ¨N›0b•Yo²q\£y™rÀ4yƒJ2ðÌAºßf4_¯xö¤=™4žÕRU8ZÝ–ÌL¥<_?ÞñÙ½c€$N’ÃýòCDM €–g±L¥âŸ¬ž¹Gg]¿ó‘LÀ£$#•E3¡óØÒÙŠÑá@çúÊ\³Swà‚DÒ]=¼V®Y¤m#^¸„íhQ/—òÿßÓÖd}ãyüæÝ×(ËÃDç}lgå©ñà—¿Ë?¼ký¦ùµOL¹¿v¬íþ¾•‘û¥GË?|S/•aG?|èføÆÓæGﺦKæôä#åK–Ýf´F°ÚX ÈM°<)íX9p–¤RQ§H¹°AxÌRŤªØ5‘ž5îÚQ|â ? ØÜZ~™ßþpf­9#.ÈdM"s|A¤2Ra¨3$Ç:ç[»™²Éžc:¦r–`š¦Y»ÛqLTÊmd]FXSúõ‡uä°¯Tl#”+¤¯zÌ~_ÏY/l¨‡!-E´(Ø×/?}Äùï¯R2gÇ]m/­d.Îú»#Êà¸jçŒ#—ÂÇ—èfNÌÑ.œÐ†ëŒíÞŽâ—¿ÇRµ3ÎDüElšèšñЕ;ÉÑê¦Dº5TüΙÆhDJƳŸy&f¬ozUú„Ô} –Åå>ûâ¡y¿c˜Á$N\Uq“²aj²äÃÏ/}þQ*goshy¯Q=)tTKÆ—Lyw¤šÎ¯×ýO^â¢ýÀ ¢FÅ>{a&¸+Æ1 F!27˜éޱ—;Ç+„§¥KÀ×€¾úP²K\0T¼`*N€…ÁuJÀ…•'•@w9$#ð§3ÙŒŒ[86²YW4i,-¡p 1W³úãwd¿u80“fÎá¿sO6àV®úÔàY#à†d¤¢LBé²m©hŸ(1fθP‹¶º…¨£ÆSŠ+©žÖpЀB¦‹2].ŠôÆJ-•MÛŒñ âì <=C¸a˜z¨9Éž}¬–y]¾qLÙöÀØß¹æOV§†ÑŒu˜.ŸÁÑnÏ»º|Ú¸´ç¹Í‚s^ð³èø”oGXy+í+67\3Ë2G•ŽÍÆ×޵íl(÷÷¤Û’èO™`™òþ³k]2§ç±Þ–%=uêülSW2uêÔ©SçƒMã<§€ ¡ßú;ÛoÜ'77ü˜ƒ$=‡áÖ˜ÞÞAŒ»Éb+—»¤¶lg.a†BÉäŽBz\°åUÕ­dªb¥êIZ–pÉ­ìE oI—ªv“£qQ16·U¸šP,r3+’7&ek«L ¹8Øå&µ” ”Æžœî¸·g=«G±˜°‹G’´¤_ãWfR6ÙÝä(®[ñj8­i&–‰ÃõÖ²Lj¢2ùX€ó…=$+h’8²‡t¸\3e”´V— °A,M­¸¦*ôdÙÄiüÙ3Á®ˆ÷IvV÷»„ çç š…¦@¡#À=?~$q!+8Si×|lÀjC b”!kX¹\¨ó$aA>­OŽ€jZB!@sã´ aüäcæ‘…Î{^i|l·cS_òEU ‡wúUв,]ä¨bQÀ gtEj‰8·òá&¡!¨$£Âv™œ\uûì®w‡è@(^™WÏ®ìÙ"¦!ø®Öãjϸð2’€PÀZ9þž2*CS-†¹9¢ÌÛÖ”ÌÁw½íXoVs|2ðË;Ó0šAKÃCQþó‡26Þj°i…¢Y¼Â8þëý‹<«XyÁÄîŒHîï&µdòøå{Ïù¿pS>©mS¨ïœi€M‰ôg ‰iìož×"“åïßÚD½ü†õjMÇÙªXðqØ‚b€®äÀñê›övÊÆzQΖÚ$RË“®n 1<§B@›Ëùƒãr鳯ÅýhaU³]3,Úfz¹ü ¦þh7Dƒ¡©ˆ"q¸®’/UÊŠ‘T…GD–òD4iªZ†5m6»…S3Ô„ç–-OÍ$ך?þãEÏîð ÛKß:m¿§£²­£œ.rÙ94!Úðà¨Ã'&™‚Ë,EÔ1¼VÆË˲°B&˜šé¶,#•Œl2A÷ § 0X§¬Ù²îžœêAhŸzJxññ1„Nâ KH‚`á†Ó˜¶yw±{;élðä˜Wø}i¾§‹™°!£(¥&ë8Ëè9$˜€iš"5¹0„…uœ“u£ i‹KVƒC#ITPƒ9Å«H'HUÐäCs ˜ºej†ƒ”-ôSŠe`™wïRÎáÿy©í#íó~[…cԯΤ\ÉP)à-@`Ø÷&¾¸¿¢ÔJg|5ÏÀž.ýw>ZƃžÁK̳oê¿s£5u’åŠÐ¤—^;hogÕhËàòò¶è|€L¯èÁ³r³i@’̵°sï÷2ó¬ñZÌœP)ƒÓ¥Öá[ooÈ™cóôûÒ0›v# šBÅ™UFà†¦ÿ§»R—$ª4ÂÐÐ,j a\ÀðL€ÛC?w‘| ?®Ú 3=úÑsÔCw¬›•gJ\ºF­Eð8Z½\9³³¡Üß›~´B€¥}â·…#¾ÔKè:u~æ©+™:uêÔ©ócX“1ðIéêuâ†Fr#¾0ZV¡! Ýää´VÁe‡’YXæ Ãe_ÙÆlw?¨ë´ÍïÕk5D—2)‡ã KÐ ÄpÆã·ç¼?_ŠýÊ–Ü«Y*¶êè€ÔÚN¥d †óÞÝM«kW_–ÃÛc’\U‹ê•:~DP”¿²sð#²‰ášø}²„¼Ë³tz9üanÔ”e˯ -Iª™Y\tx|Œ ¤u°Å±÷‰aÿ¯Ë'¿8hÓWNOîÿ"ß^nz|è÷ºMKwÅ,Ë*¹7WP «Ç&ÕDAŽ™Î°^qÙ´°¯âÞ® óS‰_¼icÓO@¢™ò͸Á-7JöMÂ?m>ü_i–ªE GÂLÓBóN§Ã1y¶Ôµo¬õc7Gs3öEc󭒤Ȣqæ‡eÊfâ´L{M JLÈiÊaJË)>u ‹Ñ,_“8´–yUC®Qº½MÃIÅÂÁâ,Aa,Ó²L³*‘°Xà,]CÏ•)@ZØ«º#+¨k€Xkuß±–säïþŠ£¹ÝšP‘Ky]¾›ŠfŠÌZ×Ë4úrsTŸnÛ*ö„—ö¶æŽOú’¡ÒÌŠ£Ù®œ±GüÄ­ynZüûã­pc“ök+ªfX:>8¯Æšyx»òÔafoêï”+¤'¬NÄJk¨8™rωþ”?>ªÙšˆù&r¾‰œ/êî9ðƒÜ¶6&×À¦Xü:)g7nÕŽž§/« 0-dYxF9¬™Ç…iö 7¯·C=<¼·w)[±õ„§„ߺuyÍÚ!]±Í rþ›R32q:Õº34i·Y7÷RCÓ’d–²nçGºµ1â²p:>æ}pç/¾«+gf–Á Ý¡‰JæåÉäý{ê™:?wÔ•L:uêÔù1|é«ìü‚ðþÓ–{)›ajŠì -˧-6Áâ,ÑÊM<1ràfb·œ[k_‰ðؤTŽÒš@³AS©Ša”ÉÔB>Š#XÒŸýÁÛÕ]žF€ zo’¨T4r¢«d±>[$±‡ü6cvYBð£ÚŒ 9_H.®‚R»zŠQ&²ˆµoC“R×§ª”*QФ,€eùŠ#MyO£xÉ$xR,w&-ÓÒß XÓ>Zéþ zצÿ¼ã­ç4Ö]`ão¾¾e¯\ÕOïùëgê8@  *´ R‚œͶ^³ƒeEÊP:²U||(Ó“äÙã–úö½Ø¾ñ[I :DN~‹ :«©²tÓ'°ÉIjåLuëÛÙ§Åàn¹ÇyúÔý ¿Wê½Å×¹#-qo-ÚcÑD§ [H± MÇ¥B+ž/["f÷©‹kë!'†@¶˜5%“&"-Æœ¥/ϼפÑmd`ó:ÐÍ» I¥TÂd8fk©i¥œð¿þ&¯IFÈcy]Т7ƒöëkcŽRtO¼5ÛKºÓ0“r]\°wE•Ñ{l¡å#mú—nYzö”w_Ÿ¡kÈÐuX)Ð.×׃>Ö¹:1Gýѳ¾úR±V.k¥˜—ùЪ·'çš™97QtÛŠm,» ^KõÄèjÒ–ö2¥«ÇÃóÖjáw;‡Už5ãq`owéÙ3~дd´Ç&í~‘§µ?:Öaêå{»Ê~— g|ß½à’r•Þ6'Ïh}ü s]}^ÆÎêˆ ïÞgýùËâ’ì›M»oÜR~ò ú J3)ÂPÀuM}ÑÚÏr[ÓüÁA7noº8_¶¡¢e‚îø1™ruêüŒQW2uêÔ©Sç}$Ô²úšÍŸ,k…²äVm,Å4É–SÌÊ“=mo½½}Þ‡ÕÀ µ’tEÉ`†È*ó.†óºøJIÓu#HÊ ƒ€¹l"Ê+#ÌÃo ù½ëŒc˜µ™<[2y(Æ÷EVÖÎ3­4Ýe/*º ®™Ö>7«%6·@é¥I`X© `NRjšÑTË…,LK£\XåÔh¨´Œváß~äŽ=2çþú±Gö5•ÃQf¦ài.øÀ>í÷mÃn$ù8ߊ4Æ0çƒ1éoåAÇû¯_YÎÑ G+~{µÑ—ý€¨Ò_9ÞÑÅšƒ¶gG\«µUç"–NßÒëL¬÷ôôN9O½ ©¦-á+Š<†U´¾vÇÔiˆ·â­>S¿ÁüÿØ{ï0;Îû¾÷7½^æô-g+¶/: ØÁ±ˆUݤK,Û‰S¨ä&v¬äIn,__ßljÙ¦"‡–(J,’ÙA‚ …èmíõœ-§÷™3}æþ±KÁ¢bŤÎç/`æ·üfžgßïù•÷»%…]Þû›mz"0ù¶áP¨ã_?Za 2F–™Üb\*ØP7¨ËÅÄ"1u`êq5÷ÏRék>ËÜy‹r1 Fj %3±Nùí½ J¨XGku,™&B ?0g¥òö ‹ó:̦€ 6Ö°qX©Ú¨üÌ”oØAÏ3Ç2œeZ{ì•u§ˆ[†¥}çœ?¡þí­Ÿ“65å:êô×%êâŽõÀ9¼NæºbË'ÿûSܵýêp¯,¥²TÞKUž:Ó’Œ¦l¾>r1fË0˜ÔeO41™¼ì:Uˆåx¿#ßëO®®‹c¬ÇšM£+)k€Ö,]¿u¨¹š}ÿ’ûÛÇŸ:×nhz+Um êu…|m$–µÅ™ ôÛ_š&YZЮñ/ŸÍÆÚm©¬D,•÷lRÞÌËoÎC3›Gÿödø_îH|ÐÎÙ<úg?F¿ùåŒÍ^üþñSeê˽>ÅÿV ¡düzÑP2 4hÐàCáëÁ[´¿Á]Xbïß-òž-Yöa–Œ¥–|Û\ª´%²¡ g²º\›÷\çN,^ ×A •°TƒæL¹^ÅPÄ2Ü$ ‰@Œf#Çy08êÖÍ¥7*ýhU¿Ñš3k9ƒÑrA·™Øu0%$N/³S²" ¼Q'Ô˜f}Ãr½HO½ ¨8«Ìêˆ"çK±ëX£bãLÚåLj½–ì ;gDy\ªÕÅöŽ£s¶!wþÿÚrq4ºµ”´dÙ”ˆüÍ«8ÍðnÀq±¶ÕG€ÖEÏÜÙoŒ¿x÷chÇW¼<°5'9ç¥MU*')ƒAi ÒYÁ»·Ãu*Åo¦^}RÙ~›Á°Dn^¸çw¸©‘ÒΛ³'°Ìñ¶— …»~£¼ùs¼\ãÏ=síÂñ8ÕþN×},Üo•/¯·Rc=u’¥9CEÄeàD»ºR2‚-ˆY–_YüØWŒà$‚‘ÍâvßÖôzE«æÌ÷âÇ.?Û„cLŽ1y¯Þ[³Æžkð?y>:Ñ'rìþŒ`”À Í´,K—uÓ0·˧KöÛÚË/Œq··Uvö¦dpMrjµjBtþþ UÞ-Ð`˜(QP©ÎjÁˆð @uªŒ{÷–éÍÈËȃgÉÛ¯ÕÛšM`iíÁáÄ÷A™§ÎxcÇòán:×\bp9fKÇliI£Ïfc?:·Õº¼yŸ­²sƒzà4}IÉ rÙX3¤ aÓ%¬¯âŽGÄ£ÉÐ×ú—Þœi™¯`¸}Xà>¸.gÃ+3ï»»›E±5›ø¹ÊåPˆf™Ès_Ü’÷–˜§ÇܯEwnXø³7cwöWýÎ+«DˆúÍ'¹o~Yä}€zc|åµQÏñ¿ —Ÿ’Ù Á¯ %Ó Aƒ > Þk|íNa:É>}ÈÓÓ6®«\,süIxv¿ý@ÂvÃNùÚí¶‘“x!MlßìysÁU@°­õšB5‹†´„Dã¦ÓD\Þ i*,nj­*e €b^sYUuÕîÖfIDÞæÃüF´”ó^w F á˜ê8Oæ'é!õúoÄÆŸ6t“éï²_ýÏKd>{Ë¿ó³¯òßž&ÖO®Û°ò¼qI¢TÌFq†,Voò,RY`:y¤«”9på\Å¡$cšQ¯üðË×öÖ>Â}'ét]§3u',‰ö ›eZž½ŠH[Ûj[M+h¯­†Š2.J„ ‹yæz¿<¶l³,k<Ç:çù ×8y›öW­µ—:£ÂtÊý7;·¶Ôb©Oô¤iM-Ãtа[X{ÐJOUóŽ›h¤”3µÛa­Ô ÐtL¥MC“ëÆéZçNf”Eê EXª*0ª…fª«1`€”ÚŸh~W¥7¶”­üBQpלŽ8©©•"ch Ð6–eqᵌC0üºe24È©”¦ƒËRtœˆ’ÐHƒŒ`Žc¡…m¤––e£TË29F 4Â~Lh3Mh£ò›"þõ·Éû·ËȦL~š#ÔPlµdÆÖ™Ìc™JjjQi Ù×tcôí]âØ<¤Kôü4±8‡6ÂmÊжâ7þŸ+L… k9*«xkéHòPÉÖ&×kT0Èv…çˆV½&‡Î>IØh188“t1GŸ?wÝ—Îe™ÈËÔüÆÍ~£l»o]täÈg“7}­ânÅtu†‹ë®¡êÑ{7OS’ä@¸> &ŠhqwX8¡–ιò+ª—r_:h'Ö `÷a¦jÖ+F1e½W;A±hÙ¢ºï'Ö9° ¡Ø¨bGT¯À€s‰Á¤«Ö€xPYÉSW(™+` ¹Å%œ.øãqôÛOÔî/?5êÏ+­iM?×$šŠ–"ymtN@IPr–=ªåIëÊnÛš­Gî5¦æà©— ¿ÝÚ<¬>4<ûÔùŽ;»’7GÎwÙ‡Òá—C§òÞ |1îβ¤Â’J‹Oiñå·Féoí Läš»|bO¤ì£ª¢AÌp×öWÀë4¡–_Z—äHõÏŽõÜÏX¦ Ù<š*ÀçoVŽgh­ò¾Ói¶DWNeÛºƒ%`I¥É „· FÙp„<ÕÙÖÖ¼æÃyö¿×¡µÅ.-êÐyçî>â?¿Ññ`o~O¼u_ŠÖ Ág›†’iРAƒ?,­ ¶f;ÂåýSͧ²ýwv%WÃ>Œ¶ˆîuš³ËDÄOðFQ“ð†Ï)5÷†N>Wˆm‡[¢¾VªV-ÛY×d‘½ÓÖP¤Å0*iÓ„¼©Æœ–&Ê*fÓeÔˆI‹}÷%9ÌL“üíMV]¦ë% H@ˆÂg²z;28Ï®” , ê]{Âx ÁÒfÏ­ÀRÉfXV¡j³L³äö8yÖ0aq"O§r3¦ta–®Jqkæ´ÞkC+N´ ˜©ðÂTmÛ²½:5‰øÜ‡–WÒV­2\û©]wO<¡ mÓbñÊ­w¨½PdUÊP†ÚT'¤rÆ3à<úµí÷°nNu Ýrü9ÊmOo¸kõ ÑËw]í›=?ðy°€+Ö  Çw}IÀ9³8Eñƒ“TD0‘ÜÎ>åB/2“' Xg'ÒP3Q¯J{ì¨\uÆ]•9Ëj #óX$‹â8(uueÖÀ)ƒG‚pÝ¢2†­ "%SÚé«Ñcy+÷3ä‡}òÓ‡ÝCõ­²k™_Á<­žÎXjKÁ6+о5œ-¸A¡8ÍpyPdE£Üd…¶TÂT½J? Ã}Ї©Yøîô­;»’/Í4ßÑ‘lvfüleµÃòB –÷û qOŽ%dàÝò6i¸]¯©Ü³'Ë A’V/ ¼GÉ‹ÎC%?‚ê{›R‚J½•þîð¬¥ÔnìCà©}øƒ·(€ HA%£ÎµÅž_‰œL{Eâ†HÑïXKÓòÓê[i÷#믻|6çK‡«ÐlÀsj]·áRQµ\Åv¼âÝj—ÿè†i–R?²nCKú“[¾AƒÏ %Ó Aƒ ~fXJÝÛ?½Pð¿4ß³ÚuMs qõßÔí6³, ÃêßqüÞ=K,Ñþ ÏcgêK««BU”4­s«íG2ÁíMÕ ™"PcFbÜ„Aèâß_ø#†2K¢ùº…H­–h¾lñD¹wˆo¦|·ï¡½d‰%°áfÌf&«WŸ<ƒ­Eà0¸ u¤Ù•E(ê$ƒÈÊÅ6ËмhòiG,-ÚVwÄ–("©¬µR€¿ü>¾cX‹w/ŸVÚw3'WŸJÌkåtbaGÇŒTñ˜ áЬçÙïÁ¸<°5è2NmüÃxôc‚<¬&ªT·VŠVdzt“d¸½‡‹{~Óv.TLÁÂcG¤Š²T‰oZ}„Ū£³›µüw&÷ª¼¦ªÁUá}ºôñ»‘¯{šÐäɹ~—÷…¥Þ°+W“Éæ Jà@„M9š †6è2š”ƒ jB÷ÇÈ«þZ—…Î6ä;ÿ€ p¦¶{wæ¥ÙæûÖM²¤ÜXŒ»³oζœÎs‚;[ð¶9ÅA~‘%䶈^­ÁPwn°5—-1ÿ÷K¾”;;iO¡A&›þ|24ä¾¶þ<ÌÀë‚3£Xü½êdu A‘ éØó‰@„VUl½·vmûÂʼn¹(õú¨ÚêÏÑQ}òtÛTYžMh5Í(zÏö5/h]&_»>ºÂ<Ô—Œ`>çíòÕ/KlÐà׆’iРAƒ?'-Þï¨Í—ùHö z -ö ƒ_©gì¬Q¨×mû2ÄÛ§œ×m¨¹ôúžˆ©©r5çóó+ɺ 1ݘ²";g;vI¿ Óe€Ãq tÝ2-ÂLÝ‘® /™.£XyyÞ½£æö‡„ê+I¼ù——Ñç'j~°¡z-'k¬øq… $ƒá L]Õ€\ý‹˜Åb 4ŒêZ/:kG×~ÿ昵ôtÆVvZ›‡Œïþ”BF*í7f eõ„øÑCÊ;Ï¡CG'nè¤^’ûÂÈ¿ù <“2ÉYáéwœ_ÿ8%Óæ¨ôb‹¼‘s8çÆü¹…ôî‡Ñ@2“«W-8—O~ÏRóÎÕöŠEσ½ø+"Ò ŽÖw¶([ÞÍÝäÍ/ ñˆ ¼™ Éâ@s†ç*U*ÈcéÖ^Ac¼3õØÙ7u–Û()v²Œ¹\XùÃú<~~ç.´3ŽNÍ#o(ÓüY|ݽ,!³¤rǺÉÞœodÅÕÂ$üdn]›]ú /¾m u×@¨£N/õÕëR§f\¯Ÿh§*»l8·w­¥U°þúEøóß_ûƒ RꙂwØ[üÃç÷EÝndoÿÌÅ)Õ5ú@Î3à€¥ÔÍÑòl>øê™"f³ÿÎóP—‰é”ûX¹¥¹rp[•1°\¶G]\ÿ¿v\ÍíÚ Aƒ |2XBîõ'?×<† ðj®oJl¹¢Çš© ›zÅÑ$™-’+iýϾ“fH”A5¥VxË*Ë#ÕïL …™êñiŠád©Žèš Õt‹Œì´fõL}4t2ØsoÓa¬¸(µ½:‰Ñ¦0Ð$þó濹G׫Õ×[+Kd3QLÖiAÿà,KÓ,ÉÄJTtŒÛ$`öAýÜë´®²>3ŽþöV¡k=r·rí ñö¾•䨈Ì2O=ÿö=_Ì@mèyÔöö}ÿAìtU«”¿%ÀCÐed‹U!Í«7ò眛E›|“'¥6sýo ±Î¥\µ®}†4Ú]ôD@±èZ_[‘ÐIt(ˆ­(á^[umk«QL¾s[ËÈË…ö¾ÒÐm°²M¼ëÒ¸©pjޝM—jV® ¥+8X®ìBhò8Ÿ<åÌMœÃÂÕóAa­,yÔEæÃeÌÛ§œ÷nøy¼1‰”•<ý N-FL’=rlM¬s'ö†²»Pô1„ì£kɈ¡2 òÅžÅî.œEÔÙ4~LhÍÆ>¬Û@†û޵:ã°c=vnB32wf”X}¼\±~ô¶õo08FóM?˜ž–íi…º·s²/¸øúhöÎ\>¥w’ñ|±¨®}'í|a[“¹ˆz·6åàܼÿ›ûÚà·®›. èÞu—¤Ëd‰ 8~N1Ù Á§—†O¦Aƒ ü¢0¸ÜíJ4Û³Kr`_yc'›o%®hÃ1Æ}»*OpÞ:”oi™B9æa 5åh’tÎfÙ¿èyq…CM ËÍ´,TÍc3ÁîN"fš`TŬ 1»‚_Û¯•Î.ð›»o£)(-ç+ú IŒ›xôn3XÌ›ØÂÖ'™v]£ ˜%0¡ªAÛJG}„°>tS>›@A#Ac6àq'2}[ùGÆ\ˉüÍpëðýï³NCòãZ×:bR.ç0 ÁüÍ;6¤žäî½þ*ñ?†DX0µƒ+ý‰,û@ý¯*þîÅæº# éEK©@tî$eÇQŠZ m[}jTïˆa9›’8¾ßœ°A¹î‹rµ¼àð®6(ùcîül05Yjj¯£<_>]>¾Ú2ïí— ŽÇ4CÃEIÇñœÊù1êv'›Ÿlš8Ñ„B&ò{%Îí&>>ãå'çØÿúPö“üÃûäCçCW¿ûÜ;üÆëJ6›®]ª/³¥÷6Á¡TH!¸V?9]amvmY” ÆÐX+Qê.¶›ùŸ‡*ùƒ‰á¸]ÛªÍÎK§|¾õ.úÀN°€cÌáuÒobä÷agÏæÕjø‘ís«ÍXJlÎtJûF‚è­Có‘ô{g¬«¥;u8ý¹0ŠÂ€W¾¥yvU˜ÿw?ðL¦?nœŸ6:Åø‹Ñp€P¯ ,ŸUcuG~zºkïðÜå+Í×]EÚÓ6VëÍ×]>¶,*äÑ'­Ã£ø±¥6@ÿxË,KkðÒ´ãOn›_}p!ï[’I–ú…ôdƒŸFJ¦Aƒ ür`0©ƒ[ˆ™™ójûоqŸ±Cy5.K”PŽ1yº}ô/;ÙYÑt+S–Bœu|žˆÔ“„iŠ¿Åöæáò‹ï`t; :¾%¼äŽ„¬y®'Vq¤‹Çæ{|¼Ùцz¸Äyc«B)÷Ò Ïú,+ŸÀ,©+¥]ãbØ=‘î®ì„-Œˆ‡¬š·›r¸©ºäånf»¾§ÆÏMÝ#TÂß~Õð·H}[²üƒa§ëœ•g‰÷í¬qWŸ@Ä£cÎj‰“ F% JG›Ìs¹là½Úåݲ4uӥЫs~kegõéùîÛsŽÖÝ(/Xš6¡è*Ocñ¶ºŒ×œVûD5MPêœÃ_0€ÑÉóË#];_jÛŸ~£ähžm˜÷¯_ñ„|†Ð".ˆL•Ö+G–ÚTŠq»ƒN¹ Ó.•qç#½¢ÃÏÕ 7'¾ 9t¹m‡`ó|„Mæ–¹»‡dŽ1>ÖÚÇ© vÕ[ϽëçõX°X+|ù­K8•õ¦T§ßD;ìùy1ÐŒ— ª£d+–•ÖÑŽ5ã9Ñ9Qò¿›ÄíµvgÎË”týóß{_âPgåŸÛ¬ÿù.aNþ«Bð«7ç/ÄÒêÝ›“gg¼g¦h/§ÔKR%%pÛšÈ:n¨êfG¡MÎ&ðª`Íe1½.-cIÓ2LŸ äw:Ï®&’äcûÎ…àsç¯XìéBô–Ø<¸(u*ëZÒÌg-1#³ ;“XࡦÌPûš°<7ÏßÑ%¬JXªÚoˆ~h]ƒŸaJ¦Aƒ ü2¡Qi}>g§¸­…ÍÅ Ûë誤éh’v÷¸œëõl‰ÈàÜ/wvÛ••jkwö,G´þþƒ¦X"#T‘&D‰j³,dä4}Sµ°évS£åúB†õu¹\®z-W5¨ë{ô©¼@+•v5aa˜@xú×á9¹#¡”šÑä‡MÅ „ssxÀ,ËÎì4¤ák ¸TG.Ì=0Ÿô +†Ë?e¶¢¿û_.o0}f©¿¿cZyú]OÈixl…ÈýäÌ¡×4 Y€jš³Áºõ®±qù¢’ÁpÂÇD_ÊêŠ*̹ Óû\¿g礵½>GkñBÑÄ»H÷ H¥´§N«ýPQ©Jí çE$¸ÚL%YR_“p²É¤M¾ˆ8^îº>h )g1ÇÃÇÿ«îðÐ,œ?e‹Y¸…¨û—"»Z*x=+;£˜ZS©è4Ñ凞æŸYjÙ.pî«Zæ•3Žû¶ÿ •Ê® ÇèA§þÁT™çÞáàΛpª²„ÓÚLé}j‡£TC3·¸æ,¢cAa–4»]V]Gç(d-_+Ff•ÛÚù…f—ÜìÊH“\§Š±cãž ÃUÕ¹÷ÇÆÃÕoìgOðseä‰7о¸É‡©šN×tÒ˜Áí:oT+EM­“ –<³,Ue°¬iÓêö³½MŠËnøÝ֠חꎴ¨rñ}Ÿ‰0Äš“°bR–©Xwm\¸|\QÆÏ¥#ç dmŽ<0êm–ó¬§^atE™7œ_*_v;—–ÿÔ¨ïn¼–6]¶=Ð7õ ¾… >4”Lƒ 4øåãGÓN«\‚éb;„š¸È{8ÆXY*§«þ¿}\ñz myk—,R¾0­)9m³ð7o4ÇÚ#Csˆ*gUŠ1Э׈ô»k¿Ž{ª‹Fë “B—µe:îè“Ú=BËÜ è,ÙŒ™Š¿6éF¨e6>a ñZÊcf.ŸŽ´Ý‰³NQ¨e¦ÒËUß  È•kÀ¥:—˜aÇNÀ‰ÔÎÐÞÍé˜O¬Ãß? pY³Ù². ŽËãÅÐWoœÜwÂ3–b\ïP[a§môDµÃƒ¹=d ÒÎx;mêE9ÆD(›-«…L)+'-Ó8Õú¹#©¶€Š k©)M+#à Z¬­n`5Ò1¦v™È2‚¢°• ¹x>IsŸtß_©:ŽZ­n\‰S9/Z]o_:Vb[Ÿ¦n[îÞÞ:õV Ù¨jHZðÁ¦ÆJ‰.TÔQW­l0Œ¦p!JL¡ 1úm|Ý&cÉ£¢#\r7×X×åö™[±…œæGó i )+ù÷)™·O»-°î¼ÅÒpµí.]”ñK~JåY]qÆ‚”n¯!Ô”äëÔ D–á=‘‡,9¥¨¸ÇS¯Ö¼ á=`)õæøJ®b[)²Ö\†>¼HµÙU«#²'8Ë3•{w)’Fÿùq¯"êwt »úSð·¯j(}ÈQc)e>ã¾­½Êҗ—e’%¡e ~i(™ 4hð 2o,z¤,ÛÄ“îNE+Pb ¸ÕxæXH¼ý–ðöÛÜ¿¸‡í´%%Ë>o1ñÆ…X·Ï¸»ƒñ"‚ͬÊCj^Mi4 ¬°œá®ÃUq´‡ S-"ú9wÌÐQÔXÛÛá–â+MÑÀ )àsGšÌ?’&pÌãr¬£RÊ˳P“ÂŽ÷ +úšÀ¥º-9öƒÏèÞæzϦܞ‡&sÎ3øçcW¯<öÒAìÁ[ WÍyru·Çfă‚à½?~S_q£z_®w§{ÆC•ÝëkâÞžæo¼ÎFX-³dÊ"e(MùQ•ä¾uEÑ%ÑL6v±Þ€]*sJ®>x½³0f£óZóŒæuÈ‚“P†í“ ŽE²c¹ÂK~….ºàÓk·»NÓè¥Ù.ÛÒ'bÖ¶Œ3 ]»[G÷IXÜ…æ{›4Ò2H©ÐÁ*jǵՕšZܘ*0†\ÑI•dŠdD°y½•¥hê¤h –ÑÕð68;o¿¶ï—Ôö)Ï;.¦Ê¼}Ú]¨á÷îÊU¸^®ºæ[ Ø5Q".*ØÖš>’îjGnpž:’š]ÒT ¡Jº[2èºI@ ¨ÅvŠ‚‚N€Sf%[87¨r¨bY¦•Tì%ƒÜîZnb2«Eºë<5Wð¿‚q0ŒP[[•Á–ìÙ×á f{gÝÙâzáMq¥LlÛZå]õe94S÷Gu²K7qIQÂO¦#"8s5‡Hý“ïl¨A’. (zê|ÀŠÛ´ué7§æåŠú¼eâµ³~±(?vòßU€ÙvïzÉ)íŸjÚÛ?ýÆLàsýK°Pôïÿ¢n± >¥4”Lƒ 4øG·i13v¦¶s·Ã t‘rieÆ@)ºÃ©^Ó‰vD-•àd¿¯°”1Õm“sªë™ûÏeCm¦B#¢ŽVsue…Œî€·š*9â.L>:/ÇbúDè,œæê‰s‘›e6€Ie¶¾v& ǘ¤ò³Åc“c€ïŠ iɲI^:`Ä2.ew8kEnaξr-ç —_ µ,>úŸ.Þ=3IíÜpu3›@Â^‹÷YòuÍs?ºÐY_ÉõÆGëaô“³a~Eïjμ•m¿-tÁåþ!â½dlØm÷åÆS±kµxáT–kKÙcÉZðT5Jé² »´1 Væªí×8M¹Œ¹­ÈY)’/ÁzÖC”GóMË’Ã0ûI¢luU,ÙåJ°2;®¿|’ Ng<Ý{*/|OxÐí*Í÷ÞKœ˜síÐX¦µ>¹ªÿL és,í›oRp½-ÚäÔF-É LV :åk/8£ÞZ*–=+r|Ñ™­35‚wL]éOÇèéÒš˜œ[bG—¨¯ïM+´SE\»zI.I£ë³¢q`hGËK¦Ç@ÕÑY$’p˰¢dí¼`{À?îÆ×¬ú?öswÜ(óŽKU ºœ‰¢ê^ø§óë[©Z“ S©¸/¾UŠllŽŽ:L1<«|ýŽÔáê.é€ ·m~r2ˆÆ}A‡¹ž[Ž0k‡½ ÞÐÇDŸË‚’DL0¶ÁîåÉTmW?+żÞz¹L‚Ô$¢\'Až‹&BUÌSö0Ì™Š˜¯Éž‘ÝB–¶ÑÚR ¨·û %îù‘Ž.Ýï¸Tµìåðí­ ¿”·Ð Á§Ž†’iРAƒÿ¸Ø9³<¥“•d=ÏÔí±k·YÛú—òEíï^÷»C$‰qÂL…s5Ë„)·úê’‚IJµH¸ycš,-‰&NÔ+«ñSîâ<–Dù…©h«EÝã÷Ugf½ë ©€*BÅÖ¬ÓÇe‰û;¤;± %*Uì™Ê€iÂfö⎶,`q¦àž:ÏMœ€Wéj-l“=þ+æ?›$Þ»&{8Æ.¡¹æYý7K*øÂÿ]‹€ò»Ä/nKL§Ý‡&\%ö!½›ZËÇ…ËóåzK÷påhDœ™ón¨ö…ÿn.|Klæ‰u; ‹*ÅÑM]ÈÊÉI«}µ'—5lºòƒBS” ù |K×&Ÿšõ]§k…ƒU‚&«”G+°~›QÛ«)§’ÌbËæ³®ÍzÕˆ›ãeÔ™¶¸&MÞýéB݉l؉(’N3˜|±ç”§µè{„t,‘ë_ب}p ŸŽ1‚.#[¤„:öÊIÛ×ïJ@™‹¹«³PW(ÈŠÄTÎ7S#+5.9ÂŒê¥51sÔ€}~ &3˜$㎬KVh&kNRAðaÄáb›BQNTYX–íÑb†‹ ªÂ ƒÊàÂJ²ä!KëlÉ¢æÊiŽsR$BÔ|Žê ØÊ˳îTV¸³[™©{OåmNîòOÏ4ùެƻr# åmt^qËÍ‹uÇx•ócª—RP0 ÝâMÝÞUyî`ð‚lTd•#±{%B¿¯¤µU¸…Éå—Õ¿?íêm&úýäŽÀRFÓÎä½-D¹(“Ù²¨²o¿‹‚À××§/<¥>Û‡ÖÈnÐà³MCÉ4hÐàŸ4§Nú°[Ñh4ü*'ÓàçƒcÍt%ìïöÙï¸&Ë·™¼Ïídk·mÓÔpK¬6EêU!’D¤MGL5…XîÜXtGu ÕŽr`ZšÍ l9avÄp¶W³Ñíòbèü“½*B0Sq‰4×iXˆ[Y ¢‚ƒ2,ÏkÌ›'уgá w*”ë¨Ðæ­×n°öáõÚ—Oý'Ý»6®½óMÇ­ë±Ñ‹™â—svŠÚ9|σX‡ãç0X«¼ m¾,ŠEæ3îÖ@ .Öð –&*Q9ÈÏäl»\çØüÇûÕw’WÒ‹¶Žn›ÏùÞY ÜÑ9ëe*AZ•tšÁe»&¸•Ìxloö,2’Üv°`o¶×® Cáò+¡ e (¥‘»&ÔÛNsQ^ÈëÔ0nžíÅëÆÜ‹9ŽñÙ ¤ªÀòçZÆÒ_=æqÛÍœâ\Í0¹Ô?N¥\ÍKDS}Rßà>£ÖØ4SÐ:'çÒRŽØÒelÏ&1[b,/_ÉÉGÎzOäšâNPÁEËPöZ'•ßí>u"…E[_ó%/–¯}Þ›((ÎiÑ?-Ú{ØÜfWy¼ä¿ƒ?)›ÌÄyò¦ë ³$‹ÊQó£¬=Dªr¨‚ÐEæEƒz§Òœœ Sï¿ÆõêöºòúŒ³×_„õuWÅS®N£Ž@íÛ'ã·v‹vRÝàY¼9²f®)±E4(WyîPPä¿}¹øê»¶ôlé}ߪKš{ªD ƒvônª)Æl; ɬšìŽXþòIú÷oC&‹Áé2gêï«0¾PâwòÅ_Üø |Ji(™ üÓEÅÇ{ìÃî~ë[ßj(™Oÿö ÷ÝWæ=ªXUª;Yüºdtv~"ƒu¨(1gën+–E(Uo-%àN¾rA¦cL~ºäéó”–-·/Qð+Ûv¶K·d¿3Ó|sqJC5 ¸©…)F·À²…àYÅY2iîÕ°c/ˆ_Üp¼©ìX~»Þ=Ël;4pG¯¿@©ªŒÒT2³‹ ï½”›!Ö¡'‚<ý2’*¢!¯òZgFÑá^sõn¦@]Û¤¼6æý’s­H®l2YŒ—<ž6iÀ<Òÿ¥Þñ·¦dЇ#;s¨]\Ø?ë½k`ÁÇÕÀCªÙš½\²ytî÷¦6N·tUgi¾¯Õ¸=<±ZÌ÷r‚¸âŠÀxm¦Xƒ+•Œ‚’óx¼_?ß”E½¨ ¤ZvÚö%É-!»Ñ„”&&KÈA+'U-§?0?ƒv9®ò6/D€ŸÓò(ù¶ê¨@zÒtHýÅôLدg¦k:Bœ°í2¹²½M¼kýZµâ³Ó.hñ¼OYµj'G<»š×þ‹›ŠŽ &EY)ʦ%^¨~šŠëšÍ5Ñr&䱚ý€ðþÁA6-Z¶(É¢ê&}4ÉÍNUÚ:è@cšÈ#‚ÒVk;@UZXP=Ê›gô?8Í„¤y·ïídèþäåi÷Mtæ­JïsyëžkÓ°u+ñ¿+r® ѵ6¢Œ?wÜ¥×3÷nÉa õ£åžÂk %ä’¾fÏ„áx|ºùÎhêkñ ÏŸëò¢ßp¼è[çÉÿ"foÐàSMCÉ4hÐàŸ.Ç=ÿüóW\áᇀh4zµ‡~™ìß¿ÿôéÓ_ùÊW.—L™Læá‡þÖ·¾µaÆì |6à³·Ekm»¯éúa¡›—ª]üüpPªÉ6m  ä9°AxpœO_H¶ìàÓg9m ÜÙ$àØ?Ӻѯüvæ›s-7ˆÅeÅÇISk!5ã7²*ÎŽQf‘H‡1 „\w,ÍÝ•<N8öÆÆèîXa÷I:-È.)ïËa¤£žó±eÝ@,ì*åËÎNÑ;†êb¦ær~tzÂ0¶·ï´ÚZtë05þå÷ñÃæp¯Y­ãNks–OLyv dJšûµZÏfÛòvò$àð@_åø|s;dO¸;ž }>¸8³Düô<ÿïož%,[¤V Ì£õi†Ý¨‡ü«Ìagyº`o«×oˆŒ~pz”®hì•罄= ç®ú.*=Sïž#M=]§C=áÁ¦Ô©$²ÉæÐTXÛ:³¤ÂšËÂùy¦®Px<)(Ã@~€^xáôéÓO>ùä¯À!Nœ8qîܹíÛ·_¼øÂ /¬_¿þæ›oþÇý³ï18ùÿ^²…l–ÃfLâý Mæ´¨£ó9›]QZˆËD$”– ìäÇ:wÓëêÑ)[ž1ërÍßéV’ò¶ãbì+ØË•pkÙæ° \Sj±£x P|–iÏ`>D–ˆªÂ,â¯ý9—^T=árçú|ÿ5_à‰wÝ­pÙt')8lð^ìd1$Ê\Þàš˜¾Ïã1·Hþð]*µ žƒæ0Ðò›÷X[anÙ¹É" ’€oõµ›ÇFÐ7Ža:ÊvÇ䦀8¶â¨bü˜¾Þ9"×Ü„|spâpº{Js½3fP:úì|K¼;BŸ£‹UÊc7øýóý©]Áó•h ãp†(åÅIûîàUd à–áQ29[ìý—/ZË#®¶g ùûÅÍ„‡ö¢µåÕI«6¯¬L%‰ˆÈ[©J]Ys@‘š Ú‚gfm˜j¸m—,3Ÿqh«=´¶ç6LÀmUÂMÖÓ,¢K(mú3%$a€‚;ŠL”&¯¸[—±L‰l ½/ÒOÇÙ*8MAçíÕµf˜“´4º¤UT÷Òb¢è¢K…îòï§Û*5‰".æ*ǧŽ,†¾s²éÚX%ÒŒŸVZ/(1¨!j¹—š’dVÓ*æiÇo ŒSµx‡§J zÀ^Ãòí•æg™ÀtxömoU´"mö(±¦ÇŠà- ®­®ä §<ÏœuF¶¯õ¦Ð´f¯únõM^”1«ŒU"'Ë^§RŒ+s½ñµ©¢r!åî  Qx3êhD—5øŒÐúÄ0÷¥/µ´´hÚ'JÃkød4hðiâ‡?üáã?þ+‹+ã8î+_ùÊÃ?¼~ýúo¼ñâ>è)jðÑpŒ9¼Núc^ÿñ[¶Szs{ r}dõ–Ó¥þô\Ó:ƹ+6Âk‰%¦õ¸/pªØ·ž;a+ÎÉlÀÒ K7¸j µÓ[u¿‚z¬¬3 ”.{Ä /L§=C'c÷±ÅiÇÜ$“MÒ‹#º3\hÛùýÏ?syöK[‹õß}Ú¼}ÒÖ‚è5qÏ áé¹¢*¥ŠîáHÝÒ•©Yk&ií? „×öùROxßjk) aˆuàØËÈÂm»Œ©yô{Gð8o:œÜ‚-6>+<Ò7®‹0WwTë8Xf3)¿YôœXÄÁ,k¢úÌQ”rj X×gÓ6üœ*ƒ˜¸„‡Òxx€P'sØNß…3,iªueø—Šà*ÊÚ@¬«„{…ÃCƒÖü,ðvZ€”£ P¤«xbÚ6@Øœ’ÉäK€™ŠR”âë˜sﺪub°u­Ø×ëSþ»V®èVEˆî/`.U‹[©2â(‚M ~vJtØ[¿Ê©¦6Ö( WvhÂ;´Ù”­/ôÞëÊ€%CÖn¿ÖlåãîlVp\Èxßšn Ú|…U§S]¡öO5Uò®õòY£Í+)5„j&kÃìôªÇ¦›M¼œêÛMÏÔÀy‰£Á‚VR^\éëw溉¾À"‚!Ï/öîm}ù `Ý¿)}DñVL—-‚€RSö¸—N5óCÈJ‡*ë¸üåùHEÅõV¶=§‘7–Ó)—ýÒ’8JÉ k›·TݲU 7h𙡡d4hð©áÔ©S?þø£>ú« ë ßúÖ·{ì±––xüñÇŸ|òIŽã~eø,Á{µ»nE§1ûsßOž·³Ü(ó>6v•Ÿx+H{ûºØÅ`máVÞyp1‹oð%P¥@QàÄÅ%sÛk¿ƒªÌv‘šì­®ð…óY~pֵȖÚ}Çc­Õ枥m·­Ž6òG•¾Aböb]cŽ…GîC¿ûcsÇË2T°€%äV{2­0È}ÓmJUØKíÚ¬îÚF?}¿nóš@±hËB@2躇.”*¤eAE¡À²Ji™VÖ$®üé •Ft¹ÚlÓÿìð¶¨â¡•~^S53!Q>¿z_s)Uâ±HTM ‘ËX°b NC8hlÜA¼Á3éÀÊ'Í-–…#–€]mOÒÒTâ*_£EPœiú•×ÏýRFUÁıjN[«º–²ÅÅ|J%©éQîå…lQTYvÓëÅ7ì`™ƒñü|ֳޗüÎ+óLVQ"xŠàð õV4_[ÉdTëgðÏȸSGN½Ztœeyå5!˜x®ì¹ý½+¬!ˆ¨ƒ1ÞWÎ+[¤Æçê~ÖßÊ—XRiñäZ<¹ºJÍd½úîºõ!›å.¼%lÙiqÀÊ«¾MÌr;³p±—£De*ïß™B&ésíŸÁ·o°–óŽ iã-þÑ^_ÅïÎ D©Ä]Û2'r)3àDË¢Œ?!TJ¿»½À»åwgÂo] wxòˆ0àÀ•NnmÉ`’R`¬æ»ŽŸ Ζb(¤¶÷-ÛzOQ)yÿ0<ýÉmÛ Ág†’iРÁ§ƒL&óØcÝrË-=ôЯxèîîîG}ô¹çžÛ·oߣ>Ú(3ðsSÒÝGôîm0ñ;•ï°}ó)âÑÝBg«É±ú½[ ?8ùòuˆÇéõ éê‡e´y±ù¶èÔOÀ0-ÓDq4¤)¹[73Óî⌂ٖñvÏ[O3ŽPµu87´m*¶Û'%iýÒ¶Kì!©·Ë·Ñ «9¹yùMƒ"­l ­¦È©E+ЋÞÔ§¸mVYu”ðIY‰Ýr;r‰VLJÕÆT5LhKe}ÊŠ QR ì„bÃå6‡–%HÄ™Óôç» ­Î¥ï>‡ŸEQ’Þ}½4Ð ˆ©'*Vð½‰ñ0â‰#®à\áÎÝ…„Ïû5†\Æ:zœ§¾“Øazƒ¤$ä?.QA,ô*:!gp~Z‡÷+™Šé,*@iãæ@+õËœ¦‰ïUl.Ò¾<ʶ¨…BQ¦ìNÖ®çWxºrdÑëê´~çÊãt¹æ¯€s[kúƒ#^Ž xÚrMÎÊ-t­lÐeø„z¦H…\òÕûç#U¹J'¡ zļè\Í$¹ªOæÐyç6T~²Ø¼5f÷;Ö¨aIe ºr /N7.:Ý~ÜkÕw8cj ‚ÀÝ®Ó4veͺ~ïâÓ]mN‡ßV 3ù™JSâÀü%£o–{»ØüØé¢ÛO!m1€ ±ÌQ±KN9LqÑ.îK;€¨°K9g>=ÙÓƒv-Žn¦ÞrTˆlf—ïI§Ë&µ<‡n¼fÃR*Ϩ¹ŠMB¸k¼…ObÒ >Ã4”Lƒ >ˆ¢¸šåÿõ¯ýW?:Çq{÷îÝ»w/üêuÔgÉ`^*öÜîs¥hü·&éïöy¿{í<+ì2‡{¥míÂÉIÏ®A=åjž˜åÛÇ—†©- ,MGIÜÒõªÖ\aøÎOšª¦Wp„ Å3¿çë½æå’Ó"îwhyÒÒEHÄ$P 9H-O؆™Ž,F1½˜¬™²‰Êº1°I 8…™´%ðV ÑÕåstÂèôJC¡œ›`5‰Z[Ë[¦°Õöþ¨®s‰À±yûΖj_( Ü£OÍ£#ʦ>{©"ækWî¯[²_ÒÝß}‹ÙY)u{ÍöLR öÛŠÏd¯)ŽfLgQÁR®îú¸Šv•?媅bÄ•¡eÓZ,BWHÝ4ËèJÙþÄà¿¿7½X5Ý%mF6Í ”\‚&Œsc|+»’%Ä%§‹®ÈÍëÇNÍøŽ-R{?nVksÀ2W’M¡7sjÅ ³ÒLj™á·,°iW/WpõQPŠÖk[Â+ÇW·uT€5«i,rù©@¢ŒHR÷ìÊÖL{ªÌ]T2’FÏýÏ/†}õøeY|>ÑýRµ¿˜ª.8K»®Rz›%ä]¡•É”ÇßQåhýÚ˜Ü,Îi¦c‘ 3~|¤Û=÷ÇÆ“Rà•âÆ=ž“ã3ÔOŽØJÿ³ÛWX‡e˜P€Íb{ËOqtRihÙdÎÔ;Ê:ùyï%ùÄà²WNNŽyŸ ]ý’Rugˆm„–5øu§¡d4hðOQ''^?÷ FiÛºmÃÀj^ÊÿÁ°®‹‰1§Nj”,û9 z_®÷6Ϙ›x/Ê‹1¾zKqz‘ûÞa?r®pð rû®Ú|–Ÿ[qÄÃUO3ýí—Ú¾üÅkû'_²¯³LÓ%6e/Θ¦(VÝö9Ò\FÍ]%Lœ@4Àp£$bb(¦bÌj1.•H¿•êaq5n[ÔŒúÿÏÞ›†×q^wž§öíîû‚‹‹}ApER¢VJ–cÉZlËqd[N¼tœLžÎLºÓÓÝÓIžt;ÝÉŒ;ž$Î(²Û²%k$›ZLI$EŠâ¾Ä¾ãî¸kÝÚë€H¸ AI–©~øUo½õÖÅñþï9ç4ý²hP\ˆ@§g©üãüÉÀöP â§û;ZˆÖ:QàV¥j½C:Ï=u<ÔQomML§–äŽÀÃõ[˜>á9ôvö¿~ßèŠR½M¨>‚ìZÌ©€ÖºÊMmÎÇ_³}ó¾¶ÕŸE8}Jr’xmúhšÑªí~ª.#+*€ •daª‰!‚h]T—î5¡6 2-´‰7waÞy2‹—dÓãr.VÅ…Ô9*2§Z:)b€p"Ü¡ˆj™ ¼ª3TDÜVOñ»Oû¿tGNàVezÕBExZ¥ :r1¨ÅU,#®ya†Ž„åɵΠœ>œ]é/‡žVr*óÎS(òEÑ Ç.8¿t]6Ç“?:Ú°¡>YÕØÓéØÁŒ;H*Ô–§IgäÛCnÔß-vj¾ïŒkGK©µ®²Øçô"{ñ¥Aw{@ð;ŦR,á}þ©:=õÚXÔ÷{lôa¥»‰ÉøË™ÿülc¥ ]ßGºÚœ€R:N F¦±¨åfèÀï:û££ ¦Ã–g< Tv‡må³ÛIõîÝüŠƒM1‘çªÞßõ])óÐÂâ〥d,,,>,¤RŸîóËìÛ;»÷–Ž[†Uþ0::š{ê)÷¦M®ÞÞ@08::º¸€áááW_}ÕêÈù.x3ÝÚÉgÁ¶¥½…ThÇpŒ$pŠÑ¿ ¦5Αòu†©$ (ÆŽPa=á6S€ €¥JÓSçKõ³¥¦-Þ•¦X€ÌK1“tžM•È{w§ µŽ™¾¿Ïs}‡Ø—VoßO ;Ùï».pK§†.ÛÒýn¯Ón›K§åþÄ*–Ì`Ó 2WÄy2ìAm-¤'ÄÇ:…Soi¡igô¹Fþø`+@Ÿ»À˜e3¸c\ ” :§3i‚SLœ„bÇCCwNgTgx@ÀÓòrsa•`&˜ ›ÜI%ºÙ™" ěŖ ôgûšv„Ä¢¨›ÃQ)•€FJ÷%IgJ€Ž'D»o;'&Ù 41Íw,ÐÄ{GN^à}ÞþåO–×)f@5±´„åäâðf?W”Íly¥r‰ P¦º¢¾emC”ˆE§æ¥ÀS²U/&˜™—Àž´ÿ̓“À3*Ø£'z²¸€ãð‰È|w`.ã Ñ\síÎ)ð Ð.Š292kû?Ÿï®—û›Å¦º%÷0žQomMpz‡öJO ô5ç^ø¸¥iîh¥g‰'±bEûÔ&EtúÝéɧI*Í^¶›f %EÔ×#ýä Nð¾n÷/äÿmëžQa~<3NDW »«ß;×r[kŽ#k4rµ°øXa) ‹¢$^.cö-ìÛ÷Ú>8p•ÿäädϾ}¾}€¡½{ßÜ·oqßýîwðƒ\¡_§Åj^šéÅqXÜ#®fck±5&þp°§ 9©âë^²?·uì»7Ï´'ë ùC…Oìòþ²d69`¼êm)„ÚlÕ,mH69kË€"5ƩЂH;œQq½N™œ ›(ÒpÙ>#¤nûÔd9ø³‰ÍŸª;¿¢Åäò⊃î½ýKy;«ol+¶Æˆá)æÑçí;»åþ.Åå€RKçˆÇ_³÷4˜ß¸snqp¡BÔp„êq ÍL_zdG‘(C{]a1œyÂ6F«é…ʉI$WªÆÀÔMÛñŸñîvÎ ëA‚§œÒ,Ç#Lââ ’ÁI+lJu‚’ÁŽ«¶ÍÀœê}:Šl 1ª&>F¹­K z•‰Jð±F#%½½Úiàõº@ÅÃkš®§ÒYg(V­J¦®QH®"Fr‹4Y@ ÉŠJS¬Š‘¥³ÆByg¿ªÐßQúÉ~–ÛÕ«öw¯Ë)uÍ„ŒhdÙ)0aoIRr…K‰ji:U&¯6ÇÊ$= §š õŽÊH!àŠ4’@vñ ðúéÀÝ]ժʌe}ÏN†Ldè9½³A»-:îã ’ÎJ· æ Ñ+„Àê[ ­¤˜“#ì‹G¹]RÔ¯¼zÐUA:“^`^+’?ßdžî¿]%*;Kä€pÚïºÛ%i˜Ýx(^ùÑë¾nδÉŒ-¤X76>uÄÜêêo';Õú•í5Œ¶§¦µbYu±$<\û ¿ûÙß}pï]ĶìÛw@qf&óÊ+\oï Sf‹«rd¾™èÖØš> °úC7¥Ffí‡Gcù™yl2Õ1÷ú ¼í§¡‡1^úšëÔ´ç.¥Ó¯f⾉´Vï¼]¥Y`t0°iÀ1Á¨¸P™ÂñF*¿‘JçÁͨjª‰_l²Ø'!xf²ëî†~™˜¹“Iç¹T‰hŠ\V "pFGµ-ŽOßù †ñaÏ1Ÿ½­ð^J=:?Ëlë•©@£ª)rn^ÒØ‰R0lVr ‰¶ ­6 ;%ßö¾c¹»Ã‹‹Ä3ö±9lC|òÕD¯ÛXMäÌ•¡ Žû0F¹%y³ @‹$S½›Q )9Ë:½ 3YM˜ÕÑ«I㡺ü3Š·ŸŽÓ¦8¯;A€‚–*âÉ<È&Š4Bs¼þý .A¯vÒ§†l¡3˜pKwÙ¡ª*Z½_öýò¹¹ÓpÙbÅÑ9sW¯|à$ëï©Ub¿6š²%¹XÕ6!‹TD)·ÏR1^¯\9 !×ʘŒ‰°ÅÛ7ºÒOwîÚÔTŒ]”4Ï ÙolÃ~z&°5œ¿·-óR*œžl= ñý¹È;ù[ݵe6œÞÕ›¢¢(ÃSÌŸÿÌÞáÕïÜ!ïêÎ?¾_øæ}ùf‡‚Qì×WOûÞµíh*ß³5WU™ÙL@³‡(_@nIÝ~;[˜;äliQ{Ôq²!ª'º°ipøa«Âü󱞇·¬ü59= Ûü+•ŒÀ¨,OúV¥ZX| ±”Œ……Ň‚³'Ö:5#Î<öØc‹_ûý—êx¯Øèvÿ:ãÍdrï€}ûä}ûD€ÊÞ½ÿ7ÀýÕ_õööZ9fWe2-_è:uÕ‘«okÉö°ÙV˜uÖÝväR2yçïß‚ßn·…*e†KÕu`8æ›~³yôW…@[Â×¢ ÀR^Y–ZÝÓ†¦¼løš¹„a#œ]A¤¨™²fÈ’ÔÅ—u’j¤ãÞ–Á‹éX6Jž/ÙàРgo_íO»ÎlkÔ Eâg¯›sØÿüCQ¸¼„a$O Ùi|*ÁˆõaFm²—í´ºÙ3s{´ö¾SàL—‡ýb‡û[ÿTþÜ^×@ÙÖ€ˆ9³ÎW˜"pœÐêø$,þ»ˆ¤³U%˜ÀMõ•AÃW‡•¸­4£Ia§PÎTl1GÕE+L„/Ú‰ ÅøbÍB9YEÃ)PjE•~tŠ¿.Vî ˆ\0h]ßÔC(£³“í±Š$¢| õ6™£ÓpàöAK=DCèÆ;WGÓ\¡TªTmg¤¾át:Ð¥œ¹úe«D“‚Ѥ)OÉ^ZÍV]>¾@#Ef|*tdÂÖæC ¾êm¡Ù73­ Uæwš‡Ḭ̂d÷æ5æáÆ“ëÌÑZT³ßŠËÉ qò9ŸECõ;?fÆ5-Üåüo¿ ýö†Ü7nŸ\ÌÓJ=SUÓGæÛ]!F¦yž@ÎN›/Ž^~]­JÔ'ê]ô¥·YK WÖ˜CM;Ç—ßt0‰}†)/¨îå™™ †×0 ¤Ö&ÎÂÂú%°°°øPsÆ`­FÕÌÌ,mì.~îXìפd¦ffl˾%á’™­ P÷íoÿi>öìYKÉ\™lÅùútèÎÁ«Ž(ˆÐ"®T‹uÔ9¹ó‡Ç£-^ú¯„°¨ìÒ$ióÏ¿íOœp—gf›ʬsÅl*"@UËo«qU.:ñ@‰$)œ¢AcŒÍ0±Ö-ÒÄ”´¶‚®aºÆie“f*ˆNød…útd¥’%|x‚þ§—É¿¦vëh®Güûä-L÷†M—m¬—G()f‹f™Ø,ÝÁ¯÷#sÆéS Éîzú™>_+„ÍšXoýISªRÃŒ#eŽ”+’Óãæ{ĬÛe‚)÷f ÉÕéDÕQÔ\ð¯¥X ªºKæ•UIÓ¤Ai1`5(¯kÎ+òÀ y}g¹ÔY_‡gò}õÊ%u*VA¬Âùalt Yèmú(47¬kýš®çrgK®(Wõ{£²X’ W2.ó:ŒJ•x.1M `É f/§«³ q¤åsùÑü¿}bBÆ„ÍmÚíš»Å9¤-þÜIâ‹{J·{¯¹b^àÌæz³¹^%lxÿá1?ëuž7¿}Oâ+žV®sMæ"9ÊãŽ\¬öÅí‰ù9òçÇ£Ûb¶ uóGöGç÷O4žKÆzBKÿˉ¦”UË•LJušš)ÊÏ^CjŸ…ÅGKÉXXX|(h ·ÁDíS›Z7ÝúÙÚ©\£¿žÅÉçwìÛ—4€ À<€óÛß&;:hApX‰eW%SvüÙæ¯÷.¯A_AR.‡ÍÁ B­dË\^@`µ/Þ072ïLš~©jêšÑãz/^• µ-xë›§ÒF¥)s4íêHØc«'g0¹›=¥¶lgα˜¬ëè@ @p€3/MµÑ ÕÁ3ŒÍÕ€{»n0ÎÊ 2ÀK”8\žƒ7N˜æÎåϾ¨#]þóÇØ›nöNíÙüíÓ“=­êÎ>fc™ÌUohTd&à_½œ5ÁÅ$4Yìnç_ÔwôàÄ5l¯É"lMSµ¹´þzÒýpÝ›áºmèMÊPoO@½c)€s;€¤±¢Æªyž zÔœ¨F“ !Z€&[I’Ÿîœt{ZÈ™YWvÌH±€±´áxxøˆUH¦áÄyxáu3샖8 AÀ·Òpl9*ÆfoùhI¢h§Ÿ ·*Õ¢YL×ìôR¿üršBKÂOÀ¥C©è3Tw—¹-^Á˜ì*™lWf4x|ÊwcwugËô_¿V·´`qI„à hPI»L 6—©’¦ZP–žÖ6ij-¡üc§[J ½)–Xüái妯‰'G:í¬w¥ ™&Ø¡ûèâ91Ö¶ìÖ3Š} ›˜_àý®ê{y ‹–’±°°øPÐëXëÔŽ¥Ô÷·Û]˜(œÜ»·í–[â–óòµPUè¿;ÖôÍ-#~[¹æDЄÍåt¹A*Ìf²šn\Úžò¬Ö×”¥ìôaÑÞÀÊ$ƒÿôD›‡×ÀÅk`ç´)ê·®/ÿÊ!(~”r/¤ó|$Á†WÜ%L'³Uǘïfj|^„©Ü~ìT‹_©49“Ïœ‰Ð¤yÛö™éŠïØ¿€q†ÂpÂì4ƒ¬‘ùÃ\alú¶ë)Ø›ÿdgIÜoœ&Ú@ÑÈUœöÚW¶p¹2&mÓù™8# AÁMQ#“ì–mLÖ§9€J¤+8ôÜÍ¢¶0,¬ð?XGÉ%¦d¶€‹´óùO¦ª ÑQ5aºHïíÌ Õ9¦ Η#¸Ó+˜e­Œ; <47@sˆU\¬¢óC0:…ÔÛ õQ¬¹¡†¤™&›#zL]“sóI㎠¶£j/×l‘yÙÃD™™µs )ٯSì$ŠJ„QÄÓÎÌíñNÀd>ðødÃ]uÉ;üÓã?0Á /Å÷Òl“SJe[ÁÕîS’fúÁ£cßãçÛ¶„ò=áYàiå¾¶ Ou ´êã %s9OÈeóÒûjAuçM¦‘”×ø™[X|¼°”Œ……Ňþñ¶üÚË_[qü'ŸúÉbK™˜S}ßþ¶££ã¶ßP›Ó¼ g±®-2›±ow<Ð94ž<5ÒÑï_èöOÇ)Ñ`Ÿ›íNO lëÓÀN\z_£;cŒ©%ËÖÎÂÂR2&N¸uÓo¾E°â0ï–§Ä0ܼ¡ó²-ݸÒ0ƒ| ÚôY–ZçT2¢)‘°FˆB!™„=8î_˜“ý-x¸.”Ÿ8ax‹¡õÏöÒü°êÿ­úckÝ«*SÏ®©CNž¸ÿ®KG l¨Âûv›ã‚§bááuýá{@XÙ“½2é\`Âõ…ã‹ß¾špµ…µ˜-)’ä© {:ÏÜWÏ1#IJAµÿŽ¿•lÛbÏÙù¤îØ"aÝYTvT,™Í ¬>ŒVJ”\¡âõP߸™û_i½)žluM¦Èˆ +ÙV嘭“ ¸dŒök¾%pCò#,Îmñ²³—WÒ‰þwOº1œÜÙ%]¿%;BúáÀž‚ØyÈét¿8Ÿ&‚:#ÂÔ0<±°°°°°xœuƒiÞ³mi,éì…bü‰ÙNŸ¿?îAë•1PÑ †W±Õ/#!D'ø6"7W”`/r×7°åsIýÄØ¤ÍTNÚךgµ+Șt¿LÆœ1{óÈÙgœ¸X("ð€öÂ#O€¸Ž2ì  T–+NOIЏÞ? ‹Ý+‡.x¯>NQ¢f®>ž­ºÞÌy¶‡†Ïë­ª\Çzf[„ÁdEƒ9ä/ƒkõÙb©BcÙ¯ßR:›t§“XÌœ¦œTcäz˜Áêšñ«#LÅSö•‡«¤=ènïw å(À°±$h$@#5]à hº^U6Ùi¥™© $¦>9‹;+_ê?볫*SМÅجQFé:ªnä{¸m@ 6™R3šèÕÏôHGÛäS Ê_I'&ÍçÏ„ƒ‡·œ»è3¶žQ·‡¤LѶր²‡ËœµicØT9‡9˜·¤ÈNo„>Ý8à`”çf»óq?‘¡z¨/ULë˜W½|vq†1)_3"gañ1ÁŠÉXXXXX¼¤˜ÃCÜ7ªÊLgŠþ¾Ügǹu{ /§$3a¾DÛ=ÙJm«å”IÛßÞœ×$G7HÏTÓ-n,!b¢jò´rwä‡ÓT¨N¨YD¾&bþË?šñµ¥þÄž×ZBm‡.7l…¹yxä ¸ëÆ+Ù§‰˜abk*ÞžsoôŠ‹vUôH0íÌ®îLe"LG5²¶Ž¥¢¿Óx¡hº’†ý681lv^ý9—Â+6]>-;É•Q,]×ÄrÉîç?¹½zèuô ß»Õ<£7õVÇ}ëv^$A`ƒõ^EšJ¨rÁ‡1Ž®¦?èòð¥]Y(áØø‚~ ˆs¦ÓÆd2H(Ûq:O¹™ìh©êÈùZÁg²ŒÓ±Hª„è2 G¨ZÌ69W†üª*3¾xn*ø©úä—úÏ®gyMþj¢ ø•Õ§JÈUF Õø-ˆ“SA{ú Þ=ª°hÞÎõŧé=†ælVç¥z °8Ÿª &#³”yèµi‰üZŒè-,þÍ`Åd,,,,,Þ+éú/ŸñÜ·#—)Úž;Ýú³smÁƒ­':ÝSïNÆ2B¨JØ4}]åï*N1M65gKŸ«DÆÕ9/Ó!'ãsrIp„¼×9úÖB¤³×´Œ_ì7ÿä·+ס »!nöà¥v¢¶ô÷ÀW€^‡“çj×UÀ5…G”ÅoÇçS"µ-réó~Õúâ¥§Ž…®¾8‚–5cű©B™ÈÇF´ØfjœB2®k5,k„° g*Z|õYC×J™¤`'·o0·Õ^{ËŽ>´Ð˜W6ö¹2PCk–¬‰”¸<ÐæÁ vn‡Ï‰v¯„V›÷p äTíÑ8†€ÀÃW€ÇQM13±í’ziÀ»Å'úí—õâl ƒ=S¸J½– ™—Ådª*óØh|kh®`¸æu{H€• èd†Ÿ(-èÎ.r4¥: zÏüM]“s ÞÍõõ¢‡7LTf˶óÂhüì|t·È@È eûº2+àô¥ˆŠŽÍc^ hGIÙXíúPê:~h;v*F–£ò<®©!s:dN¯v‹^DàQÄc¤—Òµà|¦þG§Ëö?ì;Ûš¹B+¤S±êä¥2Sš?ˆ])®ÈâR ?¹Ë•ðµyx7ùÄ÷Ð9|,ÕTšUíD©4cǤæ.6{ñªˆOO^›ë·…ÅGKÍ[XXXX¼'~qÇýή™õÛ_•|•Œ‡)±ª\¥JærT “àD@6)#3ji‚ieˆIO ä­kj2R³²k Wߵ޿î‹:äþ»pFdßõŽ1‘_k|¢HÜÒã <|åü‘'Lèï¹$6¦Í¸ŽÀN,m¬Çç„ñ }ßÖ¹Õ³ílË=}*òÕ=#WX¡1 éËë¾÷O4~².éŠG¥ Û˜¥»Y3b±+U¤_B,.Õ“™Ã¥æ;=5œ®êé)ÝÛè‰b·0#Gª¡›õ ]¡žä"çQãflpë‘ ˜UƒÓ‘F6ž†4yPÑ|ÎtŽÁ,ò»Q™ÕÄ Ž-%$‡Î]ý½sÃ6ó#hÏÍž—f›Bw4L\kšÜ"K¥2%Ûr¿»Eò:íd®>g›m2Æ&ßD­BÄDå"Xs¸ÒJŸŸS‚Çå¨h08Ý䥷ŠÀé «èßâc“±°°°°xO$sè†úò®®Üû(c S¥0 SÕ•ÙSë!eÄÕ‘ÅnmÐ@Øi¼g>S¬VÊîºÈíÅ)w¶z•l«týóèΛpIg÷gzçeÇ]Þc‹æQëdQÌÀw~°T”_0\çÔhq©îâÔ˜pWs¡fq…ß%lúDêJe: ¸$“2G¦Jõ„f †»dÒ!r©"ˆÁä‚z zÐCSš"L"D–×tJ0T"7¡Ò6ÒmßéâíxQGoM9ÎL]%/nÅ£(w…€Œ¤±’Î^(ćŠñ×2½§7½Zè –F.¹H¥%6£4‡™¢ÆtÃÙ>ì¼ +å‘ãˆÞ5DDG%;ªá†°ŒâÆ|½^h²•ç~»ý仓1‹4z«‰ÂÊ¢ÿ„nÄ×L-[GÊ×ûGJ d„¦o~N8ÄR ?y·ë€c¦/µÖ#–’±øØc) ‹÷Ä—ï®6×é?{™Ýÿ›Î½o[+Ó@eƒAÚš­3¯LZe¦ªŒ‹…Nj.®MžÔÚ†x93Å’Ê'w¢±~±‡}MÄ*ü—Dñ5 §Ù=º´Ç{æ]¬Aà¡­ Û½ûÎL± CJýõÔ¥@ÄØ 󯳥uÍmîí½s/×ˆ†3Ë[‹>?¿«u .ȱnêÒ‡÷,&sHÍ×Ê« ‡ËEc)m©C˜**tN©-ü0CeŠ36„Qt—lëôª|xÒ~z"°Öä b‡ŒH=vYL¬ª2U•9—ŠÏÔï›ìùÞèÆçfº°Á1óÅð¡[½çeOÅdêµÄ8^‡-åø9°c*j²K¶÷SoÞÆ@²*óš¼å¼ÒžÔÂcåãK:ûVªí_&»¨Äœ>ª$Sßù!vòü»ß…]•£s+ï2¡øë¨«[V\„#åÝ‘(Wúñ…þªÆÊ&7&7¼PÞ˜–'û œ¾»AI/\SÌÒÂ⣆•]faaaañž8Ôߥ¶5jÃÔÏ^f{m»†ú–šL•ˆÅꥫ]ÕĦ z½›n¤u2þ¼Ñš(;7¨#6AooW”0¯OÔ¼ð¿2¿þ)ŒÜÿßxçÝá‰zûºìÎp¬†˜À/e—}ït|{,ON;5ÂÝÓU¾B ‹gÔNõÀPlw{í¢#ÍÄðw¼ËÎÌF|¬â·• º»dÐa!±|$JVqºÉõÅ”˜ïDÂ8BÞàœy5Ñü™†ã5Çâ†b«Ì„z1ÒÂ9×ó3§ ?>åB¦±±¹†H›4ãíø¼¡šÅž(ÙK ½?é©·é€c› °90»wY`¤„\#fÛ¤á¥u­-Üäê9{éÑ7*Ý.¼xñ9Bnâ*IÓÞAÌ9Ý9$79p%ˆ—cTšiª<[ò÷Ø37უ9Óî'n؆ŽžÆ¿ócz÷FÔß}ÍZ`Ô)qe߸d¿Þ~ ¡<à(¹Û7]Ñè}é.…ã07©Øq!b—Ͷž¨“…ÅGKÉXXXXX¼,×3¿8Àzè=êC73*OSïÒúlÍ„é‚æs-a;¤¦æLÏþR÷u.Äœ-7©¡^AÍ»•Ëü©~þ¼ t(¾oÆ÷ùØ —{÷éF‰·y¼ùºcOà6cý½¤³øþ Ø·¾¼²]ã 67¦r¬isÍ35ÚÝHÀpÆTæçCþÿ¸ë H±­üØŠ‘1:}¦k]_ÇW–r:#GHàe q¶|$Ñz]¸vÑ­•„j*)´E+ÓU¦~{¿Ú8›þ—£n@ÆÆ–¥WO”IQ¦ó¦kÊîÝ¿¯ÐèlÀq|[}ÑÁ¨_ß0ºÂðĦPpÎô• šÒµ8J´Ù&×\0.õ0sç*±Ý®K»ü ö™ÙB‹).2"“ÝìlrÃRýó¹NQ††Ûƒ.Ÿ*¢M=8öÆQtÿ]ØM;Œm}æðù¿~*ô4¢md[¯Zàu«_Ê”ì~GyñÈœîb²W¾j5‹EYEŠALÕá%gw8ÎŒˆ £š/¯¹/f96‡•ù ð\ƒ3…ÅG KÉXXXXX¼o¼£g°á ꟟åßu|¦ªÐ ¸ªÂºëÔ×B3P¶¬8Þu‰¹0™Ú—éîPè(L=~°ãúÍ¡*Åøõ9ÉΠù,´ìì>™a¾Ðuâ½ÞûNë>é`>ƒ¿ø+ú{±7ŽQ_Ù#^u—Ì3j»¯z|*´»­†Eab‹Õù¯ ÖÝß–æe^ #«c/.ååkð¹ŠSeÉ`• lðN?5ÖÙâpú„ÚÒKP3*Ƥø_¥0n6ìj=ñÉÿýyÿ=%,W¦ΰm^3è³9Ü\NþûÝ隥A‹,j˜ F´"!©ü|»s ³¸e¸É‚iú—çÚzŽ@NwºÞy5¦ÄÀÑ‚w·c.îO/h®Œæ˜W£¯œ+=ØV×ä*Áù\:‹>LàQ·ÖÖ¤O0ÿáQç}[µîf5àY³qêr<•ä2%3\ñµ ™õ\’ÁNK¡#娛PR:…¬Ïÿ¢ÜƒÍ•ªí% ‡J‘I£<¨µwº‡þòþ„(‰¼ïÆ4M× õ¿ã¨¶±F|Tñ–ʈ¨*ÜÙÎðÕ5ÌÒ ©W˜~=Ûòé豋GèrEg`¸Òp¨mdÊ¿9±Øà(ÂH&ΘO§µ°C=[‰¥c?}á̽„xBö0Cý]ò·Õd–~âu'`pçÖjST¼ò2ÂÎÊá©PoÝҷâý&ÿÕkJ:{¾ŸQí]¶Ì-α—švºæÛm“ðF~Ã6aNV”ŸkêVU f{¿ãÒµ‰|œF ‹–’±°°°°øµ°LÏÐ>ÇïìÕÛÕõê„k¾§Ô²är¢$¹}q48rÊ4г£>C‡¡ øöÖ£bK‘Ù¿ÝQ—êÔ°E~wä$×ËéÈ´^üVàá+ŸÁž4ÿüa `]{PžQonN¥¼«•Œf`àéSáOoLÀœFÖ2XsÊú«*Ât1£8<ô¥©|Bq³/wh¢qgcíâ"ði3&L”’Ä¢érrÓ°”û4¢Å6P«úPÀ”Ÿ6üy•*•V–6zsÝMW·É^‡)ÔÑå£é¶máÅ#!º4ªøfs[LŸ ž¸bºHYDÞLDÙD”Mlsr/Lb¯ ±B¨L¨cËMBÊËšcòïÇäñYþä¨ð‹“ŽíÒÆÖ5Õ À¨i)ö5]m®äZ&éìd98Pñ=¶ÌΩ7s­%¹Ç?°Yz-·Ú„I %{élT¤µгÕPŸ3¬R‹9–’±°°°°ø5"p¨¿KikT¯IÏ”%R7ÇÞO%ªTÕ£Œ¿GX7L7:RŸo{yÚUç,§ÏWšº·m@6ü='´-ãXªîó±Ë§<Ü´óÚ ²‚Žò¯&‚íeÇŠz’¢Á ŽÛ;üÕÅd­•èNÇÊ ™‹DÙÒ±dôަuÅdBI)+›i6y3j‰Ø|þ5k?ÆŒaƒDô”Úr#{©MR€¿ìî2b“FðœÕ4„—äB^ÛXèYÃÞà È& š‹d`ºê8XÚ¦5»Wò&ÓÅd7Ú‡j^8=‹êë–ô$GHwîGžœùBÿ¤¤³YÅu*[ÐZܤåJoñ¾ºŒ(“dž\ÿ‹º­Rk]I`WºðŒ´LÙá·—.ü®Ú©e’ÆN”ƒûs‘m®…=þQ/[ÌÇÚt³wî–àRjAqåUúÓácï̬ÞÞ3÷ú ]P¸·óu—” €(áë/æ±°øˆa) ‹_;׬gÀ}ÜU âߦ®É™)ð5äÀO¤§ïjžx¶Z÷G|Mÿ‘ç‚ÑæÕо–mÂØ5uXå]v.C&zïž<£ÜÒ”zk:üÉîË”L~Aî´çÛ÷ Àœvàêò(Ê ]éãWìNsÙ ¹¤®4€æiåÁ¾ÑŸkü¼£TÓ`/JÇ vD÷ (í]Ì’„ÔêúéK± =xV6BÆ·Ì[ÃùžÞÙ5¦|ç*““LV2تÉ@Rs”Mº`0.B€Y¶SJ=£ ­щ]Tdƒ;Zjý×ì–[ÝçWÇdÎŽ˜Û6]®/:yïï–cd2&$%ÍH®¤ä8Sh |©±±´¥=92ëü—ƒuA¹+Vò».K9kpU’%›ß^:_n­L-“4öL.6Yuôº²¿ßzr’ëg›½´úïšß¼4LgŸLvݸìõgÕ­ÑÔ?iâÈy—Ã.C¬–’±øØb) ‹ˆÕz¦¿«¶íR©Šëâß›qÙ ª2%ÊÔü6þ¶k âñ†×_—ÛÜ•­Qí­)ÇÓ'B·vdšB“n¼x°ØÜÆfÛ×ö˺*ÙŠó_§Cºõí÷eñG2ÞLÅá·-‰±ÃÕ¯o_rˆ>VŽîv­ž’g*TUexúêVW!/Ôj¦É3ÊÖºü±±À ]kªä:˜.LJµG ·‹È'µ°ª‹(€lrcj}Ù½z±¡0qtÞ³5šÿò¦ËŠg–+–ªÉTL¦lГqáŠPLº¹ŽYü2}R%Ù„ÞT¬Pn7KH[#3Rð¥\w—i·_Vxsn üeúóÎ=æ#O‘ýÝK€#åz{²ÞžÜ ilFræý jÔC©ÚªÙ<ÿô)[À¦ïlÍ\ô09*oM‡Bp‡ëRjYUc' S ^ Ãú<ÙÏ6IcߘoÉëôm‘±r÷ÍLë½Á‹î—^JŽÚŒ=ñù—gâÈÜØVjŽhói2à}—m—,,þ­c) ‹”åzæï~&ÔÔ3`Ju]nQ5eR \©J«T®B¾9ǵ¸ Mo H€Ð®Æ¤ß%*Føæ›=JA £T_Cj"é>5ã|yÀ{[WîVÿùi1ðäÜ–.>Óé^oÝùrŽÌ„~¯sø]? xZÙK¼0ÿRÿÒÇüs Ú0QS¸³ÕPU¾B@f‘ ö’¨¬KÉ€¹FÀ¬5˜élx<á\¼uM;‰‘ÃxÏ1¹ùVáØ95º…WÆ5à5Šžü̳[âê}›çsºsLnMF4™iÕ‹ŠÅ†+<®øÈRŒ9|¥bY ž’÷Ô=1ØÞà^êGÉR›m2Æ%÷¥{*þ;üç8R€±IãÁ›W6rxèm†ý‡É›v¬ôcà(¹ž’ë)IcÓUç|ÅAÛéK«æ‰cözVÝV_ÜKŒ’Qè¹²-j/@UeÆóçÃwÕ%?Ý4xQœŸÏÔÿ2¾#’Øë[YôÊ\¯“Vkz3ð”쥤›A>~Æ ÈÐ e«Ë¹ÅÇKÉXXXXXü¸²ž)ˆäÞº…uN%J¤(óY0O²¦˜6¯€uE§`Ä|RgL»÷úû`FLh&¦:¼Y±Î§Ï6†ò¡üxÒuzÒþò9ÏuM¥OÔ§ž›éž©Øw…F¯ °KÊ3³d"ŸíýÌŽóÛJ~^›\ð7x2ðw¯{î¹iIm¼]¬»ÑS»˜~9qG9QV7oY GÊÈD’Î.nú—óêí½ó?x=ò[¼B[O“w0çV{^)o ~%v@„(#§ŠnÞèØœ”²>²TË;lטÑW žVZåƒc »š'/=!ï œ›®_Lõt ™×Ôô,r9k˜.lë3yšÚÖ‡ |m1ÇQrÜ)Ç)¸!Ʀ+ŽœïdVxjŒ{{Þ³­.ïçÔ×îOQÊ #9…Þä_ø“þ£/¯jìS#>VûFçéÕoª…8Øê¯]Øõ¶r©J^çuô¸‘n>ò+nO›±øøb) ‹ßkêd"½öþL”ˆTŽ.‰D¡BäÊäãt›…œfsX€]=Å{w_CNšMšg•ÜÓã˜G€¦P¡)T¨ÊÔ/OßµuÇ^?ùôXgŸ;Û\³]”É×Ò¶>S²=qÁ÷·žYÿ2ÖÉöhâ…‰†OæõSÞhçv˜0#†btyu&ÒjÂÎòÓ§#‹~ÍWÅM©U­†’žÕv4—ö½í½wwêâÁE,ÃQ6é¢Éà8q…S« 3ømñÜÝáŠkUÇ›÷—þÈü+Ãõ™Ë­«9BnwN™ìÏEË;˜»¿½FÜOàÑ]»ô£g¨›®»zT§ä·ÜàNï©gÒç\Év,å•(œ€ç¦B¦úœåñ4;žnœÄÏ”íAS”eù¥…0 ”ª€˜"YRôz¹DêïÏÔ 0‘‰˜€À4‡r8 Dr8ë²É¹|¨Kxþ-L3¹ðîûÏZXü[ÇR2¿aVë™lÞìo•D «ø\š€±y*Y †²D»õÔë.»QT»åûö¼×礩ÔË&˜ÎQÝ¿\ê†É³Ú½;fE™Úw"p~ ºc‰¢,|ÿdï]-SWiõÿá¶5»¦¼|¶¢ŸUŽÔ›6Ü[Èhx1ÓôPݺšx Œ:^X™OµB5ÖË]vP28 §¹ ¯ô銫l03º\„bÇU@0.Ùp cT>JéÆ'³Ií‡o»ÚVÚØòë0á¥7´ðÌÙÈïí\ÜèôL58RÏNu)í²D.5RCtâ–Îâßz+éyZA†iêæŒHÅ­Í]^°M+¤›QÛƒ9@pd&r¦l¿;žÜƒKÒ ïx'ˆûr¢õVߨ¿ñrQŠÞÉPUèãï®äáYá÷Ûäüǯ¡ç©…ÅG KÉXXXXX|(¸¨gŽžaiíWç¨ÎÖÝh¸læ %7~MMR• I6vÒØÔ¡ \ D¬vïõs¢LrŸ ™ÅB­°¶è]vzÂ&ò;ÖìaÿÙÓ0ñgÏ…ÿø¦Œ†<¦ ƒùø&[®fäd5<£^¨d ¼ßU½Â0É`uHRvÈ8[1˜²Á”L:o0nBÁ1pjˆ+mŠIO¾M}¾n—79É5Z ¯øÚmeS7G%;Ï!!3ù×G¨/ïÒþæóï¦Öè½ÐèÏùgIwch¥|âHy{îÑÿËT= Ôå]Y©"phS‡ñÆqêþ½W×ÉU…Myž4دÖqê'[§ýöR”Ií³Ûsçc‰ÏÊÔÿ¾í슔ޘoësgªXJÆÂÂÂÂâC„À¡›¶ËÛ6`ëí¡ù>A!9hÌ8OvG¤¹—¼´$V¿±/³¥<6è|öŒâíG&íÛc…¾†ôŠIÒyîG'\}ßȯoÉÈ“ê=”Êcò+ÙÈÃ'×y£¯:Ÿe•Œ¤³’ÁVuV4˜WÀ¸b/­ê*Ì‹Ô^>¤K „Ìòjãû›˜ã®Rsý¾T$©ܹ×üæé©à[F#f(ÇžŸéÛ#ÿ?_ekþëãö®Ùy³þw\~Uã¤I7»§šÂÚã §r¾ÛëÆ}üe‘PÀ€!*#Þ5uÂéÉÀÄ‚©ëâ¥?Ý}AT˜çbŸêšòÛËÀÓJÐe…ÆH[›«b¤˜½¯ù¶EÃn„ºýëêÚè®Ì/p}ÎŒ—RÎÌ8ÜW/|²°ø¨b) ‹°ŒY„Fr¦MÀ¦¨h©Àt¸. #¬~cnKgqdZøÁQçhÖ]([Z³ËÛ#pý7_¥)Ê{A”ð¿}AøÝ[‹ç*U\¿ Ú¶:¯‘tª:›‘¦…¼NÎ5e5:@©cËvJ€>Ç ìy§Þ&[uÓ¢mkøPWUf,ëû×ù0Bzn¨ðïwQ"Ÿ;›µ‡ÁTvÀà׿ö>76½VxVÛ/¼=ì¹qCjũޘqWú÷»‹¯M6}¤ýÎHb¹8Ôß¡?þ ûÍÏŠ+®­ÊÔHÂõ“3Þf§q[g¶1˜€LÉöìÙèݽ3+s&2ÞGÏÔÝßžyxË9ØÕ™¢mpÎõ½×ZÛýbW´p12–'2ž‡zN¯ó¹"nñà §¯¶Gß™Žlˆ}@9{B,%caaaaaq‰:˜rÅ×È.FƒFjeN”ÀêÛŠ­1qdÖöãιðŽ–ÒÆ–‚(S£"È›÷ºÌ‚¯ Q"†§ØCçi¸w“üÈ~ždÓž:‡#½ž¥Í·¤±Uu¶¢1³UŒÈv?¥€‡R¢\ :Ü ßÛÏÿ§;篚ÆSrNYY€QUèÑ´÷ÉÑ`Ü®oäÿÓöc¢„=ò•îÀ#þÇË¡Xo`G ¸Å½¦õÖLk´øÃýÁÎp_ö¼{bò´²§a<–õ?3<‘öÜÙ0á–çšëµÐ…KaQ&Gf‡ÇŽíh*ëî gËmOŸ‰|ºov1«°ªÐ/Ôeªôl_n9àwVüÎÊ–&j$á:xÁ›,v4•Ûê+ß;×úÕžkˆãñ¬š,ð´¼-b⌠À ËX|L±”Œ……………Åe8°Â^áÄ¡jÏLÑ~ƒïÜê§ol-´Ö•Gføïr´°;;e@h¹—×û‚(#ÓÜ#¯óß ~ùÅÅ2¡m=ÕŸžl˨îüè/œ£t'ccƒ´êfT'©Ø)6ygà¶Z=I6 îrÑà¼W¹5OÉsµøuU¦FîŸú›œúöúÒ¸~g–ê=ݵSûé‹hB³µßTWp<&$מõƒF`õû®Ë=qÀýûŸº¬´iyOLžVz#³ÍÞÌÏη½0ßÈ÷„–Lênج>þ ÿ廥‘Û¹ÚZºokj…XÍ…§O…?½q~QÆœž ¾5í¼®¾twmמÕú3} ÊÔ±aÏ·µÇ˜’©* \ÃCmjz x”™é¼‹ñ4ZJÆâ㊥d,,,,,,VÂ`òõÜù7Œî'§ûï \ܸ/GàŒm忌UG¦¹GØ÷t¾Ÿm=Æg¹“£\2Oìì’þ×WÓPU™©‚³¢³û’‘°_ýB{v*ï=‘ ÊÓ….¶wJ—ð\½B½9,ϧ‰õt…Ó꡺sS$Žã×5—ÿË-#üI%rdš{ô­Í£ß¹¥ÒT'UUæl¢nVtœ«Ø#œºÑ›ûFû)Ž’ Ë {âlºêH{ž™Âó‡‹msg§õ«~×ÊꎋDêÇéWX12Ͳ-¸Qƒß|è†9aUÅür¦K¡#¥èg£F³ÈÛ‹¾ho­ÇƒZ‹E2«‡ñŒº¡. ó©ñÐãçÛ†gåÏ´%ÿëgÊ¿Êml­ñÓOø§ïÝ’õ™·b)‘¾wÓü^ùdÊö´D-VÑ4E*¢D¾=`ûî3þî:µ«I x®ÔÍ&âWœä6¶ƒ^•Û<•ã“ÁÝíër °°øˆa) ‹Ú°¸ÔÂO&,µ6/ÌõÖ­ÝS½W‹Q"GføGß´yGé¿?˜Æpr,ëýÁéÖ„ÎÔqZ¿áÆøøê–ðûÍߨÀŽg<ö‰a{õ¨ÜêvuG”˜_jŠ®ÜX ¼9Ÿ©áÇ%JØð$sh€Ãprg—üÀ®…Ñ2±ëW–1ç³õg‹¾Û"cZgܹµúöYv϶*,+’YÁâ+ðÈ~µ32«âÚΟ¬4´5÷4è'¹þÎË’ÊÒyîÉ£þû¶'ç²ÜN†gsážík6N]MUaþîXó7·Œ-[¤¾gsak‘ÌÒoœä’~g—ÒÖ Ôt8=‘Cé,ÜÚ‹6Ç“?:Ú°»}ý7·°øè`) ‹+Ñn›½šŽ²Ë_{·:”F‘лœÿÔˆóÐ ÝõÚÃ7énûŸÇZHš¨´Í¡…&Ofµ€Y OÉ=‘ùžÜÒÅŽe~$9¿H&}·äS?5í®’Ž?›\X Š%é÷ŒÛÍñþ¸lÈéLYì^¿±oZœ²üÍ9WûÎø…€òò¡ñv«{çR­SI,ÜÖl¹göíŽ5xâ£ãÆK_Î}bl÷'¼iUyðßöÄ¿ü·xí¸B<ë ¾õYÕk” ¶J€Ç³c/yzßÜóEwãɦ~Õú¥Ÿ‘kš&IË,½XV$fÌnâ,„dRŒ»eÜj²Ê©WvOÔnÏ-`QL1OiÌS*öm/›±])>?䌪½±úÛ¡k}3MÕ™öƒ¦ýMÂçyèɚЄX殹h¢èáZ‡%þŒ{™¨Û°\e™–ZíïþC<ï×.}®}ô©$dCû~­óOú ¯­žù˯Eßÿ´¼+bïV:‡,•ö©¿>[&¤LmeìÄr‹gëÊP…д.kQ­š¯&é«‘¨ÔwKþ··ŒUÎôþ=šÏ#¶Wd„¦Û5!¤ò’H…šŸVæÏ¨¶J€±šb/yz.Ýov¿\ߣZ4@$* m™Å K]î/½PSÙ [JŠLJ‘§8ÓV5é+»Ÿ—€YJ1ǽeqoÙÄó{ŠÆB¶«·í]wûÇ×ÎÖW‡”GÞ¥šããÑ%GÊ$ŠþáÊÞ¯ÖŒ6W¬bYÈq°U»v#óÁ%ñÁåL“[n©MO‡¤KŸKB’„Šmš’ه®>¨8ÿÎéL2ññ€õfÈ™Œ*íÞÙ¯œZ”²+4²ýøÚ¶¿x¡µªŠ¶¯)Ýà£AñÙuqîÃLK½¦¥…]}ÐÏ{Ý¡¿p~ã0%ƒ­…’`¥¬¦˜ß5l7–ÿW_“_¹ÕZŸ½AH{ôŠÿHÌ)þQw‰l£ê2{ŠÓ·OùÊ'Ö)`–RÌqoyÜ[>ñBKÑ@pÛ…G×ÍâÆŠ9wù\måò‹õsüväKß'Œ‡‹O}ÞðZs_™-—鈂Sñê7£Ál±di3á¾}W’,„Èþ>2 I)6)Ÿ-ÖÌË„pôJ~opµï™Þú¬òÛ‡–ÝÌz…ã÷y„Ï#"Q¹o ó¼?¥ª¶.¨(Ž^u§¬ëq6+°aQ2¬‚bŠ5W ‹Œöæ ¯Ðn¶6„#Q!DF|ùî²Èœ‰ÊwÇ-gºK‘Ñb²:ÞâôÓuå<ýC1Ç[vÜmÙ!¢1S`´ô_?­ö(e®èž¡ò’Åí/ ÏÚ³ ÓÇg‹ÿ'°ó÷›ûÊl:>‡QU$ŸgÑ}€ËßD·Tö ÒÓ狦K…ÐüÞñU½õûW«y–ù$ç@Uľy_˯gÌTKò°oæ‹Û*%ƒ-…’`Õš«F*l3ÿØå‘•ÉJËÝù[õËŸÜÛfTÉ`(*1Ö9µƒ5Óu®‰œ¿KÒï ÖW‡ÆB¶áû–¿ÿx§×–|zgÈïùõlƒöà—¸:RÝ=êüꮡr=gÌeÏú^ÍÜ{¿JœéRw Ôžh]áÒ”+7˴̪ãgUêwÌþðg®çüë÷À†CÉ‹rûÌŸ üçgµ=iM›»~[»Ü-z'-æ’b³Ãa.•|Žôaïl]åä† ˜Eþÿ®3ÑV{,d»:\üËá†Æ²¨ÛñVLyá{![勉oÊöêÓúئl½©Öô‰çî×Þˆî*y3S~ÈnõM<ú’à”õ|¿­ã·×w`–T…-uóŽºô!`³¢dÈ‘Rÿý¯§<ýãv!¢&WµÍQì³'ùBõ•S9`–RŠâ^WÜ뚈ÆÍý£Î+wô»$IŠ˜¸æ^}úz¡¸±d'gÃê™ó%úmß~îŽjY~€HÌø·ïUýéo?üXÕü9Òzã%HÉ`Ë dÈR”øÖÁÁÀ]G×`ñ!Oè;U7‹žf)¥(±wçèÞ"›4%±·f´ÐƒÚˆTkºµa¦Þ9ó³Šþ¼òp}¸µn™½Þë.ûݶ©'³|ÅåŒW–¤‚“f—Sßÿ¢dX¥(á÷sØÌjƒË&M¡G±Ñ©ÖôwŽn+gºn(ß>\89óÖG.!´Öº'wfekÝÜG—¬/£d°%È…€Ž©Ötë®Ù¿zùîá†Èé÷Ë/÷gŸNÝ›2œh{’ƒ©,‹ß›Á ~T-’X+Õšn­½¸?ôI¯õŸÞv'Íß{ÛùÊ‘É'>ŒÌ‘æxÏÀâ#MM‰’ÈÚÑï¾pÿÙÝÑ7þ·äÏ_šp9 ppP½'~í¦ôø×úÇä#@ÞdiÝ.Ü´fOòÒuÓ¾¦d¡Æ<” À¦rpo2eZ›%°©¨Š¦*Z¡G¬;ÖÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè±®®îìÙ³{öì)ôH€Í¦§§§®®îaû›ÇŽ=ÉÁl2Æ#GŽ!zzz =`³©««Ëþÿ@ÞISSS…¬ëdè±ÐèØÅ‹»»» = €Žµµµ8p ‡ )@»;::òþa $Øô榳³“’Ì/>:ýó+9\ØÔì?ÚþÌÂg²óÊ7¿•§¡6¢7~òº"·†É¢dk•͘ïþÞäpíé|_±0f²Sæ´çm|€§££#çÙ˜,J°VÙŒÙVªæpí‹Ç¿þî¹wMËðX” ?4M+ô[%È¥%“J¥ŒFãðœ'XÑhôƳ³³Ù‡áp¸··7vT€Mƒ’䇶@$éííÇã@ ‰D£Ñ@ 099ÙÓÓ3;;»ð•…5@¯˜åäÇ|–¤ÓéÁÁA!„Íf ‡ÃW®\É>i2™fggoݺµ{÷nƒÁPÀ¡6ædù1?Í"˲ÛíÖ4mffF–e!D:–e9‹Ùl6·Û-Ë2s2€5¢dù±ðž1EQ‰ÄÜÜœÁ`e9‘HH’ÔØØh·Û¹» °vÜ]ÈEY’ •d2)Ër*•J&“f³Y’$êÌÉòcáLK8îëëËfL"‘H&“™L&_»vmff†9À9Jóq’J¥FFF¦§§%IŠÇãB³ÙœL&“É䨨ØÈÈH*•¢d9s8'Ož¤dù±pÅÿöíÛUU››S¥µµÕï÷—––jšV^^^]]ÍŠ@β#X'XŠ¢ìÚµkppÐív«ª*„hllTÅívÛíöB WósêÔ)J‹&X¬Vk}}½ÑhÌ>¯ªê‡¬ÖÂŒq8” ?–&ŠÁ`Xøä¢‡¬Ü¢Œ9yò$%È*°N–fŒ` _(ÀzX6cX'ȃ¦fÿé|ÿÅã_ÏáÚwϽÓÔìÏû›ÃÃ2†u2€<8ÚþŒâÝsïäpmS³?{ù¼¶¶¶7~òzGGG~Ø:;;ÛÚÚýšGd ëdùq´ý™EA’³!:;;óòÑS[[[ö þÃ<:c„ÒÔÔÔ“+`ó¹xñbwww¡Gбe“æ±sêÔ)JÀ²’Œq8ÿÖþ/ endstream endobj 937 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [280.515 285.996 396.695 299.944] /Subtype/Link/A<> >> endobj 938 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [448.948 228.213 500.523 242.161] /Subtype/Link/A<> >> endobj 939 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [67.872 213.767 95.284 227.715] /Subtype/Link/A<> >> endobj 952 0 obj << /D [950 0 R /XYZ 33.853 921.043 null] >> endobj 581 0 obj << /D [950 0 R /XYZ 142.851 389.691 null] >> endobj 198 0 obj << /D [950 0 R /XYZ 68.868 352.995 null] >> endobj 202 0 obj << /D [950 0 R /XYZ 68.868 111.692 null] >> endobj 949 0 obj << /Font << /F17 421 0 R /F23 427 0 R /F33 429 0 R /F34 597 0 R >> /XObject << /Im17 948 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 957 0 obj << /Length 1834 /Filter /FlateDecode >> stream xÚµXKsÛ6¾ûWðÐÕ© 2·¾œ¤=$m4¹¸™ MÒ2jŠTøëi|w± %Ê”-'íEËÅ>¿]2ðV^à½: Žüÿ°<{q!¥Ç9K¢HxËkOÅ,V±§cÅx¬½eî]úß,Î#ùy¿Þˆm·àþ-Î ý·Uºioj8èÜAMÿÛîöÂÁ¦ý䎚z`²ÿ¡ÐVDœö<‚ÅÇå//.¸Þ×,ðÎ…bR&¤Ôët!´¿5Õjq.á·}–m{Ý—å=QŠ¿Š¬ï ¸='BwcZZeõzVùw¸Kèj$WÅ-þxXŽùΔ%­®àOû…#7¦ëŠÊ‰®‡+Üinš"ëêæMAÝyÈÂP‘îY]¡ò]j*«¿Ê>i­žÆCk¨Ø¼)²Ûwµ©º9©ˆ…‚¼Î¶8eä·hƒÁh:“–´ß©i•(MÛÕ×Äšµ‘F¿àÆ´tžºýu]–5Úu×¾Dõ¤Û¡màÁÂXMë²­l)¾eÛ®Ÿs¢K.ȬàiHªS˜ø)LâSôIž")<…):…I¤OaŠO±.9EÒ1žKÆØÇ*|éò.ˆ¨0e üË_‰²ËD ¦ã3•#жíM—^•îðºnÖiG °&b½¡šv…ˆGM½¦³;ˆQÑú&vÚ¤ ©‚DÁ\ņ\1%ÅP†ïÇŒþÇ:ã|8Ÿøäí¦¨›sŠT,ábWÔÇŠæÜ½8ç`¨ˆŒÔΚ!/ŠÁ¢->÷E•Žïš¨Ö¸pîD@ÔÆÖ=9øƒÂ_ì;›¢C06\†þ¢UJ׬štsc2k¹3ebø©r ‘Ö¬M™6kB˜ ³ê go׬!X¤Ç4pˆôdƒ}Iã2Oì!™pÕˆƒo•›­É{¢Õ>”>fÀ,L»ŸÚ|¾ Ã=Ët5;þk¦ôQCºt5Œë­YÙa×b•_¤fÊ{Mhp—=aSÜ 6‰çÛô&Ÿ3xdΛH ÚUæÚšÜÁ¢év!Õ’`ê^÷-ÞÅð s!ýâ˜y¯  w Â/ ß4%õ^×{ (b*üJƒÞw BÜ\JrfdZíTÎFØÙÅe49]×=õËéûhK×ѸP8øÂ8A6°ñÊ£'žp„Yè/OäMSg–ýçåÙg7¦rCÍ è8Þõ¢ ò²õÙåÇÀËá&&“Ø»³¬kO2•àc¥÷þì·¹O3<,¡•/*t­9­~TäJ¨W<¸¾³£~s»p‚40Å: ¿§åa‰!uvlÁ¤» MÒÎ~)¼NÀh]-™I›{=«íI\^¯Ç@çEV¯ÝØ×Ìöh‚ÑœEq8mÏkRûSÓÿÞ¨âñÖ¢¬3ÓÍÏCL<:Yß4Å®`´›JÌ :~BUëD>3FÓjÕÛößw³7‰aÐ8Ö2lƒd ön¶Ð.„ûˆÿpØAül´]Û¡7+ÖÅü§<-Y,öMW:t"êwöM–{‚œŠÆáÿ q·{ñÂe6È»i¶šÁ—m…:U>`®×ø5¿ Z¨¦×GFÖqʘÊÐGKL™C€£)ÕÈ(††œ=4™¶˜?“N"r×wpê  @"ÉÀ}UPrÂá_z±û endstream endobj 956 0 obj << /Type /Page /Contents 957 0 R /Resources 955 0 R /MediaBox [0 0 595.276 841.89] /Parent 947 0 R /Annots [ 953 0 R ] >> endobj 953 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [200.115 472.715 213.814 485.335] /A << /S /GoTo /D (figure.17) >> >> endobj 958 0 obj << /D [956 0 R /XYZ 33.853 921.043 null] >> endobj 206 0 obj << /D [956 0 R /XYZ 68.868 457.119 null] >> endobj 955 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F23 427 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 962 0 obj << /Length 2006 /Filter /FlateDecode >> stream xÚXÝoܸ÷_±o•¬"’’(õ½KrH‹¶nc¤r}µô®`­´Ñ‡÷¯ï|QÒ®å^p0`ŠCr¾8ó›áF›ý&Úür]Œ þGµI³0K³Mb³ÐÆù¦<^}½ŠÂÜ&QF;–ß°è™04“¾NÄÈâT…:¡¹–èo?U¶y×^ýþü™í‚Ó‚*jmzýt{õöƒ²¥Â‰C«Íínó%øPíÇÎ]ou–*ûãõ6V6xÿ­8žj×3¹½‡1‚Ǫ‹ºê‹¡j^ûªÙ_ÿçöÏo?³¥UÆÚ‚v$å—úùtèyã¹Nq«ý¾JøÞ\k]ñ¹rO!è¤Mð§_£D­U9騹Sçz×àÊàv(i³ÕIÚ<ßlUÆqÊ" 8aÒ<èO‡†ã÷žÔ{“, ʶnÁ%;^ºCŽÏü=dÿ¿·e{_’"'Ä‘F úv[uÍIù'Œ S{Žk0a¸‚ÔoC+êÁëȂՄOè½XGÁ}+ÙÑ7 Ö„Ô9³FÉg9k)†´ÕÞw81”aHÄ(¤9æÔõþ¹#^á]ýÌ „ž¸Ñç!ù@–ßu‡â$¬èÒðȱí&‰Wgt¦‰þmÇÅa¤ìKÇ!÷ªgyâ‘K‰ óÔø£Ÿ/WD€5i˜-ŽLÎE¡µÆ·‡Š0I-t0S»wÝ KÍ\N¨HQàoG ®1&)ƤŒ1I'$Â:t0p¦]±«Æ~y8 žÕŒhŠf%;&¼1–òº&\´ ð´<áã4C;ÌHªðL’¡gõ“ûŸ ߆®(‡5®Ð(fzê„à‘œàó )êç~2õ{´ƒs•¿ÔÒ»ðóYõü¾Dç7H÷‘³~{:Þ1öÂÍk¢Kð‰!øsr];yA‰>å@¿"ðEÒ5Kª|ß-™ï¹%ó.)Å—„º¸$¨ºì§êþyÒ·—Š‚gAw×µx€›®„¢Uñ£/0ÊB Š¿0àÕ ôÞùý7eXÊ¿2þ \þŽøq­ú]¸뇡Úol ¸uÕd ÷íÑñ·oÖwkYðþÓó§­ÀÐÔ¶A?ÃÒ[¬2„?Pf¤Ù³‚;50¸ý‰z¸NW¾¿¡M»±¤ª§Yð÷F¶¼Ú¦â³Ò¨ü\‚ލâ®OªC«¦na7OúqxXý *µZ<.é§•s;fåIØyÀ¹x$Å¡Ê')?\ùpÓV ¾oV$YˆÑxz´ Ÿ‰QÖÜD)j¢4» äFkÞóf~,Qîã4ò @1ïÎ;W ˆ,5YELi|¶éýíÕÿÅ$nõ endstream endobj 961 0 obj << /Type /Page /Contents 962 0 R /Resources 960 0 R /MediaBox [0 0 595.276 841.89] /Parent 947 0 R /Annots [ 954 0 R ] >> endobj 959 0 obj << /Type /XObject /Subtype /Image /Width 615 /Height 300 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 110939 /Filter /FlateDecode >> stream xÚìÝw{bg–(úopÏ=gfÎôéänw÷´»«\A*å€ !‰(‚@ DÎ9ç " ”sΕË.ÛÝ=Ógîÿç~“{¢,—UÁe·Cõô^ÏzöóîÀ&”Þú±Þ8;C $~üøÿ^È烯I?E>$@ÐD $4‘@A $@ÐD M$@A $44‘@A $@ÐD M$@A $4‘@ M$@A $4‘@ M$@ÐD $4‘@A $@ÐD $4‘@A $ ¶cª»Ë'óÎGeûƒYÌ"Ÿ ‚&H h"ñÆòŒk{6p²’Ø)sA}Ð"ý;}#k!ÅñŒñNÁüé‚ è<Ë™ÖBräŸA $4ÿ ÄõôÝÌFLÞw°»³‘y´[øôpöO'•¿œÎCþùtîO'sß=Í+åã“íýƒõݽÕïãí$ ÜyÏÔ~Jš5=,;>žsÖò,oÖrIÈ‚&H hþÆF1°?¹¿•}°ƒ¼»1s¼œØš ¾ä!{³Þãùà½ÕØ£Íäãíô'Û釉ƒ²o}Æþ-^€Ç()F,Ûå<ïÝÍ™û[9póñÁìçGåÏËèãƒÒÇ{ExmßÉû]Z.oŸžíÝ»üàáéÇïß›ùt'óø<¬ÇARps>füfE™G»vÁË8XŒŸ­¥¡Ø¼¿%«VîW¹|¸[¸¿¿½žÙ›þo6 ,.•w÷Ö·Ïnïß¹{x÷þL¶Óïê#÷ÛÄ#-·`WÜÓ+A%ärP¹à“•ÝÒ´iÂ&¦!xšH  ùwq·f!ãÞ(GËɳµÌéZúh)±^düúƒ…ÈòŒ«¶e)¤ß/ûOBç\Îüù ù§ýÜg»ÙÏvgÎ3ûÙ^öÎrô ì_MÛž~–ÕÀTÞÂ{î ÐHØù°¹’t¬ü»•<õÉJêÎÆ (ù`;UçÝÍ,Ì R׋Ō»±\ÚÉZÊ|{Þ9ôÙVâ¯3ÿ¾Ÿy´¹½à¿´™Åf Gü•¹ÂÊÚüæöÊþÁÖþÁf57·wVW×Éð§w6öVÿÖ’–ÔÕ¨` '†=2fDˢEéj ãz~H=nœcÿsÁú×9óÇY-Ò 4‘x+‹#‚æËC.dFœê|ĺö¬æëÅàv9²9CWr¾¤W§2lg7Kþ”K±”´ž-Eî®Æn$ogÀÇ¿ÀÍÏ÷rŸïeÏ3÷9º—½¿–8¨ø7sUmwãÊûEó'Ûg Ž?/¹îä ‡)ÍÓ¯Á¬düÆR̶œõnƒ;•ÈþBüdÜÌ—·×«\ž¬¤—’Û•lSI8Ò>ýÓ{˜ë@̇«‘Çñ¿ì¦ÿ¼“úÓNfÏæýE¿ò+Ïe5C¾|!3·PZ^ߨZÙÚ^ÛÚ^…\[_\\®ä éÇ·7>½³¹·šÿ[>XLkg°GJ'êÃv Ý-cú”œ€’ã”2,“£“#}Œ~Ôÿž·ü¥lúó¬iÅ9ôDM$~ôøínäC@Ð|yÙÃz™ ìФ|ÆlÈ’ØŠQ;Lg‚æ¨Kë·È'˜Ô?ŸÌytÂrĸSôÎOÂwVbÖ“6ÓŸîÌ€’Õzó<ŸÔžÕò3ÿÉvæîj|oÖÿ dùtÞñ—÷_×¼ÿ¾â7ÎZ’š°ŠQ{ &… êÔdƒær¹v¯äüU»+‘½ù8èy¸”€xo!¾Uެæýå„#¶m ݧZ9J™—l#c=(¹ï,ÊO6â¯Ç­Eï/‡Oç|;9GÄ$ª=Ñ yP©VZlæH,4“ËJ¹Êüìübeieaa©2[)äò™x"¢Õ©ïì/mUvW _VÊ ™Ù”gnÆ¿˜.ë³ÑõJls>±½˜Ú]άf×sÇù£'Ô¢¯÷£šh¸NþNHÃK$5—ªä¡19Jé뼟Ñ<Êjd4÷Rªã˜<£¡#A $4_ó` ‘$<º]'õY”a‡6êÖG]ú ]í·(­j±~šÏ¢‘ÌF¬Ò•´}3çÞ›õ›§‹‘»+1('?ÞJ?>w”„2ó³½êPí§;YXª‚­GsA Üü|Ñõç%÷g ÎOæì÷ŠæÝ¸:gáà %÷éeü€U‘ô@ÃbÌ>—t-dªeïZ!¸^ m–Â[³a¨× ÅŒ§µe&·aJ.dìoVÌRfΫ\Ž›¶²ö£YïÙ|àÁJ¸¼·º»<©ø¶³öJH»¶X=ÇÐß/ž’ht·×‰ER™Tœ,å ¥|¾˜KÍ$£ñ°ÓíP¨äûë³ëó3K¥ÄÉþâéþR>î(·Rk cád«x{göÎ^åÎnÚgÛ¥Ó-Èbí³% š{Zi}(±›OÅM ã¹,{ g¬¿ ßÙx•ŸÄGQù~xzË'.ØHgDÐ|õxçf;ò!|·Ñ3éG>ͯÎÖ&&mpJÀRLr r‘E=SÍ_.âLŽ X4t{³MÉËùµ Ëò¹›€àA%õæÙRjIÀñã­ÌÇÛ˜Bíùp3ý`=u= kæC°ñÚŒs>n¾“7=(Yï-Ð8Ë7#Šy^•Ø«–ŒÛ4bIsé^¹¹°ôœ;fÎJÒ5—rϧÝ0…% fÜ­3Ê,êÑΠ1‹‹~õb̸ž±í䜇³Þƒ’r¯àÚÎ9ÖRÖå„É(¡ïm”Û;QO$‘¨µZƒÙds8¼¿/à÷þPÀã÷Í&™BNg2æò±\2ЏmFE&l+¥¼kåØÞò ùðh±–! ï@ÎßÛ‡œ»»YOïÍÚzZê0m·ðM$t+ÓAîmƒ$t6õ4׌ãe Õ=¹ìÍÛ³f®j錚H<7Ð<ëð,ÈMÍW‰ÖÆ[³ÕƒåЃ•ÐýåàÝÅÀfÆÂbÐÈ4r?ƒÖKX^½(çÓΆs13¸¹žum¼{eu¨v1r¶»·–¸·–¼»š¸³¿½?[Š.F*Pcú@Ì…„µÔ»4*áè^R»×lEUKþéY礎;@À ÄÜ1¥x\?-pè¦Î ^MÔ¥‹¹õ  MúŒ)Ÿ¦ÐNxô1·.hS)D,Ö0ñtÙ a8•¼˜Ušq)Ê!ýbܼš²-',KqóBÔX é >uÆ%·É9·W>º~c”ÎÜJ öÛe׃Eß~ÖºÓªu:^¯Ñ&§¦8\Þ­†¦XÀésš YÄcÈÅsÙÀæBj5w²UAÌGÇËç¹t)B-ÕHýËšÕxÝt³»¹®§¥²«éfÇ­k.õ0(¾—=L)îÆ§oǤvYÃÄ#AócLí}^Ƹ%öc¡I6÷n#h"h¾JìœG³žGkÑO6bÖ"WÂ{Gɯ"÷ãØž^T‡f’Þ¥=ê|@n‚€nî΂›¡c(9—c·—c`åÉbôx!r4†å;%ßFν”²—#¦¬O媌7¼”/ú¦çÜSYËDBϵOaºÚÆÇ(S|†b’c ­‰Ç$÷š §ßª XUA›~‹ÒgQxMrØ@ÂÄ÷´ÝRðiÆ)–W+ ™$i—²à×–C†RPWôks^àRµLô"oøÁÙæ½“õŰ üx9ø—­ØÿÞMþe+þpÑÐŒOLJ Ù\ÞÐȨQ«0ëUZå´Û¬ˆùLŤg!ÚZHí.ÏmîìV ´üätòã“Z._ÊG'5R—ÿ¼ê:›®ØtíRGÝx§d¨wÍÉ¿Ÿ”šUÿµløYÃ'3ª%ë8‡ÐtFÍWŒa¹ëG # ÇÕVLuTSð½—?šÏ›½1æCþØ4ŸŽ„mj'ç8*{¬DÀÍGk±×c§sþµ”Ù«áu´4·57Èù#/f—ƒ›9¿®6V¢æÅ¤muƹžso}»³Ã9P2|P 핃0»SòoWkL×¹˜fxT©0L±Å,rÚ$Hèya5Û%³MÒ”*Çc ‹ÆÇä"ŽZÂÓÉ& r‘Q!2)'Í*ñyNÂ, SHåä814Ð×Ótó*o„(ãÑôb–EÆuk„^(h”D-Ó‹4`Ël\%å>{xÒ –£ºí´ù¤äº;ï{¸„¼¿€Ù¼kšD†ìèê .ǦŸöÙÕ© µœñ/Âë•ÄÖBú¼Øœ7¡œüätõñÙÚã3˜®Bô¬Y « ÌXïí/ÜÞ©<œs>¨8o¬¨º5c½‹VîŽOt'.û8£ú4«yœUCã$"M+GΈ ù: ÙB7¼"šO¸ùVh^2½úƘIï÷æsËÌ&aùcCÐ|:¢fñRÜ´9c?*û !+¾ý¢{+k‡U§6êÒM§ÇC–é„S™vWÝ,†Œ•˜e1i_Iƒ›žÍ‚”Ü)Vs«àƒÙœg= 5¦c.f- ð¨ˆU¦™dLÐü –{šnÑó)J6‰ÒÓÜ|«®×ÃäÒ‡„œÑI.]*`ÉD¥˜«óT’jB[1 ³\ uz‚%`ÑFÈ|ªîêûcXƒ"fQåüQ˜4ƒžvß©š°Êy [)å’ƒ­Ï§æ–|Ê¥ˆn;c=È;NJîã’û¨àÜL™+~Ž0€é#¶¶£hCT­|Âi’ºLÄhÎçB«³±¹äîröh£x¶]¡¢|bå9”OY9wþÎÞÜíÝ  yV°žä-ãR@®c`Šz檃”œE§¤”÷SŠûIÅIXºëŸD:#‚æ«Ä˜ÚûìY@[úFóblvÈümdAÐDÐü{ §Š7ãV–Ú…˜i1fªŒ™Ê!ÝŒ[áÓMÔª§bMbzÌ49ã”Uš¥¨a-aZ‰#ú¼[1ŠPÝØTO®O9Å3ªÄ^«:â1ÎDŤ·<X,DVËñ­ÅôÁZþx³tgwîîþČGKåW”Ü.ŸnÏBA ›°+¥ØLÔ±TJh=:&,Êi™Kvþ†[´ão{'·¼¢5§`ÉÆsOΈ ùíÊÌÿÚhþÛ Ôå‡xßáGÊl W?š'«6|}Ý5HôtéðÒÊÓÃ9©±îŠÚô£»;£ýhù8Õ6Íök'R6iÑ«ª´0Í»Qã¤SÎ! »Ph®™˜µS~‡6ê5¥Bö|Ü]Jûæó¡åRls>µ·’ Áijʽù{ æÞüíÝ9˜=ÝúÒÊÃõÂÁZa-¿2ÏÅ\Eç®éÊôÚ91–çu¬9 oÑÆ_°òæ,Ü¢žQÓu ,Ò¿'4O·ý”ó¾y)o5·á( ™cfãèõíª¯‚æ•¶¾Q©ñ;Ùÿƒfë•¶MæžoîwŠfÝàT=¹ôŽæÑœóEglçe÷ŸEu3Ìiª¯»1hš;z=Þû8¨Œ™¤ãvߥzu“N•À$åL±©\¡þ£÷Ù£Töp¿˜3¬³­JS;é3JƒfYÔ®L¹5¯nƧ‡„ÆS©M{´°lÙ•PŸº´“9‚A¦‘zIèȘ]¶šqì”|§‹Ñ{k‰–Æz@Ô‡$ô»Ù%'äð d?$´G($Ø ¯íFaÐ- õÛóÇ»K§û+xt;¡§£¿§³¿EìE‘0]Xô ®š$ ÖbQ-ζˆÝ­c¤^ “¬³HÙµ  z5Šo’0ܡƆ‘ Ó+'í™ß® ¹ ñ€e&ê,$<•lŠÍµJrkqfg9»¿š?X/oΞn—Ë“­2´kVÂ*€uw9»³4³½4³VNÀÃ]&EÛµwX}-òŒMp )>ñPdz$¡ƒ©[HÖ³ð”Λ~Ù(‚æ÷ŠfsW7¾wU³ÓÝÚò…ž ýŠÂÞékÛU_Ž&Méé×¢Ù*Ãô7Ú¾4/â‡G³õœ*µcD‚š¾éËhæ†kh>»ªvP·jQò{Bó°8Ù½#’õC¼ÅŠíœ>§çFÆ[a-V÷zôE<ºE%ŒÓHbÖœ?*ãH8ÃtòØv‹ZŒ›­2ÎÈŽM#JÆi1Û0ͳ)…v•Ð¥{ S~ÓtÈ*¯¦åI-2H¿Iê3L¹ubàÒ®Z„@“ûиö ‡êÕOΆ‹IÛVÁ»_îW‚{å hX«7N˜àq0 IìƒÄ°=}½Ý¸ž.³£¥éh1v´Û,úRõÉÞrO{soG Õ†ëjëC·ã»;  »Zšn^»w²q÷x½µþZªe¤¿—MÅOÒ•¼9—&ç+x4îžNêµBíííΨY3e3È{êìsÑ„EןžÌ~ýï/ÔÐ|n™Y; ù‡¢ä÷‚æénŠ _M¯õæ–„ê×!ïóÆvNÖ\ °–l[} F~ ƒrŒFÄr†‰üÑAöP?“‚%a ÝíÝmËI«O/„ ÀM>,ÐU“,ƒ” tšd|«r®¹t·^âÖ]¤Ø©ÃrXk–ó2ž~j\+a+… &•@Ätv5^2ÉV?ãÑCÆ¥”c#ç©8´6ãêÇaúq½l5ñ˜ª’çP¢/Ûݵ˜vÞßÊÖ~Åì“ýâÉJb-ïý€óÚëQÍ è¶&Ð¦Í m 7o|tçxýÎÑúí£µ³ÃUlg󦓌ë¢`¹ÃýãCþ‘CÅÓÝ]Íõ:‡›LÄòÙ#F•Ī›vYT>».â1%Cö™¨«˜ò—gBóùÈb1¶<_«¤ÖçÓçUgnoµp°Vsw%bÂÂͪ˜i(KWˉåR¬”òùlÙäxWÝTtÃpw㦅o‡dO!Gz›þ¬ìûD†ÝïøGîŒ?4šÕØM²ªõ&ɹqòšvÕZtNZ–ŒÅËàj4'í_ó@¿ü°ëû@óÛÅ€¦ÜöªW³>‹æÛ½R@óÓƒù=¡yºm„.‰1/Ÿl¸(õÐÆÛVž×ÙögDÕÎ+μoÊ1¨ÎHX4ÓEÄ  »Ûš:šês>mÄ"µÊƱ]m°jt/ SÄã#rC>ÁT Y*K=ÉÖMU 5Nó!¡¡—rµ’qX®±äŒj èb;:H#aq]­7>x›=Ü/ãB0M'œj·Y6?ã;XÍ­g7r‡k3ëåH7ªÝÙŽîx*;Û»:Ú3®ÃÅøÝÍ™Og?=¬þÔæçG•Ç¥ÛùãÝ¥ã½e¨:OöWê¯]­¿v%éRÞ]O=ÚÎ>ÞËßßHï–° ¦½ ×ÙB@·õwwz;±¨þîvLGS>Î$ü EÓÈ„Fõ”äôX5A—1°¥ÂÎlÜ“OøŠéÐ %çB!Z«:תUçÌöR Ohœ[™Z)'–J1Øf>®Ìsq·ß¡ULñ¸Ì¡¾–ë„Ö›ýmuÄö:2êÖºq°³vÕ}xoª÷¶¸çp¢ÞBÐüÑ<šWwUÑì·­¼¾]õͶAî·CóãEh’”_ÞÊào¿­ÁW{^ÍxÞo?úÊÙÂ\'d([ü®Ð|6ÍÌݪ冉¢ä÷€æÉš³ÿü›êy§;Ý ÔÁ,V;ÿ¼‘£Š¢Ö¶°â»§?þÛ—ñFP-Õ ô„„6ˆ³ËCf©EÆ•Ž÷t´àÐíd|sˆÈ§S'9#@§„;*åIùt™€¡˜`ªDlÈ”Ó|:¬šâŽÖR2>¡‘ Víïíìéh†J“JèºU#f§yfÍäz9vwwö³Û+O—?>^xp0·»”^.†Ú[šŸdsS[sSkScÒ£4÷çc'+©ûÛ9ȇ;…G»Åû[¹ê¯†-Ͷwv—ôS¬ƒùȃ͙Ç{…ÏK9.ß[OÏ'l¨¦ztË­ž¶ÆÞö&Hhw6ÕfÂÙT0q“½€¦bНSˆm…Ë¢8 QŸ5´§ÃÎLÔ‹{ ))¬dÃs¹Èb!ö„N(<çÒ«Àålb©.a-ð:› S¾TÈáwèTRì¼ûÖÕÞÆpÍ×ûZnô·ÝÄ6]ëi¸ÚòÑ;‡Bôþz‡ßµÊéo"hþphžnGF«5Y8|»j Í{«£…Dyðé±Ù+m}54;X/¡­Ð왿~J–¼´$—ŸyM4mÇ–kÓ ßú¼ÕÎúcÿU¶¼: 4/Qÿ hþò#‚æ÷…æñ‚ýñƯ6ºsº›`TO0è’<ç[íÙÙᬸzô³…•Ùÿñßþ =Á ¨E,£”»U;TB§Zd’ñtöÌ ô¡ZÁM|O'…€£8#ƒã£dîå3¨Ì¡ æ°ˆE±iBÖp5™Ãç ‡&`-ƒJ§ph(WÁâ–[7]ÍÝíMd|/Ò¯s*ßêlô`5{¶]º³[~p8ÿðpÚ;KéLØê°ê|.óÍë×’Q/s¸?âP•b¶•œok6|¸˜8^Nž®¦O¡D]NîT¢°6ØY¯ìlTrAãbÊy¸½³–þx'ÿéAéÑNÚG‹1Ø`s¥´º˜¿ñá{ó¥Ôl>^˜‰‚˜é¸?ä³‘ð€æˆT8®”N˜4R»Qé³ëƒ.SØc:ã{2äLGÜ31O.á+$ý¥Ld¬:Ÿ¯Bù…•A°5—ðB} Ú†=&‡Q¡‘MLŒà:Ø$4½î÷ÍWßiùèÝÆ+og†›Jc-ez+dq¬%ImPu}€ ù¡y²]²uªFŠsåøuîªgç4ke&EŸ¹Tf~-šµš_‹æ{]ŒzŠâÍP_‹f­Ýŵ@~WhñWD¦/G“¯44¡z«Ÿ•.õõ£Í¦ì¥%Pf>FFÐüÐ<œê†žÕD‹lñ}t?3Ñ=´™ŸÙ{Îö¬&XÛ©¬üøç`Q­ûÓÃy÷£÷ƒ9ärPØñF‡ú{q]­muà&ÕÖßÛ5Ø×CÀ âGÉPA%2‡H¬á6m3B!©Õ„YÚk˜D#á@Û®ÖÆÎ–†æúëÎï½3PáÐDl·ZÊO‡íŤg¥ݘKnW/Ìí­dw–2[ ©dÀl1ª6CÐg†\¬!·A÷èJ1û\ʽœõ­‚[åp¹Q -e}…¨Í©—0‡+¥Un®å¼;åðÉròd9q¼?˜î–Cs ;ˆ¹T™™+¥Ê…ˆ™K‡@LpÙã0’ð6}HÄcJE\­\lÒÊœfµÛªõØt~‡!à2…<–¨Ï;×3ve¢4÷‚¡yȤ¦¹¸/óf"îTÈ™:"^‹×¦5ª§d“\!—>€nìn!]ù ½î­©ö÷M˜kfì5á¦Xçé¯sáoZ°×˜õ@ÐüžÎžmÃö‘ˆøZûÐ Õ…ƒžÊÞéëÝU«_q-Kµ2óõ½ßÍÚÍWD³Ö¦šò¯‚櫾x¾âÙ…LWåËÂÐêzn¥ùœ/¯†f­ñMѼÑÇyzÕo[˜ˆ’ß5š{3‚fèw­œäS½î°4Õ^=¿yÎI´ÇK¦óÊ”ÝùÑßþNÊp5¼èýÍH-̹³6•Ћélmo¬»³™íhºÕÝÑÒ×ÝIÄ¢É $µ;Dì&õU$ŒQúéT"cˆŒžg?JíÇzQÝçC¾íMõ·®_½]ñìçl³>…GÉnk¾¥pÃnc*dŸ­Þr'¼\Š®U«åøR1:— &üf£Na·èükÈïàÑ)Võ¤ß¢Lz Ù ¥µÏÆóiO-Ë gÊg0)&Èøî‘A¬C;wi* ÇJÖ»U gp-ï[ʸ“n­M-\(g@ÌR.–K‡g’ÁdÔ ¹¯]ýÐdŒPøœ1±€­’ *©U¯°U“Úe©Òés‚çtF€N¿=p‹5@!¡…„FòœË˜ßñYN£Ã¤ÒÊ'aŸPÆâÛo:»ßùÕ‘‰vßAÿs€óÿDùŸùØ÷t5úŠõ¡¤íýäÎø_§yž7:û†ÄÖÌÆÑkÝUŸFób zLÒÇÓ}Ђ{9šµ±Ùꦾæža×Ú³hÑhO£ b~ØÜû,š•á@“)V¼ šc³/G“:e}n¥ù~Ÿôé³€>´#V~Whžî„Õï¢-¢ÜWÎ8šSôB¼5àÛxöt ÈPµ·ÌËÇ?ê{wHé‹AåNÚxVrÜŸóÜŸsß­¸Žó¶í¤¡ä’6×ßøx¿üø¨òÙñ|󭽨6ps ¯ç«Ù;ˆï¥¶#¶Ù˜#4ìE)#÷UŠ©b.–ÏD2É`*æ…=ðçhbi›NŒ3db¾F.Ö«¤FÍ4”œÂjP~¡§ôô9Œ~§ÊÏ Ër›AÒ°×ñZà ´ƒn3¬‚mœf ìöÆg‚È] ײBÜ™uô¡‹ù—àø¿¹ÿâÂôS/ûŽm¬0Ù‡{ÿMÍhxöôxk±ÒŽŸ_aÝ2lY8zM»jµ"IPþ·šHOÍÖÐ<;¿Þ¤Od{.šWˆ²w{…î½o‡¦Þð„­šm“Ù‹2óUмFÖ½ š7†MÏŽÍž£©ƒ¼„f­ñ,š#’o„æ[íÌŸ¿ßñB4YŸ¼»ÆÉ%ÄÊïÍ“ ÏÀ­jg¼ÙCÀ_ ûT³Ý|þ=¶ßòlwÛO3ëaU¯úG¾Ì9Í(¸¤ËaÍNÚt˜³d­{óF\?ïWD üû;…»%pó“ê›Ýí-Ø®ö~ š„í†$>“`è †z»p莞ÎVt{sgKcsýõ½œ}/kßL™ú´mÊ,ëFµ³éÙȬöÚt!ê²xÀñZ‚.(Í”*骽ŠU8lÓŒéjçŒQ$|¦JÂÓË…v­Ô¡›¶ë¤ÕÔNäBµ„;Éëlm ã{D옵iÄnÃtØ®Ž¬MȦòšd² &Õ:›OœÊ §âDÔ º€ækW¯ñê1B岯¦D\Õ´ÜÔ*¦tJ©A=mÔÈÌ:…Í ²›Ô³ÆiÖ .«ÎmÕ£^{•ÑZB–¸­:XkÑ+´ ±d‚ï—F!¦ØéÀH"{ØŸù8Ÿû8òìfݱÑ秉ÿàñÇ8{¾úÆÕã)7¨žõ“ײ«¾ÍZ™ùµhÖÎV}9š7ú…½’È×¢ùôCþЀ»hk<áoŠfžù,šãâé‹ ~ßÊüѼÖ[-“qÓsÑ|Y¥‰ ù} y¼dÆ¿hÌç‹ìU>síëÒeìÁ–Ÿ²Š+>åRH3PA#çÆ &ÑÈíÜ­üýâýYpóñáLqÝ šÐ{)».ßSƒjG·· Z›ZênoææCÚJP3ëW<ЍiR;A †ý”~(è¤"^íè!”rf­Ì¨žÖ)%Ó“¼qƈL:©QM[LZ‡ÕÐÞÜ@êÃŒQÆéÃÖˆ˜Ç˜°§,`TÈc! ˜ÙBžt”ÜÏ¥LñR>S99®• Ô4¤&J,˜Ùˆ™N‘êÀ¬ßmµš´òéI\/šDÀ B±)âs¤“|™dB1%TJE*™X-— P{êUÓµ …A‚¤½ÒjP§6£ÚnTÛŒ*«^i®¾#9Fõµh~YåuW¹©Ð|šOÇ7E'´]í½@óbù%4Ÿž­b]×u ÍkÝÃúx YP›­„æè¯Ñœ/A“i=f7ßvfuJ²@"h~‡hUd=ÕžHp<ïúçÓ-?­zšA›¤pðzŽùp(³˜î’s"zaÜ4™4‹SqX'pÉØRæÀGïþþl#{w«n>Ú/C‚žP{â{P ã‰êƒì†ìÄ¡«‰1»Ú{:ÛºÚš·çbÇ«÷Þvµh…‡ÃN¼jžŠ7”‰ØñX Få²é!W&È%Ób:)àp£daJ,TʧLzµÕ¬km¬Ç ;Ïï„£’Õ›ÓÒJ*}h€6Ø?J!ÒÈý-Ål¼˜K Ø!ž ÐÈ §€Iã1†C°ßÛ•Ÿ‰æ2ÑL"˜<˜ \.‡É¨WN‰½h×;L&1F‡&¸,ñĸDÈ:§«/O¨˜©¦'UÓbHõ¹¡ÅT­F/$…„ÌÂòs1'$ð.G(„áæ÷]cI>v~š´ª"ïhÆ‘#Ópyl…òsG7„ ùc yXµgDW¬ Ë}•æ¨kþ˱å§Ð|ò¥â4o L}#4"¿S4r–ßü§:ècT¿¦¶qS_93ïxÉÔ=ñ:-ò#Ÿ]@èjaz…#ý26EΡ腣¦Iºš? bÒúP‡Ëi ï êÍÍü½âÝí­Âí<,éEµ÷v¶Aö\dGkw-Û[ Æ\Ìú¶*ÑýÅ$”™÷¶‹÷wKöfMhÀÞN׳°óµJÃRH£ÃTúÈ0c”6F¦‘}ØÎö6ÑozjR§Qœ»©wØŒ}=hb–ôEB{àüÎ{lOgks6ɦ!£­· ,…$âzkIÀtãºQ=¨v¨.!SñÀ¹˜^3às@1«VJ'øTG¶ ^‘Á9>‡ t ùœIÁ¸x‚;%='¤“HhCVÛb°~B&ʧD ªB*RJ'a ÈÊÄ`®`œÉaŽŽ Q ŒiýÀ@ió0Ð)®  ,)—•ä%sÓ¤¼˜àg¢4h4*šÞósky3g¯cW½@óé±Ù‹¸@“Û†|ÑžEsP ª5Z9—‡mkhê ڧѬg¼ð9•ᛢùôY@MãÁ§ÑÄ‹/A“ª _ IÒåž.6k‹èšMÕAæaí—wc ‹ÕÕgœüòÙ/ФÙç¿2H{Žfódù ‰ïÍÓÝ»:T=ýËKM.Ç^šÓV½Œö•Mö“µóدÁyìÄî¶ÞŽ¡¾.Æfb¤œÚ7NÅõwµt5Ý„:qw!y¼šøîBµ¸S¸¿[¬U‹{‹©ö¦†¶¦[Õl|’u×ûP-\W.b[-†vG«3w·‹÷vJ54ì•aöt#w¼:³·˜\/…WË 4 …ííÅa0ÐÀôôô »Ú[[èc#|g¹ÚšO€›F½ÚlÔxLÏÓy~Ÿ½n3 k‚i2ÄuwßÝ…éêìAAz+ö”QÈ'„t¼Ëû—M‰¸F[kKwŠH踙c46}”Ãã²è<SÀe y 'WÄBò8<,„„,ÕR0Û²@­`œ5ΣQ‡(ƒƒDBžÛM¬GÜwK;Øê¦£ý¬ž—âgD˜Æù¸ »ÇFëT’š4@4O·Š.þùê:§‹_zºj•¶9Šç| šuDÑKhÒL¹ç¢I²^¾5_í€&ˆY;uö£^FóÐôKÆf_têlý¨ãš#šàÓhŽË r«ëš‰ç%h2Œ h0øÂê Ã0žÝGeÙÂgÑl¢/ÐüCôkѬÅï:&~~µ±òoFódÓOn€ŽÖÊJí¾¤¬Þ‰ë:Åýå ‡³’ê ¢[˜é×àŠé~t+¸Iìn:©¸®á¾.n®k¾qe»Z*&N×gîlå¡Ì1ì•jã´vK«…ÐÂŒ¯wfÃÖ„×°©lVSo[ƒI),'Ý‹YÿV%¶¿”:«V©çhîš³P«¯e–Ó;󉥜¿<\*Å:ÚÚÚÛÚÚZ[[[ZªÙÜœ Zç³þõÜÙvéx³p²YØZHtj“Aû÷ÿEµ·Ö²³­µ½z³ †hÈ‹øãÑóŒøcÀÑ ûZAvÈFh„nÈPÀò»‚~gÐç„Óç±A«VNKÄlæy€ØÕÙAÀa¡e/Ô¿ÌQ«F'›Áç°€Hþ8 À(Í„…ã,H:L¹lHfu‡ ³,úÈ(J$Qˆ_ÿæúÆÑ7„˜z¹Í4ÜáCؽáq¬—Ùíë‚"TŠok¿‚ ùƒüÊ $º»£þ‹ÓšF-•ƒ¯våת«Bt2u/Bó‘×1¦üã­ž—£ÙÅ6|S48âÚ’§ÑÔ$_MºÜú,šïÞêzM/aÄŸFsR¥MŠ2p&v`Rar ûH/BózS'4ÚÇ”o6P/¡IåN½ÍKi^ ‰@ù y²lë?¿,Z”}é)ʲŽj—Ä¿8(ò޹˜±×äÞ\]MuÝ-·zZoy˜öÆŽ†ëËùÀúl¸Z*®¤Ÿˆ¹S+gžÙ¼·]„òót=› Z^cÈ¡±jÄbîˆJ©°i%)¿)±/æåØÎBò`9PžmnoN×s0»»˜\-†g®ˆK;õ”³áù|´” ÎÄ<é°m½’8Þ,Þ?Xx|ºòùÝõOo¯~z¶ZVsÍ ¯Ò %§ÍbtÚÍn§Õ붼Πßýnh}®˜èuú½¿d„´Ãf^·Íë²y\ָϰ˜ì,&Ï Þ+?>Yüädqw)Uˆ;2“lo‰€§’ B¤ QÎõ¬ÒÉfŒž0eÑ!G™c£Œ±Æ($ x£ Ò†ª#̴᱑j›2H$Iý"ßÕÙNlxoßHiþp¤í*¯§N„½%ëo®&±YNlžÂ7òznr»o4¼ýkÍð:Í›í=xºHYxö»ïk×U¿ÍK•æažž½ÙÇyšWú.»ÀæŒÿáöš4/ÐÄ1ž¬}îØìsѬE〠o²za&K¢~ÍgwEQ†j K$ •æšÏý je&Ä[(ÁÄê[~{ ú‚¬k_ùbp~ê쵞±.võoö z„Íïoxö[ÆAv²ºjëdîàõùä"ö­>¸yå=¿M•ðV‹¡Írô`)u²6bÞÛ)^”Š€fõ¸$ð·‘;^›šqo1é6Ê´Ó|.ÂgÙ´S—.´TÒÞ¥\p­Ù¬Äwæ“{Kéý¥4ˆ¹·˜ÚžO,dýkµ>ÕŠc{*ìN>›j><\/œn•îíÏ}|²üÙíµ¸ý×G;¹¿õùtíþáÂñFQ¯Sõ³It:l&—ÃâqÙÎY´Ï§ì§«‰rî^«$öV²GÅÛ»•‡G‹57?¿»ñølÚ–îìͬ喊‘\Ì©VÉu•þ|ØÖbÒçCÆ­RàþVöñ~éOÇ•?›ÿü¨<Ÿ´›:Øœy …„k£ß[έW‡ïî•Î?:^øädéÞ^®ÎF*/¸ÙÇ“ú«tR†)䚌Ôs«>’©Õ¤ ’`³"¨=/- F‡q+¼ºŸØ>Mïßnú6]¥åÞëÄÞx‡PÿÞ@ãäæ©-W†Z®@ùInú–`®¿ýÞ_4_Ç® ñ4¿ö±€æÛ­ƒ¯ˆf'Ût Íw{'¯<áì½6âÓhâi¬¡ùV[ÕñVü$i\F•9/Ð|·™PCó­v滽¢— y16ëN¥ÍzÌÐËѬÍBÔÊLql ²†fí€f Í‹s.Ð|vWÈY@?.š§;1~õjŒ¶røú|Í 7Ù£äI.]!æú,ŠrÒ}><O ûÒÍ*šÐ¸³U<]Ï­d r[W ¡bÜ5æ ¾‡I”ðvÝtÀ®MøÌ©€u&lÏÇ\Å„»”ð@Î&=¥¤§weÃö¸×è0LOñ<ö”ˆoÕIçs¡åRl{1s°–?Ýž½»7wÿ`áÑñ2ˆ Óû‡‹÷öçÏvÊ êb!\HzdÓS ù´J)Ó¨•:­jo>z+÷ø`öϧó½³ÓÏŽÊwòË´V£ÔÂ6ò‰tȺT­WàYR{+3Çùê½âwà¹Ê÷÷áéæ` ¬‡Bxj ‹%ôõ‚ !°HÎ}¬ 9Hª&¬[Ê~H<ž€ÇO9îÙÕÈÚˆ™=z?ý8wüÚ°„‰®C]y Üì«{—Øð>dÿ­÷ûn¾‹¹ñvÛû¿£¶^EÐ|Ð|=»êsÑä%!kh¶ñC/øsÑ|öÔÙZ€˜¡¥Í 4ßø¨z+ÌÄ—÷”»@stbº®µëEhÖÜ4/Î4a:*˜z54Ÿ¼/4qx\¦4«í>ÒKÞi…/‹Ï×ЬÃ1;F¦4ÿþÐ<ÙŒr›ëën ^¯~xýê‡T~œ>¤ælªLÈRJ¸²þÍJ L¡¢MÈ÷šª·81aôrQÂHí, ˆ7›˜’Ÿ|[h¢¿ðzÌß4"JþHhΛšê®uŽ7N^»é¥t2׬ˆºõÙˆJÂ¥\p¥^ŸVJ.$÷¿8(YKX²5_Ìú‹qgÜcð[•õ$¶564 Ž+$||Ò¤–Úôr§Qé4*HjÓÉÌš)£R¬j¦' ¼¥qø¾>L豪g¢®bÒ7Ÿ /•bó齕üÁZáxs <\/B$Ý[ÉmÌ¥f3LÄ)²Ç9îØ€Ï,Kù sI×Z!°¿?^I­eN×2'+éƒÅÄz1wk($¬p|ÔmQ…\úLÄ>— œß">¾1—ÜZHAy[û•íÅ4ˆYJy“ËúRa{­ŒîêêéîÆöb°Õ‹b0˜ÞÞjöT³·§¦X ¶ºö|Š4<®±ŠíAC¢dË-ºf×üK»¥½àò~peß·°í,­“%\ýû„†‰MWõ¿ÿiô½7*Wß\½þ[@sûÜÍ¥k¿)^yó³3¾h¾¾]õÃ^ä·FóÖò%h6°C—ЕèžEóéSg/Ð|¶Ì|nÔN4k³Pf^Ú zf,iøEo§IŸFóƒnF+ý…w‰Ç°Ÿ >ÿô:ëŸ~_½üù­fòÓ€›0½5f½E» ñUJ•ѷТ+äVí?æðìk]í­"Ðt¦CNm:h-Ä]•´w~Æ¿”¯Ò¹VŠn”c 'ää\b{.K*)o.b¸t³ Õ¶æÆáA"9*gœÓ)Ð)Äz…D¯ƒ¡Z™H3-Oe"î´p\*䀰l7‹–Kxv£"²ÏDÝ¥´.^žMl.Ìì,çvWò»Ë¹í¥ìÖâÌæB0])'J)*싹 *Á®‡ê|Ø:Ÿöl”B[åÈv%²;Û®D׋Á…Œ'îÖqÝÎí2)"c.æšMûÁÍÕÙøz%¹1ŸZŸK®–ã+¥X9㟉: òÝX)ì¯t´·£:;»ÑhÈ’M5s:ÕÕužè.4ÚÛÝÓSÍnq˜)7 Í^u8kL•­ÙEWyà Y©N…s¦¢‹æÐ×Þé¾þ.¦î=Ë~îç—…+oÎ}ô›µë¿Ý¼ñ»õ¿[¹þÛÙ«š?ö‰@¯_¼ÍF擊é—v¾ÍßÞøò7ųk—Ðl,<‹æû7/_8ü\4_åõ_м@s\nx.š#úhm¶stš.Õ¿Í&¦óUЬ5èbun{ÿš Œç졆&ˆù‹È‚æsÝÞ<%`êåB¯EóšÀÍlÄ‘:‹ 7T•Œ=ÏÀB2Óù ”™®tа«A[ ÞÜPß߇7éÃkl’Ç’ ¹g’ÇqYB.SÀ¦óX£\æÈèÐ`ª£½¥©³­y’ÏÒ+%>‡>âµTñ$á+Ï„‹1 se6 Ó¥b|¡ÏGª¿ïœôA™™Ø >¥ôcÔ®S/¹t逩µcŽRÜQNºÊ ´sa«E%ÄcÐ\&M6ÉÕÊEN“2ä6&Ö|ÜSΫ{Î…+3A`´˜òec®¨×ì2+´ÃÝå³£õY‡pÙ7µ–Îè>·¾èxP2ßÎÚZÛÚÛÚ;;:Q(È·>¼ÞI«Çµ©;¦ eu±’)=_Kcª¢‹—T¡‰=ÔöΛíï¾9ø³Òþþ§®·ÿW3þº|õ7³WSºúfþÊ›™~ýÙ4_Žæ³ ßF1ÿØÁ¸58uiùïÛØ?{¯óš—¶¹Éš³o\Ç_ÚÐüò«5·z7´ü,šÏa±îÒ’Nšò=4ëæ üÍÐ/B³ªU;þ¹hBÔaG»ò—Í~åIÙÆ_·=ѳ‹8Òÿ²Œ}#zîØìQìß5’kh"uš/ŠA†Ï¢É'ÇyØeˆyL ¿%°fBöªž1Ôž…¸»™¨N 1W.êÈ„l Ÿœµé¤<u€Ð×ÙÖB&âi”ö ˆä³é\æè8c„5FcŽ1F¨ •N£ŒRñ˜ž®Ž¶†º›M·êºjZhÕ+ÜV-¸™ 9gbžBÒ_J+ÙHy&<› ÓX¤&‚ö°ÇpôJñœÿCÄ¡§ø “Rä2Lû-ʨK÷^CÊoŠ{ôa‡&`UI \oc„"ä2ÀM“F겨ý}<`KGœÙ˜'÷ÌÄܰótØ™ ÚƒNƒE;MèÛÝ\HÆ<’ãŒînÁôç%×_W½ÿ¹áÿß뾿®yÿcճ엶4·475775ýáÊMi„"1åæ “oÊ“ûÒÊàŒ2˜@ŒÌ›œrE¹:ç~Ë[éáÆ‘_ü³âw?…bÓûÎ/CqþàשóŒ½ÿ«à»oLþæ'šš¯Žæ¥³€Íg+ÍK½Fs_ yilöÍøÊäšu^ëˆâ­ºž—£é[Ø4az Íwo¡khV}¤²ÆD*w&ÿ4¿:6{æ»ýÆoæEûi1/м2hxͶé…Zû× Œ7nR‘¿=Íg£þÆGLYÄ¥“n“Ò ¦ØµA‡.â6D=¦¸×÷™ÁG˜BJQXrêü6 ˆé2ʵ² ?WŒ¯Ìg0ÝèÁþêí[dž)#ÔÁa2ih°šÔ"…Ô?H$ ôãñØ^جµ©ñxoq³ÂòXrÉ„V!±”n«Îï4†=–¨ß– ¹j¿ì:"^«ßiXm…I3-™`“)T,ºƒ=J‘ðrG3Å7)'­š)»N Shk¤|¥˜KÀ÷v£8P›Ï¡ËÄ|BbÒNÛJ—Eã±j½6ßaðÙõµCÙ+°°=(ÏôHÑ.ÜËO³@óá¬õñ¼ãóE×g‹®OœŸÌ9î—,ûI„=¤1¯4u5c LU¨¤ËLãZßà­¦±:åh,¥•>mäMo ºÎ$½ý?ýü_ÿ«üw?…ÔþþgŽ?þÂùö/­ü…ù?׿õ³Ñ_þ ‚&‚æ«D ÍÚÍ–‰ä‹†gŸ]ø¿ÞíøRŸ¯ŽÍÖ¾þ¡ˆ£½Ôêð&ѲYCóËGè-øê©2?{¿z°²™aùbùh;‘þl¥ù¤Â} Í›­ÝßÍ·ëP¯ˆ&‘5ñ4š—â QQCóíúKÐDþÀ4_£T’€=ª™šÕS6ÌeTºÍ*ŸUã·ëv¨6´~›ÖgÓÀ*§QaÓM[4R“J%ê ¾wy.³±” 8lÍGЈ„$úˆx\–€Åౘ^4ª«£ýÞÉúíÃգ݅‘!2”¢à¦t’¯­r&·UµŸ{¸LµßwFS Õ¤•iäâ)*ÇA2º£•JêãŒREœ1Ñ8]&ä(Å<õ”@1É• XBÎ1ŒëîìhkÁõv‘IÌÑá .K*âÉ%µlžN¯š2ª¥°[H½rJ%N ÇdžÉP5•Œ9—x5 3úÛ9Óý’õãŠýQÅþ°l1oçŒ[Q%{¸’5ôa#ª¾ áõ³ÄT¡jlÚTKú´idÊKȉ3…¡q7ù¨ÃÉžžŸüwúÿSðæO¸¿þWÑo~¢ú·Ÿ©ÿ3Tö»ŸÂBdxAóÅ7Eó&ã+ÜšÊÑ^ÇÄà‹Ðüc½~¤ú[!ÏEóÉkx)š_>õ ü=r¨†æËßTÛdÚ¿„æ«&rúåhRý‡_[i"ZšOÇÏ®X~~ÍóF}üW 3T=6$æ³ä“<ÕÔ„^!6©¥V­ µBj§-Ú*‘fÔ¨’èä“À«jJ95Áæ2†ûzPËùõòñÞÒéþrg[+®·×Ûƒ…ì醺²ÝÕÓÕÕB¡ÚÛÚ[[>xðñÝg›·WˆxÊqt˜ÊfŒŠøœi±@!iäÀÙ´I[ýµJ›QmÔÈ´Š)Å”P*âsXÊDÒ$ÝIêðF(Œa2$glhœ>ÌgŽÀ¾ à1ç×…zШþ>™ÔO£ÒG†Xô^õ§LÕŸ2á±D|64`–à °=hV‡O6–µÊNñjP¾Uí%´Ç3 óvÞtš5g ûIí²:©gP¬!âûu­m„‘.2 7&$°$¦¸–˜>šÂF 0ÑVcï`‘Þº2ÞÙüÏÿø³¢üüŸaJþù?3ÞøŸœ_ý+0:ü‹üù?#h"h¾z\%Hßí®^ªùË+O ·6–ååh^£}yÉgv¦'1ù³•fuøêͧÑü µ„¯ÈØÎýrŸ/A³:Ô¢£‹´b³œÑ¦a,žFIÜ¡pi†;uéÝP»vЭLÃâN=WL«R}¢(üXTð!Ä…bô¥2ü¥RÜÅì…"4ÄŸ‡¾K7|;`ý²Ïü ª¿Û«Û©·Ê£âê/þÕI¼ª*;óŸ|0æÑüÁÐÌÐ,“  åšGgw™®ã4+©<•öZi©ù:ÑÏÊž{Åb¨÷¥^ê‡x×ó6•ÐeÕ|óq4o(G_ Mt+rgŠ‘î™hž¥wš?¦yúý2Ñ4¯ #ùOTÍg yÆöúwÖÍ7 "°üÕnz ™Ã¤ó9uRO‚\'ÂòØNH Ác1¸uµ&Ìà°¸ê*@sv"µ4›^Y…|qsýÀÍ[Ûó.Õj´ñvÚýù”÷OóÝ_Ïú¿˜òšûƒmË‘ÈCïßZ­F¡pH T %û #(‘Ûº~gW 5sl\ÃbÐÅ……b&(ÙXŸŒB¬MFÎKÿïÍéøÊXÏ|:8‘ôGÛq8"‹G£±UUèªÊJ º +ß‹™uðÖ;DâMxË+ùb1úíZ’ZU(¦cô<²MLoS³;ôóŸm€fÖÍ¿ 7þÇpÓ_Ò_§¬Ÿ'M÷"ú&ìåÌ%mÅ9AáÇy4óhþ°RÈ0fÑ|ëæ8šG™ã>ÅV …iæ3Ñ„JÍ“öö“¡‰fëT¶wŠEg¨ÏxÈñ¹Ùg¢yüçë94¯r»Þº!z¯B÷<4¯JÆòŸ®<ššïÕÿú#ÍoÏ4þîœè|ýbÜ£1¨5lX<¸N$s©óà„XJ-r*,r6,™€À0U¨‘ÁÈäHÜDòÍÈ7'6W&·:gºLüT›j!l[·Ürßé¸?Úqo´ãÎpûMÍÆ˜]©(DerèöG&‘¨”šÌm]3wv%çîìŠÜÜ•ˆÜ¯Ž˜ Òölro!µ·Ð±;ÄÍÅÔ­åÁÛ+C» ýk“Ñ¥ÑðTª è¬DU—W ÊÊ*Òñt‡¢¢¼UY ±âÝ «¿I¿K™ÿ:hýË€åNHõõJ‚Xq½_ΧTÉ8¿Æ,¢5ɘN5Û­å¶i8mjŽKñ+ꌂ¹²YÅe]z"ª¯M7r–;¤7Cš;½º‡€fÒüí÷h¸™FÜüëH,'L+RþOØ×>ÊÆ<š?¸\ĉ߼ˆÍ¦™GÎ:%šGúFó2QRÄ4ßÏ †öcŒï\Gò>´èö蕤dÝ3õRhf¦g]/õÛÈ¡ùÍwdÓ;%ÒwKŸ¤¨€æuA fÍ–‹þ«?Jó±á7ŸšÎßžmFâLão>1ÒÈ$äjÊÀ1s˜¯†ŒåûkFH×È< Å¡‘+GR‰ÐPÏØPlj¬ovb ›on,gÜ\›vªX‘Mt™ ›IÇvënʹ“rnõµ®Æš¡ÝgâßÚYØßšßÛœƒä,«B¡HD"‰€øøäޝÈí^qðœEÜ“ý]«QP2G$ÄÕô½µáû£7Çm?ØÝ_ØžK®Œ÷Î&ú¼¥¥å]Z& 9é–Ïv*»4q=mÓ#½RÓg.ÿ:dý:iü"¦Ÿ¶ó*¯_¤V3qå"JR‹SÔt<ŠED·‰kaiÓm’Z}=EÎįr6¹]BkhÃMÜ9—hÓ¯4o÷ h~hØÀÊCn6fÝüÓP×ý–uŸ¼æâ‰çÞÍÆ<š§,Åê‘£ÙÅ|ÚESÑÄéѼõ¬š€f¶rš²Äþ'X=DÍㄾ©#-ÕJß / Ð|ʾ—Aó*×sÍs¬­sùyh~Œ5dÑ<²«<šy4—ý]õÏßáþâÝú_¾/úÕÊ_}¨üÕŠ_} ÿÅ{‚Ÿ¿Ãú·?@‰ÏȈËFæ²,“¹rƒÆTWUWV ÊË*ËJ“Ñ@*L§zÇÒñÉÑäìä@6ß\[‡”S_Ovë¸I§j°]7á7φló=sᆩ€eÔkˆÙ61m{mfkuzcyú¯ÌÎL¤JKJ«*Q¨ƒ¨I¡¥¤¸xùöþs*å_íE¾¼liàÎêðíñG[ãŸïL~±;ùåÍé¯÷g¾¹5û§;ó¾»ðÕÍiÐóöJz{¶om26–ðt4ë’Á­Õ©ýíù°ªf¤½Ò.ÞíR<èÕ~7@@ ½PŒ5rÈ•…TtI-¶Œ‰«¨ÃWð(Õb: •2p°¬§TC6Z‹GU_ë”cFÆœK¼Ô!]÷)v»Õ·ÂÚûQã„éë”5'æ›C )ˆ ¤BOp6?óhž¾üáé8šo]9h<[-€8HE¡g¢Ù¡¨=Ürdnö}´=‡æuõâeáà3_F̓üñ'@3+æ)Ñ,àŽ Ù–LšÇ3Í\=‹æ‘ŸP:£ù~¥!ÿyË£™-ÿöåg¿'þÛÔŸ¿Íþ÷·YSk«‹»;+·öç·7‡çgïïÌ<Ü1ÈÀ*4 Uª¬úþú‘òÒÒæFSÀë wwD{| p3ˆ€›Ù|sa&½47 jªÍBZ»¾Þgö4É“Nu_›&ѪŽ;T=Ír·Ž'¦cÖÇWÆ–çF–f‡¦ÓsSƒ°«X¯»Ëuíê5FÖ?53²´2¹¾™ ¶Ž'} &¸ƒ¤™Cw×F¼rkü1‚æÔ—{O¡ KˆonÍ=Úž€ž» ©ùt¨Õª¼³·üèÎF‡˜Ð£¡N4óÚ„[>ù^@¹ëWnûäë)´ô›˜ 7¥ª˜Z]BC—Ò0¥tLY6€Qh$£Šˆ¨lyáZ@Ý.!F Œq;Ú)77º;ݪ[=Ú»=¸ùe¿õ«~+è ñÍ€ –_ô™ÆM÷¢†[=ºåNYŸ¹.?óhþàifÕ÷·^ω™¡¤ûHÏÃ1Ÿhæê¯_ ?M²-qŽj;áU]#½9µeøô?TÍ–+e‡/-É¢YQSÿVy£Íãiæ4ó%æ“dóul&p݉Djrr|yyn{kioÜ„eÿÄÄíÉ;›Sw‘¯~ž¨,+«€(-.í-ÍZµ¬Ñjðu:ƒ]í½!o¬§«/ìïˆN '§Æú!ßœŸ7é˜Ri-®QV׬`¹uõ]±Ï,ò…A«Šcײ‰Ðmqvú—3Óãý#ƒÑxoWÈï¶7™´*Ib|rpnÁﲌÄ<³CÁ•ñèÆtÐÜ_‚LóþÆèƒÍ1È7oO|žqó+Ä͹ooÏÁýzö«›36Æ ëì :ßÛüêÑn§ºSB°°Æšxóm¢åvɲ[²èÍ´ F8e T1#†Û=º½ fͧ´qòƒ1æiJ¸÷™hž#h^ˆfVÌYè„¹ÙÆ‘Ãhž\*-³ÏÛôÌš4ß/GÎóùŒæ;O1ŒæK'£ùæ ÑWëòŸº<š¹¢4šü±D|ttdaqz}}vskvs*cËËý““#óÓ©‰Ñ¹¡å©þʼnäPÜò:ê˜4¥\l1i;Ýö.O[ÈßÑôÄ{ýýñÐ`âæèP|b¤/Cç ÈRS]¢`Ul²’EÒp)z>UË«QÔ9D‹PYUxºÍŒ@ÿÉ‘¾ñá<ÐLF=ÝM6ƒJ.¢Rˆ>§9ÙÝ:3œ/EÖ&ã[³}{‹·–Ów/ÈÉÒ efžvˆüboú‹½iôó)HEmCL€›=ž¦{·Ö”äÒVµ_QTÑb怅 ‘2³fPE…M=­ú®&•צ¨*¼‚D²Dݸ\yã’ONžw‹Äß 4|;ØðMf®õv¯.if Ø8àæœ[ ùãz—r+ ºÒÞ‰€ÎûQ#T€Ë;½zðt7¨Ùô+×¼ŠÑ–úˆ¾6fÍ–ã4³¥:z#Öžý™9æßÍãs³Ït®Nl|꧸Æí8Åì“{|H~*Cü «8O~2Zjœƒ8ÇŠpt-'ìð,ÕþPÕL9…w#†û1ãç}–¯1­P–e ÜL7ò¦¢ùvÉŠG¾îSnÔ7ú[=úÛ=ú[HèöÃÚnÍ–_µêU¯“­‚„‰™G3æ ËñšÉ&Is¤åðÍœ˜£DgðêÐd7?$¼˜° íË¢y•ª-º^ š‘C'£y™×ý^¥á†,žG3æ+FÓ`é GüñdïÐpld,6< M„Sƒ¾h\kk˜^[ÉFb$ò¶¶;¬Ô²XX¯Ó(œö†—Ý×Ù–u³7ä‹öø3tBÊÙ›NAÊ™˜é:I•E4Lè2*º¬¦ºÒOTá•ñá¾Ñtbd0–ˆ¦†ân*yÑ@¬§«Û粘4Rq½Ý¢„Ü0v'»¦º!Ù\‹¬O%¶çúwçS7÷—†ÀÍ;«nf‰NZÄM`èšO‘²²SVθ]0å͹%‹2`q˯"á!èV@½éWA¬!\ÊçÝ’™6$§qS[LÈ£™GóeçfŸ;ýX­úÃyLVLÌ‹¹öšBbé„[ qt¶óhÊûˆƒ¼À{%Ü£ž9¥uºã4ÍgfšUJ>Åj_Ì´ø¹÷í9Œæ•ò7¯1²h–hGŸÙÿ ù®ÌwK„y4óh¾lkô->‡7ÐŽx# o$î‹&|±$¬¶ùƒ|¹jns=݉˜Í¨¢‰B>W£’Ù›m.gsg{«·Ó™u³'è7ãp3œJBʉ¸ 2fÝÌDq6°¥×aÓð`¼ÃÓ6268¿4µ´:»²>ŸèÄzý·†~¯ËlP‹…¼¶MØÓÔl{'úýl.Œ$›ˆ› {àærú¸‰ä›c(Çïe­\…ÆÛ«Ã°ú@ÏÍ™¾•ñ(즕^fW°…Ùã‹yè5%—ˆ…ç b–ŒCãѱþœO»µÞMµ€›F&*nbÙËņ_)äý˜éaÂ|/f¼1¬w©f]⤙=Ü\?†¸)^ÁÍbͧ\…ð* pÙ.…έÂÑ~¿•Ý­¦5ñ0y4óh¾’¹Ù,š°„óÈ™?ÇÑÔÕa_ MŽw%ëx¿ôîdÑ$ëýgÊh§AÊiÐüÃ9ô§5ÏC3W¿T|ˆü€'¤™Zrh~J0ç?Wy4O_jy"¥©Ain44;Í·ÅÙÑàò4µûLv—ÖÖŒ«©]¾¹»´·3½¾:¶´Kµz=<ŽÇe)dâF›ÉÑÒÐÖÚänk:»<®€¯=ðô!å dé실S±Ñ¡äøpÿøHÿh:92”HÄO'‡W7·öÖw÷7÷noߺ»{ûþTZ]vO»£½­Å¨W”‚¶m¸³)æoŠtŽ&|lΦË£½+±µ©Äælßö| 4¼¹4t+“oÞÉ&•«#Y(¡¶î. nÏlÌôAŽ9—ÃN`WéH'­ì2­ì ,©¥—kJ/“Š.⮟0ÈüZƒˆVÐQ!3wÔ¥˜÷ë¶"ÖÝx£œ\PÓfö¸C8ç–.yå†_½âU,vÈ'”۫gB‡~+w°±~¸™?f‚ž3m’— …Êt›Z@UØ ý“v@EkàóÓ³y4O.çkÞ¸àºrü™s³·žu¢ìÑÔ š‡ÅlÙ)PÍüþÊÁé1o½Ö­‹fÑ1ïp ·“FAfÍ#bž\ž‡æÙZÏá¹ÙkŠ™[Çh)€f¶ò¼4óèSçÑÌ£yê"Ë«ˆT¦@V's¥¾B/Ò˜e›ÂÔÈWè˜éõÒÊ…í­¾ž¥ùѕ齭…›Û‹2ŽF­©ç²µj…Íbln´@Êétöw«¯Óå÷¶ýžpÐAfkƒ@ç@_d°?:”ŠA%•ì•«äÝáÀÈxzayncguÿîî½G·ï<Ø¿}oïætima`¸¿¥Ñ¢×*Mgƒ6à¶õz[Ráöá˜g¼Ï?™êÎæ›KcÑÕÉøútrk¶g~|Ü_ÎA9PBãÖ\js¶¸\›L@ÿÙ¡0¤«#qï@O;d¯.OååOQ—?«ºòYõÕ3t|5 WUƒE‘ÑxT©ˆRÑ"¡öÚ)‡l²SsåãwØÕÍ||§¬&¤eÄLì>+w¨‰Ÿn¤l<¨‡uÌŧ¤µµa#b¨‹#}8 <¤[”ÌÆPc=´CÒÚ£g5µÞTW•G3æK•«"äÖy¢äˆ\ã°CñB1Ÿ‡æï.œ„]¹Ôÿ<4AÌ\Ð|%?`ÍìÜlÍ7Št¯ðw˜G3æé‹H¥²:Z t™É§qÅuBG¢æÉ´TŽ[ÜY_:–&¶7ænî,ÝÞ[¹}sõÎþgÔÒ¥‘^§¶ZŒ 6sK“µÕÞØÖÚÜîrt¶;»<#Ôíí û£½ÝñH0 %ãád, Œ6¶4úƒ]鱡éù©åõÅí›i"VBìÞÚÚÙß\Ý\†­‘xCCдiºÚ¬áÎæ¾  ’Í‘¸o,éŸBÜ Ï÷€ƒ+ˆ› ãÎÂ`ÎÊí¹­ÙÔæLÿÆtßÚTr5#æÜp€ bF:’Á¶˜ßÑå´8ìMÕ¥…˜òblE U†«,E—U•ܨ(*¨'–騸N-;hªO¶H >{ŸT|QM«´qqN¹SNõ«jC:f¾®[SëWÓ]²•ƒi—R¼ *ÐPׂ­½†:à5aá$-€’Є™¤ÂV¿Šæ‘טYÕZzEÍ<š§,¯æÒÌO*øGж¿ø ”³hna7¯þú3Áó¦g³•‹¬Ô ٓ®w¿B4¯ˆR94ß-SŸ¡#9æ/?Äžô›¹ ;ynöíbÉSÉ;Ý™ÿ8åÑchš8¶¸í ÌÏŒno,Ü»½yïöÆýõÛ7×nî,o¬Î,-L°Yu±H¯U Z‹Ùt67Z†C‹#¡Ì½Ó£“}¾d·ôìöwžp·¯'Ôú[š<]žT:5212³0½¼±¼²±” `tqua|z,‘Šsdµ„ç°ª=SÀÝér$ƒ®ÞŽ¡¨g$Ñ5Þ˜J3tBÊ:G rc¦}ºo=åÊdby<[G£3HŽÙ=óBÆ bF|v€DVÈ屘ËåÒP7j« )å .áíz/ Øî’oùdzQÏ!4ЍÍ:¾ðS($”(©•zFµ…mäá›ù„.ÎÊÁjè(>®¨¹ß*$9E$0´]Z€úUtP5¨e€’°ìÖ0ÀShïÕ@·&NM«‘KòhæÑ?™M÷€˜@-˜ bFý­ &$°9—WÏ`0k¨4béUrYÁx3÷aD÷uŸéÛ”åë>ó ãã˜áQT?¢Ó°ðØçYÕ7¸˜"¾DD,“’ËAO5½ –òš ¶ˆZ~ÅÊÆ4òpMõø>Á! ¶‰:!-õ( ©D „U·„í!ÄÔ3ªdäÒü`Ì£yúòËéÙ¹ÙÃ%›cfÅ:0;=º07¾²4½¶ 9æäôdzt¸ßïk§R©B@&•¤£›Ó‰[+é›c1g¾¿r+ž…‘°Óªr¶¶¸œö:ž³ÝÛŠôD“ñá¡ôØððøÈèä::9šŠ$¢Þ€QÇñf¤Ù¤lµi=­–€»1ÒÕ 8“Awª§s¡³k,AÏ©Ðô`2J r.Ý ’BVAÕñ¾îtÌ b&º]ŸÄô»Útz9_Ì«%ÉåWΆ5Ô•É^·êaT\~Óoùó€õ/C¶ÿk¸âQÔÀÀ”°pe„¢‹ŒÊ6ºè¬Ç”LH y¨„T ù&$¡fµ©mfa mâ!€B4×x8gac`tÐÕVÉ)å|\a~0æÑ<}9Cu­=z×,—Nf®Ôš¼dCÐü”ÖEã<7?}ûú©4“å9œcÌ_y†¯žcõGó^ñÞ5âO6q­=½˜ï—IÞ;tðû8þ£•Gó„RË„‡†gvö¦·w'·¶'6·FW×»¢ _4îÄDB~»Ûìö¥úb顾ÑáÔäxzj"==9 ŒÆcá6g €c³X6­xz {c:±¿„Ü Üü|w*{+žÇ;“·'¡q.jj´µ45°ëëVK[G»¯;ŒôÄS}}ƒ©þôààHzhl íJÅSÉ®`Àénc°êø,º^)´éåÍ&•«Én†:[z¼Ž˜q³?Ün¦c¾áxè9šð à#:‘10ï @à}!7䘰À·Ón‚2Y.“‚Æàzµ´iÝ+Ë¡ùm¿åOÖïmÿ‘nøó íqܸæ‘Ö  ÑçˆÅ—¨ë̪µ•´òk5eWkÊ®@#WÄÇ‚xªh• §¶¶ IÀÑÂÆ®ûd_õ™7»äà)X©¦¡TŸRÊE„võõü`Ì£yúrXÌφlšyòC>E NFÒÌÃhÒZ'NN3/ñ¢GÄ<ŽæárÍÓýŒž†æé;çÑÌ£yúbuuô¥fÆ7¶fvo.ݽ¿tçÞôÎ^ziÅêiéô1™Œ†›ÛåôwyCÁ@oO0 Ç¢=áPÀëi7´$QÌ£‡;›ÆûºÖ&ãÛs¹ûÁŽA ×Hfî'°9Ó·<JLF=‘R#WklÍÍö¶6Wg§²Y¿–þP(Ðö‡C¾`wG—¯¹Õ¡7›ËQUìZŠJÌ3(E­¬Ù¬v6è½­Ö€» àëõµFým‰nw"èN†ÚûÂ`(¤Ÿ½žÁˆw(êE0!˜BÚ!ÇŒv9áczZ­-fµ^!¬¯£ÒH3³2ÝÀ™vV;¥Û~å½^Ýã˜ñ«¤ùÛ”õ϶¯û,_$L£†MŸ|ÊÁÿK¿ñ?úM™þ¯”©ºàêêÙlPË®pÐ78èBH?ø!¡DL,•ÊüJÊN·êN¯îë”å?†¿K7ÀòaÌ@X.¦0/fÍVÞ­nÏ¡‰UÌ‹¾B<•'O¿ªþàTØpXj­È=‚.ž¢íîÉ)CîfDö€æ@³¨þßZr–„œÑú¾éwgñjÛNùS”4}sšnŸìùONÍPZ|ÝÝéøäÌÐâÊèÚæÔöÞäÖîÄæ¬FÇ'uv*&“É­Vksssk«Ãåjkks:­‡Ýf³>Ÿ_PP`V‹ü.ÛpÌ3=\é]ŸNf.ýHgÎbØžKAË\¹Êc°·C­V]Pü?<¡X­7è-VKSsƒÝail²6·4ÚM­ÎæVgC‹ÝdkPht|±U^B§$õ,•¤^§Yuò&“ÊÙhè°[ºÚºÛ›ƒ-¡N{Øc‡Ü t9£~ˆ¶XÀïv!˜f*° @Ì.WC§Ãân6Ub™€UKÁЕV*ª¯´±çÚDàæŽ_u+¤¹×«3>ŠD Àè~HžÎ:…ßõþÒgü®Ïøç¤á‹ˆæ¦OºêlwоŠj`Ó7qÝð²®êz]Õ v5bhÌÈXñÈàáÙïÖüfÀ–ý^°…v ­ü*¥ô2¹äR~0æÑü%w îS¬üšìÖÔÉs³XEÛ¡úÁc_;ƒdŽÞÈÁ©§(Y{®Ï;—q¯˜sh~„k$Ž^Y\ÆPPTÏ=¯¦¬¾á™hž©ízf@󔿇 ÙéiŸRž«ðëW•ùUÍÐìꈌNöÏ. -®Ž¬nެl -­£Á´ÙéÆ`põ|F«5Œ‹Õl±M&¨k4Z©L.K¨4:O°h%‡¹/ä‰û&û»F"™ @ú6g‘SX×&Ð2ÞçOG=ŸÝ¦“¨UJ&›'–+åjÆhÖÍ ^©3h &­É¢·ØÔz£T¥á D4&«¼¤°†ˆp2!G-åU«NÑbÑ‚›«×Ùàkkèr5ú]M{Ú›»;Z‚Œ†½Ž_+@Ùã…p@dfe› Çt5íZRÏgÓ©D ¶ª¼]Ý­¢ÆÌ)‡`Þ%^óÈ·ý*`îvX› Ý~P’®{åó.QÜÀ.¿MèÁÇÏ{5Jâõé&ö½ âë˜ÒÏ¿d0­­¸F¯¸V[YÀ¨,ˆèÓNáF—òv¯þAÜô(Ĉ~Ö%&_Â\?—‰y4$š%ŠDµØq2𲡝^ˆf¶äÐ<2Cûz)+æ¯Þ¿ h= æa4ß«Ð=Í#å<»÷G¢ åw—êOîðv¥;ÿÉ£ùƒ ¹ŽkëðµG]}ƒáôxtl:61 Ëž‘ _rÀŽÈŒ–PN¥3xõ¡H"“)Ä_ ‚Õ:—JcÉ5…E%h4V+ã7~wC<ЖêéÈœ–ãŸèGŽ'Φ{¦ÃcÉ´ÃVW“^ÊgÊå2"…^ÇåsbDÎIë¸&WÀJ…D¡®Ëœzµƒ']½t€©b3¨B.S*7z¥Ø¦W6™4­  ³­Ñèj2¹šMîs{‹2PÀXô:m@j&lÙð´fÄ49¬:“Z*æ1Ùµ"¶ªCˆ1ÔVºD„ š6ÔÀkæÏ¶‰—:dë^E.V=òE·dºU˜näú!öúíã^M}ÕåñÖz»ðn·âq¸Ì¢ «+.d‘õ˜¯œ2Ü\?å­z›~äÞ³PŸlú”ü0Ì£ùãËq4/cÙOÍIVÔŸ&Ó<°’#̺yd†öWŸ°ALH0ß/“~€¶<Ís¥OÎðyïéopΡù!ñ©§{í3ìüñ‹ùoo^Í*òh¾ÂBbruÍm; ÝßãîMxâ)_r–±~g0žreªŸÊÐèLP’˰Ø< Ã`Qjè$2‹#VV¢ªªª¥–A)r6ê!‹v9Ýî¾P{ö¼ÖtÔ—Žù  ´AêgÓË9 ŠX,®Æ)µu'XIcr)t™VGƒUŸ+À’DeT㈰óùeTy)ƒJæÕÑ…Ü:™«’ðÁM“FÖ`P5›5Ífm‹Eg·ê6}+"©±­É2"Ñ„¬D#­ úƒR+8µL* W]éá4Ôr{=Χ¨IšXVÎh3Ò!:ç]’lÌ8Eã- ÒÆ6!ÌG=ê!•‹23ü¯äN·³›îdÐ$]dU]µóñ³ßÊw§Ûij.éœ[:Ñ*làuÊÈ=ZZ~$æÑüå·—Ä¥›ÙúgÃK¡y,Å);>)B€Ëžtdç¹dó¥Êá4óZ­é0š–ɇ94/ЦO¹Ã+ß ûüæSâñ£™oëŸÙ9@3æ+eX’@cÒ6µišœz{»©Ícmﲸ|·OowK 6B-KahlƒK¬åHT<±G `ñd4–PZŽÚ_‡¨¬¬ª£‘%|¶E+¤Ú!ÑËdyÈ”©;3eú}¸š —„­âñêÁ`4ž‚%Qqd†Pu ìŸL=ñdzE5ö\^^ÉïkW(L:9LZ=›!®gË…â‹LÌ*‡ïS _Ñ3ãFVÊÊjà¥ë! 3ÔÕô6!Á\Wu?¤ºÛ­¼PXåA9iÐÌœn᮸„›’mt«S²Ü&˜hd;þ_LÁ5­Â! ¶K)5=¬cÆMì^C]—’f®«á‹fZ­|l~0æÑ<}9W{ôväöu¨|p¹ü·—Nu`Ð|³q¶ixã8š¹shÖ|)4?©xêÛO.áE°üãh–šW!ž·ÃÓœổÙBóƒS¢y–7s¤åןäÇcÍg¦H)64µ±Þ&55),v¥Õ«ubU9ŽRE aÈ ,…&×Vi•8rÁõâ…¥;K#;Ë£»Ë£[ éŠ …4P!®7©e@d--’÷5dÃY^£Q%à0*ËŠY,v]‹É¬+­DW ñ•hBE5 Daˆ(,±¸ U]®¨¨ôÄúýýé@j˜LÀ›"žN!1inÏaJø¥„¯‘‹´ ±N!Ö+%•Ô˜a^‰ñ hÏ´ÀVhÑÈ…R‡E§PØÆºŠ² ±«®©jÊ­,t›ˆè“¼òš€ŠÖ£eDôu1# ¸ìÑ1üJšKD²±ÑœªkwŠ}¿|Ï'S‘Š\l¯ºfÈ\7ÕÌ›sð!fZxMܤž>aç϶‰ø¸"£ÊÂÆ´ð vÑ!$µ IV6FJ*]í”M9!55?óhþ4?¨œ%[i/òþgÜ—Bó ATP£|ÿrå3ѤµN\À‹~Øë„dó)¿GócÊ£ß-S ÍâGMØ^|JÒÜÍ·n^ˆf¾äÑ|fÁÒ8´zY GBa‹k¸R†PU'V3Åj*W‚®©+C“J«‰WXnI¯´Žm:F7lÉCψ¼3Æoö­L§'’scqH k2œ±4·N!æ«$µT–P ÊE<>›A%h´Z*•QQC›My¯Ý(¹VXZPTN"Qp8ƒE¡ª­í¾&o·ÝßÓÚ©(-É¢ OTC"À~àéXµu2…<–TÀ• yrQ=<ûAdV‘Q½2óz42¼ÈOáňx,x=t ‘€©nf£ÚXbÑùzL¡’Rna¡­,LÛRo‘²á[Dh12«ÀV̵πKÈ(!¯dU^1ÒË|¬WBìVPb::D¯šê“’ì\ô€•=ÒTO¯¸ZWu½[$#—KÉåBBI}æJ“²‹ϻģM¼”…•Œy4O_ÎÔ=CÕ”¾ùû³¨,šÇËyFç3Ñü#¹§Ðu’Ð<Þ!{áI…¤ó£y$ÙÌ¡ùÚÙš“Ñ„¿e¥ì½Á+ùýú3vÍ<š?¾T‘˜("£O«$Öb¨|-Ce—ãj®WJ\=ºÐpÓà²}xÍ9±Ý>³ß9§kå¡oùAÛäNcjÑ›Tw¥¤îÞt"P‰ª¢’‰µT “N‹ x,¦€S'®ç@>ÈaÒÉx‡©®,'“kH™‹¹WGƒëá­©ÞÕ±ÐÜ€o*Ù1ÜëÚ!ÛUZ횦¶Õµ¹Ý•ý[™dŸq“q“ÏH£´³žåsêøl&„€ËòØ™p@ªRÌ^Y^]m½¦¶†—Ýhd¡ZyÕ> ¡u‹¾!§”+(å*j…šVi`T™ÕF•®¥¥£T5b)sc£C ±æ­¸„¸‚3ܪkjJ)„‘^ÑÈ®næ YÕ*r ¯êÚ”µvÅξíâ /Š.RË®RË‘Û @K.ƒ§) »GK÷HIùÁ˜Gó”å·—ôÇѼŒ^Ä𩆃#€òàäáë4 ùAÁÁôãÅ'ßI3³Å‰'G†ÎbÄàæe^ø…/ì½*Ç‘ÙÀ£#Éæñ’Cóº9‡ö õÉ9BÇÅ|»²õøJÅÞ—È@/ËòhæÑü1¥E(¬$¡ˆ¥JžV‚&s¬Òö¨59‹ˆ9²áßvÏì{îù–ú×>l| ×Ôž}dúzÆ”Þd<ÔÑkȵ5 “A«©«¥qá…Dʈ‰CW—•ˆäDWãædo6¶¦"»³±ý…äí¥¾íéèúxxaÈ?ÓïRóàPr}cñæþƣǷŸ‡&óhžÍ_ýñÆq4a™C³€"­€øn‰ø Åq2šÇ p©¶4Ad“ÍÓ ùv¹íx#¸ùrI4õ¤ C~<šÇË4?$vüDÃêäòÆo¼p'³³³¹U¨¿ð!?àYòhž²8RÓ®ôBûè²wjÚœkH-6­‹ fÛÔ^ûìmÏâ}ïÒßò£®•Çþµ/:çï¶M–ÄŒ6˜Vx’í+‹%â°@$™€Ï´°4 UYV:o¿9—"÷ç3XÙouàÑzúóÍá¯vÆoß]NA;`º2êïnYZ™7÷nn@3hR2hÖdÑ$“2n’!è„lk:(¤·@6…è)àÖq™]Réì^ƒÆV£*JKꫯꩥVf¥³ã“©eWj+®A0*¯1+ ꪮ³«o€¤4HK/“Š/V^þtÆ^1ÝÂ[ë”Ü ªFl¬A3“xã£ü ­ôµäbMñEXÎØ«ÎmèQ@úUXñçˆê¯1Í_¢êlüG B-k–ZXõ˜¬;€&òß L–[æÑü»”· Ÿ¤`èÆiH3w4Ÿ¤r%âwŠ^<ÉYfÛ>Ò’CAùEh^®{ÁM~~ù1ç„­%ªþƒ|S1~B·)‰lßñàU¡ù1ôÄ”ëÒ¿š§ÙÉáý@ýÇ ˜Gó‡u{¸%9Ù64ïY®3µ™ã3šéU$ÍœØqeÐ옿۹pϳøÀ»üзòmŸ¹ªBOCï¸Ú?(Kì×Gt SU…©®ÂVWCv‰Ã A¨¸¯i&å[Ÿè¹9Ÿ¼³”º»<8Þ_|\n|µ;öÍÞÄŸoMÿåÎÌ·7'¿Ü{°6tk±ow6pfç'WVç76— ‰¸™¡“J&å¡“Ja>M'TjkÈTÞ¬˜˜*ª¼sõVÅ%5¹Ø@+kfWµ ñÀ"¹ä¥ä2DMé`*Ä¢‹øÂ å?oä@,·‹÷ʯûLM7<ŠégZùU—?%\?G¸‘‰ëçðgWìœ]7ÿžO‚ BÐ%! åüî È*t6P_ùðŒF‘;…þó?ÿ3—Ë…Á¥P<¹àî“O>1›Íÿí¿ý·ìê§Ÿ~ «Ð3÷pèl·Û#‘H¶Cqqñá§øÙÏ~F&“óÓ³ÿ å"Ãõ‡ øÐIc³†æ"3s‹ é'’uRk˜4È.ɹ„¸ÇѨÊò’b ]vþJÑ99¡PI*6×V8¸h·ï 嬸üiõµ³˜‚s˜‚óè‚s¥>î72dÄÂù6á~Pý8nø*iúó€ÐünÐömÊòM¿yµSÒÂ,KªÉ£&úr {ÇÍßïÞó‰ú¥_†äêU’k³P‚¡ßEÔЍ¾éQ‚ªÐÿU½¡0HÙlvvØ®­­ _Áñ?zñ‹_ùøÈô,•Šhãèp†RÍòDz—;K§\è<ÍJuôH²yJ4_¿üâï¼þŒ³yršY¤=Í_}ôrƒüûâ+V^;¤À—Õ·0šP~ýë_ç† ˜wÙXÂÙÛÛ;<ÊþçÿüŸÏ›8ÝØØ(--Ííö𣪫‘o±ù—ù—ìC~ùË_îîîf;dw˜Ýezz:‹fnŸï¿ÿþó’ÓìÎs»ÚÙÙ%ƒÉý ¹™¥ü`¬ªå«;"Ÿ-2B‘ÛDΰ¶{ØŸmI¯C¦éÛjßÛ¦nº¦÷Ý3·ÛçîtÌ#nšÐ°Zûæ‘IU×€ØÕ+Žìp} ««ó««sÙèí´ †Óý¾¥áàæTAs9 &¸ùxsLüb{ Ñè¼9ùíþÔ7{“_ïN|¹3þÅö(l…nׇWFÃñd,ëíðt€}0ŸþžÑŒžt’¡NÄá¸Ä ±èjÈ1‘YÙZUN%`ñŸ-¸E»ÝÊ€bÝ+‹kÛø¸ DŸ”“CÊšâóõjh ­KNšid¿å‹‚æ¤þ2dûºÏüUÒü0jpsQ1%qÄH[up·\õ»í‚ÛÑý.ÉãnÙ×ae.Ùü ‚&â&ˆùeH gTAxUï)ŒYø1™L®¬¬œï¼óNvHæÑü‡*–5ˆ3ßûÉû•ú—B3[Ž  ÉæGsrýÀÊ_~Twršùn©ì í¤oõz³¤á£ùÌ4óWc¾§ó U?+Øø¿ü¥¥¥\b˜Í +Ðíôhfû@Òzxçü…åÄÄDö!0„³ÀeÿN>¼Û‘‘‘Ãhfûy–l"|Íímd®>÷—v~z6WΔáë•R»_éîÁðT4Ms}“_éK‚ËMCk-Ã@ç¦cèÜ9L§kúxÚ8¸lŠNiƒ#²Î„ÀÞÍ®±:¦k[‡c&æ’W~'fŒùš†#îùÁÀòhÐÜCŽiöß]„üñÁÚPVOÈ:HH-¿B¸FÁÓ‡ÃÖÓÐ :ïÌÄÁM{k«VoI¤˜ª*lu˜›þÅc1C!ûÒP×ödÏlgÆS|†K,ƒÁ¡ÑØêjLuUUEyEYiPMiâ.¶‹ïöê¾IYþ4hý²Ï|?ª¿Tïv«ÀЀ’ìàaœõX·ß!"x$ ]2²GJœrV:¤àæ½^ÝçqãW}æ¯û,_&Mb†½nuºÓ#Ãêkæë–íœu'oòÍN$ß|}”ӣʄ ý*¬ø<(‡v€Ð7Ó»„èWò¶‚q¹LðŸÿùŸ!ñæT*ÕáéY‹Å’Úüqnõš GT}óÍ7& òhþC•ÂdJö ý·Ð)WÅOæ“Ï ÞŠqîœðÀk¼®çm*©zêäðO(íOO/·~Š7>ùOéD4_;\œu–Þþª~i¿»tðWÁoÎT~õçû?ø/µ«Üñެ\Ï›žý§ú§D"‘eç΃¡—Ýzœ³K—.ÿƒFwnHæ¦g5 …ÊNφB!ÈF¡Ål6¿ýöÛ'£ »‰D¹?žþóŸUTT‰È­¢Z[[a“R©ÌOÏ>9 QŽÃrä£SØäÅðÔir¼rOŸ¦{Ø›±õ/6®ÍÃö‘-Çè¶cl'ÛP·nA£­IgÅm½ðX¦k¢¦±ŸhŠOÙ¼v}_À>ï\ê^ ­OônOÇvç·ûo/¥î, z"t?Ú@²N$µÌr¹–¾—áòöÒ »>™ LõyB­« j6Y4|¤*ÊG›yK’Í.Å­°”+¿°þiÐö硆o¬âÆ{Ý-loá5ÔU5±Ñv.ÆÁöÖc9UW;ÄÄtwÒÎ7·º”ûAÍÝÝ^ý­°öfP³Ü!°ó»Åؤšˆ¾NYÀÊomàæwiÄÍÏ“¦‡1xz7¢[óÊ, ”­®ª‘U !ÄÝh“¦:ps¶M´Ô.]÷*¶ýªÝ€Ýð*fœ"È4»„˜˜’4d [j§mÌÅföZ+oËÅßëÞòˆîuIøe÷ýÒû]—w¼âÛñ¶›}æ›X–Z«âêòJÎúË£ù7ùï}Ð|§TùV‘äy}ÞªpgѼDT¼ìþO@±L;õ>¾û4/?Í'¹ªà)v¯<çÐâ;ÅâÃ'ŸP~Uôú•“²Å2ÇŸ^4çÌÿ{½¡‡óÖ—-ÿëý/¹>Ÿï'§ÿÉÇÚ•Jާ" õUl%Qj©3wÔ·EmQ…w@5Åæ¬}K¶þekÿT€H$’‹–ä‰ysb^–u$ë›ü ½³FÙX!qs›î%Ìz±ÏaèëvŒDÛ§ú}³þÅáàêXÏÆddg&¾;›ÈЙM9ï­ •wW€ËÁ[K©› ý{ó};³‰ÉèB:8‘ð¤{Ý K¸ÝÚ7˜È¢¹¼¾à²*‡{Úý›“póþÊÀÅþ[ ÉõñhŒtÚtZo}ÅœŽnäB𹿕ïÕ÷"úÇ ÓWýˆoRÖoÀÍpó/ð _ô™¡Ãø1¢¯5Ð*.ô6 uµ™‡õÈ(A5­ÏÌN7ò&ìÂéVX9éNØ Slâc Â2BBMÔSGŒôi$ßd¯8¸Îúm—àf‡è–G¼Ñ)FwÛ…;nˆ ¶NZпƒúOûQÌ£ùƒË[¥†OèHbh>5J|*©üõî 3ÍVÞ,1Ÿ>7)›\ßÌÖ<‰0㩎’š§|U€æ‹æfëóž<š/[®VQ*kEh–ÅR$ºÎɶùê[B’ö„Â7¨ï™4ÅfMñ9Ð3³FˆèL6 ‘i•?-ms»èZäª7ê¬W©šÝ}ƒA˜êqM$½Óý]óÈ$mxm¼ws*º57÷Ü@Üü~>öÖbêæ|ÿî\rg&±5_ïŒÆ:ÂΘ¯)ÐfêJfМZY_°›d©nÇX´}a0°6ÖtnOEwgb+#¡ÙTWw›I'eØ¥=:úp#wÅ#ÛìRî‡4f~ž4Ùgþ²ßòuÊŠ¸™™¤ý.ÝnB:ÁÍnÕXK½ŠRJ-½hb¢šxX—ˆØ­¢Ç u}NÊʰrû-œ„‰å•SZø6NU@Œë•“Ê ž6aadæi9+Þš³~Ë%È@)Üv 6ÛøëÎz$ÇlfOÙ˜i­_C±ÑKòhæÑ| .ËZ³h€ò4š×ä/5=[$ø—(þþºö„­'£ù!ùè R‚ïãž{Pà”iæiÊiÐü„ÍÌòh.hZ1‰SBæUÖÉ1|=IÞX«ocY<|{XìŠ+¼ƒ*ÿ°64® M Ëà¸&8†D7Ä(ä˜Ê®´Ä‡ä”ap‘¤VL½öZøQ1­ðÚ%›VÔÙ¢‹z›û»[G¢ã Ïtªka(¸8Zí:!…wf“@äþbê—}Û3‰Í©øÆdlm"ý'“ÞÁW2àèéhèlÖª„Ì,šøªR“‚4ǼMé×(PUèŒòšº™¦²¼ÍÓT2¥QSM|•ˆeQ ÝšpGCÌ×2n7‘|3凴q>CçòhÏêxd:·g’Zf¹„U„ËñÈÊXïÒHxf y£¾æn—¥Õ¢sic“#³‹ÓÅ×,ªE-j³i‚.[ÈÝÐÓÑØÛÙË Ûæs´b2¦Ò^èkG[êçÝ’l² nw#ú1#øøEŸ%°ú(aº5ÜîÑí5+9hë‘‘X•×X¨‚zl!}CJ*=Muh ­¯­RPÊÅÄFå5RÑ[m¹ƒ…j7E¸”SQ’šš-m¬11Æ,Ìq  ÏTÆÌŒac-tèU€˜¸&FùO÷.ãñøÃ«%%%?ûÙÏ^{íµ\ËÖÖVvˆÙlÿÏüË¿ü À¹¹9¨ïííå®ÿÊ£ùS΋·OÙóm"ѯ>zÆÚgë׳•¿˜GÐ<ȹO¾÷ägo_Õýá†á¥úÿö’âïõVþþ÷¿?¢gnôÝúþêËÃæºå®AÞʳgï$æOT.•‹ìB¯”&®æj Eig;êÌ^NC¡Ó»’ö~€BäJZ£|G/lâ6v×™=TM+Nhª`ÊŠ)<¿†6°¦I%h³©»]Ö^OS_wëP{4î™Hú¦úºÀÁ¹Áî…thq8¼<Ú >®OF×'c™%` íK#=À+ôÏÍ´÷v6v9MÍF¿ŽBD— He%7®‘±Uj1ת‘8,jw£®£ÙÐѤw5hf•Y%’ðj«Ë‹|lÔÀH7r§œÂ…vɪW¾Pˆ·ztY7ÆM¹¸3‚˜° `^;¤C Üv ‘^v™Zz™YY€ÜaUÀEJH¥rJ¹_Ì®¾°UX}ÕPSnÚ3nz…Xp³GNÊÐIí×Ñô´A=}Ð =}Zjœèãݼj¹èǼ ï¿}$r›ètzö®lY\\Ì]“òþÏÿÉVŠ‹‹ÿ÷ÿþß¹>CCC‡•„úØØXÍÿ”*E(Ïž4øÛ£ùdÒø{4ÿíí¿Ï—üæ,2UûúUíOýDϧ¹‹AŽKƒ1;úÄb1lÍ^>™ëf4¼kû™’­î™Gó'*WÐôDnY­ ÍÓãÅV’¼™¢rд®Zèéã4tóšÃܦ»!À²ø˜fl¢ëÝ5*ô¯¬S’¸—Q5Ù."‹Ø4­”ë°(}¸õµ$­ƒaw:Ò>í‹{ÆÞɾ.$ñìž ͧ‘XÈÅp– æt¿¨M…Ú"ÞfH;[ À²¨ø¾Á> ¶ *J Y4r}M.`k¤õ…P#©W 9ü:§–‚¯®PPJœB|¯ž‘4³Fšë'[ÁM)¸¹Þ¥Ü¨÷:õwz! ·{õPßën†´°i£K¹Ô)›i÷[Ù°Rábáyüóä’K¤b$¨eWèײ÷¤%ÀÖ‚ÏêÊ.(ð7LÔRˆ&f…ƒ]Õ^ñ°`bPJ ÉHh¯‚Q{3’»%„N¶[m¥—I±¯|0®¬¬lllžê¹•¹ÖòðuÖýýý¹A—­„ÃáÃg¼ÿÔ9fÍWX~{QõÌö+ÏCó2™Å}·ÚsÒn/ðžÌX^}ñm‡ß.?éV<ïT<÷V ¿9ÃxU¿Š×.ðsW_fË{Õö¿ûô<4³Ó­ÇфїŒð‡nv„æÆé¯ýë_þò—Ù[Þ~àñžy4ŠòvE×U ³¸FTÉRWóôX¡/¶!t*4›iòÔ”&/ÃØI×·¦T6‘-I8[BàêÎc-\œ‰å1Èr>³Ù(ïhÖƒ›à䛉@+ð7v õ¶G:Fcž± Sýþ\€’Ó©@. 3…žÉîÖžÎÆ@›RHƒ¼žAÁöÆ#2zu§Ž“´ËhD‹FqÒz–€]ËePQ…QVtCF*nàƒZÄÀ°qF[ø³.ñb‡lѸ¹Pïµ7ʰn/¤…úN·Ä\÷)—=ò9—dÂ!H˜Yv>WpÖ/¬9yƒrôµ³Øëçq7.ào\Àœûsº sùcjá9úš–T¤%ƒ› ÈTm•“S¡çâ|"|—ï `Ú]g¾ž©©™é™éžîv·CÛ–•)æ„DDÎ9çœ3‘H€ 0g‚Ì9çD*Úrêž®ï«úªvk«¶v·¶v÷ØR¶eZ–mY’m‰o=uê½ç€€^ýðœ{qoÛWl‹+úHmUÉ–hoSU`W«ËA§Þ 0ÈØš†:)åW³ë]²ž‹*fRˆtBÀ’q2>%@ÌXmµ‚ñÿT¤ÞÄêpð{¹9VNGÔÇèÔ¯Õ:×뀵4V.WëA'FËåý>I›çãúlŒ¥ø Zõ IÿI›ñ³vóuZþ{·íÓ6Ó¬·äß¼HÌ»&@f«ñÀoêIct{ØHà—%À{†DX€Ñ2t‚!0ÁF‡›©P@["óEãÆÆÆ¯~õ«¬¬¬ÇKruu”Û——÷Q*•ÿüÏÿ|òî¿{,t:Ýã›gÐü™ÇuÎNõ|]÷ˆ•…_»ŠûUö£õöBUÛ›9º§?3Ì÷é;Ô}ÄΕ<î<ÅižD±ïö;y_--þé&ó…¾o_Þ¢:•§I^èßú¶:Ý?¾¶Ï—«:O¬¾“û,X­Ö“9Àf~ùØ/iOâÔÌ3h>÷øÝÎ3tiPB–SH‘B¨r8K]Ìѕ͋‘¹ ô„’‘¸Q@U$ÏpÜê¡t9x`F1•ÉlîloîjgRp"ͬ–xmÚ€3ÅͨßvÌM_K<ÐÙQ[Þ ÐÙPè Ôs¢¦HJ_lv5„a1[bþÚ°»*`÷Z5ZF(‰Æ«F{êÚëÊ+Œ‚j»´Ñ­Hu84ƒD¡pŸŠEG”GÂ2Ba©QQ«uŒf+p³¯T<–)&+T3QÍbL·\ X ¬¥~!¦¸œ«Ls<¤ôK{<¢+×#ÀöÚ˜K!ÉAM š·+ÿš°ü%aY îÖ©ïÕ«7#’•r!–!-ÉÕ Uø-±ÈL…Yép;àèb¥ZÊAy¹(7é` ,4˜‰Õ‹Àd :‡Iÿ1âæ §ôËúGxÍg‹›¬ò§OøÍ9©ÚS ùÝ߫ӹï!k¾ïÚ,ê;.“~SÔõt›ùN¾ò¹¿QçÐwBóEÇ+P§gE·Ÿ:øŽùÝU!µ|€//~³$)¢Ê`Lu1[WÌÕ#ØZ8Kc¨ t%„¦‚Ò`ÎTChò<lNÓ lfê.™Ç·ý0ðp¹ˆ,<‹ Ï⤔Ú)k Ïb@nR ÓHù7<ølnb<ƒæ³E'u÷çs¨ïõ+þoBÄ7¡ykxA{ûmÐL9ÁùëðyAóˆtA[y%ß´˜o\È7.æh&¥]oÓ2ôL3 ÍÎ*ag—p²1œ ÷D =Yh lYe´¥»«wdhtnfzeiq{ceo{ýÖ ¡“ñR>[!âjeBƒRlÑÊí¥Ó¨r[´¥VÏn8–þD^ÈcÑ:M*Y«NnÑÊ@kÓËc5j¤í ‘dGíÔ`ûÒdÏæü ÐÆüàÜh×X²¥µ.L*.$" tf«ZoËU,žK¤ŒÕ{ĸ"õñål\Œ“óЉA¹\A‰¨i•F•–ZÀÇ"5ô -¤ ¤$Ÿ˜Z`Q1ið,/U)#4j)>¢ßÆ÷pWC’Ý*ùQ­úÃ&ýÃæÔݾ>i1€ü~ƒö°&M&4ƒºI‡Ü¤¥D/Jåô.Ó.í˜L :ã¹ÄQî•S:ƒæëÍŸUd [NÞ\ó£$Kr‰òä þüæÌÓŸö}TÍ‹Ûç}þÏ«T§¯s¹]cVg)†Š»çÔsóÞ…{ï9vru3²îOÒaä›jF1Ð3ÉÈB1Ozn"hiP¢Îb©ïhkëíéŸZYœßX[ÜÞ\ÙÛAŠˆX´€M—ðX€›* _#êb£JbÖ*•Ó¤vÕ£ê‘ *`¥VnRKõJ1à¬I-¹Y#U9:•$.moˆv5Œ÷·Î ''z–&{Ç’­ý‰ºh™K§iŒ–FÎ’úÀXrÏ€¾£Cj‘\t¾”Ü4±Ð ÓÎÃzãé“@@R èt ñN´ WQàT®™m¥Ã}<´•ä!;M´Ak!(Z¯îÅ”wê4wëµ÷Žu»Vs«:u·/@Õ-‰RøH*H#?&bÞ ]qºz]\x‘uñ¬Ï ù¡ Àôý~ÛðÜwé:=ú ÐüÎø¡Ð|»¨ìgøyAó——HåYÊÑcbîC\· îCXé¸ïÔstæé2¤ý¢ö»¢¶»Â¶;ü¦^Ã.³j™šA› ÍÓªêALŒFk[[[zºûÆF‡g¦Çæç¦V–f×W¶6–v¶Jp™ÀePO*æ2%|¶\ÈUŠy€¡Z¹H¯”>˜éä"µT óS„• 42N8+’òY,*‘ä9­úhYiSMEk]4Ñën­9Ø´è•t ÁZtiœ_¸¡@Ü3”|nÅýÍŽÿ‹GfnŠpEªãkø˜(=¥££´t$HÌì+c9 ª2²Ð'€˜tD6šI-L“ã t$ˆ“•4iH=fÆÉLVÃÒ*ÅnL¹[õèÆ%ÙR¹xÜÃkÑ’?ë÷}šô¶Ùé‘—1ÙWq9×$E×…W9¹—™Ù—èω˜ î];¥3h¾òq¡¢Äoý²öùä\ 'c.OýÞ䣟ÏüþúÏq½÷¨Ó×¶Ünp›óM«EŽ1!îCÀJ¨'Mˆë°Ð¶ ™­ž4ò›y {œÚMV|]¤–O£L-ú¦)el@(—û#‘Xccc¢£{xp`rps|qþ˜›kskh ˜M’Òèâ³èBCÌcI…ˆ(  ™#p@ œ)èèTKù çÐÉD ŠDÀ4 ·Íò»"AOUدðÇ+ñH 2ä•K0Ha1cVYW îèÑ™0ŸX°ŸZ°„›4xö‰ßTRZ±šZ r%¡ ÃU ôPªãQÓ:™(*3é%}R."KŒÎSãò%Ð#<–`TNJa“ Ëê+µÛ¹bl:ó ¹ MPœi¥ACÂ’ÅÉ}Lvö¨›è9Qšȇœœ^+³AMx=êp´Ú·-3QM«‡¼úæúû@5fXIy¾ŸéCDÚ)AóuˆÇ¡ùÇôg¹Ý›y_û ¼ ã“…ÅoÐüNh>g;À¨x¶¾]è| Ÿ×+P§¯i¡¡7¸m9š™\Ý|žq9ß´V`Ý*´íÚvIsusYʱ éÀUZŒY¤†çÈÁI¢oï(±uÂ5µìêõo§fƒS³Éˆ.<Éá™™¡c1)$̦QR:ÐÇ0ÊcÒŽš²¢BÀ±%¸$0­#«ët*•ÍdpÙl‡-àr%BØP*•F!ïר炢FrV+oŒ_´ ­Ê;*ä–²$sbè0·€X”É@ä °E|̉ OÄ*y$0 0Ê(Υ² …ÍNžÞft8…øÜëäük:b¡ƒ?¾$; ³QCi3ÐN.ÉÞma¶RW”­Vìt˜T¸\c\ˆé§"šn(¢¦ö”JÚ‚:#«RCH‰gÅxÍŸa\Bª¾ÿä ¤ŽÇ7/bïæŸ¶ºÈÝo¾hh>1N]ð}ôŽä¾‘.þ¶‡¿7žÕéë Í·r„ç¶ëœ–,Åx¶j*G;—«_Ì3­æ›7=s´³Yʉ Iº°ë³î÷—Ñ€˜ïÞ=ˆ¶$ºDNí·n›W¿ËkØã7š…-·EmwÅí÷$‰%ñès%–öäÄDÿÄ…€cQÉ€›Ç¢°¿E,Ú O©)ûɤÑH“²™èâᕵÁ¥•F-™B"QÉd…XI§ÑhT*…L.A¡47*Qlz3%»›‘7Ä-œ@:ç%°Y fa‚ž«È9O,Ê`¡ò9è‚§ •Oƒg“ ™í~µžV›¬¼V;pyIŽÉÓ“Š\¬âb¢R|µ‚X«"Õ«Éõ*r\NˆJp°µøæ…‰ Íh¹²ß/«7s¼bB§KÔbãÅõÌ µË/[òýÜÙRö”›5æ`üÈõ3LÆ)Aó,ž×ieÏ šW9³ß MRÝ)³ùl»ýÛó¨g$fŽë4 4suK™²çs—ŸW N_Ã’ùSë]ˆæ2¥2MЕ.êÍeÊDzÕÓ9ÚùlÍ,ø·qSœ¼Ám¿Æj¼D,ÿÓM:Î=ˆqô!MíEœèæÔ~ËÆ}Çcb‰ZïˆÛï‹;bJ»‚ôS˧PÆæÎÁ¡Žþöd?“JbRÉÇ"å+1(©iT"žŒÇR6•œ_Ꙟ뜘®QûœÅGÀap(z¯Ñp¿Éx§Q«V»^©‹JB%éU¸ŒFrv-·—•-ÕõÔùW†î,õÞ_íßœh­+³Ðà9§…È¡Âs(0ÀÊ,`Hñ…€˜:F™Œd ×Ùõfn³ßî² 7%%¹jB¡‘µÒà€ž>.º”ƒ‰“Yì` lt¸ _ -Ém± ÀCš¬üF Ï/%éèÅîPD»Õá)ãÂç}ÜÛqùgÍÚ¿µþÚªÿ¼Y÷i“ö5/Æ3hþ˜øsßwÁÿìiX̵=ó>œ"æEbä›ÐüÚŠè¹\Þ3$϶WEžOõüþšø§ú˜Î ù‹„æMæÛyÒ ØÀ5VÓuNk¿3]Ø›!è̓ü/qÙp…VýÚõ‡«ø[O±¡ ¦ªÅ:ºyõ{¼†.ùM·NˆùÈfb&>”v>”v},j»†85›xw©olìênHtÕµ'€yü>ÄæØL|Êf";'fÚG&xˆŒ*9¾×Æžˆ—ò¸z·ZsP«¸Éf•j¾\R«":`×¼Å7˜›1|FKÔ (y¸Ð}{±÷ÎrßýÕäÝå¾Û‹=·æ»OD(ÊˆÄæ§£sÓP97R—r Z¬¼z;¬¤x„8!&?®cÖØ ÇÜ$å]_áGŽÉWá d@§ùøÊxÇW‘-Tà U‘7/–+h!eJ^1IKG29µVþh¥ÞLÊï1RV‚‚»5Ê4šÿ½Ãx‚ÎͰè™?Öÿ"fŸÒ4_ÕøýÕ'ÜtòßÞù¾71ò­gÈ ƒ?ø\Üw‹¿õâ 4÷S?9ñÛœkôØ“yZ`y^Ðüc†øçÍW N_Ï¢{+Wò>Âv‘Xq‰\u…Vs•^ÝzÜe È/Sã`è®ìÏEêß~…*k DÁb]=É7ʬZá7Þ4 šS¬¶Þ¸ˆ’{LY÷§ ¶ÜV”]½™:í¶|cMÀUqo¸Ò]^a÷ÑňDžBÀ‘pX_Ü1Xç¬œï ­%+Vû*—{£s‰PMW²ª½K„ÊñóKjÕä³ÏÎèöFK…c^á°‡zZ t;ÎL{ŸŸñAO}p´£r.Y·:Ò¼;Ó¹?wÂÍÞÛK½š£[“íÃm‘‚UÓO®’ŠV¡¢•+(^1q±RyÐdÚ®ÓoÖêbjR\Ïj¶°bZ|Î5JA¥0 Г OQòäú?´¢tjaº`!|LSÈ-)¤!rÂJšSÒâ–‰yíZÒ ¾ìF¥GqŃ:õ‰îÕªªdÏ ÍÿAÏ;¥3h¾VNóGóÏ©Cïäý7—ÅIýí9Øéµ¬lûcßÏÕÊïX>µoþh¾¸¸D1p£dh6–:BJCäÒ๠Ùn¶!soXø¯\…Í©—4«‰Ãv欗·\&ÜÊv¢Òˆt«B²t(¯m1žAó%Có1hœ@ó 3×õu'(}’üj‰ø<Æû„5dTåÏç ?ƒæ4¿ð›Ò·óUoç«ß)Ðüb }§Pûv®üÍlÉ›Y‚7nÐ.£äé$]‘$Œ¶thRʦÑevõ§v‡[·w‚N~Ó—è¼Ð Úc›y °•[œMAÓ3ˆuô¢L­M%×ǨY›¼üCqÑ})ô®r[\Ô\noìÖN6ÝŸk{¸”ølµûó5 ž¿¬÷|¼”Ø®n/ï‰9Ä%¹fÜÆ,.啸9h ¿cc+ñ…½åÚbHžM#ª 9zêËF;ª¦{kWGZ¶&;¶§'Úœh_m]né¨LÔøÇ<\«ÄÈB7èÎx™t±Rµßdº×aÿ¸Ûõ—dé_“¥ÿ5àýk) ç‡Žû ûÝvÛ6ÛtX¾×b;jwÞjs†.Äu3e¢…$á•ÎÖšúwûËn'; ÏP…†ÊÓ±1Õ™ébÀÂt«–”´0Ɯ셀pÎÇŸ.åM¸9Cvf­÷lŸæÿäžÒ4_ÙÊÍ;ý ˆ÷þgYu¼™úeb'u¢Î›™ì/ûÏ•„¿ÏÃé±Í'ö_ã.þø×ø}îqùV®òå¼áÏš¯@¾Î¥÷f–8ÅÇc½•#{ë—Êàÿ1óÆ ú¥b PÝ UÄPÆV@=r`8GVl=ÅÍšmÀMný>/ÅÍÃ7[î [ï 1›Á˜À¬Z¥ÿÆŸ‚fx’vl€æ7oGPp(*º#ø Âþ7`âÆ`õîHÝÑTó½¹¶:>ZL<ZêùÝ™ÖÕdl¤ÑÇ‚e2ª‰¦%C7»ƒÛ½å{ÉÐ~2 r4£Î!Á¡ &%¿Êoiû[£]ÕsÉúÅÁ¦ÅÁÆÍ4ÌôÕMv×ô6†+\÷› K!‰ŠRÜíäÄË1Ív½á°ÅÈø°ÛõyŸ(…ÎþÒ¿ xAòi¯ÀÐs·Á¸ZkÚl°¬×›‡Ky[qÕA¶'¨˜Œ÷»}ŸŒF>nÞ(¿Õã2JqHË 2 Ä—âÚu”nmÀƲ³’VF¯™Þ¡§øØˆ×¶Ï ùlÐü3Ä–­Ú蟡OCjIè/¡iêÝ}Úê%JuSþÍþÿ¼Ìÿšg,~Q xiÐ|ŽqÍW ÞHc½‘Æ>nY¸AÿýUÒE˜èLx“lÈa»‹¤‘b]c‰µ“衖ϳɬZ;A'ûkè<â7ßö“S·Ë®ÞsRFÍÔâÝ;€fK#úz/ñæ4#g™“·ÁËßâT¹Õ•ö‘FÿBwt%Û®;o<œlô<šjº5Ñ´3R·1P &”™%,x‘Ý5-µùn FnW>¯~0?Šîô…Ü2: S¬sʺº³5æKÔûšÂ€ž ôt×—7E=a·áA³ávƒ. ÆûÅóQÕjµv«ÎpÐl¾Ýfý°ÓùI€ò³^Ïç)tzÿ«ßûi¯øP0-錔+»mÌÉ€ð ^ÛÖÌÔZV[œ‡½†+><©øp( Zõíb ³(uY!5.ßÍD¸È]%ÁVËð@ )e#8Ðôgûÿ1ì”Πùš€æSF/R:ž2ú2u’êuvÃ×}kð$É5ÝûNhæ™6¾ mê?\§|ƒûáŸÃ[w‘2ô’ÿâ+P§gGo³üíÒšIMÛ*½ñBx åž:áhf3…âBS2µã=Cäà­b‘]fT®2cë¬ø&à&§v7Å͆[)bÖbn¥ˆ]¦†çÁ|’üšÝHCKqµ ›6DÉœbäÌ0sf™9vykØ:PçnÏwE×ú«·†ëvFêwGN6×úã‹=•­e1·ºwóȧfŽÖØ7»ËîÅ?š¬ù|®áÓ™ú»£±ƒÈHÜŠCÁd<†Ç¤ {Œñ ½.ìj©òvÔHÔL›¢¥ñ ­Ô¬¼×hØ«V—KñÃ~ÉtXœæF­~¿ÉtÔj}pSy¢ct×YúYŸçãn÷6˜6[¡4R‹’NÎl¹Ä*Àu€Í4-5ÚÓ¼;Pþ …˰œFA¾ßí×sp–Q”ƃgê…vÌB¸˜p«0ÔÅ€kðù¯s1žAó§ŠLÙØ‘—¿‘&¾Æ|Êÿ”%ýÎ'ÿS–ü›Ð|<ξ1uêe¾ðËÌÙ3hžAóû‡ªeÉгký0¥‘6 á{€žäØm´g&G=šNÒg1ìÂr˜ªilŹˆ¾qJÙ 54O /Ð#£s‡S·ZfltÒ*–À@L¢w ëìÃØºáêZ{Þ…âjcIZþfá&’ã3ˆëÆî˜k¸10ÞZ>×]î­ôÅSJÆ—ûâ‹Ý•3ã-å½qw•KÕµv+f÷FŒsÍ¥[½¡ýèݱ껣ñ;#±£áªñ:‡CFeRð…Ъ•–ZÔ».ì1Ul@±€`4tD}VÐ †4Înµz¹BQzÝÀM`6WâÚízã~“pøÍºRzØíú¨Ë6ͼÕb]­ÖM…ä&:lÄË_¬yåÔF§h´Ê0[gÝhsïwŽúÊî„€@²Óé[ku·z¤|‚‹ƒ“󮳡7•Ø<):WPœÅGe’þ˜OóS"Oé šgñ}â´ëÛ†ìÃ÷~Mø#¡ù}âÝâÆ—özwå«Wtž4ð’ßíW N_ÛJa»”͈ž=ëð=ÇøC÷Ôç@ΉOŒ}²º™ïÔГFÔeÒíù‚2˜ªihÅØûðîAÀM@ï¡3ºÊ¬ZgÆ6SÄŒžsŽ\6fbâ\ý[Ú’€È«Tï;ó/–A¯Ä×ëÐ7YN ¿Ú«ëˆ8’5Þ¡†Àd[x¶3:÷…f;#SíáÑæ²Áz0¤ef)‹P\i·4ãuÎÅ6ÿZgÙvox«7¼ÑZI'ê)•„EIx •˜kR‰mZ™Û¤òÛu»>èІr—ÑgÓyÌj@U“¼QH°y•*rÂÎM– «Ôë5zÀ̓fËí6Ûvû½ çý„ãn‡l¶X÷›,Ë1íD¹<ª$MøE°¬«v±ÆÊïkǪŒ Ž­/àæ^··Ë¿ð®´¸æêmN1]DCÒQEäü뀒X3õ«ÏtzQ:½0í5/Æ3hþTñÇô'üЩж  ùòwæ7çY/íoýö"ã%¿º3hþB£mD‡4u];¦þ#ëÐ}€KÇØCÛðSß¡®s‡înÉW¶\EK3h¶<~ª¨†kÆök7Î5ˆ÷Œ¼cDÿ)è9K)ô\¤†FAN)ŸýÇÄÆ:’%¶”©£Xßë%W”öžüæûšÌs–Ü ÐÜ €0Ëj}ÆÖ°­³Ê5Pïi*”<ÑpcôôT{:¢Ž˜GkWñÈB«„µˆ{*ÌCqûXk²Á3Qï­q&£–ŸÚ!£ýe8È Ø4’M—òX*1O¯•b“JbVK­Z€©^!qhã>ᛯ F”äF#ps$Z¤]¬Ô¬Äu[uÆÝF3°œ·š-ÀZŒî5™·ëM›u†…JõhPÚfå ¸xØÂ ‹€1p[<²ž2õh•i¶Þ¾ÔäZlr.4:çêíãqó`D_c¹Ø’Â, •¨ì N»W£nÔ‘žËgú¿°§tͳxæø3Ä{â4²(lx#]q‘2|² ³Œ=Ç'3Çqªç sñå¼®W N_ÏŠ@«Ê4‹šö }÷ž)yh¸kî¿m<&&€)7”„‹ ì›TkÇW I«`êúb] ÚÒ,'ÖÑs =¢§Ðsšè'”ŽJGð¥£8÷Æ‘D[º1Ú&¨²:‡íù ŸÂºúûê;œk–¤¿'MŸOÅÙ”¼ E^éÒÖøŒ-![[ÄÑu&*]•®Ž¨³µÂÞXf‰—ê}F‰ŠOuÖtˆi%9³Ê.kök!cG¹¡-¨oôªcvYPÏçàá“> C#âXT—AqKÂcÊøl¹€­r¤<&AÁ£‘í&&©0ME‚øÅø¸†ÖbaxÅ#éTH1Q-Çtk5†ZÃfh+ÅJãzðt©J;Q ù%ÍfVŽõÿì¶±ul¬CL‰x Ni¯J†õÕ¦‘JÓpÔ81ô”iÚ¼Š¨‘§f §ƒ¢­¸êÓNëç]¶‡íæ{ÍÆ»Í†…°ô¬Ï ùsˆ?¤‰_žý.§Æ{*y[ŸË.½qÓðøæï¯‰~¹oï4¡A0Wó*†$5ÓŠÆ%uÛº6±mè9ôÄTµ¬Jkg¹¡~”"€“ʦ’ˆt•œ‘ÈEéj2Ô#ÀV©©&V[Øïe“!Å\T½ÓtJ®TëW«õ ]Šéæ+5©Sa% l“‰åâ¡›t%­fbÜ2ZHÇ©¶ŠšÝòŸªÃ¯m»W H·íbò¸Oˆy«^÷°Ýòy—ý¯ÝöOÖ;,`óNóºýÐÿa#žÒ4Ïâ;ãaú$y¯¸ö›£ßÓižÃ|u‚î ÑÎ ÚÕ/Íæï¾q˜õßÞúÁ‹œç =ßòEêsûæ+P§¯a™ä3õX]%ÅÙÌ ôð##’šYý‚¢yUÙ¼&kXŧø‘a’µ³Â}w¯–(73éÎl¶7_*”TB•um3@'Ò˜@™»J¬½%6ÀÇ^#dh*6´#t-`~¨"‡ëK'êßN+~Ðå:j³-ŵfæ½±j,¢HÌ$© “ŒkW ¼©Ï(ó›ä³"hQ€Ü£—85"ˆ)¤ã&×àÁBs9¤ŠC´ËY6Ó*eÚ¤LŸ,gâé%ÐÿaÂµ×æØi±¯Ö›:‰ØMÀ ˆXô±JìL$‘ ×’ Ø¼ë2|¡ƒÉI5:F‹•Ûaç÷zD>Éh™|2¤œ +§Âªé ÕLD Ú‰r4(HûKÅ­VNXN¢Ã2*$ÎÁÁd4´GpH¨~+ f—iØåZN™–ã”POé¨üÉ€hµR±[£¹ßb ü¸ÃúY§ Ðó^‹i·Vû‚Šñïþîïþüç??>ùï¾&3u0+77ä_޾ýöÛ™™™{{{ íûoÿ­§§ç%ã4ÂøíÚã›…¶íçò´ÿyùôÑÒk¼gü•Ç0ÅOõæ¼qSõ¼žêÛêÚ¯ýëßþö·O^^^þÕ¯~ŠñdóTåçu¾ýÒÒÒüüügžAóGF&AZ,óãô1²½‰éëæGF…U“âêQlJ›ä†‡XÞu(‡¢„yo_BˆnàõédKÝ™ÃñçnJcPU=LÝ€˜B§©ó—]+\ÓôHêFر ªº"i0ª™ Çu¬êN‡ã¨Ý~Ðj]©Öu¹ø‡CU·+Ùd¬NTðhZË,çY|›R`W j¡EÁ0ÕKØB†C’Å¢P[Lb¡y|2ZÎ$)Y ÅóIh> …ävÆÝ€˜[Ͷ&ëJ½y*ªét‹y70h«OÁGæÑy |‘ W(@åòŠsà—¸¨\#£Ø/&DUÔ=³ÁÄn³ñ:‚>xÀ'òˆ²‘  °䦩].A³…S©¦ºù7áè¨Bf „‹‡‹ÈHkàͲUD±‹)&>ÑÈ#ÈièfmÐÍ[¬oÆU‡ zÀÍÛ,µ[@ 6×cªóÌëÿUJ;¥¯-”}š_Æäää—=I h×××OzþéŸþéñÑ3h¾&ñVŽü=ó3Có‰ñûë/v©öÜs>½öÛêôËßQ¿œüÿø'Åèv»OMQ]]‹Åàpø7‡^\;žÅx. •Ï0ÀÅ^”2„7ÖÒ½Ý _Í“ ºÚæ:´º¢mÓ îƒòé×0ªë8Ý ‚1ƒêÈb–æòÊòE`9‹dÕE-LàØU5@ä5EÒx¡´ªPò…¤±qÌϤ;ÒúËÅ"OßÒ|•v"¬ì÷‰›­ ÚîW0 ¦˜EÄð¨x ‹,aSdªœK›"&I@#à‘P‰Wˆc`è&JÊ&ÕL%E¹$$„І‘Q2²”¬™LDëËÌëÖ•:óbq6®«PV™6º·‡+÷ûÃ;}å;½åóÍîz—„Zt“R˜¾ßã'¦+IP;·$ !†ä䈒×2j ÌF§ÕÊk·ó;Â. —äÀŠ6Y5zFPJþÔÂBé)0áâ¢1…™€›,Œ‹ƒŸHDB IH1)$a9•rB»™1îÍ…¤kU*`-o5èêõ»µºÍ¸z>,£/šøÃ¾Yb¥¥¥'É¿üË¿¼è<ƒæóŠßœ{Æ3NYžÖ— Í ¤‰gç\•ɯyùïíUÎÂK€æÛo¿}ªÖÀÚ™™™SÅøx%ŽŒŒ\¾|äÿþïÿN£ÑΠù‚"/+â: |R"Xæzœ¡«‹a´Up‰¯cË$È‹ì[×Þ»YÄ+(ùUŒúV›F4ݤØ3žN —Wž/¬(Wƒ2 øz€=V8_m.¿<›UšN2]+Q^€°ƒ£;¦Æá'¿ÞÄòŠp5É ýb³/"¡4ŠIİHX6Ç¥à8dؤãK¨XäÌpG& Ÿ^ˆ–šÜJ Ϩ[×ó$듉ʅ¾šñöÈHk¸·Î_éÑñ¨˜‰¨àr8¤ì­Ð/µyïÇ?©ûh²æþXÐèh¨²+¤Ýëñ£²¯JpE&&Ê#ÀyE¿8…Î %µJCƳÎÀj4sš-Ü&3䀧À‚ V6øSBAš_¨&Au˜…QŒÊÏÜdca'ba @ !!òT„‚r1¶ÅHïwñÆ|€›²•JåzL½S¯Vª+“q›éÙ¡ù‡¸§ôthîíí}Y§ß,±þþþ/ë”Ífÿë¿þë4æñvá¾ü,ÕR•E8}©ö72Ôʱ|sr¾i)[5ñÓ¾Æ Í+ì¥ùÏÇŸïKø¶:ý²B¿ ;PŒŽß=9²³³3??ÿ›ßüôLMMýú׿>ƒæ ŠŠ.“¨Î¥!7B„‰¼£ùL àiZxÆ(´®9¶!νKñe¤ì Jq £–3bË 9ëÌfû@³Ø¾,–ôd1=©~–7;µéÉd¸ÓÉÖ«%Š‹0þ{Ù$WÏ¢¹yl ³v´¯ia¼ku¦ou&¹2Ý7?ÞµÖáCà ±Å £hhaqQ~qQÞ‡·7§öׯ·—F:£l¡ŠŠ°ª…!‡¶:`iޏ:bÞÖ¨{ºÙs0TåÒ‰‹‹rqƒG>Zm[n÷í÷Wh>œªýdºî³Ùú¿Ì7~>×ðÙl@çFWÙn·ÿ 7ÀCç©È03 ma—Ø8ëâ§’Êeä°‚r¢ ”:]|, ¬šW“aø¼lD¶'Áˆ±*TC†•faв1…Y2\! ž%£ E¸•íá¡£rb£žž°²Ü‚QŸh" ™*“Ž$Ã^a¯“[© >÷bü6h>e1§¹¹9‘Hì%Y[[;!ìÉJÑ4_“ø÷O߆òBíÏsWY'Ó~[¾ùæ›O,LðÝõ¤OžPøBûî»ïtžšpÍçéé ´ð:’ŸŽ‘œÐ3‹¤ù5ç2„ž¯êÌÕ§¸iߺápój‰úX*Ð^ÇéÒˆfÄ”HÖ4’9dI"[oRl@ Iu×°š P¾»gÙÚ6Uî³õ¶W¯L'·—GîíÍ=Ø_¸³3 €¸µ8<5ÔÞßY˜81ж:;°·:~´5ýà`áþÞüýý…?ºµ´³263’ A2¹%I+æXÕ¢¡Ç|{àh´ú³…–‡³ 9Ž5ûÕÃqël³g¹Ã¿Û¾;{0QýáDM 3õ€˜ŸL× DWÁ»ß B3…ØB% ¦¦ ´Ôb=id¢Cͬ8JÔ#1Q`HE†K )¾ v³£´$û¥è&™Ã)ÎYl-itÇÍ}ºž°–Ï&¦3´â|RÁ # îâ BlXJˆ«(ÍFF›™ÕbbŒÖ¨)>F\’ûÌèÿŸÒ¡yãÆ“$™L>𥥥€•_öÿýßÿ=h¯]»VUUuÍW þ”­ÿíEú»ðÐ7GßCž¶ê{>uë˜çèkK¬äÞ´oofŸ2z‘2ÿ ¼ÿßV§§`wR§'Õ÷Ä:5™L;Çz666Nf–——¿õÖ[gÐ|qqʼcö‚›Ž•¦•ˆ¯ÂÙóI(ßÚ¿ì@Íã–µ"ûöE¸èR±ô*Zuå‘”WPJà:¯ãô×°Z ÀP_ÇnàÀŠÞÀ®ã‡0j@[{bÞÜ<¡‰'[ê*fG»¶—FomLÿøÑáÒÇGË€†·6&'{Çú[:+§†:–§“€¦—÷vçïîÎÝÛ›¿³3:§G:—Ã*ŸNÄpiD ‡¶˜(Û¨¼7Y÷é|óç‹­÷§êo× ÇëK•ÓîÅ6ßvoèöpÕ½±øýñj€NÀÍ'kA¾×Yét”i4’e\t¾W$%@åD˜’ OÑ“V¬£!CUèýR&,#V)É -ãl@ê‹(Æ'.þ8Žo+Æ¿{,À&¨Ç_ýêW55/üXÒ4_f|Û¡Ì4ÙÆ÷yø^æ¼`ó(¸D}ÂÕ Þ…¿ð›lâü /ôùŸR§ÿöoÿöø±KNwªO¡ðÊ•+.\ØÝM݉fuuõþá$É·-%Aó¹}íÌ`é‡Îea€p‘û¸Š»¸Š;Ø0Ðm”” ½0ë4@'à&`åe”â2HžR±ì‘@ŽR\€Š_ôË|êô5¯ \y;Ä<^ì^Ʀpy}@¨zH¨ú8ÕV~è‰ì"œ üê|ãÒ¹|Ƙð a ˆÒc,¦’/u.¾™ç!<¦µŠãªå—6pÝu.›¾±&<ØÝ45ܹ0Ñ·6?´¾0¼¹8 ´67´4•œéª yͱ‘¾–ùñž•™íå±m.Ž€9ó½à±Õ!½ZÂ@æá`9›4³ÍµÖ{#»ƒU‡£5#ÕÛU3­þÎ soÄ8^çœoñ®u–mö„v’À]î÷GA²Õ`¨§ÂØàQÜê Þ o’!™TX³8—ƒÊ”ôä—V‚MJVq.¢ÃsÀäÛýå%½Á#­±­tø‡”£”GÕwGc¦,mÍÇÓµ÷Çâ`óöHÕ­ÈMõÿJ‡fò¹t '•ÇC垬ë‚NB~Úk^ŒgÐ|9к€ÿêf"q#ç'Ù“4A×›Y’''&_òÎüî*—\x è š¿èÈ–4çkúàöy”S~„ Ì{Çèü˜ûÌM¤wfIgGøž˜£s®|âÀÓ·lë˜.@… ‚ Aª… ÎCøç‹xrÎå3óˆb$ߌ‘80R'VæÂ)<&¢:H4ǺšÆúÛ§GºfF»çÆ{gG{ G’mÝmµ‘2w}<”ìlíoŸîZšXšê_œLÈÎŽõ€G v77V‡}.3®0ƒ…¹Õœ¶rc_Ì>Ñä›m .v†æÚ˦šýɘ£Æ­ê(Ó%£–ÑZçl³˜ÊåŽàJ"¸ÚYZ° :§=]!CS<ãQ²üö@èî`øþp6/_(‘CƒçP YdH±(ŒÞ iGýå>5³Ú!¨4¯w"wFcŽ÷ÆbÇëÀÎ;ú|®á¯ M™oC{ýÃqë½/*ë*>/Ë¢A3© ráÍçSŒm†S:ƒæY€x3ýk§ôÜ,yÂ]K~<7߃$~ø2—ð;‰ù¼ý%¼EïÁ»Nˆù>ºé…Có—_§¯m)¥³+så‰Býp±{¥$¸_Rv T~ˆ ÝÆ†ïâ¢RĬ¸ úQÞM„sÑÙ½èÜ Ží…§oGfïFæîy’«ŠH äù"î@)V²ÞÏ¥¿—Cýc9Ë/¤*¡L œ­-”¡–Ke¥M5‘®ÖÚþ®¦á¾¶‘dûØ@Àå`OsO{}cuE©ÃT v¶Ô€  z¤{j¸{b¨s| 1Ü×ÚÛQßÑ/ó9 yƒ– ÍI7Ièq—ª9hHÆœƒ5îáºÒ¡Z7 f[¹)d–´øµ‰rC•u¼Î=ÝX:Óä œkñd²Á=R㨲V;e-w¯'Ìæáܼ7TЉι+¸ è Z’›–"æÀ#b&Ë*­Âö€z¼Î±šì&ÇC•wFnôá$ð˜uŸÎÖÿu¾óÓ™ú;#U;}á¹fO@Ëþd°¬]GDf]ôü¤I·W)ݪŸã4Ÿ›iúö›yùÄ~Í“EÚ§Ä%ÚÓ.iþò‡]²àÛˆù“T×õfÏ ù*@SÑYdE–n¢ü;èÀÐ =SèÄ î£¼[粦:iOÌy’k‘ÐÔà&ÈAßS}ƒ×v•Q{‰~ç&ö]¨öÍ,nG¢1‘hjk«WW„/tYL&-ƒFqÙMå~wMeys]e{SugKmO{C¢¹¦µ!V¯(÷¹tjynNv<l¨®h©¯ºZë€Àœ–úÊêhY¤Ü«QHÔÄ" Ù Ä‹é8«ŒíVóËÍÒJ‡²Ú£©r(#6¹]ÁVqˆ•6iÜ!oòjåÆî s²Ò𬲠TÙz#–Î µÚ!w)˜ &v§Ë¸¹ß¼•,Lœˆ†£Úø˜žОó¨?EÌ[}e!¯Á#O”iGªmKm¾î²ÝdÅÁ`póþxõ 1?›kÉGÇ'¤nõ„fšÜ½†+}9(<Œ+1?kÖÿW›$ê4Ó¥Üóþ=öS:ƒæY|ÿh÷HþÇtÐSæü1C Ú åÑü[çžÇ7¯ ×ÂÓ'4¿Ü|ÕñBÿÜ+P§¯gœGjoÐC9²ŽBÝ0`"µZìÙHÑÓ·öï>¢gpYºp-ÓŒeªª^KÛ´»wÅ7´]>qx¬[¾Á-WïŠ<’¸Æj¸L‰^ÀùÏ!mÝ=­ý_j`°kp¨{x¸gd¤·P+åfƒÖ벇žH¹¯2ˆG}`Óë²éµJ2‘`2hK¶@©³Üïª*‚±HHmÝv‹N£ ¸Só#­³CÍdTDÃÉXD1¯à "†AÌÐ é*FË%yÕ\¯†WnUZ=uU£WÓäÓÖ¸”U6Y¹Qh“Ò |òZ»g3áÝîô-6Ù÷{ü‡}íÎÒµ6×R³}¥Å1X¡9&fXQ@̃Þ`PÇ©uÉÚêÁ˜e¾¥t¹Ý¿Ñ]¾Ý>ˆ WJ~8Y ,ç½±øí‘Ø­ÁʽþÈFWùTƒ»¿ÒÜc¢.—‰ö«äê5uŸ6뎪UaÉ4Ï ùBó„›^éÓ¡ùýã?Î1^™÷ç2cò·žÃË9ƒæ/4>@¨®SƒÙ’¶í Ì6³/ÀOÐé^èDz·P¾Ðb‚Qª>¨ˆv›Z&]=+¥ý¾¡ïàHœÝKÖöi¨ /·_"†>(q×ÕUŽ%¿¦ÑäØXr|b`brprjHÀãÉ¥€E‡ÕìqÚJ]vŸÛá²[V“^£ò¹b!_)—‚ 6³ÌIMð8ÀL§Íl·1Á ½0Ú¶9×»½Üšë%£a"šC*9iù,HÐ\)k•2€r@g@/™ÄI…YRf‚0ÀªdáWZÝõá\½ó 7p” Þ v§Ë» h·o¶Îú1Ëö{‚^5«Æ)kõ«gš<ó­ÞÕDp3å7¹ ,çÑøáPØÜMwZë,›¬w%£&·‚1áæ®…$1ÅÝZõ½:ÍõvD6ïü¨bòžÒ4Ïâ{†ªy‰‰.<áæs„æ@sò5y«_:}=kä}ˆô*©4SØ”¯î/2Ž™&¡–¨ÐsîXB8W®5¸}bš,4Œ’4>Q EYÙ«®ÐÕ˜Z¦M“Ʀ }ý¨*–äyj¡tÙy¬oh¸wn~üI››ÉÂ⦤„J¡™D¢IU ¹J!“IÄR±ˆÉ`€Q•ÂåpÄB!`«R.Óª•Zµ $±H(às9lƒ±<‘è ©×F>ÚŸùôhþ³£…‡³X¡Úq7·ÓH%ç]eãJAÅ&j¸d½€jÑ BH4<²šKRsHRNLÅØD„¸…7Ym¸<>¬<ê/»?þh4òéD%hŽE?¯|0\13ì÷÷z‚ &Æ)£W;¤Í>UoÄ4Zã˜lp/´ú–;€›€;}”»ÉÈv_Åfê4Ýr0´Øæ¯s‚ùµN›ðp—‚¢°t³B:ë ÚX¯y1žAóùÆ[áT±IÞ+xÂDçèuëÀå©þ§¬Ð¾8h¾ä8‡mI—Ýúþó šgÐ|7ŸïÌà×ç)û ´Ãº‘"C ó1:m @ótn8_ÄÊ,{ŒïmZ$åʪ¤²ªOYÙ§ˆöŠƒm}Y6†ÕÖÞ¸¼2³²:û ͬ¬¤t2º¶6·¶>O¥P™ &›Åæ°96ä :…D‘‹ é%P€‚!>—' %"ŸÇc³X ŸB& „É:ëDe¦ÁžŒèÚýЇsv§ooŒ¬ŽÌ¶w5U„…èù® "¤`DT¬”ŽKÝ …MR°)VÒ°`ˆGBqÈ =»+ \nqh&Ë1o”ßNAó³Éª¿ÍV6ÄÕ&@ÌÝ†²Š©U6I½[ÑQ¦ë¯²ŒTÛ§ßLqs%\ë*_ÿB«‰²¥öÀ|‹o¶¹t¬ÖÙSa´µˆÈ]FÚˆ“3íåM•òAž0ÐÄÈÌg/ÆÉð)Aó,Nâ›ÐW_§•³™-MäÈ»óTýùš¡Ýh¡a¢È æ8ØÌ•wgKÚ!t%NQJÔÈÚ2ª±‚í¨á¸ë¹Ç¢Â0¦º³«ufvì‹«kókë ›‹›[KÛ;+»{«;»_èÙÛ_ß?Ø€@`P( R]\šïîi‹Å+ÌÁ*¶\W.Åaq8žD"S)4ˆ)ÁLÖÙ¶º;½AÐnvù·»ûÉò£ÁðZ‡wºÁ~°2¼³8°:Õl5Æüs‰ðz¼ {cŒ‘}WûH…8’A·EE낾˜ŽSÐÐáJ£[J®³ {ÊÔ‹MÎÍ„w·Û|ölPÌOÆ+ŽU~89L–VÎÔY#öfÂÇ'"t<¢_ËZÄ ¥ªD¹¡'bŠÛÇê\ÓM¥3Ç'èJ†Î·úA:'êÝ€˜ÃÕö®!n—¸˜ˆ°Ó "5ªÉuJb­‚PÆGy¨×¼Ï ùò‘¼ˆ§ýÓÿÌ}h^¤Œýò–gÏ ù …f6ûÝñe¼;»É«Ï4e‰Û³¥¹Ê¾tæ«s½Yâ¶ Ac6†[Ì3!”Њ‘:‰š ÅPA1„ɺ²‰#Í:^˜øš)/ù84÷ö×"oÝÚ<<Ú><Ú::Ú>º½sëpŒ®o,hÎλZêuFCžºXY[cew{Mq1 …*A Šû*t+í¥›)P†îŽDï GnEŒW=œŒ>[÷áxl=áÛœK.Mt uÖ¶Ö”Í&Âõ˜3ìÜ1äþ±ñ‰¦øs-Ðs™—ËÍè ë#—”\kv—©fêm+­nÀÍƒÞ àæƒ‘ÐýáG'ÍîõÀÐl½­ÊÌ]mó°°Pë”3ƒ:~Ü!köi:Êô½ó@•m´Ö5^çžhðLkª1¥ñ:×HµPµ¿ÒÚÔ´\=±ÈB…ÙéðR6ÒÃ*¶Ñ`@,hú*ÆùêS:ƒæká"‰úüçŸ÷ %_whþòëôµ­5Íspí‚÷5tVqƒY•Æ®¾ÉkȵfI:@A’Ωý×(eÙX~QT@–ÃÙúb¾É·@YÚ\‚¨/™ëà[ZžY^yÍõ4·¶—­e š)hnÝÙ¹sw÷î½} ch®Cszvn|l|À·¦¶ªÔëúÿÙ»ïØFÓ;Oð†1Æ`vÆ3Û3öt°;·;¹«+J¥)‰bÎ9çœsÎ”Ä ’’(‰•sΪ\ÕÕÙa<;»{Àâ€Åa{{8p¸ÃÎþw?’Õê²Ú¡»«Êî®âƒ/^<|ùŠ¢ÄzúÓß—™M†Æ†û§ÆÓËsy*Õ17Ò¦íŒå`Ø~uÜ}w&ðñbä7ëýÿ~cà׫}0в-öiW§³s㙸{ÒDÎ÷¾³I©9b^4?6$húXØü>¿ væì‚§ÜÔ2‘ mÈΟ )Vûu›)C¹oÚ¯9!×FK'c‡m{ófÒ0R€° JgOÓ%²EBAj98—œÑsûL‚´]’uÉF}ªBP3ÒNV.e< öÈ3N)ãS1• ¡þ »í³õ<£å<½å<«í<¦ö­êb¬¢ù ϵÅþüÿóù+Ö´?ã¹TÑüæŽg/2ž«¼Ð,{¹]ûr§þÕ.óÏz¬¯¡\o`ý%@ 0”¦s =bòÅùsu¼·[ð?oÆí œCÐÎ#è±x(=8P˜™›/|§ÐÜ?ø Í«×÷Í7¡`Þ¾sRnš‡e47*hÎÍšc£c¹X<¨Ö(抹•ùÑÝõi5U—ÐÌZ¡i^s½;øh!óË1˜¼;¼9é+£©0qrjü²‹¥¹ôRªëçsøó[Ôš«¬ú[܆;ÜÆ›œ†+¬:@JhÆÊG7_PѺý JÂÈóˆçªå¸v=¡ßH Nîe-»ƒæí´i+e„KqmÁ+0²µÌžöËçp \§”Úkœ2ºGÁ j9QÀ"JÛ¥)»$e“$mb˜ÀÅ~³0¢ç…u\¯’¡ac7Í„¶Ztí[èÚŸCç^{(èÿ¹›:•*šOÚx¹wþwŸ_ÁÎ=QÑc°NŸØõõÌyÊOk9Ï7ˆ^h’¾Ð${±UõR›æåNëÝÖŸõØt‘ed9º~«oûnxõ†«¸­KOýÓ9äõË=f«ÑãuôõG2ÙädqtaqêÍíÝÕûÐ<:Þ94ËObž y³,&ì¹ÍywjzÐÌ §mvóêÂØÖj‘‡ksJˆÅryÀ°9h9q\)£ùÞlðƒùð‡ó‘»3%1¡~î ÙÍŒ]P0R""]ÍË‘¶7‹˜sKÄ‹»´Ú#fäQ·C«]!]êïx+iâö6—:"BDMÏØø“~ÙLH9Q/Æ4Ð:×Èj¿~¥ObΆUPNûõ,»·£Z/3ÐíBR–ƒ7—ÿ´ü'-Œ€†ÖñB:nHË%ÁJˆ_͆«< †‘O‘»¯<'Éê(ÕÅXEóq?üÙµíó©'êwREóüïùî3è?©áCQ©€šÏïHƸ©™ÂÒÊìúïBóàÐ܆²y‚æÍ[G7n]»qpõúþñ•ÝÃãí2šË+kós e4LJ††ÓýQ^}eo‰owIIyt6ª7w²ÖÃ’›nàæÆ¤r}Â{4ê17ÒæÅ~}Æ.œ¶Ò×}<ÅÅ—œ¯eºÏŒ¢ÎÎâ/,/A§qçó½ï˜ë^‰éXíµgèÈ& ³×!"F5Ì´…7ìº%ã^i1 ˜ ©æ"jØN•pqÂ'ƒ¼22®íRÞ-F4\$w·°±"2RÁÀ¨˜X5 §aã¡xšdS™Q«˜j—Ь"ŠG.á*>¡‹ÞÛZú ìÕþ^øh!z<æ~Xè?ΟJÍêøÃãÅŽ?3ýÞó=OÔïü1X§O0šüýLÿìEÆOëø?½Ì+‡zÒixØ:ºæœÜñ/\ ¯ÞŒ¬Ý -ßðÎÚÆÖ…Þ”F«r8­ 7™êÎgff' '~†æÎêÎîi4¯”Ѽ~ã°T0AÌk{P?AL8`wo}cëS4g c%4“é~§Û¦PÊ„—”œuˆŠ!Õ|\·ž2Cß"FœG£nàò(ïÚ²of¬@ê|\›uíb¼“Å9óœ¶æåPÛ›ý?Ïõ¼3Š:W@ŸË£Î£á¶7å^ ªèu.k¯“F.Ö#£D4Ì#wÐ*ÈÙ…y—dÌ+›ô+ >Ù˜G ‡¢Šnæa‡"8 cMTd‹’bJ¯„Š*ý5(†*ÁP6NÃÁë¸ U,PË@µá;ÍʹÃöƤ¬¯.Æ*šh¼Nžùs}ë§.z«¿ÿ*šÓøþOhÿð’äG¯êž¹@ûI ûÙK¬g/2aKÕùDþ¬qhÉ6¶á™= ,^:ALÇĶ1» ò ê Z·ÇŽ3‰Ñ±¡¹ùâÒÊÜêúBÅÍ š»û{e4AÆ£ÒÓš{W¯•^ [àòèxçàhØÝÛØÚYÝØ\Z]›Ÿ_˜š4 ÃÃ#™Tº?»Üv!±Ó*"˜yy¯|2¨š «çbÚ•„i­¤§u£œõ´eyÀ8ÕÂI _FíÑ‘;_ú'ö™çtµ¯˜ë~æjz=Ðú¦¿åMoóö†×$ç_„jé–’ý *ªùÛ&§öh˜(«€;ƒ*FXÃŒëØýNÚÂFûôl¨¥€¬ƒÆ¶Õ¤Ì¼„‰;`ä Ûêq¤îjo;ÓÉÂ" `(‡àຸ„n>¡ôg¡\|7lùĦÓ^_z[Úå¾_®ôƒ˜å·¥ Ã?׃? ÿÇ­éS©¢YÕñF­j÷²îÊ#ºñÇ`>±ÿ0¾÷ þÏqø‚ð^’ÿã˪§Ï’Ÿ>Gyú<•¬õ .PÓвª’ëì7šô^Ÿ+ e‡Ò`ÜôìÄÂÒÌòêüÚúâú¸¹îì­ƒ›û4˯º¶_*˜¥S²;€)ˆ¹³·±½³5¾påS4Ç+hÄû¡°Ÿ‰jQ3Ñ5#ë” »¥@g! œjú K¦¥c%sqˆ 5 º%"B§”ê›?œ}ˆT]zYWûªºæùÅ—à"ëíçÌ|¼MHpIÈ-ßf¡[…„ˆØ¥ !u,Lù*"\åSÐBjl¡„zeT«/£t·ÕœLã:VTËìi®EµÖa;‰]-äžV ²íþP{Ûh½í¥ Úéè&ºƒØÕ bž  “ò;Ó÷†P¢«‹±Šæã7¾‰eó’bç‘Þ~Íoîøî÷æ{Oã¿÷,å{Ï’¿÷ æ÷ +µÑa¡/++âêÄ´²oR+H#£\g‚¢õY¬¦@Ð×7ÍäR#ùÜäÔØì\±äæÊüÊÚÂÚÆÒúæòæö*€EòÓ“´;ÀåQ™ËýrÁÜÞ]ßÚ^ÝØZ1ÜÅåÙ2šã…‘á|6]B3Šðõl»‘O¨™q#oÀ,´‹G<@§ªÖCšÉæ£^EÒ"ˆêØFNÔ[¯!¶Zé7§ûÚ3¸×ž¥¼ùSÆÛÏQßú)áõŸÀ% ©a¢õìŠ"¢ÞÛÂÁ´3Q­,t›ß)!w«(=kàâtlL),´ˆˆ #›#&HPÒ| *` ÍÔ!&Bå: ˆfþw§é¸ü^îï΄ïÎV>;,“›ÅÀµ‚ï0<ì–<àúßÞ_=•*šÕQ_.›uú$ÿ#ù›hþî?vüí»!ßýQgffnte­"A‰ÌD•—¬ñÓMQ–µŸií+ÅÒ‡—;;h2»Ó ùcñp*=/ä‹Ó…Ùù©…Ű¬Ð¹±¹ ,îì–+çA©ZVÎÇî|ÊåúÆò*ˆ¹2àÎ/LÏÌMNš#q:“èë†#ds Ñ("uë¸8»˜âW1Ã:Й²‰3IÚ&JZ…p<õ(hVQ@DšÏ3;kE¨F¶YŠi’ y=u]/?ÕñÒ?q0m<\ð'£ô(>¥QÕRCC¶P{š)Ý&˜€¡‚ï„-ôP6ºÒÕØÛ| *§[JqŠIÑ* Xøx#«¢#åÔT[=¦½]Nok}wS-¢áÒˆGV ©W“æí\émi¯ü×'7‹ÁÅÀÉÀqéiÝpÕÆ 5ï•…´Ì'|1VÑ¬Ž¯Éx ù¨Þ6¡Šæã@ç›ý©Ì@a27·PØØªE2:Ên®¾‡gÀHl8¹ ¯pã•‚ÒÓÅÖ\ê"Û6ÀŽɾÁl*?6ÃZʲ•µä=%ä2ê91«)ËB¿!a<àãø¿rp*U4«ã‰?¹Ü÷oí5ò#)žÁ:­þKÓyüÁÌPrrzdiujgîàø"‚rņ4â-di;]ÙÁPµQeà©V§±ØÌn¯+òÇûcÉôÀÐHv¬ï¦f&gæŠs 3 K³K+óâêzéTm©T‚’›Ëe%P0WV–JsÄœ™-‰ ò&FGLJKhf“}±@Ðg0é1muäžf*²•ƒí”ÒPJ&FÇÅùD‹\ú;>ÁÀ#hÙXh£lLûòüøôDn|$•IFãaOç…7…|VOãBG=ÑnB‘Yè6 SP~*SBî.Ï^dS Љ´•Óz¹·¹Æ."•¡$Ù„D Ÿ`ââ ¬‹ßë übLPŠ*ðý*RBCNë©Y#ÑÛ\zq®ÃÈ#€›1wÐ!™ªKoK;`ÞÈØ·sέ¬c3cŸ5‘ý¬ö…~c1¬ó)ÝrZu1VÑ¬Ž¯ÛøÞ‹ø*šU4O ƒ/ÊŽ¤§çFW7fޝ\‡œï A.vQk{™õn–WÓC—)djÊd6:Ý_ÀG’}Ù¡A(›…ɱɩBÙÍ)pÜ,Uβ›•µÅrJY]X¾'æìü _é˜ æXaddthx$ 6Öñx]fea‚ØÕDéi¡ [ÙØN¡KLAÊh(-§£`‘{è¨6¢q~:?96˜Ï LxÅóaÅlH^ôKœ*>¾½ŽÐYrê$Üìma¢ZY.¶£röDÏöÚ³­5ï4]x[ÇÆ€&¬,õJ é˜=éäÎú„‹AñzT¾Õ§øÂM%Sñþ”Y½A/ gŠ#ɰua¶D'ªµÝ©/§Ù\ÛÝT37•WRÇö£!ëAβ—1ïš¶ÓÆ­”a#©CaÛÕ~Í\XQôKóNaåT-µ§™ŽlI(ñ‹^Þ{CúOÆL¿*Xþ¥hƒíÆÛ Ð)£"¥”9îànÆ•{ ÍaÙJ¨–wǬÀå/§Ý¿™óþjÆ]AvÞÉ[à°…€¸àઘX³ì–3¼*VPÃqÐZ‡”ØU'ó8,¸; ýdPùÏCš?¢ýuN}§_r%ü@Okþoÿñ“S©¢Yw|ÿUüóíþ¯Ã=y¶Þ÷ ý>ëôI^ϵùq žÂê6ãŽxʓȆ‡ÆûƧ!À%$ÉÛ¢R“}áøêÄÆ6‡ÇI$jÖd5Û_ÀŠ„úý©Ád&7nŽŒ€€e7'ÀD ³,ãääôì)§pÊs ´-wÌ,ÜÈ@²Ä GCV»U¥QOdCóãý›s™µéôÆ\vqvÑp©£þBÛåóM—Þ*%uì š®æí×Gï}(ÉѰõpȲŸ5ïeL;ƒFLà"d#¡_îÓÌ„äcÑOî*½P6¥&.xx7Ó@ó×Ë¿N;ÀÍóÆ»9]Pˆ<"¥£˜ûIíÕ¬áÆP…KÇ/¦Ü¿žõüë¢ÿ_æ|¿šñ|<é|Ü~wÔúî¨T])æü"!©baMB²ULµIh!nWN]q0ŽB‚;ýÒÒŠ_dT¿Ìª>É(oõIŽBüŒ ]E³ŠæÏ\~çYÑΓð³?8š¯âþîùŽ*šU4¿š­þ.<•%×JÍN•ݧõ„¬‘„'9äM C܉¬Þ‘šœ¾ôéõÄæƒÅâ … •Ê`2Yí6·Ï#±H¬/ÖŸH¦³ƒ¹áÜp~x´0:>9zŽO”XI!£'‡ä+1‡ò%1“ƒÉþD_8„^¿WgЇ£›ó¹Ãµ±¯-rcõîÑÂñÆÄD6 Ýszr8má̆›I@YAóæ¸ëVÁucÌy}Ô{®Œ”ºçá…9v-ï8¶í¤+ýÚùˆrÂ+at\4½üý¸üNV÷þ°á£¼éüé½aÃÕ¤ª`a2ºjÝBô¬Oî&4Gƒúk9ãí¼å½qÛÇEXù/ó>ȯËhBñ1ïŒZ lê7û”Ó!Ð-££ Œ‚‰µSÛRRô¬™ºîb†å»2z=&Þð–팯ühþ—ÿüŸNåô%^}¶ÓÓÓ£££';“É$l/\¸[§Ó¹¹¹ “þð‡÷áÂÂÂÉœDºw¹X,VÑüº óŒ`³ú{ø:ß·N¿õ­oU&ßþö·Oÿ³ϞÌ_ýõïÿû÷_{rü•+W*WíììÔÔÔÜ›U4Êøñ9ÑsmFšÈ•p”Î*1:Õ® 94`‹¦LÁ>ƒ?&19Y2m‘þÔ%% Ie08<žT¡Ðf›Õéq{|^(Œ„£ñX_¢ •HgÒ™\fhdhdtpÌ—XÌÃ|dtxøþä?Kv(›Ê¤úúÀ__Àïñyœng*ê,ÇÖÆïοweñ½ãÅÛû³«ãËÅ´KŒiéãñzBÞæ Ïí Ï­‚æ¥ÄÌ;*V£€iYU7\ÜÏZ6S†Å˜ZIhNkÈÓÎFH|œP]Oingu·3ºkI50:naêéˆA}Æ'Z‹)vÔ‡i”Í[#æ»c¶&¿œvÿó¬RB³XBóÎhéô,¨zkÄ/‡¥E· ò6zbžÐ ǵÄ9 }ÓÃ7ÁJȵ¨è(,„=E#å¡/Æ“qõêÕÊäµ×î}Y$ò[Ÿå÷7ó7•Éòòg//‘Éd÷ó(–a͇†¦x¿úKø†¢ùïþÝ¿û}Kì~4kkkï¿Ëshh¨2ÿË¿üËÊUWËãþÛ¬¢ùPÆ?þœùÓÖÀóñnÇ‘ùrªHÅQšÄF§Ôìêí|vöRØÛáàÜ ‰Be°Ø"‰T­ÓéM&³ÕjuØn·ÛëõKtFbÑx_¥u–õÌBñÌ¢ÙRrÌýÌfR™ô@r Ö„ƒP0.§Ía'bzÊhÆwók…+›EÈñÆäöâÈÊÔ Ý Ï»„+}ÚÃ!Û§h:®:oŒ»@Ì»S¾÷§ýw‹¾w‹Þ  ˜Ü™ôÀž“koŽ»áËyȺ°›T“ VÖŠ_´’lGe[éj@<ïá'TĨ‚4h`L{…«Qùv¿ú ¥… ycÈ2~Pp€›¿˜rWÅöš1Ö›Ãæ½¤v5"/8y¤îÖÎs?“ö^v3;ô°š0m¦-9XënΚ‹½ì`Íšiy 1*@~åô?ý¯ÿåT~ï©­ûÝý öó«–ÞÓO?}rñ•W^©,ÆñññÊžüàU4«ãOþ?üšoîÿ}ëôdUþ4+ëôþõ{²<`mÞUCCÃ_ÿõ_WÑ|ˆã‡oÒäz®-Ô܃ï"0Q4Ž)"r¥ ‰†)ÓÑÄjŠ@$³[øŸ4{~ø!YœÃÉ4“/)TjpSg4Ìf‹Ýns:]7à÷‡‚áhZg| èL¤“©Ì`:;[À±”Áϵ´?1パÛW ¬Ñb¦“°1¿ur(¾8‘^Éí.í,m/ŽnÌ ÍŽ Õ¢™b/k9AóÊýhK,~8ø`ÆÿÞ”ïnÑ VÂä½iìù`&ðÑlðã¹ÐGsA8˜ÜvÁÉAz脊4iç̸x³.>lažÑQœžˆ‚˜6Ч<•ˆ|«_½ŸÔ¥õ×s&`ñ½q( V~4 qB>˜(£YÓbÞ6_Ëw4s~ñ°…ÕðÖKœÎ‹&r«—Ý¢² ü„2c¦Ôq9§ÄÃN=¡ùá.ÆÉòøh~÷»ßÇã÷¯Ö“NZSS³¿ÿYyùÛ¿ýÛSßtuuõ!.Æ*š_|÷¯ß“åYùªSK;“ÉTÑ|ˆãû¯ Ÿ®Ñ?Ûè|®=ú"ÑÚKêÄÒ:q´«—ÂFá"ìUŸªÑ~ï…w"‹ÆáI›ËJ¤R…R¡Ö¨´:­Áh0™Í6Ðét»=~´Î@8ŠF"ñX¬¿¯dL‚%"ažFûâáXši%¾€̵Øm@°Ö Wë´ÆeÑDýÖádp,K.Nf&ÒãÙhÈ!á3¶Ó¦ƒœµŒ¦ý34Ç>Cdüd>PØ”ŸÌ‡±þåbä×KÑ_-EaÏ»EŸ’ئ&uØØÈß§ %ÔØDX3£Yw&,'¤ôôI·`9,ÛìSí%´)ÝÕ¬Êæí¼õÝQÛûä½q{%ïŽZOļ1d¾>dº–3Á×™Yà)¶îm1²N…m2[] DTТúD舠×ÍD˜H­ôÖó_ùýä?ÿ×S9u@:®LðøÏþ^û/þâ/Næ•çA`ÀƒY™tuu\»¶¶v2ùå—+"‘øcÍ:wô6³úKøúß·NO¬ü}h~ë¾!–>Ýû;ßùN倿ÿû¿ÿÖoÊþ‰‰‰*šù,ÇYÉS—tÏÔÛŸmtý´%ðÓ¶ðsíñºvÔsí1˜ÿ¤Ùÿ“&ÏÓ—M?:Ã7øb*‡¿…ÁHT:“Íð…b‘T&‘+ä*µR£Õè @ž©tÂÖiw¹œÛëóþP(‰„c14‰ÀE_0èñù\^ïI@[øB­Þ Òjå*•T®@´·J…Rìwšú‚ÎÁ>¶?ˆ¸}ƒQ-Eõ ö²Ö4?Eóú˜ëVÁSî•Ð4ƒχ*>ÂöWK¥É?/Ç~³ƒÉ/"(sgÒËêªcu×sz$ØÐSKAÈðmp‘ÚQkfõ„åD@³èÎù%+¸ Íñ ­;ή™oŽXîŒÚJÉ[oß˽š V^ÉÓú½¤vÚ+ÐÒ>œtÁ‘”æs\D-¯«VŠjPbšP ¾Y‹o#ë95=—Þ|th†ÃaXMçÎ;Ù#‘HN­²‹/ÂŽ„¹N÷[Ÿ½rj-ƒ°O?ýtå…CU4«ãÏ;.ªÿDíØb»ñˆÐ¬œóùÏlžê'+'ˆ~çU|>ÿ¯þꯢÑh͇;þá-öÞýÓõS5ú§ë¬ÏÔ;@ÏgÝgê¬O×!?>/ûá4¾ÖÊQ»zP( ž@¦ÑYWÀˆb©X&¯´NµN¯3˜ f‹Éj³Ø6§Ëáö¸¼>Ïï ÁJ·Ï˜:Ün€Õêp|§ÑbÕŒ µZ¦TŠ¥2¡XÂTM7hd.«Þç4A\F.âs[iÓnÆòÇÑœ»‡&@ù›•ø¿¬ÆÿùS1á*8à½é  ·@h¹Hn«%é—]u0Ç7_À4ž7³‘€fÚÀwð¦<¢Ål5ªØèSí–ú¦ú&¸ykÄ t–2|¯`B»¼’-q¹ŸÒ°qÕ¸ƒU’~9ãQáç_§µ^ ·]d¶_âw]t_Cá"¡ñlçù×äѼõ¿ü·Sùfýk¬¢Y_v¼†OÁö©K’?Í·{¶†ûàh>ëô ÿW÷ƒ×(@ç?¾-øñY™+?ç›XMoDæ¶û–öû–÷Sk°Ó˜ÈcÂ^ §¡ÝÙ݋ˆ:…΢³¸LŸÃñD‘èTÉU¥FzjõFѤ7YD“Õ†BS öŸŠJ«“)UÐ[" —/dsùtƒê%ð. ˜”‰xb>æDv.¢ZOÀÍOŸÓ4Ÿ¢é¼Yp¿;YFsæš¿*¡‡üz9¡`~4z&Ç€˜7 ¸¸µ…¨¦§îÞú³Ý—Ϙ…¤ÏC5šX= JbÎÌsðf|â… l9"·¡o¦ôÇãµ\©TVzåñ ¬ ¡OM7ó6¸9íÏeKaÅZLµÙ§Ù)•JÍf_©W®Å”+´K€µÄ¥W<îŒØ¸a9IÏèÖ“Z“ Ü”•±îãïG%×wÒª÷2ØÞL*·‚Âió _ŒU4«ã÷»¦¾÷áQ—·XÛŸßÙj¿ñ¿EÍoúàYýêÈ 9]ðM¬¦Ö#ó;«Ç©­Ù½wO’Ù½“X¿]ØsŽÌ©Âé`a®³»·…é„òyZp“Éá³ù"N9l¾ eq!¸XT$勤0ù¯…[ Ó˜D G¤`ð$$ K§3Ùl6—Ë•:Í<@“–0rÍé r!¦YîÓ­'ŒÛi3¸y8dûî¡9^F³è߇Ì@‚”“RÁ¼'¦ûÚXIÌÃ!ûnÖºž4ÎFT£nqÚÂóÊHcÃJÖMC\VQ:Íì^§’“û4´œ™3æL¸EÓ>ɬ_º’/G”ëqõjTµQ£°< H§}âI·Ä²p2F–WŒ‡›’¢ÂBT^O™s°×ý‚½ˆø¸Ovm@q—íE$óNΖü åêoþ¯S©¢YÕñÅÇÏpŠ¿ây Öé“ü„¦²ŠœQ]߈-7E2<»Ý·r½2·wäøÃaÈÑC‡ïÃÅÔæ¾å#PÕ™Ÿgêàf‰Dã1x2‘ ÓÀM.̓0Ê¡³ \ØIer¨Œr˜Ÿ…öÛº ¥K £qD$×…D$"‰B¦P)š´„&6¤¢%Lœ1dÒ/‡²¹Ó®ô—NÒn¥Í¥WÒÙÊOkº@Ã[`ñ6dÒ{gÒWJ±œÉ—7 žkcî+yçQ©cÚv3V¸…µ„a&¬Ê»Ä)37 ¤ò0-+Y©½F„kUS»Œ¬^—”‘úµôŒ‰=dáŽ:—°èÏø¤óA9 “)¯ö€•.ᘃ?låÂÁ #®¦Y¹h¶…ÑqÑÎìê—ᆴ”‚‰J®ù›AѲ‡óœ– ªhVÑ|ÒÆ9éú@ɧ.­˜„é?ÍÏ[Eó›;j:Pl£Gæ0%ÇÂðÜN|é ¹q=½}+sÿ=蘃»wÒÛ·S[7ë×b‹þb M©·?R\rç&:º ob±JåùÍ{¡‹Dcˆ *„!Ó!x‰Á•··CèBb À¢1X,Ž%‡µR2ÂÂ4éIwÄ%÷H§‚ÊÙˆz±t’Ö%q{ú¦:ãIß„y}Ì]ʸûƸç$°§|JÖy0d1·-›©’˜àïtH 7ž4»_ì·â[/±b|»’‚7m<Œ_JŒ(©}zÊÀʘ8#6~¥x ãN᨟·ƒ•^A­mï[·yª2ùñ9ù=øMÆö#½3?m‰ýÉ~ðÇ`>± ªIàYŠ`Ê28é[ŠÌïÆ÷ûVŽÁÇäæ  3µu &‰ëkWataÏ;±jš‘û½l‰g¸¨‹$7Ú)¿xØÎ%Ë,–}¼_I<‰^ñ±"[ Áà!d–ÈqÄùž¤">&‹Œˆ½×ÅâËtȈ:Y M\XMц¢¼ʦb:¤š–NÒ‚››)ðälGàX„. ¹šw’÷’w]Éßs/kÛÉXAÌõ„ħƒÊa§\ö—ÐĆ˜æ TDÓ"µ©¨]z&ÒÁÇzÅ„€ŒUQû5ô´5sóvè9dåå,ܬ™3hd§ ,3¦¢‚˜1Á)ÀÉI”ÎËÞ µ_Râ[,t„Ù¢Ã"lH„ Ð.RClõ6TѬ¢ùÇ‹]³_ùk_#®>ÒûÖ è7ßæ,½Ô;ùz"ñóÙ.U4¿¹£À»û4Ñœ53åžóVS›áÙèÂA|ù¨oåJÿê•øòq|é0º°™Û…«\ùszš&†§H™×Gí7Ç· λ“îf|7Fí;i4,›xÂ"‚ƒPX±‚!@zÐx¦5ªìŸÐ ΙFV9Å&Àõ;C=¾µ†ÑÓÈE·ð1­Rb§†Þcd¡¬\ŒKˆ÷Jˆ!%¦¢ÅÔ´¸š×Ðû> ì +(^1Ñ)ÄY8h³ä‚wzdíÛ”¶‹"Tc% |«×Âé®c!jÔ|@G>úN¥Šfͯí}4!€æ“ö <ëô‰]Pª@æO¨£9ÃÀPèž÷VüÅàÌNxn/2¿zFöašÝOË5sÖ˜¹bq-m)¦ú`ÚûÁ´ïÃißdzþ_/†>ž ìeL JG/¦$ã="1¥ 1$º¤d ‚ëîÅu!±T½_àM†–]Ó囑»á»¡µ;þ¥®™CÕ@ÑÙ—à [MëWPc:VÚÂÏÚ…£niÁ'Ÿ ©æ"šÅ˜v¹_m±tª6aÜL›w-;ˆpÜÍÚ Tîž$cÝ©ˆ™4µ æb\7QCo…ö 56aäš`´[ÃÙäè¦ D»·‰…lâ¡Knª¨ÝZ:ÒÄF[yX·ˆ.éH`Ô'!ú¥¤€¬T0í|,ˆ©c ÕÔnZWýf¿v½O³ScêÏÒÚk Ôʶí¥í¶ñlu1VÑü*,ö }a@¿Èaÿ2éÑÝÛ½ó[gbß@HŸÀ‡¬Šæ7wôräBGTìéWÕÑ!C¢`ÍN;óKžÂªwrÝWÜð7ÁJ`Ô[XsŒ,X³3ú1@Ö'#Îå[)í‚ëý)ï/惿YŽÀö΄ûhÈ:dçuv£=2–ƒ)]ìÁÀþÎnTG7ªµ£+³ò<)å@| ®Ü®–³rÐ ®ÞñÌCÙÍZ‡-õéç£Zs*¨œð+Æ<²œ]eÖ+#›yX5bSp¼:®µ†‚¨gö4Ñ»™@'¦U„k—“ §šÖÝSÇè…ú ŒZ¸ÔÆÃšÙ%+•”.@VBè u\^Ѝ–"ÊŰr>¨˜ È—~Žª{]ÓPJËÙ×Êš¸ûÿžJÍÇ~|ïÅÞÏïüᜇuû/4ÏTÉw<ëô‰}ìP\%ÛäçÙÂbw¿ÌŸ7õã¶Ü¬cdÑ5ºì[q¯ žñUûð¼y°ªª"9™?ÓÒ'ýÒõÝÕ¼ üpÆóýißµQ4ͼSà‘Ú:{Ú:‘íˆÞŽ.ª½«æmdkGOs¢ËÂ+ÒȨ!·ìœ>ô.\ó/ݬ$°| èô-Þ°Oîé³K´žF¦UIë± ð%¢aö8P6G\(›€Ýd@ êUô:¡9.÷ u®¡K‚ŸÆ¸ (¥$f\¿Ó͆ÕPWáFƽ²¼K7 7î‘’5Ì^«ä’ b¦SÅ'´Õ2ziÝ ´®˜°Áql›ß!#!ää.%¥[Cëú©göX(`¸+…¸6!¶ ßZÓY{fÊ+-Þ‹Rp‰Flü”UÑ2Ý\]ŒU4ÖøûWÈè–Ïðv~†úÓÿDÏ5—þäUüÊ©ýÏ7_Å¿qPÍoîè óÉ +Cça›<[DìP3ºþqszÊ’™µfg­¹9Øš§õ‰‚:: ׯ€¬KL˜ðI¢ªAÓ•û1äjÞ±›1¯öë ^IPAaä>¢$n7Šâ—+5·uA[:êÛ²óËÍDQíѤç C+–±-{qß5s䙿ñ.\1akʯ«3,{Ù,&"ôlŒMHô)ha 3aâelÂa—$ï–Žº¥Pǽ%@‹e™N-€z.ÆõP'—Jç`O¢[€ÄtpÌLXÇÃWzd@pÎ.´ ú ##"t{;©˜n#c“ä2¹³žÚÕ•“‚€-èy¯u‚ž"|‡„Ð)%"ÀPvrP-T3ØŠnº˜³ð²åä­ìI9,ƒ,%Åäý•Ä­ùøÖˆ'P=øºõÿJÍ'p<×–ü"‡=s9ðeoùùý´ùßyÕS眕ɳuŽ/u›å íϺ§në ÇÕuúÄ.® Í×äVŠÒN׺9æ À—2Ú¾1Ý@A?P€‰:6¢Š Ƀ@*\ ¼’6-³7iâæ]⹈j¥_·3hÞN›7“Fs:¨H›¹:f/yà.´ßi(È•j{lÀŸ åFãcÅÔÔ|fn©*¦èƒâШb`Z—]6å7,ã;öâkæØ5{Å1uhÝÒ¤¤Ñq’ÆKîjàbÛ•ô^듼rZTËê7p­B 3kåâ!§8_Ö³àSƒªéLœ@´å”æ°çÓ@ÁTCE÷ÉAÌa'tLQÚ"€šé“Se”.foSWK=²½ ÛÕFêEQ]t¸y* '½»‰ÕÛÌEµpÑ­Œò)ÜJ “".¿UÓ£ªRf|"°r#®<Înç­¿œöüË‚ÿÓž÷Æí¥D™+¹YE³Šæ#÷´5r¶Fÿ©«:ûˆ6ê䣻W5tç×ü÷vFpTINŸäÅXÛEèfÊp"Ab"ʬà&Û¹¡!UtDÊɃ©/-ñ$…Î>®% bÒ4.Œ@+!!ü jÂÄóHŠÅb\»ÓN‡”£nÉ€‘ãWP¸˜Vbì Ú³ÞªÌqøBk¤ß—Îsùøèd²878»ÔN—Qa®+- æUÉ9]vÅ0¼nÛ¶MìY »`¨fpQ›†1R+¡£Ž…j•Qº5L´E@pJÈ%=¢a yI3?e¤ËzÐ=GËnNø•SAÕT°„ã½UÅ“T &VÓu"&7¢aÚ…>®Œ¨6³ÛêkÛ/w4Õu6Õ!šë]B©£î^:ëO ”,7ÐzÊ=OëºêιD¯„ä‘ NþjT±ŸÒ]ÉîŽÙ?™rÿzÖ÷ë9LàâÍËRX–6Ð Ý> ®«ÿãTªhVÇïŸGóÅ)ä‹ ùûÊæã7~ðÚo½&ꡈùx¬Ó'váœièjÁsl%Š«Fñ´x±‰¬t°ŒA¾=.t À–krÌ!–1@×y(JQnÅ õ!¾£NACZøxèe1+eáKâ8Å$##$tb[kzìKmª‘¦Wb´šCqo*ÈŽÄò‰ÉY'ÙB£%v².İö yÅÀ¬:µ Ë®j3˪伢Z㸖¾N–ÝRCínà;eÔkâáb²GF ©™q='®ç‚w ô¼G§4ï–{Àb%ã'ñÊÇ> C]|c:vPÅpK)&ŠÖÓxs¾ÿÖÂÀádx)ãT’Øæ‹lT‹„Щc¢z/¢š.bš/a[jp­µ•àÛJ)Ïk`?ˆ)-½R¨GKï©È. y”1ܵ}Tt\t2åÀöÜ6ƒ§.þÞx`<¢¯¢YEóO0þá-þ©=¨è‡_âœêCu󹆑¯ö…/vî¯åg„­ßwÕÃ³Šæ7}Ô÷Òti7CÞÍT ¸\ÙM†ÎÇ6…˜?]祪Ý¥z(NdDóu] i3Žu¦ÁB· %½×ÈÃ5vÉÈÅA”»Hˆ„q¦M=ZÇÁhÅz‹)õ$³ÌH4?AÕû´©éF<¿‡oÄÈœDm€åH‰ÃyÿŒ,>%NŠBc‚ÀˆI3ň†…j¾·ÉÁ´‹H]J:J˘ùøŽ^9-¬aAåŒêØ g¥xBëÌÚÅCNɈ[ErÔ#‡ä=2 ²’‘R¤+ˆ ÎÂWEµ,Ó+£Zx)¹‹Ðqù½Õô‡ë™Ö3!:"'ô«ÉCfÁÉâ: ~Y{Í™ÎÚ³ˆËg»ëÎõÔŸG6^FObÂa®‹jȘXŸ¢i¼9b}ÂùÁ„ëÃÉR`r{Ôv}È|ÖÏ¥›#¾ÉØ}ƒiÿßN¥Šfu<4¿÷|Óœv<¬»ý*vùË¢y^þþçw¾NžúRß÷²îø!þòƒuú$¯‹¸&,»(h# ;(¢NšÉQa…‚ÔC1=”P$[¶¶‘ ½´(6'!w5Qº›h=Í0‹ö`ÀÔ²Ãg æWš˜B­Éà »ÿàpd¤€—ÛÄÁ¡$£•*C°uH… 0mI®;z2l š)N1D‰š FæêâèÞ¨í@6]"tÔ3z[Jn»d¤†‰6pp6! ú¦OA¨Ð:#ZvLÏé/Ñ)HY„»8ç䜒ÒÖ!IaÏ M4h¬i‹0aâCÁ„/|]²UHTÑ{Y¨–žÆ ¿ÜÐPò6ÎjD~}Èôî˜í£IÀÎqwÜv+o9LëW"òÕ>Íaβ;hÚI'¼|ÛeVo Ò˜¨&Ld3DEéüMånRWqóÝ1¸Ç»1û­¼íjš¦~«_“ÔÓû¬’'|1VÑüRãÌC{ÌAóŸ.|•3!/t†ü:Ým_'å/ªßýŠøâ~o·ýû—ÉTÌ*šƒ›í¸& » ËiÁs[¼v²°›)ï-Ÿ°ErÔÐ@Kð´Ç©GÒ.´aÎ4t¡XòN2¿Çĵ×C „Îl{]ù·2““åL NL  H¯1è¼!×À 75Ê¡„FŽ#!×cym4eSƒÛHª1NÒ†PœÂ\öŠl]\C#A˜š^ìi¼ˆï¨§#[˜¨6.¶CHì’S{Õ ´‘‹·‰H.)Ô:ƒ*f¸Ô:9}Þ€‰n¦­"Pˆ„9Hš0 `?TËþrb:N©`Êi1Ù* @S䮆öÚw¢JÒ˜»”>œt~\t}Ц½–3mö©‚’»Eï­‚ûjÞžQb·¼ëý’Ò[ Ùí¤œÚÕØ]wFKëÐÒó6ÞbX¾Ñ§7¯dÍàæíQûí<økƒùÕœi/©Ûì׌ظ^1îAJÕÖ¿JÍêø}㇯ÿ–¯vȾÎh>Üñм׎Ûá_Ö<ë´º|,¹™Ú.r’VßK¯G11¬<è)‚ VÂźê¹ôÛuDÄ‹Çs¹t¡0<3“Ÿ›_\l8÷ó©õõÙ­­ùÈÌæfqmmbyytaôÔºƒ¶hÂÙ?èKwÐå$ëL¾ÓŠ¯Ç šˆ’² Á1€’Ý|3LÚÀ´™,­íežiÆÄƦ‚¹1\{”Yp“je£Û„. ¹GÅ@¸8‹€t:ÄÐÓ#§ù•Œ šÖ°Áĸ×—ó¨– UT •T3ÁY§„bK£¤÷2Íè–š”ž^pñEà ˆ|oÜñÁ„ó£ÒÙTgMÈAZ¿Wök¨ŸÌ‡ô¤¦E'ó "üdHó›1ýoÆ ¿ÎëßM)­%„¶ œ”20'Ü¢ÅÒçoªw“ú£Œéú°õÚåjÎrœ5¤ k1 X–Ô3L,dÍ*šÆñ\{ò›rW_ê }å¯}±+úg¼çU4¿éCHYr³žÉ³Í½Ûñ—: —Ä ½ÜM¹ØA8ÛŒªï!×u“Å­Éíq†#‘ÁA °ÄåÒÒÄÊ p JÎïî.®¯-,îÓ›ãKËÃ3³ÉÑ1k$áêÏÔôÐ:èŠ^¡ 'wm'Õö²/£yu^IÚHÕcù5½ìK=Œ j_a&š/²£îDÓv™ˆh¤t7Ó{[½­,t;× n*h- «çàŒ<<èiVô¤yätÐ3 b”L˜€^9HõÈî„já«tl¬’Ž’Q‘"b®ý²ƒÎ˜X³~ñqÆx}ÈRn… ¤ýƒÒs‘4K¹>d†z¸’ù$¸A%nÕÃ9Љï*?ÒþkÁn~2¬ím8ÇE5•>‹SAΘ9E¯d6 [Ž(×âš­íFé-õTKaÅ\@6VúØM®ƒAµ7>ÈC)^ùŸ§RE³:Ng.{ÖM5ÚÞÿ3þ gŇ'ófu¡2ùÑö©ÃRo<‹ýñ÷'šÏ\þYîùc°NŸä„â)eÁAsvÖ=±š?ˆ®\Fy®s¾{¡ ç›ÞVF‡Rùá·/·¿y©EcµÙƒ!_ÿ@ÿð8XX^†:9½±1·½½°»·|x´~õêÆõë°]»reåèö,ìíÏlm¬¹é™ÔxÁO¹“¹$½®h/ÑiîZ.v3 —zX°Fßnƾ݄y³®'22 Ó“²ÇRèÖË„Îr”ÍVp“^v“GH)H ¥fb4:¹xs©x’í•â)£¹¥T˜@£LíbòI¬P0yx &JJî1¹ØdÓE—3daϤ{)ý•¬éÄÍJß¼[~"rgÔª®Å”3>ñˆ–hFE·ò÷3ª‡´å4璉ˆÚ3Œî«×)ÄÅ5ô!+oÔ!˜ôHfü²¹ ¶À(4мŸ4°âšŠÚU]ŒU4Öx“þÈß*ç5lèÏøþ´é³WÍa£wîÕOdî~.“åü¦ù½çñU4«h~©A™™Á¢,·§È© ×UãךšØÊµèòÕÀìžs|UÏ“æ‰Åy‰Vgñùý‰X6—-NM¬¬B‹œÛÙYØÛ[9:Z»ruëÆÍÝ;ïBvnÝÞ¾ykóÆ2 ×V¯,îÀñàlÿHÞt%rµ½Ì:4§ɬA2 —ºé2™èÅ3[ÛK»»«{ûk#ùA_zŽ´F“\i÷ õVp“ÒÓLC¶Ð€Nd+Õn ‰ÝP9¥”^ÐSÅ@Wô4€ž|"tOØšø#žÞè§*Æg\²Ðm$D£–†ðŠqywÆ'Y«w“ºã¬éjÎ|cØn‚˜•Tܼ•·í$´‹a¹ŠÒ1ª§,8YÛAÁqLrµ_v¥Oº-¹ØÄöZ ¡CCëqð%5®a€ƒ&NÖÂ…-Ì´ Ø_yww²ñMÎüÿ<•*šU4¿Ôx¡süK°U/~‹šû­S¦ÈügMùGÞþeÔÔ‹³¯6‘1îåùI¡fž ùL½í~.¡c~¾fþáñ6wùQ?4Á:}b—F×'No”¦…-Ë¿4Î}¨ŸyO™¿B´úgvÝ–¡yY(‹—Q’Þér†£‘ÁLbt,?7?³µ=¿³»tprãÚõÍ7·oÝÚ¹}çš·n¡›×o¬_»¾võÚÊñ•éÍ­±Å¥TaÂI:ú=©€òb­ujzln~rm}~woõà`ãðhkgwº¬-–2ú4î]ç“ÆTA7§ö´PKn–èda:8ØN>¾ è—èD~J'FÇÁž:6NËÆÂÅSQÐzALb2P­Ôžftk­††ðK CVΤ[´Qlôiàæµ\éÕ;wFí4arcØ ˜®D•EHFlaÇ ÔykÃÏß ‰6ý‚%§`¢aš/rP-bB‡ž‰r K†”S"¥O£G”4˜û¤$ð´ô޵´|kMu1VÑüw¸¿õ^î?zÛð[§Oÿš?mí‡-Ò:û€h¸Äé;i—'b&׉Ù?<Þ ü ~oU4¿¹gLŠÒ[Šü±aöãüGæÅOL‹Ÿh§Þî Ôsn^Ó?ζ„lC tFbÁd*16>4=S\ßX<8\:<1¡HB¬¸¹uóÖvIÌÛ[¥¦ysÐ,7Íåã¹]@qxvn ?jôYÂI[,íìϹ“ÃÑx¨XB³¸¹µtt¼}åêîÕk{ÇWv66—¦gÆÕ® À3¤ žÉ5ÿÌvtù8¾EøX.éY´•jc¡ÛAO! t‰I%=å4DFí•QÒÏãb;¡«ÒzZˆˆF\{½[Í–àÛì„÷l§ÿíTªh>~ã§-™Gý-j5û_ä°—»Ý¨²QúOæoÑFþš¹·Ý®½ÏsyJÌ—ã_ŸGð1X§OìêÛ…É ÙС¶ø®nê®~æ}ýô{ª±ë‚Ä:Ù1¬ŠI²Êق詵þd,;”Þ—f6·öö÷—+n^¹ºVróFÉÍ·î¡yýìY»r X:8šÝÞjGææSã…øÐˆÖÕûãæPÂMEb¡Éâ( ¹µ •t÷úƒ7¯ß<ÜÞ][^“é¢f'²t[½Ú¿qÒ·v=8·Ç4z)Ý-”žR@Ozo³B'¾D§ˆÔ#"uCý4]'kÙ˜ŽA§8¤g;1mu>1ÖóÐÍF2®¦å,œ ·hÖ/]ª6ûµ[-@¹Ð•k15x:”Ûx}:§·Q‰o±ÒNO€ßc ^.’ßs9¡¥¡›/Ú/3zš¸˜6!¾CNîVÓJjL¤D„×Áž‹h²°«‹±ŠæO]t?êoq–wúoÿð3Ú—>ÓÛ,ûÃh>Swïi•ÖI;-«„þ»_êýk¹ÿ”ìW>1ûBç½7aøÇ·9ô×[Eó:. ¸DÛ¯oU<¸«È_UŒ^UŽ^“CÍdgp¦Ó"«Ýt †L3{ý±Üpª0™Ÿ_[\†ÎX:=»»·¸ .ƒvàãúµë:Oj&ì‡à°™­@3?¿˜ž˜ìÎKLn™Å«t9û?“ï|ç;•Õm4?¿„ï?²ŠæWu$%F— ;Géþ)^߄߿ÎXg…ç Ö\·,ˆäj;hÒÎ^ K, f“c…ôD17=;2·0¶´2¹¶1½ nî/ì”OÕ¯])UN óêõÊS™pqùð )6½¹5¹º>º°”™œ .GeækíT:=ò§3ɑѡ‰âøôlq~qvnazf®X˜Cñ”BÏ€!Utޝ…¢+Wãk×c+׋G¾éûè2Më–Þ`¡×Ñ€ïl$t6.ÄT“ÿŸ½û n+»óoOMÕTM§<3k{<íÐãvÛn»s«»ÕŠ”(æL‚ˆDD r& 2‘sÎ9’`NZêà4ã݇}Ù‡}تý?lmÕÖÖ>bS”ZR·Úv§~uëââÜ €ÐÑ߃ €PL Õ›³‰VüŠ›Yã½’å÷ËÎ?­{>­ÚwãZ§|väêûØÞKlt¯|zTGGšX“v>Î+&z%DŸ„臒’¼‡çðØx8€xåbzbòÐýþkãWÞ¹ôÎàù·úνAº¼ÄBzEøÌâlÕ4·ïÞJÇ®¹úÁð• ~ö_z¯óÜÛÇ÷¢òu;RíóFó¾ÝÝÝG¡)‰š+ÿøÿxtí÷¾÷½£õ×_½…æ_Bûõ˜û0¯éß"UžjÇWá/럛ýB4ôîÄ©h6Ý®lÄ`bi|ÄR2/Õt›ÙåqúÞH,ކ‚á¬÷à¨d……¹ysÊx]•\Ód6!uªuY¸,p¥ÐÜ…+ç¯B_u‹ê.!Ô–_ºâÍœQô°F>+³xº¦Oq6€•Z÷‚›w –ý¤.m ^~Ùy~fäÛ/#*)=eá`-\¬õ°­Ä.±Ð:JC›M RiÙÆ™ÎŒ³°ƒsèþ¡«´¿ûÆø5ãÜ„“MªfÊÆ¹M'ïºOt+("»Î½síì[Wß{Öï„ç’3;¡œùòÏi¿ëÿ;Q§v;⩹òx˜GöñŸá/~[Zhþå ù:6ógAóÉçfOm¯!Bóþ«ú'všäçÿbv}ÿ»M1OEsœ&ø AóQãôÇ?þñÃãñáGcðhˆÇGn*•ŠD" ….‚’µZí»ßýîÃ=[h>C»€â^ÆŠ®ä}sKC|×ÇÞÇ4wSuœ·»ñ&· ?K—jõ‹6'ÄC³?dÄ\±¤7• æ‹‘R%Q«§ëkÙµÍÜ¡›@dñ0ZæÓ%p °6ÞЬ.GŠ_:qÕàòræåÚÜ~¶»o€B£ó…B©L¦Ò,j ú%‹Ùb³ÂR­YìÆPñbôÒÎ2GøÎ´Ð•ŠóÁ2,Ñ9SAû‹Ë¸ËY{Ý+9ˆ)o%TŸäô,/Áòzd¡ãÜ™kçÞ9ÈÝ ´‰ÞË>õ\Ê,€¤y=¥¿7T²Ý-Z®§ [QMÎ&Öpðc×>À÷·QÆ:˜¨^.¦_B^˜A€žÊÙqÕaÁº|zLB6Äìm?»çæÝˆvœ\âHçÔPÇïJf(ªKKCØy˜øÂLAG_6³\RRÑ­ÚP3'm`FÔ4‡„¸éä sÁyÒsŒJ¥ò[‡­ÙçŸÿùŸÞñø µÛíÇûœð‹Å>×÷JZh>‹žÁÏ%µÞÊŸͧj§¢ùx7¿ÿ:çhn¶™1îÃ3û‰â¿€&ñdÍæz·úÎ_ š?üáto<ƒÇ³ç‰×ºGSFÐ^|ñţɥ£ž-4Ÿ­½;@9;Êø`lîÊ”¬sFs•¨hÃK/ x¯_›T›m Æ%…a‰Æ ”‹ &«Þå5yÖ`ĉ»i&Ê—b•DH0±éfÃJÈ•‡V¦W×ÁÓÔÊjrª)–Ù¼+ž‚#è]¶TN 2ÑäAô4G ÐslŽ@,‘Èä jµZ«•-,pxü«â$G5%1RµÞ9ceŽò)ž#ɵ%8Ö8IaíÂÌjõJ»˜˜3±WÝâëQåïŠÆ?Õ,(™î¦5;A¹E€¿“7oDr*¢ç’MF ë¹e— ¶ìÄu7ÒF¨­¨v5¨Ê;$‹œ©‘«gÑ=—HCí³cô‰n6ºO€M ‰ÃâÃ:<ëu¶Ï!{@Ø{é'1ÙR ʪ×mlHµŸ–>-˜hˆkŠéaÅÂö8˜¢…·î•®y$p'W=bXV‚Ü'®eÀÏji^ñÔÐåw¾äÚeùOÔ‰ÿ÷êŽÇ) ±ãWuw?øÊ…jõù¾×ÓBóÙÚ/mŸåUúãûÿç5ÕŸý>¿ÔüB4Ÿ$o6Å„ŒùðU3Є˜ù´h¾3åoÖWþØ5N†áññxbãñ1xtÕÄÄDóåñÑìëË/¿¼±qÿÝ^‹Õœ¤=êÙBó˴ׯa^»Šz³f`æ½aÚÛ½¤ß´ód*ÎüS4?2‰¥r…,‰\¢Ñ«,vÜ šáC73¾t>T(GËàæjºqr–©•5¸ 4^]‰W–AUè-U!cºâIK 1Scw²$²©YzÏøTïÀ‰Aãˆd m†J§3Yt&˜ÄžíœæÏÉñb#Ia›Q¹f5^ŠÚMVا¤K£TÉ;W®}ð¦SJNè˜+.Ñ^Xq7­ý0­½™XÜ(W=’ŠJmÏÛ¥ÖùÙ±žË.ѵÀˆù9»¤âQ¬TPË~eÉ%‹è¹³è‹œ9|õìd÷%|ÿâP;åNúDy¿fOy% ^Eu]Ø÷> Iþ+£ú}rá^d~ÍÆHð÷²(ÒP›ŠtˆIy3wÃ/ƒ;³^Ø )ÀqXîG 6|ó5‡°dåÛDËDv=W4ggg¿õY{šß:Öà"—Ë}ü,n Í?o{mò”ÌøWæ“$ÍÇ»y4%{ª˜3£ b6ÑüÑ9 ˆù(4ß#=¤üÑ»æçúx3N¿óï¥Å£ávêÆû¯=^zé'?ùI½^?>º›}œNçßýÝßMN6NâZ[[;êÙBó«y¥z¶ÿ•‹£ot`}AžãͰÓL‘ÎF“(d&‡.óå³Úê4¸}à¦5uÆ’žd&-† ð±aåJÃÊ— +—ÊH©.VÖ`¾áÔŽ=þE›S¹deŠçñ³ô®Qlçaõ ŽŽ PH ‰Æc§H<V¸|Ö›—z»0ôA2œ¹€æiq"#NlÄô(îâ(UÚ1I ÇüÝÞ1ñðA%µê®y¤;!Å^X¹¯y¥5‡È§  :ÏE |ƒ€ÜwõœhvÒ$¦€›a=/eç²ÂaÅL³„2ÑwEÉÖ‹iƒm/azÛƒíäákä‘þFnÇõžøÚu±ëÜÛ{Áí äþOŸøDu + ™ú0­‡â†Ì‚©°špšoÆÕqõ¨ê ¦¾•X¼ÔÄTÛA9$P¸çV!ƒîù’Ïc»þÿ9Q]ÿ[h>õÄìØsÿÌæK’¯êPgè÷¾ªCcd5+{jÒ<>=ûêðüÑÆ_v1¿þgí0N[C¯1Í>04€À ŽcG1Ä1 iMFMa¦p:™ÉeŠe"µNf0kìnËgò…¬¡˜#šô¤²þl!\løx¿ŠÕP¡Ê—¹êÏ z’Y[(Újl.ÀW¢1̉æqÚÕäñêè€êì”Ì U‹ ã’ÎæXº0ˆ½‚ wã˜dþYÐOâ÷8íHÊÅ¡©÷:…rºãÜÛ Ò&&”´”]°ðK6aÉ&È.qӶ޽üîk)•Šìiû€8ÞÇ!«Ø„%ɬsé[且L›Œ®LsÉãv½Äe”zÍr1ƒ eGÚÏ!».!».BMt^ï¼0Ú~nèÊÙËïùÄS)¥l`¬ZÙvÞ†[·°³‹Ô ”p39W£e¡ÃjzÙ&XõHÑTÝMëîeõw3åÇ9çãïŠK°zBÝ*Œ\\k0¶ÐüË ³>~Ò®üí—<Ú[Ÿïö³vÞ32& yjÀ<ތٟF9×ýàG÷®Š7ŽÄüU¯øñyú«ÿV„šß˜F ’®õv MtVç b‰˜"ƒ›Ž3¯ªt “uÑæÒ»|K¾°%sÆRîdÖ›Êy•õ¦s@¤¯ %lIf]‰Œ+ž¶GFoPëðÀîâEO¡f¥CHÌûm½´÷߯«Z«MƒÝi „!ÈFó¥ôÊZy}{åüö  VÎv#Ï´¬mÖV¡6jmï¿ÁÀ Hg&4,œUDö-Ђ*zXÍpË(f‘†ê•1p,â®sîîXïÕ‰þ*f„?S12–‚™IæÔj £·U’ŽåŒ»µF\YAÁŽáýmÝÎt§ê\:ã›íõPzä. ±#¶0“ÕÐ2rR}b‚anâ “ÍŽ{d3E ¿bš›~ù˜únFÿiÁôû’ùeËU­ÿ]³ýiÙößUëÊæOò¦{YÃ~Då‘©sh/©þïÕB³Õ ýðŒè+9μ=ùg, æV Ð||7¢H=N]$ËÌ?mk¤ÎŸ÷Æ^U>ám˜oL˜¾ò‡ð §­1Õl\½EËÎ;üÌEãŒd¡­{° 5ŠžB)¤9.C$ãÊÕR­iaÉ®qx žÀ’?l ' o6ËÞ\‰¥œñ´ë°€ÔÆöHˆèœ^•Å1¯3ñÙR•'ºÒÝŸXßNmìf¶ös»ù½›^Ãá¶#¾x*R(g*Ë…Z½,®o­lîÔ·öÖ¶÷×w¯oìÞØl,¯oì4k}²ÿ*e¢WHF(˜%±Q|¢š‰‘ÌŒ#º.‘˜á®{.æïüœ¡Î¶ñ¾kÈNÂxÿ4jˆ†¥L“‘Ø‘žíJxo9z½¿µ‘Ú©EjiW6l™îíïhKèÙ93¿`”í¢s0Í®I&Öä(XV%ãYÞˆ_Jôˆ¦©ÆD畘’ŽòÈ)¹%nÅ.j h y/£ÿmaé Ô Êú]ÉüIÁžÞNj¯GÕU‡èo|0¶Ðü‹j/÷,>Ã^ß}qìù‰9ÿò< šÇcf͇ûüç%Êãòꈺ…f ÍSU®‘»ÃælÍYÙlÜð®ìE¾ÉÙ90:„ÄŽ¢ ˜ú [ÈÊø ‰Æ¤²85¯Þ0zCŸU°Y&oÈä ƒ§¥%…2û#z·Ä”ÌB•–%QÐøbƒ®­EW6b«[Éõ䯮?ä ÇÑD(™‰¥ó‰|)S®å«õR}£º¶¹¼±½²¹» n°uýæöÛ»7?Ü»ùá~ÿ•&z¯ÌLôÑуœ©~„¦ û0ƒí™()ž\Ó’¯›©“C‹<’can¨«m¸ë Úß~i»¹±šüp;ûÑ^á“ë¥ß߬þö ëk©lÄR34øk ÞX}›ŒÕe¨ÍôMÝÔÇKäÿÅMƒúu掀N´ßZKÒP= Ò5?“бŠVÁªg~+ EÀB%ÔÇ2~œ3BÀ¼“ÒÄ!fny3ß.~öÏžœŸÿ¿NT ÍV{í'—­ïpŽ{ð•ßècN”}<š &‚&ùËùë}Æik¨ƒ)Sªb/­¹—wüë×C[·<+»g/_»Ú388Db‘ ‘Á¡pÅ,©R ÔÉVµÕ­ux5ÇËîi”ãuzuNŸÞåU ž Ô¢Ý#3XÄ‹μÄœfñpF°R7#Ë 7í.«/è Eh&Í ™.š+ÅúzuusyÐÜYÝÚ½6÷¶öÍ[;wönÞÙƒ%:ÞÓ6Ùß>5Ò…îÄ uŒu]ÎS@°x^TS6 3Äñ^ ŸìP239¬3sQ[%å^/w—c7×Ów¶swwóàæGûÅ»;ù·s[ÕˆI-ÜÒL]7Ôè+b[…½m ”ÿí¤þé°>µLßÒÖèá+gêqÊD·lvÂ.!Gç²KÜ·tÍ+Û-܈-Þ:tóÃŒ¾y²Ð4LS³Vm€×´‘cZh¶Ð|Tû€qÿ3˜/^m7úÓ«ÎãÿýmÜ„åë/#Òj_-å&uJfK|‚o×±J6aÕ)^õʀŽˆ ˆ¼Ñ¬Øâõèâ^D½R®ûä+îù²]Õ0µìgÿö€÷ÿãDµÐü†µWToã§€~ï5ÄÃ×¾xUöœn÷Ç?çã+ã±/Üå}ÚÆŽïÙNŸ¢d&ßÁµïeÁ:Ô»ÓñfgÖ~ô.ö(cþà7WIóO~çÇÌ£³€¾°=?U¿ãôo|¢h\ÄŸÊ'AÌJ½´ºU¯o®@%² Á’»s`¬30˜¢`)sÓl!M ã*4¢E£D»$Ö˜ËØ¨ÅϪqÑ×Juæy½E´hà/hYÒºpžÌä˜HÂL[W?]<ï-Ô 6ÐtÛ¼w0âǃq@3ÏÓÅj®²Ü@ÂæZ#lÖ7vV?{gssïÆý°yãÐJ¨ý›PÛûÛ êæîÚêÆòòZåÐÍl4î½zžIDh…€&;ãó™Ó:?â6$æRµ’óoV"àæ~=Ùàr-+;µlz Vt~üR>PŽŽ@ä½%òÇæéOÌ3°¼k"ïkð›JLdn(î5G;Dä1=çš§„ÕŒœ™_´ kNÉšO¾Xبw#*ˆ–;ap ’®ûbVâ¼YTÑU t ÍšA³6¿ÿ:æákß™ýºîÆ ùøhÛþ¸æàC=ÉÄlSÌW'/ÞÆ:&Q¤~šOÒ^êvþø=ÄóûëµÐü«n¹Ôd]Š&£Œ¹Z]ßYÛ»¹»{°³}c»¶V7™\VÏÜBM›x*›Ì€›L‰’#Sƒž\ù"¬°›5¥‚‚-ù"WÞ¸vN¬ ñ¥Ó,UÌ #¡ðZO@f²²yl‰L¬5hMOÀ4cÁx*’Ìij…T±’ò–W++ëÕð¹n‚†[Ͱy}óp’öÊC+÷µ˜îÖöDÎÕZ½\(gã©(„Y˜¯â’Í2FÐ dR ¶Ï¶v2a[9é®çë¥ðf%º³ß®Å6Ê‘ÕB°wA½R A\²‘{2¼±åùÉp“yê¶tKOÜQãÖè,ÌLìš¾ÆÁ-Ð'-B’GNMèÙi#·`…¼)×ý ( âgÝ#«9¥ jv‰ŸÐsܲÙyʳeÇÖÿq¢Zh~óÚ›˜Æ‡ýð&þ/ùNÆ•3ÚøÊýÉäš™Õô±Yã]— „ß ù+*OŽæ«“ñã6yb4Ÿï§_¿ãôoy.,ªlnG*Ÿ17ö6÷oï|x°wsoûÆN}s5SÊší–ö¾‘¾1tÿ8vE@iX “@çBäœåJ"9C¤  åÀ(•?OåK©¼FÍÂ’?)\ qŽÔN’iS3#hB?Ý5<ÁcÉ”iŸ#‘I´mM¿Ûö…¢X2’ÈÄ2…`Wªj«ååFج5ÞÙÜZÁÍc“´Ÿƒ¶ì\?¬ýÍíFÞ„Ý*…J.žŽ¹}NÃ’^DŪxÓgß;3KÂJxt»qÁgÓÄ}KÙˆ½œòÔ²þ•|p­^-„jlI­vƒ\%å°Ïiq×üôÁ¼`¼"A›{‹S×5„}ÍÔ®¿*G—DQÖðê ª·mÙ+"#4,œEDö/ÐË̤›·J6qÍ5_sI«NiÅ!*ÛÅ‹0eäÆuì jÎ*" ˆ£-4[hþuµwˆñ£õŒ–~TOèã#&„…bê)oU`õ¹/D³ù†æÞmÌŸzÞìñö£X¿ûZ¢º…æ_oëîëSëµ.¿'[Î-¯¯¬m¯ƒ›À%,W·×«kµt!c²š‰ÓäÞQtÓ?ŽÃMOLÍ¢§à Á›f‹ÀG‘ÂÃ:™%$3P$X²„Ó,!ðŠ™f ‰³£ÌÞÑÉŽ±+=CX‹bZ”‚›A§>î7g#ŽBÜUJzª,sQG*d 8t9ŸÇœ¡ö¼¯@^±O÷ÆÙ£>ܬËÐPµùɲ™âŽ…æ†¬¤nÖÀ¹ÑÎ ÄÑ.~XAGë¹›dÆ-£Õs$3Kü’] t­¢‚U”·sfAÚÄ‹iÙ!õœWA3ò‰lüð3?¡oQÿ÷ÕBó6¿|ûÁ›_Ío,6Ñ<Îe³ lžÚÿûo<Ñ<ò©h>I;ñy“§jÿò2êy?}߀qú7;ôFãË’+à '¢É\ºP+•VªÕµåÊj­¸\É”rádLcÔSèÔ®!d︉íkÐ9Œ&ã)H"3Ã=‰ à8EãÀ:n– Q¶C¡§çƧ(Ó„ \Ïèd×ЄÖËþb ;…›žáð¹R¹ô>š>—/ä FÑD‚a:ŸÌ—²Åj¾ºRj¸¹V­o4Ãf}}{µ9IÛtó(WY :€˜k›+Õz’ÈÄaŸÕa‘-̳É(‹891J%ãeB–ZÆ7kev£ÒmYôÙuhÐeðÛu.³ÚnXÐ(,7‰ \;Ã8§@]µ’{]”þc(Â Ï C^Ú€™Ô­ÃuF.bÚÞê¹ô>ªïÊ,²OH—Ó&Yx Ó*švɨ~%#¨f†™áEVDÊjÙ1r¨oî–S×E&nf¢çoy0¶Ð|òöÂûÓ°|eÌ÷ç½/^ OšGí_uú ?>oA¨rÍõùØÚé¤=KM4Õœ©çqŸÿíWÈ?ã_¬…æ_oCb°4V‹ÃçñGBÉ\&]ÌgËÅ\¥˜.æ‚ñ¨ÓçQj§È$["Ó3о_#“½c˜AÔÔÐ9EA‘¶X «©ä$™"Ñ‘DÚŠÀSFÐDÀí¿Ö?ÚÖ5®®JËM4¹‚hºÍ 7ñGÍT4•KæJ‰••Rµ&„ÍZ}c¹ùÎfs’¶ùææ}.÷\6ÅÜØYÛØ^…nп¼\,”sÉš~»Û¦PÉis4Á,vd°Ar™³Þœjž¯QˆŒj©Y+·èPKšyRž 9tÕÝÙŽºü&©ó=ÞÈEúš×¹Dì±O÷YȽ°b˜ê’#¯HmäÎwÏþ¦ãü™ÑÎKÄÑn&n˜ODH)(ˆœ6Þ$ YÅ36 Å.¡8¤³ÎùY·œæ‘Ó`Å"š6ñIZ6ž;52Ùw噟Ð×IÿÛ‰j¡ùMm/^‘¡ùR§ìë¼é÷gs'¶¼2¤}¸ÛwÖý¨#ôr½÷çZ¥V¬ØpêÜlMšsò¥¾ø‰RöÏ{ ¹ö_9úg|î¾ãôovÜOb¸"ѼR©Öë V«' Ä¢¡D<”ˆyÃ!“ͦÒë¨LfßÐðqº{Õ5ŒêBvMt NÀz÷È$¤ÎAa; zNLÍBüDàfưӣòð$q9Õ‡ÀÀŽƒãWz†!cÆê›!@³¼‚›ÂÏP)\O*Ÿo é²;½N/ ö‡ãá ™M䊙Bã\ "¸Y[­@Ø\9|gòãq7µ{”.× ‡®mÕÁVè »@ÌÌ3‰t 8—U%“ͤáÇÛ¯´ ö“ XÚ ‘EŸá1©".CÊg6 Ö9s”9*™€›ìë; ¤¾± o:Þ¥õ~À¼ B´ÍO\…¥`ô2wø"µ÷ƒ™î÷‡?xÕ,š6pq=—Ï‚›“ýíınfˆ…Ô)£NÊih³ÀÀ¨™8-g …%¬Ãv(:zõ%Äl¡ÙjÏwN˜|ã©Ðüåí é”úÒ{]ÇÑ„°ù¨¼ÙDóDؤþêÿ’-4ÿz[{g/‘Bãòyb©dA©[2[Ýn‹Ë¥·X F‰b#N Þ?‘Äâ:Syw¶x­ÕÞ7vµo¬½z£?s¶“Ä! ˜ÀÃE¤]CHè|¥gär×àÅk}ç®tG–×Í+íí8ÂÔ u–+à7Ð4êl.›Óãô<þš¡h2’Ì&²Åt¾œ+ÕŠååFØlºÙ˜¤}7×ʦ•`h“ËÕ͘P ,ì•/gÓù8vû]½†ÃãàǧÆÃ.-bt5>†C# 8ô4?óY‘¦0Ô16Ø×Kí¿@¼(¿:?Ù¸ðîêbÇ{³= äYXÁ·¿‹¹òÎøÅ7µ‚†=Å@÷:¤ä°šhŽu]Ft·Mö_#ŽõÌ¢@Ï9ì0Ê#"Ä3ÈùÙI(ÀÒ(lab‡Ç{Ú¾äú*ö=Q-4[í‹“#Á~´þñ‘Ÿ%ù ºö¤Ó¸`·þOoョ¢ bB5ghISzú— ½ûú+M4¡^Ð=ÃCûŸ^yñt_³ðÃ3ÂçýÿŒÓ¿ÙÁòÁ•Π̉ʠ29,¾h^µ¨Ò´z©R%”ÉÞ4m®½«W¬[ÂPè 43E_¡ê/-ƒƒPmÝÃW{GÛûƒÈÞ1LÛ;†C!‡^@Àµ—»†.^ë.!cFW6µµ`¥ÞÑÕhRh³\ágh:m£fÈŠ¢™Id éÃs ‡aóÍÕjs’d\;|sóˆK0ô0]®4¹\^«AgÐâ*„ÖH"ì y!iêŒ:E™ šWrþÝåØJΗ ˜F‡†Æz"Ž 0èïï홼rwí½©Î÷§{Î|ÄUÔå·°WÏL¶½¼ô⛣çßxÿU§œÃAŠœ§ ’šÃ›hŽ÷\™è½Šî"ŒöÇû¨“ƒ Ì0gjŒOgO£Â a;ÛÏ·c Ígh?xýI'ðj××€æºêÜäƒNvOñ欩ÆGÓŽÛ~Õņza>JšM4ßœt>ý™ècîÆ÷ßx곉~Ö©o¡ÙBóQ­wh Æ£§ÈXešÎ¤sø †Î"ÎÒ‘8bÿ0B¨]¢‰dWz‡šhzÑ„´^ê¼Ø1KÐóJè9vm`…õKg/wž9µ˜ô.çCG•Ûa÷žþ><‘@¡Qдšn‡ÛïöšÑ`”ËÄÍÜá¹@‡n†ÍúýIÚãn6Óåê¡•PµÕjµ^©®”aØbf< Fƒ?Ü€=`×l–#7ÖÓ÷v‹ŸTïí•nmfKI—€5ÝÕÙq¿::®µ··]º´¤â%ö%¥Ç® û–¢~KQ-4ÿÆÛ[hûñ‹oã|giù“ÿlz8ÇÑü`6ñ„ÿþk_»þ·—/?í½j¢ùJ¿YàæÑUgpæ_÷? •7sÿ»>~~­ñ{è¿¡Ù&X{<šÏÐ~5–x®OÊ7`œþ-)$‰ÖÑ38<ŽCá ub3xò, GBLâ;û†¥&{"âÊ%ýùT ˜ –²¡j!RH’Q7 _Ý:ßÞuDç…kýgÛºë;P$<*w—3þÍZb«–ÜZNn/§V ‘DÐÚ70€'?‡¦Ãj?DÓôh†ãé8xh*ùbµ6LÒ6}lNÃÖßüѲ ¤BèVªÁY3_Î%³‰h2û]^m› ÛV Á›ÙOoTÿp{åînêÆzf%¸xáÂQa'„ͼݬö»ŒÑ€%ueâî|Ò[ÌÊÙ`%*¦ý•¸5îÒpØ5èG–øS%-mä”l p¸ãÒhçå1 ³»A'²¯=ÐÁ;Ô‰ìht *i­ÁØBóy£yú?›§Aóõ‰“³©¯Œ:ž ÍãaóÁô×lô…w§…æÃoh>4Ÿwk¡ùWÝzÆ0ãD*‘%ìèêêéîíBpôì½ÏeŠìÙ¤¿VŒ×«©µZz}9³½VØ^Ë×+ÉR.’KbõÍ£Š6kå~eb®bÊ·œï­ånïTîìV>Ü«Þݯ­WÅ”O4i‡hÊM‹ÃjsÙ]>@ÓŒÃñƧNR¹T3lB gÐÃw9otVVÊ*+‡¡6ÂUPùrúg‹ÙL!»Ãqàhp؉Ñ•”ó-UÒÞë«é»»¥¯7’æ‡;Åëk™jÆw·ä¸S´¯†ÉØ1™˜m_R{úˆßš‰{JÙàr1ºRŽ­UëµÔúrjc9U/ÇËÙP>å X˜Æ,+i´ƒƒÔ±qÎù™¨†™5ñŠVaÝ-íºt¶·íƒþ+çÚ/ ]»xX—Ófmøå¹%^x‘1;Ñýe_!üáDµÐü›jï`-£ù‹Æ“£yÈÖÓå¬Ç 9" ? šÐš3´·Ÿ÷.5W~rŽôð— É<‰æ{?m“~UÃÞ§?ï§é0Nÿ–GÙ¥î¡~ä’̘ Ñ‘ä9,•KâHfø2‡UôZãaW1^­¦ÁÊÝâþVùæÞòíëõ½ÍòÆJv¥’tÙô‘åõf…¡j÷ ÄhVÉWK±ƒ­ÒÇõßÞ^ÿÝOn®î®æjùÈ¢Bxˆ¦@ª4õf{M—'àõ‡ý‡a3ar"Ð ‘øË3P‡†æš†6…*T p¶Ãµ™b&OÃ.©\2™MBÌ„£¹ý©W‰"c)éÙ¬Ä6r·6ó77s æF9Zˆ»ÿ¸øíŠ··ã2ŸCƒŒéw›¢[6á…p½VMn®d¶W³;kùÝõüÞF–°e¥¯äù¤‚˜E à‡Ú™˜5c’JzÒÀ™¦ÏJUr©R.YmÛ!åûo¾ºQí„”ÛÁ Cº\uŠ!–F4sâé±Ö`l¡ùeÚù¹“S¯?¿:÷TIÚk£š§ºÑ—:dA³my’ƒ4Ñ|qò¦¿÷ú͇ńúêE{Îs³-4¿)y×5ŠéA÷Žã‡±3‹J©Ënˆ…œ™„¹œÜ^+Þ¾¾z÷æúÇ·7woêÞÍ;µíõb)uÛ Ár*ðY©d@3qVsáí•ô½Ú½u(X¹±YÚ¨¥Šé€Ïa ÐÑ”Ë4zѲ´d³X6»ÛyóÎ@(:£ÉX,@™8u(iú3I¡.ÂF¸ ú@çX*;‚˜¡XØò;kö£ª›J!èçC^K&î-eC«Õäîzá`§rk¯vk¿v{ùÎõ•o¬Àúíòöj‚gµ…4:5Ú=Ù×ø=)eBËÆi–ŒñB&[+•7êµ­µúÞ–/YqϯzåuŒ9Ù]±pvýÒëAÙAXþQJ}'®Lj¾ì í/û?>Q-4[h>-šOÛƒæEŒ¤6ßž®<¡›'ÚäP÷ gO‰~Ób%ˆ9-Õ=׿ç¤âyö0N[c Ú{Û?¸ÚwöJ葉a­Zæv˜ÒqÄÌzþÆÎòoïí~zwç“;Û÷nmÞ½¹qûÆÚÞf®ªãñ°›Ç¦û 5ïg5/âØL‹É³è”[Ë™ÝÕüÞza§ž[¯¦jùh6æ±›Ôd†Åã %b¥F­1èt&ÃgtÚ›tzƒ>HH0  áx8DQ¨ÏKÚ„2Ñ„®…n`%숆ü‘ lqØúº;gÉø)n:ä6%CöLÄ•‰8[Àap.©i3Ê4î|ÀcÎ¥ü@a½’ÜZÍÝØ®ÜÚ_þð`õ£›kŸÞ— ;¿ÿþ›wVoìT €¯/C® €³£/ÐãF¥*¥'ŠæÒéJ©²¹º¼½QßÛ®l¬æWªE«ÄLjè›ñÍȧYí—Œÿ]2}œZÜ Êâjj Íš_²c­>ÍבÖçq£ÿÙi9ÍËS wÎñ><îæß=åëõŽ¿³y͉Ï>¼|ž‘éTÞ>3…æ/†ËÏð^¼âýÜ´ó5üÛc’W»gZh¶Ð<ý5j{7’L#± ÚŒ^£ð8—r©`¥ßÝ(ßگ߽¹ \~x°qûúÚ­ýՃݕíõÒÚr¶œe“Áy1Ï“«¸?+wÐŒømàf)%ë¥ÄZ%µZNVóÑ|ÒŸ »bòšÁfóDB¹J©ÒjõZpÓ`6›–Ãó‚ÀM·ßtBTô…=›€5 MFåç­ŒÁJ_8;Âîp“Õ¬Öiph$ŸESÎ ¬•Ǫó;ŒPŽ¥ER›½U°óØ4ˆ™€f:æ-fCµbl}9³·Ql¸¹³~ïæpùÛ»Û¿½»+:vªÛkyȤ‘€mà긡k3 †X¹à "ÙšÕ­õåM@V õeÙd`£sFÖ^@öaBýû¼þà †ßfµ7Âò-ï—ú}ù—»nŸ¨šßàvf¦,‰Ÿò‹Ì¯£\O•4?7ú«Ë_É}{ Sh®š¯ îЧÿèIŽh íMŠÌbžŠæK½É†Ëç™×_Ȱ õ„÷ù;?:ùy@óyHG½Q¿Ýc3°çfqDâ,ƒÁâñ$r¹L©T¨U'è„Èis9ìn§ÃãrzÝ.Ÿ u¼ž€(ô‚¤áàˆ„îCÙP2à ú¡ƒÛï…þNŸÛáuÁqt&#Ð<4ÐDŒ‘¦°|6C"`‹y, ŸÍcÑqhj|¬·»CÈ›S/ˆ}.ÓáÔ´¯˜ -—›õÜÎZa³|c» t~xcõÞ­õ»k=ÑÛ 7kÀk"â²U=møéLnñzBéTªRªmo,ïlÕ¶7Kkõtµbv»¬|ÁÄ^s‰" §µŸd+·bJ4¡¡ÿ-ÆšOÞ~=j;áæví­IëoF O²ûSõSÀÿŠ?¢øf¹C¶u‘™zon÷s±îîiѼ"Úüþ÷ßÙìEϾxžðڈꑓÆ]¦ï½†úþëÏòë´3|és}âZh~3ÚÅÎ~™Vcö¸XLšQ§ò¹,¹T¨œ/—Ó«µìæjig£²»QÙZ+m®×Wò°±VJ¦ã~¿ÇªZL"¶D¾YdâÔ¼ˆ§VHtj¹Ý¬ z¬Ÿ#pƂΈßî0ë€T‡ÁOÍÐhslŽh^ nJ ¹Jµ°¸¨Öi5½~Éd²Z–lV‹Ãv¤§Ýãjêôy mê?i¥¬tCgØv‡˜¹¨×Áñb1¸962BÀc§‰S$ž€ÃNaш1‡U‹F!xlºR.ô8ŒaˆÉQO6é¯ä£kµôÆJöðT¨Òõ†›+`å­ý•›{Ë»µ;ÕëÛ••r"óØ–U š@âIçMNg0•Œæs™Z%»\.SåR$›íF&©eT¬¼mÿüͨò^rñîaÁú¶o>­g>ó“øó«{'ª…æ7»T~@stN~„æ‹ÈOˆæ+ˆØ×pÍgÞ÷”øÍŸ·?xÇbf¼~(ïé?* \š?ø¼5rê÷ÌCsd3É¿¼J|N“oÀ8m =hX2Ycµ¸£a:•bÒ«]vSÐçHD¼¹t¤˜‹UK©•Jfµ–«W³°R+¥*…DÑ€×f1iEöèð 9šiblŒJ™æ°B[%—˜ ‹ö%â·-éL:•\*d1¨ƒúÐXâ …:7lj‰P*ËdÇéÔ õæ%£ÅÜtÉn5Ûmà Åi·:6—ÓîþŒQ€²¡¤ 6ÂU‡:­f8ˆ IV(‘°ù|<‰482:Ø?040840Ьz-³³YÆLN@þ•KN›ÞçZŠàf>ª+åäZ-³±’Û^+îoU€NXîm–wÖK;ëEˆ¢å|’©Ë¦WÌ h+ëô:›}Éåv†BÞxÜyb1{0$Vª”4¤g~:¡aT­ü t7 ßñË6½óËvaÎÈ1qpÏ{0~ë[ß:~Q¥R}ûÛßnkk{¸Ï·>k£££G[hþ…´W'<Ç“æB㬛?ï=í¡†Œ·¯‰—/ÍÅ N¹¡Éø½õgDöÅs“§noã/!šm¤…&šïàlGÛ!fš} k/ž?ý7Pþõ_üé­7ОSÑ„˜ÙDóåËÏëg¾5N÷÷÷ÿéŸþé_þå_Žw>±ñÄh=>$›=®ŠÇãÿðÿ‰DŽzþøÇ?>~ÌC¾…æÓ6ar¹©äì Y·¸°dXtÚM~¯=õ§Á|&VÊ'*…dµ˜*’Å\<› Å#^‡Í¨]\`3éí¦pÚNAõ÷÷ã0˜2 üò8*żV­XTÊÔŠùy±€=GŸÂaû‡G¨I<‰U{%:¦æ‘:h¾Ž>ù[ϲ­Ç£ÙA·ÍÍ6Wz ˺n÷„·ÂšÁ>ìæ^¾2b{üŽæÒ_xðw¦‹»gûe¯ôhnöƒ™_ ô›G~¿úãÑ|¹Sü¨˜ùçBó…^xx.èøÆãÛa´îíí½ýöÛÿþïÿ^*•Þý1hžzC-4ŸîÕæùK ¾PiZÒÙH$’ÅœãrX±pA1o2h¶%¯Ûð9C~w(à†ØbÐCTùÜ9mdxØë¶DÃnn•bbcµ¸µVÚÞ(Œ#&@Iô$z591>Q¯e6Gihïìî™@cqD›ŒY“:Ç¢³8 ç1:eb™\¢PHdJ•\­ÁÐF©Õª´Zµ®ÁèbƒQ£ÖÑÒ¶BÐv„#ðÅ8 ÝeÍÓÕzigcï`ëæýÝë›pQoÒn®Wv·–÷¶WF†ggHB>[«–ƒ›«Þã4‡ÎDÔ›Šûs©P!)çãµRªVJV ‰r>\‚§É(¼„°@½FìBh½Ò508œÇ’p3t2ƒ3=Ç¢0èÆ—æ]ù€†êcLIcòYämRÍÀ¨èhéô8Ÿ02Úqáù=Ñÿðÿp|ìœh°TM§ÓÇG“Ífc³ÙšÚm¡ùu¶7&>÷>Ýo:§¿ü1Í'wÐ\OÛŸö&fs’ö’às‘óÝqQÇ\ã†Æ5'?à b>>f>a;MhrÛŸí·ÇN$Á‡7žºŸÏ?ÑsccãÿñWWWaùð.§ÞP ͧjïž»D 2„ j¹Þ844¢øäb6Ñ|7Ÿ$iGóå ã¯\%€›Gh~ÿWWŽbæõϾ-ð +þ¨£ýæßÀežM‡×õu>¿?üátÇ7ŸM…Ñ*‰ŽæNôüîw¿ /€›“K£yê µÐ|Ú6‚ÂQØ|¦x^¬Öâp¸©)Â4yšN£ ø|Ù¼T»¨Ö¨•‹j¥Z¥XPÈÄ"›Å¤Ñ¨ð_èÐÐÍ¢úɘ¿”×k¹ý•ƒýU€ãÛ›ÝÙùôÞþGîÂŃý5pú„N •ÓÞÕ;Œ@N`p8âô™B˜™%ÍÒ@OJƒNvƒN.ŸÅpBnP (Î çeÍ ŒJî3ª’¡‡%mLÆÊ 3˜ »3ØœÄ šÉjŠ&#Ùbfe½¶¶UßÜ][ß®¯¬/'³ Ã’¾RÊ,Wó==Ý8,šN£ˆ…dÞƒ—%*½ñëtóÄ+ÕW_}õÄFNw|´ÆÍÍÆ[½ßþö·zÂU°Â`0._n|äöÒ¥KJ²Íž-4Ÿ­•Ó>¨RÊWLyµ Âñ jÅá‰Düñy\®T*‘HıH á“ÏcÎÍÍÌ̬ÃÃ#1Ïf1€ƒ©D RL®¾Kxçææ½Û;¸ûÑÝ{wv>¼µ b¦[ë•J1 ¹• Évz`@a lb ä#:ɳ:ç¨s,‹Cgsç8<àÍ‚ƒ\‘˜'’ðÄR¾dþ>  §LÑTÞX ¥2n#] `/—BŸ{û̻հd ÅB©\ªZ/þ’õJmµ Á3 – ©D¤XH]»v …œ˜™&ñ8,pS ysqÁbÒ:lF·ÃÜ Óï%ã°Ò ºÃWÐçð{ìð𵋠pö-äâõ哌´«¹ËqóZʶž¶mfì[YÇzʶ𴔯€I²Ï¸ÎXgö°—®žë¾øþŸe¨Ùôz=ŒwÞyçáñËårOÔ-4ÿrÐ<ºØ ›€æ©aóQ÷åÑ„6…:åD51gö~`ƒ›l“ïÝû³2/5ysâí@sLù`ûÚWz￉yù´³|*M3fž!ÅÚDO†¦ãOñ#Ô½ˆŸëBLšP_çSüï|çhBõh¸ßxb´ž={ö…^XYY9êytŸÏÿû¿ÿ{‹uêÀ?Þ³…æSµtÄYLz7kÉ›…ƒ­â­òF-ØFFã㨠ä$„Îéé:B'$KÚì,.âpx€µ`ˆF™—lV’M…—«Ù­õ2øxû`êÖ›××á"ÔÞöòÖFuu¥P.$ãQŸJ9ß3†éî‚°9ŽÆ!±S“8zŠzâI3„éfêdÌÐçf,êe°ys>“+`ò`([ F9B1 $I€KØÎ`sgçXÀ.‰Bš¦œ»x‰43³¨×:}î`4”ÈÜÿêÚx:ŒÚ\vѼÄé´y=N«Å4<<ŒÇaiÔY6‹nʤ¢E•\¯U™ ‹V³Þa5ºf(çáÇYlfƒÅ¤[2hT óB—É  †,r!ïÖ Wâ–Œc3ëØÊ9wò®ƒŠo¿äÝ-ºwònÔgÿA1~G4¼ÏÜå8QZ"´Ð|’öÚ¨öQW5Ãæ©hþ² û뎯àëà¶çÁf¼'ïÃzéþY»g»Ç›n>Ûñ»¸c“´¨fÒì•UOíü0šM1bæÞÃSgBó]Jåñs³Gh~Í“´ãôoö±ÛMªBÒWË…®o>¹µúû7?½µvc³5 ¢á᱑QDcpr%~І¢ÑØÑ±ñK—¯P„ tdi tå3ÑÕåüÆjig«¶¿S¿¾»z}·+{Û+»ÛËÛU¸ T-dc©xÐì¿Ø5402>:F °Gtb¦HŸ¥N*‘B#SéÓ´9 9;Ǧ294â'ƒÃƒšã‚¡‡Å@ºdòø 1LȪXá p($?‰ÅKr­Ñ`qØî³P ñV§]¿d¢2‹j•N«Q(äýýý“(Ô4™nrØLŸ+›+æU ½Vm2h–ŒZ(£Vë4JZ¡VÊDBƒN%LMm<˜±^ó;ãÕÔbæ­œk;ïÚ)¸÷Šž[µÀí•ÐÍZà ¸Qñz^nÞ•ŒÜ ß ¥É×Zƒ±…æ¶ŸµÝÿŒÿëèàýøÙ?{’ƒ)çSó"Ùüø<_õ8š'fh!fšA‡¶)Ñ3£y#¹HxÀ1ÁÒHOtÛq4æfß$m=ÉÜlÍNAêa1rþ…h6Ýlý«k¡yÔK‹ÅT¢åíÝêÝë+î/ßÜ.o¯d21·×®Vjžt¶¯h`pdx14<64<:84º½¿¾¾½b¶Iéƒ*—IlVc8èΤ…\¼RL­Ôòkõâæzus­²±Z^_-­×K°¶— Éd<ð9M<m0-êM‹£CÔÈøäzN ñH,aOÂÈXâ4žD™"Ï ¤Y:™Ê@!EÎЙPrh£æiV¦i â ¸„Ð:ÁÃцÆ=ýCúG Ëåó óˆšgÍ+•4&;QÈÒsŒ9&yš‚ÆàGFF1hÌÔÔef†A§q9,¡€' AOx¤ ¹T!“ºT"’ˆB>—ÇeÏÎR€ÚÁÁ¡É‘o&lU¤Ü‹•ˆi#ãÜ+z!`‚’Ö#Ÿl&>ÙŒ¼ÿh=v½ì/ ÿµ0ñ'ò ãŠG¶9­ÁØBóÉ ùÓ ”ëï?ù›YmìÓO¼ùõ5ÂÓ¢ùƒWÚN ™áŒL¡F» b¡ù³váÛÄÆ'Gg…O+&ÄÌãh¾~ ý0š'Z,›=~‘«<9 b>œ4_C>øböàæ­ãWCó~~G·þ±µÐl6zÂiÑæ¾j.¼^Mm­d·ë¹Zºš‹$CN½z¾¸»WØÞ•Ê¥v—µTË_¿µÓ¬½[«›Ëé|òüùó°€ó’Þå0‡‚îx4J„óÙx©ªUrËÕ<,«å,T¥”©”ÒÙtÔç±[Ìz‰˜žDÊé\1•É'zFú†ÆF&†ÆP#èQÐs×Ð3…Â&qDôK˜Ægš†NMϦ’›E¡‘(4XÁ“fΊþpip9=‰¸/•”,..yüp@, ý!„»ZKè¿ys¿²¹Ëg<ÑpgWßÕöN…Ù284<>ŽÄbqDa–BaÐéÌ9‹Åd³˜\›Ãf±Xss°â(…B&“'&]·êÑ)ä N:0ËâNU1h\KÙw ˆ–·—C­Ç?ÝJBžµàvÞèõós^>* šc;W½­ÁØBóÙÚ‰°ù(4_¾„yZ4ßš4Ÿ£%Mº9q„扰yÍI¨ûW=ÊMœéÁ¼èûÓÑãs³ÇÑ|Ч{”˜¥ú¸˜}ã¸ãš1óšÇÅ|ÍS‹Çmýk¡ m|lÄiÑ…<–DÈYÊ„ªùØr!^ËÇr Ÿ×a Ù…½üÖ®B¥ð‡}ñˆ;õ$cžt 9WÖ«¹bæƒsçh´Ùùy±V£Z2éÜ.k0àŽ„}Éx(Šr‰r1 zóI(¸ølVôçp˜ƒýZ·v×jõR"Uª@gï!ƒcÈaÄä}=QØñ& XŠÆ“ E6B(ar(ŽØ”´Qp'*—–\1à2)’µZ¼R‰•Ë éàèÄÈ8z¬1Œ…‘Ø©ajã`u'·Ræ2Z—Ûè˜!s(ÜÝÓ;>D£1qš< ‚'I¥ÎB®„u2‰D$ñ8<îííß-ö*ÁįJHó$Q»20Ô“¶­œûÖr „ºsX7ªÁÝ¢w5eo¢yÝÅ>ðpï…°d¶¿ÞŒ-4¿|{šÏÐ…æñÓÐãÃGïi>ÑËõch¾†¸âÙÉS~”ó¥ÞÈ£¢ÒiFóán fÐkƒj^ü3'Oÿ4¥öûÝͳ€Ê•ç½ÔüyŠH¡·þQµÐ„ÖÓÕ%—ô‹ ‹q1ìµÅC®DØ {Ü6ƒ\Ÿ!Må6w._¹òÛ“1oµ”¬•“Ë•Ôz=¿¾’/b©¸O­”€&¼¤R±R)7´»Ùí²ù}®PГ‰0è™JFR‰H"O]‹fQ)•ˆH$ÂîõMÈ­wöö¶—W+¹bšÍe]ëîïìêîîíBô#†Ž‚¡ùÛÑ ôØgŒ‚}(!Š6 ;…ÂVŽT¦s8Cù|¢Z+nm¯,ß8¨î_dsžh$”J^¸|íÒÕ®«}Ë;[·Zw¶ª[ëŵz¢T(‚¥J¨ U Wj‘j­§·|…DN¢PèÉI ŠÁà`‰BMBîîî]I9ëi×jÚMš²§­*~Ð,Ïøtµ˜u-í7AÉB£¶ Þͬ»žrC¦”[±ô÷qé%dŸFÄwƒÂšª öµÐl¡ùÅ“™ÔÄ£®:?€z†c^ xOŸFh'…K°ò; ¹YÍíGaÐTËøgºÞ#>-š§N#d¡K³î{5wŽÄh,†ÍÅ”©2åü†¨]å3J8dôc?¸ü"$€™'+¯ÆÿÀ/Æ!š·Gó3ú3zDÕxžÝ–Uoæë>Ç}Í‘_ýäzØ4!f~+4_tpKö Ä _ëÀØš7ÞЄÿâ pÏnãÞG ×d¯ì4§÷Þ0PÞs<@sÐÍëaó_ôoøokѼjÛ[Û;(•LÚ£)$‡IÃ…Ë1¹˜ì4KŸ?êýáòÅ>_<9º|·O»Û*UËý×ù, G"‘™,–P(”Ëe—ã“hÍf£Õj¶Û-‹É`ЩÕ*ØÄårhrµÀd“Ú=í^³sÔˆYm”ó¥¬Ëë$âwâag!ì6rGÕãN©UMW‹q‡edbftbvljnlj¾ŸC¿6tj~yz ]YÛÁpä*K ìMeÂ…ƒd­™n´ÓV²Öð¦²r£Å‰D²ÙÔÁAº\NWú•,!cúq»ßÏ“ÉÒCð±p|Z: Ù¯òÅ£âéE®w’îôâv¤R·)öJºSÅpk˜.5s_ÌÒJÙ:)gsy–‚Ù3‰!ݪâ¹ubˆœ!«2îÔ¤¼º”J›tkî}¿IfSópÛ+gnöC/÷i€Óžƒ‘VbàãÍÛ´_­ößfókÄsP²þûþ»ý·š¿š¯j¿Åø^@ójÓš¿Å…oæ,ëżÿ| s#šÐT‘âË+½þ|¤lˆ™€æ?ÿÛÕ¿»#}cØüéŒâúâÍÂæ°‡vˆæUS[íöptqaiaa±Ð=,—ON0˜ŸíršSñ`«^8éÕ i>yxuqÚ>;n÷jíF±RJÅ£>ݾbs ‰D¡ñÒÁápʼnT*•Ëå …B¥R‚•b‰˜Çã‰,.c<ë)7}Õ¶¯Öñ׺Ž|µÖª+…L!KÅR~68lNËÏš_=>üêÉáïžö¾|Ü­–6“æ³ûcwŒß}0qodòÞèÔý±éã3¥óÇ¥ó'Pë»x W(5Xt.¿%õe ÁüA0Wr'ÒZ§—Ækmv«Ïï …]á”;uE"6ÀèrÃ&<žjw!læN‹'ç`åµ:—Κ¤Ô€—rÊÊÁýJh¿Ñ5b†‚Oå×ó´âòÜ$ ±HÃ!y4œŒKÑŠ™z)Ûªæ;uâDQ³¼_&¹Ï$3ÈØbqfü~EOª(y 1"Fë(+?ð‹qˆæ·Bó*lÎ2,7ÿÅG¬Û£9ÁOñÞÜëx…æÅåmÍëh^uÏþzYòò7O¸%šÐþfäæGm}ݧ/¯„˜9"hbæÍ~ÄÞéK½"{Þq=>6z#šsâgoUúß?BÿtZ°¦k¾ŒæÕâ‚æxøy¢yÕ¶°xÝéˆÄ¢¥r¶Ù.UNN+§gÛ[›"!Ïí²¦“¡êA¦QÍwZå£níø°~Ô­vÛ•v£+ I·Ó¢Tˆ—VWÖ66·Q,žD¢ÐL(&$O e0˜4ÚžÜ2IJ¾Z7vx‘:{š}øUâøq Þs•‘DÔ ¸ýÓ˜ŒùšÕþ°•çGµ§íÏv` €v›…\*´»³U8…Ü÷¨xõ µ‹"R" Î¡ Ê"ß‹YÅåö0mý¢üªúC'ò§ÃØŸ{±Ó‚³5|žT/ÎL Ö—ñ¨u:a‡OÇ‹™$%o_Ì4+yVµÀ¬ädXäÒ°˜­U ádoA¹8[æ=„¿H^¢9Dó–hB{oÓ|…æó ö¶h~°c~aŸñÞ7¾ aóåóhd¼ŸO1^^¿¢Ì}4§e5ˆ™+æ ëõöo>Jxþ¨Ï8Y÷«ÝÎÕ¢Q¯yoú†û?½»nèüÕ¦Ð\~ãíó‹ËWb^GsŽç~ö~àh"ñä}‡ËÇ*ÙV§Ô;.Ÿ–ŽŽˆ5@Óã¶…CžL*R*¤j•\³^j7ÚÍþ; `qðš³I+r¹*ÍÜÂòòêúÖözK ’ DL‰$ ™B…º‚!I]$í)·ÃíÓøÑ£ôÙç©Ó§‘Ι·ÚY=V—ƒHÀ8m†XØS;Hµk¹ÓÃÊã³ÖãóÖ£ÓÆùq­UËf’™˜[x&æ£ÍíM"…\*Ô2£Õ`²L-.n¢ÑæžPÎUꤛÜìä)õ°ˆ¡qˆt+äH\©’'WñåjR#Vk C ÁÓ˜ÑZ3Ñì¤Ú‡ÙÞqþ=œ]\ÖÃAɘ÷>û ¸œs<­þØþ¹¿ª/›¡Ç_ΫšE,Ím¯-a‘Å"ct¢”MQ P(Ì èzxìÌÊq‹ (ü¢pg–Ž_ùð~1ÑüVhþ›»ßx9¯øçïÍ«½¾¦Ýˆ&ÄÌEæöhþdJÕOµ“ÏÆ7ÿŸú  1óe4¯îfÂæš æõ˜yñõ£³wwd/£ùóko„¸BóCjLÏß`®Ðeg>#öŸDú×#†hþuÑ|Õ¸Kÿ•š¼§uz¬Á¨'Ù¿ -UbÕx¹¶°°Èf1 ú}›Åèó:cÑ@6+æS¥Bzð½Ë|6y]N‹B.¡ïQÕNÆå¡0èz›ÉÛt3è‰í>÷Æ&][ßBöDV¯&´çk¾Úa¸}é^D:çÆ±=WZÜrµ‡E[MÚ ÏQÊÇké^»tq\‡¼yrX9êTKÉdÔ« 1“ÍgK“ÍŒúãéX"3¨øø« ³›+ ;+˜mµ1 “MÁ2I»?I»[ØmÄÂôÄÖägØ…û¸…P˜ùû›Ÿ/Æw Íwä:} š/·5‰ÿ–'ùpKñš—ѼMûõ²äç Š—cæ«Ð|MÛQñúgc—üŸ ¼—Ñđɯ:v”d!ê_æ¿üøùßûýãQîo¦Ñ÷Iýþ¯>Á|Lo€˜Ïº…ýW¾·,¶R–ú’n¦Ö!š-4¿üòG/_••¶CÚ“èÍJ‹Ãà ØÂqw"ãIf}éüÌÌ,FUÈ¥ûû*«Åèõ8âÑ`*|ï2—M„C>‡Ý¬×iø|.€·DbP±\ºÒmÖ»­Ó^óä0YÌy£¡ÅåµÙ¹¥ S`ö¨|qK¦ì>hûÇæ‰¯Ös›†Xž«·Û£ÑݤI¯ñ¹­ùL¤RLvEà²×>hÕòJ&› ù=V!Ÿ b—-Ý~W*—¬4ËÕf¹r­FfWæÖvVPøe$~m‡8‡Ø¹36çJæV·–7ÑkH,b¿&laHÛ82 OLç×¶ƒ¥J¤R†f÷¨ßC{r~Ut,¦d&ì²FÜ|˜±Ÿ\ $¸9¨ÏëÁ‹ïIÞÙL˜͆=5ö±4¿µº„Z_7 ;›P8Ô:fkmkuqma–¸1‡]›Yÿdmô£•‘g>ý»á•ø®¡ùî\§ßªMRôoæõ¦£mÜæ$Ûˆ%@ó‹ªïMhÖƒã×÷Íþòþ³g>"g~5õbOì hþl)þÂÿòƒÝ M~€fŸH¤ÿ Í\¡ÿ‚S‡ï¿ßÄÄyχhþµÐüÏÿùG/ ÃýWisˆm*_BÉyJ­Ô`Õ:ý:W@ï ªlîm$ŠÍfñù|…B¦×iÝ.{ à }~Ÿ{ðuK •Çãâñø‰‰I¥AïF’Å|¹Ó¬uÚçÇ‹Óæå˜ÓžHˆÀæmX,­MâjBic¢dÍV-éŠ1YÒEs2W˜ T¦[­­Í …\l2ìû=öpÀ•Œréh&ŠG|±°×ë²j5 ã xb©XºÎ—såÆA½Sk6ÚGÍÎqûð´Û;?<~xtòð¨{Ò©¶*Åj`&#ÞwfuãÓû#S‹£3Kã³+S‹ˆ™¥ ˜ò”*™Ñ¤q8ј3wÆ®DÂèóçÏ rGgïÿú4 Â"g¢b@ nvR¶Ó¢ûQÅÿ¨ê‡éòí¦í•ˆ!b‘ÔmìžGð(,]ž›^™ŸÔÒÜô“¨ì"$!¡–4”šGÑÑ,Âfeïb® ¯Äw Íwç:}}ûñÝÝ7º9+-½|àGHÕëÑ,èn~dô·øÔu4oÜç_ÿæÁ÷þ›¾ &´^¿ïô—KòßÌì®ì×7*dbi p…æ¿C”_>' é(÷ží°òü`@s”¹BÄ¢ù×BS§û\Œ0}þ|½;>»Kea÷8$¶ˆ)QIôV©Á.5Ø8òý¥åU2™²G§ƒ›r¹Ìh486›Íb6 ¬áp8 ±¾‘hvUFƒ'Nr€f¯Ó:=jŸŸ4Ž{Õ^'˜L輑(Ö°öm|“Gê +} •?)÷Ädî(×èÚ¤pª×VW¹–B.¿-&Ëa x>Ýå0C¦Bwmm5=Cóàšn½ÕûͳÃã‹>š0…Eðô ^Ê•²±tlfmsK¢$|6òñ½ñÏF¦á×îk•ViÆ"å2Ønµ3íL ^_îè4Û;ùøý÷È;+z1Í­åeܪJØnåœç%ïù¦h/ëh%-¥ ÐäQ-÷4 z–>ŽÈžÆäŸÇ_Ä0CÇ­ËX8½˜ê7 Sne%jÌzÕq‡\Å#ø8ËñÝAóºNߢ nn¾ Íq†û6hþòÁ Êpƒ¶¿ÚxŽW"pó{kÇ(–WfaÎ+¿òo~õüA#ž-tK4û3Û{“èbæÍÁ³@kšƒWýC¯Ð„¤yM_À}…æGæ½]åð ý« ùå—ý‹qÐóó.\Œ »ˆý¾,õ”ò±B6’M ZùÂzðT‰ÜV$Éä2©T 3À(¶‡Áà66·3‡ÇkÛH•Áà‡â…\©Ý¨¶Kˆ™ÕÃÎA»éOÄ)Læý9Ä™ƒáʱ<I¬¥)LÌ};Cm¥ÊŽ|dq³úðqíác,Ë`й6ŸÏ•JD*¥\­R(RHµB…Bzƒ^@3šŠ¥òéÜAî þÍöq»û5šÇ—höÎ{°t¶z-Ø3œ›l&ª@Êß7HÍöm<‘ʨlG,*–RÍVùìì.Ÿ]ŽsÝ^¦Ýõ¤2ÉÖὋZ›Ur‰f93b‘æ}ûå¡•´ö²Î£œ«—sfí¤­1fItBÆîíÚTìrÄØÍ:Ï˾ ˆ¨ÕÀÃËq6OJÞã‚{x1¾;h¾k×é íý]Ï¿úðyïÄû3è×ì<ÁM¼€&!önƒ&B¿ÍÛ´ëh~ˆó¿€æ/'nþgˆòûf§%7„Ä_Þ_<ô²˜ƒbbD(˜ß2µoü'þÛO—¶ö/£9¿¸ n‚˜Pk"ïúþÁðòü+vÏþ—ÿò]ƒ^—¹VN·…£nùü¸ñâ´ ‹ùLÄŠ­!67·QHšvRið˜Áâ›Èñ‰éTçÐÜØÙU ÎP(šËf«•l­š«×òzª|+äí~?ŽBu¥óSëØ%ÌÞ"š¶‚c¬“¹(¦d‹&XÅ3§7p…£“ÒÉYéä|jzvk ‰«w1‘J¥Òéô½½=†FïZVOÐŒšÑT>•-õѬµ¿Fó¨Õ=éм8>ºDAÒîI·Ñm$²I8œ+äó4‰ÉŽg²¹Jµ9 ò½cøŠÇ§§g€æÁé9,æÒí®Îã — “#òŽ‚C´«¹a‹4áPæ}Úƒ°á d(õy¿6åRÁz‡š¶.LÞÏhi «ãæz]7¿ãⳈÛn¿Ô÷òîÓ@y‰fðI#ü¨º¨Îüõ¸%îP Ñ|Gºgß©ëôe4¿±8ƒ^á¡^Ù§DüFFûtGq4=´ZÊ7Þð‹ãwGsF˜z šØÕIˆ™ÓÛÏ þå ãe71óÓuæ¯Ço½…¨|Öaû›9«Ð {­da¤LÜÚüÔõMƒÛšs{šß# cæÍA[[]«}4+O›ÏZÎÚ½öA­œ±šµÖhri±²º©èÜFöã'b}ëÁÈx²Ý ¹…ÁI4ûz‡ÓRÉP&Îf£¹\0•öÄb‡s½ë/VÜ™ÂØ ztÓ© Ü"š:·M_E'íl§—;<Î÷N ¦§çoy]_¿äÝöffçÌ€f f$ù 4ëzóšG/¢yØ9éÖ;t!ˆ¥J9W­Ÿ\\¦ D½ÑOŪõLç0wxT胛Àwåü!LÁÍD½åNfüÅêÔÈ]Ò‚KÞѨv×£„-²˜]³)"VYÈ,ñê„V%[Å#³ÛA)>ª$›&fÅÂ.›Y[ËÓûBJ"jÔ1r%  õ¨ü¼yÚw3€<… þ~1ѼMûÛiÞ hNâåßÍ7tP¿Íó€ùmÑüå¢ô[¡Ù «Ë.ñ󤼸r#š³¦;ëÔŸŒ2_%æäö³»AÌ× 9óUhµ;BB9DóYˆY—I†*¥ yÒ«=¾è>yuxzTo7б°G$ä8’YðÎ_(‡ÊõHµ«·cN¢Ù ™îOÌ-Ò8|®T!Ù×i­v“Ûköø,^?Ô¾ÕÎIîŽNÀ!¾|N¥÷‡ßûdìý{ÓŸL,Ù" O:(”ãõV²ÙMµú•nuƒÅòýc#£““3“S³Ó3ó4°3Û­î€7í£™ÌšÙR­ô ÍÃfë¨Õ4O¿Fóü¨wÖGÄlw`ŸL)MÅ V‘JžZ^cJûN;•ñçŠÑJ=Ùì\Ú}pƒ˜§ð“„ª¶h2éôè=ÄÂ4fs™MÚ‘²ˆ*>E/¦›d,£Œi0t¢=%—,¢ciØÍ¥cÛÊÙñ±a91¦$G$ÜÖ’ß(N{4Å¡™²CØ<룀Œùy3úe;ö´}ÒˆÀb7ëŠÚå?ä‹qˆæmÚO^úÏøû3»q¿yýÚ;T¿#š7‘SŸ\_ó/ß_»è扸†XÁP–ÀÕâÉø*4?E¿òû27¢©qM¡Ô ;CƬù^y±\‰ ígŸ-O³} ‚î¥^óÌóDLY¸;¿¸ bB}„`^ ÛÍËf1ëR‰  Ùi–NOõ> uóÍz!õË$G2wÍèKhfOvÉ{$&—Î ”¹Þ¤ì¿oÇ S®L¹K¢fOÍC›ÎtÞŒ¢© ®J«¶» ¾°-št¥rÁR5VkÅ¡ê­P±âJe-¡˜Âê\ÚÚq¦‹»8É*¦o¢™¹D³z…fïk4ÏŽ¾F³3;í£v Ð,öÑ´{œl>wzÁ’©ôÞ˜èJfƒ…2¸ Jf:½l÷¨pt É7^oò%s(ЦìÙâÙ¥™ñµ…i¤ì"\ZAÒ¥Î÷Ç ³‚ŒÏÑlE¿êÄ¿lÇ?oÅÀÍ‹jl¢9DóÛ¢ íï¦Pà¦I#ø^ÐÔú_ý˜c;^î››{ÙM™;ö*4_ÄîµhbW'h^¹y…æ #ž@Ò|š3Hâ k^…&´˜/ÄL@s3¡†74‡h>ûËpeÙlÒÅ£þƒ"$ÍÒa§VÖ:­r£VÈgã—UÀg;R€fñ4ãß@ót ¸@b6w 8‹Ê2R:_Lfñ8r¦wš>‰ÁÆ×Õo?{podt§1™¥Ühë£éûhf/Ѭ^¢Ù¾ÍÞ@Ìæa«ÞmVšÕT>ŠG iªõûƒ/¨rûguÞ 5’¯ýùƒhµ¯·ƒÅŠ7S€l DÔÏ rWç‹h½a;´<;¹:?½¶0³¾4»µº°¹<¿±4‡X˜™0rç“åÑO¶fîá–ÇIkSŒí9Þî’·²27¾‡ÛÔŠé³4é֔¦zÂÖ+xÍ‹jð¢Ò¯³rð¨èk§Õ¸v¢9Dóí 9pó;¢ 1óh—wY…š+ÊÑüÍý™—Ñ$Y_Ääõhþl„ðš7†Íë}³¯OšË3/¯üø3@óÁŽpHäÍ«6;;'‘ˆô:Íjòy¡ ' Äc¡HØ70ZÀçnnn¾ˆf­«·Ÿ¡ÙOš'4ó'PŸLߟœ›Y›]ÎöÎ13Õ=†ý!izóe[<3³º½ŒÄm“è¶«2HM SqY"½•§6ÐD W²Ž!éü±‘ñ‰gh*hzÍÐ%šéK4+—hÖ»F· >6{íÖQ§oe¯ V¦r³zP¯ä+¥x& ÇšíV™J9¹´Ž"3à`+´`´Î2ãŽDÖÕ·;c‹¦ ÿj\~…Õ%Ø7>˜žW92«[ltðöMîNŽÜ›½?9rüÁݱ{wî~òÑaÆö´æÿóQ|úÎo“w¶g`—Æ)ˆi2bjifŒ€Z“sÈÎ}AÔ¡Êùõű³6’ŽfÊyUµ¸­2¥½Z—V¸»±8DsˆæÛµ1‚fe¹ÿêÔ5á7:3ÿv}K4AL‚P…S8ÀM@“)|þº '³ æ!fšãc£ƒ˜ùF41ÊÿzÍAó*÷®/^¡yÕ^ƒæ 1ó ÍÖ æF fæÿ·_ßÐ7ûáÂzDø!š7wbI\.G"k÷ÕƒÎb6Úlfëåð— …|ƒ±ÆR×Ðl„ûh¶n@óøš¹c¨s04{4³3SãX£(Õ<¹{"cDg;ó»ëX*ž%Ú«èõ È<)ž%DQXk»¤»“óŽpxljz—@4Å ¹Ájqú<>@3“¹t¦”+TJÅêA©V.ÕË YiÕª­:La±X+—ÙƒB*Ÿ‰$cž _k2 ¥’‘™¥U4aO7é•Äh׸ûî ÚáÁå—Ììé,`:f-µ¸E;Wmb)tT‘’À•`™‚ |†æ@ÌÞÙUÌL¶¢õŽ¿XugKpBHšûžàèÜÚè‹`¯F“(ֽݯ°Ê³~+4~wée4Ǧg^æÝ]劼rxÊOçž?%u}dO¦ÖyÝÍaÌ¢ùš6h¨Xol|š·oT:¼ûžÐ«Ñl_¢yùñÍS 2{ieö2]úc/­ìҰs¸Ú†c=¹G2ç„“¯om(5 —Ï™Ì%ú•ÇÓ1‡Çž¨Ö³­N¡Û=K½ã\«sod|}…Æh,¶P&—©ÕrF©ÕjŒÙd´ÙtzBÁþ,á/öG#X4ùû\]? «1¤*‹/ØÅ&–¶¦VQ34ð7¹¼=µ‚œ[ß]F!öÎ v`ëÈìêG÷'J4‡Þãm“Y &h+§m빿’65zÇ©­ò\@ßʸN+ÁßõÒ:Íš¿?Ê|ÙMUBœ'æT)¸¤•ùéåùþàÔÛ"z‹N@s(X“,åP$lŠˆI0ˆ@êÖêÂüb¢yû†2•¯£ù²›#ìì54åo ÂæÀÍ+:¯Ðüå‡÷n

ûÉo…æ†ÐÎ0¯Ü¼¢³ß¥I²„¢«Åÿå—Ï»dßøÐ÷…&´%ah€æ iBÌ|=šÏþ~øMµó“IÙkÐ\ç~úÙÊPÆIó/4´ßÜ:j›DÇ1ù ™š¯5fд\¢éʽùJ T ÔAÀP¹®´"ÕöÐh½ D£—VvaÖƒ•°[ð á/Õ½…ª'W†óÀÙ–×VÃñp"›È—ó•FùÙ^_ERiVRùT¬\‹Wlщ›|¡ÙÅ•ÕM$†H¦sxLž€Å²"¾D €JTj¥NwI§Ídw˜NÔârYÝn›Ûc÷xllÒŒb…’-R¬ äÎ MfsÅûºOÇçïM¯<˜]1Ç—6ÕrÝ¢ñ8ô?péʧÅl¨RˆÖðsuêY›Y-7˜¶æÇÈ›ó|üúêü¤FDwj…iŸ®žr¼§åÐE-r^‹œVBǯžr¦¼:»†ÿÔIû“Ÿµ83µºt. 7V¡v6VQë+HÄ` ¤/ÆIó¿æœ ü7ÜzÜM‚½òÑŸò=&«A®’Ü^O2õáý)2#0Ýv}ØoM„]ùTà yfe#{Ô.œtK§‡Çb)&w×gF‹ëK3bÑ ç„íª|ÈTŠZkIg3ãîæ}í¬·‘vÃb%nXäñßÙÿ1Ìý‡(÷ÿŽñþ!Ê››Ÿ½¬éñÑ'ZÏ@hh0ËñBóºNßÍ0ö«°ùú†Ö¥ÁM“¦õ^¡YVc¯v˜Bõï3‚›xÅóÛšß冿u4v÷ßÞ}þÜøñUhNÑm×ѬäHoõíšÿâCR¿“ñœËÒõ¡†˜9DóB®Ägõm®¬/ô#Ý~ô—ø ö×|º¸ É”ï t@Sí hÀM_DˆC s$eeÉ~ä:ÝÙ ²'˜2~ hreà2Z~ÍeÅ-;Ó%8ЖÈYb‘ Òjü‘   I³ÚªÞ{ùŸ£ÎI·Ö©4*f‡Um÷ ÆÂ¦‹ä÷Ǧ¦AÍm4–LÑixÊJ'í1) 6Ãç%|i?rÊ÷u@§RgPéjC¿TzƒB«Hå,ˆLg¢ñ¤u$ºXÉ*¹\)Œúû¾AƒÜBðØ4“^öÛR1o>¬ã­jºÛÈõZÀåÁY¯r~Ô/˜‡5~™FÆ­ÏŽ®ÌOqiXˆáÒK¢NMʫχÌ@g5á¬&å˜æ‹a‹IÉ¥`7ÿ`›ÿWˆóŸ"<Ðó?„8°+ïe\¡éÚvϾ+h¾k×é[£y=lÞÍ‹Ë'iÍ5þÊÍšÐÔ™ÞÕQ׿lò·ïßùV? ÓžÈÙ“yGªàLDWæ``(Ùg4?°òÖÃŽ~ÀÌY¢8ðÝÅã•Ú}oÈK'ò•"äÊîéáa,’þ›Õ›‡­R½œ)æŒ6 ‰F!±EgCþäþ$U¬Y\ÛÜÞÅ#1x–€ÂA@ ‘B 1¨L ‘èTˆ*±R 3B¹R SðÄR›K¤1àÕMÔA½XïTkíj­U©¶*u³¥Ì•`5iâaW.¬âÍJú¨]/Ž«OjNëÏOΛOêçGÕãÎA·™oײL:iüÁ] v[È$©„t«Zà5ÉÂvuÌ¥My ™€)ã7Â"xʧã—f'¾ò0þàc‚’}.Cœ?Øô³~ïcÂúÇê¡PWc¢\„hsdˆæ»†æ»p~4!lö{_ ‰7¢ Ó+4¯ÚæØÇàæÕS@3±2ûgÀ«Õ ÏÙÞ[B¿Íëß7¹BS—j\öó‡2¾ƒh~«£Áþ%~žL,£ú/µÃ0xT‘‚¥Ô õ6±Ñ.1÷éTؽ@§ÆÔzÆ@ÜNB`:mñ¬m g²àH¯zÅ¥=‘·ÅûbÂQ†`äÝÁbûOÐh*¥r³Ú¸|1l­Ó¨¶ûÄŒ¦âz³K$lb©K[˜û“ žœ$PÎ.®AØ\Gîn 0(ìænƒß%PT™‘SÀˆy9W,㈤l¡„-³ø"ˆ¢x*„…cgWÁÊöQ ªÕkB5$F.áECξ˜Å8hb^ƒ•ÇgÍ'ç­§íÏv¾xØÅ‹ãúéa¹×*vùhÐ9r÷3,AÃïðéµaRòݙפÚÔǾߢI5"&³õÄIûÜEßw“}]Ì/\ôGvꡞPScR¢-ÅÎÄÍw Íwä:}UûÉ“·ÙmÇ{#šóŒþw16Š—7AÞ\& bBÌü¾ÐüÆ_ïs;oæ{ïðh¾Ü6(ü»së4·%¶!ŽïšïZûttzn}gKAQXD®dO¢æ¨\‰¯µ  §CjqÉ­¥Ã§q‡´Þð™4ERæHL´Ä²Ö8T®Ïh"ó°ÒÜç2uÉelß3l£wej•ÕåôýÁx$šJ¤ ¹L)ÓT! JÄ\~¯L­„=?™ùDòÿíì ÖI ¦ÖÊ5¹V7¡×¶–ÛËëÈ• 艄ÔI à)tâ‹Âäö‹ÁFItq‰%Ó¶Ð8Ș•F¹Ñ­—ÇG'>¥šE'k”âHЙŠûÊ…8h,‚•_<ê|ùøð«'‡¿{ÚûýçG0z‚›gGÕ£v©Û(”rQ­Z²2?³¹ºˆßÙdQ°b6E+åèd½œ«—qÕ"&ŸN¤âP 36Ê#;í©sï 7ýw^æ|,˜‚˜ é ÐìêñUÕnJ¸i"Ì Ñ|Gîiþcj &Rê¹ šË$Á[ÅþÐ bÞÍ ©ÿUh’ Ñ×ã,¥ëhnp_9û;ùF4?žÞ|ÕáoDÓ\ì~ŒTÉr‡›!š7¶ßÞ™XÚXE·ˆtKH*X K©ç¨ ¼}3_gìb“Sfq+ú÷:!rFA} ^šM‘4 J ísIæ˜OXéôKÍ®u$Š+íF»Íîq»¾@,I%B‰8p åŒ6+“ËŸžYÇÑg¶v‰ŸT‡3ÚXÁ:0eª3‹k³Kˆ¹åõù• б½»±ƒEa‰:H,y C¢aˆTX³!¬l açZ»Ö>n÷ÎÏŸœ=üüââéùÙ“³O>þˆ¹GV+ů-v2‘f%&B¢Màò_žþñË“ß?=úü2lÐl×sùtØã4MŒÜ_]˜Em¬Rq;*^À Yd‹"d’¹4¸”´o%Ìk}ý€ ÎÂQÀ.œdfa™@ÝãK¤b…R±¯U F»ÝævÛ.¿bs{´&3lÝBcæ·ð\“GÎRå=.[¡ß×ZM&—Ãè´y›gcÓ ã3‹³K“sË`(è Ásm ½ŽÄ¬£¾.$<UËýŒÙè·/ŽAÌÇ_=~òÕã‡_<<{|¶¼4ÏØƒ¤)q;ŒAŸ=÷WKÉv=Ô98íU6Ÿ^t~÷ôè÷Ÿÿîš­ó£Z¯]ª—Ó™D pà0¨–eomq~kmèÄ 7p¨M,rcw{}gc-/E••»--þÐ@<6‘Î,ðñ±cï©‹b>´ÓÓS ¹£ÃÞ Áf€µ:Dsˆæ÷ÞVXúÛìhÞ¸~ ± h ۙ:_gQbÞM^¤{…fJk0³Î3¿ÍëÈ迹)¶3×_³óØÒæk¶^¡‰üçÿãêÿô? VÊÂåáGhˆæ7Ãæèôr …ß"1v|OÖwœ@N©h5C¦e*tl•±ßa«·KÌ.™Õ«°û•Ž€ÒP¹‚`¨ÚÖ@]2ºï^VDíÁ>³[ ³‚¼pšXµ¾&Ò›Á°…b±B%ßש F¥N/Óì3y ‘²½Ç#Iµ|«Ok³Ä‹¹\½zÐi6NŠ­zºzΦøréÝ‘É{£S÷ÇgF&æF'çzB½Vë0ͳ1;Ç£ó£ã‡''NÁʳ'ç§ÏŽ.ŽM&¢QImf-ÄÆxØSÊŪ©V-×mO+çÇõ'çíÇç-àòÑY4;õ|¹HD<~U.áŸ{¸}¼G~þý;Ÿ}öñG{KwÕ»ÓvêRˆ³žn礨ª ÓÔâºz‘‘tÒœT°ò±ƒ6Ö™Hmþ@sêÒüb¢ù—hãhÞwAÄ„¸Ó DÁæØÇש}Í1Œø“ê˛oæ·úí®Ð¼MØ|š äU—P÷ÿû:Dsˆæ+¯©ÅùMÌ:ž¶CåàÙbרt[Íó“ÖÅiëüæS•ƒèéWÁÃ'ÎÊÑ“wGúzŽNÍC”Õe÷½±tÿÛ õN£uÔîœtO{½³þøÔÇ':O——˜ ªR.6éÕN›!tå3‘R>^+§›µÜa«tÜ­œÕÏŽjg½dÏÓÃ*H ¤äc±°Ûç¶@J=r²/¼¼‡>þ§¿üñæÈû¤¹O¥È qÞÇ\‹ñ7S¢í’]Sc!ovõÄÞ57a ó]±}3“Â-mIŸý_ŒC4ÿŠíƧ€®£9X¸ù4_uþëhNî²nDó·“k»¼oõcš?ÿðÁ÷…敘¿ý'ÿÝÍ!š¯j÷¦–¦V‘ð—à&‘ÞãíÒù» †)ıÅ®‚'E¤¤K÷™rGmâí[„‡Èè›\b³²¤Äâ¥V¯Ìê“]J S‘ÁÁÓZYJM¬|qlœv‹Ä„T¸¸¶µ¶µƒ@î"1—÷"I44‚ĦV?\ÀðäHNm6yãÑx©kÔʇíöóΣóΣ‹æùi±Ýt„ÁîcwýÔ”m(ƒ™Äîôzim G"‰2»Ç©ÛC ª.TJJ”êË!ªÛý!ª»P éââ<‹A“ˆxº}…Õ¬ xÉX › —rñJ1Õ¨dÛõB·Yê4ŠPíF¡]Ï7«¹r1YÈF£!·×eòX- ýÔÍ7ùø«wƒÿ€½ö@‰ž¶’=ŒÕàeÞÌJQ@gY‰©ª±}\S‹CëX™—íd%¨(oõ· •‹x0Dsˆæ÷ÛÞ{pÛ¿ Í›lgö6'¹1fÚòÞ7:]‰¦ow•4_óÐmºgßÍë\Ä„Z¤©®Ð”†¯¥¢ùÍÏùèìØÂú"ÀÑ6ŠÊAQ¹;´¾žX¦è„Hé÷Öj˜rýeä´òu6Þz]}CM}CARXÃÝ·€˜RI—£„€ÅH2 ¥Î vF&罩 «›+(¨%Ä6Ì{£á»³«X¾M$i,o<–(òÍz¥×1»/ÍÆÙI±Ý ¦S"•ÊU;±ä[êHž¦2/mÛ¸H·íízÅ»>1Æ%Ø106Ò…lî PnV«íz­Ý¨w›n êÃ?\˜Ÿc1÷„ŽF%3ö}n[,ì½t3RÈÆ*¥T½œmTrõJ¶^ÎÔ ÒåB2—§âˆ¥n§™I§V´C;ëü2l.}ö„MÊÂáÖø>vÖB^tÒVlD”· t¦ÅHð1/CåýÊIw ‡Bð6ÜôaN´5†ŸùdˆæÍï·Ýò†æëAé|gÑ|Ö]†b¿Ý¯vË+1¯úfï-n Ñ¢yc»;µ8»¾»¼CÜÀÓ7 ˆœ[Dæ6‰€îìñ uâ9R"_N©÷$ûL…­6qÔf®Æ8‚¡*ùZ¯_VXÃјé2ì AB+¼I ¯a¨ Û¸û3+&Wí " S<}otÚšÌêB1¥ÛÍeÆV¶ïMâi{Z»Ý—L$Š+k'GG[g³Óêq/רÒ)…Áà(÷̹¦&Z´r¶ÁÊ„šT4Ñ+VVÕÆªÙ9M'÷ÀÌŒ(‰N:SÊ.§>hT¯jjr’L"°Y …\¬×ª\v3„ÍpÀúSñP>-åÅ\¼˜ƒ¡°˜KGSñ`$ä øn‡Y·¯Äã0‡^^ËÉ)™èàæìÇ¿BÜÿ{ôäG{K÷›ãŠ) vÖLZ´Ó–ÝôU/sÍÏB@ö s7Bœ ˜‡•Ú²º »³ÔÅ;óŸüjˆæÍï·Ýò†æѼÍn?ûp ¯rÿ·…æu1¯Ð¼ê›…FÓ†Ÿ¢!š7¶‰¥­ùMì š¼ºKYÅP×°T–†n™H M@ê$pe$¾‚*Ö€‰ ¹ô„b)L(…Ö@Á¦=©–$P€³è½~—ì:n8^ØÂ±T:}8aK|åF ÖŠ´z±Îqâð,ÔèzJ5s"« ÆÆfæÉ,¶ÎáðÄbá\6Y.gëõR·Sì´ ­V¦^‹—JöPH¬ÑXòm]¢lçíD•¤ŒŽÖprâÏ“ª/Sê¯Òš?dµÌëÎBÒ¦“çaRýÅ\¹”+ôø`d³‹¦RHBW¥”YÍ—ÃâuÛ‚~W$‘3t&ãAÈž‰h ñÇ"¾ ÏévXìVƒQ¯áóØëOâò‹°¤çäôTÝbùÎoãbg>¥,Þe­ð7Æd;Sj̬7g ̉ fò¢…²’ û¸9ؤÚá®ÂþÈñ†ãÍw³ÝÍ1Œø5h¾Ø­ú 4ßòoƒ·Eóº›W1SèŠ_m}ïÎÔð0DóÆ62‡˜A ‘„%jy‡ÔÓ§sàæÎÃ…7i’}ÀqOÚ'æ¡`%¤KŠHM*ql dÌm2_A“€ãiÄŽÌáÕG’¶tñÍ6 ïž$ν³øáY°Þ±¦ò“óK6Wn0šÜg$Ìd¢…BªRIW«ÉJ%V,Ó£ÛÕə†šŠ FDKðñ‹¤ú?•MÿP1Ãô?B˜~ŸÕ>M¨}"üòH2—Mõ_¤ð¬b™Ôöö6ã°™R‰P¯Ó€›N»Ùë¶|Np3òÁ4ô@ü ù]°TµšõFý¾\&¦QÉ¿K«þÕ|‘TJËJ ÂÀÚvvõÌ-i3ý iþÎÞò}îú˜h{BŠš”ïL+ÑÓjÌ äJ€%ÈIØÄÜúxåîß /Æ!šÿM£yqù,Ð-÷ÜÙß4ïý³r÷ŸýÓëböÑt§†hѼÕoikv}wv3·‰ßÄÍoá¶ñèê.u½9Y(*½'À²Änÿív$¾’ÈWyrWžB—°ŠÆÝ"±Ö0TPxn³²K ‹r§ÏIÙ3%_¥¬u¢í#ˆ™©ã‡É£ ¨XçÔSjÜŸÞÆB‰X£S[lÀŽzÉ`&ëO¥mÁÎá’jõhe?V2±¶#J˜ø0ªø2­"ÿ}ÑðJF˜þ¹høSA+Å=Ÿ8ª"ã±h:I%}‘°+à_]]E!Q ™ÍfʤbZ¡×öétôét€ž—Íí´ºœVg?`KZ©TH÷hÔõõõÿt`øªf=s;¾O+Z9Mð8$û<£}šÖvýäøG詉ów¨K÷èË÷™« {r£¼õ1öÚ(,ÂJÚÒ=Êâ½íñG~ñ7ÃßÍhÞ¾½€æwýoнÎ1¼˜Ÿ],^õÍšWasˆæÍ×·©UÔÔÚÎôz±;s (è9pÛ7·‘“!²$—>ö‰„ kvÂ]ºMÀNØ=8žZA­aI‰Jîô¢i@Ó_iA®ŒvN’½óôÉ£Ôñ£>šÝSÏAc?[Ú@l¦H*TíïÛœ—×â9#1[0¬¶ØÅûz ‡?¿¶ÁEÏÙùèä>õ8 ¹ˆÈŸ$T_¤4ÈéþT0ü)¯ÿc^ÿû¬îó¤6u<Â˜š¼¿·ŒÇ¡<Á Íã69ìóó‹Ä:‡£Ñ¨>O*+2Vm2è,fC¿Lz(óeAU)å±Ïãî v¾J«ÿœ×Iˆ«>±êäŸÇ”_åô_BeuPç1UÇ/a gw&?ÆLŠ›ýŒ0w²' †’îçîàg?ÃNº;õÉô{?~ð†h¾Ë '³~Ç3¬¼ô¾‚ïMho&ˆy÷k1¯·&–‡hѼ}]Ø[Ü_ÚžXÞž\AM­î̬÷ßÒ³ˆ$._vØBꄹMæ )Ï æ·ÉlX \n+»Ș3t?½")ë*UªV¸ÆhÆž=ðWÛ¡Æa¼Û™™³'4£ý¤Y×&ç¶°$4™NbñyrµDkT­rƒf˜"‰Å›]Ù:c"Ü’_ŠOëöš.ÁQ@r–?Œ*ÁM°òwíWé}˜W†dM?¡¡êè›v¯Ïêöè­6µÞ ×ì erŽH¼¹¹Åb÷h46›ÍçóÄb¤N…\ %— Jž |6‹E¡P`ç¹ù…ó°”YrŠq§à,¦z”Ô\Š©ÿ"ÛŸÂb/$¯¹„›£jkìYA517RRÍÆ¬Z™%ã^\EP—†¼!šïfÁ)¾;šé¤9@óß}6 uɽ^ßVÌA»ê¡¢9Dó6íþìÚƒ9ÄÈüúè zBü„à ©sq›°¼C^ÃÐÖqtÐóëbÀ"DQH—°iµÿ ,~vޙݸ¿ˆÜ Òi2Â4Æ2ŽlÐ 7{ñóDï"yô0Ö9´Žµ®3_Qû"lqy ½†Â¡ˆ4 WÄ–*YS$§ ¥XkGæYC,ƒYðŠqq µbãv¼¢ã€Ü|’PÙçrÿó¤æQX_wð’û4=cKg±î›, ­^¤Pñ$2O@erVVÖ¶‘(H£Òèt:ÈÈåpø<$J<…M$ ‰ÚY[[o¹ø‡^¡˜Ð™¿ô8¬€h9àò‹ËzšÖžD”°ÉÄÙY»ÿþêUÝ{_»‡([m÷$ ü<¡x‘žEM'gø©¢9Dó{iÔÐÙ[gÌa¢ù]ÚÉ¥»SË÷¦WîÏô @'–úÙsÑ×sa›Yâçµ"ÀJàr~ ù2æÕ©¶ÈLš|_éé#is"ï*ÔÜ¥†·ÜöW»Áú¡¯Òñ4¹Š%YؼT©f…È™˜_›^ÚXÙÆlbHÛxÊ– 3s«[L½—¢´¤F&rÖÎß ÊI9#³æàµÝž_rQ€•Pÿ{wÂÜÆYpü›ð˜ÚúY÷}ïJ»:WZI»ºvu[Zë>,ÉVlÙñmÕŽãÄIm-´)iÒ´ Ó2t€aøB¼Ê1mL”àPàùÍ3;«ÛkæïWãñ>Ú¯<Ü+£Œ~tmþý¥$Šf;Aæ*Y¡Äçæ£Ét8ÎS¡ˆÛ”«õ£¯t¹Ý^¯—òûiÐP(<š`í£¡üt«Õ†o 4zª“NbnìR%âØ®°g+¹_m÷¶Kê¿}M4†Õ·KÃFL5öÕØ[h”ï¾ÕŠáû•àGëÙ/‡ ¿?®ÿùNû/§‹ºÝúíæg»ÂahB4€."šÿAPLˆæ…šh'eú)…ñICG•êíòQ=¨Œ/V´J}á·Êp"”¯¤ÛýÂòµÒ`»¹s½3¼Ù;¼½|ô~ÿø¬ãí·v*ë{éÖr ]Ô8 ęܔD-Vêå:«Lk ;A¡˜o»S2.ÐVù"çZÍQÃZäV‡ûùÕ̃ܽÍ"jåƒÝòý…ßl è"ºò¨¿Vä(Ë¥˜DòÉI6ÃN‘çOºg±`î°;H‚p:'ÚÁíºÆbÅ”*-çÒ5ãä Oí–ù¨#…àw0ºùé~õ‹ëÍÇÏ¢Ù¾¿Wùåza«Ì„í£w°ÿH1q©Ç“7ZÍG{ÂW‡•on6þxÒBõüú¨öÉfþN7Ñ„h(&Dó¿Ý˜X5>§™èP=Er#Z~ÎimO?¼}>ŽssîÌÞ°—ËGK­dc)»¸²°º]ß:hîµ÷އ7;Ã[­½åµÝlg-3I†—c~;bòs8›'â‚“+9ù²‹/»“_ÂÙœ…N‘Zq5âè&=h±y؈Ýî%Ïú™×ò÷6…7Šhç«Ù³~­C7… Ê+ƒ«|!ÖdÉQ.½»ëï¯Áh1š¬h+qò _VáÍÎâxŒ¶*‹´­%–R^ýÜøc_Îú‡øéJõñ“ÝÊgõÏß«¡}tÍ­^zežöš¤OŸÖ8w¥Ë“×ì«©O· _K¿;ª}sÜøúzõñAù×kÙ›íeC4!šàB£ù}‹É6ÖáûÑü—½;«C•êDrZ~>ÓÓyÅ£”V'FǨd‘Ζ™bo,çzëÂÊöÂ`·¼¶W¹6Dû\­ÊWI6)1`SZ»Äì•Ùüj"¬uG ¾#Å¡Œšü¼ÖÅ*í4ÊV©Ïû­­„ój–Ú\íV؃Fìx‘;j'êÑýjd§Ì òzŒÈøÌV¹Èâý×>½Åþ½ù’äÙ»0åLЦŠºe‘M^æÜÆF½&„ÛÜq/u§Ÿ=[ÍßNWò'K™Ã6¿YfëñoÓl“OÔ"øf1p§—øpAÝ|ü^ù«ÃêÃÒÃ]áîÕÔaƒuëf šM šÿc®Ì(Q=ÑòÍ?sÿY­Õà ’lÊËúøSl$j½lg ¥3¿´¶ÉfŸÎVЭ‡ïÙòVf©±YƒSbñ*ð€ÂN+GT:‚Rëè>(š”Y%´…Ñê쥼ý,µ^n•˜ !4˜§Wrþ~Æ×Œ;Qã\­6X5Fš×9p»zÖc”1vÍÜØÛ~«2OãMγV oU"ûõøA‹;ê$Ñv¯ß(±KYŽÆ¾]nKÇ… õjÆsÜŠÝéq¨›÷· vŠw´sºÄ« ¡™†hB4€h™‰4ºÃf/k Ä\ñœ?]Ž–;±r7²Ðêþt &ôNúoxY¬WX&UÑ‹g˜µ)gš¹¦æÝÆ|À&„ðj„h&\õYf¥°½Ä’SÀ¢´)þ1B¯‹Vfù4eQqs‰%œ§“¦–sÕB¨Ÿ§»‹÷Â/|L-›ø)kW AÛJη[5£'ÄI—»ÝåÐsS 1…¢ Ñ¢ æÓØ)AÛèÉP©j¥—/ºãy“Ò¯:)ü;³/9פY6eSÌ:IÀªŠº„Ëö™ç¶,eMyͼ۔ph› WÍ^Äá˜dÓv­„²ªsŽÆ†¨D]MÞ[‹»Ëg‘!XBî!„f†s髬}9=ú»ßRx§Ú.…Ö .ïªEìÿçoFˆ&Mð]³ZL¬Ã¥&§ ÷™<ŒÙ1z½+¤¶S¯³îÃÕb´ätê¤>“‚¶©ý¥×$weèíìø…¡“yͪ¦aCÔeJú¬œÇÂR/}éýÝiŒÔe|æjÄQhJa<°$œz“t¢ Ñ¢ Γè&d† tFƒ½þ%"“tÊ$›2˦Ñ]Ô‰'43coæp0µ¥“4ÈI½Ü¡“ÚTb£lêUÕˆ]z eV„quÄ¡ aª€Ea”LÀ›¢ D¼1rÑÏ¢+Ò‰Ësco¿ùW׊'5âIåô?.5¦œ±«ÅÏg üì š@4M šˆ&MDÑ¢ €hÑ@4€hB4€h š@4M šˆ&ÞŒ@4M šˆ&MÀð} €ïú+Å endstream endobj 954 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [186.068 386.802 199.767 399.422] /A << /S /GoTo /D (figure.18) >> >> endobj 963 0 obj << /D [961 0 R /XYZ 33.853 921.043 null] >> endobj 582 0 obj << /D [961 0 R /XYZ 125.27 568.786 null] >> endobj 210 0 obj << /D [961 0 R /XYZ 68.868 272.273 null] >> endobj 214 0 obj << /D [961 0 R /XYZ 68.868 243.83 null] >> endobj 218 0 obj << /D [961 0 R /XYZ 68.868 221.796 null] >> endobj 222 0 obj << /D [961 0 R /XYZ 68.868 199.961 null] >> endobj 226 0 obj << /D [961 0 R /XYZ 68.868 173.843 null] >> endobj 230 0 obj << /D [961 0 R /XYZ 68.868 152.141 null] >> endobj 964 0 obj << /D [961 0 R /XYZ 68.868 106.645 null] >> endobj 960 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R >> /XObject << /Im18 959 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 967 0 obj << /Length 1620 /Filter /FlateDecode >> stream xÚËŽã6ì¾_‘£L¼~ȯc‹Îö…6í¥íAc+‰0¶•µä™Í~}ùâIêv{±(’’ø&lŽ›dóý»Ä¯ßîß½ÿV›4›¢È6ûæ¬ãº¬7U]Æi]möÝæèEÛYöÚJ§Í¸Ý噈:é$C3 ÒÅÛÈEôƒÜfðG&¶Àü¨É©Î£·YT‹èçóv‹ÑÄé˜áÏ$½²¼q†×ß÷?#PÀ“Û4ÂWxïNzêvg99¼â²ýkÿ¨·KE,D¹ª‚(êÈšñ¿¢0rRŒm¥'?Xuä±³EÑuÝ˶("9¶ä5P“l~Ù.§W7/„ðÐÜ3mEòIÙ¹w \•yôÍhÜI¡yIDcÝî<²b«¬%ã#Ù1Îô¸-Á¦E‚¼ÿço=ž%E\ ¼Kï'©GõÙ¡Ì~ U×™ÜpiÊ׳Õ4hgù}9Êþbµe:iŒR#ÈZ3©ÿäÏ’þ6qYç·f#ÆNƒû¢ªèFÄ&y„€Ûß26˜¤›ÉAx ›'ŽL ?MÚ¹ÞßtºŸ'ÐwÞ%høR4Ñ#S[Œ=Z!!ÿªÝiͺÁ›«ÑÍÃ9{qÏk–Mœ¥e°ìÃÚm%&ûßžªâ4¿ÞGUU${kòfç ‡8BΓïãXû “BDû³äS¸Qp‹"4xhÇÎMó>ÏN.(©Ï^öÑ*f2h?ßÌÉ÷±+ÌÒîÏa œOóÔ©‘‘“ú4kJB¤°3ñ=ÕÎNÝHîËæ­¾ÃÈ“VqQÜeWêÓ!œ¸@ÊÍÎLšªÉÒ­ßt ËZ,n||œáeùîñ€=nzã£êÈ|u¤›G¯…ïtkØ“¢§°×¨¾ÇŠ˜•ÑÇ[¬eBeжYÓDj8÷ö†G!tDÇøl’`˜‹§^%í®÷G ßæþ™&xD·>^Öço< Ÿ¬L¹ÀJ*’X°.¶X…0ƒê´¤N£?/Œe]àþUf÷ÎMgô„›» {v,?Ò¡Q³þuâ¢$Édˆ°ž€p¼³s(ò¸“–W_½ÛyòÌF´=ѽ±8µŠô04ŒúfL†7ÈoÆ?êk\ïÂÓ?ï{ºÓ§ ?ݰ’A S$Ž*Mt4óÑÏ:_̨hÂ)rN¤Ÿg¯Ãpé9yØjØ”ø8E#’¹–C> endobj 968 0 obj << /D [966 0 R /XYZ 33.853 921.043 null] >> endobj 965 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 972 0 obj << /Length 2090 /Filter /FlateDecode >> stream xÚÛŽ¤¸õ½¿¢)i`À€¼íff¢%Ñ´´‘’<¸ÁÕe Õ¦§þ~Ï jµÔØÇÇç~sŇ×C|øËSü?¾ üÉ!ÉÓ¨ŠËC®ÊHåù¡¾<½=ÅQžå*%”õç{xK1èmÆ3 O4m²*Ÿ»$ÕáSÿôOø›/„+2+è,T¸’ê×ç§_’â$Q•çêð|:è2*u Lâ¨FÏÍáßÁ÷: öª< ’êOÇ0­ªà“3¯ƒ¹ 4úŸÞŽGUïGU}ظ‹í¼ë;Ó N×áÉÔšþly™µmË»‹`p—aörm{„Þ\÷Ê +|ŠÀ®§EãêãŸÿ ‡Ie™(ðB‡ýÔ5fpÖƒJ®ÃoŒgË€¬ƒ­™þçñiè/Hòã—4]Û))‹(NÑÌÄt@é£ëÑ·f-Ò¨$‡6N"D[Bçã8MŠH%y†ø¡ÒàðR˜fQYðµò&‰Êƒ_À‚i"ÌõbA\¢ \Teð6ïB?‚ k>UŸäX—) ¶žl¦ªÄÎ u"ßÝx[9.°¡SE†&ø Áצ é^x;|?zÏÛwdj@À=…‹:R¥xî7tE>›ëhÜ$þp ³XSç̇q…(u¹Ö{v¶!äHQi1šqç(ÇA¢gªmÃ,NýÀ°¸N[ï-ã`ÐcÓ†›¨Ó,»{€3Fj6‡..Ç$põÐ_ÏÊÞÕ¨ž\ $”5=ï‘AqøéóßäªÈi[ÁðýLÜŒlL Œ†Þ×ý…0Û?>¤ˆ{$—Fò£ÒÐkLå3oÇ3é®tÉ  —ÁckÙ2Â5ÓzÞú©FM…ˆ¨ØœŽ¾ùLtðûÙµ~dÄ Ä_Œqð®­ÙëªÐ?{]e²Az ïÁJn`|¤j:D…¨R¥F.WŒhø@‡E¹´ÄâÍ\‡0Æm;"¿MnÄHJò`òö4aƒ 8òaq F hÀý=x?öŒ°²ˆc(ŽbÌ“q-Tô¸ÿ“7·áî’8ÔB´ëÑ]yÉ~…ï¬ ®Ý‰¿}gyñî T "Š‹ßYOA¡ÆÅZ½5þJ=Ô@’­xfè Vàõ$§~ñ.bˆ8з:Ô˜ èŽgæø¥U9Ï«-ÆßI!KH™ÀÅ7ª/7Þ@Þ;Yv§Áb-ïÛÆ^:gÄí([ϤÔ*ŸÌËÔ~Ãh®‚Óणá®>æÀÿY0Ž®íÆ½Zœ$y”À° ä>!Â,#U©­)¤”uT8Ӕ …ŠÏuxœbWýŽ&à,ÕnØC.9èS]mù6•V¤ÆÛï4J´ÓE®ó±z°žÌ®ãsèJV¸Eî8»íM)q©Å~£*)£ª*!›ex€í‡Û±T¦MœÍ(Åll@^v5ðbiÔä#ò&|/ÖxHĆwß±3^[è¼(;®y,af?ë!‰8Z?¢íchL7“dNÀ%OZi¬ø¢¨ÿû±äŠïŽ10½¸TOBÂƬæ-»:¦Êg…¼[Μ\â@]<ânôK÷³˜{¥]ÆC°<„pie¥É‘θ£$áGÎwô ¡¹1`)+À…NTs{Ç3ñò8ö¾ÇUð~vKd®42G½ ¼JC£‚3Ç:OºŽq™ö½y¦'˜i[ÃsLL›REU„.66aôæExhWÐÅࢂmŸ‘ûa™åXP(È <†yÏ`òfíäÊ×î@°r2ßÕ:†´ýbo‹q¼£–¬—&užÒÚàx"l°ÕÐøxïx0Eòh™ðKaïda÷JCÔè.^§¶µ7¹ba ­©Ù¶Ê‹q³;q:*Ò!¾F®/ãž^lZ¨ã5¿l4Ø5ÁJæå±¤~¸è¹§iÑ‘ŽNüây(ú¹^u‰’àëôâíÛdYö¶¡Hó7¦¢Ämž¯XP‘A¦=¼ö}ƒSc—Õ’83ÌZÓ™—Že)´ÌiØË1¥'fü+¤Õ9.×±KHÔð¶@¥ˆô㌶-à5è°$  R¿Þö*!U–GÏ0%Ô²À¢Â 1zþ®¢¡cˆáÏ&BB-,EREìåIzŸÁ|Ã¥)•?@ vðÝ)/ÒâÞ;Ae7†sÇAÔ{ÇÁÝχVo›×îƒw”þ?ÆìŽ8¦ó#ƒ†ÕV*åÏ+>ÌÒJ’“Q¸àªqZˆçÍÿ^Ï_²ó0a¯Ë8ýéô^Ò·¿&à!WÚ'qУId¤©eO‘MgÌ–ñ€–K“Á 6G^MžŸr°üüõö5ü0˜þ8U#˜ª.{YåÓ@ƒ´àÜÕFâg²?³Õ`$¢ô»GÿfIΣ×$o¸¶Z¶"”§š†å†]ÇðYå$“aW¯'È3]UÁóYhQ†âö9ŒggzUÏ_zd\nwÔ€„¯·Èšj.ð¹Þä(F8XÓÜøˆ_?ˆºnt¹Ô XÊp£·B‚G—yi…¿µôý Ì(KpɸW[‡Æ²Tk)9´×©v g¯æöP–ެ)*Ê5ÊD½zô!)ËcAç Ò{>ç4¿÷`q×¥•Ê3ÿÒ¢Wù„PÑÏÒð³mù¡é TU äCšG¥b­´Þà|~~ú˜ ™t endstream endobj 971 0 obj << /Type /Page /Contents 972 0 R /Resources 970 0 R /MediaBox [0 0 595.276 841.89] /Parent 947 0 R >> endobj 969 0 obj << /Type /XObject /Subtype /Image /Width 516 /Height 495 /BitsPerComponent 8 /Length 127122 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿÛCÿÛCÿÂï"ÿÄ  ÿÄ ÿÚ êW倪¤¬ÔR€z‚Š8sÜn){WÐø©Þ*SôWÖsŽÈ´àŸÌ©6ÒËô¢ë7mÍÿjhδ[Teœ³°ëN„¹é­½“ñC¯5¬äR ê (â—kx¥íÿFäe1iOÒ\uÏ_6 ùýùy¤õ]g>í ´Vš£Þv,œÎ’t5›‚Z;T£—ûûa­¨V ê (â”Ò¿úKëœì¦-úê®ã¹ÛÑ/ÏÊf–î––ëíñØÕÄ~ºÝðV“ 9¦ßí3 ÅšùÜþYu D`Ç”õb©vUHÝÔ’D¦iëÉë®/—:z6Ûïxm¿û]œí½<ËÇX\ÒŸŸØªšÎ”†I}ÊV¼°ÊнAEGdZ¥dí|ÓÝ^Œj>˜Ü^•qfæÉ¦Þ)f’k5bþ‰yÓÍBíÈÔ8ž_]ìÛ9Ù¿Î%Ù'…»/­Ølš­©Ìó svºÂØMäãö][è·æ[ass=øÅq‹+3Î:%±•í¨ÁÕ÷åùÃìFncm"ßÍ–MGéõÇ “'__˜ÏÒåceÄž/PQ@r—p[RÿR<–¿Ô¹ÐØ]D‰é“œ•‘Ñz‡ÛÕþ³ò¿,ŒŸýÝù´bOüà õ6Ls‰ƒÔX¿Ýsý«ô÷ì-¶óž6u,ØÅ®úYÎëmÏÿºñbÐ:^ŠÊû×YþoÓúØZäÚ¹ÓÝòEïnxøl­qv&Ö7,p€z‚Š3pju9­^Óbi¶íúiTÒëv…Ì[q]ÞiÞâVÐ¥ÐÏÎ÷J9Ûêšlf/Ãâë¡ü`W,»ˆô'E´*Ðñ}ñiµ5fLã×°™%Ð_Æéh?·ØêËPlµ–Îf¹õzO;ôÊÒ>ÎrT–cQäi[Zµþ¦VJ”Þq:OÍ}¤‰³fp·À<óÙí±jV½úG€~ƒóŸŸ^¼ÈávDq/PQ@™»±9å9Ssngôiæö›ù¶ºŒÞ<Öó¶ ëŽIu²0IÝÖ…·bxc»%êzl ]¶ØŽ–%?Jä'›Q;v¥ËÍÇŠÇd®=$˜b³ËôÐÿ¬Ý&‹|Þ¥œãdÙUd·¢#Álõïb±öL›52yåí¶»/¾Ñ,wIƨeÖ¼Ë2ø_‚ŽŒéõ&ÐIƒÿ¶¶æ¥Å¹<âî|+÷XxÞø ÔPO»ζ¶fßó‚{’Íèþôc=F×ü¸éµ6ݾT…£{¥œœôÜ餓KãwYѤ±K¿2ÒXlwènbIœ…Nm{bÿ?Ï|ͱcÝZÄ®¶µ§ü¿%ñoÕOU¥ŠŽ+è¾ašü¾¼T#ïÕBöÚ‘¿÷M"%"ÄFv­ZãÛü_OGÛ ‹Öfµ=/_Iç.ŠÍtqw~³Î2S±{]ùêýyFçÖ8ùà^ ¢€Ô]ºRºW>Ùem×XNà)]¿/%ÔÕˆæå,»I¼{ʾȎoBlC^¯Ux¯ö¯û=²Û  ž\ÖÈk½¦ÂÍÇ­Ó-–ˆióÆk.s*E»­6Á˳Qý—u•«Íª À„ÏÅNÛõ4ã ÓJ.צ2Ó¸´·÷øÏÛãØc·u¾åôËÇ®ÿ{‹ry¹vFÕñS玵fgÝÇÀþµëfü›tܰ/PQ@IJk]þŽ!{ý(Oó›ïC¯YN‹y÷i9·ÒôsÈ$Š/*Éõ]X7Ó6|¥Y3¥º;¬üÔ½´ïM[ÞÆ•^ZÍè«£ú)ÚýpØx\>~.E9£¾ÚiîÛÅðÙaÔàjµìîB¢Èn0J¶›O,e#±jðƒ“Y®Þ³lŸìÃÙ€ê (j½éD^þ·åÚã¸Z·´žq߆¯eºOqôWÞù¬ÿÛ‚ÉLžbÒ×|öÝõtš_FÉéE­ÑɈc«YCß”Écq]Ñ}Ä@¡_eÿUO«sƒtµ3¯•ßží9$»uï²ìØ*k’ÝþÕ8%E¦‘†óËýûP錆§º–ÖñóÂO°Åú48u`z‚Š·x{5ÿи\TSm5óc¯Ûqåž•ÎÞÊhiÐoޤA<{L2{&²Ûx·èLâÃþæYŽL09­Šn޳Gc]eâ±æ*ý [QDÕó‘ã~W¦Å×§:ü™ümuöé¢g¦ÄÖ6=µÑ®“ê&ÜlO9/F°va»êžžõ÷”›n1Û€ê (5³dà5¶Âm|£¯å¡ó3Êu<ökŽoÚùùÕ9é®7x$”×ô+•ãà»,S¬…e•èâzvãJÿ®v]™ŒòáºH’Ïâ?)ÔçøÊj,½_Äâ‘õZè¼@ó6×ùŠí{ÎÊÏjôû/ÑD›k}£†ÖæÀÉêê=¼åê^‚OKG‡t@z‚ЉË5ÖMœ…¤ìšcÞù¹ö&y㯦kЦï§ÃÇbÂçãxì(®¾UþËÓP2W¶-ãuÇ»Cü—/ß-)¬†}/j.IößF¯óÛÇC&e³üôØ-n]QËuל-\ë•á­M…òluêç¥|¬`»ô@kßîvªµ×YБ¥Û€^ ¢€9ïÐ$»?2í¤ ½Ãž–Åã¸ixíZãÛàÚáúb§þŒ'ôQïש­‹ELÇåÝuÛ=>}ËU²}ôyÍO¶µf§5)Îí%ôÔ¿FÂÒ›L7F:³ÎÕ™õQ^«+Þ¾cê·Ûœ•ÑN{H½ýŒW±žžåyÖÓeµ“fõ»ÎæÛµ½1´^ÏäûÇPöóÉ=@4û`õ¢›×É=ìm5Ç`<ßBs\ß+޵ü½*çåA¥¾\þÏ ÅDÀöWš–¶á˜ÙV`$ŸÆf<½«á×=4‹sùz{M©Âñ› *'ùn0e$U¬Ÿ_—Ù´ù­t“«üEê—,ù¹s,•S“ô-\·¾|MýyŽÝâö¼óiàÕ ™×®Ë’“Ø5-é&< p¨z‚Ь¬ÕÔüôàº}ο_Ñë_¾ÇÙ=®@ÝýBì1}åUÒå‹/§6-±º[£?^f_<,m—Ö½¾•oýû68¢þ¹Vîj3i¿·×!™eùZkï·]—jzcÁù5)iyk|ÇÍ]\ðÈY\­Ý®ŸÜkûW¶ü¨Ûo*ÛE¤Vî_´à5»dZ÷·Õ|öò>òOQ nÀ½AEóù\õC—Ï¡‰e'8-ählý‚2{¨™Vfñ9_-•‹}ý‹k‡ÎUY½¾>Óê„çY–“—à¤[ ™Ú0 n]ÙÒOdžÔìµÈVÇÇê2À˜Oõ£Qž}ZÍ~|´m>€ôcÀz]]ÿ6¯lV]HbÊz‚Š…½©üçwzÙ7Ò-è÷{é˜É9ÙU6nÂŒÚþ<;%UBɆÁÈq{ p)¿õ!¶¸XÄëÍ­Ë‚ñݵ{nJ&ëÕìu¸±Õ÷Ûsƒ¤z§Ïê3W[9–×|wc0;S£xkp}+¯·Omû™ÎNøoBÌÀ½AE ÉÎ¥TWW„^ÐÞ¾uPù#%¬=>ÑÏeö#Wl +ð³*„{¿¿ä} Ûm˜ÕææïéŽ7o‚À„a§S'þá=}4ON'Í1åfÁþ÷î*J–Ó¬rÛèßLméWhäYª¦¿—ôO릌Ï)©Ö’Dî#õù˳:¬¿ˆ9vôÇÇy&è8½€^ ¢€1ùˆÙƒ˜R½ãÔëkSÙ; 沺iGñö]dÂm¼¤lµ,~«„HÇÑNqÛI6r¶CÜ‹3²ùí‹îmÁÕAçžæÔðÝÆ âo§?*Ó±›gùñÚÝŽÄ&Ý€ê (©íO"½NÖ8+Û Ku-{¼?—Ã_›wõÕÏmF¼kn~m¦ÛÝJ×57C\?œó’g³ÚIógÈsßŸŠ â¿<Ý;•¢›×úú¬Gf,èhžÃ\Ê0]´šÍŽý‘é¶äÝh_@½AEçú£Uv QDR±»‡WwW%ÚÇaØïª¢{ºÝq³¬ 6´”øíU.£ûÀƒ­×]‰ÿRf\Àz‚ŠÖ–ÖË.¥¡Ök~<Õ'·ßÍ·jLG¡Ð Ö˜÷_±lØwbʨ(¤¼DñKÄA/¼DñKÄA/¼D ×@ˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —‹’ÿÄ44!0@ "7#$1356P%`ÿÚÿø Ç ýóm•e¤ýuHâë%uÄß½Xô¾ZååZ<•?( „&ÍãfËQ.ÿ9¢ÎÖ•_ѳÅH°öºt²º¯ú˯ЬzßÏÿeå7ýÌæíǦM±Ã1سǭj7¤V gY*g–}ÅP™­{j/t3Mó­¼f¹C}Kg(‹Ž¹Pòñ œÖö #\Q‚5?¡Xô¿ŸþËÊoû™Í‘Gúé6]ãÍ5u©½ ÐÍÙ)€ª¶oCZwŽã0­Ÿ2óu•ÁF¸vÂK{­×¶¥ª+n«@K¬íåk*¹®ÏQúAûùÿ켦ÿ¹Ÿ½Xô¿ŸþËÊoû™íþB´‹ô.¦˜n«Ú–¹Êtµ×{EÉvÖ›´–6ê£fÚ6|ÿ¯éÖ=ï\«÷Ú9 ±ñ§cÖ²ª_‰gìþB´‹ô.¨˜ Œ©m%¦Úr¢ÖVºë¯ò–¿v¦ŸtÚ¶!v¼°¨× RPAúUAûÙᄘ[õAi2¶,e£ê¨•í`µsq1Ç1œx …Uf¸‡!Ö- ¦ÕÊóîB0ÃŽ F¦¬ÏÓ¬zÑ8Ñ–…SØU›œÿ€ÛU]i0O PûaX´s~±è?EºØªIU¯èYöMøÝ†uGeÜÛÄßø£.{þç‰ü†ªfEp?‘¬1anÝÖkýc×){2ÁGΟpQwS³¶uÑuóbmë]~ ;´^ÛÚnmžm;º&æy_>ÏüƒÆ9ª;ûI ИÃN hȶ­.ÂÛú2x•7éÖ=èî;‹]EËSÑÙËÈ€³¹5Tõ2JÕbÓ 8™ßDz˜DüŠ_·Ró)yOØŠx?RؤajDÙ€W,‡Ró´XâØÀ”¹‚c°—ËÊÐgE Fð½fä¾wo¨ôw¿‹Í­v³†Æö®NµÚBÞû°µò¿5ÑÚd]JËùqµÐ-,W²bˆóV=è½DªÌ«diÒuÔX·ÊNºrVpHW„påÖ=|N¹pc9ýõ ˜OÌIçsø÷¼øÜ”ž²# ùœßlýè'Àž|Ï'¼zù¾¼?©C°©Ü4Úí ×ÜøÜ é©j-hšç±4Õz´è©üˆ…Õê–›¤ë*&Z ¸¸nŒћº‡å¬zÒ x ƒhXu=•Fu•×d’Êã'ß3ׄ’÷¿;߆Uù:*Eâxˆ­¼\ðçEryâbO}s2|q[§W™ dtçpNÍYUgTj4Ú:¯­¹NݼXÏß\èž„3åü}GH’ ß9v ëƒñUåÁp¯?$éåT—6¿ÍXô¥b‰a…Xõ‰¢“‡x¶÷‰ˆºkH@N7ÌÚ%cH*„ë]Óé¶ gG².ê<8Fgðº¬kvwîÿÁû& )fgOcdƒOذ邔yÇÞ>8Ìô×gôW^óFG2Ÿ“¤„ÙSªÖ mÊ-f'ZøŠ®£¦M ¨ÖBG‡_3×…G_½ØLõ¾´]ª;šÖ°þZÇ þ–úª †üØ´´ [&À!u‚¥}‘늾ÑsnkV½Ôk4¶•v-ˆhvt.äo¹jwеkNÁ³_€ÇÛüŒ$Á‡Qi•CYQXSFÄ<̈HØN 2e‡KlÃR‰¯Ù)~"mc®åuÝR<^±“ùeP±HqdHÓÆW2'®eŸcI‰ýó>‰hÍïŸ;Ä©Hj;ÊUzX¤áÖ‰æÄ°¦²Áõ«YÞ)P!Cb³O Ž4¥~S >emH^µ½åw[ù+ƒú[«ýYwâ­E\³µb‹»© ©]ì ×],b2ÖÛ¢Û[°k”…LÜ«,°n~Ç#¿ã¹›^™ ¾Ó€˜¦;‹j¶ß~_FgI‹%/SöBìÃÇçq”ãI4`ÚöÃþW<ᓯ‹×Å Ù qaá‡4dbO}rÈ*`Ê¡ÌW_A®Hù"áOÜ'"¬­rarà Ž2†Ãº-n°°¹\–ÊäÃoœ~›ÿ#\-í…ŠÅ<ùŸ¶„0Ï­%cÐNÕ,í¦PìuŠ¥‹Uâ¥kb_S«)-²O£!¦ jå¡-«VSí¼îy—±k`°¾‡]Ýkþïw±­èâgáÕ}†P:Í©†‰xLÂQòÚðT¶ÄW\讼''ĨˆçÇûO7úQW53º…¸ú¢Gzí!ý³nÜt}Z ¥“sm”ÊZg!FQáÏžë•‹SúðÒe!/Ì )áÍ{w5ÆÈ¤ãK+;ëŸ9ÍMaV­~JÇ öÚî7ì6?×;«ehé:8¶Vä`-kÔÕ¾ƒÂÓY‘›WÈÐÆ¶ðS-˜EÆ¢dz\¨|-µY bÑb¸ù§’#~½Þˆû0–\sRi™òˆJbdR”Ƭ¥ê3ú9e{3UgG/SŸÌ÷Ïdï»ëöŠ^¦–0ð`8¥b°ˆàÁ x-v¦=Y¢åŽ8KðfŠ:éFR•«Nºë yܼ.Qò+#÷E“CßêÙ®jì‡üµAí·/|Ë~[WÙèïC^ ³y®:Æüпøº÷ô†é¬¡¯ëU«Áµo%¡¨ná–ÄÇ^YÈ$ÿãÇ×ë‚׎´l>ËÉêïú;ì9¸|À뤲´4rTOsÃ{#¶~׫Yb¨ë%‚gÓ© #;Àš‚üÃ","ÅMØÇªeu§ȱÄ$?¯ Ý8ËÛc”ˆ‰ó®±ÈhMðçÎõà1xöCÙ>'P‘áÖuÎÉë©gfh6½Øò±,#š9ºðTúT-àž ü•Aíµk‡íî¹ê·¯²kâتtÑ9 Z=F~:F(¨[™õÝ^Å®O6Ì£Q`‰n¦r:ðó õËvéQüªÀ¹o³qSðQqO[GÛ”º«Mm®a¡ãJ-¸2,Q¦,®Ëâ:ÍÎÍÛú-æ½Ì)–û»†õ3Ã8‡DÐŒ…÷E™™ðüÏ p_[XyÈ¥TbŠûiè†AÙ Ä>ÊÛüp‰N&°,޼^G¬Ž&@f¨®¦ï®|Ï46¸d¨‡»^–“¬»À"c?ˆƒžÈðEXä¬zÌÙ:G0´õÚé„ÚÚôÒ,S‡Ý’ ÃÅŽfQxü¬lñÏï—>ÕVÛ]Ãe«ª¡Y®ïK¶ƒn ´'\GXÅó_mL‘]¡ÚþÈ™‡øÐrQtËå ÙÚÏy " j7ÕLeÔûÙã¦}tÚ:û¼0„8ðâ‘O²4[l¢Z~jÇ ü–«5„U$) ’†x¯,ÝrK>4…¦³;wShèàÛßé¡ùÇ %DT$x“^²$rc$Zò¶'ÿ­p£¶£06ûnaÙ*¾_˜#Ç2…© ÍÀÐ ÝvÅ08¸Zlq·³Y¾Ÿó|rŽMßn-Zóõë6»Þ.Äâ†tÝ~É1E;À®úçÎp=ü¢Ÿ®e?ÛXkŠ…özÒ½]O3óÖ=ä·÷æ·®f«Ÿ·kµxîß ‘ÌœDÀŠÿuÅÒüùY™˜Õ/^ul#¦†S7ƒÁ«­¬,ž¸Œž—SÅœrƒ™ã–5ªŽ*e¢óíq‘É'ûT1ùb;ºè£½ù¡7¯ -±Õ]x܆ôRÖD"ë:Ü­äï1›ÌŽû,0¨‡ë¬;ë[íлüÕAù ÿw¹¬;Ç®ý¿È‘fÍ‹ }Õk›=/¨".b_«­×: ¸7»ˆ±¸ÿ¥Ð¥·´Øu:õuž÷× Éó UX»Ëá­…\L1÷Mî_˜ŒÞúçÍç'z Ä+ë{3MQFé¸:ΗV³9_̬e&r(ÏŸV„ÜzÄÉ¡"(©°šeŠ·SP…xc}q-˜X?5cÐ~Kö=¥sÇ9OM²ª}n&õìÞõ»CÌ"×Jà™s×t¬ Ô±²Ë?…‡}1xÇÞcX¸#‹ÈUE—À=9›§Õ@“£¹IËe.ˆk5ÑêsâQL6× l~n:¦¼§‚3ê,j?)NoS‡€Òý°›™MÏããOrÁù«ƒò¿«×íP+F•$~Í…`"¯MìïÜ3*((‹‡Ç|æ²ÖšÙ˜{WP‚²ÆH3‚hgˆÞ¹ó½xEfN=u†$ý‰3ûÅžFw„¸øOq°ùØóY ,cç×XüLzê‡Ü–„¨ "ÚÑÕ|æbä²… ëa0)æµ*«¿ÙÕžÿ=cÐ~ŽÑ¶“NªÊaÌhÀ1=™ARâ^ʼnµï#ƒ°%ž^mšì"®»Ç†üÆ}X‚£€Aû°ØÞŒÑ‚–{²Ј©¨ƒÑ„tؾŠ8ŽŽ”SõÉòŽhæ_62ª¢"¬Š#õÅÞ:½©C³Ìugú„Mw¬¤ŒÎë‚Æ3CK)ÍýÛºƒJýµd4‘OµY¸þäØ/pmXI_4ý…ø«ƒô‘².·ýrc±÷RØ›¥Wæ0Ÿ¬ñá³õù›Œ°W]c‰}xg»ÉOˆ˜nøÕÖÚ:c»¦™æŽšÎÄœÈÇ,Zd® ÓÂ2ã;ÃÁ‹˜n¥2Nò¥¤®ãe[óÚ­ÝMœG‰‹=¯Î þ§´r¼¶¯]˜HðïY]A@Ò¨õôü¶c’ûÇ,UìS,¦6ëðÖ=èÏA±5•U!%,­ ÅÉŸ¶;æ\LëÂlº/¤ÉÅ%ìJ¯Ÿ‚ŽÌÇ%ú˜õ$ìFTÎ$‰² 2·^(¯œCèEV`ŽZTzÒ¯…]\½¤¦:m]‘b³f^À“£*sšN½Þ&a›ÓØLâÆ,K”Ù#ËÇŸéë‡á3¹98‘"H“Xl³%Ж2.QĵØÉ¾ë– ]×òÀ¿|çÛ[Ö»¼\=®¯B¯^-<4;‡–QÒ.ò„¿‚±è?FÙQIuUhÔ·ºÃõ½ÉR‚p ÇÁ‰ƒB£9×—:  ži1#ìQ>ìuðȵ7»ÓÛÔFwxó6?dö† ÜëBÊ,Øß\ìÞ*8…@ÉØ„ÁGÑÊl( .’ÍI_Ve½ÎÖ¤'ÂÛykw^§`eU·EE$}”¶Ð5¶¤­k˜iÁbíX^»ø<îÓyzwÖ W,â8ÓÂÝrü5Aú[GjˆÇŽ_Ù!MŽ 9·í'n+Л»)ÿ©eËââ|ƒ,Í+‡ ?d µ&€Í?m1}ñ|‹$¥¼žuÉOÃ,p^9 ~D‡8Ô­èZUk6¥Oòà ~=bi¸gÁ³ÇÜ;¿xoÿTÅa™×Xœn_* :Â_ž“­U°Jãf¾ÌHEa{´œôªÝt º¿ÃXô¥±'g†Á诶{¤’\R@©4³K” rc“C#×ýê5»¤»OÇ݈þ¡˜“úŸ!äëÃâõׂ,™c¦ª ˆ˜$ 1÷e;á®&VfÝe~°]Žû{€§ÉÆwq÷‘ýçËcpÊ\¦…›²•&¤¢koÍ„æD)úB±ÒX.°Yë\Öóèëï1ÖÀ Xбè?Kmj n}À¬)ÈÆ…bÚ¼2Ù¬!”\õá”ÿ`ŒëEÌLòX¡0æ“ñÉjað™×>s¯ÈêY¡Ï¯ ²Ã¼Q \}Ÿ`Ö¤ÙÃhð>9pð0 ØáNf½y4©ñqñk&´JÀ}cXøw̺ÃÃGÛØWç¬zÓÛ~gú?wÂ\!Ï|ï!‰é‚’»aÈàN-&ŽãÀ¶<-DÐ"ÀØòS-j¢ÂÈ}Ò±Ý&Ñ}sæúðÃà—+Ký³à“ÿ§>ÄMþšÎ¦ H†ø¹*K fädí*Ul³¼u ó}°Ÿ™MÍE›Oò/ç¬zÒxϤ©^9)ÃøÉûdGê^ÉeNˆNnuÂT­~ÉaõŸZØðÆåmœ"Ï‚E©DÐ?•ë)3‡Oõ'!×6óá§îw æ2¢v©g0xŸß#›æd(ðŽr]݆ܭíw5°ä05@­ZÊ"|9œÈÞë’Ž›óÖ=éY'$d¶z:‹©ìƒj„¸„lJñeëÝêo³0—”{l”qfÝÙôKHmv×—c/SH ³ëÀp‰ ¦ÔwTPKÒ±ž!¤2,q÷g °JÍb9,¯Opl&uá9g€ 2ÊZ;µ”ìA ´(|àÝÚ½‡ª™4‚ƒóÖ=é\:÷"¡”§ŠÎ*ÖsO‰ŠKèî¼1+¬æˆŒ| .Hój yWØéÖk{çö³õMi»>Âi]×¥t']Ã|=ÌBŸ(ìhI§Z"#™OÅøÃÓáWÕƆث·ê‡TbɹÙy•Û^¼ÀñsV˜_/ö[OH»=ÛoЬzÒÙñÍä+ãîd×Ç 1µžÇ¯‘Ë•3@¨u·IÔ¡®Ì®Æ R’¾I!RõØä`zî»'#òFJÝsn° ¦mŠÛ¸VâÑ#³tÇx§˜œÌˆÍï®óí (’¦g‡Ã×[pøæÞWò]ó3‰á=fËeî%ß ó&¢k‹9 ,ÿ¡Xô¤ÑhÎX—9¥±†ÀA9¨A`k7^h˹¤Æ8šXŠó 0çe{¥®º&M¬™)Ë¿§Ù¯qÓŸUu³[7,·4Š×a’6?Êç2í ¤©ÝDš­ŽL¬½ŒÖ~~a2:-Ε[cºšO²1Ú#Zë¦7ëÃÅõÇN*'ÌïÍu;ŽºÌµ{ Ö¢Ú6¨sZ·æ¬zÔbÕP²«Yã6á^sÚx>u *%6&µôjeQ…å¤caO¤ ey=jÇBl¢òÆùñþsµzªTÔ¶iõ‚.[!ÝÚnú†X£/0²щa<‹'?úï™å7SË|÷úë„IE¯—°Æn¼)Ù,úÛóÖ=ì2×Ã+˜ÖŠ’Ý†+Zن钶£´gðû¶ºØ€î¸“XÑ4˜¯MbªVî½[5kjèØ´ûkê$¹çm£oX@žJÖ2>ÒKŽx‰Ÿp÷oöYžP%ë?m_!Å—óÖ=ì”(¦Áµƒ :°´wýÃWµf‡¼Y=Î$µÝöäY<¦“¯Úî9Tz¾£€$5ÚÉ‘âhL‰Ëëœ}…‰í «jV*å÷ô’­_žµ\÷mg¹Tø?ÍXô¸ñëè4´›^ ×ëdZÕÇí<â•›hþ"ã0÷[|›þë¬ €¶ù`µaîJ×'DËQJó>œª{°³ÖØ$@%k^w³ö¶&æá]DÊR:&ç‡}i—RyüÕAýìŒÍm;¢wù­á«VÒUMP wÛ²^WöJÉ?ô–(§ˆQ íJZ×kì¸uŒ¶X}ÑEhÌFVóàWPЭZþÕ@ºÓÃlÛ?6:ÐaXZÒA¦ViUÛãúx =fH›eeÕ®×…?´E5„¬ÿ5cÐ~¿ìþ}œo™;ö3N©ÔÇk¯pM¯ù¹¤áÞ>bú}N¢.[n©¬äŠJ··e\¾ƒ¨/Õö¶áT{¸ÖAÿ6׺×°«´áDÚ*¥xÏj* ½÷oá¶/c+OXM´³w>ÖKƒÖ[h)é:ýÔ—ºIÚD}šò½Å–Î3ög†2c«Ûf¶oÁcE‰P”›ôx…C­ÓCðXÒEÚ…ý*[ùëƒú>§­/øê‹Ÿ_ÒM=R)È`ˆ>Ýö¤æzúµiIkI³.kîÚòÈÅ'zI¨¤GKÜ¿ùL*†Èòío:Ù¥6M‰ÈeÜ9FÌ×XcþT+Õk^úï^{,úÅ«•IYºX Â5Î;UC¹±wøí•ÿ¨•@%ôˆ)ÌÇœÏXô ÇHêÆ¦­H¡:è´Þ³„Ǥ¯äs[K`‘Þ© XXõH©õZËVP³¯É©5ܪÔÕ‘">…rª´šÍ$nzÊÒÂίUÒ–ËÿO߬zÑ»^ŧq†ÓµÖ#ŠHæú¶¹ù]ãÿXô£°hfZå>óµhÃ^Ç á´#Y­öœ­Ûï!Úl´ª„ÊkŸJ™™ûß=QuKxÿñ«ƒônÕ fNkŠæºðˆ±6Zú]ÍÕÚz]Ò·h†—`Y¿»Ql¢Yv% ônÄÿãV=é—[JsÏþecÐy ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^"€ÄÿÄM  !"1AQa#2qB‘03@Rbr¡±ÁðCÑ $%4‚7sƒñPScu’³¶ÄáÿÚ?ü½‰è/µ‘û¿öàÇOOUô–"©‚ˆÿoFáÏJ™Ž[ŽÆ×}?n½ÙOôGâù ÝÔ0J‘î|%†’ž9þ!Ý*qtŒ2ÝISc¨$t;. M#äR jª§ £2ÒÓËPȤ† \E€l[å‹[<ìé&š§F1¥<0I4²GÖ\¢üs*“Ž2(Y๸*­MBÎ e5‘Ø,нT À· ¬±Ú]\Çkqr°áOOJi¥öȦvé¢;¸¨‘! Ù=p*A [ôf-TÔøŒO†¸jÆKZ'3ñ¢…naˆÉ*¡¥!Nc)èÞº7 >¯Uœ:dɉ•8eÎ [œµjϯ*5%KRú㉳Iãƒþ‘ø.Þpÿä;×ÿ×Ûð„ÿ¹ÿÿáî_ÿ#Üû+bz+¬Œ¬#¤ŠRDu:tfFÁ; ,¿@H -ÌŽ%†JiŒ×š@ÔóMšR-#0´–pË’âÄ#Ž$¾¼5ޮӉ:––jx„Ï!wxÑ!„er!ÚA¤Œð¸apTÁK"­Š´p£2Èq.ˈåÛ‡ ‹¯8›¶|ïÆ19ÆÁ]*K±„‹1˜Ê¬x0͙ىgšžwè2šžŠJkdŒ£Œ$Jc‚‘ dgçes£ jå¸ú²v¨’#{ŽLÅ£µ¤ HëqúOà¹á ÓâGñ|;ÃsTnè7em U$5®wµ%UKB!JÞÐ#Ä’‘ãŸ#O*£ˆ¥‘Õ”}/ø~³Å?G'ÜtPÓÕUÓÑJ³ï*‘GCtÒ‡xÔISTÊËkOI)â8À5³dKºÖÓ :ºŠUª¥­ò´^ÕDòII1CbôòÉ-,W¾2p¸æBÈU'üÌ?½ýÔ—4‰0_hh·MMDm-IJË%eRÌDÌ™L|Î!¹l–nE5ÌŸ‹ùŽ'†jŽøŽUþU%5TYåi]YŒ”ÌÐ1ú¡q#Ùê+¡†I«öjjÉiKÈÒWŠxjQéì­¼8cs,2%ã³d¯N$o„ ¸Œ©$CW1L¹Žf|´ÄÆ?ЕYÙQÝ‚¢(,ÌÌlªª5,N€ IÐm]A[»*d¢Þ4•Uq`d§©‰¡™ˆ$BÈà0Œ¬§ºGûÓÔT±Jx&¨uRå!å`€€Xª!Aeº\ÜlA‚ ؃¡uv#o ø›~xG{Sï¿o÷nð§:K ºK ½=L-xª©¥Äq)çG‰ì \•HúDúnñÒ55>î®’ Óº"ŠhÝ{¨Í>ð«@ ÕV´’<Ó'gOHòz`#8ËP†¥¶éÓM‡-±åÆØÛK[¥­Òݶ°ûÛ#êÖ¶_½bEúØíÜê,p:ØÂài·r{ž§¹ùžÿ¡îÊJŠýãEGJñÅQSU PË+˜ãŠFpYeHþ6*ŽöS‚;YNíÜ;£sWKY½÷¥föñr¬f‡~Äd‰!H# EH¹C4h²KO+O²I‹´bœµ†þÝÞ®µ›ÄM\ÔÖÝÕÒø^ƒØÆîE`é_WÃ¥«G+«É]ÃJl£LdË5Ýžð~ö¢i¼/¾ªwuµ™x‚ª÷‚ÇŠe3?¹™b[ÒA‚4°´jÒÇ%¼7¸ýº áJþ*о8Í6ò§Š¹bÝ(öQD”Œ#¦ŸŠ×ö©dE¨Ž8€ž-¼)I¸·vÑSÓFUL¬Š8Õ(üåLÆòT>¶ +1Uå\VÃo¤/Ðø®DŸpQÒRoÙ'C5@sOMQ ’É\$ ñ¯:ÉF¡í‡½åA½|¼7'ý––·Âû£}î­ÉÃRw]’ye“‡o_CÃ×S´¿ï3 ëK$ïRª™Ï5oÑÕrxŽ/ QÁšM/‡é=ô¨Â $ÝqDbjvœ«š*W—§½§ñcÚÂ> ñ>ðOUn˜‹ £§og¡”õSÓÓà²LAµÃÝlÒ¤f:ú$Ý3©ðzµ=|’Ån·ž?a•YÂË4RT8zV…Í(âÉÇÀ³y_ôU¿·ðÝï·¥M×]T”òo]ß7´Ã (ò˜Ú9’žt‘Ò&XžHB«Ä$…;Ãè~“xï ðžõ?‹Þ?ø„»Ñ–W¥dX‚¼š(ý©êOÚ°,N¼XÝV?ýoß S6òŽxw¾êŒ/ªözŠk”\ª(žYO³€$‚iñše…l[Àž §ñmeBVï?Å”t¨¹:ƳO4²e‚F¬èˆ©ŽrHÙ}TD93ÅYôs¾¡ÞÞš‰é÷…訦Šmä²CN­ RÅ"Ì)d™§¼J¯W|c‡’Ë%4ÐðóŒÄj* ‘*á:²êdŠ/wÄý£etfGFŽ„«#)º²°±VR.7Q·‡þ–k7 ´Õê³gšDª=¡Œ‹oƒ.Ê èËîÈåwø¼?ô¯C¼)eh¤Žš¢ºi Bí5"Ieà‰ É—]KëˆÊâÛPxš`UWAŠ€=-aa°ñ=,t›ÇuΑµÙ˜£UŒš‚᥌YF¹q€§á:ijQ»Ï >ò§•©%xe^&ÈqÍ3ljuG”g¦Y‡|gKQ-T±UGQÁ™iähØ>±£”, ³¿.—$|A¶ÞÞ*âRÄc”Yg…åS©hÅôÂÄ? É!ÀUm5ÉWÆ©ìår7 yI¶¶þ§h¼iºcÞ3ÒîÍç¢æu…¥Q*‰9Þ3¢¡h›+ªdLsÖçmáô¡»(ëé]â¼e.Œ#/,qq0³NÑD¶ œ”16Xíôô£G¼7;n˜'5IK!jfÍ!X&Ž¡\TÃÏ(Ô(Fg¹ ¡Ûè߯(Û’â´’¤’%Fo”« v>ð’O2uý†t°—~M¾ÓØ)#†¦Y@¼.±£)š9„äFc‘/¸9ü'¦ÓÊ»Ç骚¦š£ÃQQîñøMÑOH^iiCê:š@8FéTccÀ‹^V¶Õ~ßž!£¢ˆÔnØhhª hU¥§­ß´)=8DÞ•T±ÃìòOMJØ5C,¥bY!É¥Žh%ðØß>.£¡¡Ž()RŠ«t䬫„PÉSO[, PÏ PÏîÚX`“–#U!‘ß©•g¨žd†:tšieX"¸Š‘ÙÄ1ß^`à—×?$ú¥NcILýØ`»º-æê‡ŸQ ˜.X†‘uÁMönO‹OÍeß8C×áqD‘aÄÇ.,@k,yr1]j}™ÿQ\GXò(ºe±J^äF‘«I$©î–pA¹¸²Ä“dN*b’^:1²Èb"^bd!1c~7|Ùn÷ótT’Ü7À!öÜ%2˜ÕV1 f "Á&ÝðY[4nX+£ttfÔ2’¹#-t—¡Ê4µÜ_-lN=´òî{–9b•*c,eµ ³#Ö÷Ô»R}$ojZEJš4žuR«P³4AØt2Ä#`HêÅCvPMÁÞ5SOYY”ÍZòKQ›±9_'º†çëeÎܦֶ›=D…A§Æ)üÆ\ò:s_–ÜÖdm¶êÞÒnj¥©¦©’m&‰9¢ke ‘Ô\‘ÕÒ÷L˜oïM좚*Ã!I‘iƒÂ“ÙØ³;"‹ä„ˆÍõ m*7Îùž©äÞRÉL#HÊ$¼­ ø™MÏpPœ<”Xmƒqp{}¶’ Îw½õ×S¯ûùí,BÃAo-·uU~ì”ÏATô’c«yJx¤Qr@‘X³`Þþ8Ž’ÕøÚãÞñn÷|ÔTT¼´µ3¹ˆ“2'4}iš%1¬ƒHŽçúA¥Ýû–]â•;Â_oÍçñL–¥üYp3fŠŸ%-yž2c\7o¡ZD”TFÔø{ÄF‹£ÜŒ}ek0:›xãÇÕÛÇySPÉmßQ Î8ùRv<²3óÄœ<<‹«ÉÁ¤Þ Rxep’תµ¼µ±ûÿ$þòIËj’ŠuR*ZfVìÊï½Æ.ôÚozÒ0ÿ8Ò3«|*ic¥M1±“3H’¨b827ù‹)l]j#pLu5µÓI‰³ zê}íLè†Ä U7˜*Ä2eªÀظ⠎C¢D‹ ±2Šê:é$u$Œd40B"¹á/PîÏŠ½¦v2w*VC"!æVnݺÈG#󑥸¦,ÌŒb xö_R,WAlœ/)Ôã˜eQ,G|ع¶ÕÕÜ"»‡FÕãéû¤Üd<ÀºŸ]­M ¦-<€mJèn€ŸM?†Ëš·¾7Žâå®qj;è;½; ¥VË”œAå·OC§]‘r2BÈ ­{n;ºX–íÓMš#å³+Õn|úýßßžÑeß­ô ÷ü×ÿMcTÏ$bž°âsXê½E»“ývˆ,pÉ9g÷£ÕÕ‰Ö¾€yºØý›RC3̼5ý±È}u6ù¯m¦PÇ¿æîG[~±æ·^ƒÈm ¢¸–ü>ºMíÛQÖÀîæ¢WÝ”Ãàp×`ÚYˆÄ è>òF®ÓÔ*(–Bc \™–$£ m—.€Ø7)Ò÷-4Y1È‚âÙë~k ×­úíENDêÝ“R~ΟoO¿ò,q‚¡î¡”RfÛ‹¼¨ `,3Ç+ƦÖîJ‹°’Ѥ"@‹MA"! ñeªÞ Aĉ¹ð€;(ur\IM=£f„³Ý ©±)[KMq )Uº¥ÞjöÖ̪#Œ‹°¾fý—’Iâ]Z(w¤ªNƒþW¼)Õ[¿¿Z5Ô~m‹’b6`\TG ËÄû¡ ±ÌšêÑ#p€î#®ØÎå$‹"YÉ\”«°oYcqÎ¿ðØ •O=Ü«0©BxLp lÒ,‘¾Å­‹#ÑTOê}¦)DQÒ¹]Þ³uEÄ ê¤ ãcÛ×Ïi)ÎGçm‚¤aNFØÈ>©¾ƒý–ÛÞ ë$k|‰±¿Ÿ?]MvãÆ¶r[ÙY?S×/­Û°ûµ%,ŽØ‡Èªpù‡ÍÉ<šœO~öë°exö˜Ø 1¸Ó˜X>eõ²Èøeì§ý|¾Í>íš4N¥C0ä[êßuÀïÖÚ‚ÎÂW¸¸>›a†5EZÙü= :]{òÛ¾£ùlTJ™"ãrn/}G®¶ˆ€PÔûDfè¨È@!~~„Ý-kŸãoÈß•×B®0 á,s'PlVX£u"Äíú÷æÎ4‰³ç8åãF =ˆæ¸·Bnz]}z^8eI4Ö<Š‹¸ør¶€\šöÙ*c.ÓÖ&2/*«t*Äê:ܵ¾DjZ#Ôg›ÝýkéÉÚÃQåÜì⎤ ^ÖsnköôÙ©ÍöwšŠ1^Ä4Ès[ÒöÚžõ$Dâïm÷±õÇçÖ:JÙˆbç ôùéùÈϽІ*xU½) ù’ç§`<¶ÝÑRîêHâÆäb>¼’ wsûÌtÔÙl£@?±eIä Ï«^äõ½Ž¿²;/KvØqUS¤a¯‹Üã|Ëk¡è5è6dŒÚÎr6vqðòSˆ2@õâC6²2²‚†ÖfíÓ{ntÔìDÒÇœ³`£5ŬFª«`Ät&Žm²Ó6bÞc§÷ü>ÍŒy[ˆ¸·68ƒ‹c÷ØßOžÜy¦^¸€ÀÚÇK oßBNºé·³›ìôÂjx˜:¶ f9-ºÜëðòô7=¶1DØÄ’+0ÓKêoÐ\Ç_«}¸‘BL|FC¥Í”k~À–ïÜ|öz¾$YÁŽKœÉíÓàà_å§o=‰G½²¾‚ì@ |õ·^ý¾ýž0¡„l «bzh..47ïbGm©LÑL… |J ‹Ù…Æ„t?ë¯]/âýÚïÂÞQ.AƒSnª·¼Råvdvíîûtܾ!©·vî|8"¥b2\Ã%Ñ"7ÐÝÃf5 ª½ËiªoQ.0å{Žwb .€…·O†ÿ鱚I¢áÌÑ¢ƒu„òÖì.oö{í QÀæ7B§]Y‰Ð2­û~·Ã}ÙS+1³¾,‹`×ó¹¸o¡>ö+a›FÓÍ€Ó³Zý×"oÚÛ$’' ŠÊ©GêUů—1›X_ËÌí— bTć=uÍSM:ZßmÆÌPEå÷—epªÈúXc÷÷ê/"Çg{©`L¢Òå5®Úõ+{ùèt(A) ‡"d©{|E¤éåqò½ÄpO@A7é`GôÚXI;S GF <÷6úžÝöt§’\d´1‹¤Ë!6½AõЃ̶òÒòOO8Š6lº³5†žJ§Ôž¼¨^šf¸LºâÝ>j@ÖÞ¶>ÿ.ÂêFš‚9†K¨î4¸óAá*äË4òÈ0" |†(ŠY@=’Àim˜…RÇ¢‚OÈ ííp™G§:| ?V>|½ú›tò;3GT×åŠßRú[MCãßìØÑ2ÅÇFRBýV[§îŸ3®ÈÖ\ÅÄbCvkb1·ÕÈ·–¶è5;4-–ÙN‘Ù…é`úhnÀeboß[]£ r¦ä6…Aµúü¶yBX@&Ńœ¬~ÌÏOºÛ$P±¾.ÊîmæÂýÈ·ÞO];ç˜$}`FžV;K[+’¥#Á¾%]:¶¬—Ð~ 6OÍE"Gx€<^ne#LTôá#“PmòiÖV´AýT±a{ZçšÞ~Ý—\.ê`\–€.¶_¬[#Þö¸é¦ÒBo¶ï‰…B:OÊÖ?Îßoè.ʨÌßROËËíØÉÌUS†/ÊÞþzØÓ§­®vZ^¥¬»éßûô¶Ù*ÇÁIÃ|ä!²Ðräòí×N–;óˆ¬ h/kÓ¨ôêN—Ù*™šÅ#ï`rÐ_+ýçæv Äy¤ goŒcåu¾&ÿVýzõÖ>FiK.¥[\º‚lÖ·Ø ÛùRiIp½Éè-•”Øö"ù_·]¹Æ©f„bTõéöuÓ¡ ¥âìÌ–$:h‚Ý€¶Ü(ßPËÓ#rÃAsr-®›E9CììS7Y5¾¶³Þö¶ƒKj=uÚX¢VU`áÉá”j-«k[¸æ7ÒÛM޽¨óäp¢á9Mͱ¾¤éå²Hº‰‹#!¯ÆnÂäë–«é{d²Ô¤ÉÂŒ"¾7†G[^ìBŸþœEüí´²Çm,αĂîîlª:j~z|öƒ~nꪔ¤¥‘ê%l‰áÆáT]™ž@‹ˆó\®t$ËÈ‚Dd?X[i Ž&k²’¿UYY»tßïí©Ù’FBK3«]I]<¯ÒÞ]¶1cplE Ðÿ l« CŒªy”[\®AÖÄtÓ¯KÛÏe¤7¹QÕŽŠ™c Ù±ˆ˜,±9ȺôýCå‹Ì¨×M XãQ«4V +Ìö÷·™é{‘n÷Ù 21e×]|ÁõõóÛ—8‡´+Z;se¾¬4еþd›wÙcŠEi(T 1k‹ÓKdo¯@{ìÆç‡v$f²Òö7còÓ]š¨"pR5áƒÕ®\úe¥‡¥º÷Úó{¾ "=Sª‚mÔt&ýn6’±¤ÈMN§€Ýºé|‡pzèE¶’®gÄ5Š¦Š˜¨P:Xi~Þwõé¶í’FåPœ¤Ÿ×V:Ú÷èMûm_µQUÓÚæjyQ|¡Àýcöm5ðÝ-KPêôï"‰ ‘N õ*mð¸gvkEÆÛ›xþ3 Ž ØJ Šp: R×#È:•«•µµÿ-VXSÉ[qØÿM–6â£_ïïÛ)Uò¾¾G§ÊÞ[iD36Öç›õ‚ùØ›ÿ‹CE“#ûX>¶Êÿ--öl‹5C[ˆò#-µbÖ¶&æçK[˜Ÿ™×bM0Æ2}r°p?v÷C~æÌ6U59Çe­‡Aåë³,ÑÆñ–!IQŽz_W#›Ð~Ëí‹ÜylSð6XÏc•ì:ëÓ°N»$EdV·Cü;ÿ·Iª¯å¯÷òØÅ=? ¬œnÖ,öëu=@A6©+5Œkt*H>,l{u±¾·ÓKlÐ-·l%¹èl ¿_ðñƒÄ7lHÖâ½J˜‡ÖåVâèí(ï·‚Ã{-k}C®ÍRî[‰Ì¨S]:Xiýv¤ejh°½‚…³uéÛøz[i7fî™Ì’ÐÒ;ž®Ôñ?3ÏÛ´PÃá QÄŸ«*/Ü Ð7‹ =s¾c­¹t×µõÓå¶ ~ûq£U &LÀëä]>Þ×úüvZ|ƒH*5±ÔÜþ°í§]v( ¹Ô]•”¨UÉm}Ô'@¸=¶÷M„mîäS`qË/>b;_µïo j0`¸q6$õo»§Ü}v²T;¬a¹uÇ‹~—¾7 ~ö¿™ØÓ˜ì+± ¾yš GÌìÑɈŽWÉÅì †`ÕµÉ:ëç°€ƒsÛ]ž²7#UÒì5öòQ¯—úmÊÒ¼l=ä£ ÈW\GŸv¸¶^2ÑDÙ&Žo­´¶ºÝmcòÓKmÀ7éµf*uës|¯k+ý¿¡p–e*ý/å¯ØÝ½®Í»\‰?t{ÙO»i lŽšßlå€.Ín¶@HÓû×hó$Jò)ÍXµùòî§¹ë¶qüRÿÌç̶²õzþÈæ:l°Æð‡u Ž7bMÇÕ¶Ÿ/-u '^hYr:’€_kGŸk÷í¶Œ³+­›]r{ü_qÚÎB®Ë&¡v‰ºµñ b/{z}×;-‰u'¥­¯^ÿeö*^*­{ ‚Ý.I½®G]-é´‘4sæÍŠ•¯þUÆGc~ƒ¹í×cP¼Xø‰"$–E‰½ˆµì<ÅÇÏCoÐÃc¶Yé×Ïf§Š^lÌÞýºë¯Û®ÒPA.?Q††ÃK|´ûþðv›uÉÆN±òsvL²ù›w»UP%>¥¤&Á@]r ~cs`m§SçРY"ŠG¨DŠ•€eB½‘è]ºukßBºl˜;DTH{Çu6î½Àj?‡tŽ£uÈês¸Ñ¾ôÛ^½uÚE§C¼ŠÇK¤Vr†ÄÜå}{Úý6 K4ˆsdÎÿü$vcÓ¶†þW¶ÞÔë ij‰¥-¡Çá¡]@Èý†Àõì/\¦ $ýDùX’NŸ+ã¶hËÄ÷’Ëð8&×Tßšöµ­§N»^Œ&9¤C’´€)ÒöÐëcmTê~ÛíOUÇy†É‡F&ᇟAcé¯Ïô;Û¦×>{\-®š…îy‡aç²¢üö«ª"áz†¶škå×j]Ú±)2‹±<„ÍúÛMoóm-%ZŒJÓCÿQ{– n ÛM|ô×ÏjJ9%vŽÜŸt_/¾ý:›zmUDô©kƒZÄ|¾¶¿•…íÞÛ7þÿ†ÓG®;|¶XH¤_¯ËK޾Ÿ=¥„³\j ú¡ÛwFÑÁÍõšãå`?§Oõý1küöëÜþ×–Ø­ºïÔm•¾®#§K í(IӆïOCæ6;¯¹p~Kþ§ývZjŽ#¬±‘lñ:š7k=–H®ä ’›¶Ó°kÐÿNû$®ŒŽ€*"µ mt¾¦ä\Ýòë­…†›So)dc‘8ŒA“ÓÎã¶¿”¦(®üHø€Á8,qnÙ¾½µ·K5ôü‡‰÷õ/…ü=¾|C[­>çÝÕUî—ÄÌÐDÍ:ýåLÜ:x¿ø’(ÛÃß„Òw‡ë&¨üwøæš¢¦j™·nüF¯¤ <­+%4¦D¯£‰K°† jØéã[P<#øTøCzð©¼W»ë<1Tl­W{×t–é‘x"]áO™±hª1~%M—6ÜÛûrxŠ‘k÷öÝûÞ­þñ»êáªIú’pŒRŽ¡$B ²‚ÿŽÙi§ýWþ›uøSÒþ½v›Bmë·2þÝÇ÷}ªiݘ£Q7MŽ×éÒöÚŸv ‡ ›9@5ÉÀÃÌ_]Gsm“wG Šùgm@µµìzŸŸÏòügÿ þÌŸÞûŸuïíÝSº7Í 6òÝµŠ©SEW– ‚H²ÆYOFŠXãš'[ð\‚“'ûö'Nºu¾Ù[ákënoᵈÒàéöŽŸÀ\ò·®»÷ëù0Þ6—~VÆcð݇…'ü>§-ã½7œ•‹RºÕRÿÁá†)©ZBÑÇS?³ÍAg©Y$ÇuÅ[»ë¡Þï)w‹Ä%>ÃSI»Æé΢ )æ‘)=¢H3Ì”ÑWWW=1hªÖfÞT´µðþ2ÜséUá¸éÕuS¹7®ð£•q;o“â8ž;j« 4ÎV•דoÇàež‘¼SâI jX}?ˆ)(X°ÇÆz=áEU•d2ËŸ,Û«w˜­t2$"Úw8 ’AíMðÍRÈôÐ7ìÏP#ˆ.×E"-O±ñÙe¨§CP9%w–êÐÚÁo ,ÞÎSÚ0ʱˆ‰T”½4Emí·zÖpÇH䢤¦¨Œ+œIªÅƒ‡¿ú\®Í¡¶™©‘ G"Ù©Å®6e\ °Afè‰8@Tu権¹Ä_)]ÏWm7ÅÍïmu÷Ò I.¿æ8Ñßâa¡'ü7¦èÝ{òÐoŠ ]çBÒÅ3ÑWB•4’ɉa3ÓJÄrªÈ©2: ‘H‚ž Xc§¥‚jx— ‚4†Ô}XâŒ*"ú(ô•øe§( r|+Œd…Ž¡sŒ¸V6ñ»ÅùԒ➯„]/H¼K± “å»7 Rx©!¼ÜI2BDFÁÛS7 ’ÿ‹¸–÷\~ uB©”ŽºË»ƒ¡ÀNh%’îJ-@ pØàŠá$°2{’%ö>ö` –ŒUl‘âœLÑð¢I±VSìÓ#—*MÕ(k3ÄÔçvûXa‘Xå3A]<Ž¥¸ÞÐ3dâ?Óz‚§ák^Ì•ÅÇCgUq~ŒªÝ@ý#ÿÄL  !"1#2AQ03@BRaq$Cr 4‚‘¡Áð%b±Ñá567Pcv…’µ¶ñÿÚ?üþ ö0þÏýÁýA =ôç†)ÓòEó¤Ñ¬‰aÁÕÁcÓBèß̲CJ¤R*qšÉhQ×<׬¨d±#Æž¼1ê$³n¥Dfª5«1Wê2‚¥„}Mô ¥õÐ0,ŒèTyG‚Þ¥<óØŽã—:ÄC =AÓ°õG-úÝ2‰ë¿Ô6‡±É¬™#f‚hkJ¨áwÞ9Aˆh7 ¢cˉ«ØG¥dcRé¡<£0N¶R>¦šbê½¼{©qÉØ¢‡º¡H)W¶¥ØKéQI–8Ú8Ä3LØ$¦ ‘% ï©a¡Ò½ÚÔ%Œ©ö“â,S“öÒq(Ì1æ±®À™ªùÙî„Ãu2½õdeËg#õðÿ×ßþÈßéŸÿf~gþçÿæøß »Ý”«Ç":®’Dë,R#gŽDWSûÊ=ü»L¹‰„ʺ4Çf3ÐB¶!†S¬#nš£íc*ttu2ÍfvÇö²Yãæãã8 iß ‘ôÑ$Ëêw”IÓS ×9hU,¡CX³vÍ÷$ãde–ܨŒô´nè¯à»d›8y,Oc=ަÍ$¡b1¶r’Á9/´¡â ’®ò‰ôÂ*ˆêÚ¤ƒ¹Ö½®B¿$W$ìíõÕc–Bò´o']欋ʈB=H!§í:Ô`F¿6JÕ!YÌD‚ñÅþ³þþZ´yÆó,wx¹èÅBÕKâ´Ç‘­bv‹¤“ÓhU‘\#²M±†@Œ#‘ÙJé+†³æ$sÜM9jA=ˆjȳ^œV©Sä*]™ç°U–$WîÃ@q±UË p ¶f®,W´!‘£øŠŒòV”©Áhdxâg?Kèþ¤,¤1³ú5ûÿX©ØûCïâó‘\ÈÕÒ~V¬õé$odÄÄô]úÙá(¦s#ê¨QëüÉNè4Š.Mõõ(Ÿá'òçE‰$·i9•f1•W‰]En1b59‚±Ûoˆ¯ÆÍ4Þ•øSrÍ(­:±Ä1ÅPÙž±K*í±«Ï. ³˜ùo•Õ’ÓħՒ‚(\Ç)>ž¼.Ùm6Šxr”³þ¦¬®6F §Øƒ‘þA {?™Çø¸>{–òß#+ÂÝ–Ø}¤ŒúdL‚ÐÏf9à| á•^6À$d<íý+yŸÎÐCJÛÅÇq±Ç_㺱ÃrÊ^{LîòʽO\5™Ì0‡Y&N»xÿÈÿ¤wì=ǃêÎÞ¬ç9ïœûç>ùûøþ?pºîe[OîìªuöÊ©÷ÇØ¯ì±Ë/ØžýÈö'¹îãìÙ{öðíú›°Uf9 HÉþI$P ý¨ß¾}Mî>ÄcÇ>#yãô®>¥>ÛŸºŽãêû÷öðóNŒs,Ø0(Õ7cüpþ?ðÿœ­¸ÊÆ[*Ò„Á=Çll;ŸbqŸá⽃>ùŒÇ©ç ƒ÷ÎáþÂ~ߨÕòõÎbY…y&ÑPÌGhaBpY ö-–>ÊíìŒG#åÛütòÃ< â±Uy¡jߢzg@c?/,Fr 6@Õ°Ðøè1ddã_áŽÇÅÞ£YîS–nijV‘µ+"7p BÝ91ÜÅ&’€UŠjTø»ÆZ¨µþ&´µþ&bªêÂÌȲ ` V(u?q†–RR¾¸û»þ>¿†â9¨—&¡m*°Ú5¦›'U+1N™ {Wv즹Ï@LèÓã¸ù!ýC_«·.ù˜å$izB„—C%ÀÑ»8 %|u[ pÌáa°ìë§2ùzßÉ=+`¢K ÈJx™Gª<€}.7gFÆ éÎÍÜg?Ãï‘ïà j)R&,ÙN¡=íŽäqíøŸÔq39fýŠÄØý€IÎnøíøýÁàfrs²ÉAØ)Pqß#ìO¶qà 3œ2}Ïñ?ÏóQzþ@¹dU_^®ü”œdM&t´èõؤm‘¹ðŸ3èïž¶¹ô™vuœÂa Ž^¡‹p)‰ÀŠBªÁ‘dÏË’˜¹;Ë$o7$AÚMgü§‹Í$Í1A&gzߺ=ËË$WÔÂXaø™QÕrјëü÷ê Ì>Žþ½q;}ÄD*|Üõù^…}Jþ—â¿%‰kÆS1ˆ„)ÛÔë·ÛvŒ÷Y)xÜ{¤Š²FÅ+i">5u'Ç“ét¸kVëòb· «:§Ã«BÒÄ‚f,æ·rà¨D#ÐçÀåiÏUø¹ kz’ôÊP‡I¶Gnà©ì{« âèë¹uÓŒæºQe ž²ÌÐÅ c²Ë°«æE+f4ô†Ì¤§®ç U«ñ¼?3n„ãž4€ÒN•‹Ç]Õ2dFè£Úhã3z—"UoP§ÂQŠicæþ#¢‡^ã$~ ÅÒ\Ç´ÁËB^U ¬k$i”Íðü¯;BJIJ¼ÉªËdDÿÙ³|(^¤Èò(Ût¡|zÔ`ùoËpðñMsÌ\ ïðÑCc§aëuïʉ'vQ.òz}=2éÇð¾]¯48™â´mY( ư+•Ž%­g cM£håxÚq¨/+1'À·ÂU–6V]YXV`‚§±v yu©®À'Htõ@½°Šª¯î€kìñG–ÔfG˳fû1cœŽç±÷£Ûî}üsñ|¢C_‘§ññ@";ØxëÄ€¢AdÈoFÞ8$ÁÊ^å’šÅ:0\’*°tz7 w13½˜ò€FÈNõÙœ–ýGh9›tMxª´$¹NóÄ­»ëH¬%|ÙsK& ¬}E_^êËê™9RG¿ˆ>RD‡ûìÇ/Ôë;X+¶ÙcŽËBúgEÉ1¼®Þ"Ú#Q×]êqcÒ@®} ãÓ¯`v.ìrF@‘ ¶š³N¥Ì˜Ñ øò•ù^”–ìU¦Ôí¡+],ÎCoˆHÕ]a“Qˆäm'Sôè;•~v„¯ ~":üE) [¥ªçHì–gŽ·h¢$–ÛÖsìÅdo…žd*—•XİˆÎØ-Ó”W ýúŽ} Y³êpÜlÕŒ Ö#¬4zÌd¿p ÆKÚdwBddŒø·d׺µcŽK4ÙD‹#'Q8ò’ ÃÉ«ºÅ\°ß³‰õx­È¦£Ô=¼W³]îØ˜*†Ø&p2Hfþlsê÷+¿‡$µîVѽ’7CÝ]TœýK‡!”ýl0 *Ù¹bЩеZ&’xÅë0J”OE™sØÖRúˆö;*|rÙ»ÊqüDp×+ÆÈ-ËqóYàHˆZ¡õ=Gw’7hÐ$I%TºùŸ•¾óP†Ÿ8½6NM9qb0¡@R:ÅN:1é õa[Ç,||Ò£üFç¦I¸±¤¾¸£fUTŠ-b[UmÛßy»W~@ÄüvŸF ÈÑÃÒÜÔ*®~^ÎɪìÇÓíÝcà¹X㘵ø­ü@U³U똠–ë$ýgq¼lWy Ù:Æ­„«_†á,[±/F8n)”C#ÇpÕŠ(âKP°—~’‰ó$Š$?60²• £Øþ9'«Èˆ£Ú8æ$$v5ËF¿[v ›®Â1À-‘ƒâ¾8Û¶ ë´ê­G+„RVH£m@P‹(ÎXã¿„äSO«Ãy‚µ –Vyk©}dîÑ¡écPγٕÁcîr{Þ+ñu9`’Ú±h»üxçzñ׎U_~™Y$nÀ¨‘Š( ½<«3ùÇ€èºV§·ZÒ;Dö=SFÑ•Þ1êcue}cìÚêJoÌcÔÜ2*A#Å$/ìFCE,ˆAÈ!o¹ONI%]>YêMBWbš—2Áò$ܶðü¦Êz|vÊœ.®(ô$•&’#6I&&2æVÌŒÌrqÏè§©j<÷"z1Q‚¬™=Û§IpĬ¤ÒJ\(\vÖÜ}ýXŽòN–â\çX§ø™™â\GÕ~°Q*#®Í¶ù%̵gfoS<ô§jÍ!l™%Ša°‘övV’7-²#E‘$òc2IB=Ga2I$÷3eZˆÂÇ^{hwø“Ó pGóñÄGÇÛàéÅzIÞóÕŽ>³;Á<%—ªŽÃXCz #+ê$`ù'òýW§[‹›”u5ÂÙŽÜ5ãK'ù˜»‰q#ÃN"@À7…óTyåJ¬E£B°ÊRnšýJ¯çÚ!ûùèUŽvç£m(ÃY°íÍÍñ²Á/ļ%FŒ­ýPDwЦJÁc‰äú+Æ7Bjè›Ï 1g¢G¦ÐxÈ®Sl…БîS⢫ Ó^ˆd¯iC)B¬J²F_¸Û«³˜ÒÌvøvéÁÖ· ÆÒ¯Ó:ƘÏU!GÃG·é=EG¥€ó:y©áÔ¿BmCöÚG#wÀ'¶Bç¸õvü÷—øGælÌc«­bAõý1GöÝð{žÈ ¶ Õ[<'—âP~аÀí™å'盲ެ}ñãçøy8ý«š÷¬Há!1,š˜‚HŠÑ6;ÈF(/ñþc§ ¾N •r)°yk±h}%£–tY—¦ÆH·¸öÏŠÑà 9b°Xò1HÆ9-ae“‡„kª¬}X䪮wÉ:ãÂsêÝ:í"#Êt\°ïömFrÚà–Ƕ}‰lCÇÎ>:¿AÈ–Hã“áѲfˆ…^ÑÇb£e:¹r›Ÿy–µ[·%šinKq‚µÛ¨¥BXC¿K'±YT°qü¤0¼¼…jV‘âÓ¢$YÄ%²2ßPËPjú¶AÔ “aŒµÿ%rkÉN5ˆÎ#š¸…FSYaŒjTut_p»Ò5^[^S5'hã›{†k;i cº UeêÄ̃XÉM]BÉgˆó ñ^ͺx›){áÖwXéËÚfƒq³Ê#fìøAË}…®òT‡†ò½³59ݬ[–ÓÇõeÚ-],À±%VD¦ÕË£j±AÊGfµ |#U4ë$VìüD]ÈšLÙ9nÁRUz«ô¢´¼Á™§µNH!£#@û¼lìα¸•R&“ú¾¸ù¥‡wÎ!æWLöü|U«Æroñ7 ŽÇ¯©M—[D½ùF\1Ä… ®}$þ9Áœ…Ve«º™`EÏM¤eãïÝØŸÙ“ÛÑÙ.yוŽrðBð$jŸŒ®ÝÉêR¾¯l·|±Øþ{É‘*pÁÇÕ5™ÝÏouÖ0?TÜŸÇÇ5j[|¥Ùf$‘bX•OöqÄì‘Æ? Twì2ÙcÜŸñy^Çkˆ¤óÖª!ÑU(ŒÇ´,É÷Y›©2âFbrç>qÖ&²H’ëÃÓYëÉbC1L¦!Y`dßd|ȇi$ aŽV¹uz…ê¯F2j×§/ùÜU=>¹¡dÕa“Ò©‰cyçTyN,Z½ˆf¯aãv ŠâJÐVA^OY°Úo(ˆÇßåÆO§1ÉÄñ×Ú§ÅIÈËj̆­ƒ4H°c±buy"GfWH÷H†à ŒËÎBÕ¤®¾Í¨×ò~ß϶=óánôCš:ÕþG_­*u¡3è á™ ‰©W\eŠŸHnÙü‘Åñ2¯%Æ´æi^OŠC&ñâcÕi„`®ªž… £c›C¹;À}Ï·`=òOaøŸyé8žo‘¯-KUÍ»),1´[1ª(ëÕÖmCÂ6¹\3âC’„MÈY£j´}¦åcXnè’Hð¯¤ç®±÷Q÷49>Y¥š;ƒ‚ÌZ¸XÞ[,Jtö]¤HáÕD~ë!ô°( Ùiùa¨ò W˜ä%¹K¤MRG¬Î¤º²ÙxŠÊÆ2«…㻀­Óñf)8ùXqâYëyBà ²šñ‚>[ôÕû(8'wUnÞ†>)Ü’Y`’ä‘:%ŠÿšõÃYDoëB¬ ¨‘@@}pU˜Œä¸‹QÚŠ»‚VŠyïZ@™G& FT€N½™AVVRTþ{É<¢'W‹™µ.ýz¹=™ˆX†h…WEÿ3ïïÎùj¤«Éòi¿\Õy„#² âÄ’L1Ü´‘¡R‡ »³û‘¯Ž+‚dá8Ö±Éô@ÑÊÓ« :Ã`õ)gÊ®ÊÎq?Hw:êÄ—1q4øÎC㸨nÚšHU's<–{ÌìÊÅŠ¹é¦˜ô÷h¢T!åoò¼µêñ(ÚLi¦+ÅŽ£Abb¯S±XWç2æH×ÒHèóÓV‚2õjµˆ¤|½ž£ÃÓײ„Œ¤²ÊW2"c»0#C ŽJºÜ5ë^µ\¯SâíšÊïÓUu¨7XÀÂL"HŠ`u]•‰¹BœLò+B¼Ï4V!·T’‰5gYº=è$¦eW/#FÇ]ÉÁD>#Æ|Zrw¥ã푪GéŒèiÏ8ÝL‡æRpTf-3ƒ–­™9+â>1–‹ÅVz²Í3@5¹’°ê+·XŒ{ôñòßjÅNÅî¥j;I_HøÙL´öï•ä+¬ºÁòËIµ1“tÕ£µ‰®N’bµ­fãDÒ,]#aDÚ¢Uù¹;#“‚:šé'2%©,Q3už'H®[¨É…ÂŒ–;ƒŸ9DHÐßÇ;f[udøïjúÆß "]X•?ü0}L¥±«)Úç)q¦Å6~ZüŸ‘¤!0KÅúHƒbâ6VGŒˆ§ê+öq»EC†æïתü•êðôWÓhL¬v×!æyA…XÐúÀ"B«‡ó^‹€£˜_‹›|D; 2ßÙLŒä¦à 2²äÉÐ~yN¬­ß±ÒunÇ>–ÁÔþ¾®¢ëâµ{þ^c-?"ÜÙXó)sû [•B£\j2d')æØ&ärµ”Y,gç@ñ>Úì +éc¹a:I¥• bêç·gŒ‚KrojÏG-éP±M™RƒÄêÍ4“çå@ljÊÇñL•lGÌÍðöyO‡”ÍÀ#/6°cuFAIÓs†"_¹5UQ°ûÃǹòp–bìe1$@}壩ÿWBÇñ Gcú…8&³n´»O,Ѥ'8ÖBÃV'¾ŸQ888ñ .GŠ­ ‰ìþPm1a⤱wÕ ŽÎ=L¨ôìQÂÏæ˜’ÒØÈd­êM/ÛÓåÈîßJãg`…‚yï¯+n”ÔùQ©EÙâ–%‹;9®òÆ —QÕ,#%•w.«_ÂÓ³fKAÚ0åѶVl#ìWa£»eÈØÇî¢Ï—á‚d¹w¶‚FO‡yJþÔºt2ÇîŒå#ÀLjÞ>F2°Ñh$ªÿ_üÑúÄlj:StÌÑh2èÙFô32nG…j¶ù%­/ ­©g“¥#걇GŠ= 36LÙi%ÏŽ½ÓÖ·ÅÒ²ôŒfÂ!Š2KzÒ¸šh‹®3*0QO ²HmjÈV;m$<¤’FΑÍ:Aƒ·ÒdGŒÚE;ãWFÃqœq§$ua‚¼¬ÖECU•ÃË ùŽ]†$v,Ç$¹änUÄrA;“ (e›©& h}ÛUfÀîpñÈñ[Uæ«MfNz¸N•#ÓÑ‚–êTéh$W*ò˱I;ŸHÐqÜ#zÍŽ6jÏRJhz²ˆY":æ=̦P­¤„š'PeGŽ*óßæyåèVøx>%®X•Q­¯QzpõÌcdÅRFÔµªVv…èYŠN£9h*Û•Q%„Ë GÒ !f$3oÓ ÑŸànñvÿ(_ksÖøƒ Ødøx‘“é)]$š" Îg+6­7ha–Ä© ´²Èp‘ Ë1÷ì?$þ¿‹_äéÕ{–âJЦ u%C#³œ*¬q™b~Ϧ$à þ~…¶£r½´0HÛf\ý‰R@?cßÛÅZç! (gH¬zV{çŠô’KHÈ€A\¡ei=*Oˆ.R†Üq%zõ¬Áë葬å¥ebÒúƒ•Ü1ú˜±ÉϋօŠè±:‰RE’?s——^Çöƒ‘ìÞþÄãØåc¹ÍBÂ0¯#õ¾SBÑÆÑeC,­ó3'¦-zŒ»¶º¡"Ï™"Ó¢¯½‡ÇJ¾lò¿fÇ m$…» Bœ†ÇßÄ /(±òš~;«±¥)ð‹‡d`m'vê\ÂÁ¾RLùV,@æ§»vZ\ú¶`¯ÈfIlĉ` Õ¾c”é<…YŠF 'E%Y©Jxƒ™J5ã‚`"^š¬yÇ"kØÅ!Q•×±_l|%ùW†±k½XŸ§Ë7L,q8Y ȰôبÈbBäzf{¼…+è5y¤³iY Ž-: ]ØËÔ M”6ò)Ë(,3sQUãºuãGi ¹,DmÒê§N!ùŒ²VÆ •­À5›c–±ÈXøÖUŽ±Óˆè£~‰¤“ß24ƒe h5ÆœPøßÊPE%Ò$†{D4sÉD¢ôå]eŽ2ª:n½°Ù'¿Š>X†ƒ@üg5e ¢E¸ºp±(бG‰™SæÇ(pÌH—Å,qu¯\J“Ù;Ø´Ö&y¥—bû¾ÎS;³B9;)óí*0ƒfv³ù^YÒ4l†³^%Ó}x‘ôóë Ôä`xã¬|%úvs ˜doî+Çò)°?Àø‚÷Ì¥ºÑ´v’&0؉‡fÁ×?TlAéÊ¿uÊ@>9Þ3òO#-eÉ…€š»s çþ%4dþÖ›vÎ?=夂Nn€³©ŒHÏ« «º#2žÃ wýÜ{‘âkµÍ9F¨ù íé8ÈúO«±È·|xXxééôZ5ÇfÙ=.:›ýEð$ç#ÒÙ¼KVQžE¹øX„„&©´$Ò–f$u1ëHÖ3—¸Sá+ò\†¥æ k1˜^à°ƒS•`r¥ÇWuí‚fn'ƒˆÉð5(\¯c¨Ý:ÑÄÓ<‚PR=³‰·E#'!'¡HñQóò¤×–Õ@ŠS¢êM(Î_M,Æ ªm «œ°\X±!‘¤f¦È¤K3ä@AÁ‰¤vΣ³+9É,FX®|AcŒ¿vµøà‘ž&°°ØvŸá•_¤Å*Äç¡êR¬òD¾ÅT1_J‹¼L¬•—V Ü=ˆ#øIFB)·ÅĶ¡u’I’©š# ޱl 4žîì˜â5[\”viK|ON=k†Lûö.Ädx»ÐÌvÇ@¢ŒõQƒŒ“®§ìÀê~Þ#ä¸~l^IèŽP&ìI2¡”IÐj$™ºH§p9<½üKI éŠ[KY¨ÌàÍY"Ž9"ÁÝ•£•$.1ÓÔVeb]5ú¾Þ<ûÊEnZµ ñm3·îî4Tÿ[ Ì=Æû7ø¼’žRWMºIQÄÇö}n5?‰%IQÿeØøóÛ/ÅÐQõŠò3~:´˜O÷«ãý?žGxÝd™ÊÊpÊGÜãËô¼ÅÊÔ‚Ü¢¬U[ £u~&ä#è–(ëéY]¾åÖ5MO‹5¹hçRQD22Ïb k'Pu„h¬òLa‹-“ f`ÃÅþ'ƒž¬+câ'ŒØ ju¥± WWu]´ ï‘«ú¼Tåªô ôÇéFû2/¤2ý°qöÿ‡‰[“äá²8á[ÂbZ' ¤‘…I r¤ç@5È}†<|G˜jBl[â.<µwŠíº­Zh§ÑýÅȶ$¶$`‡E@$ÅqÌ܆imñü#À~U·Ž{ 2KkUx³ªŒm6þ¡…,ñfÅ;”Õ ôä‹Õ¯m[\`ºf¾Ø ÃÎFÉZ¢át/ºY†8cP==Ws¸gl*ªDçê'Ò¾!’N:BaÇYš6»Õ‰^C,Q,rª¦¡¦„Ù]UâÃ> ëCˆ§ñÏ-îA¯C0K5`ˆ½Jõw–R!nŒÿÖÌ@ ÚnÄb™>/ùSŽæùƒ,×íš°Ak\:¬œ ™•ˆ•“#V“;|îê#¹F¯]©¥Ù)Æ”U)=h¢BÒBæH–rÊß$M#ôlË,™õ²¼rp| ºrÙ´’KtIJ½õ™–ñ–(ÀGŽQÚ6€bûiŽÞ$âxõ©IÏ%{+$kd£W`8Æ2!ÌmÕЖ FضÃÌé¯6õ¸«[ŽS«O/VEž@¢yÎ6Õ±êo å ðžIâúP‰^ÏYcQ3Ã*…–OvmdŽMF{(]} g-–*œO–é4¯¹$íbÌ€Þ–O}TzP€‰Ÿ·#'+zkŽ5 …Š<ç§ vDÏÜû³»³Ïù{ÍuŽ­ –8ž¼Äñ³ô1 _Hl|³Œ©zIØâ.RëW°b£fhX¹Rв‰RSœ§_E™pýØ ¡›¸ñÇÑ‚ÄÏñÑP‘ãŒÂÄ0J­³ ¿Uó…’>¤µý%Pȇwæ8N2òÁK­bŒM'[4äXPh0ñÔª‰º¥Ø`‚ë¾6Îb[Ô_¨N2!XÅ9 §HžDÆeÏnä±È-œø’NMa1¢A’æÌRJ~cÄÊÙëvCÆÌ¥rìBãj¼”}1ꇃÆqœµ¶–xÉü¸å–¥•%¦H]º•ö|¶b 9ñu†W·Lo\G¼ÐïëN˜ú»zÔ¨î l>ûzjÚµÈUŠN:Ý|r;LVPìÕÙvgUcÔef'x»í‘BmáüºjÏw—µ#ßšÅ|LÁþ*æ%\M &²ìÝI%Kk·Q5"¯OÅK,³·M&ê<íìÒõ%p¾ì¹H‚B©ìñÂZÌróM-KU MHE:2zãÐÍ 4š´±`ì÷ØkÕæ¤f§É[ø½; ‘Ã6=]dþqX#ÇÓéú•vÁQZ¢Âh»WjàˆÞI%° ‘‚«)gþ¬ ô¡ •>g‚Í~w’[]#3Øi‹@Dë7ÌVPÀpØ“9ùðXzŒ\¯' âä.FƒéE³(UþK¶ú¿m½þjwˆ aD®_÷Ù6.O÷Ìê{û~¥û_ó}žcâ«L°RXÃË<¯6‚Y´ùê7xÕÁe-áIR XüsO’ä(Uá,Ûä<Ç­ ÷cœk%HÑÎÀ–Z°°Ùb*«´±Ï´¤e«C]ª×¿óSN"¼Ì[…žPºÈÍ™p²÷ôï‡=ÖÍþlOZc yDj¥,±)P=nì­òÔˆ v)Xæ¯XzuiO€Å-rK-8ž0å‘¡‰å“ áOuц ^o0ñ”­#Ô†ËU(˜­eIeÔ+Å|ÐÀ¸êDëéÃyF2<»RnZ§'?7ÇE ™­––îÝHì2Å4­ c8bíò¢‚˜m¤éòÓN`âÞ¨ [³+¡úˆ’%Ž(_vPß©–lcÒ| ·`h¯Áq¼yoЬñ!`%ëÄ°Ž‚Ç»HÒõ7|‡`S9>:\Ç)+Þ"••éOV„’ˉ5ÙD±±FxŒ¬XΈWUØ«(>9¿.¥ _ £p$*†7¯ E}{»õW¹RøŒ‚SÕÛõ"÷ÿ?©÷_°ï·¤dèƒøöíì~ÙÏ¿†+…ÄLIî?g~'¿~ßoçâI¤íŒ/¶p¾{ÿáãË|¼|'$¼† V‰ávÙUÊ>W8V;F>ý×?|xóž¬òRÅh TÖÒh«ÏZY9b»J­,†.†ÑôuAˆ ܳ”ë/ÐBr–Ó¦HÔ¶½¶öÎ;glûøâ®ú>géæLþù>¬ÿ§>9kËFdp¬½6 k±B@2Û÷ôëêïÛßÇËGKú¬¬ •eìÊÊ{«+¬¤ €|yêôy‘ÐïÑ®©+é23<‡Óí° ?»†úêæ5nçÁ‰ïžÝûá㺌•\ãÐG¹ö÷þ#ïãy6îĿ߷ò9þ8ñÓ/õIÔcß%¶l`¹Ïooáíã±g‹°-×mYFéxÉRѰýÖÀö ‚Rð<þátZާ»Ï•SöúbËáéÿ‰ùÞà©Ø¡u^톂#Wª£©,Ϊd`çzø%Œ›¹uVÉ6hò9 rÕiK_áìÂcW²$Õ•Îìæ¾³#*©?s §‹\}KUìÕ±#عrÄ;s0‡2ôDÖ94CxÌb»l¬¨’È$lH|Áä*¸‰¯Ð³9š¤M4‹;,Ÿ‹ƒ!8 Óe]Üj0~NA›óå^Zׯ/Ì~Fš/6y:k3|#[6©¯™xÅ—Â\¤bŽÓ¼BÃï"ËU'¨ð•²^?òùþb¿ÂòœÕ¯Ðq”¬[eΦVŠ2cOïÏ.Çÿm×Ç ý3y÷†µ,ß•)Á<òO%Y ÊûK!‘– ¥ÊÑ©b#† I ™ òßøBùoéÁæ*V¸¬Ç·#Æ“í’ÐÆ·aØ÷ ð³" ï?§fã9Ž+š¬.q.J³cçR±„þËôÙºrÚŽM]H!”GøúiàGß'íôì@þ?óøø9¥›=ó¯sp=€?ÿ|2¢ ÀÛ>ÃñÀÑÀ$ôˆ#?ïþqã„æäã¹X9 ’Év(¯¼3K>¶m„eÛU>Ù%{øåüíf^LÚâãøj/Ðyj¼q¨³,k©šM2QÊê•ó¬h[?O‹þv»ÉÐ’’Ãðé*ˆås7QŠ7@hnñ’s²ÙIíù¿2ÿèêßüÁå?ÿjá¿1Éq´9ŠSñ¼¥H/Q´ª³Õ²‚H¤ ë"eOíG"$‘¸ÃÇ"$ˆUÔæOðxòõíçòß!gƒœäŠ–växò~Ê­#­è3ì]¬ZcX}óæOèŸÏYÞK\CòÓ'ãø}¹ Úw‘åt¾öjÂû19ÇÉò\E•¹Åß¹Ç[O¦Å+Ö”º—‰””?´•aÙ<·þ^iã:psÕªù†ªà޼$ÛôðFj˨ï‰)õ%#×`_Çý9Õæ¼ûR—Jz>[å(Õãa[š·8d’E´í“/BËÊ8ÿ¯¬8„,«þ<À³Ã'}þØ?N?—oûü-úHÀÈ+ü†Gsøÿ³ÀucŒ¤íÝ[=½yÆú>Þ QÕ¾pwíþ“Ûý§Âã_cßó`ù®NZÚàªp¢·õ)ö»È_{K:÷±_þ¬Š(å®d,‰<ÝR0²Îõ“ˆø ƒ‘¿nâ¤ÐZZã£R¬W+OšóDµbŽÓ%iãW‚ ·.Æ £OñF“•ú.ü~&¤êŠÿAþó8ÿ² þÇöÞÅ} ‚>ËmlF3ôgÇŸ¿ ³åŽ/çøžv9øÊõæ«Ê§FâF]cD†Ít5íÏ$ŽˆˆÐR Ç– Ëž`ó¢>ˆä9' ‚õ+JñDÃçXA¸õK" ‘ß$xòaóýâÓÍUÖ¿;qÝlCg¬aôGfI y"ëÏG°Ù~#¨PèWüžÃØcùxq!Æ„cî=ÿü<)$w]0qáøþ£ˆ!é#,k)a#¹Õa@w$œ {gíŸ:!Sè‚u)«бJXÛPs «¬RÄØVô#Æ}W÷GÖÒ{­Ò8ÿ¾ñà lÞì‘F„•Eú‹–îeéõ îdé0x·'êé:«Ç¶te ¸ xRz¡ž­‘"v82ˆk|DŠÍìBÖãÕ°çU…,‘/…ôö_HèÅ_ ÛäAŽŒ¿±‡¥Ñ cü\‡ÇòÕÍ>N{õ ‘Êõmij֑áq$FX$ ¡$UuY“uV×eR!†ñ$5âŽcÇ(±Ä‹û©ª?€~²ßT'ֺʮ%ô2†)*Ý€}VE&“åÌ3 ‘÷µGªªä[²bÔzšÀófѱŽ”‘¡˜¢ÔIa~*¢d0î½–¸›æ“ ‘ÖuîA%Dlç ÑK¥%Pư»o–‚F‡ ™U™úæ¿VVOœN²©·c± ¼iC¸ê%J`¢eø¨$! g{EWT“â æ2§¤ŒÅfŒQЈ Æ6ýwÙ•ÇfM´oÚ]ãxŸSî7ŠI"l}Q»¡ô±õÿÄ]  !"1#A$024@t£³Ó3Qa BRq%5CPb‘&rv¡²µðSTsw‚’±ÂÑá'67D`fu”–¢ÁÔÿÚ?ÿ÷¿½ßù ÿ¨–ðú§¼£»9ʲ.å*Zwv(ZuŽô%z«T½o-¢}úc¿ÿpäÿ_«-‘¿‹¨Í'ºùÚˆ¼j¶ ìk c–õnAÒI5é‹•™çhçûq{¿òAÿPqñE6 ýºâ ÷°K~˜(¹W¨”´òŽsÊ9ò÷Ÿ_óNoÿЫý/\*¦ªÓzñ,^W\A›Da1Ê-#­yÄ}ÜÿZÚî?9!Išm‹tˆTúœÚ÷´Å:EˆRZ£m{V³/­Áÿ„—0¢:ÿ´‹p‰­‡+ÇÕ¸bí þ4GÍ$ñyÄ}kÏÛÒÛX/‹G5¸™ êš³Êâ(‰Z¾RÔ¡G>Ö¬¢‘5[…)£¦–:S"9dúZí&µj–ՒߟÚ^*ÄMÊJR&ßè7µ²Ô%˜*F™‘˜ÝºØ”~Éq˜ä›”¤TC½¦mí¢Ñô´DÇû§Þ?a/ïwþH?ê>ÿËÎ!þhÿ»‰¿õ ‹ðUÃ.{âîq°>*)þ麥¦oºÃ<°H蟭ºgëXõZRµ­+X¥iXˆ­kÊ+ZÇ´V#Ú"=¢=X’Xzœ]Å)æ.p†$KênÞF”†ýc’ÔµC^žÈ§µÒ>Ø ~§ñxó5ßÃc8º¨q͵qöTeÐ*à~aö´Éúƒu&–¢Ô§Út„ÃW‰÷qøq¯ÁæfÓjf>PÝÇùV™’ 5ƒÉC >¨¨í——ÇÝë¯p-÷v·pïÂÉq.öƒ@º¯ç³gj‘׃=MbõZý²Þý©Óï×kì§øIü&q×q¯Åt(¦u5YáîUc0ÈD+ðw“‘ôõ™Æºš¬s꘷OÁ ëñVŽ«çã>ÈgSÃe ðØ»EÒ©ªr® z‹£³¨½ºëÎölw×cð¡Å9+ãô¯…ÃÅÙwö©mËKW_5m2)"­©Á‚¥(­=ëO\Gp˜·8‹ˆ8= Í\f¸´‹}YgÜQ‚h¨›ì»x•ÈÀ}©H赺­kq¡78ÛŒBŽoñ&^Rùîg°ˆÔ´ÜÚµÝ(AR(g÷©ž­h[xı¾N&½½w^àÞ6g‡Ü:@|a@læ7ÛºE¢@ÐÝ@³k ÃùɹÞVÏúúU¤I<­½&5_·{çš]ƦŰÇϤTçÒ:r­}¿a/ïwþH?ê>ÿËÎ!þhÿ»‰¿õ ˆI¬ìåme>¾ÏêÄM¼TùÈlH¯Í!$ZhNžsIè5hK )hÎ?àÓ í*Ó³ý¤g¯ˆBré‡oŽJ|[µÏç¸)qÞÜ磵í_FÎÕâ™ÕãíxÁ7™¹íŒ†ºäëVx¯Y"¹”4éy²ÇZ}„ ƒ´ø5^Îy”mÄ;ÅâLÍj]D™%:(u·%d¡¥…g`>È¿§%£|GTz8oû–Îù Ï7–Ó¡¼_æÇJõêïYxþŒ«ÛÖ—xGà5ñƒ£ßRÜôé© HÁ.Ó– ÚÔàÒ«G}“°0Š:#‹C¶Ÿ„M>:â-”«ä*Ç{5ë¯*±ÍCž£îÅ-ö%šœ¾ÐTöõøIáχˆ|w¥Ä8Ëäf!ñ<çWžøX(V»CXµ /KôÃÏTüA<5¥"¾d饯ÓAÅb¦òÐæ¿"ÏTÔq3zDG_¼òØ ûÝÿ’úƒ¿òóˆšÅÀÿîâoýBÇíåýîÿÉýAÇßùyÄ?Íâà÷q7þ¡cý(ÿ~7þ½Íô‰‰Â"± šÄ%¾/¿W¸ikO(ÕˆŽv™ŸhˆÿXÙY8ì±ä»\ná¬òÜ­<û…!»5aãà —# œ„Eâ"-6¥''ޏ$¼&.$j3ñõßGˆP¶ã˜³Þ²Ê§tŒojzN2Þ~[vèb ‰8;͵¡Ãޤ&øêÙé|9¥¨k¾ÁšG’æ­ËQ/œ,Íô˜ÐP6õ«Ã|Á§ã8~ øó6ÛG9¤(‰§ϘçDOpC(ö¹9Åúu8·I-,²bhSá5º2P1–·MªìrƒÒÔªåìö‹Zg¿ÆŸƒÆøg‡4ZYOˆ3ö ˜GoRÛ9 Yr¢ÌÄ”3>=§·x’ÍGnqû{¿òAûy[{øçO„Êo°Þ[uÚ› ?d#T}U¹Ïj›JÖˆZýÐ3ìQÅq°Ë·y“h²ólÙÆ]e¹‹‘’±iûK"Ÿ5yE¢"ÓÎÓkÛÐ5‰¨î!²ìRS=Ò¢Ða€Ùsd;_É¥û}ªRÅ$ôŒ_§j]n'â.'âô1A|îØÖa§õ»¢½<µOÌÉÅ Í|ëú2hƒœˆX#?¿ÿ^æúDÄárX…Mb^ßÚ(¯;Ü4µ§•v¢±Îf}«÷G/_ÍUײ|Â;­ç9k–…”-`)4Ó çì£'S Ý5¯W;R'ðwÃ7¦†ÖÃs±ÛÊlÊYyµbíè1enX\4¡bÕ±&½ÊÔ²>®Ý¹~-Ëßâ|+þþ_?·¯Â¶i£ˆëÜRN%@ºÍèdèŽ×;WÏ Dt’´¼Èæm¾Ì½ÝÀÝq8WŽÑ#ºaGw³³,ežØÂµÜ™E®Õ &Ž ElÞáé 9.¾¿á§Žøƒ7u„_%^$ÅÚió€Ùj×%.;·žrGc¨¤Vñ餀µïP„b­ÉîK@é‹b+yˆço–¾üý£éû{¿òAû}†JÔƒ%mKÒõ‹Rô´rµmYç­¢f-YŽSÓèû#>oc¿Á}q^Ô^zŽ~)&(µú¦Ol#Z©™+œDïÚT€CVµöÚ)_ qÈô¨ÈmÛ`z?oá"Nÿ¯³£Ø ”‰µí?-l!âÂ/³Äƒš‘‡lNŸ¬|0%ˆ–ôbÞåÙjjQ ¤:Û½øÊ†ª i¢~ŽòZ Õ Û½J>êÌÐ'A)BSª“ÓzÖñÊÑê´¥kJR±ZR±­kXåZÖ±íˆöˆhDY ‰•ÍI€qÐÁ(íúT ‰¥é?}mè·ÃáüLkž9ùYHçXÑõä[(É#Ÿ¿ÍÏÓ¯)žŠ®éXWÑqu´. HÁwXêV¬LÐV=¯#¤ÍkÊ= ã¸XÛ]Ž}‹f%£Ùçõíy€7oŸßÑËŸª(ºà¢dkTãGL ¥`uG·EkåíËÔèæpÇghOW7‘ÅÍQÉëý>la›çç=_?Í÷þÈ_Þïü~Äæ‹¤ì¦‚¬:ÙºNÒÊŠç9;b­ÊNRÖè.KråJÚÓëElf‰äçü×lp¹›N¶­)¨˜¦ö!%íæJ…¥ïaUÕU–ï~`‰èñ& £º«»ê².å*Q÷v(ZuŠô%:«T½o-¢}•Œ&`C:ì•(NÖ#£›P‚%-[Œ”´Öõ˜µfbÐoHéEú†¯>@7]ªõè[j”ƒ±PSä ÷×å§(ÿ¨ ûÝÿ’Ø´ñÙ¹†¶®{¹¬{R¬P,EKpXƒ(êjж‘Úâ%"ñaÞ9ÖYâ^ â–÷ÓOàÙyiå& ;4«Z¢ÆÒfXñütïflÒ*¨9¸Iä¶úŒ+-™\Ï N‹3³Ÿtàš[›^c9ù>[°*8Wt •ËA¥Ðé™ÇGW‰6‚;ngån¯¾á˜©üQaêѰìIiœEÄ#U†ºWi:Tÿlîó2×kM0»ÚÑg4¶MÎÙb”ñƛѯ~“'–‚¼…YƒöOÒNwªŽD4X&»ö15[N•—Ab¨Å°­ V™×ln¢|ÚÜU?¥JîfÀÝ(Ëv”Ϫ®…+Õ¦0Y·“')\™ ÖêÕÞ±„jÒü`ÉÊLHEM –Æd:ŠçÔ+’¢½JáXC†|zÆ‹6E…Bw.¶Ź-Òë±MEAf)5½ŽÉÈ®@§r²[2®1Ñx2#æ?L¯ˆrðî'vд)=–A[/qí÷XÝÀXœ«ª: ¢¢Ñ´ÇX=ý@–/ı碷Æ|DzÁ§“,ù–‹ÿɺÌXƒ!“¶›d;s±åTlÈœ†ÊÍI d0/Ö®Å.¹Ì>ÙëKÚ‡¡‚-lèÓ{8:ønr­‚Ceû fÜ•:h‹PTŸ«U*:\ë×”1KðÎZÊ+­±ÂYúÌ™BKh¼ù-Sg«œÿpiøÅE ±] >i£(…XW¾føwr«6ErM¨-aŽª³~Ö‚À¸\ªdç]À°“ìNF£ebL<ìzø‹-=ëççUŽÊý€²±14ŽÃkÞÆ²€PÜÕ‚6£@]MÍìâ= ¿œÆ±ÝyüГìÊ,óe› 5èh¨X-PЭ†a³±„2ÄÍ^WÓÚ© ,V—b–ñs–:ì@‹³i¦€x¥Š刜‰/¢®x¯Þ¸ö2FíÖHÇ!]¬Ù—Üžåªxó9~Òë ÈÐ]÷(73ÛUôÍ×Úi3‰¥‹Û½„NÙÃkŠý¥Ç~›OMéjOÍYÄGt\UÃÑÝmÖªÂî¢pçµNáoASªÑÔKÖ‘ÎÖˆô|t4äf§á°øþ®½Ùš±™-Xg#B9F *Âë2{Û©6”Ôÿ@?ØËÊò;ž?Ä´G¿Ùèîö|¢‹»ÚÑÏ£¹N®]uçû{¿òAûÉ·cCC]µÜä¹<.¡µ cxí,Ðîƒ8©vïZty^E Ö Òÿm¶nÿ­4ã%i³tÐBƵÊHÅQWªóÑH¥cä¯ËÓZX“í6­k7žžqÏœG?o~SþÿZ¼R¦6¶¢`fGµ¬%˜nðõ„Ëì™ÒÅHbȃKA»õÑ>êÒñCgSï”HqXøG£Mvxi³®,f‚üãçíÛ¯;C_Jý§3›S\ʱR¨ÅCëG¸¿‹K“ÆMf ƒ–²D{0Q hCÏÍ!˜ ÂB7µm1dRW6bƒtЫmI¸?â”ÂñS‹/³@ ñ Œ.–å]×Ô¶QH„¬"1•¢¨²"áë.uÿ…¼DçS7=â%ñ1¦Ä0Þ{l‚ç:®¡ZIڮŻÞ9~j^ndï«g¬¸(¢|B“ö[‘®&Ùž:¨ƒEJpi¸AÑAË©¬~=dqâÖ*‡ë0¥»¢u¦`‡D ^ùâ+áš,õÌ“7(·M„EÅzfk5²î“øÆ»GÚ$nU“£¨ëb\fêKRT]c8`sS®Ruø©­ãŒñ"¡rÀ}¬íÀÒÒÜŠ™÷ì@ [Dj…<ê/:+‘½}0†ÃQËð›2ÜŠÛOgæŸ@Š®Ó÷T\átY*¾gQ'RäÐˇ¥ØŠ¯\øâC§Å9<–Oˆ†þ«™qÖÌ/ÄU@.j®ÐÚÌ>Rmçù.-9Á5ôLýZ njšjÓ|2”ê. v“8˜QdÉI¡#ߪ&#ñn¨‚¢~Úe@ÊùÍ19ùÌ-%£…øx{}ò¾µÂm§zJjÉeš¡Š1¤ê»‰üµ2-"Š|ÇÝÉuÙÍYR…©ÐÚÃîØ„Hö­:x3K,M&úºÁÝX‹÷$–}Vú=ŠÖódt4ÎŒˆ‚«Ë\„2õe2.šûÏ ç¿­ã« fÅ–(Ïø FÏ£q[º_4Gµ[DwEúG#Í©êÍà굘kòï@m[¬ÏHÌ1ùi¥MÎÍX4ƒÉ|rJ‚ò¿£æ²ŸÃ·RVB± “«SÇ,KSš½µ² \¤Œ¼‰·y5+înv<¯ƒdijøÝÞÇ‘ðäÌßc½Û7k»Ùí÷{Eíõuvï˦ZÕÖlŽè¼^ûLšc¬—˜ŠÇ*Ö+AˆC­ ´àÀŒ#¥+ÅôÐ.``äÆºVµâ%ªÃÃI\J”H·e¿´Ž»K o~—M×aKÁtN(ZRS+I•‹LÔaù †ã¨%âÌŠ+z꧚Ɩˆv¡¤ò“^µÎ‹ÍDaî© À¶DÍÝ$•›²Y¼œ§¹»žO“Ü%[«Ú7B”lÔ£)+dŽòtê.gòß‚ÑK°Ÿ”3ãn Q7Gr‘´~|¿½ßù ý‰¬Mµ|ÜÇ{JÝöVîxÌ…°ý²†è`'Ù–½]=6ꥭYâ.7½„F˜îT;àÒÅ¡㠢ùR×rëÎ…AZ´!Òh"è(C¡Kk zJŽok p]ƒµ#&ÓQRì0v‰AôÖ̰Áæ½ÃgáÞc? †aèCÈ/…çH¥3Åëìy~?Øy¾÷gìúú=½|³iåÏÿo¬G9õ÷~"Øc­>i§µb9tr¬òˆöˆ™¯?n\þ³ý"+μ‰?wDõ[§ÚyZiÕ_oö¹Lò™ü__UŽYú”øòü}â{qïõç·ÍËü?G¢}¿ÇþïÅ~|â öÔç1ïRLÏÝôùº£”ûûÇñüóÎÜçªcïž~ó÷}gü½}}~SÙÍó°õ#Ã'ˆÉƒ˜Ab½=.%ä&Ô]rÕ´TšÂK.OJe`SJ´{6v‹¼&—^Žh:²è 8H- )Â$ûg^Ð;40k{P‹Í~%ßÍh‰;A816 Š˜5mB Çjó"%–lµ¡Ç52÷˜0.3R„¦n3:Z{éíÉWegݳÆ[ÇU¦ªú…Ñtp·‹Û¹]¨Éie=F›>”ã|¬LêBdiEýœŒóÛå" f‹AÍ…bÀѪå~¹C¤®ª,j4ÑHß®#á°j‘ÜÛh™&L±ˆ7A”ñ¾ñ %…<¡äy•š†K­3Ý‘ñ–‚z»¯Åy¯èÚz¾³õŸ{sÿ}¹Ïørú}9G×ÑjAu›rŒ¦Ôö¹T]ÑK«pÈ<»zﵿqPHºÇ¹Æuø;Š˜\á@Âü?¬p$¬\f„¥Ä`’“Gk ”˜µ-5˜ŸMŸNþ#ŠGüÓAË.Œ¼ó¯1¥Óz:”YÇ{â†Ž[º¹yói`^¾¾«û=3ÿ8ÿëŸÅ1Ïë½*1ÞÊáPÙ4š’HœØÙ=˜=LØ ÍE¤ˆÂʺ ëc|ä1²í¨ «ÅN¶Û¶Š ¿Ž¦¡Smý^É¢¼6‚NK§¸Y*‚a‚*Å•ƒZ–ÂúÍðàÉÊò=$Ž-b¯F“ O Þ9ïÈ-…  L¼½ gè&¾§š©âÈÏyM•Ä!è¼Î½GNýL–#>¹!*%µÌ¯x  J&N•2.wYË_ÊíJëQ'¬Šä¹Ê¶YÛø|/0ÅÏrÅfµUf|m2ñöµSËaòQ'L•ŠÛAP)n¥ƒrýŠ+ T%¬0ô^­.v,UžyÖµ ‡z²w-å¿UMÑn‹>i³¤IbnìR,©q  eÒ××ÕˆÅaö˜DI5b¤(³Ô†ýÕ/xizͬ œ"«BeY2¦wU,ãÛŠñÉUØsE»¿p-¤˜© gV‰#žˆ›2ºb+G5–’»:eQÊÚ.¦âû©jÑeòôi¨Æ%0óë]”_@7!ñü6WÐÓb.*';,ɼ‘é d³ä¹Íè7žðÇ_‹æüN‰Uµ²µIÖî:…”ís‡¹þl¼ýt%±1Û¦ÀZ×Ðb¼@ñ,²F‰¡\ã®Î}˜#2[ØÉPÂÆçÝ{‹Vþ1ή|7´–Ó„Ü´®#,Ñ_`±8<´‡|˜Î]†(P8b]I·Ã° ¾/ág¸S ‡²LkìÉ ¢ŒÕ3ʪïF)sát[(´3­FmY\Ç-%/ùâþ÷äƒö=e6]¦v[è3šë¤eu Ò¡6« E—¦XŠK[ÖOa×·~}æFzÕÑñóz/áäÆj4µØÓ>†´g®–wf"ýí9K”K–ƒh•ªO@)= { ®µm×¥íE†*XÖ«&=«&dÝl1r°R’ý"¬œ^—Du^/ÓÊÔ™çÁÍzëÎ>¿4{Ö"Ñ£žUö†%¥Í5²‡¤g°—€wî]P±œ¥ee⥚Y·ÐÊL£­[u7;ÌOChi¾hŠ—Y/Êmi›Zj1C­ÌøÀ°F Â;Þ³Ä)Qw¬š­–½=Ðo¯SM(~ˆµî\æJ½Ž¤8£@  »–áÝm,ŒªqgF‰éT±P·@ÐgÆ-ذÀT‚Þ#ë°™qZ=X”eÚ´¶á 8¾G ™²9¾ ‡$=fú´ê©Ü8[ÏkJæ“Dù“ËlwEvi*¾w âåçãg&,üáìKúMBêD;–ÁÐS§òJ-^Æpµ-K3¢Ç\^;wç[Wåµf9LL{LLO¼LO´Ç­ûðÕB2bçQ¾É!…רcò\Á؆¤¨W‘?nèPÉ f®€Ù†¨vurTÃÌMW{UýlæIT•3f!AŒ}mBó f”¢yÌ’Izs­iÖJ­»™`_L1ÞqP5NÙ:!€Š…¬ÙH`UºÄe2B; £É- emãn²)|3à !ˆÕg°&˼>PŒÎçô#2¯$Kae;Œ( I¬V´üKa¶ÿ•Û6ÝÇàî [5Zf _àHàÚÄõþ, Ö»ÐÜE–l=}¦”9`}t°ïÛ0mBS¬w¸íÓhꥭIùfcÓzúL•§´ c°c[ªÓ3íQÇ(­h Ž(t @Œ!ÅJR¿_D7>q6žÜüÜ»q<©íoxç_šcÛæ›O(ú~;JÖ}?¥Êœéi墭iÊ=ækËÞFÖ™šŠvÙâ3Í­yµE•_†Ä¹.­Ø°¬ë𥆠 ÙÖÀL"[лŠ´ô¶Çq $ a¡f0U¬ø©TƒÍtЧg¶çµœÐö6h­s*Úäti.mmÔ7u8@q5áÒ•¢”JvW8+>Tf„Í]òhéÕ2LµôÇœÍJjæÃ2峞®m[¢Ò…9õjEðüêWÅòl9¥å~쓵nsNSÏÔzúúu\ ¨½ÒR­¸Þ”º,úó(Àå…w¶ã$ºà½)ß ’“Í{ókwˆø—0ºi'™Sš~–}ïÔæŠ+2Ûð=8hË/`œÉ&Ô:o@†¬0*ÙŒ½tBHnt¡«Z^±!)RE;Í&z¢·¥¹r´süé{¿òAþŽnOç×O>?Ô-s´¼yÙr£'Z‡\¿,ÿ/_Ló÷‰å°x»ð|6¸{b¼K•œLå´ô˜OˆUr÷ƒg²“3Ró¥&ÕíÄr¯]¹I $ü!Ã<8Çq9ø«iSAl„2³¦ýºGQ‘±Q\·Ÿ±\k”—ŽSòõŠ/§Âû¸,ð·d®’wWÓ]¬ÓÛ zºKTCpI¨Íö°IzÒbo¹Ÿ“À溸üFöö±7–yÁUžÈÚLˆ¤Ñ‡R0Låé(û=n^Ǥzã>$ °‘ÏãÄOž¶‹;-ínXë ¾¯™›H·§$©>2•¥¯Üè‹Ì!§Æ¿ƒ¶¸o†ÝieI²"ÏÙ6]¼QRkæUŠ m3ëŒìv-öS4Ðwp§ ‹·þúø²Ø¹ùyä¼P$g@ë·ÔsÚk#^€êšw‹r´òãtñÊm/Á‡‰«ŠÙÅ{ À|F¸‚ú“p²«+D]Õþ£4LŒf¥ÅLŽ+1°°è#Ó?‡–xûMù&Ömp¢«n@NÙ›k¨‘&èVöç0 õzÄ_?îð®o:,ÜÍaî¡»Aè3eVÖU0¹²xŽ]}LV—çåQ–ôü|#zù_ –v!©¯w‡»Yÿò9}‡• øŸ‡ÜûnÌ?Øùƒ„Î;àγg² –d³$v$®"L°y±:ÞÒbÌÏÏoJ„f›Â=Áƒã’Œy²Æ#'Ä) NÙ1Ê‘°é-Éj8é_MÀèx:5‘æ>Ø ¸ Ê oH̉€Úþ% _¦b#×äUJ›ûML "kuc Dš6'‘-ÖÝ¡DSK|ÓÕÏ”rôó»Øqµ7VWÎD­9ž½Z'+F£Mf¸³¥ðû#^™¼«GDã—Q"`†F,°³2GÓ?[$4Î)*’òg«ã·xNgØ+G8ëß1ö>¯ƒ—ŸðÕõ1î¶Ù]è;<Ýæ”Ͱï…{pKÌÉb¬õ…\Ã-B•»ª|úg DÆö‹º*¢j÷™pO`Åó,ƒ=Ö%,…4ž½½Y‚ÈÆL†0·Úf·hª¼@ ¬Vô˜3KKã̪ºRSÑpœÇ©†:qw[Gˆ³€%õÏUê*î“{H’tJ»êÕÔ²’ÏuŒ©Ñ ÎÖ~2f·GP¬géÖ>èõž¸ÞW<„dkU·Ëãç …'}Ž›Jêƒå)Øé¿d-»wöäÿðäÛGx^ ×ÊPwPÐØ™l½–ÝU%Ðqº*Wz‹„î”ÀŽqJ9µŒhΑ–ÒNãy%¬Z§Ì[0™th~UÛn јw×­X¿ÃøÚZä©V¬’¥0»—µ—šŠø¹á$Œ“ä:`´IrTb%ª¾*åTå*Q›²Å?»ekC±Ub…\ÝãÛÓ¶lK¯­˜ÅàT†!{,Ô^èµNÿs·Üí2½ 3xº–býª2Wó…ýîÿÉú9¹Ó³ÄQƒ‹1æðÖ¥ò4g·²äve±Ð–ñï×Ì‚åóÍ)<þ_IméiñWèåß»–N/âvéœo·T¨ƒ‰ˆµ,J·zÔ´é-)zñÇøÇˆ8n&ÁÉk S'U,u´mž$ækè$âö(ˆ98—‰þnsÕ%Yíž;â¾5âLœAÆttØÊ_=Ö»”RtÐÇYo*‡‹U<îºó-»VšµÇ³ËÞ ÜYÏüþu#Öö¨€Vá¿Ãûú¢ $—øblŒlߢ=íAwèB}Ô¤X–åJZaŒLŒÍÍn*c<<ìÇuÆ‹}4Ùë…{˜uÅn»–”“ Wš’Ñ_\R¿>®gÇøC…ï’ö‹UF¾˜Qti‹P]ï E'k¯®Ð;[—ÓŸ;a6ˆÿdLo¯0E^ºÍ§2¬W˜ÙÍ7O¾+\rU‰JÚz=~µ„°¯ q2;ú‚ d—øb{ºÃbýúTž„'ÝJE‰nU­¦8}lÍ!ñ+ÜJúÈç¡ÃŒ#¢å*ÅfÖyÐùa”ÑV±Í²‘ó}¤eèüeGI%4?Gy7— j—¶J˜}ÕÏB²Ž…§Ug¤”­ã•«뉰Sá¬gÓ]Ô﹋cs4d¡,7¯äm‘6*–vè]Jg‘îËË¡%G(ù‹ç¤ŽfpsòÐÉ ÖËQzsçP¬0Í1¼~ŠJŠ¢9¤v+è¹Í.@4‘FTdV„aÍ„p0Ä\dâô0‰Xµm­ëÎ&=uä¶|¶-,IÎ$¢íèß‹&ZΫÛnèõ$½ÂÏeZXÁ cÜ»üÃŽ]ˆù/ü¿Ç¦ü£æÏ8å<¦Õåyê<Û·<þH™¯T}=æ=ùâòû§«Ôj1 á´ª@šº%h÷~¦Z) –µåˆ ;Cìß¹Ô.Ý:&:kÉL„»E}À!qÇx̘`Td%äA¯rŽ–¹ä!­º­×¯T±ó³œ„êý òŠÅ`qíóO>W·ÏòMz¦¾ÕÄ;ÏTf´‹T“Û¯U¦:}ë1ÎþóçjüܾYŠÖ±þ³÷Ïûçïõïè­‹çëY¼Gé ¢´¤óŽ=g—_UGæëˆŠõ[ÐVXFe¦J5Ö\¹Žsšð1"X…)oh ÇJÍïyŠÖ&g×nÕ¥º«óÅ¢'¯œ{õµÏŸ/»Ûéë‚ø“+% qÞ¾ŒˆÇfŽ‹°éÎvH,}k™Lò糜Ÿ:¹š´– 6pMÅMJÏO>Ý¢zn9šòçYø|¶çIš×ª³Ó²·¸a`ïfêQŽ\›C1ÄΉ¼&èÒïº0H¬ø›¢QÆîu«.4Æ„ë·Å*µµ.jàdç´êÔ§D\×oˆMtóç±q²œŠm*Õª©u„Ú»jÖ•ˆŠÇ݈ žŽ¸ŽWŽS5µm¯´ýcª±ÕÜëÎ"k>ðD¶J0*ºÕ¹ÊÑŠHD¸‡!JbMh!VÛZÕ¬Sªb=3§Äm§ÁÕ„[g .!:YÚ·‘ zÔ®”ÜH§<Àvó$ví×¼ S°ÄÍå–JN½^ߜŖî!v*hA5ó‚ÄŸMHÈÍÚŠLKØda§×××Óʯx²†Àhφ͔4ˆ]Ä*³tZ(œh&cÆMe» ¼é†ÏTxþp¿½ßù ÿF»œ„ëÑ_ š’¢ó£T¦òIR¯vü˜VI2Nĵ×3nžsÏñB›YYºêźám4V}x¼}/hEWý®ž~¼<|Ìü•:¦þ.bK ¿\ýmÙTbTýóÓÏÑ陞Žud®³DT•aÃòï¶z®1Á™7LwNN¢“”uÚyz`Ù¨ ÎfÚ I®¨™iž^C, ¥LsòŽñ‰!yG]§ÕŸÊᬠǯÕÖî~6rm߯ôú˜]qšÝ\ç«ýþÿCæ.NЃi¸G­œžˆÅyö›ŽÕ¥§”sšÄLúòÅÉ]2»àÎLFø\[®3{” oàE¾hOŸ÷íóô<ÜìôÎoA ’ U!ЖµÉAª P­ï{Úõ­"-kÚgœÚ}Ì~ÂÊlÑ0f³r3Ñd±içh!Õ\D¼Z}æ-iç>óþ†Ž ¬.ú*-ì»[Zàá€6µiºLv{o7r¬S|9•lÊÚúۺΪõ䌦WÙð/nô1X„jJ¦:Õ¡!ƒ^Ôb£íÓ§CÿÖ{M•(0鉳òSÏ’ÝG Ñ ÉØ$ŽÜæ$·x™ŠQñªxäKÆŒÏù.ËìSëëëê‘ÏÚþkÛªÇߦ¿÷¿××ñðë¤dªó½ô•L~ð òQ“·Q¦ÂÅ![–ÅN"ƒS6Lp¶³‘8}ŽÝíËV•ƒˆ‡W´‡”ê@c\äf H­½ÅÊæã²ªÌÙµѹ æmqÛ›>’`Ìoƹˆ][|C!+R¶’7I·Nh'Ij¦¤ë‹ž“¤ãY£RõͲ±1J©Ä§dmš©±X;ÑkõOu}+6’æÊy‰Y a•ìV *€úh€J•^Í¢Ú×9`ê”A´KUOñk¯Žïþ7âUÆCJ˰Å *v/ÕâõüD…³ ÖŽ ¡^Ë2’wJÁÈC˜ä¹Žc^Å1Œ[MÊSók„¼ÍÈKÌÚö™µ¦f}]NùÄ,ÜB-ª;jœ`5‡î;Bi¡÷¥¬:2x×¹o[ùyRÎzzšÆ_OJA¥^Fss‰EŽú£o¥1§VD¡¸gŽ/ƒ ¨ž‹E‰_Cc)F[B…5 t.äéÁWP$uüá"]tí¬ñù*ÔØ© Ôô´«‹Kñ7.Ëë]§‹š†¬ˆ |,Ȫ¬ÒÁ)‚‡ÄÏÏ—×–½}}6æÒ^Æûbjá¹ å-pV3WykòÐÇÐbá¥|Š ±ëUÊŠ~p¿½ßù ÿA>àÑp„wø[ûBFx™}’rµeBŠ„Êt^Ý4 ޲´Ï>䨼ºk3øAËá6s¸·Cá9Úü"maøzŠöDòzòB¥µ«AµkJu®ÓNÕ¡­­lÜ…­nб¨ò¹à›ÿ±l¢ÛþÏW?Pæ>–~ª“i¬5šâï-6­`ê¢êŽqÎ:¹Ç£/E!.ÉS9l ƒ—}S]r£d=QÝæ>q×Xçèú3Ä‘ž³¿ eᯣ¨¥³ßì‰Ø%è?÷©úïZtuZ#ÔâSˆð¯³‘ÎM5óí§¯½©(CWT}õísC6æÎN0Mi ‹«¢¦pËx÷ší˜5½£ï­fgÓœ$·ÂÙÀ©ÄŠh+Ü3,0ÃõWÙº7tŠœŠÝTí­ê÷ïÍ~__ oŠxq]>¸ØÛÌ ÝË~ˆüB3V:çî¯oœÿ‡¯3SA,Õ;‚”û@M~éïûÌ\cîó:º‰yŠÖ&g×ÃiÄÜ?}oÀ„+³g%艙J†;ÒÜDLÊÝè~Ræ¶Š9iÅÆ)kE°$´¶èäìbë%¾QÓ«ªöö¬Lþ-­®Ç“ðŒO¹Ùò<Ì×c½Û/k»Úèîv‰ÑÕÕÛ¿.™¯û½}}Us·ËÛ½Ê&f³Zòç>ö·W¿û>Ü¢Óë7S‘“( <³<ªR&åè&ÄÈBòFÏIf2äç"(ýúJ:J1-Èævr¶‹ÐvÅÓP+Äw(4ÕIaWœvî* ´JÝ@Ö‘€s@IÉj+ˆE9{¥=æîwlÖÑjÄQh\¥¤)¦©»5Ãp.-©¢í,J´¢ñ;p$SMÆmÖïTs¡¤Z§ëá^#òþðïÞŸÞñü/£Èòü°ñ»}î÷ÙtuûzÓÚ6¾j&ËZ\_»ÜéPGF¥•š¯›Xª¬¶À–£ÇØhèJËäF+@ÅúoREë=]VŠ^‘Oiçï7úÄZìÏ®ƒRÿ(·)ÿ úLL{L}ÞÓí15Ÿx˜ü]ሗ¨âbä¨íjÖ#æùïÊ"±Î}þ‘<ÿ×ÔVÞõyõ÷GÓ×;פ•ŽU->RDsçËŸ)‹G×ÚÑhŽ©šò´óõÑôž©‹uôõó‰åóM}¦cü§—û>ܽ%U*Û«®²_oãT.Î;÷AÖKSe<·j&ÇAnªÇé>RÂ,µ  *úL6C6¥ûGT·\ñˆ"Å ;Ö+7éçKÚ³ê"9z°‰JÜwŽV­¿öçï[G+VyZ³ýxÙ†NÖíØœ´õrqëÊ’:ÌU­W3Õ1f×çûóHµê+ŒE½ó»Y–Ò6©P®d#­ˆIAüçÚt4ø\-øoÊ‹zÔƸX¥ó Gã/JX‘I´Ö:¢V莩¤Û®}­íÓï7¯¤}=h˜º¹ÀfÒØ~ÝÞëå9"Þjîî¡ÄMLÌí ”mhJ«Þæ¦UPáÎ)IuÖQ}-5²ó´ìu.ɲ¯Ÿ¯”fèºÐÔ•3c|Eöœ»±×j³ëâ<Ž€ZT½Ó ™ì¶N¢¸|ÍK¶úâ¸;«þDÝó z½ Ó-Zß/ïwþH?ÐÍ_‡8†œ3¡ÿäâÄc­¹Yv\‚/á4u‡ö“4·{¹ÕNŽQYêŸ\-Ç<{Äü!âeê‡<®`¸hœ:Þ§Ø×eläJÊš„Gÿµ“½IèìtÏ"‹éÄ*¯¨· pîp|Ci0|Pbmdž©ëpËKHûýh‰¬sùÒL¬ƒ™Ä|ñM\ÔGUÒøŠzEñE‹aRG6¥+ÕcóÎå¼ÏòÅújzü!ÄZc¯ð¸ß+Ò}ã«o'•«1÷Ç>q>•k)÷p¶8lÙ¯,°„èñÅsKu¬0Bš kœ„%®c}±fÄù½q”ñkj…øk‡ÖÄQð ¥V0ÆÚÇ­Åß’ÞôïtõÅI5çôåÇ$Z£ÌÆ_ðqñv€¥{KæÓÌXîø€*­[vÈïh¬wØ!)^¢zÙoðA„.w7kA}þ*â%¯ÄÍ‚Ãdÿ·üŒû”8­Tê]N¾Chð9©'‡ÊÁÉv,.~Ö™,@v°g¯ôº¨!Ò"Üùü¿_V7å§±ÂEÏâ¬Ã&¨†Ë.a}©nÑGH3¬Ijfç±f-½¦Ó>¿8éý¦M“á/x\ùö )ŸýYëÕ!Àq[ÿz™åòþ=lžŒÎŞF…`ÍKj Ž@a¡†ä¤DI9 ‹Ô™éisR¿_T’ršÖ9ûÿµíÊáï÷}}ý¹zI Ã*»¬w:˜uª&‚é¨:뎰_”+g¦&\9+/dD ÄröGêß•«¨¿*r>º­£¤vúh£žÐ¹\½žFX}Dú:©Ó{ÈA6åï6žT¯þ4òŸüÑ3?t{O¦,s°eža¦+wZ—4K/rÞ{•ü¦­Ýü¥ºˆ>IzÚ_n§Ó¦ÖÀôÚa ê< Q+Â=Z âŠØ¼£²._ÝÓ–vö†Îx–Å:›BNWØ»zM"ã%O’ Ã&¡^: Ï0ׄšºë´;¼ÂÎç‡KV3°TwJT»4ÎÅË_¨€9)ÄÛ>Šì´vgAÁ?Gt9ÑfØ:A]Qæjq&6¯ö>®„¹U$bÑívM›–Ë.ä§- ¡©œõŸIZhèBäcU­_€ñØzÕ(c_[ˆtYaÕSû&tûzIc¼"hR­:…pUM¥d™õõ¼´¥zbµŽQÊ"?á”G3´»±QÚÆµêŠ¢çk´ûv ÍuA~ã1ZHTEcG¦>3³Æœ®hD48Ú?Ú-µÜmc•,¡ç«ã Ëç8. ŠíQJ=VÊ¢e'¬ÊðÖ;é sh‰½]MX{Cb†- ›f”C<І¬S¶€­I­â¬å0o^óíÿ·?UÊá‰XNøÆy²<ÕÂ’ê†kK°Y¨™jlFXUjÑ`žÝÃÒöV¶U&—Â4ZÍóXR‰\‡H·U›Z6ýD>ý Pßɱ ‚’ µåq Ôö° [[æ´s¥þÎc¦>[[®Ô˜›G:ׯ¦ÑÕjÚ=ÿí<¾^U¯û¦"gþùÿÍËÒe¬×ìQÌ­ÔX¥¢cÛ—.A·?xú×”O¿(ü__Ida¯æj±äBª÷Ö_½Ú^í1æÊRhºÄ/ÎjõtM+Õ{V=NM8Cv‚œÓ'u³º–‚I&6XídXV[°Ä= nduT†±ƒ5jÀ›­ JQ AêiKÚ´8a ¬Ìµˆ¸á…Àx¥¢ ª‘ë3dË_5ÕÛ‘‹)fD"D9=+yqC}™+`šõ¸‹Iµ,•0™Y‘ ë°PÀ8 H ŒŽl2ˆ£µn2RÓKÒbÕ™‰üé{¿òAþ‚ÜoÜk^Ð_0$wá¥w`‹ùl6KóoEqW¹&¥z|iµ;\à¿<Ö3KøAü ¹ÅÙ™/IL5¸{3†óÊè?¹&‡„fˆðéÎ~ÊÖ§ÖkŠÜ•¸8Æ8Œü'ÄÕCáN7\å¶3õ3býÚüÆJ¼\¼Ge°"R"µž®ôiñNîó!—=Ÿ£ð@=Hó¯rE«åØàšVÑÈ雵»¤†jKRæÑ`+œ‡i°ëÞµ{·µ+nA§Y/ï­½oñHDÐÓâ=FiÃ#w«¾·¦ãDˬVÿ0hÉ9ú#•IH £Ÿ_9üLÀµ*ÊÜA'â*aÍÎ3®±Ý¤E ±™«^ (_$"­×uy‰½£ˆ´táë’Ô|™Ô è¯K•éb ØbjBVkTŠiN UÄF{Q`p×XwΜ*`´n­¶æœhÚƒ]Á[¯½Rcå7lŸ°G5Úyˆç"fKb—)g!Çœo¿vÚ7ç-5²¦RÆnÔm\º1Z&IT=†4b¹æ•œ5óúôQÐá±NXlmIŒÆŽº¨õ¶)x¬EVs‰à½ÙЂÙ(£ ˆ1^ÑIV”¬ÿwÊ9Þ¶·TÏ/yž™½¾¿ã3ÏФ=v0ºúiJÍú¢Ý3ojÄÛœtDÄÇ·Ö&=ùÖ‹ÃúÎÁ.`yU^ë #EÆmF»ê–5µhv‡kØâÄ0«wÖ×Ç(PLSm‚Ô>E•6…2€`¹ZØì0aXY¥€ëUrU–]x! 8yµì²\΀‡Qž÷U|4´ &Æi4›U„[E©RS+¤Ý°äpÜ$ ñx|ÈJV¬ºµW39œÕeöûÃY«ÂƉpËf§R;ôÀêXwýÖihç1ζŽV÷ŽSßáïé:¢DÉ.…éeå³*—nÇä›Ö¾z1`r6Š+Ôàr®ÚêhB ÅŠojTõØ ˆ¿å!;‹Þò¹ïJÙb”WºŒ4¥€ÉDAsä+ó½c§ôf³sí×òO(ˆ­¹r½­zÏ(µ;W­oå7ˆšÌóŽ\â}¿K”ÇøO¿¬u˜Öø*­«ièš¡p ç< Ê §Ë .œò^½Ä1;¥¿P³hÃëæémqCÿƒ›Ú„Q`çì[¹rœ4:i$ #ݺ_CK{ºöREV™–ròŸš> ÑXžL» L°–}𹥓šù*T9v–Ù±z¶Nhû`îTÅ`Ö&§FÝÎoaû¿²ãÆ‹U¦*ï^ÒBë- ÉhºìÜݤú®#$G+/C`õŽEs’eóÔ¸écØJŒ¤¨¨BнÞQZ’㎨µ«ÌZÙ»9mvUKâ©h8 Ê®ñ*‚ÇŒýgå4P™²â?0TªËGÄ'ͧ¯«§‚‚yÒ²õ»Ø›o¼ö…Z„UM\&GýâÖ+²ÓJ”9£uô—Ó²WÖzÄö¨ñåï똋BÁ,ô†¹häue^ê¤â'¡U{;NÌ‹x“ „kF¼V’–cˆ¸€=Iê³Øn«š¸Þ‚Vy—¢ÝiѲ- / vúJŽÕ3õŽ/0/ˆ¦ƒq#ž¡^¦P3Ö;ØqpÈËÄçñ.anEtp’Ð ÐVöµ4tL› y(õ¥@½àŠSºµ“mC˜}:?):-Ùáù_G¤WïGvíyÏŽ›¦àó%È7fýÈe`ÄNA€¬ªœÀ­æR­Sµ@\¢è%…FY æÝ59«K}}d`­%©u´NJ®åÕI˲¸íI ‘_ºãh*P%ÈQ¶%SÍD}”³Ô]ÖBv•P4ãîä):J׬·¹-˪÷µ¦gó¥ýîÿÉçè=ܼ­UU'–:k"£À\í£É¥\F"R–¼w¢+jÖmór™õ(Ï!{/×0j,¨û0÷ò•mZ^µˆæì\Uéë¥bÕçE‡Äé…ëíΈÉì?{R­j,šÒ^^õw¸H‹M+n›ri2»Šž½aeS …ÍN|º„aZÃ%yÄÇ:ÚcœzÐi]?]5Q;^GhÎq üŒÓf,Y¡|0lš—€0àÃpüµ)kIú}géÊy}ÓþþñåêóN\ý¹þèuGwô½¿»êÿ?ö~n^¢”÷´ûD÷ÿ—¤r#ˆÞyâ\*ÑaDAã>^x–p¡yW¡† ܵhR÷ JÞ4o'sUFÔÒÏee—pãbW5;ÃTš©Âí&« E— ü…—õ]Õø/_ƒ3×Oy]GmÑ乡F«ð‘˜ZZ‡ÓÒç ͨ¥2é4f€ug¸rºJ…þ ìy+ 3á¶ ÂÔ ¶tP Ï¦hUòÛ°wP$p, ¥rHA©Î6•ÖÂü äù+± @†À7†S%U´Î ˜]•ÏJ¿óÄ»+ëÌPÃtiïïÊ9ÏøÏøúúúâþk?"÷×áWX[UÜÁh» =ws»Ä¬câöeˆ €ÌDí †G6µs8¡¼ŒjjXÚ¿C@¾Z°‡¤– ŒÛˆ^7¡QÆ`-6ýzÙÁl*M¼Þ"á­‡¬RÈUÊlÇÏÐU`^JìAÄlàeL«t÷¬AâŽ8c';'%bhµ…gíwô®£5¨pLê„H|z±â¬ú:/´6¥‰½„&{yX„Ø¡é¥nÊK íQÁô¼tB;k¾³åêiÕt´]Y–¦ AOizˆrÙ ¢Žöu¹ªŠ!BºK±k¦ºáL²+T´×iù6Y0¿´ÏÑ2æ>Ï›v•yÕ@Ë$M¶ÂÍI™Èë«uMÊ\PÜvèz*³æÇ²$f.Ò•Éej3+TÓhë+Sb <æ. hZÐÁPú¦²3V½S©+õ´û^·­¿ú=6ú~ Æn‘qÄ¥¨J§—EóT%טŠAÑ…-Vì1M6øeáalÌŠ”¬C»Úlhš9öªKEV-@ŽðšbŠ(¤ {Æü‹Ž ~áz¯29ùmía—”M‡zý-ÿã[r˜™¥­Xµyóô©…¥ÌáµZÓ»K°ƒdŽádaén "twH¬T0?)†¨`¯ˆˆˆõÒZÖñ?ZÚ"Ñ<½ýâyÄûûú0tUÝ`ðI´[?ˆ3³ÂÞ+#€Ï kšÄ¯Ï~횯1ÜQÚç)8gˆ¿˜tá\þ%oA]ÍA´F8v— `êí²áuk’ÙñßjôW´ü=kšˆÙÆUqÎQËW#T‹µ¤HÈ‘Rˆ«’½ÑÞÀ,”’‘[†æªÀÑPu¬G©îV±zòé5yA+çí×ËÞžöçYç_~|¢Ü­QÞ4K/)• éêÛ#@Ä£&hB_7Y2Ý%ó™…ïvh:zêHûtÔj“äWâ9ÀmýZ÷ê Mv(ËJŒD ƒHëBG“U<þÛM/-ʦ~x¿½ßù üòØyjüo‹4‡ÏÄ,*N»úÛ.@ËL¼€Xd •±[5%TBsõ@üÎ=Õk‰Ù,÷mC2!~(‘Ãb¨)2+`¯0Õfä,¹Ú¥EU’X|ûk(.óžsÐÖƒ¯9÷žUVYÕWqbrë] €_¦z«Ô"Öô·)ˆ˜ç_iŽ~žo„ê|.!Ü_A8ËÑ 7i ¢V7É­ŠA•;n:}VYå"í9CµX$¯5‚Ac§·þ×ø}ñÊb}ënq5žV‰‰Ž~©ÃŽð¥i¥fÈÙ8Á'âÚà) hÄ«*þTšÉHÖ&%ô”EëìÔ¹ú'Ñø+k?Qbè Öl=ßœÏ(Ê.gÊ‚mœ‹² 7>{*°úf¢±•¸k~W©(KÌÚÑ3^ÔתB¶¿Ï1çÊÝ5å_o¯©÷õ[³}£‚Ášß¿H…Ãz˜õ°`6«cƒÑ)›Ê*Ù•ÀñØlI¨T©Ù9ꦵ,Åiz3 ‘•)‚*†—c¶88MÑXôËî ÛìæËÐ1÷Zl¶a‚öÅQŠ’B’×é)JóåZÅyG§lµ.ê¬g´1 WŽÐéžêHtȘâÔd¢¢}‚EeS‘{öèàãÖ—q.~xâ1],]  E·k/~ëŽÎ9AFÈÂB¸_Ü…œéSÊ7£a‡ul]û€™yïh*ú«ÊÐW³Ìºóä)O5>íújEÐVtK7iBßc^`‚>R/Mîölöš¢ä‘õYqGs&A*±æ™üfðŕ˜ôpŒîk“áùì]åžÄ]|ö˜Š³ü@ݳt_°¿já1¨ÙTY”°8/fë³´‘>jèã×Uz…ªøPÖ’©æI|²(ØVÐmzªÒ«It|%®×á†BŠ)a욬W¢#íp¢³Fluh)+g­f:„ö®ËÂÇÌÏ^ˆ—/-u•&Nx(ÊØ¬¾ºOöɧœ™¤@ÏàÿÉê)Ø&x|kǯ¯Ýé…Ü l0›XøL»4%ªp”Dˆ Š"ŨA’"ô½f¶÷‰õõüKÜ{Ò¤5تÅ"°H“ g"팑÷*YSÖ„´Zá5kÑéNÎ[1NO½XA´Ý»µ#ž}/­}°:«MQ¾¦¤‰¡š¯’KØ .ªºÙ_15ëœ6—>‚Õbv¬9v×I»$ ˆµØ:ë3EÂ_°£5•Eõô†e:ÞÖdiƒMq‹¹?hË8ŽZ( ºÚpÕ; ˆÇµzG>­…nqCR'}Ë xÁex“|\w*NvjÍ.e³ óÑQ±Q¨B¬aÓóÅýîÿÉç_×%$æàYÉR/sië3h^ZÃlB÷H©¬ôõÉoÒ1Þõ3úåó8£zÁÐâGç—Îïj*4å6eäŽe,Õéi¥[ÜÌ÷3n0\v3 ²Zp ‘Îå1‹jŒC¤{Ú÷´V±ï3ê—àÞ ÝßNñSW_BCÂøì«~]³æ³¯ÓýÉý¢4¤Ž²n÷E…Ýòx¯ð³•™õ&ž3ÉñX’¥~c³¦®eFú©®£‘ªät ‘4‹tAãÝÅŽ«ÚÁð8w-ºöσ´/t89}Ž®é«M]ZÞÄ )ðüùšJ7§¥4qò‡“į½R.À‰¶Š UwÅáÕ°dæÐpÂG’(‘i¸­*½á§œR?Jß,GùÏ´GügÖÈFm*å[ÐÞ'erNÞ¾„/J‹v´@r]Ù)üö‹) J¢ö˜å=t´«x‰ˆž_K{LÄÇøOÝ<¦mZŠé¯v‘?Ul3„n»{s¥§·hs9Áv4À{°>ÉK­§»ŽæB‡t‰/]ZF{§d@«°s°tЍÆJÅÞ¢–F¦½A,Cõp÷::ú~håÎ&¶‹×ëõŽªÇT{snqõ…²ÐðÇvLÑÕÎ[íÌVÔ³d›˜³´,€xõ©æîVX° ¹~lø ÈqgT¾KJ7UjQA©Óï>Ü¿Î}½&ªÃAëž\Ô‘ÑטÐO˜øi`¯˜°Þé÷Js…âåìŸÜ=‡öxÍö–šÏÀÈT³4Ü $ÅÑyÚM€ïè‹…ŠÙŸ³fglê”c†s³™•\:5iƵ×ü§È%*Ч=3«hŽØÖ1ßNñ” LÜÚƒìðv~Ÿ÷•ÍÅ>îsˆ–|·u*‡BÙÀ2æ 3À¨Â£k¬ÒÆ->Zƒ&¦Ñ8‡šÔ7Üì —c³ND±.*y·j·%þKV°KZ¶ˆúúúú›óçÎ}½ùûG´ßõü{Jj¹­Ÿ „,ÒÂÌÒÍ 6›QžÔA̧è;"<¯ÿ(&öŠÙ¢¡ÃÄáœíS³t‰I×{V9Jß3¼û¬êElÊÀ†T(nP¿‘kÚߟ/ïwþH?;À˜1öàË~2ÔZß-á¹XMZ}¤¤¦ž®Òf"à³¯Ø Ÿ¦³ÂÜ uâ%­X[‰tSòVƒž ]>P‚fT7U‰¢âÅ(⊋¹øßKršW-ÇÁ„+é/ðzºeDúÂb97M? M uÃD@L5@Ī*ÃïX ÑFõÈÁ{ij q8ÿÏì8låñƒ6ž8g§ÓEâE£A’~ˤ85Âæ’µs¥²‡Oµ³–dÕm¨̶J)dĽêÏv•jÙTÝt ƒ®ÓD.%i^Ñ«[ä <ó4ÅJ?šÍê3–uNeXÈ-úX£ Qy+Såµ5E €}‘PÎ4ÐRHtYT×\gl£\CY%‚ObÅMw-fˆÍˆVJ{Ø…9y!LRÚd—9 2[ÖîIfIÕ×ïëY÷|ŽÊUÜÜå“óM¤é¼Ö*­«KÔ„ï‹)„‚ÅÞ–Ÿ]ˆ’U;¦ù3άàJEN³°NŠÒ2„â$T‚ I[Tƒ½bôµm[V&9zÉÈEP+çªÏ²ßŎׄ½*Ñû-¡Ø£Z¤X„p®_´F`t¹ú\]§õžmömnš‘³w;B™“vV¤ZDªÒ˜ÁQzˆïZ(sµ#ÔÓŸ)ý*_Úf–¤Ç?þŒòå3YµyÇ?K0sÞ÷¹ØÇÛ¬BŠÊ ß›çŸ2 ƒV Õ¦,͆¿(žs?HX¼7ÅxNnÙzY- ™vœäÎÍñ»KðJ¨A†DµâhW.ÁZU® g)Läs>(Ð3—ËKáÉx ßÂLÔO•{&iuÆÓqÐ.· rvCÕÚ§©õøR>RáÛÍk„ÙZË- ^u…ͳ—,tÕÎ :ó,)åzѪ’^Uf=ý/ÊÞßk3w?³å<¿Æ=ùOùÏøúúúÍO;¤¯6ØÐQy½ßeã Š [P#›šGH’Þ‚Ž¾«’•¬úÇ?U>á¦FþÒ>¶Kºk ÀèÖZù¦u=p¾p;2Q©EÓ/œ"–ÖH.|s„8Œxé>V @¤²»x³~ª c#ÆuT`M÷Áä¸ ž:ƒ@ UE 8ºÁ *~SQ§ëe6«—¼-\´eU0ùâþ÷äƒó£ÿäÞÿêÿüO_õÿû?ñü_„þ‰‡øHâ Vþòµal³“NQjŒáµH˜äAÌZ–µÐáý‹\>6†!3EH›wàù/™–,JÍ"iX Ô·¼ÞŒuÐqZX¿¥ëN¹– ‹/Kˆ4ìb@j¶fBõ#$¯éÜÅ-äK.!ŽfX`R^Òµa­Lã‰>»%¹*_4¹b¶m‰X'f( Í®nÐ9)H¨Crò­ÉÃü<ÎÍçˆîzñv¾Š£Í»Ê-Y9âK[Jˆ¥ÙoBtbI.¿{MlÜçÚùã`Ôl_•|AÅ(^ó`5²ö½Ø„*+åždÀ„ Цma©×e+ ‰kb£­-=5)¨²ô)""×¢à¤ÏHGÓÄ,熻ôÏLÛÍæKÚÈ:è‘(ø-]ãI²²Wqh*"‚½ü¼£4(Y­õ72ó±0§ÌÓ{Ȱ™o$Vg½¡Œ7mzvEV\Ó¢Ÿ ë• y”o˃w>;š ñŸLŒè*vß!~Np¦‚:(K¶¢h¶ /¨W¨°›Ç¤ò2+úO1Aª¨b&ä½g¹33i¨Ä!Ò–)Ø5èB0r "½ãaai—àd07nºful¿ç©ÊÛJTË"•X½YïÀmUîQšiN¿Dy„mÐ<mA›¹ÊšJM¥‡?„Ë¢ÖlÛ€,‰«ø¶aŠºô£ÑZ¬ZÁ'O;Ä|´µkAôÚcŸ./LÛ¦-6é¯9¬úúúŠS¯yåZÇ××À£R“¾Ö‰tÜLä÷NÒ!µG‘R‰r´4³Ð t«H=ƒ¢®èBe9£×ˆE¼.JŰœsXØQÇ[=Іç‰Ð2±b,~´©“@¡š M¢—C/ˆ5'vPâ½m¯ ¥O[ô‹ÇÉU ¢Ö]à47'Ö[L£q M(Ö0>šÎÅæµO/6± 0ˆ ¶›©Ð­¦¥¨­v =]ª”µ£ËGP´e2žŠéeÔú©0UìuKj$ðÄÐ/o”Á¤%è0Gi½=ç!s’æ9{Æ1m7)LKÍ®B’ó7¹/3kÚfÖ™™õ¬^Ô6YJ˹!·.âõçiµ'¦Ò;Ât=¶Ô¹oØ`0RõWÞ>ž»eˆ$s‰ˆ÷çÕ÷tòù¢Þü½¾±3_¤Ï¤UG‰3AVs3n®þbkjµò2ªT±k‰+›·}fÇž•ì»DžÒõ\Íh«‘µ§ÄÚ‰°Y¡U<®ñ×ñ-z,Ÿ-‡u¦Ü´E×G-Y'ŒU¨â¿nÅyϯÒõˆ¦ºvɦœæEcVÂzo0:®ßäˆHüÇ/eŽ1*¢¸©hüù{¿òAùÞãJuUtŸ· q×ä§Àø’Âí6Yç¾^è³óV:jÁçº8›õúþÛVÀÒD9œnGvN‰Zg#Іˆ©cº,±•„¶h·[cÊ œ Ì×>ôŽÞÓòóxg‹«¹Ãù|2ÏX­š%Qøî6¾¨&b´ßØV´Ýi‹Nr%Y ½™«?,¨Xmpêá,¼£:ÊfiAª%´ÈU`ÎÏ zLZ©xÅ­'þU0î o °Eîfä›ûbÙ V2ê€Qk©u–çñëè*Î`X­gM†›¶_ nÜFZ«ÛˆÛm'¸…Þ¦(XPèÍ“ÍÎVKRÖÎn°ÕQÏ+‹˜ñÜ[aìl€à晚Ñ<Àu¨ ,¸U¡» ŒK†îö|âˆQzP¬Zvyyš^´½-õ¥ë¬ò÷Žq>ÞÓÿßïëoŠqY!ÙÆÔºÀá¥sêB»_9–J»0๋hœÔHI0vˆ´~áÚãÕ2³ ª×ªÍ¾Ö†…̼đØaÍ6Â|5c¢«ÃgÉaq^ôîÄúBâ\ýJ8R¡¤¾_ÄÕù#ÙÝêë«’Þ…e6Šaƒ8éæ›;<¬µ <ë~Sú-Ë—)žq_üþ—)3Tv‘×&Q“h…cGfEX·Ã_Ïb“KÚ‡¬„ãê¸þ×®–½oÄx˜èðÇ BMbÁÖÌ»H¹¯Žåe7|PY¦ÒÕJ»Z´Ì9†vèí`£¡XÎí^¾;ßÚ\b:ìð¨wxœ.¨j’Ž«ªºr)Ù9Ë`Ó ޅ£Ó©EÎÎÒe†œÍÈL‰›¾ñ4B³-(ÃÊæ0Iø0ô˜rrE =mÚúLÒâv1Yu|‹+'ÎvžÒEn†¼ û$í´V×AÈçIíwÛ´œ­: *Ö¥ï‚Ö1¢Ë ?¾¿I^ÒR®ÏzÔT븻;¥i<Æç©l/,’ÝæÕ\y®„4RIß„CµpÃPKõÒãg‡q×Ì_UŽÓŽ.í&©”3m—tÂ'’– &sàJ©ŒŠN3#a8;Ñ£¥–<ý!çüU$ôùž¢ÏgVÌ®«caRÖ%˜²¬]v×0â}él܇ÈñìsÜ«go”Žï24 DVû$Šº‘¦){…5íèÖ¯(¤ržž]Ë@ú¹ÿÙêêÿ‡.qõõŠÕ·+VÑ1jϼZ'Úbb}¦'ï‰õŸÃøÇX iK}›hÔX^*l¿x¹»&é­zìInçGUºmkÑw÷—{~;!ÍÁÍ­4 ¢(ñÕw@€gY›ãÑÓ/”¦j¯²ÿl Ë}˜ ´ÏÎIÍÍÜ€¤ŠÆm³v‡r“´¸(C_ C¹/ÓIè/{r­f}ü1¢õÈJ‰w³grM[±uDÅ´‡2!$Ó½1©d²Ö¡Þ ´·?Aqœ¨•^ª×ßÉ;“{ rœ[òñ {£v œÚô+D®|ÅgTµ¯aèéŽÅ*ò؃ÛÎÂd€cQ‰rÅ€Ú–°Ðïy(iH±*ßûKÅ2­´‚¨¾ ¢/¿3«2O‰V« s6%ÍTÁã¶ê?jé>ÖõI‘þx¿½ßù üî†.˜¤Èi,EY¥m4¿EãÚâ$|Ã0­ÒP–¿0ËJ^=ëé®âSM¸¯Æp°?´Ø4šQ. Ì@Üä­è p€×ñtª^ªe#Ò|Ah%§„ø‡8—§•¼dµW¯9÷ùg½(·ùO¿·?ÇÄÆvñk%ªî2Ô¬–Fr2+ˆU) Úîv®ÛÐ7y–˜ ‡ÞšÀçÚÚù~Ÿ§Õ=Ïû_£Ûúû³þ·©]£«§û¿Óç[E£—8Ÿ¬×ü=,Êí°Æ‰{žreL+x­¢‹xŽFìä1Üb¦Qÿf9kôýw¨Æ>:kÁ>—죒º¬ÙS6 cuoP¢¤[<ã)ÇÏMÛ®>à—*J®"½Ä¬ãBúšŒ–[}°©ìJ¾<©š½tóŽÚë-ãÃ,Ð ;5Õ&F+6åEÈ£ A‚ò3.=XbW3ví1Cv!ÈU×4<`ŸÓI*Ð0³œ³å¶W&®gü¢:ƒa\¡§ñ!ÑqZÎÜ=–l‡´Ü¶¿—ÅK›ˆB5âébgŒåŒÝØaRW_ZjÖñU¤>­1ÂèÜ»*—•€º™[x¸ïéåÕbÂ9/ì_Ú"ôϦæNvs.ªdÍøÈÆ5æ½è#@›¬²%"þ;ö¹µ%b½¬Ä‡ÒžzÕ­A$ „kÔ +œéóå<Ý`ÙmÓ¹u´#0³–ñ»¥;3ù‹\¯¯7d¬T«¦žs ÖK›øôÌOqWˆ¬s_ÒxãmmPxê; õž Á{¹ 5š°Õñ“Q©á" ò!xSGj°© W— îw\ÌH!ð/åS™T“†$ž·¶xˆ:l1T­” ñK“ ¥ƒ ÃG!¼Ñ„ßhŠQœÂnrŠÍÞ`”ºÅôÖžVR\9Þ¹Ê$³Êá¯uƒ+z2ÁD9è%?]©«œ½:ƒaöµò¨Ìö³¸raÁ8ûRõ…Îþ‚¨ðú”2}÷Ö¼ë°V¯EsF¬ºïl>ÇÎ+Û›âñºkŒlÌ®ØYo4mgbˆü™È*.,Ñ.¬AGz‹Ž«¥ƒ·ðŽþ•õñ’ÍØÁ¥ÃäÓBÎlÙJæî ô:}Z+sæ uG¢ŽÆ–r#Ø‹gò%ßÔC±R,‚/v5Õ³™€çUži7mE¯ï>¬S»rDò¯·Ýô™çí^Vå=SË”ò÷çê=ÿ¶ÞÊÛ&+ÃÎήu ,³V^³#i•K­ÒB¸ÉÛè#pJZ{V£üI†›»|.䮞v¨íÍÑçg!Óò/Iá…ñÚräÛR·O«KÝK‘¹7«¨ÃÞ7¥µá¡V4ôÆ«3Pµ$hÁEL|45Ú-ÙÓ‘ˆšuÍlikÊÙ}\³C±¡Æ°žýÿæç€ax¢ÝÍ oNíºi,/þ^¤ù~On÷w-É9²ŽCÐt“•1œ™¯`V‚@³ÒšV¹‚Kê&«)øíJ žÕº\Š4o¢¼÷Ö¯—ZÄÅ'M¦Ë Ú?>_Þïü~zîì¦vtU,…§5‹#¿ý£Ñä®jØN‹™ÀÛ-HzùPëöƒ,:±ÖVõŒÕ8«Œ0™â$˜5©žÀZmJ‚•náÉÍ©é»IˆC¯¼r¹Àão‚¸ÓVšØï!W˜É fØz*nä1ÅmbžÕ­ ×”Íkrù+1ïë ­õÚ-[RýÚÛDiZ¥ÿ¤¬³˜¿úñó}ÿ‰ž ÁÛáäÜÒ܇4õr°Ú+ Õ—ò嫨©ìцߗŒ Ë€tãiÓ7 ¬¸•Å1r-#(¡&RØÐÑVþ! ˆ³–ºŽªC@³Mf /l¦% `ÎWÇ4]­˜¯Ä²*LEJøyÏd‚M Ö‰V¡z]ƒ*øÅÊ›úúÇ®vŸ¨ëÊ~ïÒ·8ÿÇŸÿ7ŸÝê,;ÈoÊ;··]~îqË•¯Ê:bßX¯.®¨­+ë7%‚Ó« žjÅ9$t]`*†ÍôÒ÷íÔ†Ž».3ߢ–¼ ªj9ÎW/mÝm±”ÃÙ0@´ð»sÑ[Zü>ÔJùæ´%Ýi[ _þqNSV£â=\vŽt%mKG9Žu´r˜ç¦=¾ø˜˜û½~UfÍ›^¾ò‰´$›ž¡_·A>ut†.Ùdd´—<Óp}”r½üŠ%•§{†xm l¬Áç®ÐŠÇy Öl@lÀcZ¡§H‘ªìYÕ«,ÐWy•)ïË—¥ÕÐqçRLUXÙa¦—H6Ç*«CÞáWŸŒ:öŠRB%ù×äŽYàÛÀw<;4PJ²çmdfÚJ…w4.Z)–×@ŠFÒ:M¢Xî‰aVo VüLùk g"ç3vnLbÙwµò‚È“;NºíöÌNŠ >™±hÐQÕ|˜:?¯â¹Ò¡A'¸(Ò´ÚÄlw›Qµ0Á0eÄ„ò”©I¡ÅR1îe×–w½à§PwŠBöiß°‚!GŽ€„Q »2ÃlGÓœûÚ~ùÿ¥ôóºo§~êÌ‹—]-Êk>Ö‹Pƒ½-a˜$­ÂpÞá5.+Þ“º\J4ud»<7S#’&nŠ¢…ƒÎ(ÿ"/\¬~²cmõMJ“8{‚Ðáuñ×l-‰£¾;Õ -g™ðTm¢-U2ÃdpÄ– R’¶±.F¶χ±•Éyûq.¢oÓ²(J¤² h*’¸Æ•Æ” k¸¥Zì,óK<ï%Ã鯯tz­7–rPÊÐ[®ªvs\"·˜¤õYQåêØ—)†9(xÃ𓌛°]%aMÎ"uàB»çÄTж‘#ÊÎc>–euŠÞ ÈR£¿:Ú¿-¢c”ÄÇ´ÄÄý&'Úcëë2¼*8·&2|¯3Dz<”ÕVMñO òøŸ_Gupôõ}§U\X½ã$†;Ãð½†Su‚«Å±¦P2cV꛾1Ë݈ü|G‘ØêóòUÒò{œ»_sÅìö»s×ä|o¯¹Ý§kÆé퓽Ô/Ï÷»ÿ$žQn!ÊWYt\«ëºÚ£U µ"Õ©©"9i`š õDÜvµ)5°qr2ò~Sae ¢´ÇÓªŠˆUž_w8ü{»jG6Õ\!VÜé†t_4 ò(X<2·Vû†Çg±y¥I7©Yd¶1‹r†I! RÚHcœ·™±KÚÄ)oiµï6½¦ff}WšnÆ5JS&¬^©VLPÑqW”Âôhc7X€ÝŽÒà ™=‰#½¦“Ϭw¯Ö—ˆ˜‰åíŽS1jÏÖ'ÚknV+ÜÂV8³~ÀFKֲɯ½Xs´ Ìõ̦—ìŒóÓ|z:Èñž»bXZ#C&r€¼ Ã X×K\ƒó® “~´0¼Ñ…86ší©Ä\$)‘ö9ïäÙÖÌç›rây;h¸Éƒ `,$¯IT¢íBuîùÑÉÔ8ËÆÒSNŠGqƒg®®ŸÚ\}ª6p‰c5ö²˜JF†³¤ &k(óÀbøæBÁj±oš” ½ãÒ°:£QqÜ‘{Ô4¤Ö+ëëé¯Ý¥Ó‘0@†Hlk€,xþ[„K1b‚OÏqJ4Ââ-JúúúíïX$sûþéå3þëråÏïå÷úû–•U!HõÌŠ‡b€«G¥?F…5VX&´|ת¡‹O!Ö+èv¯M¨9/õGË”Ö}£ß»·úÞÖõk5·M«hšÚ³ï[DûLLOÖ&=¦'ëëâ£3›V£?âU§>^ìù9#€y}¶ñ¦ðn×ÚôvþoB5„XTÅ0ÄŽð™j.FACríÜ £j\⭦à µë0æÑ‹wðrMhÊ[ŠÖ]¤eµ¯†òz–€-F–X~nRnU²šâ’xHÖ6Öc2vµS³Z¾xR®!\ ì˜ÖñuáÖ˜qCÝ’êQA,Ø_U—êÑ•¨¢=½½!¨ÎbcQ X鼪Œ…Å»‘S¨HqfÃX8®AÔÝ‚]kÞAÆ;EiÙ8áofbÃÄøÈ éfÍØñ„ËP¸+…›5VHnšÍïGŸ"tø€;j\Z©ËtÄþÏN}ªP,—ÎÑø‰µ™•.ç@à(Â0âæócñëqƒ40éo‹›Ü§ÃוÙyK º&Þì«× ̨|†6fLÐiùâþ÷äƒö-M*u§¦©U7*†Ä\}›+÷ÄqQµ i3XDì4š+Ô8ôX+æÈZagc[54²×¿pUÊÓqWÍ¡Uû*yƒÓ¥nØ]–Í=>£ßîõõõ=s£^ŸyŸiçõŽ^ÓÏýüâ"yýÑ…®+’ZKÝŠ®0ä@“ØÓhÌÔ=Ãç RmqÍ,H½ EKOŒ{ƒ2¨)Ÿ& FÏlæKÀÚlRo1¶ä6‡K)ØŽßxg½©g•qO=pè¥.,E¼¤É›[¸1AÓ/Eê»"ë`sÈ—´ZÞ—tBî ³£\=éRõPL1Å K®¹Ø­E2œ«2׿#ËÖ;73_ª× Ui¶ `†½ºw`æîÖ«ÈGFNëOê'’ºW¸Õ—5_¡èÙo\\ôÄA¶Àh©>s¹HCL 4U† ´0‚cË Ñ^‚0*và%úÖáòU\Ý›VEÝ‚Ž—Švƒ Üí=é‘}gæ¤M¹S£ßª'¦³Î³Ëä›ýóú…·òô3 Ú©Æž¢l R†×½*~Ë# d[”Šö)=]6ˆ†,Bw ¯3nÈÒXI®¥fmiUÄ5éòP`­B*ôÛ×I pEoÊ=û+Ý`öìÂÑa•ˆŠNäÙP¬ ,^±#z²'hdÇ–€³ø‹cùÌ2ÝŽæÑ! =5¼fŽØ‡AT"a‘#@˜Ùâ Ù°±ÿ 1Ýñê¸Þ€åFÌß.éèäZ–ìEÖI4Všf-Œf_-ƒ^Äeƒždý–ýW-­h=Ér^m$¿W¼ÚÓëëëëé}ýfŒ²˜ˆê4!…26M7L‘sƒ˜­éEŒZ:f(à īØ9 AǕŜ*c½$V¾;•âÍÏOaTØ#Íå‹ös¯@˜‰ å qš9 e8H÷ô³RkrÍZ÷^·‰-@ršÖ§8®»9BX¯E¸£<ý3ñ>÷ q2ÙÛ±å2UÇ“M9áÙÇ( ­Ã£lƒŠ\XÖ›9 §+^Ôus¢èH‚åU¥Y„Qs":ì±x°Ê"V-[E©xç½|Gc>6¿\T¸Q£Vߤ¨ùª<ÓtbÅ%—ݪËÁ"ëèD©æ0$×àî#M×Ów²ÚËV;c¹gºö˜ÔHëIŠw˜t“@¨Ä,¨x§` jég˨ec„;^Õ¯)ñ ¡•£³…€ÞuwWbëiHfÐ<¤xZ˜UáE)â!„Ø.šì2Ó0¶¢!8š;©ìã0z´K¶Ëîü¬Ïç‹ûÝÿ’ØŠúÚo6 ¬ÓHFq*Ë1ÈÉhBR¿bš­Y~tfžo‹X«I£Õ›}¦]l½æœ9ZdݱÔTîœ÷¹IÐ:Puë¼ôŽ•¤|µˆŽ±^ÇÍïÓóŠ#œý§/iŽúXé¯8žu§ËÔ$3ToAÓõöSDm£vÇs´¸(B“¶·é¤ôŽ—¼üµ™õZþ§[{e+¬¦NpBn"ÕL²ð 5K›‘â\%cH{dYúT˜P±Ï%Vù<9Á¨e´ÀT£›z³¿±r"@”gA’‰%ñÊÜÕêx Ð. žÜ.€Cô"\…Q„Ê#ŠëŸ á8¦¥ F`߬%⤫j“½f=§Ñ\Ø`ÏñW`¦f`t¥bnÑo&åAtç$ö+OÐŽ^¹Ž‘H´ÌÅyõÌDýÝsï<¾œç×?Pu¤|»uÇišÏµçç‰÷‰ö¼õG´ÄSå뵺`\Cn2 µ+œ2·ÂÁä&,憫¹éø®<0›–hafµ3«šñKDÎPé?_3Lr½Líæd­ûâ¨h†a^ákJ²"ÔÀ…ªÖÃjÍŽé9¸–©³ttZÚ%̨sC¢Òö›Œº¢ ï;Ü·5ZX´fçfìT¶e‰#ûÈiqw 殉³)JÓqC¹¢îl"ÁÚ–2ôi]йwd±Ÿxg8EjËÑ~3$9T¼Ïˆðæ+Pf«¢•© äëk–b‹9y™qœ'vŸF2E] >r£Úš\5°Ö$÷ÌŽ¸‚{JÚê³U¦Å˜&“‡®·e‘¸£êŽJäíM6ÆN"Š3iR¥„= –Je»˜-¹¢nªç-ß}¸/MáSè=Í¢4Û[Q&³_µB&òÇM±E‡SÓ¼»©Ü©`£ê¥bá¸ï^u´Z}XEˆ¸ï­YÿÛÚb}âcÞ³111ë¡N³Gøs¯]}§Þöù)ËÛÚ~^s=<¦}åM® â¤qTÑ´"’H=»µwò •U%š…ÌÈÞÈú„ÒWè¥Yõ‘òêˆÞj¨Æ‡kΔ»÷ðìçb ÍÖíÜÒìÚóiÙÌz‘ƒvsÌ‹ˆhÀiR7UË`6NÊ¡ïyê'’ÞÔñ%žšwdV‡ôÏÃP¿—¡Íd/§¤ÊKÐ5aõE›¢²­-fmÛaÊ,³%jÞV‚Á3ã³PtWânkçãe)›žš'f;A“S5,áé°ªP4j뢳VoÓqI‰è<}ĺ­•„ð>-â=„#‡»Ù„.Ç–¸ÎÓZ *¡¥G`·ùM¥·e¥2ñ;Y9{Ÿ&{¸8ÚA”ù#Jªó !h“³žËæ5\Z¤lY$ËQ™V½‚Ãok:×L×í\y×Û/Ýýá›i£“Úc¸V ~q×kûðÏ ¢¤H,ÜTšèëZµŠee‹9 v®®iKDÇ[yÍk<Í[Õªuæwtxow?3ŸvËaQ­qYzý½H•`˜‹0Ýj'¹—PÅ"Æ1²³k£Õ/(íæo+8 \Õvù"CžµoyrV(fŒÐ8S‡³£|qî0ËûBÅÎQ#<Æ}foTud”:üÌ5Ñ·n…ÍÌœ£“|KÃ3ÎqNÁgi¾×û3£¾àÔêÿ?€ŸýŸXØSÆ|fýóB·qâEb¦. œ¼ì\`egš¯i‚åÒ?a¢’ 06ž/Í÷»ÿ$±eqª[‡t.9³vû ”ä9Å%r /yšQ“ܸ㺿×Ôûú²yûZY‰ù-iš™Í.¶Y ¢`¤²vOöI)BX)©,Öç<’îè8Ëî±Ñ'mÑ–KÐ:ŠÃ×%úJœíò”¥yV±êóÕýõ^_NžQÙåþÝusöúòû¹ÉÕ˹KSüyuVkôöçõÿU÷õõô+sù`±×ôýSËëÿo£éïÏü¹úÅ`³h§L[œýÞÓþÊyýÓþïMc¬oìñ¡U©í(Õq‰°€ÚLæ©Ý§~Åf«^„b댰We¯®5ã3j!Ÿ‘(%˜Ëì#Î¥ó­›Ãü5‚ÓCC/·ñv!)&±lc6åóm[Yf%°)°žù€AeÃsGrÝh¤³])§k6+öçÍ«m2¨Tï€#+Õk¹ `α"(ZÔä_gOùíæ 0[)N·n\EÖ]Ÿ_¨ÉŠ´PÖ’3ŸÐáØç©Ï„áIJ3®$g@"µa@üŽÅN?As^´ü\±X£EÁïÜ¢Öø‚â ºsŸðk†Î1ÿÛjiõ/¿¥É%.vÆuì|]ä¹SK%©ŽSp“þ™SÇ!½ž~¤ÞÙœs0;Kx`WŠ8yŠ­¦ A(¾‚…‰¶vþ} _ÔIÊ‘bx®¥/~ ÄÏæKûÝÿ’ØŒ«A+2"…Î:©#(L"E†Qvµ;ÖizLÖÑ1>ž? q¶_\¶Ü ††Ü>|*9ò³í©›ñKѪ;ЪK쪄ö­zµ¤S$ÁÌ ÓwkEŽã$hš™‰ä©Ùä¬$5—WW`†5 W¬åÌÕa•1Ñhš…®62 ì2ÅyE‰Û Ì5|†ï1ÚEz\áƒ4Ñ(šýØ’³‰´V„U™X„]…Î;„ëœ7‘˜& "¤DJÚ„ë¥âkh‰__]Ž]Siö÷åÓ?ísû¹ø{Äòõoí6›^ä^+|MsŒ z­åÞDþf˜ô ÛšYa÷ó)Ö;P¥é<]w‰À}tÁ×­c·å ’ñhj ¸þoYº?„w±¸oš–ò™Ð³Ûzè­elzf§…f,`±vD“'Ão0D.…ÁÛ|ŒúpN%ò©W·šÑjËÀ¡vï™Uî„Y£° ñÂÆºÙÒ õ«㢠™šÅ„^S_¯8ý*Ú#ÚôŸyêüñγY˜œæ¸›7oI!Câk­ª ¢’'áÖ]P«šÐ¨µ~Vñ¸–‘µSp1ÎÌáSäÈ8l›y†ÄÌcÊq.õ³»—=Cè-PÐýŸbš,¸ÄŸ¡»Æ×îÀë ˜¡c°q3ÙFiSX7nâ;l ¶ƒªq•gh‡pÕ&‡œÀsô P%­¡#ÊÄ`á£7 k¹§u2`±áµHœ­®`Ü‹;~‡Ã­…ý^)`ÇßбUÖÁÖ{ÇRP£m.»W33Òt¨£È<çT)§[ 'óŒ÷oP©²3ÐŒºe<`¤2\C4fóœÙ*˜ â·ñîçP‰=ºú ìè±sZvž]¨»O )C{¤X6`®¶$‡hí,VLÙF?™³~uòZ¡¸÷ˆLƒ¾xϤÆN1Š@—¢çåRÏÄÛ¸øŽ–²õ³V+¡žEÖÉc+‡3r“è¦~6I…;™¸u“ rU â8jÌŒ÷UAÅ~áû¬5a *7qÄx !˜Ú c£=”R–´o0°>y‹˜ß=Éy+,‡e’Üì0{ا9‹i!LclB”·µ®B^Ó{ÚfÖ™™õïèöè¼–¥‡y›Z³Î‘ÕS3Êbñ~C™ŽšDtÖÓèk&´ã¨X4±ŒÃ&´ GÌ…)KjŽƒ¤MïkEkï1êµçÊ¿ÿ¯C±JBÐ4«R^öªëwŒ~Ð+yžÈìc™‹‘ZÉÎbôõ–ó?‹ÉVÑÊkX ík«<º‡Îf±^™çjW£ôfñ!'׌æ–~©tß.ÍYɽÏã´ª`WÄnõWTmÃ=€W›2!ÔƒY?¢mT69øO_ ŠÅZóçÄÕU)ö÷éœiÒÿ—™û½9ÆHå¬ßàå‘iíÔ³Ä/ç«×ñ0ϯ_`¸ë¶¢ùýn†xÔ ã©UŒÕ-³A œsÔ3Ô‚£´{Z„«zÌ}bb}p·S¤CÈѦ'ôbÜ5ÄeE#7§Ú9Z³¢1̃é9:iÎäÌ—÷»ÿ$±fâ(v–/´ÍZ¸;u²aäŒn®øü£¼‡:½,,6×`\ Ä{DG©’uDÓÞ—¤ô’-3‰é¿µç•mÕ[WýiŽu‰‚öÊX³A€31{W¾0Y€–"b./%eØíÛ;à yuŽ–‰:“ZyÉ3ÓRÏ)žªOÒ¥´ûOW*^g®Ö¥º¤—DTF ¤ó:™y+Ú•‘ÄÔn꺒f7ÚV|qçšÁoè ­BŽÚ™úäUŽÁšÅ,=`•T˜\ÉéE©sÛ¼f’tEIj¨Â£¨ÌÔžõZy_ß”òûùÜs÷û¹Ç?ñõ™ÅîðùÒÉ»ê…wŸ\>;ƲӢ¥§5ίˆç´õÄHùŽR²­Î_pú®bÚâIŒŠ¯àfå A£+.¨T”PTL)Ô7²@j2"üÏh•TwØy* ÔM— 'fSï0ßAX$ØÆèq¦â–bö%EÐÌb¬Xdå1õ¯ûU·ÝjOÝoøÄÍgfbrØmN'â­Nȉ¨‘]ðå¬Úw)·&IÌ%-x* y¥ àÉàÜj©±˜ W/,°Zá¯ÔhµWÐj>Jv“ƒÍœY2y ˆCð6"‘ÞÑíér¸?•òÊ–BÍÄõÏf¯ÀY st÷àBïv;Ô]… p˜4y…¼3ƒá#VŠÐÃÊófÙµ¯Q ì¶ok˜*­Ôªé•%–îßÕ„N|­÷ÖyZ&'ª¶‰ÿÚ"ÑÎ&'—)‰¯8ô&uªMTó £2£êQrÑŒÕQ½d–o¡-$Cð" ³„q N"n½³j5cT<ÇjÖ¡I>à‚µMᤠ+äHFF;]òÇt—™ôÖg¤G‹^¿'O+VÔ‹Ï8ëç[Z+X¥¹}¥¦Õ·(šG¿¯¯ª‚Ö¯Ú}ÓÊ}£—9å?áíï÷[§Õ<±Œ—a5›V23sØx)Mb…cO1EcFä Nh_B•#g`ʲ[{ñçea¿¿Ne•v3DEŒÚ I3Ô'ð^Ñ-ضÀy‚Ê¿~«( ¡Â>‰&øwjRîö|Ÿ êï|þWÃ9\en’ÅQ'r²£3Ûé‘Eo[E¬IåNSíþÿ»ü½}}øznç1 ?›&ÉÞ‹‘užµ¼E®¸˜fR7)*,’¬)`ž µŠÇ(òôf)ó®RÍùóçaØœ­nätÖ"²I´c«Û¦/n¹Ž¯¯¯¯­—Ôgj€É·uáS៼֪ŽÍ£Ì™e<´©WUWç¶ÅnÙ‡[×Úy{Ç)¤Ök1jÏÝòÌ|³5úLǤ8»cŠŒ–1©ªg ‹,UœËéÉm¶ÓFT#¥Ô†Ø!r¦µpé?•U”px‹˜Áðk½µ·£¥§u‡jÜZTDU ½¢uš%Ó±’yy²s[0¯‰ñmfe´Û6‚9‘›hQãg--§?_V¬,ÂÌÚƒg]#‹;Æ37—!i·-럶"Ñl.9-HnÏ*¸;×,d+˜€aðž^ªŽÒPT»}³mÕ6  ÆfjÅÒ쫘¶q•±ü!6`ÿï_~@OþF¤a& Is®'H~k¯®~ ¥ª[’“æÐU*ZVɆ>ÖVí% eÖÎÚÚž¼@Ë,‰eø‹a+'[ä–’<€›ÎKÍ~jÁ }›C+)Ÿäd¨Ð­Û>áC]ý|¢"±$™ŠÂ>¾¾¾»}|£ýyûýÿÃÒ¢ÃÑ&T+z–H€×P¯Þ¦³øÉ@ßlb%É ƒ^]]`Ê®!ªRÀÍ㮎#ÖÈñî‹«è_$m”×°^»G²æ]¬@rª¥CMÚÖ_4bWÇ7ö›ƒ”àÉYag²´Ûyîóh\Å3ÁV]nµ °ûÁ!MÅ4‡‘©¸ð}ƒ“iÒ‹KrÍîm^‡€ÑyjA*Ò!Ñy^l¢¿¹ÊÙµ™¢÷Ò´÷Mt³óó¥»ÉŒc™gª¨Ùh¶`Å3$¥ÜfÐ*¥Š‘õõ5žSùgŸ¼O?oxûãü}©~a’é\¤¢®t_®ByÀÕÇ÷$ñT•ýBND…'ÿü7“à‘èWK\$ÖÚ Xµàw—êP>©nlúzt¨TÀxXÜ]Õm‚÷ke.ˆ‚^€¹Éž­s2a§Sg^“œèót‹} ¾³¹j¦º®jƒ;gUñy¤…3B 9 ÀX+¹«o‰ %Ñ”A,‡‡÷>CH¨>ü0Au]T½–0ì0d'"—‡4 Ì;Ä&,;W«åõñê‚çܿӟúµù¦y}ñÏ”ó£ÔG·/W¨¢½%£Ÿ·>‚VÓÿÆb&#Ÿ·?¬Ä{ú;!Dð•lÊÄÐb’¾uN²WÑe/8ý¥~#ðñË¡ÞòÙ´ˆk€Ä0‡zûýÞ‹#µbÝ|Ïèÿ¯Ë§ß¯£«·÷uôóöõXçHô}eÃc¤±QÏdƒµfÂiÚi2¥$\û¶ƒ=Ëw)K }‰©l;Oícëèää (-Š•·øCa̪@õ=Š5‰æTó"4+šU̪ÝA‰Â‹=ð†øÝâd[nä…Ç•˜:RÚ—W­‡]—Daæa‡IwÝ«#´xvô¦j¢È °TQqóè ëŽ!לͧ¦•ˆçi›[ëi™™ŸÆlœíOáhqYßá~˜§[v³=Uδ‘Ô8éX”†Ì:é°¨ÄÅ=S11fJVÞ}»÷´5tš·[ºš,r‰;“Þ÷å*5ÁA¬ŠŸ™/ïwþH?câÊì~·ñrö¿Wÿšú8ªýŸüËðÿÒü£ÿ†~WÞõõô~«WŸ\{ÄtûtW¦?JÞñ^Q3Ïæ˜›DV'¦/Br½&“ΟãËßÛþ×8ùf9L[”ÄÄúI3o¡–û·kIØ,øk¬¶Ä`Åîë2Xh¨;Œ½p'^Ô– w Yzò× $îö2®™5DÏw¼ ¶Ï£ŽÝ6¤âÓ"ÔîÅ1Nј•Aw,Û}ŽRŸ4²ägç/XC8g<ÍÊ”Iμâ T¯¢éqBNñ:^Z,ÚeÓø—|Ì=Ÿ9yL™ŒÚÊ®eÙ «4µa`hî© å“¥ž<ÔSAP$¦j ƒ/ž¢à¥b‰©VäJ÷ncÀ«!oÑYõú^‹¼Û™-h™ÿ üÑó>ÔçÑw*ý#éèb‰ý+u[é˦¿wøþ”Öc—øO¿øÇâ±¢,2O;[µ1KO/­m¯TÏû==V´Í¹Ìóô ðÿàß§¸³a×øÈ—âr³p%ho´¡*²è–Ï–óå¡e@à[“)i¸Ï»«Ó° 57ñFBYek_ B–Hf® Úûì²y¯+¥¿Q}~—«ÞIÕRÅ&¿ö:kšG¼ûsŽçұ̓í3ÎeL\E¼ýFíyU^úë÷|@‘Ó}³E)кå'Ú¼æ½5çy¬N³„pª®¶zpâÙfc‡·šL&”Ó.Ñ™rU™LXÚ*'"»àÜ_¦3¯éýlq“‡0r¥pfP詈ºÞb«P‡·q¡e‘¦© à,ÕU‰¯ gqËVS`Úh™¹PKž­§\¼ÄTRs±B÷lëæµs×…áyi€ÚixšÚ³Óh·:Íf=¦³ïí1?O]4ù­o–±þ3ÿ·ßëƒò¸hvÏἦ=t|%äúZ CZZ Z†|Àó˜§xÂ.ÓK‹˜VA$¨¹ÌêÈ%ĺŒ´Uj†‹/Y>åKu× »H'¦ƒl´@•¥ á”-dÆv†‹Ž²†f;;œN^)²Z&¦? áC™7¾k?“/}ö³¥žüÀìYO)°4µ^‡Ê£å–7 ׄ¯`ÀÝC9à›4×V¡:Ê×-"^ÜM€Ça™Ÿ²&|£8Ñkš ÅMavWRÏAò)jŒº.h7Îä z²O]­#ƒ·J÷4‚Ðæ£.cQ«O¾AÕFDeƒ7›,£.C¬³@ÃÛ>*\. ƒ1›¦šï ØäL¨Ø¨uÎ9å=$âk<­jÏÖ·­oY‹V&&x3‹7¸Tsòü6öá só_ÅÌÜò‘lOŸ©GB8æHìMoÊ?ýgßô¹òþÆá}9~÷ŸãïÏëê-Å\QÅÈ—Þ|Ù· Ë­~kÚ^‹VÐ…¬E*w<1@æ+rf®¹“¦n×WÅòü—]_ÀÇЊÉɼå‰E*0ôrt]ô &Ì*®Ù*ùïvè§%Õ`½¡j@ÃYË£‡["öë&J—ñsØ'Ƀ:ªý ¾ÕIéqÊš‰dשjºJåêL& ÓBRdW˜¸úmx¯D{Eã¦m[E¦×Ÿ—”ó›uzý/MüU6¦ê@B6ÛÓQp3ä¬O(±’â µj¦6V ¥°Ò,ÈÏy,-PßÀÏÂáÌuá„ä·Ä˺šGÏUq¹l¿;š¨ÙÀ¯°ÌkÖK¦»vÿ%XC÷·ÝèI¥Äþ”9L¬µS,¹Î×UË&ó -I£ ©×`Y€8/U¾Ÿ‹üýhp®ƒl´r—o·$I&£2³«ÙŸ•Ëõ[C>©„ðe®ÊÄOÏ—÷»ÿ$²l'¨üiV·)­És–gŒ¹ËáÆt‘±@0ôÖ»7ü¥4GÓÕ¨JõDÇ)ÿ÷‰¬Lr˜Ÿxž|½3Ãxv›—T ˜Œãz%È–[N,E&0U©Z5Ä:ö£ m˜D"‚ ˆ†šmç:Žòo.eZpu(û«ž´(úÄJUŽ±Þ·¯:Ú'×××t†°ï~sÈ]5›gªf~³íÿL¹Ÿ“ðܨøxl5Šû©*é’åzyo݆: #¢òª2ÉÈ0A@#‰Ü‹ò`óz‚}‘µáɬ6L• ©«ÉRV)hÜRíÝUMf*·“U3\z•Ë{$b~§GÍ]³å±f °Ój[®N¤k’˜ê”Ø„#¦ S[tÍm^V‰÷‰‰ö˜´O´Äý&'ëé˜Î°- ,gH6M9€§¨kYæAç3=_`нíÇ÷ ?A-Ì®®6;‡(€öŽð¨ù˜ì!Ÿ ¸É:Ž´pªÙƒ0ºéÃ&$ޝáNÄü)V²×‰áõyé¿^aò[èýnGÞ·WfIþ·E>¾¾¾¬2û—Í\º¹ÿœ{ĺb}kc_{AÔõ)Q1 °fZ¥.ÊV?aû_ΠL²×M…,{ç‘FÞ­Ô’MZþ)õÃCÆZ—á÷5–Ñ‘n ÍG/E5È>ÉGåA´yiçÙ´è® ®«DÕÊ¯Ž¢¬µÂv]Žmlv‘" :ðóˆòD¬çêÞ³'ªvs4®sF–h§)èl \*ƒ¢LÉwN…Ü-¢”î°Éºã‰žd;Nd1(:ÚÑ“‘À÷pò13ÒÑâ|œìÖ¿?ãŽ`ÍŽi¨LëH„K¨Á+Ô«%gÎñ³›¦:úº¬i«–'|.Õ;B#¦±\µ<¶`½µj?)ƒöhÐ CŽ›GãÅœÁ”´é~5k` ÆU“-LGnºìÅ„%S*GU™Õröa[”móåýîÿÉì{.üdåèiÈ;žô"¡Zíwz Úîvº;²tsêè·.™ÐÙu«2}SYÒOQl%ä–˜„–ïתŠ(%$·ahyÛ£®ß___Ar† ©ÄÂ….à$'‡4 ËBV¤¥©hšLW—¼sõvõJwÜ'GqÆÎc6NÝ C‚3{ÉïZ"•­¯1ZÖ±òÇ#QçVYVâ-ÉÈÖ½€ÀÛPà¥õ‘x€ +0ÊíŒ\{,Ô¢¥kÆÆÍo]«ôôBaµë¹D¼0É?ºIz£ ´A,´Þ¶1ê9‚K8å•óµk5}ŒÖã-õæ¥ ¯Ÿr4‘xàÔ—c£1y½¢š„'m‡Ä ž!o-„ÈŒÍô5ꯗaŽé¦v © ­oò‰Ï]€¥Ýƒ5aUˆ¼êªZx²Ò­aê"òA¹;pØHÂÆ À½ÓigQ(QT$ÒÕ L"Óœ%;¸,+0:hÝI ÜU[ü…n‡•_­üIŸ*á®q.À…eGÛ)*Å e†A佂6 FXfÓ#™ ¡ËJtÔ†¢ËP–‰µ@̶›ôòŠÌÍ­Ê""#ߟÝ˗ן· 9«nóôWÇ.„”ä}ßÊ8XÐdÅ-mp±L𜿡œ’ E;kDLoâ!;ù‘6ç¡sA6¨Ü«)5Ž2[Nè•ßèYfG\ÇUrå­$Ð\Bï p„Þ9§KĈâ1OÖe/‡[O®ê_Éïvz|¥ú;WèðpöÑ–´ ŽQÎ!]Y±n,¨¯ÞºlkÇFì‰uŒàüö”\'f­ßo‹øt[U^þ? æ‘­–å°×£O+]ÔDðô•’@ƒKi¸õJ?)u—+•­M^™˜‰¾'ücŸÓ~–þÌÖgëêÎy}mÿÝê´¤Eb#éˆpØÖ 4ªo$puP½¶ÑÐ (6*!j”is M.»tа¸IJbð÷ åð›  ½2ã3ÇhÙúƒêMt²uæôqý-†È'v´²f³×wg±Íô§á#ÌÞÌ»õ!E£z ¨¶ÇeDfãyZwÄÓ1œ¥R$xÚž>ª,j‚êÜ-RË™,zgæ”ÔlÃj¦!F´9€©ÜK[¯,Û¾2­aþ|¿½ßù ýÓ)ÜïRìÖ‡°lÐjÍAišÛ¿e¤µ |»kTÿ+úP¼l|;¬œÃ€ºÆO$ÑSŽ*A|+5›üRÒÝ`‚°oÝLnµê‘|›!®“9íSª{LŽiÜ¥J@÷îÙZÄ*6W¹7Dȉx÷ômqfè!cÑfµ(“7ÍX¶°+Ø;Õ¬[ÉTd-m68>YîÒ-Š ‘±òŽ—‰›urë·o·Õn|ï>Ü­¹Íº+1èìed®Ï¿QÍ=ƒC‹Q¢x¹‰¨¶s¨yV"Ww»°øNLðÛ±Iív ëðVõŽfuÆ{kÃ*f¹;E7Ž ûàé‚+$Š+Ÿœ¼ÛÆ_×ï裡ðÐöë"T.ÒyB:PÍ×"ófâ¹(nŠÈ¯T”]¹ÕÚ_ÂUØrïxá¶zÔÞY Ãi–Ý–íö¨!AûŽÐb+mè£ÃúE5§Jб_54 Ñ¢,v,©Õ;ý|^׉I}&®‘•ZJaÈ õ¯èÏÜJªJý~[¿åžu·+VÑãë¨Ív×ì—”ˆpsAûdñÛ¹V§h§ì “ÁzÖ q,ÕÃEÏ•†–~kYyܤ¾d³m%†.î—C¡(y£µàufŸÂZË…ˆe—¶´owQ’6~V-©I$ýšàï”Å¢ª‹¡erß°¨„žšG®c¤Dþ‘:m=3{rúŸMmÊ:¦b"m×ÎÆb+½MMJÞ?Âcü¦9ÄýknS<­Y‹GÝ1è: ÃÄÒ‘,Uˆ–ʲ›µa‹l4«¬ÂÑpV›tmP'·r÷™”ãíöW(8êŒ "€UA‹®g.ªÔ<ËÔt¨+Û¤E"f‘JÓëêõ´ü¶¬ÖÑÏî˜å>ñïè…>á*ÁBÇ„‚YEnÃ(d• všqœ&6ç³eØÈþÐ[±c¥Ô0F«)àìs”¢î³fØ}?"ÙRU›¡X¹,6L¹CðÕ?±§­¬ÜÛêÆRúÄC®BC„¾]šH-¼­ÑËì7ÈÎØkŸ8 fÓ¢N¢wÈ\ŒášS6®¦v\³QÁª?9À+ߺýbïH*Y´V ¿.‰$GOHßâî,áœL^ì.GøÆ³ÒrÒþ8SËøb7x·%y–ƒf¶•eÙ‹ RVL޾ö¾«@jÔHz cîóà¬%(ÜÔ+^UèÈ:Yn1T ¼.ý=UB%–XCë€tÒ „CŠŒBëZ t¬R”ˆ­b"?`/ïwþH?c³•)löWeyèX±‰oZ^ãû+ÕËE¯BVážFŠž+œÇ3šd†5ænRóÕ{—çkÞö™µí3ÎÓ<çßÔ ±ÂÕ¡iREL¹¨Â戼LAq á¿é £¡)1zVcKÒÕü-¸»ý²8BÀY"òQ‰A”–uJ[¢Âd5- B@î3çèê¶­ûG9s­¹DÄÅ«6¡zÍH"Ž×…jW¸ï[O¡ÄÏ´sž_çíËþïûÿÊ:õÅzâñÎ"yOO)Ž~Ó/¿¿?§´ýÐÛ‡Ë5N5ˆZçmåêÊw1_\K—Àdô›Í3e²Ê—euFòÙÀÓÃ[Õª¦ÎÐ@d 9šÁy^øZyE´`ô•wס/“‰Fºf>£iëcÍÃEÁJÒªÕ0Õ£2º‹Ô›Ü 3‘•²°Íº¦¬µˆô<î+<»C øórü^j>Éjy-Öö:„MaÄ .O,Cdz*0¨}^á¾á°|O†WdçÍ%kûÎpSt4Ö) ð÷/¢VÊSþ5fÌÁoG¦Í²C%u¯š¸R†ßTÚ«lÙÕÈ–ºÁã'£æß˜­ O)õõõäª`Ö–ê'jó5éÒ¬S sOnžUŠrˆê·Ý±Ã¶'œÀù8*Þ•8X.©y9Ø%ñrÐîG`t¡‰ø¡ÎÂÇìØ–ìµO![±ÛµFC+6ì1ãjÇŽÍ ›& EW» œµÞÌ&®k_)'[[W&’3ÒZŰ™yŒ6*•4bTÓ+Pç<Üi«Ä |ׂšèóx´WQµ äTŒ KнQæ-BtügˆµóÉc飙š¦=vŒâq¦,û.Ó.PVFò]m+²{T7¢£æÄV>ïT:Ÿè`7°Î ÑqE¤ÅÆQ^+q’“¥¢-Y‰ˆôÂ"Žæ>+]N y¸ çÖÛDûzkgÒ Z Ô°iÍX jÃ-„ݲ¦Ð>'^q´ßí2êYF¹™Œ–@íÑ;‹x£‰j·2—KLm®xÍÖ9*WÐ[¹ê4Ã5Y  Æ]5Ãݘ7{µØh‹ýÓ€ºO†…ØÂÊÊÄ!G¬ë«‰‚X¥Ô7\^’©B2¸­léÚ-e@3ôÏì%ýîÿÉìi4!õÓ?m6Y¿U+Ù Wu'+Z&üØtéZÿk×ÓÛ­íZüÑíëŸW vo"ÑŸ²\â´E§««¤fûˆ Þd3ÊÔùûw§p½yÖâ‚éŽ.’tøºm©óh×Ê—Ñ Ÿ1ToÔ&T kÜõŠWjß—SÑô4x›Qœè!•V¹ù¡Ê!Ê?|º6á5De©ieKˆJþ²9ü®²‚ÂÍáÉFßx,AÚ·ªîÍós_([÷â¹@u–Â}ÐTHд[­ ô$1S œm:ì®Ϊ†+MÖ—5$© 4¼º¼ÙsöÙS¼¹j+ÜD½k3éq>†U_ N„hªE¬hî±þȵ­Ä`Þµ›Õ¡àYžßŒâ¥5»QK_ÛÚܹMz¢I_x˜ù©ÕXç÷Ì{×ë :â‡UM]¬ò’zèÀÄI\Ý6ë¿E¨Zuv/Ñz¬U á6“!Dšö¯}’ˆ!ë0vä¬RJÃ$À[””Ì@ú®RŽ•µë.U q³c}p3S7,Wr€ð´ÑY­_ˆù 4®’,"çè¡]O[#}ç´PÏFº¾Yi’ sºïy¡iL„y'‘Þ´²0Eñ[3Øê?9Dd¨· ŠÏ ”³úžîžÚ&]’;+Ñ@l¯[mN^~u`i ì *øô<9©4â2ÖS‰åÇŸk!´úT×ÏZWL¤©ŽRÚ-ÜÿijTc¸Ñ™Ð9˜?xÖ-Í{Û­“׋ä!K$ܽw¹&Þü§‘5ÊáßtƒY»e+.3Ù§n¤»F%Ê{Œ5iKó´U¥-òŒ~¾¾†–bè:n¾Âh®fÚ7lv);K‚„);b¥Ë~šÏHé{ÏËYŸUG{9¼¦Ì¸4"%•v½Ð"ßüáŸÞ,ؘIš‰µ˜þ¾¸c…ô’@¹Ýœ®PÈâxgä®r 1äÌ&w¸@U‡4E·^òÇ˰t”ÐQ[¬:Åe¡'75 )øÊ²“Bó ò1öÎ;Šñ÷^9{s˜ç_ºÔçÊõ™¬ýÓ>¢Ž>³yjØ•wILçE8¨ve–Ä®Â÷©Ëݽ{AµI~T˜ŸYðûÍÀδ-EsP È¢K¹H((B|-@w9…í® ŠKZ’¼Qðçi„b®ˆôŠ2QC·?Ó±yC¯ÃÙ¡ìŸp+} HŽÈ Î™ ½PLé¤Ã`Ï^ð[wŸ EqªÐNI#JvÀksä;òáÚgÓ(_c†ÛèÇÊYÍ3”[‘[UEÝ»=G†ˆÜ±ä<ÒÉ[Nïa‡öþ÷äƒö73¯5ÝÁyˆÜ}Qò=Ñ”uartbXwíc$G:ǯîdz®†€ë5]ðVb&Õ‰›v˜Ua¥m{]{Ú³*å]“…`AJc^‚E[¥)-†:sµÉ{LV”¬M­iˆˆçèúvRø_‘âá‰`ú‚¯*%ab#JÏpl2XµÅ3¬}¬…\¾#PJ®â {±æ$ÃV×ê\½•Ø9•­È9ì㤡/cíW$Š­ßI‘Yaͨijó4M x%‹y¬Žd4±ª^¡’êÞ¾„æB°šÎZ¨XU,}¬KG-­q]ª2Bƒô®» Ò[İus*zG—6’R"}ÕVÊÑòRÓb žó×5½¤qγzS¶×…´‡|¶írXfz,Êï×ç±õ„9#Q[¶¹«ViÞ¯£•ÚÞufCAj |ê€Ýu¯}Ö\&]×Ù*ÔTWV장 `Mjùúy¹ÚKŠjQ®ò‹´½ Z^•-DqÞ•-hBR/X‹Eozóåiç­ƒÃÔbèëh³àaðšÑ}Oã¨^þ^`ô¾@jÅ.K(ÅØ]¢u±44ë7 Þ ø×X!Tø~[ ž,uÝdÚ9wJÈö×F¾cw­Ùç#èôŸãâ›D.âl*Ø6mb¬¬`Ãn]Ar~5Ù>‹^–m–ÈAlîà*¼LZýªÏ±íN_ëO8¬tÌD{Lóÿ úóôTìZ¡½è&EÝ€4Þj6AäcvMXê§yp¿¢`µ¸©“‹—H&‹ï UæF[Ôp_c˜Ò¸Žq&°¢\tÔ +-s^½"çWG ù’‘yoléaåâ¼ÒBžÎ»)d¾btÜ«'X»K Í-X%-0>9àqàJñ´4ç ~Éù –Ä–‘}ZQôUÎB„@÷£v®°ssÌæƒÐO…áNáÖ!ÎáÜÅ0ŽAÕžµu„¤ŒÓTª 5ß²N‰Rx CbAMÃÜN¸¿9‚­d#zí]Œ×BÍÚ³uÒI”µË$Zí©1:0ZPLú¶ƒº ïð®3+Èœ&YRÆQÝzÓHУ¸>V‡YÝϲ/·nxhœâ³¡VSTNjðÿ˜­Fáâñ>á4ÒÉ ™-ƒzc(’bøä¯gÏØÖ6s€Q¥ß1Ö¹™ÓÙÔ›º¯«nBßšŠƒºCJ§NJ"Ý”×ikP\ýcq ŠÇ[e Ó]‹&ÐX øæ0»EVæ/.† ôUVê‘”qlíŽ"m… ÕŽo2 (¶Z‰]•L#¦LòEKòÉkR“Zh`7u'º"2¤Mü Š ZƒEJ^ƒh]=iÕÈËÉldÌ»1CSGMÑ„-é>î‹al1 —X#'¥([µ KV•! zÄD^ö·9ðüd¥°h³aÐÔâV›ÚªË•C¡2©=†È•ê>ƒa•AaJÝ&§b83%SŒE³Ê'ŸÏ L´.Y^Úµ¦ßܲqiQ´2Ý߇œÉݽ÷M`ì²üè\‚#"mT‘ ·)ˆÒôÏŠ tißµÔ á/öQ뇴ô»Rî†:à¿] ä¬2‰ä²•Y¨Á×;*˜„X%`B£üñ{¿òAû-—ËÏK4$šàAP&Õ¥,[ z’I ÇI¼ÇTÖ”¯>UOß üÛ¢ùNçF¡š ²Ñˆc†¾"L «T—êç¶Jý›Ð’/ øŒfâpâW+Œ6´‡`¥C0 à¥äzY.åQê%ÍBÞ1‚ÑÑW Q¹ò ’ÔQFª5ÜùDdÛg•‰Eݯ‘ä­mÜ,Ž>oYJîh ´Ø  ØEê"fiKhÍ¢Ãq¢çw¬´©wWv”hbŠ(»¥UÊ#VRÑdÆ ÛcæÖoœøóQ –²K€«]ÎìÐÀí+êþ ·¥*ÁØEsŒÕ´ˆ‰ò¬…z׫ºÎ8¥‡i´T›µÃÚ¼9«¥AÇŽSªƒ¯¤ï.›¥ÛmÕ6ž–Nª6¹yw  ô¥k‰`uÑqÐKã,ZôfÃib2'Íü„$JÄ=ZŠ0{8j Šå‘Ã@RZ¶`š‡‚ù-‰"¾QMH£_%Fߌ¨(¼y]º_ÐìR÷O´%ŠN²\¤ù¬B^Ó6¹-içkO½§Þyú×h‘Z@y¬­hµ-Üó–F×åKLÓò”Î>’E/=}=¥¬5ö…jÕ\c‹Ezî{@©N©šÅz­h¯TÚ±ùÌÇ×Óºí­¶Êø;È2úƒž i¯”;¬è]ZTĉkœ9¶R½âW*Me)‹kkR`Ó'39:´ §@²Qc©žrTI‰° ²ªƒeö4®21cÃJ#«TW[$·5AGd!é3a÷k¬.¡ª^\0Ó”Žu4ú½ T%-KלÇ:Ú9Z9Ç)iúÄÄÇÝ>»öµ>øŸ–ÑþÕgï¬ýßIû¦"Ñ1 U¥ªòcisºŽU¼´ÂaÝ…!ýªödq`Õüà›wkÎÔD¾J…O>´X! |HÓe• ì4G{+P·y‘ëvV]qË¥À Ò”Vµæ"+iµ§•kï33>Ñõ™û½\ßq/6¬LDOG?’&+íÎ)Ê'ëï÷Ï×ñƒ[ÃQ³"uÛñÞŒ‹ž!jhYõ¢ã†U7GeÌÄ"ëˆåÊ¿îÅÃ_ÈCawu–Í:Ž…r„¿ç”3§]ŠÁ»cr‚¸þ{­JEÃ=&çËûÝÿ’Úd¨ìig±Cˆ×¡3g£FN2P¢':‰qùuEóÞ´°É•¥·¥;/SÀ9YT³\ŠJ–À3í݇ËZÏ€Oë§@ºkHŸœÃ‹u‘µð+™JŸì"ëß]«!BûáµW¼AÆ2†ÝËVã!&–ŽÞyÙbXVáµâÄf÷ \¯Ùþ¥ª‹ ›vYû§îµY`]l7¤Üå‘­ÐNí$û”wˆˆèg¢[å_–,y÷¿éÛªß_VÔA’æ0KÔŒ­—g—\šõôöbf³f+k‹ª¶-Ô!ÊBØb×Ún²Ï} ÜÞvSL¡J3Y\"W°•Ú#'T•tedT¦ˆ^2J®…—BëöFJ[]‹0ú®°µ‚XPKY<ŠÛ3®·ŸŠM6h{\‘u–ªèƶÐÚÄE„’5ƒ<醪BµéX#,^¸æHAR;†½)Îå}þkÒ>hñü…¹„ =l2®aü¤x‹Œ”¼Z·¥¢-[ÄÄÄLz{c½šÛÌV¬¡˜Ä jzÊÈYi‚’ž/s³Ð~°®¨‚B·±Æy`2ÕËÄóC<ã´Õª²£wèÝ©¤°Ð¹H!³Ô¹üœÄÕÅ­®Ï*¯Iy¢®{/4] y}Éaa}š„Eb¬ò¬^kÐþ­vÈ%Xbì‡V¦™sEÙù@È`#+ Œ#‹}ÂiÎk¹¥ŒLùòvØÌª‰4ã+‚õ ­Þ’ Úñ$…m‹Jssl´£N³j}3õŠúçíÏü};Ź'`ú'‘_G8’;T U5“³zBA„5¢åX·=šë¼¯qcUŸCG5Fô]7_a4W3m¶;¥×¡ Nå¿M'¤t½ç•k3è³[€¬Œ×FW`è·nn» )b‘1Φ ˆ¹Çö€5ëÓ$šÛf³15Ÿi‰i‰‰úL}ñ?OBG5Fô7_e4W3m¶;˜µÁBË~šÏHékÏ*ÖgÖëâ:4ã4ºxwu[´$D£^B>‘+¡¦É¤TWi%›AÜ *׈'[2º<3©ý–Ü×â1Žt’ÿž'ƒü%t³Ç0Õ:TCzš!æ©ðo…Íæ\°.ÃÅ80E²ôøæËFz Œ¥zg‹ B\Lú½64¬l°Q⬿Š% B2SÂÈl°‚a&fbkgö(öšÎ=žÈ´~M"KÒ²)€ÅÛ%ªþ;ëh)n˜î¬H¿h–Ø`~ÅUªˆÂ±Uf‚d=u‚Š“<¿>_Þïü~ÚlÍ1w_š—§*cÖ&Ò¤˜·iuOM¹Z—¥®P«”¢¼Ü¼Håó{…˜PHˆNö¦/ãÒt.ÁÁ$ÈäÅødTñ[Å¿r²?5Z2æ„wj'´MS™q–”¥Æ½%Õµoø_Êé;–$‘z7éd¤ËËÕU¬f¬_ðÁ©ž"8ŸsÂrÁ†£¦ì‚æéC‹²½ÂÞf9Í ˜ðQªxUN¤…[¼ùéÉÀ…Òë°{6^D5e€ÖÌÏbÅ쪉µ˜4šd.;ªûRK ymÙ\f蕊Q¯îÙ€Á{µŽqÓËÓYÌV¶Bš[å­K~Ž.í JrÖ‡\“KvŽ1’#ª±êü<É”ðÝ£‹SAƒ\+™zÞ‹C Æ,ˆA!,Õª \œè[Q5È£ ÉÛ')‹ˆ‘òw¬Í Iåj󥧤” ¯ÒQ’•çÕ÷ú¦hÉѬɯY´Z´žUåKWæ‹|ÑÊbbcëÎ=y{I-¶õë5³º æd¥?a*¥…T¡Nk E K ¹nÐéÊ@žE¾ÎÆ?ŽU‚Ö¤›«ˉžÔÇ{¥Ž»–÷`Ñ1PÀ²V¶¦'¨óß#iëA תú÷1 ÖÒ];Ñ|³Mט"Ì3 ‹w·p3ö¸žö°3Òs5=°ã®ø1¦1“ …äa½–ì³.æ=šŽ}n`O‘4:ÓÄÛm*èa-¹¬ódIqÜ£¯ctضÆ{×¢ÄJíªKÙv "˜åj·eF…¡DlÍJ|ŠíhˆµW܉T ËPÜÕ…bž:ÎAK#¢Ý«h²’påÕÎ#K­vH9*£˜˜׃¶¨ÓZL;µKÇŽNõE×fR6¥¤æìD n¿[IðÙ,÷¹ƒ™:w¨µ\gÐ3G[Ù}ä]L´©ì0Œ©®M@8@ôÚŒUM…íØ5Ð9(^]ÁóÅýîÿÉæ6ÖÐrTÉÐ ©Ð¾†SFï“âôyÊ‘U/ŠSbogic6Cy¤{¾NÜ4x“X¡oSâ{|8­„ |Ô8wRø‡8e¯;ÛXLñ\ÈGzÌÆ}ý`pÖSqùí® ,Fœ¢t¸jÕËÚ¨è/œ‡ÀÓbÈ6R_ÿ€l­÷ö‘÷­#ÁGV‹ër¯s TFÈÛ¤}ɯÃ4h»'Çé™J°··:žÕå3þqŒÀ0î#´©Q³B ƒ¼M.;Òf·¥¢kjÌÄÄÄú¢©,ºk «¶º¡à]ìKôU¨ëÔKZöé¬u^Ö´ûÌúWq#Éò ±`Íe„ü¬­ ôw<œú±ˆÜ‚ë••AÔáÚ)ýDM½ÿßëô¾ï§¦7Ó–:V0¤I.Hå¢,i~¬ƒ•o{ÂE¤iR p!k±áÞˆDÉOÉflAf?Hºj`eŠÒ8¸º»dµEkRÖæ§Ò~o¯ÚVX(lÊŠ;5“«[6Éd%+#‚1f‡Okö§”Ÿ{M*g.*•„YªëvofF3©[Aï:%†‘ÇßÑm‡yÚ·!X)Ù?¨ûjÇ·¿¿¯Œ#ÔÍ—ÎoO³Vš#Ʀ „›7©%ib[íjŠ)S’ :¸Ðr²«u åºïJR oÝ·>à„ÇMg¢Ö­—d ar‚À*å”è L+ÄЃ%&jJZ&·¬ÌZ&'ÓNå`Þ® JQ3Ã,½áÁ¤ÕjEñ-vŽÈûaƒ’Z‚ AdÕ>>f6&HŇÍðÌÕnÎ>ã "ú$TwñCœ «I§Pü¦  ˜Mø1–¼<›Ó±Î…±µ”XÆCmR¶ºì™ª‡/JáíKùo2™L"]fÔ[g ºRŽ^óH©û•¹vÞhmä ®’6Q:ˆ„‚Œl1rYPtZfI&V·b`|Ÿ¦`>ÅÛ3È`²f[6|ʬºBwŒ·`e |Z¬¿bEz¨X•ôj˜T¹kI( íR.zÒݳŠÿZœùLþé6kq^õ±|FWº>I³LK !”ƒMý”Z(Far?g™Oo¢ÄŽ™«8[¢Ð;,Ü:„}ç¢2/'•ä Z7k¶4Ò§ 8+HÊÝß²0‹;†6lµøŒ¦ø´ê§nGÊë(FÍÁRÞÆ²ï®µr‡Ci»dí£p ÔB:N^Vu@Öb‰«¡¤c´Ë:G(Dß{íÚ:ëÖÀ"Òa¢º"»ùìö(˜Á^®QÊ=|]a-œS°¶_£ò\E[Ò…«–nw*»´ -¸~_*J—çËûÝÿ’Ì_ÿŒþ‰¿`oŠ8oˆ*Ž«‰¨£y»)üKÁçUc¸.¶žOMÚ`…º¬0 ”¶5¹&òKkx]ôV_Vî_àöÅX›0k¦ kæŠÓ>Ó¥WïbyZÞ¡¬Ç”ÐZg—y6ÀâÜ¢z-aZÑ[Ç8ꥹ^¿ëD¡:@£¯Ëo£ãks$DZHÚ7·ÊDõY Ç8°¦&}rïæñÊ똔‡øŠµåZˆcÓE{ã;5÷´ù9Y÷$þ›žüâ‰l¾Ò%¯J%Å@®`jr‰ðõà†Âz-iä*«¦Cÿy¯8X|'œë)5Åš<Øu˜ +Ãø°=VlÌ9~—KO:Z4íý?`•ž'á£×'{—M|«ÀâùûbO8[q.‡+ò´kÍV•ü–Ñ_´×ô7u=TLÜU¿*²½ék–YšE,A €sau y$/Ú¿”((Þ<ÞÚ%&e ³ŠŒKJËC¢º nãMÁíJö=én¹¬Î†n}Ÿø›Ö­`TyÓë«RmÙˆg€¡-ÝñhJ*F®vif µÃB#r¹¿%é~Š)e#š±—¥‘ì±[½ ÌÈ»ô“Õ2Ã#V\P߇sÙ‡] ÷µÊ (oØd-ƒØÞ”êßw¤-`ò(Žõ+1N^ÿXû¹z¹<üyf|zöq:ˆ¹ÂFî LÚ‘€V±@v~Cµ)*ØÕ_c?K«z³Ûêušv£îJ—`ö­SŽR]ÖÂANéÅÚÞ·úhýÊ NÃÑ§ŠªÁ­—Ðv]MÉÔ:œ,–Sìæ‰4èÓT— DZܹG¿¿¥¨.¨S.i¦éëÕʲ+Ç„´´QAYf"Ò"H¬DÀåƒx¸ÿ`/ïwþH?1þ0_ú&ýˆ“:röoÜŸ`˜»dåÔC4ŒŽŸn]bt>óÌSÎ}\™Üh{–ª:Ð<!­>X…¦ ¯‰ HŽsie x·ÞÇ¿µPâ´8OB÷½·­à›”[ÁÕ‹›B½SÊž‰íoö#×8÷‰üd] •Ë^’ÐÁ-Ù ‰¥ëþV‰Ws1· ­(ÃVUp˜Ô`ÂM2ê"3B!h˜AKØCç/¤xÝx½”P_ âÅÇ´³Ã&/r^V„ëg‡Z·ÄÇÑJ’ÈÛQ~äAãÐÌP¡-*Av­ÆAÞ"Ô ïYšÞ—¬Å«jÌÖÑ11<¿ÓsU,×u3õ<+Í[È*Í HNËÝ`\Î}¤jÄ·+ jËT[ªK^w¶ÆþsH¡¬@x&bix§Ja·ŒqÔ—º&·#–j€-¦˜ÜLt_uœ !¡µ¶¢*œåTÑF£¯ŸTr@Ý ´ÙUëyªŽVõ€oɯ!Ö¨:,(ÉaÞœ­RÕ÷¥¢ÑϪ=âyL}ܵô³Â5õ|²–‰1qTJPZ"9’‡c"™ @°jE-PÅí+‘çñêv6³žÅÊÃY÷›>‚— ù®œÁbª_¥ûV«0SÃ"T¿ŽE©i4ôÔÛ6ÏL&jýê/ ‘T1jX ‹>£tö¨1Єðëv~Òç›Yƒ÷,D¢ãI¦UºÈ«áªuùQA†>ÏÀÈL[ŠmK˜¤Ÿ”c§çËûÝÿ’ô{º Ò„½ eR­©/?"‘VãEi½n{VçIhäàµ+E:‹ fÆRD®cº]¼¯×ã;=iC¼,¦½rïª:ÕjæµÄš):«yHNWŠò]·-ù:'´O虪aöý.ºß©ñýõ¯4'ªÜ§û›w½E”68â'¸D˜UÓ÷ûqòšƒm»ÎñfgÞÇr¶…ìMXü¯‡<ž¯îþ°›½¿KÊøÝ8g·ÕνÍëän÷Ò.ÿ-1‹1òÞvÓg-Zž?IQê4:c¸Är¿Msô£XRçTv7£ „m 8±ø)¯†¬è5]xáÌÙÏÎ-ô‘‚㱞ÁÔâVƒO'½Å9°ïÀꢱt>'ÄPëƒãvKtÈðøÔW¨·³Þ”„Ç AåeR”•Çéc<¬eU“ñéqVÝeLÅ/Ï¡'IV·éšÚEI™9«KVö¯ZZ¶˜˜—þ¸ùn hU9Õá}qbbg”‘…ž%6j´Ïjå´Èé™è¯WW®!á Y ŒKK\W{ fÜÈ lcß]AW $JµŠÉº¤§žçWw¦‡55‹Ãœt¿ •­x´ü7jðÿd—É$7m¤KÌElè‹LÅyuLG¬õnÉsø…ð “È M.>ú÷hMíÆK+`ÓeA¶rLÖ õG¬¬-<,á³î؃ÄoˆrB’fzüpO4`3zršõÔ/ÍJZµ%ëIÒÅËáî1âÆñ¯Pë“…±) ®k6§sÄ;,8ˆîÔSÞB·~Ñ=Tþò—­Zâž ©3_ ó'5n|5¢ ÞOFÜÖc‘lÅr„bâ™äTÞ”â=üÝük:Ý3RÄwx—·ÂCñ9fö–ø\…øËØG᦯\é‹^¶œÃe^£åÜ·æOškö/6¡”n3&Ã=A`u$ãð;„…P̧w¹ ³‡Hàc!njÍ;"/x=¼ò^£‹’ËÏ‘@ºÍC É•ŒÕœt ö™`h]ó—»fÚk:Ì3‘ƒ0rÇ’6.‘ DŠ,¿m—‰]ü”™µ`¦½ K†oQ–GÞ=Æ.çnÕ_rñÓYôvsµ Ÿ—5±h‡f4Ì{|üp²fÐò«æ1I»d ¦Rœ”±ŠšÎý— T§˜½|†-2FXè¹M"ƒ±r½{t¯ìýîÿÉú5d¬h ìHëg8{ÄXT4U9£ë¾°ÖîXäÂ^ýz»½$b†¬»Â\;ª×E*m lL­ ¦”ŠAm…,Bߦ±Ã"¡Ä uÿCScJÚÚŸ3¬9§Fðæ|’‡,ƒñÛû@††|âíýÚ°"ŽõT09,ŠìfÅiÂE/6k§Û„ÓUk8áŽÑ¸hBÚ^_†sf™áýLÎ!•©k|âÛÊùcÞ`K”ŒZ=ç 6åý+»Žúì¤pP¤š–iߣ¨«¹^®kΦzf½3?£Êgð¡™Â°ëÑÃ@Nët¶C‘ ªÖˆ3œm-JŠþg!Ôu§+Òä+iÒv†[àçà‰I‹RnþGŒ’ãû»²Å„Ž>x?*r‹Ç/_û›ÖÑ÷«Å\!£æ­|;Ü4½môš ·3ôåË×àŽ~øü&âÇ?¿”ÐÜÿï帣ˆ?„;{þÓðóèkü@½b¬A/Ô7òMo«Ží­i˜­ t ‡ÆÿC=~âÅ05­‘kß%×Û˱^Båæ^É{¾õ-ÈHšõZÿ©—˜’c¥‡T\BW¤œû½BŠô’KÎdÖ'U3i$ÚfgÕ§ )Ö6<±­vôË”69óîS®ßžÿJÕ¬}ÕYÖKʾ˜62gÈiEh˜ *œ57DZ~ň('ýaO¬ƒk§å“ L;9Vò‹¤¼LŽK0~ˆ´ý‹`[ýaO£ëjpõ-¢Ôrm¤´5²nßÝ͸É}5n^Óv*KÌ{LÏ¢ð}p‘§ ˜r2å—oÎõ/rÄêǓݥKå÷¼®íjN÷]bÞƒÂÄÀ1n_Yb¿ªS¬äÇ)am"=m5ïÓbå")òDt{z®=øl2_§_«]h ’1´Mнå%i¥{Z"Ÿ/.^µ´òÑñžÝ”§TþS‡ò§99èeƒ= OGäôsô‹×›×9LÁÉøº¢§ILÓÓ Vºc¡9ȸiãâµ*H·2E­ïé•8g6sWlµ1Åçh»½"k^‰Ðm»±·!†F?yžžèq6Ó¼Z®R{zÃ5#*‡Ù¾Bi‰änþ´ û*ͧ±’äݶkÉŽíD1¶Æ]¸ƒHtŠüSŠX79ηë­Å]$¯ôør‰ÄG´WëÏ”~Þ_Þïü~ŘóÞß∞wjŒ:`Ö·9ÁíPª¢õ½$ì_«·‹tHêKŒZ\oø1s‡dÀ {9¼O—Ä– EE•5µbåÉX™è§p¶È3 ÐA• ï_zÜw¬Z–¬ýñjÌL—ú\)Á¿ ïÿiÓÙoâ>goÂøH;Ý¿Å'“ä~W”×פŸOúœ¿½ßù ý‹k jxЏU–ZÅкÕqKCƒ ›QÕ­úAbƒ¥d‘×#¯_Ù/5õgøïƒ°·¸}N‰ÐÝàÍP©®±å—'WíØéžV'oÅÿNÅ#×à‚ qˆÈÛÁâÈTÎdÌöQ¾/x6 Âä wer”}U™õø;¯‚r38Ëãy;Ù óžÝ“TGIß„¸èÐJXæzDZiNŸúCuñٸㅸçŒÂÛ'pþV6ƦHë,¹‡¾&íâ 2~¢@í_—µÛü+ü3/Œrxw0Y‡àBqv^’mæ|`£ÎuE‰©[ØÁÌ`Õ:b“¢µ‚œ–ýPÎGþ£ð‡\ê:§GñL¾Îÿf¦ò ç’Aݘû;S³qÂ×ë¥{±õø5á1ÊçÛ'‹x›ž^\èìõJ^>Šô•Ø Öd2z­nŽž»Öc•ý~ ÔÄï­ŽÆ7l›´ÃKg1TF¬”S`7_ÖZ—…êa‚,Rsÿ©‹ûÝÿ’ر¸“„x‹àœA‡S†Š¿SµÃúÊ1ýâºIˆ‘4´LÏCa¥ÍX™ˆŽº€ ?ñ&¿áahRªÇ ¯¾ö»*õDPFÄUèÅc·kó!+úÚ9ÒÿÜnpYlãðÿ ® î+Ñ–€j5_."•fתÍÄAžµ-Œ)îV±ëŒ8ñΠø]W…Ãøü1ñ3[Ñe—ßgP+“¹ˆ¨À!ÞœêuÒG~þÿ~žá¢'Åe »8\Sa\‚¤ÒÚ®å ‚ĵϩ€=\æ/?gâloÂòú…âxµ<\e!l® ȳ4ó™°Aµ&~óÔAÒ;Uû[™~ð@‘XÎÕ]›ñ-P j!ž2‰IÉb½vrÂçó{—í}p·p–Æö«‡.CSÄb4gïç1Oµ‡­’"ǃIX¯Š´º_jŽ¢­g…øû‰µxp–ÉKYò±þ$%R]• «™-®B¼b0Á¢Ë…Gäì uæóÔÅýîÿÉì™\HÒ}ݬ@¸¾[žCtñ…¡NÛuñÆz*ní=º˜mO¨æ“ïÿV—÷»ÿ$¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞˆ&GÛ¼±{ÄuRÿ,ŒU‰çKZ>µŸn|ý½ÿÄ+!1AQa@Pq‘ ¡±ð0Ñ`ÁápÿÚ?!ÿÈ?üž^Ý­åP”Oâ«+Ž¢¤ÿècÍÖLE_E‰Ù’i¡˜¨°*ž”‹0p†ò0ýÀÀÙY«_hR¡FC®–%ž_,_ðsÒP žÅS×7ç˜qF¨X®Û]%ˆ”ÒXðƒçî¿ê$ß=VÅžð„¼WØà6¦½K¯>JÍ“D6 ô5¦qKÌ8uU-zÕÚ#W©”q®e'‡œ1§Pèsw”ÐUç‰#{F¸¤µ •@º´ÉÉ<8xÏ0¦£AšÑš‡JKo{ÁU½÷_õW©yvªîz!ÁÕ+Àu‚£¥þÄf´ J Ýø³0¡&ÌO~Q¬Sòu‰·JÌEþ U{sSÀi¤ÿÐ"+/Êò”…ó#qÖäcZ«‘P/¥Å¼M2U/O)ö¸6¹†À¨žŒc.9þì›ç=þ¢Oõ\~nÕpîÔºž„ãì Çk“V¹n73îO_bÞ‹q›’Ð_ïÊudŠnU».’˜¦WQéûÚŠ* D4GD{¹[63ȱdþ¦ ræ P€z-y‚{VëÜǦ Ì„œ|OáÞ8w ¸ÛojmT!lEÖf—O¸JÙ×ÖádêÜ [Å«^YÉàí¯7BŒˆ* =de•qÏåüÕd20¯Idš -¸ÿE11ú©% F‹]š]s/u#NœtEžQÔ6àƒ¡×øHßvq`f’`fp„6 ^m9”2Ü-b0ªpÝ@›˜òFÖ¯HàºJ¥iüû ž `¬/ È3Ù)‘ÈÃ]¯e—EæuoÙ¿üý}/Ÿ×¥B‰¡3Õvþ&ÿÃù×c±“jÚ¤”xÀnRúÐ åÃA…3/¹KAU$f©L ÐU¦hy5'±¾ˆîØÏOíÔ§SG!Ï—åó>¡ŒÖ®çT¹“ "˃@ Oš½ê[«Ãýl°l…ÛRFÄ 5Æšµ¹Œ§S<Yoi6«Þ5ú~5Äé ¯AB)ãñ1([Šºä0eL fÂ*ÕšLË”‡¢ù¼WFqéd2·("_Q;y¿K^{/‰ÒÈ¢!¶ "Tüß‚dh*aÚ/x<v­¨Sä°ˆ«ísJ*<7M¯ö­-IþöµQŤ>ke)í€@´¾Ð'2R`ÒLdJázLœ´• É!Sš; SŽ›Žgé!Šaª.ÄÐŒ‡¦AŒ+;‰t6!wß7_M‚ùžY÷Eõ3ædïWØ‚œÀ;³< ÃÔ= hÌ Äª­I{g¤´*ÊüžãÐ/4]•ÚCÅ }æ~Œº`¦€ÙŸ3`à„;œÀâlóórŸ9BýYÒx’!›x ¾y¢ýŸÃ(Ý,Ù,µ’âŽ$Ùz&àŽ.…¾†…òùˆ‘*m€ÀúqŽº•3D%óó$44zºÖ¬«hˆªPXÄ[$OÓP>Åÿ˜C7TÞžÆxó;ÿİQb"UõSÓuIm¤lRBHP :©òb#_Ý"PS5ZÜWjò6¸˜,Ïð[(Ü5.ÙP€Ø5Ï3……ã¢y‡é[¢ä3_vÖm!ó~‰‰Ñ³Ï8®$‘Ç‘v¡e˜3Øà Ô"äÜÌÊbe5¥ÐMvñIò‚¼<ÖÀÿ£ôÀÙ¬'‹r Û¶E&”‰•(¼÷"ACX7{ÔÃŒýÊTãäÚùª«Â£lËø€¥²)Aï¤?‚iO´b¡™`N/#N‘„Õ3 î^¢±ü·áUßíEµíü+¸…ã¦Ü4ÔÓÖ –ÓOU›í-™¿18Œ©;‹ïüÖ€Lø=T9hþ>²+&«,qƒ.Ô8»x¡•SÜq;äÐÀØj ~h(öqrFɨ9Wfv§¬Ò󎑊¼žmž8&-2°îMoZlÑh£Ù¬õ «³a’2Æm*UÅø~M‘©%|¢XAÁ*c¿Ù›1ðT`á›E 53ÂßÒCŠKÆKj[iÑph÷m.lU” ®p² Ô²péTqÉ~10,äІŠD$ìÁ$¨v®!¤£¥±0á2¢8°$캥®W€Qçj }T¾)â8 ÕØX¨ùöpÓŽaߢ¾¯¢ É[»+ °b=4àû$~à‚¿Y W-‚¹ ñœ °èu²[ïQàFN0 jQÀ ê8[¤·(UÂ\™Dò[-ñaÉšÌ7OØ(µàhL ±/®‘b=Ñ-š¾C‡_tàîS*@źw$i_k\ýÄt~ån já—¾Š;ý;¡©•-œFÍïA` ,¨ "€¤heÀP(gP `-È÷G×éájdµ5~¢D,¶À j9ƒn®ù (8( \”k6”µc»!<`mÑP³QgAàÛíXglßà§Á37?ô%ÒžñÎ!Í7•& u"<ì0}9¼ºÓÜÇöã1QÀy€ÖNâ©w׉5s¸ ö¬Ü?‚ˆž8t’~{Г9㆙Ö+·„±KZôîs&Êá:Z8…Û,‚ü «c»‰p$¢Š•WV»æÄ£Ó0ûMPJb(5§ÕŒHCû¶MŠ…údÔÌ< Nó––‹¶sMÚ.!t_"XEÊ@Ø ¢.`ñ— ‚ މ¢=ž–0Ò?hE{ °±ômªçU5r¡Ÿì:¥Í ’JB"}/ùd,&7âoËJí¨“âÛg{Ê=ÜzBD}\í©ómÇŠ°€T<F ¬½zzœ”Å )þâ±Ð7²Ä,‘Þå¨Ô?Î9Ô)x[(|•ÈænN EWâbØ& ÎØiŒ%JÔ""ITc´+gR3Á÷1Ûó™ÙVÖÞe«|æ“—Ý{|¯o;S—‰È‰TÄA d"žú¨kV…³Ítñ¬½¡Ïv1N†l iN7kà…WŠã:†úS¾+Ìý×G¥ÈE*Z.´3zL"ý+Ôþ}E eO *Xñš5ô&ëJ&ö4ÆñÁZkÎj»ZCÑiA P²•®¸ÒFº6¨ýÆyTpœ«íœç¥õH’'WÏ‹‚—‹û!Ȍ¥öã•ÄBl¢p–ÛBâI{)µQMW… âùNÂ=TE%cp¡±Íó’Ìß²ÅU„9Pˆ²õÝa íÌM‰‰²Áòä܈‚H ¦TC‡ß/îG8Šw”äôîDÁ™É·àO>y´Çj"[ŠáO§é %i.“Ý.ë&€°:¢¿¸@IRÜ4îßò& _áeåV„M7KV®l‹¹~Ъ÷k·Á³X?«0ÝIÿ“˜"É—ûð#‰~‹™’@‡VÁŽóï[%vrGhU€Ú\il>hDÔ£’LýÏÒy‹ÁA Õ¤” º¯X;(¡)RCŒàGx? #¦ºXYßä¿Ù c|Ñ©‹Â/D%YKôÑýñeßÑcYÉ6ÜRáDR=LáEEÄ “Æœ`ÐÅŒ¶¾Þ€ü'ߣmWºÉs®dbó÷F5õH•|XwäƒÈë×^ñ·Fo¾®–/*U龈 aŠŠ®a„Žm¦¬*K´À‹'‹¢Ý%ñÿXO™Ó»KB^›3V¶hàÚÄçϪ äþ†‚ <‡{Ãóã6ÔÞ^„/¶E˜Ú‚¦‡°—>".Y–`áÈþ`=/ÜüÅx$-ÐYÅÆ‘j!Û9’ãnµš4”¡aQíwM+,$´‘&GyÍÔjYÜYq"Ñg“fÝPí[²ôáG4ðïUª¸ƒ‘¸yB…’È †f¯^1pŠ\õͿŸØÌªØLȬ[!<°ñIå§'ÎÕðµ{,íM½3›¶c¹ÃÊy¥6b].Ö´–$¥ÂNðeߋژ†}ÿ÷8*ÀĦÛ´ø+‡øƒtCÓ®‰ñÊ…çúóÂà æ²E÷üŠj¬,_´ƒõë®Y臄½.d­…›Ü"I æôtMfV ‘ "0ÖÀÐ]Œ¨dÒ-ê%¶%M·vØ€oÒ W æ5‘ߣΠ7¯îc²†mv¦‡ö#"$—m€¦¸äõÎÓp»|f‡©~ ë;îIµÞ‚ò# Ÿ˜R2#Á´zö?J÷¨t_–ÙYIÚíÙüZËD¿hHÿ™éÊ@ksxlGÞmy¢n'{ÖÇØŠÁd­ ‡+¦SÖs`E¤:»êƒ…j(ÍÔ‰üYÚ„5ä’ݵv1Ez4ßÏèP–ÈIdÒ¦çDV¤ñ¸€Òo ¯0ö,¼R¡ž”®B²L¢5«Ú$4‚C êÅe¡dð^.6b À,’B¦¨qV¥Qû†]‰@øBÔ ¹>ìÉ ˆ}[ð:‰ßáç>‚ÃD“ÁÞú¿éýä¤ä1­¨w ¥bû¡¹ÎZ{˜m„Ž‘+¬ã]›‡“–u!H>ßÛ˜Â"å ´Ò}»Ã@ÊËѲ&#1Ê›qÉvø™¦ HR|·–DÔg÷±ßû?˜?¤dÃø×¬d[J¢ÇM¨!öPmuÈ25^Б]ª\¨ òs6xœ –žQªß`øpj{åa¬ë¡´TÞ;ˆ‰’D·÷#~æíW kôu’˜ôLv>KD’¾•:çëWÛ)¤®?‘D,!Óp†–Å·@¾oÏD8ŒÖ};7\eCxß´ƒ<»ˆƒØÓþÀ”$: ;Cy[{Rª„QûZ…ÐëË[êZ÷ÛÄê Ðý­Gö §¡R\¹Ü%§Èà}bñBÿÛ°$…º¹r)¢‘6»«ÊãY34ûˆ˜¦¡7¥­¤úÑúµ†ƒç `6a¶‘vC$âò†x½4¶u òèU‹t¸ òQbC9ÿÅn÷ £Zdò´ÍÐÏ(ì!)©u„(gW³ÎòÁKɪp4*Ðõ.ŠÍFàŒª¹‰jÂ8 gùµ,}ä´sË:lÊÈî§Ý0]¨·W4Š˜‘™!)r-h3v@œREëR™ ÍèDКáI»yQ¥ˆM¹eó»Úà0ƒdðg)Ž :ðk’ñöµ-†~£/ªºM­éÂlÉõo³HBÆëÐãqÒ(ìZŠÎ>|E‚¤K” ,Ç—ª\[K'ˆy€ÖC(Íï™HÙ³`=vU|ó¿1{s2Q~?ÖãøŽ€7pš³Ñ†7Xs‚ÈD)üÁgŸÿäù /=›°ÏoV¥Q¬}¤7+é­»G€Ã*<(ȼryOÌnî^›…ò6¸K[·o´p$¥a7ИfÀã¦Ïø¬‘}RRAráHܪ—+ž£~²ý”ÅÚ_Hà å°#ËK¾ «Ðk.Ñ‹~ Åeñ¦ØZ ¶¦Mtm|ËBú˜ vYŽ@¡Ó@WÎñù„4N‹pÙµ š0#•×Qß}…ZÈûä™ËJÁ×å³­“|Y*X¾Ü0W) )`4ü3ÛAÜJÛÅ9¨âF¥šžæYª.FŠûºá áEtˆZqWë=³™ÅòýÝÿëèG ¤§(^4€ÿ Í)s_) "z* "ó+-ÇZÜÜš ©hÒ4éÎX…PÏ6ƒ‘Ce!Á£!Ž«=b·d"ôX‰ÈL¤˜ VžWdOÎÿ!Ê ?ðDqëϯ·BU,ž¿elNùó£1ÔŽ€l z¹©Ú×þóS¹}¨MVN"²cn¥ÿm\ P¶:>­ç_ðÖ-)Rð!¥³ÀÖÔö»±´”>é\²(Ǧ¢2¸¸8¨(siV/NÅ)rº–n¦ÈÅÉP‹Ð8xq¦"×b‚Ì»Ï69<‹ÌCÍ ä2(W"ˆÅ>yèÏÐ /ÿWÿÖô äƒ~Œ1žM¹p!ÜÅ× ®Z5/ÃÊ'ñKÄ™7:»°«»5 ]°‰&Òd^U¹ìD¶ŽGYãøÅJº© Њ½{Ê¥%˜¼¸¶¼üu0„B¨†@a«âƒ|®;¦‰ B6º¢›r˜WÇJ»ë±»Ò£U*×iܳüv j“Yë»§¨j-&}™D‘wKñÄ näRÀñjƒò“$!Šã ×7ìÜëú]Ada6LèÔMÀ x‚ÍSœweq W[×qô+ifÀiÌo!AUíª`¦U!º1@"X•¼q#AC1 RóÅÑ,¢ ‚C®nEºÙõu»Û.)¸N ®H ¹š”Iú2¯!£õm:ಠ¿/Ö}üÓ ÒKú#:a;OÝÿÐÀ©'lÆ`¨¢*¨²Õ>Žª0‚ ˜žyõf¹Ù_éu£cÕØj(SH$ØÞ/ÆœIÕ hs©ý¡³ñ»2ûvÆè§]7™ÐN©´‡2¼Íð®ù ÍUDqÇ_ŠÒn²n2þu!ªÐOßhÆ„}j4Žf¨`¢7„‚T–ߢ"”Ÿˆ¸3ô׊pcrù;ÚÇ¥ûŠ ¬šA?>e¤Ü…voüp}"n‡9ðÿŸ«ÞBtOD<ê<ØZ|Ÿá89²çeݽKzu: ÀX€Ì©š'­1>€ +J`Ž Ù6¹I€°Ò[…5‰ï6’v‚Ž»ŠV WÄÆ^xDâ7[¥é=¿†›Ì`d‰!шÊ+„c’; çÛe<³]º¡´D ßð½°Žg¸7ÅJu=Õ¯ÏYÄ9cºÓÆd™‚io,r©——¾žªI%C»õת™¦^ƒž®•Ο“H•¶婳%%x¯Ê7BØ[7aAGF0ó@2ör‰$dc[rœB¿Ã“³³ íaç/×ggü3dž âQ‘ªY®YfÈ–×>¾ â¸â›zr… ë*k‚I¡<ž¦Ç¥[ú~"¬k$;Ù¢-HäMÌBP áznÃ…' ‘‰Ýxœ¶¿/Cz”ëà Aƒç¦‚€˜Þªfô¦Ä@1¤r©u5SĤø‰ŒGa…Ð_û'ðp5¥ƒ>Ä™ÓjpÚM)(^A¹SvW^PáBmá 8Ôý™4Ta:”4qü‹%  Ò£Ð„§ó±’†»<‰Æ½cÁãsjÐ@dUL¿­œÕK¥ŒÐžoYìÝ“1Ä7Xz®gÅXW¨ l ·ÍÌ÷¥$ŒŸa¯fÚ7C·~›F+o|Ýí¤,ƒK§rî „{‘¬ ¥ÓYì]ŒšS˜>ÅkÅ“•ÛQ¸aÆLaª·[ñ<õÌ'æÂzŒê [³‹†,‡ÃaMQó“£þ$I –þ˜ã½W°‰ZG^k冥E1€Õm(bÒÀ¡ O×É8®bLNØF ˜¢©“¤È•MÊ™å…V¿šáz‰ ÑÉà³äQ1ZªâþÓhÁ9lîžötP„T‘”_0ÍPš,³cÒHKip‰Œøy¸>œPzVÓä Ë’ŸÔ.[´§v# ݧ3 ›2” ö´ŽkcÀ?ô22%°?ÝMz!êúØxH#BA ¸µ•3¡_%Kß;;Šwè…ýJ ²!¨Úİ<ô À¾wçlT!áSl¯1v×&­’ÜiõtÄ9º_ ÎzXõÀ–n³: £É ì“Äü(÷s,¯&¨½ !\¤œ»‹Åèþ؇¨f£&mT’Ÿi·'+n§rEâ[i&’ïIºïR4Å⫇K.a®ú‘¤íÇ£ì?„æò‡3 ˆ/¯¹: ®V÷1À6^ˆ{ЊJr+|¥Í]t¯ÔÅX’ä; ù—$ˆ Ft¬‹Üp¥J¢ßõ 6Ÿhõ›ëƇ7p­ <'ÐK.] Cñ ´§…cokV[<Ôõ¾³ôAŽcê ;FT_Y«þ`ÎäÇ îÖ` ÏÄS1Ä&‚!—®&v:¬ÎØ»BöÌš\U‚*Èu  JAÿ/ÒMžPo¡›µ*€¡0)YMW ƒèæ’”Wî+˜µqÛét * rrÇ -®;öJOÍQIŠMž#ÇŠâ«„ÒøYøJ¥Æ :0=¿ò6ÿDm,{L²¯8aû–™V§îßE7¼#s¨ÊZ†:ÐÒvëI—ù«Ö²ÇÆqPÕYa`í H“–XwñR…#ý6YË’HëÎÔ† s²‰Q Ï%á_ir­4¦®U¡*îÄ­¾7êpî)6ˆ“æ8!bà»e7µðDo)Ï«MI^Z¾/L°™c«Âk`¤uŨ‡}¦uþV;ÏU4äíày˜sh}Ž?~DV ´þEY šža²o†ÙH ¾d¥Ü/ÜbøNÕ‚Ø.[rÅó=+^ôɾݘ Ë r°àiBò2acÚgïú7´Sedä*l|H½ôä(ø”j »oKuª€enÀÜå+VÌN)¸R¡Î@Lá H˜JRÀnš°]XB<b.ë”qŒåæƒ'Xt—­·Šò.1’ûO+ÆDPÊlÇæÏS †_ ÎNŽÅŽú¨Vî FÖBŒ¡<6áš{+hØO$fA™xq}ôñ]E†‚')q‡öO¦Ù5qY{Eµ³›¾È#ÊïX "t#Eèä h… ½Ú‹[5$š6®ù7¯·UŸÜ8Íøà°5b'Hì["{«ê-:Së„ï]ƒµÉvCŒ5šœÂ3ÖÌ{°á"TºYÆà>« ²Â¸eÝȇ ³ÌÍMz!êú±±™k¥i™zLú![úlPÓ¶Z)Uš¤Ù"µšaÈú†‚‡!|€€Çµ×﹓ó¸+ç ®ù]‡E®àˆ%$ÚA`RÍBßFïʺ£ÊÍn–V¡*Y]3´âI‰?ß1ý@aƒ5Hvq/--·ž¯x4eéCˆd2˜·´XFCV¸¹¡¯Z·^…!¨cUAÍðì„ ˜óÉ0qÔ/(²%EH¡1S"æè<÷œ7„ºz/¬lÚÆH|¸?¸ë2:„®hîP‡·•ï²–Ú“P#D¢¥.õxž¹ÉB !§Z‡„-ðØÿ¿Ûˆ“]cKAd{<ÌײÜ{—ÂäùOì´MåÂŽúÅœšVw*䬒gsèa.]Âñ,TÊFÙÚ£m1ã¹—Ôw 2 ¤Ä¤kÁý{D^|Û»÷Órm>F|R„^„®DØc–J¬#./H~ FùÕà!BÕÆ^”%ÃŒEFÁUTHŸOæ éÞ A¤kÿ4“aà0›YrÌ$|ÀˆÀŸþÒ?ïC‘y´j ¹‹SäîB¬ûŒ)lêtðÃS’G‚ ÂY¼Ë8 è72qb¡a[ùñ4ý=²¥ô Ê‚½fér!TÀ ¿”‰$Jz°tÛÒ"(xðÛŠçÌ=0ƒm ¾#òÕñÌF@Ô°êÐgÒ3¡«ß~M1ho!$Ÿ:é¿ÜK +¯$@¤QÅ>îÕ©M’(®Cˆ(”ô~åyÌvtÀGɈ#ôÊ&”†ãƒ±ã˜qžŸÚ­“K¸Ûïÿ…fážøS‡é%¹Â޲1¾5lj}OTÚl‚Í¢‚ʱÿ~e7EœœÐ¾ë¡U¸–»Hl‹Óë†ÔãXúrúªW;3dÆØ‘bC²™Š®kÙ¬T°N1Fz1j(8P/Õ} U‰‰V1‹èɹž¯î¸ü\¸ [½:ÛÚ—;R%¾Ã” AXìøËêÂ4´òŠ‚[r0f/§#]fÐŽö ) ù%v°â~úm>:€œ…Άùú¦àÌSöÉg÷+Y.\R‚H®bõb»úŽå úUq6}>ØQòÏ3V+;7‘?³ËšÜN"Ýî\°ÕCÕ¨q´Ág"óžeâŠ4W[_K²xZ…Yj­ ÂMÉvŽŸÇ²w p[ÐI”k®YË)Ä#+°àþ&=¹vÅ­Ö*&B Õ8 P ì͹'m…«ó/±Ûb×Å·i0ãÁ*ë7wNnûRˆèX0p,q Ag…¢*€OA!‡ìjs{9Õˆ¿uWMÞÆý~>ª*«@ãõfœà' F×ÚÍüŒÛÇ.¼RPœ[ˆo¢+?ƒGbH´]€7j†DµÍ1ÔÏÒ¥¨^nÜÊ»ë|‘IØ@ÇÍHVÞ×WøæIäèÉé9*Õ ±@°‰Š…uôâ `Cî«»À9E¬o·]db¿ºy–œОüwRÕ/~]ªHPj³ãíöLÉH”Rû´‘X!ú`7¹…j ­>ÓüÖµ¼Þ³glˆ¯!Áè èìbÙê/i…9ž…ˆ"6#¢&"pú©e=*+An’×Akå’€ôæe&© €†ó~̨Á2æjꎨÎ(ò@D®S· “BY]R@A”œ'U! + $RºDP;ÊNO!¦?‹õËbÝ£‚d•­kz]ÐÂóYíUMê§'úK÷Õ»˜”ŽKL? ™RùDÌ2¡æ%Ê@þ õSú7ÔÕÿ?¾wª-ˆK€XmdŸÿÇåp£ô˜¥–+ᜦqo!࢈%}©D)˜_4 áDÄô«M¢ûºÊ£E5:®µø} ?Wßì:̪ E À9*“aV`ìxW&ƒÕ ¢HwºÕNP8Num#˜õœàGôŸ?%Ki?¢úÕ\¸Nê´ˆ˜ŽÎgãݱ…pÁ½#.h[°—w½7ú¥÷BPµbŒ¡cj ôa9S"ÿƒÝÆ[×7£9ФU¯Î^ÂìÏj9&ÁCYì] ©—<Ã…ÁhtV Uºx$'ÒÜn®ýV“““{®×Ó¿Žá´©ÚdÒ#øÔÔ¤ëÈX*!Œ«½Å…‚¤hJÇ=JI| ТÜç‹}VmöÊÇôWªM å›NKQÆÝà•0|)ÑLkAÝÄ.J…Ë­8Ìb›µh@X1@¸ˆžÌöé°ÝþÑÒ1£ۗo”î ODUb¸ÃGiUÊë@æBaºxD|%z× ¥, .E†Ä±o“«TÅЮ ­ÝpJÜ&j­¡q‰òr@ß«»3ÜÄ(ít¨zÚLù+u)G‚s=EB¥Ëëÿ ˆ‚%#¢<‰ØÆ¯0ƒK#m•zŸbꔿ­$ë!ªP—dpåœ IoðJñóø¥;¥´(jzˆámÐ0qý¡Q£ÒÁ €2¾ TE#R Þ @¹övêÖNsVâ¹yÂîbÃKbÆ*JNäÖéŒ+²¿àZô:Æq>}›8Lø¨¼gÔ®@  8¸ÿ°§D­4¾ò#RŠÙ{ ]„lVsõ§(]¡ûÿ"_Wý…Ê"JêX2Æ<™POmPºÇU|h|Æ'~B]<ÇPÙvì¢é§{¦Ï²m3 ãú³Èw.ªV3*ÎÃÒ¸¸¤¸È@ÙàX‚4…§Þw&ýyb/Û2„u¬úÃ÷Á@­ÍQÂ)ÕÀôÖsqÁÈB:ï€@ˆäf4E|bv#'%â^HÒµÂ\4ì‹C¾2 9spÓX0ÀÀ°¡ÏvoÏ2zúóÁ0J@įh»ÜMa[P@B!‹èƒ’,³|À§X,‚¨³ÉÄ´¬~·e¸ã;8=püLfŠ[Pv ·á)"ˆ$.ä1Ńi²` N ?܆ÿ}ïô8D`W…ЯME •¶ÎV'qá)J„¤3<’¡É$ö& HP€4gÜ•QÊÊã‡~–È!)XG¹Â.èá4PY<¬~ár»µGiÇ”™QΓVÐ≮9/“PâB 1únäAt×)„?6™Ì\øMó@b2F‘X@Ú''Y m2ŽF ìãì ήÁ”¨pø"t hhF„¡Ï»jÍ“8u D/#ĆïuÆ&i@ñ~nOÓ™¤Š…(éOÂiÏü ÿ  Ä’s„„°ÂŠ«VÎÚÊÛAPeC {æ}ö/•_³qìðܽóÇ Êª.Þ“ðsù>ëMeLý½ø¾nÇHÕ‹‚gžR ¸ ³W´+¤éU¡ŒÁí›ÊRØAîä•^ع­ô‹p`0þB¸Ü@»ëüS½{*t¼Bûø;x„QZžÏŒ)áñ•î Æ—_B .Ç£J¨s@a¹ |ĵˆâžÛH¨å^±­ê RuÊ%3ª¶ÜXÁz/ìa}Дm‚ÎÁéM±dYÎHÚq‚c¨*:Ì)@YŒá”A6›¹ 8TØÀ( Χ— A 4)&ÜE⊖10ž RŽMpB AËÀ±íc9ÚžŒ°²E¨ª&ƒqá×A$„ì¯Wô€ËI:FPB!½0E0ô\`¢pÙ8B"º5“* Hß.¿÷æçý^<˜¨ G°ÎŠNøäHLÄW¼DG‚•:¿Up•#@H1Á{£áN¢Ifô¬ ] §y{fA60«X|¬šf. BìKâp4o:6­ˆf§ }‰Q¡ÚÔ¥q)"4MgÉ´ÞT¤žiöqéE›ô ÃApUãÝ7† i$ªäqSq(.§qG~Ør´µ93¼<eŒ•×Ts4*®’Á.6Ó‰©úFèEi#FòDƒwó±_W‹À¢Gq<˜­O_ž …ãP¸PZ£áxÉ‚4 ÑS‚Y ¢ÖÃc«J‚ÊPX”Íò @Eb€¤2©âkt¤vª8 ÛRÊ;ï;H†Í3ã± b@H²À3$•{ˆˆ–œñ B«nÀŒÄ]tÞÓ!„éZ‚+× †˜<¨¬ŠÊŠR #Z„ÃÇÉ߯òþ'vqxD¸Å%EÂêÒß ˆ‘7b¥pð?VaD8žÅ…€C± _ÔŽã° !«¢Õnõzôâ !£BýÊáqî.Uþ¨a³ž!4„+5Z©Â´Ûà^©\ê<çÉ-`žØR]>/ð€ö„þNIøPRkU@Ðá㘠_m%BäB²‚±XºAh (Ñ”×  (ìˆUæÁ‡A`¡îŒ”€04W0ÒêØ"…”&†‚«!¡Y`*¶ '„Yˆ€¬’„¡naF<*'žUұZ@‹ ¨EU·»bàf“^¹….2Ô'‘°Pbœ®D‘h$ AÃ,Y‰0¦ÑFÝ U zTJІÕ3¼Öê¥Û‘JB"ðA\¡ ßÎS †¤/iˆ[Á&£™O&„#€˜tð·«B®*1•ÁLƒX†‰CQ8™©"‘V ‘#†¢•¢p’bn˜UP®ª?@D«R*V¢f4…=XšŠÎB¥(‚@%ÌZJä”i¬M)Ðw‘ ÀÐEX¶QÁ®,ÌÈ@ÅQ¶ Àb€R.éË+\½}ü>^t ž\SM&‰ÆZ;©h‰!Ö>\Æ p QJ¥ƒÙ,O¬ÔâFHT„PPµ®ñ=¬~ª§@L q!€HS9à¢ZcÂÞ° }0uš)„§¿«NŽ„b…ãJIZ½h¦t¶ [h¡Et'l"µHnçaðo(©E ˜ ¹ª”Žj–ª‡D§¶ñ*„î³ ªø—n}< ûhÙA¨P:¼•<Åźb²ø]ƒÅu¢¥ð"™"2!º•Q(r5¬ªtu½k¬)Z¡Ú ™”Nd¦JŒ¢ë­ÀT Ò€§ÉQè6(P„<ý8Ê ˜MÞ…"¡ Ôˆ‡–%!¿T ½Å„Ð`€(ùA ‹:G‘) KOe.” á¡ˆàt %ƒlÅ¢R… ,i.—aZJè2o$ð<]ÓØ œ}!$iÅ&)Ël’bN®ùhR«ò|{Î!Bìÿç’ñËD¤¡?aZÐNâP%¬¬oJ‹°£¢Àiî¯(‰Ž°K@ÄA_[ y•(K×} RÞlH‘‚A3Àò¢aEjPòÃ<…²˜v°€ªâ nLE€JKÕ  ˜âÅ„J”€ìÙFЂPÒF_ ˆÑ¥¦Óq{'øã&ãÌá„3QîC¨ e(ˆ"y\؃…ÚS”xÞ´üÅt¦é8 "J"4މ6I€ Á–p=¶š»´„²iôW†Òˆv@P–¤«À£äå¸h¡Þ(Lÿlù>Ào#j6:ǵ ;>é\`Ð6^€â³™|­…’ƒ"V …d1d_”¡^£® ÁË_s`–€)‘4ðR¤@,C'`:*XMAVU J¨hÎ`ª ©5AÂÊç¤aµö¬¡hSJ=hźC¤¸¢âÂ=‘ YÊ)e €i3†X Ý^†( ê‘xÙbõv&€`:à>©@ä- v0]gF ‰ ª zFzU Ú°ׂ,Kf *"¨‡§õT°0¨jT8LÕ$r• J>²©cØÏ12øNùØ­¶Â&@àÕ¾Ä (1ì™Æs›xhÎŽAÄÌP¼“ÔÄ%å¹… ç»‹oº¹)§P% 1 N CË>æ”…€€ªŒàä.Ò+qB* {{Ñâ]Ôe´bY"‚PL@*À"1)!A( ÅÂaÐb âØ´ 67jì¨ r²:R_›Ò¤L>8 B:°«Å@"0ÁP‚„ F¹¢œ-R7( Ü‹Ùu”\ä¹jy„útK¶8Hýg€`Þªc EHè¸êÝàbÀ4Q” Ç¦I°xÁ(ÈT[ÜbÐ$tކl%€Áñ& å%\5š7;ï^E £ôbðA!‡WEâõh 5ÄS ʧÀddJ €y0èà ŠÔP‘©´V‚Š¡DDDo²þØ' BÏ5;f‹Kò€Z]A(ˆøc}¨ T&˜™î•¸NŸ\ò ½TI<ÁWÔ„sKjèÏ.¾3_å·_9‡(&ñîêèÈ´Ð0ÿ,/2£§ ¥S@C±(Hˆ,gÕD"Š'¤y&Õ;? âÙ”À;;¡Y&@§\0[ UQÌm)¦²  FS~so)…t ®‚Ø„ Sû”`jAB3ƒbƒLSVèPGŠQl”{â~ã^>@  ¤J€*J l @ÞéC j ‹ÚqERÕ< íI’ÉHãÀ0ÂÁ¡ê§„à’{¢wº:»ã ±‚D7H!6”/$ÝÀVQƒƒMÍË–,-´p•ÆtÀÅ 4*2}€œèت‰*±Q_¬$(šž(DxFa )Iª‰"€Ü],†^HV~ÐRàÍ„z DíL†"$V¾B@ƒ0ÀI¨¡(†¼]ð{ùþþ÷êóÉ÷B„⪹OB(•¤DÚ“ð2g C²<¶\xÉXvÅ LGpQbÒ.(«hFÑA ”¢(è Â+AÔÁ߈aE#K$0£*n%TX±(‚ÚŠ’Rô݃zÒû{~Rð ”™¸tGØ'u9ä b.д¤˜(Ø„hŠ'MMŽtòØW ¨ÛªaR5àA‚:ô+w #4@jð DÅ„TR†,t€U¢ ¯$ªM:bà‚ªÄ(ŽèÒõ„Âo‘x] M¦]]€2 ­¯2³"0TE€h…ê/¦·ËÜý—Lh-@ª˜tQ ‚k]‹!;ËÌu«FÞ [Ó±/Kåý䲿Éñã¦|ðƒÿ¥¿c5 — H‰5d#)ÍÌ‚‚^Р,v‰0.ˆˆŒF´obux=£à©Lh( Ô&¤›5?ä jÒ;¬  /™ÈÄÙ†äô -º‹°,Ò=cxB"Ä1` S]Þ%zVÀìR»tóç^ýð|* ‚ˆ-F­"È­f$PèÊK°â1Å1”R!bX¦€Jc¦¨¨ Ó§ˆÙ €«Šà믲Âû÷÷¯Ï6!9å+–~}ùâÝÓÒH €„Ä É8E#À5Q›?/C“ÒXI€€4ƒ -yvÐ2€he—‘º*–î—¡%ã¡zp¢"áºìJ£±Å(—¢b¶¦‚! :å5 ËQÕƒXª’,N¯AD”pžÇaN‘¼*º·\q"…vsHA¿ }vH ƒXÁÞ!5:x$¢Š˜~ÌJ¤}ŸÏýp">Ÿ÷Í&9BS@¬HŸ¿ ‚ΈQéWñȪ¬Â¬³OvþÜêu jJHGã¹W^ÒœWÅ6òHW†ì¥îCÅJ„ö5!òàÆBø”i>Œ¢R7ÓÏâº@d¤d‚@©˜ž÷3‹u {D˜>|žú8¨€Š(TÆ÷sÃëÚù1†b€¥PØ"RDZÙ¹‡x ¦(—c ’5 ý™ VòócÕžˆ"Êö£†BÎðãCâ5'©*:‚ÂR&Q¸íYUp'í¸§.IR?Y⦠â›ï9xà­D/–æ¶ÜYÀ‰ >JÀíÛèó5Zá#¿ R¡o„RÄš½˜Vºçkû莌}S×ǧÔúacùÓAÔÝYAÊ‹¤Œ.ŽiéÊÏc#Û‚ñ¡«èvÁ¹w?Ó%StaI&PyHò¶ˆBáÉ!Ñ1W×ZÀ$pZÌ’ÞÐ#›Ñƒ;RäÂLKÌñ‹$vŽ2“¸ XYHçðBuÿ!/­ 7¾ñ¦® ¹@ág„šIP&"_ßIÇ©$|ЫڳªÙÀ‘¯$“øO;·Æp‚D ÓÛã·üý‡]r‘BsyÑÑ«‡ŠQHFZ¹Ä9{<ƒ®µ·Vœp7‚Ý4„ )8 ê b¡ØX˜!Ø‚5÷tlý.–û£™æ_.YF2EP¥a¿sð!¿‘(²pµ @¦Ûw™QBqˆ$-ÏúB$’7"pßà%]ÎaFeö?¾§Ë"ÛЃ#·ÿÄ(!1AQ0a@q‘ð ¡±ñPÑÿÚ?üç g°_|ó“*ÚƒýÏÙþÿøŸÚ>in>‚±+È×ö™V5H¨QEL IЩ¦ArÀ’"epœyƒWVN[¡ f Èj)ºbaH¥~BF<EÏŠØ ]<ÀxB›ú·µ˜“ùÿŒžDöÄW€Ùp!ªªné1”½IH ­0ƒj½Š€ 8B4ub£ª"Öw{*Bf’λxpG³¸ÚÚJ':Šþ@Îî Ÿ“е'àð¬â+ ×sÖr‚Ñ P ù,8øãŸœåA˜h…¤íR’8!8¾’Ãê¸EŽTõ)¢Bƒ¸]‘ømê¨UÀUø?FFH£˜ˆý$ÿ zM”öU ?\"Q£¢xŸ|ðf¼|<žUe3,eªD_àAÄ@Aˆ&ü€žˆ&‡î–¾W£«kzª%¥«FÀú5ÆØ* G÷X/W[-^¥øB«*¿ÃC‚ÐPW¡º…G/ÖPi¢(& *F7¹ Þ X¯†It^ÀjDh`7h´$"¤¾EjZ¦ŒÂ°S,ø³×x$ã8´¤™J\®ÀT=‡Á'àì¡@ù Ù<>Oûg¼Àd“t»j³VNZȪ ‚BB‹é NLewÌ(<Št@’I¸Bp.qá5> !¤A:[á8Žh £€XBbˆ34#*WQÈ`åÀoÖÂZ‡î²%IéÇÙþ§N> vKjèRР €°™øêÕ(3N••Ëx[Vât|É=–ÝèG2«ñ~<Tx @ò¸\¶ºT­]5 ºÌ¾MA ñž›-›Vw€<}šIJ×T T)ÃB\"Á ï×[P! v~a™þR}&µzoõZIvšAˆ÷@G¦“2‘öéIêÁLd£Ø#X•YPL²Z‘5Â'ù\€k†QK…t „˜”òÑ)s@õu y˜¦¥ys©oæ¢ ÎJ‚¥²á3õ¦‘Þûþ³ÿßzM­¤•L5œ:Ô¤Bð™0*–é%†²P¨¿Ñ'ÉG¬¦"áõžBÌÕœEw6[ÐÃìÉpRRÈÅÛ­öâ™×Q¢¼Hä° ´«aÕ=Š¢ŠR|¶ ª ßŒ|G aè#M(¿Ã$yôð)¼•DZ ÂQìANÂE$(m+•îˆkø€dN…U~V!ãÖ¶ÓÊX¬uB ÉiIÄyvÈŽ0É„µlx}ª ÔC•¶© ªK'OuêØÇÛH`‡Lƒ(¦e=*£¹‹’°AQâ®Ä]*Ãï:TJè.Õa ñ—gŠf¿æy"j"@O+ñN0þÀZÏ(?”X»Kr"ü”apYßQUj“PRU_dàТœi‚ 9*jÆ($sʼó’ 7Cò©¤O³ Vc\ôJˆW.u®Å0«eÓ·15=5+O3$Ø.BHš¤¢ÔôÜ縋‚‚œÍx ¬2@YÅ>³ôK̘ê.W=§Ç`& ˧ Ú˜â„àH:™æ*bÉa¹ÿ=í rK¨—HB©sV,¤ôEkQÙŠS<8:DuùâÏìJÀ4B1d#“i ƒ¦ ‰{аž9 {ôï°ùßV=x~¶j"y(Ôi™vûa! /ÒX·WgB„JÏ%_H²p-TyÈLšŠ“\!<{Y„/áYjàÁ²D6ˆUøì}½‚ðØF œÀ€bQ—`ðÛuW€¾€üœ$â[c Ý âÔÏ„Ð.ñOòp3$ªpÄZ¿¢97ñµd! PA/$ëŽ#%@@K* ?ø…¶Ó$Y t°…&Ú %×Û$ÃW-pS5^IâÂ~ñq °sµ®PEr tù•·SYU‘`•{H«ùÄÚz›qo•âÔVBôj7;øÐå&TÅ'šÜ°f1½m̯¡¤SE€ÙÆ(lýfþ»Ýý!¼Ä¹†‰Š‡*8C t$àh>ŠfáUŬÁE“ Âÿ:n~d+ŸXREêVš•:­ëC¼J¦nïMðA_޲8ÍÐ:ŽÙdÕ!¡;hcòØÙ‹bªQ‘5'žiU”L„=@0DEHˆ´T-\Ká+éФs€° AÚëýHnÜ÷õ 4Wh·d—wÉààŒ"ñ W4İ<Ìô$sXG…{À§ÂK—ÒØ6(-Nãà7sÜÇš‰Iû}ßèøS)I¡tLÓ2)¿Á*âˆaE((À’#€|à­ê¤rHzCù0Y` ,Ÿ>Y€£…ÐG'SÑEL´sªÔ¬ÙÈBé‚wÑ4vÈìd—¦‚˜7»JÚ¸ˆSdRœ ÓNŠ“–£`¸úyš¸´‘µP:(þÒ§X)IU)qE€©ìê“¡ (ê®Æ‹f÷r°¾¹•¦Rï‘æh^‰k')ÞW%s1@kx @^Cè’Z¡A¨~oMŸþIµM €UWÕãÀ–x@à(L±éŠÆ¡Â˲k!XòÑyÈD$éE…±”á<$ Âùéäþ*c¯15b­IÉ–2EI #šbà†9J¾³oÆš|k‰¯±’·Ó¦!éa!BÓ|üaô¤AÓðØ•­Ñ}üܬz gû±ò@;`ô„ÒÆ~éÌù OTT£Åš©S+lÆTi:ÈË›–Æ=@\^â#J´û†/ÊtC¾GâU¥1B°Ê ˜„!¡eÈDÃBx@ÒÎ9ÏUPªªH]“Öu\5RW”É,üЄ8ì½O^涆>W.±È¦îÖ¹UmÉÛAК¨—zkÀöÑxf=¶«Up­¡Ð)$~L1—Ó aÅE9Þ£J-!PÁBGäkB#n®û1‹7!ñ[÷}øÎ4|RJZ„ À}T¿§WfÂg HžGDgU!KùM W2¢‚'éýyÞ:Ua!±;u¾¾Ä¶\hظð£ E¦*"m$‚™q" ø¢b‚uZZÀZŽˆuf•¦U32· }aSP²è0‰ŒeˆƒÏÂM$Ç¢ëÝa4H¨V(ò),BW¯ãqyE@#"°EK…ÖWï¨W‡1lV2)¦%Co0ØRBœšäVPúÆäÒùÉ=ðà˜IökI‡þ6Òt´ |ˆxèæ ¬pˆP êŒ@ „?1Vƒ½-T7 PyÇE¬`ŠŠÐDÌ?.œ'œK¬éÂh¸4½u¨qQm ¦¬õréM Ÿ ÄÔ—Ì<ÿæÂÎóÇ©ºí¡”ø·ECjLr]L»… ‹4ßÍKÜ 2,™»<Ÿ¹ðæA  ¼ä˜nô æYÉ¢«Ü˜R:ƒš'<¾Ê;A|³J"(ƒr(®ßE/è5s¢º*§¦UwU}†X êÈN“#LPŒˆ‰“Ó†IÍB“¥ ñUl!ø Bdõ6ÿ}.¸ÐÑxZp„p£n\[Q_ÿpóJá#ž2¥¯RZ™Ú†Ð+ë‚5üûMÓnc™\ÑPd× ô8Åì!ìÏFPôUª æÙŠêlü™>›‘PqÖFÇ„,ø*ï€Oï2By _ð‹—UÇ$ œ¨4¡&{ Pá$óQT± L)D£'{H)ÍË•©T°éÔU-Œ`iÁ_ —Z¡Á%æ‡j¾eI2øÍ‰ÞÖ KBĥĂJ€€­ˆ @I’&#C‡ŠJ.* <Ùű'Ú™¢1•£ÞOÌ„5PÑ®ŒilQÁ½ÎB »Ã"UUUUUªºªê®«ïð¾û)ÿýòthÆÁR{O¤pWËÂ_€Õ‘ºÕ£Êë8ÁŠ4nB´JEˆHªÀ*ऺÐJa¹ ¡ËŒ2¼—âhöVê‚“WÕT¤²$ƒ•µ U(¹þó ¾/ îš ÈEöQXÑÌ^„áfѶ*½‰w!ßAŽ1|3ó-QlRÃù³ÇÔ‹ñ?Ã`“l~ÿ¾T §ŽIðù3ýyœºÙBõ¤&‡9z¢F´šEPž˜ZÀˆÓé>^ðÀ.³†EäÑ€‡=[*’Qx´p°_—<&ñ¤h|” ±àQÂ@—Pƒ¼ÃcjUN§æa©D4ˆÆÏ7Ó•2V„}·WS­œ*¤ aDmE°¯mÇ 1æèYpt …Y¬Ñþ-~ÞKþòèz”ÿÏßN„ ©(|¬ø*ü7…fA WìY¸ƒ×¶ (£"€«ó{C(B,@bñSaŒiQðF'­¬"¿X°‚h ËÞ©ù¯¤]Ê9ÝJà U>¯èB’½mÝŠøb©jü›Vªs1U~ “è4Âô.„7#MóØgžUH9êúÉ,_³2S § (d«[ºäÇ ú_ïßÜ~ß/¿öšyž§Ûõg%¨/ÙåEóòѺ¢®‹€-Yw¼¾Šä$UÑì2á"o-2'Ïž7qëƒl’ÔÄÉ1=ò¢4!êOTZ@*w‰ÒÓ'øœ‹eŒúeÄ›Â3¢Ä{Ê'!1Õ ×Û˜•ÉÄY æ.–…'ØêÍ˰`Hã\ˆåÌqsT׬ùóò(Õ*}T²ƒ>7MkY$>! 3ÇÆ‚¢Ê"‰V7ÃB÷€)JCCÀõ, ÍÈd„E>%)Cè–}ЗéŸk¿ŒH“1F1²¼I;Éô_ˆÜO­§Sìªü¨ŒyDÙ¯¤q† oøtÀñºϹÕFÍ‚‘"€ n³ƒcØöy ( ¼ÂÈ+_±¢Õ[pç°i'±³Q a^NfÖ¢¡÷ë‚Ä}Šÿt¼„´óÞc)!N)*‘ؘÅHGýHW±.ÿ«õy¥ 9}XOÑ÷ïŸ] M¢A†7É“ø" ‰ÑDùuq{Fµ’x’3>¾ž,8ÿà«Þq•Ñ­LÿyÇã´QŽÈåãý0?ƒý]8HzI©¹–au`?¬9X$|Ñæ‹£jx€`¢lÛà5v×µ5:¾';O  ê±³¥ @lfBˆïÛÑT'Ο LqY«(ÒÏÿÄ,!1AQaq @P‘¡±ÁÑáðñ0`pÿÚ?ÿè½á/X¶ùªÿø%{ÞwÃU±ä8è6üýð 0{–ÚGúy  Xô=ßD#†ë¬&ðºâª¦˜‚)ªŽÍšÿâ„jzÐ\ðvà&†òVœ5ñF‹I4‹ "}TêskB&ÿM–O|º*gä@Ya2t»áÔjÈ«¥Êc—&iÚCÏ… ?ó˜1C_3©t`á<LÀä,’j,XÅeZBÁõ¨u\–’aZ5Ú~ý&˜ŠgSsµ.ú“CÁŠFÑ0ãñElÓÕ™õS©Í˜Ù³ƒ1§˜\7¹q;1)¯ýÞG+sÎ,±Ï}º)¹¬|þPØŒkýLxÃÖ↓tºPÔ´séÆí9çâ¨ß˜MI_h© $«eŠä´ü˜{0|ÜËrE)‚øñÜ.9ZÍ‘ÖjIš÷ÔæÎ§6]$ú3kÀFU $s¡Áÿ…qFl\8h»™ £Ö*nt‚3ùc°iP='¯ihS¼—h¤ôÒ([R÷PÖNO'Aè9À`€DER:9Ó8Èœ±žãEÞ’“§-é ÚCŠjåøwü$€ÀDTĺIôfF(Àè;: M9ïzBú‡>ʵG¸›~bWseVfmR-B;`\磱׾UÔ†oËÃ8*‰MVÌÉOÍÙí±ûÄ>¤à{þÛ`7)EpzÃb!·ºW_¡7%¢YYž•Ìæ‚’EŸBd¢žÝ4Ô¹%Cs«ezzC:µ¯#bðUhá r~¯°zèå$©ÉˆìA½è³o©*U"…Å ÄRvX_3è§SÐT±Qp÷þçþ²dÀ÷¸ŠÁÓA 0öb—óÇÉ}®RUÞ >§;=Ú$‰´¨Ab)¯÷"ªþfÏ* ©…Å*ËX§SP© ãòäF3a}á ú9ÊÖ”($0 šo:šíi`0‚Uf½ Oz.~'\¥&©+¨™’‰îzvýHXÖÎ(…0“ÈErÿ¡#S» Ÿ^ …A0U&ÇÜ*Þæmí_ÐGbÎ3´P¼ãa ÑÿHœ(ÐúL{ד%¬sÉ.úéñŒÂƒçN(Â謴§‘)Ÿ¶áì1¨ [Q’Sçâ™Ê~ŠPwK1m©!~’’õ „m0áw‰7®áFìtFA’C ÀÂÍùó@‘Fbë«'Γi·Â äëÆÃ±§¬Æ£~c… $ë!DLjÙÑP›N¤@(J÷íûæLLsF/ýë}òº+-Pôcž+¤L¿ ©XJ¼´ÙÓÀ7M¾¤ØZ㯽Ëãø~4HYK¤ÿñå×€Gùáµj%Š¢duúÿ»í-@¸ý{¸–DáôïCú ˜Þ(¥æçš‹—ë®ã*kÐÎi¶ËBùwAÙFk³üQ ïE–XŠPª/7ÍŜԥmJ°°¥_¥”sãM—äkT‚V/FõÎe¨€ØÉù ” ¬+z“ì}›üö«Ð½÷ o0Ìá\Oþùj@…Ÿb‘I 6û BmqQHëlMöçjòsMzϪk€"+Ed#µ*ÒÆ©Vsúû¾<Ä]jÈÜ‘>¸¬‡´ *®WâV²À^Y}«·oö‚Ýœ¯'êe÷”çíy°‚ˆ( Æ€ÁïŸwÕ…¼~~×î!8‚ »p‰±Ð%ïuùþ ¦Þ‡o÷ÙôìU˦ hƒ‰² €ŽöÿxºÕª4ZßbûýWŽ,¢€ Q @D³ƒÏçºÔxùP¾Œç‹˜46IÁѧ]€~\È xã{Þ?=÷ÏJN¢9bœ˜‰+aôºqï(M¶p& óó“fŽ4®ŸÛó}’ÌJß?· ÉÅ=-z7IŠå¨1»h5´š+¸^ËkS–ýïAßÝ¥Çû§†ž¿ Ò¤)ôzሪ=¿5Wyçû¥¸éÞ‚¼8ß~K—OŠóé¾XTÞœ jéM!“ž=Ø9yÌudìPRaIô#kda™1÷üÔ´+†ºS%:$ÆŽäÍe³*BëNïþÝÿ—¢XèZ°LŒÑ–7çµ§löâã¥Ò`X¤–6‘-ÊÉÖL°Ä(Ÿ lœøK¯kГV&TôD’ŸLbfžçWÚ)6ÌæÍðР‰¨éøÚÑ14âr\RCÉueh£Å¥.½±ù€S—çÃ~ ‹K¯²Î®¤ R—å2ãñ&NaÛìb°'»ô3ÒůÿgÖÇï9oü0YRQ¿¢pS÷Œ’Î3ãÜŽÃu“ýð¯w+33gaÞ&AÔ†É1d#ã}dÈx£V”€2Î%*‚?³~~¡ºȃ»oÛÓA5>œÁ{’FNX™ χÀ%­S‚µÇбÈê³ $Ž9™9¸8°½#€D:bØ0óÝT%]jb¹aJƒ` úì$²IæÂ#kø„űJ«©×ÏÏ^–$P`9×,ù5¦B)Gt÷“Ívò ®iJçÆñäö§'¶¢àÓ‹FoÏãóx…½1—uçþëÒ6É‘èèÄô ´2µõ½O\‡[u˜v'Ü£ö祥EØu¦¨¯±‰›9qæ¿ØÎ¢.Œyÿk]´Åò–OåJÛ±V´} ìj0äˆ ¬&ÔÙ=lc¶:>”#FïÀU¿ov#ã1–qåÅ™Kœ¬ËÐæË”ÌÑÝTL8ÞÏ¡.”´$£q0ô\7ÊÏt=aªÅuº2æI8ܹÐ9W‹Ö æ™Ê(OæB®"+УºîÇøµ“·¼•e'!ú ¾# •š ·”±ú’Úè… Ó$¥MXô~<ãû¤QyeÆ>ø§8Oh C³|Ó*nH¶ß;.4˜vo/¾8šM^òÀ L¬u«8¾[ßÔi| {¸¯Hÿ:R+³wN÷ë´ŠkéK›9] %UÀ‚¨¢ªä¯ôÂ_¹J$$£89jqR Ú¹áÓ–3Æz56ç]qµ8Ma2éf\ºÉ:§Ü°óú©@—7kà¼×._É~>|¼|WDØ—§ª¤Šc"¾‚¥Å†s±‘1²Í‰uÜ=‘cFJ´¤Öe 1£@LízŸCH4Ï´k‹4í8VÇófEJ`©$Ý[}³0ñÁ‹$8!ÙÎŽ¹Iàñš ߄߷z¶[¿ÊÞñm.¶ÀnÚy Ôþ4’_¶°ÎWdï§#V…°"©aE©Â!†ì}`"qÂMíÖr‹à|3g °1†“ÏX¬ˆÒÛAéqöµôíÄ ÔÖ^§×›ˆÕ–$$Í$Á%u ʱ@Ë"ðMÝ{fÝj ¥K Y°.厔qxÝ,vìXÉt|7bµ³d@1O)–SÅ¿]jgF¦€¬´Éÿ ý/“—Kê¶À[¼ eÂiØPœšüÜ"줉ä‘ć}bÄš.\ œB$LyÞfâ›Su±ëòî›Sb´Ö&¾s$¯@M]½vw—±~?æ,­É¬>ÙóB>N¯-$ÞÃÌÄù(ëy&ô–Ô*± ¯€FlJ‚ÇÕHù³M()Pö™Ø½D–ëi|¬Ìå‡9(UËG º÷ZÊ/¸ç]9» "әЎ´í_ØÑ}#éÜzIÛ%ÐxHŒšßˆV‰JßnƒD°Ky“²39vn‹›q Rž)‡£*(=×u††ïÚõ3­–k2ô„V$äÊŠGj6Ök¦+žþE!ÖÄY/wŠ×K.›ÊZCj@ Å]<úoûqúë“¶MþœÖfž“/EÀ‹rÌkI‡wþ÷ñtÛiÙ¸wûúUqn©Ñ,T¡eiÍóŠÃÁÑà|ïÆ^ƒîÉ!*>º™Á_ú2cÆ"¾¨HØé n™×|¿j¡YeÑÕnAØÉBVؼ´NÖ -š­Šõí¸ ¨06Û Êê‹WîJQr–– àú?Ÿ"‡3¾e@¾9P<ü Q{{1ïØÉPÌ*%ÄØG7l˜‰EÐVˆ.¼X8q=Éú"ã|&¢Þ¾m~Û LˆXˆˆŠ#d³D«)b²gW P˜óª»ræñ4‘EÕºíøñ\v€ÕN-r(¡ ª-ÔbÀðR=·ÆCºNPà­œ%l‹Œ;êAÅ>¹Â‘†s^+&^—OÖñêÃÚÄ´ËBˆb1`0À¹ Wi«ÓPƒwçù® ‘)£Z¿LðWX¨B[˯»ÅޫДŽKjå]óÏ>žð£X Ô¤µ H*ä  r•é.b”hFDs AX9•E%?EÜŽ]UM†ë‰^úÒ O`°9‰W°–›9¶-µ®EB)‰æAX”¸šÝ…HS铯¢²–Êð‰U–ÏlxÇ8þ ÅnwÏ÷=ü^&5Ò—|;o»þò¿æ—¦Q䊚h 8+ŠÑ©½Õ žP0ôÊb› OZñØ|–åxîÏ@twâ×|ßr|—xýÕ¦@Àó™´IV@è 8ÃÈ7•àN÷´­y¿®³H+LÒU£„Ë—[JP8‰%ŸD.•ð­ Y¨Dª²ÑNxU áa Û~€µÊ*rþ‹ýõowjžÓöÜ ·PMà•PÑA‰êª° É°Ãûùü0_ŠIЪP-#Öc]¤”H»Š^FÝeÍ_óÝ–íƒ €(Å‘"€^À0Þ—9Hô *æáºK’ŽìÚ¼G0±û}b¦ñPc4`¦±öÖsŠs9Ä¥¶œÅ$6/  ÊT€!J¼ßžÕäÅq(ÒöÖ?O]U¥ÓçÓÆøç5CÝð…q!È‹­ˆª¿Ò½e¼%@ÆAJEl÷¬TØU¥Þ1Œµºƒ;Ά÷k䋆P$% ¸îqlDÜB,/~Ë"´q.V¢üú›Ÿæ®t ŒÇyRê½:¡©Ï5MâI«Kêúe˜Î­»Èѧ«œQoçføÍ|tòb+ýiÑQQ&ƒk!,Õ †fŠÈÊ@@)Ô©ù¶dì¨(_ÈÇ)í-„’VÑçRÍ‹^E´åæ‘$F·þ$+O)'Y£eöÐ"Ǧ¥áq“Z¼5(Á>4  2º;ºå áЛi"í8ÇC]æ9´Œð‹¨ˆ ¸uFèé]çþµ¨äe=on~ (PL\l ×ÉHÍòŸX9€ë ¿2K©¤»ŠÍ·Åm =Mr.j2N h"GG!CtŸG»êþÉÖºa°•‰,KIòWKŸôþx“ª§v(Œ‘!?«bN9œÒÍ,%ìÆÖ C8í h{ýžI;§4„„;€z‘мœš¹ÌìäûçfN–‹ãŸOO´:cüxð €·Dèþ•J ÃÊLä¥N!#ù`ýÿÙ€B#‹Í~+{«`ÖÀ¡6ùÂãS %ÌtÜ?›5ÎÓì Òx7I6r_^ïÃs$=ÁÐ ŠH g9ñ‰Ü­¸‡` …ÅÇZެEJa”6(0Q5t è’,2,\Cè‚XиŒÅ1ÿÅ6ïtÙ¬¥¥KW °ÒªÖÜ”PôìÌ,'‡J©Ý7X¨AIIuǯ'=Ëz-ûLÌÝ´´9U’B5ÉÐBÄʆg*Qz7BNöѰ ÃÓçÔèUübþÔ² 2À«ÃÔP—@JÈÝ­©iáÒ¹h®ÿà…J)M‡¨5ܾA^qì¢ÂЋ/õi¬2Ô|É`$rH‰÷WæÛ á<FNöï¾!¹oABDXAu¼Ë*&DmÔh­RÎ=„X¨?ŽøJ×Te!Áá„(ãT{We¾²¼_oOíiãÕðúM’â„ä' /cŒï¾£·AS´¸†g3Ô›Q–· @H§Ä¸‘Up'U#mËT INþ}>B¤âJ€z¬.3kÙVÅtú½@iRYIýçÁuˆªPÕQ¬4-¾7þíiA¬•¼1æ¨çôUOse(Ze­¦Që"!”˜>·ßþ BÏfS²sB]6R5BT^Â/ô@ ‰)_˜"ØÛëì¥93:L‚2¿4dHcj€JÐ.ÄL’1¹£L«ÖÔæøYR}#®ÖëtéíA´} :nºJ Z OÞ¹¾ó¶Í•[BIikz|äcÆÁ·B_tÝVý½L=sT~.@MlN=øãÚwþûÿY©e¶=o‘<Ë‘BOô9ƒ/‘'ÃÍV*êy'†Æpjû˜¾ùƒZô ÄäbT çDÊÇûb&!2:Þ:ö‘±ÄDTe$ 2·Hxù”Z¤ £Ô/¹ExL,»š\ƹoìùïc¶Î5ã ¥ ^sÂ*çfõ%…f©Ì»¡r†HÖ8fñRe‘¥á¦Ì}GnFñè®Á3%¯ îœ%Õ¬„­p5g]2€í of©o“Æbƒ­´dß‹á/Dqn-F½%³*Àî«Ë°¥jÝYT.¬ÕsÍeµ8GCþÃl™÷^(Ây,—Еz ×ó/³c³sÇ0 áƒÉÇ ‡[†S5Jtce®3*\‚ÍðÝÄ’i|§¢Lü$Ì—Óp÷$&7¬ðhÍuè[54Ó#wž Ñ„›û_ùíPaå.ªß×ëÄ:Êþ˜l« ÛÙ@Zªžõߟ¿ìU²cÇŽÕwxYDÛ©ÙA†Ö(a] …&OC\Ù#ÓkjNœ§ÑPïƒ;¯yi“Èçì+|[nx¯Qî…FYB xÂÕ¼³ñð\pލ$ä>dÕa7´ßÆÕ»]g#xP$hôÍrä#)'wò °`”¼¿Áã0Ä—lq Ð<D@–9+;Ñ»è ¢•/ÂPÆmCìo xV"¼ê»- Væ ¥EN#}÷Úý®›#¸ òiÿ{y€%ízk·ñš†ý7‘ …#üÙ¨%% Ñ8+Ì5Aær[Ja'†ɶž+·nz6aê¢SKPEtDI*åRoÔ FDw/BÃ…n«û<Õ„¢Ë‘ࣚ»ldzËOŸn;ÀÂHʪµû!¼Â9§ä%Üy¡±mR4 Ãg7ªÖ?8€dàªÆöàîÅ=ûÓ5šä¼q} {3çË´t¿XE³É¢«¹'`g*öø8Œ¹’‚¼‹ÒHp4Ï“tiïB …: 8çgG<ÒÙ‘ü$áë>6þê:~ùnÿ “ZYàãe*´|֨ϊÿ 0L×)_£%לïN’&Š‚¶Pz(ôOî’ùü _Ÿj ¡ükÀ(.ÁäW_îF[15“:ì69‘cÍŸÁúdïRˆfÊ>Œ”¬^5Ð XûÅ$•B:—…Ó*gêÃA'?ƒuIûÖß#%¸îjÜ–9t\2 ~á¯Ó9æ«f(àÝSF»¼W/z"©¢6¼< èwgç·nàæ&[#î@+¸¬‹ç@¯5t>/7¶Ø Å(ç¼ãˆƒ§ˆ/Cœ=eÚ¨•Òµ70@ÙÌVÒ=6Ü!øâ«PMê*˜ºÚঠUù-4Åd2UÖ¶Y];‰¯6™‹GìG@‹¤û÷€kàÕŠÅ9¤)˜WS‡Ñ.tˆFt¾Þ–®àx’Ê\ËpO"E.zCŠ=‚ÀUòWG°ƒ­UÖ˜y†¾‚‘ÂÉšGæý.+½…@âbj§è€$é7¤e¬¦jû¾@F«Ç¢¿¢Gþ¬$øˆ+€`‡ùźv¢Ë•}O‚¼L^-: ßž…l=ñ.Á! ë–±];_¤³(ªœ){eÊërºÂ†x¯Ä‚Ù±6xgMA´3Ÿ§°™ˆY?ž¡ØNÝìf"o¤»Ç .„CôŠ~êrüÂRR|ÆR)>Åá Qu¨ÈÍÑ‹”‰QõC:®·YGjÊ'ýº–&;’nGÈ6&Vh±Çq›9×gV6$=11/;oœ'ù<$2ÛZŠ8¦Ò.<æ{Ë3Z#9ÓBr ÀntÖ7ýaP •û¹î×|ñz•s(2öÐr©¡æ®Ìýë¼,p†Œ^/;_¦=`  í®.»îŽ{{]¼Á­}x&ìŒjnH4b=:OAÞÓq$À%+QÄ€ÀP”`ǃ¥mqîóè!õáR÷beÏ_§jkÿA?y Ž^Ô •Æ¡Œ! ¬|%%Úí]ÏÆ€tÄÁF÷é°4d±@ Üàþ{•Ç1¢ŒZHŒ°Ò83ãbLøÐ!L’8„‹– iýÝ”•‡TÊ·>µ$)mðß7ÉôŸ¼\„UìÛý´s+:÷æ“Ö”Œ—Ô! ã=y,mÝ\{Ocþ PÀ (í’J-Pm¡tÈt²Ê;¡|{F±£Ôþ­ zJÑ2¥–q‘hß¿Ÿ\Ùü¥Ô 8€ ST- ¼´XyÍw›^ü°ëOȧzz»µN³_Uy÷”äЇx– ËߥïÓTÄ—j<º_(€Ø‹QYTaôÄ!A–ãL£‰Ñ°¯-Ñ]ý\ùÔß;ogžá$îw÷3ÅÑ­`9„DùH:˜0Ÿ; éC5‘Ø¢‰õ5|c Ø-}5»CTÊ(€˜÷4wÆ›Ö;KÇx¥š¥n@!YÄ>S¼íƈ¡ÅðÕÊ6xBƒÂ_àÓ:ô½£@”xŒ8¸ô„§¥öõƒ­¹‰´3ç~7¶õÝ– Ð{¼ý¾Ú¾‘Y©W»å"µY@ªçÇ.SMN†}øá¿ÃLäÁ`2jÜΑlWeм"¢=o½øãqs}ñ­« Ê -aðE¸Q× •ÅJrª*f*@2±Àk5ãXãÞ(d •G—¹ÑN(s‹0øÕÄ ‘è)ýY‡ÁJR;lÛÓµP¶‰UZdd¶Ëàû¢Ðw’àÔà±Â oÞϾx eRŽqÏœ^?YYJ©ÇïÇ¡q`®ýRŒý“À©EPêâ¿'Ãê#ŠP]ÞùV"Ê4àqyþûî­†4öÇ[KÞã™ETbáÇtØi‚ Ë)¹vxEm3Œ1¬G†^(("fyàg…ò@5µ;}>·wJôKâ…3h”qcO¦0 êµíóà`ëµÈgòK eÊãËu‡=}_»„˜<Á|ƒ#YIŸ¨e” ZÕÅ%ó›ýbÂ|èfkÏ6¯…mbåOM´‰RÐ/O·f²ÑÚXp¨Ì~ÒGs&ÞkÏí&èÁyûö3àóŠ…A”®,ƒÒK †òØ~k-²ŠÐä¥ŒÕø¾võ-ôQ[/T §lîùþ«%TtýzCÐt4*ö šMˆ—ªÍ;pÓä1àT™Yî þá‚ä6TÕ¸ÿAGGví|kþ('FÎMURz×”Ó‹Ó­ŒÚéxžjrØ¢uT§¥éΦ¸P‡ (ÆM«ŸµcÔ 43"))A€ 7ÄëTØ‘J´ Ïo A\žFa÷û}ùšÂáj[Ñ…(L¹ÿ¬É'¹Qåò@»”ÎÐÀˆxTد̨|Q Êßš@u-Y$w!#¬,ãà9âÑÒÃÛeŽ Ãù”ÁDÑÐ¥Uŵ$È'߈@¸ó3ЖéŸÂЙѕéîH89ѯ°¤å ä~&w˜/@2ά¤ßê”,0h;¥ñ>¶é% Fg:ÐÕv³ó¹£gA~„|+×ZXkº¨R]÷Ç÷Œ[ðU¥\6%m?]' XƒÕ§"¬"€¬—F1p+ôæûß²DÙk­¥UUƒ¬2Æe± ‹ LVCaƒê°ïîDkØ{ï×X®+Û\Àí—Œ‡LDê <Ú/§Þ“:¡ªÀ8Iéy ÝUK§GW8ç–ʇ”^ƒSQö©ª2³ù]„*R6;`ÂS ò'à†­½¤ðêˆX)’dÝZåûûï'è4……ƒ!ö¯Åô!ÌW —ä$,âO•â}M2¸M¯¢€9‘½uäªFN5bcåð†ß­jq•AÄʵUÇ8⮚&tpwêEf¤hCyæ:Ö[U¢ªù 3Ú‡@•vq´9nA§š9jã¾ô;kð;Ì‚¦êŸÒØROÿõ5¶Æâ„r@‡ç§Òw줎3U!ðòÁíà¯1†ÊYSà"ŒÃ¹DGN$¥!FQÍ†Š ]¹n€ržÕœÖÞyÞî`¦!dæç`_Æ4Ó“¸<ºÑM‰Ôƒžª†´ˆB× â}07 ] Å’)ÛZ"­g ?É«\û}‡~™ ^›À(އtAÔWK='ctxo=¥p‹„-h·°†(S<ì7²b[Ÿú(&Š€´Y"†ÜóÔnù N4@΢kÕõ]º;\ïÈ…ÒP ;`9‰1ríÉ å…s¬ãR0ˆQR‚ŠÛEg+¹…ƒá+}…]"ÙÈ—©¹uõ‰@V0¯L«Ä ž}ÕÕŠ¸Z襅>æêcÕèÎÊ[òÖ9¼[tëà¿Mó3ƒìn’%GL8n¾ûÞ/†1¼ߪœYø§Ž!q[s"“Zõ4UYnƒÄø˜á²œU¯7–‰ d3h£+æñuå¿ïæÊ»ŽËïþ­c!ÁÇ Û„DKìß°r¤ë­™ë`±idëÆÿíwðTISáL}:hú* ̪àÍ——_«+R{”ÚM­[¸”U~légغ ‚@³H»UïŸû G¼fº‹°›¤€ªD¡ì¯ïðv¨ð×> ·í\rkŠühiß=<7]ºX_'¢é IÖ’’Ð¥&[?õ² ÞÙOtNå*=12h\ëÕ0¼eõWÕ¤î½*T,ï×Ïñ̼¼I±)ÜÍ)9ŒzšðâÁ3du®¡qc•af°m¸@CÂj&¼ÒzéöÌ>=ñß÷8ââä¸; “¹RØe9¡U_!´úÃZ9(òóþÔÄ „$—Lœ&‰AvDÇ^C8§¥ôŠE x_9çŒàŒUJ{ÐÀ®![Šâkº€7üãó÷—›KeÄGòËL…¯ óÜ Î*,"îøÖ®óü^â´hrš qð5aÄÐ/Nžþ÷EñU…²<Ï–K!±Ö4g{’¥ƒ»þhè¾Î¼ý UÜ•ö¯k¾p?s !{™LZ¨•d4™ºeJ¢hŽ/ª¡ÀÉz·K®Üþ&¡A±0d‚êHÐ>š.P¿+“Ÿ·ã¹1,5S¥@Xy fœ£&LH×\î`œBý“¾mˆ% âT@(h©‚·¦×ÓµÆDƒ·N>K,?)¤ZÐ[Ay Î|ÀDŸ_rŠÁ)Î=wàŒ® €åB«öíß1©Y>(ÌUÝD‘NÛQa ­1vå鸎‰-ìÿñKn¥ëI9Ìrörþ ¤S¸·1;jœÊ‰-9gëÁB];à>†ëqM=¾“?eÍ\üØ¿†î—•eÍê}B‡‡©š}­T)ý!™ã3q{W|®3ž[Ì/O@‘' z„$¡ÛÏž§‡ÐìôL%BL@hƒøaïË®Åíói‚¼yßýÜ9(Ð\}å×Òï«G•ªºÖðÔ¨ïÒ >â°©eH@.{‡*s·(êQ\q³YËùXédK'\@¯HÜ;oåK3Ñ|ŒÅ¹Þ¾^Õ6OÝÌ4t"ù,n-Q+ñÉ0LI¼XÍÆWóúµš è`U‚R€þ*’áÃ}HÃciÒµ´ Þ˜ÅàÅ.=]ÑŒ)G®€ú§IUy1ãI]åŠ*šw p -S ˜ ‰ÀcÃà/´vZËNÑ ÀníiV±êhº˜Aì÷¯Pïp!ñH±•+áÂDPAOV!j=xp~tTóûZÔˆ°#ˆóµµhÕØœ““Ð1;P.¿Ö¨˜Õ„(èx¿e}°æêrÔ«ÖʃYˆù "¸Q<’eüä¼ïǽÔÄR™|ó\ë¿ër˜>åèÉ ×Hýj>¸µ¸ømÐe*¯wAFnÝc‡ówb¨Ç#6Z0ˆáåŒA·àªm>̃Lúx°¤0n6ÂLÖÌè K“L ŠQä|(P!zÐÉ–L×;¤ÜUÐ#.ÌkȉÒèÖÉØ tŒ¢SHT…³Æ ®<ÑÄTS !„³0 vÊ1 }þáQ·¡ –ͺøí HQñ›D’Çœ–µ”ú´mcÜïóôdU\žˆ„‰‘ûã$‰Hä X)cë¹e[=Î|ó.‡ˆ<î¢fžYBX  _¨ßžj^ÁU“·©•äî‘Íÿ†Uw•UVÇëb2tÛL ÝФQ|©‚ˆ¯óðV2UŽíùÄ÷´®Ã; HŽbû7RùpÅ[ŸCõóùª¶Ws¥çPÓl Ò¡š¦îùÍÅå¾( ,HSc_Ø ¹tÏOKÛ™±ÐvÙÍ“5-.úBóÁ…žÚˆúüÎnÓÇs‘‘ª 1â¸ÂYX×C´2ôrEš¦!Qþ¾#´[SCì_¾Ô¾•E¿§=NîY^¢wÊ-·UÏ`‚'>·¯÷’ßy¯ã0 òxÂ~ˆ+2ðuÒ—Æ@ñŒ@vuHŠ(·-ã-±XYA«‡À·Ž°è ]`yÓíÉG02>¸H¹ÎVè×=MÜrÌ"4»øÜ°Õ‹¦M㙡—ë‰L¤T3Il¡û}ùÖÛöo‹7cE€¦ ß"ÖƒÒÇiõŸf‘^|1ڂظáëHâ¦%³~ØÖq3ÍŒR[¿?ó1“°È`ŽF ¶ž¯ØPO¼‚0 p 9æ»l¼ó¨­\`¾Üb®»÷×yr„š]žKïGˆÎl×  9Š'¡"4ÙDéûʈïtöV®+º¤ ºO”Pó&“€j œoä‹%ì9ÿv}@ÝÿÞ2ë‡Ec+óßøÑ‡¢RŸ#©žÐ³;±³†Kš8tq9±ä;ÕL¸êmF3NÞ¹xïYó)¼ÃÜ~¾¸ÞÛ•I%I#6Kv¼Tàü¿ß,†¤ŒQˆO¼¬ÃꀋÜÙ^hØ¢Ö#ÈŒç>Ó1ÝkXGæ½u ›¥Ä‰•îŒW¨/9 ¶¿ÔŠ]g`aÁ-%©sý±¹Ò!ƒFq> C^=ª4ņÙE[ÙŸæaDnÃïãwúøø¹€ê°­uqoÒ‡6¬QmSßÐ/9x»Ä1ÀÁ;VéÕ;¨eP `j¹w¡6ñAn”›~‹ôÃààÔg•Ü92@pìÎCª†^+½ßïú”À!­¶_õæùYv ÒÒÚ/·7^­JêB/“”} Õîà îxê\– ÒL4åÀÞ‰3­“}­Ò•Û,ŽÄ¢jÕã[·hV¼mÞ˜ÀdK÷{òç³JXƒ¨²\Ñ ŸC`ú¢2¹»_âʇë¦r7Ý-„¢ó÷ðkEe…ì„ÛÝ&QOss_0dœ¢I"V€" [¨.ªBUR›ÍKUG ÏàUår‚ÀÀóÆ•“[cLdq”mTPЂªT º¬ú¾o]¥˜ìp@ÉuØ,)ý'ßW…oѳ‰ºÖÍ  ѳíéáÛÄå^:~hóiY_«wæÊ_‚DŒMr¾‡Sð‘„ç2Ɔ×7çÅ{sñ<]-4]•Q Š6k×ÐþHã5P"fü$¶(…„pvÆÙ,ðc»qàmû2ihƒ¤ëûGZe“¼ƒ™îi~ƒ®ZPß¾øh‚Gc9BP¨«È(†9@ÍöÛï ,’Ú`ªM7âEh± ­Â§ŠÊÆüpÀÉÒ½fVNéj’·ßo„ÒÀsw¤ìF3 /œèÚö¦×³j²c@`2mLÔàÜ3aðm;¬u´¬u%¢ոd}Îx¿OhN—‚ûùý¿8(!L׬ôæNf!ñÖ¶¢#Ô£¾Én*3–ÕCÿÈp‘ˆ£4È]^ŽØõø ³ll2þÕjøŒäñV!21åÙ·5Üx£_Cœ¹åè=F-ë.æDwR$¸ßX]Ìsˆ‹¡@ßÑã¿lÒJBÂÅÏo•Y¹íåàx`S!ˆZny¬è°ÈPYàkÆö q€\LÞ6墵÷…ׯµý0{g;:è¶ãbÛù,—4pE m9 ® Ú(Ã`$ ;áG§xŒ”P-ºOš+Q&‰Mfœ~¡Ð-Õ`CÁˆã$òétOö!o9_%¯À¢3#h s/S¼¨ÐûýY“¨I<µiÚãjVryé{$ù®uñ=°Sy”ìÏ€ÑíƒjÕ‹Ë, ’Ãu z”´ w.¿œL» ÌV̓#Lê]µ‚¢Ù<Å)ŠFëÕÐëqÈ$ØZ-r»7ñœÅvCñ§MìL£õe ŒÉbs½ó"±B;†€†\R¸f Ä'“¨÷^j$Xe²<|¢™ÔHMóD§8íu€TYw,/xìš$O'ÿ¤44R–kdNv,öç¥ï /4Ê7¹´â¦FÎ ôFýøÔ¨\~O½!Ãhþ’ŸPmOÖ`Ù³EZº!p<ÁXy(þ}K¾­(ø'åÑDÚÿ?Á¿•òF’Õ>Š+î7ˆÓ²Ê&?¸t5Ôö7k •-s T„HñSoýƺiNÙù‡‹šQ}$¦à>£i¥¦}ƒ¾P²·æÅ/·Çù EÆ$m@Ù¥¤h-“=­ÞRRÇž¨g¼bÐ_ë‹Eà¦XØ#ƒ£¡©Ât)}×ת° !©ù$nÌF~­ª¿i¥*º…Yžð“K¹Ô £‚1br8YÈë sžUñàRŒ²&¯ê/rÖÉé…ŠAD™Ö cÆC½Rºo€U˜ôx¯ÌÂ&é_mló«ÀTY €ØÖ‘%Æ‚*ATUâµv<_âïöÕ é']«o¹%W`ëÕrYÏ|®¼ôG•Üß}}×û•eJßœˆøœ,÷OÕ›22¿­’¬´A/‹v‹ :fÎCwF^ƒ|æLá²µ8}#bYÉ„p¬ÞêÊÃðpVv›Jy¿ ²‰‡ˆ6ÀF©R)ÊÁèa–àE®w~¹º”òUhù[¨F¹Þ~k¯I)Z‡Œe6d{eÚm縅(ÖWëÆ|òDŠ¿d’%$8¶B#ŸB¬AUJTrvò¹¯¶±T«êý;V -Aw=ñ “m]Uv^þÕj swvñïô¼‘êBaGmIå1ŸCö@rL›jöæòÔù}@6‡Ù_‰ºêÇ9úˆ5» X_6Í+½ç2æ¾øN(«5|ÔM –FX!äÊ‚¤‘â,?Pqäk:dÇ3ÐÕ™Bt¼GDF®MÇ’^ÕámAÊ(@\‚¡ºW•ÈfîCå‘j»8S»nsƒ¦¹Rs¦ ‚ŒaUën³æ[fÌÜUÒrX×ev”1¹Ú)Hž 2@¨!½LSñžåøÛ{O±¹ñaG+J<1Çf@üRAËIAÖ®R°Á§'ðǜ•Vϯ¦NèÖ,ͽÖ‘!¯ž!7C€}|ÂÂ+1ƒ¸j ¨N×Ò¥aàçµ5Çîhi3¢yfu4ØØa€U†oïy/Ò|)©Üð|Â>uܯ)¼NM£R¥Úq©G3´ÑŠš]º·ÃRfí0æ›&‰rÇFn0gR2ï"¡Þ™g_âŸð:1‹bVYÎ}v˾dW7¾?sµŒ‹œ™¶8bÉýÌMM0fqžº›â˜¿èRª¿°cUA\V»üÂ7@®ƒCÃ#£Pݼ¹¯Œ©c½*¡©SÿsY\!³‹KÌ·Y=þ?R3­Q,± ë+»Æø&ä—+á¿õvô¡›ôI!>f¶ÀYb# 1ŠøÆÆ(¦ÒÓ>Þ /“Q däW¹’(¼rW¢y=”TßÝÊÊp8­)ÞM}ýÊ5’Nèk(n’ŠÉ<×óyÐÜ èàHÒëêZÞÒt¡ÉG¦©p Lî»Æ$«æ Ê §;äHAÞÜ,]àÈ’+=iÊihåÕ*£”vwª^ÚÝFº3z.rÅÁ!ú8ì[]¦ôS‘,€a>P߃:ä*6Š8z´ ¼kúl"ÀÜð>ÉP'O¨éV? Ïô>¨6x*¢ºÚV‘µš/ÞW‡–s˜'Þa'gs¡ž†˜¢))…©Õ7yDø ÖÆÒKÉ[ ,àSè­îJV¬@j§„EŽÖNÅ—·þ—È08Êt6'Áœ³ÑtΓ¸âã Á;H´cͪxˆLç 1T¡õ)Å&s¿úHŸ›wؽ'1¶¥:vdR_ƒÇÚœ4hŠ™…žî:šöá‹d±{3¶™…ÖëõOSÁ!|œqÀ/÷ÜÛ¨'?.“»v Ç…¿áµÊ´ ÇŽ`ЭP—Á/’Ò½2ŸgˆÐˆL‘;õ>) סõ 3o=eš¤YVB£9ik 7Vó›áµù Á½Ó鋎:gc˜³±ûZc$ ½†mP¬pj¥ÈzH7NŸ¢Oë‡B‚±ÉƒjejöI²Iý6õP8; xp˜ Qz Ó#.€r…ETYLrªÁѰFyjÔéú° ¿Ü)ñµ%áÆžå¹Ú©&d….o+q¿=Ù&ø¥PÞ:*pÓnµUâr;¹âÞ_Õ'&Ú&(ÐéJ ¹!^MZI æo•gK%YîV~à×CW³¿&ÃÄ“[v!íMÚíg<Âä½ì‡ÿ*.²±k§w=ö÷R\v`ƒ€ @~—9ó|Š;êoñ¬ÔsÊFÛo×ñXŒ!)xX;mç¹W£pwÇs“¹îýY„6´{†˜Ò˼٘iv×ZQ´¸ô$Oªì<îQ ¥9Óצg01eÈ8 p`S L¡-„ ö\HYB ²Tó9J.…`–)ód0¦–M4׳$ÚõJÀ·¹$þX[Ðï¦Ä•ÿÄ5vï‚ê"[æ70 ]ù&|Ñ¥"¶´`FYæüoBÒ?|“¶³ÔIƒ­fÜ­]^åþUgRŒQÆ<–Òá5«éÞø´Äø£³ScÇìoÿ¹¡p·À\’ÁˆrE30„ézàRbóI‹ ¦)÷Ž­Î P¿¨ ȉ‡Y$+-·Ì€2”µ¬DÖ¥/+³]NMÑ+z<[¹ ¢\Y e€ß™í™Ó7iá&¦GYˆo5ª(*²+tµ†Å-…Xʹ iqD.Щ©¥*x©fXÉJdnhyXCŒ—$yØ €U¨’°_õsÇýl† Mu w¢r%û‡‹‰Ü­v¸DkN_N«wÙ>á™-dΈJŒŒ(ˆ°@JBÚìâa³É ³{ˆœÚ¼”+¨²OÁœ®x÷ …šöˆÅ&d ºÖ/Àö…ìå4ÐUÀåYëK=¥¤µŸöHïçµ,Çß®ÌÚÁbȆï^C¿´Ÿd#ó =ðC-ßSÁm®ãÍD¾J'j­cÁ”è9áÀ >¢tŠ =,¦Ý° —8°Bü@^ßüt`yযŽÍ’ž‡CʆY8P«°˜(µ¬–-!Ú™¦L‰aœë@\êVw”-[¬ë²¿”|­n}âs’%P£…y „O+ã+`j +†þ´íT«R"C„Ž¿òAÔ›À7à~ ºõ~Áò ½*0+‘•åР-¤^•ºšqŸíGï; scÂ7ý"¢Íx˜õžE =” H ‹‚ÕF7¡ÊÀÂ_þR;A1Z,èw 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0ÃàÞ|ð0àe?ÿÙ endstream endobj 973 0 obj << /D [971 0 R /XYZ 33.853 921.043 null] >> endobj 583 0 obj << /D [971 0 R /XYZ 124.642 505.341 null] >> endobj 234 0 obj << /D [971 0 R /XYZ 68.868 453.536 null] >> endobj 970 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F23 427 0 R /F34 597 0 R >> /XObject << /Im19 969 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 978 0 obj << /Length 2456 /Filter /FlateDecode >> stream xÚ½XK“ܶ¾ëWLYNj‡¾9Jé Ç’Ë)[åònUœÈ>pIÌ b¾ »Úüúô r–RUW.3`h Ý_À~sÚì7ß¾ØËÿ×w/^½²Mø‡$ 7wÇMšûyšo²<õƒ<ÛÜU›žnúZ5ªÝ†™7¨j»‹÷‰§[üO½w·O·»±«0ƒ.kÅb«›m˜{c] ºk­¿Ý¥Y콵ܫþ?ÛÀëû톪ÖÞ€4L¼á,JŠ–Ö%F´ž7¯Tu-ʬ½ýõî¯`Ø.ˆý8Neó•*``˜ä^Ñ÷µ.iC(ȼG=œ¹ëñ¬K\êÌCÇbÍ6ü̼j,Ëa‡VÉPÅ[ýû¨¬h½ZÖ(XÔ›¢÷¸­”°°yPŸpMDÞ½²ýßP¹zÚî¢0}¶Êi€´5ú$­j[ŽV†F½FÝÓ¹¿zíç‡d~%›]˜ú‡üÀ ÿ²²«IËHfA>w¸GÙfÇÿFÙÁèrà-¹@É/‚b7x`ðÓí*Ý(ŒÖÂIbQÙ5ý8p4Ý|ÑšïlÆ~´Oÿ0kYÀ" \£%> †HþË>Ùw†Û¥6%0ȶäžwc[F»cÄpÁÿ®UÎ^f*݃p¥*Ñÿ²?Ì´rœ¿…Õ;‹'"VSÊgSÊßHðµÕÿë´âtO{Ó`vZ9žЬ2_<’b­¨k˽ƒˆ›B’¾ „IÁÀz°Ö?v@ò*CŠýuWÀQAØžøûØ„ lb<@„ÄJ†CŽ(k]x`°ƒ ‰±Y¶€7­Uäåûúi›‡žOч8o‘Àïõi4„)/Xs¿1§ 7~úöÅæã.Î/8,ÜLÒ½(2® êÐ70Œß¼ûD¼Bã³ý„BØ÷¨íYæuü_¢ñà=Ñp—§ï»Aº@®í`YMwdi!órÀ14ó“ä°t ¢ÅažxXT@!ž8!ôu zü\¶—Tl+¬jØsD¼šTÅ“÷íRÁÃ6eŒ.îñ`Pbõ¿"yxoYR¸ö9ÆÌ§Ïµ®ÄÃЬDQL™ÄírºFzŒâÆ=ìª.,•4”»ðß×E‹¥õIäƒ0øQ2œ‹ÇI ‰Ø‹”ìØ¶Ü[ý ÛÓ¤"Äç\¸íÖl)ÄoTOó+PÃÖ¹‹¯<35Ñ€¹:ŠKÒâˆÂxuP…ÌfÞ€s€7 á€Ná!žâ)€ ‚‰–žÜ¾@÷Ÿ£y3š§o?ï&èþ3H sgöá õI»v>ò,ç<£Žn1 Çή"\ŽZFíc33§#½ÊQYSô‹]Ó(™ÒP°±÷*Ñ>¬Ù²¬®BJ`¤šõ `ŽX•–˜÷¶ä€àýôynHCý+†‘ͯއ…lœ‡˜ˆb?Ý ïÌ} ²AÐ|÷¸ääëÜå.—%‹»K˜ëdTta]hð•*#„º¦2KûX^ 06C?H%6ß#?&×&!‘éDHߨ\¨Å(t _ÀÿÙ¥Þõg$ti è%BŒŸ j£ØÅÞ®4i©/·ÇD‚tt÷t×X)Í£UÇ‘^ 0œL"{­"^°Íz8c¸â¨`í5ÅÚ²’ÞM|Ä•²úÔ÷…N÷Ú €Dã£ß(…†cu¶¯]c® (â‹N£Û wp+ƒtÉLÓy2âpK·7î§;©âûÍìD@tOóñ'@‘Q¼íVÉö´ÛHž´"÷þìfn ¹‘§à#EÌx¾gk”AÊé… :±Å[˜ èä^¿P0…p–†îaîÍÑU´Ï ùÞ6?ôÚ'6V™%^>}Ÿî—+IB?J¦»´ïü›cs¯dT<žI FìΚž÷ܪ᪾ÁÉ‚Ëà®ña1 /†MQ)&`¼¬yb¹•ב–?‹#±\§[¨#¬œEèÎ"¼z“dYË%±÷OE‘º«¯ø2ÖOóÀ9Šý½æÑîàÁ4Žïõ´Ç¶â ¹=v|;ôÌs?9„W.Qî>æ®å@ü ´Ž?ªNªbÓñzäU±ÚÅñ^ ô»º–gt™,SºÛÆîhŠôÌŸ»ò廀[l¶ä)ã¸êI(‡+Gþ›Ç~’äNÍ’QÍ›Kï ÷ñ_J¤`½´é ؘr¯H!€—Äⱇ!g‚UÓtÕ7¸×kN8¼ à(eŸ0[üÚŠ`¾ÞŸÖPiu®¼÷RpR]£L¡Ï* s??}Y5Y_ð$ˆª)}P ,‹&vw÷˜H¯×¶ô/¡ûÐûàíó`pµí Ä ïÝzò]«Âº£yìdã=3_‚îß»µt;­Ä*f×"î!î…==Rb´ H~'®±Víhäž.p@"ŒÛvlþªï7e~4] ·^eß„77½þF7ß |ó1¼ n‚_]”¯¬ã#¢}P@¨aWæ˜ayæETA.øq’.g:~}÷Ô‹ñoxñ¯>üÔ ·=:ÿ«›/¾²†ûЇ¢G7ÏsÖ›.Iá»»ÿ™ ¾ endstream endobj 977 0 obj << /Type /Page /Contents 978 0 R /Resources 976 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R /Annots [ 974 0 R 975 0 R ] >> endobj 974 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [124.062 612.631 137.76 625.25] /A << /S /GoTo /D (figure.19) >> >> endobj 975 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [494.431 395.661 520.156 408.281] /A << /S /GoTo /D (subsection.A.17) >> >> endobj 979 0 obj << /D [977 0 R /XYZ 33.853 921.043 null] >> endobj 980 0 obj << /D [977 0 R /XYZ 68.868 478.888 null] >> endobj 981 0 obj << /D [977 0 R /XYZ 68.868 454.582 null] >> endobj 238 0 obj << /D [977 0 R /XYZ 68.868 379.981 null] >> endobj 976 0 obj << /Font << /F17 421 0 R /F30 591 0 R /F23 427 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 985 0 obj << /Length 2136 /Filter /FlateDecode >> stream xÚXÝoä¸ ß¿b€¾8ÀŒÏò÷؇ÝÛK»Å]±¸m½}Pl%£ž¿*ÙÉæþú’"å±'Î}F¢(Š"©IG»‡]´ûÛ›ˆßß¾ùæ:IvB„Ç,‹w·÷»²“8ÝeвØÝÖ»ÏÁƒÑõÍ +Ý=\2‘oñ' â0Û_}¹ýÈ:ˆ4LÓœø•iÔøAÛqÅ…™ã>ˆ2L³|½ç§(^V\†åQý/vP•¾&IãI‘¬njï”!bO´Q·ÊŽj°D–]½¦Yw•Q­êÆ¿n©nuZ5þsjoa× JÍ"áßRÇM~ÇþEá¦(Œ"ñâ^1ßKu÷½©ßë©?Ô°½³ºïdCzW};L£d_UÖ ‰ëo¼$5¸5“ò |s-Š¥£EfÙ”‡ÙÑßÝ<ß>]ÅE ͨ«´ƒ`dc{%Ø0.eZ=ZZOW"`¾Éò=‚¿È^»îݾZW$æÎMû©«¥íZ±0ÝñþŽU½“ЛZwrdb­ªð¦M|‘‹hŠ\¬$Güç0ï@c„W‡<>ZÁªóèT#½€èô‚_oŸra KÃÝ ÆŠUí%Âìy%ݘ…<áƒZú5#íæpýš§`ßšFàu´²“î]âl4"h¤ :ÖÕÒTV¦·v^’M£šÙ‰Ô«ûVâ‘vaŽp+ ¿…˜Sÿ›øÚÍóU{Øž%FÐÕèÐÔ]Ùžœ&ÈÚMÕz6ÎWQîAú….|‹.‚ELˆ9Nhg'Ç‚= 3¡«6® aW’ƒFIËÃÅ=¡›z"œ…³ÙXúQ[zuHv‘‚»]ðÁ`|xY/Yf/î|ðáCk’/¤GTFÁµ“ @í¤ý‘vóFn9iõèâ^™ ÇtŽi 5r ^æ°D€X'®ôÝ~þös¼{ñeSDæ4ˆÎ¯Ð¡°;‹ÝŠ`î‰üFÓ SŠù\h»µ•€ðtåÞÎÏôp‰6˜þ@0‹cXÅÚ •²–À%µÜºhY,-¼ÊWþ G(óÉô´ùm¼yÓ8 £ä¸¸©޲2Œâ =>¢; 8ŸÁ/#*Œ:…ÇHƒ)"÷&#f‡–Æ[¨Œ¬'ÉR7a8<Ì‚óÏpVx¼*<)rÌÀ¼U†¥§“rø\x|.1€,È“°fÈB˜ÂZÃÑŒ&8¥¼Pxæ3˜{µä’&epëW7FéÆ Š€ã‰Äê¦÷o Ql>‰Ó™7÷ïFô‹°×)—fçòÈÿ^†L´Îš¯”(³!ê1¸0Y&2G§:b=霈Իð6k€¥à·´ÿ=￞Kâø—ª¹eö®®Ùo1XŽö""–™þkEÐ Ýúì;¶ê¾;ÖrÖž.´YWVÚTŒB«Âò3Ö9{"]ÃÓR|7þòÛ5çï)þ.Sª-â@Z«:—aFÉ Ò`´+VàÀ|rQÎ!khÁ¥gø]ä`˜QZ¡‡sÎ,i‘PÔ Kå„MóÌ;Ôøz„zm`^…I–zðZšuÃ…‹|Hi¦eŠrÙ8"ÏÃc4ñ½mô‹øÀÈÃWÝ2D{˜øRpî;X°$Çÿ‚}ˆÀÉxŠKTÖF]´+«¨Zú–‰¯HJ—'Ëd³"A~XðÕ¢^~‡w%‡ÖU@%Á;â´®ddnåj¤VFƒÐ§U?5õV¡ÕŠÆ8H2Áº(šT6£™**B3®`³0‹j¢Hb°Ù ïÎy&‹ «Ì,ðI^@ç×5?L¨êhÈ^•}ѱP…cóò‘¯MUFÇà¾ØH,cÏ—gÏã"<»ÃÙ~Á¼¼ Ψ†@sº©3ÿ3›~öæ@çHHJ•“›võf¥…\È{ˆW=Ö©i¨¯z$ô>.Zñ*5ïpx°1—áqÌF8 B4zió–+ݳàÍjý#æà$ߎé$_õfëFt•˜«£‘«ëG,Ч‹'…ï5ñen’/£ fTØ9GàÁö mO¢ ‚@ €J âÆmîMßú„î ‹è ‚¥RœíGúu] æs=’/‹—|vŽ—Vq Ùv s¯qÙ±ØÉN<]ÇhÅèƒü°RMÃÄ¦í‰øD<õ¾ÊjãÛrn²×½:ÜŠ²³£ë¡¡'´{«æ\šÃëÅžoã’vÄ€CWÉíOëÁdcïy<y±6EèHktŽ=ÐgŠböBñEã“ä~§ ¢ÂÚ×4ÿF=ê~²´>NcŠ5v³px- Š0ÊŸ_~tšB9òIVÐle¤cFå9o"ò¥Qì;M¸I‡5éQLßH4^8Ïãà¦÷T´޼ƒÓH¼èÛƒ¤ŸšZf›Áés7¡ÔéEªHîÏUâøšM0çfù±I6™xnÂQú6G”gᄚ÷ø7Âw0ÏZEv±Ì0–\÷9bùaÀt‡qr¼Äi÷ZŒÌ·ø!¥á‚ßt)¹ë€ã–97„ŠdPl7þ\ß0giþ`IU+©¤d¼üº9uw}W+næ:›MÁ@ÞZ–Õ—žüíʼÕݲ֓½øˆ+6ŸX+¿nr_|!ft©¦;]¡&{Àu¯ðÑ• ×R7ë-øyvsÏ‹îbÑýêå±âo¸ÜXàþ©WZzûEÙZ¦aÁûKÀVqBòòrµç»Û7ÿ‘Gù endstream endobj 984 0 obj << /Type /Page /Contents 985 0 R /Resources 983 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R >> endobj 986 0 obj << /D [984 0 R /XYZ 33.853 921.043 null] >> endobj 983 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 989 0 obj << /Length 3037 /Filter /FlateDecode >> stream xÚ˒ܶñ®¯˜ª­ÒÐ$Á§«t°#+VJrœÚ­\ v1 ŽIŽV“¯O¿ÀÇ,Wö‰@ht7ú 0ÚwÑîï¯"ù~ÿðê›wJíâ8¬²,Ù=<îâ( ‹rW”y—Åîá°û%ø·©Õ¢,Š£0z}·Ïâ4˜šY-Œï~}øÇn—ašåðMÃ4Íy9޾¦áh=PÛ¾~kÛvëÆøËC1²Ñ;Ý Fv¢ö¯›¨Æ®1½vµY!ŠÃÈì³ Ê²™²-lg]ÿfúðh  òþòÔ~´ucž11áïm{nÌýùdzó·®iL=Ú»8èÜï7ïâby°M’‡ÔÁm~êF`-I£`<é‘[OwIô¤±óyqL»P:Ö ¦Í{1à’Éž‹ÁÏÂ5cçw”Yƒm~iôh;ǰî°›ÿ¦Â»}ÁÃÉz4ò…)HB­/ƒÙ’¡gD%yðd‡¶`{”‘4õ‘G‰l,Æ µîÍã¥i®2ÚÛ®—‚‚· u¯¤žb¾œm »À×L¤ë¯"ÓÞøÓKÊàz¶ÀN#cuç—zd91î`<5ÝçÁ±¢ÒV–6ûûRœœç*Tª„Uìb`OKRí,¢$ø¨ƒœãh+ã"UÅõ>#ž—ct,V]¹Ç¦˜’±³:rO×{ö9BËÚéôTg”³È°á̱±Gû‰Ð€!Á™#a w'žMÚ ¨°* ®ß+ÐÊ— Gú êOð$èd?Óè„™ž÷e ;Ÿûî¬DäK~¨NÊ‚¨6xªhþIüp½ßÿLh½LpšÉu¤èʸ“°>[£Cy8JÍ@Küõ†<;NA/÷âŸÌ±÷žFfÖ´›>Õ7‹àéd'¡@wyp¥È ¾5M#ó£ù¬òì¥ ^xô IÇqèqÌíºkÏtjdÔ!SÂ…àœFÍYh¸ÎíÿgúHVïeÜ&'YY±€hÊä=‚8îõ2ñcdªÀt "WÔ9MÞú˨ç×cD»4x†¥ Z21Ÿжt¼Ð@ø¾’ÊHXd쌺ˆzÎ0¢Çɯb ¬¤ÁâÒ%Žø¨Šz¸P?€¼³ý “ªG±uI«5yÿtxY2ù,¶,`ŒÇï"?‘©7 +­€>i|5Þþð‘-g°ÉÁ4Ó¾¥»’Õ¬I`ÍÒîhD16áš§/ø2Yø2ègœÅ\Ë8Æ!pš#¢lG\p¢ç #àF-û5²l¯Ñ³i üé„îi²ø|ضôåÆ*HõXÝ ¶\$‡FoD+ÐC\{M‚°Hl#Ë›fƉ>ëí8Ñkyð€A½ãAÆyãÓ™-Ç4Ì^.IÉË%7BJDHßp8¼2— Xýýb{ìÑa$Kk=ÛÎÊöº†ü‰3=’S‡¯äY)«$BŒ;Bðß (õ¤¨8ã†ocãPvå>¥òðt;@ …Mì¿6šóÚvõà#È%yX7#Òß;V° ­>Cú ½@»”, úºÇnqrèÎ=©n ¦6&–*=È‹TÎôƒØ„ˆ†®a]§)pp VÔ@ñâ—ìE(8An!ñ­Ñ—5Œ€˜AŒ_l;E_…mÖ¡PðŒ"k–ns퓲LR_ò~ÌILé9NìÐÁÑkŠ‹‰b‘‘Hä7GƒONfO‚BÃÚŠ¾I‘†Iû¨ÊõGšùúãÊÜõ.ñN»n„ç8€¡Ê£Â` ºðž 5ªgiÛÖÑ*Lgɪ(—RXMôF7v½ûC ”;Gâ‹zsÁD]ôšX%b»lf`‰}rç¸ ºžT-êM$:/‚{K)Í=m';Ïrº½ÊâÛ, dð°»È0<ɲ…@íÉ®i2$êR„±í2˜Â®e9òÇ ª¸|]ªÊ0.§äIo_VEîg¼ÙÂ'a¥¦)ïîöx¼i·p%i˜§ÓÌùŠ´1 ‹ôÆ+ +Ïé8É´ -A«7Ã¥¥CN¾´²ËJY2‰ƒ\G· šGº)H ¿ÉQ¢¥c¨3\™`›bšÇ5²Ç†v·ÜsV•pË?üÈéžOþ±±Ì× ÏÀ­|ÅgóvÐWvà––Z0’»<{ Э-“†4+S™þ ×€òŒ‘“€#ÒÖ©/(Jå’šÁ.½º~͈S”ñràû‰:º&¬ÅºŸùBØ[¥Ê!×J?v“ÃoÚ¿Æôlu`¸Ø¹,J ,Úâàå ôdÑÔ±å<~î.Bf.9úƹ]küõ‘¯Ïé>Eês.ÊÂáÌ óêâÅ_ÌWW=º°V[÷Ñ!©b¼¡¢‚.©Ö­áapÓ²WñÅX•l\¼eEÙŠõëä.J¦êq„rMgSns¼ì´•ÿzÏØžAÁðð*V^0ÈZ0aàWdˆ€éŽƒ|åµÈí@vAT3´7Í”P&Cs ‰mwñiØ’†Ïv¨ÉO#pâxã°§•W\,n_ñ˜sȨ8U_¤\ØY'Tœ¥W"¹/´²n²/ª¯ž!šç=š'îS51ŒæŒrÊò$xïd€.d…V¹í¹nß‘Lª[¥Ë«%ì2C½*f¥ˆ5º3BpK >Ð'íÅéÏr n¼ö™ Gn²#ÜxQ±aß ·qW˜t9¿¹­þZjuQ ©…`NWõS©@ öhªðW¯S&!Ù)ž¥‰‚M¾[%€o(Ä€¤ªù6óÆ—é á¯îí\Œ–™7el.î·ÊÅ•1hHÇä68>¬Þ€’8Z¦|†öãÙ†ƒlo9õÃ\" _zÁˆË*œBÅpùÔw`°R¿ÀVa[ÜÜp­U…|fR(Òà¯Ê¾#P"J­jî›qš# Õy!€ãNÂù6– Ð}²ãIfðç(Å fM¾°Tó#L‘¬O+º}“´òiÉ]¥-,âö¹TKùROJ¨”éà ]a©w+’À?p8ßžpH€2ëÙÀnžp Ø~€Z¼ç•3)‡® Þßò(Žø•—'`ª¨¡*×㘒+Lå ¨P<ª³,öXé8víz·Co?Ký\g¼ýa[ý‘ó Så°Š–tŸzc¾v'†O.½Ö`éÆùcÑ}; }bž°Ã”åÅZQ‘r‘g@Œ'ASó ´æ }m•*ŠÂ(›²6 åͦݩ(,nk0·ä–âçt9|bëeœm][EñÍ9D‹œÇ^"¾JC•©%íÉŸ¢±² D^ê‘ÏÚ#.—èҊو㗭(ö{]ÂÙLigaZ–KRÕŸ"•²“‚S1Üô±kNZQ7Y®Eª<^{ðºãû/³ìõq{0…[½|··´ÊvývðoŸ,+~°“— º¦ñïxøü5=tŠ‹Xm@.¢ô.â[¤|úaÀo…æ_«åñó/äÍø³WO0BtÓ¹#¿”Òƒ ¯³ÏÜF߀ß“vGr+jžÕ”IV1Ȥ K8B¢%¯Vk~xxõãÆß® endstream endobj 988 0 obj << /Type /Page /Contents 989 0 R /Resources 987 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R >> endobj 990 0 obj << /D [988 0 R /XYZ 33.853 921.043 null] >> endobj 242 0 obj << /D [988 0 R /XYZ 68.868 639.569 null] >> endobj 987 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F23 427 0 R /F34 597 0 R /F27 556 0 R >> /ProcSet [ /PDF /Text ] >> endobj 993 0 obj << /Length 1775 /Filter /FlateDecode >> stream xÚ•WKoÛH ¾÷WÛ‹ Dª4£g±ÙCÐÇfQìm€EÑö0‘&¶¶¶$hä¤þ÷K9²åÊ)r,Qä ?2ábµï_„ü{uûâÕ;)QI"·÷‹4ò4_dyDy¶¸­_¼—ÃZ7K?‰OU>ĈHÒ©~¨ËÍ2ò´!ÉÐò/©Äž©·»ê–iï@û?]¯—ßnÿOü(â8¥ÛîÛžOîȼn&7éµ{6Žò NÒé ¥n†žÝ»¤3º.Xéá¦5Í×0 á/š»ºWU½33†í‡YÓ„L?O¬Èƒ/Ñ·¹[ê{ÒÅã>“þï$‰{þ륟 )½—ìÇM:µ!i£U?ÉsâÝ)ȋчÓµº£Çs©‚ðŒnÕŠE£ƒ?g¡73þÿA’bô?aüLÿSm7õ]>×wù+ßç"!“ðiïêÆÔ•>Åñzô¹Ô›ÍÁW„#¸Í»›œu7zÚ]è› ìµô ;‰F]g­|™†ÂÁmyäë4,jÉ£®¶d -‰ýˆ®¼zeÇ„à‡A^d _$d>øS-Eæ=Ô „"séYØAZáÔUƒDP9¹ýë¡2žV%°&©óô^‹Œ\D­JC TÜ“b{ÏǬñŽ©±¡×R5ôp·ôÁ• ítäΠϔï,H’bšoºZ¤@A›M‹7?RŒ 2ûƒúayg¤P÷{Ê£!e,-˜B­“ Q|{¦Ä{.¤ƒÕX?Èê,M"8àP‡Œ7‡Ó[gÛf Ž\]Ì¿UæûD͟כÜ{É4†A8knúS¤…}Ô[½Å”s)¡ñd–†àWmŒ}*¸ºøÉ–¦ÈEü£,klÜ5ù2-ŸH³ KðÉåìRÌù,“@ä©©¦š=Lò d‰í×gV­ÛPêz£8fwçSneYŒ°v7Ô ã¸8™€0ƒ÷kl–"õº^?Ô->|vCÛ×_hÈØr†m·™¸"ð8”©óøCݼQÛܾé·f.¸$•c¶ _Ã(.á2ºú¡6e{T:]SÛAù#O•DX(vô¸V†"b h˧Aª 0hµG´€ÛŒÈ€ˆš²Ý¹ t`À™wÅÊÊ ŸÙ*ØW²é5òæé kBqVš>?,ìâ¿ÚeUœ3)” 4Ð+§Ä%`?—=PMEîTËjËH¯ƒH$Ó6Órj{K‘[2L2¦È$€Íz”ÃQϪ¨ÌGØæ„£+0¢'€"TÙÖÞ`~Eæ `ÒODâÝÚŽM~&\•­­U¥ýû^­¶šÊäÈ; âü„×x¨ÔšjC3I¢Ñº6Ô¸I¢¤ÝõÌê4Ñm¯Ø‰Ž_¡Ý0_<ŸE÷naçñ¦-¸Lê%“|àMY=´5¨²ÜÁšÎNõ;¤ˆ‹HVCJWû³3†ëªOýÂr~.$³Åþõ iÔvºdÿÆñý6;)؞̊ <3~\c9.çW¦§ªs“Ç‘ãñÄ~ƒ-,SÞZRÞPðˆøRŽ£@ðöÓþ“c¥néB€Qäuí°kHÌIÂÖ‚¨V6tVƒíÅçÛÕÀþ¬ù|Cšº´,êŸßkJ^ôdšÒ(L³QX;4VH¹C¯5ÿvUbsUôªî;šáçb6^‚‹¡í*”ßý“×Ù»æþ_²„•Ûu2áö̼q}µ²²¯»Á²Já]i`]Í6UÅŒâ6Kž¡«¤hDX2b"!ã–l÷Ë‘?Æ{/\XÈîp×ìÿ¶G<7e–èÉ0Ÿ‚0 ¦:_ü¸ÁU '‹Â–¸‹ ³žìC~ˆåMEú<Ù’ñò FÂqŒfƸM ʹ'!2ƒâĤ™Dža4΄ϳ '`s‰Ê%º“{!92.QÓcã8(bñüS#û/éÅ48aìàòa7+BAbšíŸÖð GõßÛá]_[Ÿ›ŽQ()Ç…ç÷fRŒjáÖüB« ³©4WoÜb/& ;Š.Ñåò¹Á]Ù+ÿX ŒR™M¦?;7€…ð꺾í`©4á'Å-xõS@ü©us[ŸÀ;`Ž‹©hÇ#÷ŸXÉcé:”^Ö긑QŒ€÷â#\`XZgžUhŸg·y‘¹ÌŸ±#EA,’3  «V4£í­í$Œžw}Vçé¸Ù'sÐaÞíùW_|¤1†¬‡Ó¢a&#ÊvM¥z¶(µ*+Ú­Snôfz£(¼Òèã™ÇÅš9f† ^ªö°§ð€°‹‘\yž“]N”ÞÞ¾øv*_| endstream endobj 992 0 obj << /Type /Page /Contents 993 0 R /Resources 991 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R >> endobj 994 0 obj << /D [992 0 R /XYZ 33.853 921.043 null] >> endobj 995 0 obj << /D [992 0 R /XYZ 68.868 188.552 null] >> endobj 996 0 obj << /D [992 0 R /XYZ 68.868 163.986 null] >> endobj 997 0 obj << /D [992 0 R /XYZ 68.868 140.749 null] >> endobj 991 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1000 0 obj << /Length 2857 /Filter /FlateDecode >> stream xÚ¥Ûnä¶õÝ_1H_dÀ£ˆu Їív¤H¶ÛÚè›E K´G¨FšH»þûžu³f“tçEä!yÈs¿L°{Ü»ï®ùþéîêëou¸SÆM¬ww»8õÓ8Ý%iì«4ÙÝ•»^ê‡×{¥täÝÚîé:T^{½“È{Æq^×=Oókå5%‹¶é‡¼Á Cú¡³½ì¼‡`97eÞ½ŒÊj¨àØõ§»¿|ý­JvJùYѳ‚Ý^k_Åò¢7€ÇDWÚ¾è*À¦Ï– «þ;`yèZÚVž ¼Eö´no% Ü{ÈOƒín’} ?×yÇ[úƒuÃÂñ8Ì;¹®nóÒ½å©Êe‰B*€ÕÆÄLEÑó}Õäü¤0½ö¿9uJ| Œ÷„cÛ U‘×㞟ešªydÀ 9}Ʀө®ðE8AŠé{°pâA7ÏÙ,”ʳ6(`,a†…WµÃ$@°Á(Çw›€‚éHPâÉB—Ö6%Æ»»N5)€ûê(|ä÷B¦¼ß‚÷‡„ÁEÞºêxª_dELVg÷çÞ"I†H$… ùBF¡„Ò‚ü€rïþ~nšü¾¶[J¬àjwÈ= o±MÖ@·ІâÒiDÊŒëoY%y#·´òn[žç½† ‡<\Èv:†uÉ%ÆL?VóLŸæmç²Ír  6æ×…¼I¢ûÜ(f¾„ëR…™òú]y¨‘6јi0(NcûgyÝ·<šøIŒ£Eþ,5!KÍFˆÓl£Ë#K”ÃÌ^žºï%æ&©¯ˆŸÑç,v(bG Ä‘>ƒ0qø°VÊ)_CаPèï‘ÊDy~÷#fÕƒd­:ÕkÆÂ¾•~"ô±@Ÿ‹cŒ*¨ž„’8n{Š,¡š QRî@r%t°ÝƒØj€³Ì*ÍCf6ú©8B®@hƒ‚r³"Ž"?ƒ´x–ž¦¡÷Fb–éXá4de” ¦%ˆq¹Špz‡\°ªš¢Iò«&7 0 ¦ó(¨Îþ8",+d¸‹°%¡šì0-$q ˲® Îæ{›œ*¾@éuU ,y­6VVI¤8™AH¦Œ]i² ürDPjd²3 $Û¿€¨]>iÆdEÜÛu¨YúºîG æÚøåj £¸< J¼L.ÂÁ)G§P»•«!™|®†Ã ù$u†i ´ƒ,£‚ä¿€ª‘rqìËû `rfb$PS»'Ç–ÌMŠ0ñÞrÀ°¿œE§@À2±Ù…ܼ¡â¶Qé`$rãw:V€L´à røb T[OïàvHΨÆžÂ—µ-mCHΟWº…@R пd1f×äóa¶Œ¥„¹(Ø{Ïîgq¤NJ)JsôVycÛs¿•d; ØÏdjb*ry}``Ñž»žƒ’Y"˜/4sV"]Bé.&“éåÐüŽ ú‹÷rW­ytwC Ü ±/ ²/eöá Òh'xœJë*« Ôh•ã6Ú¸Ivé³zÜM=òc7Åí 9T¡aý\ @OÒB,l)Í5Eݤ JDW`O¤< ˆ[ÎsФb÷þ|¨\·Á9fn9’¾k—;íw.†ÎåbFMr Í<ɱ”ZM´Õg otáUE:= <eúÀÁÕ³”?‚ÏãÈPpæm$Q8XT]q>ò316•ºúÑ÷'ÖhÍzDA`º¶{´ò˜.?U媯çüoSrGzÃ2'Žÿ'žrX£=¢wæ>.Hã`›ÕÉe\¬8Yήˆ2Žù$1òp„ö;Í<Ùl¿pTd"çF*Ü*[º‡7õphϨ]èQPi …®ÆøäC3ú;æIßWT]‡â£èÜ2gEPÎ;8çH<Ù8SrmmQèÈ‹Ü' MU#Ý€ùëLj¹‘³Â0NÆzàsW“ùzJ’°ÉAƒDàÙžk”rKÛò„íƒ4sT]«„1–xµ0ìâÿ ޶CM¬–É¥5WîûRêtEl‘KUÂsd¸vÎbâ¢ðÛþ›Ùë óÖÒpNg}ì‹køÕ»uµ2èmú…Œ/Q‹3ÀÞÿÝaU¨ endstream endobj 999 0 obj << /Type /Page /Contents 1000 0 R /Resources 998 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R >> endobj 1001 0 obj << /D [999 0 R /XYZ 33.853 921.043 null] >> endobj 246 0 obj << /D [999 0 R /XYZ 68.868 798.142 null] >> endobj 998 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F33 429 0 R /F34 597 0 R /F27 556 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1005 0 obj << /Length 2492 /Filter /FlateDecode >> stream xÚµY[oÜ6~÷¯º/2àaxu)Їn7)ºhÓllì>$A!K´GèŒ4Ñʼnÿýž ©å¤Áb_<"yxxn<ç;´Œî#ý|!ýïßo.^¼2&RJÖêèæ.Ê3atey*TžE7uô.nÚÑõe56]ûºÜ»ËUIüþØø»ñS¹ÛýqÛµõðÝÕ凛çJD’¤¼û®ë+ÇÄ?ðÖ»ÊðÄ{i¥¼RW>mÞ¨\$6]²«/^©ìTX8Iƒ¼…—óu7ÂAFñ¸-Gø22þt©óØñwÝñjÛü1L‡Ãî1lñT-©ˆSÝÝé|³,uyt;ù3ú(ú3ÚCÙMµs›å¦¦ÅálÏ5ƒÝ÷Ýt¸b}—Î1©HTôDG–G²‹—7/ÌËHE ¨²ÜF™²"µ*ªöï>Ȩ†E8 ¬•GŸˆt‘¸m]_ük-T"E’¥Ä+Á)<—|½æ#Ðzé»3OD.‹¥‚¿´—]¤q××h6ü;üµñ¾ôÂ_Zù8•C³Æ¬É4îãÔìšÛ¾™öLHÉöø1l]Ù3qåÐò4Ùì‘ó´+ÑðÃøCê¸=éËúáÒ&qÙn|8fÂÚ ¿õ†/ï]7ÁcIn,0j›±‡<òtÓV½+Ç‹0]BÀ5®æ¿H°kZ9lžØÍαõTµš~ewãe)+Ü·mÜþºZ¬…×ÍÉYжDI´L³Cƒá$êC¿x(®zÅx¶¬À ¼»Ìdع½óa]ûÉöÈd-޵©4!Tþfûµ+!ÞNm[ÞîÜZt)áe’c|mÒ<‰\ã¿IŒÆdKÅ¿ÄÜjQ̡볇2ç½T1ZRØFÄ‚Vô ÷ŠJB§ó}½výCwÔUŸWÓ†Mt‡' tè;”ä¡©) `M¿?Á d[7Ÿ)+pBèï#þxûóEôŽI!µE¨Çëª 4D²4Üï-š6ù‰³st6§mÊÉ —ÙpøÕ;¼Éƒßåé’› ¹ÀG÷䉲­=%ÇZ3¸À°VükÁnò/yVΞmÚu? [Ìn¢äAiƒ,ùR¨ì¬ =ç;®]žÑ÷ ‡ß'± Þi%û˜ˆ¬c)Ö|ù<  Yk¢ÂRZŽLèwÀÖîÀ3Xʼ†ªo#ÖïW‹vßíçC!ìOÏåùS ŸÌ3Ö¹È _<Þ !>,”W¹¬ëçN ¯^ÇÇ–\½qª‚Œ>–­—§íú=f,RtìÝ0¬*9 Øìèµ@5Ï(„6&Fk å×aÿÛ¡Y°Äº ‰þÏ€JÈ+žß(9l _`Wtù’­¯j`¿~¼iÎÄ‘«"ôåþð„N–_ÇpOœÐì¸þMïáõèOãzᨿo¨hJÈNýýêÓÀS@+i HDªÒg²õ+Sb…²'IbnªF>ëåõãõæ a@„³ô{RøezD œŒM!²L/íåÁ@q%Ry€Z[žz¦ö*0R®Õ\ë C<à^ž›Èd°/ùŸ¤V…°YB¬²Äßõ\Ï ù 8&kЉ5¢Àb Dª½)Ö×2Í8’}x‹Ï T±x†k9:£ÜW€ëõê53iÊ@jcå#üÅ+½;µ¢8"ß×ë1"ŠÂ†?ßAc­‰ßºŠ[„4 ð#q,]u{â S ®Ð^þ4Ò›Ç.Í“Áþ.p„ã<— ª:KGÈ4³1Ôv¶!þyä9RXkHŽì™ÌüØwTÑk¤Ùù/Íp½=1©—¥ÇÝG\›Q*/UÒ6í½ øÔû³X Üä'©ÌÛM§ÁnÀŒÎϧ¡oD…?ᬯhÇ^†?OÜÒꦶ.ûGž©ë† —½ß|†Ñ3Úy¶dì¡©üFn:ONŸ•Ññ•¬©A>ÈÀ˜Ô6H/BR  @†Ña¬É$þýŽ×«nê‡YK}Ò²šÓ®æá-¹Õó¡ÞÜç/ÚÜIöu‚¸¿ÚMµ'ºý:úÏ!»@ZówáUãvõuùàúÕ¦rȺ’ÿ ÐqímÏÍÂO[Wýù¦£š»v@Ū˜óá¡ooRªP'!ΤŸe?‰íŒ¸êÀ¦Ö}=ãNŸé¼¼UžÛúðcÇÊDHèÞ—9{2-ãipÏ< dYrÚM »þ+–U&Zéc%àCöP€è¶á€»@ø¸vò×]ßx…pTqÐ4RiÕ„üAKÉ ÉÜ*aC&ÊÏ@7¾þzµÜãÀ%o)”×`\Ò]ñwÒñÓJ˜Mg{Ò€œˆÜnD„Ç \ߺðj“Æu³ó--ŽX¥ª‚ëÁ´õÔ³÷µÏÉÂWƒyÝ$i `Ñ4õEÂêr£”¶ñOpÿ¦1 ýÃ’,¼QÌg£"jÅèóØ×Q¢@9Ùvßĵ‰švܾwuS>Š´Pé †ù¾ÄLúèÇSÏíc7x : ~ÿñò7ü0s‚9~T¡Éå£ /S=E¾@ÉiÓÊ %ÏC¤µg¤P¡T`¥XŠþIÂÄû$¯ÀDsò¤÷ \9ɉÒ9°G¼´Žç9ËãŒgªC„ÃÔ©3ˆ 9Ãç9Qt+} µ"ôB¢LP+ Ã-Ç-Y<Éæ‹Wó=¡Àì®ô׬ÒaµÁE÷9Ô„n|€ ”$ú¥ ŒÝ:ƒ\㣂•Ù‘„T_íÃU7€Q*®ñ'W!•õÁbÙ±0 æ(Z9Fz^€àê°ÎW ¤CÀå¶Ý‚V qøÚ$ `8qßùײ5 @r©bÆrð‰ýex…o]ýÇÉQCAã± ® Ÿ:¤‡–y€–Š¡%å¾–_„ÀÚðQ†äG¬í`„¥;þ WYx:VD LAÞLŒ¡ »âŸ8P3rÑyÙžIÈAõ5ø 9 àþüšò^êÔ“Ù(¸(ÕI!bˆ¬0'R¬¨GºˆN(&æ‡,@ŠŽ@^°ué§gs/ŽfÃåç®\ÓGËúˆùyñ•§ÉÊØ,_(³Z"Áä*YW¤næG¸ü¬äQÊüx]µgÏiÇÆ ÊIxªÀ2s‡ndí`ô¬·”IþÚµ«Oc"5éŠv V#œX;<Ó`(ÚŠJè´¿/Éy¼¹ô—6:!|/ZU¬¨Ó(„”}³o—-.TMˆù"ÊÁ˜P¾¿Ð₹µJ–=®>û¿óãèÌ|³[NžÏ ¯NE ðÿ*~C¦;@¥ÿuw:Ô endstream endobj 1004 0 obj << /Type /Page /Contents 1005 0 R /Resources 1003 0 R /MediaBox [0 0 595.276 841.89] /Parent 982 0 R /Annots [ 1002 0 R ] >> endobj 1002 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [494.431 654.016 520.156 666.967] /A << /S /GoTo /D (subsection.A.18) >> >> endobj 1006 0 obj << /D [1004 0 R /XYZ 33.853 921.043 null] >> endobj 250 0 obj << /D [1004 0 R /XYZ 68.868 237.121 null] >> endobj 1003 0 obj << /Font << /F33 429 0 R /F17 421 0 R /F27 556 0 R /F23 427 0 R /F25 604 0 R /F28 616 0 R /F30 591 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1011 0 obj << /Length 2101 /Filter /FlateDecode >> stream xÚ•X[oÜ6~÷¯ü4d‘u à‡./\ i76¶X8A Ñ3Du™J»î¯ßs!5ÒTÞEc "Ï!ÏõãDÁ>ˆ‚^Eÿç+àÿ(Ð*Ì#$¾Yìê«ß¯¢0ŽE"‰e:†E¿wEÌ'$*£I,RO|WË(øØ^ý þü†ÍD̄굙œêWïoAœa®µ ž‚$ ³$ tš„‰Lƒ‡2x\ÝÚý©3ëM,õJFÖ›DÅ«[›Mo:kÖbÕãb²jŸ˜i8&˜¯‘Pf7ØçµÌVޏ=U¿1ßSga­m˜¾k×™ÒždgMƒ[^zêÚš·Lpñe ìí¦„“4=ˆ)ªõ·‡áºƒ…>}Ñ4ÈwªŠn½Q°·??Ü™ªÂQºêm"‹„´¯‘ŽH3H}«ÔÔN"S¡ÈsPFJH&J ¯Ì>7kªÂL*Ï ‚Eˆlcè©Ó0’à‡:ΘñOþz´»¢ª^áæJ‘ÀüÃhþžéd{\ ÛÃÀ™–&fú[f†%Ûó·@Ú3ê6]±7¥[mœ¦®4SÖ:Òv(lã7/8¡6EO1$s>ªÌ% °Úðˆ#wh.·ô×s§«!Äp€`ô’ú¡hÊ¢+YAiž­ó'.»7=Û† ŨŸN·pp<+F ƒ¢4ûÎ&úÅ絆{w¶ØÚÊä³9øî7ú'Þ/ HC­ó¹ö;tLšAxµ§ Ýæ«-›Ú-ߨ=õL…ÛCþ~ï.\lùkzŸb0~‹q’9b€4‰˜-Z~®eà%6³[h¾ÅÇO?—P>ób»Ì#"f^ê3¯‡Q¤9· s4†BP¸xŠùcèŠÝàˆ `Ôs6²ùn@xj!={&ÂNÛìcsf\p?’âEWמöàŒaÁâò–ʇ¥íUÕRÉBÅ åDÆ)Ôݱ@ü *ÿ u³ín­©Êûâ\¸PV„LB}®+/Šç™„úù¤ä •ơʒù5Æé‹Î…mWàæž”ÅP|˜+ÿ½¼ØΓj'”Lþ½§³o4Øú?zñr¿tuå–3! c}qÂØô¹¨ÍÍãõ¶†¶þŽ”ëw,ùzhLøönÉO¨ˆ¶_ßâ©®ç\ÚsU†™ÀÁ߉1„Û_¿!²2Àitsýå‡_¿ßúr÷é~™÷?[³· vÌûÁo¢E&Ó”#‡ˆðß"Ûàxîš]w#\ÒM ¦Ï=fi?Dj¸ë dÿÙúÔèÎÞò[/£í¿ìJ»ÎAiÜÀ¸e²u¯‰âx¬,éP¾ôO Kí‘)>Ry†mäÅfjÜ.Ÿ ^*Fqéå\v¾Äþ>W0¾˜.¯ósƒGW`_ƒR,]5t {™"V< Æ1(l¯<ÄÙC?í©ë1éàDºÒ–Ÿ”ÆôíÒK]q´%¾Õhb{Ó/6qjT„ á„ǫץìÊe(”8¿eâ¸ô,Á¢Xq‚)f¤Ãs§‹fÉAsJ‚ ç×H-ö{¡B™Œu$Z:›3=ö¤KB@†–ž#ÑÉZEˆŒƒ CÞ¡r"®f£@þm+ãÆ•-9]aB­K»‹Òù ¡FWLŸ÷°Š†ÄÎè2:¬ŒÅ%ÔêO_ˆo9bñ=æ^iþ E?<Œ~†èc¨sùzÆÕÎÔðæÓÂVJÞ<†‚¹žyzФâ,ý©xìiÃùG&¼LÃ#Šy. YL© ŸýÌ$HMB3–€N©œ¡º@U°Ñv -¹?¢ç0«’Ø›.!Õø¯Ëùľ8aÒw UX N¬šÄ=b¶^&¬bæ¢J§Ñ5k÷Ʊ°ßÎÊþ‡¦Í"ò¾T+Rnºð]ŒúƒZü°çòEíªh½S¦ÄŽv`ÊÁk.MÖìÀw%S\fvkax_ŽJøÒ³Ç¢\¹R´IàÍ©¹ ÐÊîq‹¥Kú(Aã€~µYú,Òáù¢Ÿ¿´Ã½‹£`7MåôW0ÖÁQßó„Z~J?táÔå"Œ¦5X¾]ƒÇfO²ð©ÓS¼¢È~ŽáÑ‚gáf…§jÆ€ÿÌÂÁí endstream endobj 1010 0 obj << /Type /Page /Contents 1011 0 R /Resources 1009 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R /Annots [ 1008 0 R ] >> endobj 1007 0 obj << /Type /XObject /Subtype /Image /Width 638 /Height 417 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 27508 /Filter/FlateDecode /DecodeParms<> >> stream xœìÝwXTWúðï0ÀH¯‚ÒìR4•h\Ôˆ}ÁšØ±D£`‰&SÜÕ5›¶²b4›üâ“5»F×4‰]cE’(ŠŠ" 24AŠÀýýq.w 3×)ð~žÓ}þãÇÇŒ#“Éìííu§ÖÐÜ FívíÚåíímaa±iÓ¦åË—Ïœ9SÇg›©ÀºïjëÑ·WŸoµ!)_cƒ®Wěӈ¤ŒòOµ…¡ÐÛb?^RËÝÝ}îܹEEEâfñí·ßÞ½{÷öíÛ<¨ûÓÑ£G÷ìÙSÇǸiÓ&ýÏoÊ—ÀqÜÒ¥K׬Y#—Ë###CBBBCCu|¶)V»vmEj\âúøè£z÷î-“É\]]§OŸž››ËŽ _›6mÚtèÐaÚ´içÏŸo¾bÆ1ð?Sø§ÚÂX»¤?þ£>â8îÎ; ,°¶¶þòË/EL?==½W¯^~~~uTYYùöÛo7(µ†ž/ åK(..ÎÏÏ>|¸‹‹ ÝU^4[uÜUm*++­­­”K||ü¼yóž{î¹ÌÌÌÕ«WOš4éôéÓìGìkóôéÓôôô;w†††nß¾}öìÙ JßðqÌ7_£üc1‘Ü[Ž´PãÆ›={¶ðvñâÅ¡¡¡ìu‡~øááGvvv§OŸæ8î…^ذa;Ø·oß-[¶°×o¿ývÇŽïÞ½«–¾ð-bõíÛ÷½÷Þ3fŒ““Ó‡~¨œÚÓ§Oß{ï=KKËnݺí߿ƌÂÇ===Õr/))yõÕWmmmÇϪ¤,‹µk׎?ÞÕÕÕ××wïÞ½u/¼n^ÚT¾f̘¡#Mµ |çw¼¼¼¬­­ûõëwþüy®{í:[¡|·•ùꫯžyækkkWW××^{íÉ“'¾JöíÛ °°«óµá8nåÊ•ŽŽŽEEEjŸÒ–‹¶ß‘¶ãú|uä¥í&|÷Ýw]»v•J¥®®®S§NÎÿøãgΜikk«\m¿¾Fä«ñ«¢-}åkT~]ï…¨ýSýðÃ_~ùe›   Ë—/'%%…„„Èd²#F°_kSîsóýSmÍ(ô¶XÊC322W­ZÅÞ6(ô._¾¼k×®éééu³xóÍ7§L™"¼íÛ·¯³³ó‰'8Ž+))QN-22ÒÏÏïðáÃéééÇŽ;zô(Çq¡¡¡111ÂǕϟ6mZ``àùóç¯]»Ö·oßšš–EÛ¶mÙ_®;vØÛÛ«•Jc^ÚT¾„‚‚·oßfo_ýu!ôjLS¹ÀK—.0`ÀùóçÓÒÒ>úè#—¼¼<V»vwUÇ­P¾ÛÊ)|óÍ7¿üòKzzú©S§‚ƒƒßzë- vìØaggWYYÉi ½YYY8 ö)m¹h»dmÇõù6êÈKãMxøð¡¥¥ell샒““·oß®\¶­[·¦¤¤¼ûî»B´ýúš/§å«¢-ýzC¯¶ Qû§Ú¶mÛ¯¾úêÆÓ¦M  ;vìØ•+Wüýý…27å>7Ó?ÕÖŒBo‹5nÜ8 ™L&“É 6¬¼¼œýHÏлyóæE‹O²jê†Þ…  o…Ôòóó--->¬öqmÿž=zdaañË/¿°ã‰äܹs,‹+Vqvv>~ü¸ršóÒ‘ >¡W[ù…ZYY¥¤¤?zî¹ç¾þúkÖ3ôê¾Êw[›øøønݺé8¡¸¸¸{÷îo¿ý6{[7ô²búé§zæ¢í’µ×çÛ¨#/7á?þ°´´dáMYß¾},XÀ^WUUÙÛÛ?~\ǯ¯¡ùjüªèH¿ÞЫíBÔþ© •œœ¬üœ´qãÆþýû³×M¹ÏÍñOµ•£aV-YxxxRRRRRÒ±cÇŠ‹‹çÍ›× üñLJ:yò¤———ž ¨{099¹ªªjÈ!z&’’’RSS3`ÀöÖÇÇÇ××—ýMЩS'áL'''µ±cóÒ`½ê-rròÓ§Oýýý…qm—.]b•Åz ¬›î’k¼ÛΞ=;pà@;;;‰D2vìØœœméWTTLš4É××÷oû›Žbp× \´]r£o…޼4Þ„   ÐÐÐnݺ͚5+66öÉ“'„ñAR©ÔÍÍ­¨¨Hǯ¯¡ùjüªèþzè¦ãB” Õ¶m[µ· ú¾éÿÍašòOµ•£ÐÛ’999°¨O>ùd×®]$‰òiÿ°7Ç?ÕVŽBoKVTTtóæÍ›7ož8qâí·ßîÔ©“¿¿?€!C†ìر£¼¼¼¼¼ü­·ÞR{dV6räÈ;wΚ5«Ñ8¸¸¸,X°`áÂ… ™™™lì __ßsçÎeggççç+Ÿïîî>eÊ”¥K—^ºtéúõë³gÏîÓ§OÿþýWSÔQ~墢¢–,Y²oß¾ÌÌÌÄÄÄ5kÖènÐÖvíjQr???™LàÎ;7n¬{Çq“&MJLLüøãSSSY¯Dee%û)ûÚ\»víðáÃ3f̈‰‰Ù¼y³££cCsÑS½ßÆFäuùòå7Þ¸q#++k÷îÝÇ)7~ªÑöëkD¾¿*øz4îBtkÊ}nŽª­…Þ–lÿþýááámÛ¶MHHJ¥Ö®]Û¦M›öíÛ÷éÓgôèÑ666:?~üÖ­['Ož|æÌ™F—äÓO?>}ú¼yó:uêYQQ`ÕªU7nÜðññ R;ëÖ­ýû÷9rd¿~ý<¨s±Æ¼š’ ¶4•mܸ1**jÅŠ:u3fLjjª»»»Žu\»š†–ÜÅÅå믿^±b…ŸŸßœ9sV­ZU÷œŠŠŠøøø‡†……õ®•žžÎ~ʾ6}ûöŒŒ¬©©9{ölDDD#rÑS½ßÆFäeooèСøùùEGGïܹ³sçÎ:Î×øëkÜ5jüª4ôëÑè Ñ¡)÷¹™þ©¶fj'„B ‰j½„BˆAQè%„B ŠB/!„bPz !„ƒ¢ÐK!„…^B!Ä (ôB!E¡—B1( ½„BˆAQè%„B ŠB/!„bPz !„ƒ¢ÐK!„…^B!Ä (ôB!e~¡7::ÚÇÇÇÆÆfÔ¨QiiiuOËå3gÎtuuµ¶¶~öÙg÷íÛgð2B!Z™Yè]·nÝ–-[e2YxxxuuµÚ9QQQ.\Ø·oßµk×FýòË/ß¹sÇ(¥%„Bê’pgì24@HHHXX؆ äææzyy%$$ >\ùœÀÀÀ3f¬Y³@UU•L&Û·o_xx¸qJL!„¨2§ZoEEERRÒ AƒØ[€€€ .¨6f̘øøøœœœšššo¾ùÆÙÙyÀ€/,!„¢™¥± Ðr¹¼ººÚÃÃC8âéé™››«vÚ† ¦M›Ö®];KKK''§øøø¶mÛ¶¤„BˆVæzë’H$u®\¹òÚµk¿üò‹‡‡Ç÷ß?qâÄ .øùùéŸ!„¢§FôÛšSèuss“J¥ÊÕÜììì°°0åsž}š½ÍÍͽyófÿþý•Ï©®®®®®¶°P\—D"©¨¨0hA !„íÌ©Ö `Ù²eQQQ¡¡¡þþþ«W¯ dµÞ˜˜˜ëׯoÛ¶ÍÁÁaðàÁï¾û®³³³§§çwß}—œœüïÿÛØ'„Bxfz#""rrr/^,—Ë'•J¤¦¦&%%±sþóŸÿ¼þúëcÆŒ)--õ÷÷ÿî»ïh„3!„ÓaêÍèÍÍÄ;L¼x0ùšxñ`ò%4ñâJØdT¼&j\ Í©¯—Bi(ôB!eêuùæfú­„BL58· !!!Ÿ}ö™þç2$::ZÿÏ>~üx̘12™ÌÞÞ^wj ÍÝèÔ.m×®]ÞÞÞ›6mZ¾|ùÌ™3u|Ö¤.„bî(ôß~ûíÝ»woß¾ýàÁƒº?=ztÏž=u||àÀ›6mÒÿ|CR¾4Žã–.]ºf͹\ªã³M¹µ{B!f6¹ˆ4·ôôô^½zi\w³²²òí·ßnPj =¿Y)_Zqqq~~þðáÃ]\\è®òÂÄ.„bî¨Ök~ 'L˜`kkÛ¹sç°ƒ;vܳgp޽½ý™3gt$òÎ;ïtêÔéÞ½{ÊÇ¿aÆݻwK$’9sæ Y³fÍ‹/¾èììüÏþS¹ÝµªªjÍš5¾¾¾VVVÝ»w?pàÀÌ™3Ïž=»bÅ ‰DÒ®];¨¶Ó–––Ο?ßÅÅÅÎÎn„ YYYìxHHȺuë&L˜àæææçç÷¿ÿý¯niëæ¥#Áªªªwß}×ÛÛ[&“õïߟím¥|i‰ÄÉÉ @÷îÝ%µ„è«1/µ ¯›¾¶ ©{O!\ëfvw oß¾NNN_}õUffæ'Ÿ|beeuóæMŽã:tèðÃ?§ÙÙÙ>}šã¸^xaÆ Âg·lÙÂqÜòåË»víšžž^7ý7ß|sÊ”)ÊÙ9;;Ÿ8q‚㸒’åÔ"##ýüü>œžž~ìØ±£Gr#|\ùüiÓ¦ž?þÚµkaaa}ûö­©©aY´mÛöüùóÇíØ±ÃÞÞ¾¸¸X­TóÒ–àÒ¥K pþüù´´´>úÈÅÅ%//OíÒ Ü¾}›½}ýõ×g̘¡#/å Ñ–¾¶ Q»'„–¤qAÄÌèÌ1ô¾òÊ+ÂÛ¾õÖ[œÞ¡wóæÍ‹- `ýuÕ ½ .Þ ©åçç[ZZ>|XíãÚBï£G,,,~ùåv<##C"‘œ;wŽe±bÅ á#ÎÎÎÇWNSc^Ú,,,´²²JIIÎ|î¹ç¾þúkN¿Ð«íº„ Ñ‘¾¶ ¡ÐKH Ö¸ B}½æç¹çž^÷ë×/99YÿÏ~üñÇR©ôòåËÊÛëP÷`rrrUUÕ!CôL$%%¥¦¦FXÑÓÇÇÇ××799™éÔ©“p¦““SQQQ½yiKÀÓ§Oýýý•OÚ¢ëUïu%''ëH_÷…èb¬Í+if!Æ@¡·…PÛ¸ŠÓò'uðàÁñññ z¦li)Ú—DÛîZz^Ÿkjj<~üXã䨦Ó~£/„B !­ ³2?—.]^_¼x1((€£££PÇÊÉÉyòä‰ÆÏ†††îÝ»722Rãh&ýYZZž{öì>}ú¨íµÜ ¼´%èââµdÉ’}ûöeff&&&®Y³Fÿ6ym×¥|BCÓ×vO!­…^óóæ›oîß¿¿k×®Ÿþùÿû_Ö»víÚ6mÚ´oß¾OŸ>£G¶±±Ñ‘Âøñã·nÝ:yòdÝtûôÓO§OŸ>oÞ¼N:EFFVTTXµjÕ7|||X]\ÙÖ­[û÷ï?räÈ~ýú988ø€½nв„´LlÛÇ]ãkí=Ô×Kt Û°a€ÜÜ\//¯„„„áÇ+Ÿ³`Á‚¼¼¼}ûö©}vùòåyyy;vì0\q 1qüQ£ðð!õõš_ƒs½ €íÚµ“¨:pà€Á‹IÌ^EEERRÒ AƒØ[€€€ .¨|øìÙ³uœ`vw€̃üúë¯Â‘aÆ-[¶LùœÒÒRÓ§OŽtïÞýÝwßUKŠmnøÛo¿iË‹þù“VáØ1nà@ÎÖ–KL4vQDÓ¸GæTëÕ³P‘‘qìØ±9sæ¨|¤eqss“J¥ÊÕÜììlåJ0[[[‡îÝ» Gºuë–••¥–TŸ>}dffjËKô?zçN¢§âbÔÔ@*¥AÎæzõiTöí·ßvèÐá…^0HéHK#“É‚ƒƒOŸ>ÍÞæææÞ¼y³îà ¸sçŽð655ÕÛÛ[íœÄÄDubyyÆÉ·¸¶¶prâgµbæ=¹H÷†¯ß|óMDDD½›Âj<*À²eË¢¢¢BCCýýýW¯^ &&æúõëÛ¶m°bÅŠqãÆ >|àÀÛ·o¿wï^DD€E‹;¶]»v·oß~çwØ«W/#_!ÊËѶ-`Œ%¥ªªàá²2£Åþ¦Ñ‹ñz™SèÕØÈþÖuêÔ©»wïΞ=»Þd)Êm"""rrr/^,—ËÇ&õ¦¦¦ ówGýå—_®_¿>###000..޵?Ëåòùóççåå¹¹¹…‡‡ÿãÿ0æ•"`tVVFȺ¼ÖÖpp€–ÕiLœÆ`Ѹxlf³Zõ™gÉÌ›7ïîÝ»'NœÐ Íë%„´.»wcÊtîŒÔTCgýþû¸EEpwÇ_:w/ÂÓ:ˆ˜d«˜×»lÙ²/¾øbÿþý7nܘ?¾ràüùó…ÓJKKøá`E!êþøêLË4„š´m 77 ZUVâ믛·T••èß3fèu²Dñš—ë2³Ð±víÚÅ‹÷îÝ»¼¼\c €~øã¸É“'¯¤„b’ªªàþ}•ƒ]»6k¤áÉd(/‡½=nßVÿÑ`Þ<\¼ØŒ¹¿ô4h´c³Í?níÍ­ÔàLi]¢¢ð미~••Šƒ†ÙËoÕ*pÚ¶EBŽWùQ¯^øýwlߎ¹s›+wvQQø×¿T®·²½{ãÐ!tì¨~ò¯¿âùçëKµ48Bi’²2ôê…§OU*ÍMoFptD—.8wNýG2ÔÔ4&Ù‡0dšUú•ÅÇ#9Ï<£8rèÿ¢Ù¼¤ÐKi5š¹ÏÔUUaçN}ø "|„MXŠ‹CïÞ(.V?5»¹¡¬Œb`wƒÝ„iÓ %…?¹¸}ûÂѱþg‘Æ¢ÐKiéÊËñÚkX·¼¼Tþ蛡6Ɔ+cÑ]ÏÚ§0—7(§ˆ+ÙÙйsý‘†u‚æåñ5W]¡X¿^=Á'OЦ ¸¸`ÏÅqV™vuåKÒ Bïò×_àFݽ«~š\kkØÙáéS”•ÁÙ™?ÎvMž Å£IYºt½}ƒ«õz£ÐK1[……ض­žVA‰D1 €§§†a5âÊÌDl¬˜ ^¿Î¿¸w+WJã¡XÐÒ³rV^ŽõëÁq°°€§§bB«U·i£èj­;™aÁ»¬Œ¿‡BK¸@¸Õ bíZõZÅÅ|Ì+(À… ŠVÑ5®rÅTWkÝìHhøâ :ÄßvC”‡p—•ÁÍàxü˜ïoÎÎæ‡7ÛÙ¡ME­€‹ \\S ×…^BˆØÞ{Ú7'Ó÷ßcÁ\¾Œÿû?õ Ó@"Q´Ð:9ñ/ºtÑP%—¯/ôظ¥~åå  ••xî9ŠÕ X¦ÆÞë’õJ[f&ù×îîŠVÙO>[[EµOˆÊj±ÌÊÎÆýûðöVYšÝ!ô²‚}ÿ½z©ØàjµÍ7>„œñà† 0lœ5ŒÌTÀºv¿(Ög,Œ#«ªÂ£G°²‚•\]Q^//¸~99èÚ:tPùÒvìGÇÆÔÂõC¡—"ª‚|ø!|}u³t)Þ|S„¼XhÙ±‘‘˜2EåGl±$ÖÈœœ¬¨Ïõì @}A Ý^}¬5n†Å¡T*|lqF†Ê998ÀÁAåÈÝ»à_Ëd|squ5~ú Ú·W\cADÕ†³Öµü *ÓpÙP/¡:îâ@eÁH×ÙlZµÃ¡º¶¶*ƒ®•ué@ÃB¢£áåŽC¯^(+ãO±ZïãÇü#×Õ«HKƒ d2dg£¤„¯ÖŸ=‹¼<¾H®®ü§ØÿÛ´ÑU o2 ½„&ËqæŒÊ‘“'ëÿÔgŸaãFrg“A ÒZˆÚÞ>¶A^` $p8°bErÙ¾%%xåþí¬Y*sj‚ƒù¨Ó”‰ª¬ÊUYÉÇWVìÖ Š¥ØÃGÝš99*{ÁØÅ…o¬fÿg]¡¬žÍÞÊdpuU‰úë×ãÒ%¸¸ð•ì~ýTZò£¢ÔóU£ü”ðÊ+|ðcñ¸´þþ°µÕÚwÀ*ÛøAã5FzºJ}·´”oß>}¥¥°¶F›6°¶Fa!_ù^»ùù __þ³BÝÚÅEåòÆ¿þ¥¹ תW0...vš¡!„†£5œÆÑÑGÑ_Z·q£â-ÀÜ7ß(ŽÌœÉY[swçŽæùO¥¦6µ0'òI±ÿ”©ù¸Pfµã;v(ŽWW+ŽGG«œŸ”¤9Mµô/]â8Ž»~¸øøF^ÝÞ½\ÏžÜ?pNNÇqgÏòù¾ö÷Æü9¶¶Ü A\꟭©Q¿3EEÀÕÔð'üå/Ü„ Çq7ò',]ʽóÿÓÏ>ãÚ¶å¼½¹ãÇù#ii|RS¦ð/23÷¡²’¸ÂBà=â8ŽëÒ…[µJåF;Ƶo¯~£~ú‰ã8nâDnölþHb¢†[1y2pÏ=§áGwëE³fq&p·|9ÇqÜO?q¾¾|i§Oç¦Lá 9™Œ[»–‹ŒäNœànÂîí·9Žãbbøû|ò$çîÎq—’Â\Up––ÜK/ñoÕóoŒVz ! öÚkxã õÎ÷ÞS¼.*BHPg©#A|<ÿ¢é“|t,ùëàÀ¯Ùdg§þ£‡ñç?PiNüí7Åë ¯€E‹ø·õÎgeí¨l-þ  ØØðƒwîßÇW_ÕóY5ÙÙpwG»v|9ÓÓùžK++Å0¨'OðÜsz|Y?.ÇaáBHø!Q boo¾;¼ºÏ> ^^Š®Í àë gg [7lÙ¢ØÕgÐ þE»vŠëe¿''xzòÝêïùóð¡J5ÃÚŠMÍ;vh¸yyJqé’úqÖ°Ìú¿Û·Çýû¸{mÛòíØpwÇ’%pí,-ù>ûòr8:bÀÈÎF§Nж-ŸóòøKóôj'/ Â/øõð¡†â5…^BHC°ŽCµ˜§ü§ÿömøûÐ0ÁææMH$øë_ù·¬#¶)’“ù8aa€êêÿ))X°€†’ڵ㻇U9ŸÍv°mpíZ~’0bùÇë)›$LÀ âÃCÇŽ˜?_Ãù¹¹|aêJI»;¿Õ€´4>Y™ŒŸ˺f»uÓ0¹(/ÓB÷¤ÚN¶¶ü§.]â#Mi©b½‹œØÚÂË ¸sË–ñÇÿ ¢{wœ9Ãwc³_½0ºJ˜.üä ?¤Kè?~òD}ðÝ3Ïð?-.Vl´q£†5O²³Uv°Î~ÆÂ™™¸wíÛó¿Çòr´oI“ø’{yñÓ‘9R)J¯\á·^èÜ™O§¨ˆï!f7ÆÒ’çGY7…^BHCüò @"áëŽjnÞD·nÉTfž0l< À×3ŽGf&›4‰ý5Ÿ0P]›P.GPÜÝñî»>ei ÔÖh™òrEÅNX¥aýzhÛ–ŸÒ“ŸÓ§Ñ¾½æ’ÔÔ 1Q¥ö  gO•”G<1ƒcÜ8ÍwÀÎÕÕ|\¬©AJ ?×ÞžO“ÕÎÔðÙÂB¾‚+•ò¿²»wUXf»J$(.æ1ÙÚò»8GÂÎNNŠ¡Ôìø3ÏÀÒ)) å²ÑdùùüÀ%;;XZòãºY0Öñ(,T¿uAAüOÓÒT¶bnÊJK1v¬Ê‘ìlŒÁ?"0:àî]ÃÓ“ŸbTQ6mЯ«æÊd¸sGñQYÉ—œ…ö½{‘› EFlâoVß$Д¥.•Pè%„4kðd³fY¬òÂFÏ>Ëÿ‘½|™?ýýØØÀοþ __ܼÉΆbKõ²ªmŸ>ø¦Å;pý:>„—=ÂhMA9àݺ1‚?rêÿbóf¾†wãrrøÕê.ätêúöÅŠ*ëGZ[«´²Ö'ʆklœ¯¨€_9ËËÃÝ»|îØ‘oæeóqY½_M^žb03kO¾ySeJ•0³6!¿"””`öl~Œz·n°´ä·ÏÓ-J•—§¨ãöéÃß.V5*ÄlÔ´2[[¾Ö{ù2?ᘵ1 Î¤¬’¾ÀBûÊÖ­øùg>¬˜©,¼ â›…ssam­ˆÍ/½Ä§\XÈÿRX½–•“ãÉ“ñè‘Ês[<äæM>œ “¡§O‡D¢2«¸!(ôBN¹—”…=ÖËŸ}–ïÇe•ÅüéOüÉÁÁpvÆ©S*SNŸ>mÌÊ9s`útp_ ;UU˜5‹Ÿ¼Ëúê´6LeLZ<„ID/¼§Øú†ÕxØô$µ¹L¨mŠ,,TiõöV™Ûª\‰dXµOX¯JÙ½{|„hÓ¹¹8uŠ nnüýgåaç¨õâb~f-jW±HKƒ··Ê9Bû¼zóò‹Í›àφ•UýÖþûßpõ*ÆÔ&SYZ*žo$õ~÷6møËwsãK;|8ÿTqà€J§Æ“'|•=¡¶…#3SQ“fOžžè••|ÜeU|ÖÔѾ=rsù¯»!BÌfÊË_o©û÷ÃÊ ••ü…3Ù³ï¾Óyw´¢ÐKÑ‹¬öÝ›=ò-´¾¾7±öçíÛQP77~3ƒ?ÿ/¼€ß~ƒ£#,¨¿Ž¥LãžÊC™„?ÓõìÉOi°?ЬU\m'Z~~ü¼ÒáÃ:]§PZJy$NMJ9ë®°ÁjÏß}‡Ü\ìÞ (í»p÷.ßncƒaà 8ù’8:bÜ8>µróóÕŸ<®\QtgªaÇÝÝùdYt3F±Ð1›­[­Po9÷öV48—–** L»vü"+ÚxYë÷ĉ TÜäŠ ÅÎöì#@v¶¢öö˜?ý+ÜÝùÖÔð=%EQþÊJäçóÙ±Çöh‚ÚÑ‚ÿúÜÜø#AA@íò ¥¥psãç4 ¿ÓÏ>Óu[´£ÐKÑk7~áÅâʽw^^*kö²ö=¡‘“-××»7ÿöÕWÁq8|Xñ§sÛ6Åp\}öü±´ä+¦ «-)/“¤{9‹^½Ô—f¡—U gÌT»f;wæ«8ݺÁÑQCýUO$ôƒ²“óóùˆÛµ«zÝTù2==1eŠÊšYBÀÖP|ë- vo]ÅÅüM†R—*s÷®zœËÉQ¯õ¢v Ù‹/€TÊ]¡Ëœ…Ö1¯ÑßþIIxüX}å,ÖÃÚ¶­¢Ò_TÄ×;üuUVª´ñ Ø&‰ì&¸¸ð/.]Rü^RSU:°ÿýoüíoptäÛÊË5<븸  €¿9¬¾+Zö8(nûz³'žòrøûóXóæhÊÎTz !zc5W©T1•õÀMŸ®ádÖr+L%Ò†uЪe=–`ÌÌTôË¢¶¶TwAm”ÿd³ªŒr§)k0·Pú 鿦(۳Ϫ×2¡ÔûËÃVfõ`EÍXÙ¡CŠ×Ê{Í––òÏ+,ªyzò¡Ky» ''Å.Œ\®Ú›#¬")1Ç7Y Ô%%|÷'‹IjmÊØ`õÿüñ¥ºqwî€ãøáëNNغ•_c²¢B䘶mQ]Í?m(‡^ᙃµê³›&„íôt~xÁ´iÈÍÕð€eoÏ?ð•—k¨¬WU¡¬Œ¿dåqv ºÂ ,6àKxøðóãëÓìÿjk—6…^BˆÞŠ‹Ñ¥ llø•oÿ»vÀΊ5™…j.«ü±ŽC¡²[×ðáxüééü¬MVñ…~(Y{ åJ§¬a™ÕŸXGµ…ο‡ÖÖŠÝœÕk™¬¬°d 8NÑéˆÚ€Áša]\4ìN_^Ž1c°jPyòRFY<˜5‹?Îu ëJèÒE}’tMÊŒ/v£tw~ [Ç£ö÷Ŧå°ß Ÿ|‚âb>>¨<Á°¡j'@~¾¢Ñ˜ñöFf¦Ö- žž¿EùùŠ¸Û¾=nÜàW e·¥npuqá‡TUi¸döýdûé§ê_!vÉl8jëîBÓ΃Ø»/¿ gg„„ðó×…B/!Do))èÕ‹ï¢óòÂ3Ï(†ï ë'%Ùßâ'àÊÌ«µcÌÞ¾¾ü26š¯ÈÍU„.6õVXÞa­Äööõ÷M¢¶JǪï›6i8aæL•·Bhàí­2£”).V4 Xg-;Ùù¹X¿žÛ,X².Ò·ßæÏß²…Á–øgí¢¬3’m¶#|äìY 6H´o¯Þó}ù2zõR¼e­ñlÔ›6BUµ›x{ƒã°t©®OpvÆãÇ–Ë@m‹1€êj”—«·*ÛÛãÉ w’騑oHÈÍU,áâç‡ÔT”–¢m[>|Ö ®,—šhxœb#ØX„eËÔ¸m܈ŸFx8ÿ–½ž¥X°ß³iiÆ›oÖÿ5ÓÂüBott´Í¨Q£Ò4n•ܸqãÅ_´·····:thMS6!¤5³µ…D¢ø³Þ¾=ù£fØà£º£«‰Û·cñâz²fÖBÓnçžžŠFQ6§H ðHÜ íxY[¨ÚøjVÎ÷ßW9¨¼D—.*ã–™’õZjCã©Spt„½= °v-™Â¬®®üqá ‹:ìo=»jåP `È ¶»1 @ýªïÝS ¥¬¬ÖÞ«†ÕíXS³Z?±³f¡°hÞ«ªO¾–yü8òòT*ÖQX©T½˜qvæ222ß+<~Œ‡ñ ü§êWv<7ÅÅ.„…m«÷K¥6L1 Êѧ˜üöý÷|»zn®†Öû†0³Ð»nݺ-[¶$&&Êd²ðððê:SÔ322 äããsøðáŸþùaª!¤¡Ø >_|Á¿ÍÊ‚¯/ߢ¨öwœ­¨¶A,«}ê_3úŒýýu-ɰ ¡,"VVй¡ú`ãŒ>TY±á³ÏÀq*Ϩ­tŽ;kØL¾°P1dLÀBãgŸ¡cGXXðu,öÄpîœú£ƒ°8†³3ßÞÎdwUGàìуŸošŸ‰GŽàéSÅ&ŠŠêÿ-°e6XLÛ#T]ì¾eei¸v†»w‘‘¡ò4€ÚGм<•¢ \]ùG¢+W±ÍÕ–ËQSÃGÁº;Ú´A^ž<ÑPgŒºŸBt`ùÂZ]ef¡wóæÍ‘‘‘&L ܶm[rròq¶ ©’õë×4èË/¿:Ö»¬Ç˜1X¹¯¿hYÅ¢¬L}”¯²Û·áæÆ÷k²qC7n¨‡^a¿E •µÀX³­r|R‹£ÂòOlvÖ_þÔ)o(Ö¼¬<~M7¡g]cƒ3ãæ†7TV·`XìÌÉÑ\uw‡\''lܨh xî9TU!;66üÝúe•YX '‰Ê4†•¡îs›neeü·NøŠêÞ‘º>æ“***’’’Õöîxxx\¨³ l\\\ppðСCÝÜÜúõë÷sÝŸ„}°¡•_÷pë\]Ѿ=¬­5¬)Ñt]ºðµdKKŲA kôf °¬Â¡çp*”ƒ[ CKKlØÀ÷ø²P§¶‡Dq±úâ Ê^}NN*ƒ³ärõ~J þò]\øÈÁÄÇcÆ õ~åæ„= ¬Œ_>Œ XS«µëƒã°y38Nóu„y8Ê#ÆÕôéƒÛ·!—k„nÜÐ<³ˆíT¯ö5pwÇ•+¸¾¾|¥Y­›‘JQXˆôt ÍÑš Ò¦ ³…ß‚þOxš˜Sè•ËåÕÕÕJ¿.^¬xÈ`í—.ÁÎŽoFŸ)swGi)ÊÊ4Ô§›¾i‡Pò&0§Ð[—¤ÎŒf6¢jܸq‹-êÑ£Ç?ÿùÏ:ÄÖÝAE5‘ºš±Ð„˜8¹{ö`Î~ÝŒnÝÓ?8®ž *béÜ™ß{NÀÆÁ =¬ Z÷J›¹s›ôqÖ$na__ÔÔàÑ#Í=ˆGŽð‘ƒÝ:¶çÄÂ…ÈÊÒÚ_ÈF,×]C·éÓ54›??>àÕ}4©ª‚L¦y; gg$'£¬Œß–ŠÚ:uâïÆsHär”—kh‰ÑµHˆN,: >R KÊœB¯›››T*U®æfgg{¨>.ÙÚÚ:88tWj èÖ­[–ÎeH5ì½ÜØñâ„´¬g·¤'O"(mÚ(VUÌÎÖÕ)¢º¥lÉaý¶°bµiƒ©Së©PêÀžX0ÈÈÀ“'šGê X`øôi vùëºÜÝqíšzO°ž4ö}6«ÄÄzvÐQ$//\¾Ì/"­ÆÒ’¿ÃÊõZážôé<~¬¹]ÝÖiiJ5ûåË5 ž×‹g8î& s ½2™,88ø4ûʹ¹¹7oÞì/ì¿QkÀ€w”šIMMõnèÃ#!­ÛøOù±]y~ `üø1ß(ÐXÉòzÌÀÃr9ßê¼TSS|ÿ=?¸¡úôáëålòÌÅ‹(,¬§Õš=µp¿0!êÌKÈd*3jôÁÖ‚€W_Õ0+ºùôî]ÏŒa¶Ú¥òòÚWWdZ`oÂB=zô—_~¹~ýúÀÀÀøøø¸¸¸îMŠFHËôùçŠ× ¿ÕÈ‘Š%éÿ|càÓ§|‡œ¶hÑÔFZ±šnVVÃbR3‘JUV™~òI=cµÞ”ÅÚUÚ°‘Ò ÚHÑÚ/¾ØøéªÆÂâ«Æ‰:Ú*¬UUõÏQööæ{â…5XLŒ±ŸnÕªU«„õNk}¦º@Ýœ9sæÔ;U€VNm“ °~~Š Ø_À[·6X±±üjŽl¬õœ98xêUïin¾¾ü¼çâbtìˆü|p\ýÏ))h×VVõ6z¶±£Ì ëÍ}잃¿²Š©Ž™5³Z/!¤zî¸Ç»½8u »™*ûýwääèš·Ú„u©V¬€—^‚»;rrt­Þ`0íÚ)j¥}úè»ÀH÷îzÝCz›¶hƒy`=÷'5EÓfþ…^BZ1ÖòÉ– îÚ•_%1>^ßýûqëV£‹o 6–Æ©Êd†e­›µ5ŠŠøŽÆŒ4Íœi46zHÄMëSÐ6h®O•-™õ׸•¼ ˆB/!-‘°sóÎ;H{¹£vM6A€Í&R?Uwe¢Ý»±gAC¯òœWŒUU(*jÞÕ<ôäêŠÜ\~¹GÖ2,b·"Kª5„Þ'4lš+¸r…ßùª¡±’—aQè%¤%Rkÿüøc@u™b¶ckšfÛÚ(V›Ç* r¹úîÍŠmÌ 23ù‰¼ÖÖxðÀ$b’«+²³ùÐÛ³'P»²´(ØÊP­a|¨‹‹Jó†X ³ðKPè%¤¶³e3^¬ï–uå g²XÛ¡ÕûÆÔþ² ù•˜ ƒ5B¾ñÜ»ÇWʽ¼ —7x™§æ`o‡ùiBìö6h@²nlh›áÇh1Ø@åe°L …^BÌVe%$ÄÅ)ް¥e2üö›Ê™u껟¬Ô¥ ²²¥lQ~µÉ»l”ê„dX#³L†’“áìí­þ|#¢±c5ìZH„ãp옱 ¡•˜¡·]g´üüüº !â`{¹O ÅŨªâ:îÔ ðC%~ó¶Ï¨0¡(5½{€•îÞ­gÑ¡-zÑ"ñ¯¢^lM+6½¸º·ntn±6ÂZ ¬x{öt)bæÄ ½9lW/%yÍ÷`HH+ÇæÞtêÄÏ(µ²Â¹sHЫ¾þZqÚÕ«ðê«@mµÀÓ§|@õöÖ°‡¹6ž³ÁÖÚeåd½wÈÍ5‰©#²ìmsÒ$ÓZ@Š˜6q–ÔØ´i“Ú Ç;w.((H”,!êØý¢"E@½u ýú©Bb#HÛ·”vþ±°àGñ88àÁƒú'ceOå5%ØÈ#6)Ö浶ƤIâl DZqBïž={Ô^J¥¾¾¾;½+!D·Ü\ØÙáéS~«YYðñÚóî† `avípëvíÂ×_#<½zµóXLvBŽSY!„`Y˜WéÏ! "Nè=sæ €™3gR %Äpòò0z4NRlxœŒ±cÕWA&½ôèš¾ë÷àAŒÔŽÎmÜþt†ÇLa gBš@Ì5œwìØQ\\œ˜˜XTT¤¼‹áx6ž"®âb„…aï^¤¦bÀüú+ôïÏïIçæ†Í›ñï+%hÛÅÅèÜ™ËVï3…9²õê×ÁššÍåA-Ä ½?üðÃܹs­¬¬œTŸI)ôÒ,d2¾mùÑ#El¿~ðñÁêÕ˜?]»âÖ-EèuvÆ£GŠMpÙ "6\È”°r73ëÞ6…ÉE„4˜¡wÅŠ_~ùåŒÆí;Mi¨òr~Kù{÷ø¨ÿÊ–¯ðê«ü´"ÎÎ(-å—ø¾^ÌL~õ[½¹î1'•••QÜ%Ä@X—-›7Ÿ”„ÎùÕ0Ôøúbß>dd€…?FYÿ#6Z˜-‚¨¶æ³Éb×ËÊLˆÙ3ô†††^¼xQÄ !ZÝ¿¯òöÙgµž9~<_vqAQ²³ñí·Š ͚٠ɦïå—Áq&±¤!M fƒsï޽ǎ;kÖ¬Ž;J”æ,Y²DÄ\!íÆvv(-ÕkÇSWW”–¢¼\}*‘QæìÒŠ‰z:äççwòäÉ“'O*§ÐKˆ˜ŠŠ`g§½, ê³Ë‹ ÊËQP`èï !ªÄ ½—/_15BˆW® $6mâ'³~\}F9:âáCTT˜ÄBŒ„´b"ï\$—Ë¿ùæ›?ü½MNNέ»e !¤Ñbbø•• îòttDi)ž<èå"„èOÌÐ{þüùnݺ}þùçï½÷;²cÇŽÂvc„¦c{³¸u‹Z¥q`³FVV(*BQ­Eˆq‰z_ýõ·ÞzKyóĉ?.b„´vwîðËhÔÔ ªªaŸõôä•4Ù› iÄ ½W¯^>}ºòOOÏG‰˜!­]^¦L€k×Ëhè‰-€ ƒïýGQ%fèuwwøð¡ò‘‹/ú° …„¦cÿ¾† €‹A)âbÄ ½sæÌyã7nݺ ¤¤dÏž=QQQóæÍ1 ÑÑÑ>>>666£FJ6lQ²|ùr‰’E‹‰[BŒ#(ˆŸ¼Êñó3bq!&fè]¿~}ß¾}{öì ÀÁÁaÚ´iS§N}÷ÝwEÌ"66vݺu[¶lILL”ÉdáááÕÂZðJÆŒsµÖš5kD,!†&‘ðÖÞ¸iiJù%—i)cBÌ“„{!›¢¢¢äääššš   ¡oI$!!!aaa6l››ëåå•0|øpås–/_ž——§çÎÁ‰øw€Ñœ>ÁƒÚã'OÆ?@¿~¸t ·n¡[·†%È¢8}ç IよÈóz899 0 44Tô¸[QQ‘””4hÐ öÖÃÃ# àÂ… uÏ>¾ªªjôèÑñññO+ôÖ¥¼Iƒ`âĉìEHHHçΟþùßÿýYíûºhL„Z¡‰I(,„‡rsñÇ 5OŠ©SX.BZ!Á¢qD½'NœP{ÑLÜÜܤR©r57;;;,,LÇGúôé 33SGè¥(KLZHrsqö,P»Á!Ä4‹ÆÅc1ûz8ðÓO?)9zôh\\œXéËd²àààÓ§O³·¹¹¹7oÞìß¿¿Ž$&&ðöö« „Ι30kììðë¯Æ. !D4b†ÞU«VYZªT£-,,Ämm^¶lÙ_|±ÿþ7nÌŸ??00ÕzcbbæÏŸÏÎY´hQ||üåË—¿ÿþû)S¦ 8°W¯^"–æµ`?¡ˆ(|å<óŒ±ËD“˜›Þ»w¯›êTÿ»wEDDDNNÎâÅ‹årùàÁƒãââ¤R)€ÔÔÔ¤¤$vŽ\.Ÿ?~^^ž››[xxø?þñ @Hóúí7lÛ¦rÄÂÚ»K!æHÌY­>>>Û¶m=z´päÇœ?þƒÄÊBt4¯—˜;0k–Ê‘óçÑ¿?²²À:Mè»Jˆ‰1þ¼ÞY³f-\¸0!!¡¬¬¬¬¬ìÇ\´hQDD„ˆYÒ’ q÷èQþÊÀÖ¬ÑN1wbÖùž>}ºtéÒ¯¾úªªª €¥¥åk¯½öé§Ÿªu›ªõÒ¥ îÞå«¶´ì!æ qADüÀSPPœœ  9’…^bB$L˜€ÿýÏØå „è«qADüú¨‹‹K¨°³ !¤AFŽ4v !ÍN„Ð;sæÌÐÐÐÈÈÈ™3gj}ZTTÔôt!„Ö@„aVaaa#GŽd{âN:µî ÿùÏšž !-Í!°aƒ‘‹A18BïîÝ»cccÓÓÓøøø4=ABZ…“'`åJc—ƒbhbötŽ?~ÿþýb¥fÔ×KŒF"AûöÈÊ2v9!güýz÷ïß/—Ë¿ùæ›?üINNÎÍÍ1 BZˆ¨(Ø»×Øå „˜u¾óçÏ3¦k×®—.]bɾûî»÷ïßß¹s§XYˆŽj½ÄŽðam&Äì¿Öûú믿õÖ[/^ŽLœ8ñøñã"fAˆÙKLäãîŸþdì¢BŒCÌ:Ÿµµõ;wüüü„§€ŒŒŒÎ;?}úT¬,DGµ^bhl.¯\WWc…ÒTƯõº»»?|øPùÈÅ‹iÌ3! ååü Š»„´bb†Þ9sæ¼ñÆ·nÝPRR²gÏž¨¨¨yóæ‰˜!æí­· 6ÖØå „“˜Í­UUUo¼ñÆÿýßÿ±fKK˨¨¨7J¥R±²58ƒ¢•# iYŒ¹}‚²¢¢¢äääššš   q…^bPz iYŒß× €ã¸ääääää›7o¦¤¤ˆ›8íããccc3jÔ¨´´4gN:U"‘Ð2–ÄT°Ý¬·o7v9!F&ÂB’‚¬¬¬ðððÄÄD___!!!l×®XYÄÆÆ®[·î»ï¾ X½zuxxøÕ«W56hÿý÷9992™L¬¬ iª¹s`ölc—ƒbdbÖz£¢¢œœœÒÓÓïß¿ÿþýôôt{{û(¶jH6oÞ9a„ÀÀÀmÛ¶%''kœ7üàÁƒÕ«Wo§ê1)g΀…ÈMM„³#æ_Ÿ~úióæÍÂl"Ÿ-[¶=zT¬ô+**’’’ ÄÞzxx\¸pAí4ŽãæÍ›÷Î;ïtêÔI¬¬ !„±ˆz­­­KKK•”––Z[[‹•¾\.¯®®öððŽxzzÖ]#úóÏ?¯©©Y´h‘Xù"‚ß~€:OŠ„VHÌÐ;iÒ¤9sæ;v¬¬¬¬¼¼üĉóæÍ›}ºtéÒ¯¾úªªª €¥¥åk¯½öé§Ÿªu›jp&ME­Í„´bFÛ¹HMAAArr2€   q…^ÒT QTdìrBŒÀTB¯y¡ÐKš¤²2öìÁ¤IÆ. !ÄŒ¶i !÷ë%Ä´lÙ'»„s"BoÈ!£G~ûí·‡ ¢ñ„æÞL°)¨ÖKš„:z iÝŒÜà\YYùÏþsÙ²evfµ‚<…^Ò$z iÝŒß×ëìì\XX(Vj†A¡—4‰D‚Np÷®±ËA1ã/©ñ§?ýéôéÓ"&HˆIc[GÇÄ»„3#æŒÛÞ½{7nÊ”)þþþÊsy—,Y"b.„˜Š?€qãŒ]Bˆ™³¹5$$DãñË—/‹•…è¨Á™4uôÒ꿯×Qè%G¡—VÏh}½öööEEEæÌ™ÓôÔ1••0¾±ËA1?"Ôùd2Ù;w|}}ͱiŽe&&áõ×±y3ÊË!“»(„£1ZƒóèÑ£ïß¿ÿì³ÏîÞ½{Ê”)uOøÏþÓÄ,š…^ÒHÔÚL1âB’»wïŽMOOàããÓô !„LÌ:ßøñã÷ïß/Vj†Aµ^Ò§Ocð`œ=‹?ýÉØE!„pn ½¤1¨µ™ÀV³"„BH½(ôÒ@0x°±ËA1W­½¹•œIƒyxàÑ#TVÂÊÊØE!„™ñœïÝ»W÷ è*DGGûøøØØØŒ5*--­î }ôQïÞ½e2™««ëôéÓsÙ÷„ˆåÑ#w !&fè:thk‹«uäÈ‘1cƈ˜Ellìºuë¶lÙ’˜˜(“ÉÂÃë««ÕΉŸ7oÞÉ“'·nÝzáÂ…I“&‰XÒÚ€YmJM15bî\4uêÔ¡C‡ž:uª}ûöþ÷¿ÿÍš5këÖ­"f±yóæÈÈÈ &ضm›——×ñãLJ®|ÎÙ³g…×–––&L(**rrr±¤õb«¥ff¹„s&f­÷£>;vì°aÃrsscccgÍšµsçÎ3fˆ•~EEERRÒ AƒØ[€€€ .èøHii©­­­Xe ­ÝÁƒàìlìrB̘˜µ^111‘‘‘!!!û÷ï1b„ˆ‰Ëåòêêjሧ§§Ž®Üǯ_¿~éÒ¥VÔ-G!Ädˆz?ûì3å·AAA|饗RRRRRR,Y²¤é¹h$a+hRQQ1iÒ$__ß¿ýíoH„†= N€øxc—ƒb:"NC‰z¿ùæµ#íÛ·¿uëÖ­[·Ø[±B¯›››T*U®æfgg‡……Õ=³¢¢bâĉååå ÖÖÖº“¥(Kôõ⋊ÿBZÁ¢qñX„Ð{ùòå¦'¢™L|úôéððp¹¹¹7oÞìß¿¿Úi•••“&M’Ëå?ýôõò1•”»„–@ä¾Þæ¶lÙ²¨¨¨ÐÐPÿÕ«W²ZoLLÌõë×·mÛÆqܤI“wíÚ•ššÊ>ToÝ—zÔÔÀ¨QÆ.!Äì‰z£££uŸ°råʦçÂDDDäää,^¼X.—<8..N*•HMMMJJPQQ@¹!úöíÛ]»v« ¤•zÿ}0áͧ !æB„e‡ ¢û„'N41‹æC I}ÑnE„:hÓÀÆ ÐKôE¡—RGよ˜}½gΜÑx|àÀÿßÞ½G5q¦B" ‚€Š"tÅ€—âr;VAb¥h±V­zDZo?º¶bq]/­ž¶Z»]kAìjvÏ®Š”j½Qi]±²¢BÖb€V-+Š¢ $Ìï¡1r3BÈL’ïçx<3¯3ó~0OÞwf=öÀ;wˆˆþö7®s€)Ðç˜O"‘h–†yøð¡………••U=¯ Ũt2}:¥¦ÒãÇ$2²+ Gq?êmUb«ªªV®\Ž› Á¤¦ê.èEÏŽù=zäëë«P(z®‹n¨t‚½Ð·-@ T*{´ €—ŸODôÏrL„>Ç|‡Ö^½wï^bb¢D"IOO×Wz‡Q/<›HDj5†¼Ð÷7 :T;MŸ>}d2Ù† ìxü k(½ðl˜m€p™Uii©À#£FqL‡ž¯Ø,..Þ³g{]•··÷âÅ‹‡®ß. ê믟ü  ú¼Ì*99yôèÑÙÙÙžžžžžžÙÙÙ£FJeïÊ0Rï¾KDôÒK\çÓ¡Ï3îîîK—.]½zµ¦å‹/¾øú믯_¿®¯.ôçzáp¢:ÆýÍEJ¥rÞ¼yÚ-‘‘‘¸¹ŒØ¯¿mÙÂu0)ú,½“'OÎÈÈÐnÉÈÈÃ÷›‚ñòô$"Z¾œë`Rôp™ÕW_}Å.øúúþå/ÉÈÈð÷÷'¢ÜÜÜŒŒ =~Y/7„B®€IÑÙN??¿Î7ÈËËëf=çz¡C*õîMR)qxŠûÔ0F(½Ð¡ èìYºu‹¹Ž<…ÒÛ(½Ð!\Û ÏÂýΦ£¡ë`²PzÚ3nQI ×9À™ût+&œ¡}˜m`Â@OØÙf[[®s€iBéhÃ×—ˆ¨¬Œë`šÌ}ºÎÐÌ6€nÌeÂ9..ÎÕÕÕÊÊ*,,¬ÝoNKK µ··åååFîÑ#®€‰3²Ò›˜˜¸aÆíÛ·ççç‹ÅâiÓ¦©ÕêVÛ› Åܧ[1á ˜m€.Ä3@7 î€¡ ô‚yûá"¢Ù³¹ÎfÄܧ[1álîðIÐ ˜pxNšïÕ@ÝÂ+˜1[["¢Ü\®s€y1÷éVL8›5v¶¿ÐU˜px))DDáá\ç³cîc>ŒzÍ.°€nè@gÍÍ- ¨»`pxݳ$•?Îu0Gæ>ÝŠ g3… ¬@0á  v°ëíÍu0Sæ>æÃ¨×á+ÐŒztpûvËê.p¯>`fú÷'"ºqƒë`¾Ì}ºõÉ\AEõíK ׉ ‡á+ÐL8?çêêjeeVZZªÓ>®®-Ÿè &ìÿþˆèý÷¹ÎfÍG½‰‰‰K—.ýæ›o¤Réûï¿_ZZZPP  Ûݸå ;"¢‚òñ1\V00 y@¯0êm±mÛ¶wß}wÆŒ^^^ÿú׿ Efffg;ääq¢§ãg4o°8ej¥W¥RÉåò   vÕÉÉI*•æh×¶>ù„è÷‘PRRO'n\¸Ð²€!/pÍÔJoMMZ­vrrÒ´8;;WWWw¶öHW¡è±hÀ©±c‰ˆòó¹Î`r¥·-A'ÓŒuuÚ›ýøû‚@  û÷éÌjU³¿ü’¢£ué’8°kAÿ4¿cÆpšŒ˜ =];”©•^¡P¨=ÌU*•Úƒà§ØØåäÃ0 º{71'N0 C}û’LFÎÎOm¿bíØAD4nܳOÞ¼I@@vv]<Ð}š/)ÂT3tÓž®ÊÔJ¯X,öññÉÊÊbW«««‹‹‹Ûßšý<£€€–Õù󉈦Lyª¬ªT- ·,”•QvöS-jõSûÎKDtï tà@—tÛ7ß%&r …©•^"Љ‰Ù¹sgJJJQQQTT”———L&ÓiO¡ð©;>cbˆˆz÷nYÝ·¯eáòå–…‚‚'Ÿ=K‰DDD¯¿N÷ï·>øÜ¹-Ñì0˜… ‰ˆÞz‹ã¿3ÁÒ;þüõë×GGG3¦¡¡!--­£›zÛñùçÄ0-þþ÷'íññ-¯àDtéRË‚LF-\HÍÍ´uë“SRž|:{¨ÜÜÖ=W ®«£ÆF]ð› ~¤ÆsyÆÝÐ))4cÆS-#FPu5ݺÕþöŠahØ0jj¢sçÈÕµõ?i×àŸ&''ÒœŸ.+£!CZ–¯]#»€¶š›I(¤˜˜§ÞHèI×>R¥÷YÏ€vQd h=„õð ë׉ˆ ¢òr{%":vŒ¦N}¾¸D´gùøÐ±côÑG--l=þí7ª¯§†²° 4ˆššÈÒ’ò󩱑êë),ŒT*jl¤Û·‰aÈÞžîÝk9ÛíèHBá“Ë‘LÉÔ©”M yyqLP×J¯¨'¢˜”½{iÁ"¢U«ˆˆêë[Ú¿ûŽæÎ¥øxZ±¢¥”FDèzLÍÏéþ}êÓ§e¹¡Äbº{—ššZ†¼´vmË7íŒGÁÁ”•E‹µ>Ú /téµÇÞ^o‡â‰»w‰ux£^ž¶²Þ¼I..´a}ò ùúR^Þ“ ~û~øÞ~Û_ÛÐ@QŸ>ÄžÀnn¦´4‰ÈÅ…ÆŒi PWGåådkÛzfô Î]¡Ó³¶s'>M‡$ ”Þ®èÚ³@øæ"£€Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…ÒËk€ëÏÀó„·ñZ™4iÒ‚ x•P*•~úé§ìòãÇ-,,RSSùO©TÑO?ý¤½š››Ë‡„~Y6ß g•J%—˃‚‚ØU'''©Tš““ß$újïZªØØØX[[ó3Þ½{÷vïÞíéééîîΟ„ Ã,^¼xíÚµîîîšFþÄc=zT,;::.Z´èîÝ»¼J˜––æãã3qâD‡€€€S§Nñ*ž¶²²²Ó§O/\¸W _}õÕcÇŽUUU577'$$ØÙÙ;–?ñT*YYY±«ìÂùóçù“P;jF2ßÒ[SS£V«œœ4-ÎÎÎÚ'8O¢¯ö.Dª««Û¸qã{ï½×«W/¾Å;zô¨H$²³³KNNNOOçUÂ;v477kŸ@%žý|ƒƒƒwïÞ}îܹíÛ·gffNŸ>? ªªªbccçÌ™söìÙ   ©S§–””ð$^+{÷îuss›0añæ $¢ØØX777±XüÁ;v¬ÿþü‰7dÈaÆmÚ´éþýûŸ|ò )•Jþ$ÔèéHæ[zÛâÏ2w”D_íS©To¼ñÆàÁƒÙÿ|‹'“Éärù©S§FŒ^WWÇ“„×®]ûë_ÿºk×®gîÅá8sæÌY³fùùùEDD8pàìÙ³—/_æIBöŠª×_ýwÞ1bÄ–-[ÜÜÜy¯•„„„ùóç÷t’çM¸jÕªÂÂÂÿûßK–,™9sæ7øˆ:TRRboo/‘HnÞ¼)•J-,Ú)C|ø÷h$ó-½B¡Pû ‘R©Ô~oÂy}µ?W•J5sæÌ†††£GZZZò-ÙÚÚŽ9òå—_>|øpeeezz:OæææVUUyxxˆD"‘H¤R©"##ÃÂÂx¯­?þñDT^^Γ„ÖÖÖ¶¶¶žžžš–aÆUVVò$ž¶³gÏ^¿~}Á‚ì*O>|øpÛ¶m›7ož8qâÈ‘#?ûì³~ýúíÝ»—'ñX/¾øâ•+W***”JeBBÂÿþ÷¿¡C‡ò*!«§#™oé‹Å>>>YYYìjuuuqqq`` ’è«]÷$o¼ñFMMMzzºµµ5ßâµ¢V«Õj5N™2åòåËòßYZZnÞ¼ùÿøOⵕŸŸODƒ âO±cÇ^½zU³zíÚ5^ÅÓHHHÖœÑçIBö„ö R ¨T*žÄÓæââÒ¯_¿ƒ666Nž<™‡ {<’î§™öšïäädöšï‘#GöôÍEwïÞ-((øöÛo‰(##£  @û΄¶IôÕ®‹æææ©S§0 33Ssû„J¥âI$¬¬¬œ={vß¾}E"ш#’’’xa˜¤¤$WWW‘Häáá×ÜÜÌyBN^– Ãta0]c¾çz8Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò À!!!qqq\§à’ŸŸßW_}Åu €‡Ò À™ñãÇùå—šÕÉ“'9Ò`ÝWD\€|ð׌Xcc£¥¥%×)t‚Q/7Þ|óÍsçέX±B ¸¸¸ÐÓÎ~~~›6mš3g޵µõˆ#.]ºôßÿþ×ßß¿wïÞ¯¼òʽ{÷ØÍšššÖ­[7hÐ ±X˜““ö'%% 6L$988DDD´Û]Gûúùù­]»6,,lðàÁ/¼ðBjjjÛð~~~6l˜1c†ƒƒÃ!C¾ÿþ{¶}èС‡Öl&‘HþóŸÿèþpˆ¨¶¶vÆŒÖÖÖš®;‰úᇆ‡‡ÛÙÙmÙ²E?ƒ`€#ãÆÛºu«fu„ ±±±ì²¯¯oÿþýwíÚUTT!•Je2ÙéÓ§/]º4|øð5kÖ°›½÷Þ{cÇŽ½páBiié¦M›ìííoß¾}óæM‘H”˜˜XQQ¡P(vïÞÝnwíîËvmkk›““Ã0ÌñãÇ{÷î]\\Ü*9ïÂ… Ã$%%I$’û÷ï3 ãæævèÐ!Íf666YYYº?__ß¾}ûîÚµ«¼¼|óæÍ½zõb»î$ªÝ™3g†©¯¯××Ï §¡ôp¦óÒûöÛo³Ë …‚ˆRSSÙÕøøøÀÀ@†ajkk{õêURR¢9‚¿¿ÿž={~þùg‘HÄ§Žºëh_¶ëÅ‹kÚ'Ož¬)¾¾¾+V¬Ð¬ÚÙÙeff2–Þg>v³9sæhv?~üš5k:ºdÉÀØà\/Oi.¹êß¿«Uv†V¡P<~üxøðáÚ{UVVz{{7nذaááá¡¡¡³fͲ¶¶nuðŽömÕ55Š-–­¸»»k–ûöí«=iܵ‡Ãò÷÷×,(ŠÎ£J¥ÒÎûà!”^ž²°°èh•a"jnn&¢ºº:‰DÒjßÓ§OŸ>}úÔ©SŸ~úégŸ}–ŸŸocc£½A'ûQSS“fùñãÇíÆÚ«l¤vu|8é<ªH„10>¸Ì €3B¡°óªÓ9ooo‘H”‘‘ÑöŸ,,,&MšôùçŸ\¿~ýÂ… ­ºëd_"Ò\ÇÄ.{{{ë©OŸ>š!lUUÕÇu8¬ÜÜ\ÍòÅ‹½½½; `ŒPz83xðàììl¥RyçÎ.ìnoo¿téÒeË–%''———çççøá‡ …"///>>¾¨¨¨²²òàÁƒ ð“ÃÚÝu´/{äS§NíÚµ«¢¢bóæÍyyy‹-Ò1RHHHRRRCCCCCÚ5kZtu‘‘‘±{÷îŠŠŠØØØœœœE‹uÀa®€3«W¯ŽŒŒtuuuttT*•]8B||¼££ãŠ+***d2™££ã;wÒÓÓ7nÜX__ïééùí·ßzxx´í®Ý}Ùî\¹255uÙ²e...Ðý|êúõë### 0`À€>úèÈ‘#ÏûˆV®\™’’­Ýu'QŒ‘ ;ó]`züüü.\¸lÙ2®ƒ˜,L8J/€AaÂÀ 0ê0(”^ƒBé0(ѽÛe\g0#ÿµ©—s endstream endobj 1008 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [120.411 210.776 134.109 223.395] /A << /S /GoTo /D (figure.20) >> >> endobj 1012 0 obj << /D [1010 0 R /XYZ 33.853 921.043 null] >> endobj 584 0 obj << /D [1010 0 R /XYZ 129.486 591.073 null] >> endobj 1009 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F27 556 0 R /F28 616 0 R /F25 604 0 R /F30 591 0 R >> /XObject << /Im20 1007 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 1018 0 obj << /Length 2335 /Filter /FlateDecode >> stream xÚ…XKܸ¾Ï¯hä²À-·Ôzæl°vâ ’x€=¬sàHœnÂz´õ{þ}ê«*ªÕ³ò ´Èb‘,Öó#»Óî°ûÛÝá߈þ»h¥Ç°<wY”„QrÜUíÝ—»C˜$ñ‘9VMò³0'Ò—…xð„ì˜s'‰2O|û¡£Ý/ýÝèç'ìWˬ¨^¤ýJ¦¿>ܽ}å»( Ë4wO»¬‹¬Ø¥yæÅq÷Pï~ Þ»Ó<Øûýñqôçû}gÁƒkí~´ƒ³£ŒôOøÁtVÖ©¿åë}\¦i¤GʸG7¹¾Χ¡oeÐèÔ{bùŠ¿~_ÓFÝH¼¦‘AÓu™3a<[iAei›ÿ=üƒÎ¼§s&I&G]«stW:Á§Czà‰ÿíûãq­†¢ £ º“ÙØK‡—á¾UZ~ 6'sÓºQ¶Å-H–,Ë"!ã$¤ßRESy8>Ðd‡î> ø˜D|\¥ÂR¯êYmöÓ!Ê*ge‚Ÿ] ÖŒv ï÷iïíÙg¨Þoˆ³Hˆg«+ýÄÊ0 ƒ™}ótµ­…ïb†ÉU ™yC¯†ý"£É£­ßÈ9Ñçæ³´Vg¡^Ebà8Åú8‡FÝ(ßÑ:GãIeä´Í‹´äKr&ÚÍtµMÓö#¯•Ôö";P‹¶[ôEŒä¨'©É-*°ž{WiŸýšHÞH´Ú ¾çëƒaê–‘ØvQ¦i©[¦²å¶ŒIóa ´Ÿú”‚&@òßél&/g–ÃŽÚwíêáÅzDZìÏìƒR:ÝÑt=X©_Ýtîg]Ú°-^¤s²}k§¶r•‘ÀÚßœD•·8p#`~vÝ 6ˆ`#²V\FAÛÃa@#‰ÅÓ†éjß"”ÑË$±™¬£-Žó0:,áV; êÀLâ°ˆRÏ KÆ…:(d8 f•J@i ÂÁº`4£Ê:IŸóÀ(ÝÇY–Qq«ˆŸÉއ`ºIŽD`'Â{œ©±JŽÔ§½&G"!M²€®D bŽ D¹29ýjªFò‘Ì?œ´†ü—ÒÐoÌG·ÉI2–̯ú!7´£—.÷É7¢©íÉÁú^¿Lpòz® t /¾gëNgMô§3œ­ŸOâB²Ò¸Íá”첬><É z*»©ßá;.¹!îÙP‰IKÄ[ÍÃÀù,N ”‚47Êk¿‰ÛjÂÔËw´:Á>»Úv•ö$²ÁÇþ—¨*—•Ù Ðû“ÁÕ>ÔŸ/’ûãuW¼e†«;Ç‘¦v[‘¦°PÍ’‰ÕP`ÛÖ’:„r”¹L÷ùi^¦ —XY’“‘Œ| sIòÜœ­¬´åäøóKõ:_ò°³2÷ætš?)m6n¤âDB%É’‹Ù’#²£†S7Z!±Ûë/ïþ) …h2t"­ðŽ6àÉòC0OŽv³ÊÜÌ#ih”¢ß?,•·…5>:‘ú­äa&H°%Ù÷LÀcª,ÌxvÃ4cér–!‰U"Œóðd¸u@Xuv•™æ=ù•Å f.³àCw]oãDýyËRk¦¹L|"úжãìF­ÚÕÌûSç¬0…;ch´×|À “þ§a®´käã­Fž(V㙢ªÚjŸ`Q?øC–ÜŽü«!×µþÖV4pµ,w{!ïÒÏq ªBˆ\òð•(>C©RIR-W©àˆô+¹ÁOØ(Oƒ‘Šÿ²UÙhNFÕcÀRˆ> ñQM< « •‘ƒá’œÁNþ((i®ô%4GÑ- q¬€xUp#© ûYÙ§s_fŸTÄöK>% :™J@í÷ÐUŽ‚èI]û- im^¬Ž¦X­% ¸&ðV£Œÿ•OÛO€1Ï÷)©A ÝÁ‚_:¬ð¨²„ÅÊCÑá¼T°GÖ9Nú çªòÃKçòŒZyðîãËÇý¿9гÁh fÉI}5ȃ弪Q¤?ÐÕgç®6‚;bI$<¨5,÷µhAòIáªÝ`+ÑÉ†Ø S“ˆ1>â& iNJz&Õ¶hr‰‘9ØÎˆin]àr8!ÔÐ×ÄâbŠTƒÑµý$f­+êˆé¤ }„ä5ÂW@ʯª(ÜÅŽ|Ó|U_˜øe6£Û¸UÂs;58h£ oT:ÙbWÐPŽià|d3NB.É¥ Å-Á} 8 zee$Bû·–P|´ßòz°¤ *S u FôL3öÒZ¹:(»‘O«am:7¶ Ãt¢¹\<¢ãä¬à}«>¯=òER$a J’hÎÀ¶„Nf¦ÂdGE¢H¦½p‰¢‰pM?ãÆ•j•¥¯heÍÊm¨£õ—µR‹eYhÊeUÅÞÀÁÒUóƒi^Xa˜5ö­Ö]êìs3é*ú˜Qú—ì«€‡ÛœÅ¾{“R‚’±œ— 3Ä! uCH™âÅ®Æ1FcÚß!·òhŒ0Ê[E#.þ4Æ#‹D«¨·X:FÙtÑ pýF®Æ_K~wɃ-Ë×þÒi}[í´¦–×kÇÝa@Ñ]®èn¹da©›kFZ[;³™Ü>ÒQñüá#š—ÁÐNØKp*QáŠ@¹Ù¢¾â°Spt˜0ö¥!.C@ì/Æ º„¼zXÞyc#„8 ¬-û•ˆÌ¸Í)˜k\릥¬‘›=èPx–þiâ§Ÿ„­<;˜ÇF—ƒÐì<Š¿žýŒÌþ¹hKd~ÖЦ$$ÏBÔ ¹Pu'¹9ø?û‡f»Ð~šˆ…ÂÂÊ]Ó h’±SÂPŸ—Tø šÞâ¾Cºö^¿Ûe üÁJöÊl¾zÉrÿ¦&E7Ó|‚¹³mQøV•å~‘¥ôÆ8j=í•ùe ÅøjþM÷8ÀÏZ%`爇H¯/¢D‘‚OÒû‚òٌҸ­¨ è•£ôà•—Ô†$Èì.³5f¶ Á×€9ÓªK—¨+p–÷¾Oµ£{òÌqôºN§]k®oDôÏŠåmNàÕos±©´ÐsF(8òÍHÂ2¢DœÂ"Už'7Lïîþª²ƒÛ endstream endobj 1017 0 obj << /Type /Page /Contents 1018 0 R /Resources 1016 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R /Annots [ 1014 0 R ] >> endobj 1015 0 obj << /Type /XObject /Subtype /Image /Width 637 /Height 416 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 19073 /Filter/FlateDecode /DecodeParms<> >> stream xœíÝw\Sçþðo €@0T,C Á "*8ê j­¬¨­”ÖÚRm¯ÖÖíàúÓŠ·íít â¶â@oU\X•Z@©BAÅ"Êä÷GlÄ@NrÎ Ÿ÷Ë?’“ç<çsBÌ7Ï™¹\N`&lhEPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpL?ùä¶3€ :ôþýûlÖKŒxôèÑĉ£¢¢V®\¹téR -ýýýkkkû÷ﯧ$ú¦úNjù®ŠD¢º»»·` wƒkÂ|¨ÎÈ`ýÍÒJ`¼Ë&LÀÌ̬{÷î[¶liA'¡¡¡=zôP<uuu[·n4hІ fΜi°l-S[[knnÞJ–kÈ ×–Îeïò†­­­··w¯^½Ö¬YãâârèÐ!"ª¬¬|ã7ìì쬭­'NœX\\¬hœàáá! """‡ºzõj"š1cFjjê¼yó“““êKúô÷÷ÿä“O&Nœèàààææ¶wïÞ†!w„ «V­Úµk—@ ˆŒŒTmß0‰¢“W^yÅÚÚZu)õõõK—.uvv¶°° LOOW[tî4¬È’%KFíêêÚµk×ýû÷«u•˜˜Ø¥KÅãM›6 ‚£GQ]]µµõ¹sçˆhÆ ½zõ²°°ppp˜={vuuµvF"¢‡†……YZZvíÚuß¾}Êéîîî{öìQ>‰D¿þú«"ð²eËÆŽ+‹¿üòKÕ?VS”Lš4I±ˆÄÄD‘HtêÔ)µÚ¬Bjjêܹs öå—_þúë¯>T¼¤ø@öìÙsìØ±Û¶m›?þ»ï¾[QQ¡åRšJÞÔô¦Þ-—¥úªÎÒèÿj懰Ë­¯¯_¶l™«««™™™§§§âCøÌ¹šÿË+ÂÄÆÆN™2ÅÊÊÊ××÷âÅ‹¿ýö[@@@›6mF¥ü³¶ø}Öß·Š’¼ôÒK3gÎT>õôô\¸p¡\.ˆˆèÞ½{ZZZVVÖ°aÃúõë'“Éîܹ# 7oÞ|ûö휜œ 6(æ2dȪU« §ìPõ¥Fû”Ëåýúõk×®]ZZš\.OHH‰Dj9›š÷ý÷ßùå—]5µ$Š¥üøã¹¹¹K—.U.eîܹAAAiii7oÞŒµ³³»ÿ¾æ®4¬ˆMzzº\.?|øp›6m®]»¦ÚbkjQQ‘\.ýõ×–-[&—ËÓÒÒ,--%‰\.?~üxAAAJJŠŸŸß¢E‹¾“ªU…‡‡ûùùeff^¹reРAB¡ðäÉ“r¹¼S§N»wïV6³¶¶>sæŒ"°X,>uê”\.üø±j·MýQ&L˜xåÊ•¬¬¬áÇ+¡ª©UhJBB‚µµumm­¼ÁR.—+¾I÷ï߯åRšJÞÔô¦ÞÕwCòTß@e'MýOi¹Ë•Ëåo¿ý¶››ÛáÇ Nœ8qôèQ ý?óC¥ÍyÅJ­_¿þêÕ«ÞÞÞÆ ;qâÄÅ‹½¼¼”™uyŸõô­b|PwùAù5WWW·nÝ:Åܽ{÷LLLŽ?®hSXX(Ξ=ûûï¿ …†eI›ºÛTŸr¹¼_¿~óæÍSÎ"‹Õ¾Ê5ÌÛ¬º;kÖ,Åãúúz‘HtòäÉòòr33³ÜÜ\e³€€€7jèJóŠDEE)ç mXr¼½½·mÛ&—Ë=<77W&“)¸¸¸¸ººæääøøø 4ÈÃÃã•W^Ù¼ysUU•öKiªOÅÓÎ;+[ÚÚÚ*·Mi3¯ö”Çb˜šš:88<|ø0''§®®ÎËËKð· .(7Uµ`ET÷èÙ³gÃÁÁÁgΜ)-----ŽŽÎÈȨ­­=sæLpp°¢AjjêàÁƒ­­­Á¸qãJKKµ\;ÅØ:00PñÔßßßÔÔô™sy{{7õRÃ?Jnn®@ èÓ§bbïÞ½ÍÌÌΨý*H$’É“'»ºº._¾\CH¹\Þ¬¥4õqÒü1Ó@ò}5üOiÖ‡°¹ËÍÉÉ©¯¯:t¨ÚÄæ~ȵYUÊ•j×®ÚSíßdjþ‡_—o£„ºËãÇÏÌÌÌÉÉù믿V®\©œ.ÔZš˜˜œ8qb×®]ÎÎΟ~úiŸ>}*++›µ¬†}6:½ÑïÙ¦æÕž‰ÉSK¹\.“ɈèÑ£Gª¿5Ÿ¤9L}}½òq]]]ÃÁÁÁ))))))tppèÖ­[zzzjjª¢îVUU7nôèÑ·nÝ’Éd'Ož”J¥ÍZAe­555U>Öðö …M©Í¥!íWA"‘Lš4©¦¦æÀŽ *..~øð¡ÚÙPš—ÒTòF§?s55/«Ñ7PÃÿí?„-Xn£Zü!×¼"jÍšzªùÍWÕâ¿.ß*Fu—7Äbq=¼½½­¬¬S¼¼¼LLL”çoúúú‘‰‰Éˆ#þýï_¾|9??¿á9¦¦¦~¾5ôùL-›·©$ª|||„Bá‘#G´ïJsÕ#VÒÓÓ}||Ôº ÎÉÉÙ·o_HHˆâé?üP^^®øÍ~ýúõòòò… ::: ‚ßÿ]s0UÞÞÞr¹<77WñôúõëµµµŠÇmÛ¶UþØ/--mÖ† U^^^ò¿7/Ño¿ýÖð·…–«P[[;yòä²²²C‡)?xZ³f­­­ÚN—7JÍ3ßœ–-ë™ÿS”šú¶`¹Š®NŸ>­MÿZÒ~E4Óå}ÖÇ·ŠQBÝå1GGÇ—_~yîܹ.\ÈÎΞ9sfß¾}322Ö¬YsõêÕâââ]»vÉårÕ-9 ®®®gÏž-))yðà6}ê’Gó\M%Qegg=gΜÄÄÄ¢¢¢K—.-[¶¬áÆaÕ®4‡INN^¿~ýíÛ·W®\™‘‘ñÚk¯©uåîîîìì¼sçNÅ788xÇŽ}úô‰DDäææfaa‘””DD7nÜX³f6ïò]š8qâÒ¥K%Immí| ü½?tèЄ„„ššššššE‹©N´×®]»—^zéwÞÉÊÊÊÉÉyÿý÷…B¡Ú¨B›UËå“'O¾téÒ¿ÿýï¼¼¼ÌÌÌÌÌL寄‡^»v-++ëðáÃÓ§O‹‹ûꫯڶmÛÜ¥hé™oN –¥Íÿ¥¦>„-X®Ý¬Y³fÏžýË/¿)Ž«ÒòC®ûŠh¦Ëû¬o£„ºËo?þøc``à¨Q£ú÷ïoccsàÀ@ ‰:äææ¶zõê­[·*ÏŠQZ¸páÕ«W]\\õíS—<šgÑDÕš5k¢££çÍ›×¹sç1cÆäåå9::jîJC˜÷ßÿþýݺuûþûïwîÜÙèN¸àà`333ÅE‹‚ƒƒ¥R©rç®ÝÆçÍ›çææ¹páBíÞž'~úé'"ruuõóó1b„rùñÇ·iÓ¦cÇŽ}ûö µ´´lV·ªÖ¯_ß±cÇ€€€qãÆÍ™3ÇÔÔÔÂÂBµ6« ‘H’’’îܹ3lذ>+((P¼ºoß¾îÝ»÷ë×ïí·ß–Éd©©©¯¾úªZ:¾Qªžùæ´`YÚüOQÕ臰eëøŸÿügÚ´iQQQ;w~ûí·%ISýkÓ[sWD]Þg=}«Akؘ Êßß?22rΜ9l1ëׯ{zz–––¶oßží,€ëU£´´´GùùùݹsgΜ9£FBÑàlg0BUUUï¼óÎsÏ=7xðà:´ì‚Þ ØÎ `8ïê.€á îê.€á îê.€á îê.€á îê.€á îê.€áð²î!Çãê ñØÂõú£þS¥ºš¬¬ˆ84äÎÂxWg––l'ㇺ«Â×—ˆwí½Ávfõ©DØÔ Ï€íÌ<€ºÛ˜º:¶€qBÝ}ÚíÛDDŸ}Æv0NØ¿ÛÈ DØÅ š`ÿ. î6°`QEÛ9Àa;sõõdfFcÆÐ¡CüÐâį́»¿F„]¼Ð$ìßàÔÝÆü÷¿DDR)Û9ÀØ î6æµ×ˆþ>À €9Ø¿ÛäËDØÅ Ãþ]@ÝmÂÛo³Œ¶37¡¼œìì(-  øÛ™™&ÅİŒ Æ»šZáÐ*hÆ»z`iÉv06¨»M[¶Œí`lPw›MDtìÛ9Àx î6MqhÕæÍlçãÁ›º{ïÞ½ˆˆ±X,‰ÂÃÃïÞ½Û°MYYÙŒ3ìííÍÍÍ{õꕘ˜ÈÀ‚耈xTwÃÃÃóóó;–žž^__Ö°MtttzzzbbbVVVhhhxxø7tZjß¾:Íð4~œGTZZêäätúôéåÓ .øûû«6ëÞ½ûôéÓ—-[FDõõõ‰‰‰ãÇo´O­ß²…^}§€#?H"‘‘åß'ö(œ;wN­Ù˜1c’’’JKKe2Y||¼X, ÒiÁ“&íÚ¥S'ãGÝussóððˆ­¨¨¨­­]¾|9•””¨5[µjU§Nœœœ,,,bbb’’’Úµk§Ó‚­­‰ˆNŸÖ©€¿ñ£îÑîÝ»sssíììD"Ñ;w¼½½MLÔÃ/X° ++ëøñã—/_ž={ö¤I“ 4ô)hŒz#‘ˆ¾ý–ÙuѪXhß/öï*•””˜››‹D"±Xüõ×_¿þúëÊ—ªªªÚ¶m»oß¾qãÆ)¦øúúN:õÃ?l´+m7ÍwêDØÅ ªŒ|ÿ®’“““½½ý®]»jkkCCCU_’J¥R©Tu,;†u²`®=üMÈvmíÝ»W*•º»»gddÄÄÄ,^¼ØÙÙ™ˆâââ²³³×­[gcc²téR±XÜ¡C‡-[¶äääüôÓOº.82’Þ}—._¦>}X hÝxSw«««cbbJJJÜÜÜ>úè£ùóç+¦çååeff*ïØ±ã½÷Þ3fLee¥——×–-[t=ž™ˆllˆˆvïFÝÝñlÿ.ƒš±i7€§µ–ý»¼†º«…ÈH¶€‘@ÝÕ‚âÀi™ŒíÀ{¨»ZxñE"¢_e;ðꮬ¬ˆpC@`ŽgÖ¶5i€'p<3 îjgɶ€1@ÝÕŽâF¼55lç~CÝÕŽ¿?Ѷmlç~CÝmŽ“'ÙNü†ã™µÖ±#•”àf ÏlºßÊZ=Ô]­½öÛ €÷PwµöÊ+DDÕÕlçCÝÕZïÞDD;w²x uWkŠKE8Àvà1Ïܼyˆp•fÀñ̆ѡÛ €ßPw›cêT¶¿¡î6ÇÌ™DDR)Û9€¯Pw›£O"¢ÄD¶s_¡î6ßæÍl'¾ÂñÌÍž‡4´v8ž€Pw›i¶¡î6Ó»ï²x u·™BBˆˆ22ØÎ¼Ä›º{ïÞ½ˆˆ±X,‰ÂÃÃïÞ½Ûh³«W¯Ž;V$‰D¢áÇËd2†s˜š¡î@ ñ¦î†‡‡ççç;v,==½¾¾>,,¬a›ÂÂÂàà`—Ç'''O™2E_i>ûL_=€QãÇyD¥¥¥NNN§OŸ Q>½pá‚¿¿¿j³Y³fÝ¿?Q»ëZ´øpÈɉîÜiɼ`Œü<"‰DBD–––ЧŠçÎSkvðàA??¿áÇ;88ôïß?99Y/i^y…JJôÒ3;~Ô]777ØØØŠŠŠÚÚÚåË—QÉÓů¦¦¦´´tÕªUS¦LIII 7n\nn.ói‡V4?ê.íÞ½;77×ÎÎN$ݹsÇÛÛÛÄä©ðŠC¨^z饷ÞzË××÷Ë/¿ìÔ©Óf×t4æÙQ† !"ª¯×eu€/ZX,š d0™^õîÝ;;;»¤¤ÄÜÜ\$‰ÅbwwwÕVVV666žžžÊ)ÅÅÅúláþÝ®]‰ˆ’“)4´%³¯4Z,Z\zy3ÞUprr²··ßµkWmmmhƒ²tãÆ åÓ¼¼úhþüùŠéyyy™™™ŠÇ¡¡¡?üðÊ+ »wï~ðàAÕÍÎL²²¢[·ôÒ35~œ¿«-?—ˆ"#iÓ&Ü  Õ2òów9çÅÙN¼„ñn‹”—“ýõ‰ÅŒ†~Àx×°åöÔ)–cß îê !íÀ3ØÎÜòù‰‡V´N-.":G´zõjÍ ,X KÿœæêJ/†ÐNc¾¡C‡jnpŠÃ{@uï~ñ}ðÆ»­S‹‹¶3·Ô±c4jÕד©)s¡€p<³Á)î˜Ívàìßm) "¢³g©W/¶£o`ÿ®N]ÐäÉ´gC‰€7°·Ù¨»>>tõ*­h…°— ffl'ža¦îVUU-Z´ÈÓÓÓÖÖV¤‚‘ιëå—ÙN<ÃLÝ}ï½÷Ž;WQQ‘””ëèè¸jÕ*F:ç®ðp""‰„íÀÌìßµ··ß¿pp°@ Édàúõëo¼ñÆéÓ§uï\OØ¿+•’PH¿üB£G3 øåý»?vww'"KKË‘‡‡ÇÍ›7霻WÌ8vŒíÀÌÔ]ooïëׯ‘ŸŸß·ß~[SS³gÏ™LÆHç\—’Âvà f¶3oذÁÔÔtæÌ™)))ãÇøð¡……ÅÆ#""tï\OØÎLDPz:N%hm8tþnUUÕõë×ÝÜÜììì˜í™YÌÔÝQ£èØ1Ô]€Ö†åý»çΫ««S<¶²²êÝ»7Ç‹.cpD43ã]kkk¹\>`À€ààààààpÿä]fÆ»þI]ºP] uºÒ5ð ËãÝòòò“'OŽ3&33sêÔ©vvvýû÷Ÿ?>#sZ§NDDG²øáý»‰äüùó?üðÃŽ;¤R)—/þÌÌx—ˆZ´ˆV®d +à‰f¶Ž=zôÌ™3)))ݺu Þºukpp0#ó@r2Û €˜ó ‡÷Þ{/::ÚÁÁA÷ €±ñn×®TT„«E´*,ŸG´iÓ&Åx·´´tàÀ!!!!!!æææºw®'ŒÕ]œJÐúpåüÝÒÒÒ”””}ûöíܹÓÌ̬ººšÁΙÅXÝ]·ŽfÍBÝhUØ¿ÿnQQÑöíÛ—/_¾|ùòíÛ·wìØqâĉLuND÷îÝ‹ˆˆ‹Å"‘(<<üîÝ»O:U ìØ±ƒÁM6Œw%­0Sw»téâêêºbÅŠúúúÅ‹çççnÛ¶‘ÎÂÃÃóóó;–žž^__ÖTËíÛ·—––ZXX0¸tMºv%"ºxÑ@‹>cæxæ/¿ürðàÁíÚµc¤·†JKKOŸ>}úô退"úþû222üýýÕZÞ¾}{ñâŧOŸîÞ½»žÂ4îèQ8РKbf¼;qâDý]"’H$Ddii©xªxpîÜ9µfr¹<**jÉ’%;wÖ_˜Æ>lè%1¶W¯ÜÜÜ<<€<ÂpÝýõW FÝh%د»r¹<--Mqþ®¯¯ï€éV®»55diIEEäìÌXŸÀU-."Ììß-..?~ü¥K—\]]‰¨°°ÐßßÿÀŠË\´ mÚ%&’ÑïÉ0sþ¼¯¯¯rJvvv``àãÇuï\OÞÎLD;SÛ¶ôÛoLö œÄòù»æææ•••ªS*++ÍÍÍéœ7ºvÅ]‰@3fêîäÉ“###Oœ8Q]]]SSsêÔ©¨¨(Ý“€;FŒ ¢"¶C§1Sw×®]ëçç7räH+++KKËçŸÞÏÏoíÚµŒtÎ8’ž…É}œ÷ïßÏÍÍ%"///GGG¦ºÕæ÷ïVW“•ýõ‰ÅLv ÜÃòù»NNN%%%ªS® ž "*.f;pê.£lm‰ˆÙÎ…º«éél'ŽÒ©îŠD¢‡Qdd$3qŒ€»;mÙÂvà(ên]]]EEmÚ´‰¡<ü§ØÔ ÐÎ#6lبQ£zõêEDS§NmØ`ÇŽºôÏKo¾Iï¼Ãvà(êî®]»6oÞ\PP@D... Eâ9??""‰„,,ØŽœÃÌ9¬&LØ·oŸîý’^Îß%"©”„B:r„Fb¾sà–ïGDDr¹<---''‡ˆ|}} ÀH·ú£¯ºKDÍK_}¥—΀X®»ÅÅÅãÇ¿té’««+úûû8pÀÉÉI÷ÎõD¿u—W­0b,_¯*::ÚÖÖ¶  àÖ­[·nÝ*((‰DÑÑÑŒt®pïÞ½ˆˆ±X,‰ÂÃÃïÞ½Û°MlllŸ>},,,ìíí§M›Öh13æ³¶¶>þ¼¯¯¯rJvvv``àãÇuï\aèСÕÕÕß|ó••Õ²eËÊÊÊRRRÔÚ 4hêÔ©EEE‹/~î¹çΜ9ÓT‡zïL©©ï±]ïG¤`nn^YY©:¥²²ÒÜÜœ‘Ή¨´´ôôéÓ§OŸ ¢ï¿ÿÞÉÉ)##Ãßß_µYjjªò±P(œ8qâÇm BíŠôüó$•’©©¡ ÜÆÌvæÉ“'GFFž8q¢ººº¦¦æÔ©SQQQaaaŒtND‰„ˆ,--OÎ;§a–ÊÊJkkk+++¦24ƒâ×@n. ‹nc¦î®]»ÖÏÏoäÈ‘VVV–––Ï?ÿ¼ŸŸßÚµk霈ÜÜÜ<<€NNNööö»víª­­ U{µ¶¶vòäÉeee‡bgÏ®ÒܹTVÆfà$&Ç»zµwï^©Têîîž‘‘³xñbggg"Š‹‹ËÎÎ^·n\.Ÿþ¼¯¯¯rJvvv``àãÇuï\O ±—ˆЧ™3õ¾ 0 –¯›ann^YY©:¥²²’qÐ石¸‚™º;yòäÈÈÈ'NTWW×ÔÔœ:u****,,Œ‘Îyïúu¶W0³­õñãÇo¾ùæÎ;e2™˜˜DDDüøã,ß|^#mgîÞ®]ÃUšŒ 'Îß½ÿ~nn.yyy9::2Õ­ž¨îþç?ô¯¡îNÔ]~1PÝ}ôˆÚ¶¥K—¨O½/ …ëf¬^½ºG¡¡¡«W¯n´Á‚ téߨØýò ê.ŽãÝ¡C‡†††ÆÄÄ :´Ñ§Njqçúf ñ.áF¼FÛ™› uZŒåów^òÁƒ­ý"‘J~~l'®`¦î–––ªM‘H$÷ïßg¤sÞûðC"¢ØÎìÓõ¾k×®U{@Dr¹üìÙ³>>>:vn$Wi>}š&Nd; °L×}œƒ&¢ÔÔÔAƒ)'šššººº.Z´¨W¯^ºÔÃíß%"€Úµ£»w ´8Ð3–«š1cFBB‚îý’¡ë.áÐ*ã㙛͠uwÊÚ½uÀhàºÜN»wSUqø‚Õ`:Õݤ¤¤úúúÐÐФ¤¤F î>1nÑúõ4w.ÛQ€MØÎl¸åQÏžtåŠá–zÃòu3TUVV?~<<Ü××·¾¾>---99yáÂ…ß|ó¢Á\/BÕgŸÑ²eôànÐÚ0³­Õßß_sµÑ0°¹¹ºš¬¬hÒ$úùgv€n8qþ.¿°Yw »xøåý»J¹¹¹µµµÌö `4®»¾¾¾\>wˆCV¯&"ª©a;”®u·®®Ž‘­Nt4ÑܹlçƒÒµîúûû_¼x‘‘(­‹¥%ѺulçƒÒµî†„„-Y²D"‘ѶmÛœ™`„8¦755õõ×_6l b$–°|<3%$Ð+¯Ðµk„Hð ËçÕÔÔ,_¾|õêÕƒ  ÿ¹Grr²îë ûuW.'“'€WX¾`yyùüѦM›nݺ©Ö]ÐDq /´& ÔÈM›6Í›7Ïßß?++«S§NºwØŠøùQf&Õ×~¬´ºnk}á…Î;·zõê7Þxƒ©L†Áþvf"*+#GGŠŠ¢õëYNÍÁÚþÝ_|ñûï¿çã1Ìœ¨»„ Fð®ÏÜl¨»Ðb\¹>34Û¶mDD'N° c>6pe¼KòðÆ»<€ºË[·¥¦²ôŽ7u·¬¬lÆŒöööæææ½zõJLLlY.š6ˆhð`¶s€Þñ¦îFGG§§§'&&fee…†††‡‡ß¸q£mXÄ›º{åÊ•™3g2ÄÓÓó‹/¾Ëå999-hÃQ11DDûö±ô‹7uw̘1III¥¥¥2™,>>^,7¼÷‘6m8*6–ˆhâD¶s€~qæ\šg‘Éd»ví …¶¶¶lXSµi£Ä¡óˆgI¥OnRfüç-X° ++ëøñã—/_ž={ö¤I“ ZÐF• 1ú\ 6m""š<™µÐf‹ÇÆ|M¨ªªjÛ¶í¾}ûƧ˜âëë;uêÔ?ü°YmTqn¼K¸€oùxW*•J¥R• °@"‘4· ?üöÛ @_øqÛW›¥K—ŠÅâ:lÙ²%''ç§Ÿ~"¢¸¸¸ìììuëÖihÃÕÕdiI~~ò+~Œw‰hÇŽžžžcÆŒñööÞ³gÏ–-[ÇLåååeffjnÃmÚ&ðu¼« —“‰Êo¦ÿþ—¢£ÙKÐêà<¢fãwÝUxøÄ⧦ddP¿~,¥hEPw›ÍꮂTJ½zQNÎS;u¢_¤¡C)0œœ¸o}==zôäqYÙS£íòrjÛö©)j xs±­òrrs#SS’ɨ¢‚,-©cGõ7¨»-`œ¿:w÷oÓsÏ&5@k†ºÛl¨»`T>þ˜V¬øçé²eôé§ì¥0~¨»Í†º Fèúuòô|jJ‡4o‘«+uê¤ét/hÔÝfCÝcv𠯩ÁèÑ´q#uìh¨@Æu·ÙPw¡u‘HèøqúàÊÌ|jº“‘©)K±øÊøï‹PVV6cÆ {{{ssó^½z%&&6ÚìêÕ«cÇŽ‰D"‘høðá2™ÌÀ98Ê‚ƌ¡Ë—I.'¹œ="''"¢’ I  ÇÙŽÐ*ð¦îFGG§§§'&&fee…†††‡‡ß¸qC­Maaapp°‹‹ËáÇ“““§L™ÂJT‰èÎ’ËéÛoŸL±±!7—Ð7ÞlkíÞ½ûôéÓ—-[FDõõõ‰‰‰ãŸÞƒ5kÖ¬û÷ï75VƒíÌÿذáŸ+ŒFFÒÆ¬¦àãßÎÿüóF;4zõ"¾¼!zT[K‘‘´}û3šõéCÇ?¹K€ñb¶^ðc;sUUÕW_}µråÊáÇ÷èÑãóÏ?···ß´i“j+++O•‹xxxkèVÞ}­˜›Ó¶mOŽ|Vý÷à8A3g>ivù2ÙÛ“@@ÇŽ±@¿˜-ü¨»R©T*•š¨\jG H$µfAAAª9çåå9;;("@k`gGÆQ|ü“2|÷î“é£F5~ùhh€uׯÆ&$$déÒ¥gÏžÍËËûä“OrrrÆŽKDqqqo¼ñ†¢Ù¼yóvíÚµiÓ¦¼¼¼>øàÏ?ÿ|õÕWY `ÔÚµ#¹œ.]zòT  ;X Àü¨»D´cÇOOÏ1cÆx{{ïÙ³gË–-Šãªòòò2ÿ¾þNhhè?ü°bÅŠîÝ»'%%}þ9:"‚Z°€Õ@œÆ›ãª‡ã™˜§¶µyÿþg\&€·Œÿü]àÅ~ß ž<}é%þù÷å—„K·B«×zÇ|ïè]a!=J«WÓµkê/™›Sh(ÙØÐìÙÌF8ÿù»ŒCÝ0´ü|úáÊÊ¢£G©¾^ýÕ6m(7—TNÊà2ÔÝfCÝà„ãÇiĈF¦{xPPùøÕÔÐÆôо=½ù&-Y‚+x´Z¨»Í†º Í •Ò/¿ÐwßÑéÓôø±ú«&&ôê«$Qu5ýü3•—7ÞÉ—_Ò»ï’PøÏ”¬,š?ŸŽk¤qçÎT_OÒ¨QôòËdmÍК3Pw› ut"‘ÐO?Ñúõ”™I;RM ýõ×?¯zxÐ_ЈôçŸ4k]¼øìCBháBª¨ ÄDºqƒþ¾³¸ºI“¨gOêÜ™<=ÉÛ›ììžL¿s‡¶o§¸8**j|Æ—_¦M›žœsõLüA›6Ñ¡C”•ES¦P‡´v-ÙÙQL ÍšõÏB[1ÔÝfCÝC«¨ ÔT*)¡¿þ"©”:v¤¾}ÿ¹uSjkiçNzÿ}ºw¯Ë ¦)S¨o_úî;JHPuôhzë-rs#±˜ÊË©ºšŽ¡mÛ(/¯‘®<<È×—öíSŸnfF‘‘tïedPQ HÎÎO^Ú½ûÉ ÊÉ¡.]š‘ü™¤R:uжo'GG éÏ?©Gzã j׎ɥ< ên³¡îïÕÔÐ;$“‘DB®®dc£©±DBQQ´mÛS»t¡ü|õ–‘‘ôúë4xp#Ô×Óþý””DÇŽQ}=MŸNR)ýç?ôâ‹äçG={>ivìmÛF••OÍkaA|@ŽŽ´{7>”šJÅÅ$Sÿþtå Y[ÿSþûõSðÌ-íÚѽ{dmýÏÒ/_&?¿gÌÕ|¨»Í†º  wR)}û--ZD55DDÁÁ$Ñÿþ÷äÕ ¨úýwºy“.^$ssêÝ›RR¨®Ž)4”úôQïðñcª¯§  §Žh“JéÐ!:xzö$€êëÉÍÞ{nß~jÞ>}håJ9’‘5CÝm6Ô]€Váƒè‹/™þÙgÓâûY¡î6ê.@«““C&ÐõëêÓ?ø€Þ¿YÇ‹¡î6ê.@«öÇ4|¸ú¶h"jßž~þ™üü¨¬ŒŠ‹éÀ:x²³é­·ÈĄΜ¡‡iæLÁ§Ÿ¢î6ê.>^,©µ‘ËåQQQK–,éܹ3+!4²@[«V­Šˆˆprr …¶¶¶IIIíÜâøÛo¿•Édo½õ+ žMÎóæÍóññ9~üøï¿ÿ¾téR''§[·n©6¸qã†êD ‹íÛ·kèí7ø­eåŒ×(®ªªjÛ¶í¾}ûƧ˜âëë;uêÔ?üPÙfÇŽÓ¦M31y²å\*•š˜˜Œ1âÈ‘#,$h ?¶3K¥REUN‰DµÍ /¼påÊåÓ~ýú}þùçaaa†K ð,ü¨»666!!!K—.‹Å:tزeKNNÎO?ýDDqqqÙÙÙëÖ­³µµµµµUÎ"\\\ÜÝÝY Ð?ê.íØ±ã½÷Þ3fLee¥——×–-[Ç3çååeff²@+üØ¿ `xsþ.€@Ý0Ô]ÃAÝ0Ô]ÃAÝ0œÖ[wW¯^íââbii9zôè›7oê{q9r¤@ (**Ò& SÓµÛ§O {{ûiӦݽ{—Sñˆ(..®{÷îÖÖÖÏ?ÿ¼êIÛI¨0uêT@°cÇ®Åû׿þ%P¡zûŽ$¼zõêØ±cE"‘H$>|¸L&ãT<'''ÁÓöïßÏ„eee3f̰··777ïÕ«Wbb"ã1t|ïÝ»!‹E"Qxx8¾dXûZnÙeùnÓ¦MÖÖÖ{÷îÍÉÉyñÅ{öìY__¯×%nß¾}ÅŠkÖ¬!¢ÂÂÂg&ajº–øÕW_;wn÷îÝ]ºtûlýúõÏœ‹Å7pÒ¤Iaaaþþþ;wîLIIQ½o&» ‡P½ôÒKo½õ–¯¯ï—_~Ù©S§Í›7s$žšøøøW_}UßIš›pÁ‚YYYÇ¿|ùòìÙ³'MšTPPÀxD´{÷îÜÜ\;;;‘HtçÎoooÕ[»r!aSÔ뮃ƒƒ©©©êO¡’’Õ_%¬'ajz³ÂH$’I“&ÕÔÔ8pÀÜÜœkñˆÈÆÆ¦GÏ?ÿüž={Š‹‹:Ä‘„.\(--íÒ¥‹P( …‰dúôé£GæH¼†úöíKDEEEIheeeccãé驜âááQ\\Ì‘xªRRRòóógΜ©xÊ‘„UUU_}õÕÊ•+‡Þ£GÏ?ÿÜÞÞ~Ó¦M‰§Ð»wïìììÛ·o—””ÄÇÇߺuËÝÝS ôÉÁÁ¡5Ö] ??¿3gÎ(žÞ½{÷ÚµkÜIÂÔtí“ÔÖÖNž<¹¬¬ìСCVVV\‹§F*•J¥Rî$|á…®\¹’ù7ssó•+WþðÉ×Ð¥K—ˆÈÙÙ™; ƒ‚‚nܸ¡|š——Ç©xJñññ!!!ʽøI¨ø¡:|‰„#ñT999ÙÛÛïÚµ«¶¶644”ƒ õÉ¢•Ϭ8¼;11Qqxw=ô}Ñ_ýuùòå­[·Ñ‘#G._¾¬zBÃ$LM׆L&7n\ÇŽOž<©|¨hV__¿téRggg ‹ÀÀÀôôtÅô„„¡PèààÑèâšš×ßßÉ’%£GvuuíÚµëþýû†÷÷÷ÿä“O&Nœèàààææ¶wï^Åtww÷={ö(›‰D¢_ýUûÕ!¢òòò‰'ZYYuéÒE¹h Q—-[6vìX±Xüå—_2ñg09Ü Aƒâââ”O‡ ²jÕ*Åã~ýúµk×nýúõW¯^ˆˆðöö6l؉'.^¼èååµhÑ"E³¹s祥¥Ý¼y366ÖÎÎîþýûwîÜ …›7o¾}ûvNNΆ ]\£ó*mcc“žž.—Ë>ܦM›k×®©%WÄKKK“Ëå "‘¨¢¢B.—wêÔi÷îÝÊfÖÖÖgΜÑ~uúõëgkk»~ýú¢¢¢•+Wš™™)­!ªX,>uê”\.üø1S@Ý`æº;kÖ,Å㜜"Ú¿¿âéš5kåryyy¹™™Ynn®²‡€€€7þþûïB¡PQ™šZ\Só*¥œª¬‹Jýúõ›7ožò©X,>yò¤\cÝ}æê(šM™2E9ûàÁƒ-Z¤9êìÙ³å<„ý»œ£<ƪ]»vjOfsrrêêê¼¼¼Tç*..öññ4h‡‡ÇرcGŽfee¥ÖySóª-šˆzö쩨”j:wî¬|lkk«º­¸e«£ |Ü¿ÿœœÍQ½½½5/€›Pw8ÇÄĤ©§r¹œˆd2=zôH$©Í{âĉ'N$''úé§Ÿþù¥K—¬­­Uh˜—ˆêëë•ëêê'TŸ*"5:QËÕiŠæ¨B!¾¾€—p\ LMM5—Í|||„Bá‘#G¾dbb2bĈÿûß—/_ÎÏÏOKKS[œ†y‰Hyà’â±–‘Ú¶m«¼–––VUUi¿: .\P>>þ¼æ¨<…º ÀWW׳gÏ–””> >> endobj 1019 0 obj << /D [1017 0 R /XYZ 33.853 921.043 null] >> endobj 585 0 obj << /D [1017 0 R /XYZ 125.594 591.229 null] >> endobj 1020 0 obj << /D [1017 0 R /XYZ 68.868 311.735 null] >> endobj 1016 0 obj << /Font << /F17 421 0 R /F33 429 0 R /F34 597 0 R /F23 427 0 R >> /XObject << /Im21 1015 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 1023 0 obj << /Length 1137 /Filter /FlateDecode >> stream xÚuVKã6 ¾Ï¯ðÑ&^?cçØÇì Š.°¹m{Ð8J"¬m¥’ÝLþ}ùRâL½—D")é#ù‘t£4z}JåÿçÝÓ§ÏYeY²­ª<Ú¢M“4›&ª›M’5u´ÛGßbûæµûw•×±Þ¯ÖE¾‰ÍÀÿz[­ó&¶N« þ®(»÷3Èáß™^xrôÉêïÝïQV'UµÖY™”å†ïß´Ó`_± :4õÚÙɳĎ`ÆK3øQ ­Íå~Þ ­Ó  €*‹ ,†#jÊx<ÁFóú¨l¯GgZÕñI8ÖßË[ÿ¾üAà×Kè{K®î5\T”Û¸Uœ²‰¯Fw{–õ¢ŸMË §ýÔž7C í4Þ”Ö=ÀíhùŠpp2šû6+-Pö ¡ÄrÀ}È”aýT¬œÜ­¾ßÎ6\¤>ÈK'ãöK ‰Ù;¨•”ÁÎvTU·1õ}jÔ,UÞÅjPÝ•ë- ´Fƒ™§XìicƒUÛuvt¾p¯{¯Î#o‚ µÎH‰Ǽ-ô"L7ipu=(Þ<9=¸¥4rÓ40 ¹ÛmØGT{oˆíXÁ{°«bŒ³LQ)•¾ Oþ¯à<5ÿÄ#M ›œ×@°b»å2¡…ÔÀ¸s¼#8d ƒÓM-"jÊ[tA3ë”Ô A+Ìeý,úòPÍz&ìÔ%ô¤J¿R]܉ÛRfA]<TP´88Ô"f¿ÞHöA=è÷‘>&½.Â8trá„ixŸ>Åü›ú|ìd@Âùª‡WmÙðñã¨Ø$Û,vÏÁc~Â¥†0tA“&é¶ø0 Ì›Sü8RÏSŽrÖŸY5–D&!Òý|üsø@~K2Hðó…lº3\v:¡.·=årW –9CoÎ`ÜOJ>/ÒGp}’’¹KôІ¦ßqû€Œp΃rT·/×(ÏSÈ0¬*Ë$ÛJåÖÕƒÕËîé?ƒ\ý? endstream endobj 1022 0 obj << /Type /Page /Contents 1023 0 R /Resources 1021 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R >> endobj 1024 0 obj << /D [1022 0 R /XYZ 33.853 921.043 null] >> endobj 1021 0 obj << /Font << /F17 421 0 R /F33 429 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1027 0 obj << /Length 406 /Filter /FlateDecode >> stream xÚ…’MkÃ0 †ïý¾ÍÅíøk—Á`-”1vì0vðZ7 M›’¸Pöë'ÇÎJa°“¥H‘žWRjT å¬HïS5›/GTFE‰ª-’šh©‘Ò’P­PµAØd9¥Là•ýþnŽu–3ðß9Dû|zÈòRh¼î§¶Y[ï61r²½oÖ­ ŵëÎ÷²Ïj…˜!… (g”ªc¯ó:@t¾à7`¢ ¦T€=¦-Ýq麘”„—’…¼\bŒ†ª†(Å’B“†·ŒSœ €ž+›c|m|¾à¡¸ y%ŠbŠ ¨sW¸kSÆ%aZþOW"ŸòÜÅNW b„C)øÎøÒy?$q}Ó‡„W÷Ýù4ÜÇÐuâÁó¶N*íqs£orÇŒP¤ÎåÔ™§Î/°ÎÞ¶)Ö¾ŽÔz×@¨_‡aí`ïíÄ_ÞCü˼íúhŒGâ.Ñ9t#ÎÆµR¼ï¬¿K ^ÝÅ?†¤ßû/¨B®Gˆ¸GBa„N8ÖPòæ§çjöú¢Åã endstream endobj 1026 0 obj << /Type /Page /Contents 1027 0 R /Resources 1025 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R >> endobj 1028 0 obj << /D [1026 0 R /XYZ 33.853 921.043 null] >> endobj 254 0 obj << /D [1026 0 R /XYZ 68.868 798.142 null] >> endobj 258 0 obj << /D [1026 0 R /XYZ 68.868 749.083 null] >> endobj 262 0 obj << /D [1026 0 R /XYZ 68.868 723.987 null] >> endobj 266 0 obj << /D [1026 0 R /XYZ 68.868 698.333 null] >> endobj 1029 0 obj << /D [1026 0 R /XYZ 68.868 649.815 null] >> endobj 1025 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1032 0 obj << /Length 180 /Filter /FlateDecode >> stream xÚUŽ? Â0Å÷~Š“!1—4M:*´‚“Ðlâš(…ÚBÿ ~{["‚Óݽ{÷ðçL|çÉe‡Z*@Ã%êÜ ËmaÁØ‚£5àÜ Ê¥&Ǻ¥ßS&µ UónØ•*$~Zº¶Ižâ<®Sçtú!¤%Œ”mÞv}ÅÑ»»€²Ü( L"/Ѧ¶ÅïûûÇy¨Ñn­å‰Vnt90#s®±LAcþB•Ë>t9: endstream endobj 1031 0 obj << /Type /Page /Contents 1032 0 R /Resources 1030 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R >> endobj 1033 0 obj << /D [1031 0 R /XYZ 33.853 921.043 null] >> endobj 270 0 obj << /D [1031 0 R /XYZ 68.868 798.142 null] >> endobj 1030 0 obj << /Font << /F23 427 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1036 0 obj << /Length 148 /Filter /FlateDecode >> stream xÚU± Â0E÷|ÅÓ!i^šä¥£Šœ³‰C¡i T#m?_¥Epº÷ ‡£`'¦¶ÝV6º$©Ñ=8/½ó@ÞIô¡ƒ ßQ[~È…¨wQŒi^Ò}˜?L–÷yZÏò\ò”Úq¥øjo1ÎÅ5œɲADY[«¿=­•¬±AÆISmEòÒ1°76 ,{ endstream endobj 1035 0 obj << /Type /Page /Contents 1036 0 R /Resources 1034 0 R /MediaBox [0 0 595.276 841.89] /Parent 1013 0 R >> endobj 1037 0 obj << /D [1035 0 R /XYZ 33.853 921.043 null] >> endobj 274 0 obj << /D [1035 0 R /XYZ 68.868 798.142 null] >> endobj 1034 0 obj << /Font << /F23 427 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1040 0 obj << /Length 1031 /Filter /FlateDecode >> stream xÚ­VÛrÛ6}÷Wpܺ#"%R—=Ø–’iê8n©&i¦‘„–$8èDýú,@¢bZõ´µ-“vÏîž½¡·õBïÍEhŸ7«‹W¯£¡‡Gh8J"oµñ’ š$omx5—ÕüÀ@<ˆA܉^œ5Ðt(´ó¦$²ýú΢æáŽUÐihÁ38ºTc=߀ikÁÎu/*Ì/7‡5@}|)§’fÜu‚Vדì&÷‘ª9=R çv¬Æ]V£ÿÊjÈØÑ<Çkò¯x=?…ŒIóffž.Š ’é¶´chMÕ¸tnMº-aÖ¬œwõ§#êÁ›úì ×éYDòƒ(åYÙŠ”ôdF\R£ù‡ uSèû]ÿ诸(Iñ³QšÛ;–’ºcúÊ9ƒÓÓ…måW¢¡/8^v\¸X~¥Yãýç†eç~ŒÇÝûq…hЧ^0„{²½§'*ËÕÅ7w7 endstream endobj 1039 0 obj << /Type /Page /Contents 1040 0 R /Resources 1038 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1041 0 obj << /D [1039 0 R /XYZ 33.853 921.043 null] >> endobj 278 0 obj << /D [1039 0 R /XYZ 68.868 798.142 null] >> endobj 1038 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1045 0 obj << /Length 107 /Filter /FlateDecode >> stream xÚ3PHW0Ppç2€ÒN!\únÆÆ ††z–¦¦F !i fzf æfz†æ !) ÑÅ™¹zE¥y1¦@l¨â7BßÍÐY¿‘‘ž¥¡¥‚®¹‰™ž‰1Ô M®!\@Â7 endstream endobj 1044 0 obj << /Type /Page /Contents 1045 0 R /Resources 1043 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1046 0 obj << /D [1044 0 R /XYZ 33.853 921.043 null] >> endobj 1043 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1049 0 obj << /Length 1151 /Filter /FlateDecode >> stream xÚµW[s«6~÷¯`Ò§cÄÅÆ™ñC®grš“æ÷œ‡4ã‘A¶Õ¢’Hêþú®ˆqLüÒ6«ÝO»ß^=gíxΧg¯—óÁÙ­88DA8öùÊÇ(ÇÎ$#Oœyæ< /ú<ÿ|v쩆ŠcÀit–¬\çT« næƒ?<;8 ÑÔ7€A7ÅßÃ,À#íúCë_Òx¦ñu£0ï»ÔN«ù¶¢³“‡_¸J*˜ôdÔÀZ°,©H y˜ù(êÕÎΩºÖþz(j4ܾ»Q4™Ä6 ’ª=ÎÃ!°³¤bV(VP©h%mE›Üíäm&!]© -ÕG)A°áC]ÌÁ0Ñ€š/ìÁÏÏû6­AÂþ¦ÚÆCž‡¢jëSV4e+;ÞªIêÉAr#ÍxA˜}QØ ÒU}+äÞ@ºÆ¶¼:-£ýÓͤ¯®ïì¿öv´k5½ ÍŸ^:Vh@@bœ¿nvÖ¶Y{×Oɲw‰]1!m²M!B¶Úù£ø;eƒÞ|[ų]kX6ólx—åìhܨ½ «¡çgÇMAdóøQ ´;jîY öæ<…7@—j¬Ç0­q-ر¢‚B…ñÕŽa Píîû›åSISÞ²Æ\wÀK*î#Usº£ÞÇú`Yº¬úÿ–UqK«ûÿðÚß® ¦äþjÞæ¤y۳ǒªW8Æ´g8þé´„ÙmåùqWïv¨Ÿ¯«£#\§ç&'E!ê–¤ {3â„Ë… Uëƒjÿä/¹(Hþ“1šˆfHêŽéž¦Ïnñ¤{ŠÆqsqâ¸|°‡©ï™À—€û±bº endstream endobj 1048 0 obj << /Type /Page /Contents 1049 0 R /Resources 1047 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1050 0 obj << /D [1048 0 R /XYZ 33.853 921.043 null] >> endobj 282 0 obj << /D [1048 0 R /XYZ 68.868 798.142 null] >> endobj 1047 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1053 0 obj << /Length 454 /Filter /FlateDecode >> stream xÚTmKÃ0þ¾_aÃ-&Y»µb¿*ˆ Á~S‘ºf3ЗФ¾ü{“^:ÛÙ ?¥½»çî¹ç.!h‹ºw^Å£ó›ùQŠCßg(Þ J|¼ Ð2X`,Qœ¢§±Z'™(¶“™O½qdW5Ÿ¼ÄwhFìù szØó€x&>ý‡—  pR°Ÿ¬Ë\ÖšC!ýΡ”’|-6‚§`/êüWà*7.Vä\i.ÕE›·[oõš'_ˆ ^‰o¹^ÕyliH‘.±n‚""CæÏw‘9Ž]@îK°4EmB 4¤C¿ßÄuk”n³ê »Î³mTuÑö°ßBO[È(+Qè=}eRi±Î Y*¡EYü2(1–µ†oþÁ£ú†?Jˆ‹¶dãà$Ħ#×)%&–D9.SËOõÐðÁ9ï…ÒÇF(iov9ŸÈK“¦TÅ ÜwpvNÃÛêVö¦é©¤SÉþÞfV¬7«Z¦ÉŸË Kdÿ¸`¶ f46;–v„ÿ•{Ï!èÌu9D±]§ë/ávÁQk.U%vwð¡eåÕÕi÷ßÐe÷bŒà†h晪 BŠ€õ@×ñèø;?ý endstream endobj 1052 0 obj << /Type /Page /Contents 1053 0 R /Resources 1051 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1054 0 obj << /D [1052 0 R /XYZ 33.853 921.043 null] >> endobj 1051 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1057 0 obj << /Length 1152 /Filter /FlateDecode >> stream xÚ­W[Sã6~ϯðЗЉµ’c'3yà¶;ݲ”­ÓÝÊì[ITlË+ÉÐô×÷È’“LÊ´Bâ£sýÎE'Ø[yØû0Àîýl1x÷>{$Dãpx‹¥7‰Q<‰½ix†gæØŸNÉløÄõÚògTS«HÔºªµ¥>rG¤öù|ÍÒ‡ÁKÍä+z ÷i­×B:ï/%~eT¯™ÌÉm:ÂQGø‚jæDIdIŸèÆŒ§ìþ"W´ä ,4‘ŸXêe’œŸ¬‚ßJþȤâzã‚]Zúçš±Rå´Ì¨ÿGøþ—–<·tÉWk­,Q2Åä#ËFöÈ8ŒúU¾™iR[}b[»ŒÓª’¢’ð²¶/“Mâßtª¢Y3uÒ‡÷RŠÂr1µ1 ¡\9ÂÎd8ü±Ï©^YTkž¿Tð…¥cÇ™¨Ë *üLüÙj  ÃgAj©4-õ.$º-ý¶š²¸ÿƒ¥º-“BëBÉ ZœB[84t ]iвv/jé,0*S× 4_ QœôY_¬ÈÜr_©âSÅMm”uñUÈ&o¤H™RL͉«»¢â¼¸âJÏoÉ~ïš:êÉ ¨GÆõëÖ¿¤ñÌèoØIŒÂhÒu©‹MÅæG׿ TÐjìhÔÀJò,©h y˜(êå&É™¾0þb5~Ÿåý(šL—U±”/]Ûîp¯‹{&]—.)¼`J³Ê5Ð6-Ý’y™JV°R¿’¤˜¾®‹%F™Á‹`øysW¦Hø_ÌÈ`„1yUp0*UAiÒÜ RQP^Úƒ¥ÏY·…ÜÛ’û®¼öZÆøgšÉ¼û¹—ñv´k5s ÍŸ9úëüEcÙÈfí§~h–uš).¹Tn<ÙB„æjçϘ­öÞÆj«x¾+`ãÏæØ…W UηD£häG{ÑKšñza7n ªšÇ× h-®x ö…å"…ÛajbÆ mô:e‡šêÆW;†‚j÷ù­˜*–жqð!ýA%} LwÂÕfîR‡j´jð_QõA3iaõ_Ãuò¯p=<„4LÉîíßì345mé¦Ð=ÓO°ì­V¦`ά:9ìêO;­¤¨«ƒ#ܤç2§ 4ßÈBä-iÁ:3âˆYÉo’Uun–ÀþÉ_ YÐüg+4·*š!i:¦¯œS¸<Û°ÿBÖì ÷ÁÛn‹ зgÚ칚Wôqo”šI³] ¢í ·ˆH’­`Þº;Þ4‘ÑøHs›»½ÕœL÷Wó ÀhF`7× ·šÇãŽ|­ø,¯rÁ endstream endobj 1056 0 obj << /Type /Page /Contents 1057 0 R /Resources 1055 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1058 0 obj << /D [1056 0 R /XYZ 33.853 921.043 null] >> endobj 286 0 obj << /D [1056 0 R /XYZ 68.868 798.142 null] >> endobj 1055 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1061 0 obj << /Length 272 /Filter /FlateDecode >> stream xÚ‘?OÃ0Å÷| «,©D\;µg`µ o€Pš\R‹ÄE®#õããÖåOP†z9éü~÷t÷jA÷9×[-ÖË%¢眧H5HH,…D™˜Ê ©½Ä{ÝãÊBéàn ÕG±ÓÆ'œ²ø•p2SˆJ̸@ e˜1À_yaûý@£;x*{(,4ú€›cáñl£MÛÁ{]ºrv}š@ÆðZm”îáÙÁçˆ%c=z0õ¤šÿ&ÜYþ`*û9é“©¥üÆô‚_ï•úãçiè_­P ‚ÛBpòY ]éôÎL­tLÊæxãï¹?a/Ö4û›tšœÓ%‚øf–‡ ’ •оÕËö endstream endobj 1060 0 obj << /Type /Page /Contents 1061 0 R /Resources 1059 0 R /MediaBox [0 0 595.276 841.89] /Parent 1042 0 R >> endobj 1062 0 obj << /D [1060 0 R /XYZ 33.853 921.043 null] >> endobj 1059 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1065 0 obj << /Length 1108 /Filter /FlateDecode >> stream xÚVÛnã6}÷Wé‹SÄ\J–l9€r-°ÈºÙÈíMƒ#Ñ6ITIÊY·è¿wxQ"%²¶ì᜙ᙠ‰½µ‡½_Ø=Ï—ƒO×ÁØóC4'·\y“œ؛ÆäÇSo™y÷Ã3?,?ºwTCŒâìGV®sªÕWËÁß°ç{~¢Y` Žã‰—ƒûìe°øÙÃh<‹½g£Zx! ƒüʽdðÕÆÖuèG34ŽÞ·eU;ã¿ÙžÅûhE?šaμQ âà?ÙÀ¿[3§Ç£È‡gú Õ3UD(–ÂÎÌBÊóœIÆK« YQçDéÿà|Ž Ú0œ8ÓÇ£éÔŸ Ÿ™ÚX88© °c¢–àß®V|+Èn%­{V« .ÆKd…ß(Q*òcH»à¨¾$Š:¨YÑðfÆÓ~kR2 Là§Vz•$'ÖÀo%ÛR!™ÚÙ5¾²ò¯5¥¥ÌI™0ÿ'Žð|ùŽü<·rÁÖ%­PPIÅ–f'vIŒúM~XÈŠŠ å2 {ÛPû›T•à•`À—õ}•ì’Ñm«¢aÁ³:§ò´ï•à…Õ¢r§IC¹t‚W—áðç¾ z±¨V,oàwšŽç¼.3¨£sþããV¡ßíÖ`Ã`X#]¹¢/I¥l¸Ò™kDμ¤. VfôÇë¤ZŽü…ѤVõ´¶Úó½õï(•)-iW÷i-Õ!˜ÚéÛ7TUÅ\Ó½Ä| 8¾•ô•«¹j·Fl¶^¡5U·\–M®ìÂÉX-›¥}A¾8BPxùÎØ/<çB¢;šíRÉ2i¬¼hš]™$ú“’‚ ÒaÒšp/ÌÚ!>-Iªn8:3é×U¨ŸøÞ‡öù nkCƒbÿà¼0ÔQnïÑnHP(A¡U÷¦˜¯VI*`@Í—¢†ÊíqÌJŽSÓm~MrÙ¯µb9]@ˆó#Ýßÿŧ8ÌþCU¹>BºýaA Y¦-lô%”ýCç÷1ð1Áø¡›Ä¶Þ;–\—ªjQö$?h&^))Õëd#ïŽ1#æÑTõM=É]‡3=4™>Î\kª3[R˜Ü¼vÝ')©;I¾æÎÃâ´Ÿ¢S›7²øR1Í\Y߸x¢âVð”J ã¦i¶¢b—¬¸aRÍïýx?ìíV ÷¢‰/1‘õ‰#µË]ù]Üqeûÿ¨7…kÁ²¤")Ìây€¢^8(sª.u¼EKs'Ðo ¯‹G*ºG¯b•ŠVnȻĽʛ4B¡ ZªÞÓLsu±`¢ j¾| ¯C<¦$P×¶g1ö÷甆)[¹ ‰jcYA]’ÜJ3^f„»ÙÞV}©âÞÚjƒ]yµŽÍö<øÄ}Z3½Y ô°z3¯Z7NÚ¾qF3®œc¸+»gu p[þaˆq endstream endobj 1064 0 obj << /Type /Page /Contents 1065 0 R /Resources 1063 0 R /MediaBox [0 0 595.276 841.89] /Parent 1067 0 R >> endobj 1066 0 obj << /D [1064 0 R /XYZ 33.853 921.043 null] >> endobj 290 0 obj << /D [1064 0 R /XYZ 68.868 798.142 null] >> endobj 1063 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1070 0 obj << /Length 719 /Filter /FlateDecode >> stream xÚ­–QOÛ0ÇßùѦIEkB\ê¢åe m¡ñ²MÈ$Wj-±#Ûðíg×v“”´bÚúR×¾ûßÝïÎVãà!ˆƒ‹ƒØ}̎΄¢Ƴ _I¥Iœ¤I„Ò“ /ƒïIëH‚ºiˆ¢¤úÄkBÙÇ¥_¡ÃŸù­δ÷bf½Þ’²< 1µ³˜O–THe÷"-ѤgÄ·Œ­ú©—Fóh>O¬´u® »úÆuZ+`ò¡eO­sÃ%Ën¡86û!žâiˆM¢îX’¶2C‘µÇ“šÈõÏ~1ëˆxÑp¸¤ ˆ¸…ŠT=›>ÒõhÉÐè:±‚IÇ´@\;i#Ðtë×2•PpVö êŠÿ A5L;¤x"t\O÷©ÎF¨&C5ÔÊÈc wqÅÿÄU6PÐå³­ÓÑÒØž·âK{D™A E9“vçÔ#³f¯*ZRöà€¹°òtÿ|îT/o“òÚ¥Ñ'C7Óž³ŠH­|-j¹×–‘Úٌހõ¼д•ÔßLÇ02.jR}µN™•@±þ˜3VKAªMÙÎ>-¬mñÔ6­Øê…\£ ^7­‚­FÙöQ(í>kë{ÃÎ)ZƒTÐŒ÷âê®&OR¦; ®Ú:מ7ÆÓ Þ5Ê,‹Ç¶WÔßEãͬö»³jOw6pX/qÕjÒ›®/‡«l牖ù¶K°um#¿¶Â1ÒÈWvÓòì?@´n+bf×Àoî"é‰qƾÎv4MºìAzgÞÑ8βx?œÍõŒkœ¿þ—Tª}óÕõŸ ™mVSïKxÊØË¡Ø6%1m(ó+R½b@ýSR7ZD÷¾ì¡é€lÏŸ5zï¦w,KÿÖ=QåSëÒìÚíš#ÐŽ}”›ÿGçè¤ÿ'b6‹£Zè¸fsîð¤ÉÀé,?ø7«Q› endstream endobj 1069 0 obj << /Type /Page /Contents 1070 0 R /Resources 1068 0 R /MediaBox [0 0 595.276 841.89] /Parent 1067 0 R >> endobj 1071 0 obj << /D [1069 0 R /XYZ 33.853 921.043 null] >> endobj 1068 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1074 0 obj << /Length 899 /Filter /FlateDecode >> stream xÚV]oÓ0}߯ˆ„2hM’&i6©[ÙhˆÑx4™Æí,;²Šòëñgš°$ IKs?ι÷øÚNàí½À{sØçõæìÕm4óÂÌâ4ò6;/Í@–fÞ Æ±8¶Õˆý5B„ä#ðß‚$Xʡɹ* c_áý£°¢­Gì€ò‰q©‚ƒŒä^DrÇhiB?ªŠAÁ­—eÂÀ½è+§7ÔO>£íÌÖrMk’ËE¼¦¿úäïG=`þ´¢‡Ö´ÛÚÛ9%DàI¾•d¥â¥3'i·ÁÙ!}xÀD‚`ñð ²9*v“fZí’b"¤â°‡tÄ@A¶ñôzöˆ¬|@²’EÃÚ'ŽuutãÃV.Šè¤#±d‡÷5SêMÝS×n{UŽRÐ¥=¨Õ亠ôç•X¨ARÁDþ)òÞà-,ï)'èh8ü7¥å-ÜÊsl€þ\Â=Zãßhñ5“pi|?­´›¾°¥’­×<†µ´…Úç`\«ÂÓÏÁèS±Í¯ÿX#y¼ë¥ }7—ƒË„w§ÍdFX¦™I{$6¸DkªfBtðs3`1=y ãÆwÙú>¡¢3ÿ˜ë—v°í¸ÎRpFR(|¥ƒ¥ÑÃ’U?÷¶‹¾£©­Üz‹êì4™ ´u¬›ªÀ¼»AÝÉ ôv÷ô ú¥sÜ»;»ªÜ©eßüH{ôÀ+ykö®Íгªt%rŠ]öd4ŽÌqÍëI›É_DVUqÔ¸’eI Ê8Xɯ€Ð’Hk`žë,4~@É}‡ìte`dÅKí[“ 8wz›»Y±›ÿßiN­öYà²Zvá¼ýaf1÷¹aùg?ì²y'åfsö-×… endstream endobj 1073 0 obj << /Type /Page /Contents 1074 0 R /Resources 1072 0 R /MediaBox [0 0 595.276 841.89] /Parent 1067 0 R >> endobj 1075 0 obj << /D [1073 0 R /XYZ 33.853 921.043 null] >> endobj 294 0 obj << /D [1073 0 R /XYZ 68.868 798.142 null] >> endobj 1072 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1078 0 obj << /Length 270 /Filter /FlateDecode >> stream xÚm‘Ak„0…ïþа'…:›h¢Ù‚—B-ôЋžÚ-%èD‹º=léoVÝ¥‚§aÂ÷^æñ(©%/]æSîìÓ0$ŒÁAˆ€äš0* –$–0“¼$n¡Zì 8¾w]{¤‚Øh¸Ø%UÅØõö‰yŸù«5õ òÌBm¬ÒónrÜÝ F¾~è#åå/œLµÝõ­ï®Ew6sÇÿžŒçÑì™hz4%^ÿ¥Ã$p- ˜ÁNë¬èM’÷g|ØòªÍhƒcýIªša›Òuƒo6H2ÅÙD†ú‚Ét~ݪ 3»N˜¿:loÉî5ìS¯:(‰…n%H¹Ò<çÎâ {ƒ endstream endobj 1077 0 obj << /Type /Page /Contents 1078 0 R /Resources 1076 0 R /MediaBox [0 0 595.276 841.89] /Parent 1067 0 R >> endobj 1079 0 obj << /D [1077 0 R /XYZ 33.853 921.043 null] >> endobj 1076 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1082 0 obj << /Length 1124 /Filter /FlateDecode >> stream xÚ­WÛrÛ6}×Wpܹ#"Eʤfôà[2MljTçÁõd ’Ñ’€vÕ¯ï‚-Q¦UÏ´¾‰vÏîž½ÆÞÚÃÞ‡vŸg‹Á»÷ÁØ#!‡“À[¬¼IŒâIìÄDâo‘ywÃS49¾_||÷~Ü 1ŠcÀid–¼\ç̈ .ƒØ#‰B”pO¼´ÜÝc/ƒÍFã$öžÑ Q$ð”{óÁë[× ‰4ŽöœûZ—%]æ U›Æ:Þ‹Ñ‚”DQâ'…‰ç"‡ñ“õþûÖôØH8<5ÑP? ¿¢Róbl6R‘ç\qQZÅ‹:§Ú¼ƒ`Ø¿Ãpâð}‚ƒ$>qý`õ¹ª) Xã‘S»Gí{ëÍ+ˆFä´ÖB:_/]üƨ~`2?&C¶é(Gå ª™S%'véÝØ…ã“v?Ë5-¹ ÿS»z9ŸŸŸ,Ào%dRq½±{be׿Ԍ•*§evþwásøC\òÜ®K¾~ÐÊ.J¦˜|dÙÈn‡Q?ä›yQ ©]Æ!¶fŸiUIQI|YÛ—óÍܿ٩‡hXˆ¬Î™šöñ½’¢°RLm i(Wnak2þÜçT¯.ª5Ï_ܲtìè8u™AQŸ‰¿£Þ|¾5¨%­ÔK@³Ùì8ˆ†C´l•JÓRoY¡/Z¡YË?Xª{ 7U`–ÜÎMG8BuË~i꿵t•©ë#𝅄®*z™_¬ÊÌJ_©âSÅMy•uñMÈ?™¼‘"eJ15#®t‹Š_ðâŠ+=»##ø¾oJ±'€GÆõëÖ¿yã™ÁoÄIŒÂhÒÕiÇÈbS±ÙÑõW¡çt+;õYXKžÍ+šB*gŠze Ïr¦/Œ¿E„ß±ìÈØ¢“IÅt‡ópì,™ìv®æSšµuâr·]o3 éJ%+X©§¯q¯ëbŠshø"¾ñ :­ÂœÿÍŒF“Q‘6ªŠ¥|åæÙs5© J“æv5ånú®„Ü}.äÞ@v•]yítñÏô£ùô> endobj 1083 0 obj << /D [1081 0 R /XYZ 33.853 921.043 null] >> endobj 298 0 obj << /D [1081 0 R /XYZ 68.868 798.142 null] >> endobj 1080 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1086 0 obj << /Length 293 /Filter /FlateDecode >> stream xÚu‘ÍN„0…÷> endobj 1087 0 obj << /D [1085 0 R /XYZ 33.853 921.043 null] >> endobj 1084 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1090 0 obj << /Length 1071 /Filter /FlateDecode >> stream xÚ•VMSã8½ó+RÌ%lÙBvì$P• v‹aØq³sPl%Ñ®m¹$6óë·eIq &Ã!vZý¥×¯[ƒõn°}^.ŽNoÂÑ ˆÐ(‡ƒÅj0ž¢éx:˜LÇ(˜N‹lðmx&'ߜތ:ªFÓ)øitÖ‚<3µEÕV«î"¸§± ÐY7¶¾1öÃcæSëãüăhx¡ñP²¢Ê©-y]¦¬\›•%És#:'ŠñÒ¬ÔÒ*EÃëd›øD(–‚È2òaQ4¶ÉE­6\ØÐsd„O”¨ ùI0¤ÛÆs¢¨5 b#úL¶Fb<é˜ÆÓ/bMJ&!B“ÿ¹‘^'ÉÕ•güU²g*$`cÖøÊÈÿ¬)-eNÊì@fã_ÁW`15ˆÅCÁÖ%PPIÅ3Í<³¤Fý.?,„šq¡Œ?{ÛPóNªJðJ0À«¯Ë©šë|1Š ¿/òþ.šJ¶ ’ªæÑÐYRÑí\Å *u<±µkå®’P®TЂ–ê½’ x_ 0L´Cô/ÆopîÚ8ƒ„ý Ú#Œƒ7»rü”MÙÊγ›dÔ$vg¼ ÌN߯UwD>ï+þ¾±¥×^×éüt?ê§bÏþël½¶[Íν棗~@b’Ÿ7‘µmæÞú! ™í/bBV‘¥ø« o½Us–³–°:>ËfØn§â²œ¹=a/öÚ½ÂàÖ'EÆjh24‰­° Rÿž¾·iSïüŽ•ÐZ4ç))ûàz&b/Àú õ£¸×®@MXnvkUû¼3è˜j'Säî ;¾Ä6þ異‚¤š[·‚×ÕÁ‰qkâ=ˆ¢é”’08 µñm*Ç€•¤)ÍÁ·v½Wÿ M¯‹Î¯ ‰×\‚{ûÁKEìAôB wPjélìIBdÇx•sîÆ‹ðeÃÌLo‰Ù\œ,¬®Jò'È>Áõê š¾&þ‘ûŠÈ~€•{”K. ’ï©[{Žßøð¼RpLtç0k¹c¯BKª^àVåêàî—»Óõ£Øý+õ ¸Î‰ÏsÇÎÎUúô&˜ì_¡C¢h<ø#¸JÛ+ôYÐ1¹^ýABd endstream endobj 1089 0 obj << /Type /Page /Contents 1090 0 R /Resources 1088 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1091 0 obj << /D [1089 0 R /XYZ 33.853 921.043 null] >> endobj 302 0 obj << /D [1089 0 R /XYZ 68.868 798.142 null] >> endobj 1088 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1095 0 obj << /Length 437 /Filter /FlateDecode >> stream xÚ}SMÓ0½÷WXå’J[¯ÚM‚” ‚]- ¨ ‚p0©[,ù#²²ü{ì:-MÉn¤Èò̼™7oÆì÷34œ¯šÙíÝj0†¥9hv# ‹åâ²Í|Ë4S|±¤˜fu5³XÔöú’×ùÉÞÞáâò½æ9‚®À’DÅ¡ÊG 7Íì/ö à endstream endobj 1094 0 obj << /Type /Page /Contents 1095 0 R /Resources 1093 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1096 0 obj << /D [1094 0 R /XYZ 33.853 921.043 null] >> endobj 1093 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1099 0 obj << /Length 1167 /Filter /FlateDecode >> stream xÚ•WÛrâ8}ç+\³/d Ë7LªxHÈ¥v*“É,ìÌC6•¶íØ–G’3a¿~[–01L6$¨o§ût·×Y9®sÓsíûżwzíùDž3_:QŒâ(vFq„p$ Îóʱ`™Íx§ê'äkìî7@Ta«kŽtê¿·² ïwa[ žÕ§§eÁT%èÓ“9Úâ¶X»¸;” )KÁKÁ *w»¯Ö1i˳ãè¨ÜHpŒ2™¿Åöû»mQ¥XöÖÁWšø¶Á.`¤R˜– þò~¯+ÊsªÄæ­çiµ`ÉEÆ“ïƒ)/ šè¾¾fEJÅq÷÷Ÿ¿j÷)å[¯ZXK¬ Öâ7dR‘Bm‹Nº—_üp:öµXÁ4ŸŒdLZ¾TCn ƒKÈ6«¤D$k4[qÁÔ:ï$°“‰Ñ¾•ù§’éñ,ªüß©¸<¡RR9Ávó’]²ü–I5yÀx=Ö£Üíièw ¾YLû¯ÕqŒ‚0jÛ”¶+ç›’N>ÜýÉÕ¬„UG? ºZ~%X:+‰^¾…ƒ.ÏzQªK×Ea­1슼›EͤgiTµjô¡: j«mV_ÐW,§RѦO,wÛó†I +4§…:D ‚€wU>Ùv¨ë…]øzSç°eÓÌØ¿TÛ¸Èuñá¬Jš°¥Ý߯Ý$õŽ#v§<'¬h­Â]Õ×FîLdר¶×ÎPk|zÜõûÐsöG£l—–‚ þÖ¢c˜ð—udm›6Ÿp爒ÔÎÙ¿¹R›n´¤*¾W 3ÿ­³Éþª¡±| 倊ðz´Y ’²JêF=”ký"¸‚½¢ý&'M­Ü;ðp8†6ó¢08)ªÖ»W-Í_–ú¢4÷D݇:úÁ–2úönÔ7f‘ÊŽ›r¯¨’ÂØÙyYØõ rÙT›{hš—Ñ´óÌÉ‹÷³ãym/yt#í_G•mhƒrbPë9ì^M ¨Ðœ¬ZÚ¸sÑ•·û^ëþúõ2ûŸ«nw)htÔN͈ÒŒ€Š bJ×Áï®Ý+×g‡ò¿e+¯-AlÃÜ^•MáwÝñh÷ÑÝó\4ÆcgèÃ?öÉ}ì·L࿎ÿˆ:~ endstream endobj 1098 0 obj << /Type /Page /Contents 1099 0 R /Resources 1097 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1100 0 obj << /D [1098 0 R /XYZ 33.853 921.043 null] >> endobj 306 0 obj << /D [1098 0 R /XYZ 68.868 798.142 null] >> endobj 1097 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1103 0 obj << /Length 723 /Filter /FlateDecode >> stream xÚ¥V]o›0}ï¯@Ù •jH «ú¡nSWu¨{Øöà:&± 6Â&möëgdžBJÓ-‹%{îõ=÷Ü€³t€suìçYztr9:zqúNš9ÑÜ›ú3fŒæNºp~¸7w\žq¶¸­ ñ„àøWúÉ‘„3g/f&¡‚OBº‰þÜ‘(W¤",Fã-ì@xU ü³ O õòÀ`üCEÐã91Lz¨ð$4‰–½CÁÁÄ£œ²e/eZÕd;êVQÿ⮪ãG^ûæúʨ¤ª–°Ç_VhMåÆT¤Ì\”+K䂈²Ó¡¾-<¬èäšIR!,)gW¯Ë½Cº2õšaê™%#‚*¹šØ£ŒŽ¡;6åÆ$W¹uêäžà©†€ñ$ö"8ºÇY@‹…­`^ñŠþæL¢Ü\~Bê¹ý!ysi¢‘賜󪸼¶ ÝR5GqnùæYößQž¿«ód´­:¬ê’‹]²ö¬@'Ü2û¬B˪( ¦ÙfGCrSÚo<3·è‹`„å‹È'BXC¾a^Í}Åéàò&Em,9*³æü!/èáIèVn,¬Ýë}£ÛcH ÿË Ú%È9Vro´¿¦sa=!hÕ¯H®sE± µŠ¯ˆ°vxèhüÀ›¨ûBÙ9*J刽©ôBÃî6ä-`˜×¶©xÃ{P çki½F$ŠsÃèÐé^øÞ{ww=vMçöë½`¨´frW3¦§ð3Yò5FEOMÍ":QïqgÃÖj­UÝó¼NèaÎ2º¬+¢³(a>~”3Pÿiеæ±-­ ·]{ŠAÏ‹4 zW0™Ò‚|“¤ÔÍêNu†í9T•âMâÈ3Áu£¼ÖW¬ Õ¸Þ*ZÕLhò¶'—pÞ}êð}àÅ0v&ñ̛έ®â ‡¹Hþ„ÌS¥ endstream endobj 1102 0 obj << /Type /Page /Contents 1103 0 R /Resources 1101 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1104 0 obj << /D [1102 0 R /XYZ 33.853 921.043 null] >> endobj 1101 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1107 0 obj << /Length 1144 /Filter /FlateDecode >> stream xÚW[sâ6~çWx¶/¤Šll0™Ù‡$$îlÓlL»ifÇØÔÈ–W’³¡¿¾G– ˜6“‹Í‘¾s?ŸöVö~ëaû¼š÷Îoƒ‘ç‡hŽo¾ôÆ1ŠÇ±7‰ÇÈ'Þ<÷û—hzö4ÿt~;êl 1ŠcÐÓ쑌WDïêÝÌ{ß{>ȱçÃö ŠÂq£o½¬è=>a/‡ÅOF£iìýh¶^ˆÂ` oÌKz_Œk]{~ä£é$êú¶L)CÕ¦±ŒÂ3 E‚ažxà @þØ*ø¥ñü›Õsq6Œü°©‘ ª‘èõZ+§EÍREyikIË•YºI6Éð>Šf¬Éx2„ BH‚±w6qп¬Õš‹ ƒš!£è+IÕšF6§ ³T F8#)DX)ÆqGAÔUð§X¥%•M6â›$¹¾ø_%}!BRµ1k|iä_jBJÉÒ2?åÝ?8Â×ðÏ7 KÆŒAWk%PIÄ ÉfIû‹Ü:ß-¤EÅ…2êÕ™ß_ÛZ¥U%x%(ä¬t¿BÍž‚ç5#òÂ¥x)xav¹‘ 1i;“aÿWW¾XT+Ê~¦à”q´"¼ JlN( `Œ§A›šRª´T»¤î6æ‹I¦œÙÕ57ÖJª³KSF¥ÍžjS]Â*/xmQ’Tdkk”­¸ j]8Ó ¾ÈG³û³,þ¨¨éŽ*ëâ+ÏÚ‚¸<#RÙAø¶{‹ŠÎhñ™J›“Füèàç©iLG©À>ұݵ${®k£0w=¯l+Í7-WX‹î¸J*˜gòaàŠy%hžTifÉc P„1vB^49¨Ùapx ‡.÷£nZÃoɯ"]Ú9ß²n¹d7üŠD*RI[Ͷ!¶ Ø «£÷´­’ RR+8’DÝÕÅ4';Í:Ù:~ü¦T]d Kèd‡ô‘†’!ßÄœŒYV0 ©åªœ)-ÍÂ’‹Ã­Û¹¹pµÒ>Øöæ¯ËÊ|Å_µ““l¤ŸÃìŸöÖ²a» ͯ^úI.ãü¬±¬±yûæNAÆD©,ÏžÍ+‡RÚ·ýmËóFØ’xšS;¡¶—­´\Ù<=bÀ£èÉÙ@dÐH¼¸j-o;ÚÊùë}š=·½xr Z>€Gµ<˜ŒàÍ,Ù:é«ptø²zA3í8쌷v~/á¼S·p‡è¢üc˜D~ªƒŽfaÛZQ3¶¥°ù`…¦×V[pëãݧ¨¿Óà`›hÇ6îR‘9¹ù6e’X{»÷ȼ?9u)ÎôZÖåÜíøGï#Ããݧl Ñ yäÛÁ¨XŸÞèÕhÇ6#æt¸æŒÁÁ |rh«ÃÕiÞ¥Üp;šö¦£/®ÌÞ o÷kb>uæeh`pHA{[’Ú¿N8 x/ì£|³u=µ$’2¶uzŸ‚–Œ·tkyw/\¸¦vѹêŸßú“ý+~`4õ§Þp_Nì u ðýäénÌ endstream endobj 1106 0 obj << /Type /Page /Contents 1107 0 R /Resources 1105 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1108 0 obj << /D [1106 0 R /XYZ 33.853 921.043 null] >> endobj 310 0 obj << /D [1106 0 R /XYZ 68.868 798.142 null] >> endobj 1105 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1111 0 obj << /Length 643 /Filter /FlateDecode >> stream xÚµ–]o›0†ïû+Pw“h µ ¤Ro¶µQ¶©Š6´]lSå‚¡ÖŒlÓµÿ~&vHÈœ%]n"|Þsð9¯x…¼é°ÿï’³ËÛÑȃП„áÐKr/Šý8нqù0{IæýèIRú©ÀHáïˆÒþ „Aï'AÿWò󱄑7€‘I`¨Ä,ì]õyN9ç‹ ÐW\²ŽøNGMyàý»0‹k¡½Ðè¬È¸(Ý_ºk.J:}…¦pÕ7êAM†fý¬pJòSV="ejVH(’R,M f7±š=p}™¦Hj© \ÕTή\Ý­h̘Â¥J+§‚×Õdî¾pucî5¥<Še»½ žáúô?ñµI5“ÆoÁÈ L¦ˆVtRQc‰hƒÄîè’<žÓ™`EÆÄrÁËe-;¤Åƒþ_¹5<šÝ|¯»À”ºÝØîlZËb—}wâðÒa·8Ͷ—ó4ëˆef½D#ªÎl;<7Ë…@OD½¼>¦©)¼O¸ ݘ{Ò(M1Õ;ZõiÇí<Ü?†‡nÑIDPf‡ýDdöR.ufEYeHʪk6‹D¦„ÒEOòÊuœœÄã3aPYé³åhÇè®LKn(m¸CøpA‘P¢ç™²e×5¼º]Z8ÈÜêý#NÏ9iFi=dIÅ…m]\óªiû¤5Úc—KïœôJ~ [rBqs2ÍÎÉs÷|’”Wø¾Ù¤›Ò.KH‰¿*\uI9õ˜eNu¶aUV>c©Ø¤ Nõ\ûÁvy Çë_kÃ!ð'pâ F±.ßr“¨“s“œýðR“E endstream endobj 1110 0 obj << /Type /Page /Contents 1111 0 R /Resources 1109 0 R /MediaBox [0 0 595.276 841.89] /Parent 1092 0 R >> endobj 1112 0 obj << /D [1110 0 R /XYZ 33.853 921.043 null] >> endobj 1109 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1115 0 obj << /Length 147 /Filter /FlateDecode >> stream xÚUM= Â0Ýû+\Ú!×\šë%Ž‚œ³©ƒhÔ‚VÐüùV+¢Ãã=x_Ž a‘éÏBV6UDè™ „Ô]í@„P,AØÃ*ŸÄGÜ¥>ŠÉæýé-8¿·—tÞöíµ››°Y´¶[ƒ·Ô­5ëôŠ|ˆä÷Õž<(!A¶<.xù+ÍCöq½-§ endstream endobj 1114 0 obj << /Type /Page /Contents 1115 0 R /Resources 1113 0 R /MediaBox [0 0 595.276 841.89] /Parent 1117 0 R >> endobj 1116 0 obj << /D [1114 0 R /XYZ 33.853 921.043 null] >> endobj 1113 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1120 0 obj << /Length 1125 /Filter /FlateDecode >> stream xÚ¥W_sâ6çSx®/¤:ÉØÆdæ’tzsMs1í=¤™c¨±-W’s¡Ÿ¾+KƘ´3$ØìîoÿïJÁÞÆÃÞOlŸ×‹Áû;â‘M‚È÷k/ŠQÅÞ4މ§Þbå= ¯ÁÏ‹ïï&=Ù F³5B2çÕRƒÛÅà¯:öˆGÂE$jNâÈËŠÁÓ3öVÀüèa4™ÅÞ·F´ðø3x˽dðÙøÖ·G"Œpö[ –)ÆKTíëø(F£„€§a£d<#ˆL§ÞØ÷‰¬’ï¿躼‡$^éGhƒk(ë”åµ –Ί:O5Ä0¿1µ5œV•¡×’•í¸4†ˆ‚ ²†/Ƴét:¼MvÉø!Še9=!8‰°?¼ªÕ–‹KcdŽŒú/4U[*rºëAÃ>tž*jþÄç4£Å’ KÅ8>gûW±IK&›xm~n“äæfdà¿•ì• ÉÔÎðøÚÐ?×”–2OËÕ9åàßÀ1 «<7ZÛl•4DA%¯t52,í/rëüÏDVT\(£^]áÖV6­*Á+Á gm¤‡jd ¾ªs*/]I_ ^)*w£\ZBg2þèrʉEµbùÿR°¡¼ JìÎ(ñaúg~›šRª´T] RwÓóåŸ4SÎìêšk%ÓÙeiΤ͞jS]ƒB•—¼¶(i*²­5šo¸€±*œi_ 䃑þ$‹_*fHº£ÊºøÂÅ‹¶ Ϩ”TöÄvoQ±9+>1isòÁŸÈ~ž›ÆtDö‘Ží¾ 9p];ЀHŒ‚0ê#+ÛJ‹]»Y¬Åw÷\%Ì3}7rÙܶJª4Ó+åè£c센êå æÇÁaXìØ¸8îùh³{u¯5dE3¶¶sÞ²nwI7üŠT*ZI[Ͷ!ö ÐÕÑ2m«d‚´T—§.©º¯‹hN:Í:Ù:~|®T€la û›vH‚4”Žqð]Ìäl̲‚IHí®Zñ"e¥=¸8ÝÏ3²C°íÍk^—+(ó5ÓNþN³‰~Ž}<²Ú[» [.0š_Íú—\$ÆùycYcW훻쇕 êLõöÁ2çÙ‹y5UöÍ-E‘®˜Oe/[j¹±IzÂÈÆ£ðÙ™&ØbÐE¼¸nÍîÛÙÒùÛCš½´èBÛà+Á£Z…jŠôÍ 89yY½d™öÇóÏÚù¹„ÃNÝÁu£"§0Kˆü\ûœ\Eû¾ ›)°ý„ÍK4æØÀ-¸‡%¸û; ŽUu«Æ@&2çb¾KsI­½î=4ïÏN]Šçz-ë/Üýì‡çÝsEßïF8bK0 ¨NÈ©ÙëC¾Šõé;½úôLàÌΩ9nxžÓæ†yl«7±éª¿o»Ñ´×};pÌíµ@ñV^oåsþÉõ ëRÐ^•¤ö¯(>»uýàÂN¦‡vßÇhFfÞ8Ñ„X;³¸‡9þ'’e‚ endstream endobj 1119 0 obj << /Type /Page /Contents 1120 0 R /Resources 1118 0 R /MediaBox [0 0 595.276 841.89] /Parent 1117 0 R >> endobj 1121 0 obj << /D [1119 0 R /XYZ 33.853 921.043 null] >> endobj 314 0 obj << /D [1119 0 R /XYZ 68.868 798.142 null] >> endobj 1118 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1124 0 obj << /Length 672 /Filter /FlateDecode >> stream xÚµ–QOÛ0Çßù{) 1Ût/Û16„¶h{Ø&ä%—ÖšG¶Ãè·Ÿ_ )¦­ô%}þŸï~¾s¢`DÁù^„Ï÷éÞÑÙhN)=Ò"'a2N‚I2I2 Ò<ø9xÃòü`H °öþ1!p@»æ^ !¥r#…ûCfn¤”9ˆw¿ÓOÖùÄaÍË0SÀ ü@åxð+¢QgK’0¦ãþ‚Š•àÔOœõ~çyÿЧ^K]õŒ¿C6jå£0²¿C7øà…⋵!}EŠî¥*™Ø®IüšäÐ×jÖ:<¶$¦ÇH@×ñbádÍœ§Y3ex&)4Uj&‘…â™á²b˜P^P¬Ò[(\Ü›ž+ÙÔ;¹ú*Íz¼V¥Þ´„> ü]Ö/í‰[I¢6ã^ó|aðìKÓ[…c¯µžS´ŸÖ¼šõ¬SÕ€,]ûêØA0m'ÝŒ‚ºÚfty$d¹Ô‚û:ÇáÔí¤-égŸˆ¶ÓÜØ(@ÿ¡h ®pيŦnà=E]iÂÛ(ÞÑn‰Ÿ †—s]>±{VØ_K6«¸ir Gnx¦Ø-7‹—Çtî„·áy²ëâÆü™fYÂîè>NL··W§aBž×,7WÜzM­.³[®È “ÚF€WÖPÎìDY÷‹ ‘èŒ Á^©‹~æÕGVÖ¶·<‰Ê…´ï½ºVÓk]‘t$<ñ”ìî E½Þ_¼\Ö¿4>Ì!û{-»» ki#†nSny5buÒZ‚†mÁóXzc¦ïÍwDSpmgºVPð»~ÒBÖpÓnÒ_:`Æ«”—ðÍ@Ý'嵇*÷ZÓh‰uõÍwtF&?øHÛZ›ÃQÒ%‡é´·æ4Ýûƒà¥ endstream endobj 1123 0 obj << /Type /Page /Contents 1124 0 R /Resources 1122 0 R /MediaBox [0 0 595.276 841.89] /Parent 1117 0 R >> endobj 1125 0 obj << /D [1123 0 R /XYZ 33.853 921.043 null] >> endobj 1122 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1128 0 obj << /Length 185 /Filter /FlateDecode >> stream xÚA ‚@„ïþŠ]ôàë=Ýu× KQ×öV¶ÊÂVèçglŠÇN3Ì7 ÁVýta‚i‘¦ÀŒ¹” ˜30IT”εs‚]誻Ý:û\×eÅ’E8ÿŠ ™ˆ¢ƒÙ@Ì…Ì:(Dæk{’üGJ'uÎÞŸØ·-[gý»Z?õªîííèªG=ë[cZcÓÖ”zððrZ°_LXaž§gJ`BÚØ_ZK|²Gi endstream endobj 1127 0 obj << /Type /Page /Contents 1128 0 R /Resources 1126 0 R /MediaBox [0 0 595.276 841.89] /Parent 1117 0 R >> endobj 1129 0 obj << /D [1127 0 R /XYZ 33.853 921.043 null] >> endobj 1126 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1132 0 obj << /Length 1188 /Filter /FlateDecode >> stream xÚ­W[sâ6~çWxv_HÉØŽaf’°étg›fí>¤™Œ1‚¨k[®$gC}, 0´3íä‚9Òw.ŸÎEÆÁ:ÀÁ=l?¯æ½ó›p¢$ æ« IQš¤ÁEš ’^óeðпD„œ=Î?ߌ:{£cPÔn’¯©ÞÕû8ïýÙ# Ç H£„$­ÂQšyÙ{xÄÁ?Æið½ÝZŠÂ1<Á¬÷ÅøÖµGŒpw[ –+Æ«·¦C2Fãtü¿˜CØBƦ Ϊ7­i|À­Ñ@€¡¸Õ0ÔLÄ1 †aˆHbU¼oi{rA<9•“³aL¢þ¥þˆ-·­d•±¢ÔÊYÙY}»ø©g³²Ï ¸3„P¢(±6φ$L“¸ŸUKƒË hÑ”Œ1£ý0ÒF²jm¤g›Ùð.Šå=¢z”à°Ù¨g.&FÁôWš©g* ºé@ã.tš)jáȧ4§å‚ZBŒÓS¶ë¬b²¥eâüž]_ ü׊½P!™²‘ò•‘i(­d¡99¡üwãkøG è²(ŒÁÖÏJ¡ ’Šº˜%í/òëü×BVÖ\(£^‘þ³M€¬®¯Î|'Ôî)ù²)¨œøH_ ^š]Tn$(F…´‚ɨÿƒÏ)/5ŠÿIÁšò’*±9¡$„55•TY¥vdþÚà‹?h®¼ìÚ:kÓ첬`Ò²§Õ,P8åol"Jš‰üÙ-Ö\@õ•^šÁù`v–åÏ53"QUS~åâ›¶ îÏ©”TvÄfoY³)+?3i9ù`Äd?mbz"ûHÇvë˜í¹®hA$EQœt‘µM¥ùÆ5 kñÝí=W³꙾øl®[Îê,ß6 QŒ1öB^tsPÓÃà0"€hÃŽ–Ýý¨;©!k𳕭óÝA6®—ìŠ_±’JEkiOÓ%Äôéè=.UrAKZ©É1Â%U·M9ͳfM¶ŽãSgP‡›±¿èi(âèMÐädв†RÈl³Zò2c•\nÝŽ7´}°MÎ+ÞTK8ç+þªüæ#ý9 ñÀþiom;t«°Ðþê¥àbfœŸ¶–5véžüçžsè ¢ÉUwº<ÿfͱGÛì–‡ãSdKfë“Á¹WNZ­-I…°0À(~ôÒmìÒˆ—WÎì6Ÿ­œ¿Þeù7—‰þ*´^²ê> endobj 1133 0 obj << /D [1131 0 R /XYZ 33.853 921.043 null] >> endobj 318 0 obj << /D [1131 0 R /XYZ 68.868 798.142 null] >> endobj 1130 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1136 0 obj << /Length 735 /Filter /FlateDecode >> stream xÚµV[OÛ0~çWDðR&jâ4i/h± B(Ú„šŒã¦ž’8²6þýœø„ÖÅ\V±JUû|ß¹|ÇÇ ƒ"ƒÓ­~³­ý“É$À$Idó ¡I³tŠp: ²<¸QVkÉvÇ NFGÝOS>·¶Ý•µoW0Âïäà ö`œ¢8™CbLPŠéŒŽ&îÃê©v,•&$@¤æ´dV͈dJÛ=-ÀxÁì¼BönÇŽ_ˆ\ñ QɈfÀÚÐ4¼“< Ðaã dž¹-‰æ¢¶âö£Ú$JQzÙHvÀƒqe ~“²„eWˆ}´)Ùì쟷•ÈYyèi™êw`Ž{Ák€šTnËm÷ž·÷öA@ÓˆŽñ7F'}ˆBóÙ³‹+ > endobj 1137 0 obj << /D [1135 0 R /XYZ 33.853 921.043 null] >> endobj 1134 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1140 0 obj << /Length 307 /Filter /FlateDecode >> stream xÚ¥RËNÃ0¼ç+¬rI$âÚ‰G%. Šà€"57@È$›Ö"Êq¤~>IBSr@—]íÎ쎋¦dx³=âëLýâ̘Çÿe- ë4˜Ezwfœqm5'qðJuõð˧Áß—¸\Óðü =â8ö‘ËÃ4ÕRâOX÷©õŶ endstream endobj 1139 0 obj << /Type /Page /Contents 1140 0 R /Resources 1138 0 R /MediaBox [0 0 595.276 841.89] /Parent 1142 0 R >> endobj 1141 0 obj << /D [1139 0 R /XYZ 33.853 921.043 null] >> endobj 1138 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1145 0 obj << /Length 1204 /Filter /FlateDecode >> stream xÚ­W[sâ6~çWxv_HÉØdf’tº³›fcÚ}H3c¨±-¯$'¡¿¾G–l0´3íä‚9Òw.ß¹HÆÞÊÃÞÏ=l?/g½Óä‘‚È÷fK/£q4öÎÆ"ã3o¶ðúˆø'³Ï§7£ÎÞ`Œ&!(ª7ÉŒ—Tïê]Ïz?zäØ# C‘¨V8G^š÷±·€ÅÏF£ÉØ{­·æ^€O™÷¾ߺöH„®sKÁRÅxñÞ´O&h2žü/¦}¶I×ôk’e•›Ú4ÞãÖh ÀPXkj&ÂxCßG$²*>Ö´=5A<5*ÏO†! úú#´ÜÖ’e²JP+gy•%uôõb%Y±2K?ªD(*´kàÎB ‚ÈÚ<|“çô„ô•ØPR,ìƒÑ7¯òÒ.-3ÎÅ;+×ñ&Þ%B+aiF˜EØï_TjÍŹN‘Ñõ&jMEF7hØ…NE-Ðà”¦4ŸSa¥ÙþU¬’‚Éš*Kíu_] ü·‚½P!™Ú˜5¾4òo¥…Ì4-G”ÿC|ÿˆ]d™Ñ"Øj­¤ *©x¡‹YÒþ"·Î-dyÉ…2ê$`m‹")KÁKÁ€³&R“$“¡zOÎUF幋ô¥à¹ÙEåF‚b”I+Øš ú?¹œrbQ¥XöŸ¬(Ïi[¥N%>Ì­‰ßPSH•jKAâî>ÿ“¦j[ûNš Š2&­*Õð\PÈïœW¶+$MDº¶º²L­s'Áà…ÙöÉ ¿ÈükÉŒH×RQåß¹x†à©¸<¥RRÙA[·yɦ,ÿ¤eã“?ü<Ö%é ì#Õm@ܺÔÔ 2FAu‘¥-¢Ù¦GÖâ‡Û{®â:™~¸l®[Äe’ÚÉÑ}bŒ=Ôt?8Œ jÀ°ã£ew7êNQÈ’¦l¹ÙÏbÕL‘mÛ+–S©h)mñ4S±Á½Ç–d‘ šÓB"\Ru[å3Ðo5k²u4Ë@\Ìþ¢;P¤¡tˆƒwA“£AË2Ñ5m¤ ž'¬°S¾™ñÛ­mË8CÛÛâ¼äU±€<_ò7íäï4éÏ¡öO{ka³ õ¯^ú.bãü´¶¬±‹æÉ÷”Ã4Uª:£`žñôÙ<š´muÛä¼BÛá,˜íOy/i±²$=`äãðÑI °{(#ž_6fÛz¶rþv—¤ÏM%º»ÐVxΊ{ð¨’{}áê¤gQ[Waݶž°ùb…¦Ð#¸w°o¿…ý­Ǭ‰¶³ÆM ©s2ß$™¤ÖÞö94ÏN]Šgj-íNܶ÷Ããî¹¢ïV#œ®PTr¨÷º§½V±>½Ó«¯%1×5gÃÏ2Z_t÷mu:6Yث̀ŠÖL^ÞŽ%XØ9Ì¡‹æ°W;—X3ÍÄ~TÉjÕHp9•íÉžÀ}MíMBsvÝY¸½…–¥4qËøÚåí¼óÎpzCÎvß|r†&“‘7aÔ¼lt0ðªó7írŸ endstream endobj 1144 0 obj << /Type /Page /Contents 1145 0 R /Resources 1143 0 R /MediaBox [0 0 595.276 841.89] /Parent 1142 0 R >> endobj 1146 0 obj << /D [1144 0 R /XYZ 33.853 921.043 null] >> endobj 322 0 obj << /D [1144 0 R /XYZ 68.868 798.142 null] >> endobj 1143 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1149 0 obj << /Length 674 /Filter /FlateDecode >> stream xÚµVmoÚ0þÞ_Á:ç…—jýRiTÛÔ UѦª«*“˜-$È6Bý÷‹sÁ¡  9ß=w¾çÁgÛŠ-Ûº»°Õó6¸¸»®…1ù¾c3k8@®ãYƒaááÀ "ë¹ÒL0zÙó±ß¹‘¯³\¢˜ŠIγ_¶o_|ù|+@{ØCž×‡@F¢dÅ å¾Ð'- *xÆ/&×d¾î ü?ƒ#ü‰U©ðuŒ‡Èóû Á„¢(NE@b ×ÁeY%T ‰ÕI˜Rµ­ŒF¹€5‘+ç9Ã,ÍsV¦íiyUå> endobj 1150 0 obj << /D [1148 0 R /XYZ 33.853 921.043 null] >> endobj 1147 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1153 0 obj << /Length 615 /Filter /FlateDecode >> stream xÚÍ–]oÚ0†ïû+¢î´’Ú„Pi7ÛZÄ6UhCÛÅ6!㜀Uljl§¥ÿ~6tY]ÆÚJ7€ßóõä8FÁ2@Áø¹ï·³£Ó‹Á À8Åq?˜åA’†i’Ã4 q: fYð½óJU@Y~ÛíÅ8êèÑͯ¸S©å ¬¡ÈeimÀ‰2Fk‘PÕ\±RtÎ>˜È=…Q”8ï¹, +Ò+°¹‹¡XæÖnçg>Š!•@4L„I¨6‘Ʋ¬++üb´Ñá4Œâ¤-¾ü\ês›ë7`* µO[• ØüÞØÝÇüfnª~|âK±ÉýÒi"«‰ÆT9oL~‘(eAøÇ–‡È|à5Š6Šž¯$“9>Àj¢õ ì~)È B¯ìÒ6yíÂ6Þ‡¶©íåÑöýh]}“°i¨]'"³ëY ¦ëíÜ•¹]^JrÍô홯 Oâ4¶ŽÍÇ%æï4¡¸Éè®N×î¯@M ´iû‰µõFaŠÝ¿¸cMöü߆d®Ù×Luq‡–ÊTàæÃ WFŒ¡¨ÚSè(Ê8ßÔ¤žn>1ñžËG#1UÙ’üPvæâ ÏóUõD;Šª=5=û¸ìàêÝ èÕ´dM+Ý 9FJ—¶/ªÂðªùîIkjò—q¹ïzo§ï¶ˆ&gšÓi*!gëö¥xYÁ¼IÒOiK&f¬€/ª6)ï~™wwCù%ÚíŸ*ïi<äâ'q…5ÐZÃÇ á¨=8J²M—·Žw÷§Ó <üýòÔÇÃpdÂõâAˆîö„QÒÏŽ~&SX endstream endobj 1152 0 obj << /Type /Page /Contents 1153 0 R /Resources 1151 0 R /MediaBox [0 0 595.276 841.89] /Parent 1142 0 R >> endobj 1154 0 obj << /D [1152 0 R /XYZ 33.853 921.043 null] >> endobj 1151 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1157 0 obj << /Length 299 /Filter /FlateDecode >> stream xÚ•’MkÃ0 †ïù>6»–-9Îqcë`°|; š¶ƒnæÿÜDùp¡;I¶Þ÷‘Œ¬ÅYhñ’iŽ!ÛŒ€Ê¢3"œ„óÊ;/ ïøB„£øØ=(°ùgxÝl¢E¯JŠ NtºÖõí­j.ê§¹´ê±Ë{;DuvÙû¥1 · ·ï¯ßóµjÑ$c7D××ì“|¯U“KܹN§Œ°D¦s Ú”m$ ñ(I•.#Ä.›w¢,„;´@ð†…fBZöi«‡lÀ®½—ëv1Ü­ ˜èC×i1ܵÉK1ñ+•0wì-‰–ÁÚx°ÃÂD[»ÑÓÛnm#«_ðdšýu(æÝÄÜ#IÖ),§×EâzÙ÷øÀJ endstream endobj 1156 0 obj << /Type /Page /Contents 1157 0 R /Resources 1155 0 R /MediaBox [0 0 595.276 841.89] /Parent 1142 0 R >> endobj 1158 0 obj << /D [1156 0 R /XYZ 33.853 921.043 null] >> endobj 326 0 obj << /D [1156 0 R /XYZ 68.868 798.142 null] >> endobj 1155 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1161 0 obj << /Length 1154 /Filter /FlateDecode >> stream xÚ¥WÛrÛ6}×Wp’¹#Á Eêâ™<øÚÖ“ºŽ©6®'‘„$XŒ­~}(‰ ¤v¦ã ©]œ³ì. ¬üØÃîy5ïßE£ ŒÑ(GÁ|Œ§h:ž“é…ÓI0σçþ% ã³—ùýùݨ³6ž¢YDÍ¢µ¨**ͲÞí¼÷W/ Gh6³Œ£é8ÈŠÞó rPÞ@õÚ,-‚ÅÑ Þxö>YçºÃñ–LºÞ-¹xEÕ¦±Œ´!¸™4ÃÙ%É,F2KðÞºþÅ]œ “0î_šGÒ†ÕˆÌ+U¬¨9ÑL”VóÊôÚj ªÖNF8WVX+V®ŒƒàÔâ‰ã±3}6œF£Qÿ6ݤÃG"5Ë8=²p4ÆQÿ²Ök!/,ígd-ýDÊLd_;¸¤‹»!š:Tˆ-ê¾æ+‰0ž2ú«\‘’©&^—Û4½¾Xøo%ûF¥bzcubiåŸjJKÅI™Ÿ"ÿ'øþ…tɹe‘lµÖ.’**¿Ñ|`UÆ_äçüÏBVTBjK¯ÏÂþšÚwRURT’A¾ÚH÷·Æî±ÈkNÕ…/áK) »ŠªbÄ•ìLÆý|Ny±¨ÖŒÿ/‚Õrs‚$‚®ŸEmjJ¥I©w) þ¢‹?iæRxl“YÉ€ˆ3å¨t›ç’Âþ.DíZKQ"3×B„¯„„†*¼ /ì²ùQ¿TÌŠL-•uñYȯ<•RdT)ª:ˆÐÕmQ±V|dÊeãƒ?‡øyiJÒØG&ª‡6€tëzÜ8ЀÂ)Š“qY¹"šo*Ú±øîáIè´ZSIß |6W’åiE23EöJ0Æ^t$§úæ08ŒB@4€aÇG—Ýý¨;E¡*š±åæpëbÑNǶí5ƒ¨i¥\ñ@eXy ‚fwÌW’e&iAK}q,áŠê‡º˜sºc6É6Ñ`|j¯ÚâRö7݃"¥Ctx2hUSÓVš‹‚°Ò*–B.ݶŒ7´}°+Î+Q—9ìó•x3NþN³‘y#> endobj 1162 0 obj << /D [1160 0 R /XYZ 33.853 921.043 null] >> endobj 330 0 obj << /D [1160 0 R /XYZ 68.868 798.142 null] >> endobj 1159 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1165 0 obj << /Length 651 /Filter /FlateDecode >> stream xÚÅVkkÛ0ýž_aRÔªåX‰SÖ/ƒ¥l£% ³QºRT[v´É$…’_Ë’Ó¸±³6m·@uuï¹WçèåZ©åZç×´ŸÂÁÉ|<¶ 3„<+L¬` ÆžoMƒ €ÁÔ cëÚŽH.99"ûL5¾]– %rQˆü—‹ÜêG7á× Ô>ðý‰¼jÅh˜kxÓåJí«àh.U3‚öÕ¿Æ®‡>êÆS–ÓÀG“6PU™ 2Ä©‚€M´oéh†×„k‹.Ùi B˜ ÏLáíKáu¤0 ‚f âK²À\Òˆ…V–;p8Žu_.¥ 0æB[Ͱ¯W KZäz ¸ûM"Ù®Ä @0ót%G&C•JÜcÆŒAh ÖÝ„…™Y¢?¶ÒfELØi—¶jªÕLã "–µ°;ÄÚÊÈ%Î à™N0¬³ªX‰åð¸+CVöÞª±[5¥a¿Û x/5Œ$RÉSº´[Jup‚žÊÿÓ„ûv77¦ÄÜLo³†ª=±NNÊjs¶~h¬R8¸ÕïX[ÝÇ2ÅF'd^ð ³É (|æ ø‡=üsš._)Àäͨ‹9D÷ÀùG Üáè6ÜoxÛ9‚Þ•vUÁ!¬»½™qíý pëè…çN‹\þ_ÚëÞ–÷>ÚÑ+hwà!«½á]”$¢Éº9E°l߸æ:\å1á©a?á4R—mSiõz!×&ñ-¾<ºžóbUîÓÅprù½s“qÁ3q ”`¸gµkñ]Ey§{¼®ÐèbÕ pÁ¤Ó[, æ;Ø=Ð"ÂŒæiË;ä+¢|7Ø“9œn¿`aP­€ÀrÆ@Í)ÝY+æs8xج¼Ú endstream endobj 1164 0 obj << /Type /Page /Contents 1165 0 R /Resources 1163 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1166 0 obj << /D [1164 0 R /XYZ 33.853 921.043 null] >> endobj 1163 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1170 0 obj << /Length 446 /Filter /FlateDecode >> stream xÚÝ–]kÂ0†ïýaÞT6cb›Úv3PÙÆdŒÂ.¶!±¦¶,m%ÈþýÒ¦ûP«ˆ8WÖ›„súæœ7 A`6P9^{ÎÀ4ÆÐ%¤ ¼8=hv-Ðslˆð¦àÙxA·^½[ÐÆ´ˆ­F Z–½–E Ýu ãvu¼™Í™ï­6Á–!C*ó1æTÈÈç,Ó‰E2eb–êã4SIl¾àY”&Ÿ«UI¹ú2’¡ÉiAÀÓTèX̲P—”óË•ʾ³(†¾`T²›D2A}©J Eº˜k¡ò… ]•éÑc*ûºYOD÷ªÚƒˆ³=„ ™nñJÿ}Vtý¤º+Ì󳋪nsC£Rki-)µã<7Î}VK“TĔ߭(1DêcçȪKjˆ½¬Ú D¯aç,(kdÑ”m£NŽK=v0r¾ÜÉ:o~“unó˜”í”É&å§£ÜÂF¹}"š…{¶kDZl!Mv‘.|žõßÞãÕ¨'ÔÓ³zór’ssUxÉ?»û$«h"¿ùªD}/ëàÄ…Á_<Â_O¸Î÷~¾ß°ëBb*•é@âb­Â­ˆú^ãéìª endstream endobj 1169 0 obj << /Type /Page /Contents 1170 0 R /Resources 1168 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1171 0 obj << /D [1169 0 R /XYZ 33.853 921.043 null] >> endobj 1168 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1174 0 obj << /Length 490 /Filter /FlateDecode >> stream xÚ­”[o›0Çßó)¬ì…Hŵ¹&õe—F™¦)ÒÐ^¶iòÌZƒŒÓ¥ß~;iiYÛMå8çüÏí&¨BmÄÝßä‹óË0D”â,Ž”—(Iqš¤h&˜¦k”è«÷Ätõ=ÿ`4~`üY`í¯ú¸(oV~L#O_Áð{…PÀµh¥µ3YX{Ã*)ô¾koKk®»úæõ±p%¶B/Ì0 [©A±1íFµûÎæ0‘QGSʼnÇV¼±‰wªé‹v¥$k\ÿ6zé[žÍuÆ8‡Útt;ç…U…&æ:³>?Ã)uo±g]§­úsí<Ó{$BV¸e_‹ž¯¨×öfkÑ­ÃÃãèìKÇ”¼>"鹨ëq¦þy8ñG!ß±¦²úo$ÃTãHóPNî ‚éHâ®À}" ;lµ£ØODFòbp‚ûp˜-õö ø¯]+†UºÈ1êu«Üèfå×¾>}iAÍžÀó0õ£¿Êmø3Ñ”¢†OÏNA)“Í-˺ýýcèqÒO¨„ÌEŸ5tSP³ñ ‹Ùè*™—h¿•\=Ðü3Öø ¬p¾×pï4,´¿¢R{9,ù˜øt,Ÿ_ÒõÝ39 kœe!òCb’¸º”NUïóŹö„# endstream endobj 1173 0 obj << /Type /Page /Contents 1174 0 R /Resources 1172 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1175 0 obj << /D [1173 0 R /XYZ 33.853 921.043 null] >> endobj 1172 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1178 0 obj << /Length 1110 /Filter /FlateDecode >> stream xÚ•Wßsâ6~ç¯ð\_Ht–±ÉÌ=$!éô&½æbÚ<¤™a Pc[>INCÿú®- °c¸4 Á¬öÛ_úv%\gí¸Î/×¼_.o¼‰ƒ}4ñCÏY¬œ0BQ9Ó(D8š:‹Ôy^ œ=->¼™´týÍ0Ô( ®jÁõbð}€Aê:”]¸17‰B'ÉO®“ÂâgÇE“YäüÓ¨æŽ|oO™¾êÈÚÞ° ¯YÂóRP)Q¹mœ»µ añ4D>öœ±ç!#?Aèß,Ÿì/ê·`XŒ¼2’i¡Uc¼ÐË’åUF”ùì+ÉŠµ^ºŽ·ñøŽÅ’3<Ìh!D5†œ|?4¾ÏÆ“Ðõ†•Úpq®s¤m=P¢6Tdt{ :'Š 7ÕÀ9Mh¾¤ÂH]7jÚ~kR0Ù$ar¿Žã««‘†ÿQ°*$S[½ÆWZþµ¢´)ÒSÑýåîüÃt‘™B ¶Þ(©…PP*^h:ÒKu¼¨ßæ»…,/¹PÚ¼‚êo¨~&e)x)ÔÌfºÛ¤Ìèä<­2*Ïû ¯ϵ•[ †Q&`ïÒþÜWï^,ªË~dà”s´¦<§Jlÿ·‘›‡·œ¤–*‡èzY¯ÝWEA–{{0#fž­t!)Ô¾¢¤¿1øòoš¨Þ¢‚ªÆ|Òª·2ÿ­dZTó§¨ò.ž!V*îO ÿ¨l!°áj^²9Ëo™49|ÒâG<‚ß§††‡9à] Ș4)(K—‚M—¼Z.)ÉÆ0)[sÁÔ&?–ª­~±âÔorj@8B~¶‘¥áâb[ÒVK˜ôèÏåZ°4.IbæÏ ~F}Œ|©‡‹šwËå"7Hƒ÷Åø¦– ’ÚžÛ˜àaïvƒHO(/Ë©T´4{XO–Üp±€ OÍiq”6~©òckP×× ê¬íZ\Ìþ¥{(n FÇnx”0²¤ [m;l‘%Q»“"å9aæXqÑUÝwGOx‡XÃðK^)lí%­cü“&“ú}ì¹#óªƒ5Ô®ÂBóW/ý ±Ž}¾ó¬k¡#9ºß°=ݾ‡áj'¢ÝoY³–%ÄÌ9`8ìlCòÎ5´„‰v¤àùeÆ“ç5œ¿Þ‘䙊wôSΊ{’²Jv(îw{Âê“×}¯§‰ ©–,©Ãé…yîq?¿p6*8†YBâ§Xñ¶¦¢;ºØaР]ýÁ5z¼Zp ë¹ûOvÆìhrthô‰¤wjßLRãoÿèç§^[ŠgT"iÎ]Gï›iÇɧm­ r¬¥Úov¢·7ùÝúšÃœQ=å¯x–Á‰ #¢ë«Õ‚$M;#·åO_xKÅŽŸ¦ íEöôùŒt§Û‹’¬Cje¶2µÑ\Äñôð"îá)šÍ&Îx_Ì=c¯…oÿþ©]Q endstream endobj 1177 0 obj << /Type /Page /Contents 1178 0 R /Resources 1176 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1179 0 obj << /D [1177 0 R /XYZ 33.853 921.043 null] >> endobj 334 0 obj << /D [1177 0 R /XYZ 68.868 798.142 null] >> endobj 1176 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1182 0 obj << /Length 631 /Filter /FlateDecode >> stream xÚÅ–]oÚ0†ïû+"vRIc˜”‹±•jS;MU´]l2‰ Ö;²hÿýìÚRÖi»‚œ¼çÃçÑ9qà^àÝ\öw–^\ÍÃÐÀŸB8òÒ•OüI<ñÆcà#ॹ÷½ÿfÉh>Bû5âЗ$+±0É ,ט맨¿%rmìÚ'E…1'ÆÞ~¦ŸTê!ˆü(ŠMxA*?ãIüžQŠ3I?<‰ÁÄ`ÜöØëæ„æ˜»ÅЈ+ôðÙ*$ðƒ^ºŠq–íTÖ·Ï£˜Ý#š³jV²ì×BõÊ6J{]Q…ƒoUæ‘â2mx˜n™ÜÈäÞ¢²4ÿ-JAiHHÉ*cd+KmmÝ+–ãò,ßl쨒 E•͘uÏd^èÚzî2A[._qê$P\ãÁ´º5Έ”ñ •-,ΘÀÓ1ú#’Õÿƒ„Jûj £Này†ÝAÄg€àL"½å€K$Ô0—œHYZ‘žu»Å–Xn1¦Æ¾\'º^ìwgÛ#úH%æèi9Ýp¶©;àš™¢fU_x%Nn36é55¸q>² -ÄË7åF$@·T5öy"„Z·÷º[IàÜ[1ck,Ô‰t°#‘$¢ïhQâI—ù::¡DTa™®8ÉÁ“=KlŸyµ¡º‡8ïýU|綦Žp›#ü+¸ù£ÊK²»’DN…ÐÃdñ_'ØÚŸv á‡LNõÀê~:ÍÅ¢†š{I{ÔÂþÐëv®“$Â~V¬@k<›ÊÝ-ëjƇW,0ú0T‘É›o:aËé:½ø ½;‡× endstream endobj 1181 0 obj << /Type /Page /Contents 1182 0 R /Resources 1180 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1183 0 obj << /D [1181 0 R /XYZ 33.853 921.043 null] >> endobj 1180 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1186 0 obj << /Length 579 /Filter /FlateDecode >> stream xÚÅVQoÚ0~çWXì$âÚ!†0‰—imÕ­C¨‹º‡mªÜ`ZKI9†­ÿ~v.)¤ ƒU´Ë‹£;ßùË÷Ý]LÐ"è¼CªõCÔ99¥x˜¢% ÇxèhŽ0 Ç(Z ï=™¡yl¤Êf<~ßc4èMÝÂzÝ¥–¥«Ûÿ}B qÀFv pŒ ÁÂhé%ÈóCN|°¿+rËå$ /ŒŒ!­ù*)lZð-µJÁaî˜n•1µñO’÷õ åÉ N(dŠc-¸›8×j•C‹Œ”qm°gWÊœ¨oö€¹N‹¢2K šÂî. ½q oìw‰¤;h`­VoèÝ nË”Nyò¹E‰{09@’¦—½¢`Få»Ô½½Zl—Zæ ¥ª#ß@§]E+øbQ±¯yŸö²"áŽKž€u-‹X­*~<Íevw|E.eör;1ö6Í´[!¡í–  i¦–1â·îIùï ‡ÓÁ,¦ŒPâÿ6±‰ÕÊXbÿ«¶Ì÷²ÊZXõ_•Õ#•+\!Q|!t=@À–ªu=Rî«æ­fK°{¶”- Ùh£ݰ¸,íW«,ã·‰ø{Qé—\62X96%Ös۩͈káͳ* ÀíL}6—"´$xÐú4\›H>ÁBZ!h[/϶27¨Söi¥[qçZ¸Œ_Èk’7•¾­Ìþ¾{i…l® [Eòx:9£ãíkOÇxb÷†!fu™R4‚N£ÎŒOuý endstream endobj 1185 0 obj << /Type /Page /Contents 1186 0 R /Resources 1184 0 R /MediaBox [0 0 595.276 841.89] /Parent 1167 0 R >> endobj 1187 0 obj << /D [1185 0 R /XYZ 33.853 921.043 null] >> endobj 1184 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1190 0 obj << /Length 621 /Filter /FlateDecode >> stream xÚí–]o›0†ïó+¬ì&‘Š &d7“–©S;E Û.º 9àdÖÀFÆéÔ?›ù*M›mÒv±+ƒÏ{Þc?$vѹè]ÏmÆ7qïr6#Œ)!ŠW(0Ñ$ NPœ¡ÛÁšçI.iÆ”7ì";Á¸®ç?n„ Ëœ}u‰;¼‹ß#:> ÐûŽïàs]7%‡ÔŒ*^\Ôz÷PjK~ ;(×_J­e‘Ø`¿3í~žSÍ*|fé&ìÚ\ǽ€y×Á¹€ˆ™5A<ăCW®•¦JÇüh5nç -ÊGRS×…¶ŒºúR×îð2Íqh–Í³Ž ÍʶÍàn7´6û>ž9Ç©>¯RŶm¡;ã,Ïôž)xו–ªQŠiH±ÈŒK)2¨^w¶Ê,ª8IÆ•ÐLÑTs))Í©ÚeÏUQÌå»\KLÔ/ËÄ®±êFdeA˜ÊÐO©r"Q{9=V’r&UAuÔ_|ºé¶[²5í!FÝä0‘m^ML§L7š+‘ª¿ªg‘«QÁPñòTô7CDû,5Íáñ;Ì4Oá ¦Ö N&°j³›ÔÒ|gF‹9;Â+ø-¼æµoÎÎfk–˜Ý< 3šÿ¨œD¥´¯™Ð¼¥dG… 湀¹úü“8ü_›R6»N`ÃO3Ò°d:X þQ–È/±äÏ’ýÇkQª KÜžE7F ’jg±wm1׃ÚßÞH¢Û£kHíÜײ„‰»º}Û+Öå OöïWx:uÈx‚FãÐ!í§„19Hz÷~çþ¡¢ endstream endobj 1189 0 obj << /Type /Page /Contents 1190 0 R /Resources 1188 0 R /MediaBox [0 0 595.276 841.89] /Parent 1192 0 R >> endobj 1191 0 obj << /D [1189 0 R /XYZ 33.853 921.043 null] >> endobj 1188 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1195 0 obj << /Length 393 /Filter /FlateDecode >> stream xÚÍ“]kƒ0†ïû+‚»±0ÓD/6¨£»¥Êzѱšv‚š¢qÛÏ_4ö‹YìfÞÄ$ÏyO’óö§êÇÇp4ñ ` ]Btî€cCC7íX;6S°VwÍÓ—¸ ž²`uÆ3V*÷ãMø,D4lBÓ´Ž`N%ÇY˜Æü6ﳪˆ¹§,VQ0[ÎgÁ0»¥û¬ ³‚œ> endobj 1196 0 obj << /D [1194 0 R /XYZ 33.853 921.043 null] >> endobj 1193 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1199 0 obj << /Length 1161 /Filter /FlateDecode >> stream xÚWÛnã6}ÏWé‹ÒÚŠdK¶c4ÒdS Ø¦iíî>´EÀH#›% $eÃûõФ,Ù²,°F†<Ã3g.¤‚Áz ~¹ ìïÏ««ÛçñdFþ$šŽ«l0ûóé|0›Oýp>¬ÒÁßÞƒNoþ]ýzû<éìæþ]ŒŽêM_ cŸ9IAøå^ïnNq¿"&®á#ƒÇèßõ]ÇÍâf‡‘÷ bïϪ(È;c̸0æœoi±6Æ¢¥1Ó˜>-÷ËÑ+Š&{’æ#ŠòBj¢Hn„QEÑÔr¸M¦ÁØ{¨Ô†‹…Á<ùÆÝW j‚Áþô‰(°ÀñÜŸ ü,éqÌ;⮃ßÅšTÖ$.åããÐÀÿ*脤joÖxfìT…d¤H/±û'ˆƒGü/4 ÆŒA×eå Al!š%Í×ï÷ùa#ÍK.”q¯nBocÓ‘Ò-•§9)çiåesy ÏKÔâ2r콃Úa°fýu©*¬´Æ¤5¨ÿ>¬EÞ¤X&xn¶¾½eS•€·7[F éè@´/qç¢#e)x)(VÄÙ‚41ËÅev ÷ûLæ§Ü¾ÿ0Ö¯eŒqÜmT« µ!h©(ƒ S/(w_¦ 麛Å]†·Nó³#è™YNDµÖ"O–ÐŒBAã*¤¾¬Z¢wi&y?kZPE‰;9I€¨{®ÛVj‡ùÒ›ýƒÒß@ëÄÛ!·hE„¤fo)Z•wàšÑYˆãRj^Žk‹8F‘b¤}ò” (·‡¥ÈªvRâAšl \9ÕêèÌfŽ»Á2(¸j&-ø}e’0"ífœß:™f„·Ó×cÇYôô1åÎý(žv‰§¹†Ä1ŽU§\;jX6¬±ú’Ϻ©ø,óßJzÿ ö‰¢ƒ|!9œß±}ÅËî¿@2ÑÇCü§ùön– ;yEÑ_л.H^êe#õ}3ýŒ¦3: »°ëëë¾:[Vï‚cÿÖŸ«/[TÂQJÁÍD©¸°¶’ EPîbÚVìõÇœ¬ÙáëdéL¹Õ7LŸd¸æãܑĤíìv—µ¦1žC})Y3v-Æ$·OÛ‘ªÎnGÕ_C䥂rI¿éò .†×›öÆxVWL]õî¥Ë:0uå:«Ý©Mg‰ÊΕv¶z:2¾˜ûsõèF|«ƒ¼™¤vp?d¶ú¢czNTh—˜9<õï|í£ †‰"Á^ ÉÁì«y‹&µabUa¯Õ§Ö´ZÓµEÕÝ®$ÙPØê»¬çð>8T:Ø?ZøÔ] ø’qB¸[Õ¾8“dšuf/¢]ÅÅÞO­FÑn›Ü–Sç]¡t•:©Æw)ßÙÊÌH¢Ü#ßpÀA‘O®k÷úïè²øÿPtQBùñ4ÊN?ÆÞ­"uµ ã¼|™Ù#ïmPŒåz®iÜQ{Ü´%4Ë·ö9ÜÁ¶t¾·nŸÃYû;+Œ"üÀºŒ&ï>éÂpÖÁ|Z]ý|IÍÊ endstream endobj 1198 0 obj << /Type /Page /Contents 1199 0 R /Resources 1197 0 R /MediaBox [0 0 595.276 841.89] /Parent 1192 0 R >> endobj 1200 0 obj << /D [1198 0 R /XYZ 33.853 921.043 null] >> endobj 338 0 obj << /D [1198 0 R /XYZ 68.868 798.142 null] >> endobj 1197 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1203 0 obj << /Length 364 /Filter /FlateDecode >> stream xÚ•S=oÂ0Üù–XBKŒ_°ƒAbA-•:0Et  !8%R>qŠø÷Mòœ”TaèdÇïî|¹÷ÌÈaämÀ̺ò“õtJè\‡x!‡Sgê’™t)ÈñŽdg©8W‹ÑÞ{' ).±SÎ]¬†#[€°–ÕÂ- ¬FÚ Ô‘T΄ƒ,9Z!TŸRý$+R‡‡ž]OQp­•á6ɾ ǹuõã¸9Šr£%*×ꌦ™ñ+ÐÄË9ö KdnU0ýd‚=þǧ\Å!ÝÖÔÛãçQ;ô‚á?`§wC¼g”F¡Oi¥¹¾þ“n%E)e©)üÉòZeÙ›Ymª¢é£D­nH­R«‹uã'jŒJ&døuûh Úη.Ò"9¨ î³R XÓTÓãj”b¥Õ±i~a ¡YôåSÛܘ˞Mçko탘¬aÖy ²g ÄBR— ÈëÕü›à endstream endobj 1202 0 obj << /Type /Page /Contents 1203 0 R /Resources 1201 0 R /MediaBox [0 0 595.276 841.89] /Parent 1192 0 R >> endobj 1204 0 obj << /D [1202 0 R /XYZ 33.853 921.043 null] >> endobj 1201 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1207 0 obj << /Length 1069 /Filter /FlateDecode >> stream xÚ­WßOë6~篨î^Ê”š8MJAâ¡P:݉1FzÇ$ƃ›˜Ö»‰Ù»Ý_¿ãØi›[· iH%éñùÎïï$ {Ë^Øûé$t×ëùÉÙ,öpŒ†ñ(êÍ_{£1ƽóñáñyož÷žû„ÏO_æ?ŸÍ†ÝxŒ.0Ô(©%2£EªµQÞ8i¯’4è…¢á‘óôî•ËÓA‚ãþ„›kÒ'œ×‘VØèY¹ÑvBV‚†fÂ!jÅøÒݦëtð@¤fYAMxÒR‰ã‘ól!“Z¯„tž§È Ÿ(Ñ+*‹Sܧë#à)ÑÔA£ØÙ«$sÑE!ÆpÒÿ*—„3>š .­ô6Monk`¾¢Vø…³7*Ók{ ^­ü·šR® Âs‡¸–L-§ æK:œÜ}žÉáÏ0 oàvÅ·µMú’-WZY¡¤ŠÊ7š;³&1ä7ùŸ…¬¬„ÔÖž†´©’ª’j•õ5²Ñ)E^T]ú ¿JQZ-ªÖ¦¸¨PN°u÷ô5Æ‹EµfÅ{Ž9GK*JªåúÃFžHaFðNœÊ}´9¶g5çdáŸó­¹zæÄ·oÓèˆÃ†#X‘ka&©ë´ÍGȸŸ ® ã­'±ø‹fúò)îÑ5²PCÀ¶ßµrá-Zwî{A‰j‡èoáb¨ƒœ½1Q¨#ƒÏøÆ‘ü0 ñm¢.îŠJ&rÅˬ`!jžɨ×TÁª]Y;wªü¥b[ºñº|ò«Ù.òAŠŒ*EÕUäØUVlÊÊ;¦ôÕsà¿4ìôûAŒ3}O«’LÍ.]Y§ÆQÂc'£.²r|š¯+G³+ëüÓý£Ðiejÿ)ðõi)YžV$Û,ZŒPøb„½UP=emzˆ’F{à‹n7ßÎÄ©Šfìuý]ß œ *»›Q³’*M+·À`CvåVÌ8ÌpI¹¾> endobj 1208 0 obj << /D [1206 0 R /XYZ 33.853 921.043 null] >> endobj 342 0 obj << /D [1206 0 R /XYZ 68.868 798.142 null] >> endobj 1205 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1211 0 obj << /Length 761 /Filter /FlateDecode >> stream xÚÕVÉnÛ0½ç+„ú¢‘"J¢— é¡K =Ñ"Hƒ‚’h[D  ß¡HɦKu’K჌!gæÍ›‘·ô"ïóQd¾ïçG§Iâ!Î0޽ù›NÂ$N½Ét¢éÄ›Þ/yEa9=0JýsõÁ> #àãÛù/@Ó0Åcø¦ašŽµÖÏ£î4²å É益”QIáZ´ÿªe^ѯe+-߃ yUÖME¯šô¯*šËòùœíÚ§át†´Ý‘$ËÞp]9iµ„Tœ-µ³Œ´ÔY¡ÿHÞè3¾Ð ( ¿¢®FrE™1RZDïà”{ï’›ïÊÝ–õº"²äÆÏàöopzæò¶àÂX60KfyRL‚¾Qve-§L ï\ÛhEô%oÙS¹¤(×­Cñ[wàTÅZõÚÒÒnЭËKihWæ®õý·C9*ûgZ8²Ã6dxŒ±“‰>ÕigÊã<кh‚ÐZ*çd¹QÚ(8ÛVìï´dö"ìCMöГC¡'{ ãzKÏ´¯‘Éì6l°©bkË‚îðÊ ÆÙª²‘¢C‘¢§I†n sAa¬\„J©i:­mr÷ö¢Aý}¨šÐFÒ˜Øô= ß1QPàG>ý…MÉ–ä·ÎÞV±Ñ>°kšš¿i4é†i0tâ2_“öκ¸ïY~ûUEatø&8<¢±;¢øÄ5Vþ爒çå¿JDV›NÁ~!Ôb½/™Aú¥ÛïL8Èøýî²Ì¨ZmüÁêSép0ÌÒ¶´ÎªÇ½e¯[úÙ{Ë‘ÚÞ_o2.%¯)Àoœ¼6°Û,•ï4O6Ã::_GòúŒ‹šTÝ» QÈžž^ûrð ÀŽxIüü às :öžÉÀhÍ2Î ZØë'hH)L ®áX,¹¾°e®f51õd›H½ºB^Á§h²ýŽÑ$œç ™†¸2¢8²”>Íþ=àÑ endstream endobj 1210 0 obj << /Type /Page /Contents 1211 0 R /Resources 1209 0 R /MediaBox [0 0 595.276 841.89] /Parent 1192 0 R >> endobj 1212 0 obj << /D [1210 0 R /XYZ 33.853 921.043 null] >> endobj 1209 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1215 0 obj << /Length 656 /Filter /FlateDecode >> stream xÚÍ–ÏoÚ0Çïü»Pi¤v‚C˜Ä¥Ú¨ºµUU¢í°MÈ8†ZKâÈqØøïgÇ0+k9ì„â÷Ãï½Ï÷…oéïºìïUÒ¹œ„¡¡?B(ð’…Å~ÅÞ0Ž|½$õ¾ö*–ûDP,éM!©ÀD2^\ ^—}½o‹ïÉGÆþE^üÁ 2Á÷\NkbD^Ràœj7ÔïnYÎ6G÷möB¸ÈqöɸM0ø íŽŒ{ºVw0rW·€9“WO‹ƒÜû©7Îg¬X¶¼QÓÆ·ïjWÍž`U÷ Κó7%’‘ŒÚ‰ªFs›|¢æhŽ+;G=n‰—ã ÉÖ±°¶9/RššCÉ[)´Qª3ØËÍãOœeïœ]¿V"WM_Tþ‹d®«›év*·H´ýÞ†mÙt›ó™6vb9U[ö– —·EœMÁ+þ«$·Ù£ÿ‡½|{Õœ |tVð¡-zxœ¦&uƉZNœ™§ç¥}õ(nÊ`Yâg6Rëu®3,·®?XAUå¦hZP±\ŸÉoYñÞÔ÷dt ²íÏ kÅ*Â+&×m\GXåø×nAwPí>û«zËkJ…šþŠk­ßrœRñXžÛFvýÔn–e¶6GDU(q!í’7š4–J ZUnTT¬ø,k®€­þ¦ÚrxÿßÙUù]ÉZi”œƒe;e8Öí¹-]pAÚÐ?SîÞ`Íê5çýÍ"Ún æªçï|ƒ«ù ™°½rÜÊJd®êfp÷ý}QèÕ §’–›iïäßulá›±¹`ç¸ýÆ»œÀáŸxú#•¸Æ>Ú(°ô!éü†*§Þ endstream endobj 1214 0 obj << /Type /Page /Contents 1215 0 R /Resources 1213 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1216 0 obj << /D [1214 0 R /XYZ 33.853 921.043 null] >> endobj 1213 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1220 0 obj << /Length 634 /Filter /FlateDecode >> stream xÚåV]o›0}ϯ@ÙK"5.†J•ùMAÆ:#O=¦£’äãû𣤙À)˜Ngú‚²ì3ʱFy:g¸aB°Ó-Ÿ3{Qíg’õÛÛ(X®¯—Á¿ç•+S¿Qì”Rå„?ÕùË¢®TW}Ýÿ9Äê}¼Àñ£ÏµÂzsp7YP®ý'yÄÊÕ¡Cr¦¨shš;¦þå’oàÊH=j©å™’ïí CIQQ>0ÑCËVb·`ºíç5nå8Õm`‡º\Áùá º˜.4&¶ œÔtвZIËpðŸÉ˜Ë endstream endobj 1219 0 obj << /Type /Page /Contents 1220 0 R /Resources 1218 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1221 0 obj << /D [1219 0 R /XYZ 33.853 921.043 null] >> endobj 1218 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1224 0 obj << /Length 166 /Filter /FlateDecode >> stream xÚ]Ž1 Â0…÷þŠ—vè5—ä’‹£`çlê Zµ ´¾¥UQ§wÜãûx Ž `‘¨WÎbR”Æf ñâÑh ^’xˆ{X¥kÅ”mâr´ìú´h­ûkäZP‚ÿ“êQíº¶Êr&›¶§áàô^_ºó¶­¯ÍôM 6©¾Æ[×ôRõæ%ùï­š<†` w"èØŽÒæ‡šÇä ņ9Õ endstream endobj 1223 0 obj << /Type /Page /Contents 1224 0 R /Resources 1222 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1225 0 obj << /D [1223 0 R /XYZ 33.853 921.043 null] >> endobj 1222 0 obj << /Font << /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1228 0 obj << /Length 1018 /Filter /FlateDecode >> stream xÚWßoÛ6~Ï_!$/N)’,9J± è°fÀÐÅll]УD¤ìy}O")‹ å~}¿xwßwG9ô^½Ðûí"ÔÏ_6·ñÒ‹’`™¬boSz«,ÈV™w—­‚(»ó6…÷mñ¾^?o~¿}\Z¶Iܧ¨7Zc¾g!J?3T`4ÇÎe8ʆ¯‚øqD+}Þ©ÆåµŸFéB^G‹Vß ²'‚°ºû•,*V´TkJÆ•0gUƒ$ÙJäQé¶X0ÖN_r§¤‹X‰P]¨ß']²XvÙCÆ>Ô›$+•XÉY¥L_^Ê“-Ç//JtJ:9%ê2[jÎNÄ*ʧõqíE\’ÜÔ©j¬Àé4;,ŽTTos{w¾²‘oÐJBψ+÷± S$„²&@€1þhëmM ‡ih$ð=RÅDY¤+;«—¦Ý¤†˜Dšfw1¦åMïÛ‘5¾³}?‹êKCžXo\Ý"µÄåPzBvšÖ0žã‡?q¾ì oàÓeí´ÐÚ:õUM§V|Ð4 ÃÞÖ‡*`(,‡SüU¤Ñ½­¾¼¼tÕ¶n·œxµ>H2bM$A”#7Ô4!ײAîZ¦4{D[,WÓœ´ØtXv@»½] HeõJ¡:k>Õrê}ëcôx[žJ2wf!-c“vðŠ{&¬%nÖ俎éáÙRÜ„³ 2Œ³“¤s~OvÖšfûÉŽ&CÈ[½ÇÈÍï æ¸ Û'´A1˜©Çv‹RŒ` ”î#lŠr`ê¤KŽŒ$È $næ7WÆ ; 8…šíXç#…2¦PâT_?l©üèC&ʳ­õþåT`A8.”ÔtÁJ•ho”ïÞãÂ9¤›†ŒM—’q]¦±CÈtùÔŒ}u•äßiðô,ò¤´vw‡’¦aºøy(¼ÎS쪻í[9Ýf‚²CÁš­%ƒi2¨ˆOLçPžc F¾:zñáÿ+éˆpªä§·EZ3š.ÞëÆøwuž¯Uù ‹¢ I3‡Ã0û.Ê÷K§Wßjà,ßqöŸŽ©ÀŽÜRWnQΚ U Ø®„[=8‡ÉwöôW0LÖ Žg@çÈ Þ¯o¼¹Üç›ÿît5| ŸÝï c›èÙùÒaÙÄÏómš»)®H-$os9¥<©ZŠäðn|n«6‹œ“­Ù"£AWn?2Ã5×ŸðØ…Øôo|ö1½‘õŠU¼¥ÜøÒbö{Tdý©¸}ŒîÆ&¢ ¸—Ež¿ óç%ŠËçÓæâ;;'…Ë endstream endobj 1227 0 obj << /Type /Page /Contents 1228 0 R /Resources 1226 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1229 0 obj << /D [1227 0 R /XYZ 33.853 921.043 null] >> endobj 346 0 obj << /D [1227 0 R /XYZ 68.868 798.142 null] >> endobj 1226 0 obj << /Font << /F23 427 0 R /F33 429 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1232 0 obj << /Length 68 /Filter /FlateDecode >> stream xÚ3PHW0Ppç2@£B¸ôÝ Í õ,MMBÒŒ,Ìô,Ì Œ-õÌMBR¢5 L5cC¼àº\C¸ŽïT endstream endobj 1231 0 obj << /Type /Page /Contents 1232 0 R /Resources 1230 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1233 0 obj << /D [1231 0 R /XYZ 33.853 921.043 null] >> endobj 1230 0 obj << /Font << /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1236 0 obj << /Length 197 /Filter /FlateDecode >> stream xÚUË Â0E÷ýŠYN‰¤yt+XÑ•ÐìÄE´©J+µ þ½†ŠàêÂÎnWÈa›åß\ûlUId…$]€oÁ8áŒëŒ gÁ7pÄ5ãDR£geáÜÇ;ãÚŽí’›úÅk~`Š0LswéãrÙ ©šã.s7©Ìq;ÛW††ü”¤ pI¢$·¼­ºØ7Œ+«±ÉódJbœî‰ømXUd>˜Ö2 W§-p+ ¡©\\$͵ñÙ¿§?å endstream endobj 1235 0 obj << /Type /Page /Contents 1236 0 R /Resources 1234 0 R /MediaBox [0 0 595.276 841.89] /Parent 1217 0 R >> endobj 1237 0 obj << /D [1235 0 R /XYZ 33.853 921.043 null] >> endobj 350 0 obj << /D [1235 0 R /XYZ 68.868 798.142 null] >> endobj 1234 0 obj << /Font << /F23 427 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1263 0 obj << /Length 1227 /Filter /FlateDecode >> stream xÚµZKsG¾ó+æu¦§çyuÅRÙqRI„Ë—D`›2‘¤üïÓÃ>Ä¢5;£Ó.}ûuý$Å!ÅÍHÖ×WÓÑO׊j m•˜~Öƒ·^8o½Ó¹ø8~8¹BTfüf=!ïÛÙÝn¹YO®È™ñÍvóÏÃãäÓôm ||}=ý=B¾•: –P8+Á‰»ûÑÇORÌù÷B/þÛõ^U2A)VâvôGˆ¶ ˜è íÓÚÖñ¯ãßDs÷Ë“#‚1{G(©ø>g$D×DGüöçfwûðu±]t¬íXG’1œº1"c|‡X/­Òåxiæè˜Ö”YÝÏVCì¬Ñ/`÷„Ñ„.CÈÓÚp„÷„UƒAÈP/¢ÑFf6Ʈڀ adÀ9[¹úf;›(7þw¹‹—ï ž>“‰J¿0ƒW£…llŒdWc•4НTyúçÙýÃrý%ÁÃg²ÌWæa®dÆ`žìæ~ eT‹Ø!¡î n8ž¯úÀõ$èñf{·¨zAÍÏæ’ª)N†h¬ïuEðÝr®V6³~ëè4Æ ZÖ{@iŠx”`4ý+#Y)/IØ @Sh;Å RM+±®Q»£ÊA¶¨ÏXo •a8.Â|-J洞cHgÀʺ{¿ß{ís|³ž/æ?Në|=W€Ñ†FF$†‹Re’8 ž?·MÝåŠÌ¶»åÝjqU½˜à¸z}Bl:‰©¬¤iÜÞešë^;$¿^Í™Ôð”|1jDnŸ6j)ÌÚPº3g ϘՓò Á6N³ öD†å]©²†¥*lX- n+ª° rIwŽ]Ë+6KÌÑÎ{b¸É§œg´6zpdŸòìzâÕx»¬–ñád»?âMDñ[~ÉôÚŒ»=MLko—^qi,Û´ËfÙªV…²®Ïа Cñ‚³rQÊ ”q5âøg}³ Œ Ùî æŒ6â 0Úx(Àht@^=ÈŸg\à…Ñ;U4.dÓI-cS't9Æ2ã%¡|]ŠWÜòã‰Z‡× ­6ˆ.EKk¸@—V]¶N³kÃ3›Ý³ð4§¼@ç鬼!kes;k>…çáS‚Ñh]‚Ñ(R‚Ñ*âÀ‡²µÑ^=eY1ž›±gY= ¯Â&dožùR‹‚â&t‡×Ájó! ³Õj8óö[)Oc ÎéÆr)=Ô 8 ¯.¨ëC¶ñØ=quØmN–K#U/ŒG´¡Ëí@°wËõ¯‹Ç¯ zåì·ÑbÙ9`¤CVŸ¥ê^mðÙU7›B²VЇWÕåu Õ´šÈõÊfÙëk´¦¬gËŽ 90e}6D²dCš;`\ŒîÎn‹yF9<\žËÒKHwžÝÇñì­ÒvŸü§*$÷™h™ÛÿTs¤PzýË&Øg¤â‘Õ”)$=oÉþ< ‹£—‚}YÃÊæ‘œRÐ𸫎Ë+‚Ù$û Õ§%EÓAzuž®%5¿•Û´òdä9Æ÷`ðà îvó9»æ“ìñ4AðY;€ìû÷Ÿ£Ýóðcyi àj×£rÇýzת_ endstream endobj 1262 0 obj << /Type /Page /Contents 1263 0 R /Resources 1261 0 R /MediaBox [0 0 595.276 841.89] /Parent 1265 0 R /Annots [ 1238 0 R 1239 0 R 1240 0 R 1241 0 R 1242 0 R 1243 0 R 1244 0 R 1245 0 R 1246 0 R 1247 0 R 1248 0 R 1249 0 R 1250 0 R 1251 0 R 1252 0 R 1253 0 R 1254 0 R 1255 0 R 1256 0 R 1257 0 R 1258 0 R 1259 0 R 1260 0 R ] >> endobj 1238 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [201.962 745.29 276.641 759.919] /Subtype/Link/A<> >> endobj 1239 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [332.561 745.29 396.724 759.919] /Subtype/Link/A<> >> endobj 1240 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [432.934 745.29 547.033 759.919] /Subtype/Link/A<> >> endobj 1241 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [344.096 730.446 385.189 746.884] /Subtype/Link/A<> >> endobj 1242 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [340.317 716 388.968 732.439] /Subtype/Link/A<> >> endobj 1243 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [331.782 701.554 397.503 717.993] /Subtype/Link/A<> >> endobj 1244 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [330.807 687.109 398.478 703.547] /Subtype/Link/A<> >> endobj 1245 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [207.061 670.454 271.542 680.749] /Subtype/Link/A<> >> endobj 1246 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [336.79 670.454 392.495 680.749] /Subtype/Link/A<> >> endobj 1247 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [440.344 670.454 539.623 680.749] /Subtype/Link/A<> >> endobj 1248 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [204.492 647.74 274.111 657.902] /Subtype/Link/A<> >> endobj 1249 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [334.221 647.74 395.064 657.902] /Subtype/Link/A<> >> endobj 1250 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [437.776 647.74 542.191 658.034] /Subtype/Link/A<> >> endobj 1251 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [210.833 611.542 267.77 627.98] /Subtype/Link/A<> >> endobj 1252 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [340.562 611.542 388.724 627.98] /Subtype/Link/A<> >> endobj 1253 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [444.116 611.542 535.851 627.98] /Subtype/Link/A<> >> endobj 1254 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [320.698 580.259 408.587 596.698] /Subtype/Link/A<> >> endobj 1255 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [310.343 565.814 418.943 582.252] /Subtype/Link/A<> >> endobj 1256 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [311.236 551.368 418.049 567.806] /Subtype/Link/A<> >> endobj 1257 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [318.617 536.524 410.668 552.962] /Subtype/Link/A<> >> endobj 1258 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [308.261 522.078 421.024 538.516] /Subtype/Link/A<> >> endobj 1259 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [309.155 507.632 420.13 524.07] /Subtype/Link/A<> >> endobj 1260 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] /Rect [308.374 493.186 420.911 509.624] /Subtype/Link/A<> >> endobj 1264 0 obj << /D [1262 0 R /XYZ 33.853 921.043 null] >> endobj 354 0 obj << /D [1262 0 R /XYZ 68.868 798.142 null] >> endobj 1261 0 obj << /Font << /F23 427 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1268 0 obj << /Length 2703 /Filter /FlateDecode >> stream xÚ­\Ms7½ëWð(ŒÐø¼z7Nm)ïZµ9dsS´Â EjI:±þý6f˜f0„—È¡†¯~îÆ@|ñ°à‹oøùçû»›¿}°Š2rq÷easÆ-¬3L8»¸»_üzûžÉå;!¤¾ý°Yoï—ïØÛOÝÄíŸá?ëÃðQú­»ý¹{\‡O¿ìÏ¿þûþñq¿~ÿq ò¶;œ6«ízøä.|òü´|‡?âW»Ýýò·»ŸŠ3aÌâ°Ì ƒúç.˜>­Ýê´ °`õí‡ý×§cøNšãËŸ?ÜÝüïFà?ùB,¤Ìj±° ˜öv±z¼ùõ7¾¸Ç_þ´à ¼[üÕ?ú¸J1nþ{»øtó¯1éèžVÊœ!’ûóZ÷î—Ö2+ÑÿÌ85LõÓªÛv‡a†g‡÷Sͦ^20mFƒO3€£ùÏÒ«Ûõê´¿vDZhæ„®Ñw«™Bž.@(Ô (?BSÄ@š›7 ChËÀJFRK5FO°AÒ2a‘ ËöÌÏæ¾ ÂÀŒÈçŒJÁÛ!µ£óÒ"†PfàÔ=(xûÀo‡8`œfF(ŒHA=ÆÂ0…n1Î3¯ÜÀÁ¡»ß|=NÓ@}䂉@GÜoID0Õ£DàvaÁ4F9ñçR3©‡ç,/†sÜ–…LÁ|t:fÎmvŸKÌ·˜ª’‚ñ^Àø˜Áìýæø´íVëÇõn)ííiz+¤P•£ f @SN5ƈ+„¦Lc™òbðÄÏÿÞŸ>=ý¾>Œ¤Ir-Œ†B‡1Ž3 ÇÍÃc7Â?à£Auø¬Ô†¦:ÀpÉ`f÷Û·£ ½"Õµ¦s£²°Û7ñ°ÂÜÏ‚ÌùÅ4¾?núÔ{ZæF™+É0)¦å±þì8e0^3øª‡s2,Ò y›ù—+Ä¢;ºWzÀ5+¤…ñ¸B.æ>·@ðQ'Ú¬ «ßž Ë£Iýšäââhá\¥s˜öeÌbÁ»*”Aõ†_/ LûZì'`$Vc ·D}BAöòj"ÑK»Ï%¶0Ezi´¨ÒV8Õ>AÇ´÷1/þÞîûH¾ÚœÂÿ>TKKT­NÓTKÀHª­ÆÍu%ãa[–Yá˲ÅZGáY/MA ó\kr»%–¸'`œ¹×Þ¡ð=‰{ Fä¾c”{þ@ßrÀH~îG®'êgúçN€\çà2›lvÓÌSÜ™oE›-‡MíAN÷ì´CžVëP0’zª1F÷;É|?)‡ûžVÇßÛ`Ô3.-M=­ÀAns\=­a\ibw9 "·ºÝìÖÝ¡ [OI¶Œ(9Ë1££5fê1 Ńv˜ûsuñÐÄ8pQjUñ&µŠŽ·ýSššÆcl•BæÇ• H¶jdÂфϭö§‚L[¸ÓJ&9äÜv»‘î1†G&zecí/4i² SLçr«•é eyÄf<òçH‡9Úàâ(·Uæ1°v“‚VLQ0Ò‚%`$UVcLt| è'§cQûqyMÇ2‡H ]RÃG`M ˜%kåq:gK¿„ƒËn»-´{ÞhüEÄFB1e·ŽèÛîxÚ¬~Y:ÆQˆÝÕÑB‹©ô‹' Hã±rüÆ_îqP&p¡mˆK K@ÃèILª1Ædå“À “æ|Òñîñi3¶a$)†Ÿ¤DÀHŠ `D&¸eÊIÕ£)úV"~v™’͓ѺĄÐZô¨pLêtòtÜ<<¥sŽ}ÖKÃ3mÖVj‘Hµ+Ö!Œƒ%£câœð#åè«]iZµ”DP0"£ŒH† PZ®W1QÕYŽsrâJ!džŒÖ¡oD"˜ÊžÞújÿuêØ:±ØÂx\ËÙÔg3…·H½QL(Z÷¹cŒz£ÑùÁ0rXŸ¨¿Ãzþ±ÛÎ+ Å ¤çø@`Tá` ;Õ=__ØtÛ±ÝÄ0c0Š [… ö4Ã{Ö僘ÛO(<&95Ñ0¯ moÀ ÁxZ{•‚‘$UQ *Za˜†ëƒ a‰PF䆗’H\0Õý^+Jaî§ãkÜ}XA.þÍQ„9$:‘É™ãÄ´©ct§æÌ* R °–Ôßó¦¾ >lVã‘Dg‹1:…Ã1H º*¾Å±Ý<=•©la;m×—¶ç¶ky‘np´ô½c”œ7à€0¼Å=êzö[Œ  …[®àäÊÕOx!\Âð¬óÄj‚ò}n÷~ý_.ThOˮŤà –žCn|·ÒHw\/ž¶˜µ2¨w§¯òvÒ;A¬g½ƒÇ!Ck{:¿Ä2©J~qM¦Ðû|ã^&·îx(”lº0ò=·½nÑ4Hì’\úâš.Ix³‰&m’KÛsimý¤_Ë‚eh-%¤¨K€H ¨…(T8€‹ÂqU_áÖ§œC“ 'ĬÞîÀ¤„64"¤ú0pI»fBÁHz"`$Vª1Æ6a˜3e NNŸ¯ª|9GÄÑ ­*¡ú/hm‰;›aãQn¼¼³Q<E &δ”zŒB&ڇ뮕©eIC-¦r`2€i‰Ñ^Æ+g»‡RP ܇÷@Bu„E¥´ùætÔH`=-"B ЪüzŒ‰0wÁ\?°TV¾ßïî *la;tj0WÈmO‡®ô:!ÅsIM¼ý%p’ „Çô”¸?Vc”T †Yqµ ZØŽýºÌöý:Šó’‘C®™T´£œzŒ‰syemÿ®\jÍSØÂ´t†ið¹éχu7ÑâËoxÜZúõ ÓÏãÂôê°ÁJstMêi1ïØ“ÊŒÏí@½œ%J ëiÇõ£Uvhw£˜¬+|Î{ê` kœÌfI´¸¤¥ncEëÁæ¦û« mŽ…‡¢˜$\F.–º\ÐÎ@)IzÕÒýö{÷mô*Gcýcšúº**OK‘›œQž¶mL埛þÜ›^ï ×u)t%å5‘D,Z—EŠÙ7øçÇAÀHò%`$^ª1 gÚRJæ¯;Ñ–r¸xÑâDûÂìL­LñX$?,w¢k!J ">蜻6A|ûà“` >vú%oNø’ÑФӟ `N;o÷]’Nø›zUå‘ýaÓ×½2×´³Ø1Òe*çóv|ôÙ endstream endobj 1267 0 obj << /Type /Page /Contents 1268 0 R /Resources 1266 0 R /MediaBox [0 0 595.276 841.89] /Parent 1265 0 R >> endobj 1269 0 obj << /D [1267 0 R /XYZ 33.853 921.043 null] >> endobj 358 0 obj << /D [1267 0 R /XYZ 68.868 798.142 null] >> endobj 1266 0 obj << /Font << /F23 427 0 R /F17 421 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1272 0 obj << /Length 3772 /Filter /FlateDecode >> stream xÚµ]Ëv$5Ý÷WÔÒ^ ‘BïeshfšÍÚð¨.g›$àj;­RÜ+…B¡4ÝÜoèæß¯hóõóÛWÿúø† Â…‚ÍíÇ2Ä(³ÑFfôæönóëÕç„_ÆÈ«/ŠóîT>^Êãá|ýHzµ=ÜÕ¾}º<>]êÏ_–û¢ùtmÅÕñô°½4Ï<žÚgŠ}ó«7Ûkήþtÿ+^þôÝö¡8_ÿvûUgöðë›ÛW¼bø‘nöE¡7Z)6»‡W¿þF7wø³¯6”pk6UO>lgDJ…Ÿ÷››WßÚŒX| Òuc'„jšèÔý¢¬”) ÁÿØz@›Þq-«ÞUó:Â!m 8H¢9xôù]hJ¤ÍÔ¡‘QL{è-WÜ<3ä¥!RkBA­0ä¹–ÐØ„–:Ö„¤†0i|hÛàš  V™ÑRjqÕâøõ)eP§ ”õ˜–wå@ÃБÒGýñPþñ„Zç Ð‚âp úêRþ—2á”ì¾[ žã··õ¿·§K¹ÛÚ% sǘ®RÄÆ›pÊb #Œ J©$37bŒA{8úš)ý²½Ð%$à¼Ç¹y†|¤ÇåX½?Ÿk¢œŸ>œ ·^¸ï?ú´9Gx“0Øoò8LÄ›˜æ NEÆÞ¥-YÃ±Ñ p¡µOÛ»òé!O`%šrøæñ÷âÔL5cFtTX?~²¸€K"‚²œh-RÌXÞD œà€áIMí‘?_:€YJ0⩞ã4ºÜr"qv¥±eŽ…†{˜Ûîeé*g tõF(ý IcçÁ\{œ¾ð뮼¸~gäJÓ€n,± ùˆ–áxÆ·ìæí×ߎGN™ø#µL£±¶8“˜´HÒˆjAQH1jUÝûïܦa4¢h{°}ÀF…Q4° • Ü^ÉÁŸËû‡mHø¬bÕ³F±DXšû¸ÿs .d&‰Â…H„™eˆÁ VÄ`ˆß¿¯u·;>êû_þ®¤¢¯CÜÛ]óÍë÷.F ’…Ÿ¦CI‰à:M‡·ÔÑ ²Ÿ`Õá:ØJŒÕõ<â£VçQaõSL„é{Q æÝN‚=Ð_þ!®$a_IÊ7÷‡×׌±«Ÿ*ÄÛP1Ã9@¬±¾sÊ·D[Ÿ7o~xûæ&¢ýÅý âMLkŸKb-K\ƒ ‘¸ÃT·,²I®zÙôóø$° G­ˆÎüMÑY(>뤋ÏJ‰šDéãÆ4™£³€R0èìËá]ñg¹½ âØU¹k2ZK丒žÑ-nËæYÑ#e4Ç3“‚¤7gÖGþùíí¨œã‚••+ ß}š$Î<è͘Òâ²àc¾ý"2í,ökP²Ú¦e¤‘À¸°È$37L( 8À 6º™ºŠ‘„’ÅqE¨6É %M•ù¿ò™7rt•SC8>ìíµ«ãe»¯g´¢¸ÔÓ…Â%½8ÝÇrI >ì蘇\¤%ºÕÕ|‘bÆâ&‚ѬFßàŒ‰ßœÓQ#…Lõ˜âÆFôDµîCÙèxkq³ ZhÖGÝ#ûBûöN9†˜ÓÚ]}à¯kàŠõ= hÕºð%ª‚êt*ÈA? k’4 1xV’§±¼‰ !Ý©‹ÀưGmíGH¸7QÔâsš0“˜UÁeŸð Ã32¥UEPÀ ªï¡žŽ—qd_°8¾ƒáý—W„Q¯jÙ:BœV™È'¤HÖÀD“åù+íTRcxÅG»²¸‰àZâ¦kg%R5ëý]y~ÜowÅC»_çZ@㆜løbhC] q:6;˜òP^Ê6"q)}u<—ñ¡•Öϵ¤ÂŸs®•É×ܦ%ð¤ÂèT$• ¤4ÑZ!1’˜Êf%ÆL®Il²M"Î:[[‡ý2‹P-( ã›6;Á¿N-ð9£ÈEéãw݃–¢DD±Î!¡³¥¾C¢GK‹1ƒ®¤‰m)€ž&ˆ„&:+0Ba›p™ Q„Ûà Ò0â'W©Xì.Çñ®•À/c"W€ j’6à§]¤P4 0XƒüÓ>ð—ÕFÕ×U|»Ky¸oq˜-ˆ• òô<=ãYŽtçÔÞ¤"@–”mNh¡³aÆj ºÊRL3In°bÎ9ÓJØð6Y⃊۶òÈí«â]ßèPñM§Ž†p—1QÊ7¤¿iT§‰•NñÓ­–p9pJ›è…ˆ6c›>±ôð‰¥‡OÔU2Ldf9Î8ÐS'1l•¢Yr³¸éP¸xW“dÂl÷¡Ý» Öé‰ÕåÜi»wìµËôQ—j3Gï9†úÕ¢oÈëÃýÓ~­8Wr"t(êqbúTÔ=n8Ëq,ê³qâ\ty—J2Õ..F…#ÌFõœÐÄ3¥Ö·ñL€¥m€òpâÕ±á¤ûÑ«öºÇ $º_ ä‘C8õÊùPqô)N(jìD,ÅMá4±"1mDq´$KjCXVEÌi…<®T×b[’¨f)ÿÙm9¶ûýèÚ±ø¥\RÚhå’ÒFˇ”6Z?hœCÝPïû„aÕ¹ãÜß:ä—yÀ@Wh`yˆÑU4<ÇUÃR÷Ò ¹Ÿ¹Ù‘b7B©AÏñÔàbÔ€/ݬb’B[¡ÜYsÒqJPíUr åêw`ÎÆo9l€Ñ mt\ÙýPçu:ŠJã¦rDqòT—2l-i$%Zé,•iB¢Ní†V¢®+#%H¨a&k|ÍÎ]PBíøhmÆ„ºØ¼AÚèDª´»ÔG|âVÑtœ›tt¹¸… ×CglÊà<Ñ^íŽOSÇ|9 Aâ¸gð°ß==8èÕN·½fÛ'–wOíRœ«—8ðçg«Mñ_Õ½¶âМN_»MðBÇÉ,ŽÔiÉ(Ó­0IWå–71’ð€„N k¦³+ ¨ëÄ"·³àƒj1?Jª³«aص§Éåî9V,k<ÓmœE £ßÑ(Á¤]v¸¡¤<é’×ò&Fˆä7„K·ñÃy_>>ÆI”$îÛݬØÇŽ’èîÓaûÌ¢„¡ïX”Ã}‚žVÆ-Qá5cy#ËX‹ b¡½ow9mcu³Y#oɸüîx8 j¦j>Ý‹ˆšbû m-GVÚ<÷L‹Ïgrgê‰ ÇÍñ²ã’@l¯‘ÝøsnÜ%Œ&Ïwpq}'ÑÑè~%þ€’Ò½Æx|8ÛðâȬ"ÔA»²Em“¯ŸIÇïòîTb¿£Ù™,½¢Æu¹ý“ÛUl÷OÍ®âPwÅÿb•j`¼7ð<ëe\#+i:¯ïÛ=°_ —$V¤]ÌâŠ-L»Œ_ŽæîTŽ‹Y·£W⾬c§RùÀ#µ#î5Rˆ]= \$ ÃÝ×>î]áÞôãÛÆ•‘£Ó€¶¸ýñÀ_ßÝ•ýUâãóæûP¸âòF)º}C•ŠÄF.Vrc¨ #ÖFJ­:C&iÚ i¸p'­2KF‘ã<.“Q\ ;\7 º²íáÞ•çsù¸½¡ëƒ®P\Ô†jc‹Î5Ñr>VáÝÉ#G·AÂq[ä!¿©‘+Þ÷† „»»Xë9¢XI‰P!‹gãŒB–åØAjQ™VäÅ9Cm–”)w¯®ëª ç%MWâå!Ñ>~S…{i_ݶ݇TªTžûE. Q%²zµ¡gĤJrôžSœ@øÈƒ[zјuQc-=^xÖMÌpÉÜb9^Lµ)&ðPcŎ8("•¸:2œjUR&sy#WP”Û!¹×ÚÈU.åö3¼zÎØÄ«\šª¤Ù*&}2B1ÉÛð*SЇ>¸—Êî#³FŽërlƒ~W#×µÑÁ)C_¹tjÖXg`ðMž}Óo˜á”¹oðãoÈZ¿ À¾ fý&3:Uå™$˜J»rÇ)'6­2}yÁ¹ÊõÅT×äA²ÈÕk$”Ë'P§ßä«×ÒH26UÉ:2Ë€l-núÀG>ÿ½}e”9uå¾Ì¾ù½+^_Ú$°¨D&j–V²ÆbSI)ÚåMŒÂô¿åÒȨ ŒQÕ½bJSsºÓÃŒ)BÎEhë¦OéC×GÑå9’:Ê2ÖÕƒ>xõŸž³G~äoúËø„¡Ž…+»ÿ2ìu~:ì×*G&ØŽg‚3€6‰`4–]IqRKQì¨6y^Í €ËK·Í;ÍY‰? “Eu Ç¢zF<'JQÖ8È€ƒÍeò˵´wj1ÉÑa·ÇÑfÜOÅ6ïMv¥/Þ Ú Ä#;å®dE(ë±b:ëwWñ3¤c=äx:6jŽõ@£éؘu:ÖÃŒN‹ýœ0düÝ;Ãm ý)Æ!¡Uõ‡<8òºéëý%DìÐÿY/L endstream endobj 1271 0 obj << /Type /Page /Contents 1272 0 R /Resources 1270 0 R /MediaBox [0 0 595.276 841.89] /Parent 1265 0 R >> endobj 1273 0 obj << /D [1271 0 R /XYZ 33.853 921.043 null] >> endobj 362 0 obj << /D [1271 0 R /XYZ 68.868 798.142 null] >> endobj 1270 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F20 422 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1278 0 obj << /Length 2704 /Filter /FlateDecode >> stream xÚÅYÝsÛ8Ï_¡É“<³ÖŠ¢ÈÇöÒîåævÚkr×ÙÝÕVÍÚ–O’&ý(KŽêfZÏÜ‹ ‚AøJ£ÏQýr‘òÿëÛ‹ŸßJ (mdt{›Xc£ÜšDØ<º]F¿Ç¯=› !³øªlMµíªzÓÎæ*ÏâúŽþ»û’ˆw»n»ëˆ~[­˜ûvæt\7ë¢ãywuÆ”«%‘7ÅL‰x?eÓÎþ¼ýÇÏoE ‘¸,óÚ¥Ñ\ÊDVì…JgãÅ®iÊÍLæq‡ G«ÂzÒÂzÀ.âW›»¦h»f7ñ¢Û5%±ÛÝv T*¢‚È*:Zº»ç1k˜R¯GR RwÅŠ8"%Ö²ú#ª*eãšLû€ѵ6´‘;2M2›ëT¶š…¢>wøZ ô¶¤Ö]°$ù#ÍÒË+óÛåOÀÒy|ùþ¶ÿsI#ŠÍ’ˆË›ë¾»„ ‚;šÃ‚ÄÙµ,ø¡‘žjÑ26.¸%½ æ¾jw󩫪-Ð?àHµˆÛú®ÃCx˜‘¸Ÿ­Ù[ ¿ª!2Ç¿”¶óáÕL¤6þx »öS²˜x.þ(/y‘žƒz\¼¹½øï…uÒHDÊdInD”«,QÒF‹õÅï¦Ñ:AãD9=ø¡ëH%™@­¢›‹Ñûœ2.‘¹ôk XËoóæÍ‡ë77/ÐDg6qÊžE¸¢‰ÎÆŠ|¼¾ýû„Tg£äY¤fiš­Çb¯¯`ïxüs­˜Ç°dÔ} "‰°šLkåi&Ò4UWm>SÏ0¢A<¢ÃÇÃ4&; ëzGa×É,åˆÌÅKˆ©". Êe ñUÑÔï•É0ÂÂÊ»UWÍõj·n‰‹QgUòR´$VRðç‘;Ûr[4EW.iâ'\î‘èv[,ÊÖKñërUã¼Ï‚Š©x¶¾(Ñy%{YDo›ÚŸÝr·(¹»Þ°Nd5çGù8 ­ÖÛŒ²"Ç’¸]µæÑmWn"rQÓ9‚»¯à5‹¦«c u[ìD^ˆ+C¬Ÿ0,*H™_9Ð&ËàHw%5 Q Tà[öÙí§`ÒÌe|½!þ¢hyR0­ æ{JA^ëxCX² Œ¡¼Äñ†€åOÀñöWì×ë`"LÊ9y¹4†DÊ'w“{Ík2vÙœ€à±šŒb`dås¿1 N€X‘',8õ⪴ú` š¯i;jκ²´J¼)Ev˜Þ4qt„ 0gsOãp¡‚ŸAßõ•=)6Ÿ#">ü‚°YâòT »;—§#€¡ŠLæ' z|=¤¦uã«Mo¥zEgº$=ªÍ‘®Uogodï?–°$Ž;Äž$â¦än¸m…Vôð厖ԡÂÖ¦ ±Ñ&Ú¹±é¼2péÙK%èp¯²¸]«¢!úàム¥[Tü µ=ýÈôýï9Øã²¼† 7y…wÍaâkjdA r·EW·*_HÒþqʃöOM–£…íô‡) CÑ!uL•®+l“wG±ûE?Ö½ f=ˆÄß,ÃÎÙ°Ì`¿{ViÏê wPý{}ø'v^sØ œÂ!4›²åK¾½zœYŸÌ8úqäQƑߙrò¦œüDÊùJ¾yYêT©óèAኡÄ䀕óSK'©ÊÆk¬€ÈÒDJç×’ÙùÓ·"QPeŒì†jê—«©³$œEKX*uâ$ ¶g~©N%V˱Ôë+}RCh×Ï “½Ü0RAµ¡ÎcPÃIý"ËœCl0ÍPìd} ¥H´8‹P)3Qºáx¨Ý4T„îôÝúv9úcüZy–Ÿ<› ÎFÛóˆ5 ®ìXêtéfs¨ ³óuÆt>– gãÍÝGW }Ä5+6}VÔ(¶ÛUµ(>­ø|ºša 1Û!¦m_¾ ´ÁœG_Ž”3'Ñ”¿Júâñ¾°‚"’÷1Î>$(›Aùz” 1sèÔö™éCæÀÖQæ@eßI•Š–Ž*{¨TüÀû°du±•®ˆ¯Z?ñ¸oû[^› =ÃWI¶õÚW :` pÂ(í‘FŸå±é‹$E¶ž£ÕJØ[Ðf¸¨¬,* Ulöh‚þšPüj±ØÜXeÂÃT|O'Bõ Ñ±ÄØ×3=¾„Æ—Ðíñ%p úëa.t£L@ie¢´ÅH¡%nA@-µ”DlÅ—@<â € 2tI ó°Úh“[ùÄeÁv¦¤GžÜzbå·å!û©p*àVÃÊAGÿ’êL,4þgqxÊ@Ú—€®/ÁnäÔ¢BdŸ0PVLã5GÓøVð^¼iˆÃûð¦!¢7 Äc¦L“gl/ÃÆchð=÷î¹cÿ4i+@ Ú™ 4Aÿq¨Qé8WI›¤cb©íßò£iGƉUcÓ ²ËIà« g"Œf0o˜Ïž:®¯Ú㇠0¡/ëñÉ¡èš*Q¡YmF"ͳ›wÒDÍS,ä¾ÇBä*`!rOLž_I[©¯›êËœ_Žç£W <~š/ê5ÇÈMxCô=¡~ö†tèêíÒ?a Îãòiok£~Ä…è ]d0üÿè™÷µ%ÄúåÑãÜËÍò]~sˆ è³}\ðIó¼jcóHËŸƒðæ‘Nyó ƒ>]1mi9„©¨÷¶éÈ,D^pä²~ô’‚?ÁÈuÝòë6kûœnþ#§R¾íM½û|ï1Üð”úÕE7:Ô€1<_,ñ¤,7Ïb>Kqt9@ýý€ïO&½о>-£KKO™ãäŸöÉ?í?Ôìßžùùä!ÑM¾`‡%fÐǧuå3ú+™&ƒÒj†±†M¹mʶÿ&‹*u¡ì¾¹ Tîûß0øË½ÙŽçTšœVvì6/Šì£„?Ä‹ж8Y ‹UäQu˜G>¾ŽÞE{°»<ùàuìœFÒ¾4„êµl¤#XiçSïƒøñÚè{05ÂË[[Q,_ Àÿ§Ý›ÏO/Jƒd À;ü„Žô³ë‹ÌþúXsVî¾"A“º®‹¿fe×ôŠ 8A[’†–š³ìQ)ôMSí¶±4í þ›rqE|È}üÐ $}K 4 ŸvŸ‰nšà­{V5Ñ,<‹t!&?} ¨pá€Säîä—_™8ëŽÞ†»TÂÀ¸RæÜ© ]!¬Óê2µM´Ëœ¬Ïñ«|êÎ"2—€ŸäH¤/ÎÁÌwM½æ“ñ~ÕüÅßCuø¢µŒäž9—½©J¤Ð> Châ¼[õÅ}<ì#Á×*o)¦; ç.±Ž_y„JÃÈÿ=Ä  endstream endobj 1277 0 obj << /Type /Page /Contents 1278 0 R /Resources 1276 0 R /MediaBox [0 0 595.276 841.89] /Parent 1265 0 R /Annots [ 1274 0 R 1275 0 R ] >> endobj 1274 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [167.565 591.127 174.29 605.583] /A << /S /GoTo /D (Hfootnote.5) >> >> endobj 1275 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [448.669 397.436 455.394 411.228] /A << /S /GoTo /D (Hfootnote.6) >> >> endobj 1279 0 obj << /D [1277 0 R /XYZ 33.853 921.043 null] >> endobj 366 0 obj << /D [1277 0 R /XYZ 68.868 798.142 null] >> endobj 370 0 obj << /D [1277 0 R /XYZ 68.868 672.737 null] >> endobj 374 0 obj << /D [1277 0 R /XYZ 68.868 532.721 null] >> endobj 378 0 obj << /D [1277 0 R /XYZ 68.868 479.379 null] >> endobj 382 0 obj << /D [1277 0 R /XYZ 68.868 459.537 null] >> endobj 386 0 obj << /D [1277 0 R /XYZ 68.868 437.37 null] >> endobj 1280 0 obj << /D [1277 0 R /XYZ 86.801 105.51 null] >> endobj 1281 0 obj << /D [1277 0 R /XYZ 86.801 93.554 null] >> endobj 1276 0 obj << /Font << /F23 427 0 R /F17 421 0 R /F25 604 0 R /F30 591 0 R /F7 605 0 R /F20 422 0 R >> /ProcSet [ /PDF /Text ] >> endobj 1282 0 obj [597.2 597.2 736.1 736.1 527.8 527.8 583.3 583.3 583.3 583.3 750 750 750 750 1044.4 1044.4 791.7 791.7 583.3 583.3 638.9 638.9 638.9 638.9 805.6 805.6 805.6 805.6 1277.8 1277.8 811.1 811.1 875 875 666.7 666.7 666.7 666.7 666.7 666.7 888.9 888.9 888.9 888.9 888.9 888.9 888.9 666.7 875 875 875 875 611.1 611.1 833.3 1111.1 472.2 555.6 1111.1 1511.1 1111.1 1511.1 1111.1 1511.1 1055.6 944.5 472.2 833.3 833.3 833.3 833.3 833.3 1444.5 1277.8 555.6 1111.1 1111.1 1111.1 1111.1 1111.1 944.5 1277.8 555.6 1000 1444.5 555.6 1000 1444.5 472.2 472.2] endobj 1283 0 obj [826.4] endobj 1284 0 obj [619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2 563.9 588.9 523.6 530.4 539.2 431.6 675.4 571.4 826.4] endobj 1285 0 obj [500 777.8 500 530.9 750 758.5 714.7 827.9 738.2 643.1 786.3 831.3 439.6 554.5 849.3 680.6 970.1 803.5 762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 298.4 878 600.2 484.7 503.1 446.4 451.2] endobj 1286 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj 1287 0 obj [531.3 826.4 531.3 559.7 795.8 801.4 757.3 871.7 778.7 672.4 827.9 872.8 460.7 580.4 896 722.6 1020.4 843.3 806.2 673.6 835.7 800.2 646.2 618.6 718.8 618.8 1002.4 873.9 615.8 720 413.2 413.2 413.2 1062.5 1062.5 434 564.4 454.5 460.2 546.7 492.9 510.4 505.6 612.3 361.7 429.7 553.2 317.1 939.8 644.7 513.5 534.8 474.4 479.5 491.3 383.7 615.2 517.4 762.5 598.1 525.2 494.2] endobj 1288 0 obj [569.5 569.5 569.5 569.5 569.5 569.5] endobj 1289 0 obj [413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 295.1 826.4 501.7 501.7 826.4 795.8 752.1 767.4 811.1 722.6 693.1 833.5 795.8 382.6 545.5 825.4 663.6 972.9 795.8 826.4 722.6 826.4 781.6 590.3 767.4 795.8 795.8 1091 795.8 795.8 649.3 295.1 531.3 295.1 531.3 295.1 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.8 295.1 885.4 590.3 531.3 590.3 560.8 414.1 419.1 413.2 590.3] endobj 1290 0 obj [600 550 575 862.5 875 300 325 500 500 500 500 500 814.8 450 525 700 700 500 863.4 963.4 750 250 300 500 800 755.2 800 750 300 400 400 500 750 300 350 300 500 500 500 500 500 500 500 500 500 500 500 300 300 300 750 500 500 750 726.9 688.4 700 738.4 663.4 638.4 756.7 726.9 376.9 513.4 751.9 613.4 876.9 726.9 750 663.4 750 713.4 550 700 726.9 726.9 976.9 726.9 726.9 600 300 500 300 500 300 300 500 450 450 500 450 300 450 500 300 300 450 250 800 550 500 500 450 412.5 400 325 525 450 650 450 475] endobj 1291 0 obj [355.6 355.6 386.1 885.5 591.1 591.1 885.5 865.5 816.7 826.7 875.5 756.7 727.2 895.3 896.1 471.7 610.5 895 697.8 1072.8 896.1 855 787.2 855 859.4 650 796.1 880.8 865.5 1160 865.5 865.5 708.9 356.1 620.6 356.1 591.1 355.6 355.6 591.1 532.2 532.2 591.1 532.2 400 532.2 591.1 355.6 355.6 532.2 296.7 944.4 650 591.1 591.1 532.2 501.7 486.9 385 620.5 532.2] endobj 1292 0 obj [777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5] endobj 1293 0 obj [589.1 483.8 427.7 555.4 505 556.5 425.2 527.8 579.5 613.4 636.6 609.7 458.2 577.1 808.9 505 354.2 641.4 979.2 979.2 979.2 979.2 272 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 761.6 489.6 761.6 489.6 516.9 734 743.9 700.5 813 724.8 633.8 772.4 811.3 431.9 541.2 833 666.2 947.3 784.1 748.3 631.1 775.5 745.3 602.2 573.9 665 570.8 924.4 812.6 568.1 670.2 380.8 380.8 380.8 979.2 979.2 410.9 514 416.3 421.4 508.8 453.8 482.6 468.9 563.7 334 405.1 509.3 291.7 856.5 584.5 470.7 491.4 434.1 441.3 461.2 353.6 557.3 473.4 699.9 556.4 477.4 454.9 312.5 377.9 623.4 489.6] endobj 1294 0 obj [514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6] endobj 1295 0 obj [625 625 937.5 937.5 312.5 343.7 562.5 562.5 562.5 562.5 562.5 849.5 500 574.1 812.5 875 562.5 1018.5 1143.5 875 312.5 342.6 581 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 342.6 875 531.3 531.3 875 849.5 799.8 812.5 862.3 738.4 707.2 884.3 879.6 419 581 880.8 675.9 1067.1 879.6 844.9 768.5 844.9 839.1 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 581 312.5 562.5 312.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.8 312.5 937.5 625 562.5 625 593.8 459.5 443.8 437.5 625 593.8 812.5 593.8 593.8 500 562.5] endobj 1296 0 obj [869.4 818.1 830.6 881.9 755.5 723.6 904.2 900 436.1 594.4 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.4 602.8 319.4 575 319.4 319.4 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.4 351.4 606.9 319.4 958.3 638.9 575 638.9 606.9 473.6 453.6 447.2] endobj 1297 0 obj [583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4] endobj 1298 0 obj [571.2 544 544 816 816 272 299.2 489.6 489.6 489.6 489.6 489.6 734 435.2 489.6 707.2 761.6 489.6 883.8 992.6 761.6 272 272 489.6 816 489.6 816 761.6 272 380.8 380.8 489.6 761.6 272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 272 761.6 462.4 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.3 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 489.6 272 489.6 272 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8 435.2 489.6] endobj 1299 0 obj [249.6 354.1 354.1 458.6 719.8 249.6 301.9 249.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.6 249.6 249.6 719.8 432.5 432.5 719.8 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 471.5 719.4 576 850 693.3 719.8 628.2 719.8 680.5 510.9 667.6 693.3 693.3 954.5 693.3 693.3 563.1 249.6 458.6 249.6 458.6 249.6 249.6 458.6 510.9 406.4 510.9 406.4 275.8 458.6 510.9 249.6 275.8 484.7 249.6 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 510.9 484.7 667.6 484.7 484.7] endobj 1300 0 obj << /Length1 1478 /Length2 8518 /Length3 0 /Length 9504 /Filter /FlateDecode >> stream xÚ¶PZ6Œ»·´@qww+ÅÁ½¸{ñ¢-.Å­Xñâw×mqëG{ï}íÿg¾o2“œÝ}v÷<+gÂ@£¡Í&e±ÉCœ`l\ìœÂ5i.N'';''7ƒæúGÁ ‚º‚!NÂÿ‚€°',öTƒ8”Ý\<.~a.aNN7'§Ð?@T t[ÔØÊ'+ƒ ÄÙ ¶±…=åùç`²dp °þqH9‚ `K @ ³9>e´:´!–`Ìë¿B0‰ÚÂ`ÎÂì@GWvÔFœ™à†Ù´@® ¨;È ð›2@èú›;@Çìú—Ab óBA€'…Øääúäâæd‚ž²´•T¯œANUÿ°þ.€‹ë_áþöþìôÇhi qt:ylÖ`à•¼*;ÌÆ :Yý\!Oþ@w Øhñøsu @^J|bø7?WK(ØæÊî vøÍ‘ãw˜§2Ë9YÉ@AN0WŒß÷“CA–Ou÷âø»¹öN'Ÿ$k°“•õoVnκN`7’ìߘ'Æ¿u6 €““S€_r€<-m9~'Ðñrý1rýV?qðóq†8¬Ÿh€üÀÖ § W ;ƒºü|þÓðßÀ l X€lÀNÿŽþ¤Yÿ%?õ öq>€ó÷ç_'“§ ³‚89xýþ§Åš†*Z²j/ÿ¦ü/£´4ÄàÃÆÇ`ãæãpqñóž~ÿç_ø‡ý­ü÷íþ#¢’“5 ô‰§êýCÄýïÉ`ú{m˜ÿAò4Ï Ó¿Çߘ“Óòé‹ëÿy þ¸üÿÍþï(ÿ×ñÿßÉ»98ü±3ýøÿØŽ`¯¿Oóì{Ú 5ÈÓ†8ý/Tô×BKC¬þצ>mˆ”“ÿÊv•{‚¬4À0KÛ¿†èŸ.<w;4 ®à߀‹“ólO;giÿô¨¸>õê ô´RÿRÎÉbõ{÷¸Ÿú„B^O­’ø>\OKjòü3Ûv'ìÉðDÎ` büî(?€Cê·ê$$àþ[pXü[pXþKâââp@ÿC|Šãú"?€öGü¯ÛZºA¡O›ügžž¨ü#ÿy6@ O%ÆÂ,ÄR$Ä®6¤ýºFŠÂƒmgLlšaG?™ÍgúÉí5•¹:ûÍôR*u¨oyKŽéBr‘úÁ稥5¼5Y³íÎ÷Þ,Qkr§ c~‚¸¼èHª® ’MGr×÷ÁÅW/ȱ¾S™!ÏÅMG£€àÚ£WÁ³®¯li$lvGs·š_ó¾lŠ-V7Æ8¨ø+C¾EÎ )- Œ åÙ™'î׋Ëég¹ã¿¨•_bøÇò¼÷1\玻™ñ^©Ðáví"£'3$¥B¼x62Éè#½ÿV™dΧäCÌšØÜ;ÈøÁÅÞ¤=2Z RhH)›XV j'}W®‡eÔAÏr\Àø‚ºÍ'”¡DÁ:¹Šn¨Ä,‡pó@G¥doõòS÷ó®ãÝNߤxRa®Ø½1Çç—b›9þü÷7(åÀIUäTk¸UºEõWÄS£Úù~rZC®±õE>F}¿òÙ?\±Ù!Ú…û~€9¯ ÷bz ’hŒÝYhÔï'Ÿ~{xß™`;dÔPCxAÉ®îT¨7]ウªüÒlÍnº~öøÚ]e¡€úÈØ -CõLÓ%NT/IIj6”üðFØŽj¶ú‚ñP^¶IHN¯íý¤»}Ô¬™]ŽÒ×»¼Ó°œ%òNý#Ö+jÁ[2Ú3´I¼RE©EŽY qÚòw…9$°ã·C",“;|˜˜òòØÒúÛ·\¡ÚÏiûЏYŽ)P¾ŽšSÄ $´ýpÐ-'GmQ*8—0ò(G ß±Dg4Ü3/&›,ÍíX­ÁrµRÉH{AÜÌ⺻=5¤c%ôU¸^÷&tÑ(n˜HÿÖ¦–«íÞÕx?•ó]àÛs Ö¸)>Sæ½*‰>ÝGUî6º6§/Ð zßè_“:Ͼ©¢¦$›Lø”›ÿºåícWHõ h¬Ø^òÕ¸æ–>´Y®÷øiaß%_ó3H½¢ØÚN$ÎJ‚.Áö%ÿq9U Ân¼ÏÍ>ËÍêÉ·4²ILVmÍmîmwŒ/Jœ*ÉŒÍkM4£C‚…÷q6WZzøÈœ8-„ÂMÚϾ³q,–¼7~MÏOnô2HW.Š®¿9F-ÿÕ1öx-»ìý†jõf©ñˆäµ7ϋ〈üBθӖQ¢:_2¥žgÚš×’Ê®=rÔ"¤Ú3=JŠ‹·OÇs®Æ™_šH¾ 'Ýœùh¬äøšÀì²ôKRý#Ú%C®?!Í"†²ûœ+®_ú€Ë¬ÇîĺÏVسª1×±d|µ ôkFM¶ÏÎoö^D2Fe¨1Ö Ôã·à¿…®Ý!C©|ùRÕŠ›ùhëÞ°tTãvR/ŠÖÄŒ¥ÊÆÅÔ±¶©þ´¶{™’x<Üñ©ó üåQîP­'gÏ•-bùš›‘ä¢ßÆþíl0Æ•R¢ :+À®s×d·Ï½æÙ‚FTŠ~šd/×ýÚ¡ úƒŸU8;Hs¯nàB&!5àƒu©Êqƒ,¶Sµ­¡A8Ö²l£ï5c{~Äç {ñ}pN{ÏÂ1!gMÌ‘E‹[ҰÉIƒÖŒS½×ï®Ôû)Kì€6l…çÓXý¢–¥ý§ãϽµe›¬?ªÆ–ð#å¼õuQ#,›Lä :Ø|EþdŸdòšy ºp,øâ´U|m]@17¯Í¾7µ=àEo#3>£u³q*®.Wah¶á}¢¡–Ì^F´.;¶\´LÛO.²ß¬-Èémoñ¦AbÍM̽‘çȨg•SŒ ]¸•ï|­?Çñ¼Ã,¡b¾8ô.¿oáâ—ßÈXgb-nE²dѧñYÅêÀŠî£»›ÓÒ%G'¡®Œ[¶ð«¼;¢R#¼$øŠo}ØŸ±ö`v˜h<}j+^›ÞBvY7$ Ïš$woµ5¤Áâ?·'ŽÞŸ/¹GèÉÏKÙÚ„¤7V!¯ãe "Q£ d ž² töSEª+‘kº ñ"x·ýŠä»r Â8 2SÉæ®Y˜ ,¼Cý%z:ªËd³s1³ÊTdþŠ;-ºå¡ˆtÉÛ‚™s óË©Ž^O{5úµ™âiB´i¸QˆÀAz`s;-Žêž7Fý{(`»ë6‚¸E\¼S ”[Ì£™<Á–ù‚Ókrí[)inÝ…2š>€mm%‚BÀø.ô쌯j™Œ'6EŒ:îóX;Ù|+I nϬ¯‘VæÆGq¾ ¥X‚²hÓ–'žm•­Í–½ÞíÁ*p%ÌkÛA Nòá äh(è*$Ž© KßÊUWéZìÔäv:OÍw93ÑJùÚøu™N¹‚W n¯Þšzüe³-±ÃqÀÄ~°JP#ãþôLêTLlüzÐÛ6 ¸dÙqô¼`]UPþ3¹yÌû,ÝøÎB0p¢eÒ{6C­´æS}Lå³ùâÍg` ç¸õôhæèi)Vžÿö ×ÏLÌž¹øLTQ‘+ÖjÓiþ÷;Ö9¬]Îc%¾gUöíZ‚­ çÏÅÁ˜(AÓκìõ©JɶÛgû9æÕFÒò᫬ª _u)³Û÷ ê¥Aí,ô5ÔNÏ ÞEÏO=ú££î˜‡Ðtk]2ÞÇèØÚwdš(v-?“nCê£PlÚ©mÒÖ «ËØ4 Tºä„]í¶‘ïKÛ–™¾æ¸/ö[ærë:?³6ê×3>½"5šˆH33–ˆÓ‡} åi‰Åj ÝÕ¢¬t\é©ÊÍb®º,%Ì’‹3†êsauOO&ARÞOÀymÍF.0KDwH.ÚÄŒ+K8ä\\RBÎyMg'‡7q;'es)÷BX[EÍ]>•CÅYÏÊ iêÍÌÙ ‹ ñ,§m.ðo²HßmS.´ÎGåðTeàm¦0„,”Ñ#nU[{]âÉS {v|¦½BˆeêZzuʸ{• ¢õ Nµ Çã5¯ûSÝa³oŸ/!Eðö7Go‰ºÐêäEò¥J®‘Mî ‘Ÿ×^PX“yxyù*æû†éú‹:tŽÕ¾S!§cÁu⟸.͵̯ãšM¶÷Þ͈ËE÷¦E¹'i†Ùáæ>â“#$ÝVåð1¼³ D¤+ðoHÀL‹úòj„0™þ¸ Í•ùcØí‘ÇtÃv5Ó’†zÕ{$°¦4û£Ëœ½OòßÔêO2og¥x°£ ~¹0X¡b‹­ÉG™=¬\f÷å^.ì»…ó n5nmlXxƒÇÁŠû]݆/= ;ïa2‹ä´«Äø:bܮޢoÓŠ+„#UþyÝPôÆýeÙ0JµªÌv[êØËª%A„x·”7^Ñìž2S ý¹Œo:uKRýŒ•vÈ# Ô9÷Ã$Ê6X9]»K²¤ä¥Ã€$T¦¬äøÝìo©øb ´°Ì9–n?•ø  ™W ®áÆGoö.Ê?“eT}3âk6óÈ>T‘—ä<\×ÞIÐe±AÜRÅ’–6?Ùù¡Ëõìà6G(ja÷ÒÊg~3À« ÷]ö?uóßÑÄ·-·ïtçÕC.ʃ':x¦¢ß:–#ø½$% ‡‡ þæõ½é|"Û7õ&¿t*?Ì™döŸ‰úàr"`ÑT…¼Gp±e9¹ÿH¶!"oàä¤áToTÜSdg£Ø?"Û’#Oq¼üåó¸iǃF6 ,âwڙܧa,ßûäR .ÏE:#fÚÆ9vñãZùJ°TñfOð ÍÝM:X?–ÑJóå#SjÅÅÚñ¾Ï ž5FÑ'¼ËµÚ‰f¤ã¤ž„\§ÀÜŒê§5GGîäth(Iû¾S¯&¸xÈýúy]Q½pÌßZ®?‹F )ˆŽý­N‹ÁÓ1ˆ¢cö¼ïÄ_ÚvSl]¾¾`–۸ńu;`ú£$ÄT‚ã ¿ÇÒõZà~!vqÞ¼ó£³¶C3Ø÷Kô ÌÎíŠØBô†B@Mì&{J€Äuh©üÍ^ãd™7ï*Þ\h—‡Å‰¬¿sõ ª oq>ÏþÊ#‡³zpn*Õ‚He;,y>M>†Ôyÿëð¦ÇÏC-“ŸÎýýxE`!'»EiÚ–áVœ¤htÑ.ö›ËGo¯Y‡¯Ì¿hkKg*ùã[Á]+ºŽ©Œ´î"8K„4?æÀœ­=ïäua2QüW§K!ò7Ôèyž³¾`¼ÒwÛû ª¸^Ã:‹?Då–N7»\"õýeê n_“ýÛm±[1ÜbírŠÿú ²FÐßÔD¿ýÝt !Oœõu6;•üÝrJ|f.|ŠÂg’VB»VF¸b]Æ1íŠ2NÜÃ Š˜òtíÊQ›ã­æž»¨Œ£•I¤—¶‚ìá„4CÅõ‰¿xý_ö ç§ŸZÉŒÌæ‹\=Wèí¨) ,êï3¤“ªO"Í/­;¹ȵˆã"tj©–¡¿y T™—¤÷]կ̈ž>çÐP¯C1HåaáT¹Ø:è}Xîobö›F¬R>P³¡¢ç»ünÖaS.ãÊ-Ó Àª’“‹;óNm¬mlœ9o75‚wëg™‹¾ÒZþ¶¥‰„H‰ÚÀ2GãjÞ?²‰ Px€üñfÛô}ïÑ?Õt ³Õ«‹@"@/ÛâõkšW>Å(D°–y¶7PÎPÐ)*ê±Y"f/‘2†¸ôh'Y¡áKiIÀ[(ÿxæêÇbððy^åƒ]qÆOKg“ÿ AÑ.É­„îtžÆB»–îœð7 ©ðBêcgôÞþ ¦=ÝQ⎪ŸUÕ·„®¼"êºÉÂŽÑàÀ9f”qjÝ{fYv‰ÑY¸Y¡öœjk^­Kî²Ó¸Iƒ––l4ºç¸fZÞh†#nÌ.ë>€[‚Kœ 4Û-í㵬= ¢u|Ùá¾$OfA´éã^´d†Ù´žMѯÞë‰hÿYë,1—ìOM„ʽå²4†K3*²CS–ÝW‡L;¢¤ ¤ì9ûÔŠ-Ø<ŠÄp¡¥Êñ=ˆ×I©t_žÇk½l¶ÔÝ(§ÒÑÙ€gzÇLÝx/§bjµÄPßEûãQ;š]¥¯,—ÑWÀ%ÜcFál>ëöýº^ä¤z~Çü£ƒã¿ ·±RXÀzZLë2Ühçqm„$‡¹#^]`_Y Žéë—@éάJ½7‹œéÚÍð()¾9„Áõ9Á–#1‰W7ID™~ššÞBŸLéè õè—›ÎýRkFÖAãùÙÓŸë¢Æ½ÇKõD•üIñ“Ï f«y÷³ŽgÉT—ÛŽÕh˜¦rÞžjÝ}•igµ­ñÓšùűû=oÔxy·œ²^À˜‘P§ã{„ˆch&t’qP‘h' ÿá.«n* e5en¸nh UZO)`¼Mb´­T¬/%*Ù¼¿•%VÃ)QMp`‡C­3¬Pzô,?ˆSÝU•ïbnì Q•ú§[[<ÿ¬™û-†ê.ä½\us¿s½ Á÷1OÏ0áT5¯vžù\u§ÃÆ@)ì—–ýÆlhÅR¹RéÝ/àxÔp‡|Wj·V@E¥Îç]‰LU¸Òï¼Xl8RN{K*µX¢`B#»ÁËÞ}w•÷èdƒK•žýtJPh̸®Ëeü™ ÌeËMá¡—ÚÏ;ƒÛP˜iûÎÀâ5$ÚãAWÆ´ê¥M“lûŸßz´ëUO½ŽWÍí®¿¤kÍ5Šžn~Œ´Ì A9šÊ»I²lP»—½¨¶VU Y‰z „|ÚŠØt*¹¸$FŒXs¤»ç–}XydÈ?DD³¬Z¨ñ>×®möK-¼8xI)(é奩}ä6Œš2nàýøÎñ`Çsî<¬B[éê=‘d]· %•ùh ñÓ¡=8uD/@ßÊke‰O7¡nrß~ùˆóhòS»µÍV{E¥e;–¹™9ðyàÜmydjƒC³Å†ëEÍ£ü‘°’O½9#@Ûùqæ+V-|AzbÕëU›bDq¡Ò«‰QÞ2tÔš&X¸pŽÈcÝ ‡zQ·%p )u«‚ž)a׃¤žèv˜†Ä W+ˆÇܯó~½Ï®ëÙJIº–v˸Êð¨ð‘=oáOÂem´·~ "<¢o—‡DÓÚº¦cÑñçs¼ú_Ö´|’RÑè»ß-\áM(/;ôgYô^Å?W«„-βjŸÙ˜¡™™4äq†FU²) Ì\{×í¿TðMBË·6K‚šÈ)$.­]–²ãlŠÑgLÔœ ¥¡¹3ÕÈÖrÔŸ/ªZ”ãDÏYmž.hUŠ,)dIH•?ëéàn˜¦Ò¸¯}(œKÁ›;ŒöìÏ–‘l{ŒIVs5Šå—(y ˆ êžÇ¿ -Õ2*°¿¶é/ŽýEH{ƾ¥è,ÊE;$ç›s¼ÞH’ÊpàØ'Bñòêƒ"£•56¤Å‘ 06_Óíyt=\0Ù~vË šÑ}ûÅ[ÝÈl ÖÙ›6­Ÿj!¸aóÌKö(pYïöm”‡b›1–å“E0½öÇÌ·VƒVUñŸx+'L§Ùô„Ç2áCû6†Ñ.òYÌ,E]+õÅéÝ`~ÕüVgì´QŠÈ}|)—ew$O“Ø;¤™‹QÍŽ]ÌE{|Ù·+o%tƒÈÙ¾ÕµRÒÿÔâ®.£Ã ðòp¬á¦ò{ÉóÙûoÉìÝ5OÑdžçz(†§xü'åqH?éM"+øúº†¿´ª`[®ô}ERfúúíD§©MavèCþ=YÙ{U¥Ë³FyÛÛ šÂŸzisþ·êtÛð_ŽL \ħ¨=ÉÏMt§æyÂÂÕ‹­cðj±8ƒå,µbô¯–¾­§qù‰k~|ræÉ]+©ódå>ý¤=on¦gƨ¿äA1÷6gVVŠÝ{óšK·¯Cþ ®@¤„[¬&w]˜»ˆ<øÖ²-Œ“&‘¯&kDMœ&¿ÊÏ¥¸‰|·`ÇBE¬PŽg\ñ¼a,¢ë>¯S‘¢æ¯^! ™›`L=¢Ž–”>VÙ‰°ísJ~´ÿÕväŠC“Ñ< ?h\=pÜû .*ˆîv¢ûöŠ„†¼/§s‘xÁþ[‰ôP3j¬ùÎ-ž“P uî~ôšø&êM¦KKE?–“­}Eß›Aî·¨xŒâ-¬9—‹Gï{¶P„¬íÍÄÞ¡5åk x*÷Cœ´¾ÒD¾jsþyqºè›§0æRŸÌpºï§UE± > ±y nG& t‹¿-iô\Ãïø ‘ð=Uodžï$]Ím¶+‚GÌ´‡ï[çɸüŠÁ+¤d{íσ” {ÛÍü–äs™‡SÚaåÒhï±ÖáDý” ¢u¹Ì ™pYÖ £ÚïÒ0g·‘X¿‰Zé¬õ‰¸¦Ò#w˜WX×i¯W%jãLÛã—¸¦”]ئêòµ&vþ ×7qik’âxiÆl!8– -©—4ýô P,® ˆã`Ä3„_ÙúJÊÀcIº÷ˆ,Žž&ϺS%ÕÆ!9¸pøNàÍ*K£p+ÿÝ—8vc:M{¥ãbí¼e˜×ï1°h=(}4{°g¦‚•s¹+;MÓvã§. mz}ô}Ÿgö[8Z¾c?oºÑZ<¶©¬m÷o¯Ü(ÔUÆÜiëùÅ?iÕÔÁps_d=†Ô3f衾Å^òs'9ù‘À;`Ó=n¬³ÇX^ÇeémÒ@Áà÷hŽ×E’“GÔþ;níòÓ/4=EÜò—ÜwÝï2_F÷$~°»-GÖ?I¾x¿hbQkÝÂ{õÙ­ú|ØÂMEÞô™ ½)“Ô\]Ì読*»—~ÓÃ3R[Áð(tȲ±A‡^KUâGüAq&G„׆û+w³ƒ¿8«YÁ•2_2·U}šnÓ¼ÄeK‚x`8êzôêºÄÕöœvÁïzÔm1¶¢EË}¡cé1TÚC1½ ©9Z8@¶È–yG<_ÚR½Ð)„4y¼öQ ‘ð\ÊÊÚ'2™(ʉÁdŸÑ®HIJ9»É0’Üé3kZLïÓs¸Ù=%æzÙÎâ(ÌÿÉ$§C÷*d2=:+I˜ e€C­çGs£Ì˜1{Òyé–¿Ê ]?NI ËEÌœ°#&g¢·¼œ×ǯÕpña9çèÞ¹‹¯„.øP¯ÇðšÄ‡w{·‰ÇÅñ,Ý_%‡EH’„Hò÷´úÏÇ,öoŒÆ˜ÈwíB&JðÝxMâÁŠOÙG÷JÕR’!†¨L§#?dFÚ†iÙxFÑüà¬;Áº„ë§k‚Rp 6Ç15M Þ9ö7e̱ràÃÍîÐêÝ©WFjúlI§,F§›ŽÑªÏºœäp6Î9\P\kk»žÐJn?ØE“ZÝâÊ;doÆ´ñ¦¶¼_·ê^k?T\;¥Ýw”Û+ˆwùyT¼Š²XÕ ­ñÖ¼ßfmk§J¸°nÃVÍiù Æ]­ÄÐ%5ùl>xP‘#–`ÔJõç £¦Î’‰ÁÊã×@¯öñî6ï—Ò+û×3©ãÌüH~W^ï7A^x”ø_à¤/|-ÀÚe…ÊÕ>á úH™/¸ºâ‚HEQ'ºú1\öÍ…’߸«õHQdÀ;L^›ü Ü'í dßNÂ2ÊPðLÐûïŽ;`éÉP†îv+;Ù®K,^êSç>¥éU¾º‰«Iò‘¼ˆža¯Ï“*Þtn ÓžŠg1}MuûqÀ(‰I:Õoâ(qµ½Dÿrïsm†§ÎŽ)}XïÔû“ä¨ÐK_·_Û´Oæ¢è6x\XøF]²/þþÓŸ{æf|ÞÆC4h…ƒZ)¥Pù¨ÛÔi°®•˜€yÁh—¬ç¶æÓ_ºÅ/­Œ1LDtî˜õ燋֙½Gk½5‹^Cö¼B‚Ñ1¹ ÷ßÞ‰É;Èu±'SQ ·FËTšÕ›(J¦™oï­Qø¥$ål•DݨC¨wÐٮ˴޲~†}qÑ …‰FJ§Þr¾Ñíþ 0'r~Ït°‘y/—’µ”Ü,1à+¶¤DEGbGÒ]ëCEï«€»`ý"B)žqG×k-T–ïm'!§PiúâAŸ •&’‹[,zUómÕ—8xº8kU¿ÕB…掞„[©aAQ ‘gÄõÓ„ÃÜR“{]ŠäÌr½¼«‚ìÑBìvðúͰ܈êF»‘sFA•!Ú]ç/΃¤MÞHì¸ÛËC"VHi´ì6Šä?ÓªÑÀÖ!1ÙÏiÐ}÷hŠùY0+Si}Ïd%&¢Yв129w›o±øŽĺ]…D³¶æÆØÄ%#”#WãÕ=››qÈí/Ⱦ´uÍ»Ò*7Ç`íõ—Õp\)×ÝHÃnüG°íà‘šÞÈ#’߬‡˜` Ïj»ûZo­§çõ}Ͼ¯ze×?ê ǹ‘SzϨZÃõZ¥î­èIùý°7‹.‘ÿ¹x!K‰ßÃüFjÑÍ´Ùfu’af—ŸLŠ>.›ï§"R±–ëï€;N‚¤ß#f_²«teÝÍFi§Ž`&ÁC‡J§t¿f«™¡¯jÛADÚŒ‡Ëwð…ºç 5$sú¸e%Ë„uìÀôÖÈz­ü’¾üÔÛ[Ã"BÙ4ÒÅð2¼x\¦±pÑB ¬øÆ†À]‹@Œê1"þ‡h' endstream endobj 1301 0 obj << /Type /FontDescriptor /FontName /QZKRDM+CMBX10 /Flags 4 /FontBBox [-56 -250 1164 750] /Ascent 694 /CapHeight 686 /Descent -194 /ItalicAngle 0 /StemV 114 /XHeight 444 /CharSet (/A/a/b/c/r/s/t) /FontFile 1300 0 R >> endobj 1302 0 obj << /Length1 2505 /Length2 18586 /Length3 0 /Length 20027 /Filter /FlateDecode >> stream xÚŒöP\ÛÖ £Aƒ»6îîÜÝ=Hãîî$¸\ƒÜ!¸»wBp÷×9÷Ü“s¿ÿ¯z¯ºŠî1m9Öœ{CA¢¤Ê ljo ”°·sa`adæˆÊ‹h±°˜™Ù™™Yá)(Ô,]l€ÿµÃShœ-ííxÿ!ê4rÙÄŒ\@òövW €…“—…‹—™ÀÊÌÌóß@{'^€˜‘›¥)@ž cot†§µwðt²4·póߟj ý_éa[ “¥‰‘@ÞÈÅh :ÑÄÈ job tñüŸÔü..¼LLîîîŒF¶ÎŒöNæ‚4ôwK € Ðèä4ün `d ü»5Fx €š…¥óªöf.îFN@È`ci´s¥¸Ú™ ÓªÒrE Ý‚åþ@ø[ #Ë?åþÎþ]ÈÒî¯d#{[#;OK;s€™¥  (!ÇèâáB0²3ýhdãlÊ7r3²´12üEÝ !¬ 0uøwÎ&N–.ΌΖ6¿{dú]$³¸©¨½­-ÐÎÅþ7?1K'  HwO¦¿/×ÚÎÞÝÎû¿ÈÌÒÎÔìw¦®Lêv–Ž®@i±¿c@&ø?6s  €ƒ™™™‹“t=L,˜~ æéüËÉòÛ êÁ×ÛÁÞ`jèki}Á{;¹.N®@_ï;þÁ³°L-M\Æ@sK;ø?ÕAf Ù0èþ,=ºÌ ñc0ÿþüóK4a¦öv6žÂÿºb&qEe iº¿[þÇ)"bïðfà`0°r°XXØx\Ìßÿ­óÿíþ/«’‘åßì˜ÿT”¶3³ðü§ zÿmÄíïÉ þ{mhÿ{‚‚=hžê?ã¯ÇÌÁlúÃòÿy þJùÿ7û¿«ü¿Žÿÿe$ájcó—Ÿú?ÿ?~#[KÏ¿#@óìêÚ y{ІØýßPMàZÄÞÆôÿú¤]Œ@"lgnóŒ–Ζ@S%K‹ÿ ÑoTÜÆÒ¨dïlùû``afþ?>ÐΙXƒ*Π»úË­Ôÿ)ngboú{÷X98FNNFžðÌ cåàx³€–Ôèñ×l˜íì]@)Ps¾3{'øß7ÊÉ`þmúâ0‰üA\&Ñ?ˆÀ$öñ€ÆðÄÅ `’øƒXL’+€Iêb0IÿAì&™?ÄEöq‘ûƒ@\äÿ …?ÄEñÄ â¢ô¸(ÿA .*ˆ‹êâ¢ö¸¨ÿA .ˆ‹æ:]ûÄòýƒØ@¬¿x·ÔÄ·&*·=ù<Æ«LïµÁ/Ma L ×õÂ0¨}Ø÷yqôÑ´†lï’¡ÈutåFRÊG¿wï“ô¨ë/û1¶°§¼_Í)‹ð\6ÃðY=Z/°dŽ"Ï8k‡ô !,-Ú¹òÜÍí,ZÎä±L<¼ï¯ÏlEÞ:›¬1ó^kj¬Îݸä¸:8„7hcÓ”Þ"‡)2؋ޥű2aQÅf„ M‚ÈFŽìµ$]Ëüe£“[£8G†¢eÈ;Óa±&ÊÛ"ÃG6ª98h¹u\%3/,†ðÎÊ/X^Q•s_œ‚…¬]N”XÃÓ{lˆBn¨…Þu†¦,r.áæôóøÍPÕ'¼ùˆ_b5ÎsÑíñ6òxÒ Áuá;9)i›­{­¦}"¨6F0Lf4ÂbA’Ã÷îãI¶æÐ@Ú›µ 8þ×ÏÓ²Vcµ2]^Ho½ ÙÇ&ÁB+üû!6Õö\C–LËtÓ1V¼2=vP£²O‘d¬ªù5ºIÇýY"ÆhBcòàAö!߸ªKŒ S"ò©ðšÃͯKî”y'ê§¿Î|B82­1Mð™–.›: •2pÿ$\U> $;cÉ*gÓL,èŽ`›ºê’aÄâ\¬š#äOSÕþEÚ â„C[¡4ˆ™‚¸L–)ؤcÕsk‘?Ü@—¦þê^ýv±ÿ\O·Û;µ­·¥©À(ZD­1£w¦°¿OÛñ½™  zNXèÒÆŹç«|˜RÓ]BgŒ§™ªgéÖB—ñ&êxïGWB‡˜[¥í¡¸W§9W‹¯1óA3CbËy­=JsQ%¾8MÍÄÐÝÝsð» ¥^ê´ã?ˆØ*ünw¤ŠÜ±ƒ½ö”y!æ‡aÚˆ‘¶Æ“¦1Mðꪕ}âÀÔ³Úà÷ÏLE&š©Ábiƒ/¸¥ÜàÁ#*ÔzÈ¥!­èùP}Ë3]Ïäçè‰$S¤„«WžcÊ;ei‚¹nõ"ú$ϺûqŒÃ©J.öŠ·g·®pèq³²sÜoóÕ$mQþ#\éf:‰¡ ÒÏj_X‰Â¯·•‚ÐKûièÉi0{°ì‰í„Ü^@uX:œè\kT\D~Az)¿*ƒò!puÁj?T´u?(ìÉ ÃºÉ¹ðw©¬÷íq¶–ûY,`NµÉ_]÷ ê”ŸŽ­ MÆŒso+é€Ûƽ#³Š)]Og”~âlÅOzà)v°ï6Ô¢ðŒ S¸Oƒ¡æÁ+9À6åXàÏ_×b/ƒnã@'‰=GÔÍ|W#N$sSÞÙ„¢·4§¯•‡ÓšBT_•ù¼lCÛ<7†Ï«MÐÀ Hà0Ìu›Ü,×úT?¸¤“=(êW7hsópS‰ÖfšÎR8ÎËø0'¡Ç„ïXõýœ‡¤û¢Ò†éf7èYž“`>ÈŒ[~qM³•ÈÖÌ:r?yÒª>€#ùÞFXJjpº5co‘Û~ sãGñÒQÆ7›?`Vø©â˜qKòƒ–kØUN±}BÀØÜïôÙpMîE4HZˆŸã¢A Ñ˹¤þÄ×UîcŠüR@Y')W¶lç,äéÝAÛånØ·§" Êûò2®Ð'×í# ÑwF±0¶¼åýdYòd\Œ‚C¸ôv=›ÿ·Œ”™5çÞ,1ì¶ÍY•·ˆÄ¢ïjïÆLjaÊYÅS>{ŠéÉ×£ªòH-+nŸÏr2»–,1xÖãàO&ÛYvÃÔ Õž¬§Á<À’ÝU-2 ¨÷³kI¯”ÇÓz¢ç¦,à2z?`Jþšº–Œ`उ¸ä9ÙåßÕ‡S{UÁÞ¬,ëM³,0ª)Ön*Øfü¹¢“é°œŒgÂDþ ” ÷fëSqKæMÊÙ%ûIŽXIktÃË©8G'ÌdæÎ÷-ð„†[nIÖL‘y­*p{@­0W¯WÍP|ëpòω¾tET)oñŒV³¶Ál¥Úü&u2‹¸Î3ÄDóÐõäZ ßíJ‡aSoz³ËÞpÔìõÕDÎ9<ë^Mæ./t…ÛÞsè~´f„Â}”<&mëûh˳S9³+3‰9¦!„°±${”‰1C£q’ÜÕ÷Û"?]ôo¼‚ô:°3¡+Ö“T˜ÒØ ±äKS°æÁ2%Üý‡Î€T1ú—þõ:ÝJãDCà1‹‹ÅNÕBCJqF!ÃÈr‰T øýð“&˜¨eQ«wl’¾Ejà¸T+y±vÝdC‚±3¹ T¹ ™ÍPë«÷îòŠjqÕbÎ2i£Êø­õ=ÁÞ0pOjëM׬U¸ñU Î31O—Èþ"Á+Ñ—?È é·®söÃñ®ìdSWH¥²&«‘æsÍå¬"(¥êã\T2µÔgm„ƒ™Ó—•&,JÒkq[wŒ6¹ÊsàVÃV9¥Jõð,§m^ƬÃUµšëòt¶²M!-ƒfô¤«Ll~}Õ|O·)\ùL\=•£ö *‘û›v)2"ìöÁß8…™¾[tc¨HðÔä¨- zÇQçS¦“o„ÆùóŽ^[táݽÝÄÊ¿YuÀ”æ .áÿ¢ˆ“€ÀÖy[ù$¹=äÖôNè£*ïæ1¯ ÐAe`¬qùÞ›'³,:wt_ûN×n(µ±òzp"æcv³sk!˜û'ùc)vJmÞšðÂlÝ,$/%6:g¡ íkP=¢’;¾xOÉÍ$¹B[È þKéÛ'R+-è6-gÈy'¼¥ŸâÕõ¿²æåžII~ÑšáÐe’€« GÄOŽ@ Ò ±¡uïxp¥\p’áw½‘\E |Ú!BzANv-ÂŽ2ÎofJÜìª[%H)Ýé}Õûh¼µ3O~ë$ÐI3.ÇTŒwÇßi.¢Žòóx™«Š1—ãëŽH㎊4 ½®ˆÇˆGƒ}‡’ЕÅ|¿ä¸Â1Í:Y %ìW4@‡¥=ìsuûš”îYUÆ®„d«ªÛ‡™Ë£F÷ƒO²ÓŒ7ˆï£ga(Î#~™zÀ‡ˆûY}꘳xÞ½K#ÖÖB¡iôÕUïÐܽÉœ…lØßxòl*ûö¹—;%[g4"ÍÚ®ePÛóV;‹Æ¤Áù?¶œÆ0Þèó1\c½“ôU%'2òA¼Û²G\l´v¥:sÏDy©Nõ “ø™²îÐ[ÏJ„Ñ’Øç+M»^-":)è)”¡h8 ÝΞŠöÌ»\k,~«¡ÂÒ8£qþ`LL.k/Áljg„×ú ÷m,gÝŒ]Ò`¬Â:Úû wœw6½áu]Ÿ(Ó´dŒ—|6Ì1ñsÌê NÕwæõD&Ü aÚ9,r¾q7rkÁ ®t½ÎÏ+SÎÛQXLeÆ‚œ&Š×KAUFnÍ“ÀÊ »/i0°.+Ž˜B帇h4Kt»j(ŠŠ β`Š„ô<òl$.Ž´ÊNÚU̯ûs¸Âš+€‹b©5ý Àš‰UºÑ:‚ª²ÄÒ˜L$íÖgO{;¡ªË¦[Â{©ŒóöË~<:½`°Í1AŽ£ã‡šX8¢Q5§ôHœ¸+>—긇ßtY¿zß7íí{_ÖD‚†Û&«]·›ú&mU¼b'4î e½, #³ËMEQŠÙùÍüÜWò»›i» y÷=-þ/>Ãï»îóšÏ×ÝqXÉÚFx}F§Ú9×óÙ¥jŠæ¬.ü¤CÀÄcŠl¯ç.2Ü*#ªé¿ëfx”n ¡h‡~hJÛt"Ãnê¦z$fåýX$Ì%ë§Eg¸ŸÖ©B&¹+¬Ñç¢)¶nú¾³žn9`›6Ðuú‡×µñ.vMPZ þq¹“öôIñ7…ÈšœFŠ«i\sX°Ë!™fºR˜e6«al?Gt7½ú™ïJ΂µ_JÚRèM§Ãõ®º8í?§TÏ-u¶à‰ç“œ×E™AG2«/ñüÀ¥¥›‹ˆsdЦIÅÙ&#\ú$y#Ãt†@î'JCR¿í›û~'J^¶A¸I‡÷6·³ç}|¼½/ÆX•„rÞ:o”j4Vb“’…* ÖÄþŠ[ËK†ze8w9ÎÊY=§¾Á]Ò¹ôXo{Eb°+r(m† ÏÆåv#é/#ä±ßDú=,eåSØrƒ\˜¾O¤ŸÑD‡QÓãbXu=ü|äÈì›O™EóäÐ>áv]Ç ‚¬ÿê¨GÚ¶«§‘Ù…² 6÷”ÝyŠ®aqÐ÷ÊÖW÷°uÝyÓƒ“cåÎô×u³ú˜©wÞµ5²Q$JýCùV¾LÚ&Îø›çmùï3žO’¦-7r%œ$ß(ˆd×6ãé3vìz°ˆäü4Åè|œGL5%9«¾y²À—cÀh±CËJ}#ë;åš>`›gpÂBA‰g'µ{?!œ"sµŒ†ÿ.y‹“ÑH§xНÀÝØãªý+˜ä9ä»&“mò÷‘®üTñÍv—3, Ql7}x¶(ùùs:λ¥É;‹ìþN’zUéM9µæbì GVÏ  Xt˜²¹jÆ:¨OúÆUnN|[×µÛ­^±qø­GŠ»_ZlQÚ§ŽÙr©é YJ¯£CÒ¯iŽ3õ1ž"œß§Dq¤A#ÓÈÛfÈèÚ`6Œ'„öíbuB¿+èóeÚÿ¡… 3ìþ`³ÃD*Qå @Ô¨êæ²Ÿ|Ùo !l[vh´GQu¦_ÝÂÀ ¯:„±pÖ÷^“ÇÁ¼WßV.—ò¥¢þ¬h:àçǃ.uª,чpÉ@¿» 6–Ÿ£[³ç”*>H¤|=oû>ÓÄ%®Ä}Ž!0:•ä %3^¸Nb˜qÇ×Ëo:ú«QEAyÄäZ¹)òQfazL8 •´u*1þ¡®f­XÒ8‘þ!Ú'g±¾jÙ$…,4²‹JŒï‡å1l§Óœ< Úq.¶kïzB¼)ι↡8|›‡Ò%DohÇä(ðûÈvÌ"è°qbt\iõdj¯61ø3rI³ VFwèµfM÷0àÃ`%™·åœOf#b4xˆû4 .¡Ä¦©C$ÏôK¦ú™à®ÈW˜8V‡-"]Rl¬+«¹­Ûª ãö¥áãFY3/‘ÔòÓèÖ«ð׆ËYïkXZ#v º²¹ýÏJ77{º]iCÊ~Zë±J“@ü%ñTJ¾Hpt‰©l0tÆe±äv´ÊOKêù=×ÝØž½ð:ö^?Ì÷I|"6Ÿ)6åÕ}úÀm‘Áš|Eq‘»ãª ÆÏ“‘Vm!C¿[?&`qÈûx€"Øÿ3¼ªYÐB!oõ‹ØŒ„íhGκÀÆ¢:3®ûA›ÉÆÊ õ>$Ϧ½q)o,€#K$>Ð̇‰¨ç»žR_ïŠcî–» •…ÄÙWÂJýw8ø©HšÅŠ»3ö{XT©'³½P„uNmÏ‹òá6C”,Z\&ÙრkI¡ÌݺøªQ $-“ÄÂÈú¹ýe©t±ÒÖÙäί(~hŸÞ†©Ë<~óé¶î %oŠêhØUø˜fo¨c¥îÑPB”¼3úü6rÖ…‰.ÔTC5¿ŽPœº+Z™mYÝCDIèì™ë÷vV).<[½kmè™5% ÜÐ\<Œü(nq?DÎrö<ñ›v¯‹Í®·ó=•àƒx`I3#ƒ_¿FžU=¦´oà·5›» ëý°-‚ðd?µJ`0¥ÓÒrÞÏÌÆ&b"-Í³íæ°õ OQ+ƒÚa_ÂB Ú3ÇhUʹà]˜N“;ý«±=¢»NŒ»¥‘°~­Õ¹‡á›_Ø®V–é”Ü€Ø r/ös ±õ)I ~r)p¹G¿öŽÝ¯ªJB”eéör3¡Î†HÌò=²#P¯]ïqî:qDwñ¿tâ’Ví7uÕGèm?,zL¨X®{ ašðá5kÔ£æ€áð| À¼f  >›?¾&à¶U`Ó .wôâ)ÉÒŠ¾÷þ,'V-½)ê$ô%Xè! …¤éÛê*ôU,e[m9x+çò+…§qº»c…-މ:®FMÒf1lÆ\»®§‡&³Â¡µóH~¢(Giré™C²š]Iøð >ŽŽðîR(*Bm÷Q×令"á)?« GçôK?V®Ö~’TS åErŽï6¨’êEÀ\ÆizòGðú’4—HÜUžO (érôG¸?aAÏò½žÒ”ÒÀúˆ¾xåÞ››.µ6ºE¶ïƒc¦ùÇæ0Ýt`l²î·ÌY®-›7¢.—Ãð€›çzº)jÕËÀÛÈúÈ`šƒ Gt|Ã~ãžZ_££ÝydV1âè¶^Kœ<¿–»ÜtØ@ûÊÌxX¦q²<™µÇoþXÝ ³€°×f2¾¬=䲞 uS(*F7"Jôath˜Zoí-«Æ=žõWw8zC¿ÝV}ì9mªiE­Ë§¸Ç¶wmi¡3õMC¼ÐI±˜tõ}lç˜gúÒi îpÔ§bÅ6ÇÞ _>êkæeÎϹR òQS”ß‘ÒäÖÐÁ†.ÔõÇÛÜä„¿›bQ¹{ɽb©.£êõÌB½=ä.{Qª|¿)p(‡d»ïŒD"UÉ)ðÚ‡!ø3 ŽrFËëÆKMÖÐQHußÀPõ"ºN«¾S£Ðô1GZ„nîÆþ:\9oLq”›¤1õÈN¾¼Kdë+Ì¢NX†ÜÛ.‰ `°Ž“G Ø'fQej ¥†:Af?˜8þ´{wñ}Åmã³üL—˜ö¨d¯@°ÁÒËP¿k\#«÷ŒG?;tüšî¾(ù#] Z£~Ù:&RSŸ‚Ï|_4£=ès%^{Ìç ÷‰¯h›U|¡ðŒ×1ÙªåñÛmOV‡<Ýv©ën©:y‘”µHK®+ëÌŠk Ÿò ý‘ôNò¶¯"öðM+¦"ï™%—Ÿ± +Ú%qó£!ËEj?ÛEÖg¶esNå$™«µ$+BÉs=Rvú_>èÛ»5Úgúñ:++…qUK Êæ‹…ƒ}Š êq6 ÓˆzKÛˆŠªQˆ:e²3™*Ëœ_úM9>ç\&eq½2œÌ¾Z4L®îœŸ#%!Ÿ€e áÚuJz(Ȥ§B”ç¹›v!MMŒ§E’È7D¬NŠ–+1%#’ :«¦ñ9úÙJx. •%·E3ÈZà\;B¡]¨k¨É­¯p¡eì·wUYFÎRg@4Üüåi÷Ú¥tBR‘-¦‘ ¼Ð–Ês’™Kº6ùÜ1這²Æª²™ÔüºQl<·é.„¸¢s ›zñÁÜà±+^þtD¼Š(Óáä-‡6Î\*,l‹)P×—’d´gy|2EQ ö ySÅXIQßi?ŸÏÃ’ô’Úí@<%}5l^ê¼6gûµ ìsé,¦k­8äJ¬#ùJíÎÑŸnF¦,j«w×eFØu}°ÆUe-ùš¯¹šãjŸVÇ*qµáÌ•fñ轺>JÒõvmt3Wã°ÍR iæÑBùÑßu™û¦· ·,TâMS¿ZÆñi+v¬˜a´r3/ZŒEó-ßüú>¶¸£T íų##§§ëNúuý45(õ´oB"êóÓQÐ}x`›¶9Jæ-<`Ø?¼8}ú~(µãË騶îU5ûTú°it" 3Ôω;¬.sÍ ¾¤sÍ z&þšðøp‰îÖò­E ¹¨±@_ò²¾jÚØtú3Üš?ò!?ùᮿf¯('nY¡½ÏšW¯ 0!¡ªX'’‰IÛº`ÚgY¼DH;vBä6Ñ>%•RGN^9ïÜkñÙ|Kk=GÓY²)óÉŽúJ ÅP÷ˆËHÓ2U0Ñ›2‹Ç—!‡k–©3MR ÷Ü´?)?±"àd' ¨Võ¶Š?HkŽâN?Æñ­—ôÔ+æ)„9/Fñ-Z‰Ÿ:MÅ•õPÔ‘›ôÕx€Sÿš8SÇ<`—3t$à C2š•ú‹‘î¥m“ ­Bú³êó²žR6½ô"•ëÚÏÓEnÚV]nPëÞµÅÁÌÜæhNã'KiKm«’iªï]Ïo¤Rø¼_Ï,ÞzL@$(­»µk©~˜® %™© &冿'È<Ö~Á¤=§Õf¸¾°›òµ]¬ßË„jŽî/B,>–×—ù)ò(³Ù__‰CfŒU•ÄùiÅ¥¢Ü¡´Ä¬R'ƒÜsµ> –mc<wd‰Pxv¼Ý…è5ù.xu€ßuÈþ]Ù¡sïÎ÷­Ñ9 –<÷Ñšô«X\“øø¢«hÔméÞÝŬHŸcv> ÚZ&EIÓØPF…¸%1$pb1¯âpŸŒa3<\šK?=õભ² i±ŽÌÛ„"ƒá‘kW§ïHãåê +ŽS0!ÚpK~F )-ÑMsÈ»H!m¥/gcz½ á\8÷Ì~93\ L“&ðXÔF?0 °õsBÚÏÛvÆ¢?ûÇ -÷á÷Æ=~ÃGõ?C>„°âv2] hÞÁàHÇâ5wb ¾!±jÁ6ðÛï'O¿¶·ê.&{…„£Xã:tr(M¾wÇW{Ø»¯Y: AÑnï?©± Š–ÌnPýáúë#›ée¨þ€7YO ‹GµLšÍóJsÂèûà‚ÆÒx~¢•DSC)Óó³ÙC!Ý™’3zW#—46¼Ï„ßwš^²¿·b’y›¾Zšå0ø «ªˆA ½\nÁw°¨6¼ÿ$‡·ÉÚB5è9›#r%‹ÒÉßXâÑy° Œ3R˜OÔ·â´Þ Ûˆޘƻ> }7TüÅæMzþ„–ˆ.:/ÎÄáHÃɤ²FT:+ìœßEŸ‘ÛÜÈb¸º I Ϥ3IŽø•U­‰e#4m®þ>¸8Lqþ°­F]ÿˆäˆY–ñL†1¸`kÉècŠ£ðþY –¦rÂç·õÝÏaíÈqeÊoP “e©0ÚÜ%ò0v•W¿†«7½¾-3êt•AÏhÅQÅâÆé÷Qeùá)§Ê]=qÒš›>T®Ào¼q‡KG°íEB´~°IÛ‡öS‘îõèaJìaŽø¹,¼“Dš¡Lo ŠX×FÅ.¸€¯¬ÛtÈ`rõ[dN¬1¶úÄçFƒ$­¨»výujðYný«Zü"$¦¿PZÅ¡9äÝoÚq-ýUÝÀŒN"½ú?çV"uŠà?ªú²V¯÷ÜÌ6”‘¡êPöÈ9_ø1\}E#ùߊ$£X¬æi)u¦†ŒÇú·?è›o©ùI©ÀªêYšŽœ|•±& Îèö°êVVŠb"÷ÍBV‡ÈêgñÑ­Ú¤Qó]ÉÄW –âÕŸ!ò «Y3šz‘ŒÚlTJWL̵‰ê™Õx¦d°Ý¸OŠÉ£ÔÎ6›&tjÂs’~xñ9›l_ÔÙ½÷Tv$y±².ùÊß°r…pB¡‹ Þv]Ùx™t›ÑmäAÒ{ð$ë쉫µ‚\-h\¢BIŸ±ê‰Gêwln/i6éR9ÆÒ¦MYYïe„¶sÇ´N6*ö6w"Å9eM¹UAH6È$̨ìGÓB^F•Hk{ ©LïÑ tq Ÿ³ # å•lâø±Uí H)LŽ®!‚3ãçùñ“[§v2ë^^ê‡ £L›cîê%×2ª»„ßwÀH}у]ç}M'vȶÜ?,ò¼Í•²_`i‡â“#.£Lºt`.+©ÉŸhîw‡3´N†€¾„^c8ÀF±)î6”3£Ãn"S¢ëtlšº”´nIo V&J9û,ö[’¦ò±Çi»˜þ¨ÁØBÁ"Âú´5iè3±F¬Cü…`G×Xú݃ lý ÙÂúnƒ~›²R'³[EG Õ~\ÐØà*°J™AúâvØËàWos›·MWÑlã°p~Å-oóÎú4t†ÁdñóÂk93K÷rHÎ ÂFš©žŠTå§(*‰Úܵ‰8³h²<¢°Œ'8á«Ú¨‘!J¦'ê‚¢À¢‚Þ:’õRIŒ†i´á-¸‹I$ëîu†&±½Üö2©B§VK9ŸlH"› þs¶d"{_ |ŇXœ<Ñä.ÛEÎ$æu½”ÖÓ~Hýò ‹J‡“«ŽP.Øyôl4c>,,^ …Ÿv%ðhÆï :eü^JD V™²uÔwŠøy­TpÑ<³ïŸèñ†Ð‹úfdçQ| úÁd·x+z„<®°yô*ŸiÉúP2=->îZ|“_èýlÎUÚÏ5­Ú/($쑸ÿ”'ÊóéÁEg?Á>»8è:fÄxd‹T®îS Q™K¥Ûç8¶Wñò ©“€Õ¼è#4ßnÒ"Ù[Á3~¤YX¹™øõ"AïÁìö±¹>¿›e&Ék‹!ºôº3k6ÇC„×.™[¨†«‚í†Ò=Ò3$]·Ï4.Vå£IˆþŸ1ÜÝ‘Fãýé&]1Ûò(ÛAR?;îòB4ÿø¸ wÓ`¬‡L¢ž±Ê|ôÌ“æ è Ö›haè˜Ô«9“O³Vsý@©øe ýäe•jŒq5ÉÌ›~ØN;QõŠ®ê‹™{Í[)¶¤"ºÆƒYöƒ‹ü9…zú×ÏU¹-1w7büpCŽÜ[_{ñ(ÐöKœS¿ApÇf–µÐ|1ê‚—}ÿëòØüËÍ7qž´HŒ.¸m´`³_ØK]sñ¸’ª|=wŸŽÈJW„ø,`ë=S¹Ì=¢%2O@t=ì±cj£ŒWß5ZÝ*Ç [;z%ëKUƒL¿0ú¢ÄÕíôò7nŽÝ0#Ê"íÏ^¹|È‹ƒ¼ne½›À¿¾ÞEs¡úŒ‘eD›PwG÷EV ‡8V_½Ú”\ÑòÂMÍkVç`úÅEµÌ¶6U ç9ÂL7¨¶,¤’$—ö ŽÄÑ”Zµú.êýï Ù‚[ý[p`ÔÔ.ÕüÊâõá¨Rãyžæ0³Mw5ì¢J õú§?+øÃ ,ö"ðLG·±L=òH߆ð™Êôf *m ¦L}ž52«÷¡öc~ü„!dåÓYˆëï•Nš—•¼G÷‰c z9e·ÎŒb?›ö;ñmþx‹T®L Zõ%’D8þ#ËHb¢Fè*L¿1ù¤#¹xwøCUÕð(ÄçA ©BÙ´ È»Ÿ váàñ™Ôa#î4îŽòÃ?LÛŠ^» ¿ùÖ"‡M6¬ãÐéR 8xC¶®Ýew‡¹æp˜$ðyØ´÷“qpY.b8_Åû|iÍ"á4ýöq{ÙŒÀâ' ´m‡øc°! Y"ú+>e¼^r tŸd£¢<†îñœö¾¾É£_ÓPôÑfÂþ‚ê«K>ù̹ŸwzVÌTÃ’ÐïD£‚ü¾49³ [¥é§[e 9¾wfòŽ÷OÐB-öŽ"ç,L·`1ßió8‘ëÊ0ÒõÝIñØ7÷ˇ,’î×Vqn|¸éƒC|êy<Á ÐÊ&Çã>]rZnœ¨Cý\›WDÙušÖlW, O¹¤Ð“·EXv†¸[(=:…TÝFå ‹ñwN¤“ú¾aî8È.1èÁ—òÍ*wjŸK™έ\ÎsßÏ€îÈhnô>,è8ugð$ôPŠƒÅv­Ñ^Ú3o0nnÝ¿%§YÖ¦öás“ö£…÷+•Wª«~Lxw}ùW«™-Þ­ÚPª1tmH¡ƒèÕ/e† •ãD £lºOÃ÷ï4(V¬±6|?4²XÈ>ÄÅ´eû 'ÅëøýüŽÊHýóŒzñá6!gÍN’\PnLc³oÍóû§òÆãòÛàsŸçízà°eUŸ ªÂïp2(«µR®œ_ +“/â¯ä„¹§ê·­ø;òĺ‘^õúB^ø´#x)ФGÒ¾lö"Α~/¬SÁæÃë¾±ñoò箆 µhdà¢S9Ñ¡P Óîÿ©ÅÐæ{NC7MqaÈÐÄ:‰lËüì*òúKnëžøüX¬éÉù]ìÇŸ ÃÚ¨ˆ"Xä¨ÛþpâòãSâUÙ2͈Ìí¥SÎú-æ„´CðßÑ/¾sºf½#câî[&ò?=ntœé‰Åë™È¨p0$òñ [Äw'v` (< ¼/UÇgþšIžj¬ê$–lRyÏYË„ó%>GÈ›èQdm/à,‘åÈ¥&€6¿]5ê'ù¯íè¼÷¢Žµƒ5Í”˜N è¦?NôpIEޱ¢ú“È'Ôðhu‹Ò`-9góŽK¦Fý†©äx<÷§À˜8¼ QOe¸ÎÚ—Èõí®œêƒè¤-½QÉÝI‘Q¼žÍËQd±rÃiÔ©Uôø„>v=½1øIO‰Æ’w‹ÅÊÙ6бyÎòDçÖ'û ¡)P¹Ø6%¥L*¤†·V {y(4ù›0± ßÒ¢^†öT÷ÚS†‚k±&óâ4VÀý !>W}*t‰Ÿ61¦3…. ]3ôÀqMõ^ÅQ>WQÉÓt ZE;àXó--õ,õŲ%÷„½méß1“q˜“{òÂP÷ä$N¯ŸËP'ó=§Ä¬àƒœ^õYV¹Ù,4[ÛøHœ¡¦ðZýñ˜4å€À¹•Çð~ÖgœK* äoŸÉÕ†×q¬xûüHH·­1«8¤¨ÁÜϧTêÃqýéþˆï…’sfÖÚ2ãl¡[³ ŠZ”‰:Ð÷‹æÝ*¾^Ø s,A0èõ½”BÎ9BšäQbREqî[O4{$fØÆG¿NŽ×ÛÀ7Ïͱ`mïa.>2Œ92f+‰ãºkÎPQf«bÙxœ ù*‚¡ÆÇ:düå§ ÇpÉ"Í!"Ò¬i]–ÃéŽÖÇ /7Åf»ìN·ŸTØóUjðw íLz<Ù¾c#‚Í¢!C'ʶ#å´ Ì5ÆŽÂAvðñÊ“•½kùPJhí­‰‰Ð¯v`²ª/Ù“žVôÙÏò~ÒqþÎy•ݧu<£Y§bòÁýsq¼Š%rì?¨–9¿ìGÿÏøã•lþ" ñY~ðd%»M5”Ú†ˆ¸6uìõ*v@½Bw¼7ᜂ@@„*6êËÛ¯ œù÷AÏ¡Áj”çÑЮ2uIDO2ûôЇÒtÎø¬c#ŒU„ÝèxæˆÉŽcn+Âó3t$ŽÂX×Å|% D^ÎMT~€ùà@R¼¨X.¥nY¢~Ib«‰’¿јd~•â“Õ¨˜”[Ší'B'ÖÒP>,çØ9á;c¬} £g¡¹å¶É!÷È;Nf©Kލ(écÉýpFBXfß²ZO5“e^Ý×V5÷y!vWê^p+¼Þé|Ìlç+.…KÓøà2MÎß2Rüη U–dš¦ß.˜û³Ü»1H©•—‹Fà-ÔŽ ÓMBª!Š7|v#ƒ/ìŽÙËÇk2#­;§Kûû5Ý¡à}o˜c^,ÿTÏ)µ”­É^†ÑŠaðr@1á¹v?‹U±ë*5`ÜE¨€ÆÙÆó“˜òí2lS¦S zȌۼìBxø%]û²ð£zßO%n…3 ˆ‡¢µ Óuçe¢ãVžÞLä°– ›îŸÆIÉì‡8‹q#R† yeõ^2+zÊaxƒfr\þ[ûL?~ò²¨OgO¿Ô{™N°‹à—ìêªd½×ÖnÊòé‹ä¹8p²ØÞ*Z±A<ÒÁ¸°s¢›-eg°±w.‘rg%ößM?ƒ4•jI‡xḅŸçÏT1ôy§w¼:çæƒ" zʦ血ïÈäÒqR¨›.–ƒ8ŽÓÁ3®HÈŽíþcœuJƒŽ½ˆ/”ÇœáÇ¿\Üä"ݼ NÝN«M\¨\•’&•Qè…R.oE[<à{Ú &¿¦\H7(-]s+Æ]ÔûÖgGìhÙE±Û˜ ©\ç˜]t49K¿+RdQzh˜ºD9ŠB¨Y|O—wwRçNùþÛ—ñüc̓ĒHní+t3*Á<ûNÐgcA= Ïa`‡Tì 3ýÂmò ¦>CAm->†¨‘«_-8ÞÛuvå×rÓû‹²O•aÁl{òi*®î¿Æ—{kÙè†5¡n÷{Ÿ¥î÷ð.üðn®Þ¡Kôê~8ñÓÝ]gÿʱ Û–U-èÔ¡a²WÜ'¹ ½t†7~a•*JkHØümU+M—™hB“°Þ¯¸Z^aŽjŸù“D©ᧈŸ1Αõ\©>oÊñväýgH!­Á›£Ã{£„¦÷½®ÓkÙµnäÆÈ ^5”a¤f­æº¬KáŸ[Š.Ÿ‡dP¾r 7°äíù•¼)³!ºç)¬ãam|‘*ióU¿Uí,$Õ‚±Fº'Ê| ­&æT÷ƒËÉ´°)äu*ZrÜÞŠ¼8Q¹Õ¤ëïè{õµ)æ!!“7.¼´xet"žÈÄ% [dÕj»25¸aâühLÛÇsöïÚ=ëxÓQ:–ü€²P‹a·>^BØÒ6hµÎúë«àx…5ÎºŽªE2Q×&¯¶1˜rò®C ¨Ž€(€fFÒ#0ÑšªÊ,vÆÜÒsÏ_ÌüA€Ÿ9ƒ®‹­D>ç¥i¡N¬û@-þGÆwÙ0º¨“2uÑšb‹À_ˆ,!=ˆïåÛ⸤+„ç&“Ñ`o.Mr'„Oè9$àâ'éï‰î|8zͳö0º(C‘ ¥Þ †äåÔ bº<“NüØ`Ýgâ”ñÂ@Ì»£M×Ù‹^¶ä~cCƒ_<ÁIûþʹt%#jl8OL˜1m¯ Ú_žÙmüdr¹e¼xyïÂë {‘> éoPÅÀÀ›V; Sáƒþ¥ˆÛ/õBÕW |/mÿ' Õé™'ŠrMy ;²ÿ'} ‚ó –ÇžLS?ÁkHIiḠ]' Ô{ö ÅE/pËyÏ=ë—\¹‚å©Ð‚µËØõüºA J6Þö=ûMŽ‚#kwÍÒ„ûå˱e‘—(»ÐâJ:¼Õ&iiëoš‘²¿ÔN¼viY£ »Vbjœ»EÓ‘ˆvèµw?ðy³lM–¸¯^Ú¾UÆ:a²iå%d_¨@»”4dndR(ªÈ«5µ€jߟÖðJtäåwÝ÷”´/ô#Dz}8nqgW…ñiËãG(|Xº€næù7»^ï¥ä æû ‡Älqm÷ñ«’ŒÛKjËÈá6I@ŠjIŠ;â¾]µ¦ nêØBë OÌ ßa)Ö¸·;þˆû[69¹aÅ™]P[Õ#ú…ÀJm«° Þw¡lrÌ$Ÿqføˆdî7oýžL²¨³4B<ÞàL³Ýƒ’õáå0ο§•P·ŽÏH¶ÛóêMëÌÞ%÷#½A(¥M^lkF;Ëòçüz8àÐ5l:­ —ñv¢dóé°b> †ýBÒ4?¾ôá cÚ»ˆ¼bÓ2H»uœ,Çóð.;‡Qàxïã-³ œr£˜ ºä`!™÷´›Náñ]±ük¹ãÔ<´­ltõOÁ$Šu"#°ëeÌ;`¶¦õšÒ ¢Xj>>³Hã"[¥¶ÝÆ–æòÀ6UÕS ÃB‡vcœ;¡)ÜšõV%’‹æ’F÷<؃ïuŽm0R ð6_lÞSÛ(äFs£Ë¶ü/ µˆ¼Û*~ö¦]  FGù}£¨WåÛZ>!]R'zgYø 4y3þ¼1ŸÍ/˜90Õ!‚Rü¾Œày:3,Úv jD–9<ÿ¨÷)œÎS—{ˆožTC_ÂU4™èaÞÆF%yÔLQÿ"¢|! d’?¯¸ª~¡Žj[º¤ÉD@äyw}Ù·0Åð\ßQWËîÇ-©´“Ì_VÖ<h©ÓÚß 8ö÷øˆ…Ûò j¥¥xuùѬ¢¹,?riÆ{຅ù ¹H¿ùì-Úz McªaÛI9Æ©FCãÈÃæâçWÜ<éñ”‰|âû3Oî Õñä›BR'0+ûWj ÏgÎéN;}ï KAž²á”KK_ˆ:Q§C¥JAÁ;¬kíZoa”ÜXõ×Üúš¼nŠÆÈt*aÌ&”=^¡æ fŸð4Ò¿núÃÌĬ8›"jök~ƙ׬ h¥8ô¤:-¦>¼ÁLÊU 4ÚKV—ùÐE¬÷˜ø¦$wibÖ8/{]&~æ'’ä¸ÜEµì|µŒ4(j]q ðÑWäKå*’gFÆiq^ÀÃÖWmQcAõ’šãø¿[ü¨‘S!b—Ѹ3ë"Œq÷¥ü’Zîà6‰!9õl¿ÅàóÛ<âtF`VaJÕ¯äàöϾý¿yÕ#:®LåÑû¯•Þµ×jè0£ (vO4’"øøôh¨ÎÇ¡µÙµ²‡ßd*¤÷Ž—?0yûìî1ïöì½ÔeâS²œ˜¥HœB®KX ) +7Æ/g k2BíÕu®wHÍšv´Ê;žÍ…gy×fÞ­[q­ÜØåÀÍãµç• 6ž Bò*˜Zé,·‚®1Ã|||YUN™ÒYÉÙxÆP¾s˜ªî ý÷Ðà×¾Ýõdrk`œëP öRÅè–öÐ’^Kº´›œ½ÅlÞ| |âåäXdEcUý0´.ª'Ý^{åaþøïaäUïwg8P£eÐ?Å‚=ߤYiìå£ ƒæAìc iIé)HZÿdü#Ç,Û#4®ÈQóCg=AH+õ¼Ùß…ºœyUó"ƒúÊL4´ß»1ÕýºnwUžE%UX3 l%’¹àžªóbk´ñ Š%€«îªyàZzL¥ Õ10–€µT ®dË×PÛ/=Æ…ØW'³±¹ÖÓ²^9¢3ó!ÿ¾`ÜŽO£Y¦“/bØ–S:Œ·H= &f¤Ì:™nõ*[æ#Ý»¡iQJ_S 1´‘eê5oI?d£w3{Èþ§Y>óXÝWóðò¤ÈÑʽ<¬ ÍIDÍ Ž?Åo³”á3÷l~rÏ™ö¸´€É¬œ«…1ü’•õ›{†ý¼h'„TÏÎÒIÏuÉ:b¥žtŽÛz¬á¥&æ<¹¬mÐâÌ|»ãCqÜ€âîެ€ËÊM¢‘WÁ¯|¯­€º÷ר¸£ïmø^a˜KÃ¥ño Oe‡}û³¢zÖ20 w¶£VÚÔ­ùRîawƒÄ"W bÿ^&ÇSÓY×vÅ ´ m@íùUrçI®ýëÙ™•á™ï…°øi£Å¹þv0„QÞ}__s‡§d),Û6^ßX™. ¶ñb–ÅA×anmþé1F­¸Á+DÑp¡·ã–ýÌyAr’­ü!úpE€ÖI¥ÜàÖ¨×á@ægqó(ÖJZk:õ¿!æ´PP_êäT/êû‡ªë…cj¬€=•LJ²hÖaüóøU~üG2ð$ÀÎݶr±hÏi†ÿw:Bl®['ºÙÒEDØë4ƒhla¡Nþ@Ã|Ô+þ¾‹Ágž¡É?#tÖ~0(Àˆ×ï2°ÂGÇ::H@O¹¶åÈêÀL¢L¥QwiþýdJnú(®H9g¸Wß±â=tìCOŸww2™]+µbë“gFs ¼'Þ(÷»ñ¯«dÀííjâ™®­¤9PUg‚åÔÖ@¦,ÕïsñÄ“9æÑ ®ÖeY!eé5yb3ÈLjj®©¬œŒLd.‚9«ÓšIÝ‚å.`ƒ¦ep›Ò•Ü8é?œ—oÿ`‰½¬‚¤wˆÐóK¸á§a.ýO9…“&c–B1ÛÂÿdg´óKê´fÂϼЭӥN½º0ìÁ“ÁTu«3P÷­­oÕ¶±îë”[ ¼×HI8†ö%Srävö¤dyÏ‚ÿ`æZ!ˆº ÅÅ ;ßçsÈ)¬ 2ÌÙâÙÁûäúæös'é9é¦#>Ë—žŠé?ÛV=|à(c …¼òº5(søºw%XMËsbVÀI‚ô ¢Ðú»$¸WÏóοG³§xàá? ‘_AÃ8ë¬ùÃü‹0¿I˜0*éÌðEr­U«¬4µGx@ñü¢{”Ìã·Tä]YÝæœœ/b÷ò:˺æù¯de¬½oRa?ûÓtæ+xÌ[æîÀäƒ"×:/ìA/ê7΄v|ûà‘¥Õ ü-‰7ƒž,±–Yñ“uñ·¦¨í1‘«m)È_…M¤cØc°@_Ü6Àr,uÙÓ0êO&,tZ8W÷Ó½=1&ù+ón ž™f|r â~z”ƒR¸=ÑaÂbáR¶©¶æxÍæŽååïn úòzõjª´Û^±;ýϋɱ—O Ú S^I°³e~¬¬ÿ±rÞ\ï¶OËî‘*ý¤\&Æ?Ù‚½Tê̇ó#š¿|+:¨µµÖóжN3ŠÿYƒîѪc]®XÔ•EФ¤âû0ðcð5R€=Œ_fð°þáà縑s{(ÜŸ ×Uea7*üþǨ¨1Dþ` ûôº«ý„ËúÎñCáA¾W¹“9Ž„ñä– ÓÑŸ> endobj 1304 0 obj << /Length1 1743 /Length2 11330 /Length3 0 /Length 12437 /Filter /FlateDecode >> stream xÚ·uTœ[òŠ[Á%Xãî®Áƒ»[°kÜ îÜÝ‚»{‚kpww<î™›™ß{¼Õku»jWÕ©sjŸõ5‰¢ ƒ° Ø(¶qd`adæˆÊ‰hªJ±0˜™Ù™™Y‘((TAŽVÀ?$ u ½lÃû_Q{ ¡ã›MÌÐñ*¶H;YXØ,œ¼,\¼ÌÌVffžÿÁö¼1Cg @Ž ¶: Qˆ‚mÝìAfæŽo•þó 6¦°ððpÑÿ¶ÚƒŒ mr†Žæ@뷊ƆV°1èèö?)¨ùÍmy™˜\\\ ­Áöf‚4ô£9@è´wšþj oh ü§9F$ €ª9Èá_.°©£‹¡=ðf°mÞ‚œlL€ö€·ú)Y€‚-Ðæ_dÙèÿÞ #Ë?éþýW"ÍßÁ†ÆÆ`k[C7Àd(HÈ2:º:Ò mLþ"Z9€ßâ AV†Fo„¿oV¾õøïŒíA¶ŽŒ «¿ºdú+ÍÛF‹Û˜ˆ‚­­6ŽH­O d4~Ûy7¦ŽØÒìbãñ›‚lLLÿjÅÄÉ–IÍdç”û7ëÍ„ôÇftp033sq±€v «±9Ó_ETÝl;ÿ6¿õáåa ¶˜¾µô™ß~< G{' —Ç;þ!±°L@ÆŽ# ÈéOö73Ðô_øm ìA®æ·!d0ÿõùçIïmÎLÀ6Vnè4“––”¨º$Ý?Mÿã»<Xy ¬ÌV.v;Àë3ý³ÿéÿo«¢!èßëû¯ŒR6¦`Ï¿ÚxÛ¿ÿ´âüïù þ·|hÿ[Aü6×@õè2s0¿}±üÿÃß!ÿ_ø+Ëÿüß5I8YYýÍ þåÿÅ0´Y¹ý›ó6ÙNŽo*‘¿iÅæÿR5€ÿ·ØÊäÿú¤ ß´"lcö6ï ,ìŒÌìÿ²ƒ$@®@E£±ù¿æé?ÇñVÁ dT;€þºÞ¢˜™ÿïM‚Æ–o·ŒÃÛ¡ýí¾)ìëŠÛƒMþ’"+'ÀÐÞÞÐ émÞÀƒåM³&@׿ÇÀÄhv| ¼uè0Û#ýu´œ&á¿LÿB\&Ñ?ˆÀ$öñ˜ÄÿAoóÃôùb0IýAœ&Ù?è-§Üô–SþzË©ðâf0)þA¬&å?è­‚ÊÄ`RýƒÞ*hüAo4ÿAÃ?è­žñ?ˆãi ¶zÛúÿXXÞDÈü/ø¶; ?ðMuLÿEfyëÓñ¿à[:ç¿áÿœ±“½ýÛeö·˜ÞŽï?øï›t#-Îù,jÚî«…ñ]v~²²#\†]#hl‹ã9ï)ù‰ò?\±å…/wÍì†?¬£±¿6Zjb3[ê¯y¦„ób/ÖµÁšmÑ{N  <9È:±îÊtvj°Ù˜˜aŸ5)¹\ MÓàÐÛ]ì̦|æ§lª¼«0?ƒ§j8f|õ32—››í=T@»pz{¥HðôL‡¹Ã¥ÐÏ“8B‰ƒ‡”þQVŽÍ¥RzHÐF þá!²­Ìuú¡`ò~çGƒ À4Åv8îS µßu[€/µ‘ØbB…Ì~êÂÓ öåBŠôØçú\¯/AŽ< F,ò{|öR `t dÜÍ%eìÔ÷­vzÈÏ5õ•uqYpÏÞ S¤1Û’ø‰êŽD\/¾F½/œj94¬˜Éœ0v‡ë  w*ÿGj¶ÄczÜ÷ï~”n.Zô{–^Ñá–ûW™·kºû…n&®Ü°~G{öÈn÷À0Æ'ï¶ÏD‡I¬˜È²Udܦh ÐÛmA‹ùEWG#„ ?F×°Ï'c&3…DŒí9©&ÿMflñYb.Gnb:¼+ Rú.ä𬹟‘xÁû½ÛêïrŒÃí`Ÿ[cÚ¸¶8Ìè!ƒÅ»Ì¯³¯¸ö .Äu?„ÎvDTªö0ö=×Þá#!·Jÿ˜1 L«BTó¹Ë²l·ØA‚ó=ǘ‹(ò™S=D­íb²‘k—’Ö{:ñ A¶îrN97ýúx¹YÄ ¢ÂêOþ>ÇäÀH"@·§†ˆó¥zoì GTbù.ßAç+§èXÓªÇ*Aeý!+rì s~ãWfds^/`Á)`6¡‚:?Â{LOÓ–¾¬´míAôH¢ó]ºFÅJæB/Ì`µ.³ô:ýú!ô…Iܾ óé­ã«Z÷HôƒtqŽÞT§ŒxõgBóˆéß/ø" âüд™¼ÊÁ é C¿¡!pp;­·ÑÒ…‹~M«t‹¹@wÑ“¥õº‹Lºq¡TÑž0ï0iI_5¿×2á“I‰¿ZIÍòµ O´ØPàæŸ`«e¾¬$¿sfŠÉKÀ–®BÊ8\AÄv1c¤kVÕ+NŒìšo1ãlƒçŒ°OzÊpêuv$xH÷OèXM®Ö‘óM€ Œ¸k›ÜÖƒ|Ò‹ç1¥K|O¤*Ú(Ù*ƒ©lø'â@ˆš*:˜ó–䙿ˆ.c— §ZΡj·ëÙ%žx~}¨Bëí]”‡-¾=³Ÿ©=×ò}0ï øtÔzŠwX£c‹…wžÛ=´6ÀW|sÑÔ™ø]µ±ÈÉev~îUóƒ_§¹†Ûöt¼ÓûeÁzþ‹Ð­BÓ;J§ÄþÑ Æ-õ l-Ì‚Òλ ‹¶/¶&llÍöóT„µÔ¼u©<é^*q!½% ößk_Wus5|Aè4š…S·á³ª"ÐHnXqª¸I".m= »Ù&‡Å\IRXf. *€½—Q€©¹ã;SeM®µA×!zhÃÉÚ¢‚8‚èäê mI•ôâÑS“Ø`ƒ ÓGÛª¹ò´äÇÀ §µÍ’@çÖÓqr¡êß§ðÂBzÀ™RÕ¨m%Z%VXxŒV^ûã.¡´5.æ­Lª’1$}`<‚’^úÙ°Bù¥rfwˆÆÕ?Rà”Ö 1=Èݶ„ܵ `TXö õ{¶)Ĥ=x b½wJªÔèÓØŒ†R«$6W>¹5© _XÁçÊÍ€WÝc¦2ö\òij{'ª ìKq¸€%Š~­™ŽxTªþø‚ŽaX´òÚë á)ü1ÛÖ˜R}’=0lé{®A$ï™”‚ëtLgZÂ^¿PUÓkŠÀô‹zsÉZ“&­Kƒ[aͳ7¼\7o‘ãdd±4\ÑÑüpØY·E{8æ0û:âèâ™›´ü±Ôa2â…oÕ^ºãÌ»ehÕÆVǯ< ¼)ã£kšì*l.Í è ¹i U µ)a,1Œa<ÙÆš¬Sé4«‹†f—WŒâdŽbY¯Æ-2¢& EªÂâ õhäF'|bMÓüt®y<Þ`l\BÅx@×Y8g3£uÆ…Î×s’ÉÐÈböw:Ï2ü’2u¥À‰¤h§¢.ww$æ°‹Ù1 ¾ËgFÑ6SŸž€¤ù\@I}‰ÓzeÀ·Yç0gÓ»bð*AöܽNòÃ{ªSŒß9ýÑKk¤,}Ú^£„wD"öAñhЏÎXêâöM5$;uÏ9×¹ŽŸúE;k’‹¹¡î‘é‘–áOdD~RywUÀ'´2Š™¥n™©Kµ‘®cBÑ4š̙÷rF†CÜŸ>Γ´ Ê-”äQÝîf6…•8§È¼¢ ½‰yfU;b>È**ÐØOUGp «íg,Sñm¼¶Ä`O­¨¶¤aÁ\³kˬ6@"‚Ô¥ÄÖåÇ¥324rÄ3Ælñú¹YlÓÆø;¦:%”Y]q8Õ+Ò­¤$ïMô9S·¢ò#T221 #Š-³sCØÃó¹Ê•Zï%,ÛÝxž|¾TÔ¶[‰I¯m>G[®n×ÁÝŽÓŸá ³œRÞH‰Š gçµ6…ê:~Ä¥ûÓ¦:#™Ê)Ý#( —ŸëqY7Êâ‹åªˆ¯Ç<-OÔd·Ž¨f®ò‚?4&ÛՓ›=7D›…•­¤o^;¨ÛµwWllF3ðKI®—%—Ä2ÕQpFà„bméÐ+g dVƒk¿;mP&>4m%V*±ogÈ("ê—D/ÏïᱪÙϾäã2pvKÝé%dƒ'ï]@««2tÜ™•käˆKÄZ·¬òÅ.…Ò¿¼Gúg•›dk“k!M—;ã¶tT Ãi=ö ï{G¬ôá[b†Áä¹ûJT=ã'I¿‘îtnY‹•¬ìY,†¥…?Íl󨤳ýÚȿ֎\¡®Àÿ”äHÙÌ”™ž\“uª£Ÿ§Õà„A{›Û[RS„Þ¦DEŽ+Mæð!~·ËÊøŠ›£°ú,„-~DÍJ×ýŠÿ‰Û† Ó:s^¢çÔMdÿ§¢;5«¤D{í~)ê¢>©n–Ñ•aãÆÇ‰Ï¥XGù€VúôŒ¤2¸“6êäËŸò‰N•I[Æ]˜²¤+›Á¤©e‡Ô¿¬pÅEpà8Üíûa-ŸtF,&î`¶¦¼j¦~Ù© Š‚­ŸRá(¹pƒŠž~Mó7ÕÌ{’ˆ“ª]•ÛiCb!BbÈÈã-‘{­¶ Tóµ$XÄ“®0(}Otržj%’ÁÙÔûh«N>YxM3,CµµZVÅ„À[Þ'ϲªø–qÀT0z&l䯥ô4¿÷™ê‰LÐë\ €ÎTRåÀ¬«Žù·Éå z¯Mâ ]È]޷ɪcÚ@ Q¯cJg¶tƒ›ãXA!â<6«›íޝDÒñÈ×È*8xÄN )[ÕEºS^Wåˆöaýt3Ä)ƒÃqÄ5.~©Zűºßê³.7m O<Ñ+Üþåbn(óÝ}le…ÞNäÛ(¥1’®¹kìpõ§5ö±3:Ê~k…‘%b›ø$º?Û· ?AÞ;·þËq!ž­y/WŠŠA.µ`êdkª•³z<¿9‡‡xù§ }™¨™ê]p,aòèt«ãûJ¢Ð¶#ä:ªæ+õù¾‰î”W4Ê¿:©—b!Ôwœ‹uYMñgõÍøã97[ri`äEÆŠ'•ÕH_ŒvÇšéã«»aQWcâÔ\Úv~÷v’Ä„ž˜ô«Mw¶ÛàX(Z÷útŠ£¤q|+BÐŒÿ¦H"`€úŽW;7ùݲH«ŠÖÒ ž¨Ôõد¸v³˜ œàa€ƒfÇÓÏ{{AŠ,néêm§91o.÷ô¢‹_$1qvi™Ú›Õ„×uî!#«…âîýaÊV;ŸÛkŽ›¿ÈꣿÌ/ P~š‰7`Àã=žÀ¼F[·ßh­+›výrvd©›Ü¢oY渦V≘/“QçEY¡u 4JÑÈÔVvëIÏzÓMÂìQ°èºóc3q":GÇMJ£_E’ŽD®Ùtš@ ‰ä_nÙmK©ÕúÆ]â_ Ðq0â¢#[‰Ê„ŶÑØh÷ÝþîÚ8zG”+\“.YÐÄ&‡ûuלæ üp¨m ?]²Ï cWM|'×£êøQ­J+«ø±Mý0:di©*Ui].ÖmôbµÝí™WçˆøÀ´øz2ëmد8Û¦ ^9JŸKEΡ¸bX£î¢œ!Ljå|î>§¼ý‘À¦ìÂP¡`¶¬íÄMI¯\xBÑymßê`©Ç‡l¬ÿÐRàkŒÏþÄÚ$—dêuy¤ÇìL-OÈû²¢i^Ø–¬ƒ0,âé 3dÅîÊ^à‰a> ²‡Î6wÌI‹Þ¼‰ã>jß¼P§²U±q·4åÄ)øòdR!˜…ÑýªèÙt´³È"ì#<1EÖ—%êaÎH8í‡CÝ„¥X#)DiÞw*Édø¾ëÃ/”%ì”Ïþ9ŽçãµìëòöƒÞÂU­ë‡¼(B‰®›! a!öËé8<µóiá¤ñ6쑟«öLŒfEXýRÁé ,^Å™‰T’kovÚ>ø ÿ5ÙÂ|ÎÐë² Oh¾g¬6§Cy:{'7›Ív ˜U–'TˆÄ¹÷4Võì“tÈä»+ø ¿±2‚?¸ú)"OÞr]£ì'z¹ ä§½ôøY=q¦|Î%¼Z[ŠM8§Qc`Yò…ÿD%̹šôœVò—¡öÛëkcÙçÍ.Ñuy˜ÊâÖ€‚ÞÓÿ@»”$«T+GÍ+1j\¶€8­IÌPj•ñ5ÐhLz«Qd•¼”>òÕÙ~åûóççTIŒP#t¡,zyF UHòob•µYÉ8ûßâfù›¥QŽGЇµÈ!*h”1=1'!,ýï(é~6”‰_:'ö¡±q¡•+/-²ŽÑHŽ›teY¹H™q³RË@ÈãÌk¼‚6û-§)ê}w…ùSé&Û¾ú5wzSzUOM|o©½?Ãø~BËÊfbfoCac*”Bâê…hZkQL>¢«f‡„õ^yª±¹«ìSuéßÖÐbX°lBAÅûDòC–$­öGw2¤=ú%…;xГ6C:ª–}™kH’“AモÕˆhö¢¦úhà#Ý+Wm)6W7×èŠ÷éÐ3_ÓNãÚª ÂHcV½ùšãN¦VÝH0 ­¿±ÖTk‹¼.ð Ýòt?kÇñ*£3`Á±Q)«j3[xÈÖßRÿãKª×ê‡VëôhH3YòÁo¿ÅãÔæfªóTÛäÇ(‹j$w*[mjí#P ˆ¸ôX’¦M.50HÞAìú¹—Çíb®ø¹ãq{\zÏ[¤z麇—¶f¨Ñ†ÿüs.µù$þAkÒ!žŽf¬ÔœÐ°).S©UÆW|•$º‘HÀþQ¥ÐvÀ#«}@QFP•ÒuùàQiR´}@5u1 Gt,µõÄËÀû5Œ rOüŠÝ ^æ;cé‡Ïz»BLÅZ ‚×Vö»Ë2™ºxß5Âó‡“b1r‡ìøð³ÝÙCWr©±:.ÁNU+çþBû]%¥¯âçµsÏ«TÀg™üÚ—A$œ r„VÛQ¡ßqÛ„BOë®H{ÝôèAœö‡ŠÔñ¸*íìd…Ìy ?¸ùÑêñ½DY}…áyç§[Naq‚E+›²2õŠŠÙ°KË 6Blí¾y~ ¨SÚ43iœÊ¿lËû€xjã{èE#/ q£L#æªy_üJd@ý)A§#ßSwy!sß €Í憥,úe1y¢ZhãóZ6“¸òpªa„ßû-¼ò‘åRŒ9Qzñ¢æJ±|ÑúüF6TT¼UrâßEAzǦ‚x@éÅ‚öð­B»û¸ÙலÒý«¥yÛîpTòK¼+ Ñ?cË„×õfi9 p ÀÁÁhŠ®]¨5ݼ¬Æi‡ë(ðÃSÏi›¿°‡ŒvøEwTÀ <›ØÒ;P“ëKQ“O±).ÇC(£2üñ^i ºÌ&Ÿõ{$«dÛPýài>FÒÃÈMNÙ²ngÌKòC;IiÉ®Šdê´=oýïžêR‹e_Ó=Íäß×”7”8w£*§æ©$DÖÏïñ«Ðàk}Û:%µ÷i,±úîTɝޗ’‰‡•yú/Œ1rBÑj·5©ƒ]®àüªýèC|«®|é?œ•[ Ø'±$»÷Ñü~„5æçFr‡1³Žƒq TüéGô‡F“u~Mh{½ãtÇžâ5ªÌ µ}C×—É]Ä)˜GŽù‘®¯Å-C ÙˆŸXÊ» ‚†Dïú®õò)oˆûZÓS+Sq.}YóN7[¿Ó¾¤³€tü~Oö…nÅ&c!åjpŽ"’V¢[&Kô°æ2ØÉ¡ÕI/àYDÇþ3TÁð`{ÃL< Xin¡6‚OÓ7•Äš•ĺ]¤Ð¾zÅ;ßµó.¶ ßÇ *^bd¡O ¢6á°k¼ZnŽaÏ|Ö˜?Ý0=1+}™ªï›1¶¤-”Â:Ô60ÛÆéT°EòE¡Â”¨­6~„¿¡9‚`™ß™´kñ’÷ðŽ›UgG5ùDg®ôuK‰¾ÜØçéês¬„NÞšÂà*YlŒf¨Z˜lŒ ®è¾<5⬪läÑLjºÊ˜†¦.%Öàm­ÇlÐk_s ‹—\ãgöÇIŃ!ìEÖÑ ´Â…µB«.œá¶s²WÕ#?Q8ïòs¾| OFuÈa®ñDúí Ð_êêw;’lðÒ5¢Šù >÷>ÔfS±æPSKŸ9Ä,,0b!hLÕDß!’¸ºÏíý\ñ,çµú¦PñùyÊOŠ©¿Ôö7©~¨ðÏ{F§WºôzµÍé§-õªçì·œH”$Þ+Š/yIòê­ncmÈMð?B:ê4¶qå!Ö~¾Õö™.“‚ªªÌD48ììd*)~}ÊoöË'T7P]W¡v/ØYì#UF&Ê~K¡ Údçv {{Sò´OyöhÓü¦ôŸG‹Ÿ™aÛσ܇¿–t™ñÍæ¬H $Àì—Òh]*yé²ÍÎ.4çà–Î=è:žï½L5ç"Äoµx£½:c<^n¹t°‡$uݚȄ‰B@öTBK›ól‚Ê:Òž V9wÀÓÔˆØ*p#ÏjNGašªŒÑèY¥81/‹VKæÍ=Á—7#³yÞ#¦/Ÿp¿¥žÓÖ;¬Ç2›4ÚwW ô'qÔ•m?sާȼ{Íôé:)7ùæÄtxA9J­ ©GÚCýÁϪ.¤´•6ÄÉ{F¿¨ŸžŸI‚<“=¢ÙRcóÃFTVô¹¸’ªgy¢åPË»úeë¡GGˆ‡P3´ûö—U$þðú]@ ÷Xìk ÎQ4ü¢{{ƒ¢»ÏàëN>ä~ÑXaÛ0Ä`o¼K}±÷ŽA$‰ÇKÊÔ'ÉÖÛë–ç«ÿkv^®ÃNÔ ×ÔIÓ¾ÈгA Â{µ¨ÅZPwtœº>"bP„ù«ê|ˆ’zo! …]P¬˜ôÚ°²…Uㆸ(6Ù%pVUýu†… @Ÿ`Êd§ã>j\œxlTe "»;J0vBù`.‹0•=¿ú1!7l€þb˜N›¤3rˆ«èJÓÿèq‚i/J\%îgF§<æ>†.iÀ°9]´y¼VŒñ© FʺŸ»X)½!0"4« Çõàd·cئãŸpïѦ̦ȌWæÀ™^Ç^¦TTRêeáû9°¦­dï)\Ê¥ {– FªÁ·«õ¤œ¯({ÎÞÈO°`jJŸŒQÁ›¸žN6ψ£à•Ry…¼ß£Â—¶SÐn†ÃO¿xxjuˆžA…ü.µ]쨉¾tÐÂàáѽ'œGh‡þÖ5¼hš½úØ3èÓk ˆSÔi¬±‰U ÃIáôÚcDdEöý‚Mð‹=Â7­Ž,¦sìÁáz#¸÷dêÒ¹öªë£=_f/Ø8ðwvµúNÚ%÷l²½¡õ÷ÓF>4”uédt¾“Oñ×"Y~›Rs°X¾™Ç8Êu¾(éýeMÜ©·þH¢Çh8ÜÇ}¢-;é7ƒÂø‡G(×'@ÜpS_À& Œ‡3¿#%åÏ)ê²èÿÉ&·nölð 6è×e ‡éòZج·Ρp‡¨Md³ÕwBÒ§&2Àƒ#áˆÊzlu=äÚâawš]T6kšê‰$âá)§fnÒÖæ_C—LòædñL÷øÄ„gÒ†_ cÆøx7ü=Ø›ÁÈRuŽ–xçn}óí>¶V1ÌåE5˜vgðÓe㘎΀£î+j©Â3|ûÏkýÉi§…’ùã +‘†D΃ú«BÑb+yÍÉjÌWÕ×Ôñ~¾àZh ’KF¤sÂ…)ö 3ÙûË­uÀc€ÉŽ=ž«¢Tb€<[õÒ3Y¢,bO­àT$àÆ‰™©æÀ+­Ÿ‹Óæ€×+oã:úñÂ}GúYc8ñXp–hÜXí´=%Ì‚ ¾ÙçõÞÆª& 5Éý¬€Xæ‹3TèJŽÿs ý+mi ÂW¥[”QÌÒ.JÆþIÇÇÊ!Ö²b0 Æ™ êÝf–ò)ÝS&-Cê¯5Û)Wœ‹t—ÝoŽ‹ô½ž(W—¸jÅ´7ÂKìóL¤X·½!936½žfDI¡œÇšv†QÑŸzì씚9÷“º^ø†ÙmWƒ?«õ“äÙæýCLÔÁ­l™òNH„{]Âßàý¹-ÜŠ‘MÑø  ~ü5ª([ÃWüpVx› ^à¿l¯¦¬s°b.iM…ÒÚž°–šX§v% ƒ—\ïE™8Qé)“™©áç¿Òþå'ìûin þõñJ’(xËTáÜÚÝå¹zçýYȯGòè þz¤ï ³Ud?89Ü&ñ²ò¨"œkô¿â+âPse ·`ÛË>rÈòÞ'©m,\š|Úpc=zY¹´¾´÷áÅöOÉÉ3‰tâJÍ×íu¤¿ŠåoËDºq†½> â«hÄ‘Ô+ Óïœ&ðŽÀ ¹r õ[ÊÉrGŽO¡âB…ñ†j–(bÙˆŸ=mucß&ú0ßÝþL Ø½Éä*‚H• =Œà*Å+ÕØÉÂ4%»üql¹  ×®Õ”›OKý$³I©)³Ÿšp”fhù!Kr+yÞ*ˆšù>cç|ÈÏ`o1íÅ3‘ƒ„rUÇå(uMÁׯs¦¨@z%¶C¹úîºWÉ´µüðl«á0–"\gG—͗⵪üÕîð¿B½%–p}յǦZ|Z+ÂÊgßE^ƒ´pÈCÄ艌«”jÔ­Ï¿µÅÂX3 AŸðZ¹ŽôQ5'•Y-@U Á KÇVƒ8‹‘çMr†¿ÞñhÈPB·ô!ˆÄJ}º0Ö&«{=³<9\É{v+ô4=mö•OÔ4ôé{®ÐjyÊSJµåšô–ÇFÙ’S»sºq%¿sbp2ÈD@Ø „J­ý8LðTvÔõÛgŸ½Ô®ÌI§dÉdΧpB\þ閼ƌÒ+ÍI½»éJô»PšOÄ¡@~4>{SÒ"Ô3ijåä “wBäƒB;Âp÷ò*#ÊSìSh‡\¤Š °x_u:$©¢†™lξ®‹ YçuÂ0”"BB®C•/¯ŠÁJÙW PbŠ’œ¸ óí™OPZâñckß *îg1—eß\׃I¢Š"ëžÎ½©6¸‰ñªå¨jwÑ̦e2%ã¾`{Í(õe†05÷æTK<ß„áú(e‰ŠœìsXðW1Ì[6»aç—ø˜÷»Ì?©a¼7£ÖaçÆ$”G'üŽÙAº±eüš»Uɰ¤‚Ö}XÄ[¿/:»¸sÝÛÅ2ìù°•ýS"ÿ;ú€eņIrJÐóc©â¹ÄˆÚS¥éXU|Nó;Vô[(Øñ&3r×ú¶ÊíX`¿[1u‡16ŸDÂ÷¯ãŒ,_úlFJ5.»YK¼YQúÉôÈ Ý¬9®“¢ÑÅÓ®9 µË&‰K=§÷é‘Mh0–¶ðV ûô€ŸŒFNHɘ•bЦkßÍñÑ+6‹íßa µ²)´œpmá|{®P'ò¬í±ƒzk‰ýʱÜÍË»z‡á'>*,“>Œ) £K5Y8³ÖóF1Õ­øR(6qIo'uv0ë@àÈÆž›;{ì%©ÀVçf&àe·óµ•xïRŽ_ëÔö±á>ÀËSèõKÏò“€ ~X@=}  ÇÉG³"ÿã9ù™®â &/ÓšÄ;ï(Ê»Z×´hÚø‡—·Æ-[¯XŽñ,ÉgÎärC)wvÈ*§‚>­Ç×kcí~h½ ‘ª¾¡Ú^AüÓì¹”_~ʤµ’@˜´:ÊžÕÜ ( ð…·þ £¾ý ù=wl|S\¸îî–¬¿zHÙâM1ý@Èð ãH¼Ü Cç|‰n´¦Ui0Ðk×î{G2¡YÞ4~u4Í‘” O¾þÉD×v^!P:zA¥)ƒÔäÙzŸVøF"?ØP¬ˆ-·º6W¡ãsøÌâúP“F6„£îk-ÖƒZòô®€‰†6Ç•#ˆU Kü ŽKmeÚórdùΊð%¼7˜¬¯òÝTñX“Èi"†eN9ôàL*G¨d´âˆtf‚¿¤4*ƒó„8%YËJdt9¼åvœŽ›:L; 5ºÀ7y’žLøÓ¨ÑGVw–ïZÂßl<„ 焟¯òrÈurjõÛs\%óG— Ä¢V¼™+mñ%7$æ0œxtÆ?xùgÙµPA,}€|çÖ)o̯Æ?aƒ|›€…«£/4¤;ΙÔ;¢ñ4Žðõжýz]×¥sæ“¿pëÌ9Ç.…9œVæÅvçÚPªüîÝ$W<(êÊõàA–+/\ן}•IdLjÒy‰™+‘5OðD’εü8–²ÈöŠ>P¶ûZÜ^â¿h¢ºäQ1Í¿ÔbŸüp+“*#„N»Ð^PH£¦ºBçæ[,õOÀacÒþìí4‡iËŠRSz“/‡ÃMó—~@¤E‘aÕ¬HÙ~{m“IÎ!7J5æË½æ;wy¢(F²#Ýö)oÚ„Ù!ŒîôFÃ{5Oq µLYÀr7úïÌF¯ªÀQü">y9¶ÊGáù¼ir™ß.Ö÷°ÙJýÜò½N,ü´d²eŸx%Ùå㼋ÑP7å]s¢¨«$Ùîë¤_³W=Ø·…ª”y—S×0R£‹ÒõLõ g†çyǦHPGOàø±ß=âR̲Di¯Ê/6&¥‘”¯ 0S…{¡—e£{éN ,wC…zh\ ê¹À…ÂKl{‡ ößÍoÑF»7Òò¸ôpÆbÑØ—0žx!EãB£Î6`ó\±Q¦Øñ®Ë@˜áe·Y„šBžKlȇOJ м6Ǥ#ªà׎ð6_4/sõS ()Þ[·1^¡“K"1„ðëˆÚ5 ¡#ñí ±Xëú™\gPêvU] œMd¦e4 Qå W¹ò0öìP)šÀî£~ýyèž‹7¸I-l. ' *ñ%²À+X®³”[ÞÊÔBX« V¡r ¹Ò8oÇòZ³ûe.ÐP•³¦=í=üˇš¤<‰à[ŒÁ¨bv9ÀB·+ ‘£w6æú~üÝÁ3 °™8¦‹íÇ•¯³\Õ˜Gí¤âmb©y–'—è“üóý]ÇZ¦å®¯b‘^"ÙÔÐÇn•K)87CjÎr£`Šh'þÙêÏ"I÷ع÷Ñh¨ª8äñ4ãuW3hè9á_^xÇ—C‚—V§¹`ªbƒ£dn_1¼5œô—=É» [ߥ1ä}‡b>` û[šm£ðÕÏŒÑQ¿é„nT3Ép v |`t”†€ŒÆ…>Ãga ¼GÍtEd5Lɇ!P¬ï’&>ùAÒ$‰¼ðZ“2³„¯ïi7•K °LžŠ²^U/rÚ¿…U¨7Íë­Flz±GŒ¤ãå‘d” ?ïñ$w†•ŒÔ¦pš{ç´Sþ%8šq¼Õ$;eKv´!7•»7GÒ²/DÒÚD‡ÍïÍ€áó‹nÕ|ö1}¡ÀdÎ=ÁÆ"2Ì‚ËÖ¡ë¢Å¡Ó=GʱȞ„ÚùiÜ…FJŠt!¢ãTN ‚®Ìv«” W[çV}DIB»sŒ™Áãe6FE¨Z¡K>W DéÈóîˆZ#†¥S* —ïùD5ÝÇíÜh† Š÷Qùl[ÕÕç\ÜOŸ^‚ÌÐù>F«-¦í­Xnô”Àwhb¨(*,É쳨 gÄ®)¡Ð©àÀ”8u›¬Ô«êf“@m,ÇIŸ2û@2H ?&ˆ“¯U¨Xp߬%újR6 z­ ÌË@ÓõÝ$µJ [HøÙeÜLȉª¤X<®v}óˆµÌ‹Ž…H€U†ÍW=40à ˜ ±ø"ÔK 1ŒŽEà#ÀrÝß)OèL%5_ʰƉ¶’Í+ æÁ@HÈßû-‚-LÓTÌ­™Føÿ=e7o endstream endobj 1305 0 obj << /Type /FontDescriptor /FontName /YYICVH+CMBXTI10 /Flags 4 /FontBBox [-29 -250 1274 754] /Ascent 694 /CapHeight 686 /Descent -194 /ItalicAngle -14 /StemV 107 /XHeight 444 /CharSet (/A/C/D/E/G/I/L/M/N/O/P/R/S/T/W/X/a/c/colon/e/i/n/t/v) /FontFile 1304 0 R >> endobj 1306 0 obj << /Length1 1514 /Length2 6423 /Length3 0 /Length 7424 /Filter /FlateDecode >> stream xÚvT”Ý.]Ò¡H× ÝÒÝÂ0 0Ä CÝ "¥H§t+]Š‚tIJH‹ (RýýÏ9ÿ9w­{×·Ö|ß~Ÿç}÷~ökؘõ ùìvPUÅâJ”´UÌ@@(Ä ±±ÁP®Ð¿íDl&P¤' —ü† FÝØ”Á¨¢6xàå @¢’ 1I  JüMD %Ê`o˜=@›ð‡z±)!Üý0G'ÔÍ>8!\„„ïow€‚ ƒ€ám0Ê êv³#ì 0D@`P”ß?BpJ;¡Pî’>>>ü`7O~ÒQ–‹àC9  žP¤7ÔðK2@ìý#Ÿˆ `äóü 0D8 |ÀH(àÆà ƒ@áž7.^p{(p³;ÀPC  ë…ÿEÖú‹À øs9?è_áþxÿ ƒÿvC 7w0Üw8À\¡]U-~”/ІÛÿ"‚]=7þ`o0ÌlwCø}t0@UA¾QøGŸ' sGyò{Â\iøææšUàöJ77(åIôë|Ê0$rsï~’ëGøÀѯ`p{‡_2ì½ÜŒá0/¨†òΉèß6G( ”@=P_ˆ“À¯ ŒüÜ¡¿AÐ/ó†@´;Âàp#s€Þ¼ˆÐž`o(…ô‚¢ÿøçŠØÃ (€Ô'úwô3Ôá¯õMþ‘0_€%ð¦ü@à¯ç__Ö7f€»úý›þ;ŪšÆz&<$ÿ TTDøÐ|‚Â>A Q $," þ3п®àoù¿­z`ØŸãýGH ¸ ñ—Š›ëû[‰÷ŸÒàüÓ7\€î ƒ¸)h(€óßõoBn~@ÿß]ðÛåÿVü¿¢ü?ëÿ¿O¤êåêúçü‹ð?8Ø æê÷‡qSÐ^¨›æÐFÜ´ü¿©¦Ð¿:ZjórûoT¾i¸£ë¿.æ© ó…ÚëÁP§¿êèï<Ü„w…Á¡zOد™àÿ…Ý´Äåf®xÞdë7½éªn©‡ 쵟 ˆ(ŒD‚ýˆn’³ A7}jõý]Þ~8u㸑p@ ‰~åØ!ÁèÍpt@)Âþ`"ÿÂ~'ò (@Àýf¬ÀÿÇKìð?.â@€€§—›Ûï‹‚ú¢~#ÿñBÞx¢~—Üֿ׿G ê …ÍÏ RÎ ?êîúðmŽÊL²mšfqñ¡ç‘^?IñÓ¹jŸ…­ OÒßô‘-®«pžÈ/0]¢÷Z›ð£Ûë·Ÿ\Ø<2ßl'š£|_¼§Ð8À@xÏH~+àÒ#À$Ô»³û[¾‡—8©^!åŸWj¾ÞEÍlêoÕŠjÞº¨˜àK4N° -›b+°Ë™¦cÁCñ1pSùÞž:9¤È{ÍôàQà~¢P ÚbU0élÚ©ÊHг‡þ>½ö Å»qv´âvÆÚYtyÉrÑs’ƒûµšœå©Q(ÊÅë‡.±ôuÄ’¿Fñbú¾"˜6BòÎAp¤&ZôÕ'oïîI•’¶½&þ=ì(v+s#4«w‰Û@žŠˆX›ZÐJ1O˜å@IäS±¡Iv/kÅ ÂPò[Å£WÞç}œc°Ä`hªê àºXp)a•º„>ö¯|Â-VbæåíóôIBÙ|ÔGö™ø*ã‹C*åjS…’Õ•©FƆ¡i½_©"6kd¹|ñ*&þuRy~zÍjÈÁfÃÏÂ{âsghï4UíãÂÁ?>¾`ɪú„›ºëóÔ»êãÐTô5¨yïêÕž±Û3—;„.8ITÓ;" jåÜĘeºAË·¦w×õ‡œŸ¥¨'|ÂÖ¤M/uÍÉËiÜCÌŸ"ð>Ðø Í®É?Ɔd>çР?HûÙMQè÷"´~€kÙÖK£ˆ\!}ß±Ï†ÏØLfe» ãÒÒ«­¤‰yiWf³Og 7áúùò^x§³åµzÃT£I¤vª³xɈnð\êÄBqó)çmØZ‰Ã3¾ŽÐfK=Bµb®Þ286DŸWý Æ»¶8†™œdI­TñfŽßjøW|^çw?³ð>—¸éî<¿@½¯óˆ¸P6þɇÃ5ÙpÙ;[·%¾ëŒ?óæ[øê]´ÊuadT¤ÌÍЮ¡˜×âq¯îcù;ßYÙï§ ^¤)5ì;’£{2®ÖÓŒûOÆ’/^4Eï«<ޝ†}(;°LVx˜ñþò”$fÈ2Sàö¦ŠÁˆÔë/;‰Ri¤,ƒ¢œÏ5ïÊ)1ÈJ9:quM«[?JÀõŸ3-õH‡ÉÓnEåpR2I/`Æ$fß à‰â œÖ|M%Èþ¼Þž1Ãà r±Âº®AêÔвݿ©z Õ8ç‹1lÄaÈ'Ž`‚o|z€.0Å8øy' kÎûö¬½u£å¾,Å[P¼ÖaÕ8¬áÀ´’XôysÞ©Wƒížüí ·Ív·V½Ã¹!øV—Óß¡¤ðkm‚BÇð#K¹GÁgÃ×™Á“b:¸øP'\Å+U48.¦j[Þ^Lt¾Ü3r(·ìÚë¾ûÖi¿x I¦4#XÓmþ òQi x·d Š±ëÌaó’öÌû-¼ÚèÐÑHÑqþ¡C[„.U±iÕ­H².!Í%ÇO0¯£í¹ÇPÙ»§g:­‘)³é?(ªJ™¾{”ƒæ ùßÎò$w_ÇK¯}/³nyç[3ã†oñý°$ÿ qv-Ó¹L§©‰“ùmvƒ+t5³`ð‡ÅŽmŽ=¤(Ûúd»Ä|—b›pº…çãë;uW4y´=ÏíqôÈÇЃ©×„šÑ¤GÚšK)!6§ç6ó¯ÔÀKFÝ Øv˜Ãq#@‹rEôFq‰ýÌf'žàƒÓŒš Ùs€˜Á$Aì¨f•XÂNÖlr Áøm¯™ÔëºíýjKáÅoÜ÷Ò» <„ƒ¤Äòoþ`GšÊa~ogŸJ/_þb©µypVyzôp¡Çeò®)¨@‘7´°f0:OœV¤‚JÉÈOŠ-ÃÖŠÐçL3.òª‡æ7ÿ ãng«ýfCªH2Ú&ÆÉu+ê<Ò—ZSôIÚ…G_¿þå¥ë’$m aé[ƒ)¿Ï°¼o6ºE]8b;Tµ5™»Eê8=w餇U€íê>Ë{²ŽMe¯FÔñJhôAL:ñÌ›Râ·äVžH†¼¯bßåKæT_•9¸(1àSY†æÕd,úÒ',qÈøFõš«}~ DäIZGA}Yå}–˜XÔ¨[Üb²[ Ëžz¥µJ7ù“-5=í·”…¥ŠAÁ"IT3²\¼êÿœsÛ’>ã Í]³æSÞäÏøšõ ‚b·ÉP¸Ÿ»ž£a­<—5XYÁQ˜ñhôó©²Z´!Þ+ýû!î˜w+¦#ºñE¥¯?ý¨ Â?bQÞévœÎQ­Ò ¦pxĿՄ®É.šçt†aÝ1{ÆSó~l·®út"²+¶«WÒ¶ÒŒ\»wqŸ´ Œ“¢,…ä›ðjûRÎSa«y´áMÅòŒg ›yËq= ›Á•ŒNŠÍe{´•„5,á©÷> aØK¶ÚÏûpREg¢tÐÁ‘¯ÙÚÒ­é”Ïl¥¶d5ö:·Š7[˜Ÿ(¶çú³cCŽ´q®t^’¡|¿ 㣥ÂÙ#+p.M¯î>ÇãÕX‡Jùµì'Þs«â®,.koé(6X‡—Pñû½„˜ õŸŠ c^ßgÁ ”º»3k~a]™d›Ï }A_4Ô[DÔÁo|èŠ01äõ®]øÈ?v»°ÎF5/;>ññ€Ë(X©ûSÆ” KÑ#!&ªuDƒ<·ñ,oÒŒh̆ô]Vá>aÛ_åÁ£W˜I•ÔF´v„(«dtfTÍSkŸO˹'ÙJ ¹éÎÖ2ççšÂ1¸Ç ‡* ý2Åõ£’oµu§Àƒ<&fo,×Kíx—ÜÀóÜ­qt©#¢™quÖÃÅí1áµ¶ŒÃïå¨hâQÞ_T· }æF‘‚\ƒc L±Œ3|ëØºÞõ"Øä½ò~ÁÏãÃ$Öm¬cט³ã¯Ï¾aúE¡1>3¾-ò#mq‚HâGÙ ):´Ý9ÒoY Êî+¬c›¨2ˆ °"V„irë°í1V¢m&ØíæsÒ÷6Xa÷ï‚ R½úÙ°@‡WÛ- ºÅÊ”ô²õ9æjºBÓÑf ¤Ç½” ©;Ïm”SOÔ¡}^:ØÂvº›7¨‘¹Èê kú¼í×ø˜vžàþ5’rEº EŸ3Ã÷ç¼§ÂÌ“¾lÌH…}x2›¬±9Nò|u–:!aÓa®®—[õÛwÉ:õ‚¹ÔWsÕ uÃàCjؽ×îÄõÐK¦«Q™¯_F´}UkÄô?ÀˆE›Z`‚,7^µ𱔓G- S7ÿ”´ï~YÏ mÕÎ ›=¨®õÖÂ1ºUJO‘ÞmE¾’Bï'€±³øm×Äcaêoù$ȼýĈ¦­µQ§™@%µ"iú–‰û“”½Q·oÇ|„koóÓ£ïnЪD7M%TK¤LÓÔëד)y YÒêMÇ\í:ˆ‹ó( èÅs†ÅéM䨴­¤Œmz7µ2ƒöo9[#æ# _!ñßOpüèîp&|ê˜F*•ãáôsX¥òÔ[(wàr<”ÃRÓÕô?I' ÙØêi%4,|x”v2‘ÊËd0í²ßr¥Òg•]s]ìcñ~nœùVJró³¥þƒÉM‰¹{.ö]Qg>=éÃÖŸ`>”3ôÅîô:/ëYí³tìšßöÈU‰…Õ)d^ìf|žzæÓ¡àåõZm4 l-Öv½÷æÈ~mýø¬š`‚~ÝEý5\Û2*¶ÊIYðÇŠ—–ÄÝÂZüEwakµÄÕFåÎþÜEÏËÑ5,Ö»g³S“õ½}-»ÕOe¬ÍÅ(¸Ÿ%Í Ãõ¯Ì¦ú‹“È“ŠSGÌU{m ÆžIøîv½@S×½$¬g«qv+B•;Šm¾8·¡dħò ']gÜ‘4‘gVß³Fý >¤Yþ49¤ƒÃÎ2hsóä¤ú¬\ÊÀEaºq:A•ûÎ;•°{··7J©ù«\‚‡4׬B„¥gvÚi7>(î¶YìYuc)R3VFŠ8…å [¢nÓ«åGPÛ?¤ð©è‹Ãš‡5¿pJáŸÓ±È ìYÛÚÔÓ<·Ðá‹ë1bZíŒûd=ã ½.Á&‘ONû-Û>ÂP4xŠÞ,Q.0*g=Wëyùƒ÷ýäAgÃÛ¤L€=N'´qË1h½[寪€ýFCÜ‹ºØ¹>gâg&a§‚D[®DºM®vœªæâ#jä?Wê„ëøH †¤ ÖåÒõ ©TvòèwoŠ˜0ù cHÞ8È& zNµŠ D3–>u§õPêª×@ÖŠ£q†ŽGYÉ$7‰šÄn•ôˆ6ß¾g¾Ñ3öÐÀ›Ù´#‡ÛD«ócÆdBc|ÞÔ\êû0GOagtúz%¨jëG®f®*Õðú‘­Eøªš-£Qº£Ð¾z¯ðZÎ,Ç8TӀĶb1Ô%‡çEå2ýÚ2¹sÀZ«Ø"bµ]]Gσ"6…üãžðDðÁÎjúŒ%á–Áü¥Ÿæøw¾|ÃÅ>^cRCXžúQz×?â×È1ìàI’ £v5nÒ²ç‰i~ìà•Öñ¶äU›~A½c¿§ÚíQ»1®]sÁµW²5~‚ö±28/ÃGéÛo§Á)€ìÍ]|mÅ’ç–æ–kÞØb>INáß÷˳ÖsJ¢Õ™«Q¾óéÿ¼…4§t3jýQøæà³MtdŸóÃx¾­qKx1ÜZ×¢HRwãjJÎ8)­"¸,¥KÈ_J ^« Ã) L°!Éæ[SÎã@40ßÓÝÐ爮×=•Ï"~>ÇÏlì;ö5è6ÔÀYÆXf´DÙc«^³t%•=×KbçgÄ#{TYZrÐ\O¾¦e×É/Ôñå:8²q…˶àk]9+…SSÝû ›øˆ¶s|Ð’eà•GòÁbAr:±ßõQR×éÃÐ3ø¬?)ó[ä…qB)Öté¡0×€“î‹Tm|mûW#d­[©ÁW3Ä{ á“&³óØžà:: Ë!ŽBå^UóÐ ùd­%Õ5 [Qçv\>2OLñŠ›Æoîe¶œî©¶¾WÍ ÍzÜç_¬bÚ1¦¬Òà?.â™ËÊo„§ "3F,ÅUÕKžß_ ä GrïT›¦çfŸâ†,×Ûu?³²V)÷öÄè—ÓrA4'éÖO]Á†Tcã|ÓG8ÅcýAkgÔöáý?Å}ð ùsîÙ…°<«cÓ$x‰ì—èU ønÍðàÓ­p;Êy ®ÿ‘RZÖëè´Ðø¢WÕw¦Ô˜ Û±›,FœPÖ¯T„+òÌ`jm¦(»¯*õÀ/Õ½ÙXøÆrµV€5;óâÉνèïáÅnÙ'üC¶¾ô_yæ(à zXHâ8¯×—î Lµé:ë4+¤ÅkKž{î³{\X!<ÊÛ’Lœqõl°!—ÐTŒûð“o'tTý2 *¬ÜýD¦&&Äù«zúâ{t!Çë—Ø²S«Á0âia:;7Â>òb7ØyðæÓá®q~=ÛSàÈ8‡à·(àÖÌ"ƨ÷¹+¿54ÞõÉXXðÃÙÃsyf¦ö ËÛËpÕƒ‘'-Ó£›¼ÕOm]ÖØâ³4¼ìÀp«+ƒ…h/:{úe\’IԢ܋º}óRäŸç¦f®4º;ɤ5Ö½èr碞z‡Ìô›X÷€´Í] Ýì!ÎÏ<—¶{ê„Dm"$AOŸ3F‹Ù;¼Æêž©´6ùjšžŠØ&XH>¦Ì9jjÙ/@…R#2¤q6“ìûççiþÀ©IÜî%¯²`Žg=NÒ*‹_1“ª–IÕ„ù—7 ÝÛ ui‹aû#‹ZäÐv°Ôz±4rÎð!éœçD‹3`^ÛÆ¬ØWäYQÅVû-}”[Ùw¦°ò[ãe¼ƒGù¾rì(«’9Úɸҿ>×½·Eè3ì/•,­yPjöh,ˆô#{²¹ú™ÀÐ=ÆJ櫸«A/Õ÷ûë}˜ßn7[2 pÝÒH|¯˜Ì‡¥Àn—„VôìáßÁ]\6îïC«ç,û ‘uL–U¿ï]äŸ9sOéj¹Æ<}/ðøU_– ̆¤ôE©w¿_U%Þ{(p´yü(áð…èŠÑÝSBší&±@STåæUY¢˜Ûñé|€±rÜò“ÐÒ‰ Xgåñasv¬8ØzÝ6è…¤Ëý£œèv¿”T´U X Ÿb#”ÊU ˜ÞR·ÒRòþ¤±äuÎïÛµ‡°¦»OªÏSšq àÐâø¤Ååϱ‰ÝùiùBž»xGD¿}ƒ–®Ù]á§"°Ç*?´”GŽ ˆ:פÁ‚*Ü­æ£k}ÝŸƒÒw}{ à rÍw(× ¡w¡ ]Ó}Ò,nËtý^ªÁ–ûúåYÁ†íÜXûЀ‰¿¡þþ—£¦hJŒò­´:UÈSiǨÝÓ«Mè?’Ç'¬¾/¬­ V<õ„¾#lË.o‹- %còmVt’ühdvÎ G/‹ wh]iÎ\¥qËr‡*«5‹„¨“™M°z¾|DçóšûË̂Ծ·Rww7<9«Yõç»N][܃äö~Â~:¯qŒSÒe~É‹/Ç1ÂÃI®Ù¡ë›žŒžµ*Ń›BàwéÜO®ôv³½Ó¸K\¬ DN1”ÏE·åª|·„VÑØ^ŒÕª|+o†™\÷ä_;N–×¶–¥é…3êøZ>=½õyì9ü8˜\ovÄÀjŠ?æ]’­ ¾Ü-Z`ïÿøeŽÖÁ”Ú¡ˆÞEŽ/Ng2«c;^edÂÕ˜ªä|Ï!ö‘𥤥¢Éwyð=ÝÍtÁÿ§pæÞ[¶îíŽF>àµE±«´%»ÿ]Ï©±âÎâ sùÊÄ–@l`ZâBñPôþpæT™4s\ÒAËúêLšÔj8a$gTWacÉl¥ú\M·çËHV  NY› 9†‹·ìX¼lå0 \X††5 Üé2èl9]ø«žLíÄæ;B†ô¹ Ãy†gñ9ò• d”;$ºë'ì62¥9Öï,¤lÕf=·FöB-÷¼†7_Ç‚{d2Æ·ÈEAž%¥…ÎÎïSÚs{ü*'#“ú˜¹0м±â{©tèO·cÅ·yy Þ‰L~ˆ»[Ã¥8<:S8©.…â•Ýú\S³ûºw(Ð2‚Hˆ±ô"“†½ÍH0H{qáæ Ó«[Œ41doa&Zfx˜)£1úF '´:lÑ\yÊ*~Ú½ƒ9©~Ï!Ð\Øî»ÿ.*·œ¡=>áÀñºÝh‚Viø¼WÈD̸°‚K>é*Ù_AL2ui&sTѺ‚Æ¡û9Z_9 VQâò¼s§ë°ïüœòBñ€£8À Òœœ}$¡f0R'Ò¬ÜxL‰Ó/ÖEÌmÌî etJ&$ÄüîãSÎG”ø¤E¢fD}5AÂÁ{?졾tÛVZký³Nš*ÓÖÚ¡Ù^7ö+aoþ"< YävER¤ë €¶ŸÜJæÁÕéþݨµx«™‘™:ŽÝÂŬbQhù*Õ–%”WÔáq¼þåC•÷¡ƒ{…élçÖYK‘Ûîkyi¹ÛÜÚ‚ Sl¼7÷u²^%‰¸½â m±¼øÁ6£[ƒ«žp¾Ð„ùä²ûFã““§½¥”Ií¥ÓõêQBqß9‚¿‘úèL´fžåhŠùnb¡lÉÙßæW=JUyw—['{–ÿ$š=Ô)ÞEÎñ :§€˜Šº§­WãÙA6Áy+w”Ú±™²Ö[QeîòãæÅC™è»Rõë]LÌ*Â:Žäšq øÔ‡ËÉë%§½¬ò5’»2ë/¨ºEhH7xÜÆí.x}C=´4> endobj 1308 0 obj << /Length1 1804 /Length2 5574 /Length3 0 /Length 6674 /Filter /FlateDecode >> stream xÚ´TÓí>NwHH‹ºt(*Ý Ò2Ø€ lc  J* Ò%¥H¨´E Ý(!!(%Jø›¾¾êûýÿÏùýÎÎÙvÝ÷u×ó\÷#Ägb.u ŽvFh¡Q8)(¢ ¨êZX@!"‚@¤i„„,8OÄoëƒD£”ÿ¢¨c0Á¦Ã˜†h çë @e¨¼2TA¤!¥‰h¬2 óCÂC ‡F!|h„Ôј,ÒÍG(ôï_@ÔE €*))Hþ .y!°H 0„áÜ^„Š.0OÀí‚Dàþ“Bôœ;‡QƒýýýA0/ë¦*& ø#qî€ÂõCÀCF0/Ä¿³h„ w¤Ï?s´+ΆEƒ'Òò!Äø¢à,@(˜ëÆê²Á?Ià×éPôwº_Ñ?!Q?ƒa..h/ €D¹®HO`¬eÂáq’ ÿA„yú  ñ0?ÒæL üìh]2`„ èã‚Ebp> ¤ç!Á?ÒÎYWG{y!P8šýi ±ÂÁ€ÿ½_Úôº"Qp׃À}1`KÒÛ¡«ñ‹D0Ñü±¹!p€QPPÞïâþQÂ"ƒøé„þ0¦ 1€+aD0ÒAø¡ òù!Öô·ã¿ˆ àHàŒpC¢hþd'˜®ÿ`‚°H<`!( @~|~ÿs ˆ ŽFyü¡ÿ¼e°¹Î%M‰gþíUSCã BU)i@^^ W’‚ÿ›æ÷ü;üO« ù«¹¿òé¢\Ñ€Ò?3ïß9ü~ICô×âˆÿ­`„&(ˆþY{ˆÄ…ðý^ƒŸ!ÿêÿ‘åÿ¾ÿÛ’–¯§çO‚è/Æÿ‡óBzü¢$í‹#¬‡!š°$¨ÿ¥^Fü³Ô†8Ò×뽺8aM.¡ÜR—‚Ê‚ ²ÿØ‘>ZH<n‚ŸÿTο·A(á‰D!LÐ>ÈO!ùaù\<Ï‹áÎ~º„ÝúoYM” þc ¥åä  t&-'Ga[áüO‰` #„„ƒW4–æÇÍÊ+`õ¦ŸHAüAJØø7R„`“?H›ýA„8«ßH‰ö)`ç?ˆÓå7‚Fü Y]ÿ‚2Øí/( €Ýÿ‚rù$Tõø Êzþ u½þ@Âò€QABè¿ ¡ Ìo(KàbÏ(ÊáŠûc…þ²þ#ôßfÂI`òFÃÿJGèû$ôíó$Dàþ‚„1|Âÿܳ‹/–P ÷s# "øÿ|y<Â…fbí¢yµ>²õàÞ%n©¥W2Oå-÷¿ûž•¥Ið$~"ybÄáQÉ-[¸§˜–§aÒï®ZkGjHJÌ­™ àÖ¢df‰b&щãÚ=8g¤L÷‰JôÍgÈS®”›ù«ê/t¶øªöm„TÕ_2›G£O‡ž9°]ùàmLÁÍ[U\CmüaTL‰í[ø¦±Žgˆ©2Åpo»äjxL­^GÓàW=[Ú¦/,5mÌN#£ÏÔèåB‡£µipõŸœ¹m*”Û_vHsoÓ¿ØNÜ)Y_ ²²#YÚûe€45D@€z‡³Ô-6`Ý0‘½i¸¼ražžåRñ“mḵě‘Tž~Æ;{™Ê†(ŽðÎÃóTØóWj¬ðçy ÒpзJøS“¸kãt5º0_Úã‹ÄH¯àQÚéIËï – 塾Ô÷>KË髎¸£wn"óeÉHaRíkå¦WA/$Í2ˆ&©$Këõãw§86Z,&²˜BVvŒ²"`m…§­)k_§Ï€¤ºni.³ê)¯¹àóšV_¥¯àÝÉêJŒè-ŒÛØŠKh<k¶†GYsõ.ðÞ×Ò/]þê7ÂÞ·³áúú¢6,ôŽ%_R.&Ù+@»ÑÄÜñÙéÎñöí˃¾‹O8…î§éz²‚µ1"¶ýWÙnqñi[Ýܶž¨/Ÿ'ŽFýZH(ï„­Äõ×@z¤)nŸ|Yv£Ö‰}¶§÷ì5¹ôiøÉm‹“çŽ2¢zÖ‚¤§×Ùbªm>Z?/§zueú©È-"ßZ²ï¬Žº‹Œ Û')B‚iivA5‡ú¡E$ÁÇ©.rÕWÈ?o½—Hµù4%P•[ 2¨ÄùØ;—u|ÁÙˆZ úú€ µëxmUeà× ×-v)).mŒ‘IKz¼„V–@ùV¬".&(É„3ðͪªÕu‘ЦçØ*1ª¯g>ª?O‘~eqS¡*L5-²nfÐ=rüªa1¾Ó€ ½9G©YsA>K4âÉYc<¤R/­l¡:9÷e#»#Ö5ßlüÐi¼÷yGäѵ.¸¸wn'ó¹ŒÉŽ—Œy;‚:W´ÈKXSžgYцšž Îrù÷ïû ïËŸa×Étð|ÍB1 ºd—[ꜿÔ7~ïÒXSRyî§ŠÚÇ|\ð¾ÄöZ«È2„×õœ,åÙîˆñf6 zjƒÆåZ x:ï<]éà.øFÝ®±KFÙ7ûµ{#èÝiÓ.RP ‰ÓúMs¨sä*9æÊNËap¬?>õì5°ŠÉäN ¡&F_3wE‹Ù7á'¡ÅT¯¤êï¿ *T0kê•«ä!©Ç·ž%¨1 'úºP{h9îùu6•ûLÿ²Õò™Qãáh…¡¡u²â¼heöÅ&SƒIΘÓtxÇH·bí†è÷J UîPt:¥èólo•Øo[¶­{ùœ§™³Ù|1¼Æ™ônHá+#ÑGû†9=—+“êûˆõ‹s}ÄD+ª1Ïo*¡[é›’ØrË­ t9rmÚ9u(_G¼øjŒ4B“^OBX~MìmäûÜ©’rµ†¬ó’ÔC]ÄÚEÎsì^l™oÚIóté§I®Âέ _ûŠi.X V¨%Yx¡LËM:“dPôøøI!«d’§oÛNÃöNt¤XbÃÙª3OœAˆµó“\¿»‡>5Q—ÒšiøÛly=Ïw`§²KÝ7~ý‹²AЯ€Œ¦‘Ö†J «CãÂ[0‹l_G佫¡yõsæ,ºãÝE²p0(·ö•¶k~¹{ õ°ÞL¶xÇÿ™+SWæÎx®•IVêá×­¸Nìˆ%¸„TáùIB ¦ÉùXÉÁ:Ûx“eƒu1¬glûzùµGÓî-cì¾~D7ßÙ\Ïr£qÌ–fšôn=£÷§KF€·~yçöîÔ¼BÚ\E­Ý¡þ(/`ÐX‘ä’û5X\…EÙÆ¸Õ”¾ØKPôñG¢îG&½µ›¶k90ôÞú™X×Ô“ùÞ`ê°áojðtÞ‚"=í²| µ™|Ël.ý4­GáÍ©³ÙÉ|¯#è<ߨFw|Õ[-§%Š)ë†8aºwýlÎj·VKºIT–KˆÃñAÁOšç0ü(:/hˆÊž*HMz<cä¬Ì8ý: £8ÚìÒ„¨.9½>ÆÄwo·Ÿ½_¾U—²Æî˜%U K¼kGMå]S|Ë!啺ݽ*s - ã4þµ¥”÷Hæ+Äí¯[úNôUÓ3¸ *\Œ]ØßZžy;\ë>Ÿ°Ã‰ÿH·]]¬³’õigPý-ÖÏ1ÿdôŽÀ÷ÇKôP¾õÝ}Œñu÷12ß8–æ2Íz¼ýÕ«˜ ²ªûôuÇÁvÄšÖï×±Ÿ¸/®hyU2ÊÈï½f̈œó`'Wç Ö#ñâ7 ’ Ï2³ôm¸×³Çv›ªöük™ `Å’S|˜ØUž”›±ÚbNñ]ª ¢ËÞ+󔾤óR¯ ߬óCf³3 ¬"ãxæ×u?ÁkW‚XsÛiVf‡ÕxÔîà—xªH‚|F†Ø½c2™t󥦵› v$7hßß×çw\ì¯ù¬9Üͦú(B9`×WXqEC­»wJ¿=PˆT)¬z.9!†>ôTiâ¥åŽw´MlR_Çzúô梛€ »—·ÂYd—ççÚ¢Io°[1¤<8“ß)r$©L*} Û+e-í/]O]Åpá­§ƒHðö¦å K£õ>óõ•ot™àаæW]Ê{ÙÄü"ŠØ"«AÌ ß¹ó'š$¥l¹Sûð•îW³‹y|¦5–÷Ÿp ?û0_–àÄyÄÆ_qÀÚj{ËJæcm1Û3ÈÔŽÍuV<`ÈÇ›"˜ÞOJžó®k;¥`ä›ÍGæíS|8O@ˆ.ø˜¸â+\i´lw¾ÖÕþ}…Ú Ñ²pmݯW…årâ˜UœóNÕÇ`-IôF/\:ÿ}éM|žu)µBë)Rо¹½³ùXÃ! tަGé )‰ïË÷2NeÛ"õ*¦=öL¤`è³‹Ü VùAf>zã–V7ƒµEÖ!GÚïb¨û˜‹ã¾Rš»š•÷)ö‰òöÔÝËvqfr²êòµè„"Û™:<ñ”ídÏ{Ð)ÐÁέUåQ&¿¥Yo(©œm)#j'g€ÛªÕýT~Á ú°ºÎœwïˆ'I:Ÿ×ƒ¼5ƒ+:§÷d:ÞÌx Ú`¶÷Áƒ™ÇèÃÓì—mT’˦v!oZ{7 7ƒ è‹r—AP3•2ä#‡ÐèÕɇ,sޜɽ¬_šÛ’ÀýÁ§=Ä×¢Ï@ ÜÛqîOÎY?q¨ÌºÞQ}£œ5M¯Nòõ"µ/¿ÈÇ™y_Ý‚-ïÍ-ôtÁs…]“ÜñÍHGœ™­³†ú¾.±€I…wGAÇ›¥-ßD2ÀàèCÊ7šþd¶"ðÚ±¬MølC™°Wk»¶çÑéz0yr—¼=ò[®ñÙöÛ•ˆý#ôâ7u2"–Ž×´{}²€ªóË¥ì°|ô%ŸM3*íȮԽ7YgdË5¾ƒTìç’)'Bnß":ØI§“üìݹ Èyfpoy]ÖXD±”+ä´O'Ó‡MƳ×”ù=-Æ);ú£òvÙė߇íÐá|A]:Q¹žv±Rzì]9MmðT!LHXP½c]¸OH¤n=^.ØbQ3ùé©U ùM:íŠæÔ¨æªg/‰lˆ…?³¸zñú÷Y²PçrÉ…hÞ”Ùꉶ¹>{4ÂÏŸ­¥fHõ¡,è„ó¹"²mS ,ßNÿZ®ßañHä àê"Ù}—:²‰WÕ,àüH«ªì椆a#ö=râÈ=rÉ\ÌpDOê ›Õ5¿ûˆo&,§¢¿CWÉ\ÍâEïÜ;sÖÀ$”8 æ¹t*=©^ß@y(öUÆ9µ©¿,Á²VRýèñîð@hÑ!ýlÅÙÙÉò]r¬"ï~”(QÆÃî,‡>…o ¡±œF¨‰PªÒÙ…ŒÉAKÿ›ÎTÛ›Âü¾OãOùν²Qµ6¡Ëv=³ðòÆ“ æ‰ùxgó6…÷Mv⻄T_Ÿ3 T|Y>þ¡”wÿ1<ðrÝ8Ó.z¶ùŠ;Ï^™®³â47ùO¬Æ•ÔÛ¹„æHó’ÍÃuòýèØË·,Kl" p»Œ]*RÈY°eUOÝú”"í+r‡b…ʃ¹ÆA ÝfI‡M²œÎ½ÈÖøÍ©j‰ jN¾ÛÄÏe‡ò„̸&‡ãn®Õ#ÎŽnsÊ„ã …‡?ñ0—÷<6Ù õ(Ô½»lyyßíßÓõ£Æk&¡’77¶’KEñUy$õض'qXp_ȧv%hßi\¿Ÿ¬ c17Åð‘æ®ý@j…gf;{¨b§eú»Ñ2W6¼ŽzùÚ¸åèo¬óí\:~nñFâ~U¹ *qĽp¼Q‰·>iÛ Ô×(ÞeóÓÏúOÏ‘ñ=™µ7f\›Þîé!//Þ‘BP$ŽMé¯Úùy¼qÒ€‡„ðb«¾Åò›±` o–Òab%± Ó­ýtÁû|‹ó N¶yVrŠ˸š*½ŸvÉYh/9ñ\¦=ª§ìK¼s’,Šã`·›è&—ÕEçÊ‘%BV™ Ú±ÍôN¦íæY^Òfé{dKï¨8³Î&é3¦b6¾Q¹Ðbs·}¸¾9–_ÑOÛ‹EÇ<åq$çKlu¾ß|ñrI—´-kBWY¾±ˆ´ÂW ¬V£`Qñ8%a}Qy®Ð|˘ wK°Ë\÷Ô’×{|u`éíµ[Ý|#`îòšô ‡JÖP¡5»eÔÙçÕ§>”+w%ؾ÷<ÓÕó*òmÞ‰õcá¬}Z>Ü 3ЗÓËÛ27øOPË}O\n}»(d¡C ìŒ IË·ºÅÆL¢I:Ó4yfo³§÷é>_òÂ]×™j€”¨=²…èhòÛöO…Mj»¦\{€Ì†dQŽ¥µºüQmÄãnrÛK`"£¦ŠÌ2µÇ#­8P…íEJóáP€fÿ«®n¤9-ØAnXŒŒ½Å¿mžˆiÌï“°cøž½kµjø®lÜæ8çŠwÖºJrá9gEgüÊÐ6Ãuu¾¢S¯í–½Þ×°Š *¤™D\ ð[ò¿ì=÷5½e™<½àø¶¥ù˜u{wרl1UÑÍn6ˆ÷K_ëÉjžÉŸÈè{½âF~É6å%íLî1¶1SʲHúòªv‘KÇÐóc‘¨©øóÍVž;a Ûžn)Ð G•çì’kLØ8ÁÂ$…¨™žßG\âeQ;†(+iï@¦)Ÿe—úÂL¸*™µUbxkpÀf°ÝO{#qÊŒ]Ùd½çïéûøE_Õþò'³œ^jV¼HæwvÎÕÏÆŠ•…<|G»À†ÙÒ í”[—ôîˆÕêöŠ^1õbª÷p s¤×Í#I–qT1R½ã¢×¡µª&˜þúŸ´®‰¿?¤ñ ¹!áyØ›dY†ù#ýÔ}ÛRòcôâ¡S9*e-ö­Â‘dÃlÜV'`>{i™UÅù)ĘI>ÍgS }—LFÜÝpšQ³OÕbïòðæÞ{]®pÝI6Ù÷–UhÝÔXõXq•Ùª!šùî $êueHCÛ9Ù>æv“[äÍßõ.]Zu¾Eox°-Ûð&å;~¡}’bãw3ñíAfdïlð‡P† ÛŒäW›ŸÐÓºŒfò˜ÒÖ&ð„¯2vûøf‘nÕ” ߎ©·iË„~cKñ½¬wælñ{PÚý³‰KõÃWôt¦! AùÜ…÷x:W4<ªA['c±pÅÐφÕx¹M› ¢­ÙM+µ ÛA:¦~E¢ŠõÃAQ>›®Pðáq÷¡EAåNN¤d¬;uXgŸ„r}¨[T;$ËÛ1çî ¯¥L×j>ZŠî­x{÷žášý³ˆè‹ÊØùÏq“¦·ûs•0Ù'Œ¦&d—oÝ¥\î'{ª-k£Ñ#h0Q?£B¿¸BD*²¿ÊP‚%ºÕR3ç}¹H…18|¢0—e]JEÒŸöäTîý:é4T½Ølxúö}SÛeçì±"zN†¦‡NIç±[|9³÷¯z/˜ë÷õ‹ž‰)ˆ§Û3Ûdõo~©öÄmßœ endstream endobj 1309 0 obj << /Type /FontDescriptor /FontName /YLSHAE+CMITT10 /Flags 4 /FontBBox [11 -233 669 696] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle -14 /StemV 69 /XHeight 431 /CharSet (/C/L/O/P/R/V/a/b/c/e/f/g/h/i/k/l/m/n/o/p/parenleft/parenright/period/r/s/t/u) /FontFile 1308 0 R >> endobj 1310 0 obj << /Length1 1498 /Length2 7120 /Length3 0 /Length 8125 /Filter /FlateDecode >> stream xÚwTÓíû7R’’"Í”ÞFw§”´ˆÄƒmÒ H—Ò’"’’RJ ’*„„ˆÒÍúøüžÿó{ßsÞ÷ìœí{õõ¹¯ÏuŸï¸oÞ5R¶GÚÁ4nX!°0H ª§§ @ QaH„Œ›ÛŽEÀþÖ“q›ÁÐ8ÒMæy¨¢a,N§Áâõn€;°(,!–”" ôߎH´ @ â·è î Ý`2nU$Ê wtÂâêüýà…òÀÒÒ’‚¿ÃÊ®04 qèA°N0W\E(0FBá0¬÷¿RðÊ9a±( ÐÓÓSâŠF¢øžp¬À†¡=`ö€_úWØhÂdÜ'8æ/ƒ1Òë AÃ8…¹ap!Ýìah®:ÀX[`€‚¹ýå¬û—ƒ àÏáÀÂàÿ¤ûý+Üíw0 Eº¢ nÞp7G€hè c½°‚ˆ›ý/GƒÄÅC< pÄçð»u@CÙÁ!üƒEÃQXŒ0Žø…ø+ î˜ÕÝìU‘®®07,†ìWjp4 Š;woàŸáº¸!=Ý|ÿ–ànö¿`Ø?DMÝàîaÚj|p*²tŽ0,@$%)*%€¹`^P'à¯&Þ(Øo#ø—‡Áß…Dp0`þpî‡Ìñ€°è‡0ßÿmø·DìáP,Àæw#û';N søKÆÍ ÷X‚pô@¿>ÿy²Â1Ìé†ðþÇý÷ˆj÷5Utþ@þQEéð‰ˆƒ`˜@÷àÿï<ÿ9¿ÑÿÖÞ…Àÿt÷¿2j»9 ¿JüB;¾¿‘xü¡áü»„>Gh€÷þ?‰ƒ ¸/ðÿ÷üù¿‘ÿW–ÿ'ÿÿ»#‡Äo;ï_ÿ‡â GxÿñÀú!·zHÜŠ¸ý·«9ì¯ÖƒÙúþ·U Á-‰²›#ŽèB`1aØ_z8F ÇBþ"ÓßÓÀÕ@ÀÝ`w‘ø¯‹ý— ·{PÜå‚ÁÍì/ƒ[Dìïñþ’a¸UûwênP¤ý¯—@Ðhˆ7Ž8Ià Æ-¯=Ìë7ç@a7$Àaö8 Ñd¿-)êüRý–À QÐñ?¢„NúuýáÎèiÐõ,þc•€ãô[ó¯N¡Ñh”ßÃÁø[þ}•À`^0(ÙçI$T6Ĺ&¤å¨J™ÅSheHŽh;í螈ÐP¡5 ¶[}Ôf1Á8;kJ§LãsXÃÚ¹]_Åý(gîã®ïr-Ç+o±!5G»¸É˃+㉾‡¬·&©ñòÍSTØeJÐÝxwÙ¢©;Hí»¹©ün×t~Jôä¡/Õ¼Ú¢ßÖQUš¥ËÀ*möí‹¶É®ÏdE|ñvî×§ÁK1"Sõ3néȵ“%xVR/ôö÷ÍÐt±½‰ºãñxåW–F]¶UMìj¥Ù̳kg¹%›´¾vštJ›öÝ/æùRŽjôwœ–w6­nò&uH:Ù&9Ä€¿ù³Ñ fèUÒÐy«QöÓ9á ½ ‰‡³Ît¸ÖÛ¹—_Ø\êxOwŽ,œ=ÔIÕ¶î áÔK¿(_þæ_ÇÝëá†ß|»*…fY]€!‹oÃß!øY"{æ€7tÜ\ÄR*Í©ÅD¡xF:¤9ð¨(¥<­Âô°îkïÕ"‹_±‹g»mm* µ3~…ù'Û`à»WÐôêUO×Å¿J¯E+Ý^Wd‘ÿKŸWñ­…4Ob2ŽœçíQ!±ŒÂÍ‘·^N/uEì³—ãÇÙã•êç½8Ù bx߃lÁ%ó( Š9Ùô9ßÄÏè“¡^ù•ݽ.k6Úî(Ñû¬›_á³àåO…æTƒÀ;b®Ê Ás#ÑúÉ&~ú>ß6g ÍË´Ò4‹¡ð‡+ÃzIËJTNþBtÓ¼O(Óö¯'Ù.Ü =È÷¤7=S%ÌøÉM$òP1⥠:"Ú™Óž¡ð¶ÀÈÍØªoæu5"ý(d–ÚiÖ‹H‚6/…~‡Zµ'–V&êoœ3Œú¢€§äËË €Œ4êY„ԲϽ™TÍ^nf¶ÖM³Ã™ ûú›õ²öbÏ LЍ>‹Ë.xÐsBužòÏLÊ ø _¿z/¦’Ö‡Òp£ÐplÞ³[âÞc'±ŽÕ>iÒ¡æ U„}˜8Œ—Øphª—ûá¬södŒË¥q0Çm³çÊeE.½$Ôœ·râ;ðˆyæ8Ídø.Ø÷C3½[^䓉)_;“ÖÁâ°/[y/}#uG7y"::ÈúïeK/õ/œ~¯›WP ¢›Z~e’÷©ùÝÈ3clQ†,œ=Ö´MÜ!l^cc}ÃÈà}ºÕxÍ?$/»:uïYpó-ÉÀwlȂÉíêH_U˜¡±Ñؽdï´rY˜W"ÎÉÖ-‹ÁÍÔÜOM³›C|Æcyå•ÏU]‘ó+ !îrÿ|Ôô û¯¾N b Q´QW­=ÕŠ(Á ÷ì¯ul@àö#Ö JíuŠ$( ¸¨,kMJw“2ìô”½woŸ‚`äÖKèúª ÙžÂÙ»3äˆ|!?+]ã»ïÂÀÏœ(:b®tÓ!VHq`M`¶¸¡È}QÆì–>9 Í_ðÑ%ÔL›©Š@‚×­wë(j<[¦¿&b…CÄv/å·ÙÞ£Ó_{xOW:Yó¿ÑÒù\í÷`ï“E¤']³Þf¨ ]W”‡¸¿pY‘tñªÜ[–W4×`ëþqÏEüu‚Aßm̪†^Ç\–Ht D‚v\T"z.ß<æîmÈ}Ѳˆ­ê!ôò m¥ó\Öâʼ•iG“·ÎÇEÍÐÈ+[Û{mݹ°±+Û…|YŸé@ì屨qúÞ|íÌ¥³2¦­ãh¸aYu )oñWÙ *CJSŽU”ÝÚ{%Ù£NUîRXsó^w‡n\[ýQ~o¼ijÕAæ@/qb¢ÅÚç6záÙ3íé¹<Ä*ÎdE!CE9†ü¬8•VéË«,>MA³ú<ÉÌIš¦`¥º0a 4¾lïˆö•a Ÿ$®â¶@ÓO@|ÄG /÷…<6Ro²OÿêÇZZÀZ~î“i»d—ÄÊ3‹jo¤×‡zçŠï©^5Æ­i¼ëøÜn(6瘭=¾SÏÄ~L,ÀÑÇâ ͳdð™tH«¤Mýè Í?kéÀ$¯GË :ÆÇÝòóyu¢{YE½/Qû¡û7c˜Øs6ït’iñ±¢ âêØ Å ™0Úéú†Ä]h¿1Êz>3¸d?‹àd‘Iþ(øÌÔ†A÷®b|]oÿ }ÕŠUc½ƒ øöå”Bò5šžáÈŠ•Ÿ¢ü9Í;³Õ6¤Ö¢¹vÆüvrn6hDÍ÷F5^0¯Oé&ÊÚ<"³7L¹£ÍUßœÒiÑÇû‰‘ÁÕÈ}î°àŽ%cB€Ã$5´`Ê ‰Ú/7lÀ'cžò×›ÏY‰ÁOƒIÈw'•ǻ罼—t¯4 c_çql›ÆÑ~ÿ¶FÚÁôÂUi”Ÿá4΄^:nZ½ ¿ÈÜÀQh*eòM U•Ö:j•ñD‹˜ýÉŸÂó·ÔÀÑ1öug3"ßlpä.x0ؤ:ÙL÷|TÜÛ\ÇÏ'ptw)õ‡ßT=öj¡³Šýz¨™|…ÏgÑ©“É;-«–5mu¢¶çy(7t°)…ž™yYæðW: !ìZzÚzÕ˟쉟ñ!ExádrÆXp¢kÖöµ]Æj^n3žö&Û _öýôÝqµú5c,e‘)TüÛ{ÕE¥èÇÈnqê^/]µ÷íÊiQõλõ‹Ù>‘t£·²z¼VEÔxSºåÕLMfMÃgbˆGžÇ`(;?·Ä9FÏ‘T°ïª[>"(?oø¶m-¸4ȧ5eå)º‚ˆjca”«H¥Œ\÷U¦Q…a09÷‘'P“%gtüPd…± "KØKöËhNä­fË/á]ÿ¡Rs.DãÒòº)§'Å¥hqïôµ{…kô¬ÒœM¡òíÕ÷›Ç:hI¹Œ`¤®ãj–/c;bQ?*~D’ß›IT>—rUöù¼ÿ5‹Ð¾M_öÖrz#ñHBij¾å õz#“ªfñµÀDý¹UOºæýd:W¿KPw(ÏŽ÷ÚÚ.·9ËÉñoàݯ}xyaZÌÍ"ÁòàÓn½ÊêbâT¼\ÿÆÊÝ.óËÀŽžuÏNl¨¼t^Qx§l<§álÐjZÔ=ð³fÑœíêÿŒìÁ[¬–êÆÕíþcöt ™Úâ àu?©/ÖµD‘NP.—_ÉÒ¶1|î÷VØ7ZŽ8=)ˆà-a˜z¤J’&ðý=k#ëçû(.ÏOjH Õ+.õ² ­XW<¾ùs…¢DåØy£x&‚ Äíåró\5]&Pzý«ÍÐk—Ý¥¯[åo)4廬_8}Úàs©Ìl‚“JÙÅ)a¬oyi^ LJ‘Pm2†eÜþî\¹¤Ao2ÓòR ²Ìl4]u‚qHzUPøék ÔŒ¬X}D>¸:OøF}#Ün;ZPµÂ}·“'ìüݦvAfÏx!ºõÁtýÛÇï.¿œÁ¶ ‹Íhû(ÅoÃã•YªC׉«ŸO6™ ÂÆw]ˆŸõ)çqPó~¶Ò[fúHCEJM0gôrd ¹1;üÁ[žu¯ÔÚG\=&ˆÉ‡ëâñtk4àb…zÚªüß©!m°%ºó>ñÂ%º¥iPSÝiœgMñzp( €n¡‚Å69{II:úfò’n"Ä$ÕÊKþʧ½ò63ÿ›CSÙ0!õæ•ÐDäk»/³íâË• íg­"Im /¾éx¹‹v-¼³Á–°½Ì\ûà7bþ‘;T0(¿ª¯TÙœ$¼-b½€®-’ÉåeÓR(‡­MÝœ­—­<üÔû1?ÄßÕ’„ÌÊ£ yú¾‡`é[‘”&7M$j¨åÝfOƒÞO™±ä·ó·\PãÀMñ›e 9Í ä¨/SJ¡7Sê–ÕHÇ8¥d)åZÜŲåZoTÉ;ªþxÿ*hVñxmó£ÏUÙX«ÄtîߣVbe${FÞ¹»&¡ú\RÓñISÚñ;ªcyi®ý«?{7¹2ù$â÷OúœÐTû7ƒI9`å²k×GÍ»…Kí5/@êi‹C¤x…sJàåú¢X/xU”Y™;Eü`c勤—Ô“¨¯Ž…úW<½­æ'dÍ`DÜ]¿_(æ*Ò©?9õÝß7i{LÖ‘ûöi‰þ³íqêâ6—Í….û¯7ÚNêò½Á%EV Vh€IB‡?eówíǧ[™"³Lœ”Eá„éÝ–¤U©d ЇçÞM¦FA. q¸7’ºþH–ïƒÚÃBüZîÝÏ3kíæ]÷™Ùpõõh}Ò©åÏü™¥ÆSK¯dN ·‘źŒÏ efoˆ±q—”Ôi”o§3QÍnÕ0_!P6Èå­üs¨ææ9E ©MkÝá!JBE‘ëlTEÚ-í‰Þ”¨¾k¸ž”J»©&'[ë\ÕÕßp2ÿY{åXCÏö¬~þTù•c˜fâ{}ãÞ(hÈøYóG4­pØì’ä„êkU•¼Åèµ*zùYt܈mÊ}Âý%¯ˆÕl{º>Œ%[g- TËöM±dN9üIn›¶sþ:íÝãKyÙKEõãU–ÌLžZÝÈô.R.Ë1@¯I”hÞæ Óür÷`¢:~|Û<4àù¡2ùËDS©žÞnd? CÁzL©^t€p)±Sr3Ø”5ŠqËIˆñ«dù\ïÏþzMgý“Ž™I0ç )æÅ˜œd”ºL›gv΃:”–<1·³¼S^{=²äN¯íwI÷øŒ¼¶çÖ㺼HÅG„§œJ9IšÕ´˜6r?ƒúð¡uošîQ,…5nɸ2ôô9yë̾ºÐ•³¸ÌýzÐé·ó¢ažtœ†nψn?/æ¨ÜVî²Ûhé-xuºŒ(çFøì2 ˜¯‰jwUõÅtÔÏî¬*ªsþ4r=L¾µ±èÂ9›»— dœwâw‡œïrOë! 1½¿`Ò¨‡©¢š_à@ʶUaæyá÷ä×?ʿ̭k~è¥y“H„×aµ¦­w°è—!Å Ôcó«jhçÌ•·•`î!Â'ŠÇRÒ I¹ô³ÃŸ­ËÙ'gå6]![ÊeŒ`—•§Ì$Ôœ~ôÈGŠZÒâ «áŠtÙ_~¯´DRWœ Ñ Œx›rƒž³¿æwš¶gWù…=œ«.5R JíðÛh3`ç›wÿ°B­‘Œ%M1ÈÅ/÷ª)jî&Šž¢üTl³Ú-™H}.Z9j ½¦ì?Șÿ€|ÑÛšJPÞË&æÍ S¢×O;æó% HÂU¦–¤CC¾®¨½ŽÅ‹gµ|²ç­–ô¹ýª«y± g‚]4ä2ÅÏ“FÛvêe'ñƒô`Z…„ïd› n‰ö)+ñ¬z+µn1|{ $&ÅïHAžbG˜É½È“w÷ø%ë·µ†mŽ åöÁƒÀ¦`“+µÓ.â©ö÷0')ZOªƒí]ÌQ’+îÞF£r½ì‹^äò{BY„gšÃôþUMß} éã{•ÃB|püŸ®f“ó¼åº)KæŽÑϯ\ ‡äÕTí<` u«Ÿ-¢ùó%ÆÜ¬O54ì­_ç=»z(–(Θ\k]<ò˜^o¾ÁF"®Éo«øÞHC¯”r¡3ðbbÐqéɪÃajßà¯M¼Le_^Ø¿¥ÓµIk©KæÝèNúJ¥£ž«Sé6SD¿ÄúMóͲ¡¸õëõ=ÚMÛG‚§Ú&o¸Âc/†¼3?‡O¼¢•‚‚7­^šAr¬<Óóù³2Mo© ×¹8û¢HnªÉ”âEÓà…róá_¥‡0.eêy%ž÷õÞ²ÑM=Qd}kOË"> Ú±’ôâýÖ,†"¯¸+ÕÂÏ*Lè!Ζƒ°“ÛRk¥kÚæ?ª×ÙJþ(Р¤šB–=]»Peª`¢"LÉï DôSo÷Œ<`2¸ÎåщLQ+JŸr ›'¹ð:ÞÈ[ƒpDP|UÓwC¯ñoTøäU8>² â)îæ ï¸\?s®ˆî?bkŸýP~£k¨h³‘dæ%ºo’]FqÀ­kçÃLlgì3öJ)7aÜêrîéwWXoâ4úº*3äe&Ï{xÝÇÑšp«ú¾¾›ÜSB–1K9Bi¹M´ÂH%Öù/6í ¿ÌÜÈð”{–œtZ£éÖÕõ²nÒ¨sà!.duoƒnPœQß'™îåoÜ®/9=™ä}~ýBújT«µÈ)È"ÿÄܤÀ›’žÈ*_Ýb(¨W¹às—DÁ£)|»;¹÷xßøˆ’kçv†ïËæ…œW|Ø·Æ( _Éjž@(c+¨#Õ§úv™›b'aFR¶ÚKgn†×®7×2™Øˆ{öÕ¼þÀf|*p[åÊI™Ãë4Û/¡Ï?„-Ì›ÒͨòF˜kÍ·ätP ‹ˆ7å+‘,¡®ÔíŠd…tÿìCâx}ÙíÌÐ"â©ïcÄ•6 œÙ-¥ÔQ<Ú£¡äJ÷øë™¹D?Ä/N^Ó;_ŽIÚnÐ&ãS`©eLÊ´qxü%F\¥©Èe‹±9 ¢¬­©Â³tÖm%UŸÖÝ#l9‰Î®”¹°¼»m,+Ò[бi<ҪʜWJçh¶º?jöö’ï}fÍ­Dß]žÔN¡U™fjÄ­ûƒ´*U:¬žÂW$Þ§+ôB´À¼‰®†ºqfùÑ÷ן¶²¶I¢tÜaEãZX’¡7„¦ÃʤWX¯ºÿXöq?^ZíÕ÷IÏqt æ×*3÷ù€ïn[KQô&òÉ>Æ`5/ÎÅ}K_G ¹°qÔŸ±ÄYŽ&ç—M"Š gV›/TÅPM†[®ß¸øgá¨éLcÒïYΫ>ãÅ«¨‰RçœÜ¤ÝG”¬yucjÁrÌûžï®Ù ƒ‰LcvKvtp¯@¬í³úï¢Z‚„ÒìÒ%èJX§bkêYH¹ó¥2®é°„}“‘ýTSY—»ÿ‰Ãy|vð|h³ÁùÑ'ÏsoÌûÏ»æiÇð!=62Ø›º¼/ ó‰~$B%Öƒ‰u¸„Ï–å•[ŽêË·Êû´r¤¬?ÕEŸ+^kÍç'IITñF¼Ñ¨°4nÛƒÞò¿¨›‘!ùA+qXÚD„FëaÿʬtÍv~Ÿ§©‘tŠõœ¤û— j‹ dT·ÇV¤‘ßþ5¾vnâÖ£Y:J¾ä ÌYjŠ2¾¢|óÆq~g'1ŸÖ6œÿÓGœ¶r˪:grÅ›¼r,P( ³Žî«cáN÷SÈ€s!§Q³ÿ ­ù¨Ûv½'%¿æ ]¦8×] Úéƒ Á¥C[ÿÛžK>Ä™I`…@ȇʆ4©«24yï0Í¢LUó±üF†v©£­á^¤{š°!ËzÍ›¾½–R-Ÿ¸Y­6©<ÎYž8~³x5cÕm_&A…ºTTJý¸ß|Ån–6Áá7ÝöŒõé)êZi‚%sÔ+;B»»E«áoÕa6G´?zŸÐœ1fGTô•CžL*š¶ŒÛöªìYµ¾óñð™Þtr"`¨ŠcÈ¥*S‰"Ú嬵VI"hìkÛÔ Ø à³™ "ÿ~5.9=¼¨S¼¡·ä›ëýžžŒ™‰êXé+23<Âì¬\’zÀNr•ª{&–ÛÙË eˆ»·Ä _òl{°®z¬‘¼èB/Ó³oÈÖHv´È‡ÚâþLcîº2Ç3¯ÞcóièbUÅÀ—®KI®FŠË¯Ç}«ô1[iÏ®«îSr¾íÅßÚ y¨ÂÒ憎§B@.lÛ»¶ ÙWæÏª-Hh 7M±•8ÿYðôÀ¨wn@>AQx}H/ˆ½•ÿÉ]¥%à|))庙±4"cùôù3ÍÅ8qÞZº›ðO‹ vŽn=(ï@`ûîø§øÙ…/ç•ÛŠ¾gI¼ÏÛ(ÌhÃBPLìø6Õº„Ä´ÜúµÁç]ß-)íF‡|`U—ÖÛÏ‚Ì ¼=¸‚OŸ¢±³'Õ÷ º|ûå Ãëÿ„®Å# endstream endobj 1311 0 obj << /Type /FontDescriptor /FontName /DZSGBK+CMMI10 /Flags 4 /FontBBox [-32 -250 1048 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 72 /XHeight 431 /CharSet (/K/g/greater/m/r/slash) /FontFile 1310 0 R >> endobj 1312 0 obj << /Length1 1829 /Length2 12122 /Length3 0 /Length 13288 /Filter /FlateDecode >> stream xÚ·P•í. *©t÷¢¤»»»»›,bÑÝÝÝ ÒÝHƒ !HJwwIHÃÁ/÷Þÿ?sÎ0ïuw\÷39±¢ ©­1PÜìDÇDÏÈ ‘““bb02²Ð322Ó“«‚œ¬ËáÉÕŽ [0÷Xˆ8œ^e¢FN¯†r¶`€´³5€‰ÀÄÎÍÄÁÍÈ`fdäúÛÐÖ jä2ÈѤmÁ@Gxr[;w¹…Ókž¿?”&T&..Ú?ÜB6@‰ gäd´yÍhbd P±5Üÿ+%¯…““7ƒ««+½‘#½­ƒ9?-ÀädP:\€¦€ß-äl€µFOPµ9þ©P±5sr5r^Ö  ØñÕÅl t¼f¨HÉì€à?eÿ4 ü5=Ó?áþòþþÃÙÈÄÄÖÆÎì›Ì@Ö@€‚¸,½“›-ÀlúÛÐÈÚÑöÕßÈÅdmdüjðGéFq!%€Ñk‡õçhâ²sr¤wYÿî‘áw˜×1‹MElml€`'Gøßõ‰‚€&¯swgøk¹V`[W°çßÈ 65û݆©³ƒdï ”ýËæUÿ¯Ìè`cää`ádí@7 †ß TÝí€(™~‹_{ðö´³µ˜½¶ô™_ÿÀ{:¹NÎ@oÏÿTü7‚gb˜‚LœÆ@sþßè¯b ÙŸøuÿ 7€ã+ý˜Œ¿þùÒ{e˜©-ØÚý_ó?VÌ %+#«%AóWËÿ(……mÝžt,L:f6F#3;€ãõÃû¿ãü3¿»ÿCªhú«:Æ#JÍl_ãüÙÅëøþîÄå/jPþu7T€ÿN!oûJh €ò_þë2²1š¼þbú¾‚?\þÿÈÿ;Êÿ•ÿÿ[‘¸³µõzÊ? þ?z#µû_¯„vvz=9Û×ÿ¯©ðÏ‹–š‚œmþW+ådôz$B`óW¢Ó1±Ò3²þ)9ŠƒÜ€¦Š '‹?Éô÷6^sXƒÀ@E[GÐï‡çÕ‹‘ñt¯·gbõú¸8¾îìO•‘ãë!:ý±Þßøzjÿ]‡ØÄÖô÷M2³±ŒŒÜá_)ñŠØžL¯Çk tûƒóz°­Ó« àµgo€™­üïE³³„~‹þD\±#€Aü_Ä `ÿ½Ò‰Aý_ôªÓü½FÑúq½FÑþqŒþAl¯–¯ÏŠÍ¿VÐîõmxÐ?U1̿¯«úGöÕú÷ þ0½òŒÁæÈüêcãü¯ö•Ü ÿFd{­×î•“¶¦ÿ&~5°³ýàµPGù”ÆÎô*±6r´ø¨¯Spú×å5ª“Ñ&}¸ü _Ïôõ¢~?jÿ!{Mëöð5‡ûÀ×.<þ€ÿµtg‡WVüq­¯Œøÿñ*n@ø…Y[ž Ëú ŽÛZ!±26üȧ¤Ö3lÝGRMˬp‹Dø#l¤ÎO{E¶~©w,l½œ©¹Ó$¡æž¦¼+âÊ~]­s¡ÃSX7 PëÃÛÖï{&Ú)³H½,*K/|}F„T"-ÓªM´éè5ò€³hù_Q©]Mßß´J0¥òºåô^¤us«¦yÈz>×öáíoÃwt6œ)ÍzLë64(âŒP­­SáÍÕví#¸Ç*8Ú¹’`’’“°6Oc½ô›c-àr²ÞÃN:â„Ýî^pØ»8!vß[ÛÞÓhÚžš@0[߯x\ï1á”êÓ5Ñ7£st›ÎÙ†ªz-ÆjV³ëÖšS8:…3Œ{±$©ÃGÊ*'ÛVüñðaÆ<}f'(è#;ÆGþ‹ç¦{QÊ 8ïN-Óý!Ú|ÇdaÇOŸI;&À \µâêkA­ÄwšÍž»Äúæ^U.W«Lžn, (5_ DíˆÚÞqWÊ‚b²]!Þd æ¦3KF›™‘ät$³šè»âÂr‰59nÄÔŽ&`|£kÞtª§ˈ1ô¬¡œ¡J¥òôšª®Î§ðè=_{±WïˆÝ1 ,H *¼­QIw ±/…ûìø,[* “D"'½˜š”ØÕ(Õaf”Óæ%§˜/ D j^- ¨"ßÍ ? U[Óâæøsnïô <P zÔÛ¤½”ŒýèbÜ/†½ƒ¤6Žyg:fî$ûåár§ÕÜ<› öŽyf’91Hãs’±Üí[Î,òú ÷tt¿ÕIZBÁb2”^^M‘„ÃåÀ ¾RJ¡ƒ¼F—„QÊ&ήÔ>4ÙD!edï Ivji-Õ3îsébXz­î»rUí²Ë„­ý-¼Ü‡®Ç䎋¶¦Íü.3‚|8óòÜ}'¤çóž6®ï*‰Ç~Bש^¿Å…¦‹Rœ,¿ðK)¹ðƒ(»yö²¦U{ÆEu›*H!Ìr~f9>ïk¶<§~³+ÍÂ`¬>¤ Ë"°-Á6u“÷'bð^­YJ¤¼¼þ{Pçrµ¤åý½Á¯JüA gtVKkîò«:­hìyûGÀ ê"Sž®‘š‰K%ÙÛïngö» ô'†DµRÑ}ji»ÁÈmД š:ÚöE^[²ÜŃ ­UÙ-žÅAª‘IR2·”H n aæì|™Îp´Ð{÷ ~Ç6JÊŒ‚›‚ƪ2xµÖém»Á#³eÉxî×¶ æÜçUbgŒ³µëb¶H'´G߈ Ú¨ª¬]HÔ˜cÞr¬?"Ó_sû\RÑÉ™ö:ÜïÅÁ1/™ºx3«ÿ‘©y§PÍKöá fø¢ˆú[®îœSþ)±Lâ5ÚlPö^a.m¾*Žz'±à§îà ”Û¦¬eÝ^D£B"±_ˆ\Þ ggaAC‘þÊ à¤ÚwÎ_¿ K(avOÎa7b©W:ø=[Nž]÷kÍyk/Æ@ì{@ÇùsS,CgßT-TXÚáy!ÞFÂÄW#EæÒê, –?y.÷f!~F_õ«2"ýx‡-FZlÈiù±wõ'¡ö§È@e­oÈ™/ìÙ#û¤µ1?Ðþdà/”˜CлAa« kã1œZwGÖE½æÚçN(?è½8+&û>J‡2&8s“@æ°v_·ù=-­|ùâLíxðç$h½úÒa ú4Wî1za·°¥„lë*JDyíi¡¼ÒÖQOêcú°4Íñ‹ž¿d+ýsÖà2j–€†N³±%C¼£žUa¼ü°8ñrßE´x©¹ë§ÏFLTð¥bžÛó«Ðf—”Ö„î‘ÌWÒ¢©6íS‹Œ§‹ÜæŒCÖ¬û=rrBŽÎq†¼ô«Ë ̪ë‡ãÑ¢—”%ñ—ÃtüšõôÝÔ©CJ¿#ô¾;! ‰@\áþ)ÁH¨4ºþìÚ3£ÁüI›¾è™i’µZú©ÄãñFY¾©ÕÂ=Ò /a•ùýÍÙÐÂò+YW'ÁŠòY½±œßÑ?G–ǺØTšÝ»nYÌ&1gC‘±*šœÖ>H¹mfAcZý§5‚ìŸFLgHÅ»Yi•ÈJ§ˆ+Ò( SG©æ4Dsãjܲa73ü;þs'Ü_ì<áßÔT!ÂómÔèF)ßNZ¿Ncâ†ä„ç|‘kÐÂ(˜L†"x;3 Õ¾{}‘­RCx”¤ãKɹeõ1­M”öúdœèrñÃæÚ¦Ù,“•Å’Wt_!G‡=#Ç#à›rš,Z3eÕ ¦C͈pê¦Ôª$JRkšz½j™³yÅí#~Y¸¿0™\@ì@·jè•Я:?ò+Ùƒ,=þ^·Œyyà{‡gäˆ^úÞfÊDZ·Šý„BÁ‚µ·=Çú²›i^¦¡yuˆål³³¡gâ¾ ¡Œ¿—*ÔíhAƒn.ôˆ”¼¶Ræ ¸ §¦®Dár¦ª<$ìéù¢DÑnvNN0تá^­ë'ï¹Ë§_goÝïO¢brŽ=fË`è?ÒÒ¤-‘#MK°ƒ¨òN–Hƒ?AÙÙjLU†®“Ê&j„À\ÆH]0Ô \»Ÿe´4 ^dϼÀò‹äRrÄã]Е»Š Õ:£`µtŒ|²t´[GL¯ÆŸ•]Z CN‘]Ç -|Xê^qŸÈÚêå¹ V¯Ù{ Eté¼ÛxV^ÅñÄ¿\¢ÏQEwµ~JÞNðêNY¼0Œ ßD+¦‰O&IîpùÂ㣽\òQ.«R”X?0&]q iÄ¡ÚΔæÓŠ÷öìªû|¼}gwù¥ís£ª w»¬éºxÂs¬UÛøj¾4)öé¹nÔ6¤×êÝuPÓ·ª|¾àÊc±iohʾ˜\mÖl!!6•ÿ —©‡ë–=ëâ[Xóüõy=—õÐäS …‹7%Ž„¦BIçd$ç=t%‡ÝݧÒû›·c¡•œRfɧˆÖT¬­B¯UïT?¹¾‡ãªmµƒ4L!)~þº¦*í_ðæ˜Ö;fg¤¾áí¥é‚cvFúõ§ôwòx÷n¬eŒÞ*¥"fïÇ$¹Í‘תsôà óçp3_ˆu]7äH×!µUìp†‰rb}5PÔjC¶èvÐê玫r6Þƒ¾aGki8ñíæÄB®$Є†! Œ~LõNw®TjI‹Ÿ´šuvP^‡¡OõkÐAõàaüÓ1„Wé1fàQ¬íEÏV|nE?ÆçxºÏœj•mWkŸrý`y3ûÄB†:~,‡&ºæóêHûöĆ “£cÅö³púøöê©¶¶yZ¼>WêÝ2%©Ê ¤&ÁáãÛ´ß¼w6Ù­Ú3¾˜®£èŒh5Bõƒ“0•¶Èt4 =T¨\ÑS®k,6UßÁ–`µDÖ1'5ª@Øé¸YõL¹X”W·Ñ“… àËÖÏÑÅÅâf3‘µÏÑè.è}zí_pæáÒ¹šM<á5}Ú~·j¦úh²ìõß'šJï»}D9“äMEÙ¨WÅ—wVhõ]þ”ö×Ö<­Ÿ§ß(~³Ûo\ìsÛÏÐ</ Á  ß܆ŽbÕØ*žÍ—yµ‹A÷dÆv’ù1Qõ¶yÈ\þçCÖŽSÆpÖôŠqÊ7mÉ.‡ˆ ÉùÞ¤‰zÂ]ÄrÚšé™!k+ŒP—Õ“÷±0“>Ÿdõ>¥øˆñWfó~t8s÷²R϶ŸªmxÀWB%Ù’Ü`Öf*QkXµÐTîµB`À;:% Øš¸"žr¤M-R3¦@‡^,ŸóÇô5°© Þº¿W´©–-ñ¨@]{ëä%€!TÉÝe¾"bE4Xæá+ÙÀ«S˜ƒHŠ#´œÂd›®P5íôº™…ŽŠYëRUs¹ÀìÁ#é–ZŽB¥›$ï6Àéh>*{d…P©MåæË—à!aox!˜M`-ã‚YÊn-ÛÖÄ=x¶¦†Þk÷ÝjÔ·· xà^@˜š¦UÙAÎäK^ }!C"ž¼êÿT X |š ;;tc×—ìKøšj2ÙAÚB&%p‚lÑï~c7FÅ1‚­#ÇâŠx±î ršCwƒÏԺIJÔÕ~¬T&œ¶“š_=,Ô±îÝ´6HAèÓ»klRÎ&e ˆêÀKIŒñJó〇õZŽSå»T?`æÍÅÖéÜßJ9@MwêÅÈY¦·[/ÈOE:ðd¶ë¡Š$ÞM¡'®¡šÂƒN¿öÐù³Vp65t~«õLÍådßvŽ\Œj é–=ýò–RŸmÉ€eû8‡|À±F{ð¶äëì—¤h¥=°w‹Ù§%¼PohQó®sØH±Ç7²,ŒÜ2´ƒ .o²Ü’ñ$n"ü:¹do¸wý¢–`]{ìÀ“e`’ª>¹[˜I‰ÌÛy²W]…Èí ACˆ¼@±Þ)…Špɪ"~û8°P<Ââç'©‚’͆â<¢ú i®gf#[¸çÁòÄ{aUq{›ò±Ýg{¾!«g¾±zyìðþK«Ó¯Šy bU*3m¼¥ìû2&yµÙ+…MÂèÙû:fÌõ_ÂF¤àÂ|ßigLd«/`m>F&è¾$Ûi»‚Á2Žóï¬N†ûý6¡bŽìƒû/0ϪKJ… ñÄÃ\&WðÈë1x©þ-þBïÆS±ýØ3Û†N.U Rú¿8«Šò˜Ð©Ýv®vûTŠ$/ñœK•cÍ?Ìð®ÎVq“žÂF‚úÑ¿43™÷ƒø‘‹3”e¸˜¶êØHË‚öÑî¹Rw´±$Ù™öNh/ Ýke0³ùx˜x˜ ôôm¾ð2)ã—ÉDSÇÖ'Ãhñ“ýÁ`_4¡‹ Á׿Ò)ªx]÷ !RE7肾Ÿ#4ÐþÌàŵà/C|åû1 ºŸÇz&©u=7y›O*ѱqûSöñç*·=Tß›ò Eö)›d/ë ¦ÖSÒKV«šHÆ­„'<ò˜¯Øch;‹A›H²¦&vjpD~3™õ…_¼Ì1EÊ6×xÃiý-Œ^öD¦„ZJü#¬ µ‡ÞcáäDèýú :HUúÊmJÆ&å PxKͯº3èœs‚¬¬˜o3´'%?®pS!·X&féî³½ÙÞ¢l rßw „¤]9‚\¾)¤™¹O ÔQJYzgiå,^S%àf ²ö¢O¹”HkØ>4þV›$Öší©½ÝØÇ2Éì 2G+ÂNíKÍ-ýf[„Pi÷· ¡ÏÓ°2Øz«DæoQP¢Þç|æp­\ÍÑ>"Þ}žÇÛ´)XÚ(jŽŠ>fMXÝÌ óϰխ"´=Tåw·[o„øfK1ÙDÿöWÿÈ îæ&Î÷ íÚu^hfk w©è`rå$ 2ôø¾È”hìoZs9×_ 1S­Å’Z5`ÉI¥()÷×üмò›øæO‚0gL³t O®ø2öt&Bú  ¢ÇëTß_sÞMÜð–Âô75‚ä"ÁÈZÂrÌëúù‡†Ï3î2êð}[³¿˜C“OëÞb»É¬k²c:Ñ`ÄELÉ#3G­³©è¯þà~&»+&©ë^ÆKî}(òÙ&@ûêú˜{?®=\±Yä7@ŒõFäŠÑlR’f/R(»9þ-ņ…y¢ç(´:;e¢OãÆÐy^mZ‰zM­^g5g^¨òýÖáU$DNÇŰbÿÁÖ ÝKuÔñ Ô ãc^®`"Ýí)M0ͪ£èslœiÜ›º ¸1NÿgQT[fh $:ýµ¸c—(…ÓjÛŽ‡…%¿ox©RÇ䥈û쑨ᆺͯ”Çߨ‰ªR‰j—¡4º‰wq-øý¬ÈÚ,5åoŒ÷´Æèºì†SGTĆ÷K§![*#Å5$£*$œ\¬$ýT‚û°„#ŸøY»ˆµÁôRd Ý^¼«^8^ã-åFéÑf¿%‘¦»…:hú·³~@÷Iþž÷`O^oHöwõ}Vúì·1¦Ô§Åk §ä ¥áduJ5Û¶—XxpˆTª’‡‚Ñ"°â»ÃïT¤Ùp [%B:êSR&f»êN+Ö9ª¨†ì&-ÝS ³%^ŒŸ«‚ÜMCs!6ä®Ãª:gâƒ"I­ë6õºr%qé¢ò¿úC»)4·ö»•¯èeÎ./¬î1ÓÑKºbÕ˜ó<¥u.1¡"(iÖñœ†Ô N—á·å^ø·âÖ™Íàwû¼ùó³~ Å´Ÿà‰Å%Û®i™­‘»ó4Ú*~ Kä7|»hªKq¡Š8múý®´§^LÒv|þþ…W¼îAÑY^ùIʑݻ("= ÷\q´8¶²ÏhžŸ™:™ñU¦A…3Þ2(¥#oCMN‡ ®IVÑö$™:&à¦Áœ³‘`¥!‰©›µ+—JUòføgÏæÅ¡ñÚG0½îª»SÃb¸QÙ¼)Èô‚éœÕE8t:¾ ܯ(&éщÁɧÖ÷›ThÛ_ïŠÖ¡ýÔûÔ{'BcPo¶»ÛÚøCÉÙ;8Ážƒ=õ˜í5L‡w(ßÈ&;…\ë«Ó•tãw¤ly¿ I5µÇÒåOÓlTcEwŽÐHc˜dí½ cF²IžöðëdNî¤MÍÇw®>Úú«ºŸ(%IóŸÙ"݃G^2ßñéöµ+Èv‡[ÊAÔ“p˜x7˜BÇAsñtVpÌ+FˆêØEõ×Qø(Þ:À(I„âÿ:—ž‡™ zoø†¶¼e¥ÀØPœÒ1éó^÷w€ñDIÜí8˜§_vã¡-}ÑEzQ˜ËuR‰Ëúqn m²±*Ѝò¤ *t—®§Ú§×Š\(”úº\Ž{$¡Z”Ón@:½•bB¶Øõi:¯oDÍø&.æGYˆ´®ÚôäOF’wÞ^×mÎëÔÉr'(Á®\º³pDMÄôˆ%,›Z&‘Š”¨µ™ïóI/¤.-¿iåþhjs_0o4·í`àÕ7ÿ&€÷Q0÷BYв»O‰¦¼ˆî%¹¶8¿Ìµ%¾<¾ÅJM7¾ã_cò滲†ÇD$Ú6¡jƒ Y–Äý’SÑ$¶ïÓ-i”ØØëƒäÙŠx×^ߟH³Hr0Ã$’>ÝQ@vˆø­Ñt§z5!kxA µCˆ[pÏ_çz>†Ÿx¤µ:–œOèjžQ„–ÁS‰qÇ{ÖÚ¨¥&u!‰zyMŒc™Êò>|P7rqä¶âÕÛV#Nƒˆ|B•–Œ?xÑh‘ƒ¢V..yhÈD‘ß°6Ì9Ì!Qš]b…%Þë»ÈµEOøÅÁÕÍ;á®÷'0y0MOöEžáùÆýÕó«C!tüÓd“º½äè Á›ƒ{l"íÈj¥,¼àb29RÓÊê_Éœ´õ'ewS·ëjþ|HU–O–'î_õ%ÎOaÂ;£RÕB|D½waÚu£fq«GÆ#-j´!¨fsCu)âS 6°w…勾.i˜Fì>qQup9á'®³B‡Yr±ÇNÄ•–³ 7[;Ô«7“:eïJñX@Y–_âó 0 ì'tžBÄg! ¢Û¯üT?̓‚Q nQ›RºêèvëAÊnvêÎL©ïl.³!kÖ6z~%Ã" ƒé3׬ÅnŸ‘¸çY–/cúk˜~(f¥…&"¹É'õyDóc‡[•ÆK6šp®¨K‰eY1+£4¼¡Ã޾Cö3Gƒ›„É´óØG zr½gaœ‰B*Á­/s„›Å1×çCœr“ž7—'y®‰¢šÎÞŠ‘+ĵ¸ó¡òÂ-ˆW¿BÇ; ÿ%Ì¡_·ß°³œ˜ý£A"C‘i]äwe÷Ûå ¡ jãdC >¯>èUçèÉ;Þ‹>¯ÞMí bZuÓ†N«J¢_³ÏÎ]ÔYsVƒ÷Diœô×iWò¸&žÊ2µÁc’Iiy•Žt c¬ùœ1Ÿ°Õ’˜kåTˆP•töc´*! ì$êírf·pL–-ïHçœIUë‚}{$ Ê8à jëR«ÀjL×Î1ÊÙ7¹‚i»X>øSqBšcY;×EGÔAÙa£žxë¸FÆÓÕÕ¿¶i¬¿ìi.2…{Ûº†çºRôø) ì¨È²tí¿/G ¥ *œB¾å‹‚i°t¿û&á ;àÜd–·bŠŸ,©ätoǘñqÃMo›«“h™hï &»M.o5¥ÿ@?mrÀ:öH,}èÃŽ²º®4Ù‚D@âÍú ÆìXMGs¬b1¥~àKÖÔN7™ùKœP´åkØM91EðÌy!þ- ¯â)gßWó]v"žŽ>­°m•K—¯áÒO¡Þ… µmx×*}€Ab¤º…ÛÃçǸUj3!‰ ö²Q쌰Lg7øf c̆:³°`dž•+üD°¨1ƒÝ˜øª=ê×¶À²\ê‚ñ®‰Ô›$%¹+Ê ÅIŒS2®µÎ^Ö»zíD?)ņ̃ŒÞ~wÄü¾„8Ž=Þ=ËÇi¿¢gt_ñrfÍ(b¢ù~Õ&Á†ñnÕbóšâÝí-5üC,w´¤É@ájöD®&×Ó\ÐÑæÂ~-ëúã~¬ôÌìX1-FÊgNÔ¤±:<Ž“©òj–5üË3É»˜çl÷ù›Nþ Zòû˜qmGR?.#:%{|ÞLÍÏ´é+¾£¯´º¥§¯Zå‚©ÒMQxêgéìú»mq¤(×uZ• ¿'l&wëí«\S;€z²q z¥r-äjé¥É7´w„à8¼è'hà-x ß7OÛm@‹A ‰y§y¼{tšNSã/ë9¦ ®ä gÿuñ1#íÙsåPáÉfë%k7‘Ü>˜M“ù0kTTûìBüEDÄj9Gƒ-¼`Æ øÈgèâç¥bñŠÏ§Ææ¤íÕ™ð¬ Ú<À›ž,©y‹2[–Óë’D O”·ÖQŠH"+t™RóøÑwã<ñ~i~`Š[ÃçìXqé£Pñ‡r ±½@ß©–-÷ø-"êï§¶ñ#§Ÿ1S\Û¤Õ1½$ñ#öÌ—^˜ê$¼¦ï}Hys ‚ŽV}´â¤W¹ K‘̇j² x¤ Æ–xò}¼4¾WÎ+¢L"aýZô$Á <,ŠÒÒíí¾5Ç„ ½ñ¾Ò&Ò­¬wuÍiÉ&Øéàj"¥n&S¬»3œÁ®*<~LÚ>={~ñ>žpY˜‘Ù:byP¢ÝŒê*(,Ð*Ž Mï™ò,_¤Þ ;D:ÉÔƒ"µJ&~³aºl&ú–H—×?ØÕ|ð©ÏTF ºíIÀé6½Ÿ£0“áÌZªbÝ–ræ†Ç*I¶L –ù˜úÔlf%ýI+MµYÀ11ÂvgM±H3–¹6S=jò1utÄQïSEZjQJ0ÏŽñsKøÉ96Pz@»Ùh¿ÔãS@«EMXÚU†Q6¦HúÄg‰zr…€Š(kæˆdéct”–øcG½a^$!xƒÑÛ^Z}¿BB’‰C“o”2ŠÝ2W,èe+möbfÆ—zÉîuò¢ Û è0l€$ñ“vhŠ+Bß¹ðN>†_ËÔF“/E’_ØÎ¡ú€Hå“s\`%†æÍbÔ˜W!{žWõ)Dͺ ñtú©xÙ&úŸ­sóFŸªÂûº,º¹ÞYÁÍ“{ 6Ð>†{UµÁ×0r|Ý«T]=ÕBæH=/ãBk`æµÌæÂ¿µ>#¨Q8D Ø9¬]dá@—/wa.›÷Öì”?Ô¯|1sCÉ© P ¢Íöb(}³Óê¬Ãüµû¤\…ŒB²ø½dÝ$&í’MÕçÙÈqºöåm Hƒ³’ÛN…) 9?CûE+ Ú]ÆðdÙ)¼ õ”h[ˆotK©{¡1doa._02žŠ(Û¾è† BJ‘+ešš)Ê5o»ùõÌ AfCßð$ôš%zvuxž kòÓg›lpg"ãñø÷á#­OLÖÅ"Nåñpú­<»­x©|y«Xåçࣆ`Àë:À‘µŽY›\ò3£ý`ÈÒË|d%Ëq+d‹ˆ%ÿšR&^ÌPªñ[A-ö©Âqñ+X„äýœš…¬=åµK|L_EÇ´fÔ\6žY;ý‚¨mƒ€Â-Ÿå®á¥ÞWy¿¨¹€QPˆqŽ;¯ÙºD³}£ßil?\£xªýÌ÷¿µÛvp’‡[˜?YWsàÖ™XÁðï&ª½9Ĥ­ž¢–…¬£Ðá1i6rŒÀ|/V=M“<Ñ7ôÞOd@¥=„yîé®É„ç¨õŒ5†ƒwû°V»òLÜ{ÿDSB+*ÎtŠØÿÓ`³ã#͘+Õ<ƒH0âS…ÐiüÍvXÂkÏz+8  °!½™¢Ïz 3nN’¥I©£C\r6{‰õxFà$¼S¡Ý¡ÊkaÝLQ87mÎX-ˆ1‰p/TMõi¦ZåÚЕ@JÀW¢9­n=W[ÁI1|ÿ†Ћ׹_\Çf«ñvK¢•-‹ÂÁfÞZ¥öGnwçw¥7¤(Z˜œ¿Äšô­Õ¤¬]¾ ²˜‰”_Þ|Uá§1¡lá[êÕ\ïÒÖÁ.l¢°—¹ ÖG^ÜÁ»ð–ußõž5þ?DzP endstream endobj 1313 0 obj << /Type /FontDescriptor /FontName /ILKLYG+CMMI12 /Flags 4 /FontBBox [-31 -250 1026 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 65 /XHeight 431 /CharSet (/A/E/F/N/V/X/Y/Z/a/comma/epsilon/greater/less/m/mu/n/period/phi/sigma/slash/t/tau/v/vector/x/y/z) /FontFile 1312 0 R >> endobj 1314 0 obj << /Length1 1436 /Length2 6521 /Length3 0 /Length 7496 /Filter /FlateDecode >> stream xÚtTÔk×/©ˆ„tËCÇ Ý Ò’Ã0À3ÄÐ Ò) H ˆ Ý]JHƒ R¢ R’ÒñzÎ{¾óÞ»Ö½kÖúϳ{ÿžýÛI×€WÞi SA"P¼`>@QKKM ò@ø@ !åûK4†yx‘‰ÿå èƒ Ð:% í§…DÔ½\`AXD,*@ ñ¿‘%ˆ7Ü ÅPG"`žø@E¤›ŸÜÁ….ó÷Àå€ÅÅEy~‡ä]ap(Ђ a®èŠPˆ À …ÃP~ÿJÁ!åˆB¹IðóûøøðA\=ù2œ<8Ê ó„yxÃì¿´!®°?ÈøðCG¸ç½Òåñ€Ð 8†ðDGx!ì`tq€š&@Ç †øã¬ùÇð×ÝÀ|àÿ¤û+úW"8âw0 EººA~p„Àîè¨hò¡|Q<Âî—#ÄʼnއxCà.[´ÃïÎ!y= ð/xžP¸Ê“Ïîò "ÿ¯4è[VFØ)"]]a”'þ¯þ”à0(úÚýøÿLÖôAü%ØÃvö¿@Øy¹ñ!àî^05¥¿\Ð*üt0@$&*(&€¹`¾PGþ_é ýÜ`¿à_j4‚ 7¤À ·‡¡ÿðÐ=ÜSî ³Ó…£ Žˆô÷,Ð5\à˜.ÒþëÅAG@ÿeCoÔýªx¢'öÇñD¯ ê÷pÉ0ô’ý»ei÷k„Eˆ>šhIF¯­Ì÷7ßü|$ @cØ#=ðY\Àù¥ú-Ab~—D°8€ßç·ø¯¢P/tW¿¹‚îèoù÷{ƒù øsÓH¨d¸S]xûi<ïê˜înÆ©©ïXªOyÒúk²ANö¼F™Ê\/XÅÊ©K[ÁýôÅ—™Ã€•zÆ?¡c^F•IÓ7ǘS)'ôÌÓÄ-y&i ÷%Š=ú0tâî½¹#kçÐg$d¯ë™Mña#/QUh×î|SS’­II/n¼½¬jµ0\>¢fÏ]vM ûo“®ýœYCªó ?Ù§úÞRÿÐÀI/ÃÛ¸uïÐÕ=ÖH‰²ä½’Ðíjã…|¢ËÜbï­ç¤¶ÈT9Í'9SJ’V³úL¶p‚£ª‡\מ¬y½’ì~ì´Uv™-ÿ9¼A„Ø-ÛFoäÝêúÚÃõ#Æ›!jì[í‰U‚{r/îo¨¶ƒè«]zˉFËôÒç°ÄÑó;3ŒþF L3CÕø«#­ ý˜…Û$" »l;¦LvÏÌËÅõ8¤|®™<+ŒMwØzxmhG%ÛÄE£péü¡d(óxBq1Â-Ÿ¯¥5ÛV vËú y+¿¸¸.nŽ~3ã]—}ûWµ¼Gv–¡Dw*®+•úè®z­'¨ÙfÌÙâ:w:!¯<{Jø2æ‘M‡óSO¹ïxÏ“ÌT›¾—6Fwl”ʼñœš-)ȯÿr2ž®Çþ Ø]`w¼´1†½’tÛý…!Å)ÍŸ O5·£áû&.»’<ï 4¥zu­”SÒı÷«#GÏ^€ÄáQ}¥ßßšŠ2êêH°è%Û¦ZìŽI–Në"R±Ý'úZ!”‹—¥Ý v›Sýз ¢2‹¯R[ˆã®%$\p€âôôÙ-áÁve™a‹J-žþÌWù„_ ùw~jÛwhç´s„¾Ç[þä´5ñgö¼|x(^= šÄv¢w»‰‚– ëzmÜ›þô’ß:E+à‚^pþqéÎðçæ˜H>ö›d¤XÔ(aØN×§ÔþWÒØÀ2Á% ¡e㋚ÖOî9º¹žÐæîœ¨â\ rI¹½NàÏ zÓ+z ç“Ò/’ohä¾Y&8XnÆè•…1ˆS¯ <ŸÇ\d’ÿ0ÜSKÃ5Âôv¤æ6²Ñ^¤½(ÝO’ºï0»òîìñAqBÈZ4=)NR8yªÆÅÕ–X¯ßÐæ,óü;£¼ë;ÜYý©ó•áÁùæä²—$Ùƒ®’R‹ZüóÓ§Û»„HÇlüL Á曊:bN§Œ¼I½ö'—¥S>Ïó˜`­1q’õ·gUtÉETë´n?q}ðÐôF\ÏËÎýz]TѼTh û…‰%s¾m 86ª}«vÅäýñ‚~ãB†¨¾5‹mø¸©½-Û|4å[³ø»Áltð S±&_'‘òW˜u¾â‹è¡ó<‹°›K$+QûÊÛ(“Ëʨ­«£™¾ª|c.2Úl+Þ‡ªŽ–IgWÑZ=vãl5>öȰ•ƇõÖ¾™M:ùN S¾á3bþ6/È¥ú#Û#É –¨ú÷8œÆù4ôÍâv]R°xEþHmíþö¬(¡?öqúYt¯&¬Éw«ëãzî5^xÞ=Fºíî» -®”7€€å03Í7ƒ7ÕöÅX'ùSDÅÕ%¶B’mA¬ûôTÔÝ$øØŠî”Vl0>â7øZó.„â,¦»YôÍÞa¥*”¡»Yz§×•Q{Πò¶D‹ ®TÏ”D,±ò<|K,vZ+ãåœ]á§`‡êu^Ü›¥æKg.Y+[é¬dÊüåÂï$t…¯¯y8ÅòI?ôM¬7øX+6ãÒh'JL®™=ŠÚ0ØމïEίf“ëÃDv«NÅGôk>Èfoôv÷ºK(ß<ÓêßÖ¯½¦TC.LAgE^rq<ªÖŠõàåóõyØ 5^OÃR˜MZõLÆ8uÎ;øMl¨D!ÃQÇ'ìXá®gkñ¥x£e±œ sgô‰ö$v^§|‡¨;I7GŒåÌ*’¸NÐÙe¨êâM5¹BÊŒO®ô¾í‡JÂ1ËàŽ<½÷PÙퟥ Å87FÓÊ1«=e^Ž¥¼=.y¥[Ù=Üžeym›wîVëAã ît_;ý>{¹T—dšaÎüro ]Ø Þ Ó"ÔUð´ S|D'Æ<¾ìá|sÆwAܼºw/~nlk~WY»ÿ{ÙÞøsÂIA§Ð»Á!€ipWR gýû}îÛ¼8ÃsÔÃsµ\1®_ƒ8’ˆ’nuŽ›õ>5²š”Áç~S¨~_Å.…zØY[Î0².!=ðÝAY+n£ÖëF/ÙÍ8„ÒMÔ\Üý‰RíÇÕe£qN¢–€%¤7ñ 𖃱òòëã«ÀZû9þe•D²3¼gÄúÆÞ—O­Žqöªî`ö–ò>s›õ}°sµ‹]Nü$çv°,ûíõ8‡.ÿYJ—º’”¨Ó½Mž—«tcõ,-EÏ[å›U*3ÓÌ\_DXÝÝ–‹ç#+šõœnKÚ•¡³g²¤ŸQ'y9ùAñÞƒ«/ê¶z” “~ЉíU&žs”ß{j–ÙbêBÔ éHTF«ït†‰¿?aã­ƒ±¿wRÕÝé] ÜIóva9fÙϺW/všG¨ºØ):+šõʲ>M"3Û÷YYæ÷£±·ÜÃß”9Åt·ZµI>9¯ëÆ Y{Ä^Ÿ„ms(xóvã`Šcm\>ý‰ñQ÷†ÿ”¾“¼Ï©WDŒ¥=Tãž·‹;ATZÀzóKjùSì÷:ù›rO+»â_Ó­ø‘0€wTúÊGn§õ„qÆZ©h„<Rç;}/Ç0$äO¼8î|öMIË™†'´WDñ6«Q 2-†“WN{VMOÿ4ÒM÷³žG£b7¼"s`ÖÙÒ]á#[aytÕÕ‹gͺ†&AìmÂDï6ïúçsýsaR»­Ÿ)ÞàÒ{:ç|Gîßng ?•%÷ ŸH_Vn|Öx¯Ò¼ ³g9ùÅq‹º ÛsŒBèþjèó™Ø#šûCAÁÂJ!«®JFiíŽSÁ`-Nçw{³xœºÇx@^~’@ÔnKÆ5´ã‚*8å«!µã›EÇZÌý'ÎéQ]í Oš¢k]GK8›3;¨c7£1}› q·ÆÛ,é,Î64+x\O^%,0kÚ/æq9¼a)²æR¦ÂJÃ~eêNðôS¿Ý-^O“o Om6p,&ãØß]o ït0-«4|œÈ´¯Sh™¶Ÿ‹è](æàĨ¯ÎdÖ{²´£îsçN¶Òm‘¿âÅXÖ´„®+ñ€×)l^•K=Âl£??eÛˆ"ìk{€qDŸ]„· µ(ƨÄU§Ïsºä-¿®"ÑŸþ2l=ž¯ëß§7⼺ˆã~kJ‹Ó%è´Z§Üe¾× ¿Ðc3"(X ¼ÅOÐúQÒ¯ õÕUïŒÖ_E3Ãøìh=^s÷Ì¡J{>çu!Õ—š§¨Cƒú˜e³³üìhÚºK‚,šèU-'î² ©Ø@ûÐC–ÒyGÎÚM)Ú*‹iª8š5‹WlÉóiÞmÇ×@:t½ÍØevÀÚ«àÚÛW´BâOX;>>¡PÅS™ù9rr ­Kî›K¦•d´ÖL\N‘¬ûñ(/íŸ-}4¾è{? C4zÒwxû|E‡wÎær uŽJd­»Ž¸CGG9Å´¶_'µtn>¾ÂêÇП;_ÊÇÉ‘ŒëëÒø¹²Ñ{µ01ÓªŒy‰ÊJI*jg¾Ç ç× I©œ&öy=ÿó 6È Êm‡CoÂø(ÿ§-‡Èx´ìÔzÌ)ÿßòS‡ñGGiÞüPŽKë~«²xF ›€QÙ¢….£‹Û3·ÙòÚ0o­.O]ß™Wíu788ãÝÀ§C‹·Ûí)5Ý- Q\}£*ì­±¦|7þÂtÞ²~ÖÚP+éžJœ|Ÿo •t©5ñO9LßqzTÛ½kä`æÞ¾º³ž˜`ð–>­aqÏd”\Êþã:\§}dG¦ÐT#AsW€¹OF¼š5&‡Aâó^¥ä·à[™›$g|eaB•š·˜ôÔ N.Y$J!3çRe^ ót»4ÛÌÒ—˜bbÜ|‚TW¯Û¬fIø¶„ÞŸPÙdÓ¬=SôO~4³|‹6vê´â“`7vë ™QÛ£‹’LøêG>!–ÑÈÝþ±&6iZפ;ã†u'Ÿxp×÷â'¤G»KÊŸ“*æPZå/;^¬-©,;Ôí·˜ ¹4¦½ù}Ýú"~îmÙŒ¿z•!$ØÈ¨ò¶®Gc ‡z˜B§Æ(ë‰nŒ—>ëÌ´âòíü!I·ZÔ,oRoÖãC݉f\ó[©™ÜTõV¿Ôõw|VZøg6Ÿª¦ä¿pÃm êiÝ_ÇÙ;û¡4«¶m=Mk‰ó@ÖªûÜ ÷“¨ 2Kš‰ûšq_Ïï»»øæFÞHRxñòGßçâRºÐ1ë!9CxŽß0UTþx…‘ýé Á•êó„áÖC=‰Wƒ/È ¾ƒ¦4+}//kHôÝæ–¾ä8šÞ 7=¹GXÞP+øm–×.ÌìRTÓ ™)Œ‡³ûkugÉîà9÷Y€<µH>qsÃSʲ²§b‰Y\Ÿ#zbM ërŠÈÓŸ­Ñ‚CyÕ»J£uÎõ*Ÿ4¶W€ŠHÞKÐQHu¾ØlÜrÂ4ü–×dæºÏâÅÒ«i³Ð¬ƒY,_&s“Àg•w¾Ñ¢Úi*եܣns†ê¸ŸÆ3džŠÑ³qªÍo&Ë%W¼Œ/Äwå.1rovxßkh¤kÍÿt®xKvžÙ+¥u'¢©£@R.¾P=öqv-76-†ÙV„C;á&ÈΘ ~L÷•È.'Å÷ºW2lœŒ´?Ž€òI¼}ÿ£%ö.=äŒ?®Ú 8°ìRòòæÓ./fj­Ç3‘ ž•Ë"ºr‘¾/…z2NöGú$Å?i ßþÐ\ßé+ž'j › Àó$bìÃ*vJÄàx»VZžBÕ$ÜØõ…òÑ<µAÖh‡âpÓÀö¼Èš¾S&¦(°/SÛ2…sJ¥…G1É p‰Î æxÒñ‰y…Ï¥nW„û{¼I]·¦ç`pÄ|ì3 Æ•úê ¿ð£¿rð“ØkkcÑ” Ê!×&ËÑþ‰îž[¥-¯jŠu|ˆïÁpCç5¹XhôK–ÅÁƒª‘Y°0~Ôê‚4 /ÑzUh§À܃^ÜB X)ìÕɨ”õ'Úhh³çrbTêókN有¢ZIIŠÕc²”@Áë2Ýp>§Ç k'à€—j/$Ç n,ô)ÄP¸î'3Í4+·:XUAÅ­ußÉ9?¡1 .®v]3;eË9™UÇŽý–f eÊNYOÍ+ÓHMS”À(Š=Y*ï+@ípÀuþLÛ¤Ó—ìÌë Š(æA!`€âVÖ¡C_™.u+|Z’Ô0O‹ÙZ ‹OUÛH%c6%j<º·7:u¤©ÉÍïÒJúMox»Ò½Ó”|¿n7ËçhbÔÊd˧÷r¯LOÉ’:«ç‘œØ#ŽgÌ×'¯Œr(„ß>×`ÆœV2¼>ć§gxÑz0Eº¨ð8íIU›RëÙû*~kO5•¸{˜ üàò8uðµûpËÜõÄ6"ï^ >ÝfgKä@Ê®«×j|Ûõ6 q[‹#y_BF†hj Þ9eKÐ,ÿûÜ㯅[~‡:—ýɰÆBm'ËÁ;sØ–âA¯.¢p÷ƒïF SN•'Ê“U¾*l:#¸Ÿ‹ƒð—ÕL»­'Ið0,úÖÆräÇé™X}³s¦ƒ¢æT"þ‡Ù æ’ñ”—‰÷Ç]ÈY²7óo‹S¦(<Örê0 y¼)8Y9_3p¼…P¦i ¶1Üò,1ol"Ï}OW§]½ø1æ´Ì§ô}˜Ô«˜ð®€Ž^ø„&÷È jaÇRÒp†4·Üa~»·”ÜÒóWb+b—k‡’¼ÑD¸Õô#ckçÖu©’%:²ýÛRº•²ÄŽ–«©(}?†[=Ùêãâ,ìm‘FÇ•Ónû°¤˜³Z9×¾z/˜yMQ 8˜Ï´Úa5Znïåú÷g=ÕIm2ãöm½ó®xˆá­æªVK¥zƒ[pÿ½×[ÜÜô…T𠃕.§s9ñéL‹Ï䇢ŸÒÕ£Ïwe¦©žËÐaE>$¼†(%eìÎÖ6N%ÈùÏâd¹O ¼Ÿ=«OëšJ0>q~+`Ã{<ÔIÄ|×ú²¯ªø:È8øç³:Ly›ñ,™X/•-Ã!ü.ü*9¸A¤¥2£9L$ì³ÁÑ„5Sr¦Ý÷ºóš¬÷2 l6Y>ÓFµ˜ê6 è ¬[Pôɸô¯ô»¯`zˆ†Z6žÔ‡F‘j0ì)Ö\6ü¯;rI ˆ¤¸ò 2]9Õ7G+bÖ”ð3©€™¬7€ï£`_Ü./µçx!i%>ãG¬g©á]u¨ÞIvŸÏgteUk´Ü ~FÅ#J-¶vb­†-é-Ùú›9jb+q”Ö¶þ#kN®ªê'Wö±‹<É|w7$ _Ô=¶ˆ¯FŽwp®Îž‰_a AKMsÓŠä!ŠÄ­÷,¼(Ì .Ü{{3íœWé>kˆ4v B¾Ë)ˆ§ã’ÕKW“¼Oú”£Ž3Î7lih4>JtqM°l‡?áÑUÓÆEbˆ¿¥W÷` ›:%¥FÒÓÿH[á僖Ӊæ†vÓFÞîÉ’Ì‹yܰ%øÜû{ß0`Äq¾2Su©ÌX.?ÓU-U–¾˜7+GoDЬܹñ·&,YÑÒ/¸Xi ™ æfˆ?!O %Ç/‹ÚX%Û¬ã%$ºC‚$oMù~i£M°îê¡‘* ’ü‘‡¡°…4.$ðg©dÆÊ‹8‡Æ…Ðd_ ^šðDGn‰Ù*óÍFkíŠÖž¼º@ý¯ì¶&î^uHŠú,âX6ΚKß<ÉI¹-Q&š‘^xi÷+ªjtYœ"`¤88œè¸àŽï´¸p€ÚñÌ‹á[É -±úæ€Ñ6%š4µFÕô(ßÔ§÷dt\˜a§1¤o€8¾ûV3“Öa³¿»E~ã<‘ ¦#ºm¼ÀØήusƒZßmüìŸ@<¤ÒþºWð5žPÿù¦Ã{`[µ–%þ—È¥ÖÙ!WLˆÒ¶[yÝ`¼–²e@&][.£ô}÷ÂÁðœ/«›ÕµáJm`Âî¦>Žp)õ?饨ý ªp&#yhuÿød×W½³Jä®5óÏRÑ»ç&–>o2µ{ I®-ÖTÃD9nd†ÏMöiã!Éìd×M £´@€ÉîÿÒzé endstream endobj 1315 0 obj << /Type /FontDescriptor /FontName /HRIPKV+CMMI7 /Flags 4 /FontBBox [-1 -250 1171 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 81 /XHeight 431 /CharSet (/a/l/w) /FontFile 1314 0 R >> endobj 1316 0 obj << /Length1 1602 /Length2 8842 /Length3 0 /Length 9899 /Filter /FlateDecode >> stream xÚ¶T›ë.Œmчà.Á­¸kq) 8 àÅÝ] ·âÅ[Ü)îVhqkâVàÒî}Î>çüÿZ÷®¬•|ÏÌ3ó¾3óÌ·BOýJ‹]Òj–ƒBàì@.a€´ªª¢ €‹‹‡ƒ‹‹“ž^ÛîþÛŒI¯ vÙB!ÂÿAvƒà6ü‘§ …”\@_( ÌÅàæâúê" ¹ÙZT9JP†I/ uòt±µ¶?ó¯G“3($$Àö' év±µAª ¸ ØññD @ ja †{þW &Q8ÜI˜“ÓÝÝä〺X‹1³Ümá6M0 ìâ¶ü. rÿU&=@ÛÆö—] jw¹€[ 0öá ±»h)ªÔÀ¿È*Ø÷äþ;ÝßÑ¿ÙBþƒ,, ŽN ˆ§-Ä`eë¨Ë©pÀ=àlÄò7äƒ>ƃÜ@¶ óGŸ›ƒr’Ðc—³p±u‚Ã8`¶¿Käüæ±Ë²Ki¨£#‡aþ¾ŸŒ­ Øâ±ížœMÖu‡xÿ ¬l!–V¿‹°tuâÔØ:»‚eþ¦<š0ÿ±Yƒá>.AAØö°°áü^ÛÓ üÇ üm~¬ÀÇÛ ê°z,ìck~üÁô†ÜÀ¸‹+ØÇû?ÿ0@€¥­`¶¶…`þ“ýÑ ¶ú ?ßÅÖðšëQ{@×ïÏ¿ŸŒåe …8xþCÿ3_N=EE]Ö¿*þ·OJ êðfçæ°sóq€@ @àñÁç¿Óü»ÿ*þõÈöïËqý“Qb€7ðqo-Áàä€@á!€Çš}VPÌßcpªý6ýA‚BŠû7zô™ÿƒ}ÿF@.n§Õ@>§í@§ý?ðQXœÿ€dØ¿!?ð9€`6ÿAàpÂÿÜáÿ<ÿ>ÞÄëü¯ÎX¸º¸<¶î Ûö/üç­{€-0ç "ÁvµÁ­W5’dîì[c¢¨GéWúÜìc…&èð>Ù)ÓµD­wYKÊer‹½@9»5)ç«ì¯ó§Þ›uTõž¼ìTr»ÖTæñsˆ3IÞ—ä4s8Íyz©R”Â%.}¯(¢p;1Ä-­û´èqÞ0Öö,$¹3–Ê (…´ªµwÖ”f©¼ Òý±® ÿh>¨½ÅwF̘³î´m‘¦–A£,Ú~™è^»:04¸Œ×KÑ ä¸õ“.Ž'+2H.ËV­»œÿìWN‰Û÷ |osyéZªyԚĘƒÒùɈ~Ñ¢éÛeEØ$a~'ÆiËÏØ)²ú§]óðu ¦åÌЄYGz[Š®Èiú·œš"º\D]ÚtÀêœhaÊ¢}cSQzâç;,©e—^eaÈΡ— ž#ÈëÅgq·àºü(LõÈî+eÄ܉0ƒì<ãœ$SI˜àR©wµZd‚oö Úy%%¡ìÙK…lK goóu ª |ÿ„Zðj’,zÜ‹d–½¢§eÁ…B[,¦6òn7ÎxÀ€ª/xÚB€G|öë RMíϧ¼ô´fÎŽ³Òxñ<gº4CþK{ñ׿¨e³DjàWÊ-hºÙšÁ‚26‚BeßoÏós¼6r3TŽ2åÞùÏn¦·¶:¾&3øu‘·{=[oÜ“| 8½ˆ4=±Ñ5›W(]lÞ.–³ˆö:åx»‰_b‘·Èw¤_ííe‰É0Hà£X:Å´÷G‚£DAlUK·à¶ü]yvóPú—vWh}¶QÊ7­,yW&JÑýþü‰)?[ìK‘å((Û„Ú¹¢j–]¼é/7](Âý žM^É †-"àc&Ÿ¾è×þ² ‡$® ² à^Œá ¼O_ ×QEA‰o_ gÖßšKd#9Ò"0^mœ.[×GUÒ€7Ïù¨™Ol‰ RI•„³~ò¸Óá~¥¸)z KÙÞÞßyFÿ¦Ðÿ,{²áílýÃÓLu\šêîºîµ\Joïß¡›.Õȶ®‘5Z÷ã¼ÂÃØ£Ò€;w6¹ŠYp±Ò YäÌòÒŽðh²Úø"z"òð}¨º[çåV~ßTḵ¿¢çÅA–o½Em#‰Bš÷fzÜ-V( Œ‡â|1¼Òï)÷Ú¹{§¿; ÉÁ.sïb«!)k›<ŽÙnêm1 YÌ¡¤†¬4•»¶Ìzg2ÕI{»C]•Óûu‹ù¡2PM/û®‚ìÆdNà/SBñ™îˉÈZo4Û]Hå~£”OúŸN v˜& eø /¨÷cÔ-euøKÁù÷À”\ƒ£Àz㉈Ã-…“ri&ò$©%” "ÀMáÝõª_|nÙþzè.¦WÙµW‡iéy©_ Ÿ„é¸(åuÆ['±5.3Ÿ} yI>?´Ø¥BÁ§Ó)ǵw;,¶¯ªI„83d¶tÎRi¦¦LuK•ø-šæÕ¦æ6}œ¹Šäë¾ÿ¬÷ü†ÅXÿ½øíSñKteÃæð P; AÆ ð×øº~KCÀn³èò‹g ן¾§Øoãz_|†±"åä9:;‡¸ô*â;®Ì8#À9…@9¡j„QO¬- ^ÌÈ…YUQȼq(ÝW‰7¸î’²»´®¼ ©É,ñ1«þ¸‘UcCG”±M—§­ÐÇŽÏ(Úcm*§ï%ì¸y9ryÛA÷ú‰p“/æK£RÙ‹Íóéró4T´ï‹ekî$+õ±ž§ywôo©½­Ê|˜ÜIu|Tûƒù¡HQ½åBZÊ?øÞ÷µ†!:¬Z#Å%‹àŽ@Tá¡kJLÏ)Þ4×eÁ‡òÙãDéyrTqBûNÄ7Y„Ïè& Cõ‰×²½S8âus¤RÁ$ÐDÇnÓ|ÄÏHÁZ-,Þ|ú´z‡áa“ý§l›þ çëÖ»·®L¯& åãöh+Úý–;?´³eV˜\¼ÈˆW©²FNµqÇr¾!nõˆ´ï./ý¥ÿ—o¸ä«r¸·ò•“¸j¿¸÷Iu"…ãg¤vü)øøOh7n+¾Ò~åc a ½XªöÁ é²®x½³ãû,`­®e]™Ùç@k:hîà`†Ì“%¿_ Ú¥õybü ³™ŸƒüšþÂõçÍÚ‹“úŸ.NoRãÂø9âªF ¢É<štn²SÓºmä«ý9ÃÝH;>ä¬ôB×Ów:x\'$ýß¾>¨Z`ô¬÷¶·Mçñf,ËÉ ˆß0%]•‹þ:3ÀËy!‹«^(*ÉN‡RÏøy%º WÝèEéu»”¢4Êf _Í÷hÁµ:ÌéÎÜÓBM‰R9>¥(EÑüùAÜCÚÁê¥}÷d$MÇO·uÕ$7gF¸5§· X1K+¥hÃR9$4ó?¤M³ˆ¬sW\¥ƒôõmú"+T8Öéµ-\|Éaƒ¯¥35Gˆ›"ë‡çô,Çø«SMNÄ¢.4W;]uç=hO²Ä<£>Íe2¬>9÷øô$ç(*5>‹ò Ý37Ôþº±ýaÆÞCaJ€Ç4êûBÄlƒ Wža`¼Ö8ýJêRùË4»'|úz2Yù»hÔáçÍ¢L×à9›þ˜ˆ‚›¦ÜÆy©Æ[ ´ç$a¹ÛÜêûŸ5Ÿ3Qï+²Ô,WSÆÞ¥7'Ã{†LvОЈPs± a>A€Ë×Ýb¶?9T *àÄ¿I\¢ÂüTΧ,Gq4‹¿||★f0ý~`B¼cgn¤,yÒ$¤›<ð„|š¥8ÆÝîé Á°õÕðR Ij44Ke«‹ÞÀÉPuø® ü´(»>¾y»¥§2þó²-/š0{·•úuû¸C Ë[® ¾Ï¨¿_˜Ð²£ŒÔ+«Šj‘Ç:¯ÐŽ~g(Ru›Ž$ÜϘWów¡÷QÞéÍ#=Ín7Qîyžµi_~stFÒ€y‹¿^9Ú^5«[¸»¤¼!€Å6–XqD”w£A~ØXT ?”æCNeùb yãhéÐ~ùð0v7UöªŽµû†ž YÏ\X¼Kר-­ß{ͱ/ÌACRÜRWäIioØ~öaužÀTÎI©äÕË2äƒå8a˫ߗúI,ðX¿½® )¹+ 9EèWÿäÅ·Mx‰«>Á S îÇÖ˜pz±õäÞä²· 2¦RGP”gIÜåE.šÌCÕ»`!ô³}‡þ¦´ÖëˆãÅr‰ÌwŒ“¨[nî /m¡7vT†wœ^ßh.}'ΓWùú#JpÂÑ0é§é]˜d“»×òÉÓ¸%Ë#Ç•ë”6p"ðKÿAß±êâÁ±Ð.T̺¢PþPú£xÉ[²—äÒ+†9Ç"T䪰£þ„Ìf)^ŠeŸOGU„|¦ò¤1p†ÌÑ< ›¸ºj"“™˜K¹jQÕ˜µ{ÖöÐOlÇ›z“u!‘•’à£ñó~€Õ1GŽJhVf6oøýϪMŒ§1¨ù/¨ß/mhÕÝ…BÔ‹6£·×SiîtüõŠ™xÈ#æTþ#ÂÃ2Ÿ&ƒß¿lÝg|Ðxqð#Ô}ŽEÛÔÞû|¿f \CÿÆÏN!¸Æ3¼ÈÅ–À7©Wòô’cøôZgäÝM\V˜hŒÑ³beÞݾϊ'„ˆºF‰:¨¾¾åú‘DÇ‚Ô]<1½…—•QBÒ®ôݾjþ=ƒL»4^Ô7VkëEñ`~2Ší$Sï´mE)Çœxe‹CÓ†ù°YiLËçç´¯=¦sH¿ªNl´'q‰4%±úbØcãzV{m©÷ŽáŒ}qûÀµ´º6œe—›0}µª\ñYE H§ÓýDþ£õJ¶*rçeÌ6vá³¢Õ’sWÆOcŽe·ˆ[ÖHõä{®Ÿ TIÝ( £‹Y0¨Ý.Ë×]y" Iì-‹ËÜëú¼#¡‡V;¦òÁ†¾¾ÖH½Ùšpkˆ¢s¢ž©$Ò „ÞL¥Ð×s‹ƒ¾ÙM³Ï­!ù Û$¿Í¸Ž4ñ*0Èì¸ú™¡XGKA"ÑŠ4XÅ]űñžÏ§ï8ñH0rK`MëH;KôE3ìmHsÜ2Bô ƒHOtÅŒˆn¹@´dÙOÃ;"I}Œ=~ºiZ51à p `*c»…·+Ò°w1¦z~´½» y¶ê©íCú%‹«Épo4sÛ©ü–ˆn—3JsàHî*µ~IÜkèÁ(Jû/ÓCM¹Äêæ$ñ$N®onØþ”‹–ì‡QlV„*¶|®ÔQ¡ŠâT½{¹ZšÐ0é‡Q Ûåí×3iȾ‚ɤp·øì2ŽH+:º§X&½ÞŽ{uf¡±‘7T´»†_¶ØFï4nï5ks+Ç—QúŸFø‡ãTÞÑPk Zp­µÈçços,Mo‹|yyy˜¼_#xóüÞÑÈxjhŒ+éQ7än8·oG&ß­®Ø*YÌ6·ݾxÿ­ãC·è”½D1=LÑÈÌLRÑýƒ{ŠÂw¤ rs³ŠµïÿÉA.üö¢cú/cLœ2Çû{]aÆÉuZ¼™œudD‹q®Òh{u§¼¬QO¢ µ ý:™MV‘ü ˆt©ZMžzËÅË®é¾LÇ•"|‡¿°ßý|êžvÜëgW$±¼Ê¨ :º;Ú¯©¼ e“9µ‰Ø‡2óãæÕޏ]thÊ_íÙ†Žß;ÀíÜáp–qIùRÞn K¼cìÞÃӃѬ—f_‚EOqYt+_2 æ_Ѳ^±ny ì‰CÄ'èe$ýaEò•_ÓEx²Ÿ¯Ýó!›°Ø f)|¿Ö‰¢!@(û8ÓqkÜ‘êÌ´3­Ë$È@Œ°)r·V ÙížÖ%æ”ON(SqÓ§Y?K™énÒêú(ˆö Ýòä¤>©<“Otã.ï ñécîŒð.gŸ ]Yª}–àÉ4ÒƒgÇeTÏi«\âùý¤>Ø|1•I¼P01£,tŽÇnçÍ`z½ $5ðñb-§å5¶"%üLÊÇTã úûÉ(f§ »1A bî´È‡õ¾tMþ“ö¤ñ³´})h¨HAb: (5–Ÿ„ÈËÙÒÅþÚëÄÉÔ2­n]k`“{ë›=¨íU,”Ù ä*æ·´œn/´à+“Î×qÌ7C’0–Tlw4jLªÀ8ê=$¯.,S*¬ „þˆ4AùœèØ4J ju:B PÒ“øX5‚@ß—¶²’m%tÕÝ\žŽñ'C=¶]Æ.—å¬lÞ:¯âµƒl…ktÀ{ÛÔå~‰Ñòã½Ò‘D¤Ñ_ÜÏl¹ _æ”2¹îbBŽ‹N‘x¡£œÂ!:Rèúº²[˜Ì…¾QßbÕ5çÂ6·i‰@¹s2²Ló!øû‘sÛk:ì—8¤°¿Í7zðZ&/]%ºúÃ+QzP™u»žíY*-;|¬ô-a£|ª:C v™I]r²û‹i‚"e&]l}Éf|9&Ha&’‰ÿd¦ò….ÂËæ•8ûÚwIqÚhJWúªø,)‚#&‹^ß-Àocðk'Cd™Ë4S°;¨ÓøQúÜóBÖ©È2gxRñÚùi`ŸÛ÷‚(Í^rYÐ[OxÜYý$Jàf²àÞ£nk0=§Å»Ïp Wns6~2°‚MªDàG>øƒú¬ÌŽ,`k̾}lبnD=d°äÄ€$ZâÊ’ž"Ìr\²])¡!ž‘ÔðJ–XÆ_ëÔ¨:êæý>`e!w3§¨&¸ZºŽøæ4äTÕFC#)gÊCu<í­ŒÛ‚ñ^tKîüÅMÕTqùšRËGíõ|ÚešÓ)›/d!óǶz¦|CoSH‰AÊ£Ú¥e¤§tó´aa9P÷ýi?± A¨Ž;þ=/‘âÇ­NôÖi{_ÄíÁûí¼BWõ%Hà™}ßšW“ýHjXnŽÛÅÌ\º9õ))2pt™aÐ2äùànÍ"„ãNôY0c}÷úMn![vº3,XëŸÃêíýä«Ã¶î‘g )לϫ²Hj3.~`Ê&y°dâ£]•Ò-lu÷­w®ÅLççdŸú•…“ù‰³ŒÄžO_ØÔÐn'åFbŒ²Í$+íÑ´ÄíšÖS„Yµ°eš„YŠ´ûøˆ»£¬ž'éÆ  YWžs U½_$+NÕÂ}0{ê¡2=ö8'°1Ö™Ï/({eî—oø¾ù¤8¬Ej±Iåqt]èç~]ÜÞÁÏhÅúêC‹á•&b)þrwÏE_ '3¿ÿ•kwï*©å UßûÜ­õªÞ‚|íôn#Ô5‹êÚÓÒ1ê’Â4:<‚¦WìU^̾ca/Ðî1‘SW?2Œ8ù„µqÍÖ¹×ó aVí]·‘|Y´mÛÛáy‰ÉÔD›¨,ï,°"d}„x}ËìigäßÔ›&ÊÕw8šáfêp»>/ ˜!é`<Ϫ9À*Ÿâ‰½KðW´ÏH«8Šb¦!vƈ>Å«>­ê:VÂAdB½)üÊ‘ä‹ —çÞ8ýµ-îÔhë=Pñ\â¾ÿ|¥0³sŠ ¯— p 4”5¯$;êd`-˜díû¢[´S¡c?á_ócè¬ÿh<*ƒ{PX«uÞu&CÏÛZ… 1ºû« ÆDv¹«ô—Ô+>哃>s<‘é.å€bσÃSQß0—NsÍ,EÔå°O9»Ø#ü°c?É™Ÿe ðžW´â´?û–¬U™¨ëˆžÀ^¤ÊøÎ}Ýæåó¶a&²¶‰åÓbihœ£íõµ¤mHZ´E®khA—Tµ—Á]N—bhäc“òO€H6[HÔ×dúóAˆð4  m¬ÊÈg~Zd4õƒé`›­pí˜xÅ¡ñ n¯p„(cîËx·¡y9ª±ÊC"•¹ÅAüÐáÓœ_¤+×–Á½•~òf˵f×׃-‡/ºs2²P«ýW—˜¢©v±UR°ÎÖè±\yV›rzÖÖ\¼R¿/KÓgÈ2`i7Š¿Ù°þ^\‚Ígo:ïZsÚ5¢š™ª^ÞË2È"rˆô6¿¶*-ä6oÒʈØ“Œ kÓ©¯|âCÛÄÓôCn¥Ù3Ͼ•svµÅ‘²2’Ãùrø²°Åß·ºÉXf2jfþÌUÒ±‡¬¨Êß»àù‘l{˜ô†²øzwr»üнlc€§`ç¸yîV2øˆô×ú€t}Aºá©$÷©’¦¦½ö; 1·>¥‹ jô³Ö¢ö‰¤£|=—yó™:,Ÿ-»ªÕ¦UûÒÌg@TÊ›Æö?ä{[™r#œ: ²ó=i®‰oÚžŽWx©¼<-[lŠõ±+j,=9ïß\Ò ¿çÆo&UòMzln€gmvkžÊ„ •éWLjÙ§Ý ô´ ¹4/Ɽ±~œ˜Ñ)jôSK¥ó§Ä#ªL$âïqbk±/­&]H Á-ßnɽHbßÄ‹!;b±[÷œDó[6Q`K|G¿™+ÅtþQ ¹þìQ%Ð&Fƒ·Ðv,C¤Þ>GȪÂy`FÖ~&òº>ëŒzuK=¦Å•ÄÐd}«ý)ã{*u­†ðåHœò"F5æ;R‹¡"‹o¤îüñ¼JvÍwOÍúÊã?¿#!˜’)|•¯H:›¤'ŠF)"O–õFl20ÉÁÐѸUwÚÅë”?;8Q‰Q$dꪌ¢JdùI.Pµàš]‚êf‰íb«Pàåƒjnêö<•>êX ØR€‰¡„øäI?x¬nƒˆæõùÏœpºŒòéÙ^M¹e4sòª4ç&Ä⨥ ·&ZWÚ2ÂsuŠPªŸ ˜W‚Nmo^]=וÚôô8¨ý.iÕR´+v†÷gUgîÇubš‹Ü+õN…¨Í(Ô¤Éû\õ÷¤ë“Frʱ X/™}6ýÒÇÒ˜ª;ßÌtýlx=ñâ}IŸaú¨¡Ø÷\ÿê©Ìï¶‚—ñÀ㯸$eç°õîmklš8 [uþآ̒[ü3ŸŽSöØ·ËÇzYÄ/˜ïEŒÍtMF¨Y%å‹„;š(ä‹qж½£ÓD8{Ø·ºÒŠôv™ÞšASÍ*G¨ºbk‘ª¥UVÛ.B,(Aøïµ ——z† Œ‡„MgN²ù‹£éêm„•ÌŸXlj^³¦â”-‰˜oð"Th¥ñˆi”Å;oÙÑ_-SÚ嗾Í."CCì4«`?BJäº+¼ÇJÃ9ŒˆÂ À/R¢½oÚAxü÷-ùi lI›¢‘s4\ôÖï²idv˜†‘h¢·,³d#ÆHŠLQìÅA™M½ª¤*è ãº=ojÙ\j/Ð>EË JB;"__:¹§ô æ%’ªý«ÝQÿ$]|kƦ3ík·„èÙÜs™ãÿ Ã1£­„Êséf#ÂÆö^C9xÙÚn-äðÊ‚‰„}T!ªgÿ#÷“Û'l ”ô±Ä?úÊB¨QPl6¦3Û%±dز*¢V¹š5x¿ÖcÑÖlj”äd?ûlO³ÆašÛû™y9$H™£î†ãÚ3.øÉ­Þ> *YÐþ@t±³ÈQæ%w|êwA5·™{Y§M ¸ "½ËåÒ{1_^ƤqŸ*a‡× k–ŸœOÛÑçíÊkÐY Xz Ñ># \1ébCVªœcåwùtˆh3Y¨º¾¶Æ‘q°‰‡Z”BÍYS'¨Î6Bž!G3Z +{™8»bWÁwñ&Ö3ùy{rÍ“¼AÌßõñ íñã¾DˆŽVכ̸[ ßI pÚÒx,&àš ¯£¬¨NÈñ8¼\øjϨO-h(v•<1•<;Š c9»™«'ö¾?K=&oö°ÐCéï¶Uh¦4åtCNÀH±ÔŽõ‰rlZëÞ]Œ*V¦H¨zhO‹ÅæÕ·9)páË6ð­c[[Wìl¤¤,rÕ—__ʦýê¢(úgŸÉ™ñ-IïÕC‘¡œoë@樧ڕ£´è‘] ùTïÓ~ùŠJL|?e9$€fÛ¾Vïï~Ù$Ï™QÐ`øF {®½ÞôkO¡Œ×v=‡lÜÀ1Áä—Ît5.I×§ExÇJîôÈëuQÀºÄGÙ§H§o!˜fàÙ·g55ùV$;•–~ Jäj(Ÿ |~ìHZéTÍÄxSîð?a–hÿàRO}‚ôÚË…ÆS¨íö{êi'?!ÒݘS/ÆÜï㚥n¼o‘«$Y+9§E€¥!"«2lîK Fw*YÕ:79úÃÃwÖK¡oÎ\YNœÐ>pJŽˆ’˜r%) ¥|d«²‘ Á!/.ëwËûâx=ô£u÷$›0*Öà¦#³FóšØf À]pʘ÷•Þ!'­«™Um_JÂßóOFœ8AÛmÎ3y˜-£w¶mT þ¸©„ØOfŒÚªbýCè†á–e€!wÍ÷úškÄ÷½dz¥sžoFÚšt·ãr6Ñ•‡éL\Eº*„»½Û@Ç®%yÏv÷çœÈZ˜v:?-sd˜Ñ\êïØmùgÓDÁMªiÎÞ:ÐîzY,/~V½c"ªíü4Ž’è¬†AjÆð¸}ì_¶Ë%Ë7¿7"UŸûÄž·@ü:ãäƒ>ýþ~åÆr¤AÁzK„Äͪ‚Rúbù®Æå²o+œ;Ë -t0z†zäÛ×U7™N”'u¾GxøQ^_¦Ë™»¬®âÖu¬ù‹z¾ ¾y'î”eo¾£È¿»”zÛ¢^ŒÁŸ¤Æfž•zZ’ïîbˆEÀj6w/>,ÅZJÒû:‘£èvƒ?kyN˜ÖwǬ˜ü¤…B>éš>D§BiÀˆMŠÀù‚#$J"ÏI‹*ýã9Ùûx•t}ÄÒQ±×j&ü/¹ë’ì…OsöY¥:>ÉãÚ†së#\S©JðBÌ¿íÛûXZŽ‚‡4kBC¥IGì#Ë’¹?ù!§ •ŸåXð6¯w Sì¼AÜ{Yq®²Nâë©Î§d;ÏíÎO¶ *sò‘ !êŒ2SÐÆþ/ýYFÎŽ:v×OºoA[ž2ÏÂÕ 2âà*ÊÉ¿»Õtœ< W$,›'Ó¥ÖPL#ï°F‰eŽ…ºŒÉ<æ:×D«¥ØvêØKE‘|–¦¬Ø$#tÇM+.[ÆÖà„…Ù?Œ_3gl;«óî$Q2öD*)ckIXOe¡£ê NEÈ»‡l6_·öJï*èûzƒWf4•˜Â½çÌÜuÖäSÏk%Î~‘¥kÿº+ú.VÓ¼vӛ⪠Á¨fôçÿæÍD endstream endobj 1317 0 obj << /Type /FontDescriptor /FontName /YWHIIV+CMMI8 /Flags 4 /FontBBox [-24 -250 1110 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 78 /XHeight 431 /CharSet (/N/Y/b/c/f/i/k/n/s/slash/t/x/y/z) /FontFile 1316 0 R >> endobj 1318 0 obj << /Length1 2305 /Length2 19418 /Length3 0 /Length 20763 /Filter /FlateDecode >> stream xÚŒ÷Tœ[Ò #ÁÝww îîîÐX€Æ5¸»nA‚·àîîÜ‚;—3gfræûÿµî]¬Õ¼OUíªzJöÛMIª¬Æ(b2J‚ì]Y™Xøb ª¬,v&6xJJuk[à¿Åð”š@'gk=ß? Äœ€&.ï2q—w;=@ÖÕÀÊ`åâcåæca°±°ðþÇäÄ7q³6(0dAö@gxJ1ƒ§“µ¥•Ë{˜ÿ<hÌh¬¼¼Ü ÿ:±:Y›™ØL\¬€vïÍLlj 3k ‹çÿ¸ °rqqàcfvwwg2±sf9Y Ò2Ü­]¬ª@g “Ðða€¢‰ðofLð”u+kç¿åj w' à]`km´w~?ájot¼¨ÉÈ”€öËÿmÀøwm¬L¬ÿu÷ïÓ9²¶ÿ×a33ƒ‰½§µ½%ÀÂÚP’”grñpa˜Ø›ÿehbë z?oâfbmkbúnð¯ÌM’"*“w‚ÿ¦çlædíàâÌälmûEæ¿Ü¼WYÂÞ\ dg´wq†ÿ+?qk' Ù{Ù=™ÿîì'{»½÷¿…µ½¹Å_$Ì]˜5ì­]2âÿ6yÁÿ‘Y]œ,,,ܼì #èafÅü—{uOà¿”¬‰ßøx;€ï$€>ÖÀ÷ðÞÎ&n@€‹“+ÐÇûŸŠÿEð¬¬sk3€)ÐÒÚþ÷w1ÐâoüÞ|'k€Ëûì±Xþúûï“Áûx™ƒìm=ÿ˜ÿ«¿ÌšÚÊ⪚ô3þ¯NTäðfä`0²q²Xÿ2î÷Ÿÿuóßü‡ü¿¤Ê&ÖÿNîeì-@Þ¿9¼ï?<Üþ=4ÿ^ZÀÿFP½Ï2@ógôõY8YÌÞ?Xÿ?/À¿Žüÿ›û¿¼ü¿þÿMHÒÕÖö_jšéÿÔ&vÖ¶žÿ6xeW—÷µP½/‡ýÿ5Õþ½Ê @skW»ÿ«•q1y_{KÛÿ–ÑÚYÒÚh®líbfõ÷ ý§ ïîm­íÊ gë¿.ã{Ãþî}áÌ>½_(Îï½ú— ø¾OÿRÂÞ dþ×â±qrLœœL<áß[ÿŽ8Þ¬ïjôø×h˜™ìA.ïGïô| 'ø¿:ÊÅ `ùKô7â0‹þAÜf±?ˆÀ,þñ˜%þ‹¸YÌ’+€Yêb0KÿAìf™?è=žüôOáz ô_ÄóAùz ò½GPýƒÞ#¨ýAfõ?è­Æô]óz®õ½³Õþ/â}×™üAï:Ó?è=O³ÿ"ÎwÈö½ÿ‘ppü%±³ûsþ¯>3›ÿ¾³þ²¿çÿÞ0[»X¼3´øßí-þÿRZÿÃøÝå?à{|«?Ù¼WÀÊÓÁ hÿ‹wÙ?Ï¿—Åæðû§Àw‚¶ÿ€ïìÿ‘èûuÄüÏe úûÝöýõøõ{æÔïgÞ_Qö¶@ —?RÖKÿ¾Hþ+~OÒáýúý©#ï»7GW ÐÜÔö\°süQü¯VÖw•Ó?à{%œÿ߃ü1~_AfwÐ?Ôï•qý|¯ŒÛ?à;[÷4éý´Ç?à;-ÏÀ÷ܽþ{÷ätú;Ôÿ¬»™«Ó{)\þu!¿ßÿÁÿzé@3ø¥y°MmpÛ}µ;ã¯ñ3”¿´Òh½—œÚ]‘aRh«27œnER†ºQWw$hn„—I^¼›ë`ÂZ’TZŸ>?%¨Nýj…_œÄîŸ(<ùÑGGȨ.¼÷ùÅñ³fÀ'Èf🲔¹Ž®<ÈÊù÷î½R?úÊVFCç©ìUqÉ!<—M3ÆhDëÏRæ™fÍá’A»0ÁÒ¡_x ÌÞÜΠçL¼‘È&ÐÃûœÄ°yën²Å>Ìy­•«³9wâQàéâAÞ NQy‹¤Êâ,x—­ö/z4 ‘ä 1|YeDe:`˨²V²oì©q]ê`ÝÍMSôcì&Õ”6b9‘)aUµEa¸Ô°tXˆ®µÝjvYØ|!\æþñ˜EÒ±:öoêò~ªs\îg¼ ýÒr?Ô8¼Óå£U,Ô'DhéÎJ'a¥¹ºÂ—AôªÌe ¢S (ƒ‰Ê°ì–Âó e"àø[ôŸu»…E—ª|”ðŒ3÷óïXŸŠú ÅŽÍY´[wtƒ · .Å7ÓŸ_.. ñ¬Ø%Œ3Ciò2$º"òÖã¨Uøkõ³AeÌ›ØL⥞$ò‰Ûœ‹¿(Š8d¤z~-TEêzÚ<ð0iVh´Æs¨îžD1ŽÔ Š…ôòÞšlß~ÿ.jˆuÒ|¸¨pŠÝRç΋èPõÏétVJ—‰‚øv·3×gJ~ª.êFjׇ¢¥þñqg¬óÛ³;C™Œ8%uÑ’BŸÜ¡@Øç%ƒEñ¢¼ja숛F¶Úv¥{0ÄLÔµXÊ̽Hr£ö¡FÍ߯ø¢jê÷ùä^›`= Óc;¤#S;Þ¶úŽM~ÎètHÛ*Ò…ÿ¯Wi¢#_-"›Ö5ÜEê– k2fû'ƒ£DÉaÚÙY0ÇO¤…¥Ô™ëòEô˜oóIÙ6Û^YÂ$qM+õk×1oB¾ÔïÔ§Ø ×8‚›Ü{æJÉ™öÊS±øNð5o׺Šr>9›ta ^ž §F/û+ÚõN‘-i´Eˆv ¬ÙZ,ØŽÀ5æ`m\êoU ev‰<Ò`F¾4j´Í×IdY”*&¨¥ÞZ1Ùq0Y—20ªonèx®xòÍÉžÉÎã¹yé9‚¤«(æÒadÉKw2IÎä8÷ßj៫Þ@*ãûã_¦Œ}²ˆYYJ?æ¿ ´Ú×5>,f®Y]¬çoTúÃÖ×WWg á ]q§c#æBé¥t\ñx( p°Î]}t™¸—[FAâçJonòq’se=dúª!eý»NÚ¥¢vjÆçÖ—xþÕ׌˜RÃñÜ_¿¥eC‰ÃT/ÃèN¦%¿úüGÕ3VÿžY>ËÑ÷KÙ…–òÑ87o® Üäyýû„SŽãÐW2v¼wÉYêÓ:rL«r¸GC´] 8RÃrÞ&ábº¢RÙíðÄDž+4È‘rÔ¡=lJ,3š_*¹d”)(lŸË›“p6õ:qgcCQ÷ø°xr£ Tl”–ɦU^aw²£xé ® _…r¶^\¯u×ÄôܰY.º¯­tßúº‘¾O½ñþ/Ùê-KÆ6£Å™¸ÛÒ¿°Ìq© *݉è½~²‡V?voOÚk£È5WÔkÊ(_VºŸ.Òbó 9àq$•7Ÿ®Ü!ûî²j2GŠ~®¹~<%eIìÒÉy=Pœ>LÞ øSöVüœÂrßZßb3•õl*^„d¬FP\òDíÎ$¡qøêY‘aSÍaK=¹î;—×D’H%Á¸òöœj—îT¥ŒÇ3ÕUÙR^÷%¼G¸©wiF_Údž­ëæ½w•ÐÈi¬ònfsvXPÖõß:©ÉNŽìz…µæB+p +ìVM)Y–Ò è¿Ãôæ%m$1[ÜôdÙ¶S*K°åñkŠÐª‰Ê3ï ”aŸqb”‰e‹lÜeÙòWzt"з,jCÙKB'’ÁF¥óx«.‚ѺzÕqhv´. LE^ýä>ƒŒ0æg¾h¡m¼&´#yî*¼qùÏ­1l¿3qÉ&Vb=ÎcΓüM’ÜÀîILž¾c†¢ °0)Õ§û²¦iWþÖâ5-é ‡n[öð¬[V°øaQS4NK”Ðg_“6þêÚàŠ5CÞyÀzñ¹*:vvQ{«dÌdY»rÓA»ü‡)ûßpôƵ5ÃÑp®®Ur«Ô•ßnÜ‚ràà ‰¯ËøAN~VIMI®Ø¿ãƒ£ém½ñaï€*wóñFÂ8\ìøÒÊ&nS^xcXFÕ9c˜ýºßY‰éÊvbЫâèLüCù½×ÊFá*Tر45ùóÚÆÂg‘Ð+•˜”²7­Úxx¾Ïô„†Xæ|Ôÿ¸)L&¹ù('y¯žgú”–СkKckYÙ•µl:]³FÚtP6—:7¢¿õò`¡ŠS=ê øÎ»í¨YÔT”¬¯’ÒM IW¶j­Žý;æÀPpknT `TªF©þC±EŽ;® –^5}þDÏ©(ãyPç¦ãTÇèÓV³HˆXu·¨¦üx ?. ®!‘rõ}1#Ô9‡"M][/®«"<Ž"³´éBY°û–šÙ©WBËÝKÕñœk5nŸ…Xƒw¨C=»bÒÝ Þó›ZÛÉov#ÙÞÈ>RV>–&U¾v?wdò+|E½"‘·œdýÆÊ…á§ Óõnû#_ìScùªØ“B<ðæ>ïçpt·ísùÕ–½|ޤkÖ4 ? ';‘·3çÌîþ«K{Ý HºôÖ¥wÃÎ7  LSaïÏyXR11’(o3X&-?݆“sâ={„MS‡Kgå4s Æ)ýÛªñÙ *y‡ŸЛPl1?7ûfÔñ<2 õ¦6Ð[Œxy–¸‘lÕŠzU‡å„^³ ¹Í¶ÁBC]µÝ,„õhƒ›òàÍÚÁ§®„áZº/‘ÂÀÃÞsÿ’„ÓöT3ðý’‘^ñ` ?,O‚#IÍr#ey8hŒ”LD\Ûx<+•Ø0Ñ ´¸Wöàð—ÉÅú|£õ\Ç¿"E<‰ªƒAÆ.z͹tõ¼w¿%­O6ó]úž5u<ýÔŒSñž·ÌA[¶UôåªÞ™ò,²Á’æºÔK…ÙEP¯r›g,Iʹ¯)€D•‚×€ “*üÑγ’Öº/ÒmèЦûV«$J¾WUÔHUÔÄöç±Ç£Ü,¾ZN…âª{g+˜ç‘0±­(õ~%OÌ6…!›}Ky¤>ëÆÉgÇâTZ„þƒe»ó*ÚÍÐÒÅû(£.2…mp~ƒsLK:„¿…í±¾;¥¢]ŸØ¯tÃ"u(=︈(B1Ê#Ù§F}‚2ZÇ64 Y±ÄL¬÷ÍÆîã1&®ž<-‘ [¿àö6t­’T%4Á &ØþTqHÅÿžï7CÛÚõP_tÉã†GhØ|÷ëòA¶ÆFøÓãû ©aþñ¬GˆØÒäOêÔÍÙ¨üÙñŽö‹»®.¶òb¬IÚ½Î1ü/ðŽ ½ŽÓEB»Q“^¬bjô„ʬ=¾ÄÀ!5¶1öﲩ ËÃÁ)¶4¿gê)`‰[€C*¿˜í9å¸Áµ^€‘Ÿi{V×M"¥S+6u›gª8\c4|~öõî÷\—@cj¦HGRuRNŽÀHgÁe`gu~•ÌäàÉQ˜IT5?e|]•1 ðWƒf½_Í´ Y!ê©„Ê[•é0þ ôUszõ4á((ëH•ÎMòó~ˆ!4øP:…£†"Ì韸¶1EƒŸ™ ˆÕÔ8$.m–ºãŒå„豚 ¿ÇÔ-¸<9_U•7ñéKå²m/?Uj¹Àþò×êK`<­ÅÔ®¤W†qã@£PþŽŒ˜°š4UªÀT[âÙ ›=F@–d ¡þŽfM{ß•I…©§gÛßïzÌl3Ò ¨Ô@Ó …×ùˆ-f öÔŒã‘o;dR¥©hûÔ ÎS0³$ÚZ/>Ï·õM:½õ1†þ³ ”6c¤ÒçQJÒo°Cc±$F Qüaµã—~ Û²Mnyȵ«äðK0e(+ÔbVBœéÁj¸/D­§#Õ]¿…“*p³à¾š”×ù3b¦‹ø™E†Ú‚´Àëh.ã À‹ÉWŒ&íu¼mVŒÙ?ÛB¸U·PËØæ¾ømÖþª{λ™Qî>ñN·–¨J;ÿ8î`r`ˆ°hu¬ô Ò8«ñ,cÇáþ±‚ÇÕs•Âé2uí*ÅÞÂÇ̱‡ž³ËÓ—ôeÍ`.ë‘à¾óYƒ¡¼Ã%—vÏšOú2·C)¤w…¦Ò¨pH$©Ùñê8 -Xîz°ÙË(žõ»×+(;$CZWŸ2NãÔm±ŒiÒkÇwsD4Æ“Ò_Q}»©ý#n¥öñ¦P›¦lâ=6ã {ð‘õ΂´ðj|€ÅDÐ˧&U¦ãŒ›7jÿ;&tê1µnñÖÑ%[Ïg\î$ì|D›y±}v‡õ† UR®œFR0÷õK¬ßžP\˜£g^7cF·/à79"jX+ìÞÄ} é÷,Ê,y­(ˆKúÀ „ÏŒ §›¥änù9¿Cº·~Ø•qr<)a· ÜÐA³v-÷ï^Ûí¹lŸ:?™F×qB=$¿¹å‹‹Y6'†Q-‚\$‰¸ !3–Å3`Òn·˜”µXmOðêÍ»¾ÁªíãòÊ%â£õªË•šhSìº[%5(émCxD8x~¡I}k³Aå”/.“é4«÷ùlEÜI‘à%¾¡1ÑïÞªCßþR®Ë7~¾ß;QØ—Éúó²ÞÖo ØI0nìz/ ÿùCù ÖüjøAÝ×~Ãe.‚3ælÏ©'c“‹<ôoƒH‘zU㑨ÆÓ£ÙÝîø]P'&Ĉy^{Ö—ò&Á8è>6ÃÕûCÂO‘¿|úü(2x€`û‘V˜¬ìÃI6Ó&w;C>ž žÛˆ,y÷¨¿ÿrg8›I„‰ÀŸ×ùùH ®ßˆ$í:Ëõ¦Ò÷2™F¥Â>hÊïAÞKÂ~E¢6ÊWfcŠvºBÙä"›Ã,8œ§ôv–I䤹ÐçaPÝ Ý&H»}žÓUoào›õÉ ê@ÕÛÏ›”äGeP¤*¡Æ°.Ô¯QTé’¹”ž»ž$éRç;^”<ÇÙW|C€QÓîZc©(§mµÚÔš‡hç°h–o´Š[aZü¡Ak¨5ÅHbïî󀮫Ø$5)~]u‡ ƒ£ ¬÷êž½½`o›Ö‡oXt9}}ÕÙâ4ŽÃ‘ô5ÊðèŠ ‚ÔÈþE­X?,%Œ¢1Ê%ƒ O’¼¿z+øÌ7¤iô1$8÷—N†Å{¦^ŸÌ{ öœ]cÙ«ÿ÷ë®d¦äèRaÈòFÉ0­D|8Jà³FQæ£;må…%Fä–ã,ߦ¹ yQsÕ*V¸ŒãBQf›3‰±Y8^RŠ;n‡¬â³ÊdÄ^Ùã/€î¥—óç@Ÿ‚^ù¹:5ŒÈ">‹²9»¶ânöó¸ù 5¶Þx óz?Ì“že3õW`W^b›,ãú?? |†qé°aêÏÙwzĪ윪|Å•uëf#ù wY2‘¢¹Ÿ Ÿöœ¡\§·º. Ñ¥ÍGø!pyEÈŒþ–r³îT±uUT“7ô>¨ëxLY6YÏ|oæËõöµ]CÓR­>XèšZ: @´;tùý-VdtÒNˆ!¦"©SEŽW‘@Q(ŽÓ~s1cæðxF8——þˆí%ÊèKd¦>ÝX€#ÞšV‘Ú/娱J‘2)ê ^ìÞÕGœ“Ó£çl‹“ÒÊÜ]8Uħ:»ZCŒµ’Cè _E#¶s(ÐÁ ~³Q ¨4ïmûîAZnTû /x›spŸ &³~´>"Áò:%ixÛ{øp©\}T6Ú9ň¨W´©¨;¨)ªêGÞ) _´”¸Ê˜Ìû·*ð…I÷¾ˆâWâìË!T®Š5òSº¬ŽÎ‡´2Cí©Ñ7iu!é5aäŽ?K‹’›Î°À“øJ= HðÇ–¦Pü2-Ù†Õy½kº°ê_ôk”fW±ßþ?ê¿Ë0Šl¥‡-F…×Зfóùõõ xXçü‘S _¬·Ü™¿™ÞŽˆ5lðF'JŸùÛ4”4¡á¬Yã UrDÀ9¿¤r?¡®TÅV{îþx¹RçáC„Ù³¦Íl%`¸ÒEáã4²&õJ/ë(ñµ¡“ÈìãUò”’´S!ߣdøƒ2ÁRjÓú#ÑŽIhÀpI–Ù u€^gY¾„ôy0¿hCz¹'È­š§Ê5éÖè²–î´^‹æÐÑRÖ¬†'%-rzêz•¹V8w˜‹L9éƒ'P¡òÚÁ+6ÉcZi09-eÞi&иð„׿Ýz‹é&‡ÇÏQ—×–Œ\åA÷qÉ7+“§N#¹ÂêLâh ã'¸… dôåÿ9R‰ÝűFÊ„3fÈÇ%¼T–²%{+±Ty‰Ÿ@»iLûQÅÀÙ‰XËEt‚Ó!½gxv›+ö–XÏ hÕN±WçWh¬›týXç:~4ÑzW ãüAüý¬ûa}6>3™èÛ"Xz¢5G̯6#qÁN‚ŽXó€ÂÈlD±bjC=òÃÓQ†ÔŒ§¦^/8G™A‰G}yÇÊðÔÉ5Wy£©º#~3’Nsâhzã˜4UócTUÚ©ÄSù5~z„pĸ+ô ‚H5£ƒB„eæÝ«°þ 0SåÐn6¦ý»C¡²F¯ƒ×ö5âÒåO¨3aª1,.9ßUØ .J”âÁÄýŒXƒÈ#½¹W¦õ³ ¢5Á³&7à}ä:œú´]jà11L1XZŸ–F úùeñÚüoy°bV ìÖô‹ÌBg&Ñ%­í$,j<‡ˆ–g-íKäöéùaô–ž„üCaô«Ê„ÇŠÃbÆPÝjü™4Õ 8ÛÏuÌÂÞ$ºLŸ41wÌKw'N•½…U.RÆ^FE?—ð‰åúëOÚ†Yàï=Q,Ë$Y‰üæaNKT™=â5£Ò›j`ù)bø+A"p¾'—±E.rÛ1õû¨cÁìÔ5WÆ|MPpµ '»>PP„É©ÁÝä.ë²6•=<))2…Üå Zj87O¯ DƒnCírù‡ÊC=”z¤?L{äÎ-·z^ù>qWƨíVé‰Ý"xಲè8od“a©+°Á``[í#säØ¿“ª|éSòôYðIP ,…À‚Þĺ¶Mf¥F¹ŽçDŸL‹µâ‹­t;¯lõHålÙN1¤ìJ?(á|ê±ÅYÕ^Ùr^ö˄ιª)¤ûxñ÷ íÙ¼¥qc±IÃ|ùÕ_½Ô´¥·7íŒÔÃúTMõ²42-<ââ¡Á]‰šìùm-¿öši7ENÑ-ÌÇKcò­·X2sÒr&8põÙdÌT‰.ZŠøèœsTØ6[/ý¬½HɃÝëßRþ’+XÃ]©ÖµÍÙämѼª£ì¦V`1õ°y{¨ãɲƒxÄ7ß fT¦b¿¿×a ׂóþk"çäå­>úÐ,Y7 ?#×#{Âê.…/;Ó:¶Ô’Ôtþƒ¥ZþåžÈ.’ÿ%ž—2„sœ5ÇõÑ\&v¬Æ×FSN‹ ƒ?$Ü̇V4ˆ¼?(ª;b¦ï†”HæôqÍJ#ók‚qYÆR4¾-±p ޲žÎ÷ÀÙÛ—Æ›àÚŽqeoÓl‚>¥¥ôE~Yš]'Õ'ØZyËõ£Ÿ2öŠ Í½A¸÷¸¶=(öýhY‚)«¢¥÷kŸ;:ü¾OŠ–qêÑËŠkùçyÚ)ù°°ËtÑLLEk)l=’éËwXÓwãƒ\”/Â$PÍq`>LŒ0œ6 ø½1cãHÞ\ùÔ›¿±ë¾êxë?$š“ÔžÕÐ""Iª¤ƒåÞ-]Ù^Y½šYhÿàêÏû,êá÷ågÒ˜=Òº÷mb„.£…Ò¼ÿžƒº“wÞ’>ãñÝôít㹆“‚éÁ÷Kˆ¥UŠÑã*1Ó¨+øu®¯ÍÎ{ÊoDGn›p"8u*ZaZŽZçÍeBÊN?X#zþv>Ø¿R<´ZïIW²¤÷¥V|Ý8ò;1ÈÞ¿UÍÊÅÿ"ÌaÚ_—hf'©Ÿ£OoÃï:Ÿ˜}¡c:ÀhøxºcWJýŠûKÔ†è|åÍàÊ ëä ”3<û|œÿ:˜ÓuŽÍ’è><¾‰tvyÂŒwšm[rŒÞv¥³¥æ{›s°rÊnT žÜ„;è“ʰËlÕF„B Hwƒ¨¾m{,Ï'×y%;hh^… z+doûY²§ëžÙYÞT_ùq7œx6gÇêôGÿò¥]‹éÒ39„Ž÷ ú‚ºB+ÝcßX|×31jå#Љm(^xfŸúƃ­ñRµy«!;¿# «º _á »4•mLâ!¶uÁÄÖå°øÔšnéªh#1rWß¾¹¬Â^_Bsoz 2C‚1bžÅB:òóW€Áä]lyYZ·~¸µ±h)–]4NÀR®XÜèWÂØ 6™…»àö²„¬\ÁBL0µëß`˜¯Dƒ‰„Èê,ÙÚ¼è~x×¾ò‚…ÇjYî‘k•8ã¹3dejڞƌ¿{ŠF2S˜¤2+GÁ|:óÝÔÕã³òÖ8¥ ç‹dVC’ô!´f®^ÂB…ˈ©´œ ùmÇÚõX‡Ø+"¢¹±¹$IB )çä/SƒýΆVžG;^Þ‹útžlNñ)”73ÍÐM †Ó®Uÿçz*êzðGu9²ke¨dø ±mØ‘¹ «ÆO Žª~ uZj42O¯\éÝ_`¿Ÿs‡Ýõé[åÑÜøü!6É‹FV_uî„ÚýÝ–ÓW½•WeØæÆvÓÒmý“Ý*"rØL×®VáE`h!gNü(0ÉCͼè`ÊÐðM9[52ް7ÈІ{ä—ï!Y°w¿_Ö1'a´pmN—W.RýžZ-:ÏçZÒÅ‹¯©ìXUëüA^ææ#â&(°šª-PûÅųHb *®£ëÑl’Š<Ù)'´Qòúi°²ÍõKÞyÏ#[xÁ¸f9­ñ c| 5ʯžäÆÜ+Z…nûu’¢ÉÖ ±¤-¼ÒrîQÜ{&Þ›~Ï´RkÃOÆ2ÍŸáÆÜ˜üö­¬R^A Æ@ŸpÖSí:.i>o¡ tœærÑ„TÆÕŠI"\ýRžŸ6·™Õ$3’ÝŠKSX­}ÃCTÅ¥ è1{!HsNB3xÉÍõ‹|&ùúÕtT$,1¨­u¨ÙmhI/D`Öž!‹^i=RºJƒ ÀÙ¾šáëîl˜é… ÏÕùcî„”r¤ÞÄG]ZÜà²Å&‹²ú£¼'áñº)É·Zæð¸‘ñMµ9ªþZCï;.²]Qß@YpÜ÷,îë)ͺà,TÏ…âDÖ½ù¡— ŠÑ4›’ýXµ¬/zQ7¯fh1±kpÞtþ¡«›M³s€»„â[•¢Ÿ°3xñÓˆ}Æ­…9wðNnMp í^Ë3ÈRÚ+gëÏ3¸gHkCèøû f\¥åƒ0glZ?–:êE‰k£5×ÖÜÄúf1 a(c0H VµL,Äá3Õâèlƺ/%{QiO™MÏN¨ÁÖfÏê „ _÷²LðfiZéü3›a±Å©ëkjŒµªy³Þê~.cÚo´\Ë_ö–ädÍ:VR¤Ðã°.¾8Æž›N›Šó¯ú¥|ï‹F[Šä^ –ã`Î ëÒôá🨒dñ…)Ûú.qìo¤Ö‰—ä€+a¢`÷ž¶’²Yñ@ëY!¹žôÛ6ùn7OçùW÷»ïLN¿aüìÕ'Ý*©U¼4´ŒßŠV »%+·Nh[bd½³çÓJ‘…ò~´¶dD禒F0”Hõçµÿ™<Åi8¸{ÃåÙ‰öÓgŒî(î$ÀF²γ*­1]„3ŠSŒ:fÌbF£ L ÀÒ&Ç@|Ÿ ]ø‹­i(iÇ2"ìp>vé ãe¥Ÿ v§æÖ`=ÂíÆôÐòO*ä ûÖ=ÌÁ°Jþ{ÜX.ðŠ ¥ÆtÒz¢Ê”³Œ GR»óf­Æù:¤q¦/ïeKMB_µ™Ÿ_ Nb±.½®ô÷­‹‘ 2nŒÉªÖ¿oˆRi±Õ}®)·¨áHE±Ã{”ã"æhaÓ&³z±][Hð³…³ú-ÒÜt4ްlevêÙê²?GBL2SˆÄ1äò¡xÖ8ÿhÚèû>™ˆViÉa¬®F“T=Ä* zñfU¹R ÷:&ú¶?ÖÃAòÁ­ŠˆÚšÖn!K¥Æø, M"Û ÿ”þ¾ÜÛçÒpåUã®ñž•e¡è¢-ì$Fê6£Áÿ(¢`ìñwޤˆb¶{å(IѺƒêÎ ZF÷ÒöÐ7ù Eü.ã' ƒ-Øn›“ *f¤Ìl‰ÑžÛþKY…,²Ú IzV³ªH7j[è^«ÎŽ 0rù_ícˆwö&:²ZvHDŽç[?oàPŒ)ý°göÃ;¸âÁQú&ˆexìñ×^»~ý—C´ËnÇúÄÜ®ÄÐdœIfU0ä6%Û.3ÇÀd·Šv2úŒ 'ôeÑÁu&Ô6´s`ãXþÇ|èú)ñ×-¢›1)[á‰'UʤÙäWW–Ü'³7.éÅS‡ŽÍPóÁ/†ÕÇ ë¿ÐüYÎú Šˆ]6k­¨šôÀ@ùÄɹò_>©g‰Uõaëµ`'˜¥GÊ›è}{•šª±lTÙ[öáËX ¤ÿ‚v‰NÎ/J?¸Í|ÊŽ¡¸–Oß;SöȵãD—\‰ŽŸ[â¨ÍEáQ`åË÷ƒ F‡h°uŠi†ü'ñW¹Ò&©ºéEv¤Ô±8+_Ìæî9÷ø‚èW‡0î6_ƨõa«3JÿvÚÚÒT×éš3wºÊ‹<í"6Ékf:Ä#¥Iì ]!ðeÄ+gŸ,y…Áß~´÷ã"?`†PíqÂ÷-\ZØí|\n ^PƒŸ&CÚÏê,*í¤—GÌ“]œMó°Îz#΃õë¸5ƒrÇÛl¬ðŒÑC|× 홽3»¦¡#†‘”"­€¶ñú Øã@ÆÇÓ^þ¤Õ bu†!ÛèâqÎÔ£ká: ¡nªgå›ûhôFWhŠÍÇ F‰w±6à7ó'ö^3qºíOƒ.·‹úÜJƺG€“­“‘¡¯\e úѹœ¡gÌŸð~È&sÅQ|n˜å*uW·7“›x{ÊÙ¨ð|®ª°0×÷ MßDŽ¢‚-P8¢å‡©j²v6?á(< l܈çÀ0É•‡4(rIóëg`‹äøNÉ”ŽMÇrô©}¶¦ ²µ-¹8Å.~5ÜOêC•'x¾^äòÃ=6ƒpűuóÆ>­M&ËFê-ËkôÆ{I+»/ ì¬spÿf6)])¯`h ù„?é-hñBß¹FÀtëÍêý˜ï;Zõ§ü HC$ëõN%];àH¦Öû"Iü9¯ÏY‹íîæ—ÿ¦ˆPdž./5D7yŠºÚo †´u×e°}Á”…£#O¡Ò -8e„q}ûYJAˆ†Û{<)¬J`i¨èožNÄ*ù˜õjçšYÎ43 0\) Ój 5rÊ~tíÉ£&[I%’~RR©ÛýpøI=çÐÌêÅô™Tí6ýÇ5ü3D X!îà’$Tñ(rÏç¬+߇ó}Ÿöû‰q¤Vä,]ïÎ'£#"þMA#aíÁÄ--È–¡5¦ø¶ÌÞ#WOCÂ1ÛtÜJ…åÇ£;÷m3\$OÅì ÇôCLíŸîU®¢\àPÍZKÌÔ?6¥ÂKž\çg.Âá„—¿&»¥ ‰7L©bÕ=±T[ƒæn‹z*_ ÆŒÁ ŒÖ|чmÕj§åQ!Õ19YŽø¹»`ʸøæÝ_ÌM×9.w&*$Ãi÷ÍÍï’4‰ï¡&µ ¼n‘CHæ½9²?WiTkH>Ž>Ñòäèê~Æà •ð®V5Xà¹ÍK¥ \Ä@¢\ˆÂ÷eÉÆ)£BÔwV>î¿¶DÀ(ÐíÝb<€Vy6$Û‚²ƒø†¦À£$oâìXÀ¥ìqàvÀÞŠÆ}ÓU” ×Çæ™É–ù’·!0ͧNÎ ¨["„ƒDŒópÑË—²³)ï¦Á?Ì~ãÇ.‡ ü)ƒÄºÐvÔD½6¢ä°–òT fÝS$Âö)çÞfŒ8sN÷e¨j]ÜèQ2¨”P*Áß>uN6w»Ù)ôÓ”‚bY“Ä>9ŒáöÊáhÚÉ-Ÿ˜”I6Z4†{–üdÄkÞä“–Ð×[†ÄûôMÆ0T- ÝÖ‹.3¦Ê&5æÏl°\ìÈ@¾ûáîü&Årž­;ÉÞ/G¿8$ÉÓFRîa_áh¾Çè>†…Oe®:Œ¥äj}HYX¸Ë)f]¥Ð ©£Ë‘2y¡S‚Ÿ ìNèA.¦§¯’l¸àõVt\å†ÐÆtƒ»MÈŠZÒ~ëø…k¨- ÀLWn+*¦)L„á+GL"Nÿ0 ýEsIÏy#¹…ìáQÅœ<,hFÖÅå³l?ÃãH´b eæ–¶y‘8> ^è0ôs¿ôe䊴[Í¡•KŠÏZåÒu`ŸÚª"üÜâ ÞábAŠBòªm>= Ùš/žŠbéõ; Y Gýöl„:m1Ô?¦c:ÎÁþ.‚]íô{lÀOÕÈëïÛ=íju8ÈÉÎ`à'íŸÚL)×Iµ\†‡³ìFÀÄU÷&ƒäÚ­([ÛÂ+w áñX·á­a)¼öÊ3c$%; õµIX†pÚ¡ ®–ôÞ5™?ô5{wP¹ï ÑaR¸|´û‘‡Š©OÏ9J*,¡q?^™¸/‘¿Ô9môòl…?æÅžžÐv¼1º9+7xÿ(œ¼Uå‹ýåJ åI'àeGI4¾Ë‰ J»@œ9â -u/åSÌr¦Y$œg}r¸¸C¾¼Ó³$0À^éPÐ>¿´‘OBD§1_Ì%UÛߎÔÅ>.gƒR€{%b0èˆÔko~4SñÊ™¿µÕÉ“ôÌ&Úsêg–ê?_8>û°ä…£‘#‰7‚¢vâj‘á½Asú×Zæg0àwB]žÅÝšb_$upøîE¸ƒ¸ÌŒ*[«ËJ`G[À_3Ì‚e†³º¨¸à’BpN‚ÀmÍ•ímiÚ©mâ—Bw.ƒç𤪴…1Y»`2óqÐ~önÌZ‰#6†T Êãvö…æT…ÑÃöÛË5Ç•õAƒñÇ«[â¯~&f¢)8“q&Lä°¡Uî½MhTt°o²úSqZé®L®ìäy'4’õ¼Ô*p††‘  `ßœÓ5 #g·&3ñ¦ÄÒR££¾®%Ú9úƒ¬Ï‡*+¿m»ü³2%­#‹¦¯GdôØ‘,8¶w÷uzR. ŽiHÂOúˆh6ø+¡I"Sã3‹ËÄG)Ò/Ü—b!®±$^ h ’™>ñ”Õù4ŽùÄ&Ę|¤)á1B¦§@g<7ð~çç¼èWLG뢷0‚À$—«²D` ‰šhX·>‡†Ñn㩺Å[6æ ¢ ÊϹ&6ñßö'˜6/Xê·œ¸¿ü0†Gö¯¦QÍo}û µT P°Ïj±(TºZý„°¡vÉ_sˆ—¶pæážð3"ç0’{“ нä?òƒ7xTÜôPÛ¨ì 8¶w„•óeÉ©ìx岈:Y‰\Ò¶ÆžÒYÎîŸSTd1.å¼nŸœÊxÄxÅ,¤™û”¥töópkUˆ"L§W³¾ÉY£œ1»ÇÀ/åjé`ü¦cd"þ’ožØmYrË,¸8é67N,Êþ"\úËÚù0Š¶Ñæ×WûÎcõÓöm°ŒŒÄ5h‰/ÞJʾ–V¯9ɳÔXrMŸs(™àGdóíükšØâÕõŸ)Ä#ÂQ¦gïL¢Ú§¼¨ÌºK Ç~Òº^-Õ é¥Ôr—éeÞ,F•Yû˜ˆ¤L;Vü çmýHU5®!,ˆf¾æÂ8Ú;í@^#§p{Ó(Á#çqy/xAN6¢¶Åpã1é¾DOÄý™cÁEûð@i®e}d;¶Ù/Èh¦œmÔáˆ8Ô¨]¹‘`¯Ág8…\wx´"â\ÕU¹R›†*˜º,T7Z9+’áWåQ,üíø‡$ñƒgÝQ‚ɛΡsN-mçE ÷öžÒÎ áäs¤ Ëz›¬g‹‘ÄD²KüW"køëI˜,!+šZŸ¸=LÊE» D.õU}Oxê¸Èf–)ºišgÞ’>¸[Q‘죌ÍAÎÉn°•)yñMúðK};mßÎâ Žíð´fXn«uÐ)92‰pt;fÍ×'¸¦6ýŽž(d¬9¾zù!äGB„_ ­¥i†ôÒúó­º JµJ±V¨B|…Ó4]T£`ÉÑk»´îLx¦‰@NorbæÅ´¦¦²© ¯ô ÔɯO˜´¾äÝ®ÅѧÐTñŠPV•q÷hÅÂ:ü}$¦Nÿ±ýÄÉô™±IÌæ«®SÇsˆöºxmÊ]I³&Ø®jÈ´m誷G¨wl„_‡ó‚gtpû}íYŒêÈà½ÇFU§jÀΙ$ĸA6lv'?ÁG¥ŽJ¡³ /Óêk¶-ÞÂr¸ß\J‡˜ÆpíAÀOóß ÓïÛò8ö”Î.ÂóÙ[\IŽ!¸ŠÊÇdtq#=a,§N#^ÚqQzzÆOQzÀX­Yy qDHd‘ÇîºQÝÅ^èŒ,µ_ˬv·y¡KMr9Ì[]Pª_îÀ¸¡±swHú«tš#ä3pÁ2Y°žW ‘UeGñ¥V¶Çä'ë>žÈœy©k9óqwã†OAƒ`sô´JBf¶+¢2– ).¤3RÀ`UsG…sóñµß9VŠ`þéH/ÞŸ´ù—Ä^*ùÊŒø¾TÞäþ.A¦‰ÐuW7¬c.ž žm¸Ï…ÿ¬û’aˆ0ßºŠ‘£4L7ñi…0£Î×l´ëv™âí¹ti§aca1Xê*ÿm[0r¡¾¬‹,iwBlñˆRÑvƒ€#×Äï6ÅD5Ñ(ª‰Á"l«÷ÈpÌì7_CQÓç£ë†w$Yh×òøzLt9ùà'ßî›Ü³n¤¶¦“¬"_` ‡R{QÌu]TgЂW` NmÑOpGÎ9" …î·SP!Ðõ³&µ]pÌ$Ì*ùÀÅ{rÄá–3„0Ñq.]E9g×DŒ}÷:+²™G©€d"2˜ùm°1YPMêC,!Q¾y6»Pgv6¹•;¦„Á߯#Æ÷Œq?o~ØÖLËpS±¦ ¥‹'ÕÁ1iL¢˜›}/]Ür–|øª(¡žŒNû€ߊû˜´]ÀKëÑøû)TøûǕΤvÂq#¤k0«l x¬H.hhãž”1êƒ?®aDvç ¦sÊ¥†›¹—M—RY¿ÚuVâ Ò—Ïø,=ڜ֫„ÎNaÒ×vÍ“\è˹/k:­ä3s3àÓxI`5šjýÊÍW»Øyž‰K²—>â(,ÕAր˴°a‚´}ŸU;6O¶`ÓB‰¤~Õ­I§ÈqITs" ?Pvj¹eà@GnìWQ,¥ê0×uCp"Èi`‡†”M@¹I„ùÕM3k Ù [Ø(¥4ÙNV2ƒÀˆe{’2ž¤}uÕYwZ´QáðÆš}þ¬h™}8¢ß±Àœû Ð[ ];壅\Kz¼¨r7ÿÑ–ZU“£È¤Ö¶ë·uÇ›EÜt¶×"aܠ™¼ë'[²ëˆVÇé'?…˜¸qºÕˆ2ͱãˆÜBZ+ÌŸûUéÕt‡ÆˆøTÛs;—{Ü—‡fÁk1K­Å5Ú͸¿ÍS!»&°@ ²–{ÕŸXŽ@l7óûn ™Ã  ›¾äl?±ˆß+x}„ûØqc½çè××z„¬n—QÞc I³ž’Z~V6I ò©E·ǽú£·#ÜÂ6€?Å>Ÿ‹=Å^nuÍD9ô!eEvC¶¶)Tp/=Þß–,H`G|3Q¦Rçìr>ÅØ‚ €ƒ'ëì=#͹ôFÚ9>Ï +ÍЯÓ~Ýz˜1–˜pøù‚ ¢m,+ߊt6gNú®eȨ¹tgáèücŒ[hô›?ÃÂÚ Cô„ñ·î’ö=/ù—žsËéÝ••ÛDÙ€èW¾¥ý„T«/DžÜ­ù_úæËå¯.æ:Etª¯µ•”±›qú•P…•T15ÐÓo Ë?û.ñ¼Je¥6‘ëQånΨèžÎA\³Q{íh_¿¡ÈôöMØOŸÑ…ù,ˆ®(^Tvt1×ùq U³Ëñö=ž5öÏŸËÔÄ€”x޳â+ƒX‹øÙ…Î;¾!"Y=oáfŽ4ßü¾qnh¢ò4?šª2¸½íøâàYà±VO˜‹ûÉñ;y¹ý!Uy¬)6À<)¼ ™ŽÒ¢qO›ÆÄZN5IL ²àÎ7šò¥oÙêó£˜íîëÞb|0áÞ}£øÜ¬N ªs×Ù‡xZÛ²Dë%êÇ[qé³þ0>KZ£©Ž¢«Ëº^˜¥_I-ö·,™©©šz~5&¨eÇÎ!ÇÐâÎuã–¦ßÇü:ÐË~­Äñë4¥ÂÀh›Ü©!™c_ãR^çÅ Y’Ÿð¯_G‰RGXrL…ΰl7D†\loÅœÌ2^ÙÞò¸õ¨÷²ýš+q£°|Ö’í]¸÷ëü×7dž0T´›ìÀïQèU“(߼°=-s—b|É »V$O4h²! Ý޾¶s]Bú{Rˆz ÇߺjÛ5}µ®“º nâ!|†ë?,%|·]Çjû½»7¤ßxŒ7Ù~6Á>°Ã16¬M/JÅ2ßeôûì‡Åo†j•ª(=Ëš gÈAïÉ—ØÜ.4¿|ì€fÓíÝ™Ï__„Ïd§.Õy7(LµØxu7ÉǸœãUœ”Á¤Ö‰û¦ ÛÃv8]èñ>¨ ±T ŸÈiO_Ãòòq”¾âý?x‡ðã²Ú9‘ÿΣ.Ú/Î(|ó~ó¹ÿ…ºb€eÎJ R!$ø·Þw›Æê•Ëî!úh˜!'’@½û”ì{×l©užg¸pW+z(:„T´bOO¿·KšÐtíä2 pFÑî"Á@4k‘ f)#9wjØ¢7;±­u•Ÿà™é0nšª[ 5Énù|Êê}IÏÀ¦šð‚¿‚TãŠÃ­t¿™RôÈ&N²ò}=¼Z€Þ»öcë÷û~ò²¥ëÙ9G­ Z£‡ÅRz¶ïå+„—ŦÈÁ5u.êc©g¡üÑ÷–äÁ0ßµ›?‚xèↇ{°SÒ6„§· DzÚÿÎý¤³:e¦yñÜüÑä7òû¿WZéÛÉ€(ÀûS­3œdX£R€u7¤Øjü®XÐNpù¹¢œÄÈg<¤ý¥f¢Ãš³PÞ¿3†U±BW÷[ìäF¼X0Ä_ï ÷¨bÑo.¦.3°†"ýo ŠÇ¯ £‘EC3CƒÚÆ%mÜwdûæcóæê™5¼åð(»ŽHþ° ÕwŒC½‰`_*B'm6¦òôžBö7Û1¦{™`J¦D>eüa¢£c°J©‚|×â'üiœ§ãì Âí6Ÿ¾é̪5PUaz4Ô: GVÜ.<µœÒø˜¢¿çùÒjäµ=«>ím•àuþÌÞ˜Û{ÝÈÿJŒ&hXIiïßÈTÉH©"Uýâšç¶;°C¾¿àºNœ§ÿ$Læ±Sèžd?fèŒfÊ@ãâ=°R`ç,Q¦¼ÜÄݱ!YÞh“¦²k¢!Zj±‚JŸâ—ƒIŠÀ°+N‡ðª¾šfÊ-Í#<Œ±¢4LK¦Dº¢QHX¨YOºˆÃœ5·Ë™îÎRöW]k‰o«ÿ¨ÏŸÇÏ6<gí¸NN¹RØ©o²›u¹¾Éì®HmihRàWÚ¯9w9âî=+ã,Ì}Ñ’éE©ì¦}UÑ< ñõ/>ê!àÖC‡y:mD8¤ O¥Ï­i1ò<Òs+×^ºíÀ.1š7ƒÝ‰ã^#pbÆ/„—t9È –O Xö¶p {þóÀœUÊW‹`ÖÂØo‚ÓÍÞW»ÍÞaU@Œ(9Ü,¡¸®²à»E€õÝ»¾[d€CÁÇÚ}*.Tþ[*ç º&]7CªÏvý!M0]K}â¸3Ö'þÌM!Ç€W€¹Ãã“ gß_4"Oã¢ìéªû+žg:˹G Ä`³-Å€…Ô*Q4/# CÕ N)–\>9¬o ŽmRþfHMò þ‹ÿl4B þ\‘‘!›jUÞÅ+®N³¹`à%Ã4Lû‘’?LÙum¼‚ ¤ß=¨7¡¯6]íakËV ü9c}ß—}9ë$SàÛà†g4ñþÖrfbBrxºYÏßÏTÖýDùyy8 ï7žŸÀæÎë÷wOŒËw¾Bds”‘¡Ðä¦ÛòkvÖ N9»Õ9elt3€D¨8ëâ;·ý{dz¡ "ipšVlËí–NUm5…â"ÿ(ÔVAÞPÕ¹÷¢%òðÅ vzJýËc±Oò‹UãMÒ/ëN’ ®ÜÊר¸‹‚ýQ÷E9ªzo~3Ö Û7ÀìsÉ Àcm¶æúòÝ€Q³ÝìãøÑ Hì".ZÖŽ|K·°Q)Ÿ›‘ŒŠÆ´ N?˜ttFÈ|±„!ZRâÊvÕ>2f{j»$H6šŒšÂy’Í–´¸ÎMî  9û bÚ¤³—Æø.¬‚îQiiEÀ)#Šz_i¾ZKQê*z–Üeâ"ŽÈ,=ÒJeâ´&†õlœÛ÷±9½d¯z‰º!ã«Q¥ñà< Éì±P•s!íötŠóßG°ìºTÒh.£,÷·4´Æp×Ém¤L Ö6lו•)Ê>’!i܇bpr½Ã%×¼¶õj:3lE<=À=î(%%){?o˜‹ðk‹þŸÁGjN» ‰.ùs/ì£8ƒ ·ó3_QIwM½[®2„îñŸ½¿Ì*”$¯ªÞ»ÂÏiË&‰'¢Ím=÷”{©ª¹#oUU ã?“Q×ûtKï:f½¨xx9’¾ÿZ24sÛ¥U™Òž ŸÓêz1Y(¤’þ!Mfò“ áG0Úš Fð½ìd|Æ´Œ5 œ–õa kxäŸØPö2s¢„ ZLò‰âŽ05ldÙ*&;ŸÔWü_1¼-rÞ¦ÇÄ̈±9—bY¡†¬e¹ÃöUÜëúw@ú£‰]%i­é,kK=¸µÐýäòì“üžñÌè-ßQ‰öýÐÇ8½¤0N°Ýn Út"ŒaN/cÁá…/ºñ¼\ wo%†k˜0í`rˆ¨=Ã`üFšîpže>´ÔÒäç&Ã)•?€®ÉùÂ¥EŒßÊ9Ý(çRÜoÅzæÆLëÐÆÖ/I€G¥côŸ[a&PMëÀG6 â<Uîd¢afž"zY7Ï›¤XÖÇ·¯. Zí¾š½-Tc}¨ÒÆÓBªË6ÏôÀ¶éˆç5;Á³ÛŸt‹wb&/EvhúK=/£ÈþFÎŽQ‘/L€¥à·ã·‹}Ok V™-5ÃÒ^üRØ¡p3frøÇ!üKTATôÚÂ8'aÎ÷Ïw`ö—@k.»&#…ͬnœ…¹qqïCXjòùt‘¨"ÕÅØBÔ]‹Žà(¢kOþ÷ -~(!>ZôÍXžúÌx1Í}´ÃÐÚÇû™d­j+W›”ç]Ëó÷ 9ÿlïwÇ*ˆÉýéúØÁ0Ș„t”ÜjórBWlé$¢¹UÆ•¦.o˜rá©GË+Œ!Á}ÁðbÀVàþ·”Øë®i^¥8~IQ°Ÿ‘ Y½Aô½;’kÜ÷_L±!x5™»£’|{rð÷261Ùuu†êÔiÍ¢#~G9²çSdÃK±Y²£Ý–Q%ã%÷Њð HPCR>s>ÓΈ´ÕQ„¶9º„®ÞVÖªx hæ k–’©Ìj(*ñ„óÚÞ J˜6F} Æž Ûí¼ìU™ÆØ¶Kž>r •>‹Ê;—•®äªðr›:æóMÚ³•ÏÕM‰ú.ÿ„œxó–Ü]/‡«íäÈTKsVàÉk×ñÉ®ÿ¶{ÁÐ!œ01§Ö‘ QÜ5efòçÎÿQ$ÍJ½)A³üu‚ÈÇpú©O!PÙù°`‰ýÅÅ º¹oPèl9Éâµâ]¼»89w:iwçýfsº[zˆ.S"â¬øjÈR ˆZ”¤Æcä‚sê•x -rŒJç+~?²D?äQÑ–’¿™d»ì–æ²´ßìŠ5.Ûnð/8‡J)ÁÆvZôñé3Ì.€çún}ø2@CF6â}a{ `•¤s5¥Øe¼<‘ÿÏÎ81л#K†#­ž¤?€ÞÑ † ›óÇúp!–Ï¿4Ì“â|m‚µhÙ}„¬HS`žnVãHÿ5à‹×áµëÝ’qßX^ÜF*ä°0òwg;`6eÄ«=„S ½¢¶³3lø= E‚ðúÎF˦ õZÏúZGGþÀÚÖ}±¬Ñk5˜¥ã×?xé¬íú|͸l€Xq¡µLöW* ËÂd†Ì­™œ›äŽx‚öéË=… ó¸èéÔW%—,W9Áôt8<à ìXZO[|É.ã¤+Hœè´½W:\½/+4ˆÍ9ÕAl¯<|ù9Ä%°äÏï]ÚÓV¥°âm¸P©ÏNØý"̺¢ì×ú¥ãugÝÊ:6©u=–©á\-t— T·°!ö#ŒßóŠÌXغ´^!S’3ëU‰{(,‰¶t{'Vn;½Ãê~D ´_>ßÖǰT!ZhoÙ5˼÷¯Ì4~âØ·ÍÌ=Z˜>ìv,ò0•˜µ@Ì –)Hýfÿ¡Lâå}õ.ÍšŸÃí¤dèt£ß³‘Ç™ˆV’Ù[=ÅÊ,«ÊŸ£ì ×éÁ€zÚæÇÔ· L–Æ+g ?-T8£e®Ÿ‚DdEÈŸ»îítÇ‚zb’äý_ÔÄÅ¢u5A6'O*<¯r›ôŠ"ƒ(×¥–PÞ ayÑôY#ê“Ä)D¼g ѧ³cGÄà­R³&‡WgkIÐÌc˜ ëd7þvJ‘e&R|¢®<¸ê?±š–6ÛË?›å¯áœF“u í>)@ÖÉÚ_0ÃqýÇFa±èøÛÙP~8“ Bn¹j”VƒfAÏ&EáÆýÈcÈãÊr²-ˆ_ÄU»þþD4‰ëÂ5RÏ~(6 T¶‘ó‘›‘j÷ÃD ”¢È1è/1`›c†#.=ß@’ŒE¤kDàŤF`à ˜iÖï»Aýl™ÁŸ†Î"þ•™†ÅÈÌûϼ~ ©×›b}ƒ6kÈê!‘–åÆSýöU²cÀ€J-îzwùN]Ï 9ê_ rÆl¿.nû‹Ö.™¥ç3ƒæíß¾åÇGÜ\Ù$WX¤N­¶u=Ý£©vi&'Ús@‰/„—«ï4Ïöù‘êŽ(ýÂ.i:Adƒ"—ß!éQSµˆQ6l§9FkÞ(ˆ’î&!¨ $òSa¦Ç°ÌSì96‹I.'æöÏ´så.2 géá…°y ^æ¬1ÕÑfC·ŽîÖî¢oØ-ÍøT10\=>°T4Obõß jIPÏí…ÌcêYÞuX@ÌÌ:u†o‚VÊT¦ 1wÈñ¥àgS›%ž"´yýt<7èέÿwÒ OE@ SbZPëvFÕE džèÀpn¯‚„L‚Š Nª]LÃñ+Rï-ð;ü)ó"¡àå'Œ$R û’­ûâãîó8IHàgõ{#êy=ndíO„ÐH¨p⻉ÞyžBÅeð!¡„ì”%%·x¼u ¢ dÛq¼Þz6x¸‹Ÿ¾Ãa endstream endobj 1319 0 obj << /Type /FontDescriptor /FontName /VXPDRV+CMR10 /Flags 4 /FontBBox [-40 -250 1009 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet (/A/B/C/D/E/F/G/H/I/L/M/O/P/Q/R/S/T/U/V/W/X/a/b/c/colon/comma/d/e/exclam/f/ff/fi/g/h/hyphen/i/j/k/l/m/n/o/one/p/parenleft/parenright/period/quotedblleft/quotedblright/r/s/t/two/u/v/w/x/y/z/zero) /FontFile 1318 0 R >> endobj 1320 0 obj << /Length1 2792 /Length2 21389 /Length3 0 /Length 22957 /Filter /FlateDecode >> stream xÚŒúPœiÓ ãw :¸÷àî®Ámpwww îww îN° !X‚»s&»ûn²ßÿWSTÁ\­WßÝýÜÏTAA¢¨B/dbg·³u¦gf`z‘Sff01±201±ÀSP¨Z8[ÿÃS¨,ìlßÿa â4tÉD Avrv¶ik3+€™ã=3ç{&& ÷ÿ íßD ]-Lr i;[ <…ˆ½‡£…™¹3(Íÿ>¨iÌÜÜœïþrÙ-Œ mr†Îæ@PFcCk€Š±ÐÙã?!¨yÍíß32º¹¹1Ú81Ø9šñÓ¼¸Y8›”N@GW  àWÁyCàß•1ÀSTÍ-œþ–«Ø™:»: µ…1ÐÖ äábkt€’T¤d ö@Û¿eÿ6xøçlÌ Ìÿ†ûÇûW Û¿œ ílì m=,lͦÖ@€‚¸,ƒ³»ó;€¡­É/CCk';¿¡«¡…µ¡Èà/æ†q!%€!¨ÀÊs2v´°wvbp²°þU"ã¯0 S³5±³±Ú:;Áÿâ'já4»ãßµ²µs³õú˜ZØš˜þ*ÂÄÅžQÍÖÂÁ(%ú Hÿ[ft°311qr³€ »±9ã¯ðªöÀ¿”̿Ġ |¼ìí즠"€>¦@Ðx/'CW ÀÙÑèãõ§â¿ž™`baì 0šYØÂÿŽMÿÆ æ;Z¸´™@³Ç `úõóï']Ðx™ØÙZ{ü6ÿ«¿Œr"ŠZš tWü¯NXØÎàEÏÊ gagpsq8Ù™>ÿòoýÿ«ý/©¢¡Å?ܘ~”²5µpÿ]èìþW†ë?SAýÏÆÐþ›AÞ4Ê@õïÉ×abg2ýbþÿ<ÿ¹üÿû_Qþß&ÿÿw±¶þKMý—þÿGmhcaíñh’]œA[!gÚ Ûÿkªü{“å€&.6ÿW+ålÚ![3ëÑÂIÜÂh¢hállþ÷ý¯  ðÖ¶@E;'‹_Ï=3ÓÿÑöÍØ ôS;Gø_å`0 ýý8ŒÂ¿'€Qä7â0ŠþFÜF±'€Qü7b0JüF,FÉ߈À(õ±¥#™ßÄEö7q‘û@\ä#…ˆ‹âoâ¢ô¸(ÿF .*¿ˆ‹êoâ¢ö¸¨ÿF .¿ˆ‹æoâòá_Ä â¢õü ÿE¬ ?C{Ð*ýzFþk’ýF öFކÆV@Ð…eêü[Îú¯üïýúWJoüJ2¶p4v±1µÁÿÄì ÆvÖ ‘ûŸ„í—!è û›Ý¯YdüM‹t&vÖÖ†ŽX€ÈYÿÃ…™Ä4°†Næ¿Çæ—ƒ hÍÿüËÈÝØÚÐæÈ 6™þ† Ó? Û/hñGþ ÙYA×ßĘ ~çcÿençòg ³? (þoÂl 90÷°7Úþa’ý‘Ÿ T¹åÔe«? è°­ÿ€ ýQ)3è”Gf¹Ú‚Öþ=¨v»ßd@ÎvÿQƒŠ±ÿ­³]ñ¶ÿ™6æ¤ÿVP.Ðð®ò?L9þ’YØýn<èpì­]œþÈ ’8ü1;g ‰‘õÒ‚.¡ÿ'3÷?šÿŠ™5ö¶0ƒNùwZv“ÐÆâ¿sËþËèúGsØAAœ,~Ï:¨L'ë?G™Tåï´ +‰ÑÙÜøÇ$ƒŽÑÙÍîP —? ¨£®@3·?¦äíþ…÷ø‚ŽËó79P$O ãß©þóX7vquÌù¯‹´Bÿý[î@cø•%;cž`ËúàλZ!|7úÝ)¾yŠ]4z¯Ç.—dØ45Y›Ž7BG?£®ïˆQ_ ®?{ýlk„ kORêxô~ÒOPžÝí€_žÁšþôS¨aŽ€^UpÏûÙÁ[=À ² ¼Gš"ÏÁ… Y±ãÎm@½a°|m"tiWi¯†Cá©|Ž>F-Z' d"ß({—Æ™žð -ú™;ÊÂõÍqÃï‹{7Ê /M˜Ì¾xùùñÚÀ,²¸Oä¦<„b…˜±ùB¦Œœ‚ÁßàsKšûGûN_.Ðð²ªÌâ"…˜ôT@H÷ƒ-áÈ9ÐF]÷Pà‡ìðºQ1ç9\êÉ‹º6Gç f1H 4ªØvºkž|JÄöœÏ|dÈV‰J’»"¦ ]ãm‰>q}Vœ7÷'ãe–"SÐßuúú©c`DüÖÌ¥¶çÛhËrÎ&ôî5)1ÿì)×F±‚Æêa'Ž’…ÃËÀÞtÉ%çvú 6ÆêÙìœP®bZ§C¶òùœ¨N@=£tÇ}.SxbŒooQ<&ƒØ—Žr˜Ê¹þY@);“ b@k`&õå^„Ò7Çö²'L!×.•hÄ,)±&SáùXkÆ=Ýi“¯ºÂ‡)˜sHÉf%†ͧBÅõ³zß[Ê `⮹±3Ø->ÒEwKC»× ¾ï+Ü[Ÿ>ýࣼ?m6¼Ëí[3sè|h­ö€åIR®Kæ(ð(@kJ¼yç¿x3K] v%Ñ7Ô#݈fk•éëy<^,T¸áïߨ‘ΉnʥəJ«Ó€ƒé¨ÄÌ T‹èç{†ö8Áe¿Æ²O>kUÎU»m½À fêl/ň¤J¡ßÊ,«çÂø8ë,õ*äN;QH¾M²nF¬ ‰+é¯FPÁ£Ü§v¬¶å$@b]#·R9Ëb†¡p°Æ€¢:À™„ûÐì6äG#ÐY$òf3/EÝ“Sï›UfNÙµ4O¥1¼|o2í%ÒJŒAoñ§­ïÌÄ…~¢pµO¯Æ“՛ȣ¥Ö ~ÛIsæÐÚp,+›M3¹ñDÄZ[®jW߬;½)hÔ‡[‘mÎÚ¿Td¢£óQvÂïWb_IÇö;¥ëNÔ'¦C{Äú­ày{)Äp 4挥 §ÆqZJÝâÁà„ù¤±¤â=7bF<•P ¾¦ r²!¾‚aý`£N$èdà?LäÌ™SÙWÎíйtÔô ­ˆš@“XbE%|Ÿ¨××”?ŸOKÙÆvn¿ìøÍ=æi›I”§gŽ’i%x®¢?»K,b­§3á³ÚLïÀ-Ø>» |Ý€¬ëx)†ÍkñŽt“‹tL2ÆäÞTÄ¢þžÃkÅÕ[Ãó±œsX’1©°…-UyU·ƒ½»jÞfiW­ ëË;qïIÚõ è`HŒÊHCâ]ûdÜ yÄmÊ*hŒx‚ÝAr?ïÅ[ ~Õ®i«Úí7‡Ž.!µål#[\¦4 (ðP”¸¯Ü$XÍý_x:LŠ`Z×­Çìà&ñÚXž“Ô¶/¯]z9¾¥‰,EQà ~P½¦R¾ŠƳœ˵[b&”+·õ‘}‰£;Kz¯ðÒÄ8ap+´?Ÿ;»‹†5ÊÖÛX! ,Œ51B^ñÁp±V N(ÁÏŒ [J)ùí%ïL꣫7ï1ì‚ÄÊwAçÍÐhþíÑ8{)œ*ŠZj"Í+×c{œ>ÌÜàÖB52«ÕþàÄEhoRRt“úPé2¶ê¬®ô9°.©RÞþœa]7°¢UEl¦®.ÓÍéGá`W^¦×:’&auz ¤*ø±^8­õR>"æÔ(?mÓh£Qµüë^ú ¤ÌÚgÖÝ.´ó‹Ãº€ óii¡áôŒ†N~½tn×ÜùxZ|X*)çÖùê÷&òd§©…ɲóø{†Êîyý$!O&$]ÊàÉ™~áM´çy0=ß¹÷òpTªEM0¬–ûñÈkÔχCËõœSØ|ÌÙ ’ò᎒UREïZ`9¨¶ŠÞnO£Y4‡f¿†Ê+üÀ]%s7ƒSPÍy£¾KßAÝB"ÝÔ¢Õí¡¹ ×UJ¢[ãùe]ð C³Ù="ûqØ4}\’¨l#»¾ãŠäîa•ƒY`I #‘ã~I êÙd"ER”; ÒäGOJ¯{ނгñÏÁ´±öéü‚§&_©ƒißçÜÙŘ„É=(G‡ÒÛ~J;¬q†JÔ%k*в6£–¦V¡¤±›`ÌÒ*ˆÁ±Ç#Õ©©š?¼ýjíÚÃݯO~¿ðv‚Ü^$3cè'!*Ýu«\,Übçªâ£zT¢‚}þذ³±ˆAûbÞ7¦ÌØzÿj.öÊBÔƒT‡‰áÌÒ4ˆx5Éó|c¶bö±±Û†h‘:5÷?¨hÆõÙV»}d>ä×Ð5™,ñëo¨Gq ¡3‰i 9¿yÆÄxKSiq ô(7TÍç²Û¢ã[p ³¿Ðî §ºoÙv ÷‰=Bˆ*¾ò·çÉ1¥®×ŽôZmWz >”ócÝåX‘mU» ôÙ÷o7¾N&õ?o;7ec®õ’è3:çL뽊žLwÞ%Í ^èÒ-7'tEЬ¡x¶]Û¢yA2)©U÷ÈœG¼£\ X=Ä'®ÕÁªŠ_ÿ>SÀ,+\[1N&ý½¼é¬÷ò¥ÿ¼•Ї k€ 6¥"Ž– é%+JjXøñÊtOй”@`ÁÒ¹Ÿj”ë=#u´TŽD~î*, ØXGä0ÔÛ°4$Þ ºüú2ÇÀ]–{βeÀ8_x£_MwÏ®g¿T7 TñP³#PB¾GSÞ^("… FÍI׈Ç,œ(†^öý~ô-#Våjõ„=†árÊ”÷;3Ìî÷ÃÉ#ß `Ô{?žSЉAä4£â"/Ýa"Ь¥§srÖÓ ¯CÕTɹnÂþ üíÝBé4=…XÍ¡I2`Ffk2¦ä†ö=8À–:Ød%6ÕnÁŽø¶D?ä(ÙŽy‡÷kG9DxÁ0R Q˜»\¼T|×U•6¹‰¨ê­%Ô{Ĺ~Ë–­À$ o†}1n7#ˆv§AaXÏøí¥Œ‘F’¦ ³3ˆOKO˜¥¨[k“F°ÆŽiÄmk xÌÈ~B¤›¶šçÌMàl!¶ 2„} "ôØòBeÛ|Ü8fì|Çzî“ÔÐ9b~Dµ}«Î\8¨>ò¹WKR±¢cÁɉi=EÄ=$ñ¸£Ðþ¤º>àÍâ˜=ƒ½ +bª,#6ʼpÅŸY ±™†’™~K>€îˆTÉ¢ÔÀòRÇ_«†YÓE*GÞ(ibLM×0†@ÚeNZfÏõHàjÀgDl_‚Qoß©)¹Z)ië¿ÌF¥Õ÷Á#&@TÄß‹mõ§‡y:õMÁ³é÷µ Ž9[f@…Õ¡úPp3{¥™‹C¾ä½‡ÎM ›Õ5ˆ¼aêȉ²Ýì¯ÔékÛBePBß=fÔŽ„è"ÀÕN ôWPv–à<ñïJ L#y‚=ÔX*Ž×¼³ÔØHÆV^­vált@:긳´±†Ì`Í%Y?{Ëí˜ü/ÆîÕÀe€‹¤ž¯Áªô^M-ýIaŒÇ×g­¥í΄?8rïÍòDÊ=±Y{7,4¸µÚ“kÑsd.Z©…'ßy©¸ o –4‡²DêÍXãúD˜«ÍÆ÷ŠëûþŽÜ†9LÝJ>EŸà§u}–õá«çkL ÊŸC‡<À: Î/‰ÐER)wÑ]LJ¦}Œí 7p‘Äo7O3s€$*ß¼Yb“Ägxb–âm±üYß_KXƇÝÒøZ}̘X‘£Š*YSæ!hß”ÓóyÐ 5‘vi¥vK¤,JHÓ¢œ.t«Ä0ycˆ¸ÙõYÈGûËÊ ¦EÿÄL»5­øþõ>ˆe£öÓg‹%Ç|ÎYèP ‚ ÷ÈÙI¶"Ψc®ñ–ã`ÿº°‘v+ßÅ÷/]Ù¢nö¤<–çµBPUpS*Ê:Í ëæÜä·pžEê¬v=0*|7\$É©¹§å9®(›ŒR8Df<ILr¦x^ˉ⬄pI1A*n’¶ö>¢uLǰ?¯<®¿š~ ò/Íb»‰ePFÍFß„Þ H…6žVóV¸(¥kS#$otœå[ ‹ˆ¯Æ·nÜg7˜øXønk›qáLÏ‘‡]{lù …_)Kþ‹„–lPåæmV‚Yj¨=ŸWè¼>ÊH:Ó‚ä$?õx£‹F×|‘§w¦êD㎺”ÜN)ífa0Çg,Ø ãýêU=ÞÔ,eöIWz·jÚ]9”å¸ðûËæ@õ‚bD‹0ïÒ¦!yo³*CÀZx}—$kd3G ÏÃ7ôí„çê¦_Šýò#¤kSðŽÚç(÷)b[5 FA.5+X±ª.ÐàÔ~!<ßÀ3Úë…*3+Ü1â‹.#~‡÷„×ùK"·|ÆJßĦµ”$aÞW§ì~¾S' JíÄ· (œ¿OÌÒSåe´1_j{ÊdµÓ[bœhÍ®—}m¬L]KE¸¾Ž c‡"!q«Úk Æé¡M A–çYpÚ·T°4 T’­hà¬ÿdߋԂm"¸O£¬Û÷j.°ªmb/@vä^˜ÊôÊmOÀγá"³eýÔ7yaIª#ð†³XœAur¬hMŽ`†fÇ%£ŸÓÇdvÆ1õš7sÄqSïw§•´ð˜[舽+œýZ§áB $pO8"Ò`y4”›½6røP;y=°:PB=}3œö"•y…²%èEÒÂmL×7hיʾ÷…6¯‚ííÃü8‡ æE›JGšôÝ¿sµ5¨\ý›ddzâõêÛ¦f‰ÕÜ[I÷ÈoP:Uë'ç*FÁâéûíU¢a*úDêóÞÃBrs»at•ç½Èä'é7W0q8±ëDíS”ü©y-yù@Q|ÂÏûÄæ¸XÑ…ÞÄèg2ûüìsQ ìÔ2ÛXóüt°¡Atl‹‚¥XÐÙ±3‹'Úˆ[;“¯á* é žÐ¢?F$'œO&•Ð{—]+«Ë9rÀ™£YÆÜV¸UñrÛ«bŽ©) n.œ{“à pÏGüÂsnãl™wÍ(¶ž³k@åì-2Û{›ï˜ µ/+¡¸nŸÝ\hå‡ï­ÀÜ#³Ó_Õ ú¸+%?;pÕ²Œ~šFc=/˜º¸øâ·˜yUÄ ’C7‚#H‰Ò™ 30«Û›m¤±™OR ¿Qd¿‚eØ”h×i÷Õ¶c^L4±Ñö@Äñýyí%!Úî‘*_áw°„ÌoÙMøØ\^D 6"jË-<-JÎ/ø;ÙÚÕ‘Z›åèh–CÞ •؈GöDx±´€ÓË'8vßwDCœ.—¸À§%+²× Æä®$SÚÎòöYÁŽÓ-O;ª¼Cúí¹ÎB–øˆ_Ðæ:C0ZøÄÄ3üß8rd|LYÎÝ t ùù-ÅG[êB^àSsRËŸ:CšgÀZ/à"G`»ŸÔã£Ø“ ºÇ? ðÐÚN‘_¨T»›?ÓûsyLŽÇ×m5¿œñY8­õF;Rg3"QÀ¸¨ÔÃÛ´"d™8¹Òe±†©Ã“ÃäVHËû’RÛe-Õ§{l'ÓãÔ¡k»“î¥øRw+Jí’$ÙiifÇòf·™ê-7îÃw É@:G‚Y!aÿÒúÂPæ³Í¸*„ø ¾„ö‡æqæúóΟùòåq°ÒvKï´½¯ ½õGîùŒ¾o:qéU*:f¨ÄW©!ã+œwóe´›84\€Ñc±SsŸÂYÓúSªš`‚o7ŸAm²¯K¹y-.AúÖf°zÛÉð;âxã?/ZB+èa‹ì€‰8+™ðMò¤m)UEÀ¾à^Æ|Xáߘô)ŸöŽUñ+’-„¥ˆi 1¯¢2c%ç¼Þ|#H=^_°ÃJ×\§Ž¾¦Eßpáh]!,­yõŽv»‰¤9©!¸HØ¢£øÒ/ãVÌЯZ?ù#B 'ðò"ë:±ûg3›´79oÉ­ùp?ŒØç[$—s‚žçá‹j•ê^·ôË"!L]²‹Î7)7ˆ P,xG†x+apãcG U?Ĥӳ¯9“¥\]D‹ÓÂŒ]Ù æ&KÓ™¯¨8p‰Ú|«EÍè,ð1vÝjÞ`¼¨Wœ SßóýÂñÃeB3&¹ÖÈ\ôA'ùJ¼Ð¿Ô›ôP©ÎÎK€çK¥|k*U®4#«Ý;Ž¢ÙïWÊî‚%FK “$ªœ¬(“ú¥bËx\èÅåÌ•ÿ­ÀòEÅzz]&‹d#aˆcù}@"G\EìÇ7taÜë+Ÿ‰Qù) J-Ý”©ÁuP§¶%§‚U8ù0ƒÌ!aÎ{&cùÍéÛÚ Ðïêc?zK†Ž K™o}ºg±,)¨´ƒº›4fÃ-Fü1¥hüa¬·Ö*‰­¹^´Ç ‚|¸á/x4o¨7zìV¯¸º]Kƒ¼Òý$om)̵lw›„Š‚eÕQ\\äXÒ+¤§šTÿèì+P ²´ä6þÌ]I¸–dÉnh»•ZÜ ²H3~øP'cl2â#m‘j÷œÓ–j;:¼¼à”_G«Àrõ1<ÒÁÉK¼FTqa6 ÅÖZ‰éRëóæJš‰¢ì|Š·°ÌÖ¡-¾*ð@z½e!mhI;O–yöt× ½ú[g[yhâ Aù²MÝöÛQMå"T¹'Âêá—ú`ÿ(1éu~ q7¶¥1 õ3× ž²l‚¸ªÈ¡ù3…ØnD°Ÿ3ý;+A;é%2íŽú…Á)71c”ÆçRŸ‘²Sï%Ø#¡Î¤Ë"„ˆ÷Qsbô·6ž–&8ÐDD]%Ÿ°{ž¾C´˜í·óPHvÁ=¬ú8Ôõ° &íåö¸¦Ú¹é túÒù9ó¹ä²«{KËp†)ñG—ÅŒ)#ÅkÜÅ>p"…yÆÍYqÖS¿†¥g”6·û°06ñ–c-ƒarÐèã}°ô=Å„Öê7±½)ôPÄ&öQ„RZŸUª#MX…w¡W¤Ï-Cb«ß¸ìE]*Ø0(P™öo0èpP":xÍQij‡Ù=~LŒè/óJа"lÌrMàÏEñ/ÁúêW¬ _úD™ïY{°—ŒéÙÆí)"ÝÀ+ˆòE•ŵ­0¡“‘hâ~~V$ò2g™Šà-ú ­ê®¬­ˆœ\E£%:ElQc¡<&— –šW#jÛ>#&A”ívÏ÷„¨Î® BxôÁý1 š'À­yš˜æ×àâ@Ú¨Bµöܽ„—²—õë›)¹‚¦ã+Öè†y<{9þ­ÕMÖy¶}‘¹¾,–a2©°’ûÂTBî—=§¾Í×HsFjN†Z{ô„Ôi¾ƒøb¥i„¥D¸/n>™2hì0´ÂÀ÷õkñ¨ñ#½ÜèÀÛÓ0M  ˜ãâgÏFbt÷…ª¬nÔʨº'©Q 餥¬þ¹9nü¦<`H®4¢ÚÁ}óѱK£žIoúîrKXKW[ƒÆFº;|;ÔßÝb´•ÊÜ莻svž…^TÖ±¼å]©2¤iØ,èÝ”ã-úd‡ÕaQ“™òw§FEˆ ý_ÌT‚„L×!&;¡ÊËI†Wyö­Â= ü1³Çbú(½‹S¬zº8¢©™ñKÊ•èâ6!±-Õ.³:=1†.²åÆ»GT.ÃÇà¢|}`«(/øô.¨¯Ðv´­.I^v_¾HGv+Ý¿± v3ó™^m¶ånŠŒÓí,ˆ„êªÇ3aÎ-„9Kò#ÍÅÙS[~½éIŽ 56]—YÙdµ†ÆçXèÁèœ(ñ'øTŽ#t•ÆÇ$ªÆÜÖÜ¡Cä]zFÂiÐ99·E¯èZ—\`.þ&·!j?@Úì3Qüè#ÏÁ©‘…gÊã .D¬;ew÷Ãô~Úàñª±]‘7\e¼Ö{‡ÃÌôQ+§U&(ßþâ ³†8¹Å§\¸…y<Äà[÷f0ZÖŒŠ ýb£ —aÇG´»`¯À#q…cäÒmš–׋[¥tvð&2š¼¯Ð¯R`ã&Ãsb‡Ü$/8ãj¢ÚyÅV.ûS!œÆØ_mÙPÛ¯x.’M¶ó¢+æžgШO‡>¥Kc æëÕtýâb«ç¾‰#_ŒØÜ™ÇŽš¶"ïpÞûÔœ1¯UŸð@§q®Þ4l§¬×¡ŠóˆÛ9¼Ý+--åẘŠ'úøâž¬"ü>RàL¿ÔòSŒÆÕRã‡æ:˜œÀ³½“O ý£»j‚¤~Fh? ®Ž ›Æ‰ D"û±¼é/ß:ÿø²Æ`ÛöNçZ Ѝ&^cN‡‡oÎ#…¹×mL¸08:Ç–@tï¾PóˆK0²‘ÖÛ€~·îªrpO+À/4Â8Ø*¬ò蚣…ÿ-7Iµ£¤Aɇým;: i 믢2L¾z¤ý°7O¼—Ìò]Fâ=gÒÖq¾ô®€!­ªÄKƒ4¬ìW5¢8vúfåô‡bë ZjeÍæ¾ýÎ!Ç‚BoÃÔðxg¸HÔÒi!W™ê(ŒR~î­´}ä%'(ÐßL¨€õHoò•´ç…“‡}YYñü%õIÒM±Ó5Žæ²UQq<µî´Î;?±¹RF[óÓV«p}¡‡†­¿¾XÛ]ê¢N2„»"´°(ƒåîú˜á~"¨áß2H2$Ê,lf.'²'IO!(|W)U/$²j~À g´pc)†vÊ/¢/“•rSÖ|ºU>}DJ¸[¶.#íaýSb"±™^О¸jÀDÛVY¼öã+¯Àݳe6ijçu¥ýža|Wk[d¬S)òB µcšÝmÝãK²Âê—7~¯7Ù6H¬oÒc-x#¾S†”  dGÙ:ÙÊs`£¹ÉµóäZ)}êà½@×ë/ÿò>c¨IÂ#š€aìA™<ÜÛƒû`ÂÚÅ’¦ó8F©VƒÙ7bóhÏM¤ð |}M×eÓIÿ¸š0‡…L§K”hnr·¿€Öeè ¿1$ÂQúŠBäuPønüt£ü¼T³p6o::Há­ªÿà÷1`&S¾|ýD¸¿¾½w„9 {FVÐN'oèR˜ì­8 ô‚Ä— ~q&ÜRCôÝ1Ü•tˆ¿Ö¬<Öųڀs¡=éƒi­bJvžNÆf‚â»ÐüŸ”82꺪,m=% ƒa/öƒ®t‰‹oh¢FÛ¨=Âés$®l"l-½Ÿu¾;fåÎ ?tÍÑ¡É#›|Rx…d_L^šþ昢²D9Ý؛â¹ÿñ!Êhp!@l{O@‡Æÿ^žNõ²¡»·¢Û»–®ßj=»ù0Rbî9ú&õAœ\þ~ÿt´$•ú%«HÁûTV^>íBl% -¶Ë™•–ú$æ’DQ\)o:5¼P´óæ—1¶Ùzê¾ò“ý«Ì9˜æáddsÖ8¶ÆÇϪÞ[¢ÄWEhÖK¼ÐãÕ|9 ´uíU ²X“’ä4"AaluÈMKÈ9ZcãîÆ6ËÛì…›°F¾©ß ˆ§`+À™6«§¬¾_ªªDøLV‰›å«eúñ´ S"1ÂÍvê-j4|…øL ì ö¯ÎâAò´äðÐ4”Y3QÀèŠeÑW–Ûw‰Äw#ÊY±| dIAo¿ÛÄ4€{Sýò–ƒî±<^X:ÔžþÙ .Þ§Î`sèTÿmÞ’8îUÇ;úvÓýwïýb¸p0‘åm®¯Í,?‡Þ½Ëû:Û7\)o¹·‚XÀ*v'í¦ÚÛú‰›Ú¼¼²Ï…¶—jNY©8¸ gz̵‡ Cî,ˆyÊÆ¿û³./–úXågN^#”g?/2A²Rû‡Æ¡øóŨ,µ@ä#¶ÎÉhyªµ“À Ô*I»Õb£gsl5«Ï™y]ærf¬PK‰rý•ÞÆÉ„»~CŽ}øMùó2 ߊº¿·ä?a67ù—¨r÷?Ú²V{[ =Œtô´·&Ð×Ãܬ)KíÓÓKêõE ¿^èI!çúb™TÌ)û)Ù‘–ê‰8ö=Æù¬\–ÁİT®Ým}¸!Ò&ˆR þ€¹OIÅ9¼-¼–mBÃ¥gw‹%4ÉêɤGm9 Âª7ï…:Xx~}Qó1²ûÑÛ¦c©9$SNvyö¹§ô¹¡âÞ ]e‰7BÈóa+²ÙÇ©âÕwf»êÓ~ü(àYÂßõºÔÇðû’©&VkÀr©Õªnš8B’rÅ‚ƒ%D}úsñgÁÆõ½ìž°Ïô˜ø÷CĆöÒbíì:Ë¢3wÑ¬ÓvÛsçùsÊÝ‘ÅÜ&9T®‚OΑz'™÷$·6¹…»è„*àÊ…w,¬J7`—+žOÇ5 d3`g _MFPߺÊ *0ô™â§çé¡CW8nGËÕ¦“ äuž——ìöäqi`ù)·A—?rö,«ICµwŤ/æù£a4Ƶ)÷$§Ç x²ªzSa»}ðZ[Íp¾(.Ç;ÏÂÍÇÎÖ±%äçØETVú.EX S8y› w]õºã٪ߺ÷ëW¨‰Ì,Ê‚:“ }ì˜T–ÎømBr.CMÔU¨D«À–uÆyoc„ö·j©XǪY^ÝŸ/,5|Ç· ßwq<(H Ë_ì£wÄ–ÆYRm°•ôj½L„qû*¸ÕàÞ†»[Òkƒ§Ò$_l¦mA«¤._†ŽQÂw(¸´àÄð,zÛÚÕ 2Ê{‰Óù^&î£?¤ä§ÙÔÅ纒9kºÁ*ÚAOŤ÷í«ÜîÀ¹iÔôËbo‡£„FiËf¤pröýÈ<(ñ£)%êÑòAX¶ØíI«×Á]Ó~ey^1£ºÖbº¹ùµ±IщâI ìè´£ Ýû¬‚òóUuBòo~bNŠKp+ÏÄ·húY •H9¯¾«Áªj:Œ#FcqåP ´VýRcöe*µªýE›«èRˆS-®£dpQñVómã·³¥¦‰Pmóž «N”Kèÿ˜ %°÷ºÞDöáoFvQ´ß ÉêÔxÞ[:?致}5æ!ðÉŸeRÔi°¾ï«þëß§2JÀJË 'P9ÜqÞëÕ –ælÔœÕͱ›{WÈÕZâTކ[¥‰É#¾é'ô¬æUÓJò uH9¾lÕ5 žnm1Ê"mØW¬ŠýU°J~mËn\!ÊJjÿ,ÓÉtqÎP¥Ú=D/TÆÕW@S›ˆ¹}‹å¿€ófGPÑmòˆ‡ßé†yñI|ÃÐ<=ð~SÆÁë§Æ%õÍ`OzŠÌ̺ŠF„v&2äMà’/ ›žJÅYjs!â(/†i­Wb¡ wZçèÎûi¤µðI%Áœï§bÇ…Ñâ{Íþ¸`@ò¶QÔri g–k©ìGuñªQVš`ù6¬ŠX¸†ÆÛšò3…’q)Õùr×rþÝËÉHnµÙú_® ÕÅí!j–9…Oe²ö|0Ž”ËÖûùCîsŸÃ /»Ù=‘n&$ë| &P™n{NÍqF)‘g«Tµ5IlI0j¥ÒC h»*ÀðÅg)oSa£‘Ÿ_òÊû/ê [:Fi»Q»Äwá°÷ÓƒÌ>„œQdu;ìtœ&SŸ´ ”½pÝHqOEý˜nä(•{o{G(èC¢rë t]µ`ý%pÀŸ«¡á/K ¨=cŽh0BDÑ;¶R® 5ý†NÉ2¸nCáR—G°Ï]MËG^êŠÓFŠ`³xÎ…k«ä0Zð•$M¢ì ~=czÑÚ\¿=Д…핞Qës°,°DÏÈ+ù’Þ³ E"zyA4ܬg†ø´MdN³ŽÕ´+i‘H23ƒÞ«“ÞOŸ@šÕÕ_ƒî: ½ù3Ø=Çì's¦aœø QZ¤³©¼Kõí8êŠdhÄ3|é6ñŒ#c'ý]†!rzã;ßÌW˜|ô}¾Ã¶Ø–Iàö›WjB+ù:£ “Åêá¿^+kMb˜ÆòZO_5nß åŒãíqñÏG«~í˜Ãtæ°rùh¢™P’òŒ­]¥Av¾5Ðå¹Ô·Áz‡®ÑWQÁ§Î,#-[;Þž;ø_ïùGÆXÁ\w°–ª«» Œ±¹3ÌüÚ}]³p} ÖÀ×W|¢‰‹Kæ¬û1p,p'Ð+ ¼g(Îøáʧ&:œ=)ß« õRg˜ÒrŠzªOÕï J˃÷J툎vOߎ~S-Ý<ºyÁôœ’³x•ì ó½€~ûD—©»)ì;ä&Ž~óù€•ÛIiî°q{y|%«q³£ãU¯¢êK@ó=ŸôáíK%õ"†È" RªW1è[|”ßs¸4Vú%œ:BµãwçATN cî¯p$QèI 1÷”:ÁY,ÔªŒO¡åüT·ä!’Ê4¤ÇMu´§(AÅÖ ¢o£ŠS¥Úd¿Ñ†’Gçé¶«´‹T‹Ý·± £×o©õ’‹¸Çì(çx©6º¨¯ Åè'^_!ö0yk®:fêcGï‡7ÄšJ¨q,[ÒêØ^áÑŠѼJ×­ÐBb¬Û£«º|Ü݆eÑ>(ž<¸Qð^<–-awDߌ)Ôå¸ÎWîïñJªðmãM —Ï¿ŒÓšÞÙÞ§v•dk¶Dн“57^¡ïµœžÝæ©" ¸Lj F§¯8¾\9J¶*¹ÿ¶¡àË% _PõF·1uC—Yš›ü³Þ“;®T®íxñ:xu[I¥ªZr¥ŸÒx¢Z/”›ŸÑz—FR8BÐçÆ©©ÓÐW] ‡ at ñu>q/)Ï»bÞßÃz  “¶=’Þ&@ÏÁü´¼£”Ç›Fx+%Sʪ~@õǪ†S{{jŠC”A’?……æã¥ó[ÅXjBÞ}=Ë.qÔ„¬õC óª2·Û-U±ì £­uSè'ø?e›ïÖ‹’Ê(sûÛ§í ªšê7){²ãm~ºö“”¸L\.@ޤÓ–gãí}gXª?뼌Pµ­X溤¹¦±–ëvHvc†¯Ó<¹D˜C&sw"©‡•º—cL›ù\#™HXäwæLJ˜µ«Ý.8±;!¹¢(¶°ÃÞ³5ÛÓðܯ¾Æ/ñ¶ ‡½ôŽŠ¥C™ìä'ªD[b24FËP"*x|Wün?$2$êŽBؤ¡ê\U§¾]4ƒÌÆ“~îÂ-`¾KIÜ!И$7påo#px²Çx)?³¨0@\úfkZÙå¡u~q<6\ ÝØÞˆ{È„êĪìðPïõgieáîú9 júB‚å–1ùJD¬m&™â®öÔÄøºÌmß© $FxÞB…ù|Ô´×§šô†Îxjèíú¸«ôx]V2‘oeÏKq9TZºÖÝÊû®e¹ëM`­ÒMå˜ÒÒþR“kÀx+r#ÎâIžñiÄÐ|LËãM0 Eo—-}/úØ~(™{Íõìâ…FË'Y©ÉØÉ+æ >GSÂçZ. “øéÂVE¸óò˜ÙaZ¼:¾8ItÄì9»”Ö€4²eí¶m¼ÔJ³ûX%ñ×)mï“:R‰Õêý¤ç¹wÉAi\·O9TeC‰ÆcvO!;¸Þ4y‰wÙ#Ë£´(뇵HíÚócOü[·âwª¶ÀðwïE 5FÈÇŸ–ë²1›[·FŠŸžçY÷;/ŽÚnÞQÛûýì4Ðw.슨¯o//ÊÙγJV:8P†ªí]Œ¬Ÿší¬ÌÇAIÓîÁMxshϨ9ý¸ôX•c>!p &ȸ¿•¿ ÔJaFûñä¯3Ťy•bsRf’ÞþÕÖ5šq‹Ï£|*A3ÎÑŠQB0('WÊì‚£(‚éeøm%é§^ðÕ^63½ 1 4òswî«H°í¯wg3Ÿ¥fR‹Ñ2°úSUË2héÀõ¿†Øó̺ów¨x ê¥ÙðÙÎVçÖ81æ¼èÜ"è8Zúâ±–Oè šLÙ©#aÇSÂWï2æ²:~kàF7—ùú7æ]ž·dKÆ,À3, ÝW–Mƒbí96ϵ|Æè>9 ’Å*£ø4øÛVÆs†on¶RC­šzfJ«ö¤³kÌ1a’Õ`R“KŸ={¸ƒGúþzmÒÕíãüÁú'S²Nz˜ÅsË0„0ió å÷K»<´(=Ç!Ñ¥íÎ2~tRÙcU*qâÎSÑñÂÄ?ݶˆ1Ûª9s}ʣж#2Å7Ò‡¤¡¹Æè.›ÛÔÁÂ&ð ?(¦*5 ßml—3kMð%ñë@oÏž±ïC/e†ãrcŽ¢ÑV­ÌcTÈ S]å²ÝlLL¬ågO®,*¿;QJ‚ʨ£]¾ÃÄ…_6-|ŸM±C4¢)ÖY°t@BæG&ô©0ÑéDbNÕ%`©Üˆ]Ó=‘¡«è/F‹ÿ2” vK&û]´†jÑô3Íáfg)«’÷·YQ<·%M'g­°û@W}{q5F¨‹!ªéBwæ+©ÆUÞ¯i¤}Ts]Z“jC,F{‘ *NêÅ,ÓÙ}.쎋òªž{¸ }­¡%‹ÆÂ鶃áQˆñëî¤ÕŠ™ãl c”£c8—LGBÙ‰í姯úÜUoñyžð}–0Š,ðCH—þ{4·d0;t+ÿïp1Óë„ åÖœP¨ê¢þ³•.ù†zì=f:mc‰¥J5óšÁˆ®oÀ-à 8íäåG)YFô¬¹ã–ÍÊP†$öCñ†Ë8a2§Ï  ËùvϪVÙÈr60¯ÆqåÓ©:½ˆ‰¡cÚˆ6°Öãôîö[<„¾ï?Ý÷›‰ÆÖ“ƒ$Æ­ä)¶s–cC˜óáþËQõ0È 4ÚÈÑ8„ˆÝí7’Ýåq®r‰EÄlã­Ê #˜—‚ô•3É·•‚0å´êïüù„Μ™R£®oÒ0±CèuY“×Õ p"yÍ ·GcÖ}¡ö¤ˆ…¢ÌuFÛ•ZN„lÎؘ£(Aîtw2,/Ä+r7Ûçwð”#Ëxx-ˆ4J™ t·¼Ï’”߯šªøŠ†Û"؉•F‹Ú›óÖÔ!1H§¨³ß®jŸ–ÉŸ²±‹”'WD'ðÇG-ÆKüzרE’20³°$=ªc.g¨4ç•-ò\ÓîRé9MâÈ×¶ºqö>Œ;ëx‚:â]Œ[j C,NìaÏGífMÉûÇfNªµý¤.@šV¤•ÌÃ}…ñøê¤3Ø£¥¡:£Ãô^ÙY[ž¨)*$$¤@ÇFÙ77"•Ç,_ón<왨vŽì+ý`Ng(#…•ª»E¬þ •©O<¥hÁP¤]>1L™p®ì­¯“¬fù~B]ÚbI´j€ª€‚¤CþÞF‡õ÷ “Ô%|‰¹¹‹Þ¹‰£XU´÷¢uk™Ú)ƒßT¾s^î¤N£%×(¼ûP‚ˆ¿H;ýáú¦tJõýžE†ý+yðçô&Ç5³I“š ç±9,ç'xÊ »£ï¦æŽÒå4Ü‚œå® á²®U~   x/VúßçÛx8½i ª•.ÐZ­·êƒ©Ž“,ÌQV€µ7/ a¢“ä˜ q¥ÃäK&Í7—fpÈœ¾r°Ö[¨¡åÊDDo5'}gW7µ¼«tU$óz¹W%Tª.g鲨MéVaãЕ¦ä†=šós‘Ó©;w.|“ 0t±­Ta{çUé,º9>’ÝFãØ[þM,zðgÁÖç&©Ì 1ÅoÃroÊ™µß!µò³deaÙ—T3e¨õ(õù_ C“5õƒ–Ö(|Ârôâ¹ß3ôkr#vÆâ_Ž_6åÄ•AÊzÊ-Ø7ßì‘Ú²ó“o²°ÁÊQî«ólB¬»@’ç÷óÛ"QÑÜ ÞjÅ(0»›R¥:ýüFkÝt¡=í%¢Ð%%ŽÛ5¨<`fˆNÛkJsv?;ZXÐ6ÏýÒ×tæý,2<Ùw)¿²oЬ6Ó§ñ2cðVÓ×¾×С0|óxö¤´RÖ—HuîNv™Äè„ÈÕ‚“Rn‰+m*í¥¤fb#DŒˆ¿ëÀY7¨ê©/Üå«ÉF Ì -L¶š@á!Ì™Ÿ|™ÖõwŒ½ÜB çÁþZŇxn¿¥5o¤ü?¸Gèí€É¶ýÙ„Ü\‹­—Î AxèbgÀþWj~b¬©öU9¤EŒ‰®ÿê·Æ Õ ¼êê3´vh/ G*l°‘¹ÎÉø·-Ê€-gÀmOçþß%ö^œõ;óó#Æ  G}†Àá.†²„ÇùT™xýØÅ‚ /Uîãïã"‡ŽjÇŸ((ׂƘŒ³+Ìã×ZÉmæÕ²ÆZx^ùY¯N®Î«ó Ýì“S¢î~²À,X;2Þ¶àõ)k.èi»qˆ¨ë•¨¯á6X‹G"BÓD-4J›”˜ FÝE!ÐÖˆ4°UbiIÿEWÙt+Am¦Yè¶dÆ*xvÕYt¼O_ãaòPA-Ó«»ØÚD»'4þ;^&÷ïD7ãE‘>q ÞÊý,HxÞ™}–åIheª¶§ÿ:p¡ùÝÈŠå1ÃÅ@FúÍyt¦÷îþjSQBÌ•kÃÖµÑfê¶ú`s- y¹_"FžK×f$X RÏ€y÷úih%Y<&¦Fÿ±¨G!³b>žùÊåŠIfek}u®ÐxÝÑ)Œ€Qç@ºÂ±…Q…™ùn]³Xj}Rî=r h˜]ÊÓL-â#—Î)ßÖ½rMK¤k ` ­âLöU úw(UùR2†«>T–‚ !|-$wB³Gˆ„SÜÆVâQ”îc¿ÿóKsÿdm g·t© ƒelSÜ”x²­Úܘÿœö#|{c”s“'«¼ý±ú{ ëûŸZùõÄû#UOµŸ?Ø-8Ûö­*‘*ƒ׃j‹â“gØã:×Y“ËJEßÛØ@Ç•„¸Ì%¸Õ9¿Âëª3vÅ,£" êç`CXF¬ÉÃP£#†Ø©ˆ{B”ÊÎÛ<ˆ3–àÍ/¼èQmN mK5«±D˜‹Æë &¿-@¤Xü²` Ò3¸ :YN¸Äó{²«ª±@#\2‘íZ>º£n‚f §B¤¬ŽzÒÀ08ö´Z:éªTÍN7‰rcêÜŠ†áê_$,3æV {ÿÚû4üÍ%È€,<®4!4œI‡Ž…2*.Üí„Át£QÀs‡ÁœëL§?)²© ÂõµgPÂ…ÃàL£ƒ`³‘\xšJHÌw“AqÚM‰Èex`­ýÑ_t‰µÃç¨ gê<ÂYò0BõwÕxÈ«D`»{#Á¾ÚÛ älí^+ïÅÒ›Š|Ïš%⎛øvå¶*楷K.EIìt–Iln;Ê$LkZt, pÔ ±¤µÕÒ ZÎ"ÛPnåhN0Gh÷{™þþÏ`N~…X‘rb·š!æöJìÊÓ•'LA¦€x_—ËÀK«ê}¸[Í ‘§–ÎsÑ ü”ÅiVèpŸ-²  £P¾ˆGÕ!ôZ%–vÊi¾M‰žŠþ3»AæV‘Êf*sÄâ4¾í©WŠ’íš(„жeRì1…ÙÅöV´9öt <Íðb¡{R²ôÉ8<;9.k¶NqžÕ!ºçô«–‰`ÀÃ2ZºÃáë .S檉’È{v¡dá“lä<›?BÜÿ±‹ùrz•«ÕìÞ-TÐΖÖìt=]ßuÂBJ  (j=8 Þé™î-õd ±zZý¾\› ‰~qÿT(+»³êiÚ=ÔÞÛÝ=r„àÿ“T{ D¯ž¶;±3¼ô†œpçÀ‹A†e-³Ó´SmnÜ–-Î 8…¾ËpCšE0ÐÈUïÚŸÍâê)Î$[õ}³ˆ_aC ànÔðÀ¤$Çö !„tÉYÄ´Àøxí*Ï‘¥å§€¯r“É-¨ÑÕ·š òµvä ¬ÂÑ &‘ᆠ…Óø˜{Æí˜Ç²(ûZìüãE»{J§È¥ÜŸ ¡mÔÏð“lW‚Gp8^¿¤Hš´Ì$Ÿ¬WzýÂ@psÆ4àºÀç~k×ýÃ0\¶ä)£Fÿq:®Ú¶xjX©Höô€ˆ_ý$Œ/ƒ_Å©ÐÒ¢ ‡~¯˜˜¸šŸ¥; „›žÛÅ7š6óS°" sùÃÏ´Ñ#>?€U4s“@Ÿ6 S#ÇxÜN¾ˆ›ªœ³I®–ï ´„ò9Yörl>e:–&ìå_ÊÙvضÞÙŸ£7¼ÛûŠ?h¿}ËBE"1µÓŠýÎDÏj7Á°/„x˜k‰„˜äó½ïÿäC2jЩ4Ø‹„(ÀÊ}ÞŽËq47·5!’cô rטé³ûSÒ P½~Û®*r5.Jò¶Nm,ßÇ šSôF ’òV¾ÏÉqñœ¦kpÜ?„ ÌR+yÉÉÞó6ø›% Ïˆ]H=áèàë£2Óà÷t/Ͳ”{þÜÏ}´jçªKŽgxQ?éØC/x» % »³îªt × Skö.&=ú•—žÜ=LŪ–í‘4­‡)ÙÒ*Ø bàNÜW€U,¹ö ’k£E°'ׂòcìqÔlf ˜VúÓ"3êÖøj 僩в•@ ŸÅ¶ÏbäßGP >•O2l]„“Úï''s’`á_|.k”ÿÏÅ×nÁòU,÷ŸâŒ»Í¸þ¢ sµþ8H»W`ˡӳšæòú‘ÜÑ@]©ÀzòÁ¿ý l3¯÷ÛõyXzumöºÜßÀfa+FpmÈáeªG"mFó3€]M}(‘"cÛÜÖõ rËFlaSȦFÛ¬j s?I{Ó`ü0´Åÿ9œÀ^aÉSö‚Säü[Ži@j–"ð'h†%µ¥¦ÏOºNÍM¶½ÂªÜE±Õeœëâ&²Â‡ 4Hl‹;jŒXP­ CÄf)>P—œoX"ÐLH&ù¿¬oíÕºÛµ ûa’–N)YÖͣ¬:FÚ׺¡%.þr"'A¹é¨…÷øŽ:ÝØ½¯GÄ%ì’¬9sª„Ò^vÆKûnK"@Ä­«Ê¢ŒøÙw³Áþ)jX±Ñ‰ÃÁ‚VÌTRn_Z/‚8rNV ZÐͺØå«zÂF•ø^ÓaÁêf•ÿ–mív6¦Ù–¨Ö<~Šrß•ðóô—/#…W¥Cg¦®(ˆ0‹–qݦ½-ƒ > Ó-ð‚þòýŸ¶åµƒ¨ÛßkKÈ~cA΄wdì,lÛ”Üb @«ªÖÜOL;è˜Bæ4BÑ6©c­Ð+ÁÕÏnpWTºq®zã±9p%uJÀçõe¢bv\µ~Ê!b‰Â¬W\þz‹wö)¢ï*S¨?QÛüئŽ"¡OBçQÀª´£PX ¼ ‡!IÀK/Íð•ÝÌù¹ê×L­GþïZpÛÙJdªe(Ê×3¼€F£/êÛ38A'WøŸW³–ÔD! nŠˆD”ø4”DËEóí‹QÎwmG…ÑäþÒ'²72`ñÓɦrØa{º†òÂ[Ž/ s:Öª”k Y.T0ÚT QÀ–5’KÒ¨¢¥ÔÃäE…\’¢ýóO-‹Þ¸þµœæŒ~ѓ֜C#•µk{£`ÑÕkþÎJˆíë°;î{ÀÛÇGÖB>µÐ “¦5ÑÜ«+ozõŸõB•dœ·='¿tmB?JØœ¤ø÷ôúÉÍ(6ÝøŒ‡{ š7Z,)=°*ŠNI´V»IU›‹'!ú×0U6ä`}TünýwÌÒÑh.»)7~>Â0yt£¢˜£Írl*C«|W› O@ƒóÏTlµNà(`:§¾÷áâþ }Ê0:™ÒÓ œZx»ÎÆ%c¸;êÓ³¥‡M³>äšÍ­B^䜦·ôƒûg…Çø© ^ÄI ==£µ›GÙô~¢y²ó<¾^f˜hÚ2Oª+*ÿ‘£ˆ¡3[ƒ©Á›)‰ÆcÍ€t²h%ÌqƒµÐ¼ò¦w¹Ÿ9ä+Κ"Oó±TyxVòfÕÃÌ3;VÜ&&–óP vË?Òo;¬ñÓúÉ2¯¹YSÓlÞ[¡*.€I¥D.ZÍriô[ää‹K͆ç>Ýnìîƒ1BîÌ(¡à“t½Þ^@sQÔI›´ô7wÞ¥C²;+ºN¢ˆ´ºt×|¥Tºfr°\A"ßÜ àû¬ÒB–wOõ8à“ú˜ öÉ8V罌¡s%hÜ‚ÿè$ULtg›…xÖl›uÚ¹Tëñ¼#i Ã\ý|i°>€Jˆ³0éÆ'« ǘyBª š2ÒÚПè¦/ãä·G€ø—ú’Á0”ÌvX´¹ó¦°4sÕ8^a•cû¬š!tô~qÍ•ļ½Ð«¸«a½]PdýÔÞ²%ê…˜ÆiºØÝ°%·Ô*VôjÝcú~J¯6Ø8³ŸséTÆ·iiÎæ¦ ~-d©]’¨ÉŠ—}òY°>¨t†*F8ä|É€.oÂÌy"¤›[M#Œp¹(‘`L‚^JÃpi¢§"?åÿl#Òê7•Œ‡è¬Ä·ˆ/6¦8©¯Õ{ñ'i*Rͽ°"™ÑO\»bËåÿ‡ƒâ€`ˆ±Ç1“2^3Ö½ æp¤¶tc0OI×½«Ù•c¶«÷ó(4S2CP'”)àgkõÂhàà¡ 3ã $ôOk oTGvÀéçÿ"Ç‹,®ÈdvÓ<õðWMßVnÁæ™Ä¢øÚ»@/wÍyÚ·)èÊ:M;—ÙÁ+Bå3j%3Éu ‡ñY¨T8¾ª'7²‰x±Œ.¼8ò8@…;0ZçKæ/­ ë˺&öÔu°*?ïÛJˆžûkÐSÅûF¶R@ñÙ×ßþ<¦_äwÍè7M‡8+.Ðí˜çŠÚQºÚØÓv]¥+8g´µ ¨£© –[ÃøV°¤r¹ã‘ìı^]zA£Ý¹P˜Å{…6ÉEêɵ»H=µr0ï{oJ:QùNû¶<õ—ª°+ˆÔv¼ƒÎ§»:™ÏhøH:'¡ÉðT˜‚2ü>;z"“ú—ÑÔ夷*M?}5iXB¢3??‰°õØ[áÓN» í¯·'sµl ³LP$?xÙ”eš©0Îbpåù¯ºsì5Ç2¶27f'0å4.NV³Á Žˆ?¸§CÆb5)*JÁ„/‹ëö»Ô9#LG®þ9 >Vü;Z0 ¦öA½?¤vÍàWª]˜VA5}%îÉtÖD^/¥ÿË·œïUÒ©‰!ŸÉ|EâU‡‹jt[ªøÈŽÑ·åE‹žÉ¿éNr¨¦ðϵŸ úî1lßyÛ]}ÌWó ¸gåÄ%²‰œd{PØ'ÚÙíçÍ»A(\x ±zeÛícAØé3!x!xyþ›)5‡ öo †d‚ƒ#×F6ÝÎV‹Òw‚@Zí^¢×©™í@°|Læ–…ÞT=ÓÖ# Æ7eÁ~šêB2`\ë¶Š;CáYýPìŠÿ¯¨>z&Ô®Y¢øoA}Ú‹ÛX[;|7›$l» ¢Ðå¹×ltÈë†×~Ì4¶æxt¨¢ŒÜ]¹Q6¯ï¯Ùè7æn¯î¸-H¡%¼¹Ú1ºU"¯o¯óÖu"âs´C®a†‚=2:lĈ¤Ÿsµ,uñÉžþŽ}(m³ØÑžúO=»§Õ æèÑ.ù?½„€ê3B˜/1M{®³ A âj_¬Î›^3Ñöq:­WN,H¾0þ2vÊfúŸ.¬ÆR+ SŽ·ª=Èl‹ró±Íä1žMцNdwh÷ÖÚ²yc‘¦ÁŽ<«»Ó—›'»w” L!7GPx±™j–Û¯S’Ge4L„1Oikiõ¸|x;(SàaÝUóþ±‘0õ%Óêæ[¨·ö%þ»G™Èºé'z0ìcšÝÆÐ` Î9˜ñPÑë®ûU¦Y+®l/`8[¬M°ì–+†Él42@û*›9ƒ­6›#‹h m Ý-Å^uFWÄýŒk©“ì8Tž\aýõf}Öæ×ðE7Æjâï›ý£ƒf´ÿyM—yƒKfL‘i!†ûV,£âç°w¸93É ¬ËSxœ"ÓÍD†—íh³O%ý!«àºSM»’XzµÆóÂ.s*@4¨£)cCæà¥¢@æj¡â“ÿPŸ•Ε$ý[wªA˜DR‹VÍnº¯ÙÌ@(…p%}ƒcVË•N,Cj8ó/tÛ~Y¡à(9U[ó¢ XjW0ÚÚƒù6¬€íBÎ}F_´ëGçïöGdëÖ*.ÜÿèXêI#j|~–wÃq©× +Ô$У9óošˆñËD èuñX9™¥P]=%ÀeH½&·»|Xµ‡¬&+²š]Òˆç­ì‹‰M î$§PìÖšØä&N2r–ÙsQEÿ/f Ï{:Tk'_ëV¿ºT–å-q§ãð–¬ÈÃET7¿ÍŠ´J7;evÃ)=K¼$!­ÅQªå;¡]½wãÅ‹”fÁq9q‹:H„…rÉž<¡PöM ”D‘…¶ÙÀÊ9F4nð8†85e©&z7ú ¥a‰óÔV0`™£»Jqh¤FBQoº¹©õpLûs½W?ª&X*DÜ–ªÊ%lÓ‚)%ñË[4Z\m5îæ{,÷öPÎÚRÈPi'yÿJÚÃÜ9é¨äqü4¹že¹æ_ àŠÿ[äÝ,¸Hi—Ç׿Ê`è˜ô¯6ŽšÊÔ„O^Sô D'”½=«®À€z|:³ƒ&¬ƒ$kì²»9M®ùº—¬ÚEGõrÏ ÆGœ"õåß¶©®õï£f|Ø’~Ƨ£Ár[rµ¾üø¶ù ÃCÉv8C3Á²·¦wé÷wµj¼¡ýÑ‚¸SÿÁ0yÝÿ6ùyqigDÖ ±q>\—Öñv4ŸÉ,¾ëê¥I4Žúzˆ‚1²0 [“¸ÿQ¹= ÚCÊ Ûÿ‰tD+œùÇ y*n~,‰™¹nP]fhq,Ž?¥KÕä†kÛvTûHÔŒVÁ9Ó&"¶µx9ÉÚónÁÁÖV?aF {ÖgüÅ{y1Ól&jª& mŸÜ 0®jö°ú4öÛ{{’ä”6v“³`W"ªÇ!WïÁ“|ïbO|dtwô.­þPÇx;™…È'žj;Ç £®ouŒgQ7àÏe­É‘¹Éy~Ä+]SÌKZx¬ŠŸ¦d.²j[(Ä,1¤íêéOOÎ÷ìh5Åøšë/¿ÚÉ"Øœ­ÿÇ­ƒ‹$K2Äò9^2 ®w€HAL®F«X¥dŠ+r´cpJ|Î1ÖacðÝxîu·sÄ‘ùhŸÔ+¨s|ºÓh[缆,›ÓÉa¢iî8ã0„Ð縺N»Uó¦§Èz¼ƒlÐzD꤃½EÆßùwÖµeC[H-mUGÑK51¹¹Á|0­ÏÔg‰’DûbÌg;ìH¡¬Ä‡Ÿzó!ÈbXRª³°´xyîå'à‚!Ážu‰Þ† Yܾ/ İc…rÒ§C¯kÛZcjï„:ßR<ý‘×dçx€ÈrÝûrãseòùŸ endstream endobj 1321 0 obj << /Type /FontDescriptor /FontName /MCPZXO+CMR12 /Flags 4 /FontBBox [-34 -251 988 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 65 /XHeight 431 /CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/ampersand/b/bracketleft/bracketright/c/circumflex/colon/comma/d/dollar/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/quotedblleft/quotedblright/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) /FontFile 1320 0 R >> endobj 1322 0 obj << /Length1 1738 /Length2 9672 /Length3 0 /Length 10781 /Filter /FlateDecode >> stream xÚ¶P\Û-Šk$X£ÁÝÝ îîÒ@#ݸ»[܃<¸;Á]ƒ»„à·ðHι'çÞÿ«Þ«®Ú½Çô±æœ«6™²£¨9Ä(;3²2±ðÄTY¹,,ìL,,l(TTê g[àßb*M £æû—¸#ÐÄùY&aâül§d]l¬ìV.>Vn> ï !Ž| W9@ P¨Ä!öŽ K+çç4ÿyИÑXyy¹~»D퀎 30@ÁÄÙ h÷œÑÌÄ 1=þ+€•³³=3³››“‰ÄÑRˆ–àr¶¨€Ž®@sÀ/ÂE;à_̘P¨êV §¿äj g7G àY` 2‚ž=\Àæ@GÀsr€šŒ<@ÉþËXþ/Àßg`ebý'ÜßÞ¿À¿MÌÌ vö&`Ø`²”¤ä™œÝ&`ó_†&¶NgW­‰é³ÁïÊMR¢*“g‚Ós2sÙ;;19lQdþæù”%Áæâ;; ØÙ åW} G Ùó±{0ÿÕY0Ä ìõ7°Í-~‘0w±gÖƒ\€2›<‹PþÈ,ÎNn^NÐt7³bþ^ÝÃø[ÉúKüÌÀÇËb°x&ôYŸÿP¼œL\gG ×¿ÿPXYæ 3g€)ÐFùýY ´ø ?7ßäÐcyž=V˯ß?oÏãeÛzü1ÿÝ_fUY]QYeú¿ÿ£ƒ¸¼ÙÙŒlœ,^N7/Àç¿£üÃÿ?ÜK•M@ׯò'  Øàý‹ÂóÙý‡†ëßSAó÷ÆÐþ;ƒ"äy”š?“¯ÏÂÉböü`ýžÿß.ÿcÿ+Êÿmòÿ· )[ÛßjšßúÿÚÄdëñ·Áó$»8?o…äy7Àÿkªük“€æ »ÿÕÊ8›/¨9Ðý÷d˜™ÀçgÀ3=€ÄåWG¹xÌ’¿D¿7+€YúÄÃ`VþƒØÌj€Yýâ0küA\fÍ/7€ÙäzÎgöúŘÙü_ð9?ðø<¾ÌVöVÏ·Ò‹gè_Àlû²>‡û—ñóö1Cþ„{.Ëþyâ ²?Wãàyn÷ï®þq|fçø/øœÔé_ð9ÐãçÎ0;»Aþ¥~&ìò²=áñþWãÌ\Ÿ/´ß«õÜÕÿàß·'è4CYø 1ã¶®n½©%tcÜœ¦ÚÑJ¡eôZpls¹{‰˜H[‘¸æx%š8ر¼%Is)²HúèuÐT‹Ö¯Òrïý`«:¹Ó‚2?Û7ž ZÓKŒLĨ.²ëýèà­`ÛÝ!K•íàÂóR9ûÆ­GÚ½¦·di$ôëŽÊn—êCÉã;hý€ÂªÓ³øäÎŒÄHtX§îè3—WÓXYãO¤²±ô(>‡ïØ ¼t×ÙÞßÎz®”©³9uPèâÃ^bLR{‰í%ÉâÍy}ŠÂhdfË}”ýhp2/KFc¸ãÿÅËzL® Qâðj=’ÚÚ6¼{ítê)Õ*^‹µ«¢#íÞ%Øl§BIÄd2ƒÁнêð¾™u9’,LÙú£°´¯6E¾嘌ƒBç©›YãÃàâ®6ŸßÕ~j™+Ùáø…§NLSçåþšò´p¢ôbn6ü’r*w;úJz×n²q”ÒÖ¬wü/ín¢¿J©+lÞk)¼…Ù Øž›ôЕnK0;‹&S¯ÔÞH¾ö±´qàýø ï 7öÒ«ü‘YÔ+üFè&T5äè'©›zKkvÿ’#`ïŠÎ}Ójªu#¬ŽXÆ-Ém(N S‚çë©»&ÞžkZÿäçG¦‡ÈÄJ¸Fµ‚Ô—z†‡µýþf­öè 3õšYRÓ~$ãU¦!u B®;Ló;"U^(Ú’¯y?‚‰:Õ¢ã¯ýké³,MÆUÉãNí¤ý?ÒúMoÔ ¿.ë6…BÄîu¯ë3IZþ˜ª=þ–>¡ìôÖβª¢5£ïxÑ]RíCjÂE§O.¥eŒˆE“"xþeú¦É'|@ƒNw¤2ŠªÕ°kŒRfÓ§j [ã33N.LëÍ®å7’6åCjˆÓxT£oÀHAÏbÒrØ•YÛóXý>ÔÇ‚øX¯Héë¡È[tA×F¡A4^¬þ,_‘FÄ(3ŒTƒQÙ×køÃïÛj‘9P²ÏæÝ@§s$oÑ /ÓØp»ÂL.%Í-N¢"sð?ÎJ¬"acŒ3zy&ª4ã$lÙ¡“ú»ÅH¿”ô[Á×¶÷Åû5_§áò«K)O#·ì¡y ‘ûÝu¿ò*äZRm¡2•㽄·\˜“QcNndã oñ±”èx†¦Èaªr\Ű£/?÷nÑZ& |Ì'?Dˆ-Ö¼ýlg±'|Å~kÍŸíìB$ª¬æój;į8ß0ºË‹'Ù„j¼ÌH®Òh]É>O‚?Ã`Ëð]O8žMî{oÁ‹üˆÑ‡þOÏ2Äù6‚—›™|Y~m#‡1ÆDĘlŸø•$ØÓÏD¼ß†À¿ž"šp6À±éÒÉÌä¶`·×W8Fz9.Iª÷dˆ^RŨ;fw þ–U„PJIõ\ýAUÃñKÒðâb¯êWì›Fs]Q±³Ò¢mWÇ/Ñcó [‹Ü µtÔ»Wû‚¶üÉ~xÏŒY Ð#Ò1L>Îó¢k[yp–ú™±S`Z¥®r[3(¹O‡5\.§¨»„7.¶Ë}QQIôys®-£QõÁÞ¯Í?îkbWñcßT3¤åÊ~yœPa?À5á\²Ü7{¨fÞê€[ Ï8]¶ˆ·‰îâÜŸ^æ7?äÏ@]$SI|\Ñ-eÃÿâZ•˜óëâÛ²=}ï˜#Ü-âõ>ù—~ÿºÜ¾ ­ ¹a‰PõÔRÔšÅ`é‰áóeõÙ “äm›î¹/3Œ9Ÿ~vÂþ¬S²H£­‚Õ˜·äaªA“ÑbñZÝì—žùt’°‡\‡-Vu9"†­J`OaÕ²‚€ùr¿cSÎh-ì²CáâjÁ[C"r5µt6Šnôˆ®wá´kJÙÝ®=³Ò‘dÿÕFÏ8³ö:Á+î6Õ`1fœn7Úl×¾ZCšQU€æ Ãk+ ÐþÚ®`©:‘Þ^k;Éì–¨L»\¶ ëYå=Üj i‹æ%ìð Hu㤮ï§oÞðÈ6l4ïÅBý†âÌ—‹¨öcûe±²œœ¥•–ž°Ü1–ÒoËÃÇÅiÞ/Lß/Ö†01æ¼X'@%@ài‘]]Ð5¯ñ“žqÇS¢n9† ìÕéÛ\Çì{˜ÝGó@l$.iJÙ-Gæ“ÜÝÝ D¦ÙŒ0]ÜïH|¢a)Â_áÑôŸd7ûÑò´ÂS=\»ƒdCÞ}c)õ5»Å Ûͳ±ñ)Qÿ l]ì:”&>”jÇ&û}ö¥î›ï.pïT¶1{÷CŸäðj2ÌQLGRÛºx« ]â#œÔu¬dòÖýHìB ÌWº>¿àÀÁÂ.Ÿ¸,¹ü%ø3¯é*Ó¥I{LPr>c\ˆømõãgÍÛÙׯ”ØÌBžõ¦Ü ™o¬¿É 0DP‚v {÷“[ÝíL‹Ó#lù´"Zåyo5J·B¨ø‡"ÏãBèY%iKèh•“ôò,mk龪­@ßö»µfèÄáÆÙªhÍxÐ=iéPl {ÖtyX_ã3yÙ{ý6ˆ¯¸µœÕÑŠojsÆT̺žýÔ¬ò…±b_ÌB¥(\Y&ý!«¿hÞËǾ¢}®AP̽ã É€T|Cf¹iÞ©õy! $Acq^€tÖlû0¿îV›¸•Yà¦Í½~]ûI<-«Qá8L[~‹¼S¨8e%–Y 42P¨àÆi¤3èŸÐFzkÁ[í±6mVl7ÎN.%ó1À!ÅŒ ŽtÏïT{³Àæ‘u‚s:GÕ^dÛqnµ†÷ÿ¡R¨öõè¨öŒjìD¶J|æËÊùÎjzíåwVrik{ñE4ò=ÄÇ ûåQÉØYL…eäxÜ,Y¶ÉÖšãáÍSÕ@™{÷¡.En¿/Kš)îßÑWbB¾ 8®(¢WYClàDÃë›ëRI§Âƒã·ª,>z+ÜéÓ9D~úMµnÀžÄs7öIõì 6il¸i¿á™o¤J—:A‰ åËÆ!¨7ü/'Ól_g¤rp±)jáQËùQzO̽al](9‚ÊP­‚8ó`"Ÿ‚Ȭíáé·:˜àšª2Û_« Ì³t_„« ~‘™à,ÑkÒ°;dÛ.ºvf¾ÕÓNŽ ýž*㪟ŠÅ˜kX÷©“¶5^PßR9#¿,¡á̃ö°¹žîE¸°^»eÕDüRyÄÀ¢ï‹HÛ±¥rOyì”1¾{§B³¶I„dÁ^o(Ý'%úõÏ#ÛtâÀÜ4#ŠL!Ÿ8Þe^«b^•¬Ìç;ü;\•ákqnZ{Dõî5ãÜâQovL ׇ!ôz.55º•ÝbÀ(ÛÔ‰@¿#â 'ÛzÀN˜OœƒñéfA¤úkû‰wtº˜ßuI#L™+ðh/ùö'ªÓN ÆŒÅkͼÙ×묅(°¹ T$YZ±öáX^,ö(æ³”"iäïùèz•>°|—.Å7vw)~T!´Y/ÝÕÎBò·m¾Òñþ¸^4¼Ð®Pò€CàʸµhX!,˜b$D„ hH®Õ|ñζTZüã¨8?e§_NB‰3ü!MÊTJÜg}èªzéy§ÅømãEšÙˆD¯L œÒtîµ³xìµ5–’0%Y:»®¢ÎÁ‹áçJ¦mªG®Ä„kx3eKg®ÛTÔΫE]S~2(™~­etÕÆwè}3œQ×AFW³_Û7Ù…FƒN±¸j>¦o_Á`z²„\¶|4 ®!HJÐ ö-›êÔ1_&P|›Ðà슖â*D3^®C•ƒEO”еӭ×Û1Ì%øÖ`•®Ï’G=‹(–Z~TÞï|c&Ll[¯7ëŠvkæ¦Î?êi=ª^²¤“Æ%=zÕ°ŽjF5·ž¦Ø”kÔŠè6Âõc0šÙšãŽÞWØ·44Ø×-—¥Î§Ç’,”ÂMÊmm4ŠaÇ•ƒxz¦wÓŽ Ì‘¿öpšâî÷´+‹ê¾Kr¡øÊíôà,÷%v ù¶Vꈖžä>)Sd!ý28‘*e°×Íf”ø[5ú«â5¬„°3¸Ïåõ°H¢µB=³É(ª¯rƒÒ|xÛ>„Š«µ(tV5_~ã ^|¹/û'g`R൴’‡µyyk9Ï ÑŽ¾ò¨«¡”}“/Y¹>y@1‡;ù†Í²´¤·\µš³ÊÖ!éu3iÏeôI°ðìÌÜÌŒdjƒdó'_Ó²]5ò|JÈ„Ëþg42{#áÌ.3WmäQ_ëÐj6iA¿À§ð¯Ø xÄÃgÞ©BbåAGj’Ank‚Kð”ÖO«ÇoX<~úoKÀɱ}‡`mœc@ŒûRÛ]½e¤åÚö¡ úIWt…;D£(H3 í–áÍ:}aòIçS‹2¨Ì—s?Q>†Ò»ë–ý~3ÉCpíb íCÎ샫n¼¤,BsÄ å´ þwt‹èïçÚ“l›Ÿ™xëmj׫„4ænUtÂ*f¡¥þ&oÎ7»^¨¡…ã±\(fM"ˆ ×5­+ú¾ ‘$Žª3—èSˆÝØ»ônEåVw²0Õ*Š47Û*|ê ˆ,o>'ÑÈ.ÓW†_Žs_‚ÁÑ@ ‚¯c‡Ô¾W€z‘ õñ€pæ­)J^‡| }Î@q1)¯ºÎü©0 Å:–i¥î$øî+ªý—ôîk›î¥jïìÜÐÇ¬Š¶¨ýf1¬êê =B µº7 XyL†uŒúâè£6A¢ ÝÈUó½p*6˜!/üxå“vEßg5ˆ _ɺ^2$:k¦(fݛޫy2÷mSºõ&K¾+‰ÄÑÙxi+ Õwp“›šì»iõŽ<ê[\u‡æg¹ ½Y þËe.Vä­¦¼H×oëC  ˆ¤íöä.r4ˆ`+¯ Æe¶©L®ñIŽ8ù€îÖM–ÐÇ$,­Qµ«óÎ7E¸c§i€îZÒišiìËà”i›ÊÑ3$Kã k§Òã1«mB*y%ç$UÔ«”%p]-ÑÇüu"Ke}ÕŠ<*ßMŠï½QH0J§GybÅ_t_7¿O3ì¿èÔC5^‘ˆ-Æ^AN¶¸#ƒHÔIŠúâÖ>P: H¾è›B¸gȤ5å7™~sI€]ÍÓ¶‹Â‰jn |ú¾µOb·J@r¹l oúÚa£vÀ”¾í)õÄ,˜ÔbhâèYŸoü2‰ä‘+»”+–h,~Ò³Ö‰kÔÐGOT#x­Z÷ˆh‡×šµŽQ}Ç9,/3ý4í“•n‘ ý ãô¸+täRV€–‡µk}UÇ]Qt]û˜oëì-Ƈ¯ýAÄÆ6\8 )çþ#gþœ>ØýºâŒÒì©ï“¹õ!WIo»ö‡ÔÐ×Ù&-ÚnŽzaÿ{+½oÇüBâ4ŠÌhY¶Ãé³z%^õE¬]ä¤ù¾Z¯Hý!Üq—0®uPq³(²Oj“*Yj¼-¡ ‘}'òÖg¢[ðXŒ„ÌøáŒö(¯Ýâ)@‰b÷É5âÝ:¢¶Ì7üžY0m·x\^cÄ< ž^1öÒc'J˜´Oâåd²¿š_tž/è ÿ­õ¸æ»^’šêw¹¶Ra¤ôÝš6|£ŒÜi ]Ùü:ûa˜Å®Œù«ÃÓnŒí6Š\ MìS·¯ú %Qk@UüŠÀ×1ÍÙb”ÚGQ1¾ûð( ¦ØjÁ¢Ç×QRø—¼xŠcÐ•Æ wZ\P.†­ÂÌj˜ÁÂÛÊ&Û>‰Ê­Ô¾LqD`úF+—!×hÞ; ü[ Ò{¹|¼äÏtÀˆZfˆJ%ŒTâˆâÑÉ„7Ì•%ôfÊÃiµšW€AKÂÆ(–1ï@½è©¼a)ÓXð!’É~sn†Y!t\Î)KÉU²;O,îÇûó‡8ò£GX5Ylüv Z•)"“ó±?uC<•qDKàB³vú êk¼ÝB 5a§—°ûäO^ÕÇŒZÙô’è×vzs$ï QfGç¨BT -ÈÞŠ9ÉŽwŒŠ÷\u¶Ãq,ýŒwɹ•œq¹”™$™ÿºøŠT.ô'ÊIèÑX\)jh îppw>ˆ-îB~ÄyiŠY w¢V ê)m—Í£HƒiÀ£›îÐËÊ÷û³2‘ ®×4`׈ž¯‡"éøMÊ X°×SYö–z_Jb>u=ɸJ‘tŠéÓxg Ìò•n(²P¢¡òÅzZ¦\*–"±lñ:¨øÓ¦âq·BV”Š+Fká´ÖEP`®4x4kØZÕîd†ÈŠzpWAJj$Qe†¦W =½æ–Jõ´³?Ééä)²‘<“f6Àa× {sf=ý-:²¹sÍccë^²÷ñ-¡T2Žç•ÉK¦C÷Ý.?«ÒÚkiÈŽsQ9Öy®±Šçzq‰“ç%¤àQÆžhí×r=+™3U¼è=vÇùñ‹’a•­s„WÒ‘hct©7ÁÁþBœ5ï™uLXa>†Ð~¼×w¾ œÛ½ñ°ñ;¹éÿA%W2sà¨ö2š£ç½ÒxãåÀŠ a•2û¨CE€áðâ,EÁ›[bï6ý^R ¾CæµÚùú˲ɯ^ñ#¢ÛÈ ‰è ÃxZ ÓäPJÃHW4¤s°b6ý¬aQøx› 3)˜hk²_[,À´%?<­ÔH9׿[ˆz‹Ï¿^è©@å Á„ úa*?½;ÓLÞM­E(""­Ë±5">ØÈ *ô1[…Ê_Mþô‰Ø[¼âI ï>Ðú¡rýà†F˜À;µ‹ln£ƒ·ºÍ²îqaaªäc/óqì2xûœrò‚¬ãg’YÒf†x4 MæE¤ˆ£oáÇé@ˆä§"Ÿaô…üéÌÀz½ökÊìØÁAÇñ"¹5i‡Òj,ÎÖã6)ˆ*³è°¾n>ŸçÙcù³¾²øß¯õá=6.¼ÈÇQ &B„ÞhWÞŒ˜Sur‡È&éä­0(ˆVëI ‚A„+?Þf¡6êe7òªq"·ÃÉ­ nªhv#n­ðà{¥Ù-}¦ÛÆF®}¸™žèƒò’20‚Šß‹%ÌûWõJPo‹~.±yÍa¹w÷’n¢¢bKc~€º•QΉ8Zúš;’Ljbi¶dP«Þ¯”ëÃYòA y$¶ÉTEQ º×enüö{£\©µhU¶(¹Q6\ KG}:KX9m/¤”©^A7Y(£œÃ“4‡~º]M¢ÙéêõLÍÍæ·—{¬·ÃÌïÙwÌ]¨b.ùœðšÛÃÑrysE½€ò‘e“*¯sÚ¯pÐC#m=êÙ¾“o8¿%û.Aÿu¢n.‚õÌ›Lz¥3…(ômƒh-ÇPÌê£vŒ&õ -g£º…ÀÀwÕV˜VHsU—Ãe6k‘:»­kñÃßFî®ÿûˆòO;Á…¼+žÇ©Uá–õv ùÔÇ ‹·Äøûø±†×s0ÐÅ=­P<-'x“&ÈÓNÅG8]¼Ø/<²¡ñ@ß±›MvÕš;ý2Sµ‰È?sA“vVØ XE¿€ÈÚ3&®Ò%xTŒ`§-Òà5~1\×ÏzæÊ‡»Þ¿WÆqêãÓî=ú°âÆmºm‰¬“ÑÉ)ðšÝt¦ýfŸO™^ïI»øú¾8üjfWrH‘#æÞ:Ðd8ôµiµ5ޝìXz™gUs1Ëâ,›˜w!(F£+YA„ùE)}sÂŽÙÓTáVœÞ§ˆáÀTLõ6ÈN6-æŽóÕ÷v¨®¦¢Þ€ŒsU7ŽgónŒz¨By"ß\ñŠm⊻Ûv/!s'¤i>¡°Xt”G’[›§¸`b'.KÖÃôÛ|ö&óoêáÊï^E‰Ð^qi–ä*ÙrÄ•UvŸíî»ý¸7k—|TÎl™©InÓÕÞtô èù½`¼Má™ìm¯j¤DâÔÓöäSŸæÃªHO&öcÃÑs/°©/©kjÔv1x_ Ÿ£`Ñ•bW„Pu?*! 2˜’.WsòÜž뜩 H*ßöĨ҅p8|›"Í?o¬d· ?íÜrSJ ‘ƒ¹ðEz!Ý«ª+¸· ~»Wñ•~'½ðÀk?/3ÙÛ†,¤Rümm±Ð¸ó4S1:Z}Äl]¢¶êÉcayॄžâ]˽æu.ª¥vb÷åÓ¦ÄûM„+»s!ý‡é¢èMjÚ/©‚&œ(^°Rtì‚w3xC=f¯êÄ9¡‘ðiQÞi«ÛMûÓDÁ³E‰MÛHàî.þtBàÄDÇìœÝEµþÌÓ<ŽØ#‡ ¾T¶[¢4F˜Ë‹Ü©¿ì¼4¬¸€x}(k“ߟÞpÞô¹¶.£ý†H‰§€µOzˆÐç†OÉÞñ¾F9P&çÛw¬Ÿå›zlUîÂ^Ÿ¥Ž‰›XÌÏn>‘„Vü¶º¢OÏUÐ~º=J "ï›¶¹ûò"žÅÂU @HvØV# ¢§h•æ ›ï£s·@a7õa j ؃ÓlK3€í˜S&Ýô½oj*[¿ùY^Úó£6˜´%O|ˆ‰h ?,egüøPa%™ÐBWêsø#ûÉl$%ÏN aõñRÞŒR\Š9¯£¨>•bÇ­C“¦0ÝŽÇÀÃí]uß/v˜ë·¥RWصâÝö„2$‘]Å4¢ë fÎ`JQ#ú»™97ÊsW¿¶ªT'ıð^¾ˆßßÙeTÓr%¼%T•â×§^R%H¬Ì~RGAó}IR)•$„§¦€u—4%Ær¾ŽéO‘mRCY{`ž,dîjrÞx[iø'TÍÃÖgp(µ¶£,7[J]'á°Í­U"•KóÀ©…ÍPx¦j7£ZJ(nwOFÍbßø‘ÂXy7H½pÞ62Õ…*9 èz¾P#QwË™¤à`M™áJmhÌňE0øŸ|0ðx¨û’á®9k g"‡£Ép¡¦«%S®´!Î|½?E[>RâíálÞì[—×(¥.FGZÃszýnda‹uX”ÌCÓĬÇó„(ƒkÚÕÀRM‚æBÔ}p=[;Ñð“—‹œÚÔÌ9½Ï“‚q!/5bxb¿øºø»P'S‚M1ù€<¹¼¼cà™®éòž•`¿! ×õÔó××Òà†ntD•y‹>¡å" #`ŸªzB½/NŒƒÅ&í;WÖ )xu•›[šùþ¬8ÚÜoáZÊ«lrµ£:*–æN¤É!Ó®ª&ƒH]+Í­ û£Í¾:âH‚M´c꾸ÏÊJÛß·ósŠØ$޵NÔàƒZèãYÒšqƧâÀHŤ:ö{Ž«v\™ É ªBWŸO31OEÕÈÊ:Nò—’ L¹ ‰L™´ýníj‘X¢GbTº/ƒ”á€ü }«M)ËöÁQ!Éz’¾e¯þUVjµJ¦ææ@7ïÅü¤cU#­ÎPØÑÓbK×õg­7Ð|wJ܃°‰› œÈ]åè§þ&WtÑC Us>Hë;3ƒæ. -¡O¶Üq3έNDeËûÆLk@õD%Zy‘-uupT¿àJÖW_Í;=sq̳ý¡Z¡ayNrÁ$§©ÒïYñ¯sËHbÙ¹¾ì9¼Öu²ýYÑ ‡2¾Ÿ[Øw°`@2%bí'½E,iƸ ”¯3æþ~“ ÷M‰ÇÐ~Ù°¸Çƒ ¥`A†¯vÛpbæ ˆî¢aƒŸ9ëóA}Ë›{Ï U’‚F¦½ëpþU*<îŒ`‘8ùöÝÏ䜑Ň®W¦&D­ïÒ1Z‘*èo ”¶i §“[¡;ß|ó/¾BGK/7`q|Išš> 1Q`ßÁæï1é¾jTY˜Iç6¬û~°·IËå3AˆK:è8KPOójá"o¤Sݸ6¬Ã¥‚ö“"a¯›¶Ã໦þ/I/“ (×Áþ×)îpVjØì”û»»ŒžUÀ ½hWçV9ßp§þ¶èi„‹“ÉŒ y)D÷º ÚŠÓÈë®eõ÷”qž×c‡Þðo#ç—'ƒ“ñ 26Æã‘!£½`¶Oºœ9K/ ˆ]üØÊãЊ›ê é0 ¯-?j?l!aày-Ó²íÝL<ÕPQP:¬½Òž©ƒƒ©7&“Ý-@Ìæ nuF؉f´,—7/Ãi‚˜žo1w\¿Á@‡ì>ˆÝ ™4½ºþñ‰3e"Y‡æÆ¶;uÀûFÐÏõ6rðþ¬üæÓX4\G¡ ôîº ò!k=Áô'Q‡Œýµ»dæe¸À™Àvrãû×vzŸ:W9xlf…vŠ$\©-„Lª^G ÏÊÀ¢[c»¼]q }HuXLÖ40$åU@@¢ðù9ЭöRJŸ]ŠTIgY2öðZ‘Àˆ×za 1µ6ŸZ‚ÛíiŸj ’œ_†Œ„ŠDÚ¡2>äOÙ ÐÝ™VýLÅ?çô½dŸÖ#üUe¸ØP» —›)Ÿ\U B׿•m†Ë¡5ƒh¬Î ÓÎ’†·b4GŒ àjd­×G%„„“ @ÿAà"5àLE'NZÁ<¡#'p‰’h£ «WW'FÜûýÑ·æó!ü¨¨R]B°€h+Ðð³Ú.¥®c‰ì–×Oõ†ùå ªX”÷hcŹ|™CQPué§sºP^ɶù©VÊÞX%Iô«—æÒâÌžð;…C5¦t'öøŸÞ†;¼W,µTàyU˜O.ÇB¦ÈÇéì⸻rã;RñZܵČcÚóFâ=9 ŸQ59 •–ÞÚ˜í©IǃÍÐd.ŒŒÇ|ðÚùÞEᜩZÜ4ú)ò„zc5 3ˆ³'%ësT ÌÌÏR¾¡~Ó¨™©îާÇ~Ù‘ˆ\D»:Û>êœÕ–ºF0Ùk¤žU£&À–Ù"Ž\ûœÍYk¨¬Ï´r€;k•¸wÃü(ï(,òã¬sŠÏOø7¥.'=r,jíÛ(Ké‰+µï‡šD7s›´Ö3Ú³ÏC®ÀWË<ö«´«J0üòþAôbkHÍÒ®94%ó„ýAz¢Ã(zŠ?%·À¾šrj$ õâÝPçn„öld'Á6èëíxÑåß©Žuz^tF{|ÙÒ·'Z;ææ¬Í89øafS«\/¸ûzIRxð§UõøÜ6©^Gmá£#ê«®«þªuaßx ¦8{K“õ¯tYü«>dVÄÃÇŽD׆êUϯ}D¥ØFX@ä ¥Yú?®¹ù™ endstream endobj 1323 0 obj << /Type /FontDescriptor /FontName /RJZAJP+CMR17 /Flags 4 /FontBBox [-33 -250 945 749] /Ascent 694 /CapHeight 683 /Descent -195 /ItalicAngle 0 /StemV 53 /XHeight 430 /CharSet (/E/G/P/S/T/U/V/a/c/d/e/hyphen/i/l/n/o/period/quoteright/r/s/t/two/u/y) /FontFile 1322 0 R >> endobj 1324 0 obj << /Length1 1463 /Length2 6829 /Length3 0 /Length 7816 /Filter /FlateDecode >> stream xÚyP\Û6%± !( KIÃ. ÒÝ-%µÀ ì.,ÍRR¢€¤¢¤´"RÒ€¤Ò]JJIó­>õ>ïÿÏ|ßì {îëŽs®s_÷™ƒE߈_ÁiUE"¼øÁ ) ’Ž¡8„Æ0/7è(€ÃŠò„!RÿáWBA!^Lâ… ÓA"€šÞn@°0,&—€B ä_H”Pâsê5‘¨'€C éî‚99{avùk ä²ç‚%%Åù~§àPÌ‚ê@¼œ¡pÌŽö7 ÒõòÿW .ig//w)AA___ÜS‰r’åæú¼œ†PO(ÊêüE¨ CpažÀFHG/_ Än0{(“àp€¢€˜½FÚ@=w(â`í?ø€^ ,þ»ÜŸÙ¿ Á¿“!ööH¸;áC8anP žª¶€—Ÿ‚pøqóDbò!>˜Äðûà ª‚‚á÷';O{ÌÝËSÀæö‹¡à¯2˜KVA8(!áp(ÂËðë|Ê0Ôsëþ‚¿ÛêŠ@ú"ЬaÇ_¼Ýï#`ÞP å?#0àÌ ê@â’ Ôõ³wüUÜØßúÛ þc΄vGº1 A0G(æ €ö„ø@^(ohú?ÿ¶`0Ðfï´ƒ:Á€ªc`¨ã6¦ó(˜ð#<0ôëó÷Ê £-$ÂÍÿŸðßÍÔÓ´00ÖäýMøo—¢"Òˆæò ‰‚€`°P³úw•¿ùÿÅý7ªýy6Ð?5ŽH ä0w÷ Ÿ?5Áõç¸pÿ½ƒ.£c(ëÙ[‚DAö˜?àÿ³ø§üÿ4ÿ«Êÿ"ûÿ>ª·›Ûo/×/÷ÿã…Àanþú1*ööÂL„3ˆÿ5…þ1Ä:P˜7ü¿½^Ìd( œÜþ¾D˜§*Ìê ó²wþC@õSÞ †€ê#=a¿ž ?ú/fÖì]1O‰'¦S¿]PÌ(ý{K„=Òá×Ì ‰Š!(Ä€i<Æ¢Á˜át€úýÖ5PPô¤1ô‚€ŽHàW?E…‚Ž0Œ1è€@z£þD$‚˜ç쟠 'F®Û`  —3 ú â‹ümÿë°öÞ(f€‹ Ãä/û÷k…úAí“ãHû{.'å ô¾ü«ƒ2#«¦éÜüèIT“÷)A ÷»—aó¨c…”Þvò™e®#ù)æKôf]AT}’AÃyà…M¢áçÕÀÄðC¯7*»‰øå×/=MºâÖa·hrd{xKêçRžøvªùUv•L÷Gޝ¬½Ó"¾(ùÂÿä~œåÃÂQŽ»Wc4¬ø^üŒ„<·öüÈFŽGne ]3k&ò‚¶žç£-„žžŽ̾1òl¥e§µ aÄ=ºÕÿù.Zq#U“ú+º(.oÔÒ» Fx¦ËJ-x|‰H\Ú–(ñ^®—eÍiñçV qm‚O-ºl*õõÚ%_iH™;ŽèÚúè(«'„|=ÎXr«¦‚µå⵸ÒIÕóÛKb1¡šl,t22GœÉÌ{¨ÇS>̲SÌj‡´©e,‘‚7™ nª’êTw9 ™èyr`¹2YY`ÅmY­PQJY’®¼ "‡$>MëÒêGô´x|{CVaÖ¹€€ujjº/<ôDûռѮÎÅ#8.z¾M3[8D{®wù’ÖläBŸ÷_õFÛ3±&!äŽ ÇL£“¸3“RÇ3S¶Ò 2â=qíH]‹M±Ý~bñöCr‡àa¼Ñ­›Ä©<r)Õø!ö+É«¦]NÈæÄÄË1ºOevm0 g¨çIs¹ì,¢·^„[5'ñ”Ò§öÓñ‹P}“Õ¢; ­î0×ÄZ[—ݱ½ÛÖŒê6•ÒûÜHÂïÕ¦{Ä.ŠºŽÛ¦[kÃõ{ã&ðë ¾@lØw¿‘¿½Ùë­ì@9!üÔ€ð8M‘ÖÂÈÑß[„d#³È¯}¡ ~qþ³î©ôUVx‚þËRŽÙ¢kŠ8õˆFF,ýÅFÐH`‚szÕøù5wqðmv ŽÁk…gúl•ü:·’†6Lü\IÛýº¶äçG§_RZÌkŠ9‡î¾]š’qV˜*ŸìÇ—"oaK@ÚûÔÏQ Í–—̇d9ÛØí9]Œ ¤ÞGöúïÐ]t¹ŽX2ó'5àØï³j/8Ñ௭òƒÊÁþf¨æå2=‹„"•^¡„™Í$.ë¢&A!“ÖZjîÚfºWß¿tu¯pÍïmÃwëiëi nÜb0|*¢±‹ù`¬ ?Ä>^1 |ªýìCØÍ­ Fø{æü÷ù/÷.&ˆx­¿ÕŽû(T6*}Wj~Ì%> [Ûf4üpzL«²^ôœÉúM)µ—´lŠ~Æ O>Üeñͱþ–DrJ5Ñ™?á“Ì…{øY„?/ Úþ£q¤!PNÐ0fy+Mî©r¥Ô£-µâÕ“RÂJþœì"B?•í ûÑLú“; ¹<ÂÈÆÅ²ô0óQ^šWWàì²:´Kv(:šS&ûá‡n Ís†€£U”«§;"¬<[( L„>“Q¹˜r)ÛÄ9µÐý$Àzw¤Ìãû°^î ûðÎë¶ÔªìH<ɺ{‡€*<…Ü/ôýI‰Å£ƒf¬«áÞôª;/'º…Îbs’ß”ûÃÅÚñ¥M¬µÜp™Lâý–½fUÉ— S#?ÉYëZéüÐÙ¬íÒDºÞÛa”n›`iMFwýâœ7ß*“ÒeÆ©¯ä’<¥F åHš³ÓÚ—Ô|NIß%%ËúºÉ ¾æôÕñ‚¬ƒW¦„Â÷ú¡×j_ÿK«$áoWÄÏï #Ïsä㈪ÍZùåõˆJV¼¨ ‚¹B γO‚Y?µ§(ºˆ(l¬2?CSйÆ)6ÑÓŽƒ t6ƒ{‰bw[ÍøévQË1ïSNdWJɘEîªuÉ¡ò-Å2ŠHŸ÷hsC}Û hg:ÒyQ£Š öëÓ™ÙÂÚ|i ,Uo¤@hoZmSGî°Á´KÚCØÔZ«˜óÕ,×%%y>V34nÚi¸o´(‡å}ëkª“äg+Í¢‹¹¼&%:–ˆ¨Zû$3ÙT;•Ýν™„®ö|'³· {–ÒâMáf­æ¬ÛÃz¤¦³`<*óT¿oWyÈ kåP›ÂؽÛü£»æò1 m´ýœÁ+©y,—¤oËEóRcgÀÁÒÌìò>KQ)I³ûŸ.±8†óNlV»8¦Õ/w-j‹—B_´õ!FF²•p_mìú³fÆnV¸°ñv/u÷X>G' $‡ø§¬—¤X 7‘éÐMûª@Ÿ¹šœœß^hXY8¼Y ª®F6¯9˜h²Ë—î>fjФŽ#æù^Dלáï»wç’œ‚D+‹lˆe?wŒT¶±)|‚ëთ& ZfÃh¦š£tüXÔTÑ߇<(ÎTvtD(@/Åc ¯°0Ä£<%¹2¸ôÀŒ»:•û8ÅöP-/¬Dœ83ì5 Œv™ŒÏªòöù SÎf¥­pš‘±1ÖœæJæ{ˆü0‹a­`³["óÅÕFgÚcEª†ê¾ÅÂZt!äÌø—m;šèUwÌp*DÿÕx ¼#°]Œhé£O ,±éb¢Ü£™O¨½râz«z  –%x2/̱„OYœ°‚¿ )N¼aHÛðœ“h$â\ž¼™šK¯ü¦,^×{Gù¢á´ì€mõÝÑt+Rå\G4r/F”ô?V±|Ø9YvÎ;Á(žúɆ¸Áà'a@¸agÌÍ!˜2RñÙK™Àìl;®Ým“ŽŒfSæÃÝj*Ã=ï½Ö[uVUâBl‘o[¢öÞüÄ©V?©Üi-ÏKј޽ÿIJùÖƒ¤’ÜÔ’ìêÓí«ÌY±8ÔÔúóXŸ¼¤n;c/W·w,òù¼L¦b‡ÖµVo!J%Cw$Û‘qšFð|¯kü%ÕIÛíg£[† •[²Bsøá„zcrnd¬s\dŸ•¿ëEFy»áŠØ1Owg²“`åÛê¶DŸtK ÂÈl”VßL*J/É”:mjé‘‚Ï M,Û,Q£I\¶š}o¿ÒJ Duæõùƒ \ ~¸!Ò´+Úž9žÝ - £y;´ûNº@>Ÿ@Ã]Èæ}ÍÛ˜] Øà‘Î%‡ãwÑã_3Å<–±¨ú&}sx’b%^“¶ŒØxt™²ÖB*C.s¼iÌÄfû©c[«±°òLM)–Ö¾kAã‰a;—#v ˜Ln)å›,/¹½’Õ#Ž’dO*n÷/C?çüöޝÕõ¨• ¿:GhŸãÄÄEMS,ËTù¾ËOHxÑÝáÆ¿ÄáGJYmºà½þQ§Õ8-;5Z’= XýLÛsc'³„<ùüôNm‘ý“—1+ÀJßÜ£æ#e»#ýí¬ áûЂL1—gÞä;1,Õ7 ¼BV͵ùØT¾_ù„÷_ÖJÈ…’ÉK£¸†ËïvD¼Xj¯½i1ßI£n³¾Šêþ¡cÛí¢âÏçßÕ4ÜUò¾Kt)¨ü„­Ú<˜ØwĤyñmi„ùŠ&#@oÐÜ8UÉj 6Ú-xöñû9P‹Öºº ÊÒ£ÄËAÇáßÃ^|]|‹ ¶0jû@¾ÒTi¶ï§kŒ¹úyr‚û¦ædçÑhRš^µ¬ïÛ ¼ªÓÄZ3Û¹×_M§ÈH§¾Í™ZÜ Iñ¶g0 Ï=3|JU°nüœYý8+»‹Ú?ÎHÝŽ»§:̤6^øƒó²™Qª¢«8ÏáöÖ³¨!D Fã‘Õ@QžŸ‡à: ˜0ê¢ÞV ËnçžúÅýƒô}»#[ob±ºêæÞi%g÷ ¶9uü»ža¾Â¾œ¼Î;ŸÂÚ 8%zÝS^û=S ±JvÊà+\âIŽrŽ+ÙYH\Å î²»v•‚)ç…EÌ s-mªøq“i[{¶÷šm' Âc>­'q÷ÂÑ©[ô4Á¬Ï7a£?'íç6hÔ]ÓLËö-*ßDÚ¡±ØïzZóØ<=ݨ|ìc1ÄÐð–ó.BTn“ô${pŽwå”öìªoù™q‚¡ýbKù¡#’Úë97Ü úª¶ÊO­¢ ‚2o/YüL¬à~/áVð ŠÔ÷[íW)kû¥Þ¹R½<¸¯P/¼wøˆbeÒ‹ªYQJŠO§1ú㈽—N#'CˆŠâ•€)i»ŠÁRñÀdÔ=ï­ Ìoœë€¡W£Ó‚ª"I ;‘2uboï‹ÞP#-ct°IJ0ßl™©sˆ”óêL«ãzùnÓ‡ãÚrº…tN5B‚ó.­ýì…hÞ"tºÝÐA ¨£èE$2^ƒ¼âR°ly‡ü®sÑýÏ.DùêØ}ÅñÉÚaãOrœ¹7Bt‹¦ï,—hɃª½ l–oòØêJ‰6Çèle¾XJ z{Lòõ"Á>¢ŸPmwƒZ‹ZБþŸ†/wá(é^—Hà ¿?ØCã„ó<]`]Í!wƒôq(3‚æúm"ééáà"·‘qJ¡¾ídÓj—’½Žæ¬ØU£i8´˜¾µ£ižxH&Ž]"™kàØkø(Jnžd5¥`Îh€/ߎc•qTE«/äœ/øÕt3ŒÛì‡ÏtK’9 ÷w’·5éBëå¼d­öÃ6ʸ2ªRÛzþ'`’PÞ÷¸mûi»4e.]ÃýÓêû¦^–q?w>﫵j†;ºÑn­6o*<ßw£ÿ*Zèr,(üfÙîqü‘JÙ#Ƀh¶6ÕT¸ùtñzp ®²ûÛ4cc1 ŽçÃêDöä]^.%ûÂY/§,oy’É+Aõ ù’†Œ2>æ wŒ .Ø™/ÙNÄÒš»xg]B¼(l·Ë¡H'Ï^¢ãP³Å.Áµé™ôXÿ“©}ùõž”PÊgÝ»ûx3"éG ì9€"sŸÊöê5øuÔFÀ0Z51¯\|i±XïŠì’'zïbù›f$+çl+~·ÔÕy•9â|,‚MõžÈ™ w ãê«>yøRr› ð€•„µ¡}¶™Þ‡ž½Öf¦_wzùª»2­qÓÏÖ@Kâ=³åÉÞÎTJ¨#Èù(û=0TºìZ‚*çÑMÿð‰Éè>ËFýùÓ-åÈ:ë·Ý`í9p„å#v,òr¥fU»Ý7ì€'Ìõ}K9{Óï°Ê%j}HJù'p8¦2óõŽ(›<ãV/ž6§æmu× 2Ì÷VÀÝ›5i…#‹zÍ]Br=If³ÚñªyŒ ̵ëõm„©›â)Þê4pr\Úî53ÓS=Ýzà×?/ˆ‡ãï¾ HôɆ×ÊfÐú}º5ѽê=ÜçnÝÙ,ÿœÍÛwXZdÙŽœïœ'¨Äýmû#ÝDtƒãa¶Jh´¼£nö‚iŽ£­kWuø-š¢7(â¥UŠ :OT½ˆ(mœÇ}ª^rj¿8 ×¶ýªl¤ó«- èA¬xéûsE÷ó=¡!<ÌÃÈ÷ZŸ§ ¸\mËCÏÞ€ã–K,‡ƒºn¸Í£Ÿ&/‹ñGQº•ŽÊQ?Ü› ·z‚C2†ÝUup76|P7 !`¤óÜR/ú~—NŒL®¤[ÙÞ`Ûÿ2m˜rVì.ð`eçþ{6—`629As.)\«ñ±yQö³™¶¾6»Ø‰=Mkž'úç­SÇ{ë®GæmÚ­»O¨‹y3)³dáœEwOK¯!r·ÑðjS‚{¦÷?F&²]FP?=IeGî]Lef¡Ü2 ¿_Yý¾½š&`_wY\Qp=ý=Ÿ÷›ÉñÜýªÆK‰l‰ˆ ¦¯rÂû&?ÖXÖª¼$¶=8[=î¿Uü>㑅誒¯b­³¾®œ€ªÊB éèç,6úd]ámg5¦ƒÈ2n"[‘_ˆ´*L Ö4ò6ßœr"Ÿn7¿ðíð›%ømHíµïb­ÆÛ캙éCõg òfÛÔŽ÷pðÌCˆ¢Æ F—£;}{mÇ"¥Ã­ŸŸV”YѬck¸L˜‰J£+^~-É_ ,YdüâÊý6 åú§ëô›»û½¶&¯Ð"NntÞÄ"šqÚscd\CKù›waF¡? ÞÍ·éóñ÷Ä΄7?Hw2oNï cMèYËÍåÑ6úÊ‹ïÈpME²åE’ )< –¶}ÓüqúD;‚%ôn áÒfôÌZR¯tU冿§I˜Ã¾È«±¸ïI4ã}Ÿ¤7¶B«NùËëoŸ?Âqb¦éikæÒÅ–MûKÁ=“’‹Ø„}‡ìí­ñFm:k9áè PwÞº$vq&ʧ׻ÖtpŸÎ>¦GùuǹÀGcezÕ~d¹ÞÖ¾#ŸU›ÊîìtâJe—¶dO€#CHÒ¿s΢ÕÃôk¾ãê¥E<ög“2ÖÚ‘Ø;|¼AÅ+nÏ^£Á_W¶4Ù‚ÍXWÅI¿3¼ûðšGïš6}eÙ íú˜y‚‚:ûcuk{ü,ì˜åãÆò±Tä~ßÀ×Jþ»—Æf[®U$Y*eø—£ð>;úòzHã<ç éÒ/aÎïD’&Ü„ciš½+Õ¿Zq±ÖÒ}KHº¦z >Èvviýئxì»QûS›7hÑFÆk9œF:ÞäÆœ§¥ºwÉõ-“¡ïvb6g¸r•>,£ÙwË$Õa˜álÞw¬ïT)æÕ-’ UÂÑc?ÈÅÜ8’.”ÔQä…¶D°G<6eï3 À9¾¹­;ÎÇDçg]ìY(5ŸÈ´nõ ÎZÏvG®±Ðú§ûÌIðç ŠéÒâЋ V¿Ã¬Å¸£'8²¹kúnT›ûøl'f8œ~,L®W…ò]‡ø+Š*êZAx°K¿™Pþ\¿h•´†>»× Á$ã3Ùýêl,À™ôÐ5ˆÅÒ »®HÙšÓ‚ a‹gL6&”>í\Õß·å,ì6›¼"w‹éB9Ù_jôþ˜a鯱Êï›BØexjê'jÛÜVèöe"—×.­›m°š><¸á ÛYi«øý¯ yȯq÷Þ+Ó…YªÃ"+?íå©>^¡½ ›<‘4€¶%ú£´—K]ÌüyÑ»ÄÖº’)?Q¾_ô² Íeic}6RxÞiÑ ÿ%¯ endstream endobj 1325 0 obj << /Type /FontDescriptor /FontName /OJZQTJ+CMR7 /Flags 4 /FontBBox [-27 -250 1122 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 79 /XHeight 431 /CharSet (/five/four/one/six/three/two) /FontFile 1324 0 R >> endobj 1326 0 obj << /Length1 1567 /Length2 7731 /Length3 0 /Length 8769 /Filter /FlateDecode >> stream xÚtT”]×6%¥€¤ 5tÇÐ!ÒÝ©’ 3Ä RÒÝ!ÝHJ§´4H‡€€HKÈ7úÔû¼ÿ¿Ö÷­Yëž³¯Ýg_û0ÑiérI[Á,@ 0(œ ÈÍ+U×ðòòsóòòá21éáÐ(.“ÈÙ ƒŠý‡^ÖdGbræp¤™: PA@@~PH (,ÆË àãåýËæ,3w[Ô¹*0(È—Iæèá ¶±…#³üu°Z²€¢¢Âœ¿ÝÒ g°¥9 n·9 3ZšCº0K0îñ¯¬OlápG1777nsn˜³ÍS6N€n й€œ]AV€_í4Ì@¿ãÆeèÙ‚]þ€uaÖp7sg @À– ¨ Òµ9¹ºÊjMGôcµ? 8^ È ü;ÜŸÞ¿¡¿Í--aŽæP0Ô` †€š jÜpw8'ÀjõËÐâCú›»šƒ!æHƒß…›¤µæÈþþìÎÅÒìwávC~uÈó+ ò’å¡V²0î‚û«>9°3Èyë<¿Çj…¹A½þ8[ƒ¡VÖ¿Z°B8òèCÁN²ÜŸH÷Ìòòò ‹ 'ÈÝÒ–çWp=GÐoåoY¿—#Ì`lä¶!ÿp½\Ì]A¸3äãõŸŠK¸@ À l X€lÀPÜ¢#aõ2ròÎ`w€/’x@ï¯ßß'$·¬`PˆÇ?濇Ëc¨ûBZV™ãwëdd`î/.~!Ÿ /È+Ì F|þåïþÿêý7ªeþ³6Þ"*C­aÑ?Z@ÞÝ_m¸þÉ Ö?×… ðï 0$AÖhoÌ+Èk‰üÿÏäÿíòÿãü¯(ÿ íÿ»ò[ËúKýÿhÍÀ?õH#àÈP‡!÷úߦÏ@,±:È Œpøo­2ܹÒPÈß—vQ»ƒ¬´ÀpKÛ?ô× á!`(H æþõ̸€¼¼ÿ¥C=ò)qANê· „\¥§”‡Z¬~ퟠÀÜÙÙÜ9x¤$ð"—Ó äþ›×n( Žt ÛóXÜqÍSTÀcñ ú- òx¬ÁHZÿ ð!ÂùoI)ýˆHÈߢ€(€ùôý#óx‘²†ÿƒÿDÿ`Æß¹<.È=ø[FšÁmAÿQ 2Ü öOv ²Äoñ_—b‰pFF‡ÿ&-òÆþ’¿J ;Èw~f)dWÔvY-M鯵5&1Í´õ,•ËkÞ¹q…•ÄV•ùjÅù\:ièýÃÏò¬gR ´·^_›ë±B[´[¯½oÌât&·Zq?Mõ|•®ë£Æ¡âÒ“Úö¾uò6°GoFíTaÊqBˆàkå_ºõ*º×õ•-Ž„ÌnioW ©Þ¿)›âŠÒ4(þÈ”k‘5CN ç¢Æf':r'øxv>MôfüŽV%Ž×g?Š¿ÐËp•/úÇŒçR…ŸK#…!95úÑÈ$³—ÌN²Ê£9¯’Âç‘”²öÑ5‡D d‡ÕsKCçÒy÷Ø”™i\Œ•‚œD9"r¥E)Þ¡˜.S ëè³ÊŠ»ò±p³… §f<øN"\‹oÖ{b3Y—Úî"$¾ô^+Å?+¥¾©ÒNä^ÏÙ¥ìªÎßû%{ÿC¹ æ1îµÄçß²Ú4Ò/YJëÎq%±V÷8-­¡ëÄ;µ4ÊãÑ(ÝKe‹eÊÖü9_¿JLo­NtÇ$2 KMÒ¦·•Ò£Ågg52Õý=ôlz¶qE㦲„îhÉä¬:Iœ].lJ+â(ïÙI~yª”ÙN:¤Õ*.Âbq²€­ˆIeؓԕ`1`µŠg Þg¬l:j9?6:OtÉiì]^ T`ƒˆùÐÜUño>Ç»‡G­îz‰^¤¨qÔ1×÷ˆsª¨Ç÷åDØ}Æ>ºÊ½‡±š|ü" ±`L@$—‰²â+ËÍvkáÍþE#Ç|s£ãò}ôø?¿ôã•öHà0»“’P“­Ô‰Øâ‘Î{Ù˜× R­¨ù̸±øbHh6Ÿª‘[Ú\j­×ì¹Æ‰Ö( gx^‘2=|UvIò¾}­™Â3mqXEÚñézoϧ<@o=Þ´¹©7Dächë6õÊ®àÈ'Øh+Q%â#_’ã¨â *}4­€&†ºc$_h´­Gª?¶°Q§ú¨‡eh íØðMÔB€6Q#ë gc»éøß–óñR P}Ž#½ŠŸ’R ‚U4_”=D'zNdØAåϸ¾ Œÿ&ŒºêÛL޵c˜‚FUº4~PDPÀ¥,×=é ‰Æ?V¿_Ä‚½ÿƒâuG~óz ±ÁÃqyJ?Å[Çl¹GTJã®î^ŽþD–jdy@·¶÷KSD{IÃpšvÕ5lXuQÃס’Ù0ö[$ÅÛ¤Ô‰Gòd4V*;žŸÅÈ ö`xèÐxZoçuÛÞë>_”»gdÿõ<2ÆfÀèžÙÝsB\£oJ!wôahÒš/¼){ø»ðÅyƒ¿û>ÊNO»CKtûÙK»BË!ûzF„X¦NÉ|p8Xþ‹~ËÃܱ֙‡ožì·­7Ìp›¾`®I] ¡Š…-SŠº<-Àû1ÜÓÚײ…[%b×áI¡<½¸+›Âk¾)NׄŠPëØ0$‹Ëµ%SfO<ä‹cUá>ñžŸìÆVÌL(Þ™9ÈüJ²j/ºP;HròÈ{Lx[Â3(ÊÁÉeÁïÖ,ú,öRÍ'kno€OxðÕsf-¿™ª©ðçètéc}[=Ç«.øÜuStØw³›$>’/æBS.%ñ¡_Èè0?jfFÀs‘ŒËuÆ«Ò'ŽÎŒ±n‚‰%ÆÃŽ×9¯_@ˆG+£Ãáˆ}÷=:ˆÎþ¦ë±„@¤™{0QÛŽ ãcL£oט J†·ÙªU×ÎÆng¹mñ~¦C³Út<Óû-èù›(q;$I³CdC¬ÛS™¸æ;ëtž¶­‡k££À¥N‡zŸ4‡Ê:×߯zæoo&ÈM§²Ÿƒ|ªöÄȱåÇQ$åýƒ;ÎlÈHžt/ìP[œóÒOT;éi¢š¨aûwà’Hd\NV`Nõª&œ©G'ÃÊi߸«µtD„Mù"†hL[Í&'¾à¡’ˆNp•IM7Ò¤SF ðÀ.Qû³•)ò>¿àT '*ìèS^xÊ—>ÿ€íkÎMKéÛG…õ}¾žî‘BE~ ÁdXÏÏ ÂÏeå5ÝUB®p튂lÙ(žµ£çRÍL„Fˆ4PG,ì&{m °zð"‚-óÙ·ÄK†A’ [+(ƒŠŸÞc„R½“\„yTv_¥­×EßuÜXœæÖበé]/ZÕÚ‘ Ðí´µ¤n‚jϜà ]?r‚ ЦB0$yq Ñ–žõ)`þp½[„ÔûîöÏ¿®6tV õqÂÖ;ru°“Ý*·Pï%³É^;èî =Çé5ÐüJÛþ’°PF@SÉà=éápÁ%0ÊÅ9ü=ó¾u°Â¹û³+ü¨öòöwQŽ.MÏ预œ¸b‚Ô X‰osûbVèýœ'-.îCï”uóS02z3/‰ îèMì„·ø3å?¸`¦¥±bä陪žsåÙKF~ú–>Ͻ&nåÅ6³æˆ-cû›C b'¡sŸ½¶|mMìÊ!¡Pü 5“Ë«:.ÜÂõ!‘磎Ìçvi¤› 皦mÀšB=G×(¹`Ó”X’Þ^,ÚÈôE¼SwÆÔwÖÓM÷ø8ŠÜmáî*‰u  ®ÐSÊ#gÒ+uÊPO€Àê ¯É^Jþèó´`Ù¢åáÏ´Ä{Ý8|~÷ú[Ì\îr¦W,’+8·v '²Ë¬î«³â{ªÛX‰a·ÿ˜N˜×–GX3¹¿ßau ÇFE•¹Ïjáìô‰j2V®Dm30ß‹B^à(œ“W)V£1¯-Mj…Úv23ó"é{À7m{VoÒ‰÷f~ºù<ƒÃ"æ ?™X` ®ôú|ÑtûÅöÔ¶‚Ú’1'¹elÛáI6Ì*¹Œ‡´Å$„þ‡9WítMH™?÷œ&FØ÷؇ž§³GÇ€Ë ¡ÇºÖ‰Ä)^N†T8U,èR«V—Pu“×-½j¯Üiê]_:ά|QïE Á#Ñô»ç>¶ ín3a©DBC*ýÞÒžBiËö b”Réncjqi¯zLZ»ƒÜ Á³ŠÍ.µªîy :AîûY>Ψªk×Ôd…N¯6uÓÐÙYt®$²ñýÅ:†à ¨f>š\ä‡þóoÓâ$¾¯GS‹³¾i ZîÎ ¨‹]àÊGÏÉqJ3îÆOR?þØ; @ަ§bà}O:~ ¶²¿èg1Úœ*…ñ°ÆÇu% Úz™Pg n®ŒàŠª4 F5Ó žÍÌNãòVâÏl¼±9Þ¤è6Ã¥rƒ®uzí¶iK7Þƒ¢—6+Ú$(+%Gš`Éãý¨Æ?‰ƒùõdÝ5nù· ˆ±†boè¼ ÅryÒY—Ó´šÜ£Ñ,¹Š«þfðÁÞ.Kõ³®t=f YcWÇ5êË2Á†ª4³Y e<Â;n„´Æð£÷1o'áR7;…ˆô¼í—/V>’ ¶~¾[ó?æ÷:­UtżUùV <ÎYáP‹¶!_¼×$$ú4iú¦DX)ä±tÊ y;hò´ÒkcâmN”¤Áô°F>§£Ö¹^Â2dìÍ}k›lqåŸí+ÝI’yôi‹2Ó³ÓrµÔöÕŸâÊ/qö XÍv{ïâ>ö‰ÃoKâêK5Iè;©…ê!ßÍ!Z[øµéÖ¡é³ }iá·îÚ¾ R†Cy•kAT¾âvËøõ¡Rh Ó•™I­¼[’8š…iÈP‹F k–.`Ážð,}ûÉ“9Šð @¼ ÿ–t@…Ó$Ͻ‡dñËü’s1ýé¾X÷f‰‰ (]b«³zctý| 2…9â¯ñ¯N\DZE6C—ì×>—~§ì$óáÀÇ !lxìH4Y¿›mb™\ô•nÖη,JÒ‡™ä¡Åó‚Ô&§9°|ÿ#tb÷8‡Û±˜׆B3Eò§Âyu²[bªq÷ÂjÖ~,ù*XahØ”±ÇZ¶™ÎÑãQFçJßí/Ž/oö-=Öë-oa–“¼ pk—…Ü;Ø.«¨Éq*tk[ç1VûZ#’D“¾íI½oËøB‹¶°ÅÚ÷šªÁ42Jžc¢î–©©†õµŠgØÈ†)ÍýŒz–¤ºZl´£F<@=ßhLˆyPÙ@`Þá "üÙæÜÓ[CªÀéI›`«}Ñiž ïÜÓiƒñv=3"²%æÇŒfdÁÀ´kOâ1Å9Å5÷¯NbËï¯Ýf7£FÞÛ} É|MVÌÂÒ±Ýâ"ˆâ¦±%)²ÅT/„õª°¬Š!?ïs¿b¥=w‘‡»Ýo"ý¡1Ò„XOú„wN£wx†+Q‚Ú"d 0HKýYÀX‹ydDo»9v0»Ÿ|%eä2kâw!`¯Òz$ÅóVW³lúBŘÞaðñÖ¡§0·îeT⻟÷2·ØÑï½V¹Q=œ÷Æ`íȃv¸ÉÏ6†˜ÑìÌ:Ú+—¹«^DWÞX5«l‹'‘ ³Ó3Ó¡øeU]F13~÷RüqX#ùÒþðMO[`¤8³·kˆ:>y ÖeWO¶ñy6¾®.¶|>¾ìÈ~‡ûöuï¤F6e³ÔKÔ‡Sºé‘¢g üá³úäïÕ!ƒ“ãd) I–™~KàöìûЧᨨí‡ôÔìg?KÐ=IX5X³Çz®ËÐÓ^¦³b¶–MÙ%?• O²Ë¥—¬(eÅb“XÀ¯CíÐ,Sž9u\Àý%”Á´Oœ¬Ö¦ó_¸ž?L¯¯ÿL ìä*Û |éS4å°ïmÆÙŸVÍÀ›à¸qiqá`½F•¯Lr„¨'øV3m±ÀÊcF¸½úuâñا˜ä*)8Çê:ô÷6‰æµú»C)‹ì0ÄFê–b­càÙózøløf®e RÈœy<âÙ®5ü§+½™–È7o’xtO_€ŽE ¿0u2 7ëS¬‹§‚×k?C#…¨WÊý¤Ò•U"Xb¼¸¤!µŒ¶âß*µ›hi­¬x#ø9Êhge-ÊÎ §ñ'#>z;ezMÄ· Örðô^ÓT·LútD,´íx±ŸÆ¾i ÃÒ4ÜÅ/êZéÿØ«<™æÀÕï.u‚6½ø!Æeʨ“¥- 'Rƒ*FvÞ"9•#¼íך‘Ç1yY¾%Dø¬f½‰|{yhi#IL”{'1d†ží6ßü™Î/¹.Z:ä,8uT•ðD×ã±…þú>X«£ß°KKÈ3ºQ7gJéKÀ8b¥½€÷Ôý­w¬Þy/Å4ÃØàbä¼öª*I3B¥hCö¸¨IÈáèå± |sElCI×ÐY}Ñöó´ G;ðŽ”BRñúõV¯E²æ`ñÄÛ'{=¯´ðcÈ·‡Â^<³A÷'¨’° ™ŸµžÌötCò*O#èuwÎMù¢TÝB]?þW^žš—hêyŒR,ñ™ë]Ä œß7ŸRKg&’Œ æ‚?Pß¼Í䯬LÍtC¬½ñÖÓÖd³PØLîeaìtVÕU¶ïH>Ý4þPX2ˆ*“wG¶Â'0DÿM¡`Y5³RíNž]fס”ê³Ûý¼%KΡj[Î7O¬[Ý™~rЬ¨ ä$y\ïvê `G1D§œèº4EsL`Ú•1µ÷®Í^Ïíô8;m½Q©Î 茭}UMа‰ÿá‚b ëBi?åmÀËϘ„ºÞIg,æ¤tÂF糆ÌþÜ2®ª¢^¾£U,ò‰ ›çE+K?dDÙ¼‡ê0ûŒ(¨e:}žïdµJŠ+ T­Pki²Ë 0™Mbh{„s8€í¨G|–ÎÄGÇŒuS!ªòR˜aöhÓÄÚ\>9`2;) «ˆˆnÉ ™Únö8 {-ÎKVl÷’»”¶1iõ‡híçõ+ºâD^ñ˜˜d#ÔÞˆ“§ N°u«h“,ͧ]˜ž\låwå VÔ—E6Ï ÞPlµ™Zœï 1òJSƾÊ;ü© øa’æµï߯¶b×Bú¥ ¢¾¿CÅ·2ÐÆ˜÷ªê#aY7šÔבé Ó›¥{ÙþÓq_{ $ma:‚A’Ki®9½M†?¥Xê9º¶ L‹w‘¸¤guÜÒn+>Ï¡×ÑîÚ-Öuº‡q~ÙZ½6R|ÕaâÎL;šDègÿ&µEPþ¦„åÁg´‚CÊUšIeØÑg½¯ñW¶i@¿^Ãð¸TÖ~š*¢[×L¸f×c±\û‰Ž…RB+ç;_^“DŒ·Y©ÊiXçÐVmú ñöû 0´2 %œÕ ˆ®¼™þy6ºJ´ñ\ñ­¦þn•A hi6K:³B$Ñþøš”Aäi{·3ÆÛ2¼8ýÃó²Ñ‘‡§Ù(^ÔkQgÛÐ:ê¬éþÕÄ‘ÆEZoŠ5YM‹[Óq•bGƲÆÛu±×|„>0²|RçÝ!Ðíý-²Â^þ½€×-YÌß" 0êÒ\÷ëzIŠ^ã ŽW5¯•‹”pv*bµ\ÀSݦâÑ5 UÏÚS$éFðkA°¡Hγ›í Ð*95X( Ð×ìøüÁª®ûqÿáñŽéÞ—²'5P¿t‡è!ß°ãiOòð"õOJ>i?3}”n>¯ÕqŒÊ”«R™Y´‘É/²e ý’L F þ¹$ßT¯ÒcÕG öÜ}ÅÀ¼¸…ã°ÀefÛ¡ðGìöúá2ÝØÓjj° &ÉèËêb:Á*| èÖ1›»W^ðÝüÉdƒ:Pî…”±À–ù¶âÀ}j²W,›.ì '‘ OJ깎êïH¿EdœïŠkçSs? iÓæIǹæ8ÿ„ÍP@†¢çDæç¸êÄÓic”œ®Ó)VUÊý €M#BwÌL¢š&_,¨q€ŸÈWÉÖ=¦mÓõK¼ÛZ¬ô(ßQG)”XH\°á®L:hÄøœÏæÞ3¼üö§Ñ¼¼™†II>Fæ*_jݽA¿ZÈѨíG×…‹_»oóÇ›HwZŽèØ¥£öèäšœúÏáhK{õ5Ô?¹ŸŸ°]î;Õ³‚ư ï*˜ŠeYÌ‡ášÆê§Œå&ŸÞ±ºinȷЂ q—èu¸:ñ0J¦r– ¹Lto;UøGb§¦õ²¦é"I'$4zLRp…_]Í„ä¦F@ó×ö'زX^Úin…kî Yç4}Zh Õ\‡,÷´×d!h%[äêʹS3¤Ý}»*Î/–ŸÏÄ|oÊ´ƒûŸuAåX˜8y0¥¯'®c'ô_ò¤´k¼ –ò…½Šž²‚âÑ{¾[P’<Ø—ÀìU¹‰²TÐ¥ HÃgný Ø.³üÚR2¸¸š¥Ã⯣ö Úùb‚#î+ÓfŸÑŽèpk©JÉkò9VªÌ­–Žûyv­Òï qèçK©~òÆÏÓ÷$‘$eÚÄò[;hn~bNõh¾e 1 í\|5W»ìçX8£_6d\hóLÄfò»Ul;Þp]_ ‰'ÇéŒá ïlƒÊÅFÂ/ä«9á|Z°f„]úv7"â&ÀäNXóTxrA sµ}$yò"ëSÑ–Ûù*Â[;‰†´ÏñBׯÓ:Äza¡yË)"7|›Ë*½ûZíÙ7娵/WŒ¨e÷7ׯcoóm>ø>Ý!`ê`?ÙìSµþ¿¾!ÜáÙZQ—Mü›–©Ü8 we7ö)\s|Â°Ž–ŠÂÐÇÌë`{H.5 ÖÉÞŒêÀPög>øîª”žtäˆmðã™eñ—¡ÁÑEOÉqœ–Z=11Û0-·š¸HSs` ÁA Í|@T³!^àTŠWɨâ§JÅ”­úpQ ±Ú\6u§»ê"’Äé];:w•ÔÔŽŠãå7²ÜCo=<…<ÿè!´½zå´UÛõ‰F Eïî}ŽemSæœæ Èó]f²bÒ”wôi~†CË7”lÌ à$GDb+Ë‚¬£Ÿ;–Ûæ» ×¾ç…Á4úáìŸã«±¶ Óej4¦XƒÈÃA_ÕÙ¯ªYŽq©fâÆâ]ØÃBDfŽ!Ea»O˜U¾º­ô«ÔÀe!ÙÑަჱã% ž_ÒŠ& bŸ¤Æµ £Â}‚)˜J°Û" ){”ÄÔã–·@°À¯$¬„/¿âÀ̰<üéä‚NN–í÷\(¢bí̱×99U¹¼áwÕž§hñ-µ™ÙõÛ˜&}f´C‹³•üyŠ€»¤2Ç eºw᮫^ÐЋ‰<Öþkr¯…µ6]§Z»“ý§ô‚ +C¬Ý–^³w(j8‘¤üL4‡ÚñÇT_ Š ê/?1}}ÕÌ›K aÂð¸¤Ÿí¶ ±;'Îád”R`i—јý¶BîÝL¯À•|­¼iù½Û/Êß,•oâ2Pm8½¦W‰“D—}Šš3Õ9L)¿Ó ?Z:(¨íÃÌ$~My·!h‘·tŸš Ku 6»}/yîõ¥˜ÜÓÃ7”c$œ tìþú5ËúZ—ŸóÇè„eFhÆEnËuwe0wtK+è0T8†G¤9õR§kÎÄŽ Ð>?‘óOL-™2Â3GÌØ4Q¢žÒn&ËœÚÛÏê~!•aÖKøê2xmrJÊpPxûè!‰™ÆôüP`bþˆW©@8~2s_וC®¬h¿"5XŠ<»ONŒ‹w‹6¨É4õÑ VÚD Ò’„Á-Ú’|eÇRËîÉ j×"ëí âåÍ+%^õ½mY¯µÌ1Þ±´ ñPþTïÂÇÐÏòžèL7±oªØd¼zCºz~G6ÎÃÕæÉ^ƺä°eÊßPú„…’º´PÕãÍpë{}0ê×—sáß‚jw8´ã«ÃÅ5yçlî»62öôÌf»ò¸1‡)i~áåãOô¸]½úbÄ.oØ <~có˜›],³(UÌ›!ÈaÀßóÁ»§²l{>¢ŒÉOúìc Ímj R‚oÒ§h…PëUAÇÞ\½# {ëjL6ô”Ô®zÿØì«’ŠÁcóž÷ŠØsþ‚Ç?;¾¾êL±µ£ÏO­QÒõ &­¾š_a£}Tq°|fvÙløhÙ¯õ=*Ùzý—pެ=Zí OتgÉØ–Jtè;ª‚¬Š(‘<¥“/Ã-§4ê÷Оdë¸Å÷ÒÜè$ßhN7ÊÈÔ64I۳ƠkLý©p$ó=È;¤$G>ˆõ‘|«Ù÷9“ÜtãžZ½²BÝfs÷iY˜ Ù"Ÿ?*bB|@»úІOäúnŠìòIí!o‡&úµ¶ BÅæÁwš=é Q9ÉäQ4Ú0«]i?Ù·Å™ã²Òýqÿ$ÿ" endstream endobj 1327 0 obj << /Type /FontDescriptor /FontName /ZSYACI+CMR8 /Flags 4 /FontBBox [-36 -250 1070 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 76 /XHeight 431 /CharSet (/b/five/four/k/l/one/parenleft/parenright/six/three/two/u) /FontFile 1326 0 R >> endobj 1328 0 obj << /Length1 1498 /Length2 6765 /Length3 0 /Length 7780 /Filter /FlateDecode >> stream xÚxT“Û¶5ÒAéE:é„Þ{ï)†@ $”Ð{/Ò;ˆ H¤wi"U)‚Ò¥WyÑã¹÷žûÿc¼72Fòí¹Úžkϵ“vc>E{¤D ‰@ñ ò¥ÊºÆ‚@(Ì ²³›ÀPpÈß8!»Ä݆DHý‡‡²;„Bc* ÚQ‰hy‚ÂA1)Aq)  Jþíˆt—¨€¼`ö]~€ñ dWFºúºÃQè:?¸ÀÜAIIñû¿ÃŠ.w„è‚PŽtE00F‚a”ï?RpÉ8¢P®RÞÞÞü ~¤»ƒ÷}€7 å0‚x@ܽ ö€_”z Èjü„ìG˜Ç_c$å r‡Ð† <Ð!ž{ˆ;]`¬©Ðw… þrÖùËá>àOs‚ü‚ÿJ÷'úW"âw0 Fº¸‚¾0„ ƒCúj:ü(Ô}aÿË÷@¢ãA^ d‡vø½u@MÑB3üÃÏìsEyð{Àà¿8 üJƒn³*Â^éâA <íOæ£ûî+ðçpHo„ÿß+( aýEÃÞÓUÀsó„hªüñAC„ÿÆ (€(PRLLTq@|ÀŽ¿ ˜øºB~Ãhþ®HWMƒBЄþ /åî ôÿOÃ?W„‚‚{°ƒ8À„ÿÎŽ†!пÖèów‡ù¬€hù €¿^ÿz²F+̉€ûþÛý÷ ˜ª¨Zòþ¡ü/£’ÒàÏ'$ à“Åâ⢀ÀæùWþfÿ5Áþìî?2j" H€ä_$ÐÝû›ˆ×epýnÀ?+è!Ñz†¸þ-ÿ‡@Q ý&ø‚ß!ÿ?íÿÊò¿Êÿ¿w¤æ ‡ÿ¶sýåðÿØA.0¸ï´ž=QèÙÐE¢'ñß®  ´.ÄæéòßVM=#Š´ÎùEø"á05˜ÄÞ†;þ¥¥¿]C@ °_÷: ü/zôÀÎè»Å}d¿Môdý³®*Œ´ÿ5‚B¢b»;È—­ôJà/ˆžU{ˆÏo‰øH:€æ€"Ý ¬˜8@@ùô{%$ ¹ºº#} nžè#ùDãvèN¢‡ãop!<=þ‹<á(˜+zgÿÂD0t‡AlìéîßCóú{ýû*@| `Âù$X:ÂéUDÇY­"½7ß×Qܥ宨d‹þQÇì3G¼\õ÷nJì_ÐŒdÌUDMÎÐóìžù<ìÉ ]ÌÔ(@a¨ö¯*íóö8@˜ì‘tãâY±«d{)†Œ$¬°­8ÓÌ\EŠ÷ o¼\/¾îòذ”ܸJOHY2éQ Šù][˜-XØ–QÃIÉÝ­²=M4Mǯ1ÃO•:âiÏ}W­s†?~›7П%|P¤ÝW#ö"Š‚–ÒO‹%$u–*%O«ÙƒCIôD¹"#™•¶Ä%Šcë‘øâåTÑ@{Ê °g£ƒžrèmý wMžõHÑÙüÞÅÛµ'&çD4-©±Ž÷k³Ø”Økì1N†³÷j„á}ØÔLÜú®7ºSȲòS Ì…¦x¼ pa›õ š³G ¹)‚BÖ²p‰Á/쥀 àL®#Ð W2 :v M,=§eÏ‘{÷ùŸ÷ê̙ÓGßZÞv ÷Fï#Ùv©Þ‡&›wæn½ÙLiÖ=ù@fÆ£*†ªÓžEvÛr'å'Mäc´w©K[*HÎM°&™ “šÍšèl`dëXHE*†L‘S8ïV0¾\¨{÷L6¬E6C"ôqbÿ–ŠáviÝêmÃÞs›d;÷}!|í‚.KÇGezœZ(‘dXÓVòÕ7%‹÷¡ûâ3‹J?Mƒm)ʃ@.7Ž÷ Ìëc,á±éÝïƒWmŸ¿cì´HdÈ~=±Ý×É™±á£Ñxq‚½Oa7¬.5ÈQ¯jJmSþ<@kj5Òé8jÁwï}m::¿#hu*-²êjó­QoÏõ²ÒMI@NÂ9))¼úB7„CÒûNŒY° ѱ9h¢1LhÁám"\ƒËk/PmY±=n‰#«¿PwÝ?écøLÑVÇ  5è>Å* S“¸ô2þôEÀ\_ì­¯"²»n7hkÃú½J˜n+nŒ…ÈRÙaT Y‘EÒô»"sÕ}k¡U[¡ÖÛ/Z+þ„‚w}ÞÓRmrvwxÒ´#‰ÎN.è13媦”îä´&Ma]r¤¯fÙÕn¨ëa9 ¾dRË·ûQúb<7N¤|f (-ùØË…ÁàF†óBÇiòt·v˜ëOáò `žÅÖÝ6ÁFÕëÖ•.Qk¤`eÚ•úCïY4oÇ¿šzu¹AslDöÓ5õ@:§ûÝìAO®{•(žweS·MŸåù¬‚„¿ª•ñ2º%|°«éñŠß£R5(–÷¾X‘®gY0[œøI¤Ü6Ln†¬ÏúèÕ–¿*ß[ŸÎ,žW';òIî~ÄÀjYU×CÖªó¦ŒÜ»“F;8^FÊs%Øy†*Ž„´ÄS ¶÷ó©GòH:É©ì ð EÍ3ÌÊúïù\ŠR{Í! ?g.ð©p¸Ïe2SÜPè¶ñ°©f=Ô_{¬bÔƒ.òÎî¨EMGáŽÀ¶WOÒ¸UaëåS‹»~¡ÂVŽFxT¹Ì¢g¢Öó‘Á^)Ó÷ØXMËtåê·ä—Ó\yf"ĽˆgïÊ~4ô\U'IS(ÖKµÙΈ5ùZ/m‹Ðù–F‡·êsG4UŧÖß³GD¨ß)¾H5ò{Nqxýî=aC¦âøéHf­È?'gE)cds&ðâõÀ|¾‡”SùÐwq¥ÖvðåÔKk0“DZ‚NÜ3œvý–vÌ•ˆ³¾ìÝŸU 3¦€ÔòOðûŸ ªï®;c~Èá!ÇwòZ`ÁÝ>½h›û6õÙf3ËÖÌÿõðÀšLž‘´ÖìÑÊÑ#¼²bÃËbòõMˆès¹zw~¢~™:´Ó˜µP:é[Æ•§ †q,¡¢èAŽ˜’,ÙÇ"/ÄÇ“Uü9Iu㬑“§Ö¸£|Áþ1“C S™¼raÄ·®+À 1WÄÐÇÕ†©/Óþ•Dza{Žìç•ß÷ó­³ËzÅÔak_«ÍÖÆûA¹ÖGßä§ïßÁÜ9°CÂÓ²IÅRnôc¼zmËp¾¿«—L6Ø`ì°ºžô$ÓŸ¶º‹vôH—Ô[f~ëXóšc’t¾ãK–Hݨ‘êë*M§24» Hs¢ÝÌ›Ú7а®þüÄÎO]Yž•=,ò¹Ä›å[]æ¨XÂH‰‘Á7¶õæV©›ÎÜC‰ª÷澕ØsV÷}í¦çkmºóVC€¾Àþ#10z¾›>~îÓÝ;.#‘5–WtoŠtˆ%Æ_Í'€GÇ‘”ó˜ÕqOt4J>´i::lÊçÎ>ÆsËçý¶ðÍèm/)xr‹ÂV÷]üõ#>…z< ¹î5=çQÞxÝÄIʸ|¨˜Ä^þs96W¸Exä›Sg½¯wÔæd¾)Ög~w®ÿ؇·d´Ãµ0=n#4ÇN ÄT¼ºÞv‰hLj#ùp GN½Ý®¡5üÚFõ"¢Ð÷)E@ZÒ‚3ùoPrqÓ›tÕFpâ‡WóX©º[³/N©·Ps‘XWܨyå†ï^z»¬êbwJ·‰vñ ò­ ï&¿ŽOç Ø¨åZk5›þ±§^^ Ó†Ò? ô[t/°Ý‘½Tgõ笉2×”ruÓôeÔEíÑú |ªoš÷{¯ÓgЫr‹i@„ä|¨ºãÚGgi|Ñr¨8¸]Sÿv™v®Eq-½µ§ïªÓ¸.´Â0 õñÓ-bŒ4ˆåixT$•BK»0¼¢i˜Î4¹ÅñË“`¬ }{al@ƹŸ¡ U}fò°nròX¿Ã ‰þ€î9û'_“܄оF3—Áõ¬eZ·²wÊô)‡){s¯ÛroIúá´5‰Q^ xƒ jKéÏŽÂ)C2òìdIƸOk>.D:Õ˜îhŸPø8¶ñÜÇ=㵬yõãNŸæ¸ŠÎž¡%–pèi“yÔqÐÉ)3aѹ„ áÛ8#Ž/çQ½—eý£™˜éo­\)ÇöKÀÏe"†ç9² c Ç)îŸÞeèÎhÉè äDR¿¶·¡Ãç×<A â0þ™¸˜§c½[uwtÌbƒŽÞÞ\¹QÂAcDÖì”Ûü¬¥’Û+l_6ÂéÖ\_Ÿô'2 ãáy¤bŠúò›‡'a1¼}Éýc¡È¤p£ôÄ^P» È¹ªê]œÓçàª"|zÐïn¥úKÆef·Øæ¤-PÅÃïì~S4Z¯ZçÌ‹éŠz…Qš¾À7]Ïù±§îÅö[¥Ý+f W¹§ú!,ÕÕµF§ªü¸n1ÛkÏ]Ê~ !ޏ]Lö *ÎSC¿m.uܵ!7Ø‘+Å3º¨ÃÅM ê“Lå¥:Ió2úSµ£ ¸'Sújµy6C͵{1?š5qúÍ[¾Sd\à&@잌߮Ÿ6éH'ëËIþ¨3¶D¬µµwðÝFV~mUº/å!óôS‹P/ËÊEÓè‹€'™÷pÏEÍ"¶ “¦q›n¡§WïdoâsÑ¿gzEõ úp¿yäJþ(cJ \ûšÆCÈÈëàªr¿ö~l€S•(™òP˜ø“ãé;©{™5Ys ¤ÁüßÔÊéé‡ZG€E™(£¼å¶8L~VoÈG:Únbƒgµ׃]­hdƒBmÝJfèíþ¦âû`á²CªïÝJLfGAlû’ªEmÔÉN²„­åUßžú{ãÔØ’ˆ Ÿ–¨í:Lu׋c0IsëR›”À¶ý9­H–ÚØ¢0ü€wSä¢èÏá'-3Ýêr°j7Nݰ•÷ü'õµ›yˆÉ-ÄJ†~:Þù@_¾BÈ…–;dzÔZ³“±¼Rtæ{kµæû‚%=iK‡!SžÃcɧõº¡TÅ[=íþxOuiÏ 5¹à ¯Í`øœí‚í•,%Ý—°Ù<ùM{a07©µp%]&ñæ4Ã4;n C]Î÷’|ieûçËÙ8Cî®´µ‚”N×jdt¤Ý1àHFTÆŽ:çéŠòÃÌ6WnìÜ'¸?ól™sÉŠ¸ë¦¹Z/ž”4ÞÖÕm#l¬ rðâhª>U^ú*¬‡Ñ¤céQïmbàéŸBíÑÑ6^{fÿ˜—ï鋊BÓÇYujǦg¬íÚcQQ¼Uï-º âòÀ*®Œ|˜==}®Nƒ´ƒ3žd9—…&_r<üÑËã]éGÓTëŠøR /Ÿ-[h0Ú ¦5®´k ú·x‡ÙXLæÒß'|ƦVþ!SCeþÀŒNÞõÏw2«•Ò`‘]M¶=¬wp@)÷dþ¤P]{ÎÀ±>H¯Áª[sØv3&Dß„Úoñ=”`ƒ@f*3=þ*ôÖ#ô·²ªàŒgÇõòg¶GF¸$ax ÁËCÈVô„œ¡E C¤§–¸ðÓ`Ò͆¯åÍî£`íüót§…åg“*t¬Ï¥ÐJS’y1'G’f㘯HãD(1§Ä–™S$ñ,kJ˰˜Çøo7{Poc˜Z¯½ O•4ûyû:U´áu\ˆ{ˆ.JÎW¶&Šg5ÔN«+Ȇ¨ÕO¯è^Wçl:ë/͸:¼õðèt®`ˆA's+¼Ð C…"Á<ñT÷“ÖvY8œL`’nöäfý^/}ñÉ8#³×«sdÿêX9¨^¾[+¼] UUÌ”¿(·‹yÄûIÛp*HË:Ô ~ žá’šƒ$ÕÉŸDF­RXæˆ0iÇ8DcWô+î­Ø ¡PˆÏ3©NLs‚NXÙ´j~)z»zà©•—KxÈrýFB’ÿz¦¬}ÃŽÎK ̬ÚÍ+gH´4†.ydÞj 7p8"ÐTÛ’ïE¥Ï%ã›êˆ„”]¬J¾Té‹Ë…:?¸p.)ªèÄ1¯á µËXJGBÕ+cZöjVÒÞé£Ç,±0i´Üœ{ôt?2'QœæöT’¼ªâuûzk¸ø9öñþýÖñ.­O¢ioü ÍoŸM¤*±§ó¢}l…k‘yò“ÙéJqô=‡%GõÁSq5y$Íø'É•ƒ¬OzÒ”âžÆõÏì&I+Ù&éW¤ Ÿwó(Ý®÷D´c±5/ioÞØêãB~>ú@ÈœÍözéQX Ÿ$•¡À›’¯ºõ|ù¹žÁ¡Í÷µ·˜H·×°¬ãJíö» ®¿·oVÙn ÉLžfðb“n£z+k­Æóêbhµ Vè+³ë¦h†-~'B•6Îyá†GM?¤k°[ì;Ð5S£ŠÞŒñ:k~z )Í ¬hNœ½i:FE7UÝ´:UF•ö°–5¬í&Ï YQMéÄ9`&ZSÕsÏ!EÅ©–~¦ÝcÆÓH}ˆq¿Úg,àÈ£ÆÃg§D#_FM›lu-zgtDZìv«¥ØM$†ËýÅIGc¾–äIÄXcZ4œÍµ§Ã²åkŸ¼õ¾>­Á+¥bÙÎôE— Ö"¼ûl'bUq,ڋ±#¬6_'ÏÜ~Jë ª\Ò®¬²?‡¡àYþ'Îê;ÓÊ#[¡«qúç?¶‘ã—¹¦fû·,•kŠÝUÎÔ¾VÆð®}êB‰WõiØøÛKÃK¦Ie£¢Ã”jŸlo‚/]¥Œ‘j-‹Op8ˆ‚X#ÖTÓäF£š¤a“ôßñºd?c^¨1±ÚÏàZï…A0ãXÕ³L霖ªp#|ãöQ^>ÓRžö†)Ôž–¾¶”¯LìYÓ*ŸÛñnôèGYÏÁk|¾pŠy¬Š™¿R&íVÑfÒǣ퉆>árP𶆖šåŒôZmmÅ ªg²!Qöª&\Ñâõ¾†¡Iè–×B¿‹¯&-‹#ÀùÏ”v÷NžÜ²zâç;ž:͆ ¬þè<-šeo¤¸ýˆ«?RÁ?YÇ÷\÷~ÌšÜEJ͆¯ÂzÿM«éòþï¿ú4¤Áþ™û2¾JvâpŸ¤¶}…Šè{ø|ö…Ø;=×6bôŽb®³fŸrzîP±È}¾6$Üíëxn3ý2†{:‡Ï¿Y?©µVæBˆÔ¨¼·Äçí·-|æÃ~ü#o%‡‰”•Žkãëöü'¬³•ð'vû'~Ò­uÙš¾ÓUgqzF6c]ÝËuï4+à*ôB8^?ÎȆ÷ Ç¢ŒO×ß°3†îpp5<[œ]ÉJ#ÔèI˜­ I=ã}3_ëQfyÀI‡OY×ZvœýeÃ.ÆðÝÑ~­1œ¼À©ÿLKç‡çE‹Aº²ÄÎO¡í÷P²0.bãjõ”Zuïþ*ÄLè=™¬î]$7%_¨xÐìK±Ô{:Óy¡É¹!Á˜Ù·i¬$݆Úž…ë_O¦ˆðèû]¶ñƒ[ÀéUWKŸææÆ)’¶7e·ÄÉÓ-hrNÎÞîoÞWE k.©ÅeäÉ_½‹ËY&²yð7è ÜåeˆÏ¥Àõ.ª¶VÕ $˜2çÕƒL€ø·»ŠÙ½ ³­nçMºü¨Â>ß^¯ ëMã5B.4J_0ß+¸6äô› ¦VÝ÷g‰Å»m«~5–'çñiý©¥Ž—\o¡;‡8ÍÔëWŸ²Ž‰±´‰ŸƒøçH{h©0â|Éð:EkHÇó7n!+Þƒníoµ€x饻#Ö…sãÓ6-üw"ŸÅräv>Z‘§ÄO/ë<|Lkùz#ï6 ƒæöFRë—jÚÛÇQ? †5¿§Er„ÊÎòùy O$|þl݉5TÃOR…¸$úáÚƒC8…å ‡Fs?lŠ+“2{õÎм¨™ž{ ™f~N9Ogv]_!¬0é³K|åh'}ÓM¸l¢Ô ׃â¦;Ñ ¥oB±®Ê7½<éˆm£­–f…‡eÚííZ‡aµ¼4¬xØM“ÐÐ?¤î±:¸RÚYí”WÜBL›¯^eCŒ¸ jîÙ´‚ÛÕ„ÁXwIt¸Ö;н5¯UY¼{ÑÞÊFI¥4ÜÒË»6³Ö³ÑL{ ˜#x°îIñs` ñàe‰–ˆq °3î'í!ñ6¡E'±ˆË•Å$%Ãú×K«ÐŠówr-(Ñ,[j‰9ÄÛzýŠ ëš4×›¡z.›— òaþùŒ «ÄŠSLíìÑ F8”=ì8àpyd˜À…\LX¤­ºû&\¾1õV„Wãy|ñ²ð=½gš<àCÇ5‚ú´G›`»¥‚§±ß _w žHÉÈM÷¥áŸC=ª?RSŒ1ÜûÒ]›»ý¸q¸Ž{\ß­]½8¼Ô8²(-ƒ ÆV¸Tíñqsó¦2Áóô“]£ýçãiɦi› *¨ãìçµý©=yr1öÊ4‘QדµòD.U–`¼ŒÅ„} –‹%EŽP™*k œûÇÀŒƒaÇKRPèÍf×$Ôi^°»î˜ŸãpÀɵ3¡ÕBv.ä”·ß¹(;ºjÖµùfsÿN8Nº‰ej%Î [×%‰áâîmðÕϬV,QŸŒ=8h2õZ½žÙ"“®Èˆ:õäÈa„#’€YDM…5h ¨Mû6J rM­ÝÃYÖ¨b(S$§3òd¿?Šä¾d´¨IËíRi¢HNm··0¶%ñ­÷ñ®¥ºa–öN#Œ“ ¦<1>ùŒp†]·œü4ŒÙr±äîë @1ù‰àÀ[:ùœ-1¸°ÃâîÄ=­'!Èe˜"ÌԘݫ‹Ï¶7øšÕ¬ž>È.E5}·1"Bâ{Žö®Øf"ŒGcžì†'ì… ¶+??®‘o\ÀøìLºA/4P7ÚQ5ªÿÌô9–’Skå¼R$G]{HÿLWâ%AËÌU— «ì×EÛW6ÆŽ¯oÛÓv¦b6ä-n¯ë¤ò“Ï-,½a•¸øxé~ÿ¤GKôÕ‹=º£câ’GÍùä÷ø,9Î%Êz1^J¿Ã»Ûmöpo? Tsi§ø9> endobj 1330 0 obj << /Length1 1393 /Length2 5903 /Length3 0 /Length 6851 /Filter /FlateDecode >> stream xÚuTÓýû6-N etctJwHƒ0@ç6`ÄÛèî‘QB@$DJZi DAB¤;ýÏx~Ïÿù½ï9ï{vÎöýÜù¹îûº¾ãá02V£ï#4Ñ(œ°(,T30µ’‚Áâ 0X ÀÃc†Ä¹ þ˜< ‰FÉý¯5 ŠÃÛÔ¡8|œÔõpŠŠE¥äD¥åÀ` ,ûw #T‡z"á@PB`"¿7ëŒB{¡üþì‘(¸ýOp7sÒÝ¡£þ'oücs@à€’`Y)) Y ˆð†9Šü,oæã†øåýiÆ#ðsC»íñ H{þà‡…z"€8Œ"Àï;þ}ˆŠáHxá€Dþ©Ž7#ìŸñËÇ ½0ž{¢@ðÏÏžlñô‚£Q.>ÿ„ÿÚ¯ˆ™šºªÁÍ߈ÿãSUE{ý„ÅÁ@aYII ¨¨Œ$PZZðï2ÿÀßàY È?—ÿSQeÊþÆ€Þß8<ÿЂÿd€ÿîpç2ÈÿõmÀ’`þKôÿ[¿Rþo¼ÿYåÿEýÿ¾¦‡‹Ë/7ÿ/ÿÿᆺ"]|þà©ìÃËÂê¿C-¿¥l€€#=\ÿÛ«ƒƒâå¡‚rÀS\XT–ømGb5‘Þ¸süM¤¿Wïá‚D!ŒÐXäÏ7> þ/^u0gü[‹_Ø//ª÷Õ@ÁÐðŸê“”B1¨Œ'™ž~¢x™ÂÞ¿ø ¡Ð8| 1hÆ~® qE¢<°?­€U†y`0xÝý"¾íßç_"G ¼0Àô&îô"¼ù¨Z…ÕKøë;²OŸ[c’­º£%q¼“Oüõ/ekº«ÞƒW\ëÏ0šz92áÏ*¸q4èmÓž2—®ýG Ñ½ º%œßw¼ÛG³8 IgÄ,Ðl>0¾NuBá{h9q!Ý!¾\¹TtÞŠ]¶–]º‹¨9ÒYq *y­kDqVÜŸqo­l¨i1L3ó¡s¢8dâ¡js<ó±Ï$1ëíìì›Üžî ñ½Î*©ŠH:fz_]޼þ”^f†¹º X^UɵgiÉœÌO]#y爡ÝÓÙÆ×«8(sÍ{š š$ʬ֩Q]axÀý­î³†—ChE›×£óa)'³›º«üõd_•­R‰þ}E‰Í»óöl{Õ¨È)óYä? 4z7µ;™´¨8À£•…¹‚Êäž÷U|L̉aóUé<ôô®Ù'£ª¦‹ŒS2¹ƒ0‹¬* áemzÌ(Ÿnsª`&»ê#¿o º½ç]ÿœ&Ý"J_ÁÍÝ•mæ¿Ò‰0&ñáüÓyÒ'¾6ÃN°”Hb ‰â2 ¶éeLÜzæ¢îÔÏ"vPRÞžÒ³ÒÂûä뻞›[ñž³N9O¶áΓýýWÒoõˆ|ã´®(H“¼È`¼ñ¡™8 “ÉîÝ|špÒ7ßáΩ+áw0¾Uk›î„wED`3 ”“G7çžÆS½»ë ½P¶Š›ÿ &´jþ*˜´³Æ'È¡C…¶¤5Š_•,÷6Î7èŃ’ƒ¢ðÐ÷Kxv‡ã;IvÞížò XÒPÇd±nE™ ¢ ±ýÑ·i?ÙUë¯ùÔw—½öp•µ6òkÉè­yßM’ATÉXWŽ&qúx!‰HcöÄc õ4µc1ì¨K$+‘KpI”Eì–›¢ÅÿÝ5vI:wšêÊaw+5^q V à ½ÅyåÃ{·žàÊ©eígçJ% ]`r\Ú]HsKMV˜ºoN»' §Åtݜݶ.Ec!ÄGoíˇm;¦u‹ÛÊ79Özí_$±ÃWZŽ]³%c|K¢©YŠ$ä>§2ÑHEJíƒÈC7U¥ZŒÇ£™ϦIBNÝ?³µSÇò%Ò}v zì"ívà®ý"¯mþtìÒG#È“–½™# áSõ²"’q§°µ»7N1˜Aü–…ÜM[‰Û'¬vߨ(¸KœÝá ŽÉ ÿžltCN*ÛàGvÛ%Ùˆ÷j]ìAjŸ¬ƒÁ GÌ5'I:´‹jðãô7 ¤~@ªƒÐ‡]®ãÙ‹þLåÑÒ«oÜ¡~>pÄØ°ã¡ä!J «ã2+y zÈ\ì¿ aN7šÝ [n²ÐZè!¤ -Ðý@S£àµ²’Ít2Æ’@®^»Öek‹[Åç{û=Ò ({H˜O[>ýˆ£tÙíùr¸A™¤ù;!Åd'!Ä!Ä\Ùq@²iœ<Ð;&0.1‘Â\±þËuÖÛ¿æÛsbֹǡ%èÃh«:•ÿÒû´\zçF3±;·uë»#ö<ØùLIi]QÒçgž—µƒ³E“ˆÚ“1_Ï£æÂùB?ÛµHM Yö¶¥Ñ®SÚX¹n[™(=õiÊæÐJÂyòSh¾ëÍìߟøQ²_ÿB¬M$7¨ÅR´=ë" n "¨Ðgξ²WË»=V¿LiRä;L! 9”—X q³[©¿½évZ殪¤¥â›Š9šaàKˆš{—Ds'å¸+Á¹Î¿hI‹€Ä8­Ç¨.xõÃyu—«Dt›]UËJãHfÜü­þ<³Öc÷ba1Eþ™º+-w]¼¢¸!ì_7ó-˜ÑTI]¶§¼ê¾õññ#’3â…Á¤/_)nú@—‰Rè¢{ª'®ex+!õ Æôêa¶Ù.WXÓ$mùq x1m€åÜ¡¨ÎÀö+ßuºÖÒL«ÇÌï#Ë â_ˆsè,s_õ÷~ÚQòlRˆ÷…#GÏtس˜ø©a–u÷vÀRk½Þ)¥ÊÂSÒ@i‹þññîtÕ4ïCòÐÑ>u1©¶ÓÅ"ŸjtÖ+¹¼ˆAލxNõ <+×ÎnvAS–¥€ÉÆË{}Øy Àº,HEkw!Ž©ÑéãqÈâ÷ÅùÈ “ƒöªÊ­W®[¼I/^ôØ®E£,ÃB¯õ ŸJò6_•â<ÿ1ù`õ@}²òà\|85Rcµý˜–»gªo¦2oGQÑkÚä,¤7Ø: úWýW™®…v#l錜ÀQ<ç ©wR\¯¼:Jšò¸f¤Ît°¬¥”®Ý2f¯õ»¸ÉRæG;Âø/®Xm‘z)élw„t™§ö4¶\æŠlÛ ? H¾Ëj´r€æ¯7±¬¼±Œh¸÷9– 6HÖ—¡2×ÊMìU¢tm£:†Q… PÈ}ò¬<‘¦Â°ƒ¬^y¦8š¬!vufB'Çö¥ÉboÛÍ7Éú™ör— D±—Y [%‘–@ýÙ>âsz{kªÔ“lÍTD®v$3ß1õ5'Y›/÷ÉÇgi,¸#¼R"Ø– Y›ñª iÚ œ&Ü¢¯ó$>Ç<®ŒxZ™!×qÇã|tñyõÒëW¾õšœl3MœŒOùF,Ä…¿¹!MÛ„…²†/„¶kmÃCYÓ£ßñ/(ŠzÝàs)b‹ÝqcÓa¼®wž¯Ê7ã¥ÖÃu¯“ª“¶´GŸ4 9Ý(ÛÕwzÏ¿²áCDvŸQ™nÔ1âÚÿù¢)CÑüÈ'“»ÄaεÝE«1úŸ†aH#•œ$[]ņd =†ëáÏ]=kîfl—2͉ö¼¬…jd½ ¿?y¥+ôâ&é3eÄB7u˜œ½3ßjœnø˜ÿF\ÿU¾÷Aœs»;œÕXúæ¹ (}À´GnÛì÷*¥BaiˆÒÿºÃ óšÞáèR·ˆõÉØÂê q˜oδm§%Dîi¨I GšnÁ¸‡È &Z{¤Úe¡GlÁ‘CnVѱäÖaõ²˜Z‡ˆæ4.Úåå7Á±Ëc/GtC>""áÍkRjÃsü)•Ö‡'ŸõeÇî*Ó0[¹+> böî"¹.’—¶RaøQ&·ªì§bö—“½àò2S{á†Á|t×x ˜¬rLÎÞÂ-Ï*k÷9Xó¾+ˆlÐrDö¸r•ÞénõÐzÔ˜0Šûôx¹M"ÔŽä%@ß©“ݾ UÄÚˆGãó“ÇnÏ®“èŠD¤µë¿árÞÌKi»G¿¬ I:¯º÷#·¢š Â×H¿Ð~?!éÖ ¡©b™ÛT¨ÆBQì ‰”ãÍw¹!ò¾,oi¿“š=s¨8+6;)º°8²å3â2φŽ{š’¬ð%®¡…@g¾pæV–1zp0ê™?¼Tã¤ã;_ü‚`J¹­Ã½þå'F`Ò¤à2³°Ki¥2ÉçDrÀýÄáÅú‰Âê³ÒÇ£ïˆj¦õø®r|›¸·Üvle³ÜP(ƒ^ O`i¿h¶×Úwœ\hN®É3ÎO¤¤M"a¸øè[¤xÖÿr0\»-%»è‚ %{ØDlYÛK2SQˆUf)W›Ÿ4×8Ó ¼¿ùÄa÷SÔSí’ƒ1A½Êz&ÊæS©oµšh¨ArDÁ¼õ ÓHň J»süÞy?r·‚ROë¸>õ­_F4ç*dXc?'ÕΑHhýLQÏKËbâ9ßµP´õÚj½dÇY±ÀÛY î[;åR6q·qwñ!z>‡”Cµ|¬Tn¹G?»Cž'­g­ôYÀnú¹¿á!ÿ¢„û$ꎳ¬Û¶Æ‹[†Èy‘zÉ›2˹Rz–vÑRže[*Ø/K,Ãé"Ï;ß”dÖ±šx÷E9+o¨Ë¾×#e» ”ÊÓGLÇŒ'QSæ«úöqëG?sÐ2ÍpX@½9|n8]Ùÿ¤a¶®°ÙïyzKõ1jjSÀ Š\2R ÿk.ëóa®‡Rølß®€ÃmÿJñýœW•-¨ÏÑ_™®?MÝ'dý4ÙÝ]¶Çh¦ê6ö ‚Æú˜HK2«ÓŒìëÊœTò¬ØÜï™[iþÐÝ*”Ýp„X¹Âááù›îWF‡=dO«œ¶ºÓÓþì¦ÖR0A¡£zÆ O}­Š&AÊC1Î÷7Á×ëés¯´‡+fM‘›,/*Py6?öçôì%097[\üÈ s½hºÄ¤y)ãqã»Æ*mÖ³‰ÃœÚZuõµÝJ¯2Kêžxr³7-w1íCJ¦?iZ ³Øøýˆ!ÂRøÒNC'C›³¥ékîtÿòIüÇ©xM~‚ ­Ùôj•O†œ=ÚÇü¦×[ùª¤¥â+‘í˜H³PÈIS–Ã!Û]&.äɹ§•êõ;òßo;åyv;SÈE˜-Ìô]ýÁ+glóƆr!úƒy˜xÕ@1’П2r^7º`AC§·J4çÐH1h£¡åYÙ]úª~õ©RÀ5éåºÅîtü»¡ÍR¯„./46˜»u÷³×€>”D¸ʸ¾¸“•;…nøÕ”íy mZiçWÏGÔ¥„Î¥ç'‹sI6釣é͹,‡`t© -¡Ê†¸‰0É>Ö<ªjëærÛìø^™¡[F¤]Öà ¯=½9õCÂ*óß°„á¬}zü*å¡9׃Ô&/¿´gFCt–èzßÜü0âGÞ}å¡BJÎŽƒó jÚ!Ì:€þF£×ô•9µg[\ätðA)„w¡E\”I̫ѓ^Ýh}l ¹ò½±f] *5î-r«žó,?%e*xÀ_VFÂâ¯Îýç 1EÉîTìǧ ûwÅL.Îúï!›fäó§`å‡#~°`×p4Kñj[ÁÓ“Øð󬥄]˜ù[¹É«IÂôY*A°ØÈÎêôµÏy*,Tz$)·IMƒ†«0úG¡AåÌÕ°rù€:O;¿ìk$€Â¼G ÷ #ÞËTŠ„UÄZn$¥_;¡…ÆáBdòŠÛ¾š%ݯØzu‹:€”ä9ƒÝ®{+›ÅËss6zmïåÄÞ7¦Ãý„˜×äßLѕđ’ÙºÝ{„édzGÒqI²:Â=õ‚.g]ÜfÏâ/ µCL8g®í=jž]IWU8ýàtÚI’l¹Œ/ÃbU^øGÅxoÚ±0’QÁ®cù>µ¡vouèKrá+HïéR©õ—è5e”s¼ð©æŽR׫AkÚdžœÃ6ùQ²b ÍÆ­ê‹ìï®óì…ý)}AÂRÏ¥™ás5§¼ zÐÜ.H·!äJ¤ã`dÛÄ€ÉúM]9åŒíaRœ \£l>:ôM]Š8H®šÃK’’3î¨üÁlJÜ&ÙW\ûÞÃæÜR¯>ZoÆ©¶ÈZ!Ç'wE¯è^ÅòNŒ½n8o]”òoËÆüÚŠ=’ï²ôþaÚמn†—Œ96PŸç×{mWªV dÈkÆœ3«.T·þu×ò}l„÷Úܵgœ5ë9ªÍª&c0J¦LfXèò´–{þ¡gaÓ%ÛñÀÚ®‡Ú‚²€ô6Û^2µ˜î‰áŒ7ÆŸ™ :AÞ_sqd(çHá$]O9"vc¥ˆ?ß‹y´ÕgÁC¸Cóp<Ùz×Pœlq¬-¨þ€üKÉÞ[•/ÖIpx†ƒÿÍh@E|p3—vó©gbè®o@b)íXaµö£4‹w{ÁËǤ¸îëoG„@7]¦rMFÞ|‚Ð"f2Á«QÆ?N÷2dœÍÔŠS‚¿Û>u5׿|?,Á€ªaQÜ+i1 :ù·N-o•Ï{0ÿøzBv£`’æx€Ëa9w†‰·Íã¶ÔJÔ” ‰á7Ýà™Ý S[¨˜yÉ>Ôwk_¦°Úðnt†•wؘ'“d*w Å^&ÀC%ZälUq ´»ŠA2Bíôç¬ nïéP×+–Øõ”¯fÞŒ¦¾ ¬¡Ø"õ/z®(@¾Ô>xߢ㯺o:ú]Zßå:R|@Š7tÝïrR |ë7šõ·n]Çnx¥RÍn®^º¯Ò¼[_BFuE9ìN 'Ú¯¦îÅëÓqS#Ëù©}Y §ŽYjȼÆ[f-UeTæµÕIçÄ‘+Å×dèI‚t¶ý:N®õˆçߘ7;ç”ü£žÚRùFgÕ²¾ëÖȧ ¥¤ýþ,Ípᘪƒ[ŠÞ (TNgyÄÖ8¾Rž/ì+v”³«ºÒyËû¹ÂË'õ3“†w?¼œõ| ¯[_z»ñ®·h5äKïF ³ ·(Xšøv€Æ½cUen© ˃±Wá/¿,mc4å­¿Ê™hÐTÜð„‹>/ÐyeIîíÿ¦Àáçú¢cµ±»×Äü£ùëúמ }òâªC†ñ|IkÕ‡×ì‰öw([ú¢¦Ðßê)¹¹ôfá—U‰Üâ‹kë„àèZg¯†c/®æ¹MÂ(‘”—˜ç2 T]å%'QÒ ÔwŽýYbÒÑ]³ YÎ'{°bujcÂëû-üa;ÁõCA|R„‡kŽhë3œب°Py<ßJ&W·‰ØÎ9ó€WDûŽV“WhÑ x{È{oébð‰ ¯d僴œ.ºv÷7ÎT×øºc¤åw¿mì-ö:¥wÖê@íúQÁòÅÎ-)3ׯn÷Ç2 ´Có½#ªýwt+œÆVvÛò*—I)W UÇå»ÏÙíF‹8–©’>ÉQÞï]8YSo‰\sl9iã†å'V\¥¦‡Ì ˜Vj6kATR ÛŠ%vxs[Æ 5#¾”)QwN^ÚˆmL÷*3b§ä+n"r5êÛ‘×–ôÎÑ=s÷’+'àkÛ1VéIp0kÝúÔ$9\ÅÆPé©uTôC»ÕÍÌ€^}ÃnËÕ8VÜÚ Žã%O!E ‚æ8ÿíh3*„?òóZĈu–p?}O/]Äi|„±+a°hb15ËK ˲¨Pô«âÈ]6ˆ•T÷§µêu¦yiïÒ5ueCpgUŒÆªÙ»«s…¹} >i­o{ ó; ØÌÑeéÝ>|¼ÐÃ(ô‰»™6{ O»¬µÑLݶ?ã3¤ÈoªËáQ~Kᙘü¢hÈ" j­=£Îhš ~ðºàÛ­ÿô¸J endstream endobj 1331 0 obj << /Type /FontDescriptor /FontName /TMCDBM+CMSY8 /Flags 4 /FontBBox [-30 -955 1185 779] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 46 /XHeight 431 /CharSet (/minus) /FontFile 1330 0 R >> endobj 1332 0 obj << /Length1 2127 /Length2 16417 /Length3 0 /Length 17691 /Filter /FlateDecode >> stream xÚŒõt¤[ó‡ Ç6'îÛ3±ídb«cÛ¶&šdb󮀦mgbçÍ9æ<ÿï[ë}W¯ÕÝWíÚUõÛ»ê¾É‰å•èŒl ŒEm€ŽtLôŒÜ!e &f## =##39¹²¹£•ñìpäªÆöæ6@îxÙë;~Ø„õ?el€I'+ €‰›‰ƒ›‘ÀÌÈÈõG{n€°¾³¹@† i4v€#²±u³775süÈóŸ¿*CjíßÛÖÆöæ†ú@€Œ¾£™±õGFC}+€’¡¹±£Ûÿ„ â5st´åf`pqq¡×·v ·±7姦¸˜;šŒíIÈê[ÿ[=9@ÙÌÜá_ J6&Ž.úöÆ€ƒ•¹¡1Ðác‹ÐÈØð‘ $! ³5þËYú_´€€‰žé¿áþ½û¯@æÀ¿7ëÚXÛêÝ̦s+c€œ¨4½£«#-@hô—£¾•ƒÍÇ~}g}s+}ƒ‡¿K׈ (ô?þ[Ÿƒ¡½¹­£½ƒ¹Õ_þ óqÌ"@#!kkc £Ü_õ ›Û~œ»ÿ/×hãôø™˜Lþ’aädË 4·s2–þ·Ï‡ îÍÔØÀÆÈÈÈÉÌ0¶»š1ü•@ÙÍÖøïE¦¿Ì¼§cb¥gdý—ÝÜAÔÜÕØHÞÜÑÐì_½ôŸËøÈae4–·q0ÿë¹ó±‹‘ñÿ¬}Œž¡ådzÅáãÊþ^2þ˜¬ÿÍ+4´1úk™ÙØúööúnpŒ}ÆÌÆð`ú˜U#c׿[À@´qüØøÐè0±±‡ûëbÙÙ ™þEìÁ?Ä`úC\‘ÿ#€Aô1Äþ3€Aü±$þÐGé?Ä `ýCäþKœäÿÐG¥?Ä `PþCuªý¡(ÿ%®5ý?ô‘Ïà}xþ—X?b~<Ѭÿxÿu FÿÀ•ÆÿÀ™&ðcÑäÈúšÿ῜ÿrL¬þëƒMÿ»ÍþTöqGfn¶fê?¶„cüiùüÐùÏèB­ÿQ釬„ú«r›àG¥¶røÚ~¼A€VÆ&ެLÿ¶þkÈÿkþ¸\ÛѶùÇ¡ý¥Ôîø¡Ìþø!ÃáøÀñø¡Êéø¡Êùø¡ÊåüQ©ë?ð£D·¿ñæÅÐÉþ£lÇ¿lÃôþûýelìjl·4ocÈhQØöP%€çB·7ÎÌŠØ~£¶+‚ã| à/ÄûxÍ’±(Ð5»ñ¸‰vÂ\ôÞh©ŽÅh©³á™ÁµT×ib°Cë9‰Æ÷tâ íļ/ÕÙ©©Ç42źhRt¹ù:CMk÷{o.ãHŒ—¢©â¾Üìš²á”l<*ú'' X`»@F{…`µÀÌl‡™ÃÕ×ñ³Ñ£ÇÔ¾f¶íþåZPó­T¼ãcD[©›Œcþï‡=ì¸Rz“€òÝ‘OϱTþ7m~T£J¼MŠŠ1ôÒ >F­Ç.Þ»±þ¶â,œŸ#R~Ç?h¬è mgwPW²ÙÞð2M?¢Qº%ÔLçhÊ_§›^‚”JÍW™A¥f4žl;ÑúÑæÓˆ/7ʲ—¤·Þ3È6¯YX·œáîþ-ðî´vÑh}D›²vÌÙYa˜ƒu'|¦ÄN R) ö›³S+3И=DZsºðqŽpšïADšw2ä\GÔ ¤²mö²`”]žèæn8ªåw!è\‰r¥é/fß RK““ýÍÆ–y`sê”ÅÛOå UYÃW=f¬¿,æJ‘  HùÁ„yöw@÷ÁU` ¦|ÐêI HЪ¸‰ž¡ ñÊdðí¸©üd¦åæ©=É`p½ Š]q‰#8œ \©ZË%^•ŵE„>:˜‘ȦŸB íb©W?ZÖ‘J(ÜsýX2Â+>ÿQëºi[„3¤ Ùš$Ù‚ *‡öœWÙ0rGup£"ƒé«/%¼`ÛPˆ%ÍçIj²´Ô%½«ÊûŠ#IjsE¢y|KßB¦RâO…R¤žÇ‚Û,FÇ;+­ã Ï_Üý²Cjb;ƒÕ“¦ˆÎ¹vKÓb›;޵߬˜'„çT@i±ùerU"å´º^J2ž‰<‹5ž‚p„¬í¨È1G„Ö‡½$PécÞCAW\fºJx9p‰ é«[øíröK¯nec\iL¶o»•ýÛˆ6(>“vE/€vÉtÕiQ“¿`6Žª¿Iª@¡<©Añ5áÂ5æÀ''‹€]mC›<÷ Às'ï\– Ÿ¿LäB½,¯ £.eQ˜`1äå±$Ú|{!Iï¿lñÁ„«!á Ξƒh…Pä(ñÐÐt ä¯×îçK2[ið¯ÏÄ©$í\]¨¹-ºàçÄ1µl¾RÒ9Ô÷3BÍ®qmƒ8ð…‰Ö¼&¼D9F€ïþÉ#8Ã4M«/&c¢… 'æun÷µ³©™p”Ñ9Ïb "à–XÊÒÍ·Ò^28¬ó†­(ü´ëÛS¥DÔbƒcDøàlšà›ûâÕ ×6¿Ú¹VåÍ¥7:|œ½`9x [‡´ÿvöµ§5+‘-E¥³ê Ì‚‰¿ÛNš•X2ª†vŽËr±uŠêÁÚ†P… c¦„cÖÒ9¾dF îÊz¨år]8tÀŸo÷­è½îÙá6ÏžVcüv\êK} wòjAÛÔFñÒÅ;TbÈܶ¨MUîNà„ú—¯nuÚèš …uªÊmÍ ŸdaF8W³»¥#G$Ä )ŒAö³&å–A€=™ò+G%ýÊ,ú·¨ FI3þuê4…€Ù*­8m’jðÁg„ÅX$Äe(™B¡|¢‰¾¤ƒ•±àÄÛÚ B•Óg[¢—ñ[¿q$§þøË®9àrè¡,8¥)–™™ ÐK79áÁô…æ ½Ö±-ká[!Cˆë±mCeWÖsÇmÖ &C¾¦ÇÌܪ›e~ÕÎôZÖÓuQ±mٻϧà×µòä_„&Gï0¿ãÃr­ùt ¨Þغg]o ‰¡õJø’kªVH”Û¸ö£Ÿ?›jÈþ|±7©3tÁÝõN)o,ù#ø³Š‚Âq*¨ÓTša;ýtR‡ž' ‚ü*J!1;zå:F`ü”F~jˆ9f޹s·TÊ6xÉ{ŸÚ•#Ä(„^yK™–ü-¸+9ÿÛhéüO¨Ž·]÷Ö~­eÅÒ-ÄVHí B¾Š€`èUêC½œ¤ñ‘±QEÄ’÷ù&@îOj¹Ús})–ã@ Òž ’£pÁ`Ag?ç¥åÞÉ6'Ñ{1Y:4”Y«Q©qß$s*‡+¯q±¦Ýai÷½LÏÝK¥Ï®þ;¸4Æ,ÙüÜ£ àÙ‘(¢²Híýa*ù9 ÁÐÖpµï·•B”8§Ú/«C3×z©á!jþðªñðW×#Ø–eÖ›áû¾‚;‘_³}Ç'ÒÇ(æÕ&âpXá5täž#zQ:/ô€`yü;@ÅdÝ(+v0ÑÓ{ `-°ÑžÜ–cê*iիܳKE8j7ï9Ñ^sŽáˆ¶4°—R¶€ lgU¼g%†>D(zA&Hw·qÀV£ÀAlr]b?ôÝrÁèÒ„H6ö|þ¤÷¾áÛ½Í]2ûn§ÄpÑ ©¢Ë7"0¡ôãm»‹'"£­Ëçû`oêRí ͘*®„Zåø¾’ÅežŸYÂÙ›i>Æ~þ|ᤊýe¬j¿ò®;Çùs¥ƒµ_–ûn®ó'à&¿…×Çš>“1§f“->ƒYbwÁûÃÅØ5`_T4¯å Øä:õ¤Ž°Uþ>ëCí:Í(•ÔŸ¢ÆšîÜ€åÛÕ¢ 2A,VôÊÜ×~æ“ÝnÏÆr™ô›[ &=c´k¹l caޤ´šR˜.¿¶ßίôÜ D>U±ôóòCH<§|S/©ÎMà|Œ¼ÁBÊÜ(O@NwJ Üd¥tìŒèòìÔÙ™“¤<›ÞΊTðàJLnŽ6dQå¿wglõ—#q†Ùz!„ÖL ÷Ö¶SëØMŸ ?M9*颫²HAšq%‘dœ’„ÿŒÕO¤´Î,l§¿ð â"|ÚѨÎ;ZIžóþNg.øòžxKóùĨcË×O[1p_QæÊ?²p˜ET´PöðÍÖOˆš‰æñTQµ°ΚT=ä®V‚À‹…‚gÜYW9 uhÚÜ–pÁnËá33É¢aç F:6e¥,ŠCæ€)êØ\áTžªTÿh,Z‚…nw (H_¯ÈÃrJÐâ÷ì$G²&†™™cŒséåøY&hd߆Öw9¶*bäçµ.ÉÕû•?<‘šjYʤµ–Þe·ÆDÛ¥'´E‚>Ì•¯-Æîà829s ÊÛ3ëš¼Ü9C„´%ô?É”~;^ò)Yˆ.êâLÚŠ€lï»O¬Ûû{UÞÛ \Ë6! @Ð"ºéè]-Ò°ìÈ$¶›¤Böºfçš NØ¢ !Ä~µF„ÇxhŸ[ñçá‰ßs:Ú+g¤ÃèÀÁoS°ciúB20Ré ß'è„þ{eÃ8+Æ@çé6Ð{¾”:59KÓxå1™v$Þ§C+ΦòËÄZm¼ÈôzÝ!MÙƒ£„C’ˆŒ#â–-0'IàÅÔEN2È [$h%¡Óí®t–wª$‰­ .Þ„TQT’*rØ÷ôX§›‘aIö¼òëºç‹OŽtëÏa4&• N·GäM»qê(ЏlaR§ë³ÅDïÐXÞí]áv‚9Ñ ‘ åuyݸT"ÜøþOpr ÷¯§qûôϪê _å çWô²sŠ(âúu¡Êq_~DÈŘ*¾ãè~Ä;SÓ~ò8T±^ö£ü,¢ó±Ú¤ýUIñ©L:<+^F,çÒ 25FZ¥›RҊݑ۬E»«-\€\_±YkÊ›s¤³mUÖã"žWÁ/»¦‡bdœÑfvÅ]&Ó«ðåW¤Ë®ð)êÊïU4¹Ó´Z¶ÆW¾ÅOTS+¾P‹øìÛBÐ1¿D»!¯Ca®$_®¯›%üçáõ’z IãŒÏh3C‚µføƒ‡¬hæKêŒ7Õhô¤îYå* /ΤñK¡ûKBf;Ñq&Ë6ñÎý{XŠ:ò~%ñìÖ´RŽK:£‚ý߇u_XÌõàQ ºJ;½Ú‹O¿ÎW‰Q4&üVÈ  })oþåÔéÀ;Uƒñ¬X§¶cu ƒ×bXõâ*y­ùEÚüå0̲ýQNþ,Ø\YC|æHì‰.ó?¤å­u£ØgŸ™º=ï™IϽâ×5õ@ÿ'þÇD“/H¹ÛÆ!(|Ø¿Žï]ÎKI/f¦`\Nï}y¢ó£¯Pð13ýl Ù¬Dؘ}Smw´:"^@–DÉÕöEä±t8Y`c¥ MÓˆ#ü™VŠs ¼ð×Õ§©7¥“¨l˜2™A=JõÆÁC,YÖªÉ\gHÿ·w,%ú´´umºÐé¯ Pa(ê|.< 4I>s¯ÙÛÙjE› ѧÆð7ô Nl¦ïÇîx¥¥Ä ®)‚ÂÏ[ck ´¹ì’¿•zk=˜Á¿…‹£,,«!¹·HتÒ;q CMÚrµ0+$¥®•Ô€ÆÉï Õ$3çæ C´éŒŸ¸ØåÊþ¼L›½Å‰Zq›}X\øíI°½¿rej—”g­¦2’ßìBƒ`ÂN/-…¦ÈÁ$c£r» éP‡Šˆ#¹ÃÁÑÿÖc¶v;J›¸Jv?û´zî„1¿é}„ÿù1Ø?¸7!†6Ïl"¹½#ÖÎ}îØñB8.i]ÉòÂñMéŠs_áDÐ ™ªm˜5a;ÀÌo͹Üî©û^b½¯K˜æ…C­he—ÍϽP,wùÊ¡xñ·ÝûÌ7ugë\kðdjYË,d*ñcÜÛcˆQî'åo7¢`ø¨À­|NðǹþÍГN¤H$âЀ{<É@8~9YÍìP8¸B}βT’C6P VseiRÒˆb+nsåpàÅ ’]o`6šnÌš›åq9N#YŠÅÍ̤Ö4Ìl%ÿ^^ÙmŲM‰H›"Î3E¬¶›s0Á“¡Ÿ„°µK†@ª<ʲ[–˜ŠÛeo®ã;åaA$Ì»Æcë_×Ôëþf!0DçZXÅs|èY~‰LªÖGYí´›š# r )–ZƒÿϺçh´‘=>æÅ:k‘g¾7¹šI-(`Õsvý•Cð¡0ÓŒÐ-ÂD°ÏÀ¤»ùÛþq,'vŠ˜ò–øîŒò‘˜Hß°;Ùõz#uÚ:<Ö¯*ÅôÅL˜V?äÛ¥àWæË<¬(_B  ü+q¶Èpí±ÑÙ'ZH«®‰1³rüçTœáèè¾F´ªü«1²kÑU-H1S,§71Z«Ž¶1µgqűZ‰|‰¸jŒ>µÃrèkØ\%Õw;Mz*1?[d…©¶v‘ö/§ÐeýºÇÝ{áBÓ'÷¶:ÝÙMË×ò¹ eµÃiØO}séQ;7œÙÌ9Õ›×È$O\.ƒLB»cUéû¬,¹ƒÎ’³F}¿xÙ Ø‘ù@ÛwR0Þutë8TŒ®Å— )ˆP\ ê¼fË»^Ò©V÷YæAÞ¦‚’¯Ò£#l‡Q"ž\Bþ+mXÁ´w,G? ÊoÔ¹‰»£èB}ï&Œ$Cñ¬AIoývG5Ù /aS=gµK‘ëœeMî …|MÌxä¡l¶³ãhÇø]ÙëE¥Ã‰',Ö“›ˆ”Ñj{|ÔC c©-µ?z›•·Št²Yk9³l9tcTGjÀCLëâ6MÆh´‘7l­NWò™ÆÚö¶3kDÂÝ]›wœêÂSyfäÛ÷J²b½b?bpêÛxF×èTF¹I 9új…/C XÁˆnaÍ«‡r§"«D.5™¿YdÌ!V›ÆÀ;ϽW8½˜¿t4v4\Zã¡‚—Éö‰ž©ˆ¥ž2º%ùAd K M|FØfiLœ$¦¶Ä·™FŽ)Ƙº}ÑùîÖט0‹Ÿøeñ íVnîßýF Ð(\Äpç´C+¶;l7XÎÍEºdÌ:iù‰ýû°{ÕíQ…—1¯ m•Ô¤‡„™0vïw¡Ôé=Õ;ï÷ DÞ燠\¯¸G§ iûU2føzœ-’ª-„Õ·¸A9"»£Ç‚?=£°G‹›Uêâõ§Çt=AÓ»K'œ iïòéFU×s—ðz—¾6dKs“\NdÓ®@Wkª¸î˜ž,8þ¶u˜`uöæH’^W…oØñâc»\ –§OÁ¬žÀ‹ÛûtÖ’3‡ñò9\äëÈ:¤!oB¯æ…&à1ø6Zˆ3®CpIÍcbo„ŒKêšz]„Eý~rÆÏ2DNoÍ%Œ  ßmbiª ô¶ˆMË^¿§Cß/ŠT1ÐasfÙOSd:摆!47UÆ;Ýùº ŠS´I×ð7®*‰s\Ó>¥àMr¹¸ 2sˆã:?‹w )FC|ù>_¯rߤp¼5ˆ9H¦‡3@Fœ(›ËfZF@•5KšT.¡ hvœÌ'&ìIn“ïÞVC¾K³pÇûUïn„®Ëfò:…®ï^s kÜ'ÇY†@/€ûsLS9ój~ý™¼ŽÆÍö›%±¸è†2LŒÊÂ;pô-¾¯~E;ºbÆÓß6€ñ2nÞ¢¯a`¸Ô‹‰Öz-g•> à29;´ÍþãÀJÃçrhi7 ½AmfŪ/éHEq·ð€@“¦xJ#aþùëŠF:>ˆ I·´2®[)«¨RwÔÚ­·Ž2Û^Áõ‹ƒ ô䊮ÙÕb= ¤pó÷81:/·NA@¥óå Ѧø6À|w³67«7Úº`/¤‡ÿ}è[ÛM&r뉸ԧ¹Ôý†€Îé·ºÌç=¦«|6Lu”¥,xY $õC ñ¸úLÛDY\ ¯ »Ú]7V­²£ER/­µ./~YåT/hj#Ã6˰CæsèjÌŸAªL8 úQÔñ‚,¥‚‘Øç@–ߘÁ¨ýhÜÇà äë‡ýÎL6É“Ó_ ÓRO¿Ú¡î 7“ß‘„+ókEÀ-ûÐÛ›Ue.怿Qx/`¾6Æõ1=°<á¬/x¡F]Óc _¹è‡=¶Ö9%dz&]­¢ùæûqJÆ¡ÊQjëSÔþ6 aòOL°'ó"tçÔO(·õŒ(IÃÜÉ'ˆBaLHT9(|^øi:w§:¯G7ÔÏ_mûÛ‹pè ‹•RÖ·Ãí¯µ=ˆ‹€„ ´'=Sû3¢öK‡tÛd­ƒjdÍ|ËhRó虢l.4›éZbl›’+¸KŽ'/«ñŽ4 ñï·–bÜ|ܲõªþ.˳Of³®YHOqÑs¥ÛÏoÎÏG Œm†„Ö÷p×ð(:4(íJÂeKúw½V"#6öÐ?žUÃÛѳàŸÀ³dcÑS±¯Ùö( Ìô.ëš§x .dnàèÄÀºiœ„gÄWJôº2Z5Þúøë …Žóðüš[Ž[ιcÓ‚ûå„ëDÇzn_Ð@~8 Ù]·rB±^øn[THão‹”¶Ö? VbÆË¨@²Ö©gj&}knEº¥_„–ñŸ–¸²àÏ ™îÕÌÅ9]$grËkζHGË®@äß)c»¶dÐ΄4‰ÂŸYÎð`÷gj$‰ý7©D+Œ}jÆf>Ë•Âi;þ"·ÁÓ´Änr_RŠŒœÃ~û^k\ñ@\zžà—OyÁZû&I}ØÛP¥=+¨+–a°ƒP† 4ß!œi4¢ýX G ˆL½ŠqLnœ ÁÖe_–û¾¯„ŸÕ[R:- B¬Ñ—9ÀôÔìUáeUäÕ²©–d×Aê.ò.çI4_»Khê×¢áÛ—×wð2ÐÏÐ0XuœWT€œwxÇap¦6¥ºýŸŽHx߬æ?QÖ^‰y§ÄS÷â­{ßRí¤J1ÒýQ–êz!j:¸ôˉңÅo ßïì5ÚÖ˜wׇ‚ã`;±dª¦Yo õ¡,“ ?µKÊ[\_UUÀ—}¼_ç«#).l¾¦ð¨¸&“ˆÙ‰·!×Ã]ªƒk7¯ê¸¤ÒB+JòŽ@ Àh(ÎE»¬î;xKÎÇÎ-ˆÝÇjÅñ ¯)ŸÄïùæÎÅ WOîÏ_blÞ‡A+å "Hƒcvs´ì?Md>)<Íó[‡8Ú*ÿðˆ:Á€EƒdƆª±K[]‚>Ý‹µ>3²ã¨$º{æ;z1Ô#f/¤IL²N·•ŽÚóš›ÖÇ–(`—ù™qs —Ë"æ›dp4áâ]`pŠ–^5n“ú÷@=j-s¨óf‰ X€%6-øÝÞûeÝ-N0ôÉbU™´)Œy«wN4"Ïô»Ö$ç q75鯳¼Ñû¼ù«³¢¯®_ôyo†ï¾;ëý¼,}æÊ{ZàIke-Üó”àV°«DïÀ]ŽAmtýö Õ:÷‰•©_´[¦î–=‘ ÍÈj9$ûÀõËÝ"rÝŸ¢Ý£Þ¯®z>æóúb¬<‹ ½kw?WÏÌ´¨Ý$ºu}Ù¶,}Gùž[˜ðvŠÉ„}ù~TB¼èg癃Ŋrb¸%£í$i©@Õy6ê0,C Ál<ä‚_]â—-鉒 æù¹SŽà:©@Úi¢)m3šž5¿-íg˜&ã{ŠDËÈäŸ\,ޏ¿¦ŠàC¸Uü d«ðˆK$¡ʲÚ=77¢a:`Á៵U‰R°õr"JÑ3æp|b«åë;¾tôkÞïUM«*½{1wž–ƒ©Sô’Û‰ú¦FÓk–÷sl¾™ÓfÁ¨wÕmÓ\Œ÷êAc Ó?ÊìŒLM<¯²V3; šm|ÅÝÍË6ñ‡,™Â9R¬+ÕtuL¢À@Æ#N÷œy×Nòk£c´P×ÈÙ çx>ÍÑÕ‘Æ%s)ô ¢ã>»þQ ¬¬Ù ö§vu®Ú`?Ó¡¼lµV ¨6#Áˆå›ZØ2¿`Üj‘B‘®¥  J:B¡7L\@‰^ñî?Žò2¥Ž ŸìBf)Š£X,j®i{ Z%º${Èåå¤Ålj Ïf攓,¨öCÊ'vtÍ6H𦠫ÚÑÄþŽ °(*Q/gkÀ:|¦Ü’*Iº€Jßó°:žíB¿”d5a0-‚  /'I©S•÷%Kr–NÒ®=¦äÒÑsåIjË×é!ÿ<ÏD÷i~»‰¬:oHÑݰ-«…äi±›¦Z‘ø„²‚Nû¨#­ÛvŒ?7ø GaÈ•Bf\,ˆœšóy‰èž’û¼Z UžÔʆ{Ä!‡nޱ€âôL¿*·)Á¦†¨I—îÞcçgÞ;ßfž±Œ—™¹Ø·l ìxX"N¤pŸyHÒÒTP'H'¿´"() Üš©ƒ‚ÛݶŒáÓCŠ&ÄÈ#ÜA6Ä#þ*²â‘…¯…(‚xäÔ#ÎE¯kúag¦O?Ébª›3ÚX|3®|CStZ>­fÂC¯“’ãÞÑSû9¾ÌKÕ¨+èÈ#E·F9µPÓ ú3¶\”V](>¬ÅA};ö#Ù³ ÓÕ^Fó;:CøM¸ÈVŽó¼KhÍÝ'ÙýH¥p¶¬—üœ—r6 s>•[釿ôX‘”cçà>ïOÝíA5¾FlíÓ·ƒÇñ ½ïEq–Mk6©â›\ß“Ÿ4¤][”Iê~6ÅAmZªŸçžœäØGWV³Æ_ž}étF˜™,¨þï"O7™zEÖ™ïˆD÷ì÷3"Órv´[ª- ¢ð½ßzò2²XL'¤jY[<Õ¯nL)éë!ˆ2rjúEÆLF)ò¸—=)4®]Ã69_Núu¥½ó&ŒâÚýÖV.п­zð0“ÿhú”mñá€íšpïÊʧaÆxØ´mùÕGÛ:ÒJ- ‘ý®ýS2Ušâ]DÇ$8ÈN’#Nó¥ÅV‘ ƒëÉ’˜ÎL;UÈÊ'¹¥Bð§†ôÆ’Þ¤Q0yyìå4ÄEÜW'O"r;nIƒ¼.v«Í'쩾 ®eUðEG–ϰ¤¸½²Bòáwkz²½unX-ά‹ßP-ZÂëê¿™¹m4Ú»õÃÁþ|°WK̪¢§Ãµ²“¸ë³ÆèÈC%yþ¦ði|©½ZâYë×Òe”g’ÙÙgÜbØ•ïœ=}œY¿F7}´ßûê‘Iª¤ó,L¸)S3‚–Ù!§Üglä¸ü³ƒrâ%ŸúiÜ4Šð—åÀ7•øÍL¿Ïá$2Q¤cyí!9è-G&ß‘:è¬B6¢5çé݉€_!Aco’Blþß?»SŽÅÆPaüîùêñ¨+™CÝî® ÁÁÉ/ó#sœô3àçu[ü]D½QŒ¡;ôÞN9Ÿc¸tùk”ÊMŽÆ)p½—RÚÍu#z`°"±Rx³+Ivö¿wÑé©Ó™K½À p™å@W”„Kæ -gÄAmm6– R^Ë»û"6%bãF_O¼ÕÙâëákƒ*û‚ 6ß»¹Hså$Z°AÐ9׿ øÕ]áâõÏvjìß„¶Óê™çÐs¹j0=§ /uô4cÁMP!x^½ÛrYŸß\‡Ò‰Û¼HùT‚æ:Ʀ¸ÊU3Y54µÚì@ßECBS#‰eôíö@„C¼Ž¡ˆ$„%‡âSÊ>Šd­š9ìdÞ»ââ×nL¥)mxëªNSB‹Q²£à@ùŒ?äó©Ãߢ52ú¾(áÔ½ôo~)„$0}X/ØEel–—•øíßXz<ïéË' !‘œ=÷OC Î UÝÍ v—žÎamîÉ“š©7ׂ(NUØh„µ–¨¨Iy=o:Öƒû–í-‹·óágj%«_X±Þƒë’ž.—ñéüKŸØ×ñ"ƒYçÇæ¶¹Þ¨_þìün“hqGæ Ä?¹­ó…ØP$Ub‚´ãäæ-‚]ÊCžŸF6B¿§EOÃ;jÂkP"ÐÌÇ)2k{Ñf3º6•1fhÉReî£z;œ»€ü2‹Åêì2Í>¬ú<=+E rzC¹mµÌ^óñŽDD03¤Ëil>ÇpéUyÛ5ý:9÷d×)ÉÌ™r»!Œ%|‘FUJ„#Gµ¼%WЏ´j:}Ò8Vqß?RJ‰bY ­ÔŸýƒ W_|5é‰PqcõIZ“t »ëÆý—Í ÊyMó8Ïâ] ‡Õ/Ø@Tñ× ëµDæ®ÜY¸2Í'âj¾ ­Þz„8™)ñél)~á¯ߨ¥‘.h¿*°ÅºƒMvjG6Xç6˜^Ý›d‡2[">ݼ°Ï_³µ ûâ¾ f¹å(l‹ÉãÁ¯4ë܆úóga|7Wv·ûÅÀ¢ú€“Û^Г6U^˜ƒ8 תے?½?˜\5䎱Þ{\&«~ îËÛs.qÖËgFfÏYæ œ­IVŠÚ¡#‡n è×oV1i¬si&Ûú;kƆœ ¢Çq!‚ä®%SüT¡r"DÂ4J:Û…â—?LÙâ×ïo.ñï‹•šÆ†=@Šè«¯\¯k„yn‰†»{Íi»ã‚d&Hòzת–‰RÓ¼ëNõ;Ñ˱5d2Ì ùWj)Ú“»æ~6K®È Ü+21ðÛ1O`ÒRpvró1ønÒ‚HpÉz|f«Q°Õ² ¯8øÒÙíÜ$!!04_;„®5 ö <Ï3 +( ,ô ‚ȇ…Ãø'´ÕÌ9#~T»óßµj¶­"¯žjAkç1Z«-œµË¯Z#ɉ)­40ÚÀë‡G¾*Ç&=ñ']Å öÚUxÊ•Ž^˜³´¸à̲Ã^Eª·uÚÉàÇÔ=Í9‘Å£ëI[ÂpuúîncÖ²lMÝÄ«XÕìÃ:kJÜ=¥Ç—Ck pŠ¥ÃÇðË£9DõG7ܦbœÈ/ ½þ]÷ýBd¸ëp‘ºxo´êÊ{äܧÏÇcm}¿²û8QZAäñ?SOÒ©ÆYð[ušF¼ ª¿Ûk\£ [IQÀ¤I-`?þF‘ù$ì-˜ýNþ?‘òÅÇ‚*OaïrúõþêÇF[ŠÀ6Û»ô&óÅ¢\ =Œ EY™ôKè5ù°Ðº¡A |ò¸gçhömqcûm<æÜ_Q-a¿F°°Hˆ¬=ΘÜ`>+MaúÎ3¢+§`¡Ž 6Àe‰kQä š$F$"‘¼V›Ðì²–° âȯÅqÚ:A!7ó×xà5e]Ps|z–wmÌìPP]{À¶ŽÏ ¯0ÆÀþ””'—"­Jî’ÀEÉwë±çé"Ò÷yíǽ8>¿%éRg •µ,‚M]wÞî2ï †Ô¯”X³*ÎNüϨœ‡›/÷^ÉŠP ËxaN³ìÑÁzu2û0ÔhNë zm öq6pa”É~ ;ã"z©–f)$Ñ" u0P¿LO±¶Ó½##ýyŽˆ»Zi§Íõ_ã‹>oëŒß5+ÅŠz°¡²)‰By(‚ΓïRSÇOK_GÊÕRlòÌá*Rïúíö‹¬È$½]û vÂéÀNôIi<ópA±ŒŸdZzÖ°‚ëJˆé/ƒ~.,­p¬K}µú MË8±À“®è™í)6vÁf}xÑ¢w…¬-ã@XÖvÐ4B!y1eh™šÁNËW©­ä%ŸB,c“žUýxæh½êŽ>kÁI{¢h#ms?ÝVbÕÈW¤ä%ƒÂ§"²Ëó÷¥ú¨Ø "*òÁÚÈšgM·wÕÂqN86$è]Ù×Ïv],ŸVÄú¥(U¿O†Â"_¯²¬<»5õÝR§O˜|ºü±[5dMž·Œè“OO.øº€×¨˜KT¡¬æ-}Z$û]¼–°iÓ#¸.œ·µ¾Ô³ðµ§s÷½\³ØQ¼žÛØáp£$`Øê*-ê%-:"2Àxã ,Mj&Mï4̺tÛ¦ÛßEüóœ×<ž¯Öƒ빃"5›²+,ÅßZm ®m¢»Èr]`ñ(†ýÎÞ4¾Ü“ãÊîàè«Z¸A|9x¼@êºFü,8<»ï$ g¿•ˆirI|© {™œíz^d~öˆ~ô·¡Å£–È-E=¤áVz|-&jåï‘1ÁþŠÁsWøÓF±µ€Vœ i+p3‰‚ e»»)IhÜð„õ15“+µ£o†‹i·mâ¹Õ¹Ò5åm¦‰U@z %˜‡#’7è!œ›k˜¹ê Å ÿ[n5ÄÜa¤0ˆw»ØŸ°¿‰h¿”Ù “`Ú—éà«By‘Ðm Ï“‘8vé'—o¢ m™¦è ñ>îQ}ñû@äǃBœþ'äD> r*>¶Saü¤xYrhf¡Q%lWTñŸ–:æ}Ÿ•¢X¹u‰ÅåÁ“$ÒwÕë2xÉí]T#ù_Ìlú%ÜȨyW´…NÇ4ÅÈ-pÍoMdª{¢Gœ§8^xK]”ƒ\xQNâ6_\Åω0µžëQ%*Çñ؈ý<Î( nlýëm•g›3KÊ[]»Þ›‚,Šrà¡ü@Ñûã)#Õ&Z(fËÂäù„ø¦kAo½S\Hü¹èá {–Ò1ÂŽ×`c ºcJ‚‚”xJb…Òç6m{¿ÏÚku¿’ÖŸ6áù¼œéÒ5ßXì\K¥þJSö9Õ†¿ˆ~Aã¾É `S+¥ã©»çn@§Èx}{,ŒxŽ/—MN…ÌïÐZˆ¢m¡öËz%¿ÇêÌ”ÖxRyßl‘†4ïS¾ó,{ɸ¼0ì Çæ8úF¥q÷õ'5T}tP1¾ÄTK^žÃèÞ‘®«¿ xYÄyb¹CMÇ~³Å´ü3ÊI¥‡I‹åƒ‰3qÚÕâ¢6C˜ÊM¹µh{­L¥JÙ^‰ÿ.oð„?Ãúr„0Ê>Ÿ;©6)w«ý6@psÕGáP4ßÂf̆·¡£€ÆýÖŸd!B\ÁíZ.í;¨â˽a}¢Ô+CzÒøŠÓ5qãÈúør„x-£ô©"3J¦¯Þ¥‰w>ãè9<÷ í?.ÙÌR­@ó:r¼¿o²_ªŽ…B3¢Žf*œ£hdDŽÿEu”&5§v‹kj›_Ó;bÃUíç÷béiR2g û¦Ç. 鯟>Ã5Ëñ²¢–¦É¢ÿUÄáÓëËÕ”äE,¯|eP¢é:ßxz]Â@¨øõËQè…Péy*p¡càkL$Êí<ö\˜Å0hÍ÷TéuŸðìD ¹ëà³§ú¡9ÆÓ+hóðÕe#†`ú-ËRH¡ñÊÛrJäoäW@L0Q]m©ôºx% ¼›-uÃ´í  ¯­Û É„ÃaJ±9Hêb,ùÚSï“UQáúâó;éR±…:ÌÚ^îõ1æÞV”jôƒ%ë{)íÉÑD®ôµŽU@Œ>ŒÉO@Ò>é—똂É;˜ r®Ù‚*‚ÀÂñ tþWRÚUåZüëZä‡öSÈ„—2£°·èž#8Ëçcnu1 ”&kܲޭËìçS±‹?°²Ð[µ„•¬ÈÎý'~"ôó²ÖÐ(v»øùâDN)ï>¤ççý0û¦;£ù²7ĆáåCÓåÌäcòÈ4þâ‰Þ‰¯Ø¡¢Y>øë°¯€ýg[bÈ·ƒKÜÑÑ®9iAk~EhTÇ:Ìï»abÇŸŽÚ°J’i|76QٜΎèm•{ŠWjù÷o€Në¡.H(IÒ¦ü*{ÒÕÃ`ÙE™J¸+Pè錪©‹NÛÞ2ICÈÛýk®ÅF, ’ Þ•a ŽZÝþœ?Ðoàc¾bv³eìbÂÜâ¹YAY»þ§;õ…‰nÓä,"–¨œï2 $N +Æ-5›“ÄR•š´S²e<&=ñW&S|¶u·zúfK.SëĆÊQ®mÝyE5ª¤j17Ì~5\KÝQŸ¾ Ú˜Ú¯ë×LëÂe,>0®n(—»ÆygøuQÀ‹²ˆoîÉ“åýlNä–{‹¬P7møËt0ê–ä¿ÓÞv#Ûæ,ÒÝhÂ)¢_E=+³Ò‹ ÷“ŠZ÷O~º§ª›¨+‰ Hôk…r»Òo2"5ºÑH/Id“Ä…³˜^ÐöDïì]’5}»ñuŒ¬ ýpÊ Éyo²Qx^dµ…2‰Ë¤c‘$ã£JÁ'ÊÚôÔɬ³ú”,jÒ鎈kÈIUé,úR1ZÂÂU¼Áéydø‰|Ý~8vнv)Ò#Õöh¶–v Å4´;eÑA€ïÏø®'è¹Dx%xKãÈ5•Râ1K”Îj¾|Vh· QÑKCÙ~å—å“€P†6\ªzté”öȵî¬3û*ÖåGzYU£^"EïNìß÷vç ‚_p¿›Þ´Æ9¸äÕÑ|Z˜7ÿÞ2\ÅÏjêq6*«}tguK½øHÊC’v¡e¹yÄ‹,©Mú «¦é§™8*)èæ¸}gû¼®2…ømp ©ÍäS°{¡ÆåýanJí;œŠwΣKí›]Ô<6>Å}9‘©NôD×À O§2˜ÁØ9Uã(DMK¸ˆ9•š-IhWo2ÓÛAþ ÂmÉ”½j{øÕ›ÛdæÆÍ¼K'[«•ö§ ô.ü~„I6ùà‰ý©o©7c'}`EM´-Õ1"h.¯)®v¥Ufv¿ÂUÜ‚!ÀpÛj¨økyï%­E?E!Pn™÷ó'uÞ^5„k[ù_7Ùâ£Ó‘Ñ [ëž'æDÇ5z©]=sJjNc^ìï® e:l ÈsR¾ÊTªML¿ ÒR~- 1¨Z | N‰VGóÉÉ[-Y±;äkÙfüQm|YÒ>‹î?Y„© ñ¹š§ÊýuØfÙ‚=´ÆÓ:ÂÀ$zó²OÞ}£.­£ÿ÷{Ò·¬=­ä±×ÄÅ‚´áì˜Uœ ÙÑÈ»þä*µú*¾"Ö+yš¥Êín—ýxÁxÁµÙ5Ê_ñ˜ˆdãÅ.ôª•Éèbå-¼ø½- °¯™bNÓž=à¤Ãñ¸òˆÃû„€Õ/3ÒxƒŽË’â©YB?|aåèâ‡ZÊæéZ0ÏÂÏ"ǘZ8.{x’Ò»ýh/{ý©Æ>€v¶’ÿò‹‹T@0šÈ%ðƒL¡ó$Œ`]–ˆœ6ûùŸ#.¿Z;úNfQ<¯»ˆÇMgÁÔy)«R$÷öö<”cZ1M÷¥¹òG³ôùû²îœÒL›íAô"A èÿ0Hý»–ä…} P#w<¤zåÔ§%£PØdZðÂkž“ÐìAǛִU¥´ ‘îÀt¨ü¨ZñR©¨¬’ÃõYÌ¡öYD9ƒF0(#óÉÝûJL£e4»Dqéì¬c€õ·Ë™ì-õÕ%L2¾ð8ö–èìtö£¢ô’•~ êWg÷™%LîüÖx¹åWu@¼ŠŒ“_v&l†Sé ~áöƒîL›‡ºbFÜ–÷^ ŸW‰F¢jäþ©8óÛç=Xy&(Ì$¶ìýÜÈ{·½´Õß%—²Q:°*¸ÒJãm˜ƒøÏ[%ÂÔ4U'<þД»éMY¯ÿ¹#·E/IŽ¿ÿ0“ÑH,:?®LcÁ[†1W0þêM1ª'س”Š.:™»dê‰A8´ƒ­úýôJtÓŽßlMÎ,ð‚Ó#òr"ö³¡+ê+玭òÐnÊ—cÜ0Q¡ùgÐgã>Ÿª|0Þ®Í\ø9£A¡nÀ‘KÁ´L>-­ÃòæâªZ;æ(êÈJšú·™t6ÏP´`N|oyIlɧ G98ruÖ%Ž£Ÿ%Î颊.aÉT~Ò€àá‘Ü0¶ŸÈm:LyÇuë‚(t‰/vÄÆÀuƒÃ;ÿAÉîò«ÙÕ¹àÍ—j­°¯ûáScðѯ|V Î(ÄW¯¶ Y5ÓMkÌþÚYÒ¡Ü—{ô•6Íõ%ƒX@+”º_K£wr{^ºæ­ÚŸe˜Bã¥2{[åÊõw©/p´ò§>„xñS-þ “W—[Ÿ³Ä¢¶·˜›R{bM åR¹ž«[£¾÷ÞÖâ`t#U•=€¦-ýco]‰ÔÅ<ÄGã½A#¬×øÏ, ½ÊÚM0Ý܉©Ã[w\jï–àl³J@>®N­¶ªíEãCќɣ endstream endobj 1333 0 obj << /Type /FontDescriptor /FontName /YVFZSU+CMTI12 /Flags 4 /FontBBox [-36 -251 1103 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 63 /XHeight 431 /CharSet (/A/B/C/E/F/G/H/I/L/N/O/P/S/T/W/Y/a/b/c/comma/d/e/f/ff/ffi/fi/fl/g/h/hyphen/i/k/l/m/n/o/p/parenleft/parenright/period/q/r/s/t/u/v/w/x/y) /FontFile 1332 0 R >> endobj 1334 0 obj << /Length1 2768 /Length2 13143 /Length3 0 /Length 14699 /Filter /FlateDecode >> stream xÚöPYÓ ã$Hp9¸»»»Kp‡ƒ; n Ü‚C° ‚{p îîÜ%Ø=™™wÈ|ÿ_uoQ¬îÞÝ«mTEQÔÜÑ(åèbdebáˆ+jh°²XXØ™XXØ()5¬AvÀÿÉ‘(5.®ÖŽ|Xˆ»M@`™„ l¨èès³°²X¹øX¹ùXXl,,¼ÿ3ttáH˜¸[›™rŽ@W$JqG'/kK+8ÎÿþИÑXyy¹þ:µºX›™8M@V@{pD3;€º£™5äõ4V 3³‡‡“‰½+“£‹¥-ÀÃdPº]Üæ€ß)”Lìÿ¤Æ„D а²vý[¡îhò0qÀ;k3 ƒ+øˆ›ƒ9ÐŽP—U(;þ6VøÛ€ðOq¬L¬ÿºûçôoGÖ613s´w2qð²v°XXÛÊR L OÀÄÁü·¡‰«#ø¼‰»‰µ‰)Øà/ê&)QU€ 8Ãòs5s±v¹2¹ZÛýΑù·p™%ÌÅíí W¤ßü$¬]€fàº{1ÿÓ\[G‡wÿCÖæ¿Ó0wsb~ë`í씕øÇ,Bz‘YANvvÐô4³bþ@ÃË ø—’õ·œƒï;'G'€8  ¯µü髉;rqú¾ûSñ_„ÄÊ 0·6L–ÖH/ÞÁb ÅßÜkO€ xüX,¿þýÏÿ8Å ¾ü™^ÔàNàWÞá?Íæ`ýGúßV³ƒ)8]À¯ù¦\ɬ_Ê.¬“Û‰¿„˜_Ü€«êìæš›¾Tƒ—ëá§”lûGCXÁ9¿øåü€îôƒlî ~ÿ¥fìjgâjõ‡ p —àç…dåücPÀy8þqìÃí…'8æ__A®fŽ.–Ü[÷? ¸ì,Ø©çÕën‰÷ g°'o Ëß þsq›¹¹€{úëmßêÿÃ}@ž@3¤ùG3þ›ê–ÛJQÆí6”ÞóˆK­-I<÷]Õ q» öüÈ9ÑŽ©È»5Œ¶âçz[ml[ÃUŸ´H>ìùšX ÓMŸ1 Á_® nl;òííºÆìæ–Ø' jý—"“´8 ÎgÛÓ?¥¨*nÊ­Nà©ë™¡F¢#áqyxØ‘¡BZE3Z+ĪD'§Úd)\ÏEFŽˆ¤~Þ¥õ ±qnô.|a€´^O#ØßGq’¿ÌØJÝëä—7LRnuJâÞÇÒ]¶„Ò˜ºþP‰-àÀ·Ð8¯?(pS& ti8ªÞ’--cÛœ¾ÔP;䡳ԋÛfB[PC¨hÚpa«CˆU¡iÐa”ü0æ'fY1|] L®ã*’#ûN»ýŒšxdföí -»/k &§í‘Ú´Éëüø³Ëã¼JØQëç¿æ|~å:‰dÊI«ÛD»=œ_“w ®çܯÐLxnÀšê¤²XœÄhßäå-å2ëÒUj×èOÞ…  GxâJR™'eÎ9K¸Ñ¥*{F D|UÃbí~%sêѹ&–”ªJÑp±Lwïx1‰"ý3¼ãS¦GÜâÙ´oé¥ËÑrC˜aÙ$eC9J£÷RÒ%ô7PÇ`ä¢ÃÇkU?ÁŽMÒËv&äüªF¹ýË×mN IÐë~enT¦k%x?Š»ˆèü>ÙÊÛYצ3[ÿ›¸[”òxÞæÇŸVX½úkèŽ,Ìýw—ü(tú•d¦"©Ô;Ç)3OãB•ä¢ò¬* B—‹Ð‹O!ίfÍ>䩯ðî¡ñé^S§7M¢Ž›­b!î¶)žïÔ>^iº\-m»!Ìà+dóêºù”Ñ R}t©Pˆ ¼¬qç\ÿÜàkBèà¨¡Ž‘7~LËœµ(ó@5+Y#…÷ôþ§”¹)f6CjÞâW~OçÞ”«_rùèJH$ÛÃæDzFé-²:7w”S˜ïzz6rõIú¶E{’üORðã‡Ú2›-¨Vù8?Wõ쵊¥JÕ‹wíwæR¦¨¹b=u4 ÒÝšgl3/3/£ R·gö~9™Û9¨’úšï8«–(Ûæ³×*ZT\M=|å5¨•(GVíºòuɤ/[„«s™ÜUb; 0GzF¹œ.ž|n%™,ü=RBP!p:J€#~ R'÷=‚p£{úîeúŒší'¿£«ËªÓÂUÎ:éî¼ÂÒþí¸ë‹ª8å¬à$É*øžYÆÏT#qy[cf^ g¬íå!A‘Ôço³Ü¦·‰ b!^£^e8Û ÑB¨¬çÄà¶Œ|¥›È¸Ö+§-.™”Òú;"GE]9*˜¹·ýc!ÆÁ^ø+oMSÔØ*¹Á^¦”Òå·öøDIœ`%Á\<9åš)RL›¯JH”øò€«‹sïx ¬Q”båNu~ý ´Îzý L>NÕ!Y¼Œ_¹Ç’¢½º×RØì†ºgé…÷ëf¨•jFëŸo¡ÌT¾Vr`ªp‚LÑßníû;†§21Åè|g’ ¦{¡j7Œ¹0QËOT\ã,!\оr#ð\õUX  *hŠxüP Wb1N•5z [þ•€â)‡ŒŒ ü¢,…Á’êòÑ=GÍG4Ë*tú¶ ©Ðòƒüí³¨XsíÖ¨OqˆÜ%¯‡{b;´eöüOnЃ$´Bý Õ´¼ŠC˜àú§é²}º°?tB÷ÆõôVàÖ¡#âfžÕþ$ó=Ë-¹<šºLÛÓ&ÞG•-úñãv™'Æ«+G>yÇ GÕmòÁ lø²å¼&t?íw_oKh¢6%@V´sàJÓ~Õ2suù2=šp,ZÄSQëEjZ&¤c™àž^¡4®€wç)‹–úB«²CÀšuím Dò~§ÎÎJÝ»ô цª‹ µìz I'aW”µ-ãµÿ!á§6'§ñr¸VÄã—¯ðÚ”ý1ÂÜ]Š•eó±WJqƒñO­9غJSÉã>’ò^ÜTB¸] ç¯sW<>‘ Ññ'†®«´Üì{{Ìn¾ºèŸ©»¼/`ÕRŸG£í˜prÏ´ÖP@ÆPÉÃáaWF‚aÔeÎ.@[HÚÂ=PÃ͆›“‚:àÇdp"F9@^C˜¹vt«vhM ³goˆÐ!ùpì.Ù| WÖ)j?a!‹×Ê®»mœo»"Æ:×Ï÷c…"õ15Ó×2PüàNìmò³pèNÐQX€êÇÏõ$o¡'ë DgY½;ðÄ-ûbƒ‚Žx _›Îk†ÕÇÎ"\‰!å¼›D¼D¸8âּ›O6×90"††ßleÇ2_2’—Y…ÃÍÕ‘l;’ìt]æÚŸš’ˆZX„ÀÇë<ûøzË Án´ÝyÐõÖQåly‰è_²|^÷X6ãíš–¯'› j±=tMò+ª¹+,Co7JÔº[¤mâYºDs:¤åaúž%ï4È:VÑlqhÌp…61ÒT)D*šh(ߊx¯£ÎA7-þ9Ô•‚Sž(Ö˽/ E° ¥®ð°g.?{ÕôSuUŠÆ/]Y‚p„¤‘(z3¸ 9yͺ"$'y¸öОƒžÆZK¾Xd39àÍȦ—a£w¿÷ ;‰¦ž ¡Ù­³Ä×bîDÆù³wÈ“†-R¯\½ m—<>"S6T4â_]Ét "­°O SîÊ.5rì_×¢Šô¬Þ‰0í—Ÿ‡%È Øµª¤†saÃ>úaMsn–ë³YÌñ¥©Ñ<ÞpƺRdfÈâ>W“YÞA'Äz‡‚eI¢ÇJ“nD-€ÜeBñ±Uå¶ïÑÐûjÿÁ7ýpDJå™ýýÊbXg¹mKTë}ëÁÆh!XsiƒJ Ö å+Q}ÞðY„0±žìqÌõpŸÕIò}¶™ +cïµÚtbC˜oZH¥ ʆ=œ§Šw‰¥>¤WŠýh\˜M¨2I³¤*Cž9Ú·z[Ó¦ë¾p¡ožÔGéñEíúÑL›¶’{Ú²3žú;ç¶ä—¬Á!js}Ío3ÔÁÉð>9æ‚7¿ Ûú\Žå}_ÍS QÒKYJî“ôÊ1Q£²¤^ýð®úÔ’Z¯É½Mïñª%_Œ[ ¶žpz !EýþiU²B€I°‘NÂ×mligûÍa;J)ÀnèxÄ êígmòCÄŸv¶‰ ¹]ž|b©ªÆÈ–ÊG÷× ºvq#Å? »ŽàÞ™²ÉgÄÈKûû¨kM<¾Ý—ŸÐœë±’©6œq[ÉíÌ¥¥Ùì .iׇ ’ [ÅÕ¡Í)ng&PÇKèšMȽÑÒ@›ó>[g¥%oÔf©£û7š¨I³ÌHB~øŒù9‰3Ûyîm57>dàÔã(ØOÓ¼º½Öü½x_çQêèsÔ4ªHJ5ó¹¾a$ÅÒ4Y(²B‡‡FNÙªû¸F.úu)© _˜ª†×E¦ýÅ]ß”òCŠI×W8.Ǩн;” Q/¬R‘Sxbbld*:-¡r„_·žÅ&8å詃«Pezœá~h TooBŽÙ­6 ìßsbbGüºbOñKÕ[¥è>!`õk2–xøZ—¹eAÞ& ÅÙã]Çñ냓G¾ »Ç*¶œjTå ‘áÅG¦\Ɖêw“b»Q%”)û™øS*°ý$ÕYR÷'ˆÊ½ûV®ù´ €[,”Ľ 2îùTñõHZ•Å-µ¯ðDHUƆΠ|~„•WßÇ)…nB«§¾ãë-+ÔÍæ`ôOKä8pñ4¤57>1-ªªgqWJ¿–¹¸‡±ÇóŽ¡k}/Ñ(„Ø) ÍTÇÅ&¶Ðó}–Õñã÷>de{ò…•²ïfGP0$ ´àÏ$üÊ,o|!¶¤\eÊhêU *1µ¹>ÜÝ’ÊV ]/f¬¡dqgP¨ìoÍÎâѼÿ±~/N %û¨Y¨e4Pª ‰†ºYI¡4¨Ùî4X  }×c¡`qøìíª&kJOŠ@úhõ ´6£¯$Ò ˜à) nà2ø®µwB_ûõõˆÞ½OËõ¾ŠÝÓvý#M4öÝöy#‘„.•¨0ÅÛ ô5rï“ ‹2û 2WÊYÔâäb|8ŒOŒ‚šµV¡xއOÐc³rá‰ôs‹ $ºxE½¶âÖYÊ19¨ZÒê-Ü«ó>8 Ç'íIÎ @<¬L)ˆ†~O€HÉàù•’©®æI~Q´?rÞõüc æb8ž¾ ȪYñµ‚c$qˆ€‡êJ®™7ÔH¢œÐî$ìØ_–ÏDxZ…Q3Ñúx”“P5¸ôU²rš~µ-T̃Ïú–S¸N±æ¡‘wýŠ}ŽgƒŒKgFV G¸éÝÇæ¤á†¬AêÚyÇ: ­¬ÒpÑÍúlqØj$¼EmVÈ’) 4ÄË‘·a«_6—m´ Ó¦%²i„gPœ÷fŒ]†WùÔ«k;»Ùa«MòÒd|!¢'óuÞ“ã¤~lŠd]7£lhÙ¾ëP,Ò‹ÄÕ«s3 ©§ XòïsRÀøSJWBƒ6Õß4²7Ö«?ò;\!|½mÔÞcÕ¬nmðÒÞtr„;–($Èà"h+ô¼~¯×^U“dðnô ï¹Dojð%ìž}åcb;"µÆ¢r7¦æ÷Õ®-ŒÛ ©}'É/”täëÖ)÷°ÝhÅé!lšm1„úóœ ú¥*=#h%¿¯Ö[Òú C1vΘ¿BøÌYîcŒž»_ªÁ°jû>¨h¡}–ÿ ÙÕµÚŠùˆÁ›>çhÁÁâ2³(­&¡ØYÅ9ko½†´ËBŒl¾ªÝn>ˆ;€ò#Ýø“Z¹žÒÅ•]˜OœÒey ÑçGÄÛ,+e:÷Àf êhL{®í\î²v®JW?2v¦Bˆä@Âê‘H¾Â=Z­Õe×à#é‘&ë­ÅŽÌ|#vGXÀ±ºTí[I(…­_Ÿð”sðx’ø|j(ï4uººmµïêP†ò“ZƒxQúkÓˆèºÏ~-—&y×›„RÊï|snÆñh{dsêZ$|m̼Kç˜njžY—ÖçWÜ5Î`p¶àyíJO£D8î‰=a ‘ólÖ€Õâö°M§Øm£éW?ÏÔàýÜd¬àà‰ÅXתÐȲ#ç$qjá›ù{ŽÀˆ2õÝv´/¼ ,×^T“ÇGÂÕW쟬„ FO¡GOÜ{ZUÎå#¡Òp*qrôÞkýúZù‹Î1?¬kðÆÜK™ìGÖÞOm1ü£o2ï)39¿ H×ÿ„]Û¤rÛ¯ø´ç„µt*Ý­®O™¦É† Æ!r°…Ö¯C]ý€×çÁ6—Fš¾Ú­ÊOðÃ÷AëMo±ö÷%ލ’嬲 µ NïLbLkËKæ(Üp„ã‘J;1ýÖÄ‚Ço]Ù$uóuä- ³ÏOiƒêfýt€1±±ñÇÔ>ˆfõVõÜ]囤¤{h•yq~<; dRÑDÝAN×73­Õš°Â¯ƒn>åäìÙQJQ6ôœv5Ò¯ÌÒ\~÷òl<ºù¤õ„¨!Áõo“Œ„ùUï íšÌçß\v«9A`‹Ó*Š>kÝIü Uò´nXrQ3F¥Y‘Õ[¬Åt…êlc+_Ì@|– 2Ý–ùz ^nÉP³Î½C§Ü_"£Ò +xÍïzO2ÊV7anô1ÏŸÒΛL•Ì÷Ê‚•±ÃËÇ÷‡®Ú\šqd…›ù~Ñ¥™ø§Ñ~¤g‰™1icÌEñÍ•‚oYæs–çQ¯KdgQKÛiT5ÖÛ)©p @îŸe¥iWIe§r<‘“ƒ»=„¯~ñá‰vbèE‚z¾A l®X†·WrÔš¼Ë"©ÔÝÂkªC›S3z­cLXÙ» ã»c.¼õÓ?þ=¿)Êó Ë«ïmaH 5QÃØ_%öm¯Ð€nþ©¤w$ìp|I˜L—ÓçEYÌýN’„‘EÌs!I ú”.äJT9p_m¹ô &GV» §Øp"gO(“ù?Ǧ¤†•¾Â?ùa›J/š(u¾øùWðѵ÷“1îŽíŠÄ;¼¹€Ñ7Ñž˜òÎ’&­úby [Xál§»qË üå=…ºú±æšqyÊ›\:‘í>h0æ²=Þyv%ráWÔ=æ¨ü³Pèôë~£•;ù7¾‚4W¯ŽUº ¸q5é+çKM×ú¡eÊ{Õ£¬Ô™:’²ÏtŠ>ÿܳ’$xÒB¾”‘ÂĪf~ ‹ô¨cT§ó´o q÷…®ži×’ùt2ÇÙ^µäÛúZIK à¡àšRÑXÙ»Û…ˆ° y¬°äô±#G^•N0ŒoåDpp±€à¶Ør` þÚÕåËq@¸à(Í;·E¹»ˆ‘Ú)GmêC˜Ðô·kg|F8(Ër:´Fqþ¯M·éJÝMó|­D˜pZ|R0­©‡Wd}5žä†8Ûà†¬ÍìcOí©Z¿˜z!“+%áµïGë½ñìêa íÉ 0Z=U3>{4íÖ¶ÆnÛ©¦‹"ÇOåi'BAáßvÔÙ}K­Ó 2LžV“›Np@>úyû@?é¥!¤Ä±V—&]H5z­!Qš™zNt²p:jÑ‚]°‰"o†i¤ÔÖ­W’áÂâ^¿dÇíx~õ•öØP]¦/. ý’£Ÿ%oÇ7Úf‘Nõdî†i%jó_njÝd“÷ôS–°’êŠéê·¸"†4Ò%%¥xsÓHS»¼œAðÕxµ’„œ‹è"!,Ë‘üŸ7/¬Y ‡1‰˜—îä;W“:»–7ÌÎ`YŠøˆäý¨ç ÝcÏv]Mu‚¢?BbŸQÅõ)dÑR›ØÔš®1ìòøp\ˆÿˆï‰°û— !ËN—„zC~5šé©5ˆQê½JqŽ>D#ƒf•¥˜ªîÁùò¼t·½Ü}Ʋ;¡"œ‘®Œ¿ÓÖy„ò-¾‚¢.PFQí3íèíÅ¿U,+W•ÎyÕgd‘W%U’ßઋ‘ëPyìãõ…XyÄ¥÷ìIq²a=%¸ 0;Ê“­ªUÞM,wö¤Slp/‰§Cu!ô Tõ òõûÛ-)_ÆYWH WYJH“Ú06'y6øºu¿]˜k&,xí»L}’µ¦'ˆµGϳ]¨Ôai´Å;öû3(e+… <í:ÿš¬8¯bxúËI`£¯ÔtÅ+¡ý)ÕYÍ·LvIäJ¤x¿ø§58<§ìF§ˆpwAh1Žn˜WdÆ™]FþAM*ù„¯±Æ®¸f…çuã¿k4G±*WÖÐw…Ö¸eúîÛhrÌ¡°gaÂHSe|”Æ—¹öiñÓU¯ÇXoòcn5úFÃÅ ›oÙyw&+×XXon.Z.‹C¿v÷±+aúK˜½é<šVLéVXK¢J×°ÍUQ~O3VÄkǃçCfòt‹î›½åøµTGC#&£ à©åùZãDbN“TSMÚ¡mwî‡ã5«áóÆÒü‹xf½ð4oñPôϪ–*Ï@¯¬Ê¸Ng­î‹fk·Ç‚÷K ËQþqµ0AQ]0ûÓígüæþ¨·‘l}o/"S &¦*tå;òçÙ.(÷Û¢F@NŒHݰ¯Óã\<ÆÑË×–üÙ8*¦²­7 8[[ÔÖg…Uã­•›æ¬?ÓOv¿Â+&¨’A½”2§Âb·j`Âmìæ¥YQ» ÞÆò×½uÌc0Ù9ðòà,µŒ¾•¶ÑRVÜ1–‘«þ¾`p´]¹¢¶{Æd`¢`}ÅYF<é@J…÷£‘w½’G½V7V h ðÉj¦˜â é">ƒ¨ª±š¹|».1e*}Êá‡ýl1+t9ª·NA¤6á·½‰²\>´í•­<¿Ù§Ëžvy©:èDaJ|`ã§â»¬úì¤÷„òͨY2Ô0 ¹_’êP¼AÉ·¼&SأЋ=ÒœŽ ”Ž„•Óº5þ²‚IùÀ`ÁXësY¯ïóËæÒJ Aá¢Oóä->– ”V¦¯¾¹HèäáO¼ºR°FS DnU[v×|<„+è¼´:ê1d䊡ïp‰7p3Dmgˆ¡ ÂÂxÊ‚s&Œ´”ü˜gNòdu§æ¨MHbé;ÐWÂ*¨™ÉÀrPÚ¼EQãƒV»šµábD"ßF"1`’¬Ó¤½Ò lÃ€áºØ3±2ÙšQo&8³Ôúô-ü>D»xŸ„$âY8};˜©¤øxv>CýÝwÊ¢Ôã(‘]1g­T%„xªØ0Ão¶&T}£î¡Ð] ºyÝñ\ÙуëÊCnÕ‘¤¦{)=Ýô‚(?æD¼†Â·ü3¹´M]‚‘¿¸? ôÚíjîDI”î« §Ä/óœùJ®È8Èh-£ ŠL<¿@ÀžÊGÐC¤/Ù%@~ô¬S7±Þ]¿œB²ïÌï1¿{eq.ÙäÝ?„8µ¤±2ó±òª>΂a¢9FŽ3¹Ɇס0Í¿þKÊeí,ŠIq³‰ÀÊØ†e&OvÜô~‡–³ï:P§:ÿ`‹× Y/N4¢ g‚t’‡ùA¯ÇëýýE‡Œþ}ƒÅuqm÷mØ… Cè϶i’Q øuäÙÔªíCªÎè_§¨óÖåJ!íBx¬Ø\ü“#Ñ´nkd¢‘+ø8ˆ<¡–aØü¢}÷³gæ,›±‰bž,w帳¢™˜8ôÂÌŽÐÉZéüF<¦—žª˜Úý÷¤ùûùN®Ôªˆú×y1ÕùXøk­‡1Üa­ªGŒÍü‰çâ:=4,zÌg‘Ï–‡7̯×u¿aæ·ÝD¯•1qoCÞ`SÛ`ñ&mõCc[ѰFµ¨½"¸¤²ýxK޲msZðêA«ª`ÝjJ•”FËšBçuQkú>an0=EñG¸´ -é·T~å¬ï$™=2ó5nxyÍk^Ï3Y­ÞSõ.ˆdb"UÉ‹#øBCk€l$žâ“ ²z¶ ÉDëË„ë¹lP³¢”N„Å.˜|a;î­º1PJ[¨²UšÏ%eܘÂЧ^÷+÷ €¨V½¾;c‰îÚGáó•¾íƒæOgeˆ„²[ÍÓÃÛáüF…ÌWÇ,ù 6N*S¿Â«€q|Úšmö_Á·w°QhUäÇ0tÍ+å’>®·v{‰ï[ È£x¿• xësTãr’õá¤0,KŠ5ro½XÌzûç Ñ´Z^?Ûæ„êË4¡'# º ’'«"·¡üԤѡÙ˜„FWt )}©UĹ‚š¼EP°½º·á ÔœôŠ÷;¥¿98e›É^¤ÇÅUöŽðk¾ö‡/ õ©Œ«ô-›Ã§ ˇæMD9\÷Á¥ùÎfÐ÷^zü<«áwÿÝâ'ÂEZq}œ5eIþUE Î4-Ñqç¯î-¿›/?¥1+JQ¯Ö¬±ÑkõÐv­¾ ²é~65ö;.:„ p;{ÚãX¼9'Ô^ç "Éu×Ì÷±¬í΃{%´°hƒ¨í£ŸÖ°*”EÆúë–ª¯ߪ¾13 s—Í ã!©élWÔò i%'?öÙSPâÝ›ÚÇÓ8(ÙÝ¢©z?÷¶RÃJqc,¡âÝbSÂ$Ì­Ð{qpÜ"R¦Ò( <ùQ—ów¼}ù_~hcùM:§÷]n"f6v2¬š¾³x{ÂJí’qkÛè÷+`&öß0½ig?ŒqøÌ†ù-Çs1ÅD5}$Vfë1øÑñ¤A<Æ•G?dÊ-“‚صù~2âÃÏ(4…ë0ユ7½ùû¦DÛ>úíÔœ:RÉÇ4–Z Ñ"&u)rªÌGxí§Mê: 0Éå (q|6¡ˆ,ö%¡ø«>îøÊ®•×´¶¯jC|×Ëšue幌„%\rû—éÐʈ~‰å«wÉA9ç{u3Fqá´9?ð‰ÕTÞëðüÄÊŸbF9à›sí¥&JiWŸTþæ*<,ŒQXÜ}µP'S—©VÙ*g›«†ÉÅúüAl—J»âÓö,eTðbí–wÇþ$š•ÆŠðÌcÛsj¹µ½Ù„'î+¹®:<^ßüøÏDú¤ú¡žÄôZùcý¼µÅ>#*ÊðÀdeø…%ñ\˜ÐÍhÙŸ¹q¹Ô )©z_1ÕЋ`Ç_Ë«ßUG]݉ÉÜœ þ@F‘Ö«éšh9·´œÀS Õ¢– %‰zm}úª"rÓþƒ/'eÂy$+ÍÎRágq{4=Ч†¹}×/¬Ãä•]]=ٻ᭠zå2”úÒÆÝˆ ÕôY»Š»¸­E˜\{ƧZeå¾ëBš²j¶–œÆ8Ó“:ý>±Õ|Äk•ìóÁ“n¼ÆW]_@•¤ìcD*V÷Ÿ ‘Ó×™dyå ²­ìÞ¿I»l¥ÐÈœ%0Áù$`ùªŸ˜«÷='­ž|†¨ˆ¶‡·.|È®ö û§ˆ:²¾‰“@Ásö“'»=Š?«LÅV4ȵ”Np‚OªL1XXóÃt¡š ¼bŒÇÜ‹P¡S¼Ìµo#|ªóˆ]¬c()„¨^Ëáx`äô”S)ä—7õ I¼w}¿ÅáÖ\ÜB.‰â‚[ØÀg ãàƒ¦ÙZáp«>heQýÊgr€©óã¸Av¼rï5ã™@ªß6P]s.^´ºrˆsÔÕ#1eõ¨P‹·ÉE„‘÷ºå¡_s„ûr|ª­Ö9XmkDRåpSý»ÍW=Ÿà÷LAošGɆ7[®OJ¢ø³{ˆ6Ü{'@ ïd(ˆL’„4Ö¼Wâ­ÔæQjkúsUJ¢CûIiE‡[ÞFQZ>$á)ÂDÕUÇc~Ú¼-È't•y¾#™fX)ú%3áèdzOïìdL¢zA–‰‹Y‚Ô–È,蹊i€óžœ¬$Þ%nvÇ7gèÁ²ä’4¬:Lud•y0š;v$ iª‰YéÝfóafÇêƒ!1›K€^ƒN­é”ÜÇèkéŽ`É´Ô{6 Ë\Td„:e·7äCÔÑm4†–ltµŸ~ù¶ÁTT6Š–LˆZû(¾f`r •ºÍQY_O¬7‚U‡ØéŽÙÌ0r¢Ðú2Ö¸¹ s£•C)ás‡"Û@ìg¶8ú¢êÊ›<$ȵõ 7 ºù] †âÈÞpm ‘WZ¯n/¼ºŽâo¢¿Ï­±Ìû1‹46KN`Pž ØåÔaEÐ?WY+£ëø¥y-o/šï””r³Ý¬|­Šhá›<}„W(w:¶#ÛnÌø‘øy¸Ž‹É­tŠtܼÚ9æ2M5® v~7Íá Î"Žg-Q>n07ÚSvn^o8%Ö ‰67mU’¦Èm’C-ãþþÁ‰,cæ2I^^ɹ Ü?‚7WHmÃõÜÞ?jÆ7œcn:=AiZN·üòAjä™™<8=#ŸÛ·(Ÿ¢ÒG¼êêê{®ÝÐAÃi;ƒ ư¿gØ›ªÑ¾u0Qš"ïyñr²©r¬ã{N qZ`.\ ‡™5:=ø—dI…]¾ßß¹\ñávXÒ÷¡±=ÏŠ9´Dü9R‘„ÔÑö™(Ziº}º¬Éß`ºèÇØwßTîåЄKÏP315ÆÅ¹vŒiEÔ>ú⣠Ë·)‡~$>"m6Reå‡Jþ"šÝ(»¨û÷³£Æ©±>Íf,Åé5n-&ä!£äÐ\oê`FêÅ1³¬åÛÏ·@^y¦¦%8‰¾•áž™XäžØ•¢mƒUSÒ×(ª+00©”½B¢~2@î¼¾3ñ“æ~ý IÿêÚ¶Uq·XJ'Æ0ñócèÉùŠqHTª£ŠX«7j8¡j'Aœ•:>J‘¢)åä#3:ˆ1ùW²‚:Ç÷ŽÍ&S‚%ŸHñÞWbª¼ ‡È:L³iÚFwxˆ¥ª¹»þ…eœ_’¼%û®­ˆ‚UM¯E6 !ê…ýV§†/˜‚Nfìg"CLÇde‰a|»]{/U-DëÚæÏLÍ£èÈK3bñ8} ákEøòi ]s¯÷b?Ù§Z‰êÎMläüÞüH7¾C PlÂå‘ Hàù–@|®›·Vùø3òÊý„µÚÂÎ1hï¹'õ§Í: ÿØ^ ÖL‹[8qçkœVê1:ï>./»ÜìVë÷xYÈ·Všk«EÈÛ¹/KÃVO] Z!0[kͽnª®V ¢ Ò>åº< 09ØgÂ,·ÈªyKö[ªÝ&èºñ/McÝŠ4=€šCæ³%ç†@X¬Ää…×zvlUþÓ¦A¦óínEeâüt<„o#§EG7€†Ž¶_d&.ÛµýhÈßÀ¼_ñíŒìa‡bÙϤ°ÉðGÿáü^µ‹­i¬ÑÞøj§D+ÇfJ‰¦].‰ýžß4ˆtÀkµ¶:ý4–®bè¹”ºZˆÔC6-ªAÊ ëo­x'€¿¨¤LXÛV‘îê9I½ú%Yëƒg#þ1-£WUóIëûY«p´T½6[/Þ¸È}ÁZ¦f2h}V¸n`Ò·àea’Å.J4‘·:²ÁùïŸÊùÛ Ñ–J8¤Ïq_½ò ¢‘u¼„Žwz Ûå«ß^ˆ'¬}˜}€KR* DCâÛ­‘߈X H¤„7¸§\ðÅWŽV¥ü“aðè ”8Þ‘ÔA÷³¤2‰kx‘軡ÏxÓ²‹©Ê·>ƒû¾²£…ñW&Õ'—!0FÎL"Óx>ž“ÁM¿ÌêæŸœv‚Yn…èÊìóÏ;ê£B2*‚A¯wJy†û:µä¶)tòîz£»)ñ{”Îì{·òpª&6!¡E¹‡ 8]6m‡Þ?WÓÆ¶ƒí ž%5CZ®´“£âß«_´Bm"AŽ•VžR)0›·Ë™ [°Î”bKÕÞ‘©¡*¶TAC\èÛŠ÷õÄ%ŬöýpËÎÜSé¾£²¬ê$ /©ÝfùIðtºXÍ+™Ô§²5#~y—Y(aÔÓ[)ƒ÷¶kgè6¬€O-ATò½¥š„dBKÅb‹ü é»î¬D¥Ç‰Hõ¡­ÞÏ;¢ï…OÈw~LúÞ8{41éP(­B&g·F›˜ò¾F½:Üd¼ãÉÙôŽ}ʓд°£‘vTÿôÓ9<™Rl²Kø]?ï%-„þÂmÌ~9ôû•#W7á3O†z/§Õõg Y®óáx!þñáYãÍýˆUe3ýûwmÌÙL‡ÍÇ£.Wás:K‰Äóäé;H´gñµòê6ªªÊ´ÇÃVà«â r™žëRg¡«%[a¥OTGF½UƒLƒ&>ÌñÄPË©¨| €á•¨¶÷…(,¶È£ž8hü‹¼gk£øê<&6ˆØG8§Ä=律2 ­pw)êkñd”dk´Á½­õþ·ÍŠ;KO‰ó ;Oò?àÜ7!áÿ¼; endstream endobj 1335 0 obj << /Type /FontDescriptor /FontName /BMUPTP+CMTT12 /Flags 4 /FontBBox [-1 -234 524 695] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle 0 /StemV 65 /XHeight 431 /CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/asterisk/b/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/eight/equal/f/five/four/g/greater/h/hyphen/i/j/k/l/less/m/n/nine/numbersign/o/one/p/parenleft/parenright/percent/period/plus/q/quotedbl/quoteleft/r/s/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero) /FontFile 1334 0 R >> endobj 423 0 obj << /Type /Font /Subtype /Type1 /BaseFont /QZKRDM+CMBX10 /FontDescriptor 1301 0 R /FirstChar 65 /LastChar 116 /Widths 1296 0 R >> endobj 427 0 obj << /Type /Font /Subtype /Type1 /BaseFont /EOQFIZ+CMBX12 /FontDescriptor 1303 0 R /FirstChar 12 /LastChar 123 /Widths 1295 0 R >> endobj 596 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YYICVH+CMBXTI10 /FontDescriptor 1305 0 R /FirstChar 58 /LastChar 118 /Widths 1291 0 R >> endobj 891 0 obj << /Type /Font /Subtype /Type1 /BaseFont /FZKUPV+CMEX10 /FontDescriptor 1307 0 R /FirstChar 16 /LastChar 105 /Widths 1282 0 R >> endobj 636 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YLSHAE+CMITT10 /FontDescriptor 1309 0 R /FirstChar 40 /LastChar 117 /Widths 1286 0 R >> endobj 723 0 obj << /Type /Font /Subtype /Type1 /BaseFont /DZSGBK+CMMI10 /FontDescriptor 1311 0 R /FirstChar 61 /LastChar 114 /Widths 1285 0 R >> endobj 556 0 obj << /Type /Font /Subtype /Type1 /BaseFont /ILKLYG+CMMI12 /FontDescriptor 1313 0 R /FirstChar 22 /LastChar 126 /Widths 1293 0 R >> endobj 724 0 obj << /Type /Font /Subtype /Type1 /BaseFont /HRIPKV+CMMI7 /FontDescriptor 1315 0 R /FirstChar 97 /LastChar 119 /Widths 1284 0 R >> endobj 616 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YWHIIV+CMMI8 /FontDescriptor 1317 0 R /FirstChar 61 /LastChar 122 /Widths 1287 0 R >> endobj 422 0 obj << /Type /Font /Subtype /Type1 /BaseFont /VXPDRV+CMR10 /FontDescriptor 1319 0 R /FirstChar 11 /LastChar 122 /Widths 1297 0 R >> endobj 421 0 obj << /Type /Font /Subtype /Type1 /BaseFont /MCPZXO+CMR12 /FontDescriptor 1321 0 R /FirstChar 11 /LastChar 123 /Widths 1298 0 R >> endobj 420 0 obj << /Type /Font /Subtype /Type1 /BaseFont /RJZAJP+CMR17 /FontDescriptor 1323 0 R /FirstChar 39 /LastChar 121 /Widths 1299 0 R >> endobj 605 0 obj << /Type /Font /Subtype /Type1 /BaseFont /OJZQTJ+CMR7 /FontDescriptor 1325 0 R /FirstChar 49 /LastChar 54 /Widths 1288 0 R >> endobj 604 0 obj << /Type /Font /Subtype /Type1 /BaseFont /ZSYACI+CMR8 /FontDescriptor 1327 0 R /FirstChar 40 /LastChar 117 /Widths 1289 0 R >> endobj 591 0 obj << /Type /Font /Subtype /Type1 /BaseFont /PTQDEZ+CMSY10 /FontDescriptor 1329 0 R /FirstChar 0 /LastChar 67 /Widths 1292 0 R >> endobj 770 0 obj << /Type /Font /Subtype /Type1 /BaseFont /TMCDBM+CMSY8 /FontDescriptor 1331 0 R /FirstChar 0 /LastChar 0 /Widths 1283 0 R >> endobj 597 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YVFZSU+CMTI12 /FontDescriptor 1333 0 R /FirstChar 11 /LastChar 121 /Widths 1290 0 R >> endobj 429 0 obj << /Type /Font /Subtype /Type1 /BaseFont /BMUPTP+CMTT12 /FontDescriptor 1335 0 R /FirstChar 34 /LastChar 125 /Widths 1294 0 R >> endobj 430 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [390 0 R 472 0 R 519 0 R 545 0 R 588 0 R 593 0 R] >> endobj 607 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [601 0 R 609 0 R 613 0 R 620 0 R 628 0 R 633 0 R] >> endobj 642 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [639 0 R 644 0 R 653 0 R 661 0 R 665 0 R 671 0 R] >> endobj 678 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [675 0 R 684 0 R 688 0 R 692 0 R 697 0 R 701 0 R] >> endobj 710 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [707 0 R 712 0 R 719 0 R 727 0 R 734 0 R 740 0 R] >> endobj 748 0 obj << /Type /Pages /Count 6 /Parent 1336 0 R /Kids [745 0 R 750 0 R 754 0 R 767 0 R 775 0 R 779 0 R] >> endobj 789 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [786 0 R 793 0 R 801 0 R 807 0 R 811 0 R 824 0 R] >> endobj 832 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [829 0 R 835 0 R 842 0 R 846 0 R 852 0 R 856 0 R] >> endobj 864 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [861 0 R 867 0 R 874 0 R 882 0 R 886 0 R 893 0 R] >> endobj 903 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [900 0 R 906 0 R 912 0 R 923 0 R 927 0 R 931 0 R] >> endobj 947 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [941 0 R 950 0 R 956 0 R 961 0 R 966 0 R 971 0 R] >> endobj 982 0 obj << /Type /Pages /Count 6 /Parent 1337 0 R /Kids [977 0 R 984 0 R 988 0 R 992 0 R 999 0 R 1004 0 R] >> endobj 1013 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1010 0 R 1017 0 R 1022 0 R 1026 0 R 1031 0 R 1035 0 R] >> endobj 1042 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1039 0 R 1044 0 R 1048 0 R 1052 0 R 1056 0 R 1060 0 R] >> endobj 1067 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1064 0 R 1069 0 R 1073 0 R 1077 0 R 1081 0 R 1085 0 R] >> endobj 1092 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1089 0 R 1094 0 R 1098 0 R 1102 0 R 1106 0 R 1110 0 R] >> endobj 1117 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1114 0 R 1119 0 R 1123 0 R 1127 0 R 1131 0 R 1135 0 R] >> endobj 1142 0 obj << /Type /Pages /Count 6 /Parent 1338 0 R /Kids [1139 0 R 1144 0 R 1148 0 R 1152 0 R 1156 0 R 1160 0 R] >> endobj 1167 0 obj << /Type /Pages /Count 6 /Parent 1339 0 R /Kids [1164 0 R 1169 0 R 1173 0 R 1177 0 R 1181 0 R 1185 0 R] >> endobj 1192 0 obj << /Type /Pages /Count 6 /Parent 1339 0 R /Kids [1189 0 R 1194 0 R 1198 0 R 1202 0 R 1206 0 R 1210 0 R] >> endobj 1217 0 obj << /Type /Pages /Count 6 /Parent 1339 0 R /Kids [1214 0 R 1219 0 R 1223 0 R 1227 0 R 1231 0 R 1235 0 R] >> endobj 1265 0 obj << /Type /Pages /Count 4 /Parent 1339 0 R /Kids [1262 0 R 1267 0 R 1271 0 R 1277 0 R] >> endobj 1336 0 obj << /Type /Pages /Count 36 /Parent 1340 0 R /Kids [430 0 R 607 0 R 642 0 R 678 0 R 710 0 R 748 0 R] >> endobj 1337 0 obj << /Type /Pages /Count 36 /Parent 1340 0 R /Kids [789 0 R 832 0 R 864 0 R 903 0 R 947 0 R 982 0 R] >> endobj 1338 0 obj << /Type /Pages /Count 36 /Parent 1340 0 R /Kids [1013 0 R 1042 0 R 1067 0 R 1092 0 R 1117 0 R 1142 0 R] >> endobj 1339 0 obj << /Type /Pages /Count 22 /Parent 1340 0 R /Kids [1167 0 R 1192 0 R 1217 0 R 1265 0 R] >> endobj 1340 0 obj << /Type /Pages /Count 130 /Kids [1336 0 R 1337 0 R 1338 0 R 1339 0 R] >> endobj 1341 0 obj << /Type /Outlines /First 3 0 R /Last 351 0 R /Count 12 >> endobj 387 0 obj << /Title 388 0 R /A 385 0 R /Parent 367 0 R /Prev 383 0 R >> endobj 383 0 obj << /Title 384 0 R /A 381 0 R /Parent 367 0 R /Prev 379 0 R /Next 387 0 R >> endobj 379 0 obj << /Title 380 0 R /A 377 0 R /Parent 367 0 R /Prev 375 0 R /Next 383 0 R >> endobj 375 0 obj << /Title 376 0 R /A 373 0 R /Parent 367 0 R /Prev 371 0 R /Next 379 0 R >> endobj 371 0 obj << /Title 372 0 R /A 369 0 R /Parent 367 0 R /Next 375 0 R >> endobj 367 0 obj << /Title 368 0 R /A 365 0 R /Parent 351 0 R /Prev 363 0 R /First 371 0 R /Last 387 0 R /Count -5 >> endobj 363 0 obj << /Title 364 0 R /A 361 0 R /Parent 351 0 R /Prev 359 0 R /Next 367 0 R >> endobj 359 0 obj << /Title 360 0 R /A 357 0 R /Parent 351 0 R /Prev 355 0 R /Next 363 0 R >> endobj 355 0 obj << /Title 356 0 R /A 353 0 R /Parent 351 0 R /Next 359 0 R >> endobj 351 0 obj << /Title 352 0 R /A 349 0 R /Parent 1341 0 R /Prev 275 0 R /First 355 0 R /Last 367 0 R /Count -4 >> endobj 347 0 obj << /Title 348 0 R /A 345 0 R /Parent 275 0 R /Prev 343 0 R >> endobj 343 0 obj << /Title 344 0 R /A 341 0 R /Parent 275 0 R /Prev 339 0 R /Next 347 0 R >> endobj 339 0 obj << /Title 340 0 R /A 337 0 R /Parent 275 0 R /Prev 335 0 R /Next 343 0 R >> endobj 335 0 obj << /Title 336 0 R /A 333 0 R /Parent 275 0 R /Prev 331 0 R /Next 339 0 R >> endobj 331 0 obj << /Title 332 0 R /A 329 0 R /Parent 275 0 R /Prev 327 0 R /Next 335 0 R >> endobj 327 0 obj << /Title 328 0 R /A 325 0 R /Parent 275 0 R /Prev 323 0 R /Next 331 0 R >> endobj 323 0 obj << /Title 324 0 R /A 321 0 R /Parent 275 0 R /Prev 319 0 R /Next 327 0 R >> endobj 319 0 obj << /Title 320 0 R /A 317 0 R /Parent 275 0 R /Prev 315 0 R /Next 323 0 R >> endobj 315 0 obj << /Title 316 0 R /A 313 0 R /Parent 275 0 R /Prev 311 0 R /Next 319 0 R >> endobj 311 0 obj << /Title 312 0 R /A 309 0 R /Parent 275 0 R /Prev 307 0 R /Next 315 0 R >> endobj 307 0 obj << /Title 308 0 R /A 305 0 R /Parent 275 0 R /Prev 303 0 R /Next 311 0 R >> endobj 303 0 obj << /Title 304 0 R /A 301 0 R /Parent 275 0 R /Prev 299 0 R /Next 307 0 R >> endobj 299 0 obj << /Title 300 0 R /A 297 0 R /Parent 275 0 R /Prev 295 0 R /Next 303 0 R >> endobj 295 0 obj << /Title 296 0 R /A 293 0 R /Parent 275 0 R /Prev 291 0 R /Next 299 0 R >> endobj 291 0 obj << /Title 292 0 R /A 289 0 R /Parent 275 0 R /Prev 287 0 R /Next 295 0 R >> endobj 287 0 obj << /Title 288 0 R /A 285 0 R /Parent 275 0 R /Prev 283 0 R /Next 291 0 R >> endobj 283 0 obj << /Title 284 0 R /A 281 0 R /Parent 275 0 R /Prev 279 0 R /Next 287 0 R >> endobj 279 0 obj << /Title 280 0 R /A 277 0 R /Parent 275 0 R /Next 283 0 R >> endobj 275 0 obj << /Title 276 0 R /A 273 0 R /Parent 1341 0 R /Prev 271 0 R /Next 351 0 R /First 279 0 R /Last 347 0 R /Count -18 >> endobj 271 0 obj << /Title 272 0 R /A 269 0 R /Parent 1341 0 R /Prev 255 0 R /Next 275 0 R >> endobj 267 0 obj << /Title 268 0 R /A 265 0 R /Parent 255 0 R /Prev 263 0 R >> endobj 263 0 obj << /Title 264 0 R /A 261 0 R /Parent 255 0 R /Prev 259 0 R /Next 267 0 R >> endobj 259 0 obj << /Title 260 0 R /A 257 0 R /Parent 255 0 R /Next 263 0 R >> endobj 255 0 obj << /Title 256 0 R /A 253 0 R /Parent 1341 0 R /Prev 235 0 R /Next 271 0 R /First 259 0 R /Last 267 0 R /Count -3 >> endobj 251 0 obj << /Title 252 0 R /A 249 0 R /Parent 235 0 R /Prev 247 0 R >> endobj 247 0 obj << /Title 248 0 R /A 245 0 R /Parent 235 0 R /Prev 243 0 R /Next 251 0 R >> endobj 243 0 obj << /Title 244 0 R /A 241 0 R /Parent 235 0 R /Prev 239 0 R /Next 247 0 R >> endobj 239 0 obj << /Title 240 0 R /A 237 0 R /Parent 235 0 R /Next 243 0 R >> endobj 235 0 obj << /Title 236 0 R /A 233 0 R /Parent 1341 0 R /Prev 195 0 R /Next 255 0 R /First 239 0 R /Last 251 0 R /Count -4 >> endobj 231 0 obj << /Title 232 0 R /A 229 0 R /Parent 223 0 R /Prev 227 0 R >> endobj 227 0 obj << /Title 228 0 R /A 225 0 R /Parent 223 0 R /Next 231 0 R >> endobj 223 0 obj << /Title 224 0 R /A 221 0 R /Parent 195 0 R /Prev 211 0 R /First 227 0 R /Last 231 0 R /Count -2 >> endobj 219 0 obj << /Title 220 0 R /A 217 0 R /Parent 211 0 R /Prev 215 0 R >> endobj 215 0 obj << /Title 216 0 R /A 213 0 R /Parent 211 0 R /Next 219 0 R >> endobj 211 0 obj << /Title 212 0 R /A 209 0 R /Parent 195 0 R /Prev 199 0 R /Next 223 0 R /First 215 0 R /Last 219 0 R /Count -2 >> endobj 207 0 obj << /Title 208 0 R /A 205 0 R /Parent 199 0 R /Prev 203 0 R >> endobj 203 0 obj << /Title 204 0 R /A 201 0 R /Parent 199 0 R /Next 207 0 R >> endobj 199 0 obj << /Title 200 0 R /A 197 0 R /Parent 195 0 R /Next 211 0 R /First 203 0 R /Last 207 0 R /Count -2 >> endobj 195 0 obj << /Title 196 0 R /A 193 0 R /Parent 1341 0 R /Prev 147 0 R /Next 235 0 R /First 199 0 R /Last 223 0 R /Count -3 >> endobj 191 0 obj << /Title 192 0 R /A 189 0 R /Parent 179 0 R /Prev 187 0 R >> endobj 187 0 obj << /Title 188 0 R /A 185 0 R /Parent 179 0 R /Prev 183 0 R /Next 191 0 R >> endobj 183 0 obj << /Title 184 0 R /A 181 0 R /Parent 179 0 R /Next 187 0 R >> endobj 179 0 obj << /Title 180 0 R /A 177 0 R /Parent 147 0 R /Prev 151 0 R /First 183 0 R /Last 191 0 R /Count -3 >> endobj 175 0 obj << /Title 176 0 R /A 173 0 R /Parent 151 0 R /Prev 171 0 R >> endobj 171 0 obj << /Title 172 0 R /A 169 0 R /Parent 151 0 R /Prev 167 0 R /Next 175 0 R >> endobj 167 0 obj << /Title 168 0 R /A 165 0 R /Parent 151 0 R /Prev 163 0 R /Next 171 0 R >> endobj 163 0 obj << /Title 164 0 R /A 161 0 R /Parent 151 0 R /Prev 159 0 R /Next 167 0 R >> endobj 159 0 obj << /Title 160 0 R /A 157 0 R /Parent 151 0 R /Prev 155 0 R /Next 163 0 R >> endobj 155 0 obj << /Title 156 0 R /A 153 0 R /Parent 151 0 R /Next 159 0 R >> endobj 151 0 obj << /Title 152 0 R /A 149 0 R /Parent 147 0 R /Next 179 0 R /First 155 0 R /Last 175 0 R /Count -6 >> endobj 147 0 obj << /Title 148 0 R /A 145 0 R /Parent 1341 0 R /Prev 103 0 R /Next 195 0 R /First 151 0 R /Last 179 0 R /Count -2 >> endobj 143 0 obj << /Title 144 0 R /A 141 0 R /Parent 135 0 R /Prev 139 0 R >> endobj 139 0 obj << /Title 140 0 R /A 137 0 R /Parent 135 0 R /Next 143 0 R >> endobj 135 0 obj << /Title 136 0 R /A 133 0 R /Parent 103 0 R /Prev 119 0 R /First 139 0 R /Last 143 0 R /Count -2 >> endobj 131 0 obj << /Title 132 0 R /A 129 0 R /Parent 119 0 R /Prev 127 0 R >> endobj 127 0 obj << /Title 128 0 R /A 125 0 R /Parent 119 0 R /Prev 123 0 R /Next 131 0 R >> endobj 123 0 obj << /Title 124 0 R /A 121 0 R /Parent 119 0 R /Next 127 0 R >> endobj 119 0 obj << /Title 120 0 R /A 117 0 R /Parent 103 0 R /Prev 107 0 R /Next 135 0 R /First 123 0 R /Last 131 0 R /Count -3 >> endobj 115 0 obj << /Title 116 0 R /A 113 0 R /Parent 107 0 R /Prev 111 0 R >> endobj 111 0 obj << /Title 112 0 R /A 109 0 R /Parent 107 0 R /Next 115 0 R >> endobj 107 0 obj << /Title 108 0 R /A 105 0 R /Parent 103 0 R /Next 119 0 R /First 111 0 R /Last 115 0 R /Count -2 >> endobj 103 0 obj << /Title 104 0 R /A 101 0 R /Parent 1341 0 R /Prev 67 0 R /Next 147 0 R /First 107 0 R /Last 135 0 R /Count -3 >> endobj 99 0 obj << /Title 100 0 R /A 97 0 R /Parent 87 0 R /Prev 95 0 R >> endobj 95 0 obj << /Title 96 0 R /A 93 0 R /Parent 87 0 R /Prev 91 0 R /Next 99 0 R >> endobj 91 0 obj << /Title 92 0 R /A 89 0 R /Parent 87 0 R /Next 95 0 R >> endobj 87 0 obj << /Title 88 0 R /A 85 0 R /Parent 67 0 R /Prev 83 0 R /First 91 0 R /Last 99 0 R /Count -3 >> endobj 83 0 obj << /Title 84 0 R /A 81 0 R /Parent 67 0 R /Prev 71 0 R /Next 87 0 R >> endobj 79 0 obj << /Title 80 0 R /A 77 0 R /Parent 71 0 R /Prev 75 0 R >> endobj 75 0 obj << /Title 76 0 R /A 73 0 R /Parent 71 0 R /Next 79 0 R >> endobj 71 0 obj << /Title 72 0 R /A 69 0 R /Parent 67 0 R /Next 83 0 R /First 75 0 R /Last 79 0 R /Count -2 >> endobj 67 0 obj << /Title 68 0 R /A 65 0 R /Parent 1341 0 R /Prev 35 0 R /Next 103 0 R /First 71 0 R /Last 87 0 R /Count -3 >> endobj 63 0 obj << /Title 64 0 R /A 61 0 R /Parent 51 0 R /Prev 59 0 R >> endobj 59 0 obj << /Title 60 0 R /A 57 0 R /Parent 51 0 R /Prev 55 0 R /Next 63 0 R >> endobj 55 0 obj << /Title 56 0 R /A 53 0 R /Parent 51 0 R /Next 59 0 R >> endobj 51 0 obj << /Title 52 0 R /A 49 0 R /Parent 35 0 R /Prev 47 0 R /First 55 0 R /Last 63 0 R /Count -3 >> endobj 47 0 obj << /Title 48 0 R /A 45 0 R /Parent 35 0 R /Prev 43 0 R /Next 51 0 R >> endobj 43 0 obj << /Title 44 0 R /A 41 0 R /Parent 35 0 R /Prev 39 0 R /Next 47 0 R >> endobj 39 0 obj << /Title 40 0 R /A 37 0 R /Parent 35 0 R /Next 43 0 R >> endobj 35 0 obj << /Title 36 0 R /A 33 0 R /Parent 1341 0 R /Prev 7 0 R /Next 67 0 R /First 39 0 R /Last 51 0 R /Count -4 >> endobj 31 0 obj << /Title 32 0 R /A 29 0 R /Parent 7 0 R /Prev 27 0 R >> endobj 27 0 obj << /Title 28 0 R /A 25 0 R /Parent 7 0 R /Prev 23 0 R /Next 31 0 R >> endobj 23 0 obj << /Title 24 0 R /A 21 0 R /Parent 7 0 R /Prev 19 0 R /Next 27 0 R >> endobj 19 0 obj << /Title 20 0 R /A 17 0 R /Parent 7 0 R /Prev 15 0 R /Next 23 0 R >> endobj 15 0 obj << /Title 16 0 R /A 13 0 R /Parent 7 0 R /Prev 11 0 R /Next 19 0 R >> endobj 11 0 obj << /Title 12 0 R /A 9 0 R /Parent 7 0 R /Next 15 0 R >> endobj 7 0 obj << /Title 8 0 R /A 5 0 R /Parent 1341 0 R /Prev 3 0 R /Next 35 0 R /First 11 0 R /Last 31 0 R /Count -6 >> endobj 3 0 obj << /Title 4 0 R /A 1 0 R /Parent 1341 0 R /Next 7 0 R >> endobj 1342 0 obj << /Names [(Doc-Start) 419 0 R (Hfootnote.1) 606 0 R (Hfootnote.2) 624 0 R (Hfootnote.3) 656 0 R (Hfootnote.4) 722 0 R (Hfootnote.5) 1280 0 R] /Limits [(Doc-Start) (Hfootnote.5)] >> endobj 1343 0 obj << /Names [(Hfootnote.6) 1281 0 R (Item.1) 730 0 R (Item.10) 796 0 R (Item.11) 797 0 R (Item.12) 798 0 R (Item.13) 814 0 R] /Limits [(Hfootnote.6) (Item.13)] >> endobj 1344 0 obj << /Names [(Item.14) 815 0 R (Item.15) 816 0 R (Item.16) 817 0 R (Item.17) 818 0 R (Item.18) 819 0 R (Item.19) 838 0 R] /Limits [(Item.14) (Item.19)] >> endobj 1345 0 obj << /Names [(Item.2) 731 0 R (Item.20) 839 0 R (Item.21) 840 0 R (Item.22) 870 0 R (Item.23) 871 0 R (Item.24) 877 0 R] /Limits [(Item.2) (Item.24)] >> endobj 1346 0 obj << /Names [(Item.25) 878 0 R (Item.26) 944 0 R (Item.27) 945 0 R (Item.28) 946 0 R (Item.29) 980 0 R (Item.3) 732 0 R] /Limits [(Item.25) (Item.3)] >> endobj 1347 0 obj << /Names [(Item.30) 981 0 R (Item.31) 995 0 R (Item.32) 996 0 R (Item.33) 997 0 R (Item.4) 757 0 R (Item.5) 758 0 R] /Limits [(Item.30) (Item.5)] >> endobj 1348 0 obj << /Names [(Item.6) 759 0 R (Item.7) 760 0 R (Item.8) 761 0 R (Item.9) 762 0 R (appendix.A) 274 0 R (appendix.B) 350 0 R] /Limits [(Item.6) (appendix.B)] >> endobj 1349 0 obj << /Names [(equation.6.1) 859 0 R (equation.6.2) 889 0 R (equation.6.3) 890 0 R (figure.1) 524 0 R (figure.10) 574 0 R (figure.11) 575 0 R] /Limits [(equation.6.1) (figure.11)] >> endobj 1350 0 obj << /Names [(figure.12) 576 0 R (figure.13) 577 0 R (figure.14) 578 0 R (figure.15) 579 0 R (figure.16) 580 0 R (figure.17) 581 0 R] /Limits [(figure.12) (figure.17)] >> endobj 1351 0 obj << /Names [(figure.18) 582 0 R (figure.19) 583 0 R (figure.2) 525 0 R (figure.20) 584 0 R (figure.21) 585 0 R (figure.3) 567 0 R] /Limits [(figure.18) (figure.3)] >> endobj 1352 0 obj << /Names [(figure.4) 568 0 R (figure.5) 569 0 R (figure.6) 570 0 R (figure.7) 571 0 R (figure.8) 572 0 R (figure.9) 573 0 R] /Limits [(figure.4) (figure.9)] >> endobj 1353 0 obj << /Names [(page.1) 418 0 R (page.10) 622 0 R (page.100) 1129 0 R (page.101) 1133 0 R (page.102) 1137 0 R (page.103) 1141 0 R] /Limits [(page.1) (page.103)] >> endobj 1354 0 obj << /Names [(page.104) 1146 0 R (page.105) 1150 0 R (page.106) 1154 0 R (page.107) 1158 0 R (page.108) 1162 0 R (page.109) 1166 0 R] /Limits [(page.104) (page.109)] >> endobj 1355 0 obj << /Names [(page.11) 630 0 R (page.110) 1171 0 R (page.111) 1175 0 R (page.112) 1179 0 R (page.113) 1183 0 R (page.114) 1187 0 R] /Limits [(page.11) (page.114)] >> endobj 1356 0 obj << /Names [(page.115) 1191 0 R (page.116) 1196 0 R (page.117) 1200 0 R (page.118) 1204 0 R (page.119) 1208 0 R (page.12) 635 0 R] /Limits [(page.115) (page.12)] >> endobj 1357 0 obj << /Names [(page.120) 1212 0 R (page.121) 1216 0 R (page.122) 1221 0 R (page.123) 1225 0 R (page.124) 1229 0 R (page.125) 1233 0 R] /Limits [(page.120) (page.125)] >> endobj 1358 0 obj << /Names [(page.126) 1237 0 R (page.127) 1264 0 R (page.128) 1269 0 R (page.129) 1273 0 R (page.13) 641 0 R (page.130) 1279 0 R] /Limits [(page.126) (page.130)] >> endobj 1359 0 obj << /Names [(page.14) 646 0 R (page.15) 655 0 R (page.16) 663 0 R (page.17) 667 0 R (page.18) 673 0 R (page.19) 677 0 R] /Limits [(page.14) (page.19)] >> endobj 1360 0 obj << /Names [(page.2) 474 0 R (page.20) 686 0 R (page.21) 690 0 R (page.22) 694 0 R (page.23) 699 0 R (page.24) 703 0 R] /Limits [(page.2) (page.24)] >> endobj 1361 0 obj << /Names [(page.25) 709 0 R (page.26) 714 0 R (page.27) 721 0 R (page.28) 729 0 R (page.29) 736 0 R (page.3) 521 0 R] /Limits [(page.25) (page.3)] >> endobj 1362 0 obj << /Names [(page.30) 742 0 R (page.31) 747 0 R (page.32) 752 0 R (page.33) 756 0 R (page.34) 769 0 R (page.35) 777 0 R] /Limits [(page.30) (page.35)] >> endobj 1363 0 obj << /Names [(page.36) 781 0 R (page.37) 788 0 R (page.38) 795 0 R (page.39) 803 0 R (page.4) 547 0 R (page.40) 809 0 R] /Limits [(page.36) (page.40)] >> endobj 1364 0 obj << /Names [(page.41) 813 0 R (page.42) 826 0 R (page.43) 831 0 R (page.44) 837 0 R (page.45) 844 0 R (page.46) 848 0 R] /Limits [(page.41) (page.46)] >> endobj 1365 0 obj << /Names [(page.47) 854 0 R (page.48) 858 0 R (page.49) 863 0 R (page.5) 590 0 R (page.50) 869 0 R (page.51) 876 0 R] /Limits [(page.47) (page.51)] >> endobj 1366 0 obj << /Names [(page.52) 884 0 R (page.53) 888 0 R (page.54) 895 0 R (page.55) 902 0 R (page.56) 908 0 R (page.57) 914 0 R] /Limits [(page.52) (page.57)] >> endobj 1367 0 obj << /Names [(page.58) 925 0 R (page.59) 929 0 R (page.6) 595 0 R (page.60) 933 0 R (page.61) 943 0 R (page.62) 952 0 R] /Limits [(page.58) (page.62)] >> endobj 1368 0 obj << /Names [(page.63) 958 0 R (page.64) 963 0 R (page.65) 968 0 R (page.66) 973 0 R (page.67) 979 0 R (page.68) 986 0 R] /Limits [(page.63) (page.68)] >> endobj 1369 0 obj << /Names [(page.69) 990 0 R (page.7) 603 0 R (page.70) 994 0 R (page.71) 1001 0 R (page.72) 1006 0 R (page.73) 1012 0 R] /Limits [(page.69) (page.73)] >> endobj 1370 0 obj << /Names [(page.74) 1019 0 R (page.75) 1024 0 R (page.76) 1028 0 R (page.77) 1033 0 R (page.78) 1037 0 R (page.79) 1041 0 R] /Limits [(page.74) (page.79)] >> endobj 1371 0 obj << /Names [(page.8) 611 0 R (page.80) 1046 0 R (page.81) 1050 0 R (page.82) 1054 0 R (page.83) 1058 0 R (page.84) 1062 0 R] /Limits [(page.8) (page.84)] >> endobj 1372 0 obj << /Names [(page.85) 1066 0 R (page.86) 1071 0 R (page.87) 1075 0 R (page.88) 1079 0 R (page.89) 1083 0 R (page.9) 615 0 R] /Limits [(page.85) (page.9)] >> endobj 1373 0 obj << /Names [(page.90) 1087 0 R (page.91) 1091 0 R (page.92) 1096 0 R (page.93) 1100 0 R (page.94) 1104 0 R (page.95) 1108 0 R] /Limits [(page.90) (page.95)] >> endobj 1374 0 obj << /Names [(page.96) 1112 0 R (page.97) 1116 0 R (page.98) 1121 0 R (page.99) 1125 0 R (section*.1) 428 0 R (section*.10) 1029 0 R] /Limits [(page.96) (section*.10)] >> endobj 1375 0 obj << /Names [(section*.2) 523 0 R (section*.3) 623 0 R (section*.4) 704 0 R (section*.5) 743 0 R (section*.6) 827 0 R (section*.7) 934 0 R] /Limits [(section*.2) (section*.7)] >> endobj 1376 0 obj << /Names [(section*.8) 964 0 R (section*.9) 1020 0 R (section.1) 2 0 R (section.10) 270 0 R (section.2) 6 0 R (section.3) 34 0 R] /Limits [(section*.8) (section.3)] >> endobj 1377 0 obj << /Names [(section.4) 66 0 R (section.5) 102 0 R (section.6) 146 0 R (section.7) 194 0 R (section.8) 234 0 R (section.9) 254 0 R] /Limits [(section.4) (section.9)] >> endobj 1378 0 obj << /Names [(subsection.2.1) 10 0 R (subsection.2.2) 14 0 R (subsection.2.3) 18 0 R (subsection.2.4) 22 0 R (subsection.2.5) 26 0 R (subsection.2.6) 30 0 R] /Limits [(subsection.2.1) (subsection.2.6)] >> endobj 1379 0 obj << /Names [(subsection.3.1) 38 0 R (subsection.3.2) 42 0 R (subsection.3.3) 46 0 R (subsection.3.4) 50 0 R (subsection.4.1) 70 0 R (subsection.4.2) 82 0 R] /Limits [(subsection.3.1) (subsection.4.2)] >> endobj 1380 0 obj << /Names [(subsection.4.3) 86 0 R (subsection.5.1) 106 0 R (subsection.5.2) 118 0 R (subsection.5.3) 134 0 R (subsection.6.1) 150 0 R (subsection.6.2) 178 0 R] /Limits [(subsection.4.3) (subsection.6.2)] >> endobj 1381 0 obj << /Names [(subsection.7.1) 198 0 R (subsection.7.2) 210 0 R (subsection.7.3) 222 0 R (subsection.8.1) 238 0 R (subsection.8.2) 242 0 R (subsection.8.3) 246 0 R] /Limits [(subsection.7.1) (subsection.8.3)] >> endobj 1382 0 obj << /Names [(subsection.8.4) 250 0 R (subsection.9.1) 258 0 R (subsection.9.2) 262 0 R (subsection.9.3) 266 0 R (subsection.A.1) 278 0 R (subsection.A.10) 314 0 R] /Limits [(subsection.8.4) (subsection.A.10)] >> endobj 1383 0 obj << /Names [(subsection.A.11) 318 0 R (subsection.A.12) 322 0 R (subsection.A.13) 326 0 R (subsection.A.14) 330 0 R (subsection.A.15) 334 0 R (subsection.A.16) 338 0 R] /Limits [(subsection.A.11) (subsection.A.16)] >> endobj 1384 0 obj << /Names [(subsection.A.17) 342 0 R (subsection.A.18) 346 0 R (subsection.A.2) 282 0 R (subsection.A.3) 286 0 R (subsection.A.4) 290 0 R (subsection.A.5) 294 0 R] /Limits [(subsection.A.17) (subsection.A.5)] >> endobj 1385 0 obj << /Names [(subsection.A.6) 298 0 R (subsection.A.7) 302 0 R (subsection.A.8) 306 0 R (subsection.A.9) 310 0 R (subsection.B.1) 354 0 R (subsection.B.2) 358 0 R] /Limits [(subsection.A.6) (subsection.B.2)] >> endobj 1386 0 obj << /Names [(subsection.B.3) 362 0 R (subsection.B.4) 366 0 R (subsubsection.3.4.1) 54 0 R (subsubsection.3.4.2) 58 0 R (subsubsection.3.4.3) 62 0 R (subsubsection.4.1.1) 74 0 R] /Limits [(subsection.B.3) (subsubsection.4.1.1)] >> endobj 1387 0 obj << /Names [(subsubsection.4.1.2) 78 0 R (subsubsection.4.3.1) 90 0 R (subsubsection.4.3.2) 94 0 R (subsubsection.4.3.3) 98 0 R (subsubsection.5.1.1) 110 0 R (subsubsection.5.1.2) 114 0 R] /Limits [(subsubsection.4.1.2) (subsubsection.5.1.2)] >> endobj 1388 0 obj << /Names [(subsubsection.5.2.1) 122 0 R (subsubsection.5.2.2) 126 0 R (subsubsection.5.2.3) 130 0 R (subsubsection.5.3.1) 138 0 R (subsubsection.5.3.2) 142 0 R (subsubsection.6.1.1) 154 0 R] /Limits [(subsubsection.5.2.1) (subsubsection.6.1.1)] >> endobj 1389 0 obj << /Names [(subsubsection.6.1.2) 158 0 R (subsubsection.6.1.3) 162 0 R (subsubsection.6.1.4) 166 0 R (subsubsection.6.1.5) 170 0 R (subsubsection.6.1.6) 174 0 R (subsubsection.6.2.1) 182 0 R] /Limits [(subsubsection.6.1.2) (subsubsection.6.2.1)] >> endobj 1390 0 obj << /Names [(subsubsection.6.2.2) 186 0 R (subsubsection.6.2.3) 190 0 R (subsubsection.7.1.1) 202 0 R (subsubsection.7.1.2) 206 0 R (subsubsection.7.2.1) 214 0 R (subsubsection.7.2.2) 218 0 R] /Limits [(subsubsection.6.2.2) (subsubsection.7.2.2)] >> endobj 1391 0 obj << /Names [(subsubsection.7.3.1) 226 0 R (subsubsection.7.3.2) 230 0 R (subsubsection.B.4.1) 370 0 R (subsubsection.B.4.2) 374 0 R (subsubsection.B.4.3) 378 0 R (subsubsection.B.4.4) 382 0 R] /Limits [(subsubsection.7.3.1) (subsubsection.B.4.4)] >> endobj 1392 0 obj << /Names [(subsubsection.B.4.5) 386 0 R] /Limits [(subsubsection.B.4.5) (subsubsection.B.4.5)] >> endobj 1393 0 obj << /Kids [1342 0 R 1343 0 R 1344 0 R 1345 0 R 1346 0 R 1347 0 R] /Limits [(Doc-Start) (Item.5)] >> endobj 1394 0 obj << /Kids [1348 0 R 1349 0 R 1350 0 R 1351 0 R 1352 0 R 1353 0 R] /Limits [(Item.6) (page.103)] >> endobj 1395 0 obj << /Kids [1354 0 R 1355 0 R 1356 0 R 1357 0 R 1358 0 R 1359 0 R] /Limits [(page.104) (page.19)] >> endobj 1396 0 obj << /Kids [1360 0 R 1361 0 R 1362 0 R 1363 0 R 1364 0 R 1365 0 R] /Limits [(page.2) (page.51)] >> endobj 1397 0 obj << /Kids [1366 0 R 1367 0 R 1368 0 R 1369 0 R 1370 0 R 1371 0 R] /Limits [(page.52) (page.84)] >> endobj 1398 0 obj << /Kids [1372 0 R 1373 0 R 1374 0 R 1375 0 R 1376 0 R 1377 0 R] /Limits [(page.85) (section.9)] >> endobj 1399 0 obj << /Kids [1378 0 R 1379 0 R 1380 0 R 1381 0 R 1382 0 R 1383 0 R] /Limits [(subsection.2.1) (subsection.A.16)] >> endobj 1400 0 obj << /Kids [1384 0 R 1385 0 R 1386 0 R 1387 0 R 1388 0 R 1389 0 R] /Limits [(subsection.A.17) (subsubsection.6.2.1)] >> endobj 1401 0 obj << /Kids [1390 0 R 1391 0 R 1392 0 R] /Limits [(subsubsection.6.2.2) (subsubsection.B.4.5)] >> endobj 1402 0 obj << /Kids [1393 0 R 1394 0 R 1395 0 R 1396 0 R 1397 0 R 1398 0 R] /Limits [(Doc-Start) (section.9)] >> endobj 1403 0 obj << /Kids [1399 0 R 1400 0 R 1401 0 R] /Limits [(subsection.2.1) (subsubsection.B.4.5)] >> endobj 1404 0 obj << /Kids [1402 0 R 1403 0 R] /Limits [(Doc-Start) (subsubsection.B.4.5)] >> endobj 1405 0 obj << /Dests 1404 0 R >> endobj 1406 0 obj << /Type /Catalog /Pages 1340 0 R /Outlines 1341 0 R /Names 1405 0 R /PageMode/UseOutlines /OpenAction 389 0 R >> endobj 1407 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.10)/Keywords() /CreationDate (D:20130802164609+10'00') /ModDate (D:20130802164609+10'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-1.40.10-2.2 (TeX Live 2009/Debian) kpathsea version 5.0.0) >> endobj xref 0 1408 0000000000 65535 f 0000000015 00000 n 0000049375 00000 n 0003162493 00000 n 0000000060 00000 n 0000000135 00000 n 0000053761 00000 n 0003162371 00000 n 0000000180 00000 n 0000000245 00000 n 0000053820 00000 n 0003162299 00000 n 0000000295 00000 n 0000000359 00000 n 0000057592 00000 n 0003162213 00000 n 0000000410 00000 n 0000000464 00000 n 0000060978 00000 n 0003162127 00000 n 0000000515 00000 n 0000000570 00000 n 0000061038 00000 n 0003162041 00000 n 0000000621 00000 n 0000000681 00000 n 0000064849 00000 n 0003161955 00000 n 0000000732 00000 n 0000000780 00000 n 0000064909 00000 n 0003161882 00000 n 0000000831 00000 n 0000000906 00000 n 0000068244 00000 n 0003161757 00000 n 0000000952 00000 n 0000001001 00000 n 0000068304 00000 n 0003161683 00000 n 0000001052 00000 n 0000001105 00000 n 0000171483 00000 n 0003161596 00000 n 0000001156 00000 n 0000001223 00000 n 0000178143 00000 n 0003161509 00000 n 0000001274 00000 n 0000001350 00000 n 0000217561 00000 n 0003161398 00000 n 0000001401 00000 n 0000001462 00000 n 0000217621 00000 n 0003161324 00000 n 0000001518 00000 n 0000001574 00000 n 0000223348 00000 n 0003161237 00000 n 0000001630 00000 n 0000001693 00000 n 0000227267 00000 n 0003161163 00000 n 0000001749 00000 n 0000001809 00000 n 0000233692 00000 n 0003161036 00000 n 0000001855 00000 n 0000001932 00000 n 0000233752 00000 n 0003160925 00000 n 0000001983 00000 n 0000002059 00000 n 0000233812 00000 n 0003160851 00000 n 0000002115 00000 n 0000002160 00000 n 0000233872 00000 n 0003160777 00000 n 0000002216 00000 n 0000002249 00000 n 0000237353 00000 n 0003160690 00000 n 0000002300 00000 n 0000002389 00000 n 0000385113 00000 n 0003160579 00000 n 0000002440 00000 n 0000002499 00000 n 0000385355 00000 n 0003160505 00000 n 0000002555 00000 n 0000002614 00000 n 0000388338 00000 n 0003160418 00000 n 0000002670 00000 n 0000002721 00000 n 0000391771 00000 n 0003160343 00000 n 0000002777 00000 n 0000002842 00000 n 0000434496 00000 n 0003160211 00000 n 0000002889 00000 n 0000002990 00000 n 0000434557 00000 n 0003160093 00000 n 0000003042 00000 n 0000003127 00000 n 0000438146 00000 n 0003160014 00000 n 0000003184 00000 n 0000003260 00000 n 0000438572 00000 n 0003159935 00000 n 0000003317 00000 n 0000003388 00000 n 0000540047 00000 n 0003159803 00000 n 0000003440 00000 n 0000003502 00000 n 0000540108 00000 n 0003159724 00000 n 0000003559 00000 n 0000003629 00000 n 0000540169 00000 n 0003159631 00000 n 0000003686 00000 n 0000003757 00000 n 0000639537 00000 n 0003159552 00000 n 0000003814 00000 n 0000003886 00000 n 0000813598 00000 n 0003159434 00000 n 0000003938 00000 n 0000004008 00000 n 0000816225 00000 n 0003159355 00000 n 0000004065 00000 n 0000004110 00000 n 0000816286 00000 n 0003159276 00000 n 0000004167 00000 n 0000004230 00000 n 0000878902 00000 n 0003159143 00000 n 0000004277 00000 n 0000004378 00000 n 0000879146 00000 n 0003159025 00000 n 0000004430 00000 n 0000004482 00000 n 0000881373 00000 n 0003158946 00000 n 0000004539 00000 n 0000004593 00000 n 0000881434 00000 n 0003158853 00000 n 0000004650 00000 n 0000004714 00000 n 0000883627 00000 n 0003158760 00000 n 0000004771 00000 n 0000004828 00000 n 0000886599 00000 n 0003158667 00000 n 0000004885 00000 n 0000004949 00000 n 0001487459 00000 n 0003158574 00000 n 0000005006 00000 n 0000005059 00000 n 0001490435 00000 n 0003158495 00000 n 0000005116 00000 n 0000005192 00000 n 0001495573 00000 n 0003158377 00000 n 0000005244 00000 n 0000005309 00000 n 0001522571 00000 n 0003158298 00000 n 0000005366 00000 n 0000005419 00000 n 0001527542 00000 n 0003158205 00000 n 0000005476 00000 n 0000005563 00000 n 0001699309 00000 n 0003158126 00000 n 0000005620 00000 n 0000005736 00000 n 0002049824 00000 n 0003157993 00000 n 0000005783 00000 n 0000005841 00000 n 0002524838 00000 n 0003157875 00000 n 0000005893 00000 n 0000005957 00000 n 0002524899 00000 n 0003157796 00000 n 0000006014 00000 n 0000006081 00000 n 0002527375 00000 n 0003157717 00000 n 0000006138 00000 n 0000006198 00000 n 0002641164 00000 n 0003157585 00000 n 0000006250 00000 n 0000006319 00000 n 0002641225 00000 n 0003157506 00000 n 0000006376 00000 n 0000006434 00000 n 0002641285 00000 n 0003157427 00000 n 0000006491 00000 n 0000006552 00000 n 0002641346 00000 n 0003157309 00000 n 0000006604 00000 n 0000006677 00000 n 0002641407 00000 n 0003157230 00000 n 0000006734 00000 n 0000006804 00000 n 0002641468 00000 n 0003157151 00000 n 0000006861 00000 n 0000006917 00000 n 0002773398 00000 n 0003157018 00000 n 0000006964 00000 n 0000007073 00000 n 0002776782 00000 n 0003156939 00000 n 0000007125 00000 n 0000007197 00000 n 0002782734 00000 n 0003156846 00000 n 0000007249 00000 n 0000007327 00000 n 0002788357 00000 n 0003156753 00000 n 0000007379 00000 n 0000007450 00000 n 0002791481 00000 n 0003156674 00000 n 0000007502 00000 n 0000007581 00000 n 0002846760 00000 n 0003156541 00000 n 0000007628 00000 n 0000007711 00000 n 0002846822 00000 n 0003156462 00000 n 0000007763 00000 n 0000007826 00000 n 0002846884 00000 n 0003156369 00000 n 0000007878 00000 n 0000007950 00000 n 0002846946 00000 n 0003156290 00000 n 0000008002 00000 n 0000008079 00000 n 0002847618 00000 n 0003156196 00000 n 0000008127 00000 n 0000008199 00000 n 0002848182 00000 n 0003156062 00000 n 0000008247 00000 n 0000008302 00000 n 0002849629 00000 n 0003155983 00000 n 0000008354 00000 n 0000008383 00000 n 0002851670 00000 n 0003155890 00000 n 0000008435 00000 n 0000008474 00000 n 0002854059 00000 n 0003155797 00000 n 0000008526 00000 n 0000008562 00000 n 0002856222 00000 n 0003155704 00000 n 0000008614 00000 n 0000008650 00000 n 0002858623 00000 n 0003155611 00000 n 0000008702 00000 n 0000008733 00000 n 0002860800 00000 n 0003155518 00000 n 0000008785 00000 n 0000008826 00000 n 0002862947 00000 n 0003155425 00000 n 0000008878 00000 n 0000008908 00000 n 0002865334 00000 n 0003155332 00000 n 0000008960 00000 n 0000008998 00000 n 0002867984 00000 n 0003155239 00000 n 0000009050 00000 n 0000009086 00000 n 0002871036 00000 n 0003155146 00000 n 0000009139 00000 n 0000009179 00000 n 0002874218 00000 n 0003155053 00000 n 0000009232 00000 n 0000009281 00000 n 0002877601 00000 n 0003154960 00000 n 0000009334 00000 n 0000009383 00000 n 0002880326 00000 n 0003154867 00000 n 0000009436 00000 n 0000009469 00000 n 0002881909 00000 n 0003154774 00000 n 0000009522 00000 n 0000009559 00000 n 0002886096 00000 n 0003154681 00000 n 0000009612 00000 n 0000009650 00000 n 0002891326 00000 n 0003154588 00000 n 0000009703 00000 n 0000009736 00000 n 0002893542 00000 n 0003154495 00000 n 0000009789 00000 n 0000009821 00000 n 0002898622 00000 n 0003154416 00000 n 0000009874 00000 n 0000009912 00000 n 0002899657 00000 n 0003154297 00000 n 0000009960 00000 n 0000010039 00000 n 0002907649 00000 n 0003154218 00000 n 0000010091 00000 n 0000010129 00000 n 0002910768 00000 n 0003154125 00000 n 0000010181 00000 n 0000010273 00000 n 0002914956 00000 n 0003154032 00000 n 0000010325 00000 n 0000010409 00000 n 0002918428 00000 n 0003153914 00000 n 0000010461 00000 n 0000010537 00000 n 0002918490 00000 n 0003153835 00000 n 0000010594 00000 n 0000010617 00000 n 0002918552 00000 n 0003153742 00000 n 0000010674 00000 n 0000010698 00000 n 0002918614 00000 n 0003153649 00000 n 0000010755 00000 n 0000010788 00000 n 0002918676 00000 n 0003153556 00000 n 0000010845 00000 n 0000010882 00000 n 0002918738 00000 n 0003153477 00000 n 0000010939 00000 n 0000010983 00000 n 0000013063 00000 n 0000013386 00000 n 0000013733 00000 n 0000013900 00000 n 0000014267 00000 n 0000014436 00000 n 0000014801 00000 n 0000014951 00000 n 0000015102 00000 n 0000015258 00000 n 0000015414 00000 n 0000015570 00000 n 0000015725 00000 n 0000015880 00000 n 0000016036 00000 n 0000016187 00000 n 0000016343 00000 n 0000016499 00000 n 0000016655 00000 n 0000016811 00000 n 0000016973 00000 n 0000017135 00000 n 0000020396 00000 n 0000020547 00000 n 0000020701 00000 n 0000020863 00000 n 0000017480 00000 n 0000011035 00000 n 0000017297 00000 n 0000017358 00000 n 0003149175 00000 n 0003149030 00000 n 0003148885 00000 n 0003147570 00000 n 0000013560 00000 n 0000014084 00000 n 0000014619 00000 n 0003147716 00000 n 0000017419 00000 n 0003150039 00000 n 0003150185 00000 n 0000021025 00000 n 0000021181 00000 n 0000021337 00000 n 0000021497 00000 n 0000021659 00000 n 0000021821 00000 n 0000022123 00000 n 0000022279 00000 n 0000022440 00000 n 0000022602 00000 n 0000022758 00000 n 0000022920 00000 n 0000023082 00000 n 0000023242 00000 n 0000023398 00000 n 0000023560 00000 n 0000023722 00000 n 0000024023 00000 n 0000024177 00000 n 0000024339 00000 n 0000024501 00000 n 0000024663 00000 n 0000024825 00000 n 0000024986 00000 n 0000025148 00000 n 0000025304 00000 n 0000025466 00000 n 0000025628 00000 n 0000025951 00000 n 0000026101 00000 n 0000026257 00000 n 0000026418 00000 n 0000026580 00000 n 0000026735 00000 n 0000026897 00000 n 0000027059 00000 n 0000027215 00000 n 0000027377 00000 n 0000030658 00000 n 0000030959 00000 n 0000027600 00000 n 0000019905 00000 n 0000017617 00000 n 0000027539 00000 n 0000021972 00000 n 0000023873 00000 n 0000025790 00000 n 0000031115 00000 n 0000031270 00000 n 0000031426 00000 n 0000031582 00000 n 0000031733 00000 n 0000031889 00000 n 0000032045 00000 n 0000032201 00000 n 0000032353 00000 n 0000032505 00000 n 0000032661 00000 n 0000032816 00000 n 0000032970 00000 n 0000033124 00000 n 0000033280 00000 n 0000033435 00000 n 0000033590 00000 n 0000033746 00000 n 0000033900 00000 n 0000034057 00000 n 0000034214 00000 n 0000034371 00000 n 0000034528 00000 n 0000034684 00000 n 0000034841 00000 n 0000034998 00000 n 0000035155 00000 n 0000035312 00000 n 0000035464 00000 n 0000035620 00000 n 0000035776 00000 n 0000035931 00000 n 0000036087 00000 n 0000036249 00000 n 0000036411 00000 n 0000036573 00000 n 0000036735 00000 n 0000036897 00000 n 0000037046 00000 n 0000040302 00000 n 0000037316 00000 n 0000030191 00000 n 0000027698 00000 n 0000037194 00000 n 0000030809 00000 n 0000037255 00000 n 0000168522 00000 n 0000213419 00000 n 0000040601 00000 n 0000040900 00000 n 0000041199 00000 n 0000041498 00000 n 0000041797 00000 n 0000042097 00000 n 0000042247 00000 n 0000042398 00000 n 0000042700 00000 n 0000043001 00000 n 0000043303 00000 n 0000043604 00000 n 0000043906 00000 n 0000044207 00000 n 0000044358 00000 n 0000044962 00000 n 0000045264 00000 n 0000045566 00000 n 0000045927 00000 n 0000039875 00000 n 0000037414 00000 n 0000045866 00000 n 0000040451 00000 n 0000040750 00000 n 0000041050 00000 n 0000041349 00000 n 0000041648 00000 n 0000041947 00000 n 0000042549 00000 n 0000042851 00000 n 0003148449 00000 n 0000043152 00000 n 0000043454 00000 n 0000043755 00000 n 0000044056 00000 n 0000044509 00000 n 0000044660 00000 n 0000044811 00000 n 0000045113 00000 n 0000045415 00000 n 0000045717 00000 n 0000385051 00000 n 0000431603 00000 n 0000536387 00000 n 0000635354 00000 n 0000726715 00000 n 0000813537 00000 n 0000828155 00000 n 0000873784 00000 n 0001484915 00000 n 0001522387 00000 n 0001699248 00000 n 0001823510 00000 n 0002043924 00000 n 0002043985 00000 n 0002524776 00000 n 0002641103 00000 n 0002773336 00000 n 0002821988 00000 n 0002844319 00000 n 0000049145 00000 n 0000049434 00000 n 0000049006 00000 n 0000046025 00000 n 0000049314 00000 n 0003149607 00000 n 0000050594 00000 n 0000050414 00000 n 0000049545 00000 n 0000050533 00000 n 0003147862 00000 n 0003149893 00000 n 0000053392 00000 n 0000053548 00000 n 0000053940 00000 n 0000053245 00000 n 0000050705 00000 n 0000053700 00000 n 0003149463 00000 n 0003149320 00000 n 0000053880 00000 n 0003150303 00000 n 0000057652 00000 n 0000057412 00000 n 0000054089 00000 n 0000057531 00000 n 0000061098 00000 n 0000060798 00000 n 0000057776 00000 n 0000060917 00000 n 0003148740 00000 n 0000064478 00000 n 0000064632 00000 n 0000065091 00000 n 0000064331 00000 n 0000061248 00000 n 0000064788 00000 n 0000064969 00000 n 0000065030 00000 n 0000068026 00000 n 0000168201 00000 n 0000068364 00000 n 0000067887 00000 n 0000065227 00000 n 0000068183 00000 n 0000070840 00000 n 0000168584 00000 n 0000070701 00000 n 0000068475 00000 n 0000168461 00000 n 0003148156 00000 n 0000171272 00000 n 0000171543 00000 n 0000171133 00000 n 0000168744 00000 n 0000171422 00000 n 0003150421 00000 n 0000174092 00000 n 0000173912 00000 n 0000171641 00000 n 0000174031 00000 n 0000177427 00000 n 0000177595 00000 n 0000177748 00000 n 0000181026 00000 n 0000181210 00000 n 0000178263 00000 n 0000177264 00000 n 0000174190 00000 n 0000178082 00000 n 0000178203 00000 n 0000177915 00000 n 0000181367 00000 n 0000181535 00000 n 0000181761 00000 n 0000180863 00000 n 0000178425 00000 n 0000181700 00000 n 0000184997 00000 n 0000184817 00000 n 0000181859 00000 n 0000184936 00000 n 0000188524 00000 n 0000189340 00000 n 0000188735 00000 n 0000188385 00000 n 0000185108 00000 n 0000188674 00000 n 0000213481 00000 n 0000189221 00000 n 0000188833 00000 n 0000213358 00000 n 0003150539 00000 n 0000216815 00000 n 0000217001 00000 n 0000217186 00000 n 0000217343 00000 n 0000217681 00000 n 0000216652 00000 n 0000213602 00000 n 0000217500 00000 n 0000220883 00000 n 0000220703 00000 n 0000217779 00000 n 0000220822 00000 n 0000223407 00000 n 0000223168 00000 n 0000221007 00000 n 0000223287 00000 n 0000229666 00000 n 0000227327 00000 n 0000227087 00000 n 0000223505 00000 n 0000227206 00000 n 0000230002 00000 n 0000229527 00000 n 0000227438 00000 n 0000229880 00000 n 0000229941 00000 n 0000233478 00000 n 0000233931 00000 n 0000233339 00000 n 0000230139 00000 n 0000233631 00000 n 0003150657 00000 n 0000237413 00000 n 0000237173 00000 n 0000234081 00000 n 0000237292 00000 n 0000240862 00000 n 0000241015 00000 n 0000243162 00000 n 0000241287 00000 n 0000240715 00000 n 0000237563 00000 n 0000241165 00000 n 0000241226 00000 n 0003148303 00000 n 0003148595 00000 n 0000384839 00000 n 0000385415 00000 n 0000243023 00000 n 0000241462 00000 n 0000384990 00000 n 0000385173 00000 n 0000385234 00000 n 0000385294 00000 n 0000388398 00000 n 0000388158 00000 n 0000385562 00000 n 0000388277 00000 n 0000391559 00000 n 0000393425 00000 n 0000391892 00000 n 0000391420 00000 n 0000388522 00000 n 0000391710 00000 n 0000391831 00000 n 0000431665 00000 n 0000393306 00000 n 0000391990 00000 n 0000431542 00000 n 0003150775 00000 n 0000434617 00000 n 0000434316 00000 n 0000431786 00000 n 0000434435 00000 n 0000438633 00000 n 0000437966 00000 n 0000434715 00000 n 0000438085 00000 n 0000438207 00000 n 0000438268 00000 n 0000438329 00000 n 0000438389 00000 n 0000438450 00000 n 0000438511 00000 n 0000536022 00000 n 0000536175 00000 n 0000440960 00000 n 0000536449 00000 n 0000440813 00000 n 0000438770 00000 n 0000536326 00000 n 0003149751 00000 n 0000539685 00000 n 0000539838 00000 n 0000542137 00000 n 0000540230 00000 n 0000539538 00000 n 0000536609 00000 n 0000539986 00000 n 0000635416 00000 n 0000542018 00000 n 0000540328 00000 n 0000635293 00000 n 0000639173 00000 n 0000639325 00000 n 0000642146 00000 n 0000639598 00000 n 0000639026 00000 n 0000635537 00000 n 0000639476 00000 n 0003150893 00000 n 0000726351 00000 n 0000726503 00000 n 0000726960 00000 n 0000641999 00000 n 0000639722 00000 n 0000726654 00000 n 0000726777 00000 n 0000726838 00000 n 0000726899 00000 n 0000729292 00000 n 0000813659 00000 n 0000729173 00000 n 0000727107 00000 n 0000813476 00000 n 0000816014 00000 n 0000818566 00000 n 0000816347 00000 n 0000815875 00000 n 0000813793 00000 n 0000816164 00000 n 0000828582 00000 n 0000818447 00000 n 0000816445 00000 n 0000828094 00000 n 0000828217 00000 n 0000828278 00000 n 0000828338 00000 n 0000828399 00000 n 0000828460 00000 n 0000828521 00000 n 0000873418 00000 n 0000873570 00000 n 0000831134 00000 n 0000873905 00000 n 0000830987 00000 n 0000828729 00000 n 0000873723 00000 n 0000873846 00000 n 0000875673 00000 n 0000875493 00000 n 0000874040 00000 n 0000875612 00000 n 0003151011 00000 n 0000878688 00000 n 0000879207 00000 n 0000878549 00000 n 0000875758 00000 n 0000878841 00000 n 0000878963 00000 n 0000879024 00000 n 0000879085 00000 n 0000881495 00000 n 0000881193 00000 n 0000879305 00000 n 0000881312 00000 n 0000883688 00000 n 0000883447 00000 n 0000881593 00000 n 0000883566 00000 n 0000886386 00000 n 0000889163 00000 n 0000886660 00000 n 0000886247 00000 n 0000883812 00000 n 0000886538 00000 n 0001485039 00000 n 0000889044 00000 n 0000886758 00000 n 0001484854 00000 n 0001484977 00000 n 0001487520 00000 n 0001487279 00000 n 0001485200 00000 n 0001487398 00000 n 0003151129 00000 n 0001490221 00000 n 0001490618 00000 n 0001490082 00000 n 0001487644 00000 n 0001490374 00000 n 0001490496 00000 n 0001490557 00000 n 0001492313 00000 n 0001492649 00000 n 0001492174 00000 n 0001490729 00000 n 0001492466 00000 n 0001492527 00000 n 0001492588 00000 n 0001495362 00000 n 0001498521 00000 n 0001495634 00000 n 0001495223 00000 n 0001492734 00000 n 0001495512 00000 n 0001522632 00000 n 0001498402 00000 n 0001495784 00000 n 0001522326 00000 n 0001522449 00000 n 0001522511 00000 n 0003148010 00000 n 0001524704 00000 n 0001524524 00000 n 0001522831 00000 n 0001524643 00000 n 0001527019 00000 n 0001527174 00000 n 0001527329 00000 n 0001527603 00000 n 0001526864 00000 n 0001524802 00000 n 0001527481 00000 n 0003151247 00000 n 0001530082 00000 n 0001699370 00000 n 0001529963 00000 n 0001527701 00000 n 0001699187 00000 n 0001702160 00000 n 0001702313 00000 n 0001702811 00000 n 0001702005 00000 n 0001699518 00000 n 0001702750 00000 n 0001702532 00000 n 0001704808 00000 n 0001824397 00000 n 0001931047 00000 n 0001822993 00000 n 0001823145 00000 n 0001823297 00000 n 0001823572 00000 n 0001704653 00000 n 0001702947 00000 n 0001823449 00000 n 0002044047 00000 n 0001824278 00000 n 0001823694 00000 n 0002043863 00000 n 0002046535 00000 n 0002046294 00000 n 0002044183 00000 n 0002046413 00000 n 0002046474 00000 n 0002049412 00000 n 0002049583 00000 n 0002524199 00000 n 0002524365 00000 n 0002524536 00000 n 0002050068 00000 n 0002049265 00000 n 0002046633 00000 n 0002049763 00000 n 0002049885 00000 n 0002049946 00000 n 0002050007 00000 n 0003151365 00000 n 0002052076 00000 n 0002524960 00000 n 0002051921 00000 n 0002050192 00000 n 0002524715 00000 n 0002527162 00000 n 0002640890 00000 n 0002527436 00000 n 0002527023 00000 n 0002525108 00000 n 0002527314 00000 n 0002529773 00000 n 0002641590 00000 n 0002529634 00000 n 0002527547 00000 n 0002641042 00000 n 0002641529 00000 n 0002643606 00000 n 0002643426 00000 n 0002641725 00000 n 0002643545 00000 n 0002645981 00000 n 0002773459 00000 n 0002645862 00000 n 0002643691 00000 n 0002773275 00000 n 0002776291 00000 n 0002776441 00000 n 0002776843 00000 n 0002776144 00000 n 0002773607 00000 n 0002776599 00000 n 0002776660 00000 n 0002776721 00000 n 0003151483 00000 n 0002779351 00000 n 0002779171 00000 n 0002776954 00000 n 0002779290 00000 n 0002782795 00000 n 0002782554 00000 n 0002779436 00000 n 0002782673 00000 n 0002785138 00000 n 0002784775 00000 n 0002782919 00000 n 0002784894 00000 n 0002784955 00000 n 0002785016 00000 n 0002785077 00000 n 0002788418 00000 n 0002788175 00000 n 0002785236 00000 n 0002788295 00000 n 0002791259 00000 n 0002791543 00000 n 0002791116 00000 n 0002788542 00000 n 0002791418 00000 n 0002794021 00000 n 0002821772 00000 n 0002822051 00000 n 0002793877 00000 n 0002791694 00000 n 0002821925 00000 n 0003151602 00000 n 0002844104 00000 n 0002824788 00000 n 0002844445 00000 n 0002824644 00000 n 0002822227 00000 n 0002844256 00000 n 0002844382 00000 n 0002846000 00000 n 0002845814 00000 n 0002844595 00000 n 0002845937 00000 n 0002847071 00000 n 0002846574 00000 n 0002846086 00000 n 0002846697 00000 n 0002847008 00000 n 0002847680 00000 n 0002847432 00000 n 0002847170 00000 n 0002847555 00000 n 0002848244 00000 n 0002847996 00000 n 0002847766 00000 n 0002848119 00000 n 0002849691 00000 n 0002849443 00000 n 0002848330 00000 n 0002849566 00000 n 0003151727 00000 n 0002850165 00000 n 0002849979 00000 n 0002849790 00000 n 0002850102 00000 n 0002851732 00000 n 0002851484 00000 n 0002850251 00000 n 0002851607 00000 n 0002852553 00000 n 0002852367 00000 n 0002851831 00000 n 0002852490 00000 n 0002854121 00000 n 0002853873 00000 n 0002852639 00000 n 0002853996 00000 n 0002854760 00000 n 0002854574 00000 n 0002854220 00000 n 0002854697 00000 n 0002856284 00000 n 0002856036 00000 n 0002854846 00000 n 0002856159 00000 n 0003151852 00000 n 0002857370 00000 n 0002857184 00000 n 0002856383 00000 n 0002857307 00000 n 0002858685 00000 n 0002858437 00000 n 0002857456 00000 n 0002858560 00000 n 0002859322 00000 n 0002859136 00000 n 0002858784 00000 n 0002859259 00000 n 0002860862 00000 n 0002860614 00000 n 0002859408 00000 n 0002860737 00000 n 0002861522 00000 n 0002861336 00000 n 0002860961 00000 n 0002861459 00000 n 0002863009 00000 n 0002862761 00000 n 0002861608 00000 n 0002862884 00000 n 0003151977 00000 n 0002863813 00000 n 0002863627 00000 n 0002863108 00000 n 0002863750 00000 n 0002865396 00000 n 0002865148 00000 n 0002863899 00000 n 0002865271 00000 n 0002866486 00000 n 0002866300 00000 n 0002865495 00000 n 0002866423 00000 n 0002868046 00000 n 0002867798 00000 n 0002866572 00000 n 0002867921 00000 n 0002869056 00000 n 0002868870 00000 n 0002868145 00000 n 0002868993 00000 n 0002869557 00000 n 0002869371 00000 n 0002869142 00000 n 0002869494 00000 n 0003152102 00000 n 0002871098 00000 n 0002870850 00000 n 0002869643 00000 n 0002870973 00000 n 0002872137 00000 n 0002871951 00000 n 0002871197 00000 n 0002872074 00000 n 0002872676 00000 n 0002872490 00000 n 0002872223 00000 n 0002872613 00000 n 0002874280 00000 n 0002874032 00000 n 0002872762 00000 n 0002874155 00000 n 0002875382 00000 n 0002875196 00000 n 0002874379 00000 n 0002875319 00000 n 0002876043 00000 n 0002875857 00000 n 0002875468 00000 n 0002875980 00000 n 0003152227 00000 n 0002877663 00000 n 0002877415 00000 n 0002876129 00000 n 0002877538 00000 n 0002878704 00000 n 0002878518 00000 n 0002877762 00000 n 0002878641 00000 n 0002879673 00000 n 0002879487 00000 n 0002878790 00000 n 0002879610 00000 n 0002880388 00000 n 0002880140 00000 n 0002879759 00000 n 0002880263 00000 n 0002881971 00000 n 0002881723 00000 n 0002880487 00000 n 0002881846 00000 n 0002882989 00000 n 0002882803 00000 n 0002882070 00000 n 0002882926 00000 n 0003152352 00000 n 0002883788 00000 n 0002883602 00000 n 0002883075 00000 n 0002883725 00000 n 0002884632 00000 n 0002884446 00000 n 0002883874 00000 n 0002884569 00000 n 0002886158 00000 n 0002885910 00000 n 0002884718 00000 n 0002886033 00000 n 0002887156 00000 n 0002886970 00000 n 0002886257 00000 n 0002887093 00000 n 0002888089 00000 n 0002887903 00000 n 0002887242 00000 n 0002888026 00000 n 0002889064 00000 n 0002888878 00000 n 0002888175 00000 n 0002889001 00000 n 0003152477 00000 n 0002889811 00000 n 0002889625 00000 n 0002889150 00000 n 0002889748 00000 n 0002891388 00000 n 0002891140 00000 n 0002889897 00000 n 0002891263 00000 n 0002892119 00000 n 0002891933 00000 n 0002891487 00000 n 0002892056 00000 n 0002893604 00000 n 0002893356 00000 n 0002892205 00000 n 0002893479 00000 n 0002894732 00000 n 0002894546 00000 n 0002893703 00000 n 0002894669 00000 n 0002895742 00000 n 0002895556 00000 n 0002894818 00000 n 0002895679 00000 n 0003152602 00000 n 0002896730 00000 n 0002896544 00000 n 0002895828 00000 n 0002896667 00000 n 0002897250 00000 n 0002897064 00000 n 0002896816 00000 n 0002897187 00000 n 0002898684 00000 n 0002898436 00000 n 0002897336 00000 n 0002898559 00000 n 0002899119 00000 n 0002898933 00000 n 0002898783 00000 n 0002899056 00000 n 0002899719 00000 n 0002899471 00000 n 0002899192 00000 n 0002899594 00000 n 0002901456 00000 n 0002901716 00000 n 0002901975 00000 n 0002902241 00000 n 0002902503 00000 n 0002902761 00000 n 0002903026 00000 n 0002903291 00000 n 0002903557 00000 n 0002903821 00000 n 0002904093 00000 n 0002904359 00000 n 0002904624 00000 n 0002904896 00000 n 0002905157 00000 n 0002905418 00000 n 0002905686 00000 n 0002905956 00000 n 0002906229 00000 n 0002906502 00000 n 0002906771 00000 n 0002907043 00000 n 0002907313 00000 n 0002907711 00000 n 0002901114 00000 n 0002899805 00000 n 0002907586 00000 n 0003152727 00000 n 0002910830 00000 n 0002910582 00000 n 0002907797 00000 n 0002910705 00000 n 0002915018 00000 n 0002914770 00000 n 0002910916 00000 n 0002914893 00000 n 0002918056 00000 n 0002918210 00000 n 0002918923 00000 n 0002917903 00000 n 0002915117 00000 n 0002918365 00000 n 0002918799 00000 n 0002918861 00000 n 0002919060 00000 n 0002919620 00000 n 0002919646 00000 n 0002919803 00000 n 0002920133 00000 n 0002920465 00000 n 0002920855 00000 n 0002920911 00000 n 0002921398 00000 n 0002921914 00000 n 0002922286 00000 n 0002922676 00000 n 0002923302 00000 n 0002923874 00000 n 0002924522 00000 n 0002924842 00000 n 0002925466 00000 n 0002926085 00000 n 0002926599 00000 n 0002936224 00000 n 0002936459 00000 n 0002956608 00000 n 0002957069 00000 n 0002969628 00000 n 0002969905 00000 n 0002977450 00000 n 0002977740 00000 n 0002984535 00000 n 0002984832 00000 n 0002993078 00000 n 0002993322 00000 n 0003006732 00000 n 0003007050 00000 n 0003014667 00000 n 0003014893 00000 n 0003024913 00000 n 0003025166 00000 n 0003046051 00000 n 0003046462 00000 n 0003069541 00000 n 0003070113 00000 n 0003081015 00000 n 0003081302 00000 n 0003089239 00000 n 0003089485 00000 n 0003098375 00000 n 0003098650 00000 n 0003106551 00000 n 0003106817 00000 n 0003113789 00000 n 0003114016 00000 n 0003131829 00000 n 0003132185 00000 n 0003147006 00000 n 0003152834 00000 n 0003152954 00000 n 0003153074 00000 n 0003153200 00000 n 0003153308 00000 n 0003153400 00000 n 0003162565 00000 n 0003162765 00000 n 0003162944 00000 n 0003163115 00000 n 0003163284 00000 n 0003163453 00000 n 0003163621 00000 n 0003163796 00000 n 0003163994 00000 n 0003164181 00000 n 0003164365 00000 n 0003164544 00000 n 0003164722 00000 n 0003164907 00000 n 0003165089 00000 n 0003165271 00000 n 0003165456 00000 n 0003165639 00000 n 0003165810 00000 n 0003165979 00000 n 0003166148 00000 n 0003166319 00000 n 0003166489 00000 n 0003166660 00000 n 0003166830 00000 n 0003167001 00000 n 0003167171 00000 n 0003167342 00000 n 0003167515 00000 n 0003167692 00000 n 0003167866 00000 n 0003168040 00000 n 0003168217 00000 n 0003168404 00000 n 0003168599 00000 n 0003168786 00000 n 0003168972 00000 n 0003169193 00000 n 0003169414 00000 n 0003169640 00000 n 0003169867 00000 n 0003170096 00000 n 0003170331 00000 n 0003170561 00000 n 0003170788 00000 n 0003171036 00000 n 0003171299 00000 n 0003171566 00000 n 0003171833 00000 n 0003172100 00000 n 0003172367 00000 n 0003172484 00000 n 0003172601 00000 n 0003172717 00000 n 0003172834 00000 n 0003172949 00000 n 0003173065 00000 n 0003173183 00000 n 0003173314 00000 n 0003173450 00000 n 0003173563 00000 n 0003173683 00000 n 0003173791 00000 n 0003173885 00000 n 0003173925 00000 n 0003174057 00000 n trailer << /Size 1408 /Root 1406 0 R /Info 1407 0 R /ID [ ] >> startxref 3174384 %%EOF ./Doc/Tutorial/0000775000175000017500000000000012176660653013147 5ustar vborosvboros./Doc/Tutorial/epsf.sty0000664000175000017500000001663012176660653014653 0ustar vborosvboros% EPSF.TEX macro file: % Written by Tomas Rokicki of Radical Eye Software, 29 Mar 1989. % Revised by Don Knuth, 3 Jan 1990. % Revised by Tomas Rokicki to accept bounding boxes with no % space after the colon, 18 Jul 1990. % % TeX macros to include an Encapsulated PostScript graphic. % Works by finding the bounding box comment, % calculating the correct scale values, and inserting a vbox % of the appropriate size at the current position in the TeX document. % % To use with the center environment of LaTeX, preface the \epsffile % call with a \leavevmode. (LaTeX should probably supply this itself % for the center environment.) % % To use, simply say % \input epsf % somewhere early on in your TeX file % \epsfbox{filename.ps} % where you want to insert a vbox for a figure % % Alternatively, you can type % % \epsfbox[0 0 30 50]{filename.ps} % to supply your own BB % % which will not read in the file, and will instead use the bounding % box you specify. % % The effect will be to typeset the figure as a TeX box, at the % point of your \epsfbox command. By default, the graphic will have its % `natural' width (namely the width of its bounding box, as described % in filename.ps). The TeX box will have depth zero. % % You can enlarge or reduce the figure by saying % \epsfxsize= \epsfbox{filename.ps} % (or % \epsfysize= \epsfbox{filename.ps}) % instead. Then the width of the TeX box will be \epsfxsize and its % height will be scaled proportionately (or the height will be % \epsfysize and its width will be scaled proportiontally). The % width (and height) is restored to zero after each use. % % A more general facility for sizing is available by defining the % \epsfsize macro. Normally you can redefine this macro % to do almost anything. The first parameter is the natural x size of % the PostScript graphic, the second parameter is the natural y size % of the PostScript graphic. It must return the xsize to use, or 0 if % natural scaling is to be used. Common uses include: % % \epsfxsize % just leave the old value alone % 0pt % use the natural sizes % #1 % use the natural sizes % \hsize % scale to full width % 0.5#1 % scale to 50% of natural size % \ifnum#1>\hsize\hsize\else#1\fi % smaller of natural, hsize % % If you want TeX to report the size of the figure (as a message % on your terminal when it processes each figure), say `\epsfverbosetrue'. % \newread\epsffilein % file to \read \newif\ifepsffileok % continue looking for the bounding box? \newif\ifepsfbbfound % success? \newif\ifepsfverbose % report what you're making? \newdimen\epsfxsize % horizontal size after scaling \newdimen\epsfysize % vertical size after scaling \newdimen\epsftsize % horizontal size before scaling \newdimen\epsfrsize % vertical size before scaling \newdimen\epsftmp % register for arithmetic manipulation \newdimen\pspoints % conversion factor % \pspoints=1bp % Adobe points are `big' \epsfxsize=0pt % Default value, means `use natural size' \epsfysize=0pt % ditto % \def\epsfbox#1{\global\def\epsfllx{72}\global\def\epsflly{72}% \global\def\epsfurx{540}\global\def\epsfury{720}% \def\lbracket{[}\def\testit{#1}\ifx\testit\lbracket \let\next=\epsfgetlitbb\else\let\next=\epsfnormal\fi\next{#1}}% % \def\epsfgetlitbb#1#2 #3 #4 #5]#6{\epsfgrab #2 #3 #4 #5 .\\% \epsfsetgraph{#6}}% % \def\epsfnormal#1{\epsfgetbb{#1}\epsfsetgraph{#1}}% % \def\epsfgetbb#1{% % % The first thing we need to do is to open the % PostScript file, if possible. % \openin\epsffilein=#1 \ifeof\epsffilein\errmessage{I couldn't open #1, will ignore it}\else % % Okay, we got it. Now we'll scan lines until we find one that doesn't % start with %. We're looking for the bounding box comment. % {\epsffileoktrue \chardef\other=12 \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10 \loop \read\epsffilein to \epsffileline \ifeof\epsffilein\epsffileokfalse\else % % We check to see if the first character is a % sign; % if not, we stop reading (unless the line was entirely blank); % if so, we look further and stop only if the line begins with % `%%BoundingBox:'. % \expandafter\epsfaux\epsffileline:. \\% \fi \ifepsffileok\repeat \ifepsfbbfound\else \ifepsfverbose\message{No bounding box comment in #1; using defaults}\fi\fi }\closein\epsffilein\fi}% % % Now we have to calculate the scale and offset values to use. % First we compute the natural sizes. % \def\epsfsetgraph#1{% \epsfrsize=\epsfury\pspoints \advance\epsfrsize by-\epsflly\pspoints \epsftsize=\epsfurx\pspoints \advance\epsftsize by-\epsfllx\pspoints % % If `epsfxsize' is 0, we default to the natural size of the picture. % Otherwise we scale the graph to be \epsfxsize wide. % \epsfxsize\epsfsize\epsftsize\epsfrsize \ifnum\epsfxsize=0 \ifnum\epsfysize=0 \epsfxsize=\epsftsize \epsfysize=\epsfrsize % % We have a sticky problem here: TeX doesn't do floating point arithmetic! % Our goal is to compute y = rx/t. The following loop does this reasonably % fast, with an error of at most about 16 sp (about 1/4000 pt). % \else\epsftmp=\epsftsize \divide\epsftmp\epsfrsize \epsfxsize=\epsfysize \multiply\epsfxsize\epsftmp \multiply\epsftmp\epsfrsize \advance\epsftsize-\epsftmp \epsftmp=\epsfysize \loop \advance\epsftsize\epsftsize \divide\epsftmp 2 \ifnum\epsftmp>0 \ifnum\epsftsize<\epsfrsize\else \advance\epsftsize-\epsfrsize \advance\epsfxsize\epsftmp \fi \repeat \fi \else\epsftmp=\epsfrsize \divide\epsftmp\epsftsize \epsfysize=\epsfxsize \multiply\epsfysize\epsftmp \multiply\epsftmp\epsftsize \advance\epsfrsize-\epsftmp \epsftmp=\epsfxsize \loop \advance\epsfrsize\epsfrsize \divide\epsftmp 2 \ifnum\epsftmp>0 \ifnum\epsfrsize<\epsftsize\else \advance\epsfrsize-\epsftsize \advance\epsfysize\epsftmp \fi \repeat \fi % % Finally, we make the vbox and stick in a \special that dvips can parse. % \ifepsfverbose\message{#1: width=\the\epsfxsize, height=\the\epsfysize}\fi \epsftmp=10\epsfxsize \divide\epsftmp\pspoints \vbox to\epsfysize{\vfil\hbox to\epsfxsize{% \special{PSfile=#1 llx=\epsfllx\space lly=\epsflly\space urx=\epsfurx\space ury=\epsfury\space rwi=\number\epsftmp}% \hfil}}% \epsfxsize=0pt\epsfysize=0pt}% % % We still need to define the tricky \epsfaux macro. This requires % a couple of magic constants for comparison purposes. % {\catcode`\%=12 \global\let\epsfpercent=%\global\def\epsfbblit{%BoundingBox}}% % % So we're ready to check for `%BoundingBox:' and to grab the % values if they are found. % \long\def\epsfaux#1#2:#3\\{\ifx#1\epsfpercent \def\testit{#2}\ifx\testit\epsfbblit \epsfgrab #3 . . . \\% \epsffileokfalse \global\epsfbbfoundtrue \fi\else\ifx#1\par\else\epsffileokfalse\fi\fi}% % % Here we grab the values and stuff them in the appropriate definitions. % \def\epsfgrab #1 #2 #3 #4 #5\\{% \global\def\epsfllx{#1}\ifx\epsfllx\empty \epsfgrab #2 #3 #4 #5 .\\\else \global\def\epsflly{#2}% \global\def\epsfurx{#3}\global\def\epsfury{#4}\fi}% % % We default the epsfsize macro. % \def\epsfsize#1#2{\epsfxsize} % % Finally, another definition for compatibility with older macros. % \let\epsffile=\epsfbox ./Doc/Tutorial/gravity_cube_snaps.jpg0000664000175000017500000011207212176660653017543 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿÂX"ÿÄ  ÿÄÿÚ Ðíï_â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€:Ûö…þ„_áWø@þ„_áV·(b³¡Wøußõþ ÿ¿Â¯ð€+ü ÿ¿Þ)×ËÌ ôy\o¸ §ö®€"ÿ@üù÷É+f޲Ä:;º§‘¯¬›G&=8Ók¸ÿÚënÉ|Y¥´g_²!·Ðÿ@ÿ%oÕîN^'‡·ÛßLkùcœ@ýoð^öäM:Ù|M–M*Úÿ3˜§on(¿Ð_è€%ó×…Ö#ÇÕX?R~ùxù£Û“Ç©R÷ñwî±É×ï°Ãã®Ayoô/ð€7úßà¿Ð_è€x>pëµ0û®u؆t¬ÑrøÑmõËùñüŸ´•ªYvÎjÚ>'üŽßè_àx¯ŸÝz¯mœêüT€7úßà¿Ð_è€ëýƒã¯¼î£×ÊÒó›éû aö7»ßóbq¨WÆ€7ú—ø5ÏÅÏ™ÕãÏÃP¸nÞ–pcfÝϽ÷WþÊûŽ~¤daÀoô¿À1š˜¯ÔõµøhoI÷=HŠï,çà¸Ä€ßè/ô¿À×ûª»TS¼ –`€7ú—øðýO{}G؆>Gö×Çë…ó÷½ÚËq†îmôn{#ln2 è°ÿ@üð¬v]š°žŸýñ‘Ü®r?ûwî{îú·vIŸr6H8H ¿Ðÿ þ€%þ"wuÈÛßÏùûå‡t{+ü7j¬ÇÚañØ{¶ßè€c žùS§æîÖf ÕzÍú~#»“€æ«gýÜpìÓ™Ö›n6!€€7ú‹ýoðßè_àF)7Üà6æÚs7«B¥¨@ýoð=¼|û×r_÷cqmõ ¼ïcf#Û‹<ÒÓbñVÇ€€7ú‹ýoðßè_àoô¿À×%=ß €7ú‹ýoðßè_àoô¿À ¿Ý@·ü¿È/ò‹ü€"ÿ ¿È/ò‹ü€"ÿ ¿È/ôhÛõEþ@_äùEþ@_äùEþ@¿ÝPw¿È/ò‹ü€"ÿ ¿È/ò‹ü€"ÿ ¿È/ôi¹÷úßà.Ê3H¥¿7¤;*{ß/V5ø§¿a$²YH  þ€%þö“KaMŽþjm>obâ®~)‹J÷Pþ@Wðö“œ£‡>PÉ9ÖoáòÀH ÿ   þb¼Á9oÝŒGâæ`€7ú—øò`^=€ÿç3Óœ‹°# æÀþ@WðÅÙÍO`=SaŒÎ0WÄíXÔÏ_¸a +ü€0þ€7øoô/ð -3ÿ[-pâÖý¹óÇPÞÓó.lÊc/¯@Wù_À‡³ L²’ƜͿZÛ¶-.ôõjýç5ouçUÌ2}“†N@Wù` ýoð4_qúpàön½Ò“-cæÀ]g6“% ·éͽy87× øÀÿ@ÿOl¤¹*6ÿó±ùxy¿¶R_c0‡s†î)”:´v—Ø|pp¿È þ¦…ú¬Äú ÇäòxâÇÍüáù÷Ôvë‘Ü2ḵ'ÑÀ$¿Ðÿžur»ðZÕÿÎ/%Û߇‘÷çææC~Ͳ ?½BwÊ` þ€%þk/T¾éÒî?·ºôð{¯_êÿç?úzæð¸.ÞRêí)°9.0àH ÿ +øB™ñ°î÷äYÉ<~aá{¶µ–×Y6ofpð^G@H ÿ   þ¼²çgµs\vœàåÅOù|~^?žÊº™öýšóJ4P  €G{ÝB1E·¼?öwÿ¶½5k6!|XH ÿ +ø`{ÖRnœÿܳRc{«¬xÙmÂµÍØÁ;å@H ÿ   þÏï5fF·Üu¤‡¬–¦÷c&ýy{ 80^ÆÀ@ýKüùý SÚÂÐTµ$ü +ü€0þ€7øoô/ðþ@Wð€¯òÀúßà¿Ð¿À@Wù_À¿È_è€ÿ@ÿ _äH ÿ @Ûð4l·ì€ÿÄ- 08@7"#$ÿÚ…ásSÁ­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±Šƒ ÎtVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅAg:+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlbŒÆ†¡,ÁW;énä¥w5>¤f¤v—þàÇtqÁ, s¿¼Ž‡Œ™,Hº+¶ä·üŸ|¦ÁŽÓ±~Ƴa¥•Ú_P‡ ühr›ùÉÐÄ™N_@•œMËÁ\½`Ç}¶„ÛH™¹æ=dÒ:@ÑLÔ€uÆ¥ ÿÀ1X1Ý–K˜3Æ‹| <Ó\GíÞÈé!°ˆèDl ë•’$IñÊŸ|¦ÁŽË­ÖˆÊB–ä1¤çfºør2€§þc»“äÎ]¥–kÕ%îV0z6ÛLx¢È°c¿Àm^.§+iàŠëdµÞåZÌÖÓ(•`Çu} ' ~,гY„Ú9£+ñ&½#kÍ!¶Ú“UŽB«Ê‰õ>ùMƒ‡™¤(ȋ҄;‹üÙ¡«À¸½—@³Ç…mÖßoV z¸1êϾS`ÇZúÁvò£.¸dÓ£ `_q]tëÌßÇhÞcPàé߃t¶ëo·§=\õgß)°c¬É`œ¡]#ñ¬²ïÍâôéó™¼ þm4¾ãúÚ—˜ÇIŒÒAîœõpcÕŸ|¦ÁŽÅöX%“Œq“¦¿‚è€Á¼ mñ¬Ò •Ɔ Ô&‘>œíH§“¯$…ÔE”÷ Gc=Y÷Êlìš*TñiÊà³zþ×Ü'ó„&ºü÷ÃP‘©Ž¬ìÉÀ#–›Ñâ®üs_`` Ëæ£5äÅDÕ¢=x1Ú”¥Dx¹21˜ÛrQnÌûå6 v*x´ã™dÒªª¤% –e%uàÇbI“c$—»ÀÓÍ{A4н¶Ø Á‹pÌ«ñˆÈ«i.4¾¬ì»m†:sèë}K8tŠ”-‘ /ØŸ|¦ÁŽÙ²¥l±ËAo±ƒne#hÍ·ƒñÜÿ2&…î ADïÀƒ[íÐ`IJ¡é˜äf¨’°”¼C§; j$‘Ófi`y9BÿÐ,!,ùô°´M‘ê(Tœ¤ž®Kª}ò›=\ìOp]Æ,øo ÛuСhô Àh6þ×p Žoç"˧:Ì.L¼û1êì]1 M k´¼èâÝuÁ mö]Ì˱²³QÚ‚õFéŸ|¦ÁW;3Ô!¯-oÔ0¿–ûü¸ÚŠ54™ÎGŠŒc 0zpc­ìˆeÊÏw3—˜«ë®·i­–˜Ñ?‡ô³ó}ÁÝ f §À”‰Ó>ùMƒ® v²-iKBZ¸KŒˆ––¦äUŽâvœdV vŒ–óýV×"µ}m¼Žp–|…¬,=Æ~$µÅˆf6Ò4hôϾS`Ç«ƒ¹âùíe´Œ»Ý1LZŸ"õàÇeI4ŠÂ|·ŽŠÍ1o·úo¾àõ PŒŒ.>Ä$h}Sï”Ø1êàÇpƒM¬–£ØÁŽÜµ%ï°êR‚Høã )®}ò›=\õpc¸°Ìg¸Œö'ß)°cÕÁW=Y÷ÊlõpcÕÁV}ò›=\õpcÕŸ|¦ÁW=\õgß) È3±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1PdΊØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[¨WùÀÖØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[­ŒVÆ+c±ŠØÅlb¶1[¤È™e‹’X1ÝVw%#9)Ua%›1Ü”ûm»HÌ–óyh«•üÁŽï£q (¨’HOMQ&°œ½.Ç-•{/°K?Ì*ú³¼²áFoiKÎVºSVKd=/2pc»,µN •fd-aD©­ŒÿGË ®Až$LU÷X1Ý<Ü,s(y„â©•¸ˆîŠ£O®TÄrXŽèÁ«:P,jʯ«;ÙŽ  gÊÍ¡\j ¥ÆÉ”ç³éÎÎ6¨”»O/2pcºëaµ^ßï-:2T“‰¬'b4”Ú­Hù É¾°cº¯§*½9OR³i-U­Á…ìF[„›+GÜѺ»5†’ÊÒ°«êÎó᎘ýL3aŸ§$:Ñ]IM‰ì(:<,‚–zž^dàÇ«ƒÏΚöp«êÎɇÃ,¢™ceN‡Ùyy“ƒ® vç ñD¢³1øèe»£¹ I@믫;ùæ³)XqÎbÈNHéa™•â Š\GzÞ^dàÇ«ƒ©Ã ›nfíÚq.þYo…øáQžôn?º°«êÎÆW¹×­:…‚1ak„­-ðu;Ê3%÷Óë5ؘùlô¼¼ÉÁŽÉœˆÉ»Sd"ÁžÖ vf\‚\GåB×übè–ƒ¥¡þxîDqƪ­‚ ݧ ¾¬ìKkÊN—ßîòÁ`š—¶ûµÈÃ~¡ ŽÅ'ô¼¼ÉÁŽÂº¡DD££†1›oÂéÏ·š9TÜ‘–’ƒAË“Ö\‰”1šÁôUôG>œë> E(”ë:ï7`°ú ¨5ñ^TKoÁÔu³þ—B³ÌÙ'§ ¾¬ëÕ[±Q´Kþ## ˜OŒK+pqª6®ý¶Ûe½//2pc±<:Kµã-Û‹‰¯îñëx Ú&¶X9‹a… WÕ'§:æq×Ü|p1í1wÇûü¥¿œP¬´=l0Ÿ †ÃÔqŒÔ¨$)ôáWÕy^âPÑÎÁ„ aƒ}¡Š Åï]3©m4ÃÄqm ©åæN v2ÝPØ-ÏÅß=¿1{¿á´+Ki`k¨%µàÇV}í(ϧ; í'x'SÌ„'Çm¶ÔõÓQ.¿K5ƒ±ÚĽz°«êηÚ{µ9ÃuâèZû ‡B_xâh5‚ ðpÌ4Œy¿õ<¼ÉÁŽÆY¨ü¯ñu/ 7…ðiÌ^ÿÏþöè æ/ý)¼ŽU¼Óƒ™êþÍ÷+v ‹ø %c¸ÿ&¥·ºð«êι5kI)ìS["eЀ¶Ç^ýu«/·ù!Ô…u¹7­åæN v&ä¥Öü”1’ÃÞ0a\)‹¶ó?Ó­K´`§'.HX1ÚȘHcã–.iTä ¨ÇêŒ*ú³²¢ˆŒ¯s·cg2[¯ä6Â+°M»úÞ^dàÇeÕ°Ê. QŒÕDPãÜ«3"i‡;eÔÒ;‰ßÐnFêÁŽÖºi®„!µ-o³…_Vz/2pcÕÁW ¾¬õ^dàÇ«ƒ®}Yê<¼ÉÁW=\*ú³Ôyy“ƒ® z¸Uõg¨òó'=\õp«êÏQåæN z¸1êáWÕž£ËÌœõpcÕ¯«=G—™1K'áúã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìšã,É®2Ìš ä $kŸ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¢÷nCÄÈýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”ÕÏܦ®~å5s÷)«Ÿ¹M\ýÊjçîSW?rš¹û”Õ 1H™ÿÄ5!" 1A#02@$Baq34CPQ`pÿÚ?ÿ²)L{”¬Ú昭JX‘±Œ2¬$ŒÌ¦Dbd¦b"7øÒÞRfŸqê÷Y™Ê)*‹^ÓýW#ÌÀ"Ü̉°£ZãôÊG’ɺŸMd´ž^Æ(DûX¹ä—®~ÌY~}wõ‰üLÿp˜BFe#r"†#ýfghøðãÃ¥éôÙÎg(…ìª*9…HÜ…ŽE‹:–Ôñ“)»¼nP½Ž¼DŒOg´×Õ¥0©ä¸S¥Ž²®bË~ãxó\ÞRÎcÊH„{eÿÃÔÚ_¨±‰ÊÆã^³lQm ,+Uò–¬˜.¥‹G rÚ²¯Ø0Á3S>ÐE©ô¾WIe‹Ê ÔÅ‘t¶GeÙTm³;ïÄ‚L ˆ•%_‰Ÿíý½cÒcí?ø™©§55†ªœËje[d/±êj*d˜ÙÆFb׋ç .6` çÛÜÅÙ󌕾ÎK)Ch®æ ÀjÚ«h‡HÊ Ñ[ „C2+ö-‚p°Šö‰!”[·Z½¦¶Æ}Œpµ\©L§$¹TƒS0ÄÊX#ËŒ‰UñjÞš«§YG1YÈÜ+¶qU„ì²­ò‘¯óFXè³]HI)h4ÝÒaŸ×V­‹¶VªÖbµ,#r")Ú?Ú?$S°ŒnE13ñª´fFÚULÝ`Q=@Ô¹ ‡×>C! šûÀ¢'üÃÈ& §111;LzÄǤÄÇæ><3ñ-7Ó[KêkR‹ &ü¿' nDÈ BóŠb9Ì -md€¸D˜6` š×ZÒÑt n©’ºôÚ¯¦kð¯a$ ‚§“*—õÔ)æÈˆcBGx>Õc1’Ïälå²ÖJÝûe÷”ò˜ˆˆˆ®;Y H¥F»m[²ÈR+ %k ì ë3ùÿH‰™Ú"~<>Ðô}q½±QÙÛtÊÃZ³k&­FŠVx"G”Z{aë+±Á`ð_¨í9Ì&+5޳ˆÊ¦º(^yµ‚ºï±•ÂSFe#ÍKåÅŠaAÁyÄk-–Ñ·…’ß%haØë¤FÂ9 0bg¥ãÃ{LÈ‘%úþÂRÛ !L{šP J@˜ÖzÂ$Œ¦~Â13?Š~W~œ¯Y¯!ÕvÜLVAn#Áˆy~ñ¥$B¾FÄ^k od „ª3XLŽóqù$õ9r\Hgš^¸)uvǵŠ>3Æciâb'1û13´Ç¬LzLL~câöBþMÑc#zÝ÷ŠÁ"û¶]i°¥ïÁpÇ™œ,7ž!¿Þf#ÖcÂlþÃfM9ÚÀ£ºjyØ…•œYˆ´x ¼Ñ,ûbÈ=eÈÚPÃË¿%òî4qõÑw¥÷wó#h%üb7ä¹þ ôLwdŽðÿ-ó)¼^~ÍÎOm ˆO‘xñ`©§¡S ý»úJÙ™Âbu&5´ò•’¬~FʦäÇeq EYhš`âeØlê˜9ƒ¶‰$œ,uŽ—~’Í7×…•ÂÕ;í'RqC¿ºšBOãbBª"fvYŸHˆûÌüxUáü⪞ªÉ¥ß6ò¦x°evàÒʃfúZ"36–ÂãÈYÒ¨–q˜`²½‰òõ­´«áë͇ãšçW[]}L"„®ÌIö0NyL0ɧ©ôÎ/UcÙK0†Ü têU¡‘…#Ä_°æ¨ûžÁ—êíŸÔ®Î6S<`çZhl¦Ž¾ä¿k¸îóMl¥x“¬Ù^¦{Ub}Ë)÷m$¾C·ô¼2ñ3Ê•m3¨^*¦æ¡Tó½$ëôD&zêË`àá'¼¡Màé\%5ç’x~ŒÀ¦+źµè¡ALÙk'DÛ uÚ¼ŠI„ á£3 SÄ«hðlÑ9½¨ïV9–z屉â–/1Qd“C¡¥cË2dvgY ›vìÞ°ÛVÜo{ŠLÍ„E>³3´r™ØG}„cÐchO©L4µn\ìÅ0÷ØÀ †ü˜ â•=K Çj?1Yfå=I#VqérŸ]ýM¸‰­0 Ñ`"LÝʨÚÌ‹û9;xº²º•믨‚µŠv ýÛkï¿.KIî=`¡)jìù:H³*¢¦ÙÜ›]µQš&{ •"h×ã2rÆ."|XÕ8ü ºzÀW»–¿6ɘG F®,nöJòÉ}P¨’«}ÁÔJ1þ¦œño/ƒÁÜÅØLännœUÏ)µ…8‚€%Ë!œÁ<¢VÇÙÉ%Æ/]·’·býç²ÕËm'X°ÙÝiÎäE?oöˆˆˆ b""?b&bbbf&'x˜ô˜˜ûLOâcãAø¨ Ákµ”Y`Y ̈D& ±`¤˜K˜dĤú«Zc4ÞrÎjí;']IÂÓªišW—E‡×_)^¹q‘‘('rL¬¥^èýÊå.æoÙÉ_qºÍ– LÌàJdR®dR TO/}€""?¿&d"$dBÀ ”È„O¬ÀÄÎüýöÛýüÔÕÀËÀ† I O؆f#ÏâcxŸêéÝ9‘ԹѠ–JåÉ—zÈ«ck´ø»lö‚Ô°ƒ8‚1&ð^çéñ‡Ð:cn>ÕJ×êKÍg«Y¬lÈ —$"µ7~™8Xô·µ´$ˆæL|BÐWtVOŽÝ¸»±æh4O¸†‘Jk\`ŒØ€I‰‘t æxœ×£ð/Ôº“‡®(3³h$ÂÃ:”hOë<$¿–æ1tÌþ#r‡a1ùlÄÎr‹º¬Ä©ë³vбMY½AeÌRÑ]¡Úi%µ¶Âóe|·ƒšVû,Ù¥m¸I³Qù }T[]äíÇü=SIV!»µÁæN#õElà©(ÖZ 7¢l)Y8KÐñ«µ Y^XkìòæR1Áâþ°Aî-‹×ឆ¡¬Ûš•‹õWNy&SO`³"ò.¥p8„$ºý9"’þ.øé÷bu7qÆù÷*ê‰F¶o<ªò\ÌËCuÁ ¤J&w˜à~2>kŒw9ùbï éÆ@Ê…·I–D6A½,õ뙀€“â8ï¼FG —Ä”Ov!³]‹ß„‰ð(.%Çbö™¯Kil–«É×ÇRŽ¥±¢·ääéÁ{b8Ä”ì ÁO§¦ógLâôŽ,jÐSh…”ZÆeò©:Ö>{‘¯=i æL¢ÄÀ.+í‘G³v|L8,ì¬é[E;L] öqèKk@¤ˆUgi@11¸Äí`} ö+’ÆÅ ôñï£z¡T1\YI…ªö¢¢ry%€”Á¬Í¦¹l¬pQÏ·n½q¥'Hg_Œ #z§©Ô¸1Ƹ)·ŸrY²˜¦c¾ñW‚85˜fõ”ã,¦¼«‘¸d/¬çõ±·Æ9GRÚ¹öH™ÄA¯ŽòUཇ4I%pô²BÓ¦x ؆ºªÌfÀ:»z½Ç0ÃÜ8Â^sñ-ü·…—²Å¼{R4¨më$´’nr¯¢‘È”O0?³\ü®T µóqëná]Cêת+ûñk {F%0¨I$½>¿¨ ;9r0ïæÍJŠWÂ.v*¹V­M²XÃMüœE, `ï1^Le1Æh¦ÑÍVÞ›3‘ÇK«/(^â®.OTYsÄŒâHÙ¼”œD«[|¢z ¡Õ¯6êèäIOeXŸù+œŠºëBLÇ¢§3˜k –¶‘xÕ§HbÐm´nÌ:´ÀÚ¬‰_“¡Íµ¼½ T:eBÈ–3và È"J6ú¼-תÓM~ (R<µ•9îZë‘¢Êà`e²øØª7­BáæF'ÝfP$x:²ý{bdxá|͵)ËDØíù…ÔíúË AW‘öZà”#!˜ËÝÎ_}û¬’cŽHWrªá´%D\°õÞ`bNH·ŸØÁë A§¸:ûb¨KÈ´”Ê]É0C÷˜öìÁƒþ^¿_H|ªó¸æ—Yè·¦!Ö —bÎÊêxŽÜO¤M±;°b7á?»]bni¹ˆÉиI¤8Ï,ã öYe¥ÒÒšœ¦Í5ŽY´BJY%EÝû {«ŸbÔ3bİ–|J8”r ‚Ø¢v(ßiIø§¬µ=>[3pxý¤È\_çäÜ&s?¨{L–ñ¿¤Ç§Æ?Æ[V!væ¶B¿pYbØ$¶:Ê}ÕÜ×nÉa%°£Ø‚`… ©öDDjÍKkWg-çn)h}¸\•ü¬ #iâ?øüÆÿ‰™ûþͻׯ’ÎõËWMK¨íØm‚Z‡ø©dã9ŽóÄaý#ÿˆÿÄ< !"1AQ#02Bq @Rab¡ÁáðCP`pr‘’±ÑÿÚ?ÿr3˜…U³@¹$žÀyŸïhdµFŒiàfçgDêQw/ y}À ‚{ŽÄ ¶~5–î̧ÐýzÖ’$ìçíãŒqs«dÓi¥1@Ò(æ…cø‹HŒ»_ý[7Ûpr݇2"ÆBd˜¨}:¤.Ç–ÄPòˆßæÑkfÒj9ðwgT”K(ð"dDJCì P#øÑk`×À³ÀÁ%½Ðúï£]U·ëxÏåÖh’¿^æ ¤4ªÝe_wWºXQX‚œ±jÁ,ÁœÊ ëGŒ†[È o¹"ˆ«9¦G©‘ÑUt -5©Ë(Ú¶Í’®óà1ëV%Ó»,QˆÓP£¡Ÿ &HÅÚꊅùßoÎ;°UQdŸ!þ¿ïãCÄt¼EôÎN$†V°þkÐùñÛô¼kƒ4LúÝd‡lq„m,Kéæ@¼I$ ,Ãdâ2ŽYc jÈÚ×·CgÞBPãrjµO¥0ÓéáÒÂ@‚8£ª,ÿyÜ“ê<’$HÒHÊ‘ ¶v4ª=IñŸ¬œAŒQ#®•$ ªBŒä[#UŸÔŠ ž_jÜ÷ñ¥ÔϦ™53¼±¨PKªÁ¨,Ý@ ¦5`€w­©«ÇâPq‹F؇£ðaÞԧɇ¨€Ìª 1  Yf =I;âOiuŽáAÐÆ 4E@ÔÞx™(@Ÿ”`^^4Ú˜µQ,°¶J{ŽÌ¦¯L?Ì7øqÅ+„1ÇÙlcEEÈ÷4  >gàqí&³S§ ¥rÂ0ÆM.øN ]Ø.õ¢»éw7’Ã͹%g÷s± R–[)ä|Èó½¿n|žPå$t«!êæ)Û%’Ûún4ú™ôs,;4±#X”,†g M_1 2ÚÉ^Ùnx~µuúa:©B Iý2(~ /¿öy~~9Åyî40²ò3b@eÕÆB‘2“X/q“mg·x†ÍÑJ—mCâ³VÅb"²)µ/c]†#E­ŸC(—NË’IXK¢$U#bë³ èo/7‰ÁÄbV_w6!žÙÇõ€ú’üÇØïú>5Áy™ë4‹”ЬdÒåŒR“ÝñªÈVDZƒYŸÍ}BÛ<¤f2ÊÖ'¡L„Šåt~eñ¸Cñ¼ÁÊÑÄr˜&KœÍÔžB:ÐLÍ<¬ñiE ª(+ýSçùˆ žÌ?c±ñÄøš<¦Ò6ÈR¥©´ÊÊQÙvîluïgfC±'LÆRîFc.’%zÝ¿böåˆÄ§2VK‘•1®Úpj7Š–½¨þ8†]V¤jÔ¼zx¹u©V·œÅÂàÕ_v8öØØ`I¬àju1ÎÉŒ¾Z¨F‘µƒUE«sëÔ)¼GpÆ‘D¡#B¢¯eËàñNI:® J¿N0ž¬²Eì÷[Q»øÐðÙµš®B©E…Ëjd72# Ð3‹»£æ±Öñé¢HbP¨€ €êƪٻ±ó?¯ ,€,÷þ~ÿñø`nˆ5±£t}§éušÈtP´²°¼[—ÓÌàXHÇrI¡°8ݼj8¦·UªYRG‰éeÓi]Š ‘ó]YÉi‡}¶ñÂx¤|Jí<}©äÀ ž0wÂÿñº>_ˆj—E£ŸPùˆh¨È†n•5ü1ÿËÂêeŠA?âfŽP ‰ÙJG!HV(ªÅM'ºƒû@x=¢×D$ŒjptŠWd17õœ0rnNé±m^8wÓq$f‡%e'(äô fšÞ×ëßËàq®'/]1…bs$‡˜$j¨V²a¸õ«ò;yø‹Ú…ÿo£‘nnR´fÁSÑúNûåÿßñþ5{ã2r€• Ü›tØÈy÷ºñ§O¨Þ£–®ð`H®ö;нÿ>»]†–N¢•‰HæI_´gËÆ·[?Ÿ9XHQ’m< ? n׆ °èÜÙ8ÛoÓ㤡T"HÊóL®’»+Û­‚ ÿŸðŠyá››’¬±È^ 2fÐÂMl@ãa…m]øf»úCJ³åIÚHÎøš°~Ì7ŸÚ]IM£F™òŒ`bê¶6½ºˆ=ì ¶7à5n¹uê$„¨‘Š’r: ºå°Øoy(ñòîyÖŠ©¡Œ’ûÛ4Ê*˜šÇöWz#Ùý=g©$’ðæÆîÞíÙÉõ8‹Äõem¸øÓJdÖr,˜1æDytÎýà¶&‚ÒÕX?P6üÖK÷‹™±súʶEH`;UÕŸXfÙV/Ædˆ2‡ÛÞGó,T”7¢w"½›‹.!;têû£µó%Ä>hN;Õì:h?ám¬ ª€^¦eU%é÷ÇÎ,•Øïå°ñEmJ»š:j€%_š®·ËVÛt\…w^¯56ìØsU¹¯1ÔI»* úJý·£Ã¸lšÉq ¼´e‘ U‡”/_ïzqc‘(v«#M¦‹IŠ!°îƲcêÄf¶lóñMCêµÚ’É:”iù3ÉË #Iت|Îç+ñyoïp-š4­ÈXZ0q·²’1ï$›» âïÞ3¼Ž¨O%™úJâl¿k¢hÙÊôò4Gç†mµuHLŒ+¾ÌÄuumÔK_ÀâbWâS;E8^s“LY*5T@Ë]¤òPk¨ ð½\ Ì5“1,xIÉý™ ˜uv ö¡ánX^òFñ\2Ë «…;±íö ÞÎÞËÅZyæ*Ê]ÑiƒÔh'÷dz¯ÖþàË2ɪÓF9†¿¯TÑ‚Y±6kÄЮ×åG†ðÙuò£:ô!*[äÆßI³EêÆ&Íœ‰ØÞŸOš%Š1AE¶L|ÙˆîI$ÿnÔ>§‡é5ve‰s jÐcÛªÛpvÛ·O²Ã¬éf€Ê2éZ*Y/ñ•#ëã‡ð¹ã׈õÉi Ù¨.¡È{Ï‘@)šº¢@Çà2«Še =6í±ñ'ÑKóéã?aˆòòZCËľÎhxó‰±(¢æU]«!c¾Å‰ïãA¢M™4±’Ê—E»›7ê~ E@ˆ£HÈDTrqÏóßþHÿÄW  !7"1†¦Ææ 02@AQv#Ba§¶Õ×$‡•´·&Rq%3CEbce‘–r±5St‚’—µÔÖÿÚ?¾S§_)‰´‰©s&K¥’ðʬJ¼$¬šD™2 Y§$!iÏ)ŒWÊ$¢JsÞæ9Фâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖ½Ú“&ùý‰Ëo,r¿üÞ—³ìü—ÿ[¯ÿUªùÎ(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]kÑý¨ù7òo‘?Øœ±¶òÇ+ÿÍé{>ÏÉñõºÿõZ¯œâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖÑ=ç‘W-F±sª/©F‚J ±zePgS!Tê,y0¢È ¼d4râÎ4CGQgÖéG©=îõ](õ'½Þ~õÝ8­–•KœÊ*Î(˜È®KÇDê~ÈT+že@Æ&ÑœBÕ¿*7X‹ŠXµ;ÇQÞÔÍIŽhŽ­TVL†ÆiÔóÉŒù<õsžüÍ„„kDõOÓ¥¤÷»ÎšL“ ¥¾”6¸1ç8k("rI’Š1•¬TdTù׿¸0cZŽ9µù“toW¼nãoØO•ѥƵ廎~Üè²D°ÈÉ8ÈTkr¾ýÐi{Çt§QêôÎ[¹z¤:½îIMCÇ}Ø— òÉõhéµÈ¥?!ÛÌZ¶:ÚQêO{¼íþY榗ä•t»HäPǧžD˜™&@uuÂ,‘¯dÑ l Ç£®[•|/?,]J Úw$ܺw‘`¥Ý¡ê¨Îù@.ª$Mgê2«ZÊ”ìÒ3L•³;THPé—ºò”µû•{.ä71…”c]£ÓâJ¸ís"ŒÎñ4ÅhÔ`+™S‹Ë—†¾éšEòï%I*RÄò_gEÙ£=€Œ(ð˜Èl ã-cLIé*Úï=TtË·D®So-q’œRê°húãr]eò^À¥(² sª£MTTUµ ûܺêÍ¡]êÝ.¯xÒ•ÈïÛê;3iP©pÒ*4ê9@ù­¬3#˜{F:2V´‰K¹7ØÕ÷GÿÂëåt‰v‹*®Ž8¯q)ƨÔḑ#dAŸ£!²%qÒ+Xô?èЯîçú‹Y¶”z“Þï32ñ^ /M…«G¸@,“Ç#C8¹ï)Ìö ¸åñRœ¡V°œ¢*TvGv¨õ%-(k7(?,G¼ɳãšYK­)ÈÍ–3ͪŒ‘d9:3ëƒs"sr«yÊŽÞŽGµéÑЖq/¥IOwå:ïU¦”#eÝ PŧÉ"‹Zj|Ü#DŽSR–ñ6HbÃýêñÀŸH ÚÒ .…|±HÙwåÝê F™ M,ŠEF‡5î—,rsÔ‰ª[Î…)¢‘Ž$ÿôhçòòÕ‹ï£Ù7`…½TŠe6òQï[ê±¢ºe *EfÊLi†qCCáž@!”mG6XÞ@»•Ë»Xª-^ðW/Å:õÓÉòjúT/16™e2Æ:}=ir¼–¡XQ¦3„OB׺£Sù?Eí«D¨üœº“êÐ[ a#iƒ”8ä|™øm#ìqS#2­b'èÒR{Ýçþ]6šñ^—‘ÍQJ«rÄ(…€ŸMáÒªC1Ë6 ÊÊà½ÜËK»×Š(Ñç:#åDÚ%ÄÖº Øõ«´AKÇe6‡6:òèýEF l°êîÕéjU¤…´ä~Ý0ÎÃ\ö‚<|Çt‚N¥¾ð¸åŒøJµò¾†>¥å ’à®ÔáˆÙÀ<²†Ic5‚aš#„~‘yKÓ¸‚¹\±ôj¯«¼¥ÊW·]²ì{ìºí©qÕ"Råé ¨¿¤½°VUÌ6¨Ñó¾‡t§SGUƒ±‘!Í’ùõ•"ˆ.•5mUâÒu>ñÑÄÓ¤Š<{„I àqÕµ W&:G:ŒêÖÇ~µ£Ô®D~dÔ¬é.¥V¸"«G©%u ‹ÄðD©%V54×ÌÓ‰,€–±»G'6rÆnÌ’Z.oèЯîçú‹Y¶”z“Þï0êµä«C£ÓЈ‘0¹5Ò±¢‰3\§ˆ&#"ÅdsžÄèLrª£šÿr;èó°Ý‹Àáç:#UèˆÞr¹Ùs¦+ЮÇëOm›Âk˜µ¯Ç2aŽ;ðèv]ÿÝÇÛÑŒk›}å —Ta”´ºÂG—&m:aå Í‹5Ì9‘‘–á¼Pžx†pÚ÷,5UŠ×±Èæ¹ÍsU®j¦(æªnTTÞŠ›•<­(õ'½Þ«¥¤÷»Õt+û¹þ¢Öm¥¤÷»Ë‘PÚhÒÀXÒÿ@ ;"ßî¼nsWê[ô݈Šë%ÑÇ*:ÈyBšg$qÎ’B´é@²<‡‘ïÈ‘é¦l’56|Ï&TéLøåzîÅpEà 1LËmd`«ò7ž›™ŽdݽÛñÃznÞ‹¿ QlùsD­æz9—ïs‹‘0G. ƒQʭůʶyˆõB1îÁ1ÜÕo775qÞ»Óé`›¬<VfW#SŸCŸÑЧJ&ö;š¸*Yì”íf­‰‘ÎLœª«ÑÍÌ ÍÃëU¥èÞ°#M¥U*†Bª’L‚šbÆfÍJlw´¨êQ$$}K„¤Ì#ŸŒluN”z“ÞïUÒR{ÝêºýÜÿQk6ÒR{Ýæ25¤æ=j9c“5Í\QÍr.jîTܶy®ãšK–I,tˆª¢iîÚÌ–2ëH™N$©,‚id®f#²ífæ9†éE]íTMê8û9¾Ïðèt–™0v%p²¦ÍÎÃ7¥›nd_gEšV?õœZÜ\¸®eÜæ9]†®)‡ÍúMÁÈ‹f ÍŠ&öåVû×tóqèÝìUK::\º…HÞŒäÔ% ›«Xó½÷±›‡þ‘íboVãw¯mTU7¸”ˆÒ=MXÑP$ΆšðFY81!œ“ ‚v¹ƒÊ¸‘ÞN”z“Þï5S—2©IelT™“hôI“ã†]RHÄTˆÁÄS2Q#SE0Z¸&v±TÙX¤}‹òŽïÍÎÕ¥Ó ÒiÇ£©d0©"𿯧2,t,vC©Ôq3¢҉Ä-2»J>ÓM«BP„l2«$M+3±yÂ+QÙ à@•¯¯c‘<Æ”z“ÞïUЯîçú‹Y¶”z“Þï2xscdI#pdÅ”È /L¯ÀV¼EÓs˜ö¹®MÊ–uë»QeÍ»S¤Í,ø¢ˆ7²ë8Ža„<ÀçrI^SŠ!]ƒ€ÀG‡ ä)@C;+K¨Ö¢/J#3`aŠ90jb©½7 ñÓ?þõ‚ÁUíÁzQ½8?+¹Þï}™ •DªÆ±[ó„#ò·W«EÎ;‘Qª¬V£‘mP®U*L©ÞIñËKGÂÎ:\Z;ÍV¨b0[ “ *#Hy~«TÐ b°Æ‘åiG©=îó2ï!a:¤f<(0ZTŽÙe+M)òB5„)^ÑùF­cÎL'×ë­†ÊM±#½´ÖÉe>aCD AÌ“8±ójTÅÈz,©NÜŽ~FŒf&púX•êåk½¦.\¨Ü¹ý˜ªûpÝfÄ:šUʪ™¯¬Â%ðˆ£ ™V¥ ²Hi2T~lï› Çb=R‘>%N-®tiÐ$ TS£á?Vp¹ãrŒ¬xˆˆ¸Œ¬xÞ{Ôòô£Ôž÷y¨r§C“T©Õ(TzTg°Q!ˆd9eK"="B ž0Ìq‚YÚù!ÕÄ2gÈ£Z%á å‘wfΈYdF‰¦|ªZµÂ=JœÌ\ÇÊØâdõñBÅ Ëæt+û¹þ¢Öm¥¤÷»ÍØÀ™PITIAˆÒc™ªÂ€à+^#¬UaF¹j«\Š‹išê0ónÌés 2¡½ëu³†rŒ†y©D&ÔÖÊ0cœÖE‹ Ç!ÆWS©T˜î©Ôª†dHpÑñÀ¯9w¢!d y¼÷˜ŒcZ™ÞDklúí¦Q§^ª„ Nk  òÝ­—Z0FƒSU“šCÚä“*D-ˆg$v:K"ŽQ|½(õ'½Þb=F°)s$O1#S)+*aÆ=cÜ®9B Da$© ¯pµÃÕ€äsDêÝr¥6¢öH©Ï‘M…>i¤:‘O,¹ƒOŽ™µA8Æ@µ#5ƒ^{Ñ>qʨ _Î90k··*§9ª¨ŠŽçcýî•èE[~´ÄÅÍFËÏUé\¹°Å]Ò¿_³r`…v¥Ê'9pWnÕ¦æ¢`¸¿.î„o7Žœ5SvºÝÔƒ¨ž\´–¬³È,ê# ®ùåÉ4˜`Õì%•†@K·CŸ§J¨ KlgfZ׸DMèBaV°ÑÎ2ÌaFö'•¥¤÷»Ì¶«zjÁ¤Â!Ù/x¤É1Îýè(ðáLÉF¢š€T&¸¥È6¹Èá­Ê«Kbà ª§S†f„Oe>˜$dmÈCº0„Y$ŽÃÌ|ƒæ#…T‰2D :@ÏTgêMá\à ž5͇9QZìZDÅÕjå´;Ÿ~Hu}[£À½ÁÄ®KI ÐÁ˜Å)µÇs>B‚¥ /lódD/ÌhW÷sýE¬ÛJ=Iïw›“ `&$À,¨Æj<2#H„pŽÜñ”OsÕÜæ¹QmðÐhe‹S†‡H%-Z­1ÒLRC>¤R晎RF1‡šBíB¿#›»1¥¤÷»Ë¼z|NPŸJ¢UjP #Hõ›. É QLí¤Â`r‰ŽÏƒ6‹2ñU_V‘R$h0 S5/(£²Îù*)ïTj+НW9BÁ¦ÅÑ~(­Á\ŽL1MÉ‚ãa¬¥Î\2à˜µÛ·;eŸïè²ïFêÛ™0Dßô3"ûÒúÛ¹q²ÃnUèF‘Wëà =¯DÞ»Óß²Ì ó/\7`™9Ø*®g9«†’*t⩺åM)êW:s¿[§!†‹H‘&d-¢ðGýFdéo‹ Rê@ S\}b¹!­ƒT¢TaUiÒ3jfÓäŠTw«¬#¡sš„á˜KV¸dk^×5<(õ'½Þb¡W©#S©P¥TgÉV‰>L£¨ÂÂè ïÈ!¼ŽËƒç*%©ÓJu2™EeB=0%–Ù&#'>3ÎÄŽ6†I™;‹1£˜ª7èhåĤô“ÓRÿÕzZŠªˆ=ìó½uˆç»‹0èúá‚¢'J.)ﳘ᪹z†V½W 7àŒE_îûù¨BÒ<ƒÔ©%3µwªA¤K¨Ò³X qâÓåή0óZ!²Cˆ“"¤‡«Ý$ •*tJ•>SUñ§@)qÖ½ÃrŠ@ñ)ñ»+—)æ;5SËЯîçú‹Y¶”z“ÞïUÒR{Ýæ }4KÆ¡˜I[»T¨FÌ¡5µŠlXˆ2¦Õ$ÈbIPk$jÉ"#f¤·»·6°Oæ¢*ªçnUç#Ñws·îÈ»‘2¸ƒQ³T›—œ«Š·{W¡0èÅ:qOfÌãÈöª·s²à­DÅS øfÌ­÷"ûóX­"fz¹Ø90ÌäoC‘[¿21¹•SÝŸë³1Iô²kt{·s²ôãõá†ô±žÖ磋S>UF¢¹7z-ÃÛ©WZM>î^ŠöÊK®t"–#ÏÀp“[c¤0mêG>'&´Î [!¢8|(õ'½ÞYåË8bÅŠÈ“&AXñãŠCæ"´b†×¥#šÁ±ªç*"*Ù”{«\©%ÔO,IlŒãA…[«’t¡H{ˆ"áT¦lƒ±kš£Md“ jÓfQ! óX¢®G+råç{q\©ïÌŠˆ›ÕwØ 3.*®ðç&ÔO­wcíöÛs59¿:&|s.“­Qq÷*{í²jÑ܉›F®Uj.EÞì}©ÍÝíÂÁd‚â<Þ’.\©›~ÔL0ïÑb°òª×LŠ1Ï¡¼’%6 RMI%Ýøë248uGkL ¬‰0„{ee{Û( ®ÝÙãË«& ‰"¦°d,ññÖDš”n ‚êÈ#IÁ)< þ›iG©=îõ](õ'½Þfeø¸ðÑÜÂ̼Wv6Ц}tdÛ¨ø±HÂ|™UXÄ0QÈ<1šYž'µ!cеuˆ-Ȩ‰»Ù—7»”éèL3g]~IpċЫ›“z®-\_m’8†¨l‰ƒrô`ЍåÁ:zœ˜ô¦6dR1ŒWaÒ«ƒ‘¼åË—Ù¹qʼîoµREß»¦ÕªA€Z™ÙTè-d,BIP• +ó#1DǸ®Ög`ÜÖ“%!‚£RÃyÒ5r°ëåȘñ„•! vm<žé£Ä@f `@åŽ×1¨ß'J=Iïw—z.ü#0+T µ2LR†;eL‚`GÚˆ͆¦{/V=Ñ”­AW*’ƒ|a² ÄÕ S$¢Ë§ë5…߃XÒ2$†Gš6¢$ˆÑß̰ÞGÑš¯D"®åOA¹Ñ=-þÌ«»¡W fˆÔ{Xœö"aé'K:ìçó‘}›Ìr S™†üqNvönWoÃÎäÛA­G¹QØïjînaû“›ûzaV}_?/¡ÎL‹zQU»—2aŽäéÞUŒ=`‘­EFàœïn\r· 3oÇnÜ.Ý:ìÉšXõZÜt®ÑXs--ô_ôuy󡩃%SiûD˜ÒÕTŒ¢ѬH²< þ›iG©=îõ](õ'½Þj~î|†\FϪ^ê{N\'U²WˆÃ•cÆ4&$© T9!ÄãfÒ'¤µ•ƒŸ‹›¹UìjµQ3û¹“ ËŽ\0T ˜(Õ]‹·&äV*oÁpçîr"¦)‡¿´j\BÏ®Ì#O§EÁLòdqüïÈ4k2„"´! JC=­c•³y“¥N¨älʵ\á“Q(ç¼Ñ£CˆÂqì‘¢ÇvGJyÜ(ü­(õ'½Þ`×~òDt˜o"IŽP‘A.ŸÎ÷ PC”‘çDl°V²m1ß¿£>^8"À»×z"ÕjÕWpâkãÆs”0ʧ–PÇ`Å1Œ÷­Á£\39Q,Êl’ŽMn©%kðLkE:Lh¢u69QÏy¡Ó› œäI%CÍh#m;8ü þ›iG©=îõ](õ'½Þn¡}n,síD%^±zéK5ÆÚÜU=NUV˜ÉhSmN*ÉÚ)¡‘ª2:3)pÂñr(·fvÆV3€ó™ªfG1¥JAkåÙ£G)2#ÚçåÕ¦.VÚLO5Z§S;$ÕêdÊ) q‡ºCbz·9Ìb8…!r¨‚/J=Iïw™›I©ÆÊuJ)áMŠ\ur"É„a;*µÉŽTÌÇ5íô˜æ¹mR½7QR¹°’,‡RµóeÞ`Ôz¹ÆP¤MTÚ\Rá(’v§J‹ï$€ìФMW$DÁ½Û܃z¹râÕNØ®-Ü®MéÎU°ã´oaá¢àÝìʻ׌7.ó]Ñ¿9F²5‹€ÃD! DÞÖ£YÏÇrdG+°Ãu©wƳN©Ç¾õ82Û"=Yù9‰¦ÔGOÔðäȧ æíÛDðòc!# †åèW÷sýE¬ÛJ=IïwªéG©=îó‡¬S.ÕW•¯Új(Ôè•;QPÒuócÇ“mjúÂ;ZTB3“3¥¤÷»Í̼º2)òØÙ³jWTŽ“°Ëc"b¶ìŒ’øsÍ!­‹‹€©C‘ IT £E¯À©QªhŒ*ũ‘M˜Á»k¶i£ns\Ôr³`ïjn£éBòÈ$cj%ìтӨ ѧҋ>´ÉQÓ›.ÖU,1æ><ˆóK#lÍòô+û¹þ¢Öm¥¤÷»Õt£Ôž÷z®”z“Þï8É·‚ê]ºäÁÇlAˬPé•9,ŠÂ¬ŒÃÍŠb¶; s¡GjÚB•èÜÄr¯˜Ð¯îçú‹Y¶”z“ÞïUÒR{ÝêºQêO{½WB¿»Ÿê-fÚQêO{½WJ=IïwªéG©=îõ] þ›iG©=îõ](õ'½Þ«¥¤÷»Õt+û¹þ¢Öm¥¤÷»Õt£Ôž÷z®”z“ÞïUЯîçú‹YµèþÔ|›ù7ÈŸìNXÛyc•ÿæô½Ÿgä¿øúÝú­WÎqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âë^íGÉ¿“|‰þÄå·–9_þoKÙö~Kÿ­×ÿªÕ|ç{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.·{âëqG±>.´ûËòËäîÃx%P¶/“¼­­Ù©Ô©ûVÑ˔̙ùOU©Ô;.§>µÚÌŒâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖâb|]n(ö'ÅÖ¹W3äVÝO¼÷J¿¨h CRc¼Uz„@Ê› DM¼W('IY2©Rc«7õ6éG©=îó·JëKlµ©ß7×HP‰ŒÕ»ôÞU¶JÇ6àdµ…æ»"s¿Cꪜ Dî|Ê”°BŒÕÊçåSIxÇ›#änlÊr¢n[S¯U²›Kªí›&Ú!†C™ |ªsˆá ÇkXRÄyCó™õ/‘‚"¸Lª^züš—Iާ;“+ŒWbŒX£s˜…—,Îx¢ÎÔ!ˆÄW1¸¹(wŽä ~M­C¶’‡«3£ŽKS‰’#±¦hŽa´ˆäaHÜ¿£J=IïwK©·3å ¨Î¼)MÈmbÑ™9”×NÖêö|‰4ŒMv»2æÕäç~‰µZ”çӢÈ:QqÕÇ‹N1Ìü]”ccœ¨ÔW.5pKSêÔãmú¤(µ25e¾Ð2LcjŽÁ˜zÀ‘Õ˜c+1ÊF5È­BЫwž,*”m›nE©JLÛ0Ù¹b¡Šu\ŽkÙÊ’¢bÇ4žƒ‘ÊÒ Í ÈÖ½c‘Ì{˜µÍrbŽk‘QZä\7§é¯üTû»u|ý-k3™+Uš}Þ¦gaŸµÖj®{ Af¤dÈù.cѯ.@·œ#?Dªåà©E¤Ò¡5®“6[òy܃¥ä)HæŒ!^c͘÷¹Òi×v¸Ùu`l£Óe@ªQê)îF$¶@­B§Ë4LÎcv €Gh¤E#1ý'ø£üŽ’í¥¤÷»Îè4uº%:¨:«tO©2lf³aRnÁêtزÉóƒP’y‘˜íÃ9^Fïuª´Ô­h@IN©N‚‚«i^¡Nª "J(2T©ì¸òÙ Í^YÛ*KcHB$¬u2¡\…s¯y%“!­¥Kï»Zø’æÀa©Õ…*ÒQ¤ ÉÉÑßK¦Cj‘ŒR–áÿðÕ¼•‹_±^Jòß¹·fðǺ1…r¯UBY¼ó.ôÁšøO«Â¤H¢ŠŸF…EyædŠWTk,UŠéTš‡#”nÑÕU"ô:¹sb_½†îÅ,«§¦ø•&u2¾V”Ép'ºÇCØ…xï Þtëº9¼»0*³.{+°k·.m?”IWŽ”h¹È:¦¿4Tœ;aqµÅm´£Ôž÷yØÒQ¼rhœwƒWðUâh§_:d!ÀPG–1- C†¨P•¼—P˜óL—²LB;…w¯þåÑgÿßÚñÖkôc$ê=ļµÊdIßž‘Sù>ùíI G¨’•>D)Q#óõµZÐ9Ñ @Ï-Àø&êÿø(ÿ)$¹”Ú]bæÊ¼W¡—’­[*ǯÀª%Hæ9 4¢"½—ª[Ý{+§Ub3äýý§Í|.i ú}RuEë2«r¦×N9!G…’%9Dµãú§ÝÛ«çôJ¥—V›LW.—þm«O¦à*´§´Ò“b8rÔâl­Z]M?]¥¸²]ÀY&ÎÚ ‹zï:\X1ZùMrúƒ ?Μ·’ùÀ®H”ÕU¹U(¬<¹#,œçY °ï&‘éU£MºªŸ]‹§Q¢O$º4xRŸªºõ;À ‹$J¨81i:ݾDèãrD˳<¢ÒDÈ]+Ÿ{ \¶^Uk—‚³^§ê¡Ì¼4ñ©™G SÌ0jtä+‰ фҹ£¸¡½W¯K·R÷N¨F‡X}oÁ¾³Ž›E»ò L-ߥIQÆ¢Iã˜! d–W±ß£DÿT‘Ò]´£Ôž÷yÚbÞJkæ–ŒsÈ¥ÉRªÒfÁ,‘ d¬yÔyÐ&1²Ö°â×êŠÖ·;•?K4uÈ¿ØÑê²QùF­»SVmpç ¿•W-Q•¾rㆥØÇÄV¨Rj!Ú)õHR©Ó£ë -|9 |i!Öã0õ#Ù¬ Vc˜ok‘®UBŠ wf4å”õ‰Ǧê&©ùDr"L`æ¶^Ùé+Žç=ê饻tt…&¥ªIÓ¤M©Uª2˜ P5J±2|÷8®®>Ñ©b®-b/èÒR{Ýçh×ðu{ÁG®R)죽)áŠ^ŠÚ˜êΤÕã˧ÍqašXñ6ÆXRÅË´"´ng .ý›wµJçj¹6‰R»ó.Ö¢’Èðö \Êq)zªhõ‰eˆLÙ³>82 º‡ º»\ê:Ýä¦D¹’h&ŠúmHpÏY@‚è¥^.®¡Iœ5i*pF(¬’aìP´hËWe6³|(´ûÕ#j½wrƒ]Ø.ýã’ö4RPˆ± $D¨ EÔÙkõŒîW9në&±v¦]{.ÕZëNm2£GŒhƒƒ"g<¸®…& Æ‘ÃxÂ6à˜.5sC—W«Õo±M®Wïä¨Vj§Œ‹$œa‹¡‡5cÆ‹(ÖoýÿêŸwn¯ŸƒM©LªÓ]J­Óo.¥D’µ*}b’â:¸ä•lep”¯æž)™¿6T{ZäŠíÒ»Wž¬‘aF™x/Ü Të•WAˆC—Sœúc6‰O q£ÜшI‚0ZÁ6•F¥¤«‰xÅzâ¥Áï*×Að<ÃäyqžqÍÈtd"„;€XÔ*Õ4…¤«×M•£NŸ@¼õêdÚ-F%N àHÈðèTùÀRñ(å‰Xf±üäL«@“*ñßkà êH˳A¼UÑN¢Q%G ãB‘8iñ$œ´èïpiî¨K›²1p£DÿT‘Ò]´£Ôž÷z®”z“Þï8»ú7/Ô¸"à¾íÊ‹þ žf¿ñýSîíÕó\‰*÷]ˆÕxâ-(õêXª),ê$U„IM’N¦¦:Zmculv6×C“Xs¼zØÆǬ²‘™Äç7;Í{qŮܨ‹æ´OðGù%ÛJ=IïwªéG©=îóf¹º<¬AkA á¼èmy¦Å¨•ÆŽêe2[ÿU a‡I›²Je*$¨3­½d¥TÚ úÇ(Κ¢¼䌃:Á!:B¼®–ÉÖ°Çn¨Ï­É]¢ëÀ¢HUlÍZM¦Î5ÊjžAe Å&,=Zhåft –HŠ.¿ñýSîíÕó7šðÓ"¤ÙôšD©qBäÌ6•­Á$Ènf+âÂͶK^Ç’0 Æ=¯sU&Õj’¶™™òj#ÝtÉÆ$¹&DcÖ)¤=Îsˆ<¨ŒèÁ'Ý)‚AÊ[P¥ÌiMF¨¢ƒ%Å £9ò!ºø‡ Äa=n{âšLcΤJ9æHÌ´¹WFŸv|âLJ˜j•ÈÁZíC£>Q•Šv"x˜éš\ÈAÕ«'‹-:e·¨KV°TóKu9im‘¯zFÌÉäŒCàÀH2ïÛõÙˆüÇ ~–õç&-v »ÜæªãŠ**Yãfñ"àŽOIЬ~nv÷+zwó£rîº(xïŽy)Yšä(^˜RëõB••èŠáI§¬CF6ö+‚a¹Ã{¾N‰þ¨ÿ#¤»iG©=îó:ÕAÎd E>mRkØ7ì‰1%ÉsÄW‘Íž­\õæµ1[KdFJ|rÈ9c¾^­f,RîæjÞáí dcœ=v|®V`åFµ®d„^j¢.fŠ39É•p&tÞž–å´7R¯å„°Z6Ë»PHA“^Èm€²+¢ký(/ £0z9ȱå±M¬Šiɵ[ЪÇ9«Ò˜åÅE¯Äóg ER“ùÆ•ˆqe–´A?Í«¢Í¡Œ²u)µ „Äzìnk|(õ'½Þ]zïÓLQÔ0Ô nb2¥6”fT"Ò®•2  xãŒÓÊ6Ï CÁP{ ²#ðäÄ$rÀ9<æ$žÌ?K0ˆÕiF»Ñ[‚¥±ˆ<Ø3«]Z"®\«Ž-ÇÍ»z{ðܶèÂF’±\är.\ʪžÅOjà¸aa¦~·30\î\s{0r¹©þ\Â3ÊÒ*¦^zdkqj»v\ÞÔN–¹z7¦ü^mf­®Ý‘»Ñr9}%ܪ‹õ#w*ïß`hªG+2j›ê|phÚÌW"åFæsѹÞÔD¾º@¥²<¸š‚ÝÊ$—0‡3õiB¯LliD¤Eç¨éåk%H‹T*yɯüTû»u|Åë-Xá¾îŽ¥&ŽQäÌ=Vcõ(fdm2+ 2N»d ä È{Êô³ Žù§{=˜5ÞÅú;ð\pOf&#ܬsL2¢ ½˽qW*tâ½6Õê•ÇܛڻÞìÎEÎä˽çtã¹}©…&kY•YŽýïn)™Zˆ›ºpô±ET³.­ †õÃèer»7¿rbŸï"*oK_Zäši7ò%2™P8ÒUÉV‰VD̘­(³Z5Ë™cgÞÆµ¾V‰þ¨ÿ#¤»iG©=îóRˆƒbS*Õ‰r§JTç2E$Ø"5ÊÜ´íÒÎç5ã*ì(ÄÌ',¡ŽläÞ»‚§J"»¥wïÅW.íÛì±FÖ7Bú8cé*îrtïéEr¯øª©·¯7™Ž ¹0N…Møa…ž‡Á†Åwoc²ýL2«‘v>ÕǦÊý~­è™pE°Fb8`¸ïwÕŽ¸YÅf\0våÅ1]ê®ÅUW³êà S^iÌškØf_2 Ù”p’µK¥²<¹w‘À‰>ÐõFþ´ó™†ÆþN”z“Þï0;Ïr(á}ó ¤ 4[¥+O˜…l‡ ªÎñ=’^@Ê‘ ]å”àS£ŒðÎ2xLXóáIc£Iƒ.3”2$Onq”gaFA=ŒxˆÇ1[¹p(Š7)W2àÍŽ< ¿«°Í‚á½3°iðÜGa‚5©ÓŽ;º7¯½lݯ;XÑ#°&æ#ú¸à›·àÔs—ë߂،ú7+Ì¥0ÅQEÿßL0Esó`ÛQ/ÕöB­U£N—vO°ÉCœ)C•OŸ<Œ–Ž|ÑŒB*RÍ[I«œ…– ò«ÿÕ>îÝ_1RÿÄ0Ôzå¿m—"jbéÉ™B9M6CÀn£gŠúêqÙe #(Fƨ²§5¹ÐŒèèÌÜ6>Ö¦¿¶ÃxSXýÙј‘îjïU_I}$Ç7O³rØdŠ,uXæÍÌô“ »Ûÿ]Û•0÷Ù¯6ŽTjb¹åo5w"æ\»·aîW"¢«aDNY2(ñ@’Kä™Z8 jkd=ÎxÆ ®y ­A¢» \ú]J©óƒMyäC ]à|ù’ªeG~Õl¤|Ѭ(å¸Ì(ÆDpÛåhŸà ò:K¶”z“Þï1M§:YM͈MâF‰P•T­ë³çQGœx€¯r±‡,fÃUW ƒ5!šŸGs›Ñ™_—‚t®==Ù‡\âôs×6lØ&ü7àŸW£½lÙDÈLÈŒTj.<íè‰Nþ„ÿylÓ”ODz*eÊŠÔÁ35Ëîr|â{SÜ»ÖÎWü؉Ð×s3«[½p]ʘ/íËуQm!VIG®f±ãÊgµ¸›V'(÷µ™\Ñ©Âs°R3ÉD A!M‰I§Rb˜ê7ÑéñF;‚Á Ç+„3Æ1±ÄsœÖ5+J=Iïw™¬iå ië²5›±ImSY²C|ºyª ˜h7³3†d ›—¶Q¢SH ’G1¨æˆÚ“0ˆ@9ãÖ…®q® ˆÆ´Às«S£Å"ÓÃs§D“5FTÎzÅ Œ„É“i*F!'9ª¡ ž˜äòô£Ôž÷y¥ELQw*.ôT_bÚ=âƒt£‚«¡Ê±J• ËãGž„S ᦖ¢ú`ör®²(› 좌Jdó5ÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:K¶”z“ÞïUÒR{ÝêµÿêŸwn¯ªèŸà ò:Kµ{äÖ®üï”\—¶òír'UÉ<£³l»õ¦dÏÊg×kuÙ²‹&¯+óðžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁüË· îñ?™vá=Àþ#ó.Ü'¸Ä`þeÛ„÷øŒÌ»pžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁüË· îñ?™vá=Àþ#ó.Ü'¸Ä`þeÛ„÷øŒÌ»pžàƒù—nÜâ02íÂ{üFæ]¸Op?ˆÁü˵ç‡@Ñ=b¢Z¼ˆ1ªO¨ÜëÓXŠÒPISLA•˜åuBBía‘:,±¶9¢T¹ËÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÒîåÜÑ bl)µƒÖŠZÕÀ¿%6TˆTø/ßM8INš×ÄÖ8ª¥V«Î ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6à¯ÙΑ·~Ît‹øÍ¸+ös¤_ÆmÁ_³"þ3n ýœéñ›pWìçH¿ŒÛ‚¿g:EüfÜû9Ò/ã6¹·òýhú¡vcÝ»¿W§J—òv¹w©lƒÉ—Œ1W5á’w˨§x˜žÈeúÂDlx“d·ÿÄ%!1@A0QPaq€Á¡ðÿÚ?!þÿ¬àJ cŒòž€òž€å&Ac¥?ÒàdËÏ6ïGî ¯×1WÀ'ß ´;”‰ÁP¶Ã(ñ=º¸¶„‘0çDB¤P;ìðJ2Ÿä†§åP$Åûí¢¦Çi í}F9ÆH+F¥I*«™?ËŒ»ÂêV‚¿ÃWãv̳/€þ}p|eºanpx#fte‹œ{cáÞ#N£©?þ•î÷Gý—6ð$íCFŸ'}Š´‚òŠ„;œ€h©|66F?Í•é›f[Õ¤%2R ûl9<™ÔÙ˜dëp§çfÄ—n‡ïF‘BS!Ïê ùaúQ ç|§çýŽ{ÜVa?õ¡ŽáÊxÒØÔL= Ç4§Dퟙh¥•°¶ñ0S Õ«|¥¦¢ðz*»hX:îÈC›BFåÂ(¬µð úø,"ˆ«øƒ?Æ8îŒÉã©"BŒõA„y1ªØ†¿8@A ©^#®x£!b … ÕY¾ ¡RkØg¡ÿö±_Ըؓ,˜ð+a »ª¬6 &²ûÍÏG?uåÑøîP®š³Î©Ã:6íQj#H],³Œ½¬Æ1iµ8iŒj”#12—-ƒŽú0¸Ñ?idØ¡Ð@¤Ús¸|ÄJJá)ýÈ€ mgËékÀ «™;×»•jwň ‰BåpùÄÂ(€°Å™þ,¬ÅO²Þ9ô6áŠÀ5•DÖœ0ò0õŒ`ŸW-Fܱ<ðD ˆ|ÄJJá)ýÀ€XYEqV#H¬hu;°r|¬#(áÿͳt5ˆ„sB MêÝû:j`ÆRº‰cðUPHc‰Åf"t$›•RJ!tÏôO®½ÀçÑFPß÷0ÄÄGê¢U ñGò,•lè‚רÃRŠ Ä˜˜àÎÌÂÜ' X:c?Ô“T M ŠÒ„Ìé²…â=ªÐŽ,–J)å£r2óÓÞà„”`†ÛÁ]ÖX¹¤¯ìw”xùŒOê )€é¯°%‘«ôT3‰Ó{›¡bS8ó ‚ìZï‰ÁÔ‚W Ä¸†…P¤`çÜPȦÐÇ xY6lÀRÆØø ¶ ¶"§d¦YZÿèTÅ3„~àH”í">¶‡”óL6\a¯²~ÿ ºpÖö¬\¯Û>Dâ°–¾(Z€ê¤ rŒQÓ¶Y¸sý)[pmh]šÅ^¢$Ãùï€é÷ ¤÷àßK¯3!|l š¥Óôá C"#ÄñR‹ —h0–»PðFè·áÀ. ƒ"õ(ÛEQ÷YÐK…ïÀ¡J»ÄýÒ]‚úTÍÍ\—¢x aS‹iªEX-œ> ì|] ˜¶'øb€)¾ÚÉgÐ’/ #'Gd¿š ;5D•&8n5ÁÓewሼÅëP Kœ-ý¢¯!€0è**ûaPØ!èÃÜHx9Dž ä~sŽ‘Ø’²– â®ÂDô½C¶‰üÁþP'Œ8 0zÙàÌþ™© %Ó% ¾…jTý<Ô£Þ±BžAO¢¢3Ó’+V}ÖK¬¹ÕàÄŠª ~†AÌò"¿¤P6/_¢,`ÆðäêÑ0âˈ2a®!kŸ BìI…îU“ àôë!ä!¬s: @J°Di±ÕXTpš£g¬ï ° K¿-“#Òû€¯à!4Úœ” –4‡†@г5eê$ÃXMï­,ં ™+/H„¡ÞzóL‚q~îSŠö˜&©ÿšÝ rss~,ÃW&j2²ÿJÁÊ[‡xò(_ @JE,UŽâD&8SèQ@ô𠧃aÈá³ýÂDD5¨ÙLm8ÃÁHÞ0ZÁpâýùRØotEׯÇ÷9Ptù#¸=Y1~´áWiãöÆ  ˆ–™*(ÄàÒ4p/¼ K­qÉûWCÁlÇŽJs4”#ï´·i' p&Cj¤R£—Âs´¢—ôÔ §“T;ã÷•7 ýÝþ"DŽo‹æy[/0³Ük%àžòO¯i_œ§RȔܲD;„7rFIôj0»z´K2|…t•`‚øP0 °y˜¥¼ë•úÙ½¸nµŠBhóJÿðéàAaÑtnû_ª‡OƒþP:&:!È×Qæ-ºL Zx¦q·Krþ(„: œд]x(ÚKЉ×Â=Ĩüàtj¡êAA“rl79 UŸUË(«æ@™Ö¬Ýà¾É²’ö_õ ÑïXÇÕ²±† ýºMÃx~ÿ*‹4$½ãÛ3ˆ‡,}ñ(´là?¿Ô!Èí"B¬ÿŠåP@SùO@ùO@øŠX{¨Ô,@¬›eÇÞ˜f•M·È_ÇXö‹îòÑZ0$‡)Èæè¤S蔕mê4#mTÜî0‹ÌÌB€A'ÿÚ>uÊy¥œbóô2ŽTš-Çø‰Ñ™˜TêR¾'wLLDþªIB#~÷ ÷âεv‰²góoûu*£F/]Ð1ƒàΔJ‹‰xæG ’Cí×­ÌdŽÿàAm‘-8_kÖ÷K©<Šæ«bÛW,åðhœnþtÀùJ[wãýŠh<‹·OH´ÿ&ÀÒ-DL2Æñ¯ñE€¿÷85?ŽO¬)ðCbŸkk‡hå¿<ì*ÌÒÅ`®À!AÊ™])G¶†Ku8é$Jn4±Çð8/—ÁIÀ¬ðÇÿ•ÿµê¤Ñn?ÄN‹Ùh“Ù£<çê9<—µÍ'çÂVm¹Ê£ñü%—ÿ¯µ›?1öôi0L¢ßûøÃjb„;ë±Â'5pÌñ¶CˆAïhNª!éø3ö·C¼ÀÕ#‚°’PrÞí\èl £¡@M–ú‡Ë áOˆžsÙòGšŒ_Ò®"/ûÈváÏJfð°æW“<Ô!#êi1¸Y1?«85Ueo¢ý:£lÅNà„^ýæð ø(Åg/YÿdX¿wtòÑ•I¦ìˆûø¥^zçz|Q¡1˜™×õ+Caö´Šsà ûŽ:,¤Ÿ™hSØÀßòÄ"RY,ƒÞ‚±ÎMïl¥ h/’$Ø$z®kÆD æhS_\Ù7À>O¸=ÉQ v‡ÔÀg(&‚™«õ={ KBš5$ïŠñ^Ѧ«&Òcú5±.”7 ÒŽE“xj>šp7-8‰/ZçR¬VbGHM×?Ä€ÄÌá ‘%$èî~±OøGÎkèӆ˄¼HúÁöbE_)TpV[’S'œr^‰Ä‹ç§8µ?Ÿ§óã¯ßžl.>Ôóf¡®²˜”öFm^‰ÕQª@SQ)_BxîägîIid¡Ëàg’9©ò˜›Ä[ òPD³F9YäNä¥ùÇXó³»IADçóêÑ‚Ô5‰_ÅÓqu4¨u ÉÌd`÷S$¦¾R€Œ¥ooI¢…>ÈEzºœLœ‚´ š³óÏj? xÞ )jDY'Р…YzR¨bš¡V òAoúa€åÀT ™rrƒV©]¡ÙÚú}h]¼UL&VMµUD#I–Uø{Ì.©ú~l‰º<«[rââHÆD@Xv%ïóS¢ðítG«êù,kDÉMšÙ‡ÙH%;øm*¿å&WÇ.}JP`(Ÿn7¡˜bßá,ÿ0ˆ<OÎpF$fä‹î©šG(X´O½Ò¯úËLJ OlL ý`ØWb³7kà“ô1«×d/Pan‰×ø{©àP¢H à¡ãEØ wùl"ê"xXB,¼ñ¾=.ÒlNk…ú$ký2¤û} ª…",»}r.ié HÌûœˆ±‰PÂЂâu„ªä0@ Ða2SZ1žeÏòÏ g×9]š0žö#Èûa\Rú8ÀjЕpßg‚lßÔ˜®a²v~ =ˆ@ܲ tý‚༼8ô€ãÚX©ŸÖÐôƒ¿`€Õ.‹â“àànäÕVÓLpæ6üÇ×ÓR<‡è¼ ãIÌ(Ä>—ÈûUh¹z‹0_¢P²P˜RàÁ*¯?ô(…Ñ¡Ø2Øj ! C²Èj‘˜ø~np»”¨'éÔó_´ÒÆ'Ë·ÝAe‘Jô˜X8œÕ5‘¨1‰«Ú4‚–INå»U5(·2iËú!ú€>: _Õµ[ùÙéª!°Õ¡5:};?Å[/°!œ‘޳P¼6öGÈhtšú[_µ¢-‚ÔÛ-FØ¿Fy'Å*2Wya"_¯'Døn”Ðp5’:8`–¸J.0ŠÈ}lŒQAip_ꛃìhŽ•$CEV(5/×*îÈšTK¸Å¥d?RkkE€\ è°Ïi¾ÍKO·jÞ6?˜)°ÿO„G³Øá“¬Zn‡ ÈðÌá}9wl?æWA2B߀2•Íbz®ñi Œü6,‰€e„¬×}ó`µ¶Ž°)#mGC\]…€pëdBS8ú‘Â+5t"btvª—ðXp ÿ~Ë’ØèÕ¦ñEO°Aå„rÅôš”b‡²‰ôFB?¥ — ‚8 w:•†ýR˜‡³&¨WœT#®_øzZ÷VØ ”ÇÝ Þ+YîÅϾ¼aðþX…F”Òž™:L7¬Ê ¨©Ò¢I(8I¾††ÀiÎÊ\œ»ˆZu s1Š€°àv$Ê,ÜN}ô›±i˜ÖD­_f©Lj= }@Y!€Þö‚!ƒøV¡¾y?Zé0;8ï‹ð qÄì¥u®«ht|ÿùëžpyÀ ç'œžpyÀ ç'œüFòpáÇ8páÇ8páÌ艰¬ã)ñmEQEQEQEQEP“&ÌØÌ¾*Ô¨¢Š(¢Š(¢Š(¢Š(¢ŠUJ!üóâ_ÿÚ  €@²€  ï®ÈÖ L#?„xÊ D’2@¶àŒ0[h<˜¼Ò0 µŒ!€ ÀÈ$"€@0‚€€@ž€€(ÕBAl€Fìu»Zp€ï`pÎ17²€ ¢ €€€€sÏ<óÏ<óÏÿÄ! 01@AP`pÿÚ?þ+o÷ÌÈ Q ɸqfO»š«%7ä’È€¸‡ÝauU¥ ý?T5qq¾šg4— he9 ê,eÉ’à›JøJ¸G¡!¢5û€T""tG¢tqÔ[q‘ØTî5ne°ÖÎV3 0 á¥& µ•^‹å˜FƒÒ90s‚´AìI(¼ú€È™ !DDJeð ¢ç}MÖGH3 _IÍÝì<$¼-câªùW&,²!ˆW"’ù†D­ù‰ÝÒ>oÐØ´–CÂß—Î^\=•\t¢6Së¹Çé›LcpÏàUÛÞ|²T¯©V‰  ¢DD¦ë+ òL,ù®%gX#†È[·ÃÌü LPG¹Åïx­;çT\Y5H-ŒÏñÑ UdHßP´SR @¡€UxW† и;åG,Îlå6dB32«@ø‘­Â? „C"$@1a5DéúgåG»£Ñ½³5nôzölF0–yá YTqæ¥mm=Æ0—çÍÑã#ÌS O¦§´BœÈÖ±U#\%Ååk öà©8ž¨³Q`ŸO¸}߯B"GG‰°wA/œDy‚g,  "€DDJ7ÁgüVi±VârXŒq¦6£˜2Ü‚™n3äã¿x÷ZV5`‚Zÿ¨ÖŒé\ Yõy|•Z‰ZooÆPÝåP¨4ìM„)ñŠyaÃôe# ¦šˆ1=åB‘ñ¨ìô'û//1À„&{~–ÝK¯t® œT¢Ó_?ÕzŒ ±ŽŒA%’Ör€QÊÄ9 -Ê åÇ—DC`/˜³øêðSŽ€sÿ†Z_Keè*-D¡eÕs÷–½dÇ$µ Ž¶ÃÁbƒ^o½ò^ÑreÍíС6Ÿ‹í[Ëǰ º„q¥q¾}íBj ×d:”%®}þšÏ»WF±Øâ^±Ò_”k³*äžüúh"»µ†ä\ÌÅåZЬaìÔí~Nu*Ø`õëq1p´èWî ÉÚsß|ï€7^f<¡ïF+zÍ—G |À=ø*ÄÁ‰f>Pw5,´Í9g¡•>‚^y8ˆVNÑûÀ€(+Pë½Cé*’‹bºø¼mç¿»ž™!ç[~«NÁH`u%ÝÈêÞf‡fþ¸èØV§U_0.©GZ2S”2ÑŽæ0è±¼ˆÂgÞ› [{`@eŒ³]†‚)©”ªiYVrð€>¬ë.@ÙRÁéÒ¢g Ñ*Ä"%z¬AýXŠZB¿âÿÄ#!1 A0@QaPq`p‘ÿÚ?þâ G _ÐàÞ¶¼¨ K5[ÃC"¢ ™)!Y(jTØåH8§–aM´àÊO°}´Ž#Ò~$â¨\JZ8:Y¾ÓNÀ-äqz¤Ã£&²9 `9·ŠFC Í ÚGÁ~Î~Wû^€ª@eÓ™‚vú…=0#é ˆ‚$GD{Øðj1B”])éÍÃ=°D°¨ g1Óh ª¢‚ª*ù§ôš'´`zý¨CƒÊI2€ö•§Š uz„£FºÐ¨˜*„èCµXª {xèÈ1(‚Û „ ¦öš= _ ‰Gé?%±Ê5q"…`.%P¡p‡±«ºÒ¥Q O ÈiV'®–Ýc“T6zÆGU"ŠË}%p·¯T­^J¬ W ü¼€Š€2T’ˆ0AŠýñP‚ ¡…°ÿ?L>Ѐ´{ýXÒ~Ò*ä@ÅåãNSÈ´É·¥¤Lâ%%¢ Zóy‰º5å‘%À*-¾§X‚6וµK~©¸„êb\Oêµ^„À*|×ƲÀ´SÚŽ™Ú0 QwˆŽº„:TŠ["€Š@.DH ïš?¬àì;Pl ¬ Î0Â@CM+¡ÀÁ©Ñ1¦#UKÂGi°;PLá„òi¡¥a $¡šEò9t¤ÛH¡ÈBœ@ÐT '@¬4F¨#¶Ô£T+“7ì¢P$Ÿ9*ÑØ˜¤Šò Ž 2%T™¨^~Àd.£ð ÷>×1`š`™¸9òªµäT‚¡t˜$SpÅ … e€T(Ô€5¿z´ã Cfè¬2EDB|LÆÁaS_x\üàPÿ?GQÙýݢÐ)p“]³Ùp•ªÐ• àsŸð(opN”’Õª,¶`éë>ü!VU:÷*Ì>`¯Aa32&¹~[*Ûa~@ƒQóÿ¢Å4YÓË?'À[Õ‚Ñ7¿5Ùÿr Y¨'f — NðëÁ£óïO£f|zhuµäˆ(h0(õÉ0”)ÍÑn&¿ë¸Ïù×ùóç1Ãy i˜2ЗóÍE_´¿D»o˦Y3õˆÄ«ÓÊ"Ñ3Í@ ábé|éÄaΟ$O”¡ü˜îHdÂðe "oKnŸkÀlNªFÉüHðþo™µ˜ý†aE]ÀdN&hšAO'ŒÖÜ„€nª. F4@-T—!÷VŸtS„˜pp,0äÂB°qXð³Ô¡± Í6OGéàè/?æù›Y€`_×fßu±¸èˆå ÆVϺUx (Ej§zP²†%¹& BÌú¿†žIóê4.DZ„Õ[Ëf7ô¢ª(°BHÓ %SÜ<_­3wû2xVaÇé;m¡Ü¡Jrb‚΀ÞzÈj <;ƒ6$A3PÈ¥ð凟33T†€’ã8þ¯Ø2Ää‡]±ÑÐiY¡f·†Ñ’íÏûÜgÅr'ÒÙÎÙ_e¥Úrî[ù_>˰ïq‡-¼ÑhÕµdk-îqÍf:Q2C1¨üðèt€ª˜°§Ü[\µ­fÙ¡ô5éªwìԢȷél›H€?¥,²µÈýaÒȇAÒ䬠#@ä'û‘·¾š[Þ°ê}ô¥hÀ‹ZvlÎ@4ºÙC|õm­Dd0êçû×6wEüÆ/1TÎ]Ýœ#5»‰QÝ“µO7¢L“K$[°‡˜ÿ²àa°Ê_-vç³E>\r‘u- 0tA°ã(¸Ä»Î×p¡a·«ÁÇÓ(pCr„Ñ­ú*—ÿØg3J•ççÂ÷ÏÎQu"Ê5.õÜÃ#C`†÷m fõ@çi÷ÉáÖC>†OVdhvǬ/'„,ïYåÞ9áîÚ•ðd¦™™)ˆV ÉHŸ‘ià½WTÑŸá U@WR»£2l'súh/HXêM¢yQJc 9ÆûS÷¨פûª^€…ÞuÁ̇7ñÝb&ù”„2jr;žpžÐ(ÊB5…Mm(t€P˜$ç~Éc8 ^¸ß§)¿¹Ï7ÃïÃ9=ÈYÒD@6/,¨Ä#S¨$ᡜɫšç¡ 9 i7H*Ùï)øj û“¼'6QTZ\ú„•9ûŒ 8 ¼jûüQ!u‰ªˆ…êÁU°èqQZL.i‘€k¬–U‹Š‘P9d…õ±(+o8¬Ñ°,MùG‚À0€â ¹`p£Ž§ñ0ö‘ d9ìôa° (ñu·çÄãW°šðÑ¡I ò‘ !4G(Ñøl² ²pEËÉÝóÃi2½‚N†˜zwœÞ†Õ~=øáúΦQP#0¹03˜¡¤Y’—Alu50R'¤ŠEÛÖÝǺÀx—o Á•žlõ:í­+ÈÃŒ¯k£#ÀÕ·)È»FP†˜†L¶Êd;Èp-#Í„#%òBÊD7ÉVo‘å\ä…8Y²"‘‚3QŽƒì,†?ªˆØÙX…‡åôŸçŽ¿Àçs##´V¬ª×Nlì, QÅgø©v9¡˜Æ¬ýݧ:¡:È 6)ÌÐëÇÙ4³„buˆÎ’˜ #0¤‚fz£ªh è/ @Y+Õ«ÀµµÝ'«ýˆ[ ›ümÌÀ\ •Ï€»}„fa˜Ff™„'ƒùffffffffff'ƒùffffffffff¶ ëâÌÌÌÌÌÌÌÌÌÌxÎÁ~²Ã÷-NHïÞDƒNʨ.œ©ÀýÆí?J*UÄórµ«Ü^³e ëäÄdj|`ûã:Âi'À˜Œ¤hf'Ä>Ö2LÎk~‡œø@£MZ‹óÀ÷ý¶ÀnRôV¿žšå‹7ÄE@rÐý!Õ°XTš¸l°ånµÑÌk¶L–ªpO ì+“ý '2¬E·?•±Q Æéx¤›àWMP)šC¾3˜ÚJgæ%psZ}ó çbÝ=ž^ªŒ™ÁðÎÖ 8«º`$ ΓàŸ;þx$6cPô`‚ñc‰Ç ;?©G­­«…rõ¢¬1Iظ% ƒNõVCÜnpIí°gçi†èßïÞ`Ô?iÊÇ›Ûá·øÌ=)¼“sšß¡ç3n¡XMW4AU¾›ûìÈå‚Åu—çáô£ù¸Ùž„»ÜW‹^fàüuدæ‰i‰†àqnÒ‘¯–‘'4þ‚ÈÈî:½?ö…V¯uÅø_œë‡¥­ÖͦõuY)x ÎñÁåte*zÉm‡âG3¬³UG! TúKáBÏ2ªÆ,Fñf€ü¡ÌÇõE 9ðñÙ0±äî§tƒâ ¬/ˆ°-ØVHÙ \ÉæjzJåî¹;Mc7ã ^›càXw;6Aƒš`9Km]ü’Ès4,0ˆ+ËTRâ}ñ«Ô€‡9Dià~„6’È' Ø Œ ï¢4µÑúeÇäG`Ž [0ån²ƒrʼn 0ÓPÜ$ØâÍeÓA {œƒÐUØŽcÕÜ^-„°ˆ•>Œ:ÌÚSyÒ›½GƒœsC©×ùWáE4plIøJ6/ÔgZ€ÁÉø®ÑÇàŸ¦ ¡}>uP™Ú»¯$1oÔw € ‘ˆ#7&¬lÃs²¤¬|+ŒªŠ†¨ïß–2Ãd¨«?‹¾¸ Ê™}Ò±;”d¨#LÞ¦_®"1ÕX¿ë–‡BØ!⮽^ÊÍ”%äCÆ/¸ýì¦Ç2wéÃ?R—Q©Ù/µ†³Bbá"kpaÁ5ã\2¢Ø]ßmÆoç<(Ú#TKƒX¹~\˳Â>pX®”¾!7FÉŸÚbÔùË)A @zªDqœ&T¹»î²s–:È„iZÒi.ª J MŽ ÑÏ1t’…N¦K@ƒ DzœÞ ƒaKh%0èñ|͈Q~öTu>ÞpùëšÁÀÐdc.½É4¨x ÊSw °Å‚L‡™òY(Üpå┦´Öý„ S-©H𠆣Þézq–kbcÉžµ )€pæ'õe9%̇˜¸É£‚³E6scZBÔ [2!ð†Â™%z éR$³4„Iý–YR\ñ[Ä <\…†Jª}Æ~€ òâÙ€uO!Y…à˜a}ÀОI6hs»l"#$tDÃm¼H  ²TÅ„rˆ(P„ùÎ@2$W¸ m+ÖËê­ØÆ é#SÅ ÍÌ¢ð+ÇûÃo”²èùJEN åK ~ŠØ’È;ŒBOª`˜kQ]daBÓbñf×ÔÅô²Z"AèKܱí4󩤑=T55€%‘€¥àÏ PE'aåš;^©%E‘èåk!i›‡ªDê âÓŠ¾é’ ÚÆõŠÕ´8$.íÉX¤ˆnŽIÝ`_ö?¸öš]OƒI>Tžî:nDkúh×ÄÉaÂAi-b¥Åq€Îè…bE\óÓ£wÀ\j\|ÀB}ÿø|õÖë rWMW_¼µ‚ÁŸêÂrõXж ËbÂ… €«ñŒfƒH`ƒýN‰k]C"æaƒ 3fx¨Ë“ܽI’@oŸW=K#ó@7sÑ(s,Á` \峕ƒùÞ†¢Ø©óîc›Vˆ…¤E"øÌ9¹[°ú¡¨hê™rQ_͇PPÒÙê‘¥×O¤m°of°{‹ò.1g¯¨sm¤Vè{8ÑÈV,\)¼Ê˜ZP‡r4,fDS­ð IÒßņ"Ä僭[ú#™a{ü"pS‡üQX ƒmç `­„gpØÈæÄØ©tîv5ºûÁÙÎÊY»Á¨UóÛFg¿Ä +‘”""˜m#ýõN‘êä̰s2ÁÌË3,̰s2ÁÌË3,¨`ß×ÄP¡B… (P¡B… (P¡B“y Ú O9›ü°AAAAA° ‘wÓÀ‚ ‚ ‚ ‚ ‚$= *û0¥¡ÿÙ./Doc/Tutorial/slope_friction_wall_snaps.jpg0000664000175000017500000024410212176660653021116 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿÂŽY"ÿÄ  ÿÄÿÚ ÀìïOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þgúˆOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOðÖ/ãü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ö¾ˆGýƒò€þ€þ:žÚ+sDôOÞÆG0Ä̳  €§¶Ž|”2©óLX$!Ó`3ü©í£H’ßÉxÇÝE? ’/ÿä?ä3ý3übïragêr¨c–F„ÏôÏðl„‡ü»ü0Àgø3dÈÆ¿/ÎAŠÝN_„@Kü@ÿÿÏôÏðà1—óºÌsÞóç=`¹k;Ÿ>kV“Ùζ¯—U·³¿ÍdzÊOh?šÃsKgº¿vlóWW« Cr/KÕ/kN‹ÆƒcÆÀ ÿ@ ÿ?À€—ø€3ÿ 1ÿ ŸèŸà§€-–5›á¾¦¼´µºçý{ïÚu­N¥”n×çVÝ*w–5ëj[^R³O³¥mK¹³´T)Mo¡|v=€þ€þNN‡Æmæd"ð£Ké›6zŽ›w].ÚØõ«¥[;=˜}3TKëy›­µ‘ýÏ›N½ûoç>†.á€Ïð %þ ÿÈ Ègúgø>õ©ØW^êj¼>4¹yCXeÙ^qá,n\ùñŽU—tkkŸ[ØYÊÅN|íÌÉÚsYݘ»¿”ƒ{åP?Ð?ÀÈò(Læý§Ò!Úr_Cq§qGwm[Äñ«õ·vñ¿RŸ.UµR϶¥o.•÷Söö¶F¶Óg)zÛ øÜvŸ3à¬3ü::W¼yÖcîdëñÑåþÂØMEýNS±´ÊÑe0ÈÔ %þ ÿÈ Ègúgø4õÃÛ'U+éÞ²§Î\×¶s¥Î…%ÊZ²³Nöµµ•|«ÜijûqBV~ý©jH†ÊšÈìÝÞ|˜ß,€þ€þ…—¸s¶Ö[ÏÿOÒùŸÜWT~Òµ°ûF¯)cñ¸¥Ê\©Ò\¸UãZÖë®èÖ×nÊÚXÕ{>ŸÐeÓ• 9ÌoJø—_=Ÿàµ‹|}·í`',£ûˆú‡Ò<ñSKê÷þR\Ôʽ3ðJ»Jö–rýÙ|Ó9Ï#õN›Ä.¬¢_à~ÁÿÇ€þ€þ ^¶bÖ‰ú‚Å ¼÷°T¡uNín¸Ç"¿]ö¬­r·¹©P¥Ïä¬ýçKi[9ëM²Ïwò€o¼¢gúgøFŒ–k‰ªï#žÊ¥>û wò¼ºkr-+ÛÞV6¿jÖ¤©q¶ç+7\¨p†Eknt'‹÷¸ëû´æÊdµØØŸÐþ8ÀÎ~6#auKåÜt/¹JÝÿçþö1¹O°éÿ ¶óíÉ2òÐ~A€þ€þ¡ó~ÆÜëéÓlH×öìüØœk¹Cb¡®½]ˆÊë§w± u®¶RzíðØZG´„›>/kà ˆ»Ã]ƒšÎÛ]«í…ÖvZì[ì^¬5Ùá±I=v¨×OžÅ*Ã]Š{•×OæÅªÃ]¾£{]›Í†•ŒþžrÒÆƒl š–N–6zýX»ýu›©=tèlf•­t)ìfG];]ŠëŸóc®½‹‘¹®g±Rv5Õ±ØáIë™q±Y]t>ì\¥uÔÅ]µbîä?äË‹€þ€þŸèŸàÀgøÿä?ä3ý3ü?Ð?À€Ïð %þ ÿÈ ÈP,ÿOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þgúˆOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOðÖ/ãü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ö¾ˆ?ò¯ìŸèŸàÃ,Í *î̺yo©?Ð?À†Yš7’g¨¼·ÔŒ€dfi€†}¼G¼=J %þ ÏôÏðÞ¯ B5|^d†çp@ ÿ@ ÿMêò!&d€`Žw?À"šVD~øt¹ˆwɬø€%ü?Ð?À3ý3ü ÿ"_â—ð@ ÿ@ ÿÏôÏð`3üˆ ˆ_Á3ý3üíædã󿢞(V @ ÿ@ ÿ?À€—ø€%ü?Ð?Ày§]o+×?Ï{ë|µBýŒñöŒj£°¶o5“.üF#‘ö¼  €òÐ…ÒÏ \,¨ÃèæU yo‘©ÏQ±ã@ €8àÝŽs#p:¹ÝaÇ¥fó>ú25  %þ ÏôÏðü¥'ú¾ª;µ÷ÑzŸAú¯Ä}áþ¨ý_æ8Òµ›Ê+ªÛçÛõ’–énÔwôûÿ$Üñù­Ù|ÕêO-õ+úÆfºÞLÏôÏõì¤ÿ}¾÷«~‹Õ²k:'ôÝ~?.1·T=gËmîbÌŒæi8=wÎòüé{®§Á´Ÿàú `uYIvwÖ´y|ù¯ëj}£^Vö?‘}+§×³ù¢WggÓxxV€"_â—ðkU.¶ä7?ë»`â.³pºyÔÆ¸¦§¬íï>ÜÛé=F—:=mÚ\Ûñ¤ùҹ敽?µefÍ:Èé½ãÄëdiý\¡¦Îåv‰È]W<·iÂånÖÚ_Ìö÷Ê&‹!Ë¡Äègص2ýž.úLaS¡»æýª+ª8g:_iÖ9¬ç‹ÂúÎÖÚW4%k(óºþl¸­ØŽäŸSàû'µoýüñåI9ç´àe)^kcŸì4Ãf¿«^8hýFDc’ñË{Ý­kkÌ}½¥Ï+bâ…K¸_ë/¬.nàæ¾NC×g°ävÃÉMmä·±ùºFÑ7—œÞVD„EvN–rÌMs0sý¤ôýêîþÇÛèÏßîò•îwRî7{Fîô·}RZEsÝÉÚBÝîÞSHž·x„ñ´hýî‰YÑÊ×yuÌ]#:ÝáVvZ%þºb'û'I£·-áÖv:<ÔÞ KšFÛnö·—¤†ñk˜š8u»Ð®ë´tëwRz;ÕÞ o7Hj›º­æhÑú]Ü—0ô…«»ªÞ^wÛÃ/ktVãµc'O«¥æïÌMþ´w€FþvÛÆ§‹£Oê7nFî‘<·tC/F.çxFF£GŽ;Ä¡‘£7y»ê°ÒîïkYºItû©-%ºíÞ‘½£gS½L@fóRþ7~c3ý3ü?Ð?À€Ïð %þ ÏôÏð@ ÿ@ ÿ?À€—ø€%ü?Ðïä¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢xÿ@¿’þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ @|ˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/ñòwÿÄ27@8 #0!"$42ABÿÚÂø^ký¦õÝÅ5ÍŠõÞ®Öb}¬†1éJÏÈÏ|U.«b‰7óŸ~Óz3sò22³ò3Ãðèö)®lW£ùò?Šý Þ–§ÔiõiO‡«µ˜Ÿk!ŒzXT*ÐÉäŠ4ôåƒjÛ÷ÚÔ+òú–Ãøž»T®ÈF}ûMè¸y „âs7¼¶tæå¯Ë}»H….HÈ™zrÅ5ÍŠôg©UuÝt¨QwËXõªµñhZÚí¬V.˜z»Y‰ö²Ç¥CÅjÒª2xÊÖœ«âšÉª• h¼µ"°T´&£>ý¦ôr=Œµ÷K™Çz±èõ:Ú“±l®Š,æ¯U)ðèö)®lW£X°ª3y´ö„\X¢å»Éd^•+n‰+¡wÃÕÚÌOµÆ=Œûö›×t{×6+×z»Y‰ö²Çés]:w‡$ð·r8\¢C y!†8y)…cÉ 1Háp$°·$p¼y#…Æ<ŽÃ<|“±ävàW†Ž[nð¶nùœûö›×t{×6+×z»Y‰ö²Çèä-êm_(SˆPXüS Ÿ\¼i!Cs &T $HÐ@Ib>rc à¯?†®Za¡%°ÕÀ¥§¾sïÚo]ÑìS\د]êíf'ÚÈc£¢©ÞòT)„Í#4Ÿ2YAÔaèšJhLN''Y“@H~@Ë*¿Ž(êú΀ªL‡ðvÿn\5Ü‘óŸ~ÓH_V™®Ò,І¥^¶r©qgË Ö¹e\¶)˜ž‘β¥[þ‡G±Msb½w«µ˜Ÿk!Œ~Ž\”µqI.œi€ütà€nQxh(s”þà€XS‰Ñ‚…7@M@Êb'þÊÔo„Ÿ9÷í7è"ê¥2±+wdš ™]ÈŽ>ðJó©åì™SUjÝÅþbqÜ”¤ÅR(&¥4š £M3*äZ\˜éësÕil÷‰fª©]Ö¢õ?ÑÑìS\د]êíf'ÚÈc£Œ£Ùó6IC•* rLAQ3)ÍþIˆŠ"c§¹æ2 LG‚d嘩“Za„ìyëÊðùÏ¿i¿L¦à1å:A¾ï[z‡qß÷Ý(pI1Ó© DSPßý–c޾f„ø˜T–\H^H˜Ô:¤Ý.©i9KöÜ›µ«35êãئ¹±_×D¸(w,Ÿõ½]¬ÄûY côrv}»tÓ5 ¢)ÿ®)NTÅ5x)R¨qO\rŽUÁÇV‘P…Òºj&¢ú‰LeWŒ6ÛW©ïÿœûö›åÃf•©³só“Uʰcˆ« b8¿ô ˜¦?u˜‰Œb(où(ÿ8ƒBe'1HqH†69ËU¼]X \”+¦BÅ5ÍŠýê5:mNƒwZ×@Xn‚Ôºj9™ÅÊ™ ™m‹‘“œ5ÃyLZ¹†Å¸íij¦/V¹cf; ÍþïWk1>ÖCýµ¡mÎYgÒN™6´Ì+ÀæШRF) «Œk\Å"$àA @@åÐtÖfTK)|çߴߪJü›³«£<¥Xà—3˜’‹€rNK <*cH™ Iõ*ý£œ ¦ÐžµS0á«ñŽ+ i2ŠÔÕËiÉÚèö)®lWìèç¦äñ¬åÝ_›¡Ò.šý¨ `©ªñjeÌ Ô £nÜU»f²Ý²^GÈÙêíf'ÚÈc¦_±f²;®Fy5Œü\¥cúÖa♵Gó¦&)Rƒ†¨LÅDˆÉÊ`̉Íà°·qƒ&üçß´ßÊ{\ö,ܺÒÓÈ(&)ŒºŒAŠM&‚“šO–p*„TAu‚N<8œFT6•@©qAEuÚô³Uë8wIcZ:=Šk›ú,²2É^N¦Ö£#8 ÖF´SÖ0r$ÎUD„–a—HÅL ÊÖAâJtÜÝ>,W1eÛv¥õiÞ²‡U$Çåë¥uÿ‹ÄûY côp—zÛÇÊTµ.`)κ‹*)Á6¡LäP¥… R„¡„ä 9g:€)œª m3é½ åoœûö›áÌ–èF×1 "r—DybNh¦˜ Q ~g㮚d/4¼¡)mý¦Œáƒîls™¡ÞÇ”ñ+%§iyIZNH’Šqiy0•“J%iy93‹MÊ"'i¹QH+MÊD(4Ü¢âFIÓâFMàV•”5^K1¦eo‰™@Ê&Ò²( è2"Ó®#Ro›ïÇí§7Kòü²–iÙEdÈÑò »LÊ3 MÊC #&.C´| ±JÒò§.]¥eTf““„š>SM hÙ0 â^WãânQ"äi4±â.SÖV›”“VLH£å1"')¬Oò‡0í/*˜àÒ²‰­/)&|Å‚î¼]kâ}¬†1ìgß´Þ»£Ø¦¹±^»ÕÚÌOµÆ=Œûö›×t{×6+×z»Y‰ö²DZŸ~ÓzîbšæÅzïWk1>ÖCö3ïÚo]ÑìS\د]êíf'ÚÈcÆ}ûMëº=Šk›ë½]¬ÄûY2þÊv5ZWöçß´Þ»£Ø¦¹±^»ÕÚφ1ýs7%¿'WþÌûö›×t{×6+×z»YðÆ?¡kÒΗ©!~Yó7#§ž«­L #Œ²ÅkUd³Íû+xÚYbî·oks1ck®~õ·wÚØÂÂok~Ù÷í7ôÕë”Z¶iÏB7~Bq·eÕU·¬é×C©™^…‚òÝK(IC£Ø¦¹±_Ð"c5KãT&]±%lÛÎÖº‚èçÌ[1SK)㩊¯ô½]¬øc¼ôÂ2rKÎLœõ ž³7[¸k•[®¤+‚¨êL²Ææ ¡Á bÓ'¦i5 1žkçñîH dªwë‡rmw#Æ}ûMý3&Üxî‹z曎ú²'¦jJ ,ªç!&8¤­­~Ý6X6ü¡qÔ¯ÝÑìS\دÞ麨Ve&çÇëZ®R-ÊnbÈ´ î‘«TèŠ(e×]#Õ!S0jÑS¨š%T¥ÿÊæ‚J"MHÉÏÔ©«ã'i×(öýíj]kÏß6U*sç>ý¦ý§î»^•5_Ì8ò‹C®ÕçnJñR*‰‡4æ_QÊ)'˜¨¦Aâ¢g¨â÷1J˜¦ÓêT꼟êèö)®lWìc…syŸrVõ˜±ÒUD…$`  & DÑŠ¢‡1ŠVÇuNt,œäB[öz»YðÔ.ú}‡kâ¾TŸNà -T«¸|Cº®×<kß8gê%÷EU^rÈy© J¡2aU)ÅcÜå% òŒNŸò” aRÕÈWuˆyêìÕv·åò‘g\·M±G¬äk.‡7\¹o •È|^w@¥Þ\­fWîÚõfNÜ¢^.®Ÿ7AªÔæn XÇ"G™H©‘A0ó@å]e N”@ÜÓ4&’‡/4–naÉE?¹+Žn¿ú:=Šk›úÜ5Ùf‡œsL¾L—!ÆÀœ*—,§\¦—¨’b±JºÊ¦¯ú!Ô8ÊãìéucÊ]Ðàd/¬cˆ*HÕ±·èõv³âÀ¹+¶âõL§}V'¥ççèêWn*ÅÃR*ëK c +ÁŠh‘uô£¡T)ÈD–XÉ3k2€ˆB`*G‰ÒMCªþD¹ ¢ê̈%Æä˜Çº¯;Žï©ÍqJ:îzg'ÜöŸøy!È\µÚÆMÎ$ÉÖ…³~ÜÖzµ—r-ÁM ä€D§þ (ŽR‰Ë‡j:iSykèM3Oô ˜¤OúSùË4ËVÑÊ7½ŒZ;›Ê”õ¤3•×/‘­ŒõpÕ²Û†ÏSw£o¼ìú.¾׸rØ´i–æ}Å·W+«ü;³!e‹³&ͧ¥EyDæ ™à0éFÖR©Ë\4rLH/0¦!2¢‰¦Q&ªvx«Û˜ÂUÇÙòCPu” mÝ%›ñLò£”q $î¯+FäÆ?úæEYYé2žNq?Æ›äŠjKŒŠS²§AzŠZU©&¡›—UZŠh Õic¨DNOòòÄTåÁ%ê`xÿ!)¤*NœÑ.œÙ@fêRKÂ+¡ù_ž#3/>Š@+ ¢5%¿ÌÍÍ ©UœIJXUJbÏÏǧÔ" OÊ,Šó2†—F¨§ *?èõ•™*ó<Õ*$¯>s'>D†Z±Àß䥹ªh™2ÓÓõ 5¥f§Ð嚤Šg$É¥Ô—ÒUj«Ë/)MX )+>Ÿ*~¦Ÿ8Õ c*ÈUšM#%<„¬ÂÕN¡T’˜1'¤‘DÕi‹5T1Ôÿ4™`µSkVºcšV ¨TåÖ\•$R›-D‰¡ùrz%j(•iÚœ˜£-;(‘$ª Ë€é>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>DZŸ~ÓzîbšæÅzïWk>,føã±¬tkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòb¾ßuÑtôkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòbèÄŽ®ô¡Zø‘ÕÙt.y1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^LtkÉŽy1ѯ&:5äÇF¼˜èדòc£^L^¸AÎäJ_ÇÿÄ7!"#$1 3A024@BQRCPS`€ÿÚ?ÿöÛìVá._³*9 ·J±Ö¨µ¦ªU)WaÚ}K slízA 8|8«Ç‰ÄŸòG§¨2$d ^ Jê…rk$$©ò7{Fk,’&°o±0˜JS#±¸9)Gäó~Z‚<”ÌQ^ƹ}¥ˆŠ÷®4&¶až4:6L«²=>M`Ns,kˆ[VÑ­Á «6e&á›=ÕÔ'¤Å@ÂlñÍžÆ`Õ¶™Ë'÷U•¢¤ÉE†ªT eNfÀ™þìà8‰-tìVÕ,N[(ÿ¦ 63ÆÚ­½© [j©“ò5ñ<öÂÙ;=Gcð š²ù¹Ë­$ùÃk¥«Œr\†˜¨cXS€¢|V†*eÝ•éÅxñù|¸s€G+Ž Õƒ°½Ô¬E¡:"ãiJE€­b'ŒhŽ­ë~“.‘Ê1±åÔ²¦Ø§kéûRìV8šrC¢Fa¦ºü²S"‘÷ÿìÛ•=*Òãèl£“bì)ƒ²¦·]Ë6±íëB[]Ä%ÂZh“o¨i48'JÔÐÍD,_Vʨ+ºš‡!Ȩ¡N²D>JàŽd–¤®}$÷+Ä…©uå‰06ÈñÂÀÄÒÏ*Ó†½.VE¸OÂÛRlí›Rl®Bl&bÁU5;ÁÒÄ,$ê³Â®*°Úþc‚DÅr%iÆd0$k]Z«›5Σy g)YÖwMâ¬VdJd\–±bÝÄÇ@ãcÎ<*ÌßR˜USò_˜Ø‹‹ xˆÅ’g•ĸ@Ï>•Û†lç:`…š$N“ÃWrlíë>:¯±okÏÆRȶ²YbÄìÓv‰J˜Ö{|@ göõŠìçUäè##3BªmRÕ–Ë–XéäJ¢xZºíò8ÜA»g°ò€õo±wã@©‘Ûa4WÊÔHnYcÉií­«PV•Š´—3·oñ–ÝqÝ’ÇùŸ¯ÈܳMµö’I£aVÒH+Nòør5lU…ÞJɬÙÿض³²};dˆjdrÔJ*G™b£×æÁ¥â  ’àÆD± iËWÀ{fväûEÕ4Û¼’“9`¦ÀÖ´´cÈ#™µ.øí‚³¿ZÕÑ툙!ùz±ÈÔ˜‹T.Ö™_4Cê½3*öût`×ï?öûÇ¿¿üŸfHéölºû-æd2Ý[-­YY )¤öPXÍÚ ì•Ý@é:KQ9,2ˆˆ¬švP•)ušÁY¸²™mŠà§~¹MDùq`d@¢¡Ž¨µ&³œšjs*9 å1Ií!É(öðÖšµ©„ØÚ~e‚Zl€x ÉC™m¬i-òo?eeŸ“ÈÊl•º7Çž´Î¨&êP”ïý8ÔÛcl¨D"´q¾Röy•½ÖNÄïÅØÔ%‰ˆJÂ,ˆÛ°MŽ“Y\…LžuÍWn$²M±YódÍH¹Xx }­5¦t;‘5÷ÖñÝŠ—(›Â¡º5ìÂëªË؆ÍyÔb™0ˆ3;l)*¼`â!„¦ÒtåFÙmz„3\`B½TƒIFÐPKV›VÑ_êæ»‰1 ¥Ow­ú–¥rÈÿ ¯ð©ãMI•Ë|V3Þ.0ÂfÐ7{{ÁGAv¹ù¥SËåaÊ«q }`aRqØB×m,°Û ñ,Õ Q×°,VýãÈ‘jñ[Lä,UBÈG í¸çä,æ,! ¶nÉ U@Õ…›‹˜¡v²ÕÓ{{Ü@µ1’àL*[q¡,;4muW¬x€-‰#D”¯º«)>0B”Å8—6T« µn“ž&ÇÂMrR´(ÚŒ¾!ÒgV„¥( ©JŠêŠÍÌ#¨²w$hÉ–-Š2[@ÖÀ)[@À£ÚD„¢$f?ÌLkÒ"DP#DS"12DS:DDG¼ÌÏ´D{Ìú«Ó¹»©Èº®6ˇç +Å®^š…#i‚P–RÈPöÈ ŒÊ;cÔ,ék=@t­y<ôâ†)@'yõ-;S_$T"!)ã/ƒÉ ;ýgz9ÓøüEÛ©™nV]I nuÒ°¼Õ½&wBk |&·ÂÛ=;§óµÐÛOÃeY ®ç=´l­JU¨™¬Óa®Vø‰ã9¥þ'ýÌä«Ú鼆6æ@¥¸üš˜°j˜éÆc^tÈ^ƒ†!1mv®EÖs_vV’"y/Œ’|â"më',‹•P°45ky¬ÙcΨ)j ­1bZ¸ÔÀQ9²ÆêÙòV" q˜ž;kZ¸7­‹²èxW¯Ê‹3]5 %²Vñ#¦èv8,J‰ÕÀC.WsJ ì› ÜR¡0ö¡9…ñ‰ƒ! §UHŽã×÷xp®˜4øæ‘8t¾ZÏõªàrâ™`r·IÞøçwöÔö «}U5¶lVa é{'4›b»xù¥¤´ˆH”øêc–eÅÛtî¯V«RÎraËÙ׆šY]Êd¥ÏQÍ(X4MS¸ÔCkARØeJ¤–é_$"ÄE™2¤Ä> Ï-–ËâÃÝ}ßZ—ÕjØ[Œðôï„®dÊ_ ÃŽF 1Èâq¬a\| jÏøà˜)ÌãEDEwk™M#b„²&fÒAjtÿpˆ—í&ò……[U¨ ]ËØ¥R³_è§f½&Ôx°ZŠKä±cë¦Ø[+¦(B'ÈXÌ°ÂØ²×’֜¸j#uP‚u<¯š>BŒ@2ˆ± Òžs®.µH=ê¢ÏãêÔ¥jÜS3úu_ŠæA$Ç–Æ»XÒô)d”+¬1ÖVjYE˜ILº-²À&¡ˆÂ«m±PÕŠ¨´KaÔÇ ^ô –Я(Ü7&)¦"JãŽ,òfÈD8Æ…ê Ð-À/€'Q`d¨Qʘª•É·œÒ66[±A°¥Vœµ1n\K£`’÷Täraw•b,ñ¾À1¶¡•«C9m{Ú&AJ`ëZ×ÈBÆØƼ>…6€Ù¾eåÒ•?Jöl¬!k…¤8\r±Ó…zsÆPÅÖmgÈW—¾æ:ªR ¤+c°·0R®ÖX2Ðm‰°º+¼×­ö)4¹æ½¶|z® U^¹™m1âmqÈ«à¥BÒ~Dœw)GWdfÇ⡯Ø5áÑê'=•*h|@Á:ê"Ö cãªX¿n½:•ÝjÍ–‚“]&æ™Oûï?÷ÓA‘{DúÅôÅÍί£ŒéÌËFµDЛ¹:U‹&­æe&M#l ß8&µeX±²A|rÍ]/ÚM£nnÅ[Þ;hpø³61¦Ë5®‹«[…Cd¦üRH¼âo0߆ *t©‘þ'œ ªªÚ±µ0¦å*¬®ÚÈ„69Ö5ìs¹¡¼%hÖ,€‰XÙªøò$Ÿi5ë²_;!±>$À1a); ªÁ7h¼Êôiy¯yiªnQŒpµ<­Úô‚«Ç5¨eibXvEà«‚ªžvU Rú²,Q¨go‹)qq’®$‰ñÀ—½r…ij×É2pº¢†-Cµ•É"d­kSĉ»rÚ‹a°Ë‰rk~áŸNasÙE{Ͻ]P§dÅPÁšÜ­² kÌÅ3’”’dBMð¡™³vØÄ6³Ã‹ÇSÆä ¼‹‘5Ô ¯jÜé¦ßƒY"êé‰(¶Ó„Žî¡è*Vr.ÈÒÈfhççqCdm@ÚÕaW›zÓ”qÇøñ•Y®³++BEuJÆ_¢º£ž•Çf14q>s¼Z¶AW™9+š‹2ÅJ,X¹Á¨Jì6µb]yq‚g-…Èa¬½+XX*Óê®Ó*Ù®‹2†I¢l©DBp;Æ$`àf7Ï·ôv[!E9k k²4¯ß¶Ê-¢¯Å‘¦ª‰*îž ‡} ilÌ©H±<2Ãê%o46¯êJÛnMÊŠvQ]Ãm€Ö˜ së»n´î¯o“]µx¨T®…³ 94¢Zžz̾Uî5(™й‰c.÷õŠ3~œdæÀã¼”ùÓWlÙŠ»ãŸƒ~¡ËÇ»fè˜×üOíë£ðÕ2 6N’x12†Z·†±â#œî3*×±h ØË ©t&·„\µI°Ù^¨ÒnLÊÉxAæPZÛ ©5…ŽM;ŠL ÷RX ÞÆèPd¥Õc ¸Lr¹¦ë2Í”VR„l¸âËls¬‘ã) » bÄdF\é“=•D] –®k¯ë³U£mqQ‹ˆ¼\òL…˜­ò…†õ)\Šg¨"­X‡ƒ‘aN]¤RÅ*ÉÕ[@ÜRêÏÞiD’ÎB#ŒìE©…ÛT1ÐÓn5m¶Á´ÞJݵn»RôJ6)ŠÁ°mJuYÀÆÓæb«¡²ÉÛIæºÑâMf ­nŸ’9M#b¢˜$Téoý@äùPŠ—@Ë1ýR½›F:*‹Ív*ã„èña,­LAA¯Ó¬9ÏP/r¸]ÎP ¤¦k<ío(«UmBÁ°ˆ‰±nƨRÉ• U –×Jdw•Yw•D3[,°ÜÇ2íW%ÄêJBïp ©:wG¥rýC’Œ• 0·ÔÇÚmÔ[}4[°”ZynKZÀfUÕ”/; ¥~0Ö„èl þ»0%=UlÁr|G¾LT–•hVK>Dr‰’…e¤6Åq'¥$Ö@1pőաJ«A §I¹·q µùÕ`«ùâÏȪë¹+vjþÓPÄ_h‘àmYØð¢Ø¬+%åŠ¦Ô -IXezŒ!ãUšÌ`²JÇ ´"l6ˆ€‰-M’4<¼L›>VM¼¨´/R¿"šðË6¢RŸ‚f½žbe»øcƒ_J²1M¥v2-9‹Äæ ”|âÕqP4rZé¬ä°“<»¢BFȇÞGa‰¯¾âÁ\‹;tøJV"Ûƒiu˜•@çX$aÓª”É|KMu`ü~6Û|y° I¿eÖlqÏ!›ÒÛ`‹2^Å-mbT*%¡l„°¼Šð [+Ø”°–Ð!{a dØN•ÚVƒ^FÊrxŠÈg™d0Na¬>Åñì THºÅ4ÍØ±uÐN#|Mam—@4î€ZeaJë=A¹rIp :IK|‚cf¥vI}®/Vkí+f9£1Îm:âÖÄyL_–v>5ÛÐâûžu« …C 'õL®`ùdf[?= ?›i?­©´D‡Ž1Õ!f,6Ã@WØti-äݼÆ~^þ§»fIMÚœJ ü}]ªnƒ¨vm\FÈÚ#? Ú^þ£»]l1ñÈ •o–…*àâ° ã‹Ña<†g•²[Ù$Ds$S2¾ìu²YÊŒŠZi0ª‰8ûô†.c&<—hg-w{G¨î×ZC,;̦L³ºlÇUiîI-%€RDÒ2€Û[fcàÝ®¶•šÿ ˜†srTO1ÃËV >b]·O€Æÿ‚¾±Ð5Y<®C3kÍÉÛmË\IG3¦$øk®•ûD|V±ó¤{ë>ÿÆpú«‡F ­ð }SßZ ­s}y—-óÁ`×-NãXë+!)Gvž§»m>ñ‘H–©–0(Õ‡<«šX“{øùœÀ”,a¦rÎ=ÊݰÈf{§ÕóÇ­ªZ¦FW?Ž©¸H+¦°Îè^³0”|¦cYai« _æ¿Zk3ç¢5k´i¢ hÀ°…0çu‰×U_ȨR¥±[WRº¥‚àX:\k6›Eq a”°·In2™Žèõœ3—òl™D‘ººŸ'ãDŠá`˜¬fGiD‰F› ¤Fcù£Ö’fÙÊ‘0¦dXAÄÉ/„¥3&Êܹã!„QÚ_îUdé²…ÌŒ¶«Täåaì—pbÀ´Õc!U!0¹Âígÿá -å.ÖÇÑW=ËWW"•ÈÓöäq­A¯þL1ûÏ£ (Ѐ¤J?ìC:L{{{Lþ(^!“v¤QWtˆÕÜ!äÉ@iÜ`<Óõî!ÚÌzéžÏNw C6üúê«"ƒbPªDÙQsqås¨(K8™`EQRÎ7¯ÞÇeº„-ä“Rö6ÕjŠiR¶N~Iªd, älÕ™ÖHhÁ úÅl#fÑêÞÜõI°9Ry*“\šì†>µ¦T¬Ô³†Ú,6U¢æ»¾<‡" Þb"µŹÈÄd¢ð q>#æNœ¢XWüïøavˆñgî-yÙÿètßIæ:¦èSÆWŸ’¬7Èt×®#¾„ œ{ÍKâ@5ƒ,ƒ1 íOY«S"¼pZòDˆéWz¦íhåBW£ ‹sark¤vŽ¨î›‚Ž3Û‘èªÄáÔ oŽMÆÑqšÒä½Vj!ËZØšÍÂRaÖwjÜU‹…¡ª D¢ÄX­ÄÉR0l• "’BâÕ¤Ê+«)¨­õ¿¸®K„i5Ô{X”o›²^¬+a&eîSfv$Q8¹L·Ä“‚ÌlÀ`®ˆÆâñ]Á¶dÔF3¾ª4Z»¨¤Œ[Yg4¼c"[»w‘¦U&€¶`㨊ºèÆCÎÐõi1Ý@‹™</'i8÷S«Vצ²PÊ.R,m4€©æR'.a­…*#ßa©YžÎb‰ñ{~¸W6<êXð¦3‰/‡’á|= ™lÌ@k3§¦×°ˆY9H¸w¤š£\4& ×'2$3¸ugö˜ô‹UC!U¸åØ·h©ÍL=ÀÌp×6•Zx_扬]*…D«I"×ø‚ØÒÚ¥› I $e¤~ó ÄΑþg×mzÞo-²58ñØÖ(æ¾BƒÜ¼‹X 0G³4­a6s‰Z[1‰õŒÄãðõ¥ìoŒž|lÕeyš,’Sù,AЇC#вBT äEu¤gOR¨aYÔ§& ä;@’¦ýî‡T}DÕPE¨@àÎ8Å[Ç‘Kåæõr•[êEkÁNÚo°í~>Õ º¤Õ56Ú,A1d‰u@¨HÐŽ  ªê„Ÿt»{x²ù Þ‚JŸ–u]¡Y° @”•´cêIo¬@?{ÄG‰ÎÙÔHH€ÆD†dHJ&J'I‰÷‰‰ö˜ŸxŸëèΚwUõP…‰¬lƒ¾êЮDSv˜ËÈÈ^ËTÌ“ `A“ðž‘é gGÕÈŽ.óÏ–ýFª¶QuNä‘(-FÄΨsv±@a°™òLj"™8fpö®­¨Í/ZÅ•à ¡¶—l,YZ&‘Ë"fy†#ÇP…» Ghb²^NäÚâa8A§1]6‰£*`)àOcë¹²©ÓÉnswrÝzBÆ.kq-/¹mкøv¡bªd-Z›Æ¹!‡?9˜‘™‰‰‰‰˜˜˜Òbc÷‰ñ1þcúzk·ó™éšöø)œë.…“îÛÆþ9Œ#Wã– CŽÔP° ²ÛR/0àäP”‡h1X¼‚Ã+‘µ~‹1®òxÒì]š7_ k1í·LãÝÓŽŠ27«R]Šù$d ‰ÈÜòëÕ¡5-ȃDÎ7Z•‘FCEö¹Ý@¢4ñ§}VïK/²ÉÊÆüÖB(D¥S%ôCwˆ0Ycë8šè¼N&Ùc)¢¿8]¢æÞ™·‘3æ…‹yô¤Ž B M;Eû[ÊrD2Î,MÖd«6(ì®K%¨%XÏÄ`³Ý@²!yUåyŠëÌ(ˆKшH(eM“pãBÔ‘kŸŽsWm"¬Øµ ·Z%,’&Š}dÞºªîÊ ˜BlÝe•$ë¨Zßm\ÞM²‚[!Ñ"˜`4VäÒƒaóT¯È*‚ð«ÖžU×q-'2è·^Æó†è*tׂ3){¢°‚a´L®²Õ°DØ!j œ×•~A" )# ¶zD,äÓÅšè~—ÌÕº‚Á&¥—ÛeK‚¥>Z­þ ö/+ý…Èîk¾MšóhX‚´/™¥g²½P$è£gza• y_]òÀãÒ$ƒ®‰l°apÛQ¯¾éYÑæqÕNó/Ñ*ÃäcójóÛÂÖMc³-5¸Y]W V—ìäØÄ=dúw+‰µV•ªÒVíЯ‘]zúØh&ÄÖõ®$Óe¶*Õsˆew,ÖÈ‚õÿ¡zºiÕ¾¼BÅkšJ ¢¢ÙÈÊAðmERkë„­‘0v¡ß ^¼Š`?¡ú«#qÔ…¼»)¯bɤ6´V Í¡Ãg`&a‡ûNŸ/XNÅÚ¶šmÊçFˬ‚ªd=ž¡b#!ç¦9á2ò>:Í1 ^ãÛ%—¯ÓuÆ®*V®ËLm‚8±kµ¤œõiúyáŸ,[¢æ„¨Gn®ÑãE)I„<5-AªÔ<sÏbR»³ú˜3FÏ+&HŽ%ÚÝ€¤GÂ}Ò“LÍd¶¹8hžé í²+!E¢9Ms`®ºE7É75Ë9 εaj”””¸ŠLb@”Qép¦1…¾´–Êh‚Xù~Tiä$Ä-̃,H€À2·8$ȳÑ)”êÈÑËWÉÐÊ:ÍQ ¡ùYq±n\ªÝFÔxÑ“2 ärûH°ð$eIÛ~Í„cÉã{%Ÿ:´+r>ú©c¬î›NPÕ® S–UÍCÍ&&º j½d:;©ñd±»„¾Êɹi›;cûRï›Ç2ÿ)F}ˆ#Ñãï¬%Œ¥l1¸Œë8@cÚu’ˆˆ÷yŸóæûŸ’é¬n+^‚.)ù¦o7™PW÷e2kØÅ’Û?k\ÉY>ª÷“'T±,Œp“pè:ÕËËXs×9‘•]ÛCuà6üÃî°r¶Qîõú\XZ:41¦"`p‹-µVÐí«õZKYýÑÔ¦ž9I¨J'½Ù+3á"Ê©Úó„V·7TȰ ‡áå0Na±B¥²JòWzóm;+ÅÖòª.S/;v ÌLîøÞ^Ø ,åÄùb·ÙÔ¦}|:– í¦Ÿ¶YÎ |¢¶œâo`| ’)b€8ÖÈ\ìõüöê=¦%Bž’©Bv°×ã®[ Ñf°{iÇîݦ™%´Y{£¾yîW¹˜Ú¯'Âõæ²é%šöÌX¶,9N§î&1éýé̽D¯ô5)j¯¹mG:ám€ãH.sR€X |b 6Äú©ÞLÅJv¨†6£r+ƒ…Í6Ç p,&¹Š9‚!›V¢™–®3ÝŒŸ”ª ¯ Èà„Ú 5Zk 0©T…²*ä˜3µa³£˜L–w§"êéªì5gV®›B¤²ÏÖ.±»iÊÕQk4U‚ÙV“ë‚„TpÁÛ[¹×+3©$14á}I|o¼ÓIV‘”ýHb×+‘Yƒ?dÎÉ‚ïs”ºŠLÎ2Ž6ÎË>XQ´Û;ݹS¯—ÊUî*wëË_Ü"ô=æÍ†dócI2ö­êb`VAÁñ[2…# ÑP1;Øv;Ý“µ9ðXæ2Í? – ΋\pÇŸ0Ï$  cÛ`”°—2=yóì]U’Ž|uB Êï$¹s_ÇrÈYT—Æè€lƒ»°`L@ˆ‹ûµÔö–•»pJÙ®Ûp<¢*ãfÊÁ$¢TÈÊçXÖHãI™õc»D÷¶è® 9É9ãqqr)ëûùRVîúÂ{ÏÔ™\«×]c3„2å—ªÁ àî‹wE¦ˆ„Lļ‘… ã¾Yý ÇRwZIQ Ȉ.+î¬ÁI+l‹-µ.>xÐDi÷“-O–¡Êö4Û½f妽äÇ¡u¾X–¸•‹6 ÆéGß Ü½ÖŒª–7ŽD–í L¸ xýæÅÖ¿ÚZÅ ½&·uÞƒD³å*£Ù~­wå_ÂgÌ«auÂ]g˜€Ô…uŠà8Jt1žáÛ> .¡,z"Ë1A¦È^C#9¸’Ée†Û\ ØÕIWÐQ; {Íœ _ã’#X¥¾äºJÛ¦¿*fË%¨ò¿ÛjY©³Sð,%Éw»?É V>’YZHÀ+hPºjW -\ Â\£:·sAMY÷ƒ)ä”c+¡ˆµæUŽn@®ãi1ÂëÉÂ,0„ €.$6üT±=êê*N¼eV­Äd.÷T¶rÔÃØîvÀ}pP‰"fÄëµq!†ÒŽùçAAYx|PT C!N³X¤¦7I¬çs?öß %ŠõOxz™mZ\èËm[ fËØ…ÁTéh¢ èYÿJ›*$ʬý¼ýÿj5ÓAò£bRB›ôØvCh.ÇׯÚmX Ú}5Ÿ6øUWe=æVPXþ¥#Ù»ÒüI¬l¾FœâO^”üÄÇ»îŒ232O5¿M×þ>!NÛ¡T‘9qc?êQ^ãĪݯþ»â%oÇ(&YC¬‘X1!䎦ª‚¿7r”ÿ0bå»ÈÃÊÄÖìÔɽ ajƒØhlY\†á·@±óvE0Á¼”0Ë{ &ʸ$ÆMÃ0ËÝʘšuî6J­ÛSµÿ A} w88qD‘ŽÊíç…Õ”wPk£aGÌqRHK·ÌÅŸ g0Èäw^F:¼D™0m¤R¥ù*ùÚÒŸ·Üp–Ùv÷2'5 »œZKU[æŒKE’€)ã%Ð?ÄÛ:ôXÒ= e$isÝ‹d( ƒ3bqA•Pv·®C÷^XâN䎩¨Ìž6ì7ÿs0îHêˆtÊÐü×d“´ä% jj¦>å,1µº¼½ ž£øž/2CÁ¥8$0€ìŒèT’ùÚ¾ ÞýMñ,½¿• i k%²•Z6 {yDèùò,qö6Äš´á‚_™-$SÚ¢Á@2·2Ì2QG!~aõý ¬û³vk$Í Jxó æÆ•~¤t“C'²Xß|xº·/¶ÇÏôÿ£ørÕ‹b¿9»D†E’/î½Ê­H[~¶‘‰.§–$)$l®X|²­òñ;üÀy¡BŒ@ ª…¿ñ{y Éów8Øí­±ÇɤÇe”F¥= \ŽÝ ®Ýµ0Hwu“5s2p¼‰9òPÊ0,US 5:ïLr' n‚˜ój\NhZ6„uÀhÜš%¸‚Þ#ç°|Ö|[›·šìŠf.@Õ÷ÙPLí{Ť÷yw%CXÑd¨©ùy¨mØõðúÑ»ˆŒ]ÝL¯»çÜßÀÿ¶ ?õûž«ëk¦2iàÅž0 ®@‘B11°@¬Oq¨`èFõF˜©ŸRƒûˆ¹T5bM:3ÂÂl;°B#"©4 ’%¬šìˆÔÐI Ëœ“¸Jì’Ä6lÎÍ™¶AÁŠ”Ih.A•Y‹0+úxÐÞ±ŽÅ+™²l‹#‘c¶!$ú«f]Á±\B|¶6Ø€ÑR0/–4ÞC3y !U Ö=ÅL™¨OÇgj½Ç´¨cUJ̤ªœNHÀ0‘DDŽéú3ðFBߨV5é>³$O:©'š3•fí²Û33䔹`¢œ…ª·@†©ÁÁpGîøÜøéõzhÚy‘{ùvð|1˘à=²a‘4¶zoZÒ ri©†2wg&£YP‘‰=™NV@Ýh’k­/ªiurê#¸ÁJÄ*Ëc™Pi€Œâ `/ VÆý.¯J쨺ˆزª¬¨X²{ÀÙ+õOò>"…“YÑÅÆXX¬½2‡°¢2À ,Ô]Uc¶  Øa’äÄ‚»nĆIP@NÔ…•©®!%ºU¥ãÀ›*qSJAEÄ»S&lá–Åš ×þÔ’¹r†£uQòèR–-–*Pì‚1%]¾„¿´‡,KQÌ1qÄw"F# W¯ Å|² #âåUÅK`» Zî­«-ÐbÝ~ªæÁH;²²â¥_Õ#R2U#¹eH;{ˆǤ^P˜ðáBEc Pc€~$èZŨ”.÷° `l6VÉA9eY ñÕ ´ó(î’c`-„¶Gèaº·õÞ¾ÇÇDº<¬UÔÛ4ˆÒ¯qEt=Â)¤4‰¼‹a›»—z ¹)°˜*ŽY;SÜdH¼W¹‰3 ŽÉ@YRä–™©¶É×eTÒðA—ØÑÆ»a±““PUÇn&NB¯,ñùŒÔÀò;u±Ü²×oÜ\‡GsÌ7Û"6½•Ù U±Ð @#Ù ‹2n]М{‘³W‘‘жXZ“¡Ë]PkÄ[¯&•ÔÙf`¦^*3£JÜU±óÚs³®qˆ-**ìJ6"Ò€LˆÓ”f¹"`4ì#,øfVØEËŒiíBížýhRTÑéÒdH匑,…þ„›·¯y² äA#÷5­>•sÔJ±ã#»4«åØIëÕõ©>©§ÒÎÍÒþÔ÷‘mÛ’•úìÁ¨(²¾H ÖOÙ†1M=/±\»i‘eç$›,@$±[êÉ ±b2PÁ.‰d¢-¬qį ²fÛnDlù¨“ˆ‚ª‡—s~Ggä[‘¿yjèe—r"мm¤ª ¸3öØ•l…Vù € xëÓ=n,^[H;LrÕÍ"²1‘ø%€¼©Î‚m+«¨dee>H ÿÁƒ68ñfÉ•x‹ÆÿSn)GÔïÿ¹ñ'sñ±)¾ßaLa÷L—¾dd¡òÜpbϳZUW£Û¦4œAÅ»[#\/nB{—jCAÄÁGËâ™] ¶U˜`€–VP1€•Þ퉭…©RrX‰(ÈÒÙ1*[q1ª²fÀѲ*ƒÌò-G!,ËdÔ>?¥NXŽÛšðGA©AgUle[,QŠáœƒÚAÈŒ–öýB€ õ ®QEd¬å¨O ŒIúN"ª…€´¬c d¦¿™Šöìˆá ‘ÎkxïŸ?.:ìÞw[ dÉ L¹/4BlÙF#%c®EäßbáÖÉ|V9˜’$$¿‘ÊHP¦S©D9Vl£åhË3½(¾e¨ßrÖÃëÑ™[ÓâÇ¿Šä ê9ºÿ—~?aÔ’$Q¼’2¢"–gcJ }OSëeÓÇéòϬÓ+»KÛ†G¨Š³Ä!Ù»dG‰gvD»7\zÖüA’Ó#Ś˖|&"¯S EÜb¥s k$’W~fÔ’®Ñ´Ò3vÇnIl‡.˜*š6ßCW¹7špãHÌãÈ›l÷BçaK¹\7*NÀ6Q–p¤A±X³bU³²C6ì*Z>.؇)ƒØ!ªóÉw8~\ˆ4r;u³UÉۇʱI%O; ÈÑ]úP1Fx–>dA•ñT-ïþ ÷d.’ÏWÆue9fTÇ—ù–.‘þ¼2Gjà£#Ö“Õ$HV"ÓË¥ïFJ1lÃ+D± 8÷‡täŒF݉p°z–ŠV×M§žMGmst-ò‡f=ÄÌ<¿VEC½µâ u¦-B+FèK"¹@èÌ™i°f¢.¾×õýψâkbª±IH%YJ½Ã!v ¼Ž<‚€“2róÑ4ËeÞaÝ¥â^Jµä]¸µRñÄ7!€NÙ÷qaJ©Ï8í»†*í öåï]>=³’Ò-³âáY*‘ÁÔ«÷ Ñ£VHº ³“”Ø ñ*Ò˹ÄYU€•Ü‚fµ-lFÄ®a€*l,q(' £˜²ÁI¶ä¥ºV&í]mºæùEîn¯L¶ç?RƒWXÐç³vù¡Q]ŠWá“|ºV2#9F ‚·^€¨¾ž0u|¥vb"0̱pUruR¡›qúAãþw{Rvqï`ݼï ëŽU½_ž½CQ$$ ‘„ò©üNŸHõ)›JÚY¦'·£0<|û„”R PŸ¸°Ÿ0ÿS‰2gJÒFÍkRŠô¾³ÅûG.*¡SdFrÖŠ0UĆ͘” Û!8¨ê†ÊÆRµ‰ÌîŽHÏp•Çk¹“LƘuAñ$±Ê˜ËŽvÁŠ*BŒ]h3Q¾á7Zk»©q 1XÆ”jFêU²±'3xe¸êìb uªþ"‚ÿ08,•ú± UØQ—¡VÃ)#k ²o#¢nÜÊ‚¯33q ÂüQéQUIjl—d_,Œ¡(fåX•ËÙrfí²ÅÙ®‚ “5 í€(Q«.2aÅO&˯D×A¤‡³,¶²J‚6dhÕÊ€D ìT*yÏ<¶ºøŒÀÆ VZ•ZɆw ü8ÖWôF¥f¡`Ñå•Ô³I ‹·ní‰CMÚ·:Ç hÿIË»d/tÇeÙ{ò+1Ž4wep¬°p¥¼-JI ÓJeçÙÅÓnÓ5"rmÛ$ĺ˗E ù‹Ûì¨ ”<`ùìöÌ„Œ\k~ñ¤ õ-DG&[œc(\1p%¸ùaŽÍ}W%EK2.x–j òÅñ€Vj»£½±è‰ˆÈqkbI ¤ÑA“ âѽöŒ rfv^Úö€H¢Eß/jHݬÁ|/êe=É—n+Šï]#{0Ø8•VG$…1¶öÂ{ÂÓ(â¡Ù·äzU €R““xÓ¼M¤Y˜#·¹ƒé¬)¡fÏÈö.Ãm¼uù§R¯n@Ú® UW‚.‚€/és×ä>›`ö[lhwƒ¶þ¾7;ú†´éÛ…4É›ñ“œ˜ÿroüdô º†Õ+˜`ÁVñPr&€«Þ¬¿#ôýøI½ßΓêÌäyþf?ü}‡_‘zwúMà-÷È_·¸ý~¾ boòM»ì’iE—k¥*Ëÿ¢ªvûS×ä^™ˆ_ÃŒFál×ÿÛŸìHýFÿ"ôáâ&]ìã#­š­è‹ò¿/;õù§¤Ná·l·þ·ýþÿ]úƒé WiŽÌ7‘‰¦ Eê”-]øëò/Lªì0ìî"¨X7B…¶ßógÑ}4‚?@æMI(äâ‹ûë?åoÒKUYé´wÓÃ¥`ÍöÃ;3pVU¶bKPcçúWÒú¦¢vÖ,ë6Øã†Ûý¿ý“ç¡è^˜QY€Í¨3¨Vo>Jª‹úP"ˆ¾—Ñ==…‰¸(s9.^êu7Ô]þç¯É=4‡_ÃŒd÷‹4MåÒÍ^Hn‡¢úx\;GS‰b@eðÊÊßr´øëò_NÞáÊÉ<˜µI%oÚwòµôûuù¦B8¢’$|Š¦Ê ]í_}þ½7¢úsŠh,V>ã¸Ûc÷ ¼_/výEôðåû$± Ù‘Ú±$® ’);(mµ×äžUÙ¡ËevZβ¬h‚H»ÿמ¿$ôÚ°(}/f£Èxjj;ýGQzV†±Ã‹«+gÜ¥ˆ'îmØï{«ÿÁ eH#ye8Ç–v¢Ô£É¥ö l<ÇÿEîÅ㸖[3]ßÎ}Ô ÇÎÞ:ÖüCø]LºeÒ—hXc  Cì¡Md2K{ªÖIñ¤-$S#ÈÀH˜–ì« È¶#¸>ꀰÞÔ}h=_I¯¾aV)]ŽdŒ«vr_ ÜnYËßö~Oh±Ÿ¸»I•»^ý×–~ß§Ÿòušý>†3$Ïá‘pZË™Ú÷E6ÅAª"_]ôã3Äf)‡‰Omöf4ÂñF@ÍvËXêUÐÏ©X¦ÎVŒJ´‹+'pS«Ãr Wp#ü©ç‹MÍ;á f¦j…ö f;°ç§õ¯MŒÆ¤⫌Þ•Õ]K…RÉ’°4EÕtº½+ûu07,6–3Ì€Bû½ÄkÏù$…’É&€É'è:õ\‹C.ž1âtÏ»«Š­؇ÜnrP,o¿Y²æÊI Ë©ïìK>$å’`ö2a‘¡l{ŒrÍä—ÉÚŸ¼wk-ïf*¡š„w“åyuÅJùbÎÓe]Ê*HÄj;Ûšå{5x´2 1´2„—¹˜‚ëTÙSó m[ '¯Í¤há–æU‘ÞBòŽQÈ&‘‰eŒ@#zÏ`Z-^šp½©âbö‰;&\nòQîO¯JèÖ•ŠšlH8Ÿ±¯cç¦I ±:ÊR4w" ¤L\(BXò^Ý1÷eËÀýÂBîHîMuë>¨šh;p½Ë0#8¥U0¨ Ëp“‚›ËoSO6¡ÃK6ex͘o› ,{C#k’‘ÉØäM3–=¬ y(Š[¸´¸È²3±íäA¡¹©¦8ãÔryXÑmõî®ÛÛl¥Ãã÷µ¾«ø}kG”˜iDfXV8È›¼ Þ$²ˆû¨Y.ÔéGâ 爘"H¤.Ë:IaZ2r‹·-:±Üñ²»õ/¬ëe]b÷~SÈU¡h€h£#±½ävA”°µL“Ò²•JÏõu’H@˜½SfZØeuqädÉKFÞXà-øÉÈå"¿}¨Ð`3#ª‘ÈSÉ‹`·Ä2ª‰UW‘9lE¤´Û)sTAPDm¡iBpe@µæ•’Æ&žƒ[Éãa@iIrì8 cvƒeÄ)²Ã²Blj@¦N^2ŽÙX:Þ÷fÚÀÙH‘ãÔ@c=™”^I.ë˜ds#‚ƒú í­/ÒºÑëµwÔ˜CÎås§9Œm!͉1&@{Œ„±j[¥ø…ãe‚{‘šìÍ©šG•ù1HH<ÎêŠ_åã¿p kôú}$ <òÈJ™:‰±Ê£wÛp?­mÖ§ÖômËά¨’Ã"«¨Å³1G&ã–7Ó ž£ø– Ž%ŽC!’aŽ*ˆ ³lÒò?Í*“qzÏQÕë;ò3`b•V?—ÙïÜl^Íexâ+­®xÄJÊ’ÛÝ’H`;€’=ÄÖâ‚ßq·@®E‹#CbÉÎÙi¤Â;"7ä<èvT½ºÀS&HÂ39Rÿöš«½ˆÈ)£]) ½4”2=®ã?Ë“&7JîËžÀ‚k2[(ù[–³BÑÈÊûMdàÇÇÔS^›Ôµºw†©¤EEtÓ‰>[!Ç(’3äRãøSa†æTø“Dqî$ÑZºWZ7à† Õ[âCëúiœD"”HeQG`ºw|SRìá1HfŒ[-Õš¾¡ÕÁ:<ˆõr´Eß‚–ZÝIÙ‘ Ž6u _™úqâ:¨•ã÷=±y Î\Øð¤š£àƒÔ¾§¡†5•µ1”fD>î@°Û_Ö§âtF‘`Ó4¨¨H•¤(}¤†ív›ŽXÕº’ºÕk_Y#K1î; €c`¦ªHý|¸ä-A»;ñe'v“ ;œžÓbªfv ~Wb.2Œ½£¶?­–7g§ô%`Õ¨ÁDNëä`P @¶çÄÇvk¼¾‡òˆÆi­€˜Ê,XU1˜{J¹ EŒÒïjiýÛõû9¦3÷Œÿr£Æ‘{‰‡—<¥l6ÚÀ=†´µ‰–F<ù/µÈÍ•³¾Dâ|R– >ƒ3°dí¿. ·OY " ;ß’z—á½$‹ñ´Qˆ–HÆ-ˆ\V÷÷Pß]ÎÄíû1¥,\ê'.[,ìmïðGªù²wé¾Ñ2"©à¡Ñ¶e¢Û cÐøsC–D@(\8Š ŸûG÷ÜßRü=¥•ÙóenßmB¯Rè²€(Ÿ¨³~:? i\­â ß-VÄ[”ª®MeÈ\˜/rJü5§ *DŒ$ÛuyâÅet ‰/Ãe‡²53Ql‰þ ‚+—£ãÈmì…"?EŠ-dZ´•‡m Xð|O½©‡?ëG•6ÿù§ÿÄ^  !"12A#7BQ†¶@av•¦§Õ׿ $3Rq‡·Æ%&0b45Cr‘¡6Sc‚Uf—¥ÖF…’–¢±ÁáâñÿÚ?ÆS§c)‰´‰©s&K¥¹ˆeV%b+/H“&CÕšs¢@vœ·^yÕÊrS’”µ© A.yQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.Ûtiï£Âžü=îmx©x;ß"™@ÿgx^_[êS­ÿ¯Æßï7'.ù^T~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶ò£ô'ñvÞT~„þ.ÛÊПÅÛyQúø»o*?BmåGèOâí¼¨ý ü]·•¡?‹¶®c_žð/ƒ?³}ëø;¬øF±O¤ÿ®{â¹Üõíÿú«»ÍÖëƒ>ñùhßKA Go3ÎB«{²„)±&2Ü4ẼsHmÇaJ -}^[M¼ÊÜŽîG‡[RÓsú³í†ÛzÍí† ø‚úìO ˜†x§u†zñ‚ÌÞ©ŸÕä0dn÷!âÏœÛÜkõªM—»LºÅF21p‹†Ãó^e¢²9sf·vÌÔ)SáÔàH£Í§ÊbdGÒ IS2c­Æ\‚.…‘pG»@ùKöwmÑ§È ìí;ÜéGÔŸêïtÉ[ªâI^NécS%Ò a¨•9U*ª•†R¬H˜Xn†ªÛ•RææDhM4MìÏ3¹\„E„Õ¤œ™%ˆ­»3£L{kêZK’§LÃÌć PSò¥<Ôxí:ûˆm PéÒ£‹)j³§ô“‹0r¥Ô#3%ø4 ? Lxn¼•.WiÕLBã©¥oTË×ÎÓk I:¥H¤ÔãU`c q »Œ*z R!P”i{™€¢­ÕÒÃõ90å¢.é.-*[ 9ZzV:ÃÝ!R˜¨´Ý½JŽÕ:²–•+—Ò"Å‹Ÿ:3öêÝ] \˜Ëß>Ë¥¿s¡_áÏó³ð.‰z•ne"ý1`¸`E‹L“–léKjãÂ¥^U²ú¢F7§J3(“qÃH¡ÔâãÚåB+þޱ]R5Iþ¦Ã‹š&áÌ:ºÝ|¯y)ªiLh²‹ÑË•0Üö¡?Œ0Ò|C3¤Õð~ al²Ôäñ )‰;‡¡ÌnŒ8)†ž´ák¤ºbdÍššwLØöfT¤*]BR!¹NŒ™¥¨I˜ò[I}@žRÜ fÚ0­t‰KÁ8Ùêú£ÿ¢ìe„ ;UU¸±s”çª53)Á2 ÏQ™œn8Š”,?îcŸV}°Ãû`oY½°ÄŒì|QQ‚Ð躙ŒÌ ­ª•Ó#ËÃer©½àú¤–ÜŸ"ppV˜yõ³£"Zaì’øUÒ7ÿLíEéKͼ4a¦è¸o W¨î¸óu ¤¡QvU?JŒºº±<¸æ=9ø×¢µ¶óm)/eé‹`ì&qR[t}"çiˆtê½iÚ Eþk6¤’ýgÀ-‘#4¢)³´ª<&ºX¥cx&™-Êö¯á†ð^0£Ë@kªÉ¤R˜¦B~T-ò• ŠŽ~¨‚ÚÚ™)n&ÛP>_ÒýÅ[tiòû;N÷:Qõ'ú»àX鹚TÌ'Ž+õ Tý 5 bŸ^¨H¥<ãññ}¹¥ÔÒŠXc©1!u·Jë[æ¤ÅÜ^_…%‰l =#t‰:>ú;©y¾± n)‘[9Ð7±e°üi»O²ãJR+•„1Üœ#LÇK1E(PbUʧ®"`L©Ð¦½2"質ЄÉulTS¿H’Ûhq-äÁ´ì Šª-ìÈTµˆÈ­SgÁ‘¨²X¯Qž‘ Š«ŽnQ%¹Jy—ãKSòRñ#ÖjuÅâ^ôz6?ß>_û¹‹>Âïî·>í’¯~¥WÊFÅ„z-Bظ1š ™—CÄͦÃRrŒ\ÿÉvàŒ—IKÕãTbÔ•&E”ôhSœ¦J‘àù­Æž†œÒ£—œŒ†Êò©Iqµ+ÝèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜU·FŸ 0o³´ïs¥R«¿"]V£P•OVSU˜Ý^7]LÉO!ÊDhE2# R*L¶'g+€ Ýq¢û.œûÜê-­–%hÜÝ%ÄÛK$F jÌ ›ÜG6ivqe6˜RrÚêÈH*øÅ»Cg÷ÉÞ©Õemyl•fV@„“|¡²«ZæÉ×Rvm ïÝJ*JÈP-¢ÆÉ@öéÈ\l¥glYÜå„ê—r«UÞöµûÂr'Ϻ†m–ðˆ×W ‰µê¤Œ¶²ùv¯—‹^ÆÉzÍ6¤ïwyÜIßü!ÝÝdX«MB@áÙàZiZ’ »]Á9Nm>=Nšm–í¶´Þ)¯znE·‰I(µ»¿çÝm‘%¶œEÉpdÔ$x/~1Í+Ó)ó…¯râr:ȤY%exî ¨ìæýÛfTt!Õ5d•<²@*Aµóëñ«Þ×Ùæº»N’Õ³'„'E Sesî×»n²Õ’ÚxG5¹¹ ÓýÚÔ¾EææA½¶S2—;íº›(–x{@‹e¹ïüV£VX¢ÔëhªŸO¥Ó$»CÂz*cqÛ‰/±â¶g¯ÁùXiÚ„VßT¶ŸÈèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜU·FŸ 0o³´ïs¥R«¿":[¢àÊ»nSk’J©ývEJA_T§NQxE[-ªZ]¦1¿eQ_zL˜ì4Œé‰™=m§õ¦KØ KŠmÂÛÑÜv<–Ô¶Èôg\e|!jiÄ•èÊ â‹¥åóæ6Uˆ¹*IËËB3klÍ Cël¹©BJóܤR»€RxÒž@÷³f}Ä$Û‹0pªúl–ˆH¿r9Ž{gPñ«%.†ÓœNƒ´Åª¬V.³-E+àqj Þ$eÞ'˜×Q§h'³È6_Ü¥%e(OÍ®U[2вäÊ,9pqN-…X©$%$îÀI׳eZÚÞö×d؃"Ú[Uoÿänsþßd¡?§½’“½澛[^óÿ=›eå¥!6݆’¡|÷ΫªÂÇTß—ϲ»¸‹ ÒŽe¢ SyÇù€Ðyé•VGÞÝ´âåÞ7‰VuzT£Çñe§gPµ-N£z¶Ô“d©®¥ã•kÈA×Cam‘¼R–‚‡ k( svH<<Ê®E¶Žæª9Cj“Õk•Iƒ¬Ùú\IlÇ“M,´2Së:#Í[Mª?\”ïWݯÝèWøsüŬÿ„¬ +,ûêD~´ªNæ^pÙŒ&åë]_¨õަ¡/ª ]oªž±¹Ýqì´6ëK[¤B•)»©hÒ )ºÚq1ç~Y{òìÚsåÈ,‡7@8HMÓËS{AQãe¥¬¹™$0AZ²ðñ¢’4ËbAO>i#¹Lp ¥|žqƒ›¤t‘¦l–ºH jüd„ï¾iº¸sZâé9ˆS€h •`£hùÜZ̵8oÂ…\.Ëá±µÓ§¢û )ÄéRZx¤] I*€^C¨á<O¤‰H/€cœ…z\œéVæW #¦Õ|-PVŠàL<ßé•ú«‰Dç$@[L†gbĽë‹KïAi·y×[{w¡_áÏó³ù$“`5$èçdΤT`Õa-JB&S¥ÇjlåZS"3Ž´¥!Z(]'C¶ UZœä¬[7©Dz*#ÐI“"$Ôœ“*1j*žš›­‘!hCO¬·ÂºœW¢Çôz‡VŠâ!A©xh0†!oÌuÉ(rò›“Õ¦Nn¤ï”îWU’Ö5ÄôUjFkñ Uç´ÄKIx¡ŠGç*“J2V“$†Ù}¤0'¦IŒÊšÏ¾:ÜšêŠ]ðÒªÓMe6Âb¶÷„úÏ^ñqR##ó„å`%”ÒBv•:ˆªt©ò•š{ñ'HŽõKÇ8µ&jYuw9Qqi”d]Çw£˜ßxñKm©[§q%Yg)R\CŽ%h¿NWÎÉ”ïX‘¼ZÝT—w¯ÈS—VñÇ Q.•q-Ó¼ZÈím» =›„¶Kà%fäweÈmæÛ¼¬»4T—xµ!9Öêó Y(Ê œŠ&êM픀ŸŒ9CŒñ:”•¢DfÕ4ïY)mlîcN^iq¢Ù³©)Š^ÊþçzØsl+IÄ4ª!Ê\*Mn®íCÁÏoޔà ÄkqÌ”Ø0ãÆRåͦ–2­ÌÛ‰ðÑ–>ʤ7Œa6òK Ì”ÄØ4ŒÍ- *ó#1NRT¥+#Éc¨6µo­“8¢±‰ðóÕ•vi-V©®TÏóH’e?Ñvx¹~N9õgÛ ?¶õ›Û AðŠËú_³¸«n>@`ßgiÞçJ>¤ÿW~G‡ñ8œfaçG€‘L¨F‡>LŠ´¨äÂi’üG™x&;òÝ0åJ…#’£!y%ä¡õç²×ãšÖ#·ÄyÛ¦Æ×2¼jµÍŸxefÿñ[‹÷rÙ¾jÝî FMØ[I RΤgP Ûöp¤\íž6í²Ëfî¸ žh²²‹rÔƒÏKlƒÂ”#6yBSª]ôq$\«L¤ö3ìèÞ—ŠVy&éÊB­[Rž.î@¨lÒR”ói N9¼ËÛ0WeE…­Ë™*BžZ”„³rH<œGuÀ¶·¿åÙ)]£­)oT áRÑÞ ®ïÇÂ3\´ÞõŸÛ¥I@JN¼C³”ž$?q¶a}ž^ì<€·T›¡KIÞ)W̰ ¬×ºR,mk$·oݵ&÷KŽfmJVé±Å—Nq›²uVΔyζá[)ËšÊ_£2µ5‡zS°i)`©D°Aº²—½½óåÈ4„iñóyA²Ú¤ˆél‚€ãAy¹éclܬ«k­†Øq1j)Þ ’1<·Ñ5±Tmš5a Y‹ 7|M}âÒš+@ŒÌE™<¥n˜ÝèWøsüŬþN+ÁéER¿Sv%w O‹ ;Ôø±¦YÚTè²*rÒÓˆÝgzÕ6-A›¬¡W,ç‘J¤â)ôZ,éH¨Lf–ê`ÉT¶RÒ’ŠŒpŠŒc–;)y¸²Ùmä%)}.„ ¢ÃÄU—+ãF§øF9ùI–3nnªKˆgÇvK£ªkÉ}©ÜFörå>§V§ ‘ó%JVé6I)<’°UÆ-˜ñ@˲׼-¡+SµkU”r̬ßñ~ÎÄ©6m'´´®õù¹HÕ6ä};n™ãK…ä)Yà(ÌŽ.e@¥æ9o˜i³+uã‘YlI¿.$~ÁñrôìëŠp•çñy87ã†È]†@›ðÜåü\¯¶cã)]Ù-åHP²M–‘”‘”$ñ+÷l€8Ý.üVøÍ³¶µ“n$ëÛkð€ÎñœÊϻ̧s!FÄ'öw Öºµ&ë:ÉS£%´Fï‰9ˆÍm5‘®šët”•8ÖC“]ÝÒH͡䠯59³v¸¦U *:j4ʼjœ–Úîe6C2ã8¶ N¥0›·—*ò›Ü_jÊ+nVÜØª‘º’ÚkÁÕ-ûj\–ÜŒ–×àÒÒÜit¶÷hBÌw!uD4ûr©Õ9ôóG©>Â|%H\†¤»Kž$ByÆŽŽ4­wn¥©-¥IL–|-¤{˜çÕŸl0þØÖol1øŠ¨aúµ>³ ¹riÒ™–ÓrZRØqL©[·‚iÝÚì¢Ë¬¼iÖÔ¯ðè/é~Îâ­º4ùƒ}§{(ú“ý]ùßwR©¶‹Mõ‰U®Ó)íU`Ê›SH‹P}·îæ ”Æ‘t‰Rˆ²ÜRmQâ- d²”ØP $[ŒðÙ9rÚÇ7o÷láͺ“½Zs)vS™Çg2{’…%Z\¦Ü½/©ôK93¥)³N ,)h>vºæOêó=Ín38»¢éP:æñÜõ~w-vQ;¤ö^ìqoVRÓn9tnÏ ” ˆ¶º¸¥4¦ZRoD’‘›)M®®Þ¼Òº ™lŒ‰ÞªÎ)YÜ I 4»öN¶HÌt‘8–îîLªÎVRS{ *áI=ÙB§ÍΣ½Þ6¼­+RÊ»Ærx”.W³`uÙ2Zkyd8Ò{WM¬¥úŠË{›/Ngb¦œ²Ÿyµ(¶“_*CK"Ái¹½—kÜð¦û%N,<$)RrÛ² HIˆŽ/Û{‹lÓ†êo|rÇYUt£&£ˆj€l径´–øqI@Ý *÷igŸ3èý©åuæK9•“-¡}®gÅ„ÞÜ*A:4æ ¨ï< Ahå*•T´£ PÇç :ÄG:Éë¯!êëL'ž¼Úÿ#¡_áÏó³ùü!k’Y©Â¨¸¼KP¥¾DG£#ÄQzêR¼Ï¥íã•6!,©„Så©k\¸­VªUYI\Ú…BeR{¹[mM¨¼ìÉO¥¡•–Q½yД´„  AÊ~¥%M¸„j’®/1"Ö²“¯;ÿ—d²·M6JPð²wŽ#KØêŒ‡¸/‹Óa«Éktîu¥!P7 ÏfÑ{%k¹:(_µ³/~‘ ¨2¥ ÙFŸÍÊ×âÍÁrU}‹ªh4-¨ÒËæŒùGiE:c©á¡…n’”ç°ÝŒ€(*÷¶}wÿÊ·É%µ$)„¢”eÓ€¤ús7¥”å·é‡2’¬È_Œ#9²ïÎöÌ õçb˦F–JMûÀ+"ê9F{\ë{ò¸ÕÝò$fÎݸîNA¡ÐÛ6šæë`Ê@I²Ô­ÐàP˞Ψj@Ïk‹_9›‚6u/ÆP‘*ÈÚŽ¾2Ú êåéàç³hC®2R§RµªéHl©E<ìN[r¾§aÔ ·œ/x†´Wyd‹«U[[^áV˨ºÔ­ó\*RRPr–ì„„|h:’;´½ŽÒ*Àš¥.¤ÁJ<©RSCÉ~;ª–ÒÚ% UƒHTV¦­§²µ%EæJRÞÈ©aú¬ ¬E¥¬ë…)‰&;޲‡ÄyieŘ²ÐÛˆ.Æ#Íe sú³í†ÛzÍí† ÿÚ…^¡—Œ›éÕlA†Îñii½ì™.4Ë{džљc2Ô” ¨³¾÷q ´¦•ÈjP)øÈZÖÚ&;Nã¥Å6°ÒžmÌ·Fa®Ë¦â88¼FdÚ¢fÒŸ9[©™P\j)E! Ü®ZçË¿mÀ”9? àŽo7íEŸ‹c¹PÕl:eG£-*ZÔ¢µ4Ç„üRAD„Ã¥LL5|1ˆÄÖ£½S~»²ÊU-•:ü:\<Ëh΀ƒÖ[˜ãªŽR·!QCM­ø+Âî×°}:žÛè-ÓkòcI¨¿(³•ù®S£rÝ3y1*qÝê ¥;Rë²ñÃÒ'ÆÞÉ£Õñ *<Úsè¸2ò_~;…aµ渚zË*eàÚ7¡eßD&• •»ágœmº¢ÚZ؃X+ê’ß²ÈBQÛÆSË*~Džüz£9”ŠeZ?P™1„…(É€‚ãËi)BÔêuRc¡;É1ÙmM©_—@ùKöwmÑ§È ìí;ÜéGÔŸêïÈ©ã)q¢·ˆi,Réñ*NÈ©!õÁ]]'Á±£Ä«=!çf¿¹\¨¯%„½!Å;°©L2¤¼â)H¹,€QÂæR3eEÓÅu¸-*T~3¦T­À„ó¿=qú¶×¸¸Þl»ç¸MŠIϼp-d]))#¾Ú¬VÛ=ò4R¶RïB¿ÃŸæ-gÝZ°]‰0ß\ÊÓ}ªD§è¬C”© ë¾[jžãond-ó.fšYëí%*iúÂj5(Óª’*/=&\YЪ‘¦Èp‡—-(N?ayDºô†_u+x»˜­Y†Íee@°³Ö¿ó7|×|ÜA¼Š:Ø‘®^ le5l¼O^Ê^U»±Ü(\¶“¾Þœ»!D€{@J‚€Õ`ßï›b„¶¢¶Îu?l·[Å[=•m(ŽYnlÈìÁŽ s//hæ.$­I½²fJTI7Uù_šÐêÂ7eJ(IÍãUÅ­ÑÙ^u¯e l–Û|î›m+'Kk~E¸nRGÅÊãfÛS.8s\¬¤­«+*rç Ê8|Ð=6=côM¨„!C‰Ë”¸¯;6¹MÏ#rUÈ.(B›Ç–Éý¶†‰N¾h-ªK{ÀB·AœÞ›vo}-˜ívKÉACKÌ›dq æ MÁ½’x½7Ðhò¼R½ò†K$æmD€Ú¬BKQ§³iÈm%¥Ò²©Hm ˜‹)&âéæ÷²†ºæÛ6ä)Íð ÈáÔðØ÷_ŽéùÚl[ñË–ÚR¢ÊBT¤‹X*ü#]{øvE2]J|— #E‡éR$«w½)a–ƒŽ/#aJ)èm ZÀªTêeA±b¤7;Ç^Hí-É-R†§Ûj,¨ñ£·"D ûbrÞOY~©¯;¶9õgÛ ?¶õ›Û AùqÑ¢¨"~&¦B” é]Z*¡Õ$*š•²ÒÒ¼ŒÕAΰäfÕ=ÆwËuƢȅ„_¨Êr…NªuØ”×JTËR«¦ï(©ýÚÄkóv÷ï8´n²Tæáú’©RçÓ%Pæ˜ìÅ}×)rÖÃÒYC’ql‡zÄ}Ä–‚,ÛȺ³gsô|*^R¥|[´åÓK‡.9Ü줷u»ë~|Šüý €PO!¯vÅ*Sj¸ àZ‚9x½í€¥\~·þ‘±q½Ú[néKz‘ÂH]ù•˜-©6¹UÎVÍÒÒ]K™2nÕ®§:®rØ*ã7ìØ'ˆ–œÌ§y5–ê=‹_0'ŽÍ…h@;1ˆh“üY¦‰‹% F”” Q]Šþf&Çz3áÆ$8Œ¯°âP¬®¶ëm¸šÀÄÎ3R À¦äðª)‘ –ëmɈ†b‡!¡†]\¸.J™-½ÊƒKm’ÏVeÀÒÿ*òþ—ìî*Û£O7ÙÚw¹Ò©?Õß‘?À˜Ì€‘£ÉKq¸.H„áVâršm×Ö”ês¥· /n_ݸ-©Ä8¦eue»×á¸Ô˜eQÝRVìIl©l͈¾Ó2Ø*eÖBK‹JÁÙg«)mÉw23åGˆ +^¹†—ráÚFù 9»IÔ©Y’Œ¹€$Âß§»f[{‚JNôœ–¹–™Šr‚«~ó¦É*x¹»t§tŸÒ”p®Éâ)½”2§D«M/t¥µf+² ZÊ8@ìßU ©*_•Ý%¦œNíhMÁÎk!ɸ*Gmç|wÛ0KWF„¤äôØßDÿÏþ,()kXmÆïÂáÍ‘Iµûòw|Yn6}EE.%Yú°Ôpbrúlak^Þ†õ ^u9—P¥6@W›c©ÎSßñrK´).ø‚”¶êžù•›R–éÐvö|nˆyØ"ÖÉt€ƒ›×ˆ¯@žþÍöÜÈ…ç2@º•”%%*!ÌæÔÙ³{Ù Pɼl yùo”Ø«9OÅË÷©¯H¨x=x~+Ø…¸ñrƒ5úsñá"u€„>š•+ x»3±ÞGVû~ïB¿ÃŸæ-gÝ‘FÁ2fD©lxi§e7ÉÔ4%ÅÊ‚Ô×”Û,6û¡5+u¤É‚$Fqja磿¹SPßTf‚VaT)Õ8·uÏ:˜üØN¨%I >¼‹»KÈâ€Ú @nsÇ ïuZ$’,räW?O1²˒θáq Nð+‰z ‹ZË#7¢úk±¥©Ô¥ÂJ]àJ›¿I>)E ^Ý÷%'¸Œ¯ÿÔ•¥&üP8ynFn-’ຒÒ7²'u»SœC!æ2ñå¹A*Ø6T´Tâœ*ãJ·káʵß6…9NkeO#¶ìgXU6¬¡´.TØñy@½ô×ÑÚ;)öŠC@£WÓ„œ£»)ÓN{:Oq:´­¶’<åjuÌ@zsz6/n7M¥°ž æ]Žt„Û÷ùÆþ‘m›]ÐÛ€Øålnš´æ`m­¬UqqÁÏe$¹ÖÛ%@´Ú’ ^¼IZ¶,«ƒÈþÍ7‚B”›ït.4¡›/*ÈÞør››÷lÞë:œYÛ€­ãE&ëçÙoB3e"ɵªë'r”ï.OXÐ ÜÚàŒÖ¿?7–Ò5 d.KkPrÜ u°@7Í¥íÊÖ¥Ò"Tiô7¥‰É5 íAtzSjM6ZÝjlýÚÒÒæ¥ (RzT†b¯"\%)2š‰#Ô)®Õc»"Cjm2^v,*’†‹1#²¶’öí† Ù oänã%±Ï«>Øaý°7¬ÞØbÉqù¶Ã ¡N:óËKM4ÚEÔ·YB5R”@™Ú§ R§bI±\F*™ã1†u y§e55§ß•:#.!¥²¨ñ›RiJS3Øgw%lá¹Xr—Os­ÅŸ2£u½ÀÔ#La÷hΫ|ŸÎ¨=3r‡ãu„±5æöR£»âMÖÚ”ç²×¡9§hö¬’@7ØѾ/¶¶®£Ù'š³­Fºý즸y©­ RÇ›™H@$þgöòØ]ÆóØ3»BòæUî—TyðŽ+ðñqwìâÒÛiÝ Ùœ€…*ߤ< ßLÖUÀî¾ÍnÞátåÝ¥Ëv®«æ$Oe(çñe;¼êY_¸Õ⸂2”…eu)1@JE®tI¶Ò‡€e׌2NPsq'6ºñ^àžýž¹IWèÆñd;|æË²»C-¯{ ¢äÛ6Èv,‡éï0ìyl¸ÃËŠò_Œ§:¼ˆ¯´¶Ê$Gߺ–B·o( ̪m;xGÍ–û•4T`Ö©Õi4Ú ´Ç T%*K®É¯5!ª„—éó_eØpäS™~R^.ń̬9[=nÄnc´ôJc°ZpäµF›¼2á©.Ý¥o›+-n!HZ›JÜBê²4•­)..ÅY[Ýj°&ɹ°'ò0ÓÛÔ{Æëñ,¥Qƒ‰Åf> Pu䉋BéIŒ¤-q›(–KNºÉ{£O7ÙÚw¹Ò©?Õß‘2mÈa×êP)õ „|ŸÙ”É{ä»!ÜèYÝɘ´«¶Zu.Ô[R\)SYŠz»ÈêåÍo¹P9W–Ã"ˆ:Û¼‹è¬‡R¶ã(-+ã6ºTròáAUý=Ài³©BÔ´§sœ”¤|Ü ·ìAâ<­m^NBî|¡ pf Û@l @¸ÌP]Π\›1QMƒ¡i Rò‚J¹…]"ã)ôéÞãn­´­Õ%W U‚l,¬à¦Ö)¶£SÝc³à§KÊÝ´íŽUsJx‡`k{4Ü\ßfS*ê QQZT«yol¶°PMý?Ùå'8ÊWâ_é8¯’ê²¼ÏNÀ);¤½avnë¥Yt¨‘˜¥DD‘ztKL¡!n·gŠî2,önTs;€u°Ì®Še:œ¦Ä8Çtƒ•½tËÄ{¸…Á½ö!×òBÒÒŠCe»xÄüV UϧΠllâì•!;Ñ—°¤q43 ™³()^’3‡e0Úx4J‹„¡*¼î%¶Ü^D$ï\È^Tœ©YÛ Ir©OcÆVr³(Ëo¬>ý D4D„ë ®*å>f8¨¨•%¶D9WÝԦĕîô+ü9þbÖ}Ø5:6$ð*‘ñ&ª“ió+^ðtdXíAeKžØZå±!—i–„Öä> vÞ‘kQó{Õ˜NIŒÌG^id¸ë ‘5¶^Ì¢¥0‰rBí­<[)Ãu‚s8жf¥.ç…f×9ŠÊG=UXFŽëKR|j•dñ¬’J¡½À¹XJlv¬¬®²C1ÍŽcã7`\\T„öÁí9ßgqa´5—´¦øsË?œ½ùq -´ÀrvI:‘)$¤8†Ñª‘ăq~]¢Kwk‰FéZUb. ŒÄp‹#>QϺãSµ†ð:RâIMÔ¢¼‰)¿èµ×Oùwî’ÛÛÅidæÈ»‹ ye±áʯÖ®6Íe5 ï·ˆ·‹?úÂ:õÚdÉ‘2S©f4F“!åöa„)×]WùPÚT£ñ ¨µ^!5ÙµºlŠ´È® T‡)ŒÓV74É(OÅS¯G‘-Gi¨¶v+¥â¨QjX²±T¦V_nEJ$ùfZXpIBY[áÇaEKÍ6¾¥q¢-IH[ 7œ­!ÂÑRMžƒ¢SbHÊ :懋*^鯗MRÙî%FüW)¿4›ú¤…”—3ø»ÜåÎéWê…rØ82ÛDê Iq9’u)o‰(@Qpè²J—ñ‹~ò—’â{ðÙI¿Å}n©ïäÙJW“zä©Vp)Wä Oš•*üù›lÞèØÜfP²l»ó¦ö¸çc¥®[ÙP ¡V ×N À#ˆ[?§˜6Ùi%7°S %-ëk¡FÙ‚Š§²A½öÝ:ÞV^P¬½|ÀOù|âtîA¶k$9ãÝ'x±ÀP¼Á#)æ •sæŽÐaR2¤øÌÚ+1½Û rHOïôìZk…·|^c`á÷‚[é:¦‘N}Ö¢7L¯UúÚäâ  lL}Ê\ėDbžº‹!€ã}qQÚiõÕ3 Æz‡-œk& OÔ ­‰ˆ¥D¯™˜Ã4w¥­™ uU­DvU/s5Ðãm´Uz|¦¨?è¡Jƒi¦µáBYR\1º›ªëЦ¢ÀL¾¸!e¨ã=]·l¬žååý/ÙÜU·FŸ 0o³´ïs¥R«¿"¥6<©mø¡J¨?OŽ\,ÖXvkTÞ¥1´­)[QÞœÍU²¶ß‘Nk+Ad:Ô`‡·›Å‚ÐÓtÇ~S©Ì2r îylóÄ¥l­[Ä~°AÞérl, Æšéb¶–•­ K¯„£ÂA³%›¨[÷\v'RÙ;û† @R”TPI$ž~’»/0ß&Ou)Ê’W©M×À-{%YÊ-e_˜ ¼w,çèÊî²l›[9¿ /Ùýû6Ô„© ¤/vA9•ºÊ•—²F„kÌúFÉt¥çl G3š•+T©)ÿ‡ü ëÊû+Ç_wÆÒF›Ý½uZ’¯4YBãA¦ÉûºØYKm¦î¥Až%Y*I:‘”ñìéÞîËNÙA%Ìàīެ܇{Ç-›ò’¬ú6ƒbœÁvÔy²ðªã/êªú>‡]Ê[%ÆÛFP• 8òP)½Žc¡¾Œ¡¶ƒR.ÙË—)Nk«„—3…­”Kw}UôK…ÕmÖ•·! T_”ޤËRÓÙÜ’Äwýöa:,1E­Ç~§QrKmDS-AT†d¦|‡^q¶aSÔ̲„Å:;eé %}Å/ÿ£ލTy“* ⟠I«Åz3$!‰tŠc‘‘™SCÂé´é^ ^æ;jbc1YˈÕR«KªÄÄô*e1Ç›j“5 côøriôõ1*'":¦äÉK1Úv¤Ú$1%ô=/®5»*Jš}”ä:ºÚB{Z•«µvÅ´ ½-•$´H-–Ûº€ É™*6f<¯ŠÆ"MížÎ¥7ÏÙÀ›dÔYY­ÊÀìãymÅß"Êsþ© '†ùJâ¯l÷àìC¨(R²§ÝÀ¯5¼Š¿ ½^‹²’‹2èQO‰æëew?«âГ¡ðð®ê¶É ;Ķ­Ø%ž +B§<³$z-©×`•ÖˆüYÀ¶u++VÌm{Faˇїw|Ê ÎRÛI䤩6âÑ*±Ó7v[_`ë¹36ÒS¢…‰ÞeVŠÐ<Õh­˜Nõ’Pw i­ó-Ëóý]MqØ6”¬¸\¸$/KéçU{ñw¤-*ýa-¶J)Js…,w.ÖD*ùvÞî¼aÔ¯…98ˆM”llÈúö[.îøäu„yª²T2§ÒT@NUvÕÊû!²æð­Ö®.7Î5ÜÚ”Œ¹ÈÁ*7Aì±P•®5DÌU™¨°Ì–\w]kÆ´™cÄo)]‰q¥^Ö¦»†pÌs1ÜeúŠ*rWQr¥ùº7ð[ ³¨ÆKê!*vSá¸þf:Ä''âØh8̤.Rc»8Ë›OdW—IC¡˜F 1ÄR¦7N ŽìæeëÇëb‰ãÑ+²$·1s Ö^œ„fr\v¥ITãÚˆåUGw*Seü§Ê^“†j”ZŒ*­:N?§n'Sä³2+»º-iЇØZÛ*iÔ-§Q›3N¡m¸´©#£O7ÙÚw¹Ò©?Õß‘LBª¦$“‰¡9–œVÊ!ÏC̹–Î2Ôž3úÂóÅ2ÄgZ2eBu™»Ôe~î›w…q­²Ž_{ù÷ìÁm*R·ƒ|ž%)C)I¹º‚òv¬@û¶Þ6×l-D¨oÖªSˆÝ« ±)6=ålãl”xæó«v3¦à°•¬‹¯(s·+ßl·uÈáhJM’’ÚÁÊ8J¬¬©³ MÇ öã'Å ípXó(ÌŠ¸RŽaÚ ïÔ¼›Ä.>nÕÊr‚Vµ…vJó‚BJµâÙs‹;¿l‚” “˜uH6,ètïI²äÜ¥H±E›yÂláÕ=£¨µÂ-t„ìd)A¬d¦]2ÛPJȹ!#ͲÖpg¹S®© ;ŦÇ+kJl”¨Ðì‹IÙ)ܨäûì‚çéJÕq%.)*P*· SÀ.o”kÈ[j[5XyÕBªJ¢¸…–“M¬ÄiOõ—ÖY³ÔQ‘LÌP˜¸¡¦Û¯7îô+ü9þbÖv]{ÊTxaöâ0Û-—¥Nšò\[0¡°ÞÈq ¼åŠÛm4ëï8Û-8âj]8àLvýKMrŸ×)S[2énŒzS”eÑfE~šc²ëÑÒ̆òÊHóûµß¯ÍpœE­·×ñÔÕZÝRLéFt õ$:ûìQ¡¸ÒÕK¡6ô8%—Ûžõ= ì 4úXm<ãîÌ›”•ê ®l®Ï>í›Ü%!³œªÖJó# ýÁ\»Åí Ù.:ýÃ6JS—të‰_Æ,r¥D÷åÑJÍ”;Àw®,´Ò”ç<£2R³•cˆ%9ùì ‘¿JÒ,ŒäÙÛ2¬M¹jO?ù‹°ÈRà*K…]”JCabÊ Öʶ"ÜõS=¶œQE·Š8¹ù·ïI+@‘³ƒxPYÞ¤æV¹5Ê‚5²Ý@ÜBö»ùòn“»*¸ý¢à#ÓÈÜóÔÛd6Ó**Iñ–“q¼$ߊãÑ|Û!ÆÐ’¢ ARÌ ±í ô):èr€öï8qæÁ»…\‘p@ù‚‚®Ý“ñ«%¶ QŒË?òw†ÖQ×A{§7üC]s°Ñm¡”(¬q/ă2m˜ÚÓžÍ!’ãe´¹™*9ӺʾOØ“Ü6L†ò D~wO~·€iÐße‡sfRËËKcVwwjü>‘•Yˆ#ˆüGfÞÝ¡½Ò”Ò³ÝQ(ä²´*SJ×’»®‘¶žÝrM³Z£±W•Cr(oKKsÌȧóyqÓo„¬4«:ÊRêP¯sú³í†Úƒre?›&£Ôâ)õª<$Ô$%Ù†;jZÁ–¶/!o2šK·R”«C¢;\Ý-N…L…•0|ü%”™Po«L•!‡œþÐ}·e¡à™M>Ô¶šxHm[äFy¶[a°àHÌÞ–tg¹Ûe (€¯Ý´v—ªÔ¤•%(ó · †UuÏ1ý™¶m qÌéÌÐlî¡çæ…!7í@6Q;¾ ÊàEõ7»9†Qغ­uƒŽÛ#pµ ÂU”ŒŠfÜ&Üj a#!ÖàÛmðÇR……öšHRŠt¸Ô”dI¿§fxÃcvPInË6ÊE…ò¦ätµ•ݲՑNUnB¸‹–: Ã7‰²ÇűD¥diyÍ€ó–5 s••u ÂWPð*Èl%69д–Õú«*±ÏÈØp€uؾâÒœ©-©MÕ»$?H”ñ‘ØÓ/#r ¶±º3ê‡e­ 5ïJÄžMí³YÆUfÝ)¼‚ÙùˆôëqÊÖƒ°X’PTEîxU×dd_]y$l²ÈQeã /\¡7 iq¼ÆQÅ`6KYe¼© Þß HêáV\ ÛŸeëì´ î[OŠ´gMÑÆ§#x®™me"ä‚TTiA ôVUï3l ®áYO-·lß,gF€x° ®Ú¬½MîݪvÜ©ZUe'LÖRG7¸¬b†b2Øl£âÖ#ïFEsÊTRÞìÛ2íÙ²»Æ‡AxÌ¡)aÂ3-ÃȶAÌÏšÔƒ”ùÜÅöƒÑë4囈\ˆÉŠÐ~4έUee›CN<Ô¯ É[Ëß­+m´Çq¦ZRÑ§È ìí;ÜéGÔŸêïȉתêÃòpã²jQëj ÇŠ¶„Ù‘n°ë,¶ïŠ”ÊÐôf\ñ¨J™qöá½½ŠVëB[ŒnVìwTwgx茵7ãgzðB—“~lcy£vSœY°…vø!ĬݯkËâ(ñŒ¬‡]¶’T®|ˆZµÓ^. k²›\e‚Ê“¼Õ6)åÞxoÙ¿ ûŽÛ¶Ö¦c­y®¤‘•ÐB¬‚« yÛ^J¶ã9Ûw´æ÷‹ VÆÆ†çÑÈ^ú'gP ¤$4«07âЩ¢ù¿qu/ÕªJ3ÈR¼Z»ÿ~ŠÇ`Èos½jëR,ê–[‰!²›æí¨{i²]Ü·âREóñªüüÝ>;OÅŲŸ9˜&ÈKCô®¶yékñ_‚×7îîÙ¦Sš>댨…$€”åÈ ·Î;û7:ìÃÖòÇ})îÉHZ ×M@ïä9è³¾m´¼œ·æºR“~i¹Uþ+rמͨ¯{ú>“™¨éRn¤):¦ÅóÛŠÈ)ÿ3T¸BSõê>¢‰8ÉŠŒÙIMª)*YTHPºÔX‘Siä—f½Meäfw1÷zþÿ1k; aɺ¼´Ô)Óâeëg¶ËñÛx%`¥æ‹rKÑ×dºâJÒ…§` }2„Ý)ºtj¦‘XY¬Ö1#õ.%B¥P‹l0èTÖYm—©”¨1M ˜éz¤¶–jŽU¤†¤¿U—6 óqše”¶üçºÓû¦Cl¶ÆñÂÛ-6Û)È„ &Á%¤¯rÛ£~A¾^1”pÙ¿ ³Jum%ÒJ•ÀBT3pŒž5äIз˜ØZù¹Ýg:A-4…(o”‚£tr¿;“bF[ëdìì†òåYPJEøìGpV—±öóvbC>/! XNe)mž·ad#)×…Zþ®}ÈÓlÀ¥24^EØ당@F„”z%)'Mn×RûjýFñ}“¯4œ¶#\º_¿½` þn!!³ºÈ°{Y’›'6\Ç–V%-4ÚV¤ͼŒ©B“¦ð‘ÍG‹-ø¿o ¶u¤­.!²ÙÊRåÔ›^þv|§Ñ¨;-z2•¼8{N 7À,oçeÿ’¯ûVÜwR˜çvÕÂNeª'ʬ’­u¶šœSª{Æ¥WµË© Ø  ä^‹¾T[„qs#~KV»ìǵó¨fVAèäís¸á#däݦR–¦Ôß5«x»ÜØß*­ílƒ6›:·•¬4””½•6ZЇ‹?«–÷]¬yzB"¹Tð«Œ0\MUˆ=KóæPRðêS]H¾•µ íüZŠã˜êœ‡d™¸xÏ/ªW]¤¹H‰4êUF$*ƒæ;R)ñeÅ•#31*mqKjÖ_C‚+¥.¡†qÏ«>Øaý™^e*:Ôîý¤[8ÝMÇyž+ÚÝû5)Ìël#tXºš7#ŠÃ¶£lÃ.š ’—RU™Ü®,µ”¶†ÔV OŸšÇ5î ³hl=bì«v½Ú4 ‚›¼Ä¢ÖÕG°6 Ah8‡BAÞñ¤RÚ\$$o«æ±²Hâ¹( Ù H޽âB˜9œá¹ŒéRÎSkXå9RNÒZqÔ³ÂXJ]ÑIE””+Uãšþpä®ý–YNf”;a Ê’±¡Î3]G³asÄ‘}-4²²ÚQ£¹‚³,ÞÊ⾟ð÷Ù†\‘™¤ŽCÅ–Ü× V§ŠÅYA·`›l2Wm3]BéÔ ¹mÞ.«ßCË`èO<¡ /Tñ-ÃÏ2B¹*ý’;!Õ€â•tœÇ½v9@áËÿ«RxíÉ–M”µ¬¶‹o8tRo›osæ¥WÙ;îÒД² råÍnD¡{çÓþå¹[| um©js6R¢2¥<#ОzÙV¹O+o€!ÄvÙ+*Ë{­G³cÈ©6°°¶m‘½Z›Kmé—2“¼ ãç—5€²R9æÌ›nÔ•%–‘v):¦æÊ¹¾Qeè”ñ+‰±?Þ% 9R®‡-}Oh›ª××l¡y)KªÊœ ;pÖðöT¾ir€ºÙ’"©*Hª÷Vd$\¥)âfÀ¯(êsY%yR\-4C\%áJÜYó2§Kƒûo ÚRÑgÈ–ØÎ?Kªó¥¥úåá図°r#Ç4Ñe$«ýÛë Í¢H!ZX+þ!Ën>@`ßgiÞçJ>¤ÿW~BÚu!mº…6âªV…‚•%C¼)$ƒñlä¾qäKS¦…ˆzêX‚Çšj5V;5YrÛdîØKS"‡ÔÐÞ¿P}áÇ4Ì®á1 mTÖ˜—Yr‡LÆw­ÏS”6ŒV„©n2¸Ñ¥¸ì´Geii…¸ò.kX´.Ï„«  (ßIà )¶TeÛ˜Zr‹æl ¼ÎJŠªØˆ…§ÍJ‡½HäA"Ãölê«àE6¼Ê@:øÈáä¯û³q•DÚÊå¦Ã%[„s)ðS“-Ï÷`•ÜWQóÕû÷©¬`kóÖ­ˆt]ó^à €¤òU¥“ÊêVÈqul_gZ¼%ˆ2¨ka—ÞÍ®.8²ß„l§[¬à4©Wí*ý²[Ñïcõÿ¦»-"³îµ…x[r°ÍÁïg&ª¿q:ÞÖÙY«X`îízxO,¸X[e àpT°­*•ñ`”€-†y›ñE…´Û(©àDŽÍN½ú×Q× ›ŸEîoœl✬àwRS‘´®§\ás¶úsôm»Mc ,¦¥]â°¶k{Öµý–¿³g±xʂȣ&•Ôw"4‡•J‘>G„„»ÎaRéî˜qݧ0YaöÃÎH‘H_»Ð¯ðçù‹Y÷)X“U¨qŒjTYp«KuFk2£È…¤].š’Úq—`4BÒë»Ò†Ýtbl-¤ÚÏVŽÊêîÃ} ©é«§4ì" ešl´eÜeÙ;ú¾qÔ\!b«_FTdÐY8c)²õ²’A°¸=˜qºö T„ð¼"´„).¶•<¤º(K9›y9I`%ÖÎõ[ƒâvc5S«u¼Íý§_º³_)Íïb÷7ÖÜJç¶qXÀ·Þ…”øR¿”¤(ðÛÞÆ™’­~4ó²Õ¶õª¾lúF½b¯rG½Žð¿ÛqèШŠÖ%`ó«b»[—/dÉ…Ó£k^Ö祶ΚÎ'ƒ‰uL@VMÈ ÷³Èò¶€÷Žíž&µ€Î÷!Úuþ6¬È#û¯®¶'ÓoFÀª¹𦠏ô«L.’O0òë®ÙS[Àš6P›ÔëöEûVþëëšÉ6UìG ¶Å>À¥!ZÍS®ÝŽkŒ,œÄÃÙÓãâÙ±á| J8êøŠÅ~œ£ Ù?P-Úí ì?¶ð?o>UUq ˆ÷¾ ?úʇùmkdðö2Ÿ¯×J®€“ÿv|Ü [ζ¤\줢¯P§w«ð¥}Eh×Ó†-˜ [Ñݦ„;ἠ”$Ô«À'µsÆ%@å<<‡îÙǼ9[p„ä(¨×•Ù°È«á”Ù9JךÊ9’„e±.%ל­`~² †Ñ.¹¹"ç›Þ FTØ‹G^u)I%!!J¦³/PZ J×UÜAŸ'©=¾s+TÍïVðƒ%Ù.É—sÂÒ”©O>æ/¦½ˆšñ#-©¦”aÇŠ†¤U\Cõ²Â›÷–—\Àe6^¢§_ ºÍïzÝ×6Ë]œ_‡0·œÿ´ñôÛOzÚsÿ¦Ä=XÀn ëo bæ—]Ó†ÐfJ5Ðö€ÙLø{Í´ð•~çÓu{ظ×С³HðÖ^CuÕ«ù{íaï^ÿ¼«üÀ Mëø ¶……eð•zå ß)W½ÜHÓñlãÍÖ0s€2øR¿k?÷[ÓsûÍû¬á5œµ- MÕTÄ<|÷`a›$ -k+Kæîi®àK”亪¸Yyåþës6\í§íÌšÖ*V®gªâo”§7ý×áÒÃ*F]/kÞ÷UW-Üê*_…1dÞÉá‹&Ü<†¹nuØ ×0%”îôÿjâȤ¥68_ÊìÙ(r»€¬ƒtZ£^箤{ØÖÉ'‡’»Í´!K¬`5£Ojø.—ä=ì|ô+ø(J“—Âuád“¢n0¾e,/pt¹¾ËÝÖðå‚„ñ  ì¡9°Ò’nE²Ž#òrWp.FÒ¤‚j5Ü뿜 pº‚J¹’m} …>³XªaéÔ镨t̴ǪKš*/Óê’ó)éñÙêˆb¨Þ%ð²²ÖX£6^>@`ßgiÞçJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqVÝ|€Á¾ÎӽΔ}Iþ®øGB¿ÃŸæ-gáçÕŸl0þØÖol1Â(/é~Îâ­º4ùƒ}§{(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ[tiòû;N÷:Qõ'ú»á ÿ˜µŸ„cŸV}°Ãû`oY½°Ä |¿¥û;жèÓä övît£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöwmÑ§È ìí;ÜÅèÓ{ðð§<5ýÜÄXƒÁÝKÂþÿ`L‰Õ:ß[Ÿþ·¼ßõo—röo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎØ+bŒà\mE÷¹ïwûÜÄTï x;L¨Ò?²*3«NëÕg¤AüÆC]guÕ£d’…¬ùú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶v®P±¯F÷pÌïxJ±ï+ÒzŸV¬SæCþЫT¤SãõŠ„x±|{JÞï·-eyÆÔ(t,ч¾,3Â~ ¬{ÊÆun¹Ök “?´)5(ôù^¡"T_Òw[˹žmÅ"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÞE~®zEûgo"¿W="ý³·‘_«ž‘~ÙÛȯÕÏH¿líäWêç¤_¶vò+õsÒ/Û;yú¹éí¼Šý\ô‹öÎÐ)}"ô{ïNˆÆ ‹>-GÞž+¡oªSª±Ù…Öë³åDsyTçú»m‰ êûĬ6Ë¡]|€Á¾ÎӽΔ}Iþ®øGB¿ÃŸæ-gáçÕŸl0þØÖol1Â(/é~Îâ­£Aƒ<(P£³8Œ·,H±ÛK1ãFŽÊPÓØii–ZB[i´¥HHÜéGÔŸêï„t+ü9þbÖ~Ž}YöÃí½föÃ|"òþ—ìî*÷zQõ'ú»àXÆœ¨ïG‘BÅÈ4¬´,E™8rà¦âK¨KªBn$ZÛ¯ÏX‘FuèµFšJ^U-¦BÜ÷1S8&„àQp¤¡LLŒfÕxKÄÕà±:_‚Œ¡GMk¬"u¼ ‡ŸKŽ%ho ãÌC)8qœPÎX´å¢UFk•]z<¸”ø"½P©%·£º[r<"¥G-:ãmov‘7 U[©3I‡5‰p¦B”¸›O¨Ç‰>#…'2S&3yÅÊ/cmºþÿ1k?Æ4åGz<Š(®A¥e¡b(,ÉÔï7]B]Rq"ÖÝ~zÄŠ3¯Eª4ÒRò©m2ç¸ã´81ë¥Ö:ëd¡çaS© Ì‹]n°˜ÏÅy™q©ÑR™,.UF[M´¥%™cLÄÕf©­M‘Õa7¹•2dé9s`Ó©ìJŸ1ħ‰iÜ€‚»f‘7 U[©3I‡5‰p¦B”¸›O¨Ç‰>#…'2S&3yÅÊ/cm±Ï«>Øaý°7¬ÞØbcr£½E W ҲбdáÊw‚›‰.¡.© ¸‘kn¿=bE×¢Õi)yT¶™ sÜÆ°°[½ a|FŒ5x¢%‘S™9Š-*£Qñ”ºÌhËK2* B#´¤·‘+ RTêèòú@¬S T¦7#™¥!ª…gp•Ln…Ji ̈ûÜëi Ü—Ù`·Ö˜æ2&ካu&aÉ0æ£q.ÈR‚B·iõñ'Äp¤æJdÆo8¹Eìmµåý/ÙÜUîô£êOõwÀºv”é5ÆñšúZÄø’-;‡¡â•Ðdɱ“U§«7ïw©½Æ‡ŸpìBïRüíÈŠÚ”f·Óx†*PL¿ U¿ìüå/« Moü$Ý¡X]?u›®"”EIQ÷‚çE­±^ éDWptªTé­Q§U1#bºKðGƒêô—(ÌB‹VT½ûÑÜÃò¼+,ÆrIKÇTtXDz«ýâj$Ã1}‰NU# *d$GPÜ‚ôV®ÑÚŠÆè@`F›B^v.c™’[£V"µW¦Å§ô‹HÃjÃ'´Õ4o™Â⥻CYðks[upÜAÉ%%{t+ü9þbÖ~Ó¶§I®7Œ×ÒÖ'Ä‘høqÜ=®ƒ&NŒš­=XÉ¿{½Mî48ìû‡bz—çnDVÔ£5¾›Ä1R‚eøZ­ÿgç)}XJká&èÍ Âéû¬Ýq¢*J¼:-mÒÕkÁÁµ1,šjç×âbJÚê¨0ñ98v‡K¢HÂ,Cf=*Fý“\ùrª'_}塺7Ä8ÖdüˆéSq*ac<$F'ÂøZDè¨cªW f‡Épñ=¶ZBݢƦ3!£)¸éë1ÌÉ-Ñ«Z«ÓbÓúE¤aµa“Zjš7LŽáqRÝ¡¬ø5¹­º¸n 䈄½±Ï«>Øaý°7¬ÞØbtí…)Òkã5ôµ‰ñ$Z>wCÅ+ É“…c&«OV2oÞïS{;>áØ…Þ¥ùÛ‘µ(Ío¦ñ T ™~«ÙùÊ_VšßøIº3B°º~ë7\E(Š’£ï΋[c¸XÓš>/—]­>ôZ­6¥UÄ•É2Uš5kÔCRÜiš©Ý¹OED1à‘!˜áAõ~’«8¯ ã,ZÒÇ±áÆªÆÃ/Ô!¡¶àc8“ãNß*±ILX+qøûÖçÑ֥Ç*uNc™’[£V"µW¦Å§ô‹HÃjÃ'´Õ4o™Â⥻CYðks[upÜAÉ%%{P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöw{½(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwø1«Hòñ‘=¸KKRzŒHaĨ¥é³º¤âÆõÀ†#'ª¨>úÃ{ÆÕ.™S1Ÿ„j4øSÌ9HSrb‘›cHmÄ6´>ÆótêÚ— ¤$‹Яðçù‹YøF9õgÛ ?¶õ›Û AðŠËú_³¸«ÝéGÔŸêïðáÐ%Véqë••B¤;::*2Rµæjs~¤”´áAÉg7ndÌP«hoÌiéÄ~ã¡øÿÄèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwø#a¦+ }¸ª¥=]¥·R]ɺŽ`®P”wxÛ[­âó£*Na´¬"Î §«ÃË¿¦‡sƒ¸eטÒe 8ôHÏ=%wÍ#*­›&vj<::u."u1¢¾ãòºã¯2NçÂN)»-ôq¦ž¨ =à¶¥2­I묊°î-¦Á 4 º_j“ô­Ôê\èŽ6ýt™-ÓÌàc”Ni¦]HDöÒÎã{»Qr2ßhêq‚êÓë¤ÒhoË”¼<Û2Ù}šlv ’¨ì1G}ÈÓ(BeJTwD‰9¦ÍzCX¦Uj¯W[ÓV#e銒ÝZ–âÓÖc–&;2Àµ44ÚvÊ#ã$³³tº&*†õEàÖâ$¸õ [’Vòs!ˆ†©s$Ûµ*Þ}ám‹m[ÃH¨¹I5ˆf!žÓ ’¦P§S‰Tu8Èy§ÛJ£¾Þù¥)‡\uµÙahÖ[Ÿ6j%*'PCi˜´¯«³®NÝ6……8lù<ë®åIY—Яðçù‹Yÿ 3+µze"ÞÛ“THSn:˜í»)Æãêi—œK(%Å!§”…YŠF }ÚT<2ûLØ“Y™³> *«M’óm¶†ü¦YˆÒ%Lb§gZp )¦‘`ùSð­"˜´¢4¤ •9m¾¬²ç«p2Ç,’Š2‹ñÒ½ò¤½,­¡ÄâL6ø©³OÍÚT´¼ÍN¤4CXv3>mÛ ­ýìð¤GáCFŽp…& Ü×&ø_¯›4–â¬!†a¥ž¡×œ‡Y–&>”1 »©ÊuÂüJãŠd8u<9ள2žã‚I5eU7+jÛ×a-„Sr¼“2R[›Ö÷ ñÿú³í†ÛzÍí† ÿ’l¤¼í†$B¤ÅĬbaU[›­· +H¥š`ÌÛ­A¨&`‘á'"Ú –Ž®f°£ÕdÑf.¿X‡T–œ=kR™ÔçÔéðF²ôxa¤ÔÞ§¥cqN“"3/UÔ¥ƒ)Ôâ¬9J˜ËòÙ]2DªC°£%+@%º©ž[@.¶äw¥d/RSJ¥±ˆÃ‹«!’Ô¾¥1º|Wd”ˆñjR^e¾£!Ò«)/¥)‰c×—éÌÅ>3 I¨É[,Çj4ö¤2ûòC,Çfk%pœ’ã«KiŒ™üÆÛ¾áP>_ÒýÅ^ïJ>¤ÿW~\Érê¬E‹"CòŠs̰ҜqòœªÍ¹BK™rªùm”òÙç¥,ÉŸ-ÅÍ‘)kZ•"SÅN?œÙkun•¼â•eùֹљs®¶ºL¤Íb:cÈèÌÄj=@”yι%KVeÉž·_7SºM­Öæ•Z¦¦Ý“R}¦£çu†ša-Fe¶R„GŽÛ ²Ë)JØl›ÊS–ͨgäyr\hJ»“¦ÙT”“ÅÙ$¯8U‰:~¶¹ï¦ž®êî”’›$ …”9V'Œ‹fž[6ëJVG„¸â¸Ò­¡I×B;9N—A¬ÒÝ*zŒ:¤J »¹z3íÉ„âÛs;OºÐ[ˆ}.!háZ Rv¯ûþÅfPãašµY¨òZ‚§¤VâH§:ˆ´§,<§]§&¢cÓÒóP´R÷m”gêT&jQQNŸÔ$ƪ±‰!ÂÃRêDI“˜S¥Ò”þó;N…´‘KüœSáŒ8Š*hU6¡0ëõ3¼ZëT™J’C‹ªÓÒ–¶Úe½ÔØÉ\hëÈèWøsüŬÿƒAFqfVæMßV4ÅBLDWUˆ³~!~y’¾Û©i†J:ÔˆÔ|5‰¢"lÈu¡UUq+SÎæ¯¦dÓáÁ¢ÃÙmÈÅ´©¸êSì<û»Ô2ôÙÒf†"Æ‚ßYüƒ›ef ]úœÜÄa¥) Go*ÅäÖè³{´nûøIPËm/˜Xˆ*ýöÙä´²”Ù@\ñ(9wž.!nW·Å²­ú@Í‚SudQÊ¡”ë¼'·dƒ¦ƒ.Ó™Âu™”¡XKmMêíÄqÉ -°T_eÞ®üt8ïTÊ™•N¸¨î4â–£' â\S.m1ú,ÙÈõéMÉœýs¯Ó–†âÔe©Ê”•. ªnuC)ÖÂZRÒÒ Eÿ/ú³í†ÛzÍí† ÿúæ!œˆ0!°¢ Ý‘!iRš‰”]ɞȭÛH’¥¨¥¤-iŨÕz¤ŠJšäA‹E:tWß Ý*j§¦3Ò÷í·¬Š{ÓÔäiJ»(ukCmå^äîÏ–rÛ÷ƒ{Ì©Þeg|¤q(2Œü‘²CœhQÏth´¨[(#ÅÜòÞÝ×Û­(æËÆ«fq[…9yiÞt¹WpDÆ)SE¹,:ë)ZD†T›Y Ì•eRláHVRI7µ'"˜X^õ•䋤- OaM jGž§Ka¸·ÓýúÎëÍJCÑœ‚ÒÜMblZz”ÜVèìÊ~a”±Ö[uõ,)-f]¿Á |¿¥û;Š½Þ”}Iþ®ü™zíF-.›9ž—-ÐÛ`ù6;oÈxðGŒÂ\‘%Ò–XiÇT”K;â§½ QÙ&›!LTaF~¹KD£6›šŒŽáˆ÷YŽÂ‡\m*¶ð](µ…&hSIS´©Ò!¾P—° ±\iV iÍ—æßgŽSá÷%:ûÎyÇ‹ŠuåfZœujR–öe®ä¨Ýzìµ8»BQ—Œ+(Vkñðöu°³mêUœfZ“U tÚùn5½¬ÜO0¼‰RP·r5|׺€$( -É)Í›EwlѾPµq´…)Kf÷PÐj8ooE­²TŒà gó²RF÷K$Zù”«l¾°Þbu”œÄ&ÉýDBs_™Ò϶– tleì8£•C@m˜©»ë–ÿ·mÛÁHq¬å-¥'–}æc§Ï`nœ·°Ëéb]Tš\诓S±Þ aHZ\C­nÉʬ„v†}©ÚNÅÕvhø Ó”Š¤Ê†HtwgD}Øà®¦ Äó*QYj¨¦,ÔF\”`´ò¤6Ú|l9]Wz™»ë©†áXl:§ÛˆYHnC+SK ~2gAÇÄ‹»N©ã -N¨0@~ üAI‰1’¤¡iÆ‘-·›*C¨ ]+A(~GB¿ÃŸæ-gòש‰(Ù­Ç\·!ϬSáÊDV›Þ»%qäHmÔÇm¯·ŠChoJ ×j­aŒ[†k.Óá?"=.™ˆir¦Ô¤!¼ÌCˆÜiZä:PÖõ 8†[®Ù¶œËXÄ’§&UgJ¨Kqµ¹•ÌyN­†Òæeñ–4©1*%ÓæÓæDÉhËŒâ¤oy)i’ܶ ¹C€>E½£ÓzC¨¨×WWš«G§G‰Oð{­B M«¸ÛÌFŠê$»/­®4VXf+Mº¦QÄTÍF“>NŸ'9:Ÿ)‰°ß ¸¶œ,ÉŒ·w#­­¥äYÊâƒÄ’?+ú³í†ÛzÍí† ü²¥”¤)J6JR5$“ jIå´<Hj,…d¹*Mq€íEö 2iÃ>%¦¡Ù´Ïuǖ霃u¨¸©HS·,^ä2¥jQºÍ»ÜÛ?¤ë{ìÞêê‰lðæ%!!JäœÃ0‚Eǧmà! Z÷D)>) ö¬n9(iǯdwlëhy i°uäJ-É:mq›ÿßd$4 †—Ä£˜fÔ$$æÎT•kr0‡8^nêJÁb;s·.ýv[M¥N¥k l(Ùae%K?¼ë«–»b715IÆèÔJ³nE¬×j›ÆŒüFÚ“ 2'È)‹ñCˆ9‘=ô¡EÀèKS J:#à©™PßjLg’PKO²¥´à J’JTl G1ùt—ô¿gqW»Ó&+ªG™* /ýX€–)ÅO¨b:c±!øÌå&4§”§AC!Å!.¬%¥â” <ºM6Џ‰…$¾d)Ýúå$µ1E 6™+C(Óq’âÑ^ñÏЭçhmVéÖ˜ý=!º”5Õñ{ïOKÆ[~'Æñ´<_g]¥áJ€®4õ>¡àÙõq9£D’?K½Yœš‰j:ü[®³Mu9[{Æ|n›D§À«a †Š¬Òð”å¾:˲è2›¨uÂ_Џn(2ÞKÞ9˜î4òYÂØj•!Ê{ÒĉuJÃ.G„ójŠí˜KÝM™ÃTa|.užHy ݧ‡0ß)Û›ƒÁãBŠŠ€»kÊO jm“ºZB\KIqG0\„.öBtý&PæU$¢×âÐfNêÎ6ùJ¯˜ªÅ²¢@E‰$šÚzJ3²¬•=’ÌØ¢Ê@:ÜžÒŽ}y4ä_rÁ”„-ÌÙU”9åä.ç¦Ü9^! X·»Ý7™G…¹§Ìáì§U»âSmóP 9bR³¢Tl›æ#˜ìàBÐáy[—aڵ¿á WÄ8{ÍÎËŠ¡¿_`)7ÐÜ–çKúvÎtwÆ+2ôÕ¹À¤ñ(§ÿ2××Ðm½R–Iv.r8 ºHñ¼JÖÞÏ»bàiM…¨RR”/˜EÇÅÆV.Ÿ6ר4—+©qÅ­ÚÕ˜ds‹2…ɱón=Ú[ø:®i‹Ÿ¹b¢â Rª9Ú†·7i½NÞ®„™8:¹k}dïsnÛ ~«ˆR*Òêr éïÆqª|‰²‡ÐS7Ri¹äuÓéeÆBîšR½è/¨îðg„Íb`q]xRìÇ–ÓQwoÄL× »%Å)‡ fÓÖ•;t½ðóøz»àEá7!DÃc Î · J•."¢-¦]I曄úÔëy]rE2;Ò›©WÂèñzÉq33H9"3rZ‡ jÈLyò‹q\â-¸æEmÑã˜â)§×)XÃRM8ÁêB"1[UB8–û*ð‚äG˜·du¨ï´ër`´¯wÓpÎf©†ëw8– bÊ’ºtq."dºëÍ==1,SÜzLG¤)þ»! a,2“RÁTéÒ\¦=63‰ríÅ‘"˜µ·Qf,’28¨kmip¬4‡r©QTúVÕjýCyÔ¨Ôé•9Igv_q˜L-õµ.¸ËkðFê;ku°ãËB3§5ö›Rë0k¯%,Å©×X£·…泺˜ÈSfK›òZë[¸í>[uä>ÒTÒꪋë•T«ËvmJS‰È…Ëšµ:òËm„²Êµœ¬°Úa ¶Ú[BP _7~›éÅb™’/™=ÇgÒ2¬$¬æ¿›™@iËŸ}‰°Ø¶Ù ¼Þªt+:Hq(R€BH*6Q9F\  ƒ±,„‡#$õ…YÛŒÁ\®9(üW"Çdo2!.,-*âÕWFk w‹¤’6M¬v(Ãx¼™ Î\¨Þ9efráçtè5Ú>áC2ž¥Û*µH$‹-6”âs!¼—¶«*”£-…û ¹…ý:œˆÝËŠ%Ë©VË—ˆ©ð‘’ÀßÛ«%‚™s/¡^l×:úþ+m“FÄ(n“Ç iS©Ð%ÃÎëŽIq¤-Èæslºëκ±\b§J—|Å@ÓpÖ6G‡ˆk©Ð*q˜§Â¨S¥U\… /ňÌ2)¨’²ãîäLöwÏ­*˜–؈?#ú³í†ÛzÍí† üª¶ ©TŠ|ºƒél²y1[ýZ(ôv\—#&æ+Ky ëëm¼éÍ}©TÜ7áˆTeéU8U(ð\ŠŠ|\‹"Zœa¸HFäÌ )ÇT¥Æ;¨ÒÂÓbÙJ¨R¬•)D mÅœEÔ/{ ’‚38Wuf¾Gn¥e@n@n¬Á6ËÙUÓ±mM§Ç##A¼ÙRâBŽuwìê-·•‡–)°þ.]âÝæàsm™JÞ¶VŠR.’•hrß½7¶kj>=¿I•,¸²‘|üyÕ­Õ~@å·í'S¦R›)åèï  Â8ªÓ´ ê~-’é ç -ªÄ­JY¸*âᵆ„ƒaèØ”©Òˆí†Ûë/xÒ3ïÔËi9’Þ,ºFõn*×9¶ŸI†¤TiMôÑiõgb‘V‘=™/KJÑ’Bã-¥TJ uÆÙrsíHIGßÏ TQ¡cš„ùvD -QȵˆnuhoxIÚ„B¸£¯8$%´£ª<Ú$>TÜgð¤Æ*Jª:‹ñMB´Ú©Iv>]=õ>Ûs*)JRüWóÙ+1RÉqÂáWäÐ>_ÒýÅ^ìרµY”侸b[,8UhB'%´O§9¼RizB7ãIgvûüåÛšüª ¨´èTzt\7"N†ˆPP‹®=6ìv~ ¤ Rú£-1¾q-Å#c0Äè.;ØŠÞ°ôGÖÃÑÝUÙÞ6¤¹•9²œ¤h« Ñ>¹]’ªµAøÌÏm¦™Z•Œ‰/Ì´•¸ž¶´-Ç\qE7Ø8]ݨ8dØuHÐÛ¹Dó\ ”Û™”èXê‡()-©IQ#/šSdº¾ðß5•¶ñÕ¤wå­ÛêJVRžÕùIP¶§žž/|±e¥IæMx²¤\«†Ú#®Í´úic„€‚‘ŸL¥+)×Pls‘~{-±Æ]KŠ%kO3ÝÉíÂÉSkrå-¥JZ]íι/¢@ÖÝ¢o£n).¡n•æÍt•E)Nb.žØýaÝ­Ý+B¸QÀuZR¡ÙÝ’-ßk[˜µ½%¥4ÞD;}ŒÉâ=¼êJt§Ñtüz¡Ç,â”°œ©o0Ý„¨¡bÜÅŽb®Í¬l-²–Ú7yw*Þ*ÙJ•É7RS×±—oŒªN„ó 8;‰Ó³¢6¸×A®ÈË™´f¾d•<»i’Ç>Rl½FK'¸å¾Fê^óÇ=®þ!kœ§_Õ2­ÓéNe¸|Ñ|ªº€ 9O‘eqm”vPëŠ[ÖÞ-y‘—29l“¥”—7;1SÄ3ãÎu0ü ¢3ãD†Ó¯Hf,v ´Ó-²ÉuÔ·dr Y:ì…¥AÆWª‚«)D,¼Uо@÷yÞ064ÄÓ¥V¢U0„©¯äŠ'¿ÕX!œ©êì*_U‰”-õ¶·œPv[Å×xÀVÃr ÕÔQˆK";”ûq·TÊ‚Þëo¸ „ÉÞâ,ê¢ÌÞ™ »„gU0.$6Þ™ k†õ}¹r– üÄøF™Ôz€LGÐÔw^T¤¿Ü­¸)‰´I”ªÕ:£ zåǨ!Ì?5ÄÁ‘sïCq¤ÈhïÍM¾c¶ó¹êdRdŒSNšÃU‹.$©Sc¼ÓÑ·M°w©¢ŒòC ï$4Q2JÔ_vC¯ºë®Thõ\K&}&´ë®Ï‡&,-ÍÖû2Duª*†ÓN°ÓŒFŒã F(³M¤-Ч ÙÊ“½)±F@<ðl9 ¬ö»#D‚U”ñïsdÞ‚¡b¢´¥'1ÖÉ7Ík”\fÝ«*.H RNlªp„èH<¹Òû8‡WºáhåñjÌ‹’OfáWM¯7B­œÈ„wyV¢AHär*Àpë§pæHØ©[䇽\ô«…³Â‘r‹Û0=Û%z°•(lZâå¹VšëÃÛ²Õ¾’°Prêß³¬šßöp€nNÈKÊÞ¥@¥±¥’{D#cÿ ½âJl§m}•%‰q$ŒÃ-íêSss®Û„\BÂR¿8ðæK—#¿_JM½7¢·ˆ@mV)&ç>ee²[ä|øl6)Îâ‰Ý »JJSœ ê¥]9¬-çŸc½gqIRx¬²{çæ ”«]O~«±Óh5ùÑ ?TV`:³*4%Jy™ ŒÑ¼O‹–+J\u•¦Ì r)U†š‚¨ûŠ•1|RâÔŠ„—©ª…+Â2#¬Ñ ØÍ$˜½uOKUcÄ@е1štÈ.E¨šgWmŠ{ B#в&…§ÁQÞ 2Ô’îýINíY†ë˜ºµàêKsSTOË…‡âÁE?xªs²eÜ™)—&T¢û©Ý¥ÝóiŠÎçtHEv~M.3UFšj.x6}. ¹ Ë3„ ;S‚ëL­¨ÂR\e×S–S˜"gaªLÔ HW§]¥À”¬[]q%LJ”Ó )·´Ý:¡hPÑCj­•Eg¦œa4Ýb-z/‚äJy˜ò¥1¼XBb6ã±V´:ó¤Êã¹´%nˆ“dÕ&51èaù4Æi•C”eÇ`™#^!çU™IpD}l¸½ê²¶iIÄmQd¸µ¶¸X‰µR\ޤ—²ï¦8WHÊólï[[5'QgYiÅ7)ή‹†©1*ØN›½b\©MHf}RTc(:ºLÆ';˜/”FL7äÓ^Z³8ãÍ6‚2F5×á1œ§‡I‚Ò˜¦ÄvJl­jq×$Í”Zm6~Së ¤&qš’ë;6‚³v³æ-éÄáô£’O›Ë¾÷¶Ê pgQʳe$'\æÇŒÜèUÈþ÷òUd»žå9 ÊS~^œ×½õ:ë²I[k^ô¤~fWeò° ù-~ý·¥å•6Ó…Aöˆ)?·ïç±ÎÒœd£0)Â\ïWfæÀ[â'Mؤn€x¡.!]¾,¨¤Þܵ¸IMΜ­°©ÌÀ¥ v’€,©¹½ÅÏ£’AÙ·e­) Ýk`ŸùÜ[[ ¹ô–Ž5+Æri<Á¥fÉÊFŠøˆ61Â@ݹ¼Ìêm⸆œÍÇ$ðþÍ^d º´–ÊíY¯*:Ø_¿7§b•¼ÎQº%9†·ÓDþÎc¾Ûaœ!†&K¤â 4š€¨Íz {ê[ó*a3¯ ­†ã¢Tv¤g„Ô„£¢"÷Ix¹…©x†C/UꔚTœCRÃnÀ©áŠ JsG¬Ár\j½Aå˜O¤uÏKÝmÃ!Å%ä6ý)Úaf'.žqJ‚$¾æé岪¬j{QÔÔªk„m©¦[‘?:BVò„že¬kGiLËʦ8ä\Z­gY‘-¶Xv/ëKK]°38âPR¢^ÿH/ IV˜šŒVr‚l–„ÍêÔm„ ­zd ¸ÚƒâŒ?Z’1½.ZâÒë'Kn0Ãø• yè±ßrC-¡o²Û…ÖÑ»qÖÛ^U¬'ÝX JP·Þf! äDœºöùŸ7OÖî¼—º_.„›œ¹”[æx´"ë7'™$ìäw[ p¨9l«ì¨œÆù³ëÿõÐße%ÒØaýZ9“‘ÛFDòWxÝ=‘´”$Yô¸K`¬Ø¸•Y7Wê{ß¿fÌ—Y(»‰¶fÒ¢á ’pžV$ÛKvƒ©!N:¥ Ó–ËâÒ HRI1fè&÷°:“´RÂÂ×h(ikÜă¨Ìœ¼ï±D·l÷ GùH!ÜÇýæ{Ž+‚=(VËnC«pëgT»POd·—ÿC®¢Ü†»g 6«®ûë¯qÓ5€7½ -Æò¶Ô»öÒH@[Å[@rëß³„©Y”¢ŽÒTIÿn¤÷ÜÞÚìÍœRT2‡P2¯>R Q6Šå<ÁçËd+;;­á9AV÷( H Ó7+…wßdèmHdæ×xµ"ÖA$k›Q˜kÞ= 9ІVŒ¶•i×ôÊ:pŽ"T\Æa£Á‡’·V,öŽjÅd é©çcdßPtŒ„ºRcäʱb\YZs^×ÊÉy®A °±×d5Ç™K¸›x±˜gZ¸¬@‹ÜiÊÛ.:UÊÞç_É0N{Œ¾1Å—ï:_d»™aÕÁüÚÖSz p…e[ê9¥ë£+7%žÁR{y¸Š¿I˜ñrÌùë︒B·¨†’R¸)P+RlBE¬Aº¯m¡8Ý’È0Ô±aÁ㊖, ®=yì7JKvëJHJSªÚ(SIVkÛx  ¶[å?¸ñð[WM€ Ê´^èM’-úÙ~.ý£7ŹÉ@7mH:qY%*Í”ópì€Ë„£#o6‹€e8• òã ±Üè=;d}.¥mç6¿kæ:úEõÚB]*% >-9Ftæ¾$;€œ‡ÿÔ/± È%ÐÁ) $¦éʤ&Ä@ºtâ>uöl•±È¡\Z¢êÊ ¸9ú¤žþW!L®$´Ê™âJ2½“’®SruÇz²2*ͬ”fú{«[G~Ë^%ç‡ÍiJ<:\è½ôÓb¦Ÿq·Ó˜nì• ÷z3 ¤#Qè¾[“°±:Å Ðék®Ãk¸þöBwœ)JU›ß*Ò®8uý«XfÙfbÒïêîÇGpósƒ®S—Ò/²wy“—‰o“% µ9ˆÊ¿3 Ù[”øÆÿFíÂQZåWP5Ô<åp©@wlÛÒÃaÕc]ÒÛ6HQÌyÈìâC¥Ç‚”ZÝ¢Ÿ‹ã;§WÖP–ÑÌeÊ3%dåV«í\ðØeÊvuMX­Ü qxŠÉ°ÔÜÞÚ]J<†ÏN. ¸íšm”Êç®{p߇†Ù´'—"¹òd7¿o0C:ötQ!BçˆÚÜ¿nË{2Õ-âݲø¤¥\€@Oh ÝBü‡»EW‹³¬ºß'Îç‹^§*÷|CºÀùÝÊT”…?œo NR.°3§/$Û•­ÌèÚlçÚqC¿Qdóí#E8¹mnXm[†‚7fË+s·©EGöñgãø­³‰J^BJ{òX›£*¿Þ(èTJ]elµ¶ãjmÍÞD߉µîŽ‹9tIX2ùÆl£@6mÀ»u¶Ê…Ò²—“p³`£`F\½Ú¶*BI,¹“-»IJR’{õWÇ}‘¾Ì Sb8NT«y¯#èW>ðtÙÆ’¤ïR§²Ø Ê2.þx°MÏ íݲTKƒv¤fAæ°yÛ‹’ræPû¶‰ F[£‰%³­Âxˆ énñߦÁ6và'Æ‹ø´h }*Xº‚uÿ®Î¸å‰ñe9lE“›2n4R×Ãa¨yŽ ¶ï” |‰7¹å­Ï?úl§ä­êÐßzP¼Ë$‘kð‹ë¨=ÛeG‹h©enZÙ|YÊyŽk°°Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»Ò©?ÕßèWøsüŬü#ú³í†ÛzÍí† øEåý/ÙÜUîô£êOõwÂ:þÿ1k?Ç>¬ûa‡öÀÞ³{aˆ>@ùKöw{½(ú“ý]ðŽ…‡?ÌZÏÂ1Ï«>Øaý°7¬ÞØb„P>_ÒýÅ^ïJ>¤ÿW|#¡_áÏó³ðŒsê϶l ë7¶ƒá—ô¿gqW»T÷•ŽðÃ]KÂZʨõŸu¾§þÖÀ³·;ž½+ô­æ÷ÆçÈÞO+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmEƵÜw€'bl;àïÔ¯*7SðMEêµ?ó8x=>GW¨Huÿ΢½½Íº{xÊRØò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦӰÖ%é+T¨•.­×autÃßu9‘çÇüâG±e·»—‡|SèÏ“"ó6¥¡PpÖé+Sh”Þ³Ô¡utÌÜõÉ’'ÈüâG²¥¹¼—)÷|këÉŸ"2¶”!>V0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÛÊÆùºݦÞV0ÍÐ~í6ò±€>nƒ÷i·•Œót»M¼¬`› ýÚmåc|ÝîÓo+æè?v›yXÀ7Aû´ÙŠ.1éV)‘j U‘Ê~IÌÇ•·÷Ô¼ B²Ç›%½ÚÝS'y™M•¡µ'ÜÿÄ'!1AQ@a 0qP`‘p€ÿÚ?!ÿò®³(1Œ0 ÌÃ@fqÉÎrs‡ñ°÷V°íÂV’°€§}Ï– ”JºrrIÑ ûÓ 7Þ³§ˆœÝî5·¡:@ˆ[lö´Uj`8eèQÑ“_³QŒAÆWÉFž:–ÍûStQ5iívù.å!Ÿ—W\EÀ BA?jÒˆøŽû>|×£úg îg×éÊizÈé¦ZRéá3‰*›Ú˜î¯ÍploÛ§Ën1®Úܸèèû MÃÆ½k@^›ÄWé¯i[ RQVÄF5ÍGLþÑDCyâ&Z…­‘´Qé„ÇЧ©5ì3ó._ÇùóÉÌÜôs÷^]µ»¾Ö)×G§!Þýãg ÿd§¥z˜¯½Ž Œ¹=ä5ëµÛ/åÕ§Ë;î|°û;J( ˜G¹jY{ié‚qbúŸ‚i¯ŽL!ÜBˆôö*õbPõ;ì"⋦«å ÀN²£ª?00‹2îzªüõ + ­™BÈâÐê7ÍaÕaP¹¶â¿(¢·¢q’ÆÌ 8|ì 4± dO$r!U>YuVh!©²D…¾6«ò¯E ¤EÊqÂÐ} ñ¨…Ö¦Àø<'Š&!hÑ™{rsC­Bã2È×û=DeC:Ú:0-ÎêÌïT2JÈ·0:2°)k©çJ…I¬4…ŒIIÃè@â¾ÿÕÅ3ìæüÀ)GÀ€ É,¾|‡ñaü X1; áXͧ‡„ Fò3á;Q~Bxž©ºYb ýnÖñ‹®ÉBA|‰SçƒãóX)þ'T¼´ªº²QTt‰+w÷Ìî¤ÜÇQ8âúì3Róù»ìàÄò/¿Ú2EÏ–Sbáà ]M°w«ø18×âEV!#Ç-‚?Á x2mظ$“ ›%å,1LãÜ5¦ÓºÁ+‰Õ¬º“ét< %k¢LÎöñ øÀÝãʺ¬Ûßì{€Dã /$èÔç‡è 2 .h uÊHL6]RASº ¿°¿Åf¯$b!×b|GðZ¡ÂÀr èiD%¹wA†@ѲÀ0‘LÖ£ÐfÈÖ\ÞwpìÅ‹¤CúGi|§ˆ¬a°(¹}‘€(„"± ¼Ôr¤™›Ã-V;Q± T¯”‘ð–ðëÎhIðpx·¸’¢Iˆpv:ŒÞ6ÀnN›:’–%RðxLÒÙ´n¢*LY¯âÆ©Š*:@º¡yE3Oî1´—’Þª&5´k £øTªIj %“Ul2ÖÉ{|¡êj¬Âä?B¤Ænð‡?OuìOaöÑ.û|¬ƒ /P¼‘Pö_ÁôñL5KÂÕ?Y±m·Pßyrc—(+\v€ A¸‘[aæ4ã°"”öŒ.ý”).•éÛûû™PйòÀ µÔ ®ëèÌó$v¦JÓƒŠ‚e2„q˜ÄŠâÖÎk8T¦¦A)>g ¤5­Ë¸ :¾ÕöÏ‹gQni¨R¤:—ÓŠ°9*“B1Ž&&ÈSµ1°!à!‘üÜZ#åÁh’o@Ñ@TyŒEº¹U“ÞaÙc"EŒH¬/7b¸pLŸ’Ý¢Q@4B?©V-J“h$Räsf²f—úÌO(Jò×^*ÊœÎñFÜóa´PmwHSÊ!õCq)Gq1ýA P±G„™†0ÿ"6raTƒóP»BcŒî£5ãÓÂ%€? Ÿ°¿2¡msg·˜¯¸ßÞ ÉšŠµÃë¾4C0>ÆSÈ’Óý+èT£6Ǽa8`•\a¡š…ä^U¶9†¤†«ãMAdí:,Õ¸5Çpœ=F# FpW®+x LFb€lÙívý‘}ZI[ " ”«™ÿÚ ß`Ÿ­]æ&üØ;'  :-jÞ>‡u(®ûæx•T1)Ùì+: ‚þûçüj ÝÍÝGaa EW‚S™åOø}`eö|á"µ­iú‡%AíU¥(î&¾ &ƒדÝm]’m|ùaìO‚qæògü³?´O°â ~I[®¡¤Ø©´ σ–ÒQ+0Ç`pAly1Ä`AÅl•P„O>‰Ü2:…AaǶ_ŒöO ´ )€ùÊîƒÚÂo9,1rÂ%¢iíÆå±MªPÂé¬åža6A- ®á;« ƒµO¨>‡”ÜI\`Q’1á0«Ì³¹&Ðð–‡ÑC¸¥þvö!ö_tGÓs–N”)PT©º1‰Tôç¤Í¨5 ²%«hGlfÀS`b'.Žnº§[F Ç~(šŒü‹ßxñDÓÁíi’¹7£h”š/È‘·‘ò*ó‹?¥4ÚeÛ›éÔËßî{Åÿa»íÏàúGêPì s}°tTÛ‡¶s¾°|=hHÂÔjЬ£ø'Õ(¹_]x©…ç·ÀæNÁ Ô¥Ú ­JAÕ&t)'D4â¡¥ 3¡ðµ0O/=Ãj£81P™ÂW-fƒZ!•æ›òª°ˆ”l°Y-|F}$ÕÄ„ÖöO“÷ý,˜â+u6-Óî|fGÝÈç`!}3 ’ ¿Ñ)Qýhj2Š{ë °Öª¥D6N˜%ÚKGâU³óÛJ‘á[(9e·ùkÉy 3Ô‚¡Ôå¨U8ÌL0æÔ¶±òš¥UØ'×_O”Òsâ_5 ¢k}!".+Á©ù1^,€ÍBû‚Œ‹Ÿ^Y«šM”‘^„|ü»„$°Lé€xÈvòl±N8VI!„"ÿ øçUá0ÚÒð‚‚(Ùì8\Œ¯×RÕ“?¼ätˆILE #ì\â‘.@ Â_X"¬1îõZ‰7Þpù÷“VO|¿–Ç…é@+p‘fô‹ðj9ø—>»î yZ[þ$?PîÊ48zGÃTÀè1¢”zjèaé"+™I%KZ&t‹Á;}d/ B,S6­d-‡?P›&×!|æ4A’)Yê4tQ}ŽHvéæhTÎ2¦„‘h°`Õî}­ñ"¦<3£BT*×ÀÉï†úvÜ>Ñ©"°ùŽ‘(tIû ·{Â1!NQn7ÒYð.Ì×$ÇX j.-ïT·â9aB0¢CV&‚²J»#!E¨o¤‚Þ”`¾rü4QBÝÍ€KÆ%Ø#¢\˜hé±°‘?¶é%p;lר% ŠRD’íë¼ò¤|ÍJÿZÕ‰awÇP¿´ãÒAüϪƒÅbš=®øÚÀÛvà«L‘'û *q³E+ ÅXºSäM(dA¬ðãÞÁ´>1 Eg79W M°Ô(ž–íGBÅ áP €ƒP>⸜¸h^ù!8ÁíRB½ ˆ`#„~0úâ ªAÂbF ¤¼`QbSnMÞ0;€jÉ BE|E®>„ØßÓÝ™zÔŒŒXØãçžï´‹-îxÏÃ<®wR¦2°‹•ð ! W°=PÖCíæ>ua±N(ªÐ<ŠœC7Æ©y¹ªN±AëKƒå\éUJjÁh+œ7ä$ye·ßÖÒHàjf4ó ©Eò3ØßÀü<Lþjx2®R»Êf48¦K£ÉJ ¶<±´W#ƾÃÌøXå{0/Å縧ؓ·0·ªÁ= µPKB†ƒø ‚.õy"VÐ TT–„2d áö<^×3/_ý;|viq^Š?ëè #7GdzòO@hõ0i6‹–N¤¯CÛ ­?ˇFÊì• O „3¡P °, ¦zÇ£DÄ„'EdˆDGUcµ˜'jrDd…¤½° ‚! õ 1FèûÀ‚Ÿƒ¡F“Ã_…*LPVb𪅌ʪuÁ º(‡*‰ÛQóôþXL^NCm˜RˆJèP! ¢%uÖL.!UnN Êb¾ j J*P¨QWO¸ÀR×)õŒ™š]z £4J­†®€ 6¡ rþ›Tç—ÛaämÝu-«E„1xkÆdWÿ^Ê`þ!ð!'¾Z׿G†<„¶ñ´êÀÒ0‹Ã{ß…ìAp #©´¯ëŠ *¦Kü„U¨$ž%!/á±ö¤XÂÆ¸¦zR%1¡NJVó’iLõŸv‰ø€Î xÅ[}@Œà:…aeÙ*µ ¯<ºTV¤_BÈ`¢ÄüA¿ÁF@¬›‰™„wˆc˜5•äÚú@Q ã†üP??”c 8¼ÜâmxKÎ\Š`£€G§ÏÑz9=€„"¢»R')ýåäzzúÏR¥, îÞóC4äCp&ÞøQàôtÐáS5Ë—~•”Ë®9´ß€€Bü3AÔäÊ-gÑtôm¸Ú8Ù2‹z€w&zlËŒR@«ƒËTQÏ¢C€ª Ëe«!’«ž4n„©, š|Ðá0ë^u€Õ‘€5×K´€¤ÂSuÙîDç¾+e˜zhÙ¤Ä&E?‘cZáÊyê ØIQqraOL𠄇û"NT]â&¬.žÓ‡†øÒ¯µvÕ·€]Ÿ¦>|  í÷†@'u³üÑdšwJ܇G°è@öyÝ4M”•ðs6È! (ê`@QdéÕx Aθ7@ã^ /Dˆ¯ð§ìE†”CÀ€?*> _ÉFt€»2†‡kGÛBüY .^°Äm€ÔÑf˜•W•ï½7µ5Œ2W\o›ƒ f1|½‚7HÏT ß…âp`M@ƒÐú¨-œ–³Ñų)q Df@Í'@I·O‹K$ÃOp#„5D^Uq=1™–gz((V|€ÄÕ‡4@\° ãÓða(Q ’úòŸ pg˜ak“êR Ÿ  ò>ŠÿªXÞJŽgˆ_Rs|ÍèöæÅúMÅsÖèó¥û¨Eª¹DÁp:ª©š©"Ø!*e/cT‚‚'|røÆ*o+¢ ?“y¹˜8tfŸNé $/ ‘òoÆä­Bðzšð‡<±×Bœ‰.ËAÈ›èû¤!Ë#ϰû¨­ü*6£;€D÷òqG¼f9Œ¹åµ˜à{c;q¡!+l‡¥…·_úÐz Qr‰ ià/9‡1ѯ¢^€0`D&ãíADMÂjb‚x“U’Ê0Ä ¨˜¤c™ûª ŽXs.·[ðv@ |¢º²·\ D…b§ˆ:3`â ]a,š T"¨;Éð1:ŒÛÔßâ—¢U,RØ{“‰>¶*PÔjðMñuú%Š%¸ÃßÔÛÑß…2½]œæ™îDÔ±?$ôà #ZFÓ€cCs´cÖÙ4lE ìí²Ð[Q Œë£¤ó(i³OFd“™­â 4,HÞ¨h¯Ôiâ_ªôôbÔž&?D%Ð2ƒÄèzVãó"‹±8@•–nÆx¼!¨@áˆm³žPaﳈ„°­Ë¢X (S´ê\`Ñkzð`.Ò·;ÌÆF¸aÕã Ë¡œ"/ ߆"l žãÔÙË8ù]£ÎàC£à !FÊfqÐ&FÊ ’ŒЮÕ"¹ä¾¬ÅEa?šÌ°å lîVSGÐ?ÝÿrÁNûŸ,ï¹òÁNûŸ,ï¹òÁNûŸ/pá@lQEQEQEQEQEQE4Ë÷ À»”QEQEQEQEQEQLZmšÙüZmšÙõQEQEQEQEQER=Xq¬$Ü´°S¾ç…òØaj×ÁNûž<øvBìV¼Ë¶8æ‚Ë{`mÕ Þ¹¦tº×©(éGý¦SgŸÂ]Š×¤•|pÑŽV÷ñòÇqG„i§“ýÖ½IGJ8íw}ìóáØA ±Zò»·jFʿNjˆÙ° z_îµêJ:QÄo§‚ÞÃT—·¦m`öEëOÄq²péÃãôN±Â‘Oñ“.ÓMKÝkûC¾¢ÞÃT—·¦m`öEëOÄ~’õôV†¼`ùy³ÁªVÔSMKÝkûS¿ßk{ P8>^Þ˜eµƒØe­?ц$¢(¨Ø¯:1?]û¶ˆ÷$ÓF÷Zÿý¬q·ç‚÷<ï¹à§}Ï;îx)ßsÁNûžœŸï¨Kž‘¼PÿÄñ0úGQúb÷<# å…à’& -•fúztÿ¤)ßsÀDWÑä•@6„bȬ³á* V}oÁ;qõ .BCD3¿‚v`ò“3ü˜ÑÀœ/zÃ2”J»'Í—@Ýšè-L\ÖWœ³ù ‚_Ê,f;ê©uh·Åkp~Ç=¢ˆ±Ûlëïµ?D¶î²žx0g Ñ´u>wƽ·«¶ Èãó þpoÓ~±áZ>Àý™ß`˜J £€®5)ÞxaŠ™'®³1õ²Ħ^{Ebíªº¼Œ»ïÚùþmêËÆzU™Ÿ¼$~Îx _1}i±}‹ä¶ÇÃ7¬ª®›FE2 w#]ẵ‡üõH±¢IÛ RL(Ë_?^x8iºØ¥KH(4I ?No{™P‰!4í£g™O’4ˆ/"Ó ®õ®oE»Íœ´gØɃýV§ûS/0ð,P=MÒýo¿]m ë @~Læ²èIöþ5^ÍømÀBªX´sŒ–È8ÍQß#©êkÅcšÃ;M!ôðÈWp/-5 +êûü å 7ç¾½sÝdlê¥[t­k2ßÌSî&‘%j¦š¶WUñŸ¢!zZÉC¨Nƒ|/b_ôh|ªAÌÃ_©ö¯j’Ú~ÅO LÒ±hP§Uui˜–Ô ÎBÌ?V äîÔN#ŽÁfn˜Ö*½€b$ï»Q59hì>ÐU,ÆÃlÉÌD&ª­%ä8ÜÂR/›Ñ(GE\žšô’a]´á¤L'ãö š¥>Ó Ø±hR%w„Iaw±ÖM/áÒ'ÞePI¡ÄÍM¾¼€W®†²-̲!žu-+GLjÚ’ÿmJ¢™Eµ€Gl­´I->lhyØö5à:ÕJÑQrÆhÊ;!Vz<) bÆèÊr¢Úµ)Æ!ÄŒýä›Âi€Ö†½0e%IÅ®Gè Y™2ñq„_·v%˧:X4B8Bnt<$/î÷Øù„Uàr€VsëOÉQå ß4°z±.:‡{Ù£ ‹% *šž(<2mQèØ['ëÑf*s_TÊ9íBñgçæ™*GÜAèN O[ÁI¹r!²«w.¢±NSYŽN j|(.L<3V%v ØWÞp˜»GÅ–Ø Ö_> ®ùÔ70ã£n*7nÈ-Ýas—-‡è䯨5Š` Î{(©š­¼Ô¾±$]Í)ô¢ÙLQTs=hÉÃFáƒó×ÂbÌA‚Z¯‘l^£‘6𕄤‡ó*7øF¢3 !éÒs)'Þ_ðºpQ[놛"L£Àõ!„èiŠ“ñÛd…›0ªüà ÌÅOÚË™aWé3)€âµž¬´WÜpòŸ„ú^Ÿés¼ ê8UÔøƒ ™ä$vKxÀ h4š¤ýrãzLÎÙsvkúíhÞ+Ûˆ<(7$wé#a¬jÄ'÷Ç_=;àkRfs‚5•9ౄ^%ÆÓÏË"ˆŒìŠ< µÓ€èTÏ ù0/)’6™±ZAÕ~(!€ {ÌE«8=7²jHM€’)Í5!†BD¹9®!UðȱOPàñ=i‰‘Ø•Øç½Õ #‰Áµek2W÷×}·;>rü¸“iÛdq½!H=AdPôÏ M*t?Ÿq)k¼1®Ç9®C`ûEq·‹ùŠÎ‡©(}\ Œ›N¹Q6&¹1"áQ˜€e D D³ÚG /ÃA\ª ¬ž—©«Q¾^W2-wj/59¨•Öº/1JÁ²¤7§õÏ 0u(P”P ž†î­!Ø".Le ‹ÈRN‚ÊÝÙÆÃ‹Vœr57€ÄMÁ:ˆ;„)î+Lÿ6(hƒAsÄ PZ¦Ó´;ë>¿ 8‚›Àðx¢¯ÙìýÀõ?Ä6›7°ÀU`´XE ±ÆâŒ»ãHêÄ 8ì„UU@å®Z‡©ÅXÊ‚h¸)®&ÄZ*WBŠZ ‹®·‰íA!–ÙÊOÃ5Š<Ï`¾0$ŒÒtUH ôC6>&Âüð° !d’Û+C|ñ?Y2œ“üü ¥6L÷Ígà©´S›"èŸ Õ9êN­4È @Ü„eAyÁ¹Ä®¼E—"~FبÏ"Ë¥ÛÀ2}‹ùP~®š)ôyfT¤þ³ZµLÏBR.Ú–Ÿ¨Ð”¨pLÑǺ8¨Àßý•ÌCóÚ±DÄUp+P‚²*¡³7ž"e'd÷w‡ÑŠææƒY|^b€‚Ÿ`šÑì¹ôï‘­kúOÀÚ¢id¦ŠÌS¸5 AëãóŒ%²‡Á}ü6ªQqÛ F T[Lp+jHi 8r󆻃õ~K¶Üî“àƒ 2m:ƒ. cÔkDK­_„XNÕ)¾OÜäœ äÀ¢éˆa-MA˜WòÉwPŽÑA±¹¦MœÉ]*Š‘#‘ðá_÷ô6 ÚDКÿî>æŽz‰v“Yà(ñè¨6Ì%Uç\­”´N*ë£{€ÕHO ¸¨PÒõð¹_ÔPúü>^T €yö •æ¬~@‹HF»;V®„[5ò"ÝWüz§†|“§‡ØÅHÓƒkëu(߈Oå®DšáÃ>üÀRÂv|ÍŸ¬@lÃo¥Î¢LÙ¾úb®; á›V†ÉÔÏÌå_ Q-3ú±TÕ ¤‡hT .‚ñ—‘J±¢R“Ùô[$‘ ¢^ (¼òzŠÒkd‡{ʈ›÷`¨Ø„- ±ò S¾€W|j({½$’ú!Zð¶B’?ö€Oo¾z Üo€Ò¢°u÷Û’"ŸQ”pIÄV0¥ˆªV¾/@iÃP˜KêËõ8°é9f£<Œ¢Û#v¤ö$Ã$Q®,¥¡°ˆ‡o—Â8s™(’ü«O,M€Ñ+Ÿ¯b4 ÏS¢a˜uŽüý¸hayœ+[AÈrDÎJø´DÆîžÅéÀ’Ö ®Ø<=d\©Rœ9þES#¬[‰Èd¸¨BE*áðÕÑCù«võó’ü‚µÑFñÔ´ˆE‹“A%:©ƒÚRãpš£¿8ž]!Üù(³•20jGþ¢F2(ÚÈJFT, Hp :(¾m¡¤ŽDõÑó™àLÏ~ÐÅUc¬œÑ¹´FVJ‰ãT9 >²«ÐŸ2>Ç*}b|ÅDYD AWâWßr\—¨×¨b xÈ ’ùlÕ£°Á„áŽ0JãÓAOÎŒ›äá!–¥2†…”þÖøœ+¦€1-}‡BPûkAÑVR`¨håìÿK_VÔ봃 ÑMšµÀ$"ˆÊûvrñf9Ú#\øÐ%n8WéêÃ!=¹=¯‚Z=‰#©¦ÑY—øÿ‡ˆÙ…På»eZó*þ0„Ó½bp2I'4•œþ݂ϙج«!P"ºÑé Õ”;0Ä $AQ Ÿâ—‘(øÇè8 ›&lßN[|ÙkJ:#ÌtFlF‰Åý¢J("³«<P<¯‡Açòbf@ e [€Œe‘24°!ƒlhÒ4Ö‰`Ž%å2×.+ P·S°r©“m„% >Éfªa!¨ –@Uñ êGý‡ûîœs'P*FÜIª‘\«(¾GÄÔ1Ñɳ ÊÁ>à`÷OÿÀ§}Ï;îx)ßsÁNûž wÜðS¾çãvpã‡8páÇ8páÇ8pâv½BµÜáÇ8páÇ8páÇ9VØ#ðýø«lø~ü8páÇ8páÇ8páÇ7Qôá¡ÀÿÚ ÀR€ €€b(  R€&Æ•ƒÑ„(ËíùÏRÀ #ú›ðR€;ñ_Ê€ Aá4·ì€ÄpÑ@(%hàÐÀd!ªîdØ÷ ­BÜbÓZ€À”ù:• Cޱ^  ¶H5sµÛ4T¨Ϊ„ezú€M‚´Þ d§R'D ül*þ€ŠÁ<°ˆ3 (LAÂ0¡Ò 0P!¨R€(ÀR € €E  0PP 9(cŒÒÁPvGê_C0A?ÊCý½ÒÊ‹UµŒ*À©?nJ+ó <À‰†V ÉD ‰ Š(£…A€0,áKc$¾2¥%ŽPÅBBlCnøH÷˜!¦¥ ƒ ýÁ8ʨP<ã­ðG^ì;>f'Á=Zk !-ð>ø}2ÔÀcYµb®²™p ‰Iƒý×ÁæµE>0·¤í8€yLJîL¾€!ïÌÝôH> 6ùÑ6TѶUž A(Ÿ"®ÓJÞߎIÊ@µ#Ñ-1’¦•$–Z ¨=—©™ÂRvY€ÁK¥!d6‘ QNÒYÕ’ ƒ¼wM®§†/Ê\Åj±B „Aú‚ÿ€ˆy\ ]|ðQæÌ ]öûØ‹hlŠ‚XÌø±òã’0$,Ñë$ñ#OÂ!fì5^Eêë²[À”ø0#0¯·%"åe7ÀìŒÆöÙXL"3%ù  ²¿`û?ÈC%€T\´ßEð€`h‚ZBA¤û/­òP†õ¡³´s\†I¢&G  lf%q`•j"ƒÆUÃó:;¡Wƒ Pø9XV€ƒí¯Ƚ1ª‹*Œ¼S¨'›é –+HÖZ­"¢„hs‰œ?¯t8Q¨ˆ÷H€MwU} º'ÂÌ긫ßKVé±l=¬@ Íö Cí'Ú Û²-5ÁòœTâ—§ÍL­h®0ƒk·QXíMÝ¢#ÚFE‰LÇ|Y§¸A0„S4²'[Ui¶›åƒs‘3f<øç˜ºÐ‚ƒì½ðh`Âà`ð¬©'JW·n|°<] ì§‘Thƒ¯é·W{ëÚ– †²á•LžÃ—¯&nâû¥ƒ‘¡?Ì€ÀP³ð‰•cDäx]©ÐØÂÿ/ƒ50ºÿ–wW–b^ÜJVø’jÁyÐBAž€¦å(­¢)¹š ¦ÓV%`†Ä<9°&ðk‚-HýÀ°L@sÿ”SX뉼ô%\E{£ê ’‘û¨‚Wv8ìÓ°÷ißB:Eç¾LH»UFŨ"ñL6­}¼ˆf bn0šTwˆÓJ¥-ó-ì4§ÑM+¨‘Šç>Ólv+À@4{Z¡¥Bš#ƒ1 IÆÒ Wʪ"ÑÕ3nÂË8·O@íPv 7#pŒ âºjsâ’—•"—²Åð?¡"¾ì†831_Ö|N'tÒ\õ ±ò& &âåKë@©J›V{CT2:Òå²ÚhT粛˵‰ 25À±€I¥=?ðyFÀ^ÎC~Õöxй*‚¤eïüV²àB²€VKÃ@NȰ¥04€ùùÉèÞ.ÀoP† f6p:åKpGDa#ø]²%±„J¦IÔQbU ÇÒ™Ì@2Óz6>Î3ñ"·{½hÅl˜)„¢Çµ:‚߆‹Ž´²êƒ?qzÄ’p*¢Šülat°™-„Fgàöd8|J„r}b9v…ai&H@WF‰cZÄ8-z¤IlO4šÜ«.á«0(O…PÛ:© IŸÞRIÏ·} úÄeŠðØ@꘶Hñâ‹é³,"KQÍ7+Åô(M&‘ÅÛË:1«†fpeççNY<\©¤ûQ ‘€"Ÿw4Μ8jËtL¯/8(¢'Wp'Ý ùBŠ2*uõŸEíµ±ëýeã€XÜ:ƒÖsË‘P""%ú”lœ¬Õ‹ÕWeG@ ã;KCmÅmö›ïÐÍ´[ªmˆbÜ6L@1ØFT͌ŔD‰„‚ƒË@\Ib8¸u™¡xèc[&r›ád¥|PßÂUû€Ï¸I®ºpé-N½™‘<[\¹Frálc TbtôÉR³ùŠø/g`}¹!ÌîË@o(˜ÍV4)‡Ùæ.”ªђˆÛÆ= î‹¿x˜|Ôo}°'•Úw¿A¤;]mµ%!Ñ&2ÍÒªæÜ2ÂÜMJ@ˆS9Ì“°‰6¹Ïƒt®]xòu$R9:Žðž¬p"ÇY¯•í÷ýàk°Œ‚IŽº\ÖPKEôJÿjÜ 4 ­P¡ðzö8ª""›ëa‚±•Ê.Æ´üO`¢`Xav…—òB±P#¬üȧa2!çĹØj€¶Èa!ÕC”V +ŒRMô+Cl®¦ITG·¡cDí™ú Z!°%vÙ»5Ö‹@ ž_¥Uìª.™ì:™›“gÅt T8¬i 9‚4IÒó-e›%åü㯘„ì=¥‡È @™rÒûÒlÁÉÂqw‚<«¤Í­®¹]…µë¾"èÛp[qW¥¬tí¾z(îxÛ1ÂÀ·yë"AŠú‚D.3}YG+´‚ÏfCÑ`p%2ð,!k” %v `‡²&ˆnýÂNÐy¦ÃW–×ÔLN†N:ZÀKˆ5š¨Î®…bt°šÁ¯()ª»°(’…t(>u‹tiMLÃgÓIRf ú.Cp}ɯÜΫ̦ÁÛ o\Ó'~jzÉâ ®Jk\ú:(Œ™³÷X8ø÷ûIx3ßÿÄ$!1AQ 0@P`aq€ÿÚ?ÿš«©'ò,´rEF’ 'o ¦ì¡QƵùÀs+jçàÒÈvØï’âY.º/}ë%!ÂkRFš°U `ð‡°QF36X¤Ò)C°A&­…ØÈ˜H!ou‚q8Q † pÕ•R"À¸;„œX²ªä’“ñÍŒQTék³EÔ…®š]O{f!xH)5²kqûXùbI" ê×>4óZ°ý<퉦âêøG¼*úê)!ærUhAçl„À‡G„ - FF¸9Î$)h‡ ¤<™¡äÄ€Ñy†œ]’Œà¢ÉÂÝ·‘ýc˜ÿ£ÕÎ<_ÁBA;ˆÔŒç™®bCT€€’€)€¹ÎìKY^#šÐ Ìû",LzÀ–-pК„MI RúXå 7C >ü0W!D^"An1üúÚZQ‹ƒØñV Ò;U¡…£ŠÈqh± ýi<Ð29 AEq‘®y ;xÁ4Idä”'‡…¬au*)p#Ü8þacLÿ›x¿`™nO ȃYãˆàd4A4Eê Pª UW5\|s.”Àâa8 ôSZÐL! %Tj„·t!uȨ.¦ Z€´3j{TÌ츼ÆÖó©U U€ ÆN$­ˆ‘ ]$Øxí’†0"‚þ“9qT *ª¡KÓEE°Ï°Ä­æ°@TÉx»^R@fÑFã*1J.¡Â/G¢ÝHø óÙsìÄXB³ :H'¢‹³G”ERGjRJZ.S­ªYM2Ë¢‘Ü€ú 14Î’¨x‹8"ý/F2‹CÃ(õéBZRŒ}¬ ¶ˆB *¨,J½6£*þ@¢“É0¼5„Pâê i €)6‡‡¦Xć°ðcC”`àè •œ¢©j¼J¡ô”9¬d½¢Ëʼn¢XÄ.ÝãÊBŠô–³R·1÷=þ+ÖPq·Ñ•ÖÏå'RjM °rÔG'hôˆ dLIö÷Ž…„¡lÇ  °9‚Ž´ÑûIfO;P¦(}u ‚žˆ®§@î£Dü» ]Æ[¶©0§§K »G¤ˆÏ±­ÁÚPþñi9`ÈØ¢ò›¨†³aIK8ÎGÅÄÑRågt%²"‚Á”n'BðÊ µµVF+\ƒa¯MHõÇl¿Jr’¶b Zå¤"Sr&!½^­&B¦*)F¶U]­At"²¤õS,Á«S…1ÄH˜å?ŒE Š30p@ÜÂ#¯äš÷bCA:«›©NX’ô†¥™îšQØKbJÇ`´b@K€ÌYÃ8ìH¨ I :ÝŒ8 ÂÀ]¦èV“£vÃI1F與 [Óÿš Ð" Äoôž‡0§Tò`Œ":™UÎ ½ø²gÅš@+ú ñâ. pèÑEoð;g ÝU.J8 È´ Ì!Ì+—ßbéXh(U‡zH‚«¥ Lr^ËzŸNP÷N±í#-ù€Êäƒ BnAZøŽu¨SENµpKº [Z´a¹ †| !ÃlÉLS¤!GP˜++ U_“SéAû»bš&ðb5ˆ}Ч©@ÑÑlJ–Fxfðf±iª¤¾(¢»„1A›!" k•K:î„Æ•Ì7„HH D;FÉPз^°ËöD£¥uËåp7ô`,LS";F§‹™ Îph$QQ€À 0/.+Kb„b>U'PÔ07˜®©E¡ |Ú`1*ÔoÄc&ûëU|Â$ÈÞ!ÍWÃD 1œ¡l6¤¢€€ŠÞ`"&˜ZaeW*r|I†" ©{iO˜iE3 4< $¿®” !0,E{âíì*ÜN‹„PUw™·åf€ Vˆ(¨% ‚1†’›m7âmûDYWR±‚Íb5HAøe ¬#ñM ˜ qšú”'HbÌ&…M  ‚D A@pòj]z"b”ýýªÂi„ŸŒ~ ( ú%Ý¿ì¨":`* .Êp<ùÝ ·UA†Wƒ.±2¡„¶ìS"÷Ž•¬•< ¨Tö'ˆmgø · +AÐVq¯¹}´,‡šh.XI«KNþÈuP)rœ"“zЬ֒b© (eù€U: ÿ ÆpàT«ÎÍ#t‚Á¯`çßµ3•lWG©³™æ©ÑbB¡o€G¡pÀÙT| Eq[ýó"Q)~(«Ä bØP:žQ ò^òb‘`/"ØPQ ‚CD”xÞÊ)ÚÄ@‘D?“µ ˆW¨Wá÷—ËòŠÚÏfOƒYo1!Òô#ÂRÒ§—)Y{à ²”N=N·€í¢Z$@ ADLDÑ14þîš4<áÙ€)–ÁJ’hø‚)E„°Ùs+S`ä)@ à @RÁ8N¤—©ØQDD#¢&"xÿQ•Á´^^±.!„%¢BÔ»0ÃN‡V çWˆŸ‰W4ðÂtHˆ` NŸ÷TÉH!ÙåòœœQ:ÆŽAÄGP—c(nÌ®1Ôa¬KØ€*J'y,4(º—B„Cà=,þÚI†ö`ƒˆòoXÒ…ÖPX‰jQB‘Mí˜KßTy°Dåm ö¸b¨‚–‹­·,!“t)¼D¡`’xÐE,¡uÃ#C¢} œ f#¸°¢/VõCHÂö„-!lÇP ?ƒEâfHbãUMFìAe­a ìBAÂ>hÆÕô!׉´Yh=%~ˆHäa®FóBØp€ÔZö.vœÀàwmF£áAu©bÿ pŽéÖcÔƒ%s@ÒbE‘¦À*h „Ðç® ¸* •zùŒÏâ^Osvô)œ€q ÉÅ.%ðò‹çÖ!ž‘üW ŸÄ¨Eè?À¥Póç$ÅÿÒÇDm!!£]ûàaHÝ6 ª”’8Ç#‹"€ô«*ÝeaQ2ÿ1 QbšÕ”–a ?ë!Lkd!h‰sGU$_/¹ÏסNª³˜‹½ Ú H ù áùD(E>üÊÂjöp)ÐMG< · J)cÒ– ëãȰ: l6PàA5£’ñ(É´eZ mnòùQÅiW‰5p°Â P3àY åÂÚþÕè$£F÷ ˆ¹EÓ½_$¢‹ÊÒÂi}IÿØ&ÖFÈ ¬PýY^ ǪÆê¤f šà@o& X¹‰´Ic)<ôgîŠ?N€Â»‡ÈK‡BˆïõÆ= Ì'£‡MS6‚p•£ŠW§Þ¦P ÒbÆ„0Dƒ@qÂÖ¿ a&•T ÐH—.úB`I©"  †E„ àZ†!!‡Rd€Ù(2DOíÌB”4_C€A ÿ™ÿÿÄ&!1@A 0PQ`apq€ÿÚ?ÿÅ@Ž—¹ŽŸÙ™™™™™™™™™™˜Àa¼fffffffffffl§lžÃ)Û'°fffffffffffk`§þ¾6Õ*“-=/ØE–X¡a”*6à¾?ò(º¥ì>Mb"Q£Ñ='÷ñD„eNA¬ÁRž·éd„åÿ¥šË$ B êyÆòcæ 0é\@p¥’&wØ ùK5ìÚׇq•Bòâ©/áq“p¹úv*MùNiÄËü,Ÿk¤Z<Ãü$¬üͲÐp/·ZM·öð.G 'º‚^ĦjÜgDÁ ùh´ \$×lË,­Ï|Úxor|Œ©ƒ•õ»zŠÿ4ŒÚV¦sñ_y6ÇéF±CRjÅoïE¡³G”X­z¥|×ä0G Ã_Ë’îcP¢,»KW`à¿yñ ‹KO9¶Ð¤uó2qËz1Ʊ5Šw|E¸šû9ºÃ÷Ñ.ÛòÁ)–Lüu–Ê––‚†^þ+8Бե±¼âP,5ªÈpZ*ÆQ‚¢ÿñEŠE–X¡„qÝT1ã÷ê®DtA<Ügß`Á$uºûŒW‚F“Ôð³qàá†_P!Óh°DoýÉøäh ©HPAo|„hsCk#éEGHÄ?B}Á(h'EI1."ØäˆêÙÄ8>~ÒAÎ? >ã:´ïô¢àáv[Ø_ˆ ¢JkFI,M ‚1:C×Õyô>Å 7_Âruüè“^yH«ÁVè‹,±C", sì’uöoCn†Åæ#¼Ýì![$³¯Ÿ7`æ[ ˆÂã£o0Ê\Ä¢w<5`õ^Oqf #TÅÄDÂÌe:l}v·‰ŠAÔ×jD ä`¨ìŒËd/*-EÉ;ÜíÚð¦ ôf2 ¤¨¯¯‹#•f2ÈÒ‘éÝ8!4¶U¸…à„CJpðyø‡ìØLx9çÊd²Ë2¨ñÌ.Äù¯d¿wžu@jä¥ÙP/nƒ!IFYhÝ$²3lÊžÔUßDËá¤ÐÖIt¥#QŠSªCy ŽÈj„u*¶±Iƒî-Ú½ãŒÂ€Àµ³….¦Ó e÷SìêqÅ–Ý›« XÁnß6kË܉´ŽËRÌή֦DM=¨ï¹)¿`Jñü©\È¡­˜þäHä+<‘¼ùË­êÎ_Vx”Úb¼Í3%Â%“í-1„"³1+Å)ñ¢3?ø¯àáV ¥µe–(j¼+î ô=&DC¸x!6ü~© ¬I»qg= 07¢~ã,@Hâ²T¤Ý …{~¾SŒ«&©E›ëbÈå# Ü€³·°Ý‚°þ𽃑ÒN'«sw(AŠª­‚“yÉ`a4H¾jæCôLjô‰NrÓw-òŸRRHz@ƒqžàö š`åÓŒ£\ÀM,´¤Z#ý#ƒàŽˆR+Usw…ÅÁá7%zvÃJÅ ,)¬=Ýób@þ•À]é­háúÝ ‰Ë÷ÕïoŠŒr­àÁÁ<5pÊZëUưȜ—[i&&¯JM=/E–oÀÍÈ‚ÇñÆ¥ÑKKgíÙ–uìZj’A'&ôñõµó›ô)K1ô YeŠÚHуt¡•Ôàã8à™Í/œ±Nuô0”ªk¤å˳øaðcÝ~§NQè¡^•$¦”j¤,W¡CñW’§ùØ:m.”‡_©Vƒ>#~òFÕ@IDQÏÞJ%ƒ.L`Hhºp‡šsLv]2gþèäļp(ÌQ.!<ß9¢é¶CGî{ÿã,PýAÂIîtî¶ÄÀB†"(ãbÑ–º8>š¿¾±Pµ£ñ¢FO¬( è‹#: ŽÝ¤‹°0q‚V;@$•¹PJ®€8^«€¯BÕ†½,) ¥U¢w*P1ŽÃÙÊäDy¯Qo.ÁÅÚ0:`EÒY“†Y%ùû ¬v¼ÁZƒ’äŠÙ¤(Ò8 !¢â¦j$"PÌ“ï QüèYe£ÝÍð/ÿ¢2Å ëáOPiÞ"•±> šMž8[mmÌÀÉa;ŒϨÙDŸ3b¼¤™ "³É xæ‹•’’F0ëìÁ‚Á45ÃŽBH aWí¯Ë²ÀÚ ìaL›ÀD*¨§‚†.T<Š|R¯Ó°ƒ—F˜ ÝNº|ßs¯?Øá¢Û`M·Q±)±›¡m®Ž*I 6eg‚‡®­lžŠ3Ôõ}°ŸÓB6V1ëö ¶ =àZþid­†ƒèEEÌ3O½˜œ+ÚÙÆ¾· ârãñ€R”ÑxœfJS97T¬zvƒHˆÅþÉb÷{ÞµR»2`åNë#cŽªÂ-C))£èQA ÍJjLU`0‰á*æ(Q9ýH±ò#Kc8áf¡næ[AsIĆ.§;:މ•a߯£:®5¬ÍÐ.àö¡5^œŒˆ„ýk,CT:€MƸՅúVAŠÞ䂈ÇÕ4Tˆ1ºÒc¶¼ƒÙ{r@‚::ÝÇåS‚wõ9~·íðAºJ1€I\~Ä)X…¢ÃÀ¬PÃX£ršÓ|#¨Už¤7c¬ ‘ˆéãÛ¼kÊÑ­l gp“µ±÷`Oœ%‚[˜¤×y‡Ú)܈w ¿6W7­Ç¢^lÉÀ²pQ=,ã«ÐÎÃùM±"…±jP­å@¢®ÎynbåÊ.z?. ¸7¾xbóQ¨t QšTÌѦ–Êûƒ˜ÅUgûO«rBv!Ä,ºÒ*‹Ífü Wu\UF‡í0¸ª0ãËO;Ù$8 -L¥Pp, Eʦ°5÷—”’ 8A·ËÑ¢Ú8¥èpæ8iRlL”´ÊK­u° À ÒÒUꆀÎfëÄ»„öÂ5hPx¡²€:û©ßbÖvp°šH´ 躕¡8F…JtPÞ=}# Ø!¯"à P–v¿| D¸D‚Â.ý±Ç´ˆ°vè—Â0G&È<V®D¼ƒe’tÆí 9ïGÌÐæÅ%w|Ž:QZ=ôŠ!ññ•YÂx8&z¾®ÔnßÑ8Ã(â“`RÅqPD/#]#õ9/ï¨r•(¡ðu2G—Å¿ŽEé ]ˆ"W@ÉsXý׬PÒù Oö0ŽP õâV÷WC# ¯IãJK‹YÄÆv9Œ ãÓQâêÙñ3>‹d9Ú ¥ˆ®ÎJýŽ”À¼b N 5¨ª}ñIäïe89÷Y[lÿâ*+ªN,.b?R$Ò2hBÉ£/ÀMDfH€‰,71aøÒk‰FùÕ£T“ƒÚÈ»f ~ƒt¹Ž*ëœDõ©]gFׂ‘xÝ).¾¶ ÀÔ¯Ô{Õ†¸³}¤TRÁ].4rf:„­‹òó™ýtQK=ñ‘\kºeî í&²¤"êC™,œÑ•B†ŒE§beG!l¶ŠáâyZj˸šB,ñòB %?®éƒ–ª°µ˜žS ìsd)hÙæ™¡hÇW! Hø²ZäF#ˆABüðFr\…QpMŒßIÀÃeµO¨é„K[OÓ•²²AN»¥–—dPŒÔ0‚‰Ïô@É2ã_ЈA`­x¦Î±™‚TÔ2© º^€¤UÒ™Åä &+¬ÖïÁËd„¹µº×b5ENÔàͪ!WU…«!5`áŒmèOcBB]TL^Îܤ…:&½!ÆÑ‡Œ8*]OÚDgk`ÿÛÚiÅü˜ª%^drÛ2$ªÃ {(“<«ó"Õ‘YÓÊ Ê¥»C°"Jª†Ù*$jãÏb=€t‡u…q2ãveLja˜¸˜6Ыv;s.:û“A"S‹š–þǽ°|Žñ÷á:='\—–š~ aê­ wE!ÈRêÁË!E:ù!î:uŠc?Îdîý’ šbƒ›‡?ËUEµÑñ$Û(°B67JJ‘à À ó³‹Ñ ´òg+óäD%Â,Õ9Þá¸D.¾¸Ï·cN¢ÁÙ…–Òáû1IÀþºÈ.PM¨P rÈ&P± Þ!ŠbéÚ.ÖGýSøòÖ³’™Û îè×qs¢w ˆ"× SJ1e¤B³ù^p+¬ #Ì`’ )˜lUHIkšx.º¸âN¼GbÐaÑ=ZåD‚VF Æ!Cƒ$S@RVF0îLÀì0ÛéƵ<ÁÖyÍgH†ÑDQ,èzÊtŒ ™ðZ3äUá³F{ *ØÜôžÙÞv!ËŽ½ P¶ˆ l±, ‡5g‡Ø•#SBj¸¹i¨k$76ƒ6ƒQìAÑ0©ÓùJÑQºb5…RE&èX¸Nƒ‹5j‰€]2doSDTb)np˜0®Åì#6\Á °(F™>7'‰hζH  `ÀHÂKEHp¾q2t+ðBa»ðIaô¥›ö^‚Èzâ¿S~ä¢Ò±C A'F}Bb§ÂUÎZçD#0xÕésìȤ·*¶Èžbg4_,nøcúU«Ú[æ•´+˜³]ìzRNöôÞ ç N…#¥bû-k1T¢/MdPX,£õ¹Hßì$7.PØÀPBB2#R³@>ýpÐTWŽ˜ýš=‡Ó—ÀI²`Ëc_Ð#)Å~èÆqF¦át<Ÿ–,ÄpüB9X¨ ¬L@‡oæ°ãýû:ÓÍ&ãsÐc {‘”ag§øpPÁÂdA¢¥|É-JR „|cˆÄ^âÕˆƒ+±‡O¸†XMA¬´"¥Až˜ÒMèÌdGp(ä‰ìà0lËPˆÉ‚„“#ie2§|2mK¤vÐ'‘µÓ²ì€”bäÒµû„-—DvÍy`Æ*ø9É`YÉß\W?Yߌ[H73ÎKƒa}`¯}1C—ð’Æe¹üÿ,âM¯¦ËFÎø—‡¢çGI\?7¬.eÔâì”gâ/ʤÐuW 3ûD&ûŸ³;¼wbR"øU…Å”J¾lvBñŸG-B:µÙ·dˆÒà%ÖÁ ¤DÄ „D 6A,HÆ`i\¤²°TõøZç[ª`/J'É>é»À ogr€)b6qH¨Ü×·}XÑOA„QYD(4X¹ ÏZI“î¬hWì›@€çª¦à,©Ö †44%¸,¿"¢,: ×GÊõ…޶£‰`õ€GrS„Ðüî˜â¦39PÂC¡jÀñ¢h„Ô€ôIrѦ–#Щ¢¨ èpˆ(!ÆÝ9UMmNÏ«é21€'ÍA dŒ¦ßË’5l»wF…žJêÒ; @–†% i›”Ûi¯UJz–§>ÏHRO¡œâI“pE¿…ÜJ2-¡¥X¨„8«„ˆUûp÷0Z\‚qð¡©’.‰LÔÆs±ÏË&ÚfJäÐãÇÅh%äƒ3 |P“ä?åN nP$ûNÝ»ÜéZDrû%“Ì›3ìúb.a_¾¤"^ATeú޵~î&’±% @üj’½Ðo[†½)%BÚ´ËÇYr‰1éš<¥ :pœÕ@&)ì8à›bŠcÅ­ôêOK 6L\*¢&S‹÷(ƒÒŽ4ê5xOH ¼3¶0€6dP}–he¼eÈGç,š«ÖOºº+œŽsÔ£˜ƒE| FQ ã‚îm‘Å ¯ØèÑïR¢ö$Ò² Ø4×Ü3ßn…(ß80»&/¸}[Bà¬-Єr6ðÎD‚JÇÛS¤wâ+Óé—yÊ@à!¯ ‘Ñ ·S¬lz¶ö¶‚c èfáUÈ(‹bÆk«Y9µ¯×z]•eÂoK$@‰kYÅàK»¡u'@Hâª÷nA9GóÔ¡†ï[⮟qÍËæ±Aû Ÿ±ÌzÉ4«-q\:®Â¼<*Ê)Œäïð¤&S+R¯£­ë°Ê2à|û,Faªy^ $ú…ÃÀ èõ¢õêÜñA’‚Fê@Id‰3 h³PÂÏ/§¬'©hx¦€lõC@hÿ9LÒX.zk€Èsz£PeÛ—E"¶%E¤dâ9ÔRf sªþ{?Ðti‘Kpâ1ßB6ŒÌTº¶Œš ;EN{&!1ð¢œU:¶•ï7 ¼”0$1à•‹Âm@=c|Ãà`W0e™µ€H)ö†¥¸2`ª1’så3§mä+tB Ò¦kÆï &0r Ö\/Qç¥äŸ¤¾ÊI-r?‹ê#¸Á æ¦=ô49 »%l8Äj:3ßóM gh€h"ûíoˆô¢êp›íOkªàP8»ÀËòØ/Þƒàe1G„]x¢¶û;ΠWa¢G|÷¢!ê¸4mLQ\ßÙдT¾(PB¢ŒÙtV³@Xh$O&áh@±§§(©ÅÎCªì{“JX @S§l1r¬ÕG®ÁQ€8Ù(Ṛ(DÊŠWN¸(…#ä!=h@ŒDVúf( ™ÍN÷0ÏÑiÎ6æ#il{•KUdmqÍ)0¥ ØcOª£3Û G‰F*¥*r7Ò´ýGx?%¡Øq ¸ÌZ¥¹J@(£}úwé˜ì¹þ!鋿ÁFc¼öAŽD! ‚µtKA#Œ–èáªÌ-­¢™/Ù¢êÐÂPÂ,²Å "Ë,PÂ,²Å "Ë,PÂ,²Å-àØ‚ ‚ ‚ ‚ ‚ ‚v  þ" ‚ ‚ ‚ ‚ ‚ ‚bâ?àbâ?à ‚ ‚ ‚ ‚ ‚ Ÿ6~¶rõ”0‹,°@ qÒ¦1S󎈲ËÏ«y94Ž(ü$!,{ þF”ÐE¤ïÆrQ<Òƒ$Q¬ÏˆÏ«x94Ž(ü#`­‹3ààmZyÑÙ0#·pO4 ÉA«3â–XÏ«y94Ž(ü,¥ÙæDë&»ÙL½R‚äO4 ÉA«3ã–3«/ÍvžÃ eÀPž0¾ËEü©uÜò ‚gwñqš  ¨P°#½êËó]§°ÂÙp'Œ/²Æ@oC/ ÏäøÂ\5C 1¢Lè½B…éeY~k´ö[.„ñ…öXÂ(ŽòÏ·_ëcœØ­ÈÙÿÛoh½B…éc²ËE–XÂ,²Æe–0‹,±„YeŒ¦H¸©àÖ^wº7ê.uÿ òZqYcF\8´ïµôBŒ D)õ‹„ðqYcFm¹N—ä+hI¹q\)7µ¾ªâ[Ê…hE ;ÚüÃÑuªJ®´77 3Ãp,4`|èÕïÉ>›¶N|eÎO‚DMãCÖ—,w;½õž@/|gàˆþlôoÕ9|D¤¼ˆé/. jã#:ïÉ¢>ྦÍ×fËwhoÄ5‚à]‰@$s®Ñù~ ,à7ø… r°PUÓ&»Z d‹+ª ‡ƒä…¡µ»½Ò À‚qyZ“6dÁLB |JÆ5ÁƒÑU”JÍ åèR˜¼ ÏÐKM¿”ñÑ;'ª­CÖ0ù0Cé;> S¥‚›Sã¤&À‰Ã6ÏJ8׉/F±šîvyãMq¥ÓƒJ¡QŽ¡îŠFÜÜY?É n·±ú¼ ö""ÒßK9¹Ä9úá³<8+v;sp:ÖÔD `h@; \pÊØ-Œ å—ï£!6!ã“&ð©ÉÇé¦0²:¼ È¿ymYj–m¶!lEðu›Å-oQˆ=šØb0'y »3"loä)&ڊȧ¤Ú›Ç^?€?±ŽÜ¸éð‚)d—2kxÇúšÝ^à–2á,B‰ÌOm²¹¡ÏÙÊm«Â xK¿ ˆN%käìI5(–Aî)\Úу¦~î?ݯËνc&MŽ–ÒĈ"çŒ7”¹å„«¶ˆVmö´aJÉxQv]+÷FgÊ´w !Aºû;À©.Å™Ÿ<צK'åé¹UN%´#÷(ÿXRýoˆ L¶Tõëœ"°Ä/ý |—O­'¤FìI1J ¼ALo´1½Ëw„ªŽ']ßUä×9ñ7aL,¥Ãâ} œ`ØJv,é,¶~‰‰†Rlãñh̯ ÷¤ÊGj3V¦íD–»µ–1äÏZÐÁGö|õ°³&’™›ÆP „‹í`ë„j,ÔÓÒ…ZWMaЦ l•ho—e$aâºí1`ró@7ÅC:Ûa¹¤–xa+e"8*ÖŽ²}½m‹ñkPŒC9mú¸²7Á„f$ÁÎÛcè÷QÖQ/€¶ˆ*`Ô)”í~4ÀC@ǬXã{bÁÙ‰ü8p4XÐGÚgù¬ø¤7Æq±‡$‰öIõÓU^wݵœs`l£LQ’­leœæ ¢àq}#XgwZØÕ»Úžz[ò€¦(έɩ.¹Q2Q¨ðæ¼Ô~ˆƒ®IJ-7¨vÚêéÄaŠe¤dœYAãàada>¿v¡ÁvMì-/ì›8k‹Bû——ã.½5,OÇð“`Ö¼7¦`ºøÁ0)øŒ÷©_h³ ŸgðÁâêßd’_@|ç`žŸ)¹úÛHŸÁ †Ž¢žPhØN ð;FšJËfË]ÇZ¤'öb ·:Uvì1ËõIWµºŒq(«0R½1¦ãø‹ õ>K‘?Ô@‚qÀäXûL·,%kÞ«¦GEÖÔ_ýK®lòªQ §, €•ðÙ;X ©WÛ%<¯«ýµ3q­œ3E êYeÆ)&Ä$ š»EræºG%ÜjfTwyTë‘4ëÁ‹½è4i ©*—kˆVOE,×B×|"ùD ʱù-Z隀1ù£!äF<¶²“ ÄŒ‰&µ ¥/²^«ùž¦#:vq>:\ý6¥jrþg<¸«à”Õ.š~z<óµ¶lG1@vuÜZöÃÿPæÕJ5"Óg¾¦k…ÎïJÙŠ:Ø9ë*Âæ¤çì%gÔ.Äjp†‰‘Z&€0ƒÀ“tN°Öô$¥V €ò\,2â-ê­"âI”£ÉøMiÓ - ¹â£–Ð8ÉEÄMhaÀYÕ]aQ€Òb¶Ž *ýJåñÜ‹&ÅwxmÀ©Gâ…Ìç†K„Îàs£zK’È Æ(gB¡ébúèé§¹»^Ù,à'l„4ÅÓ#E<ý‹*}ùZâ¥Ný,šž²“Þ\DZ|5ÚŠ0Ý ãÂ5žœP¸_Të‹×³¦§Õ øx«d4…BÀ£ ¤ ½õ@)¦¶ÊFßÕùÀb¡øAˆiã[P), ( %4—r:çPRH‰Óå >R/µ€Ž-6=ˆÙ`7£é6žh*Vì-"F$@*Ö(hszpBÐn@"6X KG“—WZ`B86"eÎÙ–\ÖrŽM•n Ëb­ž •xÜôÉÛ4ãd/ð)Å@ý|PÌ®'V8.äm7¦ðµý©u7ŠdZÙ1A_ìhLù–LÞâG,ǧ¸Á|íIUJoå/…®Ç@õ§dZÉÍ£¦øJT QÅÙtJBT+Ê@ŽXh–gšñÖh¥À"þR¢S5±bBˆ( C_p-#¸*#Õ Þel }X×B¦Î„2&¤µr«Û ˆ–°À–jS©ƒ_QêE5FؤŽé§À’A‰[Ü)£…¨›P™s×½=9š˜*æá.õ"|m¹”š¨µ[[=FI\Ú31lÀþ( ¢áF3±  #ó[} h¨«µ‰ü§«xØsr©‰?¦æúº"в²«§ ÷‘k¤Ágð©ÄÀÿêÄF*J\4+UžÔI$mÂz†uÄ.³¿˜žÒ UþSí@×#™ ê‹e\0µ W øíêœp©ˆEŽA6ž&ìM`:Aàdƒƒíf  &í  %ço¼Ë> À¶ßù9€´pHëµ5F ¡ ñ›érÿ,¶(Ñ <Ú…ö€U`F)êp1H߬% {V×A€¤cÿ` :4úr²Ü?M"yŠ;¢b‘ d ½Ã:Ó¬3¢±!Ÿ¹ò1áIõËì.ÃÌò×)N  ”¦¶÷„5XøÜˆ¹Ã’´’Zå¢ ð=ò«…™Eébë“j)ا`2$…¡…ÁiYÝ[w~ð3TaGB!u8<¢¶3dïÌ §#3OºkëÆ’ªrbeXŽ‘Õ" ߸ØR ªAÐÆ$ÏQ€7‹w&Pj‚¢Q¬FP p)n `¡EÐJ÷7Ûu$!jºW@âŒßAàú1¥•öQÂ"R+Ñ ‚Ân¡3U›X°:¶¹ɵPÂFêf] ÐQ€}ðx;-WèX§(±ÀI|2@ò›CÖ0  "Ó-8(•¤š°W¦}!¨c=ú6SLôRØEµ†×­®ý‰‘Ì ¹ŒÄA*Š“=¬h(&Iôƒ¶‡‰,>A¨F• < RZ›v4dHd…†Ž×Ô0¶¿u¾„"Å ^ËÀäIH ¥ê?‘F¡IlîÛßSè9c_¸‰U!£U¢ÒÎ.#¡@€0·)@KAÂ÷HÊ’$!èQß@B‡•VõâÍvöÑÀP„5‡U´(%{/+$a8ÿг²ËE–XÂ,²Æe–0‹,±„Yeb#žÀP¡B… (P¡B… (P¡B… ÑŠ À(P¡B… (P¡B… (P¡B…[©—ûÁu­ÔËýàºÂ… (P¡B… (P¡B… (P õ*=Ó*#¿ÿÙ./Doc/Tutorial/ShearCellSetup.jpg0000664000175000017500000037022212176660653016542 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿÂï"ÿÄ  ÿÄ ÿÚ êW倪¤¬ÔR€z‚Š8sÜn){WÐø©Þ*SôWÖsŽÈ´àŸÌ©6ÒËô¢ë7mÍÿjhδ[Teœ³°ëN„¹é­½“ñC¯5¬äR ê (â—kx¥íÿFäe1iOÒ\uÏ_6 ùýùy¤õ]g>í ´Vš£Þv,œÎ’t5›‚Z;T£—ûûa­¨V ê (â”Ò¿úKëœì¦-úê®ã¹ÛÑ/ÏÊf–î––ëíñØÕÄ~ºÝðV“ 9¦ßí3 ÅšùÜþYu D`Ç”õb©vUHÝÔ’D¦iëÉë®/—:z6Ûïxm¿û]œí½<ËÇX\ÒŸŸØªšÎ”†I}ÊV¼°ÊнAEGdZ¥dí|ÓÝ^Œj>˜Ü^•qfæÉ¦Þ)f’k5bþ‰yÓÍBíÈÔ8ž_]ìÛ9Ù¿Î%Ù'…»/­Ølš­©Ìó svºÂØMäãö][è·æ[ass=øÅq‹+3Î:%±•í¨ÁÕ÷åùÃìFncm"ßÍ–MGéõÇ “'__˜ÏÒåceÄž/PQ@r—p[RÿR<–¿Ô¹ÐØ]D‰é“œ•‘Ñz‡ÛÕþ³ò¿,ŒŸýÝù´bOüà õ6Ls‰ƒÔX¿Ýsý«ô÷ì-¶óž6u,ØÅ®úYÎëmÏÿºñbÐ:^ŠÊû×YþoÓúØZäÚ¹ÓÝòEïnxøl­qv&Ö7,p€z‚Š3pju9­^Óbi¶íúiTÒëv…Ì[q]ÞiÞâVÐ¥ÐÏÎ÷J9Ûêšlf/Ãâë¡ü`W,»ˆô'E´*Ðñ}ñiµ5fLã×°™%Ð_Æéh?·ØêËPlµ–Îf¹õzO;ôÊÒ>ÎrT–cQäi[Zµþ¦VJ”Þq:OÍ}¤‰³fp·À<óÙí±jV½úG€~ƒóŸŸ^¼ÈávDq/PQ@™»±9å9Ssngôiæö›ù¶ºŒÞ<Öó¶ ëŽIu²0IÝÖ…·bxc»%êzl ]¶ØŽ–%?Jä'›Q;v¥ËÍÇŠÇd®=$˜b³ËôÐÿ¬Ý&‹|Þ¥œãdÙUd·¢#Álõïb±öL›52yåí¶»/¾Ñ,wIƨeÖ¼Ë2ø_‚ŽŒéõ&ÐIƒÿ¶¶æ¥Å¹<âî|+÷XxÞø ÔPO»ζ¶fßó‚{’Íèþôc=F×ü¸éµ6ݾT…£{¥œœôÜ餓KãwYѤ±K¿2ÒXlwènbIœ…Nm{bÿ?Ï|ͱcÝZÄ®¶µ§ü¿%ñoÕOU¥ŠŽ+è¾ašü¾¼T#ïÕBöÚ‘¿÷M"%"ÄFv­ZãÛü_OGÛ ‹Öfµ=/_Iç.ŠÍtqw~³Î2S±{]ùêýyFçÖ8ùà^ ¢€Ô]ºRºW>Ùem×XNà)]¿/%ÔÕˆæå,»I¼{ʾȎoBlC^¯Ux¯ö¯û=²Û  ž\ÖÈk½¦ÂÍÇ­Ó-–ˆióÆk.s*E»­6Á˳Qý—u•«Íª À„ÏÅNÛõ4ã ÓJ.צ2Ó¸´·÷øÏÛãØc·u¾åôËÇ®ÿ{‹ry¹vFÕñS玵fgÝÇÀþµëfü›tܰ/PQ@IJk]þŽ!{ý(Oó›ïC¯YN‹y÷i9·ÒôsÈ$Š/*Éõ]X7Ó6|¥Y3¥º;¬üÔ½´ïM[ÞÆ•^ZÍè«£ú)ÚýpØx\>~.E9£¾ÚiîÛÅðÙaÔàjµìîB¢Èn0J¶›O,e#±jðƒ“Y®Þ³lŸìÃÙ€ê (j½éD^þ·åÚã¸Z·´žq߆¯eºOqôWÞù¬ÿÛ‚ÉLžbÒ×|öÝõtš_FÉéE­ÑɈc«YCß”Écq]Ñ}Ä@¡_eÿUO«sƒtµ3¯•ßží9$»uï²ìØ*k’ÝþÕ8%E¦‘†óËýûP錆§º–ÖñóÂO°Åú48u`z‚Š·x{5ÿи\TSm5óc¯Ûqåž•ÎÞÊhiÐoޤA<{L2{&²Ûx·èLâÃþæYŽL09­Šn޳Gc]eâ±æ*ý [QDÕó‘ã~W¦Å×§:ü™ümuöé¢g¦ÄÖ6=µÑ®“ê&ÜlO9/F°va»êžžõ÷”›n1Û€ê (5³dà5¶Âm|£¯å¡ó3Êu<ökŽoÚùùÕ9é®7x$”×ô+•ãà»,S¬…e•èâzvãJÿ®v]™ŒòáºH’Ïâ?)ÔçøÊj,½_Äâ‘õZè¼@ó6×ùŠí{ÎÊÏjôû/ÑD›k}£†ÖæÀÉêê=¼åê^‚OKG‡t@z‚ЉË5ÖMœ…¤ìšcÞù¹ö&y㯦kЦï§ÃÇbÂçãxì(®¾UþËÓP2W¶-ãuÇ»Cü—/ß-)¬†}/j.IößF¯óÛÇC&e³üôØ-n]QËuל-\ë•á­M…òluêç¥|¬`»ô@kßîvªµ×YБ¥Û€^ ¢€9ïÐ$»?2í¤ ½Ãž–Åã¸ixíZãÛàÚáúb§þŒ'ôQïש­‹ELÇåÝuÛ=>}ËU²}ôyÍO¶µf§5)Îí%ôÔ¿FÂÒ›L7F:³ÎÕ™õQ^«+Þ¾cê·Ûœ•ÑN{H½ýŒW±žžåyÖÓeµ“fõ»ÎæÛµ½1´^ÏäûÇPöóÉ=@4û`õ¢›×É=ìm5Ç`<ßBs\ß+޵ü½*çåA¥¾\þÏ ÅDÀöWš–¶á˜ÙV`$ŸÆf<½«á×=4‹sùz{M©Âñ› *'ùn0e$U¬Ÿ_—Ù´ù­t“«üEê—,ù¹s,•S“ô-\·¾|MýyŽÝâö¼óiàÕ ™×®Ë’“Ø5-é&< p¨z‚Ь¬ÕÔüôàº}ο_Ñë_¾ÇÙ=®@ÝýBì1}åUÒå‹/§6-±º[£?^f_<,m—Ö½¾•oýû68¢þ¹Vîj3i¿·×!™eùZkï·]—jzcÁù5)iyk|ÇÍ]\ðÈY\­Ý®ŸÜkûW¶ü¨Ûo*ÛE¤Vî_´à5»dZ÷·Õ|öò>òOQ nÀ½AEóù\õC—Ï¡‰e'8-ählý‚2{¨™Vfñ9_-•‹}ý‹k‡ÎUY½¾>Óê„çY–“—à¤[ ™Ú0 n]ÙÒOdžÔìµÈVÇÇê2À˜Oõ£Qž}ZÍ~|´m>€ôcÀz]]ÿ6¯lV]HbÊz‚Š…½©üçwzÙ7Ò-è÷{é˜É9ÙU6nÂŒÚþ<;%UBɆÁÈq{ p)¿õ!¶¸XÄëÍ­Ë‚ñݵ{nJ&ëÕìu¸±Õ÷Ûsƒ¤z§Ïê3W[9–×|wc0;S£xkp}+¯·Omû™ÎNøoBÌÀ½AE ÉÎ¥TWW„^ÐÞ¾uPù#%¬=>ÑÏeö#Wl +ð³*„{¿¿ä} Ûm˜ÕææïéŽ7o‚À„a§S'þá=}4ON'Í1åfÁþ÷î*J–Ó¬rÛèßLméWhäYª¦¿—ôO릌Ï)©Ö’Dî#õù˳:¬¿ˆ9vôÇÇy&è8½€^ ¢€1ùˆÙƒ˜R½ãÔëkSÙ; 沺iGñö]dÂm¼¤lµ,~«„HÇÑNqÛI6r¶CÜ‹3²ùí‹îmÁÕAçžæÔðÝÆ âo§?*Ó±›gùñÚÝŽÄ&Ý€ê (©íO"½NÖ8+Û Ku-{¼?—Ã_›wõÕÏmF¼kn~m¦ÛÝJ×57C\?œó’g³ÚIógÈsßŸŠ â¿<Ý;•¢›×úú¬Gf,èhžÃ\Ê0]´šÍŽý‘é¶äÝh_@½AEçú£Uv QDR±»‡WwW%ÚÇaØïª¢{ºÝq³¬ 6´”øíU.£ûÀƒ­×]‰ÿRf\Àz‚ŠÖ–ÖË.¥¡Ök~<Õ'·ßÍ·jLG¡Ð Ö˜÷_±lØwbʨ(¤¼DñKÄA/¼DñKÄA/¼D ×@ˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —ˆ‚^" xˆ%â —‹’ÿÄ44!0@ "7#$1356P%`ÿÚÿø Ç ýóm•e¤ýuHâë%uÄß½Xô¾ZååZ<•?( „&ÍãfËQ.ÿ9¢ÎÖ•_ѳÅH°öºt²º¯ú˯ЬzßÏÿeå7ýÌæíǦM±Ã1سǭj7¤V gY*g–}ÅP™­{j/t3Mó­¼f¹C}Kg(‹Ž¹Pòñ œÖö #\Q‚5?¡Xô¿ŸþËÊoû™Í‘Gúé6]ãÍ5u©½ ÐÍÙ)€ª¶oCZwŽã0­Ÿ2óu•ÁF¸vÂK{­×¶¥ª+n«@K¬íåk*¹®ÏQúAûùÿ켦ÿ¹Ÿ½Xô¿ŸþËÊoû™íþB´‹ô.¦˜n«Ú–¹Êtµ×{EÉvÖ›´–6ê£fÚ6|ÿ¯éÖ=ï\«÷Ú9 ±ñ§cÖ²ª_‰gìþB´‹ô.¨˜ Œ©m%¦Úr¢ÖVºë¯ò–¿v¦ŸtÚ¶!v¼°¨× RPAúUAûÙᄘ[õAi2¶,e£ê¨•í`µsq1Ç1œx …Uf¸‡!Ö- ¦ÕÊóîB0ÃŽ F¦¬ÏÓ¬zÑ8Ñ–…SØU›œÿ€ÛU]i0O PûaX´s~±è?EºØªIU¯èYöMøÝ†uGeÜÛÄßø£.{þç‰ü†ªfEp?‘¬1anÝÖkýc×){2ÁGΟpQwS³¶uÑuóbmë]~ ;´^ÛÚnmžm;º&æy_>ÏüƒÆ9ª;ûI ИÃN hȶ­.ÂÛú2x•7éÖ=èî;‹]EËSÑÙËÈ€³¹5Tõ2JÕbÓ 8™ßDz˜DüŠ_·Ró)yOØŠx?RؤajDÙ€W,‡Ró´XâØÀ”¹‚c°—ËÊÐgE Fð½fä¾wo¨ôw¿‹Í­v³†Æö®NµÚBÞû°µò¿5ÑÚd]JËùqµÐ-,W²bˆóV=è½DªÌ«diÒuÔX·ÊNºrVpHW„påÖ=|N¹pc9ýõ ˜OÌIçsø÷¼øÜ”ž²# ùœßlýè'Àž|Ï'¼zù¾¼?©C°©Ü4Úí ×ÜøÜ é©j-hšç±4Õz´è©üˆ…Õê–›¤ë*&Z ¸¸nŒћº‡å¬zÒ x ƒhXu=•Fu•×d’Êã'ß3ׄ’÷¿;߆Uù:*Eâxˆ­¼\ðçEryâbO}s2|q[§W™ dtçpNÍYUgTj4Ú:¯­¹NݼXÏß\èž„3åü}GH’ ß9v ëƒñUåÁp¯?$éåT—6¿ÍXô¥b‰a…Xõ‰¢“‡x¶÷‰ˆºkH@N7ÌÚ%cH*„ë]Óé¶ gG².ê<8Fgðº¬kvwîÿÁû& )fgOcdƒOذ邔yÇÞ>8Ìô×gôW^óFG2Ÿ“¤„ÙSªÖ mÊ-f'ZøŠ®£¦M ¨ÖBG‡_3×…G_½ØLõ¾´]ª;šÖ°þZÇ þ–úª †üØ´´ [&À!u‚¥}‘늾ÑsnkV½Ôk4¶•v-ˆhvt.äo¹jwеkNÁ³_€ÇÛüŒ$Á‡Qi•CYQXSFÄ<̈HØN 2e‡KlÃR‰¯Ù)~"mc®åuÝR<^±“ùeP±HqdHÓÆW2'®eŸcI‰ýó>‰hÍïŸ;Ä©Hj;ÊUzX¤áÖ‰æÄ°¦²Áõ«YÞ)P!Cb³O Ž4¥~S >emH^µ½åw[ù+ƒú[«ýYwâ­E\³µb‹»© ©]ì ×],b2ÖÛ¢Û[°k”…LÜ«,°n~Ç#¿ã¹›^™ ¾Ó€˜¦;‹j¶ß~_FgI‹%/SöBìÃÇçq”ãI4`ÚöÃþW<ᓯ‹×Å Ù qaá‡4dbO}rÈ*`Ê¡ÌW_A®Hù"áOÜ'"¬­rarà Ž2†Ãº-n°°¹\–ÊäÃoœ~›ÿ#\-í…ŠÅ<ùŸ¶„0Ï­%cÐNÕ,í¦PìuŠ¥‹Uâ¥kb_S«)-²O£!¦ jå¡-«VSí¼îy—±k`°¾‡]Ýkþïw±­èâgáÕ}†P:Í©†‰xLÂQòÚðT¶ÄW\讼''ĨˆçÇûO7úQW53º…¸ú¢Gzí!ý³nÜt}Z ¥“sm”ÊZg!FQáÏžë•‹SúðÒe!/Ì )áÍ{w5ÆÈ¤ãK+;ëŸ9ÍMaV­~JÇ öÚî7ì6?×;«ehé:8¶Vä`-kÔÕ¾ƒÂÓY‘›WÈÐÆ¶ðS-˜EÆ¢dz\¨|-µY bÑb¸ù§’#~½Þˆû0–\sRi™òˆJbdR”Ƭ¥ê3ú9e{3UgG/SŸÌ÷Ïdï»ëöŠ^¦–0ð`8¥b°ˆàÁ x-v¦=Y¢åŽ8KðfŠ:éFR•«Nºë yܼ.Qò+#÷E“CßêÙ®jì‡üµAí·/|Ë~[WÙèïC^ ³y®:Æüпøº÷ô†é¬¡¯ëU«Áµo%¡¨ná–ÄÇ^YÈ$ÿãÇ×ë‚׎´l>ËÉêïú;ì9¸|À뤲´4rTOsÃ{#¶~׫Yb¨ë%‚gÓ© #;Àš‚üÃ","ÅMØÇªeu§ȱÄ$?¯ Ý8ËÛc”ˆ‰ó®±ÈhMðçÎõà1xöCÙ>'P‘áÖuÎÉë©gfh6½Øò±,#š9ºðTúT-àž ü•Aíµk‡íî¹ê·¯²kâتtÑ9 Z=F~:F(¨[™õÝ^Å®O6Ì£Q`‰n¦r:ðó õËvéQüªÀ¹o³qSðQqO[GÛ”º«Mm®a¡ãJ-¸2,Q¦,®Ëâ:ÍÎÍÛú-æ½Ì)–û»†õ3Ã8‡DÐŒ…÷E™™ðüÏ p_[XyÈ¥TbŠûiè†AÙ Ä>ÊÛüp‰N&°,޼^G¬Ž&@f¨®¦ï®|Ï46¸d¨‡»^–“¬»À"c?ˆƒžÈðEXä¬zÌÙ:G0´õÚé„ÚÚôÒ,S‡Ý’ ÃÅŽfQxü¬lñÏï—>ÕVÛ]Ãe«ª¡Y®ïK¶ƒn ´'\GXÅó_mL‘]¡ÚþÈ™‡øÐrQtËå ÙÚÏy " j7ÕLeÔûÙã¦}tÚ:û¼0„8ðâ‘O²4[l¢Z~jÇ ü–«5„U$) ’†x¯,ÝrK>4…¦³;wShèàÛßé¡ùÇ %DT$x“^²$rc$Zò¶'ÿ­p£¶£06ûnaÙ*¾_˜#Ç2…© ÍÀÐ ÝvÅ08¸Zlq·³Y¾Ÿó|rŽMßn-Zóõë6»Þ.Äâ†tÝ~É1E;À®úçÎp=ü¢Ÿ®e?ÛXkŠ…özÒ½]O3óÖ=ä·÷æ·®f«Ÿ·kµxîß ‘ÌœDÀŠÿuÅÒüùY™˜Õ/^ul#¦†S7ƒÁ«­¬,ž¸Œž—SÅœrƒ™ã–5ªŽ*e¢óíq‘É'ûT1ùb;ºè£½ù¡7¯ -±Õ]x܆ôRÖD"ë:Ü­äï1›ÌŽû,0¨‡ë¬;ë[íлüÕAù ÿw¹¬;Ç®ý¿È‘fÍ‹ }Õk›=/¨".b_«­×: ¸7»ˆ±¸ÿ¥Ð¥·´Øu:õuž÷× Éó UX»Ëá­…\L1÷Mî_˜ŒÞúçÍç'z Ä+ë{3MQFé¸:ΗV³9_̬e&r(ÏŸV„ÜzÄÉ¡"(©°šeŠ·SP…xc}q-˜X?5cÐ~Kö=¥sÇ9OM²ª}n&õìÞõ»CÌ"×Jà™s×t¬ Ô±²Ë?…‡}1xÇÞcX¸#‹ÈUE—À=9›§Õ@“£¹IËe.ˆk5ÑêsâQL6× l~n:¦¼§‚3ê,j?)NoS‡€Òý°›™MÏããOrÁù«ƒò¿«×íP+F•$~Í…`"¯MìïÜ3*((‹‡Ç|æ²ÖšÙ˜{WP‚²ÆH3‚hgˆÞ¹ó½xEfN=u†$ý‰3ûÅžFw„¸øOq°ùØóY ,cç×XüLzê‡Ü–„¨ "ÚÑÕ|æbä²… ëa0)æµ*«¿ÙÕžÿ=cÐ~ŽÑ¶“NªÊaÌhÀ1=™ARâ^ʼnµï#ƒ°%ž^mšì"®»Ç†üÆ}X‚£€Aû°ØÞŒÑ‚–{²Ј©¨ƒÑ„tؾŠ8ŽŽ”SõÉòŽhæ_62ª¢"¬Š#õÅÞ:½©C³Ìugú„Mw¬¤ŒÎë‚Æ3CK)ÍýÛºƒJýµd4‘OµY¸þäØ/pmXI_4ý…ø«ƒô‘².·ýrc±÷RØ›¥Wæ0Ÿ¬ñá³õù›Œ°W]c‰}xg»ÉOˆ˜nøÕÖÚ:c»¦™æŽšÎÄœÈÇ,Zd® ÓÂ2ã;ÃÁ‹˜n¥2Nò¥¤®ãe[óÚ­ÝMœG‰‹=¯Î þ§´r¼¶¯]˜HðïY]A@Ò¨õôü¶c’ûÇ,UìS,¦6ëðÖ=èÏA±5•U!%,­ ÅÉŸ¶;æ\LëÂlº/¤ÉÅ%ìJ¯Ÿ‚ŽÌÇ%ú˜õ$ìFTÎ$‰² 2·^(¯œCèEV`ŽZTzÒ¯…]\½¤¦:m]‘b³f^À“£*sšN½Þ&a›ÓØLâÆ,K”Ù#ËÇŸéë‡á3¹98‘"H“Xl³%Ж2.QĵØÉ¾ë– ]×òÀ¿|çÛ[Ö»¼\=®¯B¯^-<4;‡–QÒ.ò„¿‚±è?FÙQIuUhÔ·ºÃõ½ÉR‚p ÇÁ‰ƒB£9×—:  ži1#ìQ>ìuðȵ7»ÓÛÔFwxó6?dö† ÜëBÊ,Øß\ìÞ*8…@ÉØ„ÁGÑÊl( .’ÍI_Ve½ÎÖ¤'ÂÛykw^§`eU·EE$}”¶Ð5¶¤­k˜iÁbíX^»ø<îÓyzwÖ W,â8ÓÂÝrü5Aú[GjˆÇŽ_Ù!MŽ 9·í'n+Л»)ÿ©eËââ|ƒ,Í+‡ ?d µ&€Í?m1}ñ|‹$¥¼žuÉOÃ,p^9 ~D‡8Ô­èZUk6¥Oòà ~=bi¸gÁ³ÇÜ;¿xoÿTÅa™×Xœn_* :Â_ž“­U°Jãf¾ÌHEa{´œôªÝt º¿ÃXô¥±'g†Á诶{¤’\R@©4³K” rc“C#×ýê5»¤»OÇ݈þ¡˜“úŸ!äëÃâõׂ,™c¦ª ˆ˜$ 1÷e;á®&VfÝe~°]Žû{€§ÉÆwq÷‘ýçËcpÊ\¦…›²•&¤¢koÍ„æD)úB±ÒX.°Yë\Öóèëï1ÖÀ Xбè?Kmj n}À¬)ÈÆ…bÚ¼2Ù¬!”\õá”ÿ`ŒëEÌLòX¡0æ“ñÉjað™×>s¯ÈêY¡Ï¯ ²Ã¼Q \}Ÿ`Ö¤ÙÃhð>9pð0 ØáNf½y4©ñqñk&´JÀ}cXøw̺ÃÃGÛØWç¬zÓÛ~gú?wÂ\!Ï|ï!‰é‚’»aÈàN-&ŽãÀ¶<-DÐ"ÀØòS-j¢ÂÈ}Ò±Ý&Ñ}sæúðÃà—+Ký³à“ÿ§>ÄMþšÎ¦ H†ø¹*K fädí*Ul³¼u ó}°Ÿ™MÍE›Oò/ç¬zÒxϤ©^9)ÃøÉûdGê^ÉeNˆNnuÂT­~ÉaõŸZØðÆåmœ"Ï‚E©DÐ?•ë)3‡Oõ'!×6óá§îw æ2¢v©g0xŸß#›æd(ðŽr]݆ܭíw5°ä05@­ZÊ"|9œÈÞë’Ž›óÖ=éY'$d¶z:‹©ìƒj„¸„lJñeëÝêo³0—”{l”qfÝÙôKHmv×—c/SH ³ëÀp‰ ¦ÔwTPKÒ±ž!¤2,q÷g °JÍb9,¯Opl&uá9g€ 2ÊZ;µ”ìA ´(|àÝÚ½‡ª™4‚ƒóÖ=é\:÷"¡”§ŠÎ*ÖsO‰ŠKèî¼1+¬æˆŒ| .Hój yWØéÖk{çö³õMi»>Âi]×¥t']Ã|=ÌBŸ(ìhI§Z"#™OÅøÃÓáWÕƆث·ê‡TbɹÙy•Û^¼ÀñsV˜_/ö[OH»=ÛoЬzÒÙñÍä+ãîd×Ç 1µžÇ¯‘Ë•3@¨u·IÔ¡®Ì®Æ R’¾I!RõØä`zî»'#òFJÝsn° ¦mŠÛ¸VâÑ#³tÇx§˜œÌˆÍï®óí (’¦g‡Ã×[pøæÞWò]ó3‰á=fËeî%ß ó&¢k‹9 ,ÿ¡Xô¤ÑhÎX—9¥±†ÀA9¨A`k7^h˹¤Æ8šXŠó 0çe{¥®º&M¬™)Ë¿§Ù¯qÓŸUu³[7,·4Š×a’6?Êç2í ¤©ÝDš­ŽL¬½ŒÖ~~a2:-Ε[cºšO²1Ú#Zë¦7ëÃÅõÇN*'ÌïÍu;ŽºÌµ{ Ö¢Ú6¨sZ·æ¬zÔbÕP²«Yã6á^sÚx>u *%6&µôjeQ…å¤caO¤ ey=jÇBl¢òÆùñþsµzªTÔ¶iõ‚.[!ÝÚnú†X£/0²щa<‹'?úï™å7SË|÷úë„IE¯—°Æn¼)Ù,úÛóÖ=ì2×Ã+˜ÖŠ’Ý†+Zن钶£´gðû¶ºØ€î¸“XÑ4˜¯MbªVî½[5kjèØ´ûkê$¹çm£oX@žJÖ2>ÒKŽx‰Ÿp÷oöYžP%ë?m_!Å—óÖ=ì”(¦Áµƒ :°´wýÃWµf‡¼Y=Î$µÝöäY<¦“¯Úî9Tz¾£€$5ÚÉ‘âhL‰Ëëœ}…‰í «jV*å÷ô’­_žµ\÷mg¹Tø?ÍXô¸ñëè4´›^ ×ëdZÕÇí<â•›hþ"ã0÷[|›þë¬ €¶ù`µaîJ×'DËQJó>œª{°³ÖØ$@%k^w³ö¶&æá]DÊR:&ç‡}i—RyüÕAýìŒÍm;¢wù­á«VÒUMP wÛ²^WöJÉ?ô–(§ˆQ íJZ×kì¸uŒ¶X}ÑEhÌFVóàWPЭZþÕ@ºÓÃlÛ?6:ÐaXZÒA¦ViUÛãúx =fH›eeÕ®×…?´E5„¬ÿ5cÐ~¿ìþ}œo™;ö3N©ÔÇk¯pM¯ù¹¤áÞ>bú}N¢.[n©¬äŠJ··e\¾ƒ¨/Õö¶áT{¸ÖAÿ6׺×°«´áDÚ*¥xÏj* ½÷oá¶/c+OXM´³w>ÖKƒÖ[h)é:ýÔ—ºIÚD}šò½Å–Î3ög†2c«Ûf¶oÁcE‰P”›ôx…C­ÓCðXÒEÚ…ý*[ùëƒú>§­/øê‹Ÿ_ÒM=R)È`ˆ>Ýö¤æzúµiIkI³.kîÚòÈÅ'zI¨¤GKÜ¿ùL*†Èòío:Ù¥6M‰ÈeÜ9FÌ×XcþT+Õk^úï^{,úÅ«•IYºX Â5Î;UC¹±wøí•ÿ¨•@%ôˆ)ÌÇœÏXô ÇHêÆ¦­H¡:è´Þ³„Ǥ¯äs[K`‘Þ© XXõH©õZËVP³¯É©5ܪÔÕ‘">…rª´šÍ$nzÊÒÂίUÒ–ËÿO߬zÑ»^ŧq†ÓµÖ#ŠHæú¶¹ù]ãÿXô£°hfZå>óµhÃ^Ç á´#Y­öœ­Ûï!Úl´ª„ÊkŸJ™™ûß=QuKxÿñ«ƒônÕ fNkŠæºðˆ±6Zú]ÍÕÚz]Ò·h†—`Y¿»Ql¢Yv% ônÄÿãV=é—[JsÏþecÐy ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^y ^"€ÄÿÄM  !"1AQa#2qB‘03@Rbr¡±ÁðCÑ $%4‚7sƒñPScu’³¶ÄáÿÚ?ü½‰è/µ‘û¿öàÇOOUô–"©‚ˆÿoFáÏJ™Ž[ŽÆ×}?n½ÙOôGâù ÝÔ0J‘î|%†’ž9þ!Ý*qtŒ2ÝISc¨$t;. M#äR jª§ £2ÒÓËPȤ† \E€l[å‹[<ìé&š§F1¥<0I4²GÖ\¢üs*“Ž2(Y๸*­MBÎ e5‘Ø,нT À· ¬±Ú]\Çkqr°áOOJi¥öȦvé¢;¸¨‘! Ù=p*A [ôf-TÔøŒO†¸jÆKZ'3ñ¢…naˆÉ*¡¥!Nc)èÞº7 >¯Uœ:dɉ•8eÎ [œµjϯ*5%KRú㉳Iãƒþ‘ø.Þpÿä;×ÿ×Ûð„ÿ¹ÿÿáî_ÿ#Üû+bz+¬Œ¬#¤ŠRDu:tfFÁ; ,¿@H -ÌŽ%†JiŒ×š@ÔóMšR-#0´–pË’âÄ#Ž$¾¼5ޮӉ:––jx„Ï!wxÑ!„er!ÚA¤Œð¸apTÁK"­Š´p£2Èq.ˈåÛ‡ ‹¯8›¶|ïÆ19ÆÁ]*K±„‹1˜Ê¬x0͙ىgšžwè2šžŠJkdŒ£Œ$Jc‚‘ dgçes£ jå¸ú²v¨’#{ŽLÅ£µ¤ HëqúOà¹á ÓâGñ|;ÃsTnè7em U$5®wµ%UKB!JÞÐ#Ä’‘ãŸ#O*£ˆ¥‘Õ”}/ø~³Å?G'ÜtPÓÕUÓÑJ³ï*‘GCtÒ‡xÔISTÊËkOI)â8À5³dKºÖÓ :ºŠUª¥­ò´^ÕDòII1CbôòÉ-,W¾2p¸æBÈU'üÌ?½ýÔ—4‰0_hh·MMDm-IJË%eRÌDÌ™L|Î!¹l–nE5ÌŸ‹ùŽ'†jŽøŽUþU%5TYåi]YŒ”ÌÐ1ú¡q#Ùê+¡†I«öjjÉiKÈÒWŠxjQéì­¼8cs,2%ã³d¯N$o„ ¸Œ©$CW1L¹Žf|´ÄÆ?ЕYÙQÝ‚¢(,ÌÌlªª5,N€ IÐm]A[»*d¢Þ4•Uq`d§©‰¡™ˆ$BÈà0Œ¬§ºGûÓÔT±Jx&¨uRå!å`€€Xª!Aeº\ÜlA‚ ؃¡uv#o ø›~xG{Sï¿o÷nð§:K ºK ½=L-xª©¥Äq)çG‰ì \•HúDúnñÒ55>î®’ Óº"ŠhÝ{¨Í>ð«@ ÕV´’<Ó'gOHòz`#8ËP†¥¶éÓM‡-±åÆØÛK[¥­Òݶ°ûÛ#êÖ¶_½bEúØíÜê,p:ØÂài·r{ž§¹ùžÿ¡îÊJŠýãEGJñÅQSU PË+˜ãŠFpYeHþ6*ŽöS‚;YNíÜ;£sWKY½÷¥föñr¬f‡~Äd‰!H# EH¹C4h²KO+O²I‹´bœµ†þÝÞ®µ›ÄM\ÔÖÝÕÒø^ƒØÆîE`é_WÃ¥«G+«É]ÃJl£LdË5Ýžð~ö¢i¼/¾ªwuµ™x‚ª÷‚ÇŠe3?¹™b[ÒA‚4°´jÒÇ%¼7¸ýº áJþ*о8Í6ò§Š¹bÝ(öQD”Œ#¦ŸŠ×ö©dE¨Ž8€ž-¼)I¸·vÑSÓFUL¬Š8Õ(üåLÆòT>¶ +1Uå\VÃo¤/Ðø®DŸpQÒRoÙ'C5@sOMQ ’É\$ ñ¯:ÉF¡í‡½åA½|¼7'ý––·Âû£}î­ÉÃRw]’ye“‡o_CÃ×S´¿ï3 ëK$ïRª™Ï5oÑÕrxŽ/ QÁšM/‡é=ô¨Â $ÝqDbjvœ«š*W—§½§ñcÚÂ> ñ>ðOUn˜‹ £§og¡”õSÓÓà²LAµÃÝlÒ¤f:ú$Ý3©ðzµ=|’Ån·ž?a•YÂË4RT8zV…Í(âÉÇÀ³y_ôU¿·ðÝï·¥M×]T”òo]ß7´Ã (ò˜Ú9’žt‘Ò&XžHB«Ä$…;Ãè~“xï ðžõ?‹Þ?ø„»Ñ–W¥dX‚¼š(ý©êOÚ°,N¼XÝV?ýoß S6òŽxw¾êŒ/ªözŠk”\ª(žYO³€$‚iñše…l[Àž §ñmeBVï?Å”t¨¹:ƳO4²e‚F¬èˆ©ŽrHÙ}TD93ÅYôs¾¡ÞÞš‰é÷…訦Šmä²CN­ RÅ"Ì)d™§¼J¯W|c‡’Ë%4ÐðóŒÄj* ‘*á:²êdŠ/wÄý£etfGFŽ„«#)º²°±VR.7Q·‡þ–k7 ´Õê³gšDª=¡Œ‹oƒ.Ê èËîÈåwø¼?ô¯C¼)eh¤Žš¢ºi Bí5"Ieà‰ É—]KëˆÊâÛPxš`UWAŠ€=-aa°ñ=,t›ÇuΑµÙ˜£UŒš‚᥌YF¹q€§á:ijQ»Ï >ò§•©%xe^&ÈqÍ3ljuG”g¦Y‡|gKQ-T±UGQÁ™iähØ>±£”, ³¿.—$|A¶ÞÞ*âRÄc”Yg…åS©hÅôÂÄ? É!ÀUm5ÉWÆ©ìår7 yI¶¶þ§h¼iºcÞ3ÒîÍç¢æu…¥Q*‰9Þ3¢¡h›+ªdLsÖçmáô¡»(ëé]â¼e.Œ#/,qq0³NÑD¶ œ”16Xíôô£G¼7;n˜'5IK!jfÍ!X&Ž¡\TÃÏ(Ô(Fg¹ ¡Ûè߯(Û’â´’¤’%Fo”« v>ð’O2uý†t°—~M¾ÓØ)#†¦Y@¼.±£)š9„äFc‘/¸9ü'¦ÓÊ»Ç骚¦š£ÃQQîñøMÑOH^iiCê:š@8FéTccÀ‹^V¶Õ~ßž!£¢ˆÔnØhhª hU¥§­ß´)=8DÞ•T±ÃìòOMJØ5C,¥bY!É¥Žh%ðØß>.£¡¡Ž()RŠ«t䬫„PÉSO[, PÏ PÏîÚX`“–#U!‘ß©•g¨žd†:tšieX"¸Š‘ÙÄ1ß^`à—×?$ú¥NcILýØ`»º-æê‡ŸQ ˜.X†‘uÁMönO‹OÍeß8C×áqD‘aÄÇ.,@k,yr1]j}™ÿQ\GXò(ºe±J^äF‘«I$©î–pA¹¸²Ä“dN*b’^:1²Èb"^bd!1c~7|Ùn÷ótT’Ü7À!öÜ%2˜ÕV1 f "Á&ÝðY[4nX+£ttfÔ2’¹#-t—¡Ê4µÜ_-lN=´òî{–9b•*c,eµ ³#Ö÷Ô»R}$ojZEJš4žuR«P³4AØt2Ä#`HêÅCvPMÁÞ5SOYY”ÍZòKQ›±9_'º†çëeÎܦֶ›=D…A§Æ)üÆ\ò:s_–ÜÖdm¶êÞÒnj¥©¦©’m&‰9¢ke ‘Ô\‘ÕÒ÷L˜oïM좚*Ã!I‘iƒÂ“ÙØ³;"‹ä„ˆÍõ m*7Îùž©äÞRÉL#HÊ$¼­ ø™MÏpPœ<”Xmƒqp{}¶’ Îw½õ×S¯ûùí,BÃAo-·uU~ì”ÏATô’c«yJx¤Qr@‘X³`Þþ8Ž’ÕøÚãÞñn÷|ÔTT¼´µ3¹ˆ“2'4}iš%1¬ƒHŽçúA¥Ýû–]â•;Â_oÍçñL–¥üYp3fŠŸ%-yž2c\7o¡ZD”TFÔø{ÄF‹£ÜŒ}ek0:›xãÇÕÛÇySPÉmßQ Î8ùRv<²3óÄœ<<‹«ÉÁ¤Þ Rxep’תµ¼µ±ûÿ$þòIËj’ŠuR*ZfVìÊï½Æ.ôÚozÒ0ÿ8Ò3«|*ic¥M1±“3H’¨b827ù‹)l]j#pLu5µÓI‰³ zê}íLè†Ä U7˜*Ä2eªÀظ⠎C¢D‹ ±2Šê:é$u$Œd40B"¹á/PîÏŠ½¦v2w*VC"!æVnݺÈG#󑥸¦,ÌŒb xö_R,WAlœ/)Ôã˜eQ,G|ع¶ÕÕÜ"»‡FÕãéû¤Üd<ÀºŸ]­M ¦-<€mJèn€ŸM?†Ëš·¾7Žâå®qj;è;½; ¥VË”œAå·OC§]‘r2BÈ ­{n;ºX–íÓMš#å³+Õn|úýßßžÑeß­ô ÷ü×ÿMcTÏ$bž°âsXê½E»“ývˆ,pÉ9g÷£ÕÕ‰Ö¾€yºØý›RC3̼5ý±È}u6ù¯m¦PÇ¿æîG[~±æ·^ƒÈm ¢¸–ü>ºMíÛQÖÀîæ¢WÝ”Ãàp×`ÚYˆÄ è>òF®ÓÔ*(–Bc \™–$£ m—.€Ø7)Ò÷-4Y1È‚âÙë~k ×­úíENDêÝ“R~ΟoO¿ò,q‚¡î¡”RfÛ‹¼¨ `,3Ç+ƦÖîJ‹°’Ѥ"@‹MA"! ñeªÞ Aĉ¹ð€;(ur\IM=£f„³Ý ©±)[KMq )Uº¥ÞjöÖ̪#Œ‹°¾fý—’Iâ]Z(w¤ªNƒþW¼)Õ[¿¿Z5Ô~m‹’b6`\TG ËÄû¡ ±ÌšêÑ#p€î#®ØÎå$‹"YÉ\”«°oYcqÎ¿ðØ •O=Ü«0©BxLp lÒ,‘¾Å­‹#ÑTOê}¦)DQÒ¹]Þ³uEÄ ê¤ ãcÛ×Ïi)ÎGçm‚¤aNFØÈ>©¾ƒý–ÛÞ ë$k|‰±¿Ÿ?]MvãÆ¶r[ÙY?S×/­Û°ûµ%,ŽØ‡Èªpù‡ÍÉ<šœO~öë°exö˜Ø 1¸Ó˜X>eõ²Èøeì§ý|¾Í>íš4N¥C0ä[êßuÀïÖÚ‚ÎÂW¸¸>›a†5EZÙü= :]{òÛ¾£ùlTJ™"ãrn/}G®¶ˆ€PÔûDfè¨È@!~~„Ý-kŸãoÈß•×B®0 á,s'PlVX£u"Äíú÷æÎ4‰³ç8åãF =ˆæ¸·Bnz]}z^8eI4Ö<Š‹¸ør¶€\šöÙ*c.ÓÖ&2/*«t*Äê:ܵ¾DjZ#Ôg›ÝýkéÉÚÃQåÜì⎤ ^ÖsnköôÙ©ÍöwšŠ1^Ä4Ès[ÒöÚžõ$Dâïm÷±õÇçÖ:JÙˆbç ôùéùÈϽІ*xU½) ù’ç§`<¶ÝÑRîêHâÆäb>¼’ wsûÌtÔÙl£@?±eIä Ï«^äõ½Ž¿²;/KvØqUS¤a¯‹Üã|Ëk¡è5è6dŒÚÎr6vqðòSˆ2@õâC6²2²‚†ÖfíÓ{ntÔìDÒÇœ³`£5ŬFª«`Ät&Žm²Ó6bÞc§÷ü>ÍŒy[ˆ¸·68ƒ‹c÷ØßOžÜy¦^¸€ÀÚÇK oßBNºé·³›ìôÂjx˜:¶ f9-ºÜëðòô7=¶1DØÄ’+0ÓKêoÐ\Ç_«}¸‘BL|FC¥Í”k~À–ïÜ|öz¾$YÁŽKœÉíÓàà_å§o=‰G½²¾‚ì@ |õ·^ý¾ýž0¡„l «bzh..47ïbGm©LÑL… |J ‹Ù…Æ„t?ë¯]/âýÚïÂÞQ.AƒSnª·¼Råvdvíîûtܾ!©·vî|8"¥b2\Ã%Ñ"7ÐÝÃf5 ª½ËiªoQ.0å{Žwb .€…·O†ÿ鱚I¢áÌÑ¢ƒu„òÖì.oö{í QÀæ7B§]Y‰Ð2­û~·Ã}ÙS+1³¾,‹`×ó¹¸o¡>ö+a›FÓÍ€Ó³Zý×"oÚÛ$’' ŠÊ©GêUů—1›X_ËÌí— bTć=uÍSM:ZßmÆÌPEå÷—epªÈúXc÷÷ê/"Çg{©`L¢Òå5®Úõ+{ùèt(A) ‡"d©{|E¤éåqò½ÄpO@A7é`GôÚXI;S GF <÷6úžÝöt§’\d´1‹¤Ë!6½AõЃ̶òÒòOO8Š6lº³5†žJ§Ôž¼¨^šf¸LºâÝ>j@ÖÞ¶>ÿ.ÂêFš‚9†K¨î4¸óAá*äË4òÈ0" |†(ŠY@=’Àim˜…RÇ¢‚OÈ ííp™G§:| ?V>|½ú›tò;3GT×åŠßRú[MCãßìØÑ2ÅÇFRBýV[§îŸ3®ÈÖ\ÅÄbCvkb1·ÕÈ·–¶è5;4-–ÙN‘Ù…é`úhnÀeboß[]£ r¦ä6…Aµúü¶yBX@&Ńœ¬~ÌÏOºÛ$P±¾.ÊîmæÂýÈ·ÞO];ç˜$}`FžV;K[+’¥#Á¾%]:¶¬—Ð~ 6OÍE"Gx€<^ne#LTôá#“PmòiÖV´AýT±a{ZçšÞ~Ý—\.ê`\–€.¶_¬[#Þö¸é¦ÒBo¶ï‰…B:OÊÖ?Îßoè.ʨÌßROËËíØÉÌUS†/ÊÞþzØÓ§­®vZ^¥¬»éßûô¶Ù*ÇÁIÃ|ä!²Ðräòí×N–;óˆ¬ h/kÓ¨ôêN—Ù*™šÅ#ï`rÐ_+ýçæv Äy¤ goŒcåu¾&ÿVýzõÖ>FiK.¥[\º‚lÖ·Ø ÛùRiIp½Éè-•”Øö"ù_·]¹Æ©f„bTõéöuÓ¡ ¥âìÌ–$:h‚Ý€¶Ü(ßPËÓ#rÃAsr-®›E9CììS7Y5¾¶³Þö¶ƒKj=uÚX¢VU`áÉá”j-«k[¸æ7ÒÛM޽¨óäp¢á9Mͱ¾¤éå²Hº‰‹#!¯ÆnÂäë–«é{d²Ô¤ÉÂŒ"¾7†G[^ìBŸþœEüí´²Çm,αĂîîlª:j~z|öƒ~nꪔ¤¥‘ê%l‰áÆáT]™ž@‹ˆó\®t$ËÈ‚Dd?X[i Ž&k²’¿UYY»tßïí©Ù’FBK3«]I]<¯ÒÞ]¶1cplE Ðÿ l« CŒªy”[\®AÖÄtÓ¯KÛÏe¤7¹QÕŽŠ™c Ù±ˆ˜,±9ȺôýCå‹Ì¨×M XãQ«4V +Ìö÷·™é{‘n÷Ù 21e×]|ÁõõóÛ—8‡´+Z;se¾¬4еþd›wÙcŠEi(T 1k‹ÓKdo¯@{ìÆç‡v$f²Òö7còÓ]š¨"pR5áƒÕ®\úe¥‡¥º÷Úó{¾ "=Sª‚mÔt&ýn6’±¤ÈMN§€Ýºé|‡pzèE¶’®gÄ5Š¦Š˜¨P:Xi~Þwõé¶í’FåPœ¤Ÿ×V:Ú÷èMûm_µQUÓÚæjyQ|¡Àýcöm5ðÝ-KPêôï"‰ ‘N õ*mð¸gvkEÆÛ›xþ3 Ž ØJ Šp: R×#È:•«•µµÿ-VXSÉ[qØÿM–6â£_ïïÛ)Uò¾¾G§ÊÞ[iD36Öç›õ‚ùØ›ÿ‹CE“#ûX>¶Êÿ--öl‹5C[ˆò#-µbÖ¶&æçK[˜Ÿ™×bM0Æ2}r°p?v÷C~æÌ6U59Çe­‡Aåë³,ÑÆñ–!IQŽz_W#›Ð~Ëí‹ÜylSð6XÏc•ì:ëÓ°N»$EdV·Cü;ÿ·Iª¯å¯÷òØÅ=? ¬œnÖ,öëu=@A6©+5Œkt*H>,l{u±¾·ÓKlÐ-·l%¹èl ¿_ðñƒÄ7lHÖâ½J˜‡ÖåVâèí(ï·‚Ã{-k}C®ÍRî[‰Ì¨S]:Xiýv¤ejh°½‚…³uéÛøz[i7fî™Ì’ÐÒ;ž®Ôñ?3ÏÛ´PÃá QÄŸ«*/Ü Ð7‹ =s¾c­¹t×µõÓå¶ ~ûq£U &LÀëä]>Þ×úüvZ|ƒH*5±ÔÜþ°í§]v( ¹Ô]•”¨UÉm}Ô'@¸=¶÷M„mîäS`qË/>b;_µïo j0`¸q6$õo»§Ü}v²T;¬a¹uÇ‹~—¾7 ~ö¿™ØÓ˜ì+± ¾yš GÌìÑɈŽWÉÅì †`ÕµÉ:ëç°€ƒsÛ]ž²7#UÒì5öòQ¯—úmÊÒ¼l=ä£ ÈW\GŸv¸¶^2ÑDÙ&Žo­´¶ºÝmcòÓKmÀ7éµf*uës|¯k+ý¿¡p–e*ý/å¯ØÝ½®Í»\‰?t{ÙO»i lŽšßlå€.Ín¶@HÓû×hó$Jò)ÍXµùòî§¹ë¶qüRÿÌç̶²õzþÈæ:l°Æð‡u Ž7bMÇÕ¶Ÿ/-u '^hYr:’€_kGŸk÷í¶Œ³+­›]r{ü_qÚÎB®Ë&¡v‰ºµñ b/{z}×;-‰u'¥­¯^ÿeö*^*­{ ‚Ý.I½®G]-é´‘4sæÍŠ•¯þUÆGc~ƒ¹í×cP¼Xø‰"$–E‰½ˆµì<ÅÇÏCoÐÃc¶Yé×Ïf§Š^lÌÞýºë¯Û®ÒPA.?Q††ÃK|´ûþðv›uÉÆN±òsvL²ù›w»UP%>¥¤&Á@]r ~cs`m§SçРY"ŠG¨DŠ•€eB½‘è]ºukßBºl˜;DTH{Çu6î½Àj?‡tŽ£uÈês¸Ñ¾ôÛ^½uÚE§C¼ŠÇK¤Vr†ÄÜå}{Úý6 K4ˆsdÎÿü$vcÓ¶†þW¶ÞÔë ij‰¥-¡Çá¡]@Èý†Àõì/\¦ $ýDùX’NŸ+ã¶hËÄ÷’Ëð8&×Tßšöµ­§N»^Œ&9¤C’´€)ÒöÐëcmTê~ÛíOUÇy†É‡F&ᇟAcé¯Ïô;Û¦×>{\-®š…îy‡aç²¢üö«ª"áz†¶škå×j]Ú±)2‹±<„ÍúÛMoóm-%ZŒJÓCÿQ{– n ÛM|ô×ÏjJ9%vŽÜŸt_/¾ý:›zmUDô©kƒZÄ|¾¶¿•…íÞÛ7þÿ†ÓG®;|¶XH¤_¯ËK޾Ÿ=¥„³\j ú¡ÛwFÑÁÍõšãå`?§Oõý1küöëÜþ×–Ø­ºïÔm•¾®#§K í(IӆïOCæ6;¯¹p~Kþ§ývZjŽ#¬±‘lñ:š7k=–H®ä ’›¶Ó°kÐÿNû$®ŒŽ€*"µ mt¾¦ä\Ýòë­…†›So)dc‘8ŒA“ÓÎã¶¿”¦(®üHø€Á8,qnÙ¾½µ·K5ôü‡‰÷õ/…ü=¾|C[­>çÝÕUî—ÄÌÐDÍ:ýåLÜ:x¿ø’(ÛÃß„Òw‡ë&¨üwøæš¢¦j™·nüF¯¤ <­+%4¦D¯£‰K°† jØéã[P<#øTøCzð©¼W»ë<1Tl­W{×t–é‘x"]áO™±hª1~%M—6ÜÛûrxŠ‘k÷öÝûÞ­þñ»êáªIú’pŒRŽ¡$B ²‚ÿŽÙi§ýWþ›uøSÒþ½v›Bmë·2þÝÇ÷}ªiݘ£Q7MŽ×éÒöÚŸv ‡ ›9@5ÉÀÃÌ_]Gsm“wG Šùgm@µµìzŸŸÏòügÿ þÌŸÞûŸuïíÝSº7Í 6òÝµŠ©SEW– ‚H²ÆYOFŠXãš'[ð\‚“'ûö'Nºu¾Ù[ákënoᵈÒàéöŽŸÀ\ò·®»÷ëù0Þ6—~VÆcð݇…'ü>§-ã½7œ•‹RºÕRÿÁá†)©ZBÑÇS?³ÍAg©Y$ÇuÅ[»ë¡Þï)w‹Ä%>ÃSI»Æé΢ )æ‘)=¢H3Ì”ÑWWW=1hªÖfÞT´µðþ2ÜséUá¸éÕuS¹7®ð£•q;o“â8ž;j« 4ÎV•דoÇàež‘¼SâI jX}?ˆ)(X°ÇÆz=áEU•d2ËŸ,Û«w˜­t2$"Úw8 ’AíMðÍRÈôÐ7ìÏP#ˆ.×E"-O±ñÙe¨§CP9%w–êÐÚÁo ,ÞÎSÚ0ʱˆ‰T”½4Emí·zÖpÇH䢤¦¨Œ+œIªÅƒ‡¿ú\®Í¡¶™©‘ G"Ù©Å®6e\ °Afè‰8@Tu権¹Ä_)]ÏWm7ÅÍïmu÷Ò I.¿æ8Ñßâa¡'ü7¦èÝ{òÐoŠ ]çBÒÅ3ÑWB•4’ɉa3ÓJÄrªÈ©2: ‘H‚ž Xc§¥‚jx— ‚4†Ô}XâŒ*"ú(ô•øe§( r|+Œd…Ž¡sŒ¸V6ñ»ÅùԒ➯„]/H¼K± “å»7 Rx©!¼ÜI2BDFÁÛS7 ’ÿ‹¸–÷\~ uB©”ŽºË»ƒ¡ÀNh%’îJ-@ pØàŠá$°2{’%ö>ö` –ŒUl‘âœLÑð¢I±VSìÓ#—*MÕ(k3ÄÔçvûXa‘Xå3A]<Ž¥¸ÞÐ3dâ?Óz‚§ák^Ì•ÅÇCgUq~ŒªÝ@ý#ÿÄL  !"1#2AQ03@BRaq$Cr 4‚‘¡Áð%b±Ñá567Pcv…’µ¶ñÿÚ?üþ ö0þÏýÁýA =ôç†)ÓòEó¤Ñ¬‰aÁÕÁcÓBèß̲CJ¤R*qšÉhQ×<׬¨d±#Æž¼1ê$³n¥Dfª5«1Wê2‚¥„}Mô ¥õÐ0,ŒèTyG‚Þ¥<óØŽã—:ÄC =AÓ°õG-úÝ2‰ë¿Ô6‡±É¬™#f‚hkJ¨áwÞ9Aˆh7 ¢cˉ«ØG¥dcRé¡<£0N¶R>¦šbê½¼{©qÉØ¢‡º¡H)W¶¥ØKéQI–8Ú8Ä3LØ$¦ ‘% ï©a¡Ò½ÚÔ%Œ©ö“â,S“öÒq(Ì1æ±®À™ªùÙî„Ãu2½õdeËg#õðÿ×ßþÈßéŸÿf~gþçÿæøß »Ý”«Ç":®’Dë,R#gŽDWSûÊ=ü»L¹‰„ʺ4Çf3ÐB¶!†S¬#nš£íc*ttu2ÍfvÇö²Yãæãã8 iß ‘ôÑ$Ëêw”IÓS ×9hU,¡CX³vÍ÷$ãde–ܨŒô´nè¯à»d›8y,Oc=ަÍ$¡b1¶r’Á9/´¡â ’®ò‰ôÂ*ˆêÚ¤ƒ¹Ö½®B¿$W$ìíõÕc–Bò´o']欋ʈB=H!§í:Ô`F¿6JÕ!YÌD‚ñÅþ³þþZ´yÆó,wx¹èÅBÕKâ´Ç‘­bv‹¤“ÓhU‘\#²M±†@Œ#‘ÙJé+†³æ$sÜM9jA=ˆjȳ^œV©Sä*]™ç°U–$WîÃ@q±UË p ¶f®,W´!‘£øŠŒòV”©Áhdxâg?Kèþ¤,¤1³ú5ûÿX©ØûCïâó‘\ÈÕÒ~V¬õé$odÄÄô]úÙá(¦s#ê¨QëüÉNè4Š.Mõõ(Ÿá'òçE‰$·i9•f1•W‰]En1b59‚±Ûoˆ¯ÆÍ4Þ•øSrÍ(­:±Ä1ÅPÙž±K*í±«Ï. ³˜ùo•Õ’ÓħՒ‚(\Ç)>ž¼.Ùm6Šxr”³þ¦¬®6F §Øƒ‘þA {?™Çø¸>{–òß#+ÂÝ–Ø}¤ŒúdL‚ÐÏf9à| á•^6À$d<íý+yŸÎÐCJÛÅÇq±Ç_㺱ÃrÊ^{LîòʽO\5™Ì0‡Y&N»xÿÈÿ¤wì=ǃêÎÞ¬ç9ïœûç>ùûøþ?pºîe[OîìªuöÊ©÷ÇØ¯ì±Ë/ØžýÈö'¹îãìÙ{öðíú›°Uf9 HÉþI$P ý¨ß¾}Mî>ÄcÇ>#yãô®>¥>ÛŸºŽãêû÷öðóNŒs,Ø0(Õ7cüpþ?ðÿœ­¸ÊÆ[*Ò„Á=Çll;ŸbqŸá⽃>ùŒÇ©ç ƒ÷ÎáþÂ~ߨÕòõÎbY…y&ÑPÌGhaBpY ö-–>ÊíìŒG#åÛütòÃ< â±Uy¡jߢzg@c?/,Fr 6@Õ°Ðøè1ddã_áŽÇÅÞ£YîS–nijV‘µ+"7p BÝ91ÜÅ&’€UŠjTø»ÆZ¨µþ&´µþ&bªêÂÌȲ ` V(u?q†–RR¾¸û»þ>¿†â9¨—&¡m*°Ú5¦›'U+1N™ {Wv즹Ï@LèÓã¸ù!ýC_«·.ù˜å$izB„—C%ÀÑ»8 %|u[ pÌáa°ìë§2ùzßÉ=+`¢K ÈJx™Gª<€}.7gFÆ éÎÍÜg?Ãï‘ïà j)R&,ÙN¡=íŽäqíøŸÔq39fýŠÄØý€IÎnøíøýÁàfrs²ÉAØ)Pqß#ìO¶qà 3œ2}Ïñ?ÏóQzþ@¹dU_^®ü”œdM&t´èõؤm‘¹ðŸ3èïž¶¹ô™vuœÂa Ž^¡‹p)‰ÀŠBªÁ‘dÏË’˜¹;Ë$o7$AÚMgü§‹Í$Í1A&gzߺ=ËË$WÔÂXaø™QÕrјëü÷ê Ì>Žþ½q;}ÄD*|Üõù^…}Jþ—â¿%‰kÆS1ˆ„)ÛÔë·ÛvŒ÷Y)xÜ{¤Š²FÅ+i">5u'Ç“ét¸kVëòb· «:§Ã«BÒÄ‚f,æ·rà¨D#ÐçÀåiÏUø¹ kz’ôÊP‡I¶Gnà©ì{« âèë¹uÓŒæºQe ž²ÌÐÅ c²Ë°«æE+f4ô†Ì¤§®ç U«ñ¼?3n„ãž4€ÒN•‹Ç]Õ2dFè£Úhã3z—"UoP§ÂQŠicæþ#¢‡^ã$~ ÅÒ\Ç´ÁËB^U ¬k$i”Íðü¯;BJIJ¼ÉªËdDÿÙ³|(^¤Èò(Ût¡|zÔ`ùoËpðñMsÌ\ ïðÑCc§aëuïʉ'vQ.òz}=2éÇð¾]¯48™â´mY( ư+•Ž%­g cM£håxÚq¨/+1'À·ÂU–6V]YXV`‚§±v yu©®À'Htõ@½°Šª¯î€kìñG–ÔfG˳fû1cœŽç±÷£Ûî}üsñ|¢C_‘§ññ@";ØxëÄ€¢AdÈoFÞ8$ÁÊ^å’šÅ:0\’*°tz7 w13½˜ò€FÈNõÙœ–ýGh9›tMxª´$¹NóÄ­»ëH¬%|ÙsK& ¬}E_^êËê™9RG¿ˆ>RD‡ûìÇ/Ôë;X+¶ÙcŽËBúgEÉ1¼®Þ"Ú#Q×]êqcÒ@®} ãÓ¯`v.ìrF@‘ ¶š³N¥Ì˜Ñ øò•ù^”–ìU¦Ôí¡+],ÎCoˆHÕ]a“Qˆäm'Sôè;•~v„¯ ~":üE) [¥ªçHì–gŽ·h¢$–ÛÖsìÅdo…žd*—•XİˆÎØ-Ó”W ýúŽ} Y³êpÜlÕŒ Ö#¬4zÌd¿p ÆKÚdwBddŒø·d׺µcŽK4ÙD‹#'Q8ò’ ÃÉ«ºÅ\°ß³‰õx­È¦£Ô=¼W³]îØ˜*†Ø&p2Hfþlsê÷+¿‡$µîVѽ’7CÝ]TœýK‡!”ýl0 *Ù¹bЩеZ&’xÅë0J”OE™sØÖRúˆö;*|rÙ»ÊqüDp×+ÆÈ-ËqóYàHˆZ¡õ=Gw’7hÐ$I%TºùŸ•¾óP†Ÿ8½6NM9qb0¡@R:ÅN:1é õa[Ç,||Ò£üFç¦I¸±¤¾¸£fUTŠ-b[UmÛßy»W~@ÄüvŸF ÈÑÃÒÜÔ*®~^ÎɪìÇÓíÝcà¹X㘵ø­ü@U³U똠–ë$ýgq¼lWy Ù:Æ­„«_†á,[±/F8n)”C#ÇpÕŠ(âKP°—~’‰ó$Š$?60²• £Øþ9'«Èˆ£Ú8æ$$v5ËF¿[v ›®Â1À-‘ƒâ¾8Û¶ ë´ê­G+„RVH£m@P‹(ÎXã¿„äSO«Ãy‚µ –Vyk©}dîÑ¡écPγٕÁcîr{Þ+ñu9`’Ú±h»üxçzñ׎U_~™Y$nÀ¨‘Š( ½<«3ùÇ€èºV§·ZÒ;Dö=SFÑ•Þ1êcue}cìÚêJoÌcÔÜ2*A#Å$/ìFCE,ˆAÈ!o¹ONI%]>YêMBWbš—2Áò$ܶðü¦Êz|vÊœ.®(ô$•&’#6I&&2æVÌŒÌrqÏè§©j<÷"z1Q‚¬™=Û§IpĬ¤ÒJ\(\vÖÜ}ýXŽòN–â\çX§ø™™â\GÕ~°Q*#®Í¶ù%̵gfoS<ô§jÍ!l™%Ša°‘övV’7-²#E‘$òc2IB=Ga2I$÷3eZˆÂÇ^{hwø“Ó pGóñÄGÇÛàéÅzIÞóÕŽ>³;Á<%—ªŽÃXCz #+ê$`ù'òýW§[‹›”u5ÂÙŽÜ5ãK'ù˜»‰q#ÃN"@À7…óTyåJ¬E£B°ÊRnšýJ¯çÚ!ûùèUŽvç£m(ÃY°íÍÍñ²Á/ļ%FŒ­ýPDwЦJÁc‰äú+Æ7Bjè›Ï 1g¢G¦ÐxÈ®Sl…БîS⢫ Ó^ˆd¯iC)B¬J²F_¸Û«³˜ÒÌvøvéÁÖ· ÆÒ¯Ó:ƘÏU!GÃG·é=EG¥€ó:y©áÔ¿BmCöÚG#wÀ'¶Bç¸õvü÷—øGælÌc«­bAõý1GöÝð{žÈ ¶ Õ[<'—âP~аÀí™å'盲ެ}ñãçøy8ý«š÷¬Há!1,š˜‚HŠÑ6;ÈF(/ñþc§ ¾N •r)°yk±h}%£–tY—¦ÆH·¸öÏŠÑà 9b°Xò1HÆ9-ae“‡„kª¬}X䪮wÉ:ãÂsêÝ:í"#Êt\°ïömFrÚà–Ƕ}‰lCÇÎ>:¿AÈ–Hã“áѲfˆ…^ÑÇb£e:¹r›Ÿy–µ[·%šinKq‚µÛ¨¥BXC¿K'±YT°qü¤0¼¼…jV‘âÓ¢$YÄ%²2ßPËPjú¶AÔ “aŒµÿ%rkÉN5ˆÎ#š¸…FSYaŒjTut_p»Ò5^[^S5'hã›{†k;i cº UeêÄ̃XÉM]BÉgˆó ñ^ͺx›){áÖwXéËÚfƒq³Ê#fìøAË}…®òT‡†ò½³59ݬ[–ÓÇõeÚ-],À±%VD¦ÕË£j±AÊGfµ |#U4ë$VìüD]ÈšLÙ9nÁRUz«ô¢´¼Á™§µNH!£#@û¼lìα¸•R&“ú¾¸ù¥‡wÎ!æWLöü|U«Æroñ7 ŽÇ¯©M—[D½ùF\1Ä… ®}$þ9Áœ…Ve«º™`EÏM¤eãïÝØŸÙ“ÛÑÙ.yוŽrðBð$jŸŒ®ÝÉêR¾¯l·|±Øþ{É‘*pÁÇÕ5™ÝÏouÖ0?TÜŸÇÇ5j[|¥Ùf$‘bX•OöqÄì‘Æ? Twì2ÙcÜŸñy^Çkˆ¤óÖª!ÑU(ŒÇ´,É÷Y›©2âFbrç>qÖ&²H’ëÃÓYëÉbC1L¦!Y`dßd|ȇi$ aŽV¹uz…ê¯F2j×§/ùÜU=>¹¡dÕa“Ò©‰cyçTyN,Z½ˆf¯aãv ŠâJÐVA^OY°Úo(ˆÇßåÆO§1ÉÄñ×Ú§ÅIÈËj̆­ƒ4H°c±buy"GfWH÷H†à ŒËÎBÕ¤®¾Í¨×ò~ß϶=óánôCš:ÕþG_­*u¡3è á™ ‰©W\eŠŸHnÙü‘Åñ2¯%Æ´æi^OŠC&ñâcÕi„`®ªž… £c›C¹;À}Ï·`=òOaøŸyé8žo‘¯-KUÍ»),1´[1ª(ëÕÖmCÂ6¹\3âC’„MÈY£j´}¦åcXnè’Hð¯¤ç®±÷Q÷49>Y¥š;ƒ‚ÌZ¸XÞ[,Jtö]¤HáÕD~ë!ô°( Ùiùa¨ò W˜ä%¹K¤MRG¬Î¤º²ÙxŠÊÆ2«…㻀­Óñf)8ùXqâYëyBà ²šñ‚>[ôÕû(8'wUnÞ†>)Ü’Y`’ä‘:%ŠÿšõÃYDoëB¬ ¨‘@@}pU˜Œä¸‹QÚŠ»‚VŠyïZ@™G& FT€N½™AVVRTþ{É<¢'W‹™µ.ýz¹=™ˆX†h…WEÿ3ïïÎùj¤«Éòi¿\Õy„#² âÄ’L1Ü´‘¡R‡ »³û‘¯Ž+‚dá8Ö±Éô@ÑÊÓ« :Ã`õ)gÊ®ÊÎq?Hw:êÄ—1q4øÎC㸨nÚšHU's<–{ÌìÊÅŠ¹é¦˜ô÷h¢T!åoò¼µêñ(ÚLi¦+ÅŽ£Abb¯S±XWç2æH×ÒHèóÓV‚2õjµˆ¤|½ž£ÃÓײ„Œ¤²ÊW2"c»0#C ŽJºÜ5ë^µ\¯SâíšÊïÓUu¨7XÀÂL"HŠ`u]•‰¹BœLò+B¼Ï4V!·T’‰5gYº=è$¦eW/#FÇ]ÉÁD>#Æ|Zrw¥ã푪GéŒèiÏ8ÝL‡æRpTf-3ƒ–­™9+â>1–‹ÅVz²Í3@5¹’°ê+·XŒ{ôñòßjÅNÅî¥j;I_HøÙL´öï•ä+¬ºÁòËIµ1“tÕ£µ‰®N’bµ­fãDÒ,]#aDÚ¢Uù¹;#“‚:šé'2%©,Q3už'H®[¨É…ÂŒ–;ƒŸ9DHÐßÇ;f[udøïjúÆß "]X•?ü0}L¥±«)Úç)q¦Å6~ZüŸ‘¤!0KÅúHƒbâ6VGŒˆ§ê+öq»EC†æïתü•êðôWÓhL¬v×!æyA…XÐúÀ"B«‡ó^‹€£˜_‹›|D; 2ßÙLŒä¦à 2²äÉÐ~yN¬­ß±ÒunÇ>–ÁÔþ¾®¢ëâµ{þ^c-?"ÜÙXó)sû [•B£\j2d')æØ&ärµ”Y,gç@ñ>Úì +éc¹a:I¥• bêç·gŒ‚KrojÏG-éP±M™RƒÄêÍ4“çå@ljÊÇñL•lGÌÍðöyO‡”ÍÀ#/6°cuFAIÓs†"_¹5UQ°ûÃǹòp–bìe1$@}壩ÿWBÇñ Gcú…8&³n´»O,Ѥ'8ÖBÃV'¾ŸQ888ñ .GŠ­ ‰ìþPm1a⤱wÕ ŽÎ=L¨ôìQÂÏæ˜’ÒØÈd­êM/ÛÓåÈîßJãg`…‚yï¯+n”ÔùQ©EÙâ–%‹;9®òÆ —QÕ,#%•w.«_ÂÓ³fKAÚ0åѶVl#ìWa£»eÈØÇî¢Ï—á‚d¹w¶‚FO‡yJþÔºt2ÇîŒå#ÀLjÞ>F2°Ñh$ªÿ_üÑúÄlj:StÌÑh2èÙFô32nG…j¶ù%­/ ­©g“¥#걇GŠ= 36LÙi%ÏŽ½ÓÖ·ÅÒ²ôŒfÂ!Š2KzÒ¸šh‹®3*0QO ²HmjÈV;m$<¤’FΑÍ:Aƒ·ÒdGŒÚE;ãWFÃqœq§$ua‚¼¬ÖECU•ÃË ùŽ]†$v,Ç$¹änUÄrA;“ (e›©& h}ÛUfÀîpñÈñ[Uæ«MfNz¸N•#ÓÑ‚–êTéh$W*ò˱I;ŸHÐqÜ#zÍŽ6jÏRJhz²ˆY":æ=̦P­¤„š'PeGŽ*óßæyåèVøx>%®X•Q­¯QzpõÌcdÅRFÔµªVv…èYŠN£9h*Û•Q%„Ë GÒ !f$3oÓ ÑŸànñvÿ(_ksÖøƒ Ødøx‘“é)]$š" Îg+6­7ha–Ä© ´²Èp‘ Ë1÷ì?$þ¿‹_äéÕ{–âJЦ u%C#³œ*¬q™b~Ϧ$à þ~…¶£r½´0HÛf\ý‰R@?cßÛÅZç! (gH¬zV{çŠô’KHÈ€A\¡ei=*Oˆ.R†Üq%zõ¬Áë葬å¥ebÒúƒ•Ü1ú˜±ÉϋօŠè±:‰RE’?s——^Çöƒ‘ìÞþÄãØåc¹ÍBÂ0¯#õ¾SBÑÆÑeC,­ó3'¦-zŒ»¶º¡"Ï™"Ó¢¯½‡ÇJ¾lò¿fÇ m$…» Bœ†ÇßÄ /(±òš~;«±¥)ð‹‡d`m'vê\ÂÁ¾RLùV,@æ§»vZ\ú¶`¯ÈfIlĉ` Õ¾c”é<…YŠF 'E%Y©Jxƒ™J5ã‚`"^š¬yÇ"kØÅ!Q•×±_l|%ùW†±k½XŸ§Ë7L,q8Y ȰôبÈbBäzf{¼…+è5y¤³iY Ž-: ]ØËÔ M”6ò)Ë(,3sQUãºuãGi ¹,DmÒê§N!ùŒ²VÆ •­À5›c–±ÈXøÖUŽ±Óˆè£~‰¤“ß24ƒe h5ÆœPøßÊPE%Ò$†{D4sÉD¢ôå]eŽ2ª:n½°Ù'¿Š>X†ƒ@üg5e ¢E¸ºp±(бG‰™SæÇ(pÌH—Å,qu¯\J“Ù;Ø´Ö&y¥—bû¾ÎS;³B9;)óí*0ƒfv³ù^YÒ4l†³^%Ó}x‘ôóë Ôä`xã¬|%úvs ˜doî+Çò)°?Àø‚÷Ì¥ºÑ´v’&0؉‡fÁ×?TlAéÊ¿uÊ@>9Þ3òO#-eÉ…€š»s çþ%4dþÖ›vÎ?=夂Nn€³©ŒHÏ« «º#2žÃ wýÜ{‘âkµÍ9F¨ù íé8ÈúO«±È·|xXxééôZ5ÇfÙ=.:›ýEð$ç#ÒÙ¼KVQžE¹øX„„&©´$Ò–f$u1ëHÖ3—¸Sá+ò\†¥æ k1˜^à°ƒS•`r¥ÇWuí‚fn'ƒˆÉð5(\¯c¨Ý:ÑÄÓ<‚PR=³‰·E#'!'¡HñQóò¤×–Õ@ŠS¢êM(Î_M,Æ ªm «œ°\X±!‘¤f¦È¤K3ä@AÁ‰¤vΣ³+9É,FX®|AcŒ¿vµøà‘ž&°°ØvŸá•_¤Å*Äç¡êR¬òD¾ÅT1_J‹¼L¬•—V Ü=ˆ#øIFB)·ÅĶ¡u’I’©š# ޱl 4žîì˜â5[\”viK|ON=k†Lûö.Ädx»ÐÌvÇ@¢ŒõQƒŒ“®§ìÀê~Þ#ä¸~l^IèŽP&ìI2¡”IÐj$™ºH§p9<½üKI éŠ[KY¨ÌàÍY"Ž9"ÁÝ•£•$.1ÓÔVeb]5ú¾Þ<ûÊEnZµ ñm3·îî4Tÿ[ Ì=Æû7ø¼’žRWMºIQÄÇö}n5?‰%IQÿeØøóÛ/ÅÐQõŠò3~:´˜O÷«ãý?žGxÝd™ÊÊpÊGÜãËô¼ÅÊÔ‚Ü¢¬U[ £u~&ä#è–(ëéY]¾åÖ5MO‹5¹hçRQD22Ïb k'Pu„h¬òLa‹-“ f`ÃÅþ'ƒž¬+câ'ŒØ ju¥± WWu]´ ï‘«ú¼Tåªô ôÇéFû2/¤2ý°qöÿ‡‰[“äá²8á[ÂbZ' ¤‘…I r¤ç@5È}†<|G˜jBl[â.<µwŠíº­Zh§ÑýÅȶ$¶$`‡E@$ÅqÌ܆imñü#À~U·Ž{ 2KkUx³ªŒm6þ¡…,ñfÅ;”Õ ôä‹Õ¯m[\`ºf¾Ø ÃÎFÉZ¢át/ºY†8cP==Ws¸gl*ªDçê'Ò¾!’N:BaÇYš6»Õ‰^C,Q,rª¦¡¦„Ù]UâÃ> ëCˆ§ñÏ-îA¯C0K5`ˆ½Jõw–R!nŒÿÖÌ@ ÚnÄb™>/ùSŽæùƒ,×íš°Ak\:¬œ ™•ˆ•“#V“;|îê#¹F¯]©¥Ù)Æ”U)=h¢BÒBæH–rÊß$M#ôlË,™õ²¼rp| ºrÙ´’KtIJ½õ™–ñ–(ÀGŽQÚ6€bûiŽÞ$âxõ©IÏ%{+$kd£W`8Æ2!ÌmÕЖ FضÃÌé¯6õ¸«[ŽS«O/VEž@¢yÎ6Õ±êo å ðžIâúP‰^ÏYcQ3Ã*…–OvmdŽMF{(]} g-–*œO–é4¯¹$íbÌ€Þ–O}TzP€‰Ÿ·#'+zkŽ5 …Š<ç§ vDÏÜû³»³Ïù{ÍuŽ­ –8ž¼Äñ³ô1 _Hl|³Œ©zIØâ.RëW°b£fhX¹Rв‰RSœ§_E™pýØ ¡›¸ñÇÑ‚ÄÏñÑP‘ãŒÂÄ0J­³ ¿Uó…’>¤µý%Pȇwæ8N2òÁK­bŒM'[4äXPh0ñÔª‰º¥Ø`‚ë¾6Îb[Ô_¨N2!XÅ9 §HžDÆeÏnä±È-œø’NMa1¢A’æÌRJ~cÄÊÙëvCÆÌ¥rìBãj¼”}1ꇃÆqœµ¶–xÉü¸å–¥•%¦H]º•ö|¶b 9ñu†W·Lo\G¼ÐïëN˜ú»zÔ¨î l>ûzjÚµÈUŠN:Ý|r;LVPìÕÙvgUcÔef'x»í‘BmáüºjÏw—µ#ßšÅ|LÁþ*æ%\M &²ìÝI%Kk·Q5"¯OÅK,³·M&ê<íìÒõ%p¾ì¹H‚B©ìñÂZÌróM-KU MHE:2zãÐÍ 4š´±`ì÷ØkÕæ¤f§É[ø½; ‘Ã6=]dþqX#ÇÓéú•vÁQZ¢Âh»WjàˆÞI%° ‘‚«)gþ¬ ô¡ •>g‚Í~w’[]#3Øi‹@Dë7ÌVPÀpØ“9ùðXzŒ\¯' âä.FƒéE³(UþK¶ú¿m½þjwˆ aD®_÷Ù6.O÷Ìê{û~¥û_ó}žcâ«L°RXÃË<¯6‚Y´ùê7xÕÁe-áIR XüsO’ä(Uá,Ûä<Ç­ ÷cœk%HÑÎÀ–Z°°Ùb*«´±Ï´¤e«C]ª×¿óSN"¼Ì[…žPºÈÍ™p²÷ôï‡=ÖÍþlOZc yDj¥,±)P=nì­òÔˆ v)Xæ¯XzuiO€Å-rK-8ž0å‘¡‰å“ áOuц ^o0ñ”­#Ô†ËU(˜­eIeÔ+Å|ÐÀ¸êDëéÃyF2<»RnZ§'?7ÇE ™­––îÝHì2Å4­ c8bíò¢‚˜m¤éòÓN`âÞ¨ [³+¡úˆ’%Ž(_vPß©–lcÒ| ·`h¯Áq¼yoЬñ!`%ëÄ°Ž‚Ç»HÒõ7|‡`S9>:\Ç)+Þ"••éOV„’ˉ5ÙD±±FxŒ¬XΈWUØ«(>9¿.¥ _ £p$*†7¯ E}{»õW¹RøŒ‚SÕÛõ"÷ÿ?©÷_°ï·¤dèƒøöíì~ÙÏ¿†+…ÄLIî?g~'¿~ßoçâI¤íŒ/¶p¾{ÿáãË|¼|'$¼† V‰ávÙUÊ>W8V;F>ý×?|xóž¬òRÅh TÖÒh«ÏZY9b»J­,†.†ÑôuAˆ ܳ”ë/ÐBr–Ó¦HÔ¶½¶öÎ;glûøâ®ú>géæLþù>¬ÿ§>9kËFdp¬½6 k±B@2Û÷ôëêïÛßÇËGKú¬¬ •eìÊÊ{«+¬¤ €|yêôy‘ÐïÑ®©+é23<‡Óí° ?»†úêæ5nçÁ‰ïžÝûá㺌•\ãÐG¹ö÷þ#ïãy6îĿ߷ò9þ8ñÓ/õIÔcß%¶l`¹Ïooáíã±g‹°-×mYFéxÉRѰýÖÀö ‚Rð<þátZާ»Ï•SöúbËáéÿ‰ùÞà©Ø¡u^톂#Wª£©,Ϊd`çzø%Œ›¹uVÉ6hò9 rÕiK_áìÂcW²$Õ•Îìæ¾³#*©?s §‹\}KUìÕ±#عrÄ;s0‡2ôDÖ94CxÌb»l¬¨’È$lH|Áä*¸‰¯Ð³9š¤M4‹;,Ÿ‹ƒ!8 Óe]Üj0~NA›óå^Zׯ/Ì~Fš/6y:k3|#[6©¯™xÅ—Â\¤bŽÓ¼BÃï"ËU'¨ð•²^?òùþb¿ÂòœÕ¯Ðq”¬[eΦVŠ2cOïÏ.Çÿm×Ç ý3y÷†µ,ß•)Á<òO%Y ÊûK!‘– ¥ÊÑ©b#† I ™ òßøBùoéÁæ*V¸¬Ç·#Æ“í’ÐÆ·aØ÷ ð³" ï?§fã9Ž+š¬.q.J³cçR±„þËôÙºrÚŽM]H!”GøúiàGß'íôì@þ?óøø9¥›=ó¯sp=€?ÿ|2¢ ÀÛ>ÃñÀÑÀ$ôˆ#?ïþqã„æäã¹X9 ’Év(¯¼3K>¶m„eÛU>Ù%{øåüíf^LÚâãøj/Ðyj¼q¨³,k©šM2QÊê•ó¬h[?O‹þv»ÉÐ’’Ãðé*ˆås7QŠ7@hnñ’s²ÙIíù¿2ÿèêßüÁå?ÿjá¿1Éq´9ŠSñ¼¥H/Q´ª³Õ²‚H¤ ë"eOíG"$‘¸ÃÇ"$ˆUÔæOðxòõíçòß!gƒœäŠ–växò~Ê­#­è3ì]¬ZcX}óæOèŸÏYÞK\CòÓ'ãø}¹ Úw‘åt¾öjÂû19ÇÉò\E•¹Åß¹Ç[O¦Å+Ö”º—‰””?´•aÙ<·þ^iã:psÕªù†ªà޼$ÛôðFj˨ï‰)õ%#×`_Çý9Õæ¼ûR—Jz>[å(Õãa[š·8d’E´í“/BËÊ8ÿ¯¬8„,«þ<À³Ã'}þØ?N?—oûü-úHÀÈ+ü†Gsøÿ³ÀucŒ¤íÝ[=½yÆú>Þ QÕ¾pwíþ“Ûý§Âã_cßó`ù®NZÚàªp¢·õ)ö»È_{K:÷±_þ¬Š(å®d,‰<ÝR0²Îõ“ˆø ƒ‘¿nâ¤ÐZZã£R¬W+OšóDµbŽÓ%iãW‚ ·.Æ £OñF“•ú.ü~&¤êŠÿAþó8ÿ² þÇöÞÅ} ‚>ËmlF3ôgÇŸ¿ ³åŽ/çøžv9øÊõæ«Ê§FâF]cD†Ít5íÏ$ŽˆˆÐR Ç– Ëž`ó¢>ˆä9' ‚õ+JñDÃçXA¸õK" ‘ß$xòaóýâÓÍUÖ¿;qÝlCg¬aôGfI y"ëÏG°Ù~#¨PèWüžÃØcùxq!Æ„cî=ÿü<)$w]0qáøþ£ˆ!é#,k)a#¹Õa@w$œ {gíŸ:!Sè‚u)«бJXÛPs «¬RÄØVô#Æ}W÷GÖÒ{­Ò8ÿ¾ñà lÞì‘F„•Eú‹–îeéõ îdé0x·'êé:«Ç¶te ¸ xRz¡ž­‘"v82ˆk|DŠÍìBÖãÕ°çU…,‘/…ôö_HèÅ_ ÛäAŽŒ¿±‡¥Ñ cü\‡ÇòÕÍ>N{õ ‘Êõmij֑áq$FX$ ¡$UuY“uV×eR!†ñ$5âŽcÇ(±Ä‹û©ª?€~²ßT'ֺʮ%ô2†)*Ý€}VE&“åÌ3 ‘÷µGªªä[²bÔzšÀófѱŽ”‘¡˜¢ÔIa~*¢d0î½–¸›æ“ ‘ÖuîA%Dlç ÑK¥%Pư»o–‚F‡ ™U™úæ¿VVOœN²©·c± ¼iC¸ê%J`¢eø¨$! g{EWT“â æ2§¤ŒÅfŒQЈ Æ6ýwÙ•ÇfM´oÚ]ãxŸSî7ŠI"l}Q»¡ô±õÿÄ]  !"1#A$024@t£³Ó3Qa BRq%5CPb‘&rv¡²µðSTsw‚’±ÂÑá'67D`fu”–¢ÁÔÿÚ?ÿ÷¿½ßù ÿ¨–ðú§¼£»9ʲ.å*Zwv(ZuŽô%z«T½o-¢}úc¿ÿpäÿ_«-‘¿‹¨Í'ºùÚˆ¼j¶ ìk c–õnAÒI5é‹•™çhçûq{¿òAÿPqñE6 ýºâ ÷°K~˜(¹W¨”´òŽsÊ9ò÷Ÿ_óNoÿЫý/\*¦ªÓzñ,^W\A›Da1Ê-#­yÄ}ÜÿZÚî?9!Išm‹tˆTúœÚ÷´Å:EˆRZ£m{V³/­Áÿ„—0¢:ÿ´‹p‰­‡+ÇÕ¸bí þ4GÍ$ñyÄ}kÏÛÒÛX/‹G5¸™ êš³Êâ(‰Z¾RÔ¡G>Ö¬¢‘5[…)£¦–:S"9dúZí&µj–ՒߟÚ^*ÄMÊJR&ßè7µ²Ô%˜*F™‘˜ÝºØ”~Éq˜ä›”¤TC½¦mí¢Ñô´DÇû§Þ?a/ïwþH?ê>ÿËÎ!þhÿ»‰¿õ ‹ðUÃ.{âîq°>*)þ麥¦oºÃ<°H蟭ºgëXõZRµ­+X¥iXˆ­kÊ+ZÇ´V#Ú"=¢=X’Xzœ]Å)æ.p†$KênÞF”†ýc’ÔµC^žÈ§µÒ>Ø ~§ñxó5ßÃc8º¨q͵qöTeÐ*à~aö´Éúƒu&–¢Ô§Út„ÃW‰÷qøq¯ÁæfÓjf>PÝÇùV™’ 5ƒÉC >¨¨í——ÇÝë¯p-÷v·pïÂÉq.öƒ@º¯ç³gj‘׃=MbõZý²Þý©Óï×kì§øIü&q×q¯Åt(¦u5YáîUc0ÈD+ðw“‘ôõ™Æºš¬s꘷OÁ ëñVŽ«çã>ÈgSÃe ðØ»EÒ©ªr® z‹£³¨½ºëÎölw×cð¡Å9+ãô¯…ÃÅÙwö©mËKW_5m2)"­©Á‚¥(­=ëO\Gp˜·8‹ˆ8= Í\f¸´‹}YgÜQ‚h¨›ì»x•ÈÀ}©H赺­kq¡78ÛŒBŽoñ&^Rùîg°ˆÔ´ÜÚµÝ(AR(g÷©ž­h[xı¾N&½½w^àÞ6g‡Ü:@|a@læ7ÛºE¢@ÐÝ@³k ÃùɹÞVÏúúU¤I<­½&5_·{çš]ƦŰÇϤTçÒ:r­}¿a/ïwþH?ê>ÿËÎ!þhÿ»‰¿õ ˆI¬ìåme>¾ÏêÄM¼TùÈlH¯Í!$ZhNžsIè5hK )hÎ?àÓ í*Ó³ý¤g¯ˆBré‡oŽJ|[µÏç¸)qÞÜ磵í_FÎÕâ™ÕãíxÁ7™¹íŒ†ºäëVx¯Y"¹”4éy²ÇZ}„ ƒ´ø5^Îy”mÄ;ÅâLÍj]D™%:(u·%d¡¥…g`>È¿§%£|GTz8oû–Îù Ï7–Ó¡¼_æÇJõêïYxþŒ«ÛÖ—xGà5ñƒ£ßRÜôé© HÁ.Ó– ÚÔàÒ«G}“°0Š:#‹C¶Ÿ„M>:â-”«ä*Ç{5ë¯*±ÍCž£îÅ-ö%šœ¾ÐTöõøIáχˆ|w¥Ä8Ëäf!ñ<çWžøX(V»CXµ /KôÃÏTüA<5¥"¾d饯ÓAÅb¦òÐæ¿"ÏTÔq3zDG_¼òØ ûÝÿ’úƒ¿òóˆšÅÀÿîâoýBÇíåýîÿÉýAÇßùyÄ?Íâà÷q7þ¡cý(ÿ~7þ½Íô‰‰Â"± šÄ%¾/¿W¸ikO(ÕˆŽv™ŸhˆÿXÙY8ì±ä»\ná¬òÜ­<û…!»5aãà —# œ„Eâ"-6¥''ޏ$¼&.$j3ñõßGˆP¶ã˜³Þ²Ê§tŒojzN2Þ~[vèb ‰8;͵¡Ãޤ&øêÙé|9¥¨k¾ÁšG’æ­ËQ/œ,Íô˜ÐP6õ«Ã|Á§ã8~ øó6ÛG9¤(‰§ϘçDOpC(ö¹9Åúu8·I-,²bhSá5º2P1–·MªìrƒÒÔªåìö‹Zg¿ÆŸƒÆøg‡4ZYOˆ3ö ˜GoRÛ9 Yr¢ÌÄ”3>=§·x’ÍGnqû{¿òAûy[{øçO„Êo°Þ[uÚ› ?d#T}U¹Ïj›JÖˆZýÐ3ìQÅq°Ë·y“h²ólÙÆ]e¹‹‘’±iûK"Ÿ5yE¢"ÓÎÓkÛÐ5‰¨î!²ìRS=Ò¢Ða€Ùsd;_É¥û}ªRÅ$ôŒ_§j]n'â.'âô1A|îØÖa§õ»¢½<µOÌÉÅ Í|ëú2hƒœˆX#?¿ÿ^æúDÄárX…Mb^ßÚ(¯;Ü4µ§•v¢±Îf}«÷G/_ÍUײ|Â;­ç9k–…”-`)4Ó çì£'S Ý5¯W;R'ðwÃ7¦†ÖÃs±ÛÊlÊYyµbíè1enX\4¡bÕ±&½ÊÔ²>®Ý¹~-Ëßâ|+þþ_?·¯Â¶i£ˆëÜRN%@ºÍèdèŽ×;WÏ Dt’´¼Èæm¾Ì½ÝÀÝq8WŽÑ#ºaGw³³,ežØÂµÜ™E®Õ &Ž ElÞáé 9.¾¿á§Žøƒ7u„_%^$ÅÚió€Ùj×%.;·žrGc¨¤Vñ餀µïP„b­ÉîK@é‹b+yˆço–¾üý£éû{¿òAû}†JÔƒ%mKÒõ‹Rô´rµmYç­¢f-YŽSÓèû#>oc¿Á}q^Ô^zŽ~)&(µú¦Ol#Z©™+œDïÚT€CVµöÚ)_ qÈô¨ÈmÛ`z?oá"Nÿ¯³£Ø ”‰µí?-l!âÂ/³Äƒš‘‡lNŸ¬|0%ˆ–ôbÞåÙjjQ ¤:Û½øÊ†ª i¢~ŽòZ Õ Û½J>êÌÐ'A)BSª“ÓzÖñÊÑê´¥kJR±ZR±­kXåZÖ±íˆöˆhDY ‰•ÍI€qÐÁ(íúT ‰¥é?}mè·ÃáüLkž9ùYHçXÑõä[(É#Ÿ¿ÍÏÓ¯)žŠ®éXWÑqu´. HÁwXêV¬LÐV=¯#¤ÍkÊ= ã¸XÛ]Ž}‹f%£Ùçõíy€7oŸßÑËŸª(ºà¢dkTãGL ¥`uG·EkåíËÔèæpÇghOW7‘ÅÍQÉëý>la›çç=_?Í÷þÈ_Þïü~Äæ‹¤ì¦‚¬:ÙºNÒÊŠç9;b­ÊNRÖè.KråJÚÓëElf‰äçü×lp¹›N¶­)¨˜¦ö!%íæJ…¥ïaUÕU–ï~`‰èñ& £º«»ê².å*Q÷v(ZuŠô%:«T½o-¢}•Œ&`C:ì•(NÖ#£›P‚%-[Œ”´Öõ˜µfbÐoHéEú†¯>@7]ªõè[j”ƒ±PSä ÷×å§(ÿ¨ ûÝÿ’Ø´ñÙ¹†¶®{¹¬{R¬P,EKpXƒ(êjж‘Úâ%"ñaÞ9ÖYâ^ â–÷ÓOàÙyiå& ;4«Z¢ÆÒfXñütïflÒ*¨9¸Iä¶úŒ+-™\Ï N‹3³Ÿtàš[›^c9ù>[°*8Wt •ËA¥Ðé™ÇGW‰6‚;ngån¯¾á˜©üQaêѰìIiœEÄ#U†ºWi:Tÿlîó2×kM0»ÚÑg4¶MÎÙb”ñƛѯ~“'–‚¼…YƒöOÒNwªŽD4X&»ö15[N•—Ab¨Å°­ V™×ln¢|ÚÜU?¥JîfÀÝ(Ëv”Ϫ®…+Õ¦0Y·“')\™ ÖêÕÞ±„jÒü`ÉÊLHEM –Æd:ŠçÔ+’¢½JáXC†|zÆ‹6E…Bw.¶Ź-Òë±MEAf)5½ŽÉÈ®@§r²[2®1Ñx2#æ?L¯ˆrðî'vд)=–A[/qí÷XÝÀXœ«ª: ¢¢Ñ´ÇX=ý@–/ı碷Æ|DzÁ§“,ù–‹ÿɺÌXƒ!“¶›d;s±åTlÈœ†ÊÍI d0/Ö®Å.¹Ì>ÙëKÚ‡¡‚-lèÓ{8:ønr­‚Ceû fÜ•:h‹PTŸ«U*:\ë×”1KðÎZÊ+­±ÂYúÌ™BKh¼ù-Sg«œÿpiøÅE ±] >i£(…XW¾føwr«6ErM¨-aŽª³~Ö‚À¸\ªdç]À°“ìNF£ebL<ìzø‹-=ëççUŽÊý€²±14ŽÃkÞÆ²€PÜÕ‚6£@]MÍìâ= ¿œÆ±ÝyüГìÊ,óe› 5èh¨X-PЭ†a³±„2ÄÍ^WÓÚ© ,V—b–ñs–:ì@‹³i¦€x¥Š刜‰/¢®x¯Þ¸ö2FíÖHÇ!]¬Ù—Üžåªxó9~Òë ÈÐ]÷(73ÛUôÍ×Úi3‰¥‹Û½„NÙÃkŠý¥Ç~›OMéjOÍYÄGt\UÃÑÝmÖªÂî¢pçµNáoASªÑÔKÖ‘ÎÖˆô|t4äf§á°øþ®½Ùš±™-Xg#B9F *Âë2{Û©6”Ôÿ@?ØËÊò;ž?Ä´G¿Ùèîö|¢‹»ÚÑÏ£¹N®]uçû{¿òAûÉ·cCC]µÜä¹<.¡µ cxí,Ðîƒ8©vïZty^E Ö Òÿm¶nÿ­4ã%i³tÐBƵÊHÅQWªóÑH¥cä¯ËÓZX“í6­k7žžqÏœG?o~SþÿZ¼R¦6¶¢`fGµ¬%˜nðõ„Ëì™ÒÅHbȃKA»õÑ>êÒñCgSï”HqXøG£Mvxi³®,f‚üãçíÛ¯;C_Jý§3›S\ʱR¨ÅCëG¸¿‹K“ÆMf ƒ–²D{0Q hCÏÍ!˜ ÂB7µm1dRW6bƒtЫmI¸?â”ÂñS‹/³@ ñ Œ.–å]×Ô¶QH„¬"1•¢¨²"áë.uÿ…¼DçS7=â%ñ1¦Ä0Þ{l‚ç:®¡ZIڮŻÞ9~j^ndï«g¬¸(¢|B“ö[‘®&Ùž:¨ƒEJpi¸AÑAË©¬~=dqâÖ*‡ë0¥»¢u¦`‡D ^ùâ+áš,õÌ“7(·M„EÅzfk5²î“øÆ»GÚ$nU“£¨ëb\fêKRT]c8`sS®Ruø©­ãŒñ"¡rÀ}¬íÀÒÒÜŠ™÷ì@ [Dj…<ê/:+‘½}0†ÃQËð›2ÜŠÛOgæŸ@Š®Ó÷T\átY*¾gQ'RäÐˇ¥ØŠ¯\øâC§Å9<–Oˆ†þ«™qÖÌ/ÄU@.j®ÐÚÌ>Rmçù.-9Á5ôLýZ njšjÓ|2”ê. v“8˜QdÉI¡#ߪ&#ñn¨‚¢~Úe@ÊùÍ19ùÌ-%£…øx{}ò¾µÂm§zJjÉeš¡Š1¤ê»‰üµ2-"Š|ÇÝÉuÙÍYR…©ÐÚÃîØ„Hö­:x3K,M&úºÁÝX‹÷$–}Vú=ŠÖódt4ÎŒˆ‚«Ë\„2õe2.šûÏ ç¿­ã« fÅ–(Ïø FÏ£q[º_4Gµ[DwEúG#Í©êÍà굘kòï@m[¬ÏHÌ1ùi¥MÎÍX4ƒÉ|rJ‚ò¿£æ²ŸÃ·RVB± “«SÇ,KSš½µ² \¤Œ¼‰·y5+înv<¯ƒdijøÝÞÇ‘ðäÌßc½Û7k»Ùí÷{Eíõuvï˦ZÕÖlŽè¼^ûLšc¬—˜ŠÇ*Ö+AˆC­ ´àÀŒ#¥+ÅôÐ.``äÆºVµâ%ªÃÃI\J”H·e¿´Ž»K o~—M×aKÁtN(ZRS+I•‹LÔaù †ã¨%âÌŠ+z꧚Ɩˆv¡¤ò“^µÎ‹ÍDaî© À¶DÍÝ$•›²Y¼œ§¹»žO“Ü%[«Ú7B”lÔ£)+dŽòtê.gòß‚ÑK°Ÿ”3ãn Q7Gr‘´~|¿½ßù ý‰¬Mµ|ÜÇ{JÝöVîxÌ…°ý²†è`'Ù–½]=6ꥭYâ.7½„F˜îT;àÒÅ¡㠢ùR×rëÎ…AZ´!Òh"è(C¡Kk zJŽok p]ƒµ#&ÓQRì0v‰AôÖ̰Áæ½ÃgáÞc? †aèCÈ/…çH¥3Åëìy~?Øy¾÷gìúú=½|³iåÏÿo¬G9õ÷~"Øc­>i§µb9tr¬òˆöˆ™¯?n\þ³ý"+μ‰?wDõ[§ÚyZiÕ_oö¹Lò™ü__UŽYú”øòü}â{qïõç·ÍËü?G¢}¿ÇþïÅ~|â öÔç1ïRLÏÝôùº£”ûûÇñüóÎÜçªcïž~ó÷}gü½}}~SÙÍó°õ#Ã'ˆÉƒ˜Ab½=.%ä&Ô]rÕ´TšÂK.OJe`SJ´{6v‹¼&—^Žh:²è 8H- )Â$ûg^Ð;40k{P‹Í~%ßÍh‰;A816 Š˜5mB Çjó"%–lµ¡Ç52÷˜0.3R„¦n3:Z{éíÉWegݳÆ[ÇU¦ªú…Ñtp·‹Û¹]¨Éie=F›>”ã|¬LêBdiEýœŒóÛå" f‹AÍ…bÀѪå~¹C¤®ª,j4ÑHß®#á°j‘ÜÛh™&L±ˆ7A”ñ¾ñ %…<¡äy•š†K­3Ý‘ñ–‚z»¯Åy¯èÚz¾³õŸ{sÿ}¹Ïørú}9G×ÑjAu›rŒ¦Ôö¹T]ÑK«pÈ<»zﵿqPHºÇ¹Æuø;Š˜\á@Âü?¬p$¬\f„¥Ä`’“Gk ”˜µ-5˜ŸMŸNþ#ŠGüÓAË.Œ¼ó¯1¥Óz:”YÇ{â†Ž[º¹yói`^¾¾«û=3ÿ8ÿëŸÅ1Ïë½*1ÞÊáPÙ4š’HœØÙ=˜=LØ ÍE¤ˆÂʺ ëc|ä1²í¨ «ÅN¶Û¶Š ¿Ž¦¡Smý^É¢¼6‚NK§¸Y*‚a‚*Å•ƒZ–ÂúÍðàÉÊò=$Ž-b¯F“ O Þ9ïÈ-…  L¼½ gè&¾§š©âÈÏyM•Ä!è¼Î½GNýL–#>¹!*%µÌ¯x  J&N•2.wYË_ÊíJëQ'¬Šä¹Ê¶YÛø|/0ÅÏrÅfµUf|m2ñöµSËaòQ'L•ŠÛAP)n¥ƒrýŠ+ T%¬0ô^­.v,UžyÖµ ‡z²w-å¿UMÑn‹>i³¤IbnìR,©q  eÒ××ÕˆÅaö˜DI5b¤(³Ô†ýÕ/xizͬ œ"«BeY2¦wU,ãÛŠñÉUØsE»¿p-¤˜© gV‰#žˆ›2ºb+G5–’»:eQÊÚ.¦âû©jÑeòôi¨Æ%0óë]”_@7!ñü6WÐÓb.*';,ɼ‘é d³ä¹Íè7žðÇ_‹æüN‰Uµ²µIÖî:…”ís‡¹þl¼ýt%±1Û¦ÀZ×Ðb¼@ñ,²F‰¡\ã®Î}˜#2[ØÉPÂÆçÝ{‹Vþ1ή|7´–Ó„Ü´®#,Ñ_`±8<´‡|˜Î]†(P8b]I·Ã° ¾/ág¸S ‡²LkìÉ ¢ŒÕ3ʪïF)sát[(´3­FmY\Ç-%/ùâþ÷äƒö=e6]¦v[è3šë¤eu Ò¡6« E—¦XŠK[ÖOa×·~}æFzÕÑñóz/áäÆj4µØÓ>†´g®–wf"ýí9K”K–ƒh•ªO@)= { ®µm×¥íE†*XÖ«&=«&dÝl1r°R’ý"¬œ^—Du^/ÓÊÔ™çÁÍzëÎ>¿4{Ö"Ñ£žUö†%¥Í5²‡¤g°—€wî]P±œ¥ee⥚Y·ÐÊL£­[u7;ÌOChi¾hŠ—Y/Êmi›Zj1C­ÌøÀ°F Â;Þ³Ä)Qw¬š­–½=Ðo¯SM(~ˆµî\æJ½Ž¤8£@  »–áÝm,ŒªqgF‰éT±P·@ÐgÆ-ذÀT‚Þ#ë°™qZ=X”eÚ´¶á 8¾G ™²9¾ ‡$=fú´ê©Ü8[ÏkJæ“Dù“ËlwEvi*¾w âåçãg&,üáìKúMBêD;–ÁÐS§òJ-^Æpµ-K3¢Ç\^;wç[Wåµf9LL{LLO¼LO´Ç­ûðÕB2bçQ¾É!…רcò\Á؆¤¨W‘?nèPÉ f®€Ù†¨vurTÃÌMW{UýlæIT•3f!AŒ}mBó f”¢yÌ’Izs­iÖJ­»™`_L1ÞqP5NÙ:!€Š…¬ÙH`UºÄe2B; £É- emãn²)|3à !ˆÕg°&˼>PŒÎçô#2¯$Kae;Œ( I¬V´üKa¶ÿ•Û6ÝÇàî [5Zf _àHàÚÄõþ, Ö»ÐÜE–l=}¦”9`}t°ïÛ0mBS¬w¸íÓhꥭIùfcÓzúL•§´ c°c[ªÓ3íQÇ(­h Ž(t @Œ!ÅJR¿_D7>q6žÜüÜ»q<©íoxç_šcÛæ›O(ú~;JÖ}?¥Êœéi墭iÊ=ækËÞFÖ™šŠvÙâ3Í­yµE•_†Ä¹.­Ø°¬ë𥆠 ÙÖÀL"[лŠ´ô¶Çq $ a¡f0U¬ø©TƒÍtЧg¶çµœÐö6h­s*Úäti.mmÔ7u8@q5áÒ•¢”JvW8+>Tf„Í]òhéÕ2LµôÇœÍJjæÃ2峞®m[¢Ò…9õjEðüêWÅòl9¥å~쓵nsNSÏÔzúúu\ ¨½ÒR­¸Þ”º,úó(Àå…w¶ã$ºà½)ß ’“Í{ókwˆø—0ºi'™Sš~–}ïÔæŠ+2Ûð=8hË/`œÉ&Ô:o@†¬0*ÙŒ½tBHnt¡«Z^±!)RE;Í&z¢·¥¹r´süé{¿òAþŽnOç×O>?Ô-s´¼yÙr£'Z‡\¿,ÿ/_Ló÷‰å°x»ð|6¸{b¼K•œLå´ô˜OˆUr÷ƒg²“3Ró¥&ÕíÄr¯]¹I $ü!Ã<8Çq9ø«iSAl„2³¦ýºGQ‘±Q\·Ÿ±\k”—ŽSòõŠ/§Âû¸,ð·d®’wWÓ]¬ÓÛ zºKTCpI¨Íö°IzÒbo¹Ÿ“À溸üFöö±7–yÁUžÈÚLˆ¤Ñ‡R0Låé(û=n^Ǥzã>$ °‘ÏãÄOž¶‹;-ínXë ¾¯™›H·§$©>2•¥¯Üè‹Ì!§Æ¿ƒ¶¸o†ÝieI²"ÏÙ6]¼QRkæUŠ m3ëŒìv-öS4Ðwp§ ‹·þúø²Ø¹ùyä¼P$g@ë·ÔsÚk#^€êšw‹r´òãtñÊm/Á‡‰«ŠÙÅ{ À|F¸‚ú“p²«+D]Õþ£4LŒf¥ÅLŽ+1°°è#Ó?‡–xûMù&Ömp¢«n@NÙ›k¨‘&èVöç0 õzÄ_?îð®o:,ÜÍaî¡»Aè3eVÖU0¹²xŽ]}LV—çåQ–ôü|#zù_ –v!©¯w‡»Yÿò9}‡• øŸ‡ÜûnÌ?Øùƒ„Î;àγg² –d³$v$®"L°y±:ÞÒbÌÏÏoJ„f›Â=Áƒã’Œy²Æ#'Ä) NÙ1Ê‘°é-Éj8é_MÀèx:5‘æ>Ø ¸ Ê oH̉€Úþ% _¦b#×äUJ›ûML "kuc Dš6'‘-ÖÝ¡DSK|ÓÕÏ”rôó»Øqµ7VWÎD­9ž½Z'+F£Mf¸³¥ðû#^™¼«GDã—Q"`†F,°³2GÓ?[$4Î)*’òg«ã·xNgØ+G8ëß1ö>¯ƒ—ŸðÕõ1î¶Ù]è;<Ýæ”Ͱï…{pKÌÉb¬õ…\Ã-B•»ª|úg DÆö‹º*¢j÷™pO`Åó,ƒ=Ö%,…4ž½½Y‚ÈÆL†0·Úf·hª¼@ ¬Vô˜3KKã̪ºRSÑpœÇ©†:qw[Gˆ³€%õÏUê*î“{H’tJ»êÕÔ²’ÏuŒ©Ñ ÎÖ~2f·GP¬géÖ>èõž¸ÞW<„dkU·Ëãç …'}Ž›Jêƒå)Øé¿d-»wöäÿðäÛGx^ ×ÊPwPÐØ™l½–ÝU%Ðqº*Wz‹„î”ÀŽqJ9µŒhΑ–ÒNãy%¬Z§Ì[0™th~UÛn јw×­X¿ÃøÚZä©V¬’¥0»—µ—šŠø¹á$Œ“ä:`´IrTb%ª¾*åTå*Q›²Å?»ekC±Ub…\ÝãÛÓ¶lK¯­˜ÅàT†!{,Ô^èµNÿs·Üí2½ 3xº–býª2Wó…ýîÿÉú9¹Ó³ÄQƒ‹1æðÖ¥ò4g·²äve±Ð–ñï×Ì‚åóÍ)<þ_IméiñWèåß»–N/âvéœo·T¨ƒ‰ˆµ,J·zÔ´é-)zñÇøÇˆ8n&ÁÉk S'U,u´mž$ækè$âö(ˆ98—‰þnsÕ%Yíž;â¾5âLœAÆttØÊ_=Ö»”RtÐÇYo*‡‹U<îºó-»VšµÇ³ËÞ ÜYÏüþu#Öö¨€Vá¿Ãûú¢ $—øblŒlߢ=íAwèB}Ô¤X–åJZaŒLŒÍÍn*c<<ìÇuÆ‹}4Ùë…{˜uÅn»–”“ Wš’Ñ_\R¿>®gÇøC…ï’ö‹UF¾˜Qti‹P]ï E'k¯®Ð;[—ÓŸ;a6ˆÿdLo¯0E^ºÍ§2¬W˜ÙÍ7O¾+\rU‰JÚz=~µ„°¯ q2;ú‚ d—øb{ºÃbýúTž„'ÝJE‰nU­¦8}lÍ!ñ+ÜJúÈç¡ÃŒ#¢å*ÅfÖyÐùa”ÑV±Í²‘ó}¤eèüeGI%4?Gy7— j—¶J˜}ÕÏB²Ž…§Ug¤”­ã•«뉰Sá¬gÓ]Ô﹋cs4d¡,7¯äm‘6*–vè]Jg‘îËË¡%G(ù‹ç¤ŽfpsòÐÉ ÖËQzsçP¬0Í1¼~ŠJŠ¢9¤v+è¹Í.@4‘FTdV„aÍ„p0Ä\dâô0‰Xµm­ëÎ&=uä¶|¶-,IÎ$¢íèß‹&ZΫÛnèõ$½ÂÏeZXÁ cÜ»üÃŽ]ˆù/ü¿Ç¦ü£æÏ8å<¦Õåyê<Û·<þH™¯T}=æ=ùâòû§«Ôj1 á´ª@šº%h÷~¦Z) –µåˆ ;Cìß¹Ô.Ý:&:kÉL„»E}À!qÇx̘`Td%äA¯rŽ–¹ä!­º­×¯T±ó³œ„êý òŠÅ`qíóO>W·ÏòMz¦¾ÕÄ;ÏTf´‹T“Û¯U¦:}ë1ÎþóçjüܾYŠÖ±þ³÷Ïûçïõïè­‹çëY¼Gé ¢´¤óŽ=g—_UGæëˆŠõ[ÐVXFe¦J5Ö\¹Žsšð1"X…)oh ÇJÍïyŠÖ&g×nÕ¥º«óÅ¢'¯œ{õµÏŸ/»Ûéë‚ø“+% qÞ¾ŒˆÇfŽ‹°éÎvH,}k™Lò糜Ÿ:¹š´– 6pMÅMJÏO>Ý¢zn9šòçYø|¶çIš×ª³Ó²·¸a`ïfêQŽ\›C1ÄΉ¼&èÒïº0H¬ø›¢QÆîu«.4Æ„ë·Å*µµ.jàdç´êÔ§D\×oˆMtóç±q²œŠm*Õª©u„Ú»jÖ•ˆŠÇ݈ žŽ¸ŽWŽS5µm¯´ýcª±ÕÜëÎ"k>ðD¶J0*ºÕ¹ÊÑŠHD¸‡!JbMh!VÛZÕ¬Sªb=3§Äm§ÁÕ„[g .!:YÚ·‘ zÔ®”ÜH§<Àvó$ví×¼ S°ÄÍå–JN½^ߜŖî!v*hA5ó‚ÄŸMHÈÍÚŠLKØda§×××Óʯx²†Àhφ͔4ˆ]Ä*³tZ(œh&cÆMe» ¼é†ÏTxþp¿½ßù ÿF»œ„ëÑ_ š’¢ó£T¦òIR¯vü˜VI2Nĵ×3nžsÏñB›YYºêźám4V}x¼}/hEWý®ž~¼<|Ìü•:¦þ.bK ¿\ýmÙTbTýóÓÏÑ陞Žud®³DT•aÃòï¶z®1Á™7LwNN¢“”uÚyz`Ù¨ ÎfÚ I®¨™iž^C, ¥LsòŽñ‰!yG]§ÕŸÊᬠǯÕÖî~6rm߯ôú˜]qšÝ\ç«ýþÿCæ.NЃi¸G­œžˆÅyö›ŽÕ¥§”sšÄLúòÅÉ]2»àÎLFø\[®3{” oàE¾hOŸ÷íóô<ÜìôÎoA ’ U!ЖµÉAª P­ï{Úõ­"-kÚgœÚ}Ì~ÂÊlÑ0f³r3Ñd±içh!Õ\D¼Z}æ-iç>óþ†Ž ¬.ú*-ì»[Zàá€6µiºLv{o7r¬S|9•lÊÚúۺΪõ䌦WÙð/nô1X„jJ¦:Õ¡!ƒ^Ôb£íÓ§CÿÖ{M•(0鉳òSÏ’ÝG Ñ ÉØ$ŽÜæ$·x™ŠQñªxäKÆŒÏù.ËìSëëëê‘ÏÚþkÛªÇߦ¿÷¿××ñðë¤dªó½ô•L~ð òQ“·Q¦ÂÅ![–ÅN"ƒS6Lp¶³‘8}ŽÝíËV•ƒˆ‡W´‡”ê@c\äf H­½ÅÊæã²ªÌÙµѹ æmqÛ›>’`Ìoƹˆ][|C!+R¶’7I·Nh'Ij¦¤ë‹ž“¤ãY£RõͲ±1J©Ä§dmš©±X;ÑkõOu}+6’æÊy‰Y a•ìV *€úh€J•^Í¢Ú×9`ê”A´KUOñk¯Žïþ7âUÆCJ˰Å *v/ÕâõüD…³ ÖŽ ¡^Ë2’wJÁÈC˜ä¹Žc^Å1Œ[MÊSók„¼ÍÈKÌÚö™µ¦f}]NùÄ,ÜB-ª;jœ`5‡î;Bi¡÷¥¬:2x×¹o[ùyRÎzzšÆ_OJA¥^Fss‰EŽú£o¥1§VD¡¸gŽ/ƒ ¨ž‹E‰_Cc)F[B…5 t.äéÁWP$uüá"]tí¬ñù*ÔØ© Ôô´«‹Kñ7.Ëë]§‹š†¬ˆ |,Ȫ¬ÒÁ)‚‡ÄÏÏ—×–½}}6æÒ^Æûbjá¹ å-pV3WykòÐÇÐbá¥|Š ±ëUÊŠ~p¿½ßù ÿA>àÑp„wø[ûBFx™}’rµeBŠ„Êt^Ý4 ޲´Ï>䨼ºk3øAËá6s¸·Cá9Úü"maøzŠöDòzòB¥µ«AµkJu®ÓNÕ¡­­lÜ…­nб¨ò¹à›ÿ±l¢ÛþÏW?Pæ>–~ª“i¬5šâï-6­`ê¢êŽqÎ:¹Ç£/E!.ÉS9l ƒ—}S]r£d=QÝæ>q×Xçèú3Ä‘ž³¿ eᯣ¨¥³ßì‰Ø%è?÷©úïZtuZ#ÔâSˆð¯³‘ÎM5óí§¯½©(CWT}õísC6æÎN0Mi ‹«¢¦pËx÷ší˜5½£ï­fgÓœ$·ÂÙÀ©ÄŠh+Ü3,0ÃõWÙº7tŠœŠÝTí­ê÷ïÍ~__ oŠxq]>¸ØÛÌ ÝË~ˆüB3V:çî¯oœÿ‡¯3SA,Õ;‚”û@M~éïûÌ\cîó:º‰yŠÖ&g×ÃiÄÜ?}oÀ„+³g%艙J†;ÒÜDLÊÝè~Ræ¶Š9iÅÆ)kE°$´¶èäìbë%¾QÓ«ªöö¬Lþ-­®Ç“ðŒO¹Ùò<Ì×c½Û/k»Úèîv‰ÑÕÕÛ¿.™¯û½}}Us·ËÛ½Ê&f³Zòç>ö·W¿û>Ü¢Óë7S‘“( <³<ªR&åè&ÄÈBòFÏIf2äç"(ýúJ:J1-Èævr¶‹ÐvÅÓP+Äw(4ÕIaWœvî* ´JÝ@Ö‘€s@IÉj+ˆE9{¥=æîwlÖÑjÄQh\¥¤)¦©»5Ãp.-©¢í,J´¢ñ;p$SMÆmÖïTs¡¤Z§ëá^#òþðïÞŸÞñü/£Èòü°ñ»}î÷ÙtuûzÓÚ6¾j&ËZ\_»ÜéPGF¥•š¯›Xª¬¶À–£ÇØhèJËäF+@ÅúoREë=]VŠ^‘Oiçï7úÄZìÏ®ƒRÿ(·)ÿ úLL{L}ÞÓí15Ÿx˜ü]ሗ¨âbä¨íjÖ#æùïÊ"±Î}þ‘<ÿ×ÔVÞõyõ÷GÓ×;פ•ŽU->RDsçËŸ)‹G×ÚÑhŽ©šò´óõÑôž©‹uôõó‰åóM}¦cü§—û>ܽ%U*Û«®²_oãT.Î;÷AÖKSe<·j&ÇAnªÇé>RÂ,µ  *úL6C6¥ûGT·\ñˆ"Å ;Ö+7éçKÚ³ê"9z°‰JÜwŽV­¿öçï[G+VyZ³ýxÙ†NÖíØœ´õrqëÊ’:ÌU­W3Õ1f×çûóHµê+ŒE½ó»Y–Ò6©P®d#­ˆIAüçÚt4ø\-øoÊ‹zÔƸX¥ó Gã/JX‘I´Ö:¢V莩¤Û®}­íÓï7¯¤}=h˜º¹ÀfÒØ~ÝÞëå9"Þjîî¡ÄMLÌí ”mhJ«Þæ¦UPáÎ)IuÖQ}-5²ó´ìu.ɲ¯Ÿ¯”fèºÐÔ•3c|Eöœ»±×j³ëâ<Ž€ZT½Ó ™ì¶N¢¸|ÍK¶úâ¸;«þDÝó z½ Ó-Zß/ïwþH?ÐÍ_‡8†œ3¡ÿäâÄc­¹Yv\‚/á4u‡ö“4·{¹ÕNŽQYêŸ\-Ç<{Äü!âeê‡<®`¸hœ:Þ§Ø×eläJÊš„Gÿµ“½IèìtÏ"‹éÄ*¯¨· pîp|Ci0|Pbmdž©ëpËKHûýh‰¬sùÒL¬ƒ™Ä|ñM\ÔGUÒøŠzEñE‹aRG6¥+ÕcóÎå¼ÏòÅújzü!ÄZc¯ð¸ß+Ò}ã«o'•«1÷Ç>q>•k)÷p¶8lÙ¯,°„èñÅsKu¬0Bš kœ„%®c}±fÄù½q”ñkj…øk‡ÖÄQð ¥V0ÆÚÇ­Åß’ÞôïtõÅI5çôåÇ$Z£ÌÆ_ðqñv€¥{KæÓÌXîø€*­[vÈïh¬wØ!)^¢zÙoðA„.w7kA}þ*â%¯ÄÍ‚Ãdÿ·üŒû”8­Tê]N¾Chð9©'‡ÊÁÉv,.~Ö™,@v°g¯ôº¨!Ò"Üùü¿_V7å§±ÂEÏâ¬Ã&¨†Ë.a}©nÑGH3¬Ijfç±f-½¦Ó>¿8éý¦M“á/x\ùö )ŸýYëÕ!Àq[ÿz™åòþ=lžŒÎŞF…`ÍKj Ž@a¡†ä¤DI9 ‹Ô™éisR¿_T’ršÖ9ûÿµíÊáï÷}}ý¹zI Ã*»¬w:˜uª&‚é¨:뎰_”+g¦&\9+/dD ÄröGêß•«¨¿*r>º­£¤vúh£žÐ¹\½žFX}Dú:©Ó{ÈA6åï6žT¯þ4òŸüÑ3?t{O¦,s°eža¦+wZ—4K/rÞ{•ü¦­Ýü¥ºˆ>IzÚ_n§Ó¦ÖÀôÚa ê< Q+Â=Z âŠØ¼£²._ÝÓ–vö†Îx–Å:›BNWØ»zM"ã%O’ Ã&¡^: Ï0ׄšºë´;¼ÂÎç‡KV3°TwJT»4ÎÅË_¨€9)ÄÛ>Šì´vgAÁ?Gt9ÑfØ:A]Qæjq&6¯ö>®„¹U$bÑívM›–Ë.ä§- ¡©œõŸIZhèBäcU­_€ñØzÕ(c_[ˆtYaÕSû&tûzIc¼"hR­:…pUM¥d™õõ¼´¥zbµŽQÊ"?á”G3´»±QÚÆµêŠ¢çk´ûv ÍuA~ã1ZHTEcG¦>3³Æœ®hD48Ú?Ú-µÜmc•,¡ç«ã Ëç8. ŠíQJ=VÊ¢e'¬ÊðÖ;é sh‰½]MX{Cb†- ›f”C<І¬S¶€­I­â¬å0o^óíÿ·?UÊá‰XNøÆy²<ÕÂ’ê†kK°Y¨™jlFXUjÑ`žÝÃÒöV¶U&—Â4ZÍóXR‰\‡H·U›Z6ýD>ý Pßɱ ‚’ µåq Ôö° [[æ´s¥þÎc¦>[[®Ô˜›G:ׯ¦ÑÕjÚ=ÿí<¾^U¯û¦"gþùÿÍËÒe¬×ìQÌ­ÔX¥¢cÛ—.A·?xú×”O¿(ü__Ida¯æj±äBª÷Ö_½Ú^í1æÊRhºÄ/ÎjõtM+Õ{V=NM8Cv‚œÓ'u³º–‚I&6XídXV[°Ä= nduT†±ƒ5jÀ›­ JQ AêiKÚ´8a ¬Ìµˆ¸á…Àx¥¢ ª‘ë3dË_5ÕÛ‘‹)fD"D9=+yqC}™+`šõ¸‹Iµ,•0™Y‘ ë°PÀ8 H ŒŽl2ˆ£µn2RÓKÒbÕ™‰üé{¿òAþ‚ÜoÜk^Ð_0$wá¥w`‹ùl6KóoEqW¹&¥z|iµ;\à¿<Ö3KøAü ¹ÅÙ™/IL5¸{3†óÊè?¹&‡„fˆðéÎ~ÊÖ§ÖkŠÜ•¸8Æ8Œü'ÄÕCáN7\å¶3õ3býÚüÆJ¼\¼Ge°"R"µž®ôiñNîó!—=Ÿ£ð@=Hó¯rE«åØàšVÑÈ雵»¤†jKRæÑ`+œ‡i°ëÞµ{·µ+nA§Y/ï­½oñHDÐÓâ=FiÃ#w«¾·¦ãDˬVÿ0hÉ9ú#•IH £Ÿ_9üLÀµ*ÊÜA'â*aÍÎ3®±Ý¤E ±™«^ (_$"­×uy‰½£ˆ´táë’Ô|™Ô è¯K•éb ØbjBVkTŠiN UÄF{Q`p×XwΜ*`´n­¶æœhÚƒ]Á[¯½Rcå7lŸ°G5Úyˆç"fKb—)g!Çœo¿vÚ7ç-5²¦RÆnÔm\º1Z&IT=†4b¹æ•œ5óúôQÐá±NXlmIŒÆŽº¨õ¶)x¬EVs‰à½ÙЂÙ(£ ˆ1^ÑIV”¬ÿwÊ9Þ¶·TÏ/yž™½¾¿ã3ÏФ=v0ºúiJÍú¢Ý3ojÄÛœtDÄÇ·Ö&=ùÖ‹ÃúÎÁ.`yU^ë #EÆmF»ê–5µhv‡kØâÄ0«wÖ×Ç(PLSm‚Ô>E•6…2€`¹ZØì0aXY¥€ëUrU–]x! 8yµì²\΀‡Qž÷U|4´ &Æi4›U„[E©RS+¤Ý°äpÜ$ ñx|ÈJV¬ºµW39œÕeöûÃY«ÂƉpËf§R;ôÀêXwýÖihç1ζŽV÷ŽSßáïé:¢DÉ.…éeå³*—nÇä›Ö¾z1`r6Š+Ôàr®ÚêhB ÅŠojTõØ ˆ¿å!;‹Þò¹ïJÙb”WºŒ4¥€ÉDAsä+ó½c§ôf³sí×òO(ˆ­¹r½­zÏ(µ;W­oå7ˆšÌóŽ\â}¿K”ÇøO¿¬u˜Öø*­«ièš¡p ç< Ê §Ë .œò^½Ä1;¥¿P³hÃëæémqCÿƒ›Ú„Q`çì[¹rœ4:i$ #ݺ_CK{ºöREV™–ròŸš> ÑXžL» L°–}𹥓šù*T9v–Ù±z¶Nhû`îTÅ`Ö&§FÝÎoaû¿²ãÆ‹U¦*ï^ÒBë- ÉhºìÜݤú®#$G+/C`õŽEs’eóÔ¸écØJŒ¤¨¨BнÞQZ’㎨µ«ÌZÙ»9mvUKâ©h8 Ê®ñ*‚ÇŒýgå4P™²â?0TªËGÄ'ͧ¯«§‚‚yÒ²õ»Ø›o¼ö…Z„UM\&GýâÖ+²ÓJ”9£uô—Ó²WÖzÄö¨ñåï똋BÁ,ô†¹häue^ê¤â'¡U{;NÌ‹x“ „kF¼V’–cˆ¸€=Iê³Øn«š¸Þ‚Vy—¢ÝiѲ- / vúJŽÕ3õŽ/0/ˆ¦ƒq#ž¡^¦P3Ö;ØqpÈËÄçñ.anEtp’Ð ÐVöµ4tL› y(õ¥@½àŠSºµ“mC˜}:?):-Ùáù_G¤WïGvíyÏŽ›¦àó%È7fýÈe`ÄNA€¬ªœÀ­æR­Sµ@\¢è%…FY æÝ59«K}}d`­%©u´NJ®åÕI˲¸íI ‘_ºãh*P%ÈQ¶%SÍD}”³Ô]ÖBv•P4ãîä):J׬·¹-˪÷µ¦gó¥ýîÿÉçè=ܼ­UU'–:k"£À\í£É¥\F"R–¼w¢+jÖmór™õ(Ï!{/×0j,¨û0÷ò•mZ^µˆæì\Uéë¥bÕçE‡Äé…ëíΈÉì?{R­j,šÒ^^õw¸H‹M+n›ri2»Šž½aeS …ÍN|º„aZÃ%yÄÇ:ÚcœzÐi]?]5Q;^GhÎq üŒÓf,Y¡|0lš—€0àÃpüµ)kIú}géÊy}ÓþþñåêóN\ý¹þèuGwô½¿»êÿ?ö~n^¢”÷´ûD÷ÿ—¤r#ˆÞyâ\*ÑaDAã>^x–p¡yW¡† ܵhR÷ JÞ4o'sUFÔÒÏee—pãbW5;ÃTš©Âí&« E— ü…—õ]Õø/_ƒ3×Oy]GmÑ乡F«ð‘˜ZZ‡ÓÒç ͨ¥2é4f€ug¸rºJ…þ ìy+ 3á¶ ÂÔ ¶tP Ï¦hUòÛ°wP$p, ¥rHA©Î6•ÖÂü äù+± @†À7†S%U´Î ˜]•ÏJ¿óÄ»+ëÌPÃtiïïÊ9ÏøÏøúúúâþk?"÷×áWX[UÜÁh» =ws»Ä¬câöeˆ €ÌDí †G6µs8¡¼ŒjjXÚ¿C@¾Z°‡¤– ŒÛˆ^7¡QÆ`-6ýzÙÁl*M¼Þ"á­‡¬RÈUÊlÇÏÐU`^JìAÄlàeL«t÷¬AâŽ8c';'%bhµ…gíwô®£5¨pLê„H|z±â¬ú:/´6¥‰½„&{yX„Ø¡é¥nÊK íQÁô¼tB;k¾³åêiÕt´]Y–¦ AOizˆrÙ ¢Žöu¹ªŠ!BºK±k¦ºáL²+T´×iù6Y0¿´ÏÑ2æ>Ï›v•yÕ@Ë$M¶ÂÍI™Èë«uMÊ\PÜvèz*³æÇ²$f.Ò•Éej3+TÓhë+Sb <æ. hZÐÁPú¦²3V½S©+õ´û^·­¿ú=6ú~ Æn‘qÄ¥¨J§—EóT%טŠAÑ…-Vì1M6øeáalÌŠ”¬C»Úlhš9öªKEV-@ŽðšbŠ(¤ {Æü‹Ž ~áz¯29ùmía—”M‡zý-ÿã[r˜™¥­Xµyóô©…¥ÌáµZÓ»K°ƒdŽádaén "twH¬T0?)†¨`¯ˆˆˆõÒZÖñ?ZÚ"Ñ<½ýâyÄûûú0tUÝ`ðI´[?ˆ3³ÂÞ+#€Ï kšÄ¯Ï~횯1ÜQÚç)8gˆ¿˜tá\þ%oA]ÍA´F8v— `êí²áuk’ÙñßjôW´ü=kšˆÙÆUqÎQËW#T‹µ¤HÈ‘Rˆ«’½ÑÞÀ,”’‘[†æªÀÑPu¬G©îV±zòé5yA+çí×ËÞžöçYç_~|¢Ü­QÞ4K/)• éêÛ#@Ä£&hB_7Y2Ý%ó™…ïvh:zêHûtÔj“äWâ9ÀmýZ÷ê Mv(ËJŒD ƒHëBG“U<þÛM/-ʦ~x¿½ßù üòØyjüo‹4‡ÏÄ,*N»úÛ.@ËL¼€Xd •±[5%TBsõ@üÎ=Õk‰Ù,÷mC2!~(‘Ãb¨)2+`¯0Õfä,¹Ú¥EU’X|ûk(.óžsÐÖƒ¯9÷žUVYÕWqbrë] €_¦z«Ô"Öô·)ˆ˜ç_iŽ~žo„ê|.!Ü_A8ËÑ 7i ¢V7É­ŠA•;n:}VYå"í9CµX$¯5‚Ac§·þ×ø}ñÊb}ënq5žV‰‰Ž~©ÃŽð¥i¥fÈÙ8Á'âÚà) hÄ«*þTšÉHÖ&%ô”EëìÔ¹ú'Ñø+k?Qbè Öl=ßœÏ(Ê.gÊ‚mœ‹² 7>{*°úf¢±•¸k~W©(KÌÚÑ3^ÔתB¶¿Ï1çÊÝ5å_o¯©÷õ[³}£‚Ášß¿H…Ãz˜õ°`6«cƒÑ)›Ê*Ù•ÀñØlI¨T©Ù9ꦵ,Åiz3 ‘•)‚*†—c¶88MÑXôËî ÛìæËÐ1÷Zl¶a‚öÅQŠ’B’×é)JóåZÅyG§lµ.ê¬g´1 WŽÐéžêHtȘâÔd¢¢}‚EeS‘{öèàãÖ—q.~xâ1],]  E·k/~ëŽÎ9AFÈÂB¸_Ü…œéSÊ7£a‡ul]û€™yïh*ú«ÊÐW³Ìºóä)O5>íújEÐVtK7iBßc^`‚>R/Mîölöš¢ä‘õYqGs&A*±æ™üfðŕ˜ôpŒîk“áùì]åžÄ]|ö˜Š³ü@ݳt_°¿já1¨ÙTY”°8/fë³´‘>jèã×Uz…ªøPÖ’©æI|²(ØVÐmzªÒ«It|%®×á†BŠ)a욬W¢#íp¢³Fluh)+g­f:„ö®ËÂÇÌÏ^ˆ—/-u•&Nx(ÊØ¬¾ºOöɧœ™¤@ÏàÿÉê)Ø&x|kǯ¯Ýé…Ü l0›XøL»4%ªp”Dˆ Š"ŨA’"ô½f¶÷‰õõüKÜ{Ò¤5تÅ"°H“ g"팑÷*YSÖ„´Zá5kÑéNÎ[1NO½XA´Ý»µ#ž}/­}°:«MQ¾¦¤‰¡š¯’KØ .ªºÙ_15ëœ6—>‚Õbv¬9v×I»$ ˆµØ:ë3EÂ_°£5•Eõô†e:ÞÖdiƒMq‹¹?hË8ŽZ( ºÚpÕ; ˆÇµzG>­…nqCR'}Ë xÁex“|\w*NvjÍ.e³ óÑQ±Q¨B¬aÓóÅýîÿÉç_×%$æàYÉR/sië3h^ZÃlB÷H©¬ôõÉoÒ1Þõ3úåó8£zÁÐâGç—Îïj*4å6eäŽe,Õéi¥[ÜÌ÷3n0\v3 ²Zp ‘Îå1‹jŒC¤{Ú÷´V±ï3ê—àÞ ÝßNñSW_BCÂøì«~]³æ³¯ÓýÉý¢4¤Ž²n÷E…Ýòx¯ð³•™õ&ž3ÉñX’¥~c³¦®eFú©®£‘ªät ‘4‹tAãÝÅŽ«ÚÁð8w-ºöσ´/t89}Ž®é«M]ZÞÄ )ðüùšJ7§¥4qò‡“į½R.À‰¶Š UwÅáÕ°dæÐpÂG’(‘i¸­*½á§œR?Jß,GùÏ´GügÖÈFm*å[ÐÞ'erNÞ¾„/J‹v´@r]Ù)üö‹) J¢ö˜å=t´«x‰ˆž_K{LÄÇøOÝ<¦mZŠé¯v‘?Ul3„n»{s¥§·hs9Áv4À{°>ÉK­§»ŽæB‡t‰/]ZF{§d@«°s°tЍÆJÅÞ¢–F¦½A,Cõp÷::ú~håÎ&¶‹×ëõŽªÇT{snqõ…²ÐðÇvLÑÕÎ[íÌVÔ³d›˜³´,€xõ©æîVX° ¹~lø ÈqgT¾KJ7UjQA©Óï>Ü¿Î}½&ªÃAëž\Ô‘ÑטÐO˜øi`¯˜°Þé÷Js…âåìŸÜ=‡öxÍö–šÏÀÈT³4Ü $ÅÑyÚM€ïè‹…ŠÙŸ³fglê”c†s³™•\:5iƵ×ü§È%*Ч=3«hŽØÖ1ßNñ” LÜÚƒìðv~Ÿ÷•ÍÅ>îsˆ–|·u*‡BÙÀ2æ 3À¨Â£k¬ÒÆ->Zƒ&¦Ñ8‡šÔ7Üì —c³ND±.*y·j·%þKV°KZ¶ˆúúúú›óçÎ}½ùûG´ßõü{Jj¹­Ÿ „,ÒÂÌÒÍ 6›QžÔA̧è;"<¯ÿ(&öŠÙ¢¡ÃÄáœíS³t‰I×{V9Jß3¼û¬êElÊÀ†T(nP¿‘kÚߟ/ïwþH?;À˜1öàË~2ÔZß-á¹XMZ}¤¤¦ž®Òf"à³¯Ø Ÿ¦³ÂÜ uâ%­X[‰tSòVƒž ]>P‚fT7U‰¢âÅ(⊋¹øßKršW-ÇÁ„+é/ðzºeDúÂb97M? M uÃD@L5@Ī*ÃïX ÑFõÈÁ{ij q8ÿÏì8låñƒ6ž8g§ÓEâE£A’~ˤ85Âæ’µs¥²‡Oµ³–dÕm¨̶J)dĽêÏv•jÙTÝt ƒ®ÓD.%i^Ñ«[ä <ó4ÅJ?šÍê3–uNeXÈ-úX£ Qy+Såµ5E €}‘PÎ4ÐRHtYT×\gl£\CY%‚ObÅMw-fˆÍˆVJ{Ø…9y!LRÚd—9 2[ÖîIfIÕ×ïëY÷|ŽÊUÜÜå“óM¤é¼Ö*­«KÔ„ï‹)„‚ÅÞ–Ÿ]ˆ’U;¦ù3άàJEN³°NŠÒ2„â$T‚ I[Tƒ½bôµm[V&9zÉÈEP+çªÏ²ßŎׄ½*Ñû-¡Ø£Z¤X„p®_´F`t¹ú\]§õžmömnš‘³w;B™“vV¤ZDªÒ˜ÁQzˆïZ(sµ#ÔÓŸ)ý*_Úf–¤Ç?þŒòå3YµyÇ?K0sÞ÷¹ØÇÛ¬BŠÊ ß›çŸ2 ƒV Õ¦,͆¿(žs?HX¼7ÅxNnÙzY- ™vœäÎÍñ»KðJ¨A†DµâhW.ÁZU® g)Läs>(Ð3—ËKáÉx ßÂLÔO•{&iuÆÓqÐ.· rvCÕÚ§©õøR>RáÛÍk„ÙZË- ^u…ͳ—,tÕÎ :ó,)åzѪ’^Uf=ý/ÊÞßk3w?³å<¿Æ=ùOùÏøúúúÍO;¤¯6ØÐQy½ßeã Š [P#›šGH’Þ‚Ž¾«’•¬úÇ?U>á¦FþÒ>¶Kºk ÀèÖZù¦u=p¾p;2Q©EÓ/œ"–ÖH.|s„8Œxé>V @¤²»x³~ª c#ÆuT`M÷Áä¸ ž:ƒ@ UE 8ºÁ *~SQ§ëe6«—¼-\´eU0ùâþ÷äƒó£ÿäÞÿêÿüO_õÿû?ñü_„þ‰‡øHâ Vþòµal³“NQjŒáµH˜äAÌZ–µÐáý‹\>6†!3EH›wàù/™–,JÍ"iX Ô·¼ÞŒuÐqZX¿¥ëN¹– ‹/Kˆ4ìb@j¶fBõ#$¯éÜÅ-äK.!ŽfX`R^Òµa­Lã‰>»%¹*_4¹b¶m‰X'f( Í®nÐ9)H¨Crò­ÉÃü<ÎÍçˆîzñv¾Š£Í»Ê-Y9âK[Jˆ¥ÙoBtbI.¿{MlÜçÚùã`Ôl_•|AÅ(^ó`5²ö½Ø„*+åždÀ„ Цma©×e+ ‰kb£­-=5)¨²ô)""×¢à¤ÏHGÓÄ,熻ôÏLÛÍæKÚÈ:è‘(ø-]ãI²²Wqh*"‚½ü¼£4(Y­õ72ó±0§ÌÓ{Ȱ™o$Vg½¡Œ7mzvEV\Ó¢Ÿ ë• y”o˃w>;š ñŸLŒè*vß!~Np¦‚:(K¶¢h¶ /¨W¨°›Ç¤ò2+úO1Aª¨b&ä½g¹33i¨Ä!Ò–)Ø5èB0r "½ãaai—àd07nºful¿ç©ÊÛJTË"•X½YïÀmUîQšiN¿Dy„mÐ<mA›¹ÊšJM¥‡?„Ë¢ÖlÛ€,‰«ø¶aŠºô£ÑZ¬ZÁ'O;Ä|´µkAôÚcŸ./LÛ¦-6é¯9¬úúúŠS¯yåZÇ××À£R“¾Ö‰tÜLä÷NÒ!µG‘R‰r´4³Ð t«H=ƒ¢®èBe9£×ˆE¼.JŰœsXØQÇ[=Іç‰Ð2±b,~´©“@¡š M¢—C/ˆ5'vPâ½m¯ ¥O[ô‹ÇÉU ¢Ö]à47'Ö[L£q M(Ö0>šÎÅæµO/6± 0ˆ ¶›©Ð­¦¥¨­v =]ª”µ£ËGP´e2žŠéeÔú©0UìuKj$ðÄÐ/o”Á¤%è0Gi½=ç!s’æ9{Æ1m7)LKÍ®B’ó7¹/3kÚfÖ™™õ¬^Ô6YJ˹!·.âõçiµ'¦Ò;Ât=¶Ô¹oØ`0RõWÞ>ž»eˆ$s‰ˆ÷çÕ÷tòù¢Þü½¾±3_¤Ï¤UG‰3AVs3n®þbkjµò2ªT±k‰+›·}fÇž•ì»DžÒõ\Íh«‘µ§ÄÚ‰°Y¡U<®ñ×ñ-z,Ÿ-‡u¦Ü´E×G-Y'ŒU¨â¿nÅyϯÒõˆ¦ºvɦœæEcVÂzo0:®ßäˆHüÇ/eŽ1*¢¸©hüù{¿òAùÞãJuUtŸ· q×ä§Àø’Âí6Yç¾^è³óV:jÁçº8›õúþÛVÀÒD9œnGvN‰Zg#Іˆ©cº,±•„¶h·[cÊ œ Ì×>ôŽÞÓòóxg‹«¹Ãù|2ÏX­š%Qøî6¾¨&b´ßØV´Ýi‹Nr%Y ½™«?,¨Xmpêá,¼£:ÊfiAª%´ÈU`ÎÏ zLZ©xÅ­'þU0î o °Eîfä›ûbÙ V2ê€Qk©u–çñëè*Î`X­gM†›¶_ nÜFZ«ÛˆÛm'¸…Þ¦(XPèÍ“ÍÎVKRÖÎn°ÕQÏ+‹˜ñÜ[aìl€à晚Ñ<Àu¨ ,¸U¡» ŒK†îö|âˆQzP¬Zvyyš^´½-õ¥ë¬ò÷Žq>ÞÓÿßïëoŠqY!ÙÆÔºÀá¥sêB»_9–J»0๋hœÔHI0vˆ´~áÚãÕ2³ ª×ªÍ¾Ö†…̼đØaÍ6Â|5c¢«ÃgÉaq^ôîÄúBâ\ýJ8R¡¤¾_ÄÕù#ÙÝêë«’Þ…e6Šaƒ8éæ›;<¬µ <ë~Sú-Ë—)žq_üþ—)3Tv‘×&Q“h…cGfEX·Ã_Ïb“KÚ‡¬„ãê¸þ×®–½oÄx˜èðÇ BMbÁÖÌ»H¹¯Žåe7|PY¦ÒÕJ»Z´Ì9†vèí`£¡XÎí^¾;ßÚ\b:ìð¨wxœ.¨j’Ž«ªºr)Ù9Ë`Ó ޅ£Ó©EÎÎÒe†œÍÈL‰›¾ñ4B³-(ÃÊæ0Iø0ô˜rrE =mÚúLÒâv1Yu|‹+'ÎvžÒEn†¼ û$í´V×AÈçIíwÛ´œ­: *Ö¥ï‚Ö1¢Ë ?¾¿I^ÒR®ÏzÔT븻;¥i<Æç©l/,’ÝæÕ\y®„4RIß„CµpÃPKõÒãg‡q×Ì_UŽÓŽ.í&©”3m—tÂ'’– &sàJ©ŒŠN3#a8;Ñ£¥–<ý!çüU$ôùž¢ÏgVÌ®«caRÖ%˜²¬]v×0â}él܇ÈñìsÜ«go”Žï24 DVû$Šº‘¦){…5íèÖ¯(¤ržž]Ë@ú¹ÿÙêêÿ‡.qõõŠÕ·+VÑ1jϼZ'Úbb}¦'ï‰õŸÃøÇX iK}›hÔX^*l¿x¹»&é­zìInçGUºmkÑw÷—{~;!ÍÁÍ­4 ¢(ñÕw@€gY›ãÑÓ/”¦j¯²ÿl Ë}˜ ´ÏÎIÍÍÜ€¤ŠÆm³v‡r“´¸(C_ C¹/ÓIè/{r­f}ü1¢õÈJ‰w³grM[±uDÅ´‡2!$Ó½1©d²Ö¡Þ ´·?Aqœ¨•^ª×ßÉ;“{ rœ[òñ {£v œÚô+D®|ÅgTµ¯aèéŽÅ*ò؃ÛÎÂd€cQ‰rÅ€Ú–°Ðïy(iH±*ßûKÅ2­´‚¨¾ ¢/¿3«2O‰V« s6%ÍTÁã¶ê?jé>ÖõI‘þx¿½ßù üî†.˜¤Èi,EY¥m4¿EãÚâ$|Ã0­ÒP–¿0ËJ^=ëé®âSM¸¯Æp°?´Ø4šQ. Ì@Üä­è p€×ñtª^ªe#Ò|Ah%§„ø‡8—§•¼dµW¯9÷ùg½(·ùO¿·?ÇÄÆvñk%ªî2Ô¬–Fr2+ˆU) Úîv®ÛÐ7y–˜ ‡ÞšÀçÚÚù~Ÿ§Õ=Ïû_£Ûúû³þ·©]£«§û¿Óç[E£—8Ÿ¬×ü=,Êí°Æ‰{žreL+x­¢‹xŽFìä1Üb¦Qÿf9kôýw¨Æ>:kÁ>—죒º¬ÙS6 cuoP¢¤[<ã)ÇÏMÛ®>à—*J®"½Ä¬ãBúšŒ–[}°©ìJ¾<©š½tóŽÚë-ãÃ,Ð ;5Õ&F+6åEÈ£ A‚ò3.=XbW3ví1Cv!ÈU×4<`ŸÓI*Ð0³œ³å¶W&®gü¢:ƒa\¡§ñ!ÑqZÎÜ=–l‡´Ü¶¿—ÅK›ˆB5âébgŒåŒÝØaRW_ZjÖñU¤>­1ÂèÜ»*—•€º™[x¸ïéåÕbÂ9/ì_Ú"ôϦæNvs.ªdÍøÈÆ5æ½è#@›¬²%"þ;ö¹µ%b½¬Ä‡ÒžzÕ­A$ „kÔ +œéóå<Ý`ÙmÓ¹u´#0³–ñ»¥;3ù‹\¯¯7d¬T«¦žs ÖK›øôÌOqWˆ¬s_ÒxãmmPxê; õž Á{¹ 5š°Õñ“Q©á" ò!xSGj°© W— îw\ÌH!ð/åS™T“†$ž·¶xˆ:l1T­” ñK“ ¥ƒ ÃG!¼Ñ„ßhŠQœÂnrŠÍÞ`”ºÅôÖžVR\9Þ¹Ê$³Êá¯uƒ+z2ÁD9è%?]©«œ½:ƒaöµò¨Ìö³¸raÁ8ûRõ…Îþ‚¨ðú”2}÷Ö¼ë°V¯EsF¬ºïl>ÇÎ+Û›âñºkŒlÌ®ØYo4mgbˆü™È*.,Ñ.¬AGz‹Ž«¥ƒ·ðŽþ•õñ’ÍØÁ¥ÃäÓBÎlÙJæî ô:}Z+sæ uG¢ŽÆ–r#Ø‹gò%ßÔC±R,‚/v5Õ³™€çUži7mE¯ï>¬S»rDò¯·Ýô™çí^Vå=SË”ò÷çê=ÿ¶ÞÊÛ&+ÃÎήu ,³V^³#i•K­ÒB¸ÉÛè#pJZ{V£üI†›»|.䮞v¨íÍÑçg!Óò/Iá…ñÚräÛR·O«KÝK‘¹7«¨ÃÞ7¥µá¡V4ôÆ«3Pµ$hÁEL|45Ú-ÙÓ‘ˆšuÍlikÊÙ}\³C±¡Æ°žýÿæç€ax¢ÝÍ oNíºi,/þ^¤ù~On÷w-É9²ŽCÐt“•1œ™¯`V‚@³ÒšV¹‚Kê&«)øíJ žÕº\Š4o¢¼÷Ö¯—ZÄÅ'M¦Ë Ú?>_Þïü~zîì¦vtU,…§5‹#¿ý£Ñä®jØN‹™ÀÛ-HzùPëöƒ,:±ÖVõŒÕ8«Œ0™â$˜5©žÀZmJ‚•náÉÍ©é»IˆC¯¼r¹Àão‚¸ÓVšØï!W˜É fØz*nä1ÅmbžÕ­ ×”Íkrù+1ïë ­õÚ-[RýÚÛDiZ¥ÿ¤¬³˜¿úñó}ÿ‰ž ÁÛáäÜÒ܇4õr°Ú+ Õ—ò嫨©ìцߗŒ Ë€tãiÓ7 ¬¸•Å1r-#(¡&RØÐÑVþ! ˆ³–ºŽªC@³Mf /l¦% `ÎWÇ4]­˜¯Ä²*LEJøyÏd‚M Ö‰V¡z]ƒ*øÅÊ›úúÇ®vŸ¨ëÊ~ïÒ·8ÿÇŸÿ7ŸÝê,;ÈoÊ;··]~îqË•¯Ê:bßX¯.®¨­+ë7%‚Ó« žjÅ9$t]`*†ÍôÒ÷íÔ†Ž».3ߢ–¼ ªj9ÎW/mÝm±”ÃÙ0@´ð»sÑ[Zü>ÔJùæ´%Ýi[ _þqNSV£â=\vŽt%mKG9Žu´r˜ç¦=¾ø˜˜û½~UfÍ›^¾ò‰´$›ž¡_·A>ut†.Ùdd´—<Óp}”r½üŠ%•§{†xm l¬Áç®ÐŠÇy Öl@lÀcZ¡§H‘ªìYÕ«,ÐWy•)ïË—¥ÕÐqçRLUXÙa¦—H6Ç*«CÞáWŸŒ:öŠRB%ù×äŽYàÛÀw<;4PJ²çmdfÚJ…w4.Z)–×@ŠFÒ:M¢Xî‰aVo VüLùk g"ç3vnLbÙwµò‚È“;NºíöÌNŠ >™±hÐQÕ|˜:?¯â¹Ò¡A'¸(Ò´ÚÄlw›Qµ0Á0eÄ„ò”©I¡ÅR1îe×–w½à§PwŠBöiß°‚!GŽ€„Q »2ÃlGÓœûÚ~ùÿ¥ôóºo§~êÌ‹—]-Êk>Ö‹Pƒ½-a˜$­ÂpÞá5.+Þ“º\J4ud»<7S#’&nŠ¢…ƒÎ(ÿ"/\¬~²cmõMJ“8{‚Ðáuñ×l-‰£¾;Õ -g™ðTm¢-U2ÃdpÄ– R’¶±.F¶χ±•Éyûq.¢oÓ²(J¤² h*’¸Æ•Æ” k¸¥Zì,óK<ï%Ã鯯tz­7–rPÊÐ[®ªvs\"·˜¤õYQåêØ—)†9(xÃ𓌛°]%aMÎ"uàB»çÄTж‘#ÊÎc>–euŠÞ ÈR£¿:Ú¿-¢c”ÄÇ´ÄÄý&'Úcëë2¼*8·&2|¯3Dz<”ÕVMñO òøŸ_Gupôõ}§U\X½ã$†;Ãð½†Su‚«Å±¦P2cV꛾1Ë݈ü|G‘ØêóòUÒò{œ»_sÅìö»s×ä|o¯¹Ý§kÆé퓽Ô/Ï÷»ÿ$žQn!ÊWYt\«ëºÚ£U µ"Õ©©"9i`š õDÜvµ)5°qr2ò~Sae ¢´ÇÓªŠˆUž_w8ü{»jG6Õ\!VÜé†t_4 ò(X<2·Vû†Çg±y¥I7©Yd¶1‹r†I! RÚHcœ·™±KÚÄ)oiµï6½¦ff}WšnÆ5JS&¬^©VLPÑqW”Âôhc7X€ÝŽÒà ™=‰#½¦“Ϭw¯Ö—ˆ˜‰åíŽS1jÏÖ'ÚknV+ÜÂV8³~ÀFKֲɯ½Xs´ Ìõ̦—ìŒóÓ|z:Èñž»bXZ#C&r€¼ Ã X×K\ƒó® “~´0¼Ñ…86ší©Ä\$)‘ö9ïäÙÖÌç›rây;h¸Éƒ `,$¯IT¢íBuîùÑÉÔ8ËÆÒSNŠGqƒg®®ŸÚ\}ª6p‰c5ö²˜JF†³¤ &k(óÀbøæBÁj±oš” ½ãÒ°:£QqÜ‘{Ô4¤Ö+ëëé¯Ý¥Ó‘0@†Hlk€,xþ[„K1b‚OÏqJ4Ââ-JúúúíïX$sûþéå3þëråÏïå÷úû–•U!HõÌŠ‡b€«G¥?F…5VX&´|ת¡‹O!Ö+èv¯M¨9/õGË”Ö}£ß»·úÞÖõk5·M«hšÚ³ï[DûLLOÖ&=¦'ëëâ£3›V£?âU§>^ìù9#€y}¶ñ¦ðn×ÚôvþoB5„XTÅ0ÄŽð™j.FACríÜ £j\⭦à µë0æÑ‹wðrMhÊ[ŠÖ]¤eµ¯†òz–€-F–X~nRnU²šâ’xHÖ6Öc2vµS³Z¾xR®!\ ì˜ÖñuáÖ˜qCÝ’êQA,Ø_U—êÑ•¨¢=½½!¨ÎbcQ X鼪Œ…Å»‘S¨HqfÃX8®AÔÝ‚]kÞAÆ;EiÙ8áofbÃÄøÈ éfÍØñ„ËP¸+…›5VHnšÍïGŸ"tø€;j\Z©ËtÄþÏN}ªP,—ÎÑø‰µ™•.ç@à(Â0âæócñëqƒ40éo‹›Ü§ÃוÙyK º&Þì«× ̨|†6fLÐiùâþ÷äƒö-M*u§¦©U7*†Ä\}›+÷ÄqQµ i3XDì4š+Ô8ôX+æÈZagc[54²×¿pUÊÓqWÍ¡Uû*yƒÓ¥nØ]–Í=>£ßîõõõ=s£^ŸyŸiçõŽ^ÓÏýüâ"yýÑ…®+’ZKÝŠ®0ä@“ØÓhÌÔ=Ãç RmqÍ,H½ EKOŒ{ƒ2¨)Ÿ& FÏlæKÀÚlRo1¶ä6‡K)ØŽßxg½©g•qO=pè¥.,E¼¤É›[¸1AÓ/Eê»"ë`sÈ—´ZÞ—tBî ³£\=éRõPL1Å K®¹Ø­E2œ«2׿#ËÖ;73_ª× Ui¶ `†½ºw`æîÖ«ÈGFNëOê'’ºW¸Õ—5_¡èÙo\\ôÄA¶Àh©>s¹HCL 4U† ´0‚cË Ñ^‚0*và%úÖáòU\Ý›VEÝ‚Ž—Švƒ Üí=é‘}gæ¤M¹S£ßª'¦³Î³Ëä›ýóú…·òô3 Ú©Æž¢l R†×½*~Ë# d[”Šö)=]6ˆ†,Bw ¯3nÈÒXI®¥fmiUÄ5éòP`­B*ôÛ×I pEoÊ=û+Ý`öìÂÑa•ˆŠNäÙP¬ ,^±#z²'hdÇ–€³ø‹cùÌ2ÝŽæÑ! =5¼fŽØ‡AT"a‘#@˜Ùâ Ù°±ÿ 1Ýñê¸Þ€åFÌß.éèäZ–ìEÖI4Všf-Œf_-ƒ^Äeƒždý–ýW-­h=Ér^m$¿W¼ÚÓëëëëé}ýfŒ²˜ˆê4!…26M7L‘sƒ˜­éEŒZ:f(à īØ9 AǕŜ*c½$V¾;•âÍÏOaTØ#Íå‹ös¯@˜‰ å qš9 e8H÷ô³RkrÍZ÷^·‰-@ršÖ§8®»9BX¯E¸£<ý3ñ>÷ q2ÙÛ±å2UÇ“M9áÙÇ( ­Ã£lƒŠ\XÖ›9 §+^Ôus¢èH‚åU¥Y„Qs":ì±x°Ê"V-[E©xç½|Gc>6¿\T¸Q£Vߤ¨ùª<ÓtbÅ%—ݪËÁ"ëèD©æ0$×àî#M×Ów²ÚËV;c¹gºö˜ÔHëIŠw˜t“@¨Ä,¨x§` jég˨ec„;^Õ¯)ñ ¡•£³…€ÞuwWbëiHfÐ<¤xZ˜UáE)â!„Ø.šì2Ó0¶¢!8š;©ìã0z´K¶Ëîü¬Ïç‹ûÝÿ’ØŠúÚo6 ¬ÓHFq*Ë1ÈÉhBR¿bš­Y~tfžo‹X«I£Õ›}¦]l½æœ9ZdݱÔTîœ÷¹IÐ:Puë¼ôŽ•¤|µˆŽ±^ÇÍïÓóŠ#œý§/iŽúXé¯8žu§ËÔ$3ToAÓõöSDm£vÇs´¸(B“¶·é¤ôŽ—¼üµ™õZþ§[{e+¬¦NpBn"ÕL²ð 5K›‘â\%cH{dYúT˜P±Ï%Vù<9Á¨e´ÀT£›z³¿±r"@”gA’‰%ñÊÜÕêx Ð. žÜ.€Cô"\…Q„Ê#ŠëŸ á8¦¥ F`߬%⤫j“½f=§Ñ\Ø`ÏñW`¦f`t¥bnÑo&åAtç$ö+OÐŽ^¹Ž‘H´ÌÅyõÌDýÝsï<¾œç×?Pu¤|»uÇišÏµçç‰÷‰ö¼õG´ÄSå뵺`\Cn2 µ+œ2·ÂÁä&,憫¹éø®<0›–hafµ3«šñKDÎPé?_3Lr½Líæd­ûâ¨h†a^ákJ²"ÔÀ…ªÖÃjÍŽé9¸–©³ttZÚ%̨sC¢Òö›Œº¢ ï;Ü·5ZX´fçfìT¶e‰#ûÈiqw 殉³)JÓqC¹¢îl"ÁÚ–2ôi]йwd±Ÿxg8EjËÑ~3$9T¼Ïˆðæ+Pf«¢•© äëk–b‹9y™qœ'vŸF2E] >r£Úš\5°Ö$÷ÌŽ¸‚{JÚê³U¦Å˜&“‡®·e‘¸£êŽJäíM6ÆN"Š3iR¥„= –Je»˜-¹¢nªç-ß}¸/MáSè=Í¢4Û[Q&³_µB&òÇM±E‡SÓ¼»©Ü©`£ê¥bá¸ï^u´Z}XEˆ¸ï­YÿÛÚb}âcÞ³111ë¡N³Gøs¯]}§Þöù)ËÛÚ~^s=<¦}åM® â¤qTÑ´"’H=»µwò •U%š…ÌÈÞÈú„ÒWè¥Yõ‘òêˆÞj¨Æ‡kΔ»÷ðìçb ÍÖíÜÒìÚóiÙÌz‘ƒvsÌ‹ˆhÀiR7UË`6NÊ¡ïyê'’ÞÔñ%žšwdV‡ôÏÃP¿—¡Íd/§¤ÊKÐ5aõE›¢²­-fmÛaÊ,³%jÞV‚Á3ã³PtWânkçãe)›žš'f;A“S5,áé°ªP4j뢳VoÓqI‰è<}ĺ­•„ð>-â=„#‡»Ù„.Ç–¸ÎÓZ *¡¥G`·ùM¥·e¥2ñ;Y9{Ÿ&{¸8ÚA”ù#Jªó !h“³žËæ5\Z¤lY$ËQ™V½‚Ãok:×L×í\y×Û/Ýýá›i£“Úc¸V ~q×kûðÏ ¢¤H,ÜTšèëZµŠee‹9 v®®iKDÇ[yÍk<Í[Õªuæwtxow?3ŸvËaQ­qYzý½H•`˜‹0Ýj'¹—PÅ"Æ1²³k£Õ/(íæo+8 \Õvù"CžµoyrV(fŒÐ8S‡³£|qî0ËûBÅÎQ#<Æ}foTud”:üÌ5Ñ·n…ÍÌœ£“|KÃ3ÎqNÁgi¾×û3£¾àÔêÿ?€ŸýŸXØSÆ|fýóB·qâEb¦. œ¼ì\`egš¯i‚åÒ?a¢’ 06ž/Í÷»ÿ$±eqª[‡t.9³vû ”ä9Å%r /yšQ“ܸ㺿×Ôûú²yûZY‰ù-iš™Í.¶Y ¢`¤²vOöI)BX)©,Öç<’îè8Ëî±Ñ'mÑ–KÐ:ŠÃ×%úJœíò”¥yV±êóÕýõ^_NžQÙåþÝusöúòû¹ÉÕ˹KSüyuVkôöçõÿU÷õõô+sù`±×ôýSËëÿo£éïÏü¹úÅ`³h§L[œýÞÓþÊyýÓþïMc¬oìñ¡U©í(Õq‰°€ÚLæ©Ý§~Åf«^„b댰We¯®5ã3j!Ÿ‘(%˜Ëì#Î¥ó­›Ãü5‚ÓCC/·ñv!)&±lc6åóm[Yf%°)°žù€AeÃsGrÝh¤³])§k6+öçÍ«m2¨Tï€#+Õk¹ `α"(ZÔä_gOùíæ 0[)N·n\EÖ]Ÿ_¨ÉŠ´PÖ’3ŸÐáØç©Ï„áIJ3®$g@"µa@üŽÅN?As^´ü\±X£EÁïÜ¢Öø‚â ºsŸðk†Î1ÿÛjiõ/¿¥É%.vÆuì|]ä¹SK%©ŽSp“þ™SÇ!½ž~¤ÞÙœs0;Kx`WŠ8yŠ­¦ A(¾‚…‰¶vþ} _ÔIÊ‘bx®¥/~ ÄÏæKûÝÿ’ØŒ«A+2"…Î:©#(L"E†Qvµ;ÖizLÖÑ1>ž? q¶_\¶Ü ††Ü>|*9ò³í©›ñKѪ;ЪK쪄ö­zµ¤S$ÁÌ ÓwkEŽã$hš™‰ä©Ùä¬$5—WW`†5 W¬åÌÕa•1Ñhš…®62 ì2ÅyE‰Û Ì5|†ï1ÚEz\áƒ4Ñ(šýØ’³‰´V„U™X„]…Î;„ëœ7‘˜& "¤DJÚ„ë¥âkh‰__]Ž]Siö÷åÓ?ísû¹ø{Äòõoí6›^ä^+|MsŒ z­åÞDþf˜ô ÛšYa÷ó)Ö;P¥é<]w‰À}tÁ×­c·å ’ñhj ¸þoYº?„w±¸oš–ò™Ð³Ûzè­elzf§…f,`±vD“'Ão0D.…ÁÛ|ŒúpN%ò©W·šÑjËÀ¡vï™Uî„Y£° ñÂÆºÙÒ õ«㢠™šÅ„^S_¯8ý*Ú#ÚôŸyêüñγY˜œæ¸›7oI!Câk­ª ¢’'áÖ]P«šÐ¨µ~Vñ¸–‘µSp1ÎÌáSäÈ8l›y†ÄÌcÊq.õ³»—=Cè-PÐýŸbš,¸ÄŸ¡»Æ×îÀë ˜¡c°q3ÙFiSX7nâ;l ¶ƒªq•gh‡pÕ&‡œÀsô P%­¡#ÊÄ`á£7 k¹§u2`±áµHœ­®`Ü‹;~‡Ã­…ý^)`ÇßбUÖÁÖ{ÇRP£m.»W33Òt¨£È<çT)§[ 'óŒ÷oP©²3ÐŒºe<`¤2\C4fóœÙ*˜ â·ñîçP‰=ºú ìè±sZvž]¨»O )C{¤X6`®¶$‡hí,VLÙF?™³~uòZ¡¸÷ˆLƒ¾xϤÆN1Š@—¢çåRÏÄÛ¸øŽ–²õ³V+¡žEÖÉc+‡3r“è¦~6I…;™¸u“ rU â8jÌŒ÷UAÅ~áû¬5a *7qÄx !˜Ú c£=”R–´o0°>y‹˜ß=Éy+,‡e’Üì0{ا9‹i!LclB”·µ®B^Ó{ÚfÖ™™õïèöè¼–¥‡y›Z³Î‘ÕS3Êbñ~C™ŽšDtÖÓèk&´ã¨X4±ŒÃ&´ GÌ…)KjŽƒ¤MïkEkï1êµçÊ¿ÿ¯C±JBÐ4«R^öªëwŒ~Ð+yžÈìc™‹‘ZÉÎbôõ–ó?‹ÉVÑÊkX ík«<º‡Îf±^™çjW£ôfñ!'׌æ–~©tß.ÍYɽÏã´ª`WÄnõWTmÃ=€W›2!ÔƒY?¢mT69øO_ ŠÅZóçÄÕU)ö÷éœiÒÿ—™û½9ÆHå¬ßàå‘iíÔ³Ä/ç«×ñ0ϯ_`¸ë¶¢ùýn†xÔ ã©UŒÕ-³A œsÔ3Ô‚£´{Z„«zÌ}bb}p·S¤CÈѦ'ôbÜ5ÄeE#7§Ú9Z³¢1̃é9:iÎäÌ—÷»ÿ$±fâ(v–/´ÍZ¸;u²aäŒn®øü£¼‡:½,,6×`\ Ä{DG©’uDÓÞ—¤ô’-3‰é¿µç•mÕ[WýiŽu‰‚öÊX³A€31{W¾0Y€–"b./%eØíÛ;à yuŽ–‰:“ZyÉ3ÓRÏ)žªOÒ¥´ûOW*^g®Ö¥º¤—DTF ¤ó:™y+Ú•‘ÄÔn꺒f7ÚV|qçšÁoè ­BŽÚ™úäUŽÁšÅ,=`•T˜\ÉéE©sÛ¼f’tEIj¨Â£¨ÌÔžõZy_ß”òûùÜs÷û¹Ç?ñõ™ÅîðùÒÉ»ê…wŸ\>;ƲӢ¥§5ίˆç´õÄHùŽR²­Î_pú®bÚâIŒŠ¯àfå A£+.¨T”PTL)Ô7²@j2"üÏh•TwØy* ÔM— 'fSï0ßAX$ØÆèq¦â–bö%EÐÌb¬Xdå1õ¯ûU·ÝjOÝoøÄÍgfbrØmN'â­Nȉ¨‘]ðå¬Úw)·&IÌ%-x* y¥ àÉàÜj©±˜ W/,°Zá¯ÔhµWÐj>Jv“ƒÍœY2y ˆCð6"‘ÞÑíér¸?•òÊ–BÍÄõÏf¯ÀY st÷àBïv;Ô]… p˜4y…¼3ƒá#VŠÐÃÊófÙµ¯Q ì¶ok˜*­Ôªé•%–îßÕ„N|­÷ÖyZ&'ª¶‰ÿÚ"ÑÎ&'—)‰¯8ô&uªMTó £2£êQrÑŒÕQ½d–o¡-$Cð" ³„q N"n½³j5cT<ÇjÖ¡I>à‚µMᤠ+äHFF;]òÇt—™ôÖg¤G‹^¿'O+VÔ‹Ï8ëç[Z+X¥¹}¥¦Õ·(šG¿¯¯ª‚Ö¯Ú}ÓÊ}£—9å?áíï÷[§Õ<±Œ—a5›V23sØx)Mb…cO1EcFä Nh_B•#g`ʲ[{ñçea¿¿Ne•v3DEŒÚ I3Ô'ð^Ñ-ضÀy‚Ê¿~«( ¡Â>‰&øwjRîö|Ÿ êï|þWÃ9\en’ÅQ'r²£3Ûé‘Eo[E¬IåNSíþÿ»ü½}}øznç1 ?›&ÉÞ‹‘užµ¼E®¸˜fR7)*,’¬)`ž µŠÇ(òôf)ó®RÍùóçaØœ­nätÖ"²I´c«Û¦/n¹Ž¯¯¯¯­—Ôgj€É·uáS៼֪ŽÍ£Ì™e<´©WUWç¶ÅnÙ‡[×Úy{Ç)¤Ök1jÏÝòÌ|³5úLǤ8»cŠŒ–1©ªg ‹,UœËéÉm¶ÓFT#¥Ô†Ø!r¦µpé?•U”px‹˜Áðk½µ·£¥§u‡jÜZTDU ½¢uš%Ó±’yy²s[0¯‰ñmfe´Û6‚9‘›hQãg--§?_V¬,ÂÌÚƒg]#‹;Æ37—!i·-럶"Ñl.9-HnÏ*¸;×,d+˜€aðž^ªŽÒPT»}³mÕ6  ÆfjÅÒ쫘¶q•±ü!6`ÿï_~@OþF¤a& Is®'H~k¯®~ ¥ª[’“æÐU*ZVɆ>ÖVí% eÖÎÚÚž¼@Ë,‰eø‹a+'[ä–’<€›ÎKÍ~jÁ }›C+)Ÿäd¨Ð­Û>áC]ý|¢"±$™ŠÂ>¾¾¾»}|£ýyûýÿÃÒ¢ÃÑ&T+z–H€×P¯Þ¦³øÉ@ßlb%É ƒ^]]`Ê®!ªRÀÍ㮎#ÖÈñî‹«è_$m”×°^»G²æ]¬@rª¥CMÚÖ_4bWÇ7ö›ƒ”àÉYag²´Ûyîóh\Å3ÁV]nµ °ûÁ!MÅ4‡‘©¸ð}ƒ“iÒ‹KrÍîm^‡€ÑyjA*Ò!Ñy^l¢¿¹ÊÙµ™¢÷Ò´÷Mt³óó¥»ÉŒc™gª¨Ùh¶`Å3$¥ÜfÐ*¥Š‘õõ5žSùgŸ¼O?oxûãü}©~a’é\¤¢®t_®ByÀÕÇ÷$ñT•ýBND…'ÿü7“à‘èWK\$ÖÚ Xµàw—êP>©nlúzt¨TÀxXÜ]Õm‚÷ke.ˆ‚^€¹Éž­s2a§Sg^“œèót‹} ¾³¹j¦º®jƒ;gUñy¤…3B 9 ÀX+¹«o‰ %Ñ”A,‡‡÷>CH¨>ü0Au]T½–0ì0d'"—‡4 Ì;Ä&,;W«åõñê‚çܿӟúµù¦y}ñÏ”ó£ÔG·/W¨¢½%£Ÿ·>‚VÓÿÆb&#Ÿ·?¬Ä{ú;!Dð•lÊÄÐb’¾uN²WÑe/8ý¥~#ðñË¡ÞòÙ´ˆk€Ä0‡zûýÞ‹#µbÝ|Ïèÿ¯Ë§ß¯£«·÷uôóöõXçHô}eÃc¤±QÏdƒµfÂiÚi2¥$\û¶ƒ=Ëw)K }‰©l;Oícëèää (-Š•·øCa̪@õ=Š5‰æTó"4+šU̪ÝA‰Â‹=ð†øÝâd[nä…Ç•˜:RÚ—W­‡]—Daæa‡IwÝ«#´xvô¦j¢È °TQqóè ëŽ!לͧ¦•ˆçi›[ëi™™ŸÆlœíOáhqYßá~˜§[v³=Uδ‘Ô8éX”†Ì:é°¨ÄÅ=S11fJVÞ}»÷´5tš·[ºš,r‰;“Þ÷å*5ÁA¬ŠŸ™/ïwþH?câÊì~·ñrö¿Wÿšú8ªýŸüËðÿÒü£ÿ†~WÞõõô~«WŸ\{ÄtûtW¦?JÞñ^Q3Ïæ˜›DV'¦/Br½&“ΟãËßÛþ×8ùf9L[”ÄÄúI3o¡–û·kIØ,øk¬¶Ä`Åîë2Xh¨;Œ½p'^Ô– w Yzò× $îö2®™5DÏw¼ ¶Ï£ŽÝ6¤âÓ"ÔîÅ1Nј•Aw,Û}ŽRŸ4²ägç/XC8g<ÍÊ”Iμâ T¯¢éqBNñ:^Z,ÚeÓø—|Ì=Ÿ9yL™ŒÚÊ®eÙ «4µa`hî© å“¥ž<ÔSAP$¦j ƒ/ž¢à¥b‰©VäJ÷ncÀ«!oÑYõú^‹¼Û™-h™ÿ üÑó>ÔçÑw*ý#éèb‰ý+u[é˦¿wøþ”Öc—øO¿øÇâ±¢,2O;[µ1KO/­m¯TÏû==V´Í¹Ìóô ðÿàß§¸³a×øÈ—âr³p%ho´¡*²è–Ï–óå¡e@à[“)i¸Ï»«Ó° 57ñFBYek_ B–Hf® Úûì²y¯+¥¿Q}~—«ÞIÕRÅ&¿ö:kšG¼ûsŽçұ̓í3ÎeL\E¼ýFíyU^úë÷|@‘Ó}³E)кå'Ú¼æ½5çy¬N³„pª®¶zpâÙfc‡·šL&”Ó.Ñ™rU™LXÚ*'"»àÜ_¦3¯éýlq“‡0r¥pfP詈ºÞb«P‡·q¡e‘¦© à,ÕU‰¯ gqËVS`Úh™¹PKž­§\¼ÄTRs±B÷lëæµs×…áyi€ÚixšÚ³Óh·:Íf=¦³ïí1?O]4ù­o–±þ3ÿ·ßëƒò¸hvÏἦ=t|%äúZ CZZ Z†|Àó˜§xÂ.ÓK‹˜VA$¨¹ÌêÈ%ĺŒ´Uj†‹/Y>åKu× »H'¦ƒl´@•¥ á”-dÆv†‹Ž²†f;;œN^)²Z&¦? áC™7¾k?“/}ö³¥žüÀìYO)°4µ^‡Ê£å–7 ׄ¯`ÀÝC9à›4×V¡:Ê×-"^ÜM€Ça™Ÿ²&|£8Ñkš ÅMavWRÏAò)jŒº.h7Îä z²O]­#ƒ·J÷4‚Ðæ£.cQ«O¾AÕFDeƒ7›,£.C¬³@ÃÛ>*\. ƒ1›¦šï ØäL¨Ø¨uÎ9å=$âk<­jÏÖ·­oY‹V&&x3‹7¸Tsòü6öá só_ÅÌÜò‘lOŸ©GB8æHìMoÊ?ýgßô¹òþÆá}9~÷ŸãïÏëê-Å\QÅÈ—Þ|Ù· Ë­~kÚ^‹VÐ…¬E*w<1@æ+rf®¹“¦n×WÅòü—]_ÀÇЊÉɼå‰E*0ôrt]ô &Ì*®Ù*ùïvè§%Õ`½¡j@ÃYË£‡["öë&J—ñsØ'Ƀ:ªý ¾ÕIéqÊš‰dשjºJåêL& ÓBRdW˜¸úmx¯D{Eã¦m[E¦×Ÿ—”ó›uzý/MüU6¦ê@B6ÛÓQp3ä¬O(±’â µj¦6V ¥°Ò,ÈÏy,-PßÀÏÂáÌuá„ä·Ä˺šGÏUq¹l¿;š¨ÙÀ¯°ÌkÖK¦»vÿ%XC÷·ÝèI¥Äþ”9L¬µS,¹Î×UË&ó -I£ ©×`Y€8/U¾Ÿ‹üýhp®ƒl´r—o·$I&£2³«ÙŸ•Ëõ[C>©„ðe®ÊÄOÏ—÷»ÿ$²l'¨üiV·)­És–gŒ¹ËáÆt‘±@0ôÖ»7ü¥4GÓÕ¨JõDÇ)ÿ÷‰¬Lr˜Ÿxž|½3Ãxv›—T ˜Œãz%È–[N,E&0U©Z5Ä:ö£ m˜D"‚ ˆ†šmç:Žòo.eZpu(û«ž´(úÄJUŽ±Þ·¯:Ú'×××t†°ï~sÈ]5›gªf~³íÿL¹Ÿ“ðܨøxl5Šû©*é’åzyo݆: #¢òª2ÉÈ0A@#‰Ü‹ò`óz‚}‘µáɬ6L• ©«ÉRV)hÜRíÝUMf*·“U3\z•Ë{$b~§GÍ]³å±f °Ój[®N¤k’˜ê”Ø„#¦ S[tÍm^V‰÷‰‰ö˜´O´Äý&'ëé˜Î°- ,gH6M9€§¨kYæAç3=_`нíÇ÷ ?A-Ì®®6;‡(€öŽð¨ù˜ì!Ÿ ¸É:Ž´pªÙƒ0ºéÃ&$ޝáNÄü)V²×‰áõyé¿^aò[èýnGÞ·WfIþ·E>¾¾¾¬2û—Í\º¹ÿœ{ĺb}kc_{AÔõ)Q1 °fZ¥.ÊV?aû_ΠL²×M…,{ç‘FÞ­Ô’MZþ)õÃCÆZ—á÷5–Ñ‘n ÍG/E5È>ÉGåA´yiçÙ´è® ®«DÕÊ¯Ž¢¬µÂv]Žmlv‘" :ðóˆòD¬çêÞ³'ªvs4®sF–h§)èl \*ƒ¢LÉwN…Ü-¢”î°Éºã‰žd;Nd1(:ÚÑ“‘À÷pò13ÒÑâ|œìÖ¿?ãŽ`ÍŽi¨LëH„K¨Á+Ô«%gÎñ³›¦:úº¬i«–'|.Õ;B#¦±\µ<¶`½µj?)ƒöhÐ CŽ›GãÅœÁ”´é~5k` ÆU“-LGnºìÅ„%S*GU™Õröa[”móåýîÿÉì{.üdåèiÈ;žô"¡Zíwz Úîvº;²tsêè·.™ÐÙu«2}SYÒOQl%ä–˜„–ïתŠ(%$·ahyÛ£®ß___Ar† ©ÄÂ….à$'‡4 ËBV¤¥©hšLW—¼sõvõJwÜ'GqÆÎc6NÝ C‚3{ÉïZ"•­¯1ZÖ±òÇ#QçVYVâ-ÉÈÖ½€ÀÛPà¥õ‘x€ +0ÊíŒ\{,Ô¢¥kÆÆÍo]«ôôBaµë¹D¼0É?ºIz£ ´A,´Þ¶1ê9‚K8å•óµk5}ŒÖã-õæ¥ ¯Ÿr4‘xàÔ—c£1y½¢š„'m‡Ä ž!o-„ÈŒÍô5ꯗaŽé¦v © ­oò‰Ï]€¥Ýƒ5aUˆ¼êªZx²Ò­aê"òA¹;pØHÂÆ À½ÓigQ(QT$ÒÕ L"Óœ%;¸,+0:hÝI ÜU[ü…n‡•_­üIŸ*á®q.À…eGÛ)*Å e†A佂6 FXfÓ#™ ¡ËJtÔ†¢ËP–‰µ@̶›ôòŠÌÍ­Ê""#ߟÝ˗ן· 9«nóôWÇ.„”ä}ßÊ8XÐdÅ-mp±L𜿡œ’ E;kDLoâ!;ù‘6ç¡sA6¨Ü«)5Ž2[Nè•ßèYfG\ÇUrå­$Ð\Bï p„Þ9§KĈâ1OÖe/‡[O®ê_Éïvz|¥ú;WèðpöÑ–´ ŽQÎ!]Y±n,¨¯ÞºlkÇFì‰uŒàüö”\'f­ßo‹øt[U^þ? æ‘­–å°×£O+]ÔDðô•’@ƒKi¸õJ?)u—+•­M^™˜‰¾'ücŸÓ~–þÌÖgëêÎy}mÿÝê´¤Eb#éˆpØÖ 4ªo$puP½¶ÑÐ (6*!j”is M.»tа¸IJbð÷ åð›  ½2ã3ÇhÙúƒêMt²uæôqý-†È'v´²f³×wg±Íô§á#ÌÞÌ»õ!E£z ¨¶ÇeDfãyZwÄÓ1œ¥R$xÚž>ª,j‚êÜ-RË™,zgæ”ÔlÃj¦!F´9€©ÜK[¯,Û¾2­aþ|¿½ßù ýÓ)ÜïRìÖ‡°lÐjÍAišÛ¿e¤µ |»kTÿ+úP¼l|;¬œÃ€ºÆO$ÑSŽ*A|+5›üRÒÝ`‚°oÝLnµê‘|›!®“9íSª{LŽiÜ¥J@÷îÙZÄ*6W¹7Dȉx÷ômqfè!cÑfµ(“7ÍX¶°+Ø;Õ¬[ÉTd-m68>YîÒ-Š ‘±òŽ—‰›urë·o·Õn|ï>Ü­¹Íº+1èìed®Ï¿QÍ=ƒC‹Q¢x¹‰¨¶s¨yV"Ww»°øNLðÛ±Iív ëðVõŽfuÆ{kÃ*f¹;E7Ž ûàé‚+$Š+Ÿœ¼ÛÆ_×ï裡ðÐöë"T.ÒyB:PÍ×"ófâ¹(nŠÈ¯T”]¹ÕÚ_ÂUØrïxá¶zÔÞY Ãi–Ý–íö¨!AûŽÐb+mè£ÃúE5§Jб_54 Ñ¢,v,©Õ;ý|^׉I}&®‘•ZJaÈ õ¯èÏÜJªJý~[¿åžu·+VÑãë¨Ív×ì—”ˆpsAûdñÛ¹V§h§ì “ÁzÖ q,ÕÃEÏ•†–~kYyܤ¾d³m%†.î—C¡(y£µàufŸÂZË…ˆe—¶´owQ’6~V-©I$ýšàï”Å¢ª‹¡erß°¨„žšG®c¤Dþ‘:m=3{rúŸMmÊ:¦b"m×ÎÆb+½MMJÞ?Âcü¦9ÄýknS<­Y‹GÝ1è: ÃÄÒ‘,Uˆ–ʲ›µa‹l4«¬ÂÑpV›tmP'·r÷™”ãíöW(8êŒ "€UA‹®g.ªÔ<ËÔt¨+Û¤E"f‘JÓëêõ´ü¶¬ÖÑÏî˜å>ñïè…>á*ÁBÇ„‚YEnÃ(d• všqœ&6ç³eØÈþÐ[±c¥Ô0F«)àìs”¢î³fØ}?"ÙRU›¡X¹,6L¹CðÕ?±§­¬ÜÛêÆRúÄC®BC„¾]šH-¼­ÑËì7ÈÎØkŸ8 fÓ¢N¢wÈ\ŒášS6®¦v\³QÁª?9À+ߺýbïH*Y´V ¿.‰$GOHßâî,áœL^ì.GøÆ³ÒrÒþ8SËøb7x·%y–ƒf¶•eÙ‹ RVL޾ö¾«@jÔHz cîóà¬%(ÜÔ+^UèÈ:Yn1T ¼.ý=UB%–XCë€tÒ „CŠŒBëZ t¬R”ˆ­b"?`/ïwþH?c³•)löWeyèX±‰oZ^ãû+ÕËE¯BVážFŠž+œÇ3šd†5ænRóÕ{—çkÞö™µí3ÎÓ<çßÔ ±ÂÕ¡iREL¹¨Â戼LAq á¿é £¡)1zVcKÒÕü-¸»ý²8BÀY"òQ‰A”–uJ[¢Âd5- B@î3çèê¶­ûG9s­¹DÄÅ«6¡zÍH"Ž×…jW¸ï[O¡ÄÏ´sž_çíËþïûÿÊ:õÅzâñÎ"yOO)Ž~Ó/¿¿?§´ýÐÛ‡Ë5N5ˆZçmåêÊw1_\K—Àdô›Í3e²Ê—euFòÙÀÓÃ[Õª¦ÎÐ@d 9šÁy^øZyE´`ô•wס/“‰Fºf>£iëcÍÃEÁJÒªÕ0Õ£2º‹Ô›Ü 3‘•²°Íº¦¬µˆô<î+<»C øórü^j>Éjy-Öö:„MaÄ .O,Cdz*0¨}^á¾á°|O†WdçÍ%kûÎpSt4Ö) ð÷/¢VÊSþ5fÌÁoG¦Í²C%u¯š¸R†ßTÚ«lÙÕÈ–ºÁã'£æß˜­ O)õõõäª`Ö–ê'jó5éÒ¬S sOnžUŠrˆê·Ý±Ã¶'œÀù8*Þ•8X.©y9Ø%ñrÐîG`t¡‰ø¡ÎÂÇìØ–ìµO![±ÛµFC+6ì1ãjÇŽÍ ›& EW» œµÞÌ&®k_)'[[W&’3ÒZŰ™yŒ6*•4bTÓ+Pç<Üi«Ä |ׂšèóx´WQµ äTŒ KнQæ-BtügˆµóÉc飙š¦=vŒâq¦,û.Ó.PVFò]m+²{T7¢£æÄV>ïT:Ÿè`7°Î ÑqE¤ÅÆQ^+q’“¥¢-Y‰ˆôÂ"Žæ>+]N y¸ çÖÛDûzkgÒ Z Ô°iÍX jÃ-„ݲ¦Ð>'^q´ßí2êYF¹™Œ–@íÑ;‹x£‰j·2—KLm®xÍÖ9*WÐ[¹ê4Ã5Y  Æ]5Ãݘ7{µØh‹ýÓ€ºO†…ØÂÊÊÄ!G¬ë«‰‚X¥Ô7\^’©B2¸­léÚ-e@3ôÏì%ýîÿÉìi4!õÓ?m6Y¿U+Ù Wu'+Z&üØtéZÿk×ÓÛ­íZüÑíëŸW vo"ÑŸ²\â´E§««¤fûˆ Þd3ÊÔùûw§p½yÖâ‚éŽ.’tøºm©óh×Ê—Ñ Ÿ1ToÔ&T kÜõŠWjß—SÑô4x›Qœè!•V¹ù¡Ê!Ê?|º6á5De©ieKˆJþ²9ü®²‚ÂÍáÉFßx,AÚ·ªîÍós_([÷â¹@u–Â}ÐTHд[­ ô$1S œm:ì®Ϊ†+MÖ—5$© 4¼º¼ÙsöÙS¼¹j+ÜD½k3éq>†U_ N„hªE¬hî±þȵ­Ä`Þµ›Õ¡àYžßŒâ¥5»QK_ÛÚܹMz¢I_x˜ù©ÕXç÷Ì{×ë :â‡UM]¬ò’zèÀÄI\Ý6ë¿E¨Zuv/Ñz¬U á6“!Dšö¯}’ˆ!ë0vä¬RJÃ$À[””Ì@ú®RŽ•µë.U q³c}p3S7,Wr€ð´ÑY­_ˆù 4®’,"çè¡]O[#}ç´PÏFº¾Yi’ sºïy¡iL„y'‘Þ´²0Eñ[3Øê?9Dd¨· ŠÏ ”³úžîžÚ&]’;+Ñ@l¯[mN^~u`i ì *øô<9©4â2ÖS‰åÇŸk!´úT×ÏZWL¤©ŽRÚ-ÜÿijTc¸Ñ™Ð9˜?xÖ-Í{Û­“׋ä!K$ܽw¹&Þü§‘5ÊáßtƒY»e+.3Ù§n¤»F%Ê{Œ5iKó´U¥-òŒ~¾¾†–bè:n¾Âh®fÚ7lv);K‚„);b¥Ë~šÏHé{ÏËYŸUG{9¼¦Ì¸4"%•v½Ð"ßüáŸÞ,ؘIš‰µ˜þ¾¸c…ô’@¹Ýœ®PÈâxgä®r 1äÌ&w¸@U‡4E·^òÇ˰t”ÐQ[¬:Åe¡'75 )øÊ²“Bó ò1öÎ;Šñ÷^9{s˜ç_ºÔçÊõ™¬ýÓ>¢Ž>³yjØ•wILçE8¨ve–Ä®Â÷©Ëݽ{AµI~T˜ŸYðûÍÀδ-EsP È¢K¹H((B|-@w9…í® ŠKZ’¼Qðçi„b®ˆôŠ2QC·?Ó±yC¯ÃÙ¡ìŸp+} HŽÈ Î™ ½PLé¤Ã`Ï^ð[wŸ EqªÐNI#JvÀksä;òáÚgÓ(_c†ÛèÇÊYÍ3”[‘[UEÝ»=G†ˆÜ±ä<ÒÉ[Nïa‡öþ÷äƒö73¯5ÝÁyˆÜ}Qò=Ñ”uartbXwíc$G:ǯîdz®†€ë5]ðVb&Õ‰›v˜Ua¥m{]{Ú³*å]“…`AJc^‚E[¥)-†:sµÉ{LV”¬M­iˆˆçèúvRø_‘âá‰`ú‚¯*%ab#JÏpl2XµÅ3¬}¬…\¾#PJ®â {±æ$ÃV×ê\½•Ø9•­È9ì㤡/cíW$Š­ßI‘Yaͨijó4M x%‹y¬Žd4±ª^¡’êÞ¾„æB°šÎZ¨XU,}¬KG-­q]ª2Bƒô®» Ò[İus*zG—6’R"}ÕVÊÑòRÓb žó×5½¤qγzS¶×…´‡|¶írXfz,Êï×ç±õ„9#Q[¶¹«ViÞ¯£•ÚÞufCAj |ê€Ýu¯}Ö\&]×Ù*ÔTWV장 `Mjùúy¹ÚKŠjQ®ò‹´½ Z^•-DqÞ•-hBR/X‹Eozóåiç­ƒÃÔbèëh³àaðšÑ}Oã¨^þ^`ô¾@jÅ.K(ÅØ]¢u±44ë7 Þ ø×X!Tø~[ ž,uÝdÚ9wJÈö×F¾cw­Ùç#èôŸãâ›D.âl*Ø6mb¬¬`Ãn]Ar~5Ù>‹^–m–ÈAlîà*¼LZýªÏ±íN_ëO8¬tÌD{Lóÿ úóôTìZ¡½è&EÝ€4Þj6AäcvMXê§yp¿¢`µ¸©“‹—H&‹ï UæF[Ôp_c˜Ò¸Žq&°¢\tÔ +-s^½"çWG ù’‘yoléaåâ¼ÒBžÎ»)d¾btÜ«'X»K Í-X%-0>9àqàJñ´4ç ~Éù –Ä–‘}ZQôUÎB„@÷£v®°ssÌæƒÐO…áNáÖ!ÎáÜÅ0ŽAÕžµu„¤ŒÓTª 5ß²N‰Rx CbAMÃÜN¸¿9‚­d#zí]Œ×BÍÚ³uÒI”µË$Zí©1:0ZPLú¶ƒº ïð®3+Èœ&YRÆQÝzÓHУ¸>V‡YÝϲ/·nxhœâ³¡VSTNjðÿ˜­Fáâñ>á4ÒÉ ™-ƒzc(’bøä¯gÏØÖ6s€Q¥ß1Ö¹™ÓÙÔ›º¯«nBßšŠƒºCJ§NJ"Ý”×ikP\ýcq ŠÇ[e Ó]‹&ÐX øæ0»EVæ/.† ôUVê‘”qlíŽ"m… ÕŽo2 (¶Z‰]•L#¦LòEKòÉkR“Zh`7u'º"2¤Mü Š ZƒEJ^ƒh]=iÕÈËÉldÌ»1CSGMÑ„-é>î‹al1 —X#'¥([µ KV•! zÄD^ö·9ðüd¥°h³aÐÔâV›ÚªË•C¡2©=†È•ê>ƒa•AaJÝ&§b83%SŒE³Ê'ŸÏ L´.Y^Úµ¦ßܲqiQ´2Ý߇œÉݽ÷M`ì²üè\‚#"mT‘ ·)ˆÒôÏŠ tißµÔ á/öQ뇴ô»Rî†:à¿] ä¬2‰ä²•Y¨Á×;*˜„X%`B£üñ{¿òAû-—ËÏK4$šàAP&Õ¥,[ z’I ÇI¼ÇTÖ”¯>UOß üÛ¢ùNçF¡š ²Ñˆc†¾"L «T—êç¶Jý›Ð’/ øŒfâpâW+Œ6´‡`¥C0 à¥äzY.åQê%ÍBÞ1‚ÑÑW Q¹ò ’ÔQFª5ÜùDdÛg•‰Eݯ‘ä­mÜ,Ž>oYJîh ´Ø  ØEê"fiKhÍ¢Ãq¢çw¬´©wWv”hbŠ(»¥UÊ#VRÑdÆ ÛcæÖoœøóQ –²K€«]ÎìÐÀí+êþ ·¥*ÁØEsŒÕ´ˆ‰ò¬…z׫ºÎ8¥‡i´T›µÃÚ¼9«¥AÇŽSªƒ¯¤ï.›¥ÛmÕ6ž–Nª6¹yw  ô¥k‰`uÑqÐKã,ZôfÃib2'Íü„$JÄ=ZŠ0{8j Šå‘Ã@RZ¶`š‡‚ù-‰"¾QMH£_%Fߌ¨(¼y]º_ÐìR÷O´%ŠN²\¤ù¬B^Ó6¹-içkO½§Þyú×h‘Z@y¬­hµ-Üó–F×åKLÓò”Î>’E/=}=¥¬5ö…jÕ\c‹Ezî{@©N©šÅz­h¯TÚ±ùÌÇ×Óºí­¶Êø;È2úƒž i¯”;¬è]ZTĉkœ9¶R½âW*Me)‹kkR`Ó'39:´ §@²Qc©žrTI‰° ²ªƒeö4®21cÃJ#«TW[$·5AGd!é3a÷k¬.¡ª^\0Ó”Žu4ú½ T%-KלÇ:Ú9Z9Ç)iúÄÄÇÝ>»öµ>øŸ–ÑþÕgï¬ýßIû¦"Ñ1 U¥ªòcisºŽU¼´ÂaÝ…!ýªödq`Õüà›wkÎÔD¾J…O>´X! |HÓe• ì4G{+P·y‘ëvV]qË¥À Ò”Vµæ"+iµ§•kï33>Ñõ™û½\ßq/6¬LDOG?’&+íÎ)Ê'ëï÷Ï×ñƒ[ÃQ³"uÛñÞŒ‹ž!jhYõ¢ã†U7GeÌÄ"ëˆåÊ¿îÅÃ_ÈCawu–Í:Ž…r„¿ç”3§]ŠÁ»cr‚¸þ{­JEÃ=&çËûÝÿ’Úd¨ìig±Cˆ×¡3g£FN2P¢':‰qùuEóÞ´°É•¥·¥;/SÀ9YT³\ŠJ–À3í݇ËZÏ€Oë§@ºkHŸœÃ‹u‘µð+™JŸì"ëß]«!BûáµW¼AÆ2†ÝËVã!&–ŽÞyÙbXVáµâÄf÷ \¯Ùþ¥ª‹ ›vYû§îµY`]l7¤Üå‘­ÐNí$û”wˆˆèg¢[å_–,y÷¿éÛªß_VÔA’æ0KÔŒ­—g—\šõôöbf³f+k‹ª¶-Ô!ÊBØb×Ún²Ï} ÜÞvSL¡J3Y\"W°•Ú#'T•tedT¦ˆ^2J®…—BëöFJ[]‹0ú®°µ‚XPKY<ŠÛ3®·ŸŠM6h{\‘u–ªèƶÐÚÄE„’5ƒ<醪BµéX#,^¸æHAR;†½)Îå}þkÒ>hñü…¹„ =l2®aü¤x‹Œ”¼Z·¥¢-[ÄÄÄLz{c½šÛÌV¬¡˜Ä jzÊÈYi‚’ž/s³Ð~°®¨‚B·±Æy`2ÕËÄóC<ã´Õª²£wèÝ©¤°Ð¹H!³Ô¹üœÄÕÅ­®Ï*¯Iy¢®{/4] y}Éaa}š„Eb¬ò¬^kÐþ­vÈ%Xbì‡V¦™sEÙù@È`#+ Œ#‹}ÂiÎk¹¥ŒLùòvØÌª‰4ã+‚õ ­Þ’ Úñ$…m‹Jssl´£N³j}3õŠúçíÏü};Ź'`ú'‘_G8’;T U5“³zBA„5¢åX·=šë¼¯qcUŸCG5Fô]7_a4W3m¶;¥×¡ Nå¿M'¤t½ç•k3è³[€¬Œ×FW`è·nn» )b‘1Φ ˆ¹Çö€5ëÓ$šÛf³15Ÿi‰i‰‰úL}ñ?OBG5Fô7_e4W3m¶;˜µÁBË~šÏHékÏ*ÖgÖëâ:4ã4ºxwu[´$D£^B>‘+¡¦É¤TWi%›AÜ *׈'[2º<3©ý–Ü×â1Žt’ÿž'ƒü%t³Ç0Õ:TCzš!æ©ðo…Íæ\°.ÃÅ80E²ôøæËFz Œ¥zg‹ B\Lú½64¬l°Q⬿Š% B2SÂÈl°‚a&fbkgö(öšÎ=žÈ´~M"KÒ²)€ÅÛ%ªþ;ëh)n˜î¬H¿h–Ø`~ÅUªˆÂ±Uf‚d=u‚Š“<¿>_Þïü~ÚlÍ1w_š—§*cÖ&Ò¤˜·iuOM¹Z—¥®P«”¢¼Ü¼Håó{…˜PHˆNö¦/ãÒt.ÁÁ$ÈäÅødTñ[Å¿r²?5Z2æ„wj'´MS™q–”¥Æ½%Õµoø_Êé;–$‘z7éd¤ËËÕU¬f¬_ðÁ©ž"8ŸsÂrÁ†£¦ì‚æéC‹²½ÂÞf9Í ˜ðQªxUN¤…[¼ùéÉÀ…Òë°{6^D5e€ÖÌÏbÅ쪉µ˜4šd.;ªûRK ymÙ\f蕊Q¯îÙ€Á{µŽqÓËÓYÌV¶Bš[å­K~Ž.í JrÖ‡\“KvŽ1’#ª±êü<É”ðÝ£‹SAƒ\+™zÞ‹C Æ,ˆA!,Õª \œè[Q5È£ ÉÛ')‹ˆ‘òw¬Í Iåj󥧤” ¯ÒQ’•çÕ÷ú¦hÉѬɯY´Z´žUåKWæ‹|ÑÊbbcëÎ=y{I-¶õë5³º æd¥?a*¥…T¡Nk E K ¹nÐéÊ@žE¾ÎÆ?ŽU‚Ö¤›«ˉžÔÇ{¥Ž»–÷`Ñ1PÀ²V¶¦'¨óß#iëA תú÷1 ÖÒ];Ñ|³Mט"Ì3 ‹w·p3ö¸žö°3Òs5=°ã®ø1¦1“ …äa½–ì³.æ=šŽ}n`O‘4:ÓÄÛm*èa-¹¬ódIqÜ£¯ctضÆ{×¢ÄJíªKÙv "˜åj·eF…¡DlÍJ|ŠíhˆµW܉T ËPÜÕ…bž:ÎAK#¢Ý«h²’påÕÎ#K­vH9*£˜˜׃¶¨ÓZL;µKÇŽNõE×fR6¥¤æìD n¿[IðÙ,÷¹ƒ™:w¨µ\gÐ3G[Ù}ä]L´©ì0Œ©®M@8@ôÚŒUM…íØ5Ð9(^]ÁóÅýîÿÉæ6ÖÐrTÉÐ ©Ð¾†SFï“âôyÊ‘U/ŠSbogic6Cy¤{¾NÜ4x“X¡oSâ{|8­„ |Ô8wRø‡8e¯;ÛXLñ\ÈGzÌÆ}ý`pÖSqùí® ,Fœ¢t¸jÕËÚ¨è/œ‡ÀÓbÈ6R_ÿ€l­÷ö‘÷­#ÁGV‹ër¯s TFÈÛ¤}ɯÃ4h»'Çé™J°··:žÕå3þqŒÀ0î#´©Q³B ƒ¼M.;Òf·¥¢kjÌÄÄÄú¢©,ºk «¶º¡à]ìKôU¨ëÔKZöé¬u^Ö´ûÌúWq#Éò ±`Íe„ü¬­ ôw<œú±ˆÜ‚ë••AÔáÚ)ýDM½ÿßëô¾ï§¦7Ó–:V0¤I.Hå¢,i~¬ƒ•o{ÂE¤iR p!k±áÞˆDÉOÉflAf?Hºj`eŠÒ8¸º»dµEkRÖæ§Ò~o¯ÚVX(lÊŠ;5“«[6Éd%+#‚1f‡Okö§”Ÿ{M*g.*•„YªëvofF3©[Aï:%†‘ÇßÑm‡yÚ·!X)Ù?¨ûjÇ·¿¿¯Œ#ÔÍ—ÎoO³Vš#Ʀ „›7©%ib[íjŠ)S’ :¸Ðr²«u åºïJR oÝ·>à„ÇMg¢Ö­—d ar‚À*å”è L+ÄЃ%&jJZ&·¬ÌZ&'ÓNå`Þ® JQ3Ã,½áÁ¤ÕjEñ-vŽÈûaƒ’Z‚ AdÕ>>f6&HŇÍðÌÕnÎ>ã "ú$TwñCœ «I§Pü¦  ˜Mø1–¼<›Ó±Î…±µ”XÆCmR¶ºì™ª‡/JáíKùo2™L"]fÔ[g ºRŽ^óH©û•¹vÞhmä ®’6Q:ˆ„‚Œl1rYPtZfI&V·b`|Ÿ¦`>ÅÛ3È`²f[6|ʬºBwŒ·`e |Z¬¿bEz¨X•ôj˜T¹kI( íR.zÒݳŠÿZœùLþé6kq^õ±|FWº>I³LK !”ƒMý”Z(Far?g™Oo¢ÄŽ™«8[¢Ð;,Ü:„}ç¢2/'•ä Z7k¶4Ò§ 8+HÊÝß²0‹;†6lµøŒ¦ø´ê§nGÊë(FÍÁRÞÆ²ï®µr‡Ci»dí£p ÔB:N^Vu@Öb‰«¡¤c´Ë:G(Dß{íÚ:ëÖÀ"Òa¢º"»ùìö(˜Á^®QÊ=|]a-œS°¶_£ò\E[Ò…«–nw*»´ -¸~_*J—çËûÝÿ’Ì_ÿŒþ‰¿`oŠ8oˆ*Ž«‰¨£y»)üKÁçUc¸.¶žOMÚ`…º¬0 ”¶5¹&òKkx]ôV_Vî_àöÅX›0k¦ kæŠÓ>Ó¥WïbyZÞ¡¬Ç”ÐZg—y6ÀâÜ¢z-aZÑ[Ç8ꥹ^¿ëD¡:@£¯Ëo£ãks$DZHÚ7·ÊDõY Ç8°¦&}rïæñÊ똔‡øŠµåZˆcÓE{ã;5÷´ù9Y÷$þ›žüâ‰l¾Ò%¯J%Å@®`jr‰ðõà†Âz-iä*«¦Cÿy¯8X|'œë)5Åš<Øu˜ +Ãø°=VlÌ9~—KO:Z4íý?`•ž'á£×'{—M|«ÀâùûbO8[q.‡+ò´kÍV•ü–Ñ_´×ô7u=TLÜU¿*²½ék–YšE,A €sau y$/Ú¿”((Þ<ÞÚ%&e ³ŠŒKJËC¢º nãMÁíJö=én¹¬Î†n}Ÿø›Ö­`TyÓë«RmÙˆg€¡-ÝñhJ*F®vif µÃB#r¹¿%é~Š)e#š±—¥‘ì±[½ ÌÈ»ô“Õ2Ã#V\P߇sÙ‡] ÷µÊ (oØd-ƒØÞ”êßw¤-`ò(Žõ+1N^ÿXû¹z¹<üyf|zöq:ˆ¹ÂFî LÚ‘€V±@v~Cµ)*ØÕ_c?K«z³Ûêušv£îJ—`ö­SŽR]ÖÂANéÅÚÞ·úhýÊ NÃÑ§ŠªÁ­—Ðv]MÉÔ:œ,–Sìæ‰4èÓT— DZܹG¿¿¥¨.¨S.i¦éëÕʲ+Ç„´´QAYf"Ò"H¬DÀåƒx¸ÿ`/ïwþH?1þ0_ú&ýˆ“:röoÜŸ`˜»dåÔC4ŒŽŸn]bt>óÌSÎ}\™Üh{–ª:Ð<!­>X…¦ ¯‰ HŽsie x·ÞÇ¿µPâ´8OB÷½·­à›”[ÁÕ‹›B½SÊž‰íoö#×8÷‰üd] •Ë^’ÐÁ-Ù ‰¥ëþV‰Ws1· ­(ÃVUp˜Ô`ÂM2ê"3B!h˜AKØCç/¤xÝx½”P_ âÅÇ´³Ã&/r^V„ëg‡Z·ÄÇÑJ’ÈÛQ~äAãÐÌP¡-*Av­ÆAÞ"Ô ïYšÞ—¬Å«jÌÖÑ11<¿ÓsU,×u3õ<+Í[È*Í HNËÝ`\Î}¤jÄ·+ jËT[ªK^w¶ÆþsH¡¬@x&bix§Ja·ŒqÔ—º&·#–j€-¦˜ÜLt_uœ !¡µ¶¢*œåTÑF£¯ŸTr@Ý ´ÙUëyªŽVõ€oɯ!Ö¨:,(ÉaÞœ­RÕ÷¥¢ÑϪ=âyL}ܵô³Â5õ|²–‰1qTJPZ"9’‡c"™ @°jE-PÅí+‘çñêv6³žÅÊÃY÷›>‚— ù®œÁbª_¥ûV«0SÃ"T¿ŽE©i4ôÔÛ6ÏL&jýê/ ‘T1jX ‹>£tö¨1Єðëv~Òç›Yƒ÷,D¢ãI¦UºÈ«áªuùQA†>ÏÀÈL[ŠmK˜¤Ÿ”c§çËûÝÿ’ô{º Ò„½ eR­©/?"‘VãEi½n{VçIhäàµ+E:‹ fÆRD®cº]¼¯×ã;=iC¼,¦½rïª:ÕjæµÄš):«yHNWŠò]·-ù:'´O虪aöý.ºß©ñýõ¯4'ªÜ§û›w½E”68â'¸D˜UÓ÷ûqòšƒm»ÎñfgÞÇr¶…ìMXü¯‡<ž¯îþ°›½¿KÊøÝ8g·ÕνÍëän÷Ò.ÿ-1‹1òÞvÓg-Zž?IQê4:c¸Är¿Msô£XRçTv7£ „m 8±ø)¯†¬è5]xáÌÙÏÎ-ô‘‚㱞ÁÔâVƒO'½Å9°ïÀꢱt>'ÄPëƒãvKtÈðøÔW¨·³Þ”„Ç AåeR”•Çéc<¬eU“ñéqVÝeLÅ/Ï¡'IV·éšÚEI™9«KVö¯ZZ¶˜˜—þ¸ùn hU9Õá}qbbg”‘…ž%6j´Ïjå´Èé™è¯WW®!á Y ŒKK\W{ fÜÈ lcß]AW $JµŠÉº¤§žçWw¦‡55‹Ãœt¿ •­x´ü7jðÿd—É$7m¤KÌElè‹LÅyuLG¬õnÉsø…ð “È M.>ú÷hMíÆK+`ÓeA¶rLÖ õG¬¬-<,á³î؃ÄoˆrB’fzüpO4`3zršõÔ/ÍJZµ%ëIÒÅËáî1âÆñ¯Pë“…±) ®k6§sÄ;,8ˆîÔSÞB·~Ñ=Tþò—­Zâž ©3_ ó'5n|5¢ ÞOFÜÖc‘lÅr„bâ™äTÞ”â=üÝük:Ý3RÄwx—·ÂCñ9fö–ø\…øËØG᦯\é‹^¶œÃe^£åÜ·æOškö/6¡”n3&Ã=A`u$ãð;„…P̧w¹ ³‡Hàc!njÍ;"/x=¼ò^£‹’ËÏ‘@ºÍC É•ŒÕœt ö™`h]ó—»fÚk:Ì3‘ƒ0rÇ’6.‘ DŠ,¿m—‰]ü”™µ`¦½ K†oQ–GÞ=Æ.çnÕ_rñÓYôvsµ Ÿ—5±h‡f4Ì{|üp²fÐò«æ1I»d ¦Rœ”±ŠšÎý— T§˜½|†-2FXè¹M"ƒ±r½{t¯ìýîÿÉú5d¬h ìHëg8{ÄXT4U9£ë¾°ÖîXäÂ^ýz»½$b†¬»Â\;ª×E*m lL­ ¦”ŠAm…,Bߦ±Ã"¡Ä uÿCScJÚÚŸ3¬9§Fðæ|’‡,ƒñÛû@††|âíýÚ°"ŽõT09,ŠìfÅiÂE/6k§Û„ÓUk8áŽÑ¸hBÚ^_†sf™áýLÎ!•©k|âÛÊùcÞ`K”ŒZ=ç 6åý+»Žúì¤pP¤š–iߣ¨«¹^®kΦzf½3?£Êgð¡™Â°ëÑÃ@Nët¶C‘ ªÖˆ3œm-JŠþg!Ôu§+Òä+iÒv†[àçà‰I‹RnþGŒ’ãû»²Å„Ž>x?*r‹Ç/_û›ÖÑ÷«Å\!£æ­|;Ü4½môš ·3ôåË×àŽ~øü&âÇ?¿”ÐÜÿï帣ˆ?„;{þÓðóèkü@½b¬A/Ô7òMo«Ží­i˜­ t ‡ÆÿC=~âÅ05­‘kß%×Û˱^Båæ^É{¾õ-ÈHšõZÿ©—˜’c¥‡T\BW¤œû½BŠô’KÎdÖ'U3i$ÚfgÕ§ )Ö6<±­vôË”69óîS®ßžÿJÕ¬}ÕYÖKʾ˜62gÈiEh˜ *œ57DZ~ň('ýaO¬ƒk§å“ L;9Vò‹¤¼LŽK0~ˆ´ý‹`[ýaO£ëjpõ-¢Ôrm¤´5²nßÝ͸É}5n^Óv*KÌ{LÏ¢ð}p‘§ ˜r2å—oÎõ/rÄêǓݥKå÷¼®íjN÷]bÞƒÂÄÀ1n_Yb¿ªS¬äÇ)am"=m5ïÓbå")òDt{z®=øl2_§_«]h ’1´Mнå%i¥{Z"Ÿ/.^µ´òÑñžÝ”§TþS‡ò§99èeƒ= OGäôsô‹×›×9LÁÉøº¢§ILÓÓ Vºc¡9ȸiãâµ*H·2E­ïé•8g6sWlµ1Åçh»½"k^‰Ðm»±·!†F?yžžèq6Ó¼Z®R{zÃ5#*‡Ù¾Bi‰änþ´ û*ͧ±’äݶkÉŽíD1¶Æ]¸ƒHtŠüSŠX79ηë­Å]$¯ôør‰ÄG´WëÏ”~Þ_Þïü~ŘóÞß∞wjŒ:`Ö·9ÁíPª¢õ½$ì_«·‹tHêKŒZ\oø1s‡dÀ {9¼O—Ä– EE•5µbåÉX™è§p¶È3 ÐA• ï_zÜw¬Z–¬ýñjÌL—ú\)Á¿ ïÿiÓÙoâ>goÂøH;Ý¿Å'“ä~W”×פŸOúœ¿½ßù ý‹k jxЏU–ZÅкÕqKCƒ ›QÕ­úAbƒ¥d‘×#¯_Ù/5õgøïƒ°·¸}N‰ÐÝàÍP©®±å—'WíØéžV'oÅÿNÅ#×à‚ qˆÈÛÁâÈTÎdÌöQ¾/x6 Âä wer”}U™õø;¯‚r38Ëãy;Ù óžÝ“TGIß„¸èÐJXæzDZiNŸúCuñٸㅸçŒÂÛ'pþV6ƦHë,¹‡¾&íâ 2~¢@í_—µÛü+ü3/Œrxw0Y‡àBqv^’mæ|`£ÎuE‰©[ØÁÌ`Õ:b“¢µ‚œ–ýPÎGþ£ð‡\ê:§GñL¾Îÿf¦ò ç’Aݘû;S³qÂ×ë¥{±õø5á1ÊçÛ'‹x›ž^\èìõJ^>Šô•Ø Öd2z­nŽž»Öc•ý~ ÔÄï­ŽÆ7l›´ÃKg1TF¬”S`7_ÖZ—…êa‚,Rsÿ©‹ûÝÿ’ر¸“„x‹àœA‡S†Š¿SµÃúÊ1ýâºIˆ‘4´LÏCa¥ÍX™ˆŽº€ ?ñ&¿áahRªÇ ¯¾ö»*õDPFÄUèÅc·kó!+úÚ9ÒÿÜnpYlãðÿ ® î+Ñ–€j5_."•fתÍÄAžµ-Œ)îV±ëŒ8ñΠø]W…Ãøü1ñ3[Ñe—ßgP+“¹ˆ¨À!ÞœêuÒG~þÿ~žá¢'Åe »8\Sa\‚¤ÒÚ®å ‚ĵϩ€=\æ/?gâloÂòú…âxµ<\e!l® ȳ4ó™°Aµ&~óÔAÒ;Uû[™~ð@‘XÎÕ]›ñ-P j!ž2‰IÉb½vrÂçó{—í}p·p–Æö«‡.CSÄb4gïç1Oµ‡­’"ǃIX¯Š´º_jŽ¢­g…øû‰µxp–ÉKYò±þ$%R]• «™-®B¼b0Á¢Ë…Gäì uæóÔÅýîÿÉì™\HÒ}ݬ@¸¾[žCtñ…¡NÛuñÆz*ní=º˜mO¨æ“ïÿV—÷»ÿ$¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞ¿Uþ:ßÖõú¯ñÖþ·¯ÕŽ·õ½~«üu¿­ëõ_ã­ýo_ªÿoëzýWøë[×ê¿Ç[úÞˆ&GÛ¼±{ÄuRÿ,ŒU‰çKZ>µŸn|ý½ÿÄ+!1AQa@Pq‘ ¡±ð0Ñ`ÁápÿÚ?!ÿÈ?üž^Ý­åP”Oâ«+Ž¢¤ÿècÍÖLE_E‰Ù’i¡˜¨°*ž”‹0p†ò0ýÀÀÙY«_hR¡FC®–%ž_,_ðsÒP žÅS×7ç˜qF¨X®Û]%ˆ”ÒXðƒçî¿ê$ß=VÅžð„¼WØà6¦½K¯>JÍ“D6 ô5¦qKÌ8uU-zÕÚ#W©”q®e'‡œ1§Pèsw”ÐUç‰#{F¸¤µ •@º´ÉÉ<8xÏ0¦£AšÑš‡JKo{ÁU½÷_õW©yvªîz!ÁÕ+Àu‚£¥þÄf´ J Ýø³0¡&ÌO~Q¬Sòu‰·JÌEþ U{sSÀi¤ÿÐ"+/Êò”…ó#qÖäcZ«‘P/¥Å¼M2U/O)ö¸6¹†À¨žŒc.9þì›ç=þ¢Oõ\~nÕpîÔºž„ãì Çk“V¹n73îO_bÞ‹q›’Ð_ïÊudŠnU».’˜¦WQéûÚŠ* D4GD{¹[63ȱdþ¦ ræ P€z-y‚{VëÜǦ Ì„œ|OáÞ8w ¸ÛojmT!lEÖf—O¸JÙ×ÖádêÜ [Å«^YÉàí¯7BŒˆ* =de•qÏåüÕd20¯Idš -¸ÿE11ú©% F‹]š]s/u#NœtEžQÔ6àƒ¡×øHßvq`f’`fp„6 ^m9”2Ü-b0ªpÝ@›˜òFÖ¯HàºJ¥iüû ž `¬/ È3Ù)‘ÈÃ]¯e—EæuoÙ¿üý}/Ÿ×¥B‰¡3Õvþ&ÿÃù×c±“jÚ¤”xÀnRúÐ åÃA…3/¹KAU$f©L ÐU¦hy5'±¾ˆîØÏOíÔ§SG!Ï—åó>¡ŒÖ®çT¹“ "˃@ Oš½ê[«Ãýl°l…ÛRFÄ 5Æšµ¹Œ§S<Yoi6«Þ5ú~5Äé ¯AB)ãñ1([Šºä0eL fÂ*ÕšLË”‡¢ù¼WFqéd2·("_Q;y¿K^{/‰ÒÈ¢!¶ "Tüß‚dh*aÚ/x<v­¨Sä°ˆ«ísJ*<7M¯ö­-IþöµQŤ>ke)í€@´¾Ð'2R`ÒLdJázLœ´• É!Sš; SŽ›Žgé!Šaª.ÄÐŒ‡¦AŒ+;‰t6!wß7_M‚ùžY÷Eõ3ædïWØ‚œÀ;³< ÃÔ= hÌ Äª­I{g¤´*ÊüžãÐ/4]•ÚCÅ }æ~Œº`¦€ÙŸ3`à„;œÀâlóórŸ9BýYÒx’!›x ¾y¢ýŸÃ(Ý,Ù,µ’âŽ$Ùz&àŽ.…¾†…òùˆ‘*m€ÀúqŽº•3D%óó$44zºÖ¬«hˆªPXÄ[$OÓP>Åÿ˜C7TÞžÆxó;ÿİQb"UõSÓuIm¤lRBHP :©òb#_Ý"PS5ZÜWjò6¸˜,Ïð[(Ü5.ÙP€Ø5Ï3……ã¢y‡é[¢ä3_vÖm!ó~‰‰Ñ³Ï8®$‘Ç‘v¡e˜3Øà Ô"äÜÌÊbe5¥ÐMvñIò‚¼<ÖÀÿ£ôÀÙ¬'‹r Û¶E&”‰•(¼÷"ACX7{ÔÃŒýÊTãäÚùª«Â£lËø€¥²)Aï¤?‚iO´b¡™`N/#N‘„Õ3 î^¢±ü·áUßíEµíü+¸…ã¦Ü4ÔÓÖ –ÓOU›í-™¿18Œ©;‹ïüÖ€Lø=T9hþ>²+&«,qƒ.Ô8»x¡•SÜq;äÐÀØj ~h(öqrFɨ9Wfv§¬Ò󎑊¼žmž8&-2°îMoZlÑh£Ù¬õ «³a’2Æm*UÅø~M‘©%|¢XAÁ*c¿Ù›1ðT`á›E 53ÂßÒCŠKÆKj[iÑph÷m.lU” ®p² Ô²péTqÉ~10,äІŠD$ìÁ$¨v®!¤£¥±0á2¢8°$캥®W€Qçj }T¾)â8 ÕØX¨ùöpÓŽaߢ¾¯¢ É[»+ °b=4àû$~à‚¿Y W-‚¹ ñœ °èu²[ïQàFN0 jQÀ ê8[¤·(UÂ\™Dò[-ñaÉšÌ7OØ(µàhL ±/®‘b=Ñ-š¾C‡_tàîS*@źw$i_k\ýÄt~ån já—¾Š;ý;¡©•-œFÍïA` ,¨ "€¤heÀP(gP `-È÷G×éájdµ5~¢D,¶À j9ƒn®ù (8( \”k6”µc»!<`mÑP³QgAàÛíXglßà§Á37?ô%ÒžñÎ!Í7•& u"<ì0}9¼ºÓÜÇöã1QÀy€ÖNâ©w׉5s¸ ö¬Ü?‚ˆž8t’~{Г9㆙Ö+·„±KZôîs&Êá:Z8…Û,‚ü «c»‰p$¢Š•WV»æÄ£Ó0ûMPJb(5§ÕŒHCû¶MŠ…údÔÌ< Nó––‹¶sMÚ.!t_"XEÊ@Ø ¢.`ñ— ‚ މ¢=ž–0Ò?hE{ °±ômªçU5r¡Ÿì:¥Í ’JB"}/ùd,&7âoËJí¨“âÛg{Ê=ÜzBD}\í©ómÇŠ°€T<F ¬½zzœ”Å )þâ±Ð7²Ä,‘Þå¨Ô?Î9Ô)x[(|•ÈænN EWâbØ& ÎØiŒ%JÔ""ITc´+gR3Á÷1Ûó™ÙVÖÞe«|æ“—Ý{|¯o;S—‰È‰TÄA d"žú¨kV…³Ítñ¬½¡Ïv1N†l iN7kà…WŠã:†úS¾+Ìý×G¥ÈE*Z.´3zL"ý+Ôþ}E eO *Xñš5ô&ëJ&ö4ÆñÁZkÎj»ZCÑiA P²•®¸ÒFº6¨ýÆyTpœ«íœç¥õH’'WÏ‹‚—‹û!Ȍ¥öã•ÄBl¢p–ÛBâI{)µQMW… âùNÂ=TE%cp¡±Íó’Ìß²ÅU„9Pˆ²õÝa íÌM‰‰²Áòä܈‚H ¦TC‡ß/îG8Šw”äôîDÁ™É·àO>y´Çj"[ŠáO§é %i.“Ý.ë&€°:¢¿¸@IRÜ4îßò& _áeåV„M7KV®l‹¹~Ъ÷k·Á³X?«0ÝIÿ“˜"É—ûð#‰~‹™’@‡VÁŽóï[%vrGhU€Ú\il>hDÔ£’LýÏÒy‹ÁA Õ¤” º¯X;(¡)RCŒàGx? #¦ºXYßä¿Ù c|Ñ©‹Â/D%YKôÑýñeßÑcYÉ6ÜRáDR=LáEEÄ “Æœ`ÐÅŒ¶¾Þ€ü'ߣmWºÉs®dbó÷F5õH•|XwäƒÈë×^ñ·Fo¾®–/*U龈 aŠŠ®a„Žm¦¬*K´À‹'‹¢Ý%ñÿXO™Ó»KB^›3V¶hàÚÄçϪ äþ†‚ <‡{Ãóã6ÔÞ^„/¶E˜Ú‚¦‡°—>".Y–`áÈþ`=/ÜüÅx$-ÐYÅÆ‘j!Û9’ãnµš4”¡aQíwM+,$´‘&GyÍÔjYÜYq"Ñg“fÝPí[²ôáG4ðïUª¸ƒ‘¸yB…’È †f¯^1pŠ\õͿŸØÌªØLȬ[!<°ñIå§'ÎÕðµ{,íM½3›¶c¹ÃÊy¥6b].Ö´–$¥ÂNðeߋژ†}ÿ÷8*ÀĦÛ´ø+‡øƒtCÓ®‰ñÊ…çúóÂà æ²E÷üŠj¬,_´ƒõë®Y臄½.d­…›Ü"I æôtMfV ‘ "0ÖÀÐ]Œ¨dÒ-ê%¶%M·vØ€oÒ W æ5‘ߣΠ7¯îc²†mv¦‡ö#"$—m€¦¸äõÎÓp»|f‡©~ ë;îIµÞ‚ò# Ÿ˜R2#Á´zö?J÷¨t_–ÙYIÚíÙüZËD¿hHÿ™éÊ@ksxlGÞmy¢n'{ÖÇØŠÁd­ ‡+¦SÖs`E¤:»êƒ…j(ÍÔ‰üYÚ„5ä’ݵv1Ez4ßÏèP–ÈIdÒ¦çDV¤ñ¸€Òo ¯0ö,¼R¡ž”®B²L¢5«Ú$4‚C êÅe¡dð^.6b À,’B¦¨qV¥Qû†]‰@øBÔ ¹>ìÉ ˆ}[ð:‰ßáç>‚ÃD“ÁÞú¿éýä¤ä1­¨w ¥bû¡¹ÎZ{˜m„Ž‘+¬ã]›‡“–u!H>ßÛ˜Â"å ´Ò}»Ã@ÊËѲ&#1Ê›qÉvø™¦ HR|·–DÔg÷±ßû?˜?¤dÃø×¬d[J¢ÇM¨!öPmuÈ25^Б]ª\¨ òs6xœ –žQªß`øpj{åa¬ë¡´TÞ;ˆ‰’D·÷#~æíW kôu’˜ôLv>KD’¾•:çëWÛ)¤®?‘D,!Óp†–Å·@¾oÏD8ŒÖ};7\eCxß´ƒ<»ˆƒØÓþÀ”$: ;Cy[{Rª„QûZ…ÐëË[êZ÷ÛÄê Ðý­Gö §¡R\¹Ü%§Èà}bñBÿÛ°$…º¹r)¢‘6»«ÊãY34ûˆ˜¦¡7¥­¤úÑúµ†ƒç `6a¶‘vC$âò†x½4¶u òèU‹t¸ òQbC9ÿÅn÷ £Zdò´ÍÐÏ(ì!)©u„(gW³ÎòÁKɪp4*Ðõ.ŠÍFàŒª¹‰jÂ8 gùµ,}ä´sË:lÊÈî§Ý0]¨·W4Š˜‘™!)r-h3v@œREëR™ ÍèDКáI»yQ¥ˆM¹eó»Úà0ƒdðg)Ž :ðk’ñöµ-†~£/ªºM­éÂlÉõo³HBÆëÐãqÒ(ìZŠÎ>|E‚¤K” ,Ç—ª\[K'ˆy€ÖC(Íï™HÙ³`=vU|ó¿1{s2Q~?ÖãøŽ€7pš³Ñ†7Xs‚ÈD)üÁgŸÿäù /=›°ÏoV¥Q¬}¤7+é­»G€Ã*<(ȼryOÌnî^›…ò6¸K[·o´p$¥a7ИfÀã¦Ïø¬‘}RRAráHܪ—+ž£~²ý”ÅÚ_Hà å°#ËK¾ «Ðk.Ñ‹~ Åeñ¦ØZ ¶¦Mtm|ËBú˜ vYŽ@¡Ó@WÎñù„4N‹pÙµ š0#•×Qß}…ZÈûä™ËJÁ×å³­“|Y*X¾Ü0W) )`4ü3ÛAÜJÛÅ9¨âF¥šžæYª.FŠûºá áEtˆZqWë=³™ÅòýÝÿëèG ¤§(^4€ÿ Í)s_) "z* "ó+-ÇZÜÜš ©hÒ4éÎX…PÏ6ƒ‘Ce!Á£!Ž«=b·d"ôX‰ÈL¤˜ VžWdOÎÿ!Ê ?ðDqëϯ·BU,ž¿elNùó£1ÔŽ€l z¹©Ú×þóS¹}¨MVN"²cn¥ÿm\ P¶:>­ç_ðÖ-)Rð!¥³ÀÖÔö»±´”>é\²(Ǧ¢2¸¸8¨(siV/NÅ)rº–n¦ÈÅÉP‹Ð8xq¦"×b‚Ì»Ï69<‹ÌCÍ ä2(W"ˆÅ>yèÏÐ /ÿWÿÖô äƒ~Œ1žM¹p!ÜÅ× ®Z5/ÃÊ'ñKÄ™7:»°«»5 ]°‰&Òd^U¹ìD¶ŽGYãøÅJº© Њ½{Ê¥%˜¼¸¶¼üu0„B¨†@a«âƒ|®;¦‰ B6º¢›r˜WÇJ»ë±»Ò£U*×iܳüv j“Yë»§¨j-&}™D‘wKñÄ näRÀñjƒò“$!Šã ×7ìÜëú]Ada6LèÔMÀ x‚ÍSœweq W[×qô+ifÀiÌo!AUíª`¦U!º1@"X•¼q#AC1 RóÅÑ,¢ ‚C®nEºÙõu»Û.)¸N ®H ¹š”Iú2¯!£õm:ಠ¿/Ö}üÓ ÒKú#:a;OÝÿÐÀ©'lÆ`¨¢*¨²Õ>Žª0‚ ˜žyõf¹Ù_éu£cÕØj(SH$ØÞ/ÆœIÕ hs©ý¡³ñ»2ûvÆè§]7™ÐN©´‡2¼Íð®ù ÍUDqÇ_ŠÒn²n2þu!ªÐOßhÆ„}j4Žf¨`¢7„‚T–ߢ"”Ÿˆ¸3ô׊pcrù;ÚÇ¥ûŠ ¬šA?>e¤Ü…voüp}"n‡9ðÿŸ«ÞBtOD<ê<ØZ|Ÿá89²çeݽKzu: ÀX€Ì©š'­1>€ +J`Ž Ù6¹I€°Ò[…5‰ï6’v‚Ž»ŠV WÄÆ^xDâ7[¥é=¿†›Ì`d‰!шÊ+„c’; çÛe<³]º¡´D ßð½°Žg¸7ÅJu=Õ¯ÏYÄ9cºÓÆd™‚io,r©——¾žªI%C»õת™¦^ƒž®•Ο“H•¶婳%%x¯Ê7BØ[7aAGF0ó@2ör‰$dc[rœB¿Ã“³³ íaç/×ggü3dž âQ‘ªY®YfÈ–×>¾ â¸â›zr… ë*k‚I¡<ž¦Ç¥[ú~"¬k$;Ù¢-HäMÌBP áznÃ…' ‘‰Ýxœ¶¿/Cz”ëà Aƒç¦‚€˜Þªfô¦Ä@1¤r©u5SĤø‰ŒGa…Ð_û'ðp5¥ƒ>Ä™ÓjpÚM)(^A¹SvW^PáBmá 8Ôý™4Ta:”4qü‹%  Ò£Ð„§ó±’†»<‰Æ½cÁãsjÐ@dUL¿­œÕK¥ŒÐžoYìÝ“1Ä7Xz®gÅXW¨ l ·ÍÌ÷¥$ŒŸa¯fÚ7C·~›F+o|Ýí¤,ƒK§rî „{‘¬ ¥ÓYì]ŒšS˜>ÅkÅ“•ÛQ¸aÆLaª·[ñ<õÌ'æÂzŒê [³‹†,‡ÃaMQó“£þ$I –þ˜ã½W°‰ZG^k冥E1€Õm(bÒÀ¡ O×É8®bLNØF ˜¢©“¤È•MÊ™å…V¿šáz‰ ÑÉà³äQ1ZªâþÓhÁ9lîžötP„T‘”_0ÍPš,³cÒHKip‰Œøy¸>œPzVÓä Ë’ŸÔ.[´§v# ݧ3 ›2” ö´ŽkcÀ?ô22%°?ÝMz!êúØxH#BA ¸µ•3¡_%Kß;;Šwè…ýJ ²!¨Úİ<ô À¾wçlT!áSl¯1v×&­’ÜiõtÄ9º_ ÎzXõÀ–n³: £É ì“Äü(÷s,¯&¨½ !\¤œ»‹Åèþ؇¨f£&mT’Ÿi·'+n§rEâ[i&’ïIºïR4Å⫇K.a®ú‘¤íÇ£ì?„æò‡3 ˆ/¯¹: ®V÷1À6^ˆ{ЊJr+|¥Í]t¯ÔÅX’ä; ù—$ˆ Ft¬‹Üp¥J¢ßõ 6Ÿhõ›ëƇ7p­ <'ÐK.] Cñ ´§…cokV[<Ôõ¾³ôAŽcê ;FT_Y«þ`ÎäÇ îÖ` ÏÄS1Ä&‚!—®&v:¬ÎØ»BöÌš\U‚*Èu  JAÿ/ÒMžPo¡›µ*€¡0)YMW ƒèæ’”Wî+˜µqÛét * rrÇ -®;öJOÍQIŠMž#ÇŠâ«„ÒøYøJ¥Æ :0=¿ò6ÿDm,{L²¯8aû–™V§îßE7¼#s¨ÊZ†:ÐÒvëI—ù«Ö²ÇÆqPÕYa`í H“–XwñR…#ý6YË’HëÎÔ† s²‰Q Ï%á_ir­4¦®U¡*îÄ­¾7êpî)6ˆ“æ8!bà»e7µðDo)Ï«MI^Z¾/L°™c«Âk`¤uŨ‡}¦uþV;ÏU4äíày˜sh}Ž?~DV ´þEY šža²o†ÙH ¾d¥Ü/ÜbøNÕ‚Ø.[rÅó=+^ôɾݘ Ë r°àiBò2acÚgïú7´Sedä*l|H½ôä(ø”j »oKuª€enÀÜå+VÌN)¸R¡Î@Lá H˜JRÀnš°]XB<b.ë”qŒåæƒ'Xt—­·Šò.1’ûO+ÆDPÊlÇæÏS †_ ÎNŽÅŽú¨Vî FÖBŒ¡<6áš{+hØO$fA™xq}ôñ]E†‚')q‡öO¦Ù5qY{Eµ³›¾È#ÊïX "t#Eèä h… ½Ú‹[5$š6®ù7¯·UŸÜ8Íøà°5b'Hì["{«ê-:Së„ï]ƒµÉvCŒ5šœÂ3ÖÌ{°á"TºYÆà>« ²Â¸eÝȇ ³ÌÍMz!êú±±™k¥i™zLú![úlPÓ¶Z)Uš¤Ù"µšaÈú†‚‡!|€€Çµ×﹓ó¸+ç ®ù]‡E®àˆ%$ÚA`RÍBßFïʺ£ÊÍn–V¡*Y]3´âI‰?ß1ý@aƒ5Hvq/--·ž¯x4eéCˆd2˜·´XFCV¸¹¡¯Z·^…!¨cUAÍðì„ ˜óÉ0qÔ/(²%EH¡1S"æè<÷œ7„ºz/¬lÚÆH|¸?¸ë2:„®hîP‡·•ï²–Ú“P#D¢¥.õxž¹ÉB !§Z‡„-ðØÿ¿Ûˆ“]cKAd{<ÌײÜ{—ÂäùOì´MåÂŽúÅœšVw*䬒gsèa.]Âñ,TÊFÙÚ£m1ã¹—Ôw 2 ¤Ä¤kÁý{D^|Û»÷Órm>F|R„^„®DØc–J¬#./H~ FùÕà!BÕÆ^”%ÃŒEFÁUTHŸOæ éÞ A¤kÿ4“aà0›YrÌ$|ÀˆÀŸþÒ?ïC‘y´j ¹‹SäîB¬ûŒ)lêtðÃS’G‚ ÂY¼Ë8 è72qb¡a[ùñ4ý=²¥ô Ê‚½fér!TÀ ¿”‰$Jz°tÛÒ"(xðÛŠçÌ=0ƒm ¾#òÕñÌF@Ô°êÐgÒ3¡«ß~M1ho!$Ÿ:é¿ÜK +¯$@¤QÅ>îÕ©M’(®Cˆ(”ô~åyÌvtÀGɈ#ôÊ&”†ãƒ±ã˜qžŸÚ­“K¸Ûïÿ…fážøS‡é%¹Â޲1¾5lj}OTÚl‚Í¢‚ʱÿ~e7EœœÐ¾ë¡U¸–»Hl‹Óë†ÔãXúrúªW;3dÆØ‘bC²™Š®kÙ¬T°N1Fz1j(8P/Õ} U‰‰V1‹èɹž¯î¸ü\¸ [½:ÛÚ—;R%¾Ã” AXìøËêÂ4´òŠ‚[r0f/§#]fÐŽö ) ù%v°â~úm>:€œ…Άùú¦àÌSöÉg÷+Y.\R‚H®bõb»úŽå úUq6}>ØQòÏ3V+;7‘?³ËšÜN"Ýî\°ÕCÕ¨q´Ág"óžeâŠ4W[_K²xZ…Yj­ ÂMÉvŽŸÇ²w p[ÐI”k®YË)Ä#+°àþ&=¹vÅ­Ö*&B Õ8 P ì͹'m…«ó/±Ûb×Å·i0ãÁ*ë7wNnûRˆèX0p,q Ag…¢*€OA!‡ìjs{9Õˆ¿uWMÞÆý~>ª*«@ãõfœà' F×ÚÍüŒÛÇ.¼RPœ[ˆo¢+?ƒGbH´]€7j†DµÍ1ÔÏÒ¥¨^nÜÊ»ë|‘IØ@ÇÍHVÞ×WøæIäèÉé9*Õ ±@°‰Š…uôâ `Cî«»À9E¬o·]db¿ºy–œОüwRÕ/~]ªHPj³ãíöLÉH”Rû´‘X!ú`7¹…j ­>ÓüÖµ¼Þ³glˆ¯!Áè èìbÙê/i…9ž…ˆ"6#¢&"pú©e=*+An’×Akå’€ôæe&© €†ó~̨Á2æjꎨÎ(ò@D®S· “BY]R@A”œ'U! + $RºDP;ÊNO!¦?‹õËbÝ£‚d•­kz]ÐÂóYíUMê§'úK÷Õ»˜”ŽKL? ™RùDÌ2¡æ%Ê@þ õSú7ÔÕÿ?¾wª-ˆK€XmdŸÿÇåp£ô˜¥–+ᜦqo!࢈%}©D)˜_4 áDÄô«M¢ûºÊ£E5:®µø} ?Wßì:̪ E À9*“aV`ìxW&ƒÕ ¢HwºÕNP8Num#˜õœàGôŸ?%Ki?¢úÕ\¸Nê´ˆ˜ŽÎgãݱ…pÁ½#.h[°—w½7ú¥÷BPµbŒ¡cj ôa9S"ÿƒÝÆ[×7£9ФU¯Î^ÂìÏj9&ÁCYì] ©—<Ã…ÁhtV Uºx$'ÒÜn®ýV“““{®×Ó¿Žá´©ÚdÒ#øÔÔ¤ëÈX*!Œ«½Å…‚¤hJÇ=JI| ТÜç‹}VmöÊÇôWªM å›NKQÆÝà•0|)ÑLkAÝÄ.J…Ë­8Ìb›µh@X1@¸ˆžÌöé°ÝþÑÒ1£ۗo”î ODUb¸ÃGiUÊë@æBaºxD|%z× ¥, .E†Ä±o“«TÅЮ ­ÝpJÜ&j­¡q‰òr@ß«»3ÜÄ(ít¨zÚLù+u)G‚s=EB¥Ëëÿ ˆ‚%#¢<‰ØÆ¯0ƒK#m•zŸbꔿ­$ë!ªP—dpåœ IoðJñóø¥;¥´(jzˆámÐ0qý¡Q£ÒÁ €2¾ TE#R Þ @¹övêÖNsVâ¹yÂîbÃKbÆ*JNäÖéŒ+²¿àZô:Æq>}›8Lø¨¼gÔ®@  8¸ÿ°§D­4¾ò#RŠÙ{ ]„lVsõ§(]¡ûÿ"_Wý…Ê"JêX2Æ<™POmPºÇU|h|Æ'~B]<ÇPÙvì¢é§{¦Ï²m3 ãú³Èw.ªV3*ÎÃÒ¸¸¤¸È@ÙàX‚4…§Þw&ýyb/Û2„u¬úÃ÷Á@­ÍQÂ)ÕÀôÖsqÁÈB:ï€@ˆäf4E|bv#'%â^HÒµÂ\4ì‹C¾2 9spÓX0ÀÀ°¡ÏvoÏ2zúóÁ0J@įh»ÜMa[P@B!‹èƒ’,³|À§X,‚¨³ÉÄ´¬~·e¸ã;8=püLfŠ[Pv ·á)"ˆ$.ä1Ńi²` N ?܆ÿ}ïô8D`W…ЯME •¶ÎV'qá)J„¤3<’¡É$ö& HP€4gÜ•QÊÊã‡~–È!)XG¹Â.èá4PY<¬~ár»µGiÇ”™QΓVÐ≮9/“PâB 1únäAt×)„?6™Ì\øMó@b2F‘X@Ú''Y m2ŽF ìãì ήÁ”¨pø"t hhF„¡Ï»jÍ“8u D/#ĆïuÆ&i@ñ~nOÓ™¤Š…(éOÂiÏü ÿ  Ä’s„„°ÂŠ«VÎÚÊÛAPeC {æ}ö/•_³qìðܽóÇ Êª.Þ“ðsù>ëMeLý½ø¾nÇHÕ‹‚gžR ¸ ³W´+¤éU¡ŒÁí›ÊRØAîä•^ع­ô‹p`0þB¸Ü@»ëüS½{*t¼Bûø;x„QZžÏŒ)áñ•î Æ—_B .Ç£J¨s@a¹ |ĵˆâžÛH¨å^±­ê RuÊ%3ª¶ÜXÁz/ìa}Дm‚ÎÁéM±dYÎHÚq‚c¨*:Ì)@YŒá”A6›¹ 8TØÀ( Χ— A 4)&ÜE⊖10ž RŽMpB AËÀ±íc9ÚžŒ°²E¨ª&ƒqá×A$„ì¯Wô€ËI:FPB!½0E0ô\`¢pÙ8B"º5“* Hß.¿÷æçý^<˜¨ G°ÎŠNøäHLÄW¼DG‚•:¿Up•#@H1Á{£áN¢Ifô¬ ] §y{fA60«X|¬šf. BìKâp4o:6­ˆf§ }‰Q¡ÚÔ¥q)"4MgÉ´ÞT¤žiöqéE›ô ÃApUãÝ7† i$ªäqSq(.§qG~Ør´µ93¼<eŒ•×Ts4*®’Á.6Ó‰©úFèEi#FòDƒwó±_W‹À¢Gq<˜­O_ž …ãP¸PZ£áxÉ‚4 ÑS‚Y ¢ÖÃc«J‚ÊPX”Íò @Eb€¤2©âkt¤vª8 ÛRÊ;ï;H†Í3ã± b@H²À3$•{ˆˆ–œñ B«nÀŒÄ]tÞÓ!„éZ‚+× †˜<¨¬ŠÊŠR #Z„ÃÇÉ߯òþ'vqxD¸Å%EÂêÒß ˆ‘7b¥pð?VaD8žÅ…€C± _ÔŽã° !«¢Õnõzôâ !£BýÊáqî.Uþ¨a³ž!4„+5Z©Â´Ûà^©\ê<çÉ-`žØR]>/ð€ö„þNIøPRkU@Ðá㘠_m%BäB²‚±XºAh (Ñ”×  (ìˆUæÁ‡A`¡îŒ”€04W0ÒêØ"…”&†‚«!¡Y`*¶ '„Yˆ€¬’„¡naF<*'žUұZ@‹ ¨EU·»bàf“^¹….2Ô'‘°Pbœ®D‘h$ AÃ,Y‰0¦ÑFÝ U zTJІÕ3¼Öê¥Û‘JB"ðA\¡ ßÎS †¤/iˆ[Á&£™O&„#€˜tð·«B®*1•ÁLƒX†‰CQ8™©"‘V ‘#†¢•¢p’bn˜UP®ª?@D«R*V¢f4…=XšŠÎB¥(‚@%ÌZJä”i¬M)Ðw‘ ÀÐEX¶QÁ®,ÌÈ@ÅQ¶ Àb€R.éË+\½}ü>^t ž\SM&‰ÆZ;©h‰!Ö>\Æ p QJ¥ƒÙ,O¬ÔâFHT„PPµ®ñ=¬~ª§@L q!€HS9à¢ZcÂÞ° }0uš)„§¿«NŽ„b…ãJIZ½h¦t¶ [h¡Et'l"µHnçaðo(©E ˜ ¹ª”Žj–ª‡D§¶ñ*„î³ ªø—n}< ûhÙA¨P:¼•<Åźb²ø]ƒÅu¢¥ð"™"2!º•Q(r5¬ªtu½k¬)Z¡Ú ™”Nd¦JŒ¢ë­ÀT Ò€§ÉQè6(P„<ý8Ê ˜MÞ…"¡ Ôˆ‡–%!¿T ½Å„Ð`€(ùA ‹:G‘) KOe.” á¡ˆàt %ƒlÅ¢R… ,i.—aZJè2o$ð<]ÓØ œ}!$iÅ&)Ël’bN®ùhR«ò|{Î!Bìÿç’ñËD¤¡?aZÐNâP%¬¬oJ‹°£¢Àiî¯(‰Ž°K@ÄA_[ y•(K×} RÞlH‘‚A3Àò¢aEjPòÃ<…²˜v°€ªâ nLE€JKÕ  ˜âÅ„J”€ìÙFЂPÒF_ ˆÑ¥¦Óq{'øã&ãÌá„3QîC¨ e(ˆ"y\؃…ÚS”xÞ´üÅt¦é8 "J"4މ6I€ Á–p=¶š»´„²iôW†Òˆv@P–¤«À£äå¸h¡Þ(Lÿlù>Ào#j6:ǵ ;>é\`Ð6^€â³™|­…’ƒ"V …d1d_”¡^£® ÁË_s`–€)‘4ðR¤@,C'`:*XMAVU J¨hÎ`ª ©5AÂÊç¤aµö¬¡hSJ=hźC¤¸¢âÂ=‘ YÊ)e €i3†X Ý^†( ê‘xÙbõv&€`:à>©@ä- v0]gF ‰ ª zFzU Ú°ׂ,Kf *"¨‡§õT°0¨jT8LÕ$r• J>²©cØÏ12øNùØ­¶Â&@àÕ¾Ä (1ì™Æs›xhÎŽAÄÌP¼“ÔÄ%å¹… ç»‹oº¹)§P% 1 N CË>æ”…€€ªŒàä.Ò+qB* {{Ñâ]Ôe´bY"‚PL@*À"1)!A( ÅÂaÐb âØ´ 67jì¨ r²:R_›Ò¤L>8 B:°«Å@"0ÁP‚„ F¹¢œ-R7( Ü‹Ùu”\ä¹jy„útK¶8Hýg€`Þªc EHè¸êÝàbÀ4Q” Ç¦I°xÁ(ÈT[ÜbÐ$tކl%€Áñ& å%\5š7;ï^E £ôbðA!‡WEâõh 5ÄS ʧÀddJ €y0èà ŠÔP‘©´V‚Š¡DDDo²þØ' BÏ5;f‹Kò€Z]A(ˆøc}¨ T&˜™î•¸NŸ\ò ½TI<ÁWÔ„sKjèÏ.¾3_å·_9‡(&ñîêèÈ´Ð0ÿ,/2£§ ¥S@C±(Hˆ,gÕD"Š'¤y&Õ;? âÙ”À;;¡Y&@§\0[ UQÌm)¦²  FS~so)…t ®‚Ø„ Sû”`jAB3ƒbƒLSVèPGŠQl”{â~ã^>@  ¤J€*J l @ÞéC j ‹ÚqERÕ< íI’ÉHãÀ0ÂÁ¡ê§„à’{¢wº:»ã ±‚D7H!6”/$ÝÀVQƒƒMÍË–,-´p•ÆtÀÅ 4*2}€œèت‰*±Q_¬$(šž(DxFa )Iª‰"€Ü],†^HV~ÐRàÍ„z DíL†"$V¾B@ƒ0ÀI¨¡(†¼]ð{ùþþ÷êóÉ÷B„⪹OB(•¤DÚ“ð2g C²<¶\xÉXvÅ LGpQbÒ.(«hFÑA ”¢(è Â+AÔÁ߈aE#K$0£*n%TX±(‚ÚŠ’Rô݃zÒû{~Rð ”™¸tGØ'u9ä b.д¤˜(Ø„hŠ'MMŽtòØW ¨ÛªaR5àA‚:ô+w #4@jð DÅ„TR†,t€U¢ ¯$ªM:bà‚ªÄ(ŽèÒõ„Âo‘x] M¦]]€2 ­¯2³"0TE€h…ê/¦·ËÜý—Lh-@ª˜tQ ‚k]‹!;ËÌu«FÞ [Ó±/Kåý䲿Éñã¦|ðƒÿ¥¿c5 — H‰5d#)ÍÌ‚‚^Р,v‰0.ˆˆŒF´obux=£à©Lh( Ô&¤›5?ä jÒ;¬  /™ÈÄÙ†äô -º‹°,Ò=cxB"Ä1` S]Þ%zVÀìR»tóç^ýð|* ‚ˆ-F­"È­f$PèÊK°â1Å1”R!bX¦€Jc¦¨¨ Ó§ˆÙ €«Šà믲Âû÷÷¯Ï6!9å+–~}ùâÝÓÒH €„Ä É8E#À5Q›?/C“ÒXI€€4ƒ -yvÐ2€he—‘º*–î—¡%ã¡zp¢"áºìJ£±Å(—¢b¶¦‚! :å5 ËQÕƒXª’,N¯AD”pžÇaN‘¼*º·\q"…vsHA¿ }vH ƒXÁÞ!5:x$¢Š˜~ÌJ¤}ŸÏýp">Ÿ÷Í&9BS@¬HŸ¿ ‚ΈQéWñȪ¬Â¬³OvþÜêu jJHGã¹W^ÒœWÅ6òHW†ì¥îCÅJ„ö5!òàÆBø”i>Œ¢R7ÓÏâº@d¤d‚@©˜ž÷3‹u {D˜>|žú8¨€Š(TÆ÷sÃëÚù1†b€¥PØ"RDZÙ¹‡x ¦(—c ’5 ý™ VòócÕžˆ"Êö£†BÎðãCâ5'©*:‚ÂR&Q¸íYUp'í¸§.IR?Y⦠â›ï9xà­D/–æ¶ÜYÀ‰ >JÀíÛèó5Zá#¿ R¡o„RÄš½˜Vºçkû莌}S×ǧÔúacùÓAÔÝYAÊ‹¤Œ.ŽiéÊÏc#Û‚ñ¡«èvÁ¹w?Ó%StaI&PyHò¶ˆBáÉ!Ñ1W×ZÀ$pZÌ’ÞÐ#›Ñƒ;RäÂLKÌñ‹$vŽ2“¸ XYHçðBuÿ!/­ 7¾ñ¦® ¹@ág„šIP&"_ßIÇ©$|ЫڳªÙÀ‘¯$“øO;·Æp‚D ÓÛã·üý‡]r‘BsyÑÑ«‡ŠQHFZ¹Ä9{<ƒ®µ·Vœp7‚Ý4„ )8 ê b¡ØX˜!Ø‚5÷tlý.–û£™æ_.YF2EP¥a¿sð!¿‘(²pµ @¦Ûw™QBqˆ$-ÏúB$’7"pßà%]ÎaFeö?¾§Ë"ÛЃ#·ÿÄ(!1AQ0a@q‘ð ¡±ñPÑÿÚ?üç g°_|ó“*ÚƒýÏÙþÿøŸÚ>in>‚±+È×ö™V5H¨QEL IЩ¦ArÀ’"epœyƒWVN[¡ f Èj)ºbaH¥~BF<EÏŠØ ]<ÀxB›ú·µ˜“ùÿŒžDöÄW€Ùp!ªªné1”½IH ­0ƒj½Š€ 8B4ub£ª"Öw{*Bf’λxpG³¸ÚÚJ':Šþ@Îî Ÿ“е'àð¬â+ ×sÖr‚Ñ P ù,8øãŸœåA˜h…¤íR’8!8¾’Ãê¸EŽTõ)¢Bƒ¸]‘ømê¨UÀUø?FFH£˜ˆý$ÿ zM”öU ?\"Q£¢xŸ|ðf¼|<žUe3,eªD_àAÄ@Aˆ&ü€žˆ&‡î–¾W£«kzª%¥«FÀú5ÆØ* G÷X/W[-^¥øB«*¿ÃC‚ÐPW¡º…G/ÖPi¢(& *F7¹ Þ X¯†It^ÀjDh`7h´$"¤¾EjZ¦ŒÂ°S,ø³×x$ã8´¤™J\®ÀT=‡Á'àì¡@ù Ù<>Oûg¼Àd“t»j³VNZȪ ‚BB‹é NLewÌ(<Št@’I¸Bp.qá5> !¤A:[á8Žh £€XBbˆ34#*WQÈ`åÀoÖÂZ‡î²%IéÇÙþ§N> vKjèRР €°™øêÕ(3N••Ëx[Vât|É=–ÝèG2«ñ~<Tx @ò¸\¶ºT­]5 ºÌ¾MA ñž›-›Vw€<}šIJ×T T)ÃB\"Á ï×[P! v~a™þR}&µzoõZIvšAˆ÷@G¦“2‘öéIêÁLd£Ø#X•YPL²Z‘5Â'ù\€k†QK…t „˜”òÑ)s@õu y˜¦¥ys©oæ¢ ÎJ‚¥²á3õ¦‘Þûþ³ÿßzM­¤•L5œ:Ô¤Bð™0*–é%†²P¨¿Ñ'ÉG¬¦"áõžBÌÕœEw6[ÐÃìÉpRRÈÅÛ­öâ™×Q¢¼Hä° ´«aÕ=Š¢ŠR|¶ ª ßŒ|G aè#M(¿Ã$yôð)¼•DZ ÂQìANÂE$(m+•îˆkø€dN…U~V!ãÖ¶ÓÊX¬uB ÉiIÄyvÈŽ0É„µlx}ª ÔC•¶© ªK'OuêØÇÛH`‡Lƒ(¦e=*£¹‹’°AQâ®Ä]*Ãï:TJè.Õa ñ—gŠf¿æy"j"@O+ñN0þÀZÏ(?”X»Kr"ü”apYßQUj“PRU_dàТœi‚ 9*jÆ($sʼó’ 7Cò©¤O³ Vc\ôJˆW.u®Å0«eÓ·15=5+O3$Ø.BHš¤¢ÔôÜ縋‚‚œÍx ¬2@YÅ>³ôK̘ê.W=§Ç`& ˧ Ú˜â„àH:™æ*bÉa¹ÿ=í rK¨—HB©sV,¤ôEkQÙŠS<8:DuùâÏìJÀ4B1d#“i ƒ¦ ‰{аž9 {ôï°ùßV=x~¶j"y(Ôi™vûa! /ÒX·WgB„JÏ%_H²p-TyÈLšŠ“\!<{Y„/áYjàÁ²D6ˆUøì}½‚ðØF œÀ€bQ—`ðÛuW€¾€üœ$â[c Ý âÔÏ„Ð.ñOòp3$ªpÄZ¿¢97ñµd! PA/$ëŽ#%@@K* ?ø…¶Ó$Y t°…&Ú %×Û$ÃW-pS5^IâÂ~ñq °sµ®PEr tù•·SYU‘`•{H«ùÄÚz›qo•âÔVBôj7;øÐå&TÅ'šÜ°f1½m̯¡¤SE€ÙÆ(lýfþ»Ýý!¼Ä¹†‰Š‡*8C t$àh>ŠfáUŬÁE“ Âÿ:n~d+ŸXREêVš•:­ëC¼J¦nïMðA_޲8ÍÐ:ŽÙdÕ!¡;hcòØÙ‹bªQ‘5'žiU”L„=@0DEHˆ´T-\Ká+éФs€° AÚëýHnÜ÷õ 4Wh·d—wÉààŒ"ñ W4İ<Ìô$sXG…{À§ÂK—ÒØ6(-Nãà7sÜÇš‰Iû}ßèøS)I¡tLÓ2)¿Á*âˆaE((À’#€|à­ê¤rHzCù0Y` ,Ÿ>Y€£…ÐG'SÑEL´sªÔ¬ÙÈBé‚wÑ4vÈìd—¦‚˜7»JÚ¸ˆSdRœ ÓNŠ“–£`¸úyš¸´‘µP:(þÒ§X)IU)qE€©ìê“¡ (ê®Æ‹f÷r°¾¹•¦Rï‘æh^‰k')ÞW%s1@kx @^Cè’Z¡A¨~oMŸþIµM €UWÕãÀ–x@à(L±éŠÆ¡Â˲k!XòÑyÈD$éE…±”á<$ Âùéäþ*c¯15b­IÉ–2EI #šbà†9J¾³oÆš|k‰¯±’·Ó¦!éa!BÓ|üaô¤AÓðØ•­Ñ}üܬz gû±ò@;`ô„ÒÆ~éÌù OTT£Åš©S+lÆTi:ÈË›–Æ=@\^â#J´û†/ÊtC¾GâU¥1B°Ê ˜„!¡eÈDÃBx@ÒÎ9ÏUPªªH]“Öu\5RW”É,üЄ8ì½O^涆>W.±È¦îÖ¹UmÉÛAК¨—zkÀöÑxf=¶«Up­¡Ð)$~L1—Ó aÅE9Þ£J-!PÁBGäkB#n®û1‹7!ñ[÷}øÎ4|RJZ„ À}T¿§WfÂg HžGDgU!KùM W2¢‚'éýyÞ:Ua!±;u¾¾Ä¶\hظð£ E¦*"m$‚™q" ø¢b‚uZZÀZŽˆuf•¦U32· }aSP²è0‰ŒeˆƒÏÂM$Ç¢ëÝa4H¨V(ò),BW¯ãqyE@#"°EK…ÖWï¨W‡1lV2)¦%Co0ØRBœšäVPúÆäÒùÉ=ðà˜IökI‡þ6Òt´ |ˆxèæ ¬pˆP êŒ@ „?1Vƒ½-T7 PyÇE¬`ŠŠÐDÌ?.œ'œK¬éÂh¸4½u¨qQm ¦¬õréM Ÿ ÄÔ—Ì<ÿæÂÎóÇ©ºí¡”ø·ECjLr]L»… ‹4ßÍKÜ 2,™»<Ÿ¹ðæA  ¼ä˜nô æYÉ¢«Ü˜R:ƒš'<¾Ê;A|³J"(ƒr(®ßE/è5s¢º*§¦UwU}†X êÈN“#LPŒˆ‰“Ó†IÍB“¥ ñUl!ø Bdõ6ÿ}.¸ÐÑxZp„p£n\[Q_ÿpóJá#ž2¥¯RZ™Ú†Ð+ë‚5üûMÓnc™\ÑPd× ô8Åì!ìÏFPôUª æÙŠêlü™>›‘PqÖFÇ„,ø*ï€Oï2By _ð‹—UÇ$ œ¨4¡&{ Pá$óQT± L)D£'{H)ÍË•©T°éÔU-Œ`iÁ_ —Z¡Á%æ‡j¾eI2øÍ‰ÞÖ KBĥĂJ€€­ˆ @I’&#C‡ŠJ.* <Ùű'Ú™¢1•£ÞOÌ„5PÑ®ŒilQÁ½ÎB »Ã"UUUUUªºªê®«ïð¾û)ÿýòthÆÁR{O¤pWËÂ_€Õ‘ºÕ£Êë8ÁŠ4nB´JEˆHªÀ*ऺÐJa¹ ¡ËŒ2¼—âhöVê‚“WÕT¤²$ƒ•µ U(¹þó ¾/ îš ÈEöQXÑÌ^„áfѶ*½‰w!ßAŽ1|3ó-QlRÃù³ÇÔ‹ñ?Ã`“l~ÿ¾T §ŽIðù3ýyœºÙBõ¤&‡9z¢F´šEPž˜ZÀˆÓé>^ðÀ.³†EäÑ€‡=[*’Qx´p°_—<&ñ¤h|” ±àQÂ@—Pƒ¼ÃcjUN§æa©D4ˆÆÏ7Ó•2V„}·WS­œ*¤ aDmE°¯mÇ 1æèYpt …Y¬Ñþ-~ÞKþòèz”ÿÏßN„ ©(|¬ø*ü7…fA WìY¸ƒ×¶ (£"€«ó{C(B,@bñSaŒiQðF'­¬"¿X°‚h ËÞ©ù¯¤]Ê9ÝJà U>¯èB’½mÝŠøb©jü›Vªs1U~ “è4Âô.„7#MóØgžUH9êúÉ,_³2S § (d«[ºäÇ ú_ïßÜ~ß/¿öšyž§Ûõg%¨/ÙåEóòѺ¢®‹€-Yw¼¾Šä$UÑì2á"o-2'Ïž7qëƒl’ÔÄÉ1=ò¢4!êOTZ@*w‰ÒÓ'øœ‹eŒúeÄ›Â3¢Ä{Ê'!1Õ ×Û˜•ÉÄY æ.–…'ØêÍ˰`Hã\ˆåÌqsT׬ùóò(Õ*}T²ƒ>7MkY$>! 3ÇÆ‚¢Ê"‰V7ÃB÷€)JCCÀõ, ÍÈd„E>%)Cè–}ЗéŸk¿ŒH“1F1²¼I;Éô_ˆÜO­§Sìªü¨ŒyDÙ¯¤q† oøtÀñºϹÕFÍ‚‘"€ n³ƒcØöy ( ¼ÂÈ+_±¢Õ[pç°i'±³Q a^NfÖ¢¡÷ë‚Ä}Šÿt¼„´óÞc)!N)*‘ؘÅHGýHW±.ÿ«õy¥ 9}XOÑ÷ïŸ] M¢A†7É“ø" ‰ÑDùuq{Fµ’x’3>¾ž,8ÿà«Þq•Ñ­LÿyÇã´QŽÈåãý0?ƒý]8HzI©¹–au`?¬9X$|Ñæ‹£jx€`¢lÛà5v×µ5:¾';O  ê±³¥ @lfBˆïÛÑT'Ο LqY«(ÒÏÿÄ,!1AQaq @P‘¡±ÁÑáðñ0`pÿÚ?ÿè½á/X¶ùªÿø%{ÞwÃU±ä8è6üýð 0{–ÚGúy  Xô=ßD#†ë¬&ðºâª¦˜‚)ªŽÍšÿâ„jzÐ\ðvà&†òVœ5ñF‹I4‹ "}TêskB&ÿM–O|º*gä@Ya2t»áÔjÈ«¥Êc—&iÚCÏ… ?ó˜1C_3©t`á<LÀä,’j,XÅeZBÁõ¨u\–’aZ5Ú~ý&˜ŠgSsµ.ú“CÁŠFÑ0ãñElÓÕ™õS©Í˜Ù³ƒ1§˜\7¹q;1)¯ýÞG+sÎ,±Ï}º)¹¬|þPØŒkýLxÃÖ↓tºPÔ´séÆí9çâ¨ß˜MI_h© $«eŠä´ü˜{0|ÜËrE)‚øñÜ.9ZÍ‘ÖjIš÷ÔæÎ§6]$ú3kÀFU $s¡Áÿ…qFl\8h»™ £Ö*nt‚3ùc°iP='¯ihS¼—h¤ôÒ([R÷PÖNO'Aè9À`€DER:9Ó8Èœ±žãEÞ’“§-é ÚCŠjåøwü$€ÀDTĺIôfF(Àè;: M9ïzBú‡>ʵG¸›~bWseVfmR-B;`\磱׾UÔ†oËÃ8*‰MVÌÉOÍÙí±ûÄ>¤à{þÛ`7)EpzÃb!·ºW_¡7%¢YYž•Ìæ‚’EŸBd¢žÝ4Ô¹%Cs«ezzC:µ¯#bðUhá r~¯°zèå$©ÉˆìA½è³o©*U"…Å ÄRvX_3è§SÐT±Qp÷þçþ²dÀ÷¸ŠÁÓA 0öb—óÇÉ}®RUÞ >§;=Ú$‰´¨Ab)¯÷"ªþfÏ* ©…Å*ËX§SP© ãòäF3a}á ú9ÊÖ”($0 šo:šíi`0‚Uf½ Oz.~'\¥&©+¨™’‰îzvýHXÖÎ(…0“ÈErÿ¡#S» Ÿ^ …A0U&ÇÜ*Þæmí_ÐGbÎ3´P¼ãa ÑÿHœ(ÐúL{ד%¬sÉ.úéñŒÂƒçN(Â謴§‘)Ÿ¶áì1¨ [Q’Sçâ™Ê~ŠPwK1m©!~’’õ „m0áw‰7®áFìtFA’C ÀÂÍùó@‘Fbë«'Γi·Â äëÆÃ±§¬Æ£~c… $ë!DLjÙÑP›N¤@(J÷íûæLLsF/ýë}òº+-Pôcž+¤L¿ ©XJ¼´ÙÓÀ7M¾¤ØZ㯽Ëãø~4HYK¤ÿñå×€Gùáµj%Š¢duúÿ»í-@¸ý{¸–DáôïCú ˜Þ(¥æçš‹—ë®ã*kÐÎi¶ËBùwAÙFk³üQ ïE–XŠPª/7ÍŜԥmJ°°¥_¥”sãM—äkT‚V/FõÎe¨€ØÉù ” ¬+z“ì}›üö«Ð½÷ o0Ìá\Oþùj@…Ÿb‘I 6û BmqQHëlMöçjòsMzϪk€"+Ed#µ*ÒÆ©Vsúû¾<Ä]jÈÜ‘>¸¬‡´ *®WâV²À^Y}«·oö‚Ýœ¯'êe÷”çíy°‚ˆ( Æ€ÁïŸwÕ…¼~~×î!8‚ »p‰±Ð%ïuùþ ¦Þ‡o÷ÙôìU˦ hƒ‰² €ŽöÿxºÕª4ZßbûýWŽ,¢€ Q @D³ƒÏçºÔxùP¾Œç‹˜46IÁѧ]€~\È xã{Þ?=÷ÏJN¢9bœ˜‰+aôºqï(M¶p& óó“fŽ4®ŸÛó}’ÌJß?· ÉÅ=-z7IŠå¨1»h5´š+¸^ËkS–ýïAßÝ¥Çû§†ž¿ Ò¤)ôzሪ=¿5Wyçû¥¸éÞ‚¼8ß~K—OŠóé¾XTÞœ jéM!“ž=Ø9yÌudìPRaIô#kda™1÷üÔ´+†ºS%:$ÆŽäÍe³*BëNïþÝÿ—¢XèZ°LŒÑ–7çµ§löâã¥Ò`X¤–6‘-ÊÉÖL°Ä(Ÿ lœøK¯kГV&TôD’ŸLbfžçWÚ)6ÌæÍðР‰¨éøÚÑ14âr\RCÉueh£Å¥.½±ù€S—çÃ~ ‹K¯²Î®¤ R—å2ãñ&NaÛìb°'»ô3ÒůÿgÖÇï9oü0YRQ¿¢pS÷Œ’Î3ãÜŽÃu“ýð¯w+33gaÞ&AÔ†É1d#ã}dÈx£V”€2Î%*‚?³~~¡ºȃ»oÛÓA5>œÁ{’FNX™ χÀ%­S‚µÇбÈê³ $Ž9™9¸8°½#€D:bØ0óÝT%]jb¹aJƒ` úì$²IæÂ#kø„űJ«©×ÏÏ^–$P`9×,ù5¦B)Gt÷“Ívò ®iJçÆñäö§'¶¢àÓ‹FoÏãóx…½1—uçþëÒ6É‘èèÄô ´2µõ½O\‡[u˜v'Ü£ö祥EØu¦¨¯±‰›9qæ¿ØÎ¢.Œyÿk]´Åò–OåJÛ±V´} ìj0äˆ ¬&ÔÙ=lc¶:>”#FïÀU¿ov#ã1–qåÅ™Kœ¬ËÐæË”ÌÑÝTL8ÞÏ¡.”´$£q0ô\7ÊÏt=aªÅuº2æI8ܹÐ9W‹Ö æ™Ê(OæB®"+УºîÇøµ“·¼•e'!ú ¾# •š ·”±ú’Úè… Ó$¥MXô~<ãû¤QyeÆ>ø§8Oh C³|Ó*nH¶ß;.4˜vo/¾8šM^òÀ L¬u«8¾[ßÔi| {¸¯Hÿ:R+³wN÷ë´ŠkéK›9] %UÀ‚¨¢ªä¯ôÂ_¹J$$£89jqR Ú¹áÓ–3Æz56ç]qµ8Ma2éf\ºÉ:§Ü°óú©@—7kà¼×._É~>|¼|WDØ—§ª¤Šc"¾‚¥Å†s±‘1²Í‰uÜ=‘cFJ´¤Öe 1£@LízŸCH4Ï´k‹4í8VÇófEJ`©$Ý[}³0ñÁ‹$8!ÙÎŽ¹Iàñš ߄߷z¶[¿ÊÞñm.¶ÀnÚy Ôþ4’_¶°ÎWdï§#V…°"©aE©Â!†ì}`"qÂMíÖr‹à|3g °1†“ÏX¬ˆÒÛAéqöµôíÄ ÔÖ^§×›ˆÕ–$$Í$Á%u ʱ@Ë"ðMÝ{fÝj ¥K Y°.厔qxÝ,vìXÉt|7bµ³d@1O)–SÅ¿]jgF¦€¬´Éÿ ý/“—Kê¶À[¼ eÂiØPœšüÜ"줉ä‘ć}bÄš.\ œB$LyÞfâ›Su±ëòî›Sb´Ö&¾s$¯@M]½vw—±~?æ,­É¬>ÙóB>N¯-$ÞÃÌÄù(ëy&ô–Ô*± ¯€FlJ‚ÇÕHù³M()Pö™Ø½D–ëi|¬Ìå‡9(UËG º÷ZÊ/¸ç]9» "әЎ´í_ØÑ}#éÜzIÛ%ÐxHŒšßˆV‰JßnƒD°Ky“²39vn‹›q Rž)‡£*(=×u††ïÚõ3­–k2ô„V$äÊŠGj6Ök¦+žþE!ÖÄY/wŠ×K.›ÊZCj@ Å]<úoûqúë“¶MþœÖfž“/EÀ‹rÌkI‡wþ÷ñtÛiÙ¸wûúUqn©Ñ,T¡eiÍóŠÃÁÑà|ïÆ^ƒîÉ!*>º™Á_ú2cÆ"¾¨HØé n™×|¿j¡YeÑÕnAØÉBVؼ´NÖ -š­Šõí¸ ¨06Û Êê‹WîJQr–– àú?Ÿ"‡3¾e@¾9P<ü Q{{1ïØÉPÌ*%ÄØG7l˜‰EÐVˆ.¼X8q=Éú"ã|&¢Þ¾m~Û LˆXˆˆŠ#d³D«)b²gW P˜óª»ræñ4‘EÕºíøñ\v€ÕN-r(¡ ª-ÔbÀðR=·ÆCºNPà­œ%l‹Œ;êAÅ>¹Â‘†s^+&^—OÖñêÃÚÄ´ËBˆb1`0À¹ Wi«ÓPƒwçù® ‘)£Z¿LðWX¨B[˯»ÅޫДŽKjå]óÏ>žð£X Ô¤µ H*ä  r•é.b”hFDs AX9•E%?EÜŽ]UM†ë‰^úÒ O`°9‰W°–›9¶-µ®EB)‰æAX”¸šÝ…HS铯¢²–Êð‰U–ÏlxÇ8þ ÅnwÏ÷=ü^&5Ò—|;o»þò¿æ—¦Q䊚h 8+ŠÑ©½Õ žP0ôÊb› OZñØ|–åxîÏ@twâ×|ßr|—xýÕ¦@Àó™´IV@è 8ÃÈ7•àN÷´­y¿®³H+LÒU£„Ë—[JP8‰%ŸD.•ð­ Y¨Dª²ÑNxU áa Û~€µÊ*rþ‹ýõowjžÓöÜ ·PMà•PÑA‰êª° É°Ãûùü0_ŠIЪP-#Öc]¤”H»Š^FÝeÍ_óÝ–íƒ €(Å‘"€^À0Þ—9Hô *æáºK’ŽìÚ¼G0±û}b¦ñPc4`¦±öÖsŠs9Ä¥¶œÅ$6/  ÊT€!J¼ßžÕäÅq(ÒöÖ?O]U¥ÓçÓÆøç5CÝð…q!È‹­ˆª¿Ò½e¼%@ÆAJEl÷¬TØU¥Þ1Œµºƒ;Ά÷k䋆P$% ¸îqlDÜB,/~Ë"´q.V¢üú›Ÿæ®t ŒÇyRê½:¡©Ï5MâI«Kêúe˜Î­»Èѧ«œQoçføÍ|tòb+ýiÑQQ&ƒk!,Õ †fŠÈÊ@@)Ô©ù¶dì¨(_ÈÇ)í-„’VÑçRÍ‹^E´åæ‘$F·þ$+O)'Y£eöÐ"Ǧ¥áq“Z¼5(Á>4  2º;ºå áЛi"í8ÇC]æ9´Œð‹¨ˆ ¸uFèé]çþµ¨äe=on~ (PL\l ×ÉHÍòŸX9€ë ¿2K©¤»ŠÍ·Åm =Mr.j2N h"GG!CtŸG»êþÉÖºa°•‰,KIòWKŸôþx“ª§v(Œ‘!?«bN9œÒÍ,%ìÆÖ C8í h{ýžI;§4„„;€z‘мœš¹ÌìäûçfN–‹ãŸOO´:cüxð €·Dèþ•J ÃÊLä¥N!#ù`ýÿÙ€B#‹Í~+{«`ÖÀ¡6ùÂãS %ÌtÜ?›5ÎÓì Òx7I6r_^ïÃs$=ÁÐ ŠH g9ñ‰Ü­¸‡` …ÅÇZެEJa”6(0Q5t è’,2,\Cè‚XиŒÅ1ÿÅ6ïtÙ¬¥¥KW °ÒªÖÜ”PôìÌ,'‡J©Ý7X¨AIIuǯ'=Ëz-ûLÌÝ´´9U’B5ÉÐBÄʆg*Qz7BNöѰ ÃÓçÔèUübþÔ² 2À«ÃÔP—@JÈÝ­©iáÒ¹h®ÿà…J)M‡¨5ܾA^qì¢ÂЋ/õi¬2Ô|É`$rH‰÷WæÛ á<FNöï¾!¹oABDXAu¼Ë*&DmÔh­RÎ=„X¨?ŽøJ×Te!Áá„(ãT{We¾²¼_oOíiãÕðúM’â„ä' /cŒï¾£·AS´¸†g3Ô›Q–· @H§Ä¸‘Up'U#mËT INþ}>B¤âJ€z¬.3kÙVÅtú½@iRYIýçÁuˆªPÕQ¬4-¾7þíiA¬•¼1æ¨çôUOse(Ze­¦Që"!”˜>·ßþ BÏfS²sB]6R5BT^Â/ô@ ‰)_˜"ØÛëì¥93:L‚2¿4dHcj€JÐ.ÄL’1¹£L«ÖÔæøYR}#®ÖëtéíA´} :nºJ Z OÞ¹¾ó¶Í•[BIikz|äcÆÁ·B_tÝVý½L=sT~.@MlN=øãÚwþûÿY©e¶=o‘<Ë‘BOô9ƒ/‘'ÃÍV*êy'†Æpjû˜¾ùƒZô ÄäbT çDÊÇûb&!2:Þ:ö‘±ÄDTe$ 2·Hxù”Z¤ £Ô/¹ExL,»š\ƹoìùïc¶Î5ã ¥ ^sÂ*çfõ%…f©Ì»¡r†HÖ8fñRe‘¥á¦Ì}GnFñè®Á3%¯ îœ%Õ¬„­p5g]2€í of©o“Æbƒ­´dß‹á/Dqn-F½%³*Àî«Ë°¥jÝYT.¬ÕsÍeµ8GCþÃl™÷^(Ây,—Еz ×ó/³c³sÇ0 áƒÉÇ ‡[†S5Jtce®3*\‚ÍðÝÄ’i|§¢Lü$Ì—Óp÷$&7¬ðhÍuè[54Ó#wž Ñ„›û_ùíPaå.ªß×ëÄ:Êþ˜l« ÛÙ@Zªžõߟ¿ìU²cÇŽÕwxYDÛ©ÙA†Ö(a] …&OC\Ù#ÓkjNœ§ÑPïƒ;¯yi“Èçì+|[nx¯Qî…FYB xÂÕ¼³ñð\pލ$ä>dÕa7´ßÆÕ»]g#xP$hôÍrä#)'wò °`”¼¿Áã0Ä—lq Ð<D@–9+;Ñ»è ¢•/ÂPÆmCìo xV"¼ê»- Væ ¥EN#}÷Úý®›#¸ òiÿ{y€%ízk·ñš†ý7‘ …#üÙ¨%% Ñ8+Ì5Aær[Ja'†ɶž+·nz6aê¢SKPEtDI*åRoÔ FDw/BÃ…n«û<Õ„¢Ë‘ࣚ»ldzËOŸn;ÀÂHʪµû!¼Â9§ä%Üy¡±mR4 Ãg7ªÖ?8€dàªÆöàîÅ=ûÓ5šä¼q} {3çË´t¿XE³É¢«¹'`g*öø8Œ¹’‚¼‹ÒHp4Ï“tiïB …: 8çgG<ÒÙ‘ü$áë>6þê:~ùnÿ “ZYàãe*´|֨ϊÿ 0L×)_£%לïN’&Š‚¶Pz(ôOî’ùü _Ÿj ¡ükÀ(.ÁäW_îF[15“:ì69‘cÍŸÁúdïRˆfÊ>Œ”¬^5Ð XûÅ$•B:—…Ó*gêÃA'?ƒuIûÖß#%¸îjÜ–9t\2 ~á¯Ó9æ«f(àÝSF»¼W/z"©¢6¼< èwgç·nàæ&[#î@+¸¬‹ç@¯5t>/7¶Ø Å(ç¼ãˆƒ§ˆ/Cœ=eÚ¨•Òµ70@ÙÌVÒ=6Ü!øâ«PMê*˜ºÚঠUù-4Åd2UÖ¶Y];‰¯6™‹GìG@‹¤û÷€kàÕŠÅ9¤)˜WS‡Ñ.tˆFt¾Þ–®àx’Ê\ËpO"E.zCŠ=‚ÀUòWG°ƒ­UÖ˜y†¾‚‘ÂÉšGæý.+½…@âbj§è€$é7¤e¬¦jû¾@F«Ç¢¿¢Gþ¬$øˆ+€`‡ùźv¢Ë•}O‚¼L^-: ßž…l=ñ.Á! ë–±];_¤³(ªœ){eÊërºÂ†x¯Ä‚Ù±6xgMA´3Ÿ§°™ˆY?ž¡ØNÝìf"o¤»Ç .„CôŠ~êrüÂRR|ÆR)>Åá Qu¨ÈÍÑ‹”‰QõC:®·YGjÊ'ýº–&;’nGÈ6&Vh±Çq›9×gV6$=11/;oœ'ù<$2ÛZŠ8¦Ò.<æ{Ë3Z#9ÓBr ÀntÖ7ýaP •û¹î×|ñz•s(2öÐr©¡æ®Ìýë¼,p†Œ^/;_¦=`  í®.»îŽ{{]¼Á­}x&ìŒjnH4b=:OAÞÓq$À%+QÄ€ÀP”`ǃ¥mqîóè!õáR÷beÏ_§jkÿA?y Ž^Ô •Æ¡Œ! ¬|%%Úí]ÏÆ€tÄÁF÷é°4d±@ Üàþ{•Ç1¢ŒZHŒ°Ò83ãbLøÐ!L’8„‹– iýÝ”•‡TÊ·>µ$)mðß7ÉôŸ¼\„UìÛý´s+:÷æ“Ö”Œ—Ô! ã=y,mÝ\{Ocþ PÀ (í’J-Pm¡tÈt²Ê;¡|{F±£Ôþ­ zJÑ2¥–q‘hß¿Ÿ\Ùü¥Ô 8€ ST- ¼´XyÍw›^ü°ëOȧzz»µN³_Uy÷”äЇx– ËߥïÓTÄ—j<º_(€Ø‹QYTaôÄ!A–ãL£‰Ñ°¯-Ñ]ý\ùÔß;ogžá$îw÷3ÅÑ­`9„DùH:˜0Ÿ; éC5‘Ø¢‰õ5|c Ø-}5»CTÊ(€˜÷4wÆ›Ö;KÇx¥š¥n@!YÄ>S¼íƈ¡ÅðÕÊ6xBƒÂ_àÓ:ô½£@”xŒ8¸ô„§¥öõƒ­¹‰´3ç~7¶õÝ– Ð{¼ý¾Ú¾‘Y©W»å"µY@ªçÇ.SMN†}øá¿ÃLäÁ`2jÜΑlWeм"¢=o½øãqs}ñ­« Ê -aðE¸Q× •ÅJrª*f*@2±Àk5ãXãÞ(d •G—¹ÑN(s‹0øÕÄ ‘è)ýY‡ÁJR;lÛÓµP¶‰UZdd¶Ëàû¢Ðw’àÔà±Â oÞϾx eRŽqÏœ^?YYJ©ÇïÇ¡q`®ýRŒý“À©EPêâ¿'Ãê#ŠP]ÞùV"Ê4àqyþûî­†4öÇ[KÞã™ETbáÇtØi‚ Ë)¹vxEm3Œ1¬G†^(("fyàg…ò@5µ;}>·wJôKâ…3h”qcO¦0 êµíóà`ëµÈgòK eÊãËu‡=}_»„˜<Á|ƒ#YIŸ¨e” ZÕÅ%ó›ýbÂ|èfkÏ6¯…mbåOM´‰RÐ/O·f²ÑÚXp¨Ì~ÒGs&ÞkÏí&èÁyûö3àóŠ…A”®,ƒÒK †òØ~k-²ŠÐä¥ŒÕø¾võ-ôQ[/T §lîùþ«%TtýzCÐt4*ö šMˆ—ªÍ;pÓä1àT™Yî þá‚ä6TÕ¸ÿAGGví|kþ('FÎMURz×”Ó‹Ó­ŒÚéxžjrØ¢uT§¥éΦ¸P‡ (ÆM«ŸµcÔ 43"))A€ 7ÄëTØ‘J´ Ïo A\žFa÷û}ùšÂáj[Ñ…(L¹ÿ¬É'¹Qåò@»”ÎÐÀˆxTد̨|Q Êßš@u-Y$w!#¬,ãà9âÑÒÃÛeŽ Ãù”ÁDÑÐ¥Uŵ$È'߈@¸ó3ЖéŸÂЙѕéîH89ѯ°¤å ä~&w˜/@2ά¤ßê”,0h;¥ñ>¶é% Fg:ÐÕv³ó¹£gA~„|+×ZXkº¨R]÷Ç÷Œ[ðU¥\6%m?]' XƒÕ§"¬"€¬—F1p+ôæûß²DÙk­¥UUƒ¬2Æe± ‹ LVCaƒê°ïîDkØ{ï×X®+Û\Àí—Œ‡LDê <Ú/§Þ“:¡ªÀ8Iéy ÝUK§GW8ç–ʇ”^ƒSQö©ª2³ù]„*R6;`ÂS ò'à†­½¤ðêˆX)’dÝZåûûï'è4……ƒ!ö¯Åô!ÌW —ä$,âO•â}M2¸M¯¢€9‘½uäªFN5bcåð†ß­jq•AÄʵUÇ8⮚&tpwêEf¤hCyæ:Ö[U¢ªù 3Ú‡@•vq´9nA§š9jã¾ô;kð;Ì‚¦êŸÒØROÿõ5¶Æâ„r@‡ç§Òw줎3U!ðòÁíà¯1†ÊYSà"ŒÃ¹DGN$¥!FQÍ†Š ]¹n€ržÕœÖÞyÞî`¦!dæç`_Æ4Ó“¸<ºÑM‰Ôƒžª†´ˆB× â}07 ] Å’)ÛZ"­g ?É«\û}‡~™ ^›À(އtAÔWK='ctxo=¥p‹„-h·°†(S<ì7²b[Ÿú(&Š€´Y"†ÜóÔnù N4@΢kÕõ]º;\ïÈ…ÒP ;`9‰1ríÉ å…s¬ãR0ˆQR‚ŠÛEg+¹…ƒá+}…]"ÙÈ—©¹uõ‰@V0¯L«Ä ž}ÕÕŠ¸Z襅>æêcÕèÎÊ[òÖ9¼[tëà¿Mó3ƒìn’%GL8n¾ûÞ/†1¼ߪœYø§Ž!q[s"“Zõ4UYnƒÄø˜á²œU¯7–‰ d3h£+æñuå¿ïæÊ»ŽËïþ­c!ÁÇ Û„DKìß°r¤ë­™ë`±idëÆÿíwðTISáL}:hú* ̪àÍ——_«+R{”ÚM­[¸”U~légغ ‚@³H»UïŸû G¼fº‹°›¤€ªD¡ì¯ïðv¨ð×> ·í\rkŠühiß=<7]ºX_'¢é IÖ’’Ð¥&[?õ² ÞÙOtNå*=12h\ëÕ0¼eõWÕ¤î½*T,ï×Ïñ̼¼I±)ÜÍ)9ŒzšðâÁ3du®¡qc•af°m¸@CÂj&¼ÒzéöÌ>=ñß÷8ââä¸; “¹RØe9¡U_!´úÃZ9(òóþÔÄ „$—Lœ&‰AvDÇ^C8§¥ôŠE x_9çŒàŒUJ{ÐÀ®![Šâkº€7üãó÷—›KeÄGòËL…¯ óÜ Î*,"îøÖ®óü^â´hrš qð5aÄÐ/Nžþ÷EñU…²<Ï–K!±Ö4g{’¥ƒ»þhè¾Î¼ý UÜ•ö¯k¾p?s !{™LZ¨•d4™ºeJ¢hŽ/ª¡ÀÉz·K®Üþ&¡A±0d‚êHÐ>š.P¿+“Ÿ·ã¹1,5S¥@Xy fœ£&LH×\î`œBý“¾mˆ% âT@(h©‚·¦×ÓµÆDƒ·N>K,?)¤ZÐ[Ay Î|ÀDŸ_rŠÁ)Î=wàŒ® €åB«öíß1©Y>(ÌUÝD‘NÛQa ­1vå鸎‰-ìÿñKn¥ëI9Ìrörþ ¤S¸·1;jœÊ‰-9gëÁB];à>†ëqM=¾“?eÍ\üØ¿†î—•eÍê}B‡‡©š}­T)ý!™ã3q{W|®3ž[Ì/O@‘' z„$¡ÛÏž§‡ÐìôL%BL@hƒøaïË®Åíói‚¼yßýÜ9(Ð\}å×Òï«G•ªºÖðÔ¨ïÒ >â°©eH@.{‡*s·(êQ\q³YËùXédK'\@¯HÜ;oåK3Ñ|ŒÅ¹Þ¾^Õ6OÝÌ4t"ù,n-Q+ñÉ0LI¼XÍÆWóúµš è`U‚R€þ*’áÃ}HÃciÒµ´ Þ˜ÅàÅ.=]ÑŒ)G®€ú§IUy1ãI]åŠ*šw p -S ˜ ‰ÀcÃà/´vZËNÑ ÀníiV±êhº˜Aì÷¯Pïp!ñH±•+áÂDPAOV!j=xp~tTóûZÔˆ°#ˆóµµhÕØœ““Ð1;P.¿Ö¨˜Õ„(èx¿e}°æêrÔ«ÖʃYˆù "¸Q<’eüä¼ïǽÔÄR™|ó\ë¿ër˜>åèÉ ×Hýj>¸µ¸ømÐe*¯wAFnÝc‡ówb¨Ç#6Z0ˆáåŒA·àªm>̃Lúx°¤0n6ÂLÖÌè K“L ŠQä|(P!zÐÉ–L×;¤ÜUÐ#.ÌkȉÒèÖÉØ tŒ¢SHT…³Æ ®<ÑÄTS !„³0 vÊ1 }þáQ·¡ –ͺøí HQñ›D’Çœ–µ”ú´mcÜïóôdU\žˆ„‰‘ûã$‰Hä X)cë¹e[=Î|ó.‡ˆ<î¢fžYBX  _¨ßžj^ÁU“·©•äî‘Íÿ†Uw•UVÇëb2tÛL ÝФQ|©‚ˆ¯óðV2UŽíùÄ÷´®Ã; HŽbû7RùpÅ[ŸCõóùª¶Ws¥çPÓl Ò¡š¦îùÍÅå¾( ,HSc_Ø ¹tÏOKÛ™±ÐvÙÍ“5-.úBóÁ…žÚˆúüÎnÓÇs‘‘ª 1â¸ÂYX×C´2ôrEš¦!Qþ¾#´[SCì_¾Ô¾•E¿§=NîY^¢wÊ-·UÏ`‚'>·¯÷’ßy¯ã0 òxÂ~ˆ+2ðuÒ—Æ@ñŒ@vuHŠ(·-ã-±XYA«‡À·Ž°è ]`yÓíÉG02>¸H¹ÎVè×=MÜrÌ"4»øÜ°Õ‹¦M㙡—ë‰L¤T3Il¡û}ùÖÛöo‹7cE€¦ ß"ÖƒÒÇiõŸf‘^|1ڂظáëHâ¦%³~ØÖq3ÍŒR[¿?ó1“°È`ŽF ¶ž¯ØPO¼‚0 p 9æ»l¼ó¨­\`¾Üb®»÷×yr„š]žKïGˆÎl×  9Š'¡"4ÙDéûʈïtöV®+º¤ ºO”Pó&“€j œoä‹%ì9ÿv}@ÝÿÞ2ë‡Ec+óßøÑ‡¢RŸ#©žÐ³;±³†Kš8tq9±ä;ÕL¸êmF3NÞ¹xïYó)¼ÃÜ~¾¸ÞÛ•I%I#6Kv¼Tàü¿ß,†¤ŒQˆO¼¬ÃꀋÜÙ^hØ¢Ö#ÈŒç>Ó1ÝkXGæ½u ›¥Ä‰•îŒW¨/9 ¶¿ÔŠ]g`aÁ-%©sý±¹Ò!ƒFq> C^=ª4ņÙE[ÙŸæaDnÃïãwúøø¹€ê°­uqoÒ‡6¬QmSßÐ/9x»Ä1ÀÁ;VéÕ;¨eP `j¹w¡6ñAn”›~‹ôÃààÔg•Ü92@pìÎCª†^+½ßïú”À!­¶_õæùYv ÒÒÚ/·7^­JêB/“”} Õîà îxê\– ÒL4åÀÞ‰3­“}­Ò•Û,ŽÄ¢jÕã[·hV¼mÞ˜ÀdK÷{òç³JXƒ¨²\Ñ ŸC`ú¢2¹»_âʇë¦r7Ý-„¢ó÷ðkEe…ì„ÛÝ&QOss_0dœ¢I"V€" [¨.ªBUR›ÍKUG ÏàUår‚ÀÀóÆ•“[cLdq”mTPЂªT º¬ú¾o]¥˜ìp@ÉuØ,)ý'ßW…oѳ‰ºÖÍ  ѳíéáÛÄå^:~hóiY_«wæÊ_‚DŒMr¾‡Sð‘„ç2Ɔ×7çÅ{sñ<]-4]•Q Š6k×ÐþHã5P"fü$¶(…„pvÆÙ,ðc»qàmû2ihƒ¤ëûGZe“¼ƒ™îi~ƒ®ZPß¾øh‚Gc9BP¨«È(†9@ÍöÛï ,’Ú`ªM7âEh± ­Â§ŠÊÆüpÀÉÒ½fVNéj’·ßo„ÒÀsw¤ìF3 /œèÚö¦×³j²c@`2mLÔàÜ3aðm;¬u´¬u%¢ոd}Îx¿OhN—‚ûùý¿8(!L׬ôæNf!ñÖ¶¢#Ô£¾Én*3–ÕCÿÈp‘ˆ£4È]^ŽØõø ³ll2þÕjøŒäñV!21åÙ·5Üx£_Cœ¹åè=F-ë.æDwR$¸ßX]Ìsˆ‹¡@ßÑã¿lÒJBÂÅÏo•Y¹íåàx`S!ˆZny¬è°ÈPYàkÆö q€\LÞ6墵÷…ׯµý0{g;:è¶ãbÛù,—4pE m9 ® Ú(Ã`$ ;áG§xŒ”P-ºOš+Q&‰Mfœ~¡Ð-Õ`CÁˆã$òétOö!o9_%¯À¢3#h s/S¼¨ÐûýY“¨I<µiÚãjVryé{$ù®uñ=°Sy”ìÏ€ÑíƒjÕ‹Ë, ’Ãu z”´ w.¿œL» ÌV̓#Lê]µ‚¢Ù<Å)ŠFëÕÐëqÈ$ØZ-r»7ñœÅvCñ§MìL£õe ŒÉbs½ó"±B;†€†\R¸f Ä'“¨÷^j$Xe²<|¢™ÔHMóD§8íu€TYw,/xìš$O'ÿ¤44R–kdNv,öç¥ï /4Ê7¹´â¦FÎ ôFýøÔ¨\~O½!Ãhþ’ŸPmOÖ`Ù³EZº!p<ÁXy(þ}K¾­(ø'åÑDÚÿ?Á¿•òF’Õ>Š+î7ˆÓ²Ê&?¸t5Ôö7k •-s T„HñSoýƺiNÙù‡‹šQ}$¦à>£i¥¦}ƒ¾P²·æÅ/·Çù EÆ$m@Ù¥¤h-“=­ÞRRÇž¨g¼bÐ_ë‹Eà¦XØ#ƒ£¡©Ât)}×ת° !©ù$nÌF~­ª¿i¥*º…Yžð“K¹Ô £‚1br8YÈë sžUñàRŒ²&¯ê/rÖÉé…ŠAD™Ö cÆC½Rºo€U˜ôx¯ÌÂ&é_mló«ÀTY €ØÖ‘%Æ‚*ATUâµv<_âïöÕ é']«o¹%W`ëÕrYÏ|®¼ôG•Üß}}×û•eJßœˆøœ,÷OÕ›22¿­’¬´A/‹v‹ :fÎCwF^ƒ|æLá²µ8}#bYÉ„p¬ÞêÊÃðpVv›Jy¿ ²‰‡ˆ6ÀF©R)ÊÁèa–àE®w~¹º”òUhù[¨F¹Þ~k¯I)Z‡Œe6d{eÚm縅(ÖWëÆ|òDŠ¿d’%$8¶B#ŸB¬AUJTrvò¹¯¶±T«êý;V -Aw=ñ “m]Uv^þÕj swvñïô¼‘êBaGmIå1ŸCö@rL›jöæòÔù}@6‡Ù_‰ºêÇ9úˆ5» X_6Í+½ç2æ¾øN(«5|ÔM –FX!äÊ‚¤‘â,?Pqäk:dÇ3ÐÕ™Bt¼GDF®MÇ’^ÕámAÊ(@\‚¡ºW•ÈfîCå‘j»8S»nsƒ¦¹Rs¦ ‚ŒaUën³æ[fÌÜUÒrX×ev”1¹Ú)Hž 2@¨!½LSñžåøÛ{O±¹ñaG+J<1Çf@üRAËIAÖ®R°Á§'ðǜ•Vϯ¦NèÖ,ͽÖ‘!¯ž!7C€}|ÂÂ+1ƒ¸j ¨N×Ò¥aàçµ5Çîhi3¢yfu4ØØa€U†oïy/Ò|)©Üð|Â>uܯ)¼NM£R¥Úq©G3´ÑŠš]º·ÃRfí0æ›&‰rÇFn0gR2ï"¡Þ™g_âŸð:1‹bVYÎ}v˾dW7¾?sµŒ‹œ™¶8bÉýÌMM0fqžº›â˜¿èRª¿°cUA\V»üÂ7@®ƒCÃ#£Pݼ¹¯Œ©c½*¡©SÿsY\!³‹KÌ·Y=þ?R3­Q,± ë+»Æø&ä—+á¿õvô¡›ôI!>f¶ÀYb# 1ŠøÆÆ(¦ÒÓ>Þ /“Q däW¹’(¼rW¢y=”TßÝÊÊp8­)ÞM}ýÊ5’Nèk(n’ŠÉ<×óyÐÜ èàHÒëêZÞÒt¡ÉG¦©p Lî»Æ$«æ Ê §;äHAÞÜ,]àÈ’+=iÊihåÕ*£”vwª^ÚÝFº3z.rÅÁ!ú8ì[]¦ôS‘,€a>P߃:ä*6Š8z´ ¼kúl"ÀÜð>ÉP'O¨éV? Ïô>¨6x*¢ºÚV‘µš/ÞW‡–s˜'Þa'gs¡ž†˜¢))…©Õ7yDø ÖÆÒKÉ[ ,àSè­îJV¬@j§„EŽÖNÅ—·þ—È08Êt6'Áœ³ÑtΓ¸âã Á;H´cͪxˆLç 1T¡õ)Å&s¿úHŸ›wؽ'1¶¥:vdR_ƒÇÚœ4hŠ™…žî:šöá‹d±{3¶™…ÖëõOSÁ!|œqÀ/÷ÜÛ¨'?.“»v Ç…¿áµÊ´ ÇŽ`ЭP—Á/’Ò½2ŸgˆÐˆL‘;õ>) סõ 3o=eš¤YVB£9ik 7Vó›áµù Á½Ó鋎:gc˜³±ûZc$ ½†mP¬pj¥ÈzH7NŸ¢Oë‡B‚±ÉƒjejöI²Iý6õP8; xp˜ Qz Ó#.€r…ETYLrªÁѰFyjÔéú° ¿Ü)ñµ%áÆžå¹Ú©&d….o+q¿=Ù&ø¥PÞ:*pÓnµUâr;¹âÞ_Õ'&Ú&(ÐéJ ¹!^MZI æo•gK%YîV~à×CW³¿&ÃÄ“[v!íMÚíg<Âä½ì‡ÿ*.²±k§w=ö÷R\v`ƒ€ @~—9ó|Š;êoñ¬ÔsÊFÛo×ñXŒ!)xX;mç¹W£pwÇs“¹îýY„6´{†˜Ò˼٘iv×ZQ´¸ô$Oªì<îQ ¥9Óצg01eÈ8 p`S L¡-„ ö\HYB ²Tó9J.…`–)ód0¦–M4׳$ÚõJÀ·¹$þX[Ðï¦Ä•ÿÄ5vï‚ê"[æ70 ]ù&|Ñ¥"¶´`FYæüoBÒ?|“¶³ÔIƒ­fÜ­]^åþUgRŒQÆ<–Òá5«éÞø´Äø£³ScÇìoÿ¹¡p·À\’ÁˆrE30„ézàRbóI‹ ¦)÷Ž­Î P¿¨ ȉ‡Y$+-·Ì€2”µ¬DÖ¥/+³]NMÑ+z<[¹ ¢\Y e€ß™í™Ó7iá&¦GYˆo5ª(*²+tµ†Å-…Xʹ iqD.Щ©¥*x©fXÉJdnhyXCŒ—$yØ €U¨’°_õsÇýl† Mu w¢r%û‡‹‰Ü­v¸DkN_N«wÙ>á™-dΈJŒŒ(ˆ°@JBÚìâa³É ³{ˆœÚ¼”+¨²OÁœ®x÷ …šöˆÅ&d ºÖ/Àö…ìå4ÐUÀåYëK=¥¤µŸöHïçµ,Çß®ÌÚÁbȆï^C¿´Ÿd#ó =ðC-ßSÁm®ãÍD¾J'j­cÁ”è9áÀ >¢tŠ =,¦Ý° —8°Bü@^ßüt`yযŽÍ’ž‡CʆY8P«°˜(µ¬–-!Ú™¦L‰aœë@\êVw”-[¬ë²¿”|­n}âs’%P£…y „O+ã+`j +†þ´íT«R"C„Ž¿òAÔ›À7à~ ºõ~Áò ½*0+‘•åР-¤^•ºšqŸíGï; scÂ7ý"¢Íx˜õžE =” H ‹‚ÕF7¡ÊÀÂ_þR;A1Z,èw 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0à 0ÃàÞ|ð0àe?ÿÙ./Doc/Tutorial/bingle_vis_snaps_2.jpg0000664000175000017500000005644712176660653017437 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿ  "ÿÄ  ÿÄ ÿÚ ÁÛ½ˆ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ~aûâ@5¼ì"¯ðò¿×ø€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯ð€+ü ÿ¿Â¯÷æQ„[Žx@µþ]è/ô¿Àø’Ú²Iãtå>¬ýSãÝyÿî£BÎÚ$@ýoð%UU&°øf.½?ÞÙ]JwÝóçè0@ýEþ€7ø þ€7øÿ@  þN‰uT]äcZ³ïCO¯ö/:Ü3³Å÷­¥žm¸„‹Ÿ¸ää£yo>„R@€7úßà@ýEþ€7ø‘ß\^xìÛ"rýG<ÖÓébu÷`î?›6„~_êµb³K/ÓNO øæ%ž™ 2\ä‰Ê,ïÉóèXÀc5Ñt†˜ÃWª¬ÊfæMT:„(°ãÂñ¸Å"lìré+Ç·ynÔ¨mJtÊ€Kø¾}  cæ­ÍĪ+páñí1 ÅŸ›¨¤)éŽe$ ö‰3߯Aß ™éý3èóÔÏ‹çб€Æ>ni5¨ÐÍp¦:ûËu³½l¨]”)ügâ¬r1Û¯n=»ö]øög¤øðúü_>…Œ1ó‰hs¨??0]*ÊRžEy¥ªãQìF˜â?hýÓ¶âv9ÎQéÚ/âùô,`1¯ÏsÄ9In~oŸË]RE‰ª°²iƒêµ¯r ¸0¨ª!¾= Êo-ÅGÜüÄüÿŒ1 |þG,¬Ô ”î²¼ÅíKŸ«ji" H%]~ X³;PŸ¯Õ:Áàw‚&àqÏ ´ï2sM¼L`1çò:‰Yˆ ´/ohÞß‹D”š„P ̼ÌÊC)ÿ£°™ÿ´´^´O c@ùü‹BI*©Ðk‰Ú„Tš'"J9âd¢W¦Ë‚§N”«ÓNäʪrhéÞ7𙟙G\§$/ c@ùþ’„š•ÔºI§ŸiÑiíiWžŒ• e„×·Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…Œ1 |ú0ÆóèXÀcÏ¡cŒh>…ŒÞ£šSñ‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*c#•1‘ʘÈåLdr¦29S©ŒŽTÆG*aÈ(æ•_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜_×L/ë¦õÓ úé…ýtÂþºa]0¿®˜1€Æ4ŸBÆûC(§Eoê‡e4Œ"Å…|®×Ï«A©kK‰UJEb—_¦‡ÏöT5ʘMU=)õ•iXŽY:Ô$ÈE•3=Ô½Àcb'ýi]_ô-Bï¨Àa Ryx+õ&‚y+Q±j¦NŸì¨ûÊž£~„ò˜(ß¾<¡¨‘TäœRägété‚·M9ú1€Æ>Çú´Ê™KzpI¥p®!…ê­tžN (aóý“âeG?ÍzWÐrµj³<’gHÔ<¹G­ú1€Æ4ŸBÆÐ>}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`1£ß¿H}aE…§•óèXÀcc*º›&ÊÊY ëÙmq‘ 3õÊшÕ5OS¢L£Nf¡£ä|ú0Ǖ˪]¯ä"5;ž£MÆëw…À›ƒÇ<7äÁÙ3ñ¾}  cÊî©ÑàásǵSû–•çúê; ¯ofƒbqã|ú0Ç•NN©ja\ȉ*…I¢’¥œfÎ% ÂxféÞ?“F«š« ñ:P‚Oñ¾XæO Ç“ž’¨ËüTU¾šPMîN6dž{Q L¦®š¿L‘ž“©ÉøØÀc@øTzY‰¢¥¦imû35HJ)|¯‘óø\²ÁS.Äâ[˜¼“ÎftîªM4H ÿœñ2 (páp9…À˜ƒÇ³F<ÌNHxØÀcÏá_ MK¬Ð¹ãÚ?<~-{¤ÇTŸ×·åøÃâ?Yˆc‘üj]#÷V¼l`1çð¸$ZiC–©Së…é”í9© š[£ü`Ž¡CÀæ7fcŽ8jiäá|¿ãcŒh?Ñ7('šɧœé1à·u®}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`1çб€Æ4ŸBÆÐ>}  c@ùô,`3SaX®.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂX.ÂXQ°¬ha,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a, `aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRX0©,T– *K%ƒ ’Á…I`¤°aRXÔ¬‘ÒÿÿÄ< !1A2Qa"@ 3q0Bb‘RS`p€’“¢ÑðñÿÚ?þÓQQTâ1QÑÄÓÔNÚcz“ê{rNÀq[ʬÛE‡¶ ib殦T*¯¥Öµ3³ÕnºRä‰Q¸’G–G–F/$ŽÒ;¬îK3rI?ªÁðšÌs¦Ã(S]EKé[쨣v‘ÎöUžç`7#ŠÞ@ãPaF¶›Žz¤‹Ä4ïNbŽCkèY|G({ÊÀ›_O^%ŠHd’PÇ,NñHŒ,É$lUчb¬#Ô}™#+I›1¸¨.ÉMñªä_7‡¨žÍ!6¿eFàq‡òŸ.ÓÐ,+…Ңļ(îÛ ÝÜ3¹>¬ÄñÍN]ÓåÑúS Á§Ö¦ u¶•–5ý‹1 È¿%Ž ÆÿUËüv›/fj:úË bžY¿„$d"Cû¡=•‰;+ù•–)pª—¤ð¼ ®™QÙþ]–5RZFnTI°cÃÅq,ESÂZêꪥk¢Ï3Ȫm¶ j·{ýœšÆ)p¼Ç45,©ñÐÆ"f¶ï³Áõeµ»øgŠlf”Ó|£¸ôs³£ý= tiª™b?2³5½A7õ·¯×£¼n²FÌ’#GBU•”Ü2°Üwtâ—™™²–œS ØåPºD“DZ[vù‘ÑI÷*O­øÄ±Zü^ Õb5/S7@[ʃú(¢Ê£ò÷¿÷›ÿÄ8!1Q@Aaq¡2‘ "0R±Ñ#3`pð€’ÁÿÚ?þæ’D‰I*(¹'qÚ eê³²’l€ ;›·û|KŠyZ-÷NVs­ÏxÖî¿~(º@Ò8Y`|°¬C.Ì.;?ŠYhª¹*Á˜ òØþ—ÄU=J¢+–.Þø…Y!‰ÝÒ(Õ6UŸ¯Úâk4u2£ß2»æ(Kç]÷ý±@RC›|·ô;v…†béHçvXÕXù/öø¤â'¬{Ç6Ýb€srΧ{wƒÎúb£´´®ÜÌF eȾº±>ß„HQv dØ{àuã˜øUñZZ3‘Û3÷ªÛO3ÏÃ\RñzJ¦È F;µ…ûoI«ª­¢‚G`ª/m¿™>Øè­mD²¼KFP¶º…amG+ìyý1#Øn¨Ì<À'B¢F™ËIbO‰Å ò S¸ÿÌR9’šmÚ5¿ïëÛ8‡¥â$4·I™ÖÚùÞÝÇOÓ?…Ópåa%ŸævµÈä-°ïÿGÊôrW•¤¦^²67Ê>eð·xäEüqÃz9P$Vz¤[sà?=0ªUEPyaÿ6úÈódë?å̹¿ë{ⳌRÑ·Vo$ƒp¤< sò|j–­‚MŽ×7ò¾–õ½»ŠK$5E|á@n3¤ûâ ©Úº+»k2oÍ…õçŠù¤2±$ß1ÅÒ }ÿlR³=<,ß3F„ý7õß¶²««#€ÊÀ†bG8x›®´šÁ3 ^÷ÞÙ­ëq>Èò4”À:1¾[€Ëá­¯æ=qÃz7*H­P2 7:ŒÇÀ më£@rAøUÇMÍ)² õ<€ñ8¥tÍ?Vð•Bmœ=Èñ+”_ê=p¤0 ¦êÀyƒ¨>£áÄ«…1–×s÷ckó>õ¶&ãÕo.c<›÷1y@à|]êÿ‘1ÌÖº9ÜØlyéß¿kâÔ¯WE$Qüú0š×Óßpjת!{æät×¼Ÿv)âê`†nc‰žeT‡H©ÞjEdê˜æ“[_B=ðôîltj’Oâìr ¹>š}Oo Aƒ¡PF‚Ð;çêÊø+iî ÷Ä0EN™"@‹áßæ{ÿÉ¿ÿÄS  7†Æ!"5P•–¦ÕÖæ#08“§ 12@A$&34BQaCr%ERbceq—¡±¶ÑäÿÚ?¬Ÿ>¬œD=ˆqíãÇqjT.¦T*L¬áË— LÇ*X㪲ÊÒŽ”tcœÄ1TÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýmhö'ÍÖÖb|Ýj_úQí'´ž»ÿ™=O¡zŸÕ÷¼¦‘¤zÓþÃ5˜ÿk÷zÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­ÄùºÚÑìO›­­Äùº×‰ ¢ø£#ä)ÉF³h†iôÃyv’+ç0p}!¼Zyµ:)h¸M3¬àÊÞŽÄïwîWÐݶw¢¹U›t—ÑÝ¡‡<Õ|Ñšr–"çPS ©â."†PôˆäáÈüFÎBTÔüÃæ™EÓ8¹˜éM€£„Âá»G*ªŽCιƒóü]¶Û£û”4ÇmšénRf×I]$4—ke̵C:b眫„٤ĩòŽOJMª ¢ƒràÈ7˜›ŒYbˆá$“×(@C(d²nªšè,BªŠÈœª¤ªg DQ5"Cå1NQ˜(ཉÞë^ŽÄïwî„9™_Buê³Iu#‹#˜>„gäjtÜ9Í‹¢7Q5̆0HåS…ð>©_R ©¦W›x'Ü YnÕMÍ´«ä]¿x,Ò 0"çL¯J2(œ £‡‚‰OmcP}o§ûÂÐðôI Ò¼¼:bî_ÊÓÒ$ Ý)… êA¦–ÅeÒMe¢šk cb3G™&ipÅxT<m57wStëÔD6#G21®%C½Ž•] ex›âçÔ~e×PB ¸8*³÷v1”`;¤£¢OËWåŠÙCͶ+Æmbãá2=TØéŠï c"EN(¨TLéRiVô¸Ó3ð²Ëů£é'„šE2”ÈÌA8tPUV2œ€SSS2™Tͧk®ÛmÑýÍÑúZ`±?éR†,Qd›Ê© ZÓH™Ð•;WI¶=0 ³ å»tÓ•2ùÁIÑH%Œc\ÕÔd-F¤S'2 –še‚˘‚‹§Q%Þ•÷ª”|ƒ²2:©ð$)¨©ÖMK7dʽ¢ÞŠœ¦'_ǵtÚƒq>ú¢€i$‰&ðγѲ @ÎŽÃ*GþâÄLå[Óz;½Ö½‰ÞïÜÿ(»L‘ªÖ¯óª&TõO xGÐÒ‰ÅÆÇ:™ÂÔȸ~ñD‘xÝtæ9c¨Š $rœucü‘:¥PwMˆ¯²·|ʧ£oñbéûª{*„mWWm]iõ3üY¤”Ò4l†qwh˲ BVRB¥šƒ¨‡“`# ÞRIi¥Þ6EºNRU¢h&‚ . ª"J˜ÇjdÞÍ9!J™´|Z”}äãIÄÂj76žÍWtÛlh;Šw‰»vÏù €ç¿šç"Õ¨šNª›»ôe£Ó»¹šÐ‹ûöz"Ã2a]Ú(=u“­‘‹¸LI&DÕ"È¥k®ÛmÑýÍ×O<Î’&¾znmâh.à±ñLBPîž®F骮e<¥/†*tÒ USBT´e+q5T új5v²·›O̾9*íúft#•ÌٛƮ[¶_4á7ŽЍ“e„|öîÿ’Û&låã]»yOÒóçš6nñ—sº±i¤Œº ÊÆª¡Èšo ‰Îb”m?MßI—§gãæäˆvÞœ™^"¤€1ÀbÞF©ÖDª*¢YJ¹TÀ „¢ ¸8A ø¯£.áÄ…!W<…uM]ä£A<ãÆÚ%K0H­Ñ‘õÉ<£TŠÐWz³B¦˜eÌ«hÂÿ'ªý•x´¬h#C6ö¥Zi$ÕvŸ¬ÉTGÏ ¼kfM›Šâªß(™—KÑz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»öÎæ&Ÿ¶Œ`‘—vñÒ€š)¿úCŽB$Š`u–TÅIC”££PÒNÐMRb–©EtÈá0Ü+x¦+"ºX¸åIÇàbñNvCÂKžÓôc¦ùr™í&™©LAÈEÏ6ð €rLŠ™ |gÎaÀ)Á½n­'R¸9HÊ2AÉ]³“1€G5*D[&«É¢ºlÉe„éƒ2º6t©~+®ÛmÑæÑØîµèìN÷~6ÐP‘‘¬$ÚéiÎ!aÀæUß¼*f!Ü,²É(VŒˆr%Wpªi•¨ñÕR$ª¥Â)Ç=†¥/{¶Q`Í¢b?¬" §æ"q1Œ"Þ6ð\ûCáTÑ4¹ÑI)xRBçÄY· Jµ(ñœ&á3?ã ©<>l­MtNUY2*’„DQ5 !Ê!ù”Å0ñøŽé¦.Ïì­*èÌ’lA&aôãlâ2Rj CÙ¥L¤{qò·ål¡À`áÈ@€‡ð+2ågU-&¢òNœ¨+8‘däª.IeMÇQuJƒ–®|J(«1pª‡QÀâºí¶Ýa½‰Þë^ŽÄïwã¼Kó„©^džwõfb0D¶ÉÇSÝèì’ÌñƒÝ`â'ýYl6¢Wzlj¤Éôq †Fq1Qåáý 6 ä \ ðÞ:ųW‚9ŠFSðÓ-ŽásŠ‹¸Pë,¡¿RŠªa:‡7ùœÂ"?æ>‘µḂjâŠxáÂY Õi7›eDr€R+Ç.L\ ˜Ÿß'áºí¶Ýa½‰Þë^ŽÄïwãqx¬Ö^žŸÑ†]T'2DˆÔÂà"tÛI×+£ÓÔY¨UlE;4§©ægxùÙÊ0Ú;&ø€|ý`ìÛ€âQCp˜p¤‰T]D’<%4ÄÂvÐ±ÍØ•c¹:D÷îÔ.SvàUr¡ 8 uLRd |J‚›YE’ŠË”Ahg*h¥ŠaýYZ2+“.Y,B)ˆúFÕ=zäŠ&›ÂœˆÊ\$pŠK&öYÀ ‰ïR`Ù#¦| ªSPÅ.ÃuÛmº<Ãz;½Ö½‰ÞïÆt•!IR5RP tÔLà%9C”ä9DJb˜  !’Âéj)’JåÀÁüÌ[oÏ/(É&ŒÊõA.N.L<3j:²‚X¬[‘#¹9ráQÚü.ªP0”Š9US”œB˜•DbêhðÆÍ 8ò¶Æsž9ð"‹11•QTÀW*£À£„ÖQ ’Ÿ~Í"àI’q. PÅœBI¶q¨€§‘AHê&å"ŽG" …"(ë,©€‰$‘L¢ªÜ!@ÃùJ#ü,ÙåJÍÍ%MR™É¤Ò;i§Érj\ *BioÊÙ"ùæåx$l¢l"ã¤Í‹D± n‰p¸Žc¨¡Çõ*²ÇQeÕ1ÖYE9Î?†ë¶Ûty†ôv'{­z;½ß·ÊÀ < ?Àl"Ý«t؄Š)¤"'ÃŒGC.,Åþ8 —ô‡Àºí¶Ý‹ ÏUЀJdâE¾˜–,З>Ô†:íÀÅ]5Ë2ŠFÎåÍ”ÆqNOÄͦ@)ê×íÝB B)Vn" yBÿZ¡ÿ;gà*yè…2GA”x‚J¢"TÖ@ªæHr‚K&tñq°å³*^ó ÜŽ,VÌjÔ“Išr±° „ËFÉ«\ê‚ E±³K4´Dxôv'{­z;½ÜÁuÛmº?…#M93:†¡nwnäQ8¨ˆT×Ì›”J8\K,›–¨¹è´z)arfë"uU*ª§2Šª¡„ê*¡ÄLu9²˜ç9„LcDÆ0ˆˆå5›§ß¸Š•dpQ³Æ¦œ¢”H¡ ItÉ…fΫuÉ•5’P‚%ú€ÅI4ΤtÛTGˆÞU¦îâ1“IÒ'Aò œDÄAÉ&0—Ú~£ptá"_ÉfÄD¹ãµnuRo”D D Áú” HNK.wrR®Özñs‰Œ'Ys‰Ä ˆL%I>ÑH (”‰!Pô™’Elü­0èôãµL¡Ž»†íAX×kç8â¡Ø®“u©¤.Õe„øÎtÓøW£±;ÝkÑØîæ ®ÛmÑøÜ,SæÒÑGhq2bD]I © À ‘bÇHÂÒ¬93àš¡â„1Z<©JF‚bœ ©šÇ6+•âA6m3"˜å¢¨”AK'*²žÐÕ` ¯"-ÓfEJr(¶÷ µÊ‘Å%\E*ò”2ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­Y{5v5ãzÛÙÝ7ÔF‘/©ô^hÚV9Êbùœî‹ý…\î>k县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^·Ëõ*/[县ú•€-òÇ_ýJ‹Àùc¯þ¥Eà |±×ÿR¢ð¾Xëÿ©Qxß,uÿÔ¨¼o–:ÿêT^µí-ØÔsêŸh´/^šDÞ¸ÓýG¤èº|'èhg³ZWö䱿x™ÝJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ómJý¹¼^ù¶¥~ÜÞ/|ÛR¿no¾m©_·7‹ß6Ô¯Û›Åï›jWíÍâ÷͵+öæñ{æÚ•ûsx½ókÑØîµèìN÷s×m¶èó èìN÷Zôv'{¿pö~qÂcJè²}"¡Ó”Y¡…œkgoVÄåÂ$Ëu3e0ª¦H¡ÊÕÜ«ÐwVÇçý¤"1Nãš¡¥Ķ£ªvÉG;ÎF°LUõs‡Y… %w™\øÊ.º„ES:«,©ÊšI$™Dê(¡Ì R…1Îa” "#’Ò‘ìîôhÓ”º+4nE§t:¦> *‘\èúÁ6ï fìZ © fDnåF¹ó‚¶4%KW²c*˜Wb‹Y95šç¦&›ê¦/ŠÄÆ!È Ù‘6läS&”ÂÎbûi8·égÙ¾f©VnºyD¢$9‰S&¡!ÒT‡IB•B¡k®ÛmÑýÍJXí¡Š·Éû;2ùdiæ’4¶‚»hÅÎó:åÉLçÔºvŽS`‘Ñ€†Éè¨'(jÆ&‚¤b&d`é­M3¨žUjD(-ÝIH.üù#c\»$ÔX¦g$Lªˆ™D³‹–¤½VÍ(©(³8i>gJ1§U³‘n‹øñ1Ô9ÛÊ”QQ¢2Ê‹TAQ Æ–ªÙÉJgT¬Tk'åtÒ.5Ñ9VLEè&˜ ‡Ñ3ØR)•‰”L‹ÑØîµèìN÷~àÿîÿkAJû`Z EõŸô°ÐÔV~ò$réÚv{Õ¿¤tm3LàÑòÛæýüƒÿòZ¸­/b“ªN+]VÔ â>VZ"atKO£˜²F²+Èï¨écåÊ)¹j¦f ®Âóã’èYÒ i³Qé5˜ŽlZÅ‘™uˆl§æd¤K¢´”I£ò¦båtw-Ò(E0úoGbwº×£±;ÝûŒ–‘Ž€—©Ä=X㆛•$„dŒ hÜÌÒv³õyQÊ®N’ (¨¨Sþ¼m"C×cHû¢ç[ú«Õ~¸ ¼þgDÒôý(3yÝ;GÑøº.sÞÚV ‹ª/‹w<°9oEU*B0˜u‡Ý=j-HT¡ïNÆa:‚ÕU9Ч©¶‚Ñ‚*,àâªÊ9tñã“crù륄ʹvàÙE<)L©¢ši’×]¶Û£ûšvIܽMOÌRÊÈ+ 5JJ’&M±eE¼Šõ<.iÒ(&š˜S*¸1¦UJšª”þ‰Y¶SÕÍ"¥@ ¯Q°£ªeabªÌV^QŽŒäŠ*à¹AÉ3|ð™E•eUPí®ð"E•6ÀȯFVnú=ûuLºRd1ÀI‚ê*ªŽÕ2¦\ʬTÕ9 PJTuåq#s-íÍN¬ëhg. %ƒR¶f‰\¿¡Uʸ¦`"¤È²i(OEèìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷~LJ) ÀŽ`)r˜@¥ £ÁÆ0CüD@†À¢*&²cˆDŽU"C bˆ”pœ¦)¸x Âë¶Ûty†ôv'{­z;½ßV[ÍûpÊáŠ%u"ñÓÅY¬cw‹¤ Ê`MBA.SD "ªb¨Œ“sã ‚‡i%?Ö F>M«ñH¹2ŠÀÛ5“‡A 8¤(dÛ:¨[S˜˜vžÊâŸöFmñJNS¬uñ3dbhê·x±Õ#3>©&äæÜœâ¦9k8"bl¼ Ñ9³ S BE²i$™x©¥à±_BÈ¿ˆzžA#¸×n¸.ƒ"ÍŽ™ò€&\™BÍikÍp‚‰<>b:®$Ô[¸b›yäÓ72 º-ÒD[+›ÓÓUU|Ïâ]vÛn0ÞŽÄïu¯Gbw»âÇStãÓ1Ÿ©sæYê‘Ôt"éu˜HlË—ëFAÉ U›‘'j7ÜÒ)ŒaÆãÆ7˜Â<""<"#Â#b>fºÍ¶9l骪7p‚ø€Q’1THå8€È`1€Ùgn”:î],«—+¨8”YuÎ*¬ª†þñÔPÆ9‡ø˜GÒ<‰týs9–†YÅ?(²‡Î*²ì3glº£ú³‹F¸du nª*(åËñ.»m·G˜oGbwº×£±;ÝñiIƒMí2hÔŽ?Õi’¯].Rñr™¹vâ~0‰Š$â—SXÙ?é&?ðÎ/ÿøe°zFÓj¨[º­$UkÁÂp$<u•þ$Q€82?Çâ]vÛn0ÞŽÄïu¯Gbw»â¸€8µrCiòd.5#%MB ãRçÛ2/â&}¹Ì:+•ÒQº”¬Œë`>$i–ëM·rL¦Â 7dš’ €pð•ãD ^Ì S¨<…sJEã)^IÔMÔft’>‹¦iûÕ𔑈61°g­Š¡T³úbm#Vª ™»Àr·“9¢È41€D–(d>¹‡Y²™Dà†P •”‘\ˆ7A"ˆqœ¥2îJÝ¢³Ž]+…é”TÅ)rÚ•hb«êƹ9)0i’ œÎ_»¦÷î•TÉ”Â"š9´²áL ë¶Ût~9UÓPÎDÀÞZv.9|#— æºDù ²îø ˆî=ãWíTáMË7 :n dÊE1Ó7€ñL<ˆóSŠET#ÜK§K; >á°@¥M 9TtàüFèe6E‘UM \ô¤fU4ñŽÍÆlá€Ħ!Q`.QĂ͒)Ì'MJ“®« ,yJŽ]ssyž8.íB©î¸žð Åàmy&"W[6jm'Ur,é£$ÞE¢CAêhâT¢õRº­dc õƒÔtÍãUJ³w-Ö(%‘T‚$Q5 b˜£Câ^ŽÄïu¯Gbw»ö‹©˜ŠÀ‰Œ£í£IƬb‰VNÀ¦Âë®EÙ®%LÎ*)%CRU4<“9…$gt¸É“{´Œ£6² 2¼_ù€)„LFÄÊ Bj£¦#pb;ÉÊ»Ë(uXF7ü²ñ´ßÔ¤KƲ¥ƒEwr®ÓÍÈÏH˜ŠÈ»&0SG.l‰ Ñ‘T)D[¤\¸3¥.LøüK®ÛmÑø(P£ã±“zËK¨$›p:dÅÖ"5`ÍÁO£·D*Ž,BÂ-ŒÔÍ–!—1ŠeU1•Tãˆê(a9ÎaüÌc›)Œ#þ""6$Å2üí”4¶ âV2I H>iˆ B¬\Pým×HükBÕÜ ¦ÆlxLÙÁ vïYœ!Q“Ô\4PÅâ˜è˜J"Qü3óêÊð° ÄÞå&l•Vv™‹œ“tšN¨†xR;fç6¨ž´åß?PÊ !K7c™C˜±®—ÌI³ãhùF®¼&<›¯î¦_‰z;½Ö½‰Þî`ºí¶ÝƒYi™Ü«¯á©•66jCG‚¡ܧ„È”rR2xH%…†Ì °€¤¬ÔáÙd ˜[ÌÑÀGq˜“³eʧq†Ú~“`d"b‰ŠÉÀ&(‚`üÊ(ˆpbÎË•Þ],«¬WXŒ6’ Är‰ŠaÎbÊbˆ”G„CÒ6\Q6B#IL(ì8Üfâö!"—€ÅíJ¶7^/éÅ„åøw£±;ÝkÑØîæ ®ÛmÑø-j:d ²¾¢)šD³‘ÙÜà5g2eEÓ3(²­ ¸ŠGÎ(Ü–2ªS0ž‡”†zC‚ÚI‹–jˆŸ.o.™3…T &Déâ"Ä iÅá²$MƒÈJx QQH´UäDxD‘É-™4›³ô&Üs) ˆgk·!È&‡n c"š$Íš"a*ILJxʬ©±*ºÇQeŽuT9Ì?†FA$0@U®\ME¬B›2GK˜ªË±ɀРùeM3pÛ J^(z†ÒU¤ÃQnú«+RDCx”úV#ƒ'ù'ë7'ϧ8¶jÕbá*Ù ðïGbwº×£±;ÝÌ]¶Û£ûtíFȯcÝd0pàrÑÉÙ‡ÌWÈ&lñ¸˜sj—€JeXжYdT]z!û:š7‹v/œ£:™Gô¤¡×b €Ît¦Ááiänj?FáÈw'©Í>6!2Ë@ã{„Ö6\¡‡)O…¼Íâ¿k6Ᲊ®ÞŸŒýQLJtÍ$ét›¸) fDAª p¸;ÆÇ:'ÈÀÀ>%èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^ŽÄïw0]vÛn0ÞŽÄïu¯Gbw»˜.»m·G˜oGbwº×£±;ÝÌ]¶Û£Ì7£±;ÝkÑØîæ ®ÛmÑæÑØîµèìN÷s×m¶èó èìN÷Zôv'{¹‚ë¶Ûty†ôv'{­z;½ÜÁuÛmº<Ãz;½Ö½‰Þî`ºí¶Ýa½‰Þë^?´µ-?NéÞÈh^½™Ž‰Ó4oj4OpßHÑô„3Ù¬Y¬òXðç —Yt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼mwÍT´ýE û_¦úŠf:[CÒ}—Ñ´­ÃHÑ×Ìçpçs*àÅ›>MeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãmeÐr§{ÆÚË :åN÷µ—@uÊïk.€ë•;Þ6Ö]×*w¼m¬º®TïxÛYt\©Þñ¶²è¹S½ãkÑØî·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÜ¿_ô¥;á[rýÒ”ï…mËõÿJS¾·/×ý)NøVÒQtѤzÖ@½‘˜ååÍ·I»fFvÂ67{<+®Íº©©£¸ ¡üèáoÿÄ,!1A@P Qa0Ñ`‘¡pq€ ÁðÿÚ?!ü7Öp%1€F?”ô?óab–…Ô/¸÷;¸ &€µe\:8_ĉˆ QÒ®ô(éÿ±#ö@|®Œw%YDúB`ØÍþ{âë‰B=èmcx£VÿX?DeP½!HŠ{‹£:Ú’k˜³q:&¥r¸¾œH"—<Á³ïDaòwtY2—Ç@b\ç¦%.9&l_›ãôlÄ{ý^¸þ#:…1Ï(Ñ™ˆC\¸!*AUP•º`)¢´5ô+¿Öy‹€W1FüÂ{ñÒ°£ÓÔv1gWø {Vxï3é ’¬dtÈÉF›WÔîË^i7ƒ@Û‹|åø;‰`‰28í>ë÷Ç/<•OÉÇÅ@:$øsÜZâJ8=JpÒ?Áè7 m¯ÍbÛc&î‹’…}ÏBKZ–”—Q†õ8­Y¼Ã<G€d–ƒnP€\ˆW`Ì7<5¸eÉMBAiA˜ñrÀQ9„QI6ÊàTû%Ú>®±©@ ØÒ73&\¥v×D:j‰Aý~ Gâ4Æê½`²a‘ô‘1€+Â*lƒtÊÎaX €ÕಈœAýH,媞,$ÉBÇ@* Ï´Õ‹8kß :b;O¿„æ¾X¯Jš¬kÈ/¦¢*°QkÔZÆ‘P½5•cˆxþ—ƒàqäÏZÐ "³ \w€æ! úRµ4[n ~¢R¬03Röñc#Ó­ H¸çk…Ô±›¥ a3Šqd¯ §¼‡#1óõA2˜H AÂ&ÂFˆr4½6M¯+h oµr^تÀ#éê´<6Jô´ÎójHÈ€Z ‡UAd:øÈ£°aaàצK¹÷ó5 ‘)“ÈÇ9V©ö]ÙªÌ"œ¤"ˆØµç8NáÊmö¶¶Þ½:ºÔáôÁðU<Îøbdi‰ä*N'ÆæzAéTØñÝ­C9€bË8Cºoi&9]P¦)8u)Rµ+º§ëÅQv¹ÞbtXî×2">á˜Î±Æ•6a„£x%(…«Ü8âÕëÉ Bˆˆ²¤páà—ëj°MKXB¬S†å Ê’Àö:Ž׌¡À í]}¡ç€ÁÝdL4!SÇ®‰6ˆ^/XH ˜ôÖU¡üÿJÆXÁ¿ü ïyOñ÷/àråË—.\¹råË—.\¹råË—.\¹råË—._ÚóŸçîñ⢊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(W~I<§*_äI„Wîc±½#SdÀ ÎÑ–bÚAðî"lÈ ×è]¾¹ïZwqTð‚ÚÔ‰Ôº ÒJgKž‡é2¦g°äÆžOVeZ÷‚Å÷ÏÝ3¦ÞÕ7Gg|êœ'¤5æ¢V+JpÅ]ÛKú)çÄ™¡-Sü*Lµ »°Aû§öÛÛ¦¨à?dþÛ{ôÕ\ƒé-‹hXÑ Ž)³ ?åc7KMrÿÝ$€KÉ÷`"'¸á#QCƒ†>¾ˆñNö$ñ¸§ÑS…6ž©'.äÕŠÔh^îsÁy4ÐA7ÏêGææP“怒ÐIÇB$‚;pBDþ¸åk PN°AÀ†ÝÚ"—4ƒЈµ\ç@õÈæ; iÇ1™=›,¬ž• g ´Ò–ñq³…ë5V:5í›—«…¾ÓlcЏ†q€´!ˆ±çÀ’–å‘âÕɸêkI\¬¡VØÂš`ÈÛaS!ëÂM“*O);…Z”Cti€2…Û#{Š‹<Ð\MÔß @ðh$ÿÊ-3NÅ´To[8Ã.!M•Q~BQnS[n­…„Ö‹æÀÇÊ f %%uIºÌ%Ú†)—I¨Ô³y!`°Ï,’@‹PÜ¡¸›%•¡Tj ß·×h A÷ÛrÀZ]¨ÅÐÞ€‚Æ“ÕÏ“AHF™|œ„C¢>vfáª0°+¨qÛe¬^c;ðØß €Žô%u®9EÕÃA|öükrLäã¹A=ÐH•Wp‚`{^œ3]_l;^bsp‚/|¹)eÜ%Ø•°Ñe‹g^×±KÞ¼ºT½¤Ú„@RÔ¶B˜¤k•5€æ”ì*Uñ´–@“ü …™h½?G8¦ ÷6Ê<Ѫ5úr¼SØPV‰»x|±Düæ” E•ú“ì…™C*ïP òÔĘC°^øœçg6Ò¸r%‰Î´C„Þ¥å^{øëcºmÏ¡øÜÑ7¸dÉÊ›2¶âÊU¥@„¨¹Ÿç€(F‚—N'cÉq®"¼-—LMj¬Á°®PïvØ•"ÓR`L ``?ºh1 0÷YråË—.\¹råË—.\¹råË—.\¹råË—.Y1 0÷YråË—.\¹råË—.\¹råË—.\¹råË—.\°Ÿ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçÏîgÏŸ>|ùóçÏŸ>|ùóçÏŸ>|ùóçû›3S³1µ_ÿÚ B(   ‹ “ zÌ @0€‰ÎµIr0’šh@à 0à 0à 0à 0€A0 ,€2‰'í¼0r˜ ÀK=À4¡ssLsÏ<óÏ<óÏ<óÏ ö\\òõ|¡ÍUL‚g, " "4Jc¯Iá‚F96ÌS£P–iÉì:üÊN… h hþíŽ< xFXÒ$7YÏùL =²Aˆ€r kFm,P„TóJÈý¤°£(¹É¹oW(DÐS –ú4 [*ŒzŒìpd ˆµE­°tG'› ¶«Ÿrˆ…" Aºêç1M«L!ŠÀCè ,Àtã2†®ƒ&\+×$ícåüB hQ@R$‹¨àjni@TQ”Î! ­nú@vèA†’xÎz3 lƒöA†c|fq jMtª¦ñ›OGúðŽšˆ>ð ‚Ú…”8}çÙã9.\ÄëR“ƒpŽ”X"1±oc!}b±&ÒâI¬œƒ{O¤€2X  ÁáJ¥gÑ[kœ,½»}ˆÛÛ3„»û¤…q¾,mU“GØ=R7.y‚!ïGÛ6‚Ú˜B¦M·™êfNG"\ˆ :×ÒëpóФn»OTîþÏÌÌÌÌ’<@•¶¼²“#vÒs. ‰=PU=í¿t°¹*/,óį3vf“¨þ°½±ˆ(:0âÏÖ®¡¿8ì3ÄSQ¹”Ö³†lºÖ@üÉsµh2zƒ àN‘…K‘±c³ól9Ð=˜©„D‘@O–§ìJ¡ÌÌ2± ’/_y9Rƒ@dëE+ „#~¦7 ^ßÅög òij«hÅ…W5,¤üúꦀ ¡ìXÅMËÈëç™-î¤ÛïÛÓ<©h—ˆfDa‡öf ©NBTªs®s¼ ïÚÖ­ :RÆÚ߃'7‘ÿ‰/æ0Þ>z(½à߀½½¿™©»…û{:âS˜8ºßíB#¾¼Üg³2ØO5¦£•rÝum ™EoÙßTgù£{¶·ÊÏ„5øãLFÆzZ‡çm³F‚b@[œÎ&@Pf¨²ây”Üü| 6fpü@’¹B")I²ê¹T†÷VÅNƒèŸEFÜ(ãL׈Äí²*¨˜´>È §(d‘=ì z¤³nÀSVÏ¡ã:Ûa÷¼2Y˜õ™s+akvDg£ÉÈn~@€òÒR´Lª$'É&?É{dí­™ ×¶¶qXÌ.àèÐÝ4b-~§CîÏMi6˜3=ûékPRA™4Žv÷¤= õ—Œ½ŸàÌÄF/Í02p”FhŽSžXà´Is:—Ó¥ ·,ɬÙé±IäÆE×Ö;æx,†™p‰ÓëÓëÎŒ¸a…£ÀîÔ~šé¯Nñ4î+Fc Ž0¬ÌÓßrB 3¯@Kz/¨É Š+TÚ36ÒÌèÔ;åsÏÛ Ê_g)¸·`(>IAqnò%œô׬m±¬OÛ¯¥òÎ3oâpŸÜp—ß.=»E‘`æ9ôHn€ã¬Í#Û NšiŒL—ØX¾Ukã¨!§§hGª xÍ)/øÉ ̦ffffffffffffffffffffffff|Òï¨s³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6l|Òï¨r ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ÌÌËsÈSs;í ûu-)úŸ ~äAÁ…P£(¦™úù>(.À¨P˜ ê)¯{¤†È †qRp$mŸ_Õ·eâ˜v¬Ë„ï³\þ¾Fò iðqÌÐÉ E¢Ø{l< .rF€øÁIøµ« O™G ½;ÈG€_g0ø¤™LÏüDÞ-‡þ"oÃÌvÛRÀdþë}§ )å´æ°“Öh˜‹ŒèÌd–b@(3DÑø?½Š‹6hl3¬ßŒ ]-ÐçòK]©h¤ðØØDuF£1à™Ê[FÛÉèkéwmÙ<§%F åsOˆ· [½þq“¬Ë33333333333&Aù ŽQÒGž6à·ˆXwÇžfi˜˜)¿ù¼ÛƹLÒ”5wÏ0Ÿ¡µ¥¨à'Æ¢Ov°P¶Æ‹¡Mb`Ž85‘Æî%”àã3//ðõOKËK,»Eýú²)vúaÿ>Û“dÑP ¤¼æ7Õ*Žm­ç8ÖH˜Ð´~½ùÂÚL–²GåÍ:DŸB@¤N630”/ ·Í¸Œ´;£FÏYŒcß<"‚:À,Ä„Ù0‘ M¸`A¥nW¬ Ã÷ÛñS7&1íæ8bP°ì­†Xù|âÕrhJw‚ak33p<µ¾P’TÌÖ'V3áBÉp5£ÊR À=TéYæCOa²"qŸLúv¢;"'õϧjÀBpd}¢k•hÅÅûn[vƒ"Þ+«í †Q*8Y¤Þ *§á„T©œÉÑ|Ô~5˜Æédu§¡uÕ$Ád`á´Õ3·D[ö^­¸?¨ 8r-Š3!¾3 v¢C¢ÃyˆPäS E~ÓA⛼¹p³„KIÇC¶NzÚ±Ðõ3ošïÈÎò6ʸ](J»e¬;I(Zź`|çÃ]´÷ˆi¬¯HZ–2ð¶yõiN‡×KaÏÖ‰˜£%°ˆpÂùÛ6J,yf[/…þ1Y2bîpÛ·½¨–j¸“ø¶vÌÓ†º0Cq¬#€‚·2/ÔˆÔ ¯­#•rx6 oK)? ¸H¬´­B-‚œÚôÁ#'ß[М3sÃ^zûRÀJ°zò‰µéÇ©à`¡™Íú¢’Áò%x¬¢ˆ‰¨Iì^.T«óaŠ qXqÓà þ H ÿi¬ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÜ‚eÁ|(P¡B… (P¡B… (P¡B… (P¡B…‚eÁ|(P¡B… (P¡B… (P¡B… (P¡B… bÅ‹,X±bÅ‹,X±bÅ‹,X±bÅ‹,X±bÅ‹,X³zX±bÅ‹,X±bÅ‹,X±bÅ‹,YÓ'+RòÿÙ./Doc/Tutorial/tables/0000775000175000017500000000000012176660653014421 5ustar vborosvboros./Doc/Tutorial/tables/interaction_groups.tex0000664000175000017500000001251212176660653021062 0ustar vborosvboros\subsection{Interaction Groups}\label{table:interaction_groups} \begin{table}[h] \begin{center} \begin{tabular}{|c|c|c|c|} \cline{2-4} \multicolumn{1}{c|}{} & \multicolumn{1}{p{40 mm}|}{ \centering{\link{\textbf{NRotSphere}} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotSphere-class.html}} } & \multicolumn{1}{p{40 mm}|}{ \centering{\link{\textbf{RotSphere}} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotSphere-class.html}} } & \multicolumn{1}{p{40 mm}|}{ \centering{\link{\textbf{RotThermalSphere}} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotThermalSphere-class.html}} } \\\hline % Start Body Forces & \multicolumn{3}{c|}{ \link{Gravity} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.GravityPrms-class.html} } \\\cline{2-4} & \multicolumn{3}{c|}{ \link{Damping} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.DampingPrms-class.html} } \\\cline{2-4} \raisebox{1.25 ex}[0 pt]{\textbf{Body Forces}} & \multicolumn{3}{c|}{ \link{LinDamping} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.LinDampingPrms-class.html} } \\\cline{2-4} & & \link{RotDamping} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotDampingPrms-class.html} & \\\hline\hline % End Body Forces % Start Unbonded Particle-Particle Interactions \textbf{Unbonded} & & & \\ \textbf{Particle-Particle} & \raisebox{2 ex}[0 pt]{\link{NRotElastic} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotElasticPrms-class.html}} & \raisebox{2 ex}[0 pt]{\link{RotElastic} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotElasticPrms-class.html}} & \raisebox{2 ex}[0 pt]{\link{RotThermalElastic} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotThermalElasticPrms-class.html}} \\[-1.35 ex] \cline{2-4} \\[-1.35 ex] \textbf{Interactions} & \raisebox{0.5 ex}[0 pt]{\link{NRotFriction} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotFrictionPrms-class.html}} & \raisebox{0.5 ex}[0 pt]{\link{RotFriction} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotFrictionPrms-class.html}} & \raisebox{0.5 ex}[0 pt]{\link{RotThermalFriction} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotThermalFrictionPrms-class.html}} \\\hline\cline{1-4} % End Unbonded Particle-Particle Interactions % Start Bonded Particle-Particle Interactions \textbf{Bonded} & & & \\ \textbf{Particle-Particle} & \link{NRotBond} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotBondPrms-class.html} & \link{RotBond} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotBondPrms-class.html} & \link{RotThermalBond} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.RotThermalBondPrms-class.html} \\ \textbf{Interactions} & & & \\\hline\hline % End Bonded Particle-Particle Interactions % Start UnBonded Wall-Particle Interactions \textbf{Unbonded} & \multicolumn{3}{c|}{ \link{NRotElasticWall} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotElasticWallPrms-class.html} } \\\cline{2-4} \textbf{Wall-Particle} & \multicolumn{3}{c|}{ \link{NRotElasticLinMesh} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotElasticLinMeshPrms-class.html} } \\\cline{2-4} \textbf{Interactions} & \multicolumn{3}{c|}{ \link{NRotElasticTriMesh} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotElasticTriMeshPrms-class.html} } \\\hline\cline{1-4} % End UnBonded Wall-Particle Interactions % Start Bonded Wall-Particle Interactions & \multicolumn{3}{c|}{ \link{NRotBondedWall} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotBondedWallPrms-class.html} } \\\cline{2-4} \raisebox{1.25 ex}[0 pt]{\textbf{Bonded}} & \multicolumn{3}{c|}{ \link{NRotBondedLinMesh} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotBondedLinMeshPrms-class.html} } \\\cline{2-4} \raisebox{1.25 ex}[0 pt]{\textbf{Wall-Particle}} & \multicolumn{3}{c|}{ \link{NRotBondedTriMesh} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotBondedTriMeshPrms-class.html} } \\\cline{2-4} \raisebox{1.25 ex}[0 pt]{\textbf{Interactions}} & \multicolumn{3}{c|}{ \link{NRotSoftBondedWall} {http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotSoftBondedWallPrms-class.html} } \\\hline % End Bonded Wall-Particle Interactions \end{tabular} \end{center} \end{table} ./Doc/Tutorial/tables/file_format_description.tex0000664000175000017500000000514612176660653022043 0ustar vborosvboros\subsection{Descriptions of the Output File Formats for Field Savers} \label{sec:file_format_description} The current FieldSaver infrastructure supports at the moment a total 10 different output formats. Three of those formats ("DX", "POV" and "SILO") are for use with specific visualisation software, the other 7 ("RAW", "RAW2", "RAW\_SERIES", "RAW\_WITH\_ID", "RAW\_WITH\_POS\_ID", "SUM" and "MAX") are plain ASCII formats writing different amounts of data. Data in multi-colums files are always separated by spaces. Below is a description of those formats. \subsubsection{RAW} This format produces one file per saved time step, containing a particle position and the field value for each field value. In case of a ParticleFieldSaver the position is that of the particle, in case of a InteractionFieldSaver its the location of the first particle (i.e. the one with the lower ID) \footnote{It would be possible to change this to the actual interaction location - which would make more sense} involved in the interaction. The files therefore consist of 4 columns in case of a scalar field (px py pz v) or 6 colums in case of a vector field (px py pz vx vy vz) where (px py pz) is the position described above and v and (vx vy vz) are the scalar or vector field value respectively. \subsubsection{RAW2} This format produces one file per saved time step, \subsubsection{RAW\_SERIES} \subsubsection{RAW\_WITH\_ID} \subsubsection{RAW\_WITH\_POS\_ID} The RAW\_WITH\_POS\_ID format is only applicable to interaction savers \footnote{up to rev. 1100 there is a bug which prevents RAW\_WITH\_POS\_ID from working with scalar interaction fields.}. It produces one file per saved time step, containing the particle IDs, particle positions, interaction position and the field value for each interaction. The files therefore consist 1 row per interaction having 12 columns in case of a scalar field \textbf{id1 id2 p1x p1y p1z p2x p2y p2z ipx ipy ipz v} or 14 colums in case of a vector field \textbf{id1 id2 p1x p1y p1z p2x p2y p2z ipx ipy ipz vx vy vz} where \begin{itemize} \item \textbf{id1 id2} are the particle IDs of the two particles involved in the interaction \item \textbf{p1x p1y p1z} are the x-, y- and z-component of position of the first particle \item \textbf{p2x p2y p2z} are the x-, y- and z-component of positionof the second particle \item \textbf{ipx ipy ipz} are the x-, y- and z-component of the interaction location, i.e. for most interaction types roughly the contact point between the particles \item \textbf{v}, or in case of a vector field, \textbf{vx vy vz}, represent the value of the saved field for the interaction \end{itemize} ./Doc/Tutorial/tables/file_formats.tex0000664000175000017500000001030212176660653017611 0ustar vborosvboros\subsection{Descriptions and Output File Formats for Field Saver Field~Names}\label{table:file_formats} \begin{table}[h] \begin{center} \vspace{-2 mm} \begin{tabular}{|c|c|c|c|} \cline{2-4} \multicolumn{1}{c|}{} & \textbf{Field Name} & \textbf{Description} & \textbf{Output Format}\\ \hline % Start Particle Scalar Field Savers & id & Unique identifier for a particle & \\\cline{2-3} & tag & Identifier to group subsets of particles & \\\cline{2-3} & radius & Sphere radius & \\\cline{2-3} & v\_abs & Norm of velocity & \footnotesize{SILO}\\\cline{2-3} \raisebox{1.25 ex}[0 pt]{\textbf{Particle}} & sigma\_xx\_2d & XX component of stress tensor & \footnotesize{SUM}\\\cline{2-3} \raisebox{1.25 ex}[0 pt]{\textbf{Scalar}} & sigma\_xy\_2d & XY component of stress tensor & \footnotesize{MAX}\\\cline{2-3} \raisebox{1.25 ex}[0 pt]{\textbf{Field}} & sigma\_yy\_2d & YY component of stress tensor & \footnotesize{RAW\_SERIES}\\\cline{2-3} \raisebox{1.25 ex}[0 pt]{\textbf{Savers}} & sigma\_d & Norm of deviatoric stress tensor & \footnotesize{RAW\_WITH\_POS\_ID}\\\cline{2-3} & e\_kin & Total kinetic energy & \\\cline{2-3} & e\_kin\_linear & Linear kinetic energy & \\\cline{2-3} & e\_kin\_rot & Rotational kinetic energy & \\\cline{2-3} \hline % End Particle Scalar Field Savers % Start Particle Vector Field Savers & \raisebox{-0.5 ex}[0 pt]{displacement} & \raisebox{-0.5 ex}[0 pt]{Displacement from initial position} & \footnotesize{SILO} \\[0.75 ex]\cline{2-3}\\[-3.5 ex] \textbf{Particle} & \raisebox{-1.25 ex}[0 pt]{position} & \raisebox{-1.25 ex}[0 pt]{Position of particle} & \footnotesize{SUM} \\[1.5 ex]\cline{2-3}\\[-4.25 ex] \textbf{Vector} & \raisebox{-2 ex}[0 pt]{force} & \raisebox{-2 ex}[0 pt]{Force acting on particle} & \footnotesize{MAX} \\[2.25 ex]\cline{2-3}\\[-5 ex] \textbf{Field} & \raisebox{-2.75 ex}[0 pt]{velocity} & \raisebox{-2.75 ex}[0 pt]{Linear velocity} & \footnotesize{RAW2} \\[3 ex]\cline{2-3}\\[-5.75 ex] \textbf{Savers} & \raisebox{-3.5 ex}[0 pt]{ang\_velocity} & \raisebox{-3.5 ex}[0 pt]{Angular velocity} & \footnotesize{RAW\_SERIES} \\[-3 ex] & & & \footnotesize{RAW\_WITH\_ID} \\[0.5 ex] \hline\hline % End Particle Vector Field Savers % Start Wall Vector Field Savers \textbf{Wall} & & & \\ \textbf{Vector} & \raisebox{1.25 ex}[0 pt]{Position} & \raisebox{1.25 ex}[0 pt]{Position of wall} & \footnotesize{SILO}\\[-0.25 ex] \cline{2-3}\\[-2.6 ex] \textbf{Field} & & & \footnotesize{RAW\_SERIES}\\[-0.5 ex] \textbf{Savers} & \raisebox{1 ex}[0 pt]{Force} & \raisebox{1 ex}[0 pt]{Force acting on wall} & \\ \hline\hline % End Wall Vector Field Savers % Start Interaction Scalar Field Savers & count & Number of interactions between particles & \\\cline{2-3} & sticking & Number of static friction interactions & \\\cline{2-3} & slipping & Number of dynamic friction interactions & \\\cline{2-3} & strain & Nonrotational bond strain & \footnotesize{SUM}\\\cline{2-3} \textbf{Interaction} & breaking\_criterion & Value needed to break a bond & \footnotesize{MAX}\\\cline{2-3} \textbf{Scalar} & force\_deficit & Additional force needed for slipping & \footnotesize{RAW}\\\cline{2-3} \textbf{Field} & dissipated\_energy & Energy dissipated from slipping & \footnotesize{RAW2}\\\cline{2-3} \textbf{Savers} & potential\_energy & Total potential energy & \footnotesize{RAW\_WITH\_ID}\\\cline{2-3} & e\_pot\_normal & Normal potential energy & \footnotesize{RAW\_WITH\_POS\_ID}\\\cline{2-3} & e\_pot\_shear & Shear potential energy & \\\cline{2-3} & e\_pot\_twist & Tortional potential energy & \\\cline{2-3} & e\_pot\_bend & Bending potential energy & \\\cline{2-3} \hline % End Interaction Scalar Field Savers % Start Interaction Vector Field Savers \textbf{Interaction} & & & \footnotesize{SUM}\\ \textbf{Vector} & \raisebox{1 ex}[0 pt]{force} & \raisebox{1 ex}[0 pt]{Force acting between particles} & \footnotesize{RAW2}\\[-0 ex] \cline{2-3}\\[-2.6 ex] \textbf{Field} & & & \footnotesize{RAW\_WITH\_ID}\\ \textbf{Savers} & \raisebox{1.5 ex}[0 pt]{normal\_force} & \raisebox{1.5 ex}[0 pt]{Normal component of force} & \footnotesize{RAW\_WITH\_POS\_ID}\\ \hline % End Interaction Vector Field Savers \end{tabular} \end{center} \end{table} ./Doc/Tutorial/tables/field_names.tex0000664000175000017500000000434612176660653017420 0ustar vborosvboros\subsection{Field Saver Field Names for Common Particle Types and Interaction Groups}\label{table:field_names} \begin{table}[h] \begin{center} \begin{tabular}{|c|c|c|c|} \cline{3-4} \multicolumn{2}{c|}{} & \textbf{Scalar Field Name} & \textbf{Vector Field Name}\\ \hline % Start Particle Types & & id & \\ & & tag & \\ & & radius & \\ & & v\_abs & \raisebox{1.25 ex}[0 pt]{displacement}\\ & \raisebox{1.25 ex}[0 pt]{NRotSphere} & sigma\_xx\_2d & \raisebox{1.25 ex}[0 pt]{position}\\ \textbf{Particles} & \raisebox{1.25 ex}[0 pt]{RotSphere} & sigma\_xy\_2d & \raisebox{1.25 ex}[0 pt]{force}\\ & & sigma\_yy\_2d & \raisebox{1.25 ex}[0 pt]{velocity}\\ & & sigma\_d & \\ & & e\_kin & \\ \cline{2-4} & & e\_kin\_linear & \\ & \raisebox{1.25 ex}[0 pt]{RotSphere} & e\_kin\_rot & \raisebox{1.25 ex}[0 pt]{ang\_velocity}\\ \hline\hline % End Particle Types % Start Wall Types & & & Position\\ \raisebox{1.25 ex}[0 pt]{\textbf{Walls}} & \raisebox{1.25 ex}[0 pt]{NRotElasticWall} & & Force\\ \hline\hline % End Wall Types % Start Interaction Types & Damping & & \\ & RotDamping & \raisebox{1.25 ex}[0 pt]{dissipated\_energy} & \raisebox{1.25 ex}[0 pt]{force}\\ \cline{2-4} & NRotElastic & & \\ & RotElastic & \raisebox{1.25 ex}[0 pt]{count} & force\\ & RotThermalElastic & \raisebox{1.25 ex}[0 pt]{potential\_energy} & \\ \cline{2-4} & & count & \\ & & sticking & \\ & \raisebox{1.25 ex}[0 pt]{NRotFriction} & slipping & force\\ & \raisebox{1.25 ex}[0 pt]{RotFriction} & force\_deficit & normal\_force\\ \textbf{Interactions} & \raisebox{1.25 ex}[0 pt]{RotThermalFriction} & dissipated\_energy & \\ & & potential\_energy & \\ \cline{2-4} & & & frictional\_force\\ & \raisebox{1.25 ex}[0 pt]{RotFriction} & & tangential\_force\\ \cline{2-4} & NRotBond & strain & \\ \cline{2-4} & NRotBond & count & \\ & RotBond & breaking\_criterion & force\\ & RotThermalBond & potential\_energy & \\ \cline{2-4} & & e\_pot\_normal & \\ & RotBond & e\_pot\_shear & \\ & RotThermalBond & e\_pot\_twist & \\ & & e\_pot\_bend & \\ \cline{2-4} & & & normal\_force\\ & \raisebox{1.25 ex}[0 pt]{RotBond} & & tangential\_force\\ \hline \end{tabular} \end{center} \end{table} ./Doc/Tutorial/gravity_plot.jpg0000664000175000017500000042430112176660653016400 0ustar vborosvborosÿØÿàJFIFHHÿÛCÿÛCÿÀøÐÿÄ  ÿÄC  "#!$7x¸%&'12AB(34589CDTawy¶·ÿÄ ÿÄI !1"A#Q $2a3BRq%&4DbCTr‚'5Sds‘’¡6Uct“ÿÚ ?÷ñ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"Ö×ʨ=åª^—vó té6õãìO0y^<]ïšÊkvóc‡^nHòË_Í`r¿ƒ%ÈG r ƒª“ÆÃ)NÒç’*ÑϨþP¼·èï"À½¾ÏáËn•õõÐoœ™åF‹ÞµÅ•WZÖ“Û2&ôù·¬«9ºsvn®äI g*4\1$v%g]#a[4—ú÷ɵõ¨ÓEO}AçxEÜþ ±S’û®µZK:¡ÁMi4ׯ2`¥ÎJ9 ªdÀm tb p°úQ>ùëdRºv%~µ€eL”ê­¦ßm±­“2w`_¼=ºÆš'FCy;r1¡Î²6'¶Ù2ͼ2öÎêÔ)ÊœÞZ‘bú‚Où¯ÉxÓéÿNYFS¾Ë…óü ÂÝNláS½}ÏZþ.ʪRã ‡~ @Ñ…]«†®ù/d]e1éÿ4ú;ú“ü¼úŒ¾£ I¶aý˜¶ 6ô£Šß“ð$þ‡>jß…_Ä+§ê®§âSìOg_B.-aêï-ÝÓ E{KúN‚·gðŽVîi¬.:î}0ˆp9\GrˆÌRFìôÁʨ˜ktìšH®ø½ò·ZãdQŸýPÁþYiK'ÕŽñ'÷u\È'óï?Ûá–Yˆ0òÒÔÆaJJlióræ,£¤O1BÜRÓ©b¤X_Šq¬ý'çK¦¿x¶iËö•¶j¸ïòßÔ]gjAg•ûð"ôsçó(³ë¬q³øP¸èÇoÝrCøáyèƒ? <ï½aÕ¯µüis¼²Giï[y’×Idñ8ãk}Us§—ùT~8é1~Œ²6Eån¦ºÈ",oR§v`P]Ŷ8Ðèøhȶ7–R$U×å Ô€òÕ/K»y:t›zñö'˜<¯.÷Me5»ùˆ±Ã¯7$ye¯æ° 9_Á’ä#†¹AÇÕIãa”§isÉhçÔ(^[ôw‘`^ßgðå·Júúè7ÎLò#EïZâÊ«­kIí™z|Š[ÖUœÝ9€»7Wr¤†³•.’ »³®‰°‚-‘ؾÔñ½?a‡Q[^´ó5]l8ú…‹|U› ïå’Iv¯Ó…IeM’B“D„oü-þêK$ ß“…8ßDTÙ?!×Wžnÿ{V°¸Å\èÅ密¹7Èu~\¡–Xk³ÅÔÍ.ô›±‰Ší3f@Ü*å§# ÊÈzYÙ'?vœÙ$ŠoE¬‹gôLåÚϤ)»)üvàßl:ª¼œ½Ή#´Ší-ˆ´?¸ŽÖ¥¸ƒr8,H–y¤¦7)p¹d«ÏkvE¥ŠãÙŸ->ÊŠ[ñ-{à&o?B­»Æ®­*B8]Î¾Š¶7BÎ_ë—£d²êîTÓ£$i]ÙXÄBG ˜®ÒÚSïŽý3» ùÙÿ¬ýCiÛ² H4ÏXyÞ5èÊ^Þ°-ÿ1úqIœ Ü “(»d[j›®œÐ úÑU¾HeazÖGåPš+˜ê` !Wk‘J|{³Ä*JY`Éû#ʽÍd¬:”Ç!üz£êRÿè5Üy‘²Çù—íÙÕ‡¦ñI?Nàˆ»~Ãr´GàENù"È ~ÀòU§±,úÇÔ^u±«Z€7[fÃݵ¤¾ W625žøòåbKcògH ­NofI\­¸÷ÔH@ÈY2)!îÛªc,0¹T’ίcñ{&A ‰×rG¹¤m©†}*²Jê3 x=ÈvùL‚|iÁ fc ÷QF ;ǬB\vEHtÈ_}sÖ¹ÏB­Öõ½kï[Â.º?ë¯(K-×??E};ç™5òʳˆÏ”~é­žmÖ’íWaÜëfé)3 lI%qH¦T” 4ûìžR玷¢)’ÛªdÌ3ITnίdzÚA5‰Ø’FI¤mÕ†*­Š(34xȆø´‚h&‡5f| ©A”;èÀ,:¼pE«ëKå6'Szzée™P‹øú¹ø¼¨=ë¸Ô›¶³ =“Ûw•·XCÙšmófUçÀì¦ø•~ßXªØÄC„‚[2moÒÙS"²4oÈç”íQ>ã™Ýôe)S\õüJ{¼þò®â5ôöW ÚGNH,7Wv×vzþ£¼.PʶÛBÇ‚=•´Ñ b+_Xõå·d°ê™ä2Í€IFìÈäæ¾”1ÌáòYA»)’M9É•ÔnEd;\WK•’Q-õ®øëfxDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a´-þ!ã`ž?ó{•¥`ȪZÉ¿ä—Âض¬BRñ–VPA.pW—X1y´wzCäPÈún6IKôñrmÙ³º"E«ˆ„»ÅÏþÒð4·âûäs×~ñôû/¦bq[ pÞ—¯ ñMÓ!¿Õ“'Ç †,ì3üDaÕË™eQgG™WLñÄEìîSn"Ä·`|wÔþMù òG¾jFÉ_Ê5¡v{`§è;í%›zÔS‹2Ìœ>ùZ}ç) pÒÝߢKÀ]ª$«ƒb2Æúï¸Ù®k @èŠéÖW³}ÿ景Éš0ó;ø'ñ­÷mÙiº‹œúš¥·-‰-åzƒq…ì»”"î<»˜îïB¾ »(nS¾x"¥²C½lMÖqYÉ ¦½þ-Iôj5o@¤lê–Cñ­Ù±I)pÙh-®pèM©9 ÞøÝÈñò”i‘´ó¥™S"¶¿'ôTôpúR½ñ<1ªxZ¿áôõËk}ZÈÕΟ½Kç6vfQ` ½Cåûˆ;J!Õá„+ÉŒGI]œöŽKTŽ¥ÿ-úáضü\x×ÏgÊ= Vž²0–zž–UÓß6qT¼3N}{"ýŠ“–ØWMœ/ •Fl#,l[ƃZ ’÷p“}j" }wl5……‚Í…Çg¬ 3ù/–…–6 øÃýGSÌÄ0»È µ¹Èrœ:´iÈBÒmz¹ì4Ñwkm4R,«Üµƒú;æŠ3[ÕÆ¹Ñl’/‚˯×T½5ä'«OÍ,– øýê¡›"Ñ1^Bý#­¢ƒ™5àN4õ,‡ÅKf1gAÓE¬‚,×›ãâçÐ3ÿ ò/Hµrîýwö„nÅ´i:aʶ€³EÌñEàTB¨•½qˆ2—5Žýù¢¸ÅHbM½Xìã=ð‘ä[ÿñ°FÏù½ÊÒ°dU-dßòKál[V!)xƒK+( —8+ˬ¼Ú;½H!ò(d}7 $¥‹zx¹6ŒìÙ¿Ý "ÕÄB]âçÿix[ñ}ò9ë¿xú}—Ó18­ƒ¸oKƒ×x‡&éßêÉ“ã…Ãv™þ" 0êÇå̲¨³£Ì«¦xâ"¿öw)·B¿"wŸ%õÿÌe`éðÏšî· Ÿ©!-44ÓÆ¶g¢~A½O,gŠ,Á^zabC®"K£;l–½Fj›fWDÖâ[§Øóìpå»"™-+ #jG½¿<‚ËZ'Q§Ïð~4p$¥‰Ñ–×3š}¬ÆûÇH*²dÞþÚæÖçÎÔéaÜÂ0b5É«Ï$^«¼…ÿê›åÿûw¥?ÿšÆp‹Ícç¡þå2)}‰ê1m’§9\¿«º½ ,/OT·©Ö+SÛ˜DIL¥áqZû×MÖ8!…*a˜‘TÎű¤iÙ¨—œTŠ^ó„£ÒóOQÿ‡²Qëá¤Ã_Îþ]ùmZUÜæ<J~åHÿ2‹U?ØÑP HÕ‘$¨Ð‚È,6ƒlóG7ÖõCaÔ2-~Õ¾fó¼‹àkàÁ¹ú«гþB¾<‡±qƒÇJ>h…Ÿêu¢Ör7U€éÍ×™|\Å㟴b›67´˜;ßñ#ŽDWÏÜtÐ|ûC忝£+@Z¿á²x² [EÄo.wb»Ïý¡_Å‚>ú{”qè‹6ô2Ǩ­ŒãuøAH°;oÜÞhõwš¾ è¯2ν­*ëݲ+Ž)\C&oÐÑú¢å¬'Ž×¯+°‡ý¦åŽN°Q¥&zk}]Ìî¥V€ˆ°'2Wx—Ôîö…#S[ðWŸñ{E…þKè(ôÆ]ç¿9¡¯KZÒýxE!(ôã"¯à†° Ä£c¡ŒñŽä“áG¦Æ‘É'’(ÃÎve ?ùù Wv§–î^.ã°w/+yi×Ì­×kÕòk‚BößRA_,›KÂ[Š8D\^ìˆýƒ/ìUV.MˆÂ’r)oËRV»-·ü5Üyº_^Xľ«†·Ö%ÀU²-~Ã<Ëâ(<¥ºGÈÈ/À’(}®Òâ ¼S„TÔ›ÎÙˆ×UHª’ÿ È>()R´ß-?61ž©!*ÿìto]×¾öˆXÑÒlïBN§ëERwo‰5g>‘ZÏ3âDW®©³âPç$ɲ-íxþŒ¦¬–_œi´ú­Î¥"Y¾(ƒ‚ñ3Œ4JHmˆ»ø‘5î>֛觌ÖÝ 'Hu#E½·"á½¥¾A™©0Ȥÿ€Á‡âÒ’jtBlc¸=¿en$Ç¡‚=ïL201µ†<ÞÐÆÌ- í¢&ˆMH (È¥Á,¯<;õ—ÊÇÌûë磽³F­¸¼RЃw•=clùÕý'ÑFlÙs5xðÜ‘Ô>ÒÚ ÎnöXª°©©´z×<‘kKÔôUË_y æëãçÏ{¬/:û#Çw¤»¹v¬¯Qܾc¼+ªjê¸[¬×ÙPë+Ñ­ÑWq$M)=ÉeIÎ&¼&CZ©8ì&PYÀ"´?4E»ïO.Y~sõïœïƒ©*Êìo ðŸÄ”ëÉÃ%T>Ôç¶5Už·½$ŽÃBl°5‘WµŒ¦"ë-æÄ"Ð L\WIà¤P‘lï×Ö/†|íåÐé_jËëxGLô´çÅVu?ò[äRžå²‚¥­å}0ºj6ûýŠYáÁêÄJÏ«a'LÒwì©Ô¥ÁÅ¡ ZZgÙ¾|ó•)òýäVZêËëyï¹¾Nä5‡˜F…Ìœ.ûi“Ñóù»Å÷VBbÙ“¸íŽÚüÒcD­RâmòdoŒ£ jÃF¾L†¹”õƒ¼Å"D‡øD|ȼ=ÍŒ…ž‘•6<_é Ь|¡z99{ø¨$€‰§K„ÒLÔx×$XV_ÇòÿŸ¡×të­%ä"uå£ky¯~£ñ6ðtm1YzªôDMê!Ô~æl”E(OSÚâcÁ­ö0 ’2 rrC¢-Ü|1Ïágš­©]qC×´Ä(ÏV\¿ÁJéØ úª¦=8‚‚Ä #ÓÕ5gdñ¹4`ša1þ˜¶c»N¤™ ìo g à¹Ý0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&Až’¨$w½-5«á×5‘ç¹|€fÒ"—%Nà3H,‰‰å½ý¥ÈaË×m¯Ì¤˜Ø“dª*íÆÛ%1sžIPMÉ£SНÂ×ᾎ§}1ìÏ^µzfYæÖ1¦€‰×~ugó„*ùnFÚáskdÛÍŸo½N¬Ba¡9ÅÚOA‰°µJ$Ü5CG!ÕUôE³¬"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E„XöeqNB_ì»vÀ„UuÄPd ”Ø<­† I£7 [üªL{[0Ä8.âxÉ*ic Ÿ}.ºIöE×Ên:Š ]vÚÔ­áÇ[Òâ50R™Äb>]¡+q G&øÅv3³ ‹M¤'·$©á²Æ¸sr($Ô)»CŽ”Ñ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0Šô-# ôµ sùâÄL®à—•];©å½úÚs†rŒ9Щƒ–0Ï-Ã9ö{1ªŒ¾tC9O®ÐçXEåá|ëÚÞ·ól{ІGÀ'—l/#L@ DƒMÇÜS[Âó‚¢:uüÂ3æF¯"QÃÝxq¦«qÓƒ~ºos]g‚/c8DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a°‹1’m%®,åi9°±ßá¶H”lL)èuäÙÕ„ðb³’àÎ.LíóA¢O«€þ¼L÷v ¤I7öÎS(¡IS¯Ž¯ !àÊry{¶ïÛ’ð½,ïKú&õ{‰4Àе.«]ÄEär`Ì®-°¶!šÚXÙÙâÁ=»؃rŠ O —úÈ_Ì"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aµéò ò;K|~Wˆ=Í:þ°´eÕmP4˜²…Gïð(ìîvÇ7˜¼<"7¤Ž˜=,¯ „ÊÞîâ’Â¥¯÷þEÃhñžëý^NЛãqÈÁ=§ñye?jµŸ©,“³„1Ë#8·¯ÿŸƒNKü\îã5‘þÑpv ÓòÆ/Ãò†?Wæ¬YÍŠÔ,çWZÄ#d²VñôÎ9äòO*ùøùKÉ“2ØÐ¨; ¤ ²0ÝO>(*(sÇ=‰ÃŒÅªS8U"þͨZ«L;#Jª§é*_…¼Ÿkž¹Ų³F•…Ú…lU*‹Láò\ŠÕ×cë³w¸åÛ¿ƒƒtÍúÀÿd¿àÓ¯Á„ÉéÛ.Ñ•fŽM·3¿íU3ö$•È‚ÁS×oàµp’¿“ Ç®Œ_aõ!jO’I=ü]üÄWþíëu=šÜÃUzl1Ì8£is´Ù›ƒíÁÍÖ¹U؃N éŒTK-öæêêòƒ½Ê]Úƒ”óôOòþ?yʲQÁŠÙ@Lã«Òe!ŒIeÇ<¤f@"g= e–a€Ô2؈-5O?ŽìèÛ¿ ÌÛþ“s+¾ð™«UµŸ¹ RØ´L•ËR Ê<|5ªØÆå'’½|V×J… l¹IÇ’£‰¿c[ê³s¯š „L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E[}sé¸7üÿ`ßsÞ“%¾×½2G´à+yóaûرțR¤ýýl§Súç¢Öc—leÕó°I¬ž3Ûvj:Ž!ž¿ÑGN/äWù9.[“ôÖ©—ªY:sq (FYÜb&[£ðùÂGâ#–õ(Õá·±^oÌòïR{•5Í~£|ùœýøáñf‚…A&¯ÓÕŽöJj±µ ÷á%âGÊ~|¼~i½Á/žÜG°á|¸.»g ‰ñ´¡ÞÕ%¥e_"íÑÀ´œêˆ=Æ¡¨÷ m;Ë\[¤Ê2¸ïâ½W›æmÚåü½™‚—È6óWafê•7r˜ÌxÌòGÊÀõ©‰´­ A5¹#²ðI¿§.{åÞ/þÍ/Âþ»©ñÞgezskÜc«äÌšM—dà“?»íÒcÆ­¬…ZZ ÖÇ-b YKÖ±Úõ;¸@ÉÓ·öUøàðd> =tÑäŠˆÚ ê¶ô´†¹ŽËe&¢¯Dõ²\çrž&îŽitRÛ ÝÂBK£~¿ æ ˜¢ð°êñÖ‹Nˆã¡ÔðEXcx¼¬c«Û´b^Nå-ëA5Ùeg'ðšK,~š3füÞ矊݋i›qÈþ ¹^,̶ÂëGˆÜ³þ ´‘´"ÐÒÕpVqÚÅ25xšÆ:¦"7ä+uç9ç)<½|¥üDK|{8eô·S!?G\̲Tgõm<êNÜiÍ™ì³8“+%äÖ~ãò 8»=ÅÞQ_—ÇEé¤õ¼ÉÊIoP½ͧ ˆðÁ=iLb´W€¾öc ÒÃ9›Y*…1Âõì|’ÏVa&žF„ËîgàOûC5ÿÄV¯“àïÄ”¸k¼‘g™£Zk¸ßÃüµªåœÕž.½bÂÁ6¶Drø—§CœÇIc)É;d*ÅëoËŽWó•ߨcq»Ô®š,ÙØYßÚ×T4%€-W¶7(!\„@š]‹pn$›F µ=a¬Iž“Cøš¼U³‘Åñ_h%‚Xg–"p@õ᪂i"ŠS’0ŒAßóíΔ¸š—)í­Á¹›Ù®+·}²‰å(å¨dqtoDeÀ[5ä,~GnKÚ—ç–ÔÙ }zw-Y;³Y°Z‘0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹Z?&*ÞUøµ¦l{êbÔ½‚|RBõNÑb:l9õÖøÊ³s Q„ÓouÛ{wïLãÈeF€³Ta¸µ] L!È«‘ZÏPzn§ò7!¼.G'qb¬‡Çcí¬±f' dæu6š?7Å µå{hMgytæm(vmaް·%¾×,½”jàµàâ!=äzÖþ´‘Ù·}óç+Ö¤- žyëÓðFŠöÛk„κvNa¶–Ï!Ò¸4”¦ÆÑߢ37Þ^ZKd“ Äñ´XŠñá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"ñwþ ÏZ¹Û—ô_Ép§´É…TjŠT  Ú¡;Z¯Bóû 8è~»mÄZE€m)­šÆî¤Ø%´Ÿí*—>5çý²\¶z®§Jf*x—²Èîå&Ôòx»}$2 ßg¯t§'eúSþȯÃõ.=âlçâfÆ/ Çb «U~;8ý;´!Må±l9²e§pv«”dž±f'?€$EŸÞ7Å~K…@œI;*eÏ®nÇüEÿU¿/à)Ò©ò_DY’±UUQ´ô‹ë˜|òˆóè~0ÓÃLÔéP²W²SñèþªpïÛ1³T…£ÁÝŦi䕞9þ:¿öÿˆ›k©dÏJ×µ ³MòWüƒf—.•r—aÈÉo(3ÇLøÙqt¬Å@$}ŒfÃ^8_Á×´(R‘TrF!.×㤖AtUç¤ÖEdúé5RSž¸SŽºã¾wÎ÷­ðB&$,BLâBLÄ$$Ý8“?lììîÎÎÎÎÏÓªÍ5y¢±^Y ž h'„Ê)¡š"cŽX¤ŽHÌDÀÀ˜€™ˆ]™×Û9TÓ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜E§ñû>A¿þÄÿûDk¾?2‡|u\2Ãg¨hß•/)ØWt™×íâ;‚;°ÛUT~](%tú²>ÁpYUqÇ>9¬ î“AùBÑUµôEÔÃå±{sçuÞMSÉcóxÕ)ñZ]{u?DB|iaÜ~¨‰Íéh‹ãÓGE¹PêÖ×’†Æa¼ÔÌô“¢lY'kl‹txE¬ôÿß7í­ê i[·È4ÝsCßåQl1ûGÇW=ï6zÛEKRØn—yÄOÞ>{bãNQ Æt†ÛjC¥ž)NÑ"Ù<}ñ˜Ç•94=JhmBHñc62ÀìþH¦ðäÇrK\cí8òAM¬gʤƴ„ª  z\u‰"íð‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aAÛM´E+fÛR0ƒ³èê©´¸x{M büÚÞ¿oÏä63&·]pš*ÊŠ(š|õß6ŒþZ<'—•˜Ú…I§Ýúi¦añ¯~ºyç(ágwfg6wvfw[‰xþï*ò^‘Ç”d8%Û6,~*ÅÀ±ØÃ•¦Ìe~7ïäV&+¹#ŒXŽ@ª@fB/â¯â–“’ûä=K†z«ŒŽ9’;[“'Ç3#ùSÚÝÆp2xí$Ð;ú’NêÒ›³Rh1 ïëð—i ²=xÇ‹0¶wnB|Å÷’Åj6eÊÜžSùdŠa@›¦cú›RÄÒÄÂ"PÍ93; þ—¿Ü›„ü0~ƒŽµ0§†Ìí8Z}®bè×’¡Rö:jv,BBg-_ÉpTo ç,³Ã‘Çbb)KÈÞìóÜ«òº˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Xu]×öÌ2C\ZXu™^Ë€éªW°#,“8d³¥R_¦Ù ^F “Ð.Š+t$µRIM§÷§ÆôEÚÉc1¹›¼Rac–E¤Ôý’´€úÀöØ_L¦×vgAÊnr”÷´È Ñ–n7¾O®w½aMÐG# B|ùIÔ”L0ƒÖu"#MÖðÚÂ0»™þpä³%™©S×ÿ÷Æv'D+ÿÞ§XE-áðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aŸñzÚçͱz}¥Ð>Ïv%Õ÷c(J=PQ€YDúå95õÓ©©u¥zÑP+þÇ|#ÒºŸöÇk•± ™9JYü\™þÉÛ¦v9ä{ÞßÊ—¥Ù»úåý‘?[ræŒç"e ŠZº>>¦˜ •¿1Ë…‹+Q±H/[E±È>ðlîÍC5øóQ4Ï•ÝìWö¾€“[/ü¦ŽÈI“ý9ìÑÿ&”ë)¯Ï*t“€§ãú¦XLLëíU¹á›ÁÑaµy²ÅñÙÊÎÌÞCÑ}=G1ï·÷ú­Id¯DB]“0°ã?Ú½ÍPòO;ãôìMá·„Ð1$r|39ÃùÎÂ5fppq‹Gh<ú:ör™š8Ü¥)·§›Å|³L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&kƒåÖ¶¼ë ˜RkSmöÍ­é?;ùâ ô ²ihow ’ÒÁ*ÙÄæ9ô¼”®TâSl¿m©4ÿ&g%7`«p>;oK_­sÉ¥¿êPWHÿÙ“|vó>qkj C®¤áÏ$r{Êåb7îC†ÎgéœàÈA×§Šã±Ó‹eØE@<9ÿP~E¿ïþWÿŒ~XÂ+ÿ„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜Eâcåún_¤þF*ÆPŒxàݹAÖÌ¡|ßÏþ¼ŠDéñsÆÄÔ_¦•»H{í^ºé4‘ñg.]-‘ ÅÓ)#¨1¸ëŽ“›Iˆñ;åz6rxIØÝß¶aý6g~±_…¿ùMï%j¶:ÆÍRæÅ=ÀšWúk0W*–ËþÉ–V–®§_TºAä"!´#°œ’û¥kFÚn£­ª¶žä8 .=Ú§Úhc[hã¹¹ë•?ÝÚ®Î\–æBŠÿ¼±ªªÛÚõ¼öÅDÂÁB•z½ƒ; œQˆË/¿}Ë#¤ïíÈÝßÛºüåò^ëw‘ù tß29YÛ6\¾sÂɉËZ½ë²ÍJ‹¸~† ž½(B?åÇ xã e'eÍ`é„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-r|—±ÀÝ*jêÕðÄÇßu¤ÐP)ôž®¯JY4,ÌÕ(Žâl¥ $oð!înéõWöAä¬ ïR€£2%ã®9'ðT ;3äšÔöuã+oÞe/Ç-T ͆ã£òäŸÒWÊVãLÎ/asFwüt)Jí®Gśƙ]d_Ü™#ÝŽ jä[óÂ--Ð^<©o‹»ä>k7—z™àr¿°¦3îolyÊ%Ð ù·ÌÅ ºð=z ¯‚õÚ®$pd˜âÒ'“'Bƒkm@B-ÆÇØÂŒ°1ÆÛWw%º>ÐÚÆüµü€šBDW|•Jœž¥guP5¤G‡g÷£z]ÉáÈçH)R.ߘDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ,*Éš…[W“« Å- !#–”7*rš…¥h1× Ñï½ë.gêèd5ÿô²¼qκë­kp²WC½‘¼‚KÈYٜڼ'/ƒ;ÿ¼~>#ýIÙ›ÚÉ´½fÎé¸jÚ…9ņ×àœ€Œ+É—È× ÖdöñWùþy_Ó q™;³3»xÎø¾¬•ôÉ;Å‚û ÖÈT­G÷A¯b„çé)¹E$>ÔãdañÖû>Ðüo‹ ¡ÒÜs׎¸Çû#Íž±T­<æf1x„´¬LD#ÛyEªûqvœ™Ë§f_¤OÇ.ï þ qÚ†+1 kÛ615+Ã5æ±j–Ø2bqðA$Ì%ðÖÓË:ìK狊P…ž2!öÍžÒ_™TÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&PÔ‘oûÿ•ÿã–0Šÿá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-hü³[õ?¦ý˜Zã©/=½‡”ÂàUU½­"æo<ð‰% ô–èÂ$ÆÔü ; žùûÉKy­¹[-+Oºæd/nHàf7Ž&;“t$CúJ:ÏwâòƒuÙ2ö·à®oÿˆý`kWŠPתÛʹÙ)ã­»ç_[ƹK w473†ðùB„çåã ²×?øxªM5ÖvEÀæ9z|‘ðÞÛ³H>R!y3‘²‡¤WÜ¢«v³3}|J¼kõõÇJ}VI]leyן‡ÜKEÉeåùì´q¹·DV¥;St~ÜáNß§®ý³þ—^ÈþØ.A{û¾™Çt¦®ø¼1\¸Õ¡”Üá‹ J¶Ò@ÌÇ’¹·@í/“´RGÔà^‘³Ñ‹ã a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Z¼ùU·-x=cæš^—°]iù¿¶=¡Iù KŽ6€KÌjÈTÕ¢{dY’¨ÜÃrkxMqSÊ¢Ð÷‡ãQ`~’úŠhšÚ)ƒC¾SÇòɧÀdú ÷ôehx½o^Ö›²®{z¨š×Tv›´b¨[2~{—Iàs¡l¨™•žRæò´QéüFÙœ9 R-Òá–è/ny#Î÷wÈ|ðôeW̉÷+üˆxÜÂD;SªÌnmó0a:p2ºß[ ¢›E_þ¨"üëþ’ë¾;Q5–ã½+ÖÚãŒ\X­Gq¼_R2[!ùFñþ:î$"-ãôqVû3·lîÎìý¯žß=êöýøŠÞ¯Ý¸7&–ž½ íTé›ÉJ·—`’iäb¿š'ù M„„8È\øft¼¨˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a÷ÿ•&^©ªk”ªi”n¿¾¼óè*—ÔT®jÐsä[6§t9>Ø'-­ Žø¤:‘Îk‰L$¢ôØ×.!Ð T/ãŒ"мÁæP™ë™ï¹ý¨áC5ÚÅyõƒËµMç¹äÚ¿­«.,- ýÚdz!5Äž[1´fÂ;,Q`q†XË$ ™·ŽäEª³·[=Â*áÏúƒò-ÿò¿ücòÆ_ü"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EãWä–Kýúù,aƒ¶9¦â„FRéû ‚0ôw@9AB ­Ž–tT©ê¨t‡Ó`¤[‚ºGJ'½,§yÏ缑(¥i©|¢þ9(€Q¬/ä>R¹_i‡ÇüŒr?míÿH‚ì+qGà§-´^¤T¥ØpT>¶2£Y­SÚlÚÚs“7Ã/ÇF85IhJ2ÿ⤯POgŒ}‚ÂãBaÑ8cvøÛ|F4ÅiŽ˜‰ì&±Z…Úb¥¾’ '`éõÒhóôOïžu¼õÍ*ÁJJqôñÔ­`vð‚ ˆzô-â з¡û7¦_—9gfØóû%Æ&¹°f²¹ËLsƒk9kÓߎy¤˜š[å1³Ù“1¬—$«*a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„QÝ«oTÔLÞÏ»í î›­cê6¢ýaÚ³XÕydYåÌFVtå²ç6vÕ^\imàÇz9ÌÑJ”J)vEÑÞ½òo§K‘æ¿PyßЧÄn2XuÖ¶Éqq-’¤C@¤Ïë2 è³yé7.åÀɨE¦7Jö2ÚàŠÄaðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a0÷'¹©ŸÓÄZ©Š9=;([MkZ´‡»"P€ü­Ósg*ò¯ ŒM\,9rÉi¨öÙq“üNRhäu÷ Ý÷Œ6‰ˆ,žPÞI¥s‹„…­dm±|q3³´PDÄ'nÙ‹ÅZ2êKׯ?¥? Ÿ…¾IüWr,:6‡X)cqáCtÝ20ÊX 3,¥\¼ñ¸ì­òŽjø ~´ƒ{3n)Ζ#™Ìb¼?ÞŸ+ÿ ~•°eÍ÷u¥X6¥Â‰³@()l¸ŠÇZ4·J$:ÉDÃv•¥Þ×}–8½:©Ú¼Ž‘b¶¢ x~'Îr®ý²_’Üy¬¦26ghh`mÜÇU¯nì.Õ$ leú§·$Ò»¿‹F!~Ÿ¸·ð øFáMFž½sŒ´Mâ솒Ûyg_×w<ög ñˆI$rlT¬cðð8FÍ/O@i+ÏvKW,]ïŽ+¢Š›·V~ǔʭêQäô[ IÕ>EjÔÆ.gZRB«º‰#ŸEÑéu7#޼ví' $G2oäkR#&Íxóœs8;Ñãw V²ØY¤hŽõ—’ÆSno݇•Ĭߪ.Oõ5æy¬€3î'©gÌ?Œì²ãnSÖ.n߇97V[°jØ8êá´-þ¼UÙÃ<$ƒ ©g$h°ùŒpãðv,É5}Ž·…áØpžÔâÒ˜Üâ6Ã1‡?4Ê"’†£’6#Ætf|ft2ÛÜDQQLÁUMqÈANÓQ>ùëž·õÏgUµZíh.Sž+UmEõìA Ë ðÊ,qË€î&.Ä$.ììý²üÐçpY­_5•×6Í»àÁ¢…ªK ˆEhŸO%:"ÇŽWs‹º3܉(NÓŒ†³,By¦‰|l™“B¬O$·}<*åxy‡Ü“¯ú§Ë6¼Ç˽z²¬ôÇšüæÙå§yDBj±UsjÚå«dV.£Ò; :ézËÈòÎÛp G~ŠØD[¾Â-'Ñ6÷¨à·È{-7ãÿï´MOr?¼ÓüÀWu‡ë¼¯æß3¤côä©°Ç%DaÁ+ùNФÿ!øãJ¶ú"ܼpç‡8ó ”…úeýÁ•¬çÈßòb½O< ¹±ÿ0 „íüIª.òa§À§þ¿íÇ)+Ç:"îp‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"Ä, Ôb°ƒKìi£’m(4mæW#rS_v„gbwÕM-o].¿ëß —Õbˆé!絕ãÄÈ^­Œ£o#vF†¥ÓZ±#ûð†ÊCvo¹ˆ»·ê2vgwfY¥«f÷£^ÓuªGØ6œÎ7†¤âö29[qS¨nÎ1EóL%4çÔpBÇ4¤1xš¿^_5ÿ"A5´læv¿lqa—Òg4ÒôTp²L-ÔÄôPáx­½šöé¤Ër©“ŸñÍ!ü‹X(x:ìù¾hä Š8`±3ÁT_©"Ã`ë™Êmæ r NsËÑÕ\“ã‹ÇäŠ1ýdk8®.þÌ¿Áݛ٫‘Ëañã”ÎÏ[ü•ÊyšðׯB¹üY¯R{ƒ[GʼÍÖèµËÍ/ÑÞµ/¹?4yr“ò5^ÉSQ°¶ø´y¬Q¸stü­+š;£ÇZ"O9¤0ÅÉ$G*¢Ê(Y<ð+z &ÒÄ KMÍAûsZÖ0º–2 NœukÄÒËâjì¢Ïåjõ†;6$w's&`¢€"€#ˆ?.|ÙΜ›ø„Þr|Ê;-Ìîbôó?,ñàu¬|†/VÄóWÂáê€F^)íÊÊZÈelÜ¿g[/PßcÔÒKR«ˆ³4ú¦ Ü«û+ÓK¹[­,íûäºêL |ñËËÁâ ”áÑlw¹ƒ—Øû³š¨kŽ[ã {†*ÎSRvš1¼ðÍ~e¡†?׎²áÓM1Æ"Ôf”Lâ”#Ž:òÈãí/ìóütlŸ‡ÿ ¡ï{K!ÀûMÈñ9¢ñÅO´I h¦ òZ°µho^`ïUù%¿uëë” ^Å3×Ëóœ˜EU=·1Jåûdî´Š«½°q UöáöÔÄác¦¥öµ·º®’jpp1DStÖ@US#\Ò½ó‹n·–±–7éÊzíLEþNë k›*9MÙ¢’Cq`&!bè]Ý·×á\=›œ¸þ¨¼¡3,[óÄÕ<«¶¹V|Åcò½n`y/Ô§X$;QrÎ ”Âú1ø†¥'—ÜwlíÚýÆ{"j#@ûl»˜Ë‚dešð$Ï ‘ :C8-ßC–¾¶Ûåo¦àŠmjæ_6ðÇábKöb/ŽO8å°‚ÚB„¦‚•wñ2ýÑ/©ÚŲIƒ×¸çŒ!sê14õL=øžÕO§É¶¹¯YÉäíIN<…‹_!ä¶l<³I5HÁ¦¯µ™˜£ïÓÎza|=L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„U7Ø>3©=¯_Åá6k‰ {®¬+b¢·)¹©õÍÃNÙñÑ\Û['ÜÄLM½×L¯oŒGòÔûuix0g6RûäEE"Áü£à*×ÊóIÕ¸µ«èOIßv4f9“ßþ¥²²lïíÌD÷7xÝoÓj„BߟÉd…Bcü?HUöJ«Ëªc–‰êÂ*áÏúƒò-ÿò¿ücòÆ_ü"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EæÇüD¾·q¯ê(•¢lWKoðK,EàÎÔ-©Ñ^"ìȯ´^ä¬îNn<褨³Bp^û|áø…ÛdÇâ)êõÆ\·¼ƒ³ÑÅ)5XX˜|¦³ ’ÈÞLbõao ‰}¤þÇÃí=·¶.xØj´ô8ûå×ôà2®P¾Ë~ˆs%,E+Y1˜\•*5 à’¬ãžÈˬt=Ê.þÄyå×Ðs¯Ö±¯Í¥Ã7î¸Î u‹)=h!t™£ `½ÉŸÒ%о9Ò€954EQD–Òª]8Lü‹_—`¹ŽG=ÓCæ2A„¿@tb&/fæÞÂH¡«(;±vø'ö³þ%½^`¡ÄZåÿ›Mâv²_Of)êe7Œ”,ö¬9ÖžjÓŽ$+“ø[¥!Ÿ¡dHÞ0ßÞoµòY0‹Â×Í’Öò±¯š´£°kqË›-‹lˆ9·£°tIyˆM®§È@ô“Ò¡ÈBE¼¡?‡LÒ i-߇¹£S-Go‹=‹¯G-+d øFXƵð•žàG ³u1€È^³3;þ¦?³3ñâðéŠw«Qæ6Ž=¤ZVU²rÑ·&oQ·Dâ×-\©)•«M&2;8‹2Û‚ÃdeÂd-[µ,–1õûâ¯F7ú¯Ìõ]Ò2á¨í#ŽŠ,Å,Qšµ$˜RTÄñ…,vãO§f~G[핏n{W…yW¿\é›{NµŠÌ‰Ëf¸ ÁŒL@.ÄÌXAÎFyagpɳ»;;þw¿ü7oy·|ãI¢°ü6bÄúä¶¥¯=‹Íó+8S±=Y§¯-Êõ hdJ9‡%Nän1»Ö¾Äû믮õ¯§×zÍõ€Ôö®y+jÚÖÁ²Ù„|毀ÃdsÄ;ùÉ:µ™zg"n™ýú_ÝþÖ"¶oë¦nÏìÎïÛ¿mÔ´\s:…ͺéÝ5"ØyC4Ä= ÀÙ«qæ—Àm 3J¦¸)LØG¨¨àÓ¡ÄÖ3W~ÅN'*h“H[ªö¹—t|ëRÖ{‰ÞáÛ¯·3\]’²×¶Ì-h!)îäu{¡aÞuªÂX•ªW‡lÀÒ‹3‡½ŠÆZÛmõ2Ö!Šÿ‹ ; wA¼`úœ]Ëéf~ٛȞ K¯ŽAƵù§UÁ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹Z?&*ÞUøµ¦l{êbÔ½‚|RBõNÑb:l9õÖøÊ³s Q„ÓouÛ{wïLãÈeF€³Ta¸µ] L!È«‘OžÑõ¤sÆ´ºv{¤2MhKåv{LÓU-VÑe¶ýÙmÉ‚ˆW5ã#“Úâ12,îoG=H^ŠIº=kzzU3Uã¡ß#{‚ù®;7Ë~žóY>KõEi_în+ ­–;â`Òs·Çø£E‡]ÚÌQh6݃—Æ]"s˜óä*8ãzQ¯ôTlqáÉ"-ŠaðçýAùÿ¿ù_þ1ùc¯þ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„_"@D(¥Ña‘P‚I!N@tã¥]u”ë”ÒE$ùéES®xãŽz뮵η¼àˆ@H̘DYȈ„DE»r'~™™™ÝÝÙ™›·U"Š[ÅI4óHC @RK,²qE1’HdÀ äDì"Îî̼ ۮߓ”¥[Úlá¾Ob3²3uÐʪ+T%»¦Ö¦s9Ò;X•™¢ À¼ÈÚ|"©-r• _…|–’ß%òƒÇÄÑÙÈE .âNR㊗ôöO8ãžpé…Ê+ÃÙ?ëjkÿ‚À [ÈÍt­àôüŽO$#4a=ýžã]¿‘­EÞVŽò[ËXÜM¦"’8obIœ!ˆƒÞt^4Ç ŒÇaцáÙãQ6&ˆÔy¤N~ÁZØØ›ÇkinþÁÂQÆGŸþÔÒç_ý3ÝukANµzu£kU‚*Õâèb‚Æ(£ý„#oÙ™—å'9šÊl¹¼ÆÅœ¹6G5ŸÊd3Y|…‚òžöS+nkÙ “—ûÓZ·<ÓÊ_¹™?î»Ü®­k˜Na5ë:’ôÆ-`ENUòa!i3¤ªk”ÓQÍè°‚áE:޹㎗×]õ½ko{Ö²ï„×óÛ-ÑÆk˜L¾Á’1# ~w+tÀÜÌjP†yÈE™Ü‰£vgwveNIb„|æ’8ƒ¾¼ä1íþÍäNÍÛÿÍiåÒ[å?Yyv]^¬fJ‵n@¨ãï÷!c2F nh±!Þ²ŠÎRkbngwL×ÍìöÄ}mŒiè±O_^¼«øX売9<Ž›ü)&åf­”ä<ֱƵa¹b½›-Píò[\¾·RõÊ¢ÒF7 '˜B]{Sû>ÿUøñ¬Ü±’½.¯ºê›6;S3›šÓÚ6,ðb0Cbk×¢Ï}62úK³W¡˜Ê jÅ<쵓þŸ`ÎanV¯—À©fóÂ_ Ô’,܃íy ’RÀ‰ƒÈWyFu'>é†$…LâZY¤¯¨ ˜#ˆQp“‚×¥ÉjÛg5ñN>éÂGÀà­îÆN £wŽzõòzv–Юd&®ÞGoQŒQc4,qyû»û\u¢Þih¼é¬ñöùKŽy5¬žÍ°a±úý<¦&PØÄJü¶~-¾vXåúS¹¨Q§fÎÙ1 ’›Ä$õ ü°äIht"žr©?(Ý(›ã„ÞȾÊ…ãðŽd ?ž„ë¡Ðû»/aÙ„$¡]la—èt¹p'ÓßKÂ8Ãy$Ìò†çá+cë`5n:†X„_ÎH3ö6K™šY:hZmR3[å–6Þ´_ ü²G飥_¶ÿ9K=·gý™âh©·¦ûõ;·~™úo'ó¿ó‚…¹#©ê)ÍÞ›Úr·úþ*«Mq[0A¢ì}ͤŠêªáËÜ­ÙA%ôÝoyS®e££ÇJŸI.ßÉ-êyÓšù há\ŹèVž~FÝwìÅØJæTnÁ'g8š3ÔÇYZlm—zÒ¼€ae†pûý˜:|q¼…ÉU·lö¡>¶gk·ŒÓÎlœzγùe!· on¢žÙh`øãŒ¾¢ D›Ä…ßržEòz›jÔç7È—ØúrGP$w}´UÝ'÷C$ü¸V±y“`P x‹i>¡¼ðo< ¹©ªªiiѪrÞËGŠ,4ðzòY¨÷iÃõÅ$®T¶lÎ#3¹ ¼2°‰¶IìŒnþ2É'—ÍÄC‘æ=óåÉå3-C.W·‘ÉÏbYOR®*q˜!j”ĆÕ9þH`§ K懀‹¾qÇ‘¨)³ÕËäZú±ÈíÂuO¹²3ÇbS’; @Ív‚ÍAbp§'†!øvOmˆºV2ÕyqæSQ&:ÍiÚEÍYFÀÐѹ£eÛ2XÜ|c[_ݪ_½“Í`"Æx)ì8 ØÝã^‚O6‰­M³ /UñŒF&¾§sIþ\%;8è`7ò–±„r¿NÎQJÂçZWo¿‹~¯’&’Gœl…SuC­ÄhMæ35‰¬(sú¶l ,6Mxäg ö(r¨òfŽÂqärŽË#î/ÐI«z=Á¥RVt[WnsK’”·JŽW™ §Ööì ƒÈêÛ5Hiðù2‚¹üõ^H£Éá²U±ÛÌC`Äb²#%@›^Ôv˜X‚XÝšh%f á'û4Û·EÓ¸HqJ-å†Ë™…© „L"à:µ5¾µ¹2=¶€òÊòNí¡ŽàÖêÖà:‚Úäi¬!À"ÊŠ`e$¨äŽªˆ¬Ÿi÷×;“Nå¼}º·èZ³Fý0\¥vœòÖ·NÝiFjÖªÙ„‚jökÌ,Äa,R€É ‹;pB&$,BLâBLÄ$$Ý8“?lììîÎÎÎÎÏÓªU,Ó§Œšõ"ˆÈÞ¼ò/CE'6˜G"²*ì]¬˜úçÏó™Ãã ‘ðöº<IÏ‚ln¤¬æñ¶vJÕë{ᾓ-¾35ÈQäÉšYcßp8L¦c³JÑ”®ü‘¯ëøü†F ”ÿ…&û®ÑžÝ©Øìmx ÕË·öª¹<±‚ÇSn™êË(Fp·}ƒ–SpnÛª²›·C±ˆŒci[ʦôL®Ð¥§,“øK·jŒ“»2Ê~@\†á.Îc}l)1Ý£²&Ý..‘÷Ð[Þ[zU.M ¨ŸÝ¬7¾?ܸËc·©ozýýo=LBS¥z1ñ±VR1¯ÇÛ„¥§“ÆZøäz™,}‹4m0ÁbOêm[uîÂ3Õ”&ˆÛÈ_ìM÷f 1í¼€ØH{nÙ»R¾aÊBa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0нú*éy¬aŒ0ß•,ûFH$–‡Ÿ]=Òõþ<ÄvÈßj¼(¥˜Üvä¨'ÿ:¤…á= "íÿÃ}Ærp¤ZÔùÊo—4üû]®À’´Lç¾`ko›L#ñu¡ ¹pnPñä’V8Y2)‡×”Ítm‹¯-”,ÀH´«"{ìNœÉ"˾`»B.Áñçvȋ颮ó¿Ê/—¬ë–L·;å’_H£vå4ºVjŠ¢4J?`\PSßßÜÔṈûu#¾?SŽù"ê¢åÅó˜é6«¤“xñtáXÚïñCÄ~Œ1X7ç¨a³êÎ"äúÒQM©Ëw ¦&²nØ ë—£ïm¼qÈ|ô¡å°‹Kt'}ØWwÈ{ígì»6‚Ž¥îWöåaú«ÏV¢\Çóo™–&AÛ½§V̤©˜zˆ"Á"íÃR)· ¨¡"B媹ãcà9501µ¼>—(wmhmÖJxmÇHœƒ Î}5½”Fö`Kv)5\ ¤›XŽÐA…á$x"íð‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&t²$v$ÒSô­ý–2Æ }*sÌ…ÔVÒãŽÕíBœ\—1Óá4ÔS®Ö[ŽyãŽûÞõÏ;Þ§ã1Y<ÕÈqØ|mü¶BÁ0W£Œ§býÉ̈@Bµc–yHˆ„X@ ܈Y›·f]@Œ\ä0ŒîFL"ßó"vfÿ«¨!o^yÍB3g7Yîô—=¶QìÒ‹ñØOÌŽˆK·šUŽzâÖcoEéwEGBoöö¦†ÿw6p¯'„E>WSµ©Öf7{ýìOÓŸã?ŒÆ­Íó!®Õ¸c/ò~:²Í#Íü–—ô(¯‘¥ßA8Î^¿MQ’Ù7~ÛÈj„Ä-׾əº÷öö¨'ÉW¿S¨03›½Œ–:[EVi§«üW¦áv*•Ëáµ%ò»>2¥ìƒAZÀR„èŸÂ®]—›5+í¥n;ž#I·_yÎbµ|4y,¡RÁߣ>rÄÚ·JÕ¬hìwpqeƼ§‹=™F•¿€ô«ðMÝÓ¹­•éÈsE4‡) Pm²™œšS!í¡ÊhK¸º5¾fjEà°šÚda*16# ¶K†%NSIðމâ/â=/gÙ'Ú3ü·—Ùµ÷Š~/êïPóü!&†ÿ°´”"û&éoÊ¡Åÿ|œ½;õç¾?åù=ƒÂhÿ«jvGûùèÆÛ8Ççù/>[Îr“ÿ¬]÷?Ÿø pððwõxŸ§þkÍ?Ômâ1õ|6ø.ŸûKÿC×øJ±EÙwÛ“ýY^ÿ—Mׯ߿k÷þXbî®LæËô%„yI¸ŽZηµ h,7UÕX°KƒSUpH›á_ÓI%áªm8ÐiuÊ ‘ÊÜ{9zƒZþ©ÆºÕxJ¬…><Ö3·až¤a6!Ø7ŠfÑÌAó™Çœ’É<æÏ DQ¾‚2íåžäÎþLþVæˆ]‰ÝÝž*Å.Þúfxý7¦õßy,CÍ^x€ºŽÿ £*XÔŒoÕÚr†šú*4«µûT‚eµíüÂÐßõÁ…¸®V»Ö»ÚÛïýYjÍr§<åÇgysÊâæù˜ñ6\ĸv ûù¢‹öÿ-‚ ŠjÇ‹ø´l>•HèÒ„˜â©\ ºþ`ÃIú~Îòxù»·õrwïßk¾¶iÊöí‹õ°Ø¸u ö{3 „Õ%‹<~ºâpû’7(;ÄuãÊ,‹l-äNrbuLö7G6Ó,Ú¾ÛœÔ.Ø·‡±ç633‰¿V¾O°â,ø½œ6ĽøìÎ.wª^¯0Cf*÷«<ªÕ³  )"žµ¨&š­ÊV!¹FíY¤­rÊæ2×·NÔ$V³‚'ј“z~Ùü$orߊÿ”¤—¼,ç‰ØÜ¨”Ë•‚e%Æšâž–çBøÅi>YZ¹%ËŒ€p‚ެ°ÃToeiŽ¿Ï@Ôó–ùŒõ½æ¥À—'Áù,¤¶åØcòilÞáÌýçk9øíÒ˜Gû³Ø¬O¿SŠíáÌÇ&‰eæÁ~‘ã߲߈oÀÉÑäÈ!Íë[£$îXÇâ\«jÙÇŠjÑäŒ4 A‹ ãFCƒ}Àˆê6 ^8¶Y Pf}ý78·»·‚ìÒpnNŒâØæÜJ·¸·š‡†p& Ú£c*™:Š º pª]öŸ|õ½ÊB@D$â`LâBBîÄ$.ÌâBììììÎÎÎÎݯÍäÐË^Y`ž) ž ¡˜ 9a–2p’)c6ŽHÌ\ X€™Ä™—•Ÿýìü×q¿q̇)ÛÔ¯‡—m pˆ[Eu=P14›ûâ`úé×= hòËü½)µüžVäû[‘qõ‡ÎP†[ÓOM/ŒmJ”Xê² ³FírĽx3?Ègåíß¿¼ß„7~?üîYɾž•¬…-Wˆ¾XÜ{ÍjMŸfÈn9ê²É-c;bZî*ˆ“Z)Cék×øÄ<#ñõ!މ‰Åâ@k\ƒ޲GB穾t##h̓k«ÚŠïZD^5­©ßjo_üýõ××{ôý:áN¥Z‘ÿ’­x+‡ßüF1ÝÝÿÊ-÷wêëánر±gó›·wµÌdó]ØÞÆNì÷fw`w’rw`ÿÊ"Ý3r$2HìI¤§é[û,eŒúTç™ ¨,­!¥Ç«Ú…8¹.0c§Âi¨§]¬·óÇ÷½ëžw½]ñ˜¬žjä8ì>6þ[!`˜+ÑÆS±~äæD ! Z±Ë<¤DB, îD,ÍÛ³+!È‹œ†ƒ}ÈÉ„[þdNÌßõuIm‹SÈv™Ì®qÛ wKv$™ÜÁçž^éÆà·aš%÷ƒ›ºg©l‚âO"Ìâû_NãOÐ)o(3ïr FrEßZnŸÍZ…{Õrz$•4¼ÉW|þ»ËmWIÒ³¿Ù£^Ë^Üò:¼T34ŠKÕqÛ.½•ÇlXW–ôTr•cžìS[,XÇNâáiŠÌ~_´<¬Ù‹Ð‘pÊ2èHá”: 'avÂýÕ=‹.Óµ|ßr;;><%„Ül°†ê6™±ÝSh°Œâ¦'•캜—¾-´GF&Ü£n'ƒLW`½¨£8·ü‡áï]ËÇs5§òŽN• %”ÏéóöyyÕêW“#-[~¦*Š. Û™o}©Êê!XÄ»y?”x9߸ä%‘Ÿ§3x~ ?aì¢yAVW½%ƹ"•ðŠ€xsþ ü‹ßü¯ÿü±„Wÿ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ.1¦†Ú!¸–0†di«¤(‚ —;éEÈ%~ÓESç[ëµïž8ç[ß]kZúåX žÔÑV­ ¶,Nc0AÍ4ÒôÅbG!“»0€ ‘;ôÌî¸wag"vffíÝÝ™™›îîï陿«ªò_¯<ÔšÜËpĬ…QTãUÆÝRõMn‡éDáÕSYOiþ~GŽøhß** §¾»}'³!á^T(Þ{úFk[¤$ Y]Ö84< ™HÀYÍÒ| Kãq„®³ˆI3K”7ÈÑgèlÇ1}þ:Îö¤ë¾»ø«´²}ý—Û³õöuùëÑ&¹JPO<úF|8-§óÔÃ÷Ú §zGM)G3yéRô2+Þº ª9j ª‚!²wËq•z‘Ä{%ñn¹,ÌßbÉnRÈs <²ñ~ |©°Cò˜Of9# ašF‰ŸZäîÑS»37ïð…v~™ŸÓ]–©?·ëÓ;vÏï¦íqú˜zÅýz`¤j(0äm4ÛŒ²îç·Y+o=}½*cÄ»ªŸ£Gm:ß76܉h•ùS]: .EFÂpÞ6H›#¿n›‘1¨5]…ãÇZS‘ôçú¬f·-âåÉõ[v(Ú†í©hØ})«^»fG¯Ž³6ŘÖr’´µµí;bß§‰ ·ekÛ´ì~·h«ÖiÅ»*Ö,Éd'ìÙ¡Ž`nžXbbìhk5tΛܾ“Ÿ9¤¢J¦r÷ŒÆ®CJ'Áuµ#Þz"šˆšº'½ª1QÕÅûÓDÐO±é=o'*Û‚2¯€Ñ¸³\¨b@UããüÛ#‰dÌ9>K‹yÍD@ñ °äã—Ĥ†Y¥µwî[7¦/^ÞÔ°7ïþå7­÷ß¶pvôÎÌÎÌ»(yž4h®Í´=T¬€>zå)cÔ)ŠM5SïW¥ûì¹´7iaêö¿]-Úç<’·jõµ:ï}o{ȹcål¬SµÈ›€cgvsÃPÏd1XñŒF.zxjÀ1³Ç^Œ@ÂÌ,,ÍÒìú1»Ô¯æÞšCˆ$—ÛöýÊlR¿}‘;«šÙL^]ÄSlžjõÀ¹ýçÂn Þx¼k´Ýãø¶ œ†Ò¿µÒá5DøM-ò’:X’¤uÒk­ù‹ñ –Ç®FòJÌd1È,'-é¾(‚@ïÏÈ!©+3tÍãmœ½÷÷?ût •¦ä^ZËEQªÑ#© ×*NSUÇë﮿f”ïÀÑY¿°cÌ͈äùµùcŠn¯WÇOæ~uòum8 –ŽÏg ýΦÕeàRõ5¨Þo=ì΄,ʶl|@(ú¨ÚÆÇ‘ü‚ÝÏ!6pM‘PcÞ¹áÝ«g޵?•ëes¸º´B {q©ô³ïúF5̓F›g^·Q©Dcž #;z´4Ìä SaÔFæLïüØürî0ï?‰žIË`âÃÒ­ŽË*z¸šòÔÅ_Ìןf¹<FðådØìdëZÈEK`*ÀWà³b7‘öwW]‘Ë$Çh©îpZ*:$Mª)‡@4ŽŠBꊀN,ÆÉl è„N9aDŽx‰<.9ÍÉ &e°3_ví '«CO/š›Ÿ˜ãÀî˜F±. '4q„Óãf+Áo ±PŽHË)­fkÒÌÒŽJ÷~–lMüfJ÷“«Ú Ü£q(lFÌòÖ“¦”ߦ6éÜd„Ÿ¿ £rŒœ|šA0—0e%qp¨2͹¼Dö©GJ!†2ZÞµµ$ŽÓEõ½ë[íNùç[ÞµõúïYZ½k'޵JóZ³1xC^¼RO<¦ìîÁQ I!;3¿ˆ‹¿Lþ—B,äNÂ-íÜ™™¿«»úe]Ëö˜Ò#€îˆTñáEKˆåLj÷$³j*Ja£Ïô•P4ÊK¯ÎZ¼ †öÕ­.¾”I-÷ÚJë› rÁÆV.è™ív‰e7*ñèøfˆç‘ÿ9ÜeÁâŸã„ Y®;lj 9C|•vaµ¤ý3w{2{~›ùuÚSöþ›ôûMöuå³çÅÇ» µôUyVÛb·püû1¨ßªöãan©7ŸaÜm°Y+¿F·=ÄÁüB3œÓØL]/­ô7D¯0sÇÁŽ»‡Ùóü§Ä:\Ät„^ÆË’ÞŽi+ÍÑÎgÚï&}0C^jg3^:Äà ERÙi"º¿Ù;ÎwäÔ÷®þÜ·HŠL¬”è`f×ñsS¡°cÎÌ1F{¦Õ§ã„¾¿°É Ö°v~§'ܲÅWòØßÇô³ØFùf¾±|¯©Ô®ZHI)‹Jåx4ƒ@‘_*8ë<h["xÒy0ãnqªik¡ŸÈvßR¹»Hf®~ÐÒwNä[[–9tÛ6Ê.>_Ö41ß_``-ó#šØfÜi5B«)ìÖ4ßhÂòÏ·W‡€©ò§ñ_ÆÛs¾ïˆ¯©ÔÔªe¯žÇGPüÂ+QâÃ1<år†9¨Bøê¡S5R”)^ŸAX&ˆ¦-nù;ן$¯ÒÎ­Ž¢o,ÂÙ%ÜÅê$"ÓF2¦3™-¶ðÜ\nÔzµ›€ …>ûr5™í…ÔEAsnÉ‘TŠ;͹\7é<¬,ð¾Ážl:–µ­›jå§Ú¸ãpÅK½rÎkW³ÇšGØËSkuþŒQmÇoz¼Úöj¦79C'V/£;¦o`×?ÔðUwýzµHò[!ßÖ±bvýs#ƒÕ0N/±ÙÍí[Ñ{ež\lm¯cÏ%^gÌcoÙ¡w0zœÿ-mÎ¥®|òæôlüµVÚˆþk’EV7ˆŸàL~DáƒÏS1ÃEå.:ûøwhrP…UT‚Õ ð¯ƒûÓ³Nëkº/ëp€xŸ†ŒÛìÌ!JóK“zÊA+™7OJíQŒ"„#‰ˆ ã?Љ;”¶®Ìîþ»²uŽu×…?¦n¿âíÝÝûk±ùKÍ1ƒÀyk¢jÎämŸ—aËÞalrY¿®²d®ªÓ‰޲Ò×\„Q]b z]uVI5S®øç­EÉs*e«Ù£s¶ñÅÛðið´s¹ V†0(£Àbæ§…†8ã3Œ"‚Œq€ˆ‹1?!£‰ JþcßRBrû~ÝÞSb‘ÝÝ™ÝÜý7ôV5º˜º‡öS#¬jPÈÑ$Ž>€SSãûho -f¥Ò¶ºµ8¢H ‡}¢Pf °ä%ßIªŸ|u¾w7’ÈáïÓÊâ/ÝÅå1Öb¹Éc­OFýuͤ‚Õ;•¤ŠÅk0È#$SÁ K‹“3®¦ r˜8˜± ·N$$ÎÄÎÞ¾ê­NÚÞmÿ˜ñ"»h@ÿ™¬ 0—Ë®® ø¨U_'xpì›^Ú7õÅ[,#vxÿ½¸$âU¡âõ?[wó=?”¿•±3BäYäþVÙcô=ºÁúvÜMܵ);݆µ›2}?ñ¿‡y2û“@ð±GÜ>vª3{ÝÊÕvoÞ û±·þ^Gù™»ø¥“¨ë«°áv”\ œ@’8ãѤpš]…8%ûÍá°äEua3’ͯÑ×À[ŸX]%­á¸ˆ=e±ëYÝG/g±ãlb²•Z#:óürÕìF3T½JÕsšžGz¹Çk“ÇØ³ÈÔ–+tlØ­,r”ÈfŠÄm,&ÒvÌíß§gè„…Ùˆ ]œL ˜À™Ä…‰–g–%U| (PE$ã‰0ƒbŒ0¥“QE>– ’H[®@tãµVY^ùM$ùë¾úçžw½T†¬MzñI<óÈÁ RÍ4Ò“qE1’Hd ädì"Îî̸wfgwvffwwwé™›Û»»úfföîÿe^Ü=sæpÌQ¨ ª0¤Z@u­9µç[5}u´DJ Y§,˜¬Bºã¯Æ’,jwÞùÞ¹Ö÷ÿ ÙU¸_•¦€nXÐö,&0á;-›Úè–¯µxÝšIaÚË „Ž0òo#;âÌÏÛ¿Jdh³øµ¨d>Ø~8 ê%ò³|P|’öÿü žÙÑ;ª:t7,ú*抷—³+é>Ú]ØŒL¶§–2}!2óü­ºHÌð8®1Id/:³ºŽ†<ò$è>G®êy'_8\»ÆZ6^ (¡h6y÷Á¹K!ArŽB..ÁòFÎ.õ&«˜ÃgKèïS–|nJŒã9Ô’”ÓÇd/ »f7~߸Z¯‰ö$vZr1‰3üßv—ŒO¤álqJ¢J}­lL§63Ýo-Õ˜c<ý‰Àž#³Û]ô4Ž[>‡I8rÜêÖ#±is±ˆ¥?™ÿSOü£å*þEZÞIù¢GkúÏÌ”Q÷ïPÈuˆMOŸYjL[`ÓèÔ¾-+un¬&nb9€âÜ U49á÷¦Þ´E‹|Qú²órº6/Ê´×äÂ0$8wJÖÐò­mä{ìõÈýÖ¹h¥©;=fÉð¼¥ÃSœÆ:C#²rLpžöQj*E¹l" ÿ¨?"ß÷ÿ+ÿÆ?,aÿÂ&0‰„L"a˜DÂ&0‰„L"ùªªH$¢ë¨š(¢Ÿj¬²½òšI$Ÿ;íES½ë„ÓOo®ûëzçžu¾ºÞµ­ï;†Æ$’€ ‘™“°ˆ‹9;0‹3»»³3;º;³3»¿LÞÝßìÍý]Wǯ[y•ŒÂV½+GiË*±„¥¶u8ÙAë­–2hRÏòò—|m2•e[¤ÑSžVY.;ÙT8g•òGp8ûj¥–8¦Ökk^À43»|2ɰgƒ…†9X¼£’kà R ¸Ã,w·;·Çƒ,½·Ýš(œäwoݘ_§õ÷v\>}$›É_Ñ>“°:å0•1Nªr©ÁÁLÂv‡[ìM:Ñi8(ZýÓGcéÔ¤ÆÞ¸EÍÞƒÊïÅ¥F7—dä.,ÖÙÊp€[q‹x’ÁAHÌÑñE>A:Ã9¿Á¹§ JÎG @ß2ãë|Ÿ¨j]›Ó;¿Ó½ffwëïxª3»7·aò~¾Ìïé|¸ŸúŠB‘‹F¼í†‹Ðªòßýç½Gk’$bŠt˜Ê§ëëž8°È%¯Ú-ì”UUOÄÄsÊʸÝõÎ$Æåy7?œ•¦³ü Dz[Å,R|¦í²è¹Hæßá†I5iÎı»€V›šù³¸RŠ&éü~ªÛ ³þÝÇZ ìßwfþÌþü›éÌ'Ô¯½£Ä’ú­¢ Š‚äSÑ¥£+n7×ì7‹1´,û0WKkìß+Ôãô–õÖ¿G¿®º×WÏq9Œ±|uµfíŒRG»— Âxye&oŠÌØ=KSÕòÑ0?—•h÷)Û§úöÉñd¯;pD=³»W¨ÿ#7î--‰æûÿ‰ë·_ÑWë ”¶á2RæóSÒ¾œ©½=E"Ö9oVqø¿jE eòØtcEÏÐI}åÂŒiÕœ×Øæ™ 2Êzyoˆ²5­óLÏbaÀa5+â}Î;ô3}f®ñ¥ml^3;—'ä º.Kç?s°\}NÛKØ5ZlæìDš­ˆ¤ye±zõwgóŽ9е˜?©Ä4 Ù¾ñ8ý@ôïÎdÑ´¿[Ñ^8±XÛ,˜}wW[#»[ –ɽ+f_ÓÊK*¢N +©<Ø Y©’ÖöÎìä3˘æ4º„ €¤Š–´ò8k z¶ogÛ´Éi׆¤ÚÖÉé¸V¢`Ô:ØMY±8ÛpVè]¥VZ9 ’Ar‹¥†R‘LlÀ3Å ‰É¦”~¢O?±yI?É(˜¿bBDÄÎ$ÌLì­x¢Š£Æc¢(aŠŠcŠ(£§Ê#Œ0èóÂH‚\p’(¥Ç)¤Ÿ<ñÇ<óε­94ÓXš[%’yçæžyŒ¥ši¥'9%–Cr9$ÈŒÌÉÈÉ܉ÝÝÝ\™™™™™™™™™ºffôÌÌÞ™™½37Ù}òšå0‹±+hE¯*?`@ÄAœ’}{c›C»zŸªE³Ý!ŠJ™ ×'Gåq—F™$}Å4\Y]9ˆã Övœþ–‹7­ädÆä"ŽjæM{u.Ò²?ÌfWz8ÜÆ"ü=×Éaòµ.bòUˆêÞ©b¹œeJh"±Å01ƒ»;{q!!ö&.'€þÂ@!0.ˆI»UïúÆÑóüµ®C½»E‡ü½Þ.έÄKþmáal@yLI¼~?!w44kN±+æ¶Fi¨VÊü“QåæéÑRÒ¹ y?™ X²ðê{DÇû謹%Äf¬Ê^0è»ç¹D£Öv[wïc4øaü¶)z°åf£7«B=Ï7þõRF-÷µ3‹{š;iZŸØ_XÀ“²=´"Áðør6r„Ã޳ÜpÇœ¶0’9%ý þ·Ú_‡ÏÁ!Z—'Y¶zý{‰ÛQÉk8|Y ûÆÕ(l[ÌšÖ' &Ù ¦,Ï_»–yN­p£ ¢-{ Ž?úyM$ROžSM4ùç„øçžyç\ëZÍk$’M$“M!Ë,¦rK,†G$’9’;‘™“¹“¹;»»»»©ŒÌÌÌÌÌÌÝ37¦fo³3~ÌËY¿.¸7Œ§:U¹CÜ¡&7ÈØmª¹º$®Õ‡>ô&ªýlV©"Ï+sÂJ}tΚšOj¤\kYÃcN½Üo$”Œ,„o,­½ÓŸãg/Ó—˜™™ýBÏ×lÎÞßþÏžJµÇ?‰-]ÂàU§³V·ˆ´Ö.ÇJ‰Ù¡ñìx±·,§LÓßÂÇŒˆÃ§È˜9´rH%©O…@sò§«çô^x> y~D$-³I>3"\%Ô=9**áŠíúŽ•Ê«ú‹švAÃ,£¥Ö§á|ÿÓj›6>v™¤£NiØ.§…Ž”Áò¸ ¾cEßÄŒœŒ]„E}þÓ>#,×?p~݉—U6}‰’Ô¶+ÞsÅ䤯³P°ô£ž+3ÐúŠ;¼ñÇõV°F0Õš)'šFê>2ëÛ÷Ó÷Õ Ä\–±µ™'³þ öÌaՈØâUãKoÌ윅’¡rçæ’1`€ ŠÝlJ¶B Ö„,Á4WNz"Š^ñ¹3E_è–&¨åìÞàóæ%Šî˜¹œ>œiaÎÎj¬áŸ8qÖŠêšœ”¤ƒòiÌjöSn²ÆÞåÈú›3 c²˜«»od.lZý ö\ÈC½hÕ»/’lå:€¶ r±7ÄÛοã|^¤».#J¿”¡…?ŠñÚ01‚è 2“°Å0;ý5’õÓDEî)‹ïôÒ¿Ÿùš,ˆeU$QuÔMQOµVY^ùM$’Oö¢Š)ÞõÂi§Æ·×}õ½sÏ:ß]oZÖ÷š°ä0Ž0)$„\ŒÌ„@YȈ‰Ù„YÝÝ™™ÝÔçvfwwé›Û»ý™¿«¨ãÖ^dd0Ʋ¯ª ×ð6—ŠG¦ì2¹§]ŽGb.°¨¹×D¤ÔQÁf!t×O´zOJs×:Ùxo•ïø¸ëqƒcÁãÌdð> †HÆhÎlöZ Xjñœ$2„¶/EFBlN$ÎðË#DÅí×snûŒ% %ôý?QFå!;?§fvuÁïÒB9©ÈÐKÒ6¼¬šD‹Å:÷Q&/ 'Ú½Ó·¥H£˜ EøÖÔÓK³ŠûQNEJßHs x¶j€òì{ïëP8Å)nô7C˜„„&§Åqoùæd]ݧV?)N@‡©­b~¡«vgí»o¦*ìß¿~W^¨;3}üHŸöfwô¿Ï}BùÒÄG|íŒ6uÊ¼Š½íŠZšŸ´’Hª\z§ª®¨¶ÑýOÚ3´‡±ûS¥ vŸîcgg×x“ÑÇ“äÝ-mœ bÒ¸ßó 1ÄfaOrÜ4<¿ŸÍñ@'&® ÂSØñ/‚(-ñó_>Ü)CþßSsÂO¿LîëÚ®»~šnûé½vî0 ÃËþ¥}–;ÚÕ÷ ©ê Ï|C¾d+V”<‘Ü Ú…¦øóM¤¬Òäu‡NËh!†n°û¨™¬¡‰ÐX¯ñ™ÇÂr×cðÔ´í“·nFÔ±ò ãcÚ¹Jν%‹S“¹¨† F§œ×¡»1Ë-­dwKÚÞFif»©6\©eq±$¡|ä+Ü­RÁ·ëx* ÌÍâaå²QÊâÌÌ3=q˜˜AÚ6(ÏñY²q;æ®ô…¹é–‹¸6¥;N¾x¸‚«ZeͬÝ%Ӝޚ›yv%ç1­¨šk’î¥*s8˜ÎLáÙp(άm+¶«å¯c_mâí3Šnè3Ü-’–>Ýs jóTÀo[Ìòtºf`£Œã§X›™–­éõ]‹cŽžBäh¦?‚í‹Ãi‡Ô%e«Œ‚?æš´´#¤Ö#íÿS»4±± O .@/aÄò˜[³hªÞ^ò©D¢È…hÍ '¡¹¥Ž›ØüÊeÇw±¹Ú?S—Ö¹Q}ë_q ô¦´Ÿšùj@*òÓ„¢4bul¤úŽ šW£¯€Õß…®-+ùõýŒmöŽ6Ž Þʤ¿o$àÖ%wë®ÞYþIúõìŸîÿÕû°¡hƒ€Ü À< A ¢ ‚\ë”Ðd8MOkžKŽxãk\ó­kéšÒyçµ4¶lÍ-‹™K4óÈsM4†ýœ’Ë!ÈdîîFdäNý»»©ŒÌ,Â,ÌÌÝ33333}™™½37ôeÉÊK”Â*¾ýHH Oï¶/šÜ™âOò'B¤3ªŠEÙR֣ѽr«›ñ(µ‚{¥[dº«ÇÞ]“ Ðß $· &d9&Ê{ÚÇoØÍ‹Ö9N­ìÖ7Nf½ºc)w½>vp©ŽˆíدSnÕ©xëg¬×ŸPÖÕ¶=^©_¯‘€uN9¨ÆfNsW>Úµ‚óø‰yËîóÄ.Æîå<3—‹†sTÝñ«AwˆÚí¯0N$ˆªNê · :‰¦oj¤ ¶’n9ÉšS xYRX0ÇY%õq‚{ÛÛ;ãK^?¸h]J:YHíQØõÉÊ:öë€{3ëÙ’€@ìRóµ^­ìFvIäõ¬íH»|"a˜DÂ&0нN}kåÚÑc„žz˜Œ9·. …±9Y>dœà²( Q”U(óV!VÕ‹#jó´‘ï[úæË×øg–ö ¯6½Æ{ÖZ¥¨æš…]_2ø²‚°I%‹•:aŠ´…5‰­G LæbíÒ‡.F„´·+ ³8ñùöîÌÂÀÄæäîíа»¿ì˯ߦÙ]»DxCèÛÁtJ_¤&U€{Dm§®âUèQi¨:ü÷ï¦ý(_ö’O¢8úÚ «%¸¢ý6’]“uâýb´g e4ÛölŸÎV'!|?K¼ì½k?."?„É£/挀~¸K¦†µÙÙߦ«$ ÓþKZ/îõ#÷×gnþœXþ~WjEüÒÍޏ×|Ý÷¤zò§2Ýl@)ˆ‡£š”é3V\>¹*@¶˜—Ç}iTPï©jü]Ž·*ÞÊØ&/Ðxû'›¢$ÓÊ ÓXÞ³\_pX çg‡aئHEÀän~{¦ÿ¢ˆÆ?þ*ØF_fCZ;£÷wofÞ›¾ý³.7ô·®$ñ§k‚’¯y0tôc|—•Kß™—ü¼ô¶™ç“[`(û—û?zIëM%Æ”ß+ö\ëcî¯æü/˜¾‹Iß¶W‚Bx,ìÞ ޽ƒ°}v»ÓgÉUý}ÇOy2ñgŒl3¿ÈÜ|yoÕf¬=·¶Š¬’˜?~üe–ÃzõÙVÿ^—Ýo9˜øºO}é9ËìmqšQŸ±SèÎÄXm ›§›a”œ˜±ùQnŽÖ_œUÙ|#®•èDSšqò|øÅµÞ3âÍ~ÏÆÑËvMs#»I;´ñÍò•NRÎ︨$q«»ÓÇV€¤èc)œôœßù×/JÝú˜+3zvëÊ”UMÛ·òýFïß^ún”Uf||PîZ_‡e'›:*Nœ"V˜ç"ô©“΃×mS6+¶A2uqá¼aÜÚ\L ìö«´&Q ˜p¨ ¿UüJrF¸÷1Ò_‰õL¼_O™ÖµJ˜Î6‰Þ˜,†…Áͯfj½™e«r´3аLóøŒö¬áìПN_`œ¸æœŽãöÝ~™BÑÊÒÆþ,Ä$ìmþh¤ŠOA«m®"Œm½ÒÓÕ:Y² ý.–‘¤­ÎD·H§ŸX1Ûd ˆ+‹Ã½5'M¾ÄréhÏ!-)Y/XÞߦ¾j¦G4¼þK{×E‚ÞÃù¹¼›î–òI PwÇü³IkÓU£KyÄ•c&óãà·&½ž¸zµÕì|dlÄfö1|~ªÙû“½cé˜MÙˆŠ´ŒÓFâÒÄ?9Z|Ô*za˜E[§ôSŽ¥ÛT\”j¶Þ7‘û‘¦H+¹U× A!À÷\°‰n©‚’-ì–„p–›&0Aöï$…7›_½ísª¾"¶›È8¹ví*»Ê8²ŠÄuví$¬HRËgIÎφ­L¬Ù¿©e"¹«eŽk“,VzÌ%ST/¬T6¯eúóì\«ÙëÓ5˜™ÇÈ™›Ä'ág)"„£¯¿üð«óímiÏaUçìq¤5¤á†Nìòºûüh¸ÔÇGÔP‹i€õ5ùBâ>Ì,é eÂÁ€@¤D),Ëþ901øý§P×sÛ§æ†Yq›¥LGNŒqöG[r¯’LÈ×Ñ;ä¯K¯Ü–9åÖ¶=‹äå¡^›‘Ãbh«Z¦:å(¿ûÕÜ»ÿ·€´¢ÎÍ40›ø4—ß§£®<é5SèÛÕDS f°hKº´V-@ÒPy…îÏQ×_j¤¡þiš?òEÇ@L‚±aâlWy6 Ëõª`e¶ìr.±³Ë „#9Œ˜N<½ºlý‹Æþ#ÿçY»±ˆâ­õà^¢¯vbví…ªM ;wÓu%±­¾»÷/Û¢û;;ÿy²= ü®”Šy™¢4 d*‘Þ—¬rðª)£­ðK`¤KÒD¦±]i4Óq3-ȼ¨J©¦¾“^Vâìp8æ9ZîVÁÆñ÷å3´@ÊGòŠÝó3Å–â(âo"*¸ÛѼÎ1~VŸžé¿òèˆ ;÷õVÂ"_q±Ýíÿâ1~½¿¿Kñý-ë7ä>Ž×-@±þÒƒRò‰L‰¡}÷õûÚgS[aë‡Ñ?ôë·Jsž7ßúö7ÓýÛó~ÇIÝ='|Øä‚Nâ±°oxŒF2ì~=us^Àé§“­ú½øÔÞºõówíqñäM¿Uš°öÞÚ*²Hbÿúe–ÃóVÿ¢û«ç§G¥~ÉÇ£=5jçöÿ*SuJ’·××ú÷ëêjf·ëñÊi‰û2uÿ)ýüýVX•W¦—R€yküaÅØðù^<&ss2ø[¯þÎäÝ“yÁ‡ÊîE7ʼnäréúâùzdOüÛ·e¥¥Ž»{ÿ×NÒ¿^ºîO_õ~ë+ÿÇ]EpZkHU•ÌÔÕ AÎOPz-GKj8-œÔzŒÎläì¹5clòÊvÜž6›¬RTè© NáÏæ7Nc[ø›Ý6:Áß¶ýŸÃ%\NíÆ#SMÏ`!’°TmS=W ¼kO 4Û”*yŒ=@ˆ5ìý{ßf¯Æ¢ÞÄØšI©¡©yѨ@ï Â‚L*F6õ÷)mz¯&FùÇ[ÝŸ°ƒ”èR’zyɈ…¹;Ž‚KY dd?.÷¯A&ÈbÓO°á7<…‘¿JßðOIû¦ß5oÞ‰1Dß¿ÑJdÂý*ÌíÙ¢–¸7s£¾åò4•«ƒÇô^ÒçÊê7¸AäòƘ½žÆú¨D]þ¯}$óD¥5MGŒ&êHãvh#h’¬|Ÿáûš1w ´œm¶Ý¨ñšÛ' s/©d1ò#[¶ã¢±®]ÄX€_'L©Å$‰a°2D†Wcä× íØ¢’AŽp6íÞ3®nÓ žŸô8y;7bÎÎÎøý—wCmÚÖi_D*¯@ÙÜ8Käq0… §p¶‚›åM5Žâœªùi©ëSë“9->·1ûzž ßÚ7i¯Õ›%Âù)idñûFßÅúµIëÝÇÚžÿ k{<µå(dŠh§Àqõ­Ógi!wq8ßïò‹ÂÝÌ$”é[¤ÚváªmØØrs[Öv,.Á]ªÅbŒ¦xœkâ[±ô±Æò´LÝ1öÿ¥ýø“©¬;NŽô Ï_[Áýjê’®¬ò÷FÈëÈ@»9¡¹(A+Øü¤s&–q”nð…ü *¨éö¯cñâ\f­Ãúf[7ŽÎó6G+‘È0+ñ—åsØè~kB3Ö¹’äLïäj‹Kg+cð™€Â*âÒ “Ë_ôë¾ÙÞ9£‹8ÓpÄqÝ8qÚµC† ¦íÉÔ¨Ër|~2WÃ߇«Sßñ×,ž #| ³•ÊT´otî|€Ð×ú­òü%Ò^œâ”rœns­–²0š æSrd¼Ö¹ÛÓå†êàÁ"x²ã±¤»-7~…5¾“7(Š‚÷±Uè^¹W~pÑp†wqÚG(l.Qµ²Ví¯k´ò~ÍËÕÊÖµ‚Òr7ëAñIRkK{ç3x`¹AóØùAý¦{–Í™äjz¾G9¥‘áòWjd1|+µp·u\VRÒårY6;sE=<´Ç.-oŽIf‚B¶ÐÔÝ §ÉöŒpÈmëv^L)ÙG{…><@ë¨ÓÂvšãª&½ª$-਒]5 í!rè>‘D…$þ{5Mõˆæ[:ŽR çèZ‰ž§$ÐÏP£°ìùZ2Wš«ò˸ãjÙ°&mrjxÊ­;Hq qWq€>_ÉŽñ[µjÔDÄÇPFl_±}$5Ì™½x±uÓ;»¿·®îQ‡PÒä´Øþº¦Ýág2¬æ—OBzfšBHrqÇKI¼¶ð®€#´Õæ:Û»XÕ 3Vìp<&ÈÆÍ­ÌyÎDÆÖÅã·‰8[x§GRJåN5âæi¢Ž¬Í”©¬  löbÉÎ  äb†ÀhU«Oo- ññT73¬ÙÄý“Î%rõfgro›å’Ü,ÿî7ø éžÓ» {¬Ÿk‰,<óR>½4NûŽ- àcÜ¢Ñ##jhŒÞ@§h‘Ü›»@bÛÜ“,CÆäHG7í˜ý£°äèîeëì°L#”:VO&R<`ñK4Öˆå³ÕÞ)*Úi%†ÍR†jÒÉ\â2»Àp@UÞ7…Û°xº`ë·í™‡¦gbíˆzgb퉙ÙÙg™ŽªÉ„L"ÀìjÊ lG¦'¬¾6¢x¯-KérÛ^ãrþVåªU‘µüFZͲQ’UrkgYUnq¾úëy±µìvOómw#&>Ô•¥£r7ŽT2˜Ë%ÛÃæ±w#±Íao|Qü>V­¼mÐ U¥fjSA€øæ1gbíÄÀÛ¿#1v8ä߯HÈL]ûe_ùÙ¾qå0.¢ÜíZ`oô èvöÀùš@Âü¼$’^„†G[–@¹ï… »«Æ‘Ø ¢Î²à5ÛmÊÄì‚×µNPr³¡ÃSOÞ¥éæã;6ç|ÅcÀŒÏs¹;3ØŠüî$1h;5ÉrSØhkê»ÏÊUÖqÚYé~›NV+7Úã |±7®šä@,Î-ûÚ„X»yᄦ9çÕg`é}Maˆ@ iY^,t˦†@]‰wwÙb*™cpÚ]/|=£¿¿1ºN¥ÈÖ¥%(DbgšI&œ#Ž)¤!ˆHÚ4·iÀNZ¯³wá$щýúôLOïÓ33»»³7·X—ù¢†9õúЈ ùa8v_ê ‹ iÇY\5¤¿&Ío°lØÔ­)³]tš:qNsúj/ß\"ªŸ¬oC^¿ºLíFùsûëU†ši2<‹¨äïÖý~-oSÊì›t6ݘꖿó„bÄ`/, -/¯ˆ½E ¹ß¦ð©8 úï¶šp†ÛËåë¿ßÓõÁ=Sg\®2f:³ÎÝÆä°G§ÐïIÛQÊ’m1BúHU ŠÖ >ˆvQ™ôÍu†J{DhœÝ¼tÜcŽ ÄpëÎS±q§£UÅd6þM®+bªW5Ìßi¹MϘ€ab˜aÌm¹2¦7±öd‚žw'.gfB«–ÇÖ½STa¿=’1¯KÀ⣻`+Ëwë¸à „âbÎQIê9Y»qv%$íŸ×rTX‰çŸjôˆè®:cg­§÷ ˜)­èEBž»ÙûbæõÖÔìÚA럻ôÒç¯ÅÎ.׸[ãzï$í§BM»µkzMK ·Ìë´µmÚÜuåéüF¾â3ÆÅ×ÎD>o[Ç"}»ÍNûo‚k$Ìÿåv”§¬.Mû÷]Ùÿ§ì¾}ùæN÷¤ÒŸzwÑ2öÞÑG03½W•b¤ñßJ•Ø/ôo\ÙíæøM1õc’¸â Š:5EÔ8£{%âqîg®q?am Ëôù+Ô6mÖØDLÁØÇoÛFÏ©Z–!g"•õx£–i þŒkÃèä>šk×d›°†°»þîÇVgéó?LÌÝ÷Û¿×~Bó¡»'rêÜ{[e¸ªîö’L}¾!D”Y¿½²÷é'×áM>yði1ùýTþÁºé-ôþú¹:‰°»Dš{C$sqî/ÆþRÄ$ sc5Ïœ›ÌÞ“ÊWù‹ÊVcgåÔÝä¬;³³ýYËsÓõÛ7ÕÝ7®½uÓzo^”ÈÛ_@™¢¥Á!¨AáÚt5¶4Ì TÖçAº Èã„“A!8‡ßbœ*ÁöcwÒ&¢]oàö¶]Žöb†î7s?ZÅ{Uó–²·¬f µRVž­˜rrÎwb±Zq«ÌŒÊ-$d&ÌêPÃÆñ QŒNÎ/€´n$ݸ3x»zvvéÛÓúU˸E›çÌãNŽõlÒÈý›@8:¬æ¾?¦•[ÏÒÇò‚IÙ”o¹E»¦ìWÝ(Ÿ`•ŒÚÖÈÓ[?lñÏ꜡áWw’†›½ÉäÐrEj“¿²Ø/`“†ÇC9S¿/CïÆ;ê&ŸÊm³œ·¹´ã¡|SÒýU˜¬Uo½2&yafýéÈnÞBߦ˜úfõ± `+‹6 lÆù•@_Ç}jàóYœ’ü·<Çd-}ò“ÌVYu'蔵ˆŽùú+$nke+þY͸U¿ÑšßhÕ6 7(ø}&>áV‚õSù!µG'Œ¶.tsl9'Çfp¹ÅæÇf1v­ãoÃüÚ–fõ)pÏ€ù!61bq/N$>Š9™Ž9ýf"`þˆYÖy˜ê¬˜DÂ*ÝuÚ^MU­ò¬¾ìª3Âßoýƒ6†èZA®‰C„iÍÑ7®œA=!Kh)¸=:„î%4ª‹šB)ÎÑÐõd xý¿Žµ^A)ªXa£²kX ìµ!’xÎ)#“+R¡ÑjÖ+œÐ݆ÌÿI=#±À:§0¼+V1î'^Üõz&ýPÍ,LNÌììþ^]³ôââÞLLÎ=2©-þ¦¢È(F(—¨½WE'¥„tlóåîmÑ[ˆ(i‘ȦÎ,T^è:ðt9Q&ßÖÊ\-˦0/Ü\®f>JãûžÏcy8fÈfx“‡ù¼?0©o’¸ò ižiÊ'š ·žËæøÛf–B &À~@:M¨Ê[çѪÁÃd­Ã|ê»°G{!Sß Koffï§–h£Žä,Þš_—êYúú’s,„WÐåµc–S}n2*úŽ-Ò«Zú¬£ñ·`—]DÈR>çAõêå:„UO¿Ú©.œyý–KŽ,}]˜ã}/LÉd0Û×$Úƒ1ޱ5[8}?޶¼–RœñÆ%äªr3q/Ñ´Ä`CðÉpÚ«ýCFNQC,ØîX°%jlñ›14–-ÀLïïÀª}w—]~ì-åë¶öí’ÿ ë‡å\©÷Ÿë@— ®9cf¬çÖËÈ@÷δ'bÏ캥¥W47÷v¢¦TË€§_n¶ùç­wkúîÇ qîrFÕÇŽÎB†fQ ¦Çe«Û¨V#†ÓD6 †hêÉN´‘4/1Çñ7ÂQH>†HN/ŠAnÙŽ7éÜ{ñwg‰{³,O9t˜>€pZ{Nð®oôÈm­­îpѺÚûOüÉÅXle7Ç"¦E×j»×Já>ˆÓì­‰½=æmªë<žÅcë¹»¼o%ž)žÕ«53“7ÆÇýÖf26-ßÉÚžSCØnO³; µÌÖí~ÙP¡çš—«…óVÂ"Q7¾¾¶0ôÏj!h~å4u€|ŠÚ„hnAˆâÜXÇ·ž2‚pK¤Pf†R\.)b‡j HÄ § º=ö’Éw‰÷×k{Ó3Á=Yæ«jkY­,X¯bOïlq¦‰eàGXô€þš4ãz%°M—´\Û†Ô/Ë¥ñnÓÈš†Ë=Z»±kIÙ6-d«,Áù­ŒpT=¸?ËÚðùœ&Ë€V,ásxö’Ì…êÏÁ†­¦í\áŒþ.Ûq:m|6<ìQØmlXÌ&G•Èd±¸ˆlbaÈÁ~ ͺô®än¾î/#ŠÈEPëd«HD¯¿ƒËµ—Í”ûûÍ©^ÝÎ]XFÄã7TKÅ©å’׉/>•õƧNîòh¬uµ D€ cµ˜¿;:803Üø»ðž3âîlz&w^ס¹@2™Î2Ýy QÎr&^:EœÊX’¶—g%“Ý5Ú´,ÇiòÕ5L6Õ‹§Fáìún&„³™½Óý¤¼û{~ä.£”,Ã/ðÄQ€öÁ¹èå&f–ý³nØœAà®/×û¬UàŽvêß;»þïöëû¯"ùܵÿjY]#jÈÅ„¤še®‡÷ÏfÚ­Ù"Ÿ(ØŠúçñwÃwBóúÝv':Ъ(\}<›g=B'–äqX>8Žy«‹Œ2Ú ® ³¿1+M3ü¬3?rˆ›sùu7~ä…¬?NÌöä–ã³öì?Tsx³ÿAë×möweü”yšÊI©}6ùúÏakI¥‚k]ÅÙi9 >Ö\}6Èý•_&¹&i8ë¶ÁyŽrèðã[JëéS†äè1<­p±ŠÞþ«’u<³¹’ÁlÙ{óݯvaìfõ}ŠR·’ÕvSŽ(\²tšÅ£Ô£WiÃì¸zߔȒŒ]´•|iÎâÃ0¸·nÑO0„ðöïú ăȊ !¾FýÁo'¤MUeòÂ]l¹¨¸qrGqÙ•}ËØh¬J‡TR³4‚‹½(Å9ºTòt›,È⼘3\²Ö%ˆ÷×`ãúÒã.müw‘±¶éµ9²ÑIY ÛtqœÂ!¯ºá y:fXªTܱ'oTÊIbŒÛÃgîM¬ÐEl˜Æ½°h,m³÷ž»wzÒ?NåâÎE^FÁ˜†H…¦?ÿ5ÐÕjjÍPs/¾' ó¾œàš‰0h jÞŽ¶¯+'¡x˜IMé.öܧÛÀ<ýŸ‡æ_4S|FçraÝ®ÇqýŒì7! ±¶vðk–g~¿–ý0zëõYý™› òáŸZÆËJ-^æ¹ꆡØ×ru›r;Ä_9k¸\\Ç$‘´‚×Èí›Éê/♉™£È0‚XÂ$fãømŒ3‡ lÅ#qÐÖÑ\53ó±úU°ÅRGC«ø{Yn{#µ7ÚIz{‹+ãH ähÄͤ#޽ZÕüš([ÅÞ#qñrvrwí›á‡ã×)’È~"6xr¶ažåB»5¸ëÖ*‘W½—Ïf³6#x þDšfŽõx䑿ä¢q„A„äÙ&leâôÂ*v›MÔ3§+"èšoÏ·‡H/0„Ïçl-5ÍÙÚ¼¤8aصòÍÎÍÜ8DV¨í¿ ›»´ZwɈ5ñ\9ú'BƒxÝu꺾Œ·ŽIÑë1Ç„ÏëzöFîÑ¡ˆ9É<ÚÆÊ8ë5¦ÀV#šæOIÎX}^ÓÛ¥Õ³vËh©i´õ«JSErµ;/ÓËÒ€Ãk¿LÓÃæ$Ò—¡ 17ÎÝ Oüù¯þ@ëyÑACR­o.r\øªÚꉹ¨¿0³¸ðÎlæi>±E*ydK¢ÁŒÙ7N^Ô—=9·#lŒ¾vs(쟆ݣ^†|áí\~Z,VêÒ-¾Þ ñÙµŠôþǨãò˵ÅL'–Þ°— Ú¥©ñvòØñ¯~Ïæ •Ú6‚ÛYq"úq¯+ù€“ Ë æ×–'f~AoÔ,cö 1shzüŽŠytˆÊ)¦…{\ðZj~bwɨµ'H£éuË õ¥ÓÓšlc–Vô&‰Alía©q¦67<Ï-Ç•2)ÆxóEØó¤,3Á%Âߤâ¨áŽyûŒ¾¯Ë MóºX‚5Ȉݲ‰úA𒤫±“„xÄܤ’p—fæÞN¬>8M”tæý>OǘMwÎ^‚8Ýæ“BÄk‡9D )LRÅær¹œ’?-¤OܰýGÿíË5ÆonþšÔ“3tîýtÍ×Ùºfe†ïϯ{QÊOãæ8£…tï.ó B+UKIß=þóZh"ª%!?7[ä¥mk&¬˜9¤GõDU†I%u´ÚïŸÞM.J ¸žlÈf29(!jX^YäËîh™ÛéêmÕìLoÚäÜ"V­Å·á*œ”f28¼U=BÝ/£*~RcB0)(?Qבÿr®ìÝU™þïâ/^RoæFe`g:ºå†[<ÇÓ»¶*@ÀΫ‰“b±»æR[Xpäñ²»QND9>Y‚PÌCÄ*bÞŸóp©4…a×ûnÓ¤£.A©d0و屯m;a”Öv*›G,øœ¤B"SW"ò8›ÑRÏa,ŸÐg±X¼ˆKR9pYŠÃɳK ‚á4$íÛ4€ÿ³ûp\¢•›Ê#0èžVÌ9HL"a ɵ¹å¹ÁàZ]B)µÑ­ÈTnrn98JMQŒÁ•Tr…!%!EdûO¾¹Ýz¶­QµZí+3Ó»NxmT·Vi+Ú«j¼ƒ5{5¬BA,Á(°ÍŒ‘H"`BBÎ܉ “8“3‰ ·N$ÏÛ;;;³³·NÞk¾i`D¼J~À‰\5³­^7ë(O–ì R±àÍj.š}uç'Éœ¡©E™Ioµ¶‹›)Ó‘ýZºk]´46Á}3‚Öó\÷Y¬ft¦¦Û/Ê1ræ·¨grzÆÃlc"aäü~ püçv¹-‘ù>¦öÝÙîݵ°ã¬ÒÍ,ºŽÌx÷BkЋ»7tÎYüŸôÔ—ôuâå„Db;¡QÜUÍé }WÈÓ‘Ç $†õúU½Õé•Ü>Rìæ D^B T–)"‚PØü¥­ÜTI…ƒärÆU]¹éGgf×6ÜYbò‘E˜ØlÓÈP¿Jw1¯‘Äå±¶.b³Ë¡_%‹¹n”ÒE4a;É  :Ö`·M\üÁÝÅÿI 7Ü$ŒØdŒÛ¶ì D™Û§näÜÅtÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a«ß¢½cæ"Ææžž¼ë*'&~Ô^?"´%q&—™ÛÌvÓ+yŽ« ‰.?Æ·œwê§×J~°««öý©õ½j¯Þ´ÇÇ¡¥UW»ýõéXe‹à^|ïÐ~u’ ù`}ñ˜Ë­ü·zü|ÃL ëw)“ÍâÉãKÛÒ°¦W’(/;¶¼G¥rºöÁ®#PESnŒæƒê^Š=¬ãÔ­(ê+Ç9~ßœ{¦qÎÓ¬¿ÅSnÛ¹* î”ú3jÁé62³¥cM,†¹>ït#–¹^Î h–iáw›­û´ívì\‚oe^½7aêÑÁ-–DÖ,WúawÑ3´°33üÒDî[•Ts›-’J}Eè‚Ú¥l‚¿‘iÕÔª ‹ 6ð»IЬç‡Ð †»bÖ†Þ3öÓv!b’KqÃä-s4ƒƒáÍb¹E{¹ùw]¯+@>ýu,ÞÖZ…Ù§™ˆç´èáÄb†¼,ÒüµZ¤ÆÍòä-?nãV€ûoЍfôÝXwnîþºÈ9òŸJ#‚%P·[KhóÇ#yØveúšM%ã`¶]sëp=sÊÊ©÷*l…;/{Ù]ô¶é?5rLQ”X|í=EÉå“õSŽlNæc!5‹Z]³aÀÆy¤ˆfˆXŸË©»÷$E?_fµ4öÙ½uèmK0·ý½öÿjb„W5ídÑÄ~·Ã+æùK„Ù!v8›G!®ô<6°‚|òŽ”SIsÊ:Òzï½q­k®¾¸FhÙv»¥’Úv,îË‘'7+ùüµüÅÒsñsrµ‘±fwsq7yËÄ{ï¦êLPÃøA P‡ü1F¯·éfõÿ%™å‰UPí©JÆ­Y_´æý²"?³ÔÖƒ3dÞ)²úIC[¹XÐÜYe'eIlÏ$‚È ¼×Xñm,ç·æú†ù”Ô‚þ9êc¶_5ñ6Á§lËo˜øXƽ§'«š¤Ì8Ý“{°cB{0SÉERíêÖcXªøŸ‘Å<}üV"vcï®Ç·g#'fs†Q8MØ\ÈEÆ?ŽÝr¸ž¹ô»{ iíùÌV(É@ði›QØåû±i»œêáQYn‹r‚aÖ³×¶çòO ¾¶±,Gn^Ú£ù&OCÃìXÛÛ?YÈåhcªM‘Ø´|¼•ìo:…:ñŒ¶ò T«Ó­ºjµä)ö¬&>…¬lUìYÚuf™P¹’¢¤„ÆÌfLY«X'~„?S‘Wœ½3A)›» L^B‹5"ž˜EMo Vµ=«ß« esßc7MlœTò8L}˜§Húì sÀšÙ]ôš}k‘õµúÞ’×Ý™v@ß6ªò\Ö4»c© ‹Kk­æsâr—á’|}+”ßÊ"gy–߯ҡ-ª° Ö`„Ÿì2Ídþ»ôÆLïëßü½¨á/XUîãhˆ;%Éeò¿#öÚL‡¸c¯•×:K¶»èc]hº_g|.¡ LÐ!ûà…å%ﬠøom¥/Ű_ÑõWåkQl\‰¤ÓÉÑxYÜÆÞ·_;ojŒü…ãƒ$§+c˜“ ÈW&î!³?}x¼5,ož!ÿ«¿ÊÌÍíÿeY ·\òGÍ‘AyâiE^ÝêY–œîžŽ×óV–Þ6‹$^äˆÕóªCdFÒ½*Æ#øh<}pwx@Í‹«ßÐõÜYjÜɘ.BãÖœä WP×·|žÉ»h˜ïå´lÖÛƒÐñš¾T¼'’ ¶[[ÎYjòì:ÞÁZ•) ‰0Ú”Úz”¥«o®¾{ÖeôÚŽ lœñûí™ã ¢nÚ)¢"&~Dfåõ\šyÕSdçÿ/Y%m_é8ë¬JĽ™-¶¦Ðú]êEOÙÍüþÀø¨|ò±†C‹«bÃB—I”xã“ ãÝ,®Ãø­u· ^¿$rÞ­‡ç9Jy­g/é—-NÑÐÅîÚ à9##ÝÂ3µòá¬g'•ê`ö r•r8úìä$™ëÎôèNÿìÀ£žØØnÌëOòÓëîñ _ÈN#7a5£ø‰ž/йüº¡;<‘œý?l6§±lݺí‚̲ƒzþ‚Þýýý©‚]×õ³^˜ë¨,:ɯ³èÏ Œ²EZõø¾ÿÇôob5øÿ*Ÿgû?èüý¿O¿¯®žÙ¶M¦çæ>ÁœØï¿—w³Ùkù{åãåþ'!bÄß«À<¿_¿ï¿êDPÃøCP‡ü1F1ÿ´›ÿáf9cUUe—Ñò8ì‘ÚÏ󜢿œ¼–KÄÖü"ËR×;¢¼kò6jjG§ˆ\ð¾8ýT®/?Îk¾Â&ÁŠÛöH û_ ¿âòxºzŸ'ãnìšýb£ØñÓoz-@'𯀹nF¥×arùIØ_òþšxµ¬¾—w%1$*˜OHÆIÜ¥„ÙÞ­’»Ê"ÞQLÿo©‡õýžhìˆm–Õ—sE‚à|.@ÄïYÜÐ?•Ôòí¡Ëà­Ü”˜•Ä]FÞÙìjÜÓUE¹üDƒZ¹$„Ø$ˆÆ&Á½ÄYì»vƒwZ­_=ÈRÚôœŸ¦ÃîXV‘ñóZxJÏäùªr³^Ö6ŠõÀä·®f£¯q⌲8©2Ø èf®Ô¯hf'ˆÀ ²å%y:óaïÇ䌛ôÏ¿L3Fî=»¬QŒÛ˜”˜EN/:N²1&ë&á«+×ÓQT@œX1(™‹$ˆÛ5eùÜÔM ùèµ;ãóÀÚÚýoIk}æ_¯ñöû¶@vµm#oÙkFBX×õ¬Îf3• 9±Ô¬Æ$s»B"DÎR»FÌæý(òÛ«øÏf¼$þÙ¥š8ÝÙ›·~Œ™ý7¿ù{û(ë^´¨ÜSW¸X¶­¡Î‰L!¬(ë†kr1D‘_ðb4Â{­5Êh.šË–\È@ç®8\´ÖQ$”É߆wJ¤ž—OÔŸá+WÛyHÀåªÀ&qü“ë73ãµvRFaàæ³+³”p ˜ÑüƱ3¼Mb}3ÁVÌ OÓ?M0Åð}ÝäaoÝûvUŒQ½#Z¾(ùå?.ˣГ{t“Ð7¡M@ª³Ž×=”…*é[Ë®Ù-C1~'­ôl`訕ªŸ^ÜØ Ò§©í-¯4¼]µPÃËx\ž~ ±ôñ<‘Çú–ó±mõ뻌3ÖÞêm]ºàñÑ34h3n•ôÔÈìzÝx ³]€üñô$Œ¤§jÅhk¹{v*¥ –¤­!¿Þ7«ûÁ†s4ŸTÛ^…¾‡(É'óý1%‰ÐÙ7©av]ÁdW· ©*¶Í¿zcçE˜È=T&$î„9ê-,i×hËÌŠ<¸†‰î:gqԸѿ‰ä뙆í¬éÎêšN­²Ô¯(D°Oƒäèò×3³4¤ÍÐËá®9b²Ôq™8æ‚ õì\¶Æã%:Ç€ËXâžÌð‘7n2ùIIÁÉ›¸É¢(äæFFÎòTe”ö.Ñšzªé3E&—mPFz~¶aS|+µ;ÓA­u£šÈšüïH©ÒpŸ:Ú$®úSx›r«Bf<è|$oRÞÃ{vÚr"Ä "÷`·µTÕ2³˜´š”p9;´³ WúIͺ—!iûfòF´éÿÝq€§þÏÔîÿÑÙ}VòEæ_ˡ[²oºìk:óc nÐTÈ vá™Në„×[hþ›jAe;! &G[W:3ò5X .nŽ¥æ ¶t=_Sãì„àÒ¾62zN‘°ÄQƒÏjOb?(™røê„ýÉOÓöÍjií ?Nނ̲ƒzwû tþþþן` q6*ÎõTV ^€öCO 0¸Ü&&Ú‹¥-”(PIjè4Ehƒ® å¬VñÒv[‚¾ÃUE~'7=—q³‰«±ì™‹%9EÖg²Ör÷L¸YÜíå.ÏdEáÇtEúcñ&c•ÙüGí÷öCju°’r%K ©‹‡%"Š€Ç%7_´F᥎:¶%“!¶@íÕMlä¤%^ƒ$Û³ðµCañœ$ac}fžGß$Ìnl¬eÇd ³2ÍýVóÙÛ‹ ‹IþÚ‰C®ŽÐ^{QOȉ;O[OŒö±ƒ×ò«–±yZ³fŽG9P»JàÙúš(Ú£(ÉVÅ` ÒW³Za$Œ&ŽA.ºùÁø¼ÚßuçÍúÌ„sÖÆÙ«­Ç©mÚ_FÙH§<„PÚ"<Ñe$’Dp¼¯\ø܋%ÜNÑóB:^¬EtQMèsûþ-ŠÍ¸dUß{¥%R2ÓVÀŒ½%Úu5‰ áñ˜.Œ¸ž×¨»ô“fuU“ãÛ¦Æh¼…fWø÷ªÔž¦›µY”Á›øó‹€Ç[ÊËÙ±îZÎ4±÷§heÚ5߬·™ÝGËô[ü;š‚ÞëyX›ÿuß¹£oýÞcóí¡›Äc¬¬EweAmˆÀ³òHž>I¡"hÌkwoSð;GdLÎõ•1®ÛäQIs\’:è‘ omî#®2zÏfÕ¶ ;-.fÅØÄ䢎+ß°[¥d~Jy»®f3l&GñˆãiÙf"“ô¿NçúYœ½*Ú«_Ôö`…úï©fŽ?_~ÿY®½¨2syùÚÜ‹»AކXW¼Uÿ¦ñ:#@\˜;Ùœg&²Z¬  ú¬„5 ¤ƒzo’q:lê6â3{ ÎíÎi7­›_ãîMÒòôö ùÝk3æ³3Ošä'_Ø(CñËRäW5[ñ\Ð]„ç¡gZõ¦ÊU–ÍIiZ¨vAD–Ý+1”OÖã>›¨éÙ–#~Ø…Æf‹àgf&?”| „˜„¼]hÓä Ã×o •ŽK])IJ¡Ð· ý©¢ShÙuGZúµnŸï¹@’Æ]oGY׈\Ãägž!FîŒÝæyº5&7FäO÷óÍÌmÛÜêè¼Ò‚Þ+µýŠMnø¬¬Œ¸àä:_¬è;%˜f³Z:´¶ ãùú†2¶7‘÷á ñåɄлˆÔ°›6¡«µä|³a`6,~ÇsY zßÇ‘ÆÜºö05óؼ=‹ôO%³«>P¾ mYúÚÛ‚ó uvÄ(ÊÒ#JO¼ß¨™šU&ñµgÞ³VRÆø¹O½š…„Ñ òëBÉvüêä¨F<]³¢¡ÂûP¤m1j|;Åðž“wÍ9Ì–K4-Ažµ¬q^OpoØšX2[NO°R„e—¨Seaž`äþLÛ¹›|Ø93emjžkjž»Ñ`iZlO•ɯª®“ø(ÂèÍg§ëhêÝýÿvÔi9¦´q´˜ÿÓþÞ¶=¨ºúãþ?±÷ÿ«+ÿx:­<°ºMTUO®TMDúë…8ëž¹ë|ï[Í5$rC$ÍÅ,FqË€A$r8œr38˜1 3³³;;+ƒ;;3³³³·lííŸììÿ»:ûgEÊae<ºéª±a‡³íºÊ¸ ÔT 4'“جAbÐGZÚËŒ”…Õ»µÑK[ÖÔQ.{ão_wZúæW®è{ÎÞË©é›^ÑO&»®æ3a ’wá§§dc3éüÜHº~™Õ ­V®ìÓØ‚víši£Ý›îìÆCÛ7õU:×°h;“mÒ?W»…ŸëIV×7Ÿé[iÕÁ´£VA~™ÛlíÀV¥æ0—5yÉ<"$w¬“@ nÌ •ÄMɧk\£ýN3`n<­©æYÏiÑy'|Ó*V³$mvÞ¦ÛoX<ý@y ÄçõÌ]-¶If¶6ÓA=ú³ÛìMNÏGÕ¼ñú‚Õ:¶…Ýûñþ­,Dý<‘Let$cÛ68×ëÏEÅ—ˆÀíÿ. ›Ì^ºŽB­Ìú \P“ã{(`™Guv‡I} !§¬ Z„&«-O%NcªÊé¢/œ>ŒêÖÕt¹Â¼c—5±i<¹sƒ ÙLö¥¯ë›ÑȺä³ß–<æ/1›¾·‡ˆ/îX©q0ÓŒî{ ¯ãå§nå1ÈÝã†ÍŠYMÂ)åš(*Lý³E%í4·yÜüb’Sb²!ë×âø!G?7U$·:í§†+;ÐEž>ûzߤ^fE¡e ëjóÎã|"‚?ƒ}.¡°.®y8SÆ59Kq²`þ7!©ñ´¤y;f|cc9ZK 17‹“e¨È'ŒcÇ4î²&ýùR®-þï„÷›¯øüè°û÷þCôÝ~ý·ûe=‹ÚVÝ®)š:ˆº´AšiúÉ…M¨¯]ýÌî,u™¶›ãO­ ’‚ÚŠ™Â|óÞÌéªÛ«ýáê´&0; Ö($)ÝØ.îÛfDXA‡«Õr\†KÈ™ä1›OÅ húãé'&ê\…¢íˆbÐß¿ÒáØ¾Þ¬;ÿªä¯äšÑn—Æ$–€Ét_h³]V³xÆGèï»Eô4RßœM£Ct·~.¶;J{Ò$?j(¤Ÿ£ænD¨8\¶/R”Ú’ö‡¨é¼••«ôð´¹'€ÊÊÑ“y³Ip™ä#»9 ‹—ÇT'g’3›¾†Ôö-y}úŽÌ²ƒwöÿ/Û¦oLÊ\„VÕÕfÜ£=o…Wí*þÊ׋1E”ý})Èÿ&¿ÁʪòÜ–ÿ”S\}ºï¯®ŸÚv}®ÐÝÚ6<öÉp<ü-çòù Å¡ù\^Oe‘Àú6óp.ü[©A ã1B>¿LQ„cë¾½3zíúþº¬z9,—‹B¸uR]â 0|ØŒìé;6Ì€HŽâ77G3 iBè¥ú]Ùeqm’qÜÚää{N¯Èsâ±E©mÖÜô¥–wÖnÝ:v°—,œEg5¤g½éuüÍ mbÍzW°ùvм{6`«Vµh¨ÍQŒÚxOéí33|Â,C(³; vcìZÄMÛô.C$}»Ã,DNOÀ¯ïS–Q]q´jÛŒÁŠ^>2g*é\[‚6Êîo4äÐåí`‘ÒÅ>W¯Â2Ù‘Q!ÉÂ6tCmGÉ'À{¦‡•=»G‚XcÉLu¦ѦOnGŽ­ß¶€O#„8ý—5ýS1,‘U­•¯›k¸,Xm»ÈÕ­ÁeÙÜ·(,0ÿ˜ëJìÞ]7³„Ø'™È£xüe;šÁML"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹N^±øãõeÕh¯r×4ƒ¤Ž˜® 6‡‹Z=6n³„™ÚI=°`ï·õtNkbðSvJüÑB@LV.ÕYø¦oȈ¤Iw‚ý|ù‡º‹Õ¾ÎÉ¿až‚ú+ÏÞŸ¨|å¢L¥&5I±GÊëŽ*¢¬{R=8ä湈òÅ_‚a ŸºCÔnjèŸ"Ï|¹â»&¯¾lŸXúsуzwÒSêºE´HãUt-eYÓpé,†i¨Œ ³B}h¹ ã/˜H{‘Ï$Ò)ü„ç³™ãâ¶ÂÐÒ‹nȶ„Züñ I/<ùAtÓY½÷.IdUã•U%<ÃåžMTû×\(šœo|÷ÇZß=s½óÖ·­ïYØ ã0’3(䌄ÀÀœL ]ˆL]ˆHI™Ä™ÙÙّٻgôìÿgoèêIÝK<óúê;ù°Q¤ŸD”{ÿ—ÝœklDwµˆ'β§CGh«Íûû\Žj¹þçÞÊä@XN¥¶KìËs¶ç®òDcK”æ—µ´PÖÇrÕ*Ò[µaâŽ(¹;R ní°xŒq>ߌÿ¾Ô!yìdkï;VÝôóS*,Çnç@‰„[¿nô¤'aþïôçþŸ¦«Ù™Mµm½¸YNv‡o%±¸ôÇ.ŠHZ\c˜$1Ñ-hÜâø8OÑ—H®""âc<²šÛ"a)Ö:ìÔìn·iYý&ýzYÊõÞõ[!…Ìc.UËkû,¤’Ê`3˜ùgÇe¨¼ñMZc«9ËFü±™©äé\§ªöb².Q»ö%á$f%±3;„±1Æ];17D.&@BOËÛuM\ËÙ¶u{]"oIðÓ¹¤n"‘}¬§H£ÈÊH›ø_¥Uã´“å-÷¾Ôã®9ÖúçzÕ{LÜ6ã–=SSÙvsŒ§ {”Í"Æe(ãjÙxØ„ÍÍ…„I‰úgg\Ëb¼<óà ?Ùå”#ï·éºó!ï·õë÷Q^½mL8p¢°Â,KL}(j»T4ÅÁhÄÜ }ð°Ø0˜;Íwµ;SŽ“Areƒ·_MðWÙ½u™ƒðÆõX€3±k:„®5ä–žë½i:Žf´XJ9§Ö³Û›Å„˜¤Ž,4³ƒvÏ“x¨ÿ˜Ö~Þ'šÃ~¦b­V͈ÉÇîÍ4Q=ÿGyŸúô¿JÜׯ¥òu¢‰tŠƒºYsº>L5‚Ù\’â¤ZɳgÍë~^‘¦õkŽÏA}‘ûh ø5¥¸ H¦Ržg™5Ž1–¦©¯oùü¹N´/aËêÚ¦¹d<çk!´ i#hþ %ùÁõVI›ãÇØg~º)å«3;wÙ|sÏ(¿}3‹ÃäÏßlÝ{é$QßRÙìoQi[” ñ‡æ3ÙžãÒ&ËÕ r!Ü8TR[ž™œóy fÞÒ=´´\¸/…UMí/õ©;“â-K!C/‡ÈsÁ–Çd+^¡“Æ[Öxƒ!Œ’±±Z¡z¬œ³f<„‹kPÉP¡! Gõþ–êa~q(ä |Q˜8˜Í|O¾ÙÄ„š€¸;}ÅØ»ößeZJ ½UF Ö¨». -¿•5!©ë Æ?e@Ûé5ÐZ´±l›Æ6ð’œ\›ke‚×®Ò¯¥RîÆdªÏÚ°ò7r ·ÏhZO!Z!|fã¶äv¼–«°Û‘Š9jÇkWWÖs¶ˆÄ ÙàÓ§Õ,[ñ=—†¯íõ ½;õz»jÍAïμO·¶ø`ži¢Þ°Ó°ú†I:å?@èŸ1Û±V¹HNó[Ú&Zƒ¤¨öÙtÚq‚£ªè3…’VV4ÝÚ"Ï&msadñ·([IÍo˜ØîÊ H,Zãbä>XÒó1ÒÀñîf”‚MGBÐõ ´T2`ó×—µêø y«¸«U& q9J¹ëµîQ8-Ò¿b#œæCR˜ÆF)mÆýzžÕ«¹‡§c‚iJ1I¤ˆ\K±!ggeaàõ5WYr_µi_×¼8(²§ñ†Ç"|š© ò¹ —Ë h%E×ç•–ímwÒªóÊï®õ­ëYì–ß¶<%´í[&ÊU„¹l̦eë„@ñƾFÕ—ˆcÜcñ`qawe2*õàïà‚|»wø¢ûw~ÝßÀ[¾ßÛ÷û©1µY0‹ ŸW»F0l:} I5`Ëè2öºæØRG³¾²º°®Ñù# ã;Gd¬G7?ǞݕÈ!)+æ¹²çu,´½s%>/%\'…§…£’;-Âu¯cïÔ°SÉbò5d–žO¯k“¥4ô¯Õ±Via:SCàñÌ `îÏÓöÎÄ/ؘ“;1ƒ‰3“3µtæIiù¥>°‰]t )pÖ¸ ñsխȦ¦ùÕÁgµm(ƒ)r?vÄ1¹³Hj·«bÁŸÆn™\ªl÷Åê¨e6³7Cä[&G.-ˆ¨è»m“ g}'%va G5dŒ¤;;hð7' !¬lém`ô`‡çb‹u3ª‚Þ¬0¹Y€[¿üH wb1û}DCò‹tóDl2ÙV¥õ’NÊÓ$<5Hc¯ÍÁ¼1¿1¸ìÊôÒâ:e·º4º±¸·*©¡®°Å¢k ¯i÷Ï[Ô }üMû˜¼­˜Ìž:Ôô²ì…i©_£v¬¥ š—*YìUµ^`8§¯Ä»-RÒ… ç/þå÷êåyªºî¥,ž.Uw}çGÒòpÆðÅ`¤› ³ì8¬ØüpOœA;F0„'`†ùWíã)§fõåZµ›ïÛ·M$0œ~Ý™üúýÝØ}¯Þ®{móI%òµžE/®C|´f5}è-§Öôq©°Ï,k1³îSiñÀU©¸óÆ—PGé4+«èºf=Ì󜿩ÈÑDï= Gºì¹†±äÍôðG]ÕõK}“•ˆ6âªåñŒsHÅ!Äú«×Å»EbZÐÇ×üNÁ,Ó¿÷^/»õög‹-:{Ñž‚i º\)§âŠ=BfómÛÂy ˜ë…„I—µä·ˆY|‚·c¸ìǵ.å‚éxt ¬»QݸîOk ?'o5²b3ØL•}/@×s¸? š\^ r.e£…ìÉU¬GR\mÈêæq–)å¨Ôž*Ö»pXejUœ;(¥³jh¥û1Å(¾8¢EÓ“¹FlQ‘3ÅN(ú¡+–ÿVú¾Ñæ¶'b¶·z¦Pµõv>Œ@VôÁ½Y^käÆžxXå7ØVdrmª¡ÈŸÙ]實,ØÌ9Ç0«'î°½žáÝIö˜škVx×rعdÙ¤x$šÉXãÛôvÝ{»Ò ãÔú¦SücV/Š:5·8 Êç+G&¹YúÈd,|ÐÊñS†òfbUå–±y{iÂ_§wíÈ«»„ežúäo:ÔR{ËÑgب-¥¸‡ëBÜ·îVyK§æIVÆŠ²o¸-ÖO!förŒ;–XKTU>sò_6s?f† æÅ»muky>+o1œØÎ¥XY€%™¬Oj[G_$æ-f5ã¯8?êÇðûøMü/þøúžÍ³dô\fÛ$5jí<ϾXÀà$·–¸$rbµË™¹£¯­blMç<.2ÈÝÉÅZ©åìe¯W ÖUö¯È7ŵ…—§·èÔ¤%òZ°{N0a­­p6—ò O§ô[Z¤|3·ê,äЪX¿ó!™åÈ”KÖŒÊïüa­qªåðm`üž–RÊøÜ¬põòE5iÚ8¬° ¾$N6jüÎPÍ„ƶó¡~?z†k^<çrŒ˜ˆ öb×2Û®ƒo&Ò}ìvk%Ûøg±=³,€K…Î~\Ñd±¹JPË]ýËx/Þt÷¾éÁ¬šán˜¥¬š®Õ« @‰%q* n”تªŸiò&ñÒ• ™Œ ¡ÈÛP]"Ác“µIbÌÞÑ7¼Fû‡–9Þ p|qe1r›œu¢ü]Ù‡ç©3±•;‚#c,Åf¬—ÅwáK‘ œ>—¹ÆÙ](ö¯h{Ý ÒÃ…Üð0ÌÀÓǔϋÏã†ZðlšÜö'³†¹,RWµ”ÁßÂgrÓÕŸHÇlW™ˆoõ±€!ÖÔ1QÄ–2€Rü\uØs-Žqs)$Èw€Í›bÄš˜Ï¡€Û+ja‘4o K~Éëna,Ô£²é¹kXÎi™Ð–l5û1FPÓ§$C×ö°™GKcÀ[Çå‥ÇÏfÖæGwÊ³Õ œd(lFÎÑX‹¦Yß·gg a'fr†Q8ÝÙ˜d1Â"·lš#%f«ýÊÙ—?¹òÇ´c‰›ª^àpSzá½± ÷Š6µ²Ýyú-ÅE6<’œVÙ#V“;Pvwç›þ_AÅf±W¶Þ/¿o7†ÇT,†Ç©e Þ´šÀÎVmݯZ8`ÚµZoú uÀÖŠÁñKµ`´ùnã«\¥©#`º†^Îý-—òˆ¹;¼—ßé¥'w~Ú l0›žÍL§¯'VSïä‚/‘IZÙ¢rG·Rù‘•#hh¸c@0¡ú짦þK‰ ªrc èrQ&+ÉNßjõç þ•¾ro$-3MÛöðÅÙž[‘ëZÎÉž FiV9Ç^ËÆÃl¤'8Â&g›ËÈØØŸôøLÉê-ø/Ëgö=‹Z×r;NC.SaÒ±—²³d®íyÚ°~c9É&·&:/¦ÉMzR†¬1¼?Œ}6Ã=3@±Dc‘jéêel³E"ŒŒ­oTCo\Q#ƒfl±¹!&õ¼:c åCžEä¹nøÞ¹QEŒÚ(WÜ­Á»ö"µ:9ª8-8ë^–ù¹éº.b¯DrK®í›+bᕃ,ƒØƒ1Êqþö¨vLþwa˜¦žÖw/“ÍY*ðMpÆRì÷¦o¨«T+<³“yBì†8ÇôŽM«žß|OIÃü§fŠºÆ¢ˆŽÖ¬Úœ€ÅUoí-ö³™E§¶…ˆßÊ*o”9ÊÉ'{å^ö:HiH®ú.“',ß0ê“FHsSÓð¾Ç— "~!R&Ë뺖³eÌ{‘ìAµ•agiNG"³ýU“ëâÇÎÎäÌÅbZÐÇãû“ürÏ3uöñx<Ÿß¦n»„%”Ÿªf¤-X#… å«1-5jI!8؇e·ÛZ†UbVÔ<øç›[ZE6ööyPäîÉŠ€‰Deì-†¹³9çØm÷ˆ0šôš~Å[‘¹wT/­ü«•«­ñý&ÕÉBCÍi¹ºùNR·Fì’›7°òÄÚ®bÁÅ.k ‘·KÕ"ÉW!$­b©BÓò×Ë ;4v"p¤$,Ý0ÈÏóÆÌí€.@]m|ínÌ¥#Ö^‡ô=ƒJÞ'ðôJ…k§£µmŽÊ¬âíFÎ&Õ¼îÀœ13‡ö–áÈ“HÍŸ`‹Ã£Ö[Œ­–ž—ƒÄIµñŸë[ç×zɶmY=ß'·j÷ì“GV— ëø§]Öõü…Ùû†³Í‚ÊêY»<ös,õ®CW¬%fY ·f«iüÝ €+G^podU%– f”½—Œ±Ï;<ÑGعO½ù‘rÒ|Í[gVºD~ i¹®v݉²ô§f_XSy x‘%+×}• bŒ¢{à>Lr<Ó¿Ur| ­{N‘ÎRŠæ¤éz^f¼r ÁÉ­`1»1Å3 ?Q˜žQ/)ÊR³$³Ï˪—_(Ëaºfq³fňÝÛ÷xf”áíÿ~£fýºé™šR‚SÕ%]û?Û*¶¹®¿w•83úˆþß -É rOôûcçåR8áu9Wï×kqʽk}󮵈l;¾ç·|_Å{vϳü/ñ+šø\â‹ó+v~7È£'è]ÙHеx;ø+Ã}÷ñE}öý¿~=öþß¿»ûR6c ²ac•R28œ•ÚÏó‹»T6døèCìò´’è+q8—z0é{`®ÄÖ¶Š¿µ® ðж,JÓ ±•©·lb7ìfgOSå W3˜<}8±ÚîÕ‹†¤›ÞZ#g‚¾6͹©ÅµkUCÌCIØr0Q¬ kB{WîZƒ%SŒÊzD1Hdç4äÕ¬»··6'‚b~ìÂDý|ÑØaή»ãÖ)î÷F×:òÞ€“„Æ ˜ô òæ@U[R‘³ª"ä4ΫóÌëõYìXY¯1Cä–l—4È#LÖ-»AÉëëfêZ©³iYK'[»`Úip·ìo1âïÑÇw^Ù+@ß5íc;^Žb ïF öð·1¹[Õ+Ú â!(l€ùIZ^šAnúóÆX]ý Ñ9FïØ;Œ‚`3N`ŠRÁfÖgZ¢!5‹€zÜ óit~*‰¤+¾ôš*úଦÒS\$]÷ÞÓï\󿳯¦CÔv½¨æ‹WÖ6’JÀRX…ÉfÇÇÊIƒZÁDæFl"ÞCÛ·“wJ[AÓÍ4P³úg–@·þæMßý(w³<þ“k«Ã’Ub34±ÄHjš²Ò´!ªpš»$S°`°×Úù5L#_ˆNË”Š/|iBÔ% $´sWámþ©Àêx :I¦Š®õºiºVV¸´‡5ŒÍžÆl# “Ï*Iœ!ÎÌ‘Bq¿1ªLïKa™üª×±dú3K Gnÿnäf¿}3»QËæ¯ÉÒwIæ$|¼ÄºT£…õæçgÒÛ{ç´¸r.¹§­{¦÷ ¼‚þÐxßt²ëv§çû‡×ãã•Á¢i”ecÌs.š# M_WÂoûZ9~AoޝÖjzî¹hÀ;—åi îì¹9ügµ`›ùxû¿Ùç’¬@í×ܼg–anýtðy~ýu×zè/äÓõl¿±|MàÏYJ©Ã: “áïzžÂóè èÅ&Òª.A|Âü"ý X&äÌ ¾±‰…%«¦²Fþy†³CÞ$n’‡ý¶{áÿtúZ|å-—aóšyN .¹£fʪ0âêïÐVÊò™î4â´Þvö˜±ï¼Ñ G I·×¥‰ÃV€Õòµ¼ŠÒ†™Þ‹É5˜Ø¼»2ªï&®N>†/¦#÷ÔrHûeò5ß÷ÅnM£Vû‚ÀtäWBYìz¦ ]Ô´ü²›“p©íΕm©\Ø0‹Bç¬æ,m® +Ë…€™*¶*í}y`T's0ݽðüwr1á­Bå u~§^Û³{VãºÒÚ+A;ÄYÜ&o[Ø5-39Qæ­n¨ë=cn…œNcG+RÝÒ+ü–ĉò6„º–¼pW¬P;·±Möb.¿P—ÍÙŒ‘™ •¨ÿ)ôùÈ¢<»V]–7 a –¥ÝrØñ‡ÄGh¤aÐIlíÒÚŸo]õ±Ð‹”Q^ÓŽ”ë{Äÿ¾=Ú¼’I…}WU”£š­éú«å«W˜þC‚¾Ã†×ªlb=°³K&^K Sõ_òúÎÌÒ|ó³;;‹Vg&n™Þ)%(èѰöïëÚ’`Í?ThžjÚ¦¶­y7ž¸3˜/Ñ|wÚJwÉ:޵·i~{Q{ë•~ýuÚ)u½o¤øÞ±]yÝ·‰öíÇiÚ^bö=ƒ-œxHDÄJ'ÉÛµñ¸Œ’ 8tì&lÞ‰ÙëÃZµ~þž¼w÷øbŽ.ûë¾ü{û7ÿ£)'1e]tòì~\Ä3Iã2âÙßã²Àž˜ŸOG±kwhr@–÷&ãGQAËÑ×”{í%’çs±™<–!K/‡È^Äåq¶¡»ŽÉã-Ø¡¡r´ƒ-{t®Õ’+5mA(ŒØ‚XåŠAfuÔÀ$Ž@#1q01bnœHIˆ]½;;;;}Õ]íŠÙó‡} âOyУ%¾‰­K7§Ë¾«ïjYIŒà»‚ó*W7E,Æ€ùqâ¿™M¹FO#¶Û!¦ò‹49âÄñ÷"ÌlÑm0ÀØýo˜™˜cÚñt (4œí‚þPí*ƒª]ê¾ÉƒÀ9æ÷i xX¥î/’ÝFop;ùÚ®ßÖ'g³÷“Î-åðË/QÖk _ذ«N0Æ E5Bý‘Ó(Cœ‚Sh9±?³9ÔjLÈ_*7È"òæ¹}ÑÞÛqq“Ö›&±žÔ2Óá6VVó5´DKí×/Õ?pÜ‘…ÔUUA4&UŒUëóª’šM~ß“IqÑJ˜œvG9™ð· Õp Ý£9öïKyÝ´-€’˜=³aÃæÛã lqJæíFsÆñÿ1¨]¼E-†o÷«V³d·éº–¤ßõóë¯nìÞÖ=–È®˜²ðÒ¼_dKcd&@fÛR:~»Œ KY?²Ë&å@¬YUÅ ~ls@GxËË}fÆ4à0ïÝ4<}^õÜ63DËÇœ‡u|6SG4n/vÙ²ÓEn/Šþ)ÆÆ±‡Ò3Øëu$š–Z­®|V´²ãìµÚV, SšCµÄøÉä~ÙìhcgìO¶šK1“1FCHÌcâL+€Ë}SA o…Š3X ½ ›$Ú´šÉ®K‚®kçô¦­Kª*·[^ }òÜær²ÙÛFo6Æaœô¤ÆÖn½ìx^ äi+¿f/k{äÍ!_ÀíXN¤m¶Üºàé¡ÜvúzvnÀ‹ÙŸ_Ïæªê—mKf c#¯°á4ûT¡’ý6¬ŒfªÝx˧fÍqýþ¡ž½r±}šX£yÄYž`—ù–îG$±É‹ Dª"þË*ŒHÕ†Iuñ…í¬Äô¨ŽM ‹”ÞäIuÊ£ º}k´”ëëy ò˜¬ž#wšÇ_Äe±¶e§‘Åå)ØÇäh[€œ&«v•¸á³VÌ&ÎÁ¡†Ž|Ž[XÛv,†cqãú¯;œ–s˜™mË[-Ši<_z×*¶ÎJÒìttüžR–èÖø*Ê1MVµ;;sÁG^ÙuÓ4R0³Ç+³áf/“¦v„ìŠò矕Õ0‰„L"®“ªµ%Î6õ/ Bª¹\P )# |¹×öè­hp+kEÓ vþ¤Ê7ŸG'l®LTE‡ol”íò!ÙÚ÷"ájé[Þ6MÃF«$狪öަɥÍnBšÕÝ;$v[6§"±”ׯÕÈ깩K6ñæÇžÆBš£ü…f©µ{$ÌÆ^>PÙafaQ3·Ÿ‹3L$ÆÝÈñùÄ}_¬«ØÒ¥Æ}ãóEŒÐ)fšÉfÍYá’¦–Ý¥ÁóšÈzU‰‚Å…¡Òã*zˆ¦Ñ3‡¤àΕ ƒ8<µmÆß ì¹P‡+Ær¼«¬]š ¿©àr7s˜{¶˜Ê¾rÕèC#¬gdhåá!ÝÁfεãÕsûj7,AÐrƒ¼wJ:3 ;¸O( Rýå¯9xÑ7§~˜eœ~x¢r~ç¯[Päªy<’ÎMxè‡*N­¶/f¿ +8§Á2:n:`nÆC½p‚Î\-Ñ} ß®6y# ¬&ážDŠ “-‰Åêe#“EW}ÛôÞ=ÈËã`+E‹Þv {%( ² ”T¡i,¹}®cgxqö‹íâR½zàýýüšIþ ›ïÝw³3?¾¾û'×ÒQE6o8T£pBÝ,輊ÌôE¤{ØÉê:ŒkÍH6™Úÿ‹‚zÔ±ätü£û}sÇ=Óh¸SHW¹Gs”££¨ÍS¡†ZR|™åyRKpŒ~eþMFIÅág'{È›³xҮݿdç=Çvë×èøè°¿æ3}»ýÿTW³Æº*cë ‹Qê&7 7Òõ];‰k¤ÉIrºAº×Šz`í¤–Á×Ö~ªƒ I] ¦ý#í&éÇ”z‡ Ø;•„¥!³½íû¾4ìQq4–´ìÏaá3úZà ³EÈ/_ç¯c†­l½É”_×é­^´QýÙß¡±É=õ×ûgéÿ~«D«ãí–%ÿµ4ä‚k*7³¤vmÜ6g4=êé*råÒRøýŒ»‡ €Ù®êhžEš²Wî±Wqt^eZJ\\¸}jژĕüÏý‘¼cp8x¾6†·È:^‘ª?"qíLEW©ˆÇã³YjSgv-RüE6þÉO7ujGƒÚ±ª–>ä0áó+²?fSU³f¤¶R”†qÆMS—¶iFû'– ¼Æ|óŠ>màÉ }[H¨+=‰0ø±++x-ycÆt®ˆ¸—t!Ȭ×$¡L98ˆ¾Ê R†-(ì•ÇB˜úë”$å"ƒgo߳ܩdJrÖ6ÇÚv ›WË8¼V-EJLá…¼^V»Ë¹M5ÄlxÖÊbªüð“)5ͫՊ¤áÓMÁ 3Ç÷arh™Äã&g`–3’fv.Ÿ«cšm\˜EóU$—IDM5‘Y>ÒYxåD•INw‰¨Ÿzß &§ß=ñÖ·Ï\ï|õ­ë{Öv8Ì$ŒÊ9#!00'bbfq&vvvgggdvgggnÙý;?ÙÛú:©jU“ß>wߛۓ“Õ©®ªï~]1Á©˜&qTÒÊ®Wœ$ ·µ@Ò½%Ê5©Ø*dÞRX»…1ßo/»”výw’Eêr…’ÄíÅGC– ­rõ‹Ó ÆÃʺ1Ù¹±×ðcsÝ0ôìo09Ë6^¶ô#£·}<´ÿU&ù+öît„X[Û»Ò2qK¾¿ÃÈMYý4o[õÄ^KÂR§G«åÊ™³©ë[N·+ãÕâxŸz=¶äÜ»Q§F¹(O©.ÜÎp@3s Ê06ãï!¸8kì7á×mÒn¯«èù¬üùP¥¦©BÆÝÝNÍ›0VÌâ³ öëf¨Kb+Uk7ð©f xékÔ½VåX·w7~#ùñ±×Û97feŠ¥#ˆ¥ÇkÚž>+BXì.Í™›ójó_±,³ßÉL1Y½rÓŒ&9ÿ<ñw©k)u7p"ø†K,^i*úÁ¾zŒ¹ ÏiŒúŠ›…Øñ TpÕ8]­ÀÕÆ$=$2¨«¥Õ {ž{ðõºgð–±»†±O[ÇÞˆaä‹V㛲<¢ïZÞ.¾ù˜×íÏ0{žµšPNÌ"ò³”,}ãœKÍ;w oúÿ$q®~Æ/h×.ˆ&¥»”¯Vó­Ãf«ÒýðÙ8Eêd±óÈ!bvŠqŠXüNV–ùðùï=¸¡±cj5`c—ºØ{š’—ù[ <~ItiXÀÐé ‘9x¬É§ôŒ³Ùœ³ÆxÎ4Âpg!mœóÇ4c«,Ñepºî;‘öì¾G #»ÄÕ,â´h´,”Ó¸ ÀU÷·«^ì,RYˆÿL{¶Í€þÒ¯ÂYWÕ¸“fµ’ÉÔ­o ³ÜÊñ½_“æèƒÐ¸(%>æ¨ C'åÏkÖ7 /fÏéÛ>2®bÖ3s<å’–OjZvàó­ôõ§ž#øìUµ=[1xOZy –9_µ”yþÓµc—¡×:1"ø·˜EiIÓìp7¦e隟™/H»¹ŽçÆõÑšNJ<©¯¸4Äçí㛾#’5 Bþ?)¤ñœpe±“}]þÕ¾îÙ Šá6:öñ×ô —Ò©%Wgh<±S»‹õ9Lý‘cÒS±`L,ÝwŒÛÄ¢‚­`ˆ‡®ˆLmÒ&/»þ¶éþÝ*Ã!òÈžxnq~•ºß^­ó³[qn2˜|Û“ õdΛíÁͲá`5Ö7UtÔÞ?ï/vŠ iFéh“µ¬»« |ɳÛ!Þ"«‡pŽý”µv\£ëºžÂ@ç7ŽKc zÆÏÇ»¦æ°×Λ’#¤Ùʺd4²[5útð6ç»SN –p¯Ú‚Z5Ë—ŽÍ©B ðV©„9–SâªÇ2ðƒêŒã€t#ñÓ «nŸ’²&°Í<ߎŸ-*mMÍJíŸnÅZ6„»1Ø+¸‡†ÞâØ¨ý1¨Ý¤°ÈüìÍæù«3̹[˜vmêöO[µCäÀî[^{5Slãv„yKVë\«v8ñ÷©dª9ÒÉÒ*7©[³RZÓ—ß¾in<ã_Àn'#ǘªpź㶸ml8[޽'ÃbŸÔ¡šž”ñÏb ¹_*RK$µ­ß–ŒvBPg¹¸WÁ„Â&`¶-i¶#JD§ì(¿3lÐCß%¸´<1¾µ«û òX´•ŒÆÉ$FVÆWÐÆ\]Ù¢FÄo<˜Ðè\r¶²cjØ4ܨæủã¯}<ôçî·id1öÃ㻊Ëâ²ZÅæ°Ù¿‘‘ÃåéÝÅä w‚íIá'¥4XŽ`c؛٠‹ö2F`âqÈì$Œ„Áý‰3ûUõYµ¡æþºFÚYêÝ£GO[ðkiL»"¶žõÆø¼aѶáÒ’D›ÒûU"䀵&£8=(]•cba´ÏÙ!Ô¹EšM2:W JNÒhî:¾Ó3——æò–e<^fÉöèÛ¶aÕv,†C#ŽÔ+Cùg¥êÕšö´#Üð7ÿ‹ˆšHžö¡qosÂ`¬Ý£YÆbÀNd–,? u'&¹ƒÜº>ÓrnrDrœà;Ib®C–¢"Hê ¢œ,Ÿ]kjŽ×•ËÙ×ñzÆÃ’ÏSžz¶ð”0¹+™z¶ªœ‘Ú­g^´—`ž´ÍðËÉ Å È"@LÓÄÊsD1 ‡ d$ÌâânL.ÎÎÎÎÏÓ³·_uuì<“²:‹ÎO³† ómÁÎ’X÷»+^‡Kk/·wÚj#:fhÒ<ë®UÛ‘Âþ5ùènþÒ9é-fEÂÜ‘V1“7©§¹‹0rÉ«qÕËDâ'VŽ÷›×n[ëÍŠ´³ÅÔÝüNÆ£þcLŸ¨å+zw« öÅŸúVŽQéú½úûúTŽÉùŸòtº-nX¸î;ë†VIíæh”‘ÁtzÞËJ­+žAèq‰ ;\¡¤ 9óÀ݉ɋ":Ë5l|§w˜t òW3 Tp7}« .äßEo©Å¨äÍš1’ ¹¡ò&/—ãì—W9³X·gÉ-ÊIU}æ¯XØñ‚Vp+¤@©úüª¼P½p8ÚLÇ—F[åÍ¡»µøc8CŽœºè5øSòÉ.W“÷Ž…|­Ç‘›0;Ë/çsç¹*F“ùpk`SÊá#½Pw‘>™£¥_ïÙ³Ûv÷é¾6Š›w×·þw]únÛõúÄà³Åa5œz/Í>^z® ×i ü—SP“Ë(.¤Âð?r˜³=š Süu!²¾KòÞO¬ó½¡}e};‹p™ f^¤”¶,o&ì{.çK?_²*‘ä±Zí¾>×'|iÉ%Œe‰ð߯d>,ž.íðE8Ñ›5§±z@8ÉŠ§ 5Ê'õåá$Ãnfóé˜Å¥`0ì H]ÙVHÒ¿/uä7í°íÚ è4öÚbrÊ=e&…ؽ”î(-=Ÿú ‡Î´ÌÙÄQÐk­g:gó´™ó°Øìj‰Æ\”qlô¶¼†áæü!GLÖ3Õ«ÂW¸Â¦Çï»ã^•IÎO¶ùµrÚ7,a‹ÍvÖ5²ÏÈ‘ŠÕ]›ƒ±¶Çà ïñäŠÌѿҵkéÈ™Ä.WišæÏЉüI'^Š%jïu|»ñ›°køÅË6¾½Ù[J§ G÷ ­Á‡ùËÀ³8c&´=³»ãÊb¶°qÒá:2-Ý“®$ « ôÁ1xcwÈÏ=gù6ºÃKhÞw Ž0 t³».g-N1ŒÚH‚*·®Ï^0ˆÄJ Ä#!êíJ”5«ÂOÛ¹E q“»·NîB,îîÏÓ»¿¿Ý[6ïˆïބ܆y—ù‚)w<nœvõžÆõ«Ÿ.\‡°rìÿNL­²Öq@Mþ1Ye zåQÖInySXj¯VV537ôíW\Àë8ÿû?úÃY¿åÓÚCÿ鑯öпØK{Mö?ÚO{ã·ý0‹;Â-rúoã¾'hØ}úƒÍÓS<‹î6ÆÏã›}]²p3BHŽŸKÖK¨^ü®‹ä¾4<£HM#=³³ ™ÇvÛúÅgú ä5š–µü…*»N‹•·¼æ•™9,·dal¶&Ô.×uš â0ÔÙ0²Ö¾ÐåùÉà罈¹Å@˜šP"‚Ð ŒVcfówïÂAÓ4.þÊÿÖ°È=5 ï·¡m(û¾¾hòÏ«SZðáÞMuó_¬;KErxòí¨öoR Rèi@Ûñ!ÙøLI›!Jë™Ð(dñw6¾2»f×hW;»ô5ÃwÑ«‹¿É6HŠ,Æ·uox8[úéÿÐÓ²™L~JqÚ 1‚èŒ2™0C(»½k%û4F]UëD¤ñý¬A+Ø)½~‘æibgvŒØ]ÅúÊúWKß©} ÍâÛu.Ê—³=qÈ+Ë]½§|Нå¢E§lØè¼uÒïLÍÕüvi b÷a×±`ÜY{r•²çöì-Ü¸ÑøþÖ‰À0çõN2Ññ»6fé|ñ›kÝÅæ÷}S')3GBõ—)‚ËOó³³eæ­|jõ†($/¦»õCeÙûŠ{¶N ?©ÎŠ´àÍìÄa Aºyáœ\® &Ф+GBß+šnª€=×}œï ¯"1WC{US²Üš,ž”$Ð稜ï}¢Ÿ u½ñÇ<ëIç¹ ~ÚªCÚ7Ãd¡Y…«ÒÏl¹¬ÅHL¥†¶Bíˆba”ÎA`f2#nˆÞåJ°œ5«ÂO÷(¡Ž2]{pwõëÛý½)W0õ!0‰„U}þ’’À¤/–?›ã¯î$¿Nié)'…LZo«ÙNpØ©uŒôB‹¨åf˜]G~0¥\ìˆà39-k¾â¶,m _”ë^Ëc±µbÇkû¶**ÓïZ…(€b«IžÜôàÝ5Š1ŒaWSÏdiÉŽ‚©«lzµioEvÕ8Lç¤C™9ËZGv«`ÝÈ¿KÖ˜ÝÊx€˜Ýܧ†raqΪ«º5h,óUµêgD¿3Ššl€ÍÓhÆ–UDwI! 5ªW xUµ°¡®OЧþÐ, ^¶ðÖòÔÙnWRŽŽL-Pص<Ï“ëû–Im`rÎ2MHÎh`¹‡ÏRÊkYʸìö8d†ÅŠ FÝ–ëWµîAâPÏûZò³ ¡ï¦&fw"'oÑ4DqNÌ^BB36`ÊJa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L" ÿ¨?"ß÷ÿ+ÿÆ?,aÿÂ&c²ØŒZ{x‡Í£¬²Ø¤€N€{ŽH›xeu®øScžÜzKŠJ|ªšk'¥Rëi.’K'¾OŽù¹á³Y}w)K7€ÉßÃf1³5ŠLe©©_§;1É^ÕsŽh‰Àˆ ÀÙŽ38Ɉ …úIsE( ‘›x˜± 7ôqvvëÿ?uYâ×ó?P¦×ý/K(C~¶÷:ô]BÖšk®¢Í‹.K”ŸÑ†ä“M4X¶›Ÿ¡øMnZ‹¼œ[˜6¸ʤã9à8ߑ嬿ÐkÜcºÜ"Ž1 qÇ\OgíAާÙ"¹Ô§k#’‚ÿQGíòܨÎý·ê–íaöý‹»”—bø:+‚Ýø½²!ýD}g»U€Ye#AÝ–¼1ÕöÇ: ª’ p("»H¬=¡kBçƒ%£R!#»Fim¦b%Ë7Æk†¿ƒò2á·îFдìí9+¶C^·=‡1Zá>a&¥§çuÙMëœG\Oa‚< —ªRY‰C꤫RÕˆ‰‹ÂVúxc'gqë©ìE+7lý»Dî=;;yt/’íßײ@H'žêÔÈP%4øõcØ#)¾6z&ÀYëšqµsÐã}ðŽ‚¶U UuÎöN“ß×-mK…1¤rM°òVÜQü¾†¯­èõlJ,M^H6;»Fïj:Ò‰Ióé¡8ƒ»4^MÒïå’>™¡§_¿ò)æ²Lßï3Â0V&ýº°ìïûõí~ù«}úF‰—zøö‘üºD.›®aMËóÖõÊ;sæêOÒŽd(ŸwJtÚìÏ«þ59I$9ìez¾ÝÆØøž,/ÖÉ9ø<–9xÙóÖ£víäúGÐË‹*D&]0µªwˆ#ò3‘ÆPçéî÷%÷»èjÖ†!éåõ_ZOÿÊCÛþÌÞ—á?,AÍ× Ì§¾€°MÚè®RÒ/AÛŒÍ:@4ƒäW(%{,„V†€§ÙÙk€´+a’rÝ’º*tº±òö~pÁë¼o­@ÑÉ!Œã].õÚ¿$ç;ËWaÙpùýª #ä0Çd3ÍÝ–ˆÆH¬âsù«›¹§8üv1yMc7-ý{)†± 5{køË¹«°Àu!cã1î>-N¸;;8ÉcÀLý±„Ñ0J3ûiØÙû.ÝÖ;ÌöÇórzñr>Í¥DM]‰è¡’ÔÂ}kI¡èh„a¨vî™CK衜¬¸AþÑvt¹eaI.®êü¢O>V¶©½Ì@ÓqŒ× ð› æÏå'æò×%²×ç?Ól7,eçŸá‡SÏíòUõ¬_Ošz^­OU»êë |³~×cŒX|¾öâ›·ž(Dcµí®MÏ-À<3ž«K¨B¹5º6”ÍÎMÇ ™@ž¨¨Æ`ʤ@¥ªˆ‚‰¬Š§ß=oNZ«j«4®ÖžÚsÍVÝKPÉ^Õ[Uä(lV³^a `ž @âš@dŠA 1f¸ ““1 ³‰ ·lBíÛ;;;;;?NÞÙsr‚å0‰„P ù¨$L­RË.RXù XÞ —prF8,ÖµttŸÜZ/3}MVÔ…uD¿¨"2!Fð9k›EdŒ|,ÝÞÇã‡vÆ_¹†Õq6ü~t m‹A›Ø0;UJr?Àl<‚ÑËNK'ùnk6??‚³aî`rø¬Gha܆±ˆÉ<\âwøm4°7¿ŽSý,ÄÂÞq›RˆøËƒ8ª›ùª Cn{*b Þ™DŒ_þvi|¶«™™ÇXØf‘Ê© ⢲Ý’èD™\Ts‚ÈÈP>¢ÓÞÝufÜ™OÃ.á±Ö“9¢ê¹Íba{Óe¸ß“®côÍŸ>ˆäòSp“Y£ºjµ)›LWª…M‡ÎÙ|!ЧüCzÞšð“Efx¦oÒÁr•ˆ%s? B»LU§"n¼_Êwo XËá1Ï¡%o{_¸˜} +í7Ÿßkª‘¥uÆ[h¢™n; f‚1Û絑'ûrOi ÆÔ dÔTdHÕEƸzl\³Æ˜{Àóã±÷6}ÎìqÊ$¯ýWØuKWgÎ/âx„å/å! dŽwÖH}ü4.HÞú3k‹»?MØÙš)Ù‹îÏð¿M÷núgvïì ÐD(7žjáˆä%:||±lØU[[8r LÕå:Ö±"Ïчl*1D«¾vº(¥J .Æü’O°r^Ý,o8 ~±­hô¬8Uå‹b½³nöã†i_õ´úpMA߯rJá Ë$}3EN»?NäsMd›·ýLñ 5…Ý›íÕ‡gÝ™»ª•¢$*}e^Ÿþ—I1úI(ŠR QU¿oµ¸%ÁKÁÃÓ<®¦†ßö˜ 5#Þ¹é~SM^õ¾:ÙÆxÑëÄ¿›™HÇ!rù°gDá(«[Š^1yX§²w$vÈÀQàºoüËÿuÓ5J±Eï¾û'´÷»õë¦aoßÓ¯æüµuLÎç7µ’Q¦¤k‡rkÖÎedpü)pšA_×28%_ÓV»ç¢kN$Þ–)úO×å¹w?L¢m{_ãÍZõʽaÅqî§~ýo3";ì›F3aÛZã‹´Cp¶±Cá‘´“| ˆ»ù¥·;»ö_%¹Ä×Ùá€âƒÇ÷ñø¼]þíéºÄ_D$°é¢ÃKB¼ãùûç«{½g³|•¤fgŠlΟ¶l9«4þHà!®ÝkTÍT®_;Ø RE|~oœÁ¸iéž*£ËV(©Ù£±1±tîÎã(øøÏ;vC'êgw8äŠWi,„ÞŽí’¶ú›Ð,M•½šêFÂ…H[Œ]z’ìï„J+[¬$N[L¦ù-á®à÷OJÿ^pÍÀÎ¥F×°áŒêOŒ³g¸ú•¼=ËòöR¤>wjãÜô!s†.¶Üe_(láÌñÖ¡»aþ]~ñKN,¤zÎvðëTŠÙ ^à “õ‹»Ö´ý;ÿ‡2éÚ^™ÜëIÔ£Ñ8<ÑÌú„ÿ_÷ryî=訣b M¨’zGÚë·JæJb)s®ŠO{!^#2eGTP÷Çê $¢@ìJ©r¾ÿóö¡ùο_a«½Ü|vC¹%ÇX6fì›õ;V²BâxˆZ±);|mߨoì‹üD·röc‡s×eYåHÞe²ãN†å…­$„í³Cfð‘ÌÙòù屃ÄP„${Oãÿ‡‡ÖdÙTl«Ìr§–¦TREIN7Éd@ß]{Ü€=u¯»k¥”¹‚z¥ß+wÜáçc7qÂÿ›Yd°vµ«R1XÃ;ؤÎÝQžWú€ýüš½©BB"÷Ýæý³ ëû`¿ðé\£æü 3É }¤À™ëõâè‹b,;?ÄyŒUc‚xÄuylÊí=Â)}ç¢ÆÕ]=o">3ç lö®‘åÈØ²±ÀöºýÆ”–˜$]N´ºH²=¤ƒºËp²(*ª;OóqÏÕ?»XîÙbJºæZHšCªõòqní˜Uwòa'ga™É…ݺí¾Ý¶ãü?b*fù—ª_ •lìy› C18kõìg^)$†9åÇÇG$ 1üd]Oæ‡âB­‘¨ÿrzú'dCj3Ý\¬Ù˜wm+ZÉÆ6[Äa–!k4¸ÓÈlÛiJWoEŸf±Õ¹k3®Ÿch;ž"þ6¬¾×zvç¯åy#Mú¬´š¥dó…#©†‹ ^xhÒ]ëb$K‚JÖ¸.Köj%Aä’m£“vc‰Œ…-/XÔjÚ”eaØnnûu¨ªœM)Çóê dœ¢ù`ÚHÙç’>™ ¥}?‘YšÁ ;?lñ hÉŸ¦~§qôý;úušnÛùyµ¹[¸Ÿ™å•˜¤%È Î–÷ÉÞ\Cò+Öö¤‘é¹Ëå–R€‚kžÐ«¦&·2þ¨˜K`šU@Ðêûoc¼?$âFÊW„™dÖ~©´Ÿ«'l’?W°F SÊpY#KK:­¿ÓõüΗ¨·hÓ²r]I)þåÓ€$².T*RÅÔÙyó^ÿÒeä<,zG4n[ÆOÏh1{~31zÎk×üªgp^©‰Þõvgø[:ü=P©½±VÃcŸWÉÅüª’=œuzÁ'éó®q‹G/Ø¢•„ެþ»ó(¤''š"þpŤß¾\¿äñ‰ÍTT‘ëÐU?1Ðîï0ü›Í-lD¬H⯩¸v…¿ ô%‰l¿°¸~ØòêÛÆ‰“¯W»<éÇ‘³"c¨Ò¢Û´,Þ 4ïLtóZÎ\ç{sÀÉ5Ý_`ì0Q¿,¦«’­°I’׳q›.¬W5‡ÇË4`Sàµ!o(毖¼¬Ã<]ýœ…œ˜€‚XÈá“§øä6gu¾ Ò¥ip»l§j º§mQ?£}i_ÄàvÕ=þ.Ä‹4µ!ÒTQßÙÒ{çê’{ú}Sçé„©*QÂ&| S…$†ÀŒaL ¤S R…!>‘ bG[žÒ\uÒï´–E^:MTúëŽùëž·­Ô†i«ÍŠòÉðHA<&QM ÑrÅ 8œrFb&ÄÌBììθvgggfvvvvvíŸÓ³³úvvôìÿuK¢Ï¾Cm>aU»´Ÿ@7÷ûoþ}™I˜£ÁƒÒ}tª¾sŸÌžÙcpàÓá>¹‘ž;WõôH²—jn9¾E½ñÙ|5Z¯„Ûé]­ÈöGáÆòN ËK°NäÌÉúÞ…ü¦rr"g—~×iØÛ[¹æØ°ÛÝËUìã-‡ã™å®BTÙû:rÈ´MýiM)„q3~Õf&ƒìÐÉTEÄûhO¾<©f0€ýZYEÙú/Hrs O±­É„\Å”ü]6Í¡ÕtJa%…¹!½meÅ“66uË~´ïÆûgQÔ…Ÿü:s©‘³ŽÚµXu'Ì«äwWÒð™h<ÚÖ7¶æp˜¼íY ŽlM«lö{¤L7@ëh²øùÅŠ Þ~úì+Å5‰cwÿvX ŽC‰Ûîí ¯Õþ^fúL颔ƒy“Ñ3!éT†u5–¸ªÂ%^K(4Tí®í³+i²)ÐÛ1B9‡BMÊ G!,B㈵•¸×QვøË1°µ ¿´nÄ 3˜µÍTÚpN-/À1¾r8ÎÐIÎÇ$áSë »ø¨Ý‘›¶bp†»;öìÏãjx%fõß¿‹³ôîìË÷·¿Z¾ï”B®èZàEÉÞø|´gV{È@k޹ր1Ö5ÃBÎ=©¾Té ­ÅCI4ÿ&/ÙìN­C†qÌòXÙ¹hš8z,~7R×õ*3Ùíþ “!¶mB¨‹8±Ï¥„æGäðF1xÍÏžDúf†¤ ïþcžYɇýa!.ÿf°íӛ߯žêÿCÈ5¿êïQ­ï–IД´Çd)Þ´‰fóyéî–é·×ÑoIB4’½ëðð¨«öþ-ãMë†ãø¸™£i ›³˜l˜ÆæþdÇÇÁtÿÚ_ðôíþ¬1{ýþ©ïwÓ~ÌìÎý?õg§7ïÄ5ê÷7}=~{>ñ¯Ü]#/½ÒRoC¹Æ)¡_"  0 Cªö º(xûvbNšT²JY‹m-úÏÅóŽã¬äje4¬f‡¤ÛÇ¿–:Ö u Y\|žv婲옜þ×§™*K#爦¦Ã^g’7‘©ã+ÌNÕ‘?F2Û° mëÑC ‘@íÛ13|]1{nŸ®«f¨œüJË•“I©Æ¯\øµgºKÑÑ Š.ïî%1ôZªý·ZqhúrÏSÓÒWÓÊÖ¬]o$?-ŠMÂkñl÷+Éùnržc䯣¸É$tò»VF‡îsËDqKŠšØküc°Yð‚x ¥Æ×#’8,C SÇœœP¥4ÚHjGb¿¦rïÖf~ÙÚF–ìCÛ»³¹\gv{d~!»Š²Õ­¯ ö+lSó˜Å“ZÎ9x‰Í¡Îá¾Ç_[öºÂª¨. ªª=*ÃÜâ"›LÆÇ@ÍlqWÉ/:fðyk+sŸÆ]Ãåñò WqÙ òVµ\Ž0š'8¤fwŽx%ŠÅy‡Ê+5¥ŠÄ$2Ç!]ã–9€eˆÆHÍ»béÝŸ§oݾììììÎÎË?ËRî˜DÂ,Ä­!6´s¨´í¦¾ Ù¹n1±ê<þßù:j”DäM$ÿ•²¨ª‹²J#ŽMÌäuµÛœW{ëy³µg´ü›eõìжPMNÐP[£“ÇYñk˜œÎ2äV1Ùœ=áŽþ#)VÞ:ôlÑÚ­(32¥4XŽPbØ…ûq 6ïÆHÌ]Ž9·qL_Ø“*Î÷kÌ|š2jzHœâ€áÔÐä$JïD/ÂmÍW¼e¬tcG©½ÝpFðFoÍeÀ#-L/¶£æÕ¡§a9’R5Å¿Èä5Ž3ˆç³‚Ù¾8È­\ãÌ­¹d±Ž¾dÃÿpö6%³`¼5]+s#Ô1ðJĘæîáü´ÛÓ]~šX{Ò6ãf1ëÿ533{ž;%ìo39è>a¶ôrÙ ý%ØÀQ½zÛðÚ›ÀåÏIµÏ v•‘r@Ó@E@YÓ[¤O¾±ãàþW©ó¾sJÊi±Vslò”xÞŸœvŠ”Çw}·®TžxîÕ’¼I0X„£i…ª¶J‰uñY _f¨Ål¿ËäÎãTf&gÔÎìÌíퟤߡäo<’­{æoDÍ‚änÔ åÒ=§›—/­w¡G%žø°+DTSì’S€—Јkjle–ìa‰å¸ÏD¢ —•¸Ë;Ì#=™-ƒwµ,âòËî;ÖöÍbs.¢ˆ¶8Zi¤e‰õ†}¼4nÊÝz"« ¿ìÎ6æ‚fgýßá~›ö醴ó~·I4ƒ¯h:Ó…ËG­<¿YÓ»UÌ&ß·¿ÏÉV:αlYÏ®þÏÅÀVº¡&ž·¾Š[µ>Äz} cŒŽ}—‘¶¢Žg£ŽÔõí>¥‹]Æðl9 ¯l·F/"ŸN È™¡äyäM›¨jAÛ·ê9å°L?¿q —ôf°íþ¯ß¯–«/H?÷­Ký@$mÿWia¨È„ •v‚ä,¶ZðôÚ &w )‚_iŽ>úQŠ[¢¹íüWÅØáÉx–|¡ŸÌÇýârk?4‘Ľ`Ð1ÜQ rf‰ìOlJIY¦ b¢wÁtßù—غÿÂTŽ'~Ýû{G{ï韦MéÙßµŒH|_^̘¦Ó þZ‘žO‚ڼܲ¨¼Ž àø‡ëœ¼z+V+Rl%ÒÒhŸz­ž"/À§¦y4}íEÛ»cy×fÂPÈàpšÇc5 Ü4kl:{èØ|¶3`­“å¯O1°†ctk›‘×ÊÑÚif±Ö ïb²T2°èxÈd –Y®ˆÜÊ+S$gtîÂñ×éþÎFmú$ÅrÛ.i2X1Pÿ“2ë ×ô«r͵œ¡uz`BµÛ8ý¤h¹»+~šD;8TÊÜ´'¹ƒ’F×X6з£`÷˜lf¸—êNôa-¼·äm­¯4²ØŸN¶ÿò´AóœtëE¸áêüÅ”Âd1X»{m®F̵£¿ããèBð Œ?¦f°>Ú¤®ïÓ9׺ð Æ¶y¦ÕÁ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ*áÏúƒò-ÿò¿ücòÆ_ü"a˜EZ¦´[³d¡Ú×óóóUkg»õÙ“'6òM©.‚S@TÝŸk\2‚—þ#54\^М2 “r¬H‹(ð"öžiÛÄÓÓ¹#siÔ©0Á„ÈT³ž‹I4„Ú–ZÜsÃ>ç±-˺N\dÀ_”íIŒ—YÍ_—c† µd+Ì`œ»y…Þ½—õîxÅÙÚ^™„lÇÔ Ý1´Ñ‹Bù%ex5Íß+É[õÎÀÙûý_$$rK%—dþ–¦)¼¦Óc×ä´ÑJSÿ} ‚ƒe›²ÃeŠ×µèðúÛ.![lÑrVÊ–7mÅÅ,PÅy¢ú‡ÂlXÙœ®êû$Pyâ2Ë»3ÞÀ_Îa†,¬Õ ´2›Ã @XŽvwñwëäˆÛôÍ ¿¦=‹» ¡ÆÓŽ` RaXòôÍl-ê@ìØÄÌÞŸ*žìòx­%Òœ%Ê…žj¨ 2}*¢ióÚÊñÎÔïŽ5¿»®u¹th^ÉÛ††6•¼…ë$á^•ó[·9°‘¸C^¸I4¤À$n ì"DíÓ;·R!r2û‘;·¾½»»3{õíþê¾ìo0éoÒb¹áÖ·ä]ÇiÒ »eZXe‡AT:‰Ô!ͤ¼‘ùŠE$Ðé«K-ÞÔåÚ þ=•òËÇóät\æ³OÆ3üÏwŽ ñÊÈ6guŸŠxþ8d2‘®8°¹ü‘ùC|•ú 1Ì^Û³½©;gfvøë4§ßnÞ¼{Ûìꬓ$ž×oÇI|SçËÚW5Óöf”„¶"ÛGT䞦y’Væ[TJ)ÙrśٯˆA$Õ¬Ù×—’] ƒK¤Nv£~Ý‹®ìøêø¾xä®<Ãåà©ñ`·ü6jÞÿ»R†¸½z8½³û·Âî8ß ×)~w°âv¬ 7£=†\.2¦¡fœÐ™2¹#rîZ²F5k“ùÁõ’×:Ò;»¹|q—“”-!•†•ëßAúìåíºXÓµ|Ž6RÍ“h¥»hN¶«ES–´¥ôûJÌÒè À©ªìÅ"\åÂeÍi¢á ˜HÙMí ;eã^6Њ…¬þÙ»í¸¼¬!o˜Òõ-~¶›¶Ô¸XMÛ%¹^»RÅ)L)äq¹]öÙlöz¹P’D7.Zbh ­\ÁÜeŽÌò•ˆ ýÖ’°W&&g 0²ñH=…kë­/×å×CG…×ãM4wÆúü«+ˆ6ÏÅ´"wÄñfK%h›Ûï\‡5DÍŸ¸ªé:ÿ[føÛérs?™÷׌a#áºoúïô­P#'õû•™nßß o^¿Õ|¹ó ¯&w`[ž‹²L8tE —+¶c\Øéª¢Ë#ÔZ&„(™ýw¤Ïåhº$N4ß¿µ½R[»òÎB›À:Þ—Æ´ä’hâ« á6‰ÚRͲüÃçYÃ,Äö[»#¡ÇÐwóY»;»3;•©`n™ÝßùtÞ´_«ì_ËöÍ×Û¶|Ž/æ?9ÄÆ(º™ªN Û% rPÊó-™×³É˜ÚD˜×SÖ¸YÄÇR [k•HïZÖµkËrÇ'çiÏŒËråsb6†L)ìyXðmÖ‹ ¨ñPUýAV q×wpŒ]ÝwŽ(‰Ž:•ÄÙûi>y{ÿ‰äqy¿õ9;ÿª™ZšßZÜ™Û@yeyƧv‡PÇpkukpAmr´ÖàeE02’TrGUDVO´ûëàôî[ÇÛ«~…«4oѳÊWiÏ-ktíÖ”f­j­˜H&¯f¼ÀÁZÈ·|Œý”´³ÉÊßê;µ„N¶–µÆÑ©ì:fQðû.6LmÒ­êÏóV¹G%¶.t²Øl­ ­bóx[ñ‹ËŽÌâ.]Åä!oš•¹âv5.â°$&Æ>N%éÄ€ÇüÑÈÂqHèãDÁý³úYæcª²aÑÕ­^œ€hk ?Êc“¡ƒ€‰o®xÒ…Z‰:{ï¾xûÕSŽ~î¹çëõëZÜŠ”íß³:5l]·9xAV¤Ù³1ôåá‰Ë!x³—ˆ ?Lï×Lë‚!r"aöäNÌÌßÕÝúfÿªª“¿HøâÀ޼ÀÞ¬JæïlzD+ºÙý 9 M^7Ô ¥w*è \ÄH†âfÑ¢;Á-Ê&àߥÜ:÷s†·“£±PÖv}Ý FJ;6Ó$|o®v 1&m‹s³¯aÚ+&8­E-ç‚jvJ+@u¬¸Iošî6`(Nhm ·E ÷ ÙŸÿº®ÒÉÛv.ÃÛö/ä>µ…|üŽùûÌ1û:¬»'Nó¿/ºD¤1u­Ù¬Žô¥jÓ6ÚÜ#Æ}1?«­CG‘ Ñaž"ÜÑâ@r»Üÿ—eÏ3|Y¡ò^6:;ûÄœYÉÑš…Üe=š¶_vÈ®|Õ¥¼ù-²k]Ÿ‘º¨ÙÊ—|­4ÕÇC†ÑÈ\µM¿9¢ìø³ »5\Þ+aÄÏ=byªäp×käi|°Z–¼Ù*­b¼m(³ ‡ŒJ3+?#˜ykñw®%@ö¶mYü\¢kË“Q¶º:É„’EÜ–)¹à353´!E0&@ÔRVÀ¹q ›kIHÈëçE]Cˆ¸ ˜²Îí»s#çpæÆìý~Âët¬I-8Èã‹7±òsfêÑùl¨/ÚãÒ{4 ©~¥I¡· éךbß??‚˜sºÞ‰ÆSÓËkÔ¶-[*Ü“Éì8ü FÕ ãˆ¥Çß•A™•ëVÁ䩞ççNÍìÆ:üpY‚xGÕËפ¾\'Í.ÏÇŠ-±[šܘC¸øïÉR9›‡õ¦¦1Ö°= ïÇ6m¨¯;ë“æD ¥»éÌ ­.–]b>ÍŘøðü]”ÉÛ&„|·ÞB»™Ç÷1ÅGG×øÖð<áú@&ÍZhõyMö_—φñ»|—@»õV ÆoÛzg+2ÜOíÝ£ÿÑiëÐw_¬}-å9ÌÖØ³¡0‰}(t\´ ¦ÁôËÝûQJâ‘æhÂlø;'ˆéF—Ç~U¶Y›e *…Ì[ î²”D¸!WkË<ߕ׵‰$Õt¾*Õã3]‚¨ñ¾³¹V‰"83<£S|Ø¡– †ªc™ù#™ÞÀ—Ôr‡¹¿³çŒêïÜóJŽRÞ|èýdòböÎÛ–bÂãd=rÞ*YiÉ‹,«[…É«°4àqö*ÍüYüKƬšE¶Ñ”^ÖÝj¦Ìa(å1ól ç‚Gdb•»¬ën?Pó{Ùuúp}«kÆmX°ëi  þ®€±ñg,òöKL’¶_“7Û4m…*’âjÎEˆªÒùZ¼8x.EŠ‚œ2ä­Œ«SŠž[ 1·È}ä_Ú::¼|ñ6#^ÃaéS£ùöJ91ôê‡Îö+øºrÙ°Âw,Ý,v½JI¬\šI% !\XŸ½ºK¾|h3œÙxÂmÿF♺!ûÑÞ¥ôÝêäŠÇr§®Î™mHã¤ÑIMŽ3\f<ÎÆºèOâºr‘_:Õ6üþ—’<žàÀvjOŽÉRµZ¾C›ÅZakx|îôV1ÙŒU¯)¨d+OË6@BÍzóEóúzñY G¶bcp’9ü²E »f?± ³ôîÏØ»³÷•=cY||~S(ÚZ%K&‡Mí~•§)jƨ*Ú mÿIDêø”Q†2Ò€œ¤žîXCC}e½òzÓ¸>Ü2=‹ü+¬òp®7¬îïЕ®(šÕ«U³’—€‘ñf[#bÝü¤ç#›Ž…ž¹gizñë¹ÚÌöjââ|óRvŽóVíØo0ˆ¼Míú½0„m×þj!h>ï4u™„ŽÎ¡æ$¿A5úò5Û Êl5H‹ôâ #wµÛ0“ÞØÀµØŠÚÃÆö·P7©sk˼I]ÿì˨”P¤é‰¡š¼Ò×±O‡ ðLÐÍ8I±› Ç$f$,@LâLÎÎÊàÎÎÌììììÎÎÏÛ;?¶vvôìíí¾êÇå5Êa ÅɹœÏ ©°z ×Ðãÿr‹%D‡>ºû”UN8çëÿµ•êÕµzÄ5)Vžå»ÑÁZ¬2X±<…þXá†!9$7ý€‰ÿf\³‘³väNÌÌßÕÝúfoùª;oÚ¾=¶ødQ¾ënz³¡ä¹^̼ÊàM¯vWνi0܈eg©™¬g‚ÙÎ[C’CeqgêþiÈÈ3KãQäwþ•§ón˜Y³¡Ú¡ªf¡«˃åzÑiÚÉMœç«û»•íbŒ7«M>/9‡Ëã¶LË%ì&[1½‡µY±±àíhJxÜž(“ص }‰ÀkŒÄâþ˜â’3†^˜dŒÙºXW¹æõémQK’€º$b:HÇ‹DoØü–“¬&d;bbÇé¹Í@ñRNÝÎíð±Ò‰’E¥oä6' –îôD"3’\ü>à6Xnf4~GÑqsTÆI—ÍqÆKa½¾í¸(ë›¶B\CŠ5ýÖ–ç¯R®'“›' X¼¾¢Ïa¢¥B<þVˆåe…Æ;4ì›9´qÜ‚­y]Ûô4ƒzZÅ^R~ÜãÜ~)‹â -Ô³Öoè©¶:b› b"þ‹…‡uȤfuTÿY}<À UAq§†ãíE!Zn´“)~–ïn#¢:[7U¶†±¦ Þ·ŠXNo¨­¬èxÌn*èé¨ì{áV³J]™ÍsC"Š6j²†ÐNù2&ÏáV´=õâóÚ31þ¾pÃ]ÁúoLÃkÛÿ¼ÌÞþ»®½&þª:ï!î/‰³ñ4¸:»K¯°À„X }ЏjñÄ$~W£bRHl,rHEÜ(QŒ˜†¥1ï© 9}¿nï)±Hîï÷w'Lßfe÷²(Öùkòv4B}St7€ƒpTp!NÓÓPj,¸‘K6&gi2Ù°m*AiòÌ÷ÐϱôÜ\Ü+©\ PRrA©êüg Ž=c?­¸h¶lÉjΫ”žX…ÉÄ#›3ªf!c½ªlBOzƒKÉj•¶|>ʼn„±R§¨2O½{"Ì-83?˜·nÑÏþ™âíßô—F‘C$2?›tpkÔÁ¤lÕEòÊÝWÛ4qDTªÂá\!¶I…Ó²×ÅP÷]šîNU„…&ë"<(®¥¦Õ$ˆµ¥:uŸ°qìâïnàç# *ßHúsš„5ÆÍ§ÿqô‚:oîί'IʉìÏNëÚ¿%ÛÂVÓùWŒöyôº0³a6=¤ гº…›Ï6­¶ï%‡ÃØ×úk9 ºNnáë—žKsbæÕ³¹GÙc²Ë=1•ìQ» Y'þd0;ÚŠÛ³°3Oo’F—ìf!i‡¡ix£ø_hlùL‹ú)õz‰/0úF½õl>ß.¹ü³< «‚Ù5ˆew vøv­YgVîO_`Qk.¿Ù•Ü7SE‹˜â£PV—ðøzÖ9öIùW‹,éÖ/V¡Ù1¹lÞÕ Ý¹[ë¡Ãç ã¼ó¯±ÁLf’æ1v ”©Ý<üö>(2jÕiáj7Zà Âqǰ‰x¼‘½¹k<йtÃ$bîÞ@Ò„Fîm¿ªýg N™©ºn¿H®Rý#,šE&‘5ýýkjôñÕÊÇ UºÖ´+UÇÒ*“ʉrãÊL¥°ïÉøk(µíçxÙ?žkEÆb±—:ðC‚¡b¶¼ —ÅzQBrƒ†åÜ(RØ‚¥v1wv‘â—²~ÝÞSb‘ÝßîîNþ™¾ÌËy¥æU¡Ó_.öÊÞ æë2󔄵ªi™†©®Ïµñá„z”äb«8˜{aÕÌÙÔ§RçŸêÙ ÖkúŽõƒÝ*VÀòØß³b´1SÁò~6½¹` ‚ ‚ž?d¯<õÃ}ÕêÂÕ‚¶BÝ}ŸNpëùÿɱ¡ªd)Yk‘KCÄYÝÊJFþ5åw~Èávgz³“öî@/¤äòÅòν[tÃmŽ^ÛÚ4ï›Diõ_46k öRHþ‰1%4)Geñóß`³‚)Æ)‘5%³·‡íÚ&sNzn½,¦46%×6Ü‚ÈëJ1°x¼—źŸ4 “Âä«ãö³ÃW;ˆÆ\6®¤Wµ6 –>šh%o árïŤßô—Oá 9Å+3”RûRÖaŠBaºYôïL.èË¿…Ü`°o~JGú;a)­Å=‚XNü9ÿéërDt®‡)5ö:¼wÊ»ã©ø¿ÌÛ#Hð¿^ÙhlÅgx¿¨lŒVëX†zESüLvkœM\ð›.?ènüÜ«,6©ä±y\m‚jf0Y¬e‹˜|þ÷Å!cóXk×±w€ê[˜EݯX†Ì$'ä=¸“8fÝyG,fÃ$Rmå‚&=þ¡e!æ2«&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"aðçýAùÿ¿ù_þ1ùc¯þ0‰„L"aqfTð{i &¹“R‹Ê~ž¢rf“KašA¤\ ¨¨É`²ö•D‰¿p)‚«ƒ1ÂöàÒcƒ¯±º9¶—”j›–Á¦]žæàÇúÏG1‰»^Ž `Æ)â¶ %Л™ÇÑÅ`+^¯3V¹l…2¯©RÔ'¯a”{q(äp–#éÙ¤ŠAèã6gvònÅÜ °"¤R§¯SÔ’%¯ ô?:ŽˆhG½-¨")ΙþÒÚéz`ù[œ²»‚÷È)í>mˆ.ßQ·.¯>*.zŽÇ7æ‡îx±½ qÍŒ‡'HsÉ“â½vͽw¸É£>)¯‡«†Ùö{äúvg{³ºDN– ÷Wl¦N®C¿^OVÄ)7La­Ê>ýµâ¤†^¾¢:­]ßÈ¥úoÐb„ó˜Rùp›ß¾³“)m-+|šŒDE;®EQòómÜäŸ"þ$B)ÑE?_þgK¨bʘ®²›“çÆ“ÖÀqÏje ‚¡=*-Òi&®Å„ÇËV¹ÕRy|ÎxjIPOåSçBÖÓ'×a [€k©å„j¡³ä9M°ãoíYc!•ÆãižKbÒ²Ò×±¼iôâ`ú«ÆTëQ­¹kŸåÚpxúscá±³ëºÕy)ÏzˆZ’#/™xCb6v­`Ÿ¿f""¯1uê L˜ßÔ3LìL6ƒ5*ž¸Æšh„âXÀ=Y¦®¢ ‚\ï¥ •ûMOo®ÔW¾xão}u­kë•`‚{SEZ´2ر9ŒPÁg4ÓHoÐGQ‰†NìÂ.DïÓ3ºáÝ…œ‰Ù™›·wvffo»»¿¦fþ®«É¾ÀòèĨÚõXJ_’_bÿI×ò¶Û*n©Ž™j"4¿ZK/-D…YäVE¶Š$ª¿g £¾öd'ËsD6§ã­·(ÚoÎvL=­W…É6Á²+ œ±Éo5øÚI#È£6o’ ÏÓ[‚B﯎y]úg颅ÎGéúé¿«*ûlüŸyvœéN&N¯‘®…W[DÀ¼¥üjfqÊã$OùÒù·ò¨]hþx÷9ý]wõïD&¢Ôþë‹ìÜ‹ÅZÇóŠÿïˆoO7€»¼¢ÜIC‘\Åã-}?™tbÏ ¯Ç×y±§zoLïþéºíþßãΧoû»}7úúZÕ±¾Jb”Ÿû¥ã˜‘æâ% ‘o–QpÏPz+›.Þ‡i56ݱ8ùRÕó¬î ‰ŠvÚÊk÷¤¢R¨xJ¾^Z”ÝÓ}غÞÇĺþ týërÚ9+QðšË`p:xêàrVçfµ@ݶ}Ë^صLœÑƒYºo¥Ü×3“GD6]_<ô©ž:$Ðß–G±Z¼4ìvÃòËiÝåoÒ6«A^X§wñú‘š&sxg‹È¼òv{|—Ù¸ÅSב¬*®u*÷0ÆiO:Æßyi!Ï“ë:ø¿nù$ýËMÍü>½5qä0%0ÖbÐv{Œ¬×ØE¹³ÚïáðÒn\y¦ì\™«ÖŠÈd6è#-fí¿Ž:õw½QÖ5‹]ª”+UÊÓݲš–rSj˜mžÆR†?ŠkòHÕíØ†”îîâUwù„}‘Uµ<ÓC3xöäZ;3yI ‰¦—~^­.’*}pùú¢Ñ?‰@Ô6ðôÝâ÷EÀvrD³ùn7ñ] “8´¶ï€[‡tíÑ»—Ö1wW^{äžõÁr”•âÖøû‹5ˆŒbÀtÊÛ±Ìñ3ömg•ír Ê…1¿É3cìSvhÀ»|*gÑ1?s[»3·}ˆ*ÌÝþÞ4F¨—M鼨Ÿ÷wwö¡Ë¿áçÕÕÿoõ÷´`î—S°Ü´¥äú²a³[!Uׄ8^²H¿ ý?^<)²“´§}FÝIþeú0_µTâÞhå«ÐÉPùp§Ž‘¥ɰùËØa;Ë|l~¬2e jDñG^Qˆ‡D_Ëé+‘úþd‘Œ²»·ÙÞYXä'onÎäïÛ»ýÝÕ³¨¾.¼ßcÖ‰?§ëMK¬&&µewª}±uz-²â ] ¬aãÌíçr™W…È hl-­½ÐøQÉ©¸•foÖ²I$ÒI4Ò²Êg$²ÈdrI!“‘É!“¹™;‘™;‘»»»»º˜ÌÌÌÌÌÌÍÓ3zffû37ì̯-Aãß%ù÷¹¢<ÁçºcméöJÕ”Õw$~U[‚ßEã­díBIO‚Š[µzX¢¹ý’;Uª›è¹^VÄ#呪›î êºÅ‹¦5'èˆñ8H^Ò)#–Çg’œèØ<öØøôÖt 2d©wÑ®¥,ä[¢/Ü‹¡Õü¹·ád}Êø†Õ§ÃV*˜]§ 5JüÇmZfŒâÖrwésúÌe=;x÷i°Ö†\ jù}1–¹²Å÷Gû*³ùý“Dß4M3mÇ`vì=Û?÷g=ëšvçŠÍRšþ,s•b´öqYšóÒÚ`§¸kG’Æ|gñ{n#OgпÆo®áþ™óUXÞ±‹²[°èK,Ú !S”äŠàHÒ–¢>ÄB˜ÅdcòÎë©tgöÑp|M¡Í67Þ aréXÆê —š¡»è׆<^}Á‘ÆßµZ»c³TmÅGVÚÚœ_SÖ³uë[ooâ/¯ËÍ^ù?ø•Õ2G:ò6 -€¹ª^³Ÿ¿°½t«Høès¶e¿5\}ªsÙ©‘ÄcïÍoBýk¼Sº5rAn}r|øISqŽWµKª#Ô˘ëH_‰=qÁæØ6C7 .¢|ñÚ½&É ç™UyH~úE.ÑJío1óÅ¿–¶;&C-¿‚Ž žG! =;úíþV;íݘ{ffó/£ÿÙ9€j9½Ï‘lV†zË_»!tòÁ[NÔ291gré¿1Ù±>.R³üÑíÃÂÌ"ü­_.WCÊIC‚ÊŸ )oξÔëñ¢è°ŠÝÑu¾SNë¾µôëé·42¹Š‚ŽI픲1 Èr‹R xâŒÉÌãøDcrswgwé|øüVç5Î{¡¼Žpâ߈ˆÌ$î–“ÝyHÞGüÊ[Î2“öq3uÆÐæv,dú¾éÎAˆ&-ƒdlVI †7;ãòtNLãæ’ÈÑñú¨LÙü~8§—ˮݾ(|äí›ïú§õeÂÿ2ŸÌÓÚ ÒöÐßïÿuÙ­ñõÿä ÿÆyöˆü§÷ÿòãþoÅÿñ£’?ºÏ¢ÿú—‘¸«YîÏÓýïþ9òëüÓÿõMŽä? ÃÿÞËñùÿìÄý.>»ËýKÓ~Ÿ/ü?ÓòÿŽ:—ú7}~ý*Ä,WØU£Éò_1Pµ¬*² i ïÞw¶ï?ÒàÇžÓYfÇZuž¾NauCëŸóoQ}Y©Õ²5þÔ6Õ?È,á6ÄÙ~Ú¨ÖÅrÇ"íYí²9q•ñÜ›¦q÷ÎPQŽ;t÷{Û.ůçw}h?“C.ú¡mø¸û‘­ìÜv7Sš G’€ˆèT‚(¤s§fß]—·¬0Å,UÉßÙÇóµs^1œí%Uò›ºûÑ} ¯£'´bÀ!y.%vVK#ÉdÆdÝÜ–mªÂ‡òHp²ÑÙ?ö©xä©›hJ!nrHÑ­Ïb»n#Aã«$~1Ïl´òµ®ØÖ6Lÿ&C™Ð¶Ê#Ã[:>§§ädúY'‰þ0)‡¼Òb3µ1yX,Ò‚´Z¶Äß[%ƒO TÞ;P·oŸS=o&íÂO§ðz’"8݉åmù¬Wr *{xzN|ºßŸCý.š„p[ië„ÆÍ‚Ò-ëþºIérò¾¨Bˬg{'0ÿïNjQE» qf¹|o'ýÈ£ºËdƒÍÜå±ÊsoÖcùLü䎬աý!F D¤ý»ÍjìÎýõþ$«0³ÿF¤ÕEúoLäÎÿ»»¿µÌmòWšÎáàŠF»’Èø?—Oë ôxK&uÛð‚f-:°9“L]$“×)(³Ú›K}+Úok-Ò”-s7*Ù®Tcß¶lV,«=?É5̔ڶ¾5HÊB€5ímñXHâ3'sè @ÅØÆ <Ž:ˆ¿“Õ†Còòù&ž_.ºíå›ä‘߯ÝËúÿWVqÐFdSa‡O„Pxå4PAùå4‘I>yM4Óçžãžyçs­k5´’I4’M4‡,²™É,²’HdärHdîFfNäfNäDîîîî333333tÌÞ™™¾ÌÍû3.Ó+4‘¡Ò?"il~a{¶§–G thwk=Æ9µÑ´ä—ð U,2ÑTrPS´–O´ûëÈ£~ö.íL–2å¼vF…˜nQ¿FÄÕ.Ò·^A–½ª–«œsÖ³ 2Ã<2±H"`BBÎ܉‰ˆ˜8“1 ·N$.ÎÎÎÞ½:ªßÑ–›ÿæªAÝíª($>¦Q®NÊe×!¥ÿ©CËdý’˜È|ýߊ–Ÿ»¶€;èJ¾zÄÈÁ¨6ÿ纟(ÿ's––™ÈSÉüžA«Lkê»Dç金0ØØ<±Y˯=ï[¥/ÖØ›m×r7òY]Ò¤Šz^ë±X¨Íð3~õ$7þdlßj³x·¨&¬V¼²a´m)\üwæ~‹-°ÏùcÚÝØß»å'h̪8ò+tŽ!-b#¯ÓÄe-Lòhùü¨ÞôÔ©(?×fÕ³ú~Pðû:Luæ‚p6½ºY }¡s¥•Ãå(Íg›Âä"oŸšÄ\»ŠÉVq³Båˆ dyÏ€ù!61íÅý8ú(äa8äôqÈ"`_¤…ŸÒÎ3UWÄ‚Ê)tFdT ’HS„PxéE—]e:å4‘I>zQEëž㞺ë­s­ï;Ç“I0ÆrË)„qEÉ$†L!`,äfdì ÎDNÌÌîìˇvfwwffnÝßÓ37ÝÝÿfe_œýkæ†ÒÈkFî®äâ—Ø ÄàR,‰·&ŸJª> õÿRYwj#Ç:üÚM—­#Òˆ&®øP„9SdÔážUµ vÏAÙ±xé 1æv?Œ·\¨ bzZ¾[yÏê2è9̃•¢j¹œE}"Ͷ(°ïª@ؽ~ÜOŸ+TIÞ§Ï[É„{w+ù7”ÑÕŠvµ~žÊ9È‹÷'Îþr‹‹·_Ö¼}‚T¨ªT rfÆç†·ÿ>Sâàà;ÚÊÁbYuà yl)-&gê¯OzçöUé>ÔUÖYk\q§d²X‹I¹žÅŠ·j•¼w%nÓÁZ´ñ7Æ1äµ_SÒsÔmÄnG=gÛI¼¾ ba y‘»5úÿˆ“:ÌîLÿw §žÌD/ögø÷Ý™²òßüºÝ­?¾½'`kõÔº_ÙôEåEºWJqÏš¨î‰!>wÊ ®ãÙªé9úõÒ»Q^íŸÞÑF!®q×koò ²ðñ´“8ƒ‰?*ä9¢ŒžCލ×2~™ƒÄ¿Ñy?s[½7§fo¨úfnß¾ÿÀ…^ݾÌåÛõþ¾×)¯Éek1'U(úæE DÞx–Ï#ØóÞIÆD®çþd²åVE¹á•zïðýTé/³¥–ëº79Ÿ•íÂuÙñ˜Ó®UK ®äçÕðNr§ëúÛâ° HnR0P“¡cò`GD_Ëéa3gòù%ž_.ºgùfó“¶o·êþ¿ÕÕ…I$I4M4QE>E¸å4’I>uÂi¦Ÿ× ¦Ÿ×¼â]Ž3éÝÅÛ±wìH…éÌoÙ·¯ˆŸÚê”Xk‡© 4V¦ùGŠÒ—ᩞ?êØp«®'—ló:>eH¬M'QÓêŠ ³a êçŨkÜ’#o‹ª+m(ÎL‡MnÍÙîÎ/!œ¼_’½5‹û-bf 7-jÎïTŠ(q–÷~î]£ê%§ØÝ/8;f Ì",-é™®€°Œ%ßâ#¬MÛ˜Öý"[x¡NcB%1J±VLJ„ùYF!»ItK¾Ed»é5Sëžøë®zÖ÷¦äŽHd’£8¥ˆÎ9b$Ž@'Ž@&bgf!&vvggepggfvvvví½³³ýŸ÷g_|è¹_@D(¥ÑQ‘P‚I!N@tã¥]u”ë”ÒE$ùéES®xOŽz뮵η¼ïrM$pÃË,¦Å`G$’0„q€³‘™“°€ 9;33»³.Ù™ÝÝ™™»wLÌßwwý™•|qõϘÈY¿‹îª|{G£8þ–‡ÌÙgSB$4p!PŸ¥ŽDŠ‘Bt¸­ìĞ̎’×eÊ»*· òÕ˜‚ÉqÖá¡#B_›ç0WµìAdäŽ ,g³°ã°Õb˜â™£šÍè¢&‚rcñ†We‘ .ãõuÌÛ¶øâ”e•ݺwfŠ'9 Û¶í˜]ý·õe ÚrˆÊKS¤ ›õI¶|7먅§ ª—£f°nœL’Æ ïÔŠS±‰ŒXÞ yD Ñ ¤&G¤Bî8âx¡ð&w¨bsZ4W*l[ÇA©g?ûkPÏnò`jÂQC,ô8Œw|¶1]¬O#b©& =‹y,IÊU­4å4kGeÄ¡­}ç‹ýˆ«½Yaòéݘïý4rFý3É |±LÆLÝ`­ÞŸõÜQÊ= º(–´"Jwôì:æ°®WÌfüa=…kt‹×[®?[Ïä+lDÇ®¤wbÍo®‡Ç]Ø“wµˆinÈ,ñ7 fjäóÚ/#î{TXªÿ™æô]kF­•Ø0Xè"ò–éåöm‡CÉmæ6?˜¥Ùñz[ÇT¯6CgÖ0+–¨ü”dZ§Z7pŠÔÖž8¥7~£bŽmõÔ'iÄÉØ!šSw²ÿÑ~¨}ü ?^õt=¹Bt¹¨ÕôK–¥c ¤TO@7Ëì«b{[¯Ëß$vàeO®»Úi#À(ñ¥º#Uþ{ÄÿñÜy·fì„?¶òWÃË7˜—ÔÙÂêºn¹—ðˆjÁ¹t>G!X2phç|Wϯ;pDÝöíBùºÿ+I=‰c~üž¿ôo¿Íy·Nÿ—û…}úVÅûÂP$~¶§t×êiE¿.ÊKü¯²PûXÞxÿ—L“ÿs´ÑÿWä÷ðü¤ô¼?†¸ëŠõÆÄj ¼üÎ!àП÷µäOŽ/æ”U¾#ô]ÇÜnú/öÖïMú|[üGÓuÛ÷ßø©Ù~Ý¿~¿×Úæ6y̆¢î¥ZÈdh‘œL'Q€,Iße¡ÆÒ…ç“Ôä“–>»ànÉ|[¡¹Q]!´ÿ*Ÿu |ÑÊöà’òÓŒÆIÀXM-gX׆ ŠX£×uÒÅàá I„¦±àÒ¸ƒÉåà=r8ê"ì_I›;?É,c4½·ÙÞY|äwo}vo×o×ÝÕ‚QA`Ap tE 1QLqEtùDq†xIÐKŽE¸å4“çž8çžyÖµ­¦škKbIJO<òÓÏ1”³M4¤ç$²ÈnG$’™™9;‘;»»©ŒÌÌÌÌÌÌÌÌÌÝ33zffoLÌÞ™›ì ‹"ˆK#ÕZÉV¨nÑÅ /î3BíS6–ß˶è•Ç ìÖm(`»\”ÛÇ1Ñ’iD÷~ëIä ÁéÕÀ½‡«ò¸¬[ê{N(7] YgŸøjõÙ)\ÁܵàÖsZ>y ¹cQÎÌÑÄVe‚¥ühëÒ«]Ø«P§Z“Ôc?žzÖ™™¾a!”G혻ž&÷Ó9±³—Á4.dOÂ€ß ¯)¦¹ã©Õ!¿½Ì}µWœ«ûlf±»4תZn¸À%)ývôÖ=òì›DSyŠ+åše ¯±ñàGˆ±¹h¹2Üth>òV‚³UÙ4ÉmÊÕࡽà#–Éâ>[$±û )ò¦jI«ÁG0—½ƒÆñ ·y½ ú{/߀÷å †íά®Íòt,äq ñ3;œŒ§bóX©©„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a¨‡?êÈ·ýÿÊÿñËEð‰„L"a˜EùïŽç®;çžøïž¸ïŽù×\÷ÇZÞºç®w­ë®zÖ÷®¹Þ·­ë{ÖõôÎYÜ]ˆ]Ä…Ùęݟ¶vvöÎÏí½³¢©=T3_?l·¯3ƒä¥Éqzò㻸¬±‘öº.q~{‘ŸÆÂª^—ëµHâ´xWšQýÁ!CmÕ0[´¢zvçm×É VžJ#GZ¹J”×ò²|bÑÁ%bë—ϸЄ"-ªˆ>ù¬sMkøêXr½»é¥§ÙQf({r:L1·~Ýé›ú®o÷h Ú©¿L?Lå$Ï4Õ–ü"ßh=Æ&ih:GÏþk ‚³ î½’ò‚d-œÅûãîüŽªF…Òé¨Ù f%¾Kr{Œ;4¼íÚVJ»^¶fd©’¯õøî6Äy{eÅ<…euüÅ*™*O 2xÛÑYÅeªÐËS»F¼ªöb².Q»±øË·„П]¸Kþ .½·¤ÅÚHÈã!7ÃýaæHù…µ8_µÁôŸ Åšg±¹ÉEU96ÔÐÀàç)p'³ÕàM A$~mï§­ñßÛ}¡Ãœ±’‚•¸ãttìd{ºæSƒ çhäŸ9‘­SZ!®3ËbìQx3?ŸêéF€;‰\¬æßxÆ`9=¿MHïÛõÓ ¿j´þF|ßQ7 å,.dÆ‚ÃvÖ²c‰y­¥&лQ-:n[ëg??Âk9t–EµÀ91B´ºY%v.ø#¹ÝEêE+ì»·jðDÐw4ÛænŠw÷åœd{Þn9k·On9ñrî#oœ!ëõÂ]|5®Îïߦ«$ ë÷ó»ô±»û®ÆýýÛÓ³ªf¯ÍG3ýÝPþ.^ºã¡Y­µuzF@ìî—Óg&Þóç¯kò›ÚÓí>Õq"×jk,…n€%Ù.!?†¸£ð†c“ó™ÞY~à?µ’Æü3‹È¨Ùæy¬}Á°ˆã¹-Ž(8šïiä^sÕïXÖ36Ó¤¼XË\Ö¦ '_–¬1ãïÑÃ顇×/cnÓ”mâ²ØúÖ(diZØûv*Üiå—LdâÓG |»ošf{2³³þ°),<’‰‰7‰ÆnÄ>&,CÓ[ ~%ü´âØ‹]½*õO£EUÁA²ñõï¢_!(Nþ¤¤5?°aTˆ}¯¯¢jj9›C_­É×Hõ¦¬Y±ry,Û±5«3œÖ,K$óÊnÌÎrK)’³3y;ôÍí\DY„Y„[Ó0³33FfôËyøxò,>Ì«//#Wµ×Ž.:Áá¿öÞ*ª– UlÁ×yàÉ„&ç« £ƒëIÁGí`Ì`¹ NeŒk÷lI:Å(®V×°‹žWðË:2l>{K9AHP¹W…<1­á¨ñTÉ‘ù˜äqc3Ó˜ã94žã BwÍwdÎêyX3zîNÎ+'\eŒlWp!–½ˆÊ t®V˜%«z¹ÉW!½Š ’ËRíiëË$EJhbž7Š`ºwbýŸ±!vè„ÅÙˆ ]Œ ˜…ÙÙWäv§š?Ùž/)¼h!¸E!,š–]µ8|~mõͪÆÄ.ж Íéi’²¡ì»±™ä5¬h´Ó„e¶ò;A±š‡*þ½zqn¾håêK*ÔG¤QùsD¢(úÍ'ŒÈ„x`‘GœÂzb|i= ѡݵr[Ü›DÈЈ\bQï…QW¾:ç­êž3%…È]Äf1÷±9\m©©dq™:–(d(\­!Eb¥ÚV£ŠÍ[PJ%ÕçŠ9bH ™Ù\Â@#1’3 0& 1víˆH]Ø…ÛÛ;;³·ÙCr?Ty®(ylÏw½P”ˆ5EX3˜óÔÕB [‘Ä8S)ηÉW¯µg$•5Êò–ÓIN¸Î1|AÊyŠðÞ¡Ç›‰ã'Œ365ü• Ç\Iæ›=~½l=hbîI¬^Š wsb1gŒwèÆî'n»tÏJ/ný34@å#»¿Ù˜]þÿÑ×OϦ™ÞT@x?èÛµº[_ŒzR[WƒÂh§Êœ‘ÌЈÓQBÅ'žøý2ŸH¿»îG®øç®¹œ\QzˆI.Ç»q†µ mê“}Ãm¶Œœ'Åñ¡ï9˜e‰Åþxíc 8zêFvgéõÂNÍ k³;÷ö«$Ý7}ùÜjÑ»?ìâoßìµòÍ»}1äIùÅštc| ì»b'ýÃD'TξrÛ®ã–ÄCð6ðæÑ!qÒ–ƒZëÿ Çñê¸i&N²åÎ:áûš}€ÍòŽo-n¶›øÎLåäÖ ›öÕÆ7ÀekXy eQÈäÛÜÙõÌ[g~"0 ƒ¡8w Òà¬RÎìY6k5]³T$µ6 ²ÎR™ã¦ÄV¥b|Ô­1CË0káN;>ô]]7 ¬XÍx]~éÔö+ a¬I^Û®%í:ÿ!¬,ßîS*‘ ˜ ‚µ¾¼äY+^ûŽH8&?Ó“+Ü?Â×2qoÿbtÍG‘óõfв¸Ý÷vÖ¢ÔvêU¤Š”¶®?Ãhò=Šß'åÓׂMÆôøÛ1Áv†F¾V;ðú‹û[ø«um›Eåžî•òfb—Ǩc¶’•l [ÏáF<Þk)`/BöáÛJ"ƒ…ÎY?/’+rx[ä¡)ûo¸ ï¥.ù¥µKö{E¸šñêÕ¸Q`î\€˜0U1¸BQ'æi,Чـç­zpÙîè£Á£e›þs]ä æ6·ñçà·JqÚ±°ñ¦Ç«ËÈûŽ\qxv·s#ƹbÖ÷Ùi×–y;Õ±Øì$aáøË_x޶si§[ði…“Gü<íûNó~¥‚Îcjãñ;½²ÛÖµ\lÛ†ÞXÒ«¼ÿϯlñÊb5ò³G'•µšÓ.‡…,ݼƒÄbr^­kOy¶1 ˆ4H©èE€ôÕŠ´ûgŒEÄëÒìßÕ½úÐ6fèÉò¡é ‚Cm} F¹ë´í<†¿1rµJqÔ·,¦«*ÿ bôHéqÞ%:ÑÕ³ÖF«¯b›Ê0xX~¨á#†?ÌľLmrc³ÛNÉœ¦·_9”ÈÁ6ZÅœ­ò­jüö+}EÜœ–nO0Å$m$³ÊRÈcå!9ûVÅ­©­Z™[@hk =¤kXc€‰o®»Úb†"i:{ï¾»ß 'Ç?w]uôúõ½ï_Û¹ný™n^µbí¹ËÎ{Vç–Í™¦9g˜ŽY Ř|Œ‰úfnúfV±aaôÂ,ÌÌßÑ™ºfÿ¢çäuÊa1hÒlV1ÍRÆÇ§ÊæÕŒØ‘;^ØJš›Õ'“ ¼äƒÖæOªï˜6‡:޽MúUÁ}ŒâÂq–I‹sß 1$-ø—í4ºáºãcã8•s`ÈPã½ÈñVr7c^ÉÐÀ0Vå±$Ùûõëa«Ån%,Ö/EyÆÄlR3ÈQÜNÝv1ë¸ÚP){'院)ÝþÌÂïéÿ£®«¿L²¹oCÁjGØ[ý­i¼z2qX#ÖÆì>9Úr_ANB•L¿ÜÒ”Ÿ±ˆHbÕåmpŽ·ÜÁâ›õYåØw^.Öê·ÃÝ™y_Û$f”g'òÅq­ã<Áã=T sˆÎÖ0hD†,Öå nظXâL&ôÜ×nÜ™¥Átlã)mÛþ/ù,³˜K”Éêõð:YæõKÙün>†ío–øá›?ËÛ«³‡-òIõÛ­NËFUêÉ'ÈÌÎÑ„ï-Žqÿ)a–>Ý¢8Äå\5ºÉå‚U¾–¸ý"Ëmò‰ýµAͲâE’ sr½&§,Ÿ9ÖÞ~x°„Göûa±¢{CEË ŒñŘ\ªméâpÓíÜW£ñmý1Î°ÜØ ÕsV±jÈ |Vï«r~ÓÉu»“ÇJ¦JäuŒÏÉðáv¹Hò5©q”’4¬Þ =?ŒOó?=r»õ?±Üùýo¶CséÊó–óújmaþ“ùÔ§_~¶Nÿõ÷ ßí+÷‘ôW5´ÜÙÊ®Ï;vËêõ_å^>Ã?Î,ÿØš=mú£f‹ÿúao„|bý kchýδs¯×gÊÔž½·ó,¼²}ýÿ›ïïî¬3sks8"µ´S`(ò8MÍ !¡Çÿ"ˆ2i:<}wö¦’|qÏ×þë5«V¯XšÝÛ3Ü·`ÞIìÚšK'¿Í$ÓJG$†ÿ¹™?îê`ˆ‹0ˆ°‹7L"ÌÌÍý›¦fÿ’æåÊa_“Q²(cûµ‘æ‡F8<±ñÕgÙÕ_#íÅ Fßq#¯È{‹ã{@®V63žþþU·àLƸ8®ªEÙ›mxëcFÚÅr3;§«ò­L† ¦í{mÆ i7Ý&´MãZ®>ÍÙ«A¶k[ÅÃIدAZ´`pê™í2KÙ;w`ITâ2ž‰R9Íù5[.ÿr6w‚rÿÞbwwîx¬0€ŽsW]ÑÛçX‘Íõ¯2¦5$Õ!Á—²„¡<«±W)žot+ŽÐd±!N/‘Ó-‘g eMñæ|nÐrz½z™šöèìºvZb‡ ¹àN[KóŒM<¸»ƒ4pÝÀlu!!’þ³ž­ÍV„¡¿[‹¸ÜÚµíîQ”6#nå¯/M 3¿LcÓ¸Ë ;;Ñ9ÆNÎ.M ˜ Ϙ*” ªüÏ8¶‡«ò£Aü%ˆ¸“èÓ´¿öI'õƒC‰ÒbÉP»#RëëI,§Ié4í=áþUË׆í9Ý$ÇX %‹/6¹•§…ø¢‹æ’Y3Wj×ÅCÅÑ<³\Ž7sŒXœ¤(g£¸ºìbìÏL'ný3|bO#»¿ìÂïéÿfuÒëÔ÷‘“=d@Ý–+h4dâ²H´5Ò\¡ØòŸBLÀ»äÏÍ¥ïrÞxX~;/ïä_±nç?ä¨Êc²î|a«WŽQ†kV9_ÚÎŒŒeÄq­çbƒÁÆvl+”rÃÓÍåõúð&o†½ÙÝÛ¶©, íûu%Æ­¿ÛùžÛßÛÚ¨^¢ó…­í¥xh–×—d¥îYQº{©ûͱû-ïö¸~æjÓäÈ­Â÷# Qvµ®ó{Ë{àFëµµ× ­qn0#üÛ”ò™;ŽÒHßÀ}{1ŒÀ™àŽ[ûÎŒïÆr³’ -¡€Û úèó^7ŽˆúoñVÆ3v»°ÖŠà¿_³<ƒßú*”ÃãÿOšñOòM4b·|Ìšf>ø_IÊ&Ö  ý´û~?Åõa¿ºÍä_¨ó…SWS›l)íÉy7P%£’WàA#mÉÈܼZ£SÕ·›9ºpj¼¯•Ú(½¬ÜBµ\l™­kZœY<¦ ”çØ°ùü¦ÿZ‡ÔXÜB Àj™JÂERz£?‘QÆ6s"7§4Ó¸†.ÌÐÉUrÿ+Wò)^ôy~[Oû^Ňõ·£í&Ö‡2šfõ“Ô‘ÎöU=7Cóˆï[Û°º6 GÚpI„mÄR‘Z94t_²S“À1þ:`®.vß—Êqí¸ªUâ¾)À†J«YÂí8üVO‘°[F*; fuëÜŸÞõËõf’)jÚ›Ž«=agz®3-NÅJ²kÆÇȯ^—Àº’*K¸÷ñÌâ«(“3± “ø˜‘ÆLEcÃñ÷™’WƒéÈ•„ñÂi%©=Æ‘×|Ï|%×ßÇ=ÍngÕ>½ýª+µºéuGµ¶§h¥×¤üÙÊÆ ã5­Rr#ü§G:ú ˆÛÅÜp:M|:Ä9vœ 9-f7Xmþ(·p´–ª3{®DçfïÛÖÝÊÄbÝ¿ÓÊ m¤Ãg±uý‹´ã"Ì+ùhùDE‡µ‘%¹Õ´ŽÃw`}j5]ã’f#ÒY²C¶Au–§¦ÐF\dõŽÉ¬gõ ¬Ø]“g’Š8l43ügšv£iédq÷ 9idñY ä±™lu‹XÜ•9"¹BÕŠÒÇ)M†h¬I Œ€îíÛ}Ä…ú 1~ˆ$ìN3a0&q!bgešå…UPd—Óžsˆ8–Ë"½*vÙK$2Ñ~§Ñ’e½B]®8DÃr"Fk‰(¦¢£7ÖAĤŸ} :œñÖõ°q\OÉùªÐ߯qöåk8±åÛ\Êņh#6Ž[2æg«.½XŒ„%µ=¸ëÄd#$‚îÌñý(ÝÄí×géãù£y;l-›“·¶wo³,{~œauH]Wõ7¢lƒMEBG º’™×ª7 i$‰âU OATDη®ÂÚr®ú$]òàŸ;nQ"û¹·äiœßÄ›—êÐ@c³Úß°[DÁ+‹™ÄX~8›wØDáfñ‹-ÝÖ'k"PO®føkÝß·f²ÀÎß³ü–Ú´]?íüÏmïü¾Ö'9êàºãî‘W'B»†Cr»m½ïp!òMš&ú<Ö)8%ü+ÜyÔpËf~ jÊþÐåÊ …ŠhH­«Æ¾ÚN‡’©˜¥Ì™áÎÅk\yÇ–sx¶‚fjö1ù"ßv8›!C'NY὎Ÿv«ËG! Õì=9~¦Ðe‹âwVíŒfîÞØÁªÅm€€™œM¥èÁÙÙ–+’zKÎ ¥èMrÕ£r·{±«´¤R{.£kãíØvK2Ìâ½\ñ6Q¸U.»;u€˜ü7¯8­Ÿ4œªÏæñ°bø·”rR<ú6Ý+€ÿ lå‹Äj›¥²òù­êׂôÔ4\Íù\$‹HËݳ­”f=jǹaõ"§Þ¤ õY®Ýÿ:9'®?°Î.,Vcôöc›®žXù“µÒH£òæ&‰DQõšO7ðÁ"9„ôÄøÒz<£C»jä·¹7:‰!¡¸Ä£ß ¢¯|uÏ[Ñ9+Ñ]õ¦ÐVÖ•¢Ò裉%yí"*/_ù'ÑŸ&MZþ¥ôC­|SO•좷‰|xÕ•3åIfwÙh®åü¿×¬WåV+4ݲAE&’h W&yc¼Zh:¼1íî1æ½ã‹Æþ/–ÊM¨g\CdÕ"Íeq21ùDåk‘ÄÚ«’׳‘´}6s<¡ y(ò˜i.bmÀ»Ž­wÄäŒÄLÿ ïH@þÿI„ŒA,OÛ÷ŒãíÈ$afJãÁ4DqÖ;Lû6mëyd§ëÕåÀô$sʳ’‚¨âÁ«úv[RSqÙ©£òQ|Rö41yHêží¨”ÆÆ|°^ûF¡&ÑW'¾éYì®ñ‹†9/ì¸ü塵Ț| ÂòØÙiü….w]Ïâmç˜gf€¶ š–C!O \Aa  «f(ë»'øÔ°ïöhK¦h¥/¿ÒÈí'ßâ)ÀJE°Š§ãŸÁzÿ¿UøãÍ÷κBeÓÐcg+ ¤X—yÛ³3„Åè´zA%x-ÙðÒt¿?±µv¿])ÖžWs8ã„øá4øå4Óçž8ãŽuÏqεÏÝ}Ê8s6ý^9ß;Ú¿êçëŽt¹ªƒ$ÙýŸõªÐÇ1Îw¹TÌÞ€àvc¯6¹¦ä¶°-öý gÀ|ÄììÁÛ?U~¾2领äÎîÌÌ'Œ]ŸìM5€‚ý_/KñýÌôsþûî#æ£I#ÉúS‹æò‰BL!Qøßm½>=é±À§],ààÖ@mÿq*¡ºå¯¾…8¿ÂÙ®Y±•3zÎ/Ç|™ÏÁH]Øk2où>(˜%­lÁZµÈ§±ÔA8Àïl_=ÓÿgE›¿ü]¸âwvûxµP¼Ý;þäBìÞúïô¯îÙ=rþžÖ*àk4Ö5}*ÊÅWO-wAÿ¿_`Oì꽯·]¯¿¹UީɄxÚ|†ª‹ia…ñ¤Á³ÈûYGn7²n»§TžßŸó>£]¡©í¶Æ›FÝWÜ¢°FLO8 n¼2'ßsSƒ²ÒK`˜n¥9à.þîõÜzýŸ¾Ûóמ$/_…9÷¥ý4oÐúà–Fé¡b;ûz!tèZò­°ÆO¾ù×#¡ÔìŠ:ã•”UBH#–äÌmõÎ*ã—‘Ê+ö±{ë`"nÚ8äÇò&Í·k2³»É#kÑü²?“€€Åo£3ëæ½vQëØ ÅYÿwc© 7ú7Êý7úöï[%ß´ôaÝÂŦëˆDÆLaίRº§Ò/×ah¸½Éo®›}´9³¥5=”ï×*§«.‹‹{GÕ…°鬦=¥…üOîùjUµãhÏá10W§C¸qulv‘¶j5¨Fðãª6?R}S¹j´™À¿…sgVÍV¯]µ­[·B˜ZÑ‘OZ¤ˆŽJ÷HìÁ`‹Ù—œÿ<•ç/ωœK·ù¡›ô¸Zz"ì_Aq€Da|ÓRøO(VÑŽ±æH|’ÉA„sAš>¢ñ¹AÏ¡º†Á‚¸È ÊS{\„‡&‡VöíCÈzÎÙ±[dÍg_yÂçžOɹžJþoœxû–j’^É yL^n£JÒäu½†®3aÇ ðÙ·ŒŽ­ÚvlÏ©4Å q}4‘uòT Ž.ý10‡`q]Ñ9ÂnÎ"nBL6 5²˜±9ì=²ÂƒL O\qÛDÖ,ÿsåDtG¡!j-¤½ôŽûOJý¨ßZãò'¾·­kJq¿§Z‰~œY 7(LÌðÝ«b¤½“|v"8‹ôöÝô&ï×mßõoº¿ê›íCh×6¼iäuœî#?EÂGˆ¾¯~¾B»4¬&ñ÷-qg/éÝÀ›ô¿Œé‡˜>O‚<ˆ«j2©G eŒªÚLT709x$-ö†ôŸë‡9sn#ZÞ¶&µEE÷Ç($ª^9ã«k™% ãVš3.€^äBËv>¼Bì‘—îá…˦fvý$þ3°õ9Çð=SjÆØ ²`pgz¼ñÇç<­®Õ‹jÃHÃ+yüÖ5jW"í¬wš"c)N9,£­ü±,šééâ6±[dàW-6a] r¢jqÞº žD:áN;×hÜ?ÓzQ57õÉb’Æ[–ãž$f†xäŠXùµdµ›óŽHäo† 1vvbýÖŸ6©ÅßÙúðÈÕÉ)ÄÚZñdÿ…¸ÈD€Ä»”FÎѲ;;;1«ÏâCëÑ:µ}çÕ–ó¨‰Êjžè‡Ï0¸`ñðyG¿È·š¤Ž Û#ëÇOJÌâ¢pü … s¥5§ÇÑAÛu¾I£äÙ‹¸c?–kAbÔ¹+#x‡*bêÇbÖÅ3¿–·JÞv'ÎTßòú¸ÏÏ7ÓÍMü©7É_·s¢N"ÀÝ}è™8Œ/ßþZGúbôÑ•_ÖGØ´{wÉîa«Ù·Õi…Ùâ>WSÉ[<"ØŒ¼´ô±©-Y%-ºxÏ%RDãøBXtqÜÖ[Rg‚îÒQ±®ð1Ôœ;Ú³8ÛZl~Ï®áîçô쵬eO+ŠÛ±PÚ×nâ¬S×Å‘úzå^Ü7 µŠW!¯Ør˜ògw·f>LpË Åb2óÀnÒ‰‹»~—ß±qòb~ËüÒCÜôŠpzçЖ¥(/! Í@Ú16³Q1=ª‰¢Ííˆås\,Ù¯¹Bù™~>¼ó¾¾î¹çqº<ÝG³û?ëPB3<ò^ä}G3r &¯6MÊm@Yò~†Áy—NìÝ3»sõñ_&wvé†ˆÅØ›¶&–ÀAõ—¥ýÕ¡èyµý#åÅ£=ð2*­«îé€Â8ì…;ÞÖ>¨Ñý=ÒÝ –ùú¬Zmé(F•Kþ)~?„¸Ïïù×.UžY?»­cÏ“D#ú&¹^&hÚCgý•“Ü ›ÌŽ(ß=ÓÿgCÃÓ?ø»PÅï÷fúV½ßMû»3;ößÑßõü­ßºü娴nÅýba«'v‹ÐÚKë½7ØvlÑÛŸKõ®tAõ !$‚=o`.¡|þ˜pÆ9¾8uŽFÚgŽÃ!‘ÛµíF„Ö¼úîηԶ›£Q£nÞ*û¬VCfk1Œ/õ ‰ûyª@Îÿå òÎL=~Óð—»Övé¿ËÛúÇäþPFΟ ¼¯;²å„>Ø2H+É5” (ü:ä IAŸÍ9YׂÚÕØÚ&ç)S)ßzíeÍßGõrÄóêyJùÞ?ãí GÏãì ŒVÁF-¯bÌc¤Ž)b†zϼm{F"bÒ¼§j¶³œâ.! ÕÛ¬˜öœ+VíYˆ›£ˆžc6wgv/¦‚}tÂò?M÷wjº»y)J»ô÷SìºME‰WQۈ׿BÞô%q¾ æ¼^å~–õhW-á¢*)Ãè;‰±£NvêÎ °VÍ›Oš³Ý(¨ÐÜ àÝðc„?3Ñà¡Æœy¾Ø„˜¡}š-†mKh³<“HYÙF}#!nJÒåjiQÖ½°Û„Xèê“‘W|Ww .W-Õgûü/däùàé¾&êÈ ;Yr†úTNµKå}x¥7Ýnà7jÇùƒ€K<¤¯b– -ÛC‹iƒ¬ÚîÎPA9³¹ˆS[¨a¸@ÉyÛt§¸cö\-óó¯âšÒ°dŸ`³fæFG0¡œ®Y–r»ZÔÇj•ègž¥ê“Cr¤óÖž)NíX«œ U~?€›°ø…„?£·ˆ³x»8»1 3‰3;4“˜²®˜DÂ,Ä­`Ö¼ex…ƒFÄ©`¹ ŠÊ–ƒCÓQ˜Í#¾5 ìZTÂw ¸Ç¥QÇ&©}É™œÁ9ˆã ÖvƒNÊÇšÖ²sbò Š’a Š×h\ཋÊcíÅc—Ädk‘VÉb2•nc2UNJ·ªX¯!ÆT¦‚+¼s;±3;»¿b`bìqÈì$f!&víW~åö‡šÚv¡’+¢Œ …:æê ¬"í*Á»Žùë]ÝqXè-éMa͉uß [ó/Œm© e‘í­²Ymu³ ©r¬ŒZ|Íl‹ès[žCl´Bìã¡æ2–,ž9lØJ=7eÈ• …£– _`vðÚcBù'¢ÝXsµQ›ÿÂÏbïÿ534± }ìB`,Ï<^#%• ºúÃˬ|Û·£¨°vkgMè-lA?qÍ©m‹ÈçµÃïF:ŽR‡€ˆ}· Oî.x( ¥–0dÕÆéðç-ä Q¥Åü…a ¶TlÈnÃðT¸3É^å‚Ç4å„kØ9ÆÌ‘|מI¼H+B€uåv£v>LÏb.È}tâÞ}“;»3x³öîÌÝ»²ê5êˆ+¢\ÿCB/‹¥×íôã4%¬ÐÊ뤹S¥Jn°l¼"­\zOirs”ƒ]öYeySŽ&ÿt; Câ ÿêðÇÉdòÜ‹§Ý½OÍÅ‚+ZÞµ–ÏíÑÙv&7¬:ùÏÌ–8ÁÄ‹¯×ÄMü¨­ÎîýÇRÀ‰¨Í4q@ãûy|¬Îþ™Ýû_ÝÙþ‰ü_Ñþ]ê7ÿ$™ÿ~®¸$í/µ¾Þ€û§g¤‡ÿw¢HØt·û ï¾?æ3†Ô¸Ëçùß-¶Sùå_ÝÖ‡°ìÂÁÛXŸøþÇüLr~†Š/©‘ƒ© „¿”Ïžéÿ²¡áú{«µ^ûÿ+}(Þï¦÷ÛôÝúÿUüéׯ¿b,=Öã’º¼pÈÏSX««p=¾SPiãµ·W5–çÁÝþ^U.¨ý †’ì”+}‰Ëd8SñǯÉ[D‘FWîîZÞŸNÕ†Ÿ²uÚZfÝn…\|!Ü^ÃË#˜ÙŒba™á‘>Ýæ§;¿B5æ°B=zêR±\\˜½öõüzoòûõÏ|_«u6%íGú Dõ]w8|‚$]QPÈà/Æ·ôÚäí›U5LJËðè/[Ýœ™ã»;ówÜË$ é•b[×ÉuÞu},²éÜ]ÆØÊ9xã«›Ææ¡Üw\^ÇŽ‚ËZ«KcÀîŽgTÉ•I™¥¥v-v•Üu®¯âç¡x"³±ŸRÀö.Ü3Ü£8Þ½c„Ü|H¡–½xç&ôBó˜þ“bÙá0ê*–wØU£ µéMõe´tšæ‹+Ñkð€L¶¸wDŽÃ&Š˜¯Ç\Ä‘¨´©‰Q<)ÓS­hë&e©GÏ'Ý7=â”×øKjÈé™&Ÿ7ÃÚe|V—‚2–{útú./Y‹°‘“‚ÅÜ„÷¬¡´jrÏö´f’4dñÅâä:B层šù ç>Ôyþ³VÎ þ7¶iy;#o/¦ì4˜¹î4-\rø›ue¯•Öv8``Ž ƒ_¹BüF8ì›äðrÜÄÛ‹b¨LM(ÁdÆ;tÆÃß—Ç “8M ¿nñJ$,îæ°È9§“þH¦¯2x?›þFhS|ìiƒswôTjM%Hè¿Dœ§" z~|¸#RI\)Öj+‘B7F1t±c)<²¦spÖ!é+Öc±ù|M½·‹îߨð4*MØõ»ÑÄ{·Vê{9Ú´¢Š¶wYƒÈwœx±ŒÇñ+Q½vž.ZqÛ8Ì`º! ¦LÌÿMhŸì1;¼S?¿ðÒ»Ÿ§øNÀ‰lg蚺8–©åÛSÃÞG¥Öd‘ØQ6‡ÝqÉ; íI×d]HYC¹Ø8j®AûäP®¹Gxþ Œ¹g¯ÍwAܳt¦6Ž;ø½k3wäñ4îç~ gN0îÖ$’IÂ8«÷<†0³›U–í8]ÆkUã&û‰ÍŸß¯ò¹1;»úffíßÓ{ô°þýI =$7‚_V9FØíéFhkEÇ„ÇèŽ ybFàÕšÍ]kìDw=͸ÂÒA,GH•ø/ƒÄYêç'çûjðÃËdò܉¨Ý»TŠV‰«Ø×uœ®Áµ…Æw#’£`Jx#9㉎/’—×Äìß6çw~›ã©`D½wÛK0EìÅòôîý3¿OÓ‹?ÑÒæ+åÞ£óÊ=µëuÁ!Šk[3„ˆM½ D/Khµ“ ò–>Y¥Ò*¸Ÿ•UÆ¥ÆXØÍó¶ÙiÍ¡=ÐöèúÎ"³&ý?< SøC#× ‡9ÌÍàÈùî›·ÇCãn›··jŸïÓ°µV½Ûõí»qgû;·Ý¿<4úöAÉ 8óÝ\‰´šl¬uåqºšŠ÷¡tó`ÓÍ„2Ojlº¯±W#¾·±¸E-p¿%w…1¯W×ù+n8¾;Ù ›[Ò*Y1y£—_£­nöâ‚Y|˜~¼fŽ!fù\ÏÊ7ŽHûîZp3öÌ! ÖH{NÒ”Õ…Ý›ú×vwýºnžœøZY {r²#ž¯¼cÖË lHHjê^W2L% ºmVl~‹‹T“ùІ’Œí2T-,Hkrê˜Êcó þÃ×ÿxlm º¶S‡t ž›RlŒ˜Ø®6weÚ5sÈÃ$esTÉr_t×1³æ7®â¤Ô¦Ös¶£ò¸I/ÁÈãbKŠÍç …°°L n?0Oàìþ3…XëÌlìÞ"m;M¿A#˜¶­<Õ)”u\_TP¢Þý„qÅ}+“úM¶hÚ"#tó"£,«©ÆVŒþ <#Éá¶ÃkæÂ¯`¨¾²ŒåßiÚ¹Sˆm£Žù Y¸ðg¯eøË‰âÛX+sI3QÆr­¡ÕÞ¹›°å#מܹM{;l-¾µ²ì2cïËUd‘á·QšÛ±?ÇrI.Œ¢ÌÞgR{O#Mzòa`–!qù¡‰Œ¯œ^!„4¦Ã ‹Çb h©Ò©3EÙXRW®K¥ni@øS¤ÑI>»åu¾Oï|ñεç|¾o3Ÿ¸Yö_'›È°ì½ûY+† Dljä³NBÄfL.nÌFNÍÙ;½Ú8ãˆ|"Œ#¿Œ` =únüE™¾ÌÍöý™dYl]Ó˜EWd4œ¦ {±üÔäÑ~sYöqNJœ¥l÷Bˆè§GtÓm èªvÄxYRŠp±à±çäNfíeÀ¬W>iÛxÍ÷±chjü©VîS¨íxÃÖ©6ù©T†6Š"+SЇwÖhÆÃ[WØrUgÆT‚*z®Ç¬T{u®À:²Bg=3'9kHäÕg'~È¿KÖ˜ÝÊxAØÉܧ†rñqÎê‹Â1hªíQ½æhEAIÝC7HVéäK’ 1]:Bl“Ë Äcv$5Éþ &è3g$æ÷0Ç·-¨…<˜Ù£±jYƒuí×sZ×s/QO-Fšh`·‰ÎÓ†x+¬g*ãvSMÞÆÅ^ÍIìV¯j9܃¢†xÙžZÒô3GÛ»1tÎã$DììDG ; »±3Lù‚©)„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&cs)|f½ˆJçÓG#ÐèW÷‘º!ä/DH-ètÑúU&—Åž'3=çL1°€ëDtÅXÌ.¹Ðó 15ˆj`”©=Ã$EWŸ(~ñ·¤½ûGúì"/rH}°ó3h«"uUÑpXÅž|׿Yž÷¦k«ì`^­4öXHtæ˜Ä.  ŠŠrEuúù ˜KyÚT_ǗȲBÄ¢€GJê_•#߇´öª®n‹ûÌ¡eÍÃršÉ*Ч'åIå$„b!2Q_¢.7÷Gå‚ÏþÈùÈ~iý”½ý_=µåšYE¾Þ8ÝoHÐaE¶˜è'Ú‹««ßîUREuÂ+­².J¾xù$œ­ûÈÔ"ªbzï¶o&ø¾(t‡i""2SX^µEÉÇKo‚ŠxZÞçh¯}VÏGüDض”A¨ØÈ¯»%\Lð‘ŒÞž‹šçkŸ†îù\ˆ5íXùm?7©ÜZ@ª|uÓÅt\YÚ4åÀn£7¿6LMØŠÔP¿¾(€1F¦oòdJðwal:ÁyÁt>7K $Lí7}—o²eÌ!9t@­ÎŽá°ªà"I«wjô2d[Zù°!›ÂE1ƒÑ1Kpã ?  ‚)ó­ršIqÂ|s­kžu­}0‹—„L"a7/‡Ågñ§xtÞ:Í,Š¿‹úo1çöñ\GåTÈO‚‚-5QS¤ E†WíÒ¢–‚ÚD ’¼]0¹¼Æ¹•¥œÀdïa³é~z9,m™j\«+FEðH-$G$2‡~C$Ê'†ÒH㘠9@dŒÛ¢!&ï¶íŸ¶ôìÎÏ÷gfvéÙUwR®,6{{Uƒéª!¬e×M«öæ~¬Â %;H&^ÜŽÙÞŒ‹(¢HŽ8®‡‹v1oò+۵УªBÅvý8´ž^·{75®(ä;rÇd­ü8.'Úçšq±|j×ú~0ˈË,ÔëK¡ä[Ä–Š4ÎlżžÍršõAgî[Ð37lÁäþWcïÓ1;Zø­yumô5£o°5JiÏ=ôDeã¬Ý,µnºª9u-‘j4G¹úQÙbArVC€vbd('qÏ ÞØ]÷Ü<çj:NJæ#x䦋-Iþ;8m?CÛò™zsÄpÚûý^,¦X«(_¯f–Bü6)K^x V°,=¢¹=+Sî2ö2Xµ\#&÷ß‹Õ+¤îÄÞ.ÄìLìýt² …ì)ç[¹œ*4÷úœ$Ò,JËô]q×Û·y•0ó€ÂŸ:Q&í+sCò(™e¤ªhvÞU·ê8KñÆ8¾PÝ ¾b;“fu^7‰‰»jÀøˆ°œ£,Ñ“¸•— ‚¬ž"PÂ`R ˆ{õ’>ÝΕfõдsÜýOò<”™Ÿþå~îÏ×OùþÂOÞyãST^ïc,²«¹ÇâhTÕ|ym«­ñÈnpšÈ ]¸t÷ÖO›XÇ/ÉßKêB©‹ÐÜÿxºå'×øƒ1òÆL–fMËmɃ±<Öêgö»uëR“3ÊO§ÃWÄX"§Í+é&/ö¹ fÎîäµxûý„¢€l·íþ!ËßnOë¯Þ¼ƒç‚ÿõtkgH"*jû™Ï½ È\·$‰ÐÞR› @®o‚Ò è¾»+jl…S®¯Í|™—ä»i¿!Í$ßÝÖ\ãGœ¬Å3Y~?ÄkOd$‰þŠw’?…†ŒDYùu7ÿi Øé™›êåšç^/ÛuõRMÓ³ûíº~û~ûwYS¯œhÇ8_0*ø„j03Šlã@ÚP¯"ò14®›åÇØ>£ïÉ{^×[¶©\YŦ@Ø¢ªvŠS¿ºÏO”9¦uöI6ÜÞW--Y1÷eØ®I³VËâçpúœ6w°>KÂ[hÀnaòõ®ãmˆØ«#õP©T(¾‚0‰ŒZ!hH »ñ’3‹Àâ{#!1íú&íFOl9k@^6u8šÊò×è6¶-õ,‚÷+Úú%oÐÃ7¡Ê<«zÂ[‹$?E—gB«F–g’Œ´µÝ[“û³ W«©ïöøÖæC¬>Åg 'ãLÖVËÍõÖdspãÜý¹òç+C§žÚ®db×q>ié~›NSÖíün2ýšäq^"ß{q G×oǺê÷B8¶œê9­«LÎÓ­7ˆ×ÏÓ£ZHëM+µ µ[8üî ì¡{–ÄåB½È­÷ ‹¸ ›0Öœ]Þ ~¢8,DNÞÞ""géÙ¿\d'¢Þ2Ç v/]#^û/lw ‹d6¤˜CC=VPöƒ=g”âìƒ#óÜÁ¡²½­,gGo¥ìW ºVb˜0»Ik°6~Wðå.É3d4œ–±«Z3ž\çíü‰©d·}JÔ¤È_Èc¨a.ÛÙv½jh¥³+G¬VÛ°ÕÆh²XL,]ÍžÌ Ë´-ãd&œY™¢»^¥€­;‘°J# ; w9A#ôá Œ iUµ¯‡ŽÒ#åy#){è.m×lÔиç¦:J ÐçSÏþŠ¯Ñ ö êr¬L]øzW]-Çië­DÑ›5Ëø»ðõÇ_CÓw,îQܤ1•¤¯»c¸ÇEŒ¢á™™åó`ê2êàö-“³G1}•«â³;tõŽé¿oëÜm×]ûeã÷å*{RÞôl¶ µ®\f®œœÑ''û!\æÍм"§ón€TeÎæâHKn-H{r)—]•Û’ˆ¨’¾Håà-/y«}°¿»Ú·jÄÏ“«KâêmõŒÔ£=|5>Y·8ž@nIfPÚ(“04p—Èo<_¢Àžw‘¹—ð©“ѢشàÔ1µ¾™Ê?¥7’S“Dþ:émÚiš&Áʹ|¦ZÎ77™¿€‡§áèMCiä+±²ãˆ¯±×«g¬|÷Ã+žØìÇ´ €=.uä?>žGç—BÝm]p·éaÙ—óH &—(ð£S-×1ž´4õιÒÜÿšÑS¾Ÿ¹×KïÑíÍ\“Z/ §§¹G,ü}¬êœsrÌdnd7/èxMvíÖ~üêìMüž«ÿ°f¾)þ]LŸ¹"+ûfµ4öÄ]¿á RL#ýK7¿kŽùå*È.šiFƯ:XQ`:nŒL*8Ì~8\®¹¼D'°†ð‹ÙÙ”ZÄDä"h–•œžà/ÐYªÂK©C˜¶Ë w¾[¹ÉÚÎ^ËZËa7L¶K)dnñ:¢4¦Œ|c–´` ãÛ¿Ç4LÍðöîï·bäG Å+´È„^ŽÍòfª¢ÿŽ…ZZN½($Q鸢N¨®EFåNú^°–œšJ(\4{sp§¦ÁfMu5aC˜U°œ)çøú•œUÍÇŽ2síZF³,Å®Œ¸³G¶á«‘ŒLs˜Ô­»á>£Z¼gHr/­fò!­Væ+d2 {€ÐX/Q“;½k.ß¼?]HìÞOZN¦bpù¢™ì®jµ90‰„L"¢×‘S3rŸB½ LùÆñyÚ*¿G'Òø«E}vúC&ܱ)é™ÝÆD«j³áê¶Y¬ÂŠÊ'Ì ÍË×o^ƒãø·mÇW\Ïq¦óÊGÌ1ÙMs ˜»²èPüò•™ôÝ’©UÆ©'Ÿ%©fÂÞ©zYoÏlÁj=š…¦ÛÖ¯)MÊ´­—^a4‘Œ6Ÿ¦ñk¹ ø³0OŒàÌ,ï,Bð—½ù ª&ʉ.ppÎV‘ú¢È™‡-lk8Ã¥µšÛ·™×}æØ²ròä¥DwfBÀe‚È9¥#eü4î8›1wI±¥Gb½i¶¬–ã«à¦ÂÚ·^źøm¯TµšŸhÁlÍ K`XXq¹Q¿=+Ç­ßØqµŸ$|C™¯/Q¼vZó“@敤v’ Æ6†X{!þc˜8± Lø4É«fõ~ìTb>Y“2moÏÒÎ7]§WAÙ“GŽ~£vžê—›þK¾Ëúó½dTÆç{Ñœ ·=!¬ôÞ=Ç Òf¹{`øØ+hz†Ý°^3'êQ/ã i†@q'“æyT!¢ôŒýoʢźÇ9`i ŠbÅ_k.¦¥1V§t‰rNê^ÈÞÍk˜Å¯EÊ!ÈPVÃóeÌîÉ-Xж’ÂĹmû\je #r(÷­b6Áñ‹•³˜Èâ®ÚÞË‹¡¼^—Ñ}#”˜ÑŠ'g–ŸMY¾ýx ½iß¾þHÅâ7wù¡3q–9Š«»"6¶ÞZæ!aD¹™õO7vk »+~’ pN±÷5„=ìò$ç#¯eý6¹)•¾"Þbˆa~…šÓÚÙ䣚ֳOaõÍÇ4—µ‚:®P4®É {òUBjòdõÜÍL^Ë…UG5‡Ç˜I5íGcÈYŠ9£ëæ¯+0Í—}y ;±tìÆG ž%ñÈlÏÔÁ˜J’˜DÂ.1¡ämÎ" {yã.Àš‚Ehe%ÚX«ð¢ŒJ vŠè-Çi,—}¦§qÖõº°O=YáµVikY­,s×±‡ ðO ´‘M ±É±H"qÈ&,BLLθvbgfqvvvvgggnŸÓ³·§gôìµë6—DüJf“†[5¦ªäÿ–òÅ‘l×Wøp ™k–é%" Ò" Êì±é›ìzñ´ØYPG›úhyô¶ ™ç¸óºnÖûiyü|½«i»6ÃÎY’R†?ïK­ã2rÝšKAðI¼ët$ÙŽÃÛŸdÃnÙ;-vžY#Å¿QXƒàõÝ ìCÄ,Ý¿ÑI1ƒ 0¿mZbhX|Z+ø”…÷ÇŸ­¶ ¿SèÜ–¿<“báÁüùvž›{ÿ_§²£/’sà°8Ì…±#Ç%ÕºK.gèûLÅTÐËŠªøÖÅøsä3$ØíØô}9Ê#·û%hUŽÎ5¾v‹-C_aµ±eq¶Î´±SµŠÂÝk‰@òÇ(GZ,½;çY¬ØöÂí;DÌ~»‘â@ʼnœ„äföþ»9µïgâ+å™$­ôWåt»-j®ô‘Kò  ÊT/~…’©ÑÝïI$‘±Våëë³9ZÌmôî<ÇDsf9{’n¡ð©¡iû~w#ægã(Ì;­4Å WÖgbÐÈÞ yÕo¨¶nÍ¿ejÅxƒ¦oNßLw ü¾ÌÏõûô¿Ø2º[·7T¢óÐÿúb1û7ÐE¬Ÿë£5Ä…Yš‡m—²ö"ÅÒIüã‘ÚŠòŸg—„±±° .RÜæv—»rdµ>6†2ùeø{Æ/•%° BÓæ*ÈRürF"\u’7ïÊvõúX'¸ïé»ýntYŸ¾úŒ½uÛ?µóꈱŸ9¿ªn÷.DŽ™`íÕc;µÖß\í°øõhE¬Àã}EAÛ ›ÏÞ¡*©|а½›õŒ|²ˆ4 ¤P¿°YÝ6ÌqŒ:«¯“Ú£ÓòG,¿Í“çÓ‚ñ†°ÂóϤœÙš\…¢ûù C^¸oþë„`›Óuc¿»»»õÖg||y*Á®ÊÑÞéÈAP%ƒ¹-K~Ú!—®]!ŽV4öNå·þÊä5I!E°¿4šª‡78Œg}¯ÕJœçÊ8™ ŸZÙbÒ,×‘å œu¯kotÍݼ¾¦î‡…×mÜhÌ-Í8,И¼LÀ¸,e)Úh^Ë;uãnY­‹ð™%þ¬âÌìþÛßµ¯Ès_ ~GîÞ?K&ßÛÆwˆk¿õwy™™¾îÝ·E­»Ýç] òœ­ ï´ÏÆmÕjÔpxº%Ðz ­ŸSI=+Ix\¥:Ú°~ ÷ÂÁíUÓO]CLãÊ.Òæù‡ v¿pùWÐôýÓ`Ë Îó³Wܱ\k‡3€£„ƒ>ñNóùÌ‘9ì[/Qcä÷îÕŠÑG뮽×;’tý¿þ˶ëÛ{_¿ÕõäN×éëÎU2¬–¸jJ7eú’Òz䎵$VOæÄ+µ5Ò£ýÑdç®Q[‚ÿJ­×æá\h mC”7) Êáåu^7Š9|âoÊÇÊrYˆG —¬Õ9$vs‡Í€9ë"nïåJ»vÝ„÷Û¯¯ä¤Âýý¿–Lßgï®ßáÝb>#öM=Wy¸¢R&¦èÇ Ÿ­#êôWׄzirÕýÚŒœ€‡úEÚ6¡íu$‚—ë‘8 ò&³“ËÃü}Tâ8 ¥üõÛkÉCÑ]«”ÛPÈ=‰=ÌÒjDшE1³ÌSqô“u.BÙwßÄÕ ïíâAÎ>-öêw~ûwwõ×{ó=Aœ³ÙC6L¤3¸âÂÆdÖ5·nÚî1qe",„h¾ìùÔ½ÚãˆÆ¢Æˆ ª‚zG|é=õÎíÙnVÝsýíV[x‚¨â ­ß "œ¢È©eÐØúЍ¢â¦š|;<‰×}öHüqη×K£Î¶§$Z#ÕõOºj‡¿ÑÈœ½;Wz›Á¶ç¦©‚bòFé¿”"þ8oɹôMœWjv÷Ⲋðþ¸Îd2†’bH»ïònÔÿuõåh1z’˜›I<™íø`¨ƒôýF ZqœÇD^Qª½#'¡ãˆ¥Ì]­‰C!óOÁ!gቻP9¬)M¡d]E3ï‡8õ·ò/½"qo5úÂeɨԮ¤8ùË×C³t0î~j¾~å¨XDÈ( –ûb%ëñÚŸ°(ŒÀÂ-˜a˜DÂ&0‰„L"a«TÆŠui”9Úž~n¬ìwrºsšÆÏbª+¬®PM õfF[úD†™šâ;p4?õgm‰ˆÊ”¬k.¾'j`ùÜEMC’1Ö¶­^”MW”¯`!Ýt8^B‘›TËYi"¹‚Ži$³gFÍüÚõ²šùáåÕs™9öX ËP†B±LÆ Éü¥nëZ~ºþ|cÓŒ½33Y‹©G¡ix¡|б¼Ùç/E×Ò¦7¶êdjþ^CSJÉ WU!•—ÀßAï¦[2¹XÂHi”YU´Ö±à±Nš!ä¡í–ͳ®ëô!Ùpù »v‡~çÑc7,úçvjw-ãíÕ¿BÕš7èÙ‚å+´ç–µºvëJ3VµVÌ$W³^` `ž# b”HÈLYÚ©˜± 3‰ 3“tâLý³³³»;;;;?Nª‡P+/Íü¤]¶m(/C¦Ìp‰„ ³ž¶ŸDùæ] t·lMHõƸ¤'' Àƒj(‰YM @²“n&ص^Qsƒ±§¾LÒnM‚´¥…Øí»1Œ\—…ÆÔ±kó ’1yoúýi2RZ3›lÁlv/ØØñ6ÿ†z^ê³ÏUºg¦äß$#öL>Ý…•Ø}A,, š0ùÝBtÐðC×½(ÊRðÓÖ-¢XÍ/‰ÉâáI9‰IX\Èt¥©’K31ê#=ea‘´$ji½}¤ŸŠ?¼}žÓþ…¶ hÒÈh¦§b9‚ý²SPÊà³8Éíásxk‘LéåqÖící •;s8HÁö¿û¹ÇyÚôµeñ¹|”µ\hV Ëã$ÄäÝKR9C%ŒÕ+7Ѽ¬òZ†;•âŽIroððEuˆÙ6jmº4Ê7º‰®:x—HÆrKô/ZO¿ÖF†_¡ú'¤X~T!>Ë]5qÃåF–¦K&Ñx³ˆÈœO¯–Ý‘•¼½;zÑ 8ù; dÎnÅxþØ<ùÐØ4½ î¼ÆpbnÁI]ɱÚöjFö‚s›/›¹4C3@2KĘ׈ÃÓ>zQ|IQÄö㨪®Pîе+zß‚SáQ»žÎ#þHIE{A5êBèÝ¥SítÔGŽÓß\ô¯§Î÷ß=kYF¹£î»ƒÈ:–Ÿ´m%JÚæ¿–ͼF 2HØÊ–œc!2éØIÛÅÙÞ„ÖkWëç±ûošXãíúgo2»³·üÙASKûÍÖ|Mö0|zkzÓ(#ƒyòå·¡†6t1I†Â%^>Àûs΂!°þdÂé¼þGqEÄ.ƒèÁ¶ Ž9KRÌã²Õ²x=ÎÕ(g‚]ƒ’´m+?‚ÛK Og ™Ù±ûÔ’±ºï‰—êk¼µd­;NÐK[”¬Fq¸Kn'퉢§fÄFãÓô2Ç CäÏÓ‹üÓôLM×m^›nWÑü›G›¯+އIaÔc‘ÛrˆWý^ÏÚȤOœÀå÷…ÍzÛUU„-Z§«ñ¬í"ðÎèè£ûfʵ¤ðæüUŠï(ñþ‘Èg£‘Æi˜œñi[má "ǾńÐ4n=Î[0šÜŽmزòQŸE©P1¶á5œ…^ühÛ³S¶ð;DÖk‡lÏçñIjÕ¸‡¿OôÿX,?­¬‘yŠˆJý5nÇÛ&pé?•!Q –5Þ?Ý“éöÙý/´)Ü|º;w<~%¶x¼ð¨Æò«Wj𨊖¦²Íáø£KÉZÁæñ<ÁžÍPž82T²C«q5¬lI4'JZÜ·-§/8þšbžˆK…Æ ‚›—¬K˜ø£&wžówÓ?“o³ù7Dìÿ§¿]¬‡šNÛvGž¥ž³·¹!uíŶ»‡Ñh©&Šé¨#o.õdêÁi•VL…–JÊ!Ë…1œG£‘6Úûî™JGl7 iObmVÖÍ›äƒ,G Öž–߯kWdˆ¢-V*¤3JRÖ–F®pwú[ßÌÈYíúòc«}{ô>PK0³÷Û»Nåéº&nÙþ{òâ˜ÉMç6Â’*¶Ýý¹pFSŽ“íbŠƒØ³yKšª\(g"ÆE]kø0ÒDdû75oõŠSÀÛ×ôÙ$”ä Z&“¦i9ZâLbðk ^Ãñ@AË––PwyJRœÎR~]TºiF[ ÌÌãjÍ‹ ÿÕÞ)¥8{ߨٟí×LÌÒô«¬+‰µ® uè†)Ò¥‹ˆG¢c¯ZO](J Íé.§ZI-uÚ¼õÖô’]ïìçé…l~Ù¶KÛNѱl³@,ͰfòY™aòv¤ÈÙ²q‹9›°ƒ³7™tß©û‘x gh †»EFÏÿ6nþÍ÷\{.ªƒ[¬#Çç,ê‹s˜ÏÑçv×'Hì®!$ 5ÑQ ˜GÌl“äÁ QbŽûumrÐ&žÜ¡ 78)5MÃ`Òò2dµû£^KU%Çd©Z«S'‡ÍâìgcžÂd ·‰Íâ§’e—”§j«Ø‚½¡ˆlÖ¯4IëÅd%vc ’3nÙ¤Š@q’)ÙŒK§!ïÄž þâØžtï†ëÔמO¥t¤‚imÞ ßáÑ‘xúHñ´þûª üšm‘ªÚÙ÷(‘ì?ág“Ø­qìuܘÇعjZ[‚fù%ã¾JKObBbvÐö,”»ÈðWÕ²û}»ß”bâ|ÓRèm¹MY»êë±Dß³]Œ™™½Š„.»yã®#ò±Ð܃Ÿ±oD0Hퟯ¥õ‘ÍÏk p™Ë£½k/L;šÇÝš[RP]Á§êœ«¢•º™J:~'ŸjQm7+mú~µG9FyàŸ'©ì&l¯f€K9cóúýJ[N¬ÙJ•ËF@±=>$bIaòxlѯbbŒºv â†HÙ¼¢”Š š#y ¡%­{CÒ›ß~h¨¸ãói.t¥è¾ˆûãCö§_—ËzóÊŠ,Ÿ<ú‹©Â<*jht¹»¾ƈþžUݼßÏQ㋸Éäo\yþ9\D Þ¿Í‘@FÑÇ7þÒ7tk7¾½XºïíºïÝ»nûo}?MÛýßëºjÜ{ûV—z¢ÍE ésYjè]=ŠÑãŽZÐþ¤€ÙV;r<¯ùÙ YÈ:oý”y7„ø_Dôþ9Òèwˆ5IDk´p_Û³»¾Å˜ŠÃ»Ü“ò½‹UÕíÇãW±©ÉQŸÌÞ¹GñsôÖý¥ùÛ·íÆ¼U¡®¿ÊÞpÏ8·~ûiؾÍßß¾7^A¢ÜSM£4ÖÙCö‚ì÷m½nÝ1Sv·_yJ“³ç¨7ä/¿§Kð„mµÇ) ‚ˆ8ãU¹¯j‘I‚½ÓgyHïhZV•¢f ðo‚-ƒR×ðûŒ#ê2“)$®NrÉ!Ï,²Ÿ—T/RŒ¶®œmY³j7ïîïòɿߠfû33334¹ªjêÅÆ­«h z9])Ù(AáÑØš$v®ÑÚ½.“ p-Ò»}©Òœõ¾ö:?v÷ø“ûp¼þá·m‡»NÓ±ì²BÂ1IŸÍäó'‡ÉàÑžFÕ’–_f’Nºó.äE^;h †»EGßÛïà-ßÙ¿ý`¶Mß,£eÁ$Õcp6ƒeGÛÅpJBÐßÙkµbdª+mŸ_ðA¦ïLn…7H£Ü¸º[Ì«ù9º’!êÜ…g Œ=WaÆÃ¸èV¬ÉjÆ«’³-cÆÝ°ÐÇg9§æb ­j[!E ù pÚÆdžµ:ÛNdÄ×üªJSÔ §ˆÞ½¡œŸÌ[·h¬Fý ðöïú Äòx%†Gón¢ {œ¡®¦¼ØD«­÷/ØB5ø êÊáÐìâÜ)Ù™£…Ë£š`¢cƒ½`þ“]µåǦ'èHOžæl<{ âmî\}‘›mÒjüRe|àŽ¾×¤ýLí^Û¾ gz• ÁÁZ–Û;šžV[Tk6CŸ³c\¡Ö+nÒ {@ÐY.Ø:wx,ôݻ֕ټ‹®Ü 6Á„‹Àâf˜ì~jõ50‰„U×1:u‹ÇïßCMh8È’AžxV깯’Ý&]&š¢sxVóÚâlá+µ¿æÚ% Û$Žû•ßÛöo$×´Ý¿n’huMWdÙå®.v"×°yLÔ‘Á«d¢Ôäl,Ãí߯jŒ¶+ÀÌóÏ ,þ™å”#g·MæCß¿èµ ßœ+#;¸[_ V†Í(SùÇ‹+Î…G=]êúÁËòò¹äÉ­$Y­dê»Å鱮 ŠðŠO:ý¾(¤~JÎCÙcz¬î†¡¦òþ¥^XcÆ>Ù¾hºW&qôW Id¹«PÚsô69pñ”Ç%¥å0÷0’S¥?‘ƒa†Õ,ÕÞC±–GÙÜþ ¶lÓ¶ãÓ0ÎPDQ4ÓX `ff'– xžôyÏä¥ëÒ¯²z‹Êv]KêJÀé- è)åe[åñ-ë™@>K'öEVaIœR܈ÔÄCeˆ£´Æ(¤\›õö_¸Û “½󞵞ÄW’f«.«§ïw³Ö#c€fÇg°šÎ·“bø¬ =Ó%B+! ÕÉ_¨Ñ]šX[¹ ¶2h¤vo&žÅQ‰»ÿ7G³Ììßvò®í×`%ص´Öý‹"ß^<ÑOi1û÷¥m/Il³ö§=+ökñyOMâr–ûA?®ÜÖíNy+¯ÇÏ{ 8p†1‹õr®îå1xþG‹Zì.Áäþ|Ãõ39°È]5HÄ]áo'˜»ÚGÿ¸Ön›ÿx»Ùwïÿíý7^›üÏß¿ô_¿ìµ¸÷ùÕ™z®ÑOf¾Êb«á´õ}Ð?…>6ÜÞ£äij[yím*·giéÓt’c˜>“S¥øþ;Òè|aƒáýHš|aÈm¹ÍßeÌ=2/ª²8ýXÕ-8ƒ€ iu£~Œå‚W!hßK`ûùrû~Ü Š´1õ×ùYΧ}¿“Xòû3;{í¯%RÅð‚2±lk,D¹ó³Û—}ÕkÅ…Êý—-ƒ`H Ä,ºå-ûMð2ƒmíË`a9ù›{„¤<<ÚÆ«1¼¿í/@ÐôìÅhåŽ8¾*Ûµ­ã6‚8âã/ÍQ•ŽÓÈöæžy_—U~šFšvn»­XÝß·ŠiŽ'ww~ÿG]~ž¼Y™¥(%ITÕÉ…eX×µÒ&ô§f#…Æâ)ÚÊr²Ýœ}µ¿…úU^8UN•×{íN9ï­ï®u½bç¸mÇ›^Ù²ìçÀ{w)š8DÀ"ÉZ²ñ° ‹“‹tÎì¤E^¼´C ?}´Q}öý¿~=öþß¿ÝHY*É„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&y¡}ðÅy*ùÐ~®ýc\Å®oïŠ_GIϯý6ñ“ÄjÑSö¿™UjŒR­0*ö¸âÙX”Jbò£¥Ž ‹S+¾çK;´„zDR…ùY|–øÄèè°_ß?ÇË8ŽCI¦PÚf«ô/¿|àÒGHô ƒ¯V„FhŸ¦*Xj•Ú²Àáò¯AFÚ‰Go°›µ¢ßQ"Ý bWÖµ9\OjÛp æ ûfíŠàÖ.ñ» 0ÃI¼¹+™p¶¦²r…%i#{$z8SöÜ[ްèOâC"–ð‰„L"a˜DÂ&0Š8³*x=´Ð\É©E‰e?OQ93I¥°Í Ò.TTd°Y{J¢?Ä߸‚AUÁ˜á{pi1Á׃ØÝÛKÊ5MË`Ó.ÏspcŠýg£˜ÄݯG°c @”ñ[èMÌãŠhâ°¯W™«\‚¶B™WÈT©j ׊À°Ê=¸¿”r ¸KôìÒE ôq›3»y ·bîØ Ñ©"^‚ªŸßô_§í ©ÒýµñXC(˜ÓTeµnúån} ƒµ?+p¯^Ðð¥ÕÕ qTïO/l”’úµ‘èQñ¶áŽ¡7ñ6£>ý}N_6Üï!ånemF"àü]%=ÛWe¡$ß!¶‡ž«“Ý¢g¥G}ò—"µÖW3k·¬5Wý1Û‚:‘Œbÿûëi f龪" ÎþFaUþ1{)Ç•é§à‡RF]›f·Êgö<þûºg‘GŽˆnX.ORõ`í5}ðˆ¡›?æz\Që®{Ö¬._ÞqÓÊ8¸u=RÌ.UÆ]oŽ´Mw1E¢´½pÎPÖëì‚pØ‚6),ee·ü¦Ži™ÙNü¾±³y¼ó‹ô]MnÔ±“¸»y|E3ÃÓ³¿¡nì̤˜%#LUË®MeQVÑ$¦šD‘€Å"+’\všI®¬}¥½ESM5M>ë®xáNùçZ箵¼[aß·­º8áÚ÷M·gŠ"#Š-‡cÌf£ŒÌ„Œã •Ë"d"DBÌäB.îîÌí^*µ`~à­.íÓ¼PÇ»7Ù»JOÌIWL"†-JB5f’×&Éæ¾µ#®4&áƒô3¸ÀĬ™E²ª³€.,òØC¡HKõw5jÁÞÊ½ÐÆ?çZÝÚó­CÊê‘[ÅKVŽÉ¨e¥Ž\ö“°5›öZX£(a¾Ö±Vî?N%‹³`nc6 Íf¤Ëîä)[‹b¨NâlE ˆÙÚ+1x´Ñ³¿n=É?NpÊ';18yˆà‘ëºK2Vþ—–-!sEŠ pÇ%º”¶J#‘Z˜ÆéÙÑÙÊ©³Ýûé/Ö«&nîƒ>JaVV˜`’£ùOAÅlXÛûOX¿—ÆcjGaÒr’Eg|ÓiÃËs!+R©N®á©Ò7›nÁR©.>8Ž}¯[Õ ›6JZ8L`¼!™xCd;j¶ ß¡ò"*ó—®«ÊDÆïÔNìl‹5"ž°©½“]VmÜ”„ùJërä¤xQ­ânóNÖ±åzénSß.Á<Ù§Ú œñÆöºš"­\ŸÅÎõÀ½­¾Rë»qî«FO÷0èU^q·KGxÚr@Ì}Ò±GS¯©d‰š1xöèâóvr˜AœÛ«œ›¸±ö‹¶ìJR­?¾¿Sï8u÷÷]ßú2¥^³ð•¡í€Õc hÝÛÛ”ê2¶®s¬&¦v× Û¢ö\H÷—äÌBðôîÜλ¼êA Éä¸#Ôt©Ê d£Ÿà×Ó/qþëS’9ŸGÈ©`Õ3õÞ1}G1mþ3Ùtž¦s”2x<ËD1Ír*tiá6CŽ­³œ¡B°,ÿ‹yG“8cyÇr'æéê{^8Z¾Ôëgkä(<õíKÉãrt‚ªsMVbqúº‡YÇÚ§hB`Š<)å<ÂÄÛç)­Õdùòæ~Ž7µ¹6ÖW|Õw÷Q….sRNí¨]³&9ïvs}‡4=V¨‡E¹¼—Yþ‘˜8u©£ñ7jãán,Àoz=!¶o`Þö-÷1¾ëÙ8¢jÐÁ¿ëšæÏ¨kx¨oÝŠ¾O€ÉéY©¦†… ÈdG'®ÐÊùëñÊŸ‰-ÚÖËÊ;g`r{ ­s‰Â`°ø¬./5k¯‹ÅÏ^Œ¹;ðQ‚•!“7”Éæ£¯R3µrÉ‘\ŸešòePzhñ3q·,Ýib0;*ö¸å‘‡eIQ^ºÛ¥v\Ý:È„RE^„N!h†ˆ¿r\õ\ž×Ç™wÆe‚«¥êŽápO«qî†ËR„¾g‡[\Ff 4³>tç’nŒ¥ê8†=+ù}rfiJÌþÝݧ·f@.ßýè^VÙ›Ó7ÅÓ7®½¿r\”¦ªÅ‰"°©+*àƒQLsÀ¢±‹AoH J±æ¦î×E-ozM5zïŽ5½ý¼ë똦žo;xEÙ¹í{DpË{Ř̈́2Iþy" •Ë#ŸMæ`ÂE×·u^*µ«»¼à…ݺwŠãwfû3¸öÍý›˜¢®˜EYe´kônD÷gùÉå’¿Ÿ¾ž³ÜÚú1ŠSW3Ÿhé2 ›³4k÷âÇÒ@^.X`ËIRÚ ªÎ#–«lC6¾1ÙLe O“èßÙ5Ì}xè`3øù`çE¨29Gõ×ú|Ö»XŽI‹FÎÊ£i-¿”Óò YµJ†SÒ!†cw9b6¦´NÞÞPqÌ]3}TLò7Cò…€eu]äÉb¸ |cy¬îërN2êŽe±‘¶ƒÒƒ¹iȉa°à$Pã=…žìÅÉ‹ðÄùÓ¼WhËe›oãûúÅjùÜ}ú;^‘“´up»¦ ¦,]«2Jؼ­[Å‘Öv8àŠIlk¹êÔòeÇŽG 5<µº•íÄñ”@X¤¯/^bݳy3¸M »³4±oà~1F3~`*RÂgeqX·¢ídØŠõ¨Ž—äw9Ä­†&Þ¿C'ʤò‰¯Ç·Œ¯C¥×*/®ëi'×=©®yÞ·—ýTÚ6Ë'OVÖóû-Èš7–¦¿‡ÈælÆÒ“„Npc«Y”CgܘɜG·geJYà˜§š(Eûè¥#gëÛôæâÏÓ{è¢}wA·)Då’ =.ºç¹Ru}¯z±¥®†Ñ|vL‚œ„NXÅG´wÇØ¹.)#ÒÊ 7*l•ÑILÔ¸[‘«Æç™Ãcu#fwj»îÛ§qî@ú—áq‹¼gõü„ÆÆÅÜqU3` %qh£3ߘÓ'ê9ýU`±l×~δRƒ7_»“7nÍ÷~—ã»ÒÍy¥ þT¹Üd^–hxž=Ôœmu¾íóÂ/:Y¶›;ÿ‡}t½PQ'ÿ ×íï°ñö©FVƒ˜tZ߬ik´7m¯+uÙªjÔõ ‹·ùY£Üaˆ‹ÿlÃú“êç&î,}¢í»˜«@ÿИ§+ÿZïÿ%Y?´Þت×z|ótkÌÕtUNIrqóÑSÛ¯ÞœÉ+—wª¨ná>s›—¹ïfuÜq⪉káº=7Bßßdîv·ñ—mñÐÇò–W•¶ÜÀ¼Ukr\X=oLØèUŠ­J†á(ç¹>]ã Qšl¤˜èw6>!©BÖwŽÆëéòuÜΔt`Ù=7–k™;ùWoŠ›V½þ†7¯!»‘ŒFg3HÕaVø,‡·XO!s©mº®º¦êªšE^:,Ÿk,Ó3ŠÜ ÞŒ— üï’¤zQ©’2~WúþK"iY²I¬co‹Y㩱[‡5Üî/ »ºöß³ï~åŒÙªˆÌ_I½ÆY/)¢ž#%¯_òb±—#·‹zÕÞkm'–BX¤Äe¯ h+$íÛŒ‘Ù²7ŸNá Jñ˜öpÈbâjUÿ)u!üñ©™–ÍÎÖTƒ€³o[–gu%moªã[ºN;¬å$÷ö (ð±[íAEEe—U\CûåÜë9> 7SvнStlbœ@ýøUÚ*kã¶ ™~©¦“;-‰ÿHÍ1€F#òêåþÕìOíÝÚ{veŒÿr„¥ø?äÍ3{é™Ýû’à4¥5TímÕÕ%e[l„S}À`QXv×A.9M$Üu©»j¢ŸqÂi÷÷qÇsÏ<ë\ëZÅ6=óyÜnÜö½¥£2–6Øö,¾m£ÝÈäÌîZð2""#ˆœÝÝÝÕxjÖ¯ßÁ^;nŸá†8ûfû3øúoè¤ÜÅuÖ=2³I#ò&–Çæ° jydzWF‡v³Ðìc›]NIpÑ•PrÃ-G%;IdûO¾¹Üº7ïbîÔÉc.[ÇdhY†åôlMRí+uäkÚ©j¹Ç=k0J,3à K‚&$,íÔ„LH DÀ™Ä„™ˆH]ºq!vvvvôìììíéÕTêhù·Z.¦òá£DKŽJ£Mq@»*¶>ù׿£e’”DÛ×zNšºhÆà¾ƒVs¦–¦V ©Ïp6oRå'øw)±úO Lnñr d‡UÚl¿èä66´Ç‰ÌZ•ÙËyת<6§î]¯^»rþGp©oø§£î»šŒÞê9w< ÿá$7o’1oµYK±oPL"!\¬=}cÂmHÒØ øÒ5‰-½uDÀZ^•ØîÑé¨À?Eå …ë _¢ò6Ö¹ ‚j·¼6jJ¡Æ³Ùu|ö¡•“ ±ãeÆä(lÆ$k\¥h>Zy<^Bœ¶1Ù|Mø]¬c²ø»W1™Äi[±„6â±I ±ƒ»‹¿NÄ$/Ñ3rú8ÌDÁûbvéfù`UV!4°`U»GR o0ñÖùíîi%f‹4qÖµ­ïžœŸ >zÖ·­ï[[[Ö·­ï_Måï­l{MÖÆë ÞÇ‘&g,Uì½×gí™Ú®> »;³ôí^S–h`9¥ŽÿŠY1ÿ÷³ü¨wŸ[P‡‘Ðñ kÅ©øúÒj™HW–MèÌ2ÛK•´ò‚#6¶+®TK•9rtH(²)´»SŽw›¿ r-xš\ÖŽ¡äÞAÿ³jÜ}zPcpù+ã7lÖ%lÄÜJ­I¾A8ØÄ Ú7æ5úŽB±ý^¬3ÛõßDu£”ÿ˜›Û³?·X<ævýtÂ]"*xºÕ›Eä‰)Ï Zîµ m]fÓx%¡ÈIJ­x›ˆŽb÷yµNDÀh¢=·ò_Lƒ_×±Ú&~¦hyÛOÀe±f.G§SÝvœ¬ajŠíX$¯«RÓ³5¦©5Š*3mEŒÈÁ4Øû?SFÅ…FYŽÔEå–%ŽFûX*Ðø¿bNÏ9XŒ˜™Œ  cf6ñ&eV1zFÓt‰Ù›´ÂL©’£n;fkðí”*™šX~J±ž°2–ÅŠÂPÓ¸ÓT»qæÇ!ƒ«õüžzïÔÃóI{VœØXnÉÞ –aëõ‚<°yFRSh›¯ŠIJÅÉÄzÑ#øRi¼_¦šGþiK#¼+hï7ý¬ËÕ¶eŠatÝHÖl<Ž¹ï®Ž]>-+öb‘''öÂãNF춪¡þ3¶9‚âÆœ}xCÄ{Á²Êö·í·nØòR;³5xȵ‡`Î*åå!G.¿+Y?ŸÊ’ «ý=³íå¿ »³7X+ ÿ·ÔÉ;/·m+xûvéúvã­äz‰Üך›nYiª²ä%}]R˜ó‰$ ¸ª*L¹ßâ<èR![â@‚‚J)´EáE–QJ‘óFéJ_——ªqW›Xã­’«RG0„[ :ñlÆï4QÊsYÌØ±!€ü“€ŸX›©^ÄíÛ»´ÖíHîÎݼO/ÂÞÛ¡™»~›·u#Á¨šB°<§JÒ›ª«Ç3º×f¸Á«ÈŒHó;Ðú]cCyu¡9ä]t²ïCó¤>¿‹Zç1}ƒ·í²¼4ö­ãpÙªWgjõv —5™¯<¯3´0dnÙŠ&yåvù]äÿ;ö«ER¬åjð“ýÊ(cŒŸ×^Üýz÷ûzR®aêBןȕ ´ë)Ÿ4g - Ò¿‘7'GN|%ªëŸST²7â“YDÍ·¬*¾ Ëã´GæÄMdo9Lj·Ëà³®Û²*Áç¯zú“ÏŒqˆwË­5ºGÙÊïÙ_LÌI)q€Œ·úP:¾g`Dü¹fÉ Q9xr’I–\œž$äcD·SÇ|)Ç 'ß*&§<÷Ç|u®¸ï޵®¹ï޹Þùëž¹Þ·ÏZÞõ½o[Ö÷­áë˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EO<ûþÿˆ{ŸúûñJøîÆòwö»úWò~ÿõýÕV\×ßÖßÔ|~¯ñ?ÛOéßé_é?ù¯åÿ¨Âþ7øÃÈ®xÔµýŸéÊ…ºOòÕáïI<×㙄ÇN×<¾{ÄÖ­ý!&\•Ç .Ç¢„ËéGB“ÂïêšvØ,oµ%–}CtÅă¢-è²üÀùz:aµÇ¥Úí1z‚4"«M<¹$©-;VÍÒõ±Ô–Õz¤ Óá¯zàÄ×F#gV(»´>vŸMn!Gåƒ:EÛH¶O]Κ¬ÈDf|ÆÕ3ch•µðÞÑb@æU|ݼb~ïÆ<š½°˜ãSx‹¯çêC,…¥Ø_¯:$$·Öµ„Yž0‰„L"a˜DÂ/Ï|p§=qß<÷Ç|õÇ|wκç¾:Öõ×=s½o]sÖ·½uÎõ½o[Þ·¯¦rÎâìBî$.Î$Îìììý³³·¶vlííIÝE9 UYÛ͈ù^(Y¾ùùïmà¸#¥4¿>Éœ4HUkŸÝ½*%Xç¤)g‚“H&®éÕÜßæenã]‘À)ò¬ÓPÙ†«c¹cCërs”L1Á$â«Ý›§v~ßì¿»¿&®¼(¬3Ë^‚’ßJ¤ ËÂujز¼„1ˆ¨k=™lE,fð–è®D莫åÈD¤ O°·´:ú¿»œ 2Îòïbç±F‰n»U¸Áç–  º¦›˜ÕìØ…æhÛeŽ#ŠHM¬3HÝ>²Ríâ¡pÛÛ1Ó@.ý3·c=ˆæ~úïáwggõé|ûtö ‡I $7ÎÕJ+¢:ܾ¼O¬[¹Ì>–ï­¬Ð&¨ ÛÑ!£øö¢€Ú刹{XdWØÉ$àWa©ÂXÇ)'Îrnã$g,o¥®k IØš9ëìw6.@´ÑO'—ˆXÓ¡š8X%S:Ñ<²GÓ4T«³³?™M5¢nþìðŒUG¶þ­aÙß¶gé™ßª‘PöíœÌí·=™1Ç¡Ímx‡ÕôUHÍ‘1š/ê*Í*`¿Z½ÉžCë[†*pQU$š4ÓŽÿx¸l²\°ñZ«{R§3ã÷Ï:ß”q‡o³M3ã¶œWé©få´DM_;-®æö­'94’Pì¸'§‡9†ÂÇ._ph%Ž:½?Éw!U™¼à’埨‰›÷ˆc–(,ÄÌݽc‰¥û¼RHíuk¨ˆ”‰iÉóímN´¢gì…Ô’\Çb’pÜW´žäÚå…¦ZÅ*k;¢”G%(&fyäÐ$-ẤZéÞCع†+¶5nIÚw{§Åa±yÝŸ'˜ÄÏZP¥Ä»äna²{uÚ9ñ9LD–q7¨¼1–g¦pÈ÷ ãÜFzpV~ÛÎ(B9›üá'èA~Ú@‘†A.ØÅ‹¶VO5bœ˜DÂ,2}^BíÁ°éô|)$xÕƒ/ ËÚè ›aIÎúÊè »GäŒ.CŒí’±ÜÿxGvW „¤¯šæËÔ²ÐfõÌ”ø¼•pžžŽHìT· Ö½¿RÀMO%‹ÈÕ’ZyOŽ2›/«ž¡9°ËÈYlÅ3Ç V«I¿e5°¶åмmYåyŽXâ‹ÎSxÿ™Rwê9ÚÃúõP%¸íÛ»~¦ªxôìý÷×];¿Míz¿¦ý­ý æ+úTì ’Á+J©•n‘ß?ie3ÚöD>Î ¸o­¢¾«bIÞøÞ» o]a¸ã Iƒø‡–xãcâŽiñ˜ù¶½Âø4Œýà í;VÍêsÚÙ¼ã}¦(›¾ÆÁtìŸY)wðй#vìÆmp~¿wÇ; þÏð;ÿ¢øíÏØ’$ÆHhw*~%•wvžX׋€J-Ò}v)0¦¸%Þ¡%ù9_¡,Ò$­þ!ÉÐéra=Ú§ã S—9ÉÛ‘G)€R§®ëZÀFÆÃ4Yë{!Ùç?ŒfÕ#–(\±<¦ðDòÉLÑR¯Û3¹³Z&wýž!Š »·ïÔîÎþ™únÞ;²<¥dÞˆµêÞôs›„aÀ§˜D‡ÎUd6¥–ÂHayŒL좽0a?¶þnzÔ}ýœICc«ƒ€Sâ†3&Õù‡Vãé-¾•Åõr²Õ¡£ŸÆò~ßœÜðÙüx³IC-‚Õ¡ãl&F³Y*ö¨~e޽>"Ý:ÙlÕóWÉÁF||öØ~¦éƒ¹Dt«Å^Húf8åîJãØŸ‹H$àlñ¹Ã*ׂT&šÝì¹m¿d@\œRàI•x[LU9C¨oÕ®;èjf#3ŽUõQZçh¼ÐXy4t¸ä]ðê±Áâ#\œ†Í>ë¸7 ¥jÛZÆV8¶LÈn0Ê0‹Éñ¦óšÁå6ÝÂ'v’XðSfâä -y"_n­G5´EájÎã’’ÌБ7WžÕ€®ìïúBåhå+¿ÙžVêÈíÙ¼QÀ÷’ @Pµ±i»ÖÔÅOrß*©ËÔ>¿‰0:­³:ÚÄ£»KPÇ”±ÊwÒå”±J¬jÝö¹ ªªwןöHä]¦¥´ï[–~¯`%G7²fr4Ãàf£WnKZ ®"ÑÃDÇ ]b§Rb‚­x‹ßE1{û¿‹»ýÝÝûwöý©ƒ0•%0‰„PÅ£HF쓚åa:¾W–¬dUˆ[Uƒoš1‚©˜LyÇG†àÇ5‚¹•ÇQ¹5ÓK²9èþFÖƒÖëí®VÞÁnäè¢)󼚌-$ÐŒ¼ƒ”ÁñÄsK_ÇæŽ±ï™=pmdcµg•Þgø¹™ãhŸ˜Òwê9ÚÃôÏÕP–Û³?};ý(MÓzïß^½¿¯kù»ödîžÖ‚ù~þ“‚©«‚+Ûèõ}V×¾‘KJlãÙmK2#fÔ¦÷Ê)pa*­Þ´˜=¢™ !ËqΑ0l<µÇ›v&¡—mÛí³H~?O^þŸªfµK§3ˆ¶ˆbr°&Q¬”»x¨\‘¼œX ®>¿Þq±=—l27?4Ô0šÄ)ð# ˆŒZ²Ú®"ý,áx É)ÄMÉ˔ޣ?²hl.­¬ŽNìÎ9Ió§SSHÇñ|[¹Zûdq•yWuÏí“ë–%’I²ªÛÒ â¹õøó˜¾f­W*oŠ ò4íd*Ò½Vƒcç)ÞÉÝxf ð2£Z(fffœl½æ•ãnþ2/Ô» HÜùF¾rC¾'3ÖÌX•QËS+îØIßAö’¨ ç]ÃåQ:°6BZ!p¸ƒ$JïZ%RI‘Ƙ¶Z² køN=Õ!˜j>Ž´ÓÈÒùÄÂI*lÙ¼>goŽfˆÞ(ìÀs ÜRœ†uÿ/„™ÚY-Ïß^_-» ÓöÌPÇ$puÛvìÑ3?îÎÌÝfpï8yî¼sAîEÓð×Á¹ûQ}ŒVÐæ7Þ~¥¬}ôòÜÌ;š‹*àA .¡]¬¹äjÊvRê«Ý‹9Ê—³T’†ÅÈ;¶w+öxì¶ÓœÈcßù!]…¨Ú½-A­u‚0„B:ñÇÅTŠ•8IŽ•¢6ûpD'÷wÿ0‹}»»¿}»»»ûwu3æ ¥&0‰„L"a˜EÔH#ìÆ'ˆ¼©¢M‘6É ŽÈByb}fs@ÜšP%½Í±ÀE–à qKU!%ï®vEªµ(_Cüxi7ß¶>zÇí\T³Â Yõ37=¨AN>±eG *í‰uÚÈyj×{N(wmº§²k>ìE|<ëéª_ÕP/î-/NDÚŠñùd}ÄÜö·™Ïy€Z'áÀ•׳Æ{Ò1YKSk¨}‹rŠ¡®1+OxDÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ.¹áÙ¹¥Ñõà´Àhen5ÙÐåµÞÑ ¹´eL8µtŸ=÷´ÇVï\qßoûyëMl‹Çà/Þù!o Oî?ª_ÏI2Z<†5ññåõ+Êe…˸p‡íÛmFGNœÛ$K³(róB4r dµ±X6˜’.mz{ôÏ’)ŸWÇX[,¶·¦©t×rZšä¯ ƒ]”´ÇIé$¥ÕE’ÑΞâλãžtî61*n×lS(üމw!z®#&b#dhX¥4W0ˆ5læ*H¦”" ~b Æ[Ø[°­P†É„ý4ván ´ % {ïÀ˜™ÆXûòˆÙÙ»s㕆AøD/7–9+M[èV +» à½5C& }”¥5s›½¯ÐèWÒG^7844?&™œ<Ð}¦óÌÆÓ‹Æ]g[ïšãú9 UÍ»r6mjŒ/s;„¶0Žó¢×o¥“eÅÖ)¯Á<ŸMó€Š\ŒT_`«¨eòÔõöâ;D ¡˜ŸÆ)·­eýôЛû ]›ÉëJí+~¯ˆ¬GJ¬¾jµ90‰„L"«öÕNÊÀêõz×óÖ:ÌÐÍÿÕs®Gê­±[šxýpZ¯šîÑöé*!¾‚b›ñ±âIr€l²ýF;yŠ>í­3r½‘§CvMw!Èš£Ëgò|‘¶íbÕ×ù,\Ð31ÒÉYÅó³XÈàlQÉêù“y'¿…üØhæqð,W"· ÃRvaù%.¾žaL6£r6fô±Ñú`“ÃÊ3‡+¿‘ÿ<ÉL¯e2†¡nÆ]/Ã¥qOªûé4äI„ßË‘¯µsµ1’¹Î£É Ö–(U£Qéäu5Ûµ6‚Å»|`åÛ7Ù¿ Ü—‰§ˈÄÛ›B¿ñ•]£v ,ç²õ`ÇmÔ÷¬®*®½“9Yã†hò¹=w(QÚüƒa˵ “Ój™“Ã!‹Zü¡­çy˜|œà*Ñ™J{vp ƒ¶ùbÈ<¦þ½ðì¢üÀ<áèÙØˆôŠÊ‘‰T éBë¾{èBNªZ¢¡Ö¸äÅ›£*£÷ÿ²1]óÒzÀ‡Œ¨Óßcå0×f‘¤/£5™ÝlxÆL.-c5í× ÈÎåv²Õ€ü™,LìJWÖ‘;ü4®ÌÍÓyý1tÎã$Dý°M&ìì&î$Í2f¤¦0‹â@è‚│$ŠJ*HÄ'ÂÈ‚ÜtšÈ.Šœôš¨ªŸ]&¢js× q×\õÎùÞõã’HdŽhd8¥ˆÂH¥ŒÈ$Ž@& ’3bf 1v!&gggfuó;;;3³·NÏíŸîÎß»:¦O°¹“ÚË–S²—G5©û²o=̤ͱ†˜‹v÷õ,ß>NäLjÉü k§MKޤ9TÂ"ýK!ü¹¯{ÏÆs¸pÛÔáä cðby+е–»š´ßì`ä­{^l†Çòÿ?yÂןs®=ŒÎ;{“è«Ð¶œG’³ƒÔrS”Æ1Œr§,ŽÁúV†±?MÕo'>Öï/)XŒ °XiÙ.\ºë¨d32°læ‚XŒí¹ä [Hì[ÏMA»EÒ87%ýº%¹CUT‰œü;󳑷Øôùu誽7lîÇ•ÁëZز05š61»vÃ’Åëy,×!”N¦RW‡·ŠÐÁ8Iv‹-˜á°Ó9y*åšqp~ŒN@æõÑw÷ÛÚÊ¿ÌCÃÏ-_yÃѳ°Ðè$ôâTF%N¡Ò‡k{ç½µz&uOKÔ.~ª9¬XåEãž“DbŒé!´vTh”A²òkÓÈÓ“Õ‡5™Ýäa®ý;}gkÛ¾eú>^˜ˆå†9ƒ¿Ö‘wðÒ»+7_©ã޳?—þ›²Ö“¦ÿyÚ7ëög~™øêI½~öž¿‰¨hX(åô¶Çp˜]óYsûZQ.Û¼)Jµ0oiôºäÕn®";Dq’v#÷!¾ âxN¿Ön¼‹°É K[  `p¸Û’x™JÔ³ùîæF*ìMqOsKŽsi$”éEðVxy2Fߦµ8»ï§–Ô²·®¼¢Ž¨ƒ¿Ý݆ótÍäý»ßªãÒåsýSéf8ÃbkmTѤ(¶£ßi~¯\r)ï7<¿ÐíEsɽþu*Ì¢Ã$ˆÜ&2¿˜¥i¶ÑŘèKòŽ*Èe­x›÷!dsþf'–½ Æw"w€~1ŽÆbð„¦r‘J>‡?Óæ^ÅŸíV FNÝ}œ¬Ép_ß¾Ú1ôÝz~ÝtÏž?¯§Ì/1ë–wzÝMÒFó$`Ì.i¤R7 gq×\¸4¼×tÁõ]\âÚgt‰‘íÆßB}º¾Ñêv?›6Mw#G'£kÜ{¢YÅÙ‚î.ÆFÁf2˜ÛÕzz×hìÛÕ}¿n­jf’9¢ØÆVi»y„Mºž6€ÂÌÖí ‚àm-™cÿ0”5^¼/övx¾Þ¾Þ–kòÏšaeŠå )¶WÒA$dVñê^ô8½„’¥IiQøâyUGèÃ\H)D•W…VïJ©÷Xrü½Ê¹è&©—äâýÎCÕXèQ‰Ø£§XI™™ ÏÓtÎæãæï×®Üý¿oíO9®Ô´Â&0‰„L"a˜DÂ&0‰„L"agqTñ»Âº«¥ï# jN£ÝÜ*›NÆ¥g[’BÓ"þ9ªÌ©$ðË4Ò ³Hµ“³’õ=â€V øÿo+–.+að&'îì)-?Q1¼»”Õ\Q5„ÞI$‡V¯LvRŠËôày£?É>Å¡¼ÕPX?þ±”H|û$®á©?œa,ô“ò¬rØÃ3ÁÖWÇü—Ñùœ ¤B‘ËÍã¾pœp%oòzáT}ê‚òEµ¯ݵuÇE¶ ½íÒIqtÚÆú¢/ ôÜ&zc£‹Ñð‹þ²Š×Õ0ÔÎ;Áß÷²ZÅš‹6´¹°ôþÎH²7R+¡„L"a˜DÂ&0‰„XÌʰã0©Üm–_‘ °#’&á]™ÝÚ‰­ÊFbjޝâ]$I½ñù) ´ÈE%8ºàó¹g-G=¯e/ásXÉšÆ?)Œµ5;Õ&ñ s‚ÄœfqH,^2Ã$‘H'†%NX£š2Š` #6èÀňI¾ý;?lý;3·ôvgolªœ‰Îæò›#«ËsêªA¤UËB*Á¶é§«pEC}p)27¶!}A$õÊ(½¼ƒw2ò:Š(íwžöñÃŒ©¢óútmdu~ß®K2f2-kÄûE‰¤è¬_‹C!/f¤2w3¡FƃyåZz.Z•œx‘Oª,îч‰Þ™¾Âò5ÈÿÐÉ­_æ´çÔ}´2æ¿.HƒT©!áRÆ´rM.¿N}rþ7ŽÔ@óÊŒÕõ|Â*aa }² m ºŽb.f¶`+;¢ñΛ¹¯n[^û.{äLVŽ+ãêýQÉZ¼9]·mÂf ‚zÒElri’G$Àu+Û‚q°¢³rÌC-x*´R{’ÙxýÜ ¯$nìLâàÖÙÙØœ]ºY>ëßM?öŠRŸGÅ"­úD­«ºJˆnÉ?:ûOcëo×,öý,“‰Vž¡½7ÔqÅŒ„‚Ù¦ðw)¸Û-–žKòSø6°dndmÛ(ÇQÎçlä«j¸ˆŸ,ô½Y"±WýÛl òÂÝý®GtàÍÿšˆ{ùâˆAç’Õµ:µ¾µ¶½²9òÊòn­íFàÖêÖà:e€äÚxŠ,!À"É‚ª¨äŽªk"§i÷Ï[Ó÷)ÛÇÛµBý[4oѳ=;´®A-ktíÖ”¡³VÕi„&¯f¼ÀqO Å(r˜»5ÀHLDÀ˜„™ˆH]ˆHI»bnÙÙÙÙÙÙÝŸ¶\üŒ¹L"ãhm¢{‰chöAfšºBˆ* s¾”\‚Wí4PE>u¾»Q^ùãŽu½õÖµ¯®U‚ íMjÐËbÄæ1CœÓM!¿AQF$r;³¹¿LÎë‡vr'ffnÝÝÙ™™¾îîþ™›úº¤6Ý©âë[¦Ô½¡‡ÙqG7\ÊhI£lÎô„½ºO÷k®ÑšIN ÐvÕQE¢ò(,¼`ygšFd šþ9Mû¦jí§¶I‡s•õ\ÅXÛhÄr. Ö sÔ*MD9Ë{<˜UyéËh$Ææ)å±›[{•ÆÚª]›ËÛçŒŸà’¤£-¸Œ™ûx†”݉…Øã(Î)Y¼%Òºê·Ó—IJ;żåx\$0Á¬ö¼*¯â‚g›·k¯×Ú/°/XÊé(|ñuøMg;ÎbŽâþ);cëÉÛ¸ŸD„ifqÜŸ i1ältìîÚ\weÛäcÇì|7‡ßjæõé"þd²´µüÅ)¼ñ6±ù +ÙÊu¯~˹Ft­Ùpq±H2·Û£‡!%RŠfN RÆMüÁ0gxÂ`þ±õƒï=öÇFÔp°HY$Å&ɽ^Í”·!½kµÊr…W•ž0bÉëzE ·øáU29$’(ìÜ+ò>ǸŽC7L툀Êhµn=¡"ÔŒî1ÃW=³n˜œ´NÏ!Ù³¥9x T3þ ?.@ÿÉR´LîÝ<öÍäýÜ¢†´‘»þÌ#gß¿ÔÝ7¯è/R>ôŠ_C×ñfÞÓ²¿³ôLÒÄÒ›PÄ“[6•ÍY ñ¤Ær+$ÕûtA*#®ÈA8þ"â<{I&+ŒöL½¡)†ãnFkØi#qñ‚I±Zn££eÂF)dŽ=¬ƒ·Ž!7ä;†ùôÇrÇ×MSÆNÿvi,Of>¿fwƒ¿»þìÍûOÍb¹¯ÙsëÃÒvzS®ÅYK…æ¢@>zãIi.¼Ò-Èj|%­qÎÞ•ßR{S£7Ñê\§5HÆs@âÍf€tŠ;¤“»›™\åI¹ýr#~ɨۨ=DÀгDÜý÷5«³?íþ$«³§ªëþ!'ýûïÚìØ¼¥æ˜éÂ;DÕ„HBOñ#-}…±Ê&Ýó®ÿ'Ô¹¼”Giiê}ÿëÚ§<’®úÿVûúÿÇ"d9‡•ruæ¥göøñ“—™áqù܆'/ããÔ8 Tô°Õ‡ÇôøW£uëÅrú ìCR»›7M!ÄK×úË#…ÿRu?qÇ óÏsÏqÏùñ£{îý‘ç ŠuâfÇ2?£m§9íw~{;ÎP´露ôdb‰ZBóZ2Ç=)l@x¶aª½šÑf ‹­˜1ï+‹"¾¸ ±k>ªšÅìjênÐ3ü>q |n’E¤¬¦k{É•ñ¤‚›ÜS|öžÕ~ôšÉª‚ŸbÉ)Ç$Y®0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹G‰ßM‚5õOп&3ÊKÇŽ™ÚÒ饿œë«&ÏyšäçjÄèÏDHe`^Æ^Ozyê63õs=6+’ÉÇĆpD‹pu Y £*j¾“®›Ôi¯©êîVAZ–_¢–l†×ѦȔa½R»×=’ lÚýóÏKtžÔëZß[Öh§çz¯¼‘\!ëz(„oä±¶:w¤^)‚ÛdvKDE͵nÔ½0ÈäØï³<©VWÍŽ2Ih3vSd’8DØ*éD{7i}äŠk«~`˜+H>ÝòE\I¼×qÛ‘XkÕV÷SÖ—óIú‡©LT / ùéz¶bOƒ™ 9œ÷"¡'-<ÙE—AG*=±¦®[M£n–kî Äý‚q@–u9¬f[Ê¢žÒ•ù 1UÓ§p 1’92oj3’¹ä™[Ö]D K¡ÓPu9ÑÅ„L"a˜DÂ&0‰„U¢iF<³Ém_>>]ÙNÄ(å0‹:pR´íÐ^‡MýäÇMR¥ªŽ‚…pBPrë5%+lj²'jà¹ÜU=?’±ö6mVœcW —¨P†ï¢BòŸ÷[)`‚<†$’I§ÒsÒM¯Øùn]_3~]†(2Ô!¬S6†r)c&w­iúëùàÞÂN™™¬ÅÔ­Ðü<`Ñ>IXÞ¬“§¢ëé;AµÖÆÕü¼Ž¤•'o]4¤B ­0ƒ; ×-¶Mj³‚èŒ ê/ùF‚†d—·D&i¹Ä›-{gßרòânÁ¶hy ŸE‹Ý1Ì4ZéÆv#Âlågµ«mQÖŽIlkÙo fŽ)oámfðES3o¼Âbxd‚БבÛËř创ôÏ“³4±öÌîÁ Ç/”c9æ¾R×ç¾øOž»ï®xãŽzï¾ûë\óÇë{뮺Þõ®yçZÞúë{Öµ­o{ßÓ9frvg"'ffwww~™™›Û»¿¦fö½zËÌl$ÞmûR’ö›Eh»î=&™ªN‰P=† *6s´±ÌýŠèlÖbÌÒƒ“­¡ÿ.¿ãÙ4xo–21Áf9Üâ¡d~Hòù {'‰ÁŒOÎÓØÎå+ÓÃT®ñIfÕè`q–'ù?›”3ÈÐÙîWrN(I/}õÓE”„ý³·B.þŸ×§\/ó*Øì§@i¿FØ'meRTd©‰5P2<¢žÕè?ú3T¬TÑTO[èu›ŽÑ}}© ¥–Q$û‘ýÕÛ¤.Ǽq~·]€ %=ë¸Ë#ÈL å¼`ûæ^ DšP·Ž®ð·g+€ñõÂNÍ k³?nÎßK%vn›¾üîý,nÏû8™wöonÝ×VO¨¢“~¥q¦á4åq#4—õ3{\i$ÆSÒŨdª½ˆS0ûŠ?XIÖ+´ž$¨Fìoèy‘Š8åNi s±†ÙÙ,÷f0 ˆå ã?»í¸"­®o\y£™ß†P„aÃì¹­ç7¤d¶ÜLp‰ÒÅI”Ö`ÁÂ5£«Ÿ,6¦¯, Šürü”«EZw)ªÛ³Ð¹»¼ÇZ;!ŽÿªF ¾)_·(šS)ÚÃÿGú¹å.Ñy¼éø ¥tFÕæ¾ ä ÉšÒPtS&ÙLòë•ÆŒ$b4Q]œåWt9<¨ ßÄ!È„*ã¬ÿ;áÚ&ÇG·lÄд^²ò6416Ìe2”íâ5Ý•‚)bø¢õvæ–'¥úÙh´ϋ MÑ[­?}ü5 äéºa’kR»?oÙWéý7‹tî_ÍùÁw޾– ý+a ŸBv(Ú²©®EìMõÞ·û^aŠÑN·_˜´^Ns@k‘{Kô5ú˜þôc¢ß÷kx¯Zšaš_á{[ËÌ3ô.ß,æ9­gŠ6ð„èש$]¼ÂRÿ2}—ûk—¦fë¦ù†·]­êvþ݉ɟí×¥ÌÉ>j´ix,Ê@1+ŒºÍiÕ±9ä²:û—#©Õ˜¤²`¢ËwõíU{ï®ûÞûë{ë­ït,s?*K •*ï{,AáuK¯§kï mÔq6½ªúDB€°‹0·LÌÍËc¨³±=X¥6w&’qú‰{»ü³ü’{ÿãû«(¢‚(À‚0á„èŠb¢˜âŠ(éòˆã :<ð’ —$Š)qÊi'ÏèœÔÇVÙ®¬%?³aåæi×^p“WLŠ;Ó5˜€)synÛD«Z¼Pï¹1_»n0øÍŸX=*ŸjDmúÅæQ_Éí$¹wo~IͰŠãa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EåwåÈ_$È_Ì/­™m¯M*»kŃíZ°¾žïú£Èq*"ZsýKH#V¤f¯‡úãÌž|c±ð‡î$Ö{»käÝY$r4ÀÆE·o#ÑŽw÷ƽNûº+C\âKizý'hü*(j¯J†%g6²[–É´žW$k°£Ñä˜Ks•³HT ÈKÈ!»ò‹oR[cÝÿ†‰û5Sé[ÖW¯–œ››Þ˜›-[Ò¾GäOÍÑÇG&–GjöK"lœû/ÏážÔs`˜ós‡£Ø8op Ö{Ó¶³Þˆ·QÜeù\Å-êVÁ‰ZU„á³—x”êøŠ4úÕPu{ ͹eÐÚá–‰9¯IœÖä)mŽ#Šx„Œ‘„L"a˜DÂ&0‰„QµSBmÆaf äì¦s˜ŠJÜLÍ`ÒGXT$°‰cJ£=F_uÆì¶Ò’Löò hvAÁ˜óÛÊÊu=Ë=¥ßšîÌ_ÚÿE˜Äd+A’ÀìÂ%“ŸÃ\ heqòIr´6¡2¯f(.Ó’µêÕ¬ÃBzñYEûòŽAw b>šH¤Š3fwnÅÛ¶wg!xÅ_:<½'Às¿Kú^rÓÂkqÓbRèD¢½/¾~廑ùµ¥fšS„ùÚHé)2i!®úY¸+í#œ°9:)õî*â­~ádÖÏ ±n¢ ?@8¾Pڷ̉ùÈçŠ3‘Å€Íáî' ôˆ™š[×¥¥¤†»¿ÔéAV_ônºûýý®F¼‰æâŠéÆQSGlÇm¨¼>]K;ÞrÔoOð…Ðr ‰Êpôꧯ±zã__¦¾»Þ÷Oûéå(ajØË'ªSaœ¡….>ÆÈ6KÎvŸ¤U×èXùOõHóבÉþî¹üº‹»”•Ârwgó´ålÙźnŽÉJCÓ}ºvSã;+4u°FXûKc3z}$K8¶6—Jv¯IˆI (ÉôªŠ)×¥Ç;S¾ûÞ¾îºÞõÍë÷²væ¿’»o!zÉ1Ø»zÄÖíÎl" sX°rM)0ƒ™;ˆ³ôÌÍ,D@X@D¾Â,Â-ï¿LÌÌÞýúoºìò"ì˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&u0dì‘§NÜÒl´91¸¨Èø÷yL`—¾Ú$‘§™yÏÈS [ÚJÒGµ8pè‘´_>|*°;t‚WóŽèl#§8G© Ö½áê:òAùÕ/—ˆÕÙbI§RÓÆ$¥•îC˜“(¯¦â.SDê%%f4¶õˆ¸ ¿¸||ôËW|“ÿN§ y~'W|‚AÙ7¡çDœB ñ¶?KÆÓ$ä|¯l½¬¨âööè_ùz›È ähdÂ(ðà rÔ¸ï…8áDûåDÔçžøïŽµ×ñÖµ×=ñ×;ß=s×;Öùë[Þ·­ëzÞõ¼"ýa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜Eç:õóGÈ*ß"žÛô-]àÏúF¯—×~O‰ÖR?aÛ¬ÍJc´"~ù4‚ѱˆÝeo¹Ã$Ò;×58ÊmÂkxÂÆÆÚ Ó[ó/"?rEɬè¹/«<§÷ÃýŠûñ§rÞlÏ<Ú4'1ÚÝî…šÏkCÕ_aCåUÜ’eÕÕ¹À¡Þ”­êÂ^››¹.€X-Ë€ÎÊEv>9¯ñ›ùúÖµ½;×±cÆ)´il?ÖÛÌMé67Æ÷%¥Ï©+º²¨µüöä{2ç3YÔäpØÁON'q&æ+)(¨£iÔ0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EŠÎç1 Æ/²,TBŒ¾Ìæ’·Ò¸–5Œ¶òþüìb›Òb·4µQÆ/×ü;úoéôÙc‘Ǧ1öIdEù–S’µý’Ç|ÈÝEHæ·–G–ÅÊnujr tLÄW ÁVHÖQ%8ïdIŽ=h2A*~eŒ°·'µœä€³4Ž¿øªc“’ã*zÿëÚëqÏÿרì¿å;ãªþ¬D¿cÑ™²±¢ 5Tت¡“ÚŠðTŸÔæd*Ÿn¾Ô’!‘5W|"?*­ßtEÈ>C"–Ìuâ3Xx ß~žŒË™¶ÑÛ[Ï“¢`3vy*k7¨™^ê{ó[1Wü®åºˆ³BìFm^RqÒ›²*+ñ›Kü¤Ò> ]‰?<7ù;ãØAçù—ÐÞ±‡úšÌ§dÛm|V0/êùƒVõ«”Xª/´½•bM¡±d&.uÛË9†4G"ßå‰eWU1öǶg𪾽‹ £äÓËTÅ †GAÚ©¡£_eSÛÚÚꤎˆp8tvª‰§®þþùÖȕݕ][ðÆ+¦ŸÂ­ öR&ÏŒÏ+¹SÚ"J¨†Íb”FscwK¤ª;!¼âÒ©¨žûûøëZ"Íp‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ(Ðþ”ª¼µ k°-õ,dãO€¡ÀõXÑ×}üÿ·Ç—·±´\:ƒ®ìɃkGèGœöD™É„HÐf齬ÇtYƒ<Š(òwÈ7”=ºÿqÄüá<—Ê%>~6ÛqF¦Ôu÷G¿Áœl Ÿœ¢93^ÕjâQ®Íѧcú¨gÛBå¼§dÀAé•G+¡„L"a˜DÂ&0‹Tv÷½Z§ íë³È"²ÿ-°z!8‰·%W.¡!Þ— 1ˆÅу¡>£ÌãhS2'h° Ü>7¨Ï9‡¼Èš‘‘:ÅÎUNÃÑÖò‡škÿùæ¯óubLÊ!X1”Þƒô¹Å7y|µùñéÒW4œËÝ4e³¹£ô‚c'4`‚—×ÇE AûHtȵ òý!q¼.Åôû ¾âõdƒ×kûbÿšË«f¿D&Mõ|][Këgø„õ{>βˆ"<ßæbÁ u`Œ¾%7l›0¨dwD\*/äƒ×þ"¦3澫E–»Š½¾Fã"žonÝÕMZq–ÅN`ZueÙ,°*-Ú¡ ÑI:p6¸´…üÅáõY0%"Û—šýDÇéöÇÙ^¡ôUkk2{#íûMIi~'@Jt,s!Ì3_З’‹`íÈ*óüÜq‰@ôòÏÊI“Ù+ò)›Â&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EZýEè’<¿mµ\*;&Ò®šŸôºçU‚ß#“Õï,Îåh©èѤö°­Èãð¦b18¸ÈÚzcíœâ(ÿ—Œ€Zcn¨ûŸÍoêËÙÛ£q˜]œÁ=°Zž:K€ F±„‘ ±SéE•ýeÆ".‰a‰aœ€Åb(u<|WÒ¾·ª/Ëÿô:=¦áÐNпYµDMÝfõ?h2Ͻb‡œ é’O+Œ¨…ØWTeúÛ·é5T"ükÐ&3èz÷㮵©’'¤>ׯW{N"ÌSPýqµHTˆ—ªÿQ îz?fÆI´yëXK.ªJôþü)Ö~Tª>UìaTNiëŸ$yøF%™è?'ÌíYG+¯³…”²/‹ÏúP‘†Kë®Ý‡K¯ÞÕ îÇçAtE R µý2­±/l|‚ŸœLÝ'ò ⻾ټ«R7IŸvR×ÐWôU“SÉ¥tîêÕ vkMÉóžžOX— Yr*µê>üI~ù¢‚±<÷Lú××õçç*^µ­.ãŸý1m13ßvÛe}ÅÀñ&ô1WÃv&Šï² »šâœ©Éh°Hä™à‘z‡Á õãG1ø6)aáNÖá’hŒ´p·üêòÚÊAò§ýýéu×ÿ]ﲬ"a˜~@bñë‡ä—₵XšÑÏ%ûŠõz€IƒAÒ (¹(𢲙"LÆâ òâ`Z–d¶6Òz*ô‹³>ŸÇG¾XHë‚'Çô^=O|’ü½PUSª9˜¿Þ¬°Èh5Áb÷%íTY \ÄFXÛž<\° ®³–É@E.–vxÛùñËðývE¹ì"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‹T-¾¹ôŸ˜hø¬oÉ”5çi]WÜ™zé¦Öª|ýfú"%å˜ÿIƒÌšö±áT>q#nsÑUôø-‹9’Š ç›SC˜¦v¿)ÐñZAQҕϯ㎑7P'-«ì4úƒ²=pZ<4·Ýd7ô.(u›/‘;G 2Y¸áNáÀÛˈÇ3ñp»"Ú>0‰„L"a˜DÂ&0‹Î¿É˜êV¯‘ÚãÛž›ð£ïÿ:¼xì_8«¬(å}Uª’ݯn)¥‡›M|Î’N Íš¦qk†g`› ™w]¹±ÉaG„”ô÷²+?ðëç™u[åÂcR’JN޶}Iè ×›|™nô÷Fù:ÀN<ߨåÑžÝe-Qñ$OÁX6ª®®áÄ›lDIßÚ¢$E ú ê3ðÄTzgKúˆ‹ù¢f¤„ľ9=5èêºOõf&j÷ñßb]2èÛD0ØŽ¤­®þm‘:jŒ+§ææø«í [»z΄[ñÈçŠþ@â#J|§è*îÍpá„i–¹HÐ=·_ˆ±_Ç)ÍYªnå‘„ÐvÒH¼ÝÜiè„´Liñí¬œ "»¸DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜EóYdGERU4A>Ö]u»å$QE.wÚŠª§{ç„ÓOŽzï¾ûë\ñη×[Öµ½á/´¾H|JÓmŸìÿ3Eÿ!¨!&æŸ;<–ÝõÉâ4À™ÞÜfO†§?„€š˜Œ)2:Ln‘ÒꤟdZü±¾OmÔ½ “y“ô‡¶üÏ"Ž)iWÑOz©{®œ6©¥qkRž¶àõå'oðxn 2«ä²vFðD ¥æ7g4ÛÄyÈŠÕñéïùÞ·ª·ã/šøs‘ï¶Çoa{Ÿ«ô'*wÖ…)î?æ&/g»ÖÚeªÒŠ¿¹®þöâ—m#]®‘ïúåžz¯Ù#ôˆ¼îÍû?•@ªO6ÛWÜÙQÿSìäa§ö¥åYCÀúª‹(±4ƒÏj¦Ü'¡´I<ðDãÀ6¬Ä~·||’ûºÊ\‡¦ºâWPyJ,‚i÷ÊËðÍþYªÞÉ ö•èŽ:1ÒÒ}yDESn6* rEÊ â7㻲Åpœù±Žúsµœ9tõ\ÖÏõË‚ÎDrŸ+9W¦æÖÂ…Ö’ãi’¿Þ ßO »Cý¸Ew«ª–ª§ÙúTµ}W0wø¾æ:ꄳõø6¶Ñû›#M­oðì‚6—Õ þ=®¶øúm^þâ-Øß ÿ.4·ž]þD®_2yV¼ò$Yø)×ÈϺ¼›}ë£Í°E„nDå5vqn§z¶En8iŽªÎk´ÁplQ&pæš~% ù"ôc„L"až>eÿé÷Ççÿæãÿ'"ØE¸|"aªo¬|s\zíž·æU)³jÛ–žufR—…%&n‡Ûµ<ÕxÛä9ÍÎ*ôôÁ+ŽÝ ŠI£Òx¤Â+)†ÉšÌÒ±ãö(]ŒDòwŽk"3ÙÅe6m¥aÝ3ÍY—]ávÉ›¦í±5B6Çls•=2°E#7Gâ‘¶Xôb)ŠÅ¡±–°öƒx ”od‘[,"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ*ÕêÅ<Ó§'·Ç¨àµÜ²¸óõ<²ÞÝghÄÙxÔb>ǹ¯¨èÒ@Kün.¡ÇÄA6öõ]ñÀV Þ_‘9ä‹N>jø³w²i…=¯™=øäcÑÚ^âXþ{a‹¡ ky„yµ*ŸÊ“jAÈci{¶µ‚Ëf2L£$$¹?ª§‘¹$i˦Cˆ¥¯ س3܉ùóä2àô7·³ÑF'XÏ.Khiw“=Oü_È’óåµ#pzʸZn²dÔ$š"Áo3·ñÊqMÏ¡)%Â-äá˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"ajÙ±Jb¹™ZÓ®Ÿ’†@M“ÊIŒÄå3— ˜›8ÒÎn"Å!Lïò—tÛ„Ò§›;9ä å¢Ze”à‹ïYÙÕÕÏŠZ•,Þ/dVó–ßáó˜[Ø(¼‘œ¯»”Ohyl\ŒGò&ª þ%wØå"¸¤p‘(,—P5¹ïOЊ*5ÏëŸ7VnIƒf˜f=|Ï'%Юxìf¦ø±/üÈœÝHMNVE±¹¬£ÕC{_ö=w¢(ÿ³æÙ'?JF¿õÿ¦Vü—KÑ0ô£ôO®z[ð!­Z²êæN~B{å~Gû‡¥ºHRïŽç…"ûõëuÍTãºâörÀÚBÛH'Zú’€£] Ú¿É’ËFì“P /Ï#3¤\I·×æ9€5ôÙN¢üKò‘YXöT¢ é?(yB«¶ˆRS ó¤Nt{2¹ƒY/OFH&³zUÆÑ•ù°ÚÍÆbâYkHÙ@i2®utts”¡T3ÉH\òȬœ¯Çv²QÙDûÓ¿*ž½êc‘ÉäÜWJy¿Êu„J*ÔÔS‹ÛÓƒíuJj„ HŸ”ìùt;z¨vô?áüœGþ{ðWŬ©êûÐÑÈdƒÚ5…¦ØÛ1‰N½whú_ÒÈLÂm<Áv:멌³@¢›€$í6sa¬àq¾7Ò ŠªyË*úŠ£ÃÛ}-KTÕaì¾¹‡ÀØ›W…ö.Ɖ³4£±¶²I­´7ÇâÚ©ð¦ùûøçz"–pŠ{ËÆ?箹­)i¨ý¦›îøE‡è4xiKz6§ˆþ©¾z“Åç0w¸lR['21 =7ªôJèD‘få«ñ9¬`ÄZ€øos¥}ïíJ×ÉU=Íã0³ùÿÏ/xŸÒ‘©ýAb-u-(²74ô]WçË-Àé ¦}…¹×ЙLQ™ƒšØ éPE*0fl‹Ó0‹®xrå¥Ñß°Ü\8jn5˰ÂYÉØîARº ­¸}msÜIÒ[D ÖÖ(žÒA=oµ9Öy*¬ývñèçø½õòc⯘ÙÌ¥†jœþ®ñ<#ãƒÓ(ùÏŽQ©"®³«Ø 0ö÷?N\ÁCm|.Ä·‹u†2ÊÉ ŠÖ²†tÖ šä^¹°‰„L"æuÝc‚ç‚D¦1{*,Î2É(3`B{…Σè¾rl³ƒÊ;ÅäͼŒöÀèŠGµ!i𮈳"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"adö• >× ¥~n´ä3˜õq;w‚Ÿ2Õzãi{‘´A§qÉö¡®Èã2±5– Žh­Ã8»ÅŒvfÑ»—WÑ›Â-9|°Ù3y¿—ü _Óþ`±_ýÔïoÔ£ÙáL^<õ ‡ŒG' 6©€Ÿ˜I®IQ/ÁQ5Ææq°‡Ê%mìȵùñçì__1+êzƒÔ‘¤=›ç_܈Ós˳ÏKbÓ«Bs­b6ÀnÑѤÝ8Î=YÀ&HÆ,xQsSPî,»l|yôVÏÙR-Ëùä2³öò­oÔ-Eèç Yþ.l¢3ébKÊ4Ÿ \±Ç––Jl‡'ÂIáÃ|ð•q¦°tÐz/­†vÞ)äWç˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-g{ã䦯ð£<~o!“Prx›ÑIÞ0‡JU•õˆuÂh&¨«»Ù•¢Ù}hpä½W+Ë!ò§€yÒndòÕŒ8uÑ—ßYñö7ú/Oú[™p.­aÐþ1õTÌtÂp7;~—R2×PÕô‚Ȧ sI¤xͦƒä~ÉáT“"í9ö_±ç<ð­7ñg}ŠÞ²`ìGÿQÞ^góÓQJ¶ÿ2›a„Xžˆ´ÛBo¤ 3§ÚÍ¥×òv¨b³@êkd_~Ãùw°8ã]>üzùlSz+¢8?èOhÈYDWZØHàsç‰Ø wCž·ÁGÄ»W+¥ùk5?ˆœø£Ô“5RRèùCõ#€)ôÅ<û\ù›ÎqbÕA>tNÊwB ².>)o¹MÛp·&’{å.ÿ>ùÚ½‘Gp_ƒ¯8Zn¨¹ ¨LæE$—ÏÖ»®ëÊÛkË%æ~ìžI'„LìW:ܧgå9E7eÆ›‚# ™i-¾zë²*«WÞ¬"êõoñ‘ð«ägZ§Ë·©^rxµ£^‘©ü|d–Ãe«+IüÀ0kf'HÈol`JÏ8›‡g0ݺ¥‘Q ôCpd^‚V4†às 6×%ÂgôKÓ‚ ª öXI¤Ñ©Š¿J!Áz}Êz[H%®ÿ$\Ü"aO“ÏnЇzâáÏRºZõ¯’`øEÿè7Ç=r‹êÉ.ÞÕs«|Ä*ô•Ie66ÓìÎ ƒØÞ†RF»zÓÔ„Ômbz³»ŠQÿ ÕÏ^ÚL‹Âœ_z¥à"Vöîð‰ÌHfÉv‹6Kúl®røÛ\Ù³¦gÖ²x“AÍ‘ÅûYu@áç§Íb-ía¨¯º¨¿QÛqºzcã«Ø*nñ¢-æ»9®9;wžA^ñ­°?F%ÝúÉ_8 òí z õ7¶‡4›ß‹ŠÊØYÞ[ZU/9#å*úýÃØ/Þî÷T›Î`Z y¸¯*Uÿ•º²_«ˆ…y ³X­yäºSbÚÍ)LÎg0’Ãá‚‚Ü<6ÇeaTAV{5ÝÁ˲-¬a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ-üÀSŽ6%ûåY£¼ÉèOmünEá–ß6—<Ù~ŸHX½:±±.©Ë†Í§á.¬óË’¿m„÷cÅÙ™X?œ.sPèÑ®VF‘dß ”sÝA"ö»Åaç«¿È~ ±ì ÿÈ^hôN±‰ÔJF$1í/FXM5Œ•úE/¨`v„¬¸qÚþPScŽQ¹æ£QäŸyoàŠÁzKÌiù¥ÒÎö¯‘n:³Èó£ÖæcÄ®§Ô¢Þ ô){ A¼@éTD§l÷^º¹?IÖÈ·ÍJ1Fô,v{YcÜ‘fž ùEó'¾@va€K#ÛºûHÎé®l8€·Æ-ÈnRʦƯ_ëËî¦èÞ¸H B®{zh¢Ci™ƒ ˜tlL-‘a˜DÂ&0‰„L"aº̦15c M ‘°Ëcn³ül‚2îÞüÆáúeÞgé;5Xþ¡â?€…?c2¿bÈ©Ç$]öAÖǧ<ÙB¦ª×Ÿ¡(êaÙ++l[0*é4Gå.è…T—¿³òš< § m^÷¤ô—|)¾¾Îµ½‘TMü·x‘ó‚ –Û~œq[»nÊ~eô‡£›œÒp_¤E) µQVIkp›M2 ÓÛÜÍ©ôFX­9m='µª›ï¢>Kß½ßoy/Ç^¡•QrÁE`µ(Ïl;ù‹ÏuÛZ̈&ØÝaùöZÝmL='^Éá/‰ØTtÒ½˜Ÿ%±§‘sÚ„V¿“þ^çœþD#ŸþcÅü<:É}ì·Ö€ûMM–¡Á5°x©×^;Ú\¢Oݶ¥Ö”ÞÝÎãí×D_Žümì‰â\#s|¤^ …Ø…$àÅåZ/ÍÞxgq$•5ö©üÔúéQ¤@ÆéqÃJ?g´8óßh»¹ Ï}‘}xø£ò‹êür¹ú_Ó|—É£½{é›B5­ò.„ät*³­© Ú}Ú£¶×!ðJ†™²¿?*뎬…?âÿùó@ÿb<¯çZmVÞSä"ëZ¹ƒ¸#Ò}ò®—ÛŒn8Üz¥ö·!c%BÈ+êRë(G])²,ëÐW žh[ºÿ” ¡±ª6¡²®H‘È‹ÇYæŽÂ¤Wh‘ÀÊ! pGH/Ê=w¥:E]s¾:"ó±áqzkѧúGå·Ä–ÕÏ<.?1ô߯W0ÚöÍRUÒÈÓ„šW ­ès$¦à°}A€k0ò¼²Jõ}vLP”‘ŠD‹Ô&0‰„^3ýiø4gw÷P3ÖßJ°ü›Hî/G˪蜠[ù£× Þ‰–ÿ¿sñkmL𥫹Kú1'ŠêS YÕšMY"m™ “PoÉEêÏÊ(Ü£ùo̓ú1~Iô8ìO!ß\©WqÎ,õùè^®U›rø§= šho]khñÂ{çO¸DÂ&C¾ ª_-S5ïŸhˆŸô-CU°ñD’ÉÿcL¢Mà/çæ/2;§Ð“Wö^^œKßäû6FÓá>9"˜°‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„Zeù‚¨çx~ÐRƒ˜úïÍþvõG÷?Ô^R€Çç»&$MU?‰W³¶ÚÙÈ¡¶9¤¬×èìõzßß^MÊ\’ƒC‚ŒúÒ$Z§ªiß>ûsæPÅñÝáš½Ïãµk}ŠdçïǾ‰Ñu¯¢¡úÇÐð(x°f•Cìz)7± my¬p-ÖÖY$bO”À:ot"¼U¿Ç=ä¯äoО£ºê²^ZëOo“uN›|³UѬñdùª2c]iKÈÆÓ Ñû¹ì ]ìûÃKžŽ¤ä:jc\‹Ð@fà §€PÇpÈ¡®‘"!)r°Å J=v‰|*‚éwÚJ¥ß*'×\u­ì‹‘„L"agrY{§k)}¸‘h# nIÜØ=C_d<6ðpˆ:-Šê̬”ÖfåÊ}!…¨²$nÍí†gIjar"…£þôñ\’­iºFõ5ÏX<ôrJæÖLb»’Ií†Fß>pó7µëöz¯ÕTìJî¯&-ö4Rd™ê¶7ÌÚ™d1Æé ·ú[—J«ÛBaž0œKN ×S”«x´¶¾–(˜ÍÍÈÉÎlà¾LÙñi[b'}Su-çT•à×Ee¶!‹™ÂI–´NÅ‹5L#ª”š ‚d¨Îðkð‰ ¥Â»ë”ÖWk¾ˆ¤Ì"ažCÆý/è˜IÔWÅW-wâËcÎ^"«Z.ËÆÉ«ø¿^ý YÝv5›(« PŠ9îQ`þŒ¦&ðÙ“³íºÝ,í²Ya÷ (ÚÖPˆ¦Ï‚²Ú<Ï躒~‹ÝÓB{çÕ•— îh»™®qJ^n’f[rÀ¾Y“4`öÇÔ¤ëIü‚& È6ÄeÑ9 i¹$ÃkE>H·W„L"‡} ]Kíúç©à'öŠmgUÓªþ/jsî`½pó19G‚›‡NEÛãŒaW<¶7÷#hEwÆÒåi (Ÿd\_5Ñ‘o1ùæó¤'Hõ£jˆ TÆJ éµÿ"0Ùåà€S\½"{Úê;¹mC !gJ\£L%UITŠlÂ&0‰„L"a˜DÂ&0‹KËÛ…stO;û¹á^ÇC¥9ֻ鷽ñÉÓ˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&j¥ö»°ù¿«m” ³jÆÿŠ›î»>ËN2÷Ý~ €ñëŸ7ÉZ ¦L¹qÁ¦.±Æ'·öØÊÎ\=œÊÎêê(*‚ÞZè‘@ŽÓ[ã÷äßVÌ‹Ì>¤¿*q4yžÕª¥ža¦eš­öå=Mqçù…1>k† Iµ§NM08Â/>›$×[,œ¡õ©³Jͤ‘²%~d÷—’¼‰ðéœzޝ®Ü~MòÚK’»\‰ñÓ*³ëJ{çÀ“ۆƿâžN?ÍVM'hÝæ—*5O¨à“GD+K~Z¹Øg×óšžoÓÊE· [Œ^FÎåÈ–Ô¶Ý0‰„^;ý‰æ•J–ûWδ¯—>g¢r[Ú}o-ó=2L_ŠûòinuÏé^SÛ™½´`©zÖk"tþ¶»ª„mºü”Q NÆT1߇Tr"õ'åW~lòß›<ë·]÷AÐTå+·Qº_¡Ü÷VWqÈ7òôJH“Ò&ÿû)tB)/´Õçj¤šŸw:"Ÿp‰„T›Õß>7öÓÔ6Sé wú¾g_7:2ÃçÑKÓ§,fV¢-Î8‰JÍëɱq’ÌCƒ{ü[öIi7¦Ie*±ùDÐtטêȵ'@×1šª«…Œ@Ѹ\L„Öî–»ƒ‰Šö¢‹šäêêâQNON¥îðäI.gbê¯Ù»„L"a˜DÂ&0‰„L"a˜DÂ&h¦Óøåõõ‹sJ=ú5µV2ûþ¸¸Óò,o©u–_—¡~>¬ôÂóæ{!D!ÀÈ\OôlnW)šÝ–Keræ÷²x­Ç‚"{ TØT€‹ztGcщ"}"—E 1 :$oŽvºC”¨ÁªJ)«¾¸H…E¸×*v2u´¹"ûa˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0Š…ûûËvª¢þ]d¯^!ÌÅÒ~ôñÏ©%JLÜÛ‡p¯ü÷p³X3Fxÿlqé…Ì\Ù›—.Þä“K!®¤‹¬…”N»7‚.‡ÜZºm[Êž ò䆰gô§¥¶q1hýÕÔ”ªÓ«®ø&¡V½W-“B™¤sONä³@¦ HܯLò+n‰¾W|Dðÿ–®šªÆõ_¨=G!¬=)ëÙmbL¦?Jõ%:ª«*êB ¸UQUĤÓVhäÂmÓA/3ÙƒüÅî7ÓĆtå "la‹ÇlK˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a˜DÂ&0‰„L"a¿ÿÙ./Doc/Tutorial/UCS_nbonds.jpg0000664000175000017500000031775512176660653015670 0ustar vborosvborosÿØÿàJFIF,,ÿÛCÿÛCÿÀ0D"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠüKý½>?ÁLo?oÙ¯ö3ÿ‚xËû>øOMñwÀo‰_¿hŠß´?€¼Uã_ øžñ·†|áuÐí¼'âÏ_ÞøƒVÖ5Í>ÏÃejÒ]G~Úž›¥hÚÕí§‚ÁG¾(ÿÁaàŸ°ïÆïÛþÚ¿±¯Å»¿‚^ðÆ½©ü3°Ž|o®&»ã/ øBöÚÃÇðÚ¾3–Ù´é|GöëYn<ÃRK?"TÓã̓öŸJø‡íeãÏÚ–çÄ‘ÞÜø¯öwøKðDð€ðô6óxf‡ÿ¾5|DñG‰ÅgS¸¸ÕãñÌŸ6ø›.‰iðëâ¿þ<÷ž-“öØøv—w:½ÿïueµ‡ÃqÅci{kno.æYY}oàwÇø+Á¯ø)·ÂÙGöå׿e‹³wíð_ão‹¾|]ýž~xÓáîµÿ áø?SÔü5ã'Åþ=ñAðÍݾ‡®Ky Œ¾"°×mµ+ 7^ûN•â?J¡ÿ¸ÿÊ ?aŸû¹Ÿýl?Ú ¿]¾.|ƒâÆÙSã^$Ãú§ìÍñ7âÞÁü=²Þ6ðïÄ?€Ÿ>j¾‡SmONŸÂrG®øçÂ~;:ì0ë±ÝÃàI|/>„ÄPø‹Ã€ÿÿà¦ßðP/ ÿÁqüÿïð÷ì+7ˆ¿cx;CÖuÚI4fk-SÀ#ÄúÿÅ[/ˆêán‡àoøÄÝ|2Ö<®h2ø£[ñÏ¥øžÖóÄ^Ñ.  üxðü³ösñ?üá¯üSVøûd|2ý¢>,ÇãÝGÁwŸ¾éÿ þêžð~!xöóÇz¿ˆüskâm_Áž ±øcâ­Âúï‡|!­A¨x’Õtû´Ó­áÔo¬>Œý¼ÿ࡟ÿàžÞ‡âWÅOÿµWÄÿÛèºï‰<_ãÙçà÷Å? |2ðï‡~Êu-wânºšÎ‡¥x7JHî…ÂÞj7~ZÙÛß_Îa±°»¹„ïº+òSàwü/àíAðŸàÿÄ?ÙŸàÇí7ñãÆÿü 'Ä»Ù÷Àø`>,|;ð+xÃÅ>Ò¼Cñ«Äž(øÁá¯Ùëá>(×<®ÿÂcã_Žº^­ã->Ê÷PðÕ†©o£ëí¤íø/þ û^øƒö†ðÇ;¯ˆŸ±×ÆÙcÁšÄŸ?j hÞñÖðçYºÒôÝÇ ¾øk⟊Ÿ¾/h:ö»®h¾ÑÁïø÷TÔüQ­è>´ÓdÕüA¡Zj@ªWãçÅ¿ø,¿ÂOÙËDðÄŸÚƒöRý·fŸÙ×â?‹ôè´×Å߆_ ,þéZ¯ˆZ!¡Ü|Cðg„¾8ø»ö‹øK§jaæk{ŠŸü*}Žî;‹x&‰b×m7RÓµ:ÃWÒ/ìµ]'U²µÔ´½SMº‚ûNÔ´ëè#º²¿°½µ’[kË+Ëib¸µº·–H. ’9b‘ãubvŠüçñ/ü¿á߯|ýœ~ü{ý¶þ-ü'ÔSEøÅ þËžøw}á„ ”Üð§ÄoŸ¾(|ø øÜ-•û\x~)ÝøâÀØÜŨxzÒ&)wÿfÿø(×ÀoÚ'ãGŽ¿f ­âìÿûX|6ðýŒ<[û1~Ñ>Ò¼ñY|¨˜c¶ñׄn¼5â_ü5ø¥à¡w2Ø^x§áGÄ/hºmï—¥yh·vv÷ÍU-KRÓ´m:ÿWÕïì´­'J²ºÔµMSRº‚ÇNÓtë$º½¿¿½º’+k;+;h¥¸ºº¸–8-àŽIe‘#F`vŠøáÏíñgñÇÂ|Lýž?eÚ›ã·ÁmZKÃàÿ°ýŸ¼࿈zeÄöÒx—À:/ÇOÚáÄßxBôÀn<=âÛO‡ËáßXK£àíK_°ž;†ôOÙöÑøEûji_õ„:_Ä&Ûö~ø÷âÙ·ÇöŸ< ª|8סøŸá|8ñçŠôû_ x…áñ=¥—‡Óâ^›á{é|G£è²ø›CñÓôûßG¢x‡\úÞŠüóø‰ÿ&ø5 üvñ/ì¹ðKá÷ƯÛö‹ð •ž£ñWágì¿áïkiðj×TC&‹ÆŠß¾!üø ðã^×£Žê]Á¾(ø±§øÞþÞÎæî/ ý‘bž[¿à¤_>7ü{ñì—â?|Wý›ko ø^?]~ÍŸ´…´Oü@×| ìÑ7>x“Á~+ø…ðƒâφíçŠîÞÿQøWñ7ÆcM“NÔ_PŽÖÞÆâdý¢¿?m_ø-ìûû|]ð§ÂO޳§í»åøïâG„>x'âφþXž.ñ§Œ_O6ºg†þ)øÇÇž ðþµ&•k~ú†¯o§´÷âÏKÖΗeª\i7–ñàüPÿ‚õ~ÄŸ~*|ð?Œ´OŽv¿ ?i¯Šº÷ÁŸÿµ<>ðZþÏ‘£üWøið/MÖ~ø“Å:Þ‡/ˆ­< |Mño|á[Ϧ•k©O>5ý¬ŠÚ6¶‘I1Òo¼ŸÙtIcŽ5gwv ˆŠ 3»1 ªª f$$€(ÔWæ.‹ÿJøiño[ñ†ûþÏ?µíÝáßkZŸ†|añSöið÷Á+ॗŠ4EFÖü5ᯌ_´§ÇÙãáçÅkG3ÚÅ©[| ñij¸»†Úi–án"ƒÙ¿doÛóöwý³ï~)xOá~©â¿ |`øâ(ü)ñ×ö}ø¹áKÿ‡?~ë·BWÓcñ—õW”Ë¢ëC%χ¼cáGÄ~ ñI(ÑüG{5µÔP}©E|/¢þÝþø•âèÿ³oÀß?µV…ðÛÆ:×ïüIø9Ámáv—ñÃ3Égâèž8øùñ«àž•ñSð¶¥èÞ'¼øZ|o¡x{_ŠëÃÚÆ¯e®éÚžeOá‡ü#á‡ÄÚðþÃ7ÿ >>ü.ý¢ì¿gŸþÓ!ð×ÄÿèZW†ü?ð÷Ã< ðÆbñÿ‡ñ~›êþ¶øõûF|fýŸ¾ x×Å$Wv']Ð>øûÆz¦Œ÷ÖðjVÖ×x¡ôÿÙÏþ û>þÑÿ¼eðO—Æÿ?iŸ‡zU¯ˆ|oû1|~ð•ÇÃÚ?…ïš4´ñ–‘áûË­CBø‰à9¥šsãï…~%ñςຸµµ¹×¡¹¼´Špoý¥?h_†?²wÀO‹_´—ÆmZçDø_ð_Áß øÇâx‹Á_±v¯oñÅ´„Ÿ³/Žt­kTð߯üg´ø½ðãÀ:OŠ5¨!ð]ò|0ð×Á¯6‘áÏÇâïOÿ®±¥ÜŸðsÇÏèðLÏÛ3à…§ì·ûGx§Âþ&øQð÷Q¾ý¤ü7kðMþx2i¾0ø6á´Ÿ]kt?Œêvï¤[Úξø=â+´ëú ŠúXTŸKúÓþ AûaøÇâÇìÇûü;oØ{öÈøsà«¿Ù#àké_´?ÄM;öj·ø!¬éz?Á ]èÚöŸ7ƒ¿iüV]+ÇVöÖÒxGíÿ ¬µ&þÕÓ‡‰tï ±½@­žÖ+ê¿?hŽ–kQi7^ý™>j¾!ÙZ¶®k·~#»ð®¦Í†tË=â ýUî°š•ö¥ÛÁsªÙÛÈô­øÏû ÁqeOø)ƒh>9‹Iм;áÇñ+WÖ5?‹|(ð7Ãÿ?‰Ï‡ü 7Ä¿‰ž ñwˆ²ÿ‚—| ð÷íà/Ùoö‰ðwÅŸØ÷ãWÆîŸàn‡ûHi~Ó¼#ñÆæÂk mGCø_ñáGÄ‹?õÏØÝjÚ5¤¿/¾ i?fºÖôX,ü-u&«`³€~ˆQTµ-KNÑ´ëý_W¿²Ò´*ÊëRÕ5MJê ;MÓ¬`’êöþþöêH­¬ì¬í¢–âêêâXà·‚9%–D‡æ/„?àª~øÙkâO~ÈŸ²ßíûhü!ð¶«©h—ÿ>x?àLJþ뚎…s%ˆSៈ?hÏŽÿõŸöZ£oy¦]ë<9ñE½Ô¬n¬tMCU¹XãõŠøóöKý»¿gÛkáÏŒ~"~ÏÞ)Ö¼A7Ã?k>ø­ðÓÄñƒ>2|)ø…áô˜ë¾!ü/ñ=–›âŸx®Ú{k›;[yìäÓu››[‘¡jšœ6óLŸúgüûÚ~Ò:çìÁñ{á/í‘û2øïÃ_ ¼Kñ‡ZÕi€iðÇC‡Á: °Zi7ZV?Œµ?‰^+Ô~!j÷xoá¶“àï‡Þ ½ñ‹<'e~#–2@Ý:+òƒönÿ‚ÂþÍß´WíŸã_ØïáßÇ߀µ/ƒ>é¿Gß^øy£^ëþÕ´=ÅvSYÿºø¥ñ2ãÂþ$>ñO‡ü[uà‰¶žø§è”wZ‡…íe·¼·¶÷?Ú[þ 'û;~Ì¿|û>êãïŒ_´÷Å µ¯~Ì?³÷ƒn>'|lÖ¼3jnïŒõmÞïKðï€< fm.üï|MñG‚ü*ÂËP6ú¼ãLÔM Ý”Wççü»á¿Ãü1ð?íoðWãì/©|mñ­Ãƒš·í-ªþÍš„¾#xûSŠItßé/ýœ?h¯Úú.¹¨eŠÖÓÆz‡…üÙþÍðúž’/þ™ý§?jÏÙÿö7ø]yñ‹öø“¤|6ð4‡ôë›Û}OW×¼Wâ½XLt_øÂ²Õ¼Yã¯ë†Úáto xKFÖ5ýD[ÜIm`ðÛ\KÐÔWå/à«zÁÏOñ»ãÏì5ÿøû8ië çˆ~?øëáGÁý[þ Ðfº¶µoø÷áÃ_¾?ý©¼á»?´ý§UÔ|]û?èÇE´‚yõxlTD%úSã_í·ðÇá7ìááÚŸÁž øÉûU|)ñ•¦•¬øfØÿáôÿµÍcÂ:¿…õ¯[xòÏLðö¥k¾ M'Et¸×…ï“¥©hÚZÆ÷Ú¼$ìj+ñ—öDÿ‚ç~È_·Á›ï‹¿³¿hïjÒü`ñÏÁ|áφ'øÛñ'[øqà¿…¾9ñŒ<5áÍâ±á|,дߌ> Ó5o‰?{3§ý¾kKÀÒÍ{ZÓ¼5¡ë>#Ö'û.‘ iZ޵ª\ìy>ͧiVs__OåÆßɶ‚Y6"³¶Ýª Wš~Ï_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›ðCþ<ý¿¿jÙ_öý¤ü3û>þËnôM{ÁšWÃï‰?¶­©|5Òþ|+ð?Æk­áÖ¡yá (¼}uñOÄÿ/µ?ØxIÿŠCÒ<-­ë?ð•®»¨¦… ¥ï´Á$lŸ‰7±ü[àôŸðOOÛ¢ÃÉû#~Ⱦ´îû(‚¤Ù|ð‹Å¸µý¬n¾*¹Ôm OXJß —ƧAº·{ÏYêÆ}"Þz(¢€?ÚWþ ;ÿ.ý”?à¦ÿ°Gì—ñWá·ìI{û:~Þ_<áx×À7?/ü&ñ³Ï xËÂ7¯se,°—ÚV©cu ¦±áßi3Ÿ²k¾ñ¥xA¾Y,5.Æö) _Ê3þ óû YþÓÖŸ²—ƃÿ¶7ì»ãÙ¾ø÷ã ׈j6Ÿ¼§ü3ð†õß]x¿ÌÖ¼o?Œ5Í3Äiá½cAðŠøOÁ¾"»Ö<_g/…$¶³×"šÎ ÜZ+ò?àßügöfø­ûphðOo|7ý¢¾~Ò7ør~*|/ð÷Ç_ø'ÃÖ¿¼#ýâgM³ðwÄ¿ø¿À^$ ð§ˆ<_/‚¾5øKágŒmô<Ü]hP\ÝØÚ]}+ûEþßÿ?g/‰>ø|þ9øÃûKü@Ò.¼IàÏÙ“à„.~(|mÕ|)e!‚ëÆºÖeu§è?| ʽ øñWÄÞðL÷±\YÚëóÝZÝCÛuóíM7íwÃ'ìQaû9ê?^¶i-j KâV•ðÚO G¤krÞÅ ×­7Tñ*øŠç]OÙÙ¼° .×K¹Öu uuge§^üèÁP~|1ñ·¼ û^|ý£?a+Ÿ‰úõ¿…>øÏö›ÐþÞ|ñ?‹/£’]3Âsüxý>3þÐ?¼âma ºþÅо#ø÷Áº–¯%¬¶úuµÍËÛC?éu~ÿÁ¿à¥Ÿ¿à©?²§ÆïŽ´o€þ|9ñÏÃ/Úçâ?ìý§øoáЬü?‡<ð×àß‹ ›WŸÅ¾3ñµÞ«âE×> ëöwº¶›{¥h÷zuž”-4;I¢ºº¾ýÀ¯åþ ÿ“ ý³?í(´Gþ©¯Ù¢¾ÈÒà¿¿ ¼UûS|Zý~ÿÁ8ÿ੟þ<üñøwâ_‡ü ðGö|Õ´/ |¹4}w^ñÏíQaáxgÄÖ3ÙêžÖüQªhvº­…õ¤‘lžF·@ß+äÿÚ§öØýž¿c/ÁRüfñV§ÿ ÅOÂ!ðkြ1¯|FøÕñ§Æ$Ú ðÇÂÏ…Þ²Õü{ð§ÀÝsàî—®xšy-|;mñ\ýž?hŽþ ø/m«Ý {XõOø{¥XÜ^C¯{§I òÙ€~¬Q_~Ö¶_‡?d¿è/¾þÓ¿´'‡5»-cVsû)|¿øßy¡hz.ŸcªÜkþ!‹HÕtë}3E»ÓïMÞ•zn¦]N++óf²›bâÏÙóþ ‡û*þÕ¿~üGý~þÒÿþ |n_ˆº€?f_ xÀWƒ¾øßPøwâ‰^8Iþ)ÛüøIðÖ÷Å–Hðç>-|cð>â Bê=+NšMfËXÓtÀÙj+óƒöjÿ‚Ÿ|ý¡ÿi/‰±ž»àŸŒŸ³Gíwð³ÃöÞ1׿goÚ;Bð&‰ã]oÁMOxÄ >#|ZøWñÃh—v7Þx7â³<6—±ÝÉj-íïå³ý ¿™?Ûçþ Ÿÿ1ý…?ࣟ°ìËâï…ÿ±µû7Á@?kÿ|økãOÉñÇÄ?ôO„«ñ³áGÃïØßøÁо(ÃáŒÖ4­SJ³ñƒ`×¥ÔmdÒõ{-/ý;úl¯ãsþpñ§„¾ÿÁFÿàÛψž?ñ&‹àßx öÙñ#ü†Éõ˜>4xKàÿ½:×UðжkØþÌ|?ñcáwˆ¦º°ƒ]Ñ>Ùi{¤kšzÀú§…üYáÍb×Nñ'ƒ¼[¤¥Õ¤šŸ…üQ¥i:å½åä¶"ÎþÊâàèª+äÚ—ößýž?dð—ñoÅ:­ïÄ‹šÔÞø1ð;ῆ5߉Ÿ~2x‚Ú5–óNøoð«ÁözŸŠuëm.'ŠoxŽK;/ x^ ­îiZ]Ýô6úÕæ™4W‰júEx¿Å?ŽÃo‚ÚŸÇ= ¾:xn×HðÞ½¡xwöwðÁøµãi+Ô´k Qø èwÑÅâ› -u»oM¨Yj#O‡Ã÷Úñº6¯!ü­ý“¿à¾ß±Gíƒqû@é>ð_í;áþÏ^3øiðÇXøiñ#àå¾™ñ_âÅŠ ñrM/áoÃ…ÞñwŒ|w­xßÃ1|ñíßÄ?Ä…¬¼¤éw^"×µ_ è¾*Õü<ûuE~Ox“þ ïð{àÿÆ¿‚Ÿ?koÙïö¦ýŠu/Ú7Ä_ðˆ|ø…ûBøà~¡ðÇ~,‘¡ŽÇÂò|Eøñëã¦àjS]éÐÚhŸ‚µ$}JÕ¯m¬áŽö[OÖ+ù®ý½ÿà¦_ðSŸØgöùý‚¾x›á¯ì9¯þÌ?·—í¯á€>ñv'Ç]wãO…þêŸ~x7X>0Óµ/ø#ÁúWÄk¿|FÒuZÐáñ—„¬ü'øsàÍQñÄß‹_µKk«Ûü<ð^Úž·©>ÆûVÕ¯åû‡|- Øê$ñv· øwO¾Õm¼?â/í×{ð[áçŒ>/üqýÿkÿ… ¼á{ÅÞ2ñ¼ú?ìóñQt@Óo5;‹Ë¿~Ï´gÆ/‰ò[M¡ßÚxãJУ”j>-Ô<;£ZêZˆÞÔWþÏ_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›Ø(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Ä_ø8ûþP›û|Ù;ð'þ®¯†Uûu_ËGü»öÙŸö¹ÿ‚gþÓß³ìñûÁQüñkã7‡|#áß i’ÿÁ5¿l? höréŸ<â}Fÿ\×øÀß³í¿ñ3ÇŸ¶WìQûDø3á/ƒ>~Å_´ŒüM¡ø—âOÂ]oÁ>Ñ~2i7ÃÉî¾êãWñ†-ö‰ñ=<5®Ecc­Im¦]ÜisÚÐÌŸðjGÃox3þ£û6ø×@Òãµñ7Æü|ñÇÄ=Y‚=滯øgã·ÄO„ ³Üyk;[i^øiá-ÆÚYfŽÖ+þTrùKðü áÇ„~#ÁàŸðJ/ x«J†ûD¹ýmþ ßY,p¤ZŸŠ~_~Þ_ü¨jhÑIûh~7ømà­^ÜÝ$’G'‡ôÖ·’ ¬¬æ·û[þ Ãø­âŸðM€Ÿ±·ÇÙoöáø1ñ¯à/…?hÏøÒÛâ—ìaûFx#Áš†•©ü}ø—ñCJ±ðwuï‡Ö~ñ_Šõ xûFFðF—¨¿ŒµV×W±Òô+ÁcçMùÇûH|iø“ñþCý„ࢾý‚¿à§÷¿²—ìñû.øà·Ä?Ïÿèý¬lµ•ñ_‰|!û`éð^èž ºøe‹u=N¿øóà»=Jí´‹kÿ2×Äéúf¡kceq©~¼ÁÒvÖóÿÁ ÿmÙg·†ilæý™îlä–(ä’Öá¿k¿€–mql™­.®­ZXŠHmîn ,bšEi/hˆ¿³‡ü)ðÛöˆð¥©Šž ÿ‚AþÏúï…"xâç>?|FñOÄ¿‹?·7Æ…?<ãtøßãÏjºßüáoø'¯Ç=/JÔl´ÿi>ÓîÅ]kz‹¥ø†ò]ëV›Ãz?×?´ìÿý¨ÿà¦ðMïÛÓTðgìcû3ØÏÄ2Ñ~-\ü7ý­¾<|nñ×Åÿƒ;—KƒRðF•e«þÃ_³þ‘§¶‘¤]üF²‚ÃXñÖ—®ˆW_iŸIMuÕ|»þ ‡ðëö¦ÿ‚éßÿa?~8þÒ± üKñöUý¯fφ~'ø÷â ø{Æ÷6W:ïÃ?¿³÷Â]?Å<9§jk'ˆã×üðóÅú æ½­ø¡ ¹—J2Ø~¼é?>3~Õ_~Øüø{ñ¿àOì÷à¿ØøïâçÆŽ? |Ið?Æ_´¿ÚÜ]xsà¯Â¯ƒ¿ô½ã‘§x›ÄòéŸÅo|Jø}à[ /hwÞðuŸ‰uïÞëÿÀ? ?â+Ù7þ‘ïÿvÿÄOøkÿÑ_¤ÿÿi߆ßðZÏØ#ö§Ó>|=ý¦ÿf/ üMÐþ7þÈš™ý¢>èŸþ(里þ èö÷¿¼/áßøëÆš‡‡ôý?â­—ö&¥&¿§Ý]x‡@Öì^ÒÒ+on¿Wëâ/ø)Ÿ„£ú}û+ÿÁH¿e_ðN/ø)‡üGöÒ¼[ᯉÖZÇÚ_ã¿Áψ6 ã_‡¿´ÿ¿Ù#ÁÞ²Òo|3 _i2i"ðçÀŸj~¡a>£¤ø·V_Þ}‹Ä2ø“ú/¸þÉðPoŒ>ý›þxGöþým_…ŸµG‡¾x7MñÅÃ?Ùcã‡íWà_‰>%²ðÖ›ž&ðßÄßÙ{Â<áKßÈmï5Ï üZñ5oøš÷WÐuK›Ý3C›Ä÷\ïü‹ö7ñ2üoÿ‚©þ׿>ÜüðoüÃâGÃ$ðÿìÉãÐdñ&›ð‹áGÂ_áÝ÷¾*hþÔµMÃ?h=sÆ~6ñ·¼¯ªjš ¿´‡ÄœšåÅõµã—üß­~Û6ŸðNÏüSø1û;þÊÿ5Ž?µ'ÆüQøËñßöÓøÁð‡âïýƒh‹k» ³½ÞŸ¨\|N½–ûSÖ|A«K¢é7º­û^þˆ~Ö?°ü“öÃý½à™?¶E×€ÿbOÙPý†~4\kŸ/|xøçð‹Æ?¼Cão x3^·ñ¾| øÅ¢ø[ã·¿umÇAø©ã/|9ðo†'~Ó¾ þ˳Ÿìsû{üqøð;öáøKñËÇßÃ/دö…ñOÂÉ|àÏ…ôÝEü%ñZÇÀ§ÀÞ7Ôn¯þ&hVvpøWYÕla»±×­5mCKºÓ<™ÿ¦/Ù“ö¬ð§íM£x‡XðÇÂoÚá+xa´(µ='ö›ý™~3þÍÚÍÅÆ»kytxzÏâï„|/‹×J63[k·Þ¸×4Í*êK8®/¶ßؽÀóËÿÿÊ#tû;¿ƒ?ú‡|Z¯®ÿàç/Ú+âGìßÿwý£uß…z®«áßüKÕ~|¹ñN‹<öº‡¼'ñÅvv8– ËwŽ[?øH Áfÿ`ŸŽŸüoðßöŽø1à_‹VxûOý¡gψß~,x'ÆÚ%§„üá?èø½áÿ_x‚ÓÁ^+¸ðíý‡ˆ´í/ëú÷‡5ÿ Zx‚ôiÚ¸„âOø$aý½~Á0`¯ |ý?a[߆w_²¯Áox{Yñü㟂;ü(ø1ûHügøçâÿŠº­‡öÝß„“©5ܺe¯Ã»}JÊúþãP‡OÓyÿø&?ÅÚ£þ ›û?ø_öÿ‚€~Í´‰ôÙÕµOüý®¿e‚k_…Ÿ~A©ê—þ ‹Ä^ ýžü)ñ'ã?ÂßøcOš? Ťø¯á¥Ž•&‡¦è“M«GuçÜ_þ£ü/ø…ñãöøÓáoˆVøŸû=þË ô?4Z/Å¿CàŠß´ÄO[C¢èz…çÃmB[¯|4ø7ðÛB}wT†Ëâ—…>#øóâ&³ ^ øWÂßVóâ0ó3ðnÿþ Ãÿе_ÙSá×ì+¥ÁPa|@ñxóág‰5?ãŽáx×Zñþ³áŸZøzÏÅž-¶×¦×Û£|søû@|BÐmuü‹Ÿü7¾Ò|'®x§áÖ¼‘˜eÕôéÖzç‡$ÓfºŠìŸx®ÍvmM,¥ðNŸŒ´ü£öpøwû ~Þ³Ÿí«_þÍZŸ þ~Ô?²÷ìÿñ“ö´ø/ñÇá‡u »/†Z€Ð?gO|TøÁð·Æ:7„£Ó¼5®x_â'ÃÍÈ ßX±×$‡WŠÂÓÄhŸØÏãWü¿öâý”þ'|nø/ñ ölÿ‚q~Ã> Ô¾#xwÂô˜¼ñÓö¼øÉªê~¿)uðª=NëÄ ~ è–þÑô÷¿ø€žñÖµc{âk  Aÿ *êžúÃþ>ÿ”&þßöNü ÿ««á•}wÿÿ”YÁ4ÿìÀ?cýg_‡5ùÓÿ|Oñ?Š?àŸß´ì]ð£öfý²¾?|løíð×À7> ÿ†}ý“þ7|cøugø¿¤_ÞE⯊~ ð†©à/júe€õkíK·ZëøºÞÃPðæ¢4 ,"x¯â±ss$¶:gÅM[àÔ0ë[´pê/|?3O¥ê—0\~í~ÓÁC>~Æ_²—ÿ…±Wì eðãÂ?³¿ÁÝ#ÁÉsÿøùáÍFïD‡À: ÛjúÞ‹¦ÿÁ,µÛ;kžcë^$Ž-{^i5ëýFyµÝfyeÔî½›öÛÿ‚X|ý¯à›z—üzÎ?øVÿ<7ðßÀ~ø¯ÙZ RãáGˆ>iÚu§Â¿¥™šÍµ›m1t›}+ÄöFêÊëÄ^ÔüA§.¡aw©®¡oò7ü¿öŸý¦?bÿÙÓáÇìcÿý–i»_‰ß³_„´_ƒÞý f¿ÙÿãOíƒð?ö…økàM6Ïÿ üS§ëß³§€>"xÇÀ^-o ØéÚG‰tïŒð|·Wšhñ>£«Û_뚎‰¡€°§üÇöÐø+ÿlý¶à ¿­fO„Ÿl‚þÐüGû>|øãñ[ãF ¿¼qðÓOÐþ$jú¿¿fOÙ×B¸´½Ð´ŠšõÌdš½·ˆ~ ÞG½ôZ†§©¯ç§íÁð¯Ãàï_ø&F™âûu¿ÑüûCñRßK–?2Þ÷Äÿ &é?>xcâ^‡á¿ˆÞÒ|WiuygáÏ‹ ¼kð‡â.—®£y¦<^'øqñEðï<-w,¶R\ÚÚkÚ-…ÅÖ5ž£oe{m4ŸÍgÁ/Ø¿ö‡ÿ‚#ÿÁA?iÏß³×Àÿ~ÓÿðM_Û§W±ñ§ÄÏ|ÒìüOñëöNø«¦êþ,Ö´­Gÿ ^ò/|VøY¾/ñ&’¶Ÿ…ç‹m¼;«éßhš–¥ðÿJ8ýƒý½¿à–²Gü—Yý5ïÚƒÃÞ1ÖµÙÇÚ‡¾¿„|i©xA&›\ºð¥ç‰|7âA`’6¥á¿Ïà DY¾—â Q¤ ÐüA¤«ãuüÑÿÁL¾/|møÕÿLÿÁ9ÿfx;Á_|3û;|5Ô~+ü)ø7ñƒâˆþü#ñÆ þ|iøµwñ#\ñφþ|uÕt_Eÿ„#Áqh6? øóâÅåÐEæ›ð¯BðçíÀøÂûNñŽ|M§økC¼±Õþÿ‚ÂÿÁ0¾8|bý¢¿d¿ø*Gì!eá½göâý‰uÍ„Þ+Ö¬ü#áïÚWà厹©jڇà |gxöö^ñ$Vþ$ñ®¦_ê·v:V¡ øãÄwš¦Ÿya¡9ûÏǧü«â7‚¼að÷Æ?±/üëYð"ë> ¾øQâ/ø›ÁºÃÏj6~"Óü5g¨xïÁžÖb¹·ñU÷‹õ{«(<=›nÚÒ›k‹™d¸aë>ÿ‚•Xø›Âú|7ÿ±?üCß.-­á¿ø ©~Çß`6zóÁÚtëoÚGRÑ´ŸØâïJŽöf··ñ-×í¦iÓÚÆo®’ÁVh êSãwÅÙ;ö~›â÷íaá/Ž?¾$üNø§â fãá/ì—ðOâí?¨|"´ñ6›«ê¾øGá½áOƒ5/ÞøKÀ^ð†á¿|[ñ&™ xOÄÿ5]K\i¼)cãŸxnÀùÎÿƒ'~øJÃþ ûûOü\·ÓTxëÅ?¶6¿ðçVÕÜ«»xKÀ?> ø›ÃÚm¸)¾ÙcÖ>$øžêôÇ&ÛÓ%‡œ™°‡wÿ»éÿðU¯ø6[R°v±Ôn¿o WJº¿³cm{s¦MûA~“i³ÝBRy¬%µÕµKi,ä‘­ÞßRÔ!hÌw— 'ÿ¤ø‡â¿ìaû0xçö9ý§ÿcOÛïàÏÅ/Š?µÿ‰þ%øKÄ>6ýˆÿhýá!ð·‹¾|ðm׉>)Ý|>žþÍÖ~k‹«ÜøÒó@Òà·¿Ñ$´Ôo^êò-?˜ÿ‚ç|Hø¥ûGÿÁE¿àŽÿ~~Ã?ðR‰~ÿ‚x~×úÿÄŸÚÅ^ýÿi¶ÐæðîñÏöcצ†Z•÷ÃÛ+?‰~ðCÅúŽ™ªx~i<5¬YÞxvãIׯbÕ${0Öø:;þPQûsݳëaþϵöÿüÅžð_üƒþ •¬xÇÄÞðž‘yû~Á^³ÕÃãý’>'þÒ´ÇŒüEâ¶Öô/…:EçÂO~É<ðûƾ>Ót}^ÓÂšçÆ¯|=¸ð'‚"¸†[»»©5y-@ð—‰õ +ö§]ý°´ÝÀW^ µýŸ?k kâD:žßà–›û;|JÜøÅ­†<ÿ $èðÏq]ŪîÒ.üeý“~ |ø;â;Ûk‰·Ë þÑ^øSñâŒõ I}áÍÃ?>ëÖ ³wªßk1E¥½¥Ç×ÿ>üÿ‚/~Á?>x/À´gÆO|/< |ýŸ>'~Ð?|gã¿Gâ߈^0øƒâ/üðŸi^+ñT^!»¸ÖµE·ð‡…õ sÃ>}vÝ.´8çþ7¿à•ß¶çí¡û"Á?à¤zÇìSû2øÇâgüût~Ð_~!|lÔôû ‡Ÿ~Ýxöy𞽯ø"×X3‹?4+Å>+ƒÂ:~‘­ø_á߇|=/¾(Á}¥Ká¯xÿû[ÿ‚_x§öOø—û|(øÓû^_ë¿ þ7XKñ+ľ4ñn¤ÚÿÅß|WÔü­/â^»ñïÅ72\j^'øÙmâ}"óÃþ?Ôïî®a‹SÑF™áö‹Â– ¼?†_ðl¯þ |ýŸü{ûþÑŸ±§íÕð;âÅÚ«ãßÅojÿc>ø;wà/ø+C×퇊þ+k^_‡~½–?ë^m'ÅÚÞ–ºÆ¿u¢èZºÍî½enÿ'~Ç_hø#¿üWöËøð'öÿ‚üTÿ‚Fü[ø§¬ëš7ü Ÿ±7íâ 3àGÆ(bµÓüGâ‚3Ùø2þ/‰ßÛTÓo¼#e¨è—±/Š|kàOxbëÄðŠÇ7€(|-øÏûKþÑ¿ðv7í‘{à ¾3ø“ö7ýš¼eà€Ÿ¿hŽž5ø à†>Òo¾ø/Å1ðw‰|û=~ӥ׊üQ¨|Pñ¶¦taàM [Hñþ¯©Oã;(|7¥øZýëý¸>ÿÁJ¿mÏÙö‹ý“|Sû&ÿÁ>¼9¦|zøQâχ־+¸ÿ‚‡þÑ>(Á^#Õ4ù$ðwŽ×ÃMÿ³ÐF¿7¼]o¡øºÛFþÝÑS¸Ñ¢³]cKi…ôþÕß°ÏÇÿ‡ðQ€¿ð^?ø'ÂO|W×¼}ðÃ@ðÇíûø²×þŸÆˆÿ 2øqá>kI5Y¼O¦/êô?ðPæñƇ—ðSö=ý¸|Wñ£R¶–ÚÇá¯ÅÙ_ãOìÕá ë²,±[7ÄOÿüáÖÞ°»E›Ä:߯|_ÖSIIî|!áoj’iš6¤ÚÿÁ3¿g¿¿²ìû/~Í´W´ÿ‚|þÓ¿"±Ýãþ×ú·ÂýSW”¤’·‚>üøMã/èP3GçAe§x“ã/Ä-T[,ÆÔÞk÷w1ÁÄ÷2ÜF>*ý uÿØoà›_ÚAý¨¿kO‹Z¾‹â+¯k¿²·ì­ñ‹ãÍÆ·ãèOü%#±³ðçÂÏ x–?†¾ —V×ßÃ? ­~ êúd á½/NÒµjš6³«WóÕÿ”ÅñöSý˜>%~Æÿ´§ì•ûkü ø­ãßÚ“â?Æ¿ k¿¿dOžøI7‚¯~|ðô?Ú¼Kàm7Á×Vøeâ ;m_Õt˽NâçEµÑ†¥w¨x6k×}?þ#ÿ‚Y-ƒµŠë¿ðOïˆI­‹66ÃXH|ÿ’$ÕD% ±I£éÝùÁJÓY@kSõ÷_Ä/í+ñŸâGÄø8ÿö ÿ‚ŒxGö ÿ‚žê¿²§ìûû-ø‹àÇÄø'Gíia®Zx³ÄÞý±t˜n´¯j_ ,üSªèzeßÇoÿj^A¦­ç•¸úfŸ© u¾þÑþxãOø—àO |@Òt_øsMñŽƒ§x†ÇAø‹à¯ü8ñÞ‘m©Û¥ÌV-ð4ÍÅž×­•ÄzŽâ-'NÕ´ë…{{ÛHfF@Ù×ñãÿ)húOˆà¦ÿðm¯ézv¹¡kŸ·v½£ëZ.±em©é:Æ“©þÐ?°-–¥¥êšmìSÙêv¡g<Ö—¶WpÍmwm4°O‘Hè°êþd?à¹ÿ±‡í]ûVÿÁ@?àˆþ9ý˜>¯ŒßöLø§ûG~Òž2ñ‰ÿ¶ôO…:=çÂo~É?| à|@Ó´ZÇ¿Æ}wáÝ×ü—q½ÝåÓêúÔsèþñÞœý7×ñmÿöñ޳û)ÁÖŸðSŸØ·á¹¹·øû@x2ßã~¿à69,|3áÿŠÚ׿ƒ?­t˜æžÊÂåo~'üAð¥ÄÖ©jš’x—Oic†=?M²¶þ¤µÚÿÚW„\¾øûY¿ŒáÓ·ÏðŸJý˜þ.ë¾*ÿ„!Gð}¿Œô ]|»½‚¶œž.‡âÑøa!Û«ºë5ùŸÿ»ÿ‚hüRø_û\þÙðTÿÛMÐôÚïöÓ×.t¯|"еí7Æv³WÀ K|3ðÓXñΓæh~.øu£ø7Àzgµ Ü^øFÕ|§ÃáWQ·Ôµhóþ KñcWý°¿àåÏø+¿ÅÏ‹ÜëZïì¡á~ÊÿlõSçiÿ ¾x㌠µ1áKšá4»Ÿ\ø;Yñ%Ö£jðÜÜOãï’"ƒÄw¶£úáø·ðÃÂ?>|Gø;ãý6cÀÿ< ⿇ž.Òî!†x¯¼9ãûÃúŹŠâ9af’ÃPœFdÕ$ØûIQ_ÏïįØ;ãüïþ »ã¿ø*ßìƒð¯Ä´GÁÚ¯ÁWžý¸?fO^è¶ÿ¼/­Ý_x_VƒãïÁ 'Å:¾£üG™õ¿ Zêž+øyý»¥ø•n5ŸKáhµ¨¼I¯„~µý§ÿoOŒ¿þ x×á?ì û#~×þ9ý¦~&øC\ð_„µï޳ÆïÙ?àÏÁ wÄZTú\ž=øñ?ö•ðÂ]^Ó¼ ·W:ÌOÁ량þ*Õ4»]+GÛjvú¥~RÁ›ß´ÿÄ_?ðN‰Ÿ|}¨ßëºì·ñ²oü5Õ¯åšâ[‡^<ð헌켷WÍ4ðøcÅx®m:2#‡MÑ5½#F³,´Ûh£ó?ø7cáÏ„µø,ŸüñWQÓVçÆžý´¼[௠êReÓ4?‰´ïí«xµ!‰‘¶Ýß\ü4ð´iwÇ,VÞÚÑ_Lµû'ÿÛý†þÿÁ ?àœ«ðö[‰_¼Ocâ>'|{×¾ü ø…ñwÇ¿þ*xö÷Â^ »‡¿ ¾h>(ø‰¬øKÁúu¿‡4[}7C¹¹°ð‡5ox†ÓJó¼G%¯áÏüâ§ÄÿÙwþ ÿ•ø©ñÛöÿ‚–xáçüöµÓ>*~ÏÞ+Ô?àŸŸµî˜Þ“ã‡í;â8SÇí¥|9¿ŸÀ—o¡ünð–¥5ίöocâ#ªë6§[& íßðzc½üötÖì¬õ+þ ðµô½^Õ¾©¦¹ýŸiû²öñ»³cw§Ø]·–2n,­&'̶…“ô3þ`ý¦>%þËŸðHÚ7Å? uO@ñÄ{ÿ|_h÷š…<7ñ;ĶÚO5+;ËWŠâÆïSð„ß…lµ'‚ãN¾ñµõ¬«um?˜_ðv©ñgöÂý˜ü ûþÌŸ±ïíÝñ¯â¯ÂÿÚßÀß|Wâ‡ß±wíâ_„?ð‰h~/øvâãßt¿\ø3Æw3ê¿#üø±àøz|DðŽtO|\Ð|3âM;ÁÞ-—×vúî‹%÷ƒ“ð¯Æ^Ö¾xoƚǀµ­#Áñèþñ?~*i^ ñ­æ‰ý·¥Úß躎ý?ñþ Õ§~Ú¿oïø#wíð[öý§~1|ýŽ?hÍã—Ÿ~x«Zø£ã<ñ?ö[ø‹ã‰µÿ¾™ 4Jømῃ±ücÔ< ãx£Eø‹s/…4¿ i×üHúåÿŸý¿noŒ~"ý‹?m/ø'½à‹ŸÚãþ ÿãÏ‹~(ð_Â?‰·–z¾1øK㧃4O|BðÕÅæ«£hqkÏáýè¶CZñ7ƒ-¿áñGŒdÓ¼káßÅ¢O7æÌßðqoí‘û9iÒi¿ðV/ø"·í#ð/áeÅÌ^ñçÇ…öúçŽ>ZXë•y î—âO Càùlž›†kx>7ê÷Zże§éÓÏûW×¶ŸÆÛ“ÅŸ¶üÏöÌý¿a¿Úgƾðÿƒ?à Úí=ðOÇÚ†>üFð¿ÁŸÞ~ÍZRi^2›Å^2¶ð'†~ xƒQøyįƒ>×|km©üD½ðŽŸa[5é4/¼>(þß^ øð«Æ>ð‡ì=ûqüvñÿü%®xNOÙßâì?ñçá?ƒ|Euâ=&óJ üFøÓñóÀ>ý˜¬ü%ÒiÞ/Ö¬þ-xŸOƒDº½»Ó¬õÿ$ÙÊõìM?À ?cßÙ~ÓöSñRøÛöjÐ~|+ð—À¿}¾çS¹Õ~x3Áš?„¼úåõ­Ž¢úå¶‹¢ÚÙkðê–~­i­[_Újº}Ž£ͤ?O×ç_ücö1ñ'üãþ Ùû/~È>3ñ5—‹¼iðÁšáñ¦·¥Íqu£7Œ|ã¿üPñ^• ÝÝÛÚ]^xwþ ñ®£áß^ÜÙØÏy¢iV3XÙI+ZÅú)@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|ûûIþÑ~ý˜¾ÚüCñ'Ã_Ú â­¥÷ˆ ðÍŸ…fÏ€ŸhŸˆj7:.»®[ÜÝx/áG‡oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüôýšà¬ðN_ÚëáíßÅ/?µ×Â]wÁ–^&Ô¼!syã]KSø1¬Ç¯é6:V£}n/ø~ËÄÿ¾|;øâ+MÏáìÿ¨Zh–º×‹<9«êVúE­þ©©ÞÛi±\¥”zýÌP¬×w'õa¡þÃ?±?†æ? ~ÇŸ²Ï‡’ñ£{´Ðÿgß„ºJ]wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þ %û?|ð¿üÏþ ×ð׆~ |"ðMwÚÿĪÔı•rà¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÏÚÃöOý–tßÙgö•ÔtïÙ«à†¡aðã%íõ—Á¿‡V·–W–¿¼G=µÝ¥ÌŽ{k›yãI žIa•HÝ]A”_ðlïìãû=xóþûø³Ç?þ øÏÅ:¯ü4ö§‰|Yð¿Á"ñ¥öÚÛãΛeöýgXÐï5ϱéÖv–¿h¹“ìöV¶Ö°ì‚£_é/Ä~Ñ<_áí{Â~%ÓmµŸx£EÕ<;â "ñY­5]Z±ŸMÕtÛ¥FGkkë ™ígUuc¬”à6øû?üý–¾øOàGìûð÷AøWð‡À¿Û¿ðˆø Ã)u‡ ÿÂOâ]gÆ:ÿØ’öæòäjxŸÄ:Ö³sæÜI›½Fà¦ÈÊF Ïü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEó¿ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ35ôEü–~Ó³ïÀKø9ëþ ·à ‚l¼ ®þÂ?õoÁVŸ |má-gV³‹ã©´Õ5_ ⦨j6¦ÎÐÛ^ÝÙMsÙmü©WÈ‹oô—ÿ …û&ÿѯþÎÿøe>ÿó3WüAû0|ñWíà?Ú³Ä? ¼7ªþÑ <¬ü?ðÅ{¤½>'ð¿ƒÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3_š_ðY_Ùƒöjð¿ü›þ â/ þÏ|;â öPøÇ¨èúî…ð—À:F³¤ê¾Ô$¶¿Ó5=?Ãö÷¶–ò(’ «Yâžãu` ~Ú×ñOáwÃÿ¿“âO ëv²Yjº> ¶ó[ÎÖ—Ö²É Ââ“c’+`€Èø#WìÁû5x£þ Mÿùñ‰¿g¾"ñµû(|Ôuw]øKà_YÕµ ¯éò\ßêzž¡áû‹ÛûˉÉ=ÕÔòÏ3’ò;1&¿Ká¿dßú5ÿÙßÿ §Ã_þfkÒ¾|.øðKáÇ‚~|)ð®™à†¿<7¥xCÀþÑVdÒ|7áÖ;-+GÓÖâk‰ÖÒÆÖ(á„M<²lQ¾Fl“ßPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ35üÚ~ÌŸ³ïÀKÿø9ëþ Ià ÿ‚o| ¡~Â?5ÁW |sá-V¼‹àQ»Õ4¯ Í¢¾§ê7FòìÜÞÚYCs?Ú®|Ù[Ï—wõ§_‡¿?b_ÚÀ¿ð^oÛƒöìñ…´«OÙ¿ãoì‘ð‡á?ÃÏÃâŸÝêú¯¼#ÂU×4ë¿ [_Éâ=*ÚØøO[òõCO·²¹û<^DÏöˆw€~Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@ÌßüÅû8þÏ^ÿ‚#þÚÞ,ð7Àƒ> ñN•ÿ áý—â_ ü/ðG‡|A¦ý»ö¶ø ¦ÞýƒYÑô;=FÏíšuåÝ…×ÙîcûE•ÕͬÛàžXÛõwöOý“ÿeKöYýšµGöjø¨_üø7{}}{ðoáÕÕåíå×ïOswws?‡$žææâyiç™ÞY¥w’GgbOÔ¿gÿƒ?µ/Â_|ý ¾è?>øëû þïx™.¤ÐõïøFÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌ×óIÿáþÏß¼sÿsÿ„Ûà—Â/Â5ÿ]ý£<;áÏøJ~x7ÄØ±þÈû…¢kh·ÙZ5žæû.—cäY[îo*ɯ뎼àWì»û?~Ì¿ð³?áBü,ðÏÃø\Ÿ5ß‹ÿÿáŠò?øLþ%ø›ÊþÞñ†¯ö»»½Ú®§äÅöƒoä[üƒË9È/ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(ù,ÿ‚Ü~Ï¿<'ÿÿƒ4_ |øCá­Æ·v»£øÃIðÿÃ_hÚgŠô”»ø8Kñ-†¢ÛZëºr‹«¶Z¤WVÊ.g &“wô—ÿ …û&ÿѯþÎÿøe>ÿó3_˜¿ðU/Ø—ö†ý©?lŸø#ŸÆ/ƒ~ÒµÿþÇÿµ¾­ñcã¶§¨x§Ãú׆üwsðÎX53LÖ/í/üIrÉá­\;B‚öõL†„yñný ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfk€ø±û$þÊvß >%Ü[þÌŸ³å½Å¿€(ñ÷ÀσÞ8ñ5çþ?Cyâ/ü2ðW‰uÛ¸lþ1ø¾ÖÎ_ZÑ/u â´¶Š;{hå¸t‚Ò‚FŠ£úÿ†Bý“è×ÿgü2Ÿ ù™­¯Ùãönøû&ü,Ñ~þÎ_ |;ð“áG‡/u­GDð?…c»FÓ¯|EªÝkzÝͺß]^ÜùšŽ«{u}p^áÁšgØ0£Û¨çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™šþi?m¯Ùûà6“ÿ/Á|¥üøE¦øÅ??lKßø3OømàÛ? xŽóLøñúïM»×¼;o¢Ç£ê÷:}ݕՌú…Ķ—–Ó[¼rA'õÇ^ âßÙwö~ñßÇÏ…?µ‹þxg^ý ~h¾)ðïÂoŠ—Ñ^øDñ¶¬è*ÓtYb»ŽÍmµ½Ä:ÖŸx·6— äjW>SF쬠¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfk‚ø'wüúGi$ý…ÿc§wfwwý™> 3»±,ÌÌÞ %™‰%˜’I$““_bÑ@äýûRxOÂÞý½à£þ ðG†¼?àßxgöíøí£xo¾Ñ´ïxoÃú=ƃŽ“¢hzEµž—¤é¶pªÃkcakoko¬pĈt¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ^gñ{ã?Â_€Öþ(|nø‘àÏ…?<;mqu¬øÇÇž Ó|7 ØÅmgu¨L¯©Ü[Å-Ȳ±¼ºK;s-ÜÐÚÜ<0H"|zeü˜üwÿƒ´f…ñߌþ~À²í3ÿøá˜ï’ÃXøsá‹Ï|3×ÉfŽçVÒ.ì4üQÔ|;arˆ%ÕeøW¥XjQ 'Òõ l$µÔgÅð?í‡ÿj~Ñ~ñG‰|ÿøý…fÍ YþÒÒ|%oñÂO蟴îôí–Þ ·ÑußÚ kµâá.,åñŸÃ=7J¼Ô-–;¿ jztwVó[·×ö:]Σ©ÞÚiÚ}”2\Þ__\Cigio—–âæêáã‚cPZIetÌÍ~;~пðpWüïöYø³âoÿ¿m/ èüýš¾%Ñ|'ð¿ã¿Å/JŸUÓmu{[9|að“ágŽ|>£í³je§ˆgÔ4‹‡kVÚÊþ)­£üGðçüÇÿDý¿çÕ|wÿ‘ÿ‚§üOû7Š|7k¤Þ~Ï_³mýœ>ŒZêúµökâ,ô¯ |°‡Gi¢¾}?Ãß¼PúÅÖ«"?Šôÿìyuۯ؇þÿ¼ýέ©ü"ýtÏxÛÄ^Óü+â/ˆŸïßã'‰µm&Â{kÙVßMñE»øÂÓjº¥¾§­Iàø]5+˜-!ž?ìý?M²³ÿ=Šß¾þÒŸµŸíÛñûá±sâ…ÿ?lÏŒž?ð¹y¤êšÖ­áoj=üú6·ic«é’\ÚM­e©YÚÞÛ–òî Š@È ô?ÚÇAÐü/ÿÿ‚”xwÃ:6“áßè¿·ŸÇ;Fд-:ÏHÑ´>ÖçBŠÚÃLÓ4ømì¬,­ãUŽ [X"‚#TE«½Q@Q@Q@Q@Q@Q@Q@Q@Q@Êïü¯ãïxkþ åñ·Nñ|% jöùý¦.E†·â=J¼6òÚ|;X§·÷Na‘£‘RP›£p¬J°ÔƒâÏ ø©.d𿉼?âHìš$¼}YÓµ„´yô)rÚ}ÍÂÀÓ,r–R†A”#cø.ÿ‚Á ¿àœ?ðQoÙ?ã/íûU|&ño~'ÚþÙ_¾C¬èŸ~#x*Í|/áÆðŽ£¤Ù¾!ÒôÆš ­Sw¼kcu:̉,®Äúãÿ‚Á-cOø&.ñ7@ý¼â韵? k:‡^ñÿŒ¼xú•ÿƒíu«- [i¼_«êÒé«mo¯êi,V-w&dyÕÚÊ€~‡QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEs~)ñ—„< ¦I­ø×Å~ð~ Ìójþ)×4¿é‘%µ¼·w%þ­uih‹oi÷S3JVðË4…cØt•óWíMûbþ̱/Ø>,þÕ¿üð?ÀšÔ>Ó5ßßÍ ëž!¸²½Ô¡Ð|9£éö×úï‰5¦Ó´ÝGQ:^…¦j7Éacyzð-µ´Ò§ó ûcÿÁÓºG޼]ã/ÙWþáû7|Uý¶¿hCo„ü3ñŸLð~¯/Â/ë:¸¶ÓWÆ^ðdV¡ãO‰w‡µ«ÔÒ÷ÅúwÃ\j‘ÿÂAˆüQàÈ-O‰<«öÿƒg>"þÕÞ9Öÿn¿ø.¯Ä¯übøóñOQÑüøSðçà¿ÃmkÛ­+À_ üáÏx>ÂóS¸{ÍNúÛþÓ´½&;ýRöI/uKákö½FöYo/fžæY%oO ˜?eدöOýˆümðÓöPøð×ào„â´°µ¿OøzÞßÄ^(m2Ú;;=KÇž7¿7Þ6ø‰â¶†(fñ7ŽüCâ/]¬iö½Rr §è¢€ ó×ø·ð¦7xäøðö9#fGGñ§†ÕÑÔ•dumH2²°!”€A¯B¯çC[ÿƒTÿà‹~!Öu}TýŸ>!O©ëšþ±¨ÌŸ´ÆxRkýNê[ÛÉR¼`‘D²\O#¬QªÇ!U@øÂý°/ìuOø(oüÇQÓ/m5>÷öùøûsgcs Ýݼ·zE=µÕ»ÉðȤ4rÄbh¯.ø§ð?á×ìÓûX~ݳÿÂ=*ïBøaðwöÊøÅðûÀz5þ«¨ë·šg…ü4¾Ó´‹;cW¸»Ôõ9 µ†4’òþæ{©ØšWrMþ·´QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE!ðSÏø8wâ­ûOüÿ‚tÁnþþпµ_>#j¿~'|D×|?¨ë>xšÇXÓôÝ?Â>Ö5Iôx²kxíüQ¬üHñÜëžðg‡´Ë´ÝS[×nuë€~ÈÁR?à²?²?ü»áf£âÏŠÞ)Ðþ!|]7ú‡†f¯xçÁ°|dñzÔ±HúídžuPêú„´Í-ÛP¼ñ-î‘-i4ë8|Éu(—Ÿ„ðOßø)Ÿü{ûH|<ý­¿à©^Õÿfø'÷­sQŸáOìã©i$øsã¯ø?ÄêúûYü>Ñ'Ó4¯dkÐ[øRÏÄÿ|ks¥Þøƒ@:d? íµ¸-õ ¯~…Á1àØ?|=ñ/Š?jOø+‡ˆ4¯Û{öÅñ§‰®u¹­5/x»â/ !¼ðæ©¡ø£Y»ñw…<ãüM†m"çJÔ‰'Õ<a Îº.™¡jb(u…þ¸èâoØ{þ ÙûÁ9¾ê d?ƒšWÃkzÕ׈¼I©ÍªëÞ.ñ—Š5›È,meºñ|_©ë~&¿¶ŠßL±†ÃGþÒBÒÖt½2Íç¹y¾Ù¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†Š( Š( Š( Š( ¾&ý¥oÿÙóöcñï¾ k×7ø§ûFüO¶›Pøuû3üðf£ñS㟊4;F”j-›Âz;Áaà¿éimy&¥ñ âF¹àÏZ +ÈäñÚ-ä€z¿íaûBøcöLý™>>þÓ^2·kï üøIãÏŠZŽ•ÿe¸×Oƒ|9¨k6^³¸ònþ#Ô-m4->V‚TKÝBt(¿™Ÿø7[âÃ'öRý¡¿à²?·ÿÇ…Þøéû~~Ñ5µÖþ:ürøàï‡Ó~|4Ô!ðgƒ¾xK]ñÆ­¤é~ðî•âÍÅÖzo†´ÍFÞËûÃþ Ñ Ó–×Áºc(ï÷€nÍWø¡à?ƒÿgoÚGöBñÿÅ›[NøCiûBi?5? |O×t= çÄúŸ„ü3ñ/öuøÕñÿá‡ãð݆«®ØøÅþ2ð¿Œ5Í/D×®ü?¢j©¡ê¿dúWãÇ„³oŸ|qøíãÿü/øOðçE›_ñŸüSvm4N‰ã‚0DQÏy¨j:…äöÚn¢év·ÚÖ»«ÞXèú6Ÿª_ZZMù5ñþ Ñû2ÁH?oØ«þ —àÛQñ¾‰û#ÙXéþðgÁOø3â/ÁêÞñ7‰ñŽ f׳§|ý¬fߎøicм ñÃÁ¼Oðš-GÆ^*ðýœ ¤Kñ*ËÂÿ.fÐÞ-Æ»ã}ZO/HÒ< cž-¿ñðxvûjAd??àÚØ»â§Á߃ÿµíÏû@xSøkñþ Qñ÷WøëkðÿÄv·6¾*ðÁèµÏxáô~$´¼ŠÖm/Wñ&·ñ#Ç>$Øm¦“Ã7~¾¿ÙypÚn’ý5QEQEþ|?ðC¯ø'üö©ý–þ2|Ný˜ÿà°¿¿a†ðþØŸü/7ÁO|³ø£\ø“I ]jž6oÏñ«À—ºõ®§¦ØÏ§a2Û&‹ ‚þãí8?f?áÊðXïúYCöˆÿÄIÓú(kGþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWå?üþ ûÁ'¼ ë?´7ˆõ]{â?Ž,µÿ‡üok«|GñŽ•"ÛÞëMowug¥øgÃ1_Išž!ñ%þŸe}¨ý¦ÓI]J]3W]?Ù¿à ðQ¿Ùsþ ¿ð;Åß?ho‰Þðî¯aáOêÿ~]x†Âßâ/ÆišmÜú?ƒüápókZ¥Îµ«Ck¤\kQiï øt]ÿiø‹QÓtË{‹¨ÿ”¯ø ü/Pÿ‚”üPñïüþ _¤ê?üeñ;ã‰õïÙ›á¿L¯Ãë#H“ZÑo|eªx7YÒ.lµ/x;Yºø)áõ¹µÒ4KŸ^ëòh×Çá›çñ¿Ùwþ ýûmÿÁ̽gc¯ø]>˯h¶Z x94­GÃ:Ÿˆh ¿ ø¿Pø©­éWZ>‡o§i¶–·^þáÿeÏÙ[àìað[³ïìÕðãEø_ð«ÁÑÎt¿éêêâóP¼e“R×¼A­jWš×‰ü%ð6Ÿ#Íaàφ~ ðç€ü'c4‘AËiáß iºVm#Ámm ¼6hͼ’R(ÂúPÊzwì!ûhÿár鱯짥ü`ÿÚ£â¶û<|"±ø’5?1&þÒÿ„æÛÁñx£íþtQKöÏíO´y‘£ù›‘Hú²Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¨jº®™¡iš–·­êV>£Ø^jº¾¯ªÞ[éúf•¦iöò]ßêZ•ýÜÚXØXÚC-ÕååÔ±[Û[Å$ÓH‘£0¿_Å÷ü“ûi|bý¨þ<|ÿ‚~Â>!ûOÆoÚ7ÄÚÿ´þ«¤^ßÙCá_ ^›Ms¾ñµ¦¤Óéþ‡@µÕþ/|cŽÒo­| áï XyzŸˆu½p“ÿcï„ ?àä?ø.í{û`üwðO‰>$ÿÁ>dß è þ x/_ÖµÛøÏ^²‘<=à Két‹ûfðÿˆåÓ>&||×ü)¡ê–¢K\ðFã%Õt RÿO×ÿ½ xO¾ðÎà¯xgÃþ ðo…4?Ãþð—…4m;þðÖ¤ÛGe¥hzƒ£ÛYéZ6‘¦Yà ¦Ÿ¦éÖ–ÖVvÑG´ÄŠƒâßø&ßü×àüöTðoìµð*FïHÒoo|[ã¿ë²G'ˆþ%üO×ìôË_øó^û:Eios¨A£é:F•¦ÙC®‹áBÑck“§½åÏÞTQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþküû?à†Ÿà·ÿ¿eŒšüÓö1ý•þ=üÛãåý׎~2|WOøº/\?…#ñ…Žß¼[HÓôè4‹+Ïì†Í}vŸl›ÉÙõÝÿèø›ÿ=ø•¡üSŸþ [û6üý5í'Uð¬? l~xù|uiâ­"îÏ[ÝøŠeñ׎?³nt«È4(tèÌÚwÚb¾»o*ãÉßé-Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wñ/âG‚>ü<ñÇʼn~#Ó¼!ð÷á¿…5ïx×Å´¾N øcÃZmί¬ê—n9ŽÒÂÖiDQ$“Îê°Á³IløÇÿáÿ‚ÃØÿÁ&fÍUø{¢øgâíWñ³^øðÛ_–êîÆíÌoâOˆž&д{»MwRðï‡b–ÛLÓ´û;›×|W«éjÞ­´Z™‹ãø7·þ ñËöoñ_ǯø(ÿüCAðî£ûzþ×>"Ö¼k\-…ω~øwâeüþ6øƒ­¦éš}—†|ñÇž&ÕYø±åȨmo…ÿ,Úý¤HìµWB°Ò¦"yMú[Ú^MoSö£ð/íqûUøëTý¾x÷Æ¿±ïìߠå/ƯÚgÁ¡Åñûâìºæ“mªMð«ö\¸ÔaÖìþif•¨ÛGãÿÚ\Ñ®õËÎ|ðÃDmWBñG‰t½Ùwþ Uÿüý#Ž÷à—ì¿ðÊËÇRÈo5ŸŒ~8Ñ“â‡Çjó´Sê:ψ>0|Coxúî÷VÔ#:­õµ¾¹i¤.¥,³Øé–HR$ü“Ôàë_Ø"äEwðÏöcÿ‚‘ütðôìþO‹~~Ë:=÷‡%ˆÁkqmqÏŒ¾+x.öHo£¹chSO2¶šIã‚,äºÞðÇü_ÿÃkí2Ëãg…¿l¯ÙAuI¢/hÙ“Äe³Í5âDgÿ…_®|Sº‘^ 3| ­áû$¨ÄyðÞÁiý*Õ SJÓ5½>ïHÖ´Û _JÔ!{ký3T³·Ô4ûÛwûö÷vWqÍms àoŠhž6Ç*hÀ?f¿Úÿö\ý±|/e¿Ÿ >;x^Ñ ‹U½øsâý'ľ¹¹µµ‡‹4+{¯øGS¸Ž&‡Kñ>™¤ê2Ûp–­¤ôu~J|qÿ‚/~Æü`ðÞ±|Ðxâ'ƒµ‰¼S¥E.‘&³§Gr÷)õßì£âoÚuü=â†?µ·…ô9¾,|-mNÿ…çðòÅ4¿„´o†µh5£üGðŸ†æÔµcáÇŒwé–_~êòÞCàï=GÂúî¿àŸxjô}aEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@#ßðvwíy þÌßÿà™ÿu{ýWö›ý½~'ø Bÿ„Ã:‹[ë¯ð†ÏÅöö–ú¤vŠ÷ÐÚ|Pø­…¼¡ØÈmm|Wc¤øúÄÍwk£jšmÏõ7ñƒâ¿~|(ø“ñ¯â~·†þ|%ð7Š~#xã]¸ÁJð·ƒ´[Ý\¼XË!žh´û ͵¬mç]Ü­  4¨§ø±ÿ‚|$ý à°¿ðRO‰?ð^?ÛÂ>Ñ>øgáwìðý¢Šê 'ÄšÒéº<þ‘ìmäÕ¼?ðs@Ô|Qi¨x»S‚ÚÿÄ¿±ñâ ì7SCãÏê:ÿŠîm ÃÛé§U]+OK}2ÆÊÖ¯h¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õ9Ò¼qà­wľ)ðf‰ã ë>0ð3i ão i^ Òuø=üA§G¬h â ÒîmSÃí®iCªé «ZÚKN–;ë!=³¬§¨¯Áÿø,ì3¦Ýécþ Oû9üVñì}û`~ÍzvŸªøëöøOc¥Ý\øÃöpÒî-`ø—¦ülð®£Â?ü)ð¯Á¢óân™áÿE‹Û/¿ƒS^ðþ›«C¬hZ¿?à©ßÿfÿˆÞý•¿à°ÿü3û0|Zñ6¢Þø?û_x2êþóöý©o-ßʶ:ŽõdY¾|HÔ!â÷áÅ‹:"ê·Zf½Öô-À?Hþ<þÔÚ_ÂxKá/‚þ|BøýñÿÇúF§âO üø_meàÍòßLÕ¾#üGñϵ¿ ü<ø_ðçLÕ¯lô³­ø¯Äkž&Ôå›EøsáoxŠÊóE‡ÉÆ?ø)U¦Ý_Rý„ÿfkß™$gÑ<'ÿñV«ñemWÌ(Âþ)ý‡ü ð±õ ÐürK–{e}Yc7SZxÏí­áÏÛcà/Ç¿n¯Ø_àïƒ?k;ÏüðWÀ¿Ú+öTñ->xÃÆÿþxËâ‡Äo…Ÿ~|MÕ¢Ô|1¥x߯ÆoŠZw‰<#â"ö×â…â-t©S^ðΕmyð5§üköðÖu©< Á½_ðR9<øcñ'Ꮍmá_‹ß>+è–^ø™ð¿Ä—Ú|ZÆ•k­Ã¢êÞ#ð‡‰4h×k>ñÿïx×áÏ‹ôÖšO ø·SŸNÕ­´ÿ¢+ósö øQûTÉâoŸµçí³á߇¿ hÚKCøGà„øð³^oxSà?Á7?µ?†žÖþ!«‹/‰îüEñ§â_‰<}ãmÖËÃÓ6±¡øgÃÐI£ø^ÊêãôŽ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:×óÿžÿÊ9¾7ÙÿþÓúGðâ¿§Z(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿'¿à³_ðSŸ ÿÁ*?b~ÐR¿…5Œþ£kàÙçáï‹mõûÝ#Çßu+{Mm5‹_ Ëk¬CáŸøoKÖüE¯j'SÐlØ4ÿ·ˆ4ÍcÄz ¹þz¿àáÿÛƒãíÿûEø?þÿöµ‡ÅÞ9ñ׉4ŸÛÆQÃxþðøÒn|5ãO øïÅÚ5ö¡‰á/¼iã?Ž·÷¾¹{-V×Á Óu4Ö-|iá›Ïë_ö/ý”~þÃÿ²çÁ_Ù_á5’Ûx3àï‚´ï AvVUºñ¸ÆMGÅ~.Ô¼û‹©¿´ü[â‹Ý_ÄWѵ̱[O©5§—goo Ï×ü ÿÔñÿìóðOâ7ü#ö­µ½ÖlÛæM3â2ëþ#Õô_kº'ÀÏCkñÃ×OªY5ö£¥ø›âî³â#ãOˆMþ¯%Ü6ú/€4WHÑ5ßjö²ÿT”QEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E ÇüÛãOÂO~É^%ýŸ>$øëHðŽ«ûp.¥û(xzÒéî.u›ß üPÒçо9x“DÐô»]GÄ:ÔÞø'}ãoÁg iwú®¥â|3á*?íïè©,_?mßø'Æß‡'øSûRh¾>Ó¾øòÁôOOû^þĵÏÀ߀úΛqó%íÏÅÚ#àÃß…ZZ2ééþ*ƒÅöÑèófëš~¯e1ӯϞ9ý²?eÿØ[þ 1ûDëðPCðcWøéað¼~ÅŸ´ŸÄý'RŸá ß³÷‡¾øFø‰û>øWâD6º§‡¾ø×Ãÿ´VŸñ[âŸÄOëw>—ÆžøðÓZ¼¸×­|?¡'é¿Áf?à’>ð½ïˆüGÔo Ý…„oßM­xç·ýNýÿnÏÙ£öïð¡ã¿ÙãÇŸÛW~ÔO‡¾&ü4ñF™yàߌ{ÿ‚Pj)â‚?~%ø#À>/øSû0ü\ý¥|sñ#ö.økã]"ÿº—†fícÀÿ ôåÕtoj†-Cá¿€þ'ünÑþ5|gøià+3A‹Ãß>$xb ?@Òt¹,mOÛ#þ {ðÓöŽñþŸûMüñ÷ŠÿcOÛÇÂ:p±ðOí{ðJÒÂ?ê¶0$ßÁüzÐx7ö†ø]pÖZt:ƒ>![Ït¶öˆt;6¹‚äôþŠøWöñÿíÕ¯è¾?øyûz|øào‰? µHÐ>:üñ¥Ž½ðOöžÐõ[}ZGñÇ‚|©\‰ u­û6ÎÛÆ¾ ñΟö8ubÊóÂ:Ïya ýÕ@Q@Q@Q@Q@Q@Q@çÃÿ:ÿ‚ã| ÿ‚xþË>|Fý”oo ºý±>=øýê¾Ò5‹?Ú›áo‡>ê>#›Åözíåσmü=ñÇ©«ÙiÉ \E¬Íu6šÖsÝééW"yËø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPGˆuýš¹âŸjVš7‡|5¤jZþ½¬_Ê!±Òt]Ê}GTÔ¯f9ZXØÛOuq)â8bw< þ¿f_ü_ÿƒž¿à« ûf|lðÖ•aÿºý„¾"x£ÀŸ ¼/¥>—7Ä ô»–ñg¼1ö›+ÛícÄ^6º?¾!|r—PµÒtëo=‡4ûè&ºÑ>Ïö/üÑûX|Ký¤~8þÊ_ðCÙ'Æ:ŸÅÚÇÞ ½ý¢î<)¨\JšÃÿ]ÉoáŸøöÓIhoG†âÒF¥ñŸÇš<÷öÑø_BÔõKfÑõX&—úbÿ‚yþÁÿ?à›²ÃoÙCàtW·>ðEµÖ£â?k ñÄ_ˆóÇwãøÊy"‹Qñ¢£ìºtIe hvšG†ôÖþÌÑìÔ}§mmogooggo ­¥¬1[ZÚÛEöÖð"޼*E 0Ä«QF«hªˆ¡@j( Š( Š( Š( Š( Š( Š( Š( Š( ¿˜í{þšý”ô sYÐn?`ø+Mìú&«¨éÞi¿²¯Ã‹:îm6òk9.l.ö……ç²áimfxbi`xÝ¢Œ±Qý8Ñ@äqñãn‡ûI~ÔŸ·Çß øWÇ~ðÿÅÿÛâÿôoüPÐìü3ñÃz‰ú¶ãOéú¶»e£øŠÆ9–SOµÖu8-®UãŽöuPä¯fý³¿å#?ðS¯û?ÿÚÿK4:(ý4|mkû+þÕwf/‰þøMñÎO‡W>~ üLð–‰ãmþï Ûø“Áºî£àÿi7VwúV±£êsÂ?ã 2Ò÷HmZËÄZ–°ž"ð׈´Ý/åß…ßðFø%WÁŸÃñáÏì û3hž2´½]KLÖï~èþ&“BÔcšIá¿ðÝŸŠ“[Ó¼5{m,¬mn´ M:{EX£¶’(á…côÛöÐ?iëß |RðÅþËÿµ¯Â;RÓ¾ ~Õ? aÓ.|gám+U¹†ÿSð|%®G7„>4ü×µß|'øƒg}¡ÏwÕ¼=wáõè¿0|Aÿÿ‚Â~Âֿض§ü;Qý¶¼¢Gå¯íOÿØ×eñ6¡â=:ÌBTñGì±â‹ñ熵ãg4wž º±Ö4ÿC¨Ã© ¿±­ÅŰôQE1šü—ÿÅðŠ×âÏ€?m¿Þ ‘ž6ð—ÅŸÙ²OøŽá‚Ö{»ym´Ïë–&k{j—i¡0§…Ô¼Á4¶l?àéØóâlIeû*þÈ_ðQÿÚßÅ‹G£üý˜µ,5+©d¸·ãS›ÆGPµ´ŽîÒîÂk‹W/må,¥†‰àþš«Î|5ñsᯌ¼ñáw…~É ôoƒ|=s¢ø_N½ÔõÝcVÖµmCÄÞ7ñ÷¼CruüHø—ãmn{¿øïâ'ŒµV“TñG‹|C{y©êWM"H4ûK+P{¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¹¿x·@ð„ðW†õÏø—U¹tŽßLÐ<7¥Ýk:Ρq$qÃe§Y\ÜÊò:"$LÎê ‘ÒWòÿDÿÁGü]¡ø@ÿ‚CþÉ~ñ_ÄÚËöÕÑtÛhß,‡Š|Iá¿„z®´KàaáÍ5 y¼Eñ‚ÏNÖ,î"]?:wÛzöâ!oâ-7S²òø6'á%×í¡ûTÁEÿà¶ÿôØõ|^ø÷ã/„.¯ôç?„¼9'ñÅÆa!’!mgà}oá7ÂÿkËuiaáÏh—Ú¶¥y¬Hµ*øGþ ™ûxsþ áû ~Ο²>qm¨ßü-ð¢ø÷Ä’K-§Š~+øžâãÅŸ|M`÷[ݦ‹«øûZ×çðÝäfëKð×ö>“4³½‡œÿwPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬4QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯â×þ »ÿ‚~Á²¯ìAñ§á‡í#û\üø#ñoÛ‡ö‹ñD^ ø“ñÃþñžÕ¢ð5¦™­&™©ÝÁrÚuõΙ¨AmtÊ–[;„V&&Çõgû8~Ù²—íƒcâ½Oö[ý þ|}Óü w¤ØøÆóágŒtÛøjó]†úãF¶ÖeÒn.ÆmN 3P–Î9Š´égpȰô½Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@GÄßè? þüAø¥â©$‹Ã |â¿øŽXL"hôè7þ"Ö$ˆÜK¸‘4ý:áÏ<0†Ë,i¹Çñ—ÿëü2ø•ÿÿ‚†þÙð^Ú+á%·„¬|z>þʾwˆ.õ[mö=ü0ñšøh«YM«Çðÿá_…´†^$Õô«R÷ÄÞ%6›Õ­úé_¤ÿðtßí½aû%Á+~)|9ѼKi¤|Wý°™ÿg¿éL·²j—µ¿²ÉñÒò´AXGðÊ}KÂ××7×ö‘]x×Kˆ‹©®!³¸ý4ÿ‚L~Ê¿°ÿü{ö>ý˜5›8ôÿ|6ø;£Ü|@±†K™ ³ø¡ãëíKâ_Å;kyná¶¹’Úˆ¾1ñ 9 ž7ŠXØI•€ Ðùë~Ùßò‘Ÿø)×ýŸÿíÿ¥šÆ~Ñ?| ñsößÿ‚‡|OøaâÝÇŸ øræåµ?ˆÿ®5%¼ø-ã{ø4}?WÕ<9àßiß µˆòéIkᆶ±×ü9­j_&ÿÁÂðTïÙçöÃÿ‚sx/ö,ýо'iŸ?jÛ·ãÁφ_ðÎÞ ¸‚÷ãoÃè4é.ñƒþ0x$&øMãoˆžð¯ÃíCÂ/³ÑüC¨^ê´Vú}ï‡l5ëëoÛÏ_¶/ìŸÿTÿ‚yü9ð¯ÆßŠ_쵿ÙóöfðÂÿ†_ !Ö¬_Ç?¼IðëáÖ™àŸ è^ ðB<%Ô´ïë$ê:ïöM¾ i“^k>!½Òì,îçˆõKÀþ4ðÏÄx?â‚õXuÏx÷Âþñ§„õ»e‘mõ ø§I´×4-VÝfHåXu .úÖî%–4$ÊQÔWÉ_°'ûÿ„?°ŸìWð›UÕ´Í{Tø_û%~Î?õ-wDÔìµ½Z¿ðWÁßøjóVÒ56æóNÕôÍFãL’òÃSÓîífŠêÖæx%ŽVúÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?‹_ø6ïþ ÃûþÕ_±ÆŸ‰ÿ´ìðãwÄ8nÚ/ÂñxÏâOßø«ÄQøwI‹À×zfŠšž§i=ÊéÖ7:ž¡=µ¨*)o.T[?ÕŸìáû~Ê_±õŠôÏÙoö|øQð OñÕÞ“}ã?…žÒµñÇ…þ(éÿ ou™ï>x§C¾Õô›7ðïŒìõ«› R{Ѭéâû>«á¿iw7ºUÏþس'ì9û7~É_µí£~Á¿±ö½«üý~6üiÒ´;ŸÙ§àô–úÖ¥ð·á§‰¼sc¤ÜG„­¥xu­ +9R+‹y&`“DÄ:€~héßð^Ïø6?GøÃ¨~ÐÚGÅÏZ_ÇíZíµ_ŽZwìûBXüaÔíî¡û=;¡ñ2Ûö]‹Æ—Ü@Ås­ÉÐ.EdùkæoÛCþ aÿÆ|PðWÆ¿ŽÂß²ígûXGðÃÄ3ü:ÿ…Çÿáø‹ã|Eñÿ‡|%scð˾%ñ¿ÅOÙëà '‡Æ§k¢èóÿlüEðÕ®áøå¶³Ötµ†ÞHÿe?fŸø"güGáÁß xcÆ?±çìŸûDøöþ|Wñã_ůÙçàÇÄ|Gñ÷Š™uŸøžÇPñ‚¯í|5á-GY¹¹›ÂðŒ7üáö°Ñ<1¢XXÛ'_ñsþ¥ÿ©ø¹à=kÀóþÀ¿²7ÃÙõ†ãKñ¯ÂŸÙ»à—€|oájÂAu¤k:V±¢x uÓïã‚êçÃ>'²×üâh"mÆ>ñ‡îïô› ­?cè~>ýexcÂ>øá¿þÍ_¼[áï|2Òìô?†þÐüGð»ÂÚÆ“á‡Ú.Ÿþ£ø#ÃV–ú7…4»ô=?A²°´¶ýÌ)_Jו| °Ñô¯‚ô¿xsÂÐ4ß…_,4? |>Ь¼-à/ hö~ÑíôÏx#Ã:j¦áßh–QÁ¦xkB°D²Ò4k[->ÕV xÀõZ(¢Š(¢Š(¯ÌÙ;þ “ðöÉý¸?m¯Øëàæ‹ý¹¥þĺwÃ;|g³ñ=¦£ xÏâ/‹õ/é~6ðV [i@ÛÙ|4Ô¼)‡}âgñè×#þÚŸ´Çìcÿ)ý›"¿¿ñŸÆïø/ã/í«iËeuaá¿ 6¥¬éÞ ÓõŸ’Yìí<)¤é¾.øÁâøî¦ÓV 3Lø=¹ÔµÌVÿÚsºF$ޱdz»»DE™Ý˜…UU³’@üaÁ¾~Öÿn¿ø*—ükþ ñ& ZÖÏâžµû-ü¼K™n#ÓtÍ;û*ÞýìlžûSŽÆoüð¯Â Þöû«{¨¼eâXlJÀóþþøß ~øá—ƒ­ÃÂ?|áŸxZÅÝd{/xGE±ðþ‡hò*F®ÖÚfŸk :DZBÁ£±¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†¹ßøKÞ>ðŸŠ< ã &Û^ð—<;­øKÅ:á”Zk>ñ›s£ëzMÑ‚HgÚŽ™yug9†X¥LÆ9ðâªZ–¥§hÚuþ¯«ßÙiZN•eu©jš¦¥uަéÖ0Iu{{u$VÖvVvÑKquuq,p[Á’Ë"FŒÀøÞñïí»ÿŸÿ‚ ?gÏþÅ~ ÿ‚ ~ÄžšM'ömý¦<«xÏIø«£|%…ç‡Á¿~:x›Â^ø©oaâOèÑéž]_Å?t…ÖE‰’ÃÅþ*†æÛû/Ø?gOø*ükþ á©Úü/ø ÿùÕà™_|K²ø¡ûi|k×<]ãßø7ÁÒ–‹^¸ý4|,ø1¢x³âÍå«>Ÿá·ðÇŽ|/á½YÆ£âvÓ"†û]Ÿ‹ðxÇücá‡ÄøAðÏíoñ¯Nðî£w¦§Äo„Ÿ ~IðÿÄ2Ù]Oi-χ.¾$ünøoâ‹ý:FƒÏ´Ôgð¥¥õ¬Ð\ÙËðo„¼á{i,¼3à è>ðíœ×7³Zh^Ò­4m"Ú[Ë©%º»’ >ÊÞ'¹¹–K‰Ù ³Hò;1é«ãø'WÄ|dÿ‚}~Ÿ¾%ë÷>+øñSö7ý˜¾$|@ñMäV·~%ñ·Ž> ø#Äþ+×î­tË[-:ÚçX×uKýFx4û+K(e¹hímmàXâO²(¢Š(¯‡?kˆ^5ñ6·à¿Øëàwˆ¯ü1ñ—ãÞ™ªêÞ/ø‡£Æ$¼øû7è7ÖoÅ‹pܲKm§xû^þÓ·øcð¸nZã⇈áñ›é:Ç„~øõ,½ÿöƒøíð÷öeø1ñã·Å=Fm7Á´?ímHY[µî¯¬j—¶š7†¼)áÍ62&Ö<[ãOjz7„|!¡ÛŸµkž'Öô"Ô‹Øùsö?‡Ãþ ðÿŒ~3üvø“ð¨þÓÿ´†«¦xçã4ZWÄ_jú/Ãý/Jµº²ø]û?ø7S›PFŸÁ¼%|úÝ[%µ‡‹þ#êÿ¾+G¦éwÿu;?Ïø7«Àžø_ÿ”ÿ‚ý|7ø XxWÀÞø§àoxCÃZZ:iú†ü=ñã•£iV‚Y%™¡²°µ‚Ýdži®%Øe¸šYämÏø.Äù¾)ÿÁvÿà„±6¯¨yß¼3ñWÂ?µG‰ü#24úOˆ)üg˦^\ÞGoŽX¤/k$ªXØ®¤ù§üÇI»´ÿƒ­?àŒ0¸0Ç kß >øwK¿i•bºÕ´_ÿ´ÕÝå´n؉ØÅãmÂHï<—ÑÆ‹¹£ó?·*þ<àÙ‰·ÿlÿø.Gì ¥Ÿüý·~"øÛá.ò®Ÿ¢Ú7Æ?‹ÿ |xºNŸwwsse§Mmà_†´ñE9¸’òcwt²ÝaÕüFÿÁ»ZMÞ«ÿÕÿƒ„¼i§o<7cûE|lÒeÔí¦Yíä»ñ_í…ñVмÑo†ho¬<-¬\E2JUãZ?1²€nTQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óìÿ‚Á ¿doø(¯ì±ñ“ö€øÝñ#ö¨ð§Œí?l_Ÿ£Òþ üf·ð„[EðãøSQ±º“C—Âã6¯4úýê^ß Ð.!ŠÒ1fÏû=ÿžÿÁ9¿è·~ßÿø“vüî(úu¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðËþ:ý¯î?c_ø$í1âïø¦o |Kø¿iáÿÙÓáMå•üšf­sâo‹:‰±ñRèš„)$öš¾ðƒLø›âË)­„w(þcose6ËÛ~Çþ ûéßðOßø&ìùðÊa#|Dø±¢Ù~Ò_e• £ø¡ñ‡Ã>Ôo4¶Ó\Û¿ü žÓ<ðå¯`ºžZO>±E –Ð~ÁÀ¿<-ÿ ÿ‚§Á,¿àŽŸµËOÅáïÚÇâßí[¡Å¦Í­iú>žt­]²Óîmå¶›GÔu? ü ±øÏ¯ë:]ÂÞÚ¥¯‰ô›m^M&Üjoíva·†+{x£‚#H`‚X¡†”$qEHãQ*(  IEPEPEPEPEPEPEPEPEPEPEPE~mÁEÿà–ß³çüçCøY |}ñŸÇYü!Õ|U¬xj_ßaøuwuâû=ËSÄSËáï VÚ´ 6Ó¢T¶6’ËvååóðŸ•ÿñ ïü›þ‹wíÿÿ‰7gÿÎâ€?‘?Û;þR3ÿ:ÿ³ÿý ?ô³C¢¼sâOÀÿ þÍ?µ?íÉû?øQñF¯àσ߶/Åÿ‡ÞÕ9ø[Àw> Ôµ-Åöþ3ñÃé>ŸÂº¾ŒñêúW‰!×.ìdÐõ-*DÔ¬uEµº±uºŠ&AÿõøÝû(üMøà¿ ~Ìš‚>‡: —…¼}û.évš_„þ!þÎ^6ðìº'Šþ|Møn«gâ/ ø›ÂºÕ»é7š–·¦¬~)‰,|O¥jšÞ®izÅÿÖ×Â-ð§ârøýÖ?·Ãß/¤q§”Â'Ãzñ#¸Õ’M(ªèÆõ˜jHúyý±ßÌùø_ÿ~Ë?´wÁÿ‚¿¿moÚ£þ ;âïÚÆ¿~k?gñÅ¿†Ýx{Æz…4ÝK\ðU¥¯Ä¿ÿƒ-?à›Vñ­÷þ<þÞøÒËÂ^#»ð„Z¯~kÚdž(·Ñï&ðüz–‡¦~ÍžÔu›Õ’Ño4?^Ñ/us%¦¯¦Ï4w€N°  í¿aØ¢Ûà-çõ–ÿ²GìßÁ‹ÿ‰«¤'Ä‹ï„ñ|ðl¯> §‡­ltñ½Ïƒ×G›Åk¡ÙYé ¯=øÓmmì„'ÖõñGüWÁ>.øiÿæý€þ|@ðæ¯àïü?ýŠ?eoøÛÂ>!²›M×ü-âï | ð&…âOkšuʥƟ«èzͅYN‰5­í¬ðJªñ°kÐEPŸüRøOð³ã5ß…¿þ|?øÁðËÅÙŸð“|:ø¥àß|@ð'ˆ¿±5?ÄZ7öï„|Y¦êþÕÿ²m~Üøë¿WÇ¿eÐä›Aýü3¡ë—Ÿ¶¶±ã‰-û7áßì½?Æ x¢÷\š×÷:—ˆ|'aàý&îãûWRñ,>õŠù›þ ïÿ‚vü[ýŠ¿gŸjÓÃ?µ¿íåñ£Yý¢~4xBÙíî%øu¤ê7šÖ£àO†ú¥ô3^5æ¹£Oâ¿x£ZF¾™4}OÆ×>e{ÍûPÔ  (¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¸Šß¼)ðcáwÄŸŒ><»›Oð?ÂøÇâWŒïí­ÚîâËžðö£â]ÛÚ«+\Ím¤iW“En¬­4ˆ±†õ6¿ðuíOìïÿŽøŸðûKKÙ?d?Ùžk)´ýá‡ÀïÙøöÞâa<ƒâŽ¿¦§‹>*H’m$ø‹¯x™´ëfiMŽ›öK<ël²¿ÞQEQEQEQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« PÕuM7CÓ5-kY¾´ÒôÂóTÕu;ùãµ±Ó´Ý>ÞK»ëëÛ™™"·´´µ†[‹‰åeŽcy•T‘~¾[ý¸þøÛãìSû`|#øi<Ö¿þ)þË´߇÷6Ò<7þ6ñ¿Âoøg“ÛË‘IÐ뺥„‘H’Äèꬲ#ÀùÀøÕñ+þÿ‚±µßÿàš¾ ø3ÿøý…5™.î~|Rø×«Þè?ÿi/G$¶zWÅImôï…¿ Ö.-[Rø¹«êÚUÕ†—ðÂZ±ÜÝø«Å®î"ðÆ— iö„×2jFK‹qa ÜÑ}I£êúWˆ4/^е-cDÖôë-_GÕ´Û˜¯4íSJÔ­¢½Óõ ¸າ½´š›[˜]âž c–6de'F¾Uý„þxÏàÿìCûü%øŽn[âÂïÙWöyøuãÃy»ígÆ~ øGá ø Ýn’fûI×4Ëã>éeo7vds–?UPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@zŸŽþ2ÁÉ?ð[/èߢ]þ ‘ÿµøÉ¤xËTñ-öžÒÙ|EÖ<3â»{™o›g5¾©â~#ðö„t-B{ðÇÁ3YñUͪøûKDÕÿv¿àå/ø(³ûÿÁ4üsmðî[Ÿø^µf´ß²ÿ–үa‹^ðèñAsãßiÖ1Ⱥ¼òxoÁZf§£hÚ†—Z7|[à[—hÖEßë¿ð@¯ø'\ßðMø'Â_….Ñÿ²~7üOÇÇOöóÇöŽ“ñ'Ǻ>^ϼ.Ò|9ðÆ›áÿÞAç^Ù¦½¤k·š}ÝŶ .&ý¥¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿV(¯0øÛñgÂß> |]øéã‰&‹Á_þxûâÏŒ%¶›ˆü-ðçš·Œ*xö¾øÍû[øÇþ _ñ;Àqê_|_â÷°ÿ…;à­vÆæI­¼W¢ø_þÏ‹Rë¾(Ю–ÒëÃ×z—ïtk6±ëÖzñ ¦‹©èÞ'üãñÇþ ïy£~Ø?ðXÚ÷㟆|Qñ"Ú|=ý?g«Ï è> ý–ü∟WðÃ;-â…|m¤\x¯@Ó/ìì¼qkðêÛUÔu[K¨uø—P ®nø/ÿìøËþ uâôý¡¿à“¿¶í ÿ §‡¼­[Æ?²ßí5¯øÄ?j=Åâ}S៊u¿ø+á¶Ÿà k_ÒâŸOð‡ÄË¿xºÿÁ:ü–7ð›;¾¹ˆú¤¢¹_xÃLø…àøûEƒQµÑ¼qáOxÃIµÖ-EŽ­m¦x›H³Ö¬ Õ,–YÖÏQ†Öö(ïmVy…½ÊË–@›Ûª Š( Š( Š( Š( Š( Š( óáÿ‚~Ì¿ðZ¿‹Ÿ²ßÆO~ÀðRo„¿²À”ý±>=éW_ ¼kû:|/ø§¬ÏãË7ð¤Þ ñJø›Æ ¼k«%–­§ÝhVi‹¬-¥£ésK œs+ÍýxÁ8> ÁKþ è­à¤¶ÃÿÛ\×õ_ Ü|(Õ<ðwÀß¡ð&•§Ùë±ø²ÃRµðO€<¹&½yu¡\ZϨE©IbºdÑÛÉj·2¬ÿ—ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ò—þ gûrÙÿÁ=àš¿´§ÇûkÙ­¾!^øJ_…`²º[MJŒRo xGTÓæ‘"ÞŠóTø™¨ÂÏ—‚u[{7kù-"”ù²ý©~,ü/ÿ‚ÜÿÁÉŸ±‡ìÁð³ÄŸð³eOø'Vã?ˆÿu]>-Noë>ø©üCñ=3í=;Ä Ô|wá¿?o]M¦éS^M&a-Ôß³äÓ\ÉgfÐÛ¼òË,“4fG‘Ù‹éÆŠÿ#ˆ¾øÏàßÚ“öáð¯íñIø¿ñÛÃÿ¶'Åý+â×Å ÃÚg„´oxòÍ<;ˆ¼S¦xgEÒ´-'B²Õõ–î 3NÑôËKDE œ¡^ÍûgÊFà§_öÿ´þ–htPúS~Ú_·ì©ÿòøS£|ný°~(Éðሣ¡¨é–·ŸŒ?ÿàâ¿ø /íð#ãgìÿãÛ²î×Â?>|Hø;â››Ù›öÂÖþø›àígÁZäöE¿gå_µÅ¦kwR[îe_9S$kõãöòý„>ÁA~|"øWñ£ì×ß¾þÒ? h=o–‰ˆ)xãÿõKý?ÁžÜø£@г'ûF¿¸µÖ´ÿUÿ‚ ~Çv_±'ü¯öMø[6•™ãŸ|?Ó¾;üYapnn®>$|i´µñ¶¥g¨Ê’=“^øGA¿ðïÃâtÌéïmá i!žýÞ]N÷ð»þ qgÿ ÿ‚èÁ.à”º.©¹ðïà–¸Ÿ´7í9 éZ¢ÛÍö”6µ?ëû™>Ç«Ùüð WZ3êXüe7†Ý¢žÖEþÕ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþcµïø*üêÃ\Öltø OöÆ‘eªê6š^¯ÿ {ðò×ûWN¶¼šGìÒY—·ûu²Esä9/›å±ÊšþCÿlïùHÏüëþÏÿö€ÿÒÍŠñŸˆ¾5ø§ñö¤ý¸|yñ¿áoü)‹þ.ý±>/ëÿ>ÿoÚx«þ¿Œ5ðíÆ·àÿøI,,µ¿ìK×’ËûJÕV¯/ÍŒaE®=|¯ûtø—âoƒ?bOÛÆ>ßÿ —Ÿ²¿í â_„ŸÙJï©ÿÂÍоx»TðöjG,÷ÿð•Zé_cTžk,,±’~¨¯žk¯ˆ>9øKû(~Óß>!¾%ü3ýž~4üAøx¾ Ónõ¼sàφþ%ñ„†¹£Ø]XßjÚA×ôÝð¬øŸíç\†;-ÎE¿)u{}2›‡î¼qÿ¶ÿÁæðWŒ!ðÿìq…5é|/â´OÜþÓ_µŸÙü5«É¤Ý¦›¯ÜküpÖtŸ'G½0ê2ÿièú¶²Ù¾Û¦ß[y¶²þA~Éß°÷ü¯|,ðgíû$þØß°ìeð“öŽðfñ¯Ãÿ³Fyãßü?øwoñZÎßÇòÉá…ÿ¿fÏÚoÁ?o|C6¶%Üø‹þ ûx›Ãöÿüe>»áÏ x+ÀZ7‰üA£EáÍJMODðæ¯/üÏÂqiZö«d³Øi”ž)ðÔv:…ŽӸƒFXŽ£lýC~À? nþ ~±GÁëÿø#Ç—ÿ ?dÙ¿á­ïŽ>k²ø£á¿Œîü ðsÁ¾¹ñ_ÃïMa¥Mâ/xŠm)õ k²éštº¾ƒya¨Iaf÷Þ?­ëàø$ïü¢Ëþ §ÿfûÿë:ü9¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ²>¸ø={áÒ>%|,ÒlgÖõO‹‡‡¼gŒüá­,ë:'߈VrjË¡þjüTøÑû'|pÿƒ|¿kŸþÅw~·ø ¤ÿÁ/¿j øSÀþšÎ)~&‰û.øòΆ^+С)á¯øBh¤Ò|E¤kvÖÚ·ö½ÅíÊÏöµ»Ÿôgöéý¬¾~Æ?³/Å_´&³áø|!¦ø_\Ò´êóÛË«|añn©¥^[xჼ<ÑÜßx¯Å>¾hô-N°¾aÝΣ¨Ço¢ØêW¶ÀNøOJð®…á_ èžÓ|?£ø'Gðþ¥x;Hðž§øWJ𮟧[Zx{Mð͆:E‡ìtˆlítk=.(´ëm:+hlcKd‰GA_,þÃ>ñï¿؛ö<øañRK™~(|8ý–gßüH–ñÚK¹<{ᄾð÷Œ$º‘Éy._Ä:v¢Ó»’Í)fbI5õ5QEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñÿñέÿoÿƒŠ¿boø'ŸÃi[ýžÿàœþ1Ò>;~Ò÷–‚ú¯„5øKUÐ>$|Gðö¬m#2]i—ú‡ð÷àM…Χs¦›ã¿øºÔYÉm“j?ØÏÇ ¿f?‚¿hOŒ¾!¿ ~x#Ä×Z¶µ¨4q麉b’ê:Þ³wa¤éÐO}{o ÿ+ðiOÃÛŠ_ÿà ?ðRïøN;‰ÿ¶Ÿíoã5°×nî“Wš×ÀÚí׎µ]׺„wZþŸ¥KñâN»§km>­,~#oøXÞÛ´þ²¹pìŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXkÅÿiºìÑû;üzý£üU¤êúÿ…ÿgÿ‚ÿ¾6ø“BðÿØŽ¿­h |®øïXÒt1©]YißÚú– ÜYé¿o¼´²ûlÐýªê<ÉSÚ+çÚ÷àußí;û&þÔ³]‡ˆ­¼!ûBþÎÿþYx²óN—X´ð½ßÅŸ†¾&𷈮´˜nôùµKmm}5)ôè¯ì¥½ŠÙ­£»¶yDÈüÝþןðm7ìyÿ½oÛ;ö?ý¢>%~Äú×íqàm3â?¡øq£Ûxçà×Åm'â¶kâsâ-GáÅ—‹ü5¥ß‹ì5ùïŸÂ_5üDÕüAñ+Q× °Ó>iÚ‡|IÿmΑsáo Kã8tBËè9¼Mñ_þ ³ý„§ðÞ³¥|lÿ‚†~Êþðþ“¤|Ô¼?£èZwŃ¿µÕ¦´ÓæÕ-´Iµ÷Ó`Ôe°²–ö+e¹’ÒÙå0§ÑóìEàO|-ý‹ÿdO†_ þ"Ø|`øiðëö`øàO‡Ÿ´¨í"Ó>(øÂ? |'áÿ |EÓb°½Ôìb°ñ¶§éþ%³ŽËQÔ-ßSmïná <ŸOÐEPEPEPEPEPEPùðÿÁ¿à¾¿ðOŸø&¯ì·ñ“öuý§5¿‹ZÄ‹¿ÛãßÄhmüðÎóź1ð߉ŸÂšn—#j°j–h·­uáÝHOiå….Þhúðÿ‚pÁXÿdoø*–‡ñ[Ä?²~§ñRÓ~ j¾ѼjÞ=ðMǃ&Š÷ÆvzíöˆºlWצþ6ƒÃº‰º‘LbÝ„*C~_Ëø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEáµÇß þÊß³ÇoÚSÆÉþøð›Ç¿u{ /†šúÄ> ðÖ£¯Cáû[Ói~Ðj>!º²ƒCÒü« ùäÔu X­ìo'’;i@?’ÿø9³ã/ÅßÛ?ö–ý¿à„ß²ôKã?Þ$ð‡Æ_ZÞyÜ^ðŠêþ Ó|-eâ¨m_:^‡á DñÆoXßË£>‡¥x ïM°¸þÕ°]CúÔý™ÿg_…ß²OÀ/„ß³gÁmMá—ÁŸh^ð¥­Ô–÷­Ý–‰e´ºßˆ/­­laÕ:ð½—‚þ(iþ;ðî¥/-~!xâV øCIñÞñ.·â=Â÷^(´ƒA]?HcT¹Òu/ͯøbOø;3þ“/û"â4ü!ÿè1¯êæšî‘£É#¬qƬîîÁQAfwf!UUA,Ä€$$^5ÿ‚xÁÓßü⯇Þ>ÿ‚¹þÅ^1ð7Ž|;­xGÆ>ñì±ðcVðÿ‰¼/â-:ãH×t oK¼ý‹¥´Ôt­_L»º°Ô,®b’ ›Yå†Tdr+ɯ¿àš_ðtgÂÙ“ZøEá¿ø+Çìçª|2ð'ÁÝ{ÂG„äøo¢ßøÊ÷Áú?…o¬íü1kñ[IJæ¥ñ*F].!£é~%¹ñ|ºî’¦ÖKMRgnÑ{¿í1ÿhÿ‚ÂþÖÞ+ño‡¿à†Ÿ°=—Å€~×µÏ Cûjük¾ðg‡üñ‡QðÝýÖ…¯ê¿³ý—Äïˆÿ <­ø2Ã_¶žÓHñŒšÏSÅ0ÚOq‡´8ã!ðfŸø+wüGö9ñ¿…ô/ø.Ÿì/eðçöpñ†½¥x^OÛ/ཿ…|GáÿƒZçˆî¾É¡êŸ“áÄ_ŠÞ´øu¨Ëi¥ÞøŠð5ç†<ñuqmâ™äKýéÿ‚TÙÝéÿðKßø&í…ý­ÍýìûÙÞÙ^A-µÝÝ·ìõðî›[«i•&·¹·™)à•X¥FŽEWRÞÔÔt‘HÝdŽEWGF ŽŒ+£)*ÊÊAV‚ iÔQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_ÅoüµûHx»öÓý¦ÿcßø ×ì¹â/Äß¼ â¯Ú¼2uhtßx&úÅ5 èÞ2¶³†â_ øSÂÿí ãm$Ïu¦i:_‚|¯\[\jVÖ§Lþþ/|Nð·Á?…~2xæúÛLð_‡þ1ø“âÍFîòÓOµ²ðß‚<=¨ø—Z¹žúúX,­#‡NÓ.®.æŠÞ7Í"F¬Ãùÿƒeþ|oý´iÿÛ{þ ³ûNh ¦»ûPkZ—Â_4_o¼Ñü3áÝGFÒüX|-s2EöO x/AðO€~ øwZ’ííf/x¶ÒòKHðë`Öì¯û8|;ý¿g/‚ÿ³‹{¸>|ø{á߇Þ—Q‘fÕ58tK$Šû_ÖfEH¦×ü*ø—ñ ÆZ—¿güh¾ñÇì•áÏ‹÷Z¤š§¦ø]®ü(t_…·÷Zíà¹ñ?€áø«^è׺„°ÙjúO‡môOi½Oìÿý¼~"üOð/Ä¿ø-GüWÄß¶‚~x‹HñŸƒ?dÏøÛâ>»û?xÆúëjñ'ÅâÝá凊ì¼9oa©[xkþœ_Û7ˆ,µ¯Oá´ÔôAðOí;Çš?ìûiþÖ>'i²7ìݧ|FþoÛ‡,~ ø2ÛÅÿmóÒ)þ×ÿ ZÚ<裗Îßæ">T}sEQE^òòÓO´º¿¿º¶±°±¶žòööòx­­,í-¢i®n®®fd†ÞÚÞygžWH¢‰IQI–z'ÇÏÛïöºðÛüVý‹tÙ‹àìÿ®Fo~ |Lý­<%ñ{â—>>xdŸô‰:oÁ߆^;ø''Ÿ†^/:ŸÃÍWÅ?üIã_x^];Å:¯Ãÿ ÛêöZyûö¢øA©~П³7íð FñdÞÕþ8| ø¹ðƒJñÕµ´—· Ô¾%øÄ ±ñe½œ7VRÝÍáË­j-b+h¯-$žK5‰.­ÙÄ©ùyÿ&ÿ‚vþ×ÿðMÙsÆ¿kÿÚsLý¡üA¬üO¾ñ7€tŸ øƒÇ>0ðo¯&ÃLBð߉þ#èþñK¯ˆ®í_Õ|9¦xkú“Íýý¡w©ëµø|ÿ‚Ë|^øKûxsþ …ÿNø#ðïàGÇߊ¶Úv¡û6|øâ?øƒöký¡¡ñõÆ‘áHÓ|miÿ §€øv{¤–ÏHŽþkyîõÏêÍe é·Çi«jói¯üžÿÁÕ)uñ—þ eÿ_ý¾A£ûRZø¿^×ã‡F’Ùõý7Køñ{àÝŸÂGSå›MÒ´]sá§ÄÝ}/õ*ÂÆÊÛYÔæxí-îæCÁi>"Ëãßø8ÛþGû4kÝÏáO‡¿…hx4“徚þ,ñwÅÿYèú«Û\[Mm-þŸyû xH­µ¦‘'†þ?üpøaâ‹«{K;h´Ëi5}"‡³GÚ*Eáûh­m¤·…¨öaEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§ZþCÿàØoÚ¯ö^ø3û|kð‡ÆÚGà'ŸIûw~ÒZÄ~ø•ñ‡áç|DúEí¿€!³ÕDñGˆ´½I´ë¹¬îá¶¾[cm<¶·Å+¼…þáà°_ýçì‰ÿ‰'ðkÿ›JúîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ð+þÿ‚´Áÿ¶ýŒ.®~ø¯JÓkÏŽ—«áOÙÛD¼Óa×OµÒ5] o‰5=2ê)lF‹àï êÙö_.¼eâ? A­Ý¬Z¬–@‰ðW_Ú3ãÏü»þ }£ÿÁ¿b/ŒÚ¿Ã¯Ùÿ὇tïÛkâ>‘£®³ákÏxR°Õ¼[kâ­4]ø{Y×|?ðwÄÞÑ>Zè%Ñl¼CñSĚƛ©}³NÓ4ÍJìö&ý’>þÂ?²§Á/Ù'áÛeðÁOéÚŽ¦"MSÄ:Æ¥ªj^&ñ‡‹uXíÀ¶‡UñŒõÏx«S‚Ô X/õ‹ˆm”@‘ùÿëÁ)/ð_ˆôøOÄŸ·wÇmcþ(𾯧ëþ×´‹ëk-SEÖô›‹½7TÓ¯!ešÖúÆæ{kˆ™dŠWB (ý_ëæÏÛ/ÁÚ7ÄOØÿö¬øâ?ŠgÁxëöløçàíwãF·®ZøcFøC£xŸá‡Š4MS↯â[ëÍ>ÇÃÚg€,o§ñ]þ¹yck¤Úé2ßÜ^[Cnó'Òuâ?´ÏÂY¾>~Íÿ´À«{½:Â?>+ü%‚ûX®´›)¾#x_ð|wz¥ªCp÷:u»ë+5ì í5²KÃ!`ŒüöÿÁ!m/ø!ìQðoų—Â/ÚCödý—üo¨øûVøñ«Áž2ý«ü㯇SüLÕ´mFÔï¾~ÑZïuo‡Ÿ~&—á­6ÃáȰñšø¶ßÃ6ºaøá⡯ؿêwÄø,üÂ-ë:e–­y¦ÝXÙjÚn»¢üQÔím*úXn–ko´¼ÂÊvP„õcöøÉâïÚ/ö$ýŽ¿h?ˆéxóã·ì¯û=üdñ´^²›MÐ#ñwÄÿ„žñ·‰#Ðô뛽BâÃHMg\½]6Ê{ûÙ­l„0Kwrñ´ÏõE|Ñû|×ÿfØëöNýœ#øëÅZ寀>| øy§Ï¬üNøóñƒ\´½¸ð¯Ãé6Ð]HoõAaw­ë÷ÁÞÓõŸx†âÛGÒ.¤¯}øãX>|<ñçÄ[¯xÏÆ6Þðgо–º‡ðKàö§xVÒmGIðtvÞñÏĈDO¬FuME¸—MÕ|Yâ/þ4ÿÁ`|=q¡ÁÓßðE?ˆš”«o x£áïÂÏé²¼raõï|oøý=Ÿ‘wiäø—áËtP€Dó«Êâ92š¯ÿYÿ‚¼ÿÁC|Yð‡ö3ø“ÿGý¤ÿeŸ„þ>üðÇÆÿŽž1øoûKK¡xà–ŸñÁ>%ø­=ÕïˆþxÃÚ"ê¾ Ñ5MoZñ½–Ÿm¨Ü2ˆîžÚî×öcþ IÿÝø—ûixcödý¢ÿeËÏéÿ¶×üÿãfƒû@þÎÖ>,ÔÆƒáO‰1iž!🈼eðÄ^ È45ñŒžðÕÖ…ªßŸì5Öthô~m#@ñ.¯â-ö⿉ø7+AŸÄÿð[ø8SâÖ'ÚügûJüTÐcÔ ’¹þ!~Ö|K Iʱ´~n—àJs±¬ÛdŒºÆP«@çüûÆ7 nOàŸ?·î§ûZ]èrXèÿ³g‰f‰þðŽ›ñâÑmì¬üQûZêÚû$/Û-zh[WñLJ¾5kíሮµm3Â÷z¢ ¸Ïø"üCÄÿðMßÙsÅV?õý#Æ_µí1ñ?_ý ¿iïèyú><ñIÝeà\¬‰y¡ø6ÎKŸ:ým–=KÅzߊõ-Þ“kjû5EPEPðÏÿõÁ!àœ?·ìmñŸãGíWû-øKãÄûoÛ[ö…ðT>-ÖüOñH¼Âúø.ûIÒ§…|e é†;½kS™&ktívë,ò"D±þïÄ8?ðDßú0‡ø]üjÿç›_"Á§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€|ðf±ãêé^]¦—¤Ã¹,4›d—T×µ«×´Ñ|?¤@ÂãW×5 ?M·ýýÔuüMÁÿfÿÁp?à¢?à·ß¶ïû»_ƒžñΧþÉß ¥ñ%¦«ðú_|?Òôß Øiíá­J+ýCRðßÂMDðö³©]%·†4Oü^Öîuÿ/W›NñF“ÒŸðsOÆ/Š?µ÷íIûÿÁ gOê~ñ7í/ã]âŸí}g{¬húr|?–÷ZÑ<§x‚óM/»á/é>ø¯ñ[ÆžºÓµxÍÏ‚¾ëöê6¶Q×õ›û5|ð'ì¯û>üý›þ[Éoà?‚? ü%ð×ÃMq¼w×ÖÑít³¬ê¿dŠ i5­væ õ­nâbK­Zþöä"ù¤n¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ãÛþ çû~ßúg4oÛà_‡þ7iŸ ïõíOÀ¶šö·ã-<=âk}2×]¸¶x“òÜ6£o£i‘J·Ò]G´CDÍ!„ÿâø"oý?ÿü.þ5ó۪ͯ(ü–>8|$øuðöÉý¿~ ü#ðŧ‚¾|0ýµ¾4ø+À~°¹Ôo,ü;á}¼?c¤i×zµæ¡©ÜCeip¤×÷×wNªiärX•èß¶wü¤gþ uÿgÿû@éf‡E« y‡Æß‹>ø ðcâïÇOI4^ ø/ðÃÇß|a-°ŒÜGáo‡>Õ¼aâ -įFdÒtk¶ˆK"Fd ½ÕrÃÄÿm/Û¿öTÿ‚y|)Ѿ7~Ø?døGð¿Ä<Ò~é^(O|Lø†³ø×\мMâ]+G›HøWàßëö1ÝèÞñ ÈÕïô«])¬¢°ŸQ‹PÔtË[ÏÆÿðq_üöˆøñ³öñíÙwk᎟ >$|ñM͇ìÍûa ë|Mðv³à­r{"ß³ò¯ÚâÓ5»©-÷2¯œ©’4ò4ŸðoÇø+½æû`ÿÁb?kߎ~ñGÄ‹iüað÷ö<ýž¯<3 ø3ö[ðŠ"}_Â? ìµÿˆ~ñ¶‘qâ½L¿³²ñÅý¯Ã«mWQÕm.¡ÕüSâ]@6¸}»à¿ü³ã/ø%׋Óö†ÿ‚NþÙÿ´'ü&žòµoþË´Ö¿à_üý¨ô[‰õO†~)Öü ெÚ€5­KŠ}?Â.üâëÿëòXßÂlìZúæ.¿öoÿƒªÿà’z×ÂÛ~ѵWü!ü3xGÆ·V¿i½{Â_u …Òî>)xãÿõKý?ÁžÜø£@бu&› %îÛÈ<5¦h¶·*³[ºÐ:(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Òöòý„>ÁA~|"øWñ£ì×ß¾þÒ? h=o–‰ˆðömg¤h>д‹;=/FÑ´»;];KÓ­m¬lm ¶‚(— ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_çÃÿ:ÿ‚Nüuý´ÿe¿ŒŸ¾ÿÁW¿ooØ¿Ãöÿ¶'Ç¿?ÁÿÙ³âŒ<ðîãPÑ—·>1—IмwáË&ñ·±oe©Ý<Ï5¶§$—¬H±ÿ^ðNØâŸì!¡üVÒ>'þßµwíÙ?ÄWÂz–«þÔÞ9ñõ‡ønÏ]µ¼Ó|7ˆ|Uâ‡Óì¼HúŽֳ«Ù­Äú>žÒ¤æ(Ì@¥ÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE|}û|þØÿ¿`OÙã—íañ6îÒ=á?‚µWEÑn.!†çÆž:½OìßxJInm Ƨâÿ]éZ,1ÅÅ,k²øOÁzæ·;Üèž0Òõ]o¢ÿƒ±†ö c²ÐõkKÿë+áÿ€|ð§Àž øaðãÃZWƒ~|:ð§‡üàèVËg¢øcÂ>Ò­4?øI´RE¾¤i6–påŒvðF¥˜‚H_EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEüÇkßðo¿íY¬ëšÎ¯oÿÿÁZtx5]WQÔ Ò4ߎÿáÓ´¨o¯&ºM°…>+Æ‘YX¤«kk",pEª(ä?öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯ø‹ð«\øûR~Ü?|MñSÇ|Að×öÄø¿àígãÅ RóZø‰ñ'PÐÓöW>1ñ¦­¨_jwºˆµÉ"kÝRîëP¼žk™]丕‰bPúãÑEQEQEQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP^ûO~Ò_¿cÿÙÿâÇí3ñßÄöÞøQðoÂþ0ñn¯4¶iuq»Cg¤xwA·¿¼°ƒVñŒuûÍ+Â> ðò]Ãwâoëš'‡´ò÷ú´oîõþ¿´­û@ÁÐðT~É_ ~)øo@ÿ‚VþŸ¼+¬|EñG‡¦“ÚÇÄm.ó\²ðÿ‰oôG»Ó5/xŸÇÞ7ŸÃ¾?ÒþÝêR|2ð®‹á—ñ†¤©ªiV%õ_ø&LŸ¿à¼ßðZ_ø+Ä߇ž$øgûþÆ:gˆ¼#û-hšÌ–P cÄ:}ö­Ã#PÒ/nõ‹}KÅÙxÛ_øŸñ3Å –ëFѼcáß øB×_šÒ×H5ýÖד|ø#ðßölø7ð×à/ÂÛx[á§Âhþ ðv‡m‹M#F¶Xk“m´3ê:„Þv£ªÝ¥¼?mÔîîï5yØY Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþz?àá/ø+†¯ÿâýŸ|#ð{à.…'?mÚúçWøoð;ÃEßÚõŸØ^­¶ƒ¨üKo ihñ&µª¶±­ižøm¢Ù[Y&¿ãÙ®aÕ$¿Ò5ƒ?ྟðWO޾"ø·ðÓþ ÿ™ñµâ¿Û7㈴ø¥ñ#àψ ¼Õþè¯q©;|5²ñƒs1ðw‹ç‚Æ|Oñ6¡qioðãá´²_ù3øŠ]KÃ_³ÿðFoø%Oƒà‘ÿ²Wü( +ÅúgÄÿˆ^.ñ÷Ä‹_lü!„§ñO‰õ/KÒìôkky5MkS“ÂþÓôѦxf+ýHn:¦³ý›¥ß뺜 ðüÇÿ;øyÿäýž~|zøåð¿CðP?‰>Õ¯~ x¢ëRÕuË¿„žñV¡uw¡|+ðå½ù·Ñü?â ? >kñ?PÑt”»ºñcëž‹Ä> ðΑ¦j:‡ô³@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htPú°ÑEQEQEQEQEQEQEQEQEþ|?ðC¯ø?ü2߯Oøvïü0Oü3Ïü6'Ç¿µÿÃIÿÂÁÿ…‰ÿ …?á%ò¿áÿ‰oü#¿Ù¿ðfgý'í?Ú>oËå×õáÿàÿ‡­aüVÿ‡¤ÿÃ(ÿÂAý«á?øS¿ðË?ð—gc}]ÿ„Ëþ/øK?{öß¶ÿÂ=ýö/ÝùÚwÍå×åÇü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šùßö·ý¤¼û~Ì_?j?ˆ£Îð‡ÀŸ…Þ/ø‘©é‰}k¦ÝøŽãÚEÅÞàý&öô5¬:÷ŒõÁ¦øOÃâut›\Ötø 9)¥û]~×?a¯€><ý¥ÿi?ágÃû(eÔoŒêη«ê-ž…á? èvÙ½ñŠüG¨ÉŸ£é6Š7HòÞßÜXiZŽ¥güpÁ ?e¿ŠÿðX_ÛÏâ‡ü“ö䱓þüH“Eý~^ÞÝkþѵÿ ÝjWúEÆ‹wy¨Ù^YøCöv‡PÒ`ðkMáãeão‰Úî½ãU]Tðt¶úÏø'àüþ ý¦¾þÐ?µ‚uÙ—þ ;ðƒÆ/â†þ¿¾ñ/…üCñ'Á&[ý#U´øUâ8¼u¢|WñŒºÇÃôÑüiñ'Q‡Ãƒ´o_Ùø:å®® Ò÷µð·áwÃð—áO„´?|9ø}áý?Âþð‡,-ôÝCÑtÈD6Ö–––Éa˜‡¸»¸p×7׳\_^K=ÝÄóHßQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWó¯ÄYÛšÏü#¿ðéoøGÿµuì/í/ø[ÿÚ?Øßl›û3íþWî¾Ûö/#í^_îüÿ3gËŠþœh ò8ø‹ÿ ×þ“öáÿ†ÿ„þþâÿü.oøUÿÚð®ÿáblðïü$ÿð…ÿjÿÄËþßí/;û3íßé?fÙæüÙ¢½›öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ã_Û/þ ûÿÁ><#áß~Øßü%ðGBñ…Þ­eᵫ?x‡Ä~-¹Ða±¸×SÂÞ ðN‡âox‰tXµM)µy´mö5µ].;Ù “Q²YÀ>ʯá{þ ¿ûbø÷þ Ùûaüÿ‚ÿÁ;~1ü=ñ'ƒ¾&_ÜkÿµWÄojþñ×Ã[­OÁW6¿4¿ê¾2ð{x¢òÆÃà•·ÃýkÅ~2дɴíKRñìÞð•ÿ•¤ýš~Vý¾à­¿ðqÇÇ_‹?àšZÝÏì[ÿéÐô«ßüFøéãß _éºßŠü5­Agá¿èzÇŽ4=ÅSÜü@ñF®êÿ„þxTðÝ– xÿI‚T×ú5ÿ‚@Á?eïø$ŸÃ‹ |ieñ7ö¡×¼3¬øoâÏí7©i7š'ˆ|_£øƒ]ÐüCwàßøz]s\²ðÃû ß xXÙèV—wWZ…öƒ»¬_Ýj7R, §³À¯~Ì> ~ο-£¶ðWÁ/†^ øeáÁ²Ú=ÞŸàýÇE]Rî–sý£¬Ki.­ªM%ÅÌ÷:íÕÅÅÍÄòÉ3ûUPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬4QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óìÿ‚ÁMÿkŸÙöXøÉð§àüSö¨ý¶|?í‹ñóÅr|dø7ª\YøFßZÖ–wÞ ’¾ø©µô84«+Û×:š–‡Y´Ö ËýwÁ:?mÏÚöÑÐþ)ê¿àŸ¿ÿ`«Ïj¾Óü5£üq¿šúïâM®¿g­ÜêzŸ‡L¾ðŽÛÃRévvºˆX¯ƒK¬Z$Û é-Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Ïø³Åžð…|Mã¯x›Ãþ ðO‚ü?¬ø³Æ>1ñf³§xs¾ð¯‡4ëcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´Ê¿ÄÇŽ¿à°_ðV¿ø,wí+ûJ~Ë_ðDŸ xáìÑðïÂú„uŸÚóâ­éÚ¨¿µñ¡`|iá_ŠqÛë>ð§ñCLE¶ø[á(|®|AƒÃ¶çŽíoô;û9ï<úKÿÿƒ¢?aسXñ¯Á¯‚êÿ¶GíMáÍr[|5øa%ͷû/Ý¢Gö {âÜ:f³£êiwóG¥ê€tÿë£_I|9w‘{ÝÍæì-ÿ•ý¹?ஶݧüÿþ }àKo |)ðo•eð+ö,ñÆ“:¦³¡ØÆ5¯ i:ïÃûÉ&ƒÃtmO\»Ö5Æ /‹>)x¾ÛU‡Å¾²ðmÊoöÃþÿCøEÿ£ø nž0ÑþüMý®üxÖz·Åß–:-íãiëgp÷ÚÃ߇÷~%žîãHð¿„î'Í«èš_„ï|)ðÍ‚¾xÁŸ ¼¦gû7Â^ð¾‡àï éû’8Ûì:‡ltí*Ó1Å"Ò<¤q©ùQ@ì袀 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯æ^ÿ‚äÁD4sYÒ¬¿àÞŸÛßZ³Ó5]GO´Ö,õëÁi«ZÙ^Mmo©ÚðbP-¯â. Y@ŠUGûÄøþý³¿å#?ðS¯û?ÿÚÿK4:+Ç>$üKñgÆOÚŸöäø­ãÏ…(øã?ˆ?¶/ÅÿøŸàߥiü]ðÏZÖS÷—þ ñͧi-&¯¡O#Y^»i–¦‰‰µ„ü€ õÄ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+Æ~,~ÑþøsÅ>-øËñ—á—Ãx'JºÖüW¨øÓƾÐDÓm4ÖÕåžîÚþþ+Ï1ôÔû]­¤VòÞ_FÑ +{‡š$pf¢¿–/‰ßðvïüÏJø‡â…¿³‡ÁÛöÈñ.„·G­ü øS Éà}bÒÒò]>âûK»ñ'4¿ÏaãéŠ5&øjºT°jöm ü—DÙŸŽ~+ÿÁIàá?ø*WŒô¿‚ßðNߨCãü‡àæ«ýŸ‹?iÚ7Á7þñ3ilÚoˆo4¿üPðNáM.ËG½MN쟄ºþ'oÓ-¯ìµÝêøéVÀÚv»¯h~ѵ?x—YÒ¼;áýÊãRÖuÝwQ³Ò4m'NµŒËu©êz„ÖöVVÑ+IquukGa£ÜéÚ¶Ÿàd!y.®õÿhz]š´ w¨A-ݤsþUøWþ A|{áŒðUoø(Ïí+ûoxãLð¥Ö‡yáÛmOSðö‹¦ÌÏs™¦èž9ñ–½ãŸÅáM*)“Sm#DÑüÚ¯‰•õ{é>Ës¨éšììéÿÿ‚A~ÌÚ=¾àïØ[à‡u(ôí>ÆóÅ_ü3oûBxP¸Óî§½MedøÀ<_¤hÕÅÝÄ’ÜÞxCGðÚ4Kmaé¶6vÀËŸíóÿý»àãÓ¢þÁ_ðN/ØÃã'ÃOÙ[ÄzŸÃO‹_>;|uÓôŸ†ž"Õ¼§Ï“«\ë÷Òxæûáoü+;Yñ†›â«? x+Æ~5øñ ÏÂv·^Ó ªëzi°—ìû8ÿÁ9¿g¿~ÍŸ³'„äðï‚t{“¬ëÚæ¬t»¯|Gñ•Æ™¥èúŸÄˆºÖ‘¤èvZÿŒõ;DÒ,¯õ+}#L³ŽËLÓôí7N°Ólm,àûa·†+{x£‚#H`‚X¡†”$qEHãQ*(  I@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htPú°ÑEQEQEQEQEQE~[ÁU¿à£±Á=þü,´ð'‚¬>-þÕ_µWÆ þÎ?²GÁÍKR“KÒm7ÝÃç?•ö½QEQEQEQ^#ûJ|ð'ì«ðãí#ñ>-z‡Ÿ~ø“âOŒáð¾Ÿo«xŠOøWN›SÔÓEÓnï´ËkíDÛ@âÖÚ}BÎ9dÂ5Ä@îÝExì×ñÿÀŸµWÀƒÿ´Ãµè>|nøΈ> ‡Å}¾“â(ü;â­:OLMkM´¾Ôí¬um: «h5 Èâ“r-Ä n>Ý@Q@Q@Q@Wó³û7|møÏ®ÿÁÊ_ðQ/:ßÅ߉úÇÁþÄøš}_Ķ\xy ™¶Ôþ½ðßí­ÿSü[ø[à߈ à›ÿðOÝLø‘àÿ xßÂú¯‰þ,Ý\ÝÃáïhvzî—-÷†gý¤ü={a«ÿgê6²Ig¨ÜnÓîÖK{ëÙ$†€?«ú+ùLðÀ¿ø;“ÇVkþ8ýµ¿àž¿æ¹b–¾ÿ…i¦x×T±6ÒIjò^ÜhÿüC£Á òC¥jm|i¯ÎÂñâ¹·Ò^e–üEÿ‚%Áwm=FËÃ?·‡üÒ=?àÕÌwÚoмû/x/S𠧈t —Ö:^­áxsà„|Wçj× ‰üwmâ‰,¬ml®³«OeegjýmøãÇ^ øgá=sÇŸ Þ ®ôëgÔa[Ë<½éÓÄvÈ×·—0Ùlÿbßø&ì5ÿúðvá/ÙSörøsðæÿLÓLÔ~%6ƒe¯|gñˆ–çQ½ººñÇÅírïø¦¼ÕõY-4ëýu´Ù_6ƒám#Bðݵ†hüùiŸðVoø9öðOÂïþËŸðEŸ…ß toˆ÷ºeÕ·h‰—¾'пáÖä6º­çƒÏ¾xÏÁ‘Ù\ɯy©ë¶šÃÿc[ÊÐøjaqorié°wüoûD|2Ö¬¾;ÁY~þÎWºßˆ§aà_†ß þØø“KÑôÛë-KI¹Ó¾-üøCá?i6×WI-¤šUŒ.®®ô{eµñ ö¡§}b?°Z(ù7ð/ü·£k2ë~"ý¨ÿà¬ÿðSOŒß5æÓï/Ýzgyàïø4Gþ I¦ø‹Äž*ø±âÛö˜×Ñ'‘öíQEQEQEQ_~ÝŸ·÷À¯ø'‡€¾üFøûkãË¿ügý <û6x=>øOñ¢Ÿ>"èÞ/×|?.±m¨ëºV^[/ë#PÔḻ¹¶¬£O¸YÞH@>Ý¢Š(¢Š(¢Š(¢Š(¢Šø‹ö-ý¿¾~Þ?ðÑð¤-|ymÿ Çû@xÏölø‘ÿ χôýÎø‰àO³ÿmËá¿°kºßö§‡[í1}‡Sºþ͹¸ù·éðã·h¢Š(¢Š(¢Š(¢Š(¯çgþ ;ñ·ã?ÂßÛÛþ9àï†_~'ü:ðÆÛ[ðŸÅ¯ xÇÞ+ð‡>(øV+¿„K†~"è~Õ´ý3ÆÞ‰u=EcѼKk©éȺ…è[`.çó?¢j(¢Š(¢Š(¢Š(¢² ÖL‚ÓBÕ#»»{(ešÙ'’X@>Ý¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿV(¢€ (¢€ (¢€ (¢€ (¢€ þ.?౞9ºñGüçÿ:ø-ª$×ð‡üñkK®'KxüEñãÅ 2ææ(â¸@³G'ÀÏ MpDj·ImmѺ·O!?´zþ+à²^ºðüëÿ;øÏªG{‡<{ øá•tmȲ›Ä^ øÙñFâæÚÞáÄqËsŸ¼.uRg’ÚÚîÊ_$ˆ„àÚ•ðnî<+ÿ|ÿƒ…?g­=®Çƒ—öµø“ã} ÂYd¸·Òn< ûO|}ðDͳ\EÞ«¥ø£F†òV†y/SA´i®"kT[Ÿí¿ŠŸø6ß·7ÿ‚½ÁÁ´n“ïü ×µ7Ä_ èZ„Ñ"Zj—¿iÏ:X¡ž6š ït­Ãd÷ÑZ\Ì–±k¶/+2^ZHàÚµQ@Q@äÿþÿ‚ë~ØßðNÙ#âì™û;k?~j^0ý ¼Gñ†ïâ7Ä¿üEñ‡Äßk:Æ…ðïÚދ¥h)áß|7-æŸðþ×N#Ä:î»g-î·$ik7öEõ·ë½Ÿü³öךÒÖk¿ø8Wö²º–Ú nlÿáݵÝÏÙ.$‰^ko´EÿþÏäHZ/:0]›Ð`+ûØñì9ûüAñ6·ã_þÇß²ßüeâ[ùuOø·Åÿ³÷Âoø›_ÔçÇŸ¨ëzö³á+ÝWU¿›jù·—×sÜI¾FÀ®sþ×ÿûÿ£ýŽ?ñþ ÿó@Ÿü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿ëó‹ö¾ÿ‚¦þÑßÿkø'×ÅÿÁ\ÿeŽ~(ýœ|yñCÄ>øÕàŸØóö‚ðƒf+ïÛü8Rñ'įø£öPðO‰~)éÞ0_ éñig‚<ñ*÷Fo j¨éÚBêÖ ª¨Gü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34þ{ÿà¸ÿ¶‹~üGð¦§ÿúý„|e¦ø›À~/ðö¡á þ ëûX躷Šìu¯ê:m߆ô½gRý„4};IÔuË{™4»-NÿVÒì¬.n¢ººÔl`ŠK˜¾Zÿ‚oÁ[¿iÏÙö/ø5ð;áçü_ö@ý”|àøXŸÙ¾)~Å?´Å¿ø þ_ŠÞ:ñ~¡ý»ñ À_±ÿÅ/ øƒþS_½ñ¦™ý•ã½wû+GñŸ¢_fjZmæ§ÿ¦gü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ£þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34þ_ÿàª_´Š?ॳ¯íE¨ÿÁ]ÿdÿ|Eøið;Ç^ðÿík¥~Ç_´&‘ð«áf‹âñ¸½øwâ„ÿ²~•ãÿxƒÄc^½]?ÄšŸèúañžoÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/ú?áý¶‡ý,=û⸿kïþ—ý}ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐð)ÿèý´?éaïØÿÅû_ô¿èÿ‡ô~Úô°÷ìÿŠâý¯¿ú_õýõÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@À§ü?£öÐÿ¥‡¿`üWí}ÿÒÿ¯œ?lø,ßí_ñ£ö\øùð›ÅŸð\ŸØ£ãŸ†~!ü,ñ„µßƒ¾ ýƒÿjx»â^™¬é7w~ ðçxgáçÂÏxKBø;ãoØ?ö ñiš6“ogiàßøÓÂÿ±G¼9â}_CŠ5²½Ö´_xN¿š&ž×W½‰–fú?þÑûhÒÃß°þ+‹ö¾ÿé×÷×ÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍŸðþÛCþ–ý€?ñ\_µ÷ÿKþøGí¡ÿK~Àø®/Úûÿ¥ÿ_ß_ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü Ãú?múX{öÿÅq~×ßý/úÊÕÿຶƱ µ­¿ü‹ûxL-ì3\êžÿ‚k~ÓWú‹Z…–9­…¯Š?àœúΛ,dJ·+;—žÚ×P·î_ôÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?€?ø}'íeÿKRþÎÿø©?‰_ý/j?áôŸµ—ý-Kû;ÿâ¤þ%ô½«ûüÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?Ï3ÇßðUÚâΑeáOÿÁ׿ômiú•æ¥ð«þ ÅûL|'ñl mçC#[ø‹á7ìið×Ä×öÉou<¯áÛŸYèš­Ìv§PU{{k«_‹~|}ø§ÿÁI¿h_êÿðqíYàOë_¼£éðPözý¤®>'ü|×l£ð8Ô~ø‹áÝ¥×ÄøoÁïi{ý—©x~pžÓ–Òæcudïþ ¿ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐùýxö•ýŠ<[ ëñüÿû}êš¿§]é:Æ›7ì•ûjÇ ö} ÛÝÚJöúd3,sÂGÚÄ®3Ãÿ ¿àÖ=[@Ñ­~>ÿÁo¿à¢Ÿõø´©tÿý¿Áÿ´‡ü¯I,“>l<#¨~Æ>1ñ‹§F^)£Òî~!ëªnâi§ºž)M²¡Çü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ü'øCÂðc† ÓáÖ¾)øóâ–ZU¾suã ?þ se>¯y0E.½¨/€~øÚ-Vñá’æâ*ÛLÐÖk©ÖÓFµ·[X-½ù>'ÁŽ‘¢"é¿J¢ªÿ ?à¦9 ä“Ám$Œ@ùÙŽY˜±$ÿf_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐò=áÚ³þ  ðF’t]Âÿ³eí›]ÍzfñìiûcüAÕ¼éÒ$t÷~x—\[E¡†ÁucnæY-íâyæi;½öòÿƒ04;øµ/~Æ3ÜB²¢G¬Á8~<ø†À‰chÜË¥ëÿ²î§¦NÁX˜žk9Ë G*+¯õMÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ4Þÿ‚©ÁŸþÖ¬|Ká þÞñ˜Ó>›¯øoþ gñ#CÖ´÷¸¶šÎáìu]3ö>µ¾´ií..-fkyã2ÛO4Z)][é};þ$ÿƒq4{[;-#öŒøe¥ÙéÑÅŸi§~Å_´Õ­Œ6à"³·¶ýš"ŠÚ8B¨‰ DX€p+÷ þ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šþBÿà½_ð^¯ø$÷í£ÿžý«?fÙ£ö¬ÿ…•ñ·âWü(ÏøB¼ÿ 3ö’ðwö×ü!ß´ŸÁßøþ*?ü𯄴ïìï xW^Õ¿âm¯X}³ì`°ûV§ueeqú1û8ÿÁÌ_ðD~Ï_ü âÏÛ[û+Å> ø3ð¿Â~%Òÿáœ?kkïìÝþÐô}fÃíºoÀkÍ:óìzͿڬ.<¿:Öæx9[÷sþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šþ)à—Ÿð[ÿø%ïìëÿ*ÿ‚Þ|øÉûNÿÂðö¾øÍû;ø³övñoü)oÚÄð°ôÙ|y‡ÅWÿØ>øM®x›Â_ÙrxÓÃKö_èÞ½¾þÒÎmx¶wæ×÷“þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}¯Á¿ø8þ ÿ½ý·g¯ØçÀß³í;ÿ ;Å? ¿à£?³ßÇéð¥¿h_ÿ`ü)ð7‚>3èþ)ñWÛ~!|&ðžªeê>,ðý¿öw¨ø’÷íþv£ÝÁk{-·öµÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡ö¿ÿà†ð[ÿø%ïìuÿ*ÿ†Žý§á]Âÿÿ‚Œüqøñðþ,·í âïøK~øÃû7þÏÅ ð›ÄÿØ?Ú?g›þ$~&þÆñ%¦Ïôí×rîþÖ¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ âÇþ ÅÿÄÿ‚\þÒÿ¶Ÿü‡â×Á/Úþ_‡ß²wí«üRý º¹ø_$ïöW‹~è:ߊ¼Äðî²³<¦øX_±áôõ7¢ÝøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡ö¸ÏˆÿðsÇüß^øyãÍIý·¾×ªë^ ñF“¦ZÿÃ5þ×°}§PÔt;ë;;>çà 6Ðù×3G›q4PG»|²$a˜~ÔÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@ÆÇüÛÿÔÿ‚VþßðKŸƒ_³§íGûRÿ¯øÉáOüeÕµÿ‘ý£ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Úüý«ÿà·ÿðK߉ð^ø%‡í¡àŸÚwûköiýœ> þÓÞøÏñ'þ·í ¦ÿ¯üCøIñ—ðÿ„;VøMaãïlkž+Ð,~ÕáO k¶ZÛþÓª\ÙYÚÞÜ[k_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµú³®~Ã?±?‰ÒÞ?þÇŸ²ÏˆRͤ{D×?gß„º²Z¼Áf·[ÿÜQbFˆ)pˆ«Žwþ×ÿûÿ£ýŽ?ñþ ÿó@æ›ñYµÏí[ûzþÑŸ³†ƒãŸ‹~,þÛ¼eðÿÇžøuãè4ýúàðÞ¥¦^› cÃzf·¤Ï=•Õ¼òizÞ™¦êÖbdKÛyÊ+ýN~|&øWð_Ã+௃¿ þü&ðj_Ýê‰á/†ž ðç<2šÿ•öíEt iºV”·÷¾L?k¼‚âçʋΑü´Á@EPEPEPEPEP_”¿ðV_ø&ŒðQo„¿ nü㋃ÿµ‡ì¯ñ_ß´ì“ñŸSÓnµ}Á¿<)ªéÐÐ|_¦XÈ—÷^ñ”Ú‹¹6˜%Õ4=[Fðߊ¬ìuÕðüþ׿V¨ Ésö™ÿ‚¥ë? n|áø&³xGö¥Ô494þ+ø›ö–ý5اÃ>)º´[ñÓVѾ"뵉¼/¤ßLÞ$¶ðïìÏ¡kz­­Ÿü#W^%±–q¯×[ÿ—ÿ‚lxOþ û*Z|µñdŸþ-xçÅúçÅïÚ'ã-夶·ß>1ø½-]Õ Šêk›Û_èöV6‡,n. ²ZØÏ®ßޝëROúuEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ_ŸŸ¶üÁ_³Ä_ƒ_³Ÿ‚¼âoÚ7öÂý¢®o_àßìÓð÷Uд]v÷š¹›Å~$x¿ÄSÅáÿ…Ÿ|+ka¨GÆzê^\j—ö7:O…t/ßXêÑ造tWäOÅÏø)?Æؼø+ÆðQOÙW¿g¯ø¯Ã~ºý¥~þÒ´·Ã_ƒþ,ñ•ìw…áý ôßüý›Xh·-§k´/Å=6OŽ5ñL§‹-3Hø£x6×Qð‡tøŸS—Xñ'޼G¥]ÝȺ]®áýGÎÕntÓú(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿™}Kþ Ùû]iß¾7|+ðçüöáøçàï‡_´Çÿ~<ü°ñ7~|RÒ~|pø‡ðRóÅ7ž&ºøO§øWÀÚŠkßõ=?^Ñ.¼c®Ûi:¥ã\jöÐ<€颊ù“öLø—ûGü^øOkñöœý4ÙWÆÞ Ôîn4O‚ÖßtÿŒ¾(ðß„V TÓ.~!x«Aðdž¼+aãVä__\ø_ÃxOðþ™.™i{âK½lê–:oÓtQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñãÿ¸øŸ7íIÿ:ÿÁa¾.x—PþÜ›öwøU{û+ü3¶»FžøkÀ_|àoØh®¤·Ó~Óâφþ#Õ/Ý-ÞîãQñWˆdŽâÂKQ²¼þëøÿ‚è×¾ÿƒ„¿à¿z6°±ÛjW¿~8ø–ÖÔÈ<é´o~Ö¾(ñ.—x‘°I94ŸéJêMy "HÙÀ?£oø-G€´¯‰ðI/ø(߇µ˜m§³Ó¿c¿ŽÞ=….¢’X—UøWà=cↃ2¤S@Âæß\ð~qg)vޏ šhn!íåù›þ ´ý¢¼AûJÁÿdOøÃX¹×­6Ÿá¿ iÓ]ÚǨëú®›b×0 5?.¿c‰¿à¡ðP€ý²¼{û]ø¿ö$ðÏí ÛüPýž?g/Ùëá'ìáã{o|ñ4úÂÍKãwÄ/Ú3àÏÆüLñ7Œ¼,ÚwŒ5¸>›Òím|C†•5¬‘£Ù|ÿŽ|JÕ¼ ÿŠÒ¼/§<Égñ›öµø/ð×^X¤tIt/Âß¾0B—*² š®|(ÑdXäY\Go0Œ èÞ3ø·¢øÏÄ~$Óîu žê>Ö|3â=P|Gñf£âm*Áì@:KŸÛïâgìÕûxüý…?mo†²þØþñÆ­û)~Ñ¿|-â߆žñ7þ {ÿ|ø‹ðÃÇ>?ø­yáOYèšÇ†®|'ã ⟉4Ïj:ÖŸ£Üxoºž§cfß®üÝüUýž¾0ÁV¿à©°?íA'ÁÏ‹?b¯ø&¥ßÄ?‰ñŸÇïë¾,~ÑŸ¼{sà‹ý?Dð7Á?Á¥|WðÃ_ ÍðïÀÆ­âÿŠþðUþ¹<>'ð¶ágÌzìÒ%QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE`ø§ÅðG†ãUÖu{ùˆ"-7M´¹¼º”ƒåÁ ƒŠüœøY«þÙÿðPφ¶?´OÃoÚýb‚á—Uøào‚ÿ >üeøÄ¾´z?ˆh/üoÐ~-øLñ¯ˆ`Q©ë|àM ÷ázÜÁá/øûÄ>(Óµ‰mÿHh_ƒ>ý£¾|pýž|]¨êú?…><|ø—ðgÄú·‡æ‚ß_Òü=ñCÁzׂ5­GC¸º‚æÚ ^ÇM×.ntÙ®-® Šö(^h%Z6üÔÿ‚/Á"tø#ÏÀˆßtþ/ý o>&|Qºø•«ëú×…¡øá­×EÓ¼=¦éÞð¿ŠdÒí<àþ%ø“© c}¦xzþÏT¬éŸkþêh¢ŠüV׿lÿß°/í}¬ü5ÿ‚€ø›Jñ‡ìOûRüUÔ_öAý³¬¼1¡x3CýŸ<_âÛé®tOØëöžƒÃöZ~‹¢iVq¦|øí¬þ-³µx~"ë—ºË뺄?jh¯øýñûà×ìµðkâíûAüBðÿ¿ƒ ü?7‰¼uã¯M:iÚFœ“ÛØÙÛ[YØÛÞjúïˆ5Ý^óNðï„ü'áí;VñWŒ¼U«hÞð¦¬ø“YÒô»¿€?`¿¶í‘ñÆ¿¶Ä-2ïözý…|_à¡á_Ù ö]ñoƒ48~4|IÒg×t½fßö¾øÕâ «I|Qðþïź=•Ö‘ðÇàö“ª¦ÿG‰%ñЬuZÛÂþ&Ö?W袊þNà·ðZÿø(/ìiûGñƒàÏì1ãÏÙ2ˆß|/ðKÂ?¿jþÎþ)ø… x›Ä>ñÿŒ®/¼-û<ü#øñßÃsI™ðÛÄ6öž ø¡ã+-.ÖY4»¤ðŠìõa&™ýcWòÿ«Ê,¾ÿÙÿü,ÿÖuýª«úý ÉOø*OükÄ?±´Ÿ³Wìõð¾øûlþÜì> ~ÍÞñ¥ôöÞð±’ÿH´ñ‡Æ_Š‘éw–ž ›áïûMnÆîïKÑ$ƒTñ ôéegummiª]ÚEñCà'üáG â·ÁßÛÿ\ý£?h_øoRñ_ü(/Œ³—ìßá¿Ù«âþ©£YF‡>´øMðïÀß´Ã;¿‹iô øƒ\ý¡þ% 'W½°Ÿ\´Õ¬Rà/áGíO㛯‰ŸðyoüËᾺ“Mᯃ?³g‹¬ô-4ÜO ¨×/?g/ÚÃâÓkÑ­½Â7ÚßSÔ´ kœ”ŠòXÚÝÁ=ª:Ïý£ÐÁðM/ø(¿ø)¯ìðÏö³øQcwáÛ?®¥ øÛÀZõ¶£¬ü6ø“á‹aâïê—¶© WËgpÖÚ¶ƒª›[ 5ï k>×åÓ4·Õ[NµñŸÙƒà—ü/á·„þ/ø.ÓÅŸ²¿ÁO OûZþÝ~ÿÂeðÇâ?í)ãx7öƒý´~?|~ðg‹üRžøóû9xsáÃ|KÒ`‡ÀÖ‡ÄJæÉaÔ5ÏxG\–ÿÁÚGóñÿ˜ø—VÖ_þ Mû8x]Õü¥ø+ö›Ò|Ká gM_ÜxGVø²~9øëº<:Óê6Wz¾“oðo÷J5K ຓNÓ×P}F-ðÁûûüTø³ÿüýš´OÙÃöåŸþ )ûQ~Ò>ñŒoµ¯Œ~Íß´Wío üN¹×5뛽ßá¿Åÿƒ^ø¹¥èÿ×O}<øfŽþ'øuâÃ}qeâm;Âñi·:^Œô·ì/ÿ ¹ý£~8þÖß±ÆÏh ¿l_؛žÒ¾)økºž£©ü>ø‰ðëⓉ~|gø]s¯[ÙxŽßÃþ,ðÍö“{¯xSZ‚÷Qð=þ¯¤XÜkÚõ®±¦jw?§µøÿÇýŠ~;?üþ ÿlý¥¾ê<]ûf/~|ýžõí_ÃÚ·< ð ᧆüá ÄÿG„µ={Ã'Äoi¿ ü¨Ýx+Hñ¹'‚e¶ÖôýWV½½¾ÙþüPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_ËïÆo€)ÿ‚`Ám¼IÿTÓ¼â¿þÄ?¶×Á™~ þ×Zçßêž2ÔÿfOŠúsø_ |_ñwƒ¼-i©ø²çáwŒn¾hcÄ^3ÐtJËÃƽãOÆPØ É®ÿPTPówÿfý¸~~ÜŸ±§Ä¿ØKþ —ãO ~Úß´Ïí{¦hÿm¡ø¯ÚüGøkðcáç‰õ½$|Lø‹ñûâ§„eÔ¼ð—CÒ<5='Åþ!Ó|Yw®kÚ_Øü1ªYYêéoû û~Èþýƒÿc?ÙÓöF𦡳§üøo¥x_Sñ6i§CâÞOuâ/ˆ>.‹OLý†?øóZñ'‰ÎI.'µ]PAswyq·S}EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüÁ•?ò‹/ŸöÿÿõeZþÿioÚwö»øQâ}sÃ?ÿàšÿ¿j›;MÂÿ@øƒá¯ß±÷¯júåì $úä?>:x_âN—ý‘(jü+«»I܃¥½ô%§Oçkþð_þ ±ÿ’ý”þ)~Í¿à“ÿ¾$ÏãOÚÄ¿t_|.ýª`w†|MðãáO€¦ðø³öðëÃ%“ü4:”Z¥ýâÜ®¬-žÒjf˜Ù?àñÿ‡:·ÿà‘š'‰´è.å³ø=û\üø¯IoË ¶“©øGâ¿ÂHg¿‘Qŵ£kŸ´[džF‰úâÊØ9{„ŽOèsö(ÕìõÿØÓöH×´ægÓõ¿Ù“à.¯bî;Ùê_ ü)yjÎC4!`®ê 3 ¹ûTþÍ ÿlÙÛâ÷ìÁñ³J¹Ö>|iðf£àßAap¶š­Š\´WzOˆ4+É"¸ŠËÄ^×lô¿xvö{k»{MsIÓîn-.àŠKy,ÿb­?þ 'ÿíýž¼û|Cý“—¢ÛM`··q4š ã§ü·¿àð/ø&†ü5íÄŸ ¿eŸx«Æ—0D’A£Ûø Zý¯¾,o%F•m¬¯mu? éK-ÚÛ<šŽµkg™.¬äŸûV¯ÄïØþ ÕñgÃ?¶í3ÿOý¶ßÁö½ý¤´]áÇÃï„ßµËïø öTýŸ|?g¡Zi4ŸjzV‚‡}¨x{À–)ñ]݇…¼5{âý^ÞÏÃöºÿ‰o¬´ }B=GY»¶Ó­®fOâSúÇüéàߟ>=xsþ Íû1^üBøÍªÇoyâüRý™ü_â |/Ðïõ¿‡ÿ¼+¬ÅûbèVº/Ã/®©¨\éÚ£iQë¾'Õ|CãÏ kÆÞ$ÖõËÀèoöÿ‚ü9ÿ‚xhÿlOÚ«â—†~+~Ú¿´ ìÞ7ý­ÿk¯Àš‰gÝÕŠi¿ >Å«?~ ø8[èz‡´ek}GĤhW¼0[i~ð¿…`ëøÏðÃÿÁÔÿµ—Ŀ߿mÏÙö{øWûø‡ö„øâÚWÅ_|[û:\øþ|:ø»à1ÐRßOý©>"ëw:wˆì<,tmVÏÃþÔµkû ¹ì)lîo-®?³ +æ¯Ûþwþwãü6¯ü+ÿøeoøWúÏü.ïøZá ÿ„3l~Ûvÿ§ÿjý¿ì?ðŠÿ`ÅYÿ göü!ÿñUc×Òµùì§ñÃöÏý¬5_…-<#û2~Ë¿5KoØ«öHƒÄ~ñ‡…~)x‹Á÷öãý .<9ªjšo‰|A«<³Ý|ø=â,×àΜ²x‡Å:Ÿ¯þÙ§€4_þxŸÀ´_ìSâø+W‹¿j¯Á®¼Wâ}Gþ gàoÚ¿_Óõo üøŸuã¯[~Îúü‹K}"ÂöÃÅwÿ ¯õ Cöv›â~­ã/x3Áž&Ð>ë:σ|?¤ü@øaá¯ïF¼×ãÁÏ…ß´ÂïüøÕàoüIøUñ'Ã÷žñ¿‚!jw´/ì+á~È_µ‹|g¡Íñ£á¶“»¥èÖÿ²ƯÝ]Åâˆ~Ñïnµ†?t)ôoøB<7/‡ðÎŽú¿EPòÿ«Ê,¾ÿÙÿü,ÿÖuýª«úý¯ã¿þ ø!ÿPÿ‚±þÌ?¿f/ðJÏ‹~ _þÑÚÆ­GÇß?jOØFÖÇW²ð§Ãß‹?¬ô½BÐimcPÛ¬‰)­}³V—K¸²‡Mré­=Ë5¿ô#û8~Ô_¶Å?ø_Âßÿà™Ÿÿeë KJÔn|OñÄ_´ìoñKá÷†u[6âîÛL†ÛáOÇŸ|MÖ£Ö¯a‡KÓ¯-~ŵÍÜsjËaa ÷¨üÕ~ÕÞ»øWÿ–ÿÁ=~$k°_ üdýuùt-A`Sg&²ß³ßíSðm´¨'fŠ'šÇT²Ñ/µ( ¯uki®Z\yN—vqKýªWäü[þ ¯âOÛFãögý£?gŸø_áwíÃû üS´ø¿û8øßÆv÷~ñdi{¥j)ø3ñPhÁµ…ðBÒc¸ÕôûmKRðì^ >Â[-{^‚î/‹ÿÿਿ> xƒáÂø'¾¹û<~Ð<7{à›ï¿i_ÙÇÄ?³gÁ˯Ùcê|©|%ø“â¯Úâmß„¡½ºÖ¼+¢k?³ïÂÉõ-FÂ͵9lcV²ºü,ÿƒ?¼'>¡âOø,ÇË»—ÁÿjøO×ï7søÿã—/–Þê0ðMw—ñ£Ã³^à ÄÂnì$!Ræ7›ûT¯Ïïø&'üÛáwüö:øiû'ü0¿›Ämáµ»ñ/Ĉ–cNÔ>&üWñ$v’xÏÇ7:bÜÞ&‘i{5ž“áÍ ^_¾ƒáÃú%Ω«Ýé÷µ÷è QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWÌß¶í)¤~Ç?²_íûTkz~*³øðgâÅ8|#.¹ÿÊøÏWð†ïõOø(x“û#ÄðÉãz 7Ã0ëØ:ßöTÚª_dj^GØæúf€ +ñKþ •ã¯ø+o€f¯‡º¯ü+¶^$ø³qñgI³ø¥qaῇþ3ñîðúM>ðÙKáO |R·¾ð]þ•¨øˆYiž2ÔLÔ¼A¢éWÚ†‘dšÖ¿£þ­| ºøµ{ðOàõçÇÝ7Ãz7Çk¿…Ÿ®¾5hþ ¸k¿i_®<%¤KñMð­ÓOr×>±ñ‹ë6ºÃ\Ü4Ú\V²å,d`S¢Š(¢Š(¢Š(¢Š(¢Šùgö4ý§ô¯ÛàE¯Ç} Ã_ðŠhšŸÅŸÚOá¾§oÅâ_·é_i/‹_³þŸâÏí84½&ÿ„îÓá„>7þdžÞê/ÂCÿìz׈ÓK_j`SQEQEQEQEQEQEQEQEQE(ŸðTÿÛþ eû ÿÁR?à•ÿ ü)ûcxoIJïü+öÎð—ÃíSá ?³wÂ}'Ä~øy¡|xøáox_ˆúÅ—‹õïXx³ÁŸ­´˜üWcÿ¯‹4Û½3RÔ4ë­>ææÂk êîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( â¿þøýûwxö3‡áÆ—à…ÿbÏŠÿ|ð¯ÅߴωúÇŠ~5|\×ÃÞ%ø»á Üø¼áýᯀtýOá^§â¨¼gãsÄš–“á»(΋¢O¬ÙêßÒŸÂOŒ?ðR/üEðÆ‹ñ£öý›>|0¿»ºÅ¾?ð_íõâ‹^(ðÝœzuäö—ZGÃ»ïØ£á•¯‰æ¹Ôâ±Óå´›Ç^[k[¹õspÖkcuüÿÿÁêßò‹/€öÿ ?õjªþ¯~%üRð'Áÿi¾,ø‹®ÿÂ;áý_âÂ…º~¡ý™¬jÿhñßÇŠ~ ø)ð·Bû.…§êw±ÂQñ7â„|3ý§=´Z>‰ý¯ý³â-CHðý†§ªÙ~RÿÁZà¨ß?à—¿ |KñëNý2i_´Oƺw…¼MãO[ø7Ãz©à»ÿxÇâ šeÏŠ5O è×¾(Ó¼3cgsâM;˵»HîÍ¿Ý_í ñ/Ç?±¯Ã¯Úoà÷À+ŸŠ?>'|øCñ[Ã?³ý§Äï øBk©¾(i>×uŠ>4°Ñ¼7 ~ÑüG¨j3ë:Ž‘§¶¹,D:–¥g`?,ÿàèïùAGíÍÿvÍÿ­‡û>×êüïþL/ö#ÿ³Dý›?õMx.€?ÿbø8WUý±~.þÔÿ³dß°OÄ~Ô³ÇÄ ü#ÐgÍ'ã7ƒ~ xËÆ>1kÏ‹úOÆ=_ÇäžðW~|.ø®|+³Ñüwñ2ïÅ2ѯµ_x?ÃÚµïŒ|Kàß ø»ê/Ž_ðV?‰°×Å?ÙÛÂÿðQŸÙwÀ³÷Á¯Úoâ |ûK|ý§çøûðÃáïÄMFÑït_üu·ñÏÀÙ»_ø}m¨AóÏâÇÇ>Ò¬¬5}WPסÒ4mJþßòOþ ÌðÖƒuÿqÿƒ–üaq¥ÚMâ} öãÔ<5¤kN„ßiúŠÿiŸÛcTñ—o&p–šÆ¡àÏ ]Þ¡Rd›C°`WÊ!·?àõoùE—À?û?ÿ…ŸúοµU~ÃÝÁBjÿ‰8KûAx^ÃâþÑŸ³oÄÚ+^m"OŠÿ´®œ<'à˜¼ ûY~˲øCð4¾м=­XjqøÚÛ[?iúZxNOˆ??à ðLÏÛŸþ Gû+øÿöFøõûm~ÆúÃψ:‚µ{¿|4ÿ‚r|fÒ> x{Sð/Œô/iwÞÕ|[ÿ7ñ¾as{>†tZKï jf ëÕ•¯Ø¯. Ô->öøóûfXü5øõðÓöGøOðú÷ã‡íSñSÀ~$ø¹¦|9‡Ä¶^ð‡Ãÿ‚þ×4Ï kŸþ1üB¼ÒüEqàï·‹µ/ÁšøoÁÞ<ñ‡‰|U|šv‹á«;-_RÓ>qýµÿoÚÇö ý–þ/~Ôß¿aï|Pðǯ K¯Þh³—íSªøãU±¸Vv£SñÁø—û3ü¹ðïÛµ<Þ#ñƒ4߉Þ$Ð-"þÒ›áÝÎ¥©éŸŸŸ·GüëöªÖ¾.þÊÿ´üGöéðïø)_ìYûü4ýž~!øâoöhÑÿhÙ¸ê~)>Õüà¨àø‹sá 3ÇŸ|%ñAôøI|%â ø§Äv„Z<;â…qø‚Œþ-ÿÁN¿à³ÿ±çÃM@ÿ‚ÛÁ/~|hý„|q¦j? þ<ümý˜uû-N{o‡?mî|â-CÆÞÑ~%øïMû©m­*;}kEø+¦jÂþ×G±×,õ똤öÏþ 9ñ³þ ðKö6ý¢üiûø àíºxöwø£ñ7Ç~"|YÖ4ü)мáoø›Æ7 þéŸ5»OxòßÁÚ-Íï‚u}o↴m3Å72j:6¯mc$_”?ðn‡Åÿø(~‹ÿ†ý´_„?±ìûñcá ßü|m+⿎nü,ñι£ûV|l½ñUþ§ð²×ö<ø™i¥Ýè¾ »×t½>ñ7U>#³Òìµ¹îôIu‰4­/öÏþ CãÏ üSÿ‚:þÞ¿¼¬ÛxÀ¿ÿàš?µ'<â1*Úk¾ñì¹ãŸxsYµY’)–ÛTÑõ;رÇ(Šu"6T~wÿÁ¹_¼ ð;þ Ôý™>5üR×áøeðáÿí—ñKâ/‰¿³5oþß|?ý¨iOx»]þÆðøƒWþÈðþ‘¨jÙš•©ëÿgû.™§ÞÞË´ ³ÿ¶í‹ðöøâŸÚ3ö”ñ¢ø/áÇ…æÓôÄk[gÄž)ñ>µ3[x{Á~ ðÝ‚¾¥â_ë÷)$zv“cÉoÏa¢éš¦¥eòRþ׿ðQÍWáÅÇÆÏÁ/tUðÑ[Å:oŸ~Ùº/†¿lcÃm§>«k·Á-öñ§ÁKÝÙ5²¯uÏÚ·JÖ-µ)'ѯ¤µÕmÖÒç£þyñ?Äþ oÿ#ø!± øoᎹûHøSÄúv¥ãßêž/øYqñ'Qý ~ xFçXøƒàÍ#Å߯¼o øÃ÷mÆ­áÛx3T»ðç‹õý+Mñw…¦ñk0MŸð®à©¿ôy°þ+OöŠÿé±PÙÛþ !à_Ûoö/¼ý®bøƒã¶­Ú‡†Óà7‰ußüø‡¢|QÐ/ô«O|(øƒ©x¶æóÞño…muHõmBK«ÍOIÔt§Óõ/_ëv¹£ÞÞ~wÿÁñ…uïŒzO‹<¦ø†ßÄŸ<ñR_‹?t/†öþøi¤|6ñOtÍO‡Â³ü]ñ¯ÄÛßÜÝøÀú†‡àßëQÁ+?à—$ÿ‚oø“ö×ñ_ˆÿhOüj¼ý³¿h+ßÚPðׂ~_ü øð«ÄšåÿŠõ/h ðæ­ñ£ãv­qáû©|Iga¤®©â‡¿ÒôO éwšÍÈ›QoÇïø7þR›ÿ8ÙÿéßúÑ_·õ~È~Ô?ðS?ÿÁ?›Á>;ý¼¿fÍ;á×ìÅãOé>Ô¿i¿Ùëã»ûEøGà÷‰üA$ñøzo޾ ×~üø‰á?kR[Keiãxâ~Ÿo¬I§èºœ6ޱ¤C}ú­áÿh^,Ð4?x_XÓÓÄ]²Y…E˜Ý¬ÞkyÌW|-ÿ­üCøñþ»û9Éñ}Fú?ø¯ãÃÏjÚ›<“ê?|)ñZ¶ðô\HO§xjê}[ÁzZ†t²Ó¼3m¦FV;?¢Šüxÿ‚µÁO>3Á.¾êŸ¬?a~Ñÿ³Ç„´_Ïñâæ‡ñëá÷Ë_ø›ÆÞ4ºð6ƒáíKÁš¶‡âê6Rkw^ ¶¹ñ6“ ÝipÜøßKµU•ì5Vµý‡¯Àø:;þPQûsݳëaþÏ´ô¿ì÷ÿøÝûhü ø;ñö;ý“økAð§üþ ·¥øsK´Ñôû¯Øsö]ñ-Å¥’á›^ñŸÁŸxÃÅ:£©-›½sÄú_¾q-ö¡q (üýÿårOø+ý˜ÃýA¿àšt÷GíKÿ·øéû ~ܲìyñ§þ ÁâO x{öÖý¤ü)ð'à·Ç;¿Ú‡áÖ¥¡ëžÖ>,xᇈþ §ƒüàj–šŸ…bø‰á·ÃÿêÞ¼Ô´Ý{L³—Ä:Uãßgþ²þ×??hÿ‚±ñGìÙû kŸ¶/‰LÚœšçôŒß> jF•§X}²;Ë]Gâ'™oâ ýJQ%Ž¢é6òÝËtª%xRXÙ¿›/ø8ïþR›ÿÇÿÙÿê?úÑ_° _´ùÿbÿ‚¬XÿÁ_ÿf_‰´¦™ð:ïàŸàOÚÅ¿¬ü)}ñ‰WšÝ¿†>|+ñô^.¹Õmüàh4yµøš4©<9–±“h†õ|Az5²Øü1ã?ø8SÆ?à¡ ¿`¯Ûþ õã?Ù§Rø•ðÿÅÿ¬|th?üdÕµO iÞø›â‡v_~|*ð.¹ÿ +Æÿ>$|3¾ø%á?iþ3ÒÐ|WÿŠÿÁ%´¿évšÆŸkûxƒÄ¶ö—¨d†{ÁšWü[ÆÕA\]è~'дjÁ󈯴ûy`…Hì‡í%ÿ ý´ÿeÏ^5ý­¾#Á8´É?g‡Añ—t=ö»Ðu/Ú×Áß­¼‰µ¯kí¾KðVVðÖ,š§ˆt/~ÖZþ£aei{*…µ˜§AðÇþ ‡?í›sÿÎø'¥~Õ~·ð§‚|IãÿŒß>,j³oìûðïZñÿ„ôOh¿õéŸ ¾;øûÄÿô ëúf©ñÀž øE¯Ø|1¸Ôô} âŠ<;â-Hi6þÕÿbÿ”YÁK?ìÀ?lýg_ˆÕùÏÿ®øwDÑà†ß±î¥¥i¶Ö7þ/Ö¿i/x–êa.³­Û~Ô_<'¥xY˜5Ì^ð¿‡ô…d¿dÒ­T©ug`®ÿ`_ø*g‡¿l?Ž_´çìñ?àæµû3þÙ¿².«cÅß‚šŒ¬~&økRð®¬,?²~!|2ø§xÂ+ã^¶©£ÈÓj¾ð–­Ÿˆ|5zúSE¬b×ð§þ„øáÏ„ÿðPø77⟌SÂ? ?l¯|@ñLš&‹ªø“YOx7ãoìâ-môè6š†¹¯êk¦i·Ma¢èÖº®«t"±Ó­.o'†ícù\“þ ÅÿfðãÿPoø&ðqßü¥7þ ÿ³ÿÔõ¢¿`ýÍ×jø(„ÞŸâ‡Ãïø&¿†õ-£jö>!þÙZ'ßÚÇUÑ Ésl`øC¥üøƒðOLñ%Õ‡Ùçÿ„OÄŸµF‡©Y^K.‘©Ée©[=»z7ì ÿýÿà¢ÿ uÿˆ¿/ µøYñWàžŸã‹:5“Bú:k÷ÿÿg/Šsx¿P‚έ“S²ø©ã]sF¶¾•í»øçW²¹¸žïR¼’àúUý±à¢? dïüýŸ´¿xÏã÷ísûGÜê6ÿ¿f…M GãoYhé<šß|Yâ/jÚƒþü.ðä6·×~ ñçŒ5kkhì´rMMñ Þ‡ªY[|çûBÿÁIÿi¿ØsÀZÇÏÛ‹öðïƒfu¯é>+~Ëß´î§ûNø³à>ŸâVNñ_Åÿ…ž&ý›ÿg»ááK ZÿI±ñ§ð—Äß§Ó%½skeª"Y¶£üñþÏZ·í9ñ—þÙÿ‚ŒÅá/‰_~üPøgû7xƒÃ µÚà—þ>x[Iømáé¿f +HÑü à_~Ðß³N«¡ëÞ'ðLjïüoˆ¿á7Õ´±¥ë¾77Ô¯¼Qˆ4Oèïö™ýÿà¢?µìóñ³ögø¡ûe~Âñ|>øïðÃÆŸ üY{áßø&ÏÇ{_é:G4Ý}wÂ÷z×ü3^Ò,¼Q 5âk~¿Õ4=gO±×,4û»Í+P·†KI€=?öØý¹~*þÎÿ³Ž‰ûSþÌ_²•ïíËð¾x›ã‡ŒüIà/Ž¿ þÛøgá‰áMÆúWü?Œmµÿ‰6Þ&ð–¡«ø‹KÓ|ay¨>—áë7šž­ éšç?€ÿà¾>0øáûjÿ¶Çìíû j¿eø[ðw]ø½ûFø&ëã–£¡ø?á-ÍŽ§¬?‡þx{âFðÇ^&ø£ñ¿Ä^°Ñþ%_xcGø?¢xKÀ>ñw…µ_ˆž<ð½–¹¥^^ýeì—{û ÿÁþ-þȺ‡Å ŸŒóü ý„iŸGñ*ë£Áø–É~üMմ¾%ñ€Ðí´7S´Ðlìÿá%ÕÈ´Òà”Ý!Š?˜?àÕ/èÿ‚~Ê:Þd¶ºÄ_~ÑÞ2ñ\êK_±ý£þ)ü>¶½}ˆŒZ? xÃZp24¯²ÁqŽ8À?[ÿaÚßÃÿ·wìð;ö·ð·€¼oðÃCøÙáKŸÚxâ%‡Ø;ñÅ€Þ?ð?¼[û5øçÃÿ|áßÙÛOø=ñ3Ç8ÔtÏüsøð÷Äúž­ñkÂÿ[¾ °Õt¨t¿ê·Ú·ëÅüòÿÁÀ~ýº¿l_Ø¿ö€ý‚?eØ#â7ÆFøÁÁ[›OÚ¾;þÊ_þéIàŸ‹¾ø¹­Ø§†¾#üjð×ÄýCW·oCᓠǃ´Yu—Õ¬õÛÈ4ϲja~Æ_¿l…¿°ÃÿüKÿ‚w|fðßÇÙÇáÀ_„zwÀý?ã§ìƒâ-cãU߆<5áø«Äÿ¼wcñæ/†Ú.ƒáø­uÜÁñGÄþ×5 3NžÏDÒµM^{¿ÕŠ(øõÿ‚Eü ÿ‚¦þÃÿ·'üãçÆ/ø%—Å[¯‡ßðRÚWNøÍáéü#ûSþÃ:¾­ðwO?¾>øÍ¬k+ïZüI7}ƲŸÛIšÎkÁÿø6Óönÿ‚’ÿÁ2>x§öAý¨¿à´Mâí?®übo^ý¢ÿc¯x7ÀúŠþü0ð%ì^.ðv‰ñê÷â Âè·_ ᾎ_è^.¾Õ"ñ’4›¤4Ú‡õ³E=ß¿à™´7ì¥ÿ%ñ?ü+þ «cð÷ÆWßü??…?mÏØçâOŠçøy¥|b†âûHÔ[âOÁˆÙÞƒàïŠmªèú~¹{eã Oê:¢ø’íµûqã]fÈ}Ë≟·?í%á]CáOÿeˆß± ñž‘7‡øgàˆÚ5Ç…|{⿇Þýš~;~Ð>5ø£ã;/ jzàð‡âK„:[xôK[ñ“eo}±ôPÈÚ¯ìqðâïö Ô¿àŸzuö¯¦ü"ºý‘¯?c‹Mäû^¿§ü8›àÜŸíožT’ÏíZ½¯†.Eš×ϽŒ°’ Á—ð‡öýˆ?à¡_ÿà›3ÿ‚,|\ýŸtë¯jZƯƒzíµáŠ?î~ê?²—ÇÿøŸÄ¿õ9| 'Ž ý¤¬þ3]øâÄ] ÀÞ?Wà ¬j¾¹Ö¾&øjËI¹½ê^Šü ÿ‚½Á,<ÿQýt‡·~.»øOñÛáŠâìÓñ¿M·’êóá¿Ä‹8¢V©io-½Þ¡àï-¥…·ˆ¬¬®`¾µ»Ó´/iÍ6¥áË+[‰~ þÑÿðS_|?Ñ|ûLÁ;µÏŠ¿t-2×DÔ¾5þÍ?¿foÙŸâ6­e–²xÚú×ãÅ…>Zk¦u+ïiþ"¾‘-ä°éÏu IiêÕòÏìÕð¿â÷†n~'|Xý |M¥jŸ¾6kÚ&©ªx+ÁZε¬|*ø+à i-£øáûíoOЯüMŠ—zkñTðׇ5ˆ?ñw‰58´ xBÓÁ¾ ðÇñýÿPÖj¿ÿÁ[ÿàâ/ˆ?³Ï‚|)ñ§Á:í÷âãWÀkÿi~ø‡âý?Ä_´wí£?„ñÖ‡ã«ûÇø…ámcÂZ=¦¿ý°ü[ñ‡Œ|ðëÄþ/øðŸÅüa¢ZZÏ¡ü(ð_ˆ~øSÅ2žmFÎÎ{#ÄüYà_i³YÙÜ\ê²ËâOhÖ²ÚØOom<×óZZ\'ðH¿ŸðTߨöäÿ‚£ü|øÅÿ²ø«uðûþ AûJéß¼=?„jØgWÕ¾éçâ÷Çßµ‡Œ´ËŸÚ#NÛZhŸƒßê–çPKŸ Mo§xT:Ô `÷gü7àgüwþ çðúÓö4Ѿ jÿðNÙÇ Я¿iŸ‹¿~$|ø‡ûExÿÁ^¿ÒüAmðßá?ÂÿÙŸâ·Æoé6¿ˆl-ß_Ö¼iñ{O:¶›c ¤ÚT:aÕt~ÖþÍ?³¯Â¯Ù'à'ÂŸÙ³àŽ‚ÞøWðoÁÚg‚¼¥Ípo/†ž¯%Ö©¬_˜âmOÄþ§=ö½â-UâŠMW]Ôµ FHÑîYG¸Ñ@?ÿðpÃÛ[öºýˆ¾4~²OìMãïŽ÷¿ü?ðgYoöfO†ÿ¼¨øã÷…þ$k>Õt/‹¼ñWñÑþiíΑá)|+$>5Ó^M¨húÖ“oýQ@Ž_ðMþÚ?aO„þ8ÿÁ9>2|7øû$~È_¾èÖü|ýŽüi¥þÐ>2ø?à- áì~øu«ø_ãÝÝ¿…µ?Ûøv z+ŸŠ©à hí¨¾•qâ›Æ²÷ÿ> ÿÁV¾Áw?loø*Æ»ÿšøÁ}ðö›ýŸtš'Ã#ö±ý‚%ø•áwðç‡f-ÃÄú¨¼ý¥,¼/zº¤ÿ³ÍÌ·z5¦¼‡J‹Åpy:¦¬ú<‹©c´Páü¿þ ·ñ¿öÍ׿`oÚö^k´Wü“ö—Ñh|.ø‡®Oá/ ü^ðü^-øeãOø?Çi¨ZøkÄÚÏÂdÞjöi¢ËlÚ¬7Úž˜æÞvú“Ç¿nÚ;áOŒ¾ø3ö1ø«û"ø§Æ~ ñ†¼Eñ{ãwÅßÙcÄ6~ ·Ö4+Ë+ÝCà–ðã_Ç-WÇž~Ì¿³î­ð3Ä õ¿ÚÇöµø‘âWñ&‡ûN躗‰ôv°ý¥5? [.“ÿ ksc£^ëjuøEn ŸTÑ¿µã›NþÇh ÇOø(çm_°ů‚Ÿ?àœß¼uñOöºý•~=ü#×<1sñçö:ð”³Ç‰¾&xXøq¦Áñ'_ñÇÛmÅrGkâkŸ[·ÂKÏéwèï¥jÆ‹w}ÑüÙÿð'í×ûÿÁ>þ~Å´Ïìñ?áçŠg_ü}ñn‹ãë?Žÿ²G ø¡ðÏâÕæ¯£ü!ýª~K£_xz÷Â%ñ¦k:ƒ¼}má›ûÞ-“FÕtæû7„§ÔF™'‚ô»×û*Ú?ö÷ñþ‡…|%ÿîñ_Àωº…´¶¿ÿho_³_ˆÿg¯Þ̲Áÿ .Œ¿~0|IøáñVËH`º•—„õ_…_î|W¶ ûÅ~—:æ“ú;E~CþØž ý¦~ ~Àº×ì“û5~Í¿?ooüVýž~;ü+ñ'Å ŸŒŸ³ÇÃ7â¼+s§Þ|Fø©}ñ«âwÃù$_ˆÞ/ñ÷мWð¯Ãþ%Ò¼-‡¨x~'Ã:;xRÖãäø Wƒo¿ØÇö<ý™¿`Ú—þ Ýñ?ám·Ã ¿©®~ÑöŸ´ì…ãï†V–>3ø‹ñ[ãn‡q©øKÀßõ¿ŠðÝÞê~-±øw —‡üâ¨bÕ%³ñ¥¦è2jrèßÑ}QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEÿÙ./Doc/Tutorial/bingle_output.jpg0000664000175000017500000027564612176660653016555 0ustar vborosvborosÿØÿàJFIFHHÿþ6 Image generated by ESP Ghostscript (device=pnmraw) ÿÛCÿÛCÿÀøÐÿÄ  ÿÄB i˜ç $89x‡¸¹#%"&X!1•—Ö×'45BCÿÄÿÄ@ !"1#2$A3WaÕQTV“”•–Ò×%&5BRrƒ‘ÁÿÚ ?÷ñ€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` ¨ûûÝŽótð5ÑkÖ>ë¾Âu²Œ¦d÷D¾Ø/Ý¡4ij`q‰­€Á•Pã¯6+åÜ‚æ£FR¶ÒyOT[2ßo‡€lÎvkº½EŒ«°ý¯úÅTÊ«  w8ŠöügaKJ]Iµ D@P¶´]Tî0šÑÂŽ ª]ÉR å–¢”®¸r€!€j«ÂUiÂ*y̲‘©™^–¸0»=ƒÔdlAU3)Ùž·KP®lca¤"¢IìÙG¹(ø!uå·z~w[]µjà 6vg´•ÿUCÓÆì ó-.ÎÉÑ[Ч ‹öa'L+èY‰‡$1ÔÚC†"ƒ©Aª–6ÈfЬ*J÷¿™¾Oú·]G'ÿ+|Çíÿ˜>_ùƒÚ}ïØB{¯¤õþÐ7Ôz4@ßø` €0ÀsôÇ»vŸr«ž¿\‘ž´2ŒÕ”‹¸±[NTµÚ(«Ú`ÏZï™E[·eu³S¼ÜÂ¥2nkF«àr‰o,ЃR»c–Ïi+únöê—^äáæ/æÁ–ÚÐÚИáEÁ“§ééUÛ&^tô„„YQŒEb‡‚TY3‡2Ø´ Ô`Õ\l“À‚1þãJç]ü³z__Ò­ŒCúûUUV'aoI˜Þ6â"b÷ee=¨bõZÞ}å“ï(ÖE÷•Ÿ4µ‰háNÊD· ¸»` 6w´•ÿJ:ÍqvªÔ1?^Ò1%&R°Õøð…fd$ýˆí‘Èb€Ý¿åwèíªD¤B[ò–ªíË®7×M7>BUi©w”„/S2B’kU• ½8±,D­¦þ]#z¦Þ§Ô6¦Ç²˜%b+!XQ…ä«F ÕØ7µpyãû¶?Žžšuó· ý-úïFmôûæ¯þUø¥ öÏšþ\ˆûçÝöïë~Zöüo‡é8øp&À`\OsŠDtj¦ì­$¦{ÝÒv¤hemšD.(UQ-¨*y•Ñ(1´Ú/ ÷±!ÇH3…ÙÜ…û!¤‹a«£$êyU§,c9^ש™ToÚ¶,VÅ•ˆ*ÆÖwVGd.GזˇbCÒ$öÇ&ÚFî»|™°…œì’®ÙÞàm\€0À;I_±îs¥*‡˜íiÉúÙ5í#é Í~³à51pï í!ÒFœÅÌŽÅôhôbŽ,©W.¤,ß Ðkà3ê>UiÍêx4²î©™Qv¹Àº½œTc¬AVË(!ž\¸K`­¬`£Â¥©êÙ6î¸(Ä ävåÏ(z~7Gm¶jà €FÎàö’¿éGY®.ÕZæ'ëÚF$¤ÊV¿¬Ì€ÄŸ±²áÒ9 P·ü®ýµH”ˆK~RÕ]¹uÆúé¦àI<€0Àб½? ýXì·eþVùãðï×û’ôù+ÞþYùÃé%u#Ÿü­ó´H>_ùƒåÿi÷¿a7í^¯×ûA/OèÖ;¨gßUªj¾ÑöŸaú“]§ÞÇëýÓÙ~p ûO¹ú1ÞãíÞãèý·±õÔz6¿àhÄÀ` €0À` €0À`ËøYy,ÿ Èÿn¶6]>M½ÓopÖÁdR‰"1¢Éb¯ø# ©®ÓõK‡áŸîƒ¤›¿I«Å¾Î»i¾Üü7m6ÝVêòíÿPú1WéwßSV»ÈöBÂì…½«ìþÒ[µ}:šÖµŒEkjÐíù/ªs;nr@i¨¶ñAE 6Yb×=-Mˆ´Â–- Õ7ªokÚƒ:ñÚnÅVW`Ÿ]b6­¥fÆèÉ}œîÕWEOÆ_O#a¶Õˆ&G.Òf5ÈÇ‹÷î +âÞaHÓŸ^ž²½( CÍ×Eé黚ö—_©7=‰S¹ì#×Û^ÍóêIqÚP 3y,J0T`šê“•Ä`‘½ãg°=¼ò`'Êaúä,¿¬–ÕªêÒ¹‰Tñ:£zç\ÈjÛC®B[Í##Å»‘JÈY'$ÓÈ¢oÌ€–dËW€Ü ÝÀÑÔlÏywþžªï¶»zq°ú÷å©i;b³iŒDÿ`©JêAë³»€¨×AåraSêxuq/•$³áŽ&É“tÔþî£Ò)B l“›õ¦!ýJIõu›˜Zõ|¯Æ41ròÒÐ1¿Oú‘´Ÿ…”GFHåpôà´™±6³ " È¡èâJ)‰bEP> ­bý~òÕy "ñŸDA,šÃ°/—¤]íír¤ «ÆÕN%ñ‹&G”uÌTA´¶b3†ev̧!$rÀ¦$¦²#‚Bl­ê o¢x²úGr9Bwнû]…×>BúóÜ›a‡wíÙí¹/–û³}Tš`AÍwÂJGnÐBìù0à4œ.J©‚‹ñ¯ ^oœY„ªвk1—KkŠ¢O~õ‚ÚÛ>Dˆi•oÔ9Ýë‹öX Èu4*Tàdžˆ<]†Š..,\ëí¹jŠ fvÂh¯ô‡’ΕÑ6–­ÉV=Ÿ¦{h¾´e?i’·)É—]SÎÕ®íK^9IJco&#p-®ÁÎ ¸@ôIJJw¡¶ì@–Ó¯ESUOŽ 3:Ö±…Aev}ãÛ¶Öø´|xbSõu»1®›ŸpÉv Œ*Á”Z4’ßjbAµ@sMSl–špUO¯ýqŽù-óù8VÖ­`ýëüÆ!"l+9“R×=7Û÷WÄ3SОîçÏ…C·° ·ûû’U˜Ê-Ï1Ó‰ŸFúÙÖ/¾»kNAVŠvŽËìw‡æÓ»ùœ–P•›+‡öpõ[õR±HÊ|™«ÇO+ ^’AÌT$Q“öÝ5\*ì\OnÄÛÞP¬Ç~_‘«º‡ìÏ`a0 ô¾G;AÖžÐuR‰!¦ýe›Ð5uAØøTeår„bÆ‹‚(âëš½“ë%@Óå±ÙOUÞÍ%]Pë‰ ~G±¬I'^j¶Œº>,û„îhb·/6‘„ 5ŽÅ%,ãrƒŽ “.[Ÿn-ò-GC‘ÑØÆÀyqêp ë"•~u5/áòØë̇‹¦ “£¥}ã®QŠ•™Ô᥺rViTPR§wSŽ– ’ !6X!âOe/jˆ3çÀ[{í?+^ y —ÇêþµDô…uªð;×I¯_îë†Ëì2‹6Öu½ÿUlo— ÅûwD¦,©i«¦MiÍ»‡%Z“ÌßíÜxŸ&æÉš‡rô 2É„¦zÆ$µq:M’cd±'[,Ãp+H¯Dc^()~úÓ7¦ü×H¶¤d-ì¿­ò—½»±»é,±£¨ÚxW¼JÔ©JYѳ%wŠØmƒŒ ,ÒEaÎÓyH&bSËæfnËÆ^`tõ¦¼¤»/þ•k²ÑÈÏ*“ŽìUu3›Úú –›6>«êýí.©aò GO|¡d0Љ|ïuÛËtÝ-ÉhÓœ]ö.'·bmï(Vc¿/ÈÕÝCög°0˜áÚ_# ëOh:©NÄÓ~²Í肺 ìü*2ò¹B1cEÁ”quÍ^Éõ’ iò‹ÆØë⛑Ýκ!UKŸ™ŒÚsÔˆ4ì„ ¸mw-N &àÈas0°™XèÌÂy¶ï‡0–Gb2‚ˆ¢ÜèP“tÅ @ŠôF5â‚—ï­3pjoÍt‹jFBÞËúß){Û»¾’Ë:¡×‰Õ{Ä­CÄ¢Dfnæ•üЦ%gB½™…G5IŠ8îºÖ.¼ ó«årÓK×,lˆEYЩŒFnÖ,- 4zU~EûaÅÓ!Y45vؽŸ¨q:Mꧨ:˜Ö)½ÝDÚ£®€k2#zß-òOá¶²í厴®ö”Ìû‰FÎ;m-YJDrKv gûr J›‘5hˆç¨ë›SÿJ˦­¬%ûÈFv^h´ðWÜ” ë—a,ŠÆ6ññTÿë4nð*Y²¿sI¯ž³Gr\6ç€3’/ã$¡ˆÔýƒ˜¯ºuR_“ØOräí¥Å ‰g6½dÔ]_fLÄ æ=SY·xX˜y£·$… ]Fa˜¿4?GZ&ð I\ƺÝ×¾Ûwû¯^8¤‚ê2>%,»Vñ®*‹ ¬ú”§»Mó  Õ3¸žúGà›:¤w?;.ƒeÎ6‰Ç¥‡¢í]^¾JÅú§MR}ðMÞhHRéw2ðì߉ÏgIJånôw¶gk®.ZêQ)r_uŒÖcÒ×ðÑuëä–ŠŒµÐ0¦NY¦ï×· ¾…VvWm;½sŸ¢;­¸nèKLmuÅ»ƒpОLº¼`M³3®Tõ “ sj-úMcPÀ»©{/‡Ó†1)s™C—Jë#·ýmˆw «—çW§u8ÍçVKë·oùOuTüð—“µI5QÙGñCü ’Ó•8Ogâ›ð®»¥Îúlž~ˆß&7ßHÔº~Ÿ>!h)¼×¹â^Ž0ÿ•|’û͉԰ U.U{ ‚CjkÚî¸ÖÅŸ ^΃꞊$–Ì‹AôS¯_HîBç(NàZ¿k¢pºçÈ_^{“l0îý»=·%òÀâŸvoª“Q¬9®øpIHíÚ]Ÿ&“…ÉU1ðQ~5äd"'©Ž]0‹›—Wëm<‹ %#„¸’ŠLôq¼¸#'k¬|© ‘–¬”*)TȱÕv{ê· Q=‘×þ¸—þ£J.w/«k“÷ž3íëHœØ ¼ÉܰÉuâ ˜ é=^¼šÅ+7rhð÷T€¸ºæiÂLö{¶U½P«b7çP¥»¯ör%MÓÖÚ}¦cj@š0‘õ²â¶ÃæíD¼g¬’öe¹EÉòàAö VM²ì®–àtl|ltµ¯M?¨žÏoJŒF]ÓËǽ!zŽïCò¿KÕæ”ÇQ«NÃÁ Xòs–õ[¶VÌàÔŒƒˆ†ƒ6*‚bÁ¾áPBÚÐ ÓÝÇòîÅöC¢§`ãÝQ¸)OŒ Úë„CûõÛK—¬•ŸÙ7ò^ZÝR]ZÖVPÛ¶Þ‡@ÛÖfƒÆgH#Ä8¶a4ÑÙO†ŒÂãS1¾ºÜ½Þê«*¥?+²• aØ>ÓÙ]Iµ*ØœMI/>;ì®ßI«Z–p~.À+9#– Ú[ Pt½®Q1;t@¨—³‘n–ñ;梂¨zéWWº¹£-cðÚo±„ûuÔ(­™3 Ÿõ¾i Âô‡XˆÇ‡IÆÚÓ¬ké3KFÌ–bëß=ä Iäb±¯_w_¬=-RtL§E#ýs`õ²‘í?h­¤u6GlésIYYËæk&-pO •ʉ˜¼JRÝpØäº_5µxùÛÂAÀ‡6CˆÜg 2€öµÕÞ½T ýAlj†“ޱv^ý° ”ßXIõÖöREAþ+lºòžËay¹yäQ[¥£q*ÉÈAcìu Bɼ­õnÔî¶yz­éχ¢ÿEl¾£^žöT5’îÅ¥`2H¤Ö®oÖKIÓ~$Ò`°›‚nFKgFÉóòXkEκ¯Æ«ä ÷å^²|÷KÃß^çDå Ô×%ãÚÁ6ÌZ5'9FÈÁ:6·Á%À>ýô:C$¯2•áÒHœ¨H+¾vdEÒJNЫë>¬ÅüåõÞ”Œ¨ºÍVI< Ý j /ªë#Sîãhbìœñâ à£ ­€›*/A1ôEù6õßó½À·á_ÔÌÿËŸƒJòe§²¤,.ïØd˜Be¥\ˆ’èeÊ2ö–’ç+?æ³ÝRFJ„~J°•\è ÿ)DÍzI×›kÇGC»ßž6Ýìsi¼|æÁﶺ󳜵[nxãžwçž8À;Ë"ƒ¢®JýµMoÒÕ5«U³öÏIZYÌ>s_µöVª1顲pÅ#ˆ{K%Uf3á ×Ð5QFí~;í§ c®z©Õç´º]oyÖêß]ÐMº(Юiêñz]YгD’«UŽïM6¥Г}4ƨÓG‰q«xS€:{¦?¸ÜAÞ[½Sëe¨î±,%jêÇ£+ Êô0E8T(ˆ:òx±Ebc+®ª `aíX)Ç´I-¸ãœn=¬«rr¸<ì}!8¬EI@ÖÓ'±@.åuè9£p¬æ! òØ(^&*XÒ7k%àög[€ D]$-ލYVàØ2°•ô 4¦Úrå«%<ýšî=g êÁ2Ñ‚$fnAÄЇ^Fä’£#lYƒe² ×@5Ý?ÕN¯uè´˜ýÖê;5QE¦F©úz¼­ KVUÏUVLJ ðòŠ<ã‡jnUg{nçŽÛžUãïàd7§=E®¬ò—u}ÕŽ¸Ánƒ‹>rj݆Ñõ”bÏ.àž›¦IÁIðHÃYˆ&¢‰¾UÙe”w¦ûê¾Êk¶Ürý0L„I@ÅŽ8àç¡Í0ɱ1&“l«""Ê z’ìÈ Íuš=dí›;l²¨.’‰)¾œ¦in­u­¿0~ºçDPŸ6¹Mä«èµC_ÕŸ3;KíøN¤#G{Ë”¾Þ~ä}Jº}¼ýݸûp ®ëúª.ÒWÁaÕ¼,{óåXD`Qø»"r¹ Il “@æ#…6$•7&>ñš81!0PÑ’ íÊÀa’ºuò]bmoÊèšnOlï +ZïhHkI«jèówm@6›æK´(ËRÛŠòOD[½v‹Æ &åmw³^¥\ÃkšéÍAW8¯©â5ñŠ’ ½VV–©vc½VR¹Œ('`‚5žãï_=Œ±æ°ö;GËFü¦cõ/ª×ò7iÛgëí§gCuGH…cÓ5ÌâyѺ¼.ßHܾM) ª ëªÈê0‹^W^ÓwãŽp îýƒ¬^Œ&É¡¤Z8`@{öè¼bý‹Äwní“ÖŽ4Q»¦Ž›¨¢®šˆ®Š›¤®›i¶Úò¨ß®ýR¿‚TÊQ”ê•eXV$z±­7¬¡[WõÉÈ ÔÉA Á!»æ9+ "’OâDcãG¼Ž=M7AÖf¾š©À‹5wQz¡GÍ$VE-Ö.¼Ô$Á[Kgµu-[@&’†ë¹áâÍäR˜œhIÃh¬ïŽ*‘7ΓQÏ/¾¼«ÇÞÀ?#z…ÔÐ÷ ÎÈêÿ]Å_ä½xþòJV¬nÎÉsÎÄ]<³ÆRš¹rÿnyåêëÝW\óÏ+ì§<ó€}­þ¥õ[°‡ãr«ó¬ý}¼%ÝQÒ$·éšæË?Ñ³Õ 7Ò6bg4D¨UWèê-Ã^z¢Ž´ãU÷ÙN@Ùok*Üœ®;#_BN+RP5´ÉìP ¹]zhÜ+9ˆh<…v ‰Š–4ÇZÉGx=™Öà QI cªk»_ª^¾$±i¥ãÖêæ˜Á¾ÉRË^ž¯,I,?ÓÒ¿•§Œé$‚ék¿fVÒÒsQœŒkd”<”ûPŽ˜ñ1~Å›É\5AMè÷ë¿_Ô©KPJQ”ê”Iï˜=ò•Þ²…oR™ù¶JBi*÷jã`œÃˆüÍ1,VY õ–÷™)2Iz’ºP ~Çê_U®)änÓ·:Ï×ÛNΆꎑ Ǧk™Äò+£ux]¾‘¹|š6R@T×U‘Ôa¼$®¼)§ïÇà2½(é¢ñF5ú“ÖE ì,§7;b´-V¤Q•Âódöwl4ŽïäCk)ÖÉ%³™Ú,ô”/²Iò©]¹Ó^x¹±ú—ÕkŠy´íγõöÓ³¡º£¤BÆ±éšæq<ŠèÝ^o¤n_&”ÕõÕduE¯ +¯ iÆ»ñÇ8‚À#¸Þ¡u4=Âó°â:¿×qWù/^?¼†Ò•«…ó²\ó±O,Ʊ”¦®\¿ÛžyzºÆ÷U×<óÊû)Ï<à\Mw_€™ÌlpPXp[ Äa`OÆB™ÎFA0„ lÆPÍŠ'$Ì!¨H¤ÅYš|õ¼y#¦›= ½áp iú@ã³ÒéEÛ, RMè:¨î¥wrÖVpÕ$«Îwìxº ¬%¸¸a(™èd˜Ç•A§´¥EƒrË…Áª%‘ÅUw¨à%¼+­ýw­k4•uBRð`Ƥt-QªØÕì?E>œÃþ’{¯÷Ofúqìß'{W¹ÿÜ}»Ù½¯þ×ð}GýL‰SõÓ¯”$4…sEÑ4Ý/^–Yë’°Jž°„×0Òn¥º$ŒCÁ‡ñgèïºOUrÅE%¾é¯²šíÏŽÓýEê‡^NŸ”P=bëÍ&•ê®’‰?KVÕ™Ù&‹¹Õâú/  cUë«¥u"áÏ 9×U÷ã•xãnýêGTÎW•õDo¬{1SÔ¥Gª«”½pB¼¬ÎUÂâ ×Чqµ£p¢ÖvéaÄcƒ¼b«— 6Y-ÖS€ÉÜuö…u žV®©…ÍsjI¤Ó[>ⵆ- ±æSC|If2ÙäU@»—É¥’>8?&=!`D©ã|pT£·Oøøø²ëO\iXªª›ëý'RÕòMIé"­ë*ª ÐÛeYÐÔ>,Tx¦¥Ù®³Bz¾¿Û,ª¸U%7Ó;µèúUÌ6¹®œÔsŠúž#_© «×ñ5aµij—f;Õe+˜Â‚v #Yî0nõóØËŽa›c´qQ¼´oÊ``D:sÔRöò=ƒ+ÕŽ¸“¾Û»lý½ÞB¬žÛÈ>göz7¨ÙNc ÌÒvÓîñéœhkUû8ø[éöq€Hì^ÂjJ¦µ-’¶ª5Ç̳F#æþNÐ7»,LKÿPÁû¦êØñGÒ¼Gmh‡]ÄNø#(1xÅø¯â|GnbÓxÓdÐ¥¬>Ûb—ÃÅ ŠJËÛr~45€"ʻͻTÀé,Þ´õÆêª®N¿ÒvÕ_Ôf‘ÚÞͪ “È6ImÃå JÇ…ê!š´«ÈpÁ²) ׄ’OM8ìs®=z“Ô¨PRZ™Ñ-Y 5µ*r¯„©[j®ëµ`…püˆr,›.ª« Õ0Ú Šªn¢ië¾ûsÈH—XúÙªÍQPN½ÑЪFHЛ 9© QʬûMµfe‘ªô8q­ 3×V¤Û¾º/Ûkª´U.8Óé$<êDÊ¥ŒPRþ­uÎUDÂ~É´¬’‘¬ÎT±/Jª«µùb¸)ué—Yeö Í> ªª¢wu6ç#q:$Ü3 0zv1LÁªn§÷f¾¿f•«ðºÆaoi¸Õ3Ø ÞA‚ÃbÑѧ%I¶Äî”d³HäYàmìôÊ5lÄ™ë]úâ<àŽ¼Ð”½*Ný"²Q”Í[«ÇÈI¡ê~#Œ¡¶,ýXïá<~“‡ ú§?qN>:¿x Üõw_ÊeY¼ž ‘Í*÷çJÖ’ãÑ…åÙ9D}ôJLJ |ƒbOäQRd£'^v=ÁxùÁH(àk· ”¦yLSÄJÙ'HTõ«ów,|Nß0ò tVÕŠÄÚaŒÙ$»¹Ì~4ÆK#d4bƒƒ4l9³dJ¿Ñp0z‡©}Vëê µ¡zÏ×ÚE²%ù$Þ¡¦kšÕì$° Ž&Œ26= ìñÀ¼’×^ò$Éa¼¯èȼE`2½wëû|N½eFS¬à0;µ±ƒµ¬¡MáðËMœÑýÒˉƑ  Xí€ÖÄ*RzÚd“9BOå)ÔãÇ” )RU&åR њƽ/6–W©Ô’™‰H\müªKT¢DÉ„«…ØÕK™¯R/#”NEã˜Þ„O}¨Þ”|ªà`Q®§ubl¾áýiëüNó;ë=îèSuÐ+`Ǹ6Ý“ÿu±EÇÌzæj(Ñç«0·©l¦è-÷ÒÛm9ñcõ/ª×ò7iÛgëí§gCuGH…cÓ5ÌâyѺ¼.ßHܾM) ª ëªÈê0‹^W^ÓwãŽp ¢w_£`<¶R‚Ã’´ÈC†×oì´ã!4°WáÍ•’ˆ‚¼™jlj˜p©ÓgÆÆV%¸F&Ì*ÕŠOˆ;]`3€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À¤¿;6‡ëw[ê:ð§+W·ã¢úÁ1…Ò’¦p 6À¯ä1Û6ϔ֑ÛÙ˜ïÓf–kjöY` xJÑTšFow\µhå€Þ*kúã®=èºhEzubxâ·å½b l£Öh?fÂö_§mx ÓÒ0C±s ÂãÒ˜×`!rY(Êêx;—F¾Jƒ‘xNív„@ôk€P}}ý@5]Ä „Ú“ñ½åþé«Î8.+nÕÝ*m+¬æǤ„âdÌÆäÍmTôz%¹°ä™¯ºÍš¾dᛦd˜1"ÕÓ$@Ü_œ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“° bGæî%ue(ñ±åÖ>òs'F l[¦-Ø­'–¹j@Þ65í6"e`qÓœۅnÀA:éÊMUÛP2Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“° `7›¸”ˆìÂ0ÆÇ—Rò*ü°Ó€ƒúbÝÑ8™Sqñ’±³JÑÙa F:ÉZ&£d™¼O]]=ö'üá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€co7q*Ú.±gþ6<ºÃ Áù¬Ö_#é‹qQè¬J,)ÙÉ$éGvŠM†ƒÒeºQ6ìØµ]ÂÛèš{mÀ?ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØ0ïÍÜI„Ìt÷ÆÇ—V³¹Lb]5Äé‹tä'"P°sY ±{Z<;x*fÉ€ :ý÷n5ôÆ8ÝÖé¨U¦ª“þpߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€cÿ7q+rx?.²ÈêĤ’6¦-ÉŒP¬R@R)%£Æ¶Šˆìð”)pEã~TfPkÖkë¢íÔÓP2Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØ-)ó}„|»ó¯.q¯›¥" ñzé›aÿ0LúdŒ‰õ6Š~¸Ù_HçÐCï¹sðøIí÷6ûÊ8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀ1a>o¡ç¤ÒØ`_^\ÊK`^Ãó¬qLÛ93ù z…cžúÁ+Gg}ðb*¿ê´OÖ5OuûúkÏ8SùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;èåkcШԊe.ñåò7‰-'“ÈŒôµáÀG€°pTÑ¢ÏÜZ7d4PÖŽ_>v¾ú"Ùª ¬®Úé¦ÜðdÇÌ£2l™’âûÌ;Ñä·|Åãn“j³glÝ££†®›­¥ŸÎŠ á4U%4çwO}vמxçŽpWç úZyŽý‘'`Îô´óû"þNÀœ7éiæ;öEü€?8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìwæî$Âfº{ãcË«Yܦ1.šÆâ ôźr‘( XH9¬X½­¼ 3dÀ~Š{·úcnëtÔ*ÓU@Éÿ8oÒÓÌwì‹ù;~pߥ§˜ïÙòvüá¿KO1ß²/äìùÃ~–žc¿d_ÉØó†ý-<Ç~È¿“°ç úZyŽý‘'`Ù5^Îé6ß”·›"Ÿ} Wõúëšé÷”U?‚¢¿URû«ëð¾þÉýÞ~ÄÔKo·Ÿ¿öpõ³ñ.ãP‘^ÀÂàö¥hM!´b+Ûº&Ö lÂ¥´í¯7¥çщä=™© 1ÓÁgUôƒ{—ré²h%«äÙ¾åÃÀI<€0À` €D®çuI—nêQ0v¶<¢—±ëë*vÒ\-€c2Z–â­ ìJ-.i’·w•ŒpÉѨ¤²%#hà4¢%ƒuéö|›ÖÀhþ¨ôVѪïÙ‡mû]Ú‡½ºìÔ‚¦e@Åec)¸Ï_«J¶•BZ”ô¼BWGdÓ—)•›LÙÎå²IÄ„©ÇÈÛZ €´@²\”¿§h.Ñï}>»]lÏñö¯ª|¥ªž£´—k®>ÄùÝNuû¼/Æœÿççíç^vÿáöýœu¸` €0ï|ÑÎîYZε‘6¥ Ø‹ÆÎ*ÿi+A•e³]ml¢nÚð1ÊËÙMÊpE]%¢"VkËM·w¢È"0À` ;ÔÔsºÖåí=¨¼‰±fý‹°+™«ÈŽU¢ÑT`´…yQ¬=ÛÝݯ¡U 9ƒ¬m7¶c«d$Çd–Q¾îUD` €0À#¿ohç}êoh:ÖÂDÚ ÿ°½wºèæRǃ•0Ò.îÙ­dÐ&Ò'BQv=b‚,BKŽIû%^¤ÛfÉ»mº¼- #` €0À#¼šŽv¶T§e4‘6l¦ë¿h(ç1=‡*«³nû eu zÊDnè‹&ÑtzÄük¡Ê0r©Eeìܤí–ÖD€#` €0À#¿Uèç}s¦˜Uo¤M¥NXtד-G*)¶îûÜl?†K;}¾ªm9D"î=NÚ¾\r¯“I²n5l#` €0ûC;½þƒúI+hßÑ®ÈÕ÷ËŸP1R~þÒ¼÷ÏCá=eíîJ{Æ¿šž­&Ÿo¾É‰ÇÜH` €0Ào¬¨guÿa»;x-%lQ¯`þ‹z8êCjâ/ôžþ"ãÔ’Ùêé•÷µðù„Í¡Ñ>PßÔí· ðÀlíWnºûÒŠ½ “²³wð*õÜÆ-_²,*cY%Læ¯w ‰Uq)´Ä‹óoÓÙ›=Yp—.6M%UOu’ãp#æÇgcmȵYßE[Ûs´Éo…Ú”gbhÓ•ƒ´Ýù1Ч—ÕMZ‰–šdÅ5, <@‘Z§»ŽrŽ»oÀe€0+Þ;s¯Êô϶ 'W|R'9ÕIÔô3"¶†•u§ØRPàÈrÙ2’—\pHG×hÅàÑÒæ ¬ª™nƆÞ+ŠEÔs«Õ#q°`wy¢\¡£½Ã‹j?g:#¶êlŽ«ìß•uK•å>7ãNwßž>÷ `-ïÚ•ß` õm¼³â^ÀiØåúZ ìR]=%K-šÊk¸ü³æmÃk_Ü&0©0bm!ZJÓÛ=ÁèfÂÞ|ì Å€0 l Ê!*-•Æäe M!³± N 0þ/R7™'–³éÈܓx„¾%+ДÙÚ7(ŽœÕ¯"ÍŒtä “`ÞMG;?Û*S²šH›6aSuß´s˜žÃ•UÙ·}…²º…=e"@·ôE“hº=b~5Ðå9T¢²önRvË@ë"@ €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0À§?áÔÏõãýÌ\ØÇ` €0À` €0À` €0À` €0À` €0À` €0À` €0À#ùÛ-3×þš®!Ì,;/•o% uùYRPA“™˜îÀ„y‡›®D„5„˜â,B¼•-:”y»Õ ¨žŒùd¸ÆÑ¥<—ù»úTdú¡×¾’QÝFí]܃³8ÿi8ìýÃ=”S>òæ)XÀ¤ë0°3ud.ïeÝĽSqŽT_ïˆ&UòÝ®ÚÖä{ágQ~Mpsªí¬³Ðî©õ‹Æ™®ÎÒ±V5”±ì·]§{TÍUÓr¼7"¥’ýÍÁY‰­Ú9QÛ!ÏÝ V?€K'„ï¿i{ßXuÖ•ì\3«õ4ÅçVû¯b—MD-IË)õ™qÜ1ƒñÚÝ+³àÌGIGF£‚‰˜«'B8 ­cñ¥¤Òu%Qà+’3í/Mzçæîû¯;ma™F<ËTÕ;T¥U\×äÕƒgøä„Yvƒ†ã©Öq(›Õ6Q ½ÀD¾ä$A"ä‘xØ{gò÷€YúO Ýòìowu›¹€úYPt¶ìÓ«°¨s^½U—T‚ê·#õ< КN."–kb…#U®Å,Àh°JÃxÑÒà„.´‘‘}“I 4©«¶Öë‘>Ñö7±Ñ¨ ›ŠþšÎç·â´©‰!*èü¾§ìOp&ÒUÁi 2ž#çÝÇÜ$‰TJEê-^rùVÛ¶º}¥Ìÿö÷oÿõªÿÞG÷+¿û?¯ÿ¾ÁÿÎÌŸôW5ÿ{Þ;ÿåžYÿñyüÚÌšk®Üñ×›ƒ~xãžxÓStmÏ}¼k¯;Þ:ëÇ;òãïm®¿o?üvã·ž¹]ÿÙýuÿüØ?ÿݳêq<Òª"ùƒÇMETEræykÒ"¯ù_‹•Þ“ü¯¤UõþWø4üFýµËXsðD:Ç|$(W1>¶pk«:ñà€WÞlAv‡YËÎ ¸OE›úELìß³E5c¯;'˜Š›Ú²è^‚Ngu±Eø¿[]7/ÿ/öBç¿ìXú9ÿk‘¿›ãþëOhl>ƒÄÜÉêÔóŠŸ~úo­¹¢Ìó²®ÂÔÓ†½t©¯Çe£ Ýß|y©*ûsÓ½<Ü?Ræû{·ÿúÕÿï Ëþåwÿgõÿ÷Ø?ùÙ®ÿ¢¹¯ûÞñßÿ,òÏÿ‹ÇÔ¹ŸþÞíÿþµAÿûù]ÿÙýýöþv?¢¹¯ûÞñßÿ,òÏÿ‹ÌÊ+#1!Mîåà2Ø&ÍwCT•<‚¼P–ªê¯*(˘DÖd’z6å=5_‚*0Sm–KÓhã^Ù+ʶf°Y¨[¢­V£RÓè½d÷ïÚ³ð®ÜDFúDwر¯òŸr{Tïcgc¾³súΪlí•ÒɃ[ª®ÊK±Ë)Ôs<Ütè÷:%¦ËlDÿsárÆ’e¹vGÆËî?Tþ=ù“&\ÙýQC×ôÏâ}wvþ±øÿN~ÉøsþóûÃÿÔþù‰ý=ÿîÏÏü_éÿrþÔ[Ùõô¿þÛåí¿Çÿ¶û>Iõü=ÿgûý|¾ßô>?/ÈÿGì<¯øví¥ÑÔï½x›ØTU‰dS®W±âÎ×­Ì4–ÊHŽ_V¶ðÇ4=^ôœCY1‘3†v;{"¶Ž°íòà·hÈ%ÑŠÚYAd=OÇxkÆžcã²ð8_!ârýLQkkÓ·¢¸´jÛÍ·"tqy#­£Wr<ªò'ç$äº|ÏNÛiòT1uz΋­è30–4.çÎùmT–hcËYßcÜOôV¤t76D•'šÃš®°ùY0DûÄ¡|˜ÒVFLòi:ˆýIdØ ¸]_&àÜŠO±­w­ÅîM̪͚¤øà¸\‘£CÛK±:¥}­¦̪[ò'éO½æ¶² Âç¶¿¥§—CK®é]~fN¿2û¬éµú‹©?)‚úùö÷²žÍn‡91a±žÎ“S©Äê1ñkÔÜ«4oY&îDdŒ‚n|‘ÌXY UË$ò¢½±?ý8Ÿö*?édA$–2k#ŠÊÔ,(h™“hâÀVzr>»wîeh5XÖ„–'4ô–ÎÐn;hñ‚ìK«¾›zIºÍ×WšmàêUÕØÇm;–®aË©ŒpgéG-h±ä™š6¬Ó»J¦•*¤Ii4éR±Ir_‚¬¬’6f+Èäù5­•¬U{dDV5×9ŽW{DoÁÎG/ûUȨ«•æ¨0À` €0À` €0À` €0À` €0À` €0À` €0ÀlìÏVëþÕ§‚XF&!šR}“¢;IR@ ç,½Î˜X0°ò ÎG¤I»‡29²ãRmèÍÕDT„+½´{ O¬ ·ŠÚª[í<"üìíoCwgpXµ%^Ij±Y®þYw—+Ñs3Ô¬ŽìŽ°ÉºvBE k4‹8áù@è…B4dÀGàlÞ¹øü®:åkEî¡Ö­ßhXq^ Vý'@ͨ^·y¡Z–©²çöl8¹†:¾¿n¬ñ«ë üiÙvî.[Æõ>‘i€4ìëÄuî2‹öѱ‚ÛŽ20mÿâ’«ºî›ö„öG¹L˜]¡cA;;©w@jÎ-|i ¤\› ,†:Ù¼½”7ta©ÍàŽáRôãÌG·DÚO ÷@6Eãª4tÝ E{4>*Û¤PéS¤‹1UoAAæö$ñ yq™œ”¥Ÿ(g2€jº>é€ójÈM¤Qá…œH]4pÉð$žÀøèݺk.á4Mw?Ô¯¢Zh³ƒ¯:#ñÔ×^7WáiÏ:'ñ6ÛîkÏ:ëöqÏÙžQ­Es‘­G;×ÉȈŠïŠzO’ÿ•ôŸÂ{÷é?„*:iŸP¾Y??¦'=ÎŽ±ß)>¦*«cûˆçü>NOnö¿ÉöÏE1€0À ?îëcŸÿ,_ò›ÜŒà €0À` €0I!2¾/zU<& tHge„EμOg.ãÌ%š´ù‘hUwÝË™Ð8Öä_5E'ÎY5ÑŠŽygº¨o—­¿³OOž«£f¶.Õ¼ëºùð9"‡NÆJZý±×•ˆ’YŽ‹®Ú–µyžúñO2ØlI;Y#i¬QºFJæ"É^ØÞ¿Ê±$øüþ>ÿ†«¾-G*'µDõï×ðKK'Çk“È$þà,ëWÅJÐE é§{ÖIûY\ÆqUî=UuFž؜”NdÏt处C¿’”Ü —-÷Ë~¨<ƒÇRÉÍÉükyòשOÈÔú;r+ææW›¯m–1_Ís¼ÂÕÈçò wÝ™vß™¡&l5ÃÆO‹Rä|žÚôW:£¢ÿIÔ^õI%–ºµ‰¦›å$¯_áí_©XŒt¿ms“êi:¿x޵ÄG á)¤¬EZ[u,¼ÑàžªM):6Zod[²Ä9‡X‘Ä6»äƒÒ·eµ½Æà%,˜¸zr§˜üGå­}ßwS~ö}:š}ï2ÌîE<ËK -çv4ÏgÓÀåø¼is™Ô‘8 »/âñºŸ ØâjãbRâp®Ï¿EŒ´Û dM{œÊ³«çý¹Ò«¯®ÿ¹Î–k'×3òž‰bH*%—I#¬íPþE¯ RVâÁï­%?£b,cZOãÐÖÈY5Í1;ìIÇnŸÀ’“ά6²y‹‚±»™‘µFêÃ+øp™tƒ-™Dnþ˜øó.kôëßsž@Ú³­£77§¹,œ·OÝkg~àí>!õº'äóÜÌÙ8qÓÔæ*ÑÐֵأwzM»˜¹–9¬l+†ìÚ«"ͯVj‘¶6$Ìx+1ÿ…”t?9fGÊ®dÎ{#Jþâ†&ÈöÍ$³º’ï%?i@æ¶)ù„4+[ :ËZH\3§ j“X´¸¹Á ¯8`©&ïÇ\˜š ˆKN´xpŒÐsÄWçž÷ôÿÛr=1›‰ÐîÞÔ¸¼Ì–lØçî*+å×ŧŸuÑìgѧVJösîõp­mã±ý\õ°­A$yjº•¬E,Ï–(ØÆýȉ"=R³½$r9í÷Üç"£Û¥lr*@¯t­TYŽ šÄ‹2Õ-›È›vÅÅ‘YºÛ$é 0Õ‘`äRM]Sz,£&„G¹ÕVš·rŠ©i£îÔ’…Ëtf’¬²Òµb¤²Ò¹WBœ’V•ð¾J—èÍb•ê¯sÕîSžz¶bVM^i"{ì‹\Žk\ˆäG5ˆæ¹ŽDTöˆæ¹ÍwóüµÈŽjÿ ˆ¨¨v9jz` €0À` €0À` €0À` €0À` €0À` €0À Pö•*?ëzwèŸ~¢TòKÑ . /Ée¾óRïs±ÖÇò¬,yiŒ›ÜaÜ™gòüLQ9)Ÿí ‡¼(å«e«Üljžåô¾Ýõ½Ýítïiì8] Û^¿R ºBƒS‰ßñ›Ñåû „Äå IDn=¥b!„Iï7á–£JŽ|¢,‰r=½òaÜž²6ì…¬ Æ‚kÔέêuüöôŸvº³¤f8¼0+siµ;L„Ë]Mâãpñ»ƒ¨q9ã¡ê0ŽŠT³„ì[aù@°—ìäªý]é¤Ï±ók¨ÇsÄÉ Z±jn «í«Á…­¥‘ ;“§"¼³¡¬¥/;/9$j`¡ÂI%€©äû_uI:ÓåõÿúÒû¡jo+u¯›÷"ÃÑäNRJèèEK.˜‰™YRÒ©œbÿxy&LçR—rj¼œ PßKÍl¶—‘þý¯z{¤ 5ÜP=R"+Ø«-ßa¡0aVyXpë ÅAOŠ‘Ä&.më0äqÜ…šÏ`±à§d"ãd$mÞª¢©àŽ…/å’ÚíläK×Ì< Pwlâ?sÂM×ÖE_Ú®×Ë¥ƒìH1”1‘DF"™Á{¦¿®Å]Ø8|ÑFΗ=¬<ÁÙ%l~¼'}ôj ¯=³°¡µu!q#ÚZzÙ°MmFK9§ö„†@Å=µœÿQñq{ˆ›Y\Gf'AF&|G‰¿å$@²>ëB{;dõ†Ô€ôâˈS}Š˜2Çàö¤Ý'«† %4¶±d¬‘a•.¤¼ma¼ÍjûUA¹aÌ÷ˆ×º83Õ”dAÓ9?X|¡õß®lï_l;7^ÝNü…UÝ‘½Ëöy•,‚T}«´˜«NR¡,iµ¹¨Ør`ò"ZÌ!çK`&,©}@ôE€j™MñGA8Í®Z¦"f›u]”Ø‘ñ¦©;CG-Tp,±†MËeSpßuP×USESçd÷×nf8þ;òCB-L±ÜÌÒ²~goN„φGE3"¹JŒõätR±ÑÊÖH«sˆæª%¼–êÄåd¶kÄôôªÉ&ŽDTöŠ­s‘SÚ)ü)ü˜ï⟬_û¡ÿû½_ùdÿá–î¿ÈŸýÒÿå‡Ï£ÿ®Ôÿâaÿï>.;QÖ­P_f½‰ Vuª*lÙ,² ¯Æ›rŠk¹L˵¢¢ŸwUM«ÒÓ”ÕºÛkÂ{{ÄUY#I¼cävD¯bJøønŽY¹ïŽ'Q…²=­ö¬ÓD×¹«#UÉñoÑô¾®ÓUõü"Ù…Wþž×侓ÿKëÿB‘b¾òy×Ë ^·e(¯X–w­ú:IoBEÅit²uíꨶÀí¥§E5d½l„'¸j© TµÄ èÎ#/6÷IúMò_5‹£ÔO‘Óhsw™ øæÖ_¿o_»’kþK,óÍ48Ösõxú™7—åCq•±ñ£è`·û¬0îÓšFB’BÉš«ùm}˜›dD__}ü,,®ô°$_î]$‹·à²·ñOÖ/ýÆÐÿýÞ¯¿ü‡4÷ü!òÏý×ùÿ¢º_ü°¿üú?úíOþ&þñø§ëþãhþïWßþCøCåŸû¯ò'ÿEt¿ù`üú?úíOþ&þó`B¬êÖÊH‚õÍ…Ÿ¢%FéZ,*Hb¯5[v‰Pú2QÖ×Ù¾ŽyKeõAm’ãnßc{ÜŸUʾ´}G3Ðsr]l¯¦ÍìmwÛd ÆÌúÍЭ]Ó¶IJè‘éÈÄz¢½¾ëE<£–¢™é±Hɪ¾ý#¾ ¾½ú_^ÿÏ¥3Œ•Fw¼xtŒ³vlÓ•¯ø¼ !(ų¶qcoÛ8yHÙÕnÕÉ%WÖIÖî`côx™™F¯Y^•Ë0×…ºvréÉ<îÇKáù•²t,K úô+K¯¡žÛ­š*­hÉrÉ ’"¹`W:6ª¯ÁäDûŸítŒDTÊŠ¬G¿ãé]ì®+ÄÕ)`Íäqnõ¨ EÉ£'ëqš•›˜äŠ¤žª° q£­H11/Œ¡) Ã8­'îbêØ\aÉÅc#†J GL×ÝAÌ~²;Îo7Ü+ÚÑÖ¨üŸ(Ñìç‹S3³çXÍʸÔ3æ­b–&¬™¾ý~÷ñ-õÛºÑg³VÕ¬š:TzL,ÜõY¥|­_Æ|nI)>º,o¯*«éö¹®‘‰#=GWäDÅÁ÷1ÐÆ§5|©h„dÀY¨I]*JNGŒ]0‹¾¡fi7hÏ9F=DKž³…œ–•‹S…â"ÊÑQ9 jTlÕjô ãÝQÚqvŸ§~ïoV•ü- o#\Ë«™§­ÂºÆµ"á>]/?&žÛîEåküý¼jzýÅ-«”ü…³™«B‡U…¬ï1Y-}j±±Ì•’SkÕìŽÏ¨ÝRTF9–eøEñZ-•²::ή©Ù#ݘ×çí*›Êž…æ¬Ëv^ ê”tJ"<Ô~u7¨t]ØÈ!ìT‚Ü&t8M p¸s•ýgÂ%ØÉöÝI,ºÌ‹hó:š%Ù~]Kz^*ÜÍóAkgjÍ .{V‚Þ|¼–kjxÇ7‹©¡krç‘(R½ŸÒu:V2ZÖebòšW&¿7e^¾ÿÊTu蟟cɘïŠ,ßeÇÙV$M¨ç5ðÁéíûäF=+Y+Øúþòe-+qí£ûŽ2c¯X%*«Î‹áÜNåjUõ0·=,FtëF)ËÅÜɆñ°§­¶×—;¿ôž?Ÿž´_•sE¶hÞf|,ÕÇësíý;<<Ú,hÞê9è-c?¢ÏΚñïkÅ•iR䢿ªÝ†ÒHè×ÓYñsUʈé {}ÇeïäØ%VȽè‰#cYýª†èŽÈAK£à¥qr㤙8a’éðîÑ~$à#L$ ¸·í·Q»Ñć¹nõ“¶ên‹–ˤ²[í¦úíÌO3CKC^•¬Ý\›Öó4ó®Ã%k”4(X’­ÚVëÊÖ˪¶b– ÈÖɱ½j9ª…ÓÉÉ#s_kØöª+^Ç"9®j§ð­r*** ‹ìî2Äô0À` €0À` €0À` €0À` €0À` €0À`/¿Ý[°;UêèJôÄ83ºO¾9í$©I™c›¯ú÷p†°fãûƒH”w1&ríbãÉ$$#Ò›¤‰YV›n÷@'¦æß°~ík‚?ä‚­é'am>ÛK{úšîgh¤–$Âäë}y…\F¼®êò4tèt?j*:¾±ŠöGYݰvêìÀ´¤aGÃ:ÒéçJ»!Vvª Ù+¹Õ Å0¾/:óÒñš®m<™o­IݶüÕô”;éu[^jòn3‹ªÑóÔÇÈÊ=ü2ÑÎDŽ"2^¶¼^ööe[y6¢#ÇúݽuÜ®ùPÝä©&æg6p™¬|Œ>Úéô¦Ë®,hs€ð& ›CzÒSx4ž31‘®zLi€ãàââœ80$ Ù'êo’·vµ3ŸRþš˜¨{•a0½fÐþÙ¸¹ÃÈé.À<¯âõ„âq\¹ª£R–VD^^ ”<„KÝÔo"ðPÉ(°Îþ. }øÌºg·5³%í-îñ‹_> âÞ:n[!Aµý¥6³YwôšÓ°Y×0øPzÆ! !¸Ú´‡7iÁfo˜,İeukÄ„ÀGª¾ /ªvËëˆÉ·Y¼Çà=u˜Á»í%;Ó&ŸŒ›­YÂob†9 '­ØBi >DlL|œ¾ÈŠY3£"ÌèROÖÛ÷÷.}ÇröøÈú¯±0=$` €0–CŽË„9Ë“z£5^ŠbhCµG>lLzŽF’AË5ÔbI›B ÷Uölù«ghs¢è$¦·ùšºx·bÒÆÒ¿“£gdó.X¡vY¯-K,ŠÕY"ž6Ø«<Õ§k$D–¼ÒÃ":9Õòö2F«$cdbúUkÚŽj«UÕV¹Ó‘ŸÇ𨊟Ê!«­š¿ºÉCÝOÙnP\Ubº;ÃPü œ~àA-¡³wk \éjõI z7(5j`tZdn/âp6JBb–ñ¾Fé8:»p󖽈ë~>šËumà]¯Ú©¹ vãϧҷ3OW&E5+Zøt5õWÖUÛ¯ºÛ{!´èÖdù65w¶zoÆV¹Zï®UV«Ý ½‘Èè‘ÍŽWFϵ¯kQ¥eÛ%"ÓIí©³|õ†%dx¤éóÎ^‡™žœ¾ ~STY´ú¬ÛÕ’.¬­ 4+,®¥aeÒ« ùfñ¶jb1 Vñ߬Í|,Läîh'–vt§Î§ÐÿRÀ^ÂÎçëÞÍÈì9>Ù“Ë׿yv<Ý9éãtø÷ñqùªôåÔ±“ÓõfÖÖfÇ=²?ñ]ø±è¾…öÉ_*µòWž²¢W}{ÒA#$’g9’AÆýŒÃÉ @fNR!muõ”ûTCJs$ˆÙz^è=k¸ БÉ$Ö2jÁéxÛ{Žc­r ìåó=G« ­¸ a°_‰ú\è.Þ± ëñžIŸY/dh¦^×*ïI­ÑêªPËÂÕ£ÍùÖ×ëR^:¾g‘ çëζXí.E~ö%¢I· ZŠ‹bšJˆÙóŠt¶ŠŸù%c¦ÌmìK ú‹*§¯í ­l²¦’ò¹XܰaäMFÑÚì6. ie̸½©$áæÂ‰V䘘g”uàbà k|JH zpøNކ… dÓÍCÞþŽúÎ'ž¿w2k^CЙ¶·±or5§ý–Ÿ–°%ʽE[¦ÓÈòe¸ôª^›ÇwŸ—£ÎÐÍÐYìî_¿F„9 »ðY•­z6£S㌰©ö:Ãýü] ‘ÈÉ)µX楶üÙ+ÞÏIZç-ŠÖW<ßq2âõÁPÓÛGU‘ë£mÉ·åvÄ_Äpïwg££1/RP‹$£Ä$±ùd‹,¶Í9“«áz*,5è ŽÍÌäÓnZºWhåÃ'×-jÛq,-‡;NÕ µ›’ûÓ­•¥—sB­6hÓI³YŠÂÉõ*¹±¿áóþ>Töб¯¿oc\×Gö"#ö=¬s•Žõ³Z=fARÁÛg­¾3–þ¡¢é9Cã³r«7ˆ|TwÝ?ŒÑãuÚ¹Oï}ô¢ª 뢩ﮱ9 ž´ŸUˆe¯/Â)~¹£|R}sÄÉà“á#Zï„ÐIÑ?ׯH¤dŒUcš«]žÑQSÚ§´TTöЍ©í?êŠŠŠŸôTT_åNR>Œ€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÀU¼º±õÂZ:YøíUAíñÖ‘ï–¨Û{ä›ïHH¹/|"åâÞ¦Dçݽ²~§OŒ4`†¿_EñDx¤|£Ô“Ñ?|‘IþXîï”x÷̲ò~õ-û/“¾ß÷ÉAŸ€ÛݤE½7¯6OÓ7õäÜ9uðø¿P,‡` €0À` €0 qðþýLÿ^?ÜÅÍ€\vÀ` €c²è  Ü^A •°÷hĨCà2\ºzÍ"Š7Ý¡!Ž壾?hª­"“„õrÕe›-÷ÐYDöÉâìisÚù»¸ö["í}Û‰ º¥ê’¶j¶¢ŽÌSC÷V™Œš¾',S1’³ã#äñ$l–7Å"|™#UoµO“\žœÕVª/¥Oh©ïùET_áHí}u­¿˜Å@H„‡/x4ÐP`-Ú¾›ÒÊzR.)]IµtÍô$¤$Yñ?J1ñÅu(oy#-›ã¿4õÞ8±±£™võÝ{7 Â¹{FY ÀîÛ÷U»Z’Ã;ô÷êeßׯWî·^¬×nU¹µÕJ ËžÎÞtÒ6=­lhߪVµˆ‹-oáËW䊈ȜöÆ®ôÕr5ªØÖ7;æ*kãjÈŠK%Ó«†oA3ŒÃ\‹?ÉMÉ«·õéhé-€ë'0Ö,K¢DÛyÄÅe(¥Xµk¤ö`\¬†ÑX_ª^_g'y»ˆÀò4úÛ‘Yد›•C+¦¯ÒÕXcÌÒè®MlMN²Å)*ЗŸèbêò{ËÖÙÔ¯;‡Jžfö&LI¢‘S6Ì´Ò8Õ#W½ÒB°¯¿YèϱddäsÒXV *£Ú°}ҹϋC¶í—v)Ð&«÷ÕhéÈìÅ”t•ÅQ%Ý^æ*òIFýH" 2xèxê’VÀ í:ç~ïJǤL+WA¥—3ØÃ@›_ ø·Ð£ÒWë®·¸ÓßN§Ú¿I¶<•ˆÄªÙ|Ï[BK:wtÛ—.‡C/!Ô7Æ‘÷šY–:˜oãpðkÏ~Ó÷ JÌ|.®Õ¬É޳[á꜋òõžæ¢HƳ按'ƒó«Ø’YV#,N•ò3HÞòqX¿/bfC¿m¹£v‚O೚jÓ,²£TÒhY›•ÒJüú< RDCÕúÄ‚ƒ–•Îâ±×üËÞ~˜;ïd[Ù×Jûn×—c†ÔäŸ_¡çûžB›oC²ÊÝ«m´Ý•_9ÿ˜ÜÊÉ{¤lvoècfãóÛu³vjÛ‘±Çî75É–N‹ µ¬;ÛY]ñ9¿/š½>?5øÂªèÚÉ$±±ÓR?`CårœZ8q¹“Uãñ‚&ˆ°EâìãæËÐË@ êßÙö‘$v‰ÇÛ¿\ÐAf#ä ±`ÒB bK›ÛÇÌÂ×Ô¡%5{wpŸbH#ŸJ…+N£6”–_ÎLÇÞŽÅ*šR׎…ûtt«Q±flÍVÊ2hä|±±ÈçB­l¨ˆªŒ{›òF+½|~hÕG9ˆªæ5Ìs‘ìWf9„* €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0À` €0N>Â?©ŸëÇû˜¹° ŽÀ` €0À>f6<ÄlücMÜ„e!yƒ§qõI¢’=û‘Q®’KmZ˜ÝÓ÷$´!ÊJ+îjrõ^[mùß%GVÍ-Líg6+óæZγ :Muʳ7-Ð~-;P½è³QlU¢ªêß6³ñ•جb5Ø×1ñÿ,GµèªÏMr|ýüœÕõü;Û•ß/KýßÊûRö+ÇÝ/tGb@@«Ø³ÑÀUdåïãÍΙ N›L›¹ qÑEY’ ²ÛráÍy3™réÝw%•Êçȯ 䔲aoß~¤»®OkKK¢éu൥_S¾”¹ôoöôR Çiܧ=[¹¼¬´âŽ.› !‡¦ÊÇÇç$5*ãoó8»¹­262cV±kºEb=ͬÿ’½×#šùÑËîeö°É$“"¿å$SC WL»]CÏy‹t6áš Q¼Ô‹×*MäuhZæ\¬Üêõôžlr*Z]dÞŽn“æu‘#?g‘‚)&?iÇyjdà¾ÒoL9øwÈ|ïîÿ¨Ž# ã$Ö«b¿ ùrúëÝ>+03£érpsö)âòÞ>‹„£YËåçruº+U2s¹4–Ž}¿ãdÌЩ/דfVªG+‘lú}vÃ"Êõ†I_¤žÒÚrËï|î…#çg§9·ð×|îοǜP²š"S]k¹xêAmŽLo=)6Y)#§5}ê£iÊdý™Ìš+Å[2—Š_ÙÏl@s™dÒMm°;#Ôý;p^HÓ‹È™CÇéþ4´Ž[ž>w{[•«— ]o[gAÙ>/ÂÙ‹×áâÜÐé9*ü·?…•¯.—7ãz,ÖµM‹RJ’CíÌFXõ-¿Åtîz¬Õ¬ûvYQ~‰dkafl²Jö#&¹fw»]d`#êéCy/Ìïµ9p¡Xð¶ôœ™ç$ÄÇëû=Ó£<±ciÌ&£þQ…× žËÓõ“(Ò%`P’>åN»ôßäÞ ¯Gg®É—+öšëwŸ‰´ôíËÞå@•.itœœ0ÑKò˜6yÝéô ¡™Šï£Uôú¤Ë¯›ƒ^•§B•äI>kñ•~LjUzüšÈgUw¤±$­úãªçÉüÊÄtHYŽÀ®MŽ7,9yq –‹Æê(ûƒ ‘~ÃE9rÑ‘‡1ã­Æ¹]-z°ri·ÝM™8á=!&}è¨ÕÔ–¨ónÚ»J÷Á#iÚ¹)´*×°æ¤SX¥–|–¢î| ½QÒµ©b%vIÕs˜Žj½­kœÔTù5¯W#©þQ¬z5U=*µÞ¿Â®Yž†À` €0À` €0À` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0À` €0N>Â?©ŸëÇû˜¹° ŽÀ` €0À` \ª fáø‘X³6Rr¥¥Œµ‰ÆÈŒ8jbŠÚœX[ÐRroÜ+«²ȇ@ªˆ¦‘47㔹”gv= þs£vƽUØìÆvuk[Ï¡†ö.~nn;uôrjV‰‹ d˵RJm{ŸQðËéå׉ÑM×2±dO­ŽkÝ"/Íïcš¬‘Î_åß6¹ëû½¡_÷Œ2PØQ˜„CryvDâVu%”fÝ(nCb“›ÎU}ÍÅ9ÒYe;rIfŒjv¤áU[ï¿é#õgä™nQÚÛm~N”õvy>o+&…ª<]¬™k%NÇøûuõ¹ì,Ýz;J}œý˜ª2kŒµwºúÿ¬Eœ*²#]j³¹ó>G5Ö";å-©#trÈøÞ¿c7F®TJèè«»ÜqdMä©V˜/Y-´ûM+z$ü¬¾À ñé» T3Öd=“´Ã–‰Ç†Në9Z%§dê„Þ]rŒ5;-®«iYÊçnÖì¿Mžeæ¢è<¯Å¿Ä8ð\ÎÇѹãy ‚‡3·NôÁ™âÎBõ=;|ïW›¯³µÛä³A¸¼5¬Ùº8iitýN=£êûÓ,Tl%ù¯‘¸Š¯š'5Q_vÃ]4Ž8ëH¬û,µé¹Á#áÊ+%NªXØz²àˆØ‘Y¼ßgnjKO±DÙ ™<ô©ä-/©kC.#õCø  "À ¿G…® Uç¾XbzÒ¼=–¥î¿‰Úæuð0»>CÆ5,\Õ£<é9xëj1iv5ºNJï7wCu«ÒXÎнs£éú>™o&¶HvÖ»^ÌsG,¾Ö½‹ŽFÆç«ž“¥¹QÊÊî†vÌÖÅþ‹^Ö¶!‡ãõ²Ìa]¶¡ì6¸Tá´©Å×îŸ( ÉÚ…Ú'×–òÇ“ñë`l⇶g ‘o,àw"ç¦@AåYYážòž÷†|‡ÌÙí¡ÞçåǃüOÞí^žÒ™ÚŠ’ãA‰u«ôtSlg$û™‰Ž¶’ß;GG¡oÃ:íÈ3‘hÔ™+,R¤‹kåõµ¨¿$ø,ÿ1$oõþÏÆg2/ûGµ«#ytׇZ1åË~¨ÝGI³ådøt£TTIœèß¾.ÍÒUtQmtå4ÔY-6Û”ÓŽu‚C*Äë ‹dd.™割È×½‘:O_‘ìŽG±Šäs›܈¨×*^{O~½§¿J¾½ÿ>“Ò*úÿ>‘U=¯þ(}ò™ô` €0À` €0À` €0À` €0À` €0À` €0ÀXTÐpB H6 š6UûQÂŒ‚ÎJ’(IÚ¨³ÀcfÎxíd[³A•r¢i¥¾ÚÝS£{BíLÚí^ÑбZ ëÍfíÛw$dU*Ô« =›¥–8«A o–y$c"kœö¢ùsšÆ¹ïsZÆ"¹Îr£ZÖµ\ç9U¨Šªª¨ˆˆª¦2»j:õ¤ŒÖʼnÇÚ’@Ñ ì™í´.Ș¸$xrIî£ø0ѶÛy³„Ø;Yf-Qu»²CÐs$Ãà»N–~’¶3³§k˽µÓT­JW[ÅÌ̱]7ª¹­±ÑšTKP$n± #±4¶¶dŠ”¶«Â¬³FÆØ{c…Îr|d{Ñ\Äk¿Âü‘?µ}úUTD_nj.:W²t¨+aÕ,nt,Då”{™ ´Ép³8ëN5FH´uô½dõ‹Žœ# ú}̉V’ÅëÖ®çm8а"YžNŸ‹{Í:î‡=nï?cKöÈWëŸNu[•rÙ§_Ž]kXܹ_œN‚­9±£éf‡žšì[jӟîÕe…¬éZÙQŸ5ù{F'ö¹êÅ‘SëIR&¬ßR¹$XQeF¬ms“C;òCŽh™¥Cɺn©:h „‹žÆÆœ8Üx)µ:öBù³Тd´ç“M*hYa–U†Ê/YHâ³»ÓWíhP©A”6êC+*w:<ËìôqxÃV(ÒΆo_2¼¶)ïTªïTsè2útzñÛåy™õú¼½ŒLûEبֹÏWDåEufOñ…n±WÓ%¬¯r#¢s¿Ü÷+~˜Õ³Î‘Àøä|r)å®­1B5Qi–ÝÐ÷/]Þu›«aUøøÂ$ÞF§QÇXr› @¤ZSo£¬•;mÆçìç•Ï WhTýuù¶$ÕíW¡Æàvâ‚õpóë\é,ëIV Z¼þÔ¹ö¹œŽi×ëMÜ×Ó°ÍXeVæòtëf-Y;¡®æ£+ýRZUm@³5Í…±£•Ìd±#Û4“|\••ˆ±ª|ë¥a„oå½)vÁ®ŠN¸­ž¼(I(8Lrжv½m™{èóéY™5QÉàÚéf•‹pª +1.JO4 âkbÞ?ƒC\öþŒ‹ùÜ'{Ûñg“UýûÚžBãSǼn-}*øÔr»­§k§Žn²[͹O¢£ŠüŒ+Ñ`ó[¥³ÐnÃÄÑþ¢I>ªÖµf’»éH£©gòìH¬Y%“ ¤Åk¢t‰$­YfO„qD¶qç]øíI–†ZWÕ™ì&‘ø”êgpðf†-UôÞ'=pÕ´|›)*Ξ%e{ Ù”¡ŠÖ08±¸›ÞJÞ–,qDûzò¿ÉCútñ¨ÍÒõ•³lailóØ\OàùŸ_çžv)¥Ò©>fï'Ï?•»êO‘b>cC^†Ä?‡ãîcNN÷:N›¤òºÚG$5Üô•‘Í%Ÿ7WÍŽUDb£âžd«©³27F¿+S±*½!‡`õVÒì´ŠKYºIËAu™sö}{¶XIOe—Ûö¡«ŠÞönÑX16Ð4 -+F¯°’…‹aÙõc‘d3—¬^Gö²5åþGÅY™}]Þ®6‡–f¯7’¸Û9Ps¸Þ:­5û¬ÚØñç(›Yz*3ýo4ýÛv|JÍ=eÍçëØƒR¿‡«gÏyï¶#(ýŠ”ì$‹,–Õß®;sýq*DŽY>‰’&¶ú²?œªŠÅÐ’>4ÿ»­þü±Êor3‡É!?ðÀ` €0À§?áÔÏõãýÌ\ØÇ` €0À` €0ÀÔ²:6®”ƒ²Áˆ ,ÚÛQ»™ÒÅÕ*Eá—£[5B<çÝ6&‘±_)*Å“èv±ÒÁ7†”l™x’ ŒqÁ fyž@ë²49] véËŶH¹æRe:°Q¯jYdÓ‹ñQô.~òË×Ûv;é¹RWRÚf…%ZËnú°HÉØèÚä±éeW+œ®V¢#åòG·ëTEàæýNO”jÇ%SÚÞ*â1èä‚Å®Ø$/‹EÓo}*sÜT±Ëš\éújWSd#ü–©VëìÑarxM†î)lÊáðQò³¤£—êâ79kØêÿkOO7˜ê!æëøó‘ŠÃüx½–wõžŸ ‹g·§Á“I)Vè{6y' –òw¹˜v8Ü}¾†Î>}]NDZêsó`,`DÆ>he·:¢[üwþ;,È®O¦TgÉÐÖZrüdŠeŽÄ‘DÙèí[VJšôjž@:Se·RX„#½¶å…¨á!Í4Y¥Ghv2 <[]‡h«I¤j·3×Bû8=|ºÕ_CeÆe§ÜIï{x†Ðù-¦~›üñËJÜi7ÿO<_4¶nÝ£3&íy/ïÙ·3›¹vfM…«ÔQòu$‹6½xÙÚù*ÌZ8¹±äøóЬ›tZ»“§Ø‘kX›âÖ¹+X¹5?Ój*K.¤ïoUU­MÑHù^²[²ï«tÔþNãౄÝìE/»-ÿƦ"ò8GÓÖ´ð™& e<‰q¬¢1T\ÙGI“)4òpôL=¢© 켡+ ^Á{Òv–•»Ü ®e¾:åk|;­|½ÿêËÜ=R¬º9Cß«JÔû[T|ƒ‚ض0çÉç¹ú÷6擞Íç©d¿šÞénkî±H­6oË}ÕŽH¾†Ø•ÎFIR'9©o«/¸ål“JæÆ‰+åt‰4PÙ|Në€Iá°jrxúœXP‰ˆf áC:Ÿ7؃Y,4sW`ÂIÕ+"J„©¡˜¬xÔM¤bDþj- È‹å]ž£ÉÜèñ“¤Õæéɱv{ðT¤‘s²%i²·,Í…ü–SÛ­*Ly¨ìiÑÙ›[.¶†»´³Ÿs9˜¤Š>lÿYÉQŠç{™>HøšŠÆH®Ì‘$GFÇÆ‘½ed£væBË€0À` €0À` €0À` €0À` €0À?;o¦œqÎûk§í¦œs¶ÜkÇ;©¾ºi¯óÏ}í÷Û]4×ÿžÛí®¼qÏ<ñÆ}DW/¦¢ªúUôˆª¾šŠç/ñÿFµÊ¿áWø@t¯¤ñ¡‡F HA’Ê.â3|YƒC’$#èµpypBWp›òè„Aó%˨=»¢ñª6GG m½ý|[yúÕs4,åd>”zºuéÙ›?2M'Ítz#Õ©>ü•玓lÉ­> ™HèÞð²1¯dn{ò#•ŒW"=èÄEz±ª¾ÜEEw¤_Š*{õí E…ÇU•XІV MYmDÈQ+8æ™·#l?¿‹)#E©p8[°ÿyþ„–Û†)¢šÜ,á5[M368~®G1¿?5²ÜnÒ{•y=ÑžJݺ¿m·O-ñ1ÿ•nÞ«º«l9îb²76F9ÔÒÍwI4I4etk§gÉÑ5íùµÏEõñj·ùù/ñëßµþÔ¥{}R7®OãŸ4NJ<„:#TÆ©­½.›¼™öq1ƒëƒtÝÚñE’ž¨dËqV•ššÙÏ¡Ý9ó:~ìäê,ózŸ´sõ3s¤ÛÚì5´Z¼^.ß›>ÅÝüØô!’öc:Ú4c·¯7VÕäàΓ¤k²ÛníéfgÙ+žôŽ:ñ³þfIU¿4±=X¨«¤¿'«cH?×W¤?êÀò‹ÖH[ÐŽÇIÅÉàãÚjVê™é# VŒãdÙ *O–809f$ãW¶ 6JÖme^A3Ž $æ›ì^oô“åè/Ãg&ÞNý™–§„ì½ fyÔHé乓¹ÜJ­Ú±¬×q¡qœ§Yµj–f¥º±ojàZM»F'5[#d‰©òµ*HÆ-F¯ð’)²:v¹}ÍYYà®|¬k–&K£d>d©ÁWR®­?£æ.Dè‰5QËÉÌæÂ±·p·,LEƒ¶vÂ+ ²åFµ„¤Áq뤄hä’x&/7’Ø9¿¡ÞÿZœ9 iœß‡>CÉìRŸæù b,Q×½,6v7yf|&ë2(Ò³äÕ¡—ÎÜÖÛ¡³™VÑý-Xܯô³U•V:¯òšY§b/öº6"¶8¦_â æª#ù›nîÂ_ù&¼}מ+);añ¥x1zE «ÚƵêRÎ1XiÜ7T¢šŠD˜ºFtèD6gHge H¨å3ÕÿK\|úþKþ«ÍŸŽ¯E‹KÇ»%~—­êoC¹S“¥ÕÙ›ÂP÷¶ëx§cjÄOÜÐ碻¹…Ѿ׋*Üvƒkù”×nÒ½Ôþ‡¥…zü­Ç Ã^¬NÐ54–«]z8š©eVÅ,HÛ®oÇÝEÀçÕî¦ÖþXHj™K5×hóóñèçÒš¸u)*Q¬=’–{’8ûHÊë{`¼Ô}Ý$¼aQ(•_jHä\ÿ‚<ÈKÐVßës{›>‡“tëféêÀœ(âÈѹ»vÉE[ÈÕt¬~.?Qøcè´plð9\öÎÏ[ÈfR—ONÇÔ諾»Óû©±ÏŸ¹Ê«#ÿ©«a]QÌO”üÑad­´ûQGÆJKäúÀ³&‹W,¢Çl¶˜ ¶£’)<ö_×øK¢²6õX˜y€J$tÛI¥)c-/ÏË£jîîÀ°çŒ/[g°Ñ6¦×œ7yʱRïÒ‰ö–¼“‹rL!õ„ÑòÏ…q7«dICß’.æ_ÎÄò‡õ;·|}âl]F6o™ç¬ø÷ñ¦ÌÙñàKÃb•wìøÝ&ý»*Üz7wàæ¾²ŽŒ‘,ˆùQ¯kå¥ô}VïHÅUši[nÅÈÑë*/ún_®ç¯›Ú¬lK6RÛÅõü/FL]fã.hlޱ³?:$7«°ùt™ÜòX’ŒD ¦sjêNÅ«x)ø+u`ÿå©Á˜;v• g‡—õiã‹‹bÄ%| |6æ_YÊ^¯sGwË[x¹Pó¸×{Ým®‡zlŸ&ÄÒt½ ‰úý®q5yú;kÙK7iÕûL+mô‹iÒ¶Ìo‚v«ÚȨÅ#ÖYV8á‰%†DD‰ñ"WkæøJèÿ´,o‡j¼§¾T–´Þiõa2¤§!’›vê+a̬YBŠªõݶiüíX©D+ÒLÚI!²¨”~92›”"!µ˜ì–ÕÛ¶´V×ëw­§ûgÇ`s|‡—N¯=w#‹á)ó8|ÆCZÚðñ”+óÌ×§'KVÄÙ{˜û:Z˜x4êÝ—•†ªtÐÓãë§7]ß*ö%šÅrÌÈä³iÓI<žþKaË*Æä…ÈŠHØÉesš“«¾•uéñ›I3»$Rñf²Àïªþ¦¬ë9Ul”eË´á…"‘èäoXzRlwIýË낼Œ\eÈžŽÈã(ÔDªØ–½ÔýU÷³iC[.ÖÛ|Xåù1îDEO¶®öMÕâ­×@ÈXvyØËXyykD×Aá,Ôeº(9hšúŒÝöÉ ÁɯCÁ·¡ãñ°¸Ä~½³Üu—9*|-­ÛÖ9<ýi¶écLèä‚¶Œì°×ÉÎm¶º>åû1PüÀ‚î–¥ø*ÇwSBÅ›¤­gu–ÄÔñ¤n‘=¢¹ˆ©é=üUµ¨®õóV±W+XÔLŠ1…›e‰Çbìä²#’ù Høaâ•IœòòG#*ƒè$üÙç|òèÁ7:(ð‹¶]ÚË+¶Ûs‹Öè7w¥¡>ÞÆž¼ùY™ø¹“i^³vZùQ}ytä±$¯C:HiT‰[X‘#…Œb"'¸âŠ$zE#G½ò½Öµ$‹íò9‰ò{×ùs—Ú¹•US#jÕ«­˜±lÝ›&mÑjÍ›TSnÕ«Véê‹vÍ›£®‰ Ý´Ñ$QKMSI=uÓMu×^8ã4ÓXš[%’yç‘óO<Ït³M4®WÉ,²=\ù$‘îsÞ÷¹\÷*¹Êªª§´DDDDDDDDDOHˆŸÂ""ˆŸÂ"‚øÓþî¶7ùÿòÅÿ)½ÈÊgÒà €0À`  ùë/µ”˜-¹wœ¥zý³ã6·c‘) oÒ°a2W2jnÁŸŠ–ŠAë™G d2é ¨«£–£–ÓVd\¹ncø¹§i¿xî #ÆœF__xÀ/Öa‘Cü7ân3®WWnZÚ,݃´z¼&xñÂÇÀÆ*¶’ø—g@Ú0¬¦Æ‹E4JZH9’­@ôA€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À`M‡°Ýú%7dÓbmÚ9ÜŽÍ‘Ùú ,ÕËÆH¼çN\$ÑÓ†,WrÛE5Eu™µU]6ݺ;iY,ØmwÔló%IfŠÌ•RW¥y,@É¢‚wÂŽúß41رR¹ªøÙ<Ìc‘²½óÒ{GzO’"¢;Ò{DUETEÿ(ЍЩþQ=ÿ„#uÓê Ösm=²¡hÍž\C„8ðâܪî0 @¾Ö>»vÙ6Î`ê¡#Êv© ª¥${5DqwÆœ£‡±Ží.oÍžFãâã åw_ƒjõüøsÙð‡ZöŒ÷ÿ2ÏM ®–-öË™£cžm Ì~\2Z¥^ŒOÕÛ±§e6uK ag‰%[-k^¯_jƱñHU=,^žÄ—äÕù¬¨×+•2´ì¿Eª([r¢žÏàö„ƒF–=[Eмl«3Ä둱fl{Xàöµ­—@k3Ç­»jZ9;öB›ÏÊR5€¨kê?ª9_Õ>ÓjŸÚs¼ßAÍæVšn_®ò×RÕ§6uN¢Ö½ i®¥™ºžcK£êó³¹-i»½N{óé·›©ßu¶÷+ù >+«F륚ž¨“ÁQ¿&9è[UàÔ†fItìJ¬—àï¹Õk¶%«ÖGîžúurp„Ï·TâÝ–oŒ#' ‹ìøl¢OPí4‰PõaÔ ±ñ÷(ù{EØñVfeÓÛÀ“´žÃÅF*¸|H=qw¥Áþ¼¹ÏÉ…á~áž7Æn®¶•\Ÿ#Óm{Y•ôÎÙò']Ÿ'A¥g†³‹33y}‰¨bó¼X_ÝÍn¿ofïQå–µèJ’èÖüÉ>¶1ÒSw¶É¾(‘Ô®ô‰²’"¾xÑòMiËî&²¼q² ?Lù=¡%­äŒ¬‰«œëaìæ± ëˆÜ€l¢E<» Á`0XÁ°l{Hl™DâåÀ6„ÇNH%…§‹™Š,"BKSw_¤ß"âÉ—?-ƒggžK3àíôë©›k'3S:;¯t}µ%5Ëò6²˜ízZ2ïêgæãT‘ݽ†]Í«}[vœˆôšTŽoI,p|ÙÇúkaŠ7­<íz¤nbDǾG"E£ø½ÓÖ'jC¥5ä2ÉPÈP¦­âÉ1䔪A»Y´ƒ#!›H£2ðÓm¥¤†"Þ/$<À¬£E [w 7qλ<†æGM»Ë6ý5ßa*ãîV–\¼jÖ4mî&f¶fnå,¤Æ­&ëå×ÊαO!ÞjmŽfÇ—ŽÄRCÿ&±’¤~¾RD¨‘ÈÆÅóï‰Ïû‘"F÷£¤þÖ9ÞÓÞÇȹX` €0À` €0À` €0À`ž7ÓöÓµç}u×}´ãn>þºoÎüi¶Úý¿oïÊ{ñ®ÜñömΛñÇ<ó¯?gßKéé~*ªˆïKéU¨ŠäEÿ ¨Žjª”G'¿ò€ÄXPfQÙŒ±Y`c•ö²/Ë1$Ø›h²±j“³7íª;U‰LÓÝrcOR-5û¼*×]÷Ó]³pó]úx˜ÌÆÑfŸJ¹Ÿ°S±VZ’ë³jvÖÉž‡å6X«¡;’:–Øå­2ûVJ­k•),Ñ#%‘dgŸÚär9#úÓå"?ãïÓ˜‰íÍ_îOú¡¯d½–£"‘JöpVÇ©´÷AHñ *xyá;ˆZBúPŠ¡R}Ëx\v<Ýy ¾fïT#Ð.jRT@ÄVu¤—+Å~@ØØép)òúMÙäFôY×XÌë9×u™µòËï®’îééIn& &¶æŒ‘ÐȧvÜŒ…ÔŸv¬qÃ+¦g×c×Ôöª½¯oÅ^²"µÔLb+ä•}G]#šÔU:Y‡jé˜ÿX,ÆB¬u‚-xLÕžUYS‘9K‘Úž]Ìl—.’žŸ‹p´¨83*´IP¾ÕË·ÌÈËàä÷ØžîzNqz <ÖiØ|ªê9$±ÛìäEis®ôØ|´P¿G_Í×øcÝТɞËÿ˜×ž¶/Ag'Ä·ëC7Õ+Õˆ‰ýÓ¹+G"·æØeUÏÜc½gÇÚ¢ÉIIùpë`uÏ2õ)yŴ߮у3ˆâà‡Î‘,¿ (?zM‹oÉÂÁíbäUÏÀX›ütžÞ?FS½uú5çÐÅÏÉäÝj8›V«xêíx¤»n’º­K-í”Ûû}+¼jëV¹ÖÖÒæ[õ¾ ûúØÕèhµ^×9¬‘ëÿ&ÇKVÛUQ­w÷9?û—俨úÕ°9“(®k0u|¥´“?‡Âø«ï6ºŠñ½ìνÇa±ô@Hà+µ¬Ì˜w¸Â–hœjTP×5 iü‚qeÇ–3 \Xyöþ‘'É¿Ðn^³cÇ}~ƒpxJkÑøó”òVžæ“ô³_Ÿ¡Íõ]]PìqéLíLŠš¢íu+æàrºL£»s§æi~ü’1ñDÖ¥¸öÚwÓnzlŸü›49Ë–9>¹Æ­v+åŠè› Ú¿Ÿ'·í˜b-aQ½j¶]æL¸Õépº’)n[Ò9!¹II"òÛD4ÚŸâz:w[œg “×g+e Ììó!AØpSU¼µ?I¾9å(ëó^@ò§Še_éô<µ‹o³Øâø¬¼½ ¸ù2ãÆäo`öË»³®{¨Ï›{'§ÏêYS “£C™èhu?}¹;£š¥*Ï›am [^;^ö¶G¹ë%†Ë[êRh‘I àWK;šÙ¢t:à7lü‚JEÏ%•4çMäq”O߉’1ªºôôÿ2Ñ÷‘Ú®šHÇØÐ˜CÍ&Ô”œuÅ`17Bë=Tˆ:a½{ÉïøoôÛ‘oÇí4ÏÉ—«&wŽ]Vб|Ùœ™–´ ÓëvïuØY–yíûó`÷Ù6xŽnÅ I8<îÂîu;ÿQf†ÄšJìIQìGÛG;ßí¯ùµŠÈ#d½³E=%«#lÌgå>»\ä«o”°Ní™®ãÃÐÆÆé܄ˤèxr¬ìËú}%8SaéÓU'&,޶N8듉­$ð HóBÑW‰±+;dÊ»Fþ'M—ü C§Ó³%ËÇ›³hDÿ"n2~SÇ<æV}4²þãúCŸ¥ËyKŸ_(G–ɲzNg.RØóÓçlOÓ?£¯°øj:5Ù³^åJ‘|g¹3ÞåjUûåtô¥ü%©!êŽQ*$)£ÍÞô+¹3 XpÖõÿ#’ØÇþD4ß´ppµ‹!´4:ïB$àU‹yì*ih²˜~ÐL^P ìY´Ér¶uÖüò‘Ò4¼¢?ê+Áؘ÷oq>7ËÊæ3¨¨Kâ>‚ÿYbב6ú8]V§EÕÉÎïar6¹iiWžæ¾EÜí{lñÓä¸JùÍÓ«ÝäU\)$klÜ‘ó?êz_‰5µ"…}ºh¥'G*69øÒÂ+§´çüZNê=âžm/¤ZÚ¸çÈS¯$ˆÕÖzr[â\Ò)9øÄü݉nÇâ? •Z:4:WVVTVW=ž³•KÜZܬʻ–!c¥úÁÀÄÑv¿Ãóököðe¿­æô¹ú_3'7[œ¡Ìñz[_ÔtÙ¹ÏÑ¿yüO_O"¦?9ÎO‹ŒŸ¦Æ¶`K#~-L‹Y^LÉÿ2ùÏšÃ"ú\±Êæ7òkºGI4É$‹cÚC"mÁÞ,â'“ulXÆí\ƒpfgÒ¶$û# Á]šºV°ý’u4|k˜c–ÉK¢v¼¿Ož ZŒ[ÉͱJ¯xêŠNkõu·œèxîb•ú^ɳ.…szž-ÝèzG;ªé/x²((~ùÏÆØã±]ý?W±.M ë`‡ÈN¸n O÷bw1Ú5é¤G^Ž¿PBÛË*¿êTû#±"}®G¢@«Q7[ÆWV«â1Vµ´Shl9˜Äì*€ #8‚Ýåcˆý‘y­Ã¶ž6Ñæû>˜,ÜÃ&Öï¤6Þk8 ×ýWyw¥­±7S°Sjknæ»]-¯CÀÓÔ½|¾=a³vu  D¯‰´g—‹û´mqS`^ÖÒµjæ<:º4‚?¦£~êÌFýVœÄÿMö=µ^÷¢ÿ2*9Ϧ6ÊJØØÖïXgR¨ø4²Á”‹‹rI (²ÐÉ;ž$µô:)&zð¼þ'\CŒ"èL)hŸy̆ʌ…IS,Ÿ&Ãt…A¶½Ýó7ÐcóYõÒ¬œÖ…]x÷rb\®—sc*)s›=FÝ'Ãs Øä³ ý³•Ö¾ù41(Ïn*¶Q÷,É-ÜYõb’iÉ&c£XÞ¿8cꮚ8cr+bŽw¯Îv7Ó$r5\ŸÚÔLˆWZ(PõÐVõdMåA»•Ÿ9‚žc¼œIn$ÊÖ2]Y"ÅH=¼ŸîÈ=ø«×†82’$u}ôUZ:'øríU¿îÖ’™hÚ‡çø›VH¸ßc"gæ>šDÛÚ}{±ž›‚4˜‡_o[ðÓDx¤üÝÔ“ÒÏc‘F>gîï”yËRñžË-{ד¾ß’ö9@oŽçÚdB}O 63Ô¸ôÛ¹kñÕø_`,‡` €0À`±ä×¢¶g~«†·¯û¡Ö׬Bí”›Ð;_Û¼@ÇšÚ+°ër6}`A-"*nä!çÇ@”;¨@ü°n²@eÝU¢»óVΉ•í{«ÎVªBžƒ\ÁúR­¯€Ëw1r*Y´Ì]ñh(D`°䶈ü¼ÉkhWÝÛr 6$Ÿ88øÿþ¦¯îbæÀ.;` €0À` €0À` €0•ìl#A$d |z4™Tã¥Ý²AÁzœA»S‰t®›ªÁBM["Ñâ­¶MUÚq»]÷åVO{ø54ªÐÐË­zÝ|íWS~(g’*Ú Ÿ$’ÑK‘1ÈË-«4¯šJds+ekRF1Íò¬cœÇ¹­W³äŒr¢*³æˆŽøªÿ’""ª*ŸÇøU" ½Ðº.û1/!l‹Øøâ‹êb¾-ˆ°,*9󔯮nè‰hÝ£”ŸÞË ³›DܦÍc#õ…2 €E •‹º¸¯ÔO|uG·q3¬Ô‰hôšì[ѱÚs‘>Ôt8M•’hŸ_€Ï§rÊEÌæIQ%Ö²»ÓÞ“G'’1³“RÛ¤[ ùµËò…ˆbW™Qªë1úE÷iîj{™èïQ§ÔÖ£$±÷Öd¯¢wÅ7Þÿ |>«F†’0f°›”[aê÷RVbe{gP„Ü“â¯"ùrà¤0Ç ¦¦éø0›îÒwßVãþ¡Î|E›19@ù„Z?.`ÔÈÁÒAC‹²c& F3 f‰DRU»#‘ãH3.Ê\­£wÁ 4hTsÞ`ý£w¨ª†šc&Î&¾–5‰¨Û³—rÕ)ìe^««›;ê=ì–|ý:OKF‹þ’½úsMNÔæ–²Ge#zI$DsQík‘×1èŽDTG±ÈŽc“ß§5ÈŽjÿ ˆ¨¨d™‹=Œ€0À` €0ÀXdÐhèÇf¤† ==U~XËö£2Ke4KU¿zª ['²ª&ž»¬®šò¦úiÇ?{mxæî Úvá¡›JÞ…ë.VW¥F¼ÖíÎôkž¬†½vI4®F5ÏV±ŽTk\åOHªž\汪繬j—9Q­Oç×òª¨‰üÿÊÿ“¢X0x¤†“JÀ’X¤ ‰‚*I³"2Ò†*d ð-×ßMȽd)_®Ù¿««}6ß9û3!›Ít»»9Xú:9\Åj—:ôêËb¶5KÖÙF¥ck›V ÊñË/Å‹+‘ª¨x|ÑFø£’F1ó9Í…Žr#¤sZ®sX‹þåF¢¹Q?ŸIì×[vbˆFmeׯlè°©=AV]a d†‚GcÌG1.|ŠçÈðØaÂÌGˆÎÛ3"»È+ d1ô¹¸f“(²åäÉâ¯!¿•é`äõîdöºŒÅæd£YnÛÓÓ±jÅ,ê±æÕYtb]»t´ªóÒÏV8:8Ûµñe½6¼t©~mO¶xVxÛ%f,“#—âÖ1Ž{•îôÅúÚæ:dG*ÂÙ"Y©,jí4ï½ÕõñY gµ±}À€}ŠßZŽÈ,ø“5‹DŒ™5á·0ÊöSÑ)zV$…4#á#Û¼j{aóÆ¢çP~ž{HúZyz3ç/0úÿ›£ßó/iËÓ¯VvSÙ£FÖ ËûïK‘ªçâ?˜Ì|šWôÛ¹Égõ«6«­]atŒGýÞþ,«2~<îs‘]œÙ}}PÈÏR$ÏôƳÚ?Ôtiå>`zÓ£'«cñ™¸HxåebúmLjà,—x ì@,kr/•žÜ1‚ -%9Ž8woì§Îz½ŸSMlM£‘ú'ò«¬XÎê³u°/íÙfOìWÀÖÓÃëtgŽ ¹ûwõ[Z»9Þ#Z³Ù•Ÿ·§:’t:0Ôý‰Ðs̼͔D|ŽVDÕ’â,¬d°1=µñ²?nY¬Æ©ö>6*±!b»í÷5d›\H|ÀŠèÖÛePXó.¼ØL¥#étÔw0 "G´+‰! ˜ì†eS2¤¤#TWs;5”­.¥ãäg– <±b\Ÿ3ôOsIÒñ–;^_ É|Ôù{¹oöœ.-– è²ëpÙù¸{ú•Žû6ÓXÚ)6C1{½m)9ÞjÄKK˜Ûò ômb%–ÖžZs$‰YZÓ'ÔÕ{­9òÄÊéUíÿw©>ʱ±&™å4u5¤‡¾°j:_ZN!FFIâBç½­ö§¯b}loj†#&{R§!JÏ’GšË‹X( šÖ°D$R•Ä ÚÕj“Õ@;úU™úyðäÖ±z¬ ê7µhelÛç<=jǦÙòœœ}êÙPvNÌ'•§6=Ë‘ßÑì¸þn=¬ÍãíÐãºæáÓìtZj¦²‹”ÂÏì™]x)ÛeæècðÂÃ*î@DÙ‘! 1¸LNÇëOÌòÁkn£ ÏòeçV£c´ÍݵŸ—-O¹Z¹<5ërØý5ÈeK¢§I¿‘ÌÓ‡6®}·ú=Më„çs‘[Á©·ä䮸š÷¬Žõÿieêéä…ª‹#"s¿‰œ¯sÜÖBÈ·\/ tôz+!'"ž}ÀÑp»ŠŒØ54V"ᛚàMd~2Ìg1Cð÷cFŸ#>‚û`Ñ9$ô‰íÛŒd6»úíô¶34rkfs¹ÕÖÕ½Þ^«lèó]–ÆÔSÅÔ\êóµ§¶›»pÚµ[·$˜¼Þ$ÎËçkg6KV-\Å‘Y‘½WÊåø¶)—Ó&¯j‹ `|hß­ñ«Z÷LÔI&‘>r¹þšÛú›Cœ‰VPù\”Å¥N]¼Ž4^Hª®d$$¼¿lf@z^UŸ,w˜»žHÚ!+±È’~q,A¤’D-ñò†×óóöz½¼n‚|9»*RæjÒËc"Í­”•壛‹Nt°˜ó¹sIÌO˜ú÷ùüwÍ—™r½+6¡žáÙõÉJ•Ücžª¯WûG=ò9>?bÊôI&Gûd²"=ís‘ª›sŠò Äÿ›WX ,­¢;ÀTœ¦1ªruá[Dþ±wEôOWŽ‚ mJ4åU[²z«¥ÚhŽï]ò¼3ú— ^oú=vt]Ë&Óz6óîµ+²cÞJOÍ]x©9Ë7ä¡"ÔšÌLd“×d1Ìé ÇÓÝù[>ÿ¯éû~)ö,_$Ö®ÿ*Äz|‘«íUU={_y!BÇ,MÈñ¬84ÿ‚¦WdÍ»U‹áƒ|&ª §»÷ü 4wl«ŽbÏ…=;Fé§‹žå»L©›V,EBºÓ£óË3)Ô[.-ZŒ‘ÎmzënÝ«K(È–Å›ü~Ù¤sª#ZÕrµ¨Šõù9QÎø£~NTÿ+ñk[í}¯Å¨Ÿáçå¹ô` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À-­á³²°¢òáúµ{"Ò_dññB2•7l£a’'‘ô¦ÙxÿÆUäeÙÆwÙ#À½ÆŒˆ¶cuœõ=êX·o¥Ìv.ÄðW¬—ìcË+%·™“áuú´¾¶A« [«I¡ù4&ž´´¤†)]¤oÍaÙ*»â’"zkÕžþs=ûb½®ø;ûÙñr"¥~]¾-([öÄM¥M¹„òȲ“ú˜¥O¹(M‡\^…};ÃwPéó2\“A# Z›]Å’ŽÖäf¦öUŒ ŸËGšˆt‡úºò/ŽyœÜ y¿~Ié·œì©öM«½Ìõ>©öÁCƒ³ÎOWñ,Ö}P»Ók¿O¨«‰W•åôy®oÍ ¼E¬—&|²'Ԩﺻ«ü¢š nþ]i³#¾Mr9͆?„+#¥žfM4|pŒU{Ù_†w2 `5ÓB¬N–£-—3i6Ud÷T¶bŒŠ×¡,}4·˜PÖs «onfç²½ö5öÑöò¯—ÿO]%èpô9©³{›œãséùýÎô÷9XÉ*øüÜ£oS¥¿Ë¹ÜU"òv8Dü™âñv:gxºiXÅ:†´-YY2>«fù:¥ƒQ³¢úv›äd-?%*NÛ_Ú‹vOÕø&ç‹ù@›€{ÙÚšaMG¢qÖDæŠDbRls_–~ä ®ÛFå Æ^—B7¤a6PãúìA¬æŽq+|63—AµÿIx9—«øŸ²ÄîtötìUÂnÎÎn6ÿ?ÒR¯Œ^ÔÈV W<‹{=ÚÏŸs9vù›SáE^”XõíkkbÝG»+Õ¿^Z¬ˆéV8ß$2ÂåV.ƒ$V+›Q¯HýDôŠf¤ª®Y¬ŽK£;;_öÉ÷°GL—†èÅÕÔ±S öÖÛ„&D˜–„0ZZl¢µ†²OcñéZÏ>üŸ–{IŒm ;“MywÈ'é9):eÏn]ìþ‹'5Rô7ë ¢Åé Ÿ$ÿ˜‹äæ:xšŸæ±ªÆH«þ§¯š5"|2K»b¼þ4"e 8:O5åðw¼lw*¨’$Ä?OínHSß…ÊãŠ3ÝaäÙnƒñî\±rݰ-¬MnsVîî}¬ŒÙG2ôkÚQ|•.×w©*܃æ‘Ú©;c³RvÉZÌQXŠH™u‘ÌÆÉÛ$oOl{WÛ^ßjˆæ¯øsW×¶¹=µÉéÍUEE\“1g±€0Örh7tŽòXg(i0\¿kÁ•"é&+Ðg*ú݆$õt¨ÿT9j›¥’o²¼,¦šsv”/-i¥+kšÛl í¯2Ñmé!}†Ru¿‡ã¥·×ŽIÙ]dI o•¬kœž~Mù|>Mùü~_iòøûõòøû÷ñö¨žýz÷ü{ökõ¯ v|•["¨*Uñ–É/{g³zøˆˆ.ÂS÷ÙAO tÙîíœiªÊ$º_Ewß]y’3€í¤Ðäò™Ëí®‡w^¾6ªÐ$éjèÛ’+&£nA=¸e²Æåc_þÇ1ªQüªÈÉß÷Çðª®m‡|ÓÔ.cQÎI?þ•Fª/¥þ}*z5l—¸´î e #&ž ±ÞºmŒ×±’{v‘ç_ Ë&ú·EªA‰S-Q$îÛô22˜{ñKÂÕ»±ˆ†–åxG½ÑéºVÝ\®vß/Rëêô»Yù<¼siCóåjWêdšL+Oîf’¬Q!¥% _™–¬$‚’Ö²$ÁBëq 5R!°3EýÞ¦st–Ûùú<›O/ëu¹ëÍbqôß6¹}û99½æKéÆ˜kc*ìW««bF_wn‡g%«ú*¬ÃÒJé×Ö{+»î’ýµ‹̉²>¬Ÿ%û==ªï¡ÈŠÏÉk릨ßɵ#"½&&ü ©%$d^iÕr8½0H5nÀ¢H쬂‰%óc6Ç ºã²¹„sŠšôŒÔd°žÆa¯x˜·ô©ÆeÕg{s~¶!ÐT˯Ëxùý~f¿uV÷ScG'/K[Åy¾C«û4òлkƒÓÇÄÓþ²Þ‚¶ ¼z‰Cr·ýòÃܵ[™b'=g·øïŽ«›2IwŸQßb#š–Y$¬Jñ*ÊÙ®‰N<§¼¼šJ ä`=v°«k|{ØØŸTgòêÄc{”DÌ,nC3’O—jbM:Ž@Ь8ªÖPÒÉw*“Ëd}zTÈð…p²: ½“¹ž§‰³Í­Ÿ1sxm¹xk¸Wµ3pòùÈæ¥“Ïiô2\\×t||ÛÛV»lòÐãdãeù/Oäšš2É¡¥4QXØóæ–»RËdk+æTt“2$oÏê°‘FÚωßrÊùMšûÉÍŠ^¯S`r…òÛ¸¬”91”ïVáH¾ÜÕ]«e° œ4_°0…Ó  *{±à¯!öTŠÅ73œU’³Msô§É§1K­jhd¶_·Â·?½vz·Y¯òß]ÒvWuümÑôL¤ëNÑåyÞ‹—è Ûå³yŠX~lì›r¹Õý1þ½i"¾Yÿ§ÿ/B !®Ö\†—Çá<°ÏÅ;æt’Àõȇõ·¶RØTqëGÍõCèíVu”ePälˆ»×aƒ‹€ÜÓȧa­Kc–µÛÙש™7ª¬£Ž`,Š0»f}ì1ÛE«|]Ÿ)xk{N ëÍæµÎzuþW·ØÅk2•xo]·ÑðÜöÇŒù9%éà羬9;VŽGõ$õ,p8]y›)±ÔûJZ2EµÈìïš~=ÖV½Ê­ka³,w,XõËîT¯3äúQ͵,_s~¸2żhvQÆU\·±Óûµ‚‰5g¯ „ •uê/|¹Ô«JÑ.k„¬ÄšÈV£lf“¨ê¹$m+À‰›Ábâ,,3U~,Ž9úü_ó|×SÏhìÙ¡É37~Þ?’µº:ñ翪êžCù¬êÓf3NŸ9‰ùý97rõ_Ìó{9ù½µÞj¢áÝUJò]šh&dhùþq6Jqªô‚ôg¹¬uY’V$ObM4o|1¶l°_‡¸¬¤buåÍ`L¤••NL™ê v¶­¿(‘—²Í™5,Û°WbÉ–J«W–ˆBrRbž…Æ“€ÙÅ\˧–'¬åQ:â¬Ã[ýmld[wMÃs˜y]geR®w‘£—ârrér´(ÐÆOqܶ6?U#~¦UK_ÕÕwGÉÔ‡æt`Ÿg¨ëê7›ŽF¤6f–H+¹Ï¨©bÌ’:w¹Ò~e–O$-†:G5ZÈþ™Ü²M3$Ž û‘Ÿ‹ŠA 朥¯{CÃ…÷^ð¨j((Q!„¾MQÄ¡ÑjÚR:QÒ*°µ”$Ó™^ò™Kiÿ¥°žIŠÙL„Oú¹ì›v|$GÒø‘b¬à;N× ½výÚîeª»›VE¬7l2ãVdÇnFD¼ßÝÍA“O:Ì­.S¿Å%õ 7ÿŸv«V‰­kWÚ:(à‘$gÖ­Ur}‹$‰7©–G=IÏ¢ýrf¿)‰‘Ž‚(1Ñ“äø‡ÚÅc®ÉˆÈ¯•}¥¹-‡L ’°có šä¥:OÝï,$`‘]Y=a?ê É÷ht•4¶jéÙè[nÛWsj.ßON´v³8 õÙ]x¼mÌJUy½,L(êä;œ…1ªR©MÏc¯S*“] ™˜Ø•ªèÚ÷}vÅs£}¦ª¯äIŽtÌ’UtŸrýŽsü›~'AÔP{ujE¡"„Mìt~ ¨ª>¡T—øîö"oq#\¬°ØÞÒòš´5:Ò8ÔR3‰áòIRE¶ÔŸ0­Ÿ#v3Ïqúû×.àrïùãÓÖÇÇõ•¨6娘ËZ‰‹Qf¡Ï®œ×›jÎ^CéæÊµRâ:•âš[ÄÖË2z‘Éïùö¿'|Zª­gØïN—àI^Ö¾DsÓäwQ:‚­ƒWÜÔñ*þ& ±å#í¹¯Ù„cò¡”"Tð¾#ë"¨ÎxX‡;‡á·ÑjãÛÛ4@zHµNÃgµëº‘;-ž“gC¬GæÊ$÷ì~÷ùjÓζºL{-­êÐS­ñ¼²þd“Eù2Ï%—É3½Ç^¡üxázz}(ÄúýHç9íøzøü\®wöúø¢/ÅÒ#a€0À` €0À` €0À` €@ÝÖÆÿ?þX¿å7¹ÿÀ` €0À` œ|ÿ„S?×÷1s`€0À` €0À` €0À` €0!£Œz$»EEl³"# 5Að÷ìܧ²N=fé5[:lº[lšÈ.š‰*žÛi¾›kÏœã?Yw5ÌæÅÑÀÏ%tT?«eYmååòX·këçmçì:üûu|‘Zì¶sùΫ>vï)N”Z¶íu»3âMÈa¬sÕæ™ë ­8ó™ËYß¾y±¾'ÇðHMÍD|ÐK÷6w9XÖÁH–"ÑÀþE«ð3Á!Œ?·:Ì:rèm”ïqrH]žÊÉnèëIiZÝûXÙ)ÿSО&$•¥‰ë߯t¡èµq(Pí¦“w>ïé¤Ñçn^£_‹òµ®~\¬-·—»ÉÏËK|ص:™4¥Ô«ÎyŠNu×jò;7¼•øÐ·;_¨ÈÕò¸8qX=»0²fµËf‹eVοÅ:NŠô‘У5›?íøºÄq¶ŸµùÇ Œ¨’H»Œ•ù”ˆLŠAÅ&J¸ü>žnìTRY—Ï“¢ÐÔ†/!m×»n£JSR§ ö'.vêžF .™GÒ©WF&á9ôö·ƒÙýaæ\ÌÍ^ö§P¾I×ý—Æ[Ú˜œã¹×ÍG7[6_%q}£ò;7t ÙņÿÎg¿ ÅÃÒgöb9Îõ7-è%{^ÿÅt‡Ùv9$ßj#ŸÒšßeo©«ŠËR¿ê’V~:¤k÷Mí(ábêÏ*Þ³ZöŒ._½‘¬¨´¢ƒb6ê®iÔ$zL-)вI\E¸éƒF0û´V¶„%uÉÝ.¹ T$‡Ä¤¾.&ó½w•øÞGw¼¾ÏWäì[ÚâÙo&c±96feϵ-œI¬mó}S:œÚ»÷êï™îàóä\Çï¶ï¶½"•fŽ ¿[c°«YöØ‘_"I6DHæƒè{¢k¢_Ÿå?ñ­ír¹‰ËSpÔT»®Òg¢]\—5`ÇbÌè-fl‹˜FëóÔhn¶N¬|ÉÜq¨‰¸Ùr°²:䥅8. Fªù\~#ðrlb¾9®cy7.½ÈxoPæõ5çò2áÏJž&§IŸä Þ4•Ý}yáÓšî"Uås<³c:*œÎ-Ù£ÖÑ[ú_\ˆ¨Ù)=Z¶o>fF•>Ôs¤ŽUmÄüuEb6O”ï¢×«¦•Ìôêøãä<ˆM™×í-a$ÇÄThQ~›GÙˆ´'v1ÉîÄÕk-ÙÛl«¯¥!èp¡ididÅÚƒ fj_qV’^ȉmk”­'é›~’~>å[;Mš¤~qÑžï%Ïs9Ĩɶ©øŸšµäš9µÓ¶ž7C…ÊëÍ¡kzz8¼GU•âë’ô3ÓTÙ•!K VƨïÛX±4î›ä©¯LÙ)º)£ƒå$RÏ1±#¤³îµ"M”ŸHûµfX„µûnz±ãI»© 1  ÅÅ7 ¸XgS‰<êC h#Ö:–·°«~U„€S‡ËXæ Jæça¦ƒEçÏrœÅfñÞ0¡·ãë ìÖx[²èö¯è[Ùmøïìu}•Ìè³sf¸E‹'5Ô|7ôZµÙËÑ«ƒŸ»FõtËÔžg-‹¯ŽÒzîቌllpWkÕïFûYhÒg÷}Ît’¾77ð#Æ=Ç8n6dNžShEcµ¥PÆÒÞ7ZÜ›Vdx0„–â˜õúOÉ91ä¬Ö…Th5&ô4ÄÑ¢T3–ÈëQ_nþ¬8Œ msœ·?›£Î÷kéõ]ŽAº½WUe£&W‡äÎÛ.kÙøiOÈŒµ}˜DáW„Çw5…—ÔÜ7 Ì¿§šFMY#dÒÇן¡ß$’Ì”â¬ôkäùKSâß¶¤®u©id| ÙM¼IÆ·$öÆ#2h^ß¹¬‡fMχ”¹øzª:“æß19!•@j´.1‘/3Ô ®‹NÂH¥ ¦!1iYºÍ«_˜«‡5.+‡‰’x¦‡9f§ n¶­/››g½N&?[£Çé/9›½dxkSF¼4ùëù™ú[õ“žä³¬ˆë6URó¦GZk˜ïH©Wò_*Ã$,ÿJ_öü˜ªéXù¢’•çž²Õ3Ý@¡1ð•ŒÙÚƒÞ/#RÃÝ£gî bâ\WFrAáLˆÑÈ3ùù­ßbmh*BTKUôߪ_+öއ¢ßÒ¿Ú¬ó×o‘S_N¯@ÞjܲZµÎGNµˆ±iû¶•`­½™C? ­ÍÕgû„¼“+cÕ¾‡y=Ã_Ò/â}lX¾æ¢5&W+VGoÉ]Þè–g-‚N«#¶„K¥”4\zää,üsǦ°¤„å µÈ5[¾ˆÕu‰— "r ‚Gy<xRiŒIÕDàÓi>PÈ‘®ù2EùµþÚÏŽË×êxe}^V;ÀãåbUi˜Ì¦ÐÐÖ„]šDÈìdlñ7Ê#«ŽfîM¬üѹGjXù3'œ˜póßKjî)sɵ¾“¦ë¢Ò§³×QÖÈÞš©«Ew fªQ·Ï:»dXÓ* ¯B†J¢ÓΩG:*QAû}5†»iÖl0Áõ1Ñ×trDŽj*¶XÝòlÞý{ûUþÞé?Ü÷9êå_›½íMÄŠT«Sª ¡¶Cß dgvM·*ÐQG#žÔ†Éòí¸ò.Étù’KhÙÛ‘c—pšŠ²m²QݸÊsg²Ý–бf½Ùè¶y[N{•"µKsVG¤2Y« ë°×ìt°EnÔq=¬±*>ãâß’?âŸ$Ej;Ò|‘®V«š‹þQ­jª"úUkUÂítÓ^wç]uו6ã}ù×^8ç}ø×]8Û~xãíÛn4ÓM8ÛŸ·Ÿ»¦ºý¿f¼qźªª"*ª£SÓQUUžÕÞ“ÿB|œçzOãÚªÿ•SéúÏ€` €0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0¤ø!R€Fã'Zúà’!eñܶõ‚‹³Xy¾¥šÍÝ·õ ,Çjá)}ÿˆ‚É+®»ë{›¡s#F†®|ß2í] 6>¸¥ú.Rž;5¦ú§d°ËõMõÍ‘?ãñ‘b«WËØÙæ==µísžÕ=µÈ¨äöŠŠžÑU=¢¢§ýÖÒ*”–;«žŸ¬!¯Õ¥\´qU§ÀfÌÙBSˆý9Ž­‡ê[‘³"£ŽZ¸2M…J˜ o%…E ‡”fy¼Ç‡­ƒ;¬Ü®Îò)¢ëÜ·¥ž}çY}—ZµvÕ…–ÊèÛŠþ¥š‘K¼­­ì{¥ÊÞØ§z‹êV‘`WÁ­UE¯ý¨‰¤oÅ­jzOƒU¬sX¨¬l‘Å"5$Š77" WWq¹ÜÒÎ b³1JÇ0I©yRD4±¥Òã]^»É×#ø~¦œ¾r9˜‘ï¸d: q—úÞ›SžÂäô·4osœÄúv9ü{6_5,y6$†m$¡ÕVl؇òV³]øñZží˜bŽ{÷¤±é°BÉe‘1³LŒl²5=:DòTÿ*Ô_Ëü«Q­UTcQ2‘…b À≳ÂÄV1ƒF U |›ÓG_(ѪI £ÃFH,YÖÉò¹oÞ¿yºÎ.ª˜‹wï_¶¯]·rÓ §U–mÙšÄì­R õÛ4Ï|‚…µ©Ó‰‘Õ©^ ð5ÃQ­kSâÖµ­Us•ˆˆ®{•ïw¤DOosœç/ùs•U}ªª¦Z†À` €0À` €0À` €0À` €0À` €0*˜J7jRóI’ðh<4TewÍÌ6“¢(i7¨E"çhϨ鰳­–ýwÝÿ.f»cÖ9Jv¯Y¨¯åºÞ^ï5|½Y4º®ŽÆÃm>aP)jè¶1+ZÃ)ÝÏŽîYœuÜþ>›±ÅyY’ ^^æßÁgR~jñ×Ôëoñ5Û¨ßßÛ2¦QKŸÙê=}‡²ÖžžÉ¤3å·?v‡ö`ì"1x”ZqŽ w$Åÿ+/”u  /sV‰Õ™ËºÒ0žÁ GLŒµ™¯)hÓžô€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` €0Ã|DxÄtrIó1íÕx8rn9E¢*.A°‘,tUÆé§»Âe³9¶»r³ÒÛ3m¢®I=ü>Hâj:G²6«ã÷5Y&‘±DÄW*"¾Y^ÈãoûŸ#ÚÆ¢¹È‹sV»ÒºUlÜ™•®\|U`–Ĭ©ŸR{÷í:8š÷¶µ¬Ý¹:¢EZ¥yìÌæCn²;/OÕR±‰|Ê>ÌÉxüÀÀ¡ZÈcÚ,R"ú(?˜hpÎʵ Rb}ı¾€B5Geì< 솨ýîpš=&F]ˆë[¹&š½É¢‰,WI¥–¤•#ü8a|­’[“ºÛRZŠ®Xäö­øû6áO"w¸÷w9îsZÎnv¿;~úäl;;>CW~ßõ&Ž•zÔ£ÎdÃ+µ´ç‘±×K”Ö6ʲüSAÂ;ÕZM7knÃm&ÖdÈLjwwDVÐ-\ÖY*Qùtœ„‘vÑéQB…N"E Ò*‡rÃÑKT÷Õ< .棬Ýnµ=<*m¸È«^Û©m(šìÚ6[^Ý™,¹µíK,ÓÉ6)Gí©éQ6ÇOúXèbÄæ'ñïIÃyS¢Ÿœµ¡·ÊøÇ¡¿ÚtúÃÚõX²kóØu1¢Ÿc t®èãºå8ôa¶’E{Uò– ¸à7l(Ö&Žlb;>ù€) Y˜öÒAIj0ÎáºM«ÔµÝd6ÑnåUZ¸å=>Ä÷ãYFFÅ ªUîг^vÍ^´ïŽ 0Øuu³JئX^ôcÑZ¨¾½«]é?…4W‘­‡-e.ð».É–jq„À÷m€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` ñº‰§÷>"š'ñ7Õ=>þÚë÷ÔÛíû©é÷¹ãïo·ÙÏÝ×·n~Î~Î9û3âª'¯j‰í}'µõíWü"éUÿÐzkÿ—Á®wŪ÷|Z®ø±¿îs½"új{On_Hžÿ•5äÒÙ€×~ò¤Þ@Ö4ÄQÄЩBy!í‚7w»ùMM8Ýgds§)4É+²h2náÊ©#¾>î­ ï¹×l2´uêºä²ËüFØZõbúTöçÈ®OL‰t’/¦±®r£VaÍpgcûk9Œ‰ö­koÅÍP£KÓíÍ©5vÚj=ŽVÇ^›!rIbý™a§UˆùlÍ 1¾FÅø×p¤V¢ïÐt„ÎÍw¬¤›ò™x™åQ¶Š²á· Î<±fÕã÷I»åãg ‚C¢’eÜÝgœn-ôAÌf·_cQ]-Í7~T±¶Õ¸¯âd¶«>?ß¡w>GK+þmVÃN¥•sÏöߊ5ÛËkôëÁÅ^ç–<Íñ.s`ó×ùO(ymë+2Ë—[Žæ{ Ð¥]+ÏÚþ$PÛlUÕ’$Ζ ^ íÅóL@V¶.·•ãg£úüM¼.–\BF_ %…Jeiý“fÖä'hØÍY3xM§05¡M8=‚ &ïmH(_?Y»AuvŸž×Ç+ic:&Í$PÙ¥jÕ -,é/7E¬cågà-&6xãj£ýH³Nu<‹ú|ñO’zÈø×ëæ­oË”fé|•„™µnèâôØXXœ—Äö•9Y8ÙìÙ­FÂuqôÖ%˹nV>»V£så,ªtìHb:8ÐÌÄdnK57• vw;ZHn*yI òb¸”ÎI$]Å’Ðk÷Žè$LŸØŸ*-®úÊ(òÙ,Ár:ìšäU¬×ší¨àžõå³5YÖÅûމ'³b7ÕDŽG»ûRYnöš'©óß‘ºÌ]NræÍŒÞröÖ.¾g1ƒ{W+•åcÅËÞÊf?)ÎE ü¼\‹•÷¤uÚ• ÿUôiz25k¤+aÃÙ.EË6,Ú8.óB%œ6lŠ “ ö"S|ET´ÑG¯0hݹÙU´=‹=wá»Fé§ lq±Ò9Œc3ÒI\Öµ®–D‘#äTDW½"Š8ÑÎöäŽ63ßÅDÔ3Ü·f*pÙµfÄ9õN„SÏ,±Q¨ûv¯¾­8äs™Z³ïÞ»uÐBŒ‰ÖîZ²­Y¬J÷À;3¬3úÞ gÔùƒ{Xä†H½m%‹–”C'ïãÖ,~e‡P$!r’l•OÏבÁn¥*hl´©±µ×T Z\Íüêt™Ê\e6V±“fÙ­-ªwß_F’þ\í‚ÍvÐr$nµ¡c>¼O´©<¶›2»ûzωó%Ùô%Ÿ?s–º)öqüŒüîÓs?¤äªëñÝC`Ê—[^^ªn,K'°Ù¿_ ŽÌÏÁ›1‘+¥Êbý̞ǩ[ɺp+aÀI£³ ûQf‘¥â¤âˆ6mY;l´±¬¸yar29II)FQÞ^Ê!@4<É»Kª½xo×ÅÛjPÕt_2ýR²œóU–£ZÜǵ֙n9£³$¾–Ã.@Êÿ;T«¤ìk0[Ÿ¦í}>ScÉž.™ýg§5_:?ÏϱÑeçïQß–y»zóE??s>ö5:?c1ìózvvR¶M¬ì«2Ø›)8n¾îEtVQšÚ·všJè¦í\lÝz ãM6çdÙ«¦ÎuI^5ß–î[yMdöÚjŽk•ÈŽEV/Å芊­rµ¯F¹ýª­s]é}/ÅÍ_ð¨«Ì†h› äŠHÙb5š»ÞÇ1³ÂÙ¥®éas‘XÒx'^ÅsRheWçÚŸlúS` €0À` €0À` €0À` €0À` €0À ?îëcŸÿ,_ò›ÜŒà €0·Þ9Ì.°éOp,«"2×®ëέös=«M¢ÙÈk&©¥§å0íÞk³EÆLA}~‹­vl«R*è¾¼¥¶ÜržKµ^q×ëÒêo:65Wô¢…íœÜý5Fßæ-J“®·@û5Ì–KVsbßå ljNIÚ†ƒ•C6% 0R,Óa@z¿À` €0 qðþýLÿ^?ÜÅÍ€\vÀ` €0À` €0À` €cEfQ0[œÔäŒ0Mc!†H¤. l-Pf]b0©7ï”A“6O€2Ý%Öq¦œ(=~7ç_³Nv¶–åXtžÄ0þ41X°é¤lL† 3"–W½ZÆ1ï¯3QÎr'¸Ýï×ñï5C›ßÔn[²ñ´´Ý·¥{"ês^³§©›u«Ô)UªÉlسZ¾¶l²ENwÂÜJß—·|a‹®ùÖRàR‘Ô“cwu„1;KMAÓ/!’ÆQñP#ÇãhN$Y4Š)ZùFÌ7´áÕ›È$È)tTåu!Îî³-Ãf,VO·¡j'ÑŒúv™^*ÏY·l]³f¦lpȬ†fĶŸ;›b$d35~KÒp~”»~{S 瓦Ìñ!yü+—SÉ5º\ :÷ºÌ¬©yŒžg{µ·¡U–ôs¥¿|¨æÈ½%<éõ3v¹}€ÖRGÇ[uÐcy<úÑÑ`«»Nxå²!´|½—¤µÓåàÀRÝÁ%[« Z(ÛG vQ'z3å^Z:Çz¾m‰'o;lÒ{«Å~­÷5!G»E-¹î£]Ò+V›©ZTsUQèÏ_9Ÿ¦ÿmvصræóÙ°úŠ‘l^ÔìxNR ¤ÒuX¸§óðU‹©Õ{a¤É£écé°šè¬5²Wu„‘+íè/GhXe€ÊÍw ŒMfÉg£éTæ:Ö[&s7@·¼ºŸŠ/"p[X‰'Ïw]~FÄÙ‡bÕuùU¯)ñ¦‰ñ–£ÄàÓ¾Í'Ò«vêBÏ«ÕÛnË®¤¿sïÅ-‡J•${ÕÎúê2Úç{o¯H†¼êT>Wé9+šìöOmÕûøëùTt½%ÚñØD¯=f¤¬dŒk,IZg=#•¯‰edÔëË ŽcãG1QU}ÌyN÷ªâ\®æuíä¹úù;S>‹§žÎ==Ìè ’å)«]Jsú=š:4¢³7êÝ|Vík>0¢?¾º·!žLšÌ. îšâf5]k‡!òëàíë ê(ÖP2@ ©éÏ‹ vhÔ˜Í~cF‘”%%grX\Š^†ï/bõÆ[×ÞÇüÈÕ3žÊvö's3ê2Ôv!¢³Ýúe‰Ð-k3gÌŒ¬–¦¿a±Xé~³ÅuÈå9¹ùßøŸÈëÍ]{:Ö:.{ÇWÜö;óáÝÈÑêY•Ë®• ÕôÓk;®Îu¹0¨r™Çüy ×þÎ×·¬ œ ymÅ>Š=Ðdí„‚3.ü¦Uã稌Qè‹7&»$9]—**»}_Ym@ ÍœÈ0:\ýÊRÙŽUŠJ¯H¯Gb­º‰+ÞôŽ[~(\ÙUˆÇ9žÜ椑¹Q,JíAå¿õþ,éèáÜ Ëõwë:÷+o#ožê¿¡Z­i.èQ“”ÐÓŽj1Ù–ÄZøGËRÜqºIhÝH$®I *0À` €0À` €0À` €0À` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀÒý˜ÕÕß]ï»ðe©:V KÚS|nìx)¡ º3:nÀe¸ÞUoÁ]ÄØ–Cf<®øS–üªŸ }ý@ó ¨¬~ÃÖÝfà‚~÷7¦jªf%X×!Xy@ëJ½¹ÖÛ†“AiÞÊÄ^öe¤ªÇµôKm_Zî ARcºþÞeÀzÛÀÃ,[ QÁ%¶}Ÿ-¯ `HÊ&s9Aâ#±ˆè†û»&hÑ7{¦Ù€æ “ÝwN—ßTÒO]¶Ûn8ã­ùn ùbêóG°ìEu µ½Ãí$¢ž´³ u¤MÔšk×{2Ñ‹Lâ/ 1Ì`SI©6r·(sW jÀÒ® x¹§i¿xî #ÆœF__xÀ/Öa‘Cü7ân3®WWnZÚ,݃´z¼&xñÂÇÀÆ*¶’ø—g@Ú0¬¦Æ‹E4JZH9’­@ôA€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À` €q´zÏw‹ÑÛmßµlÑë–:.–ϳ~«Ô»]·ò²-ž¬8‚-SMRp«©£¾ûµ_„ü£Ø¯thö¬kæ#‘^ÖH¯kæûù#^èäF9QËÑU®õYÕ¬6¼W^fÔžk ´è¤JóXªÊÒÚ¯êÔŠI«Erœ–"c–HYj³äk[¾„AlGqä3+(.ào¤.^À=7X=Gø-<xýÜNPð^9$X+‚Õw.G+Ä›Cõû,úTt]Q,\Ñ©»R•Jο=yób¿Ûz ‘õ*KR? š¬©v¬—kwQžÃv›?—Ü3ür¸jéD~¤Ø³w`y—DNÍ?r¥`8Ë ×h²jÉFsX‡‘:êiºî\{ƒÇDêÖâ)þl–ö.hï9Ðç*~å£uõÖÝIïO#—29£ÍZ¨¶büZòÁcêõ3\ç}|¸Ý¿ÕFœÅN{Ç\çâhaÒìY'ô_ÌWÖN{¢Éås*@Îâæm¾Õ»¯ònkPÔÈM;2h¡‡ñ+ÁJ`Æ¢ ¢aWiªB-(3»%~â¨jæ_#/(0†‰}ÍRÑŽÄ;իN4øM™ò“]xå4¸ûeõªARW…ˆº[S+Ò·ånÄÖ¦j'¯HÅ–y>,õé¬ôÄþçm®ƒS Ò‹_JÂÉ¡~klÇòŽUƒÆÏÂÍ‘Ïù+Ýi´s*¬ößdÖIܨ÷¯¬‰4ÓE4ÒI=I-5M$“×]M=5ã]OMxã]4Ó^8×]uãu׎8ãŽ8ãŽ2áÒ"'ðˆˆŸÂ"'ðˆŸàÃ=ï‘ï’GºI$sž÷½Êç½îUsž÷9UÎsœª®rªªªªªª©ûϧ‘€0À`ûê)¥Xå[ÕÈçþ5„–²È¨å‹äÖ¹½âÔCÂmØwC['²åµí­íÌŸ)6³ä»5ŒšÚ´›n„xúÿŽø*;sLý¦RkëÅ Ø%žµiKúä딊·ë¹ŒÚ›¹;¯·ð%ÇK˜"Ãc—…“ØŒLUˆGy£"Æ{Ù‹5 ¹5i³qiã%ÞØçlT£±rí$}–þûZJŠÜiÚÙnAgA“e¶»žŒ–i¤}5cWM]ŠØ’uGľ8ó&?GÕxï±ç9Ž¡õñ&ÿ…;U:¸®sÖ¤¶™ÒgóÚx|u¬îòm˜«ºÖ~fe:½mYes6,$·ß<Ê€HÔrˆbMŸ¬Í˜gîµjªnRI©ö²o[l°÷¨¾eÏp=Û¶Ê'Ïè¶Úo¦ÛN`µ…rC#^¬d2=¨äFØì‰Èö«£z=ŸÜŽïj§òŽô©ï•50u±™ šT§©‹:5 tñ¾ $Ÿ&ÒÒЉõ§lW+IVÒ,2Ãn½y˜ÿmtms\ÈràÄ €0À` €0À` €0À` €0À` €0o.Óý–މþ»Uoû„u¤‡æZ6¡ùþ&ÇÕ’.7ØÈ™ù„O¦‘6öŸ^ìg¦ßà&!×ÇÛÖü4ÀÑ)$?7u$ô³ØäQ™û»åCòÔ¼g²ËcÞõäï·ä½ŽPã¹ö™ŸSè Œõ.=6îZüu~ÄØ !À`{²3¾J«ÎÂuÞÏ·¨ˆÉý]²¦6tBÖ–Ù¤W¯’@r˜4ŠÞ´ ÚO`”¨†‹¶ ”K6”B¸HIÐèOcÄ[,@xxë[ÖqW@bÈoêÆñVh, øÈBÚ3ª¤{„Ž¬Ãµ,qo i<4äpÔšŽà±>\™"“DÞ L²ÏHºÕîÀ­&½³;õXÔ5½ؘÝƶ½bl tÞ„iغþÝâ<ÖÑX‡[‘³ëòpùiSw!>:¡Ø´}B—åƒu’.ê­ßš¶tL¯hûÝXvrµRô æÒm|[¹ˆë‘Rͦbï‹AB#€ ´GåæH;XûB¾îÛI± ùÀ)ÇÀøGõ3ýxÿs6qØ` €0À` €0ÀŠ·gojf»æ`RC²†d™±jê6œn`hŒ´¼A“Å7¨ØÀ"äÚ$³æü%ºÎ·ãfi?|†û¶ýf±m®·#?òå°«5Š×eά•­Í%¹j1ê±$u`šF"½¾•ÎkSà’HŠ­ŠG7|øÇôñä?$öÓ´rÌܾc?±Ù~×;›OžÏè­Wcn­ÍÍ\ú6Y–FÇ ³+l>¥YZÙîÕŽ}W+½{/:”@‘¤é"pâVð¦·ùùb¼¹ª{ › ÓúÖì1!—™V|ÈœEW0ìT}TiÁgÛ„ÅÛÜéoZ Ü\FÔ§&„Åw~{™‹m©•£+’\„Í“B(cš$•ŸêŽ™ñWF«g¬3ÌxS–Âë$òo“åßèéqõ4¯ó^%Éæûx¹édïøÊ1-"/kS¿§o:óèXLxw¢Î¯^IYcöú­Óþ±éÜÆq7,s±×|öØR]°1 ”& VÉÉÇå1Âs°ø´EóðÐ\¨teR£H¹~]R )¦3¹vô³ô[wõ –ž|sR´¨åÙ–½­ä«=:µ=Šp}ð,-µngHé&YUÈŒd-~¢ùÎ_—¡—á¯rœ­—±·ÒÝ“§ê»¬::ø|n]MÌ®‹w¡µ““Òj.V¤z2ààçAN ™ñÓŽu‹7$Ug×j¨‹H"úâ4ÜßÞš‚„Æ£¨6“Ÿ­x€QÍrSc»‚`Ån6o ¶mÓáøãîk"ÍçqòªØ©S:Œ0Ú}ß¹°R­]²AvÍ‹ Uí†6# ‰³¬ƿڑ1©é?Á§{o2ù#¾ÝÈèz.Ï«ÒÒïËþÙ>§M·±-=^g'=êÒéܰø5¯Í”Ý[v£õ3¯X™ë#Õ~K¼ó6jÑ€0À` €0À8kåÛ'î³püo©öç«6AWl=b\"ïÑ9SM–kê‘×Tœü ÓøékÂjýí8ãŒðèãsÙ#˜Ç>?—Ö÷5ªøþiñÁÊžÛòOáßO’ í ˜®[†½šÚ³[¿OæVŠyc¯oñž²×ü˜Z䎢EY!ûZÿ©ê¯gÅʪ@ž:šR•J-^ºš"®aDsbËJW“ÕÔl³#ü1ž†8³ÇîK±“¶8üPýÖ(`´ vkƒ9‚JK‰jÖ§;%Öª>)#ÂýÆÜ¹÷Ü­VXûã¹~ëί‘Ò²Óg’&*Ë4Ô/OõDuü£å>Ìtù©#}} v¼ªœw?C°å"dñÙÉ\»œç'¥wc.:õ ϳ‡6][öÛÜþ³”Ì[×S¾¦»y¡@3—|6iTÍbNîsk1–q TLq5Ñè¸ì`êí,—p8ÐfâŽ,(zØ~Ï$ÝÁ$\<¯Ö¤°\fÝ;™Wj?fue´¦±Y‚…ë¨ø2ç«;™¤ê¡lS¬Q¶DXÒIÚ×JŽ~+ɧ—QÕç'ñ‡IÍw¼ÏA_ƹ‘ÚÀ^–= ]N·—æ][WºËÜËŠÇ_«ÚÒšþ\wíËND¶ú™2M )"¯92nràÀ` €0À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ$W¯Ù¦n ú ‚øænþI¢ì2°•$Ž Sç×K1S»1•¬íhÒñ¨Àb:F?+4åQ­Èì` €0À)ÇÀøGõ3ýxÿs6qØ` €0À` €0¡¬¾ËRµLJ33˜YPa¥î ÜÇÖLcñžJœHÁBJÇS¯™*èH¦Fýü‚©%·ÃÁÞÛò—:m¶˜-.“*¥k—4hÁ ·ÑüwX¹^·ÛÛ@Û1¤ïb¾™?äH­Eõ«ë×ñµ¸¯ y/½è6ù¾wŒê´ô¹è:”×'œ×ÛJœ¾6®¤¸¶•VÓ Ð¿g/öšqÈôùÞµ]­G£‘Nwc1Ä’ë]#`[‘Ã*JÛ˜’w®k ÂÂ…¢®®£²iœ•´Åø°ou{£Ò! îX=xÕAȽßíøéÇçëî\ž¢sxšõæ[MŽä¡™ub‰^ÍË-¹$P?æ’ NïjÆ_ò›ƒ/ôéÎs™žiò%ãÝœÖ`Osœ¥[ªì»Žb;÷¤bÁ³‰ÍâÍÎÔ½§Yk>µ=.¢u«NË’Öo¯©ÿ!]~ìE‰;œmyÛÑæPÚÂy”B)¨ ’¿a5ÐXµ•Õ“+1í˜nưB)2Is‡Q7uM^9`ÇÔkÑ`t:®þ÷¯]”'J•G…œøî¤q9QŒÓ~”Ú0¬2#ÓU}GIéÓgËû}ßò߇¸þW—o‹|y±g¬É^0ú#õ˜Ým¾e÷¯GÚ³ÄÖâs8ÝéÓ}©"Î܃~n|j–í}*³njw©4Å;‘ÁC%¬ä9`6 f[nVf0¶åU3FW(èó—\ &£I(Wbfš«£ÍMRÌdrxÙ,Q‚”-KÐË„¬Y[-ÈåYZ©4Εӽÿ\‹Ú²¬¿Â*=Ö¶ò7êÉ>Eëqº^“Eîå´sõyû)Ÿ5jî{hɳsb¡Tÿ6‹-%&PJ>ÜèÝ]Ì|ˆù=’cGŒ€0À` €0À` HÞ}¬/ªòIœB¡t/—‹VG &Zb\ÍtÝJ"ù$—ba{¶7»±dpI“w\nñ$¥„ÛÀÌÞϳBí*S$µíŶ)ÃeÔæ¶Ç#­@Ds&IU³«â’)#ﱯDzlÿùs¸ñGa‹Örý7Ošìý~zö®~7I§‰EÏY‰ðaêÉUòEk:J-Ÿ-µïT¿NV¦iË]òW’&J#ý„êùúè% ‹YtG3òÓFZ´FÙÓuª» ‘/Ë¡Ú5.Š pÅìv•¿)b?'«éT°ÁFlGE,×è9‰ó«âS«¥…ùò}TÚÔÕEv^”²E$ÉKñ­ÔÌlÌ[rK¡$µãY-[šVGÿÃ×ñœ²{o't›ÜW•’©û‡['?CÀ9±÷œe*z3¥êkžß» ©s­7¥:¥{¬©ƒÏçP³jä¬nè5°ü؈£íÝ–Š„‹’—3Ýl\FKI^ÊÇs8 ÛPÒØü¨+¨ •Åã¥2|Öì¸åòˆµ—æmQÕ’xj=_-XjÉmŠ×ÆêÒÙ}¨ÿxgl6ëÚ…Õ$Y µV¼¬d¹YýêÖó¯o㣀©™£¿Uµó÷´÷)sÖ[-{QmÐÅ­ƒq: ½ Éôyý|(:*lÎÕÁÜÙ¡bÍ](eR«%Ÿoæ\×c` €0À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀŽìá?dëgaLü­œûEl“ù&ДƒÖ“A>ïåkj]¢iÂö™l ›uÇÇÀ; Yê*¶h®›åÏ«b|Ù4ÅV{åìÒ”&Uäì?ŽNÉy'§Ñ5 ¾"°é JÔÔL”:à˜D*9‹MÅ£Ó›[_D§lšŽè1MÀõû€0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0ˆÊgÈ„q iwÉ|¾àœLf¥,ÕFZq2’Œ $£µ"ÓA ½:ÉÛçÿ”«‡šp· êžö–®×©]¶æz~;¥©JÕj±?2Ì5b‘^®F$HùØ÷ÉòôؾOO~½,‡ —Ùèveçóê¿÷xhôFhçe—MãinhSevC%‡h>¶Ušõj}Hùo,UܱüÕíˆòîïE›‡‹T1ùnB5=]wõec3‘Ǿd®Y…–á¸zÐÄUš2ÒŠLÆdR#wà&©$‹‡H2+·ÚÕK°ÕÈ©¡ºÙ+_s¤Ë̹f¿ä×›:8]“›lÕX–å[Ž­bÌ‘¯Ðˆˆç#%è>{ôý'1¥»ä>‡ñLÕ6ù8¢«Ý÷Ö6ºckçvw4b·ÅC.m½fN~‹9Ø6ò1j]oîŠù$Š lÐÆ£u÷m퉞"Ôž§`ªÙCÝ8kHŸkb|ôåyÃá¶l‘¨Ð­c ›S…$Z@UÓßR”7nyÊÿc¬¶­ŸÕêØÔ‹RôôWJ79˜³ÞýÃâÜ|ï‚SÓ²ØámgN¾ìDÊ ŸzZkgs¿¸Ímuß§Þ†Ðàù]_#u1ñW Š'åònãþÙ¼Ø~SúN#{ºsîE–ÅfF…޲7~×&ÓeC¸ “QôÆ©¯¡°Æ?Y€µ.¤§Ò´ÒÊ:Øå^è ¤šÃ¤a#äb1'çC}Ç@"bÂÞ…Q6<‰b›v)1Èäñ¹Yôè6h_cJ´9)%ûnéNÙóÈÚv4¤žJ•$žN¯Uµb|*ŒX˜b2äÔ—{×tlÙºr8ÍÍ/ :—'‘Ìó\^Tù}ÌÙ’OÒdñ4²iô=L­/”ûóîß­¤ÇÚM OšÔ–¥æíÛ¨²Amñ=2û¥¦ë7øÚñ¢ßMµçt¾.œq¢Ÿm~þ¼q®ßo}™-VµU®Vµ\ß*"«~Ié~+þSÚ ë×´þç–Í3#–K#"›á÷D×¹±Íõ¹]ÚÄTlŸ[•\Ïš/ÅʪßKüŸlôS` €0À` €0À` €CYïIª‰±ý›_ˆŠÔ–ëapöð‹ -Èyˆ©ÙI…¸ב"¦zœBP£ᥚš¢ƒ—A¿†±t֋ʱnM:ÕÉ×lUKB­ÿ*sUžÔΙзêŠâNÛJÉ!¶’BŽŠšßº(ÞÞå?S}öO?Sˆë´7|ƒãÙ¯tStü†÷U¯ôôYÛÙX9ÑæC§7çßæ×.\&Z©¥€êzŽþŽt³.}ÛPO¥v"Íê´2lS·/áüE’’]ï«Ùˆ(ÉÈ{yv¶$ØÀöd¤“éax 'Û§ºñ‡ÀDIEÈ8³ôt¾ ”ÃAÐéòÔîËÖ¾§â¥·çÜ‚´õnVè]š8쥛ö¦ –е}W±A•$«#´ÑÎúfjx{ˆóÏIÌPý=Ôè¿}“ÆzþsWo/¢—ÏŸŽæ3­ÛÄ““çóúÉ2f{bÝùëäu¶z[”ááÝK¨Û‹Lb3‘\„Ê£s›-»mLEŽ ŠÙÂi¤¶èp@K§m9[D—A]Òáo¿ªk%¿:ñªšs¶Á«r¥è¾úV«\\­IªÏˆ•Ȉªß²'=Ÿ$G5U=ûDT_ð¨qæï9Ðò××/¦ÁÙç4Ò&̹۹w²/¤/|‘²U§¡{ ¤ŠV6EâçÇ#QUÌr&G—&` €0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À47j-¨ÍÖÇ^ÓXγXm+C[öÔ¶¾­¶Ò[®+Ù Äôg}^´~ÏmO ìVÚ»bõ·<;ç…Ú9Khì@½Åë7RyH»k¯Ö $Ê%]\·'Gá) ¤g®cJmYvmüºF^WkãòFÄq*¬ÚCŽ]¨Ôuj¸¤¹Ö®À` €S€ðêgúñþæ.lã°À` €0œáá1¶H4ïÑ3pb<¾—|´¨øÈ¸Ÿ ¢+«¯¯:`s¾š¶kê=KÕ›³Ew Qžx«1²Lÿƒ5x¿;ܶ¬EVzc\©öO4lù*|[òù=Íb9É‘ËÉÐÚ³-<Êÿ“fíi#û`‡ãŸƒ“wsZÇÎÄ‘F¿‰•r×Ô×,óý?Ehæ³$P¾%XÝ©"V"Õ\iÿ,ý¼~ÂÝÄF$ÊJ\« ÔDÌ< H„À8Ù¶æRò"-ÜJ䪱 #q:ò¦î¶t’[E4;\ªš —ZOÜo¶¾‚º¥FYšXïTšœÔ²è+Í6X’Äu«*ÈaX¿•wÉz‘ý0ù ã£ï6ª/ÉM¯È6‡ ³‹ŸBß-ÐçtZš}4:›9–ú;91éÍ$v´´[ ¨ÆÀHôÁâEû£r™±Å¨¤;¬!„Y->}¤UÝfgÍMX•o ygW±dùÉ—’Wr 奛“/»$ƒ(ÝƒŠØÔ›²Ø›F%Z|Ì0è±²=,ŵ§?jÌ•µ!®ú Ìc$tϲë jÚ¶Y•‰ ¶7,²Ž‡?ôÕã|Þ6óÑùÃKC‹±=ZÎÅ¿ã#ZÊy¸¡/A¥¯[¬³ÜÚ³V Úø°d79¨ç6Ëô™5¸’‡ÊÐؤ»âöÜåËaGÀS‰*êßæ#7 âºw4ú ‹ Ž„€ˆýÀ—ÀdÁ’bÈ=Ýé’;9_w)p9²ÐÎMÕŸgB¼è¯×üK±Sý¹õ¦}*ub¯`‘Ñ>¼’2»¦–)¯šEr«ªtÿ«^Ò[دŠÛ—ã~C_[ÈòG¡æ4:Eì«ífUézMÛû}f†¥Ht*ëT§k^,ÚW©ÖmlÚm‚&Ã8ÄB¢ý‚ò2‘ÁF€lkQ,Cˆ>üQCCÇ0“vM[" S×I¢ß^7pÉ%~Þ6åNw›ÃJ¥u‡ñëAVŠh l1²&C òE,ÑÇhÖ1²IOr#SÛ˜‹þ}ûåÝ›¡×nškmêj»fþv¦´Úwg¿kGG&­ú9·.[¶ù¬Ï=*z—ë@ù&wÆ/gòˆÏŽO—& ` €0À` €0À` €0À`ôº26k“ÃLòãQØñ¨É^Y©¢.øxk‘O¹jª‰.šN8jí^PQDVÓE~îÛ$¦¼s§6öëGv­šs|¾›uæ­/ÁQ¯úçÑ?⪎DwÅëñUED_J¨¿àÌsÛwyü>“5!]c3n‚Xc¤®·rnÁ~ªOä…g¯ÚÆÉœÏ“Zö*£’Ù}{·"3úæOÖ $!7.mÕC&…H‰Um ¸ªmŠÉÖT4å‚ðË‘3 Ex®£¢ÄîjO¬¢Mš—mÿ^¥ÏëT¿k˜±F¥xîÍ;ò,Ó±&[&v^œKiVÌu–I’LêñD³Zü«5®Êßç¦8Ÿ/xû¡ä»,?8ãu=ÍÎc?2!ât¸ô»Ë°÷¼-Øðãf—-j.±ùôó]§ö;7´›†¸X›œÎtßédoqƒÈ솔µ•›×Vª‘ˆvèGÌÕÖ(ô¥r—…&âfa¯l;ÚÙŸqçÉ\þ›¥e{ˆv ª .2úølh³J­ÜíU­OãÙš1¶Ý§Ëv+’ÓzE/º¼¾þ©âùµ¿d2|]õÊÏl¥ø¹})ÉÏE€0À` €0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À5½ÈV²PÚ§.¥B£M†­ç%m¥¤mT}J²(òx©æH åWS‹"WrRláG x]-WmøO`Â?©ŸëÇû˜¹° ŽÀ` €p=À¦ž¶jäãõ‡AutMRDQHÒ¬™é·Óé>ýk6Û ¾:T¬AoFÍ„ŸèJU¨E"ØšÛ¤þÔ‰­Eùk¾?äÝü§é·Ë]o?[¨­Êlcs²é²¥ÎŸ§ÈÕÀãñr]–šÏéöú»ôãÈÎçᨿd—¤™ÍXÑd‹íOHº]µ·„~tµ¥>™ à¼ÌZ“»ãHû—­A¢#tÙFBÔõ½•´±ÌÉu4߇’É 9 åvÑë5Ü|uÃ7c©Û¯vÜ_Û!ûnDëÛÉ]Ïl ‰Q• ÉÍÒü·Ûr½‹ó·b›#T{^Ç;ãëdËãx¿_–Ñí|™ýoöþjó9_;ZÓêK¢×ÙÛÓï»>)0!ç"Ž­†þ6?Gbã_^zÖ"‡ìEæsÓY5£?°×ÖÈ&¢ÕB»DCœSUxhÌFS“žŠ½® 3ý˜ÌŠlĨÍdSâ2’Ün)d5ØC5Ò÷ýgN„1ôt¤UÊ_Ć[¸ùpÖ©jµ™ê¿:…ÿ®ä²69bü‹òZ•®X•®oÒÅKtýHaðÝn¿xã™ã(².ú6ôT9#÷:[}ÖNõnǬä›kœ£N{T/.7'O ŒÐ¶ürÅ;tlDù‡ª P$¢M¢tÎDãLÛ¼ º J ÇK™n§/]9YêΟÅC-ÃÇË9v— ÔÑ5µÑÂÚï.©•B‚TmHQ­b¥f5ò9±ÁfJòÌÕù¹Î{%XWæõsÓ⨎ôç{ç^‡¾ë:¹: ºWiØê6²7öìKZ¤RÛÔÃ¥±Ÿ›3R´GV8*oiDµªÇ wý¬sâWC·bfD‡ €0À` €0À` €0À` €0À­°iÈ–ÂLÖJ'UÉÃGÃ.m-[9*#˜“éX‰¨çÛK-*8P…˜ÍJ²~é'9ßf#ý./CŽ”vYf/oµ x]:|],?‰%‰jM_îl±Af¬Ö§– ‰%dŽG|•cã:ä|ÕñVñ'ž­­‡¥­¥\‹444?¨*ãÐèsvW>z7´ñ7sðrèjcÙºêjA$+ [nßß ™0½ºl.w(!´»Yº-.T,EÌxlÊÑ¿¢lðTÜ‘˜L›ÙãÒËcIËd°ÒÌòI÷/ç’‚"G! d{œ|wl¾Æ§C˜ùm¬5^;š•×à×ÅvI©RkïÆ©Æd·fœÑÇö?ç~Ô‘FÞš³oŨûܶ\~ý½zó4ºv.s|.³?&z×ùŠY½7Qb¯)i²^I³Ïât”.[ü*¿‰ÊaÓй,´§» \\0‘2°'”ÛuŠ ˆ™jN//‡:>x-™QuÌÈ4Õòºãû;–ûlŽ»i¢Ër§ÛÏ2¼Žƒ;^”V«Îª«,U&l•nS|wß$ue†ä0ÌÇ·äŸÚæûj*#ìÐEñgã®›C[)ˆØèßèsg¥¹ÏtP\äëß±N¾ã4¹½ ÉêÊ/úÐÌÖÈäsã‰ëÖ÷Ì骆À` €0À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ™ìuU ½úõ|QöQ%WW%3hUSã¾DZÂaV äFTI"n7MÊ1aû­.¢h´Ù.+¾º'¶Üå²|_±×/FºÍÕnÎ÷wÇ»½™“VZw¼‚öeÏÙ42G¨ð´âG (Šծʼ^,•È^Íut¢ú¯]YgŒ×ÎÀb‹š‚KDÖð0 ˆ,á“YD5ʼn‹H—o¾ƒ š‚´–A\Ës΋º„Ê2¡ôÙ¾¦Xó¿ÆÔ |îT|«Ü½t†Òl/.•v-S7~òŽÃÀî®™Am.¾Ž^9××,ë™nä¤É,v.Ê\nu5FÅ­œkU¬Øx¥$ G?«÷“O'ž\™vÔHØ”æýUNãF‹ŸÛÒc°ÙôÎkQˆ©Mjè{bõûй4ÝÏ JUœ 7çÙ£ ËÇQÔÊ zBÀ<Ûø,êOÍ^:úmþ&»uûòfAôÊ)sû=G¯°öZÓÓÙ4†|¶çîÇŒûoÞ>7ܹ÷ÈÛã#ê¾ÄÀô‘€0ñUÃt7n’Ë¢ŠÙ»DÕWD÷tãVë»Ùúo·.¶­Z¹s²Iq¶ü7nºÜëÂh©¶¿ÍjµÈŠõø±QÎF¹êÖ¢ÿ¹Q­s½'µøµËþU*2¥lÏŽ)$exÒkcöÁ ¦Š»e™ÍEH£Yç‚{Õ­Y¦Š4_œŒjêÙåßWÖH> JÙE[ÆÃEÍ¿tOU¾ã”&eBÀ±ÙªnHœ2íÜ4ç†Éá“En¯ ó÷1w¶ó3ÇîãªÚÐÕžGKïÓ›rKQ@ÈZÔt“Ì÷Ó˜ù¾ÿ‰×)ãç¸nGôŽ ­é¶´·3*AEcùÃ/9Oþ­­§|4òók×é2Õt´,צ’F>f+?ºJ;kgÚ•E …HØ$Ë5Ž^ú§cL†Ù480˜‰™”f<þ&bA_™™ÈìoD<1ãb£#8àê®ÐàÅ”Ô<2×Y§«•¦Ü,M em}ÔM‘hàÓ†*“\­^J“X¡5Û?á‘+EZ/õÕíIâX¥Hz[ ôýÃð}ÿ /•<ÈÒÏŸgÅ.Î]âü³Ñéht9¼ÞÞ½Mü쎻7›Æã&æ•7ìßÛ¼«•»/A·¨;K-/ÖûúÞA¥7…ÂN,¤zÀzQÌ®S™4&Ê/Åu74›Yðml…fÛ‘³]A²01â1ßqw°”ÖÀÖ7ró»úÖ(ÚÛ×’ª×Ð|®£ÎݳJ›*¦uØ#‘–$šKug°È¦XìW¯%±ÿS]'Õ{;ÌÞ%ñæOS…âÿRÝfÇ#Z„=G™9lN›£³º½—1«vŒøõ5'âãæ•bþs.ãjëÓØü:é}ñUüÛRn¼¢kZ¬ž…` [w¼e¼h¢Œš AiȼÑú²9;æì' –>s¯*Nw¤öåö«ëùR5›~¯Èžiþˆc­Ý+åúkÅïê‚/›õÃÉß\LôÆ{_‹SÚœœôQ` €0À` €0À` €0À` €0Àë6¤»õ³|ÙvnÛ©Ç<¦»W)nŠè©ÇñÏ:*–ûé·sÇ<ë·?gÅ*úú¸3Êø£‘òÖtzØšu¦AcÝU™"ZóA,½ÞW1ƒ` €0À` €0À` €0À`VòêÇ× hégâ7µU·ÇZG¾Z£mï"o½!"ä½ðˆo—‹z™ŸvôÉú>0Ñ‚ü }ÄP â’=òRODýòE'ùc»¾Qãß2ËÉûÔ¶Cì¾Nû~7ß%~ov‘ôÞ¼Ù?Lßדpå×ÀKâü=@²€0£;?L~#ºÓØ~¼üÈöõ挶©œ¥ñˆÅ>¨Àd™#ñøÏA{çº5Kâ¥ñjžŸO·ïpŸ+"¹òiÚþ›5ñ 6éU7N¦Ò¹£é«§¶á{YUÌ*˜ÅG *º6}EFåNÃ2–Ë„VÏÕ©€Xpˆ Ò¶Nv!&zÊ4áGz€À` €0 qðþýLÿ^?ÜÅÍ€\v†H¬h?I Òé„v&Î$†LRNU¤|( ²be LáuYˆh2 Joñ^뿪mªJi§.Zü{;4)¥‡[¹^£*C‹2Ù••á‚2Í K<ÊÈXÙe‚XÛíè¿&úTO“~R\~7«è=ÎìoÙè4µqñ(áб¯§«§‰G;KV¼öYб-´-ÍõÖVý«Øç$3ýP6eß13š¾ÙqÖ€® „< ËËòðI,wX¬0t5ü ZÆâo*LTBZ(ÊBÛÊRu/ ͹Ë"{ê’Žà·;¸¯fk;›úöéרû&£f¿âÓŽœ–`«¢—m$U-Å2DÛI'Û‘‰þŸÂUô¯ê¾oô¥—î|šõ ñß;ÑkxÝ*gõX›.Þé.ôu1uwxÕæ0_¡çïæ¾üØR]éàçjX‘©m,Òk¤e|¢GRöºà•×’y•¢R‘Ž1›rB·§µ¬e`ãöªì8ÂR†vôöíéµM¿6ÐJâÙWí ÚDàˆ×­9Ø»›9=V½¼ûW5%Å­Ù]&vBfY–”k—¡Y-3Zý¾u™ó²DÌöI Øt±½¿Sd‹äøï°ÃæøZ>NÙµÌgÁS³ò+»|:E¶÷œ~ä˜VU¬E-w¾7A N˜ÐRCÓ­›A¥æÈïIYV¥ 4¬UxDh!—-tMœô˜ SñõVm°ÒqÖa‰ó«¸Ë÷£˜ñ¤"Ræ ™îr󵬚ãd\M-M4ÆZ®¥Z œÄF_– ±]]íŽJì†UGÖ‘ñ³×QêyûœòÎ6W9çLÉe±ÍMM¾Nâ¸>O$3z.ŸoO6Þû^Bð<>,7]ˆÉeÛQ”~>?]ž™,»AÍuåw)ñÈŸq:LI­'aû8ÊÝ‹÷V»ëe SÔuLaüÒÕŸÏ:äjþ|>VÖÂTRɕڲRWêâ$ð2±ãÊÕhêN¦îBX£Á].À` „D˜Ñ w|Xƒl’ÛMTxEÚ š§²›ðšzîáʉ#¦Êo¶ºiÆÛñÎûíÆºý¼óÇâI#‰ªùddLOH¯‘ícQU}"+œ¨‰í„þ•þ ªt®hNÚ´*Z½ièåejuå³;ÑW½[ ,|ŽF1ÎTj£ZŠåôˆªy»ñÛµŸˆŽ°F`1Ù…«dŽÖæØÈÐdzOÌÜ;Qd{v¶C’ÒP!{HÅ–ÙÜæ,õxÛOY¶È·]‚!û=}jq>,Úöõ¯·ãöÁ™k€«4,ji>KPAIgdŽt‘+>Mj¹~(¬WtwN{]kݶ·=ãþJ½hi÷öð­lyº6'Z¦¦ŸJÌ›5"‹UrhØú$‘ bM#,¶½©Ë›÷fÒ“ÀŸ‹Ö×oÔ2œ‹fR-µÁmÇ„ý%±…òzx¬fÌoP1IѵÓÔ0Ön§C[‘3Ü“…ÞŒr<•­¶öº–hIRçiþá/ÔÉk~ï­^/Útbûï-m&ä1;‘!޽dš¢Èå|OŽLç=7é—…Ãë*^^£Ì½'ô}½fŽë|wãí}øƒÆÞL®R=¾&o"Z|q=t®Ùƒ–»5<ÝæÒŠ*× ·K)…ô†¸b4±gf§—<ŒRûœé¯<[ÅF¤Qº$¯ šÿ_gÊ×íôõ{~ÏìDÅßË~H¾•SùþLÅÞ¯ »vÎ×Ó†jªå¥ôèÝjQY myÖš¬êêËb$VÏõ9¿j9Ͷ¯¢ër쎌€0À` €0À` €0À` €0À` €0À` €0Àù¬Š.QU»„’]ºé(Šè,žª¢²*ëΊ¤ª[ñ¶Š$¦›m¢‰ï®Úï®Üë·ñÏ}Ÿ%x×*ærñ:Öóþû6¶öwÙ·W~Åm­< ¨ol¹’ÜæÓ%téfcÐ×eú”å†Ô|vj_Ö⫇výzö0@¨Zb7 ‘ pê$QÅ!Òì•¥2‰Øt¢(Ø““fö4]~ª”ÆÃvl¿ƒÇèt·9œìº}rçÖ’Xq«R³V¦WÕ§aÚKjÕ‰éÚ¨Ù<ë41gªÂ±3AóÍõ÷ºÏ s¾pìûÎôï_¹N†—’vºl{ÐÁÐj®… ÛÝD\\xXXÙ]üÔàÌËLÍÝs¢Ý \}|Ìå¹£c`$ѹPÆ&¢ò’@ÄÓt¨ÒÀ 000‚L]lÅêŒ_Žpá«´Ù¾×fn·nªš·u®ÍÖçE¸çN6$kZ‰“U±˜eG¬rÁ,sE"Fÿ­êÉ#sšôcÑXõjª5éñ_Küm­‰µƒvÖfæF¦.•ÁÜýjó®Ó}ªéj«-T¹3×}š®m˜,lY«¹&£Žï+˜±€0À` €0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À`ì¦,d'@‡›ìèn¦c'voÆÜk¢ÏbrQ2±Z/®Úï¢Í9*—¬m¾¼¦é¯Æl§þEvç‹{Ua¹A;~q¤Õ§Vûþõ,Åj$wð¨¬ûagͪžžßm_áTÌaoiszÓÉ• ºìݼ¤™ZªèëtºÝ£šèçJvf¹ÿ\ìþèЃrŽ·Ý5íœ:eֹؘäAŒ>Ë×ZºL75ÐG¤5a⟀©³u×Tc¤È¦´R$z)Ðxæ‘i2äÂ,ó›9úqÜç/E^£)é'ívaGgBéìeÈ•i|Vyó¿%µå‘R¤ôâ| ÿ “Ytêɨ’Ÿs}¾â©îžßfúíǸäŽV$‘=’1Þþ/Í{éU«éÍUEô¨¨¾—øTT_å nº$©z­šV¢ø}µ­Á-k}Œl¬û!™¬‘Ÿ8ÞÉòj|˜ö½=µÈ«ÌÏe°À` €0À` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0 2ű`•[gÙòÐ0:òŒ¢g3”n";Žˆo»²fwºm˜`Ù=×té}õM$õÛm¶ãŽ0 ò¥ßJß°½9 Äô†Í{ÚGh¼†S*²ê5¤d¾^4„evÎ)ÃcáÖl(ì.5™ÌÓˆy ¯§¥$J¸ôZª‹€8þ*kúã®=èºhEzubxâ·å½b l£Öh?fÂö_§mx ÓÒ0C±s ÂãÒ˜×`!rY(Êêx;—F¾Jƒ‘xNív„@ôk€y·ðYÛo•|uõ:¤ü2öêI÷$6ÌêlR˜÷Šo~ìµ§¿½é3ù‘·Þ÷/º|—¶ñíÛ'¯Á[Òýªé#` €0À` €0À` €0À` €0À` €0À` €0À` €j .‘„ÚÍ +«ð¤M¿Wid{ÚÓ–-ÓdCŒ6,摃ÃÛ(³f2MXªê.4“7¿ Ö˜,JZÍ¿d2M$þ]©-Ã-dT†j²ÏéVxÚªÖX‘ÏÉ]Œ§&Äâ|ÓpÚ9·h:¦<Êš”ŸØüçóú9û.lºY»”3/å»s*ÜìŠkXú³Úʸè™ÚVk|àt àŸbúY[¢™—îÆB’šmo‹•šUÊi'ûŠ(I(¤b/õ=‰¶e9UGÛc/»víšG¦\> œ+íèxÜäI¡ÑRHÑñ¯V[ÙŠ–}*È•+VýÍ“2UUzÊËq«ZÖWº÷I#zyhøsõ-ÙÈüØy? ôϸ÷ØlÚû”9®åŽÃùFÊRoíî'k2Í•R…®zäSM5Žj´5j>s×w]}g‡b0YNu‘½<1€×íölaquÜð¢ãÓÙuA—žéîüAŽYgÊš¢íšxÙfùû44á‚j²ª¥‡Ïq½ªÙ›-oæx¦>KÑ"§Ù ß X«ñ{ïmN[ìq½ñ¿âäù1îbûk•!Ü=ÙvXëf+-œU&ÈcNžs¬jXÑÚ¹O^Îd›t5g|힯ȿI-Ö¥žf–]F濉ö¦Ä‡Zä ]«¤ÕÐ.b•ÂAçè½€;ªØ¼*zÌâ[8‘%?ƒòØùgÓÖïXKóÉšë¿L1EVÍ›ˆ’±CjydùK+è< Çô| >³Ã]Î'cª›ý›ôy)+uµûËU¨eqaç¹|i9,ª¬|Çîzwô7ñqyÙŸ¤ÛÚx™4i$4gV+$m;V mk`†vË'–âó$_b¤0*9NeuÌzÛ`ub¯³Ou4 6Ì—Ž\çd9l‚H8YG’©|ŠÚ@LÍäñ†äšŠ`ݹ$ ¯6ƒÄa‚‹È˜a¯.sš¾f”ü¤°5‹[fyè[±b Õâ•öîWý£é¯rjv«$¬‰l‰EÿŽ×¶”SX|Ñö/9æŽGÎýÏ“çú“Y‹gƹyW?‘©³­z…|w_þ"~á­Íætx{rÒŸBÔÓSSY5e¯'K;"¦u¹Aìs#f¢õýqX\ÒS„ÄñV:/¡¢,‡ŽJ$ÚÊÚ™r68Â[]œQë$°4å!|0òQú#¤ô:&O5\ý®ÌÙ³<±~Öù’iuìÙKm™Ñ׎ÝG2«ã[4RÔØ’($‘²,‰ë<5g33w®ãw¡îlvmóý Vwë[f'Tü-Ky5ojT§-6T’ä–É!¥À` €0À` €0ãOûºØßçÿËü¦÷#Ÿø` €0À` €S€ðêgúñþæ.lã°À` €0À` €0À` €0À` €0À` €0À` €0À` €0írõZŒ¾€#dWQ#CÜÓ²ªdÚLWŽ!ÒHƒ6Ÿ8Õ”¬NÃ5>a„˜hýƒðƒ6fº£¦éǶ9l=×Á&–uIß ë3¥XÛ2ÿÉÙ¨ÆþdhËQ,Ia%ŠHfd‘É JÇ7⊛‡Æþxò—ŠjkSã;ƒ.¶ŽSs+Ðf­©±(*ôx½ ›Ó–Ýgú^vD´/TÐαRÝM;ͳ©#šøÎÈÏdúÛ=”>šêÇëœfW5^TͲâ%8 Ù¤‹žQ‚¨\èˆAÖF¬9éšxo œwî{Æ™7IÎ_µ%Ô‡Kž­C-®¶Æ¬6¨UŠÎ¢?ã[Zé …cK M‘\l_ƒi]‘ÿbîË9¾óG)…W™]>3Ì›}_uÝŠ+k>íŠ÷„ö«ªB¾™½38jÁ€0À` €0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À`  ö«ß×aßí!m"¨'÷Ûà©ÆªñΜMãžQ‹rÉgc}ú{¡¯ŒŸzz5}¢{V§¥þÒÿ.ÜËРûL·Rh¿ üùveøý•âЬ®Iª~TJúÏ™Ÿ;ã¯ù1>Æ+£Trö¹T°` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀ` €0À!Gz{‹·M«šØÐ  åémÞ÷Œ­Ô@U€§=¸'ã%X2Í·²ŒB%§KÉ2,¢ Ñ“H>jß`5¯P{ÓcÝW•³ÔþÎu•N¨v†©­à7nÐ`÷4c°•ôÚ™²Êâ@fq+:5„:Hˆ¹d,ä~S–AbäǹäkðŠÉ>ä“p,‡§?áÔÏõãýÌ\ØÇ` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0 xüR;)äOÌB›L÷ć7{ñg«¢Q³Ñþ­—Äá¡&Îã’s¢×bIlTH†ërÛÔ Ùt-ìU¯kéüˆ›2A#ä¯ö¬GÉZz’|Ùïá#_ZÔñ9’5ìT‘Wãòk\ܾNþÆh~Ï~l÷jT«JäÕ¾ °è)mdô5?ÏÁlRš¾ÎUè­R–½¦IQ±¤ßD³Å,%×kJ‘Ÿ+bQÖD½Zð qw¯©ƒÌ¢Åâ&Ô»ŠÖ¶â7WHfÕÈMG¢’bFH‡&–ŠŒ41RkHšÁ¥çµ1/.†&Åϯ]Ï“vUš¬ŒK?jææþ6e‹¹Ð¤mDŠ*°X‰‹1Á,®²Þ¨¥æÉÜœ|w”x¾y†®ÄUjù+&Öî~å[OÄ\è»NÓ÷žë˜ìµrG¿Bþæ®=ÇÈæ^л¥BŒxÓíJ·Û€œÂ0ddººEÞɈ»‚ϫٜ(Ј`Ú5äÁREÙ8Šå7 ¨‹§Ñéáû©¯)'¢K å$ò¸}e=ymÖš+y׫>Ì£>å)᧘ߺY%cªÉéÎTt•ìIªzDG5ÈO*þŸ:OÑçw3¯sÝ+¹[~§’ëù¾›3G¥ÕŠÄéŸO>Ì;ôÑðÄÉ «¯VÛXä{Üø¥‚GË&®›>jÙë5ÒrÑãt]5rŽü(‹†ÎÕdK}yç]ÒU-õQ=õçž6×n9㟳œ•5Í{Zö9ǵ×"ûG5ÈŠ×"ÿÕþ¨h àš¬óV³à±^Y žZ¬’¡{£–)¾•¯ísÕDV¹ùCC` €0À`ÆŸ÷u±¿Ïÿ–/ùMîF?ðÀ` €0 2Å;5–‰¬%à`6$YÃ&²ˆk‹;‘.ß}5i,‚¹–çt ”eB)é³}L±ç¨{<¦Än(ï\:é^y"°âŠéüË·íž÷.öë×S¤Õ„’¦ÖNÒ®GÅšYý‘™AoØ0YÙÝŠƒœ .ŠÁ¥H€Œk$®æÎŒø‡aÔÁC».ïÅæòû¢–X Ò+®ê“ïgØQÔ»gŸ£®ëº¿°·{r6…ˆ;JuüÔÄþ$¼þu€œcDÑ‚åä‚UÓfæßÁgR~jñ×Ôëoñ5Û¨ßßÛ2¦QKŸÙê=}‡²ÖžžÉ¤3å·?v5òÿQã®§?z¼ðéUŽ…K+Z”:ùw¹ª·ë\veœkrG™§_C–¤‘ÏZ9Ü“#Y3"ž(´úMØ.  …F Gl~ÉW+†3s?¼PÝŽ^[;V Ä)ì‚>NwÎ…$HLŠKtÝ´ÌDÉ]ˆâ1%þJ*u¤¯¥Ñç,”ØëõÖ¤úP'ÅñËGðŸ=y/úlI$V)׆UG²/Äš_²SzÕÄñê"ÿK¹KcŒð¿eN’Ä–³wó8ÍeIëÜ¡Õ/M[#^—*›Aô¯ãôzú4˜úö4?¨sh%: 6 ¶ÜÄ{.ÙÒ³(ñÙ ¦-Þ 3ºL¢Ä”5~V4üìm±âò`Š LâîR~»„Õ~Gå¬Î޵ê>´Írܯ=˜˜×Å2£*É6™$µ¤ž³e¯5˜b–4ÎIæ¢;ë“ãÌÝWºŽ>ßAWg:h#æõòñoÚšµÜÖÉgvž¶ŽõhmÔÊÚ–†Æv&•ú_—2TŠ)dX’Ý4ŸefH… €0À`VòêÇ× hégâ7µU·ÇZG¾Z£mï"o½!"ä½ðˆo—‹z™ŸvôÉú>0Ñ‚ü }ÄP â’=òRODýòE'ùc»¾Qãß2ËÉûÔ¶Cì¾Nû~7ß%~ov‘ôÞ¼Ù?Lßדpå×ÀKâü=@²€0À` €0À)ÇÀøGõ3ýxÿs6qØ` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÆrÉ›ÏOë6ué\¤õ¯©A%ý3Ä>÷Àvßâé·ÁrÞÛá.ŸÝU?½·Üß·Ÿ·Ë˜Çü~lkþG³äÔwÅí÷ñ{}¢ü\ßkéÉéSÚúR´6lVûy ûá’´ÿL¯‹î¯/¯¶ ~oÙ Ÿý‘?Ûé>M_HB‹;¦á‰ÙnoªO8®,îBLÞ˜}°'Zµ±%ˆÂÊFBÍB;–7 F ®‘‡Éâ0íÎD4p Q ¹m Óã¡—IÛyV¯féý74•ïÞøhZ’JRÖ†ì¶Ød¢‰UðÉn¬öÆè™ð6üzkˆýGéQâañ{‡Ëö|Bióusªìr<²ÏÇaU§ÒÑÛÒætëàM¥O©s·+hÒÔ¹åynA¡gW/Z} ’nº§ì­Œ29ƒöVʹçKtf?>i!lB¦äƒŠ¾³,Æ(Ôÿ,“æ2rHLÚ¦GGæÄ[¸t^MÌV"zt°¥ñO+¤ÑŠýê=%6gªhGZ½öXl™?c³3%Ž«,+ñ§³,ë4uîÈ×:k+V¤÷¸»ïü+ÆÝä¹n£Â½-žÇçÈÜÛ×ä¬dMOÈ Nç¶¡k~|ŸÊzmåâÑË6æ¿1NX`ÏÄMî‡'–Šû!Y§‘Œ˜Æ#’à»-¸yH1;¸G–î7p{rl6] ¹çdÙ«¤¹U¹ç”÷çm9çžuûrgVÌW+W· ªÃjlÄ®O‹–)ãl±«š¿ËUXäö‹þø9§{ï9¹³Ïi¶6é`êèãh6h[w.äÔm¶)Q%'‚Ddˆˆj#‘ï²¹Š` €0LW¨„ʤ¢«yŠl«[åÉAùnz@Ëgðµ#'"Àùe¹Í£)f]Y[}‚Ê¢m‹CË*(ëaGˆr?â«$ÏêiZ³uÄfn¿ãZ±s:{ û)-iê¬YØ[i’­¶¬6ª6Zr¬S¶)äúý®’ì<Ó`â_ìùÇÙí|wûÎO9ÙådYJ+6ò÷µ?)”êͧ&Œèð&nžüô:,øïåÍ*¢\øG(²NhÁ€0À€4ÿ»­þü±Êor0 ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` @Ú]i©­³dÒˆÈý¥JXG4m ÒKÉÝEÞm*fp.Âel䉲hÑè™(×N@ÿ.™•ßTp:œÞN´ÑYµZ5³^QÖHå‚kNªõ´Éáú­2ÄkUŒc⳺lC'Í’ª&Ùá|×ßøû6îݶákia[Ùɱ3®ÑÓÏÃv²`ÙËÒM YÐY±b¶†-öÅ£K#F¢AfƒVHÅ™v¬†ìia¦qëÖz1'¶c(ˆÅ‰ÆÎ«è{"¿*%=P1H»7­\0!½g’ʊȆå~ŽŽ^¯s™ŸFÇAr¾Ž"^‰¤Ê­ Ÿ,ÌèÙ/â¥õ†Z¬‘®ŽOÛ+Ùµ-˜çøg¢9òG¼v9¿y¿/Èñ5±ÆùAÜ¥çÖâmu±nqêØ;~Êåš¿ÉɳJŽíš³Ãn£{mŒ\×r¿'®‘ðV¥vYÑ÷Ío}×Ñ™ä_ 9©˜ÔTÙ¡Q™€iR‘2†:.”|˪h«b ˆèü? b1ÚïÆ¼C– Ü »Tex›¹Û¹õ¯Q·NoºµY抵Èm-I-1•ætjŠÙ"I©Ý$ooÖ×5Ío?ùCÅ=ŸŠ:ý¾S©çzLµÍÚÞËÌ¿·Îi`³~ž§E&¾t7XæONzn©¢¯©jíxª]­*Z– bžMÑ™“ZŒ€0‡ÇrM»õùi7pÜG I˜ MaîàÚÜ›þšçí;.Õiqc×%‚äY÷é9³é×’h!½%Jð}‘ÊËÎl+^½˜Û+£TøóõS÷Š¿˜0`ï0¶¨ù.Ý_ʽk?O›¿×r<62xz¹šÚ<½^cU)MR$±ÌC6‚kkb[–Œw+ñíãêŽSªû LNü¡@n¬ÑÝ„f­œ’U¦¤c¨WÒp½T«ž^4 ö6P{7É×fažJuIbªxNµù6ªeôuìײùdÚPçèM—zEbI]¹ö ¤Y\¯d/­,lzJŠÈ_iÒ­y?O5|ƒ…Ñ÷ž×ÄÖÄ©FޤFcÈf÷|µ(ì:žÄ½vF§Jé#¡V±¥WjËd ­³¥[ dŽƒ'b$G¹võƒwÌÜ?é½Å’.PUÛX—+4õ­“ßešú¤uÙVßDþ:Zò¢_{N9ç'-’7=ñµìsãøýŒkš¯æŸ&|Ú‹í¿$þ[òDù'òžÐå‰iÛ†½ksU³[¿wáÙ– c¯oñž‘XüiœÔŽ¢EHæúœÿ©êŒÅʈs3Ùl0XôǬÝÖý[½|í´S#É×µõÓMöR—×"Δ)ÌCk:#oÖv(',†š3}ê.I®ªÉzØ›¶ùWÇ_SªOÃ/n¤ŸrClÇþ¦Å)x¨ö÷îËZ{ûÞ“?™}èðorû§É{oݸòzü½/Ú ’0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À`Ä’—hž’0Ì h‹CH“T3包‡# µr5ònElý<·pÔ›'­UKžSQ ´ß}v¶³Nµ´D³ &DŽh‘²5²3áb?ªfº'£¢‘²3û\ÉXö* ÕE_y¼noŸsߥo9Ò[ͼù)O-K•m/fÏ Ú¯†õIªZDšéY­Ó"ê}±ž¥Ç &ÝË_Ž¯Âø›d8` €0À<òÔïÇOM;ÔŸ¾–ýw­ úƒò¯Îÿ*üRƒI{ŸÊŸ1Ä}óîûwÁô_2‡û~7Äõ||?‡¸Îéu4OpêUþÓÉK;€Ú5éK\6# È*Ë’¢“µ”B¥Í@›×p’AÛn‹øìž2_]XÈ¢GÏÝÃ%^¤ý¨³«,±êûÞÇí‡fûg{+=¬"4`©4j¢eCUõ­1’š'€VNí‰ËfR¤“ùLŽÃ‘½<ôLq ¶‘Ñ!’°€S€ðêgúñþæ.lã°À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €FnÀuz¼½!âAº°‘ ß/_‹Éå°P÷Fß Xû±n …*šäšå8]h©ñ—ETynùþŽ#[üÆ~åH¡|N‚zŠ÷gÏZÕº¦ùŸ§|O£,*Ž‘±ú_“^‹íÍTøÉ";vø“Î}‡‹z- J÷£ÕËè›V.»+sŸë è Ì«z,š÷àê¨iFø©X¶’³ê’¼Œúâ‘’$Õj:÷$³/Ž­CMAm{¾ŸJpù—6¸Qɯ)洟ȸŽH¡†æä$²ALbt¤Ú"Ò×d#¤EŒ­ÅÇ’IÉÈý-Þ^z棫·—žÏÝ`}{š¶¢vmûbœ÷d³aðÍ'–íFQoƼ‘E›tGO·±xŸùÛ/¬é3z®ÆE/VÏô¬<߃zÛ’Æ]œ~“3˜§‹‘žuËYtyŽ‚ÇQ:K±NõîÒöÃßd݃Ú{]w†Ÿ}>cQÙ^ÎD=b\v¢¤ïä‡p™‘ˆxí"pù íØwË'#öÕ]øÕTvRkGRŽóNÄvñ«ÛùBöMÕjK1Gêh]$/zKNÄr69ðt~•–ªóQÃuj«zL›™/M½ŒƒB­¬û‹¦%ûŠüÝ*iWôz<{u%·N¿äÃm}Ç+Yg*Ž­*Õ£†KQSG64‘ª¶*¾âºÔ²}«÷É,vb‰~Æ*±µ›ýÎG#Y·z?8÷ý_‰Änm\Ч‹{¢’­:”ѦNí~qáÒ«û{.¦}Ì[×ÑÔìµ¶gٟܺIgDxÓþî¶7ùÿòÅÿ)½Èɧ‰ÿ€0À` €0À8øÿþ¦¯îbæÀ.;` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` xÓþî¶7ùÿòÅÿ)½ÈÀ'þÀ` €0À`ãàü#ú™þ¼¹‹›¸ì€0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ãOûºØßçÿËü¦÷#Ÿø` €0Àgù=ò‰Gø¾¡¤Öµ”[=žs“Ÿ«*X¬jt¿!¨þÃ[{Që=˜Äjxþ¯LÜÄÂqËvÌúçA…Iж@Ð7'x;nÿ¨5¤E¤æýе®;Š@Ò”ä¨(ºÓ+FrÂDdSy4òRªqªê<JD^C6;£–`’\´páâ ò•ê—}mËG²2îvÓ©Oz‹ØñÊ=Š„tÇ{WÚTº3!ÕÜŽE³£ðúýv(\ÔÜx,¢"‡ Ý9‚£ë‡ZfØ)NÑ­¤>ú|cvúµÙçâíCU9WTý?i.Ö¼}Šs¢|í÷¸CùÿÉÇÙÎÜëÿÇìûyëpÀ`Þù¼]ÓR>µ‚kl{Kï±(çŽ\U†Ñ¦„êËfÅÚDÙ4Ú:à›”W­[‹àr»³KtK,ë—zîÓDWD` €0Àw©¯vUËÚz­xëa-úé`W0¦&Q"«µ¥HΩ òÜXƒ¶[´CAJ s8X"mÑrûW(IöÊ¢£Û$ˆÀ` €G~ÞÞ.úÅÔÞÐvQ„u´½ÿ^ºïuÞ,¢oª¤¡ÝMZɧ­£®‹"ЂÂÛXƒW"“ª²IÎÎShçt¸Gp$FÀ` €Gy5âìl©Nµélå…³×~Ð^.e›U'aõêÊê ”u<4Ý­¥öuù'DT~ÙQjĶI£Ý ,°ð$FÀ` €G~«Þ.ûM0µG[E\=°.èW!š‘Tª)£R]ö-F؇VhÇ}”6Ú ‰µÛúmub¹X¦«”ÛêåP$FÀ` 7ö:ùwD}ô‘¦ÒO¬½‘«èg> š£=¥‡ïŸJ‡Âd÷Ü‹ö}~Å="Nþ>ß}ê¾À` €0ßY_.ìÃvvZ4Ø[^¾}ôr$‰ªéÄ£êÄ!ü¹Ç©³$ìŠ2áŠ? ãï]¢œ¯¿¦Û^ä !€0ÀÓ}‹´ÜQ|½®Æa‘‘;§i»>ÓkrñAÍθ¯¡'%¨pA&îÕ`‰EDjÉW‰´r£]Ù}­¶œ'°{yTB)(Q¶¬”’FÁžÝžŠò¾70-© ›h¶Ú'²Ú¡³ŽRÕ^SO•8ÓùÓNyû¼’` €0À#¼šñv¶T§Zô޶rÂÙë¿h/2͈ª“°Žúõeu Ê:€žn‹ÖÒ„{:ü“¢*?l¨µb Û$Ñî†Xx#` €0À ?îëcŸÿ,_ò›ÜŒà €0À}Іö^kì7Åe@Ëáä‚Ihuô§bšŽû{Äy>2*ð¢–G’J±ïªHL'Ãf‹öo¼óWÍ@­O9CåÂ|÷\]%3ž ë±ói„~.´ ®\Ì”=¼’JæE0qtÊoJ ‹¯-”,“¤D«"7»M‰¹vy[òCñ·HWs7î+ös›ÎâŽÑu©›tѨõ=4tAÙ «BÝ+ZSôGH•*$9Ì¢RY`QQ‹ÜÚÇÃ<^Þ}¿ûbرO!±/ Ýú‘Òþžo$ƒZ«hÜÜ ÔEDÙ’£ëj³Yìª"êH©¹lúÄ›I>_-2šœä`´|XļÔuk]£Gß.z©XIdçá”E3Ý—Qš~·c*–™<‰BcÄk³…›Æ›–8C”¹; ?"#ñÖ!6íùg`mOÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ81#ð‰—ºŠ½”y'òë y“£4†¹-Üæï–ŒK[5o$¢õvû2ˆ9á)mÊn4`\ƒmwá'Jë°?äóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ80Â$J:va'äŸË¨‰€HY™Á±ýÎnÔœ°¨HøÈ ‚'Þ%Wj±7ƒcADd»­ÔQ¸±¬Ù§¶¨ žš“þO?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À1‰·„H•“ —WSÿ$þ]f0Iô`ü*k‘÷9¹Xôª%)ì’6t[º¹V„ƒ ýèÂŒ&£wŒ].Ým7MMµä ŸòyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãwá$þfÅ{äŸË«©ÜZ1.…Fåë÷9º’q)ñXIɬlYMªî]³ *3[@ `Šš7$úpëEÓd€Éÿ'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À1ˆ„H•| 8ÄÉ?—XœuR)Üæã&VW )+’‘Ñ›Z¹4uxvJh¹Ò‹ñ§ <(IëÅöÝw o°?äóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßã”øA‡Íþ]ù¿É/—9/Ê2‘ˆ¿½w1±—æ=G²I„úš¹OBlW«sè¡÷¶øêü%5ûû} e?“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿà°Ÿ0ð2ilÌ/’_.bå³ßaùÖFǹ›”ü®=AQÏ}~•]«‚^Æ1eX õ[©èÚ©º(}Í6çŒ)üžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€tr Qé¬jE —y1òù$‰ËAŒIã¦{¤‰çãǘ8h)f*ýÛ½Tk·,_4_MÑrÕuQW]´ßn9²cá­˜ÆLÆŽòƒæñí[±bÍ·vuE³FmÑ»V­ÑÒ°ãDn‚z$’zqƺ'¦ºëÇqÇ+òyýRüÇ~÷Œpäóú¥ùŽýîÿàÉçõKóûÝþ1À“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽŒ;ð‰3b½òOåÕÔî-—B£rõûœÝI8”ø¬$äÖ6,¦Õw.Ù†•­ ΰEM’}Ž8u¢Š i²@dÿ“Ïê—æ;÷»üc€?'ŸÕ/ÌwïwøÇ~O?ª_˜ïÞïñŽüžT¿1ß½ßãù<þ©~c¿{¿Æ8òyýRüÇ~÷Œp lÇ…_xt›ŸÍ§Í¿¸†¨zpýñô-wûª*§ÆQ/¥Jýåöø¿se>÷ji¥¯ÙÇÜûyÇúÖ—NhH¯_¡s‹RËÚ2÷–Ý,k:¶f²ÛŠ×›Ýé<ò`Ì,yãS«FýÁMÄ6tå5ÒÙòpáó$žÀ` €0À`Žò‹ÐžÈÝnúõJv638µ4ù£ØÅ7ŽÏCF¬/’6[‰ŸÑÛ&I Z]¿)hÙÓ‰/Ò|ßØÙ´xøŸ¦fÑÂé>ðÀÔÔéSvB»glÒQÖpJMbDK÷&ÜICµM+©çI P£ë*{“dyŠ+‘¶‘øÁ31ÂB‹¾.ÑÞQzÙ­ß^©NÆÆg¦Ÿ4{¦ñÙèhÕ…òFËq3ú;dÉ"a«K·å-:q%úC/›û6ôÌÚ8] ”^„õºëi׫¯±±˜=©¿Êþø)Ävzf5^üï²±Y1¸™šÒ’ù·G-\F¾¯KáøÍÛ7Ã=K7m×T ›Ú¾ðus¤Àâ'{+i'â~TˆXtD>fØgᙢ@÷ÊQœXÒVQ±îZ¾“” z.2Éã7GžAãeqSw5WØZÂtRS¸í™VX"½ê7Š¾Ô€Cl5tჟ‚¯è³w£I3|$À·Èµ(ËáË3dM‹¶ˆ³0^½Ÿò­Ð^œXšÔ½‚¿ÚF,ÄãhL‹Â"uݹpH¢1[mÃi]€:™€Ø W1·kË„O8Ž UŸÝ}£­™íªü¶,Îõu¡ë´[¶«ÖÓ¯ÓÔâü×–b³”,—sfê;ˆ…­#ÐQ²Iu‹&‘5AÛ1HP²Wˆ°$¢B¹Ðkþ[ÜÒ]Éëbi}¨îH¤†–Š|Ù¤âj[ÜàÉ×. l}Òn2Ð>“Ö¢¹Ð´˜€6`¥›&ų-Ü*¹ê¯’•÷^I)†õ¦ïa?–Ķ•“Œ’†YÁò—¯ôΈ ´¡Ð§ÖjìšÍ‡µ²`ˆH஼`Ùë?e¢àtš/Bÿ„?Älgë¿ÎÿK½‡åÙïÉ_V~çÞú?õŸå?¢¿X¾'öO¤¿P¾¢ûý¯åŸqþË€O¼€uÆ (|ùAÀÁôÁ£F¶$8‘•zD¡BOUA˜ñÃÙ ³·¯]¬‹f‘UuÕM$÷߀+¿¯~]éW‚€Ž”IìóRñ\nZ2¿ $0tR.IŒbå‹g¼ëghèNÞÖˆÛÝs±†YP=Ž‹?~Ôqèñ¨Ü°-ø9šÃ%âcóX$Ä>®Ù,R%3‘°lùƒ§Clù¢«¿pY·w—î„uÖÓ˜RöÍo°àY“ t÷¹–(fŽŸŠ`i®Œ&•·_åЃÉî8›5ws‘”l‚Ê(Éu’zÙÓt@Í[yD諞ª î¾÷ž£zá!˜“®ã3õ­¿“Ë,!2SQ(…C € ¹¥“^dQ¹öQHå~LñOd*ìX÷ŒX:r’’îOX{Hì}GrE$4´SæÍ'RÞçN¹ucî“q–€)ð輞°5Î…¤Àì±³…,Ø™6-˜¹náP5ÏU|t¯ºòIL7­7{ ü¶ ´¬œd”2È®„½ ¦v@M¥…>°+WdÖl=­“BGpõãÈÈ7Yû-£üÑzø—ü!þ#c?]þwú]ì?.Ï~Jú³÷>÷Ñÿ¬ÿ)ýúÅñ?²}%ú…õÜí,ûö\}à ®0`LxICçÊç¦ 0õ°Á!ÄŒl«Ò% zª ǎͽzíd[4lŠ«®ªi'¾ü^½zòÙãϵ6°ŠRŒìhÉe'hyôQjþÛ¯ÃÚ "íU!"ZŸ™ÙŒ"âÔ0¤4GоE-Ù°$U:¦¼Owº^>QzÖë­§^®¾ÆÆ`ö¦ÿ+ûà§Ùé˜Õ{ó¾Èñ úÅdÆâfkJKæÝµqú½/„{ã7lß õ,Ý·]P6ojûÁÕΓˆì­¤œ‰ùR!`qÑùý›`MŸ†f‰ß(V5DVqcIYFǹjúNP,Yè¸Ë'ŒÝx9”T×ñ—ÕÃãCëµwøYùSçO­ÞøŸÉ^Ãî~Ãöú¯¹êýëæ_ý%ò·£ù£ç/ýìÿ3ÿÚ°«ªàêçvAËŽõªÒNyĨà³Èéx|þ²°!/̳X€›ë^+±£L¤ƒÛ:}(j,È\™“7Ž€¼"ƒ7*$®ÀWígvz½ÒH¼b]Ù»Y…p>q R+Ú;3žÍç(IØÈ]oZÇ&µaÌõewF "%ZîIV¼ãý—ï;U䃥}(’E¡½–»Ø@%²ðnec##a–EŽ||%“ýÅ<°¥âjØtÕõZ´&‹‘ÚÈ+w¬ß¶ZA¢Ìè€3&ŽMcqé”<è‰LJZ Lš-&‘h`Ž8yƒr¡ƒ,ÁW J.1ÛRH²]f™8EËeTE]7Øóé¤r00øñél¨Àèôb,¤ŽF|ôX #ɘ0QóÓnÈpÁí\=zí}ôE³dY]õÓM¹à { ¾*)íìävt#ŠiR¾Y’^Ã@qQH¡­l“£šLZ%Ä1âZʘ†z —ÇàãA˵tŠ G¾ªù é_uä’˜oZnöùl@iY8É(e‘\! zÿALì(€›J }`V®É¬Ø{[&„Ž áëÆ ‘n³öZ.Gù¢ô'ñ/øCüFÆ~»üïô»Ø~]žü•õgî}ï£ÿYþSú+õ‹âdúKõ ê/¸ÿÚþY÷ì¸yÚ¯$+éD’- ìµÞÂ-—ƒs+ ²,sãá,Ÿî)å…/V毫úÕ¡4\udÎÐŽA[½fý²Ò `÷DØ×orzÃ×j@'cíË’)¥¥)隉÷9Êv3©ãt„ «Á@GJ$öy©x®7-_…’:)$Æ1rų‡ Þu³´t'okDmî¹ØÃ,¨Ç EŸ¿j8ôxÔnX–ü‡Ía’ñ1ù¬bWl–)™Ç€ÈØ6|ÁÓ¡‰6|ÑU€ß¸` €0À7ò*¬Ý]ëZ²à6B]7ìêµ÷öû…¹›§IÍ÷Šp/¾ŸÜ#ïÜ0ô[|Dþ럅Ïß×ìûÜO·›:ÝŸD¿§ÉZM´e5Û÷#ÅrTj‘}MÇ‚í~¯óY5p¸ç½ÚÌw1ÕUõ¡S&䦎 è‡8¤¬€0§ïz ŸìÝc ¦/ˆ0Ë"¯•ì;i4Ë‚mŘàIÅX&÷a/‡;U3lã–þ§„Ù-tpš©s¶›çï¡Áä/飾RcÜŠ•F)Ÿ0aê1QÎ>±²½Œî£(ð<|M9EË2M„¶ÇÅÓ᪚õ5û>÷wW›:ÝŸD¿§ÉZM´e5Û÷#ÅrTj‘}MÇ‚í~¯óY5p¸ç½ÚÌw1ÕUõ¡S&䦎 è‡8Œg[¼è—õ«v6Œ¨»ŽäyQJòRQ² 8æ.·Òe (¢Ž˯úÖnáÚ¤¢^ˆ*ƒ‹Ñ¹=×çøxïæ^÷¾}^öImìfÿÓ‘Ô÷±¥jh±¤-Ö‹{P¨U]n5|MiD&ÎÐ×—{6\2:¹Q¢ÏuÀ&G‡ÄÛ·GÉÃ8âM¬™ypíËz±;'Ìu ß/ÓËXiGSEMÐnÁ+õk…7í›j‹TdzœÑª:·á>vâpRVUÑ«ûOØÚ¿¡]\O°=ð¸YT²žÖKÉAèJ•6Uúº8÷i-Rêä3+ÁȽ‰Ó4Ô2]hJâÈ/#s 0î³GAXWRô³¿ÓÿÕ©l€,Ò1^Žò}#psA/«øþñý‡âû'ý<Ø–À4e¥T|+¯—L›³…Ó¯k)—Ì€‰É£[Õo½9FH8ÒäJG\G@ëd»×‘*<ÙÂ^›U·Ô 6ï_í?‹+ôÍë ŸøømÝ.´Á:µÔJº¯ÕòŠæÇµé‡Ôu9d¸},-uÖ±5dÓ9éÊÐhJu:ø¿'0en4¨eηyÑ/ê VìmQwÈò¢•䤣dqÌ \;o¤ÊQE 9—_õ¬ÝõID½U9£r{¯Îðñß̽ï|ú"½ì’ÛØÍÿ§#©ïcJÔÑcHZ­(ö¡QªºÜk øšÒˆM¡¯.öl¸dur£Ežë€CïN;Ñ{G¥øeÿÅ¿íþâ!ôïäß§þ³Òúè=‡ñóýŸÛ¾µ}Fÿ¥èý¿ÿ>q)&Ý?ü¬“Dõ}â<›‹Ÿq›'ª‹kÛØ«j YZI)Ç ?ö]ï¤"ÎWGw^ÚÔ6[V‰2O.'`¥åŸ±¶\å5ÕÁÔvf”5ÎÈô›´¶÷QºÓn_G©ã¯Û®Q¢5P¢ Â%÷³×j ™Ì <æ+N0—!áY¬º8n* F/HÕá³Ìl !JÞµ, ?“ F}.odQS*b®¶‡’Ö•a³ÂÃÊ(­hÖ317mV7dÍÕã7ä–-\(›^ôÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ßî¼ lãoýbãÿ7°&O°èW𪋵æ™oÚ;­ 7‘*ªªÊoæNÌs•ç~ò7øÓn9ÓP-ó`cŽõ.Ó„VþIûÑÖo02ø©ŒíÇgÃêˆÕ ã«QÄÐÒš³´!¥ÑlÆÊ“G£U0|ˆs/eß>÷/D¤¶–3éÈíƒÙ>ÑU4DÒöƒEò=WT¾©.H>&×Z—këý[ eœ¦ÑZà{ÍnÏ¢_Óä­&Ú2šíû‘â¹*5H¾È&ãˆAHv¿Wù‹¬š‰¸\sÞ¿íf;˜êªŠúЩ“rSGôCœÒVÀ(ëÎ+.[[x÷…VrHT5ÜËÊ—Uœ˜ÙÞ%ð8’-\%aYASQörõ‚Üc+ñ8‰2­DʧˆÅcÅväy7`¾ëuÛ*RÕò3ֻ܅wBü3àÿ´µ ÚÄ:íNRýªªøXä(W]$ǪÀ„–®gV‘öEXßv wZM˜ní±w65¨.óg[³è—ôù+I¶Œ¦»~äx®JR/² ¸âR¯Õþbë&¢n÷¯ûYŽæ:ª¢¾´*dÜ”ÑÁ=ç–Ejï•5ΚˆpTz2=ÁýZ¸u·]ÝuseÐl‚OvU4àή-¯#ðÒhìòù$šº¤Ï|¤Duô®?¨á´Y&ÈÕ =ðڵè¥ý8q+4£ÛÕd<5p— Þ­Õ\Ø»¡ª+¹ŠªÅg¹~£Ž9ÛûtÔ3/+ù‚µÜþÈ÷Ìd‡€:µnë^»µêæ«®Ùt™l’jAšÜZÑü3GáªÑ¡åÂr54µUæøAúqßøOýÃÒŠúáè½ëâüD>jüw~7þ¨õ¿ÕýYüEÿ`ø¾¯ãûÇö‹ìŸôðbX‚¾O,¾¯ñÙ݉•יΪ6f¸XÐêðŠa¦’H„ºZpD|ú©¬”iëÆG•KiBéoÊÇ÷d÷QÜ´X 1@÷#¬ò_ ó^íw&µí¿]á=¬£ªª¶œ¨k8W$‰\6Åm'§ºía3¸#ˆ?S³ª¼ŒšÓDÆ(6¢îXÄDHæ>¨.Œg[¼è—õ«v6Œ¨»ŽäyQJòRQ² 8æ.·Òe (¢Ž˯úÖnáÚ¤¢^ˆ*ƒ‹Ñ¹=×çøxïæ^÷¾}^öImìfÿÓ‘Ô÷±¥jh±¤-Ö‹{P¨U]n5|MiD&ÎÐ×—{6\2:¹Q¢ÏuÀ!÷§è½£ÒŠü2ÿâßöÿGñúwòoÓÿYé}?ÇôÃøùþÏíß Ú¾£Òô~ßÿŸ¸”“n‡ŸþVI¢z¾ñMÅϸ͓ÕEŒµíìUµ¬­$”ã…û.÷Òg+£»¯m@ê-«D™'È€0 aï}t»çÓÞÛõ™ÇZ-»ä-ØúWN;u6¤å· Dj¬°æVX%JFgK‰²«}¢¢šÙ$yƒšµg&äqWáõY¯@¢Ážì$²·þ¢¹]é§aH’“xŒ rWô4”œÂ·¯…5±Â¯Ú8”¶ÎxêÉ™ˆêùøž—|żr<—ÀåxÃÉ3Ž5QàÍÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ßî¼ lãoýbãÿ7°&O°èW𪋵æ™oÚ;­ 7‘*ªªÊoæNÌs•ç~ò7øÓn9ÓP-ó€^LúÍDvo§7hKê¶f¯« Bˇ‹*O†§1ºÞU°)­G¿d‹×c7YMÛ"GGŒõSo‰³m·×]¸ { ³¥k®æù}N‰ø¯BÆç•TA¯˃=MBò䲩*ŠšGø§Tœs#å58ß<ãN7Ûž4Ø ËÛ¦¡™yXð¯Ì¨†çöG¾c$<Õ«wZõݯW5]vˤËd“R ÖâÖáš? V.‘©¥ª¯7À*ÓŽÿÂî”W×Eï_â!óWã»ñ¿ðýG­øþ¯êÏâ/ûÅõÞ?°ü_dÿ§€[çQZ†{åcÍG3¦¢Õ† pV®m×w]\Ùt “Ý•M83«‹kLjü4š;<¾I&®©3ß©Úú§ÓŽÚR“eª„^ù’ZžÔªþ ¸ŠšHê±î8W‡QêÇÏÎk­×ÕeÛER|³~[?M¿o+M»,fÛÅ’hŒ”|z=5¨“àW7»ÚBËÚËQÚ(©Ê)KW®’¢H·ÑÔpÍP »Ýg»¹Û€.'` €0Àü力iºjiª‰©®Úo¦úñ¶›é·ë¶›ë·ë¶»kÏmŠã „2-òK²$(¨çNX`ñš¼fºÍÜ$¢Jo§ W} áÿÇ'Y¬øåÅMõ¨P ô%GëW¤6½d«W(ÕÃî*H=›`Ì`Õ3—,¸»Šâ7[† z7Õ¦š#¨uÑâó¢=„¶ ]võ:Y;”)Zªs›B7¶Ô…¶fÊ%µßSDæàª‹Ëå¶‡Ž Ž šê²­û:oÌm³¶q†r»Zä˜O쩈³BE•º @‰0£÷|,¨ÀŽðî§uâ _ÝuL~¯ ½oØËé´.Ø\éÙ¬~Ä™ö ±#w3Ól&eO¥ ©Ñ÷è¢l¼TpPcýÆš¬:Óã·§}C—ŸPµѹ¹xºp=eÒ»"Ø·$qêõ" Ч[ÀÌ\S©ëê޵Лïø®«õã0¯V0ZþÅñ0Ù¸Ξ.z¥íÏcøëøÎlÞl­îŸ¼ÞÏR¬úң݊msñ@ï6Ú…âàà¾ÜšÒÒâµâx™Î54œƒRšêï€2NËxêé×næ¬ê¤s$œŠŠmÞ[²­º’A!¯6"ð¾õ¼è¥=<;±«u ’$ýJö|¬’£¢DVÜÛ¿wÊÀKXl:']Äcl6 ‡ŠCâ1‘ŒÂÇ#˜øöâz(1 @ƘÍ[4h‚H ž‰§®¼’` ´l¿6. ŽM{ØXŠŸNdLåö Tå¶`JÎË•²U«„ä¶…› ¤ìÃβjü‘iå}!~\’\*»ÇÛnã`$ezCÖÝ6‚§{VîO«Ô1½o.†O¬ºnÅ£#jÁŒtBÎ¥æ5õ‡ %d([9 !Rv¡¤ F°naƒÔY·Ñ0>Ûô‡©›õ‡Ž˜óCÀxë4ô{A˧û’k3ÔÇ.tu©Îe¼Íuâo¼Û’ÜÌT›s´ÁC»I6ا ~zÏÒn²õ ´ÛJ¹s+e9âÄ™L'–MÃeÎµŽµxÆ4Â]j\Ó É‘Œ2"E¬\ iS°‘¶äˆ¢ {ß¼Õ`5u'âó¢=uµÜÔõ:+9‹üÉ̇3›BU ©6˜ å¤³z>«™Mäm¤‘‹×ÃŽ+PCa*ýøÇ›*Áë¦ë>ð©¯:&ŸìÅU/¤/ªú;hÕÆMXK!–»ºY&Y˜¿<¢«wŒHˆ08y€Å‡:fT1v J xÑûFîKõS ÝHé;Yª=m¨BÙ ZÀ–ž—Ø¥‰6Ð* µÆSfÛ²É݆t@®\¶”ÀpÜ.ˆ¦-UMv¤ü^tG®¶ ›šž ‡Eg1™9€pæshJ¡5&Ó´–oGÕs)¼‚­£’1zøqÅjl%Bc¿óeX=tÝ`2.Ëxêé×næ¬ê¤s$œŠŠmÞ[²­º’A!¯6"ð¾õ¼è¥=<;±«u ’$ýJö|¬’£¢DVÜÛ¿wÊÀf¶ïJzµyÒðž½XÔÜmÝCX-wUÅbŽŽÖ‹ÔÏà¡×C T²j̼B]WŠ€tèÑÒb„:t5›´™9]ÉúåÕÚ©P7•¿_«ö(Ái!I¤E I¥ò©œÐÚLÛ—šOì Ñ©4úÁ˜’h8k'²©´˜ù÷ `©™f‚ oÜ€iY]éÙ]ï[öbE÷[²¡„O«ªÖbæA)ø•¢ê8ò|ÈdQ3iÂö#%R%AäÜuÌ•!ãµÌ»aŽ^4pUØþ­ÐÝ·‚0®;_¶žFCI†M£[¢vS”Ãf¡[¿f"gŸ@ÎF')xÆe ²c'†ÉAlÌ“ö‰?Õ»Ç)*5St§«T•'6ëµyMÆÙÓövÒÕ­H´ÑÛÕ´öz%0R¶Ô²Æ/+™ÚG% Ql éÙü†DdˆfŒ…9|£M¢ÖŸ½;긼ú…¨ÖÍËÅÓë.•ÙŹ#W©lU:ÞbâO_Võ®„ØÅu_¯…z±‚×ö/ˆ1†ÍÀÆtñsÐí/n{Ç_Æsfóeotü æöz•gÖ•ìSkŸŠy¶Ô/öäÖ–—¯ÄÎq©¤ä”×W|?pÑÉ£1ɬnC ˜)‰KA–ŒÊc2Í ‘Ç0p(Ø#‚_¤á‰AÆ;t<ç¨,Ñó' ¶r’ˆ«¾›]ô7‡ß=g´£w59Öql>Ä·®ˆÈlvÉ U¨]²¬É­QBlÛc©VxÉe¬µo‹«Ë¸Ë]õj’Ihctx¼èa-‚×]½A–Nå FVŸêœæÐÁmµ!m™²‰mwÔÑ9¸*¢òùm€áãƒqoB¦ºŘöÜ&ɲ(hÏìÇHúÉÛä`ÿ^«—r"՚Ɩ®¦Pùý™NÙm$­˜²“1‰ÚÄÊ¿±@“³1¤” ¹C`òØ e‹Ôš7Ñ0>›ô‡©›õ‡Ž˜óCÀxë4ô{A˧û’k3ÔÇ.tu©Îe¼Íuâo¼Û’ÜÌT›s´ÁC»I6ا :ËÒž´tù§4 vî4bÇvÝ6–Ϭ«~Λólíœaœ®Ö¹&û*@",ÐÑ`E%n‚ÆP"E Lèýß *0{WÒž°÷j)‡vj«ec „ȹ–ÂI¶’M SHLv ŒpZbÖ²Hurø{•’â?'‘Fú ™ÜêÕ·Á“Sôë4} !êýeHB#ô<ɴɼê¼vÉ̘}‰µˆÙfSÇöQIc³’ ÔÅŠû’›—>lÀôÛ0|Avm ˆ/Z|vôï¨râóê£Z77/N¬ºWd[äŽ=^¤A±Tëx‹Šu=}[Öºb=ÿÕ~¼fêÆ _ؾ Æ7ÓÅÏC´½¹ì͕͛½Óð7›ÙêUŸZT{±M®~(æÛP¼\Û“ZZ\V¼O9Ʀ“jS]]ðIÙo]:íÜÀUƒ}TŽd“‘QM ;Ëb–U·RH$5æÄ^Þ·§§'v5n¡2DŸ©^Ï•’CtHŠÛƒÛwîùX k ‡D브bƒ†Â!1ðñH|F21˜Xäb3ÜP ƒE"ÄѳÃÙ ‹fIÑ4õ×€2L—ÄÀObrˆ4±‡ºÅ¦qÓq9(¿Tõ¹‘ rËZ5Ë2,ý`çŽ[ú¦Ú½oñ>3W(/¢jê»õê—Šõî=Õ1uøW=y‹Ó¡ºþ.­‘îBcV m^‚V\ôáY8¯“ úÒb%Ékª˜|ýÛ‡Gu§ÇoNú‡./>¡j5£srñtàzË¥vE±nHãÕêDN·˜¸§S×Õ½k¡6#ßñ]WëÆa^¬`µý‹â a³p1<\ô;KÛžÇñ×ñœÙ¼Ù[Ý?y½ž¥Yõ¥G»ÚçâÞmµ ÅÁÁ}¹5¥¥ÅkÄñ3œji9¥5Õßd–ñÕÓ®ÝÌX7ÕHæI9Ú¼¶)e[u$‚C^lEá}ëyÑJzywcVê$Iú•ìùY$1GDˆ­¸=·~ï•€ÍmÞ”õjó¥á=z±©¸Ûº†°Z(Å­©ŸÁC¯†©dÕ™x„º®/éÐ0 '£¤Åtèk7i2rº*“õË«´?R o+~¿Wí Q‚ÒB“IŠ“KåS9¡´™·/4ŸØ£Riõƒ1$ÐpÖOeSi1óî ÁR;3Í@߸` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0ÀYï¦Í„ô÷³ÚpK#6P VÂ%núzN±M‹”#¹}!k9 ˜V*+—ò`›åÑ" Ià}ŸpdxáЎÜ5ðßµ=+ìÍÏЋÖUWviçbæTÄ&+Atø¬¾y1ff¿Žï*°;TÂWX"äF ½¬ÏFUIœÞÃriñ}ùŸó¡Ødêjó²?2)ç^-Ñ~ §tíL";mLïVTš• òVF°\ ìÅÉq^!,7gÆ KWÄÜC4ÃWîÀ›µ’Y“;k²´‡wúè©n·utt ˆ^¬ûYë‘V3’®e¨Öu!°R(‰ºÖPÄÌeÔ1â+$ÁR=g³U¤«0vI[¯ ß}'Z‚ëÏlì(m]H\Hö–ž¶l[Q’ÎiÁ=€¡!ƒÐ1Omg?Ô|\^â&ÖWÙ‰ÐQ‰ŸâoùI2aP;1g\·¬{®^:Î^/Zû ëm±d6íW ¼>hƒIÙEgÒXGXÎG;7íRebOe–¬í èØ5t;Õª©žØv:åc˪w°áº{מ¾õnÎ0\—df2ôt +³²f–"›yU´Ž·9x‚о=q #© Þ EÁëawH)/¬<ÁÙ%l~¼'}ôj ¯=³°¡µu!q#ÚZzÙ°MmFK9§ö„†@Å=µœÿQñq{ˆ›Y\Gf'AF&|G‰¿å$@êùní¥Žç´åúËâÎyzÖÝ;ìg`úõjÌœöb¾­ÍLŠuîq"ŒHßаc0Rå-3K…ÒBæ0éô=»r'ÂÀÉ%’6ÄPh¾uâù®;EEÔ½Š¨ ¬j²º`1«AÛoDG`rqˆlиÿжà Ùmƺª*0»G¬ße[oÎJN|ÝÛêuÒmÞþ>N9é =5”Cî+pßdb±ë1µýŠò²²&Tí-½hA+V% “2v1êæìZÄɂŽŽ1 ÄÞ¾Ӎިýlì÷yºáòË?‚éå ùËæ¯yú“õ£¯°{ÛÜþ]ùpOÉß-|åò·¢÷ÙW¼ûo¾z±^³Ú^á¼Ç˦ÔçK¥õO ÏnòÞ}º¡jº‰¥Ú0 2¨Y6¼@Äžof–¯Øl0´6¡’Yã ÅËÄX$°1€æïPAÓà4ûO3ýÒZºîu¢ãÅpÆÑÒÛ*'Û‚ºw’(á«Gu,e•;ú·Mžî=S `e/iLëð ±vüêŽÚ³[Ú]¥¾…ù³3é×QÉö¾G{xaëLÀx95¿ëÄBsÚ~ÊJÒXV x½¨Òoõ4 8È8¼ñcNœ}®‰D«p&€¯1“ §ÒIÇYçÐ>áÖÝ›tÆCÒb– {Äßc¦À‘œA» ;Z=ª$õZ®m”n"ˆÞPWQŽ•Ý© :ˆÏ˜ Dz5ÜA=šê›*Zùê§Lìþó„­ “‚ö¼½iZ°IÅ$ÿ#\±X”k`Rhü x¤Ä®¼`ò:¬Þ(mŽ’!Ò_`'7I»3röºæÚ°º²{­¼¤,SG«5²£Ò¹ý“•rQì†Sšµ:m¹àRñðÇÎ’™ e³éXQ–¯ãm€š˜` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À` €0À5­ÏqiÓÖÅbÌŠ"ØÕ¬êÔ³”tÜ[‰|\¬}.%ºJ¸E’¤urª ªš‹h–Éé¾›mÆÜOVñóÛZúOáðõÔû®¬tñ­Õ~Çõ^q¥]`Yr½¬0ÓǬՕ=7Š#,§`Ü6&ù l•.å‹Xò’‹™™¢éß´ÑÃ<\v;Ñ’õìÂV}Öß'ñNëNKµMw‡•«y³{\ìL‚ÕòŸX Ws1a› 1ÞhÝøåehƒI¼Ðnçñôjúî_híiÑØÚ]zì׋Þ>އLÆ–‹3D­NÀI&§t´wˆÊµ!æ Éé)taI 2(<޵Ý©ÀW§V|;Þõ-—ÖáÓŽ»xPˆÀº×5Jv‚é`%;y·ª¸ÑÌQÁ3й8]>’™ôÒÍØÓYPãÌ^¯ÜD߬zßiòœ²b ú­ŠV•ýé\m´N*~f.Ë‚]Äœ;.NŠ¼Û†ÀŒ§ªœ¹ugýïRÙ}n8ë·…Œ ­sX¡Çh(Þ–S¸÷›z«Å8«“…Ðóé)‘ÀOM,Ø5•<ÅáÊýÄMóÆÞܨèÔWÊãá^LGtªÃé{*ÞÂòÃä¨cC]Œo±²()'â*jA%²­ÆŒÛmž'í’xø9«¸'déEù9ˆf¡¾œuŽ!Ó¬PU“"r-DVQšñ„€ºz"VJä+51'"ÙnÉì”Ò„N¹ÑM™T†ì™}£ÇUY€wàîìñ¢œÂÖö²?^Ç,ÞA5â¥iõ³·v}û÷cº×ÛLPöøtÔPÙ£¾ô’Vä÷ai62ì « êïúK¹ÝÊ¿ºxG¦rÊÿ»ªR’™:]‘=vÅæ´¥NRñz-±ðÎ,oC G""äjÇ JªCIYøþ%~Þ«w €Õ]_ñ9uuŧ‰(óû~g²ñý{ù ´-Ù±4¤Q™=’'·`û8„)ÔJ8€cãT“1xRrÌÜ”ƈ:ð 3JèÀ{À6ª~3Ys °«ºDxš{árß¾è+b[عïZ,®÷[½×¬»Öy¼¦§/aô—™M#ZsCVs9YKTo+šQÍh•ÌBŒÈŒ&Öv¹‰òžpôÄUñ1}¼¦;î Ýâc©–e:}u¦ƒôO¯èB£hÈî8¡¦Ï.ŽÇ½¥!w;øÚ†“‡·w]Å`ëDذ´‘Èid¬X%{ÔLµaHSu©÷ž¯*ªò iØuœ¸è´J" ×zÐ{ÅÇ.ðzʲYÛNTm²[®Ñ²»nŽ€m\€0À` €0À` €0À` €0À` ÿÙ./Doc/Tutorial/SC_dilatancy.png0000664000175000017500000004540612176660653016223 0ustar vborosvboros‰PNG  IHDR} PYFösBITÛáOàtEXtSoftwaregnome-screenshotï¿> IDATxœíÝw\Sçþðo €@0T,C Á "*8ê j­¬¨­”ÖÚRm¯ÖÖíàúÓŠ·íít â¶â@oU\X•Z@©BAÅ"Êä÷GlÄ@NrÎ Ÿ÷Ë?’“ç<çsBÌ7Ï™¹\N`&lhEPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpPw uÀpL?ùä¶3€ :ôþýûlÖKŒxôèÑĉ£¢¢V®\¹téR -ýýýkkkû÷ﯧ$ú¦úNjù®ŠD¢º»»·` wƒkÂ|¨ÎÈ`ýÍÒJ`¼Ë&LÀÌ̬{÷î[¶liA'¡¡¡=zôP<uuu[·n4hІ fΜi°l-S[[knnÞJ–kÈ ×–Îeïò†­­­··w¯^½Ö¬YãâârèÐ!"ª¬¬|ã7ìì쬭­'NœX\\¬hœàáá! """‡ºzõj"š1cFjjê¼yó“““êKúô÷÷ÿä“O&Nœèàààææ¶wïÞ†!w„ «V­Úµk—@ ˆŒŒTmß0‰¢“W^yÅÚÚZu)õõõK—.uvv¶°° LOOW[tî4¬È’%KFíêêÚµk×ýû÷«u•˜˜Ø¥KÅãM›6 ‚£GQ]]µµõ¹sçˆhÆ ½zõ²°°ppp˜={vuuµvF"¢‡†……YZZvíÚuß¾}Êéîîî{öìQ>‰D¿þú«"ð²eËÆŽ+‹¿üòKÕ?VS”Lš4I±ˆÄÄD‘HtêÔ)µÚ¬Bjjêܹs öå—_þúë¯>T¼¤ø@öìÙsìØ±Û¶m›?þ»ï¾[QQ¡åRšJÞÔô¦Þ-—¥úªÎÒèÿj懰Ë­¯¯_¶l™«««™™™§§§âCøÌ¹šÿË+ÂÄÆÆN™2ÅÊÊÊ××÷âÅ‹¿ýö[@@@›6mF¥ü³¶ø}Öß·Š’¼ôÒK3gÎT>õôô\¸p¡\.ˆˆèÞ½{ZZZVVÖ°aÃúõë'“Éîܹ# 7oÞ|ûö휜œ 6(æ2dȪU« §ìPõ¥Fû”Ëåýúõk×®]ZZš\.OHH‰Dj9›š÷ý÷ßùå—]5µ$Š¥üøã¹¹¹K—.U.eîܹAAAiii7oÞŒµ³³»ÿ¾æ®4¬ˆMzzº\.?|øp›6m®]»¦ÚbkjQQ‘\.ýõ×–-[&—ËÓÒÒ,--%‰\.?~üxAAAJJŠŸŸß¢E‹¾“ªU…‡‡ûùùeff^¹reРAB¡ðäÉ“r¹¼S§N»wïV6³¶¶>sæŒ"°X,>uê”\.üø±j·MýQ&L˜xåÊ•¬¬¬áÇ+¡ª©UhJBB‚µµumm­¼ÁR.—+¾I÷ï߯åRšJÞÔô¦ÞÕwCòTß@e'MýOi¹Ë•Ëåo¿ý¶››ÛáÇ Nœ8qôèQ ý?óC¥ÍyÅJ­_¿þêÕ«ÞÞÞÆ ;qâÄÅ‹½¼¼”™uyŸõô­b|PwùAù5WWW·nÝ:Åܽ{÷LLLŽ?®hSXX(Ξ=ûûï¿ …†eI›ºÛTŸr¹¼_¿~óæÍSÎ"‹Õ¾Ê5ÌÛ¬º;kÖ,Åãúúz‘HtòäÉòòr33³ÜÜ\e³€€€7jèJóŠDEE)ç mXr¼½½·mÛ&—Ë=<77W&“)¸¸¸¸ººæääøøø 4ÈÃÃã•W^Ù¼ysUU•öKiªOÅÓÎ;+[ÚÚÚ*·Mi3¯ö”Çb˜šš:88<|ø0''§®®ÎËËKð· .(7Uµ`ET÷èÙ³gÃÁÁÁgΜ)-----ŽŽÎÈȨ­­=sæLpp°¢AjjêàÁƒ­­­Á¸qãJKKµ\;ÅØ:00PñÔßßßÔÔô™sy{{7õRÃ?Jnn®@ èÓ§bbïÞ½ÍÌÌΨý*H$’É“'»ºº._¾\CH¹\Þ¬¥4õqÒü1Ó@ò}5üOiÖ‡°¹ËÍÉÉ©¯¯:t¨ÚÄæ~ȵYUÊ•j×®ÚSíßdjþ‡_—o£„ºËãÇÏÌÌÌÉÉù믿V®\©œ.ÔZš˜˜œ8qb×®]ÎÎΟ~úiŸ>}*++›µ¬†}6:½ÑïÙ¦æÕž‰ÉSK¹\.“ɈèÑ£Gª¿5Ÿ¤9L}}½òq]]]ÃÁÁÁ))))))tppèÖ­[zzzjjª¢îVUU7nôèÑ·nÝ’Éd'Ož”J¥ÍZAe­555U>Öðö …M©Í¥!íWA"‘Lš4©¦¦æÀŽ *..~øð¡ÚÙPš—ÒTòF§?s55/«Ñ7PÃÿí?„-Xn£Zü!×¼"jÍšzªùÍWÕâ¿.ß*Fu—7Äbq=¼½½­¬¬S¼¼¼LLL”çoúúú‘‰‰Éˆ#þýï_¾|9??¿á9¦¦¦~¾5ôùL-›·©$ª|||„Bá‘#G´ïJsÕ#VÒÓÓ}||Ôº ÎÉÉÙ·o_HHˆâé?üP^^®øÍ~ýúõòòò… ::: ‚ßÿ]s0UÞÞÞr¹<77WñôúõëµµµŠÇmÛ¶UþØ/--mÖ† U^^^ò¿7/Ño¿ýÖð·…–«P[[;yòä²²²C‡)?xZ³f­­­ÚN—7JÍ3ßœ–-ë™ÿS”šú¶`¹Š®NŸ>­MÿZÒ~E4Óå}ÖÇ·ŠQBÝå1GGÇ—_~yîܹ.\ÈÎΞ9sfß¾}322Ö¬YsõêÕâââ]»vÉårÕ-9 ®®®gÏž-))yðà6}ê’Gó\M%Qegg=gΜÄÄÄ¢¢¢K—.-[¶¬áÆaÕ®4‡INN^¿~ýíÛ·W®\™‘‘ñÚk¯©uåîîîìì¼sçNÅ788xÇŽ}úô‰DDäææfaa‘””DD7nÜX³f6ïò]š8qâÒ¥K%Immí| ü½?tèЄ„„ššššššE‹©N´×®]»—^zéwÞÉÊÊÊÉÉyÿý÷…B¡Ú¨B›UËå“'O¾téÒ¿ÿýï¼¼¼ÌÌÌÌÌL寄‡^»v-++ëðáÃÓ§O‹‹ûꫯڶmÛÜ¥hé™oN –¥Íÿ¥¦>„-X®Ý¬Y³fÏžýË/¿)Ž«ÒòC®ûŠh¦Ëû¬o£„ºËo?þøc``à¨Q£ú÷ïoccsàÀ@ ‰:äææ¶zõê­[·*ÏŠQZ¸páÕ«W]\\õíS—<šgÑDÕš5k¢££çÍ›×¹sç1cÆäåå9::jîJC˜÷ßÿþýݺuûþûïwîÜÙèN¸àà`333ÅE‹‚ƒƒ¥R©rç®ÝÆçÍ›çææ¹páBíÞž'~úé'"ruuõóó1b„rùñÇ·iÓ¦cÇŽ}ûö µ´´lV·ªÖ¯_ß±cÇ€€€qãÆÍ™3ÇÔÔÔÂÂBµ6« ‘H’’’îܹ3lذ>+((P¼ºoß¾îÝ»÷ë×ïí·ß–Éd©©©¯¾úªZ:¾Qªžùæ´`YÚüOQÕ臰eëøŸÿügÚ´iQQQ;w~ûí·%ISýkÓ[sWD]Þg=}«Akؘ Êßß?22rΜ9l1ëׯ{zz–––¶oßží,€ëU£´´´GùùùݹsgΜ9£FBÑàlg0BUUUï¼óÎsÏ=7xðà:´ì‚Þ ØÎ `8ïê.€á îê.€á îê.€á îê.€á îê.€á îê.€áð²î!Çãê ñØÂõú£þS¥ºš¬¬ˆ84äÎÂxWg––l'ㇺ«Â×—ˆwí½Ávfõ©DØÔ Ï€íÌ<€ºÛ˜º:¶€qBÝ}ÚíÛDDŸ}Æv0NØ¿ÛÈ DØÅ š`ÿ. î6°`QEÛ9Àa;sõõdfFcÆÐ¡CüÐâį́»¿F„]¼Ð$ìßàÔÝÆü÷¿DDR)Û9ÀØ î6æµ×ˆþ>À €9Ø¿ÛäËDØÅ Ãþ]@ÝmÂÛo³Œ¶37¡¼œìì(-  øÛ™™&ÅİŒ Æ»šZáÐ*hÆ»z`iÉv06¨»M[¶Œí`lPw›MDtìÛ9Àx î6MqhÕæÍlçãÁ›º{ïÞ½ˆˆ±X,‰ÂÃÃïÞ½Û°MYYÙŒ3ìííÍÍÍ{õꕘ˜ÈÀ‚耈xTwÃÃÃóóó;–žž^__Ö°MtttzzzbbbVVVhhhxxø7tZjß¾:Íð4~œGTZZêäätúôéåÓ .øûû«6ëÞ½ûôéÓ—-[FDõõõ‰‰‰ãÇo´O­ß²…^}§€#?H"‘‘åß'ö(œ;wN­Ù˜1c’’’JKKe2Y||¼X, ÒiÁ“&íÚ¥S'ãGÝussóððˆ­¨¨¨­­]¾|9•””¨5[µjU§Nœœœ,,,bbb’’’Úµk§Ó‚­­‰ˆNŸÖ©€¿ñ£îÑîÝ»sssíììD"Ñ;w¼½½MLÔÃ/X° ++ëøñã—/_ž={ö¤I“ 4ô)hŒz#‘ˆ¾ý–ÙuѪXhß/öï*•””˜››‹D"±Xüõ×_¿þúëÊ—ªªªÚ¶m»oß¾qãÆ)¦øúúN:õÃ?l´+m7ÍwêDØÅ ªŒ|ÿ®’“““½½ý®]»jkkCCCU_’J¥R©Tu,;†u²`®=üMÈvmíÝ»W*•º»»gddÄÄÄ,^¼ØÙÙ™ˆâââ²³³×­[gcc²téR±XÜ¡C‡-[¶äääüôÓOº.82’Þ}—._¦>}X hÝxSw«««cbbJJJÜÜÜ>úè£ùóç+¦çååeff*ïØ±ã½÷Þ3fLee¥——×–-[t=ž™ˆllˆˆvïFÝÝñlÿ.ƒš±i7€§µ–ý»¼†º«…ÈH¶€‘@ÝÕ‚âÀi™ŒíÀ{¨»ZxñE"¢_e;ðꮬ¬ˆpC@`ŽgÖ¶5i€'p<3 îjgɶ€1@ÝÕŽâF¼55lç~CÝÕŽ¿?Ѷmlç~CÝmŽ“'ÙNü†ã™µÖ±#•”àf ÏlºßÊZ=Ô]­½öÛ €÷PwµöÊ+DDÕÕlçCÝÕZïÞDD;w²x uWkŠKE8Àvà1Ïܼyˆp•fÀñ̆ѡÛ €ßPw›cêT¶¿¡î6ÇÌ™DDR)Û9€¯Pw›£O"¢ÄD¶s_¡î6ßæÍl'¾ÂñÌÍž‡4´v8ž€Pw›i¶¡î6Ó»ï²x u·™BBˆˆ22ØÎ¼Ä›º{ïÞ½ˆˆ±X,‰ÂÃÃïÞ½Ûh³«W¯Ž;V$‰D¢áÇËd2†s˜š¡î@ ñ¦î†‡‡ççç;v,==½¾¾>,,¬a›ÂÂÂàà`—Ç'''O™2E_i>ûL_=€QãÇyD¥¥¥NNN§OŸ Q>½pá‚¿¿¿j³Y³fÝ¿?Q»ëZ´øpÈɉîÜiɼ`Œü<"‰DBD–––ЧŠçÎSkvðàA??¿áÇ;88ôïß?99Y/i^y…JJôÒ3;~Ô]777ØØØŠŠŠÚÚÚåË—QÉÓů¦¦¦´´tÕªUS¦LIII 7n\nn.ói‡V4?ê.íÞ½;77×ÎÎN$ݹsÇÛÛÛÄä©ðŠC¨^z饷ÞzË××÷Ë/¿ìÔ©Óf×t4æÙQ† !"ª¯×eu€/ZX,š d0™^õîÝ;;;»¤¤ÄÜÜ\$‰ÅbwwwÕVVV666žžžÊ)ÅÅÅúláþÝ®]‰ˆ’“)4´%³¯4Z,Z\zy3ÞUprr²··ßµkWmmmhƒ²tãÆ åÓ¼¼úhþüùŠéyyy™™™ŠÇ¡¡¡?üðÊ+ »wï~ðàAÕÍÎL²²¢[·ôÒ35~œ¿«-?—ˆ"#iÓ&Ü  Õ2òów9çÅÙN¼„ñn‹”—“ýõ‰ÅŒ†~Àx×°åöÔ)–cß îê !íÀ3ØÎÜòù‰‡V´N-.":G´zõjÍ ,X KÿœæêJ/†ÐNc¾¡C‡jnpŠÃ{@uï~ñ}ðÆ»­S‹‹¶3·Ô±c4jÕד©)s¡€p<³Á)î˜Ívàìßm) "¢³g©W/¶£o`ÿ®N]ÐäÉ´gC‰€7°·Ù¨»>>tõ*­h…°— ffl'ža¦îVUU-Z´ÈÓÓÓÖÖV¤‚‘ιëå—ÙN<ÃLÝ}ï½÷Ž;WQQ‘””ëèè¸jÕ*F:ç®ðp""‰„íÀÌìßµ··ß¿pp°@ Édàúõëo¼ñÆéÓ§uï\OØ¿+•’PH¿üB£G3 øåý»?vww'"KKË‘‡‡ÇÍ›7霻WÌ8vŒíÀÌÔ]ooïëׯ‘ŸŸß·ß~[SS³gÏ™LÆHç\—’Âvà f¶3oذÁÔÔtæÌ™)))ãÇøð¡……ÅÆ#""tï\OØÎLDPz:N%hm8tþnUUÕõë×ÝÜÜììì˜í™YÌÔÝQ£èØ1Ô]€Ö†åý»çΫ««S<¶²²êÝ»7Ç‹.cpD43ã]kkk¹\>`À€ààààààpÿä]fÆ»þI]ºP] uºÒ5ð ËãÝòòò“'OŽ3&33sêÔ©vvvýû÷Ÿ?>#sZ§NDDG²øáý»‰äüùó?üðÃŽ;¤R)—/þÌÌx—ˆZ´ˆV®d +à‰f¶Ž=zôÌ™3)))ݺu Þºukpp0#ó@r2Û €˜ó ‡÷Þ{/::ÚÁÁA÷ €±ñn×®TT„«E´*,ŸG´iÓ&Åx·´´tàÀ!!!!!!æææºw®'ŒÕ]œJÐúpåüÝÒÒÒ”””}ûöíܹÓÌ̬ººšÁΙÅXÝ]·ŽfÍBÝhUØ¿ÿnQQÑöíÛ—/_¾|ùòíÛ·wìØqâĉLuND÷îÝ‹ˆˆ‹Å"‘(<<üîÝ»O:U ìØ±ƒÁM6Œw%­0Sw»téâêêºbÅŠúúúÅ‹çççnÛ¶‘ÎÂÃÃóóó;–žž^__ÖTËíÛ·—––ZXX0¸tMºv%"ºxÑ@‹>cæxæ/¿ürðàÁíÚµc¤·†JKKOŸ>}úô退"úþû222üýýÕZÞ¾}{ñâŧOŸîÞ½»žÂ4îèQ8РKbf¼;qâDý]"’H$Ddii©xªxpîÜ9µfr¹<**jÉ’%;wÖ_˜Æ>lè%1¶W¯ÜÜÜ<<€<ÂpÝýõW FÝh%د»r¹<--Mqþ®¯¯ï€éV®»55diIEEäìÌXŸÀU-."Ììß-..?~ü¥K—\]]‰¨°°ÐßßÿÀŠË\´ mÚ%&’ÑïÉ0sþ¼¯¯¯rJvvv``àãÇuï\OÞÎLD;SÛ¶ôÛoLö œÄòù»æææ•••ªS*++ÍÍÍéœ7ºvÅ]‰@3fêîäÉ“###Oœ8Q]]]SSsêÔ©¨¨(Ý“€;FŒ ¢"¶C§1Sw×®]ëçç7räH+++KKËçŸÞÏÏoíÚµŒtÎ8’ž…É}œ÷ïßÏÍÍ%"///GGG¦ºÕæ÷ïVW“•ýõ‰ÅLv ÜÃòù»NNN%%%ªS® ž "*.f;pê.£lm‰ˆÙÎ…º«éél'ŽÒ©îŠD¢‡Qdd$3qŒ€»;mÙÂvà(ên]]]EEmÚ´‰¡<ü§ØÔ ÐÎ#6lبQ£zõêEDS§NmØ`ÇŽºôÏKo¾Iï¼Ãvà(êî®]»6oÞ\PP@D... Eâ9??""‰„,,ØŽœÃÌ9¬&LØ·oŸîý’^Îß%"©”„B:r„Fb¾sà–ïGDDr¹<---''‡ˆ|}} ÀH·ú£¯ºKDÍK_}¥—΀X®»ÅÅÅãÇ¿té’««+úûû8pÀÉÉI÷ÎõD¿u—W­0b,_¯*::ÚÖÖ¶  àÖ­[·nÝ*((‰DÑÑÑŒt®pïÞ½ˆˆ±X,‰ÂÃÃïÞ½Û°MlllŸ>},,,ìíí§M›Öh13æ³¶¶>þ¼¯¯¯rJvvv``àãÇuï\aèСÕÕÕß|ó••Õ²eËÊÊÊRRRÔÚ 4hêÔ©EEE‹/~î¹çΜ9ÓT‡zïL©©ï±]ïG¤`nn^YY©:¥²²ÒÜÜœ‘Ή¨´´ôôéÓ§OŸ ¢ï¿ÿÞÉÉ)##Ãßß_µYjjªò±P(œ8qâÇm BíŠôüó$•’©©¡ ÜÆÌvæÉ“'GFFž8q¢ººº¦¦æÔ©SQQQaaaŒtND‰„ˆ,--OÎ;§a–ÊÊJkkk+++¦24ƒâ×@n. ‹nc¦î®]»ÖÏÏoäÈ‘VVV–––Ï?ÿ¼ŸŸßÚµk霈ÜÜÜ<<€NNNööö»víª­­ U{µ¶¶vòäÉeee‡bgÏ®ÒܹTVÆfà$&Ç»zµwï^©Têîîž‘‘³xñbggg"Š‹‹ËÎÎ^·n\.Ÿþ¼¯¯¯rJvvv``àãÇuï\O ±—ˆЧ™3õ¾ 0 –¯›ann^YY©:¥²²’qÐ石¸‚™º;yòäÈÈÈ'NTWW×ÔÔœ:u****,,Œ‘Îyïúu¶W0³­õñãÇo¾ùæÎ;e2™˜˜DDDüøã,ß|^#mgîÞ®]ÃUšŒ 'Îß½ÿ~nn.yyy9::2Õ­ž¨îþç?ô¯¡îNÔ]~1PÝ}ôˆÚ¶¥K—¨O½/ …ëf¬^½ºG¡¡¡«W¯n´Á‚ téߨØýò ê.ŽãÝ¡C‡†††ÆÄÄ :´Ñ§Njqçúf ñ.áF¼FÛ™› uZŒåów^òÁƒ­ý"‘J~~l'®`¦î–––ªM‘H$÷ïßg¤sÞûðC"¢ØÎìÓõ¾k×®U{@Dr¹üìÙ³>>>:vn$Wi>}š&Nd; °L×}œƒ&¢ÔÔÔAƒ)'šššººº.Z´¨W¯^ºÔÃíß%"€Úµ£»w ´8Ð3–«š1cFBB‚îý’¡ë.áÐ*ã㙛͠uwÊÚ½uÀhàºÜN»wSUqø‚Õ`:Õݤ¤¤úúúÐÐФ¤¤F î>1nÑúõ4w.ÛQ€MØÎl¸åQÏžtåŠá–zÃòu3TUVV?~<<Ü××·¾¾>---99yáÂ…ß|ó¢Á\/BÕgŸÑ²eôànÐÚ0³­Õßß_sµÑ0°¹¹ºš¬¬hÒ$úùgv€n8qþ.¿°Yw »xøåý»J¹¹¹µµµÌö `4®»¾¾¾\>wˆCV¯&"ª©a;”®u·®®Ž‘­Nt4ÑܹlçƒÒµîúûû_¼x‘‘(­‹¥%ѺulçƒÒµî†„„-Y²D"‘ѶmÛœ™`„8¦755õõ×_6l b$–°|<3%$Ð+¯Ðµk„Hð ËçÕÔÔ,_¾|õêÕƒ  ÿ¹Grr²îë ûuW.'“'€WX¾`yyùüѦM›nݺ©Ö]ÐDq /´& ÔÈM›6Í›7Ïßß?++«S§NºwØŠøùQf&Õ×~¬´ºnk}á…Î;·zõê7Þxƒ©L†Áþvf"*+#GGŠŠ¢õëYNÍÁÚþÝ_|ñûï¿çã1Ìœ¨»„ Fð®ÏÜl¨»Ðb\¹>34Û¶mDD'N° c>6pe¼KòðÆ»<€ºË[·¥¦²ôŽ7u·¬¬lÆŒöööæææ½zõJLLlY.š6ˆhð`¶s€Þñ¦îFGG§§§'&&fee…†††‡‡ß¸q£mXÄ›º{åÊ•™3g2ÄÓÓó‹/¾Ëå999-hÃQ11DDûö±ô‹7uw̘1III¥¥¥2™,>>^,7¼÷‘6m8*6–ˆhâD¶s€~qæ\šg‘Éd»ví …¶¶¶lXSµi£Ä¡óˆgI¥OnRfüç-X° ++ëøñã—/_ž={ö¤I“ ZÐF• 1ú\ 6m""š<™µÐf‹ÇÆ|M¨ªªjÛ¶í¾}ûƧ˜âëë;uêÔ?ü°YmTqn¼K¸€oùxW*•J¥R• °@"‘4· ?üöÛ @_øqÛW›¥K—ŠÅâ:lÙ²%''ç§Ÿ~"¢¸¸¸ìììuëÖihÃÕÕdiI~~ò+~Œw‰hÇŽžžžcÆŒñööÞ³gÏ–-[ÇLåååeffjnÃmÚ&ðu¼« —“‰Êo¦ÿþ—¢£ÙKÐêà<¢fãwÝUxøÄ⧦ddP¿~,¥hEPw›ÍꮂTJ½zQNÎS;u¢_¤¡C)0œœ¸o}==zôäqYÙS£íòrjÛö©)j xs±­òrrs#SS’ɨ¢‚,-©cGõ7¨»-`œ¿:w÷oÓsÏ&5@k†ºÛl¨»`T>þ˜V¬øçé²eôé§ì¥0~¨»Í†º Fèúuòô|jJ‡4o‘«+uê¤ét/hÔÝfCÝcv𠯩ÁèÑ´q#uìh¨@Æu·ÙPw¡u‘HèøqúàÊÌ|jº“‘©)K±øÊøï‹PVV6cÆ {{{ssó^½z%&&6ÚìêÕ«cÇŽ‰D"‘høðá2™ÌÀ98Ê‚ƌ¡Ë—I.'¹œ="''"¢’ I  ÇÙŽÐ*ð¦îFGG§§§'&&fee…†††‡‡ß¸qC­Maaapp°‹‹ËáÇ“““§L™ÂJT‰èÎ’ËéÛoŸL±±!7—Ð7ÞlkíÞ½ûôéÓ—-[FDõõõ‰‰‰ãŸÞƒ5kÖ¬û÷ï75VƒíÌÿذáŸ+ŒFFÒÆ¬¦àãßÎÿüóF;4zõ"¾¼!zT[K‘‘´}û3šõéCÇ?¹K€ñb¶^ðc;sUUÕW_}µråÊáÇ÷èÑãóÏ?···ß´i“j+++O•‹xxxkèVÞ}­˜›Ó¶mOŽ|Vý÷à8A3g>ivù2ÙÛ“@@ÇŽ±@¿˜-ü¨»R©T*•š¨\jG H$µfAAAª9çåå9;;("@k`gGÆQ|ü“2|÷î“é£F5~ùhh€uׯÆ&$$déÒ¥gÏžÍËËûä“OrrrÆŽKDqqqo¼ñ†¢Ù¼yóvíÚµiÓ¦¼¼¼>øàÏ?ÿ|õÕWY `ÔÚµ#¹œ.]zòT  ;X Àü¨»D´cÇOOÏ1cÆx{{ïÙ³gË–-Šãªòòò2ÿ¾þNhhè?ü°bÅŠîÝ»'%%}þ9:"‚Z°€Õ@œÆ›ãª‡ã™˜§¶µyÿþg\&€·Œÿü]àÅ~ß ž<}é%þù÷å—„K·B«×zÇ|ïè]a!=J«WÓµkê/™›Sh(ÙØÐìÙÌF8ÿù»ŒCÝ0´ü|úáÊÊ¢£G©¾^ýÕ6m(7—TNÊà2ÔÝfCÝà„ãÇiĈF¦{xPPùøÕÔÐÆôо=½ù&-Y‚+x´Z¨»Í†º Í •Ò/¿ÐwßÑéÓôø±ú«&&ôê«$Qu5ýü3•—7ÞÉ—_Ò»ï’PøÏ”¬,š?ŸŽk¤qçÎT_OÒ¨QôòËdmÍК3Pw› ut"‘ÐO?Ñúõ”™I;RM ýõ×?¯zxÐ_ЈôçŸ4k]¼øìCBháBª¨ ÄDºqƒþ¾³¸ºI“¨gOêÜ™<=ÉÛ›ììžL¿s‡¶o§¸8**j|Æ—_¦M›žœsõLüA›6Ñ¡C”•ES¦P‡´v-ÙÙQL ÍšõÏB[1ÔÝfCÝC«¨ ÔT*)¡¿þ"©”:v¤¾}ÿ¹uSjkiçNzÿ}ºw¯Ë ¦)S¨o_úî;JHPuôhzë-rs#±˜ÊË©ºšŽ¡mÛ(/¯‘®<<È×—öíSŸnfF‘‘tïedPQ HÎÎO^Ú½ûÉ ÊÉ¡.]š‘ü™¤R:uжo'GG éÏ?©Gzã j׎ɥ< ên³¡îïÕÔÐ;$“‘DB®®dc£©±DBQQ´mÛS»t¡ü|õ–‘‘ôúë4xp#Ô×Óþý””DÇŽQ}=MŸNR)ýç?ôâ‹äçG={>ivìmÛF••OÍkaA|@ŽŽ´{7>”šJÅÅ$Sÿþtå Y[ÿSþûõSðÌ-íÚѽ{dmýÏÒ/_&?¿gÌÕ|¨»Í†º  wR)}û--ZD55DDÁÁ$Ñÿþ÷äÕ ¨úýwºy“.^$ssêÝ›RR¨®Ž)4”úôQïðñcª¯§  §Žh“JéÐ!:xzö$€êëÉÍÞ{nß~jÞ>}håJ9’‘5CÝm6Ô]€Váƒè‹/™þÙgÓâûY¡î6ê.@«““C&ÐõëêÓ?ø€Þ¿YÇ‹¡î6ê.@«öÇ4|¸ú¶h"jßž~þ™üü¨¬ŒŠ‹éÀ:x²³é­·ÈĄΜ¡‡iæLÁ§Ÿ¢î6ê.>^,©µ‘ËåQQQK–,éܹ3+!4²@[«V­Šˆˆprr …¶¶¶IIIíÜâøÛo¿•Édo½õ+ žMÎóæÍóññ9~üøï¿ÿ¾téR''§[·n©6¸qã†êD ‹íÛ·kèí7ø­eåŒ×(®ªªjÛ¶í¾}ûƧ˜âëë;uêÔ?üPÙfÇŽÓ¦M31y²å\*•š˜˜Œ1âÈ‘#,$h ?¶3K¥REUN‰DµÍ /¼påÊåÓ~ýú}þùçaaa†K ð,ü¨»666!!!K—.‹Å:tزeKNNÎO?ýDDqqqÙÙÙëÖ­³µµµµµUÎ"\\\ÜÝÝY Ð?ê.íØ±ã½÷Þ3fLee¥——×–-[Ç3çååeff²@+üØ¿ `xsþ.€@Ý0Ô]ÃAÝ0Ô]ÃAÝ0œÖ[wW¯^íââbii9zôè›7oê{q9r¤@ (**Ò& SÓµÛ§O {{ûiӦݽ{—Sñˆ(..®{÷îÖÖÖÏ?ÿ¼êIÛI¨0uêT@°cÇ®Åû׿þ%P¡zûŽ$¼zõêØ±cE"‘H$>|¸L&ãT<'''ÁÓöïßÏ„eee3f̰··777ïÕ«Wbb"ã1t|ïÝ»!‹E"Qxx8¾dXûZnÙeùnÓ¦MÖÖÖ{÷îÍÉÉyñÅ{öìY__¯×%nß¾}ÅŠkÖ¬!¢ÂÂÂg&ajº–øÕW_;wn÷îÝ]ºtûlýúõÏœ‹Å7pÒ¤Iaaaþþþ;wîLIIQ½o&» ‡P½ôÒKo½õ–¯¯ï—_~Ù©S§Í›7s$žšøøøW_}UßIš›pÁ‚YYYÇ¿|ùòìÙ³'MšTPPÀxD´{÷îÜÜ\;;;‘HtçÎoooÕ[»r!aSÔ뮃ƒƒ©©©êO¡’’Õ_%¬'ajz³ÂH$’I“&ÕÔÔ8pÀÜÜœkñˆÈÆÆ¦GÏ?ÿüž={Š‹‹:Ä‘„.\(--íÒ¥‹P( …‰dúôé£GæH¼†úöíKDEEEIheeeccãé驜âááQ\\Ì‘xªRRRòóógΜ©xÊ‘„UUU_}õÕÊ•+‡Þ£GÏ?ÿÜÞÞ~Ó¦M‰§Ð»wïìììÛ·o—””ÄÇÇߺuËÝÝS ôÉÁÁ¡5Ö] ??¿3gÎ(žÞ½{÷ÚµkÜIÂÔtí“ÔÖÖNž<¹¬¬ìСCVVV\‹§F*•J¥Rî$|á…®\¹’ù7ssó•+WþðÉ×Ð¥K—ˆÈÙÙ™; ƒ‚‚nܸ¡|š——Ç©xJñññ!!!ʽøI¨ø¡:|‰„#ñT999ÙÛÛïÚµ«¶¶644”ƒ õÉ¢•Ϭ8¼;11Qqxw=ô}Ñ_ýuùòå­[·Ñ‘#G._¾¬zBÃ$LM׆L&7n\ÇŽOž<©|¨hV__¿téRggg ‹ÀÀÀôôtÅô„„¡PèààÑèâšš×ßßÉ’%£GvuuíÚµëþýû†÷÷÷ÿä“O&Nœèàààææ¶wï^Åtww÷={ö(›‰D¢_ýUûÕ!¢òòò‰'ZYYuéÒE¹h Q—-[6vìX±Xüå—_2ñg09Ü Aƒâââ”O‡ ²jÕ*Åã~ýúµk×nýúõW¯^ˆˆðöö6l؉'.^¼èååµhÑ"E³¹s祥¥Ý¼y366ÖÎÎîþýûwîÜ …›7o¾}ûvNNΆ ]\£ó*mcc“žž.—Ë>ܦM›k×®©%WÄKKK“Ëå "‘¨¢¢B.—wêÔi÷îÝÊfÖÖÖgΜÑ~uúõëgkk»~ýú¢¢¢•+Wš™™)­!ªX,>uê”\.üø1S@Ý`æº;kÖ,Å㜜"Ú¿¿âéš5kåryyy¹™™Ynn®²‡€€€7þþûïB¡PQ™šZ\Só*¥œª¬‹Jýúõ›7ožò©X,>yò¤\cÝ}æê(šM™2E9ûàÁƒ-Z¤9êìÙ³å<„ý»œ£<ƪ]»vjOfsrrêêê¼¼¼Tç*..öññ4h‡‡ÇرcGŽfee¥ÖySóª-šˆzö쩨”j:wî¬|lkk«º­¸e«£ |Ü¿ÿœœÍQ½½½5/€›Pw8ÇÄĤ©§r¹œˆd2=zôH$©Í{âĉ'N$''úé§Ÿþù¥K—¬­­Uh˜—ˆêëë•ëêê'TŸ*"5:QËÕiŠæ¨B!¾¾€—p\ LMM5—Í|||„Bá‘#G¾dbb2bĈÿûß—/_ÎÏÏOKKS[œ†y‰Hyà’â±–‘Ú¶m«¼–––VUUi¿: .\P>>þ¼æ¨<…º ÀWW׳gÏ–”” Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{glossary}[2005/07/08 2.19 (NLCT)] \RequirePackage{ifthen} \RequirePackage{keyval} \define@key{gloss} {style} {\ifthenelse{\equal{#1}{list} \or \equal{#1}{altlist} \or \equal{#1}{super} \or \equal{#1}{long}} {\def\gls@style{#1}} {\PackageError{glossary} {Unknown glossary style '#1'} {Available styles are: list, altlist, super and long}}} \define@key{gloss} {header}[plain]{\ifthenelse{\equal{#1}{none} \or \equal{#1}{plain}} {\def\gls@header{#1}} {\PackageError{glossary} {Unknown glossary style '#1'} {Available styles are: none and plain}}} \define@key{gloss} {border}[plain]{\ifthenelse{\equal{#1}{none} \or \equal{#1}{plain}} {\def\gls@border{#1}} {\PackageError{glossary} {Unknown glossary border '#1'} {Available styles are: none and plain}}} \newcount\gls@cols \define@key{gloss}{cols}{\gls@cols=#1\relax \ifthenelse{\gls@cols<2 \or \gls@cols>3} {\PackageError{glossary} {invalid number of columns} {The cols option can only be 2 or 3}} {}} \define@key{gloss} {number} {\ifthenelse{\equal{#1}{none}\or\equal{#1}{page}\or\equal{#1}{section}} {\def\gls@number{#1}} {\PackageError{glossary} {Unknown glossary number style '#1'} {Available styles are: none, page and section}}} \newif\ifgls@toc \define@key{gloss}{toc}[true]{\ifthenelse{\equal{#1}{true} \or \equal{#1}{false}} {\csname gls@toc#1\endcsname} {\PackageError{glossary}{Glossary option 'toc' is boolean} {The value of 'toc' can only be set to 'true' or 'false'}}} \newif\ifgls@section \define@key{gloss}{section}[true]{\ifthenelse{\equal{#1}{true} \or \equal{#1}{false}} {\csname gls@section#1\endcsname} {\PackageError{glossary}{Glossary option 'section' is boolean} {The value of 'section' can only be set to 'true' or 'false'}}} \gls@sectionfalse \newif\ifglshyper \newif\ifglshyperacronym \define@key{gloss}{hyper}[true]{\ifthenelse{\equal{#1}{true} \or \equal{#1}{false}} {\csname glshyper#1\endcsname\glshyperacronymtrue} {\PackageError{glossary}{Glossary option 'hyper' is boolean} {The value of 'hyper' can only be set to 'true' or 'false'}}} \define@key{gloss}{hyperacronym}[true]{\ifthenelse{\equal{#1}{true} \or \equal{#1}{false}} {\csname glshyperacronym#1\endcsname} {\PackageError{glossary}{Glossary option 'hyperacronym' is boolean} {The value of 'hyperacronym' can only be set to 'true' or 'false'}}} \newif\ifglsacronym \define@key{gloss}{acronym}[true]{\ifthenelse{\equal{#1}{true} \or \equal{#1}{false}}{\setboolean{glsacronym}{#1}}{% \PackageError{glossary}{Glossary option 'acronym' is boolean}{The value of 'acronym' canonly be set to 'true' or 'false'}}} \def\gls@style{long} \def\gls@header{none} \def\gls@border{none} \def\gls@number{page} \gls@cols=2\relax \gls@tocfalse \@ifundefined{hyperpage}{\glshyperfalse\glshyperacronymfalse}{\glshypertrue\glshyperacronymtrue} \@ifundefined{hypertarget}{ \newcommand{\glosslabel}[1]{}% \newcommand{\glossref}[2]{#2}% }{% \newcommand{\glosslabel}[1]{\hypertarget{#1}{}}% \newcommand{\glossref}[2]{\hyperlink{#1}{#2}} } \newcommand{\glossarypackageoptions}[1]{\setkeys{gloss}{#1}} \InputIfFileExists{glossary.cfg}{% \typeout{Glossary configuration file loaded}}{% \typeout{No configuration file glossary.cfg found}} \renewcommand{\glossarypackageoptions}[1]{% \PackageError{glossary}{Command \string\glossarypackageoptions ^^Jcan only be used in configuration file}{}} \DeclareOption*{\edef\@pkg@ptions{\noexpand\setkeys{gloss}{\CurrentOption}} \ifthenelse{\equal{\CurrentOption}{}}{}{\@pkg@ptions}} \ProcessOptions \ifthenelse{\(\equal{\gls@style}{list} \or \equal{\gls@style}{altlist}\) \and \(\not\equal{\gls@header}{none} \or \not\equal{\gls@border}{none} \or \gls@cols=3\)} {\PackageError{glossary}{You can't have option 'style=list' or 'style=altlist' in combination with any of the other options} {The 'list' and 'altlist' options don't have a header, border or number of columns option.}} {} \define@key{wrgloss}{name}{\gdef\@glo@n@me{#1}} \define@key{wrgloss}{description}{\def\@descr{#1}} \define@key{wrgloss}{sort}{\gdef\@s@rt{#1}} \define@key{wrgloss}{format}{\def\@f@rm@t{#1}} \newcommand{\@@wrglossary}{} \newcommand{\@glo@l@bel}{} \renewcommand{\@wrglossary}[1]{\relax \gdef\@glo@n@me{}\def\@descr{}\def\@s@rt{}\def\@f@rm@t{}\relax \setkeys{wrgloss}{#1}\relax \ifthenelse{\equal{\@s@rt}{}}{\gdef\@s@rt{\@glo@n@me}}{}% \ifthenelse{\equal{\@glo@l@bel}{}}{\gdef\@glo@l@bel{GGG:\@s@rt}}{}% \ifthenelse{\equal{\@f@rm@t}{}} {\protected@write\@glossaryfile{}% {\string\glossaryentry{\@s@rt @{\@glo@n@me \string\glosslabel{\@glo@l@bel}}\@descr \string\relax|glsnumformat}{\theglossarynum}}} {\protected@write\@glossaryfile{}% {\string\glossaryentry{\@s@rt @{\@glo@n@me \string\glosslabel{\@glo@l@bel}}\@descr \string\relax|\@f@rm@t}{\theglossarynum}}}\relax \endgroup\@esphack \@@wrglossary } \newcommand{\@gls@getn@me}[1]{\@bsphack\begingroup\@sanitize \gdef\@glo@n@me{}\setkeys{wrgloss}{#1}\relax \endgroup\@esphack} \newcommand{\xglossary}{\renewcommand{\@@wrglossary}[1]{% \glossref{\@glo@l@bel}{##1}\renewcommand{\@@wrglossary}{}}% \glossary} \newcommand*{\storeglosentry}[3][glossary]{% \@ifundefined{glo@#2@entry}{% \expandafter\def\csname glo@#2@type\endcsname{#1}% \expandafter\def\csname glo@#2@entry\endcsname{#3}% \@gls@getn@me{#3}% \expandafter\protected@edef\csname glo@#2@name\endcsname{\@glo@n@me}% }{% \PackageError{glossary}{Glossary entry '#2' already defined}{There already exists a glossary entry with the label '#2'}}% } \providecommand{\useglosentry}[2][\relax]{% \@ifundefined{glo@#2@type}{% \PackageError{glossary}{Glossary entry '#2' undefined}{You need to define the entry using \string\storeglosentry\space before using it.}}{% \edef\@glostype{\csname glo@#2@type\endcsname}% \ifx#1\relax \protected@edef\@glo@cmd{\expandafter\noexpand\csname \@glostype\endcsname{\csname glo@#2@entry\endcsname}}% \else \protected@edef\@glo@cmd{\expandafter\noexpand\csname \@glostype{\csname glo@#2@entry\endcsname,#1}}% \fi \@glo@cmd }} \providecommand{\useGlosentry}[3][\relax]{% \@ifundefined{glo@#2@type}{% \PackageError{glossary}{Glossary entry '#2' undefined}{You need to define the entry using \string\storeglosentry\space before using it.}}{% \edef\@glostype{x\csname glo@#2@type\endcsname}% \ifx#1\relax \protected@edef\@glo@cmd{\expandafter\noexpand\csname \@glostype\endcsname{\csname glo@#2@entry\endcsname}}% \else \protected@edef\@glo@cmd{\expandafter\noexpand\csname \@glostype\endcsname{\csname glo@#2@entry\endcsname,#1}}% \fi \@glo@cmd{#3}% }} \newcommand{\gls}[2][\relax]{\useGlosentry[#1]{#2}{\csname glo@#2@name\endcsname}} \providecommand{\saveglosentry}[3][glossary]{% \expandafter\def\csname glo@#2@type\endcsname{#1}% \expandafter\def\csname glo@#2@entry\endcsname{name={#2},description={#3}} } \ifthenelse{\equal{\gls@number}{page}}{ \newcommand{\theglossarynum}{\thepage} \newcommand{\pagecompositor}{-} \newcommand{\@glossary@delimN}{, } \newcommand{\@glossary@delimR}{--} \ifglshyper \newcommand{\glsXglossaryXnumformat}[1]{\hyperrm{#1}}% \else \newcommand{\glsXglossaryXnumformat}[1]{#1}\fi} {\ifthenelse{\equal{\gls@number}{section}} {\newcommand{\theglossarynum}{\thesection} \newcommand{\pagecompositor}{.} \newcommand{\@glossary@delimN}{, } \newcommand{\@glossary@delimR}{--} \ifglshyper \newcommand{\glsXglossaryXnumformat}[1]{\hyperrm{#1}}% \else \newcommand{\glsXglossaryXnumformat}[1]{#1}% \fi} {\newcommand{\theglossarynum}{\thepage} \newcommand{\pagecompositor}{-} \newcommand{\@glossary@delimN}{} \newcommand{\@glossary@delimR}{} \newcommand{\glsXglossaryXnumformat}[1]{}}} \newcommand{\glsnumformat}[2][glossary]{% \@ifundefined{glsX#1Xnumformat}{% \PackageError{glossary}{Glossary type '#1' undefined}{}}{% \csname glsX#1Xnumformat\endcsname{#2}}} \def\@glostype{glossary} \newcommand{\delimN}{\csname @\@glostype @delimN\endcsname} \newcommand{\delimR}{\csname @\@glostype @delimR\endcsname} \newcommand{\glodelim}{\csname @\@glostype @glodelim\endcsname} \define@key{glossnum}{glsnumformat}{\def\@glsnumformat{#1}} \define@key{glossnum}{type}{\def\@glsnumtype{#1}} \define@key{glossnum}{delimN}{\def\@delimN{#1}} \define@key{glossnum}{delimR}{\def\@delimR{#1}} \define@key{glossnum}{glodelim}{\def\@glodelim{#1}} \providecommand{\ignore}[1]{} \newcommand{\setglossary}[1]{% \def\@glsnumformat{}% \def\@glsnumtype{glossary}% \def\@delimN{@dontchange@}% \def\@delimR{@dontchange@}% \def\@glodelim{@dontchange@}% \setkeys{glossnum}{#1}\relax \@ifundefined{print\@glsnumtype}{% \PackageError{glossary}{Invalid glossary type '\@glsnumtype'}{% Glossary type '\@glsnumtype' has not been defined} }{% \ifthenelse{\equal{\@glsnumformat}{}}{}{% \expandafter\xdef\csname glsX\@glsnumtype Xnumformat\endcsname{% \noexpand\csname\@glsnumformat\noexpand\endcsname}% \ifthenelse{\equal{\@glsnumformat}{ignore}}{% \expandafter\xdef\csname @\@glsnumtype @delimN\endcsname{}% \expandafter\xdef\csname @\@glsnumtype @delimR\endcsname{}% }{}% }% \ifthenelse{\equal{\@delimN}{@dontchange@}}{}{% \expandafter\xdef\csname @\@glsnumtype @delimN\endcsname{% \@delimN}} \ifthenelse{\equal{\@delimR}{@dontchange@}}{}{% \expandafter\xdef\csname @\@glsnumtype @delimR\endcsname{% \@delimR}} \ifthenelse{\equal{\@glodelim}{@dontchange@}}{}{% \expandafter\xdef\csname @\@glsnumtype @glodelim\endcsname{% \@glodelim} } }} \newcommand{\@gls@glossary@inext}{gls} \newcommand\printglossary[1][glossary]{% \def\@glostype{#1}% \@ifundefined{#1name}{% \renewcommand{\@glossaryname}{\glossaryname}}{% \renewcommand{\@glossaryname}{\csname #1name\endcsname}}% \@ifundefined{short#1name}{% \renewcommand{\@shortglossaryname}{\@glossaryname}}{% \renewcommand{\@shortglossaryname}{\csname short#1name\endcsname}}% \@input@{\jobname.\csname @gls@#1@inext\endcsname}} \newcommand{\glossaryname}{Glossary} \newcommand{\shortglossaryname}{\glossaryname} \newcommand{\entryname}{Notation} \newcommand{\descriptionname}{Description} \newcommand{\istfilename}{\jobname.ist} \def\@glossaryname{\glossaryname} \def\@shortglossaryname{\shortglossaryname} \newenvironment{theglossary} {\@ifundefined{chapter} {\section*{\@glossaryname}\relax \ifgls@toc\@glosaddtoc{section}\fi} {\ifthenelse{\boolean{gls@section}} {\section*{\@glossaryname}\relax \ifgls@toc\@glosaddtoc{section}\fi} {\chapter*{\@glossaryname}\relax \ifgls@toc\@glosaddtoc{chapter}\fi}} \markright{\@shortglossaryname}% \glossarypreamble\@bef@reglos} {\@ftergl@s\glossarypostamble} \newcommand{\glossarypreamble}{} \newcommand{\glossarypostamble}{} \newcommand{\@glosaddtoc}[1]{\addcontentsline{toc}{#1}{\@shortglossaryname} } \newif\ifgloitemfirst \newcommand{\@bef@reglos}{\global\gloitemfirsttrue\beforeglossary} \newcommand{\@ftergl@s}{\afterglossary\global\gloitemfirstfalse} \ifthenelse{\equal{\gls@style}{list} \or \equal{\gls@style}{altlist}} { \newcommand{\beforeglossary}{\begin{description}} \newcommand{\afterglossary}{\end{description}} \newcommand{\gloskip}{\indexspace} \ifthenelse{\equal{\gls@style}{list}} {\newcommand{\gloitem}[1]{\item[#1]} \newcommand{\@glossary@glodelim}{, }} {\newcommand{\gloitem}[1]{\item[#1]\mbox{}\par} \newcommand{\@glossary@glodelim}{ }} }{ \ifthenelse{\equal{\gls@style}{super}}{ \IfFileExists{supertab.sty}{\RequirePackage{supertab}} {\IfFileExists{supertabular.sty}{\RequirePackage{supertabular}} {\PackageError{glossary}{Option "super" chosen, but can't find "supertab" package} {If you want the "super" option, you have to have the "supertab" package installed.}}} } {\RequirePackage{longtable}} \newlength{\descriptionwidth} \setlength{\descriptionwidth}{0.6\textwidth} \ifthenelse{\equal{\gls@header}{none}} { \ifthenelse{\equal{\gls@border}{none}} {\newcommand{\glossaryheader}{}} {\newcommand{\glossaryheader}{\hline }} } { \ifnum\gls@cols=2\relax \ifthenelse{\equal{\gls@border}{none}} {\newcommand{\glossaryheader} {\bfseries\entryname & \bfseries \descriptionname\\}} {\newcommand{\glossaryheader} {\hline\bfseries\entryname & \bfseries\descriptionname \\\hline\hline}} \else \ifthenelse{\equal{\gls@border}{none}} {\newcommand{\glossaryheader} {\bfseries\entryname & \bfseries \descriptionname & \\}} {\newcommand{\glossaryheader} {\hline\bfseries\entryname &\bfseries\descriptionname & \\\hline\hline}} \fi } \ifthenelse{\equal{\gls@border}{none}} { \ifnum\gls@cols=2\relax \@ifundefined{newcolumntype}{\newcommand{\glossaryalignment}{@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}}}{ \newcolumntype{G}{@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}}} \else \@ifundefined{newcolumntype}{\newcommand{\glossaryalignment}{@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}l}}{ \newcolumntype{G}{@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}l}} \fi \ifthenelse{\equal{\gls@style}{super}}{ \newcommand{\afterglossary}{ \\\end{supertabular}} } { \newcommand{\afterglossary}{ \\\end{longtable}} } \newcommand{\glosstail}{} } { \ifnum\gls@cols=2\relax \@ifundefined{newcolumntype}{\newcommand{\glossaryalignment}{|@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}|}}{ \newcolumntype{G}{|@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}|}} \else \@ifundefined{newcolumntype}{\newcommand{\glossaryalignment}{|@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}l|}}{ \newcolumntype{G}{|@{\hspace{\tabcolsep}\bfseries}lp{\descriptionwidth}l|}} \fi \ifthenelse{\equal{\gls@style}{super}}{ \newcommand{\afterglossary}{ \\\hline\end{supertabular}} } { \newcommand{\afterglossary}{ \\\hline\end{longtable}} } \newcommand{\glosstail}{\hline} } \ifthenelse{\equal{\gls@style}{super}} { \@ifundefined{newcolumntype}{ \newcommand{\beforeglossary} {\tablehead{\glossaryheader}\tabletail{\glosstail} \begin{supertabular}{\glossaryalignment}}} {\newcommand{\beforeglossary} {\tablehead{\glossaryheader}\tabletail{\glosstail} \begin{supertabular}{G}}} } { \@ifundefined{newcolumntype}{\newcommand{\beforeglossary} {\begin{longtable}{\glossaryalignment} \glossaryheader\endhead\glosstail\endfoot}} {\newcommand{\beforeglossary} {\begin{longtable}{G} \glossaryheader\endhead\glosstail\endfoot}} } \ifnum\gls@cols=2\relax \newcommand{\gloskip}{\ifgloitemfirst\global\gloitemfirstfalse \else\\ \fi &} \newcommand{\@glossary@glodelim}{, } \else \newcommand{\gloskip}{\ifgloitemfirst\global\gloitemfirstfalse \else\\ \fi & &} \newcommand{\@glossary@glodelim}{& } \fi \newcommand{\gloitem}[1]{\ifgloitemfirst\global\gloitemfirstfalse #1 \else \\#1 \fi &} } \ifthenelse{\equal{\gls@number}{none} \and \gls@cols<3}{\renewcommand{\@glossary@glodelim}{}}{} \newif\ifist \let\noist=\istfalse \if@filesw\isttrue\else\istfalse\fi \newwrite\istfile \catcode`\%11\relax \newcommand{\writeist}{ \openout\istfile=\istfilename \write\istfile{% makeindex style file created by LaTeX for document "\jobname" on \the\year-\the\month-\the\day} \write\istfile{keyword "\string\\glossaryentry"} \write\istfile{preamble "\string\\begin{theglossary}"} \write\istfile{postamble "\string\n\string\\end{theglossary}\string\n"} \write\istfile{group_skip "\string\\gloskip "} \write\istfile{item_0 "\string\n\string\\gloitem "} \write\istfile{delim_0 "\string\n\string\\glodelim "} \write\istfile{page_compositor "\pagecompositor"} \write\istfile{delim_n "\string\\delimN "} \write\istfile{delim_r "\string\\delimR "} \closeout\istfile } \catcode`\%14\relax \renewcommand{\makeglossary}{ \newwrite\@glossaryfile \immediate\openout\@glossaryfile=\jobname.glo \renewcommand{\glossary}[1][]{\gdef\@glo@l@bel{##1}% \@bsphack \begingroup \@sanitize \@wrglossary } \typeout {Writing glossary file \jobname .glo } \let \makeglossary \@empty \ifist\writeist\fi \noist} \renewcommand{\glossary}[1][]{% \@bsphack\begingroup\@sanitize\@index} \newcommand{\newglossarytype}[4][glg]{ \@ifundefined{#2}{% \typeout{\string\newglossarytype[#1]{#2}{#3}{#4}}% \def\@glstype{#2}\def\@glsout{#3}\def\@glsin{#4}% \expandafter\gdef\csname glsX\@glstype Xnumformat\endcsname{\glsXglossaryXnumformat}% \expandafter\gdef\csname @\@glstype @delimN\endcsname{\@glossary@delimN}% \expandafter\gdef\csname @\@glstype @delimR\endcsname{\@glossary@delimR}% \expandafter\gdef\csname @\@glstype @glodelim\endcsname{\@glossary@glodelim}% \expandafter\gdef\csname @gls@\@glstype @inext\endcsname{#4}% \expandafter\def\csname @gls@#2@type\endcsname{#4}% \expandafter\edef\csname make\@glstype\endcsname{% \noexpand\@m@kegl@ss{\@glstype}{\@glsout}} \expandafter\edef\csname \@glstype\endcsname{% \noexpand\@gl@ss@ary{\@glstype}} \expandafter\edef\csname x\@glstype\endcsname{% \noexpand\@Gl@ss@ary{\@glstype}} \expandafter\edef\csname print\@glstype\endcsname{% \noexpand\def\noexpand\@glostype{\@glstype}% \noexpand\@ifundefined{\@glstype name}{% \noexpand\def\noexpand\@glossaryname{\noexpand\glossaryname}% }{% \noexpand\def\noexpand\@glossaryname{% \noexpand\csname\@glstype name\noexpand\endcsname}}% \noexpand\@ifundefined{short\@glstype name}{% \noexpand\def\noexpand\@shortglossaryname{\noexpand\@glossaryname}% }{% \noexpand\edef\noexpand\@shortglossaryname{% \noexpand\csname short\@glstype name\noexpand\endcsname}}% \noexpand\@prntgl@ss@ry{\@glsin}} }{\PackageError{glossary}{Command \expandafter\string\csname #2\endcsname \space already defined}{% You can't call your new glossary type '#2' because there already exists a command with this name}} } \newcommand\@m@kegl@ss[2]{ \expandafter\newwrite\csname @#1file\endcsname \expandafter\immediate\expandafter \openout\csname @#1file\endcsname=\jobname.#2 \typeout {Writing #1 file \jobname .#2 } \expandafter\let \csname make#1\endcsname \@empty \ifist\writeist\fi \expandafter\def\csname the#1num\endcsname{\thepage} \noist } \newcommand{\@wrgl@ss@ry}[2]{\relax \gdef\@glo@n@me{}\def\@descr{}\def\@s@rt{}\def\@f@rm@t{}\relax \xdef\@pr@fix{\csname @gls@#1@type\endcsname}% \ifthenelse{\equal{\@s@rt}{}}{\gdef\@s@rt{\@glo@n@me}}{}% \ifthenelse{\equal{\@glo@l@bel}{}}{\gdef\@glo@l@bel{\@pr@fix:\@s@rt}}{}% \setkeys{wrgloss}{#2}\relax \ifthenelse{\equal{\@f@rm@t}{}} {\expandafter\protected@write\csname @#1file\endcsname{}{% \string\glossaryentry{\@s@rt @{\@glo@n@me\string\glosslabel{\@glo@l@bel}}% \@descr\string\relax|glsnumformat[#1]}{\csname the#1num\endcsname}}} {\expandafter\protected@write\csname @#1file\endcsname{}{% \string\glossaryentry{\@s@rt @{\@glo@n@me\string\glosslabel{\@glo@l@bel}}% \@descr\string\relax|\@f@rm@t}{\csname the#1num\endcsname}}}\relax \endgroup\@esphack \@@wrgl@ss@ry } \newcommand{\@@wrgl@ss@ry}{} \newcommand\@gl@ss@ary[2][]{\@ifundefined{@#2file}{% \@bsphack\begingroup \@sanitize \@index}{% \gdef\@glo@l@bel{#1}% \@bsphack \begingroup \@sanitize \@wrgl@ss@ry{#2}}} \newcommand{\@Gl@ss@ary}{% \renewcommand{\@@wrgl@ss@ry}[1]{% \glossref{\@glo@l@bel}{##1}\renewcommand{\@@wrgl@ss@ry}{}}% \@gl@ss@ary} \newcommand\@prntgl@ss@ry[1]{\@input@{\jobname.#1}} \@onlypreamble{\newglossarytype} \newcommand\@acrnmsh{} \newcommand\@sacrnmsh{} \newcommand\@acrnmln{} \newcommand\@acrnmcmd{} \newcommand\@acrnmgls{} \newcommand\@acrnmins{} % This should no longer be used \newcommand{\glsprimaryfmt}[1]{\textbf{\glsnumformat{#1}}} \newcommand{\@acronymnamefmt}{\csname\@acrnmcmd long\endcsname\ (\csname\@acrnmcmd short\endcsname)} \newcommand{\setacronymnamefmt}[1]{\def\@acronymnamefmt{#1}} \newcommand{\newacronym}[4][]{% \ifthenelse{\equal{#1}{}}{\renewcommand\@acrnmcmd{#2}}{\renewcommand\@acrnmcmd{#1}} \@ifundefined{\@acrnmcmd}{% \expandafter\newcommand\csname\@acrnmcmd short\endcsname{#2} \expandafter\newcommand\csname\@acrnmcmd long\endcsname{#3} \def\@acrn@entry{#4} { \def\glolong{\csname\@acrnmcmd long\endcsname}% \def\gloshort{\csname\@acrnmcmd short\endcsname}% \expandafter\xdef\expandafter\@acrnamefmt{\@acronymnamefmt} } \protected@edef\@acr@glsentry{name=\@acrnamefmt,format=glsnumformat,\@acrn@entry} \newboolean{\@acrnmcmd first}\setboolean{\@acrnmcmd first}{true} \expandafter\edef\csname \@acrnmcmd\endcsname{\noexpand\@ifstar{\csname @s@\@acrnmcmd\endcsname}{\csname @\@acrnmcmd\endcsname}} \ifglshyperacronym \expandafter\protected@edef\csname @\@acrnmcmd\endcsname{% \noexpand\ifthenelse{\noexpand\boolean{\@acrnmcmd first}}{% \csname\@acrnmcmd long\endcsname\ (\noexpand\xacronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname })\noexpand\setboolean{\@acrnmcmd first}{false}% }{\noexpand\xacronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname}}} \expandafter\protected@edef\csname @s@\@acrnmcmd\endcsname{% \noexpand\ifthenelse{\noexpand\boolean{\@acrnmcmd first}}{% \noexpand\expandafter\noexpand\MakeUppercase \csname\@acrnmcmd long\endcsname\noexpand\@acrnmins\ (\noexpand\xacronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname })% \noexpand\setboolean{\@acrnmcmd first}{false}}{% \noexpand\xacronym{\@acr@glsentry}{% \noexpand\expandafter\noexpand\MakeUppercase \csname\@acrnmcmd short\endcsname \noexpand\@acrnmins}}} \else \expandafter\protected@edef\csname @\@acrnmcmd\endcsname{% \noexpand\ifthenelse{\noexpand\boolean{\@acrnmcmd first}}{% \csname\@acrnmcmd long\endcsname\ (\noexpand\acronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname })\noexpand\setboolean{\@acrnmcmd first}{false}% }{\noexpand\acronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname}}} \expandafter\protected@edef\csname @s@\@acrnmcmd\endcsname{% \noexpand\ifthenelse{\noexpand\boolean{\@acrnmcmd first}}{% \noexpand\expandafter\noexpand\MakeUppercase \csname\@acrnmcmd long\endcsname\noexpand\@acrnmins\ (\noexpand\acronym{\@acr@glsentry}{% \csname\@acrnmcmd short\endcsname })% \noexpand\setboolean{\@acrnmcmd first}{false}}{% \noexpand\acronym{\@acr@glsentry}{% \noexpand\expandafter\noexpand\MakeUppercase \csname\@acrnmcmd short\endcsname \noexpand\@acrnmins}}} \fi }{% \PackageError{glossary}{Command '\expandafter\string\csname\@acrnmcmd\endcsname' already defined}{ The command name specified by \string\newacronym already exists.}}} \newcommand{\useacronym}{\@ifstar\@suseacronym\@useacronym} \newcommand{\@suseacronym}[2][]{{\def\@acrnmins{#1}\csname @s@#2\endcsname}\setboolean{#2first}{false}} \newcommand{\@useacronym}[2][]{{\def\@acrnmins{#1}\csname @#2\endcsname}\setboolean{#2first}{false}} \newcommand{\acrln}{\@ifstar\@sacrln\@acrln} \newcommand{\@acrln}[1]{\@ifundefined{#1long}{% \PackageError{glossary}{Acronym '#1' has not been defined}{}}{\csname#1long\endcsname}} \newcommand{\@sacrln}[1]{\@ifundefined{#1long}{% \PackageError{glossary}{Acronym '#1' has not been defined}{}}{% \expandafter\expandafter\expandafter\MakeUppercase\csname#1long\endcsname}} \newcommand{\acrsh}{\@ifstar\@sacrsh\@acrsh} \newcommand{\@acrsh}[1]{\@ifundefined{#1short}{% \PackageError{glossary}{Acronym '#1' has not been defined}{}}{\csname#1short\endcsname}} \newcommand{\@sacrsh}[1]{\@ifundefined{#1short}{% \PackageError{glossary}{Acronym '#1' has not been defined}{}}{% \expandafter\expandafter\expandafter\MakeUppercase\csname#1short\endcsname}} \newcommand{\ifacronymfirstuse}[3]{% \@ifundefined{if#1first}{% \PackageError{glossary}{Acronym '#1' not defined}{}}{% \ifthenelse{\boolean{#1first}}{#2}{#3}}} \newcommand{\resetacronym}[1]{% \@ifundefined{if#1first}{% \PackageError{glossary}{Acronym '#1' not defined}{}}{% \setboolean{#1first}{true}}} \ifglshyper \def\glshyperpage#1{\@glshyperpage#1\delimR \delimR \\} \def\@glshyperpage#1\delimR #2\delimR #3\\{% \ifx\\#2\\% \@delimNhyperpage{#1}% \else \@ifundefined{hyperlink}{#1\delimR #2}{\hyperlink{page.#1}{#1}\delimR \hyperlink{page.#2}{#2}}% \fi } \def\@delimNhyperpage#1{\@@delimNhyperpage#1\delimN \delimN\\} \def\@@delimNhyperpage#1\delimN #2\delimN #3\\{% \ifx\\#2\\% \@ifundefined{hyperlink}{#1}{\hyperlink{page.#1}{#1}}% \else \@ifundefined{hyperlink}{#1\delimN #2}{\hyperlink{page.#1}{#1}\delimN \hyperlink{page.#2}{#2}}% \fi } \def\glshypersection#1{\@glshypersection#1\delimR \delimR \\} \def\@glshypersection#1\delimR #2\delimR #3\\{% \ifx\\#2\\% \@delimNhypersection{#1}% \else \@ifundefined{hyperlink}{#1\delimR #2}{\hyperlink{section.#1}{#1}\delimR \hyperlink{section.#2}{#2}}% \fi } \def\@delimNhypersection#1{\@@delimNhypersection#1\delimN \delimN\\} \def\@@delimNhypersection#1\delimN #2\delimN #3\\{% \ifx\\#2\\% \@ifundefined{hyperlink}{#1}{\hyperlink{section.#1}{#1}}% \else \@ifundefined{hyperlink}{#1\delimN #2}{\hyperlink{section.#1}{#1}\delimN \hyperlink{section.#2}{#2}}% \fi } \ifthenelse{\equal{\gls@number}{section}}{ \ifglshyper \@ifundefined{chapter} {} {\let\@gls@old@chapter\@chapter \def\@chapter[#1]#2{\@gls@old@chapter[{#1}]{#2}\@ifundefined{hyperdef}{}{\hyperdef{section}{\thechapter.0}{}}}} \fi \providecommand\hyperrm[1]{\textrm{\glshypersection{#1}}} \providecommand\hypersf[1]{\textsf{\glshypersection{#1}}} \providecommand\hypertt[1]{\texttt{\glshypersection{#1}}} \providecommand\hyperbf[1]{\textbf{\glshypersection{#1}}} \providecommand\hyperit[1]{\textit{\glshypersection{#1}}} } { \providecommand\hyperrm[1]{\textrm{\glshyperpage{#1}}} \providecommand\hypersf[1]{\textsf{\glshyperpage{#1}}} \providecommand\hypertt[1]{\texttt{\glshyperpage{#1}}} \providecommand\hyperbf[1]{\textbf{\glshyperpage{#1}}} \providecommand\hyperit[1]{\textit{\glshyperpage{#1}}} } \else \providecommand\hyperrm[1]{\textsf{#1}} \providecommand\hypersf[1]{\textsf{#1}} \providecommand\hypertt[1]{\texttt{#1}} \providecommand\hyperbf[1]{\textbf{#1}} \providecommand\hyperit[1]{\textit{#1}} \fi \ifglsacronym \newglossarytype[alg]{acronym}{acr}{acn} \newcommand{\acronymname}{List of Acronyms} \else \let\acronym=\glossary \let\xacronym=\xglossary \fi \endinput %% %% End of file `glossary.sty'. ./Doc/Tutorial/bingle_vis_snaps.jpg0000664000175000017500000011647312176660653017212 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿÀp0"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šü ðŸ„ÿiÚSö‘ý¾¬ìÿo¯Úà‚~þÓþø)ðÛá·ÁO~Â×ÞÓ|+û ~Æ5mCPÕ¾<~Æ~"jÞ Õ¾"|qñÕõÕÕ÷ޤӭôé4­/KÒ´ëm8 ½ƒþßöŠÿ¤±~ßÿønà–_ý-:?cù8¯ø+ýŸÿÃýu—üN¾ÿ €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠøþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ¯¿è €?áÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:ûþŠþx~'øÛöäý’ÿà±ðJÙÎóþ ñƒö‰ý—?mþÚ¶ß~ükø!ûé>*±ñWìÓû?kôgOø©ðöuø+«ë:¿Œ< qká›IÔt}GÀZ¬Ú§‹ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôبÿ…sÿMÿ£Èý€?ñZ´WÿMоÿ¢€>ÿ…sÿMÿ£Èý€?ñZ´WÿMŠøW?ðTßú<Øÿ§ûEôØ«ïú(àøW?ðTßú<Øÿ§ûEôØ«óƒþ ÁûUÁ]ÿàš±/ÄÛGÃß¿àœ4„~ øwmã¯k?±í7ðsQo üCñƇðÊÏYðž½cÿø½m®xƒMñ·Œ|·>Ö4Ï iÓxVçÄÚä^,]_AÒü/âèz¿àèïùAGíÍÿvÍÿ­‡û>ÐïõQ@Q@~Æÿòq_ðV/û?ÿ‡úë/ø&}ÿ_~Æÿòq_ðV/û?ÿ‡úë/ø&}ÿ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@;~ѵWÀÿÙZ/‚s|oñ]×…#ý¡¿hO†Ÿ²×ÂskáÏøþ/ŸŸXOøVàxsKÕ‡k¬6ƒª |E® ?ú_§TÕ,ÄЙ>‰¯åãþDýœ4ÿ‰þ ÿ‚MxÊçã'íà‰¼Wÿdý‰gY|9ðËã?Š< àíOñþ·ñGQŸã…|7¤°±Ð?h µ¸³ðÆK0=×ô¯Ú+Ä–á=g7úî¥a¡ê÷vš|Íw",/ò'ü™»ûEÿÁx~!kKã-Sþ õñßáÍõìß5ìž øMkg£ü:±’Gýé±Ót½gQMŒ“QM(„*±Èé¯üÇþ ðãþ ðcÄ?<#àï|%øð¿âGо |ø ñ6ÚÞËâ?ÁŒþ–Þ/xÄÐÚ±·½Š%º¶½ÑµËd‚NÆ*îËI×,u­ JûÖ¿Œÿü^ý¤?e¯ÚÛþÊñìKá›ß|YðGƒàžß¾hz7‡WÅ“h^?ø…ð"âïâ—ŽôŸ }–úÓ\ñ‡£k¾*ñûé—zv§m«ê> µ‡RÓ5+ascr~ÅWvßµ¯ÙOãüÇþøµûG~Ó÷7øw¯~Ó²ŸíáûHý£áÿÄÿ‡W6ŸløÛà¿~Ë—Ÿ޾ø²ÂV¸Óü%wá3]Ót8˜ü_ðØøŠ`Ó/ø(ü§_þ Õÿ¼¹ëx&¾ÿøÿ)MýÿìÀ?य़úÑ_ðIÚøþ ÿ)×ÿƒuï._úÇž ¯¿þ#ÊScû0ø)gþ´Wüv€>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(®sÆ>0ð§ÃÏø«Çþ;ñ‹àÿøÚçŒ^ÛøÚÃPƒÃZgÄ}3þ$×¾5ðâÚxÇçxnþÒ÷÷”úOà¯xGâ?ƒ¼)ñ À%ÐügàOøoDñ‡‚üaáNÓZðߊ¼)â]6ÛYð÷ˆô bÂYìu][Òom5-/R²škKë˜.må’QÏM_ϯükãÿ†à_ðFŸØ—ã/íÓûVxÏÇÿ>!üý—ßáN¡mû8jšµïÁ¯øßöqð>§à?€o‡¿fO†þ+ñwŒô/YxgÄAñOÇz-爵Wºx§Ä rÚLRúßüDAÿÿ£‰øŸÿˆQûwô3ÐÕ?·wü·öuÿ‚}Åð·Gø§¦|ZøŸñw㦳«h??gOÙ×áΡñsãçÅ«ïÛ[]ø…üàM>ïMŠk ÞöÉõ CVÖ4›1%ÜÖ³\Ý3@¼wìIÿ]ýmÿ‰¿¾hÞý¢¿fßÚcá‡,¼mâÿÙ—ö¼øCyðKãm¯€u»M>ÓÇšo‡_Wñ®øUïõ :ÒkýÄ7ÓY>§¤Í}kmi«éw¶·ðOöjñçů‡¿ðV'Ãß~&|Eðì¯è¿l¼/¦xŽãRÖ¾xÚÊçâ³Eàÿƒ晣ëçâߌìuÑtË FßEñDßo¶ðŽ£aerf‚?ÃÙoöœÐÿà¢ßðpw„¾5ÿ¯ø§ûÞ~ÉŸ°ÏŒþéŸÿkßOð[ö®ý¡$øã ZîmsHøIy%óÿÂ¥ø}o¨j¡Ô$ñ£©ÛëMmvtX-õ;ù4@ë>¿àèïùAGíÍÿvÍÿ­‡û>×çÏìÓû[ÿÁ[?ਞ ý ÿh¿Ùcþ Iû4þÍ_~|JøÅៅÿðK›ÙÛàç|c5—ÂÍ[QÓ¼-áÚâOįÚüUðOˆ~#:(o|Káí"×ÂÚsݶ¯i&•Ût/ý5ÿýñ/ÆÏÿÁµŸ´G‰¿i‡WÂ?ÚÇ€d;¿Œ_ ôi>)Ð<%ñþÖ³Ä~+Ó4 CÖ|C¦j: Õ㹺Ñ$ƒ]Õä‡K¸´¶»Ô.¯!¸™€?¦ª(¢€ (¢€>ýÿäâ¿à¬_öÿ?õÖ_ðM:ûþ¾ýÿäâ¿à¬_öÿ?õÖ_ðM:ûþ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ÿຟÿh/Š¿¿bˆ_³§Á_~Ð^$ý‘?à§?²Oí‰ã_…^Ôü=§xßÄß þ ˆ/âkOGâmOJÓõ-vkÏè¶¶ö tgX.nuÚØ]÷ïŒÿ±×Œní;à÷Ç ßÚÛþ WûjúÂ? oàìÿñ§ágÃXt_X7^(¾¶ø¤_ü.ø·e}ñ7@›]o kÚŽâ©t3ekb· loîÿO¨ É…ðJOü-ø™à/‰?ðUø+Åx³BñTß>+þÒŸ üGðÏÇ1èš„ïáoèWìëáýKXðž¶° wM°×4‹»½>yáƒQ´‘ÖdøÆ÷À¿¶WüÇöøý¶>7üý¾"þܲü]ðwÆëŸ| ñg€4Šß?i½BŸÃ¾9µÖü-ãÝwÑxƒÀŸ¥˜x¢i7W?ðÏkk¦^Y¬–¡õÏèöŠþh¾~Å_ðT_~Ê_ðS/Ú÷À÷ßþÿÁY?à ¿ü;ñËÁÿµ ¿|LðŸÂ/|%¸ÓôŸ„¿³‡‰|K¯éÚ߀ø³âüKƾ.ø¤¯ìø|âÍ#Ä>2ñoÂ®¿ái|c›UþιӴOD³ÃBßZheÔ4«-oOþÐ( Àø(wü§_þ Õïÿ)rçþìóÁ>œWßÿ¿å)¿±¿ý˜ü³ÿZ+þ ;_ÁCÿå:ÿðn¯ýåËÿXóÁ5÷ÿÄoùJoìoÿfÿ,ÿÖŠÿ‚NÐßôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEñüwÁž+øÿòý¼¾xÃú¯‹xçCðï‡ô{§½Õu^úÏNÓí!V–æîæcRîû:Šþÿà~#øåûWÿÁÿd†±ïÇoþÃÿ¿f¯†³Ïìùñ{ÅÿÿcSÇ—Px£à×ÀO h¼¢ü3ø³®|-¶Ö´kÝwQÑ®tï‰z¯§$š%þm×’jé¾£ÿ ]ÿ¬ÿ¤Þü0ÿÅQü#ÿ蓯Úú(ùöý­¾;~ÜÿðNÿÛ/öjý£¾#Ãû@þØ_°Gˆÿdx¿gßÚ“Kýž>ÿÂAðÇö£ðÿˆ­««Koiaeö¿é—qè×·Þ»ñõE ß|wû~Ñ>ø—£ÁV¿àŒ´W€¿à«ˆ~ é_Û¿°¿ì¿ñ¿G—ã/Œ¬µY>|Lø%ñ»áÖ»4><’ûOaâOŠ:÷‰ô»­bÊêòu_½¦‘¾ÿÁC¼ûYü:ÿƒ?¼aàÏÛ“Vñ³ûPhŸ¿g8þ$\ø¿XmÆ6–wŸ·§Â=Gáî…ã-jK›ÛOÆøcwàÏxªîöö÷Q—_Òµí+ÛËñsu/öI_€?ðtwü £öæÿ»fÿÖÃýŸh÷úŠ( Š( €?cù8¯ø+ýŸÿÃýu—üN¾ÿ¯€?cù8¯ø+ýŸÿÃýu—üN¾ÿ Š( Š( Š( Š( Š( Š( Šd’$HòÊéQ£I$’0DwwbQTfb€I øKÄÿðT¿ø&o‚¼Iªx;ÅÿðPÏØÃ*Ðõ+­]ðö»ûS|Òõ} W°¸{Kí+\°¼ñ¼W6£cs–÷¶ZšZÜÚMÇqlŒÞW?áOøSÇ~Ñüaàx{Æ^ñ…¾«áÿøSZÓ|EáÍwK¼f´Ô´}oH¹¼Ó5; ¨]%·¼²ºžÞxÙ^)XÐPEPEPEPEPEPEPEü[ÿÁvÿàék_ØÿÇ^/ýŽàž°x;âíá9õ_ üdý ñþ,Ѽý¤Uk[Û;è¼ë+»kÈrW͵ž+ˆ·)*ËæBî™VR¤g ‚ ×øY~Ñÿ¶×íyû_x¢÷Æ?´ßí#ñ“ãfµy%ãG%ðŠõïköSDÁâšÓYðõþ¨Û˪¼rCrŽŒ)@ïƒE˜çü;þÍý§?g?ø_áüW]ñí;û8_¼Z3ü]¹´·Ô?h„«,ŸèºýÞµ´›ãO†mæ’_øI4¿Éwñl§§‡¼c¨×Àž#ÿJï†ÿ<ñƒÀ^ø¥ð·ÅþñÿïøMñW‚üiá]NÛXðï‰|=¬[%Þ›«i:•œ’[ÝZ]A"²²>ämñJ©,r"€v´QEQEQEQEQEQE~ÿÁCÿå:ÿðn¯ýåËÿXóÁ5÷ÿÄoùJoìoÿfÿ,ÿÖŠÿ‚N×ÀðPÿùN¿ü«ÿyrÿÖ<ðM}ÿñþR›ûÿÙ€ÁK?õ¢¿à“´÷ýQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~ÿÁÑßò‚Û›þí›ÿ[ö}¯ßêüÿƒ£¿å·7ýÛ7þ¶ìû@¿ÔQEQE|ûÿÉÅÁX¿ìÿþ묿àšu÷ý|ûÿÉÅÁX¿ìÿþ묿àšu÷ýQEQEQEQEQEÉeФši#†cye–WXâŠ(Ô¼’I#‰ ,îÄ*¨,ÄM>¾ÿ‚ªø›Ä¾ ÿ‚cÿÁC|YàíFÿGñO‡bÚƒXе*êkSDÔl> xÒâ kM½·+qg¨hå¥eu¤¶÷6±M‘ºPótÿ‚ýÁ¾5ÁC>3üCýŸ?g¿ˆz÷€ÿ`ßëÚ§„t=Áú¥Þ‰/ít{‰ôë¯¬'†óÄ ×îãšûÀ¾¾‘<;i .‰­ëº$Þ//>üÅQE~ÿÁ1à¬ÿµ¯üÇã&‹ãÿ>9Öµ†ºý­÷ůÙç[Ö¯_áOÅFÓ­õˆõ- Qy§øƲéZuµžñ+FÓãñ^€ÖÖÖÿiÔ|?&«áíSýŽÿe/Úgá_í•û9|ý¨~ j²êÿ ¾5x+LñŸ†¥»[xõM4Ü™lõ¯ ëöö—7–¶~(ðˆlõo ø«O·¼»‡Nñ‹ªXÇup¶âgÿšÿToø3“Å>1ñü'TÒ|M$¢xö´øÑáo‡jí)X|wá…¾6¾Ž!!(‘Ÿˆ1ñÔ¥a –Y9¥fþ¬¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Šü4ÿƒ‰?à¡^%ÿ‚rÿÁ2>)üIøm{£ümøÏ®i_³wÁOX£¸ðoŒ¾$hÞ$ÔµÏAwg«é:Ž•«ø+á·…|wâë_Ú+añÓÁgRÒ¯4‰u_ñÕ–Yg–I¦’I¦šG–Yev’Ye‘‹É$’9.ò;’ÎìK3ÌI$×úÿÁò¶§€¿à›úS̺6£âïÚ‹V¿¶Sþ.§¢èßìô™å\`Íok¯ëQÀr6¥ÍÈî$ž­QEýöÁ˜ðQ/Üë¿?à™ÿ¼Iw©øVÏçí û7C­k*ÑxRêÏ^ÓtïŒß ü5m4—câi¼O£üPÒ¼7¢}›OÒµâNJ沞ûŵòuûýÿ»j:½ü+ö'‹H OþNÕ"`æ)´ƒû-ük¼¼ydÀl¢¼€’]ÚÛ™&ä`õú¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþ ÿ)×ÿƒuï._úÇž ¯¿þ#ÊScû0ø)gþ´Wüv¾ÿ‚‡ÿÊuÿàÝ_ûË—þ±ç‚kïÿˆßò”ߨßþÌþ Yÿ­ÿ ¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ðþŽÿ”~Üß÷lßúسí~ÿWàüÿ((ý¹¿îÙ¿õ°ÿgÚýþ¢Š(¢Š(àØßþN+þ Åÿgÿðãÿ]eÿÓ¯¿ëàØßþN+þ Åÿgÿðãÿ]eÿÓ¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(®gƾ ðÇÄ_ø·á÷´kø3Ç~×¼âïjp%Λ¯xcÄúUÞ‰¯èÚ…´£¸±Õ4«ë»¸$VImç’6XŠé¨ ñ>ÿ‚²Á2>2Á,ko|øƒ¢ë÷ 5 o_×?g‹öÁôŸ‹Ÿ ¤ßðë1ê¶–vzQñ¦‰¦ÝéšWįZE žñQ™"‚]Qðö­«~dWû·þÔ²WìÛûi|*Ôþ ~Ôß<ñ«á–©qûxwÅö2¼ÚN­7Öþ ð·ˆ4Û?ÄÞ ñ5­­Ý奧‰ü#¬èž ´´½½µ¶Ô¢·¼¹Ž_ç[Å_ðg'ü'Ä>-é§íià]î!™|á_¼ð”QÄÓ3Ú%çþøÇÇFÞàJ‰3IãI.•m¡6÷0;\4àæ1ðàÆÚƒâÿ€þüðˆ>'ü[ø—®ÛxwÁÞ ðÕ¨¸¿Ôo§Ý$÷WW<66‡¤YGs«øÄšÕÞŸáÿ è6:޽¯êZn§^ÞÁþÑÿðJߨWFÿ‚o~Áß³ÿì‘a¨Yëž øáyµ?‰~&Óä¹—Oñ7Åê7^+ø«éRÞ[Ú]¶€¾'Õ¯´¿ -Ý¥­ä^ÓtH/ K¨¦Ê~Â_ðJÏØ?þ ¹¢ê:ì“ð Ã^ñ»flñ'ÅÿØ«T—[ñƽà Û^ø—â?ì·f¢m[ÄV·£ÛGq­x³à¯‡­þÙ¨øâ%œZ–¥à¿ØÜØ|Wx—Ãâ7@?’ (¢€ þÊ¿àÌïØŸ^ø¥ûn|Oý¶õíP‹áÇìµðçZð_ƒuïßYÙê~2iïáßìë9e²–Ó\·ðçÂ)|7Š,,ï ¾Ðï¼aðúúì‹]Vo? ?à—?ðFÿÛ'þ ±ñ?FðÿÁ?ê¾ø!gâÒ¾)þÔ>/Ñ5~ü6³Ó ±¿×líu'køñ?RÒÆð»ÂW·!»»×4;ïÏàÿÍ«øÛDÿ\ïØöøÿåý—~þÊß³îˆl|#à«G½ñ‰oâ€ø«âgõX­›Åßüq} ¯ö‡Šðdž´« ÃÞÐô«X¬´½CÑt¸-tÝ'JÓlá†ÒÃN°¶·³³µŠ+{xcŠ5A·EQEQEQEQEQEQEøÿÿ”ëÿÁº¿÷—/ýcÏ×ßÿ¿å)¿±¿ý˜ü³ÿZ+þ ;_ÁCÿå:ÿðn¯ýåËÿXóÁ5÷ÿÄoùJoìoÿfÿ,ÿÖŠÿ‚NÐßôQEQEQEQEQEQEQEQEQEWÊŸ¶·í¡ð þ ÿû8ü@ý¨ÿi?KᆞµµFƒL²m_Å^/ñ6¯rš†< à)"—\ñg‰õIb²Óížk=/M¶¾"ñ>­ xKE×µý/üØÿmßø;§þ _û@xÃ]³ý—uo þÆß…Ýõ§‡´ øW¾=ø«ªh7ú%Ï>!ü@Ñ|Gik®4j²øsáïCb$6FãT16£tþ¨ôWù~Ïðt‡üSàW‹,u½wöÓh/ ÅsگÿŽßü¯è:ÌQÆa17ˆü'¤x7â>Â6.‡Bñ¶܈罵¾ Ñ?ú"Áà´ß³÷üáˆõßhº—¿_ aÐSãÀ½zíµi|4¾#þÐBñg‚¼Z–mŽ|®Üé­œ7ñYéž!ðö§búw‹<;¤C©x[Tñ8ìÍQ@~iÿÁH¿à­_±_ü¿ÀoŒ?j_ˆWpø£Å0]Ëðïà¿€tû|bøŽl·‹©¼9ái5 .ÃMÑ-ž7·ºñ‡Œõ¿ ø.ÚÿÉÒ%ñÖotý:ïԿࣶç€?à_±—ÇOÚóâ·öµ‡Â¯ y¾ð¢M-½Ç޾#øŠú×Ã?< ޽åÍ”>&ñž­£iÚ¶± •êøoA“Vñ5Ý´–5Þ?ųö±ý«>7þÛþ#~Òß´?Œo­«^Ê÷ ¥h¶š=Â>Óg¸º]Á¾ÓD/†4yž3J´‚$ó™îfþ´h_ø=—öÊñ'Š/Sö]ý“ÿg?„¾}}6Ý~4ÞüDøÛñ µƒwª"xªÓ[ðŠ~ øGGôÙty-¼'à¿ŦjÖWÒ]ø—ÄZ}ô6V~+ðÛþ@ÿ‚ŸøcSÒÄ/„?±ÿÅE¨i¯Û¿€>&x3Å:Ž‘os¿U´Ñ|A ü[“@Ðõ]JÑž }VÿÁ#²Ó®RÚëû ò(î,îÿÚ(ýs¿à”ðr¯ìAÿ8ñðoW²Õe_ÚW„d|øŸâ-+Zð¿Ä 缚샿m¬ü?§xç]†Ùôé¤ð¯ˆ|/àjRÝÞŸ ø[ÄÚV…¬ëŸÑU€…•íæ›yi¨é×wZ~¡§Ý[ÞØ_Ù\Kkyeyk*OkwiuÇ=µÕ´ñ¤Ö÷ºK ¨’FêêÿX?ø67þ õâ¯ø)Oì¥â_…5ã®þÕ?²™ðχ|eâ‹Ù·j¿¾ëö·–Þø›©¼Î&¿ñ|W¯áoˆwq,ÿjÕl4Oj7)ã²[€M”QEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿«ðþŽÿ”~Üß÷lßúسí~ÿQEQEðìoÿ'ÿbÿ³ÿøqÿ®²ÿ‚i×ßõðìoÿ'ÿbÿ³ÿøqÿ®²ÿ‚i×ßôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEøÿÿ”ëÿÁº¿÷—/ýcÏ×ßÿ¿å)¿±¿ý˜ü³ÿZ+þ ;_ÁCÿå:ÿðn¯ýåËÿXóÁ5÷ÿÄoùJoìoÿfÿ,ÿÖŠÿ‚NÐßôQEQEQEQEQEQEQEQEQEœÿü×ûQxþÿö‚ý‘ÿb¸.'ÓþøOàÜÿµ«ik©^‹oxÿâ¾ ü'ðýÆ»£—þÎ’‡^øeâXü)©*}¶þ)xÎÖGò'ŒWðÏ_Þ·üÉûøÖ_þÊ?·Ç‡ôÝkYð7ü 7¿²ÏÄëËx¬ŸFð&« x¯Äß~ÝÝ„—û[wϾ(iÒß=»èºuÇ‚´{ ‹»MOÄZe¶¥üÐ_µðo7í5ã_Ùþ ûûk^¾ºM3ã/ÅþÌÞ?ÐÒþúÏMñ?ƒ>>ê–?¾Å­Ce<ÚVÞñf§áOˆ:Mß›d~ÓŸ<ðãÏ€ô?‰Ÿþ'ø~ëÃ>7ðWˆa™ôý_L¸hæŠHnm&µÔ´cK¾‚ÓWðÿˆ´[Ý?_ðÖ½a¦ëú§¦ë:uõ¿ùü~Û?ðeoÇƚ߈ÿ`Ú#á×¾\Cu©i¿ ÿi GYðOÅ_Ê‚Ù-ü3¦x×Á¾ ñ>!™>Ùu½­éߣ°ít«‹NkyµÛßôb¢€?Ëïö|ÿƒ2ÿà¥_|G§¯Ç¿‰ÿ³ŸìåàUÕVÓ_Ôãñ6¹ñ‡âZ[[I!Õü)àé_„5ò—+fÓüCñcÀóáä$u‰V_ï·þ ©ÿ·ý”?à•_/þ þÌ>Õ~Óâ½RÓÄ~*øÞòÏ\ø¥ñ_Ä:}´ÖzUï‹õë-;I±‹Iðí•Íݧ…|#áí+D🇡­jV8ñ‰üW­ëߢôPEPÌÿ¶?ì¥ð³öàý˜~4~ʬ¥ºø}ñ§ÁZ‡…5KË8l¥Õü7©–‹PðÇ|;ý£mycŠ<â‹ÅÞ¸»µ¹µƒ\Ѭd¹¶¸·Y`“übÿà¢_ðOÚ/þ ûIx»ösý¡¼/{eu¦^Þ^|=ø‰i§^Cà_Œ^ûFÝÇþÕgV¶Ô4Ëûg5m1.¦Õ<%®ý»Âþ#†Ë\Ó/-“ýÃ+äïÛöý”¿oŸ…“|ý­> xOã‚ÖYï4S­Cscâê÷¬kÞñžq§x¯ÁZã‰ú†õ}:[ûEm;Rûn›,ör€…Åþ‡´7üðÏYñö­û,~Üž1ð‡$·žK?üsøW¥|K¾‹Pyæ–(“â'‚2ÁA¼#£épê6RjºOÃ/€zψõ KIG‚MFÓOñо%xVÛEÔní6–Zφuûk'0jéwàI¦á{À^ñÇÅOø[á¿ÃOø“Çßµ¸ð/€µQÒ|YªMªøÛCñg†Ï†zøxü_þ•Õÿι~ÇŸüÄ××þ?Ó?hŽ?·×Æï‚žý³¿hÙŸá—ÁÿÙö9ø¥£øgà_‚d oþ/üuøÑûyxOÆúïŠuŸÚCöYý üA'—áÿÙóáÖŸ¢ižÕ|9£Ø}ŸWºŸO½½Õ$¹‹Ð?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èàøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èàøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èàøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èàøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èàøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþßöŠÿ¤±~ßÿønà–_ý-:?áÿh¯úKíÿÿ†çþ eÿÒÓ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÿh¯úKíÿÿ†çþ eÿÒÓ£þßöŠÿ¤±~ßÿønà–_ý-:øþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ†7ý¢¿é,_·ÿþŸø%—ÿKNøcÚ+þ’Åûÿá¹ÿ‚Yô´èòCÐÿà¬?¶ü‹þ cûKþÒÿðKøb/‚_±ü7ü&¾5ÿ†àý›i?í¯øi?Ù¶oxsþ)ÏMá_éßÙÞ-𮃤ÿħAñgÛ?á,û}ÿö™¡^ÞÜ}¿ÿ#»ÿ‚Šü+ý®?aßÚsö ý‹ “Æß`»¹ºƒÁ?ôçð®‘âoêW‡uxgź7ËÿðQ]wööýƒ~)ÿÁ-üYðëþ aû@|UøeûFÿÁOÿe¯Øëã×ÂOŽŸÿ`ýOþï|mñÎ¥wyáoüý“þ øƒÀßcðÿ€¼]ánÞ mkXÖ¿á5Ò5ŸøŸÀ·¾ š?ý¿ão‚º'í)ÿ$ý¡ü ñ+âOí?¤ø'áoìAû x³Áø)ûe~׳7…tß|TøóÿÑþ x›Pð÷ìÛñ·á>‘â_x—HøOðçKºÖ|Qg¬ê6úw„t« ›Kdš)€>`ÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûóGüÿ‡‡ÿÁuÿé]_üë—ìyÿÌMððÿø.¿ý+«ÿrý?ù‰¯¿ÿáÚ³¯ýoÛÿÿÅÿMÿèÈ£þ§û:ÿÑFý¿ÿñl_ðTßþŒŠøþÿ×ÿ¥uó®_±çÿ14ÃÃÿàºÿô®¯þuËö<ÿæ&¾ÿÿ‡iþοôQ¿oÿü[ü7ÿ£"øvŸìëÿEöÿÿűÁSú2(àøxü_þ•Õÿι~ÇŸüÄÑÿÿ‚ëÿÒº¿ù×/Øóÿ˜šûÿþ§û:ÿÑFý¿ÿñl_ðTßþŒŠ?áÚ³¯ýoÛÿÿÅÿMÿèÈ €?ááÿð]úWWÿ:åûó_ÁQüQÿ×ÿ‚”~ÂÿbŸøq7ü)ø]ð¬¿âåÿÃÏ?cψßðºøÅðûâÏü‰¿gð'öÇöÇü ŸØò5é_ÙÿÚ¿Ú¿éßaþͼýþÿ‡iþοôQ¿oÿü[ü7ÿ£"¿ ટï¿c/ŠðH/Š_³íGûøþGüÿö7ýš>-ü:ñ'üöÉøËð³âïÂÏ‹~#Õ¼Eâ 'Çþøëñ§âoÛ~Åÿ Ê= ÎÃGÔ4Okñ¯tÏè>.ûG†§ðÀôûEPEPÀå)¿¶Gý˜üOÿZ+þ Å_×Àå)¿¶Gý˜üOÿZ+þ Å_ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEó·Ä¿Ú«àÂ/_³_ìÏãßÝhÿ?k‰~.ÃðÃøsÄz·‹äøàË?ˆïÄf—wáÿ ÿ`øVþ×Q€ø›RÒF±$†ËG7×ÈöêôMQ@ðOü³þ ðƒþ û"üGý«~/Gý·†"·Ð¾ü;µÕàÑu¿‹?5Ô¸O|<Ðõ ¬µ3a.©-­Ö£®kQéÁðÇ„´Ÿø¦]'RƒE–Ê|ý•¾7ÿÃLþ̳í!ÿÇü!?ðÐ_~üoÿ„3ûkþOøDákü=ðï?áÿ„‹û'@þßþÀþßþÊþÚþÂѵ>Éöïì;Ïû õEPàüÓþp¯ÿiþÿ‚rïd¯¿þÿÊSlû0ø&Ÿþ´Wüоÿ‚úÎÿí?ßðNOýì•÷ÿßùJoí‘ÿfÿÓÿÖŠÿ‚±PßôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWÎß´GíUð?öV‹àœßüWuáHÿhoÚá§ìµðœÚøsÄ~#ÿ„‹ãgÅçÖÀ>¸ÒõC¡Úë  ê‚_kƒOðî—ä)Õ5K14&O¢h¢Šü{ý¬ÿ੾;ømûLê?±?ì?ûxóþ ûVø+Àš7ÄÿŒþ ðßÅüøcð;Á~'Q/„bø‘ñ£â5®©áý/Ç>1²hõ x&}OUÐ¥‹T[˜£š(ÜöŠü÷ÿ‚tÁB¼ÿ øYã¿Ø|:ñ§À¿Œþ(xàíû;üI’Ê_|øµá_)µ=úúÁa³ñƒ}Éwá¿ÙÚYZëPÇ{ÙXjzf§§Yþ„P_€?ð_Où¿ý§ûþ Éÿ½’¿«ðþ éÿ8Wÿ´ÿÁ9?÷²PïõQ@Q@|9ÿ”¦þÙö`ðM?ýh¯ø+}ÿ_|9ÿ”¦þÙö`ðM?ýh¯ø+}ÿ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@(ŸðWØëHø½ÿ¿ÿ‚1CwûDþ؇ퟷΓ¨IðöŽñ·Ãɾ§Á¿Ù_º½ž¡ûÓQ±Ö/u{•½K{¬-༞ÔêV³PÖ¿´gü‹_ý›~+ëŸ,?à›ÿðSïÚ:×Ã:‡¥âçìçðá¯Ä…$:ƃ§êï‡â¿üuðF±©j3^#Ä"ëÖBÛ^²Ô-¡’î’êf~ÎßðS_ãïÅmá–µÿâÿ‚™þÍšV­§xS¾øÅûMüøað÷àÇ…­ü9áýKÄ/м[ üwñ¦¥¥É«.œtÇáë¸n5›Ûk©¬­¥–ò~ÑŸðMÏþÒõϋ֟ðQïø)çì߉4ÿB>þÎ?¾xá/†_FÐtýYt x‡à_ŽuK+í^K&ÕüA,Þ%¾Šó]¼Ô.í’ÖÞhíb¡ð'þ {yðgâ%§üSÿÿ‚œ~ÒÞ]ÅÞÖ¾ ~Ò´ÿ| ñf›ã j¾¼ÿ„“@ðŸÀïx‚âçKƒV“UЮtïé’éú垟|Æá-ÚÞPÁßÛ: ¯ø*çìñÿ0ÿ‚˜xºÞâëö)ý“¿cïÛ'àßü7ºŒR ⯎“á—‹|/ñÏöä»ÓgAä•õ…ßÃw7~i±ðþ—­x4½Ĩ—·¿IþÓÿ´_í+û1Á¸_ðNÿˆ³V»âÿ‡÷ZŸìåÿæðOÇþðS|Añ·ìõû8ø›à‡‚âø­ñ›ÃשqªøvÖ×KÑâ¾{V—I‹ÄSjv7ZN§kc­iÛß¶oüÿ»—öJý¥"ý’?aM,~ÔR|ø”Ÿ³Ù‹ã÷Çd›Âz øzRoˆÿãðMÿ 9Óv¿ŒÝ<2§i…€œÖÏÃø'—í[ÿÎÿ‚_þÍòÿÁ,þø?Á?¶eßìñwöùýŸØè_´Â#Ç¿ ø›ö‚ñ'ì‰ÿ9ý’lOü*ðF§áí;Æþ&øgðXüAZxB?jzVŸ©k³^x‡Eµ·°[£:Áss¨žÖÂ诿|gý޼cûwiß¾8^þÖßðR¿Ø WÔ~ø\k?gÿ? >àêúÁºñEõ·Äí"ÿáwÅ»+ÚëxK^ÔtK¡˜4 +[¸[cvÇ|(ÿ‚­ø—â—ÄÏ|7¹ÿ‚TÁ[þ[øçÅš…føñ_ökøOáφ~[Ô °ø÷_Ò¿h¯jZ?„ôEœß뺕†‡«ÝÚiðO4u܈°¿àwüÿãgü«Äÿ·¿üAý‚?g¯ÙÏÅŸî¿à£ßl>,þÒ_¶?Ž|á¿„Z€>_ë¿ ¾üð߇þiZÄOxÁ4Æ:ÃÜA5·†¼¡Üh‹¨æOز~øü(ÿ‚Rx—áoÄÏ|H¹ÿ‚«ÿÁ[þ(ÛøÅšЦøqñ_ö”øOâ?†~9DÔ ¿ x÷@Ò¿g_êZÇ„õµ€Økºm†¹¤]ÝéóÏ ¤Ž³'Äú„?mïø%GíÃûhüYýžÿb_~Ý_±ßíóãÝ ö„»Ò¾ øßÀþøËðöŽÿ„~-â.Ÿ®ø_Æ×ÚjxÃÀÿ/­ÓÅšö‘*ÇávÆùÊ0ÕÀ>sÐÿn¿zì©ÿ¸ñ?Áߨ§ÂŸ³ü³örƒáµÇíAá/…QÝ|SÐ>)ÜkzBÛ|/ý¥þZj0ÞŸØio6ø/À²åçÃÁ㯆~,°•®4ÿ ]øgL×tÝ&?Å<6>"›ê¯„±¿üšïÀÿðUOø(·‡-¾þÊŸðS?Û®ãà|ß³·ÀGUðÅmà×ÂoÙ®ËNÐü1ðßÇÞ(ÕôÍ[áÖ­ñâïaÕ4_V6ï øo^:ˆ®/|7-æ¹¢xsä_ÛCàgíyÿdðßÃ_…:ü oØgö¿ÿ…©ð§ÅŸ?à¢^5ñwÀ%gÃà¯i!ñ—‹~|Eø}uÿ KãÚ¯öu΢xz%žêúÓC.¡¥Ykzxö_€?ð_Où¿ý§ûþ Éÿ½’¿¿_óí_€?ð_Où¿ý§ûþ Éÿ½’€?¨¢Š(¢ŠøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïúøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïú(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿ‚úÎÿí?ßðNOýì•÷ÿßùJoí‘ÿfÿÓÿÖŠÿ‚±WÀð_Où¿ý§ûþ Éÿ½’¾ÿøsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿ྟó…ûO÷ü“ÿ{%~ÿWàüÓþp¯ÿiþÿ‚rïd ßê(¢€ (¢€>øsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ¾øsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ྟó…ûO÷ü“ÿ{%}ÿðçþR›ûdÙ€Á4ÿõ¢¿à¬UðüÓþp¯ÿiþÿ‚rïd¯¿þÿÊSlû0ø&Ÿþ´WüŠ€>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Àø/§üá_þÓýÿäÿÞÉ_¿Õøÿôÿœ+ÿÚ¿àœŸûÙ(÷úŠ( Š( €>ÿÊSlû0ø&Ÿþ´Wüоÿ¯€>ÿÊSlû0ø&Ÿþ´Wüоÿ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø/§üá_þÓýÿäÿÞÉ_ü9ÿ”¦þÙö`ðM?ýh¯ø+|ÿôÿœ+ÿÚ¿àœŸûÙ+ïÿ‡?ò”ßÛ#þÌþ §ÿ­ÿb ¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ðþ éÿ8Wÿ´ÿÁ9?÷²Wïõ~ÿÁ}?ç ÿöŸïø''þöJýþ¢Š(¢Š(à‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿ëà‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþ éÿ8Wÿ´ÿÁ9?÷²Wßÿå)¿¶Gý˜üOÿZ+þ Å_Á}?ç ÿöŸïø''þöJûÿáÏü¥7öÈÿ³ÿ‚iÿëEÁX¨ïú(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ üÿ‚úÎÿí?ßðNOýì•ûý_€?ð_Où¿ý§ûþ Éÿ½’€?¨¢Š(¢ŠøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïúøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïú(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ÏO‰ðV¯ø&Áÿ]ø/â7íÿû#xoÅúf»ªøc\ð»üyøu©ëþñ‡|4ÍcFñ~“¢ëÚ÷ƒõ3Qó,¯­|O“-µÍµì2ª½…èƒê‚´OìÿûJøf÷ÆŸ³§Ç/ƒÿü¦j­¡j~)ø1ñ+Á¿ü=¦k±ÙÚj2hš–³àk[Óì5ˆ¬/ìoeÒîî!¿ŠÖòÖâKuŠâ&pcª··Ö:m´—šå­…¤#t·W·ÚÛD L“ÎñÄ€NY€À'µ$ÿð_ø9wÃßðOMw_ý‘ÿck |Ný¯ Óüˆ^8×Ðëg9µ;Xg²°¹Ò ’(|uñ_û:éu8|7qw†<$º]Ç‹ãñÁ¿ðQÿ8ŸÚ{ö×ý­mKã_Ú§ö‡ø­ñËZ:î«aŽü]©ê>ðåÖ ¨—qø/ÁQKoàÏØJ‘¢ 'Áº…¥G„ŠÍŠÿríÇ^ñÄ–žñ…uÛ¸dH¦µÑ¼C¤j—K%¬WÑÇ$6W“É’YOâ#(fµš+…)Ûª¯ð±¾½Ó/lõ-6òëOÔtû«{ë û‰m/lom%K‹[Ë;«wŽ{k«iãŽk{ˆdIa•HÝ]U‡ômÿÆÿƒ›à ¿°gŠ4O ü]ñç‰ÿlÙ¾K¸ ñÃO>*ÔüCãÿilè³^ü,ø»­¾­â½þÆ,<5âKŸøÚÇ5§‡t[Ë´×l@?ÖâŠùoö3ý²>þÞÿ³Ç€¿ißÙ¯Æ+âÿ†~=³—ËVãNñ/„üE§:Ûø‹ÀÞ8ÐZYæðÿŒ|/ºËVÓšk›;„6šÖƒ¨ë^Õ´]oRú’€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ྟó…ûO÷ü“ÿ{%}ÿðçþR›ûdÙ€Á4ÿõ¢¿à¬UðüÓþp¯ÿiþÿ‚rïd¯¿þÿÊSlû0ø&Ÿþ´WüŠ€>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Àø/§üá_þÓýÿäÿÞÉ_¿Õøÿôÿœ+ÿÚ¿àœŸûÙ(÷úŠ( Š( €>ÿÊSlû0ø&Ÿþ´Wüоÿ¯€>ÿÊSlû0ø&Ÿþ´Wüоÿ Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿ÍCþzÿ‚ñ|aøµñëâÇü—öWø­ü<ýþßøƒá_íâOjϦk_> ÇhßüªëZ{EªZü+ð]Ë뵿[Ý[iþ9ÖàñSx²wÃÉáËKOô¬”°ŽBƒ.Ê g,•;×øx§Zñ‰-ø·à×Å?ÆÖ–þ%ð­Ü"-WG–òÇP¼ðÏŠôB ïxÓÁúÜêÞñn“­xgU›O±—PÒ®d³¶h¾y¢€7ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Àø/§üá_þÓýÿäÿÞÉ_¿Õøÿôÿœ+ÿÚ¿àœŸûÙ(÷úŠ( Š( €>ÿÊSlû0ø&Ÿþ´Wüоÿ¯€>ÿÊSlû0ø&Ÿþ´Wüоÿ Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿É×þbÿ‚B|Pý…?l¯‰_´÷¼®ë?±çíMãíoâ?‡ñŸÄ¿øoáÿï x—Ǿ<ñ–³aáßø/Áº§âoø£Ä­ÂZéš'‡¼=¢ÚÞêÚέ¨\ɽ–§Z\]ÜÌë1;°þ³ßÿàÕ/ø"ïÄßÝx²Óö{ñ§Âù¯æ{­CAøYñ“â…áK‹©e–Yeµðþµ«ø’ËA…¼Å‰4Ï ®‰£ÚÅ Kg§[Ÿ5¤ýý‰à’ßðO/ø'ƒÍ©~Éß³'þxÊîÂM3PøŸªK­øÿâ½í¨X¯Äêž%ñn“¤êŽ©6¥áÿêzG‡n¤Šßv©ih‰ +#2:²:1WFYYI ¬¤¬¤A‚#4ÚÿAßø8[þ Žñ¿ÄŸ|Fý¼àœ>ľ"ñm֯㿿²¾Œ©ˆuï]Ï&§â‰-X¥¾¹¬x‚Y/uÏü,I Öµmoí·ã×µrÓÁiüx«Â¾(ð/‰¼Aà¿xo^ðwŒ|'¬ê^ñO„üU£êñ7†¼A£]Ëa«è^ Ðu{{=SFÖt«ø'²Ô´ÍFÖÚöÆîm® ŠhÝŠ+ôÿþ ¯ÿ†ýµà©?´ÿ þÎÿ 5;†vÚ¬¶>?ý¢|i§jš7Á/‡pÙ-ŒÚ¾£âï±Éˆ¼_¶¥§ÉaðóÂCYñ•òßÛjiv‡Uñ–úkÿ þÃ!ýªà¨øã¨hóËðö)ÒåøÍãnXeþÍ›âF«kªxsàŸ„"ºHgHµûÏ>§ñÆ„O¢ü.ñ¸®”7_ë _?ðKïø&Àø%wì·á¿Ù»àšÜkú‹ÜÂQñoâÆµcmc⿌ï­-íµjö¶ÒÜâéðÛÁ£ø7Â6·—Ö¾ðÅ•†Ÿ>§¯ë¯®x£^ý Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø/§üá_þÓýÿäÿÞÉ_ü9ÿ”¦þÙö`ðM?ýh¯ø+|ÿôÿœ+ÿÚ¿àœŸûÙ+ïÿ‡?ò”ßÛ#þÌþ §ÿ­ÿb ¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿…ø-ü¥¨| ø›ã¿Ù[þ ¡¤ø7Åž)ð­wáOˆµoŒl“Å^Óü[¥Ougâ?üð\¾^âÁáíJôÉþ&x²mS®¡i­ÛxgÁ¾$ðóh><Ô@?ºz+ünbÿƒàµÐø·þTý¾¾&gíiû¾ø??„¼Í¨»áŸáÄžû>²Â7ö]ÅßÉÞîÍýRÁÿàì_ãßÅ/þÊŸðR½7ÁñgµK ü1ý¨<§ ø_Wñ†¯}ž‡áŒÞè^“_½ºþÎÓ¾!xTè¾°½m*ÃÄ^Ò,&ÔüejýÑQEQEQE|5ÿ$ý¹|ÿãý‹þ8~×? ƒWᯆ|¿x9ïáÓî¾!|OñÌ:ÿYÊìnV-oÄ÷ö_½ÓíuÏøJ×Ä^)þͼµÐ®¢ Sÿ+ÿ‚¼~Å?ðJ¯éž)ý§|wqãOEç|?øðâÏNñGÆÀ·ÛÜjš7…ïu}NÑü3bö׋{ãk¾ð¢ÝZ>k¬^xŽçNÑo¿‡ïÚ#þWýº³âjÓ»Em1M7ÃÞÓƒ?xKÃv ÂþÒb¶Ñü?¢ÚYézm¬¶ñ ðZþµþÁå¿ðU^Ù§ÄþÊ_´C«XÜêë¯|5ñ‡ƒøsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ¾øsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ù§ã÷ìcû"~ÕgO“ö™ý—ÿgÿך6™¨hÚ«ñှ!kžÓ5FI5 O ëÞ(Ðu=kÃIu4Q\HúþŸ/Úa†åd[ˆb‘>–¢€?,~Áà‘? ¯®µ ÿÁ;eKÛ›¸g†OøN¾h?í¢K‰m%v²±øŸŒ,´éÕ¬¡\Ø[Û\[D÷[K:…üw?§š6£øsGÒ|=áí'MÐt M±Ñ´=F±µÒô}GÒíb±Ó4'L±Š -;MÓ¬ ‚ÎÆÆÎmm-aŠÞÞ(âiQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@€?ð_Où¿ý§ûþ Éÿ½’¾ÿøsÿ)Mý²?ìÀ?àšúÑ_ðV*øþ éÿ8Wÿ´ÿÁ9?÷²Wßÿå)¿¶Gý˜üOÿZ+þ Å@ÑEQEQEQEQEQEQEù7ÿÐý¦¼_û ÿÁ&?m¿Ž¿µ+ÇZG»?ø?^°ºº±Õ¼7âž6ð¯Á=7ÅZå”°ÝZkÞ›âñ6‡wÿ¡êšM¥ÔªðC*ñl$’I$’I$œ’O$’y$ž¦¿ÛKþ û#x‡öëÿ‚i~×ß²çƒQn)ñGÁ?ø«à–µã-Z÷{µÖ¥ãKÿ‡“x²úy–KfV™RR迬ù¿ÿ†ýõoØ/þ ±û"þÊÞ%'>|0ŸÄ[i/`Ô“MøŸñ7Äz÷ʼnº-ž¡m0Þéz|sâ-F¸D>f‘§Ø“$¤_ô‚€ (¢€ þ?à÷ÿŒzþƒðö øg4±øoâÅ?5裕&Õ> xKÀ¾ðâ\F"2Ë‘ñßÄ3F¾|p `W’ æŽÞ[_în¿‰ø=§ö{×¼cû+~Ç_´Æ“ln´¯> |2ñRÛÛM-ÅŽñóÃ>Õ4½jîhÅm¤Zkí49f¹d_íohöП2ð«›­Q@Q@Ò×üUñƒÅ_ à´Ÿü Ilº7í ð£ã÷Â_Gq•äðÞ…ðÃ\øñbl[p÷©ã‚¾ÍÆ×oìöÔ-@ tÌ?Öz¿ÊSþ ýüMñsþ õáOŒ{\Yx[öSø5ñâw‰uÒïîtÍBÿâ„/þxwÂÚ°DÖf»ªŠÚ¿‹4Ë}BhßRÑüâag¯g+Cþ­tQEQEQEQEQEQEQEQEWàüÓþp¯ÿiþÿ‚rïd¯ßêüÿ‚úÎÿí?ßðNOýì”ûýEPEPÀå)¿¶Gý˜üOÿZ+þ Å_×Àå)¿¶Gý˜üOÿZ+þ Å_ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPàüÓþp¯ÿiþÿ‚rïd¯¿þÿÊSlû0ø&Ÿþ´Wüоÿ‚úÎÿí?ßðNOýì•÷ÿßùJoí‘ÿfÿÓÿÖŠÿ‚±PßôQEQEQEQEQEQEQEü¢Ád¿àÖ¯€ÿðPßøËöœý™&ÒÛ^¼þ©¨ Š( Š( ¾iý±e?…·ìÇñ›öSøÓcuyðëãOƒo<-«ÜiÏZƨ¤öú¯…üa K2Koˆüâ­;Eño‡Úò ½<ë5’jVWÚ{]YÏôµþ?ðPø'ÇíÿÕý£ü_û8þÑž¾Ò5="úþëÀ~:·³œx〖öXt/ˆßu‚dµÔô=fÔC%æŸöƒ­xOWkÏ x²ÇHñ6“©év¿×û¦þرì³ûzü&½ø+ûX|ð§ÅïM$ךJëvòÚø“ÁÚÔ¶íl#Žks«økUÓ®®¬Þm6ý®ô»«»)ÿÚþ ‡øK®ø¢óWý—¿n_|6ðœñI%¿þ5|%Ñþ,jV·Žï Žßâƒü_ð¨.–– {kÏj:Œ1 ’çVÔ&,XüîkµøqðãÇßüyá…ß |â/ˆ|{¯iÞðg‚¼'¥]ë~#ñ/ˆ5k„¶Óô#K±Šk«Ë»™œHã!<²²CŽ¿Ý—Ãø1Û\mjÊãâÿü7J‹Ã¶ú˜mGHøoû<Þ\kZ¾‰º/øŸâµµ‡u;¨|À.gð·Š-l$ÆÓRVe_ê×þ ÁÿZýà—d×?³oÂëSâ–¥`úoˆ>?üV½±ñ·ÆjÂeE¹Ó`ñ$zN£øCE½Äuá÷‡|#¢êÒAmq«ØjvðÜ ‚ÿÁàúoü_ö@“Þ1–ÛYý¨þ?\øoâí'¯ÚKau§è𾕥][ø?à÷†ïtÝöú…¾ÛkZü#X{ÍM¼AãOxçÄVðxsVÐ4-÷ZŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Àø/§üá_þÓýÿäÿÞÉ_¿Õøÿôÿœ+ÿÚ¿àœŸûÙ(÷úŠ( Š( €>ÿÊSlû0ø&Ÿþ´Wüоÿ¯€>ÿÊSlû0ø&Ÿþ´Wüоÿ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø/§üá_þÓýÿäÿÞÉ_ü9ÿ”¦þÙö`ðM?ýh¯ø+|ÿôÿœ+ÿÚ¿àœŸûÙ+ïÿ‡?ò”ßÛ#þÌþ §ÿ­ÿb ¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ðþ éÿ8Wÿ´ÿÁ9?÷²Wïõ~ÿÁ}?ç ÿöŸïø''þöJýþ¢Š(¢Š(à‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿ëà‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþ éÿ8Wÿ´ÿÁ9?÷²Wßÿå)¿¶Gý˜üOÿZ+þ Å_Á}?ç ÿöŸïø''þöJûÿáÏü¥7öÈÿ³ÿ‚iÿëEÁX¨ïú(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ üÿ‚úÎÿí?ßðNOýì•ûý_€?ð_Où¿ý§ûþ Éÿ½’€?¨¢Š(¢ŠøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïúøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïú(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿ‚úÎÿí?ßðNOýì•÷ÿßùJoí‘ÿfÿÓÿÖŠÿ‚±WÀð_Où¿ý§ûþ Éÿ½’¾ÿøsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿ྟó…ûO÷ü“ÿ{%~ÿWàüÓþp¯ÿiþÿ‚rïd ßê(¢€ (¢€>øsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ¾øsÿ)Mý²?ìÀ?àšúÑ_ðV*ûþ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ྟó…ûO÷ü“ÿ{%}ÿðçþR›ûdÙ€Á4ÿõ¢¿à¬UðüÓþp¯ÿiþÿ‚rïd¯¿þÿÊSlû0ø&Ÿþ´WüŠ€>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯Àø/§üá_þÓýÿäÿÞÉ_¿Õøÿôÿœ+ÿÚ¿àœŸûÙ(÷úŠ( Š( €>ÿÊSlû0ø&Ÿþ´Wüоÿ¯€>ÿÊSlû0ø&Ÿþ´Wüоÿ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø/§üá_þÓýÿäÿÞÉ_ü9ÿ”¦þÙö`ðM?ýh¯ø+|ÿôÿœ+ÿÚ¿àœŸûÙ+ïÿ‡?ò”ßÛ#þÌþ §ÿ­ÿb ¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ðþ éÿ8Wÿ´ÿÁ9?÷²Wïõ~ÿÁ}?ç ÿöŸïø''þöJýþ¢Š(¢Š(à‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿ëà‡?ò”ßÛ#þÌþ §ÿ­ÿb¯¿è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþ éÿ8Wÿ´ÿÁ9?÷²Wßÿå)¿¶Gý˜üOÿZ+þ Å_Á}?ç ÿöŸïø''þöJûÿáÏü¥7öÈÿ³ÿ‚iÿëEÁX¨ïú(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ üÿ‚úÎÿí?ßðNOýì•ûý_€?ð_Où¿ý§ûþ Éÿ½’€?¨¢Š(¢ŠøáÏü¥7öÈÿ³ÿ‚iÿëEÁX«ïúüAý±?g¿ø,F‘û}jµgücÇŸ°¿Ã/ˆ²ÁÿÙïâ¿ÃÛY¾9Ký¯ã¿ƒÿ?h?ˆþñ怿¼ /ˆ,?áðÿÇkÃúS/ÄÛ-Wÿ„£ÅcÅÔïtOxƒHóÿøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJýþ¢¿㩯úÀþtRøêkþ°ÿ ßê+ðþ:šÿ¬ÿçE(ÿަ¿ë?ùÑJ?ྟó…ûO÷ü“ÿ{%}ÿðçþR›ûdÙ€Á4ÿõ¢¿à¬Uùñö)ÿ‚ú~Ú?ÿa_øl]þ  |ý“oÿÙöÖ×áš5_Û?Kø§­ˆñ©ý§ i?ð´¼)⯠j?Ú>ñW‰þÁ¥^Â9öÏàý£Åz>™¡ö·ÿlßø&ÿíµñ—öЇöÈý‹¿à¨Þ ýƒu}Kö`ð/ìÍã߇Öß²¿ÿiO øÿNðÅoŠÿôë:OÄ߉z7‚SÄMÏÅMODð΢޺ñW„´é¼Ym¡øÂßHø…âàözŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¢¿áÞð]úX«ÿ9ûómGü;Ãþ ¯ÿKç#cÏþm¨÷úŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¢¿áÞð]úX«ÿ9ûómGü;Ãþ ¯ÿKç#cÏþm¨÷úŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¢¿áÞð]úX«ÿ9ûómGü;Ãþ ¯ÿKç#cÏþm¨÷úŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¢¿áÞð]úX«ÿ9ûómGü;Ãþ ¯ÿKç#cÏþm¨÷úŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¢¿áÞð]úX«ÿ9ûómGü;Ãþ ¯ÿKç#cÏþm¨÷úŠüÿ‡xÁuÿéb¯üäoìyÿ͵ðïø.¿ý,Uÿœý?ù¶ ßê+ðþáÿ×ÿ¥Š¿ó‘¿±çÿ6Ôü?àºÿô±Wþr7ö<ÿæÚ€?¨¯Àøw‡ü_þ–*ÿÎFþÇŸüÛQÿðÿ‚ëÿÒÅ_ùÈߨóÿ›jýþ¯Àø/§üá_þÓýÿäÿÞÉGü;Ãþ ¯ÿKç#cÏþm«ÏüKÿoÿ‚“üqø§û%x³öÅÿ‚ÕÿÃL|2ý“ÿkÿ€ß¶.…ð“þÃðàÏü$^;øâ9õ-2Ïþß…¿4iÚþÕüO៴^[xG°þÞþÙ¸ðƯ{¥éñÄýQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEÿÙ./Doc/Tutorial/slope_friction_quarter_snaps.jpg0000664000175000017500000024405512176660653021651 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿžh"ÿÄ  ÿÄÿÚ ÀìïOñ)þŸá)þŸá)þŸá)þŸá)þŸá)þ€~ÀOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿOð€ÿ pmüÿXü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÂSü ?ÃT`ÿ@ ÿïŸ8uÜP|]'ÙŽlĬµŸè'øŒù[©ŠÆqàßû§“‘¸/—ê?Ø ÿ` ÿ0/=1Éë;ð6÷}ï{IŒÿ@ ÿýM«E¾Ô} ¶—æ¦?’]íÏRþ¤»lõê_ø›lÊ­J?Û{ t«Û¿+Ïï@ÎrðÏô“üFÕ ”’µË÷±Û®ÂÈŽ½÷šÜ#¦òOk–K#w«c==ÇûìŸë_6;FÂÈ(Ⱥw²˜Æ~÷W¿"­?Ð?ÆœŸ÷û–{Σ£¢¶–AQçvKWª£³ŒaÑÝûC5.í¾5 ÛÇgá¸nt@ ÿ@ ?Ðc9ÐK‰èÍÝ^Ð=sIÙÛJSUzTПïë­gå|TºÊ–©]9~wºÛ[©DÙxœ€ŒžöÿØùjU¶F¥ú£*Ý·{¦õyQMm‘ÛZé} { Ùq†¹‰¹y«¸Tµ 5þ>áÛÎSïßÊn}”ï;);úÊŽŽÞ¨OWÇ÷ªK¯Ý¹µÛÏlóÕì—›€?ÐOôNüâ·Ø|¨ãùÎ}šæ¦G«ÓãLvñèçtõÝÔ1uå®*Þû½snÇèôß`cý€¿ö¼šm•©Ö龎Îýc¹<ïNŠ0åWÇÏ„},ÈÃ:¥–Ι륆ÎÛ§š3dl€ 9~ î­÷*÷ÚW%Î<»dºèåM]|TýЩQ·.¢{tm&ù ÏÍ Ÿè'ú'~ñ;ü>õwwóßaöuõr’ë•u<Ô+º?$ºýãÛÈçOÃò2mÿx0C;úŸ‚Bãcý€¿ö½›í©Î›é.Î<©õ~ïÚåM}œùþÂ¥'wɨÓýÇÉuÆ\ÇÙO)ñÙø\¶¼_koó FQoe«pŸö#,?Ð?Æ›÷?˽áSMUIkœçùSùñ¦åù= ®ŸÎRÕ©Û—Q}¹6~|†éæ€Ïô“ý“·¸þxsáÎý“Ë²Š¥ŽÏÞ蟕Ol—:øô"îìãv_ϨáP¼× °þÀ—Rý³u3Ô} Q×ÙÇVï]¼©jå­Ç³¯œµèë?z#F®º7.ßßÃ'3r êïµms#Ly&Øø¶ÅH±³9]>2ò1>Æ0¦^{¬ 8‹œ* 6>A>/œû7 ¨ózŽÛ7…ýù‹Û5.©ÍNÙ.°™šôpŽmÑ®ÖÉ»7¸ãkàŸè'ú çb$±{ÌvæOÕ¸G™½’φôyÇDŽôæGi†Ôù•Sp«¿4)Ë­,0á°þ×çû‹Ülœ\Çûìxu;ÛË][¼bEfsÖ»f3;®jX{O™}Ò\áÝc÷¦Ã^¼Áõf¡… Øê„øc×™^¬#„ÌÉ錘]Ï6¹OCvž€G'£Ìå¤ÃÜóÌsœZVw“Ý©þ€þž€€þ€€cý€¿öÏðÿ@ ÿgúIþöÿØ?À@ý3üŸè'ø?Ø ÿ` ÿ OôÏð  Ÿàÿ`/ý€3ü?Úgù?Èü€?Èü€?Èü€?Èü€?Èü€?Èý(ð7 @Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰~°oÍŸ'ù"'ù"'ù"'ù"'ù"'ù Ãñ˜ý3üºè…Ь/H?ÐOð×]ñmñvÀ?Ø ÿ` ÿ \]LŽZÛ¤?Ð?Ài}^R]ãðšN©Œ•lÈ3ý$ÿ/«ÊK¼E½ š{D`4«cþ@cý€¿öÏð4¤¶Ð˜·ãHÝ–0SŽ{|ù@ŸèŸãòcS?ƒÔýµÎKé¿*·zìå¡ÊF2ºõšØ€þ€­uу›=ŽeþVO€ÁuMÒ«“™þI‘ÌFËš¸ð«fcý€¿öÎ,^ûMðkm¦Ô:B(ä¶AaÆCgùÁ±àÿ@ ÿpüWÜÛŽYïZ^ÿÊ©.j2'êjYfNº«ì7°ñÉy~¦áç Œ@ ÿ@ ?Ðk9POˆèqâwT軩§r’âän-¥,Ôì|^lVÿî~i íÀìÿ°øÔƒmJtÿGrýî¥Õ»¿£÷öß¾' dõ®ØÛ y Û®f@ý3üi¿m®WÀrßwõÒÖó¥’ï£åÛNê›è¼ª9¨ì‹"UÌžåæÉÎx~æÍÃÂ2€  Ÿè2œØ-Ãtˆp©¤ã zï«æ~£ùƧš[§±ö®ù‰–çûG1ÊÿïÞH®-Çûì|53Û+S]3Òÿ”µ:Ïn¥ìü«„ÔRI<îpûƒ]=8g»tó,˜ ï* 8m÷Ûüw-÷•? ®º?Þ]©.éÿ;zæ·§õ|ú¨Ë s—©MïÏr}¼ã1Û‡œ OË ØÐ«dŸè'úç‚ ñ=û»yÇ´(¹÷ñš—å7]\öýÞ©INæ³e-f.öcœîÙ߼ެ1þÀ_û^mOvÀÔïMô—>ŽzÇrãû×ÒwïçzoÏgÂï„û‡\^d³ yV=Ù®h?Ð?Æ›Ÿ ö–Û˜{£·Óòëhå;zé+¤¯ùÇŸjvtVô¯~î3Û}D²C¥=æ¹:S ¥Oßæ¹–䘬Åâ¸Ãlñr4ÍÏŠ–›cdßÞ¸G—gO8TüÎláqˆÚß)´ÈʯÏûG5ÿöïõ9å@{\á¤%Y÷RÇ"ŸëÝëönÀ]kS^L¶ÎÔ³PôE¾ÍW¿Ð×Sð©eëùýu4¯¸wR÷FW©åÓFIˆ˜=s«eâ[: ·ÈÎrÉéCïÒWÄÊó/5Öü±+Ж¶R± ªYAÀ«bŸèŸãLï•Û¶“Sô¢uÛk÷ÑÈê1û·ODa¨¿©¶…Dµuã·G\eÔj¯mZ˜M¨§-¹¿f£©›··Q¨­^ÜèUÔs§n^Ϩ_¯·ìô5ú½´a%¥lY“ÇÙ=Q>[>÷k=ÇYN›ªhe5„üÙß”Ôu¡ÙÞ¥a©özîGXî;>RI[XÞ[8vÆM^köp©žßX>Ÿúc.±ôÛ@ò–®±œvi«¯‹Öûb+sq³<Öìj©¹ý–¥ÔgŽÝÜq[Þ¢•ÛmuË[R>íµja>£öâå5=Ih¶èK_QZ½·cKQͺ;g·Ô[¯n´&ÔÓÛŠ®4õôvÜ&ÔG·ntöú®3Õ³pÏ­ŸèŸêøÐ3ý$ÿÇûìŸà  þ€þÏô“üìÿ°€€'úgø?ÐOð °þÀþ@ŸèŸà@ ÿ@ ?À1þÀ_ûgø GÏ'ù"'ù"'ù"'ù"'ù"'ù" ñæÅÈü€?Èü€?Èü€?Èü€?Èü€?Èü€/Ö<>|ع"'ù"'ù"'ù"'ù"'ù" €?ÿÄ378@0!"# 12$3A&ÿÚeÙy§âkc±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ"þc?Cº{ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61fþ—µšìRêU‰±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#cRjz>þàDzþùMì;¬ÅÎÅ{ï”Ø1é9÷-õHuO5,™œúÍR¡qPëó½ím:7epßï”Þƒ›P«Ò›Æ–µ^ª6äš–PÖÅaÂÚ²çWW[U•.ñÚÌ\ìWÞúÜ7u¾IYÃþý-t×iCÏZ!è¸kòàþùMƒ“—Dº”½.Æ©K’¿Pk®+phVÅéW¹­¶þñJèø|¦ô/*\ÕrРÙ×ÀÕÚmR–Ý|¶Õl7Ï­Ö.–ê“qЬ‡cµ˜¹Ø¯½ä·n*õ*êoæï™‹ŠÃpm[uµ å bq¹¿¦æÿÁýò›>'fÚŸ2.ãbP­…®,ákNïµåw[‚¼ q€^&´ÆÀAe±˜1LS—ë|¦öŽÖbçb½‡÷Êlø¹ÊÕJUJ~™1õ®0! }7Çcµ˜¹Ø§xÅ+aË((¯ã¦¨(a)d&'©t—eÄ¨ÒæÔ¨S=÷ÊløºÕ).òŒTħȧôâ&—¼s&EŽ“[2˜ÇÖþùMŠp’ê Šˆ‚€s™@ü€åS ¨¥òÅ"ˆ•‘™¦ÌÛù1xP%ÇÎEÉ©Øíf.v)æíZD•Nc’ž¢%a2çê1ˆN,óó:Ú¦Þ¾–C2š‰¬ŸÜþùMƒ|¿  Ó|á* T”B’cB| L"\RN ¦ƒd¸¤[Úýoï”Ñ—æ0WøL‘U“âD΢|@Q?8åæj(²©r  b‹Xb );ŸS±ÚÌ\ìSÌpMª"Ã0±YD•@Jé˜àSðID¼“ËpSVó!¬—©ö¿¾S`ÇÅÎþ¨‚%ƒ #Šÿ‘ÃQ¿q‰Ä‡H¦'’m ­¹úßß)£0:uµ–+ÕOˆ~12Æ‘ü~# 2(òÒürs8œ:GÖQ°¬Ó($¤ä¥BWév;Y‹Šy 'kТa¥$h!¿ ÅXÀDNOÇ1ÍÌ1¹âÓ¨(fVô±êvØþùMƒQ?"æ@Uš„Š3QüÔ1DüÎ'B4¹÷$*E75C sCgÛ­ýòš2ð‰žã—"*úRdæ„"™5ÿ#ˆ‰¹`HLc¤¤¸jâ:I²þ—cµ˜¹Ø§tµ‰˜œeU-!«B%L‡Z]"(m%ÿb*BJ*’¥HT ~¿U¶+Ï법F˺$¯;_ê|¦Á‹±0ýa¯JÚ“*&1Šp@Y3 Ð¡•6“$)ˆˆ‘!Ƕ¿[ûå4eøµÐD ž¤…O ú8~Tj0´ˆþÀ"UƒŸS)ÃzPkÖ7Òìv³;ò‡¬:Æ–ã̈›‰AD2©­ÍR N ŠœN " : …Y8fž²Øn)Õ :µ?ü.»€–­¹oÖ¸h/ï”Ø1ñy˜Ov*tDÉ‘r˜ *®UGø A™„øè9 šÚx&c³3oõ¿¾SF_B¸—6"°"tVKÿV’)¿˜•û-¬A$8(RµŽ¡KdäÈÖý.Çk1s±O7ìÕñD©” Ÿ& TÅ5Šb,bñ7í¤Ã:b™ÿ‘ÿ‰¡1LÃh»® “2Ñ?2V¥¨ÿÙ4ËRŸ:JCá³¢8¶²/ï”Ø1ñy(bÝS *‘­",‰“ƒ+ÌJQO€@¨¨R ?~IÎ °í¯ÖþùM|}5ÓE”!ARTf9F  òàÜÍÇÿiô¨œ°&¹GîšM¹ú]ŽÖbçbž€âÔ'1Å POÊLáÍTéž?É1ÃV¢,m¨R‚‚ &©DŠªq(& PPú8A+s"*–ëjÅ=µ«å ¯(kòtË«­½TzµñYl«ô ~Þ´gÔ¯Ý/ï”Ø1ñtŠ\Ç9‰•ADýéLªñˆ'‰U)4›SgǦÿ[ûå4eÙþu!OQR1„ä'K$L(kQQTä'ïüUƒúæH¡É&–Fø·«N­>ãßMâ` 'þnÇk1s±OAŒV§öš*§Æ¿îÂŽˆ/ÇrŠ%æœÐ"¤äœ¥1Ž¢œLªéå“HŠŠ&ˆ Ìr¸K/ʉ*”Ô¡(Ž=‹]²ªóöû`ÙYõIî¥?¾S`ÇÅÄÂ;au;¼Ü¿;æqõâQCcÓ¸‚jããÀ@|w”6ßBÆÞ°2xøò(Bãë©,êLÅÑúßß)£$Û»Úóªƒwȱ±ýá*…Çç` ·×‰C%îúÀòï‚ÁO¦lxwOŽÎß3  £Ï &ž><±MÆ—jnfÌ£ÍÛÖ‡Ðìv³;åÑ'î; |xÀ©cÓÈX yw!;Àc»ÙLJE©.V·>ÂK¥0éØSƒËûå7°ìv³;ì?¾S`DzþùMì;¬ÅÎÅ{ï”Ø1쿾S{Çk1s±^Ãûå6 {/ï”ÞñÚÌ\ìW°þùMƒËûå7°ìv³;ì?¾S`DzþùMì;¬ÅÎÅ{ï”Ø1쿾S{Çk1s±^Ãûå6 {/ï”ÞñÚÌ\ìW°þùMƒËûå7°ìv³;ì?¾S1—ó§cÇ_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSG_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSG_rš:û”Ñ×ܦ޾å4u÷)£¯¹M}ÊhëîSC’ä¹3îNùã|ñ¾xß‹ûå4fõMÐ/›ºØ”¦VG«[yFÞÕS£;­½~}gá¤CÒv;Y‹ŠvŽDÛ)E”Nvn«30F‹ ¦›ª"Ï»s%$Ùl*¤þùMƒÁÁOÇæ È$X‰˜àGz鑱š§b¢ØTÛ+õ'Öûßß)£0?¶¤QX±üŠD#QøÚsTšmÃ軬ÅÎÅ;]±84’bK˜ÈÆ Y^aZcëx^w¯¢þùMƒiÓNè0C˜]E8J¡ R©E®ÍЖf]ª-jÌ’’©JýÏï”Ñ—'(\$T‡:…P§Ó×/Àúì̪BBÛmœ:K™o}îÇk1s±NðZõSH €ÀæþéŽ8Ö¬ú%õN©S«~ƒûå6 |]#Ë¹Ž —ßýUR,'ÁC ÊjBTùª«|â2Ö-©/1/6‡ÚþùMr*m0XÊ ºÄ¨–3f)1 8Z×µÉiϳîõ-Ð¥}ÎÇk1s±NùÁ6¼bÌsLQ"œ£óD„U4ô˜ˆ‚ñ_²%í»ÚÓ»Óûßß)°câð4ÁîƒHªþHñ‘W€-2R':€¦£¥Šà8Û|QíJ™R’¬Ó¾Ç÷Êh˱VÊ'!@‰¦˜œQ9ˆ—ˆŸò0¢'1Wì³zÑÆÚ¹O–™––ûŽÖbçbž5Çࢄ"딥PÊòN±&µñWQ¸&[V¼{r»+• ÜÅ[î|¦Á‹œu]²ê•P &t?§˜—$ËKÌÒc‘DL"²$µr.û³möÍŦ9v÷ÖþùMx$-Æ*“0‰Ä¤7(ânlʇú,Táû$¡?!¨¿©9ö;¬ÅÎÅ<¢ Õ”L™€ªKö2ÒrØu¨'ÄÇþIšH²a?kÝöåçNû_ß)°câèuØrà„€Às~ÊDæ>©E1äP¿ÍM%=¾åÞö¢ö&PU+u˜t\¹Öè>‡÷Êh˰TnMPœTNeÎÌ ±Óþ¡¹`}B¤³<¢“Ø·•bøm‘o.RýnÇk1s±O?• A(À‰Ì*i˜ê@sNcB\J ˜Cu¥g\-nIî¸Q4‰õ¿¾S`ÇÅÖP%ÜBŽ­U%GX€”9B‘ˆž‘Ö^TÌ‚€ŸRáJŸ^‹Q§eí[þ%¾Èû¦æ®JÍJÏKj.©+6bÞÉÞ²Õ¯Š³‚µ-À‡÷ÊhËñ)+Ɉš5'Å?-#¡øâ r€9§Q81ãûD¥ä¦%XÂ{!ös(Óíë½k9s_K±ÚÌ\ìSÉÚÁq€åB8‘¨@0¤²…P°RQyfPV¢ž\òÕ ƒ½,{Ý L”û/ê|¦Á‹¨æNë@ ±T9u¨šcm2¡«”aS’&&$È:¸Éÿq/ö¦‰TRߺ. UI޽L®¸5Úæ%W­Õës4¬œ¿é”j£ÿvß„¶W8r’­¾GÝ:Ó¹tP.¼žŒÁO]ÃÇHH*c 1¼Y ¬R9‘‚”°]"SŠ`ux€ Q++~£2ÿ8Kޕܬºë†û(êÔȾò’☯£“MhÐ7{Dü»AÓ³/ d.;xÔ‰J6~Qì­Òh­^.v)ãÓÒÎbF[Q–"eRi1‚J"cGòL})Ë‘1PÂ%à™ˆ!j¿÷¥«gÓòöz^IlµºFNS-hÿ¦.<²´$de2ªR•Õð)´·Õ§«ÎÝÏ-ƒdÌÎ>í4‚û’T‡÷Êlø¹@ÿ«ùÒ²èh1L¹Jr0Gö•˜*iâU!d¸ˆ˜ÀDú@ÚõFÓ®\˜C.S0N™DÑ/ûÏ WSœI˜±©ÝŒ¿PXÓ*ð]UAR,T€bX¤\ÿ²héÆà¡ `6¥þ³‘@9ȺDH*œåJ"HH¼²"ŸòÒsŠhé¢EV‰*Œéd—ž©¯'uÝWEÇHÅÎÅ=Ü:L4ˆA¤Óæõò£IyÈ£¨¢s(*~äQ!2 K”¢$0"BL£)USPÅI9nV“–Ö™5 Mª¦RÌßµ­\­ÖÝŒøQ´nÖšécf0 Cd#XÚ:^Úꩳ‹PÙôµµâ-{l0 ch Kdf½µ4­m Ö¶†lQ*kh¨ dÛ tɏޗ¶º“k›DÀ­‹lRƒdÛ„`Ú€Et§ÝŠ•˜4€kØH%n7NÈ ,h#´ºÔâä'Xø?1Ë|‚îöÒ6†­p¨Ø®zÃk›X>Àð',˜.ÉB“ÝÙ&ðv/­súîJaÈ×ýJÇ YOûÌÏÚ"fcê>-òyC¶7•w WöÎmö©6õ…Ákʼ×D–¡2BLûˆy@Gô,™•Y&U–7‡LÂÿèC8’ãK‚ˆÔŠ Hf[ã¹å>k$NÝà"ªox²jñ6% @1vPBFÄ`{hc2úÖ*ŸUšî®Ø³­ê5[€X¦hÁÑ«05—˜ÌÁDÿg áù¿ ¡%ŒJšŒq‚š$Ø1ÌY´T…ñ;ŸZÌç™™/¦|}å!Œ¯’ qÙö^(^>”ì ì 8s©T[‰+ý½fBá– ¥=nYÏé¹ÂW¡w´ÇýWöS.i› Õ2ØÔ"'iŽ?¹ˆ²¿Ò±ž™nÚÐX v  Z™¾¨„«+vJVúö"VÛC k ‰CëI"ÇP$Ðk²pœrl¡%+°(²JI=ÞÄ©±ÙXÖ˜úUަ(Vã•×vó&vN±Ø3QÏ‚öœ¦lV­*â†&ñBÑ2ú¦#ê¦ ƾ%r+®.CµkÓa­mž…Á@òÆ8¶]g6`)=ŠMº–"O±¹ÍIaU+ 0{–²ÉÞÉ\™Óïóš–ºž;ªé e´2+@êþ˜ faø¹$öÜ ¿çø¶Ã*ùÎÂJª^X—Éò£d @H¦" …0 ÿ3ØC¨‘p3êˆ"åYÊÊCÝšˆŠö ‰AÛ{ Ú}pÐa¨ÌÛY-’`@©Œ_±jÄ$ëÔ÷%n]Y7±µæÈ:¼Bˆ¨æV aA[ƒ¬úzë ÖÍhzíÙì1kj›¡”¬¢ÔVØ ð)¯XAp ØTÎ%¸zv ™bŽ:Ùd!,»¬&W@%ÅÓc¾•ƒ ˜¥ê§w¦«RØQ­OÔ¼‡á¼S—-£¶ãs «öú²d ®ªv!b¤‰ÚDÌCT@¡gW Y¿¼ZÕ÷U‡cê6A–’c$+—µI{+íÚ+h¬l0Å©VkØ 9þo„ì2c+DfqâM»mCH?jYÊd¶µ„då@ðI–o?Eí®ÀÌt-÷ÀI–ùª–“ù²“D®ËC„•¸=£ 2¯Â‚mc«nÕÀ²Ê X”ÛêR…ƒ+i]†Y4³véÙ/¯ \i ïNÁY?&øäqô,`1˜ÊÖ± ew×¢¤"ÆJ·3ýSeM…W4µr/26*[X}\£sò­z³ª<`JTõ’ÏS€¸(û‰ä%ÁGÞ'ûX4\V2ÆSMÌ~3ÜTz®7V¤(`÷§b¤¦4Tþ+°º•å±^i‘cm¥íjDN!ÚÕcÚ›ÍƼî:ÏBˆqò±ìT,¨Œ¾Ø]’)…€‘(=Xx­ƒ)õeö*ö$n%Woéµ\&ü÷5Û°ìÊ$PEø-M†Œ yJZÏÎ'ªÎA¿¦äkUpb’·8›FTº±Žoâ¨M‹}CÅ1tI&àZ†bbf&&&'‰‰ûLL˜˜ÿiæø/¶(g9wUoÔñ{BÅïo: ×ghu1fͲ±-U´N¼óõë9šÑ¯]¥dë¬â¹Þ6•ÈMS bCÒ‘M[ L1€åÀÙ™Ú~¬ti]€ÓXqg×#ï±-µ!®<¶sTÈÊIRV$ tšœèúï]zÕ˜ã‡KÀ "©dSëdçH~ö˜&üh¬ÂÙ:¦2"%˜ÇRÊEdjÔÉ"¦DòulÍC†2ïhvÒj-¡é;ëY QŒª ð†ÈÿTñUW¿†³¿M¤+°'Žt&¤ôvwá6*ÅÒ–D2@I°RgBœvÛ Å*Õ/Šî0[h‡w¶–[„Y¬ªÝÐR …ªÑµƒ$κ‚ñ„š“,tn«9&Õ2{”øåN­SoPlÒ¦¦ÄAu¤ÌElíú)=E®6¹EšÄ›~•c°º«j_-]¸²«ö1Ó°V3\¹¬.´¬ºRžúöd…í7ŧO® $’Ïúx7Ó|*TS-&“+f[êÚ2íc w •Šé®©s¢R.Ä´$™ÜÓ± rËç’oéþ8,d2îN{¯b쑊 ØNõÕ[§IV)û­c çø»_ã¼ ±}‹Û6†ª>TûFßÅàÅO ‚™Ü ü}£ž>—^F½U2)Õ²=Mü¡‹É܆6-Xî]… W}J‰j$™^ËõOÝ¡ÖI^´I†7kcºÀ¹ømB¥YºÃšö *Æò¥gP”ìõª!k…³×å“U©àoä/P,YQN‹(Õ•›Üà\´{Z 3ë’”I@Ì I–M‘+´éU›*÷*´ŠÄ(kt¾á [Ìì³™úˆ õ›T1æw&¤ôdz(­Y,>¥¡æ±\{Í›1ÒfCÆBÄuîï7½‰›O~½Ó=C0úò™] ë_­" ›sÚW1ùŒ[âñ²ÜFVVÅ5âÓ–ªÖ­œ…µYS$"¶‹ñ(þo‚û¿OÍÂÚÆÝ ñAÀ}î®Ym@¸&Ç>³û ¹ ‰Õ›“QUì_{‰ª «Ö‹lû½E¶nÍ5¨Õ’}ŸÛîR¹hØÓ—!mUœŽºþ’ä)UsŸtXn—U°ƒ[Tqb%kS‚mž óc U rÔY¬L{m¼ Ê¡¥ =i9M‚´Å‘¸Ë’X“U¢]£µeEÆ,:E,©K}~´9tö1[ŒE‹S <²J#…›>›UšÖh¥Àê¥ú²Ý«À¹Kô«³€}q¸f¹'{ ‰sKåO¢¼>ø?±W"«EM‹Åc†k¾±¤íÃUs5*ìLô„¬Ñn¼­k! "‘!(‘!!žHgïö˜Ÿ¼OÚà„¶Ë“],u†­)\qmiÀ,"fb9#(¼Ä}þóô`K3YƦ² 1Ÿò$3©Dÿø˜ãù1&ÏÑ€Ô¹x†&ƒí­QëV„º;ÿbàYN¶=ª©Ikzâɯr(e™²¡=%ê”Üæ5úlZ1mAk$”ç©à²q/¥ªÚ=c^ÝeôPo°nöþÁåÏëõá“å%,®VfOP3~¥’«ÁªÌXöJ81é†'G*½‰±i­lX²]è· ozM©³)Cë®k™õ²ñX¯¸à{¬À¨´Pž@ Úï*ÉXÄf›O[Ó`+Ú:ëM‚²6'®KMgçÎKÇ![Ö²-ï“fŒ`ºPKP!]Ëi )bË:&;M…ÖIë”ÏaŒªC¬È5ŸæøIªô³õÞùBØc#Ö³›w¬P!]ãø¦W5›÷Kí<*½sN¤…1¶EBi”¶a3}Sd}E.¿sýnIUuIÄ{¡ YÖ6›ë´P6^¿I)R ®ŸY¾ºø PÙs%ÐW]Œý©÷Šf@Jó%/­øEë¥nm«,ØE•ÉzÆ£ƒ+®Áa‰…ªå¿ ‡²¨õÕf†Ãì1pJåAUzzû0!h¬¾öI“/XÈ%ȪÉHD2u&`FIbý=tº×jë,º‹p&Ô2«’©°Q¬,)¼ ¤w@¥¼1Ö›6zX¬1 ñÌÊ­×v55£ Ìc춘%WXªdv&vN>Á¥b¶Zkͦb«Y°S\EžKñÖ¯I~:õݸyK*±'h¦gécjØba\S jÐh´N ³mD¦ ±è®iøëÊlfmaR¹Ú¦Úã`æõU¤+[u|”ö4]úi¦!…o§Dö)/ë°Õ¤¯â¿ˆ,ûT.㜰9Yl5*hÂÑÅ«æj¼Ø¬m¿`A†¥ãȉ¤2P2LûÛÁÛ¯,‹®2ÛÌ­Tr , ä†TÉEª¨•5Ô,pÁU“x-o2‚ãþO0ñ‘ÀâÒß$Â&êñ^³íSD£Ôˆ:hälªXo†7vè‡q ™c Çèü³ÄD:‹Ê¼|¢ÓU³xñäÅ"‘¹fa«PƒÓÌë ’€›Â5ù§9…ËUÀ†+'K"cbõ›­Ú÷X¶<ì$IJÔOY•eºvê.F 8þoÒÆy®îFÊ©ÒQÜÙyH)Bü}´ADÄlÁ´¿ùõ@ùo‰WÓÿŠðÌoe´0Ã'‹ÿ¾²_rLí•HTB®mYSf T+’g—x¹O´~Sãræ&ÕÖhØØ\îÃ{@ÛJ8à’©PôóÒÃ5 _å1Bå>eãdÙw“xó° vg1ˆT×|‰2§ŒlDž.°ãØW+õ¾ô>câìö<ŸÇn8¦Ûó5mZ*¦+’¼\(Ràܹ)‘ƒ˜ˆþ,ðY2µúçJì©ptã%VkƒªRw¶° Ë(tj™ä‚d—ò ¿©u9l5Ì^{6ü»íÛÜË-B½Ih«Bâe;U„ ›2Á—­ó!»U1ü¿g1xÊùš¹l¦>•knC…7­&¯)¨¬Ö¸¹sF ‰rB§ ²ÓndüׯíõÙ'À-³rœ[ÌPrĈ(ͱ>°²ÊWbRÕ$kÔ²¹{,?øÃƾÏâO‹ ±rAUsUzTd¦ ŸÝˆ4 ‡ ÷60‘32å~£Ìá: ͇*0ÖT3ìÇ"³ßeÉC³ó¯Šòãò\‹?¤N6®N‘’8zYeåc´ê@0ê9ipÁJÁŸ‹&Wä~6WäÞ-X«d•Úl¬ààx[ÚEe,fÅ,ûí$L ¯¯*¯à^o_öy~3gVì5Åz›,܇“ °bûÂÈ´ÖW@¬„C‰ X ë¬®ÿ â“n„ù|ÖO*–d3~¥‹ðu-Óöñh÷½§o|ocèà ¨-õŸ“¾ =R'õe³=ȱ¦¿½Xå‰=€Oð9™×m ñŽ J>üsÿèŸüžÇ\V5øë¹B§VÎ]1ìØx¼&xèþ«¥•ÄìîA$R¡Üò‰òÕn¼¼i‘ljh›knAc^:Å—ö"ˆu4ŬRÄ{—ªæÆÃ?ò .9YL®<èÕ}¨¨Ÿa‰±’£tVß¼‘ ³âÄNÃ!¾ÜDÿgݵü‡Èqø‹vVµŸhßa-rÕV‹‡+˜)L}ÿ÷ç‰ÿGðÐTµjnåÉ”%6[ôV³°éR›=6žþª«zÛ .§¹°÷ÄÊ$JïŒù7{–« 36в*ˆÚN[×׬ IImÄDs?V±Ù @†Ý£r¢­Cf«-Uup³ >·J  "èS?õÉuŸâ\OÛû_ü}CÍ1ÙS±jÝKÁmüc„Òð²êαµÙbXÆDBgöRj6Gã;ŽgâVÐÔã"öc8»ÈAõ2ºê9E6……F¬-Žx‚¥Ne´ÏôùÙ LXÄå*Ùgu q8ÆÕp-ÅXÚ«¦hÉKàn“:Ž gíàúƒ K]C±˜7;ñØÒÔ©)‹JÐuoæëG$©JÍãû®H(¤¦ÃQê ÉZ~'ì˜Ú®‹kÏ#s´ãxâ‚Ö±¼–9JT³«ÅWµ[P«z½® LÌ/²¼°†!1,„¡5ÝaÂ*yªÑD2ÀƒæU?/øâÛ]¹Êž2„Ýmüp¿%Œ¾R˜C©t¦¡aà5îs„\OA;«u×cͽ€3"Q"C33LL}¦&'ïö˜ŸñýŠV¦ù÷­Åª‰—D˺+ñ¹÷Lùÿ<ô‰‰âa§+­ÈsÞi%d–…*óÜí¥c„«¸úŠ;Ýp˺ÏÜ‚!°.…˜ÊXH­Bo ¢¢©-Lÿ®õ%hã÷×16%ÎP¹ìßëæÌæ_!}h‹:“zÎF®Õm~Ʋ·.`ì2¿Q¶V³rµL˜Ú«b—S¶“¯f» OKcS[x!(ÿÞ?þOù·ö~œ“k:¸"Ç€®Ån¯X×JÕÄ5½bHå{ÑÃiVÿqZtæšõ’TBÿ§¨ê•©o»ÚòîæÜý%ÍZDÖD~ví{ “_°˜B«šáȰVIqÇMw7¶C°YfP‹!HÒaÕTVWi©Nͧ#÷k2Âl̵îd´%ýOà ¯”VR÷/¹nïýdû ¯Q2«^­Ö,*ÊFBCf—ÉžWÈðv3¥·’V¦ëæôWM[¦¯®iÙBŒûeIÅEu.Ìè$²bŤv¨^¢Di[¦bÂQ ªî®Bш’\Ã@f bbH'òˆ˜™¿ö> “FhÖɆ/7‹4¥s=æÎ²‚”¯i žžÈsI-”#vLÇÚ"㢽‘–$Ý«^p~]¢òc)>;èöLÑ©Xš‡³‰1@é E¥6Ñ&\švÞÊ)1+he¢¬vmwwŒ×V¢´êÜ7?޹ZÞ>«k­n–×oºŽÚ 1¡©žà”X«-glM·û d:ü¯â̶Êc|’›i2óYF›ØtEGj±"¸. qÁ¡P:‘gÆ}ßÒ|zÒø«5ŠØšX®–Ód1KFE¡3hlT²É(D(K}f"ê¢BD×e$íûæl+ §LÄÞF«Œ¡$ÉH~ã¦Áv}§¾#¢¹¯í§M >©Ç$d&JÁ@ˆi!ª0[»boÞE'_¨‚ÝVZmÄR+ÕQ ƒsZ o¾‡H°à ¦½hô ë · Ã÷)6·±eJ'e¦¢†å,T¹_’¦ºa¸uª` ëÎþ5ÅåÕu˜ e nZ.ضM Ò´F4°£S6÷;Z Õº’Ai“vÄÖ÷¬<‡Åóž+iTó´J‹ì m"%©h¶¹Lˆ´I dG23ø¬ü€y§ãíÖ©Fó–#W%f™ÃdȨއ앰œø°µvGæ­Ãòþ_Šöþ>ñí°ý‹HXçú+?ú,!â>ÿr8Û˜˜ç멽,;íâðc’‡Œ¶ºžý$Øe`=]e$2+é«UE]ìA#÷lr»XI¾µz¡ ²S\}B­`ƒ©Ò(ÞÀ¢Òj•ê¦ë¯Ô_,°Û$Ò‡±b¦Û&v]Ôé¦ΰJÃn9rfõ%Rµ¨ âàÅŒZXïÆË;R5+fimîi°‡ÑxÊì8úÊxZ¢"]ç>4ß,Ä~Åê–³N“šâI^.£mžÒ°†E°B‰jÜÇ äÝ(`ðJÈb²X¦ÂrT¬ÒaviQ¶ÉQ’NcG°d{FÇØ¿Ÿà™dQÎHLŒGfñk—5ýSöÐ"jC—-•ËDúJˆú_A‡Xö.¹ ®V,¹5š„Ûicf%ý{ a©`â€dË‚pû %×)q Z`%Ú¨Í+¬ 9 Q%›¸À{02Ð#†µkØõ°È•Rª P‘ –%bàt5ÍKIgl&ó;â£<ïw®~˜¾ú¯Jìµ<ì…H[mdH±0Ú’–ôõ½ÂËnŠ«öè2iòŸ2Ø[ybŃò˜Œ]zvÛt–5Ø ½&:ˆ¿ªàx.ê}©!Ÿ´Á‹ØÂXPcðh±ÎštØ…z\ÇÂqаö¾AžÃÉr"»"«MHï$±(!꺴ôœÀUU†L…nØŠÇf-ƒL&¼ÏiÄØ6‹‚"=„’èl.8T›1é²åô×´dw¹’ä\,°«?·ÙêÄÇ_ùýÎlu3ª9Ö ¹Êk°‹«\¬)„4Ò¶¤göM€dÇ3tme¡ÿW_¢ ‡V ‰«±%ÜwXl2,à“\ÎÄ1rO‚õQù!ç:mÄ‘ø¶É ›ò¸°|Õ?^.”Û€Ü] ‰£´Ö` §ƒwQAv,E3>Iðú²ZÜÀÍ 0 YJ©Ì[ê³5sÛN6û!-êá*šê¬*­'¹’>!Îcoz%ž¤ŒVZV]ñ U‚®§¢áS¯ZÄ™Iµêµl©ÚQ§ƒçœh•S½Ù]¥ÙÉ =õHV:1°µÏ|È €€)Ð@tOíÅOœ±‰JÓc~ÀvË^1q ‡ðo4AŸY»jç(h±lKb,>Ô¸ß?^[ò`ù> ˜²Ç±V^ÚαuŒ†ƒ®Aù8ŠLÌõ0êäg† êø–b¾Èq™{Js«Ñq5Н¤8âTÀÔ$ÈF&d£™’ûG3ÏÚOæO(³ŽÏ8lß®ò]Y‘úöDa¿¨C!ê0²¡/ÈMÅ 9Òç/6µ…‰òYÙsA ôZ …~èöÝ0; 8gd½NÒ:ºÛÂà~“ów‹Š@™‡„X‰³ëP|8îIv9•Û’†VýˆYˆ™IIiów‹²_¦gÐÕSR¹RñÌÞØ·°Æ6çiA(IQÆ„#Dðs«>ið×.Ì3ä[7º}lq®7=¡ÐE•‚[[ØÕ¢ŸIê0Ïœ¼HåÃúg”BZÁ9\2¨ÞÇt¸@rR !µ~an™9’Ûè>qñh‡è™¹ªiÄV 7*õÈV«f) €QégX3P¹q Pý˜5>mñ”ãsÓ!°ÿÓ ÙÒÔ9wy6ßìû&k®¸ÁÀr£6 Y%?6øÄ.ºƒ ›Ò Yf7¦¸ÜòJ¶]@6‰D0¤.b IäÎÑg=¥5øy>Ì.ykBÈž5Æ€÷\ƒ¯hÝ…*e…ö\pläx%}+åï:cVÖ,³(yZ}TãͶ,Ú¤UlÙ‚}½TÖΓº–¶ˆÉjèÕaõò”àüšÎ+øcGQêšöºÿyö Ç* Ì5j_c3˜±ÆÉ=¸úøãä*~ ±Š~A·I¦"áU$ ÌH㘙ßXûDÆÜDñõ6ᣬãDz0ÔäÝmdÒé6Ãèñ<@©šÉÎý¬RÍ‘1ö„|ë‹áž?t× Q X¶™¦!ÉÍžØgïX3öeÐQÊÒr©…paó¶%HZ“ãÙã«´¢ò$ÅŽò 6-² eV£Û=°Li~øØŸœ± Þã×ä\´ökn—ÔÄëÒ¢«)éüP¸Y‡•çxk6±ó—Ž8?…oÁÉ,†Yv³¢"8.eŠ"Ж1©Ç’t. >sìÖcãÙCЮ*²VÇIÖ9R—½} !_uòC"17bE+DxõÉ„Úù´ˆ¶¾M”Óp.:[D2ÃÖO’Q|߆öf×ðÍ›%ÐÕ@_µVÈ™Ïâ’iBgªøQÉIœÇç¹}À«|Óƒ%Øñì“URÆõY`’È;$ µŠ@,(thÛbiÇÝß·ÿ;ñcQвÛ$3Õa¶k‡®}¬áŠ/Xk*ÊÕi°0V Š ¬KæŒO{ž2ÏͶúÔv‚AUlTXâ#ñ]˜›Î6‰HÄÞ3ªÞÉ[·J¹U¬öA©!&¿À`ö•ˆÉ2¹æv䤋’ŸþáÿÿÄ=!"12A #3BQ$0RaqCr4b‘±D`p€ÑðÿÚ?ÿÉòüI,s¼]ˆ¤Œ–få@R@Ù Pä‡ "îúý¦Ÿî‘þn;„²È© uh-KVåAó×í4çÆ’;Æ6(]û‹˜ðáAÃÈ¢v¬™±ª?´ÓYýÖ÷÷Hb¤Y|TæK*ÑØŽ_^‡Äº“ÿƒŽò¡nÂÒâãîŸÔPÛ&ÙôVRï‰#1âà ‘ï~ íõûz‰ãÓBóÊHŽ:Ègv 6þäuþy¢È/ßrćíŽÞ,È2̵\òj²Y¨×CÔ4D1ù¨@BCdá+>êÿ¯ÿG¡«Ò²æ5ãJyHªF~̃T¶àØ"¬•ÑÆHÊâȵ`ÂÔÂÇÔAB?ÁÔú†›I,PÌÅZ`JÒÚ…)f?Ad©þVЙš0L±–JŽD VI †;þPW‹rµ#®ô4»Ö‹7µA¿'è<Ÿ§ñ5{ów-êY‰%­,¶DU¶F¼«!ò©²€­E_’Yb2S2๰µ,€Ó\,löǦC¸bT[-lb´sU¬…ƒ¾AËýIbÔ®/6º™wÝý¬¶ªÊ*¡2`Äeà(ÝÕw•AhäM©³Öa*¤ƒkþÁž¾bdÕîìFïŽ[˜À>ЧÂýo¿ÛõÅéš„aaŒù;|ÌVvú'ú_=fKG+![öól’™„j,‰ ì§Ï@Ùà‰aäíØ ¾*°*Ü7$àKìä÷‹Òªåú¢P*$4µ*2[¶äïfÚ‰ÐÔH”I“µ’Ç‹#'’ã*€nNãµ)pà JXÒ|E:š–¥B­=gVAc"Ùf!òXŒ±Üõ¦õm¥Ò%|eqa8«2‡ö’¤”­‹2> oâ_Å„ÛßËË´hÆCʶ’€‹ºŽ=Ù_.Å"Ù¤+Üe ÁƒÞH"…JíȲzIŸc²™£²Är^Ý aBë±æñjͽÕ{RÊš©¦tÔÊÒe…èp¶CSÄ7ì'¨åŽeÎ'Yß% ¶#ûƒä RÁç› $hå›¶y¨P^L‡Ňmë®-¡"ŠE©.Rr¬DT ¯æeÚÍP?ÁÔÛKª E»ŽñÅxGT™#—Æ­­âä+È1¥Ø–Hƒ$U—Ü®ÿˆRIaú°F$uôö¨y#†Nã„.J±¨½ÕÙwÝÀ$â [šŽlĶ.›¨ Qy“#,‹`Ø¥Ä Ç4bD`?l¦‹Ý(ÐÅBZ‘ð¶=Ýa®(6!A@25;>Wdçúù&þß­ßù^ª#ÛFT ºÞkÁ܃#¦ëµc¥Á1*ÌLE¹bÛ2-·´ô¢£L¨p4Ê {Öga„`d€¾Ù0u”ÍŒ¶îü(RIW°ëŠ“[ }r¯¨t#ˆ(ÛuåžKb=Ý1f #-õ VU¦Ú6'bËïZ M"©AÅ@ËnJKÛF=¬s*‘÷ ðØo‹6Å>õ®6ukná¹ uUŒš ‹«‚a†ä‚ÁSÏ€86#¡„jm†I‚µ(ñDâÔA@ˆÊÑ‚rÈÌQí”ɵ¨°XÚ¾ t&§Í$e*ã°VÔŽK¸î0ÝXJ‘GŽ$â£ÐýBS¨Ô.§X¯ A iæ9+† K˜FΑ²«ÔAƒ`îðGê?Á˜"³±¥PYèY?ü7X?Ðý‰ÀùŠc‰3ʨ-¹¾IÇ”e× vfð€¤Áˆ³ï¿q{DÈ@äªÊ[róƒç¡Jqe¯j_pŠö’è„’+"é“/nT֬銠ţÉq`¬™2±È Ä’qŠn-ª#ÃìNΡE£2@å“ 7ó}|+—sY–ßw ãBÆ%½Ì lH»'õúý¿[éz­¯hȆë4e}»ì@þþ×ÕÝû-±,«l’û§LI †ãá·é”Ò S“F¯*±¦¨ÊlŠ«¢¼@Æò&Ê“ã1Jà„äÙ1äÊSÛYâbئ#plt\r*É—á±L³â¸Y(äøP  k9w² Œ#VeÂìU±«²Öo(ø¶*Qä´Ö¡è›! fhuéåN‡HP‚>^-Ö«,^Ðåyl Ý‹û_«w4¬«™{#\Å–_Í{æ÷êÚÝÃ{ˆT$†Éwí9’Ø®{f4IS·Lp¸È£;d{³l×6òÄ”QFã!ô¾èy"5'ò¿žuj¨€…d5˜`M-V6Qöãˆsr €¡‰».o:Ø‚:J÷)6ÊÎ2;‘õ!·;•¼Ø&%ÅŒ¶'~êǽ™PÙˆÉvTiy.rëOêZ½3Fë3?hL¨$,Ñ«HxiP1$"¨bÀQtQ¯æÒZ˜ã#-'ú«Šºƒ—Þ‹LAH¶RR³†õ} éÓRÎá$WÄvܱt!Z^ðcB<­©™m·QOò‰„±ÌºU0¤‰$mD³´ì}êM€L´úÐê=J=+’Cœ´±0Ô€¹ !ÁÛ Ã*_})%@¯ñÔú~´ê¦a£Ô´f| #åžÒ7°ÐZZ Ž`›,žEêYÂke¶ùyl0ظ¨±g¦k²Câ0äVŽƒ\M&²©ÁO º–ÖB1k‘xà SÕ‹ÔXm¡Õ«PË(uàë àÑ€c\ˆÆ×ݰ®†ƒ_v4:°2@Ùé¥$Â[.Úq$•o%È¿q®]|7¥ÔÀú£<2 ĉœo!KÇ/'•Û!úý¿YŠI½7S(ÒHDeQE³–6Øaÿï½ï÷ @aœ¿,Xc•ÈZã¦8UdOCA­‡Yˆhåÿ‡‘}«AT×ÞWüÍ‘ËÈäš/Q=ÛÐêÃ0ò4Ïf“RÅHÊÖuâÍŽ¿Ëµª0]¬-¶šfl—`üÆ&ÓîÀâyw'n¿Ëµ¢ñÑk(î};¢fôB–,l²íäy®¾CÔè'ËjíÔ†Ny‚rÈDq*SÇvðFýzLzÙ#h5Ï¥Ó.cŽ€‚W—¸YåµDr)v8•Þ•¯í|C¦šgÓ¼K#¢²å3ð‘‚›êsM¦Ü#Ù›ïœw* 7àî:]»î•äs §› c²ñ%hXe“?×£éþ¢Hô:·½òd–0´îö$W*ª6G¥ë2Ähõ;}ãLðÊ2>Ö¡q`:–µú‘㣣õ èµÎY•…G u?¨8Ò2ŠÞ¾•FÉëBÞ©é2Ošt—¶ª¢)GˆPµŒU‚†kÜàœƒÏÎÑËò¦†§i»‹I˜Lݬ¢íË-éWHb*-ˆé5 ‹%þWÃzÜYþÿÛÿb´3FÓ,ÑÁfGHïhKï-kOk…] ‰ÛEëеš1Åaš!–k&M'Ì_µT• ØåEÂDùÜxþ®’=+TTY:åþ´—ëÒŽÛeU,¡ˆeÆ%\jD䨋ö¬cŠxœêbÔöñA»ñr°ªå6?†whŽ1–¦GY"%Ô+bñ«H¹B…“躙5Zwši³–Y íl;!¥*PdîÀ–›áÌHÕOÇ»z‰Kv”Ò¾)H vë"q¦ U}U²ÆòÒ‘.GïB6N¨à(Œ3dM%i›fn“0ªf£b¹5†îî«b בÊÿ–€èo¶*X(8æÜÁ¼†¶¡ì¤“NFó×¥úÚÊ˧dÓÅ qlÉ2…†8Ÿ¼ÍØÄ*BÃɆ* AX#pAðAý>߯‹ôXÛýw‹ïÅ_¯ýºe¬¨ú"`´ql‹ƒL/`¹¨Æè‹tÉÜ#¸¶fƒ3„En.”ûUG°û7%·Û3¹(±Ä®8c~7²þy+#o|G¢ú“èõ)§i+Fò,AY™Ñ3ȤˆÍXäÄw"››£ˆ ,R‹ŽD•£«l|$ì_à|O_1¦ltÓ†cX¬_º±—& zûµÉ 1"ž%;ä P‘qÚÔsS#ÑÉGÕº²¬‡Še“äÒF¢F"‚)„JÄØäÛ–Üu¥ÕÍ¥–7ŽWV!Vã)1‘x¹;†²Q‘ñ÷k‹ kÐúä„ošÃG"È#Q,Š™ ™9Xúƒ~Ö¬íüÆ­·2æ#!ÈH´KD§†R ²}ÄUõ—Ü«f²5pbdWw&¬ˆð¸Šèž>榋ÎR—t› €ÈxÐ`À•Äš_ ©§ÈpŠžXžVÔ ;LqÀ¯sÙË¢æÀȤWÅ»¡H ¶÷fÕ|lï×¥úÌÚsÕM,Ðv’0¦;`ÞUƒÃ¥%JÈĵ-\IÒktÚäi4²÷U[âË‹ ê˜ú‹¡éeG’X”’ðáܰ¸¹-1ZÇò¯ Gìúå•jìÐÅ7ȧú©ù…‘ÿOéÕ®@GvÌÌrRÙöÀ9¨ÀÙÉÈs8tŠîŠM#»›N|ó@rPXšRѳày-õAiU‚ ä±í7,RH2¡e˜*¢š Y¬“Ôf¨ ì_p¾ÛU@¸q6 _ÔßLÖ®‚pÌ0ŠC§I$UPÂ=¦!XvË5“´×K>视q”2$€UâA«ÃÊ’ Ó~ßÅÝÓ^÷  )U9µýÚî,ýæ&®®²ÑÈظ É œ9Œ‹Z íš0Š‹¿ è/C Rw-í¶‹’+,…(&†øš¥'n#y‹bx±ÄÖJªÀ0CÚ™ß@ã"±Eo ÀÆiÚÃe@ñÊÕJÆ¥­±³LF‡Ö`ÔÇx¬3ÎòF±ƒ-»qìÿl˜°?Ò‰þ¥Ë©bB¯rEbqe ”¶+ŠØÅA2¨fÇ Ì9F[!»”_a0À6OíĤý(ôËžT%dS“ ¨ËxÒ2oYý§ ¼dênˆQ•xP„-R”O­†ð½­—™Î%I³!Ä1¯Ü(¦¤Sã \=’ƒ/µV²"Ã8 F–6Ù”o^tzíVŒH°LW1²åÖ5÷œó–Ëb¨’Z?ˆUÝÔƒ>îÓ ª *(\ eɉ̾OT:oˆ4³GÝùYx%½:îS2­qj—pÔ$¡¿õüK¦9|Â4kc¶È µ;•Q*.]³‹Óò*)z“×t– I,kÂQ ‡º$@äI]Ú6±°ä YmÖ‡ÔtÚôÊ"U¿4RP‘lXØd2]˜]©Ö@>™ªÈÒâ„Õx!#• üyt;õa³4Tk—Œ1—ôýzø”>˜…kNVLEFâñæE&©O‘f‰¢ŒœàD‰Þpÿ”¡P!YË3ªR(Lv[#¢¹)R¾åă‹;&W*äÁ$PÈqq™ Ÿ P2\òM…ƵJ¼…Œ$·µ^¶>„9Ã7P-ˆ¡h2#pEÝIñÒ†8‘A7feb©Kywؾ,.´^³ ëµz\§’Èól„;*vÚC»oLÉ.›×}1ÌçÀ8ö¤Ë|?å«Ùßl[ùz«éåsù¤¬U÷Ë*kÜr,(ä€dƒvoÒê´ÏìÔBÔ• TH½¯!çõ¯_9¤í÷~kOÚµÎôx[l£,ªØø¿K4.J¤±;-d«"±\½¶±—Òüý?ÇQð亙ÚGÔ ä2 ‘I­€;‘XÕÊÙwØü3¨-|ä@¡³ŒL£ñ;‡kPnІ£Vl±ëöf~«Ž••›„–XZŽ{à1ö€µ^:? NV;Õ¡t,‡(ÙÝñ÷6 Cñõ¢Ã:Œq:Ô°¬¶üU³fÙ²ë.ß¡Sð¼ä‹ÖGBÇá°'$XÛp~ª¿FÇÊŒOìÄ»Vª5Ïá³9}\“\¿_¦À_Kð»®_½µ)ÉI¹%ˆ Û8~,l»øbbrù¨¬‚îØ·Î¼Þ"ÏwõÛn¿e¦§90½ž*à“alñÜқ߻~Ÿá™™‹&ª$8ÒýÛ6;(zæ3U‚® ˜…ëAè§E©÷ƒ"«ªF Ëà½ÑËúg­~õZI´ñ²«Ê {Ärz³ôè|;¬á÷ºUÂ&[\Ç6VC·j° ¡ýA@¢Æý†5á@ïé °î‚Õ|N1‚ ¬Yo{]ï¦øk\X‘>Ÿ‡ å\DuJ®°“O\¬6òz kF_}¥ei Q2ŠŒƒJLj£Ëê þÂÇÞ¢¥*m&Øß9AØV;AEG‘¸'l·³Ðøg^1=íJ*éÎØãölÞöÛ ·GáyüΛ2«·2‘½‚î—Û O•<ÐÉðÖµ¬ ´»ÿYWtÄÇ°Š½Ù—5{€6Q×ìÖ¶ÙŽ£MuI´‡a ‘ÀÉŽà“QÑû7êIZ),F9™xÇTÈOo#{'aýHé½\$Í51Á]¥$‰Æ;*7Ø’¾8îO^“¡Ôè’›™'’WVÍ *E—¶ðà([õë“'©öpb†°Ñ‡ ~<þ~Íj77- £¼TQÝóõ#ÆØ† tß N|j¢˜Á»„í‡!\T 1¯aa{ì~Ô3m\'ÍÓRñÄYâ„ß;(âWögP+\CÕÂMÕªòlòËÞls^Ô:_†uŠGïÑUj7_ìv>Aò=¤y[³ÑøcPA7²Çh äBÓŒ‰§°r#Ü+úõû5>E¾n?«ƒ`x…ÊE'“ Ú±üy|3¨À'΢ ”ÜHéCó7ä<¥=?Ú“Eup‚›ðÞ¨¬+‹*wôÄ~]ÿf§.ë'æPŒs»1'Ú&Eü€ÐÜ_CáÍF*§Z6T²Û:>FOîSîëëî;õ§GŠ㑃ºŠ,.Žæ¼’|Pÿ¶ßú‰ÿÄW !"1#27AQ¦æ@B†‡§¶·Õ$03RaqvÆb %&4Cr‘56S‚¡'µDFcðfƒ’±ÑÿÚ?ß*êíò¨Â+pŠŒ*®²²¯ “xj±Š­á“𢦦¢lg”T pç–i¥z©*¤ªgvFBdó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶Ü®Í>4xSã‡ÅÏö×;—ƒ¾0ofÿ‡x^¯½÷NéÞÿãé¸üN‰ËÆo:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»måÞ_ôß¾.îþ3Ž÷/ŠÛ¾x'¨¯î½ããEGwïß…ÆàMÂÍŸ…&\‡ß_žðׄÿÙ¿ü#ݼŒbOügÆ*7¸ñÿábáñx\ù8çGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mÙ.íx{ã~Þ ÃÇ{ï‚üÂï;æô×»øGÏ“Áœ^7sq²p—‡ûQúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùd8^ìQC[AЦú4¸tûÍ> I¼5t¸òÉGЬx>$´ð`°¬¦Vc®5u³='v¡àŠÉJIQ8ê¯4jÂââà°"àßùmÙ¯gØ9WÇ¿8¦ðKŒãx-BEŠA‚¥eX††§’¦–÷ãÀ¾AÊîýî†9ãÛÇ»?gñv…Uã•MŒãøvIQ]AŽáíˆK–«Fš¼P­K™!'ˆÙËíºØ…Wf.éïƒÓŒ3ÂñúMã©¡†º¨ ­Þ"‚C4` š¾ÿU#« rÙÁدÕÏâ.3òôÄp$ŠÑnÞ-QJÝù°Ö¦ÉG)ž¾´¦ªe©Ãi¸Õô‘‡z©¦Š—IÆïPîŽ'½ÓRVÔîþðÖœi±Y±ºY°,6¢*ph¸ûÙ««ᚌcôZˆP:7ŽBf¨âoçnVãümÄwN‹ «Þ*÷šƒv£…±šS]AK†¥M|Ø”ÒRÙžL”´ÊÂjUŠß Æ¥Âq\lB˜M6ÒÉEŠaóh妫§”+«$ˆÜ7ÊИçA’Eø{Kþ€ß/»¸ŽÛô›ï†ð|ƒ³?бö—j­‡WŽKƒšî=A»»SÂÃësáXíê¬lÃZXOƒññh(ßZL7–’žZÚ¯Z¨©jž%5ðUÉ VCüHc«4”ÝáS‹Ýá-ÃZ 'rqdÃ%¯Ç°ÊmáÆhêi†#„î»qäŪp†•fŒb²¡¥¤&6hÄòϤ…X`û—»ûå¼»åƒ×îî3]¾˜fòcRo,Û§=vð ¸@jª qz‰$¤l.I²ý$S…jvŽŸzp>Ì1\_pêqfâÆ0Ün’·yM4±Öáxvèaµ“D©hç‚Jì>ŠL-,òª¸ø;ú¹üEÆ~C½X-NûŒnÞ9…Ññ[‡zÄ0ʪJ~#ØäN,«¬r­Í¶Ý-ÒÞ=ÚݼÝH0<)éwãÁ{HÂë£À·z¸x>êÕϼ8Ö ð7f{³€öO‹Ã»T ‰Ëˆªâx–óâPÏ_XóÓÑáÕ‘…ŸŠ|Fhc–J¥’žŸƒ°ù7¨ãÍ_ümÝLbF©Ž dŽ|HPÖÔã8µ]\ÁiÍ]CÔL¦n$²p•­ƒ{<Â÷7}†ðSÔUö©º;Õ »µtb¢¦ªº}Ф­ïõóâhjZŒ;çYjf’yk23Gþ¯b¿W?ˆ¸Îݨý þîø*¨«wßvéªègš–²žLR˜KMSNòG<.{¤±IÆñžepŒÌ Ý·ïvW%±jQ”3„®üssZEƲˆ}¯ñûu¼ –\^•Ÿ1ÍkF®\ŽCÍ—/My–æûù»<·,|)†¤jÙ¬.G ½ß—%ó-î»ýºç•šÞ¦ÍdëËŸ7ò»|Ðv,wóv2®KŸ Ódª‹6¯¯: ´fë Vm¦þn¹ÕƘ½)Ë“®~ÌgʲkÃ-c¶a¿»¯l!¾-J¶TëpÎ ÏÌO.Oùa¶¹ßÍÚö”ZSÍû¾Pµúú:™¾>•ZøÅ±n!ÆKåñMwòâ»<9‡Ò¡Í`d©ži.mÃV2pWC²º0e`YH*Êu ¤hA‚4?¬ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîïƒ{âŽ%h†òc™™Ü—cáJ¢ÝlO^¬nMùºI´lRIY¸­‚<‘‚ Ö>•ÑØŸà-¢É ˆ9]î2‚ Ì-å·½ÖöÔÇA¿üÎwŠ59r“%ïåžË¡¶l£(ÚV£E†2‚5±òPå7µ¹Žštm­Ä„âT„œíÄ i¯nc­²æèÌ4Ú¥ B¬Ù²„׈3177Ð)%z-®Ki—`a¦Ì¨¶‘K u†¤Û­´Ôt#ib \³jÄUÝ…Õ‰·Î¸ÎOñi´Ñx”,cSbìs„,šÓ]CÖÞš†;eb¯—’÷Ê ›˜–·[‹nFÒ²6åî³#NCLÊp:­3 R5 \þ³±_«ŸÄ\gàݪMÚ¤Âf|j›š¶lR’®©¢O†¥/pîÕôѬ¿¤UÅd2ÄߣpÈ´ÛK ¸FèS9FE’ 3v‰œhöŸu3GåÆ8RÄIçŠQ¦Û¥[‹b1UàÑ7Æ<+Á©‘ëLµuѳHØ”´§ÂQ¥e<¸~#I†¬Ž±8–õ´nÑWnÖ5†á¤ð±N,Uu "YšŸ‰†ÃðÚ¬¤Q+dXe›Æ?6›jÜJŸ«ïÔÑNÐ`U8m|8dé ’SÄ­=]$QÔº»ÓÏÁ¦g^õÂfDhk1ÜSâÖ-yEf ôXÖ(iòÍ"E$U”89Ц9áXæ9ôí'KåYe†C|¨KTQCˆC&IŠc4ÍKPd?{Áè+éUÛ„äÀó-B.Vx•dŒ¶%†î¾?MŒUá*µi¢¬X„m#CŦªžž*Zøx‹•¦ š¦%ÍgX³ÔEOSO<´’j£†häziŠ,‚*„F- †7W VÈÊÖ±õý¥ÿ@o—ÝÜGmÆúM÷Ãx6Þmà¡‚:šÜÄñHgWzw©¥¤–X;ÊG,=2ʪÕ+ÑJÐ r#å;ðaØÎ #;ÖEGK‰Q+DÜ$ÃÏ¢KÃgZþ;Ê…Ñjã{0áv}Bpê ª8â8¾-B%Æi±%-4t°$õx2µ=*ÚœDIÅâ.NVé÷ë–—y`‚QˆÕ¦ˆ5%c%L«NëG?©¨û»ÖªRÓÑŠ®0§Æc…i0º-õÁe®®1%$ 4q¥²C’¢(¢2¹ 3Hµ쨱–` >èèÃŽðÕ:Å fi£53GâBøl5ÒH¼8è&¬Ž±ä)À^HÃ|‹±_«ŸÄ\gnÔ~„ÿw|ÎÜéÄÞ|q¥ÈGáÂ@´òAåô `Û,q· Î>~ Š6[ðõº+Prƒ¥®6ž:r&¹gcé:æ-ÐÖÀæÿ-„pž$³++ò29\¿àÓ†ºX ¥Ï.Z€K…A—Vên×%nu_B41ߣf €2‡çk6–þbÃhr$¥ÅãeÑͯbN],¹‡5¹t¾›?.n£9]$ÕHPêt'ÔnnNÅ‘ôã¼ì¶ÌÆþ/ж\¿ö¶·Û†ñ“3’<–Ý®âÄè.9†¼£OFÄånô£ÆhĆòXä[0"×˧/A¶à 3畺¡ø ¬™†C›ˆ È{ù@’C^ÿ¬ìWêçñø73W¿‚±²&Eý&‡šîÞ›s®¦à+F]ÀfF¥@ñ²%ìÀ‹‚×ÊUåÙ³ 9Ÿ¨R—V¶U@ÚÆÝ.äÞòzvdcÊtUT`QD™9®l ̶'ªå¶Éš+Ô$>43”AµuhÍ­˜h¶¿[§C¶bâvhcá‹e½Â–əΣ('5ÅÀ¸ÙLfŒ6v%Õ±+äù¶¹ŸKç$úñI÷k|$bTéO]%GA…$Yc§†µájêBeH™ê(¥‡—†Í’é´øžíâï†WÖÃ,•1%%rÔÀÄUžŸŽª’FGQ'zhŒêÙ­"™¥Îi÷‡w“yñÈ*#Ä)êàÀ¡¨£Ê¹f®Ž JØûÚÉÄÌhè¨é1ª#æ‘ðõÃqº*lf¶ϻՕ1ÊÁPˆzdŠN|áêé-/fLꬂ?Öv—ý¾_wq·é7ß àÛ~óFÒßvqDUYEd’’³E •’vB<`ŒÇó¶E©´ŽòH\2’ëâó[ÓÐm¸ÙÚ fDϘ=‚°]Su{‹‹[þía²gieŒŒÅT›¼?ŒåËÃr½I¿‹¹Kvs$q’íaÄÌ,×Érñlª¶ƒøíM‰á’ ZÌ>z|F’®ᨢ‘j ™L²yQÏ0Ÿ!@zÜmOŽ&ûoV#MÃ^ v+S_CW æ»TaóË>Sq¤Ê¯Éòw¨¸u\9†_5+ÐÍ[CIW- ®’IG%MŸG£jgÎe•˜+Â)äk§[SüÿÌõáL.°ÿÊË}üÂ׺ƾ½uôiti!0)Œ ±¸b¿8ú½~ü-³ÍBŒü3s)èms\st_ûìüF9Õ‹&޽yDp=_.¼Þƒ°ªKFMÙšã‰6pX®©ÊI×ÒAÓ·g¾Ÿ÷tÿû ë;ú¹üEÆ~ Æá«\39ò±¦ª“øYïmT0q¡èlræY¼e˜GkeÊ.¹Ø† T^Á”yWôé L­Ä ÃNscoúJ‹¡Í›ø0ï Ó³=Ñr݉<¹GÍmü-®v+§"ÄÞQÈJþÒÀ§®ÙI3}² {Þ"¦FkqN`r“Ÿ©Ô[Rs[ª Ub“¨Í),º©Ê2hê^Þ‘¡²«C–IT˜Û(lßõ°ËêÖû4"åI8—$ù.o¦PÄTÿ”ݲϖ%@Èf^P·6ò×÷Ž£8ô/M¸Ù*Êå¼iSå~è¸\¶âìJõÐmEný{P☌§®ÉÔC5<ÜH¥W‚Zy!‘•¢–)Ãe{Ç´­F÷ÔV½oÐå  ‹ ¨ÌÎÊJH&Y#nG䩇”ÁR¶`¥¹€ËüÆÙxm,Ñ‘Å9t¸¸*K7:ƒ~]¶Ð˜¤„4I"„â~ñ\ÄòMî<¤XèFÊÙÛ2ÈË(U^úÖÊÒˆ’äP²Ë$¡æ€€l¼Áo Íœ¹‰ýÐu¹6ÚAÈn’6¼0–m”õÌ¡À>‚z’FÒ3?–Ë’ ¢Ø^ã)±ÍÖþ‘m¸…e‘E„Ÿ4–ô‚ r¶‡ÉÚmä²,ì >6MX Be!M¯Öãÿœ Ã+« |UX…5==F7 .)^)+*¥{̼5’JdNÅLR4)äŒ~«´¿è òû»ˆí¸ßI¾øoÛ÷«÷v»XÅÛÉ, þ$]³-³x8‚ܮǛBÊÎFna%¯¨Ó1»q¸OÁ•U!ý>pSk—,A¿K^Çf‰d`6uDbâe°;úÆbm–ÖÇhâJq$° ²ž_H°ÌEìYÐë¥ú,L-2éR[†³Ù˜/F¶™†\½¤ìž1畲¸­¢›=íe-þmó7[lyJ¤·ybÌ3"ÄË]Éò—U×ÒFß)‰¹aqg¶^&S Î3ePNn`÷ÛYd’Lñ™¸¦ùe6¿/¢Ãÿ›láØ°“ÆX%—£e`O1Ó§®Ä‘t[)Ÿ6k†ÎËå\-¯oRvf¼B¹µ’ €-Õy…ͳ܆Òm#0p»ò ¡×!_&;·¯]K+l>\3ª¬¢§¤4P`˜ýf!ˆ`bŽË‡-d SHcžžJiiåW\’¦i |r}úÇ·¿ykê±1‡a¬þš (é* õ´uؾ)‰’P‘US´ÑpœQÉO½æ¦H÷{{Í6ðUá»É=}=Ô¢¶ 0¹8uËVµUôÔèb~TàÔÎ&&ñ±Œ<‰EˆÓ‡WÒSVÀ%\’ˆj¡Iã%ÎGÈã:Üåk‹ü;Ã'i{׆cTICS†ÏmDà U.'Çž» ÂÖ i¯AÝ ‹44s•X¸–‡±_«ŸÄ\gnÔ~„ÿw|Ôæ\­òãf([˜>lN¤èë}-û;°9­·xb’ ™“%®BåõµùOò¸käŒ ¢#aèV“—0ikrévõ}'’7ÈӉʾZÙ÷±O9'”ÚÝNÑ…^.¼B3ÐÛEÿÔý˜7ÍË›¦Êx²G Ì\¶f„ʃ+é ƒn†Ú$Y ¾vÏÃ2±^@“©ºÛæEúí"0•¥I,’*2…c—-­Ê­®£5Øõ&ûÌs0R²ÎÙ_¬|–=S\ÆöÚÝHã™3feW¦M#9_‡kzô×÷¶wåU´Ytâ):Ýè/ ×¯_F½žCnŸÿ` ýgb¿W?ˆ¸ÏÁ¸ÇDUÂqÖge{=ªpþ@|‚P\•^qœfÑ“e˜¸†\ŠVÜÜ@Ía¥ †Ë¯YzLÍ;ÉÇIr*ô|—r èYX›ßÒFkm,sG™^6a˜®f´yucóï¨úÛ[tHÃ]¹X30Nº)õ󾛂|¨’¬„hè-¥õ6[f¶al¶ë´Rø°¤F»*’º¶¦×þ þIÙ`YP8Ù²¥—VP3zt$_LÚu²ÆÁT¼ÖcfñvÈm™mkŒ·˜ß§¬âa$ÜH>`9ô%CeÖÇB9}4ï¤#NP]X¥õ6áœûÆÝ5ômœ¶hØÇs›_\šæÜ‚·oIµÁF<1Ä|ã¦DåÖã-Úàrê¹^ÇQ¶»”¸„Rc¸bM‹aÙ*#šš:ìw«¤œׇQôõHd¤–h!yx Áuà'ê{Kþ€ß/»¸ŽÛô›ï†ðm¿ÃOüµˆ‘AÝN½,lAÒÄ^ãnF"*œì„stýŠófv×(×dƒ"³&­2=3åñv6ÓÓ–ÃMv&(§M¦³xß”úFc®„€l}{7‹tFY$hTóZ&`£“(Rß©ËsbBÆ‹`¥os˜eâ/4j/Ô\ŒÁxr€÷¶ÀSóJ Ý˜\¥G)M~p±‘moµÝNps’>{-Á.k |¼ÄzìNS&‚<žS=å¿rëqses+¬.LŒéÍã!]ZÌ×ñjs­ˆ¸$éšë'h‘†ynÄHlÎ@ šÚÅ®]m§ÌÍ´jZBÀë¾N¶ÈæùØó¶×)k »h•(æ(\­³u^bªMó[5ìm²Ú@8‘ƒÃ[«u!uk§;eBl4±ÌD™³_Q)„©¶s¢e÷º…-ËÖ÷,]©¸ñ¼±«°†VU‘Öžù9Vy@,²»6v»ÅÄhãaJVRYQ'~%¹»¸â¼®¼%^iªy¿Hšòîÿ{®Æ·–ª§ŧ©šZÛÃ$§£yk)'ð¥glNZdï £ñïÂ\>:ÝÙÅ0áˆï »õؽ6$+b§ðø¥®Š–:Zˆ–…)°ùÑ«hiž·2T]ªÌ ãÓáPn«nÎ÷Ã_=> ؆jú\2‘'…–žX©eð”+G,5Q55*AÆ&g©4ô;µ¼XÖ7[¹x³àÉM‹îÁŠ£Ãiª;ЕäJ7¯ÃäêÜ$sÕÐÏÆ&††’¦a6j$ì糺l ã0<_y$\M< Q&Y\®Z¾*:|"žc©YWWâ•a’¢–5G¿Û­ÚEM~æáó «Ý(iëèé^¿ÁÓSžõ “R,÷–®Ÿ§©­ ™¹"JVá°’,cspºù*1ì *¤Ä)û¥JÀ‹CUOCYì1÷Y–²ªycñ8…²«¥)دÕÏâ.3·j?B»¾ ï‰)ÒG;ÅŽ›EûlN¨Œ¬@Q}… y*¶e™ílžJ²ÊTg:è™oÊÖ¹µš3;ˆ2˜üc®{Ûu‚د©‰½ÉvJxh3ÚY‡ß–Ù²€l5µô¶N‚Ôà»$2æV|ö2d¾[Ü’¦ý-— õåVŠ6S¹UÝÈ`-˜ä09_Mµ'RÓEÃ4’‡ÍЉ‹€ž½uslêáà1ÇšÑÝ‘ßSÅc–÷¸õƒ§^‡hªˆHÀ7nÙyHbër³kX‹›€vz«-™–BrøÕއ6Q ÔeéNÆgÊÐÍ|œcl¥—F6OHP—±'ÑÙþc™¾$n¦fÍžçÀT9îs\üë›õ¿ë;ú¹üEÆ~ ÎkCσbÉšu{rÖS+fÖÏ̷̫RćM‘â†IbTä’OSê#7ªßölÄxÉZC`²FC‚Á™›Ð£-´9ìôm3ñ8d(ˆ%Á~·ˆÍvÌÚeõÛ¯6ËŽU“‘róYeô²ŸÞ'øØÿZó4My Y%æ9”Ìm–ÌÂç1¸'×m ¡Såf_H 5I×Etò¾hD…m0áÝô!ã%œ[¯KØ5­»±wŒBËȤkÄm[ª¢¶·ÿè.xfb¢(Îk²­ßÉ`¬¡ 7¹ô›\váÆ”‹È«ä‹êÏÂ:Û®–Ç]£îce-«ò 4|ÃÐysÙSl½,bâ4ê%æ‰U—­Ó¦¾Nw¿£Ó·h[Èã¬ß%¨pjZš¹¢ÄqÉ"I¢†>#‰0ê9"JúÖ£‹¼~–¶uGÃrîf;¸Û±¼¬Øf)ˆxD"Ò-¸}h”Ž=.'ÆÃg«jJªesTTÑ=<ࡈ%dyB(‘ãCo%¹Ù#i&hÑšåQ¥” å29úý¥ÿ@o—ÝÜGmÆúM÷Ãx6ßÖ^«»uíêÑRì5Vê ŽŸû“ËÕó<´éû%\«™¬2‘bוöGäl¬Äe‘tY<¥ž&¹ëä–ÊKª ª E0i8$3q8zðÀ6Ô £3£L¿£V)šž?‰’ÄT½äÖíYLan3øc VÍÊI³Øðó%gcº"èÝF ¨‡ý²y³`2³Ž€ÛGÿr¥“‰ ‘‹ã»µÕ®á0ë€ÿáÙ©ßsåȹ9N5»qæC‘­ÆliT°fÊ<¥eê¦ÏÜÚ¡Á7…_ݸ¨åòㆱÖpÅrÉéVÛu°:ΫÁ·sÂjŒ ÏxðÊj9ø,à;EÄ…¸là1Kýgb¿W?ˆ¸ÏÁºu»©»Ç§Ã¨1x+ŠVá´ÏLòÉK<^*º²šI¸±Ã.^î²Ýãi,°¤Š±nmZ ž!¦)»ì…®Fv¡X-<¥",5êv™þ%T0hþÝÆlŠ•büÇ0<™•±[ÝvY$ܪ°]\˜¦ï¿‹ÈsÏ“›*¸I5²©¾¢¹r˜„¼@|5»‘±òÿæIŒ€2Œ½lOÍbyH¶çÏØxcvãb †C!›¶rnXX5Ë\u;i¹–d$±Þ Øåd»ñ<7Ãùé+g$I‘NGÊ_âlà“#3øov†El«hÎ3Æ Þ¬¹JY³dç1¹Õ…KxsvcæSm|.²ZäiˆXØ‹*ì/¹S³F¨^øÞìðúpã6šÀŒœ&~lËbÊûrä8Ô.3»rÉ” ÝRåL%q™d\Wwt$OþÔɸœùˆ(—ÊD™$¾æÉÞ‹ëþÜÝ‘›+,žJª\øÖ(Ö] F qüIžlÜ#wÅ·|Æ·ñ1¢CsåáÿÍÊAmüIqſۛ²aC£c -âB ’Ã2Æ:Ëig]Ç“"èonØsaʈ ŽrÉÖ4a›0ê¤.Q¹™’-qíØVNÛ?þ7•½>0ŽB¯V¾ç9•®¬¾Ýt ªÒecŽXܨ-fm,E•†hãø™Qnwÿxw^Ù´´8ш=þnpÄs*œ·PÃs&`¥¢´˜îìFP[\dgU“6GUh²Ž |šì8{nVFϼ;¬ºƒm?Û<£~Œ,Aéu•·-ˬ€ã»±û@왕N7›†K0B98~;6VͶ›šx&E‘Pcû®G)AgËr†s›FòA=ååÜ É“Løþé’¬E²­±Áeÿ.‹Ê[fdgU»>9»“2Ý8˜ÒæÝVê|¬Ä0cã75S* Pw‹uÏ¡$ÉŽ¨¶>W§©a-·9šW\×]àÝHÇ[/þ=˜²ë›©&þ‚à›ûO[‡îVMŠdª Ç0–¦j‰¦Ä#§ÂPøBª>÷‹OÞ*MVÃ1wžhåhÝ–¦îãRRáýžc˜Œ‹C v%\•Xä;Õ%‚ž–“SدÕÏâ.3·j?B»¾SدÕÏâ.3òžÒÿ 7Ëîî#¶ã}&ûá¼)ìWêçñÛµ¡?Ýß)ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîï”ö+õsø‹Œü§´¿è òû»ˆí¸ßI¾øoÊ{ú¹üEÆvíGèO÷wÊ{ú¹üEÆ~SÚ_ôù}ÝÄvÜo¤ß|7ƒå=Šý\þ"ã;v£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®q»QúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùOb¿W?ˆ¸ÏÊ{Kþ€ß/»¸ŽÛô›ï†ð|§±_«ŸÄ\gmèÿF›•ñÞð×û¹¼[Áàîåáà”Ó½÷ºÿø¾'»xŒ¼³y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;n¦ûï¾êSîÆônÅ>W„á5x=‚ÒÕÒà¸õv/ASSA‹×>#=<ø‹ÕÓM55\Ë -ñI&Þk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÞk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÞk½¶÷Go5ÞÛ{£·šïm½ÑÛÍw¶Þèíæ»Ûotvó]í·º;y®öÛݼ×{mîŽÛË»_èã¸übÝügï¿ûÏsð¶QAÞ»¿Åz~ñÝûǃLJ‹—'<ÙÆnWf·f‡Â~ Æ>%ož-ß;Î1ˆVV´0œJŸ¨îø…EU/ˆ‰x\ ¹¦ŽF>e~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÞe~Î{Eüço2¿g=¢þs·™_³žÑ9Û̯ÙÏh¿œíæWìç´_Îvó+ösÚ/ç;y•û9íó¼Êýœö‹ùÎÝ’â¢îÇÅ ' “ÇwƒÇ;Óa{¿»8zb8µE= ÆÕµ¬“TÑÒRÑRñ¡Y*++)мcÎCåÄÎ)†â%wƒqÌ ¢8v5„VÄÑG[KÄš<•°–ž¢žzŠiÓ7f(á~Å~®qŸ®áå«ðÛ܄ÇÁQâÑà̼~/½÷¹Tˆ¸87~-ù> ÜSªŠ‹馭­«²CMKOK4Ò7¡cKO vÃ7¿޶,/l@R¦#PUÛÄë0©^H ¨ªIèe’\ÀÑ™V)KÄŸêv—ý¾_wq·é7ß àùîZ¿ ¾ëɽÁ¸IÜ|- ËÇâñ;ß{•H‹“ƒwâß“àÁp?‹{Û½8¶;IŠWÓPn–CˆÔAG„½ u5i[Šaœ8ÙñV&‹r’‰8|œIëåÝèÝS cÒw 젤ñ ‚CÝîhñ F6£~?$i•ÌÐN¦0YÿÕìWêçñÛµ¡?Ýß"¦ª­Á0êš…ìž=çML Þ+|ðÌ; ÆQPÓÃKOQåÇHŠl6ÅpÑv!ñ*ê-Ú¾!‡b‘ŠJ©`ɉaé¸õiCˆ'-eÕT­5@’Q0N#aÓRb;›ix†èã5>+ƒC{ð8ð·°ú† Æ—v“§‹¤¦8žø}dUqȺÓµrøÂk·³Á7屭եŻC5/ƒîåTTX|xP›áÅ÷v½EV'WV"e5u/’1»xUfââÝšo&-‚ã©E½0oæï¤8tò×¶-Åøhd­ šª–ŠviTÕUmðv+õsø‹Œü†šª·êj²x÷œM52<ƒxp­óÃ0ì7 Eü!ECO -=G—")°ÛÃF5Ø„CÄ«¨DX·jø†ŠF)*¥ƒ&%‡¦ãÕ¥ œ<µ”kUR´ÕHEDÁ8»tXöˆÖî-CxqzÎϰMîíu·Ë¤Å*¡Â0*Lwݘã©Áðg¢LGx"«¥¦3ã)Àš–’¦yëp,3Ÿr±eÅ`øÍÒbø‡íx©©qùib§ªJè³`µóaVM„ÔW¬5)VH[vðªÍÅÅ»4ÞL[ÇRŠ,z`Þ-ÍßHpè)å¯l[Š<&+ðÐÉ[A5U-ìÒ0©ªª<(Ûáí/ú|¾îâ;n7Òo¾Áò jªÜ©¨^ÉãÞq4ÔÈò áÂ·Ï Ã°Ü`1ð… <4´õ\pDˆ¦ÃlW ×b ;®¡bÝ«âv)¤ª– ˜–›V”8‚pòÖQ­UJÓT !â6 ½4]¦a8&7âWÐK„öQ†o0“ ªÞ©Ãâøfðï&i棖£ ¥ ­É» =5}-M׿—¶ÝÅÄwã¡®Ý KÁ°ÎÒ*øX5T8ØÃë‹Ë…$t´xŒfFÝÜF¯§ƒ,˜„l”K2e—vðªÍÅÅ»4ÞL[ÇRŠ,z`Þ-ÍßHpè)å¯l[Š<&+ðÐÉ[A5U-ìÒ0©ªª<(ÛýNÅ~®q»QúýÝò,z±,5äÞ cL7¦Ä±\>hᆭk㥩L:º–FŒU¨˜Ñb1UÒ3 WpÛQ æÂ“ y$ê⪯ÃqBÏÝ1<*ª‹§I š8ªV9²'["Ú»t¨wsw±N;bxt«-XĤ©ËƨÄ*jäž²¶©òGú]MDµ+ˆ¤«Â+b»¿ lHÒš®«Ä±|b¦žˆ°cIE65_ˆ=33AD`‰¬)ßb¿W?ˆ¸ÏÈp}êİדx0%0ÜN›Åpù£†µ¯Ž–¥0êêXq1V¢cEˆÅWHÌX<%]Ã|qipZŠmt-ƒUKUˆ@ñâUµ`yk穪~%mTÕÍ9h—»˜„QlWwð!M‰SB•Õx–/ŒTÓÑ i(¦Æ«ñ ¦bh(Œ5€e [ýNÒÿ 7Ëîî#¶ã}&ûá¼ Á÷«Ã^MàÀ–4Ãq:lKÃæŽjÖ¾:Z”ë©aÄhÅZ‰#]#1`ð•w µFò`Ë[W‡¬‘Ñbõ˜Ž‰ÓÅ.²A'ƒÕÐbžC«S÷ž1,c¹'jΣÝÜ6-Ú­YÖ· 1¡­56ãÍ[,Í%M]T…PšÊ‰¤ªÍL& e[ÝüSbF”Ð¥u^%‹ã4ôEƒJ)±ªüAè)˜š #M`HÿW±_«ŸÄ\gnÔ~„ÿw|†îâŽ#¸U]^ˆb>­|6šº†f¦ª¥,ˆÕ²ªH¸ÐÐÉHÆ6xê+¼8͇ÕKµ2»:ÔË,m,iL°,²Oš$i|R8)‚ûcTûºk¯ƒL€šÚSN+h¥ºÁ‰Ró>ZyåIV8j»½rªž’ùGÉ;ú¹üEÆ~*w£¡ÁÒ¨È)¥Ùªjø<>?t£…e«ªq¡ï ,hx¥8©›Â8-AŒPñ &§ªŠª8çTŽF§›„Ì`¨Hå‰Þž`“"È…ÐfaøMvõ`ñbœýÞ’*…G»(ïRS ¡ÃãgCÍ_%4/5¡Y ¤!ù'iÐå÷wÛq¾“}ðÞ ± _›»áØU ^%_QÖn UUMÁ§Ig—…Nü8b’W¶XÑÜ…+»ø5mzbs½Báð×aµɉ¥-<µsMI(¢"ÓC,¹+ATkA}6àï.?MEZÐ ˆ°Ø’zÜJXÝÌp‘GGÒÆµƒ2Ô`fY ”G ÏXþõ&åzic¬¦zZšj¸’7ššU9¢wˆMiif©¦$•Žw*Öù'b¿W?ˆ¸Îݨý þîø7ÏöY"Þ㙣Î%¤bqšÀ½ÒLŦMWcš"˜±;„ÉSND‚*a5Ow¥žHŒb¦b©Ž5ž0yYó§(E*rm*îöñâØ u3EQQO†â4«$´¹ÄoZ±MpïË5éˆo­ó°ú]åÝ©±zÚj\Cƒ¦Ã¥®ªV¨ZI 4&Ÿ,ñ­'¨ZÊ^²UIO†pâ‚*‚w_v1O 8 xE"àô’—‘¼‰I[_€Oöi<¬dQq¶¼xÞˆbtòÍ%<e¦–5¨š*zêXê玓§Hëi’Y%"ЬõžOö+õsø‹Œü‡:%¥{̹å'ƒ-¤Á8Q@7š6wiÆAu–˜fo™QE»{ÇŽáÐM3UURÑÕÉ#Õ<1ÄòIM+p¸²@‘#:ÃÍp©>*0´8Í,BZŒ6¯¬Ž’¹zyÍ#Å?é–Xø±MT%Ñ2¿ ÁØY¦0®93»F!ÆzÊ® ï4gŽ ð—¯©ef."ièầ>F*Ã0­íÃj+Mf#Ãuª¤AI‡†zÉ¢²žž™RJ¦…æš(¦®XÚŽfHso®'Ý»Râ• l¨Z ÒPN)"bàÅ5W<»¤R2ü‡´¿è òû»ˆí¸ßI¾øoÛø^>.mÕÆ¢U —ÆÍE,0½ÿý©$+Ñ‚e:³ñÞ ŠoØÅ~®q»QúýÝðoL™P$ÛÛ¼ó O Öi‘”6D9-Vg³ í £A®rG#i¢0oÔÛÕ¯¯g‘©Qdÿ–5EcûE½zu³´qOS˜"fâ*¢þJ3]•råÍrA7[ôuIS"i"äÍf½äô݆—zë¶¹xv5ŒaË?Y_%M%~!KY¸e % IWtbƒ”Œ¹}?Ž×R‘ylZT(3Iq—Iˆanhó]3äÌ’-Ðáqb˜ÝDà˜jAÉIF¦ƒ‡[%lQÒCHôITµUU5}úYéä–©3TUŠ›¡A¸6+&ï@¸u.óPb¸u5EMDÓTUÇ[=V;³EM 8\1ÖÑÔ ’Jøª{Ìpe¦oö+õsø‹ŒíÚПîïƒ{QrI#oFð‰UF~ð¥sñw¸%r©¸V,¤AQfÒ‘še†[ aèуúº7¨ñ2Ùóðâšè9n3eqeþYvhò‰x—˜4C“Ææ}=-r}Û+fuá’–ŽXÌ@5ÈÖÄ)¹²±Ëal»f,¡ A"ÙøùåùAµ–ÙVÖ;A,=Ï¥–®*ŠìF¬À+Z ùcÅ0Þ*$öI$Zy³CWJíÆ¤©‚pŽ'Ÿy+7sßÅ$Ã)°Ú ºl  Ø|”u1Qb„­RÔÕÏH®²ð%š#´™ÐA]‡UÒ×ÑU –š²Šxª©j"=$‚¢x¥CèxÝ”úÿ_دÕÏâ.3ðnJ»¼`a±¸2"¶jÊ] °ˆÉÐ;0½ÙP/§ÎÁ´ñdÃ1ækíäÜuAå‚nf‰›•/.p‘K ½®‡œ!u¾]RWEà $gr×.MÂÞü÷ùÀêÍk£$Hܨ]”‹®ºßɾm}^Ž»LÃ$yËFÁˆÌm–BÄth/±¢ß<'¯Þ:)aÃäøe1¸’á5•ULÿ¢Öñ‘æ­!h¤©‚œÈ¬ŒÛÁ„ÒÖÑ$òáu”•Â.,ÐSÒUH‰$Iðk`x¦ ³ÅŠÑ¯ëûKþ€ß/»¸ŽÛô›ï†ðm¿¢4Î~+b÷>&TîÅ—) <óg"Ñpø§ÈÛÅKÆ”Æ Ùø’ VÌ ZçSómcoF»fγTFë+6™è9yJ®Q¨Ru×a q#sq¤á¶…Ã/©òˆå+l \ìÍMøµ³ÙVM3],D™mgÔ\‹é °•–'Šîyrå¶^K¿÷[÷‡2‘ßwƒ8T£ ¯‹ Å1nƒÂQ¤Hx”uÑVE;Ï•éeˆQ4i¢’é¬å’>vÐÚ<è^Þ‹¹öPtÙ‰6uÍa³ŽeÕ¸Jù0Ë•›P¶_E‹_›÷NÂÔêA ¡¹Õ–Ö•ÊÝ:†ô°ÌuÛ ‚¿z**èÒ»î“Õø.‚Iøu•'„,Õ]Ò’t¦ŽÕ[‡» a›½†ïüUt‘WUµ8.!OQ-eUH©¨”Óœ6ë‡qj¼M\‰ÜDy‹WLÑO.ÐÕRO U-Di5=M<©4Ã"†ŽXfŒ´rÆêC#£e ‚Gë»ú¹üEÆ~ ÌÁNŒ[ŠÇ†[½QÜF¹¬Uâ· Ä k ±:ºJñÄ3ô6ˆ€/tësûý:[ŒêËÈ9³„Sšm[˿͹°k±,{Ì]C’3Ùº·®1s§_EöOÑœˆÍ‰Nk"öÖ×¹ôz<«Û4™ò=ä‰5‘'6R «b¡ÿÊÀòd°ùO¶`Š÷ôËÊÓro¢â[³Š×àlZ &XÉî8“S Ä0âT­ú5m:­U@Ž:´d'³ˆdVFEÃ÷Ÿ ‚Œázˆæ â¼)…–$͆Ï:S4“áÎñAV̳QÔÖ~»´¿è òû»ˆí¸ßI¾øoÛöåU­»X³7„s—_Ö’Ý-˜$lަ)_×åU²´€Ž†Ú‘éÖÚí0|ûsl̦I …œ]Q®o˜ê=WþMŽÍÝò¬pËÅ\êC1RìŽ\Új4=,-²æÈÉÞàåPîQ_ðlÚ¶ u7 ´EâcbÀË®™I[^Ãøôÿ"Áó³E—³_˜]¯×_åÖà.œº/ ã,–$ž'[æÓŸS×`_¦¹–2Na"æ'ˆ«Ë˜å´eÅ”i|Ûx¨Õl«f™ÃߦŠúlþœÇ5ˆ°Ûzq îÞªš<*ŸÂpÚ<.zlB¦’ަª,N¬É†ÇLµÒI5pI…U5 :wtÃ{å_:ˆ$ŽƒÃfï8~'GMˆPÔd–.5%d)=<¼)Ò9¢/ŠÆ)£ŽXÉÉ"#‚£õŠý\þ"ã?å:²ÌÀ>mmqn]³›–x±ò[30SnÈtS›Cœz:ÄHCÃ^ iè1‡qa›˜ A[¸†$*—É”•½Êú:‹+øìÐȈ 쎊ÒÝò®P?QË9¯{‚/|·¹vŽYRU'?1ò̤±N+†,¥öÁñœ:¶l*¢‡¦¨ð3)e§ã¯yÏ`“¤”ùøôSަ2ðM+2žå-&ðQá,ù#Þè z=3xùhéê¦Å#¤{/ Ò’j’d^=8ËúîÅ~®q»QúýÝðob GmäÞ Äuá¨ÅªyÕX…AËÐæ¿ªû=;DÒÈ„+2(*IùÅ˜Ž¿Ç[ß®Èì¡k¡–G°æŽâÄuµÈ ö7ȶ;gi ‘6‰˜¨Pî.4ëpoOý;F2¯»æ^ žÅ®¶¸Wºúì}feUâŽ`·¸G^¶¹¶™€Ì=vÚùdÍÄH ˆœ¢ÞRæ‡P[¡ slÊ®¯6U¹Ã[Kÿ´Vù¹O¦çc̤\¥‰âß6AÊJ¯Œ³z@P¯\œKP°É/.~DFU§°kqÙ3#1Fn€nEG»±®Œ&”qá8­ÎÔe$M áî˜mFõa¿DÕ5q U¨Id¨ã@iF3CO= M,©C‹áõ ¤Ä…-=DËO*; š&ãþ‰TDRMž-=<Ë$)ú¾Å~®qŸƒr ‘S„bÁX_7|¦Ì¾bª2ØåÊ¥Ž¼ÛIgY q)£U:(Ë–äý@À«ŸA]Wl¹Ý³‹Làe•K*­òÜ1[UÌ[N¢e'&Vxœê9hsd ³ ‹rn ­®Ò7ü4Lñò«^_$è.Æ÷ %õ$ŸU€ŽÏ,>«[ÚųjK.k/)B9º³ÊízœÍ™rL£‚™2›Øµý{]ËÉÈ+f‰Ä„e¿ нJÿ‡]=Pê¼Ì3<‡(ë [ê¯rìo²<òp&a¥`’Uº¤RTC³Aò/30ÌY ÜÝÃN+º{½¸ûº[{Å]2Ëßš‚XkðÈê*ü-D‘ÕSø9ª¤«‚¦Š¡ãIðÎRþ³´¿è òû»ˆí¸ßI¾øoÛøE®7o<Ý?g­Åôù¿;¡ ˆÄ2+5O–åE•²{&Qª¡PÙ¡ãY[;f#“1¼…C_”ë¢äm=#йcu}b–i9PÜ.lÙ­žÎ.½BŽ_)rBròwY¤ „¾·Õňk_ÊÙº˜Âff24¬«c~0L–½‡‘›Êéb¼3$œÍÆ ûK[79ÍkÜ46b,H°ˆHüªQdÉïÜØ#fU±¹dþ[%1 .WSÐ/K‘v |«Xò“ê½ô‚*Úš*v˜ˆì8ÓÅlÜo—‚Ñb›·‹RbtÒE²,¡ª¤ãgÉ}%ûÅù¢•xU ŠL¹‚ßõÝŠý\þ"ã;v£ô'û»àÞþh¥ÇŽxÅÎ!Å*Y®ç.^¶à‘™ZÍ¥´GS`D2>`§3ÃB}<ª ôµ‡SqQ!~’9.¨«Éy wç·–o|ʹ@Ú(cŠ;ëi¥„z—Ôß›2‹kë¸"ÛDd–8ØÉ&|¨4ä94k«]G•—MWÓ¦f’8Ç eå3ƒsi¦ºªéÓ[i³›1æqµÃXhÙ¯qÔÿñc´ÜVe³¼œ³ZÌ9ô‘mÇýîv@T¶CEN"õ:å ŸúO(7Ú%¨¨-Ík+ËëpO]/ü4>›.f\Ê{Àç1hyGï#éq{[Ðom°ú¼y*¨¢¢1¸ÂiàŠ—«ý( b˜D ‰ÕTRƉ.%YO.%3Ƶ}õk↩7wÞÔ ãØ¾„OÄ*)¡¦—©J8eðed5ÒJ‚y¢Î<(…cÎã9Û»Ü÷J»z[x+§ÃÐRUµÓÕ§uî”Æ_ƭĻĽʔðx¢Ž¤‰9 ¿QدÕÏâ.3ðn/ ‡cWâüݺ[ÿö62`ˆzuvË“­ïs{ÚÚX¶Ê¥U2I˜²›°,:¡P ÓšßæÒ+ D·^L¼<ĨáçË™VÇTþ:¼KH'c™È,Ù[÷ ‘ÿvÿ!ÐKÁ‘¼s¶UWql¹²—ÏêSË×—kS1UšÑY@*ÇšüÌVöÖ×°$lb´¯ÇNBåQ ­çAžÝHy¯f°;2HÑÚœ)` ‚U¯­ôôÓ®ÖñAøŠ8ÙÞÙr~ÎîÀifS}ôSoF "µUšf,)1 *‹Ç-%PŽÆziZ8æÈ¡JMDÑÔÁ‹ƒÒÖÔÕ`8Ö)4TO‡ÕÒÔMOO_+¤(‡§‰ Ziæp ©ª–OT”«{~¯´¿è òû»ˆí¸ßI¾øoÛù{‘ñr¿@¯È-¢êVþPòrß?%öYÝ-qꎊ¶P‰t ½ µ"Þ­¢–@WÉY2µÒlʼ%±v eëû1{rí6P­O>._ÞksXþï¢úó5¶‰ƒ²ºH<¶QkÚÝKX_BA9‰2CÑΜ…nHëÍ{êr~î¡Ùº¾sY Y=ñØÛÉ7U=nx¹¡Œ â ¶~ÿ²×ÔÜÞÞ‹ìÁ´*s¡k¬¤IËfsÏt¸9³ZÚ[ÕmG ZYãPüF*5”¶¤nyÈ&ùl[xjqåÃè¨wkÄÆ5cÑE¾xRpì YÄQSÊgs=²£ÕwµJj*j—«–-›Þì? Ýæ®»`•ðUÊK3ÔRRÓaÇTÒñ+gyäh꣚|‚æ‡Æld•Ò4[fy" › ³ÉoÖv+õsø‹ŒíÚПîïƒz†œ»ÉE‘TÅEÅj­ã³pœ¯EÈH#æ•gDsñLjø+à A9®÷ôŒº(¸‹“–\]žþ[)[ä³_ õ\HäRH‡|œ–â› 6`‡R¾PåM–]I$"òÌÃ/ ZÂíoœW­Úä’5ËÀQ"+Yù#™$Ík†×1Ês\íi̲<Š2çë`Kr©ô ù"à‘klZügFqÌÈ-âAÎQò…Êmrßâ]=*‘«0t³úI*âÜ<Ú6¾U²OÍÛˆª5\8á„7ÑKWN¤ô·§¦Ìárd*¼÷7ÌÊVá³\èòt7°;dÚ2yåG Íb2¨G#6brûÞà°ìg v‰Ñâ”"s;ÅÑTÓJñ¡âZˆÃ“}r²æSªË~çaõ8ß»­^‰K%Pšý+ ’9ª`§ZsS7Nw–xà§ACÕS`ô˜î»xNµz7‰š¯Ãhã–*×Ãï_[]- 'RS--}El¸Bðiæ‚JµSÖÑTÁYGW uµt³GQMSO2‡ŠzyâgŠheB9cfGRIb·€ VüÁ[0RGP£}9ZÝÛÕÚN/½‘R&ô¬4fz,:†Ý©äàŠúš„2D©C¡0S‡ŠÓØH³îìXþøÝ5ñSC;Ðá匩h£¥”ML’"&!XÕ4ñáýâu”3äÛ±_«ŸÄ\gàÜg»g^1•yʾZª3”ó^·ÌÞ¡¯-¶2Ï/<3 Þ!J…Q™ò°*êÆÉ§Î¿6Íw§“‡ã *¨ææùÚ䳚Ö&çùì&yWD¹#Œˆ„‘ÙŽUi†fvê}<®I: ú-}–<™Þ1ÌräÈÇV ™{Øiê7¶Ø} XÍ^=FøÌO>Œ·…f®ZÁM‡ŠÅ1|BŠá‰(££¨¦†×’jˆæŠI£“£À`Æ)¦Âb§žO ÒSS­M=D’ijҵ-mo*´C:T÷i­4ybkKÂýOiÐå÷wÛq¾“}ðÞ ·óÑþí⎣Åõ×M¢‚Y2ÆÉ˜HÁP:ëeÊYµ9o©½‡“ÖÒ(ñ¼Ìj3Ì h ‹\ !o{ê,)囫‰x̪]X›z¦×Úii³Ùd6S=®N—!´'CûÄú6^ñ{Ö¹¤°#†KrõÀËÓ­¶“‰ã!Í™Ñ:Ý€Tÿ¨<Ÿ_7 Yt%$CljóŽík¯¯ÒžNÓñRF`ÁUµ`¦ÂÊ$)¸ÌJê.Bô œÊ -eA%½7*P}-ÐßÔ@Ù˜G&­ –ä'©Î½?pg#˜y$Ûhªšy)Z”ˆ01¹‚Pãˆ|[„f ¯†·§@F宽±êj~ûSI=}f >; ±èûÃÒbXbÓȦ†,6³µ[CT”„ “t¨b¯§Å!£Ý¬š F“þ¶pÚhá©¥ÐM4A˜ghŠ3ó“ú¾Å~®q»QúýÝðo#8 Xöð.¼¦'RYJƾPáÿÊô2ƒ!Å9Í—.v¨lü·¾S¦`H=-µ3˜ó¥­’0ù¹,Æáì3Ã0·Nª6s#4C'*ÅÏߔ꺞L—½´ôì„•Ž£ÆYŠÉqfô?CÈy@h-¥¶[Ì«fFQÃ-iŽCuëüHm†…2 ñ=­˜(±²æ&úúrú_NÅ@14mf ­PÄ9³]e{§“Ó¨ô4•€<6ÍÉÈ—ÀFÙïq¨^£Ñ°,ŠC|í—Œ}\ò-úÝMµ-”·,žPÊ8‘åË™RúH™¬¹>m¹‹üöý£»:«¶k‚Œ,?hRê‚çE:ô[f¾ËÄÍ —5®.V9-_F‘Óba ee{ëבÔiu s-®t ÀlÆ”ðÉ*Ìù“ˆ ÆUë£éÛ0½ÎÕ³âX%DÐw:„¢«hZe‘Jº,„‡fh$+x&ý" 8‹zéq¼J₤Tø^¦­ª'žhB«¥LÒÉ4•qˈgŠ¥Ý'§&ÇÈ §Çe¤£¤£Ë56„д4#HªaïnõRWW™Þ¶„‰+;°[áW»43VKdña´´Lü*vj:EáSC/tŠŸ½pcXÑ%¨/>JzXZc,Ńa´T¸ Jà”aQˆÒbÕµ8¼”Ñšh篛±H$áðZc ˆÒÖE-CKÝæî‘b”râ¸fæo‰áؽF[ŒàgÃa£Ä ÄðX™ªkÞ|F épʨé \Pâ4¼;‰ï44Çt«^ŽžzªêÚaªk¸Q•ïÀÆé¢ï9SÀ€ÇÇ2L‘ʼn MM¾²ã¸.-‰PÏ_U‰´¦³§‘¸v(©åÍI&¦Áà…КI‚žzɤ›² ½ÝÅ)±zJ*ÎÍè**¨ØÉNµg}j±#Ë`’' M½+[IC=VÑDØ\`zYçyÅU<³A"Fêd‹‹=%Fà™0Ýߢ†.ñCŒáØ]DøÅZÎÍP*x-]5-#ÄÑAQWST³<èÒ,PRbÕXT8”ÔpOS»´ø}uM}-K’¦‹½IMK†9§’FË4•tëS m, [Åm\£s± p蚨PÕÓâнUJÅP™ëh%Ãà\8OMšyVW42äDnj“ãE&3C‡ÑÓ¨ð¼8¥u$ø×”p±Bõ*u~¯M;8†ªãBÄ ñqì°¹ü61J#„eâ÷|Þ÷<¼r!¿ÜSÃòôÚš¾‡¡­¡­·s­¤«‚¦’¯1*½Ú¢xgÌÊÀp®TÐí¿§¯§¢8žèï&‡$Ïãk±,G­¥¤£¥…sK<¯$€¿ AËUPb¥‚i£Üo¤ß|7ƒmüÎB§Å¬K17òxZô¯Aè¿[  je +­øo`H^bÓKuÓÔM¤V^Lÿ¤2r –²Ù3GË–öÌÌ<«z «ø…òPæ?™œèy—_$uôìÜ$[.h¹Ý@€ÝgõYís9•ÉÁ*ÆLŸú‡Xï”­­•rú:Ûg´’¼!Ã7@Ì.9¯ËauäAÎ÷i.E“(M#0+Ÿ3(êÄjz­ºXˆÙäã\È-‰[®S—™C_0\Çüchìë áÙ.¥tÆs±·-ߘås_cäÇXʸòA`Ø=ÝA»äËü6I¬,^ÌÒ‘€?4Úà Ðå¯?6‹´jrËv˜ó%Én®17×çØÿ†ûMº\qéë#|«ÂaXP÷¼=aæ¦u÷C‡q!1QÓšØLr‡¤î˜T8†éAˆÖÓÁÃÆkðp¯‘FU«ÃàðlñÓ´LóÓ¹hø„à †,² M»xb)=jâfuÄe¢©ˆp…(!)JÞìñºž#@¡IÈù\Šý\þ"ã;v£ô'û»àß0ª$yñýá4ÍÈÉo Õek·)Q4RíÁ9¶°LŒ<^O%¸ºe°&ã¯—äØƒr-µ*Ê×e™Âe0¢­Š-“.f*öÌlÚt¶ÎÎÅ“)Ñc‹kå¸ùÊ[2ÚþM’Ÿ$9òfwÓ#e|Ê2ƒ},/Ó¯¤hXÈ?jÜHоP rF2æÐ`,s uÚÚÜIlÎãNŒ:ërtëÔë×hä…™ââpÜh3 R\]¬ÆÖë̵鴥G%ʬ¹ú“”‹©$X+ïhßÂ<·ÉØeÈXþÌ›-‚‘ü5bMôÚp§Éeå œ4bN™M—’ăԮÈì3p\¤€( ™€ÈWç5ì=/k›ÚÛSªÇÂn¹­|Ú›iåegQÌêѽ[GšDÍ〠Âïþg2ê:ZãùªÄDÅœ„=r«6^dºåÊ-×gḠN¤ÆäA±R¼âì,è×`ÃK_ÕOr8€²åШ m.2s J¨[×iÞ3…ÄÎ2“ôè|XV%@뢜Ç÷Ue“,ár¤YW(clº6f¾¦ö_Q×g…d)’F³éÏÈ{ZײôÖÝnÚpçÈ‘¸ŽŠ°Ê¼¨O3fƦÙ9OMªTn#ghü¼¼2§"úÀ²œã׿ŽÉ3”fTD¥[ùKn­ï¯A¦ÑÉ“Ëo*ù¤#1+¦[qŸ4‚ÁF‚÷wN.cÍ‘|YF>J¶\¥˜õd_^eô9\»9,dGÓ^R.uéÐæ<¤ëkìeF º«¨sämXHÿ1uþvÚ&gA%ú2ðͬt>µþ6ÖÝvË! ˜Ä‡.pOò2=¾m×üåˆÎíõF±b׈%­a–÷Ëü/´ÎÍ,2²…’Êe°³aШ e^[Øe]6’šL„Ø«æ  HC°¶] ½+©õm4¬¾¹J¸pm•›[ z–ã/ñÚ›Zs•¥N“›Ê$¶º3XhÞ«lî ñ *ÊY9X0:2–ÔZäõÙ¥oÄwýźæ„Ýyƒ) ™:e,uô iS¬¦Ã«¦F®Ãb«t£¨©òÆõJÝÞS™ÄÒÅ$ŠR2Ž ‹CH³Õ2aRºá~6@(§ïòwHƒx–’®ªyËDˆ µ çÒv§¦ÞwÅ"ÁpÚêZ#WTõ%#—+qL¢I$–Fe§Y敦îÑÁOÄáÄŠ7é7ß àÛñâýPÌ…Á¹1ä+¤Ø8##!e¬e˜@l£5¼„$ÝHýÃéÚ¦|¹rݳ2–ä t¸$ZßÀ—n ±ÐAtS”0ÖÂÀ§¤ÿv‘L²Êb7ÊE—-˜‘IhJè…o¶GÏû<±Y¿æÝšK2¼Q·ø} KžCkèzqLYNsê³é¦^­®Ñå̹ó üL¡ÑÝ-­²6™ˆ ÖºèI ëqGO~}3€Ú²€¹îO.„ôò††\‹²ÉeÔrœÞR”¶]3]OñÐf|ê—’JGé]I-YÌÚo¥”ý¤¹f:G*å¸ùÞK~o.Î’_„²eÍxýbÝ91Ò÷Ã[mÂy‚«F\ÊR3+ºõ:_ù¥å^>V—K创è-¯B[)"ìø¥q–Ü×k…wÑÍšÆÅµ^ƒ®›xÌ®b!sËû¹FP ¿•c›£Q±i¼—\ÀózÛ_ðf·ÿ¾ÊÙ³&k²¬¦žF<Qûü,¶#›ÐÞ¢SI3fbT±½Š;;ß3œOòÙòòKNðüGcsk·[e [£jqÇ‘ÑrF"iY£á¼í+Fˆ×Ž5ye–NE’Gs±;G˜òÍ~k6hì¥ïœ6oó7»[[¦ÏS!’’TàÊ\òä_Ã7åh½CEå ô ظƫå¯ðF=¸86óp‹Á‚ÓojÔQÒgäH®q¨ifŽ2°+­Ü·ÊIMÙÁ¤ê-®z6½‡’ ÂêVÄ¢oˆŸâ¯”ßà 9ù¥ŒÓç~sÏ2È×È×¼q•·ú?ÜÖé.íauËÿ6‘ü—nOý5´qåUAoô¹w`GþXÁ…®9Gs²)o㲡ìÿsЦ\·ÝÌ+æ¡AsÝnt<×¾w´šE ÂÝ.n¿ì,;Ð¥t /_›nk?” Œß7;ö†_ü¹„åÎT'‘Ýr”ÊŠ#„5!.IÙAÜ Í9MõݬÜÞü÷£ñ–¶œLÀ ›CÿÓýÌ<d-»X;±åÉãY© Nm©iÌŒ_Æ_‰Í±?èÿsõ\¿ùw Ëå¸^í”5Ôs€ܹ²é³ƒÙþåøÀC[v0eò€]2ÑŒ¤ÊËfBY”‚ÌI#p76æC%Îíá ©×(ÍHrÅ}xÐD{ÝŸnQ! w;¯‚ÞÍ—©î\ÏÊ2Èo"óeaîWýnJ‚ òn¶Ýr:P«!×FBAb­ÙöåX°vÉ»,eˆýã–°I ÑÚç³íÈ&Ö¹ÝL§«þ¦ÇýÀܱ˜l»¯‚-Áõ墋r·”ºå"çlÿè÷r3HÝ\ ztî6èÆúkË%l¡{>Ü®TT÷c‘ìºÏ%;¹ùò3$:ÈÌvÊ;>Ü›iÿé\ÞÝ ½ Øß[››ë{í§gû“üÎêàdŸG3±þ$’v°ìóq€ëaºx ¯ë·pÛ±ª=ßÁðÌŽjŽÏ*å¤Âhi°úgª“´N'¨h)cŠ#+E1—Ë|‘FžJ(QϽ˜1Ä*pè*  ªÄè'¥J’­&S‡ÖS$Ü莫T“¢°ò,ÎÅŠŒéÅË'ÆâÏãE€?íK³Çqå(âq²µþ)È’éã—x7—‰p¥ssâíõýÏRù»ø·UÄ a'ÆáÍÒÙ­á>õýË i±cºr5ƪÛüÙsiy4Æâ6·7ùÍ¥´}Ó”†+•~0ï0ª€ `®0®èä3;ÊÊdqF¹UM÷j¥Û>egÞ á¼i—/Bâj†=Y¯"¼¤±¼¥BªºØ¨*ÊB©Þ âË"Ù£ÔúrËÅüÓ`£u¦@ „˼;ÈrC¯“™2¹³ùƒrdÌwrªWâE!y7ƒ¹á¨R¶2ËbdåÎ Dmñr¥9•®˜þ?~UÜø“€3f3gv¸ynwE¼¬Ì>1oUœÚÜÀãv·Cm: éps¶ìTJråN&ðo‹ÔÉ—^e¾Q›0Ê5–,îû¯1/ÿõñŒ§=ó%±`AÈMâA{È^GEø§#e.w‡yƒIå“E&íšêªn:Úà€7RhÔl©¼[ÏfrAÌx˜Ë›­²•Ç0n\«!Ýiœ¬F+6ðï5ˆ¾Œrã sJ‹¤²³…a,ct¤U—-í¼[Ó [X.li…´ÖàN½,‡âƒ³&nfÞ-é»fÍpmê×å tõ¹_Š.×êNñoMÏÿãªPʃm7NB2ªXïôh‡][«}zXi²¹îrúNñoMÛÊò­¡kæP­~¤Ý³JߟÆJüaÞuU²ªòäÆTód K–9º4Û~±J Øx± /sw£©lwx¥d¯Ã°ZÚªZ§ñcÌ•E!Šhž™²0pË+n7Òo¾ÁµE!KM]CW ÓÕÑÖAM-T®Y ¨§™^)¡‘IWŽDdu6`FÂ5ìÿsrƒu-»xKȧü2½#J?ÉúiÓlçp739(n7k_#P9hÇ!×<~D—ú'Œ^st|ÊynDÊàîç'\Û¹„³/‹H¼SBÐò¢ŸSÆf›öÎîο77+®VðP‡èœ²i~*ÚLÜÙ³k±ÿéþæÂ×mÙÁد’ÍFJuù¤ð6hþ nvW\¤ ÜÂF—fº‘Ktc›WR€Ef+åìûr‡3?þWÁ:°±ÿò^Oø<€uãbÑþæ]˜9ÿvpq¨áú‚‘†AÈÀÈ,¹ÌC³íÊd%˜‰7cšåœÉ«KDì@f9œ±­’0¨ª 8ìûs./añkáëoù]Ó‡¥†^NO™m”|@ܰ‚¡w_A§ðZ!qëSÊ}#`Fàî~Šßp¬¬[È×$®~t’‡‘ÆŽÄl‹þw)„l]sîÆ úœýKÑ’ê3œ¨ù‘92(áÇ•ßýîvi-˜ü\Â}åAÝmkªG•ZÊX«o7»–lí%ŽìàäffÌt4vÉ~‘þÍFŠ i·c8†`´o7gUI…PÓPS=Aí…§hicŠ33E(ò•ÎËf&Ûv£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®q»QúýÝòžÅ~®qŸ”ö—ý¾_wq·é7ß àùOb¿W?ˆ¸Îݨý þîùOb¿W?ˆ¸ÏÊ{Kþ€ß/»¸ŽÛô›ï†ð|§±_«ŸÄ\gnÔ~„ÿw|§±_«ŸÄ\gå=¥ÿ@o—ÝÜGmÆúM÷Ãx>SدÕÏâ.3·j?B»¾SدÕÏâ.3òžÒÿ 7Ëîî#¶ã}&ûá¼)ìWêçñÛµ¡?Ýß)ìWêçñùOiÐå÷wÛq¾“}ðÞ”ö+õsø‹ŒíÚПîï”ö+õsø‹Œü§´¿è òû»ˆí¸ßI¾øoÊ{ú¹üEÆvíGèO÷wÊ{ú¹üEÆ~SÚ_ôù}ÝÄvÜo¤ß|7ƒå=Šý\þ"ã;v£ô'û»å=Šý\þ"ã?)í/ú|¾îâ;n7Òo¾ÁòžÅ~®qª^‡´ªŠz&¨™¨éê÷J:Ú¨)LŒiᩬ‡xè"«¨Š,‰5LT4QÏ iR’XBžt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvØevåöƒƒÔÖÒÔw³YˆÒ⻫U†URÉO6S†TaRo,²T,¢IxÙðù(¤‚àiÚV4þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Þz¾Ñ»Eü›o=_hÝ¢þM·ž¯´nÑ&ÛÏWÚ7h¿“mç«í´_ɶóÕöÚ/äÛyêûFíòm¼õ}£v‹ù6Õ45ݰSÖÑVÓÍIYGWÚhµtµ´5Õ4ó`ôóÄïÐʱ³#©RFÒ>ñïö…VІX©ð\·¥z^E&’²º³v¥Ž¡¥3£S- ±¤qÅ(«v™áƒÎ±>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛα>÷mçGØŸ{¶ó£ìO½ÛyÑö'Þí¼èûïvÞt}‰÷»o:>ÄûÝ·b}îÛv·—ý#÷ï‹»Áƒc½Ëâ‡vïž Äiëû¯xøÑQÝûÇwáq¸p³gáI—!ÿÄ%!1A@Q0a qp‘`ÿÚ?!ÿâÞ³(1Œ0 Ì4`à5 ÷˜ã“œ8¸‹Ð{¨)/µ  +ÿè•1ùˆ`À jʽʥk^ö‡Vb‹™æk·z­T-žL#÷â}gw x½Ù>¾ëø3®¼®ÜCFC¸p±¹ énÈ~V6 kQû·V ÜÒЀ/Ä—ÛÒ,fŽu¦Ö÷­WÙÑ.„B”íQ²G>+Õð$.;~Œîó³º6ƺv!ÕÃñÔ3pòü+¤¸;béWEbÃé'{‹£IÍÔ©eþúsö².ç܈>9'âPÞaÕ?÷^‚“”æ%eSû¯_‘«¥M¨_O¬©¿ñº6ú‰Óx ¿ÎQWÄþM|tÅýj?_dÆ=ÅÜ• Û^©Pq¦™GþÎ`cÂÇšïHw'ü¡°•ÃçäЉ/B#þê,Í<‚¡ê´,ÔHâïA©žÙ½!\JïÚ'Š ˜êš ¬;ÆUÆÕrºZ}(÷Ñ¥ ‚aq€B2”'ï/þ*|Q<2Ž di4+‹Î\àº2 -¢â D  5(©Ah™ŠÑ¦L*hÀó•Â"3ÿà”—Ú€õ¸@Ʊ>Þ¡øIRZÒú–qÕÆþAÃeÅP &ò…*Ã[ÂîJÑrÉ-¯e˜ÊI® y•$ÁšÞC,ˆâC‡ŠUÙ$3ƒ¤øÜ˜esFzÙkt0\j9%Z–\ô/z0œ€’î¨á¦G Z Í"Xÿ2žÛP9¨µ|¦[«0»ª9Ó ðsjaãæC•_öv±j.æ… ü‘cW2Í€q“ä@æ8¢,SuÎàɇÀä<€Á…Žç Y:¤@¡U+ð£°ÆLÜ‘‘ÅIð,/³ƒ­ÚÊ“ùeà3O_”¥þe>g «€Àk¸èwsØB*¬?¶"Ôaš4 ÑÄÏÛ{Ò{ /ˆOÉè䀦}#ŽÖYÅ¿SqÌTâ CH¯öºÏˆ KßJSP^ÿ#@Ë‹g/B6Ê=†¤ûº½’3WùÉgKíŸT¨®a@Þ|>)òähÊ&ô‚ŠQdè_Ç#p=­8„¨{Tª@`La$Y¾yQž²ebŸÒ£Ûúáï—†®Z+ñ˜~ V]@Ù”#íÀ3KhxH[ʪTD?Ô!`gËÍɰCJª‹Ö÷Ô"*5ãH8¤PR¿5X-WÔ£dÃHÆ[aÇdĚŊa»¨è:>©Y6#…Pˆ ÒäàNK€)Ù Xq£Ìb½Þ¸qãb>’¦::;üÊ&« V S­¯ßmó)‡ÚþªDvpeB˜£L xs÷¦•Tˆ„—õJQ‚L dL%\éG~¨†Ùb*©Ï˜}B(wAÜ…<6*u†h1”TQÀ’Èëht45Ô5ˆ¹à[y$TqlXãèZ©×WÃ葱S\nÖesìm+—ùD¾âp,ÊmæfAQ'ŸŠÂÍÀ 4 å£F 6xd‹Ð,$¶¹>e@Ue§ Âe ?€„¦€ø5=Äý9Èò¨%d=û ô äZª9ÇuŸÔzÅ*€éⳫ¦Î€ð[Œ0Å!á( }`°ê&H=+ÌÐ=ͪ‚#†··|4‚8î TEd‘4õ Æ=:I-I‚—>”ø´Þ± Èbÿ¡>ÜÄøÃ^8ö*>ž…}@òEÔúOí-ð0Oz· ¨%m C*2ú~ÈÒ¨|èp J”J‘‡V´õõ»´ÿÃþ2””8-,QÆ–ág‰þ´+BŸ ºD½¤² 3ž †Ùc¡LÝ9.YþÞ–—ÙKvÈñp&ÁK+Ÿp Î>È’a)UX÷å—$´ì|DŽ“¨*¦i›€c-bü 5džS>ñ8<ãµb¦(½T[‚àå[1,PLâ¿‘ÐÿpŠÕà‡ jʲ‹ùø‰Æãðs” #rPÌ¡´Öƒ…塯¤B) Ôo?²B xˆ…º£"„ý L%Põ¦Ç±F' &>?mML¡…’o ™½+#âÀª6öÂ~µý3™ 9p£6#9 û„œÂäüV TáU.!U!j/¨O„<¯"ƨéalWÄ€D*‚v3…½ixNù@5rˆNÅi°W˜”å–éÖ"#ÖqsH»>SÀxŒ@e ª{À@d·‹4U®D]@îŽeí­ú"8ƒÑ ¢ýX…w5ÑVjÒ´Ý+ûµÏø/cZ¦`ÿÓñaræ›A€TáåcÿÀÐ:£5\Ì0øÊLw&éÚðÛª1àÿ$¾Çš¿´ÇZyL¾åk®%H!MzTr'æv†•¤·€¿â„HS¦– ‡"Ýùc4€“ÇìÒâ`‘ §šUà”l ¼ckÓµV„ ß¹õ_€wÉC{ø(]X‚/¶’øµe¬OÔí,8[̨£9žÁ‚î!™ ³_Π>wo¶Ø{œ÷!…†Ò}iÑD¹\õ Â{d#ìT\{þ±(Ý#©Ç— íG˜Š¾Í¼"t>£ñzK$ ¥%´Ç€>–ÞPy¢mq€t[ðH[hX Pš‚Yµ1“}ð¯0Ë”<4fJoPHÁðJFÐþU5¸5ÄÇ*Á]“B|L { (]á3$zÕað”*LIŒÀÌw<»´ŒÙ± D–+)øðUR,dC‚„·  ¢Ê`¨<Æ2±¢š}·ßJ:äTƒ™ €a%0ÚwÀ½ÏÃèÏ aÂsK/´– ÆAi”d1pª!¹TªmUÕ°Oòr_bƒÅJÀ}±$°>2ù³É£À}sÑ«U*,¡Øp8KÔÚTM­?ËÖ”çhW˜ACfZÕ%Oä4ÊÈè’ >@-…°ÌBÌ`~N«Æábû|¥ZL¨jAÝ»G,J(GÈ";ïÀm*ðÒÕà(¥—uzM=?»È"0ÇQ*ƒl/‰ùé¡´ÒEþj*€Ô5°Õà&Øò Óh%ã] {ŽÂý¬£ØúQÁ.Øš°9k"زPLX´"#(fõ·I#â¢ht ÷ͦð¿ '•Y&õ¤!ªbmJÝxã%Yi±¸ 0% S=8¦3pÌØç÷¿Ì¦ÇãÅÈM„Ë“ë±ädÓ5Ebî}BÉ–÷P=Ø]¢^ ®7TJƒÓCþ-:µà°ÛšK€¯Â6¾—ÉpzüÚ`]8DÉi˵M…û9\XÐa{34¸ˆ™.Þzå?6àRXˆÜa•ïtd d†æ6ÿŠº7½¬˜¥p–ÙDÅöÛQþ9}¹?g&„°4ÅŒ¡ß H¨¸éXX “§ðÍ:¶K0‚GJƒÒ&&Τ W"rÏðŽø“LÆMôžu—F^•Ê ƒ|­ÁDVÂ1 ^Ý×9ºÙXí'UL4hX3 s—ËbH†%Sf™ãü~p }ÑkÔiEH8 ™aý=Œ=!¼ ÒÁd­›‹uÝÅÄxF¹T1þïJ1кŒ€aþ]iwnáØÑ©HB*¥!â‘„I|EHPô‘Y{÷2Ê/‘8þò¶gÚ!³!bD˜â(KòØIÇ,7ªt("TáS¢…WçD¦¢:T·£Ý0¢ÒÎ&_U€$@Uðý† Bc¦ø æQ£´¡ŠD½ä;=mAg£*„ƒäS+Á¹B0'»’%×#ÿoý=þ"eáÁV €:)‹ñ.yí±^4"h2Ú% AÏŠ€ýùáIõ½2A³]cE:A>hSIM£˜¥B_ «l8&4÷:5ñèÃ|–§á1Î!Í I¿óùZ…U͇ßO/·ZRè”øB ¼%mˆôιOfäÎÕ¯$)«„,¦¥˜VP-x%´¥­ìÚã ’!`\Nob“ánúÛS5ÊT]ò) @|)%X1W‘}O2E­ADZ—&¤‘ÉPñ‘³.> Ý7Jõ]8 6H)i¡Òl{c@ µ\HiI÷ˆÉ̺Úõc±N¥Å`YQGÿrËÁeÁˆ¥Ö¿äÉÕèu0še¸ j&DúRä!¢YC8\ÚÓ@`O Np}î”.‡¸ ЃaMÓzVøµ¸ d4 Rn(<²zƧƒ"ƒŒ™ÜR¨‘¶¼t¹šdà”±¦Ú·s‚Hw4¸“t2lUÒ$žB?¼ ARž D>&ýV¯Õ~ÿßæQ¥Ä|)0áû,±TÓC‡à©tȘ2µˆõ§Táuë  * áV…lnàÒÄV3­Tm¢†Ð¤zšL~ ðƒ¥R0Ø‹Òy”‡‡y6ž~‚ó ·£ö§Á[ó*lÒ´pD‘à‚‚5¨Xµ_".æ—s¡fì¯0B _Éb_f×ÔDרÕˆP º¸¦ŒO¾oþ©)z8|¼KÚÎ¥‰ g­0R†ö ¨ð[¤†FN¾r»ÀåqEË-„,È()=¼íOÜ©©)‚aÔCÔÀâ[Óa˜hV~„­J =BµL)^ŸW~l¦~j«S4ÝиÞÉ®§ À9¡’JVºïÎ ýZðžŒøŠcPûˆS<å" ÿ4þ‘ÀqËr0ÈvÆ[©¿•JzôPFÐ’00@¸ý¬žŽq€{L¾P­‘K`AÏ>œ_ÑÄd%(>æƒÒ™è·ϸuCâ>ÜŽ ¬jøv*‚Ì8rþ˜4)ì)ãnJÒ%úû€Y55ð’8Ôd¦ñ£ÞjKìzÒ¨fÑ” tÎy®rÑ^–ÿ2aLJ)éjb~Ó^Eýî3ôS®ÛÕˆ¢“ä0„¶U±ÄV,ôé/ÂÄ‚=&°KŠ,w@•‘E$ÚüméáÁÂóÿŸËÙQGMéÍZ+ѬH\>U±BT¦ÿ˜z!Ò(ùÃGî½S· Ðdf-yIpXV)·NŒQ!nÚ¿¸:  &î¶ý ´SW5DOâ%÷'ýÚ C¶œÒê"*á’¥oþ½à2ä›@ô‹v ù΂^ù`9ØÐ „£€B U.ƒJð X 3 þÙX=b%©õnŠs‡@‹¬ ljJY§÷`š"Ûn„R¨΂°ÊÚÅd­1®œ Šét¼$ DVMM›WïgQìKåÀp‘^Ú9Mx•#Å{ÙP¿(׉ƻI÷È6ÏD>Š.!Ï‹ V>z·K*ÿnx0ðê±̶õ›€þTÖ ‘€fñFG­²2„Ò=PiU«8[Ýí‘À¸¢@ža±³ 7Ô- ܸAƒÚèe!Ž¢kkz3âòÙµè$4ªÀUXÓ~7êŽâzš´Ï¿ :.Rñ½ 섺àîðÙ @<æ ”Y¨\çH8Áå¥~ïÁÑ=.Òr°3Ãu‘~´»Í‹;¥Ä] "6¶oøþ Â_ú&ù‰‘]§ˆ¼·XÄ ô{œ ‚E½™Ûй­‹¤þˆ[ h.)ÿ¶$ ¤‡œ×C±&&ì ú/ÐÄØ ®nOƒéŠBn uóÜ*d‹D‚ðgƒú7T‰EXøŸ»¹Û3c‹ ?ÂqËia)j&˜©xÈj§pœM`MÊÖ%t{- Ãç`‘éP2Àe_ÐBõ"3•0Ò%—.d–´ ±0G,ŸÒl Ÿ¢£`¥ñŸ7Aë°ò‰c‚Gí­ì8íùÇQ_±g!ÚÖµAF|ƒpDhgïƒrÈ/51!Pÿë>‚’ûP—Ú€¤¾Ô%ö )/µI}¨ Kí@R_j’ûSpá@lQEQEQEQEQEQEq$0¤É"ÿá ÀkAï8´Û4 ³ê(¢Š(¢Š(¢Š(¢Š(¢Š(¢„ú˽!&åI}¨ ?¥z£6©,.ؼl¸«Îün@Ã_ª&Ñ<¢é^¨ÍªK‹ˆ¥oB+â`©P @ñžó3ñ±Ðåö£úWª3j’Á"ëËӽ梙¸NŠ šÆ¢ü’IZP>…$ÝzHO)°G‰pŸá,xÏMbÐ [«°´üD‚–QGcÏ¡Iñ ã™ &I·^" ÙÔü©ízü\’Dg6êì-? ¥”—Û±çФ‡ø†qÌŽ$‡Û¯Dåxîbw |α‰0Ô,á°ê» OÊH)e­¸J­bEÄîz¨×)Ÿ7¯Qá2÷OjMÔ¦€¼8‹™L¡øÊEmÂP k.B$œAnsÎÅt¦€¼8‹™L¡øÒûŠÛ„ Ö$\ÔjúöG¤Ê;SDä÷ò¥4áÄ\Êe÷PI…*[÷ªT¥j¬VÀ¡ÚÁýˆ|îû_ãª)¯ê{¹×°¢슢ÀGgTz†€À®ßÈo%÷¢ÂJú8äÌrô‡üDê Å›_w`LY˜FéÈoüŠ€5ó*v¡Sâà ÞQìˆr4\ðªÑå^T™a½?÷mBÊ¡Gª •(_/ÄÖXäí}bÑ΢p Š< ñ‡CNuè`_éHƒ}vža¡ß)ñ ôl–½TD°ü³µ@ó2~ÊöÐwÃ$_ˆYÖ_j`!ŒžÞ‰ÍK¯xkÁ¸Ai¸Ë%ÈFW§Î¬oðÔÛUaÏP6¸ÜŠ0\Á 7œ|‚T#ŸãYñ@Ò°Dõ< PÄQ#f3¿½)„ȼw^ÖU#z )«bµ¼LlŸÛ׸cB*ì pIIpÆÊ€â® x,ñÇ*Ž&eÞ¼²YK{”CøLSEî%X‰Ib©wÊ"¢6Ÿ¶ñN™©x| ÅAØseÖ‚¬‚¢, y´Ê?}¦Q¾ mß0‘0¿‰²û:ŒÒP’Æ‡ÄøÌ ä7Qƒn¬P^k »â@âð1˜ð/8ΡkÊ˸gqN4ô]+P#¿Æ¸ÿâÉãsÊ hœ$ ;HÓ’NÕǬ‹_ÙPC`pÙXTû£|ÅØF‘@g¹f„/&,[?e²é–1,oÃÜld$ƒ¾MÊ´ÛηtªwÓ³û·6¥Zm£‡3‚¡Ð¤ø"S“õ¶=À< OXyM˜ÑÛ¤ 1ß%iñ¼cC#Þ_’©6gÝ(&ËíYÂ-ø4n¦Á{Æä5Y*›Ë8Má9%öœ f¢5¾IVrfž1DY'ŸN3êëÝA VŠ©SY.l*p€,œzTRŒ@ncã2z‡Cø§»õ)–œ5ª¼F!Jn=Qt8€e¯¢8dή;›8 =²!À{PÆn™‘¼B£EÊ«ta¡¶‚Q IÚ ʯ‚ý€è ˆƒ&UhÍá! EIm¡Fñ7·˜á=d Ú.Jc„ãø @Y\Ï„ŽGw.Wkbpš¶Uv:µ¸BœÉ¥~˜Ð¤ö\µãÔ'RŽ¡Æ ”šp;OŸ¸ð,Ô%—ìTÀ4I9'‘Çû↧[þ¸sCR~ð\xT¾ÊÓ1ô¤mp&Þ/:Éö2šœÂ-¾Ž‘.ÂŽŸÙ«œ…kh¤´§#ˆ)ÒM›*‡.­&­J.Ž#4îÅÖR@;`)(•IîXŠ™çÜÂù_ÃÀà .šílPJ‘?h(¨·6(—ç‡,&‘ VÐÚâ:d@W\ á…˜…H_@%cyzê)-ïé‚íhž@{„PHŠp°Ëµ hÄ”¡h<>ÉF°‚ÊÆ™wÝôà•ò),„FÑüíÅ#øãÿÀã¨È-žL%kš S WÕ$]?ZHŸ¿…tN¼0Zl¦ŽÜÒ#Ï㈬ÕqúR² ÌUN0 TyiR™¨L«ŠØ¾(eî ‚]Wj½o»ÛÍ‚(ÖãƒÕ‘ߢÜ1?ÖWõ?š_g+†€Ð6;þ+g²S‰,:”Ãîqª4— =Ä«@à°ˆ:˜Â…HðÜ>¹94BP²µ³Ðþ&MŠd7¯PO·­ƒ ¾ÐöÏN€dä.:½Éo\±agJþ 2 Iôñ~$=1Òƒ×Zö»C]`£rÏ Õ›P—™±°ù$¾õ ÛŠ7îÍêJôõþ’–Ð:5&+PGZP™ÏÖ)šâøBºAZqÀ€P}[E .À·-\ò¶îæ‚QYÕ‡Yº§ÛŽm”V?XÐ:éFiL}ÀtLú1c¯›RR˜VcX\òeÁµK ßýŒÎ95ƒD8~æ§Ø9—‚šÇŒ)kgêMŠ÷Ã辘¿Jaôîs„,u «Åúñϥؖ ( o¿Ï¥÷û¿€Ð1Ò" dé4Ë2P©Œ†ýð°tð»bÙхĶi¹QØà^€¢0BBŠ Ì0@ ¾6BZeªåßê%­E×û…â˜2dyXžxª¼ :/!z"—gPr¨•«T×èè®% ‡¿ <6d—Tš‘Ûœù#ê%ðfñ!Õzå ƒÃ„x€€õ…Ì ‡3-tJxÔkŽœjÐlòÑ+¸žÔ8— Áû K"[ã¼;®2_‰Æxm°VjÁ±fÓ%D§ªöÂBÀN]%_E, ž÷²ùÞß¹}/.à#'ù^¢Ã½Tÿ `,Ðt#þ8L€\O?Fò™”j“Œä4Çø*òû_Ñ«|&ºŠ™Š|2ž…nRîœÊ¼O—Ån23,ÇRªªíí­ x(ðlW2NŒJ‹øf¿À6„QÐ"€[iÐ ‘ÄÎ0#/„qo$P“;ß71ÿ2_qÑ1`\T Š(¯VƒºÊŒ:Dý¨‹L*ÀZ–&/¼(Šþ쓽Ђ¡£ÂÓeóŒà®9Iž¬ŸÑe ù`Á:ˆÐ0× ðvçL§ƒ(X€{'ÔSoý{õ†¹€X¯a&9ë]Œ€Âú=¦ª/†n-Õो'´$€Ôþu¨û„vDBݹ¡Ã€ã‘Â3„3Æ—E~PöH/M¹­gi±ù‹×—ÏŒ?QžªCJ…eŸ¸È=ÀŸ¢7„$ô„Kóâ‹)\/™ã‹B¸ñé¤J×ÉѤB€ŒcÀÀ3Xhq8’‘úe"t¹­ßñ7îfp‘Döi´¢âLU7Zx¸â„#Í—:2Ì“šQç±V›H¢2K).¨“ðÅG­ÿÒ Ùà—%K}¥4Á·PŸéSÀ eD×2ÝH•_LÇ ^Õ’¦ž¶¸ÜN 8hN ¤ð*ÈAíÓŠP;"ìõ%?­¶éz0¡Ö©U¤_A…iœÂj5>Ñ üÉMäqW°^¢%uh$LBb3Y»ùS¸Ó$ø6 Æíõi¢Q F“Ð$…ÔÉ¡0Pgi§ù*—ßÔ¿¢Eô=.~ùÞ«=VÚ¨©OE¶ÖODÏût8TS·’èO¼”•ÀXÉA ozøê¸»ôÒ?~U¡Á©¤‹;ÐÚrP <±¯ãôËXtÞ¾Uî2è'Ä™¸Ë›~‘¡„À\~Ah”9ÔBœøµÍ•{|D”x¶%`·ùT ¤‚`Ćw+ÐphàÏëµ’Ô’KÄP” l[-ìhÊ`~öÍz7K[“2° n¡ä0ðJ¨@]j5ˆƒh h™dÃ@>¥ãÁ~äürª)~–skÔ^­ÎwX¼O蓬·ñaÅîý3°P‚E @Ö½í@V·2>¤ x"(K£^H‡F UeA+í&ëÅ,ËéÖU0ˆ”=<À^»z®&u#soiã ÎÍp«Q1£øøRj>«¦‹¶:Çߎ»5°)Â5Ø$¹Ö«¥N]cKðÆéþ fˆ\~N+(þßËæ¬(YD -—çÄØ^‰\7OiÀ4õ'JX6T¦pDâ@Jx±( ¯š`ê«°ŸN} AÑ¡PzŒ#q·°j·A`eŠ)¯þyŒ‹xH IÈ·è¿QàñVÏK±.cÝ\ o«"ƒØ>1]`è›CÃ"eji¦E ??ãòí8WQ‰µ“:EƒO>eÆaŠ?Øг´b_ÍV×âJp¼^Xп–ùî(ô0SÃóªa\º= Vå㫳Zά?¤êèïþ«ËÍ%•&Ǩ/ßâv‰ß›„"!¦&ÃBâ6QÒn@   8¼‹Ñ%e“8mè×¦ÐØš Ñ ‰#߈Ã:­M‚OTÉ87ô‰ ؘáÅÄR.—ê%àoð€¤EË\FA³“kö°>ÈÞÔ uÃÑCÇl%?á- ZãÚ·øe UP$P`a½†TÞ©º‘4]×jŽaá¸Þ)B'lødVžº ¿öHsùÖe “-k:èÀ£»X Çóh ^ÐCŸšŒžf€’× MdæÐb¶øUQNãà Ž]d‚3}Ñ“ý  )·/Û@ænÖZ݉2Bjg£Žù‹ .‘Éi=H|AD¾Ä—Àm¥´$@Ð t§$:„ ÓÒr%Y릂NåWã…qw“´ óôóÂE,טfè!̰LÄT´tËexäxñXáhEÔÓ€Òëñ“Ü|IÊ}:S/hú¦U¤¬·^PÜ£€M0`šÅ9~e4hÀ6špÉ´K~ÁˆýÊ Lプ¨^û pÂdÆh±ìcd«¤«!Mä8!0@f/e GŒè‚býâpý@ê)"êϼç~Ü;*PkH,/ñTf:¯¸Ñ–ÌQcb,Á Àm¸Ì-±3ûV#UŠ«Ê%(1Uñè8aDħi± *È[^1oØ´˜C÷ႈá¯M¡hØÀ4 Aº Z´JrÌ¥ƒ¦ž‘Txš’ij(¬O~½ÀD#Ô¯ \Pª’ö}! :C‚NÈ6.Šƒ°g Òé&ø {»´€¨  [ÎÀ 2€:`<Ìrçaf=†I®0ñêuóà5eÝawOÑZÈnÊB£ôˆ‹<ÄšDAbÁF:pGbqÍû3‘ÛÁáv$„ßcbô£Pl ;È©«ü¿z“2¬¿œ£Ô>Á"]BÿG¡yN@h“‘§Ýz°[ZÝ0µpN!žMàeGe2ò!…ȲtÄn¡eÂA®*Ѿ­/é©|ü&nÛh 4(㨆bˆ'[a®åHd逅q¿P /‡kÊ § ˜„€“`²có«Ú‹Ê"1&®…i÷H˜a‰¼Œ˜ï0¢·†Áâ(‰¡à‡h-jqË €šˆi·Ô '” §³Ñ+Ê:¯‚1Q5+¿Y:§m#$fÀ÷«ZàÛñüŒ´C³>äSÕ%R±:i8Ò‰Ež‰]p¤Ú“_æ* yøB1˜Ë’-h÷Gå¡éiËì™8Òˆ `¤ÿ×éW“ÁFZÙ:ZZ€„À–µâè%R§$`AÁ8ëgÐJ2ŒÔ%"88|9ð4ˆB<c½%‚éûJ¥È¶e®×¦¨±a+ÉZ· ^©F”ÃS«Äº¨+ÖʈØF^s¨AŒDZNpiÁMPS¢¶|圯×èßüyÊçæBÏÙØ>­Œ ,ðƒ£¯¢—ê¢[Th ãA‡ ·ØØu*MtJ÷ÙP<)ú‚¯i!"á¤&§oxè£ýïðÂÅÖéÙÌçÿ`®Œ*O¼Ýò‘¿$¼nÜä#ÚP#“ûOï^ŸÓå‚@‚=@ãaNåžPLi¾ÈÀí˜íÐŒ¢O”D>ѫNjE9HŪX`ís(oÜÕº6í¹cÈÅcíz–!_ ¤«±o¨Æ#Ï­c莡žýê(Gapþð²†jaä˜kÒÍ­\ôí)tƒNOä‰ý¤®”ˆö=z¨ÝÃSqÛ²¥êý%C÷xt†Â¡zήî[ÀWA³×$¡'†èßV—ÛµNË?ãü¦¡QAݹ•LÑßÈà4NôHPÀâ0‚H£´WÍ«‚ý^L(Üæ-ƒÁ'†¶#DÆA`:c†uûDˆÇÀÚ§ƒ(ÕTC­hK¡’qƒ@€¢uSjRÑ¥ZÉ×hsàÎm²ÈJeä?OÌ¾ì±Æ*0 gÊè’-â;ÿà A£eH–!až6ÃpÄ…iÓA±‹°:bÁƒAx’)‡|T,n-: ›éî?üˆHó2>|þ: R^ààLSÃp«†f@“Ãí“à=¢9 sΈH:;0–5?x´]Ò,Òè‹ÿÕ°)/µI}¨ Kí@R_j’ûP—Ú€¤¾Ô%ö )/µÛ€,䪠ޱa¦rü”QEQEQEQEQEQD>@{ 2-C`H›ùB6nÀ ´óÿÚ € aO P <³0‘Ë(CÀÑÿQ~ `«$ Ѿï5€Ú(³Kˆe’+è$©W²ÀIñnFQj£úO($c:ˆï»c¹È(¡|íÞ8x"Žëš¸Ù½wíoà@ &_7ð+aæ§”B€ ( @ à(P€F],0 >˜ F&ì #8 4v Ìvô ÛÄ¡ ËÂ@,BÉÐ0€J¡oü0(ñ¥äP¼k¥óÑê4Qh‡×óÅ(o‚#ŠE 8íGΚÇ@ zL3zº3S|ód‚ˆ×«OÀ ( €€ÿÄ#! 10AaQ`pq€ÿÚ?þ¼Âxz¾ßÄ‚[Œo ¡.8Ô)) ÔýL­oÑÝz£Â,ÛÃIV`SÔtsH« =™p¥¿0Ý;³62ÀPËQ óGŒ¶.‰– ©›ÃH÷%‰Eú)xéU””…¥å| e¼ú܆À$ÜÆ£¢xŠÉMf¿.i·8:OÝ ­/–m0â¹›+ïRÄC@4zMLÆçM ‚äEXC‘Šð“Gˆœœyb_qÌYìȯ4Ùµ'tÌæüK`…¼ô „~Ñ7é8íŒyNK@)´@Ž„F§ÖS^·BdÓJIÏì«bi\3 øó…Oø5 *¶K…„&E‘Ò Šš) gPB4™qººÐ!ã½@GÑUj;ñ@¦æg<¦P[q]`oKqzFSó`XQEÒ¸ îÙ\ûALÊbøƒ"Er3`ö±\ÌPãÂIæöû9>D¯ MôÜPà,ù73P¶4(ãQ%Z“hˆÊîu]އRNG°îca Šp*’ÖM Ñyr¶A¸0@ ™Ã¨P" ˆ‰|¥S¼`r+¦êY0òùPüé|`O†~˜’T¤ô›À,…>P'CØ,•Ñ0¢¬;áI €÷rT˜ž•¬3¯K5ºObЪdÞ€‰ 3 [©­Ü>ínÚs:ßåo9*IF’#Ó½òá‚Tâa„ŠøK‚m-¡qz(s{¡Îà6Ò´oÂ*1Zó…nW7ˆ,-Šx&Q‹Ð úåsT¶dŸÀŠßMÆg=ŒæÜiN{¦Ú"iXal2k!—{w½OVÝa¤2ÐT9`]&×ËÏ=£g$1¾Ï€8Å÷øó„!´`Ÿ…hD°‘4„ T~ñQO Jå§øæ—Ùøxgõ!)ÆF{Å Šs… ™ç„°ç…ø3àæµ€VLä”v–_ ¯IQ\ ‘^lH.‘…Z¿ÓjDù¾Óq(ÎR‰ÉÙJ%,UWûD6;;3Ð1_5¤j3i\=Æñ:¢óB­ Xyîû£Ö¹—Ûã*,OºYRQ Q”m-t~ªa9aŠȼ.NˆfR‰°áUÔ@ö69‰Õe)ðª®R‹>ž¥h‡ÙçèÍ&ÿ1.|!³¶$í2/´ÙôN¼ƒã:ú]'»ÝÂl>¡Ò[•ÿŒ@Úâàe ü•†AhrV \ÄzõÉ Âõý/Ø%¦Ø±ñÖQljg:ÎT„”J¥>ª p¾a2:Å?5ç×N3•Ú¨$î-|¿Â?ãEŒ´B£˜m0<•´+oÈ,=D3 Pñbu– O/7"9äè]•IÇdbþCöJZ¯:Þwøèúñh—òfgÁ*uGÐZ®3Ý$¤8B§Ô.$0BíÍ“T3CÛ²Mæ“°`¶óÐ ]ÝЉŽq“È?“YÁ¯<°½€¼b¤ÁgÝèñ{Á :H%ÅtŒLCñH?AÁÀcØøðà¿h¨)ŸH@_èþN;ÂÚ:ê-ÙÚxVq±Áêcõ0Úk¸|A€x\û@(™aÁDŒQ?pOdXzó%=€Ò¸èJJ¸†þ!°á_9Ä;¢4,Ÿ<¾2Û@W®ê0*:ä|™Ðéu\𠉣láVéÁ¼ ̃9Š@—׉ÛÍ£ùOÑÀ¡O õxduOµäùí°L±†Là•íýD‚B—–!&Ý€F³9O*ÊÖé>ÅE ð Ê´Íì|•QQzð§@!DÐqw¡B\Q«±³ÊÔÔ‘#R@|`‹$E}f _L®w¨'ð‰)b”q›Uœ{£ëÑxÞ?vðTfJŒD~"HHžg x–€Mªq"…¼À¹D£@/1{à‘Ô™B ^e”Ç   kÏèåœhMÙthPOÒà _7£4`g˜ÙÐdwôR`Š’CöÁÔ¨‡[ *ŽòŒØ0¡Ú ܵ¿ZTpÀx†2sqYäGÐÓýSSâˆCªÁyƵ„|–¦ühÙ\(!)J¼cABÀ ²·W¨ANÙh¾3‰""4[ÔåDô-±(ˆ²%«‘Ý»g:_ªJÊ_ò| ï/Ù™£pÁ2†Òh— õy` ÈÄLìFN„šU¼<b3ëÑ$“"²,½ñÀÈnå¨g‰dsŸ-íoBaãïj&”Êþ;Ä#ß 'ŒÉG'ޱ,‚¸±µ]+SþÄÙÛ)'i ‰"£€4F'¼Ôr„b3ˆ95\\xÀö{þªö; ò(8ÃD\c˜ £ZÒ q«Ë§= :Õt!ü*¿“Ê’_ªŸiyДީy;ñ5(ƒq¡Õ¥MŒ¢?•Z<îÉà“ŒÔLÀŽ{–,‚X¨!*‡I(è+Y jðñ¨ÙiJ:q°ÜmyÚ+ÖÆx5¦ Ô/#ü@ÿI1ðhË^ öd²{”¯cUذšÔª)ðVÓÞÂ.Ü6‘ÀØÜ ø·¤€ÿ é.=Ø›H‡×?¹óò{ŠòT‰C½ªBä“!©@ a-Q „ˆ~L{Q=zá &1î<_Vª©ŒÇiH<•²ÃfÉŒaÛ/b´­pj+옊â˜KC!&<õ3›*¿1‚Xw2IßkòáÁº}’ø”"¥vJ ûì+У©*y£ zûS™HwvBW$ª+IÀ¡`–ƒJhò•öÇ–6Ei6Úá£TÓo‚ÆFJ#2< ‹ƒ§Cé›Ò¡´9”IŠÁÃ4à $ÃŒw²¢ZÎM¤8“ÅÈØ ³Ò†Ñ+º€¬x4 ÷¤#¨(êʆ!;¥)ñ®m!öÅC¼>6—ë¤ksM4"‡È™"Ðɸ3œXlDà‹\t;œ[¸ÉD­ ¤û¡±E±r;ýÄŸÿÄ$!1 A0Qa`pq€‘ÿÚ?ÿS©S 0(è3|ú†C!È Úˆ@[Z€´Íô‹žªV1bb ’-n§a8dÿk€ j§$(‡Èq@2ÂZo@µ@yÃM$$$—` t°¡+ûØPŠ-@:46À÷o$ÜÍxÅSP¨‰øPÕRã2È"˸—¥8¢ 1³x 袧äÂ!u®ˆQ¯R†{wðVÀœ"ª&LÁD›­`œµMå2^“{œÀrkIª(}€Y5²¯™p B¡J#õÊQD›68èjQÅ[V1¨°1…D5OpJl*…À̤€Ù4­ÿøÀPa„<ƒC ¬ñ24.J¥òȈ9œ–NA@(±laÂ<©ÅPº–ÆAvÄ©H¶“$ÝäRx ÄÉ5‚Ô|Š#¤˜@¬D(ÈF –=‰©²ÎH@,A*€(ˆŠ0Èu°ª¶ÁÈ$ ø43Ëa–V@*ê.hÇ÷-Êšˆ‚" ˆÑ1ÇäWïry•ÄP'K`v’9"×È‘#½ê‚ j0 ¸‘¸²¡zÜÙ'•ÆGHÔvOÜ`aä„%2Ð!…fªjÒ ì$Áôz ‚šbì3›ØÂGu² ¤BƒÔ>CЈA‹‚*—A©½€€ŽÏ–G†‘† V/«P¼£)킹;9iƒ%ˆ¯—R–;Ù’²(,p„#U–áV6‘PË']H¼!KDtg@ÌbªH±(© Þ—Ý®Q+Á†.7Ó{Þ¨Ÿ«ˆª »&KuFcœ¸1‘5à(!"RîÁ%Ò“ë«£x™•ÆQ‘ºíœë(Rr§PAD(ˆˆŒM?‚„ÜÔQPX ÁsDÀâ'ôˆü/í·3äÒ7lîEb†l¯Ã ÑtÒ1ëi\ª¤'·IC¿Íµë°fFbdC0>™(5Pb£L¢ƒä@Ô¬EˆCj" <)-%rc#\çÈÒ)F+Èü":¨P¹Œä±î¨nhD4$ òÀÊ«DرhšâeÃiý€-¤8Ü4Ãëú#a‰+>P}"5m+]I ˆâ,Eý~C·š’¢ R€fÄeyE«hI]r†©`•OS÷ÀiÂã Ð$¶”lC„¡ŸE>I”}>Å$ Õ!jÊY.TÿIqè;S°®L#Œ·# “(éüj7H°`;d×OXÉk•üjnû»–' óØP$‚Nª…°l´+#˜PQБ¢é.ñD¡D”‚ƒžc6Lä.Á©S¾œ!kæ9]r" U¯ƒ‹^èÏH ìÍÎÕ :EYjÊ{Å" I³-”‰À°1aˆh¸Ã"qè=¥Uju ”EQåɲC@.±N=`ÖCë"”ª# —à®bIÛBA¢¿ "²]Äk¡ÒžMŒ!QQ "V€[È ¯cgÔóËQ`”VNᑉ³úΆ€®\@¾Z•LPq`W;`š‰Ž»PÐL. Å÷­ÄB† 3³S 158I¥vSMOT¾Á0Š@tð)‹å \<;ÐD¡âRQv‚‰,T$À]ãÔåW¨“¼"iE ÄÚN6˜ ÉõÆ£GyM©ÅFÂ#[v}† ‰S^Ä‚.›Ðh!º*]Úáiï-•+ò«Îˆ,K I‘´#+ʈÐ.§/Ò“VJ„„ eˆF0FØM¶áápx1cFµ@ƒ ±å†1 Š,4 i.5 ¸dŽNÖˆÆj ™/Zê‹Z5<#<û 5Iu:€™X„„€£`åXЛ83ébµ¸Ü¨ŠH”D U¶Àˆ0Kñ°ÐÃÈVPˆ4½šôíÁ”ÐIÁéý T(~ ‘Gò†9ä-#í2„ñBƒèGØ ]+“ 7rÐF*‰ƒ£JµZhÄ䪕•ìQ2šð  À’VÚ¢”·€QZ‘·ÌŒnM0 mfEç"U8¨u 9¶•‘^^“èWYÁ]K`A\â '+NdˆPKYg a+ àæzCþ¾7´B87Ù¢!‘`¹j¤"+í 53AUÅæõápQ_CÞŽRÙW‚B+W §Hn"ŸPIЦqT1#ªB³ @\•B„7.f2 †€#/‰æšŒeÑs¢×a~’Y®t¹ ìÍX#Ds°ºò”p!§Q–‚ò¶D äJ*´ªVêâ¸`H {ܤÌ-ð +pÐ’ºÑ} êmÕÖ`}ű"âp¨Æé†RÔdQ¢ûA šã‘jñh/a!õSUqiUÀŠ7? V×jmR: ‘É0‘õ¢³CI0s—IQWÄ® Ž:tׯ)à°˜ ?Ô?ÿÄ%!10@A Qa`PpqÿÚ?ÿêÀÇKÜÇOìÌÌÌÌÌÌÌÌÌÌÌÆ à»333333333336 Gð_ §lžÁ™™™™™™™™™™™›9ÿ¯‹¡a¥Â¨ rŒZ?å},fä»ÓAç ڣ3š&q]ìá·¨.2wÖót¯ÈL6 V Ó¦m 2k…GTqr6Ÿû_K¹.ðäBÙm¯ozæ³7Á”£—ÈiðÙƒ¯É#“EÆöÃñ¨[Àká©M;Íò½!ɲÚOCP{ǽ ¾#oÖo?cÑ÷(áý(?zÖÄ¥C‡— >¿ö¹[,_ζŸ8ò?å¦H|Ú}ÇÒoH„gË ÈÑGá„ô™ÀÅÇ×½SV‚ z×Jÿ ½ÊÙbå´ügÒÿË_é$HÓïõ§Eø>~G ’Ww_Š[Ô,+-M͉*óó!@ú§œ;ëÈC+Ÿ°ŠE½?NO—0¾•KáxiÌK¡¾š6hCª¨[ŸŠ yäþšbžº_;„…À[DÒí’€os‰°” µy(kd+×zk„g)]<øS¾á#„·"f<#[«XÙ’Qg¨T§qDÿVBM‚4N/Y$4Hqnhâ3R™ó €2½âh2 FslGØ1øÞ&9@>©C±9… ˆ57ÚÌÈ^¹9D@”¨¹ a8÷m¶LîépÔÕ/–KEâ&lTM¦ã£Æy ©Ùª„;ùm¨N£*ÙÐ+ŽÒ9ÈÜ¢Ž !'P8sŒ¸ÕÛŠ·ëêo¤äÏ7„פaL‘¸ú½'û\*ê~Ë3þ€í “ !»0éé +KXe5GFòÍä`ÒúÉ{H>m¨Ú×5³ ¶ÛA)M²T¨$œ‡“1‘/ë`NБX!at! –Ž3Äô˜Bàj‹;ó¤¢tâs+öeÕÿ`+R½´@¹•`7´Æ'– aîÌ.Nbdºóµ, °~“+Y­9yC`3¬‡µI=ZÍTÊ?Ë|™g½Öƒu´œÉH^€×ÍæA*^²8-\¤¢)*u$á«ðý1 ÜtÒJƱ–g‘nñàÊe¾*Ò¶AsWÀ×úP³üÄh±ÃIÑ ‘°¨0çt‰O‹×´@qm»2‹ ÜíÈñpVÒ $b h „aöW·æv¬¬!aS,šÓAWÃ5•i³Ò!è±eÇÒ"Þ <}í@í›àsëÇ A%#ÿ„#)äI‚Ñc: 'ª ÕèüG\= t NcâØ z‹¶£{A/5{ yȸòRå,zN¿ ÕÜÔÆ >WÉÄ⸋%-¢'¨ñ_ù"…Ñ£KO)aH‡ÒͲÛ58DÞl¾ž¡öÌ*rqû±ðj¯áÖ‘¦¤¡íôæã¡#yòž›z€$ÍD(j+ª@$3FacPr=%Â>éÎŽYQŸÑï@*"e '›­1sƒÈs½ïþÿ¾0Ž2àæ~q#íœwáÀAPtÀG®Ø ð)¹i²æ ²au(Ø’lºêGÞõ¨XÏÝa ¬jT!+0q`^…CÔÆìR5DÀw^¼2àÄí ¦‚yÀ:ÌLF¨kÄ|„šà§+ð !,«2È`TÂáÅZ¬¥*E½] ))½ :7žù‰J[„3øD—î5g‚ Å1ñºüõ¿¤@EV×p¬=¾~F†G°ž¾KÆëÕµ–î@F i5I±‰‰Js}¿ªP…€Šœ{Üå8q@¢©¡÷MU‹#ã;ÜÉœ§ µ» Æ ‹eUpæ`¶ÎÍ‚Kõ/Ë ðÜÿ»‰–¿®B6M»«¬ÄÖcrß @jX°œËP¾Žœ}'2¸ä¬ÇAàçgì%9B"{„Ná`€ë);îïEhS×,ɦ˜›ÑÆf;…›JÓ˜ E@ñå. âÎ(ŒÂˆ…YaØñÂbDU‹ükcÊŠósQ`R‘üæGöL‡(X†A¶·)Ê$!oäî`Hã”RB#™Âªö„ì†Ó¯Ýw%›¹£ÃŠ6 7»ðÞ¸ eVW Ç2˜ŽJâÖò’€0ÌÏèVâ$ÊH’à°z|%PýÊ900nšúŒž¸±<¶<˜ÐFäi.c¸õ‘Ý•q?¹d‘œäªD8&€±N-¶KHê@­$”Ó´Å"Œ &†€EBnD‹ìÖÍÝç/ÄÔ†äå• ¡¶&bPëK-APPdEÐÐÆ¼ÖY)¹àŠK:`o&…•FHêÝ`ƒÐ*ŽOÿžV?žˆ@qÐi÷ [9Í`i´;yJÜ”jif¶ ÷e“MÁ(7íù< È„º³¡\ž]Š-X„±|HÑŒaêãÝ›B$,HãÔ¶ì…X­^2¹½[ü ˆH…fÖÉ 8"òþТErN\€âÀ5Z*F0õ>B4‡ ®@ „•NE->ù&­ôû…K Sf€±…Df¸ Ì=Ú Á5ÇÑ7@É`#K—€–Lr&Š™°ù Þk¡ ¨@Î$=Ï[æ8ž·ÙtŽÖ0©«B·ÎØê‘ŽUê­TJKK•r$Tø¶/Ô%1Ö:A¹„EÑ.¾Ï–°ø`q”L e“ Ÿð’¸Õ2!B/oâ'Ùj'ø»zP¶Ò~­Ž~xšŠ'¿Ï ,TˆÌ¯RÀcèØ«Uƒ½¦ññ&ˆ ÒgCѤЖ6ÖVñ¤0 µ«²—"ä­„Å%ÌVRwØ&°0+ÊÊ‚Ãà†¢ðãW*1à)%¬1©b ¶AŽbÛ‚G¸At•ëþ£æÉë§0—ßhŠ-ANÀ…Îè À¯)' #Ãæó]ÝÅ}¦jÔN•j Ü™»~‹üJÏ]h&¡P"z@ªD«`g­¾§!¡X.»Ñ/—O]¨‘al+ø{ÄÜa;‚øŽ”›Ëb/]Hˆ¥1l){êžÑ%å] ¬íˆT€Ó§½~ÊÛƒJbIÈ %c8GiiÓ Ñ|:š¼?'ý øŸ#†ik8"mP„ƒYJ˜ý±;kÐ8&M¬äúENðÕK³}›N‹J\6Ô9;‚Ê!–/ÓE©®Ï` ˆÔ #æÖKÙ1*ÝEË—™b,Jr@Ø3HsœŠÈ,Èas‚”È'D#qÓ†ýfž×*ºN×½Ú¯a‡~½©•ibÏN3îÍ`@|z·ÒKË5ù=y¤F¶IV*¦™ 𯻥•åY'ÓŽà‰ôµ€¡Ïà]” š” ~0€X4`Ü=t«ZN} ¦U•So;ˆ )é» îÊÍBI)ý†¡3p±9Ó:CÙ®Y–O°HÙ~ˆiÈ(8Á8ÀRu‚­û„N/^ªÜõxŒõا¤P*˜híÂI¨ +B½2e¾â¤,¤¤¦Ô» Õ" 9'}Ì^ÑÐÞR¥ë¨1ÈÒÎT¯–.‚ˆ” Û¶ÑéuÀ›vGþ^x… elCCÒA,8«Û^]H2ƒ±„å˜ì¤ž5iaÓu=ÜB»ìÔ, W1ö¦_ %h=¯„¤0±¢õˆ ÀÁ‰ÆÜa×̾…Tª ñÓr ÈŠÞrÕj!ßc*Uî³î3³CIJ·v&­¥8`ˆÎ7 Âl±‘#€WÜ'Ë íõœ§|½ÞjSìFq‚` —ÈãMR†X=p \ éÏì5µ ­B µžaÀ¸P^vNC*-iÁÖ`¶ÓÅ1§ž£báÜùK-UDÞå»%¢/î§s=Ç¢|,ؼh¬¨K‰nJ¬q¤KÉf€pÿíþ (¬F:鿾±_«ÊEìë kdf ÀìHŸOq·6…~ÈGćßaÂY‘PL€ßˆ‰Ò€›¢‡jrH¤ÌdvIØOˆPyCYþçä*Vr´m]oaÃÓU¦éc›ú V‚%}¢IÕ$¢"ÔúË8À](“ Xš#'‡êÌÖèƒ@‡!sû^4bDe„-`%ÑÁh=#Ó¿ÖhÂ{Έ5€>¼Nѹ˜JÛPÄpŸîÇ/M‘U,¼üÓ+@˜ƒÕÙ\ˆn=½Á'Æè),%D­(^ 4uÍP"Й*±ÅÙ3.~4‘£¦—¢‰uO‡^ïÕªì5 rþã|#VèŠâi÷Š(¼ –M…”YÌ·¤éS,96[Ÿ;NOFbÚ €ÝÔ¦¼‡ÔÑ` O$eUú„o ÀUÚ±÷ºXF©4Ä¢5{1Ó¨9Übò¦vuR* †*Ìó\‡‘¾v»HX*°û¨î zƒ¾8¬;è¯3DªŒ†v¼Ð/*nà,3°ûJ0d]¢°yk¤ï]$K3|é%¨‹%C*pœåPmŒ@'=Ót2üTlÇ{†9ÑŸz¯!ìξè?Iß-(DâE°*Sè•F°Õ¦ÿÓ†n¶–BxEƒ tü«?8¨Z_h„fNÜÄ”¼Âû¹ö&›®¨G,S "µ3‚õ‰ðc9Þ†…Ô>[8>‹AàÁ¤{ht éêƒS6Ô2hf2`^¦'ex©„(|šF(èU ±&c £uT’e ´Å»`̈ÂA¦Ø-õ?`²IÕœL P°qpÈù¬™f3\­¤^Ñ8_šŠüÅ#O@Í2R­Œ‚a5)IøýˆEeè Fø&VÀ1âkî=í¸=­ °éxj-†¹jô±rö–˜á¨GáÔã†@Ž?v´ÿ‹ÕÃ\‡Ö Q0Ù„]£7fQO‘ÚÓy@B»ð÷ŽBG×€¥ÓEªZæÙL€bÇØ `ý`Pw´jm4>jAn!ó]%ÊׯºNËל¢™´æûÐ…"b(BEŒ@c2ÇJý…þ²úƒåÂw—ÂÑ'#ÊcRh·&§ÿ ‘}ÞØ·Âya,#¡aE Â(XFBÂ0Š„P°Œ"…„a,!‚ x6 ‚ ‚ ‚ ‚ ‚ ‚/$0`B=¿¡™™™™™™™™™™™›P#ø/† n!þ‚ ‚ ‚ ‚ ‚ ‚$œ­—œ½oü}„P° ˆ.$ÈÁRòf ªº€àrfýªÌ6 ^kò‹‰ ˆ.$ÈÁRðdZv¦nžbßBÎO¿ßÍ()<¡BИ‚âLŒ(ÿDÖ€è~¿r€z">Jô§Ö¼ž„a]Úæ$g°®Oô?8œÊ¾,c,>Ç9M6¯ÚWŽÏx:‹†Ð \JAwiüh˜ažÂ¹?Ðýs+>E|1n"øk$"h1u ¡@¸”Šݧñ NbA†{ äÿCàNele‹hN¦Â nº7ëoÚ62 Ô\6…âRÃ!yò[cžˆ)`)'<‚ÁÔE,d¿ü´Y=Û×;á È^|–ØÃ§­N` (Ú%lOvõÎøD†(Xd/>KlaÓÕÏXÍÎBFŽ4oªHì‰óOvõÎøD†Ù™!ù¿õ”XdÓäT"$Å} ܾJmøµ)f}kLÕüTToñýÁùHI`ãy¨YýTLÇS“0ª51ÐÂÅxô€,‰J·ñ³FôPΑ~}U¼š\2»³OôúZRˆiùDj{¶×ÿ¡é€q=@ y9„ª¡ÒÀôÂKÔI¸<0=‡2“Çð˜g!TuAV²‚论âÖ@3ØŒö7©Et͆Ÿ3@Ñ‹EÅŸñëþí™3½ÕÎ%Z\P~ØÊŸ€CÖ¥bh:¼°ha^¬ò÷O‚¸Zþ›æ(8# GJe1UR$Š±Ú‡£ˆB·ƒ[å0QíGÊN ‡vTà~&¶¿÷¬"…KnõŒ;Ѳ84ƒj–ÄÄó¥&®C*Q+$´„ìGbFEHK]Œðõ£Ž+Ï„LGâ1kõzhËPi~ù/tÖês¸¸0^¡ÁB)èÄV⃡ë O],… “÷pÑ \ÄÒZâ)‚p7ÀT%ôq:i†Žƒ}Ñ(éPòÃ@´öÍÓ¡A Éþ+³Âº£†¹¿@É÷ˆ" åÄ98Ó”aŸà2G4mº9Ap·RÆIVîe«Sàý€‰$GLÕÔ›fÕæ=Õsåþá/县Z¢`¥“Ò\pÃV¡g Ùã`jP6”¨·J€è•ƒÈ v‰síW˜oüyì‘*˜*‘"©A‰tEµSb)»Èš‰È½p0"€1†Í°œ›qošÝoã(ë{ßM F><šæræ5ñ0ÎFoXeC ¢®*´4tÍDtå)ÊYlñDײ‚™sXÐÜŠ€/däTI8RšÆ 1ƶœµuKêúá²—.Ão£É ¾ëÀÛM@ªËØyâR?„”–¦‹ý*†‚<#Ü,–åÊzÃ9’9£YL†=”šð”?ÇègÚIïÄXqÇ £3”팒&Êj/ÐPâ†áÌR°ÃÍLjFÈ‹™Óø81¸H+P@ø¡g‰ÀJ¨Ø`IH`$Õ[¢, ÈÖ ’l_“1kcˆæ›0€ÉkÄЕ:ÎAݬi?E²¾óÀƬâ+²¡y‘1²ioÁ¢¬±L`âÛå1Ø0ÊÁ˜…Úþ);Î'›F¼0Àó7‘Ò¨dUW%nd|0剙¶”ªî‹;Ó£SFiƒÔÎrt‹ÊˆÓ·  á è¤i Óbð8@è¤%Ò¨oÏYŒÈa»»ww(¬$åüdö€uœ/˜&4EÜ”8Dá8iM¡`zÙºéz*ÌYº2@Æ@ðæØ¬ Þ ±O0 ë”%8hT‚èƒÊÏ:b=ê"³! «4ƒ\P72<¬é—m/~Li øž½LG€ç‚{D½S‡P·4jHAˆ„c¡bk@ ŠA$á­Y 8N‰»c…1(yu` ’ºiøXX-ª¡z1Å…Òm jy¨ÐUɄ꘤€HÔT‰±,,ÜiMÉt@;Þùzév€vjªŒh*Ù…ð„XPàŽ%rÂHI6MB…ç4Ô…$sÞ6£wJGZ÷„"àso.@˜«1BÃÖQAe*LSø t¡!|ËRJÚ§LõNÑ 3„¨½ñÒ\Þ¢ƒ:A®ú"|Qxe´.žižbø4/zåcêÊSžtú@ŒÓßÃÖzæÿK~°ŒKÙ8ÿIƒ¨«ž£Ý3úgR+Újà´«¯_`Ìó’ƒØ1ô…Y°'L eÞÁV²PrÈ@“yò(7Å5 w{r‚ ¦‡aΔk‰Æ à~:*¿@§«“§E¢¡üþ꿾êB…šgkè€öRú! †’€ñ… <ôT ÕÚ§éõ 3™‡5SWcÅ)ã…@`ÐÑ%$ã`4ÀæïšâtyúñöÙ$—@2”(ÑéS 랦ê81-°ˆ•[®ÃïÄêð<4 œ%¿íëÿh>õˆ[B?pŒD apœ4ý í õ΃ú[]`k`Œ ú+õMF@5 (æ…˜ò„îñ‹ "+©°=[¤;E(´€qa&QguÍCˆ’6áTËpà~aªA—D^Ó´°§¼hM*#òÏ‘úvz,!WØ“6ÚS¬Øl†7—çù·‰1{©6öÚ7Œuh€ês\ZV$pÁÑ« |ÃÀ|{:ÓtA;û†‚Ü&„”kÓ')ë¾B[J¬©_eÈí<"ñålöSµ ÊH› t[A^´UhsÅ Ÿq®&áePW(“7Ä*:7•‹`æ^pÖk$ÂŒ¦”£;2øÞÒ'©è‹ðFćt/ ‘{Û}ë=@ XÀ XpçD*¡è×j:ñª²Y¢;X¼£*;¿øgþ-ðiƈ¢Jc5`ü<ƒH¯¿= Q2*pÎxÖ5ŒI¢3%œ°z„ТÜÞ“âÚ1³÷Úç…xõ%3Ú59wÂfæa‡ )-çló~ÐN=ÁÂ4P‚0âG)¬îŽÏ¦ÞâœÍb_LÈð ëå ƒÚåw(ײ/!ó;^¬ƒYÓNóµ&ÄÁR5ØÛ@Öo£1Š‹öbܬXBR0—‚ŸÊ}ôÔ粚ÔéÐ2  «hš|Ô¦ûÇ•ñ­Ù«-m*z’À›0ÿ²™r4øaζúšGïjÒá‡zÍø»6•ÑFÜ\ÌX·—šª% æÓ º#Ý<÷@—'¬e~VnBÀ,ê[勞×õeç'æc òý»®¢;¸&¤ë.ó¡ùQ"ëäbwÚBƒèK‘ZñwÁØD€H]­"S}Œ.Æ«\‘Ëér-<ý-úŠŸ÷ *_0B`í!Ý2‹z 7ìb‹ƒTÚ¹èhfêžõ5ŽªQ#WÃDéCnƒŽ'"dÁcK]ò°€!*2Òh*]ƒWÖøÊgGãªÀwE `X‘¢l |-–Ρ›TV½ÿÄç»Ûo³8±9…Øwµ¦ñm-Ëû3=‡øP#?±ÁÃjPCž´P½‰·Q’ Ü“îžRX¥T4¹óË5Òˆ‰•$Ÿ€a™á­ºa¢j¿úþ”M^Èh{¹ Òµ8±–†4VTµ-jñ ÝÑœ;y _XZDˆäA² ;é·|ÐÄáTQ?,h`–§B#¬|ÝݬˆHÈÅ Þä>µå«Í½êœ2Ÿ‚è\¼µtÇØÉJdÔ ôèªwõ^MŽM-&ÖSÍéMÄEï #VÝ;EÛa·HÄ©Ù8Hîôï@œ&ßÊšî4ÚT€øª0T©«à‘iN”ýƒJÙl"áU‹™áUVJuJÐFˆ†Oå1‚‹3XÁMúÇb}%‘÷ŽœÈ¤|ë¤1Gú• 'U“¦ê’…$ $8hxÎ?¢;sÖ&¾ó6ÎìG3Æ©Ù'2œ½øŒ¿'BH.W@Uð#ºÇCõ$n2ô/ãÿôÝ‘[©eQK„¹D<ކdޏî³ë×ñ˜*¬é,¢A@Ðò÷àAL~úT¼0JÜ÷”°à<ÎD!cxgÁfɺÂÎOŽNH¶¾3hÏ‹ f4 ^ ‡€Î[)|˜fTÒDhjHpgåZ±âqÿ¶¤D!ù¢¬Iã1ÂÕGW*KSw“ÝÐF[°¤\=—TùKŒ€"J¦ËO7b¡g¤¨ ±*R4’sű¸.¶„`§ò È0yÀµÒîˆSÈHö}u—0 jh1˜;@• 0¾w*B’EðÇfP1豃Fi"Óýª l㾚̹„ƶÇl¬´óª%Ÿµ‚éW|÷Q«Õ$Û†C Ë’Àô„lÛÔ sÐ g[wŠ¢€ „]ÅÄp(£nè>M7WæÑ3îíO3WéÙLÀÝ„‘“ƒ±AxŒÝ‰ ÖÑg ȱØ\º3Á¥¡>UsºF¢æ~àÀ¯–’a«‚pÌÆG…=ÒåÖó‰öÐòtØ2ÔùlXFJâ¨Ö0õ ®³¶ºž`êÑÆo³P³sŸ¸ÖW}n­_QvÓ0H]hHfLò¬Ø5"ÐÙáD,Ob•ŸÉœ¢Ê£Ws“ñ*A qs C4W¢9Êù c"CIxhK1²¯M¼ðMpDúÇîƒ ²[…`CÊEÊ1 äuŽþ {Äo,iÑ×bÑüøð¢Î‹ÖjXvÚ :ñ²c’ú}IäZˆs]$0HšXTKn D…·z/ SÁ‹ŠA׬BÂ\íˆu~œ8^Ô¤U †ÉðEÏJ”¸ ‡•¤lµD÷»Y§°ñs ­4 ÉÆg”ÔG†ÌžÁ& B|M­ôxrâ´Ã*ñ0è()8Ia‚P 60µÁ-’ÁD¨Õi6´H ã€ùtõáßå'’7 ô–õ¯eåáàçý/Êþù‹Š{ŽÇÈ?Ñ俜¼ŽCô 9æXWôÝ÷†÷ͲzÇ´î¸ÚͲêà/viÝïã×´ÞSÝèÓ²y%Òl¥¾°6úý—~‹ôÿxùçÐemÃGaW­.«ØuºÕþл¾üvöóÎs;™ðÓ~Rûµè¢âl.VµÕp=Ü}ko›Næ 0Zö=•H‹švwôµÊÞ¼;ä‡PuÍÚ×U=–:ݘfÞ1½JÅzÙtûÜ6!¡^­ÚøÑ·xš­þo}$â²!O z'ç#ôåê;ŸÊ”½ºpO°Gñ+O·õ–Ï×#‡Öé{%Xµ?Büèô~ùöX0ªüÅ|sœú'âºuô͆ÏÙ3õïg…»úæ÷S±ði@ެ©.¤;ïè7³GzWÍ>ÅñíÿÛ¾ƒòÏ©F\ì'¾ÌOéÛ‰Iµxæÿ–/×/å£áú¿Áy ð.»ÙþöLJ§ýu~D?NœŽC‘BÊ~m¿I= íØýr|gìŸ5‡ô¯›{Å·¹wéЇm\×7¸qÊó€Zö•™{ŸC÷Qú#åû­6·ØyÅÁ¹iY?¨Ää€7úB¿?#Z¯sÑý'ðXä‹6·a­¹®ßý~¾÷Î(zù«ãß=ø ôWÀêo´[-¢{/£{ô-ßÐG:º©í[‚Êu`Wæß®N«¾yб;næ÷沇žþÃÝRöµ¢d†5@Ô÷Pñô3Ù£¾aéßDùç@ÄÛ}kâ¿h‹¹Ø¯{šßÒ—’ rð…ûèüénüJók.׬¡¼¡^—õuùDý rüÞu(8áù¬ý_~Oz~®ü§íêØ}³âŸX«éÿ«ÏÇ÷ësŽÈû(Òr@tEÞïTÛEŽ•w?ú_}Šöº7©aW¤î¨Nns¼¿ÐðåyÀü®~¨ÿ8{Ö/~ÈN?ö¨Ú¿Fù׺cÕî_§?Ìè•çsØs|À8æ?¨eÓøíö 7Ÿ¥¡¾ÅRåk>ê~óÝ£‘û zo¹q9óÐ÷ÁÔNÏc©Ïˆý³äî/Õ}‹×®Rûs3v[γ;“<?%? ì7®Ÿ£¡þß.§q#F·I¿ÓkwÿIºêÇ´î%$5ê·ž¾æítMó£zOБ?6‚xk}ã™\$ûî—‘ú€FL:êOôùûïSöï}jÇ£©Üêà¯vEÞ¯ægôÍÆdBè&rÏåyTþ\}s¯úBãÍU?Vö/NÞëwÿ_Ïšý+€Ê>€ÂÏÌ/ìòÖð%ûÃ~×Òp°Öíu±dýuþ=?S|—;îLÉÉ _­|×é~=Ã,r¶ýçÛýèpw¿J¼ ë÷°.(uüƒþ¾?1Ý„`øÇÕ»$w³kö4c®h¿C_ž®æyžglãœfç7‹÷à7}Šøf·Ø}i±ºúŸÇ>Ís¹žÕºUî«„Ê=À÷­Õ†ËgóåôŸ™û¯~‰ú;Õ1jÓv×·!4<¿ÓäYàÓ×UÎôÁÚã~Wê~ñèûÞ,_wø7Û#.sï¿ïÍ×éˆÉµx 9§òê![8ë}' ÷z¾|Û÷W´×hõ;ÿ°·Í~•Ä$‚Ÿ@àA¿¤_Í¿YÀôž}Så}3 ®üéø5ýÃõIùýuq¹Ó2ñÃé\½áçÒ°ßgÛzÇ´åÓ­ÒïtúÝïÒ?.º±í;ˆÉ† @|¯òÛúæüŠôœ=wǾ×ñN¹¿z¸âÕ?ÊéË’çò sì°üùõ[ÞWF]î+é~ûòϪlö(êw:¨+ÝžwyùÖýñiƒºòÍú™üÕo8¼møO!xõÚ££ö/^ÙÙ}_ôKùÝï7˜gvL9ŽhuÛù°ý^þS{v×í_û§AÄ‹YµÖÃ]úßê[ñûûä©ßùãýtS¶cõ÷ð»üC»Fj¦Šµ/»÷Óÿhœë3º¡É3ÀÑ?´ÇWLÂùÿÚ¾#õî³¾×lõñw4«?ʇé•gshy@:zû]=|ƒë¿*ú'Õ ž_hìc­ÎgèÙ?£‘Åä€ùdýMþtw|n´>£òÏ vØÏ¢Ñ¿K½'yöÍͳ;—Ë4\]ŽðÖNßç§æŸJôO¢¢~}ðÞ§ê\©â_ÞµŸÕáR`è÷¼.®6;?žOpôíçÐ?o§v¦5ZŽÀ8É /ôÌ9x1òsãù4þ^ý7Ü=oé–C<9TûǺ|ÿÞ5Ëÿ¯æ›sóô¨8CÍî?HQù ¹”?HÃýï —mû«÷ŸHÑj7ÿaªWx„˜|?^rÇñÈÇ €|¿ê=|öB=÷7œu!õ±ö¿`?ú4û‡¯È¾—mGéXoŽÃ4Yô{Ñ>cõß©_±ñ{”??ÊŠ€zß²=~.µ?QùgÓP¿cßz—·\ó[£ßiu›ÿª/±ðç˜Ü:H1êDà:ÿ;Z&çúC÷Ì÷=«§¶·É¾³¹êAvØ㋹íqç8ßÜÏÆê{óCû}8Â÷‡æGôÝÓ‡qàçÿ@õóóúžéƒ¹ðV§þtNÓù¾—û‡äHåÿ/ùßÊçï ¬>ØçDåÿmý@vþ”;¯ëÀõþËøŸËü¹|sîÿú*#á˜g„Ý«?aøÏÚ!nþ‹ù‹×aÜ T0jÊ·{ë§è¨£}åßR˜·CM»Óë·¿GÆë¿±&UÀž6k“Ýĺvcßî%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°î%Ó°ìëóµÍ!èûŽ©v_cÏ—\=Ç;¿N@~bù;½i}ë¸wÌMãN ¼`¿ìó‚ÿ×ìùÇóòû}üA~ß@:àì×öÁÖ‡°‡¸!Îðâ\{Î?ü@ç{¬_œ€Æÿ€‡ºðùùÚyרû ÿ€|üì=Ö‡?Ïp8ÞrAÑaç/Ü0øùÙ{‰ü°ÓúAûÿ,_ƒ¢Ÿõ¡ú>;‡ýÀuÛÿ9~þ‡¸ëçcà8!À¾çËøÀs½Õ7Î@>_İ÷Vžàq¼äƒ£ÃÎ_¸!óó²÷9~¨×Ý ö|rÖ/Î@9ëƒ×ÎÏßû|?Œaî¼=|ì½óÿp6¼6?Ýx}æ{ãýPß8Ïð|üú® Ø{†ÏTkî{n> àËÎÓÚý€ùÍâ4xmßâ¸ùŽXìö+}Ûá_l‡¹Þ·d½Bv÷Á¥*àt%Ô_z}wˆ¿hûÂþëµãÒÔî5PW»’í—¤^D\¸)Ï pþÅt,¼ Ä Ä ü•Ö+¬ ëºÀ®°+¬ ëÇ·ú×Ðâä}vfñ…™ê•ýà ¶½&·½Å~Ï ý£Ó©gaögÎÏΖçxÓ¿Gn«{èz/½‰x°äÏÈí÷ñû}~\{oë€ï»êÑ+ù_ù±?WßœÑ÷@&¿¿î¸;/5ÿ”/Öoäý~ú¸|üêCºÿÉ—étû‡çGô]Åó”üi~Ë _¯ÑÓmÿ#ô]Ïð×þlKÝPýóãú:Aâ;ý<íÿÜòƒúžüÐ÷üråçD?¢îˆ{Þüþß?´Ã’×Ö‡{Ýþ“‡ÇþÀ?6?¤ïÍiçaÿ”Õ÷æçqüOå¯ü¨þ¯¿ GwÝŸú¸_éô½ù?_ èÇ‹üï·ìóãÊþÇÿGîw×ý€~(¿GßžÙiÖ´ñÅþ˜~?ÞùËý~À~PSÝò¼ã{ß’/ÑéÊ”;¯ùyéýhv¿Ñ‰ßw¸uaÙùòþ¤{ÎâùÊ´;/àÀÿºïøùÿçÇè¿;?Ø^oîñ„~Ï}_îã ô}ùÑý–ŽsÿçT=ï~`OÀE=}vMÖÇu‹ø$-nã[ìÿúÄUÎâ;…è—½®&w@¬ÏÎwêGòÛÙ£®ýûßrß±,k6ºØk¼îýþiÿKVD5ëÀÔÏ 9ïÿ›>€ô×¹5ÙïM{›Ç¦=ÏÉés™çÜÏ}1î~|zcÜü½ô·º@çøêƒ”¿0è½îwŸ‹.ÇÿEÝßzÿT :°àìô~H¿G¯Ï ú¾à?øp¿î€{þ?"]÷tÁÛùØø/×ïãHýs¿‹ü ? _¯ßÈëôqÿ:ý?~`OÀPÝMöAÔoYÀÑë4:9 =ÃÝþÕïö;Ì>‡ÚNOk¿(ëå‰W6¾3ð±÷GÂÇÝ t|,s§Úúë¶}Ó¡ñúcääd~Þ=³ð·ÊöüÕsÜíy𯺀~ü•~Æÿ½W_öoŒ}g¨`ûF·g®‰¹ôÕgãÿöǤQȳ8‘Û÷ϸlë Ùê k¬'g£¬7g§½ak»NYyí1ã«GioZ»Jòuhí/ËÞ¬üvšñÕžÖü½ê‘ÚÛÇU^ÝØ/µM›Y.ÒMgb×X×êñïûN£Þù³³kÜæo/î÷~/¬Ùg™…tü`áÔí÷ñEÝñÜûˆ¿>ùbýnðÀæ{¤W‡õÁ°åyö€{?è@ÿó°~@»ÞüøŸ²Þ?õ¡ÙyÕyÝó¼ì?‹ÿ øyì§ëúð:!ý~þ4»¾;oü‰~»~>{Ð:!æyØç›ãîïq¼àƒ‚ôÜãÈœ;þüÉsüï¹éþà|©‡iÇÜòÃúž×`vŸÒÇÏÐó¬ ÙX?í<÷ý€~L¿Y¼ áyÝ{¯7Xþ«xáÌñùî? ôÛÈ„{¾=ÃòÝwD'ìµÓsãòÚwP'ìµ×cçPïü@?GÎ|üö 9!ÞñîTL?¯ßÆuÇqàêCçý×ôÀw>êƒì+þóþÃÏÍé;ócÙyØÿ¯ðƒãçÄ>?ßwN'uÞÁÖÐô#Ìÿ ßà'ú1=ÿïËè8ã‡?AÝH·º úÊÿÌ—?ûn>Àu@tÃúýüaw¼v¿Çÿ¨t‚q¿ôýùïøçx u`~†úùüÔú¡Úï_?)ÌfRœ†§-Îf“-Þf‹-ç“Dßx4Xï¼ì ;Ì /¼f±z"²\ @îŸ ½vIùa¸}ïâ´ôpà·:@‹¯Ú/ä¢áñ÷é_4÷ÎÁô~Æ„mÏ^ýl~J¿Rü“?îGÉIé˸~œ¾lïú9¹…Ë­Già/8~øïZŽ‘ ‡¾>t£úé»àãþáîê¿€|9è½u wÁӷç*ç³¶iìîl{‰<Ûy D›y >{|F[&¡¸vãÁ§ÇsàÓaºÄÒÇ»ÀÑǼŒÑŽˆÐÿ„ÐAì÷•ÍRäO>tøXï÷¸¯Ãǽ¶§CÝÄŸX?-_©_Ífï×—¸zw²vèϱҽK½èûó‰ß,Îì@s¼°Öz§¿0s; ÒwÜ9÷oä€üàì?EÃüˆÞüŸª.’ÎȺ±‹`k.mî«›[&®ÖÎsY>Îc[.ÎCY&Ï3YžÏ3W–ÓÉ«ËgäÕ¶ƒWãkàÕc¶ÄÔã¶ÄÔa·ÀÓá·ÀÓŹˆÓE¹ˆÒÁ»„ÒWÞ×4U·õÏ_­ìŠ…$‘€7º!Ý7xŸ‰_z?mN’»˜7 ~~ÿ@&í6:PÛé­w¸®@Ó»O­/w"öáÍs{‹Ã4øWçXîcóÉðm¡ªÙív&®þÎᬵ³²kll¬ÉöSÙ¶2šÙ6yšÜöYšÌöY̶~Mch5m Õãµðj¼mq5Xm±51íð5íð4ñî#4Ñnb4Ðî¡4µ÷87*Ûêæ‚¯°V=z§±U=v-å"‚X€ƒãàýVsãð·Ø1úž|+î ê·îµgm~q§¯?ÐÑ?~µ¼tÝ’õ»Ï.}—ú—<¢žõÔ'_]uŧØmJ;·Ê7®Ü)Ú»d¥bìå)îÌR–ô¥nÈRÎöe¯äPÊþF¿+þM{`5í€×xØø5¾68šì6XšØöxÌ6qšÈ¶‘š¸¶±¨vК˜7ˆ6ðzû˜ -}ÕcI[wXÑSßÓ4½†™ ÇiH€{×éòü?tίè4Þ€ ¹³Äé?)VjÚúBìÛZöj=Ôò£‹?iÑòQ#ŒÈ€8H{ßæå´J{«{B¦ÆÕò­ËvʶíZ*Y·`§=ÉŠ’Ü”§-ÉJR\§•ÜÊY]È¥•ß%7¼”W… v ~;»Ž» ”fº=”f¶=œf²-œF²-¤&® ´ª ´¦ ´¢¾â¹¦­¹¬ijo*J{Ú††—°R=~¦þ‰«M—¼B³ï³~,¿P'3ù×½÷ŸŽ(¥‹é˜_¨û¡{é«ú'Ï5º†Oìpù Ô)ôÎF£fC¹±´+ìl^+ݳl¯jÍ¢µ›6JÓÚ˜­5©Š’Û”©%¹ ™Û§ÌŠy\È¥æï’—›¢’÷‚Š÷‚‹Þ ßÄ¡üM~ |{Ít{(Íl[(Íl;8dHM\;H \X M}´¢¾Þ±§«¹ªiªnªšZ{º†Ž–ú‘ ¡ì4M‹´Ï{_ªÓ—f_†ŸÑQÛ`?Ú¯¦üÇé¨_yú_Ì>¡Íf‡£Õoþ¾îüsì|.L(ôM# ¹=Œ‹u.Ôc6À†ì÷-Ïl¯fÅ’½‹Mfb´Öe+IjB¬–¤*Ik2¦vò*y·‘QsÉOÍÁOÅÑKÅß/|q½‰GØ”0¿¯Ãa¯a¯‹c®‡e­‡e ­ƒg ¬ƒi«¯µ®j«íkšš»Š¦¢®â©§©¹¨iiîéšJ;ÚFƒ]ìT ;&ôÜÇáoôw0òEÇÞ]ñèøeûÆ>Ñ'F»E¾Òk¿Q|áÏ1¸d˜cÔ§ÓØ÷Üÿp€æû¦`;uÊó’°:åùÙøuH^üäIì¤[¹vÄ;9¶W§ºAr{e{V,•ìYœ¯=™ÊÓZ”­-© ²Ú©%© ™ÛÈ«ææE<­äS]òRópSñtQñ{ÁKÞ /bPÆþ 6”#Ø`k£ØÆk£ØÄk¢ÙDk`ÙÂk!ÙÂk Ú@jàÚ@j«í«šš»zÆ¢¶Þ±§©¹ªijnªJ{Êf†‡°P=_ìT]Ãk®#§.Ì¿ ?ªÓ Ìg»4ë+èH¯Üþ÷ùû44›Í.·ô[Í>µ»)á²a…P?éOºî‘¸l—.yÍÒÚ çލ¹½×ð>þ7 OêÇåýßÇÿ,_¯Þ˜ÇùÇþ@xpCŸü;þágÂÿ.~é¢2Þ7ž[†WÌ.ÉlŽÔ¶ˆ¬Ë`Šy¬O<Ä2Ï)³ÊW’Ä…|ìfWÊÎel¬äUókÉWͯ%E±QlSñsÁOÅÌJxÝÄ¥…ÜJQÞÀ£…èÊ1ߌ¡øÊ_ˆ×ñ„×C±„×C±€×WÙ×5µöuÍem¥cW[iXÕUÛU556õ E=ÅCKGwDÒQÞQ4Zíþ¼ÐG³×˜í~¨?b\’üv~¹ÏlŸn©ûŠéÓ½ÅKÈ^=}ïi±†›u§×¯w§ÙONÅðù0Œ¬—ú‡xyŤ{‰t쇹ÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÜK§aÛ[^¥õ¾}•è”>…SV¿óÈ}÷_G¼ó»¬]~ñßMŽ“9éÙcù~¯cÅ@~tyŸËÿÈût#ØyÍþ7ò`|?îÀsÿ®ô<ëÃ^v>èG¾à§¸º°×¯€ëƒØº!ìøåéç¸?::óô|ë¬ôüãÿ ¡ù;æS$þÁ†ìËkãf6v7rºx·²;YÙ#±-‚)圊i¦!–yH$žR ìfWÎÆe|ìdWóg"·›>JË^J‹b¢ß‚§‹~ ž-ø)ãsžp)aw”w£)Gz2ŒW£(Gz"„;Jì!5Ðì`5Ðl`5ÕöPÊÛ:殾α««µ¬jªmªª{j¦žŽê‰¦¥º¢i(o(šo°k7ižì­Áû¤tÏÜÀK} w•ѯr‹ŸîŸ ûNçS·ÔÀ^í¿¸®ûÈâ2Ap®8wÏ^,ü°|Áôö©æ§˜>ž>búpù‹éÞO˜>ž>`ú“å益¾ >`úƒÇËßQ?ä¥}w[»êq{Ž0ÕúU}ÆçŸ9¥õ,/ùñÍÞáΧå\Øã–»uÆíkØ:‡åmæ:­®É€ù ?:=h~×GáKôØäÈý®¸aÌó€÷À¿à~x{OëCŸç?úí¿ñÄwÜ>þròãúêíûŽçyÃÓúðæù°ü¡~ƒ¿6'ìtü‘~·<'ê;„ïŸîˆœ¬üšföªþÀK·Çje±lõãÅÌ®ÛÊÑ…œì‘Ø’r9䜊if"–YHdžB &ƒ9ó+åc"62+y³ä¬´+- ‹^ ¾-x*ão¦71)ãsž0)av2”wc)Gv2ŒW¢(Ã~„;M|; | t溶ʹ¬¯²¬kjì뺻Z†®žÚ¡©¥¸¤j)n)jº&_½×šo°kM:X€7¿­ÈW+ײ…ð¬_ίèÇóÚcgû'ÆþÁ½âï5;mTÞÂûëèS¾¾)$W@௹eð¯ƒvC{ï'Оü= ï¹xô¿¼zŸ}„÷ì¼÷çþ~€=ïïçè||ùôŸùú“Ñýï?aޝ׳ö9£ªõ©=¢ÍŸ}NopŸ¯P¹¾ØPÐZûOÙûœoÀþÙìO©á¥a€uáØçÇ¿ã`T¯õÀq½î”;¯8Àðïøóÿ€ÿ9ÿø‚ý¾þXNëþßòoœrz~¿Óú=ƒ°ÿ`ì|ùÿå õûù?_§Ï`è¿î€OÓð~:ÈéZÞÈ»»‡rI´ÃdgÅñwÍÃÅÏ6ϲ²cc;É9òLE4²‘É4„RK! “fC”ùe>Dly+å`Wó`WYðVYðVÆÞ%_±*ãkÁOx”ð¹N;˜£»J;±”b½Fð”a½B „6úû澶ʱ®­²¬kklêšÊÛ:¦®®Ò¡ª§¶¦jiméšz;š&š†ê¤ÖïµÇ¯ë·Ú² ïƒ¼OÃÇìä½ÿ4?©ŸË7b³õ?–}S¡áûN«m«„»ÊoÒoæÏô™Æ$C\¼þ_͇áCšè{œ(óÍgŽyæ á[š‡¼#ƒœosˆpwÏ8G¼óãƒþy¾8Bæðá ^tŸ—{Ÿ$=Ïé¸o™ý'7ÕPa³ÙÌ09ÎóÜ68lßÿ6<ìxúØ8¡À¨zùÞóˆ«ðÃØ︿ô°šÒ÷ø@v¿Â_ûùìšÕ÷ËÎ8s¦X_ü¹~›}@æÿ>?Øyóþ€y¿è}θ;~[{Züìý’¶ø³¶jg±Çby¼¼xº¸x·æÙœì˜XÎÁòNG4“Ë,¤rM! “HAœùg>DXȯ”ù¼ÙòVYòUZ|ZðUñkÁSżJ˜ÛÄ©…Ì x\À§ØÊqÝŒ¥èŠQ]Œ£ øJß„¡ øM|; }}s]_eX×VÙW5µ¶UemSWWiTÕSÛS54öÔÍE-Å#MGsDÒk÷šóC¬ö aëðìõÆ v ×ÈýÒ:¾í8uù]ým~I:æ¿£üãè}+ Þõ›Md-ÞLþ–?*_ªÞ5 Åð=süþù—ÉÓœyû7Úw>{ëþÀ}? t(_ê¸écæšÏi.o*îK;H¶D› /™ÝÆéæç‹bÚгæÁâÇ›3g1Œ¹Ìa.sË$„yË™ræCœÙå6D>fȃÌþJþg'üYðVñgÁ[> ¸ÚÀ­…¬J˜[Œ«¼ qÜŒ§ÈÊQ]ˆ¥ èJPÞ„£ èJÞ€£^ü Ûƾ¾Â¹®­±¬k«lkÚ»*¦²žÒ™«§µ¦j©m©š;z&ž†æ¤Öou¦‹W¿Ö„‘€rö%øjý#¯>Cøõý„þ=z¦ ¿¢|ïÜú–Óu»=dEÏ¢~«?*Ÿª¾7"¥ð(~Fû¾üð›oc¡¿-íëí‹;¶$·£¾gs†Vü[–O6<Ø%|l`WŽÎl,`VŽÌeh­DVŠÔEXmÂTŠÜ%HmÂS†ä8.@S­z±J½êÅ*׫”k^¬P«~±¯©±¦kêljê{†¶–Α¬¥³¤jµûmy©×íõæŸ[¹Öš]VóVha½Dìß³ïÂßë˜åð‘×äCÄø~ÏY³ìÑßr×ì5ñ×4ª?Êçê’ç}Œh¹@óùúü–Ÿ!ö/²MÖ¿r]ÚSÚ¶5v«Ð^&¹ Â[qÚ$µ“;8Y3Ÿ™ñœó7‰„©Dže³Õí;4wܨl5ñ÷4_ª?Êïê‹’ç}Œh™@›ÁOhìué¾åå@ôòÏó¿çP;î~(»¾;ŸuÂô¼üèþ‹€¯¯œ° Þ‰éç/ïc£b|çñ÷ú8üëžÉìzoa6{~໳§³-ì*ì W`ºOrdÖá¶Ij;&vc²gc Sc9æo R‰R üÈxÏ,ÌrÏ#²ÈÇÎy埒?2ÒüJ"Æo>&ćĨc>$O‰_ •ð±^;1•£±Z+1¡µVP•aµ V p ¹N½Êå:÷+”ë]®Q­z±F­êÅ › … —êú› f¾žÆ‘®¥²¢k(m(½~×^jµ»}q§Önuf—Q½ÔןÚýP~é_åüþ¸?#ûþ'öš½§fŽûž¿aB>½¯kªÒò¿cg€óî{Ðézæ«rÛŒºÚìwOõOϧ'måvÜá÷.)Ȳ<¨èǼî¼;äÏÈí÷ñû}èǼî¼;:PäeàñXºþcèÞòü½Ý9î|çßéFŸÒP\ááNÝcØ7úñ³ÛëöÅí-‘rý[廵î–-ÃlšÜ6‰¬Åd’Ìv 'Æs)±œÊ_žfñ(—Ä¢D‡ŒüæxË,e‘†Ydaç?& i|¤x—Á‰q"ÆlHq› fÀ†;Gb2çÀ­ˆÊÑØˆ¯ ˜JÐÚ„­¨J°[€«¨ •îW)×¹\§^åbkµŠUnÖ(Ô¿P¡RýB…Kõ }=…3]KcHÖPÚP5t6šóW®ÚëN³o­4ºæ¤Òa4 ¥^Óúïø~M¿Y?—íç„M^Ó¶F}Î…úõé5[]V••û<¶¸ŸÈ{ô×ÌžÑô×̇Ó_2M|È}5ó1ôÇÌÇÓ3L|Ì}1ó1ôÇÌÇÓ3Qö/ò»>ŸOÝá®ß k~“UïÊ·ÞÕ®WÍŽhô{±£+¼§y¹o/؇•€=?ÜËþ ?òçä öûø‚ý¾€qÿ˜Ëøàçùðÿ¸uáÆó¹ÿ—ýC‹çÌ9Ÿøòí¼çßøáÑú®ã9|Ãïü€àÉÿpèǺãàÿÔŽ¼ïø×›'õCÜqðgûLuîs¼ãÿÈ=ó‚~ÏxAòþÃχòC¦¨§€ ýýÓâ'N}>i|üK±ñ±¾i>´ƒéæ>ÿékë›íî£zlöÚý±{eKd[ØT¾[»^ébÜÉíCh–ÔVI,Åd’|'3›Œ¦Æc̾%ø”HñŸœÏe‘ã,²1ó–Fsò`FF“Á‰|c6$X͉3`C„øÇ>Ï^;•ã±^+1¡µ ZP•aµ V P• ·R½ÊÅJ÷++\®R¯r±JµÚÅ—ªj_¨P©~¡¯§°¦k©liÚ=y­¡³ jõÛ]q©Ön5†›UºÕ·¨€v)úügþÌåûõù~Ýñ¸A´Õí;tgÜè_¡^“UµÕiy_±ÇóÀëO‰|Úãè¯B{ú ß}ïãÐÿäôÐ<¼ùÿŸ€úùûèçï žüûÏЇÏ_C<ô¿³ú·Ò*£A±yªYÃÚò=:yËÇÏ(}VW¿Õr&Ϟ﹕Á¯·ÛÍ媕Û2 ôÇþ@qüü~ß_·Ð'ôcËO;þòãúŽèí;–÷œ~`{oêC¿ãüè÷}éÿ˜#ö:ü‘süæÿ?ý?ÜpŸü;þ郹ÿÉ‘Ù÷qüçøãKö;ùýÏüY~Ó GëwØý÷ýÐ ú~ ø¯ sßOù¿×3w/eñ&<ï+çÜ2ç'÷¬nö„øén½Þé÷›U¦×]µ/ì¨ì‹—ê_.]«t³n½Â{PZ&³’[Y$±æsÇ9”ØÊe/‰ ¤ñ!æFc?9 Ùž2ó‘ŽYy<3ò`Ì`ÌaâA‰<ã ‹q"ÂlHp›&Àƒ ° ŽxÈ#ž2¼V"+Ãf¼6"+Cf¬6a*Áj­k•еí×*V¹X§Zåbk•ŠTïÓ)T½P£RõB…;ôÍ}-…#]Ce@×köt ^¿i®5Zݶ°Ôj·:“G¬ÛêO~é? ³ãìß—ïÔåûwÆáÓW´íÑŸs¡~„}zMV×U¥e~ÆÏƒuäW²á|yyªÏ>|ž|¼ðËÉ‹#ßkCï›>/¨yõ}GÏ‹Þh½^óC3gî~‹õO)ÔI¸—Ï4ón3yªŸ Ïj£'©½ÇO¸ò&Å™FÜ·œ@qÿ? _·ßÄíô£Oí; õ\çÇôù29ÿÞwù ~`{þè¿ãã$:ï¸øZÏËê;óãú8ÀðïûòeúÍé€å?úAîø¾~D¿GßšØé°ü~¿ Gëôè¿î€OÓð(u}ÉŽ?|§9ïÿBõ_rø×`Úc&W={ãoùÞÃo‚Ý{ö£Â?¯ >3»Ônþ¶‚Úmu»Sa±£±.ß§|»rµÂÍÊ× íAhžÌ6IlÃ`šxç$š9ÌåÂc)q”ÊOgâA›1—œÏ3|˜²øÏÁ†2ñ“?àEŒ¸‘a68MFCÑÅZúùoŸ¨—>¢yòçÔO~3ÆŽluÏz/ßµ4ÛÝØê~åÉ2x•ÉŸ²¬É×°Q–@ p³ÿ_?_©îO‡ >ôÓsãªÓþÅãþŸÚÐùAòóò…Û÷aãè@õÿ`?:<ïçÿ°7üÃíç;ú¯ñ?ô<=ƒê¿î燴þgñ¼ûH=‡òüâ7—Øn¼ø‡3þ_ö¨ Q£×ùAòÿ¨…þ@]ãÑýê_œûo³û>“Í3.á&µj}SÛýrZž1ñó•éØ]wÏõ”þ‚j»]®·i¶XØìhlK×é_.Ý©tµnµ²Íªö‰ìÁdžÄ6 §ŠrY£˜’\&3— L¤ÆS,üfe“1ŸŒÆL‡Ÿ9<¼žy0f0gàÇ„lñ#ñ&$xÉ2àE„¸á.1Í SÄAñCb¼SÂW†Ìx,ÂV‚ÌZö«•kÚ®U­n¹RµºÅJ·*”ê]¨R«v¡Jêe*W©”i_¤kèlhê·_²×šÍfÓZjµ[}Q¥Òï4¥p?N_˜ßÒ1Ú÷äõÁùß±8ÿ¿Ð{7gŽû ô#«Òj¶¼˜Ñò¿Mc‘ç€ê½|öI¨¹…ÆîA{’›NH:íÀ\OÕýÿÖ½Ïá­—y¹Öí5+ö°’½'ê‡ò»ú¢ä¹ÿc&P(Þ[|{Ðù:ã2Kö1¢euáôžý òçtÖü³ë_$ç~«èž÷è›­Ž¨§­cõ#Iö-Þ“u!NçkªÚ›=Ž»bl/ÐØîSº\·RájÕ[E›5ì–,W²Xž ɧ†bY¢˜’Xå$“ äÂC<ðóž9eãÉç?AÈ<áót¿Ù~«òϪ|¶ì~}ôŸMØãŽŸq©ûc[ÚaŸ¦á°Ã{·¤û·eŽú~¿a¯Ž¹£ýQþVÿTœ—;ìcEÊë¿è?>úåÖéoáÿ{ø'8Ìõ_ŸûÿÏwL~©,Ñ·ú‘¤û.÷C¼§s¶Ôm¦ËY²67è_6hÝ.ܧl·j­¢ÕšÖK6>1ÁS?"â>èû,¿*ØŸS÷OƒÝ9wö®¹­ ÉÀ>Q_Ï ÌäÃ3?>23<™ƒÎ~<€ôŸNXã–¯i«ûc[Ù<øún?x#×s¤+û>ü`þéãCö_øµéz¯ üûèýz?ßµÛteÍê“òµúûäy÷F‘’Õ^k¸Ëñ-nDWÚ¾µÃ·´v‰°ëCœ–sþ–õo‰S‘Égý'Û]‰:Ïõ?iíqÕ6;\u¿{Ê»pèþWÉW¢û×—èußôŸýòëtÛüœzçž­óß¡|ótÇêfõY?R4ŸjßzîúBæÛO¶6Û-^ÈÙl5Ûaz…Òõºw vê|úß >D¥»»¶*ìí_+ݳl‚ÜöHlÍ`†Ä³J寶Gaùüƒëæyc‘ŸŸLÁŸœryñŸÍÒÿaú¯É¾±ðÝçÿ@ùüî?µ{M_ÛÞÏÇŸMÃaãÏ‚‰7½ÈóОÿçß>uÒðóß•ë~Ã]ïÃ6¿R¡å{ï¼qOCFGk^ÃÓÛíåö`ã‡#íäõßïÿ?úåÞííÁðÛgçÿ@ùüåŽ9jöš¿¶5½únåŒyàaxÇ$dqIRDGБC4PÍBAÐÖ±X‚¼õÈ+X¬W­b±Zµš¥jv镪Z¨T©j¡R•ÊE:W)h^ Q¡{^P×l5¦¿Y±ÖÝNÏRiôÛm9ˆ;‰ý õ ÛØü[~º¿"Ý? Sõ”}ƒ«à{·c®Š¹¢ý…~C?^|~@4ì€ÇÞpWÔ>Wô ˆojõ ¶îbë>™§öÕ8ÞØHª¤òjžmdõºG¹çéTÞ} /›Æóé¾~¸=£Æ’Á°†ÅÃEKÚ°{èZ/©RUñ*_fÑSsæ›øOÏøÃÏï€ú´|K¹z×Îþ‰ó¼{¿ZèÃõ+ù\ýGÒ}óؽWÙ$)öÆ‹rnvz¡´Øêþ*}{‰ß:ÜšÍýí©OgjùZõ›…{“Ù"³5‚圆ie#’Iä“2<óÈÃÎ~L9=ÆYÀ³ôox<É“0e”bLá›æé­ýãßbøl—çþÿóù«sÔmµlk›lré¸fÆ#Ë 2Àà °08Èã’"8óˆŽa#†Hˆ¡–e€Š¼ÐÖž¹yëVž¹^µŠÅjÖ+jZ¨U©j¡VªeZv©”é\¢R¡vK_w^Q×_ÖšýfÃXku=A¨Õl5Àö³õ•Êðùä[õÓùê˜:´ü[íýKg­Ùk"n}õUùTýUñ¹Ôï€ë^ƒçò³;köüüvå‰W%Dm`qçüŸüÁï8AÚñðpúÄoì?&]ÿÏÏø!ØR49ÐÀü™¬×ù@­yÛÕÌ=Žî;÷#¬KŽW1}ÂǬí^{mï™ëÕ}V·Ê°Wôêû/³Q‘ð 9U½¦ï äæÎ‘ï‹ú«üÈþ›¸Ìˆj×À>ó\9Œáʯ9ŒáÈæ3‡#˜ÎŽc8r9ŒáÈæ3‡#˜ÎŽc8r9ŒáÈæ3‡#ì¿•žþºÞq¨Ã±Ãf±ËþÙ:Ñk÷¿a¯ÌjÚþÊT®Â]˜Ó÷æçÿoý@vþÂÌë7ñ†~óà?øp¿î€{þxv=ØÊpoäpor!°°óU¼¼á¶üÅZ5.{.ãÚôÛ_>skï^Ÿî“åÀIðþE½£‚?íFx½]û÷Ó¸…wîU>+õÊñ}ÓaóëžÑíšÝÞ~{è>ö *¾1kŽz]Öí}smƒÇÓpÌyÀñXÇ”gˆ³ˆÆ<£0‹8Œ!’8d„Ž!"‚XH`–*ÓW!¯5r óV ­=b ³Õ+Ô³L¯NÍBµ;4Ê´íR*RµD§¯»¯)ë®ëŠZÛÚ†«c©5Úmž”ÖGçÀýs~_ÿgÀCü³~£¿,ý~?.Dñÿ®³g«†»ÊÒ_æÏô™Å¤C[¼A]ivcÖ§JÃ…2JˆSSyñqw¨ù+¬ ëº|H’ˆ’‡³ú÷µJÛ«â׌újawŶº-¦6j÷Îáz:†çë›sù@íIÉíééÞã®]=~`OߘŸý¿þx{9þà?ò_ßp5ç§õÁÕ‡ê8à‡ÏûOéÀî?ˆOí¼üØ÷Õ†ÀçÿËûO0æä‹õº¸¨|„ ã€/í?£Óûþè¿ãˆ@~¿>'mÜ à?Π8¡ú.üa«ß€{‡3Μ;_ãXè8à‡H?®Ó€Ãÿ&G{Üî»^}럱‡¶ºzǵH®aõ[‡iÞšuÁã²-ν½—™ûGœ“Ú×Gù öo²Q’sÀ1ðc¸:õãuõ?Lù^±…÷¯vù°îßk©òß©<Óz·Ò5J¾Â~Ê}œŽ‹.öAÁ,y_ØÚ½Mú×l[!·5’NE<³K,„rI!™äa–~L|åäÁ çÀÃ,p°¢>“ÌŽ»{6^còHÀgn•Ï›¥þ·õÿ—}+àm¯ióÿùüÅž9è·šµõͶ ~›†óƒÆ,~pÁÓÿEߘßÎü¿Š£Öo\ó„ÿ9þÈë÷òúýŒ/Ùïà ýÆ}ÀçÿwýÐàÿº9ÿÏþsü~8¿c¿#õú?ôß÷@'éûãÿ`Œ/Ùïä‹õz{æôýù2;Îçÿ§û€uÛí¯ïߘ;—ý;]Jý;¬s>?}£êÍ?ï»®9}{Ú7ž¹ï:ç¿ã4½ËýAÒçç ±¦4V¦³ND6&˜Šie"–Y¤“2<óÈÃ,ü˜$¤ÄÄðcá‰ã1ˆÑˆüDy‹Ä'ždp¿’§#<Çä“Ì~I.ë¯|Ý/÷oxùçÐ>Ú÷ÿ?úϦ¬ñÏ×ýƒ×>Ö×6¾1Çé¸o8øÄcã˜Ä~cÍñžíNø/€bþw;âè[·Æ{oؾYõ=Û¦«i©ƒ»Øg}}/wCÄ$ÂàuËÜw :î\ºK[â+—^N"¹t8ŠåÅ|ⳕ5Ž/¹/[ß8ää(ãÓ£NBŽ=9 ç×\†<ã¶Ïí•§9뤨¿çÔ½gß>¤ù+¬ûÇ®DwØ>Ëëw²+Žo˜€üÀþŸ¿0'?ûê·ðãKôùÁ?AÞŸÚøüøþ‹¿$_¬Ó`_ö´;/:çÿ9þsü/×ïä õú?_·ÞˆNç¾Õkã€ÿéÀø‡Ý÷ü:ïû Ÿüÿà?Çä õûù?_ ãÿ@=ÿt~ŸÔ‡°pƒºãˆ¯Ø}ú̬ð æ'·eòOV¯·_`é³³+Raߪøg¸%òä×Ñ}3eºú^Îîló±ûtÜpË–™0ŸXúÏýÓÛSõÿj®|“à\·ô//ue¬æwqæuÒË%1É&f瑆Yäaç1ƒ1<>pyŠÝ~pó¾#ñtù‹Ä'˜|@e5̹Æ^Ižó’_1‰6:½ÍÒÿgúoϾ•ð6Ù±ù÷Ð~}3cŽ^µìÞ­ö¶¹µÇ~›†Ëžp`0F0F#FxÌGˆ²ˆÆ¡1‡(L`Î3€Â¼•Ì+KXмµˆ«KXЬÕHjÍT‚Šdç¨W§=2µ+4JÔ-P*k­ëŠšÛzÒ–®î¨¡¦Øé u|±/~Ì?>§ :‡èS¹.›»¼_Ñþ‹è~ù·cÓÔmµ»pî+¨Þܸ|DÜãß”ÏÕOäC­Gû—Ú»BÝqº£ì3ºîDó¼Î"rìçÙa‹P×P©áùáäÿo㨘wœ?>=ß}@Çþ´;¯x;ŸÇ_ÌØ?AÃãü@ì|~L»î¼Ó‡Ø;/økãòƒßÿ/Ç:Pý7€{Î÷ÕP?­ÑÕeþà:!áÿêxpC™þÁùñ6ç¾ÀtñÿÒðü¨þ—¸Á¼à6øï´r®> WöÏŸHöªÙ0ž•¥ú»ß~Sêmõênrƒ—4òzÌ—>ì[Íô^‚ÎÈ?Ÿ3öC[¾½¶)í-lJ·ìÜ!ä‡À­{k²Ïgà÷/ra~™ö~;ûmXßLõ¿sןâÇ8¾cæGZ¹}Wæ8³‘çž^\ÃÎ~L<ä1d#8±ú¾ü÷í]skŽý7 ž8beŽ8GãÌ~0¢<ĈEæ#Ä>aÓì{‹˜zM¶ÚåVõ·.ʦ­Œüž=Õ}OÜî|ÊžEøã¾Àû¾?¼}VŸß=K-—¿2åËéS‘ØK†¼»Ç™¾)¼‹ÐYÙç÷äÞÊk7÷öÅ]­­‰Wafá^å‹e{SØ!±4äSM)²ÈaÈÎ<ÛªÇaŸ‚}Ë& ìÛOŒ}£Û~¯óŸ±úо|°~ãJú>áD‚<°a«?Hãõïv½¯ßÝØÜÇ«vo*YAP¿R÷Úëú^ßÊöZïsõï<×xìËâËXЪo°õ?_UôXô|ƒ¦÷~¯Î£ÚÎã‡!m-懗>É×'XŸJô}–𡸻³*l­_+Þ³p¯n{Df°C<ÓÍ,¤rK™rda–y~\ð¿èw0y½ì/÷,ˆo·è䨼ù‡ùSóZou¿[퟈ÚpÏÙýÏŒuí°ß¹Í:seã)ŠÕS-:þ¯“‹¼ô/Mô]ÔÇO¶òY)ÃFKzk‹ÚºrïºzeǾ٭‘c*ùùƒÉ6û×7ß8Kò×Û4{϶¹=ßýfÇ~aôÿ•ý©®ìüEãé¸i1Kp–ÙÿhûGý×Ü/lôÿ zõtñûŠÜèãN©¸|òöRü­õ69!·^PE¯È±cIªù^ïo¾}J¯oãòTŠ–éªÍBy6º¾¨µ¨¥¤.{oݹœj=²¦e¬êäZó_ÉgÍ%hôÿ±üá/ÉëúݧÁ[;çÿ@ùü­~ù/Ö~Aö¦»³Æ,~›†—±%Â< #Ã8ðÀÊ¿ÇÜš/š­Œ¿KÃ{•kýk½¯Ô¾‡§dþªÇ’mÏZþÛùLt½ï"Mêýv1ñž¡æ^³_ítÞù§;þ•{X)È={œ´{GÌ~œyP=Gõ ͓֯e»)îmí ›+WÊ׬Û+ܞљç"žiˆ¥šRd92#ÊO&s¼Œq’1†X>ó_™‚{Ç>Í•öh½ér‘^‰ò¼ü÷Úøm—¸zÍKOJ·®é»–Ïçþ³é=Sš_ÕEO°rÙiÃC&Äô+ëK:ººBæ†VŸço½[.ÉNBætä-gS2ÖUr,ù¯ä±Èž7òOç ¹{­{/Á[=Ÿûÿ JÑÇß}“âŸjë»,bÇé¨i°‹\#À“ð$Ž< ãÂ#8ðˆÎb2‡ÄPx„óˆ5Ð êçŠÞk+yªx«æ©\ªTÊ™…(˜Q’¾]yº]iª}I[IkDA ±C=Ó€ˆ|¼à¤•žÍƒwô„:µŠôµ|šã')t\¯Ò`ã2 Do_ u|(}ÕñŸ³4Ï>×fÃÚ¯Ål}ž ÕÜ'™uï+úuß¹Óz>uÓAåÀ8Çùú;é?c5»ûûr–ÖÞÄ­±³x­vŲ½¹ìXšr攎Yd"’LÈóÏ#2 <çàÄã–'Œ<ÅãÍ7¹s]ûAï×ïñn»·äg~µÖùÖþÇñjë\ß=?ß=s/à|Mç?u]¿äÿ0ÕÑØd§ -ÃVšŒâƺ¶¤·¨£¡/ïþ½ËÖ~‡¯˜¿%KÒR») ™ÓÌ·•L‹YUòZäÿùOó„¿Û½§×½›à­ŸWèýè2Ôqóáßqø?ÚšîÇqúj|aÄ—q%Ž8ÉcŽ2HãŒÎ8ã3‡Œàñ”8ÂyƒÄšþ <ÖW|Õ|Õ<Ô—÷N!y; ûOƒ¿N@~bq?b¿VüH{‘û=~YùHwèëk˜GØÀsS§úñv¿BÔû~DE«§´VõM¯yWµvié^ë6ß>ãÒwøÔSÞì·… ÍÝ¡OenùZõ›„'¶Af{&˜†i¥"’\Èó—"<¤òaç1‡‰`ÃÃq§+çgì¾ÏÃ{ ­‹ïÙx±‘ãq¡¯?ʉ½ ݾ¨ùS”=oÜ%#>}ðŽGü³ËÝNúçÝ8í‰=- úÅË:ºzRö†§ÞO”sÙoK»ÎmtÆÆ]|¦ÂJó¥™w:R2§‘sÍL‹|®â?-¾p—äïK¹ø3hÖz¿z¥¾>|ïüxûW]Øx¯ãé˜iñƒ|!À›p%Ž, bŽ"X£ˆ’(â3ƒ áÂ81€Ê¾5Ì«ã\óUPóUTUSüÓf5Ç 8É®÷œˆ}ç²SÛÜÃñ­Ùz±§å';:³%8³$¡Ã®‰ÎźP{)¬öû’ŽÖîÄ©°·x«vͲ½«Šög°A<ÓË,¤2K™RdaæA‡œ¼ïErWƒ[“bÖ“Ôþm´ë|«äO]öú?ç¡ýÇß}›Öë|ûéÞ™í\*닸n¢±åý_O®£o=³úÛJžñ£¸n¬é­‹‹&Úm\æÎmdÆÊ]l¦Ç:ó¡!{*9—r¥‘s—ü5æGÎü†Üé·?mß@÷ÿ@”·Ç¾8òg‹Ÿjë» kãôÌ5œkx'ƾ$øAÔ~qO•bUgå_Nõ_É„ÙÜñ—´j}7Øbò¾[r Äž`:ó9¥Ðoý0ÓûNËvPÜÞÙ•v–v%[Ö®®X´Af{'˜†ye"’Y³—"<¤òGç?$i0Õ¢ªŸõoÛ/mgu£öÿXÜØ™ö݇«ìd»ë×õ½ÃugMhÜO©°mfÕÌm%ÖLl¤ÖÊls×È_Άeì¨ìñ}š\^åOÉóœ€Üé·ìZï@÷ßA•·ðž(r»àŸWAú‡¿®ýWgØÊQg øc‚2ÄpFO1Å DÐÅ ,ÀKP’A•ã¬I[ ¦uq¨eS†Tñ¦eGÅÍuçcVyÕxÓžt˜ß(þƒ>¯Ùü¹~£'ý WžöHè)]£^ôÛùýQr\ÿ± (ŠðôwÖmõ2‘Ï5’2Ù!±5‚NEb[3Í9óÌA<óKbb lLV–ÌÅYlÊU’Ü…I-ÈSÎîe,¯dQÊþF¿ÎÇÉ­ó²òjüm|¬6þ 6¬ ;øÏ]­ì°ž©CܪžõÛJÔ×öïò%ÚyÜóÒ½ÔÓ×h}TÜÁú7ºúÿ¶dEX«{L§Ö¹ƞƭgûà±,›ñcóœsk¯]ϱšÝõýÁGmsdTØÚ¼V½bá^Ý‹%{3ÎC4ò‘K,¤RI™ry0ó ÃÎ^ q“rÀñTí×>º×·ò®•¦ö6Üg«éwÅb6C[ÓKçºïS±V-]îƒæûޝì‘^ŸrãrÑŠ†Ë.¾ icß>MOÚ;÷/’}†üÞii÷÷,úùYñr:}ñúèßC¶ô]ãßp¿ê»#Ù®zíãoClÞØÒÙ73j'6òê¦6²k%6rk$6Yë³>‰õ-vÏá—ÇÖþKï¼£;–Ÿ•{§+νè>Åóy‹ùöãWÔðmú§¶¶+<~iëßy뱫Œ6p­f:ñ–#¯b("'†IàŠ¹4ÀM^*äµ¢®IZ*Ä•#¦IR:d”£¢IC y&º=i–§!&“S'ý9}›î ÈÏêòõÓð¶>N¯ Úøêô?°É7ëgŽH†›'è|î× º¨€2ÊÁœì˜YÎÁ…‰,Ø’Á‰'0žKSË9òÌE<³M,ä3M1ÓÊA,ò•å±)ZK2¤µ™W;y”ó¹™K+¹|ßòküì<šß?³§ƒUßMî3Eþתû-sÕuÞãP­Û/RºÓõáºü”÷^vN‹œ(û¯ÈoÅ{·²jw·pº¾¤±©¥¡6¹ôßÐÀnZûïÎ2 ýëè?*úµXž±ò_±|ÇÛ“{·½›æ¯¥ºÊõ~Æx‹“G˶Mžé¨êïí¼HàAwM–åª{¼¬}í“u>šsq.¦Sm.ªCkž³3îJâÏ7þCŸô]Ÿ³éx§Ò½ãŽwô<¯½ü÷Òj^ó_­Úå½âj½kwÇ~½ƒV*~>Õ×-áSVã«j:±–¢­jÑa¯ b¼ÁrzðW'­bj°Ô&§"jPÒ&¡¼›]°›U”ŸKí_¤3€ÿ Ýè2þlÿCßžn»}瓇_]°ÖÅ\úêwómúIâÒ!«ßpÌåïK=Xq|÷¯Ey²x³æÉâÎVLle`ñc+3ç9Œ¬ÏœæÉ9òLa4“‘Í$ÄsK1ÒÊE,ÒË4¤Ï)^Kó³![+Y•r·™O+™²»ä¢¿ä×ã²ðkqÙø5xmp51n#4Ðnâ4U½‚×){=SÔõñ¯9+Þæ^‘ût©Ü‰º^PõtÉ„ö`ù÷ÑkÅÕú·³ú{ÞOr‹ã¿bÄŸ.€›ð ƒž½mî½Ö{ÃpRÜZÚ66ïoY¸V·bÑ^Ìögšb¥”ŠI3#ÎO$yH0gàÇ11Ç(Ïy©ESê¦ö.SÒõ»ý¾û‹u½nÖL£$|xñ_Ïd©©åâìý3[éÛŽ§³õHh÷®/5hlskàÖuutÅÍ%k>wÚ×d\ã=Þƒ†\]çg_â>•ö‹ýŸÜ-7ξ“è7<ã7¯ì~aò—ÕÇc¸7qø·¥rcÝGi)IëÆ¥·èÛ¢¸7¸Üõk×í{5¯\¶{ “{6’su.šcq&¢SkÈž2lõkÝ¡ïþcô_ν·i®¿æ"î–žçK™F“Ó½“æ»e‘|Giëkk—ñ£FĽ…,K˜SŒ¹HËqÓŒ· XKpU„µ^µrÕzÕË5«V,Õ­T³Rµ2Íô 4jëË:ꚢ梲ž›Ëþ×{{8ÛÉ :æèï·n£»dløIõ‹_Y²ÕÃÝç/è7¢Þô¸|@ÝPá/çÈ줠y­,ù²x³æÉâÏ›'‹l,y°x±æÁâ|¬ØÊsóœÂ|ç0šIŒ&’c ¤˜Žie"šYˆešRf”†Iå+ÉbB´–s+gk"®Vó)ås"—›¾J+â†;»—ƒW†×SÞ3OîG_}ëÔý–©êÚÿm¤zOÑ´Ãô5̯ÈcÇ|/@÷ó¥ÿ³|CîùPµö}ž«/@úÌvaîÆ@(tôv›ùôáesEí{má­Ýl6¥¥ÝScfùRí«EkVlìX˜‚y¦!–Y³—2,¤òGæALLpÏÆFxŽžÆÅSiìÅÂû.›Ù.M¥mØgç E ¶lê´~‹1¾ô¯¯òÉ©CC«sY¨WÖÝ·g[SR]Ôký|Úú×${Ë:ÂïÓé>{Ô·t}!Þûï×þSô”v^ï^—zž0|’œxùßèl½ãÑw;}í^î¸áåqš4ï¯ê_›úÂë{öAÅþÙÈÿ1û>sõä{µïHÙáoÔîžÑ?­Ù=Žo^°oåÑJo$ÒHr¿š½HvYò ÷×ä©k湚Zç¬HQê¼lûo{Ì^§Æ±öN¿²Ç]‰±Ç]±_°_~*1¢¡ ~ 0«Ò¬^¯F±vµ¥ê”iéP¢_×PÕ›-^ªb½^Ø»–:Yï¿é ”úÔçW»äTÑKÓb®¯g©ƒ»ÛqfvgÂå*°>¯Ðÿ 8Jlx²y³âÉæÏ‹'› V6+z’•[ÍÂÛz®zŸ@Ñö:h)w.9-uÓ1Sëëk õ54…í·“gû”웑Šàn®"dùÍÔÿ9e¯ÈòWè<úN÷Î|zw¸z}ûãÏ$8ÑÅû^¯ÆšßÎ?BýVMϸë³Ü^ý!u[Ú÷Ø,‡L篂ýètÖ¯ìçgä‹eÜVG­\ô]‘îv}Jáí3ú̓Øåõéÿ"¸·fïv[oŠý£óo£é>çò|ŠxçÄÍ×§}÷«müj[Þ6ׯ«iޝg¶3g¶3eºe¶cº¹±­¯¨lªë©›*šÊ&ÒŽ«\mõºO¯Ÿ%öê;ˆ:.î—ëüçñkèß:ú2H&‚bÝMFÛM¯Þýó{‡<Æàò‡P©3™¿›QØÚ<ÚÆÉ•œl™Xñdóg&Vq²y±âÁæÇ‹›,lx°y±âÀ`NœNœMæq7™Ìgó9Œ¹Ìa6r˜Mœ¦É)’ÊC$ÒÉ4„Ï!_;ò³‘WÍ¬ŠžmŠž.Š>/x(a°Ä×a²ŒÖÅ´ˆÕA·„ÓÖÝ@hêo«½GÙ)¯ªöýyè¼øÆ‡Û}¸ý·¥îײ!=Cß¾gíÕQÚ¸ÄØ€‡KÇd_ž8íM7µl÷¦¿{snSÙÜØ•6®•®Y¶WµbÉ^ÌóO4¤2Í™’fE”™ùÏÁŽ2x0ñç2Œñ =^§³aìÇì|¶ÐÚÍ6§³ÇŸœ-]ó zûÖ¬k5ß3™ˆöҡܸä´b×ôž>¾ g«:ʺ‚Þž®—©rËôLu³ÜMð§‹|àß\¼Ï¡ý‡æ¾Çì?±Wû¿ÍþÛÓy‡Ö~›òŸªw>_Óý·Ó²lüCˆ<´øì¿8䇲Ùù§èñºÃ¿ÎþOêöŸoü|1@zÅýz^~>ö?BÔo˜ºKzý§‘îÖ=ìm~ç/¨Ø9‹Ú@Ðü“=ô¾s3§í^ï¦yõÿ?ok›ö„oqÒx7xi17Qé£71éb71ia70ik›ªúJ¦îž“^oézçÔÏ@Öv“ØÙù²ìOôc½8ÏpŸWŸ•¬µ[o¦¡¼Á4ü¥¤Ü赫ߤ¾]|sì|"P,zPü΃é(Ÿ’YÂÑœ,™ÙÂÉ•œlØÆÉŒlYÆÁ•ŒlXÆÁ”þ,XÆÁæÇ‰Ï3§§§<Íæa7™ù˜Æl¦1›)Œ&Êc $”ŽI%"’Y³šB§Ìƒ+ò±‘[ÍœŠ‹‚Ÿ‹¾ XÞðPÃa¯c¬‹i©‡m §­º®i*ojž¿GØé±©öíi鎕Oa^ê'°üˆ®ô‘îøòÀôhïzÞêûÿ·>Èk=ƒa¹(íîìÊ›;;­ëW ×,Z+Ù±`‚yæ!šYH¤—2,åòGæO$i<<ø#ñçÄyiñ²6>¹'¿ñ¾­ëïzç êpÙ“Ìvv>1­ï’S­£ÏÄØz‡¬z_@ѶzXh÷N5%u³1V5µµeU={C¬äÑÅÞäû3äqBøW¬™>otËðßpá—Gî;jæûþ‡Ú3ŠÕ~~ûÇo¹w#õO¢ú½vž)WÓ=¿Òrlü7$¸rãkí^Ñûwû÷¿²w6”8ÇÉξd(èƒcJ÷ÑqÃ,4ú7°Ôæ/?Ëˊ߭בüXòëôÕÆxKœéÛô‰ÂÝ;#©»ø—LÃâÿŸ¼üìô¯ñêe}èÆº?|„ôHy%쇫öGöÓ¦Z¢FŸ”?º~µý°üÖsw·aÆîH€øOݸ‡›Oç_eJ÷ÒÞ+Ï\×è·~Ù©ä~°G “P~g ïV Œ­Gd–ÌvŒìádÎÎ ,adÎÆ6 ,adÎÆ ìadÊÆ6 ¬c9ŒlOâs)üNy±ƒÌÉÏ3¦<ÌœLœñ7™y˜ñ.SË”¦ç)²HG$’g6d9Í™SæWóc"·›>J«B§‹ž XÞÄ¡…üMt{Íd[8Th E]ÍsISyTÐk½’ë:¯lÖž™®öý+ÎëûüwÀsýC§·½‚þkþI¼4þÓ³ßýÝí±KisdTØZ¼V½bá^Õ‹E{Ø šyHe›2)%È)<‘ùFËÁ‡Œ±0Ã(Ïõ°é»]/eöçítöSØÔöhdÎ|×[‘fΫ]ó©ØofùÞ²oã²Ò‡_Ò´ õÐk=ò}Um1sKCÖÍ.X~‚½ûˆ¾j¼÷kðu«Í:Ø>gíÁÃ;.»w½ØCK1Æ­ÛRÔƒU—‹³û·¹%Þx?ؽ¯G¸êüš‡¢ûŸÏîyé]ÀuoÚF4ÈQ–§;cèÏb³×eÊÖ»ìWš¶t×;/ëo¸.{•ÛhãÒ ¹»ê:v×R7 ±ô4Lu¬Õ¶×}×àüËÑò¿DãŒH€ /Ƕuš °²If;D–p²gg &vc²Ic –0²gg vp°gc v0²ecÉ'ÆÁ•Œllc`óçñ9”þ'§'Þt¾ÍœvîyŠ8ö5´3—‹¥ï<òçYæ=FÞ«í}3”ýaª¿°kšŸ›û×Ë<¹ö®Âø¥ÊÜiÀ¦ð?:ÿ¢Ê¾ïé¶`ŸµÆøÓmôÔ£ïÇ ŸÓ+Îä8æy {ÂüøíØü6ž){¼\U-SÅ«YØ·\ݽó¼ÎßG(Î ÿSæýf€Ì–ÌvIlÅd–ÔVIlÅd’ÌvI,Gd’ÄvIlGd’Äv ,a`ÎÌv ,G`’Æ ìa9Œ,XÂÁ”øÎg>6 ¦ñ9æ|g<ÏâcÌÉ2§×«=7Ö¾ƒ¢){§Ì~ª[ØÚ¼U»jÙ^Õ‹E{3ÎAbYˆešB%È̾HÒx0ñ&&?.úwÃôÛéEÕ{OÍýöÎÚ=Ž»=æ×™°3u~¥ôMfN7ªeæ HÜ«C¬É³kOªù¶É¯ûGÎâ£Ý8Ô”"Öô}m}YkSWJ]Ñëý\Ûn¹·ú8¯Ïê”Uí|:á ùOKÜî÷;ØêowÇçÜÃÓ½nõŸ§RùŸ¶æb\ÑÙì“tÔø»ÚßÑ׌>qô~ ÏApûëþ‡ôTO¿ÃgW…ë¿ú­Ó²¢³ ô=kòuúZüÕtÜ+ÓÅ/XÀ‹Q¶ÓãUGõ¯ùlý\q¹Ñò€™OÓ_å bióÇ.Í +”°jÔw©Ñ?èë—çss|À[‡z"²Kf+D–¢²KjD–b²Kf+$–b²If+$¶b²If+¶#°Ib;–#°Kb;–#°I>’O…ƒ9ð°g>3™Ï„æsc9”øÌe7‰Œ¦ñ1æo ’‰SËæSÄ™Hcžrç&dyK™SdCælŠþgòVYðVÆ×‚¦1)Gz2ŒWã5ðìa5µöpº»jÆž¦æ¡¤£½¤h5¾Ç®=gQíz£Òô^óëgÙ7Üy䱫 ö'˜†i¥!’lȳ“",¤xGãσ |àz¦¿[õŸ»†ÿÙ*ïxÇZÎï™áåÇnH¤èxpi·œ ùAúO蟽Ž&Õà[üþœ¿2=Kc—‡TÁ‚…í|mz_Ô§åŸõ÷Èä.$z™ð¿É7Ù¸Ü2%³’[1Y%³’k1Y%³‚kY%±’[Y&±’[Y$³‚[X%±‚[Ø$±‚Iã°Ib;v#°I>’O„æsá9”øÎe63™MâcÌÞ&<ʘJ”J”IæS2Ç<ó0ÊLÈò“"?3y!ó7’|mbVÆÖ%L.`RŽìevšøv0ÚÛJƪ®Ú©¨§¹¦i(ohž¿¬öMiëqÒž‰íU=`åìÿ'û! ³HC$¹‘e'’?2Ùbaã, póâ/:;7}_îõ¿Ž¾«³µXÒ¶çŸX»œqÁv‰á¯û9ðß—ü>í¼‚•5ßGpIõµõE­MM!oCCÔÇÐyõÞÁîxœZ¹ô~ð‡Œü¨lw;ÙøŸ^l#Â;;Íoa–õE¯©gà×ôÿlí?yÓ¸aÛ¿ÐÝÆÁãg´qw-5̨ëK?mRôŸ`ùÏ—=_¸Þö 0eõßÉ8÷¸¥Š7v»©[¡s¹Ø8ÏN(—8Wùòî·¥ŽËk°è8kvÈ›žÝúÂüÎþ˜¸Ìˆj·À™¾Óÿ.%ŠÁ5˜l“YŠÁ5˜l“Ù†É5˜l’Ù†É5ˆl“XŠÁ5˜l’Ù†É-ˆ¬XŠÁ-ˆ¬XŠÁ-ˆ¬ØŠÁ%ˆç%ž;³Ç`ÎÄs’Oƒ9ð˜Î|'3Ÿ ̦Æc)|Ly—ÄÂoždó!âO2˜É–f9å!yæG”™&òBœAâÀ­Ÿ\-àTŽäe8®ÆP†ü&¾¾Ê¹¬­´¬jªmªšz;ªF_¾ zöŸÚ5'ªè=ÏJz+xÝÌÜël¼Ê#I‰Ž`x(Ïùˆñê¾ÇkBÝ=ÿÜq±òÔÙaR»›*Úª™xÛzúx2±¶ðj!ȱ·áo"8³ßø…]]?då74Ô}|ØúÞŸ²S‰Ÿ ¾M{ЙÓÖ»;ÌŽ¤£ú/ϽËK¿­¸Ñ· Ww¶ ²Å®É±cWKO1K’ÜÌæ×hä~î'QçA] æ—¬ÿ{õ»ñ7ãÚ.àK©µëtß.ö¶ÛÊæç¸ó ô§ûçåóÖµÛ?¤b5»]VÒRÞ¿[´Ò@Þý:ò#M¹ùîT-úÓÏU¼öà_y‹š)aÛ1ëjöZ¨[¼çýô£Ýw’; Ñ}ëò¤q»ã Y†É5˜¬؆É5˜l“Ù†É5ˆ¬Y†É-˜l’Ù†É5˜l’Ù†Á5ˆ¬Ù†É-ˆ¬XŠÁ-ˆ¬ØŠÁ-ˆ¬XŠÁ-ˆç$±ä“Ç9$øNg <×ñXÏìŸÕómÿºo‚ëyÆû÷ʆÝß½ÃðXps>÷Â'Îûl? ô—_Þ|ï_¢ú‡ìô:fn$¿@íg·cƒ½†€‚cßûߺëøï#ê ÖæÇëÚö]”n~¾î/Úž•-,†Ë×}«´}÷IàglßGvÞ@ â?¯|ì}ßkñ´¿VÏ[È}2ÿÌ<¹n¿äÖ<ÀQ’8¯Ê޵¤¨éýI¾‰ˆ×í5{<ši}CåœÈÓ²Cã†I€ùÀãO·z—ÑðòA4¶êj6ºm~÷v=¦ðƒ›ü*L0+òs®¿Î?½z("k0Ù&³’{0Ø'³’{0Ù&³’k0Y&³ ‚{Ø,X‚É5˜lX†É5ˆlX†É=ˆ,“X†Á5ˆlO‚[Ø&±ä¶"œ–xç%ž)ÉgŠrY°˜’l&3Ÿ Œ¦ÆS9q˜Ê\e<ËâC̉yÌñŸœÏe‘œò#ó'’$¢,gðAŒJØZÀ«¸Êq\ˆ¥ø öÍ}]•cYSiTÔÒÛÒ4ÚÝö¸Ðêý‡XzÞ“Ú´ç¦é}ÃÖŽdm8¡ÊÓüÂ!@!ñ\ó_ÇšØT3¥JQP&×î'Ö×Õ–uU4Å­/Y6~­°îèë_ô)Èà*që¦Í;kæ·\>Çî_?öúv>Û¨m¿ìÖy•huy˜öµ:ÿpØ ý ›ÜÂäWlä­©Ñô ÷À(Sôž |ê¥èÚ¾Û–Îö^T^xõ¹½%U¯|³µË;‘jDÓs½lÖzù¡±Õ÷¸­Æ6*ú×ö‡ÕÇwÜã/³É$}Çoyù˜Ûk¶_LÂù¯=zÔ´{³õ÷Í6çƒÉ…¿@ùªíëòl #˜žÌIìÁdšÌ6 ìÁdžÔ ìÁdšÌIìAdžÄK ²Mf $Ö`°ObÖ`°X±’kØ&± ‚kØ&ž)ÉìC`–Ä6 gŠÁ,ñNKrÈÁ ‹Ä¾pŸ¾0+Åj"¬7!)Áv•kõÍ}m…c[SgPÕë÷ F¿s@Ñê÷úÃ×´¾Í¨=KÕ½ï×O¤ýƒ‡<·&©C:qÒ$£Zk‰µpéËZššBî_ëFÓÕo÷Ru³ú ûýðTøO~ÓÌn¸6ÞÙóçr¯¶Þ{VµR¹â½^gV ^^5½>¿Üö?Aæ4¹ Ûy‡|têß!áõì.ZÑâÆ5âò·Öøó7¾}Sæ¸Úö×¢n}¶ÕVt=¤žÓVÆqA[V\ÑQô¿+»¶öMk?Ö> Y‘ OÜýdÓÔO/ùnÊð#+ÒÏtÝm–8O<3w˜¨ªÙ©V·Ÿ½vÃÏrû–—<4_¾â>`VkÚ'³^ÉbÍ{$ö`°X³^ÉbÍ{$ö`°X±‚ň,,A`±f ‹X'³^É=ˆ,Ù¯džÌ ìA`žÄ ìA`žÄ Ã9=ˆ,X‚Á4ðÎMbɧ†Á,ðÎK4sËÄ“G1$ÑÊg.2Ë„¦Rc!æOžsñ˜Í‘ã/>Orò`ÌGâOX͉àWŽÌehmDT†Ü%:÷`(Ö¿X×ÔØÕ5´6ÔMU ½O­ÝëM§ØuG­h}¯Hz7Õ}×NSR©\–„:â}u}YgU[NZÒTõÓa뺹M+{(í°øoÜ€1r>ÿÕýO‰uí'·í½¯õ]÷Œ<¿ÇG"ÌÚúš(ý†ê=±ô…˜í·„¼cÕ}«ŽžÑÄ_zõ¬2õïfÇ×gSºóªØ½›Ì¸=!€µ¿^mµÚ]¯aõ¯T÷Únü用úµ‰ £,ù™ý3~Lú%y0˲ÇCNÝ,µ=éôOúFåÙܺã0‹{Ó9ÒWÊKU­,ײOf½’ÅšöIìײX³^ÉbÄ  °X±‚ň,lW²Of½’{X,X‚Á=šö 6 °Ob ö °Ob ö °XžÉìA`šÄ ¬A9<ðÎO4SÍ ä³Å1,ðÌK4r’ͤ’Ç1œ˜Jg&IŒ†YøÈó›ÈÍäñç/&rxEŒØc61ÏZ+QaµN «^®P«°ªk©l隺;ZF£]¹×šMf÷Xzö›Ùu©z¿úÁº÷ƒý\Øjéê Ú~ŒÙèµ®o=;è?¢§oÐ?ÙÑq ¨­væ·¾ƒì¶é7~üÕvJ7q­êj•u9¸—´º~Lmz×9ÿÎÿz휆­£ èÁèǾÂSÕϼ>q•ôoƒâ«~÷¡×=ú·ÏõÞ{ô]Ëîy_·è¾•÷ºrxöÌvò¾÷ÂÞP*ç–oÐÇ篬`ZòñÓ° ×Þ×F\Ó~®ÿ.­žCžVH?? ÏÌàökZ,Y¯d±b½’ň,,×°Y³ZÉbÍ{‹5ì–,W°X³^ÁbÍ{%‹ì–,W°X±^ÉbÅ{›ì,A`žÄ ìA`žÄ +Ø,Oå‰àœžÄ“Ï‚yᘞx'&š)‰¦ŠbY¢˜šX¦$–9I%ŽS9c“<$3ÏÏ2c‘ç?GŸ9GÒ`GŒ¸a6Xˆ¯ ˜Š°[€©^år•[ÕŠ¶Tu-#WCk@Ôkw:ãG¨ßê[õßmÐb穞ᥣë¦ÇÖõ>Ø|ç²Ç; =Þ@ °3yMÔO÷¼+³zŸÒl{!ê:l— {袡“>¶Ÿ®ÊÇlèò´¾£ÍøëÍs¶òÎïÅ[½£®÷blõÕ7aç¼÷ÎS<«æÿH<º@:Ïé[´°;„dØçí[[°ÕÃÝûÏéëóáúâ²!­ÞA?<¼3äžÍkE›ì–,W²X³ZÉbÍ{›5¬–,×°X³^ÁbÍk%‹ìlÖ²Y±^ÁbÅ{›ì,W°Y³ZÉbÅ{‹ì,W°X±^rÍŠö Á9bÅyËÁ9=Šö Á94ðNO43Í ÄÓC9,ÐÌK,R’ËÄ’G!$‘Êgž™åã#/>3<—Ÿ&>3²ÄÇ0#Â\cš2lDW‚Ì%Zöë•+\¬R§°¦kéìišÚJ&«]¶×šm^ïVh4^Í£=SÔýëÖ™z_Øÿ@§\]ê{X8â‡U|ï{äw=ËØ>~î56[mîµ°W›ÅZè–•}>nÝ«’^µÇþÌy;ô>éÆC{Ó@:0ëã™Ü3ú &H|6;5u;M< îÖ{¢ë_²Ž&u€?<Ÿ¡¿Å!ó`<øòXµVÑbÍ{›ìlW°Y±^ÁfÍk%›ìlW°X³ZÉbÅ{›5¬–,Ö°Y±^ÁbÍk›¬–lW°X±^ÁbÅ{‹ì,W°Y±ZÁbÅyË+ÎX±^rÄðNXž Éç¯9<ðLX–‰æ‚ri¡”šX¥%šIdŽBIb”Ï<3$Ï Ï2G ËÏ ŽB?DxI‰SFCѕᱠ^½¨ •®V)Ô½P£NýC]KcHÖkö” F³s­4z_aÓ·ë¾× =7õ+ùsíÜí|»ã$9ÔOýׂö¿Nú4þÅɺf›ÚçŽÅï0ǯɱ>ªŸ«ËFm°ä?j½g˜ñ§™'hä¡›ˆ)Ÿ™“Ñ—éˆXìcç/ÊZ]¾‹Z½úYåo û÷” >€qCòÝ7K ><–-U´Y±^ÁfÅ{›ìlW°Y³ZÉbÍk%‹5¬lW°Y±ZÁfÍk%›¬lW°Y±ZÁfÅk«¬lV°Y±ZÁfÅk›¬§¯9fzó–g¯`±b´å™ëÎYž¼å‰ëÌXž¼äóA9<°NO,3MIJÅ!4°ÊK$Rç„™a‘žxde–>LÀã–&8å‰rFGÑÃ4Ex,ÀV­j¹R­Ê¥*—ª(ìiÚ:¯[¶×m>ûNh4^Ë£=Gß}?ÓÞ~Ÿþ×Ò÷(.àöè éÛ›ôŽAqÏG½ùëº}akÙµŠ<±«v‰)ÖÓæáÝÑj¾ý¶k?$íî_Gï|L7mD û·3èè6¥íoÒPûªÖ*ø¡³Ôr;MÉý1#$8H~nxø<øòXµVÑbÍk%‹5¬lÖ°Y³ZÁfÍk%›¬lÖ°Y±ZÁjÅk«¬lÕ²Y±ZÁfÅk›¬¬Õ°Z±VÁfÅk›¬lVœ·=k›llU°Yžµ‚ÅŠÓ–§­9bzó–&¯9bh%,O^bÄÕæ'–Iä†Ri"šHe%’ 32_8dHÇ#?1æyðcà1ÇÏ‚<3ÀŽ9#!ŠhH`ž½{5ʵnT)Õ¹T£Nõ3_GcDÖk¶ºãS¨ÝêM—ØtǬz·¹úÑÈ~gõcÛ¶D/>/õ¯’ü‰õˆj;o´}ÃŒÿ^£ßmÕk}r^3m²å‡f}–ñ š'aåA›ˆ ñÛÛ\ÇuOë5ãvüë÷žTdì—@´8“3o¾^«8ÛÄíŽÏÏu;'hÝÕ³O­wa=xw)Îó;eŸ8Ð÷|?‘ƒˆ@çÇ’Åš¶‹6+Y,Ø­`³fµ‚ÍŠÖKV*Ù,Ù­`³bµ‚Íš¶K6+X-X­`³f­‚ÕŠ¶K6+X,Ø­`µbµ‚ÍŠÖ 6+NZ±VÁfÅk©ëX,ÏZÁfÅ[™ëNY±ZrÌõç,OZrÌÕæ,O^bÄÕæ,M¥‰`”žX%'’ ä†BlâÌ›(ó$Î?$™Ç䑎G—çÀ <âcxE$dQK 3BA^Äj¶êjÛªS§v™FŽÂ‰¯×ìµæ¯U¸ÕmFóPz÷®ûF€ô~äz|åõÌcõùÏ=qž©ñAÀ{óÜ=O•Ûf©ò>E}Ф~qöÏuø³YåFׇ5©»Î­W s{ËŸWã|¾Ñô_Yš«^¡Cé^¿U7»ÁõëU|{Û7öçkïZö\yÐzt[Ö—= õ¼ ̾åëEWÝètót}c/‰ÓÆ}oš`ý{QÈý's òöÝ7#õ6ù·ÒtÌ€§Ðù·â“ôÇùœ jÙ,Ù­`³f­’ÍŠÖ 6kX,Ù«d³f­’ÍŠÖ 6+X-X«`·b­’ÍŠÖ 6+X,Ø­`³bµ‚ÕŠÖ 6+NZ±VÁjzÖ 6*Ø-X­9jzÓ–lVœ³b¬å©ëNZž´Å©«NYš´å™«ÊYš¼Å‰«ÌX–¼ÄòÁ)PäK”9££øÃÁŸŒ<aãÎ0yŒñQÁ$uå®EZjäg¬V©f™V•ºE=nÃ\PÖlµ¦¯S¶Ôš]°hOSï_¢ÎÕŽèüÝþ‘:‹Ûqú’¥c¶.‰ÍŽVFH-zCðÕû/üh b̵b­‚ÕŠ¶ V*Ø-X«`µb­‚ÕŠ¶ V*Ø-X«9nz¶ v*X-ÏVÁjÅYËsÕ°Z±RÁnÅK«,¬T°Z±RrÜõg.ORrÜõg-ORÁjz³ç©9nz“–§©9jj³¦«1jj³¥­)jZ³d­)fJòd­!g:ò3¯™>pdO”9y‡"_1y$F$ñ‡ƒ?bg†8žpñæ$b/1Ô&å®E^ZÄUgªW©f¡V•ºE=}íyG[°ÖšÝVÓTiô;íë\ýà&ÒÈ\åý?™ßÒ¯9I7l5ÛÀp[ò‰úrüÆ€>›l¬U°Z±VÁjÅK»l¬Uœ·b¥‚ÕŠ³–ç«`·b¥‚ÕŠ³–ç«`µb¥‚ÕŠ– v*X-X©9nz³–ç©`µb¤åÉêN[ž¤å¹êN[ž¤å©êN[ž¤å©êL[š¬Å©ªÊ[š¤Å©ªÊZ–¬¥©jÊY’´¥™+HYξeŒëÈO|Éòƒ"0ù&ó’T^IUò&ó’d"ox%ñ‚LcÄÏ p21ãæ"¾P×ι…i+U–©I镨[ T×Ü×”u{ a¬ÒíôƋԽ¯ÔÏÕ¯Ú¾-öóqÕk½Q3ÃÉjÅK«g-ÏVÁnÅK«,¬T°Z±RÁjÅK»'-ÏVrÜõ,ç©9nz³—'©9nz“–ç©9nz“–ç©9rz“–ç§9nz“ç©1nz“&©1nj“æ©1nZ“¦©1nZ’–ä«)jZ²¤«!jJ²³­™g:Ù–r­™c*ù<×ÈŸÌI‰¼D$ñ$˜á&`g1™Eâ1˜ `Ê ÒV"«-R“Ó+еD©¯¹¯)jö³]¥Ûi'ª{Gª¥Îdp§šÀæãª.âzviêÎ[ž­‚ÕŠ– v*X-X©`µb¤å»'-ÏVrÝŠ“–ìTœ·=K«'-ÏRräõ'-ÏRrÜõ'-ÏRrÜõ'.MRrÜõ&-ÏRbÜõ&-ÍRbäÕ&-ÍRbÜÔæ-ËVRܵ&-ËRRÜ•e-IVBÔµd,ÉVBÖu³,ç[2ÎU³,e_"ÇšþIüÂ'B&ñ‚_x$ÆâM„8a±Å,QÄg™AŒšþ+оjž)åLÃ_6¼‹YcVUÑl=xì[ôËÕŸi€RœÚßâ‘‹SÓœ¹59ËsT˜·=9‹“S˜¹59‹“T”¹59‹sT”¹-IK’Ô”¹-IK’Ó”¹-IKrÔ¹-9K’T”·%I ’T·%I rT·I yÔµ\ËYÔ̵\‹YUȵ•\‹9Uȳ淒ʷ’ÏŠâ¿‚ÇŠþ Á‰>0bM„8a±G,QÄg0ׯ*Þ+оj)åLÃ]6¸‡WcTR¯_±Ãôcí€üšþ²º¡?7 2Ãä¹59ËsT˜·5I‹sT”¹59‹“S˜¹-IK“S”¹-IK’Ô”¹-IKrÔ”·-IKrÓ”¹-9KrÓ”·-9 ’T·%9 ™Ô·%9 yÔÌ·LËyUÈ·•\‹YUȵ•_%¯5¼–|ÖòYVUüU¼FO1’Å$ÐG%|+UÆ©•Ližh5ær݃~ xùÈ04_ŽÏÙ‡[‡åøy’!jZr—%§)rZr–å§)rZr–ä©!rJ’ä©!nJ’ä©!o:’ó©™o:’ó©™o*¹ò«‘o*™üÕȵ•_%¬ªù-y«ä³æ¯’ʰ²­à³â¿‚Î5ñ,ã_Æ`XŽÉã†2h¡Œ–(b%‚8 +aXήO4”F¿Ìc»^¬?bG¶ü¿u¹û>ü}žŠb'’¬…¹iÊ[–¤…ÉiÈ\’¤…¹*H\Τ…¹*H[’¦e¹*f[Τ…¼êf[Ê®E¼êfZΦE¼ªd[óW"ÖU2-y«äµæ¨µæ¯’ʰ³â·‚ÏŠÂÇŠø–1¯‰c0'ÂÉã†"x¡ˆša%‚( *ãPΦ4Ï4Qƒ³#µÞÅ@ÕkÃð¶ìˬÐÊX<–ä§)rJ’å§!rJr$§!nJ™—$§!o:™–ä§!o:™ó©™o*¹ò©‘o*™²«ä·æ¯’ך¾KJÂÒ°²­à²­à³â·‚ÇŠø–1¯‰>5ð,GdñCÙ½õv}×é õ?lž(þÓ?!GÊ,DÙÖÈ·9 yÔȹ•LËyTÌ·•LËyTȷ毒ߚ¾K~jdZóT[UÕ¿E¯¼|Vijâ¶%œ+àY¾øWŒ± 0“Åq€øAö‚ão$‡âÕ?Y?–Õ>YÄ,e[Éo*™–ò©‘o*™üÔȷ毒ך¾K^j‹jžKJ¾ ~*‹XÖðYñ[Î5±,á_Æã,Gƒ<Ú=ëõ!ê~Ø8-Αøi£úrüÍ”@Ÿ8‰2„O•o%Ÿ5|–¼ÕüÔÕµAiWÁgÅoœ`ðMŒc,@ÉÞÿUž§õ€çÀüCz§êïòÞz Š‹úž{`ão$‡âËå´ÏËÄ ïÐÙÇÎÿ€§íƒó7Õÿ£¡ê z÷¯Ôññž|üÜþϾl~)ŠuÖÞš.ÈùÓÜÁè¾ô¨NÞÇâÕ?d?š£†` ïzGWߦNAßBøéÛ¡ïÛWÉÏÅ›»^OT9˜pϰnâ{8ùÈ0ò¬ίR¹n>çk½X@«Ÿ(ú¿v½½_vŸ|ãç Çæã«Ü·ÆOÆ »^¤Ï›÷8È>ÿ»:…í³zh·£«î¤ÿU£ð¶ýŸu`t åw@ÓDìµãóqÚï~Ó¼’|gìÃ¥ŽºÿWcðÓGöñÁcòà§ ÛÝIçIÖkôSΓò§Ø7èàu¹Ø6ô¢â÷/‡Pœ_ý Ê'i£ð¶ý¼|,ü}¿UŸ?7/Ò0üܾ“ó`;#ìŒüÜ¿HÛÓó8ýdýÔüorö?/Ü ï„u›ÊþA€ÿÄ= 7@P04p!1`"2356€#H$%&'A(ÿÚýë¸WÒZ¨1>r¾X³;=âÙ¶Óþ¡òÈ,XNÓ8¿”î|iu³Þ-™³þŸsÖYMŸÁ¯j›Î+å[§],÷‹fAlÿ§™EúF/Ž9Óê§/÷H‘6€ù* + ÿ§Pd¾ÍfƒúL†(n¬`8?œ>Æÿ§œ­’ýìä(JØœ¬ˆÂp8}ÿN¹s&û©ÇÒЋ´~œö2$G 'ó‡Øÿôçª ›Úï°¾ÿXbQÂȈ‘"GO\¹QíôÚã_Ij·Þïw š÷‹ì1xRD¢¤c"DH‰há\¶faÇ¿ôש|Ž f !|ý%­î€cÑ:d·ÕÑqÏý5ê†}DyÄ"í|ý%“ô}˜È‘Co«º×âÕ&ŒÿÓ^¨qªµpB|ý%‡üƒìÆp?ÏÅäÓl›¶å¶,ûï\{z]¯Ÿ¤±7ê´qCãN²á_ôæ÷a³d”oMNŸtânG³—ÏÒY¢j²dùœëͧëyE;ù˜¥Ò¢ù‹ÿÓ¾J¡«¶ò".9uŒ¦™Èf;×ÒVq_ý;ê6Ù"ßÉ(½Ã 5Œ¶G¹•.•m?ôïªKDnL%úœ ´ÌÔ10Ü=›=ÿ§}EÚ¾ÐãX ¼ :[ÅP¢Señ×ì^Nÿ§y]×–TCtä˜Ô©ðoÆõ“éê)ë)ÿéÝîÕö ù¥úSYK”3QÄ·J{ÇÿÓ¾g¡¤¶ò’.pÃs-S!r¦5]*+øÛþõ?CW/0Eö½¡–ˆãñŒéNáüÿéßTv¯VÅ ~nŠgFtÛt§·ògý;ê‚’¯‹à/' ¢iUˉ̓ÅwJ‹?%ÿӼƂ®ëˆË.©:n)ùA úŠIÿôòçl¨²]§ÃÊq–衊DÓ‹+é.\qÿNù‚Ù"ÑÉÈ™•1–ˆ÷.aÓÒž¿‹þ¿“fÆItê¶Ñ*£ø³0nfÂ3ê¿ßޤíPçЗ=:ÖYâ~s•nÞ­‡ëÙÞeAã9VO{Ío~˜å‘A£ƒùÃíߎ©¨*㢄½C 5Œ·?þLgK•ç_^êO$Šç¨OÂG *uEF}ûÍŠ~ûu!l¨¯ã˜ ò[d…Sü”É|QOKË?^çHWâÆ¿–†ˆ‘59])î]ûíËÖ¯¶xÒY|ý É#¯¤´æ^êJÓ }ÂMUž©™0éFñ‘ûíyµÈ¾Z%Kšn€e²d3)'"Ít§¾Yþ»ÕE²tÛ2NDë\øâ0é¾íöo'þûåt4–¬¶¥8©{Y¦ùJšq-ÒžñÆ¿]ç«D^3®Ë¬¶Gª†DFqýÃìœ÷÷ß›dSÓrª#†("e–lÏRaÓuÛí2úîAjûvÃuÒ«¥Â2"2aŽÝ¾ßÇÿ}º–‘O'‘] PV2Òæ{dÃ¥k·«aú÷(ÙåØs ,‘œ†DM8*ñç‹¿}º¨þ¨»Ã5Ì£[«ŒéféQ'*ú÷S–‰ô\‹%–輩™0éVéO7ýöê«üЗØbö‡Ú3§{¥E¿”¾½Õ\fe)ÿ;Lc"&+×ÕËÌ}º” ««ãÈ ì18RD££â»¥EŸ’¾½Õ5®lëGŒRæZ£ÕC"#8J¾’ÙÊß¾ÜçOQSÅp¨bŠŒe®% %}]¦¿ëÝ@ÐÒUñ…dU]$j „DeªéQb¼þûgTõxD²æ› e‰{4Ó ¯«»aÿ]Ìh*î˜Ò ©’Éq8å22iÆ·ˆ/Øï´r'ÒN«ý ËDӅ.úöui™c¾Ée¾%#"&9])î]ûíž?ÿ>]™eiUÌ:jºT\8ÛëÝ@[)¨yS-1îS"&(Ý*&Ùÿ}¹×âÂ*’†¥–¿×Ì:V»z¶¯u_n›E/úÙâ~£"&/\=›=ýöêZžžO!¢ç 0W2—õq*Ý)äÞ¾½ÕE©NÇRpÅm‰CRȈκSÙùO÷ÛªŠzxja/0xV³nÓM}%$ý{¨ J¾0©†dT±øLdDe†ëöCûíÕ®DÜjù ^Ð2CqRð7Åϯr¿íLå/Ó«”ÉQ8äÄFM0Êú»¶ûëÔe«í5€¿veµ·A€ü@úþQm›i»J-Ñ(©4àŠŠŠ®'ýõæ[]Eߌ`/Ÿ¤gŠ(¨é+êí5ÿ_çkB³r,¿ëhr™0éVéO7ýõΩê*ð‰eÙ'@2Ç^L2¾®í‡ý{ª{|šlÚëf‰úŒˆ˜t©vôrßi_Òá©D2ÉS¦œKt§¼q¯×º´¤•0–¶•S"&:]*-ü§ûíšSÓÒfÕ)ÅJ2Ñ…lÓ§ÚŠyÜQõî¦é'Uqæ¼],j ¤DgWÕÛy#÷Û˜-töŽN]™oK­˜t¹ÿú÷5PÕÜx¾¢eÔÊ ‹Ô—.¢¢Ž£÷ÛŸè*èùIàR§2¨jc:R¯«™Cõì¦Ù>÷ŒÜ’UÒÊ(œtŒŒš`u˜?ï¯SXš«Ò­ÒžMëëù²¢ÉAýmQ8©4à„Ÿ¾½TSȆ¦ëþàÆSþ¥ÿˆ__ç{K³òD?ÖÊß‹"&,TSŃþúõKk¨›j„¼Kð­oŠ(è8 ¢¢O,ýª+K Ï¡,Í{C"&'TSÃQûëÔ÷üùú±–¨Ôt<;t§³ò×úµ´¹w["PÕ²"aÓE<ŽEýõçêzyÜW~Kc,­{6ñëýTÚeTâH¥KšÈˆÎ¯¤¶r·ï¯2Úê.üc,¾ÃˆË EE$ÿ¯õ l‘_Æn¥Å,‚?R\DfQOGœþúòüY|ý Ë$Q{Dïén¯¤»[þ½Ê¶É~9¬†(*à(£õ)"#&õõ”ÿ¾— K­¢ñËW—îõ—˲ñ§aŸqx«·:^ª¯üÁÒÍ‚]‹…½î Ák°%]]--˨‹5mÃñK_Rxå-ï·(u …ñ5þ¯®ZX*±ì¢–ñ…ÃÌ÷<ž—!ê?,Àk¸÷“°ÞPµåù¦1Y©9“?Ééjz™™ˆ^lû6Sf9C”,M`½uÁ`‘U¼­øÁ‹Uó-ÖªõÍ©ŠRñ×:qÇ'wË:½Àq{¦'ÖWÞŒ§y'ãz“Ÿ3L>‡¹'åLpä.NÃx¾×nænIÊdßyï;ÁÌ;?Ãy„Ï9ã{4ž[åKÌʾMç*[§U\iAŒbwß½µ]]--_>L¼\ÿùÔ ê–Óyâ¾i³rÕç=Ím|w‰ßzÞũΠç?ÆŽù.UŽa¶¹ó}ÊçUòo8ÑRà<óò ç¶YÕî‹Ý1>²¾ôe9~iŒ`VoÅ.X¹ÝRÙ¬·šJºZú_™ê×QoäõÝ’ãsdt£QQŸ¯õs©FŠhԹ̈˜t«vôr/§õÿ3ùy_êzg¤z#’99,ñ‰~FÍì2qN~¶Õ–‹Õ¦ýGùü±ð³‰þ)ûœœ^z“å¬?°`¶¬~/¥©³tÍÊó¹/:ÓÅqË%Ó„©¥ó IIKAKWIK_K&­ôÿÔ‘Þ©q«JÖ™yÅÏ·XœWf±LíÔ-‚ÍŒsn¨9ò» 8…-|UŽt”µô¹ŒŒ¤þUÅr[^eŽhâ¸äœC§êº¬Ë °X,ص˜æÛ\îç›MÒ†ùk÷9'ÎÝL{œOð³ò9K’ï¼ýÈø. ŽqÖ8gX.9ȸçrnOÀ™çn­1\säÞ*¤¥æûWIK_K…VÔpQÜmk“ÌÙ̘,žD㎌³©Ö¼Ë·Zx}‚^5Ónäû%%-)Õ—ËÇ*º_æ¿¿ö"éiµß(ú¾5æŽë¯ÇT\?“ò›¥ÞÉøºÍÌ“CÅx?Mœ{Q˹aWIK_K’Át釞m7J寄fPó—5vêûŠìÕØ¿ü,êŸ#ª¿ä¶ ›³Ö Žr.9ÑÍ–«¿YX,×>èc¶U’ÚðÜs¦¼õeÊ4””´§PÜ-KÊx¿Küù]švºZmwÊþ‹çÞ(ÅþôWK`´9—tUNª¡ùž¦ÿçèŽ*cOú>”?Íõþª)¤ÌÀQ¢QÃÓ5}%$ý?¨([̽8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆôâ=8N#Óˆ“./[Ó=3Ò=#Ñ=ÙÇLEG²*&Z«ïXýn9Ï×*x¬95ƒ'¦üÞXøYÄÿûõS˜×bå¼gŽrÊ®´i¡©þ0ù0¹uAÌuÕµ]Fs=e7â‡&Š˜~(raø¡É‡â‡&Š˜~(raüJóYgê›—í•4½bò54½hÓESmêߊë«lü÷ÄÊ›=úÇÓ}7•m’.üsSú¤ZÚt1œñ éüÛ/Ï*ô@ôDôODôODôODô@ô@ô@ô@ô@ô@ôdÿ‹Àð=3Ó=!I‘H"‚T•n·Ü.õ6^#¨›.Õd´Øä~w,|,âŠ}úÕÆ¾ÐÁúºPʺ{½s.| íÕÇS®•Ö<ˆrù™ßt”µô½Nt÷kÄèz\Ëæe¼>uGñÔæœkïwtßt¡³óo~­¯T¶®èëûc•Nµ~tUð³·Z¿øŸág|ª\¾gêÛÜêÓŠæf8GüK‹gžîk”RáXcWL_Œ:ÕÆ¾ÐÁúºPʺwë‚õK>ÿÑV5ö~u«ñO‰þvêã¯~—>:öëWágE_ ;ä7¬ß4Ǭ´¸Õ€ÿÚnýFã_uù“….”7Ž#÷:rä;Ÿ$ñ§n£úp°}ц_2ïܹçjê+·$ðþÊ”q?Å>ùV5ḵÎ6ºWtïÎ}í±þ&sÉ×9ÒçÀ®ÝQüu9cágE™äº»7nkºPÙø£Û-U«‡Î¨þ:öå¼áÀœ¯Šä¶¼ËíÖo"ý¥}éçŠæqfu«ð³¢¯…ºÕø§Äÿ ;gùá½â ²ýÞ¤x»ºtóÔ5/%Òû•÷ßǬÈÏðê@ÃxnõUÁ\ëß.מ¢ù¿Æ­xn8u«ñO‰þvêã¯~—>:öëWágD¹-®f-Û©îI¡Áxã¥(™æ]¿ö›¿VœW31Äz4ä:[Ž/Û4ËìØ/ÀØçÀú0Ï%Ú²Ž×k¥ Ž×Ðý–ªEƒª ¢« êÓt¡¾Zûr¤™yW‡TºíÔÏNä¼¢Î@¥§™Û?Ìhxÿ à.?¹ó/(öÿÚnܱ𳢯Š+rº[,´YwT¼cŽ/W|ƒs2,ï3Ë}Ý3Åž ðg¦ÏLôÏLôÏÀðg‹4ÿ3äÞAÄ w¬<΄Çzžâ;ùmº[/T_F¹ÂÕj,Mø²"iŽÝ¾ßÇþ’`vŒ¢»ð?ñ£ð?ñ£ðƒ?1£ðƒ?1£ðƒ?1£ðƒ?1£ðƒ?1£ð‡?q£ð‡?q³ð‡?q³ð‡?±³ð‹.ü[ÐZT€jÛ4¡U×Ö,óαq=¦ÞSÓÓÒJù÷šóìK,ä~eçlÓ´ñß1Xî–¾¢¹¢Uò>SÈùwƒ±_¥Ä²~jà 4TðuE-^KÉ|¯K‚à¸çcœ­ÈùOœÓpæÎd¼ðÿ%sgbøGtËq<÷šóìK,Í1nlÏr‹PœÙCfå…œIÓet\qIÏrñª_âg‰ë Õƒ’ú‰t””´¹ï5çØ–YšbÜÙžåWíâÅ-ŠP¥ X¥ž™éž™éž™àxàxàxàxàxÀxþNÉ™Þa`Ú*¥Ûn–ËÕÐyúÕMhääY£ñ¬dDÓ€>ce0¸ñ‰6U¼{.µŠÅƒÙ,ŸØ\•—ËÀ°>аÏbÇ>ƒÖ¯ÂΊ¾}g;å,#Ži³þ®ïwåt¹Þ«tØ¥ŠP¥ X¥ž™éžàxàxàxàxàxàxÀ8à<#Éò Jç‚uƒ2ž›Îqê‹çúœ¶ÖRrj-q(+™4鎾®³Ž?±«ie×QÚq‹%–ì>²3Ó(x×—`@å —%Ú¬¥†u]ˇâ½Yq5/ܹ.ë`ú¶kšãø?ȽVåÙSSU]R l†P¥ X¥ŠX¥ŠÀð<Àð<Àð<Àð<Àñ<Àð<Àð<à€pÀkß¶Ý.vZÞ6êÚïMSŽäøþ[lùÞ­¿æh£ý["&+×ÒLÃÿbïü C‘s'öÍÊél²ÑrV”R%d96C—\á–Ù ¢B–)b–(à(Àð<Àð<ÄñSàSÒ†¤±Å³²3þ þîó?3Ú8¦Ñy¼^2{¼¹DÈeÀC „PŠB(E âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž#„pŽÂ8Gá#„pŽÂ8Gá"„ŠÃïaY®A€dEÍXÿ,Ñ|žSlŸ{Æj?TXFFAQQGQû¹Ï\õMÇt׋½ß'¼K”A,†`€PŠB(E âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰âxž'‰£ÄñTSÎâì[…l«mžÿfÈ$|¿+óæÅ2mygU|©Cì}dâ¦5Ô %Ó–y—Œ°>=ºW_0÷#ºbXžsÕ—)ãçMüÕ”ó÷‡R<Ñ÷BÛ&I.Y0ÀC "„PŠB(E¡"„ñ4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F#„p‘BE $P‘B5îÒÕTÐÔðo1[9;üî¬()(ùãr¦2"aÒ×Ãÿì\³þ-KWUC?åëͰ°æØÖGÊsO&K⌥>!ûrwlëÇ9æ¹™Æ#'‰þTÒRÔpwCÝüãÌ6Þ2°GMmL¹d@C $0ŠB(E¡"„PŠ!#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCC„Š(H¡"„Š(F½Ûòï]øÃ“ñþRÇÿ7«xaûì»2"aÒ×Ãÿì\¯ùâî»ã¼­‘ÙLk’1ÌäúܽUOÍ8z’–‹Š;õ›‚ɺa¼Oð°êàWCÝÜž[xßÊ2[¾q’K–A0ÂC "„PŠB(E‘£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$4E $P‘BEÖ½Þ0äüƒ‹r òÑ’Ú?3«ëW£u]¤ÆæÈˆ˜t›ôëÖeãµ_Š8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)ø£‚ŸŠ8)|äl2¾Êä‘H"9q.Öÿ(Çâ°òÞ5t†TÙSå~[˜½T«ÿI\C“q÷~`°KÉø»Œ©*¨8ØêàWCݵUTÔ4ÜÃÊ\±•J–K€‚Ha!„†E¡"„HHHHHHÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$44E $P‘BE×»ÓŸ/þd™Ö1EJ»R~’"aÒoõúo6M—Uíh{DƒÚ$Ñ ö‰´H=¢Aíh{DƒÚ$Ñ ö‰´H=¢Aíh{DƒÚ$Ñ ö‰´H)§IŠ¥ÉÈ"§"¦"¥dRcEƒ+¿ãq®^³\ÉSeO•ù¼ÁÆÔ<©ƒÿù—æX‡[”®^5Ôo å%]-}/~¨þt]t¡±Úé.\—Ì”·NŸ®“hl½Br_g󞤮wü†ÝÂ9•ÎNQÂü—a¥án¤çg™j £2ç#ðä)¼óÓÉůŽrÖ8d2o5`£êÃÅúPä,¦ëŸPdƒÎwNZ䳇9‹3_ÄN>þÕꃖþÚ¯“(—ÂC $0Â(E‘¡#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCDHhh‰"$Dˆ¡"‡Þék—þ×¢ü¾¯¿B»[£s(b&+]*$å?MæÚysr¯a’{ “ØdžÃ$ö'°É=ŠIìROb’{“ؤžÅ$ö)'±I=ŠIìROb’{“ؤžÅ(ö)G±J=ŠQGC%Vz'¢9§8éH¨ÈèvL·ÄZïy==Ì´SËmÖÝy¥üÎ@âl“irŽˆïòª²^å\DÅó\» ªà>¨>úWvêàWLvZ¬Ï.í×®†UÓ§‹ÕUÿ…Ž­9RfˆôqÇô¶l'·VX„Ì#”x³5üDãî¨òù˜—ôùÏ6nEª.Öº寃n•ÜWÏý¹cágãÕÙvSIIKAKÉ:ñï)^l 6-fþÔæ®H¦ã|&D­à €‚Ha!„PŠE‘¡#F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F††††††††††††††††ˆÐÑ"DH‰BE >í®å[e¹ðï'Ñr–#ù]Y|3]­_íñ—>!}7—dú™'²È{!쇲È{!쇲È{!쇲È{!쇲È{!쇲È{!MKªHôODôg=˜öSØÇA±ÚöGcQ”6Ë­¦ªÏÈéä͆|¿Íä&Àù6—•ø£#â\€¹«’øÐêàWCúç:\øu’ýèæN)ä.,±ñ—âÇ‹Xuƒ|ÀrÌ[£ ºªŽ(äî=µò†Â]=Y¸vªõØ1ª[×Pü/`ª´Ý(oHöå…Zèn¹ý­UUMCMË“[Êy|©d¸!!„†Ha!„PŠ!!!!!!!#BF4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F"DH‰"$E ÷xw“ëx·.¥ª¦®¦üž«`õ8Ùv´E T1.|Búo'Jó¿{1ìdzÌ{1ìdzÌ{1ìdzÌ{1ìdzÌ{1ìdzÊ{)ì§²’©µ7Ò=#Ñ=Ð8©…JCFCB‰ÒçL·â•SÕª‚‡òïyåæ×ÔǹÖ.5öÇt;t®›k:£øÐÇ~¹Î—>±ñOŒ¸Ë«øÛðŸ‹Â~,? ø°²ãÖ j—(Ê,X]ŠíÎ<ÁÎùvÒŸYgX±<[?ö›·,|,è«âŸö·V“2"Y.H!!„†Ha"BBBBBBBBF 4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hhhhhhhhhhhhhhhh‰ "$Dˆ‘"„Žû½$òlÉÒÿ'©»\úþ.‡µô‘ø»ôÞA•çyô@ösÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œör }Eé P¥ H¤ AéÁçRÀäS]«Ê<3ÉSRSQÁùEåó0.¤)*éké{õat¡·ð—Dø½U¿:£øÐÇ~¹Î—>`aÕÖ>OéË%ûÑÃ}ð^@°r/XüUyͺZÁdáüUÛÿiŽ1Ín™¡Ë :*ø§ý«ÊÍ7a5u•·‹”¨ „†Ha!D0‰ 4$hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑ"DH‰"$Fˆ¡÷mw*Û-Ï‹sºnFÂ?#¨OƒÐö²~’"3>.ý7-°Ý.—¹ù ÷? >çäÜü€ûŸsòî~@}ÐȺ}˜}ƽŸq¯gÜkÙ÷ö}ƽŸq¯gÜ{Ù÷ö}ǽŸqïgÜ{Ù÷öG€\濸u´‚–)b–? je}<²šê²‡®®vÌb‚‚”+óºÕø§Åü…™pu%]-}/nuÌ*¹÷’ð :‡ðÓªšºZ~èj®– ®ÝrÕÒÇUÒµ]-GÁÆÔ<©ƒôñÉ5Ü1™vænI®Åhp :‡ðÞ®1«¥Ÿ—ºuÌhs.#93)pK5ÿü æC§Ÿþe‹˜jéh¸££ ºZ~WþÕçŽQ§å®L²\BC $0Â(E‘£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F444444444444444444444Dˆ‘"DHŽ(H—»Ó§)Qq¶]ùý«Äpö±EŒDgÔSÒòÏö-Çý¾(¥K&\$ÀGq1ʶÖÔ¼KÖ)ltTÿ%™q=ç-ê+%ÅqÌÊ×'§~K㙟lõ“—N6ê[™¤ñ·àüWBg¸åÓ-Äï½"å9Akèºéc®âž8Êxüån8Êyºt]t¾WXºEÊqsÇ.˜–&rἡk²q5qyö7R—à ãlsí—áxÆ{f§éƒ2ãúêj^¥«¦bIfǯ<ÍÁxç0Ðâü ÈðÚêñ™paw®”3L––“¢:ª ¬ …3ìK,þÓêk“%b˜¤‰z%ÀK„‚Ha!D(… 4hHÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCCCCDH‰"$DˆÑ"C÷z`äùYv#ïòí«íž5‡ú"3þ ÿbÞ?•¦U3â‘bqÅoÅæ"’ÙIEû UUMCMÈÙ­O"æÒ %ÂA $0¢B„„„„„„„„„„„4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£CCCCCCCCCCCCCCCCCCCCDH‰"$DˆÑ"DkÝâÜî§ŽszZªjêo{àPBÂDFqÿÄìZè=J*,rcT”´KöªnAû‘,—$ÂBˆQ !BBBBBBBBBBBF4hÑ£F4hÑ£Fï£F4hÑ£F4hÑ£F4hÐÑ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¢$Dˆ‘"DH‰"%îô¥È¿xñ{àPv±þ®"3øƒû›UUMCMÈÙ­O"æÒ %ÂA $(…¢$$$$$$$$$$$$hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F4hÑ£F"DH‰"$Dˆ‘#^ïçu’ì‹WëÙ4㿇ÿ¹]We¿dá4ð¡%Â@ˆ !D(…¡!!!!!!!!!!#BF4hÑ£F4hÑ£]´hÑ£]´hÑ£F4hÑ£F4hÑ£F "$Dˆ‘"DH‰¢5îôûÔç¼kîrŸÄÔZ¿^ȉ§ü?ýÊê&ƒ)åi0’á D¢BˆP—düÝ~N¾YŒcÆ1ŒcÆ1ŒhhcCC"DH‰"$Dˆ‘#C÷:BÊåÚ³s”þ&"µVȉ§ü?ýɾÝé±û%Mumâã*Z D…¢BˆP„…Û]µùš÷4hÑ£_0Æ1ŒcÆ1ŒcÆ1Œc"DH‰"$Dˆ‘"Dh‰{œy•ÌÂ3s”¾&¢“õlŒšqßÃÿÜž©2k_ÓÂJD´@ˆ !D(…¡!!!!!!! B]´kó5ß^þ¾eŒcÆ1ŒcÆ1ŒcÆDDDDDDDˆ‘#DkÝà|’›'â~ü§ñ5Ÿ«dDÓŽþþäõgöüÒL$¤KD¢BˆQ „!Bù-~N¾aŒcÆ1ŒcÆ1ŒcÆDDDDDDDˆ‘#Dh~çF™©lïÊ_QIú¶DM8ïáÿîO(_¾ôòT”KD"BˆQ !B„!B¾o_0Æ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDH¢/s¦‹ì\ïË .IE'êÙ4㿇ÿ¸²¦ÊŸ/¶aw©Çñ*X”¤KD¢BˆQ „!B„/”Ñ£F¾mŒcÆ1ŒcÆ1ŒcÆ2""""""""24F½Ë â§¾w埉¤ý["&ÿcdUSè1û8O•—!²ä2>W¹ ”ÿñ~ êjê<¦gÜ)ÎX•‚ÓÈœÅ|ºZúu扴?Ã)™u_ˆÐô‹›æ™/$ü6õ fáÚ®"åÛ/Ø?³2K—°Ñc·Ogºvê†ñöoSÂJD´@ˆ!D$$(B„!B¾SF»è×̱ŒcÆ1ŒcÆ1ŒcÆ2"""""""""4Gîð­âšùÄý¹gâB)?Vȉ¿ØÙbÞ+–ŠjªË}F1Ìw«YaÍq¬’“é.Á/,¼öå…œOñO½ŠÁ/‹º¾ù¨¸/6ä;ÿM7yâ{öeeÇí«æQí’dc×™9”êúã¸ä"R%¢@ˆHHHHD!B„!_'¯w_4Æ1ŒcÆ1ŒcÆ1Œc""""""""""##õïÒ5òeÇ{s=]·“ÑIú¶DMþÆÊñ— ŠœŠ˜r"F9Ë95ŒÇ¹“ºÍ•6UD¯éZ’–Ÿƒ»rÇÂÎ'ø§ßi)`êû{6¿L´PZ$)2nR”é÷egÞì¬ûÝ•Ÿ{²³ïvV}îÊϽÙY÷»+>÷egÞì¬ûÝ•Ÿ{²³ïvV}îÊϽÙY÷»+>÷egÞì¬ûÝ•Ÿ{²³ïvVA”dÕ1¹C’9TätÄt¥¢õ}Ç*1¾k ©-÷ +­æä6Z\–Á…âl íË 8ŸâŸ|ϱÌêèeü•àRÿŠ> 1JÀóÙ}¯Y¾UUõ5ÁÔUV›¥ ò×zê…ìX¾kˆæ´¦_ËÜi‚Lþ(ø(¹O¹²æ˜ÆEyº]­v:ï?pÞ:`Ü£‚rW¹”s—áÕ_Å\†Á’Òö»r·XËOQü1|ºN¤8JÏ]ˆr÷gs>»6l¹ê®d·ºX|a¨[‡&¦KY‹dt¹M›”kënœŸ%Ñ-"BBBBB!B„!Bù=ï£_2Æ1ŒcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆÈÉžçK7Š›g/öêGã)?Vȉ¿Nç%9åž5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTxÕ5GQãTQAQíž‘éH䜊˜Š™C²Õt¾ã•kÜÛeÚÛz¤üþXøYÄÿýÎ{çÊè.œQÀxæ Br§O8Æo/:®¾Ý ׆xÛ‘.œóÅô¼Mžc7kï3ãÜ…Š×a¼7Ò &O-u'ÉwÜn‡8wÀ)N`àë7#RôGIUAU”bö,ÒÅÔONÜu‰ñ×Cªêéh)rŽE˺–Ï0^/Áøê†®’–¾—˜¸Š«‹¥ðw8Ù¹zÌe]2qY;±}×çÛuº«¨«]¦×c¡ê—„±ÊüO¥NT¼ò#õÎG½:z\e-)¿Ó!¦õ$qÿì<“Wÿ±¤¢Y „!B„! äôk¾¾mŒcÆ1ŒcÆ1ŒcÆ2""""""""""2g¹Åÿ;u#ñ‰Ÿ«dDß§s$¯<ŸÙf=˜öcÙf=˜öcÙf=˜öcÙf=˜öcÙf=˜öcÙf=”¥¦ÕO¦zg¤z'¢{8é‡HEA²e­DK «¢Ÿaå{Í fÊlüÞXøYÄÿûóvy3Ž8Ó£û\ì‹—;õseªÆ9ƒ„sɜƇZ¿ú^°K³q/n®'^q^]Àùä‹7n1Ågcœ¼uGð+¡ŽÝcr=v;ŽtY`—Cǽåݯ< ÌÔ•tµô¦oeªÉyÊÓk¡±ÚÎXøYÑWÅ?­Í›.Dº«„܆õE”Âá+Ô•~¢S`®¡û:ç(–@@@BBBBB!B„!Bú›Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆŒŒ™ïõ#ñ‰Ÿ«dDß§r¼¯<‹ÙÏg=œösÙÏg=œösÙÏg=œösÙÏg=œösÙÏf=˜ösÙÏg=œ‘O©Þ™éž‘é‰èÎ{1ì‚¡µ2U²MDËWÁÚy>ÏOùœ±ð³‰þ)÷ë‚õU"ÁÐǹ×9Ðýêª}€ëWâŸü,íÊüQŽrÖ9˜ñ.p­v5Õg2c¦ Ö­ Tëþَ͔¨þt1Û«kÕUךz\øߪ?޽<^ª¯ü,í7nXøYÑWÅ?­òNC4«lM ôŒ©„¾SäÏìþ3¥ÈHHHHHD!B„!_RcÆ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDddÁûœsUS]ǧR?‘Iú¶DMúw&Áå~ôODôHôODôODôHôODôODôOHôDôODôODô‰Ròzg¦zg¤zB”)'¤‘2ª’IEOw»ElÁt”Tÿ;–>q?Å>ýpYj§Ø:÷:嫥ޫ¡û-T‹Ö¯Å>'øYÚw"RÓò¹ãN=ÊfrOGXÚ‡¥\òó…rYÕÀ®†;umeªµsOKŸ»õ5WK[Î=äãÜœdû•ŒŸr±“îV2}ÊÆO¹XÉ÷+>åc'ܼdû—ŒŸrñ“î^4}ËÆ¹xÑ÷/>åãGÜÌhû™s1£îf4}ÌÆŠüK§¡ñ"Š\²eÂDÛ¬Á:Ê·kÃn7φ[­ÐÊ•*L#”s×áwÞ]꓌*ð|Nû÷_)µõaÂW ”pNJïÏ}8W_nœQÔ} \šººZ ^Wê>†’OO=5UqõÌÍy›¸îéÔW&Y¹K¸“©Þ+¢ãÜ_(±f–#ªBóžóÞ Wq5u%]-}.uÌœqÇrx—Žr<ƒ’rŒ¢Å…غ‰ê'޲Î:éo—°Þ/®Â³ÜO‘-ut”µô¹ r? g_ÎØ(ÒÞ²5KÊ|•ê «‚øf‡‡±Ã!êW‡qª¯¿?þÓǺ•áÜ–ªít¡±Úùo©Þ+­ãÞy2Íż……s7r%ÓëU2hé§VN½Ýi%è‘ fL*!Ú¸ÉÔwš8fÁQKL$$$$"„!B…Ù}EŒcÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒ˜Gît›x©¹ñ9Ë?mL®dDßìkÌ^y·)¬Ž¦&I¶ÖÏvl"mQA‹Zè¾VéǸ ò»ðŸ‹Â~,? ø°±bx¶/îeV#šÒÿ œX±<[ïzÂ0¼–«ðŸ‹Â~,-v›]Ž„û¯bûÓt´Úï”5}2ðumV/Å\q…öºZmwÊÂ~,? ø°²ãÖ j—¶_Ä3«äíd¶òB„!Bù|ÓÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆˆŒŒ˜GîtyðÌ埉µ~½‘Kwr…Úßý‰|†(ì”Ö9³c´áUE †Ù@¿½ý¢¦ë]I,‘ )ˆdDÔ]å’Ë­"™rý)ЈB„!Beõ'ÙŒcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆˆÉ„~çGŸ ÎYø‹WëÙ4㿇ÿØ•a¨‘Aj¡¶ÃýóÅfØ+©à$¢Z!ȉˆ¸Kó“UÖSÛi¼â™$$$$$"„!Bì…òšï28%A6ñ Ö¦% έ8.ó ²*_˱ŒcÆ1ŒcÆ1ŒcÆDDDDDDDDFFL#÷:<øfrÏÄ„Z¿^ȉ§ü?ý¿©¦‘W"³ Ž¶ •!fDL/yîgzåXªJ»mÒ¢B„!B¾Z7¸¢‚ÔT”ñÅL;l­+sND^¤•cÆ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆˆŒ˜GîtyðÌ埉µ~½‘N;øû…:8à¿SM™«•mM9ââU^îž:º©ôw/÷‰D²B„!BÌSÃê·bŠ4±«Ämã7¸O»•ªhih¨?Cò¯³Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒ˜Gît›g©¶q9Ë?cý["&œwðÿ÷ £ýú›ú^!^”EOô­ý-ËýâQ,€€€„„„„B„!Bì…òô_Îu?ùmÿå›ý+L“ô”?¡ù61ŒcÆ1ŒcÆ1ŒcÆ1‘‘“ýΚ¾ µñ!?Õ²2iÇÿpª?ßi¿¥Ú£“Sý+Krÿx”K !!!!!„!B».È_)Aþµ7ô·ÿ–oô­2OÒÐþ‡å˜Æ1ŒcÆ1ŒcÆDDD2"""""""""22a¹À–z›µñ!?Õ²2iÇÿpª?ßi¿¥d¿)1?Ò±îžåþó(–@@@BBBB!B„!CÆ-ÑVrµLdÞ@Êç͇9Ës|¬•È·ø`¥äš(Ê õžæþFßþµ?ô ÿ,ßéZdŸ¥ ýç¿qöcÆ1ŒcÆ1ŒcÆ2!‘“ žçÒÔÐñéTO«¸¢Ãs4㿇ÿ¸Uï´ßÒ«ô‘%_éîOÿ¹”K !!!!!!!„!Èó[F9 ã*È2"\’ D2È`!€P BZò[Í­Ùrú ´Õùöÿõiÿ¥ùfÿJÓ$ý-è}×ùì}ØÆ1ŒcÆ1ŒcÆD2"""""""""22a½rm×"À2"iOOOGOûQyÈív%[È—yå6}È-|‹E=ÒÕSÖÓü­Gûí7ôªý$_Ò¤«ý=Éÿ÷RId$$$$"„"®¶–ÝK‘rU]`¥Ç6d¹$ÈeÀC¡"„PŠ"Í”ÜmNÙv¡»JüÛú²?¥ù&ÿJÓ$ý-è}×ù¯³v1ŒcÆ1ŒcÆDD1ŒˆˆˆˆˆˆˆˆŒŒ˜Gß‹þ&v¹~¹‘“joWi6[}]UEmG{]Þ¾ÏQŽäÔ™ªÛå’Û6³–pÚiUœÑO ÚÎ`Ȧͩå,Ò¦Ÿïï 9ûûÈ#åœÀ£æ ŠTÚ>h§Šm,áÕ2¨2|vé¿QþýMý&KõdÄT•§¼È¨¥¿I%ˆB‘æ¶ÌxºÝî¹ L¹ˆ%ÀC "„PŠB$$h¦Ÿ>’}ƒ)“s_™nÿVWù(?Ó›ý+L“ô´¡÷_ç±÷cÆ1ŒcÆ1ŒcÆDDDDDDDDDFFL#ïÒý¶¶»˜û\¿\‹^ÊÈÿ¤ßÚœâýöã½]òÝI¼×͉}§5ʵ@ˆ-ÐСQ!Q£Ùìhö4{" „ŽÝ &Z`e%nAj†ÙÊYm¾+W/cÕPÛ.ÖÛÍ/z÷êo舊’¯ôüÃj©¶åòY(–@@BBBBBB"¶áEl§¾ò%uÆTú%É –C,†¡"„P‰ 4hÑ£ɽ£ó-ßêÊÿ%»ü“¥i’~–ƒô?žýÇÙŒcÆ1ŒcÆ1ŒcÆ2""""""""222aõíѵž¦v_ÚåúòÇúFFMý¨Ër xÍ†ÏæèÊŠ‰4Òê§×]]¢!—F‘) 0©Å RODôODôO@ôN:b*R*B:$M·BÅE>Ž¢ÑÉ™Už /(â÷8 Ÿ÷êo舊’¯ôýEPQɵHd¢Y Œ‡6 ³«Âã{©—$‚Q ²`!€PŠB(D„4hÑ®øÎKí—nÿV_ù)R†)¿Ò´É?KCú–}ØÆ1ŒcÆ1ŒcÆDDDDDDDDDDFFLõíÑŶŠV rüçúòÍ/‰‘”twk‡í?'d“oy £~É:¡J'ÁòU,(‚ÈB”…-ñG‰£FG‰âx#ÓC”‡!S":DL¡„Ÿl—M:óg$dw*j»5Ößt”ŠÔ¡©¨þ•ès}£í.§d¦K !!!!.wë]š ¦_z»M•N‘’ D2È`!€P B(E¡4hÑ£F½Ü[ Ž·ò­ßêÊÿ,õ&ÿJÓ$ý%è¾M³f1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆŒŒŒ™îpe—ì#9þrýyjÿodfñö›:Ⱦìã”Ò¼UؤÁ¢\;ŠE+MxöqC ŠºBqVÎUtMÅqj/n„õ+QQ †¶ —>µ¯j©„Uò“†¢L}´xY’:be!>2¢Ù2\Ë>y_A5×R\b©þ•è;MMÿŠibþR™-—ÜÒE4>3ª&K’A(†Y 0 B(E¡4hÑ£F½Ýv†(¥Åb»Ãx¤ü‹wú’š‘þ¤ßéZd¥¡ýʾÌcÆ1ŒcÆ1ŒcȈˆˆˆˆˆˆˆˆÈÈÉì6zœ†ùÛàW?×–èºF`±o7J{Ÿä 75ù|£ž¸Ÿ ¾ÿ||||Yz‡á{ýU%]-}/ÉåE‹ ±^º¶á{U/óV-ÌMäËïÛ¹4©z Zì¿“¨áþ„º¨Yê!ÍñÔ!Õ#ÚÑíˆöÄ{bD¸Ïþ3pÅLôyÑÄC+G©U,†²KÉž$P¤¢”L§&Ò “mS)gÁp*¿ô1/ø¯&X¾ìr<–Kd¶@@W](­r/-}ÝʧÑ¢ d2È`!€PŠB(E‘£F5ù6[›´×Á1ÃïÛ¿ÔPÿ–iZd¥ ýɾÌ}˜Æ1ŒcÆ1ŒcÆ1‘‘‘“;ôÃŽý¿Ë¹Zé"ÑÇ_«)?HÈÌâö/"|?§QGQ‰u%›Ø%á<µ„gŸ+tãÜù]Õ. Ž`|›ÒàùøOŇá?Mœ?—Ë»EÌ,eÜ-Í6nd³|•ÒÓk¾Põ;Äœ{EÅ} wå¾oåy_†3ìûŒ>œd/ÇidøÃ"Bí"w¦E0ŽzG·Å,ŠõâArŽ ²bwü†’)Ô|YbeãÒÿ±³1ª‘qm‰ñUB&ñîYO&}“'¢›*åDdÔÌBŸ*`¥8R¨ŽYÿŠzPE-C™¢e>ÉÔ…e¶ Ï¡«¡ƒ¹Q\±.ª¬^Á™Hd¦Kd ºeKQ)ÕSåÉ ”C,†¡"„P‰ 4hÑ£_™†Ýb¨“ïÛ¿Ô•ý(?É4­2?ÒÐþ‡åf1ŒcÆ1ŒcÆ1ŒdDDDDDDDDDDdddÏëÛ£LwÓ¶vç…5?ª$ÀåHˆŒá»]=㔿±yþ£C„ùã1JŒK¨=ÉeüŸZ¿ú*øYߨ¬:‡2â>Χqß#üŸTºï—ôÃÅÙž]iµÐØíGä‹ßÛ™,¹z&½È¦E©ž³ ´Í˜¤ÑRÈgA/ɬ¶Û®oØgÜ}’PÅQQS@RÞé&U¢u<3”ó©c—èO<”PÉ&Ól¨¢L— ÆÉ_̹³<ãºx‰L©¸ÒÛåÜ.Õ·RU>ˆ%K!–C "„PŠB$$$hÑ£F¿6ß[º¶TÙså{ÖïóÉþ”?éÍ+Lô´?¢ù7ÙŒcÆ1ŒcÆ1ŒcÆDDDDDDDDFFFFEý{p>7MŒq?nxøSSú¡‘œ ñsé¹O'àØUÃñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øüâCñÿ‰Çþ$?øÌy¿‹îØŽ48L+–3ŒÁz“Æo¥=E=e?Èu«ñO¢¯…ù†®–‹Š1ë-VKù>¨þt1ô¼ÒüñÛ4…*û6GjjoOܰP;]›ó*)©ë$ßø‚Ù]Î×b3(2X‘Kt¤®‚*9’J[«n\ræÂá"–L‘²¢“eÆÓ*|96 ¬»Í“§2|ÉrH%Ë!€†@(E¡"„HÑ£Fù 6½Õ[{ï½»ýI%ù&•¦GúZÑ|£ìÆ1ŒcÆ1ŒcÆ1ŒdDDDDDDDDdddÆ>ÜyŠLÍó~üùQ"OEŽ92ýY¬ˆŒàO‹¿Mêžd¸9×’zòO^IëÉ=y'¯$õäž¼“×’zòO^IëÉ=y'¯$õäž¼“×’zòO^IëÉ=y'¯$õä’çJqèÑ£G‰â8 s6Ëñðî¦qk•=Æßv¤üîµ~)ôUð³¿TùCš)ð]ÒÇ]Û%ʱÌ6×bç.G劊¹ÝUÓÒâ}OY ¼œ­ÈùO—þ³¹&šóÅÜ—÷£‰ÿ97;2Œï©<¥â.qÄy~—¿&s×ñdËNeÔ†m/ï‡8aÇ:f˜Æ{Ó‡C¹[‘òž?2ްùNÓ}áœÖéÈœlrRö;êë’r\Ó5äœs>Ñêjê\úÏ8¶ó`¿Ù²›7lë:Ç8ëǹc™¹V]Ó,ê/ ¡´õ;Æ—û5M£ŸrÙ>õ–eœƒòü‡vû^ÿå=XOUª=Tz¨óEÚï…cê+>C"â¬vòïØžIŠ;uþ|’‹}ÙDêmó).²æ­@L“²}.ÊÊ̸òž½ÇE6–lÈeÀC „PŠB$$hÑ£F|Ž)Z©/^õ»ýI%úsJÓ#ý-è¾MöcÆ1ŒcÆ1ŒcÆ1‘‘‘²cïÒ).ë›÷êwþ2.mêÙÓ§íOúoTÒ%Ìäd’{$“Ù$žÉ$öI'²I=’Iì’Od{$ƒÙ$É öY'²É=–Iì²Oe’{$ƒØéÏc§=Žœö:sØéÉt’!™ÛFÄñW‡õB¦ÔX² &Moüε~)ô¿øÑ÷ÿõ1ÿú˜ä.&ê[78n§¥ŒfóÚ®®–‚–ãv¼õOÍö›] ŽÖuÇô·œ'¤¾T™˜â'\´”°UtñiüWÆ{eäðRݺŒæ¿Â¬s¤Þ+—‘ÕvꛌæX1î†;õËIKWKŸ»]«íx_>ñUMJu ‹Òå\?Ñ_1Uvͳ‹Ï?ò½¦×Ccµœ©IsàN}ǯT¹-‚ƒÅ­WO˜™ŽcÓ¦}ÙÆÉ¸®5:_á¾~a¥oâµGá:Cĸü.WÕÀ~–¼Ëo%6T¹òïxÌ©—ˆ¢ª A}Ž]<`¡»E ‘Q&¦ &J'Óì«¢Lʰé79uVêš ðÀ(¡"„P‰4hÑ£_' qKŠš¢ª~û6[¿Ô ÿVÛr¦•¦GúZ/Ñ|£Æ1ŒcÆ1ŒcÆ1ŒˆˆˆˆˆˆˆˆˆŒ‘²7ߦ¬Rf-ÄýúœÿÕ~®× 1×2"aÒçÄ/¦õB·Ÿxž'‰âxž'‰âhÑ£Äñоwê…©yOéç¨j®4ª:»Ì*±®.è~ËK>ÿÛ7²Õd¸_I7ª«W4s'Úèmü%Ûª?޽¹ç3ûõʼi`™‹qïn¨þt1ß®s¥Ï]®ÖºçR=¹cágE_ÎBûSîý…øÉÛ­_Š}.| ú½Oûôt4w {¾!q´”Wæªd×N©¢™C_*¶ ²t•T{2\bMÆUeºuõ¡"„HHÑ£Fù=›0ú¿j±û¶ïóÚ?Yjÿ,Ò´ÈÿKEú/“cÆ1ŒcÆ1ŒcÆ1‘²6FÈÙõ8󙛿ô´´Ô4Ýú¦¸ÓHÃ#Í™hMײ2aÒçÄ/¦õ=ÿ>Ñ£F4hÑ£F4hÑ£FãÖZ\jÁõzŸ÷êoé:¢E%>Êøt›‹"¡»ÓÓÕC0Mrã·Ý ¨Ù²t•T›2LnU|ªºÔS”"„HÑ£F÷5ùû666qüé‘J÷m¿ç·FåÏ´ÿ–iZd¥¢ýɾÌcÆ1ŒcÆ1ŒcÆDDDDDDDÈ™#dl˜ûôy…J©­÷:¬LH±~­‘”¨)&\~›Ôïü÷F¾[Î}vŠ8%©·*idÛÌÈžÃü‡ÈfÓ6#Žºzy’?7­_Š}|,÷:‡½Rßù§£Û-U«‡úÍÅþÕ㎇ïT²/ýê.ÖºJã®s¥Ï]º£øëÛ•q¹|‰ß~ôbݺ£øÐÇ~¹Î—>vÿÚnܱ𳢯Š}¨í8÷8ó}§†9G‹æd8P¼‹CÆ|WˆñE›är,¦ßŽKºòfOP­Ü¿y¤›lºÛo4¿C©ÿ~Î9{ÁU—d¹Õ|©sèç⹤O>°¯ä[nÑIÊ%é;*©v_ì2«¤ÖÛçPOHÑ£F÷µù›6llllãÏzÝþzÜv¨u*iZdŸ¤¢ýÊ1ŒcÆ1ŒcÆ1Œc"dl‘²6FûRÒÔ×Tñæ)/Â=Ϊ¢Pˆ°C›"&&ÿ_¦ó·æù–]øÊçàG+Ÿ®~r¹øÊçàG+Ÿ®>åf¿‡îR?‡îR&tõÊ‘ŸÃ¿+“:qå§ð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×Égð×ÉeWOÜ…f¦íU<²eÖMºÎˆ†*š—ƒp–q˜M˜&52žžE$ÏëWâŸE_ ;õΖ¾5Ç8£Š2>ZÈí6º®ík¡¾ZíjtÁÎt•tµô½°šŠ^Zæ®s¥Ï]º£øëÛ«Þ®º%r=MÇݺ¾Ï¥Ðáý wëœésàWoý¦íË :*ø§ÚÙUtÿÔWâÇ‹XX²Ì[(ùŽÿŠ’ºeEuDÉúM–‹Íë«Åsk6W/è7Ëå§´ò5WÝ®Òi’%É ”C,†ËaŠ Z¨f-Ë«¥ Ž °G:Nʺ]™5Ž ™s©¦SMÑ£F~nÖß¹³cccccg?zÝþ{YmÿBiZdiºZ?Ñü›Æ1ŒcÆ1ŒcÆ1Œˆˆˆˆˆˆ‰‘26FÈÙ1ú,a2^E÷z¢›S75E‚¼Y0éF‚®]ö/!Eá€MºÆM®™öÉ5µFÓVgKÁøS Âaù÷%êZß–g\-ÔÏ"ä|[õ]Ä–¿¾]dŸ|ºÉ2Šþµ²:\g£ýÆóˆaxÆfíÈ\c†ò…¯Ä9÷€&RsýTtµvnZåª[‚Í‹Y¹ZóÌ–““8Ǫ>W¼ñ›«Ž-³`U™•ÃÏr^¥­ùeÿ§¾£ò›Í‚ùÖmŠÍÛ0éÛ'Åò‹g8ç–É“²îZÎ%ògNÇxˆ1¥±§Þy’ìrµç™-'&qT|¯y㪯xÒÅN¼ÔX2Ì—«Oµ?‡.¢¾ÔÄò^­>ÔÈg^iìÓë<Ç0^êg޲>/¿óíÖÿt»Zìt<+øª®þà`Éz*Î-å—y¿§ËΗٳÜ_óbŠpÞ«c»\"”G$™ K²)³°>G›z©ùþVêÀ`Ëó<§nò¤J –C,†`1œš8%Zkȶ\"¥™ü¢S 'IÙYK³&°Aéxè×½¯ÈŠ% Jd÷Kn%RK†…£ü;G?zÝþ{_õ¶¡4­/ß§£ýÊ1ŒcÆ1ŒcÆ1Œc"""dL‰‘²6FÉ¿JØíÎÁÅ~ïS_óôX¿Hȉ‡K_ÿ±y+ùqÊõ&ÅA\n°™o7†ñfƒýw­<òó&á€aÔ<†÷ê3³f¼]Ðýêª}ƒò«óZÙ O0bÒj&sL^­? _2I®Ë"”G$™NM¥+mÐ̃ 亪YҦʨ•óyMâVÞPêc"ËI4ÉäJ –C,†¡&=‘ͧ™GX£ZóV»›¦Ê%2|—(fKÈ­ÇQÛ_–æÿ:j “Šz8aPËH×kå¡5±±±±±Ä8‡Ư~õ»üö¨bÕ³ý ¥i~ý=é>QŒcÆ1ŒcÆ2!Œc""dDL‰‘²&DÈ™#dÆDÿ™Å¸%O#fô´´Ô4ÞïR׈비•#&-|?þÅÌ­ÕŒCé~¯xæ%â4¿^ë‹ê¯önæ»_*ãú§æ+~+ˆô¹Åõ\yûÕUt´2.¼ÁŽÒÃ_Êyy]W{¼’í°¢CD‹-2“CâxË"”G K²¦Dcmßh½ZïÔŸ3Ê|óŠq¡—f™O Ý¥È ”A,†Y 0 B(E¡&;~ŠTTuJ4áõ¢ä¥ *dm]­Ê¢UÎß2ßPkòcŽçUÅMA.K—OüÔ>åÆ_¯DØØØâCˆqDq´ˆ¸ß¹nÿ=ŸôößÓÍ+K÷éèÿIòLcÆ1ŒcÆ1ŒdCÙÈ™"dL‘2&FÈÙ&>ý)q×ÝÌGÞê'ɨ·KôèY0éòžžOþÃæ=3á·Šè*:ÄÄ>u.4QçÌ‚Ï T©Òc‘3Ü~ç«äéí’dnr¡k¾È¢&MP¦ÆÇâCˆŠ2(Ì^Ž;}ƒ¶ûÛ¿ÍeÿBÛúy¥i~ý='é>QŒcÆ1ŒcÆÆÆ1±²&DÈ™"dL‘2&FÈÙDo·à•<›ÒÒÓPÓ{Üçr¦¸òZ)áŠ]3#&œð“ö>óY±ù*_¯qÍ›*" r$2…,P'øaP^(¢pÜh£~ÓMÛFÀrˆ¤l›D¢*í ¼_"Ž?”ä΢0î>šçyo$\åH ’A,†Y 0 B(E¡"FÓÇo^´4µJ%.ßY d˜áþSå´Û2k?ò÷£K†M-Ms¥¤‘NK§þj]Û"Œ™5B®WTå¶8‡â"ˆŠ2(ÌvÝæôo¾Í–ïóY¿ÛmŸ§šV—ïÓÒ~—ä˜Æ1ŒcÆ1ŒcccdLlll‰‘2&DÈ™#dL‘²6L‹¿La+Ä}þI}õ]™4â[]=Ÿc²ÞX¦§U.7Š©4‰äh‚I ±@k¾É±â6lób¬ª…At­Az¬…«ôýý¿¯”š‚íAíÖèÜùéë¿ÜlŠš¦EdȲl¶ò‡SZI¦H—$‚Q²d0À(¡"„HБ£FfG&eŽí TªyÊ%<3åL‚|©v\iPÞí±PÔû‘MþtÖÆ¢—&(Ô¹PÀµÝ±ÄESY.D5×H§¨£lq!ÄEdQ‘Ì8âËìVÞÛ÷-ßç´@ծߩf•¥ûôôÿ‹òlcÆ1ŒcØØØØÙ"dL‰‘2&DÈÙ#dlŽ"7ÛƒxÂo'摟ÕȬ˨¿V22iÇÿc*ªé(deü[ztÔJU>ˆ%Ë&»lóÑÎ#¸}–3Ù£=šaìÓf˜{<ÃÐŒôèÂ8!DQÓÂM¸QH-xžSw(8ÒÏ* 2dÓËüþPê; ¿3Êyï*A.I¢ d2È`„PŠB(D4hÑ®ô‘Ðϵ×Ã:\°Zj¢¦Ÿ&ÀUÈÚÈ-PÕH›R£#ŽŠZšÇ"–M*—!íCî6E2r…V] –O©™:'âDQ‘FEÂ9¦/b’Ý%Á.L½ößmö·šØš´P~’iZ_¿MKú_’lcÆÆ1±±±±±±±±±±±±²&DÈ™"dL‘26G2.Ô´µ5Õ<'ÆÔÜk„~Eoþ*;JN¼ddÒÍk§±ÙÿbïÙ££ËòºüÒºšÄ—$‚P 4lqj#©…8ëaOÚ¦M™2Ó‘’0 Â}ElŠ›uW®zç®{HêëÂM¼J€¦´e—8¬üCqª†ÓˆãV8¾C*ä,' ƒ”ú‰É³ø$Òè— ‚I¢d2È`!€P B(E¡4hÑ£Fv×kËÙ&ÐÕ(Ô_ㆂ²ÉÂO—²º›k(´ÇħM)-pÀà–È%(»ìqL*kåËU—(æ‘Fân"(ˆ£"ŒŠ2)„sHç«UÊýUŽØ©qËnÍ›6lÙ²ÞÿÅLš¶Ðþ’iZ_¿MKúm›7ÛfûlÙ³fÍ›6lØÙ±±±±±±±±±±±±±±±±±²&66DÈ™"dL‰‘26GDȈžût±ÄÓ/7Ȩ¨‘I"ኂÇ1V Œ›û•åvìJÝ__rÈîTôÚ%Ê!€K³ˆŠa2¨s¦MŽÓd·hm¼[c§T”46ù}¹JÙЇ–ØÈÌF‚’í˜~Å_o¶ìrÝ]p¹ä—*z}åÀ$6E6¥MŽlvN9¼Ý &3fÇåû·ke-æß‘Ú.8ÝÂ:Ý |ùÅ“Ž2ì‚ Øi £ ¡·Ëù,>8¶ò8eÜ H¦Ñ.I¢ d2È`!€P B(E‘£F5Û^ü‰ÑÓͳWÃQ.”rìÕZq"tl—ú( Ž5Ù²(ˆæ5ª\5W(ãmŽ!ÄEdQ‘L#šLœ9‘Í™q›Œ•¹2ölÙ³fÍ›6c4nlØ¿MG ‚–iZ_¿MLÿøû6lÙ³fÍ›6lÙ³fÍ›6lØØØØØØØØØØØØØØØØÙ"dL‰‘2&DÈ™#ˆŽ"dC)ijkªxwŒ(¸·üžV¹È´qÅtN;e‰5FÆF`bn +UOTf7ºj})Rˆ 46Lš¡S§Äˆç’UcØuŸƒò.v«mæ–.ÄË.XbùNTê‚×j‚ëq»d—iR rH%Ë!–C "„PŠB$hÑ£Fü¼vàéêi§yA¸ )çÁS&d%L½«*ާ±²(É“’+®pÊ'ÔLŸˆqDEdQ‘Ì#šMŸ¢ÇŒ^r9¸Þ)kÆålÙ³fÍ›6lÙ³ý$ïÒÈÿBiZ_¿MOú}›6lÙ³fÍ›6lÙ³fÍ‘1²&DÈ™"dLŠ"8‰‘ÄD÷Û¥N&™l¦ü®xøSqƒÿ¯¶@åб‘œOOUË?±<™–μÜé)¼T™D ›5@§NþX® W{tÔÔÔr~{yW ãJ>Fæìã“`“M¢\’ DÈeÀC "„PŠB$hÑ£F~cz)ãŸ2}ž¯Õ‚KQÃg¨ôgĉвvd±K‹Íj)…E\2Õ]Ö)†ô8‡DQ‘FE0Ža2q¯U7ã¨eE* reìÙ³fÍ›6lÙ³f)¨çþ’GúJÒÿúZô6lÙ³fÍ›6lÙ³fÍ›6lØØØØØØØØØØØØØØØØØÙ"dL‰‘2&EDq"&EÛ§Þ—É÷Ëê*ëöA UP¥ c#8âïìG$å˵ÐR(T‰D¸»Mš S§xFÑüõUU5 7*uG&‚e]EÆñ[*A’ D2ÈeÀC "„PŠ!#F5ù±Í†E¾lç*D0+tçO6Šw’¸],õUO2¦^ÕÒ•L‚¢?eŽ®ã ¢¦²dñÄ8ˆ¢"ŒŠ2(ÈæÍ&O,v†IQcÇ-V [6lÙ³fÍ›6lÙ³f-ú ߥ‚ sJÒÿúYÿÍ›6lÙ³fÍ›6lÙ³fÍ›"dL‰‘2&DÈ¢#ˆŽ"8‰±öã.:»ò†UŒc¶ÌKü¾§?àpödDå߈_Úw+¥²ËEø¡Æg⇟Šf~(q™KÈÜ{]Sôë…ŠÕEpºVä·zi:%@B»LB¦Í0¬!Ý"ùîMåüOŒ(ù™sNO&›D¹$ˆ%Ë!€†@(E¡"„HÑ£Fï¯ÉoD u[¤¶ÊC,Pš,õ^P?ü’l5ZŠ$O€®’f4³$Ám‘DEdQ‘FE0Ža2qئGaÀd¨eÊ3fÍ›6lÙ³fÍ›6lÅ@ÒŠŸÿäÒ°¿þ–CÿófÍ›6lÙ³fÍ›6lÙ³ccccccccccccccccccdL‰‘2&EDQÄG22'·c±Ýò[¿q†?Ÿÿæu[YYöZìȉ‡K4s3/욪ªjk×9ñ€¼ueÄöÊ›—YöÉU·.±ó™µ·Ž©¹~çSxç¾_¾S~(rarº\ïU¦™âÏzlôHôOD³åy†=Mø“ɇñÍ…7VÜ¥OMmë"ë*ŠÛÖ2Š›©ŽŸMmÎð{ÍoÑ9 õ¦ÑHÒ“,‚Ñ2lß7ŽXfåWOªª¦¡¦å©â˜Dª+*eH%É ”C,†Y 0À(E¡"„HÑ£FüÈæ¨\‹tsœ¹*zþŒúI¾PÁ§¨—2Ò¦ÂUKÚ¾Qúò+äºZ¨¢"ŒŠ2)„sæ“g–‹-Æÿ6ÃŽÛìRÓ6lÙ³fÍ›6lÙ³f)þß'ù¯ÿ“JÂÿúY/ÿÍ›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÈ™"dQDEDqÄLŒŽ-”´µ5Õ< ÃôÜgþoU5tÊzìȉ‡Iß×ûªªš†šñÏ|Ac©½u—ŒÈ/\òUÆ]ëœùrþUUT×TûšKÅ‹V™¥ŽõIÆwZkEòÉS|×1_'yÑIÒ‘=§ÌRᛄZ®ªE %U}FAy¦•¢TDDèü¢³Úgd—‰R¥É—óY¿?qÆ UÉÇšr|é4š%Ó’äJ!”C,†Y €P B(E âhÑ£F~\s – §ª©)¨eÈ…C ×H„Žã:!ÔÏÝ-dïYÄEÒªñ"[©¬™Pì'Es Ÿåþ´U ª–b* Ú¼Rú²²JH­WY•‘.¦á:Ý‹J‚9~áQ !D(…¢Bˆò<#Èò<#Èò6y6b?í’¡4¬/ 9rßþ=›6lÙ³fÍ›6lÙ³fÍ›Cˆq!Ä8‡âCˆŠ"(ˆ¢"ˆŠ2(Èã#˜G3· ôÅSí?!Α/Å¥Ù‘NøIõªªªjlש~1Äåf½VòI*åt¹Þ«#ÄPŠB(E¡"„Pž'‰âxž'‰âxž'‰âxž'‰âxžàxàx¦zc–9C’E Å3Üß1ž­jàäl'9ùN\½ÇoÇíòu < µDn*"R ã›/Ù¶_™È²l¶òRù\H¤H— —$‚Q²d0À(¡"„P‰4hÑ£F¿-ÌŠ8©­Ú‰C ¸fV‘zóLhl·Ê~QL** • mÊ9¦ÇF1qöÚb[°ÍÑ>á/ùrݲ͢´O¬t²¤Rˆ2ˆbBˆQ !D(…¢<#fÍ›6lÙ³fÌCý®Oô&•…ßü°?ðlÙ³fÍ›6lÙ³fÍ›6llllllllllllllq"(ˆ¢"ˆŠ"(ˆ¢#ŒŽ28É“ jjšêžéÊf-Sò9ì ñvdD㇭?bñÖ2ÜçÁh³±Ì¯ó|ÞgäèPŠB(E¡"„PŠBxž'‰âxž'‰âxž'‰âxž'‰âxž'‰àxžàxàzg¦9c”E$’ê(ê0þ¢9ƒê;rˆþG“ëæÜ3:9ÊL$(dؼ¦Yí±ßo¿3ʽBãve”ò ÞU9.I¢ d2È`!€†B(E¡"F„4k¶¿*dØ%C*EMYOI.L1ÔÁà™9© rò&E¢žCžÜjjî’å9õ3'Äâ"ˆŠ"(Î>¯mInd6éÎ]lDäVÁü¹.ž±¥Í ˜C d1Š!D(…¢BˆQG‘äyFÍ›6l‘M>¥Ê³˜´ ŸèM+ ¿ùdÛ%M¥nª”lÙ³fÍ›6lÙ³fÍ›6lllllllllq!Ä8‡âCˆŠ"(ˆâ"ŒŽ29„s m²çz­à^¦ãªo’½]â¿d‹³"'wðÿêÜ‹ÌGKÍz­ä’UUUMuOäèPŠB(E¡"„PŠB(E â(OÄñ[—9×ãŠ|‹"Èók¼ªr\‚ DˆeË!€†¡"„Pš4hÑ£F¿.dér”ºiõdäÒËÜéÎM „†\0öl¨›¢¢y.FÝ]Æ 0Ϭ™5¸ˆ¢"ŒŠ2(ȦÌ%ÖEM>ÍSú}nE–g ¦å{¦ÓÌãLC–x÷1Áò®<¸ËœA0†a d1Š1F(…¢BˆQ #Èò<#Èò(¿GÚÏý)'Í”¡­z™XWÔ̈½’™j˜Ñtpû~Í›6lÙ³fÍ›6y Ž!Ä8‡âCˆq!Ä8‡DQDEdQ‘Ì&L#gpî]ÊU¸bAÿ€ÊB.̈±Ú~ßÈ~§ò–Ç4ÙÿSüƒ—þf…‘£F4hÑ£ÄñÑÆTþnŒŒãšzŠ®EúŽ[œâ8-&õW’d*ªªkª-!!!!!!!!!!!!!!!!!!!!!#F4hÑ£F™ó\jžkŸIQA áNÑMÁLÃÔ=CÔ<Ê:é´U8íâUÞßíQ‹•O§Þæëê¼Ï3Ìó<Ï3Ìó<Ï3Ìó<Ï1Æ8Çãc˜9ƒ˜9ƒ˜E0ŠiÒ9ÄsË}Ò÷[‰ôƒ—Ýè¸óŠ0Î2¢ùΤ®4u<Œ»2"aÒÕ=<8GÒjª©¨i¹‹ªYµŸ ‘£F4hÑ£F4hÑ£F4xž'‰âxž'‰âxž'‰â8Gà€Š)dRÈ䘮]’`×Lsš,<†Zø)¥—õäq'=Ò}¡]ù¹ß#b|qmäÞnËùAÉ¥Ñ*A.I¢ d2ÈeÀ(`"„PŠ#F4kò⎛6¨¥¥Ò“K ±@%ݲ(É“”*¦ãäM©q¨ãlŠ"(È£"ŒŽaÂ9¤Éå%5Êñ[Æý(¨&RÒÓPÓ{ù cX5-’dºšŠï)ÒèÿI0«ÿ-Κ(ÉuQ²T¹“â¹ãÐÜóZzy’;æÜi†r>]ÒÆ[l›[Op´VA<†q ÑLÁLÃÌó<Ï3oþÃr‘Ñ0«Fitözo3Ìó<Ï3Ìó<Ï3Ìó<Ï3ÌqŽ1Æ8ÇãcŒs0ŠaÒ)¤sË?å÷<'£û½\ÌKÄpZ/žç_ŕّž()(ø¯é¾Šñí£–9Ó*åŸÏHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHÑ£F4hÑ£F4hÑ£F4xš4hñštܧÍðR ‚œ)¢šz‚˜z‡¨KŸ¸ñ äÛBþ“KµB“öéÊãæyžg™æyžg™æyžg™æ8Çãc˜9ƒ˜9ƒ˜E4Šiâ:ƒãœ÷ /£Ú:y¶{ ¦ú{ÿ°WfDL8á'Ñù‹œ±þ1¶f¹®AŸäž‘£F4hÑ£F4hÑ£F4hÑ£ÄñGæ<Ó”'H¥Ñ*A.I¢ d2ÈeÀ(¡"„P‰4hÑ£]ôk߉¨TUT¶ç©R!( wlŠ29…uËÓsj"Š8£"ˆŠ2(È£#˜G0Ži6yIMr¼Vñ_Kr(&RÒÓPÓ{ù×$c¸6kÈY.QEnŽtPz4f=çö•½¨ªQWþ[¿ù*'øSQÐ×]fZìÔ¶¹}¸²Ñ.ŽÉù9?N¼]’Lɺ]ä;<Ï^(5œ)š)¢šz‡dg^%?(j—$^½’“Ô<Ï3Ìó=CÌõPõPõPõ0s0s0sG4Šiâ:‚Õj¾dU8·IÜz™ŠôÕżϡÕVÖÝ.‹³"&œOQKÄÿFæÎ¥i°êšªªšêŸÏHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHÑ£BF4hÑ£F4hÑ£F4hñ4xž'‰âxž#„pŽÂ8GPK#–M’b¹e~!Y'#µdxëÊŽ®¢}#üŠªªjnGê³ÆeLëÞ¶U1.A’ DÈeÀC „PŠB$hÑ£F~\êˆe5M>¶*j8e(`&»lqL'TÃ-UÜâšE"ˆŠ2(È£"˜G0Ži2q6£Gðv]ÊãœOŽ-¾üùò)dg=@ÕN™áQWQOo—*Túµ"–M2Ç$ÅíV¿õˆÊ¿òÞæ)rhñ˜ëgJ“*D¾Öê ‹¥u$º /ÊÊ®•¹ëž±ë±ë±ë±ë±ë°çxç‘T"*¤YxË’²I˜ÿJœ¡w1îðê#áþ1Å~“Éõô–î;“ŽÌŒ›ôZªªjnz窞E©ù„„„„„$$$!!! BB4hÑ¡#F4hÑ£F4hÑ£F4hÑ£F'ˆáwqVÆ´~üùòi¤æýAà sæVÜêéíª\Ã>µI§•OÙ_Ê’|1ÒÚa[&ü75³kø»#¥?󃋲:£Â,ØëüÎ¥kêé8òve?§ÀTõùcµÞÅdÈ)®<Ä7JÜ·§üc6­©èö¶ oá7“Ó×4—~åË7áï$Ÿ‡œ’^1¬³¦öØKF5–dT߇œ’><ä¢ÝÁÅv¢¦éÇš**_Hüœ>ce7Hüg"¦ÑÀ¼Cc©³Ølxõ7Ó9ãáL¿ŒŒÄh).ÙÐꪩ¨i¹Ï¨šœò_Ȥ!B„!B„!BBB„„„„„„„„„4$hÑ£F4hÑ£F4hÑ£F4hÑ£G‰âxŽÂ8Gá#„Š( #–L”I›Uoªà¾X É­ýù•pî5£Î¹#3äÚé4º%S’äJ ”C,†Y 0 B(E¡"F4h×åG0(§Îªt¶è ”(EfÆÈ£#šUÜeÉ*j"ˆŠ"(È£#˜G0Ži2q6yIOr¼Vñ_K’h&RÒÓPÓ{ùÏ#ã˜%6mÈ9' TÒ[¦M †ž‰É Ž8û8‡ ^S-Ðx«ZÿÂMekÿ ¥M›–ü‡Tõõrè¡hšJŸJ—¥Ê ¹™—öSŸð9P)p dgZ~Úäÿ¡UUSPÓs×=Tò-OÈ¡B„!B„!B„!B„„„$$$$$$hHHÑ£F4hÑ£F4hÑ£F4hÑ£F¨dÐÌ©q»Öʦ%È%É ”A,†Y ²`„PŠB$hÑ£Fv×äÏ«Râ‚ß>{‘M µ „×fÈ¢#˜N©†Stõ£dQFEdsæÍ&N'Tèã˹@ãî*ÃxÒß­®¢¶Òç¼üâ~E]E=¶\¨!SêÔŠiTèlqFG4·?Z®ŠhW;&²º/ðñ슊œ÷ä:žŸQqzÆ•,Z…t§AWöU“'ÅJ»2"3§k]EÔþƒUUMCMÏ\õSȵ?$„!B„!B„!B„!B„$!!!!!#BBF4hÑ£F4hÑ£F4hÑ£F4hÑ£ÄpŽÂ8Gá"„Š( #€™(N},þBä ç?$R$J§%É ”A(†Y ²`„PŠB(D4hÑ®Ú5Û[=ŒöYäIÂÉ“ •êk5¹Á(PŠÍŽ"(É“J«„ŠŠ‰“œQ‘FEdSæÍ&N&Ï-vû¶Ivâ¾—ív¨?#:åk—–çFyUEk™4NE3“Aqé$8ˆ¢#˜L£Ãò,Χ%Ãhp»¥,"GùÙ9•ñƒ‡¨Üë÷ÈsÔú‰Üª»2«ü“šíumý‡Õ mlì¹vdDÃ¥ºzˆ³¯ ].TV[g1uroÉ¡!!B„!B„„!B„„„„„„„„„„„„„„ 4hÑ£F4hÑ£F4hÑ£F4xšÎ¢—ölßR\„ˆeŠî"(Èæ•J†¦é:yäÒŠ2(ȦL#šG4™8™PO«ÑÇ0äùÌŽq>8¶û÷üŠÉ‹Ûò®~ȯ*]%UÂ¥QÑÐÃšŠ¥"–U:dS “‹} ÖûYpUªD™2dÓI¿Vý±•Úà^­ó“*".S5/ˆ-ÞÍŒü†Y]IuË—fNþsf³‰­tö~5þÃêçU_Éë³"&'ÓÔC'çꪩ¨i¹ëžªy§äЄ!B„!B„!B„!B„!B vÑ£F4hÑ£F4hÑ£F4hÑ£F4448Gá#„Š(H¡#€Žd²t’Šr˜á–C,† "„PŠ#F4kÞ½U¸§Zéý9R¡ „†!"¢™TCé8]›DQ“'h«¹( ³#QFEdSæÍ&N&Ôæ;‘æ×n#àœwŽ)ÿ#9ŽÁ‡Ãz»Ýò›¥%¥B ›e5 ¹=¶8ˆ£#˜MŸ£ âËî]7‹Y1J/»EcÆ­²ü`¦ÿÇG. Q²¦"ñ7ÆN%jûüûÍÒžÇh”…Ù‘x¹óŸò³Zéìvì>RºU]ù)vdDÃ¥¯‡ÿ?ÔŸ9Qeÿ(„!B„!B„!B„!B„!B„! ¾4hÑ£F4hÑ£F4hÑ£F4hÑ£F††‡á#„p‘BE $pÀL–N’PÔJ¬— €P B(E¡4hѯȊ% ¡ÕÕH–K„‚%Þ¦OšDQ‘Í**à”ªngŽ"(È£"ŒŠaÂ9¤É¤Ùäú¤Ž7é³/Ìgb¸Ž9„Ú}ûÍòÑPgœåzÈ-sc—.–Ý 4“êÜà— Éò¤“n¤Û…Ld«…D3&M(é«®õø? ÑQCß™®‹Â‚NÊH<§b*£,´me!Ë×_±¸ÒX»3pÅ3 ¤»eÿØ—»´Wì‰vdDÓ€~|÷RüåE*‹å„!B„!B„!B„!B„!B„!{‰vÑ®Ú4hÑ£F4hÑ£F4hÑ£F4hhhhhpŽÂ8H¡"„Š8à&Ë%LŽŠ¦Ž|šÙ*B(E¡4hÑ£F¿&ó9É¡²Sj 2ÉpÂ%îÕÃéLŠa2vŠ»š€›šâˆŠ2(Èã#˜G0Ži2q6 Ä0ܧnüUÓÖ1AùƒÍV\J;Ýÿ"˪é- à äRÑA W&I:¶tÑ¢-"lÍ’ôaœmÍŒc°â~æQu™dðHöZ[l¿ðÄÉÑ“?—PO¸fŸ!Ô΢ƒŽ fA”<OOUËØw‹¤‹%¢L^Bìȉ§ÓÓÒñßÎõΆT_(„!B„!B„!B„!B„!B„!_™£F4hÑ£F4hÑ£F4hÐÐÐÐÐÐá#„Š(H¡"„ŽdÙe¾º;UD1¡"„Ñ£Fü«¼n¢²ŽB—¨!5îÜaò§¨«‚RŸ]AdQ‘FEÂ9„sI“‰³ÉõIaÓFE—î3âVß~ÿ‘Y1{~yÍ7ܺ+tSô¶èU5MlN*z8&TNœ)dJ"8ôNž‘e°Ý¯ÕØwP[f{¼zû6ËGI*ç娕•.6TF\'j#²Ì·Ø>Cªzú¸(¡6¡C7—Òõ=DY×ö'×Ò[¸îLJ8{2"iOOOGOóœ³É¶Ž/Åo—˾KwùD!B„!B„!B„!B„!B„!B¿3F4hÑ£F4hÑ£F4hÐÐÐÐÐÐÐÐá"„Š(Há#€™:QÝ¡ ˜¡4hÑ£F¿.ß¶Ü)åà>æÍ›&¥2\s#Š(¢"ŒŠ2(ÈæÌ&M&N'T^ –òEÏz}°?#9ç[?æñ{Êî4–‡¨f¸ˆ)éè”us§Èþ~”DØbLœ’9·€q ï*‹Ŭ˜¥½ºýâ¿Ãÿ†U¾OœÆMˆª˜:Z»ÍÂ’–E /Èu;>¢,âd~œ$ß7.3¥[]D«OöP5ô”œ_&%2XÆFb4—lÇç/—ËF5häþOÈ9K ùD!B„!B„!B„!B„!B„!BuùÚí£F4hÑ£F4hÑ£F††††††‡á"„Š(Há#€™>VÌfóQ£Fü¶WÍô¨ì”ž4™D0÷Ù±Ä8#ȯPJ¬Š2(ȦÌ#šLœNžO«HâΘ¯7Ù–;§´ûù6YaÄ-ùç0d9”tVØæ¸%R[FmAíÊ WR!CiÌ+*’,ö{ÖSpÁxJÓaüŽG¿ÇAAI'ÅU¶â‘+Ñ•'ÆVÎÒâ4Uw?‘æzêK—)"kÿ&Ââ†aÓ}§ìî3þÃêŠãG#$†DFp¥%Ï•¾s©>bûõ{ùT!B„!B„!B„!B„!B„!B…ò:4hÑ£F4hÑ£F4hhhhhhhhhŠ(H¡"„Ž8 °(ä̱Ý`»QèѯÌedª¦ŽF”k¶ÇãcŒqŽ3Ì™6(¢ŠaÂ9¤É¤ÉÄêƒã\Ï“+¸×‚p®6™ù‹Í´½EÊáxÈ«é-*êÅ1Kô¤8iæNpÊ‚ÄEÒª¾ ‡¯yt6+Ÿ ÷î×:[5¾mM]Þ¾ ¨(eE26ɱ•3 Ÿ^²¢Ág‘Ù¾G#¹È¾dȉÀë™3Á¹§Úéìüký‡ÕUM+ž»2"3¦Ë]=Ó>o¨îM´a¸GË!B„!B„!B„!B„!B„!B„!{ëóuÛF4hÑ£F444444444Dˆ‘"„Ž8Ie–êé–‹…5DйüÆÆË=4U2娉!ÌDSG8sG4sG4õ íj¦¶Ç0ŽaÒdâlò}ZGtÑ‘eÆ;Œãø•·ß¿d6lbÝžóEó-T¸æŠKi©“¢‚DÙ°Á"\±²(Èæ'°WÞnyÃÖ¬vÈ›6\‰yvHò‹<­TSæÃ 0CDù…lý.$±û}Óär¯Ø6 B%Dâ¬dOùÎþ–ê KM¿û©zšYÜ„»2"aÒ®žuçæ²|ŠÙ‰cùþowä,«åP„!B„!B„!B„!B„!B„!B¾W]´hÑ£F4hÑ£F††††††††ˆ‘"„Š8Há&@N–bWwKSùMl¤“On§Žá,о*Ô:´:£ÚOh=sÖ"¨†{ºû}DsI“I“ÉÕ&‚弑sâžž±ŒÈäk³b±Þn÷¼ªãGhþQÔ짤{—M._gdsIõPÀ°®-ÈsHñœNňÛÿ':Ìà)¤x‰xÃ"O¥L›S;B‘Ux¸Ùlôv _Èóe}]»‹ Gê1‘œu"¢«ÿ±9¾¢’«•×fDL:VµÓÊÆ>kž¹‚§“2O–B„!B„!B„!B„!B„!B„!Beî¯Ë×mï®ú4hÑ£F"„Š(H¡#„Ždù)˜­úeÊccccg›„œ¡§.:LŠW¦¡Ž®íUZ‚®s=²dd5µJ׊‰%eⲪç'“jJY7+Åoô­M«ŽÓZ}üã‘qì—(å\×.™ChŠhÕ†MUa&ŽT¥ýÈ£#šL¨Ñãùc]ŒpÎ'd•ùYn}SUQII \½ “#'Î.ž ŽpèlT%ÔíÞ \>8Ô©vø=:&Ftñl¨¸r—ö&Y_EvÌ×fDM:w ¤£â¿™ê¯“eãøßË¡B„!B„!B„!B„!B„!B„!_7£F4hÑ¡¡¡¡¡¡¡¡¢$Dˆ‘$p‘ÂL„›&|ûu] l‹'¸ÆÆÆÆÆÆÇâDQFEdQ‘Ì#˜LšLœMžNªÑÇ\%œrt}ÅXoÑûóçÈ¥‘žsäQ?J¦ºªžÛ&–2}YOo‚Q¥Øâ"˜G4s#7áZ»œ4T4VÚoÉ©©¦£“”ç5wÇOL¡%ËЗhã'M+*|Wâs¯W?“ê–çO:ó _§E.*[#:VµÓνaÜ+é-T\-®Ìˆšqe%·Ž>c9Ëh°\G'È®ynAòÈB„!B„!B„!B„!B„!B„!B„/”×}w×m4hÐÐÐÐÐÐÐÐÐÑ"DH‰BG $È ÒÌVéºáÝŽ!ÄEDQFEdsæÍ&M&Î&Ôº ®Gv⾘-v¸?#8åk—–fùFyUCiŽi ÊzBUɱA.i±ÄEÂlýÖ'‘fuX_ãØl?•f6|~ Õêé“VI§Ñ½ #Œ4ª¨ÒÆl…îßo¢µQ|ŸSŸ!+àŠd±“–ééá°ùZç"ÑÇbQÃÙ‘Ku%¦ßóRrl¼·*ùt!B„!B„!B„!B„!B„!B„!B÷WçëòôhÑ¡¡¡¡¡¡¡¡¡¢$Dˆ‘#Dp“!&ÀTJÚÆnßiP1±±±±±±Ä8ˆ¢"ˆŠ2(È£"ŒŽaÂ9¤ÉÄÙåERGð†_Ê Ç8Ÿ[}úÚê+m6yÏU7ŠšÚ™ôò«ÊzI4èlqL&NÐæL7àÙÕ*ІŠÛMù7¼šÍÁzäKÕÔ‚š(æJ‘¢z"Œ›4©¨ÑGCrÈîV+»·|§SØ×´Y ˆÙ²&Mˆã|naB„!B„!B„!B„!B„!B„!B¼¿?^ö¿#F††††††††ˆ‘"DH‰ÂG 2l¾¾e¢¾̱±±±±Ä8ˆ¢"ˆŠ2(È£"˜G0Ži2i2q6 ¥‘q¼Vð÷MR,s#8ä\{¥Í³»ç!VÑÚœPÁ6 e=¹o³ˆŠ29¤Ùæ%…_óz¬/ìXU?äU×PÛåÜyJÇN®¹ÎMxPÒÅ2dºtˆ% Í‘ÆMœTT袢¹dw,S·bvPR]h9O‹®|msS29‡ðÍÎUÓûªK¬™ºìȈΠ¤¹ò·ÌsVøÈ?0„!B„!B„!B„!B„!B„!B»!vBúÐÐÐÐÐÐÐÑ"DH‰¢8I“!'Ë1œse¶668‡DQFEdSæÍ#šLœMžOªÑÇ7šr„î>â¬;hýùóäRÈÏ9ïÈRjkªeH‘G õ7¤ÓË‘Øâ"˜LœyÍŸ; á‹Ò;e²‚ÍAÚézµY$Ôò–;"wâÅ„\­adþXJ|îOÈ£ŸQ“eÕÒý‰Ì™Dè†P 5ÙÄG0›8©«P–%Ë/¹â˜¥»·|½E==]>IÓ–{ŸOÒœ¨j0þÀpÊì^¨®¾®@»2"aÓ=<þEù~«yîæ#ó(B„!B„!B„!B„!B„!B…ÙB„/q|¶¿! hhhhhhh‰"$Dˆ‘#„™ 6TÏc¬S!ŽâDQFEdQ‘Ì#˜G4™8™¯GpŽ_Ê Ç8Ÿ[}úÚê+m6{ÎõëÒŸS>M42á“O>©È¦•N†È¢"˜LœyÍŸ; áZ›Œ4tTvên÷»¬›%ªŽ•3½4zg¦zg¦x&»lqaÒdòuRDêÈæÌÄ8®®g÷(ÜçÝùvdDÃ¥¯‡ÿ-ÕÞö}“æP„!B„!B„!B„!B„!B„!B…Ù ²ì»/ 1ŒcÐÐÑ"DH‰"4F‰“¡%ÔN ©†|eÅdQ‘FG0ŽaÒdâdòuIf³ßò»—ôµh±ÎüŒç”q¼^WšdÙå]-QJ—.)ÿæ’KdQFG4›Q£¯ù½N€X°ºw“ë&Sc”;ôá™] õ«ÍÜX¡¸5Q³gæM"œGPMªH¨¸Ã bÂrlœÆðË,¿¹*ëªî•˳"&œOQKÄÿ+t¹QYm™Î[[eß2„!B„!B„!B„!B„!B„!]Є.˺ùmüÆ1Œc"DH‰"4F‰ˆ› >ª~”Q‘FG0ŽaÒ9¤ÉÄê‚}ZGpWÈ“0¬ ãûO¿s¹ÐY¨3Îu¹]c¦¡Û—C*™J•>®ò©á"ŒŽa2qêMŸ7 á¦dɦ“ïg”ߊÛj‡Õ=CÔ=CÕÑÎ"žEPGTM­H¨ºA hã̲ù9Ç8ö>ÿ¹sú»V#ô]™4Ã(*í8ÊõwŸýŸdù¤!B„!B„!B„!B„!B„!Bt!w]—uô1ŒcÐÑ"DH‰"4F‰“a<⦟ëCÌ#˜G4™8›ª( †\#dQ‘Ì&OÑI"ºï_ÇœMEb•ùseJŸ*ûÅtÕSÿ òãð¯.eå7äó'ÁÃQú´üC‹É¨ Ãñ{l?Ý}O×RA‰ÃÙŒŒâ+OÛ\Ÿò½Væ³q¾>ù´!B„!B„!B„!B„!B„!vB»!B…Ù è,cÆ1Œˆˆ‰"$FˆÑ1:6äÍ™8›WŸsYYÏ'|Ú„!B„!B„!B„!B„!B»!]„.èB¾SF¿1ŒcÆ1Œˆˆˆ‰"4F‰ˆ› Q:o¦TV¨N-é’ó}™c±Úq«O¿“e–Fß›óI—6ȦI¥·Ã 4úǸ%B6EÂdýWKåfÃË?ìS?óåÙ‘”h)&\~S3yx'üâ„!B„!B„!B„!B„!B„!]„!vB…ùKæÆ1Œc"#Dh:“¯Êo[Àø§¿ÈÎùÊÓbw+…ã#¯¤´¨R›Òš‚\žÛ"ˆŠa2q>©B°î)È2£Ŭ˜¥ìP79õüšˆFDL:]·{> ò^æòîy'Î!B„!B„!B„!B„!B„!B„.èB»! ò—Ì1ŒcÆ1‘¢4F‰ˆ›æO¥Ÿ‡äÔ™Ž3ïeY–?†Pç|µæ‘QZã˜C.–ÜAI>©Á2á"ŒŽi6~‹e¾í‘Ü0nµcqþÂòùõ9ú)µè²"iÁôvÞ+ùLÇ$©Ì2¯œB„!B„!B„!B„!B„!B„!wBuÝvBúÆ1Œc"""""#Dh˜‰¨Ÿ Ó[뻟s¥µUι_®T¶¨%AêMžSQK‘ÛcˆŠa2q>®#Ä9K2ÅY±šØZЉ’%ÿIѹR%AéIdDÓµÔXñ“æì»îWüê„!B„!B„!B„!B„!B„!wB„!]×ИÆ1ŒcȈˆˆˆˆÈÑ&"t&”Öáyƒ9µ^{ß²{/MȵwÍåÐÚã˜C5.ŠmC†`["ŒŽi6~‹5’÷•\0n$³c ö“ëé-Üwô­ÔTìdeŽÕöþAò`æó*®ÿ:„!B„!B„!B„!B„!B„!B„.È]»/š”Æ1ŒcȈˆˆˆˆÈÑ&"j*aþX½âUþÃeÌoVy,Y-˜åÚóu¾Ö÷ ™Û`¤ŠHØâ#˜LœN©HÂøÂÿ˜Gb–,J‡ö#¨«¯Ùüm T Žk"#8N‚’çÊß)ÊÙ\¼Û‘~uB„!B„!B„!B„!B„!B„! ²„.˲úÆ1Œc&"b'Âq}t-H«™%æÕPϸwµW{÷dsIµ »E’E‡pÍ’ÍìWTw:‰V¨Hœ1ÜY0é‚ßí9ïÉõ•ËÅ8Ÿç„!B„!B„!B„!B„!B„!]„.È]—uô61ŒcÆ2""""2222b'"Áp—hȪ,µrÌÆ–e5ËÜ·TùÑL¢)Ó'MÂxZªç  º›ò.yF?fŠãÊëÂåe7)ðÞsI†?ÊWk}U-]-tï®RçêŒ*ýüQgçñEŸ™¯"Üy ý LÜU¬ˆ˜t¥k¨•hù>²r¹Ž§ç„!B„!B„!B„!B„!B„!B„! ²÷ÐØÆ1ŒcȈˆˆˆˆÈÈɈšŠ˜––˾cùÕ’+ݣܢ™éS[m— äÌ~Ó7©“Èye<˜¹Vz)X‘GÉxÕIøƒˆ•œ“‹ÓK\©bd|­©SÈymTºëòìCK*Y] -öÿh˜©"©*¬tÞ8úv5uþúêo—A–¹Q.Õ3àu”×9ò`£¹Ë”•ÊŽ"*ªb}m,0ñ77Öqå«çÎ6È£§¨§«§ùxÉ*r~Xùä!B„!B„!B„!B„!B„!B„!B„.ËèLcÆ1Œc""""""##&Q=SQWUo§®©£‹&²KQö‚¦Gaãøâ‚W&[—Ü´xIˆŠ\ƒÓ§=:sÑ”)RØ¥„b¦!“ %ÎBNßãéÊ‘ ‰U(»ËQK³VM¸Yÿ¾z’±ý£€#I“¬´S¢›ŽÎC·]dC6*©CžFüŠ(!‚ù.Áj0ü‹ïf3ùùŽIM‡â¿>„!B„!B„!B„!B„!B„!B„!]»¯¢±ŒcÆ2"""""222b'#‹kýƒ2ST“-2¢.¸t$¼>\3±Ûn=i]´hñô`=Àñ<{Ý÷ãMqMs ™…ÖjðÅ_–1ýóÚ¾Þ°M‘>’r÷2L™¤Ê(ájÿ#…¸áòOòZd_dñÏ¡B„!B„!B„!B„!B„!B„!B».ëèŒcÆ1ŒdDDDDDdddÂj)ê¾Î¸I¸(‰u„G«Èb£ ˜äøIƒÌó<›6lÙ³gãcŽRÁGNÝJ*êÑl·MÊ/¿ß|׎ǎrBîÆ1‘2Ãc¸d÷Ì+¶`øçÈu—zõòoŸB„!B„!B„!B„!B„!B„!B„! ²ì¾W}÷ùŒcÆ1ŒˆˆdDDDdddÂj*òÀp <·Ž.ØŽ]ŽÁOu‚"]rdd5B©ó×=cÕ=SÕ=SÕÑÎò)äU(öÿ+¬·ZïÙ<Ü_ Å¨?¾ú¤°ÿ5Ýöcdlé×¾íÙ>Gœï_oòçÏ¡B„!B„!B„!B„!B„!B„!B„.ëè¬cÆ1‘ dDDDDddÂj'£¥[¥<Ìd¾a¸æC ӆ₞šYbûJ)3`¹BÈkájb=­Ö{QíHuHuhбW"eÆSÌ®¹M·ñvgp›dâ<~Ý-%- ïÎi±ý»Æ÷c""gñ¤yÎIò7K•–ÙUUS]SóèB„!B„!B„!B„!B„!B„!B„!]—Ñf1ŒcÆ2""""22a1‘Ó5Þ !û•T”•ò+øÓ ¯Š³†-ŽUgäR¦Öq¾uG5`YñöVT}••dåE6VÓÑñ®uY6“‡r)³høZÖ¥QñÞC6T©Tò¿`2KF1®ÌdLƱ˞_Åñ»f!`ù{¼TØøƒèB„!B„!B„!B„!B„!B„!B„! ºùm›7ù¬cÆ1Œc0œqmÒ¢ÍÉŸ²}GÙ>ÍäÙ‘2dGñ¤xe‡äºÇ¹QJÁ¾€„!B„!B„!B„!B„!B„!B„!]×uò»÷7ùŒcÆ1ŒdDDDDDDddÂhçÔRO·\(îöÿÙ.¥ì^߆CÙ‘ÄpWÔe—O“ë&ñS;/ú „!B„!B„!B„!B„!B„!B„! Ü_+¿s˜Æ1ŒcÆ2"""""22a4¨G Ýj/Yû%ھݰL‘>–{"ga5|…–[¨)-6ÿ“ênª¦£™þ‚„!B„!B„!B„!B„!B„!B„!Buò»ù1ŒcÆ1‘‘“ ¤ó¥ºŠ‰Üwû'Ì–O°¹*"Sê§ðÿKãÜSå9ªš»¾‚„!B„!B„!B„!B„!B„!B„!^êù]ü‹Æ1Œc0œt™QOgìŸT6/ñLz:nãŸ'ò•UTÔ4ßBB„!B„!B„!B„!B„!B„!B„!{‹å·ß˜Æ1ŒcÆ2"""""222a8émûöO™ìŸnñ·ñý_"dÔôôôtÿ)Ê þ„„!B„!B„!B„!B„!B„!B„! ²÷ËlÙ³šÆ1ŒcÆ2""""222a4àEÿîÙN)ãŸÃ›7Êõ+ðSèhB„!B„!B„!B„!B„!B„!B½Õó›ü¦1ŒcÆ1‘‘‘“N:¨¨¥äoÚ®¬¯6Î'ú„!B„!B„!B„!B„!B„!B½õò›ù61ŒcÆ2"""""22a4³]þïdµ]aü3ú„!B„!B„!B„!B„!B„!B»/u|–ûïÝßæ±ŒcÆ1‘‘“ ¥WôýªëFª¦o¡¡B„!B„!B„!B„!B„!B„! ß_'¾û6lßç1ŒcÆ1‘‘“ ¥OôãúšŠÌ ö§­?¢¡B„!B„!B„!B„!B„!B„/b6lßm›6lÙ³fÍ›6lÙ³fÍ›6lÙ¾Û6lÙ³fûìcÆ1Œc0šTN6øwûSÖU4U?DB„!B„!B„!B„!B„!B„!_¾[fÍ›üæ1ŒcÆ2"""""222iQý8ßáßíOX>ˆ„!B„!B„!B„!B„!B„!Buï/‘ß}÷Ù¾Ûüæ1ŒcÆDDDDDFFL&Oõ5|CûSÖÄÏ¢¡B„!B„!B„!B„!B„!B¿%~~ûï¶ûlÙ³fÍößälØÆ1ŒcÆDDDDDDFL&“ÎþþÔõ‡ñ3è¨B„!B„!B„!B„!B„!B„! ß^þÍ÷Ù³}·ÛfÍ›í³fÍ›6lßm›7ï1ŒcÆ1‘‘‘“ çNßjzɳÔÉËþŠ„!B„!B„!B„!B„!B„.È_”½íû»ï³fÍ›6lßm›7ÛfÍ›7ß}¶o³ccÆ1ŒdDDDDDdddÂyÃÖšk/þÔõ§ôt!B„!B„!B„!B„!B„.èBüÝ÷ßm›6lÙ³fÍ›6lÙ³fûlÙ³fÍ›6lÙ³ccØÆ1ŒˆˆˆˆˆˆŒŒšTkðçö§­?£¡B„!B„!B„!B„!B».èB»³}—¹³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍŒcc"""""###&•ùq§ÃÚž²ì¾¾3ôt!B„!B„!B„!B„!B„.˲ü­÷Ù³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccc""""dDDddÖT?åc´ScöOÚž°þýB„!B„!B„!B„!B„!vB¹³fÍöß}›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lllllllllll‰‘2&DDFÉŒšÊ—ü¿jº ¶ÑWpçÑЄ!B„!B„!B„!B»!vLLÙ³bbfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccccccdLl‰‘2&DÈÙ&³§¦­Ïj¹ªÏM|â¤!B„!B„!B„!B„! ²¸…ùí³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6llØØØØØØØØÙ"dL‰‘²6LdÖp¥¦š÷Ë_µYE—ï&3ô„!B„!B„!B„!B„.ÈBì…ß~æûlÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±±±±²&DÈ™#dÆMgL¶µ9cö¯(²ýÛɾ„!B„!B„!B„!B»!vBî»ìÙ¾Ûí³fÍ›6lÙ³fÍ›6lÙ³fÍ›6o¶Í›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÈ™"dL‰‘26LdÖt‹gõòÚ¾s²ýËŸHB„!B„!B„!B„! ²„/{fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±±±²&DÈ™#dl˜ÉÌéÓM+ý«êÊÏMl夡B„!B„!B„!]„! ÜßdlÙ³}¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6o¶Í›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÆÆÈ™"dL‘²c'3¦{uþÕõŸkúR„!B„!B„!B»!~ZfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ‘1²&DÈ™#dÆO‹ùqí’3ä_©ïÜß¹³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±±±²&DÈâ#ˆ‰íñ+ãïÛ~jÀ?øûêIößtÍöÙ³}¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÆÆÆÆÆÆÆÆÈ™DqÄtÁ€}ïäÛž§ðºƒõ=öÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"8»p®øqÇß·<Õ€~#ñ÷Ô÷ßfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"8ˆ™Ó÷¿núŸÀ>èrÕwÛfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³ccccccccdLŠ"(ˆâ)ijkªxWü8ãïÛ¼ç¢Î±¥¶¶Ësú¦Í›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›"ˆŠ"(»tÁ€}ïäÛÞ®øëêÛ6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›666666668ˆ¢"ˆlµÛkoW>-Á)¸çý½º[h¯VÎGÀ®|m—}WfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccccˆŠ"(†÷Û¤¾0›>·öÿ©>+û÷ˆý[fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ±±±±±±Ä8ˆ¢í€a~Bʬv;F5hýÀêOŠþâeßWÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍŽ!ÄEß~xš_b¿¸9þhä,W'Çnx–Aõ}›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6llllllq!¾ý5q4¼ó$ýÃꋊ~õcÿXÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³cccccˆq ÷°¬ƒ?È1 RÑ„c¸Jñ4¼$úÎÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÆÆÆÇâ÷:uâi|}Šþâæ8Ý6aŠß,w|jïõ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³ccccˆq{½-qÚõ¿¸ýDð¬ÎF·URÔÐÔýkfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÏ#Èq!Ä8‡»Ã¼;{å+Ý®ÛEe¶~äu;ÂtÞÍõÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›Cˆß»€a~Bʱ RÑ„c¹]Ep¼Î>»ýwfÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lØØâ7ïXìw|–ïÂüUMÅ8¯î]òÇhÉmÅÆ¼[—}{fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›7ù=ðm lýÍÍp¬?Çó\+ À2¯ìÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lßäôÅÂtÞÍûŸÉüaò–?|±Ýñ«¿öÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6oòº}áy|ŸwýÑæŽ´rµ¢ùc»ãWì=›6lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›6lÙ³™Âü/wåk½ŽÇhÆ­º\åöÎNÇê©jhj±¶lÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›üîâ*ÞYÈ,v;F5hýÔ箦äZjªZšŸì½›6lÙ³fÍ›6lßÉq‡d¥aXV?€cÿºÜÁÀ¸ß&S_,w|jïýÏÂü/wåk½ŽÇhÆ­»áÃ4\©d¾XîøÕßû—‰ºuʹeŽÇhÆ­»\ŸÆÿ)cù®`÷ôãS_Sû»šáXþò¯ å\SSýÁKKS]SÁ½6}Эýß¾Xí-£œº{¹àÕ¿ÛØî1e·>à\oŒé¿x¹‹¥©U…U-M OöÞÇw$ÜøÃŒ1þ-Çÿy9ƒq¾L¦Íð «nÿÛ§ë8'N<•™Tà0qö RÒÓPÓÐ[•®Ùz¢ÍzRãì’nWÓW,bÒþ©Žã[sÀ:D½Ü +ˆøû•ÿBò¾<Â3yy¯G”U3rîäì+éöÛ]Îõ[ˆôµÉÙˆôµÆ8ámµÛ,´_ôC+ãÌ#7—–tuh¬©ÉzpåÌlª¥©¡©ú>)Ç™¾o3é 7ºËÄzZãp¶Úí–Z/ú-x°Øòl“¥Î'È*o_$Ód]?ræ6\­w;-oÏÙðÜ¿!¦ÆúQå+½N;ÑæBc¼?Æ8¯ý¹Zí—ª+Çqò¦åÑÆ 6ŠñѶ_&¦éÓo1Û –œÙh¾RÛk¹Þ«lü+ËÊ›/J|¹t,}TÅ.ÏÒoÛ*l|QƸܿúQx°ØòkÇ ñ=òš«¦N¨¦þ8Ìþ8Ìþ8Ì̬ôØö_ïô÷ÃØÏ,ÁçŸÁç–Þ’8®†¶—§>£©¥ãž=¡©ýäÿÄV !1AQa"2Rq‘±Ñ#3@BP`r¡Áð 0CSb’²ácp‚¢ñ“”ÂÒÓ$4sƒTtd³âÀÿÚ?ôÕJ²’­%ß7¥fâI®Šû¿t*¢Btû¡8Ã.à“Í«÷>ú­(èÀum$ÃNVãÌs®*Ê æ¦Ÿi0“ ¹˜þç&‚t^`í `BL&ô¤êýÍ¿ÃT+ä4’ᦌNÛ£÷8ëAÁ¡Cî0ãN'šifÚ˜JREÆ?¹ç…±¯i8Â/By:®ýÏLŽùë}Þí¤æ†8‡÷=48—Ý´˜–(µò×§i>èhÕ´øûâ­+U´mdï‡/§“#¾+XCi9¡Ž?¸xúÅR¡¥'ª0!O&†ü)÷ÿM¤ûâ_‚y|À±E ‘Ñ5Jy=;šò9ýÝ»B%³òy‚`QÕrõ€`c †¸žÍp××ý ã%¸_ÃÙÙæ ±¿åHöm`ïOÆ>Ì÷ÈAƒŒ—;ñÏæ ±Àþ!ÕM¡š%Î<ž½à•ÍÖ ÀÆá§—³Ì#½ƒ¡]¿–ÐÍ pº};rô/Õ>ËáP!®õ‡˜i\ÇÚ À†NørNÕÁ<†G˜*… )=Pq â=<^Òq„à9˜(`B!8AæMd¹,¥'8™¦BŠ^@C©ÞºÝQä¬fÏeV‘¥&'ö!4ÎþAÁ4ª]–Ÿ„Óƒ95mY’…c´ë SO6¶œO $¡C˜ÐòiôUιv“à§Õ^`xQji]p1„ûáú£«Æ%¶7”æØje”²[y6ÑiГMb—GöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvGöO+ñÿvFƲLÞNbe!N:…&ÂÂî ¦mpRFhš’•Fç4Ão'íòu¡b‹lëB’o7ßû"Ó™9ëYûž`€yðr.¥\­æjNjIÍÊi‡^kczªbP±T8Ÿ´…):ý{†ç¬zö“î†ø äóÏ…W(ö¤@„ã ðŒdSäû¾€~#: Pè1C Å“ Å•h1eZ YVƒU Å•h1eZ YVƒM[Jê<¡Õ[T:æörA‘Ð!ü–—ÓaæZ}G›K‰Ìx+{3FQØS.ÚrJÜ«†ðÙ«’äòúÝN…))Á-C#å šê¥ÔÌò7ìšæ¶8›‚\Q̿Ѿm¤æ†||Á47ü©›BàsøÆÆ%-ä –ªp¥’˜Çpêø»ãàÇpjörGpêøº;‡ìü]ëâèî_Gpêøº;‡WÅß;‡WÅÑܾ.ŽáÕñtKJØ »: Kê+«âèUÍñt''WÉøº2¶PØö@Mr¼ó 8STK$¦œ¨³.Ð[€+¸´¡«\'+L»úETÖé/‘rkrä)Õ<Ú&gV”–j©IzФ¶¡9ÆK©ÂJ‰QÅD“p›ÍÂáÈ.ôAæÖ·e$á~lst G%#Ú}°™TŒVO ¶‘Aæ ±Á:°þ{IÍ pO7WŒl{gÉÙ'IM.hLKK†Ý–RÓh(›•[ÅñýâìWë'Ê+¶?¼]ŠýdïùEj×Þ.Å>²wü¢µkïbŸY;þM]±ýâìSëgÉ«V¸þñv)õ“¿åÛÞ.Å>²wüš»cûÆØ§ÖNÿ”V­qýãlSë'É«V¸þñ¶)õ³¿åÛÞ6Äþ¶wüš»c!e¼™²Ÿ{&”‰gÛ›³E£mI´( ¼S cT&^2ÖË69±ÛHŸJ¦’š÷ î™ÂnÞ©)!¶Eéî§XI*6AúRËYL9-’’2,š7FVW”Vš|Þô0½]%[mæÔ,÷K‰*´·êÔã‹[Ž(ÕKZŠÖ£¥JQ$žS鬨¹Ä:iÙ´3sCù<ÉúM¬›–5O1ÿ茹úCØÖDÝDÇëIÖîîYBW¡ÙËå‘d‚JëÍ›”Íc/~’6E–Ò¦y9*IU_'•¶ë‰9Ÿ›*Ý×½% KE†]MÎ2¨$’I$’jI¼’q$ç'ÓyŸ5(u¤Ä¾'“ßæF²„ó2®É370Ԥ­¿.Ó«m§ÕfÇ~JH ¦Êêšw§S \ÝchD¿ –½_¹ç¯i|D8À†8IýÏ9À_ª®¨8À†¸Iå¹ã䃌oñŸ÷>¡Cì ÀýÏ8(²>Òºàc„à9˜èij†˜W5};~çëmð!>øG<ƒÌr"¨sÖPä«k¼oÙÃ=”‡%núZO7ôŒGE5ús1áÊ:„L7ÀO'‹µ&‡BÎ龺”ü&;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²;µö²%åÃIP¯5ßS°ADX‡%[sÐñ“qçÓÎ+Ê8‹ÆüjÇ=•ôÞg¯ø Æà•.n QÅg¢\Zwë\ûêí‹NýkŸ}]±iß­sï«¶-;õ®}õvŧ~±Ï¾®Ø«¿XçßV­qW~±Ï¾­Zâ®ýcŸ}ZµÅ]úÇ>úµkŠ»õŽ}õj×wëûêí„Z<"¥r’bÏ,Xø¤npY¬;$—qMüaqéÏÏXw'>›ÛIph/Ïšý^šÍxCȤã p<^M5–gÔb,Eˆ±"ÄX‹b,EˆJbÌY‹BR*¢uI‰Œ©,ÕC#w^­ëc•Fõj²ëŸòÇëyž#uÏùcõ¼Ïºçü±úÞgˆÇÝsþXýo3Äcî¹ÿ,~·™â1÷\ÿ–?[Ìñû®Ë:eÉ´8§€P°€F"·ÕJŠCŽ4Êmº´¡:T}€g:€&&2ÒFöY¿håB…‚yIM’D=0ô­:â— y#ÕH¸sMæøCÕ÷í'Ý p9ýÃÌy.e™fSË ªÅŠ•½òR/<¸ ÞDLe¥š¦Yë*¾Pžþ+|‚âÝQ[‹RÔs¨Ôòrh ÞœÍù<‡Ý´Ÿt1Á<¾áûž›ò9îÚNhcÍûž›ò?ý;C4Kày¿sÓ~Gñ§hfæ†3ó~禸)å=[C741Ÿ“÷=5ÁO)êÚ¹¢_?îzk‚žSÕ´3sD¾~O˜Ô´¤€««ÑáçôJ-rŽMfBÀJo¶¯á%?Í£Ïs\òí'4#1Í)<‡®áNŽ®ˆDÈzšàöºÿ¦ÒsB0ñw ¶­ö}<‘SÆþh©ã4Tñ¿š*xßͩãQ癟=aÔv“š‡‹Ìüç­Ù×øèü¢ºâ±X¬V*"±X¬µX¬4ÃÏpÜcrzsë¥a©ÑBá.+FèÄóš€4 ‡ž2[ãŠîOªú°K”˜´ÐbjsôcÉ_<Ípû]_×i9¡x¹m²j[A:JROTnM}[q=‘¹5õmýÄöFä×Õ·÷Ù‹_TßÜOdnM}[q=‘¹5õmýÄöFâ×Õ7÷Ù‹_TßÜOdn-}Sq=‘¸µõMýÄöFä×Õ7÷ÙéJÝ”¥;ÓÁgÕ´Ô£ÎÐÙ²ž2®èžŠk†¤™nóߥXs'¶×ž™h¼âP3›Î„ç=šá”„¤ €»ªJ‡SQ n.©9±O!ìÃÏ\òí'46 ÀWÌs2Ê}h6‚RA8œsΕe«Âm+Œ»Ï6aÌ+¯Ï™,£uZThµc]+ha¦­Pµ˜AÂ#)”ZBG T@Ò•åøÍ_“@ '/&#0¯$'ÖWe{uB¤XWª¯÷¤+IIÐ|Á5ÁO)êÚNh—ÏÉïô€ ЋÁƒ¤CRe›‰'C•'ïÖ×M¨iÝÑ)U)hJÖ•×th…®È±1”æVT„Ùi ‘¼â0½J¯-RuÁ%D•I¼’jIÒIñ\–‹n¸.­‹¾ô]Ø$\*/Æ´ÃÆæç\âq”Åu¥j®¡æ ® yOVÐÍùþ3úE+à›õÔ6ÞÃ_¬®³âÙùêÄ xÿ‘?…P¼#*ý¬®¯0MpSÊz¶†nh—Ï鯂oÔOPÚwx_ ~²ºÏ‹dç¨?àö'ð*„e_£õ•Õæ ¿#ø½ÛC741Ÿ›ÑBBA&àL94âÎôØNjcÎtò~p™—“å•jVûóöÃ3)wzw«Ñ˜òvcËiN*”ˆ3 +Ø{)Ô×Ú<ßœw[_k vÇtµÆö@u³åŽ{ºé_‘+à›õÔ6ÞÃ_¬®³âÙùêÄ Ûÿí€ÂðŒ«ô~²º¼Á7äúv†nh—Àóz)8å`b¬y??vÕÑh "Þ¸µ¢Ñ‹Qn¤`i›pg´5ßíÆ6…p·ºñ£ÛIUé òD¯‚oÔOPÚwx_ ~²ºÏ‹dç¨?à?ö¢„e_£õ•Õæ ¿#‘^í¡šÀóz&HH$à/‡–VT£ñ«š  +n±^X¬W–+ŠÀT%Â0$DŽ_~^Êö…4%ÄJÁTСS€RDIå YäÚaÁj•-*‰u<¨©éIRuøsÂøkõ•Ö|[#øw=Aø„}oý"Wèýeuy‚oÉä;IÍ pO/¸ynX#A„­*Àù¾iÊžóîþa Çh°™WV*qÎH$\û#Ÿò1Ü.iAçW`ƒ$ïâøT»©òÐH÷ˆ):"›UŠÃn©µ%hR¤R¤’#8"ðuˆ’Ù 5;¾QôðÿÈ‘ÂÓi;ï²¢jB”¢ A$ƒ¤âÙùêÄ pO*z• Œ«ô~²º¼Á7ÂO«Ö-¤û¡Ž?¸x½F‘Ó“Æ"-'Œ:DZOtˆ´ž0éi0„8—SÑœx®Gðîzƒñtõ*Wèýeuy‚o„=_õm'Ý p9ýÃÅÜ&Ú°Æ-Qhê‹GTZ:¢ÑÕލ´uE£ª-Qhê‹GT(銪Â]R{3B^IÆãìóS­—fÕ‘[î­ub3ßÄxã¢;y”Ÿh÷î74£¤öA“pñzc¹_â2{a™BS”ºð‘Þì?2ì«nf°­#q‡E MäÙ™P•¸Š¶ ,ºŠ”^+Bi½V¥Pœ×E)´ 6êAÿf¨eäº4+8÷]^)‘ü;ž üBƒ>²:— Œ«ô~²º¼Á5á ÚOºàsŸwÂ+—çò+®$ÐTB°Óo ʬ /fÚùæ])S(J€RJ TP\A¸ÆYÈrí$ÌJ­-Œ² §èsÝZ”›€ÁI‚“B(Fm a ) ƒ ><1íÖ;f˜™Ü÷‰½yþÏ竜æªf­mžLÝCO¥Ë°V<~$¼©¹´–åøa .I à$ðˆ9Õ½»XRÔµ­EJ8©F¤ó˜y”<7ØæVqÚ5C¬©µQBš‘§hBKôC‡ ߌuëíù–ÛqÓe¦Öâ©[-¥K4´H&•"ýp´-µ8…!b•JÒR¡QQTšPA~c#øw=Aø„üiü&Wèýeuy‚gÂ/”~´œa¾~3ùŽs„ŽC×mk4H„J \5Ô=çã–”¤Q «ÌÅhN*Hç…Ì´„“j¤ (o9³AU¢Tq&§”À0•C ïVo̯qíéÓ⎴—Se\Ç8?Œðû iT<Ä`v„6áIf†Ü$(såä=ˆÏeR—¦ääÍöÔš<è¸Éµy*¡ÕïizBÄd¼‹'“ Ê2–ÓuµbãŠZqg|¥rÜ0HèÊyC,J®Zq¤š¤†ŸJS»°¬BÙpФ‚SÀXÞ­*I"2®M˜Éó#¾0º€B]lÞÛȯâhu¤ï’~^GðîzƒñøÇá0¸Ê¿Gë+«Ìžø¿[¨@„öB8 äcSHYWÓ6h …ÃW™VêÂ7èürÂç’)¬Þ~:aO­X¨ôÁT-UUŠÀT15cz«ÓíšµtBT*“P|MÖ’êl«˜çãžiM¨¤ó#hD»Ûš«›5|a‚‘%!9”^ I°·ÜÏdoP8Î,Ñ §ZÈÜ*¢d …KHؘž³76,© ŠË°¯Ù¡C¾(pfJÛj–Ø @APúJm¾êÉsÕÆ&YXϹ°ãKo˜ªaÚsëùyùêÄ xã„Âã*ý¬®¯0=áë+®'ß à§uz¥¥ª4ë<ìÒÉÞiøÕUŠÅv•òja™•´nÃ8Ì~3C/¶ðªMùÒq–¿}ò)å ÷r΂’A"ãÍ´“}ÏÁåÑÏ×Ë·v%9•TÛÓ T¬A*P£Ï'CH"ä«ëT,çH\dÜ‘)“™K¬%¦ÓLùGŒµòÔxÊ$óBP´§Œ¥•er{ ˜šy-6œç„¥fB/Z 7ÀÆÈrÒ²ä÷t˜i”»j¥ Š•®•ÖMHA %!J¥£ò²?‡sÔˆ@ð?ûá0äe_£õ•Õæ8G”À„@ÀrAu-*ÑÛ¢uK5'°sA;t€Ù8$žhu¥ ¤ƒuàãŠE"Ì"UÅà“ÊnÚ{!¼ž‘á]IäßÕi¶øJyüçÏâ“l[¢xIë—TM¦ÕJÉ’“yUIjM…¾íÖìê>Û‹4Ci4¸¬¦§z*hAØL´•‡çìÎMÜ@)¬³'ì!^@›tfJÛj-0H*| ñ—vg% Ì¡LìÝ0A¬»DÒ…×ÊÓa²TieE»AQ”2”æS|¿8òUöSƒmMëHÁá_)TjR¯ùŒáÜõâ{§Û¯°ÂóüfŒ«ô~²º¼À¨Ã~ƒ<öæ.á5kì…(“y¿9‚v€ç†¥«Õ½ñèí„K4&ÑûWû0öm>ÞêÚ‘ŸúÜ£q iJ¸$ŸŒa¹"xfΡyì&Ãmàš&óùsxÄãi#z¯aø¼sè‚“d/5lŸX ûEüµËŸ©2̳Î(‰7Ô%瓸¸@ÝHÒ¨躶R¤Ž„%4PƒBÎptF·@Ï[.Èä¶·Y·‚+[ §|ë§B/ÕhÑ)ºÒ’/Œ¹²¹ì®VËdÊÈ’Fâ…oÝNýcE{Òw—Ñ{­”«æ²?‡sÔˆ@ÍÏ Ïñš2¯ÑúÊêñõ`y Ö)å÷ú ã´•a¤üc,¨’sÁ;M4§ åä×ñÙ Ë¡¯´®6ŽM¸ü•6…ð’(€Eh5'‘çrÊ•-&ÂU*WÁiº`VáÞ§P­¥`ƒ(¶C²ï¤¡Ä­iZT([q&ÉIÖ•&þˆ"„ƒˆºcô{—ÿZä4J¼ºÎd«ÎTï—-OúWuÑ ,¨éfѽpôÂP $*MMÀi&2öÍÚ`®_&Y˜|U*˜7°ÑûðÊAÜÅ1W&ff'Só.­çWŠÖju™)’3›ÈþÏP~!Ýï…çøÍWèýeuxûœú§ª k„žQ×è,öը\žØ'i–”ꀰ †ÛKI²žsœŸŒoÆáy8È[š±1”íÊK›*L½)2êqß×þÝ' (x@¡ºd2\´‹(bU”2ÒpJ/΢xJQÎ¥Ns¤\‡ÜYAM”R_(×u ¹ˆß&îŠ:8ËKÆ&ÓeÊñ‡´cîËÊÈYQ/¨¨Ë>Ú˜šm7• 奈7FÝJ“Å+E¤‡c.lª{+•²ÙT¬‘¨ÜP®øêMÝýcEjÒhÝôVëe*ùÜáœõã!yþ3FUú?Y]^>÷‚_'¾0!ŽæôiË(²1WV~žØQÚH©øÆkrE<£z»9¼%äiü®öç(Ñ) ÇÕPË5ã¯M/MVtRøØþÃä²U—–;ªwèq"×3 š†îºÙ´éª·ÉJ¬Ù ŠR6I“–2<ä^R7IR¯&e­óWÝfÙ«JVd8»ŽyŠ)*¡â3ÒÒ 4«m¥Z¯åùÜáœõã0…çøÍWèýeuxüÇ‚W7XƒŒ—áCÕè#î[Y9°ƒnM›÷B.]<ÝzÇ! qIB¥­F‰BR”N)$ê¶ 12RþV†q©Pݜ›¢ÒHi7Þw\Çs1%“¥äÚC,2†Z@¢P„ÙÌç:I8’a)¤8èNxÊû!ÉÙ)$ÎÌÙrÉR%[¤Ó˜P%º€€s-å6Œw×ËóMNNMÌ´Çs¢mõ¾–J÷[Í¥ïì§ÔÐ$Ú²‘d ¤Ä’êâGÝó¹Ã9êÆ a Ïñš2¯ÑúÊêñùŸüCß´"_AÙèê²ÚµïzqöVv›IR€“AHBR‘€üùññÜ‘rŽY]%Z£!A.L¹½e@8¸°<†êESjÈP1v)#’”îÓ^TÓ [¾•KbðÒ5'|G j„ "á p !锡*R–”% +ZÖ ”! R–²BR1$Ò2þÎÒÒW#Q×7È^PXïMÝCÜmŸ p}Ác{VÛp(,:븷žqnºâŠ–ãŠ*ZÔq*Q©&'Qi«YÐ}†îºAÀê5æUÇÚÓ%UG¬Ùé»ç•(ÙH*'01“%ÝiÅ)ÄÙ HTW„ ôî¼ÿ¢}‡³¹€JI4&»Ú!m­³E¥I:Æ<‡ÍãÓX#”í'ßùù=þΪ䧔öAÇjI]¬ÉÓp÷øãm¸òÒÓM­×h†ÛJ–µ JARŽ # l nLå‹“Šd«õ‡RyNäÑâ•9Ân%¤Ú—m 2ÚBJ„„!)”¤ÌÂÖ˜U”ˆ[ F[Ù,ŽHGrÛÊs–h‚òÍ.*4ƒõ‹»ŠnŒ³²<¡–•eåî2 Õ2Œ’¨5 tó˸^½êHªŠší-6¤éE7ÄiJ…5h¼ÓJ¡X0 @:E~nU¦Ùi6FùIJΣ@­Â¡W7¼@Aå…¤ÂÓ¾‡K©(X¨=#X9Áº› Z+[*Rk¦É"¾;7är+Ý´œÐÆ›Ð9µUÊh ÷õídI¦WŒ¯`»·Æò6Çr†ZXܹKT…͸ä)ŠQÕý”Ü<µ&2Æ$rB;Ë{¤Át˜r…ÕàÚ+ä"ƒhß ²1@˜[€DÔãm!nº´6Ûi*ZÜPB‘Š–µQ)ÉŒ»³»Våò5x¦yÄÒšåšUú{ëÉ·¥¼ºãÎ-×–·]p•-Ũ©jQÎ¥Éù/ÍõjXW5B¡BÊ”ŽƒHFhØfÃö1²=‰äÉÙ™"™å!ùy™‰i©–ÜÝ%¦^i*-—-ml†œWx=7¯¿hf†8þáèÁªÖužˆ03C"6>ÀöŠûüe ­Õ¥¶§Y B’µ­Fà”¥ •˜S`‹rÄÎX¨¦E ¼èî‡Ry÷6Ó£|ÜJÈ´Ãhi¦ÐÓhHJm!)JF 4 0BP¾od²%5™t­å÷*Õò®¸”’hý£”É Â2ÎÈ2†Zr³ ÜåÒ¢¦¥$2Þ`U×i‹®TÞ« 6~\òhè:RX÷C¼2t„+ï!*÷Âcô+<Êö97*ò”\•ÊΖêa LKK-)#|wtÌ(•T¦Òo³@†b’9Bë6G‘“"±7*šJ¼ª-\æû´6¿ `•›’Pï%†œufÊBœQ⥩J<€˜ys/½0åëyź¯Yj*<·h.]âépa‚†”œG¼k  /ƒ´q…˜œwtvƒ‚‹‡.~ÎošðŠÔÛ´˜g€=pÔÁøí„b 4 xÆGØÆTËVÓ[Œ¢‰më‘v;š*ö€P7;@¥N$ƒ bÒ9!²Õ¹‚(äÓ )åV• ú¶É°Š -Z m€˜¸BÜÚ›U9cÉñ¢ 5z5ޱâòÒ³&^U•¾òø(lTë'2R3©D$g16ËV&2¨LËÛÕ aÿlÖz9õçH#rÍebøbQ-„€à  ¸f„ R€‡_ ÏeÒY,-«]Ó9Mì«KÅPܸ*Î÷HòR(c*å™ü°îé8íP -0Š¥†k™®:V¢¥«:¾g%ä‰ü®öã$É])º:­ë ‚qqÊiHSŠØB¨cf{g äÜšöìãó/Ì<Û« !ªnHPnò,©7²M£kÉ {è¿ð¤ô•L~‡^-å,¨6W-.‘ïÊ‘ªÑ:ªa•>ÊoSˆ¦«Á'ø@'š˜&ó§4~’¦ƒ›!~U$R\©ÅAߦl­UpŠk©7Û&‚¤«æt²âO’oÖ3Žq ¬-!I5 CÂ͉··g‰òS½O¼óŸe<}ÓU¨ý¥@„ãà§Õ^¸ÚM•Šh:F¸˜–[Œƒ‚ýÇAöÙÀhÑI:>ÑâÙbùC-).™i:ß2âI·K¨ÃwMnµT´(­ý´Ø9c²Y%”µ,Í ;ã«¡yãuî¹A]IHJä¥"ÐNhÂè9”–mo<êi±U¸êœ)U¯7ÂQ¸c/ìÞfmNKd¥.^^ªI›½3/' µžYµ^Aÿ¸"„©­óqæòq?0&‚ònbLd‚LÍ”Le[RÒ÷(J‹¦]80ƒu@«¤òª*2~K—“a K2Ü» Š‘e:Ε,›ÔI*R¥McôÀ¦“!‘YO SSN ƒU%¶›J΀uV¦Õo¡¤È¢›@è¬&?D,ºîSÊ{’jS(ÉБWM •˜btš\ KI¥ú”Vñµ™ â3WNø‹®ˆqÔ0ÛŽº´¶ÓHSŽ­F‰ChIRÖ£˜% ’t˹Hå|±”²‘¨snºØ7”³jË&‚¥ ¥´Vƒ (M'5‹Ço\%Ä/‚ uVþŒvòLÅAaX§|T›Ç1¿êŒ¤öæÍ Ãgg=r‘æ@Æï€ä‚PA¼CÒ¥“m·^tòé1Ö @:@=>'-+18òeåY[ï/‚†ÅN²s%#:”BFsØ mLå[3.ïT™Q|»fãßù5“Fx@¥ÑB”Ci$¦ªf¨ ² !Ù€œñ² —Id ¦‚»¢v†Ì«jàœÝбPÈû7ºx o£*å™ü°öé8íR -0ë ׈Šã¥j*Z³«ærfHŸÊïn2,)MÑýe s¸á¸á®(R“CØ\žKÜßx ¹ëŽì´ïU0a³…ÿHª¹  oa ¡¼EUÅXû‡²ªã›0Àrý-¨:öA—UlOº³u›™D]=åu¨¥é¥j@›=øê{'4~‡²ÎKÉJË­å)éyN~«îs2½É·7Ö¯}]EÙºÛZkjêÐÑí–la†Ë‹Ëù%I™ž—™s™©uºê¹cf¿¤1–s$ädºÔƒ”3ŽZiù¤‚«L¶ØUQ*±fÞéßmM¶‹AÏ’³D(ê0¨Ê×T‹F„‹«^¾]¦]S.!Äâ“^QœD\bzdL½i5ÜÒ(Šÿ1¦³w >«’£¡'ª oËè8®ñ,…±,£–,¼¤™Y"Rwgmº“C޺СqV[¿zVB’2.ÇdrK!¹VBIḭóÎ.9@N¤Š!>JD!‘BÜ\³]ͤïhÍ´7©®u­TÔª™ÉÊyi_ôŒ÷”¨%s.ïA&ð‹ŠH½Hl)@R ZØöÃd²U— {ªxjaiàœá„^OÚ½dp—K¡¶Pß |G’0ç>á Vœ3p‚à5<Ó(RÜq(BET¥”žª7kgm‹Lä´—œß$̸ YF`[G Óž¦Â0"ÝHóo>·f¦S¯.õ8¼Thž`HQ) —GÇT'a6ZG%z/˜™;À4ž¯ë,/®¯1Lžôu=þí¡ ðøÃÑMƒäÔÎe%Í8›H‘J »¥A ¾ã¹¥+"íêÊPR"Mšvˆi¼!)¤LÊ…ÕÔøÇíï "ëîÚqИʙfS'0¹‰·ÐËiÒwÊø€ Ÿ14oHÔOÇFЉar óÑÞ¤i=_×i1/Â<‡Ýè¦À2qg%¶ò“E͸·Íר¹ TñJ-æ$ij4ŠmE}Îé”-¤j9®Ö5#d9•+—’³=6 J¨¯úf»¾:Ÿ °~‰£@A:• (Îå7ÌÄëëyÌ[Úx o[@БËSÌä]e¶èÍØ— £³nFœî¸Ñ£Sº)´ªÔd ‰Hd„¤´Þï6E4êAxŸ(7™–ï;ÔR©tS…6¡ !¬h¥hòSÊsòBœÎOÇfˆqíq3<ÛRÖ´¥)RÔ ”¤k$€³wg5·/’wʼ*qiÞ&ï mC~AòÜžöä:•Zºëî)ל[®¬Õn8¢¥¨ázIºá ]†ÔËá Æ‚§”á^jôˆRŠ”To$üs@‰TZXÐ÷FÚ|ÌÉó÷í&ÎSæ)³ÀäQêìÚNh—ú&Ã*˜}–Ã}ÖÙG¬âÂí1òre¥eÙBM†Zm¤z­¤%>Á|6ØHŒ ª ‚?Jós¬IäÎæ|²ÄÂæØ› ›.:,°¶Ql A ûªBÓnÒR¤­5§Ì4Ó¸†Ymnºâ‚PÚTµ(æJEæ6?°»9g82HQÿì8“yý›fšVoLJdö˜iCha–ÀJ„¤$`–Ða@Š¥"Êó+”û°…+MÐóÉH7Æ[Ù4–KI¹mò*‰vÈ.«A"½íŠ[UÆÍ¢)_/Ïå…Ù{œ¸ ¢Y²w1L 󸿴«‡’”í­a *8ueJ*8“X‘¨²‹YÕÔ>eóU¯–IÍ Š!Bw™†¯¾Ê9ÖÙpSM¢:!½˜äW«L§.šám®‹n$žQt µ"°Jge÷´µUŠ$´E *n¼Ò·V2ÆÍrfLAKo"~hƒe‰UZJUd”—Þ m´Ú($¸ð­CT©Ó³FmùÙ¥Û~aÂâÍô’„T’m-¶š›-¥)Íò¥¥¦'D¼«+}ç Ûi*Qש#(Ñ)MT¢&2èíEh˜Ë+JÅÄI2¥R¤ ŸxY&Íà¡›Š€;²‘TªW'³*ÓhChe¤$%¶Û@H ä¡´€z#DïS p•ëA0ìÊSž2æË¤2][RÔüÏÿ›*Rn¨. –ÒnÄÛ Õ P™_/Ïå…Ý{›ª%›'sÀ«;ŠÖ«‡’”ü™‰ *†Î¥+Ü;z4ÁÚH‰v·4Ôð•ì;y¾eÃD(ê>Û¡P!¡UQæ7MV£¥F'G<ƒÑ샱,£–Š]¡”’7÷Kˆ$¸+ô Õ%Ï\”·¡J7FCØÌŽIks“`Z n¯®Š}ÚR÷ »–ÒJŠšš¡ oƒE+˜z£?)»D&ó¤Ãž'ò£-×ÝCM T©j~dæ󀌻³i‰²¹|˜TÃ&ã2n}zw1ôIJß $òk bN] ¶š/Z¨·\;çE7Ê%T €”¡¾çŒÒ3rã U!×ÂsÆV˲™9•=4úNjòÕJÙm%ªî A4¿c.ìÂs)•³(W+(I¼“vü“ÄA®e(‹½|÷ÅzÇÙvÒq†ø äôS&ä©ì­0%¤XS«ºÚ°i”šïÞpïP›<¥P¥ R¨˜ØÞÀ¤òqjfr“³¢ú©=ᥩh‹Ôœ®UD‹IKDÙ J¡ -àóŸ${`œ×3 ç®à16”S Ù̼­¹y™¹‘PT eÙ4ò–Ÿ qm³™An!@9=7”3-çMÕQ¹#Š„Š% Ïe Ô›É'Ð%ššé©éŒ#ßà¡è“s”6RICH¸ÔvtFÄvöÉîçß2¹1.naÄ&¯M)>KÚÞ%;Å> ´‡-6”-Ht#%ä<Ÿ’L¬“Ie «G:”³@§YªÖ²”I²‘D¥ $%y÷óóhÝpUHuðœñ•²ì¦NeoL¼–Ð+‰ß(ñP‘¾Zµ&§š2þËg2²Üe….^G‘½uá¥ÕrOÕ¤Òœ"¯Ah…ÁÆ47ÃY~‰Ï"ÃÖ³8+üBãî<ñ°PÈØŽAÜîM,øe8á˜;˪_.åI^þÖÖéa:¢f} $©JRI¥#/lù¶T©|š”M: JžQ=΂“d‚ñ®6T”èY1;?7”/Î>·Ü8Z;Ô+hCiÔ€7š’OÈ[­£„¡É‰èg›¯\·Cn¡ÑTžPn#ÏÅÔJû!çR[P©§\Àß ^ïDçÑi¬èPèUÇÛf?E»1fQ#cYMÝÉ·+É/¹siqõìŠÖMxî²ÕH }×¥Úq„ÙVɲnÇe¹×Àyê–e›¢æ^îmÚZ²Ñe h¥¦2þÍ2®\ZÑlÉÉ„«*5XƯ¼(§ â‹ ð¨¨Mº<³Îë<çÙ<Ý‘ÝÎh@é÷˜3®ñ€äH÷ÖûŠÅj<÷t~PTa&ÂmâµpuнÃúÃO,-*´MŽ‘È{4Æÿ>¿T8tú:ÁPP¡‹La )ÀÐÂ^ãq蓉¶ÚÓÆIù½°S6Ù^L–îI<³0‰p(”:Ü´Ùm4¥–œ›e÷H´´%8¤“³™Faɹ闦æ] ¸ûî)ÇJŠ«¤oP„Ñ ¤¡! òé ©@ Ip@óìÒw¡Z.øèùEMNÑ5˶¼ÖN‘Ùý!rk+ØaL©8¦œ¢,E˜³bÌY€‚(L£ŠÄSZ®öcì†XKWâ­=ž~pZB†ªô_¶! *<½P‘Aè±i³ŠÑN¨2Íh#öÖ £zUìì܈ã*«hóŽÈ 4<ž’¤AO@\M•¨h>ͤˆiEsŸ`ÑûžšMÆÑ´Ëuß3~çæVÉâ}ÐÒ-ª<oÜú… FGL2‹¿„qìÿýN?ÿÄd !1"AQ#2Raqð3@BP`‘¡ $0Sbrtu’“”±³´ÁÑ456CTUcps‚¢²ÂÕáDÒÓñƒ%dÃe„£ÀâÿÚ?÷ëAHõÕ´Ô‰{ÔL‘éÅTžèÿØMç>%Æ×l´rGf_Žh¡Ž7‰tY’Ö4òJ¨¡Cø𠂤«$Eˆ#B<éÐþÁÐrÕòÖºói”Gèå$ï•P[]-'OEDbH·HèÆÓä#ºUÓ¥¥]]TzêŽ:xj;Ò5`7,Ní¿¡í’ í,ºXwI-/^ü¶k=âwoƒªù±˜S‡S¦3ÜŒ«=M*óµibQßõ¼cÃéuÿ|¼û‡þ‡2j>ÞÌ©¡µÓ|I/õqóˆ=<óhô׊$ÝUó~Œtb¡.+)Á¾˜Ï2mÞR®lÂí<@hæTqp"î9×Þþ†ö*†ÑËZÃ3òqÜç?U%ÔÿV,m$­b[^FK}r­×ûÀy¿¡èÜÆé"Úèêâü.¤~i׊‘Fên¬ªÀõ‚àăLfi¼Ž-Ä<£_6$C’FxÆì†âÆêÅMÇGÐöÌÏËå9{Ü“ÚÑ#m^5¹ÒþÝOêL7 W-Ôù1›ÇÉfu©kwv¾÷O~öèáìøãy¤H¢RòHÁGf6áóuâ‡c¢X•ë7¥•…Ù™#OÝÝsk÷ÄØÛE¬ÙZMÃÉ+ÂÚÙÕõèÞY·€êR‡ÇÃt“QÌÐ̶#UaÞºô2ž~nïóa&ßÊR;Žá<ñéÄo?-¯ºßÉ»åǵÅZÝO§W§›S'š±úl1¿Y8ô÷€ùíìý‡'ÎŽø¹†ŽiSÄü¤0ßî%qçÀ§¼1UN,tÆÖÓŽ)@Õ%Ý¿ÔH¦÷þÒ§Ãïó±ìýκ ÷“E-¿­B—¿~GQÑoÂ÷¸¨ÖøF6Ò-ÚŠYuÕeCÕ¡F_9»|ÏØêŽ×Ïé5²Î&µ>Ú2èF¾©-aË3kXIÝtY´ñ{ûÙÉD9Þ\æÚÌcÔÛY£xGžî,=±°éÄš1'§Å£‡” ¬K^ðKkøA9§áû±•l†ŠÖ¼BXXq±ŽWü5eÝ{[@À\áøbµn6’.O1-m%‰ö¶ªY-l@Uò£ªþþ¨dä«håÓ¹USÉ®ƒ™*6§«LR›ªùèÄœ1™ hÜpTÜ›n:AüXe(Ì‡Š±SnÚ{?±ÝFõe970Õ,õÈI£Pïµ]ø˜Ž†bÚ]MÏ U®‡] žž[pi#'낲‹ÿaì:u·™\¼­,p2EØ}R)ý8~¯[«y1˜GÉWV%­j™¬B—%ºG³ûϹ˜ÖSôMJ²ð¼…ñ¿ÏÀÜß‚ã£+¡ÆÖÃz6¥Kü'’óúïé÷ù²òr™>\xZ–ûÚ,íð{ÜViôêÆ'›U€,‘Çz$,~ï{ôiìýŸÏèo¢ÊeŽ·î‘>èàZ@‹r›Ûˆ^÷ÍŠ¡ÆÑCÊQU-µä\Ž»ªï(ó°ýýþlD¡²Ze¾±½Bõòîày7]=®*…ÔúucjÐ&jO‡OŸ.ô‰§ŠÈ<÷ö~Y7kæ4Üe;›ÞjÊ…Åú™nE‰¾˜ˆÝF&c4Œ4nЂ×P~<2”fCÅX©· ƒm=ýì· ž2×1Õµ—©^8Hø_”ãø­…ኑ¡ÆÙ¡ZºgèhäQ×te'ücã÷,Ÿ¶h©*/~^ž t¸Ò4m简ê‡1˜%Õ±™GÉWÕ¡ús¿ i!åÄãñéÃßßcé5Ì"¶©žÿ_Ê©ø91ðá;ÜT 1¶É¥+Û„®»Ý[È ¯ãÜþïˆ{±óòÙ^ÆüØÞu6†Wˆy¹œÑíVÃ…°ü1\·E'™¹·®GùmxüÞ·o5ú}ýì–̪c¹»Ó·Gs•Â9Ao)Ä|<Øœh}:±¶ÑÞÀ¨Œùn®Ÿæ¿¸¦ßʦ‹KÃ[ µõÝxâpÄto1epôƒ†áŠÅÐúuck#Ý©§}9é"øù…§«ºuk×ïïbä)¨î”ó!ò^94ñÝ^—Ä=ï›õbnÛ÷²Ê.TÄÃN–;‘ýï5ýÀìu7?2€ŸâÒ¨éã*;xÀîcÅ|t U §V6Â>ç Sî}Ünxôzß›ø½ý컄ÏròMyWÊ^žUQçb¾|AÞ'èĽ>XÚˆ÷òÚÁÕ¿ÜçáÝ÷`¦ÜÎdŽúMG%–Ýó¤°°ÖÚn§(x€xjwp;ÜT6²;ÐÊÞDÞ^è‹ñ'Íïï%~O7Ë›ÿ¼>øâ;ù·¯Š~ôy¿F$áŒú0ôUJx5<Àù fþàlœÜŽ@oe‘¤…´ãÊC Qâ‘nWÂw¾lT =U‘‡³ÕŠ2²›2Êzˆ7ÌqG"É r)ºº+)ëVPTØëÓÕåÄ£Lf+uo'êÅZîUT¥ï¹Q2ß…÷da{{‰µYµ~W]BôsVÌ‘0߆KIíã:^Úo.ëÁ†2ݵ¤žÑæ1š9>ô´íåb=ZUâÍ"ðÄ3CQË©4MÞ¼lOIQÄtûÕÉ5i  A4±q¸óa»ÜWiò~¬fhS0­SoÛS6O!qñ|~àlô¼¶S—HHbÔtňá¿É qâ³\ÐEº1' W¯5½:±˜©JúÀŒÌÚu;—×Ç슭©Êhê%¥™çÂÛ» a~:ëÇñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯ñ–IáÔ~߯WœÑfuJ\¬Pº¿(… ËÜX:`:žœQ×ÖPÈ%£©’ú†æ7‰ã7ŽAÚêÃA¦ƒvÜ»gïji#ÊðHÓV1±Öû±XØRWRWÅËQÔG:i}ÃÎBx ÙãnÙZÚÛޞ̸l£-±½¨é×Α"°ó0#½Åhæœg‰¹šÖŽ=Ô7Ý¢?Žop62^S! 'MÕ•>÷Q,`ù‚pü+F‡Ó«ênf•ZX1F;Æ·>v ÿ¯dm(Îó-GíƒþÆòõŒo/XÆòõŒo¯XÆúøCëá o¯„1¾¾ÆúøCëá o¯„1_8WŽÇÚŸÇWãôÓ [omé¦0ë>šb›7h~ å§“†ü¼M¨ð©é=8Ë6öx·#®äë"r‚ÑU§HîRnŽ‚¨ìuio®2Üó,ÍGΕ*dâ`“¹Î-Ä„'žÔ´EÐ_VOz; Á²Z Ú2¾u••‡˜‚1Ñðb°sO§V6wsН«ä›ÉÜ‘Ëp6]ü¡“^åW2øÖ)yºð´ž.uü¥¸b°h}:±´é¹™“¯>c~°ò.že²6²·“Ú<Ý/ÞÕ°þìxù`zþ?&>Xxý4Ç˦˜ùaãøü˜ùcãôÓ,<~šcå‡ÓL|°ú¯M1òÃê½4Ç˪ôÓ,>«ÓLTÖo•7à1Û^?M0k<~š`×Û§ÓL>hWÛziŒ—-Úm£mÜ—/ž¢5`²U±X(âÔ½S3$EsŒQ™& ]cc¦6{±‚ÑòU9ökQ[T¥_µ2ùd¤ B=£Me­©³Ë"šíZ•Pªª¼“ ›“å&ý~ô6[:ʲ얔VWA ¡¨Þ‹xÉ0½L¬/ AåÌÔj1SÙ &ˆnÓÃ[T|!E;éd^ÀÜmb5àUö@«šâŸ/¦‡‡¯K-G—¼Üz:¼x­­š¾¡êgÜ=…£TÀK8jIë$ûØî^á˜C½ÞO›½\¢nïk’·öpx U§V6µ-SN÷ï–Uû“ÿ7Åì¦ìµYžšfKDijªŒ°ò•!pªrô¯ ~Åûgàeÿ…®?bý³ð2ÿÂ×±~ÙøákØ¿lþ——þ¸ý‹öÏÀËÿ _êÇì]¶ž_øXñcö.ÛO/ü0x¼xý‹¶ÓéyáƒÅãÇì]¶ž]øXñxñûm¯—þ¾,~ÅÛkàeÿ†/‹ýñ´9o³SÁ›ˆJ¨šXy D£q#oÀïpÃTxðÕ>XÛÖí¨’E¾¼A#«]ß‹NŸq;8¹\×#rú'í‘çøÆÏv1Ú¬ÿ’šZo•kÛyˆ1»&œèht«“yHhÒ%¬öÆÎv-ÙŒ’¢X[9®]Ò*s!Äà µ5^ל£Ì*j"o[¨\PT h¿}‚“w9•7¬$¢“›~ùÖh·Y ¾tèÞ<0;ÜT6Á ¦R-ͨF>MÉOÜy¯ç÷\·/ž®ù試­¦NNž¦XRI ]ñ'qwÄwÀmäÝk¯¿­&J û¢T ·A´šø­á}m„ïqQÀãkP›Áx˜yyT]|Ìzµþ‡¶fC{–°·¯”תX¤¼öso¸ðÄ]èòb~Ú„Þ ªæïY á{n•kÿfÛ×èµú?¡ì·3l±¯»júK›ÛšgŒ5ÏQ[ƒÐA éˆ{ÑäýX›ÆÐ!z:µZ ”yLdÇýS0Jˆ•f‰‰ê êIó S÷£È17 g ¿«á+-ú®-ýи’¤^öHÕÖýL Ç‰}>,fcšÞX‘wÓŽë²üè{$q&[C"÷¯ILãÈÐÆGʼn1™kzub±BUÕ à•(¿,Œ5÷ ÔÓ­BR4ñ-T‘™c§iM$jlÏdï:¡ò î\o[x_ßÖÌH$ÉrÂ/ûN5ëŠ4ŒõèJx­Ã†$áé׌Às[’îWÕçäo»;ÿõ½Ãì®æ<Ï&ebŽ´’²2’¬¬*™HÔlAƒÃ/dL÷* C.kH¤s*Ù»eP{X«Ü3¥HQ¢¨ÆK·uÉÆ•=§Xúvm¢rÚi×4óo[U—–`.Ч;êù^TÜÙO)+£ z™Hê6ÒãpÅôêÆr»™X½ùêßw=¼ÛÖñûh;#ç9Vs˜eÔôÙKÃIPb¦†©¥*O<¥tj[^„QâÇ쯟ÿÉ>ñ[þ£Ù_?þ)’}â·ýG²¾üS$ûÅoúŽ?e|ÿø¦I÷Šßõ~ÊùÿñL“ï¿ê8ý•óÿâ™'Þ+Ôqû+çÿÅ2O¼Vÿ¨ãöWÏÿŠdŸx­ÿQÇ쯟ÿÉ>ñ[þ£Ù_?þ)’}â·ýG²¾üS$ûÅoúŽ6Çk«³úª)«c¤‰©àxÐQ¤¨¥Z@Ä¿-<ä›ð±QnŒG˜ÛÛziˆëѸúpÆE·™ÖMhà¬t¿Äë÷§‰ªmõš jBÅ*ÄXïÒTI#u’9^9ƒ££åteº²²U ƒq§¿M‚ýÆdÏø× Àb´hÞXÚ/ÝI~²?Åì~É9nöš=î÷3qýÈqòÌø^šcåŸÕü~L|³ú¯É–‡Âøü˜ùh|/É–‡ÂôÓ-…é¦>Z}W¦˜ùiõ^šcå©ð¾?&>ZŸ ãòb¶¿”d;ÜôŒÏ¦˜jû{oM0Ù•½·¦˜‚¦º¾u¥Ë骫ª_¼§¤†Z™ß€æÅ »·…êÆÇöÛ¢hêv’UÙ,¬î¶ìû•yÍBÑPE/'I}cvÌ'‚¢³ö…BÝq±Ý‰ö3b–9(2á_š&ã6s›nVæ¢ÁéË ‚†Ì^Ò†¢ï´Œ7½úö=rÙ\ÊxG]*¯ÃNÿâsƒÃÍŠÎQû¢¿c'ågö>Ø7dö9Ì3ºÜÇh¢«Ìª DñÒÕå©NŽB­¢Yr™äUæW?UùsØŸå]ªü;)ÿCÇü¹lOò®Õþ”ÿ¡ø±ÿ.[ü«µ‡eèxÿ—-ˆþUڿòô<ËŽÄ*í_áÙGú?åÇb?•v¯ðì£ýÅùqØå]«ü;(ÿCÇü¸lGò®Õþ”¡ãþ\6ùWjÿÊ?Ðñÿ-ûü«µ‡eèXÿ–ý‡þUÚÏòô,vjØ\Ÿ±æe’ÑdõYLyõ3ÎjY^*ˆ-…+© ®oÁ‡ =O.KŸm=re¹YYšÖ=»$-'&¤Û”žM"§„új‡ŽöÎ1±Ÿ#mFí^ÝæÝ¥ÉòI#š¬õvÖg,RÒÁfèi`¬åc`Ee<€¨ÙÙŽ£í-œÊ)2ØÈicRõ•Ex5]l¥êªMõ¬¬©{F¨º{÷ìxëÚi~rÖ–#^õá§ zµ(Þ=5â.x6+8N¬mRZ¾7ð¡Ý·Ö;|üáöØ}ªÛm«Ùj=šÊg®äòŠ¡UW̓/¢[¡«®˜¥Gf$ûùìwëÿ×Åù ãðÿCÝŽ½w4òPþ:¬÷\§V6Ãש?ýÇÿƒúìt{¶f:JÑ›y Oâ¸øqíqUÀãlJÞ J¿t±ŸòCÝt+~Çò£½ôñb«ôðq¶?ôÿÖ7ø¡îÇߺŸcÇù\÷ÓÅŠ®ŸN¬mý7õþè{±ÿî…gØÉùQÞâ«§e›úÇÿ÷ x{ÀÌ{#eYwd,—`dÝ59®[UU%Nþ”Õ»Ñ6YDÆõd XÄpv¡ œÛÝ®ÇÿºŸc'åF{éÕŠ®Þ½æ÷ :p@ñë?7›Â? ÆóxGá8Þoü'Íá„ãy¼#ðœo7„~æðÂq¼ÞøN7›Â? ÆóxGá8Þoü'’A¹¾¾¡uíƒ!>/v¶Ÿ>§Ù¬’»7¨*L0¦‰¯óÅ[©Ði­žKr„j‘ $ö¸Ú|Ò|®ªª¢V–z™¥ži¾’Y\¼ŽmÒÌŌ⭮O§VQ5ˆó~ŒlõsÁ$N¬T©R¤AƒÐF6+hSiv~޼°5H½­\:ET*¡žÝS)I‡@å ûSîÇcÿÝ Ï±“ò£½ôêÅWŒÊha–óK@ð2: >Mâ/î>à=wôרþ¡îçgªlÑò ¶²’9$˨ª*NgÉÝ„-:Ó¥D¨‘)1M–7ž4>º1™M¼Í¯N':œ?)ˆôêÆY6é]z¿F;صm\êé•ËÚð@ÌHYê¢ß24+Ò F $š éj]’A±'žhd¨©š*x!F’iç‘"†(Ô]žIª"(Õ™ˆq8®ì³±´Nè•uYƒ"ßçIY¯ëi%A¦‰šÖmàü•ˆ´›Á€£ìÁ±Õ$ ¤Ì²þs ÖP—Þ{BZãºÇ˜¶·µeTçã/ÌòüÚ˜Uåµ”õÔÅŠrÔò,ŠlZ6¶©"†RѸW"Ä{Øÿ÷B³ìdü¨Àï}:±UÀãl¿é¿¬ð|ÅñIñÇ43FñM ¨²E,R)I#’7^7RUÑVRAm_`m„ÚRóÓÓO³•cÊd†()€@e²Å%"¦ ‘H”ŽÅT™;ðûC6O˜VÐöÒÔö¥LÔÜ©ˆÁÊr2˜÷ù>RmÍíÛÛ}íÂçŽ7÷F2¼­ë$EåV Ä î—"öèº_É>63°6ÄåTôYŽ`µ»AW--<û™Œª™|R¸oEEJòƒu–7ŽºzØ_t·&»ÖôôôEKK4ÔÐ"Å=æG.ȲFc!§“4”Ol@mÊbQÊ\,†;¶ènͺEõ‡h²IìcMn–ܨ~Ö"Û·ßqI‡zMõ+p ÇËŒ¯Úæ’_¢Òc÷0—?¼;ÔrÕYï'$œƒRÒ·'r#gY\ w¶øRUXेO¸¿oÖýåp;ÜUp8Û.ßÖ?øG¾-»ýßÎ~Ù×~tøöþ|l÷¯EõËú1”þåeŸkèÿ7Øß$¯ïg$ûi?æ§¶¿øßüIŒ«×WÓ¥qò>úæsö7å¸t+~Çò£½ÅWO§V6ÇþŸúÆÿ¾-»ýßÎ~Ù×~u&çý8Ùï^‹ë—ôc)ýËË~×Ñþo±¾I_ÞÎIöÒÍN*?mñ·øÓW®¯§Jãä}õÌçì:oËp;Ží™ž´57üC×\§V6ŹԩÖÒ·Ü„ç÷ª#ާô|d+ã±êÆéÆáñcpø±¸qºz¾gnÿwóŸ¶ußIßùÿHÆÏzô_\¿£OîVYö¾óxýòJþörO¶“þjqQûsÿˆÿŒc*õÕôé\|¾¹œý‡Mùcîc¯]Í<”?Ž«×\§V6Çרü•þz‘oêk‹XbÃæ,1º0cúÁB8kéãôñcÓÇðcnÿwóŸ¶ußIßùÿN6{×¢ò¯èÆSû•–}¯£üÞ?c|’¿½œ“í¤ÿšœOûlŸæÆãõc*õÕôé\|¾¹œý‡Mùcîc¨ÿt¤¿|ô©kpäÄÍ{øùKZÚ[¦ú{_ƒ\6ÀŽ^t>6<žÆÞCïQtú)Pq·ÿ#öÎmg/]“TI³ÙÄ¥¤fPÕy]\­Î&¢’GÀò/-Gúæsö7帎ýb¿úø¿ÁŽƒ‡C­ý¹õmþ/pò¼¡3*yß”häŽ@ª@ š­ùËÄù˜qÖø«ÊkhîÒG¿þ.zi¼žVu°$ûžƒ§æK¨Ç*Æù%{9'ÛIÿ58¨õáäoÇ2¯\oÆ1ò>úæsö7å¸v…côµnéò$0‘ùVø±Ñðb³ôêÆÕ°5Ñ/Jü|Œäðc­[¨t¥¨umU– Hë-›£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌvoñ:¯Áåÿ³£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌvoñ:¯Áåÿ³£[üN«ðyìÇhÖÿªü_û1Ú5¿Äê¿—þÌl¥,ÉMWËC$DÌ–#!#sˆ Ç“ NF+vz’§¹ÈÉáÃe¿×-Š·@ǬÈk©w™W¶"Ú!Ï·ÕE«}Éqã÷4šcrOÌ‚G!é×ÔüË%ðE½‹òJþörO¶“þjqQëþfüqã+ï×Íþ\|¾¹œý‡MùcîcÁÿÓ*Oÿ¨IçùÞ—õƒÃ‡CéÕ©ýÒ_±“ò³{)„¶[FzâŒã8ä9Ž@ú r ãø1È7àÇ Þ?ƒƒxþ r ãø1È7àÇ Þƒ|$$—ð—ñ`Ń‹ JF3 ž¥­ÕãÝ“é±Y$èâlCxƒ†µÍ­sŠí˜¯¥»B;f1¯4ZQåOmâÜ$Ÿh0ÊÊJ°*ÀØ«=DA÷$ÚøåÙÏù¶*=|}kÿŠ,e~¸¾ž>Gß\Î~æü±÷`¿qÇŽ¦oˆ×ƒÀy±[ÀãiœÑÁö±F«âæülN¿‹Øù[ÙE뀈ã‘ôø1ÈO69Oƒ†9ÕŽCÅñcƒ†9 rÓÍŽ@zy½=4¥†ÊÞQŽO–9v¸ôóbX)⥨’(bA¼òJËh4ÕˆUSŒÿ9ÙyƒEær‚W¶š4M8¤åY,Þ×’äŸw¿+bM®mâææÞ3a-‡“ݳ¨¨¤Ú\Ò¦’y©ª`Í«$†¢žW†xdZ©J¼RÆUãuèe`GAÇ`ÎÌ{WµuqìÖÐe™È‰UGHèÒ*vu\øó)‹ÍÉîCS%DÒº£SNìÓT‹á–ÞOaü’Ÿ½œ“í¤ßšœT~Ùêÿz/ÕŒ«×ÓÁÇÈûë™ÏØtß–>àl2È©˜^òËTí~±;F-â´c¯R|¸b¸ó[Ó«BÁ³IÇ‚#Så(O3=ý‘æyl9Mr×ÑE"@¤•0#©¹Ñ•œ|£-òŸå<¿ðÊü˜ùo”ÿ)åÿ†SÿäÇË|§ùO/ü2Ÿÿ&>[åÊt†SÿäÇË|£ùNƒðÊü˜ùo”)åÿ†SÿäÇË|£ùO/ü2Ÿÿ&>\eÊyá”ÿù1òã(þSËÿ §ÿÉ—Gòž_øe?þL|¸Ê?”òÿÃ)ÿïÆ_SKV’5-D ŒŒ¤¡IŒd€mÐq»ÜTÕRÑBÓÕO1o |’Ÿ½œ“í¤ÿšœT~Ùÿãñ&2¯\_O#ï®g?aÓ~Tû±‘Èhïq3ù¤¨’Að·”aøb¿ƒzuc< æµdó£ø¡Œ€èz¸}Žif?eEù,f®_•ÇÊ×TÇ×uI¼’[¢8–ò?uHÚ÷d ZñdðrKöª@iõPQ8hÒ´—S¬HØ«­«®”ÏYQ-D§ÛHÄØx(;Ô^¥@ª:¸Ö=XN8z„a“«àö %MƃT‹ñÁOÍíÚåù@x)ŠWW 94kÁ cËH¼]OSŸ~k´g¾{]šÎg­¥mB%íJM÷cAÍEñ M®Ä›œe;A˜ä•iUE;iÙ›µªSŽh´xÏ:6Vã(Í)³¬º›1¥=Ît»! ¼2$†K{xÚàøBÎ9¬>oä”ýìäŸlçü×¶°ÿâLe~¸¾Xù}s9û›ò§Ü ”FL“, ,M28ú×»)Ó­H?\? fšÞXÍ¿tjÿ­?ˆ{‡—çÙŽWMQKC"B*\;˸`BîÙ®«§Næø½Õµ¤–I¤if‘å•ÍÞIžG=lìK1ñ“î(Rp#óà&-óMøc‡°Á*o€C U–ãækó,²Q]Q„Ê ¥xü>ÃVÝ?uõd>#øú¿WÁÔ=]¢Û:d§¥e«Ì-ºMàLÎ;æ^<ŠãÁÚàe Š@E­M‡£¹©Äœ=:ñ™kùñPKTNÇRf”“ÖK’}ã¾~fã¯áó%ÔtàËÔ>OìHÚÚtÇê°ÞÆa˜Ñep´õõÓÆ.ñçHÂÜØ£yÌê* Û@N6oªë÷é²âô4z‚Á­U8¿ð’!îJFœ”MÒË$²!°– ·OžŸöô¹Á$áTœ,`wÞ`,Ü4Uæ> 6wa3,Ü¥Ez¾Y—^öqjÚ…¾¡SŒ*mm浃o){4XË2š ž™irút‚0ñºJÂüù_‹µËnB*¯7è$Ÿïg%ûi?æ§ç‹ýE¾1Œ«×WÓ¥qò>úæsö7åO³øè5'€Å/x£êGøF%Æhy­éÕ‚I$I$“ÖOxª·ò`˜2Œ'ÔSºo‹à°2õ`±>È®,xÅ€Üâ o­áñ<–õ6Ç$ùw“TEÞ²5g¤Ë¿%~6™EÆÛÌ­Ä ;5È7Ï¢Rõ”ˆ¢ìÕ0*޲ePœâŸ½ 1/O3¦"ž{hDob8‚ˆ÷ŠÎz¥‚ñÃ9o™¹>ËÌó¬¿$„TWÔ,*M’1ΚcàÅ翌º¼XƒV’´U6üE‘Ç #q½¼š¨%Vq½MLwYiJ‰ÆšMô”#Š÷ì lCb–’š†¦¤†:x½Ž1aã'¥˜ô³Ǥýä“ýìäŸm'üÔâ~ÿÏú1•zêút®>Gï]Î~æü±ö~L¥ó|±T\öý+tw©2;z•IñðâeôñbnÚ3ógØÓþHûÅUÿU›t`’}žHç@5$ðEÙŽˆÉI“ruÕC}¬›ÑS¸æóX~Ú‘N»±‘æóØ10ÍjëçzšÊ‰*jF–Cs»à*‹,h:¨ê½Î;ç¿—I–L÷©Ë½jçW¢ó-×È=â= †Š7ÞŠÞ·›£ôú›].•ò(ª‚Tž–FÐ#ƒ»"³qä䉘7@!$Ýc©ÙýŽËòP“È«W_e<³¯r…†¿;F×±SkL÷“MääC2}ä“ýìäŸm'üÔâ~ÿÏú2¿\_7ùqò?úîqö7å³öf3.}–¨·¯—×…£äo>ê›xúGEÞ&&à|øÚ¢_U}9–ׯËo„ؼD7ô¾ªÍ¼}Ÿœg¹vI+[0T´TéΨšÚw8ú¯¡v²–½†6—ms è¼ Æ‹.ÓçH\ïMmAª˜n´šëÉ(Xy«ur7‹ËÐ4€ä¹8٬ɲl⎺ì!W䪂ûjYy“slwÊê«Òñ®£ˆ¡nq±ººÜ[µ¬|–'áõ<]^žŸÆ¿Eù$ÿ{9'ÛIÿ58Ÿ¿>_ÕŒ¯×Íþ\|þ»œ}‡MùcìýŒ>ÐQ’}mg/qxÿ—ób>ôb~Ú÷‚eðž >û~%>ñ[Ó§Õ‘º>g;¤jÏ#¬hƒyØ*¨K1°u“¡ì‡KJ¯O“¨Ÿ¬u<„}b$` ÍÔär]#•¯Í*+f’z™žy¤7w‘‹1øxУEKñ8[¶#„·F2]šÍ3–QAK¿ðW«”òt‘u––ÄÈVÚÇË'Ôê1’ÐM—ÒÒRÍ?lµ-:Bg Ér›‹¸½ÏyÏ5,Knï1Þ'ÕkþÞÑ~I?ÞÎIöÒÍN'õÃŒ¯×Íþ\|þ¹œ}‡MùcìýƒE|í‰1ÑLëâc,ßÇÍvãþá;ÑŠŽÛ'µ*¯ú„^<,®÷ñ÷–èã/¼%?¨M…ðuönu´yfEêæÞ”´T‘Y§~¢G9I7A³no•#E¶Y†tÅù ;ó)"'“ÓƒHtiŸ¦í =â&$”·N '†"xâž‘¤dDFw‘•#DRîîÄDE»3 P/œìxïÉUç·†.k¦ZÝdÖã·d¶¤ iâ&Nu¤–6B†b§‰!‚4†Ô$qÆ¡p ¢À FyÞ\paõBÞuÔ|E¾RAqäôñt_ýþ‰Y[G—SÉW_UOGK¼•2¤1'•ä*·=÷c ã³¶ÚìîÒå4-kVËC_,³È°ML&.å$É+göȦ62;)¾'õÃŒ¯×Íþ\v#ÚÜ›e \¹Ô³AtPÁÑ@õ ¤˜Ê±oL#îqHHFon+eYÖSžSöÖQ˜ÒfÝö¦™dh™Æò¤ñß•§®¼”é–â¾ÎìzŒkkäšD¤õ‘¬<á[Ä-ÇQuïqSÀúuclØÚ¿4ÌÌGŒ!ÇÁÃï1êÈt·_³%–(#if‘"‰óÉ+¬q ëgbGŒ‘¤ìˆ‘oÒäv-Á«Ýt}­ åf_$]丫¯š¦G–id–I³¼ŒÎîÇ‹31,Äñ$œ3“€ 8ŽÖÆÏì¦aIó¼[)­\À¬õ…bwO÷IõP~‰·›Sšm.{ZkfqGEYS_@ðQÆÈÐË(‰Zi™wÝ´Ò5D]¤•¡¡¼D£N‚,n‹ÿ|q&a9ßÞŒøÁaæ* øTc.¯¦¤1sԪë >Í6s1‡3ʪZ ˆX]Lûh*b¸C $2›¾ümªŽ¹EqÌò¬³2hŒ ˜eôUÍã «¦Žs¾·ŒÉ¸|žÍìu™”·ïš•7mô¾U¯)Õ¥ºo§µÅQÐãlXŠUérG‰Œ@|j}áÇÃÕó¼žËÏvŸ-Èc=±'+U`RŽ"9V¿sÂ$ú§ÔŽñ_AµÙŽw!å¥äéÔžN–+¬)®…‡_ùǹðBŽn$œžœ\œ*Å% ³È‘EË$Œ8ãBò;›YQìÄõìw»¹UžX rèš÷ñUʺðÀÄXÙ¥: †©âH`"Š5 q¨DE¨°æ{èíÖ¥~+aNò«xJÂ/êmžÜmnÌmngAK^/G‚¢––®’’Xù*šh%*²$ISÉ$¦XvÀ°]u×?fšÇJZ˜¨¨°®’7dR¤«síQ£,ƒ•#vC"Â|±O;VЍ­“KÙÞa©õÅAÍ㈻ eM봵ћûE‚UÝÓRyxÛôtMì(ªâ¯¥†® þFu-(»ŒWx­Êô^×jAù¾Í22<ügtÑ[/ϹIåÜØs4ÝíÀz»gy+.ÆòM-VàÝ‹«ÁQ¥ÕÆñÞCÆÛ½*uóâ£gh%bÊgˆôpË~‹‰ØÛ«xyqG‘ÓSܤÎGYE^Ž€·þö2¥¶ðÛuBÿµñØ÷c?âlò–:°M *«Qoϧ„©1;ûQ;”ƒ›v´ŒÀ®æ ¨ ªUÀ  €öocÄ+ª¤Ýç5s.÷Z¬Xygóß*·ӫX÷ÌQ<w¯õÒ8ÿ'Çï 8|«q>_dÉ$p£Ë+¤QÆ¥žI""K;± ª:I m'dT‹~—#Õ¸6`ë ëíhœkÐ9Y— y.*ëæ©–If•å–F,òHÅݘêY‰$“Ä“s†rpœEcÃÊf9ÓüíHŽR®{­:u€À,ŸÍÅr=¹@oŒfò܆ )£å*YÍ[(y:H^ˆb¿£°ÑwÌŽ7ÏÍEÞùñxQeû—eý§g ¾tÚZJ¸u™D<¦ëžVIéê*#v*ÆÊ9N‹¹`Á›×,K)éR‘ ãeóçÌ#4Umz¸é)<êˆF—o hý¹âêCžpv4Ð<óE kw–D‰.ìFdÛÐ%-<ÑéG }ljyôÖä’xŸ›Û=›ƒjöw0ÉåT夌ÍA+ó½|!4 ñ@IheeÔÓÍ2{cŒÎŽZ:™é§¢š d†XÜY£’6)"0èe`TŽ¿Rœj1–@dtq ~,v4ÙÑ’dÔJ›µ™ J—¸³%0_cñ]Y§oÛ§¼ÎØHÊä¹"ÒÏP॔ǯŽèÝztñè1Xy§Ó«HûÙ¬ºßq~·‹[ûÛÞ{ûÃ^ËÏ6·(ÈÃÇ4ܽb€Eé.xr¯c:Yйå7HeÚ°Ìs·"iy:`׎’"VðKádžè÷arpbIË8Ôá"-Š ®¦²hংI怑ƻÌxk§ÙÚÊ£V kìw¸V§=°Ý7\¾'VÞû&hØ­¿š…ˆ=2‘ÍÄ0ÅOCiQ¨HãB"(àE€@‹§:¥Œï~#êvs‰Û78KI$y¬2IsfHšâK^Ãu¦˜ðïêNï6²Ÿ} ª9È.ßT¿ÿ‘­úñb†¦Z¸*áõÈ$C[ÚÈ…‘­®ëcaiE~aGT¤¼0ÓŠíò4}ä^CëIy@<`O vxØæ Íi©!µnÁ+ €ÑP–¸èíÈcåÁ×zhêX‘qr,ؤ]æXìW²žç0<ñoeô%jkK[u•Mã§#ÛvË(±äyW]SÙû!'‘åÃt®ôFMo¯-#I½¯„X°è±ÓKaøb´è}:±¶þkXßÎûˆÑ?G¼5 Pû®²š†©¬ž:x¾’F°×€,ÇÚª‚ÍÐ6“²4Ór”Ù1jX,ÊÕGJ©z/ñu·½Û¤4gLTU¼„–bI$’MÉ¿I=xg' ¤ârÝÙ½ŠÌ3ƒÅ %ùÕs!î‹}{V3c9ÐŽRâ>Ùˆ+ŒŸ"˲Hy*(@vP&¨~uDätÉ'Uø"…zè9¶w—drõó„Þ¿% Ùª'#¢(® èجHJïÈ»Ã!µ³mg™EÚñÓÒÓÓE$( ynee%äÑ[xuî­½±hMÌß×0øG©Ùš—*ÊîÒª¤«"ð! ªÜt釄-<Ò8æ¬O6Á|¬HQãÄTÄêú¯lWãüxìWFbÙšz¶õJ‘ÆNñ<….ôifcÞ‡iÀiÉ€I° ô ¦Èiv›#Ì2Z°»•2Å!]ãORõ=JtïC(WÒÛ˼‡šÄc9ËjrœÊ¯.¬ŒÅUES-4ñŸk$.QÇŒ\sO[0Ðã(„Í2($ñŒv;Ù±³›9K‰»[Z²²ãœ¬ëÜ`==Æ".§½•åëö~E%•åÑÞü2^ÖïbA{t^×µÏIÃæÊÞXÌ júÒI?=Tq×A+<ÃAâ÷† 0®ËÕì} Úü³!VŒ°ª®°µ$N9—験œ!×rÍ)ºw0¾3í¦Ì3ª†š®bEÏ']`„x1Gsn¢ìZFöîÇLON58Ž"qC–ÏW,pA “Í!´qD…äsÄÙG@±ÑT ±_7Øþ–‰bªÎ*ªlŽ´Z5-;wÖ›¢®EÐûXàa»&Xh€}$Ø I<ë8Ú.Èt”BJ\›v®§U5m­4DØ^ãPã[»`§»­×žqS[Q$õsÉSS)¹,ÛÍâñ"(ÑTn¢(Ý@ÝÇaÕ™ó îvï’–3b,$Ò2-»æ$Dúº7m¥ÅéÖFð¦sðîú˜eŠ,«+36èjÙ€échT£¤ð ©bª¬ÔMW“„îô± ž›q Þƒ®¤ÄQI<±Á 4“M"Eh.ÒI#DQÒÌÄ:Î6{+.I•åBŨ¨¡ŠVŸwz¡ÀØI;Hö¹ï»ãÄüÂ)vT^ùØ(ò±°øñS°5Û†\¾¢*®mù ~w˜Ÿ–… dx­kr|Ó.ÞíÚ šuSc+FL½¹µ ½ kknÈoqn#Õù!vCµêé6ºŽ+E]¹C™î¶$ùÖv·ñŠt11à˜Ηƒöq3Í¦Ž¦¡7¨òˆNa *JI4rD”°bºÌÂfGÒX`™-®žÎUgeEg`ª8]˜Ø 8õâ‘BE€*( ‹Xt‰8c1ncy*›~ª¥øoÏ3[«zF>ñQ÷´<±*ë)¨`zšÉã§;é$k xÒÌ}ª¨,Ýãi{#Ë(z\›z–rµa6©pîVý¬§Žð¼ÝéV„†V¨¬y³1$’I&䞻᜶ Ä4ź1³[_œ•˜¯jÐÜoUʽøéÑ›ÏÕóbw¸Éò,»#ƒ’¢„ej—³TNGL’[…ø"…zè9¶w–ä°òÙ…BŽ~N%çÏ1Kˆsˆè.wcR@w]á}¥Ûºìß”‚h²ýTÂÏ™oÿQ ¶ö–îKhÇH{oaê$—¼º¯Kžù¾´~ŸÇl*áǤIòœv#SAPJÚCA w·âlt·î–±¾p¶Ò @¾2Çã·èõ;1äy¾oC.W—Ô×­ËnÙ±òÒGËü­ä{Š^gßäe·&mÍm¥àØÝ«¨EÎg*ÍÀÏ—ÔÒÇ皦8¢_í8ÆÁö29%DYÎzÐÍ™EsKEìÔôlBîÏ$…m%\g|GÉ^(M¤I$“u£ùœ¦.[3 B® àxY˜yÔ<}\qJ,£Éú±' m6[–v¥\憘K2ºF!rÑÆ77ž-ÆmQ@Þ'Nm¬ÄmCE´Ù&c‘æ z|™áßïO/}OU¸î´Ó¬sÆ Ýf@® 3)ìW±RìVÍŠZå‹åÅlïQ™4L$EäÙ£¥%]$Ž8o(6KQ0áogå¨%Ìh#7´•´¨mÆÏ:)·uêÄ/§‹pÆm&äR1àªNœtÓà÷³´;i–d{ð)•À0ä"a¹ -S/7ãïK§aœÎe«œ°·ó`ˆuG667vöÌq$źq©Äp“ÑŒ·)©®¨Žš– *'“¼Š5Þkt±èDZG*ˆ5f\lçcêZVp#«©æ²ÑŽu$ ǺßöÛ 8ÔnMÍ“TU*`ЀÀ} ³ª –bl’IÐ5$ðÆÒöB¤¡Rdå*ê¬ÊÕõ, ÂñtT¸Ô†ý®ã^uÞA™g5µOW4•U2›±v,Ç€ž Š9ª¢ÊŠ7T-ƒ½!¼†ýH;Åòõþ.=xœE6Ói;[$w*7ªke“zÖmÄŽUIâÀ2HG@ßn›â!»¥ïê?7Ð6V.W<£½ˆ•‚/Â'Qç ÊÀô[MqN9£Éú1'V6Æmܲ§…ÜÆ€ùSzÚêwwšýálÌ|®}–¥íÝ™îz¢ŠIÂØ‹†':m¼ [^ÄA-ÕnYxýU½ê3˜…U™˜Ø(’IÐ5$ðÆ}Ù2’‹z¢Ÿ·e³Q¿(=±ÙæãsO§zÆ÷Ãö`Ú?´rR·Ôv½p$t€~X›£ºmÔq”vbÈêWs8¦¨Ê¦HÃVÒ¾š¶ôh³Çs¯&a(#»5‰ÆÓvG–¯~—%v¦£ T ªªNã)<„DðyWU»H¡Ú5[9:“‚ۨ[Ò“œØÃ3X*ª>r ¸yRãÖ`â7ø¤’ê$_)ÉrÜ–C/§oXË+s瘎™e<æ·µQhÒçqçè9ÖÒå9 |ýQÝ™KGKå*t£HÕ5^RŠÆû¤îµ¶Ÿnk³’ñ‡íL¼5Ò–6¶õ¸‰ŒÍÒ6+ð¹’¢I{Û¨<\ñ#N£ÊVzºx“©>SÓ„ˆœReóNéq´ŽäDRÌÇ *€I>!Œ‡±ä§r|ݹù¬)c!§qĉ\saïßÉ ¥¤‚N––%†ÎêFƒš«rOŒ“«17,Ä–$’}C†ïÐ6üÎyº"¦Üá ieB9ÝÑ0¤_¨â.÷×ðcn&µ41tÉP úÔF'ûÅ~?p¶".S=¬#O<ºôw±]|g•ÝÓ¡F½œé¬“w/¨ñ„_º‘ü“æ÷©Ù5z,ª:8›uóq!^ׇtÈšj9GxÔô2 ‚Ú¶}N¸š^8f¾)k;B繓Íú‚ÊO£®šãSˆá-Œ£"­ÌꚎ畺YPxr¹æDƒÂr/ý|x¤Ž×sä¤ú„Ûè=áæVÏnþh¢½þ”¥ín:rÜzn:޽Äçš|Ÿ¤~¼m´»Õ‘kÍY\õsŠ*ùÆë|>áv>‹z¾¶mÛòtñǽÕÊÉ{q¾¼•ÿ³¯xb èq¶RZ•WŽüè¾Nk¿V½å¼þ/z’3A>q$ ÷J(’˜q·)ë“i×¾æ6=<˜ââª{“®ðMðZvÌ!ºPî?šÖ?rGžøÙ®ÇՙХU~þ_DÁY7“纅:÷(ŸÖca¯-0¹¸1ÄêwÆ[•Ðe4âš‚ BÖÖIZÖå%Ýäsá1>+ >ƒží6YDMT¼¥K.ô4Qg“ 3tC?ÂIk€ü’ÊêSI¶™ŽtÎ&—¢ñÑÄÅaMÓ'Lòé}ù81nI# ¹‡žIN„¢užý¼ƒ ³æUèÞ'¯ÄOF(òéj#Ž6wb¢)fbxª 'Åì}º§9‹¡Z$n{kÿQ"æ¤[‰¹C½Îx™J˜aŠž4†Ò£HãPˆ£‚­€Öäõ’I×Ôä˯V£à€ Àz’>ƒ°°îe)%‡wži4ú—äuñ÷.Ž‹xð¼1Tl§W/)›0úT1§êK¿›GýÂìwsÌ&±çË[Þ×¹«=‡EÇ+¯ˆ¯‹ª:N¬m”œêT×V•¸éÌTçÓÏïN¢d¦§ž¦O[§†YŸë"Bíñ)ÆÐæmUWS<Œ “Í$¯nÒ9v¶§¤ÿ¾%—xœXœ*acÇaª* ŠìÛ¶é„õ±ÑTQ4ƒ~(NõDs¾á;¦bM?$Å“ÜvVF¶÷Ð&š*xžyäHa‰KÉ$ŒGÌlÆÒöIïÒäVЕlÂE{ìhœh?œ•n}¬cFÅng5LÒ<’IQ<ŒZGw.ìÇ‹I#oOMÉÅ™ÎóãýÕòÓÇ —Ä4å­¦6d«óv(¹:plõR‚°¯ à¦ÝÑÀ òisÃ{tã$Ù¼»#AÚéÊÔÚÏW ©¿AÂ$ú•ÔûvoT ›` z®u·ÐvZG) S¡íxÜówH2)u‚Ö>=zqÑŠÖ²Ÿ?èÆs/-š×=ïÝÙ>ô_å¯ÓÇÜ-€‡s(/fîõsIsÀîˆâæéùÓÎÞ× «:ml›ÕÑG¯2Þ.{‘§¹ë§ ß7½.Èù²å{3R7·d­’:Xúí~VSäÜ“<}pyEMCÔHHëÂ@ÍÑ„¦=XZSÕ馘õziŽÃùcÓÐæù‹‹-eE5,WKœ’W•Õ½²;Uªh-¿ ’,¿7Ÿm6Y³ñU/)R˽ Däèº!ˆŸá$µÂ¿&²²îcivÊ¿;‘D¼"±äi#6‰ù»Öõé@þÅüE;¸y¤›­ûçþÑñáW OÓç×ÄN(òù'tHÑÝ‚ªª–ff (PÉ'@¤ãg;ÇÇUœêÖ ´*mní™ÆüO#Ó›¿'#"EŽ$Hã@#B"(પ¨ ˜m©ãê±·ÐUK²¢‹³ª:É6]8ã.ˆEQ¯EA~¥ üXnÌ^Ñ·“IÊÍ,º÷IMx󨶾=u÷ c¢ä²*¯9$“_ç¦y?ͧX¶†+[š}:±´Rr™¤Â÷äÒ4òsyK»¿”Ÿz{}±Y–Ø5A™ÓÑÒQG+ y#™ê¦avyc¾äa#W™!È@×QØc8‰IZ¬¦BíÛj[Ä/A»sÀ\Ö@Ãv-Ú(xRÒË¥û•lg‡E¥Xú‚†øq&ÃçÐX¢¥¯ô¨ä—«‰Ž6·“ŽC˜!²ú›¶Šw.@¹ t›Xۀ㌓`³\ÙÕ¥§|ºŒߨ«]×uÞPžy$}Û•.#„ÚÆ`l_AM•ÑSPR''OKŽ1¥ÏK;4’¹i%k ùšÚüÕUU5TÕÍ< ¼²°UCÆÌtD[³±  ±CÙ9B½6G#\©¯WzÀñ§€ï½ÄI?8)#W³%fg5\ÒHòIQ3±i%‘ËbyÍ$¬Ib´Ç\Zçy¹íýÕúÑÑåã…Œ¶ ¥f¶˜ÙýŠÌs{J¨°RŽ53ï*5ŠÄ–•…›½ŠFëÈ„‹ä›7—dqŽ×•©±W ©¿AÂ$ú•ÔŽù›æQ:OªM°Í äðšŒ×/Š×½T,ÂÛÀ¤n${Ž­Ä7¾–ÔéŠU²N¬IÃE?%—Ö?U<¶¿I)ev°÷$‡Ëh!;׊’ž3¼,y‘ Ôt5œIÃíeoN¬f²r¹ckëîšÿ7Üþnž+{ÞÚ-´ÊòÐÜV×;V'DmÿQ-˜Gõ€4j£ ÚÌÃ:›•®¨æ)<…²(¯žSíg_/&Sñ9ÄÊ<Ÿ«žn6Êm̶Udx£¸êßV>b?¸TÑrõA¯vš(¹½÷tuM/¥õÒý8§Aâñ‰N˜ÌšÈÞLJü¤²I©ß‘ßßs˜x뮺ûܪª¦¢‚Jš¹£§‚!w–V £¨xÙŽˆ‹vv!T cj»#Í?+E’±§¦Õ¯U©œuÇp¦ÓNê|$ïqQ[$ÌÖ;ìIÞv7PzÉé>/‡uÞ$³“ú@ô¾ b RÄišØzÜ×ryGjQqí‰Y-m ŒØÉ®›÷X…›ž]wW’åÙ<\•  I3s§–Ý2IaåÝP±ƒÞ ù€ áéÀP>aÛèymkeÕÔõŠ ä^ì£ÛFÀ¬‹®š¡6ê6=˳ZjÊxç‚@ñ¸¸#ˆëVU”èÊlAÐë‰ë)ÔpÆÖfñ×N”°0x bò87V–Û¡Tð;ŠZç]ZÚn›ûƒ³ðòùÖ[‰ùê94þg»_È7.|@â.÷pÆ{/'KQ&£r[›ßsP8k¦ž?{›E¶yV@­ø¬¯)!qÜÏÿs(ÞÛévi×¹„nPmÖf9ÔܵuG1IäiãºÓü{Ø¢¹çpؼ¬‡‘·FÞcÎ%SÁO×ò‡L*ô|XŠÝËrŠšÙ£‚žšW *"–'õ²tIÙîÇôÔb:œÛvyÁÞŠoŽY‡¯u(¶‹K7*¤‚ª¨ªˆ¡Q@UUUUE‚¨€ ÂÆN§AŽHc“\n/WÍ3ü?‹è´Õ•TlZ–ya'Žãë—½o88¨ÎsJ¥)=d¬„XªîÆêa¦÷žþáìT<®} n߆yo{nÝD;ÜEý{vÚ÷×è¸Nôbs¡ÆÕÉ»—TøÕSM;÷Dÿ6¾/{U•´´=UlñÓA}$­asÀ–cíQAfèQÙ&j‘%&K¿KLC#Õ*¦ã¿k¡G–>j¸¨®y™·NûK9't›·¶7êóà æ%›¬ÿ”ta#-ŠzBÖÓ5°õ¹®äòŽÔ¡ãÛ/:[tSÇ¡“]9K¬BÌ7Ë®áÊrL¿&„EEV*³µŒó[Ã~«êlƒ¡o¯¨5#è€Á{ð÷K±ô;ÕÕ³éÜ Š+ô÷i i¥­Ü5ñ…·N†*N‡e-©Uxï΃ +=ü}í¼ÿ½¥Ûì»#w¥¦A˜W(!Õdݧ§r9¢Yc#Ah£ñ£KðÏö«0Î* õÓ´vä ]"‰M¹Ä9¨º-ÛV}ÝéÞ퇒I{㺾:Ÿ®oÐ>*_NެEN[6ÎÖæ“¬4®uk "/KÈæÊ‰À]ˆ¹²‹±ä;C–•Ÿ0d¯œD!¥Á¹¸nuGnQQ-¼&Ш ÐÀ˜SqêÜcx`È=5Áãº} µ%eEµ’¨EÞØÚч;¤^f°ö¤7YÇF*އc-妋Oá\ñ¿´Uñkο‡O½lÇ3¡ÊiÚ«0©Žš .yÎÝ bï+ž;¨¬@”6£²=faÊRå†J -T°kUÔ-ÿ„‘qR-xacÅ–IeV &«’f;‡§Y£û>âÀ_)cÄIÿo GlSQ³žÙ½«¯äªk££$ºüñ*è{”G€n¬–Qß*ÉmÓ—åÔy]2RÑB±D€^ÀoÈÖ±’W°2HÝ,x *…@ª>d1¾q¾q¼zýרx9,’™Á•甃㙕mâdEa}n|Ø: V6‡Q.þdúG én ÌäëÄÝw=/ï[i» eù8’š€Ç]_fRÁ¯KNàÛº2žêãéq›"žiÎö’»5¨jŠê©'•®I;¨·¿' c›w=ê[Ü÷Äœ3<Þ¸l<ÆFƒÏ…[è!¦-ÑŒ›g«s9Ö Jw•ͯaÌnüÞÆ€ûf ^É;°ô9HIëVV€^ž÷5>¸ÂÝû‹x(¾ð¶V3I–†âic4ÑºÂø~®k)ôêÆu'+™Õ·@pƒ[ÛqMº¹À›u“}oïS5Î2ü–˜Õf Xî'§and1tªÞÜĸiì6§²5viÊÒÑ^ƒ/&ÖFµLÈ>Ÿ0#u[‰†; uÞ`7ŒÕ1;‡O ðþÈöÇ⯜ž,u'Ó¨iˆâ-ŠZ&{Yq³]ªk7*sôTš¥mS8¿´FÉH½¥•zT¤r)$Påôyl MEAÖÊ9ÎÞŽnò?Fó’l‹({Áã ãŒ¶B’ž!ü1ƾâ*ðèáã1™=‘¼‡ÊÔO&Òi_N÷-§‹]=éúWàÆÙíí>Ì8 ¦ksW‹•1»Úž‘[ÖÍNç=žAwZt(üžìŽñ¬‘3¡Ì³š‡«¯•§˜¨UÖʈ·"(Y#@KÕo39»³1fytûØáý£íÅ…Rq 9kiŒ›g«39Ò HWk^Âʃ‘Ï5ê˜çÆÍìeL‘ÏR‰U˜räoC=« Y~šÂ÷ïtûÃÊ¡íŒÊ‚{¥]8kç*¥È¾— éáÀðÄÈ<˜›†3ɹ*Z‰5îqHúXžb_Ó£KéïN3u·V6ìÌv¿>åÉ/Û¤ –=ÅcŒSŽ~¶â0z²s7}AûøñI—<¬¡T’HrO‹9ØæYÑ*sVzHX+$ l¸¸ï·8o+?\vãA—Qe zxéãwG9Ï…#›¼õNIAe|ÀRx rmoÑú:èÁq÷z ‡2¨‰&HÑRE›ò ,Œ+X^Àƒ¥ìÞ.Ù½ž­‡8¤ž¡cä å$!_|–äÙSAÂÌÁ¯¯{Ã[â>ôbs¦6²m̾£]_u}ÔîÜù½éÆyÖëÇe-ž­ŽÒå™dŽ™´ ¬ *ä@.æ(‡%SfºÃ*n¤ïêlžÌæ;EXËG0Ãa5L—JxYȰ’Kww›“@ò.±°ÆÏìnU‘">à«®š¹W¼6µ ŠåbÂ%å$±ß B.âõc’XÚŒèÅz:vî²Ê8:ÅÓKpvèæïµÂµÈk /`fºâ¡®Mc~MjÕn9£†Ö´ƒs‡Î8Ù[ÆñA_æš`l+,‡‰, ºÌÕ®Ek‘¤„F¼2#™ƒ‘@Ë@†qmþÃé0¢Î¯ÂÂZ&5M!c¾Ì').dŠ!‚Šd”­ª;Æ…IŒ¨%²KÑÚ#'Ÿ–Œ¹yòBËÏìf™ýñ+†°ÂÖk­êäÖ7äÑö¥^ãš0ÙmkH78qìã‘%¼oÕðîi¦²À(x’À« ŒÍZäV¹ADkÃ"9˜9¤ ±ägßì<ºÄ2v\:ŠÙSZÊd6K!;”€’^Ò Ía+f|†WºAÆÁ„¤sFãJ–sI•$¤‘&L‚<Ò$H3Ô†9ÌEq b‘Î!JG9ï{•ÎUUUã/üŸü’WÆú ™!Äffô¹’d=-˜‚VÆšÖ¦äQÁvkìÌQÆÀ™&x"UeþÃÊ'ÙÚa-¬XÚ+[µ `15ùÒVLrÍ eÑ*ˆf0µÅâ#óòK¢Ë®k·¨‹Ÿ›/-Šžêw&Ië"`¼i/óÈE{%ÿþP5–ezügîd9_Ì~‘ä;±öÉOý‡xŽÌfÞ‚ ‹UV¬ŸÚ;>«à!ȯ3QØvFíØ(è¡i, ä$‡9òMÅZ§œ…oÔ~Óí/­‰‚ñ¤¿Ì"5ì—ügî`«,ÊåøÏÜÈs¿˜þLyì}²SÿaÎ"²¶gH†µ5jÉýŸ/Ÿµø ‡¯3QLé•¡)íØ(è†pëÊä$v±òCâ®'~‚½Ùzrp×DÁ˜Î_æ?‘ŠöKþ3÷0U–ezügîd9_Ì~‘ä/cí’Ÿû(pœsfˆd¶±`gëØY;j &×±4‚d1–LbÎ2Ľ]±„%×+Å÷oýÏ zw9¨äúLÓ×Gð‰çb¨PXVÂa^٠׈aÃjUc†P”nzÓ¬‚…ñÞ§ŽéI*ª?ì6i<»kaÉŸ4ú]˜ÂùK´ÄÛÞýÈü´±Žr¢-ý¡7'ÛL,ÃäãDo5,Žt‰óvÊy.;8Ò%òèr6öÀU6"a®Æ v¸%†˜jC2yY`4ûHNÔ§Þ7>3Ó&FAÅìße:º`Fßÿl7îeâB{£ÿÞzçâÌM#¾ž&%<9=CŒ*H!µ¿n=˜ÈÆ;å|1¬RÈgÙWƒû ¬põ»Jêû14fåÊ¡8Þ#Li"#‘ PC hVx‘’p8zÖY¦üCî¢ÜCVE´ŠÇ"+ØŠ¯Ø– llø#ÉcšóÄ<9’¼Cý°ß¹—ƒ7Í·ž^ê9¹}Œ×ìúÌܹ§£¿ŽÓºX˜‹»• LXX¤Ì…ì¡ÈÜq%ŽpõŽèŒ+d`H±«•ÓWö²ö¶%¤"j]™bBmÁ,~b1:$¶æhfExeqÊ ÝxYX&ÜQRæú›çÀŒÇ¾I°ìâ‚L•QbÆ\9V4Ò$[šD æð…±yݾ˯4ímêßìBØr¹î7o™ÚÞÈ›:ö‹ ¶÷2ðÔý3^‹îù*¿Ê‰Æ’CvYäò1‹—§'*té߯H盫‘v›š&_ªz±®EùUb¹.þìÌÔL¶ˆŒÏ¿<Ä2çÝÓâ™yû³Ï̋ƻ–ÀŽUÅ=¤‘ÇkÛ’,+ãË3Ò¤hZB¹ÒFdŽ#×7/öãHóE²bbKYìf±“8–²‰iº„÷µ7àÌŽ} ¨Anm™ƒ3^6ñ!«—R¹ý=öDú¹93÷}=þ&=\ÅBÆóM¼ÞtÔÉ*¨Þ¹³ØXï3W&&Y*x©#F.áªf]WÏf‚3bY-¥Z0ZžÆ´¹À²„}aR 7¶•èa”lþ÷J Ìâ]ÑUZJB9ŠÁœN•JÖGFŠÐ¬ZˆÏV‘Å0ó¹ƒs>Q:¼,s»ú»7³?sÉcS§£ÓŸŠ/OhI1;û÷“5÷y¶¶ôûºµ|¯‹Ò9HµöUv¡"5üä\E•Kå"BÁÑÄP5¢cÚòHRˆá´_Øw„/… ;b-DûHí:¾C#M©†UÍ%-H×F#_3Ý#5%·{ˆÏùV¸UýSÑŠßwª1ßc¯›ÄvjMMts5–– ¤Ñ(¨®ò»ÒåèõoDîéŤNØ –•µ òv‡>ÂúãDez6TȰhQicÌ‹`öi È_ì<‘3g°n*mvö·9­â’cVã64öÏ5»¤ÙòÛ;i½º.åÏØž7·/N­¾¾æ’/£®_CÄðws1Î _¤ÔÍzòùoi–Y·¿<úpÒ7Ú½zgß“‘3ïãLåùë‘Ôíîìéíñ‹˜Õ¶\ù^Ñæ¶´¦þÎÆàw7Yý‡xª²·çXáËȬbÞ—2²TxâÜ3ÆîŒf²‘ƒnzžöµ|GcS7<%kS»79Šˆ™¯NÿOˆ$vzFQ‘rïÉG.]ÝzzS…k²EaÝ-Óä³Zì¦Mèß`Q®]ù*g׀ˈsE—ÑLr¼2#ÈС8 5ia­ Š75ì{QÍTTEàâ2¢ÊäF“¬4yÌÄ N \2„£sH2ÎcØäsUQQ°òîšìk{:žkkc™ì馉¿³¸míÍ­ÒíêÓ¸üµ/z¶Èñç–Yèr·<ºåž]Ù¯‹79\C 4—ôDDÝEÓ%óº;œ¾KQ5"'‹KŒÃ0b¡…Vä;X×ómZIoD›$•^bGr¹èîˆ1\&aÞ.[!|ÈsÞÍd&ríj ZO.¢½îMùÓ$B.Ø·6ÂÁ…¬xL“S]ý³Ø×¹zú\å_sÍÓÄ&5½tHi¿ø£0ƒDò²Ó”Çy³W{‰×ŽPÌ GEkWD×£É͉vçÈWèãsWXŽDÎ]€jHÒŸØw‡ìÞ, ÌÃi1õw%ÖÙÏ‘4[hõ36CkúÞ6Œ›úD÷¸FAð'åä¸:QTǹ\žžˆöýžËâVfˆ1ÉcÞ¹éÏx5zäïeh4·,õ.}zeÆ5©$ïü c±òÝ(Ös£CsÿÜN’!ÿàáÿ›ý‡˜RóOg[Í©åv³Þí˜I/q6ùnÁÛÚÚ~÷5«p[MÄOÝÿ÷>'î9Zˆ-ÄÉ3Wrå¥o™6ÝUQ?‘xlC0Î%í­TEX¬:%ÛŸ!\F+ÊÓÉ8m+ù‡»h7£þû™E¸j©”³à?Y±,–±jÞ],{Z\àÙMƒ!›ÛˆÄ0ÄFpuÍ…V'£"5\¹û¾Äܺú~§G7[Hí—7<¼“µB½}Ä&~îYfüŽL”‚cÕ= 棕<ÿËÆ —y  ­Èv½ÌH÷®ZIoDíáŰ1#¹\¬l†‰ÄFŽÿ°ïV@üë9y5Œ[ÒæVJ[†xÂ=ÃŒÖR0mÏSÞÖ¢¯ˆÙ¢.•·Ü]Ö74ô.J©ôSÏâG5UQQrTTîTTîTásr;ÙL¨¨ôò¹áꊽáxÜÔó5[ÝÀeÄ9¢ËŠaÈ&9^äèPœ´‚0ˆÖEšö=¨æª*"ÿaí¥,·’ª,gUÉ|w=Ñß"’Ä3Àâ Dp\A9FâoV*+†ÅòPìjfç„jwfç1ȉק§Æšufá…ëš"e¤|¦Iå.~TG¿ÍÑíéž~,"w‚<5U^÷è ò—SuvÒV1˱>kDQ—ot/ ^Â;ûñ„HÏ3Æ[&Z9Næ9è{ÈQn¥1ƒlŽU‡ªÕ{c´m! Dq_ÃÆì³ÜÅË»6ªµrîéÓÑâFå×"±õ{ ?L®œþ¹¢dÖ¦œó_l@°Í%Í\µ+XŒ$‚Î}Û_ZG«‚‘n# \F‰üÃÔ£)>o¶n%¹‡Tg°Ã9Ä—+A"rUñØió¶( '”ŒnXdCl9½ÚLgaBÕ!­-"ÓÈldG ‘¢E¼ƒA9§Yc{žò cµÒôÿ¿ý\ã³*äÌn»îMÌqÅ—,1†"ñ ó &¼‹Ê²ghmÅ—%ÐÒ G¿Ì[ Ã0GyE òf*HXólàžMyd"¸(hÕ¡§aãÆÐƒc㜢BKÝ7žy“_v_D.^k¯,üùgӻĿ'íÍ:.CPŸqÉçkTŒŒre›-rûTñbÊ._Og\B¶æ·sÞí¨Kccm6ùnÀÜÝÞ~÷7£l[óz~#ž>g—Û *öÈ sYXHvˆñó/ëäÊp‡ Ñëã̖Ȳ9u¤ßßÉæ&ÈɃ̉#Ê øW?—‡[´3SÈB<²¥DÉ$»ÇãI›>Dj+Ù/øñÜÁVY•ÿ÷ã¹æ=6:G½±¶K|hÁg$»¸O¬i·.Ä5²! i_¼ýàÕO~¶ ÃÆ’½Ž(Pœ"¢uxXç{®ÍìÏÜòXÔéèôçâk|”×§SœºQŒ G)ëÜ¿*o™3vj©—Šö#NfÅ>“ ÑHå‘ÞœqŽ@¢í¼ÑÇ2XÀG5^&JÑ«PÄG|Þ‹‡Ú§åðÝp„¡xcµ‰cj!YÌ–±] ‘ÉÔ±¾­AJŽöˆ B¸ò}`%Ä9¢ÊŠaÈ&9äè@œ´‚0ˆÖešö=¨æª*"ñ‡oÔÈkjx%ò×VŽÎÑŠ/e;™ÉÏI†Ž@¼r˜o÷÷æÂð´twÕv’Юz<‘ÊÙt­dthÞŽ75oêÒ8LåØw!`‰ÄWdš• Š¾uDÛÉ3ô&§eèÍ}>!±®Ð¥vά³É§ö't_Ô½} èT^¼4‰žOc^™÷ääELýßOD²Nãq­c´‡#ÇH™Ci ÄV¢šT£4q"ë4ƒ #GíjüÞÅ.É3NÄD_>K‡)³Lý ¥¹úrOG?Óý>§­­ˆ¤£²¸«–¥k„Y¯»kã«Hõpy[ˆÃW¢0õ£hÊOlc–Ù¨%¶æÖö®Á(¯64î .k³¹]ÝK±½½¶m½§ð?Û û™|lAõ5 ‹©©¡s‚×jDD]HÍ]:uã ZÏ.Ä ÌKEa4ú]˜í"È’]°°†&ØF÷èÞG奌s•æü;0Ã8…yE²¥äU2ʤÁ*´…U-lzjí±¼ª½]íŠò*e—“§¢wp¼U]Äa‡â¶ ¤aÈk!‘ì"ŠXXvŒ…LÑ•¨VŒ¤b?4i™9~ná;¿ctJÛ( +ù¢I²|GˆÍ·¢’…Ôf9øÍhÊוDQ#³Û#Ù«»=Vç—\³ËÒ¼(WÚµº›Üš|®©Ñ:ç«?s/YÆ÷oÓÛÔîníò›"eîþ·ïêì^WkPræw·gh¾þøª®¶ Öâ;Êø@ÖBìćg*3Ã4Q¦ÌQ|°Ç§—fé v¼ä·£;L7f­]mcµ·J!FúYÑ®S°º“¿VGõÉSW®YæÕÉ>«²É=9zÌ`³»4 Ä´ÜÜÕ“ÉŒ5åžØó2u£†H)»@¾#ÌÃæ==þ1h£1ÆãUÈpÀ6 ‹"ed¹gV±Õ4©F4™ËYŽRŠâ=Î^Ç&Nc•®NüœÕÉS4éßèñû‡,“âš„ÜóËWµóg—¹â—Ùì ›zÍÝÎox¬½æ4m³cOmr»ZŸ-¿¸›ÛBù»wI¿ÊöÍE•W3µ¿Ëö„3DßÙÜöÎîæÖè·4éÜfz‘­kU¨Ñùûœ¤!Jç5s\Ñ\EOqÈæå’p7÷és]—§%Ï/[E{ËòµOYmÊîïòÝ£39}ý°ïlïmîí sN­¶g¥=ý  ‰/ VÈ–ñŒ|£¶Êæ#O!ÍDS±bÆŒ„"¹é8‹¶!µ¼IG&K¼÷j÷kjôôµÈ¾çrõñ1­WhTz•WJ£Xôj½§G¹3îWtê¾,YEËéìë˜VÜÖî{ݵ aìlí¦ß-Ø›»¯Þæôm‹cQ¾o_Õ`G®½·9š}ÁVsŽ}?—%] ¡4 ˆr¼‹(æB£Ô‹Àž~Cs_Õ"dîÿÕ"õóúÌ0CÌ ÉUá—O!±õÄedÙ«aÈtnÑ…LÚ×"© ÑÈ eR,â{û`?®òwÄETèöÌ÷[¡¬ÏÜò˜äëèôeâ–_z¢w9{Õ:åÜî\šˆª¨ž,MHÖbØP ÐÄV¿˜lŠ{DŒÁ9ƒ@¼w²Ôípž÷ìübD\ÕŠF»Ü]Ç?/î\Õéô8ƒi^]‰õ³#XB>—f\3²Db홄 6Ì6?AFñ¿-/cšª‹ózæDnªe4øÖFìK%¤Z·—KÖ—86S ÈA¦öâ3xb#×.§ù#½$ ÚBeѾN·;OOk—z÷5íråèEEõ•7qJ§²ƒi’÷G|ŠùB–£ ˆà¸‚j£(ž¬ÍF;ÊOlc *Tœ+ˆcÆo4‰ S,a4q b‘Í`Æ6¹ï{‘­EUDñHDE_‰¯N½¬W/ÐF¢ª¯™WÆVgå4Ú•=æ5îuV;ì{¼/RÒÀ»óì°Õù§Ð1oK™WD’íƒ÷ G¿@†Á³=,cZˆ‰ówÖ@üë9w5Œ[ÒåÖI[†xÂ=ÃŒÖR0mÏSÞÖ¢¯Ƌܺݧ,Ìò<ÎMY"9ZÃÓ¥š«ÓÄ7¯{˜Ç.]ÞSQ}f³lÃX´à™2BÈtƒÙÀkí”䔈s¶qe°²­$½ªq”£#JÿcE–E•¤&4¼2#È ÔfÂDia®aFFµì{U®DTTâWíc}ÍÞ9IŸ_aTLúä›™®^æmÍ}Ô÷ÏNåñÇs•UTUUꪪ6檾u_OOýýü¹ù¿‹ ¤Ò)ðåÇ) #s„4ñA1«ùxúâLáÇ,-¶)›-x23X¼?ÙwTžÊ¾‘ês´½}«¹wy:|œ¼BrõW Ž_¢­E_Y…-, ¿>Ë QOš}ô¹•qdI.ÐX0pÄ{ôl3ÒÆ5¨ˆžþ²&oìö ÅM¶ÞÖç5¼RQìjÜfÆžÙæ·t›>[gm7·EÄOÝÿ÷>0fª½zôi^Ö§ÐFä‰èDËŒ ôã†>ýÂùÀ“]4kÒ‰0¬£ëaP2aÑHÍÁ8z´¡(•á+Äí´sQu¿†eòªö»Ü]Jïæ¹=f$“šAXí!Êò½±áÞÚDˆqÊ‹!HºCÑ£cZžþ¸¾,g…„pí§sÚÎ^Žl[©lE`Ȼċ̎Õj1Ò6‚¸¬à¶[÷#xÕz0Ïk}ÆäÇåîùOrõôåÝ—m+˱>²dkGÐ2ìˆfHŒ]³0&Ù†Çè(Þ7å¥ìsUSçGÖ’\[²Ùs:6U‰|Þ¤M½ÂëHý  Cjòùu.ØwÔMà¬ËÚ½ŸëÓ,¾¦·îzÌMHÖš¯¿¡ˆ­g.è÷à‰ƒrH¦a(å©Úá1a#¨ÈUq/\c *Tœ+ˆcÆo4‰ S,a4q b‘Í`ÆÆ¹ï{‘­EUDñ4EÒ¢VæËºÆæž…ÒªŸAU<þ9,ùV¸nDýSÑèåÏ¿ª1¾çNëÂñ…-, ¿>Ë QOš}ô¹•qdI.ÐX0pÄ{ôl3ÒÆ5¨ˆŸ7ðÅ ¶xzªÆÍu‹ Á—cZÒ£^ç´Z!ÖÀcš´Çq\ÝÒäàó(õ/Ñkš‰üåû>³Qrú»Fž·5»–ÏbÍX{;k¹Ìöþæîë6yMeßÔdâKsË!îg–T.^om£,üÙç×»ÆaôÉÂÖ¾œÆôj}Oev}=WŒ.3 ÁІ[íc_ÌQµi%½d"l’Uy‰Êä{£¸n ÄEp™ó{Bc&H‹ˆÀIy“‚éM+ÊÔB,|©{"sœÁºd—1¹˜šøk—¶N¾•c‘>ÊôOwÖVÄ áÞVÜUËR5êñÇ'ݵñÕ¤b4ÜÕob*hå[Ñ[ÖF|‡= aç×ÈŠÃHд…j‘ÌŒÍZ7®MSdˆ™í¯NTlU_¢«š¯¥W>ÿUK§§¡Š¬O´Þ¾ï¬Á’åœÒ¥J˜vD™2 óH‘ ÕÈcœÄW¦)â¤sž÷¹\åUU_jŸ¤úÿ¿XƒÅ+4Tör¯TË£ž®jýEEEó¢çë1…#˜e•a[Wh#Y˶=<©Q$°ŽR!Ï%äEZ'±Ì…!­Kó~}4·’ª$Ë«’Hê÷G|ˆeE3€â Dp\A9F¯Þ¬TW ‹ä§/ÊÍo¸™5ÿÎr¯¬Âïïá5Ï¿¶”вŒCÒPlIô¤ŒqáŽIrȹÊÁ>L‡ ¦"»‰¹}Ä~8ßµÃ÷6ñoôa÷ï|àbxÛÜËIs*ÍKµ´Œ[ñF¼l};…üì“ ©7öûb״ΙôEåæÍuçÓÝÉ3ú èõ—±pºPq\™Œ…bÈyUãŒrqHrƹ¨Â¾,†\¡"7ß×]5áH°,m*ÌÅsù‡H¸Tg¨5…ƒ£–‡sŠÇµäŽƒÄp¸WgžèÆNïk’meîüO<úwåæÍ|@W.k¥ÌþÔds= j'¥{ׯla9„9b¼,c#ØÉQÛCc- Öª!‚ÙQcIAÄ‘DÜÜß›ò&!·ÒÝÌÚÑÉ £ž‡e_¸ýäsªFîä²kµº^‹ç²÷WS$ôôE_ ‹ë1ÔG-”aaÙŒ¤bH,x¯»“Œ*» rLˆ3•­V ò£´ŠÕ0ÑÞþ´ÿN>òâÿk7î¥ñµ©Ÿ±<Œv~•r“§¹‘Ñ×?¢¸6\–ã-›êÚ€kô‘y ]$GªƒM‘ʰ $9¯lv•ÃHþoáë´6¾Ð¦‘YÊ ¾"”–#šé;Û‹­ÛÅji› ^á7´‡€«—έú®cšß²åDþ_Y`3"$Ì)c ÊF ò¤6Êš[®TS±bÉ’¢9é9Ì©¶"9¾þ¸ˆ†JH†¤‘…ø²y]ÇŽç"¨L貤ÆR Zõƒ…Wl¤k¸Šì“R¡‘WΨ›jˆ«èMNÉ<Ú—Óã+sMHuUO:"Œh‹—¡t»/NKèãý8á¿p¾p(mµœ‡o*¦8ÑÃHïÍd‰'qY¯u…¤ˆÐ¹ Æ5„‘¸Â+†áp'®y0Œråß“\‹ÓÖa K²L™ÐBg.Úª}Ux´‰roÏ™Õ6ʏgŒ,yïë‹âFxXAWÑÊw=¬åèæÅº–ÄV ‹¼Hµædv«QŽá´„ÕÅgŸ—’ת¿ªz1Z™wõA»ìuïO¿Ü?÷Ü\Cš,¨¦ˆÒc‘á‘@Ò„à0Õ¤„F´ƒ(Ü×±íG5QÈ‹óc,Ï3IIeQgæ#rÌe+™!7«ƒÊÛÉz4n÷Ø)mxˆæ;£˜åc“¿'5r_·â2Ë[ü»òÔˆ¹gãÁ’åœ1bÅÅxzD™2ÀÇ6ðÈcœÄVŒAÚâ¤sXÆ5\åDOlqôŸ‰~òÍñöË>æ_YŸ’àêTýSÔjúz!öz÷' ÄJòïÀ²‡|#è ·¢L $F.ј3p$côl#3Òö5ȨŸ7±”Y/3*)–P9~ý#Rê+^2&É%@ $5pFŒ‚"´¬’ŽL—yîþÔŽÖÕéék‘}Îåëâ²ËÈF~÷ìyý]9ûÞ°â2¢ÊäF“¬4yÌÄ N \2„£sH2ÎcØäsUQQ}ýgUÏü(r`M² z$À¾, ô†>òÂù¿kK)æ[zéÕ’_ÌiØ ñ‹Ïˆ2¦hÊåž"1’¸oLÚ¥UEòJÜþY6˜™§¥3ELý(©æñ52ø›ÞÏ£×s?sÛåçîÏÖ`_¤ì1÷–Ϙ3¼ àˆSaH4Iåâºò¢JŽGDi1Í=…€‚V4‚#\ǵŠœT¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<T¼ýùaßÊ<ÅØbþh£ºYaÒßÕZÊVA|’Gƒ,ådvàŒæ ÚC ŠíDb/Ì‹+«Còµ”õó-,dí˜Ü¼øä—,û1ÆYÚŽ"l!Ÿ§HÆ÷ª5|%ø]½4ÙÑûS–šJù®§Æµ4:ë’ÎáGék Ç©×0‘k,«ãGc¶W¬||SŒiëæŠ@#¬$-­ÌbIг@étµŸk9bé3eɆ(¹2oj• &8jñ¼ñA‚)Ñ*)ÙhÄG1’ã2v!…5±ä5ÁlÈq% ÞÔ‘Ö&ˆr.¬0¼¹ €˜–¬ñõnì æ–Æ­ÖÔkÜC(ß"ÆÒ-ËœòÙ"A#Nƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢ø±z²ó¥ñ0Õ‰ØøåŽëHõuV’Å‘Îm\kºk‘äF´‡>!œºŸ;)Áÿrû°ü`ý×î$ñ`érXU¤«j¯k9z9²©"=P„"ï-xI!Èäc¤8®Ä5h™ó~ÞšìiÓê¹­­Žc³ìfDßÙÜ6ÎöÎæÖévõiÜ~Z—ƒ/jô~¯nYeîmý¿sÖa?÷÷ðšçç#XC&̸4Vó"—C µ&-|ƒš ׉ú Æ»Aö;,ž×74à0±”/ö±vÝ`ÿk z·?ÛRåÈ®wé›ÏÆý%¬64QÊT‰ d4fÊkž™>b^Œ'°ËL× ¬sñ½­ùa|/š°•ñ™ b+‡²ñ,æÉ´´’Ö•¯‹¸ÍÂh!Œb J°•!àŸÚâ Y,Ï;xTTS÷y†Gø î/*2þʼnW~d}×åÏÇèþ3cúÁÆ$Ät5×vnÚè"®»—.-”¨Evl¿í¢òá,=:kOZBL„)^äŽøøk s\ª,AMEÎìó<ŸkXÇÍrû±ùŽ_˜ÝÙßî£Õ­^°¼-ÍËKLEx)Òµ˜„nøéfÓÖ7elqòÕÑó†¦Ý¥9?@ßñ›ÖOø®À6cÕ¹º<¨3uš27E-\I|´~pŽÎ®ã2Æv{YÅgF‘ l,wd9a$yQ%GÄØ\2#IŽf° ±â0JÆDk˜ö£‘SäXå­°}„:öžWmÜOŽíÄu—4l¥3äGa¸æ+œw#³#¬i¢TÕå‰2þCŒºãIг"Þ™éÌÆ.;°ýtø|ݶþ$½ ¬æ™³­•®Šq§°$ƒa55–0‡!è22CÅ—#Äûü]oš©’$’CJ’ª0È›6Bµ¤3ƒ9ˆ8 “,dXÒ 5Àþ ’F¦• Ž á=ð®EL@rÝbŒGòKM1Cºña÷EUK/SÊLK$ðÒbHÇò¤cSGF– I©¨ ƒ†÷¤gÁ×»ÓÇ„ÿßßÂkŸœŒ]ô±}÷ªWˆs+åɃ,:ö¥C9bÉã'íœ.aY¬OxߥɩsÉr§‰ë…tÍÑ"ØÃQ×Ï`\b:KË‚ä&•‚xÙAJ¦ä 2 G™Ò¥²d ·OZoìâ¢6:—v×[ÄÉ271ÒDeTùc{2\×âu¦Y¸„¬Z`¸ÉmDs3¤I¹»½c=ÒäŒÒ¡lä)Q¦)|^þ1—àí >Ÿðoáw¬Á¶ð‰pX÷ YЮqY>UFº‚j¼B¥G†*,1m&‚L${DžåI^Á|…eKhj²â¾e]Œm؃a‘%ƒz9 [±ÊAî£35jôG ®­1U…õ$O®ÃƦ®ï-b Q!b ² cê½ñH6±ÁOSÚ;ÊQ¾Ñb¿äL/àù ^Ã’!TÏŒë©D¬š8.)ƈÎnª«ƒB°Ä‘Ç5Ú‘2|56¿Åeuh~V²ž¾e¥Œ³—ƒ_’åŸf8Ë »QÄBm€D3ôéÞõF¨A‡àÜLŠy•‚0± ä…h|Ü¢´;P¢È°tb[ÝLsº+U¹ê©cIii[ÍXJÚ=ýùÄÑμœ6¹B5NV¾.áGWV20B9Ä•a*ÂÂo¬o…<98+¬d.ƒ ¤Q\Ê$—ãÝ„ö®Ø®²{›^²°d/hØßË(oþŸí?p¯Í«t»‘†±dt­}‹a-¼Y´Í$©B„jרW´R#M”cÆH×nD°LÔX/¯‘QQ"EœÛ9›ss4ƒ*d Âm€rÀaAN²TªÚÙR¬I–3¾;ŽB;æ>54[&&$µžÆk3‰k(– ¨O{S~ ÈçЫ¸-ͳ0fkÆÙ_µÏ÷7xÀ÷.Ma„÷/UÉ­z*®I×»Ñâ‘IwS‰làW³@Ù±‘km^-Lc\\çYM>³)›Ûhý‘ˆlù¿k*HQƒ³,ÚòjÔÐÛLÒŽsÄœý\°¨Êƒ#¹t.…ÂGð‰—Åö} ½“?wÚeæïÏÖ<’î§Ù×Àf³b!"ÖÚaþÃo¤Çv£™Ž'h Ç ‘¢rŒòiÔPf¢ UÛ¸P'¸Ò @Æòº<âFŽk+¤ËsÀaÐF+Eò •Õ¡ùZÊzù––2vÌn^ |rK–}˜ã,‚íG ¶ÏÓ¤c{Õ¸ë›ðÃxü%ý c/ÁÛ<}?àßÂ*ïYþ§ v'åã–ÃÂ5XɶbêyGKKV œÕ„HÛŠÔww¤QØB³æ=æ#œ9…AOeu0Q7Ê$Z¨F q˜b€Oñí JpÄV£Ê6æôð‰ábì’6ÎAi[5®¯ [;y¢Ä˜¤†¯Œ&VP–3„Èuè;aŽáåņ|@™·Ú›¸“FN‰)¹L>|ªùV¶”xDl£u-\ÅH›`t¬Má|=ÎËÚÃxvI B9ÒƒÍâ /a,"ØE¯%LPM¢„n­!¢ËÜ;búÜU„^Èï-Í<׬³Ê7 Êe¹&„Ž’‘á\ǃ,Í`΄\2Æ’'¾9/þŸí?p¯ÎÖ+ÿx¿éø(³Ó¸7<³Ë[U¹åÓ<³îÍ=mÏÓ‡ÞL=óO1á;c.„8òvÜ‘Í&=Å¿2[¶BG øÄ0˜íbI1žDF™šø®}]£§¤Q§ÔÍÉŸ¹ë1#˜‹_gWh#_Ì:EÄYQ$°®R(Ô,EZ&=¯$…!ŽEó>UT:yäSǰ{ì#Í)Å›aÍk£XDfÖˆƒTE»R½Uꊈߘcø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZããfþkùk˜cø¯å®>6aàv¿–¸øÙ†?ÚþZâ}Lšü:Èö¥Wá‰dÓ43@øÅpœûr1ÖUŠñ½¨ìµ1ÉÑ}pcs=±P-¶ve›ž]3–Ý|Þ²`íÆËÄ£ÖÆÝy{8¤^Íþ¦l?c±;ZL¹‡û ¾º@8 *ìÎvF‰Í¿Ê_‡Iƒ:4y°¦Ç4Iå„r"Ë‹ n ˆÒc™¯ãœOxŒ±Ã(Üæ=ªÕTâ41£Â… 8bC‡#$XãhcÆ-`c‰†Ö±F¢'Â_Ò2ü±ãÁ§Óþ ü"®õ»R¶¾Ë³l#ÛWsðãÌä-!ëå,¡s'+apœ¼Àh oÛ#u/gN“(QÍ.dÉfx±"Ç"L™sàS¯hÄ6¹ïr5x5/‚‰ü&Í‹"3eX7o ápE‘_.nñ¯-ÄRÀ‘»°£Fº«©„€KH2ÎáÅdÙ3 þ§9Hæ’VDð£†gÊpÀ7í d‰³d+Z¨ãžT‚i p”¯c(gF Æ‚•ó0ž*NÏ”–Ì$8r+릙|ŽÕ–úØ•åäq ¢EWÐF.(}RÀĽQv§%ØQk¤ívOgs<×?kY£_iƒgk{V’ëÛÒÍg/ƒ» ÆíòÒí1zyÅÌ#So×D¨¼D…(Ç·i+t,ݲò:8¨ñ¯eö/mvŸæo;Ú<·g\XTþ|å ïor;ÿE·»µåèÜ|˜ðMÇ…R×È0,î"M‹†0\bD#ƒ6 l]t>JÖà.-l Â­ˆ³ª¬[gÈ¢YÄ[¾ñÃ$Þçoh±U>0ìí;AÍ 8•ñ9» p¡‡µn*÷÷Šè<é£>+‰i„lù¾S•e¥t¾%¥D‰qÒ@ãψOÝ@ɱ .®Tˆ“G|¾PêÏQ[È‘c{c"¾5F `lñuÁ,å$WWÒó+ã¼ ’Ä–w‚) Adh°¤:u7úîTYÛ^Kü{‡ðµÉb‚Q£ˆÖ~Ò;U ÍêÆ#Î<œ×Æ—2+Ã(Ísþ§{†U DF؃áüSr(§”å5~«ÎÚÈ Kº‘†ð&¹òeÊÃJ ·‹\uQ‹åYÓò<ÉêàRš ûB¶ v .þ‡i4L&äaäf‘­ÖÄiýK¿ã·ÿª>°Xb®1¾,$ƒG~À5Þ©nc,T±ç¹¦ˆà„Î¬Û Åš·1G Õ͆¯’ÈÓþ§9 ¸á’&Kð£†`JhÎ6•“udy°¤#\ˆh“#‚Trj €ˆ¬{ð»à«àS¤VÇ{]a_hf’sOÚvuŒ„(’" ævd·¹‘ ’$6¹d^v¿aûö´Ö±ÒLÑ•vÊ<ÜǵÌ{XPHXHòâH¥C”#E”É DÞ"bMmb¢«8k oàÌÃk?7;ÛGä®bE扒Tl$ˆSc«šÕs§ŽM€+D•,Q×ÖÅÂÃ|u›n#…à0%<@P[ΗâVE€Z³Æse8Šh³¤òñžæ>L<%Nhü½œªô½ºBVvTîÔ¼^Ñ,[HîWH}…A½w„Jé0ëà×ÛxOÄx“­BØ-ÖÐiZFÈò;&¬$'G @h$åÕî‰.GgN“(QÍ.dÉfx±"Ç"L™sàS¯hÄ6¹ïr5x›GàÇ b ÷0¤A†ir"ÇÂ1&̳< ®+2Š}¨’¦Æ¸e|º ak;dŒ“%Bÿ¹×ÿ[˜?úž0î ðW‰‰¸Žf!eaÂ;µÉUÐ1d5_+l’;xÕ°àÛwæÁɕ≇1f'›6m8.„ZXUR"¶,‰¶X2>uÕqRB¸îsZmÂT*¹^ÆId²$Blƒ6‰x´p¥*ÉÒa‡OI‡š0§M®%ÈkPϣƓ¹zHV¸b·LIsGÊÔETY͉™\¼ûÓJ8ÃÛŽö¹µ¦—àŸÁ¦'ðƒ2#5·³¤×à,/e£–Ù£³Äî´Šû¯¬›Tƒy;,mä¹ø ð™àOazIuW‰kq@Zb†s¢DcWÁ¤5‰ŠJã_Ü(K\£@ŽA-0Ÿ7Êr¬´®’Ä´¨‘.:Hyñ û¨6!%ÕÊ‘hàO—ÊXûü]oš©’$’CJ’ª0È›6Bµ¤3ƒ9ˆ8 “,dXÒ 8ÖøÀV'ºÃòc„‚±ÅX—àIRHa¶S ][9ön±§4#Ã%-sÊ"Ï‘». Êæé‹ $M”˜P²‡.FÿSÞ'‘L Œ ¿Rà+“"Æ1Üú x§+#°§pA.4ɱd Õw‡%²bF“0ßêsñDŽi%dO 8f|§ q^ØÐ`ÖH›6Bµª‰9åH&Ç Jö1nmÓ¶‰j$>µþî Ÿ6瘟P¦5í• 4q:¼Ç¶Lô¦Žà‚`;j\ixkò¼ª,?M{Éos<ŸkWGŸÊóQùŽ_˜ÚÞØî{CÕ¡$Î&<(P£š\É’Ì8ñbEŽ7D™2 æÀ&<¦1^шmsÞäj*ñ&£ÁWƒ¼Oá8°î R{ø„‹E€ÞHuî=#c9I6¤GrÇG*4(¶;Í=lùB=bÙÜëÿ­Ìý áÏ ˜BãÁ5¬É *©¶rG{„lÓ*-‹+£†0'Z£¬I°êjp‡;K¨²ž°ÇŽaáúé¦Â2)ƒêI•¤¿ªZ£å¶­ñDZÈì-Q#dH4©1NJY'víqÐ,%VSò<È*ÅÓŸÚPêð9r¡Gv™DònIAiÝoFÑ}M`|Am«{íÛ ì;ËéÚå¹^A1G9»™÷·y_lZ9çòø£ý‹ú›õ7ØŸ÷ï¶9ÞØíü‘WËòý—ÿÝßþµµìž"Ýb‹ªú:ÁkNfyÚ-ó29åòƒÖE…#ÅHõÐE"t­§¶4r½4ð?õ«ðC‹ñµgæ£×\J‡päèõó‡\96ö—Ó™‘Ìj…#²í"´ ®ž9ì&a¿Ôç!â‰ÒJÈžpÌùNâ½± Á¬‘6l…kUsÊM!Ž•ìbÊÃÝq‡±dYß…±ewdÜ‘jÐ|öÓDy°";–CMX³[r$¯±jáÊù>â T†üä|QŒðÞ ½~ß±Hç°ÔñÌ—[¦[ÈÛ² ÎClyìÐ9Lc]‡<+`¬OàÊå$KÉòF·ôÝŸ ضt8Ñ,fÇ›cd’)©m« £ ‘Ù¾1$>iÐdÇ› lpˇ2!‡",¸²ÓG“@\ñ9Äö&Ü2Í{­T_’¬åápï+©í" ÜõxãŠ)\Éá±nj¢KÑ£qY˼R!AÖŽË2o\»³sW.þ}+Æ:ˆã™ÑBl9 1”Xâ‘)—c’qWm†8qrµ¨ò²,v‘\7æþ ny{('v\8\¿¶Ó–~lóëÝâ×<˜F9rïÉ®E\½f,¢åõv<+nkw-žÅš°ù}µÜæ{swu›<¦²ïêÌúÏ¥ˆ}n¾HëÛüäñ÷qÝë;¸å«qöGÚŽ‚^Řc†+\À ¬Ã1„Æ;Fˆˆ¹­^Ž@‹Ccbè]”~¿šuÃ<š×~x'³BÌö2ccGË­7ÎG”œÑ–Ö¬b?JnÆ"?mîͱ!Ÿ‹%‚0œX²)!ÖÔ0˜îŸ xKú@Æ_ƒ¶ ¹Ña",![I©$Ðe6˜C… {+6Kƒ‡0äð¡Be(âÂ*ÒTxQ ¾ÚÙðcDÛ‰¢ˆOžà4’HÔUDj1â/…ˆQÃcY"=v.(X1²b‚ =œ·¾XšiSyj†ìB•a*-¬mù ®¢ èVÎÕ‰°ogÓÚ™K:I­ ¾&š‹érf5ú¬,¹9à±jN˜bN¯‘dD†(±Æº§¥¯«³Ä^«öL6'jš$ŠIb—4!ÑÖ‘q`I.=3y™ ì¡Á¾ ÌéÁ&<¬MáХʉ*êæÃâicМÚy‘q-•„1Û!  8òh-âŠbƃ4xP¡G HpâqâÄ‹m xÑ£…¬#€L`‚1£ÚÖ1¨ÔDâLѣͅ69¢L‡,#‘\YpdF“Íxâ{Ä`•ŽFç1íVª§ÃLzÜ?[‰Ûp‚k™Ðƒ€ñ?-9‘¥±Že•”Šz+s$ü¯ê£HFÚ,q>G˜Žpä=•ÔÁDhß(‘j¡tÆaŠ>CÄ´-)Â7Z(Û›ÓxoÄéÇYây•5êAÊ*aá¥|Y“’¤Ó'Ìpãž¼*8sUM5R×Çžøv2ãøë<%QG^ëû‚Tâx‚z°s.dÅ‘aâ,6ÇÚ‰bf—¦æ„’¥$ m†I²­§Å)¨+ãÕUEL˜õñY1,ðýM¤ÆÆ¹[;¦Í@Ĉ±öƈEBϼ`ɶ#°¯‹ÛøòB²0ü›ˆ*è ]" ›©)òä69ªêåB™X„™e¦<Ùq·qÍå|gâ9ò;Í[ºÑH~®|cJŽ:úùÖK&‘‹áU˺ŽÇ: Œ?lçÄ¡ÑÚ;]‹ZÈ„œ’ 1Ô‰2$ŒÇðU&DâœOˆ±íÌ=Uƒã +w,™¾Õ®ÃgzÓ³«ß4–8~t)ˆAWáü?_ªšª:Fƒ2.؇›ž÷9ïsÊy+É"\¹,©’ŠiRŒi&)]Àoph+éã¯dc$Á<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªpzB¿–¤n .°%´ú¶jÁ¸†TSÓÛÙZ69"Eåb‹Ìp[\õäÉ_)Õ£4Á‹ý|q0,IÂTxVÐO– kƒv.Ekpì8ÕN4½¸qO0('¡D °Â–ó¤Wø%¦ÄíÄ8‚!͉+ßÉ…\8¸|öÃÒ.Ǩ<[(ñL)±É> 6Ý.U=¾ hð¡BŽáÄãʼn8Úñ£G X G˜Á"cF!µ¬cQ¨‰â®ð¿‚ãÈ©”û†z©5Kåb\Œ‘MŠã¤8új¤h‰ÖÏžŠ†¹=!ö¶$7b6±¶¯$‚XÍ^g·è‡0qÁ=òÆi°­ç ÖOd÷e‡ÀöÜí„™V‰_Áêî«kî+%mó5ÖãØA‘²aÈüIc,ríHŽ=Á»A†27'±ªŸ÷ÂU&ðŸÿÕÏi&¯ â¿ÿ‘ˆkDƒÿÔã’C¿ù8×ÈáÃÂûSbÚþbŒ/h{/a9{Ϊ®ÃQ‡&c#v•d„šyd/i2=‰`ÊAØÉÄrî°Ôì#Ë̵ÂÒ,Ú´f,xd³‹zµL1¢XLA‘\êÁ•Ñ¥¼#•²^9m•<+ K;rðíqLŠÆ¥Ka+"Ñ-«ivä¤XºÌ…lh0âÅg’[¥J‘ ¾ËIöKj«Ã‘)¥n#•Y«A-¢4]ºñò¦™bGLŠîF,Ä!, 1ñ…¿äõKa6=¼Z»(8†ö]j²[,!IC0øv²]s«` ¶46MbVHŒÐ Ę3£G› lsD™XG",¸²àÈ&9šñ9Ä÷ˆÁ+2ÎcÚ­UN >Š>ý"ë´««|ÙãÛ`ÛÕ8ÉM$ƒŸ>_æT°Iƒ U·0÷ÚQ@Ä2+5 [uV~j²â¾¥t³˜ƒarâf@Å [±Ê2mœC35i ØôV¦=ð­z>n&ìˆø.–Ä{jƒ,óÛCb‚u¤Ø‘,+bSJ™" ›. â;Éw¸‘H¾#øR® ¥‘W¯P¥Ý4¹¨ŠãqÊÙWódÖŠ4·–"ö77Q¦$*xѼ} `ßÁÚî<øƒ.EP±ÅÛë&ˆ„ų»u B²ŒÛñfŠÂÚ¶`7Ê…@x“„Qn¿áúøõTÕQÒ41‘vÄ<Ü÷¹Ï{žSÈ9^IåÈ!eL”SJ”cI1Jî&a|Q𝕑a«G:²pÚöÆ´«’æ•°‹¸ý²h LÐJ¯•.!ü6áÉÄŽY´r–ab8ŠIUSq¤Œó|w”p\P޵^!»6'·3«ãȵÃR)äÑØ9²«‰eˆ)êì±ÍrÇ› CÇ&!w"˜ƒ‰%áYPa~²ÊïÖ(º.ÕeyçÉÉñØcí7ØaDæÏ9,,$( ×G$sS¤GŒ×£ÊÞ'^cwH‰€ðlqœXv¾Z$X£Ÿ'*Ü>ÓïF›Ì]¶ ¹—øŠ4NjXê–_HÂж®41£Â… 8bC‡#$XãhcÆ-`c‰†Ö±F¢'ˆ³ª+ã®?¤Ž‹‡æ,Á[­†•A>Añ9ÄùE©l§Ç—ý¡_mÂÉoƒÌg#™Äuõä‘E&HRF ƒm ]=¦+dMÄ£¹e2\vÈ5¥\Y³,Ðs+eX[pz»ªÚûŠÉ[|Íu¤8ödl˜r¿XË»R#pnÐaŒÉìj§þ Ã8?Âÿÿ\›ÙÔXÿüÝ„¾R¾'ÿY˜}¿ëÆw”ßؾX»Wˆ˜b¬²{BÁ¤ ‡O”‹"CÂò±éqqdÁ×½Mq:*i–UÐ,8Ärݽ÷xN¾F$¦²–¦«ÃZ¡|çŽÇ‘Ý¥I\d„fº ™É\i(C6&ðy>fçeíbL;‰8¦Få1Fg¼•ñkâØ¦P! ±LI×V“%îÑ~I©úO÷ëxˆ7e˜Þæ.]Ùµt®]Ý:z`ñ bÇ>Ó]$a—KrIÂ]*VŠIbDy„ÅF˜‘£¹ís‚=>&½½Z棚¾”TÍ;ú÷xÏIvÍm†¬à@f‚?~XåVÚm]¢¾ŠL*ã4zsVv²¥ÇqcG0kÄy$Dˆ'ãwÈx‹¾°m^V9HÔׯ4œÛ5dMlŒ:‘€¨x­ djÄ+ÝÎñAôÿWø;ЏÆ8„³mq8)d Î*È´Q§C X‚B¶A ‰g6Kžr ãD‚æçñP} Uþb®<} `ßÁÚïYˆñ\Î]â §bÈòf޼s¥.X5˜V¡‘k7—®‰NGÊ”†9ÊöøïÂe©»BÎÊÁ0Ø,$Í"ÑÆ]‹üJièUåäö¤‰x|ÌšbJœéææ±˜GºoŽÊ–Э=„Ê»Û7/:¾A"Kôr9v¤ƒÜHéÔ2=ŠŽ_æ‡&<±3aˆ,c ãl¨ñ ÎŒç‰ÎjH…6<ˆr«¹P ÍaDö'¯¼dgÈÜU"6Š`‚)ÆÁÚ²D‹vKIK£ËÃð-à´à¥T¨ÏßFÆ8„Žª°À)d Î'4ùWö±§C X‚Q:8ņ§6Kžq‘„,DŒ×™àñáœP!W†>$Ãå€n]›s¥ZaÙͱÒ0Ú«.)`Ä顯XÄ`cĉ¹FÉ/Y¸VDœ!(ÆP ãªdy ˆ‘W"lj‡çÔAqÎ Ê4¨²^t;¾ “ÅÒ_á*ãÁÜdA W]=Ò\7‘%bV.#œ6¨„òâ›k Q¬R2+ÃåkÎO9úÙüÃüQáÈ$XTõ´°Ë-Ã|¢Eª„1É%áùã8@ÜEr°CnLOúæüÄ:§ú¿ÁÜUÅÿÓý§àîñÝa{¡nÖ^Wžœ™æë}†lNl£ŽÂ¾B ut‚G/+:[Oª.Kg\\Ÿ1ºœÆÀq%LðXZRG°—‡17 E\‹*¸ów*±=}i¥r¡Êh²§I¤‘E]¤Èqì#ŽÑ-…Ôæ&¯[9™±¸vÄ­Äl8,±—*$½²&òQÜþbmWhU«£Kå§ÈdS=¼bì9‘Å6ÿ _ÒÃ,·‘G*Öª\ä’ðˆådvìqœ 9X";&.Ó‰³h0Å,ÂÄq’ªª¢AHÏ0€WÇy@÷ÅHá«Uâ³b`OUÒ¬zÑ\ ÈØ¶”V'»«”Ë6,'ö¬²@ $yì)£”ù”…_‹eÇÁX£—cfv‹¹l/6S,’ YrcP#íDa¹kòÁ äNW]ÙØ²Kt1æÂ›2á̈aÈ‹.,´ÑäÆÌFHˆÖ<”xŽä ý=mÔ1KhÙ(qmatqÉ`Jq2Cv4ÍÌ6‘Œ)“׋Ì;8’ ÿÃ=•,ÂÄpÙ(qmqÁ È$g˜G$0G{‚â€Ãiªñ¹±|^þ1—àíÿHŸ„XWä¬5t燕°¡-XFŽ0Ù—%äjxï" Ò½îxä!4hÜ^%~Ù?Ýãjª¹=:õèÒ½­O ˆˆ‰èDDâö#NfÅ>“ ÑHå‘ÞœqŽP¢í¼ÑÇ2XÀG5^&JÑ«PÄG|ß¹‘ [†ª™M>õ‘»Éi­åÒǵ¥Î ”Àh2i½¸ŒÞˆÏuEÏØ˜ßªÄÐîÿCš©üqjâIÄ8ÿ ȯ¯eQâGÛ$Õìž²6ÎÄl-akÄÁ<-UÄÑQbmÈˆÇ · xP_^ù:bEw'˜@Ä oT5ÎGG…ÎÈl²Í»„xµq "+M[X9v1¼Xçëgð?ø±Ù¡É‘¯IåŒbŽ‹?RÁÏšå6‰å…WnDSš9šñì\ õÍøˆ=f9úÙü0ÃüaÇ“ ŸDœ ˜‚جÃ6ó™[älˆí› Æ„Èñ¤¨‘¤#w@'·Š§ú¿ÁÜUÅÿÓý§àîñÐ} Uþb®<} `ßÁÚïYI„c¾@ËŒniŠÐE$SÓa®Zdˆ†1•dÇë™´ã: ÑH8RÆi"–<Ì…¤2@¦×ӌր’x²IæÔ¥·ºˆÓÂNT±âZÏ™#‚ã'* ç&S³’_)f‰ Èõ_\i'ŠbIûË"ÉíH¨Åpb\Áˆ "¦Åˆ‘d5ì™&W—õ/ˆ/h·w·yî`âļ֡òÚ}Qr[:äjäùÔæ6ë¼'öìî{Ôï…ük…éþ‡“¢©ìÞσðxüÇ/Ìà™[Ó «Ù¤Krði’d6‰¶\ˆm1)åB 9&ŽŽÚ,ˆ‚Ÿ8QŒö)9²Ø'5² ð£õ“þWzÏß^ßäà¾L‡B# K Æ"Å©£Äa™$1ÕÛB‘,P ŠI˜Ä!Ç # ç68QœP} Uþb®<} `ßÁÚï9úÙüÃþ³}s~âÓý_àî*âÿéþÓðw úÏ OøËðŠÇŸH7ðv»ÅÿŸÿþ"úÏ OøËðŠÇŒ.¯ÃÏcÖJÂjEuOú×a[Ë‚jXD‰]ÏÈ–Ùy(înlíi¤íïïTãþè¯ýQàÿé¼Ýÿª<ý7€Rã½±YÀV€þ¶45ú'<¨ƒ>õ]Ì)Ól‘í¼® îjpÕì›? v÷ª.{J½ç{/²v¹šê¨¯/Ú6zôvfîöûuohÚnÞ·Ç}ªÈ©ÄÑÎ ¼G\À¬¦ ƒ:† ˜ Í6´ášVÎä”±e ‰!•ÖUÉa`é3–¢®>0¦‹TÑYÒˈ)DŠIÐQN’ WÜ>(!Õµ!¹‰$PàN°’jRÇ-‡„| &’®ÍqE1‰PæËlz[6Šª|~j[ cðäE:ÌÊpHÙNBB¨ð£=q¤0%ÅÕÑÒxÊIo|»:x ä­c…Å„ 5ª¥E¯‹ üµí‹ØÆLy°¦Ç ¸s"r"Ë‹ m4y1¤ÏãœOaBa=Ã(Ü×±ÊÕEâÃâ øö´Ö±Ö4è2QvÊ<Úö9¯c˜PHX9%Ç ¥C” ÊŠ`ÉŠÒOðikêŽ'“þÇïMë?8‡à[\¡ÒYj#çÍ76Ì?Éヵe¿7ZK‡±þ‘_^NÕ¼Ãl¶H#«ÙœìI‡ZÂ׉‚ ‰ºlI1¢ªKÛ‘í0ØÛz³¤˜Í[‰2‘84æK’@â6³¶ûCo˜‰örmà „oeÈh‚ n©]ÊØEÚýÊÒN£œF¹Z29>j¾VÙIWh1 3Â25Ëa¾çëgðÃñáGë'ü®ñbàÈ“ â Ä‚#…(¯Ã5Ÿ#ålxî›6dÇ(Á¬©rd+wNW»}s~bYŽ~¶ðÿÓ$È–VG»ˆÂÉ1Fʼn® ÁŒ×•ÎrG… E+Ð[@A„r"¢”Ç#¢ÓaÈ2Z3 Ã{£Í…Od3£\ª)Q1ɤ (ÊÖ½?ª&:þûoÿ(qýQ1×÷ÛùCꉎ¿¾ÛÿÊTLuýößþPãú¢c¯ï¶ÿò‡Õ}·ÿ”8þ¨˜ëûí¿ü¡ÇèÓþ.a?È\<ómª±œ °®(«ÃDqô”ÇañÑÌS±¬pšÒK$m³_Å@QÝ7àÉÚq:X"Å»‡$ÑSŠ<²ÞNSZ˜)…0a"´‹!­Q:;fø;+¥w5ÙYTC,(Úò7y”ö¶Ö+¼ö4åà"•Š] ! 7Ä…Žª‚QÒëØaèÊ6cV²n ‡Y §ÔV«bŒî’ñ¡ Á8A3Øù´5WÄwE$º{–q‡%ƒ_ç„c §hŒ8Nr£(Þ­ÒöªüÍÆQd¼Ì¨¦Z5@æ5ûôK¨¬UxÈ›$•,Ôj=Àq2ŠÒ²Oíƒ}ÑÞ õN›ˆ¾âî9r_B䨿AQ|xéÇ ýú…óB½û??Æ6¿!wqÝÇwÜwqÝÂ}õýÞ-E{™/¶TLòïÉ;Ýô5á‘*+¤L+Ú×kÐæ Œ{š6•Ù·4 =íB›A¦) Æ=¯à&Ä6Š+„¯ªLœÆ¬$K9ê¹’»ÈÑI -Ú*4‹§–©—Ûl·Ë'–B&ñž®1´¸¤ÑºGí£Õ¬ÒÞŸð—ôŒ¿lxðiôÿƒ«½fŤa¼@XåÙ¹-^"‰ðLÛ {æΞ– IèkŒFD¸›~)H}6vørÒ$m³.ìyñ,O¼ƒXìåä^Ul…a‹ÍjÈÀÈp½o‚ï¯oòGŒ õÍøaˆŸêÿqWÿOöŸƒ¸WÇAôWøEЏðiôƒk½eu#nÁR"VØ)eNŠJüé7¯ãMs@±æâ‰°’Î{Xñ˯ÚŠ‘£ë)£Ç[Ül›%sâÅ$Ü"Ð’e‹TÏ»2E)CÚ5ñ >8GEúF «)±£–v±Xà…cĉaTcQ_Ôs†¨Œé™Cd)ÖPG™6eÉ©bÅhÚC«½n#Ås9wŠ‚žu‹#Éš:ñΔ¹`Ö6aXV†E¬Þ^º&A9*PFç+ØáØø„Zq5·?‰q!ÌÉ ´™iˆ§È´BâM{ ‚=|ˆ5Ö¯ž„)V&ùƒ$\3Š+HÃx€° ˳r Z¼Eà™¶:@÷‡M=,’ ÐÖ Œ4‰q6ü"Rúlì+ðå¤HÛf]Ø4ò-âXŸy±ÙËȼ«Ù Úԑáxð`ä$Úª{«©sGʾ-üØpaŒ/B©] eÃS%¯ÆÁ–"ˆ¦sÌÀblPQXF$Ä€a›peUáØŸM®Ô<Ú¬î. ËÙަ¯HÃ`dD—¹ÅÒ_á*ãÁ§Ò ü®ñ㟭ŸÀü?ë07×7à~ ñÐ}?Õþâ®/þŸí?p¯¬¼·ƒY!&âüOecš&唤•ji1ë#lÇgÈݖȡڊ2J&Úç ÒA$‚ §­¥†Ynå-T ÁŽI/€'Èx€ÇÂFâ+•‚rbqÿŸÿþ"úÌkb°lKkbX‡žÍ<çª Ò݈€Ž9ñîäZWGxЛ\‹âæ—AÁ̺ãóÅ„(êÈM³ Lê8B¥´“Œo^Vξ\mÄj„Û[ÑÈXï_ë"ÛÞÊ‘?VÜ[RÝÏ4:ø#—(EeœBDcC—5­dW;•ˆGJ'PˆšeHñZãüUžÊž8ç^ÑA$*ºÐU˜ë;*ÚÆÃ`p2ƒ‚<ÈP¥Â…4¢…&öOÁ÷xFCä¸:ᆆ®QÅ6%æfGˆRL‰ ¹….K¥Tc›a’Q5#ÃÃÞ$Jü?‰|tðïpʼnÁiy1öRç=£²du¢ ™   Ïš$eXH¯,°ø¹lM[·`>U"b:¶Ä‹ˆá)ŒVÄ‘¢Jܯ'51¤®˜PuJ$±Ç€ãKnÄÇ"UƒpUÈêù;ω‡”'äm¾DP¼îÊF…¤+TŽ`ˆôfjѽrjÈjgíõõô‘­+¾¦o\½ÏO‰ÿ³»ù‚ñ‚\Cš,¨¦ˆÒc‘á‘@^Òà0Õ¤„F´‚ Ü×±íG5QQæ„ ocW°bôsš;BÓÒ¼|X?¾3ñññ`þøÏÇÇŃûã?ïŒü||X?¾3ñññ`þøÏÇÇÅ…ûã?ïŒü||Qß¼Hÿ¢ãâýâGýï?è¸ø£ÿƒÈÿ¢ãâŽþ#þ‹Š?ø<ú.>(ÿàò?è¸ø£ÿƒÈÿ¢ãâýâGýï?è¸UÔGdžÕl×ÜMCDÍ}ÕDôªqñ ½3þ“ˆLýéŸô¼~w™ûÓ?éxüï3÷¦ÒðÆ %"½íj+†Äj+—,×Ù;½>»7¹¬NìܨÔû|#Ž9¥Ö&H®UÉšõÏÑäªuDúU°ÜÔù} Ep˜ñ‘ìß9‘ã9Ûnh÷L=èôkTˆÖ(åß«æKz!_’'®âè<¡»p¯f ¿8kl8•ó‘¢…419êG(jEFµ^¬ZÕzµj»,òkS¹ä HËðvÇŸOø7ðŠ»Ö]a{¡nÖ^Wžœ™æë}†lNl£ŽÂ¾B ut‚G/+:¤'XHW%qcD£‹–APR†& ÒMFJJéwB¸¨±ácøQÕXôAÇ‹‹bǼ³à ˆÁàcmR´nIkT4€“ ÒzÈX_Eç¼`œAÏb…7æ^3½©cäÕàʨïšüE‡Ç`èS±JŽhsãˆ2bȯkh'b.1±~Ô{Ê÷Ç&#8Odº»I†ù=›g$þQdˆ39~VB¬r‘ªJ\Z8ñù0.!˜fâÅŸ2! _D‘dZ†‚œ“aÔÙºÒh¶ß…Ï&hb<¥Œ­ñ¬.±Ì)²a–D‰Xz™³&ÖI‰ÖÇÔ¶ÄÆ&$›h£–ê˜ìšXÑ#¾— Ò‹j²Ž¼#fÈì1ö›ìÓeò€‹–³¬d8¹©Ò$IsåwŠƒé¯ð‹qàÓéþ×xñÏÖÏà~õ˜ë›ð?xè>ŸêÿqW¯n軇ˆ‰vøíæªì«ªê÷a›?!.«E“ùfÇ‹ÚU-ßy&mÅeKñ[ìy_i‡ª#>)‘(O’f3#òu–[p½”¦u¤¸äeA‹€,mbÝsØD–6S›Úج$š¸ðåÑã§aÈdK›$Y&s2aH®<;‚?‹ÿ?ÿüEõÆ”Ñã­î6M’¹ñb’nhI2ŪgÇÝ™"”¡íø„Ÿ#‹"ý#U”ØÑË?Á¼ÉRs‡¤Oº¨ŽècdTÃdCY# À72ȉˆ'Ë<–Øe!Go°K*4s†»Åo‹¯ß!•TÑØi  &Qˆy‡$`¢µ«"lÙâÆ "Œ†i%Ɇ6ÌÄåLYî,qö)d€¤Us‰v è¼gV:º@aY׺:¤K•± r,6Æc.ðãHÚÅQÙgFÇH”ø¢¹¥$¶Ã€,`ȵ¦×&M‰M 6ðäHOæŠhLŠÊêÐü­e=|ËK;f7/¾9%Ë>Ìq–Av£ˆ„ÛˆgéÒ1½ê\}ˆÞHë Öâ––8šâsL•A dé„3H&Ç ±,ÆsB<‚–…ZÀ¼þq\>aå ÃvÅñãM%y'E)Å :±Ó¸1íasÒó Æø²Œ3G8žð¾¶ê¬üÕeÅ|;Jé;f1Â8åÄ>ÌŠ@·c”dÛ8†fjÒA±è­Oƒ*j‰qÖn…Mn’[(#ŒJ œ{*#IË= ø}ñ‰ÀÜŠéRÃòc¹’–7çëgðÃñáGë'ü®ñ6mKublÚAAN’kH/‰ªÞ†$hn~« .N뜰f“«ãÖa†ÊT±â“–8 >A1U \£&ÊdXnë•嘎‘!°¡WØWćäH±/åË‘´1¾,CŒ,Y»޽òQ™ÏN+Ù®»x¦>7iYȉ›XÅ >cš‰DrIÄø#ØÓT\&*Ɔ•ãKK;93¬ WvZÃ4Y1îmcÖqéL é"“Wþ/üÿÿñÇá/é~ØñôiøE…~F5•ÅŒšèÛ|Äû)qàÂñXoJ”A[§(Â=oMe#ÜÞö¢ÈS"v/±h…KEXɰ²`&â,AœuV†ÊŒW¢åÄYMXè­•4v²‹ Å?/ÉÈÚ%Ýܽ‡Hø2rŽžO2A™žË‡Sf$¦g(MÁ[‰qEíÐ 9ö\”ë)E¬ ×ïû4:½Ä®ƒ¶É'qŠFŽWGŽÁvþN„Ü;‹ïkâ×ógÊ'/°sJh"£@ÙSØÁ¶®“¹ËÏ­—t#ì•à.̨¤( ´q$ÐõÐQ¼nÉìr'Ìb*§B4oowVíµ™ÿtÇ'_F}Ùx¤·5ÉK—™w3\½+¥3ôäžYE{ËòµOYmÊîïòÝ£39}ý°ïlïmîí sN­¶g¥>g |ùB0b²[ ±†=±”æET49תCÑUÒòsÍWóõçð˜“8üýyü&äÎ??^ ¯ü™ÇçëÏá5ÿ“8üûyü&äÎ??^ ù3ÏןÂ`~Lãóõçð˜“8üýyü&äÎ??^ ù3Ï·ŸÂ`~Lãóíçð˜“8üûyü&äÎ?>Þ ù3Ï·ŸÂ`~Mãóíçð˜“xüûyü&äÎ?>Þù3Ï·ŸÂ ~Lãóíçð˜“8üûyü&äÞ?>Þ ù7Ï·ŸÂ`~MâÒpf\8Ы¦ËI"Ćb^Ç+ÌDr5ír·<œ‹×Ç›ÜÖ§¥Êˆ™ý^:fEþå>†k×üþ\—”Mò“Rd‰ò½„TMhŽL´éUÏV]:f6Hõé4…ÔBV9îL'·VŒy#¯—´åpFí«_de™ä38‘Ññ£ëV“u¤‘¸³%1„&¨ïk¡*hòƬ"‰­ŒjÐâ`DÍNW»HÆcu=Îs²N®Urõ_­põ/€¬_Œ«+ù[U¾é ØóU°æ›a"a HÿH’XÛœfŠM[oÔÏÃ4~ñ~‰u_:®ê\Œ=‰q ãAœÑ ®s°íTHñ9ØrÈxv&xf! ’¶\aÉumÕ_ƒÌΞÂ¥tŸQ†åçWȸ‡Ù‘TXåÚ!“lâ _§Iö*µ@;¯õ8bû 6îs2êàâºx%ÌÄPìWKÂ×’#莢7-%n™„;vXFÇ÷ª_8ƒÁÏdö_%Û®±wlsý£Ìò¼ýÆþLÛ\×çákÙò7|Qßj²*qts‚¯×0+)ƒ Ρƒf³M­8f•³¹%,YC"Heu•rXX:Ll3á XcŸ55ö‰Š°pO}:’ 0å´obAÙÃõ:‹  ÄÐéL¬’TÚI¦£\èÒ ‹¤@)ã„Ń/ âgÊ„B¯|I/ƒQ6¤Gr¨Lès%ÅR1ËIÅ ®“EƒðÖ'ðIG.9£ÚcìmP1DB4nÞ¬ÃÎï+ùĺ7¼½ªé“<ãzJjHæ -(pž œHÄœ‘VÒ\»E¤ˆY²&–$tkRÅ¥ ÕÔAÚ“ÙÕ¶ã,æO¯Åu’‡*à§ <¨uä¨ ¢^V_Æ‹á—â6¡ŽY]­$«œ6äƒiÅ‚ú„—n“"t-ÛÂs •¼µ…l›)2 nÊåðÕ† Æ—dü冰¾Ä’¯l´yr9O­­ˆþN#O>NìÐé‡CÙ¸F°O êû^ #Hl—ÖÎA?c‚F¹+Û*ç¸.Ñã‰Í%&E‹jhVb-Èʧ hð¡BŽáÄãʼn8Úñ£G X G˜Á"cF!µ¬cQ¨‰Å®¥ð‹ñ•e#ËbJ·Ý$j¶Ól$L!iàIK›sìÑI«mú‚;|]àã¾ÖæC !"`lA(Fá‡$`¥{œ‘áB \bQ’\™2žiÔ˜§À'ˆ[;ˆ5Ö¸–4 MQM]}›cºÍÕ¶8zÅÀYÍ,¾fûlËÇæ!¨0q3 âˆ|Õ|¬ˆ Z9Õ“†×¶5¥\—0œ­„]Çí“A`ð¦‚U|©q>^‡þ»~¬=’Ɔ­O_n9Û0cG´6‹ipl,ܱ FÜFô•ä5à+ݲE[™suq…­A"\K ?…ñ.j¥C”h¥`:ºûXB‘¨:Ô#œRÑIh%4ÑĵÞ|bû™ý±³ÝÕ2§ ƒ3ƒÚÕRlUk,7É"Žþ]'+d(1åÖÙH$Šnü Ùz¯ÇͰdŽæ 6ŠãÈicÛîXÄ Æ cÚiݧa´ó&î½Ö5±.ŸÄK|9n< Í‘p âÓR¬Ô•)aXI}™9‹¢òá,0Ev¨£äÑg!®Ð2ÕT'œo†°ýd„²}spÖ ·•6壕SMdü=^áG Q xÃMÉÏ0óU`²¾Ö¡| ã|K‡ìä-“+†±D¨W.X¥š&aë<˜QB 0dF"nGˆxg„©9–íñ¸ð}6=Áë…Mt³VT˜¢…_%–cçª)K˘³ºb{‹”‡;XÅ£xÄþaH§‰ni]j‘cJ,ÛϬ'#†.…ÌPÁ)Ú¥ ›sEœv·A #Ûø.Æðš‘Ù[QY⮚9¤,'Jì‘|ÙrdËœvµO*A¶ E§ \øÆøÔqÅ[[fŒABD¦ˆº¸¬ÂVB‘"‡Ë6pÝdEdndšÉ3æÑÛά‘I6Öž¶Æe4½Îj¢TèA“"²Nôx…æ ¯Šmر‰¸'kŽf6ñ†p,Id^ØöØqìöŒÚºvì@‹cV4×&¾ÒÎ[¦D4—²;ga•PŠD€©!a\"ÆGai©ãÁbT˜¦¹>s/%Æ4Ôl•6æDéakÆÌÑŠ4a1‘ÇëdÁ<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªpìcàv_`ß À·ÃΛٰE l¨ŽÁÓc£°K8úãC™%•b4æ:†ƒX¥Z¿ 8ÃÖEåëá\عkÍÎ CA†˜Ò¶%½ þ˜1fžC^9·§œIdŸp¯‚x‰+Ÿ›ˆ0¿/³µÛ´G‘Ïnîëå}Miå¶Ù½Îòz¹rÜÆGÙ¬ƒBüOfÚÈå áÉ|Ó%<‘Ã7/~êÊ‘`SíB k'äØV…ÏŽ‡å/`¬×‚éÿÜUëWã»ú·û„ É›.¹u¥®UvŽú{ÌÍ Ák€zü?‡ëãÕSUGHÐ`ÆEÛósÞç=îyO åy$K— …•2QM*Q$Å+¼Q]$ý…‰«t»G†Ù†l6䊻|Ä>Ò¯v³ Ý,®œõ“í ‹8v,ÂÞ0mÆ;ÀõqÎjÌeƒûÂaújêÄ•*$–1 Øð Xñ¢;»-lPZvt›jˆ"C“ 8ºDò‚9Œ(10Þ&d©¤ÜöDŒùÕ¡6D‡".™2$T#Ú²$€ZÊÙ˜#àLAàß !ßâl|Ãá¹Ö°dAyWɤyã×È—\Ðú 4Ж´v‡§«›ad‡Õ,‹lAc´Äv, JxÆ0) ÖLÓUNi¢tîI *Q±Ùceb•õîÄJŒ9à{øA…"œ%¹¥uªE(³l#>°œŽº0C§j”2mÍqÚÝ,ŒSoà»ÂjGemEdlˆ:ºhæx°+²DYò7eÉ“.qÚÕ<©Ø(IZœ-sàâwQÇmm˜j1 š D èRâ³ Y Dˆ",ÙÃte‘‘¹k$Ï›Go:²E$ÛZzÛ”Ò÷9ª‰S¡LŠÉ;Ñ☀R¾)·bÆ&à®8]˜ÛyQýNøÞîUÅ•t;˜¾åmâÁšhÑìãlà‰båçˆL”©RG¶VèfäG[âëÿÝö·2i bÑB0G 8q#+Üä xñãòˆ0´’äÉ”óH uþ§ _afÝÎf]\WO¹˜ŠŠéxZòD}ÔC&夭Ó0‡nËØââÂÿSÞ7 ¹“CêM~ »i­GËm[ðlK!n,FȱG+dÒ£NŒ2‘Q‹¨<cvZÓHy£¤¼ ˆ$Å0ÏÐæD’¯k–<ØR$D3‚@JÌâD“S uXzëÀV/Áµ–÷3‰-t°k¹ZÙ“C¾’ð…\‚äFîN³JÇé 8 ú«üÅ\MĸjËÔ¯„Ü+í„ñ`S.ì;†œê+Ö´Fç°üí㈢(%r|Ô§²,ÈS-ê-û7ÂþÄ&ÂÀSqLj+KoVžÞ;0½äΰ7kW´–ñàN¯бueŒ‡XW¿~-ƒªÜAáCXorTTUÿv#š,ú®ÐøßÎÌeSÛüo+gvx^É\øn#×OŽîZ’ D+øð–8Q][^pÙBÃTñ]4ÊxöŠ{þv$ÑÚVv™îÒ¿áúøõTÕQÒ41‘vÄ<Ü÷¹Ï{žSÈ9^IåÈ!eL”SJ”cI1Jî1--úŸq}—fØ\ÕÓâ¬E2®'"DZûžJ5_+lS¹X· ߎý Ù·Seqê×Ô?õMêƒÕGiz„¶øûÚ=­Ïr}Ùÿ=Ÿ–åy?ë\¾Ï±ñ“¿ÔÕäMlp¶dˆ‚ÄТžR © Ñ¡›Ï,Hå.·†1gM ­åÈsTÏñ€»/S8¦„«nÀ|€Ä«ÕɪòØiÜ££Âçd4ñOErâaÉqí‹ Ò)é¢v|˜”Þ0n ð|[ ˜µŠqplÐÕù\ÄóVr²yëLÌE,+FØŠ ŽÜœ<_á;Èz\ƒo¦ÚE‚žI-+H”ñÛ^¤d—™$MŠÖÌq:\Oá~,z\?E ²i¼Å™ƒ/±…ôg2ü‚9g:54x]Ÿ°cšC–f&®³âv9··¸¡µŸ ¡ðcRqˆ”²©§Íň±¥¤™s MXëŽêÂ,IòÀ^j}5­P*¼8á\AY.»pSü$áêw^x>Ÿ†$:»©òé·%ÒX]Ë"ö:Ô0Í“* ÇÁ§‰fÈÛ5x–Âò̾Ç]KS…qQm.'?ɉWZ)Ñc’ÂÂBŽ$1žLp¾AFÒLU#ea:\=ˆ<ø>‘ÍG¿Å8ºGÅ—lNmL*’¢K‰_.\²Š|‘Ø– ­lr…ÖÑÜË 7iK…éEµYG^³dvûMöi²ù@EŽK YÖ2\Ôé$¹ˆò»Œ!†i*…àâ¶ •æ¢SBÄx•„XÌ”FµdM›" XHÀÍXdžÛÀ—$,ÐaºLAü ÏægÇÃÔÚ-q—ƒÛIœ*H2å†^!Ãö2ä¡9p’!3›´šðH…c?lÚb[ ;1{-¶ÅB´§œÏ&]]£ÓJŽ; ùH“ 2É#Fr±ŽHþ|büw"Ø>)±ª‘†üf ·šb^[,7ÉìÛ8ý"¶bPóÒC.$;aÈäù¼G‹ñ~#õeárNººt „5áXâÓÓ•Ìæû?›ÉЬJØ'ƒ[BPÕ¶¬cu®!¥ÃÊο‘å°ÝZÈIÖ<Õ”8FØX•ö’>$³É·þÚ¶Ù¨Ãõ#À~7ÂÕS$׊êA{*ÌpäG™_&~¬mtpÍ%Ép†YRˆƒd˜±[6=…¹"xÅ÷Õ˜ƒíh’0¶+ƒ;ó(6©³¬G[&=¹›!ÁÂwR.^1Å“,òÙÞ=00£9NØÒ )ˆä7,±‡$À§ë$x-ða[ '“)ïÄ2ÈÔ™Âsa û‡”‡n!¯©‹SSbtÕ·¶Ž·‡…ð¼>V¾.d1ˆ­$ë9Äk&ÒÒKX>jÂVÛ7  aFP¾,H€ãÒÑ©÷Ùvm…Í]>!ÚÄS*çòr$E¯¹ä¡á1óUò¶Å;•‹pÍøïÚ ›u6W­}AãÿTÞ¨=Tv—¨Ko½£ÚÜ÷'ØÝŸñÃÙùnW“þµËìûj–÷ýO¸¾·´¬)ªî1Ö"‡Wœ‘-…Ï%3 “•¯‹¸Yܬ«‡ìGfѬݥҸ¼·ƒY"îmU=•Œ:h›œÕ¼¨0&=dm˜òËÌO(™;Qd“p­ÑÎÈn¶ÂÔÞq¾uärÖÙYš£_i¥„ ±…+ð•h£Èœ"rΜGIXñ_'–¦¾4øQñMG‚ìo5«õ¶õ’pn hí)¤9åBl®É)`H݉LIÀk”£‡|a,¨¥Ôb?ØŸÁô(ôç±ÍÓ­V,™B›_•ƒç°Å(¹ƒ aå7L¢nrŽæë ¾B;sÕD£í»•Áëïf99”æ?L=²FÛ$>Ò[6óȬRïµñð­5V¬²»Õ ¸dŽJ”¥ŠyqáÔ´# âº<ª)„,ƒSJ@,FM¿¹µ¼˜ 6(åÜX˳’8Ì! Èì<Ó­Jc¢km!Hôn§¹WææÐ\ÚÑÌ(’éìeÖI$ge|wž‚WÅHá9Ê7Cz·S¨Èøªš«ˆ`3RXêzÜÒI% "ÊUÂÔ©îµíFû½îû?CÖ`rF8d ¸R†;ˆ°¬lˆu±âK¸jäCE”F%]a"„ˆÒ1ÍOœküú'bZæ«ûDütÍëýÊ}U^¿à¯Á7-}Œnnv¥Ò‰šùóèŠÝ>WÚÔwl5Q7®²*+W/#<ÑSÉEB+3ó«U¼ãIÝ:ÍûTXèD{#®£–9‘ɲQF5y>+Üá¡f7¶%&~\±µ"7â­ö89k˜ÈÔw4ùYm06§ ˜ÁLhÆ1µ1‰¥ŒcˆÖ1DkZÔDj&H™|àßRx8°ÿÉp¤WGÀ&ýÙÓ«çxA7ÿX´%]¿ýî?3~{K¬„.,åmó66˜j–ÂtŽ8wåË„YÚŽ!{„v€ŒcnLcQ QÓÐB,‡K,:ZØUQI)ã_$‘à„|‡ˆŒæ)0‰Ší#b'ÈÔOõƒ¸«‹ÿ§ûOÁÜ+óp·–Þ -pµ§18íñYò¹XbêyÓˆÇ|x†y²vœØà+ÓO‰àþˆö“s‰-ñFØ$*%lIIg` É)FÙ‡Ãò`ªÄ)£ÈržÀÜ[‰'[6Ú†QàÖ0¡ævåv]h!×:sY2H¹÷EY«œº@Æ ¿2NÜ%‰'T‚NâšQçV<¦å·%v]&W6s™0¹öÅI©|º÷‰áˆõsp mðãeFÙä *]l¹Kg^ øËHØgÄg*K(cÇreOcÚºNç/>¶\yвW€»2¢ .ÑÄ@“C×AFñ»'±ÈŸ0q,hÊW´Ö.²{̬q7®b@º’=CÓ`R¬¤23Ŭ½å&²¿„nYî ìúdLý߉åæïÏÍ’øðŸûûøMsóˆÚˆª®¡·j"*"ª­|„ÉÝ} ½=<5Ç'w]ϽŽLʹ.Y'õ±éžZúfíf RDvy’XÜéÄê~èŽsNºJÞ¼ác{±÷›äð3msóÙ¡ÜäÄköÈÝ—j‹â1ô˜[ &D–ng6öüáb¬\÷Çai©äš½%‚T˜¦¹>PèâI %l•6æD†sÌâLa1ò‰±Ô¸úd^Ø Š¤’+6ŒÚºvïÏ•]hE×&¾ÒÎ[aË f2;ga”CD€ á|Á ú«üÅ\_ý?Ú~á_›J\Otó«=OÅò7n…uÛÿ9›àjÌåÓ×é#&Ã74ëÞn!… =™)¹4ÖW3­¬díóì¥È4û"`½*Q ríCõ½tlrc‰ó4WjÞu-ˆ´'1îð™ 2¹Y‚ê ÐHxÀ|ˆFxRvšÙ+O Â-ç DædfɘAŽ ˜“é¦Ê‡ §ä›.TøâÆB8bÑ„ZŒ×OÂwÐn€,¹†ÏØzË$"çëe05üÃâIX¼ìPsbž6è¤_“ì¦H=”z©p]¸7,ˆÝ“¹K¥Žr6¢p†Û/±!Å GpwDUs~«Øæ5>«œ‰ü½=aãÉ.àjq-|h6"-m£Å©Œk‹œû)§Öe!{i†ÏœipНh¦Fëa3æØ’dºÜ9‚iæÓMyŨºµÁò"¶Î@ëÀû!ɃŠ+­RBE®VÖ.¯Ûq^°–J°ì—#¦§ÃX— 84¦â–™°«ßYËö¤‡Í%€\Õ˜5Û—–b*ß5¥âLI/–ƒ!ˆCF’mŒÒ5î[[Ï3:NÛô3XÄ! Ó&4Ò¥Un © boŸÔÉ8šdws ×Íd±i9ˆ§ŠmªÖζ|mÈxˆƒv\H›2AæL˜rÊ—.QI"L©2âžDƒ•Î)Žb¹Ä)Hç„sž÷+•Wæl©ìgTØÆÜåçÖË‘h7„ðfTRâÝHhzk7fǹW„¨À²€c°DÅUàH–0RJsåXÔÂ'f8°Ã¦ª=d˜Ð#ü½Ô÷´DÆ·ƒu\] ÌA;K²WÇ ®V`º á‚H"Ñ‚lmÖ¶@õÓòu/ÒÍoßLKâû`?to¬ÄUl.sáâUŸ$›q,ªàG„]ÕbûÆ©žÍ #ˆ=EcP©=âé|,XâK qéû8ã“cG êp²ÉSf («¯gÊ^’­`Í »FÙ>AØ‘Áó²k+‹55Ѷù‰öRãÁ„ â°Þ•(‚·NQ„zÞšÊF ¹½íEu_‚Ös²ŸºÉžÚ¼£„v‰G])à”yÀ”uÔk¨B„רû6Þ,Öœ¸Ä–ó®¬K­9‰ÇqvDù•ÊÃ@A‚3É;ãÀ„0BºæÇ˜º~k ã [Î¥±„æ ÂÞ$W+0]A: ‘hÏ NÓ[ biáµ~™ÉJfÓ#âzšò’Ä(NÝ%åtWžP'PI©aË`ƒìÚˆ°œs†ÊžÆ µtÎ^}l¸ó¡d¯veE!@]£ˆ&‡®‚ãvOc‘>KÂ6¨ƒäFµ†cîË]*°Çµ¯e»/¸±]m<œÆEsÐ@ApŽETTTTT訩ܨ¾”õ˜ÿë[ü£÷åu\6ú®ÄmÝBÖTΊÈU¥5±$E¼µo7Ùó›¢n˜…:hË` ðË‹$Š\OtyÚu!l+Š™ÉÍ9©YˆJ~^*­)emÉ^ìÊŠB€»GM]ÆìžÇ"|‹ŠÇFŠªC˜¼¯h"^ÖJ”ukÊ&“ ŠšÄVŽrx•z Ïk}ÆäÇåýÓܽ}>Œ¼x*\fä5ô*·!Ú÷3—¼rÒKz È%Þ[;•ÊÆÈhœA”há?ßzD»Y`™v cê°¼yam½™$,Æ#…ì…ƒU»BJ¸0 ¢fX,jù!µÄ§6 9zêªö=E`܃æ]1¤J.ü⦛*D‰N­7RH1£|╈ J€Öx~ÁÆHÏ#4Úã Ú«-K K œAÉŒA¨>¾Á`Álq[á‹@Lj€›\â¶ôä§cbÜW°¤,îÅ”1¹Ú£LHï‘_"d5—ü‰þ”1/Þi¼HkQ¨r¢"tDD#²DO2'™C˜ã¼$(\w bŒá‰ªG Cb¿5hØ™58'íwýÐ>³ý'a¼°½ö¦à,7ówÙ"b,EŸ»Øzš“1~>÷Ž|ñ¯æ•3»wt´_9ðp=ù»ìq0î"–O½Ì M±ž¿{‡yówÉ%Ý»´[ßqŸÓ6"ûýgâû¯ÜIë0LˆEÞðÕT¿A”º˜£«ž-%c»áÉ´Ev÷Bòì#½ö&à,7ówÙ"b,EŸ»Øjš“±~>÷Ž|ñ¯æ•3»wt´_:0p=ù»ìq0î"–O½Ì M±ž¿{‡yówÉ%Ý»´[ß1\HÏ3ÆY!´rÌs÷îÀ;©LE`Æ›#•<ÌŽÕj½ hÚBˆâ¿ˆî\ú¿GOIZá·êfäÏÜô÷x—Å„ÿßßÂkŸ}‰øO Ož/³êÙR«g.Þf,ç—Í(q JÓ¾¼fšÙ"í+-¡Š;nï8øfþH#bú0C¯åÙ òqlaÄ’æXÄÙO³›jÕÆ.#ÒÙ#B(íì÷Bðü@¹&¥ì”Uóª&¢TE_Bjv^KéñEý°º·Öa±„á)!šò<±Œ¬{âÈuí”¶‚CZª¡3¢Ê%DkÖ<€l£s¾qgX¤p`C“4Í5JáE ÎFæ5H­b£ÏcUÙfæ§^E=„yÃn[«N O+ÌE*LmÅ 6·Ä=æ7pZ‡“¾Hti²;w;taÂôòb>tc$ÍŒK縫ØUò7൧8O8Á˜’ëjìƒ^È,°½Fði‡,·.hïmÙ¦Uï0«)ÍÄR ÍÇ;'ŽÓÔ…4{ÃèR£Cš³{Cµ°„­ï€û n WsÙ»[w³p­Ž_“Ûí‰9óÚ»4Ú9¨b°퇂ü\šÌO‰…­’YϱÉÏ…_6Ͷo,Ë?F®¯yÉ‹¥*ñ{ŠÌ±Ý6<~RŠ…¥…üÜÃY—tÈ—EÎ}˜aÈI¬¦…c*;\èùqî­ÍYÜa 5ic'l!æ'XR—,û1Æ(âÝRlY«HÆÆ"5-q .°ÆVuü-†êÖBN±æ¬¡Â6Âį´‘ð$y%žM¸'ö¤Õ¶ÍF_ÿâ/Püß;ú9ˆ¥ö¦Ç)ñ¯à\·Éo|ñÇW7󦟂q—ªX~©ßS¼—aE±»ÚݹÌó\ý­ž½˜ ­:‹¯sS4|÷® Â6ûÊËoµ¤Cn³áêC€Ž]3fvu편ËHÏ.-cäX'gH=$âüêG› Aá̆qJ‰.)ILY1ÈÒ‚Ds‰Í(Nµ¤Fædk^Ç#‘€C•'kRÁŽÌAü» a´ÑÇ~"€ØâŒAœuk¥ÌqfÇÛy9³ä<‡8é « ê9ZÒsO•k& Á™êU£ŒXj £5€BËR”ÍxXᇋ.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÇÇÏñeÇäþ>>‹.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÇÇÏñeÇäþ>>‹.?'ññóüYqù?ŸâËÉü||ÿ\~Oããçø²ãò?Å—“øøùþ,¸üŸÅÄ·;²fÕØDŽ>ϵfáäD(DÍd‚Á·YÖê{šÄÏ79¯‹»Ö1#X’\V bJû7d6ˆ"x€0µÄi¢ (ôV²ã5ê ´¨A Ãd¤¢˜â {ruH†÷¯csÂ$kÆ ß$³ƒARôy2pf †Â„Â{H"ˆGŒƒ#Zñ½ªŽcÚª×5QQUä ÌêsáyØDå`Jª›&ÖõŠ=Âæ-Åq;–„ñ„›t’Î'ÉnóbFÁ²çêÄØ7™ÊKœi3¦áÇÉÞ¬±ŽÙfšúÞq¸u"F4ÆÖ¾»ya†Êº7¬Ç´Ï¯‘jSá‹Y5õñSåI¹¬ŒëJ6Æ'$™s šÒYØÅ ÄW…þ Î"ØX# D™XITIQè`Di1ÌÖVæß?úÕÿ(þg@G‘_SñW'9­\»F×Ò¼|X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?ïŒü||X_¾3ññña~øÏÇÇÅ…ûã?Ú…«Œ$DB75U{S.þ;¼}ÜwqÓŪ®q&³A7³@º‚¤ÜŒÿ!¤+@0¾H6f s¤E¼bÍv†s©jÌEØ{¿ƒ¸W•úe5ñbÇ£Y9ËÀÎ Á0ØP˜OiQ¨ñdb«^7µQÌ{UZæª**¢ü:Ë Éö;ê´Ã’ÖQ¢†#‹XkO- ­ÊòsF‡b7C”îFT‚DìH?ï†Æ8VÃõ "$„gîÑ'WΈoþµWsW+ÿ–VÌöVàé+#ijÂÇ"W4œ°YEs&;¡GHNT<•ÄsÈé@G#/L!>5¯©–êöO2—,û1ÆYÚŽ"l!Ÿ§HÆ÷ª5cYPM‘à£Áœp’<ãÁ|(âHDY0°˜§•M„iìãL‘ØwA,ëðɪƒ}¯¬¶šqÒøvðß_fí¾Z]¦4‘qYjmú裑#\t(Ç·ihÏݼÁº9I¼= =…sä9ˉ Ö VÐk®«Rª4WxcTi/8‡R;ðóXB>Æ¥ØqÞ6ø7ð _bÉR-a. šêöÓ*B©‘(ÇÂä™c„ˆ®£²ÊÛM3Ö¯L88†¤y[yáËÂy±Î\’Ço™„pä=bÐáÕ†c—j@Ž«d”ý¢×²DŠ˜ó$‡íßÞü#ÎÄqæ˜T8ë Ö^ƒ`™\ðcÓB‘7–u½e”RØ>½ÜÍ"G}“àÿáßS8Ù½ 0r‚œÈ3§V:t‹*¹“PÖzº¾6j9Ó&†Q¡Ø¡['‘®•â›ê"u‡ƒÏQl$AõrØÌ&)ÇñÙ¢øøN$èâõ'^ìôâ‡ó–±G',Øx†®õjðÿÿÞ7ÿ¡¸ ¤Æ¶üÂQ%³Å[©”Ò&ç ºôõ?mö~ß"°ìª­j*Íz†UMs¬cǹmÕ+¹[»@¿ 9ZIÔsˆ×+FG#GÍWÊÛ)*í!†xFF¸ql"ØWÂâò>— ==h§Kj>,+’Â3+%Éc£Mk£Çš 1šèrÑFÇ"Æ:{»gxA;À)6"t9±%fjm˜¸ÊV2$…àÔœÈë!OkÏê‚Ä‘ ¾—zÎÜ,iàÈ6²4ÝN³¬wJöL§|ê]Z( |Sðˆ%”»Óþ‚¾¸þï†%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_á?üî>%þÿÎãâ_mÿçqñ/¶ÿó¸ø—ÛùÜ|Kí¿üî>%ößþw³Õ$Qs^ô+z÷øû¸î㻎î;¸îã§µ6s"1òòì&¸o)²ò– ·!™ê4j#̹ªÁ¹ªŽÕ­‰¢viºü †<|]þËÙ¦ÆÉ¨³il7Œ÷ü¨“£fÕÍ:3²ö@=¡î ´f|R<†Œ£q#£8µ"m^Ÿ Pâº(ò&¶:LJ{à+úôAÌl~ZÌ)ºXñ >DÀÖOI´Ïš­‘*ºCšœkÁxÆžt"ÈšåŠ6ªT»ŒZàó•Q®o#iÄdÙ< ÷‚&™. Bº÷bG^ûISàEKʸpE¾¦<Ûj'ÙVCåÙ¦9RÄhñÑ’L6G(ˆþs b;оD)2]8À‹8•äya¶Î ;’µŽÉÊXÇ•ã<€/ÌÇÇÁžÝ__ˆäòÑè/c“ƒˆ$ D@±‘Ñáb ²é"ÕÚBÖC…[0uñm¼XçëgðÃñ#‘Ó –E6:ÅÐÈân]ÅÁ–zÇx¥VÙSͽİ$ÝUÙÄQÉ‹¦‹.$È¡Cø¼Ý lì+ñ\¹;†]Ø4ò*%×eH±ÙËȼ´&àÄÚÒrŽÑx?0qÆPS–•ŒÒ0k XÍÃHä)Lî`°ª£–[‘è7ÊyžN`Àp]4ˆé{ãÍdŽdYD…„\C±r…ò7aȺ)»:¾Y H "Ç¿XÆ‹e 4JÇò9­qŒ‰ •¨24ãÁ|d{áŠLY1¦H°fI….,*«E*1Xßv1¡dŠb¸ì¼ è'‹ câêy,e¡ëY^‘æÂu%ÑçQ¥\Ù͘)¤.è¢á|bàr².+ן d,´¯’z»nPk*kÛ^ë8Rß]½$’ £ºN‰ A¶ñ‘Ÿ SqTˆØB)‚§jÉ-Ù-%.B/À·‚Ó€F”R£<|ø »HÂBÃb!©†ÛÕÄVš¤i¹CI“ ¾h¤FlªÔŒç¥‚Ì6IRc”ç8²¥´5Yq_2®Æ6áƒÌA°ŽH’Á½‚-Øå ÷Q™šµ Œz#’óînb ?שV0Ê ÓJ°Z˜»ž8¦xñ4Z›JbÎäb‘$Ü,ø¼%ý c/ÁÛ àøSö£ã Œ=ˆk£ìŽÒfˆqUìøçÁ‘Y°Ù…£Ï~¹"²‘#’‹ ´rÙGdh0cG… pć G,H±ÆÐÇ8ZÁ8Æ!1 ­cDNˆ.Râ¢å±ùi“°ä˜‰n1 ÙÖ¬Yd) ˆ|¼ic%,UdY&‘x¡×áü?_ªšª:Fƒ2.؇›ž÷9ïsÊy+É"\¹,©’ŠiRŒi&)]ó©a83,KhWáXŠñó%±.؉d ,Ñ":YÈæãò ¢Öâ5œT'ÎåuÅi¹k™Ñ, HÛ¶&Á9QM´vÚ8˜ý³ ‚~ZHDZU«ÛTø‚À¸–žJîΛ¬­Ú9 C² °ÏA]r„-R+yù’ëf½>龯ïmߎ?î¿v'Žãé:ÃïÖù rÿ¼‘“þeøøî㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸îã»ÖwqÝÀ/ëÂþzzþî;¸îãÚñí>× ›O2M|¦åì‘Þ­ÖÆ‘…Ù3:ŒñÜA ÄŽfЈA¹:p!^ÒóèÄ]Ûǰli{àHч!Ú¯96 v°™Š+vQ…iX„F»<Á4rtUo” ™Õ:kbjLœ™µQWáªWEDÖÇXðïb|^ˆ9ËY…7K!gȘÉé6™óU²%WHsS‡RÝ7š¯•ºz ð Ãynj8ƒj¸œ­„]ÁÒ¬…! ƒsI*¾U}„Ú‹ëYQåâ’&Òâ7ƆHCí8Ö8JÖÆYi¤UYKuæzJšaFD Åãýlþaþ<(ýdÿ•Þ?ß^ßäë›ðÃx±¬–ÁÑ*l†¢{õr~§@:»B@ã×È»icƒQîóÏ–p\™LVìq€)äEŸ®\K‡kÍÐÕ‘¤[sqhž+Ù–Yìw†ÙœI“œ‡‘Wú¥àïËþQãú¥àïËþQãÚaüe‡ï®éq¨ ®¢ÄT¶™UÝ×Dù²¢B,‰i±.Ѝ„qse˜R:†Ð2$È8 c{xDc£…ôøzsãDcÜ­Óf̘à…5•.L…néÊ÷YáBrœÞÌŠëFE.EE¤GîDŸröH“XÄ‘*®\ø››S²ÖÝnäb\AgkYbèKQ3‰Qaµ– ,‰3b„ògH’EÛÁ sì;ÞSÐB,†ÄË«(UQI)ã)™r'|‡ˆ+Bש0•èÝ#z áÎðNr’;dµô¢±Ä±Po!D$ì9 Ö¤j ÕÑ !’˜5žˆày+nªÏÍV\xo‡i]'lÁæ ØcÁˈ}™nÇ(ɶq ÌÕ¤ƒcÑZž/ HËðvlj2åƒvE¹´«&á™ÊÎ,ÚŠRHÈÆUeÅŒm¹ (S˜ÞA¤£ùÖ‘6l€C‡ •.\¢ŽuIÍÏA]qJ]2+yøq,¦½cÍ… !Ì¥D—£‘TiiA"9ÄçÀ0œÒ£s†A¹¯c•ª‹ð¨ Ï,±\÷gñ*kâåæöÚ2ÏÍž}{¼cD^£qXïqÊG?/wÉ{W§§.üüwIÖ~°÷Ìè‹ÿ’ŸðÉüÙÇýœwqÝë¿ì㻎î;¸î㻎î;¸îã»ÅÝÇwÜ rî#?œž.î;¸îõÜwqšôO:¯›˜Ã$³µÆfâûW?«º <–»½éÝ—™xa%è€5DUQ -QQŽïw°Ý\×#Æuk™íVmE¨DU]çû)³{Z×é#óQµèÔÌBÛyª 3_…àܦ|?ˆ<Y9•í‘âù|ë«BÝLe#’©Œ)b@ùr!JyÁŸëz!WóKVÏ4© ø9µvŠú)0«ŒÐéÍYØRÊ—ÅÁ®Cä‘ Ÿá”‡ÕY_a‡-"FÛ mN¸oÄûÈ4þb=XöÈW„\®  o4‡Œsõ³øa‡øð£õ“þWxü}{’<`o®oà Aâð—ôÿŒ¿¬xð}:wƒì6lÜ…%Ì™/ PÈ•.TŠ‘&Lƒ@yO å{Êcî!Hç=îW*¯ÔÓy¸wòwÔÓy¸wòwÔÓy¸wòwƒ‡(éè!C¥–-l*¨¤”ñˆ/’HðB>CÄ ÆsŽDÅv‘±v%ij»6’·–çfòÓ&ló“#Àð<ò¥“r\  Ø€ýõ¿HÚ÷µp?‚¤‘…i¥H#‚xO|+‘SзX£Ç|’ÓGŒPî¼X}ÑURËÔò“É<4˜ûldk šEƒm%ÚßLx%œÙÒf8ëP¦ç¹íà¥ÀñûðØš;‰·2äÅ|¯SXkáÞ{gì*jêžs–Ýå¹®B<~c—æ³»«kxº4î??üÿÿñÇá/é~ØñôiøE…~uâø0¨8’ÁÓª24‚5’ tU(^`…‚}ؽ¯<$‰K£:ˆ‘å¬9s@dùß“àÂÞ@°À{L"ªÈÑÈáºIåÞT©V@Ë8û²»^GD–Æmá$KHpá€? •(/ GIk ÒZÏGÚV²:4oGš·Œõi&l0îB)ÁÄOÛ/û˜¼xOýýü¹ùò`Sþ7Žï]Ýë{¸îû^·¹xî㻎î;—Žåá½>Y?—Žî;¼}Üwqå¹­ÏôÊþ^»{×-,²9Ê«’"i韹žk…ä`=ƒ×·¾v=^méíU乪ªöíµ3Ìœ0–’žgç©BÎŒo:íµud…b¶@ÜŒò\ˆî›qBÀ±&'\“=(®\ÜänjEUÒ’tøoƒl\ÇÈ`©°Å ¬ "É”jcâ\X\Y™±µ.ÊÂF؃¿6yÉ*Q¶€Á[§+ß¶ LÕ¤lcŸ;õצå¬jgD²#lFØ›@åE6ÑØPhâcöÌ2 ùi#ÅV­.'³$•»ˆ$ Èy Ê>ÃeÎ,P¹N®¹ -õ+ä­tŒ¾?kÕ}ÿªñ“ö˾ä/ÿ¿®~gD=âd!…ÊÒÃbn4ò^©”…GûR7ªy?W>?;øE_ùü~w/ðŠÏóøüì_áŸçqùØ¿Â+?Îãó±„UÿÇçrÿ¬ÿ;ÎåþWþwËü"³üî?;—øEgùÜ& IL³øœè"ïôíš»ºgž^nõãâS¿#ÿIãâS¿#ÿIãâ3¿#ÿIãâ3#ÿIãâS#ÿIãâSý'‰Mþ4ôž>%7øÐÒxø”ßãHÿÒxø”ïãHÿÒxø”ßã@Iãâ3ý'E‡ ŽË,ßaë—£7HU˪ô÷xælo‚å—ÈÔ²+´´ÊçdÏ$EUîOY›ÜÖýôzÏõ8é›ÿÁO²½ÁáR(—Jw¹¹1¹¦]7¾ÛÊO%ž]rË>R«žÅrjËØÄ¾È©žñ2yXˆ×n G¸Õ苞Z‘^Æ‘ýZ™íf™;ÊU̇ÒíhŠWhV;J…8Fµ­j"5¨™""tDDNˆˆÉðú¤ ¿Â,UÅ‚ß#ä¨í+â?ââJd¸4ú‚ ì5ihÅtw×ÓÈ3+Hu+½MaY82mE­liÐdÇ› lpˇ2!‡",¸²ÓG“@\ñ9Äö&Ü2Í{­T_ðWàâ|{ªù†ÙŽ”H´ÖWè)µ¶Y $Ѭiðý42¥|ðW¬Ò©/û-¢Ø×,¬=ƒëŸ»޽‘É'I™ÏN+ß.ÒÇdòf>7iYÈ—?”I% >c•Ž©Cjq‹ƒ"Lp|Œ7Œaˆ“e3TN|hŒ{‘Ò$6)“£È‘bI­Ú^ß p_&;fÈ„¥Ç†ã %,"b0Ì’êíÒLjYðE$ÌbŒ›…s] (ÿƒH,“ÓcÇŲäCi†²i0àaÉ4tvè£Ë, ÂŒg±rB–Á9ÎŽdf y1ÎX1$I †RB”üMo9‘¥±ŽWGèSaÌhLŒ"Å—B7hâ{¸²Ã2}ŽÀz­0äµ”h¡…ˆâÄ–ÓËpƒ+r¼œÑ¡ØÐå;‘• ‘;Ä’ ŸžØÝ<Û©;B([ØX°ŒæYŒÍc0ýÅ`B×XþhV¦š{X²!SšÒľ(¸CþiøXÆ"áXñC<ÑBói›ˆlDs$ø19ñ&Ù«à¬èÊyQeSÖ^’ÁõÏÝG^È䓤Ìç§ï—ic²y3´¬äKŸÊ$’†1ÊÇTŽ!µ,¯e‹ó3×ÔÏ©”6HÙweÔÀ¢Ÿ† l"ȯl£ÇŒY;0ljÌgòÐLÂdˆÍ™n¾.´¨Ä؇aDˆ7ï4V´+ºÛLt8bö‡ ²M"!Ýâ #¬yxÃÈì,‡È£q/q<ÕZÑd™^ÑSÆ›*î§št(ñ"‘¢II>]|y8^=À¬$DÂö±,Ó…›½«Ë‚–Ó—’P*G:½·aº®ªyR>\šDœt—Q8–?²RcO øûa©¾Ó´¨¥L‹¹wé—\ºÙ¢å§‚,Æìë|vŒ‚{ü$d˜ñü‰â0²L0 Ò§Ó˃3^W5«"lÙáÄ .ä‰G pµå+¶‘&8 ?[Ä‚#b$ÙL¸ÃÓŸ#ät‰ … dÇ(ò$X’d+v€W·çV*Óoú—À‘ ò1ÂL£5ÖWM€s#{cÀXs B24Ëx K2~xfúW)…q´‚Ÿ’›ZÉ©çíC¯c''’]_+d_šüì¥z@Sá¼Yå¸Êaç–ykÄU Ï.™åŸviã’Ìü–¸NDýSÑèåÏ¿ª ¿c§zøð‰$œ1ÆãZÇiF Ž‘.ŠÒ$@#ˆ­E4©F hâEÖiFŽ#ÚÕùÅûNWÜ_Ç”ö¦^lúõýOÚãÉM]ýW¢{‹éTþç#Ï5TF´iÕW¹2ò—?F}üf_Ç’.nòŸÕz ¢§MHE¦~uEN÷ 6ô^bVz\ŠÖgµ¸V¹^-MVw¦þh™#ž‹%ù'ŲQç’£•¢DÓ“³î.¥sMKòÇk£—á\1Ò¦ÅGâ«LE:¢$H‘OÚ%‘Æ}E³œq¤ÑbÉŽy''æ|’ÒâŠZûÊÂë^Zx]ƒ>9âspÒE}€ãÊ8ö0Kt]׺4=uq,ž|-H¬…6CuáÌ_R+Ä3EŒ“¬^qW[UJ¸$ªøƒáéC¬rÄuš´lþÈõ'€1Ç)ÿïG1'joüùßÕ.Ûä·»;ô;]«”×ð^®zIë¼#â?àÿʰåaª±Å°7æ|¾€ªD·ÚWɳÒbB»ÆÉ±8d±H^[ ÖîXšIxŽÑ±%b9¡”`•Ñd‘vëÇÊÃh롆,QG,‘É`I2ÏÅ®¥Äö6ÎÑå±%ZHYÕÜ­”9¦ØH–r> ° ·8Ã(š·¨$‹ê—ö Ä\Ž÷%Û´V6ÜŸ3µÌò¼þ6‘Ëó¸7¶´îì‹^­¶d J_ –öqw9k¼-"¾t}à’9¶%ÄÆB-Øå( ¶Fë 7fǹûÕ/„ìAáµ»/’íÖØ·±ùÑæy^~þóã‡8 í®WóˆµïyT>¦¼'b=“Úœïa6ÅݱÏöw-Írôù3ìîó_Ÿ‹£gËÝ=¥×†K ‹9[|ͦ‘a:FÈG;òåã"È.ÔqÜ#´crc‰+ÔׇlA‡yížw°¨¬jyÎ[w–æ¹ m˜åùƒìîêÚÞ.;Ϋ]b{ eg_Ïs8’Ñ$$ëjÊdÐ碌 IG’(ÜœaŠ=;lÒð:¼]YÍòœÓêìc™ñ-*$KޱÉ"±þäw–9ur¤D„Ið%ò€FD­ð[á'ÜáX\Ënð…VqG€¿œãŽÎž=…œ¬žBÍ”•§ÂðVÐK9+Š–¶Ó”´Æž 0,qüËl‡n15¤ƒ7ØÛ\xÄ¢¬yXRI,°;ždˆ‘B4åÏ%Pòâv…æ#º–˜ÓJmÖ2¶ ùVŽ$ëâr¾,zúèÑ«£¶<²s,wÌSÊ7 ÅÕîjŸ Ò9Ÿ  ¨Êª1&C4y°¤#\@¸Ñ$„Šy1çÅ“ $±¹ð3áfÂŽAyNZ“Ba`ÎЊnß²+,¹fL´—U¿‚ärf(B=©ëTt;K¤Ç–]PUc+»šÒ>)’4ºú»™*¥È­•FØHX£MF,iÍ%!˜ÂòÒããþ\à~.IJTÄ‚9¨ S‰[U†©ÖQ,  Ut[YõŒ²,¼+ÒOØXš·@ë±4xm˜fÁSnH«±‡ÌCí*÷k1¢ ÒÀjéÏY1Ðȳ‡cã Ö>©l$Ä…("–ºF ÂÌ"<*ˬLÂÄ»‰_,rËÇ ¡n«£Uˆ0+má@“W'áÉ’0Й† †h¬"QåP µN«¬™®˜)¦‘T݃Žž9D å˜Â®ò#ÿT'¿„) –(wU¶±G)ƒ(Y$qçc“‰’#œM3X„hÌV#´‘è±§Aðµ"ØR.Ș<‘åD•4y1¤0 ±… „öDk^Ç#‘ЬCuá×ã*Êþ{™ÃvŒºH6<ÕlÈAßYx¾Ò?À’$Šx÷ ŸÙ¢NÛô˜:oÁµî× ÊŠG °Ùx}^8öG—Í9×¶€ùUÊ‘ÂÕÊÒ`'‚]HÄtùãžíƒA‹Ž!a7µ0ú<‘ëO(Z§b‘j,Uc™©ù—0óÏ.Ø‚¯Æ7ùmš‡ÚîmojìŠócNà²æ»;•ÝÔ»ÛÛfÛÚŠ_îûïúqÃ?~á|ãZ*wötÜ¿ƒ…`Ú¯r*£‘ªŽÓÑÙj~{MEVªyDGz½3Èär«¤c›œº•ºS™å/zhhsUT]_+Â{á3Oňó¹¯Íùe«s£‘ºšb [šd‹£Jf!ê'ûq|²|·räg’åjíµš›–½]þð²&Íⲥ˔QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâëNØ’ËRÄ>â, 8™Š¶>Ã¥ÎSYͲC¬GÛ˰’µ²2ùä¥ÄâSºsò·q¤UŸG3!YGØl¸"”q‹)Õ—!"2Þ|“µÍ—æÂ æR¢KŠQÈ*4´ ‘âs„`NiQ¹Ã Ü×±ÊÕEõøßéCýæ›ã—û‡þûÇ~œpÏߨ_8Ó£s\Y ѧV½BzhÓ×V¬òÓ—^îÍ9#±$t«ÑSQ5uÑ2b·J6ù+¶¼d¢;,œWyEµÏ7¯r9ZŽV7HõuF'¼<|['EÆ.ÕÚ&Òxxj3Óš×±4£öܤeh·¢ÉeXE šHÄá>yO‚ì¥n\á <†ùµH™†d½y]óO*GbJWÖ—f,hµ†Ã°Ç¨„__þ”1/Þi¾2~ÖÝãÀ¿NXgïÜ/|éfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñsŠ §lIå©bqLÅ[aÒç )È,æØŠ$…†ûiv@Ö¶F_<Ô¸œJwCŽ~Vî гèæd+(û —RŽ1e:¸Rä$F[ï’v¹±òâ<ØR2À TIqJ9¥F6”#œNpŒ Í Š78dšö9Z¨¾»}(b_¼Óx“û`ÿtwˆŸµŸ÷Axênâ0$•OgÒ0ä5îŽùò…,,;FAÁqÔ#FQ½Xª#''¾l|?_/aŒ§:ZԚûÁH¹Xò£<@éËSY0ÞFͬ³±JÅ1c'Ï8Ád]ÿSw³ðì9ò !Õ€‡[eRs>Oµ€²$£ l+ÉëOP&,’<˜ÒÃ@ Å€p‘2„£s˜A½®cØåk‘QU8•û`ÿtwˆŸµŸ÷@ûèßÙ4 5eY߇hñ¥Æ}ED‰¸óc-– Y„›r'½d¨™b‘G,ñ£ÿ= ÃÇ(SÙÒAãE­à Tº#´¦Šc˜®—K¼R#$¹7Bzó#E½tŸÛû£¼MnYïö¹&î~ïÄò˧~~l—ß>ú{ qYÚ…øv‰ÑO&$–[[Ç6K60L自†9·#Ö2•ÍŠ9`“ á>z#Í… ðæC8¥D—¤&,˜äiA"9Äæ”' ZÒ£sH25¯c‘È‹Å,€Ý ]Aiß2¿“š'¾-” ÓFˆùŸb P¹¤Œ!KØæ@ŠËëdþØ7Ýâû¯ÜIï¡Y‚âËÕ]†à†}Œa¤Ñ² V)˜’ÚG¶ÎN‘Ð ^pî‹Úö€YNy?ÏN#ÀSeîvnÞ! ŽôšRŽ’ò·¢\òA4âUÉ 1¶1I6âÊ^R·èÞ¶CsÏ2nweñTBåçöºòÏÏ–};¼Qÿuû‰=`%Ä8eE”È&9Xhò#™ˆ@œ¸e FæeœÇ±È檢¢ûåØ[Ù—®ªƒ.Ê|²›bL£m…9v€'¿l#!_–‘±ÏTjÛßÍ`2òÖÂâXâµìŒ96rÍ4ìŽÂÅhS9Ò¯F"#È÷fåùéÂX”ï¡Àµ¬ 2d=E˜‹Uo) †¼É²t¹Z&•y‘‹8ò[œrzÙÑe€Ñ¥F*G“@ÞÇ8Fј ¤„F¹„Ú×±íV¹QSÅ÷_¸“Ö`_¤ì1÷–¾]~7 Œçfcz„ Ü9&ºÈûdl‘{iÀòÁ\IÏÊ4çíiß Y@2)‚42â®¶vÌsnЬ£ãñã\‘V(ÄJïu{vʝ¥t¢&~„Dóx¢þØÝ[â_úNÃya{ã4 (Ì'ûR í Ý’äº^ÅV®Jн2ñâ›èL&RaÛ»xƒ”Ò>1$ÖÖɘH`ˆ¸(Z…hÌ"9Šäa윉óÝMˆ!0™Gk]qršGÆ$šÉašH`ˆ¸(ZÒ´f5r0ŒvNO3úfÄ_ìüQlî­ñ¯Î5ìè¯Ú•šÎTbécöÏÊè#^7è#í/k˜ì²sU3NÕóZ|’ÙV9‚;˜À"1Ï®.˜åY Wâ™ a}†+vPeY4Ö1ç™n´jæžV3™ŠVŽTmÕ T;áó¤±äÅ8Çÿ£üKSOOS‰qÿH¦Ã¯­­¯‡7ö(°áÅûXB?jÞ Ÿø`ÄN!ùžv?«ŒO{{k˜d€ X’W4AþʼnSb×ç,/ÇýÓ˜ÿ÷¼Eÿ_ø²Äuñ=ä*:{›«‘XßbúL‹S žÛ¬dkŒ@)ò$R›¦QêÆ2:n•§#ãVÒÕøCÇò¬î,!Õ×Fõoxbu„Ĉ 颎-Ù÷Q…šµŒb+ºÿT~/¯³vç3®v+¸‚,ŒDÅŒ¼SG"F¸è"r®.Ñž@7yƒl‚ÿÝ9ÿ{Ä_õÿ†Xâü[ÊæGƒ±Î0´Ù£:êåömœÎaòU[Ù1,ypÆ“")m#îàâ<]‰ïá YK;«û[X£”Ëì4IyÒÎ&H`Žq4Íb£1XŽÒG¢üƒUP”’1. ³Ž–O®lÕ¨‹ ™Ä•SMdúû–D™±LÐcÆ"íÇ–y‡„‰–-ê#Ȭ›Y ®i¦ž¥C”h@“¾Xï)éÎWÊ‹[e*-q'’ºwÀ p6üæ4~™–/åcév’ j™Ê’Ý& ™°$g½™†‰­ª×pjYÉ“ÎÖëz|X-k'BáüâAMxÑþVÒIŸã“–ßõG{KM¹½·É옇™Ñ´NcW`ò›:—5Ìn®ÆÉ“ç¿ÍˆÃŒAÃp)ÜÙ H²pó‚kÚƒ![°Y•‡$W+Œá<£ \ð³ÅŒþ™ñßû?_Ûû«|kó‰“Ó‡îSü]'ÄÉP¤È‡(Z¶¤Ä1#œzØá¿A‚æšÆ÷1Ú\š˜ç5z*§‹|>Û‚Ýæsh­€4åÇ«{â3öÂ3?D¦²\©%Ô{6µ2à=›iš7D­’öƲB4 $£HerûWn'11nAOTù†kÚúrÜÚây±ªH•¹Ka`†¹ÅƒKŒ(±æ ö²)|Ì«6E”'1¤Èí„¿¤ eø;cǃO§üøE]ëMA_OøBÃäǯˆ’•++Ë[*Òcc \WÈ&(ÁÒæë"ÓLlhŠ»!¯ù‹`°G¹,zpáÉôŽ•¶TqÆ›if P˳™˜åu"I¸Qˆ8„' L§VÞHÄÄŽ˜ƒȪ4ˆ0¦$ȵµõЈøqô†öÀ¦ÚÛÉÑ&XÖb‚°d¹Å7ÎaäúàÃÎ .Ô7°nöyLÒcÜÑóQœZ7¡Žãu†O®’Hv‡‰(ZwN¬îz9ÑÚL°8µà žæ­}ÀY´“A¨ÌŽåå îÈ»… w"Ëã¡öXÉ=ñ&ѫƧ‡þ³T9îTZ« pZO÷f5|³ ÿ †1?=7çÂuD‰à9pö$$¬fÉQc%˜Q !A2ÚEé#Ê•­JAÊŽ¨¡ AâÆæ‹dÄ»²žÆk3‰ka&Òu ïjoÁ™úw¹¶f ÍxÛÄ_Ûû«~rqzh­Óþ#Ö´+ê‚ gäO+›=Ÿ±Zi)¨Åb¿žì‚GË7ÊNZØÃçy4„…79^ôs‚Á¡f0 |b9ä#žé™! ”³š®ÛA€a°¡0žÒ¢#Qã(ˆÅVdb£˜öªµÍTTUEùšÒÖ r˜/bŽç;›®Ž„Ý‘(qÁÙmXãM\ø™–Øõ9IKM»½¹Îo˜‡˜Ñ´>_Oor›:Ÿ+Ìn¦þÈ~{ñÎs³,ê©îF´|³cQË— [ õ"§!q 'Gkñ¸b”¤ œÁ4Þ,Mû^ƒï oŠ/í€}Õ¿4`‚¶âÖ¼¢ŒW „¸‚q]afÅ+†ŠE`ØÕz¦¥k™äÔãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“ÇèŸÿYIãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“ÇèŸÿYIãôOˆެ¿¤ñú'Ä?ÇV_Òxýâã«/é<~‰ññÕ—ôž?Dø‡øêËúO¢|Cüueý'Ñ>!þ:²þ“Ã#Ÿ^œsB`–ÞyatEä+21U¯c‘Z檢¢¢úÞï¤ÓXH‚÷eºÑª<Ò±œÌB´‘dí!Š¡æM—½H-ÉÈØø¢'f¯æ„D|]þËÙ§FÉ­Žm-Žñžò?” tc] ráKè,ô½¹ª***#ÆA½2ˆiBV¼EcÇ5>y‡'@¡_ÓÙRÌ,G ’‡Ö È$g˜G$0G{‚â€Ãiªñ¹±j0$2ªš;ÃedÊ1 Ó&K’eFµdM›"D³4#QÎHÑ¢°1Çâð—ôŒ¿lxðiôÿƒ«½f º¸íYà<@ CE&¦‡Ù…"²ÀšLyó$V×’F‘ syF6è¬,¦Ÿ‡¿bªzb²8%¥y¤ïÜš,™K2bQÃI3c¬–‘Ž4H&ÐJG0Q¤<£Ÿø³Œ?êÿ ~ÅT÷%|sËZðÉØ¹ XÒ’¤Ë£˜‘îaGI.ipB2!ãnx¤Çy(ÓËíkæ½Mۑռ͞w—ær/-»ËŸnÓÔUçmv/%Ú_™—Ü·hó|ŸÇjø;ÛÜŒ¯ˆníí{.c×ãäo±Å8¦¤‰± »›¿• Uyq¬ãÐF³-Tû[6LŠBr&½Ñ¤ ¿G?ñgÕþ ;^S߇D,Ê[(V±G)ƒŸ’ ˜âd†à+‚ç¡3 êÝ$b¯ŠÉ¶˜ÿE‘OÎ%ŒT†´ŽjýÄ—²cÉ-™lñ=œ„œù å‡òµ´µxËš³¸°‡W]Ôö*1:Â@âDôŠ1G삌{‡(ÂÍZˆF1ÉÁë¥ãÚòÈ·¸JºûËÈ.ÝÎÝ‹JZ» ÉY0BrÒ˲d$sh"Œ…±=„ÒÈ<`U˜…ª¹’HÑRiÝ–ÜP-eÇ]Ft¸ÐË ÉMíQd ¾nÆ#±å)JöŒbÚ®y÷*5ŒcQ\÷¹Q­j*ªåÁ®„U‚%An†u+G 7”Ä<—µ^m§ÈprˆCw ÂðÙ•àÛC~̸¥i‚DaQâ"°Ãat‘Žc—£Ø¨½cÛFf½HpÜQ°¦ÚM®ùü“ÇR0%43Æð{m¸öTóoœxªâ¹Û²…O0•¡Ò «ËWB‹qZ¥6ÖéÞS¼…wÏ}L 0!ª½§šâ´Ž £¼—í|UaÖfQÄœV˜|±$1…pÌ/&ý¯A÷†·ÅöÀ>êßš5ûz2õ;Û#³Ï´­½ Çõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÇõ¯°ÿÇÄLöòæAžHþíÖççõ½ÜwqÝÇw“Ic" ÝñFQà>–Œæb•¤‹'i ]ž`$Ù{÷ ™961Mk#±äɶ-*„-s‚Äæ`œ§:ŒiÌÒ#È)t Â*÷¿7«'UM>+ô¦ìr#ô=ÃvNÏŠGÑ”n$c´g´B‹Óä HËðvÇŸOø7ðлֳÁ‚‰Ö3¸°‡í/!É{"u„†A<ÒQň ­ajãŒ8sS€#2ñ|<Ûð…`*Ø‹ðÅ:¾®Q’¹¤ Óã>žÂæÎH+êmŒŽ0ǽ!ÆÄË+\{u 2ñE•Í Ü;Y£²“Ìͯ)¥0[<Ç"G)VaçÏ•aa7ŽÙ¤Xø[Â=lYÑâø,X2a qÙ=ä¸,I²#µ°¢‹wlè k7Ù•v> Î"ØR0|Iå„‘åD•˜À2#IŽf° ±â0JÆDk˜ö£‘S‰ØkÁí*K.[…Ì̇½ÉÌ>?Á$E–=¹q@_b;5èÐýCsØéØËÁ‘‡&áÉ*+gÚ[Eº‹mi_Q²n×°–XR![%Æ“è7%Å•C¤E•]áGë'ü®ñI:LxP¡G4¹“%˜qâÄ‹n4‰2dÌ#€LyLb½£Úç½ÈÔUãýl¼ÛHÃX$y²/nÔ¦…*+,ìçÄibÍ“NVØ2NÌkdI£™ˆùF.œ7& ¯‹.-z×ø‘"Ù„†d™+irÐ\®jXÙ$‘õ\0H±"ÄŽ 0gF6Øæ‰2°ŽDYqd Á‘Ls5âDŒ#kObâz*о}M”­Sg¬ @Xã2\ê“En…Y^ h§•BÞÐQ#ÕcJ¨ìuõ ^»elmRî½å=9Êö0¢{Ë*šQGq 3VÙZñu>M…mÝíí&ÞÕÞÛ$ä2w?8à‹e&Ê‘œáan©xD‘"9‡ a®kžõ;á~š‹Ùå¹ÎÉÆqàs\¾ìŽ_˜å÷vw͵«Fé4ë[;»»9ðù¦Âq7)åciTä‘n%ijaÈeà)ÁxÉn¤¤tºÒL%mEEq«¿6WK[_OYs–®«‡¾ }ãA¶"D£‹vAJrmºÌBÙ½îU¶ð‡ª»7Q|nJÖ¨q–Lu¬ëXÑZÍ6¼ä«¹X‡KÌè œ;~`-‡.¦Ö£È‘c{ƒdWÆu¹Ø›–4Öa‘ÙN)d³®#–¶Èe’0ñ[ZyŸdkNù¸8ÄÊU²ê“¡ù<5‚w²g¶v|ñ´Çn±<˜¬± ²r' ñêý"ý§tþ\¸-¢è®¿É¸L„ €¢òêÝÉ#»D:¡¿l•2c*c·&1xÇÿNØ«ïìÿŸOXKïý~× ûÃ[â‹û`uoÍ+ÿc'øÂÓŽî;¸î㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸î㻎î;¸îâ:åÜpýѾ³»ÇÝÇwÜ{^.¾D˜2Å«jLC1Ç­ŽôNkÛ¬os“º±ÎjôUNš Ú3üЯcØ7âïöX™† ¬Üà›N®Ù Góf^¤mE˜eZ÷#«KZ1›ZÉË%,tqÄÎe¢XêGm¡7ÍO†øKú@Æ_ƒ¶¶´íÉ$œmœGw6,ùów4I°´¬—ˆ´Åæt½3f°o‘|8X®°—ˈ)éîƒl×8ã_Ñ=jt³ãˆ ŠèU”SÊÖÈ4Ø’§ŽVè…*Ù†ñ$ÃG-Ï.JËô ˆ¦"\ÕÐäH–€Š*ùÂ{Ö×$`¤H¶±˜ØÛ2 ÅÒ_á*âºÁµò* ‹î.ñaªˆ’›æËìê±T¶ÁƲìrÑUUK€kÖr¥ŽJÌ["%o‹ÁÆ=‹;Åž¬Õ–ä,YW8KM¹“L`I Þ\Mµ¨S;8ÈqËpâÉÝ ös…m£ÍjÇŽiÕ®([sHI v2%Õs RÀ‘»XÄçj‹5#’Ml™°”R‰âðû$4¶´—¶Ò¶l€NH6Ó¦TÜYb3×N—¨s4]ÙIt±Ä3ÃÇHq´@oçëgðÃñáGë'ü®ñS`jYü¤¼[ÏH¿tIÁdæáÈdf×Hˆ‚t±×â)rJÕ–9$4v5NI±%Øxƒ¾Di·øœ‘™8É)ƒ²¦¤]…w*Xñ-gâî—y’RI‹ Ät ?ŽÙÔ‹palO>µðg!ÊÄXE–HñB²{à,bG¿¦dI`œÚÇ…„,+ºÀ4 ‚QÆLy°¦Ç ¸s"r"Ë‹ m4y1¤ÏãœOaBa=Ã(Ü×±ÊÕEñbì;‘Å6ÿ½ý,2Ëqr­q|¸1É%áÊÈì)Øã8@14r°DvLZÚZ°rµ”õðêë£nܼøã‰ÒYÚŽ!på!Ÿ§Q÷ª¹xð—ôŒ¿lx¿ú@´ü"¿7cX┥sF1 mW<„{•Æ1¨®sœ¨ÖµUrâ]±5 ÌMÄMYÇ‚/"0´)ŽÑ=YìÒX"l¬³H+œ'ŒŒéå5È™÷gæû Á©žh¼N…£m±ä•‚f­YV yY¹W0«ÊUw_/ÊÏçÏ~× ûÃ[â‹û`uoÍkÿ‘c§ü:ÇÅÝÇwÜwzîî;¸îõ½ÜwqÝÇwŒ?²ùÉðŽî;¸î㻄FùF^áEä=z9rÈMr7£\¹½ZÔF«œ¨ÔUà2¬Q!¨^#…±È‹9…·5Ûâö(†šˆ $µrjÉ@Dk÷Lm€ˆ;Ò » »LFnœ«’ÏËQH¾Ýê®óü7Â_Ò2ü±ãÁ§Óþ ü"®õ˜0qÖ­ÅÕÔ‚¹¤æ™*‚80Æ¡PMŽAbYÎ’×€„yDPµ†aü(ýdÿ•Þ³Áw×·ù#Æ>Ãt…UqKu­i9§Ê¿…2 Á™êU£ŒXj £5€BËR”ÍxX(>*ÿ±W >0oàíwÔ·Mål"îž‚üi'QÎ#ZŽ Ú®5_+lC´«!FáÜÒE°‹_a —¤ „HðµrØßNšè1¹Æ†mvqΓyö©RÞÖWÚFt˜ð9ØúžáEÕ~(‰½Õ‚F­„ÒØÕº¦îuƒFäXÚLæyƒž[$KQÈ8ðÏeîf98‹ ”Ò ŒÅœÆ†Ãò÷,"×ů#‰4ñm®§ÑUaÕ“›h"×â ?aÖšÖ:Iƒ:2®ÙG›˜ö¹k + \I¨r„h²‚!(›Æ9úÙü0ÃüxQúÉÿ+¼Wd;†©è)`¸-#HX§®#y%«ÊF¾BM¿˜&¸,ùQÆb‰JœØë›ðÃzÌsõ³ø‡øð:`㌠§-+¤`Ö.±›‡ ‘ÈR™ÜÁaUG,·#Ðo”ó<"œÀüÿÿñÇá/é~ØñôiøE…~nDèk0oÏ*8ãx !´ cV#NÐx¤ù™úcÁ4w6`ˆÆðž5࿪Urtý7_µÝõ8mÛí²ØÜõÛwWeäÊÜšÕs·sUÒ?Ÿ6lƒÌ™3ayRåÊ)$I•&E$žDƒ•Î)Žb¹Ä)Hç„sž÷+•Wʼn¿kÐ}á­ñEý°º·æŒEÿÉÿ–Oõ½Þ¿»×wqÝëGÓåÛüäøG^<¢j_C:ý¾û}üh«¯r§œÅòFÌÚâ5Î{ôµ­#Z¨5V«^îv}Í=ä·Èêפ{S-§"ZªŽ^…X5V9©†óñµ ("³K[FÖjFg§[‘5|§.§«œ®sœ«›•WáÞþ1—àí >Ÿðoáw¬À8„Žª®.©d Î'4ùWð¡Î†@±¢tq‹ Nl—<ã#Xˆ!¯3ÁáGë'ü®õž ²LwMË‘ ¦ÊY¤Ã‡$ÑÑÛ¢,°' 1žÄÉ [ç:9‘˜û¼‘Ö­Å-,q5Äæ™*‚ÉÓf(MŽAbX-Œæ„y- µyø ú@«ü"Å\x4ú@Á¿ƒµÞ8ž ¤DŽÏÁÅÐmMf1l¦\I¯}J§ÆGHØP¦[¸ášò$X’s…´Éo1 ómc¬iÖ’i`vÉGʶÛ¦– ¬bK0R¡ ‚±LJÞgÁ™=J݇•k­,¬§aÉÁC›!äIeµÜ ÃpÎJ‚æÁNË &Ì?ë}ri)±,‰õ“*-¤%héñt1;”±gtWËÔÁ+†HŸ*lIæ¤Õ×ÅñcŸ­ŸÃ ?Ç…¬Ÿò»Åq:A#¼X–ž‚ê Bâ8‚Š ááÇŽZ-ÿ£/ùœ|[ÿF_ó8ø·þŒ¿æqñoýÌãâßú2ÿ™ÇÅ¿ôeÿ3Œ›º^žÙj'ÐöG ÙýLº÷÷ññ)`?ôÜ|JGØý7‘öÿMÇĤ}€ÿÓqñ)܇þ›‰Hûÿ¦ãâR>À鏸”°ún>%#ìþ›‰Hþä?ôÜ|JGØý7è¯(ØŠ¨,³sÑ<Š«—_2/­ÍÊOuQ?—m­zû^ìþŠú})Ÿ#‹7/µFµHþW$ó÷/ÊôO³ÆCcòïwFŽb½ªìÕ€½*ÔiJ'fÕj5\ˆÕa%8’äuWyZå1SF¤D/ç;" Ñ·ŒB £‘È0‚sÒ1±¬csUräÖ¢"fåU\“ªª¯È>þ1—àí >Ÿðoáw¬Ä˜nc–ç—š*ÿ±W >0oàíwÁ~)øâ…_†)ƒhy •$q©­oq…EÔ¶‚óE‘ª|É1™y¡8Ò›œbøü¢¾AfÜÈðn‘’T²•X–d9V¢¤xð0þŒùj("À4ãµ®æ¤?Œsõ³øa‡øð£õ“þWx©±Í,n^ç£ß¶$¾s°ä¶²KldKB¶Y+ðì¸ÅrÄymŒËW,(‘, LWƒ·t]ÃÄÄ»|vóUvUÕu{°Ç¿ÍŸ—U¢Éü³cÅí*–36ÇⲺ´?+YO_2ÒÆNÙËÁ¯ŽIrϳe]¨â!6À"útŒoz£V@ƒE|,U‰î1EêG)´tlkgù¢ÚÓ‰’#¥]dÙ•â…"æUpd0 •¥#Aƒ<(P£†$8q8ñbEŽ6†6ÿÃl?¥ññ·þaý+¿ðËé\|mÿ†XJããoü6ÃúWá¶Ò¸øÛÿ °þ•ÇÆßøe‡ô®>6ÿÃ,?¥qñ·þaý+¿ðÛé\|mÿ†XJããoü2ô®>6ÿÃ'ÿJããoü2ÃúWá–Ò¸øÛÿ °þ•ÇÆßødÿé\|mÿ†Oþ•ÇÆïødÿé\M ’ 'ós]¤ƒ ÞÇit•k²r"ääV¯r¢§‹Ër7ù~ÇNoÿ>ß_ðxòUÓ/%?ç\×?¡Ç± „Ír×ò¹¢g“ˆì˜‹–^ÙÉæO:p«\AjDW|F?R+u!‰“Ì6èvòG‘‹Ñ<­:Úãµ² äªR:94¿'gì²t?q¨¦vÓÄý.Œœ ‚6mÏHÄÆÍUË“ZˆÔÍʪ¹'UU_§a¬KŠû6î·–çav$™³ÎC>?Á)åD&äI@/±ú5è~’5ìn"ÃØVU†*³Å~îˆkº}L¾Òˆ•Εc"ê$)Ól‰Q] 2h+Yk RøÃX—•ç½Nâ kÞK{–ç;&Æ<þW˜Ú‘Ëó¾ÖöÁ¶µkÚ& rñ…‚înUÚaÛÂ΋ ÄwÉK â±ÛÌcd–±‘J46Ô„(iê*ó¶»’í/ÌËŠî[´y¾Oãµ|íîFWÄ7vö½—F±ëñ3Â'‚†v~3m„y¶•0柴§$†x’žy=^ #L»t˜¡²Ðë17ƒ:^·xb¨O5{Qä“Ã6ƒrAtðØÊY`Ø#XùQ,¦“ô*æØ¶¦¶LéÒcÂ… 9¥Ì™,Ã$Xãq¤I“ Î`cÊcí†×=îF¢¯Â_êï ¦ìxÄÃÐ͈ Ó°[<Ö1V $ÄÄVˆç¾,JõŸ£M=òµµÎ©²9ÆçŽ\PêÚ:ŠéD,Z$°¯PXÎK!O¸Ú—.¯–ŒéTÑÌK »SÉ„z®KŒq'cÙʯ #v=õ†¸&‘* ϽWW6;uH…${o+L›zœ4cÆç-Î †ÓTSÆÃfIÌd·)ösŸjØË<‚Ùq#HÎRÅdÊd92 _ Ób›YbçS×aÃÃ5eհ厖X µ‰.¢®X¹yâHèÒv%D”’ch‘Q¬&ÁĸjwiRYs<”ÞZd=îNdˆ>Ÿ,±íËŠq{(¯F¶j˜÷q‚p#¾ÖçW:Ë:FŠ‚ëL™.I•ä yÌÐŒòˆ0¸q#I”ðÇ$?^fWÀ‰½GàëÂ)5XsaÊ °B«´)^‘)±4DrAѧnÀsË=M¶,: ˜óaMŽpæD0äE—@ÚhòcH ž#Ç8žÂ„Â{†Q¹¯c•ª‹ÄÏTxš½,áäÇaÚã ˾A ¾Æ$u¨Œ÷H…ÎÇk9y¶½ŸVŽ“™Ÿ’‚÷b?Þpש{»>I0^m‹žj¸%¡eA¦ÜEbnv‡br•ˆä†fÎ}ñæaºÂ%G-;âYÝ›I[Ës³yi“6yÉ‘àGøyRɹ.Pì@~zߤm{Û;àÙÒ1ÜG"eJl J˜´±jm+í÷Úõñ 6DÒÄdHÑ¢1FÁ¬¹R¥Çtx±lq\L`k1ñ?arÖ‘à¾|Š@Cvˆâ8–iÍ>Â4xœtüÌåY\¬v8è{¬kÛ‘l Vy<•~‰ÁY³i‡i617'w4´Šö­“thóaMŽh“!ËäE—@ܤÇ3^#Ç8žñ%c†Q¹Ì{Uª©ÃÕ˜emË$€ÖÃŽ,AB&g3T… +ùy±*Žeˆ1ÎÄw”ô‹!±2êÊTRJxÊfF‰ÆŸ!âÊеêG %z7HÞ¨ß>+dZáy2*‹1„ºÙ±k3Üí8A’y´4ðK\ùF“&8®o,+Ý[K Ö CåñBr؆½ÄV½óG3§úåö_ÿ¿þ®{ÿíoö_hòŸÿ)ÎòøþSúÏu°q<\ßÈ­ƒ¢] d¡ÙÚ [&HkTÉ ”vE1Åbjö‘öM$l޶WV‡åk)ëæZXÉÛ1¹x5ñÉ.YöcŒ² µD&ØC?N‘ïTjâŠl-k#Üâ:{8a¬º©AÝ@•ö²åÛÕÄ/Eq6ü©r–4mãM„$¹Äêkzy8rtÈÙ•›>²s-]ƒ!gGŽZÑŽ\hùJH§4˜¬™&8«æ—bNس‹^[CÆì{êýC",BzÒ®wi‘60öØWw54jÆÍù±"d—íLjÉ94½ú¸¥~µÏv–5WKç»,šÕ^œM¸’Ý%œu.ß»!j4Q£ë`‚„å£0@ÝQµåÛÜ'–ç/ ë—>¨½‚7¿KœŸaràsQQȨ¨©š*/¥‚Ùù.òU|ì_j½ÍÏÐåDËR9ç½°ŽÀ4X{\ÓÂpšF±ŒÈWî|¥y×&^K\&„|°ã±F¥i ^1ŸÓ>#ûÿgâŽÕÏ£õôô‰ªFýMLLýÌû»þrm_úJÙÎþæ)Wo§õ¾OÐê¿W?+Û°5ïq:;-Y/±û}]êÔr1ª‰í“4Í…p•¨Åæ&¦Lr*7S£ÆËQ‘ì&à•ù…td’ôφ«Ø²ÞÖ5¨‡Fì5QŠ×mÆj ô;>Œ6þÞ–hr9º—äCÚ]`|!qg+o™±´ÃT¶¤l„qÿ.\"È.ÔqÜ#´crc‰ýM0÷›‡'qýM0÷›‡'qýM0÷›‡'q+ÔÖÃøwžÙç{ šº§œå·ynk˜åùƒìîêÚÞ.;ÏÇÉâ¼9O~&G›;ì`„ò ŽÀlÇVNVóµR Ñyºée0€Ža™…^ÏÐ7üfÆõƒ‰^¦°ÖüöÏ;ØTÕÕ<ç-»Ës\„xüÇ/ÌgwVÖñtiÜ~~!ÎÄxG _ÍvÄ˪ «YCŠÂÌŒ9¢¬ŽÂœåhZôHb½¨Uþ¦˜ûÍÿ“¸þ¦˜ûÍÿ“¸]-m}=d]ÎZº®zø1÷ŒI؉bŽ-Ù)ɶ6ë1Gf÷¹WV¼û&õ?ê_´¹™Ÿ»Gµ¹O˜ìÿŽÏÌò¼çõ®cgØø=]Õm}Åd­¾fºÒ{26L9߉,eŽ]©Ǹ7h0ÆFäö5RLÃ`Hì,¹’VD»ÄÐ"´‡#Šöƃê<(QÑÎT HqÁ8ô†8D&1‰økaúÙu¼Ï%kÈ eèyÎa$² üÕÙ7(ñý–{ôC$Í1À·ƒÕÝV×ÜVJÛæk­!ǰƒ#dÃø’ÆXåÚ!{ƒvƒ dnOcU?©¦þópïäî?©¦þópïäî QÓÐB,‡K,:ZØUQI)ã_$‘à„|‡ˆŒæ)0‰Ší#b'‰ò1N§°šY’{@ŒµW2I*ÂeÝT¬¸â‹¤-‰&abä˳ª,e,b`*òȹ¶;K ËÈ.Ý íú»«K ÉY0ŽQó1 ²d€è!€«¥­¯§¬‹¹ËWUÃ_>ñ‰ Û" QÅ» ¥96ÆÝf!ìÞ÷*ø¤ÎàûM›6A¥Ì™/ PÈ•.T‚8Ò$Éh)ä¯yLb½Ä)ç½ÊåUãúš`ï7þNâ4è>°D)°¤\9‘0¥ yQ%G#MLi€Â‚@ Æ&ÚA­{ŽD^$Á<ØScš$ÈrÂ9eÅ7Di1Ì׈ñÎ'¼F Xá”nsÕjªqýM0÷›‡'qýM0÷›‡'pIØsአ¥Žè…™KAUU(‘^Añ‰" @ñÞP® ž£q'«u ŠŸ6…bùO'-2ÔpÆ ¯RÆ€ædB²CÊÀNz¯.æ±t©Å0ˆ4á=y;ú®®¿ªê¿o4áxæXÞ£èü“¼kôšè^½U­Ö¿=÷ŸOVx0Ï‹ý3b/¿ö~ ~ë÷x׈6•øc~”8Óá¶°ð·¢L $F.Ñ­†aîŒ~‚„fz^ƹçáLÜ껵3DÍΈTDÍz'_:ôáˆUêýЃ2ïwDfy*#õ«S!´š×4O2ðŠá2ÕU1²,§£ÙŸÄšíMò˜ÍÑñ‘ŠìÚÅs\În:¨æ»~J4ÆG1Êæ9™µ'3>Š WKúœÝ_?¬æ»\©Ç|‚õ"±ŠõòB-׎iq¸ÚÆ$\˜œ' ëÚÿ¢ÅþVû½|¯ôï^ÕDTTTÉx(¿ÚÈöuïò­ÿ›çºóéêÏïñc?¦lE÷þÏÄÝ~âOñ~“°ÇÞX_8¦Žõr0â \­ËR4¬V9[š*jÉzfŠ™÷¢ñ”P"?N—þYÉÑšµz£\¬kÔCÐ~SFߟ§¼LήIž°ÈÍj€G*½!^ç½ ù,{ÞîdLÝGkCŒ)ð‚têß)>§ø9ÿ¦\/1•ªü—f>ãS»SÑËš£R¹­~Øóv•èÕq¹¼Žsܽ79u*ä™"f¾„ËæR½ë“[Þ¹*ý¦¢¯ÑéÑ:¯DãØ½Þثܹõò«ŸO>âuótë’m¯{Y×èyjôËêgîñš‘¯ýK˜Ì—û”k½ÞŠœ.àXïF…V}óÜÏí}^4µU¯ë“™*¢yÓ%V¯ÐÏWE\²LþoÞ}=YýàÃ>,gôψ¾ÿÙøû¯ÜIã^0/ÒvûË ß‘¤¦[¤ƒwr§zwukš¨ŽcÚ¨ö=ìTr"ñª½] ˆÞŒsž`?-kån9Æcœåb+ÑïkXÞ€s—>:ÇS74D|ofEͺ½¢&ò"uEsÄÖêL³êÝ^¹cO¿ƒ¿¹ mÛ"€±œŒ8eЏRÝ Œ{´mÊ@¹ÎiÔrˆºJJõŽ×.C›=Xãèp•©JðˆÌ2¢Ï•,JÑû sHÖTóºAÕ­f§#ZˆÆ÷5ƒX1·½ÚXÆ¢½Ïzæ÷¹Ëó)~Š¢}ETÿ›ŒžÖ¹;òr"¦WŒÔMþ×6'Øb¢}^þ>'þ?Îã£ÉŸ›=*™ý )ŸÙO£Â*HÉSª*%ENåEÜà/WkÖ!¿R&HíLEÔ‰“rÏ¿-)ôæõçÓÕŸÞ 3âÆLø‹ïõ—ˆºýÄž%ñ`_¤ì1÷–¾â±Îb­Í¢*µU½9ãtéæèœ{w/뼯åÏa&Ÿ!«íîºÕ>Y«æãóÇþˆô\9¼Ú¦¤V®‘…®ê™y/hÑÍ_Cš¨ä^¨¨¼#O&A›å;ILB&¤W¢;'¹S4ETEïÉU8µÿtçÊ‹ó5Bÿh®zù³k·™±{ÛŸMYt~–ëGinZ£™¾o$È©’eÕw‹šçÜ›iÑ{úu]¨Í3{õ°àkU3sz!H7ûf9½X[èTUë þþŸ†©È¢¦nF«ˆF.œô奣UEò]¤ªÞõj»¦fF«•Ù5ýÝïb9¹«×§UÉUÊœCý«îLù¼Ù§x,C‰.n!4N#ˆ(Ád*2RX‘Þ¤B¸Ïé›}þ³ñö»¾è/ø°/ÒvûË ßóýÚ´ÿ–Ÿ„á®óéËê#Ç—ò¯ÙëæñÿwüçqkþéÎÿ•æk½Ç½÷ǯò/S…ý?å3òÂ÷üÿv­?åÇá8j53]$wö¬Ð÷/_CZ«î÷'_÷ÎwßîœÿùQ~f—öWÿ/‰boü¦g‰ßéæàßÚýѼBý©î,ù½aKxSUᮎâ8iØL¿„Ç)'oŠ˜)¨Õ$´¬ &°Ïãý3b/¿Ö~"~×wÝë0/ÒvûË ßóýÚ´ÿ—„à„Ï ãJúºÂ¨Ÿó¯Øé×¢ð¼;õ*äþGíqmþéÏÿ•äEe¾È­{áÖ $5ãÜÜIOx`‘òXý™D#Hí <Ø]·6² "ÈË ÓÌóîGMhÝQcòû&w±¹r–v'ÙsB£ˆÉ¡ˆÇiÊÊœÙdl•\±öšº~Ô§-kX‘e«ä69ƒ`Ñ\„Y«4lr Cú˜Ôo Œñº —5WIŠߺь 2¸d1É­®hùv¯G¢jҊöWÿ*ðŸS…ý‰¿ò™ž'poí~èÞ!þÕ÷&|à5UÒ‚FçæM¦;$ô&j«—¥U|þ)¸ï½`"DbÅŠÇ8˜ñã…ˆ0€4b†ÖŒbZÆ1¨Ö¢""{Ôµ&•Êr7Xâ»’ÍhÅ~J¬ÛÕÊŽ1„Û* qìVðFÃX,v·éYRE–•²(ÏÖ¨äëÉòO-¨^ºH³uiË™ŒÖíå«=šÄÏ^i«ssÚ·FŸ+SGkÐ]¥¹É ºLuz1ÊG8HÎ` sѨ1%¯²dGµ¬R8Râ§ŽvëÜäî^‹“𿹝c‘7£˜öµíTO‘o?Ý«OùqøN$þÖ7ÜÝâ^ úç5¼[ÿº–ò²ü€i³NÈñc3YŒNæ§r""fç½îT`ÆÄq G4ckžæµdÀ +ÛíW+Òi‡ì~Ë ~ÇÈêÈÍkɽ'hƒ3 –dטÏyJW¸…)ç„{•Ï!ìÜ÷½Ê®sœª®rªªçðÆîtØmj·•1:³ÈkG°ui&CQ“¡^ˆ&½ÈF©a^£r+ =º‘¤býV£Ø¯ ÜÇ ÈýËá¥ý•ÿËÂ}ÿ/¹·þQ/Äî ý¯ÝÄ?Ú±þäÏ›¾þž°—ßúÿÿrû€üRÿpÿß{Öy“^,QícŽg®LßT„Vµî`XR ß£J–\¢¸ò íe#ûܽÉÑ2kZÖ¢5Œj#ÄkÖ±¨‰ãlˆ'pü¦¸Uw/%©’DŽF•º^ôLòxõ«Âñ“'£ô7•˜ÔÐÜMÇmjɦ4x]Z×®†¸%]n—„†l{Šºó¼hV†m„H¥pœç1 Ñœ¬z^7µ‰¥\Ç&yµxi#Ihå"1A ºHÊÖ«\»Î[6×mªÔb£Lâê#r³[˜Ô­Ã“%mÄ85åiu;641ÁfÇ ¡P«!ŽW9ÍÚj1F­m5T@m¢8s].Ī]NÍí0 VÆX¬DÎG5ÎÝr=7„L§‚GéÓ*$¸âÒö¹t6tɱWZ"Û±‰ä=Ú4“KÛñýßÅt¿“xý;ø®—òoÝüWKù7Î8{ø—ån¶TÕRÁ¶¨ÑÁtºâ¡u7'¸Ç-£4f´Q åsší棄rYaÉ‘A¶ªÒAœ©u7&82VÆY­Tˆw¹Ö·iÈõxÜI2gU¹¬@M®’B¹¨Ö®ëV±¶ Ûr¹Xˆã4º†ìÄŒÐçÇ}Ý\£Ëè"h9×·iN¨°\ô–2 Hç”D Jk÷XÅc‘=}çûµiÿ.? ÁžÁ)CFQ¸‘ŽÁœZÑ 6/OYyþíZËÂxׂ~¹šÞ+åàpïð^ ·†Ñ9îxã¢s$£†Äa–e,¢5¢q™Ë>;ÔˆG"øbÊŸ(1@Üü³?N·#M±7Û˜ÊÁ½X5å&•F1ËÇ-FÃVG]HIdQóÆcŧCÝÆAÒ÷wBbHUh#FTxÝÝòë¬IðGFE”õüñæhLåÿåa‘<{Wü’ÈøYeò¯‹÷&}Þ_‰Üû_º7ˆµcýÉŸ7qn kÀë0ØiÎ78œË¤ÞYÇ›âb Dà Xzkd9æaBÅAŒ­y\ÿrû€¼Dý°ÿ¹‡Þ®u«¶ÔìfÍxI¥REüˆ£ÛSGyFÇ|)"!IFŠ£ã|Å)äK9åI1ž¤)Nò*#³{ÞMÞ÷¹Ïqç+ºø”†v–§ÕU÷=+ÑõJ‰Þ©ÆG]¨þh¢sÐjšõµO×ÙÈÝ,òœˆÄVk„®vmz·Ê^ïq=Ï¢Ÿ‹ÓŸwÜw|#»ÇÝÇwÜwqíxl¸'‘ PõmJˆbÆ=lpß¶p¹…f±½Ìv—&lsš½x'°ÑEš*ÊÕÉFØè ‰,Žc´12ÉrÆBHÍìx„ɲVŠkói#ÙùšæGC•ì´DäR6­À€“ çxòåâ…¯âóýÚ´ÿ—„ñ¯ýs¿šÞ<Û09XNÂ$®’}®ì:¨´R`‡i^¡fÁ®,_¸1´¤æ4™äh€Ñü,‘bi°³ÐDhÆæ¾4S0›Zg‘„G5írV(ó:íh*ÅBŒÜ,«*ë{„ÝËEGèEP«œÐ³HÆŽË2B<ï)u={¾Du‰>èÈÒ^¿ž<Í œ¿ü£Ì2/çjï‚2Y /ì¯þrøˆÔîjdŸA$ÌDïñ;ƒk÷Fñö¬¹3æî'¸`r±ŠÖ¶T®ì*šŠÙP´¯P3`÷VOÜØRó:Lò0 h¸ÇJ—ï4Þû—ÜEâk³Ït„'wµÉPY{¿Ï>ùy³_¸ߟe6-| k·¥Ì3#Æéž0pÄc5”Œ3Ô÷µ¨«ïPj •HEŒÍÈ#Ú [&ÊxÜ?psëÅ­N6´Wci7÷‚Ÿ Ît–´ªÝCŠ?d–n„Vè |¤kÜ'¦.Üd'ó3>=€ÆªˆÝµdhgsK­­r9å˜6„ÄÖ¯w±¦Ø4´^ÄâyÝÜwqÝò/gMv©#¸äÕ!ŒË1“5Ôù o•­º”¢kÞ\ž7ß /ì¯þrñö87Ðÿñ3â*«˜ýNl™n,Fº;\ÿe{Ü"Fs$¥gå¬Ç#ŠWéj1ºˆEs¥­F¦kѨˆ>IkØåcØä{ÕV¹®jæ×5ÉÕ®jõEN¨½SÕkG NÛ’$r*#²Í ÄÍ^/]ú£šAê&Þã¾OÙ_üåáÓ—úþ&_‰Üû_º7ˆµcýÉŸ7)°ü'€S/-k©âSˆÈÓg,0€ùÌV¥3\W %#FŽV îÉ«âÆÿJ—ï4Þû—ÜGâŽÕË«ý=sˆß«““?wÓßãÀ¿NXgïÜ/œk[¹l1"ÓÖδ’8íc¤>=|RË3ÒCqœ19ÒlWäŽ#7!“ ßò07±2<;Œ\¾¹=`³Ö:Pζ:ÄS?a ¦kØß‘§a¬KŠû6î·–çav$™³ÎC>?Á)åD&äI@/±ú5è~’5ìoèçþ,ãú¿Çèçþ,ãú¿Çèçþ,ãú¿Çèçþ,ãú¿Á!ÁðNŽ;¤¹÷B±ÃQTl „­ìG ªdj3±!òž4)˜xãNƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢ü‰;âYÝ›I[Ës³yi“6yÉ‘àGøyRɹ.Pì@~zߤm{Ú9n.1)_!¡tZ JÜ2½e‘øŒt–;6ÍÂJÜ8•‘ž$9C}êj ƒêw²ùÞÝ‹]wµ»G–åy [=z;0ûÛ»:u Fæ§èù˜èB\àÐnÀOo9\ÞÔ/–¹C…¡^`¯#ÌÇ~™.ÏÆ‹èT_±Â9;—ĈþŽôù—ñ{¾o¡Ýë;øï㿎þ;øïãËF».íHŽËìñž„OÖ¹ÌO°ÕDû\yIû¦’§ò5Sû®:°dëÓmúW.½UÓêkéîñ‘‚ò¾Y›Y¯_ëÉ®óüºç–~ŽA ŒLÕQ3Ü"çÑÑ>ªªýž¼uk$7ÊêÕÐÿs4îîùV5~§K•FïÒ•4¯v}|ÉÓ»5Eû)ÆiÕ¹S»Äª½:ª¯r'»…éÂK€WÄ’Æ(ƒFªm;oPÔOG ÌÈ~@ÞÇd]äëZähnF؇sÕ­’rÀ&jÝ ©Îyc¿'ª;}6r ˼Ô] 'ëüÖñ†~—é¾÷FãÓ á"»“2zæmË]o¦â² E²‡•¯Ÿ9! Q¼QÜ@±…­SË3Yä¹F$V©ä+t¦€ UŽÍìEùAêGãoG€*èuúžˆ1¹Ì<9›yL{_“šäWªÇfAöMæl/ Óä±ÊÉÏµÂÆéÔð¿%]:“Û1íaQY­G¶¯k^åá¯cšö=¨æ=ªŽkšäÍ®k“£šäêŠ:§Â û+ÿœ¼7觸îÒ¼NàßÚýÑ8‡ûV?Ü™órœïÅÃplñ Îfî­€¥lÄÃYÐî-+gÇy¿(éA2JO2•%†xËE2­¨±Ïß»jRÅz£È4Ù©á|‡#•íHጤF‰òg/Ýâ‹ûX?soý9aŸ¿p¾q±ÏÒv&ûË7€KˆsE•ÑLr¼2#È Ð8 5ia­ ˆ75ì{QÍTTψÐîÃÀmRMq!ݸ,ˆÐG [m˜m’iV–6Üù(yŠâŒ±Ø {>ZÕÚ¿0­pm×O4ïźXöÃ$Âö\©Ü¤g Óyg»m>D=¥ÖÂr¶ù›L5Ka:FÈG;òåÂ,‚íG€=Â;@F1·&1¨Œ‰…áöm} Z5jAƒ:eÄ!«XÞN½ýšÉ#…©áŠcœ0’={bB‹ˆn±Ãø‚ÍØ¾EZI½«‰q³ -,¸àŠÉà‹I¤1"ˆ&—¬M”C2$Fƒúš`ï7þNãúš`ï7þNáúð¬|95c‚0lp†ŠFe,¥s+c‰ø|ò,cËM.S¢‘Ã1Ñá¾2Õ×ÝHZ)² >±ÄäaY ¦€²ˆZ£¢qµ }ÒD4{úй¢‡lµ³`Xͱ™ºE%Í$€†ê”ÆYÃŒ9Ë)jåÄ´H±6<ÑDŽjÇ*,¨ÒBhÜ·%6wÈG«º­¯¸¬•·Ì×ZCaFɇ ;ñ%Œ±Ëµ B8÷íÈܞƪZâšl/O‡.pÄŠÃC>®J9c¶º«¨—ÔbˆSãíKæc8IQ%œ´‘F‘ao…¬Ÿò»ÇŠ»\REÂØžÆ–¢ªšl˜tÉ\J“ê·‰ ÞDÇdZ:Ô35Jønj‡¾>ÅVŒÓga^hö$ÔæçSÏ™K.ÇLxÐヴäWÇ”v5Ê HÀ¡_ó\Ñ;)ÇÊgLò%¯Ð_(ð Xyº$1~[–WµÆgžµZïjåÏ?Bû¾âôëæËÑš§üy_ù¾ßOùø]hߨ쿕†ìAüô‘¼œõ{*®Úe’§¶öÞO¶éÁfC}|f Kâé› Í#œÁªöò±e·o#£SSÚýM±éÒç Kˆœà£Ø¥`êÐdx‘É­ƒ+¬ Ñ=ÍÍGÍc²rˆˆšWãïðŠÿÉœ9‡ Û+Õèi“ŒÂ5ªÖ¦ÓR¿‘„V«Ñ\'SÝ™ºÏNþ1µþÀ¶·o^®Jj¿{Vœ·;E“òÛÒº6v³ÖíÍ~FŽ7ŸÂ ~Mã®$Eÿyòÿúªðâµjæ=ºraPÄÍíjètȰãùªGnžK]£Sô±Í èì•îb8±Ý`-*ç7%<d ~l\Äâ!Qº^­F½ŠîO³Æmö5Ë,ƪϫ¥¾B¯ëš¾ï¥OwÈÙDÐìúü¨Ñ:uóð#|é“JÔËV]4¯V9Ù~‘ʽþï™ãô1ˬQžœ×ª»¯Ÿ§^=œk—û`¼±åÞªäöÌF§§<òr§w š9ªžK»Ûä+Ñ[ô2jª¦¶#¼•b»>«å'UÉš³_nG«G׫ží-jºQHçtLœß+¹tùI©¬vyf­ö]Æ'zd'»V”ÏÇÝÚæ#‘Ȩ¨©š*/z*yÑx{"ª¾7²¹!?$b=ù/ÀäÒ®”Žvß–qä ]­( CÉV¬˜Öûx¶"â‹å ¢{sLÓIBñI ‰á+ðþ!á7ô¤†]†h™"ÆŠOÁçd´¹×ÚTCŒwÇQBXïhC6ç¬tz¬ŽekÚ³?¬ú´û\Ì¥;$sšüù‰=CUãBI’÷æv¢ýî^ï7Fµ¨ˆÖ1¨ŒcÄF¢'ÉÅ­;ÜòFj2¹UW•òX¢öêÍ:È®V™6 ÁÓ×—öWÿ*ðŸS„ý®/ºÊñ;ƒk÷DâíXÿrgÍÌg‹J(/æç@ð £UœnÏŽ¶VÂÜp}† îÓ¥v€Éw3"¿9!g)äñb¯÷‹ð’Ÿ‰?¶ ÷Wx‚7e¨a.ìØÄjåÝÓ§£ÇƒbIy˜1YÕª1¯æ(áJ»ˆÅR ‰²IUᆣQîŽâ4d¥gÎ.9úOÄßyfúÄIvFÅ56䘆AæHÉÏ‹¼èVäq,"—ŽàÆcÉ.²;äKªÎw+¸Œ)Ö>¥íM› óØb0ƒˆÙ'xîѽ•ÉëÞ³Ï[.Q— ž8ËòÒ_á*âÿéþÓðw úÌX9oÙ‘†ëåc¹:LM‰Øv¹dfÈäÅa;B±ljuHS†/hséÒ"¼aœGÎru‰`ìDç¤âG~²+#[¬˜•Ïl‰¼”wv¬(ú$µ-+àIå%>;ïñÏÖÏá†ãÂÖOù]ã~0±qT¹—oWM64 k¹C2–T™áä 42-[­ U>´’W\æ¸V²%X¶–¬­e=|:ºèÛ†7/¾8âDô‚Av£ˆcÜ9HgéÔB=ê®_˜îˆ%Î ìtöó•Íí2ù`›‘„8Zæ ò<Ìwé’ìývH¿ö'N•^äÍ\«Ÿ›åWíqœ™*ÜÚ¹Œ™µÙù>Êôr;ÉöɲžRôr£|­B QÙ«‘îÌ„EVé]$"¹íM=4µQ½W§”¹ðg9ŽkKdw\ÕD#±Û 1ŒR9¨Èo-Y Ìš†’N®jCšLš8ÁñbŸ÷‹ð’Ÿ‰?¶ ÷GzÜ'þÿ~ \üÎ ^&»ìÙç†9âfÛÌÕ¦‘…ݯ()™¢šD"hÔ¬F¹ŠïÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än?EŸâ,MùÑgø‹~FãôYþ"Äß‘¸ýˆ±7än1MU~'ߟe‡.ëá±q·¥Ì¬“0· R0pÄc5”Œ3Ô÷µ¨ªžµ§³æj›«ó Ù :¥3æð8·E&¿à‰„˜^Ë•›’Ѻo2Æí¬züZRö¯Ú;›¤aùFw(\Î\ÅFôƒI.Üö¾(úå^½ë——á•PG"4˜åa£ÈŽf!pjá”%šA”nsÇ#šªŠ‹ò Ò_á*âÿéþÓðw úÏ ™&¦hŽÉÉÞ×d¨º\ˆäϪzÅéÚA£ÓÝOqS4ô.KÞxæªÙ›5.äj‰©Ýš—K2Ï-9°JѪ5…$X¬V˜oxŒC3-·7Ér ЍªF4U#t"³Ú®Íc9HR.§½Ýê¿Èˆ‰’5©“ZÔFµæ£ú‹›iñEw,DÔ Or«W'!„ƱSlBt"d®õÄý•ÿÎá¿E¿Êœ'ì#û¬Ÿðoí~èœCý«îMù·†p«Xw ÞÖ8§¬SF$5Î]Ô¨å˜ŽŽ‡‡Sl¡5ã2hÇI\ÀLjFc„D–jXñXB1’vÞWKp#µÊŠc6,i2TcG=æTÛÜ×½Ý\ç¹Î_J¹s^îþŽ,ôîŒÏ,òÖänytÏ,û³OY„ÿßïÁ«Ÿ™Ôè籫ê6½rs‘?ïÞ!ô¯ïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇÇÅ…ûãïü||X_¾7ññña~øßÇà 5UsQÜ×¯ÑøC]†ñ •XÚbÈXc>íad:E!äTÉCVJ2¬jDB½Š ŠÒ.bG6°s$¸á—iO1ìdV¹@Ø=œ#H9%pÍTxñ@ˆKƒÈ#F¢ŸW:”ëØ›HfD6ÑmIŽò›fý]cØìœÕDøuÒ_á*âÿéþÓðw úÇx<Á’9œ9_`9·ñä™#â Ð÷Uж<Ü? C’SåÈl€ÚZE…2±¶-…±¼#ãzk {8»Ðð…eƒ¤Wμµ÷VÖu¤ v9y Î+u„–S‰Z¬}’ø‹uŠ.«èë­9™çh·ÌÈç—ÊBYA#×A‰Ò¶žØÑÊôÓÄ¡øð}_’ €cÊÆžl ¶gVYf€Jj"s}¡Íì ¯©´¾åcš í!A°L€Äð< Žc Gc¦JšA ÏdHÏ&&Èä@…Ó&DŠ„{VD YZ\ájžGƒli_ UÓŸ%VN<×%p˜fÎfájcØQçÄ,În€‚ ÷bÉC'¿ŠS^ q„nÖíNw°bÞÇä;;–æ¹ ÏŽáöwy_Î%ѽåíXE‡‚°Å¢HX¨¿}>æ¾TTh'F°’+*¬†MŒÂµÉ4Å3JP¼å£ð‹eáü;ÏvŸiJßìš(|¶$°¢‡ìÖÓärüÇ/~Ï9Û³ ¤Zw$ÜðK‚këè[ìÀÆÞ;Nž®ø)å 0î«OTrkí!Ë­¶¨Ä’Ò,Ge„ áTx“x8Æ^y²ïÙeâ8vuÑ@60rJ[œ¬ŽÂ%É4*+‘‚¾ ,VdæÈeRH©ÄÑÀ{L9b𬦠ƒuaÄý6´ášWAçPQe ‰ö5µÉa^Ù>0ü"Öä²6MA‡9 šñò£–’ícȰ‚*Øäˆ‹³$ Tä”ÃA&0f2ZPø<Áj¹q´pü&NÄrîgÊISÃ$ÁM²mtp´NZâ– …ØRçÅ•”Nwà,?) ñSø-´«ÚmÄÍì5‰\x‡´eɆÁö<€öL8¶sì7Ð1qµþ·sTù@Y  ¨ØË!£K‡01æÂpÌÐËŽ)ãK_LsÂÖOù]â¡õ5àÇxFínÔç{ Ö-ì~C³¹nk ¼øáÎgw•üâ]Þ^ÔêÿP8 òü·æ(ƒˆ¤^Á݇ß´0î®gsœùL9ÛðF\Ѱæ1º|[;ŽØæAV)‚ÎϾ´«ÀåÊ›!º£Âɹ$™™Äst1Z6ñ‹ß€U”v•p1¡®™‡µ8••7'DÂñc’¾ÂBÄ0â†ô\Ód,k4yG#Œ#‡'R`B¿Äô³ ¶ù’‡ÖÖ$ŒóbS‰’#½Áq@a´ˆÕxˆÜØ ‰/´/1í¥«Áx^+n±•°_Í8’àЌõñcרɓc!Ñà$$>b‚)¹øwÁˆ‰aüQo‰ïo`m{ ùë\4ÁÒJæˆ7ÍÉ16!ÈFrÂuâ='†¿QÂ)Ò,K_‰p<ÝÊùõÓ—«+m%HlÙ 5£,¡Í¾¥°…Yeòéc—dvøƒØGµ¦µŽ’`ÎŒ«¶Qææ=®cÚ‚@ ÂG—@Å*¡, †HJ&ø¦bŒQ3•¯‹Â£I:Îq÷F««Œçš°•¶ý±ëBžlÓů‹.X;WÁ†Ãw ²E¸£â_ 6VGòD•9E6ÙákÔI“˜ËÍnDŠ6û.â9ƒ)všÕ0ÒCäH¯NÀž½w` «‹ìiìõš†ŒkºÃ|'¼¤Rç^œ+ìâo@NëX:ä@LÜ&ù40œ¥0±&sjlW®á]¾/Ò=ÞRté¤U<ÝŽL“$F÷ð™?nJ5Pj¾A›Þ½Ú´™¾J¹ZŽv–¹zÎÏDUÓžÊ7ÊNý/jêNïëonZš®fµb=¬bù^ÊÞ€ódŽW*¨Ÿ’ûWªµU:RèOw äðiІÐÎÒ‹©5"YÑö&mr9½5éÞ†#TƒkAÃÀq¸E´½ŽïEþEEL•®LÚæª9ª­T_˜@G+Q’ÚènUkœ¨¥V¸(ÍÎ|„zœŠÔk«O·o®'ì¯þ^úæ98OØG÷Y'pí~èÞ!þÕ÷&üÛ¹ÅR U4QÆ’9!·Ä<Ä@J„‰@Sö,†Ê" É2)…j'ŽŸé¾Þ\AÁ½ì#عwf×*tâ/í€}Ѿ²,Îcg°)­í¶ö·9½á2‹—׸Í=µÍné6|¶ÆÚon‹æm:¹¹¯¨êôï_ü7ˆÓí¯ããÚ}µü|{O¶¿iö×ññí>Úþ>=§Û_ÇÇ´ûkÇ´ûkÇ´ûkøøöŸmßiöÝøøöŸmßiöÝøøöŸmßiöÝøøöŸmßiöÝøøö‰ö]øøø“~ßoÛãâMû||I¿o‰§ÛáŽA¦höªw÷¢ü)ÓpÍÌÊ“-öÍ$IZFq ¯Ã@°Ù'XÜÜcrÄ"˜fDz$\wLƒ)‘q‡™!Ñâ°Š6¤Ú©r%JpBÕ—*LØSdHV41ãÓ”šŠáÚPZCµ‚M)¿ Í&ÑHå¥ ¡¡Ì`Nž±†\}Æ´á—/†Ð} Uþb®-ÿÖëýl;Õ|þkÕ¯ª¾ÔíNÅ ÞØì/;?”äv·>æ9­^ǵÇÿÀýbñÿðÿX¼>0ÅÕö¸fU„®kø=$QòqÏŒ]ÊŒB\___a_]/nb‰ö•û‰:74dšòOmÅ>4…q20WÃ$Hñì)¤U¤IŠáš8SÐȃ>¸¬‡.sáb€Ù¶\&sx¤Î&<(P£š\É’Ì8ñbEŽ7D™2 æÀ&<¦1^шmsÞäj*ñYZ¸‰ƒÅ#àH%"g‡0Œ&Ç}募ØPn/\Û‘0SBÛ™ô´2,åÀ‰­­¥«+YO_®º6áËÁ¯Ž8‘½ …]¨â÷Rúuz«—ˆ¸þ:G ®‘$â¹2O ¹œ,Œ¯d2É•"¾æL9á4ÈТE›~TieIls":Þàˆð£V£Y)&á„pëœdÙ’)Jΰ–8Â8²(I¥YM“ ¼x4œÈÑÛ6D|[DÆ„i(ñacHFî–¸›u”8¾5Á#ÔÕÁÆÄÑcÙÚPÖ׋œ½ äº(nBÄo9QÖ±û|·ˆP($׿ßyÑλ榫sd2F%$-’Ç.Ô$*°X<1åÎy$ ¬âÓÙÀ}…üiE´¦\?Ô±­Ÿ(ë.äd|‹œW!&GÓk 3J8õV|ô¤ È.Ìx쵯¯™ʼnqþ 4ЍXšED/ ¹VÓ\µ.§:9ÈÅÀ1 F–úà–TÕ´4ÕålHkŸ ?Y?åwÁ¤æFŽÙ²#âØ’&4#IG‹˜pÐãB7t±â|âÆ Þ£&Ëxš×H2¿}s~b•§%±I„ü/ÌŸÙÕ1ã‹f®‹’G%[\XƒÛ‰b}ÈñÙǬ#LÛ#ÂF1<'ø@Ž G!"’2ÓV8`J\'˜Ñ¥TÇ©ªV h²9‹ 71HëK;^JƒÆ7#—j)äbˆ2sIVc­ßÊkxE„(Ó)4$B-œœÙ N,SãwÈx‹¾°m^V9HÔׯ4œÛ5dMlŒ:‘€¨x­ djÄ+ÝÎø© Ì³‘Š×ÂÃ8R)"¦Þ¦¹¸3 X9Ïî'Ç™tD°rÍ”&Ä ÀÖÄ®:ÚZ°rµ”õðêë£nܼøã‰ÒYÚŽ!på!Ÿ§Q÷ª¹x‘y„cG®$3aI yëÉY}D[jæÀ‚Øí…N“]A#YÂ%`H’T‰fú=‹ÿ¿†Ìu‘Ñ­Ífhtt~‡4ŽTnÞ’jÍ%e(´Fô{Uîù0Ø`™DV4ƒ(ÈÕkÆF9¯cڪױȭsUQS..{)G¶ž!EF£ ‡2CQŒ™œl›¡­ÚE Z4jÊDålø§Ò×h~•G5Éž¡nxŠß•W ïF½ÅÉír&Ùә拭s&—e©]š¹jòßž[ˆÄD㘬~lÑ™bªê#|Ùh]z³ò—CÕsVª‰HŽj"5˨^Nbrª«ZÖä»s¼œ²EÙ~m\²cš®ãPŸé˜½5êšHÞö®h©è\³jªuõ‹Ó‡¹‰¶vêpÞê„ô§wGÿ\bù$òW6=78p$‰Föª¦y.—åçbª&iöÛí^r+SæH79c‘ì{Zæ9«›\×'V¹«Õ:¢÷p ,G#$Gb?$z0¬B5ˆ®MY;®NTϹW×öGÿ*ðŸ±þN^2ý(†Õú;‡_«ÑS»Ä¼ûOº7ˆµcýÉ¿6é_!‡ÌNy®HŠhÇfÀ©ñV2d0J¡ƒU5Á9 $RdÈi”.ø?Ž£é¾Þ[þ%~Ø7ÝÄtrfšœïí†7=«ÓÐæ¢û½ËÓÖ\}'X}úÃß3ª>“à}úÄ$'ÑO†>]%¥•<²Ñß&ªtªùŽçŒŽÍ¢#‚âDp•Úâ•3cU"Õbú’bNdÌÂŽ8|Y !ÊfÅu™¤I4²!5ÏrYK"5Á4+G C3"9âV#Ú†‹(a“¨‹ì‘äG óFÂ5ÍO…P} Uþb®/þŸí?p¯¬,êŠøëé#¢áù‹ pVÂ+d!¥POA¼GŽq>Qj[)ñÇåãhWÀ›p²E…qQdMÀd*±è„‘+ JEygÀå=9Ê÷Ú¤-qGÖ¨k=gA»áµÓãÅ›Œ.K$I(€³%£InH ñÞPVÔÛ9ã“ Õ÷$(Hë=1ö#y$$ÚªzZXâk‡Ê¾-üÙ“¦ÌQ)] eÃP[Ì8ÆÁ–ZFsÂðx±v‚H⛆/éa–[ˆÈ£•kU. rIxDr²; v8Î F¬“ž qÇx±-=ý,ç¤qÄÄl$EaFÖHY´Äç‡*I,A!^#‡ß^ßär\@mH¼°ÄV–„Ü3ù©Â¼›J3é!À鬧®·¢ òûÊ5S”ž,sõ³ø‡üx¶à29ŠÈ¶ EJ£³íX=—Fœ)UrŽÊû‰“|0ÄEŽÓZÍ,§¼’Ï‚püŠøõSj°Å,kH1’.Ø®y>éÎ|'>)äÕó$K–&J)¥)Œã)]âÇ?[?† ?Y?åwÁw×·ù#Æúæü0Ä;*[@sU—æUØÆÜ0yˆ6ð‘%ƒz9 [±ÊAî£35jôG'‹Â_Ò2ü±âÿéÓð‹ ø±Çav‡múĽÙ<Çjv§bÍìþÍäþ íok“å~æ6ö}“O}Q|oõ@_óçÇ݃ú—üãìߢnÈöÿÿáÌþgÇAôWøEЏÀß\߆ƒæÅçûµiÿ.?¼Øâ’Ít•¹èr±Ãܽ¸JŒ{ц˜Vj]jð²+7¬à&Ëv²RÚ ÏÍr„k$…¡wÖ•ˆ_.>ÔrJVoÉÍê×'úuEîT^Š™¢ô^>Tœ‘¬ÔD2NœÓ|ËÓNèú"?Êj0Hœ"¢¨È¬jµÙµèá9½2\Ü" ze푉–Noƒ5­Übôó&§ÊvcÕÓ¿RtÔ‰©¹ø×§ö4ÝDèäÉî+]ò¯O2÷9<‡æßjà™¾uÒì•è‹—w™ÉÜö/V¯¹’¯Ì5TŽ|B+ÜEÏ=.Ý1u9vÆmEÓ§B±­ÐÖªúÒ~Èÿåàº}ÅüÜÛþGøÁ¿µû£x‰ûV?Ü›ók áV°î½¬qOX¦Hjœ»©QË1¦<ÙBkÆe!ÑŽ<’¹€$xP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5=e-vö› 7¯±Š².¸Õ•6–mÍ ìÒvÈô!7óÑ™Fò;,È÷=rîÍÎÔ¹wôëéà9"®”*»ÜM§·5ô&j‰Ÿ¥Q<þ²ãé:ÃïÖùQô¡ïÍÿÉ ô~š÷pºŠŠ©æo•ŸÕö¿á}¾áévnb¦ô¥È0##‡$ƒææ™C*Ÿ”;½%»ÆÀõ•ZÞ'ßÉ´—¬OuN#ëêÁœŠXÒ' ³°° ZâG)££¤ n+¶e uX~®Ex²T ˆ!…dHz{$¹dD‡™)å•!XŽ9ˆþ¿  ú@«ü"Å\_ý?Ú~á_[Ž(`òéW£ 1!¾,(·ñ#_Ǭ/x…¨Vl­ÖØÈ8­+#ÆkÒ8¨Ù%ò 7 È“„%ÀмuL"¡‘*äXñ0üúˆ.9ÄF•K·wÁ’|}{’øžÇ3/Ûoy?Õ«Ãÿÿxßþ†ãúµxÿïÿÐÜV¯ÿýãúЬcKo‹åYÓóܰ-'Òš ûB¶eY·Ç‚‡i4¯Ü‘äfÎÖÄpÝÇ‚ï¯oòGŒ õÍøaˆ,L0[^zÖ!¢«–ÁmBèÐËsjÈ&£ÃI °¨)ëia–[†ùD‹U0c’K ò 1Æp€¸Šå`†Ü˜Ÿ5ï?Ý«OùqøN *QÃ,`’D™2À‚8Å!ŽsZ1CkžB=ÍcÕs•x¯Ú†Š—¶pÊWª¡ÜDz;o7q '´@AB0^dÛ ýu­“ CL-JÅöÍs^ßlÇèÒ1Ý˓ڙ±Í{scÚªŒ")„ˆºY­Z£UÏʺè\×7&— 7åk¹ïjµWCÓØß—TÏÉréÍ;ѽùf¼0'òN½ýe^™~´Žý.ZUSÉTW4~±zpõÑìè©ÑUS¹Q|ÏO3»•<‡ù>ÕÁ+{•t»,‘ÈŸÈ©òÍ^­_¨«ò}˜ÞÄ2E+’t!ÚvÙå©u68“%UDÓä¢jv~´Ÿ²?ùxcÓ,Ø3½3îͱʽ}Μ÷/äw‰x7ö¿to?kîMùµˆñìØ››·‡¨$=aC›$\ÕéF'0“£N•qƒ0nŒ"B¸²‰œ­Ã¶7¬ÀÌ^ç³1rïÉɇS§ˆŸµß÷AzÌmhñg>:JøÇÖDÛ‰dk)E´Ù~ñª`?[ÆâcHžÆ”ÈO™µ?J>üßüÍNku=¬n¥DÔåîjgÞåó"u_]›ÜÖýË»ÑéúœtUzûì¯_´¼i 2UTF¢&·ª¯L½ š÷dÜüÜ2T\…I5~m[¸‘kòD•—/Èi©ÌÆ$2²¸2] Jµ³[‹¯ˆÖ8¡ÞªmÅ´^\ºÇIítIœ·BYº<€œM4½˜SaDšV“7(bÅ£FŒ!Ç8ØGXƒB!£F!mk65Æ"5¨ˆŸ ú@«ü"Å\_ý?Ú~á_[át1Èp*W¶KFÂ,¬5] N#PE3yrͪXŽW¡áy„¹àgH$w‹â{»¨- ˆâ (DÃ1î «uª";INç.@Žâ·kwI«©BmæÁäªÛ¼¯Ã$ÉÙòÑ +æ©ã“£š¯ âî{Y¶ÅpÔ,¹®‰>#X1Кø¶ ¨á!%ª<¤†bm!^±F"!œÍ'Š&«xlÚ¹±çFvI¸#¶Þ£vNÏŠGÑ”n$c´g´B«Óæ%çûµiÿ.?‚‰ÛX¼«»9\ ÉÍûÓì9yádî²6ƒÎ&ü'òŒ‡'çâ9ÜÏ/¾ØÂ6Ç\S<1#³÷1:L‡ÈžpÇŒÉrärâVð)1ˆàœ.Ô23½«Ýô®LÚö9¯j«ŠÕTá"ÌFǘˆš|¯b‘’&· >­r.j¡Ur£2s^L‰¡>‚qéN)WÇÉ‹ÞàúÒæ'r·ªµ¨›~×C‘ÍTTrfŠQQ{•΋ã^œ=ªÜ—’ﶈ¿WªzÒššç©Ü«¥})þ™{QS4_“î?Þÿÿë‰û#¿—…Ér•_q9b¦kèLÕèª'Ÿ‚;Òôn_­b/Û×ö¼KÁ¿´û£x‰ûXro͘ð¡G<É“(±"E$I•&A GŽ5Å1ÌW4bÚâŽkÕr¢q†p«X–¢ª8§¬SI‘ÖæÎ]Ԩ嘠™m"l¡5ã fhÇ0šÀÖ`5rä™âVýW»1¿eʉü½)— Êõ´j5×¥®kÑ¿¡Oñæü±ÇèSüy†ÿ,qúÿa¿Ë~…?ǘoòÇ¡_ñæü±ÇèWüy†ÿ,qúÿa¿Ë*z•^¨©Òû5zúÛ”r/ºŠŠžn?Bò¾ŠoËü~…äÿ}ß—øM8vh²Ïâxž…u}Û’wy²Ë¿®}2øÇcýóa¿Êœ&îšM9幈°ËòÏ¿-Vk–y&CÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùKÐÌŸãü-ùK‰pô€Ãªl¥™nðÙPQ ÒŽE,b#'9X8¯ËHÚ®TOR'v~O•õ:tÏèªpºôËÿ²Ÿç~.:?O_•éöÓÊû+ÆAa Õt¢äÝ]ÚÜÔ÷\¨ÑÃ$C‡ÊU={^{ŸµzKj ¤(JYªÉ1½•É#ÈV²ZÅc¼G™eÌâIÂÍÎlÄlj—²†p+†ãH{X Œ‡:Î}t­RhycbÅ£FŒ!Ç8ØGXƒB£F!mk65Æ"5¨ˆŸ P} Uþb®/þŸí?p¯¬±« ¹¯/„Y›pë«„Øöf¢ÝlY-®¢o£+öë%!éÇ`2óó‰[cT+5ii[Ê×ÅÚ=ýùÄâA£‚G9B5>jÂVÙGWV2ŒÓÌ29Ä‹_ÂÂm-X9ZÊzøuuÑ· n^ |qĈ é,‚íGǸrÏÓ¨„{Õ\¶T¶€æ«.+æUØÆÜ0yˆ6ÉX7£R»¤à 33V¡‘Dr.»BÖ²³prIWÌU·ak¸DfôÇ›ÉHp¥’´’ \˜Žˆ•ͶGÃm £Nƒ&<ØSc†\9‘ 9eÅ6š<˜ÒçˆñÎ'°¡0žá”nkØåj¢øî|%Gæ „üÇ›€psûLs+í±<‡É~(Åu¯±XÑ㺚l:ÈêhÓ£ßVM¬³I@™ZØ08ð]õíþHñ¾¹¿ 1ýlþáÿ j·™}}{¢ã`ÄhRG#'WbX1"o%Ç…w4²ä%\Zg²(ë+leƃeÏÕ‰°o3”—8ÒgMÓ½Yc²Í5õ¼ãpêDŒi¬ }vòà •toü×E‘6Öê=]þ {kå-&‰xE°4á@‹"ÃF­¬Œ¯d°íó`”Ør¦Ó¾O…¬Ÿò»Çà»ëÛü‘ã}s~bþÿø‹ãð—ôŒ¿lx¿ú@´ü"¾?‘±ˆ¤7 ãë‰6ò%CŒGŒ1mí%ÛÐbïW²m”zvØÚS\E«&ÚJu·/Úó)âE‘ýRð÷å‡(ñýRð÷å‡(ñ+ÔÖ%Ãø‹‘Ùç{ æºÛ“æwynk‘#—æ9sìîéÝÙ.[oËäz3zdmˆ%Gmêfe3“/b¶fƹW9¬n†«Ì"Ë–WAݬ¤{—¹;²kZÖ¢1Œj#ÄkÖ±¨‰Çw™M'aK´’£‘4Yƒ 79wöìCÁ–!˜í ;ÏUÛˆ^^Ô1ØyÕ&Ô’#"¿iÏÜÁŽlT&”æcjF!c¤¡ÅdŽŸ0g^ÞÎmMhDÙ²t ™£Öµˆâ˜æ+˜±@ÂÉ—$¢EQ×qpQK]W"ÞÙí½DVXYÂ’B Ÿ2ÃSÛ¤0ËÒפBµõ†aã;»Ö‚ çèÝ\®T‘’dÍOvyrÉÚÝì„TV*¹ûmN¼fÞïGâãlºŸsÉÛ ß¨ÍSÉrûfæ|¶õÔiäs™µÉçÿNåNô^‹ã^œ+ôûT\ߟµË«Wõ(™»2w7?dM­D„VésW/ôÿLüË×ä,³ëèóý†\½ÿþ7×öG/¿hÿc‡~Ê¿Íg‰x>]}ªýD#U~Âu_sˆŸµ÷&üÙn!8€JœÑ’PËo Ì9E”rbtQÆy%ºOõ'ÀÆ0þåñýIðñŒÿ¹|rq°­>ãÍ)ø^Ï T±Ì«ž·Åw3`HˆÖ‘aK¦‘Y($;ͼòŽ+ã̲ðŸc˜R$\S2&Ù\ÜJ˜“ *LËœA[°¤$×E”C>ºè–HIŒ# —nKÙA„j#ÓU2Aå¬p¾AÈiRUÒe̘ifÈV´ai¥È1¢ Ì‹8Gâ^.¬æùNiõv1Ìø–•%ÇXä‘Xÿr;áKº¹R"B$øù@#9<6ÈþüÆo1hxÔ—0±bË1 Ç˜“ìbH-2°©è¤bh¶iÚF}L«xædgÎðáÞ<×G ¦G‰€‰6(%(Ú²a¦À,¸â.¶I`Â!Æ+âGs”,“I+£ø#Àòãš%Íe"‰ˆqåú Ýð0¯cD&©Ã (mžRE̞ɕXvöEÙ:ü?‡ëãÕSUGHÐ`ÆEÛósÞç=îyO åy$K— …•2QM*Q$Å+¨Ö“ áüQÌv§ªÝüŽ×gvW+½‰pî®grË{O9§—|¾i¼|Sƒã£aGå«*+qMV7 ù§BŠ|S,¼Äò‰§.L™Ž­7’(b›Ó`z{zgHæaÁÄw¸zhêE#å¶©ðq¥icÇœRsb‡Š’‘ò£<™–™U/ÂM}./=ÚÕuda`ÅÑe0p6;+†;z±ä+¤EÚTPÖ'ƒÿ¸Bó‹‘ì›KI±E:VºØdŸ¾2cŠw·fÍó#:èù„CTÝEC’Ãb /"ÖæÖBÉ:N'Á»…&McÖ2ù‚p ƒ$qŠ,8¢ X¡ `ˆM¯¨/ƒü1~êøé-ïî)äÜÌÛ.°•@¹€,·ÆIRM<ãJšIâáÀ …®MVþ £Š°é"<’O‹RIC—UËÏ”*õ‡®kÙM_aœøöõQ ÖD…"¯øðÖzæ¾f«õcMc(±w§2Hð¡GG8+4k¬@@©O l±Ê€õ<@`\#ÁíTøît¼cá8qs\‰*MtÀÔ` ùÓfºâ;TôÒq!áÓOH‡.'+* É8Þ–•¸ƒckïRg¿¿8§]âÌ[:»P£HF£§Øv}Ux :º±–@jkDG8‡’K s­0ÄŸ™u]‰bE£«ºŽÉ削SÏiÙ’ͦ#-*ãÌ8Ã>¿´ó=÷úíáÊsšêYq(·-›^ÈñÀâë÷$wÂ%œå†4Ü“™bªÇ´º²¯§¬‹·ÌØÚL_>ñ‡;òåQÅ» ¢÷Ýf ÆÜÞö¢Æƒ ¢>°}t¿ X’WaÁ,v†Øî  hA.ÎÒ¾Kû.ÒœZRšÅ:–Ž=Ä™r¿ªüIÿõ»ê£ÿýnà¥Âø›âHá¯|™â—‡m%Nû»:oÍŠÇo1‘Û\ëªð¬ƒ¼rR$pódÅÑäN®‰ S âS¶xÙRD„ » bg”èÑÅ ¼•p]–¬•ϰ”¥± c¨ÅÔú«˜ï4t–($ƒC™HU\Ô‘ ly àñH@¸‘$ÉŠðÈ'Ã\÷¹¬c®{ܨֵ­LÜç9z5­Nª«Ñªñ"cµhs´Gc³ö8ìè&éÖDc•=¨ÇhS¼¯o¶õÜ2T#ȇ,:öeÄ1#I ½ŽöŽ4ŒÖ78oÒìž78nÔÇ+V6¼Ž­¶twrö`oÀÖ„ŒÂ”ûñÆ4mt®T{ÝФUE+Á‰±~Ħ $CEE4ðIäÔx’P$´¡8JÙD}G´ÐºZ¹ûdWjW+Þäv—=ÍF¢)¢7ÊLÕáLü´ïUyœŸíiÑ[ÐhŽM/øMÏûÝÿã½sÿdwòñ/ö„ýŽû*ÿ0~%âGìDþjñö°>äß›#=¶=R^ÏÄPæH†ÖmlRȹÎË|øo ž<ŠÉpe ˾¬­¨úP÷çx‰ûaÿs¬¸úr°ûˇþq±úÿö+}âÆ–5Ïr÷5ˆ®råÕrDëÝ×èq8„÷QFñ„7ȘsZÀ„ŠòÅ{DÀæ†W®”b»$XÖ™}N×®ÑR9tÊÄD®‰!–üçPâ‡^«ãè“Lö¹\¬5Mo3fÝ_›vŠÉ¶©Ÿ4ß`.УÀøY"³#B棠Û3™{wææðs Ò!ÓH§&º@ÈDÑg.\9a@4¼½AiäMhÖY"Ì•61Í ²j!Hã`úçîÇ£¯drIÒfsÓŠ÷Ë´±Ù<™ÚVr%ÏåIC˜åcªGÚžÃt…UqKu­i9§Ê¿…2 Á™êU£ŒXj £5€BËR”ÍxX…HY—Õm|BlÈŽC—4eB %O5H2.Ec@® 5î*1Œ{šð†=Ôá·N™qa‘Ë©rèléå&…U·cËc•šÇ¡î" ½àB=BÛ Jñ#—må +ÁÌÉ^6È;FåV¡H‰­l"­|*ú—G&Ù${ç 1¾^èQŸD­HÚñ¢P/s—Ë/­îáȭ͈Ôب¬|= ôŠþ`DG9—D{ÜÒ…ÌV´ò£il¹„4«ã83ÃaBa=¤DF£ÆA‘ЬxÞÅG1íUkš¨¨ª‹òa-ñ%¼jákNbqš-â°•ÊÃSΜ@F;ãÀ„#Í“´æÇ^šx-Fç°¦w$õ³ÖèxºYC¨Ç7qSçP³fI4쇨ÖM‰a*¥ß YnÔ7i`Õ\×g’!}-^ˆïoËæŠ®buãS}·òÿÛÆÉ•T ¿T.ô§ŸF~Ù¿Û7®häTTTTÍ:¢¢÷*/ÆF93kÚæ¯ÐTÉz§Túœ)ŽÒäÖ©’út®KçÑÓW¡ªÕ_K¾¬jwêZ¿ª_ÅçEoEá õL•Q5½|„Us[›ç\òDîÔäËV®<„sÍÉ\ìÐëåçîm5ZždB®¤ÏhƒëÑ;×§¥W5_¢ª¹¯¥zøù¡§±Þ_•š´îÔåÉ®—¢+“«²v´ò¡>uþ÷øÿ\ÿׯ—’ØFj¯êŸ’µ==QŽû|Ü;öW5ž%âGìDþjñö°>äß›¸`HvÃ~jîXˆ°(áä[)í‰8QNAe¸²ã¬GÛ̯Œw5²3â<(QÁ0 ,H‘D8ñ¢ÆŽ6ˆã€Mh‚‰­„6´cZÆ5ˆžºTV ÑÖ†ž VëL®Y[•³/’F”`ö4:á# µ¬T‘¸Š]¡pDDÔ¥Wdëºö澕҈ŸA<Þ²ãéÆÃï.ùÆÅU1ÌK´Ãw•Ñcî0[ò&ÖJŒî•ã÷F³p„ž§=­Er زÎ=dG$um¹«G<¡;Ÿ]Œ :RÁà"¨t -æD¨/t<9Q¬DËyák‰*V’£ç'HqfÌÙt“¤~jA¹q‘B ±dÄù½Yᎉ–8f9+±£0†"áŒäN›˜²Ñ£A5òÖ_'^i‹ri󤺕ÏxRäícš:øÌÄp$,vËi¢ŽüK\ÈÁ‹•ö¯–ÑÅØ“¤$ "–ªm—ŽÃÓL+b¨òjl™eaɇ)Š%±Kx/æ¥EýU‡%T2EŒ¯‹*e¬ià=|fJ%…Ü)1F0+8rØ@J®¬‡¼*É1ù³‰’#˵6¨Ð,K—UYÇCÕµëŸ*l˜ðâ‹Nä™Fp[Ú6k1\Á³YÖ7S“SÜÖ§UDá[QmÙ”cxÜѾº¥.’§˜4˜Â0H¥EqÄýBëUH¡sa%}8ù… /5)#û"21Ë=dE/G1HaAŒ÷hæ Fç‰\–Ö¶Øù /bL£>+$;sÙW+JŒ@!°CzŒM`üž=¯ÜwpŸøÒ™e–]ÂË¿¯Äóϧ~^l××/N§ŽªIØtŽ‘W÷Ì9Y¦~—Íz)¹G™ Hy$êdy2<\õL¶Lº@9íiñ˜KåˆÀ;p¿%aÒŠðGf ˜DÉ%¬DõC‹YÉ;ÔÜC>7/f¢s–¼¤¸µúb³xpôH³73\NDuó;D%¸Åg˜õ9˽¤3jiÇ!ÇE§¯yH( Ú‹eVê“1c²E„‰“’_ðÆD”ÿBнþ†9}?¥_–î_+-I×MößÎÿ·ý>‡*uÉŠ¾ÆõùG~‘Ù÷1WÏÓK³ÕÑso‰x Õ=²/_Bù—,Ó<—%Ë>½Ë±ÉÑÝS,ô¦}t¢«[šwé\“¹SåWáy¹rãCZ¨Š‹ätÍÍô¹Ý‰Ü™gÞªÕUÍ8Ò­iÌâj·lh¾ÕÅWuêž”W**¨ÄM½\#ȺÞÙfÑ·Íä S‘–y½UÄòœš‘ŠŒOY$~R®Ò¹¨ÏlçÙÔL—=Oj&IÕS¢uëð› ™»pó[ÉÓB2(A«S-HåtÂkÍÊŠˆÌ‘¹9]ë_ú÷qcû0ü/ì®þk¬‡.)öÃÌsk ìC$Y ¶Qí!å|>ööx+jk@²&Í« LÍÖµ¬GÇ1\ÀEŠL¹%hÂ,‚Œn•EàåÇ¢¨aåG.'è–÷q–GW€ñP¸x RI8%1ëxäet‘–ŽC%Â'wÃÒ,—ùIñ'ªõz~•Þ—7ÓÞäïêŠåN¼ko¶OGËÚžo±èá#-Æ7ØÝÑ5±¿+—íOG{QUzµUÜ/ ÃÕ쨞J÷*¦}Ùä©Óª³>çùÑìÜ""£š¹uL¾¯úww/TøN¦ã—§Ok×»»Ûæ¾f÷õê‹Æü·í§N®ÒÕÉS§>ª3UԊϪ4lØO6“ÝïÌY¢"+Ÿì뚦A{õFµ:'Õïꪪ½UUz¹Ê¹¹zªªúås•UUrDDïU_B|&²)un$}â5ãQ—ˆo墤•'iL%6ÀI²Ç¡  y¹ Œ]‡ÚÙÌf…¶8×|yï|FàHèˆ×Ë‹$Zhæ®\çsÌsæ1Šç¦)¯!JGª¼„#•\÷½UÎr«•UWŽî;½r¹ÝÉÕrê¹'~Išf¿U>Tƒ÷^ΟCØÕëö²÷xÉ$7?Õ#˜ŸÝ=­j}U÷;øüðßGþw¯î㻆”JñDa‚a9Ã0L'!aŠ×Œ¢#Zñ‘ŽkÆöµÍTr"ðø¨‘!=ƒGF·\¢D;D$Þe‚‘ûe.‡§j†õº;ƒ&|ˆê¨Mõ]ˆÛº†­ª« kbH‹wjÞo³ç7DÍ0 tÑ–"Àá—IgŠìy¾W™ml ‘k*(êwǃ¹Ó%>Uœ˜ñaŽté\¨U½ß "¢ä¨¹¢§z*w*z„ ììïóko™éöµeòÞdEN¯qtVäåÓÑQS®´ÿŸ.ïméTÏúã4¡SÝý2eÓ'ä«—™sNì•|KÓ…’¢9ªªþ¹jÔ©æîÍzú<¯¢åõú—ê'WОïÿµzqþÔJæš›íU?V½þJy)í\¹é^ƒfášžSòòZí*¾Sú õjDÐÍEÒö=Ìs3ò.²'vY´mè©ä \ôk²UEz«ˆºœÝ{jŒO]š®\ZÑr÷[²ú9/Ðãóªþýÿú¸LÆt\º¦–*gî.´ÏèäŸA8]Oxÿ^5ëô6õ÷{¹q—0Þ½:µíOª®b"}\“…GHйÿã…þw<·4‚²ÀåŸ2‹[ÆØ…{‡µ´ \ cò„Ž0:<‘JŒMÀºÆüœÞžtsxÞÕͤÒ èá‘­{\Ôù–ø’Þ 5pµ§18ÍñXJåa‹©çN #ñàBæÉÚsc€¯M<£sØS»’zÙët<],¡Ôc›8À©‚ó¨Y³¤švCÔk&İ•RÎïØQ®Obæ‹þžeN‹îpÕîrt{sö®ü^t_F]ÝÜzQxi‡žÚªf™ûfü°ÝÓûœÑ|ËÕÍèÒ«™§ò*/Ð^žðîœ9Q´Eè«§ÛtÏÚúWÜN¹úSÖ퉪R®y#SVJŸ¦Ë¯L•t§^t÷ð’&;V]v“75täßusòvØŽÜvŸ)ùª*"&ÈSÚ£|’9½Ù*iöåÜŒ]Þ­ò‚湊cQ­Näj""}O^ª÷}O?ØáZÞÍQS<ÑQ§›6¹>¾}?G¯Âlqå*Óâ:Û“Å‹ìykÎl™ÚH@ž;`•½S׿õÜW,Š’ܼɷµ×ÝÌkéé—Ðá«úw=ËýÒ·§Ôjx—‰±ù«ÄoÚáû›~k†éÔœ½¶$+Å5E"% ¬£ˆn/:ï"„.tØ… YXEY¯åMðŒzh¥ ˜§¼ÄRãJŽVA*ÒÍÁ( 5pÈ ­ Êǹ„cÑÍ\²U‹û`to|Xé; }å…ïùS¤Ç‡Zw$Ê0ã€zÞѳYŠæ šÈö±ºœšžæµ:ª'­Ãk&¶½’<«a”€°°´+6­«c¸¨÷¯²,¹!@4¼›].S§ÂÜÜûÚ©öSn?²ïóxöãû.ÿ7n?²ïóxöãû.ÿ7n?²ïóxöÃû.ÿ7n?²ïóxên¿­ÿó'ò'ÿÿÏÇÅ¿ÀÿóñíßýÓÍãSȹ'鞈Ÿi~ß|zŽÌ`õé5òȀǔj,„‘\Îz= ©¥X+ È2³q6Ýù©&U¡"Œc–²&o.¡”,„ôœ"ŒH‚ëdQ¹\RíµTHq j¹Z0±£+ܯz£ˆÔW½Î{ºyNr¹zªüiGB¾©1ŒNb,¿±*l‡Ë¦›« `ߨß*– ;¥›&¦ÂE,…ßn1E™æ=Nr¯i ÚšqÈ@1ÑiëÞR 6¢Åº¤ÌP2E„‰“’_Ýò*¹«{ˆßÓ7ù5'›ê¦išðÇ5Ù£‘8Ò¾~åô/™~§Ûîî^9BûR¹:ªéz§“–_홢/D_j«–•OðöååuVª#U~‚jîϧ:¢*ôL•Xîôûiær{ŠSũ˒§™:ÿÙ×»„w•?Ø!Û"³§£.¹éò—©rÉ6‚<ÈäE˪çæG™* ½¾lò~Óï%Qä\Ýò­ùAçÓÈ芫—E{úûm6½Ìõꪽý?Ñ8VµQUu"d¨«žœû³L³ú½<¤êÕjj{—5û=ùåÑ{¿ÑU~ȾÌÈBöK BkW—NV1õF!¤½»!èG77ÈØ(£™8`„ÆBcF1¨ÁŒlM,cÔF±Œj#ZÖ¢#Q2Nž½ÿ®á¹¢§°H^©—G8®jýj¢¢ùÑsà_ÛýÑþ%âGìEþjñöýÍ¿5cÂ…ó&L8¢Ä‰D‘&T™h8×Ç1\шCkˆB9¬cUʉÅtñ-˜aŠ¥µƒæKb]eqN9SDPPˆëY”‘È‚•fÖr”Ÿ”Vûg„a\û´«Õ2ÉudgyòÍÓ¿8訋ÕëׯV‰îjýr"¢ù•3õµT‘bE§­ƒW’ÇH|zø¢ˆÃ†ã8bj•ÃدÍZ6&MOx·Ìµ”Á{+\ÇMœá¨Ú¢ƒ\×È&²‰¯TÈ@B4²J#ŠÖù%‹IеõëÞçuo=;J« 4ŒUFµ„'¸Ü÷>L©iÓŽï]߯Z›š÷&išñ—U^¾âtí-û~žäóìD4qˆR‘Ú6 º\÷¹Êc©Ïrä{þ1bOBTMëýÌ]_aSìpÁ’´qýYÉ—e‘Å“Uɬq¤L>oTAµEŠŽzjÐ=oiàÌDl˜¤QN´c•?® u£{€VäP=Ìnà^ÇååqßÇüwñí¾ßÙ>ÏÙ>ÏJÔú.OÇÀ[_‡­Ê’G¼’!"C ”{­zO›ËÁÒFu¬„BæÔ§9¨£6#·ä‘Ù««êQ¦Ö< Vk±×GÏa„(S@æ‹0Ìvî¡4µ”ñ!#Ù,|¹ÃR³hˆ9Ó"`Æáù;L3E“Ÿ“<·êùîÅ–ª¤­e$Ÿ~ÜѤIXb‘–"H¶–Ò1Å‹ÃAæŠ9Þ9TxxR0¶’ P¦ÇÜ ­ï£Nmu„¶U` b ê+dOH±šÕ ,è×4,Ò2+s̅УÊ]#VWÆ{̪õ<™èéžÖ0…AêsBÍ#c*è­å.á‰ëßúïù¸cUšÕj§T]Œ²TïÏ>™p/ ïç»Ä¼Iýˆ¿Í^#þÀ/¹·æ«|$^Ä;*hÏþÆ"$gÄ»·D”  Y;…PaⵊpFb:ñDHÖ,‘G:!>yRŽÑc’$ÉFÀ) s˜ŠÑˆ"\òîkÆ«œ¨ˆ«Ä¶¦~Æà±~Ž ?§¹“ÓÑ×>U:°/s}ÇfÆgîù/ruôúrñ¯¼o93Ù¤›X뫆ôi稙¢.NÚŽ-Mt¹nk™Žj#K ±ãœ¶ÖÅÞ”lšÖµ Šª¨¢D«¶£‹S´·7=ïsÎw–ALW§N;½w“åýɽÿ¦^üºç§R§£>&k!ŠöŒ`ŽŽsÊRy ÔR‘î{²b3'=ÚQŸzà4Wšb„§qã;ŬSn©¬›È´è𨊢r•ˆëCË·*°Œ{TŽ7S ÄzJa$A.¹æÕÄ&Ú*àÀ‡œõ+…8£ ÅVµªG0,cUêÖ1ªõMJÖ53É©ã‡v6µ!©N– ‹Íp !¯pÏ<}bÏoØY q<±1<]üwñí¸xj+æÙlq^8QÉ!Í\ƹʃjôGh¿¯o§xŠXé¢0¹8^)³ä1ª{çČҵÆcLEAIªôw 5e`’cFÑö„•t¹Ë“Ç‘§:¿–qЄæcˆ¨ÅÐÄÆ|„˜{Á¤ª«›'Ëc‰š¬³©¬I1Ë Á/'gj'S «.¢ ‰dE±’iÑêÍeq>uµŒ¾bÂÊYçM>ȘoJ”Bœ»@Â=o]ܘƢ|”‘ÈïdvkÕÌó/Ôî_¨¾~†™èrùIŸ¶EêæùÿçÉ|¯Òðb£šäÍ<ÿéèïEè¾%áíssEó§Ú_2õN Jf7¦Žææ%Ë»-~Ñ¢z6ÑÎÍUxÍz¯•“•4G.zS$N=Ý)«5ëëü¥ïö¨\åô"}¯Fyuë·ÏþÒÕG"/w³;4Vä¹ûy~FY Ú^¹½ÝÙéjg¡¨¾f·5ô&k휹¹Ëš¯Â²†Í¨;C2ȹlGͪG#®kå‰ìÏKŠ`‘„d7¯¯ØGå=îÉÆg"!$É"#wL“5É­cZÁ ƒÆ6|!¢ÏNé˜ÌòÏ-z[ž]3Ë?JpUô ÿÌ^ý¿óÝâ^$þÄ_æ¯ÿ`óóR=N™Ñðü?‚±-Ä1 Ý A\4’€dëc‡‘‚š%Z¤Yr"VÍbG… 8!ÆE‰(‡4XÑÆÑ

ytôtáÔDDL‘¢"'r"y‘=³ ÿ¿ßƒW>ñ=Ãí»f<"kLQÈŒ(ÍjÝŒž21é³Î0e*È0Ø2B©ÓÖæ¿öªú<ë¹Ëå/¡ô­÷?•zýÞ^ ó;¡këÊŸ<ì—)‹ÿÈ>Xwçþ…"r[?äéfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñ*ƒÁ›C>pO*ÜU0,“R4HÛm6$i³8¦ÊË áZœàfW,(E²¸°mc'o˜°³–yÓdl‰€ô©D)Ë´ #Ö÷hØ6äÆ5äüº¹ËÜ6yO^þ¨ßBd½{ºzxGÊèÔ\Ð _%S¿ÙL¨¹{žOOl¼#ZˆNˆ‰æá?Jåûö§ÛDO? à ÅÉÍTTTè¹çö{ú§£¯2|²yIúW§¶Nõ˯TÏ®•Eóø—‡µS£‘Q~‚ôàÂ/M—iEÒ©©Š¹&éïrù,cu¹ÞBõR' ­UÐLV)Åͨõý#3ÔôÉÙäÖùHíAã%ò&fŒÓŸ“šw9Zˆ‰èL¼”nkð¥o`ŒÎ¦œaÑÛ¥áBOce˜ƒ:‘œPëb*¸ƒO+0ƒ¨ÎÜÜ#l“JÒ9®ÛqÚ1é m £cB+Êò;áÀýÓîŽáÿÚýѼ1úZÖçéÒ™x—‰?°—ùŽà?±ù‰óF>ª0!µû [8u•Í2f66àË8û²£Ç‹.jžLoš4“:5F§Õu,A›#°¦Úo²Ì•ʆ0 :qÔ“gÈ`ÌÍ9ä9¨ò»á•Mð>ó_úë¤ë¿X{çPÖW0jk£móì¥ÇƒÅ`½*Qnœ£õ½5”Œs{Ú‹ýQ0/÷ÛAùCꉾÚÊTL ýöÐ~Pãú¢`_ﶃò‡áBǘ2dɇX‘"âŠIeIFˆã€SœSÅsF! ®!æ±W*'Ìù62QîäÏKš5¨¯!õhµå1^Á #ÚÕ•q=ÄWH#¹`<ˆFÁ„zÆ‚A‰›qØì•ÍÔåRÉ+Tç+œž±UW$N74ïÒ‹ò©éËôÎó÷*&Mè¹æ+»Àþgt-}ySóÿ’¥±ùËüÿÐ…NCKgüœäµ‘Îâ K2Ÿ E×ÎØé+còÑ0\u~s§iÝYý›Ê\7ÂUãv.nã†ê¤Jdç[29.Þâ'mα ­1„A,D•_[^i·»¾OëѽxÊ:hO‚Ÿe7'ÔÔïCÑ:¢/å©ëÕ^ìœå\õ{l³ïËꦯmšøÿÓ§»õ8D^öô^Ò‰š§»çáñ]ÜÿdëÑ<´îùf&}W$ÑÓ«¼KÂðé`LžÖ»RôîL•W.õvÛUÙ®iìMEó"æç+—ÒåW*ùºªæ«õ~Ñ ®!HæŒcUä#ÞºXÆ1¹¹Ïs•­j*ª®I׆ÊÄ=ÞʉT2j2H™߯z;¿ÚùÃ&0B1ŒmF0cb#XÆ1¹5ŒkQÖµˆˆ>@ý¿ÝÁÚÜ¿U¾R}´Oñ'öÿ1xìCþj|ÐEEövÖgHð¡GDÜ)2W¹ÎsÕ¢&¼ò¥â0‹&IED#[ONÞft£^^MÛ™£k‘ôG–ƒpŒ­­a(B!âI&|ùŸ ÂU/ÀsÍ0àÐ/d™5|h%ÝswY²+YìÐÒ4DßÔf½Â Öâ+F 8ðÒ×É>±¦Ü»+Jù…´¯C?x53ß­ƒpDZ¤¯cŠ'ÎL‰³d8`,©råqãEn)äH9\Ñ\B”ŽhÆ6¹ïr5xÏcÊ#ó{Û]ŠSbM;ZùŸS¡´äóÞnÏ9±Ìd^_w`ûl'bLB'¥tÚzf0ˆâ‹íÄhæ)ØÖ4®pâ6Ù†Œâ¡†#2ŸÎ\›|¼«,A¦is»Ð"Õ]¤ôYIÝgl¼ŽŒú|1… ×.ß/É-í¦‹!1 ½>-•(¬èBElm¡=vóÆã•‡…mU‡„Ð4N…OE^hÅ#HG¬§»òbí{DæŽXãm„jÈí*˜…dI¸êÔ"Û!®§~’¤hÈ4kæáøu“ %rº)èÏ" ¯Š½ŸÕ}·ÿ”85•ÅŒëk;|Äû)r'M>ȘoJ”Bœ»@Â=o]ܘƢ|%ð°þ+Ä´pÊwJ$J{ËJÈÄ’ñŒOðB”8îB7ÍR8bÚXÔOꉎ¿¾Ûÿéü~?âæüƒÄp·N(@!lª«fÉ–A¬|© …}O!È¥+bD‹ç #„ZFвãÁŸbÝÎbUn ‘S¹•ê-˜ª®Ž QŒšì¤î•3vXF€A}ÆÅplWs˜‹X•Ð…‘^‚ÙŸ*Ê”çÖ ®¶6Ñ^ð·yƒi辁 ”ÀI VÄo“ „^ø² ªd7;•DWD—*2‘®PH0´‘Á­¨ÆXRÖÆNç/·TNš}‘<åÙ‹aN] ¦&†. ävLc•>bC± Ñ6ì.6ßçÿ½ðK¶×OµÊ?œYfÈ8pÀYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ðÈ“qÕQŠ@6C]N; Câh×ÍÃðìáˆú„åtR²X5^&ˆÁ{ãzÁ—¶š·¹ÎÚŸƒc-®_–äSs{¹›{w“ØÛŽcyÛãÔAÃxxG:º ¸ðdXÛÀŒÙ(Q dz—"¦aÖ;yYR D1•SG‹ªn{^ƒ”ÞÚìR‡ êßÚ×Ìú _9–ËvyÍþ_2òû[çÜ‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯É=ÜIõ;ˆ/(9Ížs±m§Õó\¾ï/Ìò2¿±¾mÝ[[Åі㳯gªÎЋ_Ê7•³©¦—Ï&Úrö3ù\IæF=¹s;I–FÖCsÍ”íô“ê‡ÑZjÙäûtúŒ·yŽgžLIÍnæ ®Oclºùæl<}Rañ4*M·§a£ Ø‘XÚ ·“ïkÜV¸‘@HÒ¨FV; âZ»b¸’°D}‹aF%"DšiiÚ C†Æ–T Œˆhäœ)y>N›i5ÚcAŽó“' ¯&”òÒn‘ šn#7NA‰7§íg;\¹ò$½Hæ3Zùñ FÇŽ= Œ7ûQÆ1"äÄá=fÚ/ºõëѹ§“Ó,œþäëÝ©zåÀ`ÀäJí¨ñÅ–n\•|êŒcÔWVˆ#kˆG0ls vê³Y$IQŒO•$«¨¦{Yý¨‚qH8Â\bík_“˜šä šà)âREø2òz(帽p—t`”X'ˆ+)Ë¡’Ñ “aÎN#s`ì\;_ •øpÝ,-š¢VÊ|½ˆ£9ÚÊ(¤tP ¾Ö¨ßZŽ2ÏÏ@‚ÇŽÒÕréc\¹5Ë’tj*÷'÷ŽÜr䬂9£k\?)%ˆ×¸{º61Z6¸YïHa4µƒZ1­`ÆÆ£Æ54µŒkrFµ¨ˆj&Hä8ßAÿtw ã^%~Â_æ;~ÆÏæ§ÌöøH½ˆÛ^ýŒ DI,—IP«(,²vćÄ"sàŒõm‘¬_òtAü:¡ÿ¢uŽééíñêfÞ¾ç®Ä÷my¹« ñU˜jæríO^ qž& Ðˆg’òZÎ+Øæ: bV‘ÅùÁä®ñ¥Pæ!æE4JþjòL90ÁJb (öE¬8Šý½«Æ!ðM{£ÈA”XKN—® ögâ)ñëùk7o´{µ5©gÏAÀÆ~›ªùu2rš,…`. ḧ‚ø&‹‡k [»èI‚Ÿd¶—0ç(̃dˆQ9}€š+A)r2mýÍ­äÁ±G.âÆ]œ‘ÆaVGaæ˜ÅhS\ƒi G£u=Ê¿0»¸iqà€,­ lžØ­‹[;!‰WrÉõÑ6BŽHÑDP/` Q¼cÄxzPX ØD•Ce&k6[ÏË‘ù«\»¬iÝ",:x"S™¯Ž±€Xš®Ék…eˆ`O®•g²LǬ¡WJ£NefŽbÂI$0  ãjSŠ;æPÜUÝÄÝ’ª,"YF–0e|wžL6¢0Há9ÈôaFõn—µWäªÜ. Æ Ìmµƒ¼¦´ãB”#fÃdA¡Á&L˜ Ô(«ŒkcÑÖ+—ê'ËæjzUW»…ÍsrùO\þ[,ºwtL²N‰Ñ=9¯Ä3ãe"G‘Q¾?,PÔ~Ë4>ȺyíÍ‘¹àR0\ð‘ñg®¿’äM› !ÄeK—(£,hãqO"AÊæˆ šâ¤sF1µÏ{‘¨«Äªm ùÁ<¨sqTÀ²MHÑ#m´Øll‘¦Ìâ˜G+,'…j3˜!^@°¡Êâ|ëk;|Í…œ³Î›#dC·¥J!N] a·® ƒnLcQ>OÛT¥_ëlê©ÝÔ‹ým½[å/§<•3á -PŽó ¹ì7.åÒ½\îüÕߦӖH‹ð•sÜOu~¯Õúüˆ¿OÕ1ÞÕý|Êä#Sõ¿S…Os§r®M±5DM/TꪩÓC´½{½®Y¢*ø×‰SÙš™×Jª¢£šÞ¾O”FV^N~S}nbMˆ½5K3^ƒrnhrGL¾#t“Éj´h¬ÐS Îf¬¢2®½r¡òˆ×«WCŠÖ3!¦†d&#›êÕ"½îù/ÐwÝÂx׉_°›ùŽà¬góSæt{`þa{¼;‡eãïsÃml§Æ.â@€DüÝòdÉoam ÷áï†ÙJJ꺇?ss›iaÉ¿ÞÓ¶Î_K­Ûm\ù]íÄClÖÜ}8Ø}åÃß7™6þ檎NØ£—qc²1$¼d+#°óL8îLF‰®R8b#ѺXåF±&!€Òºm=3DqÅŠöâ ´sìkW8q lÃFHqPÜ!„ª¡Ãæ5O‰ .ÎLèÛŒHå+$TЍûM#æGçn¸V 2´ÇRÊ{±V&µ·ŽI²6j&ÅåôâÜ)gX¨|8h¶QæÉÐôž^RÌõD«ê ñ#ó¶ïÐWŒÒuGBÉnXŒ4ö °1J6‘à`d¤tGØŽ£1ÌŽ€Æ‡m&K£=^á1À”À|&t§íE‡Ò¤—Kß¶ãqLýkÈýc¥sÝ–Mj®IŅܦé-„•*ÈvÀÖŠ,mlP¼´Q†>öÓm½Ò&ãܼ'¬Õò£Ô‰ßÕýʽù*5Yçò•ÝÚS8õa\…ùâyP¬^"‰’H-M&£®ë¨¦ùF¥k@…#‚˜ÑBkX1 F°ccQÆ1¨kZˆÖµ2ù-k¥ÙöØgPKªÃ#g"½Xùa?? ²áÖE£Ü‰öQêpƹî{^äj£ŸD\Ýš¦J¹ôË>ïX¬b«ßÝÑ<„\ѾR§”¨™¢®„wO?3{—%Eòz¦…Uþ·“¿J™f©Ÿ\Ó%MJ';R¶CëòÄ{tQW'iz¯Tkž­ëÑS‡}Ÿ¨¿öÿ§N\óv$îÏq½š7¢f¾R'O%Í\“?ðV/Ë5Í÷z¦\KŠí:u¸¢ÐˆÖí½ÎèÖùoG‹ª7=½HÔj·ÄŠ7=u5ü—h(ìü£ª1¹5ÊŸ,ý*ѵïɪÃÙ$½ŽÔ‘†ŸfŠì·UíGÈjûôi QÃ"kÕ¬cZÆ1¨Æ1¨kÔÉ­kS£ZÔL‘¢'Dù/ë]÷Gpž5àˆ©š***/TTTî^úÆÿ"|Í®ÅÞâ! >³™é$’â=B¸¬ DM ¤£GÈ$¢HdkĆØs©ç|Š[òÎJW"{Ô¨åôtW·ìý]„ÿßßÂkŸ›r&Ípဲ¥Ë”QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâX«í=W܃& »fxO)a>Tr9½ÈîlE˜jé³a”êÞÍ9#Ê¥ÀÃàƒƒ+¤äÖ–‰;6;á>4¨ëu!nœ¯– ••5vpœ8­9"šI¬®,g[XÉÛæ'ÙK‘:iöDÀ zT¢åÚ†ëzèØ6äÆ5æ‰Ó b)µA‘¸¦…”yµ¯)ymÉ]™bué9̉\ûc$Äùt:ïš,i…Q8æsì0¹ž7,œ¸™Mk í–u˜ÕCH[èLlc"²3‰L³7 b(V‡¸¦…”ˆ6MymÉ]™b–„×KŽ.}±–œœºN׿!‚®1¶¤ÞÉXïDßi²3P³Ôe°mÖGˆq™ÎI%Èé­âOXº}²ù,ýr÷*ô^‰í—ÜEãJw5>Ϻ¾ê¯U_:õã´ ŸÝíÌw_i­wgÉ1DíC)&kF©Îrçn¨é—É$¸Ä–ði«…­9‰Æh·ŠÀW+ ]O:qï6NÓ›ziൟÂxyÜ“ÖÏ[¡âée£|Ü ÆLB͘$Ó²£Y6%„ª–w|ÀÚwIÝŸx„½ÞÌäîîw’žRéÓÑU8BwKßרƽþÂÕö½Íò½²éÕÑUxÔîDê¿éüžuã 7ÜÖ©ôSÉoØTW}g‘ËÞ½îîÏ¿/2jˆž³}Ù¢74gê—«]õí¯ŸÉTñ+Èí-O?úuû+SÈ™½uŽL¼¼œšZ©ŸLÑz·,Ñu§~~l×è«¿œç.IÓ5\“Çù¢¹ãMy"¢n7È*";®HDr'N¹¯ Uîö«ú×&Kö³âDw/TÈf_Úu~ô™*û­ùoðî"X#ZÖ9ïŽ÷iÒåqtmEÓ“‘ª$vnLœlÑ«©îãrZ¾0<¯#ÚÉr§Dò^ÅA³<ú½˧ ô½¤áL.ŒL³](ÝO^÷½Q©›Þ®{²ò•~H‰úÅû£¸Oðÿ«Ã?Zßäù—(ç™2aÅ$H¢$‰2¤È#DñÀ&¸¦9ŠæŒB\BÍc®TNŒ|!C±S«¨¨7£NJ@‘Q—M’!̵W7v¬`1£Un{žK‡´Ÿ ãWùÛ‹qCSÑ“îäªýÍ2ú¾µxÁùŽgzœvÛ›[:{|¥½åôî>S´y]ÝI¿³¿¶ͦ|ØlüY}”Ï—aÜòÍ™ ±‚^B¶+ca˾\e•ÉE?("¡äíD°ÿk$™øÁ?l´ÑSKeûLñ}×ÿ9Œê¿‰KáîÅXšÖÜN8e$ÈÙ¨ ˜ñ–¤E¥ˆ‘êa#¸Œqb ¦B9Å’w“æ°&C9¢KˆaI‹*1^ ¤í($G8•¤ ‚F´‚(Ü×íGµQÈ‹À¡Î”]ZÓÎ!Yµd’cÌ[Á•³ÒÚw ’-ÛtÈH¬‹±ÄøÅ;Â6NÌÄ 5D’±Ìy‚‹v2º"#€£d‹vÒ¾jš+"Æt‚¾0¾A$'! Xq"‰ŠgzçßÇ£è~?û8ü|eâÍz =²ÿì·õ_iž~¹'ÔèDDOq:'¨çç¥zäÖ.J¾Rù×Érèo”º‰å&\#ÞçjòôªÕEUÉ4;N^Õ<ù«UÙäõbzÉQ<„FŠ®Ï¡‘QXÖüª5ÂWô^®*ôEêäF¢«—,‘:ª¯™<ê¼FzuCic‘N{žÄººuȞɗr«S¹z§‰x1•º¶‹Í›S9ATzôè­{[¥|Î_Óiù#ؘª™ä¯^Œovy»Ò™¢éLß—TjñìÅó{QtÉséå»<Ó/6Úuóôê§s5µ3ïÉ ü³îë— ã^õxÚ÷±ïæs3Q³W“ÑÝzü¿E^<žKwXŸ,>«ß’{·Ï¹WJ9?l¹/ÌÖÓ×N¶±“¹ËÀ­‰"tÓì‰ç.ÌX£)Ë´ÄÐÅÐ!¼ŽÉŒr ±6&&c©€] Ìr#ahÒ­$(Dj¸Fµ0œáZZ ÎFâUÕ‘`¬Ù·?!_Üìò­·²™n‘77¹gYÏ-ÁßÛ ›iÑîm^{cÔ­õØé; }å…ó\-Ä“ŽK9@æ¡QUƒœ·•™gHÐòG‡ çã-”Ø#–接IŠ@$¸|petœšÒÀq'bÇ|'Æ•n¤ €-Ó•òÁ2²¦®Î‡±ç#ÄSI‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯Í¾î¸jàñâ8ÛÒ©äüK9Uñ~b¸«´3I E-„>RÕ‘À<åàPñ­9ðé6@ޏ®q­ª‰!‘Ìù…4ÇíZà”ãà;oŸœ­2äˆqŸ,¡±©Ÿ Ò¾FæÄêé@› ûEx ³&3Èm˜d 4=to²sUá×ò@A˜/-Ž í Œ"ÏA”Db«21Èæ=ª­sU.Æç/sS5ãÊöÝ\îîŽr«œ:tUTOs‹{§hUÖʨê&àô´ræ£ÇÐ: ®½Fÿ,ˆ¡*&ÓUw¾Guæ)µEcN¨r°ç!¤ÈUAG‹ ¤L˜ukHg ,sqƒ"QØÑŽQ¬ "IØ+·uŽtYLLAi¦kM\‹(ãaé²#¢×TJèãOËKh‡ÁÝóE»¤jäõ^ƒºç|·_”g•俹[—C{9ú{#Ú‰–K›t3Ú³O~i×R¹sò²ãO¶éöµ/s—ª.•N<¥ÒÏ3»êþ›%D_+§£.;¾¯úuãªýÇÿg§w‰WÓžIôxÖEVÍ—{—õ9ú<îúëš±£žKSù½Î_Bfç/¥xV1§›ôù§˜Š×¢3ùFû*é{\àæÕã½ró75ToësUË»¯Ë›©Ê«ë¢ææ5’uÆz½röé¬hÕÍ[Î113Ï=ZQ5*dŸCk·“õ0yëÒ#µ $×çɾŸ+¯•’ôàEËNàØü³Ï-mGeŸLòÏ¿$ñ/ÛÑMìÕúM_/–¦g£Ûe©3Ë.&Ò]Â5u­q–<Èr5‰ù#š¨æ«†`˜naãIÉTb Lb”ò.ùµ µdÆ&mÜÓ–¥Weñ?”ò<¥v¯)š:£Q$D舉܈ždOÛ×ÈW®•ó1u.A®û½rê«Âxׂd¾^Jˆžu~‡^ÿ²©öý;% ZÖ3\“&¡¼ë«Í¹Ÿs׿¹ý2s®EEEÉQz**w¢§™Sæ4L7†âs3¤æB”Šá®„71²,¬¤5„å ÆÜf·è!JR0É&,S) ³Åö`knîÚÕÛói{Ÿu­(j‚V±Ä#˜)6òDɳX!о¾³ä7"w±t»Ü] ~_ܹ«ÓÓéù¶ø÷–üÝÃ4ÿ±ÚVŽÂí5roø$;Á‹Yð,áNlL¯çb4®¯æÈÍ¥|:2z‡§vŸ`¥”GÝ›.L¿â-¸Ò‡·*1\ÇMª$²Á°íùn‘6lƒÌ™0å•.\¢’D™RdÅ<‰+œSÅsˆR‘Î!ç=îW*¯ÎÊÃw–”¥q¢H3`K(cÌ|¼‘[a ÊX„N!S–ž žÃD†b±Ñë|!Öçñú¦¥í0sÔÙþݰŸ2ÿíQkðïŸÛaëXVð ¡7ᙤÙ+À<´±t4)£ €¼ðf #n5²7._ º²iùcG¯?(}­íÎÞ^»ØöÊ×jœXìöA¸)«Qò =P­oòpž67¯¶Ôì²ö£ò¼þ—èN‰žY÷wðï¡Å]y0£!$°9ržérŬ>Ææ IÊ1+UþÆÖ{!WÙò4ê˜$Î9@•£D;¢ÀY£!6òP‘‚&6JÕŽK-æ2D ‡z[Guî*´=Å£À¼Á˜°Q£¢ £Å‰QáÃ9Ä3…8FI&‘(t™');¾OöG£sîô¯rtjyK–ižIÓ½xöTPÎ.›†jõòÜŸNäV'•ñF¹}ªð‰Ñjy-NõËô©ÞåëÕ}ÜܽëÆCG žç·w\óÍ:·§™¾înTã¯ý¼tO«çÿO¡ãÓõWý>ߨãÜÿOµü¿o„)û»Ú5ï÷5ú=:|ýÏË%jéfJ¨šS¢í1S$F¹XЍ½}£Q\‰å;K^Šª½sè¹õo›ØÿÚ‘Éíššò®)¯Â$ykŽaš½®±=ÝHŠ‹–më’¢åçNQ½¯DZíTs^×µ®k“¢µÈ¹¢§ENýL]`{]×7ëŒuw—ôAµ™õÐNŒFðÖå–ÑÎÿmšîçî|S,º÷gçÉ8^Åî{U«—•Ó§^0ÑæD5uÜ8Ê*»ö·M…yª‰ÉRÒ»Ÿ€w$ï-±%Ët'ÔΚSŒu¸¢¿•Y<Ë«§¬“]hÇP<ð¥÷#:$¦F²Œ 1 6^d(ï‘"~ÖÜ›ãþÙ—„Ò^©éó÷gçÓ—F™ûŽÉ;×Í’ú=<|Oü?ÿ/ËÈN½Ýÿe|ééL¸Õâ:*d¨"¢ôTTcsE÷|r4iËSsÓ–Zô7s»åµê×çמ}sùŠÞÉÉáøó…ãÊÑÉWj¤ ŠÛN`™Aƒ«h² v”ŠØ“5 […ky^k–u”ù|«;Yc "t¢~êfÊȵ‘¤J˜H0bóFGü‡þ”1/Þi¼=Sú㵯ÑÐÁôúŒO«Ÿ­¢¢ßå;jæ²§šÚßå»Fh!ó;ÞÙÞÜÚÝæŒÏR|ÓRâ{ G˜à)âREø2òz(帽h—t`”X2" Ærèd´h$ØGs“‡Ã£'¨zwiö YD}Ù²äËðN"Û({r£ÁìxôÚ¢K,ЖïœAÛaÛI´öМÄ#8[¢aÃ'––.¡›†Žž Áž¶¶@ÔÓÀ*¼#Æ f ^‰Š«A!ÌsÁIiK2I½0ƒ–òΪÓ²8ébÄCK¬*g³#sbu| M†}¢¼Ú“ä 6Ì2šº 7Ù9ª‰ð–ÆFæYÛA…!^ŽW0CCÙ#…“š&ýxªô{vœTÓ­Zö3è'òzÇ»ôˆƒN«çÉïéÝרý+äù¼ôðtì$á”Ã’š‚XÐó™(/f‚#÷cG(Ú77CÜäa¬W9>E%Æ$·ƒM\-iÌN3E¼VÒ¹XbêyÓˆÇ|x„y²vœØà+ÓO¬À->¡ 7YH=UJRÆ)­CDÈtÀÕ!‰õÊûpš§‚â*È|'O˜"5½33¿;·Î©­½^ü²ò[úlóò\œoÊBùÌW{]]èÔö£njºSÍ©Z‹’åÆ˜íýÑÈ¿à·.ôé’»¦}4ªuãQUÞ•êåéé\þ‡_µÇDËÖwù^oÇÆ‘æ÷{|þŸ2uêåèœnÈçfÔoLÑ®é’ ½UÎÕÜì³É:#|¬Õ©›YÜæf¨õóû"èîTÒŠ1»?)èò1ìÒ¹¯~Yg“[é^æ¢5:«’"&nU˪ü'¿ˆPnë¦TÙÃ-"¾Â˜Á*¶.üImd8Ðùy ­B4­(ÑöpVõöB*ôEG!ÛË#{üÝ\½;‘ιI•uyFuÉ4«˜Eý*/Q¢ù×§~žœ/âM1ÁÒIR_;œœ¸ŒšöKF)š3!cï’cÛºÏ*£d´ lvH¨ÅøvôOc”-èv3Ç-àtn`@°#+ 8ò& 6µ÷¥Ïg,Æo±Œ,<{“×f®`q•÷W†1Æ òÁ- b«¬ÈsF!•‘„ÖkÔ¢r§êU¯þb»)oëš©ü©ò௷)@3s3̬OKšçkjus‘Ïó1Œ•2Tè©çO¡¯Ñk³V¯ÑLÓ¯ºŠ‹õ3N "ÊË6äF#zyN_!Ý:æc—$éš®\hI-Ísöí ÛÓRõyÖ'Õrf½ªñšÉ æ¹{·WÏæµË§~Y{½S!Î&yûV*eôuèûYð®Tîêž~èx³Lžgù#~æj÷õÏCzwur«[äç­ªç*¹ÎUUr®jª½UU|ê¾uù‰xCê pÎö]‡sË6f‚Æ y ج=‡.ùq–W%ü Š‡“´qEgƒô>¡ 7YÈ=UJRÆ)­i‡"d:pjÄŠúå}¸MSÁqd>$M› ó&L9eK—(¤‘&T™qO"AÊçÇ1\â¤sˆB9Ï{•Ê«óùØ^êm9É–û@æ$½sÕòXjùû •!cs‘Ê”ŠxûfD"rÞEfÄ-1gU4\=cAä4£™0§Q£Œ\¼€ZNhä™c>“c«á|#W#I¿Ù¤r£v”V'Ö.­jF¾¬êDsÔkÅ¥ÏW=Ï ž³WOdWûµÔÜý*ŒÒŸS.î&LP0ƒ\öï»mV<¹fA¶Ž]Ö¼±ƒ=›¢nMàˆöï#Iò$ªzGbý‰LH† ŠŠià“ɨñ$ IiBp•²ˆúxšì\°ùy®§ؓԷ¢Ìó§9a×´†mM;$ è´õï)QbŒ®n©3;$XH™1I%ýß'ù]ëí^õèšXÞ÷.j‰îg×$ã3æ ÷´-Ui‹Ó) æEoõ¶þŸ'.¦"ñ´"¹¹¦–·!±}ܲóªæó¢£´¯^3;ºw£2òSª÷'ÐUMNEv^uãÉO[îù“ñÿ§^¥rj/”Eîú —zå×JtË-JÜÑF:³ÈŽWwiDÍW刭ÔßcF«¼¥;><¯)Uº\çe›“¯rw ªŠ¨¬gz.Dq;þ*|/XyS€3l36¦œrïl«‹‚‚ ¨²ˆ6»T™Šǯ2bŽ3âÛÝ0›ìEyeËdTSOžq †âž3J„­Š6\K×bå‡ÌBm8æË€´Ö.pùy•.„&¢»y ]0Ç;žÝÄ™i­#œç4Èö1Å$˜èŒ]ØÊä×Ü„¢ |ýÄÕܪŠÖ«r˪·Ûo1éž}ÙµŸŸ?i§Íßž}2_¸”-µG0͸‰ä»`‘WÎôß]ÉïTòsáñ$’I“ØÂ""#¥Uá>•V?[©òI£lè¬òã3Ù¢kÉýpH¹ißL‘5]FùTLÐN#Ç“»–]:«[—¸ª¨ŸC.2!‰—éEú ›~Þ¥ëéïã«[ýªiþEéöW:}_ÇŸZª¾œòüIðàÉ· Ñéú¤ùf/¸öæÇ{мþb±¯i“I’£z;½S-*Ghꉒð«Œ{rUF¿6Ï“;•йeå*{Ñ©ÆNŠeÍ3ö6î§÷BÖÔ^ʹùòÉSÄ¿éòÎñª°ozwfÖ9ÉŸOBqå¢3,»Ü‹ôrÓŸwº©Ã´;Ù_ìb^Ÿvh×ióµŸ'¶Èl{²\²áQŸ ‚™ª¦–tÏ=NÏWé³ÍÍFgÕ>aÀ¢¢€{;k3¤xP£¢n™+Üç9êÑ^yRŽñF‰E“$¢Ž"±/q!ŠqdcÄûg E ‘FÉ̯ˆói³8¦¦µ”v«ºT Ú‰±ÈS|ˆFc„D–jHñXB1’vÞWKp#µÊŠc6,Y2TcG=æTÛÜÑ‘3ÉìkÓ>üœ™¦}ý}nÿ¿®~hH›6@!ÆÊ—.QG4XÑÆâžDƒ•Í@5Ä)HæŒckž÷#QW‡Uø-g;)û¬‘‰í«Ê8@a7h”uÒž Gœ G]Fº„(@-z³mâÍiÀ[ŒKo:êĺӘœwdOy\¬1t#<“¾<C(Û®lp ‹§ç/»€Äsbl6¼-¢²—¥ñ‘#€û2Ô‘æK¯ 6ÅÅz´ŽéMJ;f€¬ ˜qÙF3.–È¥¤hüÁ#4úóÄ–sF÷–ºdÆEIpÇ5cH’0¯®œ4hÊÈ•Ð@¬G#ž'Æm’¸¹¹ÈâoØ™¨¬A·i£M:ÑÏ{~‚pÅwËbjtÍ^G#S,Õ3Ë=K—]åÉrñS<ôª&]WSº7§ÑTãKz#S$Oq:'Óß‚ kÊ”šå,Hå4jÐÝ›!ÚšÔs·2{œŒ7ä'^b›PTV4ኇ+rL…Tx±" DɇV´†p¢Ç12%­åj07?…0û¹'­ž·CÅÒÊF8ù¸Œ ˜/;‚͘$Ó²£Y6%„ª–wqÝòzŠ37HÕÉê¾HÅî¹Ùy]~QžW’þ¨æåÂK·¥*'\‘]ܨQC{ÓVMG9WVY䉟±ô¨«šôÉQËÓ??L‘¾gf©Ÿêý®ž\¾RgüŸöûŸgÝÝ96ƒ×½r{útÉ2ËÑÞªòZ¨­r(˜š‰§B瞎ìžô&´~–¯Ý9kn·¹ZAñÕU~Š÷yòOCSÌÔòZ>ßÄ[ßÍ=C@°ÏD·»†øÜʶÀà’…Ã R’0ì[Ç#,cTrqO†ê ÓW Bòð@Ño€ ^jazžtâ0"|Òl¦ºAÊôÕ⣞æ| ®H%ÖôÓlg’=í·nº#µ9Ž{6²šÒ4Ë=Ѽ}þ×$ÝÏÝøž^nüüÙ(6¼Ÿfhý>J™ÁTò³þ·äçßçEϯÜ®LÆFH ×嚪Ô;%ÕšG’«z½«ŸNƒÌB^‹úw¦~uùTËå[ȹqÓ…kÑ©ª™¢¢ôTT^™/rçßœ-UŠåîïp{šï:±W£¾!þV—Æå÷~ú»§SDÏ$óæa&nê½w˜Ö³<¹‡9Ù"zÏÎÑÿyù¼~wïCÿ7Œ˜Ö±;òkQ©Ÿ§$ñ/ÉÝSP×úã“ÙÌSâLÈ,#PÊó±É—Ì6ɈÅÃÚyq%´yL… K5ÐävÜèû\à„ „ÄX¶Uæ‘{—Õû“‰Ì¤¬AdزqÁI(J覱XÛpGËDhàDhZ£2QIÄ‘(ß#Óý7ÀûËÃXÞj#Q=ƦIßëRYžf’Ž‚ÖÒ" ÌFA‘ÌŽÕÁH·H„þa€r‘FÒ¿3aûo»u‚Ãu2"¾lr¤&ÌŽKǸ‹ØdoÂkLai…-%WÖØ<­·Në"Ÿš…EVN¢,žXq#CÉ"dëZWŒ¶Sg"Ìš8‹Q¿9À—Æ‹.)…&,¨Åx$F¡@pJÒÁ#ZAnkÆö£Ú¨äEá+|$œŠí¶VA楘íÒ\@ŒàÆ4 Æ2i-D1L £;>ÖLÅ0EaU>œ ›«ålCmà.Ô˜Ï I¶a$ÐõÐQ¼nÉÍTOY‰ %û„mÔø­v–3àx#2ZžÅ8E©S[ôk#žEs•¿A8®Ž™gÌ„Î蹦DF¯vNÌ™§UòS»ÏÞZŠÏð=—ííåõx^*P£xœ¼ñ¤c˜ål¦$Dr"« °¢µ žÂ1U®Eù U1N+ŽyPf‡pᨡ’(ÙµÖØ6gˆ'©­ÇµcØÄŸeQ68Äg^â«CÜZ<‹Ì€Ã:* [¿SßÞ‰Ÿ¡­ëí×§^ôïá\åiLŠí=W— ›Ü×/Ë®zt«û•Ì·8Õ©Ù÷£³V«{³F#W&5rýSÕ3kžæ¹Sá=üEÃXj/5>Nd)H®*èLs"ÊÊCXNZ mÆk&‚¥xaà ™ÒbÅ0¬Õ}PâÖs­õI,/Ë‚^‘òõu\ܸµúb³d“5ȳ73b>xuó;8>;µDUòª{ºôíºÜ×è"u_Buâ*ª¢{tëÓ«„öµ>йQÒª‰Ã\ÅòšWª¹.N]²ú2Tkœ¹"¢ôïÏÆî7Fí.ZïjŽÍ˜×¿4Oo«<—»ê§³±4þ£¢§Ôs—?72ëßDZuov}ÙΟW¯¦_µÃ˜ôÍk˜äêžK“'&i×¹|Ýxp]í}¸—4]BUTj¯DÉÝ®òSÊEËÉÒ«Ãߟr}µèÞïK²O(+‘F‘½]’åÞÇiVª±é›ÜÓSæùø ®c0ÚôêÕVçí˜í*æ£ÆìØö¢®—£›æõïz÷5¹å©î],n~mNTnkÑ3Ízp­cµ>C4]kžo*é].y_›•èWfš“?˜#§ÃU®lK¡yx!qvDù‹ÍL/@A‚3É$OšPBº×H8˜º¸m·„#ÁÅV,ÚtZX­–˜~€Mq› å*Å=þð«t•Œi§Ä—Ù$?$áq—L)羘p«“æ@]TºÌÙ´öèÐdßÔV Öâ+F 8ðÒ×É>±¦Ü»+:ù…´¯C?x53ß­ƒpDZ¤¯cŠ'ÌÉfÈ8pÀYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ðL;àºdè vÒÌÆ#NL²ãÈ…0Sk+`XV¥Œ·É†V^°õ¶`› Ì„ƒfÂGΑ,pÌþUdòí°„a2M}˜#ÀMŒOÝBÙQŸÆ0$Ë9‘¹’«…\©ØX¡üã½OÊ3äo‚.’o×Yò±cNÕûω "åç““|œù|rìŽÑ´ö3$Î3DŽhšYf|‚4H÷½è4yŽ{ÜË79zðŸC€5rö"Äc~‚¹„ëîê"ú:eç꼯µB=>Š#Gü„^ßÒ±ýÒ½?öx£†ð˜tõƒ(ŠÇ ¢#!¯äG1ìr+^Ç"9®EELþ@uæ)µMcN¨r°ç!¤ÈUAG‹ ¤L–ukHg ,sÂrA*Øû€5µôbÉͯ°–Àê­aŒA=EiÞ7$‹“ì­áHƒÝójPÏM â*ûåý2;7.^fûªš•Žgò*É–¾N¬‘4¦^JhO$I×Ìš—[•Q\œfUɾa'r~»Ò½|¬úç’7»Œ‘ÜõÊ®^:;l9éÜTÕ›»‘¬byDr»Ñä¦KÞ­áXstkUW4ꨙû#´å—rm‰QSQ<±9kš÷å–y5¾•îj#Sª¹Ù""fç.]Wá=üÛø6‘Nö­|ˆfn)˜8Òc°¨Úùc©Á(\ë"ϰߒ3G„£—_(HÚ<-T ŠÆœÒ”yÌCI¨¥‘*\²È™,êÖŒ-,© ãŠw/‰JÔöX¹•=ÑtÞN®k{‘ žNw±èjy~,PÜG%¥Jˆ‘ ¦” mŸ:È3`ɆxjÇÛ,ÑH0fG2ŽBEÒx²¥µeTøžŒ`a\sÕuY[‹âDi¡ 6i$1n`@SIœUñll€>tˆsO)dóöÇl‘>npÝm+œcFS ¦ Å ˆ@I‹(`—ÈŽaZ) ÉÀ’4ty+øgÐNèq›—q¼Áœ×jUEÛB8*ŽEêÖèfžºt¢'µéâUý ²OÝå}ɹuôð|Ú‹ÓC³Éu7Ny/¹å¯Eô¯§áò&Íⲥ˔QÇ4q¸§‘ åsDMq R9£Úç½ÈÔUâMƒÚ`Þ1 ˆàb[‡O‰\²^F’X™@±àÙÊã| Ù°ª"OR=±dCŒ"XãÛκ².´ægÅÙÎi\¬1t#<“¾<C(Û®lp ‹§æ1Hg§±‰½îú+ÜÆú\ï3\©ž•NÌ‘FܵrÁÍ^ìÓÚˆ¾[è¹4lÍÙkUk]Â5±Ù—µby]{úù(Ô\óèˆärgŸ^2beëÕ­MoË<“Íî¹|È5*äÔó¹8ÍþZ&];˜«§4Òç;.¹…Žë’‘US+¯“¥sFe–ZrbiM¶e©4·½äz¿¦_ D§ÊPGœ(w–VŽF»P ­PžÚsŒÊ [E•´¤VĘɨÛY®õ]ˆ›´¡²µƒ«Kk¥Ç•ITîo³ç7D$u¦Îš2ÄRWž¼2åF'® L6&cÄQ Š"5Zñ‘ŽEkØöªµìr+\ÕTTˈʨ¨æYµz*9¯NЋ܍©çO©Æ¤è¹ îýRùCú2ûEý®¹·Ä¼Hj7R¸DDnyjͪ™gæÏ»?7 ïO7ú}¯‰~[Êoë“¿ÍçDó¯Êû¾9³Íï!sÍt=¨Aê]-òô9ºòLµg—N*Þd+dß”¸ŒìyBV1– «Ô ¦¢-t—ˆ¯)‡$ÇkÜ΀ ÿÌËxÙ: … ,G² ì‹YŽI•HÉ3ß4õA— |ìk‡*3ó' ;K4†nJXÝ™t%%˜îVYS< Á2­eK”ØñêÑ©œxrÀh’â±¥E’7‚Li {„xòV´¡8J× ¢#Zñ½®c‘ŠŸ °;"Ç#HήÉt¯V?JµToLØFêMLs›Ü¼G˜4Ӹܞ=Z”Ejé Õrnz\‹¥Ú[­š_’#½bðåï_7zôLòG*&~ÙÚWJfåèœ9ùæ1ê`ú½QÞR«ŠˆõUnâõFü£ŒùO“ƒYM]:ÚÆNç/¶$‰ÓO²'œ»1bŒ§.ÐSC@†ò;&1ÊŽ—‹oàá».^´‰&·"Éy÷Ųƒ]61âòSí7…%RO$p8/åðå~äâs)+Y6,œA0RJº)¬E6ÜòÑ8¨Ì”@q$J7É‘cªCWaúÚÙ­Û#yy5¥ÃF®#XÒ"ÀÛ€R3 •ÈQ™ƒõ·ÒÚ¶Q±\˜æ’ƒbH,xµäŒ™qáŽIrÈ9ÊÁ>T‡ ¦"»æL‰³d8`,©råqãEn)äH9\Ñ\B”ŽhÆ6¹ïr5x“‡<HÛ®‘fv/|y±,ÜY;Os0è¤r§­åÁ»öSb,×H9IT:÷Á‡k3ç`v¸vÄц eÁRk-X3Ö 1ÌÜ™ »LˆŠwž âËAÈeÕdÒ§.Ä<Í2¡›jê+Í2šA5 ¡0Üé ZI´ˆÀMÔÉPá-™ÛÂ}â?î¿q'ˆèŽEVˆ:‘3jª™zú3L—¯›¯€¥åÒÂÆ$[­;<]͇¹¡ïöšÛ©É£SW»á£±Å<·5̲¶¾8Ÿ*ÎÔñ@§|x1Gû_2[âÖF<¨c:/4y+œž§ð‘9úšˆfIæQ9‹K^R$«RŸ¼8z#Ö–®'"K}¢nï“õ=È֧ʈW$ê½:¯O£Ç°{süô]=rvY nïG.œœü¾]ºPˆœ|Åj9Q_ HNüÝ“³ÏW_;ä5W>3êç/{ÝÕÝÙw¯¯UUÉ-Õ¡{܉›Õ3F®]t£s\”Èi“¼§d¬ã&ôj§Ñ×ågì­ Ñ^ì²LÞˆÔô`˜­køÍW5ô¯_„†¶žë[;œ½}lI¦ŸdO9vbÅN] †&†. ävLc•oá:Pe±@õL#W"KX×ÈD¶×‘»ðJIl4 Q$$ò\5<3G… 8"CˆE‰(‡4XÑÆÑ

NOqxͩ߄ïùV«ˆîü»˜Š¾•ó&}8‹û\?so‰x3QÚUÌ{QÉÞÕTTG'TîïïN"ŸÎð‹^kšª¨ÑȪ¹yKß›•} ä½äk~£—Jý¥_ÿo‹H›ž^ÙËÑ­ýrÿÌ™¹r\“§~‡pVþMLCÊѸ¢Y¶‚é ˆÄvÀ×ìî³qG–¤Wð±B(Ñ£qãÇŽ6À „hшBZÁkÆ£Zˆ‰ëx’œ&˜Ð¨bÜÅøê #%´MÂ1&žP«¦¤º§KVžD¹©Ä©86Ê#®LŸºqYWì³6ÅG•K/”†àœöŸQÍ9²sc„å®¶ƒ6®Â>ß1Æ)àÍè˜qoE’Á[€(Ì=lMb#ÜØöªü/³ ôH¶ ìYäˆÉ¨‰£ÊsÚˆ’Ýœ‘¯y‘˜ÄLÝšx×–»ÙdkSÉèܲ);³EF*‰2r|YW®]>L>¨sb] ËÁ‹²'È ^jaz žH"|ÒmÖºAÄÅÕÀ¥øA¾d7ZŒ:D™o¸xÇRÅ—e.*ÖWž¾JÅB:1iÈ’ÄÚ€˜G@Ât0i@\¹‡¯,Ùš $Âçì¥<ö6»åÉH¼ì£ò‚*‚6УO“±NyjüÅssË>˜jªæùú#ôª§é²óúêY…¶ki—V߬ߖ;iUl.—½ÍP+a@Pc]Õb˜…#þdßÚP,*æ.·¸$už½ågvTQ‘ÍÓHd‹ á¡$³aTø{ ´0Ä+4¢!$’®¤4PÛp~r8‹ §ˆ8ÕÃ$vËY³§|í5ìW1ìr=b«\ǵskšäê×5z¢§T^©ÄZ«åÉŠª!\¼íP °EoDöì}†çOat¡åÌÍIµ÷'q÷_¸“ÄW¿VrZTo]Zz¡ªåËÉk¡2OÒ¦HÔH¹þˆ*ÓÒ;`=>¦mÉ}ϳðÉfÈHqYRåÊ(ãÆ‹8ÜSÈr¹¢&¸…)ÑŒmsÞäj*ñ*ƒÁ›C>pO*ÜU0,“R4HÛm6$i³8¦ÎeŒð­Fp3+È”#Y\Ome'o˜°³–yÓdl‰€ô©D)Ë´#ÖõÐ!°mÉŒj"tù?mSý¨y*·¢d¥_ëLò›å;ôÙ¢*g’8ÿªl³4Š%jèÍZä\ßÔžS³Ë<º7C¸ÔUÖ¾f÷1½W¹¾~ü³^¹tU_„.kšä¾Ju^‰«¯£§ÚëÂ.i’µ¯b/O:®HÝ.è¹5ºÈÝ:UÊÖ&¯¯^º³\•Ù䩚»,ܾS×5îÖôn–.„øGx!ì\:ݧ›[G”È2³]@éѧmα1ÎJA,E‹ae^iPÛzäòs)+Y6,œA0RJº)¬6ÜòÑ8¨Ì”@q$J7¯,‰¼Ç9žÑ!Uä)HõF cb+Þ÷ª5­Es•8%^ò—ØØœáòX¹«Îsâ{'M±,É­ÛüðÐÃ"róx4¹E4¹’ÌóÈw¸Ç‘ ÏW„{³yG»5UUW*ñ_½ÌåîäË!ŒïNü—m3N‹åièrãe]–¸È4^ýøH>ìÜ®Ë4ÍsëÀ…ž­±°yå–zÏ.¹g—vkâ^Älûöcéú;mÿÙÕÿíËÄŽÉE{ÕQU3TV¢¦½^SQröŽTêÞçÌlè».ôïò•ØÓ»§·ïO!xF1­or'ú}U^õ^«×TiR6Ȭ#5±¶5œ­"8ÏbÀí2ü ŒV@Þ;ô¯]ÊâZ»¡´ãÓâÒa²s9K]3O9Zb´b^fãÉk°­(DöJ›±gëÉñè¯ÆYØRL{Š1^F×6<(ОÑà šËi,o‚¬‰Í)£q^Th™Ç›\ò—™QÅí:ã˯IÎdIä%& Ì(aßð–opÈ75ì#­{ÕÔױɒµÍTEk‘sEêœEšŠÝÕnÜ¡·/b”/$ÍÒ„"±®_e ^íÎ\‚{²Õã#—ÌÙ¢f¿*ÔÔ¨™¹|–æ©ÕS¯6­Cg°…S£UŒïz&kÐÔôÍUt«Zªº~Jïàë„°ÜëPFÜCNÎ<Æ<¶ä^Ô²<:çNk&F/g¶RÍXäæ <‰;bNÓÛÍò(0øËÊ)¬p†[Ù[s¤Á“ŽÀÆ«§š2É^RÈ|«O%ð¨)ª¨á”î”H”õÑ+#KÆ1>CÁ!Žá#q\Õ#†!±]¥Dù ú\YŠY—ì—’ž~æßÛ÷=vÿ¿ ®~dI‹ ðn±¡}‚d†—³ÊøâÙø‰‘ȇƒ`“@b¹À›qº!AQFY–uòñ&$—ÌΓÄ!£‡ ºÜ÷G­­Žç“–ƒqú¬…)Hi“ &t™Róº:[‚évR´½óëšF#c¦z•$ׯTsv6ÖPBOŠñÅÄ“@dG#ˆÁž9p½Ê„M •ívFö7d¾K‘QÙi\¤¹sê'3§¤¾Æß©›Ó?sÓÝÄw&]JÖuôØÝõrzåîú{¸¢V&kꆥ;•|—ÜGk×§éZª¹÷&Y¯D_…ïâû“ÉË,\?Xè²qÁI)„ÙA¯,¨ÛpGËKq'Ë,hZ£>(ÎIÄÊ Æì\:ÝÆ TÈ”È2³[29.Þâ'mγ ­1„A,D•_Y^i·»¾OUUDDLÕW¢"'zªù¸È ­ äŠôEIÏ¿—c´éFä­qI–K«GQõòÓCÛ'yJ¹ª£Œþªåë×Íž~Jw5ÖéOGƒVëÉŠªˆ‹å#rE_#Û*5ÎDÕäûm(º³Ï'9ÍW¢fÕ艥Q|¤è«™ŸV¹µÚ¾*Úx­¬dîrÕõ±$N›#dO9vbÅN] †&†. ävLc•"ßøLp'Î âÌ……a™’jF‰qÁÄ„|}6gÂ5¯¯€e¨ÎG›yÀ‘E(à‰ $H¢xÑcGDñÀ&´ADÖŒBZ1­cDO„/hŸ™·4e=}n³f&æËGipàÄRkÎ\¥j=‘å$1Ì’ŠåK"¤ZaÊtŠú(Úyh¾NØœsí°Öš.ù2|†”²"lÙ‰ *\¹ExÑcGŠyW4AD×¥#š1®{ÜE^QàÆ(e1Àb./´%¬käF…Jš9`Š]ø%$B}¾¨Î“\rQ̆ šcY\Oke'o˜°²–yÓdl‰€ô©D)Ë´ #Ö÷hØ6äÆ5»äôb"ïOc {Ýæê½Ìo¥Îó5Êš´ªpŽ'”ˆíMI°{^«—Á.DëžhÌÕÚuÊÎ?LîíJÉúV§sŸ¥nMO2|!\çiOO Ю†uMH¨®\ü”vMÍ¹çšæòˆ®z#xïú™®^|•s^¯É|§ü·¡c~ßÀìZ¾§ð“ùæz¥–Iæ$DÒ>^®«›‰*ÇT§ì’f¸õå¬GÏÂg•Ø^»–æ¹gYXH+åYÚž( ‘:Q?u3!ÄdZÈÒ%L$1y£#ýy¥J0£FŒ"Dƒ‘) cŠÑˆB\òîF1ˆ®r¢'®À,Ø T£=ý„AÄ{›d¨ˆg ŽAs5œg”¬‘¥ Ä PÏ,™E<¹rJâžD‚D™+³y R+Êc뛞÷9ïr檫Âc¶˜¹+G×qÝS=MËRtË6³7¢;ª[ÆØÊÅê‹ÑZ+úå’}Lb垤yRqÛ×ÎõÉ^¾æy'N‰Ñ2O?^9'I ÅTL×Rn5O2'EŽüþ‹}+¤>îµÿѽ|kÁˆ¹äÆ=ë—~MEUË»ÑéáòìI”b;p=¬Üò7ȉÄð5¹4.ÞsKš’9­sD "nzF&4cn¥W.–1©›•\¹'UU^õñÅ®ˆÝR%™G«Y©|¢“m„{Bj1ÞŒvØXò*dÕâ$«Ü(QAN"¢‘ÃŽ&…ŠEkXÕzµˆ®V±©žy5§ÂñÔF’ª(mí#2C^èï‘__"XXvŒ‚#‚â ¨FŒ£z³4i¹94=­{½¯DsW%Í3EÍ;úñ˜Uc5\ۛƹª*æ';¢"fŒA¸hÜû•DZ+$74DÉPDËNjç4‹¡ÉèW*ô\»ôé8Þ%ÍÈšÚ¨ŽVtv‡{W¢fžSSª.y*qßëQã(ÞÒ ƒr±ã{SÇ·'1ír#šäTVªf‹Ä;VoéÙš6åì3“NÝB¸lzä`4ÜXÅ Ý’»‡/¹Äò°Š@…Y9±F¬@1ÌÉÍcúJSõrg×¢èÓò'ü5¸W Û\ ç4Už(û5“2L,yWRÖ=L3¤w í©¡!ñÆ6¸²@Â6F*ºªÂB äˆú¢· ‘ÉARD:–‚Dt$¦È‹{1ãEŽEiHt‰ÍÉ…mŠ ÓѸ’ŧ‘òi䪢ÔCœ NQ¤È¶à±Œa…‚Úh‰%‡ m=tšèÛœ¼ Ø‘àÂñ^rìÅŠ1[§) M Me#ÈìÞ÷*üH滢Ê×•ÝØæ{:¥ìom›g{gowh»zµm¿-*DTÉôF/_)»Cv~ï–ç74éÓ.ô_]~“°ÇÞX_1…<ÚrÐcs®1d=¢Ȥ#&’æ“–ƒqÏKèŠ9²¦ŒF¦• fM¸ùâyꤨª.f;Ú„‹-¡~¦4á^õMDcL5‘ Çh-ççÍEö3K&Â{‘KÊ‹ÑW$Ü 2rÇkLÔr+Faœ —®aÖU]O{šá¹Ù·Njç¹êÕ뚪+¾[/„9-OÎâ K2Ÿ E×ÎØé+còÑ0^u~s§iÝYý›Ê\7ÂU[™¥yÅ™O†¢è䫵 ±Äã¢í§0ìçNÕ´YSû6=lI„Þ.ï“UUQ5U舉ު¼i‹›X¹{>O_J Éró)“z©å£3]ií©íöÎ{‘}±H¹«Õ{×,›Ÿ”k—Œ‘ÜøFMòßúVõË®Y¿ô¨‹Þ«’'So]J¹ù9.Ò5}¯ôG+“ÿˆUöš“_ªæ¾•øLxP€ys&QbDŠ"H“*IÞÑ

U…\ß؉ÔJÄåæÈ̛ٹåu`>#æß Åò£0/!k‡Vä;^ær÷“bÒËz È5Þ[;•ÊÆÈhÜA”há?ÖIvÓraZ64j£ct€*ìšbg¸çjÕžJÉågE‡ È”Â[ÙE‚C6Ø>,s‰*,FW†º.üÙ9lHà#È` "”î¤Åçžâƒ`•ÖK Ùœòãܶ ||Ú14ñc[Ï(O!¬ Ê %³›o‚ñX•:p+$XTÇŒØÉ,²sZÙu.#®¹%dÇ*°£á”%c;ø L‡þg^qz¸Š‘ìäC(ÆÆ¬’+! Ó"æ3E%1Xí2å| Ó¾V»Ù=¡ìi‘¡ê4ª)Ö÷ü3¿Žþ 6ŸbSŠÌ * ùr+j$Fte˜) º³l:†‚DtפšÑÊWˆqÜR˜,xÉrú,*y€’)Ö efØ^ÀãO‡•“«¤ä±âɸ¯)¤Gs ±@ñJx‹‰±%î!8§0û0G‚²L&l»™óZÅwžÃ¶D¨W ±ÌÆGH§4A:—QàœË(Ó§F[«8“E³²hv—O°±‰°øâ,qÆ”!B>@XԤ̌i"ivBL9iÐBg.Ö+êà H˜÷&üé‘Á­Q-ÍÃv&¥W>§&êfâCrí›S_òpúz)*“ìA­5•ÅŒªèÛ|Äû)`ƒÅ`½*Qnœ£õ½5”Œs{ÚŠzŸ1O#±ZGŒâ<`“! •4rÁ(H ÂB}¾™-ŒyqÉGbhO6aÏ.d³–T¹rŠIeI9SÈr¹Å9ÌW8…)âŽsÞårªñÝò~†¢˜¿ílTòz"ê2÷ žS|§y©¨‹–ä—#›äij!ªjò˜'*k^©å—ôÏf—±—Dëçrõrý^¾o¡ð…U\‘;×!òS½¹¦âeò™±ÈÔ\ÚšÝæUpÑêÇ7޽z¢¦yjèÝ9«‘Uz»ª÷kr7KB|#¿„<v.nÛˉ-cÊdY®‡ tŒhÓ¶çGؘç% –"Ű²®4ˆ»Ûzäòs)+Y¶,œA0RJº)¬6ÜòÑ8¨Ì”@q$J7¯4™&xñÄCœç#DMW”Æ+Õ¬†Æ«ÈGª5Es•8=fäæ$oªI¢* (ˆì곈O!#9ápåØ| §FêÙ‘Tg)l,æJ°!Z§™4ä“$ÚÑpÆsÈä˜Á Ù0l`Ù“ÔMé^Ä6ä¨<Óp¾J»Bf©¥W$DoÅÊOcTGpbrÑ4nI’¹¨Ý(Õj*fžm Ó«U^­N4¹wf¾weé_ù“&¦k’&~5â0šé·ª763-µÏ-^W_ÒæË5î"ùÚÖ5>ƒ³Ïù‰ö>xbß—6LxqìbÖiF`ÝesFß)éÕîk}.Dëà aY³yX6„ü¼Ÿ-ZrŽb8ú5¨ñŽYÜ×½»¬G>4Œ*ÿ¦ð×LXUŒÞF¦?1#gÈWC††ŽNŽr0d–9ìTvÓ¤VI_2ɬV¬ù=ìÜdŠûv9Zý+첚3–A9Q~Ë9‚‘9(€lfF'•¥0Xÿê{޽+ÿÉüSÜqýé_ÿ@á“oð¾#£†S¶(åÜRYÖF$—Œ…dvl`‰Çp‚b4Hå#†"=¥ŽTöÉöx|Ú /ˆï!ˆîŠItô–vq‡%Œ_ç…ÂiÚ#Žœ„A”oVé{U©î9þô¯ÿ'ñýO1×÷¥ù?€Ï‹çŒÜÐË)Ôô³Sh¯ ·«n, ØÆÍãr˜Š-á+-`(ˆøà. !â&ÊÄ8qÑ¡°„k*CaZ˘àGj©JØ‘%IQµÈæ.‘»ãÞþ3¿ÿ«T¯øÿëWÎ[Lg4A8ŠHRm*Y`ÆF½ñd: I†¢ˆ®‰.,”œ é#_.ª9HGsn aˆ£ ÜA\ÈWó,áˆú„Ôl¡²X5 ˜TŒÇ¾5U2Ò‰žº%dbIxÆ'Èx!"qÜ „n+š¤pÄ6+´±¨Ÿ31OûÅøIOÂ+2Ò¾R+rÉuyZ“.‹«=YùóÏÖáJ¹â߃g‰h«æƒY½e¤XòE¸ŒÃÜ Íb#Ìõ1ír"üÄ‘6l€C‡ •.\¢Ž!Ÿ¹<œ²ÅÃõŽ‹'L’˜M”òÊ·|´·|²Æ…ª3âŒäœHñL’±-†˜Lå–.­t¨Ø~c¢l WTÉÄæe¸–Ë&n™/Š3Ž #Åwß'j{šÆ§{œ¨ÔL×$ê½:¯O£ÆÜv½ƒ\ÑÏË#9ª8]}ŽnŸezjöTsZŽñ›Ñ¹ª®~Vj¿,G*#ˆþ®]Nèš—KZŸ Ë4süÌÔÔô"jW*#\­j+—«œˆÝNTN5=Ú²în^ÄÜÑ3ò]Õëßå?Óñ6ª"ñôUWêªæ«ôUz¯»ðÖÓ×汓¹ËWÖÄ‘:iöDó—f,Q”åÚˆbhbèÞGdÆ9R-ÿ„Ç|àž,ÈXV™&¤h‘·HGÇÓfqL+ZúøZŒàe"mä ExP£‚$8€X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5>½¥#˜·4WÈ®¤šÌ™åí ÄsXñÀŠòëNn^†= ”‘Y.@W´KÊS Jȯ¢Ž­å¢ù6>AÐb5„¦±à‰>HÞY˜!ˆÎÆ<Ó<•ÝÌow{½ÌÑt¦o˪5xÒ$æeææjêb¯™šæï2£U_íÚ¯b*7„<×k˜k¥Q2îÏO“—zèjd½îUÍÍõ¬oê“ì'Uû\'ú}Çõ8rå–o^¹w¢5¾:"ê÷3ÏÝñ¯`A ŽõÄoV„n"°QåŽLƒ=š´!HB“-#cUïɈªŸ `º¶(2åÝÏ ]Éu¡­»ŠÍæl†Ö{407õp‚£ñªª¢"uU^ˆˆê«èà&^Â5ééV¢ªýUU_J®|bF 8ðÓ I>±¦Ü»+Jù…´¯Þ~ðjl­ƒpDZ¤¯cŠ'Î?Ó|¼·ü0iÜÆµ‰Ÿ~ML“?[ƒ!ó¶ÍÈí·6·µv‹{ËéÜ\ßgr»º—c{lÛ{Où…"lÙ‡ *\¹ExÑcGŠyW4AD×¥#š1®{ÜE^ †pÉOÃ:k~D'ÉŽDpæÍ‘¥ PJÖ–®¬­iFŽÒÐi9!B¦ùè ¸†4YQL9¤Ç#Á"4€=€ÃV& Ò£s^7µ®j£‘8Ä$ \c+¡ù0ñp±\IqÔhÃf!µKc\$kƾƹ‰ %Ī‘6l€D‡•.\¢ŽÄÜÓJ9}±¥ZÄDôõêÅTF;Z#¥qsvcDö5sËm^ˆªÔyÎF»½UˆåòSè¯Þê¯Ñ>ªç#Q<ê¹'Ù^¡ÍÑ7J»%òº7VlÔÝ:^äÕìŒsD檹½Wªõ^¯Ò®êªìœç®jª½UUÙdÕr£Z‰ðŽþbßö?„‰Î³Õ,°²O0xšGËÕÕsq%Xê”ý’L×°<µˆùâXCìãlaè“É̤¬AfزqÁI(J覰XÛpGËDhàDhZ£2SÀIÄ‘(Þ¼³lfEÕ<¹²(QïhÚ¥9ÜÁ GµÖäÍîkSª¢pJ¬ר5ây ͽÊó¶²t)sÚ¦Ï&St[$™E<¹rŠâžD‚<òd®Íä)ˆ®!JG®n{Üç½Ëšª¯iŽÛ““:ëUUîvIšf‰í[åä½TjÅãl åbõE\²ÖŠî¹iO£›¹g©O+.2zùÞ¹+×ÜÏ$éÑ:&IÓ>þ¾¹ÌÖ¹ßCÍÿ:𜠹æºÿPНNŸe3óåãwoõŽ,åË~¡µ‚h-vN{^õt©±Æ^äÔ¯r5s“ä H®98V4€ÆR=cˆòmî$ã ®Û q"0åkQådXíz¹=>9®^ÂTëÓª±Q說"zW§"d‰Ñ:""y‘<Èœc[G‹(&RWÆ>±®äºÐÙHš-´~óvCm^ýoFMý"{Ü# þpð\È3"Êv$!€„~ÁÓ4‚R †Œ9’Ø95‰’d1Žjš½md°¼-eŤ´+ž$rÂ}#Y7£Í\F"´Ž9vÈE#F"|Á‘6l€C‡ •.\¢Ž ä¢5›bn]:5šû½ÍܼÞ7q}g½’B­—Ûêõ²”é e6çM®ÊF ö—Vò»qº4»ä F3ÅARGˆÂïdh”àGk•P!t©2d¨Ç¥‹"AÍ–áHåñµ<êxù'tœov_As—ÐÖ¹ËÑÅÍ™ápï/ím" Üõxã…±)Éá±njžI£qY˼R!AçUïü‚Â8t±»r'ÜL7ZÍçóªa l„p™³ìm”î'­½–ÐÑC…$G4”Ö8¤J·§$`È›c4Ö@ ÎG•‘d8hä ¿0,n,ËWTÁ—e>FÙM± rJ”m 0§.Ð÷í„d+òÒ6=êY4pGØx-“·£×³RYÛˆ;\›ñÚr€»G§†¶2YH%´šè6,ùì^4*~µ}>çÑóôógÝ—_‘Ü÷®McUÎ^«“Z™ªä{½xÒ&¨‡š¢¯Ë«}:úµª¨¾Õ69"¹ÓǤG'»ô2Í= ×½:§剠Ù9F…òƒ«%Ò×iD"7VœÝ›ÜÏ£—†:s}˜}ZÝ9 kÜåíUjyosü¦êŽäøB¹ïkžu_«þ‰ßÃ>Ä5É7Ï^ªÒ­/±¹¹iò˜ª‹åy²ã%r»ª¹UÝê«çvYf¾l×®H™ªü%zð <|¦ÂÔ$ÈÚØæª©JXÀ,'(Id:pjõ”Ë}¸M°Od2p ]…«¹nk–}•„‚¾U©âÉ¥÷S2VE¬ŒyS  ^hÈÿ^ë[ûÖÁi)PqN\ôËšá€n6ÄkCŸž”¢4¡U‘Ô%^IBC8Ø,h‚‰¨ÁBb#1±ŒcÆ¢5¨ˆœ^ØêŽF>ÀÁb.¨æ‹ Lfcõ• ½0Jâ1ûd{œñ#汪EÍ«•|Ù¯N¿Úë^žŽ5ùÈò}«•:{ô[Ñ&YÊ‘»f`Ì=À‘ÐQ°ÏKØ×"§¬Žß;\CjѨ•>Ž© ÷2GuîEãÅŒó]5=Ù9Œ_'ª1¹?£•ª¯LÓPú5U<§uÿO£ßÓ¢¦•Ë×'™íÏBùº÷¢û‹’uïNÿJ*µÉ’§zzõhýSõ _üc³ééЙ½rèœnÎUèæ¦nnÛ¼èˆÒ+rèÔ_l«“³{‘úSáü6‹ ÕžâÑà<®\/XÑѲ%K–Xðáá…¥• #$“Gˆ7:Lm§ 8å~jñTî‹fŒl<*8¥V šèÉhHÌ·˜9õ’ëSᮯpï1ÙØ8‘J#B­”2lé»8ÌŽæ?qË(ù®ÙÛ2BaÅ'‰R‹*L‚™ãÍ ± Ç$„ƒ\9&;¢ÀŠä¨Æ÷«ž®s·ed!¦K¥Ê‰š/韱¦j‰—¶ïO%r^âÐÄèâ«;½ꊙ+[툊÷÷#u"g­þÊeê®wTGg©U¹õÏ?—_+¦i§5O\½x éÍ-6ÝŸ"@È)ö1Jc]0 0£# môÃD‘½,ñQ)¡ ¶&I–æ gØ8JG!¬%5Œ|’k9œÄ\ƒ àÄxèÀ·‹‹1¸ƒ8!¸q1ˆ®Ùnl8%Û7±9‚— $*=ݶ¿ØÉñ7'wœïF'§&¦kõ2\»þ[·ô¬kzwtLºx—‚ªeš7¦k’gî®K—ÑÉrôqIWˤBÅ®ÍGBn ç¼Å‚#Ð…b¢Î,‡{Ô-ÏH2 1áö·RØbE¨­i$qÚÇH|zøÅ–f¤ †ã8br ¯(دÉF&nDõž}b¹§IßösEî&KçÏ¢ñUIæ$ZzØ5q‰!Ìt‡Ç¯Š(yÜ1ˆn3†&©\1 ŠüÕ£bdÔùÃÆ¤ Û»°¬ö{[µFAÒÁ\žR;t± ´’\žC¤kpØ«Dž¶ãéÊÃï.ù€¸ Ÿ˜Ãðg ÷W‘ä#Þ͉¸‚F‚e3¹$ºQÚqYYƇ.¹¾4ûOŸ Ó4T\ÑS¢¢§r¢§TT^åN¨¼kgG·$(—Û ßóµß(þç&}ÎkÚß‘ÎTkZŠç9Ë’5ªªªôDDꪽÜkz&f+ÌDoDòœ¯vœóéšùÕzyÕ{Ó×ëo·jwzSÑôSª¦]ýÝzeëÏr5=ÕþOJû‰×#Ô!ç“—Ê»µtòU2ÍZW¶ÍÍriãО„ÿO³éóü'¿„Ÿ‹Ç;aöí½*+ˆ-4ÍpeD[ Œ=6@…Kx½h‡Wmå G…ªQXÓšR€O9Èi2²%K–Y&ZÑ…¥• Ä`ÇŠ764`~¼¶wvk`‰™ä‘­í ±}K*SØ"(bFaeZ¬ˆÿ'‚Vá.kÓªVÇRÇÄ2Õˆ®#ZhÇxëb¸ªÔFE{æ±Ú÷ÍeH¯LšÕ{×7.kõUÎs½ß:¯U÷W†êöYY/Fü®hŸ½·¹5ªkr9U,Úšå¹FΚ@Îîïm’ç¥zü¶§ûfù —FÔk} ü«é_uz¯Èôo¹Õ]ôt¦k—Nü²ã؇õ^¹ù¿JßwõSÑñEo\òg“õ3O+/¢å÷xjjRjr&‡.yçÓ£—Ú÷÷÷zsOjº¸Ä›>a1£-dvJåUW+X1ˆâœÅs°†1!½èLbƒ²œñ¬¤ëÈW¦ÞÊYDee±44"(ÞÌEtÀ¹–bp$·ÇMBÅb¸…}¬”Q“[&¾$=%è-%qgkb#˘ª¢b¢.šFÅ{³îɽÉÞÕòÜ­g’¹ù]8 ¹žZôÏÚù]~Š¢7?6~5⎹̌Q¾Ê<ƒ†[uÇ4Z÷v„ ¼j2´ŠXÑJ6 ìÛyÆ‘XÅsÛò1—±ÌïT§owgOoT{ú¶ËŸ+Ú<ÖÖ”ßÙÙÜæë=a—NNb°*¹ûdA¡[Ó¹2S¹=ßOr&«ž-øx–оh5[Ñ&ZE$[xÌ=À‘ìÖ"0ŒÏS×"*|â_]rÜ£.,ç[¤}Å6ìçK–øÛú†ØG±›ˆ+ýºš‘©ëpŸûûøMsò}§ƒ(~ftŸ€ñeÄi«D2µÒ0ôBF ù™ÒvÖ%ò=Ä…%SRgIšÊŸ&IjÑš9™«PŒw¶båýÓsG#^Ö?K´åÃNfÕ訽7§¶ò¯nAQQÍW1Írü†ö·=RØè¨^ÍI«W™Âaš"¹É–^Ù¾w.”ýk¿›ðŸÔ»Êoüé܉Ñ|Þféñ«Gå¿5j¯•¶ÇtËRµ®Íssskz¢fçèkUxU2î*æ‹©ä˹2M £¦k¥<äz9ÅɪŸ >¬<Ç©À¶ 36¦œrïl«‹‚‚ ¨²ˆ6»T™‹ñëã̘£ŒH·l&Åû^YrÂÓÁ'œBa¸§ŒÒ„á+b—õعaó›N9²à/ÂUNÁßb ”±äFG”P*ÈÍ2R Ì”A™Ìa+á“urC&L1ˆöMÄv’lÊ=[ &‘ňh˜D‡ H»¨ï¨ÇHpÚC¸„M|nØFWWGäÞõ\òF&YùNôg¥[׎^´YûeR*y=ÞÙ5®jä^š‹Ó¢5È­ã[¼³®jâ.kÕÝùgüïl¹¯r.”TÏ[ÿJß2õèçw'wTêôïмdÏboêWÊó|¿Eïý.BçÇ_H'DïWÏúµô'žï”52[2h]Ì·¶N6›t±òfÔ(;à<¼Îí·HÔCÙ–ÎeÒãò„|JH›;û.™,¯qæN(D‚idÿÛ‘±ÀÐB O!ñ£|ˆïY:jÆAƒHCr¶&ÈNçpín¥0Ä‹Q]:ÒK#µŽ;Á1e€i!¸ÎœƒkÊ6+òG‰›Ë-·£>± ™ûžß,º÷gçË×`qÆcØR†C†0Lt‰•±åË:´hÔSJ”cIUMfR˜Šâ=Î_“G‡¨». óqN`k…EXRž+mž…b‚tâ4‘VÀȱÆPe«V0£À·ùôq4nº[ h‰­ZÝZ^7.^Xõ;&ª£Š­v•Vm{Ç"9®j£šæ¹3kš©ÑQSª*tTîù×ÐDîDô'ÂW¯·Ç<öÃÎçX•šK(t„å'Á0*`¼êgïN&ô†µ±,"Û0tøn¢ 5p´//-ñXÅæ¦©çN #’'Í)æÉÚk¤¯M_u­ý€k`´Œ ¨G¸§.z8Y2L­kɵE"F2µ=¦«¢ðý†xÒZ¯ ,í€BtæŒÑ¯gÀkXHPNý[’E"lÈåA±6z3\¼–û®_7rû«—DUéÂ)2,…nmgº‹ÞΞBgýqÝ|•Ñ×6qªFa .¦ .¾Ž¾|òùw§´f—/Q<è6õzççê¹ù²Ôå˦œû“Œ³Ðßö¶}_lîõô/ʯœ{_î¿éõ:q’ø™º¾MŒ·ésbÇ“KQ~[þ%# a4Ò$¸QįN`ƒzÒ~-,kÉI¡AZ:UF(¤©¥y%µÜÀ‹LPBjP$Fž×Ãõ½žø.ñI :g¢ ZÞÑ'”‰Ú†QÃЯ SœæíQ—$.„ÜÓ§WŸñg—M]ùy9åÓ-ë–Bo›5Ϫ.«ULú'òðѧʧÙ^õ_?zæ¹y¼Kø‘i$Roe!β®«ŒÍ¸;¡+1ë3çJÀ„lˆrãNôs0][ ”rîçÈ®äºÐÖÇ„]Åfó6Ck=šFŒ›úŠÇ¸AQð®r¢"&j«Ñ½U|ÈžTˆ"±ºÑ;‘ùyHW¢/º¿G‹ÉmRLsIA=cŠD«zrF ‰¶ÃH9dœäyYC†Ž@‘[ó‡$M.ÈI‡- 1ÚLåÚÅ}\iäß285ª ʏgŒ-yšgíˆÎ¾‘½Ã_©›W/sÑë ,PŽÄâFˆ¥ì¨% q)$G@Fs@"­„ÊøÒgÞÞÏ=µ™ÖDÙ²7 L‘kZÄh‚‰¬X `£DŒ!FŒ!GÆßŸEáaÌ#’)\›$r¦ÔR*®¤vi›eTW;V؈šÜÔB­ù DΚuù"·SrÚª;¯Q37{U׿DòQ>ñªª!æ.]ù9.þ½} œk{ÕÏéåyMé–Y+QÚrÍ\ºQ=¦­Ob~ßÁk0¥w6±ygYO9Y²¨Ž‘Ù"t¢~êfÊÉVrAa Á•Ê™ Ó WŠw—öpôŽ"¶Ly»&œ’fí<DeªE»dº[Å`’5n±-¶Òe(2ê„(Ë£z\r<“›<(›c{ðºÎ$¡½u¶ ž[Îc×½1#L˜±‚ÑÇŒ$ê÷0bÏ,‚ë9ŠWë‘ìCDU^¨Ë,ó\óF'§W”™d­Nþ9záio“™ôäÖúsG7ÐÔEy3s²r#\º]Æéݬ«åy^R«óÍv‘|¥vjß-zùü„Uã!&Ó?Mòëõ{™š/Êææªtwss—ªùÕWÏš÷¯»éïã¹ôìÿŸK–^âÿØœwñ’&nF§ãú ö:ª÷p +6¢“t|‰ ¦ÍŠ@óê`.˜F8–'Ê9„4D±|SÇái¡ Æ&I–æ gØ8JG!¬%5Œ|’k1œÄ\ƒ àÄxèÀ·×K²oX¬ÊwL¾Žçí¿¨@_‚JóLÐv©AÌòêåh›ÃŸúVôÏôÝÍîô»$ü\)]Õ×5ùb/ÑEÏ/l½sG+WƼD©‚ÝrçÈdat#˜ÍkåœÛ,)8õH’FûQÄBªdÅâ4¬Ú‹8bƧ¿lÆÑšÈç‘úÆ·SÜç»,Üå\×äH®98V4€ÆR=@)mî$ã ®Û q"0äkQådXí"¹4oì³Ì‚g~_+ŸŸÚëÏ/>Ytïñ?mQ­v…^ä~^J¯Eè‹î/Ðñc·<<­…•]XFŽ0Ùñ¥K’ò5Fƒ@¼w±i^÷¯Âåˆi¥ƒ’q±¹ªäÆÍjfªª¹"wªªú~ßÄ[ßÍ=C@°ÇD·»†øÜʶÀà’…Ã R’0ì[Ç#,cTri QQ@mMh<(QÑt ™«Üç9êâ˜æ+žyRŽòÉ—$¥“$¥RÞ¼–7“È2¾<]cYÖŒã×DsÚIFÔQ5Ú=Œ(D,’ò´ÕõJz9¸D`£€´±Žðì+.$C†¡#\W:¾6Q²6Ô’OÙ“HÙÝ–kÜÖýÿ™3wEÉ.?Û¤uNéštÍ3TrËÊêõÔºu74MéÄØ˜^ת'L˜ìú¯•Õuz£SJ·-¨CÛoûb§Ôͽ꩗–ÿ+¿6ç×oÔG/Ë;ìw¯£Ñèóqׯ¸ý>Ç2O¡âÑŸºïù“èùþÇ~|6®‚ l&+W1ŽØ3!Žy4U`Úâ”mqÌ£·NVOÄü½í®rS“V¶MXL†(%E'É`·$lŠ'HÈp&(lëÇMìæíØVJÍ£"†©XáÉRjæ=Û+‚F8C¶áHÈÔá€o^ç*'UW/F¦Ygž_ÝkNÜ5ž–_K—¿ÌŸA3ë¥ƼXâ34kY XÄGsÇAQ„õ&ìbF‡¶vÊ$Y•Œ6C8Ýò/“»ÁÈpíRꪠUÏ’±Ž]‰ÐäZ"Œ»{yæÜFoLž|œŠˆ¹éŠÞþåiÇ"§TVø²G+|¦;4ô5ír·½:=X¾â÷/wŠ4Îc{·îmí¶ö¶ùM’Ž‹—Õ¸ýý]‹Íné\ÎÆÚìî—炸¦Ó2N!í ‡l«®]\ðN6ãX¢nÁm`7mÏB“0°”hˆ™"&H‰Ñ:"zÜh·‚9“lÍdRꪧÚW—PžÇ.Äøq¡Wl»{fa÷ß&.¡“Nó‡ sáüÛ·cˆ@seµ%™æi(¨-m" œÄa$Ñ)Éá½\‹q$ˆÑ¸Oæ)m ‹ò]¶l€bú©Up«4)Ô:àZ[MAÈŽè`Hn›¬ÏsÖMºn$È­V7ÏЦ3«>%%šå$W½Ž+Yš³"&†¼K­žÈÆ£ÕF¯k‡&1`º†F÷*w/Eê×5È­{ˆö=ǵ®j¢|:D§"寗¦·4`Zü•ª¾KÍ­É«ÊË,üÈß…HꚌœ³ÈåEÞÍÝܨÇ5\ºu5;ýªúÞþoŽyü)‡Ýα+4:.–Pé ÊO‚`TÁyÔÏÞž2M;!é kbXE¶`ê0ÝDjáh^^Z-â°‹ÍL/SΜ@F$OšSÍ“´×H9^š¾ûké⯀7ŒJb4¤sÊUÈbÂÈWdçmDz „*µ"9§ª¡i¨pùY",Ÿ(d±·ŽBy.m­UâxÖ¾2¹\…’)3%€¨&"1™53ò×£/6y/^©Ñ3^¹÷uã&¦ôŽù"¦iúl•Ÿ©êõÔ™æÞ©ªSœìœŠØÃþÛÛäºE’ù*®ÎFY¢£z/×dÁ7¦Ó<‘§Ñùgõò¼¬ü¥ÏÏÇvÉö?~¶-M,RO±š]€IžoÉʪ®rµƒØ×Ò æ€cÌW š÷6Ýó;Oü 8Lˆ‘¨er©» “Æ&<¢—óDªFë SÁ R‹x¿!ŒF!cÊR•íÄ1µ\òîTkÆ¢¹ïr£ZÔUUˆ6#ΔкFü†Ê‘›Ñö.†‘ºØäf^A®~˜Ä—$ Ãc1rDMe_±—O>]%W&yiÍ­M-NäÿOåïUñ¯1)Ó0Uëƒ_×ÛXHÁEò×'+È-Žð›´wô4NŸ Þ^ls]OgkÊîìs=Òö7¶Í³½³·»´]½Z¶ß–•O¿%QÈ¢Gyœ¹«æïM梧_2ü·‹.½2^åË®~~åîꈹ§LûÓ5â ]x¶ VÃ5»1!…‘ã tÏ!‰¶±šÊG‘ùj{ÜåU_œ:à°á1#ášØÒǰ®+´.§°2ÝJr†-¬.‡ì˜DÒQ9Þ·Ý¹ææ«ëjê‚4s9wG¸•*\—‘ª5"™„£ˆ€sJÆ5„„Ãp¾J·Ä·Ú®¥‚yÒ2|vÛMö(qy£F'N:Žï8¹™§v¹Vñi‰íÊutѵЊt:z†˜¯¯§Šæ(¶ ˆš\AÅŽ³$ºE„†,É’HÿŸ¾Ê’÷,y.ø \ö ãŸËs‡åäºe®HƵëðN”`•ÒHôøj5¹+Þæ°hçiGêŒud¹jz£{•zôEîàbW¢¹­ÉʪŠåwË9Ëçs—«—½\ª¼trqßÇüwñßÇþ%sœkQUÎräDꪪ½;×!~m“¥WVÂ/Ëyno’‹–LFù ~¼ü}ü³ Wsk–u”ó•‘k*A(èH(Ÿº™°â²Uœ˜ñf \©‘‘n.ÚM‹ö"¼²å„2*)§‚O8„ÃqO¥ ÂVÅ.%ë±rÃæ!6œseÀ_„H©£`¯ñŸ"4#ÈÚÚ‰H³ä1¿”rÖ¶Pˆ —\ÊÙ ÖØ‚ylg9Œ^D`Ä2`"Æ (S«ÜÀ ˆC<² ¬æ)¸b"ª¢ù/éç]I“çÍÝzwd¨îòš™n&¯)4õjy:˜º³M]\®Éúš™»#SWòýQ<ývûœ¾O•“•Š÷§•û_öÿ§O[›œ‰ÀgMBÑa¥|wT¼V6‘ .gU0'1â Ô m‰ò‡”èͳP+Y_IqÓlm“-Íc¬,^5#ö2Ñ$¢ë1œÄvAŒÒ¨!†K@‚•y4#Šc˜®’:µ’Øä‡Pñ³:e²Hùü^œçëžFkÐ(44MLnj£È[¢+ô*hcpU¨G¡ÞŸ ÍQ})Ó¿¢ý”\¸ÒLÕ=Ç9®N¨½ÅG·<ºä©št\ÓŒ‘¿Ý*¿í½Ux_(ƒUËÊÕ2Ë.æ®cë–KäyÕ{úð¹¯w{^G{U˧Ķº"õïG~©<Î×)ä\¼Œ•âë×Û*Ýý:£zzÂê{کݤî.®üÓÊltj÷dº•;óË¿…×&XòËÛm.Cmäî÷rïéDZN"e–{í(»óöªºuww".^uêœtŸÙ9[å9½éÕS^—.išt^äT÷8ë $_Ò‹'zz«¶QžnìõuEË.2Ø•QvщӻRµ¨çzrUÓ«'eѹwñßÇ­§:ÚÆNç/_[ó¦ÈÙÎ]˜±FS—h!‰¡ŽÐ!¼ŽÉŒr¢ZxQ/9%ûO†*l 8@a;tw–1X Gœ GDhig   ÚVñf¸ƒEEµ5 Hð¡GEÐ&f¯sœç«Šc˜®yåJ;Ë&\’–L’–AHGzüì¿jxÄ=m,}K*j±È6ë{FAÁŒ¤UE•+KU¢‘Ë2Q±ÖhVÀÔô’ž»tÕ¯`Q‘öž&ÈAùì0ÞþpF*CG*¤11¢Ó&èéÜ‹—~^Gé—¿Üé’¹:q¤Þ;WNnUv‡w¢¯Ê«š¾a¢;£‘\×w¦òù r¹ˆjgÝö£u*ªzW5ãÚ¢¯§¯=g‡¡ó.ÒÍ–g  W ÄA´²ä¹=×"ÇiçA’øÑË‘[˜žÔ%9uˆœÈZLÅ@ÊN`Õî…å5f¶qù¥t–zbŠ/ÂW†äíEàæZ‡J¾[œÇ ¯&KµZ•yð«NSµ„QHi­DnYzÞþ×ÛÏæíçªóA|ùiì¬4r½£æHí4’:(Ì#¼‘ïP…ù 𙓠V÷Ì;¢ d5“«*âHt´á¦ÃÃÂe9’<‡æù7¬W<<ŽÏ!±Ï\»òj+—.î½=üššS>î½=7¥¹UÙ'OsÑ’tO ‰–}|¬×Œš™zÞþ=$O`fòÖbñHŒŠNœ§ïÇFCŽ3ËÈì;‚È4$³µnWCŸs< Y,±Ìʦ#?3"›vJ¸c!e”r6&N˜0ƒoáFÉVmbíUÇ~£¸ºDæ2K˜Ò6ÓŒ»’t¹àÖHÂ’öí9çšGŽ&¶º-c õ‡£ÜhÝ£Éa¥é)7f=ˆWî9ŒÚŽ‚Ž.ï\½x{y×Ùmg¬^R>OQ±UA¤‰„g/23Û™%rÇCµ#××ÇXqG¶=-njåUW*¼„#ÕÄ1ˆç”Å{ÊW¼s—ä:Ÿ¤ø~±ˆF¹ì$ 4èÔUöÕÎÍS«ŠÖæôVåéëë/¥´l£b¹Í%ÄXñj)Ë2&ãÓ%s•‚|©5LEwÎ2•%†xËE2­¨±Ïß¼jRÅz¡4Ù©á$‡#•íŽÒ8c)¢~iŸ¶{:úF÷ ~¦m\½Ï]®¼[+aÆÈ]˜ÂÈñ…ºgÄÛØÍe#Èüµ=îrª¯ÉÁõ´˜4ó#Ø¢²LaÌÅM1"X9DùRN!v| D…Ã’{Î\²kæF9=à„çL‚цJ¹å¢ëHçÜsŸ¸âŒ~Ìåv½ö•ÊÆ±ÃW|‰ßÀ¬Z¾§ð‘9Öz¥–IæHùzº®n$«RŸ²IšãÖ–±wà…Û‡_"(ä‡CÌ™(®)äH#Ï"AˆºˆS®qG.n!åUêç/²•ÙfÑ{¨½È™û"÷"ü¢uÕ›|¤ò=‚6kåw9éܨïÓyü–ùís’/C|¯;×ÛuþDõÃSœä`@ æ9ÌW Ĉhâ¥#šÁˆmsÈ÷#XÕr¢p9øÔå‹‘_ùÁR‚(¶Ö}¤r–6K_¹RB±ŒÛXÒÑF8UÐâÀ†[1!GXÂÖ÷û`X&k#ÞGijj{œåòœ«ð¬ìeµ§Vkû4ãæÓ(öã·Êk àL’u D6C$ªðHõ,ìxNÖÍäT%™†»ãÏ{-¨[‚xŸ¦3]&4ê ‹š¼<¥sÊb½Å)Jåy G¹\òîÍÏ{ܪç¹Ê®s•UUWׯ^QR-éFÍÎs•Z j¢\²¢;j8µ7S´¹ï{†0² ½ýzúÜ)U<[ðl±-  ÖQoD™i<‘n…ã0÷G³XˆÂ3=L{\ˆ©òAeÖHñEÑÒ¯´Œ%@N„°¶t#ÈŠ Èy£ €6òéÅ>!¢J{ï9ŒêωIf„z’+ÞǬÍÌȉ¡%ÖÄÜcQê£WµÍ Ü×±íG±ìTs^×&ms\×'TTè©Ýò­§:ÖÆNç/_[ó¦ÈÙÎ]˜±FS—h)‰¡‹ Cy“åEÄ>ãU\Ù< mvr2Φ±$Æo2[–˜\¨œBÃq$ºˆ*'Î*ÊI È«øFvFßµ¥•9Xäu½£  ÆqQeJÒÕh¤rÌ”p¬ua¬¬—'KL¢B±ò”Rä°¤Ù“hÐË|WÏdhº‚ˆÁ€(¯GnPL¼·ôÏ>åD\³NzgÕ8د§;/e\óråè\½¯¶Íry~N]xÝ”ªb.^K—4oë—?d舟¥ïO):úý5¢Ù« ¦F±¹6žZbS½¬e%Ê,]JÇȉÎi ’ˆ°‡ÌÛ(ãØ\ŸW1/KÔÏ@…Ä  FqU2-cNtÓO’Wá 4ù‘`‰ÏA4²ä 0ÜUkœƒkÌö5^­cÜŒEÔ­c—,š¼+jãÌ·*±cn5.’¦–Ä–Â0H¥M '«†=ƪ‘BàŒÌ§Œ¤z£+w)ÃÝaÃOsÔúƒF¸Ò N*J' ˜óÎ)Š÷¥+•ä)HåsÈG»7=ïr«ž÷*¹ÎUU\øîõë×TÔ‹zQ³sœåV‚(¨…—,¨ŽÚŒ-MÔí.{Þæ ,‚„$å"{4“i%‰<ãµ%TÍÛQ…©í‰¯sÇ9UÅY2Oò,ê¹â߃eL  ÖAoD˜Ç-À¼fàHökFg©k‘íSOÃsj-ÜÔÖÇäâv]¦ÛZ1Yms†ö´qìãòâ4Oè5þ8¸ßÂ5kkLWQÐØCFL<Ö!––1f I0Hªj¡¨Å<³Ä6>4XÑ]ió‰‡j6ŽIsn¤[XŒÙÙ¦®K5y®|Odé¶%™5º?<40È›x4©$4ɲÊCÈg<Ò$ŽW”¥{µ<{•\ç*ççã2#K#ª5™£„ÅÉ:§R"êͨ®Nìôæ×ð„*è•¥rûLj**æ¾uó"¢¹U¼ieÝš÷¹ÙzWþdÉ5É?\(ñÆCÈ9X,qLsÈÁ"b9ä)ä`ÆÄW=Êj*¯³ÅÈZºö”e/NвŽàï*J(Œ¨½ÁBæöš£fì+A%ÑjêâŽB@ÆŽ,ô±¹«•\竈R‘êâœå{Ï Ï!ÎBzøö“C®ø›]©ç6O±M$™jaîì‰ûLvá4³7pñ 5ÄÆ7N™1¢GhK©rèlÉ‘$¦…U·cËk´j—»ãeÿðjïÊœ|n½þ _ùO‡¶&1£y;e“bȧwÝzãŠÆI55ºeS¯] å^èµµ ŒºvÅ!³%žCuë9PÆLÉ©ÍÓZX­bëV©ÑI¾šiˆ±=i5#\ÜœjàÅ+‡“×19ê%v—«Ìbµæ*¸¦+ÜR”®W”¥#•ä!ìÜ÷½Ê®{ܪç9UUUxîøBð½xìúÿc´¾ÂÁíWG€*¢9Ù+wdK›+\×È{\ªáG™äáû4“h%‰<ãµ%TÍÛQũ͉®s#±ÎUqdDƒüŽx’ÀQe‘äÆ6<ˆæbŒÀ8HŽBQ¹Ã È×1ìrµÈ¨ªœK›Zë,5*@O¶ ²€”ìœWœ­–úÙ`)¬c««§VCH "2µ@éxè¦ŠÓ d†>dYŽE0$—rÇϦˆï‰)‚z¡ÈÕ’tZó\YŒÛѬ±Á`xJ×Å0y 4ZøÆ"+O{!v˜^C1³¶‚oÎ.¤å—ó:¢U§2…EÝí©ÉgeXÝ´‹Ø[ªMç©’N„¦õ¶0RC–2"¢cßC¬©¢8ñÜäU T˜ÊQézÇpªí”wÈàÁu²¶îq~®dÚdCÃ1žœÖ½‰ •¶å#+E½L *Àâ(dÒA§¼,Yy‘9ÆGí.DpšäÝc|¦ç¸-LV«‘¯k•®òUxkØæ½j9j£šæ¹3kšäè­TêŠ:ü;¿ˆ4TPgoft tM“%{œç=Z €"kÏ*QÞ(Ñ# ²eQÄB6¯xE‘Úvcåçz’ @êXgNay;©9Èíý½PŠXñy:Ä—L3>þ¬Ú(à‰ $H¢xÑcGDñÀ&´ADÖŒBZ1­cDO„“&mÓGœzDBO!\p›/J=•sÃïÎÛÜŒ…|1L3ÿšfåiÅ%篢Œ¿E̓t‚#Kl=JL†BÉX ‚/Ã\ï!«í|•U~]è4Ol¿aˆ¹#ÞÜÓ¨¬r;ÊEÓÔëòÞY™¢"7âa^™;Só^òO3:+™~—,µ&nó«|ýý}z‚š.QÛ¼†µ˜‡ Lw…ƒz€’Æj’íà#"†“‘šg ±šS ö•ºèsî'.òˬ¬j3ó61w$*Œd$’0ês%ŒAÛñöUVÉlʩ̯ÕÙ:¶yw>>ËÄc˜O1"›:s€ñÎÆÒeÒ¤“Nä‰%yÎM k¬¥WúXÖ±ºœ¹5¨Ôè‰ÇwÜwqÝÇwß ïáÝ|Ü2qÙô)#l²×>jc¯}µcQ¼oÐF$gÊ:¶8H÷í¶abÈŠ‰¢#!ÅBÊÆ¸„sÊUòÊcä9Ȩb<Ä{š!ˆ-T†Æüðʉ±³Ø55[›»œÖèŸy¿§m›{g•ÚÔlùmíÄÞÚ­ÇrܺPE‡c†J‰‹ Qå>ì’@3*n02 !&¹WÅŽâ#”#VücqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjÝbr©ÛAùZH‡R"À£‡˜«cì:\áE9œëD±o2ÂHÖÈËÞxt»2Äøž¥òŸËäûg¹ÎØvc\šÑŒK‰×áüwð+¯©ü$Nuž©e…’yƒÄÒ>^®«›‰*ÇT§ì’f¸õ‚å¬GÏÂg•Ø^»–æ¹gÙXH+åYÚž( ‘:Q?u3!ÄdZÈÇ•0`ÅæŒõå›c2,`F©¥Í(±‚Ž{FÕ)Îæhâ=¬n§&osZU8=>i#F{$F•ˆ$‰Ã˜ÿdÐÒѱ§Î+¹[6`¹¿gÌ1`ž;$8²¥˜Ò¥H#"L’¼Ç9ˆíO)ŒUq W¹u9ïr¹Ê¹ªçÆ·"'rùygÑÝPb븾×Ûù(ŠíLTÉè¹fÁ.Y”™«ÈÝ뚪ô_%ªDÍŽwvy ½Nì•ëîg’tè§Ÿ¿5õÂd<‰`±Å1ŒW#‰ˆç¤{‘ƒ\÷*5¨ª¼×)aÄ("=r86]íj;‡¸YÂ#±Ñ"“´2•ì²+%Dx8uñ#Aˆ{Qa€Q£ qî)6À°lÖW¼ÒÔÔ÷¹ëå9WÖM´:jl@êhü´Þ9ÐŦ Ê>bIÝ·0:÷IìmrðYr¹"Q‹&A4±›‡9R¿HÚÖ7YçicZÔÏ&¢'O‡wñßüÇ1„Mq R‘ÈÁˆCb+ÈB=Q¬cQ\ç*5Ux‹o‰þŽœ´¸ÔÚXés…Ú¹˜äã#juÈ#$¨ä €HäùãÆRä°, ¯fÖ5×µ›ŽìXŽTy»Ä‹$íHÇÄpÆ!«DÏ[qôåa÷—|Yàê þ ÄWW¾O´¤ƒ-{27³CxÝÚ+zÐˉØ[2è¶i«Þx «³b¦¶"éC 4Rٵɤˆ™f­v‡i#S[¨Âu ¬i¹*fǦ¦®NDrf‹Ü¨ŠžtÏá]üŸ Tκ².…å …ÅÙä/5,½Ï$ ‘a4€…u®’q1up–ÞäAÅV Ú|ZH­–˜~ Á5Æl‰*Å=þð«t•ƒi§Ä—Ù$?PÈ'iݹ¤Ù¤€PºK°† ìÞ®T«ˆU  fAU4(SZ£÷rôÃc„ø´ÐÔ¢©Šñ ãiÙå*–[ÇWÌ’óHörOM¨ãDkxA‰L…Ë/8[ŸUMH¾R§Ÿ,‘ª“ÉVð…”»¤ó1}¨úê˧EOÔ¢ Ó7&NEÏŒ“¢'DO2'­ïá¸[b’Èö'ÓËCÍŠg †¤gIh‘¹Ež‡ž/8Xqä6B"Â3lXÌar}\ļž¦{D%!+Š©”hÙk`"ó…˜xí¾´@b Yckõ£•ÍÙ"ÅY9¨„Þ€ª½ݧ4êV½žB"»JéO2».‰æóû¼eìßÛ _öÜ×/Ô㸿¼'ýGÓ°Ÿiz§Ð^3Ýc}ÅFgþÜŸo.B¿»¢ mú(½½}ÅoÂ;ø_+˜`ìʲhwiX5ÃB…ü»õÁ‹ÒDÍqÏ¿¹·Ÿø#ë‚RL0öc0›ó -ך4`ÑUs"‚;N€Žé;ÅIóË6ÎywçXË‘>iô [Òæò$l,G¸b=ú6 ™écÔDõØDr@häpmd4gÄ÷G™{i.!ѤFª†TSLr¢h4rŒÃW írü‹cqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjßbÉíÚ=Ôç‘óù8Bc"ÖÀÝ hŒ‘ÙõÀ‹ šXÂ,½Ždè§)¾ðæ†åO`vàz·=²ª«ÚÉPeò•ê®êto’ˆÜýzñßÄ[kf á ø¯,É4{k˜Î!pÜSÆpŽ ÑFˉz+š“9ˆM¸|)pU8j°1M±pÂë{‚Nöʸ°`†Y§Ý•(‚k´Æ†’¾#È=$Ix]¡îß’£ÍÓ«yD÷°D#¸o_„wø»øïãÛpÓ,¤ˆ¤+í£˜ángxkšÅ>àjæŠr×¶B<*(ž¥`¤¼KmhÍçì× ŒÞ]úàÃë&‰ßŒ\>>ãÇÏ‘Ÿ<ئÎv'WaËÉð eÙ—²LˆåÛ3m˜l~‚ãvZ^Ç5U=~«°ÄúÜ5Eh5Œ»2áÕÅ$[¡yM³ ìÖ"5»ÙJ½UïO>yêDëåz\ª®Ï¹S5O]ßÀl­^ZJ c›@É>Ð/7Vĉœ1¾;AO˜'1P°Ï„b½ãtZ*ÈÕã~[Ï9òdiyˆÎjaÜYrö ÈdåØcÔAÐ,˜Ÿ 5¬&îQKâ* lgdA3H¯ZÁ²žý¸cÑy‘R9¦¢çÇüwñßÇü{nÙ5vØé ‰¿)‰r·ìg—§–¥ 7‘Ç(ؽ W0~W tÅN>aVÉ•ÍJHþB¾H$Æ/G=ÍŒ÷jרFæQÖò&Ý™FFªG×BÔ¥Ô2ˆÈ“A‰J„±8ž®)6šª&…‘aF0µmÇŠÇõ½Ä~ ­u‘î{´µ5=ÎrõU_žŒB3"$³RGŠÂŒ|“¶òº[®TS±bÉ’£9èç6[b{›ëh¨¹ŽS¶®k*y­­þ[´f†þÆàw¶w·6·…¹§Nã3ÔŸ"È›6@!ÆÊ—.QG4XÑÆâžDƒ•Í@5Ä)HæŒckž÷#QW‹ìY=»Gºœã²>b'LdZØ¡’;>¸asKE—±Ìå#—Þ%àUê7+˜ØÝÕró®DÔ®UîÖÔϹÅßÇü ßsøO;Vht<],¡Ò”ŸÀ©‚󩟽n™ýDUã,”Ò;¼éšr4ÍôÅDwË7„$µÒÏ%R;z5zwªj]+ת®dêæùáÔFµ½ÈŸéöW½WªúèÕuq‰6ÂivcFZÈì•ʪ®V°câœås,!ŒAˆozDºÄ€ÜHÒŽdp)éÖ»hlkËÍœÅ~ée Ò†ÌÉÑ{B_ÂÈŒf †ñ%cH"ˆVdÑZñ½ª­{Š×5UƒÌ¡ŸÙd.ù{8ÁÝ®S«²8ÎŒÕÑÜT#äOhÐÈ‘#„ dg~~ þcù+ÏÔÂì%qùûÿ ±ü•Ã6ÖšÆké_uz¯®m}4VS¥vb_¶Çaßÿ‰EŠÂ˜M,©/`ëj˜¬o^aŠykËDæZt¤Š ™ OØ•eŸ%¢B;rSN‘á©â{½àª~” }ù¿õØÚÕâÎt8t•ñ¬‰·ÈÖR&‹i~ñª`?[ÆâcHžÆ”ÈO‘/ìZS†ÎÔÔNŠy1$²ÞÞ<²\y±€gD=T1͹±¤®lQË™¼m] Y!ÂÖp Æ%Œ±Á„×Èz33H"÷'¶`B9e¾,¹§bŠÍËꇳoªIa|n\4—«ªæåůÓ›$™®E™¹›óï™ÙÁøA«0§/rÝŒægÌaè¨ÿ,¬|˜²DIòZ= Ù„ôžUCMlˆ¦„¯³½°•e1êü‰$®{Ç‘æåâ âQ"µäzŽ,v ÔºœnÉÈLLº9Q3Eý2çäuTL½·zy+’ð‘à@Ñ4©U4æ½í_•ÍWS½‘Ù®MG¦k­þÊeê绯•žy·>¹çòëåyüœÕ=rª¹ªú8…caù‡¤lÈææöŒøOÞ\ëbé&ÞîÐÑ’lØ”ñd$Ú{ SB=ŒL“-Ìϰp”ŽCXJkù$Ös9ˆ¹:ÁˆñÑo¼”S0-%uE\E^$rÂË!\G£Í[Éb8m6¨ÔyIÃ×Z=ªõÓ–^F”F9™§¶T#^«ŸTUÑò¾²ÖÀv g‰emÍ|m¢O¯‡¸ Ñ%XŽ•,õ´´½áµžÆi2ÈO‘i°4"Ÿk Ö7Miä²1mîXO£”õ•:dǰ¥&Þ • œ±E1…÷Œ ¸‡4YQL9¤Ç+Á"<€½€ÃVF Ò£s^7µÕG"/Ø–vÃk ¦x3+¹Ic{ãXBÜ("¸üŒðɉ̠);<ÀQBF*úæÎ¾›Ë¡”¬‡CyæN0†¤PÅŽ4U_•cŽU@¼¡I2…b©ë«”ÔXm_!ŠMŒ·êMÙ$Wí±Å!¶#³âq£4†#…;:Õ&7§‹m íž¾O’ªˆ¿¤r¦¦úQäLóTÉWW 4uÜϽÎDÖ7"yLËúÚõê™®¤T]ojµÞ»¿€N˜„¥ÃÛ q%È>Æ)C¿ª°£#Û)AD†ŠË7Df² ,!ƒØ„9S\Ö>ÆÉÁR¹¦±˜Œies¸hìƒ àÄxèÀ·Þ"L=îݸ©ªÜÝÛåvJûÍý;oßըܮ֠åÌïn.ÎÑx‚'*æ²wš‰çåÄG÷ä©–µb*wª/OJxð|y¢ÞæM°c5yKªªŸi^]B{»áÆ>…UvöŒÂï¾DŸ”aϵ «M2cŽEE`…UQ)À˜¼ÈÏ*² IšV‰y’(ñ›”qûÇÚÓ?B9Ë8é ›G#"ÌW¨´ D¶yU17‹µ‘QÆb÷õöDòõ9ÝQPŠ©š.¿+--iF‰ÄAˆx‡ ¯V&B9ˆMÖ•:¹V ¶ç¹4h#Iu;Ç寰&›ÉÔ©–­O?’®ò²Ï6+¼‡;F^.þ;Ó44ó¬‘JXë "Ñg9—„ö'QWÆ.ʱÈÉ2D¯R…Íç ^’ñ#cb;Gm½¢0\µ–Qœˆg(ìý˜¥T™bL… Ñ WÉ_x¬#JÖbϱ³´3Õ¯ßlŠˆÑ¢F`ݸƒ@¼wrÔípž÷¸ Ñ%X­‹2T´´½†;ý‹©Âp÷^ª¹ª&·5›M^õFèNí>´Y»71/L²Ñí¹r¯Ù]Yø… ! £8†9ÌôB±å)HæŒcb+Þ÷#ZŠª‰Àm1’š "ˆ'G‘R²Ýê<à‘†ˆè‘IÚYLöY53!¼:ø‘`D½¨°À(±…¸G›`X&nï+ôµ5î{³s•~£°´Œ4Œã1_*XÜAo1K#O$Lpòr‚h¼±ùy”hçöES˜ÔÍÛ½‚&ï²1`Ã!Íp²A=¶~ñ>"ä4Ú™e "a£lG’ô•Zº°Ý¤ôé:iFFuÖ×¼Úón »{SÛ~hËk>íoiY¡<ù«ÛÝß–|rx¼i.1Lš­b°HJæ+Tz \Ù#Ýj9Q»rÅ™t¶b¸Ø9P¤Ç™º¶¤E0äš\¬vÙ„ç ú^×1Ú\¹9ªÕê‹ó÷g…ipøeÙ׆½_ii%üˆäK { •±‡–Ï&4ëgì˜BgŒÕ™ñ£ÿºÿ¬|hÁÿÀ.¿ë³¼\IÑ«cÖU£ïåL”ÌÛ.lÒ,ɤԈV¢‹k@óG¹x°vjæ"ÆW½¨¬·Õîͯw–Ôö®wTÍ}f1»s±l,êêÂÄsù†È§‹*\—‘ª4㼈€sJ÷¹ã„Ñ£q~CÂX/;D0Ù ÁËH!‰"¢‘â‘›¦!á¶> ID gtW¹e­äýäЉ“FJ4V IÊÁ1§™ܤ³éŽˆ0´òÄb¨Æ Vç´¾ÄÖH†Å<ÚõYš,ÞéË¥$ˆmB5®W5£ÅF¯Xè7QúúÅÏåˆç'ÐÉ­þV¯³Lf"còÚ“­Q©©®9Q¹{³Ò¤ó‚Â!8mq³´kÖΑ—ƒp{FäÙ$dMÆî7[3“´bò«8hœ•sÝYÉ• ¨bj{œšÛT8þB* »`ÖëÔýOwL6‹þüeÿô¥ããuçðx”¸&úØVèѧ„¯ÞÕ«=¾Î|ü¶ô¦½í¬õ·o_—£ã«¿‹­ ð×€Ó,\¯F(aÁ3Ö«\»®[‚­Fª4®.§·!«u¹Ÿ¯ƒÀü§ÁXuÎ =è'’ÑGRèyÚó4OsrW¦3XìÚ…"&¥kúê÷#ÑêhP•ÄsQ®M§%§‹mUÈõV‰¥ÔÆäDn¶¼Éek:HämïFS¸pµ··ðvá·K„Ây neMå̪¯\ºgÓ¢uwUÉ<”ëö¸tÍ­rn½?Nš²¯?Ec×Ow´Uò“&#z5¨Šç½}«ÔÍÎw£Ñ×$ÍQS¿ˆíÛ¹UQõgÉ<¢9Z™&K£,˜ˆŒWq×79<ëžKÓ»&«WN~R&¬óïs“§¡“¡jnçi ‘„RF´; ¹Š!dÇ ŒÃä0ù2÷‚1Jßùú«ÄAh†ÌKZáÈÒS¾Alé6#AFDP„+[&ž8è|Y FG)¤ú~‡ØüYøžhˆý9åçPkç^÷"éô§z'CЃˣI›‘½–]Zö䉖HÔÏÚçÁÔƒ³H$„Ñ¥Ùne›W5gµË£¾[Ðܺ§²éWeÑÌzd«æs´èL¼ë«O»—^?<÷Ñÿ¹d $ý+ÑëõÌÜ¿Q=Þî%VŽ%ÕDÙ²ì‘Q«l<Œƒ _7µ:;¡$zþ‘–½§R—ueµ¬åÜÐ:ÔØ~Q QŽ>#kØæ :HY± ¥ÓG ýBIv@IQ4–6ø%Ä8eE”È&9hò#™ˆ@œ¸e Fæ¼dœÇ±È檢¢ü…Œ¤|bªµ>…³ ,q£aç­S¹]lc|ÈòíÝ CA‚MŒŒÞr¸’Mï#m£)‡[&9ØíÕ&†X¡[ËŠ>Y±Œ42v•Ísä‘îcò* îfNòÄÿkži©Åîw“¥U4‘¦¤áöU±Ð rk•}Xÿ\4feäE_lày\·UbòÞL6¹ä#Ø1W<„#‘ƒÜÜ÷½êcŠç9Q¨Š«ÃO}¨h›ÍJ±3ïÒ3\s9<¯,­¹@âz*0BÚhƈÆiz4lAicŒÉ¬Ò=(ˆžOD™eÞÇ¢®~ŒœŒû9ðº†FõîVjú¾Ç­>Þ~ç ×,»õ#™üôn}Þn:iý»÷lü||P_ݳññí™ýÓxèŽ\—/‰¿/³§%úœ.BLòÕ¥¨ïGŸVKéÓŸ¹æá=£}=ïûËÏéá59îËÝÓö™§?s<òã&µè'ÍçV¸J™·åSUí—Û»Rõjy¹*¦­¦ª´¦ Ó?jݵÖÍ ô]^[ÜÝLÓ’£Ûw" :åÞì²Ôåï_ù“¿$DL×/ÓÜ^*gÓέƒ0Í9¢idňƒG¹îA£Þ¨ÄsÞänY¹Ë×çé–Ã=ì;q Yfü'ꪈ1D½‡ ŽªeƒA"`àl…Ë ¹²È´G³™±_!“$CW0O÷’öµöœ Ð5ëÓ±¥¬²ÜËK·3ìí-íÍ^Ç¡þÌ6?¢&¬¼´D\Ñé“Ñ3ô9;×Ò¼*Ç3†¾Rè'–ÌþU¨äÉÍjw*®ë²ôªyN&Ê4Êš¹ˆ]s{•ÿ£Tʯ~²9£B92MôDvLI3‹¶ÒµÁÅA›B;ÙZÅyÜÖN¤j½ŽF»Û5{¸^ÎüôV´e‘-ùË"9êö…3k™;K\ØŒkI¶.ãÚÇúÿhßîSjß°ž¾3¾U®#U}×£©—TcýÄ˯›€±Ò÷bæ©¥êï%sN©“—<Óªy¼oú Æw¦†¡~Í|Ÿ«Ê=þW¶i쪹­­þ[´a&þÎàw¶w·6·E¹§Nã3Ô†‹,*1ILixdG¨Ì„ˆÒÂ#\ kØö«\ˆ¨©ë“tC&œôî1¯Ë>üµ"åžIŸÐáZ±‚ˆ¿¤FG3K“ê/^îî;¼_š׆(ö¤ßé—ʘüÃdöupvÑÒÏHŒþiâåö«Á3D賟wäRŒ°wñMí|Æ;þ ZÊÕ}Ô‰Ó ëËXÁ§*C…"8E`{XyQJÏy(6{¼„سvµmîr§aöõé~z4êÐý9ç¥{¸öÜwñ߯—£^ÕïkÑÕëšt^韺;¦^B¸IýÈÜÖç׿,ûºôNƒÔNäsÞüº""7qÎTj"tjtO2|;'µ¯b÷µÈŽj书h½%ëÆ± ­wé•\÷'EO%^®V抨ºrÕçÏŽþ;ø…J%"äÜœaêÎ5x|¹fÜ@H`ˆ¬ö¯0ö4ÑBED/Ïåû4™"ÝÕ"±Êó2ÝÏ4ç"´\6Î$ql‘ã ÏS#›$ß«ÃõCÜk00Á›Lñ‹qÞË*O.#™á… .iØrñc¹ªÑ¯Øz°ADŠºt±…Bû[7m›i!¯4‚oL#5 ß É;AH±@6|ƒ0ï-§²è§Ýs›ÙïöüôƒËrûIµÊz›ÝÞß&ÿ9£h<¾£ûÉ/nþ¢LŠk"׬WD”dŸXcR:U!Ž@d>Õ—^Û.¹¬¯I&ŒÒÀªók–Te®Â°œätbdÏ#'Gް<™PãÇcÙñEkÄâ'•ÇüwñßðÞþ;øöümSA!…¯lÓ‰ì5ñ—PP›²ßä9ád™ñA½5@ª@Æ"'¬_f’m/°°{Q§šv¢äª™»j8µ9±bµÎ`ç*¸² "Aþ~ð®( _þyAc;èXRÅåœo÷xÛàú‰füäÏ„ú²´Wx–;9/tq°Ä¦Ã›XDÔ fYC˜]e”àÄx›ÈÉ[(ÎùNå¹M‹ÒÒíooêõ6áÞg^Ðrç;/œÙÒ¼¾ÿ/º}­â{Éâš6°É*¿ØÄV³—t{šàCŒÁ9¤S0”2Ôíp˜Æ°‘”d*¼[ Àsfê¶QXضhFÑ„E˜&¡°5M°Kæ"*Œ;‘È‚b"¿ÞSF4l[–5èBîû+Ö†¡ÂùJÉR³'\»•%±àÄÉ4ú¬ZG<[¹¶0š–,òpˆc­ÒT \BG;^„‚f¸f FåaQ¿'Œƒz+^Ç¢9®EEDTãÛqßÇüwñßÇüwñßÇü{n¶Ë°jW cË+DŽkŽvè4sØÕz¦”sÚ™æäá[4pé€ÒYRÃ(¯ܻϊçÊi7=©R!4ŽxÚÂå¸ñM¡äÞÊUd1«:Dä¯#ô .l¸’ÆRGÉì`™hðâ‹VÜh¡p[ÜGèšÁ³Yç»KSSÜç/UUùýÄá`áºEtFÞG,ÆçËv1Y>i"½g†ajÃ>\Äfç4èå(£œÏO^ËkHÆõ/‡Ì)RHøÑÍ ÖÌŽhôIZ†P”næmÈòѰZ؇åk J|ƒcqdnZº¦ »)ò6ÊmˆPc’T£m…9v€'¿l#!_–‘±ïTjÈ›6AæL˜rÊ—.QI"L©2âžDƒ•Î)Žb¹Ä)Hç„sž÷+•WÞR]aæ˜#¾ÃócƄձçZA<[©F4pÑjÁrðI“¡ÇÉŽ"¡% ëthó"—NìiA€CÚFk Zñ¿A×·SWKÚ×'TEâAV°Ï z7k¤J„ØîÚA0±á„É\Â3$&K â!Q^q^MmJËÛX§ÜEq'Ž%€”Z]›ã«{H¯Ð¨U;Úk›´åzD+ãxÌQ¹¤w­­ÃtÍ ¬- á…dLI&Lƒ‘u*,PšIPL,‡°JÈÀ<‡ /­Ã”í3kêÂádO ¯)‰&Lƒ‘Q¨¦•(Æ’T*²0£ >AÇSb0)ª‡NæÈi4ˆl!ÐM{Pd·ÅÌäŠår’Z'”f^ûÊ`™‘X¸‚ Sí{˜‘ïŸØsˆ2 ÛÉbrFr¹XÉ Š3 'ûɶÐc™³ˆ©áL!Ìß| UG‹¨&5v ë<€©ajî`dÇ}kïîc›…›Ñ&FŽ9µ‚1]\›’†kÙ°³ HkÛ˜—VBä,1Nóec;¥”Xûe]ØU5Qg›u fÁî«Y¶B0¥æu„`Ná{Ê\Cš,¸¦˜Ò£à‘@„ Àa«HiQ¹¯ÚŽj£“> Z×—˜g -„í”[Ðæ’ch쇸1ûfÊÌô‘r*'¼•uà¢îÈÃ×Þ•¿£”©¶Ä“ì.3}ûFQɤ‹-CÛÍ»ÖÅÅ·ðBì!\b¨#OÞÌG\Äfç4èå(£œÏHõYL,o‚oí"ŒkÈCÒW-!ÜlË# “†šdyž%*-|¶ "DbÅŠÇ8˜ñã…ˆ0€4b†ÖŒbZÆ1¨Ö¢""|‹áéýà°÷—ÂFÿð^ëÞVÊåC±co"[ì#BåJêñ5‘ªâ™ïy M±0³¶Uê2¬æÆŽé k§Lù}n~Q{ËàBÅ9£Ø»ÇqW…î2Ò4I`W Zå ¨‡4Y"UÐxæ(JŽÕ÷ªt 0!Ä”Ôó\V‘Ä`²mû_XF5‡Y”qç¦,I A¡\3 ÞZŠÿ—æûæ®ß”ÝØæ»2p&òûûfÙÞÙÛÝÙ.Þ­{oËJûÕQý=V}àÄÞòëïWàîd°äÊ’p¯Þ(õX3s:{.ö}/'³žÿoÀIÜÏ1º›\§©½­‚oóš÷CËé?¼²ñOC ç$JJºúˆ¤’æ>I#VÄ0>CÄ0‰ÇpÂÕ+†1^®V É©ïSGôõY÷ƒ{˯½^ •(;§¥AeZý³–š[˜tï6‘½Œ6uÖÓãí¥oî£â ï-‚!LŽ påã 5TY"aãI"ê@ Ž€a¹Ã(ˆ×0Œs˜ö«USÞ¯B–óŒAÃsîèîH²póþ¤[°Y•€¦£PŒâ°D \Ã3Þ[B”óŒaµ%»]ÌiNƒ.ú¤[°Iu –£QïŒâ´D †g½V"üÏ'ÛôVô¼æÏ1Êv¤ yž_tûû»;áÝÓ£tyêOyhsyS”—W;[;œæðG‡¹m{£åôöï7½¤ùò»I¿¼z¼E‡yžs°/méyÍž_›ì¹ò ó<¾éö7ö7vw͵«Fé2Ô¾ò¸Ãs:{.Ž 7)³žÿoOY¼Îþêmò¾§6övI¿ÎkÝ/¤þõxò3ÍïÞ–ëwgcOª@‡rÚ7MŸ'Úœžö¤æ69 nìÞW_5çYvXˆ5œ>Y±©+cÌŠñ1…C˜‚cd9æ{ÁFAŒNa\oz·MÎââ7Mq5¥pÜ1I æÐ5‘Qƒc˜‡GŽi\bs$ô" ýåh¥EÙîgßXÙ?p¯æ&Šâe; ¤{•uTû`h„»ªÅ9LB{Õà¡Wô‚®}°â¹Rêk¥ÏhÿÝ©5Ñ _ü(hÃüöïyUãQž+fVáÚ€YBŽ‘¶ÅmÉöîs¡«£æ³|³Ê’'‘%É!d©Jâ©ïW2w3±ênö’ëkgwœß10ï-¯t|¾žßç7´Ÿ>S—ÚMýàûÊaü=Ìò}½ySKÍìó¯jOg—ÝþÆþîÎðw4èÝz“Þ³T:ìÊl7g"©%Òd[ÖÇu+cФ‰m´8DVkIDkcF^ûÊaçò Ÿ6—“ÒBF{"4E¯žÑH\Èx׳jc°’cIQMb1±žpûÖâ¬? ç,:—“ÙÏ·à$îg˜ÝM®SÔÞÖÎÁ7ùÍ{¡åôŸÞIxÃØ{™ç;ަ›œÙåù®Ë3ËîŸccwgxÛz´n“-Kï[ ó<¦Ån·vwõz›0q-£t9s—Éïj^_˜Ú>ÖÉ=ä°$g”Ù½ÎîÎþ¯Sa6"å´n‡.s²ù=íKËïóGÚÙ'½~ Âò÷ÜZ;Y•í<ˆd€I±‚g$+Ä#ÊáÎÅ„\Ša¾4‘G8œÂ¿ÞGâ÷)ÇHpØÐÉËN“g2=œ½©êö‹~¨U0ùˆlI·qÄ|ví$¯zö] S¶1M|âÉ;>[:Ô},ˆp ЋËWA§“*;‹"@K`†{˜ QDÏybHaÇ3È“Š¤ˆ¦Œq°vL*Ÿc&Cª5S\²E&L†™Bï#ûׯĬ`fµ\bšK Ù…Tر@4tcÖn¢çIkQ¡HØÇ=ñå{ÈSáøO¦^Z×SÄ$§‘‡&Î`aò!­Jf¸®JF¬Ýä­u=hyjê˜1+`GÜ)¶!AŽ8±Cºw”åÚ˜ÍÃ…~Zˆ÷½UËï_ˆ0¼½†Šòªe{O"çŽ“É Å±ñ4§¬™±a"„Œ“DÀV°¬‘ lsÙ å‹.$¡<˜²c‘Â+Œ!IÈÂY¼àµ|¥’™Œò¯ ÚÍh@BÆi1Ú ~ï+=€Y˜ÂÚAZaKÉÙe=T(²€Dl`œ6m¾×FkÔ±¦Çß÷1‘â{ØÓb¨ì9 „­\)hÓF`Ôb^!åED‘ í¶‡E;b‘Tc™(†ŽA5OÞ:¾š°<Í´è••ñ÷ù³¤,Pîâ·NV3pÄ™ž¢=ŒErSaøO9aÑÕWSÄ$§ òI² aò!„N;„¸®D7\¬“SÞÇay{ åTÊöžD1Ï)& ’‹bâiOY3bÂ.E &0ˆ#€­aYï#O‰Ì×`È-ž'=a< Ĉ±éRDY,)Ë´[YÃövp«©¼ñ5T@ Ø•ñ¬äKˆ‰4PE³‡`:豚Q‚¡+Øó¾Fò7Þ6¦j  oŒYK ê±§Çai 4ü¤Y;k">)Ý$q­æÜ>!ßCU}ìàbÑŸAðTïe ɤG¬Är+«dm±ŠòΈ©ÜRbÇd.ÒWb{Æa,4v€°çÛ ¶Ai1Ç"¦°eµ·ŠÓÃNdg•Y\x®„¼ÉœˆÍÎ@ýí,iìƒÌ×[A—[>>áC¿ trE”Ðôâº$.Ðí äˆ,½ây1š©ð?+to+-ë·ž§c{ÈÒ‡·*4‹æŠ\Gv7gÎ݃5{Ü’ò4ÓãŽjè>V{7l ýQFöY’erT˜÷ÎHížÏ‚-º÷é÷‡¨£Íõ]b/+VWvôo"dè¿™‘CŸz [ogöƒDÂK.~÷6ôqÙ®â&›¬;åiÎî¼fÙå̃óN)¦SïN+¢BíÐpžH‚ËÞw“ªŸò·Fò²Þ»y êv7±L({r£H¸Þh¥Äwcv|ámØ3W½Ù/!³M>8殃åg³vÂÕoe™&Q7%Iq¼áDˆÞÙìø"Û¯~ŸxHð¡G<É“(±"E$I•&A GŽ5Å1ÌW4bÚâŽkÕr¢qQG!š.%êºÄ^V¬®ìèÞDÉÑ3"†>ô¶$ÞÏ퉄–\ýîï°œ÷mê €ÉüœÑ=’«gíLGÈìûE›Ê¬‘ ^Ç,uP[{ òÖ53¥Öϸ#lMƒ ‘et( ´q=›!üµ ïb£—Þ w“ªŸò·Fò²Þ»y êv7±L({r£H¸Þh¥Äwcv|ámØ3W½íg„ª¸¿íTx§`?G±.$rð¿d¥›ac;ÿ£UÑßï]OZfÆÚtJØ÷ù³¤,Pîâ·NV3pÄ™ž¢=ŒErRá 289«¹`AªO¼™‘l¤o¶$ÊË”âËŽ’ÙQ¾1ÜçGÏÞúÆžÈ<Íu´u³ãî;ð§G$YAÝÄqn€¯fàH2³=C{ˆä²Â¶Dæ¹]©,›DXöµ’™¹tv?_cBYQãYÅs%rªgûÀ¿Â•£tE…Ú8b;Å4E<Ò ‘lo]@Šx Šy´¡nV<ÒÙn$)UqýïÖòŽ«›Æ8olÑy8Û¶vÔšÉÏÒ·)ߨßuÄ(§Ëæ"H¯©Œ’.»ïW†*utÃÖ3D:z†˜L°¸”מ(¶ ˆšš2J޳$º=|w¬É‘†øTPYSX t]±5{œç=\SÅsÏ*QÞY2䔲d”² B;ßo(ê¹L‰6Í“µYSw œý+r}ý‡\AŠN^\Šú˜Ë”û_?ì¹·ˆUø˜™,¯‰$éª$1âá²$Í% ÂVów Xjë¶Žttð%¯¾ ¦·³GWM(A)íÚ²¾â+Xx¥ß‚RjpÇ*:LŒéò°æIíðÕÀ¶¬ig Œ™!‚6Ó½Šd^h1ŽH3€£›CÀ.fÁ!­F¿?ÄÄ—±' ác~è’KúÜÀ3âW±Éµ  ¬w/elB8o­*ºD+r>ø~®éëaH/íD|Ý‘KÂ0Û:|½°ªΩ9‰8: ç„K »´%¶¦+>"a¼7™'2¤Wt!¹‘ee!¬'-6ã5¿A R0á†Lé1bš« Ñ0í¬¨Ä”e‘$Ä1Ë.\©TkTó&H‘(­Ãd3‡š¢@c."LÒPœ%o7pÁņ®±{aHçGOZûââ //a¢¼ª™^ÓȆ9ã…$ÁrB±lB|7Çx…&ºž´<µuL•°#îÛ ÇX¡Ý;ÊríLfáˆB¿-D{Þªå÷È•á/×&!ÔØÊ²FèČᘧÅh{J„­b^$PÈ¡È[É,†èw§|ûUáŠ]0ãuŒÑ$ž¡¦,.%5çŠ-ˆ"&¦Œ’£¬É._ë2da¾« Ñ0í¬¨Ä”e‘$Ä1Ë.\©TkTó&H‘(­Ãd3‡¥!NŽŽX(b8¯J¨n¥C,\ÍM 'Ê·÷Í—†ñ$Nf œˆ"Z9µÓF×¶=•l‡0œ´èÛÐýDCC˜0dÊŠixoDå§FÈ‚(ÕÄ…cŽ{cÙVÈsÌÁ“¶ýÐ2ˆ£49:4¨¡ùñ‹á/Wf)ÐØ6²xFØÃŒÑ„ Åj{Šc˜®zQ¤ ÇQÇKÈ̘é”ó û纞ἴèÛ¦£¼šI´ÓHÖ¢½ˆ®3NØÙeZò SD1¹¤:4 ðçÑ^À=eµaÖ<ØR7L‘ís\ÅpŒ ÌxÍš!¶HI<¨ã6ž4æ5¢&°×dŽÑTF` f;8ú(A¨+1}`ÚK·5vÊ<Ü^ǸÚkŠj£ÏpÈÖMD’¾l&e°¯³ŸE{õ–Õ‡XóaHDÜ2GµÍsÂ0 '0ñeå.1E&1K£#¾{T„SÖa õ·wmjn™4½Oº×Ö¦˜âÌ,jˆÅdÙ¬) __gŠŠ+*k‘áBŽ‹¶!æ¯sœç«Šc˜®yåJ;Ë&\’–L’–AHG{édXÛXÒ– ‡áùÀåØ[ ¦’C0ì÷H,` ã«›ò$ ±æg©¶pì$B›ðæC9bˉ(D&,˜äp@ Ö”' Zá”DkH25Ì{QÈ©óØxî“Ùør“”>#°ijPRÜ~Rh ¯TëRSY(¢|*ñÒ¤$ƒ6%u„ *(¬©¬G… :.؇š½Îsž®)Žb¹ç•(ï,™rJY2JY!ï¨\M†Dxê[3xئ4q£G i­mB&´Uv…sFá´uv„H) m4ˆScžÈg,Yq%‘äÅ“ŽãÈZÒ„á+\2ˆiF¹j9>z›ONÞZ m£^^N$*hDs‘ôG™'lŒ­­aY¥âFƒ|øq0Þ‰ËA™ R+I6ÆiÆÈ²²Ö™'mšß b†pà h±Cï­:ÖMŽ”å/QNØÓÖÈÀB¼Š%pŒ ÍŒ¶ƒŒûxcA&A€•2'Ñ^À=eµaÖ<ØR7L‘ís\ÅpŒ ÌŠöë-«±æÂ‰¸"dkšæ+„`NaâÊË\bŠLb–9FG|òÄ·¹aðÎ߈ò˘G·¹€xÜâ ż7‰"rÓ£dAjâB±„G=±ì«d9ƒæ`ÉÛ~‡èDQšÀÆTPüñ‹øJ©<:øg^ÈÂV±IMœ˜äVó·ðd1¥ PJÕåªä¤¸#w¦ )a¼÷Ý—†ñ$Nf œˆ"Z9µÓF×¶=•l‡0œ´èÛÐýDCC˜0dÊŠ`>ÍAiC`s†³W´Éäa ¡…b·Ue©a‰&òjI1ˆ5;`XX,ÎóÁ(ç™2aÅ$H¢$‰2¤È#DñÀ&¸¦9ŠæŒB\BÍc®TN‹±êAˆ#òò(é@Nn…̳§•FÐL½†w8[dÖV” ce„²@“Wï¿>Šö,êlÀ±æÂ‹¶Qækšæ+J„­aâÊÅ&$‘ LbŠ@†FŸàè3­°\žbI@È7 lˆ’¤ zµ rÑ)bÝW•ÖÉ’K"Ï·ùÞ>¨ub] ËÁ‹²'È ^jaz žH"|ÒmÖºAÄÅÕÄY¢Î:@›½U;£@Y£ Ž)U¢&º2Z3-æDýd‡zÔÇ÷ⓈüGÛ±‘;zv|ˆQ+);Lsðédr ­åÏ»,õ³e¬'G9GTJöA‡U2D)±Ïd3–,¸’„HòbÉŽGñä­iBp•®DF´ƒ#\ǵŠŸ;„­Âµ¼×+Ë:Ê|‚²-eTyR ‘:Q?u3aÅd«91âÌ$2¹S#ONÞft£^^MÛ™£k‘ôG–ƒpŒ­­a(B!âI&|ùžü“­aØé@Rõí=a Œ+È¢WÀ0œØËh8Ï·†8ð4d S µž¬ð܇8¡X´fuEÀã éTöÅ8R¢n™0ÖC#ØG‡1 Ÿ;=±ˆ]; áVrEƒArYâ—”©J)[L×^,BQË…Ì3aöFOl!S᪈4µÂм¼4[ÅdpÅæ¦©çN #’'Í!æÉÚk¤¯M^üï¢ÅU@·¬qÃ)Wœ$ ˜êª)eÄ,yÎqâÅ1¤E#IÄIvôÌ>&ÂòÞ)pÂiôМRbH ŒÑe ÷5×9!ó[NI± /ΰkië§[XÉÜåàVÄ‘:iöDó—f,Q”åÚˆbhbèÞGdÆ9S·<'ǃqb¼‘«pØdõ•Žo/1ïºxöAm9‡G@-kVnåÙ%JK¦N!ïÕ'x< €ÁöL/,xt—r#í4<‹˜Hñh'+L'{ «,%¤7Éì²ÊÖDú+ج¶¬:Ç› B&à‰’=®k˜®€a9‡‹(,iqŠ)1ŠXåó¦ÞÉÉáøó…ãÊÑÉWj¤ ŠÛN`™Aƒ«h² v”ŠØ“59|9_¹8œÊJÄM‹'L’„®ŠkE·|´FŽAF…ª3%œIïØ¬Kèègæ+­kÞöõ„r™l9&([„6†lYäF:4'ÚIàÉŒéÛxqÛ¯$©)ð£‰&¶qÞ1Ã^Ä#~šðŒYi¾ÊÀÑålüè¶žºuµŒÎ^lI¦ŸdO9vbÅN] †&†. ävLc•iáIüì§í>>©°(áE„íÑÞXÅ`%p%4†–h¡µèNÒ·‹5ÀxP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5=ûäB›!Ìbˉ(C‘Tip@ ×À0œá”Dk†A¹Ì{Uª©Ä»ßí³.ApÇT¨»–ù<Ê6¾Aå4Xxê"I"±‹FåetaŠŽ;%Î!iñ-Dê[k^^p-á2AâóPËÔ ñŽÈóáð¤í9ÑÎV&¯œæÚLw©8í¥´O›d).<ª:§r¡Úájži°aRÔ•ç°4IQ†‚à1À@K»•ðeäôQÄiù‹"¦èÁ(°cË-t‡PÉhãÆ¯Žç/¿›`bÊ7@|»Î׊l=eŒbòQ^ þañ#$®JP9± 't ᬹ¸ ö–ÞOAˆF(ÓH!B{Š1^ÅÛƒ&t™Ãhá†M],kZdF·ßÙ°1e   >]çkÅ6²Æ1y (¯0ø‘’W%(Ø„€“ºpÕÖÞO;W3uÒ©e6"bÁ ¦t€KûǦ¤80"Y±Æ$g¾DÈ…69á̆rÅ—P‰LY1Èá<€­(NµÃ(ˆÖdk˜ö£‘SçÐ0 룋.aàk ±I0¹û)Ou0È’R/;(ÙD ºuhÖ-–4?ªû‘ì›ÒøØf†òGÑÊæ’®ùy@”Û'†²Ê¹˜tdn|G… 8!ÆE‰(‡4XÑÆÑ

p Ðκ8²æ°P¡ë“ Ÿ²”ðWWó ‰%"ó²Í”JÛ§VY;Â-Ÿª ^Wæ)eÁ¤gçÀüg”K‹ C|)å[EÊK c›´â»7¶žº MtmÎ^lHðax¯9vbÅ€-Ó”†&†&²‘ävo{•}ÿTXž”&4 —q~¼€ˆ9m/d$Ý "–t‰b®œ“*-Zy5òÔâU– ?ªúaïÒÈØšvó§ÑÊæ‘nùx ŠÚ׆ÎÊ|¸xtcn|H…69á̆rÅ—P‰LY1Èá<€­(NµÃ(ˆÖdk˜ö£‘Sæò RžD6.îWÀtp §æ,Š›D&.ÀêZæžž R_ìš#ÏŽÖ³¤$¯‘Ø|™Å×2)E%ðÄÚzè55Ñ·9x±#Á„ â¼åÙ‹b·NRššÊG‘Ù½îUþÀ·aš«r¸Š“ËfÜ1£ÉY‚ê"Ƕ†â=‹4#"@È× IØIsp#í-¼ŸƒŒQ¦B„÷b½‹·Lé3†Ñà šºxC”æì‡Ê¸òyLQ‡íhÊãÌŽXC0cM$0rÝ]5[ÉÙ€N(—š¯<˜Ï€Q•Â8žÿ›(³jOƒêFt»,MD 90‘7Û¬œãòÒœx¯ ¡TI$cÄ}Äy V£&^ÕÅÃu{=ÔQ²9ó‚øîIŠMȲDÓvÄ‹2â ug“ÈlxP£‚8`X‘"ˆqãEm#ÇšÑZ1mhÆ6µŒj5?°Õ·Ðm«¤íó,¢Gû%aŽPÊíC0õ±tl#r{©.~<ìc''4P9Ø}²5òeHZY #‹t|@C¬¶«¬„ÑÅtx(Á2_!” ÄðÄ”²p¤‡Ù‘„<•Œ‘YTpA¾”q®ÙÌèURc 1PΑ¤2ùš‚§ÃU®¬K¡yx qvDù‹ÍL/@A‚3É$Oš@Bº×H8˜º¸dï¶~§âù_˜T¥‰:íÿŸðMžRéëô‘¦•mï7ÅŽnÌ”ÜÛÔþ‚–13soç„vò %HKY qáó€k÷áÖr5ˆé¹x d’±ßØöâ¬3UnW1RycìÛ†4y+0QâÝDXöÐÀ’G¸Qf„dCHáI; .nÄ}›¹“ãÐb–L!”³^âŒW±w'Fƒ 8a“Wq4…ŒœÝ‘9§4‚ÛaiÒkÚ$[ŠTKªÎJ³'ÊI o¦ À©(/¼XWGB¹ÁcãJ`>g¶žºuµŒÎ^lI¦ŸdO9vbÅN] †&†. ävLc•"Ú<!\^Î2’êBÍð¦æó¾5<dãŽ5máh‹ÌQ\A=²-£ÎÅö"ìã).¤(«6o;ãSÀå€H3ލãVÞô\¸…Ä+)Òƒ[O]¦º6ç/¶$x0¼Wœ»1bŒ@éÊCCYHò;7½Ê¿Ø öâ¬3UnW1RycìÛ†4y+0QâÝDXöÐÀ’G¸Qf„dCHáI; 6f Å'¦Á$±(î!-œfÏq$”Yr)QæCªFº,FºD »ã%E‘HI¥õ7Ûðaòÿá©A´æù†üS˜1ö }™˜­ÚÙ<ž°GͬˆScžÈg,Yq%‘äÅ“ŽãÈZÒ„á+\2ˆiF¹j9>d1¸W ÚÛ‰Ç4Už(û5“2L,yWRÖ=L3¤w í©¡!ÑÆ6¸²@Â2F*¹ªÂB äˆ&ú¡· ‘ÉARD:–‚Dt$¦È‹{0ƒEŽEiHtˆ Ñçbûvq”—RUŒ› 7ñ©àrÀ$ÇTq«o z.\BŠâŽ”éA­§®ƒS]s—[<@Þ+Î]˜±F tå!‰¡‰¬¤y›Þå_ìd+új«Èb;e%ÅtK8Ã’ÁLÀM „Ó´F0ÚVµÑ”ŒGi{‘y¸ðmpÁ\y’$· ذ1¥YM<•¬[xpAÈD‡ Ñ‚3<[Nã0 u9ª³˜§kH Šytq›lŠò²\)x„¤;Jccº†á¼„YLpš#çÁó­"¶sà†Vpoù¼·Ôs´‡¹Œ FHŸ[kp!”ØòŒÀ)«n+§TØÆÛæ YD‘h7„Ëz,¡ˆâÝFaëbkFæÇµWä÷͠¸’òŽè¤—OGggrX1•ñÞxQL&¢0Há9ÈFŒ£z·KÚ«¦ì5XN ¦=…”[9&Œb=%º%lDsÂ5òöjG …Å+JÈ,aâ;ÜBqNaö Ž-d˜LÙw!2?浊ï=‡l‰P® c™¬Ž‘Nh‚u. ¢Á9–Q¦ÎŒ·Vq&‹gdÐí.ŸacañÄXã(B„t€±‡)Hÿì5mÅtjé;|Ä (‘çB>ÉXqoE”2€»GÌ=l]ܞƪ2\Ü TŒ ŽÖÓ’ÃFQ´„"9ð°üÊÈe>¢¹(€t—'•ÂXÃ2Ÿâ¸6+·ËʲZ‹hBȬRï@‹[JsëcÑeh¯a¼Á¸ch1n³† kˆ{€ÙÑÉlÂ#ÄÈ£â íé¢#ˆò b±¢iMbÿR}¡¿›w5WoM/žqyŠèøîdó#äH}šË3kyÊvDz¸Á˜®¦º6ß1>ËÛÁ„ â°Þ•*€-Ó”a·¦²‘ƒno{Q~D m=tëk;œ¼ Ø’'M>ÈžrìÅŠ2œ»@ M ]Èì˜Ç*>$,‰QÒëˆÃÑ”m Æ­dÜ@µÊ}Ej¶(Îé/¬„=’yètXocgk¶®Â~sww_-êtwúy}¶ïsœ¦{âå÷ò>Ìb\r—}g[GNICXÍ’¹ŠÜùpÜÓȆT‘#¸pä‘[ÊÎQÒy­Ä˜„N„ØW, aÄÒS‡áQÌS±¬pšÒK$m³_Å@PQðØKXt•|ŠÈöVñä¶J̆ÝY¶e³BëŠRMq"£8î‚3û  þšªòŽÙC‰q]Î0ä°d$0Ba4íŒ6•­B4e#Ú^äVD›€pØD3¶C]O˜zJ‘£ ѯ›‡Ö²aA¤®WE!ÝäA•âqB²@…O¦D9±q#t˜d ÜÆJŽÙ¶³!¸ñܨQ6\IQ”j9…¨nøùŽ¿Œè?êÏ1×ñýYããæ:þ3 ÿ«Å“>çjv×1ÌóÕ–:ôvpvv¶tê.½ÌÛ£ãæ:þ3 ÿ«<||Ç_Ætõg€Ê•#Ý[šël­áŠbxÛ¼úzª›Ù{ÚqòóÁ™DÄ.è$ybÁ qbœRÙW8Žtg$iÙ¦ÜH‡0 æ¢,°4êÄA9ÌXóa`<d3ŠTIqp½$y1dÇ#J Î(-(Nµ¤Fædk^Ç#‘ß—ÿÄ-!1 AaðQqÁ0@‘¡ÑP`p±áñ€ÿÚ?!þlÙfaeAµe]îþæš^)äÿwˆÀ*ºðf·ýŠq~—–7ÍÝÙ€ä\ÓO8”@¡ `÷À_ù·Ýâ52ô K>¡–T±¬X¢5±“rWb?•Á›¡P÷À_ø÷·Ýâ5"¬Ù\kÓ¿Çï« ü,üEìu—\²ñ3ˆL8Gÿ¼Wš|·õfîp2f¢¬ÆAÀÕ›‘s­‚fïYd³öž?üxö'v/ê’¢K¶àR¾ÎçÅOs0Ád¿ÿzyÉ¿Âvéæ·/d»B œ³s ¶EÓWUtׇvwßÒQŸüuÿ ’ögÄ镨þòcm*“Á_y°Ü©½ )K§9|ô f,'þ8I;qݺŠJþÍ:¨6¬¼àÓ['PŸÙ·tãíg`†à؉ÒÃIˆ3àKÙ«¦8gY;˜?T~ÜèÿãfëP?ÞX+ð^CS1¨ŠE³jHì‘‚ñÌ´k¾êÜks‡ÌS Ôgk§l4¯ ?Þ<ãä›< 'f¬ÿãm'žûQpÜ÷‘\àseÒXɪ{òŸ{üG} 0F”½ßãvŠ|v«¨Å¾ó•ð.R»OIùѵ¶Â:M”ònÛªºÏ\®Æª²èkw§ÕZ[QÿŽG«›«5ß>ÈKš‹D®¦@š•ñˆ\DPLˆÖ1„!]ñ-Wˆ<ˆar— RŒ*Äå º(u°ñ1¦É ¸@¬¹a‡êK^­¿X.Ò˜nìÑOþ>Ø "¶ªcJjwa<†Æ€‚)B:JàPIÎC(üzÁšÙ«[¨5 íðLZ´P]#”íPZ*lŠªÉFæÏ/[L®õU†>°ˆ/þÓGÔ{>U‡Ü‚z?ñì¾à#ǸH\Ãaµ»èeSzòŸpÐÔRÒÌ rKP,#ÿÇ„C[îˆËNʶ¾—´ ’×›âì­­@EFIskVÕìÜäÁÃå ‘º! cëÿǪ¥ÈÛ0KjÙãé¾kŒÑË¥ ;‹G4yòÆFàDKšœJÿñïûÝôÊd+€n[u‚j$ò‚iþ*b"$È‘ª•ÿǤǦڕ.u‚¬G›H¬Ê‘WGÜla—J[ áqy)À¶‚ÀN @-“šï 3´ã ­÷¤_ÃIà ë+”yA2 ÖÄòžXˆí,AGË®€ ÈëUMáh90¢€}¦¯ üãÆjs•ƒab”°Î{pÈYÐZš­’2»c*ñ1œÃÿ]µUjUR‡È«Ð'Yy“=Öð‘)Ua­Ãm‰¹ ñ£vr•“‡½ ¶B˜¢™Õ~ÀQEËßAJÝ3 "J‚JÙ(s±¼ª÷»ÒúÒ%üðÛ’Ò ´âJAÏ侯À¿1x Sš‹Ù¨ä åz¢Z ~À4ÒÊ%zzç=–ß3DxŽ]0ºWeÓ‹°žþYÉ<^Ìò˜øc o[<°Ëv´%6E Õd–D+t¥¡³… )CˆЏ¾ŸØ Mr~Éo|Rc®E±7W¦Ü‚z?_K1®BD)Nn„ÍÒ X 4¥—ÉA;—æ# Þ˜f¢8¦:¯ç…F@|Àf¬Ñû´æŒíJ|R˜ao¨.'Zë«?¯?¬åšE}IKÆ¡‘ÝîVÑ`%‚ñ‰VýpŒTÙõí]$CØçó¼+%àÑX¢˜ú|ÈVT‚òÏj@:*²¤y‰We0¼FT5é@7th§õáÍMÒ˜,’JG q¹…`ÚÚ¸+G(Úl¼ƒ|sCÿÏ3H`¬½rÞÏoY º0Ô ªÑ£*À;!t8mU¨°1I=DaëÄA{à  ]£~J»@,9]QÐ-ÜTLnÀÈ|š¸OIYåk›‚»*Žê²a‡Kn6²‚45¹$ƒˆÂ“õñM‘ªâ÷pG)‘5íG5[;˜îg{NX ]¬ûïhw† lŸÎé,n‘!ÕCâ}’±¼-ã9<¥• ;ËD8Û“ˆ0Ädå1…3ªý}”ÔUŸMv½äRè‹ÅwY| ~GÇÄ0ƒ˜7œ×3›¾;’Ú·ôŸx±ÖB¬CëØP+µ…‚ƒc9¥—špHsfê´¡A³¼B‘¤ß¯ˆÞ9Y"€Ö"è°«S äÐ…¤w 5WËÀfË ,Ùg¢A‡yÒY÷Ö¥þwˆP` P&¡2-˜ñô–žK°°4QÙÖyC´öJ¨§(23¾XÎV!úø¯Vé «/E°°Z]$.]ö–õ# ªPæÙiž.h]Èu#!ŒûhÎôÎâ 0j`Ê8OBÁå’ ca~Ê(SE‘ åå×€FÌ¥œz¿_îÓnUiµeè-¨ÕpzÉ Ùl†hp´¸‰JÖÂ…Zµn-ZæÎx1÷k®H"@ÎéÍ ïÕ‡QBz5L¸¢å ÈKr"„]àaŽ ‚$į‘ o¾¸â¶ßº]ˆ­Xî)?f·öÆ >PÌ?DqLu_Îê7ô‹QÍAP®˜ìU–ò‡¬2GìŒ)«öŒ¬ÏÛ¢uUù’boÉ«·mò˜Áˆ*·ùÜ…Ótz½7Gxp  Í>Úgì É,àbUÎæR|ˆ6Úª2®ÜÆQorƒ¡¦ótW40o<ØN­«ëÍéÿ;N‚=ƒÉ‡í-<$µæx»+kP!DV¿¯ˆ‘ºf‡i44›6\F‡‰3ùj‚)T‰Lst;5Ø“À»PA‡( ’ 8‡ù܈o|˜„˜ªÕw6zO(Ã#-¹rÞ @ ®Y`R€@Ø–MŒõ†Ám•­ö~¾ßI°°Z]$ H{»¥.Àæ5`Òé¬*é­éÐ1óÃb0âˆ>ÈH™=Û œ%ã4úéahòÐèhú°JÔeYVØ2õý~x þÔlú‡'".~wßíFžÖÐZÅ»§4ƒûþxîÓnUiµdÕ‚>JËf„í¡5jVd·„=„}ì «· Ú*qÁf«HS± ™É²ÌÖâØpÁ‡ë 3Cçe¿sä Šá°N±ãé¡GEä„è,nî«<ÊÔ ¿q&ÕŸ×ï6{ã›–vãÎÑ·äÕÛ¶ù Ðw‡XjÉüì’Æéa†-^G‰èX<¢Â ] î[”òÄ:—iÆ09j:Tl ‡¯ØÚmÊ­6¬¹¿¯ãT-RÂa2®Ü£+7VQŽéÜ4ToƒçŠJ.àbKÔ'77˜mó€¥§ºÊfÍIFêÆBTªR@Óԫÿ_" ×aSÜx.Bå“ÒR`s (Üó@7P³š7Šˆû#Šg«þwPTÄõá”xž§£€ZŠ*àÓšx¥ Ö |ÛÅ@0ÇHÜQ²ê#úþ1"Ȧ kQc<£#ÁŒ²’™z ²F-¤fÈÏz®µ*aAƒdJô ÖIÍ”&!n ¦ Π©m`@ê¡Ô‹zÉ l©¶#ur=Ý¢ìÔ¶p |Ú¢êêè¿ 0@0;•ñ·ÞÇó·¨l»Ì­Ž²7–-I>«d@ {ÓÙž^‹V€¶~ÀbÄgð%½l7£äh-QL8*E-–Ú³a6c•¼'=VÖW(<™P9àÄùÅ G•¡÷žçWÛô‡Ì×bC^ Â#ùM½õˆ ­`,°ºJ\èÖ­îRÁÃD³ h`ÎìÛšØ6°aòþwp: 1 1Q‹®ì<µîÒùý€åùÙmŸh-‘É/Má}R³A(Ø Ñ¹fÍýøÃ‡Ö)¼'§ùÛ`©®ÁŒl(‘ݳÂk°ÈËn\·‚ÑPàM!ÀßÜ‹©¦zh#Ùõ‘ý‡â²=¼KÂÂ,Jb´‡X 66Ø7€ðû‰iþvØ"kЧ›4*í9¡ÈI«t¶Š¢¨ M•¢0öF¹a¶ê´èÃÒÏI¬@óN2 y“bí³›HÞVb=—Uçl EâŒ=Ã…¤ ° .÷¡TF’›­Ú{#Mév­Â‚JFn¡“ö„-Ÿ†ïdÆ3=Ó AhÅ¡|õNþS¡>³l­Küíp¬áRåp˜'Y²8û«Ée¬lÞì˜('ê@ûïëçA_'aj’ %å ° –4ÆÈ¶diÐкºº/z&ϬüâêÐëOIüíÑ`òàòµŒÙÊ¥ ; @ûŸ°·ÛõZmY=EUÁ@Ýe…ƒ–9’l½í@yœ†*]îrQÓx²jÞi²ßXà ò¬>äÑüéé³ÌÒøjÎÃÊxovYlÖðZ…:M(*·J£À®*”?°5ž ¨ý TSX‚e|YÏ7Íd.ó(ÃoÌfŽ)±ƒÜ:Äýl2ȵ8åË—.\¹dWÑ^2Ä@ô ·ƒnÒ´•„Ìi.± 8aôG ±–Æ…ÀЊƒSP.‡¬—T?U—Èa†@E©ûm¾1»ÿ"»êïÉŸc§æŸÆ8')—þÁ"×Q¸Î,ß6A¿7ð¦7.ÛÆß”çƒ—ì—=wîèÛ¤¢O(’üfZ*Ô‚Lùh·sc¥põPäºÛ‹;ç ïdCZþß'H8 l=æ(6i˜Ž•~5%œá6"¾PŒ2-O“¶óÓ¸éÙÚù+k2 k#d¯„·ÒThö›KÀ`EdD2çn&ðHÁXƒ|;‚E[0ª¾êI“˜…˜{©1 0÷RIºþKÒÂ9?˜q$£O( †§ê ¥‚8¥ãÓÅaD’~Øé Nx@=Ú²d!«n ¡9¢úsÑfA^Ê,R ¿)÷ÿ° Z€ýY)ë9e}cŽgrì¬iƒ9ûñ‡_ÙvEõ÷óÁ·jÊ¡m7¬Š0¼ %ØÔ´ ¦v¨ò‡±54âU1úˆrÝEe?¶fÎT·ƒnÒ´•„í«qqÄ5¤ ˜é¡ºø$¼v•¤¬ þ€8®&¯ù?Ûj¡(À}÷PÖ8à‹£ýJIêð†XŽG<“óˆ~‘6Ì…="³šÍm]&3Y9¦6Ù…PZ òm|§£s|­ï³ösiWÏ1Ð4!É7Õ˜ºÄ`§£ó§šo`Ãû7š5µV·X(SòOî­6·`“ý(| ÛÇì1.þîö3‘ðmÚV’°Ë—À¬¨Ò±a;™˜„¨‚;I7èKð©è&e%7”Vz ™IMåÏÛusjë=ýxýüªR披7†ÓÙ6¾Sg~°T! sL‰o£^éjaF ÌTÁœÅ\<ÚFðÐ'ê$n›£Ð TŠ Œþc¢D‰$H‘"D‰$H‘"D‰$H‚¦…Lš÷f Ý'£Q(—-~¿·D©€q?‡Àͱ||q/à €‹P/à €‹SŽ\¾í´ìÚ›_Bùl0ȵ2ãå…I8,‘ù@h —°"m€1³ÐþDóó؄ơ¯0äçSf'~Ë à¡B{W˜Û:QwNQ`ȼ–ø‰ûQÌÖâ„ÚfŽ`†·0¬>Ó9DÛaÝÀÂj¸–áJ‚E¸:ŠH‚ü 4Í…‡œÌïãÁýZP‘!ö“6ÌØÌ¢Ô»DÝlÝAüE(=Ôµ’ûÏ mMxà¥:"³IFßO+g(¨pHcä ó3a˜»Ö«T·ÈÔ„²(âno]‡S© ÚÎ:‹“³˜hHÈa†@E¨à®¡Ò ýü¬ §Bj«o©‘SL»3ã2‹RÜ`„b¡*° æPˆ‘0RRׯmyjÍ @° (}­–6Δ]߬NQYÑ ¹Û‰x^ÀìÏ&øYYiôqàþ­(Hû I›flfQj]"n‚6nÀ þ"”ëOžà9Bœ<&Ô׎ S¢+?êãTxWmyl½€û´ò5Ä9ó<1]Í¢ÉK4Ф·á ÿ ’í*»¾Då3Ÿ‹>-W '°y€«¨ þtd¸GcÏF ú°(t¨¾lT,ŠÒɰ_”€œ Ž #4 à5°÷¾@ 2-@]gh„µéFM.(u¢Úò–‘V”.à8Î4ë x–ᓘóçòž‡xïdz!ûºM_­,‘ù@h ”Ž‚Ú ä;ˆNFÃâóÇ­‡¼Ý…”kab ²3Ebçjmæ õ,%Âk ؼÌÄ …”.m÷Œ¥IЖ Û…ÂS4ÈãûuOYÅð.‰šà¡å”I[c  $Óq 6†ê*ëp†·ƒnÒ´•„+% c¥0>¬1ÔèÙPDd Ñ3\#t Z$\œ‰ u:¶T³Ï#SHp0–E;XNÅæf!ÇÇ=ÏŸ×æR½/,Ö•·ä{ ä°Ã "ÔѯžÛ•°P4Ü­™±1Û.—¡¡­¡`¾C±–¥»ëœ3¶åTE?6f:†2ž‹ÔÌBˆVSÑz™ˆ@1B¢³ÿÿ³u¢„™ŒÏD /à €‹Ry6C_ç´ú¥Â;xJn™`,Y:`šCÇAiqP½äz¿ì>¸ïç²ÉH×$½òª›•] ~œÇ¨¡нEuÀB,"..t=§$æ› Éú‡àM¾û÷žO´ò}§“í=Iå{ôžW¿Iå~ÓË<²¾žÉ<ý'“í<Ÿby?©äþ´;«CÌždó%+[7>I˜tý¡Ñ ò„t4]9’°”ݬ…˜rZ^fø3—J…hÄ;Àd‰å0^®‰¿”&ŸÐeËÝÖ‰'#ü›Ë´;í¬;p•¤¬#8tzq¬ X¶‘/à €‹R«1àŠ¥†CN€$-•Á{ñVzRˆkZþE%FxÕ‹œ†&%<”_ 'BX/n>|ùvdu?iÖ|*ó™usLz¤[dÞ+”Ñ–-(’$¶Æ@I¦:¿:ºà-ÓÅçt Z$\œð>l#,RÓ€D_'lL×ÝÖ‰'#>_}Ïž¸Ë¤¾ÁD ؼÌÄ ø‡j©°WA|[Y•ZAãV 316”Sj,j<€fe °N˜§}t)lž†M_`/ ]Ö¤Hñ«0øó5I·8waj. `½¸S ¶b(•ÈÄÂÒ °–E|²$)z0^Y­ ‚“8-øðN.ª$xZر•ÿö¦)uú\P'ê!KÑ‚òÍ}„…%”l¾Lm]sïTÔ ¾xþe 'ñO—ßsú¶ÂþR¿œWáu„_óÌ ûñÛŒ´Õ‡g2êæ˜õH9ÑÁH4'ðD ókÂU… W(;Å£¡à]TðdÞ »JÒVà¶&k‚„IrXc ¸&àÛ´­%a*La±1,½Ý†"ü=Ñö„5º{X@Vúßx2D…/F Ë5\ŠÎ!óÖ³¼ñ´¹ñêû¿ÿð¹zWÃ;8/ýSIŽ.LÚÄ-ÁNiÏ |'BYË€‹pËÇBéJ|>ª²Ô!úV0€ž£jucTøa²usÜÍ9Ñêû¿ÿðªÌ›j¤à©·QäY0«´ ¶(È'f¬ßê~ áÄù#¦×å°B>`ªT¡G)R¥J”h‘"ThòlÙ“<]¦*ilèˆB ’\Ê5hίa`Mè F[¥ Pΰ¸U\nżPCƒ!KHÀPáiu’Åq^Ëaz­ÀûI³¢hØ]П~G‘ª4rœ(L.µ.ŽÁS[¡Aá¯iÚJÂLãæ!1¨kü^`Cõû“ê©ãUa¨ Òp u²ꪊ“jø0”š€Áa[¸>PŸŒˆ®Gš•ÛÕB@~o0!ú}Íõ\Jp/Ej-Ag.G7Pjä(P˜r5FŽBs… 0%ØókÂRñ\´4tL)wFOŠ3š«¡Ý†ðZ ëNpmO´§_{©¸]L|€6dZœQ£œáCL vÀE<ÚðJ5D–TÍò<Ô®Þª’£%<úcYƒ ÍAƒ½2LÈÄb‹Šüzs>åÚÙZªM»çW“ˆ('Ê`V9PðùC, Ç#ŠªM»çW“ˆ(›où×äâ ë”zü#ôLr'_– +ÉÅÆM&›E$¦Š;(PÐWÕ5ƒgEÚº¥òØajGŽÓå8)àófÀöhã9úK¡¡§Bw{E6‡£Nðšî‰q¼)ñkBD‡ØÞûqBȾz„™0t*ÿ#àÂPjj‡Ôk¼°”ñª°Ô†é8›où×äâ ë”zü#ôLr'_– +ÉÅÆM&›E$¤P5Ø¡!8]°O6¼38ùˆLjÚ^+–†Ž€)„K°6)æ×‡™ª4rœ(k„þ@ÂþtŠÿµþ¡÷¾³ʆ”… Ü­ùQƒ`¸ÃâÒ„‰°?eÇÝ*®ŸÝÆ6ü`”x Q‹ï|¸ÔÆ]ÛÏÃN£Ã¨eûôÁ/¥È= ßãåDŒpFdpuSb `¼xC^ý&u'¨œYÝxþe 'ñ V¹ÍeÓÛˆEÄU†sp¿£!P׿D IÔ™:Ãñ‚yR3ÿG'Pjä(PÓ +Qj9r2½¤fÈ©6ï^OD.!yÓ‡^!èëu‹ œ¶oÄAî‡xnü¿d8A"‘‹I«œ.ë¼·Yy8´J•¤-™Ð­Xc®“}<‰ï‹C;_°€Á²TQÍ«¯;(Pß·E}S\ùô0«j gdåa¤ØŒG+îüýÂ6„wyÓ)Ñå:0è‡D:aÓ˜O—G—GlO'ÚvÄíMG¢0à 0ôG§UèÎŒèÅ’“àYi‡Tæ½à'Dß(†<6oÐjú>{ß_X<1Q†üÜ¢Ìíü‘d¡Z^V…Ü[h 9´ýd9B¶êÖú TàcFÄ9%VKƒ‡ZdÄŸ±#E˜Ë¼]?8 Ÿ ÔQÍ«ªÈ$þ#Q$n‚¾|æ‘”@ý̘°“ÅéŸÂj4?W‘ÌÿÞ8xãètò9±ñwT„£õ_Ê™Ñ)Ó? Ð ¦0“†IÛ3¶glÎÙÑäûhòiòFa†aކ‡Bt'FttV|õ}߀øL|ŽðÈ$ÁÃçÿÙi‡Tæ½àñË÷iC›O7ðo–ów-ë|?B6È(ý·t¼Hõ}߀ø[Õc=Úéú5Hé‡TƽáºNœèNŸw:S¡::'NÑ:4vç©äâÿ}ç—K¦Ë,²Ë,²ÇG†‡K[CàYi‡Tæ½á½V3Ý ÎþQêû¿ÿð©u\ŠœŽ´ÙøE÷), ‰‘29'³Iß¾Sî™|}'Ýe‰ú8¯³;RÔšÝ%<§Btû©Ò9ÑÕ4IÁþYß~ß~tÙe–Ye–_U»¾Í.”CŽÏæµm@Á¡C€*KWÍ— GQÙŒºp"Ï]¨‡®hú0r ¥ïFÚ}©Ïóq«×ó-ë}‡¢9ÆÈ†ž™¹ežãlVùÈ_ñå„/ ÓÑtC¢è‡D:!Ó<“Ë<½ý4ùe<'—íþO/Ûü”ðž]>^þ“Ë<³Ë˜ôǧ¿¼eéLzcÓ˜ôÎŒèÎŒèÎŒè΄èN”éN”éÄ8Üã†ležÛb¶Bˆçóm‘ úJfi9âulÕ¥ ·ë9¿˜ý°›õk}Ø=ybµ¤™ˆSÁ*¦–®Nûúsc£Þ'Btu΄ìïúÔI$’M3¿wÃÝû©ßºû©ßºû¨ÇnïCÛºnî=»¨ÃÛ»nî=»üG·ˆÃ =»ÿc/ª«ý> ”ãy0ʧÄçW¯ó“Gã«â ÔŠ'{ùCm,ØÁ¿—óÖZaÅ9¯x^ck©×I!€ù3¡:s¡ßlèΟ’I$’IªïÝNÝÜ;ws¿u;÷S¿u;÷S¿uÝÔíÝÎÝÖ‡A†ÝÜa†aíßûc³¿óဠÿO\®UqP}yⵤŸ—ÄO¯»ðÿ¼TéDf<ÚZX‚Æà ¼YÙt6“L• Âåò!öpBÉ ³õ®‘×VÁŽAt÷G)Ð-À¨T’I$’ÝßïÝhíÝèïÝNýÔíÝhíÝðÝÜa†a†a‡ä@OÿŠq¤"j%:‡Žj(jZ! òÞ÷Qü@(ƒ#‹És‹!V£¡S`m|¿˜/Ü1-¾aº’¦æwªšÚ¹»ï¦±6q:S£«wwÛÃëÛßû¢I$»üÂ;wpàÝÖŽÝÜíÝÎÝÜíÝñ€Ã 0à 0à ?W}ùñ~µqs?÷Ž8pé碙Ðß(gŠÑ€T|ª)Ï#Û=ðŠå|}À'£ùqÓ’Qú«Ñ }r²ijçû¾ŠÄèNœèü·RH ‚;wpãÛº»©Ûº»©Ûº¶áPÃ,0à 0ÃÃWw}ùÎîûòáýèÎÞûûDNLD šZ¹»ïzÀ‡ÊJ?]x!B¿+F0y.3i*”4 ì)OÊsOtpùVr èþZxUÍPNœ£JBQú¯ô mbt4ú—OT ƒ·ˆAqÛ}»½·ø™e†Ye–Xa†Š*îï¿>*]+„,’Õ¨P. ÓÛjk…òhóòÕ ±M<©ÏÿËzÝO˜B`ÚRSSk§ñý ‚ ‚ ˆÎûO/õ;m§¶ú{íÃì²Ë,²Ë,²Ëñj ]Ý÷åÁV÷}÷ç©ô{￘˜;Ù¬NiµþZÖ}u©UJî|ÃÍ’ŠÄèMœqýý÷çÄAAšÞûp/õ<¿Ôï´òÿZ{ãöYe–Ye–Ye—äêªéUEÙß~ݽ÷íòãÁâðT€å^‚ºÀÊ…8-Õ”ÁÙØ/tìôƒ—òËŽ±†Pojæ —SW—”ÛÄèNœÚÄèNŒéΜéÎŒè÷ßü †Ñ ‚ èÐj»ï;âvÚwÚ_Á—ë;í§¾'mõÝ6Ye–Ye–Ye–_ƒEèk]. ºZ] Ñï¾ü:3§“ˆû:’ê»—È C†¦.Eªi)V¾M$óMÌØúÇHÄ‘‡²ê#û ÑÃ# ï Ãã à­nxÙ/Ëógxž,ŽOMôc#Ñž ÒÔRRµÃxøÞ›Os)b5Ñrmh¤Â.†°íÂV’°œA«¡C÷–ÚhÔÿ²yx`n”r=*¬fSEM¼it§Oîîûò〠$’I$Ó8?¾'}¾'ÿtÙe–Ye–Ye–_•ªª¯ý@vwß·g}ûVð…’BQú¯õ XÁcñÜ8Óо¡  ´*È_t‘=Ö@)A­“yÍ7¾{ýÿdjSêH.:Þ 3ôÊ]mœ¿Åq-€Ã¸H"ü©Qè ³ÄÙ—On!ѧÕ×¹jWoUN†:¬~µ³ãÉ–ÜX@UjÀ?xd,§œJœ9èÌKJ?UýáM¬NœØ×vôû»ïÏáP¤’I$’iŸ%ÿÿ÷祖Ye–YeïþFYeùªªÿöç÷í:øM1ƒãéjæï¿íÞ8xïÝü¹û£8¥WkE1Agº3šoï¤ÚþÇô)øÖ|ŠUo§^}ýꤛœ—Ö¸”kà&³/äÆAqK¢f¸(CY(K)ÀÀ®eåUûÊͼûRû ¾4 ´ï³ÁÊò“~¶ñ6øO{;ïß»¾üô»»ïËà@ªI$’I$’I§ßýñ;âwÄòý§|Nøâû§ß”e–Ye–Ye–Y~5UUïï²w÷Ûð}À»;ï߈}»Çû¿—LD¨øÚZ¹»ïJÁøÆ@Ná €ª´Öë¼ßéþsŸôï§i,CˆNb>cqÇqÇqÇqÇqÇqÇ£ANU‚KGN[âŠmdä7+G3å¦Å(4‡ œ4±{Í rj\Žù‘ƒò %²(rÄ ±{ÀÛ©Óì/¯Æ—eHÎ#å<°6˜dZŸ»û²HJ?Uþ¡Dq –PðH¿§¤16gC_è÷ß~=÷í±¥Ýß~_T’I$’M2M||oÿºl²Ë,²Ë,²Ë,¿ªª¯÷÷Ûð½ð-éG ÉËÝ×Åê£"àí<»aah£³-¹TGáÀKÏ>çôå¬c,Sº¬KÚÇÃæ½zõëׯ^½zõëׯ^½zõë×­„(A€.ªÐ]xNŸÖ[ÿˆk¥yNCpY©t¥¦±Æz}2—[o/ñ\CRä„ wÌŒŒ¼è:\W>DþSv˜É*Ùš?Æ¥Ô­ƒ¨¦«Kä°Ã "Ôãí¬t•¤¬!lCrH‹sÞ?8õˆLjߨ4÷€]@‰+ák£KèUfÎ[¹æãïX)¢ÑÓ æ,óŸ®HÎ\6ää¾-©gqË“ÞÓíµP”`>ô@k(u—†1¹bwã¤\²?ÝâæcÆuÞ½šõL)×ÚEbò`F_ý¯Jß°Cê*±ä×÷Eu&Ìéjý÷ïÙß~ÿ)UM)'òI$’qß¾8¾'|k÷Æ—E–e–Ye†Ye—ãÕUU_¿¾Éßßoúö÷ßÚv÷ßÛZJá»|ÔèîÈ¢ |Oí5“¤ ävW$gK@(O±Ár~œÆé=¥œz+`nŸüa†ã­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­ƒ­“¯“¯“¯“¯ˆ ²¢&Ojç_‡ÛP:¯¤»üK#þ,Õ<¶=Zˆ‰¦¬KÙ6›rúæ>ìЬñëѯ⫰ácH¤ÔDÀ• ÆÒ$h…f])Y¯R¢%ê4„áH&´­Štˆw±Ô \@¤à|ØFX¥«‘‰…¤4a,ŠVœË«›ƒ©¬¡VùRg€â{ÏÃ(„¥á [ö}Eaާ@Ê‚*]ôZèù{aMmàÛ´­%a3üªÜ ¯PË»¤ÙÃ#fX_ † nSÉx8¤ÒðíZ$>Àº†¤¨o‚Æ#iXÄÛ-_³¾ýû;ïßáÑjªiI$’I$“Lãÿ螎Û@e†e†a†a‡áÁEW·¿ëG¿¾Ý¿¾Þ7Õíï¿¿Á©Ž¿¸øþ&¦©ý °öÚk7›ôó[¾¯¥X§†SÁ)à”ðJx%<ÈžDò'‘+õ;êwÔ¯ƒé+àúJø>’¾¤òÏ!ôžCé<£<Ÿ£<¶Þ+áö”ð•ðžIä™rûFÿãü‰Ë?âÏùÐÆíqWi×¹FÊÃ…:f»d‡ŠXi|]æD+ñ­oWaÂÆ‘H­öÚ¨J0yñ2È4Œþ7¤]€wª¦Á]ñm†FsÞUøÒåý@̲ؽòqi«h™Û–+v{EÔAxC, G#ŠÅãÓ²§“í<Ÿoòy>ßäò}¿ÉÙ_äó¾©å~Œò¿Fy_£<¯ÑÁžÒyŸIæ}%ÿÂwXí…ÛÀB ÿ|'Aú3©úGÿˆÔAµR5½X²ëÆ_‚ŠTänÌ,P¨Z#)§ëmï*(Bñ`•c¸¥ÓS“ûÜ$ï ³âOŒ„Esjê—Èa†@E©À†­˜‡J%2¦p”L%ðKb=€vׄ OmÊÙª¦Ã]ñmW¯ å_qæ…ºÊo•&xœT"!|Ð_Û¦¹›ªýÅ5”¹õ–Du£"`¦…®Óá{¸›~“kG»¾ÿ©Ýß~Ý÷íñýUI4¤IA j½\ÑÁ=\`=˜Ã 0à 0à 0Ãó ïõ^Þûú|˜ëûÿâQý€hÒ„‚ŸŸaß(m¥^ÿOÔ%–Ë’4\@ÃáfvÏ*1µëø}¯_H:¦>%J‘D=z•‚ǤԪ@bÓÍ‚é’Å€«: Ð0Ô )P Ï1Å›Ct˜û¢uJ¶°ÑH¼·Ac² ‘´á]ßñ¬ºyMá‚à43Â!ÐZ¶ýšó‡ü £A_!? ¼ß:eÔ¾@ 2-M“0Cr@±u "B—£åš\X@UjÀ&B«€h!¬UQ(J® „Šª% Å„V¬£L¯0t¸®"|zÑ{•ÚÄÞvd¼£N%(w*D…/F Ë6ú:¦aw¨ÀaÁ£p,à |îÞ+_`ë„вV<îå}ÅZÉBXéLÀ¨qi«hý­“ÐÅÐ~ª\4¤16¿Í.ŽŸg}ûöwß¿Ä+õU$’I$’I$Ó8¾ôO,òéôO'º,:L0Ã,°Ë,0à ¿.Uÿÿ^Þûûð¹Rðõu»¼¿ÁZ=ðzB披7›Hmý‘Œ`2Ô4¨m œóòŠyȳfÇìew3?v—t´…aoqÆÌí™p3)ns`Ê7FÕŒ. °X×yÑ›‹­mO6á”j¶˜ECÙQ ‹x‚døXZkK_"Í\ù ¬Í HªM>ðÿ:#Þ1%mÆŠ¢xY|½Ö‰CºíôwZ‘#Ä~n ÕÈp¡® Ä,ÃÝjÁ»’ZEa~o0!ú}Íãø¼À‡ë÷'Õ«îIi„ÌBÌ=ד¨5rœ(i†ùÒ«»äNQcÁÍñÍÖqEý‘UGî2úðØéÀkF‰ ˸˜ ï­†ln kBèSTJ'–R”Åw¹½öâ$в/žìÙcqÐL˜æ#Ëv 8'#)è¯b Èa†@E©ÈÕ9 Ê?jà¨b?z‡fµ«aá6±6fÄÚÒè÷ß{ð/ßßoÁýT ƒ@AAc„<“ѩꞩêø@aìÆa†a†aÐv~~\ ªªÕ{{ïéÀø§‡›¨XùêÁ5“Œ0íCm;c¤þÆÕ#( Tp+{¹˜!Ü«"ݤ[«lŒ|¸ÀÆU»•ü&0iÐAWTo!–¾PªBÃøU Gê¿)wCâÛ¡W<#ogkà–¿÷÷Ùð4 ‚ ‚#µÃ„IèÔõOTõ|  0à 0à 0à 0üȪ¨W·¾þ³·¾ùülþÀ4kB ÁHK$„£õ_êãE±ß8h„Ûûÿ…†mÇUê“<¨…ˆÙÒ¬‘Å„Ÿ !¿Rg‹×ø³=G½ÀžÐa6±6æÖ·ÛßNþþû>€AA¯ˆIèÔ©Zž‰äÔòpa†a†a†ñÀÝßßáUP½÷ôáÿ¡ø¡ÅbØÇ[hÏ›ùA”,ªÕ RÍÅ”B äÚFÖ5m·¾þŸþà ‚ ‚ ìñÉ=`y'“„ta†a†a†aù UTÓï¿Î¿ßß|¸›?° Ѓ0RÉ!(ýWú…8Åz4gÏ6GHF´BfÔÿ'Œf•ï€a;1Ta6fֆΟo}ýþ2ýPAnP‚ ‚8É£Õ<“Ñ¢¥ODòO&§“€0è0à 0à 0à :æ@UU@Ý÷S»¾÷àö‡á¡“Âyß2=“²¡m†Qâz$£@[_)±ïÆ{¿“˜(mf•×w¶&ÔÚÑÙÓí￯ÆZª ‚ ‚>É<“É<“É<šžMGPà 0à 0à 0ÃͪªÎûÛŠ­Ýá©['€ªŸsÏà >mâ ÚùMòyêý|%‚e *°M™±6´vg}ý'o}ý>;UPAA@y5*z§ªz¥h©äÔòhu 0à 0à 0à ?8 ª¨ ³¾öÒîï½õš²HJ?Uþ¡O…gùzÿ+²nÆoõþMËŒb#ãq±›SkUÛù *ª ‚ ‚ y4W­MO&‡A†*0à 0à 0à <`ì÷ùP*ª .ÎûÚwwÞÜnðò¿³W|ûÝ\Hóã-±¶/Ì^ÔÑ7²lg?™>U‡Ü‚z?’ã S·2[î¯^š-¹µ6õ}½ÎûÛãPAA A j+EÉ+¤®Ÿi]'’Q¢§“C¨Ã H‘# $a# M@p ƒ@j䪪 Š­ÈiàÅCäÆâ¥Q@¶Ã(ñ=†™þSkß„Úùÿ&kò²RøÄQ1È©#flM½_oã«U  ‚ ‚4 +ˆ<œ`: 0à 0à 0à ?£€ªª‚Õ¼›‚ªÖÎÀî*Ù¦”çïÂl“50݉]_u¹µþM¹³òMUh@@ P%J•+EºJé)”Êé+¤­+¤©R¢J‰$H‘"D‰$H‘ ‚ ‚ ‚ ‚!‡Z:Ñá¢ìï¼NÎûÄîï¼pQ¹< À8ÓÅ]¤¬I½‘ù•j,È<‘”X¤üç?~cß?ä½jüÞÛ«U†Ñ!"ôïjDÚ›<;[]÷ÿ~ U@@@„ @ P%JÑR¥q™]%¥t•TIR¢D‰$H‘"D‰ ‚ ‚ ‚ †a†aâ »;ï<%[Ú¸ÒñçŠ2“r {4%ùÎi·Óù/Y¾Ÿ•Å Dt˜M™³Ãµð‚ª  ÐA%J*WM)ÑR‰D¢Q(ÑRºJ•*T¨’¢D‰$H‘"D‰$HAAAC 0à 0à CÎîûÇœ':“Z„œ³B_”ç›}?’õó;P¦› ðqflÍ®¶¸:І`‚ @ J•*T¢VŠ%t•)”Êet”h©R¥J‰*$H‘"D‰$H‘"D‰ ‚ ‚ ‚a†a‡¿îa‚`‚*€SÁÕTn¼+…¢§ìÖ[Þþ¦×Ëù/^4Ó@Å&`l͹µ68 ØÔ :F ‚ ‚ @ Já*Q+¤¦S*T©L©FŠ”J•TH‘"D‰$H‘"D‰$H ‚ ‚ ‚!†a†a‚`ƒ¾ýa†~4Ü^sù¯™á@ ™OÖòÀdû§½6>_ÈúÏ )ÂŒSe"Èê”R(_š¿Hh©òÉ·6&× VÄia† ‚  @©R¥J•)•Â)•*T©Q%D‰$H‘"D‰$H‘"D‚ ‚ ƒ¾°AA 0à 0à Áß~°wßy‚ûï0ÃúÞü äê•;«tã[2}ÓŸ×Þmò~Æõí–_Tãi½®°±Òûl³©îBbÅ_–íÇ-ÿý·[ñG|á’Ò»üWç¸0Q!økÚv’°“8ùˆLjåƒ=Hˆ^hÈ/¼eˆ€7É^Ë‘È⇂’~qOÙ³lÈRÖ¸xŠ ¡º6îoº jh·g¯‡COö°.ò¨#flM®„a† ‚  @¥J•¥:•+R(•¥J•$H‘"D‰$H‘"D‰AAAÃß÷ 0à 0à A}úAß~C :xîð>‘ö™Nâ-Gp²É÷N~üfÏØÏûØ'¬;#r€8-ϧd„ÐŒUj\6ÝãþÀ¾PI¸pãOÉ›œØþ\³.|n¦GŠ>I.–â—OIû`³Zœ;žj)ØßFTlЪH fѧÈTŒGœ«Ar]’üyŸPÂß ŒG„µhCp1:ÊyðÊÁùâ«VÑð3.YEp d?oÅU ¸ !!K¨ í ýœÞÚ¬9­°Ì^†Ù=‹y?Ôò8¬­¹µ‰±6 † Úa†a‚ ‚ @ @•+J•¥:*Q(•¢(•¥iR¢D‰$H‘"D‰$H‘ ‚ ‚ ‚ ‚a†a†`‚ûôƒ¾üà‚a‚ àà/2ºãüÈ(sëÉó÷ã9¿NDªôåNPÐO—ñãÇ1š ßeƱy™ˆ@1ðH(Àا›^rÖ»TØèÂ]/ZB ÐÑX¹Ú›ì ² M‹©¶+è¯b –H…‚ì 6€›x6í+IXBäl¨´i$¤DKÔi ¢A48]Œ¶4.‡ÂW{›oÁƒèf×K¢&`*á»’ÚEa[”ãÆmÉÄ”…¯×}Ú 5‘GFxÏn0¥Æ|½Tãƒ~Ó´•„ȬŠ, ñT¸]Œ¶4*—ëÊ Ñ0£7ðÁf1o½êeyX€­½ÒS-H¬±6~tDò€ÆÒßAG¦Z:NÌÚÇ Úa†a‚ ‚ @ J•T©R+R¥jV•+J•*$H‘"D‰$H‘"D‰ ‚ ‚ ‚!†a†a†!‚;ïÖûõ†`Þ3ÀôÖ˜gkÜ›¯“Y>~üg7éË|ÙssÚ*«­ÜéÏéÏéÏéÏéÏéÏéÏéÏé|¾ûï¾ûï¾ûï¾öž~ýr+­Ö׈ôG¦tgB_Åðöʲ<¡°lˆ¨‰Ìꪦ¯¿J”[…ö¿.—-ð:½Uªô­øl0.C:h¥5¥Ð§Î¸OÐtT¨5;›à*úPÐà)ì ¦cC’ŸSáEÙJ—¢;²Ô'ÛHQýƒEp L´®5 ,Pä¡ Ò1“ƒ )V:€6÷…µhî–i£!|€6lZœk$z¿òRöľ@ 2-@(œbŸ‰{ühò¡Ì~™°¡©/à €‹RÌì®æ  N @ƒ‚ó(vÀx•ñØ5»à1Ø{Éÿ!:>B Bêá»’ÚEat±tLÑn¿^óZliÊŒ |‡˜ÈSíäg  ûJ(myKªª—µ¥Ö¤¯Çq®hTð(z£Ëb¡Ú!† †a† ‚ ‚ @V•+Ju*VŠ”éR´M&‰$H‘"D‰$bD‰AAAà 0à 0ÃA}úÁß~°Ã 0Að+käÖOŸ¿Íúv;ºú$÷ø Õ/ÑV;ªwTî©ÝSº§uNêõ;êvÔñ¾‰<“Ë<±ƒÓò€ÿˆløËdéõ Tûf§?åøc+{±vKS{Þv;òi—,L¡ÄšÓË<¼vT¯‡ÚWÂX«dúOÉ<º<³É‰—(/ÆõöÌEB ¬Umí! ;Çq“`!TŠé‚àUòIrÞq[5ÁBqÛ5ÁB'Ë?Ûj¡(À}þƒ5MdPKWÖ Ëªª‹u„3”S´ŠÜx?«†„‰°=€Ä'#a‰‰qy‡}®F&ý„ÂYÒçæá‚\£!àL%ž7"Ph¶K¤ÑDMäïb[›«ÃÔ¹%˜‚ŽÐí Ã}ùAß~Pm0à 0AA B @PÒ´©_¥iZ&‰T‰$H‘"F$Hă@‚ ‚ ƒA†a†{ò†a‚ ï¿8;ïÎa‚&稯ըS‡^OŸ¿ÍúwFïûÊxJx}¥|%|%#É<’ž¾¾žIä”ð•ðûJøhR<’žži_´Ér<òO,:!Ñ:0< E «€ ª»Î_Ð$<—Ìž\°Ñd°´o'–b^›#°Ðá!ÈjŸì* §†~R’åœ"á¶&k‚„Up $UQ(xEÅlLן-zКU4tËʧuJ>A“Ì2©C«d·•µu+Ű|‚Ä'#a‰‰pù‡ad-t¦`Tr10´‡ìȦ—?Õ°¹xÿ…‹pþ-™5Ö[YR¶>²m›e—*1qQVu½·g&ó ŠhÅ‚ä,â3ÃࡳP³”ãÐí0ÃC 0÷å‘A A!¡­JÒ¥qQÀ­+DÑ"DŽŒH‘"F1ŒHÁ¨8@A †aïÊa†t¾ü †ûò†`ƒá‰>àµäùûñœß§Qš,«#aØUÞ6Út°t1ô1tššIècècé54Òd2Ú_¡iÐRh|:µ~ýÃV¯×¨jÐèôJØ!³b¶ƒ¢3·ódʲ/Í/´´0)Cck¨¥µ:Ï…ùBv¼X#ž_œ!â]CuÓ±MÙæTI™$Kç ³Ê"Ñ•~Z\µ2—hñ*èÒ bn6ti` NÃá.?UÑr-h„Â/|°pðô#X@°n i¶'&Å1^Çìe·©t\cËÕ¶óü8oÝ¥i+q_K¦Ó¾@ 2-OØ\õÉ–þ-Є‡ÆÖäJÑ@›&Èl‚j,d\dì»ZC‹yn×?í1Ãb¿©ˆ·JAÁ´;A 0ÁÚ“ß÷¤ê4!5•+ZÑR´S­jš%Dщ$HÆ1‰1#0j AùƒóÀ=ÿ_ ü8†`œÐq͇À ›½(œ fdùûñœß§sÖ‡ãÕåY˜x×_½÷ÞzˆzŽm²õÐõÜuÕë%ë8,óÞˆz.%¹å¡!&^iv­Xs/Àv|b9î•É ‡Žmíh°5P/žJsEU”æ\ìÆî£hˆCeh6¡E¦gL¨åòÁb n8ü΃¾g…E£*üžZ͇ïÆ×ÐÑ<6‡„pØ{ÌPlÓ1*fÜœ;ÐtT¨4(;—Züˆ[µòØajGZüˆ[µ ’^ý) -j_WÒ†‡ê;¤ 'œ¡z D‘¡AÿÁ­dC÷âxmÄSͯYRM¯`¤±€Kä°Ã "ÔâUOÍ™Ž¡ÕñD!F§õ¬‘è~üÈaH{Û~/« ô}(hp¾@ 2-Aji"ž±OY¹¢DJÌì:`ÅãÒ²¤q‘€9¡¯šAYR8ÈÀ зƒnÒ´•„W ”Iò7QÝ hÁúל«à*úPÐà>§„©€?ø Uø²Û" œ¶’ål<%m6È$K)Â>¯gª»mW¶·Î F`1ÛhBQ³9ËUå.!Ðx ï¿(aáñÀ‚ B„†¥\¯ƒZ¦‰ªp1ŒH‘#‘‰ |pOÀþtŽ;ïÏIï¿.ÝÀ0Ö˜gkܚʲSdr6°*„ó÷ã9¿cmÓ‡væ1˜Ž‡‚èÅÑêß0{ÛÑ›º&Úä•%†”ÑqX¡ ÷ŠÓEµÄÉféêѳ’ZEaK—,˜…˜{¨‘/Q¬' A5Ù1 0÷R+è¯b Ærêá»’ÚEazèŽ:¸nä¶‘XAdˆX.Ê@OÒ lÅá媮¹-¤V¹lQÑž3Ä@P®c- ¥Â¬ŠÈ¢À¿UpÝÉm"°”ýl2ȵ$±?@[ ²-D¾@ 2-M%Ëb¾Šñ–"߬…dµbŒàÇ“˜»á(=n´m‡ ÂÌ£”oÊ`°eåJ£6ÏŒ­2'pFV̱,åƒ\wß–ŽNßÒwõá©É„B4 Z•(Öªhš&©Æ1Œc‘Œc js|@ùëþ €;ïˇ¹´s|"{=yûñ›c—ÃõZmYxjQb †î%qÜh&Tžn^= dáJ„’à¼FÞÀ¿| \_^»1®JL%:²lœór[Hç¡£›qɃf/0ñ @‰Hˆˆ›ŽZî]|ÔäOÃä1ørh „B„! @Ð/á&©¢hÄàcÆ1ŒMãè~@¿Iß×á}9»ñ¾óŸ¿É=ž½ÓŸ¿·ö3Zx]CLcR†èû !GC³ûè€æFª°Ú¨ŽlÚàÓzcæUVÏrëeß‘z2éø¤’ë£[ó$I´-Ø“_—¿ Ëß„äÑßé§ñãàÑÉr„!¡ Hh )¬6ÞŠ†„JH¦”ØO-›f‘(©•å–ήð,,A€/p™qΠ»,Gà=¯¿Rb«o,oÝpEÇ»F:1ŒcÆ1ŒcÎ1Œæàßýý'ç?==þº{}µ;}§o¶žÿyÏ9§7¬öN~2}=šuîœþ¾óg“ù] E.P‚‚$+?Ä —ÐJ6Äš oJrUáˆ! Q žíx»û›¢2YH%PúÞ‹-gÇ* Ȟѫ €[ßí­ÛíÃÿy8B„!¨h× 5¼^xczZûÞnQ hDº t¥ïKãB³©k¸œî9  Ó›*tl‰L(`;‚&)¼\Ï °.#‘21ÇÌJhaz%£GV*öœ±ð¿o¿üuÿÉ=‘³Õk-#à=±rQä͵ÓX µŽ$¸a×"cèò¢*ªìtâeNޱ ô!¾†ú›qjØriõkH›žSú=\<àcÇhÆ;F<ôsF3š{'²{'²{4óiü¸?ç¯Ïß9ùÏÏG?|õ{}§o¼çïÆs÷ã¯ßë©ì㌀9(ìÀõñ/á¡þsŸ¿ µó†Ÿ*ÃîA=Å‚Þòª Mõîô¬¶¾à£¿µüâÙs™PRykµÄ¡Ã(üÅg5>\çûa²ÿSúѶç”Ù¨øÊÚrÎYÉ94÷ûNIË߆ŽÿYßë¯øÆ¼Æð†+ý_Åùg*ÄÙ ¤‡þù›¬Ä2YEblât§CàØR™Ú\P¦öžƒÎ}i˜R ßBèjmÃÜmE´[G¶‡¥wßœ\™L©Ì¥¥B*0»åN²hZ­¦Od¢±6q6±:𒠎˙ʗ+O8Ž!ßÐdÀÜ=îùOèö8\<ï«£ÄÇmñŒæ÷NiìœÓšsNiîÑìÓùëþ|_ïôÕí÷лï˃óNoX·œñ^¡ö_\™ez 5{&Æ{Ïâ‡úÞV2l“K5X3¤£ÏµÕ)©9eg%•I·¤âh±£g*CdàCMàgÛy—pq!Mí€@AxCðƒááá)á<½ý%!îûóÝ÷åÀ)$A­+Eïr3¡` )±Õ ë~lèë0†Ý> Ñ<ìŸeÑ»¾œ|^uwŒcÆ1çóŒc¡ÑÍÂÎùpÿçð¾K¾üâï¿8ô¸¢Þ=ãÔ|R§un€Ü+ä[R.IQd01ª ¥µò›?cåué@7vi¦\š}Ÿ9KõÛ+-fÃ÷ã¾ûí¹*­I%òØaj|§ZɇïÃR$þrþœÀ¨ƒÞ_À³½¶ÿ“L b^¯” Ë*íhO¹/“e8Q$LXÕŠSÂ4”‰„M’¼ ËåcÎk{Ð[µDr#„r#áçç þ !ÿºwÙßaÿt£ÝÜÜ«ª5t]x³rúPØþÖж×6ÁÌë.¬)À)Z6rdymël¾ O!eA[‘6V s‚,ÀŽtZ™qB–Þ XÀ¹e´å–À›™nNÓFÀ«&­ÙŠ7 D(90‰³´aà -UÀUÁ¼7”ñ ¿dßl{«¸²Ì Ixa?œ1MW{ŸØó³Ÿ)Ÿ¶.é³6³ ¢™•KÏL ,I“¶Øhúºˆ],^ƒ”®±:3¥:?ü’ ‚*T®''9±`J˜!À&gV"ÊGQâøêÞe"»x¯ÖggÓ_Ï.‹«ÀÆ;Æ1ŒcÍGG7Æÿ^zQG}ùÇQG4Ü^sù¯˜2(@b® ëÑá}ûÃmsÍŸ±òåû_a ìFú¸×ÒJŠŠB4Á¯òÔ‹ò­9%¤VÄŠíLö*aþ!:†I.Z£3Q#ô:v@¬Y>V&€IBî¥êá»’ÚEa°S# ÿ¦âƒà8l-Ài‡õ À­ì({n]þ“ZÕ{˜J(”ÖžÊðÐö®AªÂðºÚª²Ð ÎZX=crÞ1ž3[Ø ÚTÈÞFæEæî«–-Jè› ‰aöVØ×ECíÝ6o÷$“˜.eW%„ù5åï(5'¬ŒgèŠwj'ö¾E²æ/Ÿ¶gÚ]ËÊtóè[» Öæ y„Ò X)mW¨¿sºàa½X·aÀrº¸y@L¦ThYŠbµUs¦€Ša‹`q4FdKª)0Ô™M–fÅ¡Thôø£X-)tŠQ¹ ð1•’Ót« â‰Çc<È7”;cí ¿dD|e PGÓ2{K»v’YXff µVÓQF‚Tx½G·øÐʶfÄØÒ¿}5×Î¥J)X0bJj%Yø•‰µ‰ÒþÎûéÀ)$A©R¥J4£ƒ5$ƒ%0$œc…rÍc:ó?¶‘¶ÎϦŸ­]V1ŒcÆ1çóŒæÈïëð>(âï¿(»ïÊ.ûòŽ8âŠ8µt@•®«…¢ûíÓhñ$;­"RªÃ[†Ú6Ç,ùâ?ØäA{á 'D‘‰B¼-•5}7lr^y¸§ú•éóèÀaÁ£p•Š>h˜n¢öà³_`?¤‚­àÛ´­%aÂã} ²ßD bU KÈ0?ƒ.ö Ä©bMjì2¸‡ÝæµVÁ|µM8Ýâ•Ùx‘.•Ÿ:$a×á1vÖb¼ë÷Þ¯ ;ö@»Âóé‹MÒÌ9äØ`Uß—¦à0%𢾠îŸu Û (¿Ä Ú ¡³Œo…n—Ej89UÚµ}r! FÏ1J(*.K(I-“D°jeE h˜1Ì–ò„Þ!·Û1Pª‡Ú 9bÑ&9ßaè›1„º›lýI½˜¯1CDXÜÈ:p¤mâtfÖ'o}ïð¯ÁRH ‚*T®7}õqrÖ1c•£ÏeÑe¡T4¾.ÍöÃVïKé ¾“·é¯þ—E­V1ŒcÆ1wŒQ‹S›àZ{úk÷ôàî8âŠ8¢ï¿XãŽ(¢Þ=ã½O8“[ÂR¿Ñ6žÍþ“ìÿc¨-·×6ÓSN8ãŽ8ãŽ8ãŽ8ãŽ8ãŽ8à"¨váM«'¦2¿¤dgöLº²‘~}neÕÉe3€'ʰûOGÊÏžÖJÇJ`FF±y™ˆ@1ûöÙ¿uy“-Hº”«KžˆÇšäÏÏÒZQµ`Q@ªÐW,ÌŃq·M”`ñ»è ¡Îõµlï†rßÅzñ!ZæžxÑÆ2ÆÁ^³jŒfW\ (ë¶Ébl14¬‰Æà¶t³RÍ‘”3s L((ˆÍÜC2³è•(ÅKã`’dÑ«\Ô·b&¯p¢à²þP­ˆ~¢+[x¾–Á½€0/ CmªK[ɶ€ ûõŽ8â‹x÷›‘ZèΗ<”˜Ã”zàv'cœ¢Ð¥ "§½UÊÃqUfóžmP”ÆÐÕ7@Õ‰}˜F4hÑ£F4hÑ£F4hѧƒD€•pî§’0Ã6rŒ²ÛL 0|ó|róåŽ}‚µcû]ÚËNOŸÈ ÔQq{×˃­áê¨áþtG¼,U±6£š-AÅ„ ÖÔ ZAèVh¿7˜ý>æñ½e&ñ¢9œfLÿób`4•}ÏáÆH#Èèž5VÞ À€dËSˆÈ ÜfˆB•!Ìn"AîÜÎXŠÀÈeÎÜH~o0!ú}Íø]¡t)Ø*ûz– ۰ Ç‘ÄWÐz™ˆ@1 u€ö:pÑ£þ¿µíÎ$±>ë:äëN¤YÉuëßÞrÊ™ Ü£MB¼6ðji‘I‡àD|Þšëói·<såð!˜<šNºd…¯Š0‹lÌ;r4°¦»08MÑu`y _«°H½Ü£`HÛ•Š{:ðÃ&òØVÄ Àj9òŠç`梨˜èE«äàÂDK\¥ £:\(}Ý÷å I$A*QÆï¢ÅÑbÎb§}Iþáîž8³ä¡ø¾œØÍžOƪ#]EŽ«Æ1bÆ1cbÔQ~4/Æ¢Š=/]ÇqÇQG}úÇß~±ÇQM鹫04ð×Fi+„:Q£FŽ(Å˲<`ÓIaª4¼¾ìnoºåV܂љ^»l7ú¡^/…k¾ €½“’Ú\NÒÑLÑïjq±(M€ð•°E]5¹§¤Ê£D‹¿[JLˆz¾ƒå'ÏÉÙXß—{œ¶ÕBQ€ûÛÁ·iZJÂ7ƒnÒ´•„æø ÇdU¥òØajhš ?ƒ8P@máßy¶ Mó!™¤Ë¿$Û©Óì/É9 f…îÈpz\úæä§šà»å7K–LBÌ=×{Ùù[(Ç[HÅvØco”N–äŠ ¿€¬5=,ý BÔ³KW5}õ¸ #°KT¦-¯²SX ÓÓk¦ÊŽuñ °ê÷=ßo§"s)[`ó(Jä`PìFÐ@D‚Ü âó&ÝÞH”Š$:…¢,¬K¥,°k”À ƒ@%J8]¸\ˆNRˆ1—pdú’Æâ_‰W,XÃÀ·¿ïFÏ,n^¶ÇÜóE/Ã{¼ÿoM?Ö ª -°1ÈäÁ¤—¢Å—,X±bÅ‹,X±bŠ(¢Š(¢Š(¢Š8ãŽ8ãŽ8¢Š(ãà£roÍØíir¶O%Tÿ8§Q"}™ŽÃ „_Œ÷N3ÊXÚ¼´hsþÇâÐoø%µnm–"]YCy«­éа‹)èÒ(¸¹Øì^öÍæÔâ9àƒ¤ç˸n´«-ª‹ÞżÅRá]™&ÙQ܈Ãj_’g_ºD'¥cÌsR;xªH‹ ƒËHMa‡Æœ8.ÑõÀ&Pú¤!à›GÌ¢+ !—;q;çJ®ï‘9EV T ­Ò×,ŒT%@½aÿu4삌x?‹J$>ÀÜ t5¨¨«œ¥ØÍ7(è¼ ZÁý"8ÿÒ1=+uû¤BzV,<Õ(hûtÍe¬j:ЦνÈZLÕ !mЃÅv–J 4^&ª  ¬ÆæB¢O𫯡ý’÷p-ÐÖà[¡¨íEE\å(>Ælªædþü¨€ÖPë. 8èÇÈ üÐ݃ýz1òÿYC¬¸ 1ŽÉ…Dì¦RêsÔŽÞ* $Rg1¨ÐÒE\7r[H¬-çI`àc‚8X4ÔDvFVZæÎS¯þ=„ 06)æ×…ï“3¡` +!¼þ®‚b@ONte¼ Z.ª†:Ž`a™¾7ûOÐ8Å82S^è“Í àÚ¦Z! ?î‰X›x ÒûþõZóʇ¥‰ý[®r£gsÉø?Û¿Œµ…D xΕ€® x`Xı2Y-AÄçrŠ8¿˜HÁÅ €²@ˆ¢ DÂ'$ë©R¥JÑRµtY^C¯6–ƒz€­`‡à]À³D ·0ÁFºÜšÊŽÔÈ!TªDøT•U:$Ôóµbä¹uŒÀT_‚^¹éËÖÝ(z„wúݸ ËÒåÅ‹,X±bÅ‹,X±bŠ(¢Š(¢Š(£Ž8ãŽ8ãŽ(§g}â(øêwã!“Âyß2=ƒU¯?Øå×@o¢ÊËÇ…CUPÐ]®‰¿ðÚÅA‰ðOˆ3bmŸóûDg×J¹a½Þ#GQb$)z0^Y¹¶YhLå¨8Eð퉚ࡠ%1³Èfg›/á‚Û°Ðû¸¡*øb2ð5ù¸8i)g)mâYx— àm]DNb9±ÈJ)ŠiÙëõ$øb®d`üèx}NiÖ óÝÜa,épB q‰µ‰³‰µ‰Ñá>IÊRÍf·4@Pg¦ð7\âp»¶}d3XÂÚÇ!¹Y<”üVr À6&& ·ˆaÄ¥HÛKXX`jМ››¦»@b¶_9w*¢¾ °¦§ƒun/”d¸R”­„Ê=›i7órÀÅ XS°Mt-:¹’nŠÊºlÁ™l@¬@ “ø­V¢¶\³KgwñŒêæ’íg`†[]¾ß´ïöŸÖèÌn\¹râÅ‹,X±bÅ‹,X±EQEQEQÇ}ÿqGqÅ §g}çPîク(ß›²í`4¡`¤’BQú¯õ pï@DâÝ¢8MЄñ·–Skçû#Õzá»_⮀Za$*NèèzEkøL×õ9AÚjáÇf#ã‹fâ@ûÒ*„æ”—' ê<{¹“ž-Æ0õÿ¦êt¹x®Ûzº<vMŽL«Ð{Iv®,›qöÂj0úBòý Ì©[±ÜMÇ3–ðP2ÇBt ¼¡·‰BÛÇÊ ¥@<™(‹¨òaܹ®ÿóH'µ_² DÊ#pW¦:! î™X›x›8›XÙß{ð_Ýß~s³¾úh.„¿'‹zWêˆÇæëœ ôÓÁåÐú8¦(m ·6ö«0Ó³Îò^m6¿&Wb…5”TÊX`®¼´¦IZÒS¢(‰Z:,ÀâÃeUØWÇ@®/ž„½Y`m i3ÂÅR@à09y$Ìuä^B¼£T ¦%`õÐÞ,* |jÓÕöÚÙ@» Þ‹%’ãí¹êþ†Ùý.TžåË—.,X±bÅ‹,X±bÅQEQEßH¢Š(ãŽ8âŽ=%÷ŽÝ=Ù¿Á+ÀÞ8 (¹A~¥3CeÓÈ­¶ÅðoÌ^ÔöMÝôœðÒ1 !ü¾ÿà*ìâ2ÍÆËP\zêq[¿Oj“ˆÚŒœ®TFf*BXåÚZSž‘”µØý!+Ù ÿ|!xAð™ ÙO1Jºº¶¶·K ±Ñ8hâ`³+Þ©‘¸‘ÆØ¯E›ÐLd_\åÎuœ³KW5}èâÕ"¸Š¶¢JŠC¥6q:S£ðOÁI¼àƒÕ÷³d|´Nï³:V¡MÀö2‹PÁp¸Ty(l7; bAZK=H`°AµÒSÔºK+BXQÚü.Õäž"ÅB8"¥Ä6@èhRz°ø³,ÖZˆ0ÜÁÖÀ†kQnS 62¥J¹dÕÂÂ*,i)åÏ´UPÖ¸îï¿>^Jƒ«ô”n[¢Édrs †ÖK§÷¹râË‹,X±bÅ‹,X±bÅQEQwÖ(¢Š8õ§vwÞ'g}ã„·~oK,þÀ4iB ÁH $„£õ_êâk®¢M–Äè¹Çk  –‘䤿›™³ëü"ç¡Ì ň‰41v]ú±ˆ¬DK£ÛK÷„I&TtàøCðƒáá€à»@ЂáÊÑ•y‰³ “w‘AÝBtÕtââç`1E´-¿e’‰IXˆ—””;Aíý°Ì <%NÑ>Qõl¿*î#ÌÂíße™ú¸­š§ã{Fȧ£ko¥:s³¾÷øÀ’ILrHÅ ¤‰Hæ M;ª“@ºº¦ Ê—‚1«2K¶O•¨£uÀ/0Ö XÓJ„Gzò€Ž :V5XXž)›e´Õ½3À±ç’äš®€ KÈ6]J„h)®m3pþ¨¥íe¯ìo¡–9$вÃ+G?¿IJâä´JR–ïŒh÷wß— §VgÃý"²ä¢úËu…åA}ŒíúiýM®,¸²åÅ‹,X±bÅ‹,QEQEQEQGñ**ìï¼qD»ór-·§'P±óÔ;€k#&¢c$’®ïtØl©vœÓsXdœ¢GüD¾IŸ¨ð¤)Lm*)•öÓ+vjö =i(D (&'¦Bô_ÅÙÃŽ` P €Á)ξbPmÓ(m [|‹…XØÓfªÊ¢î¤Þ*UlŠ 6F9¶Ðç‡ÕìÁBS%¸“¦]ƒf UÜïèYñ ¼Õ1¾8ÂT3*¨+0\OCÿ<ê À…X2¿É#±À< >§4ëfîÂ\K¸Ü4öC+§:3¥ðRðM)E ¯®Ù²¼¤¹y÷Ô(n_5Œ%I€@¤r"dMª¹L`1ZXªºTD*Ž@)2’ÅT¶0¥-Ã*aˆòÞ>sP¢äUŽø«hº.ˆâ€±¹tÞ €°*A{[ÐZD a‘G“²R0æpÅeZZ«Fêï TëÊâW&oË æÎ\î’âæRjv5. HbÒ½gw}ùpyÔyÕ‰…¦ô~RLmåËÑrúËbúŸèŽÖH‹ZÑK+µU݃’r-­fóyª ŒíúküÂúË‹.,YqbÅ‹,X±bÅ‹QEQEQEñ*¢ ìクÂw~oKZÓ“H]r0ž+Áøul¤AêÖ’MÚsNÏIµòþ×ë½Mô¨ s‘oµ“ô‹Œ§Û•Ö! Â’È’ €sãáζÈg^¸ãÇ×f\E ƒÌ’ö[<†€õ6k’ÔØ®î }›fÌDˆË-õ£ ÇË`X[ #½›Êê¶ëȆ@ÚŒ~:[壣ò’ð2âd€Pñþè•V&Æ&Î'C¾ïG¥¯öwßœìレ‰$’AT¨‡"‚ÖMÂÎfþ4 #€w‘Åt2e¯ #~ )k!¡sÐÊMŠÉ‰’Yi/¼M0( ™°Õ‚m,€Ž‹†¨læ;,›4æã7zeUØO<  £8°[•r[FšQ„‰)ƒ!†aZ ÏËÕ£W…y¯§zN¢ê•v ]ý(Ê»Uh-¨r`ºPÍÍ5¶3”nÑË55YºhµÅXuçZu œðîFi³ Lx/†b€¹æ—¢È¾·ú!c-MHkÁBÄt»žvý4²ù’.\¹râÅ‹,X±bÅ‹.‚‹AE ¢ù"ª¨ÎûÚwwÞÜîÍé»ßæoÉ!(ýWú…ú ïÁaðP´[ˆ 2éƒr$q%0¤7âŒ!H1žéÍß„x~‘Ô¥ÝѦŸàÁShÞ#–C[ÌI”ü‚öeuì”r•B’„œ''Öee›B´]´ ŽCÂÀ`B­U¼e¶.IÄ<Âé¢S)nŠíÓ gg¹œ”ÚD2º/dÓd\@<çä®õ&0 ÙqõáúÄ¿X.O¢ð!oõ?0…(ðÜahµxø*ß­J1v¶Ðç26P!2‡€íñÌåä MÐŽfÐaõIî`ñ? {eQ±‰·‰ÐÐ)Óûÿ³¡¨I$hWMGcº¼ÜËp[w±,6)ë6w ¢ < aa#B0FâEy)a7+Ÿ(¹U#•g jßR;à$Â2ðÆ^[=œ 5YntKxÂQnÖì¨Ì FUUy±,®ò^‰Z0g8^'Ö/Ã*5ÁHX×Èr¨›rRwÑ\ ’*çÜ¡;«—wŵµg^ugRŒê÷ß¼/ÏÞ~è¼ÃÒu-?¬]p¹ÀuÁráfsmO4ôNéàœ ±¥DXáΕyçoÓI+ƒÁq†0à 0à 0茻»ñøuÕï¾ñÃù½™»™{JÅ;àõ"UЕ l2ÐdóT«ô[§¶Õ@·[´¹´Ù–7UÏv—¿ø1Âg€p´:ÜïàÊ>$‚{ ê+å)˜!ÎpÁ«XÑ\´U~ÿ↥×ðê¨%ÁªLÔÓ(G"ž=+C Pà¦÷gr©{?A€ÑMNÀ ¯ä‘ñh'ú†EýƒÖUq Zع9>ì¦KþæHNÈß6qtšB¯ÉŒH#žµ½,VYµïÀ?ü#+ock£ð[ðI$’ EiL©N²e¬r¸gsc¶ÎƬñ›r€ÐU›ØòQ B ‡›nžG’‚À’ч㠱ÑFüÄæ#HdŽ»@¨©¨kœ"@ÁÒƒVž· ŽôÂ6‹*Ñ¥ºà ujÍXHÍèáD‚ØòÉ:‹Zò+¢¨¨#öð_u4ú“­¼ÂØp·³`²ò¦Èñ_©®›Sëðrܹ…dª³x½Aýf½#çÕ’ôæÐè0à 0à 0ÃùÐUT@/þäÞ–lé†iª\H,=…’BQú¯õ |G¥&ZÒg.6jªÊ­T«¶[…@i;²´9ç£wKb¡ «?ÁWÖàU2¢CÃŒFÁó6Ä–OæaUbUR‰D"¡„À[ìƒMnœekåë¨Os‡ ¼Wì™8Âкi&Hq/¤” ü,¸½ ›çw ýg€€Ì«8ÔmIÞ!LÌP¹F’AN>¶=qm\QõlÝ:ä›k­kyÄÌ_d–cA @tgJlâmcG¡ð/…$’4Ep±Ø Ö~Qä¶kf)°9¶n“Á,9";DÙzó/_†çP–R°dX½jP¨2¬+‰xâPÃÆ8ßBNc€ÒÏ8# “Ä0¡±0™Ñt)”s…‘9Q+~ji§ÚUˆ5nà[~´h¡”rÆë·W/UoÅÝ÷åÁ§^u§RQy!sþfT`™^éÍÙxnwìÊÌ„HM‡^ÆÄ™`,ƒ °_0‡Tu–Rò2SÆA9.éLéþ5ó.a†a†a‡çUD ûw÷ßY»˜­¸–I Gê¿Ô)†iº_ÂH,=ŒE UÁ `Ι••ÉÜ `*•ñ,³ž Ëø3…Ô¹øH)9—útùG%Kü¢X”r…%šÕäK› :V¼%’ŒÚ­+f¸E\‰Ã!0ðVÐ-\¹ljüÖÀðìúÄ/õ€£ NƵ¿Rt³Ø¯¡æ½ùXbCŒ'K¢¨"µ© J¦¶®~Ûé¨Å´ØÄÚÄèp·÷÷ß”ìᄎ‰$’A…J•(”JÕÑ)Ö±w‹&BÆà6ð¦h=R[ºjãÀ—ÌÙH‰Ðm¬´‹etÁ˜7ŒÙ   b%";ŽÉµKk·N]e•óàņ)›Ð•}ËB T-kháø¬ˆºN_}ra‡Èñcai€Zµ·©:“¯19›ùƒh¦9‡kX~‹C3Bçê*+7Ëø‚ Î6§›I˜¿®ÐÝåÓù¸ Ã 0à 0ÃË€ªª'·¾þº=½÷ôàûsC~^­-<@(OaeEð×ûèºOø¯wbÒrJ«!€1 ½“Û9à.d¸ÃY¹ü·£ñÛóÊ,CÅŠÄ¢¥1T¼††…P-ZU GUÀÍçO1¬ -Ø•/G‡A´ù}Ê‹&-€?Þ`sóÆg‹'©»+¢S^=ŠKg)ì•Ö'NmãœÚÆCK§§Ùß}8$’ Š”iL§Œ‚€J*\e\ ŠnÀ[U¨¨&haͳw„e}MÉy6ãfDèþü%¶Ûb ˆ&%ĸq(cã.FîªBôù+/ØX€!bDȘLæu¢S»€íã]ÊV‡š+lªŽ¤P80g¡ãÝðÚuçZue\âëm¿z–åYfN0Lý©¤„Avxªy¦æ±5X`Ý¿•‹|]sµµ7yt ¸% 0à 0à 0à 0Ãñ€Ww…Y«÷÷ßÛXÜÓ·@äàÞÕÛâÝÈÜbBŠ¡ÕRÕlÅK¥<”ƒaǃ¨ v¾_ÁrÚ7)Ffà1¢~@”†%2¸´F)Ð £áˆ@ô²óE›nùœˆv¥úZ%éçå¡eP”~«ù—Uœ7>¢ì–™vacŸ€}øBV&Ö&Æ'Nt§Gà–‚’IR¥pº:,`­u |•U‚êT.v‘øfŒV€nÔ€l^ùŽœÜ±Fm0EÁ.÷§_óÒYƒ*  ‰¸¢Y•3+†é>‚»FÅY(¸fØ—_Éb¢ÊKÆÎU,“Ÿ•‰¡‰v \ÑBël°0Q…3¹6€š3+“»¾üø4ëN¼êÊùÂ/1ÏÙ“p¸E†XèD­ ,:ò$‚ ƒ³À=SÍ¥g.täÕ`Z­«««kÅœÞSÝø/@à 0à 0à 0Ãñww÷øÕú«ÆäßH¶ÜpÂÝ`a¿ut¦r§+|ò„æœÓÙþÙê=_wàþjÕ«-‚AQú¯õ ~œŠ\Ì$œË—ÂÒRíE¼Ð*˜JBSÛUh¿Ä ÐÃråfƒ6³P%‚qé,‡ oŸ+‚ ³CšæV¶g$=GöJko£:S£Å^vwß]D’H ‚*VŠ%µta@Ê«€ ¬(ämgm˜\Ò Á]KäT¥86+ Œå¦zR‘*Ñ]–©1¹¿rÆ,,ÃMd‹8 †Kv›,ı¿Ò›àÜì‚Â,1ñ‚d4(êX؆°!}E ª@-¢€´¾|*yÖXæ ™0(ƒUUx²Û'Ì‹ÀÄ`…V‰$’I$£ÑÀnfXoÓ¸­™[5M–hæŸÕ©r?G0à 0à 0à ??Ýýöq~½½÷öãj}Í9Ó*>6–®nûþÝ㇎ýßÈê⽟"Ó±*ý—í¨ÜàKzÜ,’Õ¨RAÃèÀcšÉ„fYŽ?ÿ'éŸ.TÿOÓ>\£¹¬˜FaéŒÆþq»,”àkÆ“Z=_wàþBtµëu—ž©xîYMʪ†4gþ®b8.ݱa§k›µâ~™òå¿´ý3å‚c¢àqwèÝ>Ü7ðúØÍ9tdƒåҠĤD¨›Â‹Ì¤î48FìÁ"R•BQú¯ä 5s™`Ä:RÇ× PJÄ blbtçJtgCSïï¿9Ùß}8$’ *T¦SÀèÅ„ü}t]6¼²&GD´s/*«e@ƒ€Nóçå rñ­±~æ¦ànÉLÇ@ÂW#ñ^biº‹¼€5™PÛÁ›CÆ ¬!IiY¡N‰ˆ‰»ëoÇdÊ‘˜ õNþûÞu§Voæ y€y•À Òì\`Ü› ¤´ÞÎRI$’I áWª}¼$¬(@RÜG#¹£šWÀ¬<a†a†aøÀó¿¾Ï‡þ©]Ý÷ýê½Iz¢Y$%ªÿP¡QE|kEê¿ FÖö(X´tüã¼ýŠ…’BQú¯õ œnË%4kÆ“ ”†d(ðh¹º©t¡è ø} d”~«ýBœyAº'D:!шtC¢Ë<°éžYO ä”ð”ð”ð‰ð‚ÿÒð ×ëÄèIÓà¨æz„pWN#Ä~ÍumjÂiAÔfÏœ­éJ<Éj⣤z­ÉN PbVGDÛµ•¶»Œì(DÀÓ;Àø…ûçâ^~©™ ØÙS1ó½ djºÅ@†9[PV’p­©ì”Ö&Þ'Ft§G¾îtxìï¾¼’I$¢ŽF,LYV ´A”Š„Æ§N•(–@,d–†Y·ÍUÃKXg-2*.‹P9Cºlßýéˆ[ŸÑãª?Iè€Ï£G2À(L€A¦ÜâXz¦ÀÞå)1ß¿ ·€U¡ºó©:ÐKÌóIÊØÓúYr!Zˆ %þ™·y‰z¥|Ht‘À8UI$’I$’I8½Go†Ó›×úã÷A†a†a†~TªîÿïÙß~òìï¿}íW­hÒ±NøýEH•tXµuÐ9ˆæläüumœñÜ“öɦhtŽñôŽx>¦­DÙ:™îf¼â÷ʪnUt1ÆÁ¼ôggæ0ƒ¢tC¢IÓ˜tÂ|²“Ë<³Ë<³É<‘éƒá¡ëLªC34-ü’]ä"MJ€7…¶p _U_6ÄV'Ó®P9ŒyãøJC€›L„Vs±¥ÃÛeÞó¹ `€Rè–ü12·ŸÎ"À²¨J?UüK:ΛQv D½¡ËÀ?Ü!9MŒMŒNœéhô4ºz}Ý÷åÀ $A ¥J%5bÅ©HðàÒåZNÈH@¢@Ûk¶R²1•ˆ)D8d2"óFÃCš¡¡k‘vÖ6Eœïc`ážAÍïѯSÆ0ÂÊ„Eò Œ‘8d°e†1Ï} ‚—8ðáFæægVoæ ³1¿^Ü£[¸ÂpM›hÉfXÝ÷åǤ’I$’IÁýó¬nÏ!9zNo_é¿MEwÏØe†Xe–Yeø•UWûûíýö|ü»;ïÛ{ƒN´äoäp !0`O?¬×6H­äÇñÑÓÏß/×ý7¾USr«¡ˆÆ9¬˜FaéŒÆ^¿¨Ç*Ž\ºàNb”aôƒb?P ‚$’I$“ƒ-;cü»­>]Lc£-äB$ÚÀjþ€¢t „Ü@¡8¿Èm¥¤ÍaKÙüº Šù|‹›ëë,¾¨ÆÐð]3o2•Mœ¥*"¢[Ù¼Xc§°ÊÀïM Q©AN>·kfeF€|ÙŰ%y)"Ãu§ã‘ÁUÄP0wé*¬££Ò‚= A$šF…JeJá]숭֧» 6††xs³*îEÕ¹4*Ôï ÃXÊbÀÐL&U@@Z†]Ù^õfX¸Ótax‹P˜åR'qyÁnaiZ«ÌMàCÀ1¾3sˆ„,"jç Í€£x6`VÙ˜5@ˆŠ±ÖpÀÔ½-T%2BBÍ»?¼øþ/À0aUòåÜ¥Ünåá\nÈN6`ˇVÌAIxè€À“`É,K§%î$¤,—ˆã‰H—Ÿê0]E/! &7p „mQÀÜF<Šžte B#€|Õ ‚ ƒUßm*ÖÚ—¤æõþ™ßô„˜H0Ž[ì²Ë,²Ë,²Ë/΍UÝß~©~Þûûk[°³=h¶ÜOÈéѾԫ8b­Ø³›ùT ¥`Õ4û4º¾öýrÀ²HJ?Uþ¡O"èa÷Ôz‡$3I{²Á‘êû¿ÿð„ðªö÷ßNRI$’I$’I$“¿ý†¿ÉöÔí‰Û<³Ë<³É™Ñ^S Ÿ•MÇ:BÁ]¤Bˆ_ÁûÁʈùAëÞ‘”erÝ€ò´Š2l]‚P•„Ø›ÈrÁMš ]­a̾›jÖV Õ‹h¸{ï= k{üÛ‘&Ôâàñ·äs o+€á†V%‰ÐÒÐá¼ìレ‰$A…p»hëÍiCpl­·fu‘¡°˜æb‚ÙUíÅ‹V¹tœ¼ÕÀ PRQmsêV`<[[Åwa´•äAhÅAfWÒQù–ža—º*XRã G8Á {¦Ë,²Ë,²Ë,¿ª«U]Ý÷ýÎîûþ§g}ûõfìÞI½™v ô\WÝøû„u“”~ºðB†~4ŸŽGF»Ni½œß¬k,®}"Y›i/aàX1,’Õ¨Sà‰÷׆‚ íßâAnÿíÝi;w|öΟ'ÛQéLzgBtgJ„&0ï ۉ,«’¹6 nd¾B`¡…øÄzÜ’s0‘˜´€ˆåƒùÖyˈl°€*Ë!L »¥ èî©Ô¿i¤·ÌŸ€9ŠQ‡ÛojµŸF%¹1a@ðò•Ö%‰ÐÒûþ§Bt¸ü’H Ю’´Q*%hèÅ‚6Á›˜)d<²€»D‹¤€€náPÄE¡ö‰—FÖ-œ ¹,‹‹·;Ƀ‘ˆ»5¬©- y±×ª3Šï ^¨+—$øÿÄ´{5wVl_[zò„«€¶»âò»/ÒñâÖÑä ÑJ\¤4‹SçaovNë nM½AÙl–7@âh^-PPÌQvÙKôÞ¦§ŒÓChÝ­¸ó”`Ì¥­7&ÅÑí%r— ÜoFÓ/‚ȰLpQ}wfí™,ýë¦¡íµ™Õyßß{p×âÀ ‚ ÐX ÊF’L˜"<œp"€ P`ÐÂòÖLÀ=F[Ý´Ôß! ±­0m`”ªÔx½2d¥°$»ã} ¸|¤2‚‘pë²Ë,²Ë,²Ë/ê!w}ùë[Ý÷ß—½]-ÌÍÙÔ—(œ‹=㇎:yDÄþ”ÛuåM×jÂt–ƒ ÒÆË¢„gºs÷ãþŸ«sK±+Bù7ª2‡(%’BQú¯õ |¿’UUH ‚ ‚ ‚ÝÔ íÝðýÖžÝÜï¼ï¼ï¼òiò}£ÑˆËÓ¡Ð9цò‰]eå`Œ‚SÎ ž)òÓÂвQ¹º´c^½ïYK“ÃoèLqŒœ£CÁµ³@ñnYÐ ¯e ‘‚%V$ιòê§fjÉ¢Ÿ˜[À@ôE`Ã錨¢±:sc¥:\Hg}ôÔ $’4*S*S«£yæ¥*6®¥\c—^Šõ])úmµŠØBîôð®û@ …±ß«®($¨Ux+а¼ói¼#<|ñgesÚùй¶…J=˜7õ ⃒ðsx´åäû¶ÀÂŒx’ÜF©Ü©5€A¢˜â„j ¹Ašš öʨ³¦äëδêËü’ÝBèLªµ©3b›(¡Y@Š2ÆrMRª†—$–<ÛÅ@0Ë¡aBu(dl ,KäÆg*ÊîáŠse2es0™Šî¬Í¼Î¶ŸWáVªA’k"Ÿ›õIö†OTð{P)r6îî‘U`»Q6é)y[œm1¬5Ä`c±1w?QçÂ’ºªÙ\ª­«Íc³ D8G#†Q ãƒê3mÕÙe–Ye–YeøÅ «»¾ÿ­W«À^'3«µ17'WÄ¡ÏwBˆçò­‘ k0¬mªÐ½›m•PC£ŸõXk`CÔ0«j “z£(p‚øo“•UUURI$’I$’H ‚ ·u©Ûº»½û­=öáöc££Ð Óo)—¨€Gv¬a‘}hºæü?LÐÖPS„G–Èá× Õ´Çm¯ù¥A1M’ ç%—‘Ü["ÞæOŽâà/ÓØimN)ÞcÜ£†á :]Hûeu´¢±:Sg¥£Ñø€’I$hQÂèÆ,¾Ì+,“ KB­Q¯PPUal¨dÊË•[£hضɸƒl,×µ*òQU-µV!å﻾-•¥0Þ…¼ÕãNFõâòKŽÍ™sY»,‹ò¢ ÿ’ àŠì0“.+ÎP.Ι•ƒEƒ³âæè³:/SC3©:Ð Ì _ÝÓÚ(%Ì:´FdM©ÔÖ”µEÝ5Ò¢v¢=ìgÁ6 0Ë!v^æ‘ ¼*­Ì/Å5ý°½TÊ{(Ø1­2™=|I»ÍbóNõuMìÆ6F29Ÿ7Äêδêü•I ‚;wP†J4,!¤RCk*.‰BƒHŽDpœ¥ž;¢Á)B`vL€Ñ‘ªxĪXqšÛà9s”khXF-mEšß C`|Þ +uœÕ67X²@–‘³<…˜ÆËŸhþ´ *8+¶1= ä .³e ¢ªÚÇA†a†a†€³¾úpUßß~|:M.¼ÜÌ®óô”^x­i'å±Ç«îüÿŠk‚Á:ĆüàvŒm «« ”ØÁ<´Q£ãõ={ÑóÞúúÁ–Qtäpiid”~«ýBŸß–uUUUUI$’I$’I$’H44;w™ßºÑÛ»»¹ß»àïLe†W¥:s¡å¡|ÀÉÞ#L›Ç,KüŒ¹¢!8?ËDµ™…Ou‚c!ÄÙ9hpQlP ¾ @þ‹ü_à|¯bR)¯Tç…°iƒ­ž÷B‘Ebmâlbmâwwë:<%ýÝ÷å;;ﮢI$ÓE £­é^=Û»8lP¼‘bïÌU Í-DÜ1›J2‹´ÜYnXÎ…bÐÆ@¢Å_>\ý é4ZÒi’ÿôèþØ9 YÒd¦ÂŠW¸Ä¿ ç%c …‚oð UI”NNi¼†zéÙß{N¼ëMüøÍüÁ/1ðèS-Ÿós. ”Óº sÃlö˜¨TfãüåA m –¤j 7r©wé[¸.Ùõ— ·É÷”uÈ!_yG uT:J¼’Hu6nÚ¥l­§· Òu¶@06–ûf®²’‹l…Å ÂJUS sÚ¼Qp-QnCÍ2 åÐVTcÏàûJAmólê_‰ë£u¸aI$’NÝÔ!ÆÁ–€a†oÔÎ4'–¿NFíE3¦\½ö¡ØªÓÜ¿P µ¶g +!)X3¾iÍ-W-H,–Å‚5½#bűz¸x›)Þ«<èeѼ ‹8pyD« ŒxÄŽ£ Ã 0à :ÎÿÝC³¾úê÷×àþu4:ó©7ó7s¡V¢ijæï½°n=Ë1óò˜³×ƒ°8ÃPDsJ^Ë §²{fÇ¿¿PÐY$%ªÿP¦õXÏv‚?-ú5Yi‡æ½à¾«Ûß÷;{þþ"ªª¤’I$’I$’I$’I'ÝÜíÝÎÝÜíÝðvYe‡AÑ9ÒÒ…hSP­L9cÞGð±È³ãkhµäœÔÈ^˜]©î;º9Y؆‹cpÀ\1¤‹£™H»ÌAKœÐÑ›Z Ý||fs§“âùJÇÂ/@Å(Ãí–æ›¹ÂÒá }²ŠœMœMœxM¬NŽKƒÞÎû騒I$ÒVŠãëŽm”o‘å” ª,ÔÍgt­Û:Ý2 '6‘FB9ÝÙ¨(ïƒzô«)•‚hø”sbW{ñðtXå æ{ØR³`0\`™o1`"b]v÷J±¥´Ü\B ^ugZT9†û¡·ë,DU´‘Ôâ½á—>Q+k½òAã X`òŽüT •=gkc㬔FØ,gmÖˆ´ÙÈ4 ÆÑ(ˆBÇ%¸Fî«Àõð‡ G¨ÐAenMì‘+ K’nØ-¥c-³±2Ý‹¬ÙF |i×׺œ ¤’Iß¿Ì%Íì\d²ÖµLJ"#·ý½Š_•:P, ´ÕÐxJÆPÊV\¤îL×äáv‡·u{wZa†aíßùtÿš÷×G·¾úð/ßß~:ï[C©:ý÷ýδêÍüÄÀœ”QÓ¦$=G÷æjY¸ÕMÙ_HY“¥¢…¥h ªø· <ÓdSˆS:¿ÓÔcP:tć¨â +“¦_âij6 ù•]UUURI$’I$’I$’I$⃷u;ï;ws·wïÝG¿uýÜe–YuGO¥:rÞQÆYÝpªèÂ3o06¯‰ˆçÿRŽø =±rXå’,|r€ZxdG4Ù…qI O‚êùêdñ®hMbWå°µX’baX‡þG%ãÌsdÏÇ}(˜Ä|ðR*¬M¬N„ÙÄÚÄè÷ßõ:öwß^I$‚ é)•)á1e:Pµ#° ·Q(% 5*M¯ƒ]4QâÙ‚Ñ&6RÒ““pÚ°–y;”é²VDY2´b¨aV€µ]Žw@©U–Y ‚‘F‚É'âÆ¸ð :Ko’!…rÛÔÛ¶ªvwÞó¯:Ó«7ó¸ä©r p¡óÊ{UÛÁÐ"e”ÐQ°Œå®Àª€­¨€òG¸‹R3ðÊj^€Än*â 3²ë (j¬Q \°3¶3|q,Ó#j!•–*­‡ˆÒÖp°ˆdSÞyvü›@ÏBªà B׌l™4[ú½JJ”m•è…p-«´ÚÔçj/¬ËùοxM>¼êðhI$›Íá¡ß#îA§3é"ˆx¼Ntmh­Z.Q}!RT±é®_  † ’êÂü%C ÃÛ»Œ°öî£ =»üG¿äeø5Uþ¿]´ëÍÌÍÌüåãuLiÞ~Y˜Y¤„©4Œ)0ç œ§±ôçí÷[Öád”~«ýBœò~wÜ*ô|jóž"’I$’I$’I$’IÅ×m§nêwî§~êwî£ÛºÐöî£ß»Œ²ËÓÀNt'Bt¡·‰‹xøÑ¨pNêlU„“ü‡Ë‚TŽ‹ú€£ ·­ÐØ Š£ Ä ¨§÷æx¦jÇê¥}"ºgw›åY.R0%w Á>EК˜´}°'¦ÔúȬfÁí€V&Î'NtgJt¾ ^¥ ‚ 8]±bzP#˜X¹5øQA16 )U Ê8Ægzç0†M¡MÁBÃ\…WônæS¥ê•´¿C¯âÚ†)­vï }íb£KÍy«Qƒ*Ø51p‡)“fÕz÷Þg^u¦î|föe7˜tÞ_òñh‹XÝ_‚‰9‹A‡Óùh(#`- 7PÑ&…+<Åœõ9¡{ìõ€ Ùwœðwu•š6ò?YàhO\óºúäí-C*,£x½l£Á¦„6ÇŠ¥ÉaxDLK÷–í« šUùÒ°]6þ>/—ÔçrØæ«í¿œ€Ñ ’Ý:7–@#ž½¾/êzu'^ugRu§W…@‚'½“Œäðom• XŸ”æ”,©”ÅҵкŒªî• |?eïÝÆYe–YeøT:ÜîçC¯ÝN¤ªó¦a øWö…®|ãÄù[…Ó'1J0ûdœÛÃE ]#¯÷OÎsy3±éúcŦ DÊ&b¤£ãkø”9è_Î*®ªªªªªI$’I$’I$’IhÛ»Ñß{ï¥ïÿ#ßþÆ^ÿò0ÃðÒîþ (—éÁ ­‰Âca`ÈC¾bKn´‡eéoê‚W‰ÊX+P’»ÅS¶Åß@ðs„^€lzf˜ÉÍñÂÊ¡(ýWò. Y°³[Æ_Š>°Æ½`4ÇÚW_‰µøÐï®9:íïþp A$œGhÅ‹Qãµ}ÐÖß¶p`Xöœ€YP£“¬Çw$¼|)çbwRïËè¯b !¹aC(˜qäîä;m&ÖLù¦P°b¾LÈ™†.¿x0wµÎë‚_æ ¿3­""À”9î@i7ï¸Ü^Ž$S?H ’8G– ìÀáÜO‹e¡uNY^V(_<=½báˆÕÂ_EîT-|¢ E¥cú[(i)bŒ@U‹ù8ñ+ÄÎ’Ê–Ÿ¸1( Ôk7ªàpk¸Ô*k¢ñECí›ÕÞ¶ÍAPÖŒ}ÑÙ`QÐû;oŽå ‚l庇ä4³-³–›2æË —‘ÛÓXÑå"ÙolÀÖ,˪$’Á[/u´Xíža†a–_‹UB´ßüÎÛ†_çPy߀>°@±ðgq}hžüíK7©»+›f¸hl àƒøð+xA¸žÒµ ÚèY$%ªÿP¦\?jezŸDa?@A$I$’I$’I'ûw;ws¶ó·u¨Ã ²ðVîï³O£:öNœ&ñU¦pRí¨&¥ÌMÚs›¢ùÑ‘yËDÝ D•@#i@ a•Kg2kÛ“•k[Ê"`5¢¥‰&AMbQÊmâtgJvwé:?4I ‚©RSGVµ2Êè`3”°¥å±QAêɶÁ­¸Œ¨#ÁYº‡8…½ÖÄ#F¢Ã40Wc¿ò^Â;:¿2BäÂ<¨L úÝ wúª“tSæ»ð!×›™Y¿™Uç¿®˜VÓ¿ÿp˜Ô´øH#™õü,ªÕ S¡X¤^oâÆR2ÂU¸2 ´ÔÓw“Å`ÑÿcåoXÁ¯E…- ¤³ ¼ –®ôK)K¦±ßA1Ç“8g›Ü—¹v ÂëÚX¦µwT´$SE~¯@¶ÿí)2!âz ih— ƒMºéƧÝe"Oxj‹æ4±' yΤêο„ëδêC®Iמò›Y˜Ô˜ŠÅ’÷'(·œï¯ÚetJð5ma¦%QæûÏ7ßSÍ÷Œ0à 0ÃTêN§½Y×yÖiÕiׄtæò.©Í{Áæ+iú`EÜuô|÷¾¾°v¢¾ pð\Õ]>Í/Ò¹³[µk}‚f¥¢¿!ït5K2¢¯¦Œ6ŸC³ó ‚ ‚ ’I$’I8ÿy©åþ§}¸ 0ÃÀ«[Ó(eÝ&Јð!¹Šv&[diˆJ1ƒ&˜”J—>=Án¸(%/À6¡­²9 SHÐøaeP”~«ù—ל·v¢F™W,cŸ€?¸@zcoco¥::·OO³¾úpI$@JÑD¢&ŽÚ1ƒ•°niHŽåÎP²5lnÔÊV¥;#”%ì* \ÛŒ €­å(£@/1òä!(0³Í ´—:)tÅUl}ÃÂFγìòŽ|Œ ^s­:Ó©¹Ô‡T: §‹_ÔÅIA0·4Ö0gŽÐÕ*ýÐùEï¬Ú„ò„’—rµ_¸‘0ú©Žp5»fyÙçÔzþ±ë\eë^VugVu'Ru§^uçRuáøÀ#˜?w,v•s‹Êô7õ³ûÖŠ[ß*©¹UÐÇè,¶÷…7æF6*›ÎÍÒêóùþ“˜*Dë“rƒÌÿÞ8xãþ¤tòAA$I$’IÅÿ}µü¿×a†Ýþ#Û¿óà ÑÑ)Ñ—Þ>Ðßá#KL&Û÷ü$He%¨ªì¦ Π©©G$²ì& ΂(-XÆiƒ@êý^_ÃÛ"‰Åª~ÊüÑj§%¼E4öA+g§6q6±:Mw}ùê$’I…Ju+GF,PÎX h`UÀe…`¹ˆ÷UPÂëu82É*°ª/t(p@ùÀïüØ!¦‹R9Í‚ äø†"Npî*°®¢‘ÝE­•V×*¶«º¾.g}ýg^uçRuew™EçǽôÔ™øû…qÅCsj,ÃD¸YT%ªþ@§½1öª>Þåc8ð½¯-+} ®¸ÔWU‚ðQBîI»è°†X¼ Q³ß'þR=ö¶)¶²ɳ’DfɵŸkïч:‘)N(âÚç@‡íÊš%j™ai¢\þ(œ§5eÛ¹|ˆP -¾aN¡(I¦SZ¢rJv P$ U¢ñ ƒñiÕIÔ‡\²¾ð26ð÷Áæi"ºƒ(V…qmÚáæžyçžyçÑçŒ=Q‡ª=QêTêN¤ÝÌêóÖyÕ‡ãƒþrŠlUüq!-¼Å º?äVÍo „R÷ýiØ©ã#(ô?7iÍ9âÃë3CÑÖüK‚´öÚšaDy,’Õ¨Sõ8€4AI$š}ùp~øöàýöàL0ÃWº£¥o( ãÇ”åt2·Ã&ÈŸ3@ÐTi´» 4NU”¥"Á*é7–.®‘ÏÆljøeP”~«ù„µÌ:–ÇO+¾T×?Û`ˆ¯dª±*¬M¬NŒÚÄèñ5ý÷×Q$’4+¤¦SÂÆ1¹}Ñ­¿m2ª¤q-<ƒ]qÔAñî]RaÀ,ÑØh1 å(„5C'Z!Ý~7ñzì3wé#^j[ßܶ©yœ4І€p½CëN¬ëMÜ÷ºY"Á¥&A.Ÿ¿cy| H†u5üE臫é ÉDŠ¢J¯‰Í+Üt" ƒì!±…©,Æ–+fglåµ@ÅÀž1 Q±£°XZ¬›J©D[ñ†ÙAF/eU‹k§2¹þ âm·¬QÅ,Za`½Óy‰¾0·Rl”H–Eú,-¥¶Ñ×?ƒ\¼xkbFZH±Û#j¨|$8k”ƒAbš`Ä^c@©¥Y„! U²D0>Î8Ýïx ´¿W³î§BÛ Á%(ƒñYÔ¹RÕL  æw²"`@F-R~Ó,±èÒæòÝy§žyçžyã×<ñë\qÞ=qëIÔIÕyÖƒã þ£o„rs4ƒ ¤C âÅmÑŠë‰ëHAËú>Xõ}߀øH~€‹1KvEÕ)‚9+ 3Ý9ûñ—ëÊ÷lÜ3»à¾Ïo„v{ÎÏyÙïò@  ‚;?0‚ ‚ ‚/ûãƒ÷Û‡˜a†;;ÿ'gììレ¿}øét'g}í:s{ÞRí â,Z гt³@t yaˆå™‰¢Öñ¬|°TQ(sÛšIÄÕ™L|‰Öy½™Õ›ù”Þ`[Ý9+—ÁNIzŒ!Û~Q8µE™]8Îøm¡Ü¤½3}5x‹$<¡]æ#ÐÒUnö Öž`äähùp—¼ÞÏp}Mð™YaCõ“%Ô¢64ÓàÖ7Ãëˆ÷#9H@riÙc. Éᙫ¦Ü¨¦Ä»\XgcÖuÙÑIÉÖÏåLpŽï¸¦5zN8GsØSǸr¹³$+ÒçÆi]56Ò+c¨4bmÔ1¹ ~[`àÜ¥COí/‚ºà·±ü1uU|jÆd±]€,¼"UÄv9Ü¿«E7 ÝV;3¡Ï/¤6Ñ‘óCxnâ¾H(X„˜õ…3Õ~ÄQ¼Il&.u¢DŽþº{¦ß¬[ù1Ôa?¡L5Æ:þãàø™5V-?ɶ¸† !‚ ‚ ‚ ÐAA¨Ž  ‚ ‚ ‚ 2N/ë+¯åÖe†~ øð„Þ a!”¼7Cí„rá„ûó÷·À:P‚ $á…L';¬ ¨-l 9ž% /ÎUìu›m›ù¥V71SXŒxd´JÞØ:ˆäD2Bü·V%w¸H   +R‰O2`lFÃC9hh ¬Ä€ Çé9ÑL¢±frÕAL¢K% xFάÝ̪òCÚwë ϸÇÍr84¶ÚïZÞ3¯bÈOý ª,ÉLHÛ°#“¿‹ä[̼…5éLRSAs$:±…¸mYÖmÙÆñ”%O b´Ü"Ô§J«”ÞIÓ(¥Z7ƒV”°Úb Ó#…ÜÇÇù+_íØ ­*ói—îÙ?BÄnÀHiQcº÷òq^ØòU9ŠzÌR‘—Žžäϸob|~‹äUèŽüÖ¸zξ9¸¯dùÎè -PàaŽLˆìB ­q´›ˆNŒp•…{úp/x¼–КàY$%ªÿP£Ö>NQúëÁ !‚`‚ ‚ † ‚ ‚ ‚ ‚ ‚ ‚ @A B ‚ ‚ á£Gªz§ªwÆ«,²Ë,¼5îûòà§·¾þú} ¿‰¿‰ÈXÀQ‘"9#ÒFøW’c¸N°tçJt{ïûâkû;ﮢI$IL©N¥È ƒQ¹õ|k=T9ÂÞûÉB„ÂM¹µ®.I.˜SôAh "URwHî%‰‘FS0J7Ó2³<‹‚g†,†h™Sc޵¶ëÃØl–E©Ý÷¼ëδêøÍìÍÜÂ.ý˜¬q°''àêÅ¢¿Èј±'¬°Tѵ…#ŸïœDQBB®Y3Û¸H&«m†²"ÖGª#'òYTà4¬U:’›ÌÐf)Ébë ê~©oNÊ+ìƒ%Ûm¨È× UÕy}&=U …çšìì·ut³5mø†¶Æ0c”¨e$= „Yr¡w 2*¨+ -Aß!.C‚ H4©¦ $üuþ{®t“™ué@7ti§ö Kñ£ê“åýzÿ³KßÏõRçÖìâ¥áò †!‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @„AAA‡kà­IäÓê×e–Ye—àÔ*z=÷ߎ™¿‰¿ˆÃxçÕ×L($禀Qux1”&]ÒÒéñ`$’Gk•+¤¦S«ý@6¯ µ‰q"æcÔ¬@ °9xM¹±ª„ €3žÚ_3pÊ©‚Ôªu!˜o0ËKCt\ˆû‚àóh›bµ˜P.øñwNVR®¥×i»Ÿ½™MæQy€¾nsEô25-ü‹>s£¶Å…K$qvác:Ù…•.lߨ­ÚjÉ­ BÝQm©TŽ)l,[Œ¦p`nÕŒüÓ– ’ÅÜš¶‚ÍÜ fŒ¬®¼rfŒìwcœÅÝJÔ ž³àoƒ!bÒÀÐwÀ†/m ÙP^Ý5Ô,­vÕR¨%æ‹B%_+Û†µ´uÌ Tø~˜Vp≽8ÜÐôÀ·•Î{"]@Ýè, Ç| âP2¢ —ÍÜ:‘òL¬ b#<µþPÈLø6l‚ÝÊ?c¼žùÔ›VKO°Xìw‚ŸvœÚV_Õ<.Ýísˆ ‚!‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @ ‚AAM©äÑèÓäž­VYe–_‹Uª|ß–r—aXÍÔŸTWÐípp [Ùîï³O·¾új’I&…Jé)ác€HBùBù؃Éxæ&3w0¬ÜÚÄØÆ¶´X©Em† þ± ²ÛÂ9Á¶ÈÁê£b(qD¶§ ¿1o:PíI:Ó«737s7ó7ó¼Ä¡Œ´@{ÜÏ 2S^hü 5ÐÚíbá€|×Ïßœ/çýeñ.ˆØ¨xÍ¥ ˆÜÕ*^A¬Õô:¶¶o¬fØË7öÆ;° Í‚·-»>Š*pâówå´p2æ"Ã6k¸Ð;â ©0Ú6wd¶ÍfJ¬Y¢œ9˜HÌP’>Ã'ÁãU4 Z%ÂBí‡ze"67#t)ñ,2 XÊòò`)‡@€sI'äj¤DhLõQ@N5û%’ßY—j GÀP!¨°ÍGçìI=[Ä~ªi‚÷8˼ða÷ÃcdvžéÏߌx{Þ(ç †5<§æVåMÎñÆACAAAAAAAAA@ @Ay4z'£„e–Y~W¨ìï¿nþûöÓ7q ¼Af‹;8»]: P;øB¸Q@¤go}ô÷Ó@’I ТWNVú4oBÑ-„md¹Z­]î --M½á©bʘ¤ÇÂ;2e¬Ó®ÆèéÅÍ^eatÀWyrœ]ÝØP€PÀá¨uçZuæöfæ`—˜,ø*:¡ñ.åp4‰6§ï ؇F2ÿC*. bkáœc•ZÞ™ƒn© ¤Pª µ°, S›¼%t~¤CÉ+¢³œúcxÊ´ïÕû2ÚVm´`öQª*†9®^W×Jj ‘¾,¡ýÜÉÁ\»ÿOs— ‹Â â©ÓÆ…ÎÖ±y"ÖÑk}%šky7ÂÛaÙµ×ÑS&Ó Ö,9°l¶U¥s“f´¿!-F XÊL¡ær`ÎÌ:7­ò'À|ï>Ø@[VÇäø1P KA–;h€3”on”9\ÛÆTG¤ôþÅÐ.k¢Ý6ªcT˜ @6N's´QXÑÏâ|«¹ô|æpˆN„žyºb%GÊéjæï¼CA AAÁAAAAAAA @ @„A‡“SÉ=ѣɨè0Ã,¿ ¯üvwß·}ûG{wÍ‘69v'ëzI ƒBŽÑÞ1‹E|Ó;N¶ ¹ &Þ%P+EŒ0Ê®'`V’ÅXía%2–˜ßÏB:pöwß×O¯:“w3¯+¼Á/Í3æ­ˆÙÂ){º ¤'ÁŽ£…°ÿD —u8çP?¤”VTJÀP(¯8ØÖŒ@ÞÚ9šà $¨üò°Ù ¢7£Ë&­›oÓ!e¬.âÖ½ÍÝbň€B«¾JæÏœNŒ%Ùeâó‚èŹڮ"ZÞûÚ=S²Œ¿ƒªàa^e1¹›¸ñ ƒò ?T÷ÇÙE\oµÜ³Ü×¥Gé‡hQX*DÉW”dkÚ9ͨiNqGR‘”™L£Š¹®‚uØ—'¯ì¶º Ow† ÓLYb+ƒÁÅö7ey ÄZŒ‚yÊ|‘yFí£Ã­?b¥°¶J‡dÃ8Á(t‚ˆàò€€/e†Ú»ž%ël\i½diˆ”-¥«›¾ÿ·xáã¿wò ‚ ‚ ‚ ‚!‚ ‚ ƒóAAAAA @ @\@òO$òO'0à ²ü*¯ÑÙß~ÚnôßÄâ vsÊs$K¸·$’ ”jš:¬QR›h.ÕsDJ ÐwÕ%@do•PbQ«±eŸщÉŠ´¶èuôº³{3s0Np–à(Z$³vÔuœ¿KW5}ø‰„§ê "N|õãmæ$ÊÇ$±è CõK¼›±É¨¢ ¥!ºW5bÖå„Ò²TŠb—Y¤oQÈõÜLWUÉNJ0•7À9·t9W.w¨=ç@<ñÞ%˜G‘q¿‹f¹ÂެìºÀéò* Åmœ AJü²åC‚­ìˆ(¦Ø!©†sª ] ÃIT,«šwbQv”’‘Ìßþ1¦¯&Gà“äÒ•Ôëz¦7¿¤c9X8ÚçñTïpi”[†ÜÃm…¥ØÀ€䤈šAUBÃ0€0kæ‹­C~­Kó·Ka7P7›bü±ñAÁAA¤Aâ ‚ ‚ ‚ ‚ ‚ ‚ ‚ @ @Œ$òOWa†a‡á•û¾ý÷æìÞ›¸j•úÊZ¨×:>Ùg~³4(”iG,X •Ê{3sT"îËðåm6‰ øèõ`øèõcÕèbÛK• miÕI»™]æ ~èú³ˆ<Š¥ºoÈv•øRK&Häb{ «­5ØšÀh«!©[U³fâ°ÞbCÅÁ R0åÝj‹·9ðÞ;Ñ!Á}t7TÜ5¿0͆x˜Ç%•*Ó"ó¼¶XAX…âÁB‹•T´2l=Ý ‘´õ)d(%ð6†‰ GÊ‚i®v«irªˆPñ퀇­…­¬”*Xæñ@>pzÜ> Ý”™O¤ó²A˜‹a@1A`¾Dæ'ÐX¢“BÚ Å©lŠ#Z(¶ÞÉÛÞp†i8¨| ŽlˆØ„C[àÃddJ2ïUKƒìc†  q eWóŠ0ç’gÁ°1|¶ CiA˜ ‚  ‚Ĉ ‚ ‚ ‚ ‚ ‚ ‚ @ @ @•*y%p‡“Q†a‡á€×·¾þó»¾ý£»7%× hÁ¡ñ‘JPµÊå.RPÅAe‰DMã,Xº†Ú¤…ìPó°¶„ÆqXÐ ÎŒ/׃ã¡Ô\cÝäP3ãé>¤êÍìÍÌÁ/0–þè—,݈¾ÞÀ“êsN°m 8нðEµ³!ëèU *há³h\€œé°ÅÈb ®6‰ RAÌ–½&àvX ]°iÚ¨²½`@§ˆ}¶óó *Q(”^`™FH­4¬5‰)R6Ѐ_üÿ ñ0£÷ô€Ág 7o«äe F%uÿ’¬ÃA­`Žq6 #ûUµV…UnPJ0sübÞãÃwÎÓç+ò}ùàGÃIøË÷6z¶€$T¥NÛÁ(U»;Q…]œ¿b³o·ê´Ú²º•×=]ôgñÓÝ6Å¿”ùÄ7L‘êéLåNVþ…Èùj?óÂ4 ƒ@üèjÌ ‚ ‚?AAAA @ @¨¥h©äžIäžMO&†a† ßßo­v÷ߔߛ߉hâr´› 2‹@„ ÔJ%hê±bðl73ŠÉx ¤A ¸EâZü¡•…ÇÔÜ¿XŸ÷Éõ€ÿ¨`Á>0jðQ-js(Ų*¨sT:Ó«*¼À/Í2…í",˜ÉM{¢ðt8° 6igÒõ^=³ŒD2& 3›·A>2¶›$ @kÙ¹X æqÃÒ; aز&=`Áʹ<¯|#˜P(ÀcĪuᘘiP¶–ƒ›BÑkMK†ç1gûŽg#ĪsâGÂ툸[;A à¶ å1±·(îbçâðjº•³.±#«ØzùJIXæÊQêça'Y‹24«°qƒä ÆÔg¤ÄóI­‹&ãí§œ¿DLÛ›¤Š †j<‡Qùû)_ÁÒŒ7[¼ëÞ;£òüØÉ ¦èõ¨¢¾^Ñz¯äˆ!‚ ‚4 ‚ üéA AùÐ ‚ ‚ ‚ ‚ ‚  A @*T"§“EJ'’T­Fa†~)Wÿ §7q7±8ûÂ-2ß)…¥.9‚„­Å‹ÕQJù=ƒõYHÆkO$7 \‹È³€¡¢«î“—É}~bð¤­à¤vÈâ˜ê‡ýŠb˜œ@#}v€EÐâÃõž½Y­ºµ¾šjºBþùvDüå45QÄãà‚?0~t ‚  Ð ‚! @ @•*T¢WIL©RºJÐè0à 0ñ.þû>¯Ý÷ö›³wC¨¸{VrŠ!”ÖDÌýØ+Pšpرbâ{ûïÇŽ¤:ó¯73:³©ã73)¼Â 0uÒ=‚|™·í¿(œZ¶ì®êkø‹ÑWÒ Âˆ ;ÃÙcÈ0Ñ78äWB©âh_8‰¾¨”)•• §µ4¨¬Ð¹i\t•–Ü;<‚Ž¬ÝØj@x}=\nçF¹Ö†sƒdJof#C‹%c;Û†t˺IOW×C«•](¾ ,’­ìßùÏ‹éË Üé¬ä€¥t‡LJˆµ*ÊÇ0}Êl¹•Iìqcå b@ÆÈîÙÏ̧ˆÈ¯!x‹QnMìXÑP.{Ú^‡IûD…{ë€ÂXzÎ&R`Ô*<0§B¶‡¼x{ßõ7ýg×Z•T¶qÿ—¯ò±WJg*r·ð AñÂ? ˆ˜5 h@ @ J•*T§EJÑRºhHà 0ü@^½½÷õý÷öÖ7æö%ƒ‰º+¸b{]f[+,_¡N¦ŸRugZnæWÏÆp¼Ð¤¦–®oÛÅ?;àÕAÍ Çíkœtd€º\]’‡† ¨Và©°Vk»œ€ÙVÆqÆÝ4—¦ƒ§9vÒy.Ò‹ÀbøPr%\¦óѳ´+\ÈÚ~ö⥞ÿYÈdøv„­†S±vÒÕ‡¤à9³¤I“Ù˜•Æ’‰Hæœhg\ãÕ- q?(CÉ)9—¤saé,ÆwKÉn* D.Óó‹ˆi5?±ÚéÌP€… Ö) Àlœ.NÎÚ(6t=ãü|Ó6û~«M«*Ä!9È¡æ¼áøøè@ÇÎ æ44@„  @©R´Q(”J%J‰*$Hà ?U/îènÍÌJxÃ[¡G9=í˜ú¾Ó»¨uç^u&îföfæ`—˜/ª# ]j2HÓë[Ïà"`2!”‰bcÝFAaÞR nÒåÑ©1‚Ü-Õ;š ä¼8Šl•Ÿb…%Bë°ÇO-u w•X^@0=[ѪU Ù‹=º¯pÂ2‡ãY&[5L·/AƒgyíG>‡Á~ù™FÀ餘!ñ@~鑳ŽÎÌÕê…LBä”@ T®óöL«÷ìõT0ªdùQÇÿFÎÓ#£’ !,ã‚ ,f5vÕ-vAýˆ€¾LÊÕG„HÊ”½–jì~h—í1T¦Õ“²Tô‚~v”ø„?¤äáMA B @Ð J•ªŽ 4T¨‘"D‰~¨{{ïéÃ廉¿ Ý“ ÄM’…‚ ¥(ÚµT)Œ·»ï¿-®—ZuçZuföfîew˜eè&ö¹ø‚ûÀQOzŸÁµYbD-ÀG=•¶\°;ÇU'ŸùQÀ2BªnÛ¬‚¡ªÛVBÒº’E¾ŒJÃJ¢ÕŠ'¤4(iQ*çã¼Á~mà»:èŒç[6#àˆ;;•KÙúvÄ›FÈ¢`§-#Aè€$$_‘ÄnÎßè‘’ÊÈ”3””ÊG0 Ì3îi†Sxxðœ òí€Oãg™¥ñÕ•¢Ø\ ~P O¬zÈ¿ìbBv®È*güŠKcŒš²?—^Æ,|ÑCþ­JŠ_³*q¤ùŠ@7ý !É9''Ã95 B @ iZT£†‰R¥D‰$H ø@Go}ýg}ýx4Ü›òÕê=•PpÊ'Â¥ Üéu'Ruææe7@-`¤§ªèn¿(œZ¢ì®êkø‹ÑWÒ/‚â¶´n”nÔ +E”Ê‘%S/ofH9mVÔ!6°¢}ƒã½‹-°(_ÕÈ’â]mÓ«œó(“ßÓBmÅë2Ðe³ûþ`Pê54ÁÄŸ‹KðWVÓ‡_ÃÑ…’ªÖ›"üý‡ ÝÊ™f$#´©>‡JAS-ñ[‘jù#Ô§„¿V`¿ŒŒ,å¤bÊÊ–¹O8a—&æsœ™®C•[Q++‚p7Ì?ç@OÕa”0ž‡óн1Ê× èM=q"Þd Ïð¦M~Æ–0١ΫÀ±Þ£N ãÙuÊþ£ˆâñ, ã‰ðˆ_Œ÷qîÕöp‡º{µ=“Ù=“ÙÀ=œ`rj9'&§&¡h B„ @¨iR¸hÑR¢D‰$áT½÷ôà÷{C{ž†è3•ö\CÜ™œa]‹(Ž—w}ÿ|u'}ï:óru|föfæfö{úÀ/ÍÎ7t=TÒÕÍùzNzˬâU”U Gê¿)ƇƒHÿv…AvyŒ–HÕT jÞ "­Ðo¹LÓ ²tP^˲4På85—[©ŽˆpŽpm>>Á©·ŸûÜ5¿uT˜~&£À©jå!²JGF9θoͨ|/ÒvˆÁ?àAA ÎPNP$,%Heæp•ʹô›zLu”"‹d×£q¢B=¤ »újÛþ_Üf‡úCOÌlµÖ:þãàø–`t¡&`§Ì·p‡»SÙÀ½œÝÄ/t÷häàÉø| »ˆœ!É œ„! !„!À•(à£UDñ‰$HA³Ûލ;;ïyÝß{ðk¹7åøy1®—Φ©â¥u)á”ëN¼ëN¤ÄæoæoæSp¿º;³K±¨Ñ"Nw­o/€‰€ÈP†R%‰uqOÁaÅL ‰`ît½Œ¿KLÁâ2=ÃdÍ‘cxåVÍ1®€ÙF*<~@5‘ÁÀFY%3«*ç¼Ê…å÷ЛC¹at#URgR(úñyèÃõ-R×qî<:=£fTË«ÞxsÎBÆ@VÄO„¯)áö””𔔘ˆ‚B9Á9Á.nÎ|I'÷"fÒz5Q_¹ D&„¨ šÁºÊ÷™|ºØéæoΆFˆÊOv§³SÝÃîìÑîÑÉ©ìžÎîžï€Ý9'&wrj“A9!9!9!B„!†µ(”J%JÒ¥D‰$HAC;»ñø4»óraò0Ñ)­È„@m- sy$´zš}yÔ›¹i‰Ìªó¿t¥¼+>\æ= Ü0ŸƒH(GPÃÌ$Z[Ñ †ÿ”:FÅŸ£F4.ðòÚãŒFÉ@Q´‘2Àq_vw€D@ `À—(Å2Žr®p­î˜X¿ü±ÅjTAÉñ@/¯ÍEyFÊ c3Ô4 7P³ƒAÃÌ”`í¼µàÀÃÔoV¶Æ‡4Îrx€› ÁIMÝc)×ržÓdVÊ´ kÄà Í6‰H˜Ÿ0pÎpŽrÓß ÀzÇúmÄMëýFF-²þøK?û“ÓKñ¡ðÕ™g6•‡Ö8g#Æ5›©¯øÇ_Ü|ÿÎ?òõþV-îáw {´rhöpMOdöp‡ºrNIÉÄIÉ=š9'$äžèB{'$äÐNHCAP„7„6„! kN¥:Ö‰$H‘ ‚ ‡Š¨ìï¼pS¿7f^8œ­ “-7QîÎUõ'Ru&þe7˜”½¿¾g¥V1—çÄÕÓµløÿRÉÿ^½÷üŠ+õ0dß\J ð1Qo- ¥UL®VVzß5gL€!PTf(ªéµ$¬%:”…l¬°«_V„%çQ¼Ä—ï½Ð›¸Djç5§Ãf)ÿ÷V›[°AÄ@¼ Ô³2!‡ìJ7§ÞWĉñ‰ñˆñƒãÆ Œ"âÛßlž±öl$–¶ ïü!#MÙ—ÞxÚýÍêðÅpzÉ‘Ú{£Þ³£Þ£ï­Kò·J8 ¸0‘,ùÆTQ9gºrNIìžÍ„÷kû5=ÓÝ=Ó’rNN÷Ot÷OvŽIìžÉìžÉìžÉìžÉìžÍÉ윓’rOt!=“Ù9! Éh'&ƒ”7„6‡(o áo©··£Æ1œÜC0Ãw߬0Íɽ7&ïâZ1£“ÅgYŸZÁ]Ô²ß\KrW!è„(+>¨ÊŠ3%!éQB†ÍQÒE.VÁÉn)\Úä8–ˆÁ“­çÝ <Õ„¨×‡@2AÃ:.Fÿ%£†š ì¨[a”xžƒG¾D8‘Ö,YȶMç»H\ÃaunóÝñáŠà)†îÍ4ü Ûoÿþtn‘AòârÏt䜓Ù=š? îží>Îîžé“Žt÷Ot÷NN09'$äžÍ“’{§ºžÉÉ9'»„9! !Ê„!¼7†ðßS€ãtuc£9¸@NþºL0A=÷ë èoMù¹:¦ ›ÇH„.áŒ[5ƒYA+f éš©^0dy 6Ëa–¥JÝš€4…y2]d(ÞéU;€µ‰ÈÄ›õ šŠ&×&Tá;:1[mªõV4ÑUylËâªòLHNܹ…$AAQEÿø"@Yª•Li¡ã ùnÇEgP°ü¶¥!æÊ÷Î’dXë‡'ã=Ó’rOdöj{§»O²{8º{§»WÙ=Ÿ’rNIÉ98ºrh÷Owrk9!¨NHC”!BqCCCàïãÎ1ÑÍÂ=ýt˜ ‚`ÞnMé¹7e°]è·²fPÔYsB2îÉÙs5’Bt˜ÙtÍýu ÖÚ úš¢Y ÜTÇ*¦è² lkF¹Ô€^a¯º:Nšgs¼ñ^rº8‡†Wü»Fʼ…Ò×:fÁ Tß+¡ØÇ–"ÈÕ©U ‰Šþ†+È/­ó´œ³Ý§“O³€{µ½“ÙÂéžÉìžÉìát÷Ot÷qÝÄNhäÔä„䆂„!B„55'GF;Çxï´s| ðƒ¾ý`† à›ÓroÌ `Žgì*("Ó(Ue«j-øG¬’²‹%ŠºiØíÀ<œÆ0|:ÔÙ0í æC/¬¾¿¬@µj#åÊ?sæ)ûœxãj¼ŸÁt’Æ0ŒpU ¢\ZßwZ0™`ðÅöž_¹VÕýæô¾L óÇ…T}ä„öOt÷NIÉ=“ÙÂ<šžÉìžÎ09'$䜟 öOg95 ““A¨h! „! ¡B†¦ƒ¨ð.®®ñÞ;ÇŸ¬g6t÷OwÄCðAó{vÁˈ.únUªsP2+æÁ«Íä±ÙÞH»>¨á£Ñ|jrè—|è³›xO­¾›ùù&7vˆÕ Ù9·áª3wT‚øN‰ Æ“R† Æ\öp¤©p²C5k¦`ê2ïÑÃÚÒ'=‰öå ²Ñ»–Åà ±'¡¡ øSf†?}`z$iÚáñóåê`9è—@:íÊUZË=â€"Ï”ctÉ£…Ceàï¾xo=š=ÓÝ£“G²{4{§»G$äÔöOdöOÃGº{§º{§»à€rNIɩɯ$äâ „4 !„45!¡ ël¹o £ãÎméÍ=ÓÙ§¿¤üø ï¿8{ïÎàƒxfäÞ–ú’ôU*TCÁ¸Æ’9oʬºkÂ]«q™ÊW, Ó‹ªEX>QJ@>¢Œ¤äØ=ã칕|wa*Ü×þ®à毗¾gwŠkä[¤Q \O ñ1›"<ýµ)É'.eu!„ÒóÈQ„Dˆ³x¨ý>‰ 4L€ŠÂÀ‹ÌFÀ°¨àá*¹ÍrÇ¡¶èè-€²\*f§,(Ù¸­¡#qqpøXÀ ld[ïô¾ØlqFã—ƒo4÷1âÏ¡›ˆ8L#¸Ê@-–m&IRÈÞ)ì}- T`ÁX+ F¢½XàÑy7‰ý£²náa«Æ—Ièš¼Œõ¬ŒÇ6Qj‚•Ák³æÄútZ:”9Qr©1Ð5Xe'£äNt;&´)„/Ï›ðOt÷häÔöOÃGº{§»S’rNO‹ï“9598!B !BÐxtx]´sh÷NiÍ?-?Ÿûòƒ¾ü¡Þ7‡x7›“ 0š‡•pñ ä2²;ž­x&6:î­5n ŸScL4 Àä…5²Bè3(Ò#*=Q—ÁR¾i~;iªÛ Î_ m¤d%,_Gô.&·nplŽYW:²Å÷!þá…p}“É=ã `4[·T‰‘¨îü†H7ŒYP^ñ‚ü 4ßÚ­È2S*ÁY®ê ¼-Õ¨A­ÖA ÀmµÖþl+9eµ±<ÂpŠ]³ñœÝ S{$¹ÒEµ÷ºÄùG"_RtÆw¤à _Põy‡·ªÜ¢^ÀãOœ}dúi’KKØ„‚µ9)Ì‹6íVÍ2ÅüV­Žë´  ¯ÑÜz`¥Õ’ï4©m_Äȸ…®=¥]•±tˆ³\‰*ÜkÉàE‹wÈxÿáÁMÁ„‰gϲ¢>ÎîžíNOƒîžïN´h èB !B¤+—­ËÑkF1ŽÑŒyÇG4æøOƒ¿}ï¤AóznÎw­±xçc¯ BRí•1YÚÍ¡°½Œß9vbˆÚ i¥#S§”2ò–¥#¨ÅÛų’ø‹òî«q¨†&&*ÄÂU‰Ö=éýJ³˜ÉÊOMâ|%%tQ‹¿ã̵•ƒ¹ k‘’µØ…È‹…[À§<¡’à#d-èƒûýö‡`|øî/4Pe'£ñÕœÓé+ ú t½‰Xx·0yfi¥«H‹ý?˜ÈUg€ýwä]Ô-{ú«M1Ô+¢öOg{§»‚{'²{8À÷|¸œ ¢ÔPŠŠƒA„!0u ã]Æ1çOt÷O˃÷úÎ~ùÎßyÛí}ùC¿}í¬!ÞæôQï};›^”=«½Ðš÷Âj+¾†ªfy R«kj¬–“(Ð ‘‰A@Qš…l/9OM4ˆˆˆ”‰ˆÖ X6€ap—„j³oô•T[ò‚¢ZLÀ³ £ûðTÔ\׎Â=‡© ðØ:„^©r!y>0ÿSO DY&Ç&§²{8»€rhäùñQj-E¡ ƒ0`Â`Á¸0`è:^—¢Éf‹xŒg7öi÷içßYßé9ûñœýøéæ‚àÞnKô4õ9Ü#R³zã9"’þ[ëÒS{àµï€ÿ¨P>02ž2¾2¾111>0|`øÂñƒã ~=¡–¬©,0yU(޼šNEÖb~üzÒ|ÔoEÐXjbÆ•>ªŽÀôò£ÍKí¤I˜mß&ÎZuîöG Ñ´ËOÈûM§~ˆZŽážÉìý (µQhQhQh1B 0`Áƒ 0t:\½-à꺬XÅ‹¸ƒùð~ÿIßë9ûðœýøÎyÍë9§<;Á¼k  þ€VòL Úaèò¤M±ÖQql#p‘ã?²)^*ÏÿË|ϧ€…ù‹óÀ…¡EQEQEQEQEQE1Aƒ0`Áƒ 0`Áƒ. ¹råè²Y,Ñn—¢Å‹1bèQ~5çOç§¿ÓSŸ¿ ÏߌçïÃOå¤oð3bŠŸúÁWÁü'—e1#ðÛñþæžzâßdvŽUpÉ©ÐJF8)´}—×è?™esá=ß$Z\ ¢Š(¢Š(¢Š(¢Š(¢Š(0`Å 0`Áƒ 0`Ë—¥éz.Y,Ñz^‹,X±‹\"ô÷õàÜÓŸ¿ßí§šsèæ˜!äÑû°À(¢Š/ÄQEQEQEQEQEQE Áƒ0`Áƒ 0`Áƒ.\¹råËxBÝ.\X±bÅ‹,QEQÇ¥éqNßiÛí§›G<ØÍ¯¬ÈøKü+½[ -rßõœ¦)³â¨¢üEø‹BüEQE¡EQEQEQEQEQEQE0`Å 0`Áƒ 0e˃.„¹d¹l¹rÙrÍ ã,X±bÅ‹QEQÇqÎmþúüÓžsÎxœoÕoÓÒî°Ö˜gkß¡Òi¡| ˆ BŠ(¢Š(¢Š/ÌQEQEQEQEQEQE 0`Å 0`Áƒ 0eÁ—.\½Kë-–Ëë.\¹qeÅ‹,X±bŠ(¢Ž8ãŽ(»ïËWž~Zp¹Íü§¦¬÷x˜\~#ТüEøŠ(¢Š(¢üÅQEQEQEQEQEQEQE Áƒ(0`Áƒ 0`Á— ¸>.[¢Éd²Y¢åõ—\X±bÅ‹(¢Š(£Ž8âŠ.ûó[žsÍŒþßñX{a/?DAÚ«à\EQ~"ТŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(0È0`ÁŠ 0`Áƒ 0`Á—\½Ö[ÂËë.\¸±bÅ‹,X¢Š(£Ž>ü£Ž(»ïÎ.ûôŽ8´sMŒþÄm—ƒ¥¸U4þM"(¿~"Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š 0`Á„(A ‚ ‚ AÆÍ<ÓÍ<Ú/„a…‹QEQEqÇñE}úG{żWsûŸÅkÓÛ x¹úBÐ¥ (¢Ž(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š/ò 0`Áƒ0`Áƒ 0`Áƒ.\¹råõ–ð…Ëë.\X²âÅ‹,X¢Š.úEßH£Ž8âÞ(£Ž(£ÞsOì(û&Qp‚Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒ(0`Áƒ0`Áƒ 0`Á—^‹—¢åõžiæ—Öy¥Ë—Ö\X±bÅ‹,X¢Š(£Ž8âŠ(ãŠ)Í9âÄ‹RÓÉø“"‹ñâ(¢Š(¢üÅQEQEQEQEQEQEQEQEQE 0`Áƒ0`Áƒ 0eÁƒ¢åè¹æ—ÆèYrâÅ‹0Š(¢Š8ãŽ(¢ï¿HãŽ(·‹xñü¢ˆM~bŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š( Áƒ  Áƒ AA¾¹æžiæžiæÔóKŒ0ÂÅ‹,QEQGqÅQ÷ߤqE¼{Ǽxþ+,_eõú7æ@™CEQEQEQEQEQEQEQEQEQEQE¢ƒ 0`Áƒ0`Á„ 0a@y´_¹æÔa‹‹Xà ¨(¢Š(ãŽ(¢Ž8¢Þ=ãÞžÿ)üÅúÿËÇQEQEQEQEQEQEQEQEQAŠ(:€‚ ‚ ‚ ‚ ‚4†¼Ú}Z=Ž¡†a‡ã€¢ znMé¹ЯЃõ?ŠŸHûL§~’ZŽáQEQEQEQEQEQEQEQEQE( ÁƒP`Áƒ @ ‚ ‚ ÔæÔõO4óO4óO6§›C 0à 0èŒ* ·47&äFe'ü¨ì§yåÀŽ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒQAŠ(0a aAAA|šz'¢z'¢y§«€0à 0à ?" ¨ Ü›ßʶxº¹D°#‘EQEQEQEQEQEQEQEQAŠ(1E P` a ‚ ‚ ƒ@ƒCͣͩ枉|Ñ<ÜÐa†a‡â€ ;;ïnMïåjС]@I>à”QEQEQEQEQEQEQEQE(¢Š(0`Áƒ ‚ ‚ ‚ ‚ ƒ@âÍ=0à 0ÃȨޛ“ ùt-䜸ÖÓ ã {ôªMQEQEQEQEQEQEQE¢Š(¢ƒ b„A ‚ ‚ ƒ@‚8Í©æÔ¹êž­OF§›C 0à 0üPUg}ï¬oMùþW†B»"(—Œdµ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š QAƒ 0`Áƒ AAAAAA hy¸êž©êž­‰æà 0à 0ÃÃUg}ï;;ï}czoʽHuR›ù\Áj+½‚EÃRŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢ƒQAƒ ` ‚AAAAièÑꞩꞩêÔópa†a‡á€ ƒ³¾÷÷¾±½7¿‹½âèc™%éÆ&1?K뢊(¢Š(¢Š(¢Š(¢Š(¢Š(0bŠ( ÁŠ a@‚AAAAÆÍ©êžiæžiêÔóhaìÆa†aŽÏÏÃ*ÎûÞvwÞúÆü݈ò"ˆóÿ.ò®Çò}JÕº~–”QEQEQEQEQEQEQE€Áƒ0`Á„AAAAAy¸êžiæžiêâÙŒ0à 0Ãò¨ 7fü'ãUü²¿š4Pã`‘pÅ1EQEQEQEQEZ40„AAAAAAAy§£ˆý³ÄVa–~8ì_wf:Ð~ÆwòÕ6¢É0FQEQEQEQEQE0`Áƒ€Â ‚ ‚ ‚ ‚ øièÔõOV§¢y§«€=˜Ã 0ÃÈ %ß”ääÿ-öù ÇH1ðçEQEQEQEQEQAƒ P`Á„ AAAAAAA©æžOTõjz'›„a†a‡ã€ ?~oO®×‰ò/øÂqK‚›ƒ OÓQCQEQEQAƒ1E(1E a ‚ AAAAq€õO4ôjvÌíOGta†a† ÝßßàÐîKa2a6!køÃZ÷ôÕVšc¨WBŠ(¢Š(¢Š(1Aƒ(¢Š0a ` ƒ@AAAAA`=SÍ=@ôq€Ã 0à 0üPr~ìݘȸ¼.! ×ñƒ`ãÿx½ý;EQEQAŠ 0bŠ(0`Å0‚AAAAAATóOG=Í=\†a†aø@ûwýÙ½ÝÝ(õVø ìuýÇÀÿñ7$‘•I Gê¿Ô)ú`ÅQEP`Å 1Aƒ@`ÁƒAAAAAAAv>6FŽÙž‰èãìÆa†aøàùܺþZÂD4ÁÆQøBû¯Ó‘Š(¢Š  Áƒ P`Å@aAAAAAAh| Í=Ñ=Ñ£Í=\(à 0à 0ü0þö÷ßÒw÷ßÓGzce•„üH]ÂÿøË˜O®ŒÒV% ÁŠ( Áƒ(@Á„ ƒ0‚ ‚ ‚ ‚ ‚ ‚5cˆ©æÓèž>iêã†a†~ë{{ïë§»74,(î>†ý˜¾N©Sº·@oã$¸ ¸0‘$ýA•¢Š(¢Š 1E@Â@ ‚ ‚ ‚ ‚ ‚ ‚ ÐípìqÑ£Õ£Í<ÓÍ<ÓÕÄa†a†:#÷÷Û¯îð}½ükñt?©%"òn ©[;¿O£PbŠ(¢„:AAAAAAAAbÁöÌí™Û3¶glÎùÖífYe–Ye–^¯oÞ}œ:û“{2¡ÌpŠÈª­þ4?é$eJyÿoEz!Š(¢Š(0`Å A ‚ ‚ ‚ ‚ ‚ ‚ ‚ @âÕ<ÓÑ=³=Ñ<ÓÕÀa†eøU_÷\Ýœíb¬‚òßÌÝŽ¿¸øþ"éLåNVþ P`Áƒ 0`Áƒ aAAAAAAAð=Zž‰èž‰èÓæž®a†a†Y~U~þûuÝý-黹[ßÆÌ™:àÈK+ߨ’dXë‡0`ÅÐ0‚AAAAAAA¨>ѣգͯæÓê³Â 0Ã,0Ë/U{ûíà÷~nMÝæûާ¢. n $I?™Q^ôß2Ý~Y$%ªÿP§ê0a0‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ AñÕÃþ©Û3ÑÀXa–e—‚¯oÞ}šïo}ý¦ö†ÿñÏ<ƒ1¤:ãû•²x*§ùú”ã0` AAAAAAAA¨>ªy§£GlÏTõOTí™Û3ÑÅa–Xe—Zö÷ýNÞÿ®7õÜ›ÿÇ@c­gÒ0ªKû2§OÕ(E@ÁÐ a0‚ ‚ ‚ ‚ ‚ ‚ ‚ AÆÑÀ}¶g£[Õ¨è2Ã,²Ë,¼UW¿¾Í·¾þó»¾þórr§øÚÞ)„d?Ž“ýmoÂ2© ÂAAAAAAAAAñÕÁ}ÑÁý\(Ë,2Ë,²Ëðê¿å‹mÏ»*q¤þ:¡³*q¤ýR„P0‚ ‚ ‚ ‚ ‚ ‚ ‚ ‚ AðÀ£G«Ošy§›OªvÏl2Ë,²Ëðª¯çw}ûBö§øÚÞ)„d?ýmoÂ2ª Á„ ‚ ‚ ‚ ‚ ‚ ‚ ‚ ìh> z4z§ªz§ªz§lÏGXa–Ye—áU_ÞÎû÷ÒRÉ!(ýWò>ì©Æ“ùÆ„P,ãÿ/_åb±×÷ÿÄAAAAAAAAÚáðÀ«O›ßW ºl²Ë,²ü*«ùÙß~ò[Ÿãkx¦þsK7¸/AAAAAAAAv¿†z4z§«‡ýS¶xße–Ye–_…U~7»ï¿[ëûÿâQý€hÖ„‚ŸÇæ:þãàø›@‹Ä~«Ÿb†¡AAAAAAcâTóOFŽÙ³;fvÌíÓe–Ye—àÕ^;;ïÛI³hÍܰþ@®YàÈ^'Âõp4AAAAAAGkÐ|0èÑêžm>‰èž‰èཱིÂl²Ë,²Ë/ÀªõÙß~×èˆQœ`Gþf˜‰Aüƒ¥«›¾ÿÎBð>Ÿ«¡„AAAAA¯AñÑ;fz´ù§šyµ}S¾x¾Ë,²ËßýŒ¿«Ñ~¹Ö!Ò¶Õïü„J!Fr„X£ÿ5ҙʜ­üAAAAA®|Pú'lÎÙž©êž©Û3¾g£‹ì²Ë,²ËßýÀªõ~ªÀš˜þ}g‡ý£¾_$z÷" ‚ ‚ ‚ ‚5®|Pù´ú'£G£ƒ÷ϲË,²Ë,¼{{ÿºÕºò?÷Ž8ÈÇO3‡3Ê2“w•71úËÕ§Ñ;fz´ù§šy¸÷ïÏK,²Ë,²Ë/Z³ƒ:Ä:VÚ¢=ÿ‘‰\ÜH’FTQ¦"P~µ¥«›¾ò ‚ ‚ ‚ ‚ ìCâ¢vÌí™Û3¶glÎù³Çÿ~ZYe–YeâªK|ošÙTä6Œ=¥o ²HJ?Uþ¡OÖnAAA A‘™òoÝÿÏÇû,²Ë,<@~P?’†ïû,Ç_Ü|ÿ?®Õؾ+«Èb ‚ ‚ ƒ@Ð8Aèà^­Dï™ß3¶g|Îùà}óÁûòÒË,²Ë/Ü(…ÈÿÁ4ç8s<£)1‡zVôÏÝw× ‚ ‚ípƒ@ø@«O›ã{ý–Ye–]h߉Ó*&–®nûÃ(ªY"ã?“ôn˜‰Q4µswß–)º_ëï釲 ƒ³ ìh Ôc†;g_Ñ;ævÌõOTõNÙóÁûçK¦Ë,²Ë.•›¿åZ"»q¸õÅäï(ý¾g«‡ûæwο|ðvYe–_…ÎN í]¿”®äÄþ ¶ëÊ›1ƒö–®nûíø`¢vÏ ú'£‡ûç‡Ùe–mø`˜ŸÁ6ÝySq¦"P)éjæï¾† äéÆž… $„£õ_êý‹oÂCwÌõpÿ|Îù×ïžioÅÃVep2õXF˜‰Aü«¥«›¾ó¬ IGë¯( $„£õ_êý“l¹Û? ÿí™ioÉ}»Çû¿žGþñÃÇù\éäl ³Õ_È4ÄJÝZ¹»ïÄþ ¶ëÊ›1ƒùgKW7}÷G÷r/É!œiˆ”¹´µswß8¦ÝQžLD þ\ÒÕÍßÛ¼pñß»ùäïÛ:2qMº¢_ûcï»ðÿ Ÿž§1º$UþkØ=ybµ¤™ˆœÓ(?jijæï¿RQ5üJõïómK7©»+˜dVÁ†Atçʨ:bCÔqûI¯»ðÿ j¬g»Aú5’BQú¯õ 7%’BQú¯õ 8W?ìø ˆ"­¢ËL8§5ï ý'Ýa‰ú8¨þ` VÄ ó¢ú>{ß_X>Oùž¯Ÿ^´Riˆ”²´µswßÍKt™\es¤­zªÿ<ø¦+èùï}}`âü³0³H%I Gê¿Ô)û}=ﯬ<ävÇÄ,’Õ¨Sùææµ,@Á¡h9±ñ $„£õ_êý„¾ž÷×Ö';çù±4WÝøÿ…GóZ– `дœŽÀØø…’BQú¯õ ~»góZ– `Ð¥²’°¢lŠÇÿ€Å1êû¿ÿð‡.£“˜¥}''üÏWϯZ)&‰:Á!’ýh¥d.J²u’ü3û7ª2‡(’BQú¯õ àxõ}߀øAšKØx– @ô E/Õ–ËL:§5ï 윬?ðlØŒZÜRÌZÉG.£“˜¥}''üÏWϯZ)Ç/þ?P݉‡tz¾ïÀ?ü.•ðÎÎ ÀÇåù_ ìà¿þ xõ}߀øC—Që9ŠQ‡Òg„—‚¥­"ÁPçd–BÉ!(ýWú…?G\ºŽNb”aô‹‚É]X­*3—å|3³‚ÿø`1ãÕ÷~ÿá¾USr«¡ˆÃv´ó¤† å™[õ.ÿèI˜–ÙòÌ#9óÇ«îüÿÂ?|®¦åWCŒïpZÇ$Fªh/Qµ:±ª|9ò¡ñި͂=_wàþùÆì²SF¼i1ÿý?Lùr›ý/üLÀ0¸üuyÌÐCòÙú÷¿ÿð£Õ÷~ÿá;œnË!4kÆ“! ¢± Pû™1'A sY0ŒÃÓŒâh¸ò,ñI/Ä—¾USr«¡ˆÇsÙd$kÆ’—…à Æ,4î 7ò}JÕº|D©†a=äz¿ì>¸ëmHJNG´l Õ¨Sù“ÿÚ c€Á¤3‘ÈÀi£æùR¼±²€hÃr#R®@¶Œp€7‹„UsHJ,âÀR‚¢ÁΪ¨O*@žöW\'­) ƒ °F«HÝHXì€ú`Z&à@ɼÂTðß'€D:€C 'šŠ1¦H~À=½LƒèäT`y d$àÀ°NX—×€83è ¯(0à  R‚@ 'h²ˆ…(€(ã( réhðâÏ<óÏ<óÏ<üËf0À   €ƒ @A B€ Aá•,°#%4ÓI 0à 0Íh²ö” R€€ÀIR°@¡JƒÀ €$N4€BÌ £,XÁŠ:È‚Cö9ø#J`<À€AE(ð €À J Æ Ã 0A €: p5C?=˜À&­û¸,@HðŒ€†D€‚@4"  €0B$D 4A<3K$á  R€ ˆ#A€Î,±KaÐB  0CË "€±M$ðO8ÒÃSŽ(Ç BÁ ru0‚‡ðÍ<²8Rã b @ï0ƒ± S pGS8’°€ ©Ê@B±@ ÑNøŸO AžƒŠ\Æ$Â…qÊ,3ˆ´Ð â 0Ä$ÂòJ<±ˆ$ˆJ4‘O8±‚I@ÑÁ“M(1€@4¡E0$Ý ó‡0 wÁsó$$¡G$2Þé„,`Œ,rÀ(€ò2(3ÅóÎr€‘ ˆ8„±À(‚4ÐÉ.uF0‹<ãŒ$Ì(Á!`¥„©(aD |Y§Á0ƒÍ“‹ˆÜã#M³ƒ,ÀÜøh0„(O<Ž 1†(BI(CJ8,$Æ€b(€ QC 4£QÌ7º—²Gq ‚ 0%*(HÀ%ý/pý0Á ,£Ê4ÁÀ‚ˆpÂ4aH 1$COR ¡Ÿ¿K,Hq#Ü¥GkyxžÕg“2ê&šjõûóœ{€úwO¢Ã ¼ô56Ùò= ýþ*€^‰¤…6«æö®r^kï§ß’l¹ÖN}]6¤…8úiNÏ3ÖÔ¬NgÆGòlg9º!Ù¸èÞ²tö+ãçµHM%Ù-êÍ‚a$äýö'ˆ~—³ñYº{›Ëä¨6CèC×øRÀaaF8'*ÍåòRˆçÉëR-Ç¥»Úü~ûð.¶è2è^ÇsÏŠp8Ú Lq´Y§øVŠ¥9´"s¬ýíNw[üS‘Á‡bgï¾€6nš± §â²9žô ˆ²'·¥¨dP{þþ0™ŠLº6@4¢ÈíNüË{üW8`y>üˆnÎÏ®k‹§¹J[VnpO¯ïç‹2«Þ ¼#^¦šý>*ÄÝ£Ç.?~@÷}Áô˜ú,q‡¤üTƒXG˜¿ûüFXXÒfûïíI lÖ<šw?~\7OZg轇¬RžTÏw÷ø>ÄÕFö¬Ý=©äëùø¦ˆZ#¸”2 ¨=þû‚²nˆ{BÄéøS‘œQø?€Ï3y⌖y–Ú³éø¥}SÚ=jDj=}O¾Î\½¨HSf+ŸžÔ®g!ŽQ~“ëüAØõsÞüe¬ýíNñÄxfÿä_$å†;¿}‰ÙG²i’Ó„öÿiB7_/àFuD!vž40ŽÌÖ}?0l ?¯¾æ|Ôö^µ›§±Y¼¾J‚VÈ=ü0£DçË·ÒÞÏR*DsvCó÷Ù‘áòžÓYó?5ë¿£‘;£çø  \¯°îózý–Éèþ)Á4Aè'©ë÷Ù…Äìü+G_ŠÈçJÀGãø1èϤЅçX¼þ ‚]dq˜ö¾À‹„žHCe;Eds=é'#îùÖ³ßÚ©‚òX¬Ý=Šy:þ~)BšCÙ?}ç4!ëîKE‘Ú±ô÷)K˜XêïÒDpÙ¤!$q‘‡›Ëä§ ÍøiKîÞ‡ðˆy´L«uÀÑSVŽWy†r0ا'°­é&]D Š3ö©r3’0ýÇ€ú•w›þ °ô§gyÖ´òzÅ)ó`¸%E­BT©OêjÕ«V­ZµjÕ¨½’ÍÊea/½IJ¶½¿%5{ Õ¦ç ¤dHNä@ 3%1ƒS«¥ * ,2‹\'Úe ÜèÈô~‹aé?åüBŸÀæ½ÃYÏzqØöºsv`‡£c´~áH$Ï>l×ùžoï³_æy¿¾Í™æþû5/âx~O¿Âx~Jÿ áù+ü'‡ä¯ðž’¿Âx~Jÿ áù+ü'‡ä§Ñ9DÈvÚþ §N;12K:4_¦³ëí­ª;ôÓñó¡_ž6ø¡>Í_3¡FºŸ>AF<»yób¡X# ì|íBèêNÌãG… 4ͲÏÆ•iËãd¦ms¯ 6ri>Èxx¦Z£\¹wm…! äcJ^a+Ñjª€« [íá…oC)3kñ¬tí.†‚8qˆjÕÜdÏûáDæƒvW‹cÐ?€½JwŽžï¢¿zŸšv6Wx|~à'—’È0D.š,ð:qñ{ÑÛ¼Ü/¥Þ[~ޛלíç—M} FóÒ1ç{yåʼço<¹Q¯ýßÂúõáí¯àáñ¢Üèém¤öÞý£Ívøž´ÙùÄÃØ˜ØHm©XlÀs-¦f:f‰‹j/+kZÞÕ=n0NCf¤W``#®°‹tH Qj± FÿzÈÓ†E3Ã_§“¥; ´™îÿ )bÆïÌÆkžÖ‚Ɇʚrc3®ƒcbi“9u ªUUUgïr)Ýl ôXëDAÁ¿y¤EÇèŸá{N‘”z •~ù3À[Úù¦Êlµ‹Ïà¥o»øñìm¸¥øVO4¬^~{R‹Èw u„ÿãÀI'K©:ÍÎ5›§±Y§ž^˜Iâ‡ÏüxHQéG¸ŸŠÍåòR‡Ù=ãþ?hr*ÚÍfòù)\àǨüÒw¹ÿd²Ò˜ºûS„æûsïíÁŽÂDP°.Ðbo~ûÝÞˆ‰YÊÓãJRÞQü$A"GX›#®j\WÔwH;§«R '„e`Ñgï“çÐ[ÔŠÈæ{Ö}O=)JrvSãöîÅNäÅ¥£¹®/–NõÅïòÉÞ¸½þY;׿Ë'zâ÷ùdï\^ÿ,ë‹ß哽q{ü²w®/–NõÅïòÉÞ¸½þY;Ô˜ÃJ€X-GÙ܇½+OKöÖ¦F§$&‚R©1‡R„ê=Væ+ûØtéüÖG3ÞžG³ýÒž uön2 `0œ¡¦,O¢z9p'Ñ=¸螇Ž\ ôOCÇ.›ÐñÈØŸNðx· ôï‹pŸNðx· ôï‹pŸNðx· ;w¡øzmp*è€Ä0-Ã…röTËG¬©”öxoõ)D¶'Ô¬\ßÛÊÝu8»yw…twKÂ:;¿%áßÇ’ðˆpîÔ8wh‡Iuó­Go~Ÿmí½ø~}·´v÷áùöÞÑÛ߇çÛ{Go~Ÿmíé~.†þ4s<ºyÔêp½XÛÎý iîùæõg~’.h£ïC©x™$´‰‚’[Òé5!,¢"+nÌ]€·Þ Êža{Òæw?ï}¿n…``É$Ø3^1·À¯ÛàW„mðòZð÷ݯño}Úð÷ݯño}Úð÷ݯño}Úð÷ݯ(ñæ­B@ ¢êRg‡ ¯çÎôˆDKÔm(Ðjf[dbÝTÁÈĺ@=à]U¿Þå—DÄkîwúiäø§q·»ø3ZNå &¦à áK_ Ò³RgÅx °&Ä€[ï›ß,+è±Æ“ñ^™ÿ[oïô˓⽠÷ö?ãׇsè8èäWÁÿ =÷þÓÉÒ†âíþÿÈ,òt¯'ÿYäé^ÃîÈ,òt¬ù^ïàÕ[…%3”ˆÊP€PÄDMijüøÂm·ØH‡ó}«ö§¸{ׇWø4Øâ£Ó®@ʶ·gG•€Žju$Iå­ "5‹'1„êÎ ²2Úr¸Ø¢ØH-@b\؆V•p¹”¾)váoæ¼Â¾Ï_¦ß5áÕý½§DȶƒŒzWpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8Wpþ½8SJm¡r=ŽÅ Ʀ÷ÓŽ=hV÷3ÏȧB*"ˆm„¹Ï­ÂDqÈ¢ åÑGH®¸ã‰'æV*e´1èCP‹‚Àí ¼’ ¨M£du³9§ošðêþÝÃŒ|OïÌñ<õäõþªyäùˆh_Ÿ)÷öuŠ—:Ô·<:ò©ìzþk£¿/Ï©Ô;vy~Nåpûòþ½*\»ðó±¥N“¶IH´zt¨ž_ÔTMcï.S‹ÑÄó¯øéD5m¹ë¿èLˆME$"¶¼±D‚° ²æ JÔJ C™‡i,Çòøôé‘8HƬТ. p¼›«/еÆÑ¼~CKS‰ Ua¦§’-üÞœ9¾këûx/EÚÆŸÓÒ£þ¹~ ðÞ¹¨†ÎþlPy_C§ æüiÓoJ†ç~_×…C~“;mÓµq<óµ}µ8qÒݸT7ó§ÇÅGKõ·çà IÇSXÙ}~ˆòÞi|^p0í;õþ½jã Aži¼!Q  Éra^VD‚"ðdâ X €è1 rL`’ÞöxجÞ§¼G¡ô$g‡ãûíVgXÊÅý»A¿Ì®x=‰ðúaÍó^_Û®TeHwU+Ïÿ|8pMljø±ÿ”É—`%dCPµô’¦ÞpüT!/t&ð³@¤ ¡ SQëF@€ `þfkì%¤™­!ƒe´,E€3`q´-ê·¡ñQiâ£óBCkZD¹™ͦd´Úžט:¥r˜}VzÇÓoš“]]¿ƒ"ÊÊÚ 8×mD|G‰Y_Î ÆÐ’§(Ú*6Ô€éÚb= …'Q_câ³püÔ“·æ=(Š .(’.ÙXÚ€œ € Up´£] ÒpápN db±’tŒ+jn (ÄÜo %›Ûø+0æù¬ù^ï¸ ˆB"ŒÊz'&Ñx…´Â ýì ²Q9ƒ•(€Ð¿¥\®D<ïíṄDˆ…Ä ˜”JñL…ÔVêªþÖ*LHr ¦6$¡bƒ Q¸—-ÃjáÑÜ­CÄ9Bá;NL(:gÅZœ=¿·Üe̼þ ÷žÿ¸Õ Eá`Œé/v¼:•‚Ïà¬òt¯a÷>ä/ï=ÿqªFWO¹Þ¼:•‚ÏàŽêíýþžN”l¶óíG IJï ºSÁ§Ak07Sl¡FD›'XWÖI‹TP‘æÌ%×¾³°Â8ÕØ ¢`YbL•¡^Kq¬TpU³¸ÇÑÍÝ pu ?Rþóß÷¤+MRöþÅxu+ŸÀ<6^ñøúèÄÖ~Ÿ‹ù>Ór ð/ÕØÊØ¬„¬ÄÌÀXõºÓ_† ¶—ÍbšS_Ëåéw{ùÊ”2ÅC‹´ ùûoRœCh‹ÛS¯µ7L[g£œ·¿(ÞÙZÍ0fóÖ'½Y¬¬Î”…q‡]mBÿ`Ðâ3b9¢ÿÄë–N”–‡É,»ÊGJLT5ÛRçZ·ŠFAl@K.ÀKJâî9€íµï=ÿqª@——š‚BœaMaÐ÷þ«ŸÀgç¹ôË“â½3ø1‡î^-ãVHY³}´yg‡ñó ðaâe%8ØjŽ<ävЏQ×Ö8ʳšêv·¼imi6]$ùÓÚ·‘êÅý¨ƒÒ2:’Š˜ŸjKwZVœ­“[:ß‘¤Ð‘î^¿ŠÓò\Èô\r‘ne®^\¸ºgZú;á›5i¾Ï17q<¹BÒ&åYÐfKóÁ½‹ö†lm­ñj°H‹‚. $B fÅ ƒ@³¢—"PC ˆ";"'íäwÞáñX ?€vø}çé§“â½×íÁ@Ô»+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ+ƒÜþ*t°aÄ¿ÄóÏ,Ôš'z¬ó½cY7_EËÉÓMêßÕ_»'R óB$ˆŽã×ø˜žpUð\À¥ <¯H‹L‹iIdÚói±Xƒ6Æ)Éb]7%£TéK ¶Ý"ѧNº'¡åóšväˆ!&fA´ä~ˆJHÑôW;‹«HÅd‡Í`Á€Y…¥áÀåƒæŽÞyŠr8a3ç—¦$ FÉk&bZ¡î¶ÔÊÚî åý¤‚K¨=ýŠÁä{Ö> ?€ì=xŸcé§“â…œSÛãöéÊõp*]ÞíK»Ý©w{µ.ïv¥ÝîÔ»½Ú—w»Rî÷©w|ÿÕ.ïŸáÚ¥Ýóü;VŽ¿ø³g_Š.°Hq‚êô÷šŠIÂKY(-ŒÚkŸžÿÌ#½éÂAÔDi”„ËÌE”\d``…BˆDˆMDŸO¤ÑòiÀˆŒ3§^·ÆoR@æ„õ7Ñ’Ò³Y4G³|•ƒÈ÷¬|äö  †äz”#‰)íñûv¡†Æ†¼×â¼×â¼×â¼Óâ¼§Çç”ygÃÂ|3oïáûpòïáà_æ_Ô¸2– µ¦,Rt¿¥/H=_:Tñ-íÐ \i º+NÃ5n©uÌ•êòþ¯E†W #eˆ—@¤*Wt+”=‡Í(ß6æ¹b깤ý”W>FÔ £å‡@JŠÀ° D"u!$$ÕŽ6bƒ ÅÇD˜Ã,҇϶éµds=ë>¾æ¼¶ßÁ“Ê(J.fñ }&F€ 6Çð²pÃÙƒ¨šEŒóE‚6Ip¬Ù&bñn:RæcŽ_ó¦ÕN²ô;xÆgè#_=èÇßµýñµFÙž·1ãÇfia-¸à“ðZáYLdöÜL#ÙöiCˆuFãÈ0‚͈¸˜¼ŒÇé3ÌïJ —³"á!&U¯k"B&£åömÿ‡!¶|ÝìE‰À„¯Q]C†•ÑHF…¡äO· Ö뽟-ËGzCÀR †Ã9 !,ýÈÉ_ƒÈ÷¬|…FLÆ/"7³YÏzÓÉñF omö;" ¥¬2·8*©^kÊÔm­¡›©O)xªë¾ŸÝ7êâî¸ÞøŸJS®ß$ý4uøÿÈZÏ?&ªROp=D&EÇ*HÀÔIa¥,k$k“ ¿f‘À ¦Ì.)‹ˆ HY¢PtÁíÂÉ o¢ÚÞµ4+& …ø ˜ÐJ~­Z1 E•B0m訕áĸ¥va”ìb<Ä­XàQ¬!ÆO<¶¥bYCKÀÈ*ú$Ëĉ¡$fðŠpy|5‚Ïà<ÿŠÈæUèq}«Ìl}Œ©S@·¾°˜t—MËí]`-bQó9V¶olöøÏãJºâpPÞð™tÚw«Ø\ 34¥™ ƒˆCI¾u–ßÖ3ßÞ‡ËßñÝT÷ò¡»»Z'×]>i»cYJcX‰1µA2xÆŒ”ޏìLZ!BE²Î&÷Ïí ÃI O^fXÖFB™Drü~(b•ƒŒ–d[IZ¼#f.ÆB²­ÄKmacŠ$T €` µ´ÓÑd¡2¡¾s«Ë£F2¶üý?º%°Ž E²¬CªÛKÚ¤A×)Ie#¥)œ²­© nÒ¡ ±_$à#Œç‡cãUcà³øs«ßü¬]}šË¯â‚0Xû£‚L,ÃqìŠØJt¢•G\·÷åΤ±rߤ¬¤ˆÆ™‰ÖÚô‘¨~†dA‹^¬Ò$‘ÀÖÆœ:m)‹+z,l(mƒp\–ÅÉ " (P\H·œÉdSkæ.…€Ö@MÝ‚èñ©™ TT@É»Œâ÷j:Ú`áK`LCd œ8¹Í²Â¡àúq¦‘Áì …….L[ ‚E‰2k­)³Ú,_†ó+¤êٌ툯­¥¤)„4i$ó”9Vñ@ÄÁÄm™ƒ' þ”Œ9=Ç+«Ÿ¿@í—`¦-¶??5›Ëä bÈž6çì[Ì78Eµ3 1t~U*ñŒ Ø ‘c¹Þü1Aî]Z q`µ¯ÉZ0n…‹$/ÌI?ò®XBciÌp£‚X;îåýÔ¬ÅP‘1ùÝ¡¨Á 4p9”R„Q²0úÔ)|[®\w£€â¦sšY’ÉY(mª*º¶/£H›b-bÆŸéô +HAÀ~ŸŠÔ«3›ÝXøÕXø,ýúX!ê õOš¹]ãØ¬Þ_%ÛøO¯ØŠ¨*Ø*è¯`¶-+Š’ôTÊyÖu›ÎßK¡²¨áK²4ƒ(%bŒì¹Í; nÊþø€UX.«`.µr‚e$‚šj>Ô’S/;¥ |…µþ% Ì»»P„‚ge¢ìL\½œ9†ßеâV… …,e@!"NfKôÕHl<#Õþ««Ÿ¿`ŽÃªÕ¬Ý=ŠÍxyíBsÚ]‹ö~Ĺ/«ÑÄ¥ÙߟG U².ôÖÛÑÌ‹jn d‘$“*¸€ýñ#±£]03ˆIrðã3ÀV$Ш‰Ëàî¯*¿@Êñ}ü(Ódì'¸Ø)œFja™0¡$I Š}#IàþqÜå½n’ ¥…™x¤õÓ¬“_v±ñª±ðYûõDúß“Ÿµ«óËО=‡º}‡ŒÔV·]²Zé9MÖ–Y¢èn…´Ì°Âðà ;¤¹ûà.§-@•›«‚¬Üð Éµ„–ÉN¶E¨%`Ö³ BFÆö×N {mL›F ™nÏ^d\e‚ë{ó¶‡VÅXÑB‚ äRaÁXh̪œôÅŸ\Å”‰©'SÜJqÑž–(To&ãc™…¾gõ’bëîÖ>5V> ?~Ѓoèꇖ¬Ö/?‚ü_söøaˆø8ÆjâNmoSÖý£j„Y¦X©¦a-aêÔ®+ûÑh8jš%B”áÖeÓÉ–§d¾ˆ´A@DŽRLPd@Õ½ùf…‹9ïËx5¿£øk FJÔ™MÁK€Š¬qE’€ÂT¥º¶ƒVFÕNƒl ’ÔÁÀ•àŒ*t‡;wó‡Âñ¥\ˆeܤx¡Œþ ;2y¸5£È”!p ¸Ñ`ȃXºûµUA@hJ’/ÒRmÔÀÀ .uIÇ÷Ì‹U£€Ê}œÿ \Ÿ/°Ànð,YÅ"ÔÕpù½o~Ã=oÚ§]ÖÞöàí!»$òýØš#áðC XÅ«LUb#pàë0gŽÐ âj À´Å‹zÄm£M¡ócYçhäî¼²òŒOá:êŒ`PU€²†ÛG„1lT5¸'Õ4 ¨½¿¿"Y BÅjÄ Ú­Q†”,´„;¹2…¥Qº¶°äÔ E¬ K6CŒi6ÿpóE´¥~@ß ·/|Hê52Å(E'``íŒJ€S¥Py)2ä¤Dd…y'6ØÍ¤4€µ"†%Á3 8Ë^"_ý_¼¢VÜÖÊ$2”Yƒç¥ËQЗ&â>ˆz4L@u^ó”Û2MæzmÒ dZ2íj±ÉióJª¬­ÕÊîþõÛœc;¹ctúèÄѹßÙö÷Ë™9$ÐíKÄëÔõ¾ä]£*´±=.ñÿ*ÞEÔˆ„·•.¬ºþå¦mhebY¥.ÚÁ;Þï“+&6ÇÀ (…¢ãíæœ¬ÌQ½1ç›Æh%^£8‰›ØÖsDÔ%0ÒQ K¬¥ìÔÆil?ÿQ½`¸åÖÃÐЭro˜œÄÞu-Öõlsütç7¨×ʃ H¤ž›*opäÍO¶&ÖÀCë´]NЄ(ªÛ KÝ!ÿLc‰·À£JA‚a‚#o¦o4*y¿ŽŸŠži—i¶}À;K_ß!ÜÔ,èŸArt?Íã+ˆ›çO°ÙêÊîË3~Ñ¢'ûÆ4mr?7…‹Jûų·½@ÐÜ"ñ „žI›T@ ¼†–$'†«!– åÆö9¢ ô’-€çåö¡ØïÃÏÈ¥¹H!’ÃWJ›edÔmh¼*±¹P (¥Fëˆ ú`ƒ’ï¬úf¡(A±½ãn,1`´VžOŠ(LU`ôx!(J—Ò{Œ€Y²¸ÄÇ*a:,)C(”°$”CÄHp Md dŸ¢“Ú*Däº- ƒÃ×ZP®^¡D'"‡&,Á«ûù/ ¶F‚-´®ô†ìUÐÜù(GQÝ_Ÿ°„‰¸ÊµªWÊõK$È&’:O޽8zÐ$dÚà–ŒÊoÖÿ·}PʸD«H †ä^£ «½€ÛOn©S@ ±1[Ï:s­D¶"ùÄ#•·ÁÌŒâfòzß›Äl8&… Á­« xS)°ri@’ˆлù3È‚8¢Pw &d¤'ÈB (&ÊöA¦Î•ŸPõþè8“ ¦12à—­‚3 ‰xRÍ„Ú(§XyE–ÚZ÷dJ²ÁëŸ"b”FýJ™ Ogá!Á‡%ÅA¨ Ë%›ÔÂbï¿Â•2ŽÂà›?a"R&rþmëYÏz÷ê¼nϰÐ.8„‚è&Î"(ÈYT«xEÕÌ *hH’8[LL’ÝÍ—ö΢4!NžJb+¢ !e¢4›¨”b(bÂ4ŽZiê¬4ÎôK~wãÇØßQ¨ýC†ÂT ” C>E o˜´ª”P¨ª«*­Õn­×ô€CÕlÖÅMòR *Br0éÍI†‚ú]Ť½$º'ò ¶bÐ ÓÞ[RñiÞ´[S\ãúþ¨5™VäX".ÀT‚‹œ†Ö*TÌ –²†Â.(2MfLñlÃaÿ…\ö©åÛÁK¾ŒÍ¢§Ò`,‰»Ô5ÙúÉì²7A<æ`Š3<$¢J p¸¸­/ûå\¼ŠRË–W«þÖ1z‡‹iíìbVˆLÜdaÙ½’T—e‹k\†–²,@c×öoªW•i0Ü‹ÒB@*’n(D‰J®K@ÀØŠ‚#|½@|üÖo/’Œ†â'Šc ˆ‚""H‘"YÐ@lCöJ‘¢ð‚Òi`Õ@…4\Àäa(…‚Ç-0vÅ­š‚7Ç…,föµ²Tì‰8Äc°O[ÑÑAœÌ@»öX†!M 60¦”æ.É AÏ.P ¢ªªËúd.ª­(ˆ•0dfL„…CtFÆl$%‡•n’"[|PŒˆÁËkpÍ­}8ÏÙm°\ã=2ëµñGxM¤½Á2¢'#ho¡ñW­ˆ¿I6øÒ¦Qƒˆ@޹Nc¬þ†¢¼-ȽÁ:Ó¼lzù.p»Óû©‡BSØõø'#€êÕ¬=ŠÍåçµLzHö/gíG²ŸŠUV§Îí”N’b%MÍP,‚ºr”0ˆrNH!”BíGXY.W¡™ €X‹bØ´a:ÞÇõæÜ(VþnoíC ¥À]X¼p±£©RR¢H×€ÄPY*²XFøQúGÄ€DRL¹hi$†q(e¡œ¤–Ç …’›va5 ç ¬H mÞ y]¶Ö•"‹Šé 5V7Z `@ Ì›ÁÃQ}Sà”¦  ÎfWœ¦Ûç”–ÈXEôìšTË/Hú?ßЊd2ç FÚ’=+7Obœ=#ºs³Ö§åþ ¿ËeÃݲ¯6^1Ûý©¹sÊëµy+žä’)KºÑsªÆò†·-Œ²,KŸ1Âctãk»|s ¬pÆ ÁH ÐÀ¡›P‰!¯ûïù³BfÅÚ.æ£hlž#²ÖÙ_ \ᨲÀ*à£Ö\~ÀÊ(KpR˜ƒc„2YiRm}~Zܼ8vžœÞ&ªÃ›°iÉòÐZ’JE’j ÜA/Rb@yJ`K0Ɉ£/ªÁpºä‘Á8`t©LË9k6 ¬Ë"BÃrÑÎÅý='ZRrA&¨-ß{õ #9ƒ‡èfw pP÷ôRÊ»³FËÇÚÿ5!žöíüR²±¼ ô³¯j¸ßÅ ›zÚ"êD’ ™ÌN€õlgþ"ýè@XÃÖÜ¥6ÁÖ€=>;ß8ôöž5Ö.PJÀ…yDA(‚DI$C)U‹_¤%lè” C¦R]’*И"ýHY!Ëà†D¬‰‹ b¤/4΂ËZ"o¹! p±,‡éˆ ÀÐÂÔ&޲Gã\N#X§ƒá@‰NL)ä«€6R :²Ú„D(²0PÀÀŒ DLBE ÜD$ÙÌa¤aë±+ÌCÖ^^Ø©šu³/ôôdC‚:Aô4óù?¾uw@ëqzÿxI$KMÑ<–úYÔz³Vî©ýý¦QÉDLšAvNÚâŠp‘…&èc˜Ô(ƒI¶b":kÛZDãÏš3X9ßNÝxßJ6Úõÿ(Ý׿„…£ÇH (JŽlX€Z6ZI¹Q³0E˜qà,ÕsÀ’ Í T ’Á„/-%ÔL¿Õ¸ÎsNŽ%™ÖÑ¡¾ &¥ƒ²ìYÀœ@RÈŸ%af 1T~˜¿f-+€'UƒÖ•YBЗK`Áµ¨ Žóèxÿ°KŽ8žjU¶µ‚8,ð@x¿¡*4¹3"‰äû}¢|ëQ>ßðS2Ö¶Íܸ߲u¡=éù£{¸8Ûп¿ÚeKóŠˆJOɵ ‰Àv÷Æ­=ï·Oy¢È ¶¹˜÷W…cIÛÒg* À1yÒÚñµù…[vÚ‚ ÌáÿAòµ”¸,È•ƒQ4cBHÈòB'Ð(E•‹±ÝœÁyT†q´‰‚,Z½€C¢ þ39té‚„×õnZ* j#Ê X C!nŠ£i*]Ý_ü´¶LkÀÇR1¿÷Êü¸ÅíA/7¶”§ÉrQ!nà[t ½ÐPÀKÈ©•­Îy}~‚Èàz‘ÖÔ8[#ø)¯Dá{—çY¡x6ƒ¹\à©íñi£')*Y‘æ3‰©³$ÔrJP)(i X¸ꇘ‚¢!ÀÌ-› pBÄÌ”¥@l"†A JɯjûÀ¬!MC>ž< æªqQCÿ¡9vê _šJk—$Á¨€n àƒD1K Ƹêå %sƒg¬ÑŠàog¾74šy@ ’fNQ“J]£2ˆ |›ÎbóÿÁK‡aQ•e”J½¨ˆ¶*tòÌ[Ÿ÷VÌ€ça8¸6 ÏÑÐëC²!ê•£¯Åds=ê'¼Ü„¿IžŸÁà››_.úþ"²9žôrâ¿å7r_{ñûyp@B#ê%à—!Õª@øK@hXp d¶ac´,‰™`ª¼JK¤r-`±Pm†ë1íTùÀ9!*8^EPbA҅м„…rð½g<¹PU ¢ªªÏþePr7]U°-0]i4VЙ23¢rmæ~“ûó©Eåc¥„ºO@h?I¤¾ÃûóXºûTÉ 'h=oüXý©ÜåïáFÎó­CÅŠlX·åÛ¨,Y|`pQéj4@rZ€‡pP`BD°aH ô5–ªÚn ÖúuÓë·lÓI„lœ:Æ~w¬îEã]/š`bØ‚È|¿ø2më tl%dÀäÞ€IfÿD.êÜ<%B»LB¹¥V_£­ÎCóø¥I‚ê 1ÄÝ„r…` ô«BÎÈÈôC™jBáZf4æ9{Uâúþ>=éÀrXËÍ Z#ðX³2þ÷¬=ŠÍåòT“\ŒðŒý¸uœvR Ä¨,„f‰!±J\ÃØ (1 AdÚ°«êªåY^ûP-ÎýgKŽ¢›PF&eÀ5ÀŠ)µx-œ… FÀD¼®PPª­( m%žÖb÷®„j)wLé(8]]uWvÍ"ǯ`çñ"´{$²™ x â)I×*ߟ÷¾lÒ®WÏóè ŠeÄé&ž¼ ˆ „1ªDD>ãTÍæ\­Ûþ¡PgÙÉMÈÙS”˜þ ŸRÐá«LE,«ÇÓJ9zyéR>×ìKßßí¦z싆U¤DËr^—á ‹€„  ¤8,°E ¯¨¢ç”ŽÒ!¬¬ƒC‡ž±òAg[ä9ãN1‰¨x"D m@í)D!+0¯,ÀRa`ÝÂbxR­JMò¬ñß<èÞ= â?ÎW¡9/¥ãŽëÇ„×.õôúBùæå+žÚõéå¨ÒWMÜL¶Þ*epæâå œ/ü”Rô ôëô¸ßÅš ÕïÛí—!SÄ)[£IwõˆjóèÈÄna†ÆEIn¨U%2«7ˆ»ÓQj·-œc[ÿnfi)T*lP• ‘(Ó ˆÊQ XR(Ehª”Tªªª²ªÝVêÝ~£‚;À <É“p,B^D¾åÌÉSáä9PŸ9b‡Ç´{´ø*ئþÎÑI\A3ʳv4‰¥EuA{YeSh–9TP-uwx²ÿ'΃bƘpꀊç^ °ºòÑ0Ř²U’ÀhLL®è¬Å€€szœ£Þ˜@êt·™õ Œ.ȉ; `T$URz¥?ú.L‰ÈBqf¿Õù§’ÐzÜ~öGŒ×sÛ†¨`ØÇòÓÂãöTéô'Cð|×8W ×íhí£{!ÀËÅŸ"pÀeÀ* °&‚Ù`¥¨eys-ýux³Õ ™¸›ñ·7»AˆM„”‰!ªŽ%-3(2dýƒ7,êƒEÓ™GØwªÄ“ÖþÐtûQµæÖcaB*ó,èæX•ˆÐ²ŒŠi“`f …k¡®äª¹ÒoeïÉÎ)P@&U6ÕÁÛ#Ä©T0Xa¢RFVpáÕ“˜Ÿ°ñ'u×nø¡#¿jž-ÒhèЀûE$AIL’dâP,@L’ØÁ/71±¼(gDi×Q´XY³2Œ –Ñâ*…Á+Bn ŒØQ–Rî|–]UxNhFAlZg¿^”ö‚ˆ–Kp“6“MÍ"P–W)¸KCqö+º'Lh°|•›§±Y¼¾JxŽH9Ä}¦„giˆ„G[y—6Š˜€8"”6íè©4¥”ƒ$é.:¸7i„è*¬jȲðÓCsfD½¯ÐÐ! (N/Át10 T˜WX’öHDQœÌŸÏ"IEVFLp·@ì"Ð^àiJ¾mFËÓÏ4©ßdò‡Ê‡ÚpÈJM­jÞí!¶-GÝrA. „ÿ¡BM†NTžâs$U DHc+ÄYϦ ݃R¼õrËV+„PJ[!㜥âÊÄ Þ'“<0æ‘­dN6Y¯\Å[@t‘Õ(Â÷iƒìßmͨq˜b@YTÐda€U¼aS ÁÀ,Ä\Y€@ œ’f;ÂïP¹·ˆ y‘õ÷´4Ê!Î?:ð¡Úo"SÈ ÌNdN¸ä=E‡¢r¡Kˆ#Á¹ö‰ÄÌ0Ë& Ý!´Òšmžùø¾36¡x–ðee #ö Œ§”’Ê#ßfožÄµ<ø9oÿˆ$|üT÷=º¤ÍBtƒž’ó €œL?΢#%raD‰Ý ¾¦HÞƒ`SnÕf'zòš~xNçÚs ’\$·•[9‰;Ô‚‚4ŒÚ‹Ùgµ'z€ãù»J4Kù›ìõì½'©ÇñëÚ¥mg¥¸YãR×ÛõôÞ‡zï½ж¬|~=[¸« Y-èj"Ï^ öm‡Pð¾BˇAª¡œŸÏo¥ŽvœGZÇÐË;{ù4` ú5>mµbîïÚ¹ÍLÈ\ Y™˜3l旋ΖYë|╃ÞU¶" wÍ¢!ò7ð¸âX È .19Õ½cÊîIÙµì°`ØØ=CÔ‡ŸÒH7»éýu«˜´|'úÿ@ÚƒcDÏ$ÎÌ:(wåE`A²2Ù8A®í´ÿÚÉ@´°²é ¼©€c+`’ã¶ã@VOøø¯†9ž“PÀ‹—Ì:Y%µWHÿêqÿÄ-!1AQaq‘ð¡±Á@`Ñ0Páñ pÀÿÚ?ûÔL˜¡[‚AØ7,áÝ’ZF¦ôòäP""$Ÿøø0(h³c Ãb’‚&dG8#ñÉ¥˜Œd›cïÄd¬,Z’Fë/%¹ÁóS”LD8jÎnwb1P‘¶ ªfÙD0Ï×8ÙÛ@GA°0vTH‘h_°|ñáµÑuÅí¤zR ‰%$¨4®AE÷Ù=€FT ‚Ô¨”ÌN·â*'•ö$s´8LÒK‚²Œ)rJÄ }rI‹q3|C; Œ†L^äˆÅ–ÒQ¾4ÚÚòb¬Ë„†å›3}hMº°Â¡"Œ"H£¢Ÿ} ¢ŽzC¡“Ár^ôŠ(f!‘’Æç”ªÕ—õˆ,‘\O¯tfÙT”"[š“¿µ¹{Ö!«HŒO3;{ч„@…d!# ûîÛAa6uDpÜžþ…º¥¾+]§[㛄ÔM Í‚…6‰Œ -¿€ ˆ.Ét£ HZ„Ñ”ì öµ»sææ­²Ñ³5ßÃ5A ’Åb®¶V/¾Ü ì)¨è^§QŸCûF´'Š=±ïD  d°269¦ U$¥% ¢ŒH1ÇרtQº´^s ¬¡‘ËÔVÄF𿤵2.;æ:Rd²­B/%!GßhÉ""‚È,(0&èqM~R+Y]zÄŽòiCIæÑa‘³sëÖI’%g E+¢áØü|¼¯¢ÞlŒé˜Ï~|ªÔq0Œ‡¨E¶cïÃC¤Ê¬¶0¢Øa¹a=u#æ§Ù/¡É¥¥ïÈŸgb¶C*ÂÀˆ^ BPAur…À©Èäôˆ·S7ù”8 b×ÒyíÆ¡„¡ÀSˆSÔ‹Ç&ió3H@’ɲ$1©%))bAŒ†>ûÄñ:Ð$)fI.ŽçÁSLZðp±ì7ë›Óš#Án!!eT¿^d* êWO.fG‚%é%¿¤Ò¢Q2' 1ÓöD€#`)I‡ßO0CäÊ‚$„7Tà§ Œ±ò5#uǵF{YA(“¡˜/ð4Lcs>¬Ähà¡U‹®‘½ûß¼Ðq°råŒÛŽmVL_eX'G, ’ýôQ`a2]$)  ‹ËS}ÇÊÕƒ·qù qDØ2„]Å7#Àˆ$%e2‚`AÑŒJã‚Iê{Ô–òt~DZ$¡… pšdCÉz—ï¢Ù±PŠD< ‰DR-ð·z2­·Äzµ0 r eç—™›£õðÁöK"ØEiL™iº3´0éÑèÏær…Ó:xµ5¡%‰QëL ‘¾¤k(!1@mc¤Ó[ö‡hG±óW”A ¼]±‹_ h(»ÍÄ ‰gàÎM(¨!64宜ª]‚Oly¥CS`ntÛ.l±÷Ñ´(ÀDilŠÜœéÛÔŠ9tõ–ˆö#a.ˆP´È%íüü€bŒ¤‹àKaSЋð^[ö›æ¤V"ûÙŽÜ:Ò*:eÆ bÄ•TŸ}µÀº’ ɨšâ¤âtT­_¹D`A¢ÈY5F Â""$Ÿ¯Ê³65™ÍDkH…8c”7±Çh¾{@úP2¡4M¥âÃ0ês)DDQ,ˆÜG'ß@™Ë($Pˆ‰#4ö+¶ú›ëµáÔ©ìÌžÈrÖüjHÑ’A¤Œ:ýzD,r0¸€œJPú–  QÚ/`ßrÌg]¸Å^AuÇEßcž•Á”\A˜˜–&%Ïð‚Ä3AC©P5hÆsIìS€!¦G¾I`6ûU[¹"  “5py>’ûTÝ4t˪I˜˜¤q0®HápA…úõ}Æ%²cbµÇ™çCµšj|ø½Ú¬ÓSçÅîÔíÉá<^ü«D­5|壴ón>†Õ^cWÏõÎcl1¯çÈéÆƒkô×ÎÞ»ÛLm×ÎÞ´;[¦¾võÚêôåy½i†ý¯œ´Þþµnºj¾žÌÉ .uÒvôȹüµÍ³N×ÄšãÜ*Õb%–K `FMz ¥@`U…”ªý ¥Ó‚(·MÚ%‡B¾L $˜’Ô<*D3JÈ07Ôš$žG `¼ ¿^É%•ëìwòéƒS<ˆ]¿¾=æÔŽ”JhÂj..„9O¨t&«*ŒÅÜ~9·¼çÇ6ãÃלøæÜxzóŸÛ/8ø}§¡ôù¸y6ƒ§Ñüœmè¾.~Yátÿ¿ ôŸ"íïÂqNŸ¸ Œ¢RÑ"+¥ñJçôߊ™¹ÿ»Fò_OaK]­š±rë|Ò‡nOý¸Zd^ãÆxxÚ¢‹ŒjósѬ\š¾|}÷¬Xã_›Å|gºkòyöxÔŽÝO8{TÍZžEl-ZþDÓºƒÒŸôüÆ_ÞSaˆFbêËУkÉÜþ¨éæ~? ß§$ û‡ÔbO*ˆ5ÛàW¢tcàõ¯8Ä||—ô §‘qöùjô¾”|^µå›|OÓï–mñ+öøå{|ZZ\×î’¶ðM]ŸHóú©òÈIÒ%m½J²Ìlê‘{>aT™ ñ?{0Ø>²JD àQ€‚zÎÔ9q=IzÎyÑI3.È!YÌ¢Mþ l)yü5Å ÿ± +®äc‡ù³ëCFn_ òó¬—›'œë<¿ƒÇ˜ö¬}ûä¥Êž{ãÛ!=º8z8û“ •DÛÜS FBÓÝÇØÉ&âÔ˜0þdKÄ`&3)R Lܾ¥·'Ô¬œŸséÀ ¥'W8×úÍ ü×úÍ ü×ú/Ï}šÿEùãï³_è¿<}ökýç¾Í¢üñ÷Ù¯ô_ž>û5þ‹óÇßf ¬3É´È9#;6¨vÿvçÃ?¢ ’Mšêœ~O^U”:éåÿšÊ¾PщùQ¢¨SV,å¸üÔêšàµ<í#'ótÙ¹|+Ñ““î}?¢ýˆvóÄïPìùþê¼ñ;ÔV/?ƒôƒjàÎïç(FïXh‰KÐŒßeû@küÀ÷.Ô´ØSú X&þ g@”‚JÎTÌî„ :gÖåÙÖÒÅ“ƒ?æ|.‰Y¹|+%2r}ϧZEÆŽ5 Þ:Åý® ðí¸rôÞ¦×þ§nOjƒOú¹«Ã¶áËÓ…Cåzp+˶áËÓ…y×ÅxvÜ9zp¯2øâT>W¥jˆ$÷ÿŒòû.öÓ¬Tñß»ðu¥VU]Û¿Ì âW.?ÇèPèY•¼ß=ÑÃj^Ö•ÂÈü<»úÚ†#`ëk£`Ⱥ ?˜H@¢ ©aÄL¨Œ5›—½ñY9>çÓ‚@a€@tšðOšðOšðOšðOšðOšðOšðOšðOšðOšðOšðOš˜"ºqý-«.×wpw©°·c=_À4¸„€]")pb2”³†(“Ž I@-ö^Ûñ3oJÀq=_ê–íÏ»ÜõÒô†Ë"D(H†ã%••$1 ‹X?—7¶ö ÍËá^ˆø£rto@Q(*þ¤X4!k2ÁÈ:êõsˆþp2{N"•hÀÔèSvYÔÖüÿÊ'‡/‹ÁÒ”>kµe5[‡»N³ DÇËMìS3#Þû'ú^,MAQü„?(ÑO¾Ð† ŽbZâT‘ ®!ohˆq¡½1¢TÿS7/…yyÖ2Øìp:“$ c¾u`7yAãa& àFi'@7)E"q2Æ\ÀíŠz¸„d‹h‰"L)¼K? 2úŠ¥‰ ¿xB}-åÒ ËhÒTqK†A3¼a’àÏ j$ŠŠ‚&ð¹( J€Ïà!Ú;>)ÇDw¼¼éNäþâ¯ð¡èÂoíy¾£²`M¤%5ô+Ø$ð\oOJõcâ±ä}èäáDúÏÜu=ì¯1µaoy[úrȉ7ž5†¬=šöÀÉ ˆ@ŒA‡ ¨“ ‚‚±´îlw»ù£"3= <&e‚pϵP Vfâãb9Êòb†l8ØŸ‘®jq9šœÏ’ܱBa=H柚⎯À×¹üWîR:º_Új$ÍOeGØý< Ò¬•þÃø)!3G½?iéý)O0æ§õûRtðsµú¯èºS¯ã«Â/Reævéäë\çÎPhu¿½A±Ú ÛÏ ØíJh{{RŸÜ4¶QèÛÒi¢`ÐLÊÈ ¶f0–r\Lˆƒi@“’K—-úTö^ÊðÛýB9bìãpt…é^Ãø$Ö‘X×/¶2ÍŠD‡Â³ùú'æ‘dA& ²Á†>Ò@ÊÅ!´uß›±çÿç 2Za„ÒÊZ[ݤçC—Ò`¸£ëÈ ¦U„…+<Žô³é÷,Q¡„‡ENà2½‡ð2Lß ÓíøR¼û“Þœî_í~ƒ˜Ox‹„ eà‘¢Q”²ÑDe‚HÇ^^–9êüuk#È¿¯-Z<íÒ¼óÏëôQ“ƒ\—hÙ;~hlÉÑhÄXóóR8gõÈ€G7€Þ-`¹ƒ;‰‘9þŠS¤/þ×¢¯Q ¥ ¨»Äàx€”j!.稡 ‘…úrß èüÖOGåþ!3Ùm†Œ¢ÅìÒŸo¬âÌ÷ü*øfXº»Ì¦–uƒé‰UI¥…áÅ'î~ýû÷ïß¿~ýø‘#µâ£ƒe59;BØ÷*L8­sD Þ‘QZÉÑ܈&P¡0DQD„K"7ÉüX*V*0?$¾³äQq˜xX€q«Ò&„ÓàÐŽ:†(eCMtó=¿X Ç"ÇsþrÉøÅv}¯Q ÂèÙüzÞ‡{œzclUÛàÂÀÙMƒÔ.3¹“ò{w¥pôL<¹kôÅ’†-7Vß´[zõß'ð)`ƒ™ 3 DȆ!ùø¦Çhí6{ºSŸ&>(¬,¶‘fyúq®;¦‡<_¸îš8ñ|ãºiË?N5Ç|yúq¯iìãÅŽe{Og,s+Ú{8ñc™^ÓÙÇ‹ÊöžÎø oïJ‹&£æ¼öý@F I¸pÄ‚ÆËŨÂ;Š$ŸöˆÍrH°HÔ¢§»C‡‰D¼{Ë T²¨TÛ²]{ì‚ %ÿ®“æ[„ïzÁU`ìO R2²É0 ’` eÏܤؿ‹Yõ«Ÿàำ¯US³"ÕTm|P©€½¿…Àݱç* g’ÇJ@ãé¯÷“­[ÐøAÉY™{ó>N¥"‘!4ú8é¹3 êŽÏ—ýI°:0eC6ÖmÊWþgÊEðbÓg,« $B`ÃðwÒ´äD”ƒŸ y¢•‚óÐÓ¯|iNuüyÝ¡$ï"’H’ܪ)ïúñ¼Ç—ôWÅÏø$àl•†€ Ì“5—“ñPrßK£ÎÒUU`»6 9 o±Ñ@~/œ¨H›½7sµ ÛNU‚?dKÙÑ4Çâ)HÐaü<ký£…â7Í3Baäþ°ÏVøc‰S:ÈÖ; ,‚ð´Sa9£Šˆ;ÃI%SÚÖ"ÁË\Eðáðjùµ:ö™Õæús1~a¢Ze È‚.ky –Ý–õAÿ?ëIf4½øVCßðW°þN» †ì&DVFó" ©Ünü=ª+ÈD"Ö²ùø§Y²Œxª¯ØÌö5~4ˆ=WwÃ…cþÈ¤Ñ d}¿ç ßKS6‹Ïl{Òò<Œ¤•<–á‡gõZ–m#‘$aF,ƒ¥/Y‘D8Ér\>Fdè»âtÆ%2€¬E]NBðbì¤ R·_÷κҸéùó[Å2—(’!‚ùrÓK#…”¼ / Mdž“™U˜Á-Û÷á>j‘KT#u™ákØ UV ªØ ­qŽ€"=)@ð‡´[Ö¡=‡®£¾9u§mY2…OUûL¸g‹·å¨¡‹A(‡ÓÍEŒÑ­sÃks´ñŠÕ£–{çôч“žºœJ’<+$ùÖ'¥ ñÓMユŸm±c×gê5 :¸K¼aé4C[n­õ_k&ª¯è''à^‘B …’â è3@«]|½+ani¾ž[‹AÞ'‚ÊJ@ãq„Y@ËçÙè¨3òÛÃÆ½…_úù(7Fƒt'"åG" 4§ ·z0% !Œ"2D—ûâÓ+ÃÖûP±`寚þ¤OA¿Ï¥jm¿8Ïü˜6›v¥[ª»¬ýPGŒã.¢€)7uD3&á˜nŽX„J@›‰#Ù¤›4–Åø¡á‹HÅ‚þh倪Ð'vÂ)Ë/*àÃ"HOBpÅ 5‰W€),ß÷gx}“ÞÝ«ØT"æS—בàH‹’eL€9y€s{¢ûÓ=·±ù¥¶¢(Š#(ˆÚ‡#±3Šˆ¼Û~:¿¨H·ÐÕåç¥;+ȼkõ耕VÀVÁv… R0Å…\«XI €ÀB eãÓ)8F9Nr^\ Í"6XF£¢`<OÑ3£x€Ð€½ÓiÀB阼  Å/î€ÏËFf³O–àüý{N‹M„°ÀBAŽ¿0iĘ= •(‰ €I¶TÊ€•'ì; ÇdvüP€;óýpSI¡ƒ¡/XúôOU„± P“í!'N ;_m†™-L a @€Ö63*2ßO3OP5ŠDCÄxñ@¤R2# `“0K3ú ·:HYJ¡b/ºA#’~è#‹”Jõ”ù^,úG_¯D˜:€‚/ ÂÐŽ@v3ëJþÝãå¤3xÉ;gr5ûl]ñ·Áúâ<ý{ýr´¨¥Hë -k&ÈB„Ú`ÞÍÖW*(NIBˆÖ|ê‚IsHÇxï©l¤Be‚Ü´óŽ ¤¥¥=KðI #d×L!°7 #1£ÙÑ‚Þà!›¼l(×÷z×â½e>sØùéõùOÍIŠ#² y²JæÇ±ãI‘Â}½mïPÁY Ý(NI1a¢x{1ë 8ßôX:RR¹_Ÿ[J€[“pd-˜觃zp2Ã#\"º¹L³7Îÿh ±¬m­ìk¯f•*-¶å½ÆŠäT(D›ÅÚ@³Ö„”58Ù \ `/+uj(h#©sæžIS|–‰TËpFÒûR9ˆÍ§PMâfíÆQ[ëÀh„ˆ 8%kRèM­~(G7Ü>*óÈz8%.‹èL‚’q‚ApŸ]? 6a²­È\B–K„ŠG;«³ž¯Yð]FbnEû Etù}?XŽ¥èyXƒö00&¥A’ô3„ôɺEÈ™šïž#¬¦ R+2Þ•áÅ]ºZ(¶·éo3Žx¦ N#ÐÞüÒîô!fR–Fº1!RŒh @TblÕ.f–šÐ±aÆ8.æA q5´ÚldvLך|)ÙM—öîèÄ“3Vj¾VQˆÊžb› i+bËs©¶'Mœh³jÜÁal‹á€³$‘vRTU‘o ÷©jÂO ´Èƒ.AúØn°ºkŒÅ‘ lS,z¸íZ”ZvÌMûQñÆÆÈ“ÈàT‹„Ÿa˜eõo'õš]R^_WLÝ–u/ÎòP…à°âÈAan'W¹¾ØºûæñŠ›7ÒVëÀóÖœ,¦ÞxtJ]vÓP5B–š Â"+àXTô0®¨6À]VêÿÈO®BwYù×¶‡‹S;Óq7…•…ÑÕp›G²ó‹-º< « "éѹ")•{!‰EÜƒŠ¡ˆHH‚b¢yÝ1ÿn°8bas ezbW#af!¤R„ !d:I‘èý™Ù/™™/bÑ"€A ˜‰,²ÕoºëMo  ¥D&H"$| Z#AdYJSe0–°ß·áY<ão”Æi"ˆ%U¡Ò&ê>Ã9¡ÕKqz[êD™þQ*‚ƒn ŒÊÌÌÒá!ÌòÅI.²ÙVÿŽÜ-ÛÌÝùó¼b€J‰4l[NºN¹*bø ¬ÈC6¯ ï–‰ÿq£eê [‰¯Î"8i4 Óô%¸5'ÈFâ·R#ÆÒÊFðL"o‚Úi¢HÊ 4gLwWT`VÄäaƒ™}•T **¿õ* *˜ÀÌ `–‚#ÖºzˆÞ“}<ø¡X ]r t}*pˆ9X[üèVe§R%a•˜@úÕà‘I&3ÜÐö£Óü bóÇsŽ=z±c$`’ã ¸7C‚}‡gWÁú6í8á8´÷9ëMÕßêRbBèL÷•ô*Õ—‘‚ÌEÌ¡w¶š¼:éR›¹¤‹kòßçKR$0ï[„¯b 5¾V$rgT\%P$m€º­Õý†[ÉžŒ’ËÍ ãEbÒ¼EL"‘ФÈ)©<‰\`¯ðØ –Äóa$âêØªXù*fm 6 „ƒa$Pihw>,üÔ6ÓŒñ‰ž¸¢B‘g™:ëÄÙ.@„ì%¬B)GwÁóFoÃOõBË9’´ØAû²;%N‡ ÍG><ã¢Ue.ôãôð`cpWL…%jÅ& Êkœ… %^è$\¢êYU»¬Ò9Yó¯¦ Ò’ÝÓX¿œ ñJc–ŒÏ Ïæ•ˆw„¸!`¹l)tᲿ±5hµ§,a:)ª¹¢Ì}–ã“fœÄþñc‰ù¿èì³€Âp·„ Jи˜”CUÅ ”˜afÓÉo3—.AÈ ?d2†[ì•(B:hÕ,^SÌj0èÊ$P .ª!~(™¿`$¥¤[}xïY :O! %f”t¾çÍrÐʽñn§$)WÞ û ÙPú&ɵ´/ò7=MiÃ$Ù³‡‡_¦1îLHs ÂØ¡A¯Û „E€`UYu½8_ŒUÝYçió›Î‘-—SÎÜzTt¤H*ÀS"@X&$ŠÐ• € X ØP£ª°jÙU”H»D U­RiÚØŽmCÆ€DaÓ2#ó³¦*³Æ,VáúeÄÅÇp 7Äù%—&8¸²,BØB…\?]-'€2BÎU˜GþaðAÖ„º %Ò¬çÂ2[%Õ˜†Wîƒ=.:·Gô¹bNØZÃÀ‰Ê’ˆoÙež)'ë×Ù& À% &T/GŸ À@Á§ úÞ}-Šav“M Eñž/*v*.$An„Áö ¢"‰„Í-26%klëÎæÔ¦Ì}ÜÓ!IgZ¤Û!Pé€YSÖêô ©*«*·VúRŽnóíÎ߉½:,­¼í¯iÑ27Æ7Ÿ;Å&ƒ›l]5¢ - œ;3sHF7iÃe`]¨[!QP—d†Âö6†ÈåÃ]F»Â6u¡ ¼ÌUÕ)Õ.ûpÒžë,É (¥*!îö:ùx=]Dɦá½ce..,cäóýÖ_R’Gœ8(H E±dŸÝ(Ÿ>òE'âßCaA$?E$XŬŒ¤[Q~ùÀÊ\T}yÏì"@B¢bG!´æ"Ä׌҅ÛÛÎtS¥y  ¨ PHû¥U[«+ºý鸚èC8!05çm¬žOÉåáK0ž>tõ«º«M™LoÕ§Ó:"é’IDI™©¤$[è„`³Deº“²€öÈ>®  T¨á"bÖãÃ"Õ‘, &$6d>ÇK=½›|ž¦‡H-¿žuµ+“{-ÍúÿV¥¹œsÝyxÊÊß\þŽF÷7Õ]4ñýƒŒ&2+’d2à§TÀÍÜ–NØ¥%Ñ(zŸ’¤â"„& _Á9, (.¨RmAгb\JÃù®= ;ÜßѨ€Î¨a»!D‰>ÔñÚ¼P*N—#<ˆ0H`‚NF$ˆ¡" EòŠ&€hâ˜ÒM"Ã0 “L6oÝ–,·›úù‡gÛ|ëþR@p¦Æ-ª‹®u~*6HXåziZª!C > ™RìB×`=†D“Ac‚8ESWÉA†J7×Ôn4†`ª™KÕK«NÇ t‚Òs|½ºá»³£ I´bÒÒ¡„Æ š"#U`QóU%P](FrØá‚”*sÀƒMqÆo¯ì:ÂÞ¦¢º& –b˜´¡ÑÒ aà°a×!?š…B÷³FIÀÁ ó¡"”¼ 0V)fHƒc´õε—ü´ó»?å xRʼnµ/t(Në}¨ˆ]X&e€Ã4I£xæËkA|ðëR7uÏ¿¦šòÃC~ßô0Š¢V‰ÑL0—É ¼¾nÌSÅ 8§®¾¼iQ2&…h1 L {#n„‚_°ð¢iT:èËMŒi@ ‚È…ŠP0pD“˜Vñ*Á´!X9öÊU°ÕÖêuÒÜ­9KÓ„&áâ#‡,EâõoŠÓG% #WŒjÂD¦"X,ûÖá 9¶ÔeÉš¶Ñ“áàZÄY$´~„/Œ¼‹ºžç:UUÊ«Íý…'&œƒ ¢ #x3È~_šfCä›áäÔhÀ|RL«ØBËÀ¸„8’\r!kÁÈ¥‡hž€~*$¶yÃnŽþö°÷312dJéBMS`ý¦‚Œ¢ŒF$©]~ž]tð’)Õ—Ï0um*x÷|ØåM×Ðþü1J“-gR,D¢pØdA´‚¢P€@ÏúÅó’PBV ,$¡€~ÁæVEŒ*ÊY‰$N6L솄œ0e b+ f±&Q‘leX%2µ[º´¬ÉÁ‰››uÎüjsá!X ;æñIHÀ¨÷r½u !@%JÐÑ dYÂV#,ÄJa–ô%ÀAùb.·Xº¯é$ÄÖÏ;m­?³n 6RÁ9€%Äu g¯K|V›ÐÍÀ6Ôœò*/Ä=‰ M]@›ü ;¢Dœ‘"IÆXé÷ϽDزò”|íR`¶Ó&jëh£í7Bä!~[ÉlkK‘="p èJ„L©à7_'Ï\ óÓÎm+¤ºúeÓˆw¥bÝ4Íïó~%#† Œ°Mîý–Mp„‰[¨¡L<1R€E¼,™Ð)šŒ^(TÔÌ-è6©˜‘›¶ÎVäE:2»ãœpbú[½¥''*_ÇÃašJØR5`¥°€ [,X?ªÊÇ÷@CôXj“ž+øüþÊTõ'Èë ¡@¢Ÿië+Ø–Œny–Û,khP’  \#AD_àAñ„$皈0ªÎ’Ý­Qñ¦°Z÷óµ]lEÇœòÂEÊ'ÚdÅŒ:—¼"“Z'Û³cÓ¾3ÛKn·àq§„ú,cCÙ«K´Ó»Žvö«.!øz»t1QyK2.l«¢*?ûÖVGŒ:Ü3RjJ'Eyà XѰ,(²eX"šÚ½FŒ`˜ºÌ©‰Y(šT²Ìz¡ë×›RQÂ(fä4Éñ"T@dë}{Á`€,ÿ¢»&ÿ©‡‡«¡ùëµ,ªå»û 4¤ A*T( Iõ)'5`“èRˆŒ|VHæyß&™išRó«0RZ LÃÁrܸ°¨EÂÕS­8îü|ÔWbÑÛGyb¯"1Àdop}¦‡5 ‹M EX „Ä$f2z"-F‰1FàÐdQ(VÍb+Y"ÌDпH Hš*A@ ?l™Í<ú˜ºþ:žÅìË ÿ¨R—€[ÆáàÖ´˜ODŠBè3±™BÚª¨%qhS·dQÑa°º ÌÓB“{žü·½+ÊoÃÒ|œ”žSìq zÁ‚2â@‰lFˆ#‰ÿÆ2ß áôï·ë‹Š›¡®îý4ëû&\X•$!(BÖX#…“ÃsŒR‡åäz&SQ Íî¡Á©y£(9Œ±JÁï$V²±®û#È:ÕÁQ€Ȥ-ÅŒûtTÅQÄFa¹õX6b 7Jž‹DJt‘`íbÞn76°0eÝË«HÀÌg¥ï´ú[1N~Á’‘a8h4¹d‘E“1E$| ð €—Ï&¢Œ¶M˜oÄ~U µœ7s|-êûtý©M›Òß–¦ðäÁ´i—£Q.F2*]éÖ&B™Ýd‹àÁüœ4ÒD"e¶²DµFu9ÃüÒ \¬_æ³^ “>­ê½ UåÌÊRÍÜý¹ Ráð xÂ<C„ÈugôĪRØ(Š*åu”*ÍÆjenÉ@nb›B]ÕéâÌŸŸ"‡ ôΆœqÆ4 [–Åš¥µN“™„ìi.$¿BàÿÆ´èm6×?ïæ‹±}õÓñú¨]¡1 ¸·ž_ëJ·Ywiå2°$*–“ C´. @¤”],ml°ù`*DiQ W*àŒ2HŠlŠœ_rQZf,A:ØÍ;¾8Döb¯öAY*¹ˆÉ$á/ÛŽñу‚ÜË9N>"Št@ß llƒq†È2 (€5±ƒ}VùÊD¦æ4óêP2’è 3.É- „ ˆj@Àoñ@à`&Æï‡Jâ´kKÕ>h ;ÿt€4ÿ… ÔRÙ“ ñá¾xª²²º¿¹ VÇ+’L[^2Öv¸oL$N?ƒö QNƒB ‡(ö?=j&Äü£:bÂíRÑ\ƒ’­c¡5ûh8ÑrC»â%¬ëU˜BDÆ(°"ÏLô¸Y,¦UTÄ•º»O {Ðj˜@ìK{è8YÉë·×¸¼•7žªò)h@XÍJHÖ8šQj]1ˆÛ{…Bèmi¿¥hGoûÕoã-<°âåé§­¶ÇòVé¡)¬JH-D€F ØŽÐÅAÊÞ׋úžCA-- ,p‘ll…4œA†\@*J@‡ sÛYJ…9f/*ᆲ0ç-Z€A}‚Ç9…šx!»8™áÃèµpÂÆ`9h<6­Al#]'¨,`,?Q„vG³BHßRI›O¿ëÄ;Òœ{ùΈyƒÖ‘‚8¬úZö¾iU*¼ÿ“(%ÕpÑ•¿ *Cn“×>õ·-'ÓÚ7¡9‘ ‚¢D]-cö¹*Ñ}ÄŠ˜ezxĘ\໢@Vq1˜PÉq0›®ÞÂ"Yš1]Ñ]E§AZoJ™ácûíÒ媾›õöÖŤŀìÓà jªp˜`p4'ý(HÇ·j⫊v¥utƒØ)W*ógùd òr…+ ò,t5ô¨¯8”ìöü_IbR*È@("ÉûTë«‚ ´dh Z$pƒ"MKtbQY©#–ñ·C"–‚Ä8ñÆ’.f!½ñ¿Ý ˆC2*_îxˆÄ“‡ö VÁ’1q•E)ĸ?9˜²Ä“ÁïÕ‡j¾ŠÁè VD¾Ô·,„dåÁ L@%„¬—6XCPS2D×0dFØ °*.Uº‹K‚Ö‹e¤bX÷ØŒsçKÌU‚ ½­‡§j F¤x!%?¶çò•aöÀ  ª¬U°ZBD„ZfŸ’ Q.]ØégHx–blc:G>•|ÕÆc»Yj+*ý¢dÖ™ ‚H³ $8{Ñ–¢†ðôIª(y: U`hÖëblŒ.&4#¦* v¶ÇÆ)ûœ==xæf’ )jİn¡°¨qP¤ Ò¯ ¿Ø……ÄÍ‹]z %‰~¬öf:â™ áÌðŽ|÷¶\(C  ´Ä¹3Òõ,—c–¥biL&ûLáµ óÑÿh©Îûküó[#ÉM(mcI¹Ü©7*MÊ“s¹\oF`êùó@j/õÛÌmÁ §<ôÍÀ þyï¢e’Q%ð‚¤Â/·ûNú{'µèrÜ­ë+núT±e\‘ò´-Q0J yaTV—x@j¥\_µAÂ÷÷ö vyŸ„­ãÔ|µ=ÚvÇGóñKì䉥\«ÍŸ°X!@ @0DSŽÿHøš°‚eásg~¤‘£´(@"RãÆ0J¥Kq 0 0V P‚/?5škÈ¡Â'ÿ¶R"¦@a! Hu„/‹ ­À„6±\΀h„±ÿ•¸4¢CG $JFâCp€ÿÔã?ÿÄ.!1ðAQaq‘¡Á±Ñáñ 0@`pP€ÿÚ?ÿµšè / 0v@sHŒ€iãmD!`Át2íÐI4jDzÌïÜÌEßúÄ3ßßj9„ ëö×Á„”ÀÒr:ø…""cæ…îlÉÿãŸ÷¤Ÿÿò¤ó¼˱¿l °žñ…Ç…cðGKð&'H/Ì@p€°b@Ç"G®Óã"yˆ«60ˆˆì5ãÄÓî[7Ó_ŒfÞ¯[\ÿüpÚRPμAÄ¿Ü µÆ3¢ƒ b|­@ ¤YûÑ °¿ê}#%ãu w­þРLºqÉ#ψq˜®PˆkÁ†Mñ¯Ù¸¡D´ ¼…‘«žnÈ1€böŸ H‘"æPŽ@ú®@YKÓÇ$±œ.>Ï”u›ÅIñ"`¸An•ä<÷ÿÇÚé”±_YŸøÄÈÉ‚/.¸-u¸~§ÆµÖ7p°!pZƒê­Ð‡ `½§$MOY<¢7€Bk?iýªGp“ÿÇrÊ7-½>…#dö2j„¤0n‚5[×H×1¢\µ!´‹Œá €ˆ,ˆ€Ç€)"„—ÞÊÿñës»—¹ZNCŒš$1еAf®÷Å ÒçH‡çh7`´a0@à"cJþŒ÷Žpþ=Ë$ç¡'àŒÿÎRïàÓ/&úMdfú€NcõUð[0¶2N Bð}yLE„ ¦£ž ;¹2‘Ù8{ÿãåÚüѶ<¦ñ­D!î[ ZŒÞ#ÈSÕ^wt ®˜ p?9(q@˜ð\®±'kö˜ñôª |ãøÝ·òÎÈ™Äo²/~.{ªVî PíÃùFtî2"uòŠ¿‚/Œ“wPØqêØËVÿãÎ¥§jh›ë®ì"EÍ›ÔT@¯ ‹ˆjÝ äÁF‹6sèYç¤ ògqÿÇÓUo m8òJ–!@\ÅÂF.f'áÙ4qUÉp†= À[ÄäxC@” Æl¬¹;Xô@aßüzL™Ý Ãæ—¸‘¥¤d8Íó°,ÈÍO:ÀA&6r/S°ö€Á߈ÁÁˆwÍ ×!ƒWÿ•òÉ©øIì(aæ2‚TøõÏߨ%¥Î bEXÖ¼¨ìGç"‚1†EBÓ{$êbîøû4Á b³œ¿t¶Ý q2ƒ`_7úˆqæ ÂÑ ÑS€08a6I³ÍŠd9›;áñþ‡ «ˆü‰/=—”ˆjý•+¢Ò½ksAšabzC°“ÿÞ«—]éf0Ýv„Åó\/yOWZnÑ¡™Lqak¤Dt€´÷8yâü*)}9g/ýóMBQo E޽1áÌš½~¿øÂ‹¢OB1F1 ,°nBx&ƒÁ—Yõâ\"0ÿÞe¿ÿ÷YÌ¡2Ü5Ìú<•›ŠípÐgÏ’Â8ÞPX㠛хÔ+#Ä_Y  i^Õ×7ÿ](ÒÃMŠ9¥8C˜æ¸d´D0âÔÈ ˆqÅ׆3,€Ä4 ‹D4'f’Á?3^jû”û¸Ëü¿ºu'ýÝeŠ8°}eù?/BŒ#1 l'N–5® Ày€ÈF+Š X0€b÷ì;íê²ÿIQ vpI—@À46 ¡„ 0xÈ¢5xô„A ðߗƱ‚ÀEìïqo[°WR-ÊÏûº^[#ø^6 ÃŽ=g«ôQšèƒ'½÷HC°¿]¡à߈@DxÙ:2€ƒÂ¿K´tk¿ÐqÕ‚^—J ˆÛBpE‹ÁHhH×dJ†ÉÌ8¤g#ÄG'ÖÏ5Ëk›Ž.N€‚Ì œ«ê ÙVuoûÃÅÒ(ÛNã9C.w¶ƒº aŸ(ÉjB@ö‡Ä!ËÄP> ŠÝx©2†È©„"`Àeyðcãÿu¤17ÉÃw›ª>â‰B*CfÉÉw$z£Éš[-– .@ÍGÒÇ Âˆq`p ¶,_S¦ÿ¼Ï}o½â7á%±á‹ÿSo ž H h`-¿â!ºW¢“k‘NŒû“¨ôÐ$j“jØyR‘P¯c¦ïn•/pð“…K‰›‰Pr°‰Ä|Plñ2m“òMšÈlÙ[ÿzYÏ ˆèÓ×Ý7¿ d–VörɶüY,›u‚´¹Ð mÚ1ÄðÅsŠ"l 1|«à±‰ØË…馳ƒ ÿ½SÙWγJ”•)<„èeÅg´-eŒA`##¥r¢,b@Ö… óþš›n° ÷›Dûü/@ï•៘TŠW9mD<©ì+;*[!U7ƒÀC‰CR¨ Àà] -Ÿ’Jª××>ÿï~]-7nx.L(î¨s¨±E«˜ÁÄl "BxZ€#9#,•ð$v‚ÆÏhÁ ùΦ(; ü³×Cßþï5–[tð"÷áXŠ¤Æ ÜðÉ,# åDZþ(f EÛ„Ö#Y‡úò¥HQUÔ‡q!²:rÙ·Sd/+|cS(v)NN/|̸ßþð‰Æ‘tÑümÜS47Š)¨|â;áÄx:NeØ1ìo  àÕT%¯®}ÿßÏX€Êèòk²FfãÄY†gÐà"D’OÏ¥ê{Û˜ {Eÿ¼4óâÔ˜ã!.Àü½yYLHDd^ü)è/;žÈWM6žÓà$n!2 Eħ ¯o1;ÿ o§œY4ebÓ© HOd*wv$:T, €ÝÞLC\0Eä$€‰Ä|éˆønT,N̓yïþò¤ãݺÃN”-[tò3Uv‰-nÆ2åR Ñ”O¡c^.ó!¼"ha¡kÑ>;%eÊB×-Ö§úÎ24D@QÝ`Ö;ÎÜ"}2v£ËrŽÔqK ÆÆµÊŒµ‰s”¹±@ˆ„{!÷CŠÿïk´Ñ»¶Ô"ÏéÙ†ê5 é6ÁÓðˆ•„;VQŸE óÔ@?­;—\é(BI(”~ûñlR²¯×Ñ d8° ²p`Ò–®A›1ì+Íç¥tË'p@Ÿ’œ-ÔÁ%£7;+ûº2÷„«Œm®ÛRÜ!YÂ÷òA^?5§†x‡Ûñ»c H ÒÁ̇°Ûôy/ÆúÝÜlÛ¦G®,Pn ¿@&ÒàŠ3”ó˜ùÁE‚&¿¡Qÿ¼cW×07ÏŠ ï Xqìfó¬.Ù›á‡"õVèK'ý¯8Ú¶í ‡æt?Ð>1à èa Ö)dàq”µ[5ÉÜÜòƒ¨ßñH4ÞÉ °m¤Å•ƒ:×þïÅPòd÷±}BpÞ÷ýÓÁŽTØ«šM2 1NBeRjƵÂ{k%á` Cs$­”äÁ¨,7ÿ@F^ð‚•qŒÛ¸äQ˜VfÛ±pìwwÑÐ#Ã\‘DA{ àNÆ0ßÑA.t}*…¤œƒÉÃÂfî£_.`¶2«”ÕvR’¼ŸÅà0k™åàé B$‚@‡HéeÙ´yïýÁ6•4m‡Ÿ¨2õËvi§L&Ú$øŠfÁ’ƒR@~ªàü{Û DuNŒ`Maÿyèëe‹†ô"Ë Í;îéàJUêåRÑ@@¸ðëÉ䯺;Í{±6£€“ëý’|³û)šQ(¦zJX)Å€¢$d'3ÄPGˆpHÈ¡hSƒ…yC¶M‘r¡–´D>ÃÏýæiÅŒ ¸ozŠÎ c»?‚{R ‚ðxf¨Äýµ•h-™|„,MËßúà‘ˆg:‚†šx`bÎL‘+\lZ™FjiW˜ •ö?†/·ú ØçZ´.¦·a>éÀÚ½ÆA“1€@@#qŲÓcµv‚9˜//TFD‚†¸áØy:#É`¬O?÷p<@ÄþrµÀsHà8ptfäÆˆH‡@éK'ª*]<,ã“»ý ý<Šdyn£Øä£4*0ºÁ ™ØÍœ&AäˆÀ/pdd* 4®ÕèÞožý#¬ÅذNÔŽ¨E¸{ú•k…o7h[^nŒBˆoþ€†Qèöý@$Pµp@á%!ÈPácD∀€ÛÄ^ü€ðbÑèÞ8ÿ¼Iì…Ó¹\é)˜Ôw/#Ҫģ;(ŸBQŸE óÕ-…aÓ ÁÿA/kÎûçïà¢iCé$Ä{‰[ XHí Q$`$¬ÀöÝ Ô<>§…‚ädº¬ÿ»®ã^Óø]ÎAÊ#ð‰Ã2CÜD‘=KNÓÊêé±PÊ öCú 8Ú»NØzÞŸ•4ñ§£E%#(ƒ»zLðø³Ž„dDz<PÄœm“ÂüRïXÿÞЦŸ¿‚‘¥m¬>^yZ”¸êq7¡ò`AèY>ÑVóvŠDœâݸL’49¡¾ãý‹Š-/±[øb†ž !Ø ‰à“,@@9Ì7”ï/éBÌÞQÛûÆõÓˆ9×eÞóƒÂe ÀAO´m¼ja.À•ä| Är¢§(üsþ„óò<NRO¡ÀV»¤4e`ø‚¡)à 8Â$àƒHÖ\¦©‹“Wî˜`1\Å`‚¤Ç‘ÿw5VžOïiwüLk‹±SÌZ ìÿ7EY?_ñcZá2ñÛñ¢•´»’T$§ŒO±Cý)[Ä UÆ7àÖ~*ÂËá)¼;u!U1€?f› XoRRe-€Ä´w@ò@‘ãáYÃö/ûÿwÆ ç)wñ\sÍRÒbù’m¤ïR5Egeÿk´q¥x(€É‚ªàf-ȼô}!­Õµ{„Œ-¢£Ä3e"ÔmtLÖ‰¸é”‚&]*¸Á“4ðƒ tO°Ÿt˜†Èÿ‰óBÜt‰ŒTü¡B… (ÀÀp0ˆÄ\õ}Bª2ÓÒü¶GNpÁ£éŸ âÖP‰?×÷ÝIÌÀ¼Ý†;·L@@ qÒ¦1S÷@?ö2_UÅ;À^÷þyðÛ´5³7 ƒ\t‡ú²­ÛOR³‚ÇÅ30Óac[¬ìƒÃÏm¢Yt§( _0Ç¢S¬bÌÄÖŸébÀ:Ôv. ,Úða‚±ô‚¿äÉ9›‘ý¶R¬ƒ´lóSWXúЪ%-ÿœ-²ÁŸÁ| +•¯Uw­pqUšŒT`qÒ¦1Sô°gð_ š1ªB€Zy7 úZy©4‰ãö¬ùÜM¬°c]Aìñ£{—tpÔó.ÿÑoð¢eö…5Î Ë‚ø6—ðãúáµåî>Ì9û†@ÒÜt©ŒTý²wé§ÉÃ%à¸æ!p6}EÂ`œ=(Ϊ B #7 m@ÞurȈɇB„¤Jál%Œ^;_Pµ<¯ôxûU¯·Â°3øO˜á°óÉ|š"’ƒxAro«ŽŒž&™<ú]_°=²·% ÊÓK®Sá‘2d H*Äå‰NßÿTG:Ÿ(Q° XQ ‚Öú…Te§¥ÿUÞ]Eãþ«™5Ý™ ƒ}Bª2ÓÒü“ˆi¿öKAýã ¾Œ1‚¹dþaXÏ"[b2.¦ u†dFn?ò¿q:€ÿ-Ÿ ÈxSdée>3—‹òæ0ÎrçýI¹ mOÉ™ûV …t?!»ûOüÝá,œ_€öÝ ‰yðGÕ(°þ’¦ªÕÍ–çl\Bdk ˆFÓ‰zöÀ~©Ùse‘LÝœÆ (6aûÿ'¾¡Uié~²…2 ʺ=Ëòâ 25>%°‚–YÜtÍôÌÓ¦³}3A4颉¼N†DÝækdÄrõ*PËÖyÄ™"¥o7j£Ù{å'¤,*™ëýøÙ,`K”. YÉÒ€@‹€¨({p(bNA*âç2Ò©Òj ž"àf¸™ªG^½zõëׯ^½zõëׯ^½zõë×ÅS;¼£=ÿF%À‹MûX#Š+0¾ë7O ]¯üÅ;¹BèýáDcqþ?Kã–ýë¨ÿ”칇2Ȧ ¸éS©ø@ qÒ¦1Sò…BÛ²+¸Ä·*c?4¯KÄÿl) O#»Z%‚òÞ0Gô¸=èdß×ÅôP¹ì¼UîS6O`Hæ”~Œbþþ€Èþ¶‚G{Ä7÷ÿçf«bküÑÅsA²'9KF‹ä›dNr–É3 T¿¾ó0y²ôFn™X±Ì×AÍÒ¥) O#»Z*TV²mTNÀøÃhÁô–Aš à:x pz¨€\3èÿ×Ä=<ˆš.³û LàðÈ1NüS`CZEŒ'‡GÍLVq2œÓ^÷øH‰Ïå4t(Äð‰‰ H†+g(å6”×P%Üt©ŒTý„ڟ›+è»'D¢V!“ý$ˆdˆ¸ž(ò_¦"(hÀà˜F¨Çá±b…klÐ$ì¨Ìg85½â?›ûÿúêgÜ»¥ÍH³Ì±Ôš€2Ï‘k™Se‡`üa´`úK ÍpSF·v&­e›ÿ±³ÉD˜`6ËA¡2ÐyÐßÿE½§™-FØ{ {Á|°‚ , °‚ , ©:¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ¤ ,c(¼#xÃÚ €q^Äö¡LÓv P, á)È5c U±˜ËO6¨É„DÞ¡ÚÌ%Üîò#Í… ‚s2v愹EÖNn"¸‰]¤¿Ä?ŒÌ•bõ’ÑŒÆmSÓ1Bˆø‰ï8}”ézÇè‡`øa¤(ÿK—–¶(™RÁC ¥ƒ?‚øÙ°«2ŸÙVXaü°¢Y³v®Eâé•êÙq…Ÿ¸dôGýŸ¡;þU§ºÕšY¤‡ 'ŒÅ%Š€µ‚­V(‘NiŒsì"ÚP ¯/¨UFZz_ÆŠ (–;·Q%1D×ÔQ7ýR -`«D‡åwWu¯& ¦(šúƒª&ÿÁ–&Ž…ž"q[  £#SâËMÛÚÌ÷‡ÿÃkPŸÐàÜÓ]⥡ï§â[Ž•1ŠŸ¿‰}Úªm‡¯œ4&á± 2\ ¼°Æ–ä†Ü¾_ã=áÇa´•qâ 25>bÄdj|?¤ÿ‹…ý›‹9ÿÏ=¯Á”cÄ·*c?][½¶+qY$8lé• œl¼,FÏHÆ£Ë ûÞ0AsŽÐÅìP,1¸­½€C0^t‰­àȈ âk„L\šø%9ü ï!Îà,Ÿ±•‹èÐzˆ «€hü¡Cmø›z¹e–S¶O`Ë,QþV qÕy7+Ã8<¨à¨a3÷¾«æÖÃPÀÍa`!¥Çvê+-*4t xzÇAbÅŠ fx+M ÖÛ“xœhš†Oÿdçëbªè`©k/,1Âr= ø~’ôbhZfý%èÄд±BË,X¡@Q©S]6ó,‹ÉQî™Qú?õñÁº­¢¸ÛM@à`A¨½€9 +&êÕ‘ M…¸-ÇJ˜ÅOÇ`üa´`úsH¹µ¾•C韽ð¥‡;Sÿ0Š•3ˆÐfú0Æ@Y¥FŽ„Xè,°Ò‰c»u¡ahá'Â!ÈE>MÀr!p>rÉF}öäÜ@‘ °%˜,|\¥ä2JÁ‰œÿA!N"ÑM *¬ˆ‰Ÿ ™„'nŒNØ QP&L™2dɘ˜þ¢ IñÖ?ª«""¦VDGCfB) Û¡›â¢äŸeÕ>MÕÿP׿âIð«/„ކc~ј`[ÔTOl!I ÁñìMˆ® bø.qÇþ„õEåv(ËôÉ2þßI‚D)‚ʆ|B3â¿ODÛû„Ûû…PŸJ>“ ŒïéAòO”eý¾“Poáø@7ƒ¢©ý W´ Ùþ€Þü‘]‚&Ô¾Æ(6 ¶1 |¢–0œ[¾Ù`iñ(I“[Ÿ»:dÿB6³ß3"e²ËkñÈEÁ!¨pÉé? !ÔSŸ$"Þ²© iEÇc<>©02@’Lÿ g+º»­y1¾ ]½IévË-mR©2ÓÒüÄãDÔ2Éψn:TÆ*~ú€âÔîæ( ¦(šúƒª&ÿµ,ä-vÙü­U²ŠÊº=ËñDÊ hÁhNÿnÓÝjÍ-bÅŠ %Ž‹&mŸÒ\¨Οþ qd÷‚ë¤ù×–î"œÓçØE±U« WDÊî®ë^Lo¨oRz]®Ö ´@hqÎWuwZòb±BË,X0â#"<ÿºmQ‘©ð 9q®Dú¬(fÕt{—™#¿qÃB†¿°‚Vve/SC¶g‚´Ðm¼8»”QÁÉ;bu J}AUxH4sýíý+YVh­ ßükOu«4²Ím]Vµø#aB'„Hœ\…®Ã›?•¨(X[mø¤xçÿîó½7>W)BSqÊ’ÁÏ€; “8™b ú™â"äŸeÜSl « s:³I,e}_Ü®”ûãxßtàm^á#ˆ~@ ìñÀ-@¡ˆ/[#|sÐÃyAa§çþ‰oÀâ+y)³¦"ÈN ¹ýQb={¾ôþ®ãǼ E²7Ø_?Ä{Rô>|Ç=é<¡@FP0•\Ǧ/òI˜Q,èºú¡²DîhåGEò¿L$g—‡hi¤]9û…•èp½„\'kMèdËêÎYBxÇQ‰€L‡IokÚð›»`£†¿œHRéÚ7/øÌP¢lnÞÖ`¼?º;_ã/t¡ÙªL=þ;Ë,¢¤ Ú¹uÿ€Õ º®rü‘r§‚†+’ÐcŠ…&7ok0GÞÿÂCBšffîþ’2¢,Õ”(±bÅ jÓú£*uXCªww~j¡_f$ëEúš™òß(p+ì·kPŸÐàÜ¢!Ò¡ÐÞ€IˆÅ7ù‡#vܘݽ­Áxü…ŠYc×6X³tfŠSl¶µ„²\ Í:W`\¨ΟõGOyp¿Ùß+©¤±y™óìÏ„c¬5Õ(‚cû84…Ur;}Bª2ÓÒýp°U¢Cˆ|ºsLcžaêQ–ž—á´'Zÿ½9%š·n‚ÍMÅ>0kPŸÐàÝ)C5z¡(„(Y…)ÃøÄ‚h+*·„ö† Ø­šIc+ä'o`V÷ù€-4‰ 2ú°·™²--œÖ ÷Sî<§ÜyA’0«–j°ºäB i`ˆƒ¡I&"`?õ5rºSï‚Þü6 SÍ‚C×,ŽøP2œ?ŒH,þEA†Ëx•kNÑèb#¤Xi€ _ÇêÅŒO‚„º‡ÿÛ´O±ÿ¯i·f[ºh0 m¤H‘"Fýןè[¶é©úYö»c”X ™ùté™pÖ÷è,˜a윤s© 2ÉGh¼påÀJD"`À™ÌŽ1ÈÀ€R/æbI6˜@PÌ&Œƒ«. –)YOåù/ðÅøgYâ»Q!ìæTüÉ[ƒþÔ6X‚Ï™íà{B*6ÓÒýõP¹ä¼Uï§—}CœªÚ! ¬TNÖÉ[W3R³°!ï7`\¹~ã8É—u#öÈQJ²§—}C’6†Uyñÿ$B‘ÂóX‹d/‘¿VÀÔÎe@oÌ•¸?â"åæf67ϳi#u7áüÑ*<©+B6A™µ RþUƒÇÿÏÀíä—ÔM]ŽÀ ¤ˆn:TÆ*~Îe@oÌ•¸?눹y™óìÉTGÐGuIêGí¢•dšt¦f5ÁÂ<(ÚÁæññc^Gr+d:Aü\ Qf´§Dø¬‘"¥€Mü´uÛ‘u0hê'¶#"ê`ÁñY"ECšE2¼ÖH‘RÀ"LÃííø¿ƒ)“ÅI9µX.×1¯;@q‘1“þïŒ*LòO}Ex ‰»ÌÄ·*c?ždvOBxS<¨Ü®™>F!4Œ½·ö ¡þÒôÛë;ã £Óž$ÈŽW’Ɇf¦ci“©YˆX÷›°{AèÕ?’ˆŠ{X7U´C JóY"EKŠ3··âþ ¦O$æÕ`»\ƼíÆDÄjMq´‡8¨?èè¹y™óìßU žKÅ^‘´‘º›‹pþ(”\¼ÌÆÆùöyL¨ ù’¶þYü9"Œþ ÍÝv|µ “ø¥ d¾ãã€<ì?Œ6ŒOÖ߈ÎðÛ=Rðƒeúb!ñ¥+FÈG»`iWòuÏmÁkáKÐeä‰ê1ÔÎPØÐ¡U`ކHî×m€åNêK?1ùØÒ!üõ´FÖ{Øé"LnÞÖà¼?ý4ð¶ ‰—{„›S\æöÍ1ýØÒ!üäÁø”uW þ×â)n{sù;ñ%n B¯àáy,E²>ø¤ùðœgÄ’$T0 ¤†_ý–Ä‚Û \´µ>®ˆ¹Â³h{Ñ¿º¢«Ë ‚ùÆ$ï³jGí¢•d¬ ¿á¶z¥çÖ߈ÎðÎÐ`dLF ÿ$æÕ`»\ƼCííø‘”Éâ‚óY"ECŠGüw­l1„¥T¼ú$Õa4aO“uAÔ5è–#d½¯ƯFÍÍ™•ˆ{K¾Â½!O „”‘#gÊ"&7uUb"&#Ífœ›N`rœ” „p 'V[ºœtA \Õ|N× ÂÚ†h‚{0FŸùê|›ª þ¡¯P7ŸDš¬&Œk[ a)Uà²C…g'I“1Œ­Ã(8DS™Ý¶=„ !º90|%þ\\À×<áðx $€@X!Ÿ- D‚D`I©ï‡AŒ4e’h*LC4ÆÛ!AÏ {ƒ@-À%/½€³óHÇÕé?ÚáWSþ=™ø¶™wT(ͼUÿ„F"祋/Œ° y wÄ>*À û¬ž™Ê:f&AѸ½^™"Ò¬›S16ÆÞód]|Ê-`]’` †ìPÁ¸DÓp0$S0e/‰‰8ÀÇn~ v¿ŽˆÓÒ9ú‡ Øp° ‰ÓÚ,²3 Ž ‡QÀšžéËGF¢À|«ux+²³˜ 3+8CÙ_¥O†e¼VKM”þTØ)ð°®í^SC“]”Ì@0ä÷úŸ™Ërn÷ñÀó0Jzg(è=¡ñVWØ„ a@Êpþ1 +“K]‘.¯ˆå‘~ ÆoÉt “¨¹žT@ßWì¦O¼ÙÍìÿH£¨ó¾A``€I9#H GF0M«¡Y¢(ÁˆáK…-Iz#©4Žÿ”Mât2&ï3Œ*LòO}K Xb`*pFãq®©ý~ÿfS‡ñ™e¥õˆLÑYPèb… åìâ€åKð^ÊAeÓBÈp­T«BP˜¯yi­W>3ÂëB¸vbµ ‰ ® ƒ*a0ǯb E0‘˜k(9—@&\ܲ«·YIÑÛ"Û¥‘œŸá;Ì #pާŽÕîèp:X0Ø}Õ`Ã&LÇÊÁÚSAaô>ÇáXyCÀ™©­ö>– ͦ t矟™à7X k,ƒa,N7 9m$=øYl¸lØ©U©÷Fp·/ë¼F2Âqä-Üàîú ¡Z‡vô8%`EâtMm‡ñLn#Rþ›\a7 ’òNÔç|„ä3!Ï€™ÿHJikfKQ¦ªQw|]Wü‰4BBú‡lœ–Äj6ÿøÉU(›ÄèdMÞfŸ'APÊü”ü°)õA Ù­p •'ÉÐB2¿Ð$̃ò>ѧÃÄ‚ ‹&›@_¾ƒ3‚ÌjÊÚ#ŒO#ȹ5¢ë¡Ù*F#f †ÀR¹4×#+ ÕhR.DB`ν ݈~A«ï_'bº[L"*ŠÀ|D ¶~,Ä@íø…ð5 }yC Ô?ßaŸC ÔmL¹± "dL‰‘%{ ÍžÈàäÍГ¹`ŽdÁ|0ÕÖ¬ò¼˜,ΆK½¬,-gðd§C_dô§CÕ¶Ìé°¸ÎC³ª „Ϭ•!gË,GÉ«Õ(dzÇ*}³ãu;D¥€ÄÛLóôØ ¦ß&Œu‰ldâ³Þº´ÿg S‡ñ‰=Èν™hkÄc,'BÝÇùºÉÜ]g'H›®=*rpò¤<|‡?ðܰn(i]MM _ÿÖÇĶÜ(NÆ$½]Ó&¸ß’ùyì&6¿áºSÂ.@ ú™®½ÓLld’F!¼G¥*Ôåm¢ÿˆpnƒYX¤Ã"ÒÀáR_%£_pFÞE™Ã߬ýÁ`ÊøåÚýAŽòÞ(`²Ðãq†RC>cs$fÌP´Á¡~Âw#ÈYFãÒ}Ãqé>á¸ôñ±ôº®ôýM죆?¬†Ž¾°í`Ç ¹á`ä[89ô°{c|X,Ûf°ëÀæk³0à½ÌN‚Õ>7S/‹,*ÎBÉERìêÁÔØu+>‹©èñŽêd+¡Ì±^u†&'E: &wT„^¤50S\U£ÙÓ2nu»îÎØûÂW’ˆ"7õ^#a8òî"-z(»¦Oüî8P2œ?ŒH·©†”Lljßõ˜2¦2€ ž>Á±ŸŠÅFtœ¡"CËÿfƒ½º6­~2V{VL ÈÈD <Û‹C†CÚë­ñvM6!f?9P‡Kà@Õàú3¹IÕ+mÙ%.m&=еJ‡ÜEÄZ(`ôwÀáñE£Ô¨z²Ùƒœ–×~<,/{q ´èÀœŠÁëwpV­1¢r‘|ÝŠt=¡|xì.êÑO ¸î}&Üw>“n;ŸI÷qìágÉE–xðFÓ~D,¥`@Þý°FËVƒ‡XËéXkžYk&°2…š¹áaûm\ì« 9ØâBŸV›“Êë[à¹O†}û‰¾ ¥w€sX5âW\MM‡Æü\ÆJ|1§œX)ÐÆ¡ÉÅ‚·jåŸrY`q·Á©S!U;*d8ÛàÔ ÆŸG“$ú@…Õö% ˆ"Ô@1a‰€©Á?ËCýÝ…ÂÕˆðèûV^*¯;DãAÄ29(úæŠ;Lc7(!yƒvÿ²ŽrIÊÊjWîj讣€Z©åE€@OA×FXÈêMæY<ã!7¢€f ,Rh&†W @ „숊€‡&J`Çâ ØS ÓBuÏ£fì šŸÞö B ‡¨ç4;‘œ;³"‡ CãIƒ ®mDr…s&ì Ü \Û€×d&mÄ= ÜɇÂè°÷³y·@Mƒ‹z= "A·eÚÛ¢c6ôJ ¤Û»·v!üÀ6öBeÃaíPÈD6ú<"2ø|¢.`{#à ‘0ø< — c‡ mÅæ0`›KôðGF³ž ˜Ñý<6‘²»!Fì9(q‚8iuØ8Ám—sãÊ `ØQ†w: Ì ?99 ܆e{ Æ äõ£Íñ3·ˆFqCŒºra’…6Ô¦…–mÍîÁ0mmY©B¹µC)ÈZ†Æ +[„P£l!Æ\ ÒÀÂÊ¢`ˆ"Õb 騰ù@O ýÍMÖpmŠ.N‘¸!H2A ¢„Ay,~Bç)'A¿ì¨Í Éj4äMT%¦)ßSÛϾþÿB—H»F0wè 2Çä<¦™îXŒ7M<º 0jß#¨…Ö|‘àî¥ÃÛûó±]àÃÃòµu"ö¤B†rÈÁ³RaÇ\¸ÙaÖm»….ž#Ráû`Fy¬:´Ø|¬ ý(I=åZ7Ÿ„%<½ŽB ³ƒØ(2ÈéìxAæ^z'ÂÉÂdá2p™8Lœ$6Ðò²¡ŒÃ‡ÉRaÕ7RaÝ6QefTÓU6Ùó½mQeeÏ×–Š ­Îšj¦Âª“SáwVSÊöì.n†wÇ•¦Ï‡ÀÊì;;¿èÊù𾱦xTÙCaøSõP$ä¦B㌕ƒTEƒÀÕ`T/Ίt(ou®pS¡Q¿,ðS¡Å]k˜À>¾^xä¦Á«Õ’ŒISaUv¨f”86“:S6fVª5öfTâÖÖ7e2‰˜9®òÿ?Aÿi%?ú! Ä©!\€FƒÆ†¨z€>¤Uª2åØ}!ÌrÚÐVHÍJ´qÿ°^#`òî­·õ»@c$IÐPÀ0‘ƒÅ‹&š‘ohPéW9Rilq{©SWm¸’ÃO+½æÊD8ëÈÔ(BØäE`O—Ÿ3X?p±ò,b°k¬ˆ!‚†Cò8jŽ!ï|ð°±=K±z—p«ÀV *±Ç ‘)éØð„Ü{ʈVçÁY8L©6Óe“„ÉÂdá2p™8Kñô²¡y0ãëÊ1Ê·¦R×£åŒ+B<(2\<©°©¿•&Óeƒ3Wø l-¨GÀÝ`ÛŸ¿[µæÏ£Àê|)ïú=Ï…õ3öì.n†wáÔm~ôX7øÊÅM…=_ª ª9ù9)°§«FV,†MÆ«¡—Z©Ðª6°À©Ð§ù&{€S!³÷’*ºÙqz›ϧã—*oJ–Â×2Ÿ ùű”ÈqU ’ŽD€Ñ¨ |$LC2j¡-1Oü”áüb@FzµºÛ8­íÃà9 ŒÊV¾U£ …@ñw q˜‚ÛÀû"¯?,SM^R†‰UJ¢.@ë E«pbdÒr\6žMiˆ”áX)9<ÙÙ 4·xöú`˜nœy×)p¬{›ö©ã£P°«¼/Ì)Pâ¶˜Š— ¿+Œ-X5qúÆ+¼ÎðCZ¥Aîñ–ÇE…Bø>àò°¨îÃÊÀµ°ïÈXÝûä,jÿ!M‡tÙD:ìxF!ÇÁä!«sଜ ÁZ² `Ê“„ÉÂ2à†àñÓ,¨]alŒwY‡`#¼ôO…–ñʱo? UcãNÇ•0¶ˆÖkBÛõ|- UkŽB—{ˆXXSô{XT6'sáaq}ðºðyS¡~W <)ð 7;œ¤¦Âž­)°žÕ‡56ÕiÉ`Óü¼d°j7¬†MÆ«¡“qªÁ¦ÓÆ…N‡ëuÚÂÇ–dÉêfÅ2*<‘%2RàZ§C‹zs>+à‹•>kàƒ•2o>ó7"&0z¬ù’¹Ç‰7æ±Û1õf ¢D‚›âl ݸ¾„BA€Rœú ×1c A!.óã¤088 …·ý{ÿçþðÿH r4Ü£ÿ¸?ð…„"Ñ~}`šJòÊWK2Èr»Y ‹›- D8êÛEŠ\8§…Ó…"Z Pa ù1h¸…ƒeN ,Åõ`t+±}Y÷R!ƺðÑ`~øäd°®â±XV]ûà,}gäi5.Õz)0¶¯ó²Á‘ÏÙä(²îš(2–Žáú>J³Ïd  #Á(³ƒÐ ë<öBÊ™S*eC€ì|¹DšG°Q ãÐE–yè”m—Ç£i«B|,éØ`BÙý ~4qÂÀ­…žz1Î`bjË©ÐÆ¤|©ýÒ;‚§C -vìxXXá…ã¡u»Ê ü¼¼d°9›ÈÁL…K/U_ƒŠÀ{°œ–P±Ž ¡—Z¬:†]j§ÂšV]. Ÿ s«ÔØYÖ»ò$°oóVBà¦BÿUzN‡›+ÙS¡yª•Âsáù_X@Í…_YÜØiÕeyG"@jª!Ð?åè’fAùC+EÎô(OÐ?Ý8W¸ËI×fü©HƼ(€Üº pE"P@šSØ+ðFéÈ]ü㘃ÎïW1¸l;ãØaL Å2؉•^‚§!µ)¦éó1Raùãã¨U¹Ù:‘+Q¨R\T8àÚÅK…ÙáòÛ‰R!ÝÁïjD+e²a¡\_¼,*†¶«³~ôXvÝ…ÍÑÎì.ýð Ž~Ï!`Èçìò8ÓEƒ:µÏ%V‘á·‡h`ñÙ-²€ó‚³Ïd!xxíÓ0áqGcÊ;P…¬ø¡ © GÀtQ¸?Q Û—Õ¸%–œZ€‹,Ö0òÁ é d3õaX9{E`~êãb°¿uq±¬/O«ˆµ`eî0ج/m«‰µN„yÂãÁXPÓòw€°ªfÑN…cdï`W™âF ×BûŠ™óPp/X,KNð¦B¨Øã…]ÎÇ,*ÑÞvBð@â<‚‚ag±k÷±M…þqõ ‚› ˜åû|Šl-6a—åò)ºÏ•uªt-j¶œ<Ôè`+Æ­iSgT ÍmU¦ó 5ÚbùZÿÛ®—þ`ÿ1HC÷÷©+¼o.þ²­iÚmAoXÍJÐÈK.‰.Aà¡bØ<×ñƒùÊ]ü…È¿ö8ÿ_ø € ‚ ‰å¶é¶„šÏO‰Ž ¶éò›"YxÓƒaR¡,<ë¶EI¥ -8Ra½Z4¸‚¥B³½Žw‚¥CüXâðŸ1ìeƒQÍùÑA•ž²ÙÆKŒrèg~Íü$°î8uß¹pÂUÂI†þ†ÊC‰ÂŸ× D%V·…ˆ»¡åZÚÖTeÇcí``ö‰ÜØÇ°ˆÜûvÁ°-Œ{ƒ€vf=£…†/"GK>7cÖÝÜr¦C;a`ü‡¢Áù¨ì,½ÇaO…f!¸Xuàñ%…Æíðܰ¥Cmš Ù¢oÉN‡¼1ÆÐ°«Æ62²½ÂÀ©Ã‰–WÅL…qiµŽ*t7;èÀî§B±âz:FÖ8•2ב¼:ú/È…6^1ýÀ©°¦…r$¦Âî'e]j› OŠ£¬;êŸ['ÂÚ­c105VšNc ­_A>« /ƒ#›ê¹þ 4mÿðMðAEÿþ$¥+Í;ªƒBwŸ ßø£v@âÿÐ;OÄ¿õ¾g°JÈ)q’fÔ bäGL63O °& ‰™^òÈ:•’ÊÊb$Ü¥ÀÙaÃÜ4¸©ÚŸo!a×»a˜pJ— ¶ùøâ D(|Òâ ‘ ¹àT¨w«È,Žo΋Œuó¨X5ߘSq¸ÉK‡ñÁÎK ìñÇ›²°§çF•V0å`~èÃr°#Wå`egÂ7~È}•ÀÓÛÐÁ¸öP›n‚sã@!€êe“®kðöšŒƒodpìEÖvhéÔöû½#m¸ #¯cäp瞌¢°t¿p¦ÃÈŽ 梅ƒ÷QÂÁ~Îa‹h°_½DxSá¯n0¼)ð×죈µO…x7ذøèÄhlSáY΋øiÛpä¦Â®ê#Uƒ^gq!„–Þñb¦Â±{áÀ©â¡; r¬B )ÐÇ*ÁÄ"Ê68„@S!_²²âè_Yóx*d*{O Š™ ³sS!Vs¦e:·™ù©ð·ÍkˆˆŸ ný«æ.Õž)ÂÿU³X`þwÔºsYX!‚!âªÂÇá†ÍO"æ^ù¶Óg'KxÝò“_k·¤ ˆsëþµ¨^ÂÆG±YÏD€œrJ°ç ™!ãß„mÉ…+&ÃiûL~¾H âšhnñZà¤B¼u¡Ra«Q«ç*Œë(ÉŒ ˆqažõŒTˆ\’áeØ Ü ¬Žo΋£›ó¢+êÛís€Xkù82• ±´¸ à°³¯eJ„8ÆáÁWƒýèxX¸;„òX ÑÕÎÁ^ Üvz ñ‰}Ø,›0å Îe /ŒO ±°{C^§ ²‰í>á°öš† ¾`œÊ5FÀö£°î 8[SØEö=ÎÆ¸G r p޼vÃÁ‡ëlŽÂX·N…ÂÁmÆÓeƒ·!`¾Žúˆ…‚üý`¿?@Xu˜ˆnÚöãFp°úÒ㌖YŠÃóÅ·…‡ÇR0ºÓ%†Õ|ƶ¬ñ+ˆ.d°jâ¦ÃçbûBÁ­<Œ\)°ûäc%ƒã{Îã°þíÔc"¦Âýzº;…>û] \TèW›Åù©ØYé´¼¦@Ô±–¹…2-ô~`§B…{c:ûÆ¢ÓSáeÕQ„Ì ê¶°Á0§Ò¬°6𾫄 ì®´d9BªˆãðÃf§‘í”XY|&rÄçÒ¢A˜» @­BÞnÐÆ Ú˜€œwìCŸúй÷Á¯žý¤ ˆC1r%í&”ÊPX}#B8µ†Wf}£B,aoäµ$£¼K,Ìi,Æ¥móÆ’XDSâžç\[ióˆ‰_- GQ":Á,aO¨F…ì1/gC" Y<"“Ê¡\Ü)hNµ¶{#å߬0+×\j^K'Öäå„aWitQ¦Ün->9F¸¶SEÆ$yD»îÓlJ#HûØ Jºn ÊøÃú@­»°D¸ôvÊc‘#” Àq!›€Sî¦Èaߨ¬@lк‰PÛáà¢û9 ×SDNÐ_(áà·äÜ€õpðG…z"/ñ‹qj›Á0ò6˜ÕE—ÈšÁ:‘†v|¢"h÷F­£¼«1#j<`_Ä5>þÈÎ2X|tufGº°´Z§ÃޤefÈ÷²·Íé°…ht ½Šd*¡ªÁ8C{ÈÒ½0âÚ´FpFŒ0üž†Js:gÁ“:Ïç,`”hÃåß-”Ñ£˜3W`ÁÙ0â¡nìTÈò©ÞáLÍ1txÚæS!Åú}6‚"¦Cl÷ð%>möüi#ÆæĬc>]:úØÅ „T÷°Ñ‹jÉ$|*î% ؄쫬»å M–-TßâÂ÷Ú•eïÆ Œ@?8 ’ÝÝ­Š'’¨dP1¯(ÿ£ÉòW3J,'có7ŠwüÒ–pt~Î…A)ó&¿rE;‚Íä·Üuø©}×lOÆè¤:"N¤¸÷·µ[TªL´ô¿Ïä@ïÄ•¸?÷)Vѳà“_Ð2/åBHpFÜÄ’95“Ág-ÂìÓ7C“€çÀá ·[Û%#ʯ¦dŽ•u­&&o&ª·T%Ýzq.ÕõÉI…ÞrüؤÂòáÅK…QÎàª1•ç%"«ÆP‰É`TãÌΊT8Ë(Já5*ufEaùý܉ÉK…xÚ¥Ã_¦À,£Ûž‚Á«Á=ƒ÷S ‚vÎ÷Cè,²@nîJÛ‚| ÛöaíØú’P²Ûö%A F¨(O ™†å3 Êf”h ì'c¸GøGàÜàûG ð~B4¿*l1—’uœ¸å`YˆÚÍÖ¶†äM`Ùly Ë;ÚÑšÀìlb°;¬þŒþ,>ù˜lV»ÛÑSá÷£‰µO†ÔÄì²Å‡÷YlSáYLNbAM…g#¬Y`ב¤,SaG)æ"ù,ï#SaWEÛ#׿R’Ÿ yëÁ‚Ÿ ìýÒ0e>öâ |5ïînØ5P¸àTØ=ËÆ*mOˆÈØmb¦Õ5¶7 d?~Ž)ÐÊÐlZå:UZÖ…¬ùÄ%05Wä˜úû¹‘SáU–Œ“á}W ‡1_gþ(6€ÿøf>=zt%‰OÛÒóQ R ðˆ&ˆ‚˜#ÙÀSxò¡»G€?éPÃÀS±Ü'c¸NÇpŽá;Â1Ë€yÁ.ä#“B{‚0HêÇ„pnðŒÐ<´ÑŠC‘ÀFH@ð’86>]L‡Gi, ð;ÈøXåx\°7Îñ*½`js¼K/jøo­£ÂÂ÷¸ÖJ4º6èsµN‡OÓ5…êËf;S¡Q²G1°·ÓP§B£d—Xž†)•Q¬ùÁó ©Ïr8ÅM…]†F*.õ‘†Ê|8ᱺEá%>­|ˆ)ðÇìq‹©ðñQØÂIׇ´Á”c û³À‡SaÆ™çh²1…N¯b§Â¯×õŠ ûúÄ:…{øÏPó™ŠýôÄ8ðW×d*ºŒˆŸ ¬´d„aUù`1’ж«³þ¿öë¥ÿ˜?áH¶Kð- âËÂ2ì%läéHr+ÁÒ§„˜·ýqÂÌNa)ÙÈp#Ζ¢DÀAÄ7óUëüSõø©D+ˆþ¨ X*Ñ¡Æ4PiD±ÝºŠEÃZZmœP³9È_‰Kõí`‘Y¤¨6§hÀÈxr†4!dNºy¯^d ¥Ãï]h hU=ÖÊ-"OÌ&¸UuL;ªŸ¤˜[â·y)«x¹ˆpØí,3WÃ?¯¬ôaVº^p ­\ÂKµòo€X?{7Á‚Áñ†Žf°ë)–ŒìRá^·¬:ÌÀ–¿Lv ³1f¸,À•‚ú?&¬ΠD<°Š“<…îO¤0ÓÚv;„Ì7(C/.LÖDÈŒ½L–DȇØäЗæ“[ÁàM$5 Ê7ÇÚ™ Æ7Š(ܺÂþc²8ÇÂkÈÌ?"K±´÷Sv€°6ØÁ`tv’ÀŽÆ{jVÐ;QS!Mh=MN„-ƒ‹f,ð«-˜ía{²Ù”èz¶É iT$du–jd8ÂéŒûS!}c¬ZS!}a¬S!‹nÌgjÀ»´—f?£Ö™þäqi¨FüîàÄE¦§BÊ?DE²S¡U#"]æ¬ZªÉ))¯9Ú DØ?ßwÈ™…2S´¢ ¦BªvXŠ aGÝú±SáWVF T ½|àTø|¯¢ÈF¨Ž˜„cUÁÝÌ]ZÎãʨD03á}W.‡#uU?‹d¿ÒšÿÛ®—þ`ÿˆŒÇdLR„ˆ°ˆ"€œ†ŒxO2ÀgA Õé9ÿ£Ù€«ãÚ˜¦ši¦ši¦ši¦ši¦ši¦šsH–ˆ9O‚dÌhã {&äp0@bÔšÔàCAÄÍ‘€k‚”.ž«¥€dÂe¸äú ä0œð¢jtù!î0ØÍ²?¾ *‘õŒ²ˆ¤i¬âÿv´ÀúTÖâ ¸ÉS©ùfFÐÿ ~+ðª×½ºdŒ“Áå oõKég®L¯CavªƒBò$«¨HC¦_8šK‡W2]©ªüŒÌ¨cDÕ÷)Ãß¿"‘ Åž›K*T?|¼±ÉK…ÙѸF1+´¾áÍ2Ыp9bV x•ä—X?{7Ø ¸èiÅK‡a3læ¬Ú²Éa÷̃`«údc ¿O…v<È–gQ$0Yia°ˆX\Ü™¬ 1'il„<“ŨD!á͉ØîÀ5'¨&a¹LÃr™†å3 Êf”ëŽáPþÀ5 áƒcí‹JðüæÁ±ö¦CŽÇHÍ ¢61S 4ÚK_Äü+Á¿°¶#ˆÞcX¬DZ™Å`v=ŒÎ+kq¼Å2ÂÞZ‰f°·èë))Ð6èsµN‡­E’ýX^ô23¢§C"Í3XY|=Æ‹3 d/¬F±v7˲0Ð, °LxÝL…öyö=)в§˜ˆÑN…zÆcE:ïV_‡ƒ;èULZjt*ü±˜¶Jd+Æv2ç;DÄÈUNÀˆŠ› © má^ÇÃ* ‡tÄ…>kè‹…>+胅1ÅÿãAqS õ\Øà 0ãöžâàŒ*»ŒÉƒVXme•]ŸðXKHÈ*È•Ꭽƒ( ·.žOøÇ9Èx(!„wÿžÉ·°'F€É¿Ç4hÑ£F4hÑ£F4hÑ£F;|ÂXH!>ïzƆD²¼”D^'‡Ì‹8 Ó0aˆx’TQm²þÁ Ñjã©èÃ"ž!˜leå2ÅÐ;B†8J*ÙRåþôöé¤þH{Œ63lîÚÌ¡VWÇö¤³ãmˆäŽX¹ÉaHu¨¾JÀ€ã¥Lb§åŽ©UfZz_…0«uGüv+ÑBç²ñW¢b€Í/õs-ŠÈ¸Ö¨t¤Wûíà“kµÀ$€#‰¥ "ORª:j¤Ößìï Ñ±0;ÓBÚ0eóß‘†o c d£1ˆ@”×d_ëE†¤SÝÔÏ2›¦sË Œ–¾EˆŽþ*Áf½±f†O0ð¼±[B“$rVdªWŒà„ þ#€]#îÄÈ Ôç _%Bí}÷cL4#UŽL ¸Ug«¤¸UTR‡V<A =×$ÄH…Y¿àµH€©á8]™Rá^r´ØÁK…y¾¼©pª°B%`ÕÐðBkºÈGeƒSÓ2]Ôº~Ìá!bÁnøf°ú~Ìà°¸Î^Ù¬ëå`vgmš¬ÎÒXÄì °7€ØE`X“40 bxí !¼Â(`?” 2á¹AÖ ƒ,:1:ã¸NÇpŽá:ã¸D…±r ,±d”p>Ê6ˆÝœ£pl}«Ñ€qÚ86>úXø‚X8Ä8ÞÎJÀÚ#i«·¯Kh¤°#±¬ÔÈt}TÈto”œøm=Fz©Ðâ‹$°¡¸Þb™a{ÐÛ;Tèq E’XY|=2kßÅðøz>VCiƒeLîmˆ‘ôWéxÀÇR°-‡Ë²0Ù`uøx;¨G+­ÊÃ…»©Ð¬;X°¶èÂ{©Ð®Æ3ÉN…tq‘¶j1…ôÞA•“S!V|:2S´¢ ¦BªvDTÈUHèS/+Ý—>ïÎ)Ь}ŒÅªl=UHÂlp¯Ø^ Ï…StƒŒÕLÓc ªf|$õGÁ(„AÓúeÖZeýŘ¾Ú%¦€$èü¢†ž wü PFÝ0 2Åü2ÿ>=&¥ä‰¯kùû@ò‹4ã:dÀ‰C†% J”1(5#à„hÑ£F4hÑÞáÇ2R:UI "D–c?N8£>Ó»I¼4IÆàœ-<_]&Ÿ2ð ~ßz 9Ÿ¦Ý'ƒ ØZÂ`ðŽŽÈ`sAÑ7ȃ‡P©’rX3 @ð2Õf`Ì«M¤ð¿¡TsEÝüáþ5„ýóû†‚ ôˆûoèÀ ¿»_ÇËD^ÙãL¬¨æQ³¸£àxý»{k)%ÞŸ5º ]½Iéw‚6"xD‰Ä9P)?êŽ,žâuz,µ>(f‰ÕÜm~x‡…åŠØú’˜¢kꨛþ‰‚õã—Æ_AûêQ–ž—ð¤æ@µ¡þˆ4¢7j9¾JTïúÅ ¸éS©ù¸ŠœvŒ¿aØm>!Ï¥Ÿéjâ0™`ö™¡‡l/ë”0SB6Z¤Á´­¥z• *³°)pªÏWIpªÏWIa±ªÊÒ¥C*ü…Âq0‹]þà ˆ¿“¾Ò$¤Ã_â2 \8¨àîIŠ— x„J— ºQk„!ƒ‡ÈxÝ`ôÞ²Ž %ÙÀ¬*Ï¡Xc`³2°ª>@Ñ`t%¹Í`6a†Þà¤Cx Ýî`o°ŠÀè}Ñ\ ‡gµÙÚ[!$°L, \î† Èê(˜lþP)1Ù¼¬‡p™pܦ\7+.Ï‹.ω˜nQÀ§¶N¸îÎØ¹Ñá$dAöQ¾Îo ÌÑÂt/æ(å{\1ö°Vko^–O‚õzÁІ;ç’ÀÜv:X;Än%n+x Ÿä°7ˆÐ‰yXzŽÝ•‡¼†FÜ3XqÀGQ®x©÷q­Öt°Ï~2Ÿ´5Tʬ ¢2*o?E‘·µƒG±SX…ÆéL…¶÷qÄy*l7Œ¯Ã3 Üñãu:¡Øän§l_‡èJt+Þ26Íat~êt8­vX§V_ ÄŒYL…T숬 © œâ½ù˜Š™ ©ØP *¤gdÙB0ªºs t+c1j› ÃÔ£qSa„g\Âðl7¦ñ;ˆcÆÞëÌØHÂþëy9fʾB€ÀcUÙD4ø aAÿˆ’%Ú”g±d°KP\Ý)GÊd<(rc·d0ÄØu?üþA#7\7ý/À+ð¥øGÒü#é~ôœõ7”ßÍ7óMüÓ4ä„è=¦ÜÙí6æÏi·6{_°_°_°_°L»±P÷ò«| wØú“Ñ ˜#î„JV2 iá‹ÙòäoG-LOI·¶>‘êYÐfÁè˜{§G­\àI“—‚ à О#q/@éÃ$ A²–×&ÞáÈfÂvdG$p5e¢,ý¸üÿ ýë@a ‚½">Ûú@a›èÃJ (’)ÿoÀ³2È\k‘>«œlw=V¡@EÊ.w»Û¯LޱÐ~ì~ÙoÿöyÛ‘u0|‹ž¸Œ ,ˆtE,ŸPª ´ô¿PA¸¯«ªÖ¼ @üàòbQ‰uÅÆ¢õzbK¤;&äÊøó)(B õuêL.ªí%«=]hF«ØäàgU»*}rTa ý×e&Z \¦Z©ï™K…TZdÌÁJ†~`óR¡kY´'d$óX5v–\Hy|Öº{'‹Úè›÷>,R¡îË$5ˆX^÷0MamÙ>Ý“ã%´y2XŸš!xnz  4’0`ç”/ Ëp#å Ž.ÌÐ}‡ådSÓ ?‡ò… 5üw,»>'ÙÁý'ã¹ÁñbŠÁÈðÀF£·G;bÒ8G„NãçÇ´Fáãǵ‚Fq™GǯŠl¡ŽüX;÷56Š{öSa´FÓð¬±Ô~)ðÚZŒ´Sá´µh°û#ð,=â43ã’Ã÷¡»>VÚ:‹lø§ÃÖ†Ë~:þˆz½a޾ÅažþŠÅ`úÐØpêsa¸Ö#¿`i8"¯X;rÞ¾,Âã…FÙhÂÃ…»¬*µ»X­ÚúÄ^,Áá:ž±˜Ð©÷W 8ð¯w‹sN<+×™ ©ØS+/‡B¦Bªv”D# ÓðÌD)ª¥:VV Ÿ ùÊÊ ¦ÂuF…6ã\Üa>_R|ë>î7šÂùÕZ“ƒD»ÕôÎÀà!#[Ësþ»RŒö,–6€ÿøJ«W±Z›»7H2«Œ-ð}ÇÆgßáK€ü7ùü‚p9ÊE¬¹³ÒoåðS ­£Ê5ÈÑÒ6æÅsw¥@ÓoïBîÿ`š¨ˆXz?Ò¡ö£µ°y+;g´ß’2þÃÒeí¾*Ÿ{¯ àˆ»tÄ/:޾/BCFbPt·â<„rÐh"ù‚ÙI³€ˆÞ­‚°dKHn¸ Œå£ ð„H|Œï‰¶")– Äa«[n`€ÈrŽ 8’I,è³[“-Æ%6‹dÛ¬l»­‹Âƒ¥&¿"7öù£>y‹ý"Ê( ´'Á´÷Z³K¾ ]½Iév³2Ê·"c?(P£‚ÀÂ#sÖ½6ÿx.°á¨æ]Õ¿ÂÎ €/ù4´¿×…6—ð %ø°%\‘©P1B1ÕÐċޕʺÈF D(Ö÷˜&d»íõ’K…UIªî3%†ƒš¯`%B¿~ZT¸<ª²rŽâ+,³Ã•&ã¡3*պ͘‡-=·“Xe½Ø¬—Fƒ–ø¤<î°8ÂéœûXU ž‚•ang5Î6ŸQÙB—CÙ”÷XÃaî D7ètVýkWÀm>–6§‚ÀØy'´0cóÂq†ƒž „u<ôãÀò†3$ûƒ“íàÞÖC¸Y_QÑ §úª©Øî]Ÿ¿ÏÒ8FŽ=#„Œ‹ûFþ€ŠðŽGÒø€¯á:ó’x/wéZ9ÄaÕ‚Ü•ƒ·¯L°_=¿TØmŒ?JÕàýó‚Á|D£õ\î'¨·Î+nñ-E¬?Z-Ç%‡¡ž†ïV©ç›5jëÁ:TúÜWK/`íñ}aägjÁ#Ø«ÊÁ¬ ™u9°ýèÕåM†ýãqËIûz~Å>£Ñàî«”z<ÔøF¹¼[œí›jˆ¼Y‘L<*¤t*a_ÝâÜÐc_ž ®S!U;"*d*χB VWa| ™ © „aÝa±XUß’!0¦BÓ•c­êl/ÄVH…6oOšOõóñµMÖÆ®›̃U~¹XW·eÄ$Å0²Ê¬ÏøjÔ!áU$áMÍŠ©CnTž °©^!üJ'h, .K&®HÔÑOþqÂŒHCÉ¢YÐE>þÄã'×D=*!éQHdè<°@ºà }ýèûûÑ÷÷ ¼G]7@ FÀ§TxN¨ðQáž?ŠýÉÿRrFÔ€Û¯Õí2·ì3V”g™í,aÅd‰´5>¦Á m‰PvÍ×—% ŠfmNZûß Œã"$1i_” €Ãd§µ“Í# Q/ã0î¨ „h$¨²[Í’>žM“3À¥`9|¢Ý¤À¨ÐSjn1þî%C"oó1-ÇJ˜ÅOÅš Úº­kÀœ‹qÄÿNXX,Ì·ñ /»UM´.%ÈŸE„:lƒ±:€½ZŸÏ¿õÒÄJ¦´Vó5OŒ”,89 61/žm1õÏWHbQ2 ‹p¢š’ë:™x̓©Pë §†kê¡‚Aº¨ê’áuShÉ%†µV܈g겕.žÏ2 "¥Âªg@Žâëšu¡Åm '*S2RR¡eiy™²jT,©Ù‰‰ÕH…Þl»3«üFÓ&¬Xý#Àö¥C`;Õ}¸™èh°8ƒå2qíaö~CèX{Dêd,Ã%´y2ð°v‰ÜÊ̘v~i²ÁÞ<~,¬¿+êÃhûa—ñ› `õ’5'פ2ƒcÅ—gÅœÈé–@3'§YåeÙñd••õ=Ž2#ê}œÒ.¸æ?Qñ÷é‘mâ÷é å^Qžc‘Z£„h[ÒüB¼&l#‘Z«‘¨õùšÁ|DÞV ðG傸Ù`¾xtû5æ*áûPSü‰ê(â§Ã[bÏÙ«6ÒÍ NÅ<ón¢¥bÃôr6ü\{cÞ«ˆF±Sy„u¼5½O¯¯Å7£W•7¾wð)°í°7ŠÎ|,5ˆänÃŒ>g…ÆrÖ~Åûnô§¸«Ž7FŸoïÎáO„+‹Å™Jd*¤t6'^o­âÜÔʬ ð(±¬þÚ b¡VŸ†b!N…õí°*t*¦Fv)Ьxr06©·]ýÈàTC 졦“ d:>©äJŸULTÿ_?TØø:2*l#…oyg s K;ë2‘wôâ…þ"HˆƒTr1Ø&Ê÷kŠý‡¦5×$ŒG\õºÄóèǰóü7‹»ú"®/ïwލ ¨_ÌР@`PH` ½Ð•À$`EàŤw0>¶'Ø—[n•‚ ö@nsÕ>$-L@Óp€]$uㆠš2¢æ Ò$Å2¹O+›°pЇ ™}F¥,¥t$8“€?ÎY÷¤š—"Bâ[Ž•1ŠŸ”Êñ¨Id5¨ Oèpn•:<=c úKщ¡h#ô—£BÔ¨ÑÐáë Y” *ÊøRYô4±5J}à«æÈêlkPŸÐàÜìöˆò‡¬íèÀ¬;¼WŸúèíŠ]MÉ` „¢+4Ø÷P®ÿá]é'n4PiD±ÝºŒÈáÐáë SbÖ®Ds4DØfv¾Z£‰m!Ψ‡ò„Ëä‰ •?­kAªÌA‹)eªñÕ%Áꨡ! ³¿fr4!U;„¢žhUõÀ™a 5´á é`Ͱó2Á„(eÀ´º,»>*ŸêuÇp‰F{?ÂŽ¤="QƒõÐ#xbk4JÀF ö뿨Ÿ±Ý¥²3Á§#×A”S D7ÝÖF©‘î|çdâ5£bØ`°·èé.Qî|硽äTit}Ñã †6‹Ô3qì~Ië'h÷û$xÃ;µ÷F»)8Ö¬Í0ÎíE—¢Ý•ãØÁí¾+Óáq²ÄHÂWö;pK»…ØŠÏ+uå>ŒÆÖFí…Ĩñ„åz5Ù[¦#‘n3¡ef1ò`ðûž7Œ-£Ÿ™æk£Ë ‹¢Êd*¤t(– þÂëÅòtH¬:s'±Œ<_,°Ð‹TÈUHèQ£ ë ˆÑ…q+66)ð•k¬å0‹u缬ñ¢Æ/Ç?6m½nPñ‡>òñ‹Í…ö·xÅÉ_Q§œ\#F2¿›â`bçÙ'ûÂh`3¤ÍÄ)Í+Øça>OÕ¯’ŸxßxXÒ]‰*+‡$¨osèÿ£‰a^'Õ0<ï°kÜL‚Kª šƒB±½žEÐÀ„sÀ1€ˆ(ü^;Z| ÞÓƒ„#-’ÑK(õ$–ò*f˜HÖÿ…ÞA¬ Æá v¤ñðY zX~Æú±VÑÐYjÃÓÙÞ –†‚Òö¬>ÏÈ} ¹&¨&iÍS,;šËeƒ¼öüNØNpßå~!^Âqöƒï< Õ rEf†sýU?¢²ìø³qõ^r«.Ï‹.Ï‹.Ï‹7QuÇ1úŽr‡¤p‘”}£4t#Ïâ8D¬õ~ˆ²ñ˜üG•ž¯Ñ‡yüX$N"#àÙ;câ ~á56ç9S/Ä9—K°1þ¬ä×K¹{z±a·ƒTøhdr5–†s°Ý­“+_Ȫ ß‘Øï(جÛNÁzŽK÷·Z²Å†-…‡+ŽÚ,ëchÏ ‚ÁÓ±ëñM­<)”ØKqìV*l4ì¿ ùÄ\o§ŸZE”Óá÷âŒø}Äcx£ƒ¨óìkŠŸ ¿#h¡>vW<àûý𦷊¶ìB› ö,¼B(1©ôx2C{o~†j|7çÑÝ”ú«Â"§Â½IæŠ ©‘S!U}¸2ãã‹™ Î_sS¡³+ƒaS m°cXBòÁ¾u†™…>— ¥ê|#ÚžÂË+‡÷„éHvö1Cð3É\_½ÿ/o!“ø ƒØ¯ú2ZH)@I@ø( qÞ(χÜF7Š3·û˜´QŸ˜Œ/'Ö‡e<ú•´Y‰°×¿c\V |vê› ¿Ø× úÎëÔû>zäH©ðª”œB*|*¥"Îþk-H-b› ·0cb™ª7ÛS!~)²S¡}Çz½êt/°ã¿z–òšÜ¦Ã³ *m2TøN£QÈ)°ŒOßVœ—ôDIˆª9ëFÐÿ l[ˆÉJsè/šJsðSjÀ ßèÖPdBÌ0(&#` MF•Å[••ŽN‡†q `hZDXðwVÙFæ’`@WÎh@XB`6îB l!ç% EŸ˜<± T*ÑZØT˜4«zw_¯ŸªD:¶¼XTˆ[§¿Q6……]y+ ºÆÖa2¤B«@‰Ša¡ùëÉÑDuàN%K„ô‡@s°RáXÜ.ùÁßɸaFœ:r“×C‡ú­M§í,øîr¸[PÃÒÍoùj·äô*SXf;ŸC֪ŴLùò¬xÔ㢱àv|Ë5øÿS7Mj†añ^xª ¸rkT0“ `:òƒ.Ìëúƒ¯9…Ø¿ee¦‹7VnoÿÐÚv+ §áÀãYhuâï7°ðùˆÂ¥)ðûˆÆñFf[b¬Sá÷âŒø}Äcx£;xy÷EO‡ÌFŠëC²žt/üÌYMƒ¨óìkŠ›:Z‰©°¾½5Å Œ8z…¶ˆb¦Â½‹/©ýoôjO…aœÄââ |6­F¡”úkrÊPp¦Â­ÇÌئÂ<õÁ½O…õ9 ÓÒa_añQ„”Íp³ ÛÉ t,¨[í„S¡ÝeiÀ"´-®å`—ôû†; Ò‚ZÂÞ “ýRœúÄ q ìšþ£Äø@]2 „"ƒ#¬5ã€[^¦$Ò/í4,áØRa6ë7ä^h.»ìŽx1‚— ÅVbRl•Uׂò¡À¯M‰H…ØÕ ’¥BÞï¨à¨UŸ&v)ª•¤ÄÁ*‰´À)ýw 3QDäÛ(Å7ž6bq¸Y›´¸of'… ìÄã… ûõFL>à.ˆÁ•¶g½Ö³èV+Ðö}ê­ù= œÖ»'p¾JÍ´šÍ`¾Û‡?f¬8ýß4ÍÓù®‹˜|A×™JZŸÄ0É­PuçÇÍÐe€rkTi9Ô1µ-ØYCn@¯aAfãêÍÇÕ›«7Q,ÆŠ8G&Š8Ã(ûGÄpæµGŠÕ‡1ú˜°ŽEj°óïdf³W`Vb%X@©Ôní寫ñ­Ö æ²ËS:ÙL·1Z©˜­ÖùB ämÖξFüëvS¡¥‡*Ù~Íž.mTÝN†wŒF½OaÍLÃqìV*f;G½×ÀŸ» ›qŽ"ýò™ ;~JvÿsŠ3«QÞ¯kNçØïõNß,FÚfžÎ±8¡‡Ãx63¨Ã± øS¼>è¬ü? þ¬GŸc\T#1û-&öÖ «±´^/Sà*ÎÅÆSá_f&ÆSé퇑6.§Àû8¸e6ëId¦íSfÆÕ6Èiè÷)ïß1æõæY¬Ý&|g2s]f%N…öt“!ß§@ˆbA³ú"$Ä@ÕŒGõ£hÿ€z>kâ”çÐþ%KŒ!„â;ô?éò/ ‰»åœÝ+åž3èJE¼ ¶Øu1’`AsŸ Žb¡ÁG>B•<ðÂw¸¾£ðÆ*L.ŸV[@£B[—®¤¨w`¬`-*D.-^^ór®¼€ÂeJ†uæÑa ·SÀ™E„8ÛÐÎ NÕÙÐ(¢üª^ZPRáÜp¼ãe˜Ë‡ÌäÚhè¶ÃÙ«ŠÁßÉÄÝBN;ŸB±Y{@eBÜ9ÙiÎïÙ,1Ó‰û•«ö= Íaû9áµêÅ´Lùò¿ß~Wà;ïÊÐÀLÖ«±15²À|L«t?ºCÆ}ƒ­'!ú†Î>Ù Ço ±V |D¬´Ñ; Ñ>ñϤûÇ>‘#7gø²ݲ-µ¹> /â1úT=Â7 Ö Žr Q¸t5ÒÀÔWœ¸‹Œë#qÆŸÊ`Ýá^ G{àqWƒQ=vÄbµ1´V¡jch­BÖÄL|Ü+nGuªùxóšÂÕfÊpm-Ò·u½aè×…:‹ñÈ^§´g[)Ì_ˆ®WíhÀ×–SCiج0[œî¤ÅZÌ<̳£†í°iáòâ0ñãC£èþX‘ØÞ05cNƒt}¸S¡ó…ÔïY¿ƒqSNº£˜älfTíÈÛ@L†阘îÉ’ý·#"<ÍNjoG‹P#nž£Åêt6ñØðè}ý˜¸Ü§VØb&§ÃÙ©Û l6²§d )°¿ÓtcqSuª7…7Z¶íÚõ‡}Íá&Âú€I£ž<ä§BûÿeÄfTÈUHYš;ÖUZcîÁ¹`°ÿHJúÎþí.?݇[¬¬ìb°ô´çwì–ÊÁïöjÛ“Õj°½š«Ö‚$Ö°¹H†‚fµZ Öë5™V€jw¢µC ÀW´0P¼vº°C6Æ€(údËO^Ð ‰¬Dy)×8N¹ÂuÎ@x)—¹D1 Ö½££|(†"±(–±‡+¶D°"ªh†#:ux5ä'."ã:Æ clkÎé‰@ÜkÚÀcÅd¯!ˆ‘­ ¼†"F´+Hßa­ÖàÕ:i®‹ ×ÈÚ3­”è ¬5M:Šý’ý¬#éL†bш®ç{©1[ƒê¦Å8ðœF>swÜàu&+áè×aB0ù†FÿŠƒà×k»ðýö÷C~Aéý©Ð«³SN¢G±ÎÁNÞ}ÑS¡¦7dj™øaØñ²™ûF®PcÜHàtS=TE¸Z¦@ÕšLv§B§ÌÆ7)ðû9g160‚ ŸÐ#hS¡ò§d SaRgâre6Æy‚-SaUk§¹>¼)®/©Çæ*l/«M冀N…y>ØXTÂÕû¹‰‚¸_WÏRbQ H6@Ò×úà)Kþ¹…#JZÓµ÷Z(ËvgШĪ•Ürþš$šmž†X¢@·øšhAuŸFô̘ÝèùW?#;Š“ ô~ÅD‚³–þB‘=PIPâ¾$ˆT,!z— ñ8fæÅ.°ƒâT¸mÇ¡©dB­Ð[yÙI…{6›Öàú‡Cž‰þÛ¬€Ö*\>`/&ÓF\>`/&ÓE‹>{7Ñ2h|šÃÄOÊÅHÃaì÷ºý­?+*uå~Ö  Øô+;Oª‚К Ë±3­•ÀÔ×€° ñët/hpÈ\bgÙ@19S B@ Õ Dä?P¹»ê€¬–n>¦Þxô˜dêÉd䨠›yãÒe‡¿I÷„fƒFýD."±D¯:(Þd,ù Ѹw÷ñ^Ä|‚%cq¦Fãƒ=I^ EyWñ«– æ²Ž cl~ö¦6Çï{«¡ûÚ™àÕ^¦AÅÖŠÝkE~…û뵄à×êr+õ|ùÖJt3«+Àôk°¦C1v"¸[œî¤Ålrª›9ÆmäVv¬ì{ð§b¢ìÅa€ýc~è?cØ«è}ÅX§=b."ÚyÏwâöû”è6Ý‘ÛFS¡¦f*2™çÁn 2t7^¡tïn±J™¼ô£Åêt+牕:>&0½NêµÁN…TD ì§VØ ¤pSaxøü÷)ži³Ì6Õ“–L¦Âú·<È |8ñ ’nµG!Š› ê æòŸ®ºÌÑ#­`[a5ªäÄÿl @ü€/:YÈ)Š%0V´ïøl‡’ê†eNÉãþšr‚§*œ!Á 6S;„Ø"+6>T(.Ë Æ6)l*„¦,u"Sæ£AÝÖ[¦Z¤A´4lΕ"¯©f¤Â¬×·¹K…YPƒ›T¸uOÀR}i¹³ ÔWt,Æå&»37 –¯ÁÉÙD¿Û¼T¸|À^M¦Žƒq€ÆóFD¸ÄãYH†BüMG)òLô+Ò• …Øšä¯Ù¸ÐR r´ç[Aad†vu›¨Øß`ªh¯ØõÏe\ O_5Wñ2«Ö¡â³È^Ð à,<ûÝâ|Vhd €œè Ð,aP É8QB)µ~à<€Æ'Þ9ôiïÒÍÇÕ›©÷Ž}"WX£ø?PD#1Òu„xöí·hÜ;«Àø‘FáßßÅxLü¨Žk(£v+@ñYCx#:½^ Eiöâu¾ˆ¼N¸Õ_hE™úWÚnu‘ZGƒ[à°šñaÊ™ èZ-ºÞ°ß>Št3«+Èôk%2‹ñÊøvÈf.ÄW s‚=Ô˜­ °7ðVt}¸S¡Ÿ§|Ú¦YùPÂv{ò=í;=ùöèú;p§k"ì”èiƒË1ºçÁèþ•2¶èDº gžóá‚„}Û3¤PS!ûôs6S+#ÑáL‡)XاU1âeN¦ü7Xf§V¾ã8¦Q»å‘L¬_¶{ÔÈ_ùÔîXûÇ<Úå>x†É6°‚M†3 d µO†|˜Ü×ÑîÂW™›Ô΂†$]ý¤1Pà"CÚè@ÔXEé&öïønÞnÐsùÊ•ÞÏúp>0cÿ9K¿€mœ7¨}›¡Õ†žþÒZÝ,´hb …Ó]D«·Ý ^ãÓm ó ÄÔ¨x©ê mQ » ž_¢ä8B¡Ž[‹”‡‡¸¤Â¤ÝNò¥Ãª~š“ öm¸ZWölÂõ#Õ@YÒR!Wfm» )P«†ÚhÃÏy\(ÕpöjÕ#18áAÆ„<âpó“>Ç$ú©¹[œî¤åa{9ÖÁaG_’_c~U»)P…ÖšüR¡»Ûê°Ý`­¬W‘7YYÁ^hνp¦ò°?{ \çzÝ Å° à]æ=!xíïâ`|Ov x ?nreîT6µùU~xL½ÊÎY¸Dð8~¢³òÜ;¢ZNˆØ[:ö¯â)Û„n¿Ä ˆñY+Àø‰‰ÕËÇ5— â"ãQÕ\ê yW07T¼)­uK˜ڃ-)”Ö†­¿3hºêÜ-» ¢¶[Öó§ÑO„-ePñò=íL†büEr‡¥†Ðj êd3â+•ð=ì)°Ì\oÁS!˜¼^+•ð{EÕÚa-ë×êÕ»q¯*å°ÊïÞÊïlEÞ¯Ö ÷b=øSè‘aÌTï[möVžEѳқPæ#ꙃèÔT#VËC™ î×c/jd/æ{‰Z÷)ÐzîFÇ ueèØ§Vü‚øAN…gˆ…ÂY›±´¸*eG÷ 2û?@+º4uáN‡Ž!žÁL¯P† 6ÍÌpõ>ÿt™)𪀜\ ò¬G“4úY¨ããú "jªáýfvì÷)qþéâ]< å/.ž +û$P‡_ôÎd “d¬NÊzJFAðÁº¾âQ“F^Gˆ`‰›r,7ur~E¹ºe2к´“œŒ"¥Bçüm,ºäÁ’cÈùD©U}ÚònR+Î<àˆaVüª¾cÝ 0µK‡VGí AI©öxRjRÐyÁI©ço޽­•Ù^}"ÂWñ ˜æ°q“ß!$BOôúô¤ã¹ô:ÝIÛà?âÃY­æ¢¹-¿^•›iÙ5Òʆ²„·'ªù§äÕa!p‰zÎåa,Mn˜yV€jgó„æ< ¦Bö€+@9üá ÅðÒ@¶3ì„ Ó²IÎÀoÚ}ãŸIÖžý,Ü}Y¸ú³qõ°aí>ñϤpŽL=Bâ‰F㌠{D­å>¸Fä0*ðj;ÚЉ`sLJã^ÔcaàÕV„j; ­âÅx1Z…1Ñ1Z¨]‰Œðá_n;­Q§#}†©ÔkÛŽ5åN ¥ºVî¾G£YZ§,9V̾FÑm‘‹ßÜÈÙa¯H‘Æc±ç´ì"*L*ÁâF⢌Æ=ë® ]w‡©0®2œÜ©U¾) T¨UDìB• ›k3c\¤OkíÌÈaz‘ùB®R+\ÏŒ¨Uƒß∿:„®17œºßû>†Ü­KñÀWKs€=Ôœ©p…‚üMp·8ÝIÊ—Új­R¡÷ß6©vž~(øÚlMw©¯Wz“^0urÞlõ娛ªu/ÃMå\†ÄÓ”ØðÜ«l€ÚçŠÝ°6púS­=úYÈ Ã´%GcP•…ãÚÂä{DÌÀæÊ¦Dm ¸L°Ÿ>‘;5V£WЈÙktNÐ<"8ŠÇÚ- 㱚7N‡ßê½ o¨çŠ-¡Åj*+T]oÚ‚¹Ø×ÕÌ Õ*’šÐ7Y\ySl7_[ySZYRð¦°Ìzõø¡–ˆ´W蚇xäUë~Ã}qæ|!hº¸ñ·aº¹ð[£h¼_\ƒ¥—ƒê®(·FÑx¿¹|OF±ÁM}p7ŠáM„|Šô®gaèÖΡ˜^жѭ;+;¼Í|s¸×jäeØ=yš»Ò×_ª}¹Ú=<)ïƒåaêÞüùú=©ð¿6´Y+8S|ø=”3M}¶@ð¦BûõÜKÒ™YŽ*m5ÖØaŠTÆ72 ·c¦§ÙûѲå:›ðÂ:æ"´)•ãC©Zò300È)Ðiß_¬TêîÆ¡S5©Öe2çÑ·rJ õ¤‚› õý¶á+¶½úâœEUùÿjÞEäª%ƒë9:D~A"PI\,Œ²ÚÉøN'oúg8e qÂpS-$>ÁÜZ·ˆhCuFn„”;[:• ²öPM4?}ù \2ùÖ¡IÒ¬½² ؼ/Ù•]áÆ*D=õ”¦J• ”.s ªŸ³Àš‘*r°µH–×[Æå"`Ög˜©Wù7ä,÷9MBüÏŒ%Cà³RuåJ†}Ûo%£~á^ˆd.šåèY‰î…Œ·í7U@!4¡`´âk….àWÁÖ¦¼n¡Ü95zÃ…‚Ó[«Ý‡Ï^À]îê’½€ºßŠä0¾¢g–*ä9¾ %ž(_:ˆ¶ÔNh ±â·@ì ÇÒ…ã·¿ˆ ÷< vØ'Þ9ô³qõfãêÍÇÕ›¨•„khá}²3¾bݬáXº'a„g|Å»Ѻw¯jô8¾¥Â7v>ýî¯Cê”O1V~£woµššÐ/±NÎúžjôFÃ^ ÿC^?Uþ†¼~«ý xýWð6ëps5~™Oa˜ù×sÛñ_;þkáÂ|!hº¸ñc±è×¥6Žë5ñ=ô¦óyïL¦Ú|Šõs+F·e6 <ìB =žê{Œð6Þ*9ØiŸU?œì4ϪŸ†Ã­©ðŒw´kRSá{!ªëÔü¸ø}©µ¹r¦Âý­IC0ûq¶b^¦ÖFZ Saùm–àØU¶Z"/*}?™‹0ŠŸ_®Iœ)Ôÿ¢´)Õò!¥ÁS+é‹!2£f ú…ã’§Bû§íŠ{üÄnTÆ>a¹S7©ç!N…þ¾YVrx<56vþë!¼SNi°ÄÚMìJºˆ6Tô•¬{•œí'oJvO?ô¾eë™”â(Ê‚V5qØlAuÃÎ0P :±K5&Œý´šÅ»©p»3—›báI…q{ ¹DÌ#GpR!\þT‹«Ls!J…wpÔ²«ÏBÁH‡) H…X#tÏ*GÉZs°)P»6°_ŸâÖŽæì†>ÚM9´äˆdþMeb’Úbo5Âúân®Ýnpº“•.°_‰®÷µ'+H_iªµKq÷êoްÍfá6óÇ¥…ÉX\Ÿk “íar}¬áXº!a:ÇÒ'c jíMÚ#c„NÈñ[¢6†;"vGϯÌváXâ¦(bݾÖh6†5½E^Œ«Õèq}I2öŠŸµ6ÑmzS`âÜ*ÿÔÎ"©Ö¸¾ïGÏ Ìèk‘ð­3}þÇŽøFÑ}sçnÃusãÍ|8aÀðkÒßÄW.°anª 6â; ¾&ì+; ð5Qe5Æ+ë†SòÜ|Ø)î3ÄXkx)ö·"»SínE›{¹Oç~•%?cÑ£pSóæÃ‘ÉO…ì<†«”ÛaÅú1Ssç‰ýPOËBÚf¦ÃòÑ+ÁO‡ó1eáM¬Œ´'@§Ö[b§×©1SêÞ—>fQqb›Wê`ã157_ÖØî»t yð¾áP}‚Ÿ¯oß n½½™ð¦C÷K„®y_&Ä©Úú†rƒ©šÛ¡ô[Ò“Ïý3˜O›£ã¶`ƒpl~k©“2]pó˜’é;[L®WJÜEÄ]FL.¬—”¯5¼ì!0Ю2È…—‰½~ŒˆWå©*Eõ®9¥WÈ6!K†]_)›b¤ivƒY•#ä­9ظ]K})>|ž„pRé…§3—’¤Ãk¬ÔyWºú¯K¥ðgV)< ±ï™¨xy>«¿Àèc&½ %Â6 «ï< ©²»Ô×Ô; -7×Eh5zwæ¯*äBÓ^ ™5µE¶8WÄægâsø@í‡5ºÇ4ÀÃn>!xíïâÖ×Ó ;G@¤Ù–#ÚÂä{LX|øFÑÔGÅå°c鱊!háŽè…³¯h˜q¸¬Ñ!ãß•x5û¢'dp3­N¦è|~¦^ÑSö¦´EÖý ÔméZ½zÙZExSHÛׯÅ<‰Z*Ê”›Ä*¶ì7W>¨äT– ð¯:+=Pó<¶cºÍYìkši°ÌwY¯‰¿ ÍM„<ô¦ìr¾¸eº%ˆ÷Þhln‰æ+ «œÆ"êí\æ;‚¹Ìv+vì­kÊŸo`åw²§¾¹XiøSóæÃ‘ÉM…çØj¹MÛѳ#²†\~Û~Šl?m²ÑJ›YhNM‡å¶Xc€Su§žŸ¯Û¦Þ§ë÷pÅO¬ú.¦×9ÜóSnù¼œ> ·:©¿Eާ5>®ùÊŸ÷›2%æM¹S5ýަ)Ôß‚´©˜j߃™:t-6ç»Íiý€¦Œ‘íÓôp)ƒáYÉÒØø®Ôï‰çñIDËh@ïþ™Îº ty Ûjœ´¯ i9ÂÙ©f¬ ùßWo£ž˜]îEÆå*±û;ÔˆxûŽÃtºë]† EjÇS²‘ ¦ÅK§öæ ]g¹…êEfz©0»{–ò¤Öf܆ÒRòâÀøÔ—ßu?*8§?>´T–Ó}KE&Þ\ÕM^ên¹e&ûç-»MõÇ™e²Ô-Ë~ÓusâîÓiûá`°Õéö$BÁÌ-Êw³°{½Z½úüNÎë~+Âúš0‰­ª(_ÛÙõº¸û:¡|í^•±>Ð;KU^³ŽgÓ!s`XR}ãŸI÷Ž}'Þ9ô°¹Ñ+D1šÆÊ™‡+Ÿ”MceL‰‰GÊ"p51Eb*a2‡•x5ûª(ÄTÂ(ˆˆºßªÔmé:ä@ÝR)Ü=§ð#š°§ð#š°©äNÑVÔç<‰Z*Ê”¶üWÙÐ×#â¶lÇÏ?ªx°ÈÝ\…>ñuµñCÁ¯YáÄO¶lÀש°ÀŠ«VèäWa\æ=V l2b,×ÝÊæØŒî®”Û.ÀÝ])ûëv½à´íÚ)¸]äv+ ÔúæÊŸ±èѸ)õÄ}•6 w‘ì¨fén¡ÔÝŸ¢xA5¥†W)ú¾>ñSéÛy‹úŒÆdˆ)ö×$ˆIO©{IM¬ ]M­Îc•sR!ø o§Ë†:j§ÎÛF/K†³uíìÏ…7[EΚ©°“Â~paº_C—6† d*Íæl„TêÌÛg¤Û®áìÎúëpeÃßI/‰¹·S (•IGÏð"ÞnÔ˜º?‡¿ú?2ˆå¸óX‘€aüÁ?C03ȉiŒÌ JV ¦Ä79ÏîÁ–:ˈՕØDXr¸Ö*F–s˜·*Qƒ©P«®œ2*CaÖ>¸/I|åI‡Z4®&¯cäÚ¥ióØb½«ä#x‚“Ë,´ÄÞŸ>L´)0ü°[>tG„?~ u½Kl†vš~»¬åϯRxÀ_]©;É«ÊÙšô·LðPu.šÜ£êxó;-8ÖÞe’!`ª>mLìmNGòlº½¦ZÓRö™œMŠÔííÎë~TÀ×ÙÕµ ØÂ¬@F9ú@ÍœKÕ\€X´åyO´Y¸ú³qõfãêÍÇÔûÇ>–„BÑD}¢68æ·DÆ5Rt@ÌGcí§zô¬5Â&%?j'SS!Ǽ¢‰Dr¦‘·¯_‰×h>ëØj~Ó³²®VfbF¬«Ó˜['ð#š°©äNÑVÔæ+ f.®6Vv«tDÅõÎÊ}ǃR§ßÄUMN6ào«Vè–"¹‚‡ƒ]…(EõfK†#*ål˜Œ ÕfJÅá(Ù[©¸ðzýO¾<žª~<yOëÁåoÌgh¦ŽJ~úZ.ùšŸ¶†GC„òSöÔHê0–j~úZ.ùš€o–vÇJnÖÊ`èyS!æØÙ¹Mû1ìH)õˆÔˆ§Ã/#—§Ã.²‹‹þ<†ä:Ÿ[›È<)µ„¶=­ØãÆΊ~³Õú)þªmIÏŸvçIºÙUºoìc'i)úééƒÚW”ýú Š™òmà~\¦C/n¸³û2©Ø­ýp^ßH2>óv¥Ëà€ÚM¿Øzw‰¥4=64nÕ‚g†ƒ"!½£~p œØš6GÙ©«ì 8& ?£ ö„Tm§¥ûê¡sÉx«Ý“ú`»üG ¨,ؘ΋ž™äKlFEÔÁž°!̈ÍÇúo㦎g±`zkØPëY¼2.“üÓÁ3R –ð0xÒÍ&^ 3¶Ò¡AvÛ¤²Pà#_x˜S«„À•¹b+Za‘èÑR4øùHÚÅH…k‡!KûÝÂŽ ò„üêvR+V:”¸W‘©oWúw_|/¾ÆI‡í–X"n*M@m3ÑRáú}z*^óFð¥Øü w©¡ÁîâÍê+–'`άRqàWJNÃ;îû’³ÜÕZ¥–ÈwY«=Íqú¥Ø5jµ3°Uµ97‰§~FÌTìFQ†ªwÔ7!M¢ÒðAÒJ|/'·;Ÿ oUxåOáÏ­TÊ|·:Rã¬öÒ;ONTØovc6)õÎw´”úËråLû/dñ%ÎŽ&ì‚?Øx„LþQ¬çžA‘óü·›µØ‚à¼ôj¥£Ê$clCÃ;,|"ýþ“´æÊX!æû"Ààµ\³iø™ýP ŽïB ¹B‹“ì3ä³ü;'~š|œ2^ ŽbgÔE4Fú/•y4d?ò²c«æ¹ßb0©JD<븗¥.©Å˜)0ýÌãÅ….®n¹\àÏW6ú)7|ÞL/v^ç—TæÌš€žæÅ'k3¬£X² ‰†D–6Pø‰Ø_:ôˆ°Ñ!¯h‚ FèÝÛíf€`DyDŠšµzõøˆ×úN`juä áXØjÊš°3°Õ•58ØjÊšyïÉè:¾®S–…8Xj¿Vð±N-<볫fÀЧÍXê2®VÁžuÓ‰åQò¬u«œÈðkµ;c²°S1ÀÕENÆ1*Ã;Ä« Tì`sñŸQý©Ç_c½”êõíMÛ°k0ë´Çy¨f¡1ë2¦|‘ôd¦o¨áM‡ŒÆâx\§Ôå *vûú2S©Ÿ· }NüˆåL:Þoö/ÍM­ÎG…ߓۛ€wSmã n§ËÍLlÛf~ÎÇI¯È¿éãi°ÛH)ºÄm¹òTþ5 Ø~Ùe‚8ç3Ø-:½,C9þÆƈ T_!å(~e ŸàEºZ»L§ÁÿF«S<§ÞÒ7ÎìBx£›§¥‘A‰"QˆcÏ#fEžœÑy áÉëC2뮇ˆÉ*íùÉçö½îò£GB‡¬t( ýèÄдïê¬zÜ@€8“ ‚)‚Lc .Bâg@‡~Ä€§¯gñ1›ƒóÀ® yV8[|”<‰³óñ1#JF¶^‡£c'M¬¶Ãº— ´õdf¤éAŽš©~¥øçkæõw‚ÃM›ëx°ÑK¬Qr¥é=‡·e"l€Õ㊓P;”š‰–Ü'm&M³<©XÄä$*ü§Ìô%Æi¢!ž…bɆÓóÒ½Ìú¬T‹Ì°Ä´Új'Â6¦ûDøXpƼh­ˆË߯ÄÞ$ñV•f&fjʹYMxúU€•¦­©+*ò€%j ÔÇ ½øD89 {(_Ûíf€° ;aç×”Y©¯d ʃ¬Ü}M¼ñégϦY±tÛÏ–n>£„uöɈ˜dIceˆ‘óëÂ"Â4!²öˆhݽ}D çÊ œG•j6NDNÑ}V /a©Ó§ `Ej¦1j°3°Õ•4ó‹ElSÙŠjí="&-?B¶°ÌUŠÈÈËÅmhžA è5RVv‰c^mVÍ:Ʀ¦ DF5åCæ»V–‰åQÉL1•Öý 'ŒëÊ™Œ#}•c)˜ðj;§5À‰V v09‰V§µàªv1ÔNêqÔwïd(Ô¯jv¢èØTÈcv~Ê„ZÍa1ëU3ä£áLßQ™°–c{zS½_ 0O=NÝÂLý¸S©žýBœoÜÚ9|TÊÇÁ;.èâ.ÐS©¾L*Òв¸)ó¯Ó²Ÿ;~ù;)·Çÿ¤l§Î½*~¯ä¿ÔÝ_ O Wy¼ É:ŸçöS_Nøhýžd|ÿ&9 ±$Ê|ôjÙØ€Ê#EûiÓ§N:téÓ§N:téÓ§N:sI¼P)¤½ïXËžbGÌl€_L¶©dé÷ëÃA%÷ê ¾Û6:„s+a„fÈîHŒ„.“3è…1Š_]ʇ –Â)ßþ-Á‹þ0”Zlì€8€BŒO„±y™óìÔ(Î2"ë¢Ãýa‡ò‰fÍÕ‹ ?–K6nà`8Db.zò1»µ¢}Bª2ÓÒÿˆÀÂȇDRÈ<…G2Å?AŬ¡k}ÖÒU·)¾ ×y”µç {*TbÞ*ü8Šô±FQ‘Ï` 8Y>?ì™búÜ‹ž¿!üîï+G¨MFZz_·R-*_šoôZÊ'þöûŽý^(ü#:…*E(“X¬Ð"‚cH21ýB!oV6‹ÇðZVr õ¸-¡——Å“‹žR´ÄIgàꂎ´4Ùogöeq“?B€4˜Æ‡ÙY E‡KrÞE=ûˆ….®‹lwR^§ôl‡ ¿ø(ö¢!;}¹Ð)5Ë›TºƒC89±K«:^T½=o5&[X w3Rj&vØ4µIË=Iö¯ð'¡åá‚ß9Ø!uMKÏr}zZ¬w4ËÚ}_zÝ< ô¶±+|Ï\²ƒrkæÎÃÇÏro3Å^¬Å³5N¬Æ¦¼f¬Ä·Í\¬F¦¼& "J'P3€±@ó\!|éõ V?P;Kr€,|â€&@Ö(¤ «Vn>¦ZOi·ž=&ÞxôˆXN±ô³qõ±Š ‰ê(‰Ã/H…øDXFõÈFéÐûýFÁÝŽP àEE18ƒQV£kt¾¦r6Ç4榜 Øj³0"Ü;zyÅ¢Ú±?Õ…N6Ú2ª¶q°Ì\¬ì2*ÚÑ==)÷ JžÎÑ,Er¦ ðÆ­[¢XŠæ eǃQS Ð"ñ}X®lˆÄ]Wb®mˆÀÝWà¦c ˜ÔÓŽ"¼§p~ OXÅ>ïl2"¾ÅspG»mšŸŒFb{ðø+a˜Êѧ«Ôú$^ÔÍ®ˆˆ:øS¾Ç|(G a1ë2¦ú°ËcíM׉ïÉS~Y¸† m@ËcºS·Bêg‡§Ó=»‰)ØóoTÛ‡î°$&9Ü] åMòv–ÇÁSnÚ NÊ{ãno-ên®Ú¼õm’›éãúKd§Ý 5SõÖ=œ$•¨xÛiÙOÌïð{Lºáà—:ʇöŸ(/œj?žîïø1Ìx]‰&Sàÿç NjÃÚ´!¿² @£ .\$¸Ip’á%ÂK„— .\$¸Ip’á%-6Æé;€g8NÜ6¸ž?wmãñlê7'ß­6e˜H/À¨`pZ/…ÙJÇB~{#â4¬ÄŒp›ˆŠðe¹ÎJÿ ÄÃ- þr… @]z²S\d¨(s)ê}ؾ˜bê’ª*|= M¬o%ºeDvx꺀ò8x\s²ÄjÍÜ#šó…¢ )Ôƒ’Fôâ7éÄÉžÖ fe6!ñÖ–-Ái&¥íð‘ ÇJˆÅOÚôÛýàºÃ²„gþjl@ qÒ¦1Só§,SÒdrþŒ7û¾a÷Üt©ŒTü°s R9Œéè€àÿ1„ˆÒ—þï_Â3ø/†˜Ža?‚' ½zdLc—¯NˆjÔmn—ÔÑDDG!ào÷z"`„ÄD¼Uc8}׉9??Sƒ/I̦)ÌÅ1¨'3ÉàâbyUI[ }×´ÖF«âœ5¹CnþÔáa®ëÇŠêqàÔGŸ8S±qCU9­ˆÎÝûNkjy”óâJb£™O;[G¾ÔíýÖ*vÖ v£C(ÔÔìa¨–ý)›ï?i j#pÿÍD¬1yS7–‡ÙS=Z%¸áNÛ±²¯6èBS·pžz»…:‰´hਫ਼0Ÿ‚»£ˆ»AN¦[cº§[:Ø•:ó4œâ­I–Sy%L>7ôíukµ*u;våOÔ{1©…ÜÜiñ¿ö6îïø1Ìx]‰&Sàÿç^àlö*ÔʦU2©•LªeS*™:ý2U@U@móôPS.ìô™wg¤Ë»=&]Ùé2îÏI—vzL»³Òi“©‚«ò²6#·&,*/.x&™»D@ËA+t=€#ÀA>p#–='ˆc€fÁhªGœC1†·if.œAïb²³xçŵµ“Nò»(wË+¯‘âCL3·-›Žm˜Wœ?ù‘`aâP Œ#Þ1v»p íäjO,l*•äd ©G¼bívå†èÁ*¸ d@~ ìÚj_ýFÛ#c_%³çB@ˆÀÞßýO+ZÕf£áHb¢2л&#‚kÿG…Åô| ÑiÀ€ã¥Lb§ì`x€BŒO‡Ô*£-=/Ô,’BQø§õ >1dR >//$0µ ¢ =!2Òp™8oql`Þj(0¬UƒEˆ ¤ „P\ €Îa‹—¿ œ¾ÊãbD( €‡ ›¼ŸÙŽÎ…ÅC¸Y°5èã®ìkoÕ'M¦2ÁK¡‡d¤Lüú馜+¡¾!F±Ýц*FÏDz¥S=Ú*§n€)-€áH¨IÌÔÈŸRR¶ÐO~”§ÏK^T¬"g;5–Å4ÛœÌ?I†Â':ð¤™Êë>P[i€¬ü+ &£Â¶´Ê±ô¥ ë’¶°J°©+cl°ýñšc3Lš…¦iˆöS­·RLDÏÅV.ÄÊëý ñboõrpú½ÜÍL†¶ 6Ç ø˜ þ³¯)øV‰÷Ž}'Þ9ô²bÉ‹ŸÁ0Ó¡÷øˆ"hÀßîôHb/÷rkÑM;µWd=„Ä ¼¦^“´]U…°×ߺw¢,ž#âz"Éâ>+a¯µl5÷]¦Œ vʺS…ò¬ x®lQžÃ:ÇÚœ5 Û½UŠpÔTrCn†¸ÙLDc^VÁóQÍÐ[h¬ü¦Œ«Â³Ÿªvã+k:–¿|)ÔµûáNÜwÞɧÀ¾†í|.'F¦»†$‚y>ÓãÊ™vÐ4ÈYê Äí™;FÑ©ü3åL¨ˆéÛÄFêv²Ü:§§kì*uhÕ‰S.äÙàˆ«&¼øµ2ÓCÈ u•ñ²fiû*t ~š c4ÙLƒO#o€ï‹¯‰á0úñnê`Ó²œ&gÒ,*É)ŽgúÏwwü˜æ<.Ä“)ðó¡xŹE!õ2ç“ ŸY&ÞØ›{b¢^•ôž³³yA²”1ZzO·‹tUmñ6öÅD½*%é6ï ·xU2 2 ³ n“olTKÒzÎÍå—„Úº@L¸yT2C³>ƒäGfð€ŸPNòdçïïH^+@‹°(L䯠rÉƵPÎÄ^ä™m¥™%¢žKíf˜U "ÌÓ)X S¾=ðûr… €u‚­Y—ëZ 48¬P¾Œ16ˆ?86½£`»tÇðT9¼¦LA·…ðþ0Ú0}+6(™RÁC –Á <"Dâ,-é+d˜€Í B2ã€Rk@>³{,ˆ»D0eæ.…Àaž(PîbCȶYøŒù€K’Œ¼fv ("¤€Džç„dA±'ÀX³’,…å‡jQ°³áZ¥ÔD§ŒÔ¨e¬²©T/fÈ‘vJTh ¡Rü&²4´"ÿ6y%Jã€ÎJ¦&FR*Pµ#A+NþTõ2áue¹O6>xO619}©XÇÕb¤™£ )Ƽø¨ ¶ÁYyR¦¶Í º «T¡i`ž…‚uªØÙ,<ä­Žžë´Ôm2Ëê`Ff™5?Ý^œ‰•‚ÿžr˜Ÿ&䂵;{õø€°h…³·»êÀ#€© #ëËÿCŽÅ1¸íü â6BªôHLkb £woµšÍM#o^¿X}§"'æ«ñ0S¬³SL ½& ØxÃÒh¸‘á4p4É‚E‡ÅÊ`:ë%‹EVˆmÞ«…8XeXmhaí p4k5Þ<[íDÀŽiŽh7«^ÔÀ3¸NdCêY.©©˜ Lh[Jò˜Ððh&´< ˆðh.àzís8ÔJ5$37‡Ú|yS/¡Ÿ*f¢ìG´8±ÞTʈŸ)’´o·)•¹Tb v v˵;Yà]õNÁÛCè©×ybÑÐ©×øxkqÍÿJ€l·¿ ©Œ}^TèÑIÑ¿šl¦AèžÂ˜Ò‹}:ˆ´èä)˜un¤©›_8“„ÜÇ`H¬BØÅÿ® @üà–ž[¿àDÇ1áv$™Oƒÿœ2Áï/(íX¦.«éWÒ½˜ €]ô™hr}*û@_·UÀôœ“ô‡6ø€Ýô™o‘ì*ûWÜ¢«éútV™w•@i‹¼”1§ôP…ĉpV€qÁAáÐ8i8@ablLy×êŒ6a!%ø—ßWÁª>,  I"\Â5€”È6"Äf8HQ¦že„b3ôß‚_ 7eÉÒþà7øÿñ ú /(\¬h€ÐâÀ¤½š—ëZ 48¬Q¢~txzÇAí Œ_ÝÅ€gùMŒþŸé#™%*ÍŠ&T€pPÃE`!¥Çvê8#aB'„HœB…†¾2g@²BG PâÊTïS<@ÃÛPÌã6L%¬aÀ,'m±C ,ÅOÈv™\ û¸¹†É»BòêbŽT  <…÷±A|æ IÞ é''¢(YŽö d09ßW)­ä¥qä„Hñ¯¢¤Y^ÁR­—^Šhèqç’SM΃ÙR¸Å 9%JãH¼”Œ?©6 âvA#™Ú˜©XMÔ}'µ€À á¹hœÔð( ·@*¦¤\<þÅ@Ä×Õ\<Ùí[ZeX©BùÖ<ÂÁ:Çêxà)¹{¼×JØéî­É9!Ê“äÜ€hÔÄLüUb'ɹ#•¥›Í}Çøpμ²lx­Ó`ÛúI,<#pîˆ"c[?‚&P<|¨"š s°¢šr"~j°Í0a#LžˆŸ‘î®N D½ pÇð¢& ‚¦X©€Ö)ÀE£Êx=£Å¡ º«ÇF±C EÁ ·ÀÖ^ᨨd†GCUb˜5 o¬¼ àù ¦ En9ÌsL†ë´¨i[a«r5¥}ˆ8WK˜+lz±=¨äPC<Ÿß{¡™¸¾óç¨ô¦Q>#…ØÇË3} *d¾”x‚™+Fñqb™‚#Ê£ø!N|ÊvÈS¯ðᣨA;¢x ®À#¬Mê>ŠœôÈ úðþ‚x_~>…ëÃú)Àï°ö§S‚IðêÄ…2¢eÄB0à?ã ˆß×õƒcö[= ÈùþLsbI”ø?ùÃÞp¡ZjîÀˆEàªÂ@²þM¹5,*ƒÜu -¦BÞ?âž fä!b$’"€xŒ‚0{]/?Ñt]8 p°h2¼ÿ7EðÊì?ãÀf XÂPÏšcÕ„P `Ä;µÈ¡‚ü }uz«ÁµH†­Ç¶¸¡rˆE˜0$Ü‚ @¡Î] GxÅ¡aDGAJrFì8,[C‚ „!ðr8×~)VŸÝ…šóçI ç‚ÎŒ¡AG¼bívá°W‚{€1þœöÍHj*k°Ñu%ǽ½¿Ò±A?Æ©¸dÿ çÅ(V5Ký1(ÓK5êC–ž¹²Å› íõ ¨ËOKñÊáíà1Ò"[Ž•1ŠŸ‚…¹wo™cÊxÀ kL ²X‹ÞaÚHf˜AÌn8(F¶dùB]X>ðÿégƒÓF>QXCÈ $–¤¹–`—±{O` ö<‰µ˜‡"‘ÀšMÚ¼›,›­mê8ÅJÐÆñ>¬8#Vu*Á ÍžŠ-¡ì¡BÊÊz)=öJ¯-áJÓFä¡–›€þT¨]íPÇS‘ Ð;¡–§×E 6“E5 SuZ£s M¾]€©Ýº‘€çõÊ‘ŒN_‘CmÐSP€¾&°c• É ·Àe^@^h µÔ€+±HBy rü €`ɨ™øêôæV”NÄÊëýŽôKàd;XrkTËO^ÓoëÊãRÆ¥ˆþFL˜„± 1# gÒ2W®H†T>Va3š÷Œ„8áÃ"àAÁƒ0 Ç€1š `\#æ›=£QïkHp‡÷6¬}Ø×H±Š­pQ³€goQÁg?ñ­É×óÁuŒäõ£òX3ø/e`Òµê®ü£#žÀªŠŸBkú3?(ÙàÜ ¸éS©ø£3òž Ú£m9Ù’Kc›ÉAî™QÔÀ¥IÆùÓê̓û†é™£¯M¿Þ ¬[™XØß~ÏþOÑ3w>ˆ€ã¥Lb§åŒ÷‡†ÒUÃ2æm%c;oðצßïÖ$#õøóSaòH‘ã©Î™¼”œé•Ø€ã¥Lb§è(8öyš,¨(Fn«dZ†p@8Db.z£8ÿB韖ÁdòBqO³/ÁtD²íÇ Á°]‘,ºú…Te§¥þlÜ7LÍ꘩8ß:}Mä çL¨ŽËœo8ÌàhF0^Êô/2ÁãEupBÅ“&à¥8’!mù/`-’föxCâ•V©ãÒ 6¸ê<Ü…#$ ±pJºj"( æry> ƒÉp$ÉÈŒçtá²4"·A(\t0<©Z=ÆÄ|<[¨B`£ì 0…Dö†¨úITÑ¥+œA.û2Ó“=‚÷vð‚YøAl91ø¬§4Ë7Ð}ò†[úé 6§Å+›)¡²‘‰ãò(ft®tO“ÌÌè*¤¥ Lëž"á@V(b÷@g^PÛ|Uá ¿Åt†&i öŸ Øéî­Éå Xœ‰Ð§oÀ,— #ýa˜tníö³D4CÀ¦\‰r>V?ô]óÆR!àQôôE“Ä|D8dDÁÉăú1ÂÄ p2@ÇUb`ài”ÀeÕr¦>ë„.èém`†GCU%8mÒ=ÓªšŒn5æ(!‘ø¢|kT:ÝÅÑ’'môÈ$t5ºFÂAÖh/ÈÖèBÕ·(8$gL‡ÉŠ*(_QdÜPA= 6=”3ÏF4x!±S*p< ž‡¤ƒÌm$9¶â(&r=!gÁ·¼!žÐÇ‚‡Ž‹v§ ùgy– Ž”ìIsýA6ÏÁöžÓrÁ /¬õö£+yNPNŸ'°¦5GÒ îìòPO}9('+¶Ap'RH!`Í÷¦þ±'ŠËçùä(¨šŒ‚pŽÉ€5 ŽcÂìI2ŸýÁÁ:Lƒ$‹XAgb Q,( C  w"!Ò@1$@€H<ÀApA'&#Ã2’½;ôâ¥4f –<Â5±‡…îÿô•uBŒÛÅ_¨P¡°Ì¸/€<…G2Å› Ë‚ø``8Db.zP öT¨Å¼UýMT¼=•*1o~$)äcwkF|‘=¼·¨{*TbÞ*ýBŽŒEÏB~ƒ‹YB$ÿDßvêE¥KóMç²¥F-â¯Ä·"c?(BÜt‰ŒTü ¸éS©ùBŒ ŒEÏE¾NCˆðɨÁH.`-“ãÉŒÐ% g#1¢h HBvés©C`B[Ò ¾ û]œ€Dq±Š{ Øóç›È \Ô"˜P´qźhøŒZ!âÍ9C¨C 5š• #Ç·C/þP3iäÊ44á½Úu衉eײPJïŽû”À7”Óƒò‚YOÂŒO‰rèe“ïð¡²Ö¡Âà=xO†–ðÈ'y-[ à0­ItOŸ0Co…UŠPº'½ÊTаÄЬTX”@³¤.rŠ8š«P@ß$€È a©è™YðÄLüUb­NÞý~ ÌáW{dØñ[¦,|¦ ‚apØ"K6¦FáßßÄHLk]ÿ0ˆ#1Sþ-FÞ«™¦"%â¾"2!‰&‹‰Û½Uˆ\=£ÂˆŠ¨²j3@ãUBã(û¬Áîñ]¡‘ÐÕI  ÅNxC#¥r†$_þ¡†Gç¤17ðûÕ21¬ÙLÄyò‚GCuM2?=!íï°†x‡Ûñ ÷÷ÚâoÄ3Ä>߈g;~3ÐïÚàx4Ù˜¡ËÄ} žÄyBÀí±'d›Éô= 1ɶ1C8R! ÛÈt3lF¤:ë àž§X8÷=]‚úAÀ©€ü êÐ{( z¸ôQ£/Ï× \TEȸ¾ÞÊÜ\nZ|´%ÐM™ÕÛ‘¦‚Š–-Ïçõ©} Èùþ=˜æ<.Ä&6˜£E+X€J¸Æ0avHœ9B„.€%ù–ÀtmÒÔL àJpú70®+Êkƨ!´À0ÏšÁà£ýè ½áÚ&òDã•›-6¸ b†eẟ™0$`"0ïÐÀ_f¬ÞU­;C1n ÌŸ¨%¢§dÒr cÀå®Di> ‚D5ÇÑdY¸òqä¡¡­Øµ«¡ú³ qâ>PËSà„28ø?WBt ı=”Ðù(e¶ßHY¶Ø!•!‚#Ép‚!¯ –DõÚÐ Ì} m²¶CÄ3:W#ùáÐI ûð†gO}!“wÜ¡‰74PÁï¯h 9@Hd9ÁÒ o\ µè r˜š¨º8 oâØéü9/5X …ã·¿‹ ÊapØ#âˆ!Àh¹„+%žÓ7\PA•” ¢˜"V6â6jR˜‚é¶Lö™J»?˜$û ™È‘ ø7ÿ DKÁõWÇ/Hcecü ±{ü×hmº*ò…ÃÝ_tBã(û¬¸Ê5çD0{» †GJå ^þ¨!‰è¡?b ý~¡“6òÀ[Ä1"ø‡Çê+”Bþü Ž5p‚Õ²ØÅ÷—”=»> æûþ¡œ.>Ï”3…ÇÙò†xwýC<ßÔ;CVH|ØÔÐòÈ"^󱊓Aåò#i ÏÈŠÕÛÂê7:Òg«Ág©ðU³‰ãé röGñ{m:@ïsŸ$*Ú[@w«íZ×Ñ 0?€ >@éy<OÞ>ÐÇ5çúÔƒm[mæíK—Áq³äÿÐy“|É‹…'^ ¦J¥rUÈø,âR›·â* * ;†ÂP#ºÕ˜I¶sÐ SyA<Ëv‚9‚Û‡ $‹b9ɤHkäÁ¬»¼òz ©\ ÚêL‰•5@ 0#Ëv…Û27C,Y¶Q5H¯µZOAB@¹`0ô_È<È<“Ãy@Í£dÔòÞîÀVÈy Vèe‰}Ä“°‡(y>ÇÐA IjÝr [ € 2æ²Cnïñ 'çH"”è\åå IºV¡™Ò¸C¿Çï„3: «P¹ÀUd¦€`ÔS†2Ñ2óü¶w]ý%¼ÃÁ¼A &]„h¡€Ä⦑ c‚÷IÉ á¤„ÜEtP¦Bˆ°Xcô8 t³ÌK„AQôCÀ c—¤@!©Ô´ožuã âH‡mš!àQ ࢑MøˆbE7⑘т)ÿP¸8F´C#¢æ+¤08!ˆ7õú…™¯a Žž»A%Ñ| ˆÄW”ÈüòÈ;v{AˆöÃ0EnƒF´ÈPEnõVèyqû3ÉöüA=ñí Ÿ˜úBÏ{È'¡é ƒŸ“ô€G?!ʵò„FˆC6Çè]óp†ûHÙˆCv¥Ö»C¹¸üCnh©IƼ¡`Æ( ÷@0ä BÃ8×P¹{¼ÿÀ ó@9ajƒ]ü5l°¥Çb¡„éÍ;“Øk4-À 2áçp`QÁoF N‘•YCÆÁ9… @ nÏ©ÈJ`’„hÌFÆ6ãUþ/|꤈pFÙÿ1#,XƵC¼sL† ß×êƒ_¨b÷Ži±c"˜ ©AƼ!ˆ_ØRä~v†9Šé ¶@1B”g^víœÃyV5®6Œò‚X+d ¡"¶@Ú+d ¡"¶A qõo7‚zÄæØ¹ô†"­Õ¤Ðô€F’í¸Šò#Á^y!y!Hí-à…lày„ãÛÚ󊳓¥g'HbN ¿â `î´†&;²œš¨!€{*|‚”œkÊ‘SŠC ‚ T"€r<[ü.BÃ8 r0ð3: ©çýþÞþ —ð'0‘.€ »8E‰aÅ´Œâª½©ŒŽKÍFðù]*µ¿À,^ÿ5ßð Nჸ®?€bÆ;ýC¼sL†éUjdk¤; õÚ…úí ¸×Hdt®PÇ1] ‰© Š¤Tã*ò†IOØV5®p'‡V5éy;@ç1íXÖ¸A6³„B‡g$3ÁÞ}¡žo¿êàAßõ õnþÕ¼ÝúCaÁáFô%ZÀ Ú ZÈyR‡•mf9 Cò¡q’[5¥=-!á¼¥5i—“ÈVÒr)؉ؓfí%9%ZIrL×ÁRç?׈k9:þϯ]½)Ù<ÿÑy¸-R/Ғȳ•ø”;%U1’<ŸAsü‡ðüMTÍMwÒ€Ê\D+4µtö¥Ù,¥”²’ Ç’¬Ò•el¬ƒ#åO¯‘]Ý«9:C @ß„N€j­iÚŸNÂÝ©IªŠ‹@à:µ§jV/噾ÑSäùÚ‘Rð ¹ Î•Çð.þ€Üÿ,DÏÅV?ÈÅÃH"€$&àrPV9‘D1ÏÅæÿ!íŸgðâ¸þÜ|ÐþbFBæ|…=-)4é&ô´ìNÄìNÄ›1ò’œÇ’­$o‘ಜçÚ¯ê›~„LþQ¬æ œnU(89üþÀINÞ”E—‚ô^n#&]¡Àµ82w†É.E@¼¢Ð'Ê @Έ%0¼YA ࢕„!œ‘0;D+BŸÍ'µºúí Q3ˆ)g.ƒ+)e,f<•8K4ƒ«+ed*}|ŠîíYÉÒµ§j}|Š:%ÞD¡ð 1SÃ_܆õXeΰŒß®fã!Œ`¼ZÁ›“‘¹ú1N€wyÒèT~LHЦËM²ªC‘zs‰³+Sœ» rj §È!1˜óüJ×Êà cſȹ{¼ÿLcQ×åÓ°qi°. ^Å@=eRâQÀp'põü"¬aþbEÅHrñâ|ǵ;ÎÐ9dûE‚/þ$Œ "xdY>ÑRä}«ô§ià)F}8˲ jpp¯(!€ÃtsÕz^N׃ÀVóv†x‡ãâ·›µn–«X·:]]+y»CfO Cò¦9 Cò­¬Ç1áHrTô´­¥´æ|…=-)4é&ô´ìNÄìNÄ)“™INcÉVôà¤ÉäŽw°;þ"bqq½ëƒ@Ðÿ!Ôs÷iqþéâ]< @\2 à ’ÚËôªçÿEæàôpýÿy%rÏ_ÃHSˆ0+”+¥ÒGoàyŽM…°n}r×ÐFíŸ`¯øOjÊ‘VƒÚ(Œ rjA˜òUšAÑËMú¬d|¢r ä—wjÎN“MCÉ‹'(\‡tK׌¦LM0lf k³¡ÈD1fò†2sWMºÁWî-> N¤L*ßsu"ê+y1‚“ úk8âßàgÀΣö«•ÓC}ÿŽ*­iÚœåØR*ÏâAð¥kàÿCçÈî/×_Ô(±JÓ… \ˆ´çþRtùÕkü¢jeN?Äì:þlkÒåâ(Äx?Á"âTÇ3åLs>TÇ3åHr>í<…(5PSŒ»*vžBœ+ÊÔNÅÕzRfíN2ì©F}&nÐOpÝ+y»Vóv­æí[ÍÚä<®®•¬Ç ©õò Cò¦9 Cò­¬Ç1áHrTô´­Ò$lù†ä!Ìù zZRiÑV3è+hNQÙ;±yö_Ê”â€zGƒº>DìQÏ28öQDãàHðô-±ôßÔgôÈ‚ |$&%ÓÀ©3x%µ“"qå@øÁüå.þ/£ R4ï·=7ˆLÊÅýÓI’ÜÙÂSX§h ÈDxGøí±TqÉð(µW–\³×ð‚pç&Ø ¶6—zD`xB义éؾë·wðŽG'ä«!›WuìG, œ!Ë}¾”ƒ#åL3>„ìá)j[]ü€Àukfèv=å‘<ú[öR4‚Âh êæðý;&Û§ÊlP!/ÃÆ….V6_9ÎD8úýk4Ýõ*T?8ºÖ*–Qa,>üÏ€"Ó®,ºú±†€uÝd,{µð‰C•¯ƒüNrì2µò¤#åí¢ÀBIÑ €&.Ð8˜„H —»²Ë D—G‰ÑSç2&¹‡Î¿‰Æ]ŸàÀœÊ±¯JC‘ñüÌs>TÇ3åo¼TÇ3åHr>í<…(Ï¢§vTí<…c^•MUzRfíN2ì©F}&nռݫy»Vóv­æí[ÍÚä<®®”oHñICʘæ<)Cʶ³Ç…ÐyV²U¬Ï¤9Ÿ![„qÏÙ*ZZRüOR ‰ž¬´b1¾›ÑÛ>Iön„„{ŸÀ="Üû3ÁßÞQ±&çÚÞÑF/>?«`6Wô­iÚ“7‚K§DQ…Þ —ø¾å2#fM Ü`œŒ ŸèÍú pµöÜ Ö[ lÑã1äßÑyál‡a÷_—í²N“þwm Dýò¶:p´ nÆÀFûö¹=soG{#¥Éuj…tÐ)B¼žý*lQš'”³çàEñT«¾'ÉNïö™Ëo™·…׋~bÿ`ƒRlù!OÕkˆà*œ‹ÖÄÙ?<•»'£Ò(8›úÿ‡Âƒ°@D9ò‡Çø(ÌÂé –ÚÒŽZßjD°9@#•ÒÖ5£é=*é ÎaØè"v«>òþEØ]ŽÊ! ü}Eð» pIZ^O›,18CÁw½hMËF¼¡‚Ë fɰ:±ŸFÜâ™hW‡íŨP‡>aH‡×¶1R!u˜µ_rJ…Q“€R 'WÆNq D+£+ÊÁãIvp+»¦mÊJ\=è,©¦”L!CÅ+‚iq'S?Àt’*Õ#ø•‹ÿ' wý ÷uû/ †<›bÑk‹6±¹p;)ó¿™S°þ'ÓßðbI½X×¥!Èøþf9Ÿ*c™ò¦9Ÿ*c™ò¤9 vžB” kÊœeÙS´òÄ ÅîK+ô¤ÍÚœeÙRŒý©3v¦ÉÒ·›µo7jÞnÕºE×GK£¥o7j]<µò­æïÚä<¢`ròYõàÜ©µ‡!å¹¼“š´Žx·’QÃ/D¢gÈøyE1›ÏÄLMÞ"OJÚ[KhSkºòáÆ=ËWG=QN7z?QÏQ•¾ÄãÈõ8ÛAãú·Àˆ‰+­ TÏ•kNЄƒ°º&N’éàåüƒÒ“Çü¥úÎFPDÀ‹‰ñ.†áÝd¯š'be3«Á“·Åqc<Ëk@€` †AÍŠZtÏgçE kûÛAš¤’;æK ä•í³„c(¸ Ú›CÑD‚VÈü6ÌQöq´ÙBû§™Z,Å¥jux“ƒ&Ä0µ.G¼}_nDh;;‚y†–òBЯg¥­Œð)lÊ¢”ÕÙøQ÷4¸^èiC¹±ÿ˜j\K‘ÑU…?!Úç<-ß•ëøÝ:¢ÞvH²ðÊ5…3Ýj+0ÃDÄÑ-ú¶ší¥`ÐDìT£“ò`ŠZ³ª1ïñÊq›#Ú)p࢖ƒX„rоc⋹q­ƒýèF×Ñ1ÔMÇj3±@09:Ð2€ ZkäAt°må«Ü¤CŠÛ0lC„8­÷b¤BûìÓöÐf¥ÂÞÆ{ò$¥CŠ 'ÍJ‡•Ã5&tòX>?™¬!Öó+ˆä¦Lü‰:󡀉:þ­Íg+‘@±·"4 qânþb Åÿ“b×Ã[+êM…Ý– bc)íÌBåÀì§ÎþdMäœx³ø˜‰`MÁÿƒˆ>ÿŠeZ¤9ɉ9”fs>Q1&S*C‘S±ýéX×¥;.gÚœeÙQ Ý©ÆUá&º(œ²¬kÒ·bz]\²·›µÕÒêéutººFï£`B8àI>¼«y»ôŠx8~”…<€åÔ‡!å[SgÌ‚ð#Á(º’ y(øo£˜ÁöúDïŸð‰ã„u#Ú7^AvŒ‡×É=:ꛢ1׿A>/äŽÑÎòþ~l}H/Ú)2v»šÛÒ(²çX–ÿPŠR+iß ¸ApRRj£ü ·KU ʈ“ƒþP×;ÊîiЊ”ìÑ©Oðx¢4@$°` ä4àC¢@(ÉöCb¬Œ·3ˆæX`A´/¼b›˜F˜±È! ,Ëï!ÝE¼™ãz¡¾X1ÒïÐ`Ct©ÚøyB¶öÏöäÉÛx„xd$óo$&\Ø!‰63âDI•òfö¿û.ßöÂg¹¹0D(gmH•&µ>EªD(Š·"B— wñ"M‘oû›”ѱc Ñÿƒ‹V¨àæºG0­, ÁnRD°&àêC‘S´ò¥ò§W„q+ºüG1}¿QҧRæ}£ŽCïjQŸ´\†òŽ `ûþ)FuåâÜü]]#äÛ~#ž`møŽx6üVéGÉ5º8b>¼+Y(ÝóðG 0RÒÒ)æåŽO¹ŽêÚõŽA‘³ß=ç¾ßHçtwS¾;8"™²z9(š°¥m'=: 8öþ˜Â6DÏÀc²9ßôçW‚QN>æå4ø±ò˜&ðÄŸ¨œôª¯ •Z$Eâþ2¥9ô ÙDú‚pyT3?ò”µ)*ßåNA(Þ³-ûˆW¹Îè!ï à‚pé%0ŠKNσˆ¯ØßŒT#Ä!†›RáY Àà $ –¡ÆiµÕ³0x?%ådCE›â÷„74•Öð†fZáÉ0Ü]jhA…Ž:dËÀÎ+kEÙ‘<¬ÞˆA·¢%˜àÑÂÍNJMNP"¥yÃ*D¬zÔì‰^¥E2yþ5¼¨JĘ `}¤Ò’lÆ”ŠkÖ5°óA ÿrØÜ™n‚¬lÀ½J¡©6†Å&—ûæõ&UM$Âîz™J…SËRT˜U8aºÁë€Ö.°‡SçÅŠT=Ù!g°ö‰ÔÈY†H"Íõ;ûZ Öë‡5š¹šÆÄ/«Òá°@í…`™i>=¦,ïÊy\ü’ÿAy"˜'Y„` ýFàÄswü5#Áþ–-ïÊj0ÜFà9,’’˜‰ }ÝS††ö¦ÉÒËã[EÑ(—$Þ‰`MÈÄ“z85þ?|)#M蜶ÙZáÍ29 k”r×(ä5õÚ8ƒïøŽ9 éI¨A þÿT c^QÄ®è#†fºG‡ÞÑÃ3="‰ÀtêP*¢Šv¹†þ‚=·Ê&Ð=l†„úDÚkdM &¶GÁ>‘Ï&ßõô£žmµvædSÈ_Â(—¼ñk!åc—’Åãø€FϾÂ(ö ³†(”|6°%ÆÐ{(§¨ð3›'É="l~zE65í5?Ò4eûúáLsƒíì³Èè)×Ű‘ö¦kn ô“£8aå1‘ÁÊÊÂlÞßÕ*ŠÐ×î!^ [=”^¥9ô—5%¡=½¨TbQÛ™ ò}ÿÊ8î´†.ùn`G>OËÈ6$˜ŠõÈÊ@……S¦€àœL$ ‚A…˜±N†œŽİ$@Np[n#Àdƒƒ?îH)3ˆò»!`CAAñ•l!Ù ¨-苌 ð„Y5Ðçòº·O½ð _^kæS DÀå@¹É­cÎ L+Ç×*\*þ¸7©àÙì}EH…¯ËÄ”¨qQÀbT¨qf¢Ri ÖÛpÁ`ÕÏÐR¸ø=æ°û?ƒ³Y¯Àwß”ÅÃ)êUÀlMµ²™«?P3€«Žuåÿ¨HÅñ0 xºöÊyøÄî\?ðÌ ¹+2þš./–ç¤Æç$µ/ªñú]ÿË“O@KÉõWC\îÒ¥üä²G¿Åv‰`MÈ™“™D¹&ôNIDäì9m²'$Ó"™ÌüéŒ7øŽ_×ê8ä+¤p8£ˆ>ÿˆ¦¾)xG0}ÿ@â{tQ8¨ä5®Q88›nŸHút{G<oúŽq¸{QÎ7cÊ9â@Ûñóm¿òI|îˆ÷bwüE<€åü"‰{Χl<–G¯¹tB9øEÐåü#ž§s#³Ø–篠|£ñØÏj}8î/™ôŠ{kÕq"ðÌùb…ï°§Fûsn¸S#±Í¥§ cT}$ëü[ä)ÜbÑALüD™OÔèf48Ï%7EtTRAÜ94ßÖàˇ¾’_'ÝXùü&"\Â:ý$ÂØ2•‹ùþœ2°Ùý£b7à£ñ7ƒpž¯ÜÀ§ÎÊëÑ9¥ÛoF¨ßoQ·»…˺¡Fmâ¯Ö$y|%\Zn$ñ®Ô(î ×I.­gC:C5ãÔ^|Ä ü‚{*TbÞ*ÿšÎö2˜½3ãø4þH2KÚþ‰GTˆª1–4Ž ¡R(@ƒ€Ê”ük¹òÀK-„¯*ILK8†ŸÁ¢’Vt2”*Î0jEã8^€ @6Dˆ–8ÎÓ àÈ8à@—ËÌs#}À°€‚Xx€I3YŽ @¼88¤wáÆX‰´ kTÁÚà¤uN©ê9c0î¸‰à ˆ”…¾òÚÑöY™‰ ÂdQ6 €{曯Ç͘"ðÑÒD¸òí êÐ45ÀD&y< wO„‘ñÈŒ ( šœH]¯‰³ûÐVPòºp†5RT%¾Ø‚ƒ$'df£‚Â)0”E}wü3ÊÙ@hCA}‘F!€)0ãG 8Ty€é ›àÁH’ï¢ëyCE±«6¸í(Ìm ŒK‚B Œ"'™¤ˆ¥’>mÂFe(!lZ:† \?³k¡æÁ=6Û´èˆHOÜ93ÊRøœT‹e©»/P’knˆ†ÀXGÒZYÝ9Â1©h&‘²e`†„²8¢Ëf¦dؘúKÜÏŽíˆL´+¦Êã$ÓB¯©DÛCö¶‘ƒÅ”E[€&J\0ñL’¡\Æ"9,ÚÆW˜&Óù82ÂOŸ)Pâ0¸YçE‡´N¦BÌ2XzÍf´0­Ö@óY•rîA çAïñý g ëË 6’xLYß”Âá°D–mC.þ `MÈØ…£0d 2€"HG‘wð (_}NZ5‡Ÿå{Êâ Øc²ˆë|~”`¯áÌ cx«ÇðÀÄËßñd5õ]©"\º;.‰G¿Çï„L10QdL Ú¹DÀ³DÀì+”l0­Á¯ê‚9 k”q8CÚ8F#ˆFªÔslÛr×(¦ºǘ£Ö¹Dàâ~ôŠ$ÜgúQKMlŠX’ktSŒÍ·PE~$Ö貉$ÕÓE~$Öè÷šÙòmÿB)è;òŽy’øˆ§l94O?<¢wÐêOâ#¼˜£ž¼@#žÊ6}6ü£mP"ŽxrÁã©E;£»7’ŠwýÀŠ™|ü¢òèPAF¥úS¡ÝLòÛו;vä?*u;tÅL‹%Ä1*~¤v(^TØåëæ‰ÆJûŒÿ°Ñ’=º~·I•¯’Šq^"*Ñ ÑS„‡1áM«ú8‚GZ,ÛO>q^»`8ÈÖ¥1CÆ8^­0ä@œÂ ŸËì£sDZ?ÉÉö#>À±fŒ ñÛÅyÿ‘—Îð°‡eY†µ†±ƒÿ&MéGÔ*£-=/Ê´×ÒÞ „’ à`4«9’ÒîÓNcdÐÀšð0t‚%¢U¾ÂÚñäÄ4—‰€0ˆ"ŒÇn­XÓ@€Á‚ F€ Lâdî€PEäÀÇü&åâ…õ¤´L]ÍØÓ·¥y(òj˜áw‘9â%@M $:Õ¿KlÂZM÷ÂÊ9ˆGÃs9; ¬šYl·‚rT"AÇ À•!@Aè@, €Œ‚ Ú)ƒˆB†÷0š@àÀln²ÍDÃm™á(9Pä]ì¿lßÚ‚óò†02½€†>’·RèTp­±œÉhâ,¹›ÂU(®Ëὓ$CA$UÄ´³d;£2ÎcH !·!è5­qL¶fMçtÑ´y6ÓBäî³°ÆEaüùe#)†‡5rˆ]çp¼)Pª3•ä©P«4•Ã5ƒ…zX?:fO–ïäý¬=f³_€ï¿)‰À\'[¬ÄζÄÕŸ¨B¬ü@DãW{ë™ü·gý syó=v:nÿ«ƒã?ó”»øX²4PiD±ÝºŽ@@!FF§Å˜çHѱe„®á@`Í܇޽ ’„±n‘Çåà ‘ €o>ÑpÄ@xnä»pÄ;0BÀ&€n|3@à`TK±ÿØ[¢@êa5€Lë±ò †ËJ€9Ú?€BGJé´lœ´k)Á‘à ˜9’À$À‘kŠîä€iŒà™»™@¹ƒàØúReëøVÈÄôG}`‰x”HÀ½Ir˜€™ãøpà%íY g‡ïŒÓÆ5Ò&¶h–”K99ê‰4ÿ¨˜ouløimbŽCZ«¹k¼©Ô¸}G!­r§ :Ü£€ƪÅ› +4r×*7–ÓñLÀsûR¸­‘>¥ë~"o$è=A^bUº¼Ä«uy‰Vëx^q2¬QÏ&Þ|xG<ÛióåNÔ·ŽÑO 7Ÿ fdì;FÀÎ{ðŠs°jbwS²<–áNÖ[§k¸€ÝN×8@;_@ùS£®fÜ)–6ù" ež.ð ´0Ÿ³ÂùšMˆ¶\ßéM™ã?{”Áœ¶ôTúŒË¸±MãÈô¼­­°ï’áF3çV«Åñ×»pN'xÿ\«¨ƒaUOIÞ?úSϪÙüXšì´)€ Û®yÄÙÑÒðü"ïÃrÁqó™ÃÆb Á€Ä€¿Ç @ @ @üàMzH@$²$/ø‰`k$/Aü ™Ýhîä ÙhQ¢ÙD7ÏŠØý8qìþYI;2™ün;±|±îÔœeÜt©á–,ðÈß»ƒI¿W‰QU¨)ó|YöØã÷þ•˺/æõ˪‘˜…€y»Š æÜ¦=<»ê…•òЇþ¬Rœ¿@úT§A{EoÂQˆv¨¸7U´C O [æþzН‹aÛ¤òÑ}»„—Ýmó¢ òXѽëºÞž]õ}Aä|‹ÅÓ+Øã û¤ZÄçó‰0Q‘©ñ!ö':„©ç³CY¬úd¦îddħÿK;ã £Ó©¶BŠUGD¢ óÿA+>vhÑG dB ³+AOÆî-ØYyÂà᪔—Xò»hKaÞìr¡ à®&(>‚Xp‰€{†ÈßYÑ’Ë\K£tÐßHyžW‹D°v°qgdÕq»Œù(ŸÉŸøP/¯fî4I™oT[V5¶íœ”e '¦å»ÒBy³ ˆ@«ó¾³eÌhåjÖ™5A’ Úð&ðì èu³8½ˆ``-²ÖoW[bùɱËÍ^h7± ' QÐp’CV¨€¿ßG?¥[Ò– A”?ÿ¡4JâCbxfþ*\8î˜qù"aH…¢í#mº‘ ¶5 $â L.ï/‰.`)÷%J…qxˆa‰Ra…K&E`üè_z• †§ÁR¡îÉ <„ÏÈ“¯0Rá ™ÌÔ.LNá:ÝæÏÞè ÎjÄØs[ +:oë™ü8a!N˜™{D°$þ•0šÀ+S õ\ ê‚T¸D´âlq¶¶@ƒ#ý£⚨|·„NfÀ³,€rÂU\×=á#7ñ$€J'Æ~‘/€3»Ú%âS´ßU‰0ÆÄLÉÕä²N‘¹kší–ºyüFå®ó]£r×C[kñ&ÁN¦À#a‰£X£ÔÕMN7Ë­‚9 MUŠaºÀæ(ä5®TÃ|£óCTV^\ÕI8ø–Ò§š³¾ÑÏ&¦u‚L{G=½ößÚ ªÕ;À »‹xŽáLɵ?"Šy¶ÓçÊ™©¾p"˜ÈmÌÀÙnæ·S'iܰÙN•¼@n§aЈÝN§'”ÓáÕ‡R§a,J@Ø5`TÍÛŸJ`ÑŽÞûZæ'…>#Xguû.SeS¥ÊoåDÔû£ëX1SõÓ+˜ŽTÝv·cºŸQôjÕˆô}L\œDAŸº)ÿT#¼‹ÉTK ŸŽFR‘ I– I‹«¤p"÷ð „|•oÌçu‡ÔðoÁ`P!Ùã8‚GŽ 8$pÌú ûœùÒ$O~ýû÷K,\8$ aÿ«8^Š ¬ä_`†NYׄMej螇LˆØZ±%7mسÏê&y´î„óœl3Š ¡|ÃÀÏ I0´§ò<Ìÿ)TÅ~èÀÒ@¶ &ˆøÆ;'Œ€ÅY¾»«ü Ô?×èMø ‡Ï Ä·*c?# â#Oýú0ú…Te§¥ø@^ -Oƒå@¦tÿª8²{€~’ôbhZ­ÛeÔ‹cRßxÇÒ±ýT5Þ2RÜ?;?Þ¶½¹,òWÛ"my€?Iz14--뭜׫´ “Êþ.ò‰¹‚²¯ü!-,d $8lé¡Uié:f('òG\o  £#SçàµØœßmR=ë¶+%\À ‡”æ€y£‚lD¦§ \Nò—1V#imj~2gÔ cêt’«$CpHVàÑQ$Üþ&±ã©yùM%ú˜QøFu Oa}ÿM”’h(ž†¥#Þfô ÁHƒœ”!ñ«ÉÀ‚\Q¨‹£ƒ`:)[0™ ×£ƒÕ­ $¶ù"iì a.ùSEAÙ,lò0% ÑÞÖÀ"pñgI‘€-,ÓÆ ,3àKJ4Ý>aÆ)¦‡¥ã¥Â¾ó8ÓB¾~±Š— nÄ`6àÍJ…Q‘sp ¶òæ µòa,*Ï¡R¡Æró œ÷6è4±`¶'Sú´0'_Õ 9¬år¹ ‰¯@m~+Â;H¬ã™ôÈ$ðÀÌ:`ÂF›ø%;güY }{ÚôL1±1}œ•©ÐW•ntÉø{Ϫnf°÷.“íq%sYtG.‘ Èÿ Zu”ë@ñí2ÑߤQ/æQ†I‰:e  "Ž$Œ…éq«ƒàE»FhA³¡ü6#TßôßóÎS$ååÓзd5ô˜ž1®‘0ÄËÚ`beí014õj6 iñPüGeñ9W„nZéçñF&Á,¾¨DÚkJ3X'X{P‰´Ê°ìº&²ò¦áZrŠ945E¹.k? a¾·9¦&£’cHš©£puS¦4š ­&‚ið ©»O u1íNÏm^» ü)›Fó>Ê€÷52¢gÄT#+}SS%iÚu2 "yS£S'¢§s䑜õi7\§Sµú•0fe”Ëmc;ú€¦G}½• #Œâx‚Ÿá½”ÑMN—©·ÇˆU>È8Òj~ºûpÆlêloßèæJvº‹³7‰Ã'¾=Çñ ͆úò!QŒQbïú0q‰¥ÐvúRÜRwJ-’ª›£¥.èeƒW(œËÿ8P€bÓµ›bͱfسlY¶,Ûm‹6ÄàÏãilÝ”Ã"Z,Ûm‹6Å›bͱfسlY¶,ÛmŠ;vå8â “SLn;Æã±U~v5yQXàx*§úª©ØîÄDÏÔú^ñàF°þ³rš%Ði¬ ëHF~·ø)3Ù`RwüèĬX5N³kb4‚HuŒ"ýMJLE+DTÅÀ:ÁVˆ 8€ñ…Ÿ1DÊ h±f‚¶®«Zõ¥4×½þŸÄˆœþnÁ!ðÃHQþ¬Ìµõ  ËOKõ 4Çu» k(X´‚Ò£˜ï2uÁ<â™q¬( t“9H¢a&ë±h!‘Eì¹ªÍØ£+s– Uý¢°¢&jQ‰ƒío¸„B3²ÃG$÷ä' óÖ2B²0ð€†ôB¸1Q  tÈßZÍ‘$ (%Ã{­< ‘*Íp*8…F¦[*Åâ!†%`ÕÐðBj›º™©P¨j|ÓCˆè,·‡´N¦BÌ2Ah'©ßÚbp Öë çït0sZoºij«Ðœ~ n;Æã·ô@¸y¡ü8pL@L𘉟•hg`«*jÐÎÁVTÖ¹ºïCÏ*9¾Óul¼¡ÔI~8„Ä@#BùrK‰›‹}b¤ÍÑ^_üª¼ˆ”|}¨¢I™A>/S´ßU‹Ø=¢fIÍ8^Ë04áÀKÚr^kêzV➀—“ê®Od)ÓÄ›>ªqÛ¡X¨FóF½+'€aRS¦U€VZšçe0è+sÂ;.‰¬¼©˜øü‚™‡ŸØ+ MU‰ÌÏW•3 «Ê°ÊÓ”ã’yñà òž|c ¾¬*vç!!ÅÜNfUж¦×Ë™¶‚|ðTÍúLÚ{žŠ˜uèmjh­³ì)ÔÊ„ÜÉN:’Ü:§‹3:§‹3?R|–àEO­Æ$ð¦Ð»Ã›³St¾í”Ü./P}Vüf=b§Ëc¥/:Mø)ƒlTʾu)Ôÿ¢1´)˜èÿ£™:5xÄ[–Óc÷qƒ+íc­õ4K’o/ýhb  ÀD„2(”˜`€1“CççñnÞnÑÌbJJrëÿ?*s VsXK-&!étÁ"ŸS-'Ç´ÛÏ“oÖ'ÚbÁ¬|¦ ‚apØ& ‚apÛûvÕIvÔÄdLY12¬¡™ôè^; +:døEÑ„01D€( ¡9x3®À’V/ÏÖ‹#ÈIoÀ¨„µÁ±ž¨ñ®“{ÿØÐþb'ë©D>X³l(Dð‰ŽH¹SÁC \!dºà`«D‡É3Ëâ?L²ÏèRÝêÝ)`Ïྠ3,,n""žŸË˜Msy62Kâ€z+#ÜÃÆŒ%!>Ãþ¿ÂE32yçEµƒÌêÐá#B€ÿ ë…ˆê𙤌—vHÁÎ\Iƒ^#ÿµ”㌑YãfMø¬«`_ˆVi°C$ãÁh Z—C² é¥ÓŠó„3&éWDPZrÁ°ÜD¯D2Õ²À`÷qìÂà'á¨h!ã°â?•O#HDÚŽ¿oý,˜ƒ•Ï ÙH—ó×2¹Ÿ–b ¿˜†“%àð`ÈPƒZL.üÆæè¬"üúñazÔÌÍaô>ÇèR`ø˜ Ý`?Xì…è`*¯E°0¾¢Pcãß„€mQ@–oNŸxçÒu„xöˆ"ÉÈjj§ü8ZÁÎ>“<&&^Ó“NSx“ÅXðñ´Ý\xuöŸßÕÅeƒ[:ŸmÒ¶šÅ–ÃÙ²˜Ì­ýJtk¡„Ϋ.yp”-´ÍçïÛ 6¸æ¶@ƒ"?‡"D„yŽQšû>¥ApBËRs"Ià‚¾  I›¢¦­üÓHˆ”jÿÔHÏd@bnD“5b7LDÏÊr&^™ sPN@KÍV€×Õx×׿Õd5õïkÓÐOñ=§S‰•‚­©&œÚeX+-ú¯ªqÐW*ËS\þ©ÇA\«ÄýóÃ|UÊØj¯a®vNf|T1Šyñ€ÊÝûÁ ; ­?rS±à ~MNÆ: à©Ï™ÊÁÅ;}lz53ã¦]М¯ð¦o|à6ð¦ÃiúSw²rA†[©~Ä^¦û°Kr§S·nTú”N®Ã>¢"r$°Së}O ljNû›”ßʃ mSc~ÇÉô§ëq¦†Ën7Ýê9ì¦õ«Ï^ÈÖ˜ñqLÖ¡…æaLÿw˜²jeO£ÁÝ^¾àq¸Ñ¿ý‹sŠ‚2]_ØFÐÿ!*ê ØUSÒvt¡FÞDGà!ä%…Ý“©ï €XK°%glO¨ã™#—é"³t?óÛ0´e(1’ ~‹ú¸ã‡žÄ&ô`a -d>?Œ™(PA¦ìoàD’þЍ_×FÚµjbBþiW…»4 î“(æÅƒXùþ0ä&Öƒ#’PƒI’ÏØIº¶£Ä2S€ ˜–bDx¸ útDªãƒpA¡¯ÿ"ãt0<ßë OÌDµu(‡Ë0Pü‚6ã• 0Íô aŒ€}Bª2ÓÒþú…Te§¥û÷”òÐØ”P@ qÒ¦1Sðؘg ¡„K–YjüYµˆA5á (Ü*FšÎ/àpZ2áçýðE™`¡`ƪŽrÒ¿ÄñB†Ã2ྠM"¡ŒˆÕyŠ:±éûçs懲ÖO,îð¶»k‘$Z¬!h;ºF-"@0 ?ü7õÚ×gwÿþäÿŒ€áÂXψ„ BA;]íóФrfðLPÃd²`ÁŠa€Jâz L·8ÈÜ„*q34[I ò¶ãx´¢€Lã-%“aˆ/pѵTÉ‚J…DÃf\×à=¢ |‡ÃÆEÐ@¼hKñ®j‹ˆå¹F3ƒ$ÔÚúÚ5¢—H^q"€C ¡ìËØX/‰€Ð~¬ÄÊ·Z‡ŠÅ ÐÀSyA°9¾¥Âl9­Ð9ÿLí<ÿ°&äK’oVCTÊݘÐÎ@ x ɇ3&έ-‘õ< ©©÷Ún­‚ŸZoÊ£çä;5•«g`ÀW*nÿIå¿V/Rð*÷º÷µŠty­Ø²Ÿyû2ð=aéŸh±â¶@m…`œS‘"BbÓ¬|£r“È@$m··L„ó:ÙkqÁ 09ù‡jjÐDáE¯Hk†5d‰àÛd‚{Z‰™@sñΖ¢ÈQ>3ô¢QW{N@KÏÅb7õÝ÷Ærj~º¹5;MßU××½¯O@ ›þóÜ+ñN6Ø*·VV™Ö558Ø 1¯++Lò®'`–'ïÕ‰<«Œ štûá1žu æ¯-‰Ê¼' rK)„d2¾Ï„…;aÙŸ9)Øð¿&§cÀüšžöÄå`«±SŸ3ƒªtpÔÏŽBŸP_íMÞø™  fÚ Õ¡M¨™Y`ÒÅ µaeñ¾Å>°ú”´&Õ>¥~fÜúÂ7¹ŠŸÇ 1Üö¦×[y±M¨½ÙøSkƒ‡•=üfòÔí’ï„jpËu6Ìt;©•èa˜ toúÜb¦kîDár­(ôx;¯!íߨö E•»Ü““›ÿK_뀥/úæt†÷ÝÒím"ʲÑþ𸄻Vƽ"|Ãø%Ñ@oèÿ£éqJîj¶"E²ìY‘‡&„A‚Aƒ!”HŒB@C ‚€¹ÃĘ`ïä{@H!0ý@€žU³½~¨yˆXÐg¨¼Ëå_ãÕOzWªªý#þÈQJ²\„Î?!ã] Ä8·[›ðéܵä1KÿN. öxѽ˻{Æ7÷ÿâã˜ÂËðŸé§Ð(ò_®"3z7¶ºHvÆF¦H™¢q/0÷¯éE32y *©ÇhËöT é^ª«¨ê{Ò½UV7/Æ[F¤%loWò–4D¦RŸÐ!;;Ò­-½ ÆëtÑ\:OŽ‘ˆ0§Ú¤3œp}¹ÿ˜Ë›Wù䉚'É4N#%æõþr)™“ÉŒnecÆy¿£1ˆ@”×dx¯ÖË7¨ú[Õž+õ²Íú3„ MvA)OZ!«Š™‘ÿd(¥Y¿N‚¡•ø)ì©Q‹x«ÿH×K>Vð!fÇUërõžJ¸G½q˜ÃÃ<–/31±¾}™ë)çÀs¨ A‘1ug£.„à@/ÓOY;¡sÙìFŽd…#ÓÀ3С¹óUbw¾H†)W*†¤Â½)€ü “É?áÑiZÝ©L hÚD5`†,,”Ž“t0ْŃAd9aÆé¶Éêê‰ãÓc¹ aUn1pPïâT!É øÀ<"`‡²Ñ;"Ÿ r¼"›C‘¥àà8|8)$<ª·FШ¹B9•ff\q&5*݈@6'«„]9ïÜ‹¬] (®`‰Â @8 ƒ°*ݶ8 sÂp¬öÈÇ?^Ý2ÒU©–“ãÚmçH¶"8Wäà×ø®ÿ‡ $<©™à Ä8‚œ™ÂC‡Õ‚¢V“`v…ÍÌй*™EÓ€ËmFs ¢}®‘ГÀ2,Úóò¦Áb‡Ú¸)±žçЬ-` ó¡7ö=Ÿ©Ñ¯xHh§Æ«AͽùÙö do¶­·ZKþ>ZAÛ+d×dBsyÝbxG>÷b)À î[æ(‰x’ÂX\“™&Õ.½…5háñšv\$‚gKQ;!Uz$“ì¢fPüD&åhM`ˆeç?IÈ Zoùç)±;Mß|g& 'â«3ñö³c?k6 'i»ïŒå8Yiʪч5e»«s ®4Lð¯+k±ýñªÞ3Ê ¶Ä±5íL¼Ï\+]ºÀ.›\×+q8 ªÌÓŒ¹%”݇»)”í‡f|ä§cÀüšŸ{æ*~ç+v§ï©Ðc,”ýµ´ß÷56 =™l¦ßÙ–ÃÒ jÙ•êlm¶Á †jNç'u6£fÃu?Ù rY”øÕ™0sbŸø.½M¯³`2š›Zß':…27ÓxIõs[—+ñÜà¦Wº!Nñ·³‘õ:58^Æ6À©µ·[AOÿ¢ñx°ó:2ÄpmÈä¯{ÁÁÚÙƒrÁaþ•ƒ™¯÷( ÀÙ¿‹v5éNr ææ(Üדý8 ‰Ì„yŒú†ÚÀIú7† (íãÕ䎪ªí5âŸûÍ$ý`l¾ABVý±þô5¨ Oèpn4„o8ÿ¸˜\¬h€ÐâM®”áY¯ãÌòÊ‘o‡­1NósíâYV¸Jˆ1’ \%$0ãŒ~ÜúL»*ä0G lÈ6ÙWOIh +aÒh—ÎÊÓõ®"0<ÁÍ0žšù¦1RDâwü›Óo×þ['û6m™!/àŸ £Ñ£%¼bP ,·¤ƒ Á`Ó ƒ »ÝÒ€Y‹ø ‰m)ÎÊWO˜qŠ“*d¥ÂU«ýp¥Bê•òáä°iµñ GÁ8fEÅâr ‚˜ ÊßÀƒŠ"à,$À1XK$›"Zì‘ÉðLÎB"Ä€BHC¦CŒøµÓŽ$|FÎÜÅ5Þ\°ÐT' Ä Xˆ©NÁ.æi‹çAïñÀØÔùBñÛßÄHQ™iX¤‰rNÙ& 'né@Iû¤æd7-*zpw‘ÈœºäD€l&*Rö,ÓX˜ '9ÒQ¦VY™Š x Âúƒˆ&5à¾L,°gyÂŒØï ߆'G–‡C“ºë)˜^§ÇN¾ \©‘¯Ý!TÈù²£È’Ÿ/ü—LÌ1£±²4H9 6‚9NZ5‡” ° bÓ¬|£/VHúfaƪî)X3½‘&k8ÚxMšdyH«@ü>#nÍ' D@[Uz'd<úòˆ ˜îQ3(~"SV„¢@yÏÒ±úÁXýW2fQ>3ÆŠc?k63ñö³ží5mNSÀ•¦¬©Mì‡5b·: äüXÑ3¼h­ìƼ)ÂÓ<q¢·°K\)‚Ó3TÊ×@;¬›‡&»S3•Õ‚Ñ~v®`Là_Wà¡›¢åi®”ûFp£¬"§îr°Wj~ç¡R‚ŸQU|ÅË•Íg‚Ï,àåûç´6b!ƒ4e ,Bh€,A´ÊWæS4i,—y8# Âpû†Q>†%. <§¬Ããd~“¹®ÑuàÚÒb8C{.ý¢P\Ø·˜s½è!Â0Æê1Ae_º–F„­€! ¿ò§áðh»†úYƒ%ߌIn×=bë…lA ƒ±ôÎ`h`{ ±pÖN‰a²JÙ ©Ó-:ÖE…ÅŽ¢" — ûô1‚‘¾¿@š“ T÷&ì¹øú˜{Õ‰Ð"p¦ôE‹ŽJÚ)(ž'vÝÃYiŒPc`1$°,‰ís€1à2® +¯L ƶ™ —ƒÝ-šÃ1¡Š&… g˜àÙ=È gò†gÓ¦ZOkÊapØ',<'à˜WC_UÒd3‚\››9—X¬ ’¤"¸”dSïn!*Û xÒH8ªeA_÷x fPDƒé/H†‚9¯ˆ`žè´y4­q-¦¿t˜XÖÔç‰:MO=÷›2;_÷sk25fÙ•67[ö¤ö)Ѷ®©4‹/Xnùã'–¤>AÕüm€VnhëÚÎN±è„¶B53"nû£q¼¹ú€þ)OHô¢VÑ&À`ÂÛê"1ËÚ&e ¿Ó"eÎè‘ÀTÑ(øûQV„¢°Té“®õ ¦¿¯©˜ êºfvšµOvš¶§' %i¿çœ§:0ÕX­Ì„…[W«{L…Ã×Ôá¹®i­öµ;<”Àñ´õY.ÖÇò¦Çj¬[¦}[’Ù›êÌÔÝÎwU·2šç•Õ˧^ÇàWj~GggÚžù–à~à§¾g;? }½“•ÞŸØù/WÞ¦Ù.Ôã‚›Qø=)·um¶˜ ›f[ ÔÚ€•–”Û}¾–¶Å”ú36á>ŸôÈà§Sþ˜ÂÀ¦Ç]íÜÇ©õL.´©•3†@©‘­päÞ§E§~2c™Ð)Ñó‹÷³67ÔçÒ›­Y•±Ú§ÇíLJ.1«>](«åõìjØÕXp ¹¯¿™„I"LÉãÔ1ØN”úŠ9)ˆ’I˜ÒÈ„±$ðÝ/g­ W1ZÛÍÚ™ƒvíì'[Ïü*O–¹¸;šUUEEОyÚ¢¾èè/äþË{áð?…]f™Tz x°¿©¿GEhó)fÇAÿØQƒñKüa]cIG" ïÅ…‚l0œ-Â1‚yyÂÎ31½ *Lö°M ̰Áð‘±ç ¢ÉÀÁfO+¥™Ž¡Ž$0 ˆØßdƒ’lÞ ²uå¼3åñг‰hœ&‚\\`1™5Ú |BÍïD$la+ˆ¡³€ƒ‘;‰ pž!ˆn™ÂÎѼÞöa/cMþÛëÿÿ"3ˆá¼nóÿÌŸÁº‰D³ïÀ†h3=®í Üö4¢o!…æ– à€€˜`zdÃà ³ÙHжÈb“ üºÌB— V¯ôE‘ ¶¤÷"r+ŒÔ¶C<å«`šhW›L§i*L*œ0Ý2Ыð̼P®ÏéÚ‚&%  d“M"€#i½ÚO h ˆ` !”`A (ƒŒÇ 1¾zþ„FrG DmfS_ ÙæžwH8¬±&Ù¦LHrE•°ùñý5®?‡‹X<¦ 'ãê{çÃ*Cdj($1¢„!®¹X¡Œ‘8ÐÇä´"„ T>÷aãjÝ¡‚'°•l˜€o_Pßf¬@OΡ0DŽñ?Lœ`Sã¥xÉOU² j™¨ßScVW)ñ²¯ûŒ„èçqx€™¯ÈŠ“\So§¿]1Lý{æöI ß l,v@Xæ…á·¯«9cp}!C6Ãw"vˆAëƒ*­€Dø¹ô ‡ðã(/,$FÀùפH̰ØVhˆ”|"ÚXVü£wsëÞÈ"q52¯KëØ*~“®õ ®L-5,Õˆ0´×•< ZjÊ”æÅ…¸ÕߊÜÈHUµz·: äü }犰QŸZo®|ÛÚe€®PãL›ë’·ìWœ,-Ä÷EbÄÏU^‘î°Íj݉®ïSß\MÕ-÷Ìô]£ÆRsШÉOÎéÅÆÖà®ãv&ý*k¼ËøýSòãéô§ÔlTB›®9šÍM¬„õ#P¦kv§YjfxT3 å’ÁÎl§Óx·©Ôß‚0´©Ñùø.´ÅL­!´¯S#WÝ8äʇæ3*do—ÇÄèêêÆ¡S««…Mú}D)ñÏ×DµÅNu¤sS#ߣP¯UÛ_=Ô(«N\'ñ8ÆPÛ±üDAˆª9ëFÐÿ H`ÔïUYLJa,<·k,3®¸V—9€OéûDØd=)ùÄb‘,üÑ.X ìÏWØÇѱÜ<ª\Ñ=)ÍœÁä¡`Ë8×9AK¥Qœ\f]ûÁ¼ ¤[ö'”#h0¼ñ«zº,z°êP”Mëd`H`òI¡ƒ:,BYVÉ uBÒÈÑCq :Àò‰/ã°‰.Ù‡`5s„Zx›ÌìTò#<1¬ôñ‡Ê²&D^–n}áü&$bø’¬!Ç#Ã`h<‘ÿ8ž:±Œž´XåºI/guÔ*F€° @ö„@‘Ø‚õ²bÆDj ¶ÈÐÀ$ áa–êL*û|\X\Yßaˆˆ*\+Ñú#"oΙ,m<Æò›²ŸF•°ÀÍH…qu¬#%&V:°c%‡Yë °¡ÅšœÌ — ÄtSzC•†0,ƒ\h³Ž˜k‚à§3€LãR¤C ANHp1ÔŸšH(„(™Ž÷KÀÀ3n¶éØÉ„=í·y¡ˆà`g¢ÌÒÅDŠp\‚$Eè"?’\“¶I€Öž1ô‰ gÁpI’‘Ðà€y ^^(—†T¬VF8A(9äVÁÔ@hÑ€»³²bp{)€rX_~TèbÂ_¾†¨- þXÝÌ„:•ÉŒ€åË À°,P, +p‰ D9Ô'Ƽg`µÊ™ü CŒm㚌f'Fý«§qÇž³§bšxìõõ¯(Aû{‚ ag‡ª„{bØ\\iÇ^ 63Vô…ó§Zk'(èà·( äÄɉ`s€x(Ž®®jL¿ÀŹRNÈs[+Âø|³Â7FõíÒ矜"gVþ"ÙG>«Òæê’µ'!^U©€ºÿe;€óWîÍ\¯`<ç^ü‚Ó÷¿ÐWŸÅ¿â¾œ_p -7üÆÜ§o`¼×MOŒm7W¥‚ó}vÈ®o37ñšÃ7s‰»~rSc<{W3°vkvW: Íõí[±6(ÅOûßÛ…óÀ_MŸfvg_ -uƒ]9Sé̓!Ÿ€§Æÿ¦oz›Y s;ÉLÿL.³p¦xð;>Ô̱¨ž&ËOn;†U_úua%:ŸôÆ:5Q/‚™üºÒ¦Vd Sc\g!NÖ¥cqŠ]XÔ)—®°Õ±X·ü¿LZ§ÆU‰Œ”ÈÕhD TÈל­W§œ1àƪñ'ßV<Á…i«ÿ´'JC°È—°È’!ñqÇB $ldy*vžBêéGD «°9WŸø‚Ò_Z)Û>Q8Àáç/Ææ6ï ’„Ø“j9! …‘ðÍ`ƒb€¥]lA’d§é€S[+­f7¦Šäù‚à}×dáhÑ“¡¡ш¸æ-[n<{@/"°( […H§Òýà!€Fæc"ñ9€¥¡B  „tB°Ç0˜AHƒ¼ÊOÀN<Ð "T@À¼Ó™o²ÖÍ“+”zR#X@*B-Áq(miEä{Ì[ÕI»œIF5œ^ÿÿS²?Ù³lÌy „üVµ¤Œ×±„@†fkšiúPK–ƒ;hDXƒÂ müÒI–,™‰ /FWütÓCù}@RaÅC#,B•êþB“ ûµ¡ŒˆTîß‘jàNo¡9…*sœŒ£Š“ U3˜Íañ×eâ Ô|X¥Ãq‡Ùù¡1‡“-½Ø°:Ù,Q˜ Ás& îŒ`ƒ bHs3  ‘ HÈ‚Aˆ$SŒž¨`*[8‚ü‡ú2½ƒ€ï#“ë †y°ktÏX… ‘²á@Û4À$ !ˆ0"Æbù +¦R`£r!É0;oüY }Whzk‰„E¤“ SØb8¬„Ð$EäU¾éßk[½~ƒ6‚LDIh7“1Í‘ MNË=šÊ(nì%â:°‰@ù,º­¹¨B ñÂãHp"Í@£åÂR@Á;’áªBà$¸0Œ\–Scy³*´`S£gš¥3>9Õhg2<µ}y§ø5\Ú\™x7¶^ö£¤4S¦ŒU‹²ÊNÀ6Ô kõ Ão_PȬ?@ùXÜœ÷;Gæ ,GÊí ©·0)¡€CÀ<ØHo?T™zþ ''m‰;C!4FÈñ["ÚXV§$FÈâkÒ½:oggt[ /©TQ»ºŠm·³V)¼`=ÕÊ|å°·SFO}|€+µ?>l°Sã|q´ä*j|oÚÓ™¨…3ÇÙý doúau›…2²Ô·µ27Ý®æ^ÔèÕ» Zê]saSª®TêÂ\ K©Õ¶zÀ)‘¼×’å3*¿)MÔøßSí'×XqŠŸee†­Š›¾½c_X ØäT#ðüÌHàTÈß÷èÔ+×íøµâ0ˆWËèýŠvlgóÇöÁ¸pt‚aá¿oŽ ê\)OV}JvžBgqÀû»Ú32`øÇþÎ{*6ÚY)áu´©É¢ (bÀÀH ´j œ(¶Í­±$J,7qY2@!埼Š¡¥næX„;!ï¡DcJ‚vˆ×œ9ôŸ"sÛÖ(Q…š÷×.ôAÁ³¾véRA@"I0p9hŬ2?ÀÞø‚»Ø»" £°¸†qgº1 Œ'€“–fþ»b§Â4ÒȹÉ9˜Z›­G¸á£Ú^fJ’FIÁÙÑ¢Z –¤Ay,^*·Ÿ†âÿàTfÙy·ñõ£›"JqzìlØ­?vÉG[qyP„ ¯ƒ&³zRºivð„8—™Y ÕaOéŒÂÃâû¾f- DÛá=2)¶†|Õ‰.À¬yžËÉ}-àFK³ÖAJ‡«,™ÖaG(ü§X-€‰ßõ1‡'ՀؙûðÍYúà+hú©“0.H+œÂ$Ld 0G¼ƒoéß'bF@pÅ.ÁºÉ# !Q¼A:@«@F„d[_6PÆðq$˜2YÁ­uºä@˜4@áÁÃP•*‘耰`< D8L1±Ý.ÎDP$ „0Y‘ÊXó£ZÆBL% _ÅB&B±ã-Öcn'›Ðèt $< –¤ ŒMHž~ÃÆÉË<Ü-AÇäþàfÈ  ¦x‡S°Ê¢´-‘"‹@©Cy–;6K=s©Sñ#>6ü®¤§FXçPÑ‹„ÃÇ–"Ÿ- q‹ë÷-Åɇí÷ZÄÛæ¶Dóá€4aÌs—åþ ’Æ4öC…_B^šÍµÅn…ɯúŸpL´>–r§Fó1á 0HÀéË"5èI›¢¤ËÒ[¸6Lüa±Ï²'€oâ#‰5oê'x­ôÈ‘Ä×¥z_’¶ÕáU5 /©+ÍyW17ú¾¦®boõ}MMmMySØÂÓ_¯Ìû&¿VÝ‚úãÎÿŠúqŸZo®|ïØ.®|LŽfüp‹­‚á}tÊm£É¯qS#™»\­žÁy­ÙjÜö›Ílëû>ªå>f1ÄÝ© Æøãèmº;òOOíiCa~gO} ®»3PS/ò} ŠÆ×ɾ6{S*6Î8©‘¿kw2è©‘ýø9›©Õ—³åB1ÓS¬æ›’d§VÙi§V ¥ÔØÖQÎÈ-Sc\ÏË›ØßV~²ŸÂ;$ØßSÙ&Fý4ŸÇ¹NûûÀÀê‡Õ_ …Vñòl`Y_;ZÅ ÕõúD’$Ì—þØ6€ÿø ÕCsì8-üèø ‚iBf@xrP:pÉs>ռݣryøI†¡XÃwZC|œ7y€"Lê ¡Ò#. ·*¿0á=lŒ0ðpͪn ÑÐÖ-Bc›Û|óöòB—ˆ7¦´¸µp8°ï”C,F$úŸ„8¸jFr“ï(§˜±gÉ´õuÖ™…а8 XhÀ!| xX‹Q¯ß)ôTm¤Ž „T0@Ö=˜VD ,&! ^Z(À¢ &;½²‚$ue06»xOW’"rhùé=ˆ-Áž9¡qc¹6Ë;]‘HË‘áB\D'øá$a2A§›ÜܱrwîPX'úP’-P lRñ€«–ð@B;TŽõ(V;xR¹´£i€PÀ`ý¥Q“¦Ñ‰ñˆK,:Z°Db†}@# ah}"‚0fàjÀúèHE ?s8抋c~ã+,x£^Úë}ñ—¶¿N³ÅNë`‡£OÄìa’°ÒU(n¤C(PÌØ°ø?§X,)`çi!a"wب2…Àe3Y­rkUp?{AÄÖŒãÒu§¿K8æ}2*ðŸ‹@yG=A£láñ'<13{Á2 ."1RäÁÝð³#°7¦Áy0•ï)ÂÏj!0 )¾'@¼ >·8~}“Eç°†X$·ÐÔ†hGp1¬$0†iÀ0 àTá-zpÃúS|‘¦b ÷k0—)À9ap·ALœ –C¶Ïòûû`Èñƒý1ŒBH„H;æÙ£ãhì†Í‚ ˆÑä †éÅ‘£ wQÑ69eˆ®G‹T4´ `ÜTrÒðƒµÿ%¦¨^ã¶ç(3Ãtã{: $Ä/šL28ÍÍb?Y¾Ð§óï§©QIp¸qLÜ x@>ˆ×(`kN†Äò€^E`†¬üÅg-º!5Nw<#!GˆîHŽ8/8&nŠ“/_ÀciZûu dG´BòkqçŸHäš·Ó¬@Àc75çdÜÕ¾/|¾yW‡A^qW…°Ö€W……ÂuÄ•ñÐOUòÌëEŒþn±£i³Õm:îM~²ùÍvTÈæm8 âvÛ ³¨ø™ͧ…Ib‡Ú¸* ž' ¶"ý›†)ÌŽÞgjĬ3ç…ŒÝ|ð¡ß .ÌÕŠu½à0š3¢õ<…X…ÕùÝo*ui™·Ô¦Äp#~BËÎêdy4ö°êlECa!y½L—ç©1¾Ùßöáz Š";Ùu‘SãîÖ{ñ›˜!Æ9GÇ9› ƒ‹m€-'*lj¬k‚ c[ˆtæÐ§GÅ rsrÛä%¢1uŸ$\‡Ùsë"V(‘Ú¿<Šc͵ m ‡2Ûx· ÅÌ€"ÿ|›ãìÿEÿ툟Ûrúë;û´¸ÿtð[ ¢ùÊp@ÁâJì|ƒ^8`—(Ï¢¢²&GèúŒ¹xÿ†±ÀöÿžÀy|9þ›Íü†Ý1˜€Ý\ÿ¨¡`(@$ÓolpÀCˆ}–Oº$0˜™6}ÀjéÖ1¿ŠÊÆd4à¿7ÂçÉ<Œƒ€@†!š§ Šw4§õ({ͦší=<ˆ5Ù½3„¿ú%RþJI)#2E"á>¹ßø]<6¼gnmôœ ýgiãRaƒ‡{£Ì¤Bd›€“ÉÈäM¥d…e7hŒ"/øÅJÐHDŽ£‡þ¸ç|EÈ÷PnH ÄåÉõäæ:s˜1åŸD0:Ä­†¾ Úl` sŸI¶/{„ÃCMäpP¥X݆2*\*ê– ¨B~Ùš*D(~^$¥B¨ÎW’¤B°l Œ1+³wŽ+q¤¶rsXU‰ÒCE…кvùÍI‡CíA`>P¨!{a♸\怉ÇÂá°ô°¹ ÷Ž}"+Ž_Á`‰·2$ºXä@ÞB 1YÁy‚ìA ™+$òÀáXꈥäp …€³LìºV€k[cT¬~¤!x9H0:ô/U‰!ô´ü#C„e“ œ¨ !“O¶ó9Äà.ŸÔHú½ 9&7I½UèKÈÝ•Þršv,#¨k.ü{Ó€PY!À¢H€/ N `ÉÑg´Â©Ämq ‹¤¬<Ã1²ýpù`S£maO‰ñ¬js°¨=ßXÊn†5§>¼Jeã}§ˆÆ,4L¾fŒØ4yAàÄ!.|z!4$$%j6;ò§"ˆ€@†ª!Ä–â*üB8ôPÌ+ ðmÅ«â2 ‡éõ¼Á:Ñ×µCÇlã<›6i_pò“‡¼M J ‚ ÄA æ ¤ÍÑ^ãø\–YÝ#pnæFϑ݃_Uá¾Ä;Fä15íx¬ƒ+à­c¢¼-€™\´5€WÛYEL‹ í5º¸,/¿*u¤95úVÕ‚Ó6ª66 u´èænËæ‹k“US#™»\¯ÊÒq®”ÈænÀW+à;5ÙZŸCòǘçèW.ØÐöwáh7ænË] r›Íg;#Íø›Õ÷ú§SŸCŠ˜_-ÀB™ïŒÍ¸^Èú‡Bò¦{¨›p¾jdy;é!éÕ.…¸Øøï¿Ó uÇyþÛ›SãìY ¤%*l}U–À¦Æ¬?‚à¦×y*t|üÃV¹N_£iŠ™"Êà™27â=Ñ0øÉíñXÍ›êáí¯—Õ¬%xÉ_¬6ã{'+Ü} ?¹.Ô£=‹%‚ ?þB0ÞšÁÙ¢ k0X¤ˆb"Ì„_†É€$“¥k”L4'e;Ûµlóg–ÿ uÆ9+ º 6]M¿óG'à _|4kD,›~årA!GK>€BÅcëwŠÖ¡š b$uË?‚/¡ðøÙ0q»´ÁtDK<§Ò±^1ÃJ\ó 2ãÕ2/ý…¸=¢aO‰…«åB’I®8‚$ÞüG{glIBIŒFµ" §+Ê:u¿ë¼†Ž Ý=‚³Ôa7ÒÈA«‡5‰íOuÁe&É'|Ù™š]ì!ºÖ̆A /4µˆÝÇ`¸F"¯<)Pà}”6)–¹\z)¦‡Éì``T¸hÛŠŽa0вádEJãbƒ+nùÚZjǘÊó’Áë_×0’Á¬¦u°Éa{¶ÙÖ×̬à4â°_-­åjx×éBñÚºE°0¾¢P¼v@€þ‘ˆ7ôá“GD1FI †C1`%°`db2‚$À À]ƒ`bà(æÍ' ’ 4©Äf-:Æxè€ €½úØø’7q`FðÆETL{7„KDp⌢®„Ș±  º LÔÐ@%ß…e‚èÚa¥´ñ²HIºg°µõ9§Qr.+€P ìk„;L‹!œ’ð# y±¿Íe¹4ñ¡R†…žluª¶ÂÈò×ÙV‹“@â¿{,òé§’œ†|BÉ´Nx鉙·*"á‘_’ªŸ`¡jp@±¸rq¨k…J·ŠŸ)ˆØVËCùº¸ðuüX­¨n¼6º±CûàÖ '?1­SJã¶x…U ¸ €‰rcå¢Mq˜Å - ‘  B1<~¢ˆfØ}þ.µíáž]¼ûD®:Þ/€¦Fã M{@¼“Åd˜µ°÷à#róMåLmÏŸÝ•ÄMöVPZ‡Xnµ°Ýb9¾ÁX)‘s}‚¶S£©žšj´‡&¿f¾BìëgS£™»/šE|‡f»*tuèWµùX15åÔÌw>‡[)‘Ì݀Ʀ´Œs7e¯À&»*ƒn' Ê|w·p £yÇ<°Piãó‰¬'x=ÐS£WÆÁf[bûgŽTÌíámçu3^{< ÔØŠ·¡~*}KÕ·›úÇékaÇßíø°u>žÏ–ÁÊ›·Œ-ScïõñžJdzûwÕ:>M[ÍáLóÏŸÑhScÍkf„©ñà EnÚß¡Œ=çÅY¡œÈÔ)Ó œ\eÄIŒïî£hÿ€—jQžÅ’ÁöÏÝYÁì&ªA¸ v`‚M) iåZ 8 B` À™K§€G \ œÇþÔ˜<“ ?ãìPÀi]T1uóŠI®¥(!A¦r«,@³JBï}X!U¥ˆc™®M™£J!&9Èä’rYxjñ fÊXpðä„8wEKÒ-Úƒe˜“aöL–RÃáùxAVWç» X0ÚäÑ7æÙúÿª°JóLß ½Ë ™÷as€d DF3¦@/Ú-a õÂÐlŒÇ Lh5ÀžÂi¢²Á—GtÓCêìM41•EÞ6Їž$`Ä0Ыª6D)»ŠÉ%¡©BŽM¬„mš“ òoƒ‡â í8¬/VÛ3ÒÀÜ0Ðkj½ÜÏAgœU«jtï•€çŠÍ ÐÀW´H>3ü@íaÉ­So+ “í`FÉÝònrò‰`ôPæ %€à À!D› 9ey0 bÐHð"A`ˆ!)ʵêvt_X¬‰þ¥ †ÏßÐWŸ $DÄUÆ´&:cV !+íÒ½¡ˆn±ÌI`2x½˜s±”S8 HÊbÕP=R"Þ¢Lä•Ðù¦ó”ƒˆL ü¬øÛ}ÚŠºJteTÜ^9¬¢Û;2~EÉ·íö›Ëæpþ_Aº´JvfånÎ â+”˜ K¼66ê‰ |š0ˆÇ"òÉJÃWÓq_;mýX¯n±[îíFH2ñÈ­A”DÇÝ–.”Žå^2¡Ú·¿¨:Àr?¨¼(!«Ÿa–òîD@´G S8H*%Fáïø\Çü!8€!3 ”p´øåÇ:(´Mdˆbs§X€¯%Œ15í9y7™VX…•“«Ã ïlN òÖ‹òÖ‹òñÐZÆá!l±ŸÀª*tuõYù7þä,øÅ÷Ï©›0ñìé‚›ñø9;©±o?§º›BNêmöm¸IÔþ¶~†ä©ñª”œÆ*|ië3dÌ}Ù~$›ø×™G&©‘¶¡)ßnL>©±IÑêÓXDØèÅzÄËÄÖUeOñªÐÂtsÄ_Z³:¼_}•쩱¾ÜjÝB‡øïfï‰G(ÀÆ!¸þîªs2¤~ν`â©ôbrKŽ%¤k,ÀvMFOdÀ€…¼Ý¢`M"T¹_ð¾îÏoú®Cøeh||"wCî9 ,adÎ ²ÓøÐš°G*ßkÀ‚!«Çœ!†÷·I~E5C.‡@d€œ‚Å -0À<šUÅc0%É+€Xbd À€<Ÿþ}qËRÌ'?ŠCÝ–¹Û$$ @ƒAšâ‚0o`:& øŽM²d\DZàb¸F"¯<)pºÁ§[YnŸOx¬.+c‘±K¦yY„êD(Ô#‘2M´(µ2J…sˆDä°+œ&ç°k_&臯ٙYj•3÷˜TÌü¨&pÎ'âÀlLê8 \Iâ³@ía[ +:d°À,.Gµãú Ë^‰`NÙ¬ÐoÝ’V„€’@£žQ¢;¤Èt°ª‰^Ç!$È w† AC»@àÈ¢ç :'¸r\B`ëß²V@•™rPlV±W31k¶X… • ú~þ¡"‘&‰0 °\æÈǺ®#‚SÖG…òóqòÍp` i©€@ XKL’KІc`«jù!Æ?+ÆØí±üÒå>;=ôصåLìþŽ9èQíÈ!€^ðœ£jqˆÆ"0©¨0d•tlHáBÌÉ µ¬|~S_`¬é‹¼´9h¬x={+Ó¡÷Y,VÀÄ|áb‘”Ftë Ê"cî˘ý(2ñ‘üC9†ô†r?«=5U7Å·¯eð›<´a,–Á—aÂÁ&Ë7”d|ÌxÁFDÒµ÷#4@óZ#Œœ¡éXgñb”½kÅ rkE©‰¯Kð­Õƒè;>|,VÀN¶Xäú¨¦0ò}TS¶uø±´~/°g[:lVê|u´åWIYqcm9aµÐYYX3ÅLÇsèV Q!–5–&öbq5Œøïn&à,&Æ{ŸB°Sã÷…æŒøýÀ`-4gÔ­ÈX-ñ‹ïôñÊÅÐxötÁM_•ÂÓÄÚ1ìÛp”TØ×¡eæ1Sc}N{ø×ÞŠ}V§G*ñh‰* Yñjòp7¹S#YOæ%N‰· i÷°)ñ½dTØ* ¼Ö-Uâòããæ–…28z•]r¿SUšÆû»–®g$R 'þ¿½'Ù(Iÿ³íã@²Ž$©¶^ôŒjYÆÛ€~4åäª1FóÄîþÎpÒÛW(@@†Ë+а’²OœºÆj!0€Š©0 FÜ ! gX!‡&0Qpba&$fÂÀbKð`mÿƒ† ü .™A•¯7ˆÖïê×7PΞiD¦0ÈA–¨@./Â- Šé õØÃÁP„Ssl|::~Þt ¦Z…š^âÕ*®Ü˜ ùô©Pü‡ÃbÖåÓâ°+‹­a&äß Ä:ÁÊ„!ÝòóXŸCDÏÈ“¯0L\9;ý+±3÷à 9š³õÀ ³ñµÏº ÞÿÐ0{¼ÃUþ8 {Q„ ²Ž.@ÞÂÀØçQ ÄÏñÁM`w$¼I@a¶'`3 €È \! ƒ‚`#~T¨ƒhB%ˆ¼…@±ËPJÅPA € å'¼è`€áÐ3ÁøQÝ`Ô’ˆ œr ¢àĸH-_L`("üêÌ’ÜÇáN9 0Fãßmvü1°5û Ä¦ÆøÏN¸6ÓÄoWîÆôô©qr{Žgwß>"'„Ὀ"衤D@Û6ȧ~pM9¸rÜÄ,¿¯Ót ù—:_okQØß ±¡¸¾S ±ò?JÑÎ#çŒT˜ö)îÝZø>GµŠ´X´ÅûC>`γBXèG“õ\r?«>益øÉ7?ùTøG¾Ò4'ÅÃ…6D)–ynÕâH™, øE— Ïâ8ÉÈ7¤pjMyGžîÕ\3/µåç§âÅÐ{ú±[:Ù1‡&Úíb7“Xn±2±[’g·»Tìl´çWÍYp;5’Ǩ¬}mÒ­±y¥nµícën—}±e[ xÔÌw>‡[,Qƒ)¹¾›Û'uñÞÜMÀX(MO‰¸VUÊNé÷­MÀsâÜr¸[â|jìͦ„øþzó¹ScYx˜)±¿óÛLØšìØ,‚›ô,¼ØTèÕNÒ`§FúöØƪéÊÅÆÛÚ±:‰)šÓõ½MŽÛί¹Oìרaò¬ò Ͳ¨_¨8>Q¯M„¦Æ`Õµ|Õêš­ÔÉ^/¯nÂ2L<Î&È]²1ŠeX‚ªªÍ,…íŠz7Kû`K!È/jz)CÂêé Àn€ áÚHowÿ”áübA2dɈ`Øÿà߀CÉ0“þ:ÙJZMµpŒð°Ãw£8A“bõb]‡VÆ#B¦…¡ÎD—Ù„I,â@CHàO‚ÛÚ‰©Ô%cFØÒÿü/O¥…yÎ' gÍÃó!š!„?.C]±ÚV :¸…“±ÅƳe² \DS-bp¿€›gÜ3õeBÛ²–vFëÔ¨Uo+˜q¥rÅH…·iVÞM´(=ßtRáPFN çƒ^­ŒÖy:ÂÅ*ì³ÈXu‰ß¥cÀÒf³LNá^уbgï¤Øñ[ vá:Óߥœ°¹>Ñ!X¢‘wðpkú¡üœ½ ý«Cä¬ $€ ~†‘"¼XèiV‹§±âèX‰BÀ/0GAŠ`ËnËa” DÃ(–H &j°b$b B$b{)"Å•ì¾Èo%;¾Cϸݢ 0l²Q­â= çg xÕÑQ’[ÐÀ@54š`÷P9  Üoæ"§` c}U³‹2;kxE6ñ¿ /¶X> —íž&ÇßÛ˜5¶g †ÀDä^Úö†Aµâ9½Z…&0D…¨á>ÙÁtzt:Âè‚Hù`CÐÄðòä~ܱ¡Ç°¥G˜èmšÆŽÇiu·`ùXÛv `±v1…â‚ÝØÖHcÜv;+ŽEd˃>ÐÆFaý 4cϤ0?ˆc#0²‰Íx-ÖÔ¬ð"FA)-aìÔ™O‚¼®¿ˆ08–NÔÑŸ³Ÿ=#ŒœƒzG$æMGTq™ÙîíQmÓ ýY§Z,]½ýV.Ø ïø´r‰ùQLáÉ?¸î™ûtâ+¹&{{µOŽÓÖî5V|ÍJKüu5­º]öÅ=ónÉ«3X糕Ãm-ɆÃ;Í•±žçЬ-aïõMïf¯ —­MäÝFlwï †ZO^p¸[â?zØ×»®Îz¼ÛdqãU!©S5Ïßy³52«|J5Ùó3ØÏ5ŒØ(f/àF²Äº›¯tîA£ªã xóTÒƒNWp˜÷ÕRdo3ÚUuê|oõàF1( <ü§E0=ŧþÑ´ÿÀt×63ýòßÞ¢AïÌ"“g¡|ƒ#çø·›µ!Í’M«£s§4mÿðoŠ‹’|U—Fé»ûâ›`‰XK™  {úJ ?þA‰u&):nx8æäRÄ‚oCˆµ ×hp2e(t‡+R-:³TÆÃ8j…È. ™U:/!r‚ É{r€81 tG&‘í„%‚¡jÖ)—v’ÎÍáW´JÀtÈ«$\Íävœ#|OÌÓœÀ¼WÜì…BW[þP,çè`Û[œVmüS3‰QÈ5—D¡#,Ï=éLÆOÎt` Ý•Ö5Š4k+&`ñwB'§ÅÈnË(rš%!µ¨:r׊ÙÑÌЀañÈ‘¤Š|ê1€-ázf+ºXå?æŒÌßÄ$ÂPˆÈÉ÷,jº%8ÄÍIÓ\†YžpÒ\5û‡®Ùl‚Wbwl_¥/t´»pB ¿oØ‚¤Ã³ì-M´!ãç‰1Ä4¯¸ÁŠ— |SØ’áQË­Vç•Ã5&wP¬>:ì¼VBgÈ,.‡³žêL:j 0à%[!z «ÕÈl~Ìò…ã·¿ˆÍãý ÄàœœÕ×ÕvÌ€·¾@HŒÈr@01ÔØàɧ“ÊßbŒìbH´ƒá(CA•ÁƒÁ0!}i ¬(bCS^ÛN9Ëoj}ƒÊ€0¯Û³G&Ö ‘pA ³€\L q »ƒe$ç¹.@à2X 3,@DFt;(¥EoäÇ#Jd‡ø ™ÌðÝV‹¤„0€,Þž‰Zj8ÀØ*A1×hÎÈCKãqí÷ Ý>a°žè ¸„ ˆÚñyqùZÖ¸—éÞTBðVÊÆeÀÏØ@¨W™Æ?Ì#Ü!¤Åº«‹ˆMcó-ò“±TÉŸ‘ÈšÆñ$x½KÎÄ ±ùîDg5ѶɵJ5ÆÆËl®3«–%Ö±Úß £¼–&ñäv® Ѓø„‘†æHZs¡t/Ǥ ÛÊ'5æÝtËŠ(G…%.|Ú„‰™ˆÓ)ìŽ2râ7ݱ(ãö$°|‘Ç„g¢¦Äj\áÕ«œüSmà}×uŠø ÿUÉÛß­•ÉÛ³ëe>;KS–‹¡ö? Çõ ¶ß¡Wn‚ËWÞ;¹ßµX Õªo?M±³µ‹ìúö±aÀöjJlkCÑS"üC¡çu‰} †3ÙbY—àÄÆ,lnü“aÕ‡'u2=eð[2£ßOäÛd”ÈÕŸ¥NýÓÊè•25gÁ©Sã]“ÎSŸ©›r |kלSãcÎS›ó\àä4å«/+IœÕC‹ÐãUÜâóãUž®bªÃKÈÊßµÌTøßYà ’b›|Sù–èâa¨úD’\Ä”4_þø‰ý·/£Â#¤€ŠÁ¨*ÇðŒƒy="|Nü£Þ€ÐèÚjD,š²/‚dNTªþÍã‚´R‹n—Às`€õË3ºŸ&ê‚ÿ¨kÐ %YÍRÀÖe,àëàØ g¸–$0ÆRÊñXjØåŽªL*“×// ÕðX|y«áÂÍ Ãí&.á[ð5rUƒƒëäJÀl F‡ñ`3ß#¯âÁÁ«ášú{NX9ÖA°6b‚õŠíY¸eC*PʆDMÀé3ŽñQå.^C6¨)œ‘â0ŠA 7ïåšøÚ&r€°{3Îpl½ØQp>iwã2˜Cþ/gŸE¡ªLÊšÁ÷>ð!–l,WŒ–I z¨(+¾Ùž Ì”óÅ;c(P– ’&Žr(Q h–X j@=¶œ‰°t$Bš?΀? ¦Dÿk馻n¤ÑÍë„J·È‚ ¤¾Ä$i ¤M`1”XŠÁ †+¬pɆàF/é6кÃRgÀ•'õû¬Æ*T+G#b“Lú;ÔˆQ¨pL“- GŠõ2• edo+¼\m+%ÙÍaT&|¢….…šœÌ ½‚µgÄËoÕ˜|Ve Ð o*K ~ v9@m$ÕZ°¹>Ö'ÚµzþIÉ)‰ãé0ÆÄ2"I :®¤cê„äǸ U°–š]8g‚d6Ž»p`B‡ð.s‡á±0œe ÄHÊ™a`¿:ÉЀ1hÛ>M‰Ò#pÑÆØi`pY…‘Îw'ŒA œæ\6@3$eÞ « DÀ’€Œ &Šš> Ð#Dã–•², ƒˆ»:…È7ð±¨ÚÔÍ O¼À‰âˆÌ@ì¦Þð"x¡É±mI"".ÇÕÜ HŒ´ÂN(Í„„><ô<6®œÜ˜Ýê®Iý–}æ¥FThB1J5 ^2RãTÆã,_‹ ábýèÝ+žæ5²Õ÷£8Icéðêä,hoô`±;ú2ú±.Çè,M³¸Ê¯X—aÁš· †#¡Ê† õ,>ݱØ#r^mÐljª4R Ÿ)ð†Å¸Û)°Æ°â-‹c“ñF ѼGSÇhæÅËŰìô±CÛ5šÄÜô:X»›®Tèïµ¾V>ð ›qÍco-ÌóXÛô4œ–7gП¢§GŸ'XÞ´Ïõcsãp©,L½ÙôTÈçôÛ—k›Í·¬MºŸK¿ÓÀÝNŽñÞ󄆊tk³„…²S£]œ$4+¼ç<䨕27ãX™“)&^5â )‘ª¥25ZXŠ™© JŸ©ß’Ÿõçøæj²Ÿ‡gÌs6ÃÅÍW×"sU–”øÕe£$ª°ÒÁÇš«m3#,j̱aÓÆûyöt è{µ8I"^Š!K“þ 6jyr"ªfŠ )ÀaHOøœ ¨"fÄvý"°d@âü¿úå>MÕÿP×¢'¨‚–|uÈ; ãû åPÇ4RÞ,Ê¥ºfÄÈ:b`Ïš†*aRŒ¥œ1P„‡æWD`J%¬0Že­Š$ Ü7³ÅðE„] af°E]q¦E¸c0ætX@UЖ‚Ãx³x@~Ü[ÜÌ!¶p/Rà2ÚGÀr ­›äQî…¥¼Ž™à׋òˆ'dk†vlÄnÈ— ÇÀAáá˜qà‘.‚6–΋p8OËX@ çé¹ôÜ-餤@@¦ò°O@§á¹ ™¶Å2¤L‚FO¸V‰Â`l¾Cñ ?¸ppÇ©CÌ#bNÐó ö{ÑNß~‚g@bÞ3ñ±÷!uu$Š Qã?ä´gÞ­Dá.#ï'uÊ$Ú”Ðôút pï£êËh¹M Äv ŠÉjÒ5áÈI³í°¹0‹@þ&À3À„3¨‘Ж׫´‡`ò¨[?Uþ¡OòïÇzúP°ï#‘ pœ@ 0Á¸SØQd±ã´p^óÄ82{C@X$l"2DA7åîÁ48iá{¶B÷F„&¿ ¤VÓ|Œ`ÅJ€Èå•’ÄM Tˆt³sl£5"cdGäÆo¸GM]áæVm›\a,~ß¼Œ–XñƒTxCM£úF*LŸvÒCx^®=š²6íb}l°_·êˆÒ €ØÇ1ø²…`é÷Ž}'Þ9ôˆ"Ä¿†Zx« (q `†Æp3=N0'?‚ñ¨é(œ(Bæ²ÄIæî•íÒ À@๙‹Ë‚"‰ƒÆR"ÝVXç ÀÑÝd2B¨d,tqx "ËN€‡‹LrÓì/š _Áñ™¦‰±DÐÎFÇÓ‹‚?¶îÌÄ FVˆÄæÃQà‚}|Òt5 Râ)‰$—&ð—^%€‰   Š‡Õái?$“† BP"-ŒÓ‚{DýBÞ Ü¥™ƒ7?“Çh—e('ˆa) €OèL:H|MPB\@‘!«1µÅFÔa‚;o#ÎþÐÀ…" å'4ùoîÍûŠÂ8Õc†Â&]`k( B4wôl…Ÿ8ßô^… ÈøŒ1% þ»ºFG놴¼äÏ–Ì[dyCÇéð¸6ÁóXx€’KÌ7šÄÇôJ&÷[| ƒ¬P/su1@¿Cì±: ^Fì´>`ÉLJ@N:ˆå ‘¿ˆŽPß‚„b}XÌMZ¬âªÑJƒ¡Fˆ$KˆbAHP¹;L²‡(ál[ÙDoäèëÜùdF1l }™ò[Æ«êgɬV.½9è!Æ?užÁ º£[¸C«'¦åïqŽ·ëéð_žÖ?“’gï³·´Æý0œ9:În¾gŽ­)MM×XT 1’bðÂ8C­MÓÚ°ŸLÔúÌOvÔÍ 1³|2ËS:?—ÎB7 àœy½e;$@ŠcU!'‹•1ûûç ¦T,çH1Õ¶¹ ‡ç­Fó ãå«™XÈqžÿqÞrxšÖ¬‰rñ/¦ÞýØÄѬut8Æ·«&ÁF%«óƒ!Æ&®Ìç|Z²|ZfU xä¼NÒC$€I¼ùD1Lÿ…Š`%?üY¬¯E‡d­ XC,Ã3á‘VóvŽË‡PÈãnášÿr hÚÿà!†,þÒŒG½/‹ú ÷á@Êpþ1 ™8®î¸æ¥Â³¾9 ©P£âvFð¥B‰Ù• ¡(‹ÀR!P‘É$Cp ëœS3X<_‘XõöÂ2XUy¬,¼_àè°±êMäj°¨ †ã%…Bÿ ò°°ÃÇ…*WíÎÇ’¤C ~+6B=*$°ô|Ú°xžìy+?ƒÙ`ÏA¬ÂuoE >™к‚K–âÄ €;ÊÊv*Ð#Ÿ@Ý@Ú9¨ÁWÑDDœr…dˆˆ™°š½–ØÈ,IX„\]‡­åtÑ~Öžñl丗ÂÈßsé "Ž5OzžcÄMþbÙLLáB¡fãowüBKQèì­b“ÝŽGq¹µè”%dZ¡FjHº¦Gb0 Û62LÄQ(TQA@âF@r5¸HüÁqÂÈACÁc_ü¡MÐÍ›îcÊJ¸!!uŠÔhKtç€ #¯Xä s(wd ‹óµÂm†Ij +•âY’a¸‹úC Ù|;¦[d>dÂ1M4+Ör‘tËC‹´û{…"j)ò6,>%¶ÚËB¡´­‚0Ð㫞ö)pîYM®„Ö·9¬*„ >kh L͘æ°*Ù18 …{WSO´¼v@€LL:&"a¿‹zñü¾¾j‰`æÄLÉ(IJøš¨8(Z˜HB\ñð¶*T4@õ €€ bÈLRÈÅÉÈÄñ:0-˜ @€Â2‚ \ a¡LÛ'˜”´Ï©‡.b!j[m¸Š:ÄÌK¢¡> °pGÈBbE“Úpá.Ìê"@1æÜ{m ã™¨Y±AL‡ ebšk ‹Ì1ªÕñbŒÇ‡ FÐT“0RÇAˆA<Û ŽD‚0±KæL2ˆ%¾ÀJÚ›¼“h‹ Ö×ÇvÅÓbÌr926éx ØaÖ2-šÓ•I—¥-î!ÌëØŽ’{Vpl*\wª’IŽf«€%Gu}æR#ȲÉ2RcuT“š¢ú•‹Nõ Ôˆóãc-”ˆþñØAÁbT©ÀÍJalĬnv¢õã{A;,}:cË‹t:cÑXµslV+qÁpPm¾AâcvÈîf†>HòƒíÙ+@Уr^]È«8ª´U3.…¤ÞLä-—I˜lQ€Äð9±'É<f ÌB2DjO„‘’'R<& NùÜ™hŽ+lw0+³¼”CÌö(†=™ì2Xßiƒ)Ñç)úd±ª3´œ-XÕΪtj6Èd"7ÙY3¬”Èòö_nC%27éë2å²XµÞf¦Çï‡ÊCE68W¡ŒTøáMàbåOŽÞ.Tøåme ñSãׇ“ÁA1°Ôoœbp ly¬ØZ¦Õ6Ö’ðSõ­fdM¬èþšôÂ*teæ¾0Š˜úÛL„â˜ÕT€Šc}Vö™ñªËFF„Tõ…â 'ÇJ­L&HÏXã°ƒ¦õ-à^Oy d=Õå’G%íäÿ‰Ô­ ?þAÓ…7ŠrarjÂàù$bÒj«·…!È£àà{G\ÞP`ä/þ‹ žjw8wÐà •„õð}²–ñ`†U-Ó0 ’žTòåµR¡T}‚¥Âî©’\8ÂVáÐ!ÂUò‰¸.|Hb:9íœežÎrRa/\n0 L)ê,3X5¯:,ëKÆK.%µXu¿z+6©É¼ Voފ͸ÖMàv°í«ÈÜyXvwÓ•Ñåh³ñö*\/¦§•‡OwÁîL,¨GÀR!cÐÖîT€Õ¦,Ê^˜ðd† _ô(Zo>ˆBXGNˆð†êÜ‚†Á‡LP´Á¡~SL–DÈ„nlO„pzòÐ×hôä!XÅdd•Å8˜¬ Z¨@^y!ä­ƒ Õ+>E°…¨§„ØaØ7øÀ…EYß°œ!‘ÂÙŸò0O™†s XE‚5ŸD#³@ .k¢ä5ýVâa”OÖÐj˜F„9séC¸ÄÁC2ˆ†Hã?Ê(Îeä¬rO•Ç?h\AšØ%kA˜A™¤þÆ€m9@ ¶XEt†ÈrškÍfv¼h±¸õ"™$˜qCCˆ¹ªÒÃaR!ÅÚ[½îˆP8~b¸S}›æJ‘ £c Ê“ § 7X|uÙx¬p´ú†êD:ÊgÆ x êÀ~k¢‹`+¥s¨û1Ù Ço2`$þD"!gðpkëÒ%¢Q.I?D°‚!— Q.RnHHù‡âv_%B#S¶evŠ›€Ñ(Âd⃠²žœÖH¹ƒ Š!" „0Cæ„(˜q$±áw$›’‰‹´"Â9ˆ à€D 'äÚ]¹‹[€Â¾6"Ð 8`J0qD` ÞŒ-ˆ‚ r%¬BBLzÒŽyIíIsþ¼Tj°Ø1°Õä×—ï*luª¶Âèùûp@ï!ö^$wa(NÈd˜€yK#Þ¨À†ˆ&&LEÉ\±…fSÐo”¾p!‚^DÔ÷F…#Å2Ç'gª'È[f?S£ OQ²—ø`ÀH Â7gç=êDw-erD—ÏCÄ2•.<ÔÿR#Îß8©¿ˆ_ÞdÉbßRëKV-G7çE‹QÍùÑHŽ^,è豫ą ,hûÕåq+>¨‹Ö5xð±*ûGŽT˜Ö®9X½>6ŠÉbë~¡Ç ð†2(cÊ`s. €Jds!@€ð…a²x€I‚+è/^ӮàZÀ«8¡ãÙðyM”uéQ®Qd1FÓ½-ŸÐ$4FÅ î¹mÜà{G xFŒIæ –à"ËxaÊÄòN†Kü~‚Ŭ@X›ö•‰¿¡åY=d mXý·BQS£ÎS'†Xó¬Î+UÅcÔ³:AcóßAâ±k#äªfíÉàIMiàB3Sã…7‹•>8Sx¹Sã÷o‰SãTæáŠŸótgpP oŸ5MŠdNûjc‰µ‚™l©qz}Tcy–65­ï©€ÇÆuÜo1ãÍyÅ'Æ£RIñª¢èhÒ¾N-jïÇb÷ÊêL IC3ô5Å4 Dd>Õ¨¤HI ”˜YP²“ k¾l¥Âþì§•VåM5B)qðySaÚ O/cƒ,àö”Ð8ø<ôJmÇséGaÜ!dC8c¹#ÄVFîÑÂxºù—…ôíúœ}Īm`^Ó­ÓŽm@ ݽÀÒ¶5š¬/ÓÍù¬ºuñ;*Ò2è¤ H ø •G9ÐrÉ”¥³ü\|í[çdöþà‚ÒEŽ£tÄ ž#È™¦à°FªûQy§ ¡Œ9NØsFbàÑ$•B÷›âŸŸ?ɆüVÚ^ìÇ Ð© -Z_ ÞÌíbCç„0c`( LXð/®Ã$%¨-^S pƒ,CAA½ì›i)ìÞÊÎé@jiº_Ÿˆ@…&i\±R!Ų«s …F¤r T+›¦âW!åyX<{òZj¯g °¡ÅšœÌ oÙŠÕ›=¿9Ë×”/t…Ý_JkMj™i>=­m}2#ˆªµ§ñ(μÿäIè '‰ø £|þhä@Þ¥¼Ãʬܦ²‰šB‹€Qÿ躻°ˆð¢¸ÒKf ŒÑ$°,.XÒ@Ø 9'À‹< †H H`G@æ7–g2$°'4Yƒ¤@!Àæ%ž`†À'mI@H2žÕð¼ hô ‚Ù{• Fd•,Λ¢1f€ ч:7¾µ‹â$È1¾/»µpSÛ;2~EÈqo›äoA›n´™¦œ<ô# ¶Eá K°'7öz@`†Á–X,¸à še»~!ŒfØûœÀÜmåI"FzÓ@àêŠÚ =8LMü,^íñòÂChû¬Ð‹^7Ø]Kím½"5²:Ѭ%øÂÕ"9Å÷®—üÞÖ ¤ä­åi±‚ÆcO©“öÔsí°Xµß/9æüè Î^†^FK¤ÞF«›®÷ÂÆÃÝÇÏ óF<‰Ÿ¨v/XÙ·ÎÂģşǩ~d-äa AD¬‘Ž„G0¸líTìoˆrÁòç³áSu(ÈøµHD›Tö@šM‡Â$'𹫀Væl:Ò0´‡€€B8ݯs±€G "­_Vòëí™;3¬^±‹Y³^V.’ž%OY³^¬ßN˜hÎTøÖR ÏrØ)ñ¯',ˆ‹•Ïs:Yjů¸âkµ“Þc)±«ãذ‚Ä«±¸,¸~B3S£}e;†%N~­ÈB F<ǘ»[;‚ð8ý¶òèÐûñÌTÈÕœé™NöòSãkU–ônWêKÄç÷¿L¯…Ë‘F5]`Óó[Wó´Èîk}nM‰ÆY Jnjº;š(!ß4jX#˜¤ã`þ ÜÉ3 ü€!îq?ļ¸U§p¢ž/ â£¥ÓÀ©s>ռݣw_@‘ÀЀj×ÿBÉá¿¿ïý™cŠ¥ïþFÐÿ B€®ÓÓMäÞ×’¥CóˆJášÂÍÇžbt ŽL$¨qúÆWœ”¨qQ•ç%*TeyÉ`Ô3c+ÌÔ˜Uö¶®`°êµ1X5¯“tÁ«ì}XEI…Tn°~t/ƒ•ƒ^gyŒ”˜UÝ@j°kį$¸’• óXUW“))P¯%ÅÌ&°¸Ùþ•*­6•*çÏa~clï!aPÉ†ä¬ pèyX˜¨+å`cŸå`ãR)%§pô¸©°í"vDÂB¼ ±À,ż {ÖTÅ—„0ˆôª9”&c"¸[ÉAæ&ÍŽZfdøÆéŸfÁcÿŒ1๿۷ \jù´Ab€R5$Ü+X>šFI¨ƒ{ÕÑ @X nlY€òËhˆYòu–ë=…Seÿ‚MÃ8E5¿ÂˆF¤›(µS¢ 35ÕŠ†`z/¾ha¶Ã‚%Z! ÀÙa­CX}%lº©ãДyÁI‡û9¬ ¬ã,&4 L8¿Ö×±R!Æ™öqRáP¦Fšyæ{, Ë;ØFJ\+>)pÓäÉÎjT=Ù!g©™ùPLaœëep^"…ã·¿ˆƒ9Xð­•?ó(Ï£üœUŠÈké4‘Q´T" a¦†Rà †}„:A†àˆeEAIȱà@, Y„Ñ8pD É"„&ò0 “\ €ÈC¸ ‰˜X/ÄÖ“C„+öôaaN"¥Ž#ÎЈV pÃÎŒ…*íÁhÄ_™•Î¥W0à@¥¥·iѶú<ï¶0¿0¯Ù‚›_'º¹2æ/R¶À…ÁÊ{ÀÛküLyÉ ¸6$<—¸F®0lð¡„"g#6²Òµjâ-ø—Aø—€÷F¼ÀžÜ<Û-²0âhia˜àpA˜úrør–A-'£ÏÑb (ˆ!>àâu‚ ŠóÆôó`<<€PaÚ¯Ø B ôÂíƒZ±«½&a ¥FªB܂DzÿS·¨:—Ï ,3XÞêx܈Õ\à±,õˆi^2RcOV ï“'ZrXõ—À±áS$ê׺rÚÖ ~5qÊÄ€¹úp‹.äþL MˆÀ¢7‰§b% ÈEK27Aø™Œ„<ÑÀa… Ã6£ù@ ñÂØÍÄ OœœD $I$’I$º=.tl†Y±tJÂ5‡´KZnÀ6°a”Puî|²8ùðë^¢zX¯„NÒ ù}ÕX½ZàvV-\@ŽåbߘvTÿ7.§Æ¬Às5YøajŸóHXß¾6Õ‹÷³tX,Zó;€ f±!YèÎa522óÏ.c%:;Ÿ†'e:;ôbvS£]ÊØÜèÔ³·<”Èòó×òL”ØÔí«…ª|lÂÚÖÒd§ÆÏ;ýÆB9ÕeC>5^’d`j» &óìÚÀ£Àó0°8~-Ìô¨öz,ÊC9º¦þÉÚåƒ^±±K…e3)™…‡*È`°þë2°øê[•‡*È ,:Ìľ ²ö…ƒ£rÃh•‡YG°ô» øºÁí°°VK¶7A‚À;{X²ƒœâ† Íþ’xV 'ð+ñô¡a¼üXoK'!­Ç€²¦T fÍ lñà‹¬óàŽ9\”íì"vX5ˆ FègVøŸ”Ë ÐÌÛRN<=ŸB® ô™ô*ÄäDž“ÎsJò}¡‘ºUqÔ ß;/ñ~¬Ïƒ^Šu_ƒ-_ÅTãû.‰i¿ú8À³M·ClÎ4š¡›0Mœã!@4T0M¬îí6!p=E4D@ÉÄkœÔCµ“˜ ^ò VÿŠACÃâ&Þþ¹ÿ~x (@ ÍcWâu‹ŒcË ˆ8¶†È¦´ ¬0#~Ï Ó 4I0mŸd“-/Ó]HM4*Ê·0¤Ã+–*D8Ó>óXwU3r!PÜÀâ˜âãiX5æwÉa{¶ÙÖ­æT˜t)îÙjàZ ˆ§ŒUΣìÃd/–¶¾™0¸mü æ $i¿ƒÖ¹D°tLÉÌ¡#Ý0`Àc˜‰â6Àˆ@Œä€Øñ1AZ v°Îš‹20l‚álKI¿ð2„îúAÇS3•€q0ŠÄ€$†b¤‚`qCoÌØyq)!Œrò‰•hE Pæ°h$@£Ê«v*lcæ·|g27Ô*7O'Öö*ohq!Gµð†ƒ”È´kVÎ;xC6 ägS@`‹âÏŒãâÆ q1"T@ý†iÑ™hz\FGºÞwPÌ@M|þ :?Ã0‰‘Á ׄaPH‰"29‡ЙÜ`ÏÆ¢­>ƒtdö–±Ž4/V`0þ+ÝëÞ: ¡ñH ¬TwÏu(/€I"Ž˜Áˆ€Q-œvŒ@A€Yâ¹Á´$d’@g˜†¹øQ(J,A:8„ƒ6„110ÌJO0^Rgaí ³Ýý¡¤DHÔE„Hì ‚s½0@(z ô,2B ¢áj PÎsñƒTLø†å·ÁÕƒÄU¤¶ÈÚ?¸3ãg<¬L DøX‘kž$¼j瀱°Å¹<:1õ¹Ü…:<ß||Ÿ+‡œ”ÈÔóð7ScS×–ªliÞ¥’ŗ̺ÅÔÖ5tÄ­ùÄä‡Õü—18…>7÷N‘ÌiêÐ÷•:8yUâÕ27v/çcb™W° Tèß„µq>9û® çÇ™Šö"áLŽôÝhTþÀùÓƒaCŒvýËqreàÞÛ9àcÐ~Jc¦fÏE&ÈõþU‹Uªÿ˜?©YзãÖ×jÄzån/6« ’"*–À&&V¾J·›¿HØ(åbåÝ/ÿD @ü„E¯EtÉ®7ˆÆX…»í€I`£UY3l”a ìð"»*<€!Å>VÌÚ°»g B• ÷Œ†ŠT-¦¿3d–MÓòOµ…Çok ÞÔ¨[gWâL´R!|£µ¤ã!¢Àâœð6P/Ç‹O, ¨Þp–ëyÆóÐö°/Àí *Õ"aeùž—ÓíùhV‹¶lXatÎ}¬*„ÏAJ ¾¶vsX[k©R¡P²C3°µöt² ޼ºÃ•d0_¿Ù™X&°ç§ÒsšÃã¡Ë•ƒÛx ¥Â³h,ïS ‚Á~õ0}˜>3}Ø,ØÝ àf/Øv€Z²+xGKš£1ðð/7ÓMÅu±ad„ý hÂÁ?0ALòÈ%úæ:†%3EÖF¢m™þÉoÖ‹ê¿Èê:'‡Â«ÇåÉGÞÌ9w\[E–̱œò´Çº2`*­:£aû“b¢ä,Ê |,k“`œHg"JDDY7íH¨$âh-¥îÌp­ „ÂáX4D· "0 ¡Ðº@@ƒf2M^T¢Cæ€Dß±}î5vð› dè›kYeòÛTˆq;&ê°§ôÆaK„«Wú"á`q¾^Å5e1©ŒÊ!Å\sL*•¾² ¼Îò,:ÏY ] 59˜!Æþ½¬O¯š¬xƒ¡x¶ºBë±8b`;XrkTËIñí6óÇ¤Ë óéAcüXÖ¸D°&äK’Jpà%íˆèlŤLc€ô Pâb<¤çRK#‰OÆ(H ép$€LH˜!;>Ùj&etlŠÃ-—ÔwÜÿ3Al=ÇÅì¡ðÁ. À,Iƒ*mƒ8"MÐø@{[³1Pc\OÄ€ ˆAÕ§Qztp5ùŒæÇš¿- §Žÿº}AãŒîó‚{Žgwß0øˆÁ‚o"I„13ÃdÅ\‰¡‹¿ƒÛ=¬O*܉,úK.ðSts#óxò¶®²·àör‚ ”ã¶ÝŒ'ÍŒ›P AgŒá àBgÂÑ%ïý³Tü.¼'Ž—^‚ä"SF¨×#â@ºèq¡ÀÒT@ݪÆ)QæïR;©1æ -¼ß%û±Âû…™©Q®Ìã!²Äž±ÇÄÖ/]44€¹cVîÎ×^±°¦ìâ¤G÷ŽJÁü}( îFÚÅÄл€CDFÄÞø§€ÒØGÍç$NƹAœLH1(´q$æI™( @ WváYJA$2xÈ‚%œ71­‡Àƒp …̉¾Ò„n’¤áxb¹ŒÅñ›ð|«WëÑZ¿¥Z¿^ˆÅ9åèòTÐòÇÙ>ØãOë%‹1Wx+c/C‚±ì¨CÁSãMwÁî|o«i¶=½gÙÊìzŽj¦Æ›œœåv-‡ÀÚj›n6©ñÇÍ:NPµÅÄ)ѨŠá'F²×;‰SƒÔ½v ™»¿Kˆ*lo·C[-ScWû´b e…™R£¬Ài…65ãëTþÍÞ-® nnñüÈš{€ÚõúøˆžBÖX‡ã4l•ñú Ñ)öHQ ŠÅŽB?Ȥ1%‹ ÃÚ»FlãægK9“ ÈxE<€çÑE €vŒ»OßþóšL ¡ô\0 [ã( ÄŒ¹úE|˜„ÁJ…vqÐ)P®†36Maoêë…¶À,-ãún[¤B­út Wä:–™~ €ž‘•+{¸\7µJ|Ë÷ÐÞÕ)ó/ßC{W´¿ë{Výá‡Õu†ÙI¨t9áJ…‚°MH‡Á®&R!ÇUöx²å¿g¡íH¢ÙH z+±´Éǰ°3úGíH†PØ,Ìæ°3úm«¨o;flÒ:©Põe“:À¬/vÛ!V¬/VÛ3Ò• Æv{Ía{ÞCI¬/VÛ3ÒÃѺZ°ôn†v¬?—`%ÒÁ¬Ìî ³0w¸,ïS ‚Á~|° Z¶ 2ÁÒýƒ¡‚ÕÜ¡€ç táAÖyì„/ÇÔ.‚cbô²¦Tƒ)ëÙä,œ#M-ÇÒÀZÃ…Ý*l8æÁ»©ð¯ËÖgnBjd/¬3µ`åþ'ž‡€´Ñ aO äÖ©û¡©QÎfô‚à_˜«‰$F0þ=<ʦ`?áYP4¾}**ÏŒ0_êÁ"•Jw•®ÅM‹¢Å ‹mE(Œ€QÁPRZeã‹+ €òh˜ÛŒx!ñ–D®® J³2r†ºÂÀTD ÁÇø*YçX6Òˆc|•B@Íh7êdØjÅXÊÉJè ÞÑTèæté‰m)ÎÊ_·«)%&þ1±J…ga¿ÉÔ¸U†³…"oΙ)p¨S î®!Àf¤A¼ÔL˜Ó6x‡¡”vRá§É“œÔ¨{²BÏ!2ß§ÐÑ3cgó…pQØ¡xíïâgX^ïúDXåüØ×¯àœ“µr¬…“ÇóÎHÞ%9Íi‚”všûÈr.@œ­B`b`g,†O©ðÿ ™@† q£vñ;2fwè¨À!4`9?•b „NƒZ~ÉY䈖I2ƒÈ• ‰ƒd:@!Ä"y2Å °l„ÎIt¨¢ƈc"{ÄùÀ1›/Œ«Œœ ‘¿ øDÀSã}¯Ò ?mlÃ’SoÚ. x@½¶óá j%˜çZ /JdNzt<£ ?O‚ Ï®‡•&=Óe27Û÷­-’¦ðT˜õMÓ6׬[=åàë%>5’Né@o±9IN·525,Îä`±*†,Jâé7‚§F¸Œî9¬zâ3¸æ±ýñŒÚ7…65â2¸ÚÅMÞû SiFÛ ›2<Ö‡B±«¯¸‘PLl-wËáˆe2fqõ><Š¿`¦ZŒÍHœd„Ä_qÐB€Ç|‰°áÁ|Œßº“n%Ø”¨Lq''‘¤³ a£ áTÁ€ÀÒ\Šx8~‘ĸŽp†ò?÷qÁ8Ñ¥u5£hÿ€~JŠ¢À6,*U3 VëòánJ\#•Fáfr— ÷yN\+ψ¨c˜C‚Ùޥ¯7›… çÏe.£Ùàl‡[ÍÂóãg!o7 Ïœp…¼Ü/>6y±ìð6RaÜ{9zlü›Î0awœ,Ù°wáý}X1Û{‡<<˜VcBL2»KÍNx5‰·.¥ƒÑ xqRxø-½¬ ý“Ðöž> !oJD2ô±·µïS`„»R¡êË&N=¬(óèPšÂõm³=)Pã9y……îÛd;X^­¶g¥… ²²dðTarXQßàÁawÌËÒÀ»LÉ`¿?X=ð ¬[O,µƒàBã2†áà”0¼¯†À!‚ÕÜ w>1è-6ã¢P ©¡M2¢dá2p™8L0˜VçÁPeÕ5Q%ß^K"­sÂÀË-cÄÔø{ötÕg±ºØÄè¦@F¶ä2S!¸mì Tøqç „Ï‰Ÿ¯Ón½½ç²ÒòÜß'A.îUƒ4"óO²}hd„8m2ÓΫP"°"fÈË ôá(Ä6¯émkÉ„ÓM=N«>õà68Š‚¨B´Á„3 Já„«QÊE‚"Èfh’£A‰k` gCÎ &Ø ÞÃ3¨Sü³»ä„µü}NolnNÔýc8A¾~ÆáAå÷Ü•"Œ=™§Ûµ¸ÎnSí´‘ãñ9à nÊL}ú55Š<á Íî±¹sm²jÆÔÏ€±5~Ìv °%Oip3½Õx8É/ahÇ!‡˜ÜT#Nˆàà 14Ø&M°ͧ©¶ ͬx‚/ˆÍ:¸‹*‰ðŸ©¡#o'°Qhã°‹­ätB.¶ö .·‘Ñ«Br¢5š°~ýÈÎë´q¸ dp¦ì`TÈá…:>¡”7csoŽBÆüÝçq*t^ÿ9n5XÕ8GÁÑbþãdïc6<ññq©±¬^ø@Â0+sÄ|FOkàâÅN5¼Äbæúσ;ÐcOÏJ|oûèèYOŽæ²:S#_—Z<Ë[ìÛtÓÄNüGÕæ¶–”ø ¶ƒÒ±µóÀ¯þ#,ä Óÿ°X‘ňCæ@š Þ,0´ªBÑ“q"6Ľ`y0þ-æáÑ09…jŽq5sñ“ý² "~1X¬ÒÄòŒçZN¯Rž…»ß3ƒ¹•ᶇ[ÜexÇÛ[!áæj½½ñ4(z³¡äÛ%+šë'µ@âÚ´Ë„­‡mÙ>ÓÌÕ{{âjWBû[8“¬E ‡C˜Þ¡Pèc3•ÆWáœIÖ7eöóÜel;nÉö¤qóÙö¥qŸ«àÂÜ­kÕgŽæ¿[€7š£XsÂøC§ÕϵC;žø_O·d"Ø©C§ÕÎx­‹m½¡ïrßÛ2b¾pžŸ«íéúÚùëei’ß· l¶ýVÞÌá%‡ÇR¶Õûý1°n¶ï¾Z‘°ÉGé¢g13«j«h Ù!¹ÑA¡)X<æÇ‘ÐNãÈè-O à%Ã6å}yÝ« [öFÈ`:ý!öTÁoh`ß°ý!ûçhg9ñüBÈc¡)× Þ‘#`زl3BèzŽå\ŽKø¦Ê.— ®|{/¤,8<+&ã¡ØSýGËBç –†—ì`f§fòó8îp§ú³Ù¾fë§ .ë+å9”ûÃ>^J x_!{ã'½ ÛäÖ©–ž½  7ôDkïàâ×wA01»ŽhÁð¶Ä'y¯2B FÏBs€’ZvÆR•×u¥DBÍ’_©…@GÚ8«A IÄvD|ëÁ‚³1ƭǹ ¿¹Æ¥l§Þ<ôÔâðÌž&ߘŽ.‹O£‹]~p ‡…£tQ´ Œ&2XMZ¦ ;AhQÆ6ðÕwñi%㮬ã‚båÿZƺ" ~3¦Û•CP£´x’—DªÌOˆš÷¬àY°¼¬‰¢¢g¹'0Àƒ+TzQÙÙˆŠoåÎä°…ÖÀ1, €N2Ü“ÚnЂX9¡7hàÆ7þ¾«Ã§ÍdRo„ÄWš—ó‚OÔ”Ðj†ÈdÌu– ·‰üšpâK8»ÒYÄØ1[¢Ì@Ñg«Úá †@4¦”#m†ÝnÀ l6â0¹›ì'Ú/#9“!) šÄ¶ùž¬Xø@ð!!RðÎ޺إ_dz³È[Ù¿,ÀÔV®¯ÉaááÔçÛ]ÖƒW§)¯¤D¨|š£eãà Q“…ú‰…Ñ/“”àžA…åÃçŨÇ ÎäÄ¥@¨ ‰ÆQ`ä[Ò­ 3ÄågƒÚ8ÆOû»ç4c˜Ð³g%‹¹bxZ½q<õcîa¡ks sà߯ÊÉð~¨Ó;Ç®Ôèá¬2°:©ã¦—XƒxwÌÈîo°ÂYƒœWm²Ç-ÆÏÊþ28Àßtÿ{†ë6¹N»;;mÄ3S£Í¶Yu²6µ ¿’ðd§öo›ø0Å£ïæ t,‚<ä.¸“/ï#v(m‡€Ã€4/tH<( öµ¬³NWR'žþµ¿Ä ¿NdLŽ,Pä!süÚC$\õ±+?Àœƒy'vDáµ}SBhDædæÞáSt—\FÐÿ!<­KßÛJD(Up°}~NÊYÕÏŸC\D¸{™›n–rá÷…æßáWœ‚¯'Ï¡®*\*ó‰°P— »+ÍöÝ.pi¡./ÀX(ˆöâp¸Q— íÄáp£.Û‰ÂáF\7·…ÂŒ¸on' …0žçÐëu.pi¡Cï¡Öê\>à.ÓB8ãFL%°ö{Ý`éÙõø¤ÃÙô%QRvøø°x€ök‚{9Ü,³Ü“§àáþ…ðöm§X>õ6 !¼þ0†‚ØÓ¬?z›2ðVÚ mø°Ï~…:Âõ©´ËñKâ0Û¥„{ù?k ±:Ë¥"톂R!¿CÞ‹x¨¬ âví`o°‚ÀîË„ðàKUn{vRaÇ‚W¶ó°ƒ!…Ÿ!ÄJÛ&r† ðAcbô™qØûYS*``öá¿Ô.³ÇD#9n=ƒåA“óÙð¦Âšï›©Ð²¡u…Xkp t(_l¯#(,ñ+.&¦Ã÷¬Ìc%VF ö7LÅìS!^ø’jt[мÆ)×éòö…ˆ2&Ð’éàGi?$ñüR†WXA!ÄÏÊ`|DH"±Ñl.–D^ ­80zµÁùµd¼#àW‹sÿWPAäÍÖY¤ïR€¹“Ø‚–ëƒô“_3ð¸Ø= 6ý@ 2vÊäC°†pq϶)cèÕˆ!± /S-y¬ÀÔ¨\ÐڞСÓöL5&À‡¾˜‰&aU;-“©0º´2¶âB•>a`̰è›èNaH‡í â°kį$¸’ÃûÙ¾ J†àÓ4çÐ…É–ý4pÙ`¶&vÙø° ñët×\ 6¹â·LX<ùLƒ&`ñü¼×H–‰g%_ å"4j87gêÀ0p Ëý×俥u䌈雌D%Æögt„8Òýn±äÔ**xš£åÕË@÷øÔ!‡öÂáÍ(Ñ‘œk´M€$–K ´™g¯œâ,ô[ RKe2•»dî’$A,$° ÂlXÕG ‰‘ØÕFô8ÄV¹dâäÓ> Ì‚ø†Û>Jmð;Æ«D8ÀƱAÛé"%õ,—Ïís ¡Y@£Bµ/Öü .™@ÞDéÄñS¤ «A\†P½ `˜D ·G ð‡V ^†ú„qÁàY4GY^4Àõõ¼-8).5 €yžüi{£cË–q±YÔbP™íú±`Š€À\¹ 6Ѱ òj-(ƒüþ˜S1-]Iójn¦9€Ás©B’^ØÑ­? Iª6Iƒ,‰àÃt0# 1°4‹sb<)äâµ!×¶'^ØŒSáù…ã‘á›=/håÈS#ËŒjå‰ËŒXòÇiIbtg¶«6Ú]©Ñ¨Lz̬nae³­vqôhM`ºøZïjnëõ¼T¦ËÇ™b/Š£ó…âƒVßøp6SΣ{`Smw;íb¦ö²Ël;­ö7ý‡Ð|÷ò‚ z9>~Ùv9aóHÕÂæ3D XÛžñÚ1*îöÑLÃпqÿ€YjÀ¾¤ `wÐà •€½ðdQº@ j0S0ÌøRDÚ;Ê94À蘆0Ž›ÿ.Zõ£™-Fž>¬Á!THR >†.?þø KÂoWܰöñÙ?ª»!Ðäì¥oôâl%CæéåÃîà-4%Â…ø t|¶ÍEK†öbq¸P€!†9ay¦—¸ €´Ð•ï …ZÒ»·€ºŒ«{Äà.£.Û‰ÂáFV7Û‰ÂáGû>†Ü­Gç…愸}À\¦„ˆ}>…Z¥Ãîà-4"qÎL=g½ÖþN8qv ìânŸ¢ñ&Ø{=î¤ÃNý4Á\ð'€VRkAâ™I…^[Ãñ|ဲv–kËWΕ«±;õr—[ éažõ6 ,>†¦Ó,sRø-³ ÁaGs¼…:ÃÐvwè¬- 53>s[[ æiÖCÙÌ`°! ³šÀÚ™þ¬ ²¼Ê¯X ÎÒÔ, 6:!‡€<¡¯s¸‚Û€(k9—à!„ìO’² ‡´Ô5è‚ô¦Øt $l<ö !`|*żý d+CÖaM…•x:¬;*ðTøS]ð{ µô¼Œ °*PâCU‡ïŒgmåaÖ°ƒ»•2VÈ©ðâ´•:xÍšØPËÀ›vO®)礹$–L›Íf‚ùf“~ás `±»ŠHnB$ý!A‡©ºM:ðtƒ…ˆíXÖžÞe¸¨&à“r €=ýàü .™Cq®2”Dª·s€çë‡dDn ;±Ç?AƒçHp†ÄÛP†€”ÁÊvv=2e ²yïe.Mó2×P¤B³í‘Ň]gaŒŠ—Ò¢'áÄ£ˆVšžQ— …2`V¯|¢rXÑÖ{,½›àÁaüè`bVBg¡¢ÁÚP¼þ/ÄçSL\95ª ó¦@ðV¦ZOk[_LŽ0×Û¦#1ã?Äì}ÿç npmGÍ$É2B8äDWì<!à€çŠ˜à@!ÁÖš¢p@@ÀÀ3„Ɖý1š³ÖÞÑ MNïzÑelIÅÍ[ìž–ÎÍÃ÷†JA"Ž $sˆ…^;ð¦£.z4ó­PŸÊúâL‘Ƶ_:_ˆÓ›Õ„ ÷«'П­ŠsŠ ·–Øs­ÙMŽa刮«‚=Ô˜ Ù’“ádÄcï‚‚žpà„{¸×íîÉéâÁÃù}:QËnÜ E8½‹CÿZã8@§Éº ¿êôpù™QäE¦PðO-áHr>ÏÛþ£ŽŸ8tp¾ã„Š‹?ÿ`ÀÏî=y->€&d’ÁJßîwSJ†3¼ó|ªƒž­ãçÕ*ÿM\¥B®~IøT¨?m`ÀVššÓpQ•YŸ_Š©Ý‰ãÍðÛ€;oK¨|_M.pi¡.pi¡.pi¡.pi¡.pi ËpsÖmàWJT.›|}ð+ ´Œ7š2 ÍÆ'Ê@m“X`dc¹ô+#ÏB½)l=ž÷X5yõ¦ô´à+äˆkÐñL°t°boÊ0ã7³–Ô$ÃÐök'Ï¡ëU‡èfm2ú¿{NWTÖbwéaï-¿,Ráìún°ö€ÔÌÙŽj\!°éÔˆoÐö°7‰ÚŠÁÜ9ÚÏ+;„;XÄí%¼g€í`o°ŠÀºÆÛå`[sòd…îO¤%„°nOê¹>‚Û‚G(aà* 5LüüYùøšƒ€hE€óõ°>{öáL„êÇ)°Â¿øURj|/¬)”ØaÅZrS¡\_k â¸f§Â¯Ë€Ò*d+Îv™)ðª€A:ðâí59§ôÚÜÝ ¾Hµ€ú! ‚öî„ DΑ"¯yÿÄ´°Jýäï!Ô3Rø2v@€Z€!± Ø <Ä„ZlNW ¼6 ö›”ä^6 +C$xÌpDʺˆ8°>ž™K!!e:(@à EœÆÌŒS 0Xìl5•¨;V»V+Lh5ÀžÂi¢õËÙH…h(‚— ÷¬óM4+Ör‘u&R´bˆ]MsiˆRawŒªù¨T=[ ˜W“|,?‚ûJÂõm³=,c  T˜o·êÁ'Z¡`+Ú`~~,¡™ôë7 7Q!=ÿ‰Gø8µÓªšh5§Â-fPÚÉ` ÐϘ•,ÜH pz1¨w†Óä—&2²DMÜ–äŽ\‹¦"ú”9…bzþ5gpC˜ÉòÓÙº†Ì|âÆÜ‚`v6µã!i×T0Ž˜v“f³\/#"ƒ„íùâÔ"s‰A$’9$’ó$‰Mº}ub§F´ŸnŒ?ogÓÛæ·ÜìÅ2ù¸;ºmð9²¤ˆ‡15‹¡ØâL÷=Èeäæ`×Ï Ú1Yüîc}·ë@„Ó"9°{À!´†ý€Êó`6ƒU>…š¡éPÀRwcÚ ;²!F@ `™Ce0 €Œ ôDAæaÀÀÂa90N$Õ½¢˜qÜ~¢b›œ„µí„Ðfä€@V‚¾ ¸.ãE"Õ;a”Å·óe¢vüÙC¬äýª ´ÝH²†KRY5sP0gàÊ™£R8)Æá–Â0¾¥`cšôñâprÕ—T­!CDì»1[|PKLјªšC»éš†DÎóÉNVGí¦¸qo÷Cî'lEû0Æ\{ñ&Ð N ¬zÅZ 4ÅNÓÈ]\20gñè£<ñ Oþ@65q}s|ñ&ø ¢ÿÿR•€hÚÿàbEºå…æšVñóꊕ¦®R¡W\ÂÚiWù"Ü…”ò·ûêšT>f­XXz¿Ç• »!m4¨?gÐÛ•#_Dô Pø=šµJ³¡ìãíôº{36š=C!`šÏÕð^k= 2 Íg Ü`16š"…Ø]™µñ׺Îü©†îó"˜{«Ê‘n18ÖR˜dþMeb‘~q8Vv‡÷‡Ÿ‡ó8 Ö'ÊDùÄáYÈóЯKô»îîd†Ó³X`³3´å…e# ‡³ÞêL'¹ô+&Ø{5ŠçÜúµXzX3¿öjߟBºX:[©² °ø€È[RRü™è(â°ÛÉõ—aè;5šÃÐvw謠73³´93ò°6ì•´Næ^w3ÛP† ϮКaå4"äðP‚G°hIYR 5MCQÐ+??~~&܆ðØz(áa¬w‚¡Q¬ µÇ+;‡ÀÜxXvõÓ•Ø6>³ºd)þÌ9Å9esÞrSáźrÎKD…6â6 J™+A©ShÞ>9µ 9¬Ï+÷ !aaTü„'^$ðé–F2 ÏX&ƒ gFD'd«SÜÉÂEæÀyÎA³D40S! ½_Û¼–ô€Âé‘xD`¸)Éä?ƒF¸øõZãB‘€íRd ¡ …ȇ^/ˆ,‘##V&X`Å3x²Ú!6Ý2ùÊa¡u•_1Š—6øð2±ªÞF*D8»æ·¸R!Rˬ”¸]Õ:4ЦæV>%–Î…ðr›²¼`¥B6A΂Ï!3N}\™Ã[,ÄËk·BñÛßÄÇhëÂÂä{D0ßÁ¿ø85þ+´LlÑ0súT ÏZ8Û´1XÚ½x €¡ð¤ŸÙ€‘Hz8* ˜¡ÂÍžš‹” lB˜Å‚c §©ýL@ö™Ññœ„"Øú¿9!&!î|âüé#4 €hÖ‘{È<ü&øË™Ø“Á±iÐ"ü €RyŒè åÄ9õ xÕØÐ¸©ÑØíYÐãß-ÅÈãÖ±ßfS©y  òÆò‚é-6{ï!'q ‹„ Ë n¡5i‡ÑCb¦n Úä@hZŽ?ûyóõÐ"$•‹rÞHè¿%ÒRÞ:б‚ä‡,Õ4&vzÃ7…0ÈÌ@ÊY%6h÷´2jfDV~±B8”‰ƒ×0dÌ/h4Àc–x_éLoƒ2ŸÈ^\tÈ\R#M$@àÉÆ**éì>jû˜¬RKmU€T_Ä¿7 ‘w]BF“È+H¾‰Ãq '¦ ÏÔî35 NÑЫü‡„{šÝ~›;t†ä$ Ï€ÊÃ$t2æáhì w߬-Š)¡ßo³sxgܾñ²ý"ƒûÝXÍÐ(ŽøyÂ!€A|¡ &{BÔ ³5‡ƒÅãÚu¨r<$åS D ާ}è &Cº¡Õ¨t Å`xº¡Ðák9TX¿+j*:ô£Š†ÎóÍ ð;Æ®@‰µ< ˜ÛwÈ1Äå·T¼>"Lx{…·C$ÎvùaeöIÐCá¾¢máÊ ïî@^ØðoŸ–ñdãˆ8àòúòÿÇ|¹a„_)<ÆÅ±,« #ñvàøÏ>1oœ(NÆ$ +é˜xs˜ÅF…Er&K‚Ãa°ú¥Ìýé[ÍÚ9ŒYü3¤fZ{Çü~pE‚Ä‘€x! 1>…¿«î˜ø–2!ût, Uf}~+ÍÃÙ«UðÛfô¥Céô*Õ*Û½œ¬üRš…ùŸJT¡ìïÊ•¦Ö ÜÛOCKþ ¹R³¶Ó~C ·•mÞÎV~)L2'®”¨eí×)PËÛ®,R¡—·\X¥0ÉüšÊÅ)†OäõÀ’•Æ8ž¸±åV§­Æ”Ã'òk+‹{7åG*$ú«ÊÔ¼ô+¥yø.Ör ÍÆ'ÊD2âk…hpyñiø0Ör!-‡³ÞêD2œN%ô= è, ,šåggiËÁ°ö{Ýs[iÊïÉÍaÊËwþÍ~Öé[©0Ó¿M0_½šU–,3ÙõòKAÙ¬ÖЙ›1Íaô>ÇèX/‰€Ûõ`ï ý L7€Ú~BÁ†Â²X<0ÞÝ#p0€ïi¡$“´¶BHi¡€lþPÀu#›PäðPÃáÉYá;Âv;…î‡Øá;áã±mÂ8#‘áœ, fû1X¶‹VüjÇ’°¯;ìx>V ýa b°m6b0Õ>y¦IЪ6°¸2_ËJÛ€Sa}šš|Ö)УQ¿%2˜FÛc|dŸ ßduà¨ùà„é1`Ù "7ݰÜr‹×X%ß³!.' d;ò/Âd’Î Ä—õÍj“écFDx%öY Ržy¿˜q4“uV¡€cÈÍ"Ëhr‡’û"Îþ-ݽˆ~äÐè…öƲyA~Ì'œu#$ÛIáce c4#Äl5œ&‚xmƒÔì“Ú‚w m±óü°F/î>ÏØglîteOV‰ ©.i«vÄmnp¬ö±¢på(¸'•Œèoˆd(rK(@èˆmJ]})@Ƽ¢a¹Ù À>=¨ak¤þë£hÿ€Å!ßÞ¤®–XZxÆßj‹#ÃÒ•à ³;êêT.†6 ¡PRª6œ…™_9|=Ötåit=œ}«á·vÞ–´w7d1öÒéͧ!—‚¥0ý´šÊÄ—äÏÂë|®®‚• ú¶ÞK çÎÀ>v扸WÍXÆ7eV­XÆ7eV­Kñ7 ~¯_îüì)ÏÐùéJ…Ú›²-Kñ7 ~°3ô+¥?‚ìêN°¡ìïÊ”Ã'òk+§gÐýµõ/LJŸ#ø.ΤêD2bk•#vìÖ-ŽIõSr·8ÝIÊ‘ …øœ*KèzÐXZ]‰®WíiÀW†R¡§f½)DïÐ÷žJL4ïÓLïf•e‹ öâ^¥j³mf¬ŠÃô*‚ýÌ´¢·äô;å`¶&{~,ÄÏoŃ¿¯l¯Fý{¡xaÄü¬ƒ ÿ¾N^®(^RÜM €BàüÍ R9µ¤9¢H¹&°¦¼äÆr,Ô»P4‡Å§ÿB¤þèBë()œs’#›õgÕ>MÕÿPעƠ^“äÄR¾aà.J×ÉG @%öÌ:DX©ŸA wþ¾Ç,¸“àhÚÿà1„b§ÀÂ{ñ6 ¡o¥'ϓЎ „<Ý…®yRê6œ…žÔº…§3g¥÷À 5©)pÓ•¥Ó›NC/K¬ ?½)tÂÓ™©©vt=|®·Êêè"°†CƒL`¥ñúk—Æv“])|ei5Ò—<2´×aKã+M3ê¥ñ•¦™õRøÊÓLú©sÃ+Mv¨dþO\ )YC~f­R[Lõ=T¨dþO\ )3ù5.¡i¶v}Rávm`¶vò©ò|¥Â}ûbÃý°W¥/>m9 ”ºÀ“ûÒ——œÎJþà.Ö¤¯ð{réWy³jš—NmÐTŠ“L-6Φ¥å°û¯•‡žíhA}ðSp¯õ±…ƒßâ½Ö;zÆJ÷Xì=ë+Ýc°÷¬d¯uè{ó%zØåwçACºÉ›—q{®wWj÷_Ué}pVÐRl>º„T–Ð\/5¹*Kiç*€X.<Ÿ_—¯¡èV7EÃÝ^°Xøÿ/R!´›Íp¶9'ÕMÊÜàu'*D2âk…ô= è)È]‰®W©í9VêD2 Ír°ðþ©PÒÁn­¹õ^––œêù,-,Õó_c`ʶuû…f°›É¶X-É2ÛÝ‹¹&[{±aû5A3ce•>K±3Úý“¶jaâ>U wñ gÝ øXT0œ~!uÛ'\w ž3 Êf”np}¢ë¤pør >Ö °hf&°_¤Vm»Sáï G3S¡¯äaˆX^4ÃÁÝL…K?!`TýHè°ª„ƒ Ÿ û¦Lm|Âð¦C †Ü VXV9r®—Ù\_Ï<8Îêž t/×<ålX‰©Ð„¥e†ÉKtŸéÀò¸`'Ê„oÕЂZODø@]2 €l>ßDÎ;õ¯îñ..]f@Óˆ˜³fô€Ä"8Ý4lmˆM¶G„Á‘ÍóŽJM¨níá6-YŸ±º)g–îÃB¸ÌàJÁ¬x½ˆÕ*YÖ{ “*Èyi¦…Öeï+ˆMYQ«5R!\_€¼©0ªpÃu‡¸Ò[99¬/vÛ!ÚÂÛ²køˆOêbÀ/´÷V!qØšd×\¦ZOk ’´µöéˆÌxÏßñ(μ¢Z%ÉÏçJa5€¬Q že»Œ¥¡`P¡&•bŲ% ‡a}#ˆà8€ 9++"Âe Ú K羉¡êU~( jÎÝNÇ>åàb÷'åéƒX,i Š|ùÙâ½€^’ 9"YHIùbľ’Þ()HH³ ʆfÇz¬ˆiݽéÁ½Môûƒh,ScÀAKò† ˆ"†9bÌorv8¼x( ú50ýš~X$Èêh¡…+%R"sû†q¸Üo}MS€°}“°¤vÞ¾ 3è³ÙµÀeƒ$c…ˆCs™IñìãŸ8ÈЊ>à‚$ÂB‹$!ô´úüt ñÒ§øî"€ârzn.›Ä†8cøÊŠ IŒŠ@‡PÀÓ@D1ÌH¸€À$ ’Áà€&|Ôc H€0‚lE`aÞ¬2LÆÇr_›â‚èîyX.7‹í3ü)6öÙGÆNIùÁ¬Ùñ¶ÓW6%ÏÅ.¾”¹Ÿhà(ˆ厑iדƒ# ÿDVèÍÛÜüzº× ëÂ’µ‹x¤q.#€ \"û7‘ÿ­G÷‰:— „ @ü€&)~þõ%pµê]BÓ®XÈ®¸x ½˜)uN™c0‚Ò…ø}/w…×½ƒLü©m‹giêÞ¸~ZuËÊ—¦‚Á­Iu“Ðo?Š]Dúô¥ÃöÓ¦^½‡fê_ õ©¨"·I ÞJü=ùØ4וÇɳjRó¾pqµ˜©tôÊÌT¶‹r~Q‚—mØ›ô£.Û±7éF ]·boÒŒ¾1?(ÁKâ;šÚJ[ ³¾ºRØe‰´ÖðRmOªŒW×um{¯ªô¾¸ «h)6]€¯Ø©0ÉüšÆåª<œ®¨Å`¸ò}~^¾‡¡]& дÔu*D2›Íp¾‡¡]" ±5ÊØäŸU7+s€=Ôœ¬(rkòj‹UªD2œMp°ƒð>е}§*ÝJ†BÝk¨A~Ç¡}:ýŒô­Öy5A`·$Ëov,?f¨- I«&°@Î&¶É`Ó‹žj²tMj†Ï_»¨¼!„œÈŠ °r|¡hnöðok.ψ¾Ã«½,ˆÌ7!§Áá‚<,$ â!M‡m¡‹¬>ø1RSáW_<Ö¿EØ……^%h"%L†u•á±S!ÅBw……\ß ã%6ñ®ï¨SaiñYÝ2Ÿ LÕ¶(†–¯Ëq*l/­/ôfj«‘÷Í…>È¡™/|¯÷­è Í…aü`£|0ƒd+ÄP”*‹á( 4…¼Pð'ºhdØZˉd1¡dF% ~Á6] ±©(ã%‰"C•³òBm¡«dÓÁ´wR!׬§0/RáU'Ä)p«úàÞ™lŸšYh±Âi¡u™{Êâ¸]Õ:0Ðý ÐsŠÁ¯¼’âK_§(€¡K¡f§3¤Cx åú ð+]eÃ]!sQûÒiªÕ›„Ë óéб G 5%€Ô‹‘£®× <äTSAÈH6 D@Ñ!(‚@Dà‚¬†¾«¤x’~À N±ó« ƒ’ºŠ_èRn£ ÂàĨ$$†Ÿ˜8C7}fÓÔÃnj´Z€Af*º‰‚™Ú;ý¶ö ö"t>ozqx™çq˜ÙY§§‰è’öî†VH$yá6ª©ˆ ¹I$Ä“2Lm“27ÎæÐoí{Mle27çÑ·rJiî=·]¯„øˆ‰¸C”À6ƒ5r†PÍñ )Ì(ë‘ö…ÓÅ#6tîoTãf ÷ËÖ£.;‚Ãé)ùÍ.‚ØÈNP6†¤$ê  Ëä p—=£ §ëÈfEÀg ¬‰þÌ€p`‰hX‰_ ãa8eŠxß™ÏÌ1´ ‚Ðð`Ú|‰AˆŽ1ÈßOt3»º$2J§²DïF‘ÒB òl"„âfCÄ™à’JB™Se†ÎoÓÊbÎØñWÍ: i±jØÔìMR'® ¦i/ð©$¡üüðÿžXÁŸ€R*ÔL7;#1+b ™x? &Ì´"[ þLîÿEÑJë>‹æBhmœ~¤@E®´äü:AÂ&,Ãu´¹:ÃÿZ»¾´®ˆ¥Úî(Pâ$t›Yoí"üi½Ÿ «{Ì-R³ý:YífüsRa_(p¬ÎvPRòãÙ55‡V 1üZñØ25/=Íù°Œ¶Ó+MzRé…ùšµK² gÜ<úÿº2ú¥ç o'+2CƒiÙ¯JWZu«º…¦S=â¥Ô/”Íøâ¥Ô/”Ïj\>f­Ré„#Ÿ¸Ú¥Ô/”ÏjÈ9ÂÁ)ž°ZPØ]ž²¡ð{;ò¥ÓG?qµJãi*D2'®,Z‘Üß•uêMÙ{_B< éHÓAî¯R4Ð{«Ô†Ì{5s\VŸTó^‚lÈW¥" ±5Ê=š”= >B8`+Òd/ÄÓ6 ÛsЯJFñòqñ 33´å…efصšÖèNûŸU9ýž+̰ÚY©­T¼ n jHsäÏOkßÄÞ»ü²¬=§©»Œ– pž¦†)–ê&Wú„Ð-æ?Àu>¢®Ð-ö}>H:ýXt€`úŸ(\l:PŸA3 Ê¢>ÕöˆYßÕŸŸˆ‹N£²2ÌfãË¢†°é‰A{ð,ãqÚÚzwÝÐ-fÎûº8^Þ[U>o#Ì Ðn¬P‚ ÕŒ!»jc\Ä9Å 0ƧyŒN!0< Ã&àÞè1²ÿ_l’˜_ucuðb…þÝênl$q5§èÀñÞÛ^qîYFÿŽxJXÂ[{A"EÞ^‘XAqˆ…NÒQ3Mèˆ``Å‘ ¬QXð¸ðPÍ­k& #X š‹‹?]ÎSÂ÷» Œ7²ƒpÂæ§@BùcÕ¡ 6WŽÈš°Ôì»\ Ð!ÆVyxÚPÃBî£PÅêÛ(–Ì Ý[DÙ#dP¡>̶Þv!]¥ƒ¯(9ûÌÀ€18Døðç1â] ›é!`Ó•›…›¨…øYgeÒô±Ð)— ‰V†L¨†&"M¯8´_Йƒ|Úðc|T¨¡8ZÒ'‚¼)J&"½QcƒfûÊNh."ÍÎ1™‹¼1P b” Pü%7±<¬ÐixئÇÚ«8 Êºås$0 ××!³„H\I3ml„Z(`HŽYú¶ÄgÐ\ðH“œäÊ(õ‚@™s!TJé€ ¢£'Dù)±ÈåZˆAÃÄV´ù¹Än}›ã0xˆ=D—°C@ñ7ØûJmà‘Ï¢€à¶ùÞ5Ê>m ¶á>ˆ@dÚ1O×ñÁºÇ+ Pš€Döý‰î¸ ŠçÁʳ*Cñ¾}K|uÑ Ì{1Ga…–WòEÓ´E±FÃŒM‰ÁÈY ®¬H–³-5A0³…ìó¿GÅ0 / +ËÈ¥Â<Z“Œ†v“…GÄjζï!®ÈšÁ‚ÅÀHƒyø˜/m—ŸH.%Tqu:-UŽF$!üiž¡hŘî4mEÃXR–ÓÉý!ÀŽœL…O››ë{! â×>Ÿ‘r›Åžœ¦öÏGg²Ø©Ô¼ƒÀS0ZÅ \;äq¯(CUâ[b D7ãøX„ºAô¡Fljî_Âû¡þʉhBa3$cÅæ|‡vݵ v†5B|&@²h FMÔHÈ 0ö(€è3}üp|îBš0¾Ó€@Ät3¿,§40ä²s†¶„0fbq¹©É½ˆAÂH7›L˜m“'“Ñ?ž \))¨[Ÿí q…™¸Ã"1Ò †4îÀ`°âA€‹ bf0{€` 0fxs£°±™q p0ņØñ ûSÔÅÏPÎá)!òYx2 À A&‚˜¹4ò?ðSÈ?Œ% »ÜfÒžÆ@ì÷óñüóaì#šaw+(SðÀ7^wÿEÝi MòpÝæMWáļ\!øvzF›VóvŽÌ!±u€´3ÜÆd›ÿê#¬¢/úê ls9X5÷r—Qg¡.3R°‰ÌÈUØ©xrO® ¤Ô-6Ì©xð¾`¥ï¥Ú÷‚y±‰ÊÍûÁJ|ÏB\f¥>g¡.3Wùž…cz¿Ìç`Ò¦¯s9Ø4Ú«Û"sº»RþLúõ&ÛMKE'OŠ^œ2‡¨«Û"sº»W¹ž…bÊöÙ›…ÕÒ“cð+©),0_\º’ÃõÃ),0ßV½ÊM rkÔW´ú¬J“>z„T–vw× êo7WjM‡À¯PA…Ïy¼×}OB±ÁI`×e}r¡áäú¬VÿW¡Œ,-6œ«x©PÈ{¬ðÞ´Ý[è´…öšÛ ©PÈ ëY¬'-+]pµö Ý}@VkC:á\ LôßЏž¶Äâ°*Ýj`%[ ˇ'_Ô0ÓˆH8ÇâÃsä|A— ‡â˳âIÌý §úª«!ŽÝ;¤BPÙ¼EqXø‚X‡äKÊÀ†â[ŒÔÄ·¬*ÎcY¬*ÎGU‡§É,±M‡Þö6ŽPÅŠ<¾::Ëó t8Óó‹”ø^%ua¡žJ¥¥® ê¶xG¥aÄÑ׆•V<“ ÷æF)ÍG Ȭ …‰€½ˆ{ÌôJ(O¤ ºBa*}V9Y,ý¸jRöWä‰&šîÒ5 OJžÖ‚ðR!ßSiò Ô¸P|ûl G7çEUy1±I…y/°ª° lXÜüÑ3päÖE :úz ¥ê®Bî¦ì¬.Gµ…Èöˆ"a¿€:UZåFU(€ Aë àO|¼1³ ž‚ À€h(dÑfÑÉë8¦Á4ìÆ®‰›¹°€vÐcëˆDˆ=œM³g‡JÔíí»iK0 È¢ f© :.oºmäâžµ€€@´pZ4ÖF òh!Hç r€xf5%"Ö×ÌE À(@R@ K20˜ do™j•dÆû^Ó…±LíêÇÂ!Gµ‡Ð½æµk˜â,ïe^ƒ¨„\lè G˜ôŠ$@&XIå7bù/ì«­‰Ú-´½ÙŽ¡RSŠ@ñæ=4F® Ú2y¬rh 4Š™ˆÄ"`¯ùˆ$£Ð2\ À+NëÑPÒ`XN¡ « ÑBØXÂ1ø‚dA‰3_ QÄå<¢dÓ`½‰;”Œ$Ÿ Å2]“QÅBàí¶§D£ü™±[+P£!{ú?a»¤}±ùp‡Â$„¦€$YØà"ö?†zIDö@€i5á…ô-S´~¶rÅ—7Ï^/Œ?¤,§È)V“‹L9Âöj«dËkI–Hëà8þ >¥¢šSg÷x€°X–€Äÿ¢ìC ¹S cÄÚ±! <—˜²mູdnNÑÂdâ Píÿ, £ü@­`È× ^úØ/ú÷©{jftK%/mΧ æ¥ï¥‚ïr—Qg¡X®(ê}ye+jfjüÖC+MŸ ©XðxRžØœ¬¬T§Ìô+ÅO¯,šñ™5áI¨Zm™R¡?ÃúO619Y¿x)O™èV*Sæzã5ls9Ø4ò÷¦›œìÛ¬SM„NvmÖ)¦Â';6ëÓa›uŠ•¶¦~rŠ•„fuŽ N›ë¥+IÓ씜9=þ+Ë"s6T!нÌô+W¶Äåut´_])0À=‚úŽêN0 öã5%†;ê×¹j„ÍtîgÕc5&2ÀW¥'a‰¿~r_S~šÁ˜¨,Y‰î‚½ÔÝ…rÊ\#`»—»MõÇ™p‚êãÇÐô+ ‡t,÷W)P¿Ö§¡]!ä/´×̤8a`¯Õ…ƒ;*õ¨xŽËϱZ‡ŠÏey?…y 7•€s÷á`œ«è2á•ÐÆ9ÃӠˆCñ Ì¿Oõ fIöZh² Ê©þ¢‡ðˆáãÂ8ž&°6Ôv°/ÀýÕN†ð;Ûáa{²Ù”è{¶É"Vy´ÃæJl+WlŒâ§Â®”ãÁO…kàÂ0*!…óæ£ˆµL‡›=„ˆ)ÐÆš®¸Ï„ê»p˜_U»!Œ±©½ O_dë}fë½ÜmÍ]ÆÈ¸} sÖ¨'Š<§?³Æ"ªf q+æD*µ()0ºÍ«cb• …yHbWˆGk¤µËÏé¾À°þt0š«iž†ŠD:NgÎ ðºA–É­P\ ÉË ‰‚3þpÔ?ƒºuSC0Ï$ˆ ÿ%€pô„T˜ÙTs@˜ ,±¼¶JHf4¶ÔPÐø/=‹&4&_Éè}WzšñíÞßá˜ãw´7j’<,‰"$Ð’Ñ4# _J’FX³öNF1y, »‚Ø÷Œ„àPÄð̼}Wã± |v&¨^S/Øü“>MyQN xþ Œ‚Ñ“C_©¼v!† ±wÕªDf}„ãxĨÙü:‰D2ý’Dq8(A\«üTD§£ìô¥o©«B•¶¶š½J»¡8ã%(ëèwº—QºM6“çÌ”¼a¥¦®R±à >I<ØÄä=ö¥=±9YX©O™èKŒÔ§ÌõY¦›œìÛ¬SM„NvmÖ)¦Â';6ëÓa›uŠ•¶¦~rŠ•„fuŽ V™Ö8)@bj ¥aÉ:}’a°‰Ä×€êöȜW¹ž…b¯`ñ8 󂓺e't¤6C+ë&á,Ms’Ù8›ªÌÖé‰À]Vä¤ì2¾ÿ™¬“]õèW…&…õšÕMTWÜÝ…OIJаU;ö›«ŸÅÖ èÙÔ÷üWÁŽÝ¦úã̸BÁ}sæ]§_‹~ÓvUöoÁA¸rUäÖÖqZëk8¬šÅ\ÄÌÊ®NXø™zòP½p§ð°óït0âµ@°~êPuç*(cj[°†3µ—gÅ—gÄpƒ‘oHá#"þѾíˆüGз¥IÖDV+ˆSÅ`Nè§ÒÀÚ;PX]c5…Q‘èê¦C?Ës¬ (ôbΰzÒPÈÂ8)𫥸Â0SaCžÀ1u2¥‡Y:ýÛCEN„¼W 0ÄD0W—‰Ÿ ¬´dqà“Ã_¨«í¸Äˆ¼/£ï'µ8éÙí Dލh@ÄŽ¡Æ?쒈ʂ¥B¡^R\*ÈÃCŽ®{Ø`°ë9`À!]^N&,ß¡í`ïÐ÷ºÀ'[¡ˆ ¯ Ð+ @˜‰†þA‰W–܉`MȦM`ŽJ( ‚¿&¦³n…¹a8h˜dÈïqNÐxæÎ™ƒ£Z^† op³40Âïuëø%¢S°›ý ‰ne["»@Îr,`LÔ @v([ Ä4€Gá <ư—Ø€DB±}6d a  p'Gz¦¼&Þ>FÆ÷;·î' u/!´GË3Á(Þ6;¸@6»C+V`ÍÀ;QцËçeNnÈ¢™‚ã‡Hítã)º9³ýÄyIWÖσ•fT†8‹¨˜B0Ë,0@e;£´™Ž¸ ¤#Ö!ƒ24`ß¹]Bø°©’ò!¹#ê3ˆ/†‘¿CÈPH` 0 ¸ Óö Ëð]¡’.qL¸.L}s¢,ð˜"Dã‚ Gå‹I$³–É`ÃjŠë…y`”I'ýZûL Ãä‹ pQT\¨TE`„‰0dfXz…ŠB˜…8—(ô8ÍAátP…í45iÌàB6ÛrŒ–HcÆüÄÇ(ë‹ÿ­CkLˆ“žþÓØ„"s&µD¼¼ÔïB$X"@(˜²màŽy·â$p, €Hp‰ÿôYÍbY:Z³ËT€šË †À0d pIµ)s*QyGÌíúŽì òõ ‹\hŸÎ­ÿ81ÿœ¥ßÃÁ¢$ñjTŠ}í×Kÿ0À9õ* =úR7ÔʯR¶ÔÄí””¬a žý)G]”¨c©”*!Hmº•ŒNBUŠ”öDçe`¥Côñ†ËÔ;5yR¶ÐN°O5ÇÀñvÊSÛ••Š”öDçe`šg²:Ÿ](nΞ”¬`2¬ÍxüO619}©OlNVV*Vç¡X©[ž…b¥=‘9ÙX)XDæe·X¦›œìÛ¬T­µ3ó”T¬ 33¬pLi‰3¬TŒ95”¬9'O²L69ׄÓa›uŠ”ùž„¸Í<ØÄåfýà¥cÀ|’q±‰ÀW$:‘Œª*FÃÝb˜Èrk¥í>«¤ãÀ®”†wÝ÷%õƼb·O½),ð–7×¥²'‰ª‹©0‰–m‰âk†Rိ‚Û´ß\y—X/®|ïø¯ƒ»MõÇ™6 ­5|ü©p‚êáG¼ð*õwi°VóWq7Ý[Í`9àV+PñYÃ!ö?7D¸Íf®çMÚŽÞþ!ô?z^;{ø€\M`ª«-4Yv|G9CÒ©þ£œf?Êx5ªÁ#‘Z£‡cÑè-Ýf°w w·XA`t}TèqF.°½YlÅX¦CŒn‘Ï¥NxÛ‘Æ*t-k6Œ­pa6’› nõú ¦¸£îù0¦Ã¯ºNç |*ï[‹”àÙWYâ ¯Öb'«-¤Ø_¾=òóT=r†b½Vèc/÷úS¦AôDÐfD8¨Jà¤Â®êU‡Ç-åÊÂìÛl‚ßÂz›<&nš¦X:šäÓ²bÎüÿ@„FØÿåµjŽÍMUˆìßÒ{!ÍXŒbɵµÆ ‹MW–—· olØÉ¾žå4 ú~_!!zn_À&å|tÓ¬¶à{4ï|Lºœ;š 4õµA`NDfƒ¹Ä*Ïõ>&¾z §F6}I‘¾­×Mª}7ÉΨ!ä¾7ø`ÄV·†L ¯˜ѹù̸áxBѰ5XŠEÆ{ËÙýªï8•ˆ%Ì#ˆø]kOŠCÁÇ[Kji&¡¤•Ñ:„"E£JÐáE¦TŒeô‡¢1è`˜†±6þðHbÓ¦ à­(E¤wknÒ’Që h Öð@%€F(3±¯ˆpKœä,d“$–IîHIDàG#÷¯j'3Ô‘®<÷?ÚâŠÓsïɧ?›ˆ!2ðÎ;@T,ÎÝÈÆH"‚?·iå‚Dï"×D‹Ê9ž6HøÍw$»þîUfÔ¦‡¬PßôÅK¬ f½ë‰«ˆ­eÌýé:FÈ€¹ /¹²^|COôh72°šëàº9:# âGy%ÚÐS€LLе1”L Ø0éiÌ8Á Wþž¯ ¸˜ÚÿÛ®—þ`ÿ…"Ù/À´€#…ô€ò¥Cðs†ÊQ××½Ô¨~ž0Ù]d2´Ùú •¾‚ÆÏÊ•¿ªÀ¨˜vkó\|l¥oë®SM„u>ºR°€ÌαWY{5Šæ†‚q©'šãàx»e)í‰ÊÊÅJß×\¨ù ÌNÎÊë>𮲠çñ<ØÃAuXÚ˜ä+Ây±‰È{¿+œ¬ßµ+™JÍ%¹R·= ÅJÝÕf¥N“g>«[’k9&4äüÞI<šðšl"s5Âi°‰ÎͺÅHÜú«Š‘¹õW”óc•›÷‚‘£²q±‰Ê¼©À`*¢®»Í1äÖÐW¹ŸUŠs3À®”ƒ ññlŽMté‰À]VäfÈw_´U¦x åI¸K[•¿i¸W+X•¾x=³Û´ß\y–H…‚¨ùŠ-6 «ŽVý¦êçÄ»÷ÖÞ 5zƒpäÕëDy«Ï*ä0äûW#SXX°ñët/¾ V3Ÿ½Ð M` ¬”ËO^Ð ‰ß¥SýY*Ÿê8Úì¢ËÆcàE×Çê8H†cYùG<ÕRGòÐþ•†ÙÄoaž+ 'èíÚGQ"*K | ¦Cq¢Ü™ ür9²õ:×¹ˆ¼”øWÛäZ3N¼*ï“N§Â¯÷~N…}ýbN„ES[qxUtdÄO…VZ2F0žmÛ6ÕhÆ é7°x»íˆx‹D½Å£1‡›JÇ s6Y äÿ³2±™B—CÙÍ`ÃaY-L®!`šÍ´“ÂbÁçÏò‹­þ%ò‰`NÙ¢XJb&$¦™«êhÓxѳÓ…„‹†Ä ‘F !!~{ê†"µh>’D†-o?Å kÜÌn¾h"ÝË4ì½óXÎõ ö2·›wáÆHM7œ¸{µu¼õ€_ðÅíû–âäËÁ½¶sÀ ty¾FÍLÄmÁ 1“H×HͶ ŽA¬S(hų±B `ìIÁmfžöþÌ|%¯ú8o;¼ÿó'ðÜmvÂÓâšOPo¨ÔnZ¯’Œ€µ×›NÄc Ë `GAB]*ÄcÀ 8† ¸KIÙw‘ùéêÉÈAfOàqŠHµ…%Æ-È`D€| ¶AÄ`ˆ´I¢@,&æX ¸Y=Ä#ŒøGbÀ_˜`XˆÚ` Zç¦ÊÝœ‰%pŠþÆHTªÙ;,-¢AûpD ]ãð¨&·aox¸;ʬµÆä3²ÁÑ+%è&†ßwÂ͙М°IÒÍp› Ñ›pô<‡ÿ ºÖËFMÔ+–¡¾Œjû«àÀ K€,› ið,ä)1„Ba¡;"$q$ªgXÄðþO ÑÊà'ýÔ÷éâW]‚&?Œ€ÀSÈ ÏÔPÈhÎÂ9´{ÿ;Iéʶ-„+{yÿŒJ‡éã ”­´´ÝõÔ£®‚Uо²:™qÈR´3<SÚÃAD)G]«¦~0Õz†Bu‚y®>‹¶R·õ×*V9Ÿ])XMÔ}.h »ø¥bxT¬Kè/Ï´7Þ\&´†¦uŠê;kº‰ñÊæ€Ë¿‰ía `žla º¬ æÄð(§›ærÈO619wâ¥o©•ZÊV9Ù·JV9Ù·JVç;++žºØ©O™è{©[œ¬¬T§¶'+7í8Øøûé9¬N°N6>>úWÀe^Å×”ÆC“[A^æ}V)ÌϺ^\n¶&º –'*å8ØÀ`-5Ú‘p–&¹V:“ÕbT¢Ø ñø¬÷5·-5(èß´Ý\ø—pæ¿0–H‚¨xß´Ý\øƒ“U%z2:êw¡Í‚µ¤›M×VÞT—‰ºÊãʽ‰º§SW» ñºÑZ®F§ß¤Ø›…=IÀiÕâk à+ˆð™h™{”Ëܬ´Ñ°cé‡9Ö¨á"gå9qàÖ«G*Ý`·"©”Û2ˆÛ‹s×ȇ¿GnÊŸ´uÔ‚Àõ¡°Â])Ïè°ãÙQŽ»çaàî¡Júo"FÈ…2ç;Aˆ‚,aF£aÍO…]Ôr1e>ˆäl*d×>spM_U†ë«â]']ZúˆØ¾¯v¶w‹SòF2·C¦¨$F$‚%å¼õòo#qŸ’EDOì-Sɦ+G8Ÿœ,s—­"†A€ ³`Ël˜\6’ÆÊ†$\Œ7ç('Žþ•m`«MIoø¯§&Ûñ5mù½’'!ƒ›;ªá††6ÚO+ˆAbf¯¶Y‘Ѱ›ÆÓõ[«ûmP”¿Ûݪ@5(Xâp!DÉ9ãa6ÉÇÄ3½«ïÎ#OSã{·˜Œâا&Åß°Ù)ïbÒÐðDÑБjJ7Ä)§ÍØÝÜøL>#m€&¼´ G¶ÆH<=ƒå2  ‘9 ,h{ûQ”›0ã‘ Hɸ¤’ÜvøE˜Ü'æºÍÃä€ r“È€ †NKîM+IãpRï”@…g Ç’×:¾Ý¤˜YÄDBPƒ"H˜80LuÊÈK)›YбÆû‚™@m̶-w’£ ‚ „"lB ”?³H…æ(ñÙ|®¥žó9°À‡÷9Æý$)æ£ÚÊ´@œ8'AD0Ó1²Bc8 €Ç?^öu03;DÔðV`¼n’ƒu ¤ô.Vr–QÍ( †ECþN¡ò9ì5§ùøKO?PX/Õ—Ë.‘’ Ë’9¡ÈC!$Jʈx©8GÖèÁÈUE¥l4iCÀö¸íl†XÈùþ-bG‡écÃDÐs øa×þK¼ ö\²)΢<§–v änk…(ë©•`¥m©b¥c ÷éHßi{R²äÙW. 33ésCA8Ô[™Þˆ®(jgšê¾”¬OŠ•¾Ò¬TªaÒi°©¿O ­jfÕjê¾—4]üC-NЕ¾ò¬M€}MúxMh94SZÔͪÕÅŸ_WPV˨+eÔVÖs@eßÅ+yX$2ö¥b\ÂÁÑíJÆ'/½§›œ¾öžlbrïÅ<Ø—3®B{SÀî|'5†‚¸WÀeëÃ+Œ…UªâØ «Â¸ÈUZ˜ÈrMxL69×… ÎWYð’œÌø¨ãi ñótÃaxVÄà+’œ# ¦±V– gQÍXê}VjÓAãæêÏR¥V{šÛ–šìÕ«|ñ_˜Ùîk…"Ä×)¼Iâ­*ÌLÌÕ•r»‰´×îÊÌjk¹´×ʹ‰¾¤ƒlMÖ}¨ và kt[ ê%ç9uíÐ<aíÄÖ0i÷…›«7Vn>¢V¬=£„ra袌þûEöÁëÊÐÀŠðTØ”Dêì– b%µœ,ÄDj?ö>©Z°ô·KþZ¾°ò3µ`ö@>E^TÿVvd3e´^ ^yY 0 a&'8ØÓ•ˆÇ¾a–“¹ÈyâÞãúˆ]€3ÚïVM?æªö‰úF À ÈÔ+/›=Óo€܆3 øAmƒ‚<†A$ˆÚCLÈ–D†Üæÿ³G$¹EVÍoãtÿfϳä%üasŒ/ Û 0yR­‰_¹0%À¨!€!5„ªšŠÜ–ñüÔ<€´Ó…`©Ðl 8a´¦d9B$àmB&œDàpá u·æf7ELGRóÎ"H ëÏ·‰C6 xb×Ýæw!”Zq¯G^B»&ÿDzIý•,j¼q™T5 È„)âH¨áðk2‹‰·Y¡Æ4n‰*{ÅR$‰|ÞYÂLI$Ť ˆfˆÂ-}Î|jXÄÛ‰|Z‚£(gã£D.µ¥ƒÃ ÿ„¼Ì>·¯°„4Á¾† ‚!ð{ð€$:ÄW‹1´¸ä2~O¤HL5Ž"”â7ÇÃÈ@Èšëþ‹”­â*ãN!ñËÄKH¹bÏð8¶#·ê+“¡,¡:ÒÇÉoó ¨dž7¿ÌY ا£t¿ÆÇÖhpФAñ̶“(%›í.|¡‘Áõ?<.¡ƒ™©Y¶‚Š•¾Ò¬PÈàúŸž53M°>gC-O®³`94UÖc]«¬ÂºR±< (e›í-=©Tä,ØÔßV&´š*PÈ]3¯…ÛÀ¢…Ûæ *õ*˜t¥SË'•¦U‚i°©¿O ¦Àrh¦4š+ˆrh¨CA+Í\¹ Hzô¹ Hzô¹ HzôœÖ^@¶Êã­—@¶ë€0„Ï¿i&ß*âÈ ýùtÆC’k‘„NuáHÜú«Ê‘‰âœ®H ©-棛)æsºß¬T‹ÏŠŠq¶ë°<Ôse _•r­´ÆêÏR­´¶V{šãõ[X%îºXq3¼è¶Äñûãem |[æx|󲳚à}*ÌHLÕµr³5m\Ÿ”µ}\®D-5:’±_f·A i©!oµš¹ /© 9š³õ¹†Ü&ZOh €–Ìî²6 ×8N¹Â87QD.#öÿ¿ˆõCÐì#r8Åã‘Z¬ÄKoÅi,Dµ °ÀðpÃöjÍ´³CS±~öŒï©,Àٗ⟠þ‘q¼QÃÂ\p·g¿ëv6±N‡ç®DïS!U;"*t+±øbË »db› j­¼)ðyÔ+`î<*º±ªà03!eYù±]¯§˜î!4è‚obZ„,B Až´3}Ølôô¯árV'Ú#d<{þ%×Ú%7"fNeL'N…f§MWêž3×½¯_ٮʙ~pVsvüÃæQýE #ð´œÏ`±(2è‹ç² I¬²p$Ç#%° 6Ùc'@/=oÁb(Zt™ì˜Î8Y‹¼&v3Á ÌÞÛYù@.i¨ŽÁ™£söÞdñÔÙª '­d4…J]þöá6ØJx`ì^6Ø~Bô Í·Ëû’±ÃêÆQ^îʺ —F?´â-[˜QDÀK ×9‹ìÖ`¥(€²¹Í5vBƒ[G£ ‹²Æ*lX¢¶.ð‚ØT#˜ < `ÄRè( ` !$›5kt²À½wxæ[sRQØÁØo  8*yÒ0¾sŒL pW€"{Þö'Tì…Œ‡‚ Û®¸ìÞ«Ø` ,ô›L7 ˜'F¸åÛÌð䄨 ˜·“Wk Æ-ƒµ†TQH‹·Y~‰ìî©÷8êú‡ùUü*¹žY µŸ²A€ í–2V3>‚•¸;kI((½ÏÃzV?¿èËx^µØ3ÀáØ~èò,‚mOà›@Ml€ÀDr  ìŸù”L43MÂ:k›þùoñèÊÐjgš3mp¤o´½¦¶}OÈ. 33é ¶‚¸RŽº V*VO©— ìÕŒ… OÏ(e N’ëu+'Ôʰu+É¢º€ï¤.@ÈAë+À¢žlbtûåJ¦ €8CXïí]`}:ºÀ ½l¥b[AuX…ÛÀ¢žlOÏ*SÛ ´ö¥nzër†[úéJ¦!€À Ír˜ÒgùŠcH IŸæ) 1&˜¦4€Ä™þb˜Ò™þb˜Ðrh®Í? F9×…+œìۤƃš}“M„Nu»)ÄõÒq±ð*«‹`2¯ àJªhGU jkŒá–U•À”f­½AÉ®¬R¦'*åZh<|ÝYêMøzV€ð¬õ&ü=)E°ãñYÚfn®JÐÄ×JA´ÈU2³šñú¶ÄñûãdþsV”6ˆ…ƒºŸ—be`«+;S`«ˆóW«ÂÒ€ÂjÉ 6ír%‡>÷@m\f'ìS­=úMÆ´X\Ÿi—¹DdÄnü¦ÞQuÆÀÖ¨€˜#ý ÛŽp;þ \G#™î™±±­°L¼5içÊ a Çb³C»Ñõ¦ËÉ[¥õ’aX‹3 =# ñŸ±lsáØÆcE:ÖÌ[$–ª‘‘¶ÂÖ—YcZ(ˆõmŠxQ¨ç¡Æß™Û0Fàqàå#) 06÷hPcz©½¬D_eY„ÚQçœá‘$3ylú ùÍ3&]É €A1x‰1õ4_e4D SŸó¸ÀËø˜æQ¹kšíYX'Ÿ¡V-±É¢·ìW>'G3~¸ ‹~{7P3#Xúžtl‹öÞõGŒp¬p›Úå‡Á£¡Ã¸,‚DrLfk„¾@æØ. Á€Iwék A$³’ q…­E<›,0 `M‚Ä‹Aá5"H ˆ”¯¼XVmö’ÎmÃ&™î3ï—µX (,—X S8Q'qJa‚S! B,#° Ï =Æ#„‚|£ ˈ d*ôA`Ò—hG÷r,á0.Çž'Þ*CÒ´Y<ïfÿÛó­vwÿþOø,¾Ï=¶µ>`.þo"º¶-)š[¢ãÌ'Hŧ Œä`™´`ɇˆAÐ@Á€ã G%'D†xÌ0¹€%˹&e7meíÌØ'F1¡|[&…Ê0›%€g†™“aM ¡bH9n†4v­Ú%_Âí ¶׵ÐÞ3+©^"ìÛRœÀ9ˆ46| ½02‡¶™A…?¯0¼L#~k‰F•07z›“c„T@ȱ€’KC2Ž]þ"I}èèJ{¨Ê´:Ë@âgv‘F8Á)h š r=åÊž„2†'£áJ¦)Tä2ļ¬úÜ©—ÓòY§À¢¥cm<7O6'E9©m*y »![&4€ªša°­K%#s['5< (0”NíÓ €äÑR²&¸Én™l5ÙHÄå\¡¶è ËÊ”/‰¨åsæ­¬ü©)BÓ\!JÁ\£NÓ¥;Mpžk…nSÑh~~'"e`¿çœ§ht«S·¿T]‰•˜üN`*JÀ ϺÉ3‰©Øamn…ÁY v–ª½cšdØ7+ ŸxçÒ~¢&f6Dm>Ÿ¸w÷ñ^ â<ônD\i¼-Åb´2‘­1S Æû oj ,9VË KFUºý¬8ðËG–ÀÞ.§Ÿ˜Œ/'Ãæ# Å ðüõãp¦Ãöç¾ãh„B™ ©ÚQS¡}{°ˆÍN…cѱL†þåW>Ê­¯M¶´Ï[Èiн«Í„æÃ÷Ý8’¹_ÞMH§ä¾ÀæùÇÊx;1#ÃVéÙÉRÉÊÂ'pRku,?-ÎéÐ%;f‰;f˜ iãI§ OU’øŽÍaŠ™Íø áS`ök>=ÇÎ[Ž5õ‰àn›xß_fL¤¦ÆúùªB1® <{j¡ Ÿj´„ŒØæ+ñ°“ê§1ž;Å”ÏpL>kKõ{fMÊ|eæ6È Œ‚Ñ“C_¨aì9·CŒÈìz †/#HÞ0@ˆ6‰‰ì´€„CлÌÿ€Î ì2,+r /'?³He$qš¨›ö¾ãÁún_Uœ8mR«A;\`d@Œlè1ÆyFC ÆÒø@„¢À „ìJp@v ƒ’É«X Þ÷€å –îÚ'a4 ‚/Eæ43CKdÁæ@×Hx– r7e ”úÑ¿´hªEäð–"ý¯Û,2B$à´\A„˜X Æ D¼Ä4Á…]4&S5—m PEUY‰¿ÇßÓŒ“œoÌ.B¶6ßù}°ˆFâ!$àw‰Ž‘¹¹ýEþ)§µyBz‰%{ð| Ý´~-<_•q©8Àõj†hÉ €§˜Ù2ongýhö¶‚ú«ñú2GËH@pÁžÔ !X>°hÁNÓÈGÿ¥ °š(KJ,¶ ã­e«¤ƒ(]$D€*é Ê$WIØ[ ¸\¯3€UòAÀï »![ ÎWÉh9¿Ê‘€}e’•»®”ŒKéù,ÐrXUI·SRÑ×÷Âc¢+4ã^|TP[`€ªš52©Ã$ÚK ÍH¸yýŠÜ>*92‚¾«kL_T¡©®ÛtTÕ•¦u‚”,´Õõ$öB™=+ÿ¡ÓÝx›‘2°_óÎSr&V þyÊn`*IÈ 8L@DšÑ û FBØø÷á ƒ'Úʃ¬Ü}M¼ñé6óÇ¥›¨žªÔoêú¸w÷ñ^†ÄW˜¨Žk(©±ûÞêàh~ö¦Að3ÒkbÑáP‚¢Ãö®*f£,òǺÄaYO‡ÌFŠáó´P› »#a³ÌÖúã ï¿52R:…]a`. ™ }Ùo§e2Ëî‘ÈÞ§z¯¯¢l/‰ªÅ:µÛ9ŠŸ û©ŒÊzKû¼7T [aú10âIéÙ´Îcƒó‘lñÀ)ÆÀíênØ™›«¢–^Oª¸'0ó€ÃÎNóãóæ…ÙɺìÙ›3Õ[2e1Ž= J™÷ó{šÆ¡!O©ˆ‚cÍU¦b`xÙU”›5M•„:;¿ÅåOìjÏ•27Û¦"᡽0ùŽÐòå0øˆÁ6§h¾­AfÇ&¨Ú‚ŒÀÝk˜BÐî2¨á÷{+ÀϤ:Ûãq;_Ú‘xÒ_‘7Vu¶%°H@@j–åqˆÆ“€x‡2Š8SZ/Ae“ 0’}ÆXiG9ÉW!`¸€'tXrƒ!¯XÌ™)Ѱýû)ãƒeǨÞ0u‚Àͤ÷ µ@ˆ€›f8ßð¢ÓDlpE·LçË ?ûh|¡ݲ»YVêvtî#ÖdЈ\77 V\ð„\a°—ÞBTÞö¼¡Œ|{êÔ11¾Ùüó“ (ÛU Qt°,Ù™ÎÜ/WŒ®âªxãëDg~ üA$Iÿ#V¼ƒb™€Î}_DÕ ¦à0B¡;Þ‘€ ²æ,€àó&/s™‹ÈCý”¹¿ºãÀÿ|hÊ !3# ¢a&ô¥ÌüéJ3裃›ÉÛõBŽŽ\¡±óíþVR·ˆ«ŒcœJÒ?Èþ„~!-Lv- ¶nh®§y†Èe‰àQA-Lv2À>¦ŠØ *Hy 6÷D2ľ߅¢`vlÈZ!}H¸~¡–o ü(e™;~2ÈÿPËÉ¢…´V˨+d<+tÔŸË"wýC,ŸSúP¶ƒ“Eh­]€² °¶AÉ*t©m(¡}HØQC(bz>ËSë¤2”ŸÖ±e)?­bÊRZÄ!”¤þµˆC)Iýk†[žºC-ýt†X—ÛÛ!–O¿§!–ç®Ëñ»èSÅ:Ôµo àV0ØM+w]'À¢œð0¾l‚ÛTÔtMfvP1'Šs’½€0¬”|Md7C3t”55ÛteåJ¼× €ÔsVÖ™e÷Ò”Ìë( Ö)Ì…2z&^Oª½=+1NDËÍV`0N@YÂb$ò­Lp»ß„ÈCŠÉŽ~¿P#!ÐN´÷égÁ–'ÚÀò°¹>Ñ V¢v1àÖ¨6†œeûÊ'dj®A¹Ž]zez5å_n+â¾Ð‹3¬ŠÞ°Øj¬S¡˜õY)ôEÇ’¢Ñò®*|>b0¼PŸ˜Œ/'Ã×áã…6Ö¢ËÅòAŒ*Ídûªm#>û" mS!Ç]^âÕÖ¾Ë-ç2Ûo‚›¯Ç`U.Nº. |/ï+ìašr{{°žS¢c¼äžP XS߆fÀW Žža‰¯kc’}TØ)ñû€ÂóF|zÐ\¦Œ#õÉ•êdj¤5*ly¬ØZ¦F¬¨Æó)ñ²¯«ä1+žÆbP¢Õë^^27̵Jˆ §öçuNà¦f·‰Î7[‚mó[ã_ —Í« îú¨xÎïÔ1pä½ÇáI‘ €[{;=:0q¬ o«íØq4yŠ,‰=ÈÉíûÝpKaóJ À?‡¢·Ô(eë]ƒýçôu­¤$§ ìpø„NAH4\Œd‰`˜KR€'I8˜1$ˆH(aÚUô¸oªŽ Á ÁÚBã< a ÃEÉ…·cüaŸGQYŒéûœÔ¤p LÑb –?ûUJ, è‹—TÙ¹=²ºÄà›ÔËÏgû”˜ Ð…ÄW” I.'•ÖÛ’ CΑTu–ÞöŠÊ›ÞÖ’B6Ѷ«b^ áæj­´Ù¢ƒ®ÓñŲ ÿ!ƒ3ð0#ŽQû·ÐI¯èe™;}e‘;ü(e—&>Ðî²€­¾¤ýC,ßo†Y“·àC,‰ßô †ƒ˜ »+d©·Bí ž2ÍöüC,I;~!”/>„2ÈÿB` ßõ ²}ÿPÃ@l‚áp¼ › €õá@VÈ2‰UÒAvVÈ&Âà=xAp¸^]€²Ð[ }Hµ' ¯@l´Ó –ãW”=½tÛÅ: âXV¡r Z:l—ÇéAÛ¿A%«WA„+'RÌÕ–3: ©)Bèš8¡¶ø Ï”.Ÿ{”6è*­R¦¸Á[X%X!ƒÚe—ßI¦™ÖT€7òSºpà'é9€äá ci‚µ;{@Œ¥Â'ý~  BñÛßÄfôÉ…ÃdÄȈ¼n–uá°cé¹ò‰ÀÕŸˆ D*\Ä\gõMmA® šÚŠð§°…¢¿_ˆXXmÖÐS¡{‹ñ”V¥Ç£]…qøn8Vs ÝGnøUÇa£2vcœd¦z¿£n7©õ„r‘Â0SüUÏÄTÚÁ½±¸©Õæ¤oS¡}‚‡I6Ïiu¥ê|/ÖÝ­äÁ‚qặ ¦ÂÿìsC2 .ú<ð†Ã8_u‚y§Õ°2¬F 2I©?Ùà˽CŠù ½Nç¬&u*dj¤5*ly¬Ÿ`¦Æ¾~¹‚=ÏžnWêK˜_: ØJniר^"Ð1ç-ºÉØÉ—íù&}¯)·¸öïІ)§ÍÄ]îtÃä)‹ÀK°¿Ô3mb/΢†æ8¿`Á }è<%0lŸ6&d1«Œxÿm6mBÞÖ肀̯뤱±*iª­™’Z퀠‹¨²:O°vºó]Hé „†€ˆ7+8¤.løg,W%cÛ^?f†&>gÏdâ €À B…XPXa…í(Mó‡”B-)”Yk«5¸S$vWøe³Â_ýH©"˜‚gÃ+ÄÞñHvNî!É3–Y [-¢¢‹p+ÃXÂÖøð¸„,@%fhãÂ5KÈù+Ý %¥çƈa8F­ìA„äýÂÆ¨nm¥±´VȘ@03OǶ¹YÈ(ïÃØIùp‰ŠÿêÿÍp˵]IŒcÒOÀÍgÆÕöDº„-ÏÀ´«`D¸½=ø“€vxJÖgþ‹ôó´LP\ÈJˆˆ;–xO4‡å.òsõd¼Uóö°~ÿô‘ܘè÷ dðßþÿþÈÏÄPKSפ2Ë“hlÈ?žÄgÀ´ÔŸË'ßõÄþj†ËZ¡–| (;>мü!³ ¬$ Ý ³}¿Ë2vüe€'Ô2Éõ?¥ Ùð Ñ ³}¿ËN߈e©<üC,;þ¡–O©ý([@Ç8}@Ú+dÀ+Dap¼ ºÒ­PËû~!–$¿Ë2vüC,I;~!‰Ô? ‡Èúðò'oÄ2Ì¿Ëû~!–o·âCGÂb_ix]±/·âKiN‚x+tÀ0­ÐsN‡ƒ÷䄨—ÒßRÚ[X!™Ò¸@Ä`9—1A!ys—àC3¥p¢p}PC3 ÍÔap¯¨`÷¨ÀX'X”6è*­R†ý¡‹Ø%ŸÏHm¾*ðššdÀDö¤XÕŠ@Šb=”Æv”ÔLìÁ;.OÊÅ` "q<}@<BùÐ{ý@oá‰'DÆã±D0h› ‘; ç^‘¼+éÊ8[õʶW¡÷û©+ùØj·Wð6 o%>´_\ù½ÐÝ…OÄÞEø÷ÌÖç{©1T»OYáÄYM:êŽc‘±™ú#Ñó²™êîÄŽ)ðjë‘jŸ Ç/pSaùãã…:Øþd8÷>óI𿮀ëÂúÊÜf`Ï:3Ð(0YwÃà'ÄÚ`D "pl©¹60QJ [¬›ÏdèÛZÜ$-’›¨>lØáïAvñ‚™gtªm6 ú¦ÒÙê¾ZرªÚÆ"tFõ}E6ñåëÛZêfí´!f(QŽqÔ½!Âeî5¸Ç” ù޾“NìgVHcV=‚‡¨>Ê.„._wŒnß$å~¡ÁºÑ@4ŠH'?³he$qš¨Š21s ²5JäP€neZ˜]ƒ8EH@|›žŽOÏÙÄ ca2ÀÊ’H@Ç–^Í4±T{t äœgUe¨NÕ°ÆÑ>e# ¦â ‘Ö§ÃVYpÁg®vÑǺ‘g)°ƒdp3ˆ:µa\àŒL 23*þ _±¾‚4¡,Î}d™öG? g{:X!MŸŸ³;ø›Ä;¶HÐN<Ú!+Ø Rç‹,˜bx…!C5‚ZdãYË(Aðß4ÁÃiäØ P€A«a,N(‹ÎËm™ÉÑŽc£ ‰^÷„7YBþ+‚Da¶:ÅÂ!Z¸s·D*Á¶ÎÕËXl ÿaÿÿ£Ø)8ï{Úéâ­[~¹l,;ˆÙ³«(Óÿö\¢k•G89Ýt)Ç]Ì a“naüóaj¶0 b-€q•ù7?Q–ßÉd’½†éA?ÈŸ †ËX Ù œÈØGÚ fO]!–Dïú‡€l‡g·C,øPKS×­PË"wýA$ìÖß(b(Â>ÐËN߈e©<üC,ŸÔ<¹üŠ HVlƒG Vèy[¡–o·â±‘ò‡ÃrßP6€ ÙÛ9@@ú+t>ú„ÃV½2ÍöüC,ÉÛñ†­K{(e l0æ|¡àHÀpô´VÈ@l´VÈÀpô…šÃï(e€}`þJÐ[ m² BCšt2É÷ýCróèøC+\¾Óðõ-[¡™Ò¸Aƒk/hx¸>ÐvïâKV®‚9­vïâKVè"¼ºbOÏhb.à÷¢=æ¹t @¸>¿¥ÐÁï•T”¡iaÒ X:Båîó]!·j«P°{O„,ÓâºM32ʪjØéï×âz&C”'ɹ“±0”@ÎúöÈÇ:òé€ú ,ÚÜ;ûø‰ ŽÂ#d05í9óùÂfq±Lâ6Žë5ð=ì)°l.7åR*t3o"³µN¶ÿc+T燻ñ{}Êd*ѬÇS7ž€ôx½N‡rõâÕ: ]x3SkÖvÄj› àÝÁ±Na°ûN“5¦p/S¡^=ÌÁO…õ|ei60NI}]°&*…n< “€1A°Öw™'þ)ú83ÌÌʼnIl«™A:8Ö[ÜÁOxF­²®ëI–UÜBm­®0OÍ2*þo dkˆŸ)>™¶çe +­Ätê}ák­]aáIЈæ°BH¾ À@BǾ㻟HsÃW`Š쯥ø@]2 C½¹¨Ç žÑCµ0,ô6¥Íç`$øËúbÆãÚ‘*5œlX†w¥‹§70x±^€P«P€1…þ½þ ‡°”kðÜD_;~°à€. 1 öƒ=pŸ`ÂÞ:¦ï§=?.)_-ÿ¡-…}»oá7ùcräpš˜¶ØM“aâ“¥I ôš³µ%¶ !°nm@Haô¸>jX_}ÖÏ)’2Ñ¥1FIŠm9‰ÊØ¡RJëLå,5VpøtÙX˜]÷”}PBtaY?¯OŽyYæé:mxâd΀¼sجlD`$Á"ŽîŠ>+«±Ÿ 1Í··|÷Ô⩇”b¼U„´àÿÁÇIõå²×~S`§!¦oþNŽy=9_ÌP0 ÿÄIb jŽF#ü|Ÿˆe™;~!–ÿPðçò(l²·CFö†X’|úC,‰ßõ ²rßPX0XÌðËOŸhe«vö‡€l‚``(y VèeH1C,I;~+:ö†XwýA\9%ê@­ÐòÇ´2Õ³zC,ÉÛñ‘óéY×´2À¿êdûþ¡–­ÛÚ—Oø+tø+t©·@ú+t©·@ú+t©·A¢XŠí7‹r¦ÞÛ—+=WµóÀÝMºò_}©—yÅALù6ðnS*ˆ06µÊt(zÔ±š™×[=±)°¾²l$pSáǘn“aX°å:Šp/N¼/¬Oàƒ•>Ô<Á¢T/«öð‚û@r„4Oã=NÁ‹2™¼ÄIC1¶«ÌÄÈÕYÛ6/­_AÀiâjÔ®*nk¾é‹ Ú/8X§7+à’é—Ím€šÀ n2B ÄшÓÖ(H1µ6C‰xÜ…˜CîÉ_VjŽà¢Nß‹\ý2Q32yþÄ·\Ø|Ò‚pðìÈäÁ@"T‰SÑNœín¶A(~ŒVt¯ró»3–ÄÒÞ'”`‘#Q$”79È{òØj¦»aÖ¸Nq`Zð×xP“!˜/9«ÐDÑb-¼¡³ó}bHM¦"½“Îæ®ïè´%FÌ<3à“ñ¯ëb€HŒÄNVN 4&-hÆ™1ì!«ÔW↦Kƒé 0ÀAÁ¥xúa—¤@Ù¢{ò„¸`Ì"­­:Ô!¬¿(!¹cŒat‹!í}]Æèêm¹ã‡H“J0ü( VÆÐ(iþÊúmd­äúXëþ4ž”‘6€Ÿ>‘Ùp†ÇÂlNÎAÒ(‰Òèœz–_ï÷áÍôPË.M6ZÀVÈy[¡–$‡°†X|ûC*EŠ HVl†8n£j@ƒÁ<€‡€l‚``,‡’n¬Ò †X’vüVuí ²}ÿUœ m²s†C,ßoÄ>GÏ¥g^ÐË"wýC-[·µg'HxVÈ@l‚x0ò¬ÒÄ&´ è¡–o·âb_oÄ2Ä“·âfN߈e™;~!–%öüC,ßoÄ2ÕãÒîíò'oÄ2ľ߈$öú ž%«ukNÐ6«d2À?Pù$u¢fûQ@ã3éNMT\sY”ŸˆbN ¿â 5í ΕÂ…Ñ9ÏÊ+„šÍ ΕÂhbƒªb÷Jªh`÷ʪHX=ñÒÊÅ LMT] LMT] M2©è›$€$°@<›ÑWú@*ÍL;KU^µµôËlœ³¯Ž"ªÔNÈñ[¢,#Bˆ™CÇÄlˆ#1SV£oUÄ­FÞ½QžD­eJSÃ^ƹüSÍ¢c Ü/‰» ÍMç}v§¾±ØŠÒj{ëÑÚŸQôG»”Ø~[;A•Ù©Ÿ.éoNÙ„ìxLÙr,ù ˜ßËDø1¼e•zCܹæ(ÄB˜€”oÃ]‘&Nk‚û(þÊŒ þÊ\j0©“å¥<"¡Á†ƒ—*C—˜#ð·´q8CHO”PAh)È?úD˜ö…ål ³ñ@ƒÿ$󥜀˜è|¡²B²BíH1A-IäzC,ŸÔ0È[ ²N@¬Ë' õ ±$ì=…g^ÐCAË”1À+uf–!–$¿whe“ïú¬äéh­•¦Ã´©·]Ý¡–Ÿ>ÐË'ßõYÉÒVÈðVÊÖ wÄåê@­ÐòǵÝÚîíwv†XwýC,‰ßõ ²'Ô2ÈÿPË"wýCäwk»µg'He€}ÿPð'wö»»C¸¾ÇÐQS)5QS“UÃÐ.î]‘òBbKxCpmÿváü¡„¦wCHl‚Ù IÁ·üC¼ù>”ç*ð†_Úúí Ε cZ2 >öÈuP@änP9”7Éäø“?IÀŸ¯áÈ™y@/àÍài}'XzöŽ×Û&"a‘Ì"bQóõ Ñâ E1+Eßc´7w)·ÄîBqÁÖ5’kÂá®-^P¬3´· £n¡çaé0,³í²„ìþЄܔ2=ƒÏ¶ÒC¡Ä’78É‚ W,@P¹zô|ñ¤{i¨ÿYpâ$× Ï2$¸$Á´d1¶–ÍÉÅ^8´³ØL ¢’@šrHfÐ{8ÉÛ$Ày‰Ö¬ƒ7€bÅŽ óÒô$šó˜`r&54nYò®9D6c?D°‘øÍÂÿ±cÉž½°ªF÷ ùlN]´j,1y€ñv¶ÞË ¿P(»X -ÀåïêD ²5ÆH<¯m]œdxfLõÚ x&mûm¹‹ ƒxwg“[ù`Aœ"ݽE2!"ð1žÛ£àóï!¡ ïÛø1¹ëgÛºŒP"þeÒã¸ÿÙ¡ÄûZ*°€À0ÎÒµ6À)Øþô­æíN‡ð}Ñ`H‡ÉËý$eï)WÜz–_ï÷á÷gø‚Oy;aXÁü‘Ú³“–AdØY¡Žd Ý ³}€ô»»C,‰Üú*ÎN°³!–dì=…ÝÚ` Üú*ÎNà l­iÚÔ[«9:Qµ R •g'Ha¶P>«Zvõ VêÎN•œ+4± ³}¿ËVííYÉÒ³“¥g'JÎN•œ+9:Vrt¬äéYÉÒ à¶@ÚñéYÉÒ³K;¹¨÷pIVrt¥'ò­é\+4±°ô¨õx$©IƼ©ôì íËøR“UÀ#²”çé F¦A IjÝq~v†âÛ~¡€_ßêŒ:C¸sN†gJá þ¨¡ƒß^ÐÁïêŠHb÷@g^P@½Ð è™X/ùüÆB¤€Cúˆ þéñD„÷DvC@þ¦"%â«a¯¿ªØkïßêq®,Vv‰cû¶lª|Ö©ÄW0 nã±e5Éçkb3»^ðWc˜˜«Zå>‡×²¦ÔD­´l¦Ô ­°î§V^Šu?è„- ek çz­Øçú™+{ÀIŽÁM…ôñË M©÷§«mfL…V€DÅ\¦õ“ÄЈ„;XòŸßYNà1Exßÿ‚ÁtíwXl‹B¾ÂÂ8·lƒNïÄ!çrÎÖ½v„0däC”œÏ²‚Ìœp÷ûü"ßödÉ 8‡öhU~pP`R1÷–ÖüL‡JâåãL€\MB&ç l…›É‡JN3¦(Î8¨Õ(Û°ÓŽ'²h˜D ñõîHNŒc–·Æy@ñFÙÔy„%̶#sÖa3‹ÖÆ6ñ QîÏK8ÁŽçKœ û¨Bö“ `Ñ\§%«ÍBl ë0h7…‡ßê"$v ?Jžd0CGˆ…è7Ä9¯æí tq¶Ç»ç~À¼¾°ûacäÒQøÙì‹jQŠ~÷2&ʽ ¿Ã¨¬~kWrWYtG)Nˆò–¥oö§…B÷£Ÿu…‡«R_ÖŠEZ‰€º'oÕ.‰˜ß;G¢¥@:ßm'éÿéaFÐÿ ΖrJ`#¯€} –ž~«9:ô‚``*ÎN½¡–dì=…ÝÚm[T àçñ@úv¦Ÿ »´2É÷#Ú³“¤ 1~­;SƒƒÕg'He™;awv¤(U­;Q/nÕœ{Vrt¬äé ³'oÅÝÚîíYÉÒ³“¤<ñéh­3à­àP@#€eAðVÈ@l¬ÒÅkNÕ­;S“Uf–+9:]ܺÔNÄ•g'JÖ©ÎUáNrì)²t‚OokNÔÙ:Rœú s—aD3v§9W„Ÿcè)ɪ‚•‹ùA* rp¯ SyRªÔ H\À ƒ r!¶ø «ÂÈ䤜1¦þA™ÃÏÊ‚³x¦ ‚$°xðÓ½{D1ü3+®öˆx7"õ0p2ôšÈÓ)ÃQÒxæ¬ú­¬05ŠÜÌW†W6Ägu_‚iöj}D{ö¦0Æ[Žøe6¡a²EM×âzðøgÝò1ÁÔú·–1ªd*ëšcP¦W…N®ìj2ÎY§Õ^CÜ-ãv;p°á½ØíY¶x.S¢ ûÄøÕ è¾5ìã2œ±¥„ ÈHÔJc®5Û¦ ¼ñqåêÔ ..%›'u¬™ƒ\j(ÒÀ»…Žfõ؉øM,þhÉs;ûw?}a/ÃûäÔq}œxpØÖ"¨ˆ²Áß6ƒ=‹Z²QH(Âp¦D¨sA(¬“, ‚3âI$’LL’‹-´÷¤ÐÂm:ÚÍÌâŃ_\]†Z‚Ôò7ÆÒ„‚µ§jÖ®Óv¤ÍÚµ§hµÃÐRfíZÓµÎK«Zv¡Ñä¥&ª(|9SäÀœ[oÕ+_%†A ŒÂ‘Ÿˆ r3@ägüÀ ÌéUbšƒQþ‰ŸŠ¬©˜‰]w¿á¨‰Z.øÆ6"Áü*`)ç¼?Ô6ïU†¾­Á⣓©€f3ºÏŽšÇZžeN„üí[ Æv|µÊm@ú2Ý0ó1ìJõ>'¡Å”øWÑcئëúÛÔÝq¾MÆ¢jtN•;/ä³ÜƒV9[ySØ_YÞlÊv ‡/dç$=OÑ&Š4cO ä°"„‡R.èaÚ8!xÀ‘,½Xð•>?\XP‰Tàïö]ñ±íA´cò=•&¤A Vf&?~h4lJ6K¼‘HGôÔ¢]U†4Ñ LÀc ÷\þzâô7s\ó¶[}ˆn{ÍËO—²æˆÁâWlrGx†…§-ƒXž`‚lN,4qÑåFlÕ ü CHŒZ²B(†^L?‚žƒ‡G˜ðÐ&ÃÜ ­¹ø»ÿK¥Þú/P‚»˜ˆq®dgâ*A‘ò6u888ýQ6g€ îí@ÙH*ÎN”§hc {ò¬äé õ#€¬äéK ®­;Sê+•g'JÍ Ë»µÝÚ±‘ò¥ÓÀ«Zv¬äëÚ³“¥g'JÆg€»»]Ý®î×wj]< µ§jÖ«Zv­iÚµ§jÖ«Zv­iÚµ§jÖ«Zv­iÚœåU‚³“¥g€ô»»^NÔ§>‚µ§jÖ«9:RfíJs®Ôç.“7jÖ©²t­iÚà7jSŸATÑNrì)N} È)†cÊ•¯‚‡`~»C°?]©ò3}£ü’9yþËÝæºþ@&:Óߥ›¨Ç/刉Z.ùã) c—¤6ïUbhñ]¡‹ßxC ÅN‰V!ð*f?"§cÕxO>1Û¿x)ÇQÝd§T©n¦_•¢[‰)¾­Ü{Së‹´ü*7¸ð¦×Ôýnø°SãxgÆ*d+Lx¸§Bª&Q!M­;¡PòC‡–Zw”ðµ?òAlww~«—CßB¸`€&IrH àycÛZ‡â ßìâ‚Ëç]{¿«ÿßðÀbk|í9¤4wŒwTp6þ= »siX,³' ?vÀ‘é‰ÐÚw!M‹Ï2†‰amLÄsX Ñ@š³¸!ÚÄ0­I²ô  lÓÈtúÀñŒCM2™&â^‹£4šgù—dê‚/•ÂÆ•ä÷ßð?è»Àn÷ ´Üø8æI­ÓƒIДØÐ0‹¼Æ éµÔܱ¶ŽZÒÿ.V¾ ±‘ò§×ÉYÉÒîíXÀ-Ú³“¥.”D‹Ûµg'JÍ ÊA‘ò¬äéZÓµkNÕœ+9:S Ï…ÝÚîíH2>TºxkNÕœ+9:Vrt¬fy »µÝÚîíwv¥ª'ÓµkNÕ­;V´íZÓµkNÕ­;V´íN!ëukNÕ­;V´íDtô¬äéM“¥ÝÚ³“¥)μ+Zv­iÚ)bÎ¥&nÕ­;SéØRfíZÓµ6N•­;VqèJSŸATÑNrì)N} ÈxRµðWùÚœåØSœ» ֡خЉÿâRq¯?À0o¿ð– €0þ‡"'çù`àdÃlˆ˜9C ŠÀ¡pE£ÈC#¡ªšœ/+4¶·ÝLÀñøÅNÜem`§a‘õÒ¶†UyS/Þ"™Lõh–ã…;#êÄ5 ÈSks‘â l/ß3›ùî4¥çI÷LÛ•>¾ÍÉÉL…Mµ™é:2qô-ótŒe=L¢ÒOVφNA¾Ì*ÓÑ#â¬.oªÈ¨ù6üÛ~³‚ƒ]rL«ä.-4<%Ÿñ%´ºkƒ tÁENb“cË´ÍŠ2 (9Gº2"Ø ž}¹ жªÔÆ-'žr¶ßÔ!g²ùÏØ´ .n£ó”ºsqxD‚€ŠÐ(©_±ƒ¿ðf’{í aâüÑ©>6å@øv|Ò‰ AÆ0ÃÚ|úGe ?ÂlNÎí%PQ6Ïø·é¨¹ÆHëÿæï?ŸˆÌ­|+9:Vrt¦Ÿ »µ R$g'JÖ©õò*ÎN”Ã3áH2>Uœ+Zv­iÚ³“¥g'Ja™ð»»]Ý©GÊ—O­iÚ8¶¿â³“¥g'JÎN‘KGWwk»µÝÚ³“¥g'HùÖèŸP n‰ß n‰ß n‰ß n‰õÖè¹w…g'JÖ«Zv‰Î?jÎN‘Kpý.îדµ0V´íNrì)Î]…6N•œ;Úµ§kÁÒ( oÚ8‘ƒíú¢Ô8,­iÚðxJs¯ ¦Šs—aJsè)CÂ& Ûx.oÞ”ç.œåØV´íNrì)†cÏñÍù×ô ÒªÏêx8˜žURþÁŒÿb÷×ÝPÈèj¦†/|꤅‹ßåNxC¸×,¢x}P;àkt ]íq89åw IÎGhÊŒÜ)ÛvX†ÕÂA§à•7É…ZO¿©SÒSáÄ¿)tÚÒù0ÔÍL…õ©…ì&ïC>|‡³~q½ 6Ü8)Áȃìq½x°´ñ31ÂÀ³¤X»õ±Äèù¸ômøÿ²¤X×Bp¹óÙB耉f¸ dõóÄ£KY‘¢cÆŠ DžòÕ!ÑdÉ&$—€vöµ‚ÆxšÞNÁ E㈃Ë'âM¨ÌÀÎEóö P Ik¢9KþOR1««>Å¡À‘³€–3—M¿ÐûDo¢ÃAË’€›¦hw¬°q` ?»{Qg‡ŽÈ ‚ÑjDKÏþ–Ac Õ`_øWnõ뜻 lƒÈVrt»»]Ý«9:RƒƒŸÅkNÔúùg'Ja™ð¤*ÎN•­;V´íYÉÒ³“¥ R ÝÚîíwv¥ÐpêÖ«ZvŽ9keg'JÎN•œ#–ÛÚ9`Hßõwv¬äéYÉÒ³“¥g'JÎN•œ+9:Vrt¬äé´xô‰õ[¨©‚³“¤{ƒl=…ÝÚ>M¹ôUšX¥"ª r*¢¬ÒÅf–#mDnHRœý)ȼ¢éÃyRœý)ôôŠÝNr¯(ÛQ’­;G»¢¹‡Þ‘ÀŒ_Å"­Sf V¾ =Á»éO˜G0}¿Qî ßH@ŒÇð{ wßôJ×Ïõƒ6®?€bqŠF¼èˆpEè#·Ä0{¿Èé\¡‰Ç¨` Ýþ íß„.øŽGàBïˆäPC<Ÿiñåám·ò‚z¾©Ø=—G§V ^§V<‚Tß'il|ó§ÙýSáœst›ÇȹÓU>©…˜¨YoX_k;•óv²  Á}ÎT£0fÇ_ŸÕMù'ŸBnQù QuTèwñÁ{ÑLH3˜x~G-E¤ˆZSgøE»“ÜÄ@+$Ï4Iº&·.R4à­àUÔDDúÑc+<0´ó9!dbGã˜`oCL¢6‡'#cBçàg ‘ÌàÈ 9h)ÔƒÒ3Ä]T Qˆ/OüýÉzë;û´¸ÿtðÂ" °4´ }ˆd´48@VS1Ê$ãœfZˆüS¶‡ïØÅ[ ™,×ÓÿŠ¢ÖÛäñ»ÎQq æýÄhD Î]…6Aä+9:]Ý®îÕœ#ƒ`;~«Zv§×È«9:FÍ£pd|«9:Dà›À;ºµ§jMÄv¬äéYÉÒ6m€wk»µ&‡Ê'|@5ºµ§jÖ¢gÀƒåÙYÉÒ³“¥g'JÎN‘ù>‘ËF߈åˆ#oÄrÄ6߈åˆm¿ËÛ~#–DmøŒì#@þ‚îíwvŽZ{öTéV˜ñ*o\Òõ>Ó[X ä5lÏ‚Êv§ïªk±ÒyŸ¼( m/é8!¾®Û[ÁZS üT“4‘1RŒq?•,àÑ­o^BPЗ‚°Ñ’¹ñ¦$’Ã"&"‰€Î-ˆ¤v( dcÔŸ’Q»%BH9 I$¡AmK¨`Õøç+Ù,döÉ¼Ùøá$QJF:Xƒ8`â`tˆ:gj!QR¡z¿˜Ç<&ùá$ž¡œ BÀVE .A•I3"Ùð«Â¨˜ NߨÃhyDÄŒk.PߌË_ÿô‡ø >5P¾Š Î]„QÙ½«9:]Ý®îÕœ+9:V´í@I¹»Vrt¬äé[Áü‚¬äéYÉÒˆ{v­iÚ&'•g'JÎN•šE‘ËFÿªA‘ò¬äéYÉ×´O¨·EŠ·¥xDç1è¢äÜ·„p#ßñsQ@`{tq#ÛõÒ–ÎÞäUEHáÈG1­pŽÚ:’8ŒkÒœŠ¨£†F»R*P@À@Ȍ ätþ@7£pÂâ×þÿº½ÿů¯šÿ]zþ%ô‰ŽgÊ™Ÿ˜ bÍ÷Š !K‘ùÚŸOh dcÈCc?¡ž!öüC<@;~!ž`ïô ²ˆüA8ÚFÇá ôØÁ”îo2™ãqqíLxÏoÂ]N—çáÝM•µÁߦþ‡ý'h(9ra°sWM1°dý/#3ò¯(vLôSÂàÝY¤mA¦ëęċ=e;`dÐòã¬ûêÓi')i¶ªWº‚G†½Z4æÀ“ 6§r0‘ÆÈ ”ô÷ügŠTÀ”«ÔÚl„ÍöÓÛ‰„ ‚ûx'ÜœÁ‚C¸{à­Ô€`AæK·SŸü-²@®û¬0À¥ØˆŸåê ûIîñø‚#¡aÜp=£f`’И+ÉËÉdC@ f¢$îù°~ÿÆcrjA#Øì!US¬óLîs—aMy ÎN•Œ ðý®îÔM‘à€¬äéK ®U­;DÇ" ³“¥0ÌøG,ˆØú Í,Vrt‰õÖêÖ«Zv‰´ ÖÈøãÒ³“¥ÝÚ9bÛñ²m¿šX¬ÒÅg'HŽàNpö‰õÖèŸP n‰ß nŒC0t‡¤|ñéYÉÒ.áØ Ê‘6„‘6„ÙhA­‘O lŠq¸~pï›B lŠz["ž,ktO¨·E+\sAòZ£fÀ±|~L1üzDÇ&-•oJ呈æ}"›N¼"À½lŠ9H¦{[IxG1­pŠ$óͽ©HƼ"r÷Háˆ?k$qõÖªÔpî‘DcÚ8‘xñEÖªÔpÈ×hÜeHÜ !Z"p65Ê7B¼hŽ-|ª¤¤p÷¢cª·ùpb'ïúË]çø”gÑþ&9Ÿ*vž§€¦ ФUzAÛ—ðÎa¼«ô‚N/×”<ƒ¸ý‚—¼ìb‚p³ÁŽ !œ/ö>3¶{˜'Wò¦X96x"*t3}í¤”éV˜ñ*lÇ9ù;\ Áaƒ_ñ¡‹`¦ëôŒåÂÜa,5b¸4Ëx¾è'„ÙŠdì%ìýït\Ü2ôZ°6p‘¿V‚‚Â4 ãªQ€¶@¿Ð•g«>«ÔImD¸ LD|ÇàA‹=ž0ˆ«ZvŽY¶ÿ¨å#ÔrÀ‘¿êîíwv»»Fv A²#oÄrÄ6߈åˆm¿­€ãõ¾ ݾ ݾ Ýê­Ñ> Ýê­ÑÀœáí£=ÆÏ”rÄ6߈ŸP n‹úÓ£–!µðŽY6߈ù¼¼„rÀ¶†~Q6…ëdsןPõÊ> °öðm¾„P1ûÚ9k„Q¾Ñ@‘cY#˜Ö¸Ea\Á25Ë£ˆÄ}é6ƒEH¼x¢Žð~£ˆ7÷.YƵÂ7 ŠF±˜ƒaíá^5G¾½£‰ôŽ-ŸÏ˜ç$ €oG¾#:ñü<ÌK*©ÿ´Brsþ€øþN ]ßçðK’o.¦T §ià)Úx ¦ªQŸµ6N•z@Á®g•o7hx![+XåºA<ÈÝÎG¤<6à·hxž1#µ2óèöHQz¢Tèq—ÞTË>ÃÉ)Áûô©¼xñSÛìפø¹ɯKõ>§7ÏoÃ+ #¨O;PKaÚ¾pCâG¦•@šUœ´aÆÿNÑÁ‚QbqÝÈ9¢SbX3ù?Gð-cœ9B_A”°Wþð0°Y£+0àãHÃOßÙlSÕøHUΡPÝA7„Úe+ÿÙ|CuDh”ÀúÖoi$TE“á7-ÈÈ<<§ûðKD5 S†œ.ƾÄ:ù Z`@s°ìò„A5¼ €®ë'/™ÉÓ<§«»ß   ˜ïý3|ž#­‡àn 4RÐW¥kà«4ƒ( 7Ú³“¥ R g^×whå‘~+9:Vrt‰õÖêÎN‘ËFíí°$oú»»]Ý£– ¿Ë&Ûñ´lÞ•œ+9:Gnul‰´ ÖȆÀNPô¬äéYÉÒ³K˜hз²ŽY¶ÿ¨å›oúŽY¶ÿ¨åˆ#oÄrɶüG,ˆÛñ²#oÄrÈ¿„hÐGzñ凎ù^B9fÛþ£–·ýGzñèxG,ÛÔrÀ¶†~Qp_JtSÀƒ["˜Ô]RDú‡®Qî ·Ð4[…F~aíëdSÄ[¢ˆ7†9þ„Lïhæ5÷Ò(‚ó sýG Aûíp#ï´pãâ(¢n!ëu(Ý;p;(â×õE1+ ë‘ůêŠ8tj­Fã(zDà{@»ž¨¤kÒDf.½ŒD T]¾Yýþ Æ6 Z!9£ùµóÔû‡>Ñ6$°&äK’oDÀì+Ÿâc™ò‰Ë6Ú c™RŠ”gíM“¥c^•¼Ý¡äÿ¨Yõn R“‹‡ö­f< œl#sò†t¼!ž§Á'Pp{@ÏÂ!²yìŸ.“R&Ǿ€kÍ[À}b¼í„Îdá56ò \zB28Ë×µ á;,¿ñ@ˆ‹¾Žî›­î`›„Ò¢ Žã}Íþ@ÀžFlH7QN7ìpŠq¸c„Scqü"›ˆ÷á£#Á£rŒèålâ|£kdx§EÁJtM¡¶DÚkdLøkdSЊÙ¾,El‰´ Öȧ¡²)â­Ñ> Ü£•®iøG-½t›Ûþ¢à½lŠcQ["}G?"‰ÈÄs>"‹§^p^µtQÌ=nŠmˆðQC"õ²(æ>¢€ÀßeAZñ\:•„ ”ÐÙƵÂ8t6øŽ8Š85Òªš8hò@l¯#b×Ã[+qkåU$sŠ«QÌ]*©£²èŒ«Ê6…òμb‰Ž¬“ƒ?h.8@´B óýn@HsüZèœëÊ%7#MË4L ¶%NÓÈV5éM“¥c^•¼Ý®®—WJ]<ä<«kk1á-à„8uñ=Zò§=QAFvðþœ¦…¦×GE;]Z•çl=™î»GÕb­Ð¸ÎÔüêcwcdÊ@ùå@Љ”ëb¿6!–ŽŒÓMµ]øhË™ýãékÝ À(fÍ'DQ2ý@c´³°D~îhº¡$ ’ÁCLðñ`Àì@lC€à€Ãh«“¹ ŒÃ‹ &ŽŽŸ&=¥Ëij0I¸G`0ÁG+’ê:ª.àb@ƒP@q¤ØË”_išrA¤n`cvÀ@"I $‡°%Gm Bs¬!΋—$ÚJ…²:aŽ¢&Œ-MÇ®ð) Aðf+@…ˆˆV0ÆòÔ46¢Â{¯:½áïdM jÿ¾MDe Þ yñˆê§ `e9sŸ‚èVD3X@ ‰½’ăÔÈ¡G`¢59¦[!¦Õ¿,±PÎK‹£Ê(NfF •ÆôK——R‹Ö£—DñDðòbB"?¦.–Sÿ@K7È2¾•K8 ÿ íÞ£bašðÈ*ÎN‘8Ä€}ùV´íhA­•œzVib9fÛþ£–>×wh¡¡àÁê­Ñ;â­Õ¦Ã´SÁ”M¡¶DÚkd|kd|ñéYÉË+:öŽX‚6üG,ˆÛñ± ·â9boÄrɶüG,›oÄrɶüG,›oÄrɶüR¶ÔO¨·Dú€ktO¨·Dú€ktolÇ4èÝ£1È¢ÛÚÄrɶüG-½tŽX†ÔOÂ9bolŽ[zé6·ýEÁ}'íð.+@‰õÖ豊(úCaÑGmåÊ&ÐñNŠcQ[)Ž`‰€7­ 9k…ÃkúоÑÇ>ûP…â¼CtQ7õº”n¸Ç”qk EdŽŠ‚”wïdlZÿ(ìº#*òÃ] ,¬8ÑäS¢‘‚E^2!ìB'‰ûVGOH „#ȹAò/@ƒ*Ïø1$ØV Åãpœ^7‘á9]Sþbeüšš«°këæ¨˜a¿ÄlXÁJ5åO¥tŽ ¼òTàUADóíêbêéX×¥!ÈyA;cäÈ:>Bè<¡á¼‚g¾ wº>HíŽ=·² d/² îžÑÙÊ™+¥psº„_qyVöÇJ¿A‰šC8YZ'„7é…íqZ¥1x[¼ú†GmHc¬’AtÀâ C`ðKK)¡š€¨Ž¬ õp”yámó¦Ý%•Q¡ap5Š!ð‹æ1½XW2–ax»Þø£]À½ÚÜìÈ$AApA ‚ˆ3(˜˜AÙç„ìÈHpAŒ‚" 4TË ÞXxX|iƒÜn2áǤ!Z N¦€Ì7lÆl)À¦D6NX™pØ¿Á+Þ?nÉ r;F7È´Q8 Gh=¯!$KÃŒ?ÞŒðSOàp{ söÉEÇ‹·‚vÌ·þeÌûDÄ®óú†z¨Û{9T' Ì``“äGÔNHd΂6ŒÂD­|°‰±@u!ÂÁ_àœœBŽÿùè %/BfÃ3á±mø¬Ò ¬äëÚ'Ô[¨ŸNÑ3àAò‰´ ÖÈøãÒ³KfFŒþQËF߈å“møŽZ6oJÎN |{Dú€ktO¨·Dú€ktNø€ktbƒ¤=#”dFÆŠ9F[8Ÿ(Ù£#°4QÊ2<(å rŒŠ9FGƒE£#Á¢ŽQ‘àÑG(áèxG(Þ=å·®‘ËÛËÈG, oú›Ûþ¢fÀðh¢mè›B lŠx DÚ M¡¶E8â=øEÈ·á¶#‘EO]"f75‘EÁz寢¶Dç1Í:‘ˆçö A¸±Ëð¢²ââªh£˜zÑÔƒt_‘Í—DUMDÃçöáˆ?}£ˆ¸ÏZ©)Â8µ†"²G E Á Á°×™£˜ÔUIŒE ÁH;ö‰ˆ6 6-aó]#²ùv¬Žž«´Ákû@±t ‡§ gçê‚áò.@‘$ΟÖÞÑ$Ä¢aŠhœœ!²8µÞ<£ˆFªÔqÈWHâUpÌ×H¢p{V5®UºZ­ÒÕÓ¢ä<©ŽcÂä<©ÍZSÒÒ 4Ki9Ò¨|]÷ôN I*v¤õÑR–—' ºôÎþˆµ?ÃѰòò年dŠD-@Œ Y˜~ñrÀ2±u‚wÊ(—eŒfç'±–2ØæÂ<  b@6YdTb0"€˜—Á_ÇȦ…$®Ojô·#²èAì"&Ù7´E޾:rDtòÈÆŒãtÚI“B:ðtE"õ„|)¢_Ãhü©g²Tï“ò€´nÃú[¡ÆzS22IgiC3bòñ".AnT  ”˜öã,1âÎ㇉æ˜0øŽÿ}?b‡Éo= rå„laÇòRÁÍlŠ“\²+.j¦Ÿ&?‚|îÊx|Nz\/TŠŒú¬_¨RÿF-јº :‘)W:Ñ_³c¨åÁG, þ®îÑËF߈å“mø¬ÒÄ|ñíê­Ñ;â­ÑO>QɨY³mÿQËÛþ£–doúŒn#RþÂ9j?Þ¼yaã„rÔm.‘ËF߈å‘~"†ž O¨·Dú€ktO¨·Dú€ktO¨·Dú€ktO¨·Dú€ktO¨·G ,5„‘]²+Ä{ðŠì­‘> Z„O¨·D÷D>´èݱŠ(ݱ ·â9më¤NØŽErɶöÃtrÛ×HÙ°1ÈÛÏ›B lQN8~>£›¼©ðÇ?Ф‹¿ kCÁ¢ŠË‹Š©¢ŽaëGR‡ï2?QE¬!Åd¤ êQÍÅÑ A¾³#²èŠÏÊ' ÞZሡX)FÃ:„¹£³QUj„ ¢¹ö£a`š-a–}#³QUj7 hðœŽq®ÓÃN˜cjpFbY=VW&2´ m'`g}þ-€™ÀñüBðÛ×Õœ+XÜËñíZÙSÿ€< Ñ$—)‰ãéÁÑ3'2‰™9¢™ÌëúŽ ê8wˆ O3 ŸÒ(à× ÆµÊ'Ô“[«y»ô­`—íNF.Úä<©éiHs>B˜Õ¤386ÿ ±;fsð{(6;pìí´Anä,¬YÀ![ùPœ#Øp×$XhØ5µå4žrn¢ÖX¢QކÓÌ ŸDÄaÜ{“ƒ˜ÛÎ* ù»k®Ð¶d±'~e¶„¶KgyÆñœ®-ƒwºžÀŒwwî½;A‹óª®Gµ\jÆ"þ$ޱ —ÒÊrÆ# è'†8Ôq”f„³hÊýj1@=œì¨â%r á¶ØÛ¥ðž\X=¢ÊàF Èx å)Za‚8ɲøýšr㬰pUQd42oûç{ùC A‹RŸ™7^U-7R ‡àç€mÿQÇ!÷Òl¦U„4±4 Û¡©‰Õ21r§õ¡)£ÿIM´¾,ƒcö[&lÙ‘ðA­•šXŽY¶ÿ¨å#Ô~CϵÝÚ9bÛñ± ·â9dÛ~#„.@òŠln#ß„F8Ft3àA­‘6„ÙhA­‘6„ÙhA­‘6„ÙÙµˤrãÐðŽQ¼zÊ7CÂ9FñèxG-½tŽS›zÒ!§6õ¤B9fÛþ£–·ýG,Cmí‘ÊRoZÀ#–Ç®‘Ëo]#–m¿§#fÀ¶ÿ¨Ù°<(›CÁ¢‰´/[rŠìÅl‹‚Î9Evb¶EÈqU$ãb9T¬`m§†êV6SCdM¡âï(¦5²sQÈ¢Û"Ÿ€©C[\4QY|EeáH'#VXQn Ö½ h|Ô3R Ð9~rŽËâ+/ Qº¹Íš…(èj9£‹_xR¯ͪQ°Î°Fů–Q¸kG„öbN1})kجԂ$gW¦ˆ÷^P2  AEÉÈØoûç9±•¡p™Ž6hˆ@„¶( œ*ÿlœþ‚@™Fîç×½‘/˜ÎÁíñ)À—´voUb;/‰Ê¼#ÔÕXË]åNmàM†µÊ)´ëÄQDà9Ÿ¤M &¶G<º)æ´…=åZÈyV³>G¥=-)MZ@äÕ¤v¤ÉÐA0rðÏC£’‚yy? Ál,õé8Á!mZT Sq_©ø7ã}‚ÓmÌÿÎöÕ¦5¨˜FÊ&‚K£z[ÓYp†qÙ®RÓäáœs¸ ¼¯Ö@ï†{ㆠ!¥ ='†„Èc’0mc?ÔL†Ëgl½G$CA°¹2¢i‚$Ê5PÁž®áh2;;éŠ K#»ÔõOl°<Â¥G"ÅÜ#€À»Ž²·àžÙýËþ衅 >Q0ªlx_h×4‘ƒúç¸rÏ÷ëK<‹1êñµ¾ ðùÈ㊕¯“üH¼…P&òÕ¢žè 6i®AÃÉÉÛ+lCÿÓ´ê*pÑ 8 aAÿˆ’Ñ´ÿÀXÈùDú€ktSlåŽM¡¶DÚkd|ñé¨Å¾£–m¿ê9fÛþ¢ÌvŽY6߈å“møŽX†ÔQG(Ìr(£vŒÆäQFöÌsNí˜æÛ1Í:7¶cštpÇ[zE67ïÂ)±¸~MÄ{ðŠãqü"¸ÜG¿®7ïÂ,â|‘g«ä‰õÖêÔÉP ŠºH®7ïÂ,â|‘r­øDúŽnòÛÈ¢ŽX†ãó”rÛ×Hå›VPÙ²jΩX@ÙM “ àÑEÁqU4Wf+d棑E8ÆøþÃu#Ú~xEÁqYùQ3b3dœÈ‡ÔòR†¶)ŒÇŠš+/ˆ¬¼)C[dŠËDEgåDøkû¸B“!ð‚ïŸIð†Õˆ¸žÀ›‡&Š#'íÕÆ3¨rœ 4áRè[úÓ(ç5Ò ‚4gTDÛK%< úÐùí Oþ ͪ††Ïk¶Š›@þ>wUßõÝ«|Ô”*¼05Òéç‡B³ˆL‡ã¡yõüw4>“î-zÎ¥¥X+ü)š‹|ׯ2gÊÚ?Ÿ€•ÿý2Fw9¯ØÔÉú·ÖŸŽ0ÎO8‡µëÿ€Ê@¯ÓÞø£<‰×úÁ³à6&‚iÍÎMÈ%òëKg!ÿªxj:‰PÏ8 RSÆ9ž<Ûô"gòg2òGå±møŽY6߈å£fôÃpßQ> Ýê­Ñ;â­ÑO­QMÄ{ðŽQ·‚Èå rÍ·ýG,ÛÔrÍ·ýG,ÛÔrÀ¶ÿ¨åmÿQËÛþ£–·ýV1$ôŽX†Ú^9JMëXr”›Ö°å·®‘Ê8‡„rØõÒ9NmëH„rÍ·ôãdlØ7·”rÛ×Hå±ë¤rÛ×Häö¬Ÿ„lØéDÚ M¡yÙh«Ñ]˜­‘tEl‰õÝåDVÈŸQÍÞTŒCkû,Ô­]˜l<†H¸.*¦‰áxqU$ãcäT3R Ð5±Í4Ø ûá–ˆŠÏÊs#榤 lxEe¢"³ò¢ ˆæ ¤^<~A–ŠË”n¨gs䬬1\«]ºÄ#³j«T£hcRB¾Š·â²:ev•$óDêãíJ#^ÅxMdiÓP2ð}Ué¨d¬Žž«Ò²:z¬®L@ÊÃvuñŒ­Aª±ÂF¤ˆ!1R@ƒ*ÍŽsßõ6èkÂr$YcšÉÊÉÏÅ“”M†_Á Léj!ÀTÑ ôK¹)̬ÓÐQ¹kší§CÄc­Ç«Øáÿµ°›å€‚Üô‡X¨§†û[2y©ÊäQDÙÄ>¦ƒÊä\² à 9þ”c¾äèpŒuñ]‰¾¬ùÑHÈT¬SÚÞ<ííÒ4Þ ŸÀÊ6*Ç¥265øŸY ; d'›b/ÿÖ±×¾o» Ë"”ŠÚwÃGîs—aê­Ñ;â­ÑMÄ{ðŠln#ß„WXA¢&|5²&Ѓ["m5²&Ѓ[#fѸ°$oúŽY‘¿ê9`[ÔrÀ¶ÿ¨åmÿQËÛþ£–·ýG, hmç„r” hJ6mG?ˆåCÂ9lzé¶õÒ9fÛúq²6l oo<#fÀðJ6lŠcCÁ¢‰´/óŽT©@ðmä²a°<(›CÅÞQpAw´W`El‹«ý'5Š*F!µý–jFƶR0ʼ)[º%0Øx5 “Ò§š¸ÌUZœÔr(©Àç^Ja°Ê¼.Œ«Ês"gSÉ<ØÀç÷¶R ÈÔp)ˆZ"2¯+`ù¨fÊAº*åX>"¹†*A¾:áYZ%•p¥äU•¢YWXk^VðñPýVÖ+ÆjÊÃ#WùÍøŽjߪQ´W ¦¸Öá5`eWUêÈéëÕ5‘Óתw gf)ÈØoûç9ØýûÝ1/ ˆƒ>ktànõz'?P/P;cµ²ZhëÚmÇk‚³bÈ…€ëh™ÂªL‰´J"%j(’bO œp%}ÿ<¦ 'â«1&¢˜¥414èìßÒÚ͈šŸ ”Ì 3ýð‹€æªhÙðšç€mÿB)è;ö¦Ìí.OAÚ9êw29ëÉohçÆ§â'.‰íÜk`»"Må%9%IùUî…QBâðr*¢„Eù<Xçÿ©q«õ%†ÄŽ?Ýl`C²ž/?§Ib­C·=“gÿZ~ò•¼@¥\c:x.@& «TrãÐðŽX‚6üG,A~#–!¶üG,›oÄrɶüG,›oÄrœCj? 9N!µ…‹d¢¢Î WÉqоH³ˆUòDú€Ej> Ýê­ÑrùÏžè‡Öê9SÃc­¼²+°"¶Eœ@"¯’'ÔUb'Ô>·yNj9Q»b9TŒCkû,ÑËƯ,7R©‡HåˆmE+þö¥S”¬ l¦†ÊF9á1¡àÙåpDUMØ['5­O$ãcäT3Nj9TŒ`s¯*F9W„ÆckÂö çtæGÍC)äs¾ÏŽTŒ<~AXj+Ô@ÖŽG¨«Kàp5ÁR/? ¬5·Vºë…¸%•C%"ãæ ·" ¥\x5ñojGês#æ ·‡"ÿjÚÃ=Ú)íÀ:õC1CÙPºJsJˆlä… ý9¹P˜€½ëîA² w-§üUFCÔO“Z«ð‘8™ĪËLÃØj#ê9RXð3¼h¬Ÿ#÷Çâ{1Í[õ[Ep~„ÖFŸßÄÔ ‘»áL@ÊÃwÏIÈØoûç9Ù#Ôì ìÇê±;û÷ºgRô­¬P¹Ÿµ1Úlq¶¶@ »×„kç©Ö޽¦Üxö±¸+[Ol›qDìr‰”Dc—´Hà.÷M‚fwÝí1\òU¡5pNDÀ¡•‚­©+c3*º­VV™Ö558Ø9?`ŠËLMgáLÆ*òž|`2ûÚ‰aGµ;À §Y3ƒ™rŠzþ"ž§s)ÖÏcQÎøìH§qöKð¹ºÊ1Ô=‘@‹íì+b¡ô‰†£±ú­RÅ^ë±Bg1»wÿо4}á×ï“ù‘hI®V"å“ÞI,ò.FÆHã~x]æÄÖ/ý„ @ü»b7"Š9Fc‘E´f9Q»Fc‘E´f9Q»Fc‘E´f9Q»Fc‘E´f9T)ÆQ>YqоH³ˆUòDú‡­øEÈç<"}Cëw”O¨äQDúŽEób9QËÚ‹xåŒÇˆs4棑E8ØŽE#ÚþË5+Æ6ŽÏjU0éJ¦)X1°ô:L6ƒE1¡àÙåJŒ§‘¨d˜Ððh«‹"#g¯jã'űûðÉÍG"ŠöÀç^Tl˜l r5 •Å‘zö˜Ìr x^Á\îœÈù¨c œŽwÙñÊa°Ê¼+‹"2¯)ÈXb3¯ A9ï³ã•"ñȨr®3¾f¬,2Ρš’t>ûáQ•ÕzØ<‚Ĉž"½« ³¨f­íƼج¬2ªŽ«|O\Ål5 ‘õŠ©,xá^4VDäzõøžÌWê·Šàý ÜHÌUµrox«B±2°Õ•)1+ ßTP18ç=ÿP#k$ N>P5­2${ «-úM¸ñí6ãÇ´Ë^Ñ<Uˆ’f}zDF9{ôè‘À]î›b#Þü&’æëOÄäL‰Ì­Õ±•_V)ÄÎÁ\­ãjØjL¼ø¨)†è ï«°ÎÚÁNÂ;véN¦=©Øž2R;ÑÑN“±¹Sª'”lør%î†mÊ8}úVõKZò‡6da"¼JÕ,Rç>ìO `ï.ÂkJóÇþ(àƒ‘þѳ•ûÿã6‹¹ìÄ€øÁüå.þ64dx4QÊ2<(å r” hJ9J´?¥4dx4Q³FGƒE4dx4Q6‡ƒE³#¥§6õ¤B9`[N›ÛÛÏÙ°<Ò›Á¢˜Ððh¢m éw”Z±FÊò‹¢+e+ú(›CÅÞQpAw´W`El‹¢+eÈFGߤ棑EJÄr(©XÀÛ5ö¥në¥+Ú‰V*VÇ®‰Rȫ‘âœ+‹"2¯*ã1UjsPúÛX'ëÊNF¶tÃa•xL69W„Æ…ô©æ®3V§5óN‚r9_oÒ c1â¡„†£ÏÝÓŒuåZ]ˆ®Ba°ˆÄZ+¥`"ªJ×Cî²V‰ePÉl Ao‰â+˜« °Â­Vö‰‹Åsd”¡a–¹ÕQÈ©þ _æº[Úµ[Øf‘•†¬Æ„¨ÄsUj·e\­ÄŒïý¬S8ƒTxƒÅZ, Eõ0¬‰…†ï‰–"Ãpì&q%h Ž6A2©^…ýþVH‘q¸¬8gïñ¾q@m‡5²Å–¶ž™:Ð<{Y9ø²sñ° céiiíÑ7Ê#dx­‘#3+5b7ô€'ΪÐíê¸Nη*ÜÈHUµz·: äü ¬ÏgÅe`TtS ¦ ò¦\95SCZðSO‡$ו;ÚŸ])›m?Jf¦;B: Ýt‘S*$ÄlŽxËSè)×[„ϤÀ/&>=’êÚ[t'|ÁÂ-Ïàn÷89:”j?ˆƒñ$1)é5'e:ñR5=&àÓÿ²{Z)‰Ä‹ÇŠ(žè‡ÖÝúÓ¢{¢ZtO¨äQFíŽEnјäQFíˆäQFíˆä~n-“ê w½ œð‰õ­ÞSšŽEnØŽEnØŽGáR± chìö¥S”­Ýt¥ae46G-G0ëE*˜t¥lrù “ c•K$Ã`x4SÒ§šàˆªš+°"¶\‘ðœÔr(©Q˜Q:ÁriøRØëÊNF¶tÃa•xLhx4wWŠ«Uűûôœl`s¯*FÇÝ\Tº¼¦«Â¸²#*òœÈË:†rR Èç}Ÿ¦«Â°ÔyûºØ<è©è¨‚˜l"1uŽ ÀAªuk¡÷Y+ D²¨dƒ¡à×EQÈ®ŠÚ2ΡšßÄW1[GƒP[ÑPZ Ï^ÊÆˆ–5ãUo¸®?T»Aâ­V&v¶§8âñÍ~an5Áú¨ˆ6T\­ÄŒÅ[W&mqTɼGе2ÖŠ—¥j%h©ìAch© &pñò¢‰ÇÏÚŠ¸:{¡|j=~«Åb= v‡ª¹ZÙÓ VbãÒÆà'Ü9öŸpçÚÒÓÛ¢S%µdAnÑFàß×ÕhU€ô¬D1¿×”‰©«C·ªåZX*Ú’´2°Uµ%ntÏâž*¬VV ÕGE0Ú`0¯+`y¨n˜Èy¨a;œÌ«ì"s2¬Tᦦu‚™ûîjeDψ©Úž†Êv¾ò§P6 XnkòçÒ1í>ý„SsOA»T}sÐyŒž #Þ·RŽ'ŸÄÂO–ÿ§çȺøþ\x \¾q¨þLFhå(Ðþ”Ó`x4Q³`x4Q³FGƒEhx4Q6‡ƒEh_K¼¢àƒóŽQ³J|"šlŠ&Ððh¢myDÚj­EѲ+°"¶\ŒE_-‘>¡çm¢®Nj9SÃDÓš‡ÖÚÁ9¨äQN6!Žu,Ô­Žaº•±ë§M69á1¡àÑWDe^UÆN>+¬ÆFÏy«Œ­¶Nj9vN609ו œlé†Â*ð˜Ððh¹Ý9‘óPÆ òØï©:äÀ×—\09W+‚#\+‹b3¯ ’^]Z]ˆ®B°VÁóPÙZœTBd‹Z#ut¬qº­VºÝb‹Ä±ÂÛ3À×µ¼9=º2[ÑP[fx©#JÑ#ÕXƒ=öR†Æ¸§·´L^=xÙ[‰ж®RÁ•†¬ñâX3°Õ¾|ïù¯£ q11VUÊÜj+ƒô+q¨®ЭơZƒ˜=«’Æêš œ ö|¨¡dïn·ÔÑl.+n«18ÕþÝ6±«P;ÜcgÊhÙcyX9}X‡tå½xNf¿Q O~<"g ©2"&\îQM¬*f†Ýß×ÔÌâU©‚¤©1°T†=«s3!VUèò´ÌÕ§\95·Ì°ÌPtšì®Mm;œÌ«ì"s2¬Tíµ3Ž]L»¡,|©ží2Øp§q¤„©Õ+7*wæ ä¨FøµÆ€Šj_¤b1¨z(¦3ð{ü›‚Šz8(¹mø‰×"ê1[SOæ×ô÷Ÿ©7hÌr(£vŒÇ"Š7hÌr(§›È¢ŽSˆmGáG,CNÑn­Ê9dÛ{aº•L:R ¨—ݱÂ¥bÆÑÙíJ¦)[ºéJÂÊhl¤`[OÉd˜lŠcBúTó\SR°ðh®ŒEyWl¹о['5­O$ãb9YHÆ:ò¥lzéÔŒ r¯ ŒÇ ×…+A¨d¸"1å{sºäˆÀׄãcyRŸ#ÑösL69W…qdFUå\[xN609×”ãcyR Èå}¿H)ŒÇІWUjäÀ×—\09W)†Dz«CÁ®¬V¶ˆ«œ$ZÑ‹«¥"ã, r­t#ºÄ+Ä.«½† ñŠ“x–"· ÞÃ1q®,’–-8Vá[î-¯>%Èõëñn³b½¡ÀYa÷Pñ.Â9«U¸ÔWêÛñ_F6&V²¥+; [Sœ˜±³»ñ;ªdîÍ\V™òk Kו{}J¤…“½ºßSLȸ­ª65½A ãQëñ^´øP¼6õõ°· (Ö ™hïÒ΃¬n¥Áô±¸)–ãÚ'`”oh~‘ç^•©:z"v@_oÊŠ±Æï~8œåŸ¤É¼ž*å>.Or}À0´ßórœû„±5ƪ}æë+êÙ³}v˜|9?=©–´NwUø)ØDæeX©õëÚ¶‚f¬*föd6SªVjd§s¤N¯:£;ܦÁó„;*e´ÞIS¡>鲘ð·Á죞͸tP81ÚÂúOßðUÍ k5˜ú|š"ˆ(U© 4<(›CÁ¢‰´/¥ÞQ6…þqÊ+¬ Œi¹EѲ+Ä{ð‹¢+e ò3ÜtsEѲ+°"¶EÈUþ“š‡Ö§’q±Š*F"9ŠåJÆÚxn¥S”‡²*ðŽ[s´R°²ié0Ø Lhx4w\ E]-×A¶ÉÍG"ŽÉÆÆ1PÍHØû«Êi°Ê·e+¯«Ša°Ê¼.ŒEy^Á\îœÈù¨cóc›÷‚NG+íúALfªSäzéJ{ zÓÒi°Èú»Ö‡ƒÜøM6dhoב„VV †ÃÁtÃ`x3¬—F"¼¯`ªµ\f%?~ŠäˆÀŠž Í|Šð¤cyRžÐÚ~TŒ`s¯*FÇÝb˜l r²°L6>zR0ˆÄW•#qê±\‘1®SšÃZò¯r>ë]s5~ †*åJÃuù%!³]X®H‹×+–ëÚôžŽTœâº*Kf;ªjMÁ®¤ƒ<ézOºÇ5&1ÄWµ'q»~s_Qq¾ºQEâx}ÅIÜK8ëÊ–‹õÓ)6Ÿ"½ÅIká¸çSAÒÜ TIŒ|Šö†Øx5#Ý`‡‹Y¯“Qñò+ÚÛð¥Æ7Øj‹¯°ìWJLr7a× 66‹U¼P´ºÑUj€B;Ë}T¸±¾Ãû·…½h°ÕZ®µçuµh»%µu¢¶Õm]h­µBÄ‹®é]lkØŠ¸-¶·@àÖû!z8Š«•Á| ĪäÛEÀñ[:öŒ a>ŠhÙ3Õ2÷*+!:çØáìBòwí6ãÇ´Kš!i')t6G šo(†$Ö¼+ಷWÐ ×­!u¦¶ÆKnÁi­•þ‚¼úS¯¾Áùú³[’j1ô¦ßàWµáƒØ/4vW9~)×Ï}?*ïìáX©ùqìŸW)¿±"ÄéeŸOÖSõû¼±Sùò[Æ÷åßSšØãöFÊ|ª^êlp‡½ÞíÛ÷ZÍn²#…Ø=æ˜p‘²­ Š'Èð~Ôÿ§Dš"ˆ(U© "èŠÙ WúDú‡ùÏ ÍG"Šy±Š*F!µý–jV06ÓÃu `Ú‰pœlCêY©[þÃu+c×Nšl rùÒa°<) émbº­·\ŒE_-“šŽE“ÚÇQ6«™¯ F09ו œlêCÙ•xLfcÜx5rÛ´]\øÛñ_F2ÃÂÃuqâKœy£%àEµ/ M†ûëo KÀßeqáI°Øo®Uì õ*’½ÜW…ñUrt5…ˆ °Æ¾ w‚*ßn€äjßÄðkÐG(]åÑYF°dëG^ÖN~,œüY9øŸpçÚ'k6äš½°7(7¹­-‘bå…k¶ÈÝßåd®bo2úµOЏ)¶›î­¼)¬s5æ†ßšúpß°]OÀcp™¼×*ls=|Ó6ÇàWr\üSµ>š*¶ÜýÏB…ÅMÔo3R*ný u<)ØuìÉN§nܨ.Åükú)_úFÊtE¿< ñS"4ãÀÝNºx›|¦aÕš‚š|cn?¡Å½zFÃhß'Áºÿ¨TRlØämç„Ã`x4S M¡yÙh«ÑtElŠì­‘r¤÷w´A¶ÉÍCëm`œÔr(§Ç:–jVÇ®0Ø@å^ àÑdÆ…ô¶±]VÛ©MdFVˆsUÆbªÕɯ ÆÆ1PÍH'#ö|r¤=9W„ÆcÅC+ŒÄåëÙWÄg^ŒuåBÿ#Þæ A9ï³ã”Ãa•xWDe^UűׄãcyR Èå}¿H*FŠé”†ÌguZêMÆxâk–ëÚ“xž"¹š¸8Š«VÉà×EpÀå\©1Ä.¬–Éž¸ŠÝŠå”|A¸ÝV¯I÷X­ÑȯhwÃÁꊷ´O\©1–¹GÔO¶üWÑŽ)±¼ii¶jmDÊËê}J71ÁO©_™·ÜõåñS/¬$l§D[óÀß2#¼ Ôï8~Ì?¤2œ4=Vhœ¡ö¨#˜¹`V¤ÔÅùÿ¨6»¯Þ)"&¸RqkëÚ•ˆcGgµ*˜t¥S”¬ rùÒa°<,˜Ððlòš¶Þ ˜Ððh®ŒEyW8ø®-ˆÏ߆Nj9TŒ`s¯*A9ÙÔ‡²*ð˜Ìx¨aÓaÈ5ÂcHèk•ìÎë’#^ŒuåHØû«Êa°Ê¼&4ˆÄÖ+Ø+Ó™5 `¥F~ExRØﲊ½²}]ŠàˆµÂÙŒî«]8ØÀàkÈu œŽWÛô‚¤aˆ®™HÆ#;ªÕËõí}z5ånEtTˆâ7UªÖÃqŠ.£‘]#Œî«U®„wX…&N%ˆü«VÉà×µ6O\©ãaê²[v‹±©ø–-°Š»;v‹«ŸÃäz¨Y¾„wX….0°Ý\xßó_Fv‹«Ÿc‘ê²[ö‹ë:âëEmåKºÃun<^œÞèâ±óW(÷ T]ÀÚ,5¼ÕÜ ×ÖóW07_ïÊÓ6‹ n±XñYò…øêZ"Û}N¢®N†±±ÄVU¨ ä´vÈUÐ@mqÍl…ÍßSð­VN~,œüY9ø²sñ° cé¼ »Dm$¶gâ7êô¾‰ä*ÔnÇOáM´ð+uÕ¼•üM‚Á[ÉkŸvøÎŽgÕd¡au¤ú«‘o¸¨Úè¾°çV2¹Ð^o®jöcÇÜ~¦Ýªj|ocä½_z›P“ŒÔØþÛm‚7ÝNë.¹rÊ ¹¯e”ÞªóŸØÚI6"ÖëÀÝ:Ä݆‡‰)Üø8»1S†š‰"V‡­}¢æ4SÙD¶ý2ˆŸôøS%q€VË8Œ¿IÍG"Š‘ˆŽb¹R±¶6kíJØõÓ©O—¯JVÇ®‰RÈ«Âà˜X39ù œZA*l-¶Ó B›Ûm°C§Æ¬ØZê ­6ŒÔØïïr§ÏÍLl¦Æª‘Sè´ô#H7_GR"¥4=zFˆL88ü5$rS|SƸ¤¥§(Ü´ÔR‘[Nøhý°Ø Æ…ô¶±\ E]-×A¶Ë’#^šŽEögÈðó\ƒš~‡¶:ò¤‘­HÂ*ð˜Ððh·WÄg^ 柅#ëÉP†0ÚU‹©är¾ß¤Ãa‘¨d®,ˆÊ¼«‹b3¯ Íx?});vS¦«Â¸²#*ò®-ˆÎ¼)ÆÛV2äÀ×—\09W+‚"× qªÜ×,׵È÷ØRw]Ì”œx5ÒôŸuˆ[¢}[š‘AÂê±lž tVèÄW9©1ī͢ã}YˆX±³ÝÁ¯ktOURZ؃vnknÑv5?ÃÆÃT|íÚ.®|KŽGªË?¸ÂñPó.0°Ý\xßó_Fv‹«Ÿã ÕLj¸Ûˆê²ZâÑh­”¸ÂÃuqâôÆÃ_Ì{¿Ü ¢Ã[Í]lkê»ÔWŸÅrt5Él }Wp7^{+4/ÃO娋êupt5áµÁ¼S W‚+œÐ Eaé¼|v™h>} f`e鼺O¸sídçâÉÏÄë~“ðš83ñCX¢Wy3ʲD¼ÍdÝÍyÙb¹àUÁ^7 +u`°VòZÇ_ªts>«,§&¿Vç{©0_ٮʛhò}T`§ó‚º*9Ø)øSóæÁÍwÇÉ}­ÅM¬„õ#P¦ÇòÛm0Ä)úýᆠŒcC€Ç%6·TÿmQ$骚ö½µMÖxǦԽ‹WXåa»â=¨‡z¨èŽD€EH:·2ÿ¨ék/ jÂt¸Âb1‚•±ÊÊÁ4Ø@äk„ƇƒE\Y—¯.®3V¨PœýŽŠè"¶Ù9¨äQÙ8ØÀæ*©uyRžÈ¬Û¤ÆcÅC.‚+mÕűׄãc˜¨fžg·È÷éH'#ö|ršl r³n±Lf1áa»PÊ[þkèÂïQ^hÝÄZ-´Ö¨äV*C—ýR\äB½Ü|òæ„|éIx‹êu5ñ}µš%î9¬ÕÁÐëû P/cU/Ä+‚ø} F5 Âs÷ºe ùô…ÍßP,óÒe£¿I˜ñí2÷)—¹D/&±M¸ñí:ÁߤJð0è†&±D¼ çY#r8š ð¾›x¨ ­5¦+@sYn´öñÒÒšÛ} Md&§_}ƒóõlrOª›69úù¢¢áî®_¯5ÚŸ’z}¦»Û-Ö¤¦Ô,Îgê›ÛN‚Wd¦ÖBz‘¨SãVnmt1°ë=âç!%6¹Øt§Ç¸F>wSu³7Iµ¸cæÅ?ŽŸ1 Týv;ÈÝ’¿FþñŠ#8Â7-˜éM²'%çÿ¨¸ãb9YJØçeb¥lzéÓM„F¸Lf9¼&´<:®ŒEy^Á\î¹"05á8ØÀæ*©uyR0ʼ&3ƒ^°W;§5Ž¢¸O61ÔOÇ ÆÆ:ò¤‘Êû~Sr>q!³]X©Ä`j¢¯mÀßWà¸`qû ‚"× Ëg®B‘±×…ËõínˆEõnjCf2º±Rqà×KÒ}Ö!H¼K¤\e®W×£^QuŠéHDÅÕb‡ƒ]º'ˆª‹),r=V!}ÅØÔübÄKUjÛ<÷œ|G!bÂÌTUìíÄ_\:“U’úŽÅ{Rã ÕÇûEõÇ¿ôc.1°ß®WØv+4+áa´Vë6mlWÔv+ T1w"¿˜äï>÷½I°ß}]/ Hðjåuq¶·Šëc_UÖǯš«­}WÆÚÞkHðjå x¬áŠƒâ/qŒýî±/[¡xj+´.h>#ÑBðÛ×Ô?O½ W•âg)×8Y‹6é–}ßS®píŸ ɬQ¸7õõŰè܉W‡Aãõhk(â¦6æ¼ìµ öVPZ‡ŠÊ à½äÈeL±³&g+{¹|…§:ÝN¾ûçêøÍvTÈ¿g×)Ñͼ ÎÕ:9ô|Ú§ge¦ì†7o>:ãiÒ Tܸ°jvÉLÖýN’ }7‰ qŠ›ãOYÄ©±«î›Úºíê|yŸí/›æW|;©±¿O6«6?E T7J,nÀÔ<¢xüá5ìîÅåb77ŸrÔJ¹ÖŠýœÆ¢ªIÍG"ŽÉÆÆ1PÍJÆ;êò˜l r¯ ¦{ÛOž „Uá1¡àÑÝ{sºäˆÀׄãcyRŸ#ÑösL69W…qdFUå\[xO|Æb~'2<Þ A9ï³ã”Ãa•xL[(ŒEyX“ˆÏßarÀà}{\08}…Á•y„–$â07U¹©Ææ+ëѯ)ŒÇ"ºRXâšÌ-“Á®ŠáʹRw]Ì–Éà×µõè×…'q•×üÉIÜgußs_Qv5’“'Ä~U«dðkÚÝÄUE”‘±» µZî;~jLr=|Ó÷ÖV),^ì®®<<ö‹|l7‹±«–Ý¢êçĸäz¬§=ûEõÇ¿ôc.1°ß\ùß´_\ybëE}ÍöŽG£X¦mÝ]j+Îë\Z-²ƒxä)\Xmºú=iԇЉëN F"û~ùZƒšÎ8­aÈ«•Á| ĪåˆFrõº¡ˆ¯h—‚9¬Ö!ËÖè^cˆ¯H\$`eéÀ= ƒã´.nú`khëÚÉÏÅ“Ÿ‹'?®ª8Z1öQ Éß´p™üW„œŽAÍlÇ8š Ë_/^JœçAßÝä;û WÚfuZÇTTèæ}VV/¿:Ý”ÈæoÀW eØ] 4!°^q¬î[ ¯ýè­(l/ÌáéæT"ÂØ›})‘·›g`Êf—h;7 Ôê§0¹”¿Âè)µPa™SãËT_mTïb±S~IÆ–)úë~pbû\l:ß~ kŽÅnʉÅÓG” Ï,îžE¿ê@†Ç†(ºŽJT‚Ä•ÆbªÕqlFuáriøN609ו(i¨’”ù~TÃa•x\Šò½‚¹Ý9‘óPÆ A9ï³ã• œŽWÛô‚˜Ìx¨aìÎéæÜgh¡zs#桌‚r9ßgÇ)†Â*ð®,ˆÊ¼¬IÄgï°¹`p>½®G¾ÂÄ”F"ê³%Écårpk«¤û¬B‘x–!bN#u[šúôkÊÝŠè©;Œî»îkfÑq¾¬Ä-Ñȯj@¾ Ün«VÉà× ·DñQe&8ƒÕ’µÜv*üÔ‘±¿ ±KEÆúé–,lÄwECÀðT˜ÇȯjMƒÁ¯pEÖÑx¾»e·È5ìc¿Áìa·hº¹ñ*9}ój¢Ã•o¬.´UZ¥G#î³ZgÍ]¶aØ®”¸¸¾Ñ[…&9;ϽïXŒo°ÖÅF¸ðkð­#u†·W7ÐÜ® n25¡¹b1â³ZŠÎ«Â×#2¼ÐŠ«–#Ž}î® `eë´/C^Ö >}î€b+Hàùã´â2 …ÍßP,UÒÉÊf<{Y÷}Y÷}D ÝŸê!`:ÃÚ%`ÇÒ8ZQ(†&± >öFãœMzW…ðæ+°­–€æ²ÝhbfkuŒÞMQ_!iηQº° kh)‘ÌÚM¸S#-‡³ÞËà;5ÙXÙô6ájv}Ët_³èmÂûx8Þõ2¡ÄÛéLÖýN’ çàäÅ@9iêè9S£^"c ™í´«Êîìw l{Öé±ÕOj»°Î§]Dy¹½ˆîÚŠ¼9ºËn‡i¢8.°›­œ°ÿ©î1WZbˆŒ­ò¤n=|Í8ØÇ"?ï¤ô °×ï•ËšáÄ{ì&1lf¯JFãÕb¤c®Y—,h»@â/έEØCL¤¶c°[WÔ#Ãq£)©8ðk¢¯r>í4Qs#‘]),qŠÄ)8A®Š½Èû´ÑZ¤r+©©;F°[&xUbƒpÇZ’ÝÄUX¤Ç#Õd¤çß’.¶â*¢ÊLr=T8]mÄUE”ž=eõÃÉe½£ éùRc‘ë«.P|ŽÅXØ£¸¾ÃxÅlrª›„KÃðGº½Br káopj ê»‘[øTXGº½HŒ/´`jÛ‘µºÃUj„0ÜUa*9¶+ì;Ò•uöÏÅŒ3°çM“#JÛ¬8ŠùöŒ°ã%(¼/·#W,¡à«)aa«¼«.U|älÊ´V-a˜›A9Žs¬bœÇ:ÝAnWÔ•‹èz=pšÃ9_“La”µ¨á˜?S°psŸÞPmã‘Z ëŽU1cÌü Fâ0¢ƒoY!ŒkHÀåEÄdž’³¶ƒ UMñ:ó°O³“{D®Ü¿¥ ¼‚‰ÞO²-› ßÊ)¼ç›~q=ýÏ!ÉÏ•¯' 5€V¼›rÁZòg ý\ú“TU—Ö8ÎÍ/5‘•ƒq!³Šò®-ˆÎ¼'ëÊNG+íúALf©¾,ÿlˆ\NtQeÃ:ãiñ‚8Ô!9KÖ±Xɬ`´15íjbe[)–âe[^§GS-5ÑN/­ºVÌ¿'‰Ï Œµp_•§^8ñ‡œrw™n0ÖS¢Ýg~êaìÕŠud=þ…2?¶è» g‡ãYœ/ v·[3¬…™)‘iéE„\0*u7àŒ-*fr¦3mSªæ·.TÊö~‚¼/ØÄZÅN½Î„Ù‘^DU˜M D =á·ýVD°Â±ŽÙZ&ßSéx¨l®,ˆÊ¼«‹b3¯ áŒõö0Nd|Ô1‚NG;ìøå0Ø@å^Å‘W•qlFuá8ØÀàkÈu'cîÚtÆcÅC/`®wO6ã;EbœÈðk¥{‘÷X©Db+¦X“ˆÀÝVæ¹`p>½­Ñˆ¾­ÍHlÆWV+`ðk¢¾½ð¤Ê³QRXâšÌ-“< qº qÎjKUˆ_Qq¾º[£‘^Ô™±–÷Õ®ã±Wæ¤SC0ß 0=Qµ×Ü_K̘äz¬•®ã±Wæ¤Ç#Õd¾ãºÊÅ&9ºã?¨ìWE6Ñ…†ì$a/¸î²µJŽGÝgïÚ/®<íò {žøØoê¯_aجָäUÛc*9už:Fë oŒÕÖ¡cC‘_˜ÊŽDKZÍc1iØzë…ãÁ¯Â´·¹i¬5ºÒ<ÞåˆÇƒX­Åg T‡ÜW–¦"u²È>k0® `kÄPÌ1íÀùù¨@¤r+42¨ ‘nX W‚õc,œ¡ˆúuÀBÏMV}ßV}ßVzj¡øÀGV%ƒ_QÆ>Ê7âkÒÅÐ{öSbkÚÔÄʶNcàOzŠÄ|«uˆþºŠlVêq|ͧ*Ù•ÖÝšì¬IîrÃò ›Œ17í‘?lÄãÇ`ý·‡=]ù'§ö§GÞ÷š½LýÈvh)‘¾íN²2TÃWPŽFKAÉ’úc ™­U¦ toº?±Ü)‘¾¬ìHS;­•:´8‹)àZ±έdȱ޲ØZQ&àH¯„‡þ©ÖEh›}O‰‹èrLf‘uçÇÍ– OÞ°F×$וˆO±extí‰ÁYp;5’ü‡u¢ü¬D)ÑÌú¯*w‹OÊÁM/¯B±ÅXÌN><ê?8œ.1³èmÂìúp§G­…”Ó#ïôÛ„à¦z´OaÍêueìùPZá¬ÌpŠ™Uu¶©‘üѱ2!Nœ_½˜)›TòÀ§GïëhlS­~~‹EV¸6Í6,Îß'ÅÓ2E…§¯KÿU†`lbþËl69W…qdFUå]f;ÕűׄãcyR Èå}¿H)ŒÇІ^Á\î¡à×V/I÷X„MG"ºµ\EU©Ð,y`nõõrÀà}{[¢}[šÙŒ®¬S™ t­t#ºÄ)7‰b+Œ”›Œ°5ÎkÒ}Ö!I“‰b?*Õ&o1ê²['ƒ\2ÝÄUX¤Çqº²Wº‹±®YbÆÌGtV,,ÀõE[Eâú픘äz¬•®ã±Wæ¥Þ9ï,XYêŠ.¶â*¢È7ÂÌTmt]mÄ{«ÂÅ…˜¨¨øùìa·â¾ŒeÆ6ð5ÊÛ´]^1Rã øå}‡bº*ºûGåX£ ï°þÕ‹ì;šÖŠüÆTr>ûæÕ*ûì?¿‹zÑaÊŸEù]•f±œ<í÷Âú=iÕáÔ|é^n>u²¼Ü|ëey¸¬å²ÔÄN¶ZƒšÎw¬GÀαˆWC×Ř~jeãÇÝu ùÚ`##ø†0Î>ÐÆYÐ@®*+'?N~,œüY9ø‹.þ„q”}£ˆ—Û¤Y`ŸÄq“”¾ò‹.?—œå·âr×ÀJ·W‡A=wÀ`±[=ÿä'­n¬¸Ö‹[UËU°S0Ø{=ì¹,¿^ÔÈ»ó€Â³O€Â³Z €¶žuÁÏ*dq»\̇VÌ–÷Y™Æå2<Ôæmaj„cazøS+?VD•25ÏàNŠ„68©›T²Ä€¦k«øy‰Eæ¯_qh 9ˆ3µµbb-ø /Ö[ÿV†,uÍöœ$ñ@¹|ãQü ï’‘„F"ª Sf2´aõHlÆwU®œÈðk¥{‘÷X¦3ŠÚ Ø+ÖÁà×E^ä}Ö*FŠé”†ÌguZéÖÆX¦_W×£^VèäWEHâ<ÖªMÆxêź qÕ¹©GšÕlž tVèÄ_V椱ÈõX…'`yÍZèG¸ŒTœ$oU™-“Á¯ktOURcˆ8ÝY+]Çb¯ÍKHÞ.ÛqÈt·URc"½©1Èõ×}Gb°ÅIŽGªÉ}Gb°Å6Ñ…†ì$a-ûEõÇ™q…†ì p·¼ý©8CÓ‘_ˆ®/°Þ1®T,.´U4T¨ä}÷ͪ67Xjž*‹FU´Ué…†¿_‰Wßaýü[Ö‹Tú-«EÕ¶ªU×Ú??¨ä}ýº+@ßg=­#Áª+Ö©ÕÄ025¡ZЬF<ÇE x¬åz1í98‹ÄëeˆþU€:¨˜¼e*Â(:ãÁ×ñ DgD0ˆ5å hßD ëÈþ¡˜xóÒ°ì¨:ã—éY9ø›qY÷}L3uf²r²rŽ=¥dåHÍ Ióúåïê9&½§/< ÑX“ Ö~ŸEˆØ ÖÉŒ<™íîÕŒÞMQV\ ë…1\VX3¿öJ|uè ·5‰ÌÚÁ8ñö} ¸'0ó€ÃÎNóãóæ„êÐ^M´Ó«ApÓÍŽ½ôâ™:³Y“¤d§T 90 ”#ò«ÅL¿ÝfB™^®c€7©ñçÌwIѯzÌb¦F¾ÌcW¯¸‹ˆ´Pà¿ ¨²zÃ&“¼Õê:É#ÄÌ%ÿV ö„“|±˜ñP êÈèk•pqV hx5Õ‹Ò}Ö!QÈ®­WUjs#Á®•®„wX®‹\)`k•&Çó.W¤û¬B‘x–!I¸Ë\æ¾½ò¤áÈ®”‹Œ°5Êú‹±¬”˜ÄKÝ&leýçu2‘ÎÿΙnŽErÊ@¾ Ün«U®„wûˆÅIð«t3ÀÕX¥Þ9ï,XYêŠ.¶‹ÅõÛ)wXnΠxÛ´]OÄq}†úç9íÚ.Ƨâ\ca¿ Ÿ»EÕωqÈõYN{ö‹ë2ã Øáoù¯£ …¢Ðk»Ta}öÚ±}‡bºR®¾Ñùø¯‹ ‡;:>w­Öú-«E£*mT¨¸¾ÑUb‘ºÍJ‹ì5²¢Ã•oödkrµ°37 ÅÖŠÚÅ©˜­B¸Žbµ àèg¦ØŒÁÐõ¾ˆØVɉÀÞ+Ú¼Ž"õˆšÌ,FÀËׂ…ᨮÖ+àj;”aÄ0Žpôè^zú†23´1ƒœ=!ò?¨`##ø³îú³îú³îú‹¯gú²sñŒÿQü‡pò‹¬'3úŽ=½ýF×$וŠO´+°ßñ1‡&Úíb7“Xn±[’g·»Táŧ;¿f¿;5«,S£­™ Þkò°bkkfc¹ô:ÙbíàcYOÌ7šãóæ„Í¡á÷z djü‡8ÍL÷fÜ/S£·ž‡ rº>¥ÔèÔßÌ X)ºÔÆY$øóæ;¤ø×³œÆ*lEµ¬ÁÒ*§»áã„FˆÈÝæz§ƒÙÚÿ1{™=å ÕŒ:‡˜O‹\/E]Y r½‚¹ÝCÁ®¬VºuˆLfcºO{ÖcÔü< ýXŽÿPÚGŒ£}–jŒÀ׸+_úŇ´ª)UR—Ñ+ƒˆªµ9‘à×J÷#î±R0ˆÄWL±'º­ÍrÀà}{Z¤O\Ä©GšÕlž tU©Èô·G"º*DqªÕ³n¸ÅnŽEtTŒb3º­_Qv5’“‰b;¢±afª+vÑx¾­À©4ãóÚÅ…˜¨­ÛEâú·¤Ç#Õd¾ãºÊÅ,]#x»mÇ!ÒÑq¾ºd[ãf#º6:ƒ…¸ë%&1ò+Ú—u†êã)oÚ/¯8 ß Æì*õ¿æ¾Œ6¼|©¸Rã øå}‡bºRã ÕǃëÁ¯Å±mã*åç õ²û ò¨yc¥G#î³R¯¾Ãûø¾Âü«v[V‹FTÚ¨WŽB‘ÄOZu­ø\±ñÏj%ǃT]D¸ðj‹­Åg+ÖⳂÐÄJ·CV"½-AÍg;ÕÁÐõð¬FÀʶZŠöƒ­ƒZ ÛHäi>Èr?¨6Ò3í\r?¨fJ´C PÞu€äPe„d}ßPÆÕϰªoˆã¡égÝõXNgõ\3?ˆþC¸ùEלÏêÅp?Ëô*ò±IœѺÅp?É›[8œéóX­‰‰ÛõOòfr­–Ÿ“TU—³Y,qll^wÕM­|©Ö)ÎÓ”˜_O>?0Þhhu‰¼Ü(ωï3‰ãÌí¾fm4&ЇC“º›+yìð,µOˆ«z˜ÅA13²| XåÌTØßíû0¸)ñ¾¦ “ãϘî“ã~w|µˆÕ>7ÖW‹ ÊùËÜmt›4 Øp'¬ÿõ”ímó0˜\B©­ýp^Áb Êàâ*­Rn3À×\09W*EâXŠárDXƹW¹uŠc1È®”Æw]÷5kaθÅ38Øz?¸©7‰b+Œ•É•à×Kê/ƲRÑñuX¶O½­Ñ|,6ŠÝc1iØzë…½h°åO¢Ú´Z2¦ÕJºûGç⑺ÍH‹ì5²Ð<ëUE‡*Þ+ò=sØ_‘ê´_‘ê´_‘ê´WCÖø#`e[- DGæêGkÈX€ù¬Â¸81ê5²bñÈ­Èqé {ûú„Ô¨~Þþ¡€êÈÎ[E `çH`|ê ¼dzjªoЦøä ³îú‹¯9ŸÔYpÌþ#@·EלÏê8Æ‘æý—èUåb“8£uŠØ Ö˹&uÚÅlLNß«¼ŸYò9Lg‡ìÕŸ³R’ÇÖÍ/ùj›áá™<Ó¬Sàœ®œøüÀcy¡‹-‡³e1Ÿ§‰âgmó3i¡MèrwSuç³ÀÝOëoƒRê ‡O–YiScm]œ¦ÁMG+› oSc\ÓÞ§ÇæÁ•…Oõ˜´Z8øb6#¿½=‡þµù‡ZÚOEöŸ<<»E¶À×:¯I÷X„]G"EIŽ õY-“¾¬É[q*jK‘^”›àßVE[Eâú픢¡b’Ç, a­MAò;†(·ÆÌGtlu&0ðkÚú‹Åõj“ ¶mêÌQo‘WYª“YƸPG>ë$[ãa¼]\¶<§G¾<U5*0ðV÷Ÿµ' Da⥠{ÏÚ“…*0ñVá‚>¼üR£‘÷YàbüjÝL^ŠºébkãÁñJäZ2êÅ*3·Ø®×Ø_•nËŠü’ÆÖÚû ñfªQ}mßSF½žÛ _$i[q–ž}©Q•–ŒŽÊYwò3û;Õ³ëì|XÌöØ}gœ‘„%àú¨¢IÛ#—¥eÁèÕ°NZøïúŠmv°Àæÿ©Û_:ßëEð3ÞÞrE6è}Û»à¬\Œâ7ü ›[(£…è¿Gv.X¯„Ž”V.þæŠ/Œ¹E°ƒÁù²ÈÌ?1å‘mÙ dfÔ%ˆ:±­UMñg¦¨[¡‚ŽïÁNÇ`ŽÁ;€OÇw¤NÒ5/ØGö‰F'`>„NÒ5/éDèÕŠ'_ÄR0Å€ÔhœX¾PÏÊ-û{—DyÆéîNÝ"Æ1¸vk$HÇæf´PÌ}xv±½œ…cŽ´¼ÁíÁ1üÆá€k‘oéò»9¢_÷,ôO}úåÙŸgiúÇAi¶e26WÁ©EŒE¼Ïi“áNu „”.Âê…ŽTÈן®l dxË,5az$e[áÁ½1ªxB0*tk±Èòr"ˆ¹˜Sqdõ å£ÿÖøã°"­™%•s­ûúôk“x–"¸ÉrDXƹ^“î± NŠéI¸Ë\æ­t#ºÄ)1ˆ–#º*Kf;VÉà× ·G"¹e&8ƒÕ’ú‹±¬–,D±Pu&0ðkÚ.¶‹ÅõÛ)1Än¬•®ã±W椵ƒpƒ|,ÀõF×[ö‹ëÎ \aa» —¸ÂñPòÛF°8x‘„¾ã ÅC̸ÂÃuqã~Ñ}qæ\aa»\/ ìWEKŒ,7W7¼ý©8[|ƒ^Æ2ã øå}bº*ºÃhÏ*±J¾ûïâºÔv+¥"0¾Ñ«nXÌx5ø®µȬ˰äW╈žµšÄc}†¶Éi Q_a~F¶ ì.ÈÖåk`f>n3¸¯É-LmºÔÆÑ[­AÍg;Ó˜ùê+ð3­Ö&‡¯’ÄnEc¡ˆ¯iËŽS¬ ±_=(äƒ-#‘Z!ä|Ϥ1h¶á â yCÇÚ¸äPeã#ô*›ØY÷}Y9øƒ,##ø³îú³îúŽs™ýY9øŽVgèF94ÑF~Ì<ôŽQ«šÑ¼IàVˆã(gà/Ô«ÊÅ&ûiª±wÀKÕ‹ Öf²W;;0Xþ¾ÔU»êe ©Z±Ïg[­,©…ùþ©»ý'–ýSc=Ï¡X)ñû€ÂóF|~à0¼ÑŸä,¾yM{6 ÖÍûgBÛÌ”øïV̨&7ʵ²À ˜úë,žô8ÆþðÏsr›û˽¡LïVãm¡B1¬ü¬Š‚NZøº 倛 MB4Î}ò3Sõ«ï| Œ_Ùl˜¾ù)f TÖÉà×EZÚ r®pRw]Ìt<è­ÛqÎ Lq «$ëXòÀÔ¼EZèG¸ŒTœ$oU™-“Á¯ktOURcˆ8ÝY+]Çb¯ÍIÂFñuXƒ¡žªÅ&1ò+Ú“U’µÜv*üÔ˜äzëŒþãÅGĸÆÃ}sçnÑusáöŒl7àqó#ýGbº*\r=VR–ý¢úãËíØoÀãæF3ûÅtT¸ÂÃv¸[þkè‹FU´T¨ä}÷ͪ67Xjž*‹FU´T¨ä}ÖjUü«–Õ¢ÑUj¼/qÓ¬f¸Øs¦ZGƒ[â®¶=VbKX\f2¦Zƒ‘TYjch­Ö&¢z骔_Qج”‹1Ö¡HŽ¢FµW›ŠÎ[-LDëe¨9¬çzÄ| ëuŠØiC$Åã‘Z-LA¨ìœµð3¬b±Î^µ‚¡]¡,t=Ÿ¨I Añú†=ýýA×êY¡Tß}ßVN~ ËÈþ,û¾¬û¾¢ë ÌüY9ø³îúªoa^s?¨Ï95¢.¼ÆØ ÑcOBýIŽß«ñ0~)±~n±_-ÿTøí-oçEèUnúúÚüí9ÝSSc¯@wú©›gy¬çÇ{q7`¡N ½O¨t9;©ñßÏ¡ø¦ÑgŽTØ×¡eæõ=ÍTí%„íj2yÅ®ScÛÏÆ©ñ¾ü}y¼)šÔqç5:5gÇ’÷‹äl×I¡4WÝÓ• „Wæì þ¸æ ÿ íÞ£a¢ÚŒî®Õ­†:ãº9ÑRwÝwÜ××£^V+‘È®Š“62Àþóº‚ÙàoÖÕº9Ë)øƒqº­Vºßî# ]oU‹lÏ\2ߊ÷o…˜¨Úë~Ñ}yÁKŽGªË ûÀß•XË6b;¢¡áà×µ&1ò+Ú‡‡ƒê°X±³Ý-¼UxRã øåmÚ.®|JŽGß|Ú¶íW>%G#ï¾m[ö‹ò¨yÛäö1=ñ°ßG9ý‡b³R£E~,l‡g]ïZ/­ô[Þ2®T¨äDµ¬Ö‘à×ä×äz®–°¸ÌeL¥Z9¿V&¢zéªÄÔwM‚Äc}†¶Éb7ƒXäNƨ¬FÀʶLZÙÈÓ`qZŠÎW­ D«uy¸¬å²rãæ¶Xn˜´Œ «- A¨nœ¸ðkD1ïïê¡]¡ŒJßwê†iL†¨Kû?Pu€äV}ßUMñgÝõdçâÉÏÄüwzOÆ™,œüE— Ïâ8ôG²Ž2r éÇ3úŽ02µú“*Ñ{{ú²G&´T“×ÕŠùÀVÙ©±~÷QXïÀê+SпK$V?½–üSës]¬g!`ŸÅ‹Ì³X&_ß_ª|w·p ã÷…Âßã^î Ísãù~ ƧP•>5R“˜ÅA19~lÍŠljÙ0ú×)ñ{Â^T#>.åšÐ¦Fúö5 ñû`zM‡í…·0ó’4ŸæMl¨…ÿüÔ’Œ«]î± EâXŠáCÁ®–í¢ñ}[Rcˆ8]Y-“< TzOºÅHDÅÕb†x«èäW1X°2ÀÕZ¾âüj^dÇ#×Í0_qÝeb—Á¿ Ÿ»EÕãMâÿ¾ÙøXn7aW¢ëh¼_]² ð°Ün¯[Þ~Ôœ-¾A¯cþ¯c ¯*n¸ÆÃ~¹_qnu?ã øå}‡bº(wÂÃvu ¥.1à×чØ]•GÆ6EåC)JŒx5ø®µŠéJºûGçâ‘mÇß‹õ_a~U»-«­S)Q…öŠüR£‘÷Y‰¬F7Økl”K¨ºÄcu†·±i`kê¸:·Àସ=VŠàèg¦ØŒäz­#`eQÁ1k`eXÁhb%[­LA¯!bÁ¬Ybèk‡L^2•a©ˆ¢ô>þ¡šS¡ªÁÎXFGñ c¸ò~ ëÈþ¬û¾ª›âÏ»ê°êÉÏÅ“Ÿ‹'?N~,û¾£Œ ƒûGÒ‘´w'ñ{þ£—2gY£Œé•þS6”NWxXº˜êýOCL ñ2Ð~j±õ= ô²E[¾¦z Š|cœNfË>©ñ†p›lø§Ç8ÇS`¨¬ZÃßê›ÞÍ^øÕæóp¢Ýµy¼áF}ÓÆåMzä™ZTê¨h¢§ÆªSa(6e}˜•65­LÚ¦ku_ÍÊtm¨JzP¢¯\‰+ÕÿŽ;¦Êò{v™õ• HØdñ²AßüÃ(þ?óSüúÍ‚ÅÔ˜â7VKfÑq¾¬Ä,W#‘]&leýçuõãY)-g"ªé3c,ï;¯¨¿ÊÕ&9¾i‚û‹±©ø-ñ³ÝCÀðT¸ÇȯyKŒ<÷œ||Šö¤Ç/_4_QØ®Š“U’ûŽë+T¸ÂÃuqã~Ñ}qä0ºÃqƸ[ü^Æ^>TÜ)q†úçÌ,-Œ«h©QÈû¬Öõ¢úßD=9ø¥G#î³Æ66‹U¼T,-Œ«h¬lˆ˜ÎÞïR¯¾Ãûø¾ÂüEYª•r+ñJŽGÝf&±ßa­²ZGƒTWØ_‘­‚ü\ö¶uÂÔÀÌV·'-|æ)ñ¬Gò=ÔS˜ŽFuÖ#àg[«ƒ¡ž›b0WCÖø!ŠÅ–†"_›ºrã”õ‹C?»”iŠÑjb'[!Peã#ø†0s‡¤xÈþ!,wOÔqÈþ¡•‘úMñ z¡Ø@p9Õ“Ÿ‹'?N~"8 ÏâÏMUMñû0óÒ-¸f\ôŽ3 oHÏ!É­)< ÑbíïÑL¼‡%êýÖ.ñ;~¯ÔÏA®#oæ'A!ã%\ÉõòOä>îV>¶iËTØón';?V,v'+†4qvëÝ ñïLMæ„øÕÂóy¡>0®/6å9•—Á©±N¬þÚLøß÷ë`@ŠÃ‡2Žl,Sµêýd/S>³ƒiPŒo¨þ…~¯0ã+î?xûdé. ÿPÌP0 ÿÄI¿ð®Ýê1ÖÑ´ÿÀ4ZCÁ[¶‹ÅõnIŽG¯š`ƒ¥¢ã}tÊLcäWµ%‹]ꦶmêÌBŘŽè©w {Î>#ƒ|,7°«Öý¢úó‚—U/q…â¡æ\r=VR–Í¢ã}YˆRã øåmÚ.®|>цü>dc? ìWE6Ñ…†ì$a-ûEõǾA¯cq¾Œ6íW> ó†Ã®WØv+¥]}£ò¬Q…÷ØjÅu¨ìWJTaȯÅ*9ušqºÃUjû ²R£FÕ¢Äc}†¶Éi oŠºÔr¬ÂºŽkEQXäW×Z˜Ú+u"ÜDÆtëS:Ùbj'­> Q=iðZ˜‰ŠÑb?šÏtå¯n˜µ°2­“ºÔÄò–ƒcͤa1§à_¡}í cZÊ ¼e¯âÁÎeã#ø„±Üy?PuÇ#ú†q‘üCPçÁC9†ô³îú›knÞÓpÙé6ÎOégÝõ`dÔq“oHæ ^QÆ4´_yàÉÚQ9S/Ô«ÊvÒr€Êÿ+iïø±[“ò¢§Ç³ò¢§þŸ•?Àž¦Ž [ÏØ\±õ·K¾Ø±aÀöh\¦Æ±Á¬ î¼á€ó»âíà\/4gÆ®Àclglø×«„ÉÆSúþï6f¦U`5*|j¥ K™(=Â5 MÊt{¾·ÁL i»\â.SãXÞüç9±¿_fË ÑŠ`ßÙðÿó7>ß΢6 *1Š#¬]ÿçg¾>GtV,,ÀõEnÚ/Õ¸&9¾i‚“x5ín‰â*¢ÊX¾Fãvû>ãºÊÕ&9¾i‚ûŽë+¸äz©ùÛ´]\ø—Øo§çnÑusâMí¸©ï–ߊú1—ùï énª ¥Æ6ëŸ?AØ®Šm£ Ø ý^PÆpÚ] ËÄsþ!Œáé^2?ˆKÇ“õ §#úƒ/Ä1‘˜j¦ø³ÓUŸwÕŸwÕŸwÔq>©¾#sv‹.ŸÄqh¿hçÌ™VhãØwõdƒ‰s[­\à0‡âÅ|ÿªk¿[+“·gÖÊ|v–§-?Cì~X »_§;ªk°gú¦Ç÷³W…=óôýéO^p¸[â|s5Àø÷ãr¦F½y‚™©ØTàõƶ T ­Íš`/S¢-´ãXBò™é§µ˜¤ØßY¢0P‰ï©Ôцü>dc?°ìVjºÃhÏ*±KŒx5ôa·hº¹ñ.1°ßGÏØ_•CÎ;ŽE~c*9ušqºÃUjÚ´Z2¦ÕJ´_hªx,mDµ¦½i Q_aØ®ŠÆ"¨¬MDõÓU‰¨–ºè´1°ÖÊ%ǃT]1àú¨¦-läi°8¬FÀʶLZÙÈÓ`qL`x>ª)Œ9N´1¬šýUËS+EˆøÖë°2­•¤±üÝ\x5¢ε ÂÍÕ>}¡Œàt—h2ñÆ¿ˆc8zA–‘üC‡ö…Eže„dzjªo‹09ƒÓ(íä<”[o#à¬Àh{uS|QÛÀx(æ ^QÆ<šÑdäÒ9E±.zEï3À¬Â8Æ‘Òï ’\ìµs€Â‹¡öÏk¡ö? wìÓˆ¬}OCnÂÇ=ú‚Çõ­õ%69Éõ¸uÆ.Ý{øV'¦¯iß±ìøÝY=ò¨œlÀ•0 ¯6äƒÑîádË>5R%Ì–5w¬Ìdñ°é–m tM¶Œk^Sãí«ÜÁWëîüŒÚO" hE}ýƒå4e䦤÷þĪ4 TìVƒþ¸/`¿ð®Ýê1ÖbêN27ªÕk¸ìUù©,cf"ï”$Æ {Qq·Õdƒ|,ÀõF×EÖÑx¾»e ]aº½K~Ñ}yÁKŒ,7`k„]m‹ë¶A¾`z£k¯¨ìV©q…†êãÆ÷Ÿµ' okØÆTcÁ¯Å·hº¹ñ*9už±ºÃTñCÓ‘_ŠTr>ë<~ñY¡_ ¢·Q…÷ØjÅöåY­aÈ­®R£‘÷Y©Wßaýü_a~U»/°´e[)QÖÑšÄÔK]tXÍàÕ¤n°×È­, }V\«EeÁê´Xš¶ø±4=mñ~GªÑYpz­#`eQÁ1k`eXÁhb$kU©ˆ5ä,@x5‹,]¿©‹ÆRÔ~ ë_Ä1Ó«7Tùö†0sÒ^ ¼dÆpô„Ô¨c#0þÐǪ…“Ÿ‹>ï¨c:€}•S|U7ÅS|U7Ä_oà¢xœÏê9Fgñ{~Ùæ÷,;GGÚ¤–Ž_‹hsú±G“­‹¼Nߪ“ÐKe©èmØXûÏAAcö~CáSù»šÅceðmªÄõ~¥bóãp†'_‚¯|y] ®š3£ùë“+Ó© J™©ÚPS#U;€Š„cUt¥j…ª~…8¸)±µúê|dõˆýu27ýfêˆ ±õ!å4ƒ¸mCÿìwÖuòK¼ÊÆû4Ÿ8Z.Fü?rRnð}~£ê'q µ†ì0« .Óã`±r7a…XQv˜¿í–.Fì0« 4­ºÃö¥Œ[‘WmŽEQXÚô~ë†#ca묑$ìn°ú¨¬M †”&‡ªÑbhOŠÌ'-Ðôk$åºd±t=ÉbÆãÕ‚ÄИiAb¶U¶ LHÊ"´+ƒ ¦E½ò­–.‡ßÔ1‘œEh‹¦.¾¬PeôîÚHÕÅh‹a|‹h!ŒŒãí‹6…·šÈÎ>Ж#Áù²}¯»úC‡ö†0s é†À·iøîOÇw¤üwzOÇw¤üwzN°ùzGÎ'Ú8ÉÈ7¤L^رAï}¢sŽ1o o.z(—¶eÎýD¼æì8ø±ü¢_±òrð±¶>NZA1å†öÔTèô2i›qÍcô£_,e™Ì˵ˆwúˆcP˜ð±;•‘žrëwGLN2Y:<Ý],S£}0™ñ25S° "ÔþÜ,Š,cmæ÷ÏK%2ŽÄ‚dkðð,bmg.)¸Œ‰W‹ïÏ?8‚£Ùžf,¸èŒÂ#u>p#þÊûßÌ‚E#q+6N¨IˆÔ^/«sRc‘ê²_QØ®Š“_4Á}Gbº*Lr=uÆ_qÝej—Xn®…2Ì|šÅceðmª™Ä|ž9S#ÏŸ_èÖ7:•:5ÐÂgR¦FªCR˜x׻͙©‘«> JŒcÝx´Á”ØÞqùæÙ Ú·§¦Â,¼{§×ÈS£V[ÞFÄЋÏÎÐ>ÑU¼#¡ÿæËCŠø‰"bÈHvÅ=¥ÿžÉÑ/KnÑuxÅÅöÆ5ÊÛ´]^1Rã øåmÚ.®|>цü>dc? ìWE6Ñ…†ì$a-ûEõÇ™qÈݬ%-ûEõǾA¯cÂûì?µbûÅf¥Æ³¨xÆ¿0û ²¨øÆ…†Ñµr•}ößÅ E£*Ú+"&3·»Ôa}öÚ±oZ,9Sè¾ÂÑ•l±œ<í÷•ºÌMJ‹ì5ø´ÆG*ueÁê´ZÑTV#ùõÖ¦6ŠÝHŽ¢b´R#¨˜­¤ñ­•¤ñ5²Ä"±Ý9©Ó˜àg¿êÅ| ÷ýX•l´2ˆ­Ö¦ ×±_[¬R%ðl‡èò±A” Óº ¼r+DqàÖˆc#8Žü!,šÑÞ2.:C9†ôƒ®9Ô2²?ˆc#0þÖwÐôÏMV}ßV}ßV}ßVa±U7Äqøx(ßgÄþ#ˆh'»£œÞå‡hãGK¼+ÝïKéïÊÅÛߥ‹Íf·w?5L¿éô!zœÓÜÛ3g§G˜jmšÆõ ¶v©‘Îüɲt±/¡pÆz…‰•²ºüÏ¥‰ßéàn±¶éÆ[¨Æ7Óù6Ù%25gÁ©S#U;J |j·”‚›œûÖå!·§¦Â3£XÖÆlˆ¯Ãב’ Τ4ÿ´|ð5 è $GÆ *Ñ@a"½Œ6ù½Œwø"½Œ!áà×±Œ˜Çȯh:[ªƒ)q†úçÏÐv+¢›hÂÃv0—Ðv+¢¥Æ«׃ö¯P°ºÐ}UêTr>ë5½h¾·Ñ1ÈR£‘÷Y¨×¬5V­«E£*mT¨ä}ÖkHðk|WØ]’•häWáR£‘÷Y‰¬f-;]p´ÆG*uù¹ì-aq˜Ê™c8äWä–&£ºÑbj;­&£ºl‹1Ö¡hb%[©ÔHÖ«ô÷á~ƒ¾ü-LDÓñb¿Kv¬WÀÀÖëC\:bñÈ­µ±½ ûAàÖ‹‰@Ä|!ú¼¡ŒY8ÿPeâ9}ǃZ!ŒŽ@¬Æp5¢ ¼dÇ¡aÚ÷7h2Â2?zj³¶ƒ UMñfËÆÅTßÄNƒ¶Yéª7ùöã9öŽ2r‡Ôr½®\ôQÆt†—ùScÙÞ^îŽw‡¥³°¬ÔÈí¼ü…rv>M7¨ MÐöe诗Á´NªuL€©,Xp=š’™þ›N…2;ã}ÃÚ^:•:6V— ›f§F½á!¢™©ÚPS£^üHD©Ñ¬} …ªly…~ÈÄ F˜¼^õç‘j`Ea–x{>¯ {üÓí,€_øWnõë ’ù”psÀhÚÿà7íãRó.0°Ý®÷Ÿµ' okØÇ‚+ØÂZª½>цü>dc?°ìWECkF°Ï~Ñ}qæTaȯÅ_a°çX¾Ã±](Bëí•bŒ/¾ÃûV/°ìVkŠüÆTr>ûæÕöåY­au¢ªÕŒ÷1:Æk‡:e¤x5¾+ò=sØZÂã1•2Æ"¨©ÔLgN¥G#ì,Fðkë¦0<UˆÞªŠÄoÕEb7ƒê¢˜Àðs¨^±(ƒTU¤±­Õ§"ªåŠøˆºZœÓUŠø¹,R9 Cô yAöƒÁ­)ˆø6Cô yCÖƒòƒ/ÑC<Ñ ãW¢ÁÎý^PÆFaý¡ŒkH:ã‘ý@ñø³îúŽÁ;‚v;§à¬û¾£Ÿ`Ž?/däÄvØæÜ¾£ŒhÌ$´rGÒ_å\¤Nòð±p‰sµœ…Iè &ý±õ= » x…¸d§GÞ¦É~¬hqì¬o27иbc¨X™[+¯ÌúXÖçæx“ ¦§Gœèækè׬&uS#U;+U šû3*loWäÜ©îvª±!E5R…ŒD3³ßÜñÅÉõÿ9õDà-ÿµdNtµÿÑ€¥/úæ¢ý¢úã̸ÂÃuqã{ÏÚ“…·È5ìc.1à×цݢêçĨä}÷Í«î;š—Xn®<^ ~-«EÕ¶ªTr>ë< {Ú ì.Ê£ãņѽ©Vì5M½h°åO¢•uöÏÅ*9~<¬f<ü_a~F¶ jëFTËüŠ¢±5×MV&£ºl†6ÙFðjÏ+CÑ×â²àõZ+.U¢üU¢¸:·Àà±[+müX•l±(ƒTU§"UºÄÔwZ-L keŠøÖé›[ó!ú¼ ûAàÖ‹‰@Ä|!!ä¨c·Ýú¡˜dgá `ç ¥Ú ¼dÆ5 ëʸäV.ÕMñg¦©†@~'ãL–}ßV}ßV}ßSñÝé7 d¡·‘ðQŰöŽ|\°í¼yñé¼øñé¼Mh¯ts¼=,Cà{Ý\½úÙbNèåÚ™¢nŸáW'cM:<ÃSlÖ7­Ìè,o‰]øXæMX±/xùoKûsŸ¦8)ѯxHh™xÕ[2d§Æ®Á­»)Ñ®‡é‹)±~*î&K1Õv=‡Áª!4"¾Üï-çDs\%.ªö´jhAvœO ïÿè-¾ƒ±];áa»:†RÞóö¤áNE}ËŒl7àk•ôŠè¨B-qèÓ_Žý¢üªq¡È¯Ìq²/<ê9ÏzÑaÊŸD<Ç!JŽGß|Ú´·¹~GªéJŒ9ø¥Xo°Õ4ØXr­×Ø]‘­Ê•häWáXš‰ë¦«Q-uÑc7ƒTV‘ºÃ[â´°5õYpz­¦bµ¹b>uºÄ| ëuˆøÖêÂx(«ƒ¡ž›b0X•GÅ­•c¡ˆˆ5dÖ&£IÖ‹S:Ù;kàg[¬R%ðl‡èòƒíƒZ,R%ðl‡èò†=ýýCô yC×Ü;Cô yC‡ö†=ÍÚ ¼dÆFaý¬ÀæL³îú›†é¦@~& †×ân=&ÙÉý(-Ÿg}`"¦ðˆá»øGÐ3x*’\¶Hã:CKü¬M¢w’ÅܹÙbo°Ÿ•‰ÐöuÝB1è{9,oZ ™¬jÀi3ªc ۢ͘ƇÊ™bÙÈ :X‚¯X–6¸bc²Æëðc3¢*Ý&ÎJ™©ØM¼kÐúbÁOŒëAúbÊ|ZpªÆe27×›:(qØjñG$.\8#éÿ¶±êRÿ5êRÿÑ ~Ñ}qäM8XmáoðE{mZ.­µR£‘÷ß6¯°ìVv(Bë £<ªÅ*ûì?¿ŠëQØ®”!uöʱc1°Øs³¥½h°åO¢ÖZ*­XÏqÓ¬f-;]p¿#Õtµ‡"¨¬g¸‰ŒéÖ&¢Zë¢Æo¨­#q‘ÊYpz­äzZØ›…ŒþEðXˆ˜Zhž´£Z'­ˆþEcºs"[ûµb>uºÄÐõñòLZØVËC‘Zj­%ˆˆÚ=ÅZr'û¶Kàk|Ö)ˆø6Cô yAöƒÁ­ÆFqOÀC!ÈʳC㿨~¯(cÜwõ ‡#ú†3¬}¡Œáé  ¸¬û¾¬ÄfN³¾‡ VŽG’³îú³îú³ Š8€Ðöë1:Ù>ÎMíÃ.ðö÷cyn$Ž1 0SãÖòXØFš+o~–'dë%‰Ù‡"±;>†«{7;Ùä)Ñæ›f±½h&Lh)Ñæ6Û 0³%‰X ñ+ӎלL7X—ãúq–ëúŒñ2ºjdkÎv“XƇØ1*|c\~˜°S㙪ÌÈQSqƒÏWXÄKuf¨æ-ßöìžÿßÿÜžÿßÿÐZ!FÆÑaÊ·ŠÇ‡"¾ŒO|l7çQÎaØ®”«.=›Tln°Õã‘cÚÆ®:C„z¡svØ6?}ßS±Ø*›â©¾*›âÌNƒ¶Eöð '‹bÄFÆÝü28¶Ñ9Ç·„FñçǤqH„n ~d±p‰sµœ…‰¹èMbt#ÉȬHl71ébt=œ–7­¦V7½„”èç¦}dV%FC²±9ÂÓnAL´í<‡K oQy)Ñ®Î&^5{÷i’›T.`§Æ5Çé‹2/:¯.D×5TxÛ}{ÊhæâÛt»ÉÇþâǨuIÿüרuIÿý¦|ÕÛa·h»*‰QÈû¬á#ûâ¥FŠüXÙó¦½FÆÑaÊ·Š……¢Ñ•m‘ÛÝêU†û SAoZ,9Sè¾ÂÑ•l¥Z/´U<« ö¦‚Ò7©×äzç°µ…Æc*eŒþEQXŽ/´Vù¬MDõ§ÁH;Ø«™bj;¦ÁJŽ¢G:˼ÇuˆÞ cºÐÄD?U¤±­×è>u²ÔÄLV‹SƒZj±_=ÿV#`e[-N`ÕúÞÐ} ðkEŠD b> ý^PÆp:KÁA¶‘È­}ǃZ!ŒŒãíÜx5¢Èä É cXzBÐÜÄ1@>ÊÁÌè&Ûɽ¡pl~'ÛÉý,û¾¬û¾¬û¾¢vn-íüû"4sǤqh¿hœÜîÄBn7sÂ8ÉÊQ´ãw<,StØ5^.Þý,M¢w’ÄìÑXÑÜí!áNf{ ³S£Ëîh…:>­¶gHðø;>V'8ZmÈ,Ol<Ú§FZ~e3 Ôè×C TØáóæd©±æ²ajŸ׌:Ä©±Ö£Ûâ` ñ½!˜Ê«È™1p LµèÜ΄@ÿâÀdð×þÿþ‚󥜀˜Å üD̆å*ûì?¿ŠZ*š*Tr>ûæÕ¤x5½Ëì.ʳP…×Ú?*Å‘9ÙÕëHÝaªµ}…Ù,gŠüXš‰ë¦«HðjŠû ò5°_avF·+X]h­±XäW×R-Ú3§Íbj'­> AØŽÇ™bj;­¨ê%­‹CtýV’ÄJ·_ ï¿ ô÷ájb FŸ‰Ìx5N±_=ÿV#`e[- ¢+uúŽëDíǃù¦¨c¦?V`”DÍÐ} ðkD1‘œvŸHeÌVhcÜwõÐ5å gPþÐ}Ç"ÞÐÆ|ŠÑ `æÒ8Ôûy?¤1@>Ê©¾&a±LÃb™†Å3 ŠÎÚÁYŽÁ>ÎMí›K£‹aíF7–‘Ä4£ÉbNòÜ#pì“–&Ñ;Ébn\á 5‚¼çÐ’ÆßÐò±½ÊááN»mÒ!N«m™ÒbTd;*dyÂùœ»X—`wóºÇ›ÀÅOŽ Û ]McCŽ€’,c_a>9𬄿9æ«@§Æª‹¤3ó¯Èȉ6ÿÝõ©?ÿ¦«¯Ì‚%‘¿:åoZ,9Sèµ…ÖŠ«T¨ä}ÖjU÷ØØ_’ÖŠÛ•ˆâûEošÄÔK]tXÌNÆ¿&¾ÂìnV°äUˆø‰…‰¨ž´ø,MGu¢‘DŽt˱+¼Æ¬FðkÖ‡ƒT]1kg#MÅ1‡ƒ-ª+CjÉ«ND«uiÈŸîÙ-L keŠøÖë°2ßñ1xämð¯Ð«¶ƒÁ­ÇL~¡Ÿ0gY¡Œ h†29¢¸äXëA dgh>ã‘ohc#8ŠÑ `çZ ËÆGñ df>¼‡’€ØÏO·“úPÛÀù)Øì±Ø'c°NÇ`³ÓTN×Õá»øG€{ö‰MÎ¥¼"ŽOˆ#ˆð<#pó%xq‰èt±0‰a÷X¬M 7šÄÚwÏh)‘ÚwúP§ÐörXÕΪt}Ûl†‘ QÜø‘Xœ·2MóS#~™˜¶Jt|ÐLÂõ>5wǼ•6<µg!dTø¼ê³1‚cUÌâÁ8ñª¦rYšOQï´#Ï =×þ1@ƒÿ$DIˆª9ûž(Pâ$‰~r±}k&!r•r+ñJŽGÝf´Ö«WØ]’•r+ñJŽGÝf&¥EöüZFã#•:û ²5¹XŽ/´Vù©õŠÉbj%®º,Fðkb˜Àð}TS¶r4ØV†F´¹XIì25¢c ·üQ®ÂÃö¢®‡­ð8,VÀÊÛx2Ú¢´1¬šýUËS*É,WÀÀÖë°>îÔdƒ/ŠÑ~¥ÄûAöƒÁ­ÆlœFÿˆ~¯(c¹A·ŽEh†0x&²CY!ŒàkDx¹‹úCÔ3xd$\PÇå䪛ÐQÛÈy)¸nØú|'ã»Ò~;½'ã»Ò%o(Ü7Y†Å[Ú,´êYÓáFfŽ!Mf± Ñ &Ž-‡¾–&Ñ;Ébv~j±/Äí!ác_‰ÚAcsflòèú¶Ù V5FC³ª›œú)‘¿OY—-’ŸiüœX)ñ—~<˜IOŽ>{•7Þç¡°©Ñù_Žb¦FÅIÉŸ¬´d)ž«ô¨ ñb.ùÿvÙÈ%_ pH.Ø_•nËX]hªµcdDÆv÷›¬f¸Øs¦ZFë U«ò=sØZÂã1•2Öò*bj%®º,fðjŠÄcu†·±i`kê²àõZ+.U¢ÄÐõ·Å‰¡ëo‹ò=VŠËƒÑ«`®†zmˆÁX>‡£Y,VÀÊÛ·•iÈ•n­9­–(9ÀÖù¡Ž˜ýA—ŽEh­y+dh<ÑÚD b4 ‡èò†=ýýC8¶ÇHc8zC8¶ÇHc†o ºkgC‡ö†?% ²À¨mà|•S|LÃb³îú³îú³îú³îú³ ŠÎÚÁYŽÁòÆdqŽOÄqžÔq KøFhŸyî¦Di¼–&1=”èïµ¾V$#€örS£Ð–ç,Ö7«,™écTd;:©Ñ÷m²D,jòt…«¼ #jÅÇÜüœYM_8æa TøÆZ`¦Õ5Òd•:&¥Æ¹8>5Œ„çÆ«- d j¼ÿzÇÖhpФA¯ýºéæø# •}ü)Ùgßß½Ô«¿ û ò5°_ahʶXÏäU‰¨žºj±5×]‘¸ÈåN¿#Õh¿#Õhµ°3QZÂëE|‚r×ÎbŸŠÄ#ÝE9kç1OˆÅb>uºv×ÀÏKùÑb>uºÄ| ê¬VÀËJ&0ÎUŒ3ZˆƒVMZr'û¶H>Ðx5¢éÔxäV‹Pc­h9ÀåN†29¢¸ÊS¢÷ýCìƒ^PǸïêdò†3¨wòPÊucÚ/¸å [I¶òoh§ÂÏMS±Ø*›â©¾*›âÎúÀNÇ`‰Ù¸·´@Ú#ˆhЉcÀä#ˆj_Â3D虣ˆGSY«Âu ~¬K,‡&!LòìŸ!bm¹‚™kå´BrŸ¦K¯§%Yk2¦ÇžíÈd¦Æ¯Ã2唨֬ù˜;ÁO4íy„ ؽKäØD…24þô¹ÊÞfæ —Œj³x¼A €jª@Uÿ¡º•ÿ.ì}f‡ªDsBC¶)èÝ/ýb EÞ®ZÑTV6¢zÓæëQ-uÑc7ƒTV‘ºÃ_"µ°6dV#‹­µ‹[Ȫ+üŠÆ8¬GÄL-F´OZ S4üZhž´#ùŽëüŠ¿”å¯çíEb¾uº±}’=p±[*Ùhe[­LA¯!Ú´C1ú³G"´Z¸‰ÖÈcÛ÷A·ŽEhƒî<Ñ gXûé §#ú†23íÜnbÞÐ;ϑϤ1ƒ˜oH]ÕŠΠk09ƒÓ,û¾ /|"ðŸŽïK>ï«>ï«>ï©øîôˆsBÛy‡aí›Øp§¹á¢t ÌÑÄ5/ábä7žëÛ#ÉX—Ì’~,MâCà%ábo•ÂUzk„Ö7f{ BrŸ¦KO“2¶Õ65“µb×Y˜ì¦Çöq‚Ç­vs‹6-] %y%NŽ>¸ “çYBÁ™ €jª@Ñ”˜]£ï6ózÿØ™ RâËq ´Bbpðs­–‘ºÃTWäz_‘éb?‘_]JŽ¢c:Ýbj'­> Aäv<øR#±çÂy>ƒÈìyð¿Aß~¤ñ­–+â m³ñjb EY$æ9αŽkð3ßõb¶U²Å#(ŒéÐý^P} ðkD1Ó«0J"Gæëò­Ç¿¿¨gÀ¸é `ðMd†29²A÷ ¬–$rd†1¬=!°?ˆcÜzöè·”Àþ(-<%Tß/ŸwÕŸwÔÛwô³îú³ Š8€Ðöéׂ,´êÄCO„J1;ÌÑÄ5/á¢| æ¦Dy;Ëu1Îç¡V¬Kpyî±:ÚÝ'B[œ–7CiœV5FC³ªÆ¯ŠŸ½™ÆËTØÊ²ºÅý¾2{Ìc%>5‹ù7– |j?·°S#Îÿ8¬loʣ̌e޵ç÷ÿ€´É3 ü€£¨ÃaP]H•fhûͼÁ EËX]h­±XäW×RÄv*æXšŽé°V’ÄDVñZh–´VƒÚ%­¡ˆˆ:~¬VÄD[gê´–"UºÄÁÁòÕ‚_Qfc¥ˆø‰ÖÉË_ÏÚŠÅ| ëuŠØVËŒ¢3§Cô yAöƒÁ­+`e½Û+Xè\Õd–ÐÖˆcßßÔ?@×”1CzC8¶ÇHc†ô…×ø†=õí ¤ØÇõ£ùô†-Áé6ÞMí±Û…žš§c°U7ÅS|U7ŘlŽÁ–Ä·´]hÔº8†€÷qìŽ!¹ð’3DøÍb fw–ëËKp&±6€ÜÅbm¹‚™t´Ÿ"JtkzXú¿g+7BË&jÅC V=K3¤-[–@</듧ƹŒï2’™·×“b=ί¹ÍÕ_!ýUÿàB¿åÁÜ ÿ íÞ£c_ûuÒÿÌñ÷ö+%ˆÞ c VƒìjŠcÕEb7ƒê¢±ÁõQLaàËjŠÄo±Ýhb"ŸªÒX‰VêAäv<øVœ‰þí’Å(Ιb¾uºÅl «eŠFQÓ«NDÿvÉbƒœXò±H” GÁ²ýJ¼§n<Ý dgheÌVhcÜwõ ºkÊΡýùC)Èþ¡Œë1A‚ub†3«k09ƒÓ,ôÕ7 ‰ø£ñÝé?Þ“ñÝéfB&çÅË0Ø£ˆèh²Ó©dCO!GÊ8‡'”d‰Ô £‹6úXä¦Ç¾Íb_‰ÚC%ٞñõ~äl’Çfq±cµ]!­Šl~ø'ÂÅ­< ¢Tøü:tæ*t}S6’¦G ê~p-E(ÿDºËL¿é 1|(TïUC–°ïý²¬ @ü€!-“6¶#ç L[¿â #¡ˆÞí–+`b7üLÚØLhßfíÈ;e‚ý‹6<â±[)[1ú†óv'Aý l²\Eø>´@m/Ÿ¿.ëxâÅl¢5sÂû@ýÑ–/)Žû.ƒanEh€þ tyî…㡪ä Y ±Üs$1dGh¬wÄqˆ VK0Ø °Àõ1‘˜S0Ø ¾-ÐtÂNDz³¶ƒ S/Ì6)˜lS0ئa±LÃb‹-Õ‡lˆÞܤDÛ¹'¤`˜Ð{‚#-áÑ—¾æ¢0‰Ý¼?(ˆh§¾Hœžnvv ˜?­„þd÷åÄõŠCùm‡eï’c*²ЯÊÿWH+ã¯&w\èÔòÂÒùØž"FH\e €ŠcWy-å<àÜSq`D’rø+è2 kQŠø‰!€ÿ|°$HébbÖÎF›Šc[TV+> Ê»Zˆƒ§ê´ägã|•§"»d±_(ºNÜx?šj±_9ß~§$Í­ˆùŒ“8b"+ue1÷e‹¼9ýA¶‘È­ê FŸBƾþ•šQZ û´CÇÚMÌXö†23´Œyô‹Æ®9CãÒƒØÅ½ §ò³˜:eãb›o&ö˜$Á3#ñÝéfLÈFÆÝü2fqí¦ug†žB0Lð9Å1Éä#$N¤xMœkÌNÖn±-·Ð•^±7ô<©ñï H*œ€”–=g2ЕŠ|k-ˆ}–-yÀ3X•§Q„Ö5Q±Ì"B6[S“ÿÁØúÍTˆ ÅF ‚êDƒs(œßò4%±Laœ«f±[(ƒTV#b%[¯ÔwZ,WÄ@ÛgâvãÁüÓUŠøÎûõ9&mlâ>p´q­ÖIàÖˆc¦>ÊÍDgAdœ‹éÇ¿¿ªzú†0s‡¤xÂcŸHc8zC8¹‹ŽÇ¸õíºÏýCÕ´1˜?4-í>ÞOé:ó°U7ÄËÆÅ3 ŠfÌ6(ãÐc´ìvÚs©dq KøFáØ{GÔ·„fÌ 1O8Üà{Xœ“µ›«Ó¾ñbé.HXýq23SãYYªŸð,½cγ6JÅ‹ó¡t\©‘ü× ØBHÒy§¸f‰&ü#¯ýºéæù[žQÙ®7V¿öë¥ÿ˜?é6­ìY,H‘ÒÄÆKQú¿QÝh±_(ºNÚ´X´Çê ´ŽEh¿R¯(>Ðx5¢ÅÞ<þ/ÔÖ¨cƒ§âÈäiø²t,Eh†=ÇcÚú’¯(bÐ^ÐÊøÔ1‘œ}øCÔè!wVH-<%f0zdŒyô˜$YŽïK>ï«>ï«>羽-‹d!7—<&^6(ÀbxØŒòáœjdw8Ü(#ŠË ÌBijµ›«Ó¾ñbõµ¤&-ëkNI›zÚÓŠŸ½{XõœƒÂV¬_½›¢ÁȽl4´M›ÿ…`)ñC?Ð87@ “2Èè’fAù"E!=Ä l±AÎ·Í tÇêͨ­ê FŸBÅP0?Nèc#‘§âýAˆÓèC㿨gÀ¸é¼ d;ÈÎ5²n6\^°@ï>G>Æ5z]vÀ¡ˆŒÀú£·S% ¼z!ËÉYˆÌ2ñ±LÃb³ Š‚ÑÉðS0ئa±FáØ{N¼ìd1ŽO6£Ï”dˆÔŸ #4|¼ÔÈöw’›|€±q›miLÛÖÓ+§ò]cõ­ç)ñ¯£2QI…ká‚%1®õÿá¤trSýðB‘l—àZ@_ûuÒÿÌð!n†¼&/KQú¸å›~!Ž˜û+4d\gN„²<Ñ gXó?T+1î;öPÎØk1hG¯h]Ôƒ^PÆF`eÃÇ”3¶ý!ˆêÒ³ Šm¼›Úq‘%3îúyØ'c°NÇ`¢´ð<HZubÌŒ¼lQŠÝî(Å?É /ÌÄe{p¹Àö±y$l$±[ŽJfÞ¶™X½?’ë§ò]»Weñ(’ft³þ·'Ù(Iÿ°÷8Ÿè÷€×kÿnº_ùƒþ·x BÆÄò†1¬9—”%˜äVˆ>ãÁ5’ÈÎ5²pbÅÐÆuŠưC;`_Ò·¤1øy(]á ´ð|•´™†Å2ñ±Y÷}Y÷}Y†Å3 Š8†€÷ìvÅ?Šc“ÈFhðÜÄ#‹’|#<[`71XžIÐÉMŽòÅå¶™(†^¹‰DÖíîÛ ýÃŽ'ÿ ?Þ]¯ýºéæù^ b@Ñ´ÿÀ9,€±Í^2=~¡‹qê]ÕŠΡý”PÎÖ1K1Ø&^6(ö³ ?ÓùNÇ`ŽÁ;‚uç`‹-:±fFa±F+t¸£ü8FŒ_˜#ŽX€vÐh›é'Ó"KOüZ¡Ê Ùtõÿ·]/üÁÿb‡ïïRWFÐÿ æóºÆà'Ü9öŸ2A¶ž•˜N™xئa±LÃb™†Å3 Šfnp=§c°OÇw¤Iv®{XÞ$Ì“Ÿý R-’ü Hh’fAùÏ[&?ýOûJŽ¿öë¥ÿ˜?âÜ8âò ýà5ÚÿÛ®—þ`ÿÅJ±|ÂB¥×þÝt¿óü$»ÿb©þ‘åÚÿÛ®—þ`ÿ…"Ù/À´€&€&d ʸÛù¤ÿò I™äesoÍc¶£hÿ€+b¢þÖ¨}í×Kÿ0È‚}Iá`ÇpŒe„áÈ[¸0|õ²cÿÔÿØÔe‚©cÿöÒ€P6€ÿø~榊ë8‹d¿Ò†ž¶LúŸõÅ}Y‚B¨‘ ±^ •IráË Ç·qÿgÞ,0´ªBd»ýb,*Ÿé]…)ÃøÄ‚[¨Zf¿ùáÁÈš¨KLS¿5ÿ·]/üÁÿ+4±<£9ÀØ ÈBçý¶À2£A©Ô«1`·ÆP‹ S‡ñ‰¯EtÉÿÜx£hÿ€FÐÿ 4Ÿ!ûgß.Œ° y wéÀïn¤ «_ŒbÃS‚4øþ ;èpJ *@è×þÝt¿óýÃâVX‚¤—¯OýiANú°T&8““ÈÒX6€ÿøißC€‚V‘§ÃÄ‚ Ÿ÷ 4mÿ𘠜£Ò4øxDÿ€Ñ´ÿÀNú°Ükª_¿Â”áüb@1`‰€©Á=#O‡‰A?÷€Ñ´ÿÀ X"`*pF¯ÿþ$ÏÄ÷û“–8P2œ?ŒH·‹2©n™Á…@rˆß«¶ôQ¼UidBˆ«™L±ÅR÷ÿ£hÿ€”áübA¢Eñ`Ažð…Ž*1Wßý]Â1–‡!nãÿƒ÷êŸ×ïàÕiP™ä˜Š[Å‚T·Là 9D‰¢Œ"ßÿÐGd (NÆ$IYUº“Ú‚I+*·øý=¡ˆ0 e8)oeRÝ3õØH"‘%¼Ú'ÜZ£hÿ€RÞ,Ê¥ºf¼ú$Õa4bI+*·øe=¡ˆ0 e8)òn¨/ú†½ 똃ÿÄxð«|‰²F©p—½Gf" \»/a@Êpþ1 ¤ÍP_õ z±)Eâ¯ÿÇÀ[߆ÄJ`‡¿Œ©oá@Êpþ1 3|T\“⬻%ÑÍQ¨¤ L’uK{„½íþ¦ŒÙü§ã (NÆ$gˆ‹’|U—WXntÃ;P+•Bš=D³ã¬Žm"¡UK.iO“uAÔ5è™â"äŸeßû±þ XCc&LФb´õÁ{ ‚l|dΆ̄R·F'lŒ(¨ ˆ`Øÿà?ÿÙ./Doc/Tutorial/render.sh0000775000175000017500000000023112176660653014761 0ustar vborosvboros#!/bin/sh pdflatex paper bibtex paper ./makeglos.pl paper.glo pdflatex paper pdflatex paper #evince paper.pdf cp paper.pdf ../ESyS-Particle_Tutorial.pdf ./Doc/Tutorial/hopper_flow.jpg0000664000175000017500000012220112176660653016173 0ustar vborosvborosÿØÿàJFIFHHÿþCreated with GIMPÿÛC  !"$"$ÿÛCÿÀßž"ÿÄ ÿÄV !1"AQ29UaqvÔ ‘–¡²´#7BV”¥ÁÓð±Ñá$3Rbñ%5Cr’£³DEStu‚“ÿÄÿÄ5!1AQa"2q‘¡#±Ááð4BRÑ3ÿÚ ?rÉ™µ¢<† ööWr¶÷}òÞ¶,öí'm6ž:% Ò©¦¢´ÚZijJ”¶n²`ºûlMè½€üZtÉóŽÙýsoÞk2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢‹N™>qÛ?®mûÍ2|ã¶\Û÷šÿ¢ã¾‹N™>qÛ?®mûÍ~ Æ÷ûŒo {¿Ãö×lŸÚVä¿pÿÄŽ$‡Y .§ˆ§B:¼5þµ´&â€ôòŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠ@>-:dùÇlþ¹·ï4|ZtÉóŽÙýsoÞhþŠIºïCmðÝôâ°Û©XÎ9ˆb\Š·q ar?&;¹ u)8^b’R¤Ž¨=m)Ù…Ú@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿEPQ@QEQEEPQ@QEQEEPQ@QER¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%ÐýQ@QEQEEPQ@QEQEEPQ@QEQEEPæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿEPQ@QEQEEPQq@PHPQ@QEQEEP ›ò…Ïö“û’éÿ¤s~P¹þÒc¿r]ÿÑEEPQ@QEQEôE\P\Q@QEÇx  (¸ï¢€(¢Š¢Š(Š(  ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þŠ(½QEEPQ@ø=ÜoOd6óÇ0üÃÞ œäpÚ&¶â¤´„·y(JMË%N…rºyë_º7¿-)v݃=²»ÞnnÆ ¦ñƒˆ²¬2; ©o6ŽR„‡„eI²ìT˥ͨ#ŠÕ¿æ£ÿ˜Wà6¯x”}¹VÅlv̈±¨ðÓ:yzx‰k%-…¹‘d­V6HO-M…sïðÖÂjGE¬[Ñÿ…ûÏÛ_w7‡Ò‹zÑ¥«#øŒ\ ®ka¶ÒÔ›ö46í4êöx¸fÐàØÄœ^8ÙÉØ µDÆbN‹Dp xº%M¨R½¯ÐlÞÕl¾ÒÛIƒã!›q|sr2ñdQ·ÏKf;²­mîôwž¨8þ‡[iðC† @%q1 Т,;Æî8€•€¤‹ž¨6¯Ül¦$ Û½Þ`8NÓâ0e7…c˜’¨ò›i)[Í)²”­6Ÿ6¶·}Ý( (  (¢€(¢Š¢Š( ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.€袊¢Š(Š(  (¢€+ñ›î™‹aÛ¢ÚÌG~<|B.!öÜ}µ-!(ARÀ P9ŠB‚MôQI €Aý~{y<¡ÝîÒà¸i•‰á2¡²V«';Œ© ¹r(yº¬Gz÷/±ÆÂ¶wi“„Æp8ì÷`)¦ fKAd¡î+¦î,d 'S_°ÙÜWyq¶XÇv3ðÕfâÉ´HqI)³f23]VQ`o­¬-»ÝŒÅq½ØìζØfÐì´í‚Ö„aÛD¦|(!¦Ð]&+€J4 Õ=nW¹ýFÎnçÀ±¦1XØÆÖIuŒÙZ›´S$°¬É)9›qÅ%V $\¨“îoap-íî¹íàícOLÚ=¢“1è³Öúøjû2†?›È·>Ûò®Ñ§j1±ÜnËí.òŸžüe³!Õj§VË«h¬žÒ®Ï®¿'²˜.ó·m²ØžÁlÆÈ±ÁL™KÀ1a‰²ÃQZ}jZS!µœä¶¥¨õ³ r¯Õîëg±­ÜlöÃìƒ#‹!Æ,%%¯t'ˆ–•Öp:êÖ,Tjh!²ø&ÊAÅw‘‰m¾æ1í¦XÛe%¤Ø6ÕeÜs|ØZ±Œ1Ý…ƒ´n©÷%b±qcF +þX}§Ä?­”(ËsªÛ7±{W»ÍÆìæÇ`X^ µoÀ6ÅaLYmšqkqÔ²¥ ¡Akêç)ö6ÛØ_oæã- `ì†9³ò#©mâøª@eÄB…­yÂÑIWf£Zè‚öç\`¶¾l;k°m€Fî0xðä5ŠÄDöV1U­ 4ž u)´*ëÍ¡7µ«½TEPQ@QE€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õŠÍUÄ$ƃ DéŽ%¨ÑÚS¯8£d¡ ¨Ÿ@˜È,’çF´«í¿JЧcað3d€_‘‹£SϪ”4¿WX«¼eí¯³¹Ž‘#h±×ðͶ00¬±Þ}‡b°°ÒÒÚÔ•]J))JUù+•’@ îzeÊ¥æ¸ðCçÃ8ñj/\‘!·\æ‰Lo{4)iaQ”—%@ « AµÉ°ÅíGJœ+‘ÚÙ­ž—ˆ• -åKtGáÜ_(/1ƒ¨ÄÔP°¸œ¶Æάq¾´\r¾´”ÈéSµ«ÞI¦+0ð&BÂB^.£õ•Å +9âÅ)R=kö–úMnÔàbo+jRüï¹Ë¬•_‡mIÕ`õNœ’¦›qøçìb5 û¶âÜÅ~[Ø’Á6¿ÚÌ+ 1qlL¨Ìq¹NðÞRˆ*Qk71°º²ƒéÔ×ÇúWìË,§°}žÅÝž”L¾$ö¬¥j à5åtÞãñx§K 0¡£ Ù¼™vWO-Ç›pØeÈ””öó*¬ÇL¹—üL:ÐDè½~[mv d¶ÆDi[C„ñåD LyLÈv3í¤óHu¥%a'µ7±î®)·}(ðü5Œ½Â˜6T&fN>¢ÜE8€¢À ëI6QÐ-bnû-ÙtƒØ¶Ä"a ð|VHJjXIiLjնÜIÖÄXf*º@6¨åc^0ÞãÁ²«ñ“öOî×a^ØæöA{7ò#.‡ÛŒ\ž2VpåÉëß6¦çZ6Kv۲زñŒ#XÄ”×Ã%Í~céožD¸úÖ¤¦ý€€iwOKLA­´q2°(gfÑ-M©´¶´Î Ü€«©Ì¹Æ„§(׫qãWéØé]³îmc†&7ƒ)à8ÉPƒúå›sìÏË^zTŸ†Üöl˜ó 2€5¬’;MpM¦é=±Ø6Ü/j#óð¦nV*ÃÉ![P†íu¥&ÀœÀÜ*ÀØ_ñÒ¯ÄqLAG„a Åj™1ÓKeeÆ›SˆiJZ”|¹€9”4<ŽŠÂáÇrŽ6ZE¯­)›)ÒÞ[±¤ seâÊ”IgÀ^S-„XæÍŸ9*-­¡ò¶½5}$wj˜g\¹æK®)±…¥€e$¤¤Fl6PPQX\²JFg§\Cƒä*Ð}ÎÏqXÓë„m7I݃ƒ„D‘ƒ±;›)7T2Ž l·KªUìzÆÅ`”‘~FºNëv÷ÞÏ~\Á í¡©‡Ø€—q:ØØEˆ ‚F½„"©kZœwN8FÑš“Â?_E`rš€Ü)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  Á#¾³\Ó|[âÙmÙÉndÌFS y˜Ñ ’l¼ÊR¥øªÓJÚåR[b²Ù‡%–t«Žúôž#¥^ØL>¼VÆ*à¼áßDñ3Û6]3dµõËÙ]Q}'7d$Áh]ÄIm¥¼òb'$B¿]Y‰@ñ²ŽÀIÒ»jéwTñ˜þœ‘F¼s·ÜQ§}/ØÿJ}‰Šg±„áx¦$û*(޲PÛ^R °¢¤¤Ž°%7·0+™íçJ}¬•†EcÃcìûÜBdKBÓ$¬v%)qOmô'•ˆÔ=2æk;px!Íì¢ãÑK^ëºRaXšcÆÛL4á Fëâ-)O!Çii(Ì€«¦kZÕ9]-b¯¦íةZƒN;‰„8´ßLÉ ($.•nóZþu¹Çi•^ÎF|žËŠÈ éq^|m–ÿ¶ûj¶{Àq Q†ãÌ‘ÄGŽ–Èl_þ(jZ7ÍuTF`ªØ^úw‡‚llMž…´Ï3 ‡ K‰±x"È h-@”¡%Á6ñÈ&Ö·TtjÍrÖHþ%zˆ\Z÷ ò¢°ãM?%––ò²´•¬$¸«dƒÌاu o÷zr\nWøÅïÌß&X̤(rë$7evø×úu¯¾íàâ[y´Ðñå™ @Ãc²¦ iCqž üèi)Q%wPR‰U•oÕ²´Z¹Y|z®GÄ.Ç£´Vn+̼_x{_‰»‡¯h1üIùkE¸KqõfhnB¹•EG[ ?C#Ëwò:×´ø‹# o‡Æ×o ë_4ÉÕXõ¸H$T¥‹,,Màø…Ý¼­­Ùh»@ŒFÐáMbëRP˜K–€ñR…Òœ—½È moVÚ-Ÿbd¸Oã˜cR¡6”Êå 8 ¬¥¤›¤M†¢¼ÞÚ-¨Æñͺldb c“)3?0¥Û‰) ­D€nNPWÍÆ±YØÆÐb˜Þ!!•½.[²žJQ”QZ¬;Õöz*e¢>7K~æ®ëўᘎŠ@j~:4è ´üwRãk®’AùªÍû­^elÆÞm.Ȫ\Í››*¦Æ\W–ÕÆd(jAýUe‚?8«8fö¶ú6µÈjZ d2–lNªNkäQíRlm}j*š3ŒœTÌ«•Œ´zY™&âãNu°¤C¡Ã;K;|f#…Ü0¦PûXœ´!A€’ÒŠ[Z¯bJød'RH ¶—xä*¾îÝ[ÔØ¥’jsÞ²QEsæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜Ôÿ_/j± ? Ù¼SÅQÄÃáCvD¤äÏ™¤ ©c/oT;kêUÞuè~á7™‚ï’Ö…~G á´ô¦ÚmYƒE H)²µ$ZÖ&ŸWRòÓŠxît[µ»“¥§Akr°åX¬Šó‡`R¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Ö@ÿÑEJO™X4Œwgp”0Â1¦c9)ÙE Ζ¬­·p@RJéäJHÒÙŽfò”„#‚1mŽÄ¸HL·Z”Ë«¬ãhS% õãŸüÆ»tï÷"­ô1X2ä…%JAÐ*ÚUäÆJu¥å¸ T ±Ÿò«bD`ÀFVÊmke¯šÄˆ,<å™ë_ªu¯]…›–Jü䓊#þlÆ-¿˜Ž_OuM)×ã©¶êUa—þŸö­#xD–2…G&ê7Ö×ånw¨ßk‚Ïž+­“eéËûõVrö³d=.IJÂTË!½ª˜ðÅ¡N!.„Û¬@Óæ¯¡àìÆl:V^ä ·«ûì¨Ò™ay#4[ej9Î[wéÎÕ¤á)pÛfɬ‰&qIRS@…¨ó&Õ£J„‡¿8•)²/e«Dú*l­¢ZQ&3EH@!@h¯O¦‰ÎBIÌ#´¥(e=^þÚß¹ÊàÆHVÊÝS‹‰t3m Omªy^˜‰(JȶUr­Ÿ•QƒA%#Ë¥«TÁ}ÆÏI Õ çóÖTWü^~é—`©HÍ"JYY9ï¶µ\•3 -ºÁJ l:º|Õ‹(µw^HjÚpù“ÙS•K•s r`Rob{McØ1BœJ =×­Ä=^c¸Vêm“-MÏÌls$Ú÷Óì¬;u>< ÂJü|ʰ³ …ºê'!%^¾ÁÊÕ„³ˆ¯ìe›2‡KJ-Iâ¥)!)"Æ×¶¦¢‰91’¤pKv7ÊE­[Lf,u¡m-m •%*ÒÕ´…<óo;IJNkNš}–åqÔ$Úá §A©˜$<+eí¦Šqœ]Ô©¬!EH[hh9b3¥¥‚l” “ÌŒr¤#¢¶î¶ƒk6þ6™QÂv~k¥(HIyjI+m l\ÙJHG(¶{E©öIºA¯'©F*»ÚóêwQoaš(¢«É„s~P¹þÒc¿r]?ô€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üvÒðq~›ñŸfßüLjÿªxœ¡ •,´ãÁ†–ém¤ÝjÊ/dŽÒ{}\¯‰¶Ïâ±vC“3ÆÅ™Ãßr yA+|6¢ÚltÕVçLàÊYx<ÍŸù;ÄeÏàÆ€ä—Öùj"26ÖudB9%ö €¾\VKrȈ\ûj6 umþB¾ƒÊbt–ÚL²¥(•Y4ý¦˜ê°éáGHmM„€y_ùÝku!ZSK‡Ñz‰ègB1o uk¹Z×,¾Ìµp4µˆÖýõT´Á}m¹=JKz¤å5^»rÖˆ!M%BíRn=5»,·-äÅmØŒè3sײã_MÅIG_«ÎuW§db·‡éΊ§G‡ëÝ‘E†Ü¦ Þš¥œŠZÝœëXÖ¤¼ØRŠõ)uK ÊöõŠÂãÇ¿ rÔÛÁA XƒkévD(a”<ëe ä• G>ï]AøíÌj6¥×§± q`YÊ‚¢ŽôñKº÷æÅ=V¥ÜT$°û¿SÚ<,óRGÕÆÖµl+ßQY¨J°¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK ú(¢€)JéëŠáòñ˜Ù‡Ò¤2ÃÓ\*o®”¸ „YVäKn]"÷Ê’F‰»kJNÉx<­­Á0w`16 øHÄP°¶V㉠”ÛPÙP¹Ó1µ®o5 ˆ[TUf²‘-YÝMRƒå‹¬)l()R”–U­ÊnG¬Þ†%–ÔÔPÚTÀ ):ó×J#Ât¼ï”\% IGÓöԎ͈ôdÇC)QH¸ÊŸwÔ±ñ ã§æõ.'áÊN¢’ž#èûšb,¾Ëà5%¢‡ˆ°ÄwÖ‘ã! :ú’×5$€sz/R½¶c•¡Ã!K)JY&üÁú>ƒB¡6Á@šû©K‰¶lÀ¨+Ðyvý´Ž¿7k(É¿1ôfÏÃË┣᮫&¦¦'…Ö€ëfP Eý\ë*ÂÞ+P[o&­¤ =ÿcSB‹ qNgZ”^ö'»ûÖ«–ÛŽé|>ã­!A%J×¼÷Wãwn ºwÇS½hVj^c‡^ÙèWvy ã“Ò^§*S§:™¿ÉñØr:Ò²ù%æëyT¡Æ^”§àÄ»ˆ ’”uN‡M}b¶.¸ÌÁ&k-¥KHËkyMGST¸©Ûyö6£¤[R“qŠÇNyýÊF$%2< n¦P'*N¿5a¿ÊA<%²¦ÀMÊœ6wÕ—æ¡2¼)–†P2©C°Öæg‡¨6¥›!WQNB¤£¬]Q‹IçîCWE²­/F».ŒÙpA‚ f¯ˆ:úUrÜð” m gÊBïôiôÖË€†›KŽÏRØ*ÈBQnþÓzÙ1eKCˆ$x8ÿ•˜ë~ãJzÝÜ"ÒŸ¹µ]ÖrMRÃ]“êK' `C+ŠémäŒÀØkôZª¯Iqµ+±pjTžÑóÖY‹ H,L}-¤ Ú÷ÍÝè·ÛR©¿Aèí©¦² oÙ§oþ*%ª]Åc~Q+Ò¬æóåcØ­ †‚2e©. õ @×óÕyM&$¸öEÀRÔ4$kϾ°ä–eG *u°â@‘Êýõ'å6ä6"¥E,eËÚGoúÞ¢«{qU§)2jVÔQXüºýÎõÐÃk€ïü#†Ÿ´YÞQ³­­–œq=aã'.q—þàAætÒn}“tPÚM€Ù­±‡ÜzñlS$&±GæÂZ€ CIm<4¬Øf̲4š¡ÈWE¹¬ÉåžkT¥åÖâ:P¢Š*R´@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ úù{O† kfñLÉz( èÅöM–ÖtæOýÂ÷šú•OeÙ8d¨ÌÈTgehmä¦å²A@v‘Ïæ¬>†WTy‡'Æ’û±ä¸ÂŠâ›ê8’¤›S¡hFÕY¶ñ+Â\ȵ6MÛÍöÖƒr=Úpu“¡Ö÷ôß¶ ©É\Y!Ô4åˆØ+³ZªÙ,ô=Ú«KjçžþŧÈ}Ô9Š0¦[)99n}=ßíYeèMº²q¦,:s:ó5$¼B;¬”¸”¬ÉBÿçUXÃß– óa,-ª{JmZãW²y–)üÞæY™ M(ÉBVé$‘©õV…%ÖTó®Ý  ]ÀÞ§üŸ jqÏ q#1²Bm§}@ç„G¿‚ÛvRP¢I"×Ò¶^ƲRM9¯Ð™ÌE/³Â;‰ÔŒ¾(í¬þZm,åí·*’$ç ­äðóaaôÖ¥¨Ã *B”ำÓX”%®-ª®K4潃G™ÊTŽÔ.¤Õ'ÓYL/>°ÞH¤2‹}VÖ¦žÄVßnS@8JºÍ’2›óÒ¡ôÔº¹dYihJ®Gg!XMàÖQ„ÏÛÐÝ×ÃÔaäC¡À,á<ûþkÑ.JZpxŒ²Û–JÒ”[è·:Õ-I˜Â”ÑROŠ3ŒÀÿ}žŠÌyfS ÃÐÉ*"×¶‰=ô|uÊÚŸ§¯Ø°pì5È€e²€Ñi65A•Fm…GÜÌ•jè=—çz‘Xdä>–L”¢“˜›z»+txtÜi¨Šq­n¡©±ï¢û™–ržÌQÁT yÛÝiYUÇ¢ßmk)“m¦jÂs „«¬¯¶¶‡ù9¨ÁÀ\µó_[Ô%ìBKal„_š´Ò¤£B¥gü8ç•«Q ¿‰ÚAµÊûT(“}96úéðÌxT¨”JHsú»è2ó8œÊ¼ÁÕÌ:ª=õ´™ŒHa.—Iq* J@ÖÀÖÒqïB-¥w±µŸ.y_)«©W™Â#Ͱ‰-6 ¤ é~Wï©1) IŒE¢FSË[Ö¡­ÖCOµ™¶ÍšFR3zMýu¼â°øSÑRØ_‹~°4­kFn‚ÞR””’Üm«¶¶¤HÈS J>{ïUÇ`­M%‡˜†È~ÊÞkm=(¼ÒT#ÚË6ÔrÒ­Mž†á¥†ÐS`2$é¥aЪ’{Å,¸ïIǹUHTé)3O’›§Sýó©bCZÜq¶g *Ä%$úyÞ‡æEãm½w jmÉ LUä$u n§×é­¡k^ol`Í]Ž?šUüË+ÄUE—m˜[‘çQa²¢¶µ©Ö’—¢MÓcj«Z8‹S ñ/bUÏJÌÕÇ‘!µ8’¤"ùÊé·÷ôU´ô)Æ×ÎÝÏtŠ˜x†3¹ò”x]c¿ô>Ùm“µínÑbø2_% `˜d‰ˆªI#óá²nlHJ9ÝYJM:éñE«Ïî{µ—¼²[ŒÌTiÙÎ’µêYBs°…Yv)NCÌØ@QâUqPŒ£ I`¯Õ\|Æ{Ÿì¾Æh¢Šœ¬ ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þ¾~:ë1ð‰Ò$Ê\FŽâÜ‘rÊBI+äo`/Èòå_B¨ãOB„M‘ŠÆÜw(¸.ÐI+¸îµïLdgž_ÊrQZÂP™Mp‘˼ßýê9¤D-™%+i#¨¡¥¦­m 0Åñ'°'$GÁ×)ÕÃŽè*u¶ Ém %Fê °&ç^Ó_1Ô79ÆÑg(ñóòµ{ÚQQ‹Œ9Lœ®ö»Üœ¸—Rh͵=õI,æHNeÜöòù¨K/1#„d[ A½Ç+T>¨*,9m?Q;û‰Ës›É§„Ë\|ŠŽTжbt_nËq¥ 7¥¥<ˉ¾†¬¦{\!ÖÐŽDU6]‘Ö\niK:f ËéôÔõmèÏ kr!§^­7˜¼0Ûh–CÒK 'Ô5¸7²ü3ÉTvÔâ?Y7*>(ð8Šm.ºê‚Ônµ$Žg»M*¿HJÜ1Ü ljJXÛ[T0±¡J85üÙ<ïkÔy”Ù`xR„4él(ØU¯oEnÜ—#ÈÚб¦·Oò¨Š€Ø@ò¡ÇÞi ã„:Û¶9{SóÚŠz}¬ÓIuy|œÓÔ®©É<ôXÿ=ËoH–ãÅè–qI½µ­¡Oš¢¼Ì,¬ŸUTÎñZQ ’ÓjçÐzíXOˆNd)Эs!$UqÔÐ,êK++íÐî¥âØ.¹f¯Î¥ÁàêîIBo~u+8’[ABJ“¡²¡yS¡$¶R›Óp?»VÑPSÒÐ…¸£kÕ•µ[|”V «‹š—uW’ÜW¥)µ= ”¬B}ýDS«Ð· Ù¬+v®¯ ÅðÜCœ÷„âžœ®1q•¶”ò¦Ê±#.e,¤nR9’ãJuÂÙ!¦k &üiqÕNì¨p؈†‚@m-¾¢µy•]„Û•…ùßJ«ý6Þœ%U}GbÔn*ÅQ›á øåY¬vkYªd)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’ë 袊¥+§Ïâ›&&ÆaXPaĸxÒZϘZÁ ìAÔ•^ÖmiPé㳸‚Á6ÁÜP/òa€¼ßšx—â¤\¤…¥9U #†ýY­­áqV4æð™¼.%nüÈ®P¬¥¨s¤æqjñÏJÕðÂX@ŽéQ=µ˜Êi(tÇŽ§Z¾ª:ÿ綪áÊi—’àBÒHºB»5Òß5z(iV´Ü£Œ©~ßb*º½Ìö¼á¯Nå”)ü6J\Q©ÁkŽWî©“ˆ!î.N_aÔ;íY›-•G)Ìšzý]+Cî¼Ú…†T…Ïÿ¾ßEsÏ@´uNßÜꇈná ¨•KRV•>úÌ3eo°Ö”Øt®YÎmÕ*æ=’¤q’ê!-"Ö±G?ïZš "ÈçšmKV¤eéVtëjr["²ŠêºÍT÷Íáš1$ºê›e´ l¢°¿x¬IiÖÜIn+k-¥) ¾‡×­ŠÔŒÍP°#ù¨†ûM¸¾4•,Aì:_•ulŽvË~_2]›Á¬H<Øm&Êÿ«º¤‚„JëHp­#DŽV­ÄÕ¼òVÓyÐ2ßSéªÒZ˜©¿›HBÜý\܇}ëçêù‘ˆÉÅæ<2̆ÚC¦ŸSy¹'7T[¿JÉrR$­)q-‹ŽIÔwÔ-¶":<=ÀEÂù¢µk®ê›aje¥먽¯Î³ÂÂKû ¶øy7vbø¨‘àë ZùŠMÏZH˜e¸Ûn êSÝóTÜyM[-x@¬¡ʤ…9¤´<Ƽ«+åà<õ+ZÇBZ¢9‘[–üJr½™·”O1Q¼Ï…Ê.Åu´( AҥÙMÖ‰jΠlA:V±Y—Óùö1žçê7c‡¿Œo'ããÉÂ|+a¶æ¥*+a Q”›6[r¨RUz`žBÞˆØ.ÏÎß~qBÕ;²a4S™BÊ¢T•¨Å%'˜Õò…yÝeµYAöGe·Ó¢Š* é ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.Ÿú´€|_¦ügÙ·ÿŸñÛHÁÅúoÆ}›ñ1¨þªâX›D9l¡èﶦmiºV…x Ú­UsÃ?$Müœ¦Ñ3€¿S‰*Hs)ÊH‘{h54]P<»Ÿ‡¢>1&$\Q ´ó‰bJP¤—› !+²µ…ŽºëU¥År"‘à®æ؃§ÏqS¸×„pÖÐ÷ ›ó¹¹¬ÇÃp­RßE›½’…uëk^Û[bI|Äú}ÍÊs§ £G£†£—_RøV`¾v\V©K“³î¡¢¡A¹¨ËjyBD‡Ki* h4ì>»Ôæ4'#…%eµn…²»£ó-É,}Î)'âú%ó₲´…h£úƇ¤?1²†*Æ6¸©¢¹F-­!|ÉÎnoRáðœu²!¼–˜Q9³M´®{‹švðÝRx‰=­­[š›)G2>{X{‹pþmy©Ì¾~VS#ÁBøT€¾]^bܪGÒê\,L†ÂRTžÛMjò ̬Jy[Ô!<ÍÆž¯UfŒéJ*T¥×¡­Z5iÊQœy]}ˆ“‡"‡ãg°Ñ&á=â±-f(S‹Œ’d%WÔiϾ¥ŒÚ__ZÐ’:Â÷I:|Õ¬¼Î+Áå1Ã-­wHúE%qJ2Æå»Ðʵ«(nQ{M!3‡‡.å´ºŽžº‘§¼Å¢;m¬õJu—¿uK/ªÛŠNMJ頻rbIr<6ƒÍèt:úo\ñÔmã[ÉrI¯N‡KÓ.eEWQá•Ðe%LºV±fÕ{„Üv[°rc2õ‹w½Á¿ÓRÄS ´ãr8J äoÊ´Jâ,)2Ö§<@¥`yv×riÅ5/Ðài§É2ñ&ø9Oë Z©. TÇ„¡àlrž~›VèDFeq—Ä4¤ÝÁžÛ^¤i$Ip…¸”l ­Õf”šoîm*r§ÃOÔ»ÁPÈ´n´éô k ksò×/—Œt·”X iÝþÕ´‰1^Œ‘ùà_h=õ0ÄYð|†Ü¹vT,8Ì&Ê\ŽÜ¾MMû+Öçž$W¤hb²… ¦A}gP‹Øš·SÉZqÈ¡ž©æ>šË,JBîÔFÐR¬Äfëkýò©2.k¥š) –¿ÝëýW#>¥—f¶ ¯M>m+ç!‰e•HF@Ù9€&ç_ò£òzã½w‚žm'’Ïæí­Ã‘8§:Ým²£ÔåkvZÕ‰Ôrx©Ãô6P“YŠ[z2øó#‡¡`-›.µ#²VRüt2Õî’¶´¿ª³Ä $q’êƒf¢ãP=î*RÔô¶Û’ÙKÌ'õosë®Jú½¼w9'í×'m¶›sq=ª8÷ô!{€¦â]Kn§@F½ßåB#Ëqmº™-­e=TÞÕr‚Èá(i-h^ÛwV¸„Vâ­/ÂÑα)R´µ‰þUOSÄ”ÞvÅû}˪~¨—™)§óŽëÕ:‰‘ÞC’›âv#_ž¢w#²ޤ¶ÚÈÌ’,I¿EX>ò — 32¡•«Ü«ÓöаÑc*ð–ÈG!úª$zª*^#j8«û¢Z¾ŒäÕ ã=2UR[l­1ž £.eŽ}–ª’âG-¥ÆœqK½Öo§o*º冚T„)>/ŒG:Ë1äDZ”ÂÕâx~!޳.&–Æ\QzNe”¬ ©(‚k•"ܩɅWNîWmT’Ã9ol•¥iB?O`¢Š+S@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ úÁ¢¹ãRU,^lL3 —‰Oy,DˆÊÞê¹!´¤©J6ìX|]x<ÊÄ ~MÚ,J6&òQˆEã­·3¥kBŠT°®ÐMõíªLEã%N½)Ášä†ÇŒ›iýй´°a=J‘„¼¯ÉæSЂܰ©g9Ȥþ¶[_²õUÉ3lÀ”—2ÚêÐzÁªª’”äÞì³ßЂŒ”qíîjþ Þt©—ƒ-(ÙI¹UïËŸm BƒK¬¾µ¹” fV]-{éC°gFB]SÁä7ÖÈ“®•ŒEpe´Ý•wô½®/­êepã·{Á °¶MÏÊJ^æƒ )ð¸Ç¨…eR 9H÷½m)RàHSM0¬Ž¥-ê="¶³„¬Â8+ñ,nonÛÔ\iSV•"Íâ©g-Ϩsæj9V©?­ñîn©Ñ¥Ÿ-b^Äͤž$©Éd”8k›s½D_‰*ru–ÖI:UZ‡,”ñå·ˆÔ¥ZTQ%ûÄc+­6AMüaóüßmk²\&ÍêQÄw8¦½ùÉœHÇsFWGÿ¦;=U>û\_²œ_ŽT5õ}•Ez †ÒÌU¡ëVn¸íåRbŸ$:ó…§9NP:h))6ùb-ŹF=;v6”Ägñ–K“­€±?ë­l”8äaê/¸gs+^|ÿÚ¥TYÃ\̤>µ ÄÌ{+HÙLt©‰KiZquÌ-ÝZnmå¼’*M>˜}x7ðh2XLi%ýzÁD|Üû*£)iæ|Q³.äÖžZènhx©}ÆçNŠ÷¿×VbâŒ"(nÀ\[(µL«ÕÛ¶2m:4e=õ"“õõ06Z8‚ãiýc¨VžšŽK>!¶§0c))Ó"…ÏÎ4µGK RTœ¶Q°î©Tû8ƒjuä¨!6BVŸÕ'™&´J”ßæî «l–}ŸìL©Qa8#lÐA)#ý4ñt\Þ´› †ìÒ$?ùc††Ýiô„©m&ÉJÑbJ’TD\E"©Z!•&+ˆ}µ]=§Nî\©—è.ÎÆÔc¡k’þ>¨@°¥,äLP´q†™³ðµV¶°Mº×–„Ÿ™ŸR»U§Ú寧¦;èÜ‹[JȬ_5dr«Ç ¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK¡‘ÿ¢Š(“Žž.F{³éwz2Æ¿ý@(„¿wMšZíÛ1¶§Œ/k ¸ô­tùˆ·`l¤Ž$gB–ׂ-_œ^d´xˆI!9lMï×M¹›Oouð³óqœv7§lîf©§ŒŠsn<÷v˹µÀÓ×nÚ1.u&–ëIUˆ$z»Ma†’Ä –¥¥ç_X²ÓŒª+! €Nœ‰äkŠ:µÅ:»Óxô=[Ñ­®(ùn*-wï“â3=å­×eÇÅÊRHÕ³æj’´©µ/@‚5ÖæÚŠúf+MÀue×Nª·ißïZºîC.&êZM…”MÉùõ®ÊÞ$¹šÄ8G-? P§ÍG–ûa)L¸‡¥”ÝÐHÖ«SŸnC­˜­¥n æOebNÓÅió…¸ÍÏKjWŠëM”þO‹ÅVR’yŽdéßTõîj\OÍ“yû—­cmMQIc÷2ì©s[ʘËHhÝW±îû+tÉ›"2¬Â’€:Êñtô^°ûΉ ³™qÖ´„­9l=urKhgPeÕ\'@£¡¨$ÒìtÆ-îiôê|õ†°ó‘à –¢/oçþõ>ù %M›"ÿ5ïôÖ©›AðU¶ÂBH"Ɔ•=ËÆJ²¡y€¿ÍÛFÙˆ¨îMóÇEÐŽ2¢­È‰gPeZÚØóû+9£H”ÒU ×lUSç~œ. HtèGëköÔ)†£¸Ä† ž±RW©ÐöƒÝYŠo¡¬Þج¼zäË2šÃ帒¢êMˆYíôV²1e"BRBlA]´>ŠÙcXqÇ+Â| * R’TÚnoß§ó¦×ŒRó#º\Ÿ Ý¹Àdí¦+jßz6Ï&RLäFY@ôƒ|¥VÌSÖË|½kW¥¨ñ»«Î-ËDZ]ììØÄpƦщ6ÛÑd¼eÀM³*ú*Ç^%”å±ÍcèêÊ­­¡ÝS¨¡»Ü´¡¯ÚÔ¦Û{}»‘5†Í-—<)´ ›õnn;ÅèmnáªSÆî°¢?=k}•„™·S ¾• Ê÷#ÒFËòNf“Ä…¶BX ”]V×O›J•ÃAN§ü늭z)n†3б£{mq)•ÔÔÀÄ5A}·Sk„¤›žëö Ã’u…CTbŽŠÍí”z;ê'Imõ°â”µuz–µ‡/¢²ù_Sˆ'•Û»»×ký•5¾™upøÍ_U´ ²¦fZà”¶¨í’¡`³}>I¬­øŽ­…&m)>>KóŸQú+UÈ!;„­ï¥K&RË)f\p–Ç%þË}5Ý_A¯N¤c”û®Ç z…HJrùqÛKsˆôRÒ›mJ<@6?ëPGJØÂó‡Pø"ÅZàòçqTËLE(wŒ\Ô (òÿÅjââ"RqJmC¬’t'úr¶Õó"'âj2ží§."CSNE²V«‚”õ5ôÓKÐ2PÖÓâ)—¦oqµ•©* SŒ¥dåÊ [QJ@=d•\YT”ðu%l)JJ2ÙúöS1ÐO Çäm3´.1€¦1„àRÈHºGý‰¿[þû ÜÚG¢|59T©.WLw8¯uÅsJœx~½†è^Úó­‡*ײ¶«ˆ¬ @77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºÈú(¢€+€ôÛÀðé›´´.Kn6+„KJag'óáâã@^ײRåìH ›Xk¿R£Ó¶;v´K‘!¥Â-$ÌHQ+*?¬s¡ r°àëã Å[ègn+˜¦ñî+¿ˆ—'”-]©²þzšã8\•­)Ñ*:Þ¡üý#Ž]uÇâ¥ks‘Ê :WÐÂßd4дèR¡ªj­·p{X8ÖÌwéK Ä#7M?›7.±ï¨ËF âåN8C€Ü¥7ñOh«Ïø4‰*mBԜْî4®u‡ÿ&-I[n,¸:®(Üý#º‰ú#. G3|.æŠÆ’¦ò IÓç¬3-_Ô$¥*ºGmµçé©*ÈS’[mN/[”ë¯"+xÛCm2‡ZZ!ÃrOÎ4£Ú—C1U&ógÑ•¦>æ$Ú•"Ì‚¢£Ú{‡§ý*±Þu°©RKHRIH"÷ùêÊ2¾Ú[LVØ(ŠÓasÝaQ¼óŽ3àò^Bƒ¦QuH¾•kGI¹«¸Ç ²žãUµ§R[§™%ù6]€ò3-/¨8F‚ú‹T¤Ä´´&=´7JGÏPµ+åjD‡T­H#ý+Vg‚iEN:l¼ÿÞ•e OÎ̤”{á_?E[¥üÝÉ$¸ô†R·ÆCÉ«{ê? ðU)©6R» ´Whù«iÝ ëåÔ¥$¡ kp9VŽJޏ%¬£6[ :À×¢·Ó¨[/’8iw<ÝÞ¥qtß™. ãªCQ”¶È±˜¤ES—+lHa¥éIJ¬5ÖÕ¸nkq’TP[:sÖÕ—Ø}†JèàËkbÞµ†—mJQ§Ëþfjêw3„c)ðŒ¿&)m mÕ„ÛªmEJÃji¼è’B΢ݕºÇë6Ùçj ÁijD…¤¢öEÁ^Í*ZÖõéÁ6GJþâ›àý^ì¶Rv×íž²ŒâQ0ñ5„ʒK ’ådd’£`/^˜¶2¡)¹6¹75åÆÍÉÄ1 kÃðBàÅdÉi˜Aµä_J*ýS˜§^Îñ^£3~3M…Ȫ}k PQyItô6·mç&ÔQER"¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÔ2i–\}çÛM‚µ­fÉJG2IìµMT±¬>6-„ͦ¡K1…°ðI±(ZJMf„ÓŒòææõñHøÎñv‡Âü63uqà Ò¦³Ù.YG0RÀÌFe`4¯ËÎ ]Ö}l®uõ6«w Û,sg—0¼ÆˆÈ†m\Ḥz/–õò¤AKªu)¶‡²½Å5ü$Ôr°¹+åòlÊÞ˜Gˆ Êˆ «·MozËhuK eµ2£r³Êý£ýëeâM)¢Ö¸°¶„Å*ÊÓ²–P‘¡î©–äÓ“Y±b4ŒÑ“•ÞH9¯cóÔQrbÉqå…¤Úâ²Ú˜ŠúÄ’Mî•(X ÕÃ#‰ÅŽ„¥ ¤e*·nµ«qÎTe:µáÎÙ»8• “}I­£"K÷”—’ÙP±[ŠÒ)C’á…*Pj¼‚ã)¸Êp²M†Q}{«±Ï`‘{#ë2— ̧yÛÑZ‡¡¥mºËl¥âmkj=u£Ìe)al.çÅ¿+wÖFV³²¨™^¥A'[ÿ•m-³ç óA6¸_±+üLéLUMÕtò7Ðú*…\DHiÙáêR»f'–¢€dCtÚ1JHñSÖ5+*vJݶ’‘¢Æ½¶5ž%Á®0G-L¥æÕ±ÆÍ¨Hçé­”ã˜ê²S{+™5 x’# Ii Éb¬—ì·;ÔªT¹KB@È:©'Ÿ¯ûï¬,÷á³$i’#¾²«¦äk¥ô¾¶®9 )ã%¤€|dÛCQÈ)ÖÒòÜB]OŠG¤Õu¡äÈi”‚ÒºÝS{Šq±3œ¢Êƒ1¤%Ô! iÁ †˜>„˜¶2w›2ÛŽá.ÁRñ hƒù¥÷f$”Ì…+¸Û€¹£([0ç}SnêuúEÙ”n|½‚aË4Ì[8«îµÉy )$+þ€Ûˆ6®d•+ƒW›¥nãŽ-©O9;°û+aʵÂÂõ°¯ ‹¤s~P¹þÒc¿r]?ô€noÊ?ÚLwîK¬ÿ¢Š(•¾ÐÙÌuX¿æÒ]Špåp ”§-~Ä¥džE»©-%+ݪ׊Éèåqïãb“éµQ”—{3N4É­‹³eŽh¶•+Aß§*¸²Ð©ÆâÝû7¾ ¨å¶ß}qÉf<>|fä~{že'Cèï–—09ÇRCÎ$”x¿I¨P™án un˜ØÖrrZÇ\ŒÂÖ½YWѬ«a¸4½ŠÊÕÝÒ–W¹t–\œüxÊ!\¬ …´µíΪ7"R3 ÚË?;z*4% Ñ*vò³h’tv[º¶SÈiEÆÐ”µÖ):“ýëUöÞ£/5çÑ{{÷>#­5IcÔÚ3r¸ï] ç˜vÚ¸*ŠB œ®SrMl©ñZi¼©Pÿ§ºõÕw¹7÷¬1,Rt‡ðŒ†–Ìy´§erÙ$YHG5‹‹Ü$I)¾­qJΖsÂíÔó¿=i¶ú³”ÎFq\:¤§Aé$¦˜@¢OY=c}/ßþf™h]qÇ¥K‰íÌ& #)ˆäh+qÇNSr´)IÊ«/5ÏŠjÆÑAœ±ŒmèT<2".•×›Ê Ê”²VlÂÖX°æå#™ê¶‰a3‡˜®þD=!ô¶€Gˆ.ydò¬· ;Ï:Tú4¤U4Òú(º´BÞ+E$äKØHqi€ð õØPz%¶Û·ˆëk—‰ÁÁJÕsbE¬,srîÒµü^Û+w&~b¨–¤©ÕÇZÂÚ ç{_]*vcÜ©©Oظ(°÷ÞšÌG¡ì; Â6útK2”Èðœ9/—ýe$¥hʃ¥s¯Xék.t?À•# q;m‹¥H’Lfʤ*Âå“Ì‹ƒ¢¸œùžuˆêÖË®GÃÌP  Vc¾T¶[½\€¸ùR¬ˆ+™#ç¦ÆOD%8³kÃöãg ºKÑ^†Û¯¬_®èR’EìKfÚ\F¢ºBL¤©À›àüE·ù99Ô‚z /‰` 4*±¿påZÇV¶†Þlæ=™Ù©{òÃQ‹Áv\•¥Åaú¤¶Ü„ º´‘­’…›è¬¦×Kò9 å;¡ÜVÆîË“Œ`ÎbsñÚ,¥ùï!\ɺ‚„$l.¢ ÒÀ€H=Xrª;ûˆÜVsŠàê¥á…Q\d¢¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ+5ƒX`ó?}¾†o“lÑ!—YRñÉŽdq [ÊZUcúªJ’ yAüîÐDÆðlM˜xþ ? }I%‰±ÖÂÔ‚H X-Áåp{«Ó¬GeöoÆØÇglî/Œœô&ÖûA*Ì—*M‰$XèMëé:Êil¼ÚVÒÁJÛPºT±wîUq ^¤b¢—çv鼞U5"–\f{«rá<¸ññ)1åÃ…)*ð9 iHnFEe^EeXèm{+ÓŒ fvwŠü\ g°¬*;êÌëP¡¶Ê6µÔ” ·}mlîGb>9ḫ,/;M͈ÛÉmV¶d…¶švTß¾›85øe×'—jT¼-m5>í4óaö¸Í—[Q!+Mù¤Øê4£òмËm* Tß—ez¬¶Ò®ª F¢âöõU<'ÂðˆîFÂð¸pXueÕµ„¶•,€ ˆH±&À_¸ Ò:ÕH¦œGÃ/SËT¯r1.¥!cõBο=j%Âð> Jû;+¾½H^¯gV ‡*dt) ÈTTJ¯™)U®s*àhsó5ô›m-¶”!)H°h+g­Ï´L|7¹åþËlÖÙíze=³8ìY8{eÇÕ‚°‘n\¬TAÑ"ê66WÒ;¼ÞxoÃÝØ §á äP8KáI¸'Å(½´Ô`l;kÒܽbuÔÖ@Ó@*­Wê‘¿Ã@ó{Ý–ô6ƒ/ Ø|eÆAw;ÌðÒú¥Ü¹ý “U¥nãy2Øð‘»Í©üÚ¸wü–ø]ȸ²mšÞ›Xk~uéXÿÅfÕ³Ö«¾Æ>œ±7G½§ñ“€7°Xº$¦à­ÆB# aófˆ·rµä5£ܶø^Ťà‘ö+0?8·²´ÇÿÕå(6剿UG¶½¢µzÍÃ3ðÐ<þ•Ñ»} a‘$'‹!o•qb7‰2c)°ÎT ƒ˜j2)G¾ÇJø±w;½lf;íEØa¥CXBÕ%¤Ç¹&ÝN!Nqq©EÀ&½úh­V¯q†Ÿs.Þôfß+ ±+ ðf‹Yĉ³¤ß–K5AV7Ô[C­ì ¹ßaûµØhÛ;×$;˜¿6J‰»ò”…('’RR”§±)$ÜŸÜVr×¼«]bOƒxÓQè[²Õ‘EÊH€noÊ?ÚLwîK§þ ÍùBçûIŽýÉu?ôQER£ÓÃCÒvsdQ-VHs—&†ç†Âów‹>,n£•5Ôµt÷Áð×¶ÆÜŒ‘ˆ³‹&r!\'ujG¤fm$_–¶µÍû,$£qÖH«'±‰ûR£EZ›Êz½·¬%2&õšYm°zšÿ}õcÀ¡ðBJ ¶ “­ûêšv-Ò–Ô´’reûkÙËt>¾…jÇcc9”Ô•år×.(ê}Ö©žË-ðÇêiδB¸Í9)öAúI¹û+/&ªm1›Gꟛÿmk¹Ç˜™û•Èȸڒ…(oo¤UÙiж’”Û6‰M”~UDóŽÊBš[ JQr¡È’€wëj…æÆÕÃ}g0:Øýÿ*Âùsß=ÇR[CiÕµ&;)¶£*yóïú,}éÂÜH8X±Ù‰Æ°÷cˆˆ´§’¢–“ª€Ž° g:%)Ô'ê“J“–0t'Æêh;«õÛœÛlÖÄÚC…GĤÄâ'ƒ) [Ê:Ž•ŒÊÎ,»e¾µÉ}môšÆqÓ±-)µ#ÒaÈÍVÃ%µˆa±g0—Ô–Pê‰Ê ‡^Uf¼wN ¢Š(Š(  (¢€(¢Š¢Š(s~P¹þÒc¿r]?ô€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üv×™7Ÿ€nŸx“¶‹háâr¢I„„@i XqO2°HZÐ2ÙµvÞäi@zoE,ß-]Ö ? mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š)fùjî³Ìgûœox£å«ºÏ0mŸîq½â€fh¥›å«ºÏ0mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š)fùjî³Ìgûœox£å«ºÏ0mŸîq½â€fh¥›å«ºÏ0mŸîq½â–®ë<Á¶¹Æ÷Š™¢–o–®ë<Á¶¹Æ÷Š>Z»¬óÙþçÞ(fŠY¾Z»¬óÙþçÞ(ùjî³Ìgûœox š@77å í&;ÿÛ—]›å«ºÏ0mŸîq½â–-‚Þ~€ô¥“½9q1'0WqlJrXi¤9$%ðØ)+ Ì ©¿ZÂÆÄØ\M¨¥›å«ºÁ§ä ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@34³ôö‡´6G‘<§p(ò]^"¦“™-:B XæüÔß•Ô2qòÕÝg˜6Ï÷8ÞñZžš[«:þAÛ/Üã{ÅKF«¥54ºÉnX8Vì·¼½¾Â)‡G‰…À*³R1Ge/õA l)6#­l§°Üù›CºMèlö26nFÉâsU¸oÀŠãì¹}z«HÊí¹Ó¶ÔÄš{«óÙ~çÞ+'¦žë5ÿÐvË÷HÞñ]ëV®¥”EðñÁݽÅoƒ/Fÿ» 2‡ —2KHJŠA9Ö9ŠŠr¤Ž©$ž°ùNåw—ŽD+ ØœZ  4•¸ÜØêˆ¹FÙ[@(Û»]JB˜_–¦ë<ö¹Æ÷ŠÇËWuž`Û?Üã{ÅfZÅwècáâpÖ7¾ÙPÚbV–Ô¤•âR®Z  ‹w |‡7S½x¥×§l<êXn/ž°OU(*ϯbo§[4Å|µ7Xüƒlÿsï|µ7Yý¶¹Æ÷ŠGW¸OžLü<Sh°}ªÙÇ{Ùœ_CÙÔ".?(²çöÌ/ë®Ó°}6Ç™ƒbÛIˆax~1¶¤Ëe§[mI ápÔØJýSu’I²­jýû3÷Rí³ìþØ+*‚“šcb;GüG:ÜtÕÝ`ü¶¹Æ÷ŠÖ¶­Z¬vô·Œ^Fa:ê¬ÒÍòÕÝg˜6Ï÷8ÞñGËWuž`Û?Üã{ÅVŒÍ³|µwYæ ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@34RÍòÕÝg˜6Ï÷8ÞñGËWuž`Û?Üã{ÅÌÑK7ËWuž`Û?Üã{Å-]Öyƒlÿsï3E,ß-]Öyƒlÿsï|µwYæ ³ýÎ7¼P ͳ|µwYæ ³ýÎ7¼QòÕÝg˜6Ï÷8Þñ@qÍùBç{IŽýÉtÿ×½ñ¸»KÓŠ>ÑÁmæâb¸¾/5„<q(u‰+HP€«(^Ä‹öšôJ€my·Ð¯`¶Ox›ÒİM°Â¿*@gvSmxC¬åt<ÂB³6¤žKPµí¯.ïIm é¿ömÿÄÆ ’æâ¿a‹Mþµg乸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ”-Ûl&Êc1¥nÿ¸Û6Þ7‹ED/u6i„H-':TÕ- ß5͵&½#¤s~P¹þÒc¿r]Ìü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµv[ŽñY¸ï 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹MþµvkŽú(3ò\ÜWì7ñi¿Ö£ä¹¸¯ØoâÓ­]šŠŒü—7û üZoõ¨ù.n+öø´ßëWf¢€ã?%ÍÅ~Ûýj>K›Šý†þ-7úÕÙ¨ 8ÏÉsq_°ßŦÿZ’æâ¿a¿‹Mþµvj(<ú?ap0>ãÂØðx~7ŒÅŠÖu+†ÓlÊJuM’¹$÷ס”€noÊ?ÚLwîK§þ€m é¿ömÿÄÆ§üvÒðq~›ñŸfßüLjÿ¢Š(Š(  (¢€(¢Š¸ï y\w¦>#Ža=6Š~1¨‹G¹+RUÄ,­Ô¶CjJ†UæZu7s \‚?K2~õ°ö"GogvWY*—-¼Qì9Bâì”2¦ž6É©^ª'@ûÛŽú+ò{#‰mä¼Iƶ£e0\&d©BÆ—-jrâÉ(S €*7Ìm`-­Ç!Ú-”ÿô¢ÝF#3ı¬W8â¤Ê˜ïU)D@PÛM£m§:¬©ÍrU@1Wô\w×ÚMåm+û߯6±û>æ3¨wh8ª^$·Uÿ”8ÝÒOXß²º>ÃLÚY›>Û»]„ÄÂñ„8¶Ýj,Ž+.ªÉq˜J†¹U¨½÷袊¢Š(Š(  (¢€)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  (¢€(¢Š¢Š(¾&5´¸V´x1ʼnøëÏ77 -2§VIì)úH¯·\+³xÿIÑ1`°§·=¬]‰i}  ólÆâ4•_˜BÖ¥ØThýT±¼SÁp©8®-5ˆP"¶\~CË CiÜ“\[iŸÝºv“Lüg{MË¢ñïJóœÁ¾áä½òäêÚÖÒÕûÍ×5³3öRS83›Aˆáæaâ £LÅ½Ä lØ ƒ9@²·V÷¶ ÐnËz?¼,cÃp8˜Ã Á|¼äèž—’ú¶–ÚIÏ”¥9®¤¤¤‘pkêoClðÍßl6!µØÄi¯À€Zâ5 )Sª.:††P¥$xËI:/Û_„Ý6%·Ö;°+~äªý>þöA;{º¼[d?+ÆÂˆ®8L§Ó™ RmÀ-qrrZÞš}žÛŒGÆ#áïîçm0¦Þ¸3'50Ö„‚¬’­madHå­~Ú㾸®Õâ›{»¬ØéX–Ù«j0¡ÆÙÁ&B‘‡1L8úTPó*i „¤¤Ý++Ó¶ú×ÆÞ–ÄcŽoWÚœswãy[3.,vàÃF ”=„ÐC¼6)JøŠë]'7󃸢¹×Géû3;wÉodäㆠ9År&2¢e@u*ºã,Hɘ.lÔ×D¸\ТŠ(Š(  (¢€@77å Ÿí&;÷%ÓÿHæü¡sý¤Ç~äºèvÒðq~›ñŸfßüLjÇm é¿ömÿÄÆ ú(¢€(¢‹Žú¢‹Š.(Š(½ÎzIl–/·;”Ú=—ÀZmÜJkmµ„…©·Ûs-΂ák¥È©]ÙUmÔXxÞÓÆÚ­–ĸ%—0è{JëHl*Äø3µ(æ=nv°<­]ã¼i_ƒF÷wrûØÃLíT5!•¿5YȆР…«.W:ÊH’H÷­£ KéY0Ú]O¡²{ …ìÖ"äØx¦ÒK[Œ–Kx–;*ca%@’ëŠHVž0±"ú›ò]¯{{æõvlšÜÞ$Ë21ó ǰò·ü%”¶2ž-†\·=õú9=#÷^ÖãèÄ1 /%Å!1„°ã‰ ¶`UdXuP6æÒ«oƒ~ØvÍîó Ú]’iœ]XÌ…³×Úq,5ÃÕ|A`Bï`JIÕ@føJͤâù4óaêXÛX›Q´/©­­Üžµx[ñZr.(—jlqXuO,'0]Àq•XM}Î['lnÁ=…c¤3ÄÄdHƒ‡¦Q0Ø« ·8|lšê4×Jæ»=Ò·fײ¡ìo ˜1ÖÈmQ¢$p^6QΕ©]T‹AºX¶`GÖ‰Ò—`Ná2àcLL%†›Zˆ!WZTV”ZÆö7P°"æ·z}ÊOäèaVƒ;à"Ô^Ô–íçIí¨wx‰džq­žd°[„ôF³ÈÀâÈQMÉR.• ÔÜãéeµøŒ)±p¼# Ãä<è1_m*qÈ­]W º\W‹Ö²@תoÕ™iW9ý]x!Ó¸ï‚E¹öÒ»^û[²Öö1ˆËÚ\1Тìi²JÜ #ªPê®P.ù¦Å][›Ú`.q†òñÍ—Ã&…X³àRŽP5¾`¾&m-keä{Ŷ«¤ÜS“K Fâ oIïåYªìJLWÛ˜Xn)³ø{xf#-˜Le¬¿­Ä¥%J$‡,¨ Eû;‹RŸim+޽µJ )®¤š—C4QE@n€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEPQq@TÄÜšÔE¹‡ÆjL€¤Ù·]-¤§0ÍÖÊ­@Ì@¶¤q{‰a­Çb´ë¬)…© ©µJ ‰¢¦¸¢€(¢‹Š¯Åïw˜fÚb8)#ÆpŒSy×`NÃCn·ÅFWs¡i)R@âús×_ÚQ@jÚJJ3)Y@•©>“_+jp‡1Ì VÖ1Š`ê-¦aÎ%²‚ŽB´¨ ؤÝ'BmÙo¯q{^µ'¬5­dðQ³”³ûa'jbïoŸ1øÏbù±”‰ÜfÐ혧-Ó¡Äêµ÷çîËÄöcÙÜzn/ÀƱ'q%‰³ —Å©(ޤ€[m  kmA$W%饶[o²àmàRçá˜$Î"dMˆ²…)ðAKeÄŒÈꤺüò›|mÉt˜}øK¶ê*ä­ˆrdGžÅ’ëá–”ç IÑ%e(X \åjU]а«:>lyö"ó£»k;N ºœ*Òa¸ö1´[Mµ30 £†þZ˜‡QDX­)B ÈÓ2óMíhö»`0FqŒOlÛM ØåKJ‰»i˜îäR·ÈZRm¥Ó–þ½klJÇÚ\»O‚C…€¾¼¨v)ZÝŠ“ÉK¹³€i|¡&× dž¼]óíÖðb½„âØ¨nåxJ ¡†ÐÛvÍ•ÂBÔ µ$›u==*»šŒø5wÆPôî«ÙLe8;!9Œ]”üÿ —.BÔxŽ­Ðl¥’5ì«;a·;!² iEÂÃÝ{/ •¯3Š‘7VKƒÖµ†·5ç.í6ÓÉÀñ¹°¤=n0‡)lñc`JH¸ÖúÔ¦ÐcÔ…â˜æ+/–l‚©ró"à ¨žZ馵Ûo[§ÇîFî¸èzwƒâ˜n1‡5ˆá3âΆð<7㺗U‰ÊI Ø‚¤¹q^da}¶[7‡=‡aXö-…áò^L‡R› p$§6d H6 $r¤­|ÛÆ‚ó3"í¦:¢Ë…iãËSÈÔs!d…Žä›ŽzT2Ñ¥—‰¯êe\®èô†õšPº4oŸn6‹z¸~Íc8±Åab |ºe9™)iK J’è ±êõŽ—Ö›ÑÈUeÍ´­ç±¼“Âjk!ET⹿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ+5ƒX`]÷±Òc ÙìgÙ½šÂˆbpd*+’%¬!Ô(‡QÖUˆ°Õ77<€*ünÌô¯ÆãNJ¶¯Ãåáê¶eaÙšy±}TÔ¤®ÂýRSÿÅ\‡¤Ë±çoÃk'á‘Ld&ham©°œëm mj·.²Òµ\óÍs©®d§¤9—Œ•pó«­r{Hú+ÓÛÙÛy J³†s©»†;ØOJíŒuù‰Å°\V -’b-¬Ò?êO gºêOýÕ_éa³©  eq9·?žðÇÛ”Û—‰˜úòM&ÑÛ ­M6²”¤ZêÐEGùà¶•)@s'/Óz‘iv©¦×s|ÆFoK}«sŒ;ÀÚŒ\PŽÓí:·P‹èRàVµíazû;eÒ„ËÙ8|<%q§O„ãx£Í¼¶•ÂnÑÕúª¾GÎ` ,¥eh.KåDd¡Ö…Ö¢¡¯ÏUdÉ‘-E„ æG1þõ$ìm1ôÿs ­C«o3}»s´êÂxx¬è-Ãg†Y‰$ ¾àY!åä Ë Ø$JBs9»®Hoó)ˆ¡™ æR³« õ€½‡gyÐÕ(yá¿Ä˜Ùލ=•4¼A¡M$“ªHﮊQ§Jõö4“”™¸r\ ! p(Y ”ÕÔbÎIÀŽü©©"ñ”å)âdÙ²é{^Ú^ªEeå2$H)qI‹ÚÆ£\‚´*"ã¤8áî°¹í¸ì©Öcz{š24 8ÒU3¬išÄ…vyTØã¡Ï w#‰$ˆ•")ð54K€[©ÈúEj_@mL¾ÑJʵrßmiòådÊdÇÐÚD5çJ‡X 3§ì¬)n®_PËP !iÑV5²ŒÈá ÌnÖHO:Í"Hj[*@ 9I6>°kfóÃf2a¦\@[*a¹:êæ—±íÖ£Ã[‚P¢êJÎb5W!R¿ÂHu‰J xÁz{oZºÛc—ä­hfüò¤ž¯¦ÜëäO–¦d'€ðQ"ÃA°sÿZÝh°ŠÝ9çìaÝ7Ñ6Ðt–Ýä ‰áîÊħÈ^DáÁ¢Ó­›]E®¨HÐ]%W&ÂöQÚ>”›4öËÎ6DƆ´Æ[¬2Zeò›%D•›¤*ÇTëmFº'öÙüÛÉ+xøª·op¡™%N-¹ŠSDu@ºa¤Yñ¹¼õêiçÔgÚÇ6Ãk±ÈÍÅÇqœg„‡8…©S}¼Ö=pH¿=‡»)M;©Dq¾ÒG7 6Ћ„«·TƒêÕ3ˆiA´-ÆÆ—˧ÓUÌy ¥Çq .k“–Z±J1Æ„I·ÔL<‰~ VV @Ê;{yÕÙn0§bBK …$‹ž  LS‰aå%µ™+Ì{iüêG3Å?ñyd!CSÌ[ÕÙX‡Ê›þ`ÌxŒ/3ˆ˜ø<Ì5û*¨­­i”Œî'D,s>Ÿ]e?•©ÆXTÐa(-8 âBˆëk¦³a,/Ü4ÓdKEã)I’^)U²«ž^ïI©Lô®RÑRHË|·­q–ç¡èѳÜj”Z‹}:Ô²ÌRãª(aÕ]I$_ÓQʼ)¼JI6KNÞ¥X·çЛhö?ÆÃ.àvÚ§Wà–rŠÌWîUDW’¨Òä2”¤¥Õ›Oïè©ó ²ôs6]Е¡>0åphCЕLŸ¹üعP=Õ4lF:bð\m ¤e))Ô†ãSº­Òý8'·Ó--ó·÷äëöž&ÆïFKÒÑ…qMËŒ%Å€Ap4TT OW[‚úŽT‚toÄ÷u²ÛVÎÐ튱i8‹/„Âa ‹)#ó®]yÊ“s M†P  ¶Wé‚9T´êήe9e”:­R¨•:{WìýÌÑE!V€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEPs^“žñµ† Ä| ]×W”)Dçl©iÌÚEµRÀ¸½ÇJ®)Ó7DÉɈµ­'Ÿ2,ØP$(»bn2‹2zÀ+[ kq5´7ÖŠ^¦•"Ä1\b——Õ6È›j¯¦®6¹M6°¦’‘ P=œ­D¯‘fМâ÷Î-Z?<“%Ä•)'Ÿ*÷e6™W”D•›4ËJE휦®¿! <Œù„-¥lë$EÊÓê ‹ê>zùíªRßÊâ’BôÍk ½lóMaõfV]æƒÒ³KirêM†nßçVY‚Ûrˆt¸¤¦qbOúTò˜CL%H]ÝEÔÙ=äëz£"t‰ ± °ôžáßPí7™rmË\Bba”»×r‘Ú>z¨÷nùCe ÂÄšÑ>‚ó §^±çóTÒ&µ !¶Óuæmγ:|Ë…èb1máuÎÍMšC%e][ÚÁ>Š·ù9˜Î²—¤º\p“¡ÐwÿToTtðŸMœ÷ÖíqR˪,”…(@?øçõ»š”!F§åÝ‹A·£ZRJy}ŸbÄølºævåõ ¹ U~âHaÉn¡Û…”¨©ßŽÔ28èrPR .C¿Në¢õ$8PqB”»xÅgOUy©jw.%6Ó=:Òm•]Ц¢×¹ŒEø2£¡µ¤[0ôUI1pÔ8ëIr×o_Ûýkv£áÍ:â ¥.§ÄZõ7ì©É–ìU:d2¥››X‹ú†Õjk“H–­­ùu ›+Fa1¢)‰0\Zܵ–S­ÈÓ^ʲ>%žuÀìtr±ÔúÅelb2˜ÎòÐÎCt‹æÍóÔp—6QJhø=Æu(îú**•§Uî“Ë%§FRŒb×§÷>ƒóñI»ËÄÓ Iü–Œ1Fi\ùÓÂÍn®-õ°rÚ)ÌOŠ)'èý¤‡µøÄEŒÄ¼.K¼˜´¦Õo% ’ ”TMÀWm; ñEw[¼Àòš´f®–?#4QENVæü¡sý¤Ç~äºéÜß”.´˜ïÜ—OýÚ@>/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿZž|«jÁ½aƒÏøŒ,[}{\ó2d8Øžcž2R”†”‘ab¤(Ï(Ö¹¤,‚V²I 6Na}9iô×\éSo~Þ+³Ò[–•ª{HCR’2:E®FT¨›øÊX:ƒ\½ÂÜשí¥)V€~·Óú½ž»k¥[¨)ÒP‚†TW'}T­O{–è»`–U$»’Ølê])¶cóvßüê6Xq2Ëhâ8ófáJWTÁëÿnãWeµ\(Ѹ„ €… ÃQ{›v¨[ƒ,¾±³åQuYн?mq­nUêÊ5^ Ö1éîXÏDT)ÅÑ[¦ŸäÌÃÃÒ¹ L…8ÁB´m+ÞêË‘<bUÂâ’3% >7aõZ ’¦ÏÇ”8į6œô©b¸äE‡i*ZlrJ*‚Qåáð_AÇ .8~¾„üqRRÛE °º¾Ãý÷V®3)q•%°ÖS” jO`õTsš’©ˆAoˆo•Zvi{r©„i‘ÙLÒC®j€n2ú=5§bl)Iðóê@q®vèôéR†¥3<5Pp庖µò â **c®)'@RSZ­*´˜Mx9JI%`€¯ïZÞ•¦öªoô#Ý|ò¨›,x[˜qáI#‰Ì(ƒ{Ô ;Î[òU”œÃ³¼Uvä‘<‰9T´håöÔ³ßaô¡µ ÂúÛBi«Hh“vž{—ÍÝr×⮼”³ølë=7u‚ooÞ8Î$ÛX\——2^žåï‘):ä°%jN Š®—éÈÑ^jîïÅñ=¡Œ˜Åðì!M)'bÁ ,ÜfJŠ‚Ôt׆¡¥ÅzM."+HuÀë‰@ XÌm©·eqÛÂQÍS‹Y”g[rž}—DKEWAN€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿEP/Ý:ËÃt¸W€£4 Åî<E04½ôñÁ÷G„¸í³øyÕcþâõ#«ô1+<2ŽÆU'Eê‚D¾;‰Ê ó“n}úüâ‡rân–“p +¶œ»jÔXΈëâîBP’þº ö |þTø+¸] .J”ImÄ“§#¥J˜éSwLÂ¥„•Èz—ò‚«Éde@·x$l¼7ôn*6¸H¯Þ{( ¤ùyŠæŒ™¥<€¨Hýo]JûŘÍ8iN}.¯ûŠL¡Å$8´·ÖNo¶ÀújU;"K‰iÈ«J’[éÙöô¬‹ÕYØ{‘’‰IàÛjšÁaæ¦#‚öpARs›[³³×YðÙLHK޲T„ßP.¨×e]2î—-e{0Ôìj.e‡îa“  °äu¼ ZR×ÕRA†ËˆZžën@V€Žú‘©2eHS¨)hXxÞ5ꢙGÎ+îî†ô $r©ihוc»fMbΕM»³Ž ƒ³Tµ´ÑÌ”’’²k L“ F? k7²JGU[”ì©§ÛÈ¡ÖçÙSÆšãΩæB@)Qñ´?ßÏV•´:_ $÷úúýOŠùÞ#ê4 v‹a0q/ œÙƒµx«èO„¾ædIN¹o@ óI¹Z”:Ǫ„¶C¤ £z6ï {j¦ã_••Š2pæ#6„Â\p˪ÌVnæ_-© ªÏèä*½[V·J5cƒšþµ Õœ¨¶ýsêQE!Üß”.´˜ïÜ—Oý ›ò…Ïö“û’éÿ ÛHÁÅúoÆ}›ñ1©ÿ´€|_¦ügÙ·ÿ€ë³X <ôé'Ü7~WksúNc™ÖÐêÔ,,n¥(A±¹®zœ2:Jynú3è= éýöWA邪û6¶ Eèkše(­Båo%.­kRGhs­sc6ëN”¦Ò‘v‚MÁùê¦|ͤÏuk¨AãÄ2ã8–WcÕ;r§ÊR¿>Þ_mDìdáí&S/©Õe%FâÞŠpm´¸2r”êmÚ5ì£ ”û6¤ž@÷Z»-­¼ç–ñÕú7WRÎÏ™ð¹îNqeD[eÕ/ÔHí#Z‰R'ª1IHÄ…f*CâSÜ•·p’°l”ÔoÇZT”»*ÉpÜþµéí¼=nâ§»v#ÌÝxŽësŽ6¾Œ•sc=ïYJµ‰ù꤇–ë…L'Pƒ§ÌjWâÅiam©N85BIêÖ¸Š$ºó+Ȇԭ.¿ÏWÊ’‚úRÇ]Ï?:ó”·JOîM1,GZK©›žµëWãD)©HF¡!:¢°c˜A·–£!\ˆ¾ŠÐºòe•Çd4›œÝ¶Ó—emˆÁa,{9Jo-å’®D¹/³E)"ÿõèµ£«—1$!—R¦õÔZçºô!NÓàO—JÓÉZXß_Uç*;‹nBr8 *Öõ¾å²“Ã5y|‘¬¥õ"Ìp•¨ ÖõÔEnžŽòÉH×1¯ÿŠÄŒ“Üâ)Eµ åBûûHû>Ú#¶†&”<èzê}¾µQ‹xëîg/®K¸€ÉŘãâŽÂŒ«Þn8yHEÇY(ÌŒÄw\rú}G‚ÂbÂb2âÒËil)Å•(€-rN¤úkÏNîaMo³d]™†éðð„4†C„8¤©-¸Rt R\*æŒÃ•z"9  ÖäÕHÃÑV¼¦ÂŠ(ªC¨)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à½8ÃÞÜëI˜ì¦¤ ]•ASA98Á·tpJ2q5…eæÞ©|éâÇ„n—oˆP?Ä ’Gÿ·‘]VQÝqîGUâ Jã';H)”¦Ýä¯ÖÑX v# °Õ:Úã¸vVfá­!!ÆžZ,,G¦£aÈÞã.¸P²|`nUóײæoB¹sɬ԰ðk˜xuÀ*J‡opµJœ=Õ¶—Œ„qRnSš«·ŠÁSr jÏ`ÙÐ yPÜ™H»\›º$Úþº‘8ç2OÔƒ¡¼WBßqÒ•©&ÙU¨šÝÒ…ÈKñZδ’”ò5…¥„” È å½ùs<«HÚc3Bã*¯ÎÔM}2ý{™:ÏE 3òÆüð ¼™¾ šcÊyG,d u_ö*èu7°#2}…%Ýñ=½l^;hh¥X"Ö¥’T2¾È,ŒÉeuA±°$©³¢žB¼Æ¯,Ü´žR;m’ØQEU¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSþ;iø8¿MøÏ³oþ&5ÿÖ;ë5‚hŸEià nË”ão¥V XÔÍ*Þ¨Qå…%vN†ç·çµ[ÄŒi…ICn,àEÔ-^jï]tk:NŸ¹é¬´×¶U¼Îý r¡¿û%âLµ¬Þ>D½)‚ÖR H7$vV¿eEo/G‹®$›Ù]œ»Žµv4É)u*˜…!´\Q¡6ås\¼CqJ*3JE_ZÕžè7°SÝi¸É(pëù±¯÷¥™uF*š+‘œ¡9Åȹ:Ÿš­=Àzp0²´ñ2Ó ùÇ+ÖÒ!¶ÂÐêŸwŒá!KA+Nëij𧉦ò”àŠ>ŠI¹ewûV¨¢)Ü%½JRÙÓ²÷¬!˜6ÒQC«!!C^Ýξ³±^i€ëÎ`‹)*ÍÌéUZrSœ0‰C«ÿp#²Ýõ¢ñ-IF[¡—Œ,ÏÂôá8üø]^}=Ž›Ñgdv–vùð™øT¸' pI”òœnâ9+JZQÌ¢°Ky€98€Ü´ÿ£Å×Jóó£®×à;/¼h˜îÓ1‰4Ë–„©”ã–Fe¤êPVz·7 °< ^jDfŸŽê]eĶâUp´‘pAíW»ÊN§UÁéYBÖ¯ðÓÚúQE’¸)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  ^z{­Æ÷C„©´©Jÿ3 ÿðò)†¥û§j’Òá*SKt y­/oøy×M—ÿx}Èê¬Á‰rkÉë²ê[¨F•t8Ú²5hXÄ/¸‹:®´Ï -«€áäž±ëcÝZ‡ £© m©bÊ!7ïù«ÓJ­)Ó’ÝúÓ¥ZX· ¿DZ-øiÛÊqôó =[w²¬¶$ÊmoH/FHM‘aÏ·SØ*¢ŽYâû¶ºˆä5:Eþʲ1„–‚,T£ jI¯¬SÛq˜§†³Ï,÷:-UðûjIqžž¦¼h«Â–„)y€ÌH$Øóª†/‡Ë°R¤iuZâúÕ†åÈŽC\â–Š@<Æ¢° þ•ÆR—ºQú«·+wUdSo rZNI¥9p—S\pñ†@Ê’ó@-DöïùÕ¯5t¸ó‹u±Û–À»gæ+;™Ñ}PØ6*ô›òìûkhòƒ3Hy "Ä«õ½]•ë­£SM±yç+±ã¯%ORÔ%I5‡ßѲ•¾®+βÒÉPJÅ®{Á5»Ê2¶ÂÞmZ¡bßm[Åå1"8NT•ߪyÔ M–#ÁZrè¤j=5µúÎŽøC>¤ëÃöð¹tåQµŒ¬uüÍF&—m1Ⱦª¹¸}¿5jÚæ³™ßuhQá:‚?UZHÄÔŸ JPØXAJ ÷¦§D—âƒaN9lÇ%Íï\«Ä—+²É×þ˜´}e%ù=-´ü'’Ø}* ¨‹X·CB‘1ž?¶Ãz¤r³ÊßçöU˜ ĵ¼úFpH °kÚ+uµ x…”Úb :·×ž•¼At”’ã/$ðå³Û&²ºc=}ÊŽ77"d¸YZ«¤ÜžÏó­™n6*»:…%(OŽ“kŸçV§Çm°ŠTšå9‰¾Ã¿ŸÏPȘ·ËqÚk#À‚®šÄµûš”¥ß¿seáûJ5Ôû.Ýr3]vWkÆö‚>3!ÜB#"+|"P‡T— G‰~N[ ’AºM6ƒ¤W£ðçl†Ü3ƒ. 7ÛÚ)Ðà¾JÔ—×R¤¨4.¨Û-Ȱ¸<ž”‹$EGN¼ëÅJ}J]NÒ6ÕÜ`±Ê3EVåx€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õ©¶¬Put–Äåb;êÚÉ2âª$–§x28`ÙHm)m¢oÚ¤¤*üúÖä-\òl6ü/8µ/K)W$ú-kz+ oÿ \môm|61FfF^&ëêy) §ˆxŠj×:¡J-“qâ^ÕsæÚeÐÊ-Ç ‡\ Ïö+ÚÛB.„#Õ~ådÛÝÉz+±ÐÀJR€›wU%á.¸ÔTºƒ»ýª¼˜nÇx.FN¡vÃÓôÕÄ1†[ŽñoN¹'Æì©›”ÖÆ p˜E€—qå r õEi.;Ë“ù‡”Ü•µWð§ã¬²œÎv¤§[ŽÿELÂxªKî© »=4ß¶¤a).L³iJŸ’ZlÎÝç•JÔˆZCM%I̬<`AÒÞº„x;–,´îTΤ+Oœvó¯£"f[lð›*AIM†µçµmZ ÛÁgÝ“HÒeW’Xé•Ô€F…- -(ÆW4wÙ§®õ> y-KNŸ0¨Ýc [!Òµ¡Dæ9UôÖ¨ŠÂ™\”Êp$¨Ž©° ó¯)7—&ò{HAFK_—±’èyZö•ÅEuSëQE’¤)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à:KˆÝ! -mµŽ2]RRHBK/§2»†e$\ö;k¿×鯧[Ý^¶ÚS„c­$jmÀéìÒ¶…gBJ¢ìKF‚¯QSoUÎKË/ ilT;u[ÔIùªÓSOÑÝ¿üÄ€UþT ñ]°ôt6²BFdkéçÊ¥[1’¦“ðËŠ7¹7IÓüô­®u·qJTç«ö= ¦ˆ­êB­:ŸO_r´†U5ä¹”Å!'U¦×õ­B9b#ˆ’•\Éȓ̞F¤"TU)o¸€Js„õyêjUb ÌYⱯkE¦ÚÕuÊ”T³,¬sÉaZΕi&Û‹ÎqÐÚ+§Z}Y‰²’¯Eo3>$ŸÌ‚ß\•výúê$Ljô’Ó’¸éÊ ÕÙ¯¢Õ£­ÃbOƒ¡\4QVÍë¿÷é©ì-ZÑò¤·õäŠúóË·œkG4ßEvF §Vâ2('©{èm®•bcÈ BT¬×¸6°ìåP6·TÔ¬žDCÕQ9g!-©jN™Ñ¨õÁ^ƒ^søX¥Ýó÷<χö+™Oãƒé°Ì¦(XÝ)Ó2oòìúk Ü¬9m%”…(Úç•»¹Uh¸Kî(¡÷¸Okƒ|£ûþõk L4ÄÂóó7:ÜWŽ“xÆroñ—½òj·g8ÂÐüg•.ʱí¾µŽÜÈ øIyµq•rn;µ„ÊŒ†ÒMã©Z+5ɸҶS(r?¹¤] *ewPÒî«f1‡¹ÁqªZSùœóÛó0ë(\S%rHR®¤özªDá©fÈáMÔ•›ý£ý+(r:šZe ËP eH¸6:5½Cá“#ŸZ:ߪB®-ßP«;™tƒë‚Y]ÙÇ™ËªÏ ÎÄðÅ&[Å oÅ·oeýU`·"CjŒWð†ŠÌF½ü¹Ö’älÁÆTðZtQ׳—£ZŠ<7”…­&*Ò BmãvÜšÍk:ô›sŽã8÷–õ`•9g«÷?u¸ eX÷6nSÚ•ˆ/DL®$•ãÁQI¸ëeZ¬I°¸ÒÚW¢ã¯2·c´˜®Îí–Œlû<|r;á¸Ì–xŠyKº Yu'>b,zÚXÚÞš'Åe;YÅ)K9çìyKëè]ÕÌ#Œq÷3ETg€noÊ?ÚLwîK§þ ÍùBçûIŽýÉtÿÐí¤àâý7ã>Í¿ø˜ÔÿŽÚ@>/Ó~3ìÛÿ‰@?õƒÎ³X ^—øV ~˜¢vzGçd2ÌœI•‚Ì¥&êËdÞžͯÖZµì†L4°Èu·Jå@Zäó®ÁÒù¹XFÿ1·¦°gf,¨ªÌ’h0–Ь9uÚq=k;ˆ®@ÒÌçV éB9¤Û™ï¯ee±ÛCœ¼µs½™J'•<Ž*Õ¢P±äuú(-9*A e–”‘ 'ý45¿ BÖ°ü´§‡ª É5%!+}2î¥Væ+¯kÿŠû‘å3(€éZÁ HošÛñ =¶¶ŸÎ¥K >V´À(R iÕ7·2{ϬV`eLD¨¾s‘s¯i¬5"|„)l0Hå_¢ü½5æ5kIźή#Ù«G»¤á>So<á~ä’1¾ßƒ4ΗDòõŠÃM¯ >V»ÄBn?`¬"BÛmO!Æü"êâ‚/ËO³í¯¢†Ã°úò %66r¯&šÝ‰HõÊ.K)r—äRÃ"Â9”ó`¬-›AQLŠ¿ [0Ô8YAPQÔzª1 IgŠ™d,xÝQ­F’”2…†žC‚ÜBo¨þÍz+«ª¥_èêy«í~—’éÑ_>zÿ3,.;m§ä‹ÙFå[Ö[aá;9OY >1í53Ó"¡R‹æú{ê«oJ+Z"…8‚Ii—Ñ^¶TR„Çlu—ì†!Ù<#Âã˜Ð&ÁfDVJ’ÛK@RdÜ †•æ> ‚bX–=Ú~l¹Ž˜ŽÀG®yÉ:\’A™å^ `˜l<ƒƒáÍaAŽÜhí•©YBBR.¢I°RIïªkbÙ°ÑÑnå&ÛyÉrŠ(ª#¨)Üß”.´˜ïÜ—Oý ›ò…Ïö“û’èþŠ(  à]9b>ê°¥¿âœu -ßÀ~»íp^œ%mÏ>–q¦”áBI ‚ËÉ 6 Ä&çµ@vŠŠ·ÐÎÍ9íºƒ÷ ÙRÈ„„…mÛýéSaÍ@m“ÅJTï"TI·§•R/Í/Ž#hudæpkyÕµ7$¬î´=u$/ÞG?¦«eazÖƒ“’\÷ÉåÉà.+Læm) .ÖI¤n2cös@J“§Î{kvñÀr31] ß+hOaÜTmºÛÔß‚²3%@x¾‹öÞ’ƒ”T—Y#«)Æ2q–xê×B9,0´†Äã¸BO _² eQ[hZJ—Ÿ¬T3¶·[òÚŽ€üG=lÇ•«~3SMÔÊ@i7ë _Ñþe{»+kkznte¹ÿœ þâ½Åe ¿.1öû…£¿™ÈÇ‚†Óú£™îû*V8(aa2œRT¤©Å u~ÏEhûíÊḆø ¡@9—BG`ŠžKQœm,BB’µj¤¶t#·ìªGU…ÝEÃo¿bïMÒ¥kY֌ԔWnù5uIJµ?礜Âé"äiÏOUSt-â§UBæê‚¯š¤(y—CP›PBüt5ÄÖÎJv+åÉ 0àh;õ®«M…5“›m~‡ æ¿Z®è(¤½;˜/8ãˆZc”†ÆUgÐ\ú i:*˜l¸Û¥I&岿³*C®6»¶èm`X„ö÷ý•ªcÎ-¥ÕŒèN¥¾ºôO®_¹çyêJ©ÈØe¡gT:ºj*7Ÿ·àÊ`¥ðt$rï7î¬=)© o‚„…¶nl-EJúž’Ï ) l’E³µ‰¦xëÏó Ëðæ„!Þ:\)Ô§•aå¼[Cï彆SË×Pï²ÜMô¹IҭǂӌYÇ«þ¥ô¿®°á ß,VW¿¨IR{“ÁûËm£› ¼,;‚Áy.­1&4†CŽ?kNd¢äú›¨‘ ú.Ÿz«ÏÞŠ;+ß&-¸"l,ñ*ZŸ})KVJ‹k )j µ®¶m¯@Ç!^sYš•eÆ9;mÓQaEU9Ð ›ò…Ïö“û’éÿ¤s~P¹þÒc¿r]?ô;iø8¿MøÏ³oþ&5?㶃‹ôߌû6ÿâcPýkÛ[V¾šÃÈ”tãĶ€ï> iøSÍàñ¡[ Z€Srse/­&Ú¢„)$Ü è.½äqîˆÁIq$×ôs®ÿÓkÆ[ÞÓQåºäŒ=œ=§pöÀ²#…©IY:ž±Z Õ`l5Ê+ˆ¬ÅmÖC yð:ù7=ö«Zššµ¶Œ"òÚíÛîvXé=ÓÊI÷ïö+=‡) œ¢XXçêµWKÒ”„%j ´°@p›Üb®ÈeRÞ/)§š@æØAŽÕ_˜íÓüªÒñ,9¹jr,шRTÓ u½-Ì8¥æ "äA&Öª*iëWpƒ[²Ëêº%¬ê©(á/sæ&,eø¾„©wx€vvUÄâTgt)äG";©¦Æˆ¨¨mµÊ‚¯{Uv£9õ%¼ÓSe?Ö«ªÜηÿIg+HZ¼ÒŠMõhÕô¡M¥n¶Ê| ›¨§TŽËÖ­0è!+•“ÉVÔú*U¸–d-×ðóÂsªëX÷[²©6êp(¥jHQ%ºÕw¥ZÑ»£*rXöþ…¯uVÒ´jFYM¾¾çÒÁp\o…)8ÏâØ·™.Bˆãᤛد 9AÊ®}ǺŒ&6+´*^`؆/,6V¨ðâ­÷tå@&Ú}4ít1…ŠÆÜ«2ñ–¨ó§="EJ%–.kÕÌ´8°"ÊB£]°ãZ­§«Ô¢Ý8¤Òãô<¬¨*’ßÓ<ž[~JÅ¢b‘ÿ b1ñWà³ÄX}Ńâ%ÌUÈX ÕÇðm¬…ò”ý–Æ#DS‰cŒ¸¡¾!äŒÅ6Ì{3^ž‘Ùm/E´µ­é•Gn¬zD|4_sÌœod¶»ŠÞ9lv3,‰à8Ø °ç˜B…%„܃V_ØÝ¹†Ì)à­ D\FÞ¤aîž"Žk„r’u  z\bǵ¬~7YtH|4}O4U±{VLG`¶•¥HXKAXSÿœ$_(êê}ÅGñ¼Œ=Õ²½ßíP s†’0—È'¸››zeb@ÐåF_EaëUŸdgá¢#]¶y o‹ÄÙ¼g‹ j~L©øsŒ·Â )Si+ ̵çÊ-{\ªÄ$Šz!Xì¬×ÕÔîg¾}IiÁAaQ\ÆáHæü¡sý¤Ç~äºéÜß”.´˜ïÜ—@?ôQEWéÂâÝnâì?õÖ€6äx5ÿ:ï´½tó ÐaaÓaùy«i}|EGUf ë°“Ìõ¼Z{ Œ¤ètÐT˜tˆÌ1•'6¤’Nj©‡DІÞT–‘ÅeJζ"õMJˆQüón^á°z¤Û¶¸¡jêÒj9x=…K×J²•L,¯ó'Ðzs¦oü)JŽBNcjĨ›2+[„\€FP{,*9æT´¥-FKJN—祿ʣRß,¸Ü™(FA|©æ~z±³Ò®ÔãSgåuî¯i(Nœ§—Û‘×9ç?âV[¬yj{µª)ˆ)-º\C]€é ì«Pç¡¶ò/E'C­ v4·§¨S•+&Ö#¸×²{jQ§Ewèxª•jÝÔs«.q×ìl¨ÐRT”«.d›n."¦ÁpÊnhN99å†Ûi¦ÊœqDؤjnyδ„Ã\›‰kRˆBH‹½~ƒ`NÑâCÉÀ›#K©r0ŠŽºY<’HºÕdÎÂõãµjªâ´¥oÇæ{-*›´ ›šËYü»ñÕïZ‘=Ý‚ÇÖÓÍ%Ćb– ºuXê’Mˆ jV·?½¼B 8£[Œ¡•;à y!·s^×SJ!a<ºÖz2Ô­ªÂŽ©Z%J=åkÓUªJ¤º¶y¾æí·š˜ÎH{wÛLZaî’0÷ Ô²©JAR‘d‘œ›‘®©¿Óor[âT· ·°³s €.û o¼Yey„j–µzY©Þ·q/B†çÑï[ ņ'`q—ßp¡Èìq£¨«AwQt$irJ†^ÛWÚop;ëp©¯ðin÷ë+‹o±Êô é£Z×ñ›Œcƒ? §žð7 ½ÉxƒØÛ ìg[Ž^T‡¤ GP”¤:’R¥•à¨e c£æû”§üyN'úµèEf´zÅÆs“?cè—¹­´ØÝ¨´Ûcaðg"1 2’âÝ+-’â¸J(ÈH Q$ž±É%œ…W jò­=óêK¨¬ ¢Š*#aÜß”.´˜ïÜ—Oý ›ò…Ïö“û’éÿ ÛHÁÅúoÆ}›ñ1©ÿ´€|_¦ügÙ·ÿ€ë^f¶­iÜ×û1ŠàûÕ‘‰™ÐåÇÇ“Æi¢íÞa-¶Ú9@ &áf¸I¾¢¸~â"©m¡‘ÆIÊ¥Ž}׿u0=6¤œKz`³ˆ³‡áˆK!ò]ZÖ¥  ‘Á=öË~ËðWb¸ã,Çl<ÑUʳ$+OúXÞàUUv”Ú=Κª;xIöþE—pIJœt-%9SÛýëQ:ä<>Y”¡ H±µîj«<Ë©vD¥¸Â\ÊM²vs:÷Ö1¡å%qÊË?7¸âßmFéíxÏk¯˜ÊJ<ç¹(±  Ž•usië·ÓX[Ã$©¼™[6Ê{´µý5LU[,“pGh«l2Äæ¸ö}·ó(,’TÝ’SaÎäç¹¾£/¦ùÂÏÍÐ× Ëy™nV ´’vtmJpiílñu EqÏj*X*"ÊHP$h Ø+õ]6 Þóâá[Eˆµ;m!ž´Þ…؈ԧ2Œr¥Z|ko¶“Ù8»(î32> Ò ·fXÊ3¥É2³(››Ü“]W£¦ç·ƒ;mvkk18 Áð8x£s<)²ä„ÛiBTU׸¾`‘¨^äëì*VYÃ} ¬Jµ[ÌÔiµéѳM!¦’ÓM¥@ H²@€‚¥…`rµfªp¢Š(Š(  (¢€(¢Š¢Š( ÍùBçûIŽýÉtÿÒ¹¿(\ÿi1ß¹.€袊®ÓVzbnuCœGb3Šq7R xÙ*»@\ƒÕ*·ʸOMÇÛFæÑp£H3qfKŽƒš9 qÌížÅÙEû–¡Û[B”«ISVIF´hÍT’Ê]„–SŒ--;Ãye#®¥¤ê?óo¶¡\øêt!¶Òµ¨h›ëÙ[”I-«þ%´†üR”óï½K”½ó«í ÐXƒëçóz½ì4û„¦¨ÁçÝœW÷ò½«æÉ`†G„Ãh­/Ɣ҂VŒÖI)I)!@¤’“`EÁ)Ì5¨Ú”•ŸÎG/*À%Y ä;û+3›i§Ð®iQÔvUàû! :–å]°MË œ/O”¤E[dJ*ã¤Û澞º´h,…»šÉ@N—×P=:üÄÖc¦3êSŽ Õýš“r7„¶[$ºBÊÉ9«¿—ÛU‹• n´pøe¾™Vš Û\®ŸÔ· ¸‚RHI"÷w>‡ÛÄÁ¶Sİ/Ó~3ìÛÿ‰Oøí¤àâý7ã>Í¿ø˜ÔÿX7¬Ö(¥ tùm#xsËm’¦”ò–¢ïç (*·ý·6±')Ö—/ÃZ%iSkRRP›å)¾¦ÆúŽÃÛÝ«C½ž»cŽíæ/Œì¶7ƒ›ë–Q‰:êiÕ’¥¤dm@¦çCpuµº·?˜GEç4×ÎÊd¾¤ËOÿb«jQ¨äÚG°µÔm!FuppvÔ˜Î!×d"PZV— Â((d"çõ;@ÑZè4¦Øe·Ý…§–@:£æ¦¶ü7c‰ì½ûO„=¯ÿF©/¢vÝ­·AÄvX-zx\«ƒZyU ?ˆZAnU™Ä ºÒœ*JSmPž~ºùîF˜–Üu‰$6'0"é¼WxÑ+xdãû8F¶J%>GÚÍLŽ‹[Í ð?+ìžQ W„ÈúlEëhQ¨žýM'©ZM6ä“ÇcìÆ(ìlN¿3ÁmòÔÖì:A ¸“©I±Q¡ìÒŸN{ÛFó N7oÅðÐÙy,¬–žBüâë'¬•“|£/XæÓ”mF­«Å¶giØèôié £7&-’Zâ6ˆà-à¢àÎ:¹sg&éýOGýÐïvLü§%ìÄÜ3oJ^x¾ŒÙ D´ «PtPÐØ_qRÚµªY[ãÂäð9©çnìÆråYË•drª$tQYEPQ@QEQEHæü¡sý¤Ç~äºéÜß”.´˜ïÜ—@?ôQERýÓ¾$™;„ìb€cãl: ]J¡Ây6HQºÍÔTÜØÈ05ùÝ»ØíÛ|)¬+i°åN†Ô!¶øÎ7gT«¶ y-BÄÛ^U- ŠXÍöf²YX<ËŒ¸èŠZ}Jkšê7•&2,PàIñM«Ð‡::nqÅ%kØÐ¥$܈JçÿúÔ®ô{Ý ˆÈ½’Ì?þFWõ*ùë4¥Ù£á¤>PÃÒ¬©£=‚T5\‘Yo Sî:”K-6Ý…Ö‘rO`"½s£¾ç–•l’ˆ¿õ9bßýZÑßsÈP)Øòíü£+úµÏuªB¬a”û³ªÖ”)ÏuXîôB´CaöFMê­&ú››}7úL>ºpi¼L2*YyôÊ‘œ¶Ë‰o2l”u¥ «(Qµ••ESÀž»£Dl™ësÿÔ%kÿÔ­cô}Ý$tdgdÂÐÚ|ŸêWž«“©»vR}ÏC NÝQ”6mÏt¿¤trØÕm®ñ#a²p'^ÁÚŽøÅ$:‘’¶Bœ‹ ¬PnHPÌ.i¤ÜÎë79„ªLš“…mŒæ_iã>Sѧ=‹– fµ P Hær¤'õû9º­…ÙÌ3Ã0| Q¢cQŒ\A¿ }aæˆXËÖY)ÑÅj›µM°»µØí‡•&^ËàîaîÉl6èð·JÒ ÇUk)½ûyêuÔÕµÍ⪞KŒ%Ðó»1,õûõ?d9VkvVj¹…QYEPQ@QEQE¹¿(\ÿi1ß¹.Ÿú@77å Ÿí&;÷%Óÿ@¶ƒ‹ôߌû6ÿâcSÿßHÁǦûñ›þÍ¿ø˜ÔÿEPQ@QEQEEPQ@QEQEEPQ@QER¹¿(\ÿi1ß¹.Ÿú@79å í&;ÿÛ—@?ôQEQEEPQ@QEQEEPQ@QEQEEPQ@ ›ò…Ïö“û’éÿ¤s~P¹ÞÒc¿r]?ô¤éßHV×tqßÅï#^ç£ãéÁxmµF=4—Ð[mN%e.4«AÊqÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôPŧLŸ8íŸ×6ýæ‹N™>qÛ?®mûÍ?ôP ?DÍÂ톼y»}¼èx¤,j¼\=JÄcÉL×môHSÅ%j$¥W*I%_­cMÀä/EÿÙ./Doc/Tutorial/paper.tex0000664000175000017500000000607112176660653015004 0ustar vborosvboros\documentclass[pdftex,12pt,a4paper]{article} \usepackage[australian]{babel} \usepackage{graphicx,color} \usepackage{epsf,verbatim} \textheight = 257 true mm \textwidth = 160 true mm \hoffset = -12 true mm \voffset = -30 true mm \usepackage[pdftex,colorlinks,plainpages=false]{hyperref} %\usepackage[style=list,number=page]{glossary} %\makeglossary % \+ permits optional breaking of a word across lines without the % hyphen. \newcommand{\+}{\discretionary{}{}{}} \newcommand{\link}{\htmladdnormallink} \begin{document} % The beginning of the document. %\bibliographystyle{amsplain} \title{ESyS-Particle Tutorial and User's Guide \\ Version 2.2.2} \author{D. Weatherley, W. Hancock, S. Abe \& V. Boros\\\small{Earth Systems Science Computational Centre}\\\small{School of Earth Sciences}\\\small{The University of Queensland} } \date{\today} \maketitle \begin{abstract} This document provides an introduction to Discrete Element Method (DEM) modelling using the ESyS-Particle Simulation Software developed by the \link{Earth Systems Science Computational Centre}{http://www.esscc.uq.edu.au} at \link{The University of Queensland}{http://www.uq.edu.au}. The guide is intended for new users and is written as a step-by-step tutorial on the basic principles and usage of the ESyS-Particle software. Readers are encouraged to obtain \link{a copy of the software}{https://launchpad.net/esys-particle/} and try the examples presented here. Readers are assumed to have had some experience using \link{Python}{http://www.python.org} and to be familiar with the fundamental principles of the DEM. If you have never used Python before, the \link{Python Language Tutorial}{http://docs.python.org/tut/tut.html} is an excellent starting point. \end{abstract} \tableofcontents \listoffigures %EXAMPLE FOR MAKING GLOSSARY ENTRIES %NOAA\glossary{name=NOAA, %description=National Oceanographic and Atmospheric Administration,format=textbf} %EXAMPLE FOR CITING PAPERS %Impact of NTHMP on PTWC~\cite{McCreery2001} \include{bodytext} \appendix \section{Code-listings for tutorial examples}\label{code} \include{examples/bingle.py} \include{examples/bingle_output.py} \include{examples/bingle_chk.py} \include{examples/bingle_vis.py} \include{examples/POVsnaps.py} \include{examples/bingle_Runnable.py} \include{examples/gravity.py} \include{examples/gravity_cube.py} \include{examples/slope_fail.py} \include{examples/slope_friction.py} \include{examples/slope_friction_floor.py} \include{examples/slope_friction_walls.py} \include{examples/floorMesh.msh} \include{examples/hopper_flow.py} \include{examples/rot_compress.py} \include{examples/WallLoader.py} \include{examples/shearcell.py} \include{examples/ServoWallLoader.py} \section{Tables of ESyS-Particle Interaction Groups and Field Savers}\label{tables} \include{tables/interaction_groups} \include{tables/field_names} \include{tables/file_formats} \include{tables/file_format_description} %\bibliography{paper} %\printglossary \end{document} % The end of the document. ./Doc/Tutorial/makeglos.pl0000775000175000017500000001173512176660653015320 0ustar vborosvboros#!/usr/bin/perl # File : makeglos # Author : Nicola Talbot # Version : 1.2 (2005/06/28) # Description: simple Perl script that calls makeindex. # Intended for use with "glossary.sty" (saves having to remember # all the various switches) use Getopt::Std; if ($#ARGV < 0) { die "Syntax : $0 [-ilqrcgm] [-s sty] [-o gls] [-t log] [-p num] \n"; } getopt('sotp'); getopts('ilqrcgm'); # define known extensions %exttype = ( glossary => {in=>'glo', out=>'gls', 'log'=>'glg'}, ); $ext = ''; if (length(@ARGV[0]) < 4) { $name = @ARGV[0]; } elsif (substr(@ARGV[0],-4,1) eq ".") { $name = substr(@ARGV[0],0,length(@ARGV[0])-4); $ext = substr(@ARGV[0],-3,3); } else { $name = @ARGV[0]; } # check log file for other glossary types if (open LOGFILE, "$name.log") { while () { if (m/\\newglossarytype\[(.*)\]{(.*)}{(.*)}{(.*)}/) { $exttype{$2}{'in'} = $3; $exttype{$2}{'out'} = $4; $exttype{$2}{'log'} = $1; if (!$opt_q) { print "added glossary type '$2' ($3,$4,$1)\n"; } } } close LOGFILE; } else { print "unable to open $name.log\n"; } # save all the general makeindex switches $mkidxopts = ''; if ($opt_i) { $mkidxopts .= " -i"; } if ($opt_l) { $mkidxopts .= " -l"; } if ($opt_q) { $mkidxopts .= " -q"; } if ($opt_r) { $mkidxopts .= " -r"; } if ($opt_c) { $mkidxopts .= " -c"; } if ($opt_g) { $mkidxopts .= " -g"; } unless ($opt_p eq "") { $mkidxopts .= " -p $opt_p"; } if ($opt_s eq "") { $istfile = "$name.ist"; } else { $istfile = $opt_s; } if ($ext ne '') { %thistype = %{$exttype{'glossary'}}; #default foreach $type (keys %exttype) { if ($exttype{$type}{'in'} eq $ext) { %thistype = %{$exttype{$type}}; last; } } if ($opt_o eq "") { $outfile = "$name.$thistype{out}"; } else { $outfile = $opt_o; } if ($opt_t eq "") { $transcript = "$name.$thistype{'log'}"; } else { $transcript = $opt_t; } &makeindex("$name.$ext",$outfile,$transcript,$istfile, $mkidxopts,$opt_q,$opt_m); } else { foreach $type (keys %exttype) { %thistype = %{$exttype{$type}}; $inputfile = "$name.$thistype{in}"; if (-r $inputfile) { if ($opt_o eq "") { $outfile = "$name.$thistype{out}"; } else { $outfile = $opt_o; } if ($opt_t eq "") { $transcript = "$name.$thistype{'log'}"; } else { $transcript = $opt_t; } &makeindex($inputfile,$outfile,$transcript, $istfile,$mkidxopts,$opt_q,$opt_m); } elsif (!$opt_q) { print "no read access for '$inputfile'\n"; } } } sub makeindex{ local($in,$out,$trans,$ist,$rest,$quiet,$merge) = @_; if ($merge) { $cmdstr = "$rest -s $ist -t $trans -o tmp_$out $in"; } else { $cmdstr = "$rest -s $ist -t $trans -o $out $in"; } unless ($quiet) { print "makeindex $cmdstr\n"; } print `makeindex $cmdstr`; if ($merge) { print "Merging entries\n"; open INPUT, ") { $buffer .= $_; } close INPUT; open OUTPUT, ">$out"; @stuff = split /\\gloitem /, $buffer; $n = scalar(@stuff); if ($n < 2) { print OUTPUT $buffer; } else { print OUTPUT $stuff[0]; for ($i = 1, $j=-1; $i < $n; $i++) { if ($stuff[$i]=~s/{(.+)\\glosslabel{(.+)}}//) { $name = $&; if ($j==-1) { $j = 0; $item[0]{'name'} = $name; $item[0]{'desc'} = $stuff[$i]; } else { # makeindex has already sorted the entries # alphabetically, so duplicate entries # will be one after the other if ($item[$j]{'name'} eq $name) { $item[$j]{'desc'} .= $stuff[$i]; print "collating $name\n"; } else { $j++; $item[$j]{'name'} = $name; $item[$j]{'desc'} = $stuff[$i]; } } } else { print STDERR "unable to extract name from glossary item:\n", $stuff[$i]; } } for ($i=0; $i <= $j; $i++) { print OUTPUT "\\gloitem ", $item[$i]{'name'}, $item[$i]{'desc'}; } } close OUTPUT; print "Output written in $out\n"; unlink "tmp_$out" or print "Can't delete tmp_$out: $!\n"; } } 1; ./Doc/Tutorial/SC_bulk_friction.png0000664000175000017500000006600512176660653017103 0ustar vborosvboros‰PNG  IHDR~¡p2.PsBITÛáOàtEXtSoftwaregnome-screenshotï¿> IDATxœìÝwXTWúðï0ÀH¯‚ÒìR4•h\Ôˆ}ÁšØ±D£`‰&SÜÕ5›¶²b4›üâ“5»F×4‰]cE’(ŠŠ" 24AŠÀýýq.w 3×)ð~žÓ}þãÇÇŒ#“Éìííu§ÖÐÜ FívíÚåíímaa±iÓ¦åË—Ïœ9SÇg›©ÀºïjëÑ·WŸoµ!)_cƒ®Wěӈ¤ŒòOµ…¡ÐÛb?^RËÝÝ}îܹEEEâfñí·ßÞ½{÷öíÛ<¨ûÓÑ£G÷ìÙSÇǸiÓ&ýÏoÊ—ÀqÜÒ¥K׬Y#—Ë###CBBBCCu|¶)V»vmEj\âúøè£z÷î-“É\]]§OŸž››ËŽ _›6mÚtèÐaÚ´içÏŸo¾bÆ1ð?Sø§ÚÂX»¤?þ£>â8îÎ; ,°¶¶þòË/EL?==½W¯^~~~uTYYùöÛo7(µ†ž/ åK(..ÎÏÏ>|¸‹‹ ÝU^4[uÜUm*++­­­”K||ü¼yóž{î¹ÌÌÌÕ«WOš4éôéÓìGìkóôéÓôôô;w†††nß¾}öìÙ JßðqÌ7_£üc1‘Ü[Ž´PãÆ›={¶ðvñâÅ¡¡¡ìu‡~øááGvvv§OŸæ8î…^ذa;Ø·oß-[¶°×o¿ývÇŽïÞ½«–¾ð-bõíÛ÷½÷Þ3fŒ““Ó‡~¨œÚÓ§Oß{ï=KKËnݺí߿ƌÂÇ===Õr/))yõÕWmmmÇϪ¤,‹µk׎?ÞÕÕÕ××wïÞ½u/¼n^ÚT¾f̘¡#Mµ |çw¼¼¼¬­­ûõëwþüy®{í:[¡|·•ùꫯžyækkkWW××^{íÉ“'¾JöíÛ °°«óµá8nåÊ•ŽŽŽEEEjŸÒ–‹¶ß‘¶ãú|uä¥í&|÷Ýw]»v•J¥®®®S§NÎÿøãgΜikk«\m¿¾Fä«ñ«¢-}åkT~]ï…¨ýSýðÃ_~ùe›   Ë—/'%%…„„Èd²#F°_kSîsóýSmÍ(ô¶XÊC322W­ZÅÞ6(ô._¾¼k×®éééu³xóÍ7§L™"¼íÛ·¯³³ó‰'8Ž+))QN-22ÒÏÏïðáÃéééÇŽ;zô(Çq¡¡¡111ÂǕϟ6mZ``àùóç¯]»Ö·oßšš–EÛ¶mÙ_®;vØÛÛ«•Jc^ÚT¾„‚‚·oßfo_ýu!ôjLS¹ÀK—.0`ÀùóçÓÒÒ>úè#—¼¼<V»vwUÇ­P¾ÛÊ)|óÍ7¿üòKzzú©S§‚ƒƒßzë- vìØaggWYYÉi ½YYY8 ö)m¹h»dmÇõù6êÈKãMxøð¡¥¥ell샒““·oß®\¶­[·¦¤¤¼ûî»B´ýúš/§å«¢-ýzC¯¶ Qû§Ú¶mÛ¯¾úêÆÓ¦M  ;vìØ•+Wüýý…27å>7Ó?ÕÖŒBo‹5nÜ8 ™L&“É 6¬¼¼œýHÏлyóæE‹O²jê†Þ…  o…Ôòóó--->¬öqmÿž=zdaañË/¿°ã‰äܹs,‹+Vqvv>~ü¸ršóÒ‘ >¡W[ù…ZYY¥¤¤?zî¹ç¾þúkÖ3ôê¾Êw[›øøønݺé8¡¸¸¸{÷îo¿ý6{[7ô²búé§zæ¢í’µ×çÛ¨#/7á?þ°´´dáMYß¾},XÀ^WUUÙÛÛ?~\ǯ¯¡ùjüªèH¿ÞЫíBÔþ© •œœ¬üœ´qãÆþýû³×M¹ÏÍñOµ•£aV-YxxxRRRRRÒ±cÇŠ‹‹çÍ›× üñLJ:yò¤———ž ¨{099¹ªªjÈ!z&’’’RSS3`ÀöÖÇÇÇ××—ýMЩS'áL'''µ±cóÒ`½ê-rròÓ§Oýýý…qm—.]b•Åz ¬›î’k¼ÛΞ=;pà@;;;‰D2vìØœœméWTTLš4É××÷oû›Žbp× \´]r£o…޼4Þ„   ÐÐÐnݺ͚5+66öÉ“'„ñAR©ÔÍÍ­¨¨Hǯ¯¡ùjüªèþzè¦ãB” Õ¶m[µ· ú¾éÿÍašòOµ•£ÐÛ’999°¨O>ùd×®]$‰òiÿ°7Ç?ÕVŽBoKVTTtóæÍ›7ož8qâí·ßîÔ©“¿¿?€!C†ìر£¼¼¼¼¼ü­·ÞR{dV6räÈ;wΚ5«Ñ8¸¸¸,X°`áÂ… ™™™lì __ßsçÎeggççç+Ÿïîî>eÊ”¥K—^ºtéúõë³gÏîÓ§OÿþýWSÔQ~墢¢–,Y²oß¾ÌÌÌÄÄÄ5kÖènÐÖvíjQr???™LàÎ;7n¬{Çq“&MJLLüøãSSSY¯Dee%û)ûÚ\»víðáÃ3f̈‰‰Ù¼y³££cCsÑS½ßÆFäuùòå7Þ¸q#++k÷îÝÇ)7~ªÑöëkD¾¿*øz4îBtkÊ}nŽª­…Þ–lÿþýááámÛ¶MHHJ¥Ö®]Û¦M›öíÛ÷éÓgôèÑ666:?~üÖ­['Ož|æÌ™F—äÓO?>}ú¼yó:uêYQQ`ÕªU7nÜðññ R;ëÖ­ýû÷9rd¿~ý<¨s±Æ¼š’ ¶4•mܸ1**jÅŠ:u3fLjjª»»»Žu\»š†–ÜÅÅå믿^±b…ŸŸßœ9sV­ZU÷œŠŠŠøøø‡†……õ®•žžÎ~ʾ6}ûöŒŒ¬©©9{ölDDD#rÑS½ßÆFäeooèСøùùEGGïܹ³sçÎ:Î×øëkÜ5jüª4ôëÑè Ñ¡)÷¹™þ©¶fj'„B ‰j½„BˆAQè%„B ŠB/!„bPz !„ƒ¢ÐK!„…^B!Ä (ôB!E¡—B1( ½„BˆAQè%„B ŠB/!„bPz !„ƒ¢ÐK!„…^B!Ä (ôB!e~¡7::ÚÇÇÇÆÆfÔ¨QiiiuOËå3gÎtuuµ¶¶~öÙg÷íÛgð2B!Z™Yè]·nÝ–-[e2YxxxuuµÚ9QQQ.\Ø·oßµk×FýòË/ß¹sÇ(¥%„Bê’pgì24@HHHXX؆ äææzyy%$$ >\ùœÀÀÀ3f¬Y³@UU•L&Û·o_xx¸qJL!„¨2§ZoEEERRÒ AƒØ[€€€ .¨6f̘øøøœœœšššo¾ùÆÙÙyÀ€/,!„¢™¥± Ðr¹¼ººÚÃÃC8âéé™››«vÚ† ¦M›Ö®];KKK''§øøø¶mÛ¶¤„BˆVæzë’H$u®\¹òÚµk¿üò‹‡‡Ç÷ß?qâÄ .øùùéŸ!„¢§FôÛšSèuss“J¥ÊÕÜììì°°0åsž}š½ÍÍͽyófÿþý•Ï©®®®®®¶°P\—D"©¨¨0hA !„íÌ©Ö `Ù²eQQQ¡¡¡þþþ«W¯ dµÞ˜˜˜ëׯoÛ¶ÍÁÁaðàÁï¾û®³³³§§çwß}—œœüïÿÛØ'„Bxfz#""rrr/^,—Ë'•J¤¦¦&%%±sþóŸÿ¼þúëcÆŒ)--õ÷÷ÿî»ïh„3!„ÓaêÍèÍÍÄ;L¼x0ùšxñ`ò%4ñâJØdT¼&j\ Í©¯—Bi(ôB!eêuùæfú­„BL58· !!!Ÿ}ö™þç2$::ZÿÏ>~üx̘12™ÌÞÞ^wj ÍÝèÔ.m×®]ÞÞÞ›6mZ¾|ùÌ™3u|Ö¤.„bî(ôß~ûíÝ»woß¾ýàÁƒº?=ztÏž=u||àÀ›6mÒÿ|CR¾4Žã–.]ºf͹\ªã³M¹µ{B!f6¹ˆ4·ôôô^½zi\w³²²òí·ßnPj =¿Y)_Zqqq~~þðáÃ]\\è®òÂÄ.„bî¨Ök~ 'L˜`kkÛ¹sç°ƒ;vܳgp޽½ý™3gt$òÎ;ïtêÔéÞ½{ÊÇ¿aÆݻwK$’9sæ Y³fÍ‹/¾èììüÏþS¹ÝµªªjÍš5¾¾¾VVVÝ»w?pàÀÌ™3Ïž=»bÅ ‰DÒ®];¨¶Ó–––Ο?ßÅÅÅÎÎn„ YYYìxHHȺuë&L˜àæææçç÷¿ÿý¯niëæ¥#Áªªªwß}×ÛÛ[&“õïߟím¥|i‰ÄÉÉ @÷îÝ%µ„è«1/µ ¯›¾¶ ©{O!\ëfvw oß¾NNN_}õUffæ'Ÿ|beeuóæMŽã:tèðÃ?§ÙÙÙ>}šã¸^xaÆ Âg·lÙÂqÜòåË»víšžž^7ý7ß|sÊ”)ÊÙ9;;Ÿ8q‚㸒’åÔ"##ýüü>œžž~ìØ±£Gr#|\ùüiÓ¦ž?þÚµkaaa}ûö­©©aY´mÛöüùóÇíØ±ÃÞÞ¾¸¸X­TóÒ–àÒ¥K pþüù´´´>úÈÅÅ%//OíÒ Ü¾}›½}ýõ×g̘¡#/å Ñ–¾¶ Q»'„–¤qAÄÌèÌ1ô¾òÊ+ÂÛ¾õÖ[œÞ¡wóæÍ‹- `ýuÕ ½ .Þ ©åçç[ZZ>|XíãÚBï£G,,,~ùåv<##C"‘œ;wŽe±bÅ á#ÎÎÎÇWNSc^Ú,,,´²²JIIÎ|î¹ç¾þúkN¿Ð«íº„ Ñ‘¾¶ ¡ÐKH Ö¸ B}½æç¹çž^÷ë×/99YÿÏ~üñÇR©ôòåËÊÛëP÷`rrrUUÕ!CôL$%%¥¦¦FXÑÓÇÇÇ××799™éÔ©“p¦““SQQQ½yiKÀÓ§Oýýý•OÚ¢ëUïu%''ëH_÷…èb¬Í+if!Æ@¡·…PÛ¸ŠÓò'uðàÁñññ z¦li)Ú—DÛîZz^Ÿkjj<~üXã䨦Ó~£/„B !­ ³2?—.]^_¼x1((€£££PÇÊÉÉyòä‰ÆÏ†††îÝ»722Rãh&ýYZZž{öì>}ú¨íµÜ ¼´%èââµdÉ’}ûöeff&&&®Y³Fÿ6ym×¥|BCÓ×vO!­…^óóæ›oîß¿¿k×®Ÿþùÿû_Ö»víÚ6mÚ´oß¾OŸ>£G¶±±Ñ‘Âøñã·nÝ:yòdÝtûôÓO§OŸ>oÞ¼N:EFFVTTXµjÕ7|||X]\ÙÖ­[û÷ï?räÈ~ýú988ø€½nв„´LlÛÇ]ãkí=Ô×Kt Û°a€ÜÜ\//¯„„„áÇ+Ÿ³`Á‚¼¼¼}ûö©}vùòåyyy;vì0\q 1qüQ£ðð!õõš_ƒs½ €íÚµ“¨:pà€Á‹IÌ^EEERRÒ AƒØ[€€€ .¨|øìÙ³uœ`vw€̃üúë¯Â‘aÆ-[¶LùœÒÒRÓ§OŽtïÞýÝwßUKŠmnøÛo¿iË‹þù“VáØ1nà@ÎÖ–KL4vQDÓ¸GæTëÕ³P‘‘qìØ±9sæ¨|¤eqss“J¥ÊÕÜììlåJ0[[[‡îÝ» Gºuë–••¥–TŸ>}dffjËKô?zçN¢§âbÔÔ@*¥AÎæzõiTöí·ßvèÐá…^0HéHK#“É‚ƒƒOŸ>ÍÞæææÞ¼y³îà ¸sçŽð655ÕÛÛ[íœÄÄDubyyÆÉ·¸¶¶prâgµbæ=¹H÷†¯ß|óMDDD½›Âj<*À²eË¢¢¢BCCýýýW¯^ &&æúõëÛ¶m°bÅŠqãÆ >|àÀÛ·o¿wï^DD€E‹;¶]»v·oß~çwØ«W/#_!ÊËѶ-`Œ%¥ªªàá²2£Åþ¦Ñ‹ñz™SèÕØÈþÖuêÔ©»wïΞ=»Þd)Êm"""rrr/^,—ËÇ&õ¦¦¦ ówGýå—_®_¿>###000..޵?Ëåòùóççåå¹¹¹…‡‡ÿãÿ0æ•"`tVVFȺ¼ÖÖpp€–ÕiLœÆ`Ѹxlf³Zõ™gÉÌ›7ïîÝ»'NœÐ Íë%„´.»wcÊtîŒÔTCgýþû¸EEpwÇ_:w/ÂÓ:ˆ˜d«˜×»lÙ²/¾øbÿþý7nܘ?¾ràüùó…ÓJKKøá`E!êþøêLË4„š´m 77 ZUVâ믛·T••èß3fèu²Dñš—ë2³Ð±víÚÅ‹÷îÝ»¼¼\c €~øã¸É“'¯¤„b’ªªàþ}•ƒ]»6k¤áÉd(/‡½=nßVÿÑ`Þ<\¼ØŒ¹¿ô4h´c³Í?níÍ­ÔàLi]¢¢ð미~••Šƒ†ÙËoÕ*pÚ¶EBŽWùQ¯^øýwlߎ¹s›+wvQQø×¿T®·²½{ãÐ!tì¨~ò¯¿âùçëKµ48Bi’²2ôê…§OU*ÍMoFptD—.8wNýG2ÔÔ4&Ù‡0dšUú•ÅÇ#9Ï<£8rèÿ¢Ù¼¤ÐKi5š¹ÏÔUUaçN}ø "|„MXŠ‹CïÞ(.V?5»¹¡¬Œb`wƒÝ„iÓ %…?¹¸}ûÂѱþg‘Æ¢ÐKiéÊËñÚkX·¼¼Tþ蛡6Ɔ+cÑ]ÏÚ§0—7(§ˆ+ÙÙйsý‘†u‚æåñ5W]¡X¿^=Á'OЦ ¸¸`ÏÅqV™vuåKÒ Bïò×_àFݽ«~š\kkØÙáéS”•ÁÙ™?ÎvMž Å£IYºt½}ƒ«õz£ÐK1[……ض­žVA‰D1 €§§†a5âÊÌDl¬˜ ^¿Î¿¸w+WJã¡XÐÒ³rV^ŽõëÁq°°€§§bB«U·i£èj­;™aÁ»¬Œ¿‡BK¸@¸Õ bíZõZÅÅ|Ì+(À… ŠVÑ5®rÅTWkÝìHhøâ :ÄßvC”‡p—•ÁÍàxü˜ïoÎÎæ‡7ÛÙ¡ME­€‹ \\S ×…^BˆØÞ{Ú7'Ó÷ßcÁ\¾Œÿû?õ Ó@"Q´Ð:9ñ/ºtÑP%—¯/ôظ¥~åå  ••xî9ŠÕ X¦ÆÞë’õJ[f&ù×îîŠVÙO>[[EµOˆÊj±ÌÊÎÆýûðöVYšÝ!ô²‚}ÿ½z©ØàjµÍ7>„œñà† 0lœ5ŒÌTÀºv¿(Ög,Œ#«ªÂ£G°²‚•\]Q^//¸~99èÚ:tPùÒvìGÇÆÔÂõC¡—"ª‚|ø!|}u³t)Þ|S„¼XhÙ±‘‘˜2EåGl±$ÖÈœœ¬¨Ïõì @}A Ý^}¬5n†Å¡T*|lqF†Ê998ÀÁAåÈÝ»à_Ëd|squ5~ú Ú·W\cADÕ†³Öµü *ÓpÙP/¡:îâ@eÁH×ÙlZµÃ¡º¶¶*ƒ®•ué@ÃB¢£áåŽC¯^(+ãO±ZïãÇü#×Õ«HKƒ d2dg£¤„¯ÖŸ=‹¼<¾H®®ü§ØÿÛ´ÑU o2 ½„&ËqæŒÊ‘“'ëÿÔgŸaãFrg“A ÒZˆÚÞ>¶A^` $p8°bErÙ¾%%xåþí¬Y*sj‚ƒù¨Ó”‰ª¬ÊUYÉÇWVìÖ Š¥ØÃGÝš99*{ÁØÅ…o¬fÿg]¡¬žÍÞÊdpuU‰úë×ãÒ%¸¸ð•ì~ýTZò£¢ÔóU£ü”ðÊ+|ðcñ¸´þþ°µÕÚwÀ*ÛøAã5FzºJ}·´”oß>}¥¥°¶F›6°¶Fa!_ù^»ùù __þ³BÝÚÅEåòÆ¿þ¥¹ תW0...vš¡!„†£5œÆÑÑGÑ_Z·q£â-ÀÜ7ß(ŽÌœÉY[swçŽæùO¥¦6µ0'òI±ÿ”©ù¸Pfµã;v(ŽWW+ŽGG«œŸ”¤9Mµô/]â8Ž»~¸øøF^ÝÞ½\ÏžÜ?pNNÇqgÏòù¾ö÷Æü9µ; IDAT¶¶Ü A\꟭©Q¿3EEÀÕÔð'üå/Ü„ Çq7ò',]ʽóÿÓÏ>ãÚ¶å¼½¹ãÇù#ii|RS¦ð/23÷¡²’¸ÂBà=â8ŽëÒ…[µJåF;Ƶo¯~£~ú‰ã8nâDnölþHb¢†[1y2pÏ=§áGwëE³fq&p·|9ÇqÜO?q¾¾|i§Oç¦Lá 9™Œ[»–‹ŒäNœànÂîí·9Žãbbøû|ò$çîÎq—’Â\Up––ÜK/ñoÕóoŒVz ! öÚkxã õÎ÷ÞS¼.*BHPg©#A|<ÿ¢é“|t,ùëàÀ¯Ùdg§þ£‡ñç?PiNüí7Åë ¯€E‹ø·õÎgeí¨l-þ  ØØðƒwîßÇW_ÕóY5ÙÙpwG»v|9ÓÓùžK++Å0¨'OðÜsz|Y?.ÇaáBHø!Q boo¾;¼ºÏ> ^^Š®Í àë gg [7lÙ¢ØÕgÐ þE»vŠëe¿''xzòÝêïùóð¡J5ÃÚŠMÍ;vh¸yyJqé’úqÖ°Ìú¿Û·Çýû¸{mÛòíØpwÇ’%pí,-ù>ûòr8:bÀÈÎF§Nж-ŸóòøKóôj'/ Â/øõð¡†â5…^BHC°ŽCµ˜§ü§ÿömøûÐ0ÁææMH$øë_ù·¬#¶)’“ù8aa€êêÿ))X°€†’ڵ㻇U9ŸÍv°mpíZ~’0bùÇë)›$LÀ âÃCÇŽ˜?_Ãù¹¹|aêJI»;¿Õ€´4>Y™ŒŸ˺f»uÓ0¹(/ÓB÷¤ÚN¶¶ü§.]â#Mi©b½‹œØÚÂË ¸sË–ñÇÿ ¢{wœ9Ãwc³_½0ºJ˜.üä ?¤Kè?~òD}ðÝ3Ïð?-.Vl´q£†5O²³Uv°Î~ÆÂ™™¸wíÛó¿Çòr´oI“ø’{yñÓ‘9R)J¯\á·^èÜ™O§¨ˆï!f7ÆÒ’çGY7…^BHCüò @"áëŽjnÞD·nÉTfž0l< À×3ŽGf&›4‰ý5Ÿ0P]›P.GPÜÝñî»>ei ÔÖh™òrEÅNX¥aýzhÛ–ŸÒ“ŸÓ§Ñ¾½æ’ÔÔ 1Q¥ö  gO•”G<1ƒcÜ8ÍwÀÎÕÕ|\¬©AJ ?×ÞžO“ÕÎÔðÙÂB¾‚+•ò¿²»wUXf»J$(.æ1ÙÚò»8GÂÎNNŠ¡Ôìø3ÏÀÒ)) å²ÑdùùüÀ%;;XZòãºY0Öñ(,T¿uAAüOÓÒT¶bnÊJK1v¬Ê‘ìlŒÁ?"0:àî]ÃÓ“ŸbTQ6mЯ«æÊd¸sGñQYÉ—œ…ö½{‘› EFlâoVß$Д¥.•Pè%„4kðd³fY¬òÂFÏ>Ëÿ‘½|™?ýýØØÀοþ __ܼÉΆbKõ²ªmŸ>ø¦Å;pý:>„—=ÂhMA9àݺ1‚?rêÿbóf¾†wãrrøÕê.ätêúöÅŠ*ëGZ[«´²Ö'ʆklœ¯¨€_9ËËÃÝ»|îØ‘oæeóqY½_M^žb03kO¾ySeJ•0³6!¿"””`öl~Œz·n°´ä·ÏÓ-J•—§¨ãöéÃß.V5*ÄlÔ´2[[¾Ö{ù2?ᘵ1 Î¤¬’¾ÀBûÊÖ­øùg>¬˜©,¼ â›…ssam­ˆÍ/½Ä§\XÈÿRX½–•“ãÉ“ñè‘Ês[<äæM>œ “¡§O‡D¢2«¸!(ôBN¹—”…=ÖËŸ}–ïÇe•ÅüéOüÉÁÁpvÆ©S*SNŸ>mÌÊ9s`útp_ ;UU˜5‹Ÿ¼Ëúê´6LeLZ<„ID/¼§Øú†ÕxØô$µ¹L¨mŠ,,TiõöV™Ûª\‰dXµOX¯JÙ½{|„hÓ¹¹8uŠ nnüýgåaç¨õâb~f-jW±HKƒ··Ê9Bû¼zóò‹Í›àφ•UýÖþûßpõ*ÆÔ&SYZ*žo$õ~÷6møËwsãK;|8ÿTqà€J§Æ“'|•=¡¶…#3SQ“fOžžè••|ÜeU|ÖÔѾ=rsù¯»!BÌfÊË_o©û÷ÃÊ ••ü…3Ù³ï¾Óyw´¢ÐKÑ‹¬öÝ›=ò-´¾¾7±öçíÛQP77~3ƒ?ÿ/¼€ß~ƒ£#,¨¿Ž¥LãžÊC™„?ÓõìÉOi°?ЬU\m'Z~~ü¼ÒáÃ:]§PZJy$NMJ9ë®°ÁjÏß}‡Ü\ìÞ (í»p÷.ßncƒaà 8ù’8:bÜ8>µróóÕŸ<®\QtgªaÇÝÝùdYt3F±Ð1›­[­Po9÷öV48—–** L»vü"+ÚxYë÷ĉ TÜäŠ ÅÎöì#@v¶¢öö˜?ý+ÜÝùÖÔð=%EQþÊJäçóÙ±Çöh‚ÚÑ‚ÿúÜÜø#AA@íò ¥¥psãç4 ¿ÓÏ>Óu[´£ÐKÑk7~áÅâʽw^^*kö²ö=¡‘“-××»7ÿöÕWÁq8|Xñ§sÛ6Åp\}öü±´ä+¦ «-)/“¤{9‹^½Ô—f¡—U gÌT»f;wæ«8ݺÁÑQCýUO$ôƒ²“óóùˆÛµ«zÝTù2==1eŠÊšYBÀÖP|ë- vo]ÅÅüM†R—*s÷®zœËÉQ¯õ¢v Ù‹/€TÊ]¡Ëœ…Ö1¯ÑßþIIxüX}å,ÖÃÚ¶­¢Ò_TÄ×;üuUVª´ñ Ø&‰ì&¸¸ð/.]Rü^RSU:°ÿýoüíoptäÛÊË5<븸  €¿9¬¾+Zö8(nûz³'žòrøûóXóæhÊÎTz !zc5W©T1•õÀMŸ®ádÖr+L%Ò†uЪe=–`ÌÌTôË¢¶¶TwAm”ÿd³ªŒr§)k0·Pú 鿦(۳Ϫ×2¡ÔûËÃVfõ`EÍXÙ¡CŠ×Ê{Í––òÏ+,ªyzò¡Ky» ''Å.Œ\®Ú›#¬")1Ç7Y Ô%%|÷'‹IjmÊØ`õÿüñ¥ºqwî€ãøáëNNغ•_c²¢B䘶mQ]Í?m(‡^ᙃµê³›&„íôt~xÁ´iÈÍÕð€eoÏ?ð•—k¨¬WU¡¬Œ¿dåqv ºÂ ,6àKxøðóãëÓìÿjk—6…^BˆÞŠ‹Ñ¥ llø•oÿ»vÀΊ5™…j.«ü±ŽC¡²[×ðáxüééü¬MVñ…~(Y{ åJ§¬a™ÕŸXGµ…ο‡ÖÖŠÝœÕk™¬¬°d 8NÑéˆÚ€Áša]\4ìN_^Ž1c°jPyòRFY<˜5‹?Îu ëJèÒE}’tMÊŒ/v£tw~ [Ç£ö÷Ŧå°ß Ÿ|‚âb>>¨<Á°¡j'@~¾¢Ñ˜ñöFf¦Ö- žž¿EùùŠ¸Û¾=nÜàW e·¥npuqá‡TUi¸döýdûé§ê_!vÉl8jëîBÓ΃Ø»/¿ gg„„ðó×…B/!Do))èÕ‹ï¢óòÂ3Ï(†ï ë'%Ùßâ'àÊÌ«µcÌÞ¾¾ü26š¯ÈÍU„.6õVXÞa­Äööõ÷M¢¶JǪï›6i8aæL•·Bhàí­2£”).V4 Xg-;Ùù¹X¿žÛ,X².Ò·ßæÏß²…Á–øgí¢¬3’m¶#|äìY 6H´o¯Þó}ù2zõR¼e­ñlÔ›6BUµ›x{ƒã°t©®OpvÆãÇ–Ë@m‹1€êj”—«·*ÛÛãÉ w’騑oHÈÍU,áâç‡ÔT”–¢m[>|Ö ®,—šhxœb#ØX„eËÔ¸m܈ŸFx8ÿ–½ž¥X°ß³iiÆ›oÖÿ5ÓÂüBott´Í¨Q£Ò4n•ܸqãÅ_´·····:thMS6!¤5³µ…D¢ø³Þ¾=ù£fØà£º£«‰Û·cñâz²fÖBÓnçžžŠFQ6§H ðHÜ íxY[¨ÚøjVÎ÷ßW9¨¼D—.*ã–™’õZjCã©Spt„½= °v-™Â¬®®üqá ‹:ìo=»jåP `È ¶»1 @ýªïÝS ¥¬¬ÖÞ«†ÕíXS³Z?±³f¡°hÞ«ªO¾–yü8òòT*ÖQX©T½˜qvæ222ß+<~Œ‡ñ ü§êWv<7ÅÅ.„…m«÷K¥6L1 Êѧ˜üöý÷|»zn®†Öû†0³Ð»nݺ-[¶$&&Êd²ðððê:SÔ322 äããsøðáŸþùaª!¤¡Ø >_|Á¿ÍÊ‚¯/ߢ¨öwœ­¨¶A,«}ê_3úŒýýu-ɰ ¡,"VVй¡ú`ãŒ>TY±á³ÏÀq*Ϩ­tŽ;kØL¾°P1dLÀBãgŸ¡cGXXðu,öÄpîœú£ƒ°8†³3ßÞÎdwUGàìуŸošŸ‰GŽàéSÅ&ŠŠêÿ-°e6XLÛ#T]ì¾eei¸v†»w‘‘¡ò4€ÚGм<•¢ \]ùG¢+W±ÍÕ–ËQSÃGÁº;Ú´A^ž<ÑPgŒºŸBt`ùÂZ]ef¡wóæÍ‘‘‘&L ܶm[rròq¶ ©’õë×4èË/¿:Ö»¬Ç˜1X¹¯¿hYÅ¢¬L}”¯²Û·áæÆ÷k²qC7n¨‡^a¿E •µÀX³­r|R‹£ÂòOlvÖ_þÔ)o(Ö¼¬<~M7¡g]cƒ3ãæ†7TV·`XìÌÉÑ\uw‡\''lܨh xî9TU!;66üÝúe•YX '‰Ê4†•¡îs›neeü·NøŠêÞ‘º>æ“***’’’Õöîxxx\¨³ l\\\ppðСCÝÜÜúõë÷sÝŸ„}°¡•_÷pë\]Ѿ=¬­5¬)Ñt]ºðµdKKŲA kôf °¬Â¡çp*”ƒ[ CKKlØÀ÷ø²P§¶‡Dq±úâ Ê^}NN*ƒ³ärõ~J þò]\øÈÁÄÇcÆ õ~åæ„= ¬Œ_>Œ XS«µëƒã°y38Nóu„y8Ê#ÆÕôéƒÛ·!—k„nÜÐ<³ˆíT¯ö5pwÇ•+¸¾¾|¥Y­›‘JQXˆôt ÍÑš Ò¦ ³…ß‚þOxš˜Sè•ËåÕÕÕJ¿.^¬xÈ`í—.ÁÎŽoFŸ)swGi)ÊÊ4Ô§›¾i‡Pò&0§Ð[—¤ÎŒf6¢jܸq‹-êÑ£Ç?ÿùÏ:ÄÖÝAE5‘ºš±Ð„˜8¹{ö`Î~ÝŒnÝÓ?8®ž *béÜ™ß{NÀÆÁ =¬ Z÷J›¹s›ôqÖ$na__ÔÔàÑ#Í=ˆGŽð‘ƒÝ:¶çÄÂ…ÈÊÒÚ_ÈF,×]C·éÓ54›??>àÕ}4©ª‚L¦y; gg$'£¬Œß–ŠÚ:uâïÆsHär”—kh‰ÑµHˆN,: >R KÊœB¯›››T*U®æfgg{¨>.ÙÚÚ:88tWj èÖ­[–ÎeH5ì½ÜØñâ„´¬g·¤'O"(mÚ(VUÌÎÖÕ)¢º¥lÉaý¶°bµiƒ©Së©PêÀžX0ÈÈÀ“'šGê X`øôi vùëºÜÝqíšzO°ž4ö}6«ÄÄzvÐQ$//\¾Ì/"­ÆÒ’¿ÃÊõZážôé<~¬¹]ÝÖiiJ5ûåË5 ž×‹g8î& s ½2™,88ø4ûʹ¹¹7oÞì/ì¿QkÀ€w”šIMMõnèÃ#!­ÛøOù±]y~ `üø1ß(ÐXÉòzÌÀÃr9ßê¼TSS|ÿ=?¸¡úôáëålòÌÅ‹(,¬§Õš=µp¿0!êÌKÈd*3jôÁÖ‚€W_Õ0+ºùôî]ÏŒa¶Ú¥òòÚWWdZ`oÂB=zô—_~¹~ýúÀÀÀøøø¸¸¸îMŠFHËôùçŠ× ¿ÕÈ‘Š%éÿ|càÓ§|‡œ¶hÑÔFZ±šnVVÃbR3‘JUV™~òI=cµÞ”ÅÚUÚ°‘Ò ÚHÑÚ/¾ØøéªÆÂâ«Æ‰:Ú*¬UUõÏQööæ{â…5XLŒ±ŸnÕªU«„õNk}¦º@Ýœ9sæÔ;U€VNm“ °~~Š Ø_À[·6X±±üjŽl¬õœ98xêUïin¾¾ü¼çâbtìˆü|p\ýÏ))h×VVõ6z¶±£Ì ëÍ}잃¿²Š©Ž™5³Z/!¤zî¸Ç»½8u »™*ûýwääèš·Ú„u©V¬€—^‚»;rrt­Þ`0íÚ)j¥}úè»ÀH÷îzÝCz›¶hƒy`=÷'5EÓfþ…^BZ1ÖòÉ– îÚ•_%1>^ßýûqëV£‹o 6–Æ©Êd†e­›µ5ŠŠøŽÆŒ4Íœi46zHÄMëSÐ6h®O•-™õ׸•¼ ˆB/!-‘°sóÎ;H{¹£vM6A€Í&R?Uwe¢Ý»±gAC¯òœWŒUU(*jÞÕ<ôäêŠÜ\~¹GÖ2,b·"Kª5„Þ'4lš+¸r…ßùª¡±’—aQè%¤%Rkÿüøc@u™b¶ckšfÛÚ(V›Ç* r¹úîÍŠmÌ 23ù‰¼ÖÖxðÀ$b’«+²³ùÐÛ³'P»²´(ØÊP­a|¨‹‹Jó†X ³ðKPè%¤¶³e3^¬ï–uå g²XÛ¡ÕûÆÔþ² ù•˜ ƒ5B¾ñÜ»ÇWʽ¼ —7x™§æ`o‡ùiBìö6h@²nlh›áÇh1Ø@åe°L …^BÌVe%$ÄÅ)ް¥e2üö›Ê™u껟¬Ô¥ ²²¥lQ~µÉ»l”ê„dX#³L†’“áìí­þ|#¢±c5ìZH„ãp옱 ¡•˜¡·]g´üüüº !â`{¹O ÅŨªâ:îÔ ðC%~ó¶Ï¨0¡(5½{€•îÞ­gÑ¡-zÑ"ñ¯¢^lM+6½¸º·ntn±6ÂZ ¬x{öt)bæÄ ½9lW/%yÍ÷`HH+ÇæÞtêÄÏ(µ²Â¹sHЫ¾þZqÚÕ«ðê«@mµÀÓ§|@õöÖ°‡¹6ž³ÁÖÚeåd½wÈÍ5‰©#²ìmsÒ$ÓZ@Š˜6q–ÔØ´i“Ú Ç;w.((H”,!êØý¢"E@½u ýú©Bb#HÛ·”vþ±°àGñ88àÁƒú'ceOå5%ØÈ#6)Ö浶ƤIâl DZqBïž={Ô^J¥¾¾¾;½+!D·Ü\ØÙáéS~«YYðñÚóî† `avípëvíÂ×_#<½zµóXLvBŽSY!„`Y˜WéÏ! "Nè=sæ €™3gR %Äpòò0z4NRlxœŒ±cÕWA&½ôèš¾ë÷àAŒÔŽÎmÜþt†ÇLa gBš@Ì5œwìØQ\\œ˜˜XTT¤¼‹áx6ž"®âb„…aï^¤¦bÀüú+ôïÏïIçæ†Í›ñï+%hÛÅÅèÜ™ËVï3…9²õê×ÁššÍåA-Ä ½?üðÃܹs­¬¬œTŸI)ôÒ,d2¾mùÑ#El¿~ðñÁêÕ˜?]»âÖ-EèuvÆ£GŠMpÙ "6\È”°r73ëÞ6…ÉE„4˜¡wÅŠ_~ùåŒÆí;Mi¨òr~Kù{÷ø¨ÿÊ–¯ðê«ü´"ÎÎ(-å—ø¾^ÌL~õ[½¹î1'•••QÜ%Ä@X—-›7Ÿ”„ÎùÕ0Ôøúbß>dd€…?FYÿ#6Z˜-‚¨¶æ³Éb×ËÊLˆÙ3ô†††^¼xQÄ !ZÝ¿¯òöÙgµž9~<_vqAQ²³ñí·Š ͚٠ɦïå—Áq&±¤!M fƒsï޽ǎ;kÖ¬Ž;J”æ,Y²DÄ\!íÆvv(-ÕkÇSWW”–¢¼\}*‘QæìÒŠ‰z:äççwòäÉ“'O*§ÐKˆ˜ŠŠ`g§½, ê³Ë‹ ÊËQP`èï !ªÄ ½—/_15BˆW® $6mâ'³~\}F9:âáCTT˜ÄBŒ„´b"ï\$—Ë¿ùæ›?ü½MNNέ»e !¤Ñbbø•• îòttDi)ž<èå"„èOÌÐ{þüùnݺ}þùçï½÷;²cÇŽÂvc„¦c{³¸u‹Z¥q`³FVV(*BQ­Eˆq‰z_ýõ·ÞzKyóĉ?.b„´vwîðËhÔÔ ªªaŸõôä•4Ù› iÄ ½W¯^>}ºòOOÏG‰˜!­]^¦L€k×Ëhè‰-€ ƒïýGQ%fèuwwøð¡ò‘‹/ú° …„¦cÿ¾† €‹A)âbÄ ½sæÌyã7nݺ ¤¤dÏž=QQQóæÍ1 ÑÑÑ>>>666£FJ6lQ²|ùr‰’E‹‰[BŒ#(ˆŸ¼Êñó3bq!&fè]¿~}ß¾}{öì ÀÁÁaÚ´iS§N}÷ÝwEÌ"66vݺu[¶lILL”ÉdáááÕÂZðJÆŒsµÖš5kD,!†&‘ðÖÞ¸iiJù%—i)cBÌ“„{!›¢¢¢äääššš   ¡oI$!!!aaa6l››ëåå•0|øpås–/_ž——§çÎÁ‰øw€Ñœ>ÁƒÚã'OÆ?@¿~¸t ·n¡[·†%È¢8}ç IよÈóz899 0 44Tô¸[QQ‘””4hÐ öÖÃÃ# àÂ… uÏ>¾ªªjôèÑñññO+ôÖ¥¼Iƒ`âĉìEHHHçΟþùßÿýYíûºhL„Z¡‰I(,„‡rsñÇ 5OŠ©SX.BZ!Á¢qD½'NœP{ÑLÜÜܤR©r57;;;,,LÇGúôé 33SGè¥(KLZHrsqö,P»Á!Ä4‹ÆÅc1ûz8ðÓO?)9zôh\\œXéËd²àààÓ§O³·¹¹¹7oÞìß¿¿Ž$&&ðöö« „Ι30kììðë¯Æ. !D4b†ÞU«VYZªT£-,,Ämm^¶lÙ_|±ÿþ7nÌŸ??00ÕzcbbæÏŸÏÎY´hQ||üåË—¿ÿþû)S¦ 8°W¯^"–æµ`?¡ˆ(|å<óŒ±ËD“˜›Þ»w¯›êTÿ»wEDDDNNÎâÅ‹årùàÁƒãââ¤R)€ÔÔÔ¤¤$vŽ\.Ÿ?~^^ž››[xxø?þñ @Hóúí7lÛ¦rÄÂÚ»K!æHÌY­>>>Û¶m=z´päÇœ?þƒÄÊBt4¯—˜;0k–Ê‘óçÑ¿?²²À:Mè»Jˆ‰1þ¼ÞY³f-\¸0!!¡¬¬¬¬¬ìÇ\´hQDD„ˆYÒ’ q÷èQþÊÀÖ¬ÑN1wbÖùž>}ºtéÒ¯¾úªªª €¥¥åkÚÖ­« IDAT¯½öé§Ÿªu›ªõÒ¥ îÞå«¶´ì!æ qADüÀSPPœœ  9’…^bB$L˜€ÿýÏØå „è«qADüú¨‹‹K¨°³ !¤AFŽ4v !ÍN„Ð;sæÌÐÐÐÈÈÈ™3gj}ZTTÔôt!„Ö@„aVaaa#GŽd{âN:µî ÿùÏšž !-Í!°aƒ‘‹A18BïîÝ»cccÓÓÓøøø4=ABZ…“'`åJc—ƒbhbötŽ?~ÿþýb¥fÔ×KŒF"AûöÈÊ2v9!güýz÷ïß/—Ë¿ùæ›?üINNÎÍÍ1 BZˆ¨(Ø»×Øå „˜u¾óçÏ3¦k×®—.]bɾûî»÷ïßß¹s§XYˆŽj½ÄŽðam&Äì¿Öûú믿õÖ[/^ŽLœ8ñøñã"fAˆÙKLäãîŸþdì¢BŒCÌ:Ÿµµõ;wüüü„§€ŒŒŒÎ;?}úT¬,DGµ^bhl.¯\WWc…ÒTƯõº»»?|øPùÈÅ‹iÌ3! ååü Š»„´bb†Þ9sæ¼ñÆ·nÝPRR²gÏž¨¨¨yóæ‰˜!æí­· 6ÖØå „“˜Í­UUUo¼ñÆÿýßÿ±fKK˨¨¨7J¥R±²58ƒ¢•# iYŒ¹}‚²¢¢¢äääššš   q…^bPz iYŒß× €ã¸ääääää›7o¦¤¤ˆ›8íããccc3jÔ¨´´4gN:U"‘Ð2–ÄT°Ý¬·o7v9!F&ÂB’‚¬¬¬ðððÄÄD___!!!l×®XYÄÆÆ®[·î»ï¾ X½zuxxøÕ«W56hÿý÷9992™L¬¬ iª¹s`ölc—ƒbdbÖz£¢¢œœœÒÓÓïß¿ÿþýôôt{{û(¶jH6oÞ9a„ÀÀÀmÛ¶%''kœ7üàÁƒÕ«Wo§ê1)g΀…ÈMM„³#æ_Ÿ~úióæÍÂl"Ÿ-[¶=zT¬ô+**’’’ ÄÞzxx\¸pAí4ŽãæÍ›÷Î;ïtêÔI¬¬ !„±ˆz­­­KKK•”––Z[[‹•¾\.¯®®öððŽxzzÖ]#úóÏ?¯©©Y´h‘Xù"‚ß~€:OŠ„VHÌÐ;iÒ¤9sæ;v¬¬¬¬¼¼üĉóæÍ›}ºtéÒ¯¾úªªª €¥¥åk¯½öé§Ÿªu›jp&ME­Í„´bFÛ¹HMAAArr2€   q…^ÒT QTdìrBŒÀTB¯y¡ÐKš¤²2öìÁ¤IÆ. !ÄŒ¶i !÷ë%Ä´lÙ'»„s"BoÈ!£G~ûí·‡ ¢ñ„æÞL°)¨ÖKš„:z iÝŒÜà\YYùÏþsÙ²evfµ‚<…^Ò$z iÝŒß×ëìì\XX(Vj†A¡—4‰D‚Np÷®±ËA1ã/©ñ§?ýéôéÓ"&HˆIc[GÇÄ»„3#æŒÛÞ½{7nÊ”)þþþÊsy—,Y"b.„˜Š?€qãŒ]Bˆ™³¹5$$DãñË—/‹•…è¨Á™4uôÒ꿯×Qè%G¡—VÏh}½öööEEEæÌ™ÓôÔ1••0¾±ËA1?"Ôùd2Ù;w|}}ͱiŽe&&áõ×±y3ÊË!“»(„£1ZƒóèÑ£ïß¿ÿì³ÏîÞ½{Ê”)uOøÏþÓÄ,š…^ÒHÔÚL1âB’»wïŽMOOàããÓô !„LÌ:ßøñã÷ïß/Vj†Aµ^Ò§Ocð`œ=‹?ýÉØE!„pn ½¤1¨µ™ÀV³"„BH½(ôÒ@0x°±ËA1W­½¹•œIƒyxàÑ#TVÂÊÊØE!„™ñœïÝ»W÷ è*DGGûøøØØØŒ5*--­î }ôQïÞ½e2™««ëôéÓsÙ÷„ˆåÑ#w !&fè:thk‹«uäÈ‘1cƈ˜Ellìºuë¶lÙ’˜˜(“ÉÂÃë««ÕΉŸ7oÞÉ“'·nÝzáÂ…I“&‰XÒÚ€YmJM15bî\4uêÔ¡C‡ž:uª}ûöþ÷¿ÿÍš5këÖ­"f±yóæÈÈÈ &ضm›——×ñãLJ®|ÎÙ³g…×–––&L(**rrr±¤õb«¥ff¹„s&f­÷£>;vì°aÃrsscccgÍšµsçÎ3fˆ•~EEERRÒ AƒØ[€€€ .èøHii©­­­Xe ­ÝÁƒàìlìrB̘˜µ^111‘‘‘!!!û÷ï1b„ˆ‰Ëåòêêjሧ§§Ž®Üǯ_¿~éÒ¥VÔ-G!Ädˆz?ûì3å·AAA|饗RRRRRR,Y²¤é¹h$a+hRQQ1iÒ$__ß¿ýíoH„†= N€øxc—ƒb:"NC‰z¿ùæµ#íÛ·¿uëÖ­[·Ø[±B¯›››T*U®æfgg‡……Õ=³¢¢bâĉååå ÖÖÖº“¥(Kôõ⋊ÿBZÁ¢qñX„Ð{ùòå¦'¢™L|úôéððp¹¹¹7oÞìß¿¿Úi•••“&M’Ëå?ýôõò1•”»„–@ä¾Þæ¶lÙ²¨¨¨ÐÐPÿÕ«W²ZoLLÌõë×·mÛÆqܤI“wíÚ•ššÊ>ToÝ—zÔÔÀ¨QÆ.!Äì‰z£££uŸ°råʦçÂDDDäää,^¼X.—<8..N*•HMMMJJPQQ@¹!úöíÛ]»v« ¤•zÿ}0áͧ !æB„e‡ ¢û„'N41‹æC I}ÑnE„:hÓÀÆ ÐKôE¡—RGよ˜}½gΜÑx|àÀÿßÞ½G5q¦B" ‚€Š"tÅ€—âr;VAb¥h±V­zDZo?º¶bq]/­ž¶Z»]kAìjvÏ®Š”j½Qi]±²¢BÖb€V-+Š¢ $Ìï¡1r3BÈL’ïçx<3¯3ó~0OÞwf=öÀ;wˆˆþö7®s€)Ðç˜O"‘h–†yøð¡………••U=¯ Ũt2}:¥¦ÒãÇ$2²+ Gq?êmUb«ªªV®\Ž› Á¤¦ê.èEÏŽù=zäëë«P(z®‹n¨t‚½Ð·-@ T*{´ €—ŸODôÏrL„>Ç|‡Ö^½wï^bb¢D"IOO×Wz‡Q/<›HDj5†¼Ð÷7 :T;MŸ>}d2Ù† ìxü k(½ðl˜m€p™Uii©À#£FqL‡ž¯Ø,..Þ³g{]•··÷âÅ‹‡®ß. ê믟ü  ú¼Ì*99yôèÑÙÙÙžžžžžžÙÙÙ£FJeïÊ0Rï¾KDôÒK\çÓ¡Ï3îîîK—.]½zµ¦å‹/¾øú믯_¿®¯.ôçzáp¢:ÆýÍEJ¥rÞ¼yÚ-‘‘‘¸¹ŒØ¯¿mÙÂu0)ú,½“'OÎÈÈÐnÉÈÈÃ÷›‚ñòô$"Z¾œë`Rôp™ÕW_}Å.øúúþå/ÉÈÈð÷÷'¢ÜÜÜŒŒ =~Y/7„B®€IÑÙN??¿Î7ÈËËëf=çz¡C*õîMR)qxŠûÔ0F(½Ð¡ èìYºu‹¹Ž<…ÒÛ(½Ð!\Û ÏÂýΦ£¡ë`²PzÚ3nQI ×9À™ût+&œ¡}˜m`Â@OØÙf[[®s€iBéhÃ×—ˆ¨¬Œë`šÌ}ºÎÐÌ6€nÌeÂ9..ÎÕÕÕÊÊ*,,¬ÝoNKK µ··åååFîÑ#®€‰3²Ò›˜˜¸aÆíÛ·ççç‹ÅâiÓ¦©ÕêVÛ› Åܧ[1á ˜m€.Ä3@7 î€¡ ô‚yûá"¢Ù³¹ÎfÄܧ[1álîðIÐ ˜pxNšïÕ@ÝÂ+˜1[["¢Ü\®s€y1÷éVL8›5v¶¿ÐU˜px))DDáá\ç³cîc>ŒzÍ.°€nè@gÍÍ- ¨»`pxݳ$•?Îu0Gæ>ÝŠ g3… ¬@0á  v°ëíÍu0Sæ>æÃ¨×á+ÐŒztpûvËê.p¯>`fú÷'"ºqƒë`¾Ì}ºõÉ\AEõíK ׉ ‡á+ÐL8?çêêjeeVZZªÓ>®®-Ÿè &ìÿþˆèý÷¹ÎfÍG½‰‰‰K—.ýæ›o¤Réûï¿_ZZZPP  Ûݸå ;"¢‚òñ1\V00 y@¯0êm±mÛ¶wß}wÆŒ^^^ÿú׿ Efffg;ääq¢§ãg4o°8ej¥W¥RÉåò   vÕÉÉI*•æh×¶>ù„è÷‘PRRO'n\¸Ð²€!/pÍÔJoMMZ­vrrÒ´8;;WWWw¶öHW¡è±hÀ©±c‰ˆòó¹Î`r¥·-A'ÓŒuuÚ›ýøû‚@  û÷éÌjU³¿ü’¢£ué’8°kAÿ4¿cÆpšŒ˜ =];”©•^¡P¨=ÌU*•Úƒà§ØØåäÃ0 º{71'N0 C}û’LFÎÎOm¿bíØAD4nܳOÞ¼I@@vv]<Ð}š/)ÂT3tÓž®ÊÔJ¯X,öññÉÊÊbW«««‹‹‹Ûßšý<£€€–Õù󉈦Lyª¬ªT- ·,”•QvöS-jõSûÎKDtï tà@—tÛ7ß%&r …©•^"Љ‰Ù¹sgJJJQQQTT”———L&ÓiO¡ð©;>cbˆˆz÷nYÝ·¯eáòå–…‚‚'Ÿ=K‰DDD¯¿N÷ï·>øÜ¹-Ñì0˜… ‰ˆÞz‹ã¿3ÁÒ;þüõë×GGG3¦¡¡!--­£›zÛñùçÄ0-þþ÷'íññ-¯àDtéRË‚LF-\HÍÍ´uë“SRž|:{¨ÜÜÖ=W ®«£ÆF]ð› ~¤ÆsyÆÝÐ))4cÆS-#FPu5ݺÕþöŠahØ0jj¢sçÈÕµõ?i×àŸ&''ÒœŸ.+£!CZ–¯]#»€¶š›I(¤˜˜§ÞHèI×>R¥÷YÏ€vQd h=„õð ë׉ˆ ¢òr{%":vŒ¦N}¾¸D´gùøÐ±côÑG--l=þí7ª¯§†²° 4ˆššÈÒ’ò󩱑êë),ŒT*jl¤Û·‰aÈÞžîÝk9ÛíèHBá“Ë‘LÉÔ©”M yyqLP×J¯¨'¢˜”½{iÁ"¢U«ˆˆêë[Ú¿ûŽæÎ¥øxZ±¢¥”FDèzLÍÏéþ}êÓ§e¹¡Äbº{—ššZ†¼´vmË7íŒGÁÁ”•E‹µ>Ú /téµÇÞ^o‡â‰»w‰ux£^ž¶²Þ¼I..´a}ò ùúR^Þ“ ~û~øÞ~Û_ÛÐ@QŸ>ÄžÀnn¦´4‰ÈÅ…ÆŒi PWGåådkÛzfô Î]¡Ó³¶s'>M‡$ ”Þ®èÚ³@øæ"£€Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…ÒËk€ëÏÀó„·ñZ™4iÒ‚ x•P*•~úé§ìòãÇ-,,RSSùO©TÑO?ý¤½š››Ë‡„~Y6ß g•J%—˃‚‚ØU'''©Tš““ß$újïZªØØØX[[ó3Þ½{÷vïÞíéééîîΟ„ Ã,^¼xíÚµîîîšFþÄc=zT,;::.Z´èîÝ»¼J˜––æãã3qâD‡€€€S§Nñ*ž¶²²²Ó§O/\¸W _}õÕcÇŽUUU577'$$ØÙÙ;–?ñT*YYY±«ìÂùóçù“P;jF2ßÒ[SS£V«œœ4-ÎÎÎÚ'8O¢¯ö.Dª««Û¸qã{ï½×«W/¾Å;zô¨H$²³³KNNNOOçUÂ;v477kŸ@%žý|ƒƒƒwïÞ}îܹíÛ·gffNŸ>? ªªªbccçÌ™söìÙ   ©S§–””ð$^+{÷îuss›0añæ $¢ØØX777±XüÁ;v¬ÿþü‰7dÈaÆmÚ´éþýûŸ|ò )•Jþ$ÔèéHæ[zÛâÏ2w”D_íS©To¼ñÆàÁƒÙÿ|‹'“Éärù©S§FŒ^WWÇ“„×®]ûë_ÿºk×®gîÅá8sæÌY³fùùùEDD8pàìÙ³—/_æIBöŠª×_ýwÞ1bÄ–-[ÜÜÜy¯•„„„ùóç÷t’çM¸jÕªÂÂÂÿûßK–,™9sæ7øˆ:TRRboo/‘HnÞ¼)•J-,Ú)C|ø÷h$ó-½B¡Pû ‘R©Ô~oÂy}µ?W•J5sæÌ†††£GZZZò-ÙÚÚŽ9òå—_>|øpeeezz:OæææVUUyxxˆD"‘H¤R©"##ÃÂÂx¯­?þñDT^^Γ„ÖÖÖ¶¶¶žžžš–aÆUVVò$ž¶³gÏ^¿~}Á‚ì*O>|øpÛ¶m›7ož8qâÈ‘#?ûì³~ýúíÝ»—'ñX/¾øâ•+W***”JeBBÂÿþ÷¿¡C‡ò*!«§#™oé‹Å>>>YYYìjuuuqqq`` ’è«]÷$o¼ñFMMMzzºµµ5ßâµ¢V«Õj5N™2åòåËòßYZZnÞ¼ùÿøOⵕŸŸODƒ âO±cÇ^½zU³zíÚ5^ÅÓHHHÖœÑçIBö„ö R ¨T*žÄÓæââÒ¯_¿ƒ666Nž<™‡ {<’î§™öšïäädöšï‘#GöôÍEwïÞ-((øöÛo‰(##£  @û΄¶IôÕ®‹æææ©S§0 33Ssû„J¥âI$¬¬¬œ={vß¾}E"ш#’’’xa˜¤¤$WWW‘Häáá×ÜÜÌyBN^– Ãta0]c¾çz8Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò `P(½…Ò À!!!qqq\§à’ŸŸßW_}Åu €‡Ò À™ñãÇùå—šÕÉ“'9Ò`ÝWD\€|ð׌Xcc£¥¥%×)t‚Q/7Þ|óÍsçέX±B ¸¸¸ÐÓÎ~~~›6mš3g޵µõˆ#.]ºôßÿþ×ßß¿wïÞ¯¼òʽ{÷ØÍšššÖ­[7hÐ ±X˜““ö'%% 6L$988DDD´Û]Gûúùù­]»6,,lðàÁ/¼ðBjjjÛð~~~6l˜1c†ƒƒÃ!C¾ÿþ{¶}èС‡Öl&‘HþóŸÿèþpˆ¨¶¶vÆŒÖÖÖš®;‰úᇆ‡‡ÛÙÙmÙ²E?ƒ`€#ãÆÛºu«fu„ ±±±ì²¯¯oÿþýwíÚUTT!•Je2ÙéÓ§/]º4|øð5kÖ°›½÷Þ{cÇŽ½páBiié¦M›ìííoß¾}óæM‘H”˜˜XQQ¡P(vïÞÝnwíîËvmkk›““Ã0ÌñãÇ{÷î]\\Ü*9ïÂ… Ã$%%I$’û÷ï3 ãæævèÐ!Íf666YYYº?__ß¾}ûîÚµ«¼¼|óæÍ½zõb»î$ªÝ™3g†©¯¯××Ï §¡ôp¦óÒûöÛo³Ë …‚ˆRSSÙÕøøøÀÀ@†ajkk{õêURR¢9‚¿¿ÿž={~þùg‘HÄ§Žºëh_¶ëÅ‹kÚ'Ož¬)¾¾¾+V¬Ð¬ÚÙÙeff2–Þg>v³9sæhv?~üš5k:ºdÉÀØà\/Oi.¹êß¿«Uv†V¡P<~üxøðáÚ{UVVz{{7nذaááá¡¡¡³fͲ¶¶nuðŽömÕ55Š-–­¸»»k–ûöí«=iܵ‡Ãò÷÷×,(ŠÎ£J¥ÒÎûà!”^ž²°°èh•a"jnn&¢ºº:‰DÒjßÓ§OŸ>}úÔ©SŸ~úégŸ}–ŸŸocc£½A'ûQSS“fùñãÇíÆÚ«l¤vu|8é<ªH„10>¸Ì €3B¡°óªÓ9ooo‘H”‘‘ÑöŸ,,,&MšôùçŸ\¿~ýÂ… ­ºëd_"Ò\ÇÄ.{{{ë©OŸ>š!lUUÕÇu8¬ÜÜ\ÍòÅ‹½½½; `ŒPz83xðàììl¥RyçÎ.ìnoo¿téÒeË–%''———çççøá‡ …"///>>¾¨¨¨²²òàÁƒ ð“ÃÚÝu´/{äS§NíÚµ«¢¢bóæÍyyy‹-Ò1RHHHRRRCCCCCÚ5kZtu‘‘‘±{÷îŠŠŠØØØœœœE‹uÀa®€3«W¯ŽŒŒtuuuttT*•]8B||¼££ãŠ+***d2™££ã;wÒÓÓ7nÜX__ïééùí·ßzxx´í®Ý}Ùî\¹255uÙ²e...Ðý|êúõë### 0`À€>úèÈ‘#ÏûˆV®\™’’­Ýu'QŒ‘ ;ó]`züüü.\¸lÙ2®ƒ˜,L8J/€AaÂÀ 0ê0(”^ƒBé0(ѽÛe\g0#ÿµ©—sKLY IEND®B`‚./Doc/Tutorial/examples/0000775000175000017500000000000012176660653014765 5ustar vborosvboros./Doc/Tutorial/examples/floorMesh.msh.tex0000664000175000017500000000051112176660653020230 0ustar vborosvboros\subsection{\texttt{floorMesh.msh}}\label{code:floorMesh} \begin{verbatim} Triangle 3D-Nodes 6 0 0 0 -5.0 0.0 0.0 1 1 0 -5.0 0.0 5.0 2 2 0 0.0 0.0 -5.0 3 3 0 0.0 0.0 0.0 4 4 0 5.0 0.0 -5.0 5 5 0 5.0 0.0 5.0 Tri3 4 0 0 0 3 1 1 0 1 3 5 2 0 5 3 4 3 0 3 2 4 \end{verbatim} ./Doc/Tutorial/examples/POVsnaps.py.tex0000664000175000017500000000312112176660653017644 0ustar vborosvboros\subsection{\texttt{POVsnaps.py}}\label{code:POVsnaps} \begin{verbatim} #POVsnaps.py: Implements an ESyS-Particle runnable for storing # snapshots of particle simulations rendered using POVray # Author: D. Weatherley # Date: 17 May 2007 # Organisation: ESSCC, University of Queensland # (C) All Rights Reserved, 2007. from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from esys.lsm.vis import povray class POVsnaps (Runnable): def __init__(self, sim, interval): Runnable.__init__(self) self.sim = sim self.interval = interval self.count = 0 self.configure() def configure( self, lookAt=Vec3(0,0,0), camPosn=Vec3(0,0,20), zoomFactor=0.1, imageSize=[800,600]): self.lookAt=lookAt self.camPosn=camPosn self.zoomFactor=zoomFactor self.imageSize=imageSize def run(self): if ((self.sim.getTimeStep() % self.interval) == 0): self.snapshot() self.count += 1 def snapshot(self): pkg = povray Scene = pkg.Scene() plist = self.sim.getParticleList() for pp in plist: povsphere = pkg.Sphere(pp.getPosn(), pp.getRadius()) povsphere.apply(pkg.Colors.Red) Scene.add(povsphere) camera = Scene.getCamera() camera.setLookAt(self.lookAt) camera.setPosn(self.camPosn) camera.setZoom(self.zoomFactor) fname = "snap_%.4d.png" % (self.count) Scene.render( offScreen=True, interactive=False, fileName=fname, size=self.imageSize ) \end{verbatim} ./Doc/Tutorial/examples/bingle_Runnable.py.tex0000664000175000017500000000330312176660653021223 0ustar vborosvboros\subsection{\texttt{bingle\_Runnable.py}}\label{code:bingle_Runnable} \begin{verbatim} #bingle_Runnable.py: A two-particle collision simulation # with visualisation via a Runnable # Author: D. Weatherley # Date: 17 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from POVsnaps import POVsnaps #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add the first particle to the domain: particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) #add the second particle to the domain: particle=NRotSphere(id=1, posn=Vec3(5,5,5), radius=1.5, mass=2.0) particle.setLinearVelocity(Vec3(-1.0,-1.0,-1.0)) sim.createParticle(particle) #specify the type of interactions between colliding particles: sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) #add a POVsnaps Runnable for taking images #of the particles every 100 timesteps: povcam = POVsnaps(sim=sim, interval=100) sim.addPostTimeStepRunnable(povcam) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/WallLoader.py.tex0000664000175000017500000000423412176660653020167 0ustar vborosvboros\subsection{\texttt{WallLoader.py}}\label{code:WallLoader} \begin{verbatim} #WallLoader.py: A Runnable for moving walls in ESyS-Particle simulations # Author: D. Weatherley # Date: 28 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * #This script implements a Runnable designed to move a wall at a specified #speed. The Runnable also implements initial acceleration of the wall #from zero to the desired speed as well as an optional initial idle #period during which the wall does not move. class WallLoaderRunnable (Runnable): def __init__ (self, LsmMpi=None, wallName=None, vPlate=Vec3(0,0,0), startTime=0, rampTime = 200): """ Subroutine to initialise the Runnable and store parameter values. """ Runnable.__init__(self) self.sim = LsmMpi self.wallName = wallName self.Vplate = vPlate self.dt = self.sim.getTimeStepSize() self.rampTime = rampTime self.startTime = startTime self.Nt = 0 def run (self): """ Subroutine to move the specified wall. After self.startTime timesteps, the speed of the wall increases linearly over self.rampTime timesteps until the desired wall speed is achieved. Thereafter the wall is moved at that speed. """ if (self.Nt >= self.startTime): #compute the slowdown factor if still accelerating the wall: if (self.Nt < (self.startTime + self.rampTime)): f = float(self.Nt - self.startTime) / float(self.rampTime) else: f = 1.0 #compute the amount by which to move the wall this timestep: Dplate = Vec3( f*self.Vplate[0]*self.dt, f*self.Vplate[1]*self.dt, f*self.Vplate[2]*self.dt ) #instruct the simulation to move the wall: self.sim.moveWallBy (self.wallName, Dplate) #count the number of timesteps completed thus far: self.Nt += 1 \end{verbatim} ./Doc/Tutorial/examples/hopper_flow.py.tex0000664000175000017500000001056512176660653020471 0ustar vborosvboros\subsection{\texttt{hopper\_flow.py}}\label{code:hopper_flow} \begin{verbatim} #hopper_flow.py: A hopper flow simulation with mesh walls using # ESyS-Particle # Author: W. Hancock # Date: 10 July 2009 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2009. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object and #initialise the neighbour search algorithm: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5000, verletDist = 0.1000 ) #specify the number of timesteps and the timestep increment: sim.setNumTimeSteps (100000) sim.setTimeStepSize (1.0000e-04) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #construct a block of particles with radii in range [0.2,0.5]: geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add particles to simulation one at a time, #tagging those in layers of 2m for pp in geoRandomBlock_particles: centre = pp.getPosn() Y = centre[1] if (int(Y%4) < 2): pp.setTag(1) # layer 1 else: pp.setTag(2) # layer 2 sim.createParticle(pp) # add the particle to the simulation object #add a wall as a floor for the model: sim.readMesh( fileName = "floorMesh.msh", meshName = "floor_mesh_wall" ) #add a left side wall to the model: sim.createWall ( name = "left_wall", posn = Vec3(-5.0000, 0.0000, 0.0000), normal = Vec3(1.0000, 0.0000, 0.0000) ) #add a right side wall to the model: sim.createWall ( name = "right_wall", posn = Vec3(5.0000, 0.0000, 0.0000), normal = Vec3(-1.0000, 0.0000, 0.0000) ) #add a back wall to the model: sim.createWall ( name = "back_wall", posn = Vec3(0.0000, 0.0000, -5.0000), normal = Vec3(0.0000, 0.0000, 1.0000) ) #add a front wall to the model: sim.createWall ( name = "front_wall", posn = Vec3(0.0000, 0.0000, 5.0000), normal = Vec3(0.0000, 0.0000, -1.0000) ) #specify that particles undergo frictional interactions: sim.createInteractionGroup ( NRotFrictionPrms ( name = "friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) #specify that particles undergo elastic repulsion #with the floor mesh wall: sim.createInteractionGroup ( NRotElasticTriMeshPrms ( name = "floorWall_repell", meshName = "floor_mesh_wall", normalK = 1.0000e+04 ) ) #specify that particles undergo elastic repulsion #from the left side wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "lw_repell", wallName = "left_wall", normalK = 1.0000e+04 ) ) #specify that particles undergo elastic repulsion #from the right side wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "rw_repell", wallName = "right_wall", normalK = 1.0000e+04 ) ) #specify that particles undergo elastic repulsion #from the back wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "bw_repell", wallName = "back_wall", normalK = 1.0000e+04 ) ) #specify that particles undergo elastic repulsion #from the front wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "fw_repell", wallName = "front_wall", normalK = 1.0000e+04 ) ) #specify the direction and magnitude of gravity: sim.createInteractionGroup ( GravityPrms ( name = "gravity", acceleration = Vec3(0.0000, -9.8100, 0.0000) ) ) #add viscosity to damp particle oscillations: sim.createInteractionGroup ( LinDampingPrms ( name = "viscosity", viscosity = 0.1000, maxIterations = 100 ) ) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "flow_data", beginTimeStep = 0, endTimeStep = 100000, timeStepIncr = 1000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/rot_compress.py.tex0000664000175000017500000001246412176660653020664 0ustar vborosvboros\subsection{\texttt{rot\_compress.py}}\label{code:rot_compress} \begin{verbatim} #rot_compress.py: A uniaxial compression simulation using ESyS-Particle # Author: D. Weatherley # Date: 27 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * from WallLoader import WallLoaderRunnable #instantiate a simulation object: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) #initialise the neighbour search algorithm: sim.initNeighbourSearch ( particleType = "RotSphere", gridSpacing = 5.0000, verletDist = 0.08000 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps (250000) sim.setTimeStepSize (1.0000e-06) #specify the spatial domain for the simulation domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain (domain) #create a prism of spherical particles: geoRandomBlock = RandomBoxPacker ( minRadius = 0.400, maxRadius = 2.0000, cubicPackRadius = 2.2000, maxInsertFails = 5000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 20.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add the particles to the simulation object: sim.createParticles(geoRandomBlock_particles) #bond particles together with bondTag = 1: sim.createConnections( ConnectionFinder( maxDist = 0.005, bondTag = 1, pList = geoRandomBlock_particles ) ) #create a wall at the bottom of the model: sim.createWall ( name = "bottom_wall", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #create a wall at the top of the model: sim.createWall ( name = "top_wall", posn = Vec3(0.0000, 20.0000, 0.0000), normal = Vec3(0.0000, -1.0000, 0.0000) ) #create rotational elastic-brittle bonds between particles: pp_bonds = sim.createInteractionGroup ( BrittleBeamPrms( name="pp_bonds", youngsModulus=100000.0, poissonsRatio=0.25, cohesion=100.0, tanAngle=1.0, tag=1 ) ) #initialise frictional interactions for unbonded particles: sim.createInteractionGroup ( FrictionPrms( name="friction", youngsModulus=100000.0, poissonsRatio=0.25, dynamicMu=0.4, staticMu=0.6 ) ) #create an exclusion between bonded and frictional interactions: sim.createExclusion ( interactionName1 = "pp_bonds", interactionName2 = "friction" ) #specify elastic repulsion from the bottom wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "bottom_wall_repel", wallName = "bottom_wall", normalK = 100000.0 ) ) #specify elastic repulsion from the top wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "top_wall_repel", wallName = "top_wall", normalK = 100000.0 ) ) #add translational viscous damping: sim.createInteractionGroup ( LinDampingPrms( name="damping1", viscosity=0.002, maxIterations=50 ) ) #add rotational viscous damping: sim.createInteractionGroup ( RotDampingPrms( name="damping2", viscosity=0.002, maxIterations=50 ) ) #add a wall loader to move the top wall: wall_loader1 = WallLoaderRunnable( LsmMpi = sim, wallName = "top_wall", vPlate = Vec3 (0.0, -0.125, 0.0), startTime = 0, rampTime = 50000 ) sim.addPreTimeStepRunnable (wall_loader1) #add a wall loader to move the bottom wall: wall_loader2 = WallLoaderRunnable( LsmMpi = sim, wallName = "bottom_wall", vPlate = Vec3 (0.0, 0.125, 0.0), startTime = 0, rampTime = 50000 ) sim.addPreTimeStepRunnable (wall_loader2) #create a FieldSaver to store number of bonds: sim.createFieldSaver ( InteractionScalarFieldSaverPrms( interactionName="pp_bonds", fieldName="count", fileName="nbonds.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) #create a FieldSaver to store the total kinetic energy of the particles: sim.createFieldSaver ( ParticleScalarFieldSaverPrms( fieldName="e_kin", fileName="ekin.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) #create a FieldSaver to store potential energy stored in bonds: sim.createFieldSaver ( InteractionScalarFieldSaverPrms( interactionName="pp_bonds", fieldName="potential_energy", fileName="epot.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) #create a FieldSaver to wall positions: posn_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Position", fileName="out_Position.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=250000, timeStepIncr=10 ) sim.createFieldSaver(posn_saver) #create a FieldSaver to wall forces: force_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Force", fileName="out_Force.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=250000, timeStepIncr=10 ) sim.createFieldSaver(force_saver) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/slope_friction_floor.py.tex0000664000175000017500000000602712176660653022363 0ustar vborosvboros\subsection{\texttt{slope\_friction\_floor.py}}\label{code:slope_friction_floor} \begin{verbatim} #slope_friction_floor.py: A slope failure simulation with friction # and a bumpy floor using ESyS-Particle # Author: D. Weatherley # Date: 23 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5000, verletDist = 0.1000 ) #specify the number of timesteps and the timestep increment: sim.setNumTimeSteps (100000) sim.setTimeStepSize (1.0000e-04) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #construct a block of particles with radii in range [0.2,0.5]: geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add particles to simulation one at a time, #tagging those nearest the floor: for pp in geoRandomBlock_particles: centre = pp.getPosn() radius = pp.getRadius() Y = centre[1] if (Y < 1.1*radius): pp.setTag(12321) # tag particles nearest to the floor sim.createParticle(pp) # add the particle to the simulation object #add a wall as a floor for the model: sim.createWall ( name = "floor", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #specify that particles undergo frictional interactions: sim.createInteractionGroup ( NRotFrictionPrms ( name = "friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) #specify that tagged particles undergo #bonded elastic interactions with floor: sim.createInteractionGroup ( NRotBondedWallPrms ( name = "floor_bonds", wallName = "floor", normalK = 10000.0, particleTag = 12321 ) ) #specify the direction and magnitude of gravity: sim.createInteractionGroup ( GravityPrms ( name = "gravity", acceleration = Vec3(0.0000, -9.8100, 0.0000) ) ) #add viscosity to damp particle oscillations: sim.createInteractionGroup ( LinDampingPrms ( name = "viscosity", viscosity = 0.1000, maxIterations = 100 ) ) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "slope_data", beginTimeStep = 0, endTimeStep = 100000, timeStepIncr = 1000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/gravity.py.tex0000664000175000017500000000355612176660653017634 0ustar vborosvboros\subsection{\texttt{gravity.py}}\label{code:gravity} \begin{verbatim} #gravity.py: A simple bouncing ball simulation using ESyS-Particle # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from POVsnaps import POVsnaps #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps(20000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add a particle to the domain: particle=NRotSphere(id=0, posn=Vec3(0,5,0), radius=1.75, mass=1.8) particle.setLinearVelocity(Vec3(1.0,10.0,1.0)) sim.createParticle(particle) #initialise gravity in the domain: sim.createInteractionGroup( GravityPrms(name="earth-gravity", acceleration=Vec3(0,-9.81,0)) ) #add a horizontal wall to act as a floor on which to bounce particles: sim.createWall( name="floor", posn=Vec3(0,-10,0), normal=Vec3(0,1,0) ) #specify the type of interactions between wall and particles: sim.createInteractionGroup( NRotElasticWallPrms( name = "elasticWall", wallName = "floor", normalK = 10000.0 ) ) #add local viscosity to simulate air resistance: sim.createInteractionGroup( LinDampingPrms( name="linDamping", viscosity=0.1, maxIterations=100 ) ) #add a POVsnaps Runnable: povcam = POVsnaps(sim=sim, interval=100) povcam.configure() sim.addPostTimeStepRunnable(povcam) #execute the simulation sim.run() \end{verbatim} ./Doc/Tutorial/examples/slope_friction.py.tex0000664000175000017500000000532312176660653021160 0ustar vborosvboros\subsection{\texttt{slope\_friction.py}}\label{code:slope_friction} \begin{verbatim} #slope_friction.py: A slope failure simulation with friction using # ESyS-Particle # Author: D. Weatherley # Date: 23 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5000, verletDist = 0.1000 ) #specify the number of timesteps and the timestep increment: sim.setNumTimeSteps (50000) sim.setTimeStepSize (1.0000e-04) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #construct a block of particles with radii in range [0.2,0.5]: geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add the particle assembly to the simulation object: sim.createParticles(geoRandomBlock_particles) #add a wall as a floor for the model: sim.createWall ( name = "floor", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #specify that particles undergo frictional interactions: sim.createInteractionGroup ( NRotFrictionPrms ( name = "friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) #specify that particles undergo elastic repulsion from the floor: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "wall_repell", wallName = "floor", normalK = 1.0000e+04 ) ) #specify the direction and magnitude of gravity: sim.createInteractionGroup ( GravityPrms ( name = "gravity", acceleration = Vec3(0.0000, -9.8100, 0.0000) ) ) #add viscosity to damp particle oscillations: sim.createInteractionGroup ( LinDampingPrms ( name = "viscosity", viscosity = 0.1000, maxIterations = 100 ) ) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "slope_data", beginTimeStep = 0, endTimeStep = 50000, timeStepIncr = 1000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/slope_friction_walls.py.tex0000664000175000017500000000742712176660653022371 0ustar vborosvboros\subsection{\texttt{slope\_friction\_walls.py}}\label{code:slope_friction_walls} \begin{verbatim} #slope_friction_walls.py: A slope failure simulation using quarter # symmetry and a bumpy floor using ESyS-Particle # Author: D. Weatherley # Date: 23 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object and #initialise the neighbour search algorithm: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5000, verletDist = 0.1000 ) #specify the number of timesteps and the timestep increment: sim.setNumTimeSteps (100000) sim.setTimeStepSize (1.0000e-04) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #construct a block of particles with radii in range [0.2,0.5]: geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add particles to simulation one at a time, #tagging those nearest the floor for pp in geoRandomBlock_particles: centre = pp.getPosn() radius = pp.getRadius() Y = centre[1] if (Y < 1.1*radius): pp.setTag(12321) # tag particles nearest to the floor sim.createParticle(pp) # add the particle to the simulation object #add a wall as a floor for the model: sim.createWall ( name = "floor", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #add a left side wall to the model: sim.createWall ( name = "left_wall", posn = Vec3(-5.0000, 0.0000, 0.0000), normal = Vec3(1.0000, 0.0000, 0.0000) ) #add a back wall to the model: sim.createWall ( name = "back_wall", posn = Vec3(0.0000, 0.0000, -5.0000), normal = Vec3(0.0000, 0.0000, 1.0000) ) #specify that particles undergo frictional interactions: sim.createInteractionGroup ( NRotFrictionPrms ( name = "friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) #specify that particles with tag 12321 undergo #bonded elastic interactions with floor: sim.createInteractionGroup ( NRotBondedWallPrms ( name = "floor_bonds", wallName = "floor", normalK = 10000.0, particleTag = 12321 ) ) #specify that particles undergo elastic repulsion #from the left side wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "lw_repel", wallName = "left_wall", normalK = 1.0000e+04 ) ) #specify that particles undergo elastic repulsion #from the back wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "bw_repel", wallName = "back_wall", normalK = 1.0000e+04 ) ) #specify the direction and magnitude of gravity: sim.createInteractionGroup ( GravityPrms ( name = "gravity", acceleration = Vec3(0.0000, -9.8100, 0.0000) ) ) #add viscosity to damp particle oscillations: sim.createInteractionGroup ( LinDampingPrms ( name = "viscosity", viscosity = 0.1000, maxIterations = 100 ) ) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "slope_data", beginTimeStep = 0, endTimeStep = 100000, timeStepIncr = 1000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/bingle_chk.py.tex0000664000175000017500000000334512176660653020230 0ustar vborosvboros\subsection{\texttt{bingle\_chk.py}}\label{code:bingle_chk} \begin{verbatim} #bingle_chk.py: A simple two-particle collision simulation # with data output via a CheckPointer # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #specify the number of timesteps and timestep increment sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add the first particle to the domain: particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) #add the second particle to the domain: particle=NRotSphere(id=1, posn=Vec3(5,5,5), radius=1.5, mass=2.0) particle.setLinearVelocity(Vec3(-1.0,-1.0,-1.0)) sim.createParticle(particle) #specify the type of interactions between colliding particles: sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) #add a CheckPointer to save simulation data at regular intervals: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "bingle_data", beginTimeStep = 0, endTimeStep = 10000, timeStepIncr = 100 ) ) #Execute the simulation sim.run() \end{verbatim} ./Doc/Tutorial/examples/shearcell.py.tex0000664000175000017500000001163412176660653020105 0ustar vborosvboros\subsection{\texttt{shearcell.py}}\label{code:shearcell} \begin{verbatim} #shearcell.py: An annular shear cell simulation using ESyS-Particle # Author: D. Weatherley # Date: 24 April 2011 # Organisation: ESSCC, The University of Queensland, Brisbane, AUSTRALIA # (C) All rights reserved, 2011. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * from WallLoader import WallLoaderRunnable from ServoWallLoader import ServoWallLoaderRunnable #create a simulation container object: # N.B. there must be at least two sub-divisions # in the X-direction for periodic boundaries sim = LsmMpi (numWorkerProcesses=2, mpiDimList=[2,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5, verletDist = 0.5 ) #specify the number of timesteps and timestep increment: sim.setNumTimeSteps(100000) sim.setTimeStepSize(0.001) #enforce two-dimensional computations: sim.force2dComputations (True) #specify the spatial domain and direction of periodic boundaries: domain = BoundingBox ( Vec3 (0,0,0), Vec3 (10,10,0) ) sim.setSpatialDomain ( bBox = domain, circDimList = [True, False, False] ) #construct a rectangle of unbonded particles: packer = RandomBoxPacker ( minRadius = 0.1, maxRadius = 0.5, cubicPackRadius = 2.2, maxInsertFails = 1000, bBox = BoundingBox( Vec3(0.0, 0.0,0.0), Vec3(10.0, 10.0, 0.0) ), circDimList = [True, False, False], tolerance = 1.0e-5 ) packer.generate() particleList = packer.getSimpleSphereCollection() #tag particles along base and top of rectangle #then add the particles to the simulation object: for pp in particleList: centre = pp.getPosn() radius = pp.getRadius() Y = centre[1] if (Y < 1.0): # particle is near the base (tag=2) pp.setTag (2) elif (Y > 9.0): # particle is near the top (tag=3) pp.setTag (3) else: # particle is inside the shear cell (tag=1) pp.setTag (1) sim.createParticle(pp) # add the particle to the simulation object #set the density of all particles: sim.setParticleDensity ( tag = 1, mask = -1, Density = 100.0 ) sim.setParticleDensity ( tag = 2, mask = -1, Density = 100.0 ) sim.setParticleDensity ( tag = 3, mask = -1, Density = 100.0 ) #add driving walls above and below the particle assembly: sim.createWall ( name = "bottom_wall", posn = Vec3 (0,0,0), normal = Vec3 (0,1,0) ) sim.createWall ( name = "top_wall", posn = Vec3 (0,10,0), normal = Vec3 (0,-1,0) ) #unbonded particle-pairs undergo frictional interactions: sim.createInteractionGroup ( NRotFrictionPrms ( name = "pp_friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) #particles near the base (tag=2) are bonded to the bottom wall: sim.createInteractionGroup ( NRotBondedWallPrms ( name = "bwall_bonds", wallName = "bottom_wall", normalK = 1000.0, particleTag = 2 ) ) #particles near the base (tag=3) are bonded to the top wall: sim.createInteractionGroup ( NRotBondedWallPrms ( name = "twall_bonds", wallName = "top_wall", normalK = 1000.0, particleTag = 3 ) ) #add local damping to avoid accumulating kinetic energy: sim.createInteractionGroup ( LinDampingPrms ( name = "damping", viscosity = 1.0, maxIterations = 100 ) ) #add ServoWallLoaderRunnables to apply constant normal stress: servo_loader1 = ServoWallLoaderRunnable( LsmMpi = sim, interactionName = "twall_bonds", force = Vec3 (0.0, -1000.0, 0.0), startTime = 0, rampTime = 5000 ) sim.addPreTimeStepRunnable (servo_loader1) wall_loader1 = WallLoaderRunnable( LsmMpi = sim, wallName = "bottom_wall", vPlate = Vec3 (0.125, 0.0, 0.0), startTime = 30000, rampTime = 10000 ) sim.addPreTimeStepRunnable (wall_loader1) #add a FieldSaver to store total kinetic energy: sim.createFieldSaver ( ParticleScalarFieldSaverPrms( fieldName="e_kin", fileName="ekin.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=100000, timeStepIncr=1 ) ) #add FieldSavers to store wall forces and positions: posn_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Position", fileName="out_Position.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=100000, timeStepIncr=1 ) sim.createFieldSaver(posn_saver) force_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Force", fileName="out_Force.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=100000, timeStepIncr=1 ) sim.createFieldSaver(force_saver) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "snapshot", beginTimeStep = 0, endTimeStep = 100000, timeStepIncr = 5000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/bingle_output.py.tex0000664000175000017500000000363112176660653021021 0ustar vborosvboros\subsection{\texttt{bingle\_output.py}}\label{code:bingle_output} \begin{verbatim} #bingle_output.py: A two-particle collision simulation # with ASCII data output # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add the first particle to the domain: particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) #add the second particle to the domain: particle=NRotSphere(id=1, posn=Vec3(5,5,5), radius=1.5, mass=2.0) particle.setLinearVelocity(Vec3(-1.0,-1.0,-1.0)) sim.createParticle(particle) #specify the type of interactions between colliding particles: sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) #compute the specified number of timesteps: N_max = sim.getNumTimeSteps() n=0 while (n < N_max): #compute a single timestep: sim.runTimeStep() # print the particle position to stdout every 100 timesteps: if (n%100==0): particles = sim.getParticleList() p1 = particles[0].getPosn() p2 = particles[1].getPosn() print n,p1,p2 # update the total number of timesteps computed (n): n += 1 #Exit the simulation. sim.exit() \end{verbatim} ./Doc/Tutorial/examples/bingle.py.tex0000664000175000017500000000276012176660653017403 0ustar vborosvboros\subsection{\texttt{bingle.py}}\label{code:bingle} \begin{verbatim} #bingle.py: A simple two-particle collision simulation using # ESyS-Particle # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #specify the number of timesteps and timestep increment: sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add the first particle to the domain: particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) #add the second particle to the domain: particle=NRotSphere(id=1, posn=Vec3(5,5,5), radius=1.5, mass=2.0) particle.setLinearVelocity(Vec3(-1.0,-1.0,-1.0)) sim.createParticle(particle) #specify the type of interactions between colliding particles: sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) #Execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/ServoWallLoader.py.tex0000664000175000017500000000327112176660653021206 0ustar vborosvboros\subsection{\texttt{ServoWallLoader.py}}\label{code:ServoWallLoader} \begin{verbatim} #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * class ServoWallLoaderRunnable (Runnable): def __init__ (self, LsmMpi=None, interactionName=None, force=Vec3(0,0,0), startTime=0, rampTime = 200 ): """ Subroutine to initialise the Runnable and store parameter values. """ Runnable.__init__(self) self.sim = LsmMpi self.interactionName = interactionName self.force = force self.dt = self.sim.getTimeStepSize() self.rampTime = rampTime self.startTime = startTime self.Nt = 0 def run (self): """ Subroutine to apply the force to a wall interaction. After self.startTime timesteps, the force on the wall increases linearly over self.rampTime timesteps until the desired wall force is achieved. Thereafter the wall force is kept fixed. """ if (self.Nt > self.startTime): #compute the slowdown factor if still accelerating the wall: if (self.Nt < (self.startTime + self.rampTime)): f = float(self.Nt - self.startTime) / float(self.rampTime) else: f = 1.0 #compute the amount by which to move the wall this timestep: Dforce = Vec3( f*self.force[0], f*self.force[1], f*self.force[2] ) #instruct the simulation to apply the prescribed force to the wall: self.sim.applyForceToWall (self.interactionName, Dforce) self.Nt += 1 \end{verbatim} ./Doc/Tutorial/examples/slope_fail.py.tex0000664000175000017500000000517712176660653020265 0ustar vborosvboros\subsection{\texttt{slope\_fail.py}}\label{code:slope_fail} \begin{verbatim} #slope_fail.py: A slope failure simulation using ESyS-Particle # Author: D. Weatherley # Date: 23 December 2008 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2008. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5000, verletDist = 0.1000 ) #specify the number of timesteps and the timestep increment: sim.setNumTimeSteps (50000) sim.setTimeStepSize (1.0000e-04) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #construct a block of particles with radii in range [0.2,0.5]: geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add the particle assembly to the simulation object: sim.createParticles(geoRandomBlock_particles) #add a wall as a floor for the model: sim.createWall ( name = "floor", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #specify that particles undergo unbonded elastic repulsion: sim.createInteractionGroup ( NRotElasticPrms ( name = "repulsion", normalK = 1.0000e+03, scaling = True ) ) #specify that particles undergo elastic repulsion from the floor: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "wall_repell", wallName = "floor", normalK = 1.0000e+04 ) ) #specify the direction and magnitude of gravity: sim.createInteractionGroup ( GravityPrms ( name = "gravity", acceleration = Vec3(0.0000, -9.8100, 0.0000) ) ) #add viscosity to damp particle oscillations: sim.createInteractionGroup ( LinDampingPrms ( name = "viscosity", viscosity = 0.1000, maxIterations = 100 ) ) #add a CheckPointer to store simulation data: sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "slope_data", beginTimeStep = 0, endTimeStep = 50000, timeStepIncr = 1000 ) ) #execute the simulation: sim.run() \end{verbatim} ./Doc/Tutorial/examples/bingle_vis.py.tex0000664000175000017500000000456512176660653020271 0ustar vborosvboros\subsection{\texttt{bingle\_vis.py}}\label{code:bingle_vis} \begin{verbatim} #bingle_vis.py: A two-particle collision simulation # with visualisation using povray # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from esys.lsm.vis import povray def snapshot(particles=None, index=0): pkg = povray scene = pkg.Scene() for pp in particles: povsphere = pkg.Sphere(pp.getPosn(), pp.getRadius()) povsphere.apply(pkg.Colors.Red) scene.add(povsphere) camera = scene.getCamera() camera.setLookAt(Vec3(0,0,0)) camera.setPosn(Vec3(0,0,20)) camera.setZoom(0.1) scene.render( offScreen=True, interactive=False, fileName="snap_%.4d.png" % (index), size=[800,600] ) return #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add the first particle to the domain: particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) #add the second particle to the domain: particle=NRotSphere(id=1, posn=Vec3(5,5,5), radius=1.5, mass=2.0) particle.setLinearVelocity(Vec3(-1.0,-1.0,-1.0)) sim.createParticle(particle) #specify the type of interactions between colliding particles: sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) #compute the specified number of timesteps: N_max = sim.getNumTimeSteps() n=0 while (n < N_max): #compute a single timestep: sim.runTimeStep() # print the particle position to stdout every 100 timesteps: if (n%100==0): particles = sim.getParticleList() snapshot(particles=particles, index=n) # update the total number of timesteps computed (n): n += 1 #Exit the simulation. sim.exit() \end{verbatim} ./Doc/Tutorial/examples/gravity_cube.py.tex0000664000175000017500000000464112176660653020626 0ustar vborosvboros\subsection{\texttt{gravity\_cube.py}}\label{code:gravity_cube} \begin{verbatim} #gravity_cube.py: A bouncing cube simulation using ESyS-Particle # Author: D. Weatherley # Date: 15 May 2007 # Organisation: ESSCC, University of Queensland # (C) All rights reserved, 2007. # # #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from esys.lsm.geometry import CubicBlock,ConnectionFinder from POVsnaps import POVsnaps #instantiate a simulation object #and initialise the neighbour search algorithm: sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) #specify the spatial domain for the simulation: domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain(domain) #add a cube of particles to the domain: cube = CubicBlock(dimCount=[6,6,6], radius=0.5) cube.rotate(axis=Vec3(0,0,3.141592654/6.0),axisPt=Vec3(0,0,0)) sim.createParticles(cube) #create bonds between particles separated by less than the specified #maxDist: sim.createConnections( ConnectionFinder( maxDist = 0.005, bondTag = 1, pList = cube ) ) #specify bonded elastic interactions between bonded particles: bondGrp = sim.createInteractionGroup( NRotBondPrms( name = "sphereBonds", normalK = 10000.0, breakDistance = 50.0, tag = 1, scaling = True ) ) #initialise gravity in the domain: sim.createInteractionGroup( GravityPrms(name="earth-gravity", acceleration=Vec3(0,-9.81,0)) ) #add a horizontal wall to act as a floor to bounce particle off: sim.createWall( name="floor", posn=Vec3(0,-10,0), normal=Vec3(0,1,0) ) #specify the type of interactions between wall and particles: sim.createInteractionGroup( NRotElasticWallPrms( name = "elasticWall", wallName = "floor", normalK = 10000.0 ) ) #add local viscosity to simulate air resistance: sim.createInteractionGroup( LinDampingPrms( name="linDamping", viscosity=0.1, maxIterations=100 ) ) #add a POVsnaps Runnable: povcam = POVsnaps(sim=sim, interval=100) povcam.configure(lookAt=Vec3(0,0,0), camPosn=Vec3(14,0,14)) sim.addPostTimeStepRunnable(povcam) #execute the simulation sim.run() \end{verbatim} ./Doc/Tutorial/PV_initial_window.png0000664000175000017500000163313712176660653017320 0ustar vborosvboros‰PNG  IHDRCÂuFsBITÛáOàtEXtSoftwaregnome-screenshotï¿> IDATxœìy|eþø?“ûè‘£GÚ¦mJÒBi@(å Š”C-*+¢ ¨ë~uWÝÕuÕÝõÚÕßâîº žVO ‚Tl¤”«¥¥¤´¥é‘4m“Ì‘ÌÌï)!´i›«ò¼_¼xMf¦ÏçóÌ<™<ŸùF’$ @ Äu…Àáp\m@ Â?xW[@ ðdÉ @ ˆëdÉ @ ˆëdÉ @ ˆëdÉ @ ˆëÿ-üðo³Ç=s„¸´qåÀ=•󻣄§#%êÊ÷î'ÄÕ$Arm¯åî_EÝ®åË‚@ âúa8K†<ùŠAéþ™êØEÏ=W˜(±"ý)•·}ÖÁ~¾0©O ¼â‰¬ìgEtˆÛârþtÜãYË×K“ÓV–I#ÒMï¸ÚKÿöÀÔTµR©TjFO¹û庘+"84ø2H‚¹MAâj|g–R™ð@I×ã <UÀôëfð  Ûùù\¥ ¾4×ÕBž|Å ñjݶ@“ýÇãÈTA 1’ø2ÇOZ{t[¡ 0X,È]€‡\OA<‘ü\AÌ´û‚VƒWðËÜçþ¸±úÙ¿O’ÓQúÞ^éí_LRÆÈ¸öG¦ý«Gø'ñÔ¦Ê_N‰…Î3v—×"ídøÂ+8êAº.P綬?•&Ùûniçm‹¢‡jÓ=¨BEȼ,ꮯZ2`ßÿ複™wެ›.‡á¾:@ ? |š+òDb±„C, ¼D†MÛÿXhHP)•ñ†{^+í Õæ’ ‰DÄéÆôù÷ýâ”ʸ¬;^)3»úNí PißýèÏ7´6¿{‡>%eÌâ/ø)™3û—3ìÛŠŽØ¸ÏtÛwï•+ïYž#ó€Ð;Æ´inʼOÚâØsc”Ñ‹¶šY¼â‰±†çŽùý"šºp¤Æ5î+f$† EaqÙs¸’’ÀÚO¬_=3-J©ŒJ±êƒj ÐóÍ]É7¯k䮃ã௲Æÿ¡ŠÇG3Ç>ôÒãósÇeæ=uÀ„që ‹Æk•J¥:9÷¡NðÖ×…ÏÍÏÒ¨Tª¨¸Ñs^: ñ1ä éx›¼hÒ¯ Ý!QŒ¬Û¼ñü„ç_8¦üÝoÛ¸ñá8ðhfö/þò›»fäF§NüùÛ',€GÔ“ãÀ£™9ÿ÷¯?Ü™«T&ç?½£±áËßÜš¥T¦¼²s˜Ñíß>·Ð¥T*5c¾°ã‚zûwóÒ(òv+Sï«~ñšóã‰$‰˜®ÿø×³.äUº› €Áêáà8ð¨~ÌòV/œ1uÒXýÔ‡Þ=a¿¢Î$@ ×5¡xëW¾~תÝãþ^qÁÜzðUí'¯Þb Ô–éÛ»ÿùûÿ_ç²ç¿ÿ5ûéW&çeÇ#nùïÿ–ÇiÙVsîÜÉÏî‹çûÙ>¦œþ‹[èìfÀuaçûÇâ—ÞŸéáñÒ»vÅÄÛbë¿>aWëDœütI¨¦½åÔø9i~ûSÄÉ3r¥ÿôä뛾;ÜÐIº§rlïþçîy®¦`cM{{͇ók_Xüܾž¡&zdË7Ç'üsoÕéCÿš†~eÑÊ]i/ïm1[Zn\mˆày¿S¶£}fÛ¨7ªÚ,–¶úÝÿ(ÔŽD(Ô€Û4ؘñè„3¡PŒ8ùáæÖœeSï¹Ksô½--a²ù»S“Ö|[QYµãã_~óEkÿKßöú…}Í­‡_Qúð¼e_û×QSSÙãäÛ¿y¿žÀÂ'þê£#,æóß?£øxõ“;;åƒÆAoå°jø‰WAÌ Ñ0ìúðíé)ÿþîÇCG¿ù¿Þ×ïå°#”â@ü”ñÅ’!><:6&&&&F›ÿ²ÿa¼ºècËm¯<}k‚„'Iœ÷Û_'þ°¢;W«—ÅÄ$Lyé8€Wo*¡þá‘ |aìì§~75ȸ«`‘y¿X Üýî> ÎóÛ>8™òóÅiâKǽöΡ½yЍrW½ÃZù]×´§Š­ÚcÄ-‡v™ÒæeÉýWA9ç­]E÷K÷ÿóÑÓ5és~ûùYðê¾v.xññ©QBaÔ”Ç^ºÝõõÆãCÍóêùOü,]‚`ŽãEŸwÏ{í·’ñ0‘Z?i¬Šï½/=<1ÏÑt²úœ™âɵãrb„~w`ØAÒAÇŒG0~³-úÂaÅ]áw¼[Ú~Kö—²~¹Hç9•óÞ;ñŒ¹Ù¶WöÕœ:—|Çœyåëž?xvÒž³ñ·MPâåÂdé·?³îög€%Z\·òÞU¥Nøvµº«Ù¦œ+âÎŦ+íß[(Ú ?"!²ï¢;ͽªi —Û}^ûÂæ<ûÁï_|å÷·ý¹žÍ(XùÊšgæh¸ÆÃ ’~ 2f¢=» ´blwù{Ûznz}V4x£ ïIüûÆÏêWý>xaj9w«0¡ˆOãÎþ¦7?"ŽÓJŢȸH&’ ’b€±~÷¹Öí:evòytO7ÿNrÐ2 Nï·2zx5üÄ« ‡wéñÜç\g€Ë¿¼l÷®³ÞôFÇ_ú;~D¼¢O_¡•Ûj¬N€P¿¯@ ñ“Ä—) &VÇ'$¨ûrˆDÑ UIQ±)Žþ+O¤2— âW$„Û[ºûâQHKk/2ðï€ f(óÀ½1sÞݾwòG-†ß.H¸ìš Ò;›—Ò¼ñ‹/ìŠ[žŽ­Èjû×矓M}BØ í‹`’¸i=–÷ú/5Q«5Š„0k};zPmuVy¼J„‘b>M¹¸Ó¶.œ‰¼ôçpñÚ ÕÉá]µîo‡î $<òÏmü“ê<º~å¢ÕœQõÎôKCN;÷mò®‰ã€g€§œœbl×¾÷JºIüñœ„'1–"æ£N?ùj†}ó qbÍ#¯5¯þêÈöìHQùüä{Z¹ÞF£Ðë­ > ’ -=èë ý€\-æ6¼ßhüð¥m—¹ÞD° ÁHSUž¨î+„@ âÆ!y2²œ‡î +~ö¯» °¤¹vß·G: ÷g(’$.BÑ,€4{é­Ìö·w·Ñdýgo•Ùú¿÷æ…ÇÊlçš{ƒ([,N_òó¤Ãxü펼_Þ{¹+iÞñÕ¹³cªþó±-wZ‚(llAüáÙ•=7=—É”ñó×ÞøôÇz3árö¿çŸ˜Œ©:1HÇÝ?O°ãåµ-.—¥bíË_ñ '“$O‰¿ð;V'yöËÿî¶z½Ô²q+î‰ØùÜk;8Ë:Íg´ÐÞûâhعýP‹ƒQxTt¸ð){uùmòeÌÁ*Æ´ïyç{Þmo¬®ª¬¬¬¬¬:þݟƶ}¶¡*$™,ÙCIµIpµ—½÷96Èhô~+C¡F?¼ ŠRzÐ×y(†¿Ñ¬mÏ_Þ:`v¹,åÿye·|þâLäA á¡Èø—ÝôBñÛ³O>?#Q­T%å>ðÆÞ:  yhõ˜87Sþv†,bú_6®¶¿”Ó”OUå̈éÿ&[œºäW³Œf¨•ÚyEÍYP¢”»ÊÆÛùùäGõ¿"ƒôNœ<+7’‘Œ¿-]<ÕÄ[µ4dÎÏD:_¦„ªwVÏN‹ŽIºéáÏä¿\_´,YXøô¿|úò¨m÷eDG§/Ù¦{éÓ×fD`ÂQËÿñâÌ7qÊܧOäL$­A6ñ_þgÖ‰g¦Ä«Tq~¾¶²—ñÞ—õÈ;LMŠR*¦¾ÒóÀ^ž<3ìþ·É‡1éÝZòÎAÅÏžZ¡‰åH¿ôÉö¯>8Ô‚I O½rÛ©ÕS&Ý<«à‘bE_$ß £Ñû­ ýñ*ˆ7¤ô`¯óÐ {£EIwÝÞõÒTmtêÝ[F½øÑŸ&ŽÈðC ñSëêêºÚ: ˆÇGoz,æÓý/f#G @ ¿¹²Ë'"@ D(&ã_©TöÛ3B>œ‚FTÜU—{­éZÜ=º6»ðSºàýúrUº0Øõ„ëó’"¸^@Ñe@ âúE—!@ ˆëdÉ @ ˆëdÉ @ ˆëÁ¡C‡®¶@ áI’W[@ ðÃá¸Ú: @ „ <@ qý1ÌʘD0:tèðáÃ#ÔøÄ‰'Mš4B#@ ®q¼X2 ššzÅ•¹:thΜ9V«õj+2®‘ 6œ“;yÚI¬8¸1ƒðÊOû967lÇ×&h@"ˆÅ»O&66V¡P\õÉ1âú¢ß°áÌ‘XÇ`˜âÖáçZ6/¾ô(¼ø§ÿ¹}HÉË›=+ˆÅR¿®ƒïø"Eøã×â/Ö2š$ÇÓÿ XPÍ™ãåå{@¡PÍ+Xýú(•Qz½3-Ôê˜ÔÔÌ9s [}ýé’’Ïtº ƒaJffŽïÓ²¢¢5&S“@ ŠŽÖ$%Š‹K8pàÛ’’Ouº «Õl25ÇÇ'¥¦f.\¸D ž>]¹yó:©IÙd&S3÷Q¡Pët›d^ᆠ·|2£P¨M¦æVSsQÑÎØÀ \yÙj´œ,«ý$6BgÐÎŽÐñkUû  ¨¹K]ãI|ª9süó/7Œ¶8<2ª®j÷ú¢5«V>@;qí?ÇFˆ¶ãˆàY·îÏK–¬‰Ÿ4 DÁººº†8ÌÍG¯ÙçNQÑšºŒ2ИIœV;ÓŸÌùñ/¾¸zîÜ»RS3E"±P(âþ?qâHMMÕ‰G’“Ó§M»U£ÑŠD"‘H,‰iš®©9~âÄáêêÃ/¾¸ÖG_|qõìÙ·ëõã„B‘H$ Å"‘Øln«¬ÙxWW•ù+¹P™©˜#äI|ù¡P´ûÛ¯W¯^”®×0$‰ãNŽÍ›ßV(Ôùù ŠŠÖ,oÈà \*—l­úw]ÇÑäı6G—ÙÜ.Rå$Î2hgGJ£C%E©ªo8%ÛýYÖ§oÒ©Ù¦—>ª3µ¸]ˆ¾óæ?ÿž·xBÎ$¹˜g¶»¶½4ÎBýèqþ¶×øslä¸a;Žž_\-‘H—,Y=ðG'`®â€Ü·o_}}ý•—{#“––6}útnûš½þžJ"®S†©]’'Nyù&1TOÃÊÊòââ î‘c¢DbžSFcí‹/öMjóòf, ñÖÖ¦ÞÞn­6%#c,gÌL™2kÚ´[/\8¿qã¿ÊÊvêtécÆŒONN‰Ä,Ë&$$K¥Òêj? K$ÒÖÖ&«Õœœ™™#K„BQrrú¨Qúùóö¿ÿ½uàÀ£±nôè쬬 "Qßœ~Ô(ý‰Gè‘’ÄׯÃ>*uÙ{NLn§€¦ÀE‚…‚n»½©q§©è+ž ؘlØ ë“q¸ºNu}ÛØÛw {¤GNÏTÎ LaéÆ;üšè_E^{ý7yy³ æÞóį_áì FK΂%ö„'Ȳ´ùò(¹‚ÑÄÆ¥Zº.mÛýCýç1aI9ÚY†ÄÙbÌ/)`í¶xJ)(X¥Žeæ/³þòO ¦]Z¡ÊË÷èõ9 …ÚǾX­æXmF„”¯”ò)«ˆN4™šúY2¦¶f‚À N£ >ö,$Ï1£±Î3~5T1³ÙÜÙÙÉmGEE©Õ¾^F_ùqÃ’ykÖGÿ{Ú”¹ùù näZÜ4:++ëªH¿a9uêLŸ>»þ¹¹¹WFnEEŲøxòÆ¢w3×5#[»Ìjµohkk‹¥O<ñj­q yFcí±Æ²ˆÛ!R®’òÃvìÀ±cåcÇÞärQRiŽÛE"Q`âøøãuݲQ1SWÓ¸\@3@³@³À°àäË´÷tð£%›×s›ü6N†¨ïþáT×·>1K9Çîê:Þ¹3l2•s’Ã'ú«ÃÐY(\,Ö²¼—ø[Ïäµ5…¯¼³uÛÞØî5Ëw)\Ü·-KÅb骕ÏuãÅÿ•F‰bbÇFÅGùâˆvb‚\#ct¸B- #œ1½=–=Æ¿9õ^39G;ktìP¿žR@©Zµò9‚À ×é2Â! ß{ÿoùù tº ‰Dª‰ÕÀØì‰‰¬¦¦J¹ûèÿîÊ™nûÇWCHÑësêªvkT‹HÓÙÝÛz¶r~~ŸÕØXW^¾§¦¦J"‘j4‰`4Ö*j½>'/ov¿87¿ð}@’$îi;‘$~àÀžòòÝê®ö4«Iê$q¾ðÛÈsT|^Þ-S¦ÌÌÐr¹\ † …BÇ0ÌÙ³gY–MMMMMMž'{~ô ;î~õÃáKªaié½>'„™{îPÆ+••å‰T¯Ï ‘‚—è§!p®øââùù C…e25WV˜5káÐcÌ3GÔSß)*Z3ì9ÉÙ:UlÔÏ¿7™š-Zðû…«TÆ™1Wl&àHKKÛ¶mÛôéÓ93fêÔ©WFnEEA’Iùrò¼…;w#Kæºfk—•–î(-Ý^Pp÷ʕϼõÖ+åå{òòfß,.ƒb8õuEô‰a‚H!OL³4N÷Z¾&c!aÑ¢å·,“Éy<Ç#I¼¢¢¬½½52RyþüÙ³gk,–.†ÇÂ`Æbé8zt¿ÉÔ⯑H"•ö 2ëz{»ÕêØ¶¶–šš*¥R- ¥R§EV«å̙ﻺ:“’O”4™š-Í‘·?ãp@‘vÛ‘´­CÌ—ÓúUNFîb V93¥mgMMU`“¿j—9¢Îº·®gŸ“Æ£¥©õ‘âx U·&>iì9|ºëÛß6ÚŽd©n‹–Œ @¯”Õ~Òd=sðÜöÉ) CÕf?xmç1[7ðë«K)q³zÕs8{î)«û¤¬ö“QÚœ™÷ßÖkíQ§¨ÀÖjk9ÒeP*Ç…ÇÃx<ŒÏ¯1$œö¡-™Ràð‘ÆŽ¹iÅò'ÀÚmᆄÑX[ZºcÅŠ'uÉéaòÐé2Äo|‚ª}C÷… Z3·Ô)¢µ§ŒÉÊÑÄj­Ý–ââV«™s¢z-¦¶æòò=o¾ùB~þ‚ü™¼öý9fµZ6o^[X¸œ› ›LÍÅÅš~amMël‚ P}×§>2¦¤­q}Måƒ>åï¬ÎåríÛ·Çñˆˆ¡PÈíäñx‰„a˜–––ÖÖÖñãÇGFF@ww÷±cÇrsse²á½jýðë¾üO¿ä6LÆ gÊj‡8Óh¬+.Þ`µšuº 2‡hpÅ‹+ÝÊÔ”ž ¬Y«Õ\Zº]¯Ï fæ=üña÷ö‡/¿ÏmTV¨©©ÌÏ_’8‚À9þ°pùÐ>À9ËæÇêâú)ã;Fc­êv± xB!&`">&ðLÄÇL¨™:”±Ê¹,<ôÕµkÿ¼dɪŒXT» qåaY–¦é~;ÓFiëÏ6÷ÛÉ0Ì•R 1R„¦vIâ­­ÍáHIÉ‹¥ÜO”\öôÓ¯%$è`Ñ¢eï½÷÷ñã§öÓbµZ¬V3WOÌh¬ÍÏ_8oÞbÓú&Ów]SïÌ–ðe.ÖYQòcOcvaP5‘¤R†ñx<†ñ0ŒÇ0ô—_n¥2J©Œ‹%œa¼ýû¿kmm’Hd3fìÝ[â—”‹í`œ”ˆåŽ›9)±± 휃aX]Ý©††Ó‰ì¶Û54œ¸_55U¬f¢ä€uxc"fÊ_¸°¼|wwý-ÉËH(Â'šLÍ¿ÎôqØtg·}bwY¢¥©^ ]ÄD]ÄÄS–]u=ûÊZÖFKSgƯòQ‡!|gÚ*ZmçôéyeuŸè5“Ƙùâ'öÌf]|üʗĦ Sgxò]Š;î -'¿9ùÁØoü€\®pÑ.'MIÂ%cæqÑ”¹Ù,âN ÙÔjïµ D"L"‰ŽpÑ$ ÷”vK‘lü‚ª}gnºE}×ʼ¼Ù~ßÃA©ZrïJ06Ö f‚À]´«³Ãd25 yäÜ¥ìÿ^wå óBK«}ò‰WU–„cúÒUºätS[sQѽ>ç¾%+~g5±ÚÂ;—ååÍæLÂ;—ùxÑ<ñq@Z­æîö EEo¬Xñ½1™t,rÚ¡A Ðmɤu·?V½ga_¿V­zÞ/eöíÛGQ”JuÙ›{Ççó¥R©J¥jooß¿ÿ´iÓ`ÿþý,Ëâ8€%þ<À)¦ïµ¥‹q vIâß¿ýȱ}ãfšÎè&òÚ`Nþ„¦¡{¿“^_ÈÊ˶Y»×¬y¾ àgät E“^÷ÏZ2ç‡âÎüÞ9£ÑŧFoÚüÖ(]æö˜‹q¦ˆãùBž@ȉ0‰ˆ'`"!O,䉘PÄ x}·F$Ý4wò×oo-)ù,0Gª]†¸Â°,Ë0—Y2iÉ6J[[ßè¹Y2?‚ª]V\¼ÑdjâBSÒ´ œt•Ëã5mUUyAÁÝ3gÎwŸ™––5nܤ;?+,ôoFbµZÖ­{c©„èpU„D!MVÒÅÅ —ëtåå{ª…'n_|oåღãÍi‰ÑÅÅ‚ùé’JåÆ<‰$YYã'OΗÉä¼N,–rN ÃÂÃSgÌ(HLLñ׌>K†k‡Çãñ"#YYãgΜÇãñÚ+ /Já)ꉧsR‚)fµšÙÎ:ªìe** 0€ ‡ ÿïy…BU^¾›bÀNNÉ€ˆvð–âfèÚexƒÝe€iªRœ0X¿bdi½Gœ€wà !)€öÍÉtÚìˆðheTüÖªc ¦žs據ſÂj¶èí‘jyBÀ­i4ZîËÕÖcÜpàri䬛î“HdNæ’ÓÜÜÕÒÕm²œï$#ðð˜0i¸BïÂ\” §hðá':n)’¯@|o·ý·$)¿áЩc¹Ólö“©Ù`˜b³õX­f…B­ñÝ«Z –J$²ag¸b±4oò,nÛÚmá’p 9C}[5±ÚW<¹¾hMñÖ3C?ÇŒÆÚÜȈ±¸¨è ˜Ì¸‰ø@ €/¾x|À0`Y÷ùKëþM®(-Ýá{òÀ™3gpïgÆÇsÿ¯Õj†Ù¿?èõúÞÞÞÎÎÎ Sh†ê¡h‚Ûp²Þ#1jjªJJ>E çýòvQ„¨±æ\0úp oˆJŽ™¿òNi„´ñôÙKÊ0}ÃÕÉ8ƒ!‹fþìÖ–sçwmû¬²ò@H¬ Š!¼î×èâo_ywõÊ7ß|>?a0Y%éãõ‰£ueÅß a9Yj0}ü¢÷´ƒ±á|LÀ>ãó0ãñ1ã¹9ÚMû>-»iüô€Ã¶Ý 5 ñÿÍ}ˆWTñ×›|ªø‚@ ˲4}ÉDÉâÞÎHK>}æœç™WT3Ä0Ôôch§°ÑXwþì±¥·e¦iGÆŒWq²eÓ7'ÂÃ#ž~úu•ªÿ ï‚‚{þö·gÆ:¿²fÆÚôùÃwLàÆãþ¯ßøÃ¾ÝU‘ò‚iYe‡ëö|¹³¦úÈcKç$ĪžxýCßMÓn+‚Çã “Uª¨]»¾lii„‹w(;{ÒáÃ?|òÉ»Hñ°ˆx</"B™““»mÛG--ii™\ìwH¯Ï9vìGNJZZfÀýÊÏ_h0Ì^ IDAT˜­Ö‹ÿ´ …ª¸xcå¹–ºìÇm.°Ó€9íYÖ2½>Ø5y|Œ%ˆ–¦ž´ì2öΉ¾#A>Öó“!*;·{ ùÒhijÞà»ôÁ²Pªš¿'{\L*éÂc¢“OÞ70Æ,ø<šq¦ÅŒç¶õšÜ^¢k %ã»”%KVI%R \vex¬2"ö›òõ2IĨÄq ôv4Xº[Åbyx¸* âˆ3V‘T‘FÑøóJÛ-…NÍæ7T“)™õu§rÛÏÉþú(ô¾ýÑ^›B¡ÒhM¦&î¥l”:Ö³…úºS:]ºïÙÿP\¼Q¯Ïڌዥ®xríº¿Ôœ9X­³a¤ÕjN‰r##a[ìöE298z0À°zid™*±^®À¢´îö™-g²--°èܱ÷Êã}Ÿ°ž?><<œÛ&IÒn·SÅãñÄbqtt´D"ጙ´´4‘H$—ËãããÏŸ?o·û—ƒçoÇ€bûŒÓß’!I|Ë– çNO¹sz\z<Å’mgØþ¾ãÙ`|†–f]$ƒ3NC÷¼| 2~A³4EŠDÅŒ‡fÞ{bݺWóòn ÞºŠõn9ÐŒ „¬~zfTšúÈö½55•? ¦>Ã0¬ˆÉ»{j‹±©dû'^í1'K ¦_ôÔ8ô1~KK·¹9ûä'ÎjX0ï¾à½[î9W©¬ptòÛ^xî9^bœ~¾BãæÖ 6'Ë…GÅÅ©¤¼+'ŒeßëËW¼º½—¾ëå<‘ºÀ2Œ;ºllVZ¿£™£SNœê+¤†|2?¯]f25¥%ªÓ’ã0K±åûêú–ž‡~*;{ÒÀ“-–‹¥C¥Š.)ù4?¡ïñKV«9!F <©ÛŒ {úÁ¹îÙ£G½õÑ®¥·Ïž°ºÞ›7¯#\"‘.YâkH‡N—ár9#"œÁãñë7o~G¥Š*(¸»ºú°Ûáñx»v}Y_:7wFAÁ=/¿ü+¿qÑen)"‘øý÷ÿ!•Ê îÆq‡ÕjvK9rdÿáÃ?pR6mò/¡Ó…B¥P¨ú~YI_·îÏu=üÃc_·²ò^8\0ﺜŒô+V»l–öÑۉʎ­?¶EËÒ&Ç,‘ •p®çPUçVŠÆu¹ã£ï¬í* Þ'Cºßœú`¬~÷‘Ï&$ê‹1 ˜k­\¬PHc¸jy‚D o±Ö&(Ì+xóÍ †<Î!J¦dßaÈè=ßVSwþòñ±i©º |¡ÈESÝ+C€(ÌË×™p3vKé}{/¿á„$u¬€·±Œ;ŠÙ»ÇfOæ"͸4‰¤¬‹¿SccÉÔtß’•>ž/K —”|æ—%ã{Å$«Õœ ÍäÊd àn†–Ý"SŒÉË»åéTzútÕG%ŸÞu¼4·ý\Zw»ÌÚéã{³ÙLQTDDà8îp8²³³ãââ(Š2™L5558Ž'&&r'§¤¤p•äryGG‡ïý  ã@Ñ}sý|2åå{JK·ÇN¸ãñ»@8c§ÒÉt – ×`\FÂßÅóH† Y§‹q²¬§%sÑ'3ˆƒÈGhÖE2„“¥¡+eVŠ2+ò`ÉîššJw*TÀtÿŒ²¾ý éb(Š%%ÑâIË'ýßÇÿœ4~æ°‰û^aY–d’&H—'Èr~>îÜþ†uë^í—ŠãdÈÁôñƒaÊÀ‘\Zºý‡Ê„”$˜š–àm@~ÕÚÊ€}ÿ£“fÞ9²nºx"‰ˆ§XŠÿж¶f3£NNW )KSSK›dTœ Ù2W ÖRò‹^ë~¦ÌüxJÍß̹ó)CÍ{³#CµüœgtÙñ^’îÜG‘%ó ðÚe‰ 'àIÊŽÔ—ì?›wë¾[*•sG««µ´4rL}ýi©D’Ÿ–¢k¹ÐÂÕoõQ?‰Dj餀/ݲ»²¥Ý Ð7©ÅêÏ·¹O{ÿóÝ*…B¥TÜr›T*Œ·óÛ>ŠðD,–¸­ ãÉåáK—®ÊÍ õõ§$‰TÆ%·äæÎ\ºtõ@×Ó°(êžž®ÄÄ”>!O(º¥””|n·÷Êdaœ£G?qR†æã×v:1zY/+·¹ÀEÙï=÷J¶’^´è©`šõ·@MBØØYÚIKIm×»šþ‘ys;q¶ÃQ/¨¦iŒ–NíÕ×Q~î+™,R­ˆ#]}S%Y˜BÞ/Æ,˜<Âi7šO´³çê2I$Ò¼¼Ùù3èG+)ùÌ_·ŒÒh¬MHL§\NpRàr‚ËYÂUÅ$¬Zñ”ûE¸Á§Ñh‹Š í‡viOën7™š|±dº»»¹š¦Ç´iÓ¸´~@0jÔ(F³ÿ~“ÉÄE—qf „……¹+5û‹EÛ.ºAÜ!‹\ÁÉŽ® ÓÏT'©9†bHŠ&(†`ÀoKÆÝàÔÅ3¢’¢\¬“b('ët1NKy6H2ͪà|2.ÖE2¸“¡(†t2_é÷%µh]·îÏùù .=$íÝBÑ„“%)†ä.—Ú ëøUßî¯Y;|âþ@`Hš I;ÚáQÓ#yÉôwû>çœ3œ]ád¨Áô ‰ªôüü…V«Ùh¬ãöæhê7 E -æ"‰„ûèŽ.Ë<öèM«°Õw4¯{go«$çÿݰŠü×Êßm8Ò9ù© ??]ɲiûŸáý½Iò-¿¹ö™üh>uö³¿ý_ü»eèÑx— ‹HTHøH•1á–æ.`ü¿ýkͤÉ~,¢Ñ$ÖŸÚ |IKGOöÄ®~GK‹±ìû­ù7«”Ê´Q£ãÆàÆßôùçÃߥ¸‹¥\dç0IJéQOÉÓ'àP¨].Ê?Æãñ‘gkB¡H&“c†a¼ŒŒ±‘‘ÊÀ Feeù‰ – ý36FNÐî0.húÇŒ1éóæU,Á÷ÚeÜî_:>zQJÄä£Å'-»`¬zîõ\¯'ér<·=7§l‰2*þüÙêPÕ1“åzM®\¬¸S"Öæ’%«|¬AܯvY`RâWÝœ`ëvßkéCVqâ¶Ÿëtéžýñ¬]æÙB˜X2¬‹ Xa¤³\x"©µ.V. •S1$Ô…#µÎ”¥iÜÃM–>=™x³Òä,ˆ jD_‚eY[o¯/gú¸x7âZ&ðÚe‰ÔÒí¾tæäìêêÃÙÙ“ZZŒ--õõ§ZZ—Þ9'[Ÿ0`4¯ÅÔnîêò7'\tgÆÔןª¯?e±tX,ÿlAvf:hü¢,>N8«OX¹ê~Iá8ztÿ‚÷ºÍ¯_ú;ëö–и›ºº“:]ºF£åñxÆw—då içùáê#È+&SSb¦‰–Ó,0‹ZÖÍ“îo%¯\ F!ŽŸ­}ô“Ú§ÜfÌÙ†‰IéB¡Ø_f¡”œü &*)2,Šºüý%ÏWi´ž1fçÉXñö3¦ ¯‘ZžPc:(Êu걃i8žÑem–Ʋ£ŸÆG§i¢Sž©ÐEâ=¸×è2ߥpÅ£1[·‹va½Ý“ÏVÒ<Ú¥¸THZ¯Ï±ZÍ£ËÂÂ#B_¬ÝÌB+)ùœI±%NLˆ•%‹ÒÞ0K³º¡rÛƒaŠN—QZºÃ¯®ù2 ­VsÜ, 4 NŽÇðöM„mýzG¿$½Þ°/,À— N§3..ÎsWmÙårétºoåry`åË|ÿ&Š!Âi25Ñ,•Å]Í9¸©9N28Éà~åÉ$n25 ÅÂð˜FD;§‹urÿÓ åd)'Cy6èöÉP ø3ÖŸHwný)>a,Ñå°ZÍîP[¿Ô’¡qkuQƒ³J'ÆšLÍ]]fß´–!;AÛ ÚÁ™1¸«×A÷8ènW Í—‹8%Å$ø„N—Õ²0H¤FcÝæÍkŸ}ö ÷ îÐ Q” ê)Åíïè+óû§5ÿ÷LR A¹à¬g^Ìûõ½YáȺóžä5{ŒdÐÕE[nûïÓ·&Hçýö×ÿ˜þaE÷ÝwÜü~c«:±4 ˜û—ãaÀÒèåüƒÁ­&p†#_ª‚£ §BdÉlÝòihB\^»L£ÑZºmÀ“ÎÌ›Tö¯õ/¿ü«´¤˜´$M®^6wœJ©¸h]ðÝÞ’²ýûüu•èté-màK,V›ÅÒ±å‹÷gN;Z‘›– ‰Œ×'.JÁxÕ'OÅj’(VSX¸¼´tûþóçI“nÎËË÷´d**ÊZZ›šŒ3fÌ5òÜ–LK‹qË–~å:s‰§ŸþAFÆØ¼¼Ù2™L(¹¥TT”Y,AÌšµ@& ãà¤47ý4&S³Kˆ±1mOÄÚ Ÿ ¾YO†®]æËþææÚêê}S¦.äJ©y=Ù—Š#ÝxGUóž‚i<ÄP,c2AðuÌLÝç´ÊA“a‚øëa·%ã;dÕ˜_Ï~»Æt°ªéûŠ“_Ë$áqË2áQ.ÆE3NG/á=ºÌ)ö—?}³‰Xö¬ÉÔþƯÔU?@ÏGÇ‘Q.Ú&ð]†Ù{\ÿyòï„\Ÿ|­V«™[þÒ+FcmÔ"©Fž<*rl˜HÙf?OÒD—®Îh¬ f“!žcFcmí@»ÀIéÂnq¹Òl–úæs\uæÓÐúȘ‰¾ÍM###Ïž=+—÷wÍuwwïß¿Ÿ¦i¥R‰ã¸{L.Æ ¤Riåˆ 3sOÍ )‘„-Y²Š+VÆ;ÈŽ.Èà…é6chœd~ùdÄb©»Á3§²æe Â.†r²TŸ%Ó?ºì’2¿(u±N‚¶S A±í ·Ÿ¡ðrL?jü¢'_g† ½[2íp2ÅîËExïaŠ<ùù·û[l€š /:d˜^‡«§{¸ÍõCXX‡Š+eVT´†bºˆÀë/€g=åÊÊòí;7¹È JÆù‚¯qüˆ¸HîÑ/”ŠE‘q‘L$2$ÅP –ŠG&er.ÖÙƒeöàŒ?¥71>,sñG„eXÀø(´ìŠÁ“*$,ÞK²w SJC÷ævÙŠG|<Ól6ïøêË F\ ¯]Æ;1©<2[Ÿ®î¥ósãõn'ÉE']Õ5µ+W- DM¾ÔÒÝÛÒÒ˜;6©`êEWƒs±džqe€ñÊTLšH™…BUX¸¬²òÀ¾}»ª«Ü£Õ¦Ôןڲe£Ýn»÷ÞUPRòiUUÅìÙ ãã“¶lÙXQ±W¯ÏY½Ú¿•%òóµµµ'Μ©¾é¦ésç.⤘Íí……ËSR2>þxݺu¯Mœ8}ΜÂo¾ù¢¬l§^Ÿóä“ÉBov¹é ÀAh ¬ƒ¦TÆ67Õ}·ë£°D1Ä ¾›~¾Ž­Uÿ›:M.‰¸ðO„µn¶Š’dƨÓ\ŒYy2˜½GúßßOp<ýŸÁN.zÿM½>ûèA±NO,ûïR<£Ë"¥Ñ“SNNYHº5¦ƒV¼ÝX_Êq8.!ºìÖ‹·añ6¾@È X–aXÆ—÷[n)ΩóSç€@¦I„*€ššJ‹$,**6-5«´t‡ÑX›Ÿ¿@«MIKͪ¬,OKÏŠý룑ûwÀ®¬ßuùد¡ŠEb¾,\¬Ž’ÆÙ(«X å‹‚š` = ­Vs éÀê1~µ(¼^ÍÊÂtºŒ™º ½ÞàùZÄdjRvœ/¬ŒYœâ“qEQMÓ|>¿»»Ûm™DFFæçç›L¦ÎÎΖ––eårydddxx¸X,.ºl„:ÎA0v`(–Aèõ9))ß¿½bcYŒA­Ì ãl’q´ƒfý¾î•ÅOÐÄNŽr2”‹¥œ åd/+!àé aÉÐ,E0Ž‹Žï l?ÒáDô½K *»¤!ã½~É8(†àü0$ƒÛζ]IQ…ORšaiœî%h»ƒîÅé^‡«×q‚fŽ)Ç™6ïK1ÀN– ˜ L™‹oM¡Pwu™M¦¦Y-µõÍ/îÿŽsñ,e Á¯ àßk—q{ÎõÙíy ø£*U__[ f•5¦]©Šíwò°eà-'æò‰§Î Yšf\4ãâœ\°¾ š¡Îó Eý}çv}t^dX”¿½}³IôÍ& æ.='³‘]iÑL=ç<71ŠÊÊò3.þÌÒífŠ’GûØ8÷5¯`q—Õìö„ˆ²í,ˆeŽoÞ¼Ž±© —)Žòð=:]†!'¯­ÇH¸úæ[Fó‰À¤à¾ÆÄ&¹ ÓqxÉæu:]FT”¦ àžòò=i©Y ¥´‰)îô6Ì×DÍ8–û*yE"‘âmDoxW›ý¼ê2­6ª›j§%‰2“RÜøø³ZÍÚµ‰/©Jòp.C§Ë˜¦Ë,¨¼|ÏÝææ’¤±ƒ¯ëü ‚¤¤$³Ù,‘HFº´¬L&5j·§»»Ûl6wvvÖÖÖb&—ËAkøU»Œ íK1´èâN®XœÁ0¥¸xCí)cD¾ˆÅ ÆAÒvš $#׳Áu517+q˜‹% é]æ¶(ÆL-^'ë$hÉ$ÛŽ“øQÈÏ¿=˜DÿKÒÞ-‚¶sÞ¼ÛaÝOðÚ$?+üEÀK 3,Ó6œ¶9\½Ž»c¯ ’‰/¼¿¿FÒKU$ñõëß XûüÇîÀDEEkúCŽ ýü>"ËyèÞ°EÏþuá†gnM–:Íu‡ŽöêgßÑè{Æ?_ª c/tt+´ !ÕÕÑ‹…kQæ+¦œþó©¥Ï¿ûË-êÎü÷ù/øwmâkÑ@ÿ7×.ëƒ'jiëšH‹—z&«\n`ðxeOšzG*J$2à‰@* Ô‚>{ÉÓXº$Ž_Qu:/ï–¤ôÃ`ÈËÌÌ9}ºJ¡PoÞ¼ÖcFñè^¶ôǯ ç¯Xµê‚ph4ÚÊÊÁHÑéÒï»oÕúõo$5Õ,Å­i6eQщ,Ÿè-àc[hÊ¥ËX²dÕ‹/®¾GnŠŠÖô›JÄé‡6,»ÙV}°uSKø¥Bž—0Ï™±C¸cûãrn7ÜBòpy á´Ï̸wˆ“[“Ûk:NÍ#ÎÃÚÿ¼6ìB¥¸r¦s“x&6Iîd$B¹&"ÅsÏfKÎ D%ÉÙ¥›ßñ]ŠN—aµZZMÍEEkôúœ‚‚Åáp\î»ÑXË™"ùù 9×Jl„ÎÝB²jLÀRˆe¿€÷*¸UeÏüWôÍ&:-Û—€X,U(Ô¦¶fwG¬Ýî{d0LÉË›½÷èöfUE"¾ÄFY/œnôJÇòv–|æï u_¤ÉÔ$™¯ÓeülpëÅMiéys=.L5¬Ê÷£PÄèÑ£KKKËå:sæÌèÑ^¬ÙÈÈÈÈÈÈ~VM`åË|€»§æNº¿É¤ÑhW­z¾¼|Oé·ÛZ5±Û)ÄE€>ýܹŸNK&0.ɰ—Þt\R&¸¹…‹¡p†v4=¥®¤¨Œ‚U‹ƒ,¾ì† mŸ.½@Æi;ÅàÖãvÛaçä ³g- ¤ø²†¥t¯Ãaë9LR'…ƒ-µI18sé®ùý6ÛdjÞ¼y*Y5uÎtžs1TÞÒ©.ÆI³.ëì«ÊÀ:…¬S- ð¯ÒC?ü-k9<²›^(~ûõ'ŸŸ‘xo#R¥O[úòÚYàô=〛 nmm¬mcy¢ð¨„T‚ùJ‚©çýçËg–/Ï‹|‚”e,z¹øü•`†Ë«0g¤%<¡¶¾‘Û@–ÌO€Àk—ç-16Yº,Ù£”À˜§{àR’L}“ÅÜCæ*Q(Ô-m›\&(ÆójÌàSQ}î‰'~€”ˆÅÒÌÌœ5kžÇríÚ11rA¤‹¥,¦Î­ÛŠ–/ýMQ žR|ð©µkñ2sóLUεÐÎM|½@pP ]U¸<$Rú±'ýtTV”"„úí}!iÓ÷ÚeJ©öÖä_Uw|]c)ÛÖP—w¿6<Ûó|'C]?öû«ãU?45ÕæÏºÇÃÈæuõèØÜѱýÝ>ž˜"škŸæ¶ /.ÞXZº£ `±ï²èÔ±ÝÅFnÛá®`ÆmèÓÇ—ÀHY±ü °v[ôú‚À­VsQÑšüüÓ©Y?zœN—Á¥••å55Uyy³§ ^Ýx„¤°òò.ÿnÒësÊË÷p• ¸¥"ÆñxXyùŸŸ|âU«Õ\¹í@—ÎÆñÉv— WÊô×ÔTyFö‹Ï1Ïç¡©¬,/-ÝžMÚ¿—¿Â£:³/Èd²iÓ¦íß¿ŸÏç×ÔÔÈd2÷2^ñ´jüů·ñ@3Þ§qyy³õzCIɧ§¿8ÊŸ`Uh¯ Ö|\)¸™ =¦àÊ5¥q’TçN†×&¹-‘ç,Áƒ3ž–̥¶ö^ó÷ö(aÂÝKƒZ“ƒº»¡·÷GgRÔè!âÓHw^Z×ï*%%Ÿ9ðÞÛæÎç‰0ëu’ÚÉP\ìÅN†r2Åò(†uú³Øn?òéïžõ¨/ø÷êã0å¿§\ÜQP|¾ o›Ÿð`iÓƒ}DÚyülÞ/oÒŒàËÔÚÔäž"‚§¾ùùígý Í÷–eé‹NŸ9—9ú²J9§Ïœs Àï¸Ö¼vpÞ ªOV?V˜ À°À2ÀÂ%“ø-Žú–v•(j‹µr3¹eU)Üú˜ü–NG}sOuC‡^Ÿ@Û`œ>]E)lÚ1Ñ Ò4¥0†b I|#qÓÙòòÝÁÿ\Y­fw-&F»Åj–òÅ3“A(­–M …:HŸÏ`DŠ@(…X ¨ü® 6¾¨ò$bïÒ†+¿ðÑÞæ÷´áã¦ÄßÏjwÔ—_øÈæ´€L޾YŽH$Vª4*eL—¥-lÈ@&ß³P@«U(ÔV«Ù½‡ •• ÕÀUS–¢ˆTi4Z“©Ù½Çj5——ïVŠûÏ—Ü»¬Ýƒ!O"‘Y­æÍ›×åç/Ðës<ÝkV«¹ÕÔܯD²ïJú"…Û°޼¼Ùo¾ùçÞ9VY.ŠL˜¿è2!ÿÃwþØjj.¼s™Á0¥o=™DÙxCžX,--Û¡Ñ$úr¹< ¸˜ž'&SsMM•ÑXË©Ô{Óì¼ãç²bŽ;FÄÑ£GÏŸ?¥Ñhúe ¾wgz{%ÀúR_¡P¹÷=¿,3XƒÄE;a‚ZèÝQM Sæ- ª¬¼WpúR]W‡ñнžž·ÀßÌþÁ .Ð<‹èŽ‚¥C¿û£{1ýOà¿%sß}«vîülÇÛ[¦ÿ,?<&j÷aXšfi†¥iÖÅýO·í xQTÑ7ð–a<£ËNœª›•æÞö<„|2?¯] …ú›’OUaXBôeeyZ:lõ-=õ-½õÍ=nš|x IDATb™B§Ë˜4-/à܉DZq°û.ÃóV>ñÄ«>.ã‰"RÅù18cC¡P{Χ 5w4H†–"‘Hƒ—¢ˆTåç/ؼy݃+žÔh´¤m7Ž;X'ÏIõe·ë’Ó=-%S[siéŽU«ž Xb0Á-&S³ÑX«P¨ ÷Ëþ÷Î3ãp8L&Swwwgg§L& KÆÍ°gŠ.­Ù º¡šâ÷Ø3° w`¸+¸¤Ö{¼¹R™!P(Ô+V<*Ÿy?“îÔës ~ª7hÜj°³f ŸÆßÕ?uÐ/Äbiaá²òò=»7çÌ™ ÍÖÖí«Í:f2?#f†@xÃ3ºŒãø‰3ãÆŽ>~âL¿ýÈ’ù Tí2…Bxî¤$hé°÷³+RÇeÜrGFðÏw&ÑÒÕ¹èæ‘•âÆ³Ø«D"µõ‚‹¥H·9­ãp2¤³×%‘„¹O¬2²gœŒÉÔ\TôÆ]6s.¾élm å\þ~ËEEOœ’•^úé0†wƒœé¬íWp‹'¹)ö®Yzù…Àæ´hÃÇMMx@È“XTÖ¦óµ™Y¹m¦F‹¥mÿ¾¯æ<0lƒžy2¾lëõ†ÊÊrn.EøÇ›ß梭B-%§¼|H$R‚À7o^·jeàór·± …šFcmñÖ!1f¼JÑh´‡JJþÌ55Uë‹Ö<¸âÉÌôŒ/Þ}Æfå tõpke.ó×!ã&ÈŠICàoa¼Âeù‡°ÁÁ¶ãþ&ȉÅÒP¹Ü º „*[/´7Ë“Á4\²Ä¿èÊ¡Ñh´¾eñ+Òròòfk4‰›7¯µ´™áâ"#Dk—!Cã5ãÿXÕ©;‘%ó ¨ÚeܪâtgÉÁ–²+€›eŽ´7ž¿V«eݺW-¦Nq|£ÃÕãb©ÎÞÖžCä·. áïåæÍëÆ]¨ÏÅ»6ñ…çãR4©‰oUxÌÞþpÛù—".#´¿Í6Ït.ä>³L‡'¾×.HRĸ¸°—·~¡ÈN ïËQ©cUªØñfööZ¿Úún›©ñô©CYc†Ê{ €]:äåÍÖé2¸Z%ß|^0÷žÐJÑ%§K$R½>'/oöºu1™šCeuètéùù ¥éÚu©¬,×hó&Ï ¾Ù¡¥pEÒ‚lóÁOn)Þ¸vÝ_ —ååÍ–HdýT¥e;JKw. @ÜHTLº.¸a;Ž .}Õª6o%9ka@¦¥¥:u*--íªH¿aÙ¶mwÍÓÒÒ***¼V:!X–µõöÀáC?¢q½ƒuuõ_¢¡¡!66V«ÕúòЩ¬,‡>×ĈØ!—rèС9sæøþ<­¬,/.Þ Ë“¥ˆfÚvœ—6%´~Î'£íliŽJàÖà+.ÞxæÈ*Ò=uî°²üíÑ1pج]»6wò4U ëúÙlÝEpå˜+í­ªÜ+‰ï»ÿi÷ N§k÷·_¯^la·ÍŸ¼½¨p™X,-?ø}IÉg°dÉ*ß“þ}¤xëÆy‹ÅbieUyqñÆPI!Iœ‹B1µ5oÞüö’%+ö]ø(¥¸xc0’~”ü¾´t»B¡6¦h4Ú8'p«Õ\SSUSS¥P¨ î L–_ϱŸ7lÇÁ@’ø÷ßo‰ý×Ȁܷo_}}ýUTà$--múô¾Š£×ìõ÷TqâÅ’Îü“ü! `ÞoµZÊËw›L͉Ô`˜ð*CÀÄ\²d•;'›ìúb2]#– 6œ%£Žò{‘–8ÄÁò]YY“UêK¡áå ‰%ãIñÖV«å¾%+G"[ÆSŠÉÔì¹ðå Iâ§kªjjª¸è5‰DªÑ$j4Z½ÞK°™_ü„ŸcCsÃvqm‚$9¼[2?ÉJ#×μ?T\k=r›Z2^ KñÓã'ùó…¶ãˆk4 ÄH0ÌRPžE¨éW»l„¸º}D\Gܰϱ¶ãˆk4 DÈ ªv14l×7쀼a;ޏ6A@ŒCE—!ÁpèСÇß2gþµ¿ûÛ¯'Nœ8iÒ¤j@ q-ƒ,ÄÂ3#Ô82c@ nd%ƒ@ @ ®?†ÉøG @ ˆkÁ¡C‡®¶@ áI’W[@ ðÃá¸Ú: @ „ <@ qý,@ qýáÅ’ihhhhh¸òª ˆëôˆ¸¡@·q‚†=q½àÝ'«P(®°*âz="n(ÐíFÜ€ a@\x_“ûöZ­Ö+®¸@ˆ t»7 hØ#×Þ-εšššzõA × èqCn7â {âG0ôaλŠÞI ¯ GÄ Å`·Ûh¬3knV§ËÐéÒƒSÍ;'NNI-—‡_•?÷‘cÇ~ÌÊ/KGTŠ\™.ÿðCINN^DD€±[GîOKËŠˆP†V«Áì)×Ým±ZÍvDï,Iâ&S³B¡ŽŒTœ”+)ð—¡,™ÔÔTƒD_|qµç¬õU©8¶3gŽ7µ6P4)ËÒtc3Ò³1 ¸ÁÁ (²©éljjæçÔÕHIÑ Ãûöí«¯¯©vˆ+AZZÚôéÓ;z#ÜÖ¡¯€'žˆáÊü$ ìv÷Ãh¬5kuºŒàL ‘°dºº:‹·%$éV<ð›~/‚üsio¿ðÕöN×W.]üè‰ð®®Î-[‹´#Ü寯º½¥[Ï5ýùòß ¥³ÓTòõ¦ø8Íò‡^9%Ýø>’Ä++Ë++˜LÍ‘P!íéì‘H¤:]†^Ÿ“““ç>³±±.99ð1_UU^SSe4Ö®NˆêîèvQNFk0L1òܶS[[³D" Æö¸b‚ˆ€ñ2÷ô¥úþâ!üÔG?fù¯['Nª8Zš19#}ŽŽbq‡ÓV][Vú¿mógÝ—˜J‡oOuÃoŒIŸ0´%s¦±rwù–ÿÏÞ›Ç7qÜÿŸÙ]I+ɲ$ˇl|_ˆÓ˜#`HS !÷ $Oû$éõ$ù5éÓ¦mš§iš¶ß&i›ƒ´MBh“BC‚Ž˜Ž ‡Å-ÙÆX¾åC²dYÒJ{ÌïalÙ–Œ!%Ù÷Ë/wgç3;3ZÏg?ÇìåCK’Ïö|äS;eãyœÔýÉŽdeåi4Ú~eü|„.A(/ßqÓMËGf‹ºª‹·FÔca<žîC‡¾è{¤¨¨8>þÂ}íØöÞ„$ûÄtOŠîøË»Õ9¹“ÑW^ñù–YÃÜÜ6sªû»âòò§$%õÿ+{ækɵîH˜LùÝü9Ót­»­ëlKKåÑO'_»ö)QŸ±XÊE¯C–R—ª(X¥·n ™Í6[U”MíGr²ñ¯}%11%55½±ñüÖ­ÿúÉO~#žji±WZvÉVùIƒ¸æÃÿòG~BQmÍåCH’úújëɃ²Ûˆ !øñÌG¥[óàSý´Œ…ß~ì±§`ÇŽX64b—ª!ªo™Zåo™/ÄÔc}AÑô…?Ê~¿ï“O6]0ïœ>}´µ±êé¥ç€ ã…oM>WúѺG¾ós‚ £©¹¡¡Öz¼âÇ˾‚6hðÊ‚ÚÒÞ|ä;Ï‘äe—Ñ€è‰~Ú‹jŒÒ Ÿ¿d~ œ±œ>w¼V­Š7ÓuŽªf‡£I®—¥OKKž˜¨LQ„˜ €yˆ=¬lïÞí~6ïÎùñ‰ñMí§¿8êeE+¨£¥ùì±ê^¿'}JzÖôÌÉ+'w·v'déNoÊYæ+$!1*D¶Éˆ/!bJÙAj¹Ql–ÈC;g¯¸‘Å ‡C~ „ ¼ûí¸yþW"åØÉ}ûë¶Êo ÊÉ8šT*gÄѤZIÆÑ„JAªä„‚R>$ƒ¼Ÿü¾—á}À Âßöƒæz—O›áu&„a–×,àèÇbè…Ýu:¬£Ø"×iÏ|-¹Ã“)ÿóýÓƒQgw5øW~ëî°YÆdʯ¨Ø6nA‚1?/‡8¹Ñ˜«&ÓÝí˜ô( ümyh@gÕòi<× ‚[n¯;wìØþn¸±ïmΙ³èÀòS§Ž¥¤¤=zàÙgSwõe°ªÂ·ŒÎÆÉg²±ö˜HggûéÓÇ.\¯›? °,û‡?üâ;ßyRŒìïéqoÛúZ¥Ö wÏ`*6®W'?pÿ÷ûÅÀ¼õÖ‹g¶ÛÆßš«ÐS¤€½mÞXƆÚý?›wÇ2v˜ç”Ä®êpöÁhLGœœñr\H°nkŸ<¡¨°°¨ïÙµkŸZ·î×`Ìë²ûG!ãñtïÛ·kñâ•0qbቇ^|ñ™¢¢âŒŒ±bŸÏ{óÂUëÀ‰ò"*'î[wÞ•)#úË#J¿ß[²ä®®.ÇÑšÏ7ØÏÓ~÷îü–\®èw›¡|ôÏ~199õî»–Éä1 êË`U]~Ëd((Íò¨{LÄåꪬ¬X¸ð’NòþûoMœ8uêÔY—¤?ô?Gó飠ý¬’P¤ûÛDi ƒ+V®v»GlDûCªîPêƒÞ?Ä%ý0b†˜ö µÇNì[ñ_«†©Ø\>vŒùÖ[W÷-àñ¸6n\×éjË[6V®§8å–Ç|¬šLié†q³ÆÅ%jN}q’uãÇ{6”²~ý+ÅÅË&`±”§N2feð˜ÃX°€!ægò‚²²òöîÝ>Z‚$$F‹ÑÉ]œf”çq(ÄP YdkLŸŒ{®PÐ}w|oÏþ-¶“‡ðTgywƒÇ!òSD·ŒPP #€ä1Ï !–…x&Ä•9$&…€ÌÊy‹î¸5bµà+r¶0\põÁÔ˜o=õ#”F|ÃÝ~0FËÙæ«Ö+b{ /}—÷ ×µÿµŸýêí=5Ý(’ò‹îüåëOÍÖEýÇÛo}ý§‹?°þâ5À’­'6®Áp†É”o?v®«Áχ°ÕZi2å÷Uf,–r¨Þëw[ðÆ©…QŠééñlݺÉëíééñ¼ÿþ_ †ä’’U&SîÁƒå¦p1ΠÓ:;Ûß)'hq”Z}0ý—;-ÿüçßÄb))i÷ßÿÒ£Ä`H1RššêŽ×ì•rŽ`ãâãE)o³°p¦ÓÙ9aBA¬‚¶y`Uá[>p|§œ qŒ=ÖÝíܱã#·Ûåru¾ÿþ_ŒÆ17Ý´|Ïží X±â®p1F«Ñh1NDÈ”Jezz´`|¼.>^×ÙÙvä H®¢¹¹»Í CO{‹¥<š™R‡wI5dõSc@«M(.^a±”ŸßsÎ0^§§Æ2ޏìwUU– ï7Œíjîh«v<ñÄ ꋊ1Œßjµ°A6mjŠ,Ž01*à Z°`¹ÇãºrA£È¨å.k$âF±Y “)ØP8¾A†¿h?ð˜SÀ(Ä™Ý4ï¶„Sɕʄ‰MCVÁÄ¢p¨?@s “g*½‰M½_²³r–Nš3h¥xx¼œ 1µuMQ5”ç’n9ˆ±è&/`HœqÛðwûÁ8†Ö&s=væhöÀ`ˆ>=#tíxúÑ7™Çß._3+ºÎÙ{Fu¿ñœ@»ýúÛÇ(°¤ÄŒ„k1܃`2åÛʪV­Z¥¥ï•–¾¢2SZºÁj­€â∠˜n‹Í&CQdRR IRâ­6Áéìܵ듧ŸþÕ;ïüù§?ý­R© F9AóDÇb[âr•J=qâíK«Õ!=j)`$'”!„ÐE)oRSÓGÓ¯ÍCT…BäˆæQl$I&%¥`ŒI’JJJÑjugÏž¬¬üüé§_(!0 „<&›O¸‘ÐÀËûÝæ ˆ’h¦}0°ÙªV}÷¯§§ý|ûOü ï)«ÕÂ0~(,œ½fÍ µÛë¶ÔÆS*“›„ÍV•73Ç\õ¡š’’»újUUp8šiZyë­«‹‹WX­•–OÊ)J.0Äj'BP­6áÊIHŒ"£–»¬p‹«Á@!Lr˜e1Ë]üaû|`1 ²Fåèdý›:y®.ÞðIù†¬¼¤¼¼IC”lé8~ïÙU‹6eõgxØ—÷ù¹Yx÷³pðÀþ¼œŒšsƒ¸Éùÿøæÿan›×¹ë@#žûòÇ?üé{Ïo>Òìå寢ž{õéũު¿=óäö4BJÑ÷é8H0pàÄóK¿‡þ\þ‹ìÏÿ}ñ'ÛÖdPþã?YøtüÛ;~2IÁ·í~é‡Ïp¤#D( SVÿåŸ?šò±;Ûè"ÙdFý%ýÀGDßž µ¨å&þï}³ÓTl^p—°€½{"Ïþ“œ7/óå‡GzCÖ…3_6{ýŸÌ›Ÿ0á!Ø´ãåŸýfÓF?¡[ò‹¿½|w¡–¯üäWT6èŒùß~é·ßŸgˆÊoåëÆ5îÁ0™òW­Z¶Ã„•»½FTcijfsAYÙ‡b­èQ©â–,¹Õn?wæŒuÉ’[1Æ/¿üÜÝw?zݺ_¯]ûdVVÞš5Ox<®ŠŠmÖÖxS -±Ûkf̘ÑÛÓp›҈R‚¾Ö%ó'Õ5û^}õgk×>™’’¾`Áò¢¢EK¹eo9Ãbºåˆ‚"¢Õ&\‰ ‰QdÔr—äÑhÏed¤å4ž­7äëEí…Ç!^ü!³<°è˸ÙÓ–Œ–¸±Yæoy¢Õ1LàMŠ!}í?Òé ÃT7äË{s¾ITcà¦æÀÏ<ù¹Y¶{Äzp°µâLÁÇ¥¿Kð®cÿýú£Ï×Ïm~ê¡§:u÷ß˽øØ«®5›Žü×Dæà¯W»{ À[‚á‚¡ úNüñÿʲ~YþÁÂ$äoµÙåÔõhp–~¯¨Íù¦eÂÿM°É\Q ž»,,‚3{ªòíß=ûŠÿ®âi“&d&È/¬X™‡B¿IŽÝ7Ü?ï;ölº3…à'üåÉ?¬~bïü?nycI&å®;Ý®ÆXðúãš'÷ÝôúŽ·æ'tíúõC߯T¶neÊ7P—¹Ã=Fcz8Ä¿°°ÈívVTl•šV†ó˜ék×>eý0’n¹å^°Z›Lyâ›ø%Knyíµß8-F㱘ø.^NÐ!Bˆi]ååCKZ 5 ±èr)áÛQ«5¢Eåʬ*„@4C…AiË–ÝçU*õÛoÿ)|êÞ{ÉË›pQ .h2Ôˆl2pA"HÄÞ2t¢$šio·×h“´æ;›;‹¦,·XÊÕüÉï. a(2ôòÆŠŠí÷Üó(ô1hÄ”è‚aò8yw‹Óh¼”»Ùjµ3?»›C<ÐSJ·í KQ(”¢ša³U…Ó¸XÐŒX„Ä(2j¹Ë¬Á¡Ô÷D¨‹½m0cú‚½A§É0ÍsËaVŒ–ØN!9˜Í…Xq‹èˆC»ü~_ à3.¨aCrøó`äæLìû«ÓÙ¡TªU*u¿b8š—7½pÙ%ËcJÓwn5)c"aÚ²…@å®üÞÊ7ý¢ž™Çø9¿ä•¦Ä7÷{ß›ñÏß_ÀÆ]ŒÄ¾x@ücŒ”#ƒíL}Áì}ê„ñ1†ÿ^/\¼ñ œ­®?î2çì³ÕõQÞxTÃúŸÇ(ö€HÄÜe—jˆ/~aÓëï¾ùÞß~üz“Õ>ôÓß=»"KƒÌCÜo’÷°'<~kÏM/=¹4“}N¡ξ_ê.þÍwåi7=öíô[7ëY¾LwÕ7ÿã w”Ìž½Èj­t»PTtÓÀíeF€F£½á†90uê¬p07A?üá³—D€AAÐAÄ€]Î0—'=Z°€„’BAáòe}ø6E¦OŸ=²ú2xUdM<kµZ­^ì¾=AÆ%÷°‘}3‚L¶ÑÍ´§ä” ðl0Ô÷å¦Ý^»(÷<êõaÀ@éŒmy¶2+|¶¡¡V\´ìÝ»]L6t3jã qæ\­.£1§¡¡výúWÄSÌ®A>#¨„’ñMϾßùüóß… ¦ÑÕ¢Ôív2L _.µ(Es•ÇãŠU„Äè2j¹ËNæqvñˆ4„ÐÊ’‡ÞxëÓütYuA™Á,'p®c¨¹=Ï¢MÝoÝ5•®Œ6[ð Bï!1ƒºõðð/‡NÓÔd¯©9½rå=#hžÈÁƒŸççO7nb¿ãxÈí5ÎØê9ï8x`ÿÜçöž±ÕE. 5)q£öÏÉ÷_øí†Ïk»9‚à{{È¥Ažímñëæ(c YZ [Q±½Y8*ž³)Ìæ‚a5ÎÀx<æ” Jw£S§3/›­Êåû±íà>ÙíRÒtvQÑ"ñ·Û¹ïð§ê±2¦ƒ€hŒ‚+©×ëW¬(ùûßÿ ­mͱ ’]F-wYµoògqnHâââiÆxêÝ^¹©iJO§àæÊåË\c'˜ä6,Ã*'˜q¼#÷¢H–U` ì_ƃ̹sg'NœÚïxmíÙ¬¬ìp–ÌaÎ éô™shBnøó …Œa¸P[ðì›?úSëCïíYoŽ'ƒ§·âጠMªÚçð°X  ØÝÞËg`|13"ÆXÀ¤œàC¬ ïs3B,€vò}¿~û¾_³®“ÿúñšŸünöÎßÍŠ9jõ?žˆÛkœ>snÒ„Ü=ÿõô.ÅèÃeˆAzF–4óîµ7¼ñôñffmú`óðòIb ?AÀ‘'¼.Cí9çðãlÍ%A„6=!)óå²ßL»Ì ‹…ëOñ¼R®ÅpÂÙ³UËž‡~ Þ}÷e1yíÚ§Äm1à JK7Øí5O<ñÂе ÏóÇŽí›9³xਫ਼žîCw3çcšÊƒÞ ßÚõé¦x]â¬Ù7 [s¬—××W )±îXâõzØéó÷{} w äv–mJ0g̈°cOÛëucŠIJ_B!æøñƒâJ·½½=ÇŽíg?µêxŸ;¸wï.aè`‰pk±|>o^¯ïžžîJËî^_ÇÇn©DÎìèn/Ûù/61b«"^Î0~ˆÝRIx|àr{†¸Üívuu9ÂÉÍFÌÓ^§3œm8Êc..1Îf« /â go|_n’37Éåê•o©_8õR7ºÝNb‹ƒ`S¤¤ o¥Ôj¸d‚25ÕèhTÀdÊßø~}n’kŒ®'@™\X8[<;wnV¦“qÉ`7;¼3ü ‚+™••±m[™ÉdúÁ~›kŒU„Äè2j¹Ëx§o›ÕßÙŒ†fº)1®+5ëÇ€.äôÕÛb‚aǨÉX,{“’R¢Ôd¢ ?õ忸¡J^p´¹`W/«LÍNS˜í:ø÷-¡° wû<üÔûû¾;ñæ$Þþïõ•>!ãâ«nQ‘QŒ™–â¨8Üö`æ¡qÛ{û=ü½ÆÓ°g÷„9“S•j½^-“×ß:}8ÛòüÔ—5=#þG¯`GDßža›·þe‡P´dþ¤ Ûvèý·ðcŸI— Gž‡øòIÿÅXˆ8áió=ߊ{è·¯ízí‰Ec(÷ùÓ†Éãtãï[¡Zû›7¿òøü14×]â´/oÎä„ožIæZ ÷`Øí5®–wß}.æSccV­Z ¢2cµV6µÖ€ÛíŠ5è_Äáh.ýè/$‰"j2^¯çTå®bû©1P}á »úØÉñ³¢Ñdb½Üélÿçºyñ3fGŸ)Ëçóž²V,È«ÉÈ(Æ@§ãÌ™Öé5™Pˆùë_{CaÑ’oÝíÛ´>Øí5¥ÿú«A—0˜&sèàÖY¦Æ9YêªlÄ®s5vT“&ÓÜ\¿eÓ[´LQ“ñz=G­ê¼*ª0€@ãùÒÙJ×gE£É„/WäCP2¹¿tnìrŽ ýãž2¾pùªÕsp M4ÓÞdÊß¶ãóÚ4­ÍRµtéâñ¬¬¼’åÿõ~…ÑívÒ´²¯‚ÑÐPëöuɃl+½³¥Ñ˜ÞÝÒ­ËŠ÷úÝa§/QÊkeñ G«G[T´(ܰ٪¨ ˜Ã¡P§p…‚rß}¼ôÒKç…^Ðëã—<2µ  3&A£È¨å.ƒîX Ç‚ŸwRz!$‘ˆ àx9få‚w^ûö£ú•Ɉ8b©2ë¸Uã«u|ó$+½‚üe˜Ë ãÍq¬ßïs:;úôxÜ èwÆïruñüež~¿O"¹ÖË{c|é%«|£OÝøýŸÞ²DŸ¨ÕåNŸfT`cõŒ§_^ûì³·-ÿ³A›0~Ú¬Ä6~Õ `ȼýgWþïmKÞIJLŸ9gFb£XÀ}òýgžyªÅ+ªôYþßÿNS×á:}8FsËó¯‘MfÐÂ#KfÕ§gB‡Ïüñ§o?ÓÚ‹ÐfÏ}è÷/Þ•Š°€™‡—Or«àŽ8áÅ”üå7Âs¿Z5ýñ ¡»ä'¯ÿ&?^1ùûý=ù/Þ9ó¿{™Î4ó–ÿï·Eþæ…É\“ỽ¦pEJó©îöZ_ß+3M­µ…+RìÇ<6›5š%l_A8xàÓƒûwÌÉi:Òœ/nPÓ§[ű‹Zl}6Æ%Ô6v"ðÀË¿;9¢¸ÆÆºÜÆjÙh;shÕíÆÇG—¯TàÅÎ÷=r¶-ñãÓ=¥ôööèIÙ³®öôª{ËÌŒ6Z‰ç¹òÏ>:yxoQwóQ¼wïvD!1Ÿ?Bz{½J9káÙ~ùÌíö5‚Àïû|ÛáŸÝèj:˜šQŠ×ë!䂯|ÙKÏK&œŠRÈUäÀËýGüìºùŸ··'¢â«ö¿ÙP»êîGGàÊ8ì´×jâTZÇù¶„,}ÍþšC‡>Ÿ5K ꃂ‚¢ˆJ`EÅv"‡á0mq……ÑÆ>Î>R·G“©Jž`¨¨Ø¾fÍ}¥<ÿüw‹‹—‡•%8tèóž3! Z­:1ËÏЂúqãó^zéÂçîîžMØ[¶A}Ûò%Ñ ’EF-wr_é•Á‡„…‰Õ3½”R¦£!N®ö„²™sr;`5¡%\Ýòxo¹[•;ø|ƒ,zÉ΀²©ÍÎŽÜÜþ,}ééq×Ôœ ü}†B¡¦¦ú­[ÿÕ¯pccýîÝÛäò˶Xnj²ç䌋ÐòÑzyOOû¿=e®4.}nóÒK§ŸŒ!nÊýqë…þ°€“²sÏ……½YöØÅó?û`&ýð¯Ÿþð²f ™A_QG.üM²ÉD.<¢dV}{%Ìyüsï_­yâ~“â—¬?ºD<y òô’§ß.yúÒqc ŒÅ?x£øÒžb ÃÞð׎k0Üq»]^¿+Îa.6òêõúþÞ&¤®H‰3ÈMJ»½&&MÆéì(ýø š¯¦ÄŠÍbe ñ@$  ~ ƒxô#[Þh/Ìð€/ý$ÜØ÷”ŒÎ=_:Þz³eIÉý#ÎÇÞÀ¡] pÀóÀó ˆÿr$ÏÏ úov·œîvlZÿò”ó.¾¢†Ù_±³³íã÷_7´ÿߦӌRE¶’x[=–É0IaJ&2 )Q,&ðô˜ËÕ¹åƒ×T­õ?n¬Â2okd2 (,“aB†I(Š‘1' pÇÊÏÇ‹8–à9ÄqžËbƒózÚ'zÿÜðê” .¹$£uæˆrÚ/ß½ï#mfÁ¸Åye[>4™ò†XÍÿûßìÝgP±{HºSo6G«(UTlëíêM*Ð×|Rÿïo¸g˜ööæ²²5  þ/É• —VrÄ‚æÌ™«Õj=Oøˆ§Ó·~ý–PHùúë¯G/NBbTµÜe©Cj2#Ýl!¤“µŸHrjè¦Ä¸ó2mLºx¤”“cLr›IV=SS™ÌL®= ¼âdÚØ‹·¤ëR†É‰™TX8£_Ä¿ÇÓýÉ'›zè±~…ÿþ÷u+WÞÝÏbëÖMM¤Û»<}ÄWI,c1¬MæºÖQìˆøˆ¸N{ækÉ5îHØí5ºÔ ;þ™¦kOÖþî»/?üðS¢o¸3fÖ4-G€.•®:4hÚɰlhݺâä=O­ø @è¶év h @Ѐ.~ òͶá+Œ’¸m B0 B0B¼xBS¼¼÷Ÿ[6¨ÕÚ‡gèHê6m„1d!^üÌ@ˆ€I·éœå9AðqÒÁo½õ¢¾×ýíšJÓj6XÒã9 ä4 H(rY A52#4^²lèÍ7çëyêì>¤  JzDÈi D) Ë ª†}iIܪÓ\èŸX>t¡ÓB Œxž9gyNzƒ¡{¬ÑLû‚‚"‹¥Ü~´!mjŠéÆŒuë^,)¹+l™  JK7ØÚŽ¡¹=0×-6Ö?ŒB¡,*ZdÙ·Û´45s‰ñìgǘMU½æL¦üp€Ê¡CŸ—•}¨œÎ#ï?C$)3bòZH(’ËåS¦LØ·¯2|pÅŠE/¾øjFFT¹›%$F—QË]6¶ýªh2ƒ¡ÿN÷a¸ü/2#\W!„fU’$£wƒÆÃ6ÛWaô¶<¿N‡u{ —r—]Ÿ=óµäj÷`Äܲ¶ §» öòfsAßÔ‘EE‹t:ƒÝ^s`C6U¡K¥1²Ûk£-“É¿ûÝ_”n~ý½øYVDÈ÷צ’aDa$ØD @a zü8t’y–ý Âj{õÕŸ‰_11•ÙΛm¶*O¨K½ˆC:ži ˆzͪµƒšnF HÔ—l¶*›­*1í2ç”@$5Fâ«bÔr—¥u_ňÿkL|¼îŽ;xüþû¿C-×gºÞ¯'£¸åùu:¬£½é»H¿Üe×eÏ|-¹Ã »½F§Ë0É7ÍÍ–pqÓÌåÁ` ¾¾Æf«òP56›•¦£M—¨×'®ù¯Ÿïß·ý÷;ãæå5jÈž1óf„€!"B¡7BÛ¢¬3zRE'/ú0€„ˆ›šÎ·ÕÛY•J©MÿýØcÑÇÉD–¢ŒSÎ\Œ± îŽýðöö;º×!£mÚ”»î}<Ê8™¤¤ÔG¾ÿË/Ê?y©R3³»õl²iÆÜ¥ÊyݨjLjۜ´æ±ŸWîßùû õìîæ“ cæ,X1°îq¡3»G,e0Z©)ŠpS½½=~æ äv]ò=÷}7=}ìÀ2Ñ0ì´OII_»öÉõë_ñ÷ø S4¦UFO£÷tûþãÛ?Ç€1%IÌ!eˆg1ì×ecG¶-¬(¥iW{Ò<~¦’õ±ç›=|H`1Lj1aæÕi¼€…àвk×®}rd+ÑÊœ¢‚MoP}kñ7îܳ§ü·¿ýíü㈓¸BF-wYZѣج¾dKÓ¥x‚ሞlã BN‚B,…Xº©ð>à),fFX ¬As4Ú¡+W©TÃn…94C²JÕÿ/qnnî¿·ükÚôØòWJ\%‚LÐ×ÛeáãÇ,¹¹¹O]¿Ã:Z= 2ðqýöÌ×’«=ܱÛkÂÌv{Í‹èt†ÂÂÙn·Óáhzׯ¾1ÁÊܼ)o^§–Ýxã²eZZì§*?û$wF_­G®ˆÞ¢îFÄÀË•JõìH¹ËŽý¢ìÓÓ‹Ý:{Î’èE@o}x¢0¬I"€n§;ÔÕå8tèó@á‚ÇnyP¡ £—B’äÂÅ·åO˜ºeÓ_â5ñ³f,ãp4?²sëÉ|ÔÇ‘¡«Wýv/AÌ¿,Ï\ðñÆuqE”ÒÒb?||÷äeZÇʨ¥„||„Ë•ªˆâººû÷—‘³?¶ìn™L>°ÀÐÄ´•™ÒÒ ç·µè&©i•JqX`…‡C¬À²!ž·ÑPGÝpsqñòäR…B¹ví“Ûm-Ë—)ó:ËsAxx ¡‚µ)R”Y«Ö®qü}4‚­tRŠ®xþì_þòw&ÓÔ—^z饗^š2eʲe¾’WÔÝÝÝïP]]]JJJzzzl¹Ë$.gÿþýçÎûª[!3¹¹¹óæÍìì7aX‡îäñM虯%#î~ØíµÃª.C`2E°á Çq‡}>wn„½Êz{{ªª <®Ñh§L™9lͱ^~îܽ>1Ö7b>Ÿ÷äɈRô“&MxÜív¹\ÙÙæ˜¤ô…ç9«Õ2}z„±îíí9rdïÀã:aêÔ91Iþر3fDØ)ûKOÛçëIMÍŒ¢ÕÙB¨ªÊRQ±ÝãsÊtˆLÂæùÀ{î¢Ìæ‚¢¢E£²qdCC­ÅRn³UQI@ja ïF|©S'/u ‘ Ï<ó3±äƒ>¸}ûö7ß|ãÞ{ïÑÑA“Ñ–*i2‘ß(¤á–ø2âiïñ¸ìö·Û)þj2åé#³Ã A0p8šÃot:ƒÉ”}ÑÔÓÓãñx¤P‰¯„ÈšŒHL¹Ë$$$¾iHˆoÒpK|‘¦½„Ä8ý3€õ#œ˜HBBBb Ò#â…4Üß@¤i/!ñŸÌP6œ $$$†DzD|£†[âˆ4í%$þ“F“‘ødï2 ‰ÿ@$MFBBBBBBBBBBâúCÒd$$$$$$$$$$$®?¨#GŽ|Õmˆ  ¿ê6HHHHHHHHHHHHÄå÷û¿ê6HHHHHHHHHHHHĆ'#!!!!!!!!!!qý!i2×4™ººººººkß ‰(‰l“IIIÑét׸)Q‚º»»Õ·Û}ÍÛ#!!!!!!!!!!!1ép4Ùíµ}êt Fc†Ù\ Ó&Œ¸æÁp{\6[•ÍV¥Ó%˜Í…æqSF]„ˆ­ú¤Ý^c³UéfsÁxsÁ•tÔ8Ú›­V‹ÃÑLÓÊÂÂÙWNg[[›ÇãQ©T©©©F£ñ* [õÉÒÒ÷&@ÓÊ{ï}Ì”•wõd}=gmU6[ÃÜn'èt.ÁdÊ¿’¹çp8Äç†J¥šG®¾¤? „Äÿc ¸OyOó©¢ÂÂâËcm¥­ú¤ÕZyAkŠç žCjLrŠQˆâÝÀ´³‹Æô¢¢E…E±Ö?q¹o³U¹½  "ƒ½rpÓ4g6-2¦¤_¹°UŸ´Ù¬6[M«Ìæ³¹Àáh¶Z+Žf³¹`5Á¹ÝN³¹`•4‡ÃÑÖÖÖÖÖFQTRRRrr²×ëmmme&55uÔUqEnµZ¼ZGÁ¼é§*ª |FIÉ]£¢Ö†µ>»½L¦|£1ÝdÊ¿zê_D‚ÁŒ–f >-ûÐjµ˜ÍâÑ´&žEE‹FðÒÁáp;v,//O©T655…B¡âââQi³„„„„„„„Ä@†Òd`87³_>ÿÝ‚{ÿ½µI.0ð02Z©O÷4Ÿ„æ}k×<}ûlÕ'ËÊ>ßXÈ`ˆŒM©Õ²xšRÓ”JF((Bt±_º\µn£1}ÕªÕ#Ó4ì µ¢ÆíïM餒à•c¯Ü à Ðé fsAaaщ‹oÑ£Ó g›Lyb=ö†Z»½Æn¯µÛk@ÉC€¤iå•ha†a:áÞ{í×`·ÇeµVZ­†ñXIã8®««KT`hš6 iii¦oŸÏ×ØØØÙÙÉq\jjjvv¶V«ÁõmyEÅ6«Õ"þšuCæ²’;w}öïºÃu`2å/±qÆV}Òb)Q{€°J#š³F6ú# bïv‹¥|dÚE?Dã•Ù\P\¼b0eÏÞP[Q±Ýívœ-C³k×®œœœÌÌL¹\Î0Ìþýû'L˜pUmqßd"h2Ã:•…5ÇéOÙ–£ IC”liiH¹á>R®äϽ&co¨]¿þ0a, À¡‡©„øYrý½ŠÒ()µœTR„ŒÄƒà÷ôÚvÖ >XµjMLKÿ²›­ÖJFèƒHÅ]Ò^¼r‘tŠLžL’‰+„òKJî´Z-Vk¥hâˆ~Q»qÓ[¢ Yaál³¹@I+ëí¢öRãp4#­€ ,6„°!~Bw2wíÚ'ûj……³£\‹‚€À@‰’¸N¯Óì§}W×TÔ*Ü &)¦;:|øp{{»Z­NKKKIIQ*•AA~¿ŸeY­V+‚ ‚Çãimmíêê""555##c*µÊRVö!)Wι¥½©ºñÜ ©´j_W/ò'ÍñzœmMÕEE‹J–ÞSÍŽöæ²²Ív{ M+‹ŠÎî»â›€ú*9&S¾hÖ“jLEçÀWÿøsåD¢×ác[ð•è3b§EùÕ°ú¼¢b[Lߣ­[·Î›7/))I.—÷öö;v,>>~ܸq}Ëx<Žã@«ÕJ¾gWBä•„˜»,šˆ„ÀßqneÉ3g.¢XYÙG'[[UI¹15Îb)‹fxÅ_ DøtæíÖ©Ò<&¤¸ Ó4rM)e„0¯2ÄÝp·æìÛÆë{ì§Ñ¿Q¶XÊ@B ·Æa¿ŒÀ”ÊHÇå¨âRUt‚cÌcŽ‚þ¿ãP“1%½dé……E¥¥,–r‹¥ü—Ͻ ÑGÎhLw»7®s8š‰D^–„dÙ¤¾ˆ$䔀)^ B<’Ýn§N›P¼`¹Ù\PV¶ÙjµX­–˜‰àv5¸H†<>g›£Ù”•wÉ}Îß:åù 9ÚÝ1ÝQ{{;h4š°#BGGÇùóç}>èõú´´´ôô c¡Õj5Ñh¬«««¯¯¯¯¯_¹re4‚ÂX«,¥¥²'̹qÙÃ'+·º;›Ö|ÿ÷®Ž&„@¡Pa€þúÜ<×ÒP]¹g#ÃøWݺ:úÊm¶*‡£©¸x¹¨0¸=.Ë¡ÏÆ4­2™ò Š ŠÄ*«µRì«~•¬ZµzT¼Å›õqžÔ¼Lu¶"àõ<¸sdöѼ¹ví“zÁZeq»FcÆZJѬ…4­,-}oíÚ'£ü¥¤¤477k4Žãü~WWW~~¾xÊétÖÕÕµ··“$)*®.—‹¦éÔÔÔœœ¥òª„„IHHHHHH|½‰ ÉäääDŸ‚YA¢„´ü²²\®®!ŠíÝûiÆ ·“$âbiÃÀÀŠŸ‘‹î=3.ÒŒ Äe„4ylï öãý3o™Ÿš 'i‘œÀù…dão2sÁÓ7¾ÕÏþ04h‚7ipS<’AÒœø“ž¦T2‚¦€1/°!!(ÓÑmŒ½lçf›­J´“¯Ø¸q]ô÷õÄ/\XþR‚l^0.UM“*I“„ !„Å¡Ï8ŸG†7nzËáh³¹ ¤äÎuë^Œ^ç­qС€±sÇÊs…úO›àÕ?þÜív‚!€Ò|„ŠÃ7-4)ÀMSj’Î¥x:ˆ%•CQQ‘Ýnß¿ZZÇqZ­699Ù`0@WWWuuuMMMzzº^¯ïè蕃Á`2™ªªbKa«>YZºaÚü»'ݰ8Ðë°£¥þtVΤY‹î©(ßd6Do  ÇÄÓ´²°°(;$ÆY,奥¬VK8çê¥Jû´ìCŽf´YIœ ”'q ÓîÝ{ê«ÕšñiÙ‡fsyÜ”õェLÊ›µd­JFæÜr`ÛŸWl¯hÖB›­ªbïöh¾GZ­vÉ’%,ËΜ9Ó`0x<ž¤¦¦Îš5k /™V«:ujvvö‰'ü~ÿÔ©S‡!!!!!!!!f?õaÝÌäRP(wâ…ŒP¨ß‚’pˆÇ!N`8̰E¢Áꑈ"ÚUñc&™v;$+ùœ‡>ðÕþM9ñ~bÂêÏþýQÉjê ³ƒ|±|(HÒ´R™4Ñ`‰Z“¡ie0H"JV—eÌž™Ð}¶×VVÓ–Ü1núøÎ¦ö–sÍlMÉ6Ž»1¿ålkßVö†ZÎë錱];YÇ5íÝíàÎ,Èðvõvï¤2½I›¼,ÑiwÒÃKð6G³z%Ø+GšdLÊÒMˆ¯9r¶ËÚ]Q±@Ç@‡Ütö”ܱ«rz™/äõ…zzCñÚXïˆ µZ­ÕjyžW(ÕÕÕ­­­yyymmmcFCQ”ÑhÌÎÎã8„Èd²è¥TZÊyf.^ërœïpœ9k­7å†ÖÆêqæ)H„@À¸®úxRjꑃŸ¤gN,˜sKC퉊Ší÷Þóh4"íÍë׿Â0¢pX¼8Ä¢§ßì¢E•–r‹¥|ýúWL¦ü¢¢EW)•™µÊrêÌ‘‰÷˜1ðÏ’‰‘&åðJT0°Z-O<ñØí5KþCŠF– ¢<.êÍÍÖmábgmUáŒÌá\ÌÅÅËKK7Dù=¢(*;;[ü80yò䌌Œ!.ÑjµóæÍÛ¿ÿ‰'$eFBBBBBB"z†Òd¢q3“HF¢³G¶Q2¦fš'Lwu4ž³€iEKh™òÔÑ>¿ ”Y“QDlšŒÉ”g?tV1• hEø ò‡|®ÌY÷»êwœ|'iúí¬ÇÊvü17kb|’6HøIBF ’@dÒÄljN[õÉhšFcFC¨<¨8ÞÕcãSŠ2¦ÌœÞ`m8Zvx¬9wÞ’E)¹Æëó±oWï¥tj˺Ÿ¦•nK§M0Ó{º5&m|aÂÄ™G›ëŽœËœ7åÞiйíé u3® èZ62 cºNÕw»œÝç=âž!âY4¡ 7ÅçLÉ‹OÑB½#–á I2===77·­­íøñã™™™S§N%Âçó?ž¢¨paAÄÏÑcµZ2ÇÏVÐ*og Ⱥyž•«©3'v´žSç€\¡jiªÓ&ë»ZÛž#Ê8wÙ»b·+Ân¯¥iUxS1o«~Ъ «V­6eåõÕgDÇB£1¦UáJ®\½±VY¶îxüÊ|JA²BM³ÀŸ—>0{تÎÚªúî¶D  ¤ Iˆº$@XS÷‰Z]0å†úšÍÕPuf/Xu`÷Æ’¥w”íüWnáMdl«V0› **¶.™Ê t}Ù"¬ßÿ6° Ï¥JÊM¼¬õÐ[Y7~Ï8sí_ÿöç{W?¤4Ðæ1ÆcBŽz™ÃÑÓš©Ø`7'' J¥‘ë3Ç®çÊ;îæ1Ïp>à1«KÖ;¾¡‚a4fˆqüFcFý¹Ó4¥VÉ4q2m†IÖÓê]¸l+„ü¬ð˜SiÕLóÈ<ò€¦•k×>iµZ,–rÇ™v³¹à¶GŠŒ)éö†Z«Õ‚RüHÁ‡wûq6;édùȉ„u1AhµZ­V;nÜ8†a|>Ÿh‡Ñjµ¢Ó÷’h·au»™“ õg*­5=Ý­qñº8Þ¨ÓÍœY,§‰€Ëív¹:P®>V¥RÔŸ=QAÊ”PQ±-šÌoáè(Û¹ùˆ­$êø8›£:¦{‰pwÆôÐaVN(¤RIÅqP„LO§0¼b…Ãû5‰šãö“#­?ƒa%KïAÓJ¨Ídd’gÙÞÐÆÙß»ÔM؃ š¦½^¯^¯¿p-Æ,Ë2  ÅV,ˆB¡P(4#L˜õë_‘eá„ ÚÓ•[ßóSΤC»ÿ¡¢ã”„Þ”=á¢hÀqm^þ”î7L(œ§7–nøu¼YÙ:cÛXõ¿?þC”Ý—ÅR>f•>˘o S1ºé-µPÝ×QM¡P^ÈQÓk•¥¢b;¨ùé÷L§âȾá1}Á,„ÎÅDåñÅ0ãÅ «V­^¿þ•ïÿ*ÅTÐRS©U«¯ÞRºÉt&䯧kr•©¡è uÓæ†_«x³FczßTxÑPWW—““3XžeÇsúôi—Ë$IæääŒ7Îh4ž:uJ2ËHHHHHHHDÉ•æ.C É”JøÄá±cÇ“J“Ui·ÀÌ9KIå™§mÙúaVna8@L/_¿þ¶™fl®úÔ”7Õ0&¿»­Æ–7iÁjØ»¡Ãq.qÜ‚fË;ÆyOt´æ”ÿ»lÚŠé ïñ–bJˆU"Ò„|Õ~ˆ!DA ‚¦TÀÁ… „â“â& ®dÏSV^À$Š@”¨8‘ˆÒÈõ†ô‰¿Ê2BNDé=FcÆ}÷>zÖVUQ±½ÙYr|p&1|6ÐÌ2ç0mŒöÖT*•¸CˆH(b†Áçó‰š Ë²ã~×z½^•JQÀ0/NQgüãÌ;ÚÄtš"’3e$šP0ON<ŽÇcÄcœ7%Äãªãû•jmBrÏss—,ÑÑIÿüÝ{QÞ¸ÝNYÒëST™YñfsP÷¸NÛ±­éÃZe ƒ*•šeCžžî ÛnR8)'Ùh6r ǼÀñÇa–ãY³œÀ±Ï Ø çfM”ËNg»Á2´ »½F§»‡Z§Mxü±ŸŠv¤–ß-š+m¶*j1¯§“RTéš|%¥î ´°BÈ“í²m¯ÎÀ0±Ù»ºº&Ožñ”˜@¥R¥§§Så÷ûÏŸ?/FügffvuuIšŒ„„„„„„D4\iî2)T‹oÿ¾RF(eL˜8½`Ê `yáðm÷þ0À Vð‡bV*À”•g2å;Ž4Ü9Éqâ˶³ã§Þ¼gÓ ºŒ)(%süü‡‚Ÿ½ò¹”úôîê]²ìeÍG_K¨>§ÊP8ÃxSÚç‹(ÙîWÜX/ð<æ,øØN`9!$þ*`AmP‹³€ÃÑ<2o"£1½§µGgJ0/`AÀ<Ãù8!Ä œ€yó°2A!z£€Ý^c¥ô¾¢1ÁjµxµHÅ…5Œ–Ï;Ô!]†.-VA¢½%--­¾¾Þáp$&&²,ËqœÏçã8ŽeY¯×Ëq\Ø÷L¼„ã¸(5hªµwËÜ€10ŒßÙÑȇÇ,ŸL»‘P©€Ç€ Ng§õø>OwWsƒÍ– 5ç;¨ö˜îH„@‰H9©à’@$#´) Äjµt)%1h4²DÙØÜLЦ0Æ~¶GÀ­R©ŒF£Z­¦(ŠeY•Je·Û333m6Û$JHHHHHH|¹ÒÜeƒ×ÓU¾û=1-kÙòŽÙWu|?Ìš³4{ÜÔ¾û’€1¡øöÿ¯ÿ ùèXµjõ«¯þ¬õ¸£pyÁ±-[—Üõ£IE+ÏU¾/»éA¥*cúíG?z.gÑ÷ë÷½MjòBiKª÷mʹ5A½®w0çœaPqžN1+äýAžá1×tñ˜ò¾ `ù '„™ã¢&Ã0þä.qÌÎÖP&äý ïç0Ûì`ù`€ë òVqBˆT}Cú­JG!$””Ü5p•a®º¨œÄÇÇÏ;×jµ¶¶¶ªÕjÑ&ãóù<L&?~¼Á`è«ÌDOIÉ]Vk¥ÍQ«ŒKؾþ§qñ†nß9½I_yäC0cöRC8iÞ'ÿµ‹«ÓŒÕ?´Õvò€Jc¨-oP«T%%wE/Q§3°ØÝíê¢[B\Gç—.³¹ ÖÆÆØ™&MšZÀÆ!„€@Ht“¨Ürl2!V†ðò¬—›uóB™ÀŒþ᥄C³+@ÓJÎçeâ~Öë ´ùØoÈà|Aï…¯ÛíŒiâùý~qûˈ¸\®ÌÌLµZ­×ëår¹¨ëj4š®®®ÄÄÄÁ®’èÇ•æ.ãìõt‘<3sæü#'‡xÜåìL4$@s‹=#·°©Áöýïýìµ×_àÌp.Š6¡¤ä®²²“3ŒùE¹{?yã–Õ¿ð÷tÙÊ~—9ëþ¸ä¼¸äÜÏ•4nA[ÓA_úí,ÊWž¬SLÀ~Ö1éÓ° ëéô0œD$Ãù8õ„œ ! p>†÷ù€"A.îû~%дÊÛé p½’ùY?'°ÝL'° çó±=®7ÈŽÕ±g nËn¯ó­¹ÝN·ÛY±w»ø†y¡-aý$>>~Þ¼y‹¥««‹ ˆææf…B1iÒ¤¬¬,Ñ#a ³ÙÍZh6¼úêϦ-}Ì×Ý\²<57mYÉ»?ÛZ[}œaü]ÌÄ…ÁÓÝ9®xÂÌIÅÿêx/#sNNÁ¢ÿŸ½ûŽo³:þ¼C[¶d[ÞÛò¶Û™Î„ÁH #Ð^è¥ÐÍèm{]ÐövÜŽ´½Ü ”R-4FdHb NB'Îð¶¼%[ÓÚzÇùýñ:Žãȶì8‹<ßO?©üê¼çY2zŸ÷œçœ­Ï?¾xÕÝEŒB¯‹­¬\úù¾*qöYGj/ÒSkñÖswo8ŸRW²¦æ3“©aØ{´fͶEQ´Œ’òËhz €ó‘Œâ˜`HRnÖÛÄW–ß”ŸÆ‹‘Žr*•ªÁ¨;¬Â²š¦}ÅÌj81ÈÒrOÈeõw¹ë‚ååóÀlÁ@ ˲,Ë*•JµZ …W´C!„ŠÜ¥®]Æ‹DÁnï;|ø`•Ažð"ij:SçyvízK*9þñ*g/1™Nl?±ðË‹G—!_Ÿ¿ÈrjWÐࣔÑîf?—ð>bJÊÿ˜š÷X=>Î~ÞÇ‹œ+h%„ðb((øý¼7 ø+ÔÕˆp‡õa¤ÝÆ=Ô‚'ä"ü\Cö€E$B÷ûy—ë÷øú91d25L,'§®îDMÍg&Sc àËÊÊ1ê–ÕÀ "!$¡‰Ä~ƒÁ‰ô#MÓóçÏ?zô¨ÙlŒa.6ô”Hèu±z}\gýg¥óï ¸íç§§ë9{r1ž ¤P†Ð×Ù{F~ÜïöRó- áV<Õ‡öUWï•V[^qË]J¥ªúã½]Bá ))mÆoHÛû˜Ú·n}E¬(,,6(a[EÉh9M± Å0KS, CÑÅP@BD"ð"!>@|T°Á[]aÌ,‰AŠ¢BTDS¿ ËêêN .Èç¶þt:íJ¥jñâÕ‹ßZ÷Ü ×Y›PØàZŠ ðWíŠZüè­PWwbÍš"iK¢Óé¤lþ°†ñx°åÓʵsL5¦ª·þ;}ubþ"Oð|„¤ }úÔú~ƒHzäÒÜ¥ïŽKKWù 씚gíèÓ¥†‚Ï‹\ÈÆ»ÉÑu´GÍFϯ\-]¿šÚwíÚb6wFž€1ÐPõ^éÚZ¯³uÚB)A^äì çál§]®&OFjÞí_þê྄Ò@ä·Æ×ÝûÈÖw_©©©%¯#+3oÃúÇLmuu'’’ÒŠî-k55VU½o6wnØðx„ Íš5ëøñãœ6mštå*eÿ_<ü2ŒÏçóz½‘güÀœÊ¥ÕÕ{k«^™vË£sîxüÌ-ç—kbC¼HQ}.’IÎ.€¹«¿®Mk¬Ùcín¸ëöÿaY™y?öË}UÛ««÷nÚÔ••_^^)}ŠêêOÖÕÕÔÔT@eåÒ%‹W_Êâu ‘QJ€"EhJàAB¡@_³Õgó——͉KHàÄHDB‘ˆ"ÑR(Tåå•»vm‘6[:ûl¶[ïüqA‚²¯ xKÛIi×ËǾû‹ºú“fs$U¤î´k×–Å‹#Zîy¨äää–––ŠŠ ày~ß¾}Ò:ÝÍÍÍË—/÷ù|&“)**Цi¿ß/¼yó §§Gz€B!4¦K]»,È‹.sccÕ ±±ñAJ±tí“gØÝðdNYš[vÓŽW‘k,jj>»pÃ3—É€B¡Ú°áñM›6~öÖÁ)+K4ɪ³{Þëj©ÑeÍÒ¥N8¿ßÑe˜ ð>KM­ªÈïÄÀŠ[îJJJÛºõÈršï·ºiƒÈs †Z›¬gœ)¹«–Ý7˜ÿ`jk¬®ÞëtÚ*+—V”#Cjè¹ç~µfÍIIiÍÖÏÅX? ÉBÒþq—·5T^^¹ø›·öÜÔÖXUµ=ð-^¼ºh<éækîx êãí›6m\³fý(ÛƒîãîtÙëêjÌæÎòòÊäñäETTT´´´;v,///%%e0ŒiæaÁŒÝnooo÷xú¨°°P¥Rµ··«ÕêéÓ§³,[UUår¹\™L–‘‘Á²l}}½´›êxÛB!„ÐéR×. ñ$Ä‹©©™+V¬}íí×}!‘ÄY³@«ÍëçDøÖ·~òØã÷x‘&š(sNRbÚãýò¥M¿þyÞòìÒ{ó-õ}½§¶tz y Liôóˆ–Aƒ*o[:®úËË*“’Ò6mÚ=~[ú¸à*hR2òWÝ~{x)´0›;*+—~i͸1?ØR©æ´BŸjÐÈÚ<]ÙâdžÇ0RC÷­{d -^´Z¯ÛºõåÅ‹oš)1Œ•™L åås{ì—ؾ&''G­V;vÌï÷gggKÁ œ‹dà\ãt:M&“ÃÌ;w¤GQX0uÍš¶n}Åï¶ι+³tÉÁíÏÎZùhÀc§TQq\Ð×p|Ïô[m=sðdÕ+åå•ÒTºUÚWUõ~eåÒ9•K¥}EMmfs§”k”œ”&½ N—]JC2›;/®$òŒBDŽð@(JŠa^t÷¹ý_¿Ù””^R>-&Ö >‘ã""/^$ˆ—„–"À­[_NJJKJL›RRVõö›Œå}]õz­z¤¸«æDuuõÞÈGç†R©Tùùù‡š?¾N§ ƒÒÖ¨ƒŸ‡¸¸¸¸¸óÉE.—«¡¡aáÂ…h !„B7&ÊápŒò´4Íl¤Hæ©§¿Q¶îÏ!¯­~×ïDΗ1µlÙ#gö5T¿ S—}-.£ì“|Oàü´L5eío<½BËî ë»ÄNƒþw¶¾RWwÂP¦‹ž¢”R¢ƒ‚?À{ƒ¼Ÿ!-J8­-,,Ü‹}\œ.ûæÍÏ™ÍJ¥*++?ðö¹®þduõ^)´˜Xº„ Õœ¨®©©ð¹Ä†Ì–ÎM›6–­¹ã):lhh°té¯Èår>|8::º¨¨Èårµ¶¶N›6M i¬Vkggg0”2%&à Us¢z×®-Àª²§­î8µ×cï’Å0¬œá $d•ùÝ6GOceåRi:_äÌ–Î]»Þ”Ò`*+—–—Ï׃þ³u'jjª¥ôú¸Â²¬¬üaiEƒÏ(6½ü§^w'« µ±Ñ„·Ý!?ÇBñ†¤¤¤ô¤¤4•J=8îB€À°åÞDˆVÆæç—FøÒ¤_ÚŠw——UVÚø”JõHŸ.)¢Û°áñq g SUUóçϯ­­íî”iÊÙPÒ^™S¦LIOOŸp[!„ºÑ„‰d"Üžzú¥wþš‘«€¢€¥)†š¦h@D‘"ðdàúËÞzHã:=±èâbҕǔŤBB`p÷rP§ôF?þØ/'|].KR QSS½aýc5'ª«ª¶ÀâÅ«'0ÙæZhè¥M`ñâ[««÷Jé1“à ây~ÿþý¢(fddtww—••õôô´µµÑ4]XX8‰—ªN—½ªê})k~}~’&óß¿*ý(åë+O}(i8BoIJJ“òdÌæN)€Q*UååsÊË+/å*ßlé ü€ 5%)]©TÉX™n<b4ͨ՚ÈË×՟ܺõ嬬ü+îiäMú`8¶uë¹”<Ï;vÌårM›6eY¹\~ñv™õõõ åååÆ „Bh\ÂG2‰‰‰iiic®]¶ùõç›;:äšó×CÔÉ%~G×=kGKدóײ*’B ã:”Joô%ÞK–ìúàÍê꽃 ìNnh1””š¹’ÖÞ­«;!eJH –MV 3ÔñãÇ»»»¥—Ia†’¶ÊÙºõ•ò5e±ÊĽ›w¯Xq÷¸ò£Fa¶tÖÔT0ÒJÖYYù“ø¾ò?z}\yùœ¡ks›L uu'¤¸zƒÛ–––ºº:µZ‘‘!eÂpçóùzzzzzzÔjuii)¦Ç „Bh¼ÂÏ.}RÙPç:B©T]ztq1)c¡®î„4#Hº?Y Õœ¨®«;Q^>çr_¼^±†ª>Þn25–—W^¦¨lPKK‹ÕjMNN¾÷Úw}ð¦4~¢Tª&kÐï‹Mš&g258ç7~¹|qÏóRÜÂqœÝngF i’““‡fË „BEn´<™È§™!„B!„Е4ÆÚGÒÚeW¦+!„B!¡KZ» !„B!„®Š1VÂÅ!„B!t Štg=„B!„º¸iwð IDATv`$ƒB!„ºþ°G޹Ú}@!„B¡ñ¡‚ÁàÕîB!„Bëóù®vB!„BŽ9²hÑ¢#Ì“A!„B]ÆX…¡Ç'Ÿ<}êÄ(JJË.˜;Ân1ƒ am« !„št×òßµ\Ûxa$ƒÀ¹¿Ã =:J™M.˜;®Â—Òb$¤†k›@mÌ „štø?±Ú&𥌑 BçþcõjéG¥R9¬@ X¹úŽÛß]¸`î°Âa ½Å¸MØgm6ËéÓÇ·oßœrûí_V©Î·Å0lrrú°†`Xmn·Ûb±=zT¡PÌ;—eÙ!50:n”n_\›(Н{”×+Ѩµ ÃŒY›¤··{ׇo5¶ž‰¨–E?´þ ­6šQ&“+•jŠ¢"ì›Ãakkozíµg¥ï¿ïÑÌ̼‹û­¿¸oÉ „št£ÅGnô¯Ñ/^mÉŒ“gïW Ö~(7D3§žºþwýÉœckglúöÑ7–EE\IÿŽ;¤Sȹ‘Ÿ{QOt¬âÕ%÷ÿöoO¯J¾±ßœ«‚ùS„•J~¿ðàÅG&ÖâŽoX­–´´,•R}øÐ^ŠaXžy½^øÚ#?³¶Ó§O;Θ˜–e€¦iQC¡ÇqË—/WßúÝΗþõ«ŠƒáñÅy¼×öo÷ü[\lü˜µ‰¢èpô9s¼ÍzV7[¦KÐY«=»?x]¥ ûÝîä”Ü…‹nÕj£#ìÛ¯ó$ðr¹‚aX†aÞß¾™¢hŠ¢!„ˆ¢( ‚ ú¿ÿ¿‰1ŒùªB¡I1ÊEÖ6YÎ_,777€Ñhü‚ƒzÊÓí}4“t¾þ•ùßüÙ²£¿ýÝy‰£Ýj™fîÄÏ=ßV°¼»aþþ宥¿®y‘bé‘/!'ÁM\koëeúxˆ¢8øXŠ$fèSƒ…½^¯F£Q©TRaF#xqᑌôÇðûÙSËfuwµ8y˜ã¹œìü’’im¦Æ3gOŒtÖÐã<ÏÇÅÅeffÚíöÎÎNQÒÒÒl6[SSS$ÿÑZ†ªãôE·R43Ryç™÷D‘DÒ·ÞÞî]»^ùú4@˵VCÒTŒÙµlæ4·Ÿ;Ùhéê2åçO‰°oEÇÇ'f¤•J• þ€_ø˜ƒ.Z/Š‚×ë±Ú,g±o!„Ф»øKGºÝÖ˜÷@¯¯Ú&˘Wn¬]–˜˜¨×ë¿xG" K^°2ÛרÒóéÜó£#> Ö7W|푯ܷnÍM ïúõ~»ÀuíøéšYeS§–”ÎÛðìq÷ï›÷àùss—|÷±‡î[»rÞ¬Û~yÐ9ö¹C¡@ˆÖ%jib}s•qá£Ü¿ö޵ßÛÝY÷o,.)(*,¨¸ã©-<ßö×e3p4ĶíÎÄØ›ÿÙ#B¨á÷ æþ×™ è¬þíÚéÅ¥åeSæ~ó# ß šøÐ6úÕ÷µö¶^Ž!D£ÑH‰æéï3ì˜ !Äãñ Ç3®+f2š¦Ô­ ð{ö¾GD1Áxö쉮®v&Цé¡%Gª d2™ uuuEEEEuvv:¥Ryn¼"ŒQú&„<þž_÷ñ‘þ'Ý÷!lm'OV[--™ ª¢4ƒLTjeº„¤D§'`±{âbâtZ¥ÅÒ "ìEQqq‰•³ed=žþžž¶ÎNSgG‹ÇãÊHÏÉÉÉÑÇ1 3Jm!„Ф û%»÷Pï§GûªOØ ¶ÁY×ÚßÜá [xô/åÁÚ>ù¼ïH­½¶ÑÕÔîî²ølÎà„k‹ü…ŒY!D¥R©TªÑDÒúèWnçÇdŒFã°r_Œ#!æ]ï4E•äëÏßoú{Ø{¶½vSLðÌ/»ÿç‹üiFߦ¯ýÂýøö£Ëâ™þêŸÜü?/¬úqI¸ú·Yv÷»¯Í‹ríyxÁSïlØù`bG¸sCÎñÕ>½¬ôÏtÈÖëÊzôçŒr°ƒà¶ÈïÛöæb=×ð§eßµ<¼ëä¿e«ŸZö•ï”ö¯5‰s0ÿü¤#ThÙÝ™]B><Ñ¿njõGžOe)\ýöªÿ:P»"†ý΀ŒÎ¦Åp¾‰ÑG|®µ·õ2}<Âþ-‘‘#éÛíŽŠŠ’Œþ×a‹@QÕÚÚ “ÉÒR3 ‹Ê”Jukk}QáT)‰°6‹Å²lLLLrr2˲½½½)))R,4®¾Bt*ù4cÂÀ!„€(rnÂÙ)§Œ¢F|EC[Ìm%ÆäÇGi”´/¤&>º«·Ø|YYêôÔ´“ ].—Ý`HФo …O·w4ët±IIé^¯ûÌ™š(­.--K©R†c¾j„BhR„ýÒ‘ËhKÉe4Èå´œ¥e,=Rá1k–¥X–’1ËÐ,KËXjµ 2hð–îjÓh4jµzؼ•q}yåvA*†Óé„ Çq¾GF#Å a+ñ©YêCƒÏÐúi_šC(snY"{t_{ ÷Ì;GÛ­¿}à¶?€èã„"+¾VF?}UY4 Éšël²rDq4ܹC#õ”Ÿ}´÷ÑL–·~òÓ•|oɦ­ŸvÇt=ÄY³«§ìñÛ³Ši_Y—pÇΆÀšy9Ë*\ÿu¸kIÓ™œo}WóÂuqGwáúB¨ ¥þéמ<±ê¦å«–•'é Ûlbl×ÚÛz9>Ò¬0—Ë5xD§ÓIQJØÙeƒe¤QQQCÏÄHÏ¢(z=ý4Ãr<×ßïlm©·Ûû4ÚhBˆ(Š‘G2r¹œçy¿ßo±X<˲Á`p”Fª¢Qkââãê[OË2w§]$¢ @›]¢jÒPQ”¥ÑèXFàEša Ç„äÑ1±Yùœ@¢¢bX¹îóÚÆ¾>sllÂÅyÿá^)ÅЬÍÖÛÞÞ¬VGefææd؃æ›ß­ölOufŠi#„BWÒH‘Œ\FIÑ‹BÆÈXJ&›x$Ã2”Œ¡Y–fYJÆR,C±ÌÄk‹üê"ÂG«ÕJ1 œ›·2zUýÊ-|R¹4Ž#ùE:ƹøaàÇþóÏQà®Tù@TD•eßuû] C/®†œr#Ü¡(Šˆd¤sÃa 3nŸMþ}wK`P¬’=_þ¢k:uÑʼŽîþ _uó†ùúwŸ}—§>eUYLÁc;¯úlïÞ=¯?:ï÷¼¿ó‰Øp aMDäZ{['ñãvøE*3Ò˜Œt«@*£×ëu:ݹp•H¿ÅÒ™™™×××Ãõu‹G>ŽvyQQm¼Ðcî$@Íw³ÃÑa$#Š¢(ŠIIIííí}}}6› X–õz½Çõ÷÷GEEÙl¶èèh™L6fm@‰¢èñ¹D!býááþ„¯ÅËÀ4xº¾ü–䟼¸£cɺ´àÉ×ßè›òÃ|%¥«X™ôÝß¼üà¶$ƒú&øÁï>Jø÷ÿ00@–V§.oÁùóæê-x³5ð¤1\&°fÞµö¶NîÇCf6ü2Rú¾(б±±`·Û¥2v»=66V¯×Ûíö°§ŒÔ¢Änï«zïÕÄ̼@Óéu½J»…Ø|ÄÒkêíÝS^Q4™ÅÜi6wZ­æQº4ôG‡Ã!—ËÓÒÒL&˲Ò,µZ­R©N:¥ÑhœNç”)SFZ‘yhm¢(‰ñéËbÖ(å RÓ£‹Ð"!¼@XZ ç§1kKJÊà‰"ÈSþ@ (7»êÐ OŽçÝ×7kµÚm»?ºm¥Ú˜SôÞÎmn·K&“GòJE"*•*…Béõzº-fÍÙGgüê”õ3-/O\øéŸ þãÓ57…­ !„šta¿åò!³Ë†ŒÏŒ¹VPØGjíJ%£RÐ*£T0*£R2EM¬¶¯.ÆUàRæ­ 5Ò•[ø1™‹o*1ŽŒ [šõé£ ×jåò|ö¥Ù ³zù9ó·¿UYRÈD:iåoþùë#y®¯ö'óó~ËWoûÍs_Î`½GŸ”ç=úÂYYþ+аÙwÿï_o§€I¨\¤·¶L[’¥`éy ÔÿÙ9gQº@t×üå¾ïï±Ó,4Óžü¿…Ñ Ó…éÀÄVÿ¾ÖÞÖIüxHw ¤ødØÁ°…¥Ž¡.>2º¡%NÛ ¹\ÞÑœLHˆ•5õÏJÑt´•46äšZO«TQÓ3r#¹k¢Õjív{oo/Çq„–eC¡\.÷z½*•*%%% &&&ú|¾èèðë›]Ft˜MµõÕÓKæZ©³×$¤1Z^;÷\±±û¦P(Ó3 <®N¹\%W¨§OòùþO2ùœ³ššÏÔ7.ZxKllBKKÝHë&_Ø Á—âäáæà‰Ù O[?ÛÚôœ‚QÝ’õ•uZ‡»á˜uÏ´¸¥akC!„&݈³ËXZ&£@!§/uvÙ…2ì¹i6×ȘÌ%Î[&ì¹7ö–%Ú¥ÿl¼ðÊ&zÕ» «€Ø”Ûþû¥ß_mÈRVüì­? { À¹Qwí8s×À 9ß®:2ò¹C{Òå~Pu¾ T<[õÀð"Š’wüXz<婓ާ¤‡tü-Úw˰²á:`ÒE±¯¯ïâƒ#¾ô‡þñ»ÝÎLALf‡ގŠ1®Z7»°¼³³õØ 0¶› 3O™2óâ³Fª­°°PzÐÕÕÕÚÚÊq\qqq\\œÙlnooÏÌÌŒ‰‰ñù|@ ’Ú!”B®IˆK“ÉÕ:&‘¢D‰H€FÅj âH†eÙ䔬ӶNVÆöÚÜÓËËûžÄ¸Äi³¹SìNWgwͰÍ-g§M›Iß~¯ÏçÉÊÊ ýgéƒA1%£å Å2ôÀÜ9‹¯g—!„ºbFž]FËY ÆdèQ YÛ° ixgµMn$‡CzÖápÄÄÄèõz‡ã¢+ÞKpcG2SRZ¶éïÏ­\}Ç(evn·¤´l¼…G7ôßcîT¸DàI¿=Ñï¯=º?9%+33¯»¢Òiîf#HXeý€˜˜ƒÁàóùÚÛÛ !ÇÁ¹-q"ŒdDBD¥àÓ[ÛwÐç’¶DB€P VkPgBÄ‘ ¥ÓÅÉQœÀuôô PKQŒÇëúäÀ~ša¢) ü~¯ßiߺ{:öîÛ.íŒÉD±­ÎÓ%ñ³Wf¯—1Šìè³ÇÄPl´<#„BWLØ/´¤ó;*äÌè…ǬmJ^øùá—{LVmÒLû¡O]|äÒa$…ƒ7˜… æÀÎíïŽR¦¤´L*6®Â£ú÷ÜoéjvÚQ:{V±*%³<+_«æ8ÎÙÛ-âç¤dNì?%:NŸÏ'‚B¡ÈÎζÙl‹…¦i†aB¡PÄc2@LÁèXŠ¢`ðY ´†¡d0ŽH´Ú¨h]|SS­\¡ô)]\ZrZ¡J­Q*TjµF©T}þù~A"©íöÛ¿2ô)ƒ"®:øîžö×Ó´¹"ˆœ,Ž›ÕánÈ‹š‘ B¡+æâ/i z„…¯ëÚ®Œd°pÁÜHb ÅÐ?~CÁTÅì¥Iq S£õ …ŠÂq¡S§ŽX¬æœE·èõc)„- T*»ººL&Szzz\\œÁ`–föù|ýýýÆ6›ù³v €Á') ÀÕ f›Íy$òrƒ!éÄÉCy¹¹¥E9]v‡ÃjµZÜn—»ß)2sæ¢Hj›:eÖЧ81H÷‰û̯·õ×€ŠÕ”ÆÍIÓä—èçb$ƒB芙Ü/§¶qÁH¡«ièÿÌÙK‡w»~ø¶Ïç-]ywqñ4¸„›"F£Q­VwvvÚíö¢¢"•JÅ0ŒV«Õjµ ‘D *¥æŽ•cRjÔÚÈgÙ&%¥sŠŽ?ØÞÑ,—)bb J•F—–š£ÕF+•j•jÄݸFùU°”|¦a…Z¦«±W9=*&ZKŠu•Ql,F2!„®˜k9Z¸–kjrÓnBúäÓƒ§O=Ù&ƒ 9XÛj›”5„Bh(üŠŸXmÒ—ò‘#G-Zäóù"9Çdº:"I¶‰ÄÐËq¬mbµ!„B“¿â/¥¶q¡Çþýû›šš.±¡arssçÏŸö)ý˃ „BݰœÇøÆd¤0¦¸¸ør÷ ¡Í™3gàâ`ÄB¡‹écb`÷îÈ˳R³|ùòË×§AO?ýôÏ~6ÂÖ}áäæænÛ¶m¤a™½{ö\áþ „B]³–ÞtÓxO¡/G?B!„Bè²ÂH!„B!týÁH!„B!týÁH!„B!tý¹¢‘ ¦û#„B!„&Åeßsîܹn·›¦iQ ‚ -P‹B!„BpÙ#š¦7½òŠR¥T*U Ãpðûï»÷Þ𥽟nÈ(q{íoË•Õî;ôÍ¢{é-gÿ§ôäÀƒYªð†G!„B]Ï.{$#)-:¿ófí$ŽÆÈ³îùùÏ©LÙù#¾ƒ_Ë¿OñvÝ@èrq„B!„ÐõïJD2Cç•€ “V5›¸hý¾± „B!„¾@®DÆ?ÏqŸ;VS{òäéSÇOž …B ÃŒR¼ç½'æ%+)*ªèÞgNx€ëýåúò?·òà=ðïiÆï €ïÐ73³¾}ØîÜþ6¬}¡«ý™¥)±±é«^î x?ÝšyÿO¿±¼¢('Éç_Nz „š^ýÉþílà2þB!„B“ìJD2ÁP(ü¿Ï_1uj00jÔ4mÞjøu­‡³íº·ù·ÿèwME߲魇S3¾µ·ÛnïØ±>í‚€)о³¶òùê³-¦jùé76w ¡Ž÷ÿçÏo·†&ðÂB!„BWɉd‚` à÷ûý~ÿ¾ªª1":zÕÏŸXh`ÙØyÿ×JÏÛ¯žöV|dIw>¹6[ 4ÞrK¼é€) ]ò/§oǪèIj!„B!t\‰<™` ØÒѤÑh†!„ÄÄÅŽÚ£8cÒÀÂeŠD£ÎsÖÎMR?­A+ ÒP2Ãû92I#„B!„®°+ÉüþŽŽ­V+“É€¥Z=ZiÞÖl ( hivi3ce«d„/…‚Çîõ#×@Á!„B¡/´Ë>»,ø|>¹L¦R«X™Œ•ÉþQ§‹‰ý;ö§6^p|ö—ïÒÜq‰ @•³ ­óýª. Øôú?pŒ¸ü¬v7·»Å‘ ‡ÿ!„B].{$ÃqÏó¿ßïõù½^¿Ï š]¯Èºç6Ë÷K£ØØ›ÿ™õ«­¿®Ô€,÷áÿ{Bñ_3²òKç~ëÄôʼn#n£Èàû77oHd¨¨m`½gÌøG!„BèúsÙg—qGÓt PªTƒ EøÒš›ºZ~úì…OÐúy?ÙmúɹŸù•ôÿêÙÿÛf€Á`üêë _}ý\ÉŒsÇlêjl¿ôçuæÇÚ%ÿrŽ´ B!„BèÚtÙ#i똢’z´=dB!„Bh.{$ÓÞÞþ³ŸýL§Ó ‚@Ó4‚`2™.w»!„B¡/°Ëɸ\®ËÝB!„BèFs%vÆD!„B¡ÉuE#™§Ÿ~úJ6‡B!„ú¢Â1„B!„Ðõ#„B!„Ðõ#„B!„Ðõgò×.{ôïUt½p<õá0ÿöíÙãßGþ°mÒç!„BÝh¨7/_¾|²j|þÉÛ§><¼ÎAñ>š³Z!j² %›¬æ®;Ï=qÛÕîºBZZZ¶mÛ¶aÆaÇõ11°wÏž«Ð'„B¡kÒÒ›n€wï^´h‘Ïç‹ä”É“9žú0Å9è`Å{è“<ïX"°"'çXÈ]'yýtA“=éM_û*º^ÀH!„B¡K5ù‘LE× §eF:hX≠¬((ÄçOŸœ'ÚÞÏO=¯Ÿ&*ÆÝ€,výƒåîwªÞîÇ.|¹x´ !„B!4“Ÿñ/]¬÷ •®0‘§¾€¦—íÛ#³~ ‚wŒÙ˜¯|mÙº$fÒ»zY©Œ31ù]/\•Î „B!ô3F$#Š¢Óé´X,v»Ýív‹âØÃ Òź[ 4r}·7ºS©íUB¢>…Ú!×ö*X? Œ¿Sæ86/äÚAJʘaÐ1Œ²`Fù¿•¨ƒ0“A!„BhRŒ6»¬££cûöíµµµÓ˜Z”%»óÎ;§NÊ0#ŽO}XÞ»D"öƒó'º¢â=jÐqRàD¢PDQDIH€¢NqçN¥“f/úAzýÏÞêî'Àæ._ò0ur³¬l¾Vwßý¿ÆÁ¦(Mjþ·nOéØýÙææÀð‹V–/œ¾nj¬Ž%¼Ï¹wëgïØtëœÆž²h†x\ìnx~gk@)JM_WkPP¼ÛVµïØ;MA»þ¡éÊ:«&C§SÊ„ž¦¿ÐÚÉ…«Ö,\Ø0±ž>½;?÷KóK€¶8»¥Ñ7XódB!„šá#·Û½eË–;w—V¸ÙY©º–[+0Uiÿáxë­·>üðÃJ¥2ì¹RžÌà:yg £&3ä@8üÀFKOQ@A`è©b_C‡cFf¡ºç°—€\¿ N¾g=Þ{dÊt~Û¾ÍRÌ SPttváwWÄžÞ~`k{èâ¡"yRþ½yÞ×^Ûx( +‰¡W{¤»O|G?ï“ç¦&³#T{aç4ñÚþšc/ušŽ{±&”/ü-cž B!„B“"̘ÌáÇ7oÞüÌ3Ïäääiªã|ÖþîS‰:Öãh÷ó¬L&{衇žyæ™={ö¬ZµJ­V;}ؘŒÄO8¥SNô,Mø‹¯ýÏ}5µ¾ÕStg{R¦Äª»øp}¤UeÓUÞSÕŸ˜G¬³Ô¿p°xÍâù·Ç€¹¥õ­NDÞ8CÍÒ”,»¼ä®i‰©*J$”JAŽ2€È9‚Q’ðåQ:\µža] .SÛç ÖÕb ¯ë“¾óÏᘠB!„B“bx”öìÙ“ššZTTDÓôß¶ê<õ>o­á ôy}^«Õæp8B¡Ð/ùËiÓ¦åää «a0Of(AA䩱 öæ6󼌩®8ƒû|‹{ ‡†PC«ó~²­^µdú·+ý¹ÚáÍ®µæÄÆš¬J¿pUå†Ö}>ê‘Åç}u®jÏ{ÿÐlj¬îî •:é Zž¨a( «ÕªC>¯®Ú¶`¸jƒ=».:ˆy2!„BMŠá³Ëd2ÙÊ•+u:ÝŽ;ü~?Ç…ÚDS[‡­?”]¶²ùdvv˜Ý-&P„Åû뇓"<%@ ­½C¢Ç²ßuË¢Â×a»(UåâÙø(ö‚XÆÝóê'-¥³¿5K6_G“Tž¬RPÀ‡BýA2Ê@Ű çïéçD ¢3²gFþNØâyÆ\E+c—Í6wõðã¨6,“A!„BhR “a¦¼¼ü{ßûÞ«¯¾j±X£eQêi9Æÿ¶ö 4M¥ª?ú?lnnþýïóÍ7SuqÇSfÇÒØØQp `”hB±„U c_ú“à©“®/¯ˆëÝß5##x«ôÍ\±üÙ[ù¦ªþxv  àîþÇëô†u•ß?ûß#®À…ÕÐ ý’Uå_ÓÉhÂ[ÛM¯ì²!&lƒ!Kã[­37¬_êñr^›½Ñ}nàHð}Þ([óÀ*£†XÎ>»ßP„©vpL!„B¡IAmܸ±¸¸xùòåCBº»»ÿõ¯=vâÈÉV`TD%Æ©5 aJiéÏþs­V;RÏ?yûñÔ‡o+Û_ë Ú{W€ðÙlœf–ô•v…§e IDAT9•JXz^Ú¥‘Å®°ÜýNÕÛ}co¡3.Ï=‘Ì¢¥¥eÛ¶m6lv\{÷ì¹ }B!„º&-½é&øp÷îE‹ù|¾HN ¿ 3EQ©©©O<ñ„Ýnïêêî³÷gg$ëtºØØXšc3Mi• ÉÕiJw]žëTŸàaÏråâ§ @(7ˆrYä¯ðz‡c2!„BMŠÑvƤiÚ`0  „„Kv±Š®¤`†P2>z ¯É‰ucüPC@Âj£äzÂj‰\/&j€Ñ\âk`ôYß¹§0}èKá]ï¾Qý±s¼i,—½iÌ“A!„BhRŒÉ a_¬3ΰ€ç@dá3U.‘à4mü«i’+åì/ÿuø l—Þ4ŽÉ „B!4)Ƙ*6ÒÚeÃþ%²˜òÞ7GzöÆùÇdB!‰fµe;x#J@è>ã!té0ã!„ÐÄôZéÍ»è”¾Û _½4Ã÷!Gè hÿ“?&ƒB!„&Ìë§žú‡rÝ qå8Ó /nÁ‘„ÂÃH!„Bè²s¿æ©‚ Q£†GnÃ`¡a$ƒB!t­xkO´1Oˆ“v‡ü(Nd3…‘ B!„Ð5¡¦^ SQ<¢QÃêEÐc…Ó1˜Ah8ŒdBE ¯¢º|zíŠgÕk—:†7fAŠ0˜Ah8ŒdBEä/ÿ _|›Ý÷ÛkÅï„&™7Àþj{ÂÝ ]aŸ]¹>= ù9Ì tü6B!‘3]$9Þ8È>õžCÊ^[¤{+#„ÆôÁÑøÿwk_Bl0ì³5,˜‡k ¢ƒ„ÎÃH!„ÐØšM@­ZÄmG¥"oìÕ<ó–¾¹Cuµ»†¾hZ:Õ5õÚ^»üjwäÊyç³´œÄPBL`”2ù9PÛ½V f:ï¨!„Ûñ3”ô ¢Døž6´ã3Ž7{Ý>¶¦I½ëhÔʙޜTïÕíáuÊë#5uµ{q yëcƒÙA5:„ˆb(T`àKÒCI|”F\Îë æDk: ũܯL~E½ñ‘êžeþµKì-]šãMšjts üå¹Ã“•Ñ(zûÈæí"ÈT«€1#tµ»sõÕ4Å~Ò"ÿîÍŽ ÇGâÌýŠ»æ¸ÝÒÞþyHQ˜ –fqÉ|”†$ÈÕîìäèsiµé¿¶¸1’ÂÆ,H9 Í&0fIÁ yq ùÎzœ_ƒn\É „C³ î]¯zþî¯1ƒ{0^xéý¨••cº7'Õë °Ÿ×Ç>ûAæÜ§úŸÇcÅ31.¤Q ·Ì´5vF¿u$inžwÉlë’ÙàõSæ^º½›¶º¨+IŽr3ˆ4:qòåf>>·-òSV.·ÀW@£†ŠR þò²ˆÁ ºaáG!„ÐÚ»!#eø-pJ|ðV÷ÎÃêãuÐ(ùEe½,ê€ç÷åžhMðo <‡ h60fQÝÉ/2úJ\®€âo ÷7g[½º«Ý»+Í”ÿþãŒ[smk§4*4J¾<×þÀ¢îê–è­ñ Qc¦°d÷ nÝ ¡ÇF7µSùçu|Oö£ºÌÇçµÅë<‘Ÿ2˜ú/©(¥L§þò²xYú‡Ð5ï:þûG!teÔ6¬ò0Ç5*ñÁUý»ªuE•x@£äÊr¬y)®FsÌ?gUföç&ÚÕ œ7ÆÿSüÅ#4hÔdÕÂÐÎO5Æ(Çý3l5æ´MM…¢H Y"„@œ""ÑK¿IÑŠ`”"ˆF @@£€Z~ñ«k܇§Sï/³75ñåÜÐã%÷oó;{bþúqÞW*ۤϒ×O½þ¡rÁ´P~6ih%ÿó/ÕCkÕu6ßì½Óù@“øèq„1’üxq ”äC‚ ¢”röãÈ ºAa$ƒBh4Í&8Ó=bV±F%¬¨tmú €*/pKÕJ®,«7/ÙÙd‰ý×ñÜ|ƒ¯0ÑÕå:}ÍÛw€¬[B'ĤiTdåß΃Q¢<ˆKU`e¶IÅ€ðqJ à ɸƒò.—– Ž€œˆú|r Ääa S"@ ^€X¥*¥â‘¨•h”\=';’)š.ËêýëvýÚeÃ#1µ’+ËîšzõóìÙé®$íéÍš'nó3¨(€_z/êÁÛ<Õu34QÛJÑÔm% 8÷\êÿ@èrü4óú§@x®×J ¸zº±`$ƒBh4ý¸wx}Pœ¾€F%l¸Å¾éÃx èòüóûú©¡©æÜDG³5îý†ÌüXoA¼Í  ¿ñß ¥×J6W‘çtÁtJœ>•ÞlÊ (rg^]‹=~—)kE¶)Néµ<†ˆ›œÚç ÈÀè÷³65€Hì^Ìý 49I®ž"D-±ZÉH ^Ö…éúÜÑGzb¿:ëôñ3Š»gŽ8|W–iÉKr¼z$«Ýÿä—ZrR·^ÅA ™—vÆÜ³Ø{ Z½ºc}qëËNN¸)õÿø)ª¹KDü÷¹·@—y`”¡F2!„FóéQqÝj `´{½•°áfë¦=ñ@QåyΡO©Á)©ÝÆx[‹-~{kEÁªl“AsMÇ3^?#¥j\&Ÿ¢¾ÿåá¿Ï>OôkÍÆòXO¯ ÚTù½íýÚÝÙkrΪ˜Ñ¶ kpFŸô >²¼o`àªÀëg`Ëþ˜F;“ש€£Q ŠóŠü)ñÁÉ |!ÅóµyLi€ý'Ù{o핚­2Îå]žë¯êÎö‚cJJ×àS…¾üÌà¦â懆Ó× §|±¾à«õ—R‰×OÇÅ+Ÿ/ðȤ¢˜€4·i „nÉ „ÍéNH0P½V*%n´<Šß°¬ï•}‰@Q¯Å¬–K“;sâúz½ºÏ-ivÞ8/±+Sg¹œ7o@ÖØ©iî‘Ò,Ëׇ6Üb¿ñL³ À˜uÁÁ>wôs's-kØÑœukA˧§tÍ,ÎlùŸÚ©Û»ŠW§žU1þIïÉÅ4J~ðAK—†¢(šeæöç¥û¼~¦»OþéI­ÙÁ”¤‡ÒCÆôIèRU[ΣS› Úþæ669†eǘš¦ØÏUw͵%Ħ‡zß8OQTirçùΫ„ ·Ø_Þ4}-¯þI§ñ«… õÄí^»üoêZè¹w!q:‚çî2ÐÖˆw­ž¬n"t}ÀH!„ЈšMdÝâHïòj”üK,»&Ð)‚~øäjy0KÞ›ÓÛæJ¬ï¯¶§MÕ[‹bƱíåà Ê»uŸ5k‰ Î1öWäxãÔ2››ÞôAìÝ ]“>[iû'ÔºUÄ„}î¨ÿ;nüFE“7¨ÈöÄG{VL ~P›4}o¶éõ–¬½š’ÕqŸOn7Fçõ³ù(æKÓ8Ú,?P§.Ïïרø„Ø`yxýŒÅ&o3Ëþ´CS`J2¸’œ@B?Vvµ–ĨÒ„Ãöº¢pÄJ>®M>Ó£øúJ“ô£Z¼§¤¡ÅÿÊ©²¡C|¿~Yß+§R4sm.¾»£”¢Á vŽ]4o€ýàPl~r—3!6äõQ;ö‰½VH0PR8ƒ©2èFƒ‘ B¡µwAF*€Ûqú±Ëk”|Y¶ç÷Ç3lœ1F,J èÔ¡d;!æ‚û÷™:K¦Îâç•zóÎøf”FõD_éxÆT4õƾ~&.SšæX;Ã.ôÚy$áî…ÎOk4[>ÖÍ+öK˲MŠã§¨)¹$3ôõG=sÔø­MñQî÷M¹5¿ ÔJî–©=Òâo«Rº«,©03nÑ_¹`æƒÃ±æ¸u:š–ÉzÍ\¯]‘;ˆ¯Q 9iþœ4ÿ¬Ú”ŸW™tI&—‘ÄGiÄ£š3öLЦæ¤5K?¾q€úý×Ãçëoý<ˆøõ妡¥Q¾¤h÷ç–´ô(]I|û@÷”üúEÝ»O&»© ‹»ÂTwõœudR4µ<½vb§×4žr8ê™Î;‹ÜÔ0­„Ú¼|g=CˆŸ"w­ÆHÝ@0’A!4¢ÍUäciWo€ýßO yqÂÚ™=%gqiOvÇliH¤:]á/ˆó¤é¶½‡}ó°¬(/É2’cƈë¡Ùú}¶”‡²K?6·Q÷Ì4ê0Ó·Õ)Z¼cZø@× q-L¶º67O»#ãŒJµ’[>ÕÜh‰yá@ÁýÓ›§Ì]]ö þŒ'~múDÂQ_@öÊþ´Duèwv {9Æ,*å4‘ö&*Iƒîkq ¡Ë#„Bá5›ÈºÅ#®¿ÖŸ~pKO]—Þí—Åë}ÙJGv¢ãæ ÜT˜ÝÑmýѯµ&SäAë×1¾ôø@b¬ozL}± ê $îtÎÈSXÓ%=™i!~NÙâJèpGtjÀ7#ÉùhÉéÁA†a<>æKe~Ш„WÚ_Ú¡ÿû'š‡.=˜ÙYE?r+ü}ö¹´ªÎzlN‹´£Èž–ÄÛ‹Ú‡–W+B÷U4¿~*??Ös [›­ÏrE²ËÌxýìŸ?Ôÿèv+PM1tb\Ðü¹fô³4*ј2f„–̯Ÿ2÷±ÇëØؤX17MLM çÇ[ü‚òmKñºŒ3*v ¿ÿøiª¢dx†Œ/¤ØSŸ£-Èm¼N- ”Ú)šÚÖY28YQ­ å%9(šÞ|¢à¾Š&iå·«È/¨¶ö¯I83Þ}Ayc¾º5zíŒîø‹¦kJV.¡_Ü".˜bÀ fèÆ‚‘ B¡ðÚ»HFê8.‰Þþ41')ãïqjÝùàqµ"¤V„â£ÝSRaiHÑëÕõøtýœöh|u'¬¦)‚FMz¼­Xî╺ýþ’dÖ+oSPã^³k(¿ ló$Öºâ»úi}Ð5#ű °^£ã}»Ež‘8£Q‰®rþà嘿¬~HEaøKÉHôZ©nuת z_PþÇ™OÌ3IaLk_\¼*åv–Z¼wJÖ³‰rn×iíòé|‡˜™N_Æ™x»Ç<8×-…yN¡Wq•¤Z:U9i…—1fpÆ Îë§Ì½t{ÓÔÁôؘ)9$#E0f’îü…qÝqŠó¹"$w]˜;ä )þøy陿)©Í+ŽmËŽ¶ìè)¥h(Ôµ´xzPÔëµù÷Ni¸ºÁÌ‘þ¼åq­±Šñ¥Ç´öÅýíXò=…},i¥˜F Sr©çßÂÂé®ÅŒn(É „ ¯¶fU D2ýÐG¶vÙÛ'M¤%˜£T\§-üPÎ`Ò?,ä”}½%¨óêz¯á¤-äïšÛ}Ú(Gj¶Úž[šÀº“iK45¾ë¿€¨ê $t§<¼ÆÛ_fèXe´À :Ý¥œY|>¢Ð¨ÄÇW{6¾§né’¨'Ì|r„^·ò\ýüCã“ Ûâu8µÝ1s²ÍaOT˃wÕ¿ÝTÄùiskˆÉf¨ŒÒ¶ð%jéT@yþÀ 7Šx÷LõlùX÷ÍÈ"™A1f ÆL¼>ÊÜíÝôï6C”¡ùþÙ¾Þ¤ îfÜ»ð‚–Õ«ûÛÙüG§6Œk÷!X•|ªÝ›¸Õp-¥âì~9x}D£ñ¢J% dÈÌQf¨”öPŒUˆ®+J%¼àw뚃l"iUæ4ÝmÖƒ+'eÄKº QˆÒ.èŽÒ>žuöW(ë¦mxÉ öá›ÉÓƒ_]B8%fªŽhÏ÷Ím$ø²§våüÇâöxÝÀtµ¾~m¯‡> 3H-Þ™W÷NKÑ¡nÕ=ú^KBMC’8ùÁÌŸwë~´Æ>ø#E¼w ±¡$ßk—Ox%7š3!.-:`LŸNŸì2S‚+LÉ%µdÝ­ç7,²úô/7ü{QÝ6R±][¼ª¿Ö“ž¢ÐåiL×—ÕÿvS-c¸bZ‚Y4 s´ãØóTOÚ‘ž˜‰öÛ¦DziÔðýûá¿_…h-¦Ê  F2!„Âèí#§;ÉêÅ@ú½T·Šж¹ hŠfÌ.hºÑ%£(:/Ž<ÿQN‚N ((è È?mÈÜv4˜OÏÉ碵 •öj¤(,Rrö HUõ¤BOÔD•3Fß)T´Œf„Pzzw0y­ÛÛî.N ¦'µj>!&¥•J°‰:‹ õyEâèÏáN•ç¹ q‚¯º¥Kó¥©aF]ò³BÍ,Q ϼ¥ÿÖÚñ ýîuæßâÀ=µ=ëû7u Íy8ØS^ïè5¨e;g·ÉŠ4éîÒ5uks‘ÄóãêÆèÞªŠ{pžghúGT&©ÆgÊógZ”—²&µKÔïÍ;«g Á@*JÁëƒ{IŠó:ÚÝIŸõ¥®Ï­¿”íVbåŽÙº@g0ñçŒEѧ•´_ ß5S UüÿÙ{Ïð:ÎëÞw½ÓËî½ W¢X%‘”HuJ²ŠIÉ’­¨DŽbû¤œ›ääÆ9>öÉsOœäæ$N®S,É‘e[V±dÙÕ)‘”Ø R$@½cWì:{fO{ïÀ ;'‰<¿OÀÞ³ç}g°ùpýg­õ_žÿs.yYÃ5ªû®z.óø”ä|}¤ÆËª¯½r3D"ÂÀV«ŒÅ¯–’±°°°°X»ˆ~0²9\Áõ5˜I2ùß¾ïûÝÅ WE’ÂBE…þNw´Ù‘ ¯kAyÕþÂAD lµ ÑY‚D)ƒA r*AA‚›V T@ )ÅOå  bs`Ç8ìØà4:D9) NdÝUå )–:ݧÖy_j¼³1—7É~Îm’9‘7wl)=ý*¿yµ¾¹MýûœßU˜3ïº${P_¼‹H õg¯VýÑ­SçʘdÎv0&ܳvä’çá)åîªÞ—äÆDÝÒ7ÍÖß®%/ÿêV 1ËÆ²äÎmçå…H?7® ùÊ»sÛÖ_ý£¸r+Ûë$E $áé|å±ù5ÎæªOçý7G½ÜUŽ[Y€#åa°_j«gSµÌ¨@+÷Öô¾:Ù†üŸaTÆÜGZëf¾÷bûŠƒîáÆkÓ+åºhd;™¬*Øî¨¾¢d”$£þaêŸß Z‚¨»GëjC=g­V‹_,%caaaa±¢€Í½‡Ð®»Vz¸ûÆÇŸ~:³ð¨^à4ð;¡ÆHÎäòƒrÝ=”( Î ôûNUõpw‡&òóŠHÖ9@€dƒCd“C1K ð |Ùu €ãI{¨µ;•¸ çqQZÝ ¸9WÝ3Énh)H2KÑõ•çõˆ‹¼ùøÝ¥§~"|æes;~úgöË3‰zþCâÛÿU•ê«/W|é†äC?ð}aÝôen§”«Ÿ;^Ó;êl«ž›\fõü]ã’üù+žsëÊæ ÈÅV‘7Ã.sh‚«¯¼†^Ôî%óNX”(‰þê?ão|aþüÇsÍã²ýêLŠ—£ž2ñå¶tÙ^ãS)[ÿ”éaì§s]Û<—Óò‹Ðg6®g†ÏUns¼r¨f¼^»~bXüÖÏÚv1+¸ìÅÌck»/óä’LöqC“D, ›W—ÿê·Uô_¿M¿}BëjƒSƒxûf+'cñ+¥d,,,,,–M¯ØiòÒ»ŽºhyÉŠ£ ¨¿}’m«T$ DDºÚŒ¦:³˜zê'B{-nkP^}Á‡—'e8_”1—ÀA„ và°ÐS¬^N U¤¡êˆÌp¿´KI&2ÔӻЗ€– ãwî;/ã!òø3·(?z‹ùõ{xú§¶Ç?U\YÌì=JýÇtI¡þôÅÈ—oL]ÐêSRèSܽëG/“<)fÍÐNÖ±6ª–ÍÙª¼ùÒü…Œ¹^zßóøæÂŶÔ$ èœxxkgiß þ*”Lœ¬"1TàÅLˆT‚¯þþÆÑ\Ô‡ù5&†{C¿üÑŸ!wƒsuq[+ÉÈ_ÝÒ-ܸúivõÆâh{ä ºð¯ˆ^ÔN@ç¹8”Ê̳‡kVy¥ë[§†§možt>vkÚÝÔhš°…<3&‘¿û½ÊF§ÞVQ® –ë¢K»~K 50.>½_ØZ£t5—ô¶$#D¡ñ)Ë‹ÙâWKÉXXXXX,M[ÅbH”ÎⶦóJË^zÇ–õòB!ˆœ_â"ò¸«MkªÓûGØçß@l“Þùù‰ŠÁÏê.Ø”éH€ÍEªUT0T¤ÝÈ‚äëL el”o"t5`ürENô;‡f˜½Ãô uåÛ6fc)*ÜÏÕW˜ï÷l[{^¦"à5î¸N{òeö+Ÿ•¢ñôOmÜTZnªýТH¼yÈóåíéºÈ…±éÑ!ÿg×\±-Àªw5Oþ㱚‡6•T¬èn°gã*;X³L,KîܶD‚B!XZÔ-¢`Ɖ4µÜõ.‰L:3”gUùĹ/îÞcÎÉs'å&‚€ÍŽ+艿ܥ5n8èNz:½ÉF>Ù͵MAu”k¶’Ì×9äX˜í¨ýåTè-#ª†Õè¼^—dÁñ÷Gëk¯ Ì@$h¸ko¥Ã«ød³c j°­+-ÉT|–³÷Ž»Ñm´U(UAÕÆë6ÁìŸr×6ÿö×—Ð`¡›;ЩAÓòb¶øÕÁR2ËÒÕ†ö»î¼ðánw/‡ïºiY»­tÿ6‡M/LÅÌ€Ÿ<÷-‘Ç]­JS­:8ãø»ýÑ–:6bÆt‡);i5Ì䛘‰dæâsêˆÍR§6Ë9—6;C‡MŒ~ /I¡&lß=hotê›WIõa5[$EÞ8Ñ/ní,‰~ó¨pbÐÝÙpÞfê«õ­E´ç µýõq¿þô«âæÕZW뙊×>dîÜb¼qÈÙÕ(-ùˆý§}â_ûÅ»k¯žÝ¿‘R³º§ŽžFW%f^Øë¼ÿú¥3( #´(_EÞ¬ê½Ãìå+`'…ÆêÒy×øâkf}5 øPs½Z£,· ¿äqŸ²Î}œª.ØÖ¸R·Î‹¨µ¨'…'‰µ-foƒ0JpŒ ¿ÞÃd‹Ô†ÆÔ\aäR VrÞ[Žᜥ< Zß¹/žŽW‹¹¿´~ØoÏ@Vwïε6ùc‡çïÙ1yî‘"¯×Eõº¨´mí윪ùöAR@—•GÖg"¾ò’C]EÞ’€ˆ[^Ì¿*XJÆÂÂÂÂbYB4ý€é, §O¤ÉOÑß½ÒÌ{4_–t¡C@IãF²@ðn*âÔíÕ !?0"Ç“-rgãJ½Îq¾ÖÀÈ]žŸ:g¼ ä!o‡+k—z`Ò~`@À×6Hÿû׿;ï÷T˰g€ÞySnÛ~æƒ("ÈŽºó¬m›jõÝ{©î²«Íxüni÷>€»@Ìì9ÈD|èĽ«±T]b˧‚w5]}‹Kc8;’â÷Žz¶×¥C(Køkp¬ÿJOòÒO[¥ºœ#™N1ÜùÃIkÊOÿÔ¶mÃåž?#ÖøµÞXü³¾øš ]íHîC³« KÒ¹:dƒû(Õ8[fÛlɇÏ»! (Úñ1”1wRiÊëÌíÎ^7•s„O z:.ìP€’Ê¥½/ôùšÂå›G!žfÆãÌÓû=M£­²\Tm‚qîß®%€¡ë7 ç^»ôV-,>XJÆÂÂÂÂbYDa®ÀlñIF_{–ÿÚÃ¥•ûCf“Å<ŒØáD?ã{ *3^°Ÿ*Ø+­Ë? Ÿ«>ãåçHs'HÍÔ‘>ç·wG¯m,]™C!isi³4.•mtŠŒœÑëWÁÐeNÏ<9ìŠsñW x—•1%…–Êl_ÚI Ô‘ÄZ Z0';yuStæN[ßrŸy}[WzƒB L:¾ýfõµ ŦhþÜ‚Ÿ4& MÐëÙœgÁ½G«_Kö°hÙNô’B̸¾ßí®sh·¶¦ë"KdB®Ñkˆ¼>ã*C‹ë œvۚس‡ªïëœñ;›ID?qŸöä©h|æãwŸ~U€91³{/KÒTg“rÚ'Ýw7Äó+š®Ó6W&ž?DTÞé¥äteíþp!y¹]ì/|à¼ÿ†•’`,e"ó¼Úõ]ÊÞãÜ®[.aüe26‚¦ÜÉ3 ¯$Rxß1ü•G‰áì§›:Ô>ñ—$c†Ë5²/&Q±‘¼#—}–³¢Ñ­ƒi†\º×f8m:\ß)`Q0E>¯¡|Á¨¼·Ú¡§e ÇÞÚÌÇóoõ¯-KY€ éž~sûu¸«ÝJ¦TBSqrï1&–¡Újª°aÌ…F¯¤½™Âà.ÏW‹ÍªîÇ[î õz¹¬ Ü ÜÆbõ&öø¹_T‘Ó[ÃÊѳž:½éªœÂåÄNoúþ–³³¬‹ƒÈuó Y’Éqáoßv‰MÃhä@`ë:Ô3‰{ú-%cñÉÇR2+ Àô^Ô; ¢/¾AmY£|ÊI¡&€ÐNzëÝfЦ÷Í(Î*îKkŽ}pÈØRO_æZ"§w6Ì6V§ßÛ_¹*¬´VäüN)OLŒÊãÐ'H2X ëSƒD]¥«í[Ù ¯Jef`ÆuhÌ 6Ug¿ù镊¯Š%²-ªÀ‹ÇØ¿ÿÍóÂtSoY•úÉéŠÏ®ØÅøRàÁÛçvOì4D?~wi÷>€qØÌ=g™ÏßR^NÆÀá‘íñ˼-+PÎíéÑc·ÉÖó´ì Ó‰KŸùýcζªeëÊæà(©Ö)‰‚›E‰4¹\^k#}ÕBjѬ,‘ÂsfeEÆŸ #ÍòY_ýìËÆôêaÍo˜ÐsVYÇ%ì@îϳÍ>-h7¼¢67AUäõ ’o@ã²Gp艄­‰B¸Mé´­ªhÑ©˜yãˆçÃ3áÇnIŠ‚~ÓòÔjk2>, XpÀgvµi’LÄ’ÔxŒIçÉXŽj¯ÖÛ7:(„Ý…ù†Ÿ!¥¦¿äûtðŒUb¨jûZ`ÈN.¡ÜÚêå7Fªþa ÞGªíŽäí—•U+)ÌÀŒ3[$_íœåë´ú òÔ^¾w†dÜToÀ©ؾù»¿ÿá±”Œ…………ÅJ̘õNËoÐÐÕ¦€$ýcBÄÐ »oŒoö™×6Ë€Ñ×î8mh9®—Šˆ"šI^qɾÈiu©ÆHn`ÆõrwdUP®Xïåõ¢Û¼°JÄY'.˜S‰“=åæ6v>Žüx<4’âEjSUîákÆöÒ­ðã ®* œ[Zv.µÁÌF•ûáɆ'6ž7¯=àÃwn5ž|}å,òxÇV¹„þë—¹[ô®–esDÃSbkX¹8¼¾:"¹áãlüT’ëòÆU³VÔ¼.G:»RNb–9=F}éÓ—°McY’’.¼"onY­öÒ+(Á’Sc¨=âÁÅë¸ÓS34Íq7t$àÓ’BI2U,Q 6Uö²N=ä4¼vmÎLäu‘7€2ËÁb¿ÂyeO}}n¸@8ãž¶Û×÷ Lß}Ó³¹¥äó˜3¼÷(ÚuûyÙ3‘7ë«Ôú*$™œ–<´×óô3YZw5c¦Êo˜h‡çhŠ©ì%CZ¬Ë<~Á%(&?!ÏH>ÀFfz8{ßuS°<%••ÊÌLÖ6’Íp5‚º©*ëõ¿~pxî€áI€€7>wÞ\¸¥½}Â*0³øäc) ‹KÐÕŠßùM§ðÖ.ôâ[üž³LKÚjL·o]Sܹí€x|†èlT ³ZIå4س_Oe Ÿ›DTE1²‹ ŠxaDæÅœÖQ›lŒäFpíXŒt8=L2ö^xXÄœ8…Z«Èé¸ê.×åÎú«yõ¦ÆÄœÝíeÒ3ÅlhÉ9Åž[Zv.k*gAüì̪»ZΫ‘«¯­EœHAÀ"›j5ñ÷/¹·´kUŠÈ_¨XvsÜ¿u‰^ «Cä´[×&žy?\áÔêÃ3¥|”!“Oå–îÏ€çß·?°mYß¹jéÂÆZõ©ŸÛ6-ý)O¸R.åÌòb^k÷øÃÏŽúª2°‘Ü©¥?vyhˆK£À0DªÍ™­T7 äK¼S\¼É"§‹œpC]´;·Â\ÏLQ¦ÆãL:ÏŲä\Í\[…ZR1ÎP!ʉÚÊ¥¦ ¡–Õbc¥ôÆAçûýd³WÐ)ââTäür6²¶.ˆÒÿ{{!£Ø­ö|n|D%×vRéLOíçÕûÅôPRsN—íõLj‹kÈÃd$…žFÁDV¸`jjIãF2~lÂ\ÛŒ-W;‹×ÕÅïé\¢´o<ÎBˆ$§Ó¸»—»~“üö <ƒ€ÿ¹ßÿѱ”Œ…………ň:=aÌý7 š›’xý:u׭ˆÈsœB;°_ÑŞȩ,¾a*H€Ç§IHçÉX–:“¢[B€Âäu˜.;vˆºM0Èë"§ ¬JÚk•± ºfx’><ض!šYS1½°Š·œ€Èà€:ŠpFé7ŸXnc+0¡DNñˆý/_öêêý©‚Æ~4^]Õй¯wµ/þ<§ÍvÝR”dr`œÿîÛþöj­Ò¯.4ç O !§p_ñ|É9í¶5™W>tþ¦{ÈðÕ&43ÊjH$“Òi“÷:Ú«´•ëÊæOK.uyö˜K˜y=n áÙìâ„–_¨[_§›È9{5–ÓshˆÍQ "Ñcë ,ÞÀœDVúWºŸ"¯‹¼€Åq“’L@<ÍŒÇ 8=P˜’Ê÷ßë û`tPákHexçöÙº°ða$ó£·Í/?´ôƒôFAJZçY±e³ÑGø…ú/WNŽõ–O¤„·¤† ÝhªTì~¦G‹²¦ZM¦ns-O‹œ¶¹eö¥ÃÇnІÑBp¢ä8“}D¹NÌÛiõÎú1ŸíÅx=SÜ µåwrä×ȯà0‡Æp×j+'cñIÆR2— –€Ö(¬®Ã]m—Uu&FˆA{ºOãµídÀ~Àõ5s'ÑÊ É’d²X¢ò%z"Á¥%—˜‘"sÛ‚«,Ÿ5ƒŠRªñkŽÎxŽÅ½ëó«#S§¦£c9[Þdª`ëª|˜:’oœRÂQîÊf·OÙî[]š`wmPWðd˜rgdꃉúždU›YÛ±– –d$òFgs±±Z‰Ïò'Fo÷ú®©/F<¥ÝGùû¯¿zóå娋®-‘{ÙoX?Bø«“ªî¡?ÉóÃïÄ,szœ¾d]Ù"¹lØõkË{Ò»n;OÉmçÙÑ©Å){>Š£?óPT×U4;yÑi. ƒ` Œ/KzmZ¦«|øâz'™õÍWf0W]¶Ð7’LˆA²»½ÊM²(ë­}ñítl\îK¢334`ÜÝkDƒ¦(˜07¼ø`µ‰±‘eØŠ$òµÁ¸"¦¡…²§ÀU­õܸ7ý%ÆÈgKÉ‘l(!·”äì~{“ŸÕ\Í¢Zÿg"n¤®’ë<·F¯ìŠúgɶˆvÑüõ{JO¾Ì>x£qªß²c¶ø„c) ‹K0>¶vá}Smær56 l6 ÚQŒ‘`æínsÇË>ž EÞ¸8K !v@XãŸL“ñ¤L"|œšV¹ŸŒ…~:Žrê 35Þd»zŒúZb|½}àítd{àD’­ô—ǧ©ÊÐ%¤šÀ”o¨þÉh+"`ÎZweDN¯‹ê"…’BÄÜ/öIf¬D<Ó—üì•ÒXQ|óˆwxŒn€Q!TY”M“I¢h,N&}~øÀöKוIÑ<./§dD¿×K^¿n±æŠ&Q…G˜L/j¤¡Qž¡ÿàË!E–Œs²4—I²%!\"mœ’©‘>^î°þ õ‹7‰¼ †ŠóqšÊ|Ïë÷ßëTfÑrº@zxù;ï°€PKΦ(D’¿·“‹òôËïÊm×´‹ˆ¬d$ ¹>.Óe—Ílj„³ÚžBÞtªTEO9”P_fr¶³Yoœqz‹šnÊe\ÉdþêÁç÷ºî»yä*6?<%Þ·F†ŸÿÓy|çfõ¯žg̲bµÊX|²!þ½7`aaaañS¸©ß¹Åxþ]þ²>pnà„@è*f¥À [WQ£Ý‚Í(¬òϬ«‰»ídÞŽ¸·&Ž„M,²ep ¬ÎÍ<)¯µM~0Û ëÜå/Ô;ŽÊéQ*ä»´-²@+÷ÖôžÊûÓŠëò—8­£&á'ó_ÚžÉ)ÌÓÇW8Z—’œ—†K"rúmÒ»9 œ‹M¢­Àxìl#æ/ª»Oh¯Ö/§® €\^`¸ÿZ½gì>º{¨=i7EüËsò#_Ó‡F)Øw”úí_ hÅœr2†dtg•ì©£L5=íP–톞ïi[iHë•‚uUNŒ‘Z1Äá€_ܰÞA0üöMò7£¸½YÛÜ&igö[_LýË—ó[ÖÒf)q÷=Žö hó«"ʥΌ;é’«ÖX_)65Ùœ=6…âÙÃÃöWFë÷›Ž-ÙʨpÒ*}úcep@}¿—ùhØ9=+†œÆ§BW±çñ77ÔDA¨¯6Øb"z¬´ŒÅ'+'caaaaq æ,˜ë«´ÐYvh‚]Á\Ægˆª° ![þH, ùàWKɤS%‡ž˜¤ê§ô›ƒmˆ@™?ØÐ#0åÑL€ Ñmý?:ÕtWӘߞ¯&Æhí!äªb’ƾ>Ó¾³òB_æåèÏP±$Ù—$V÷¹O+wWö¼o¿#tš'/ìÐ{L©DÌÕ/K"MÏdðÎH±ŠëT6Qtž‰fŒº._ºÖ™à©_BçŒÈé;Öå¿û¶ïwîŽÅ¦§*üNlØ£jbÄôL¦¹§>¾õÅÔ¥ÏLR/I2€X‚Ì N€Í÷N#‚¥i»­œÎ²¾ˆ©jß},‰ Ýá¥?sÊKH*™ö/ðÌw`HK…+».DÑ”§B'hBÊ‹ÉKg½ÆãlUð—Ùt¦®I™”¡”¼þ@K mhsiC¼c«òÔ+`zcŽ„CñLÖUUÁ#ÃP¥âl3¶ŠŽ¨ˆ,åèìȂ׹e)OÄD„®‰FF4ó6œJanxÖœ0Á˪'³âäx(r<.»Á°K:wxÑ%ùIø?[rù‹H2_$ ØØaœ@§°åÅlñ ÆR2+14Šo^ƒçrø;¶”ž~Ýñ¸O[!â?5Lmì( „DTE©¹ÐꊈSÑØ`éý±–®\i⡎ô¹³\‚)fuÿO4lˆdÖTL7’“CzåZ&Ûì3Mx{jõ-ÑK;e OÙîm—&bÔ® Ë&+¤ôã}G ˆ¯˜}'Kh™ôßÜŸöÚaD»ÚÌî:[€'_0ŸýÁDY¾‚ÑŸ,/ؼ!#¥XÀ¹ÄeôL²séˆ_:Š\JLO:lÂÚ:1/{É´Èã_¿Wyêî–k9M-;N”ŠrYÕ Î_¥äÓ´’aÒXQ¶5ºe éZ@ãô”4.)9FË•¯M…#¬ÚåKïj:+ÐÊ×÷­}¤uìƒÉðý-ƒ±4÷ÏG"×Tñ\èšêlØ-ÜK|»J @’©é³µJ‰§è¡i°>4I"³¹¹™¦fÏ$–J ÿwÈÂâßKÉXXXXX\¯k¾6LäÍÍmÚ‘^û¶uËÆÄgbhοK •´Æì?õUäå+™R™ˆ¹”/¥úìíhlê•v•5ޤ˜òCƒ?<Ñ7Wd&tL…¨X=ž/³‡b›B—ðËÊË”Ófì樂k‰’îzß ÓÜÚeܹüËçÈ¿ûóÄ}e‘ÇB¬„¹÷sm;<—Nþ$ÒÔ{gÉ7_só´Òê«uÄÓe× è.UTq…j.᢮ަ¹µFzaŸË%ŠÕr2­·…øÓƒ!Sæ°64Áå%!€¬D¥ ô¾Q‘$A ‚¢H†F$ºË­(鮋0"—£‰… *ÅÂ]“ÙdöÛ/ëí•èþl9kk £ê¼=6BÄó{õ¯îB˜VJåËJp€×å°9œ™LZ.\ÙÄÌþYâ1Ï¿‰’M×ÓÙ¼R&¢nƒö‘xAäñ7¿„xÖÄHÃ@É …Q¹, Nªš”'‹q›º˜Q)i\O¦r¼`?•·­v+m…?Z{¸Œ¹b 8[\µ)Z"Há‰Ó³U°+À*ëd~:]§¡BÐü¼‘(làÑih6p¨bÃÀ†Õx™¦é‰3óëa U·5â¯þ²dŒÅ'KÉXXXXX¬ÄøTEmªV¾û¦·µ– ,>Q\7/ZZ‰k,B—Õ$“ÌŠg¦]»‡›"rå:¾ U¹STW±DtAc#Üüó~-?Ô9øv_%`Ü^9ðQ©=DÅxJYãß;Õ°²Ï Ǹκb_’>7Ñ$ÉDÿ(ó·éU~ýÎ-åúj¤h:âCOÿÌñø]E‘7šÄQ‚€ƒÒškÄÅ~t¯$â‡âÞAê÷?uÞ´sá)¥‚ŠUˆ1Åà'ÕàÑr=©A“¬&ÇŽCsÖÊ!@ €™Yq&ŽîsK•ŸÚ'6¢Bnó ?ëc>ø­îbª|Ï»7 F—v6…~}k î]£6 HÏšØ4´¤Ì¦@¨EwĤU%+öŒ1×oéžB¯|? ýÑ£T} ©—´ç^fzó“§ç–Uïé0k@R/ëîspn§]3Éx2%Ë—NmI2u¤×–.Ò^»Q,çK\<±ç—Ëh\j_ÕŸì©÷R²j ¤1 `ÒY‚Òä²®›j!n`’5»FÛ5‚ÕL”ÖíY`T/á ÂRËŽ”é|G¯(4݃¤e7ØK£feЮÊxJÙ’iïÚ”b›r%«¨²ùÁ,ñ‡·%EÞ87-¹À·wWÜ]&à–Oô‰Ó)Òë2»ZçoÈÐ(¾¥óßôÞXXü;c) ‹•85€7v-Vúˆ¼±cƒôÂ~Ïïܽ„ÓñB“ÌaVå@+=2/)ôÀ´óû{ëÆ55ùÿç®Þ]©¢Œ æ$äR#â%\ÈFe;±èÈ[¾eÕøÛ½ã`¨pZinçÎò´²5:øãUØÄíÁ‰å6°œí¨ÎìÚ€@’©qn ØÜܪüÃWÎËÒˆ¾i5ÑP‰×¶ªß}Û¿c}±.R¬`ãeíU›[™³Ë¬’Œž?HýÿåÒ)7ð£ 0š3]1<Œ×ùˆ|’»ßTÁÔºZæÕQ[#,¤¹DÃÏçØœKwŸña³ëæÜKï:þän)gºö©Wo÷c}]Túñ‡Íìl>ïeƒ+§JÐØFçMª¿×v  ¦7F‡ŠÅ‘ôoÞ ÇO™¯íÁqßTGMøØ0×Õf@_ùîþ‹wRªy‰|†ÀNŽðؘ’AŒÎ¤5ýr³7oõ`ïe»¶0žàfóD³ÇøýÖ4ºM@¨5¬@¥_±óšÈiwµmËn™A±|{mJ‘Šždhcc¬ë”d¤&Å"€àŒQ<ÏKèZ­cÖ­Œ–’¨˜‡ÑQcdÃrCІÀfgŸ^ö4™$Uúp‚­wh „0Æ»ê§޹¯iÌvÖÏvý/O…ý®eeð`ŽY¨@ {p:»¨!ǧ‘×m—Y|’±”Œ…………ÅJôLâ ªSê¢RxØ6³'ø[Q dƒŸƒ½EÆÐ*$›ìÉJ[Ì À|ÙX‚ð­qw‹-m5L×j£k5.Ç¡¨ï €D€ñ¦`î­cî/ÞŬ¸)`é¢u/)•N—µ+éŸJdøý“ÂÿûÐh}Äy _|ä¦Ä‘±³^­«ˆI %ÉtQ¦¡‰?+9%f®S+`Ó=¢Vé‘l¼~ÇJz’AƒL‘Ð@ užÂºYV›§0"-jèBшͪ~Ô=îË«ìGiOˆUk™¤:›t²ÊŸþ ZØ`™pqºÜuIGžãñ(®µi€1#r›*Sagá¾kJPRÙžhhª,E}ê»ÃsJ&1Ë6ù–õÌžvÜÝ2EvÑŒeè}ñÝSƒèÎë-ï2‹O2–’±°°°°Xšö(tŸ2ܾÄ[·mH?ó~äOY<ÿ±÷™8ZHH%˜*@m€IÇÃUI¡&íípmƒô?>5vÁ¦èzŸ‘¦±9dKçRRa/|â.°êÃGŸ=PíT•3•×Ú2 ÐÊ5£¯ UßßrV`.–(^¤OQIÝsmCþ?z‰é¢€cDNô†égÕ ‚\Sk£NB‰p#¸ð)øó¢oÿÁey_€®Çá÷ûxo…\ÓŽvÊ%Æ(—° +©ìPÒw\uäF「{S'{È?‡Îëœ `œa˜÷Ž+{q£e׌ÊbŒ×xÇ+Ø ¥b`(M*å0ÉIˆÍ)8µl«½øíI¤ÒõΜ[žîõv}å1xñuì˜-üúÏܭؚزfé-1`xÙË”“¦m¨À¨—›†YäÃ>ï—n˜€ÎÆ ôÌžY.oh-€Èé"§Ï¥&êÂ󒵤ÐH*3E…ž˜3 MÕÕØt?¯¹­Á•­pdýl ,ª†Ñ%Ì@Rã‹e h’¨­*Ϫž*q YÒ ]34Ó°‰¶Hˆ „éÑi¾³]Ì–¨®òèOß•_™qxiQذ+RU‚Jñj­[€7×'omSV€—Vޤ•z|áIÀ”›ÝÒññð–ÆÑ M޹êBÙ¢LµU,ûå™Hñ•þEÕöà©8  ÀÐ(ê†'W|Ÿ-,þa) ‹eÃ]íK˜H‰œ~m£ttÀ{ÃêE¯­¡qúk;b \ÎåseI¦&ÅáÏ“×6—vnJ.éȤ!.Ez;”ÃFA'.0°„ÁnZq$:çÉø"«>|ÍØsÝ5}¼«šGØðÙr7TÌüèTÓgV÷/ˆ™9kï±Õ±Å[ðÎ/mø "o„½(‘ánEà´‡¯ûaw¢ÈÕÑ©Nè9C´:ͼÝ&MÌ,nnÏr¡wèŠ(•™·NG÷™÷­ÉFÝE(ZRgì#ªv«‘œ1• ë¸J7<ëÿÉHðuB³As¹¨CÞ_»n\`UI&j 3öüX¯ÚA7w½Û]z|íü¨–|†ñ™ù?÷@šà $9“F2ÍŽŽw? ÀYŒñsoEðûWçiÂç‚é~çcçÿõ ¶Û`ßiâÉ÷Pã!êέF}õ¼¦e°æ¢ •²ØÑ£x¯âV@2+&$¦.’Ÿûµ³! @<õ> ˆXÎOb®ºLàT¿jƒk,Ö~Ó,É*O–qÄ>¥œ†˜ÉB8UtÉyΔm Î" ulLY`Ê­ÐYá·$åoÖþÏ›5FRfK•íð˜oï ±Í¯¶Vjv›12žÍ9^ϧ§NIº IDATï-ßhØ5¤‚îÀY?,= gxÚq4c[o”JhN+α¶jæÇëÖV1·®ž~ö`ÍBÙñ·‚ÍtoŒ_ß4»üm;ïäŸ<,%caaaa±,owã7.]gßÍoek¥èwÍÓ…ây𧻝¯G)‰,éï¾íß¼ªÔYW¬‹®ÔA1A×Uk£s?'ÀÀKOT,\³­PvÉwN}°kä¹cÕ'íÑ9%5Þäz…þawÃC]ƒƒ ïá '6ÍÙz±lHåΎ˲Qž£³^ùðŒ÷¾ë¦@`Õ‡Ö §ý¯¶ÞÑÐÛbö3«010¯èö N £ÕuWM–Tö/>j¹)ht‚Si–I¥ J “ ²¹X§õ†ÌR6ŸI@ïlõ‰”›¸Ãú¿¯9š˜eþù¬ë[_(€BÙŸ;ÕTŲÛ9jËÜO|oSæ­ZÛ®¸Ñád—].MÀŒÕ_Gä¦(µ0)…^ þžô2nòÍNNWR=ú ³þ¯¾ð4T>T¸ñiâµýÄ55ê®õS"ÈÚÛ‡¢ð Õnm?ÏÏ-â)"Âû½ýl™¼¸%†5U𨳀h³¨, "Ky9V)rÂ)¢yþP;ØíÙv¯Ü(:ÐtÁžU}³*³6T¾»3óÓßV›7IZ6ÄoõV< Å–¨Ô;M>ó‘úÀ¹)˜© ò5µjYQôbÖ£OëbØã!Ö!]c4IÐ .3±°½7»mŸß0“MšSq"à[Tb[nöHÇFC[›ÇWJ{{£g¦ñ†–eý܆rÔBVÓ.€ˆ3±ù°¯í'?sÕg¾,,þSa) ‹eÁØ…¥•ŒÀi·´Ï¾|"ò…mó6ÇÙ"Yžà%™Ü3$º ÂWk›,hõÀÐ%×’§ŒË˜ö2ÈÖbž^òH€Ë8íÁuco&Äts§}¾§ÞŸ>2íþ_ûWíjJ~víðœ Ô¿~TSž…/U]AéWÈ#¿Ýë[\‹)×y“ˆ"žZ{Ouo„œîóU§zGàÅ7YÀæ÷éO¾L·5ß冕%ûÛ“«kþ‡÷Ýxóõ‘¡š¹„œ•¢yg¤º’M‰Ël MU9âsÇì;iû­;ÔiT•ÁÎR¥­#TècÖrS-î±!vu½ªøcÇ?c·ëãÍ_ØÚ¿Ä&Œùðšá§€sÉtùÜO6?鮫W²Ê þ¾ÞñµGbÏÏ5 A¸œP_[+ä/´è²q¢'ò¯} Þª^þå_L2oKÈtmè<%SÈûÖHnö½ª>¿iPàTœ„lZN0²%@† @œ Hqå%æ’u5ž$Ôxàõ¸)ÊöÒ{02›9ãÿüÓ¬ŠÑM¶›^ä¿£ ŽíÞ³‡¨½W‘³ETÌdÜþŠ(Í TLrrŠ+§Ü‹1”g°÷¡:ÚTf±8«¨AGm`:A{Ñ]mçå”ÖÕľ´v] ³¾.ùìÁê!ɹ¥ÍÙ†gœŸZuŽ Å°¹`aw&Fܹåj’ÿ‰°”Œ…………ŲÜÒµÒ|ºP60퉻kƒ8=B¶Ö«Ý}ÂSã[ËÛ¶fÞvñžËz#£Õú¼ár‚!œ^îȸêŒp…acéœÌ§íˆöÿ`ºƒ.… 6 Ñå Ñ”7ÎbcÞÍvxÚnªêýËÄ\îÌANæl © )·ùÇ ½o¿=Ô,kóâ›ìº]€;·{Ñ»n»¬fý´âzfhÕo´õíïqþÚºì’exs(&&S5>m¿Ö5Ó螨ª"XPs%5ód*Ø›gª`¦‚l#O ­õܸÜ]£óôP`C}ù£ZåèCÈ™Ì{ýŽ‹féèÆ\¿G q)5—hË1Lú¿õÞúÇý½µo)‘G· Ìu}ÌòÈÅÖÄA¥Ì›©þ×áÊ-«Õ³)zï1|™—¿$FÂ÷u,z?°zÂùB«Kª²ÇiNR~N(KŒG¥ø˜XY [¯n!I¡ÆE¼åw±Œþú;…Í­rµ®«O5†Ý&É›ˆZS€Þ3©æ5Õ¿ÿÛ¡ç~{ê'ÂשõUªŸŒ¿öR¶¦ÑÖÖé)p!¶œá”4…ËN#á„D ©Àåëp!ÐØnÛ#¯§‰¢ê/e´‚›^i«®òJG‡×·LÞÒ’ Ø\Ëív2-Tú.ô4k aIF±ŒC«´Ì⎥d,,,,,–Åç¾Ä·¶MýàhÝçƒ8“"ŸOܼZû_Ìî6«" Í#òJ’cŽ,Ñœ¯¢EÑ&<¼ÜÁ"€¼T–(9khi_.J§r_Þð±@+Pïež=X &î¨ML$yS7*CW<¤. ÷Å=eµ¸Ç½ŸkseÆ><%ß½Ív{Ǽ Ì™T"­_0dæbfU÷ã-Ô÷NÅ9 ‰Žº%:û˘›ÖƒCŠß0 žIÝ8 9 Ò%VáÂnʬ$'fN©ŸßP çð”Òl ùnÜVË&q%®Þ»šÜ¿oüSÐ~á*´RØŒüX–[qÖ7~à™ê?ßÑ–8ïšv‹OTž—4 ÏŽ´’($ûþèê)»·iµúå }5‘º‚¬Ô¹Œ¦|v]]…ú™YÙ&§9Òg¿Tí©À1®®Àvž ês=¼qô\Yu9H =0iÀÃ1vß(ÓàÒ:jÌk7ÚHR*J±/}zþ0‡7 V1ˆ‚ƾ9Ö~[õéñI3Q̬»ÆwÏÝ®Ÿ¼šÝý³¹Hvµ*w^W~ò…2]H¯YÃʬ7nk¢5ɦ¦y# (=GŠ6DÜQó±bòÒušõîK¹]¥ :Ç“Š—Ë®«M<{°z}ƒMóà4·ùÙ|.?t|³}is¿ñ5Óâ“¥d,,,,,–¥*ºRNVmö—ö T¯­˜@€¸Q x585;§”´ÉÔ¥»P¦©ÈBB¦. ³vXbŒÌSº}½wKǬ²Áƒ{ÒQQ^íL^çG3Tÿ(ÛÙ¨ÌmøáMco~Џ…ÞÎÔŠ!ÿ+™†`æ¹S[/z½Ù6ê“ÿØçBH¹a»[5D&7"ï¸NÝ{ŒÝuë²SA k¸ß,´î ÷eãÅÁào9sÁ*pqìQ£«È©-bGÈ Ò…´§Ùih65SRRÝöd†(zF4‹%ƒÎ û¹µU.2³zâLmL\[§¾¾%ój:ßYtœß‹¯Ø4=¨dHªf¸U®ùøå‘5÷mÌžð­2hæVÛ¼Œ‘dª¡ØçÊŽE3nà#kšf?·jHÌ2Û›qgþÜ[ÌW>»lçú¹0šb—f­$ã´V\£4—K*…òª3D»BqÉü›ãß ¤êktÔ$¡ï­ýÜú‘•ÅLI¡cY±P¢†üÜ—Öìµ-mÙOoQHN´+”t<—<ïëÇóÂd–w:tDê¢tp¦Q.ŒUÙ2²lçü¾;vègOç¿óž°}šÚusñ‰ûa÷@éjŸæÊéíŸbktµ-™zá0õõ'JÀr˜‘}3…kBŠÝE§ËΘìÌ©þt¹ÞE–}|"dHʦ ôòÇ‘‹+‡c®»/ʤ„½ •ˆSÃÔ[þm†ZXüGÀR2K³º‰È_z–#¬«Ž¿Ó_UÒm€Íç?p|éÓé¡Q€¹çÁ>Zæ©R™Y!¾Œ“UvSZHÈ$ Ð #+¬˜3Y’ |aRf°T3]vd4f—|´ê8O)Pcp}ÓélÁ½mmN½mÍÌ3û+³h×ZEä¯8Q °å ]Ǫ‘dâϾË|~{úÃ"5›‡ˆ‹BŽ ÎÇ ä7à,›HSïÒñe»Njõ;œ½.*󳡿/os&iôÆi’Wþò‡¨µš#(fK‡ ä6U¢¯_h‚š£Tfâ9[^¦GÒ¡i¾Ö¦5û%¯nY•ž›â²é 0‚³Ÿ4.r„ãx¡¬Rý)>ìÈÕ9'S•*ugÍÌdÉSÏø| ÍÚçAþλ\,çzüŽüŽíÐ?Œ_ü™¹ë®²»ž¯©¢`Ìd‰z¨31´µÃ*-³øäc) ‹¥Ù¸Žzý=#ÂÿJc¶¼&œýÙ@õ¶¦¡F™áIa|Z^Ý\´Ê ´TfWP2“dxµvrá× ì­D+y"“$ñót‘bòÓZðˆu@y0uŸðñ¤²Þ•Ͳ^—4ùþ1ç¶u¹’B÷O9°abUE®² ½Ú%Å$ǹJ&‘¦¿þ#Û° Æ+§lYdg‹¹J·Ã L5›y³«YÝ×Íï¼y‰çè"8Œ£]ì eOÇ*üö<è[ ý3T˜ÐµJmÊCf@ðhT½ÆˆH-‘åR0Ý}Á©†§D à)€ Ô åÊDzªGNÖ§ŽK¤«ÈºÓöi–É⌡ж WéÚ*¿u¶êÐ+c›îÕ~.f°nbÛò3qo zö˜˜ðW¤*×2) ý'ºmJgnu¾œªßzÖ»Keøùx]ôUA" IF]«ŒçÞbv®Ë׳ F‘è²ä rbf¨ ûÇKÕª ÎªŠ n—ÀØaƒ˜Ôò¨¤öæÅÜ`"E|õŸÌ[ÖÑ@Âô zâ¾²TÒ§SüþWBá' ê‡'n¬‹ÊÌhZ<’ä«yµÙ'98us}òÞµËJsä¯òÌÀÅoÙŽ’ÎQŒÆ¿ài¥Ã7ñþXÓ¨TÙÆ“…dÞ^Á†¢Mjß*u&Æ<ýºss›ÚT'†¿û®ùÄHVÒ#©C‘{¶ Ýf›C(î$²‘€¾ï„йjq9žRªJ•#®Î†_vnjŸ©²Û^<<2íÁ¦Ùì)V¸ŠµÁL_R|øš±‹wëuâPÌhÐR2Ÿ|,%caaaa±4¢€î¸‘zòxâ~X¹à¾Æ— ¤½{=O\?»û¸ÓÈÊÞ1E9¨2ñK¸?g‚j ˜³ ž¯;JB¨ÒKŽ‘™#£»«™ÂœwÙ¸Y=¦ùuªÉÔ=®ãsÕVÓæ{]i9lgFé¾w<ЦÚ\Цž“ožòíS÷eU=KÈ^xk²®=8?¸3‘¦¿þ‚ãÏ>“ŸK¹¤âj“~&CFb%¨³Û eI•K!¿\"MÏà-P¤ýI2¼ºÜË %Ur˜õ>ÜzÂ$Ù".‘vVÉ4«}œÀƒSÔ '.åI%CÏ.ë÷æ çÎë.0R&˜1:ËùlrÖ“ÄNeµÑS=S±¸›&¢×Ûs…+?üñÄu÷iœT1cc)‰©|Þ6ð‘²ãQl<|@Pï­8Ð…ÿ)Ýqcàs*ß»"ˆ\‰H¤éB‰È ¾TRÓòê€0ï¢2Ÿ ôFÃÝ›à¢T(T®ª9]»}î«E ú«æ±\еÚÀ¼\”Jpø:5€¿ñEÔ;LU†4¯ˆ%p}µð:› %…ŽçlÏôÕükOE¥ Ý½jüîŽ%tã`’1]„®áÌÒcXi–ŸHÑž 6T!€B^sÄ'&ÃQ€ª6ß8"íEÎ=®6†½S[:äï¼ÇŸM OlC]«‹øÉO|†ôÚx룙ê/c.†ƒ'ÔÀ j&–_Zä·TäzcO•VGrÙ<€ÖׯãYñä„뱉ô»+}²WÏý»í„‰ñ/bgañŸKÉXXXXX,‹(À7À“/‘_ùµK´ªo¯éNµ`3v›ïMؾùÒF•Y–¸hêý<*â„gzhá•Ó&–#£˜¼‚¹i= #æ ®W&‡DžÑ|Dž³„28PËôÏ¥‘T‚Á¤SP 歹ۚF²y85¨wÖgž9T½5’¹}Ké™=Ák¤ÎÆeÛr–Ä'dý¢–V\^.;4Áï>ÌýÙýùs% :¥ÞiÃÛà÷Ǧ§D^ßÚ)Ïà-&;ªK„½){bî×î\Íí’êZ¥âÊR„˜¡|NJ±`ä’¸\€Z—†§mA§¹œ0+“lÙLÛ‚Œ¦xf'*÷cÓÌúWÅ+VÈá_ÅãdôƒGo{ Í䣹HkäݧèmÛºûGÏéë‹=Ÿó¼Ñ/>ø'Þx¸¢GR()CM§XÀ-|¡¤—r-Æ„³4YO¤"Üñ¢-  Ü¢+³¼7í«½ïñ˜ø!<: })nHÔ®ôbC¢øBOZJo¹ï­–’(‘@p„h0`€Œ7=¶ý´­6Õå}Vú¼ïC7¦gz†#6åïÃDWVæ­[7+bî?Ï9ÿÓhRX%ñ^ç —Éä­~WV$4£ÊÞ·…§^ë€6<Çl¡k[ÀIäã{[°CSðÃw,íc–ÏÝPøÏê-›ÈeÒÕ_—“ê‰XOæ5×òÙ¶Z¦ª|„IZˆë¤xY¤¦ äà÷îÞ䯯ÔOÎ4lj„Æ@¾1ï«u]ZtÖzÅ…4óê³Ù®vED'¿–¸x{§é¿lòSɘ˜˜˜˜¼Ñ¸E@‡N’{·¿_1GË·Õ•ãBC_ýlR¬*žiÖ¥¯ŠÑ&mîÚ#dí…!5¶ª³Ù8–Ò싺ÍCÉ  1p@8B˜FR@PÆì8 æÁ0ÐpZ#(L’G&ô Ó˜Ï-D=à›#R_ÂÖoü‰JC=ð¬öÔÞä³GË{ö¼).VÉÈŽ…˜v|ÔòÄޢ߽&c:† b¼E&«qƒ0—=ð.%Ó~r¡TŽö» Ü5$þÜ0$U¦êÜ"ƒ,³Hvج"‹W*PNÎëÚú¶ïÅKÎG·½§{õUŠMZr®Z‰é–ã/îú3ìÎn'k)ž­{íGó÷~ŽÈ§H¬D,“lG³¾0òÙÒ¿ c{^Š|}ÑÑXПóÖ¡rÄ"Ôc“a⸀ê*lc oÍK–aÛ&£éÎÖFõ§ƒ-Ÿn\³ã-ºÔ.U±+3ä‘sÔrïnÔ»Zôk½Ý*Á&[ÅËàÂqô"þä>Íï]ØŒ¥ð•§›ž§£u œXˆŽÝß6†M´wy³¥*ùÜ…èæH~]…ÉUdÖ+ñk~–PÞ7tCRn·8¹@ZhÃÐUXX&\6d¡ä‡FWÄÌÂB¢ng½H…‚veß­84iLdؽéûÜ» }çYµ»6{ê4QÁlVÌïE,&…¨åµœ Íi¶Q¶+B•¹¤›YÕ‹9þÓò'®p›ZIžU¶Õ•ÎÍni[€…ßWSh ”šÂ°»‘Lf©X‚OãcË Ãã0SËLþC`*“ µí?J\ÁºÞoKÝb¿^ˆ¶_É¡™eGS¨!‘ÔÍc2攀vɪÂ@ªâ(ÓäÙî Ñd£Ôð%èâ¶PbBŒêÌ Ç ‹Ï*> 3ÊJ"#¬/¬Äaª 3•ò¼4áÓu³+ÿd·xj/'l*J ?Ø©µ6h;;©cÃjRwWƒ„¡Õ¶“?:À|– Z;,VF]ÁVþEšb¼‡h²¥¾Âo/X¾öð̓H+àåD•ÐíºÖÃÍ$Ë·ôU^<âøÚCiw¨VA˜ž˜ö¸œ¼ÕŠB˜Lƒ QP•Ù™î%ºŽ™¸½3¬¼Oÿ™u(´E¡-››®ëæ ©ÖØ~<1ŠXš§Tù¥˜ Z |É]›R’zåZ&ŽãOu¨sÁ³“;lûùº»V·û¤`½X!†s™¾šZ.«±½vÎ  Nï5Þ‚ºÔ.xWÒЫ’¦Yõ{ô3Åš=ž)AÄö¡ßøÔÚ]˜ž§ß²i¹u£òÂaë×ë”X!0+Ø?Õ~êBEc{kšýÙŸB½uëC.EkƒJZ]ùIÂx¿  mu •JI¦U SU¤øŠ§¸Íj€…’VÄŒ¤ r²ŒÛ’T¸ž+ï»U^Îac uܰþèM_€Íy[˜öȆ,ÍDZL{{”êã=MF]Ùñ*d¤;ûæÿ¡L³¡ÃV×b-1–â>³=](cƒÎÝ}™æ`îÍÑštÉê³WÆ3ܦ¦Ô5+©5ÕhM5â+ƒd À°º°©dLþC`*“€çо[•ýGÙHÐxŸŽ(%Oåíáðÿ¹íÊÏ/Ö~%T !Ñ{õ´ªD 2/X¹¨wz\}y±'ð:«Úâ®–üÞcÉé+ÝÍ­åzI†eY÷ÉQ?^¦4ÅB °á†¤ÍÔð ±»ÎXÄhjÚäDéò’!´)˜óg®mòCÛ ¡ ‡–ˆ{¶ŸÙï*«ã4½58wb2ÒæRB dF)À ŒÀom¤O S?¤h› ˆ¨'H'±ùl€Fà˜“Óm”¬ëš“Õ4];ôކiê~²@©š®jk)RAª8oY]+©NÊ–Z¶JÐiˆ¢ÏNêB> Ùi æ¢‹‚ì|ñÃê90äztKêƒÏ»†ªLS¢¸TôxãÌV#€ïÍíæÕ‰ÿL©J˜«Ì$ Ia`1ˆ+y&ñÞ0”|]Ïð¿[¼¼h7ò/í§:üÆÎõ‰>ÙïÑÆ ë‹ïkö°Â»’FDìÊ,uä=þæza¾Xý‡7ù/Ý!_+¡ûî«ì·>µj;æ÷h!7>´è#DGWm¥×cÝŽQ>¹az*éþ‡ãmõ,ùìÐp&Ç5bò†oœÌ:Þ¡ EÚêµV :øt0l Űh@÷îQƒDšœ_&²%ýYjx– ¹Ë+3vË?§Ã5öpš2€ 6µåŸ}Ë¿©äY¥7R89è Ó±êÍÍ‘¦ÿþCÒw_eÿÞâ&&ÿ1•Œ‰‰‰‰ÉÃ[Э•rOLxÛâÜtÚqK”»#(­¹µsQqÇbF-:g’܉8×â2€Àûºq`§?vWíj%C 9Gtg3¹æZ¶bJ6£y£T¦—˜>(tÞi6¢”®0$aÕŠ4&Õ¢ô±¥S3ê`½˜¨eùô‘BÐ&?v¯<aJ$ÑÓû Ó *Ô¨ÅR”}·U£u×[‘|ýŒËcÍíÙXX UUÅp 3 Rb’ˆ%z¢l;|ªê'¤M{¿ŸQ)Ñ„Ác’PÒ «DØx§K•5D²ª˜&-¥¥§ùôÄöò{ÿ<²H’X®¨aÈ8žm±€Ôd)ÑŒ¡´ò/­Ë€Ð»G­Šk/ €(YÇRoµ¤6“‰ „2À@¤22YŒ#aih:Ž€``¨ Ã0躮éº*Š!—ª‚*Ýu”z0…¬¯ä|è¨t#àÃï~ͨlÓøÞï^—’‡_|«*Lƒã7(Øà-h Sè„g“5ÅÁ±L³_ºKè¸î6í?jùâʵŠzS?ö«LôÉš1 µZ äå‹IÉT^®À1Jo]"䬟ò5zø¶&i‰oñ(ËNiéÃLÉ xµ#<"“—EnàpMn¼q>ðìÈ„|ËGâÍ57ã@ÂÞÒ`™üüCÒ?þœK‘ÞÐçÐÜ\䩽IžÕ€çDëÔh*HdZs<µ'!ˆD¥JΧ䦪pfÎʹ¹W&Û›¬eœ3¯¸w÷¦ŽÊPܵ˜·ÞÓp“\ÍÃg¸•1úà^´&& L%cbbbbò¡ð{ô½Ú3¯Ù¿þèÍ‹ãyuÚêÌé|ž¸’¥‚/ýÐßæFÁÛ€ IÐ`Wgþ‘ñ•“/Âú o_«OX6Q|us)–E90£z›™Ìüà¡á”½Ã6ê$óU•ÞBMÏâ-ËyûR9r$éÞÎWíÌgÛ.@QŠOd|M»¢!" âêgݺ=¿ÿÆgôÞÆ¬£H>76´¹Zóíž-¹Éyî{¯ú¾öP8Z/\ß4F"œu·zCîøI1ÒQJ“*iEŒŸVHÇ.È…àhÒ°R¦Ë4¨¸&R†ê¥DŸ«Üh³NŒAg8nÑUÁ°=À¾º†) CEÂ]W È„À@ Á®ÿ1˜ IDAT›¶Àûà¯O7þ¯í'*l@ñ6ˆU0 kâj^6Ä2é$‹v"«FZm/•íFæuAsåd«žÉ§e›hµLØÚ[üÒ#翌! Ã1 €`;1y?ößIŽù_Ÿ³F!êJDTKm$l¨¿ÁZ€¸Nʤ*ŽV÷û5½)SbƒUÈËò_~I|æ5{$`¬”ÀKop0й–&êìëÅ66™Ð½\ã£ÖíRU»÷ÝàžÏ^¹«K©4Œcµµ¹9'™ù03Áx—V-€4РФ²äÞŽU5³ìo —àÖðÔ«sÝlyœòÕ±¥E¨¯±ÄBNe,ié÷‰2VL¡Ð³‡ÃÛ›+ýÍ×™Ëñ¬´#A¢ýnÑïVšjª°!©^š7ú»rP²¸ëà‹þ¡×'¿\—û5–˜Ã HiêçS£`·$l.RPµÍ¥Eï©CyÑK[,«·Ì9¯Îj]LÃ1Œ|¯µ›sI‰dÇG?~§Ä[Œ}[ä8>wwŽ·èF™wfØ?þøuÒèt®å>ÿŒB ÇGÝ¿«“`“ñ\¦¶óš3s|­ÃÁ¡…Å—G][ëð¾ÆÎÄ3hëŠ_œj`Œ.ËŠ^RYp¯}5 óý3¡?ؽêݼR3óóÙNÒ Ôe·cN¯WÙæõî?š2ôñ= —×þãónÀ°þèuÆ n›¾œã®­qZÈñ}uÅÆ@ ßäN›ñˆ9q‚™«vpÒ·¥Jö5¬~AÄ¿ý3þ[Ÿ^8l^$;°”$Þ'ÔÄä#ƒ©dLLLLL~6wU_?í¸8aëo»¹ÝSg„p-£;øÜ£Þ2cÇùú n oÐ/^{$©ÝFy¤T¿¤ÚÚ-™Ý"jì©l‹–7º&D-¦Â>BnôÒŸØ” +«5ñ,.n²Nž)µüÓ[Þ§7g£õ:_[ä¬ÌE_-æ:“#“¸ß«ÿÏ·\8JÔn õð‰ç‡Z6‡ó=áëo󽿭Ïìw>½¯p­˜$ò^ÓDçsÕoNãy|ôÞ`“kwج¨ï¡ B;ryì0Ç3xkûÚåÉ=EDqÍ‹I Ëá>¯ÚDjŠÀƒÜvl”yþ92bŒU1FÃiœDP@R,a¬…à É4’ ]yy”û'«* &òØd®c$öÕ}K@Ø  R–yÂ8qÛ”¶t‡käÚ²–²5Ç¢”„…ÎljÖèìßë8–¹ã)ÿ;?Å ©Å½O[‹)ïäÛPXÆ«£¶-ÞÜ8-ÔøÆNÖ;'k9HRàÖ5…7\;¬ 1Ž÷5A¾‘Q¹­(<´µ´²ÖŠ;EêGoúß™úÁAú[Ÿü®µzÖR —p*9êM8ŸsUçp”TÐé•¿`cdàUº>¨Ý–œö}ÿPóg¶Ç8öýL,tÖA–’ÚWJË Œ¢ë Xªý÷—™¡+ò“ÍùÏlÀ~rÎ5›æÞ¶Ö¾ÆiÕgR\ß5òæÚš~Ž–7Ô'.+û¶)?¼Xkèºß¢>7ä95c{dòÏYÝŒûâíòJ/£CWÈ/î­N/`×Ê8“(Ä=÷Üãóù¢Ñèÿ˜|ÔÈçóýýý뎳ßùÌ~ö³ÿ;&ebòo…¦P}@ùågƒO½1d!Ë0ŸÀ²rk‹<£øœ‰‰Œ×áÈZ&¹rÎÞbу®{"~Eoœ*ÙDÜ嘮±$ +9²ÐÛkÏРJµL}•³¹ˆM5E¿Kå2c¬í s9ãg‡õM»êBY _MÃNÉER.!«‡õH†8|Þ9—1Ô²°»T1ꎦ¹XÁõÎR}‹«@×%›½ …á¿8Áu5*4… •·üÙ¯k”l¶;(>ýˆÊs@Sh1k§ \.—ž~w}€ç@Q ‹mPZõß¹­ÔߢK\ðâÓÐРªÊ}ތɘ˜˜˜˜üfð}߯ò‹'ÜŸ»#½R¾|-ÝMF®Š«e£}2ÍO­-.$RkOÇãàÙaœZwUB·ùQÙÁ(#ÕÚJ%êÇJƒoТŒU|Öômþ)[ø»™;%'V,¯¼xõÚTÿÖ?Qßþl6Oq¯%º ^;2¦+Dv†'i§»>«áº”yl‹ÜX:kªªìΆgºî_æ:û<ÙNwìÚ Ú;¯?óšý‰=ÔwÞ ÉÙôö ]kÄ[ºJçÁFnæÎ $/%f¡¦Êù'¦3@¸ÓûīֿúºMP„ï v0KWõaù_áê-1²ö£h¡è÷°Rì®ׯwU¦_›q´…Éì—vÆàð9çÃ=oÑ6vHÇ QsXAn¦2·8çnœ¡MÈ7ŒþRJdóª=ßWJi§;>e×g1’(Ú70b%×ÖÏ¥gdS`èD²gÇbtkõ|g·÷–JY’©î¶Ü_=X;™÷ šÎ’¾,øbÚ^iø˜I$.=ÒI$ Z1Aý_`AÄÆÖ&:ãfÖK‹LV傾¦ÐZpViÀqØÆ_¾z$誜ôw­>ǪpªáJr­ÆXŒ1¬/îêkL·„ .‡fSµwõ%n Îè4O(Tp»Z€MMÇ–óøX·7x7±‹© ~c[ÏzGrÀ|´š·ßîϤh/WÆ£ Ú—îÆþáó×åo|F}ê–ÅÉeçOÖok(ö5¦yVb- o6åÞXïbçr3CÍþ4Ç}©–P>‘³¼~Þzh:ëì¯ý­ÅÓè®ÓyųïÑŒÖÄ䣅©dLLLLL~cš"ÂN‘zöPð«û¯=n·B¡dÜ2 ½xÄñ…M¾SêÚS;˜oj­îþ§±æ64»n´¤¬ŠàÇ• މ¼êºT¨¹¬úÚí¥e°GùK‰Ã™dën×GÓ˜:A“h5Å(•ÁŸƒþög¿×ðC¬¤°gR­[üWÖÏXS^: H,мm‡×Nç;=™×fžê¾Ôå›or¦^Kt'uû6÷Ôµ}Ö£µÒÓ^åŸúfDk#ž~âã•uÛVÞ¢Z ½\%ÊN««µC©,9µHJEøá‘Œ$Û|N)‡½µÓå¢ÅúšËeúœ6¥ð£×-·Ïÿê ò[^¹#¬LŠ~ÝÃx?àˆ*{1U»Ür_k~¥[â ¯\d¿ò$w^­-s V”¶cõîÜ—3šT»|‘‹•¹„àmOíý@BÉ!Íî¬}¸¨c8¦²œŠÒBÈ;3r†Ùú×Smßû¸ÝSYöåFÐÒœUšlëÙMØCUDd„WA2‡Ûs`À™l÷nÏ„‹Sl h(ÅŠ(‰7 ƒºdsnwmDëUîKoZ/Y¿±¯p1f »yŸS(Îyû›¿N²rŒÒá—Æ“î«JqŒÖmp³z «ÞÝ»<w<{¬f[ci]íŠBZùJʘ­Jµ6*4‹gfAe9?}·"µçß ¿ñÉ›dÖ;’+dÜYã‚Tw.ß…Ù.õKÿp€9tBÞ»CíkLÀsÃ^À°¾†TÀ¦¥¯Ê0 sq×)«t?5g¿·vùì0·gseeò—>2‹}ó!¹$ÏãZGhdhѰÊ[P؃nª²LL>b˜JÆÄÄÄÄä_Cs¡(Ðï\ìî]K°±Y![¿[éªÓN]âÂíå¸tŠˆ[ N hZŸsE«a9ŽÙ~–Ù©ª¨Ž(?>’a)Žï/éJ¶ i÷Ê`ð+w¬W2žjº&y6GÕ”ã)­q{vÓ-+ÇÃxÅ-œ]nyPOž/B 2Íýõ§_Í´íðŒkæ­õlT(vÙÕ˜®ÛfÏ׊g¬ÇÑ$3i»ÇÛWÓïcóeÁxW8\Q[ U¬`*Eè¥Z8ÞætsþZQ1$IÔå*È\W^:ÀÐ=¡(Ä×MõÂ({2aûüxc p?9]ÿÀÖâѼ•½qe66$Ÿ»Ø| €ŒØ­Ç€) *ýž‹É±j_S¦%\ü§#‘¢@njÍñ¬ 2ë]ÅuDÛX )’*”4GpWô„ÇÉé­_ŸÇ•Ê[Î&؇£…©ÈÁéwˆºœârÓù«bÆéºŒ¾ÆtK¸ø“Sõ§œíÞêr_Q2‹kk-%¯*Qõvä?ß¶Ä1â3¿²mî^õ€^)iª•¤?¯­œá_¤öYMõbòˆßØQÄÄÄÄÄÄd…MmùÑ„åÒÌZø€çVÓZ6w–seS2Å4»G°€Õ´ ™kG ˈܖ×idÁ@±Ye#¾°×?´ò.‹‹A2ÑAMHIñžP܉•œš¤ÚTKàuÓ9×k'¨Ï?$]+0,¤ô±š‘KYO¦ºf¨•.Ù^œôßÚ±xhœ¸­C“ÊÅ|béÚ£›*ï,„(’\¹°Í:w»kdNóΪõ+¾3~ö ÿÉι¿übåøuat}›A$siéüéÌŸ~_ŽÓNùÿ4ýGO&NgØoÿQÄŠU¾û÷UA$l¾Byµ°GPt )|5^•éý1÷|oëðá$•þ•Ë…YÔ®Íõ,Ü€dX.”Údºm”ôñÆsjEùòÆ8d¨Úiªs‚ì˜ÊÐ}Òåí乑Ÿ³°k3‰µ¥  ¥¥0¨LÏ»ú±/Ë¡†«2€Ÿ—›¶sù„æá5§M#l 2–lûN¾œßñH8yiO`õê,wÒ¹uÑÕ­µöb_oéòo—ffe†m¢½¾DøüìZu¾ªUIÉæòéåÅÂÒŒ”Ž!E0(kÙÓ1Çö„6×5Eíì:ÃëT–ü§“¶½øžÈp¬rK{e‚‰n#GøMÂ,#·ùª§›NHݬÔO…™RNsÜxæú Yõ©[—œöì;á‹SnI+ÒV£"š1HU‡ìRÙ´ÿÎÆ¹•·öÝ¢üúqã€ÇÇ=÷÷*ÝÝöÌ…¦ÌèÒ‘\TÔXhmÒ¾t·vì•Ê`À1ʧ·Å¶Ö_ŸsÌf¹•˯ä¬ûš’9p!ð©þœÏ)ð£»^=;ÄÀ…10è”@ñ×sóX»O·qDk´¥¤™`fòÑÇT2&&&&&ÿJxVýì­K§æéÃ[ZSõµAG'½Xfí8j °BdÄÎiõ‡ÄM'Ä®”aÛÊÌØ²ÙË3ð¥Ž+Ý…uCeGF¤Úœó>,AáЄ-Ò†2¸Ä•ìởn+9›Ê”ïÚó-”´Ã·t`¾ñê‘S±à7¶ÌNÏS†¦Å³š¦rÙJ~¡ÙQ¹°õ:xŠÀ€ÅÅ]üŽÁIm㫃 ã æoŸèÒy‹ñôÇ*Ç‡È £4yqÒù½_…~ô¦ÏÎÈNŸå/ßõ{÷¥îêNÅUþÈŒïîÝ6§½Ø^®°®2j{ùû©‡¿^hë½ödGââ˜gŸéÞÁÄ D‚ÃÇåcŒ\=d<Ð<ý:-‹€+‚“ÃâdhšiJû:PçÆ†fµæÒ¯êG~m[¸ˆ4µÂ›‚jÜøË14i y²8?shøÊÑ™HÅ•¡ưîE¨/!ç·ÆûÚC·µ®f0*«„CŽLâò´óÆ1Wh VãŽÐ=]OÆÀCSºý½N¾žUû›³Oí^:9e½8å’H+_]€,Xš— 𰪎°»¶ñ^ëªââ9Ô5º.Ã%]à/–íýµh´%]¤œsÕWâÙ×’ÝÀ[Pk“òÀ oóé¢õR,ðÆHäŸG½Žcøê®l¾J]õ¿8å„úšVàlg±éyúo³ûvV •%ÿðGSDûúãÅC@  ésgòÑÇü•›˜˜˜˜üëáXõÎÎìÏ/†«2 <£ïæ5…K!§1£¬˜Œc¢=~”^0ê/j=gÕn `3u?X6è™%Ëù×Q‹®n¯åt<¼+‘pØQHúÌ™²4 GåqÞ(—(Ï¢­'em¯X e€zg²ßym²†â Ç}öò|{b‡Ö… #ÔÊȪ¦ „—Re<'Xk½¼ÏJ‹‹>}9y1·„ÙºK¿ðá-è‰;Õ“Îß®áÙCx|gþk[îo-}±'¶Q9nÌÙ¹@5^,G:m)R)À@»°os凿fŽ_X­wç½AÈÎI»TikðT}ÙMÑÌà-—•ÈP ÏÁ-àè%jšª-®€š ié£þŒÒÜíláç@âÃï,Ôîê60 5 —[¥‹”yù3Ð.\¿xàs ~«¶œrDѲÏÈÌríb,í9ú‹ÔÃ_—Ü×)@wni‚}d^óÓRNa,€aã…±dš·Qƒ ñ¦P±®§þ¯“…¯*«`TœWȺT°ÓrË6—«]:Ñ1wБ[ÔD=¾3hcL«— Ü@*ƒ½HìÞNè8]+Ž5È£-Ú˜¥Eƒ9h¸ã³][{éI¹~I ÀÙ„L›=^™¡xäÆÑ¦Ä†­VKW ¥Õ[lÁ¥eÃöÞ¿ßõð¬öÔž8HÀd³ „iX-šákp×9¯³bÛÒ«g ØJ€e…ãSþú%ÀBI·ÖLN`¼«/œI¶^šõ› *M tä¯Þ ÀÎhúÏ÷èŠ sﵫ§Tž}ö¬ý® k ™¼Åèjпû Ë·ž¬ÀK­/¼ÅýÉÇË×9ðŠß$ªgbòQÃT2&&&&&ÿ&š‚…­¥7GVw–aÞ-羫71¼d©Ób8š† £¦²‡ñô.z°žŒ9ðBB rZºHÖÙ4âf-Ó{¦J5¸R á4 ²Nó¼Ryì.($ÙÕT¤:®XÕ¬NÐ"(zº$G]mXGÉš_.„nk™€Nu!½«Y;zi-ˆ£å&g懧ý ™ 4{H]bÿôµZ7¯~iÓC£xOºÀ_šñþÁ‹Í/Ÿ íìÒžêO¨ùlKÁï’hÌh¤KµÌòÛÆä®›¡;˘-9#¿ûænŸ˜½32!àü8å¼Å.Ç–üÂ:þå óîh0™*Öo·[„¸Fñ+âP°{]‘Âm¡©TmG©¦§ffiŠ“Ò|5â¡ "¥0ƒÐ¹ìî36ÝKØ]™Ó·e_ïUÏõÁˆàH¥ëB©-'¯…SRìùä“wk É«uM4’<¼ôVüÂñ´C,o²Ló„<-úþqqlj˜#¶ÌfdgO8>íNÔ^;ÿcÅÞ¤j¿Ë>x[pöxjõ×Èâb-].èïùžÕš;I£T:6ì¸8éÌöLBæYmf‰_*ᲨUÑuI†<‡6tèGWÃ2³)÷¤nïö®( 5¹`õj•ù"~"ç=w\,õ¿=0ö'w_©Uã¹å¼ÏQ9|Þ iñÝ‚žweÑË'ÜtObC`¶L¶û´²€ý—Ø¢íëO”V:É€Ça”«ÄʬƖÍì2“>fÅ¿‰‰‰‰É¿•–`~.Ç_žöÖ%Â$T1žCÀ±Ê¶ºÒ± ¿«pdÊS0jÒà°`2 ò°îæ²j§Ÿ9דÓnR—}:º7:·ò·NÐcKTydžõ¡ÒI9 r ‚Ñi«Åî¼e ù7o†>Ý›¶ÚÉÉ t-ZoÀ:[§oÚ›t]Ix}™£ùO7þÙ‹v®|zÖ3›&NÆÕ°«nk«þÿ<¾ê‡&ˆ2ÈÿùSú¿<^©³U‹:“Ô,¥ f]R´™Å ÓzíÖ³@zÚ¤±{¶RϾå(¿=v¢ÜkÁØGþª¥Ö¦¦ÔO7äÒ´ßJ†ê»?9¥ú¼Œ×©fEJ'B XÁYž©ß'**ŸŸ›¨ßÞ¸öœ^ñ—ÎRÿëwÖº‘¬@ááuÊ^¸4à ‹›bÿ¬Ù]é »n\gO1®q.ÕÅ8 ̆†a¨¢ÆÚX7­–Úò«ìýhÏ{ïÏûëk¦Nùæ‡éºz­_ÛÕSÆ©‰2;³¤·¶n2"±8Í^,>;W YSÙy¡P›¢Ý¶´[øÖ¨oNu‡¬%‚âäôÕA.Œ²—Çæ¡Ûƒà$óNOSwi.-:ãeû±´[Ss)72PÐZ´òÚÙR‹”WzËx¹‚—U³¢Óc)@3?­Õn nn_vSФ'h,ß½Y˜\à'×ò|œß¨í?çÚ(±ªUmëË¥‚>c0ãõÆÛ3Á+ÏXfRîK–¨CÛÑ\ÙÈ.ÆPÕ¶Á'!„"x úüCÒ?¾Êƾr‰¼s‹š–YX,Ùjxå¨{«àw]ç6=O'r8€ñÝW-ßú”pUì‚ ÕèßíÝ(•ÁüÞ0¿61ùw©dLLLLLþ­pŒrgçâÏÎGmàºýts0Wu¸EHXE”t˜Iæ5×tÅ3œñBôœO¸ª6’1`¾äI !ðr˜M{‘aø¬%D¼„±­•Ö> ß®Ë¸(ƒ˜ýnïÛWœOí¦RRî©} kã¤rq ]?rŽzìîµ°Éíͱç.6»ÆôóRÍ¿ðΔk¶ì¢9 )m.è8£8kKrTŠÍ,%ñB Ëa,½DK›i» sÝLµ—y9ëj ®\ÅH'@xÖú'O G‡©¿;Ѻoê"Çs¨ÎzͶ{ÅóÓî\ªj­Ã[<øXZ¼ÔÙO²./m÷,©º}a°6ö–@ÚN”{0Ÿ}­¹ÊÙ!ö {×·ñÚY‹re9-òÍÞÅÖWÿ¬¸ã‘|kÏMÍUšÏ»›ÀIûje §/x•8­¨Jcºòã\ÝÇ‚.O!žu†›·5½ “A½áZ%Cáˆã Mª>ó¢±ã¶Pcó@¬XgOŽDË#ÚmgC5eQeßž®y9Õ»ïŽF§u[À&&®ŽÊ’ÏŸ·uÝÙ°ÛµêNV±„5Ї€„:[¢Î–؆ªÂÌä°Ext IDAT|¿œxÐfè|±›Ë¥uÎç¬À&ÿâ[Éè ç€Å$_¯=ÞŸ2n‹hãÀBK±,ë‚WŽøó6G;§37¤È ™Ì³^?ù룕ø¥–@­e¶»:rìX»)¡Biðb»îÔ È²¶áÑ–1Ž–y úø]ÊŸ>Ë|óÑü¡7FL¬jâ3K<2PËz „ïþ’Ã@ºÑî•עëñ8Œ¥¤©dL>â˜JÆÄÄÄÄä·Ç(ŸÜ0óÜ¥fYÑÊ•’ß»v¼N! ’¦ª”Ó’ÉuxNlïÖ=¤ÑšuöÌvt6 Ñ^}Y‰2 „t4[À\Õ¹¬§åwNí{éz‡FéòûNdW–?Ó8^¶‘Ïœ=\ø‹¯³œÕétºœn-9¶T•d¨ÊÌä¢e¶1²ÃÃñþÆÄ²¢IˆÊ(‰qìè,ñÖÐ\gêm=5Z]ˆtií^ûD†î¥ ;O¨Û,ÓVšãue<ÍfÇüÕ9,á5Å‘2c­w`U­B…ëtüܱJÛ­FÕÂ^;ÛM͹Ÿž©ê¼[ÎÉ”§%Œ·´ùy[,WŠK3º¦ „“æ8’½0íy4:‚Þý\ñOSßûݵ-/IRA¯“ÂÔ™TQÕÁ’K7üêoßîù‹8Üs7.”M*òrzʱ¯Êµ0²hÛ¸úEÙµtÉðpöÀìxåÞæR2ØY³4˜u†Ú2ÓqgëôQ)_3…8†xíÙ"M {êÜlg§­Øx[²¸(^‰Š“Æ¿ ¸ÄÙÙO÷Räþù¥°~™¸»Im ¯~—oÿŒß|ÍÎ7¶)¬+˜Zÿ{£åîàâ˜(`ÌíÖIPKUòè˜;YpºÞe¢’“n¦À`’ —KÈiÇ>TX¦Høêšou^£ Yå˜d‰òyÃð[dA@ŽTމg˜éeöè<ÓâÒº#ŠÓ¦÷DÑÂláÑh¾ÎžºqXž‘K󉓪oW‹r¹Ê¿8ÖöXëÈ™aö¥S$` cN ¢€%‰®TÐÿwÀþ_ºÎ>[±#X¤ë~cgzô"\ ~Þ§ÝÔ0&}L%cbbbbòÛcäÛ›’?ªÔ•*ÃWŽ*mVL‘¥`¹ ±çõþÊmÓ…M5Ô4X©RPÜ,Ņ̃Wö¯U•Mx‡áî– Öý“^‚f’ç…]"HÕ6ÅÍÉà´v«aã ¸ú”úàRÏÝ¡e/Wðrм(Ÿ5t/ä–’¤(Š ]º^NÁÙ)iÌŸº5XÌ;”bñ”ÄœMÖ«BU-WvÖ+žÒ'·ÿx_q<6FtC^äÂ3y-kÐËy—C£Zd;êDRqÑ Î ôÕnñep&uƒ2@¸hÃ1êYó5~ ¼Ï ôì2‚¬ƒ3Š$IQV'Ï9î¬ 3ãxï†ÇëƒXøR¶|ú'ÓÝ·¶Â NŸ¬ôÒ6h¦®P9qÚÑ#ôÙËôo_ ‹ð.¯Óé‹ÙÅ\\W†ø‰Áäý_ òèÐ%þ&‰ena9åí +¹¤P;@å¬(­[µ’ );»XÀjÜ•2çR-vO9‘µÚ‹l¿>Ý´SÃWK2H ažCùëŸT]dɶæmu&è+OùÕd³6ÿÉMnðYÚÛ—fó&øýƒüŽÖÒôöäã^Æ¡‡™e0h«ân´çÖ·R]½ÅñÇvY—’Šks`úAH¡JTªøðéÔϦ±]ÝÖ–:Ñc)•Áaþ˜ë¨à6^[UgËjòE‚¡6v±]lîP »RÀz½ôÿý ïÓ;Ê·ôݽ¦«grB`•õ¦ «÷Å‚vòDK9¢× Ò–¿x§µ0½üØæªÓ†.ÍÙ¬*`Ô\η7œ?zÉú_ÊúÝÊʵ©=2E½t†ÜÛ¦ó!9Z§Àßï§ßGÆ@$€ŽœÅº>Ì—61ù÷Š©dLLLLL~k4x3wÔ0KzÛŒ¯¹¢x,‹yd FL |€Ê dãFW¬6Lqy¨JtƒEXKÜá(éû§¿yë‚ÏQÉ'Ëý‰éØö½Q²R­•…Ež­ð¿šušj¨:ÒtCÓÀ0atø Ög•B,±8™¶.¤§—+ÖÆšËóZÈ]M”lsyë`‚ÒeE©TäBFΖ·7b%…ÁlŽG›³ ‘ŠÕÆ$K¶Å¢5/:ÏWkP¾\22®ä¡2)äÖÁÚ"žMÁè²Ð,Dö:GV\ª ©2Z®»¯e-D±¬ûï-½Sv»Z¨Â4aVG$=}M™°[|æ$K6Ø÷õcœÍ‘/ \þÊ{f²%YàØjÆm¯àMDKíôÜB´am…Íïo‰ÍsÍn)-\Î3ÁNµÿͪ4åŽàžXˆéš ¡£¿€Åžä6pl¦qWÓzaà”ããЪŸ=ko$›Wì-á::€'`!Ø]>µ@²»Iª¾eö­±è+WÐ82°ÕB ŽÔ¿ð°úÃWÈ'ï©xüSíæºMÖ°ssÛ^tB²Ì…ˬHûÒ>Dâ™×lI¾ÛíÚB®|ÌÛÀffpå:¯0UöXªÅAÉw„‡D=•m™(Õ·ÙcÀ³Ïj~7À¦ãôñ kcjmpG>\Ù ÷tkK+#I"XæÞΔ‹*„Û£Ò²¢9\Ôñ+|·@U$ÊjÑý.Ž¥w $Žœ©>vïÍF´aÉÒrÖ53[íiÅc®§Ý¾w[!•ÁŸ¤÷ö«9ƒ€WO©ÛüÈïV‰œ\àÿñ(§ FG=vç5K}@A?Ï¡xæC}e“¿˜JÆÄÄÄÄä·I›?û½söWmwpa¨Ú%2À‚’Ðm'fì÷9E ¬)‘UP¨ƒŒ½{BÆuÉ/Íxïm*ú•T–üÁÛì÷¾V(+ƒC¡‘©&Çê³êG¶_}OÌ'¨L9KàQ‰V&_œÂn '†í1‘²…Ü?ŸAú¸"Ër!.eÊ@8I=¾önŠ—þà ¬>ÈílȈªáË>ª2C‹ädÞ}0Y£V‰ŽŒÃQÅì0˜dy'}+{ŽÅW·­†¦žsÝ— ±WïXŒDŽî›]ý‚a·ð¥ÝåïuÖØñÿD£©$“V”ÍuÉ“sŽ]Ñ< r 6[nn?¦mX &Ìe}­.Ág+É@/ó‘ë­Žâ`¾‰·à6^M•S) ¥ªïìÛšÕ•ØyõC7Ô.ÿópë…áèk¬ÕÔ\ÁV/ X¥ü<Þ¶vH pœ0d¥ZÚÒBfIVàõù‰˜« I‘¶ r×'Gb. 0CÇ  Ñ6«Qá9¸ïýùýø•íÜÒñÓ9K­ÏrëÆóz¶͆I2X±P|Re‘ÄpDZ^jjåÃ)wD+.¡dL¦êüi¬ýÎÀr§;RÚæ<]hµJ¡»ê6³hé®×êÊ…)îswf&­'Oâ#xýݽ…¦ÐMœ¾¯’Ãn-O¡ÕWZ±— úÇZò.*?½Àèªq+ #Þþ@T*É»¶übÌÖìÒëêYšBÎòù%˜žÃ¢ 73%Õy2c ­Œt¦2»ÐØÚ aÖtÉÆóœ¦\ÂPܵ¦¤²Ý„óù¦f‡¬K¢Z(<±Óxù÷ÄíåÇ\‡Óf”…U@ž0‹þM>Ú˜JÆÄÄÄÄä· Òd_.v>Ó‚SØ(æ}Ðy~V¯K,É%Fr»¡ˆ!=™Ey™~MÉ‘†\‘(¿E¶¤h¬–Žüøœóÿz /¼Å­ôͰ8¸Å´äPš¦\ûqWŸÁ7Õ¬9“hœ­XËË¥À_ñRŒ,C¬Ü‹Í:ñó¾ßÝ› x5¡J¼ð&Û…œÀþþÏm~¢#¢48Sqkmæ ݉‹>º¬é@Ú³"Ò)tT&U²ÏÔÍ[ƒÝH* U!W5¤O8–°ünóÌ8D`RªßW>‡œ…ÍS£eVûìИᤠ .9µqsh~¢XÈ6õ·,*¿½|(j«Ø}Ö…¤b\ÙØq.6»±¾?¬ÿ½ k# yË·ÞtþýïU. gY^Ik#¥jÝËß-ly0×r]}?GË­.áB<²³aæêA—¸¸È5­¾Àñ<ætB0 ‚@cWðÈVÊf·—K%H8£Ù Œ.ËÀh² ùÃtv,Tˆ-;ë)†TŒ ,H€h=ºïã‡/=Q$ä}[ç-5Z–ñÛé<”U©´ðB>îh»£6ûfBÊ v؃u’TAÂz7¶X!p<ùTýøŠ'Ä BÚêœ<\ìòÐ…•øØ…)n ¹ð(‰óA$ú[ ¶W&_š±¿9îÛÖXêk¸I) ”Àn7JW_.ʶ|2çh`ÿIƈ¬´\ýá5…+MáÊî¾´ Q?˜Ý¸•ŽÿÝ鈮Hñ# X\VVõ9VeØ¥Xà¹Ëîma»;Yã”^9ëÚÝLÜ{y¼íÕ¡ðƒs8ERåŠôü¹jw“ °êÞµpä,±o?¥½ÈÿÉÇË×Ö÷ "Öú`“å°ÇX›±‰ÉGSɘ˜˜˜˜ü6á9¤Kòcmߟ迯~‘ÅÅ¥›«¨M!5ŒÅO&k6{+“à&Îo«wè[½©]îQ#EM¦u±Ū#–*g¹¢;»¹›/[qvÎ 6߯Åz/«Àž°H!Ŧ e’®zïƒýNµ ÚúÒ©”,k4hnLô’PuL$"„¢·=1•òüíÉîO LsŒÌÑòÞ†Äé…ðý% ‘ÔIÇÏû¢¹êH¼èÝÌ]N92H|í˾)§Ï«$Zco¹„…º' û6–GcV¿[19ª.¼Õ?]•¨Á™ÀßmÝV_jä9æ:‰,²…ÑÂÕ—‚Zªhãõéyjyi/탳³åmay¢Ü>]võùå’J÷d·mèÓ)}8¡u¶V?ÈÿóSÒè·$ÓqܰtËË'îˆißšJá Ÿ4B;W$Ï-’Ÿ»sDœ,c1ÿO×'ñzù l|ø§tpøEe‹†Ê?3“)˜¬µséé…šl!šÅTô¦Í¶¹²š…çe¢%«X+kÖÂiÕÛ¶‹ç M¶™§z?¹«*+ørýÒþ¦õA²‰YÆ¡¥èd±í»3ÛŸX¼PÀŽðêý'tNð^<(k2FVˆG^ÿø%°{;í‰% Ö¸u{öµþþkAàìM+os×i–`jX+[X2¼„íÎìgNŒa’˜øûÅÑOï¬â}]¶$Åm¹«–ÉË\ŽëPzÐ|î¼%üA÷OÞ?|áêÌ…¦[«šÿ=ó›7µÿôr\ÌTB¥IÓ°WÙÄya(MuŒÎÖ‹†ÛZRû;³Ÿí=›Šó´¶¯5}4»´° d«JoÐ ¨õ€¢hŸàG[˜z‡6I¢u¯BàèsŠJ$ï|PÄ«ƒK‡s³Á½FÈ]›«» ²è!mÜVë8¿vÜeÖ+|k˜Ö“…µ.ó8‰r±¼)VF¦ÞÔ툸޽TÃé×6³Mç­IRÁ,KCBò(®5€ÁmC¹"ù{ÿèêj±ï;`\¾¿@« Wº¹Å33h$š€‰\¸a’ôO‚¦È‰¨ß/yÖçž¿91ÒænÜÞ=ùö{/Fe\„þÄ´çàz„˜Àš;·áç“n i,¦käúœ<£okMdlVdG&z/vd±l{DX?Qö©LlWHlôüŽ‘dOPCq ©h£AÍñrß±(Q.ŒbÛûƒ_yš‰–?³ç¼›¨§VšZ©º»­vל…¾qzÛßž_%¥3ç•/Üxêc»mÓzeÕã ¹Ÿ|2ÙÕjþ#°eÿï»馭‹¡½RyÇ!ãðnÆñÉ88888üœíeOÔü'=ù{ÁgíÎL X\mAŽQã\­nºü´’cY“»âÊÎSíj“™Ÿ&_š%îÝWýþ³®ÏÞ¨®EÔ(&›W$ÕðNœåugýÆb^¾¥mþòL ¨ÚÒy+~wbí׃Çü×)k3Šúñ\‘ ù @öÄbÓ6øƒ²À]±ã%Ì‘ú9¯§uÃ]Ã`*<}²ÃkŸA@W«pd¹}ç1î9ý¬À«V¥r¾yíǹÙPú¤ÄÌÍã;ï'go£þ©Ä ªMvJîû¸¡ Ý`ô6O#⪭ùC €×Òš§“è>ä©¿0—À°–N~²(\Œk쉢K"ˇ›Ã×òç&žÅœ|îÜŸ~lÝaE©ÍÐñM—”½æ¢{|õT×òke±#íKlúvxJ½!žš©„Æ¥LŽn$~Ørƒ%ZkZ,Gª8AQdªá‰yêP.}V @6ê¤Ë‹j´¥ášF“‚iBv—éD¬p¦"Žz8æàQå…ãÂÕ}è%Sµ©Yð“ÙÁ[FÑ@(s™&‡ž\ e«ùt9K‘šOò´·µ¾9ÿp:ø£3kª·‡ÁT&¿êce6.Àz=‰æ›ñÁ ïaŠ2aji0<£ÄW»‚…\C|j1èä:õU^œŠ# C6€mŸœÄöo#^l0˜ªÂ†ËkB|À?±ö³b°óÕЩ‚[lÕÈW“Òßê¹6"ß{mÉí‚ùjèõÕp˜Ñ.Ì×åÚôJ€;sÎþêó±h„k$W¿¿º\üO%:cë™`O>sñ¯`u÷‹[HtUVÌdê§>6‡_`ŸŒƒƒƒƒÃÏïp'±¼ø…Oh‰¨<äÏ ¦^T%Së 3ZÀ5fJ‚$@™ð@³nœz1M³dÔcüÖ­Õ““lAcmÒùrû÷’;~´24U $y÷H㣽gn ŸŸ(m’1°ˆZwÐó,¦ÀãGâ€c}‚d¬Ï|åŒÞ<Ç}æ½Êm×Ô¾qÐ{éS³úÈ|Ÿ+7‹uýú«zJm¶=ñ¿ÔpûšŒdÒÞÄ\ë{ÐÀÂóÑâ<\IP¨mÁƒ×Kˆ¿tP¹N¹ñ5o €Î ¨QG8=Ww‡Ü50M£iXAv=HLǨé󢚥6|ÝÚ¶Ü^Õî–gK«5ðÏÝ_½Ú2FUµ Ya¬]ê‹Nýñ™»Ûs¾ß¹t‹aZÙBù™cØ'ÄÿrK­µ…†wÆrž?ÐUªaî¶^tY`üüŠÈ5 ¨«Oái­Ã—ûøÐ)‚Ä+ž‡ç¯yquàåEîæ®f˜©N®ÚÏ€„@Y¥\´Æ`jÖ×sºÑ7î.HdE1Ùóåö® aܘD6þ†šxä…Æï¿/Ó?H½XúAr>ÙuþÞîó;¤J2ƒ‹¼µmÈun¦þìK[Õ\^štydXß–'Ïs0> l}ŸØO7ánÞfç Ž[Æá]‹ã“qppppøyRT¤"¸¬ä̪ 4À±°G?Tì¾=|®l1)-êÁõq~æ°6ŠY¬ (b½¡XeV)¾]gZŽ4¥È8š®k1¶vShÖÏV@lï +Y6B~ˆzan™ëjÝ0òŠÆqa8½ÂHâî]«—¯*Ð3'EYÁ¿ÿ&ý•ß,Àu ìÐ1Ï­;Ë>LqeÕ—lWÀe0.#_‚’ M•ú“§Œ•//uµ÷tUthX$žãfhg묡¶ÏzÆš©(~l@†ÌŸ  ¼.ÅlÉ­“‚N6¥æ›tA&—ž‰»\%¾Sït7z¼ù_áiíþ©ùrè•t,Àè…¦ÄSêábàÁá3oR£JA£Jù¥›* û:ðåBìÙ¯­¾ïWo`Ó¡‘lÚ×YtǺ’¯ \26¦Së¥áe}´åäT9šÓè†B‚Z“¨é½ó”÷ðŠVÂq@>¡¦äˆßøK{éèK8ŽaÞDXÐ 6`X#0ÀA$!áòâ¦eL™}ìp `ÍìÆÀï2yÃQÑ"àH54TŽÖÁl j“ÞÔµa¦òÈ„÷õ% ¹ŒOï8Gèå‰â±nU®YÕ­kŽ]â‡Sî/Î5À\"½æùµzÊ»¢Ëßz­}G³ÀˆºI»I}‹rÆY+Ò Åö)Åd¿ôzÿP;:ZqÄ“E–õá`x[XŸ¬"„¬5UmnÖ ìç&¦êí/dÂÛ…Ââ¹LÍóÅ7º( ûÌ­‡ù¿ò"°!ŸÖ4TÅ:Kx.>m±$C0AÕpÛ48·\]©Žo“š&ø=/¿ÑÄv·„èÌásôÕé1?~ «7 ´yw88¼Kp”ŒƒƒƒƒÃϓㅖ÷‡üwkOvaåjcÂT­Ý«, Ç…úéf|”_eqe˜XLÖÛ»%u¾Ú’£•yä‡Ð,ÕëÁî©Eô©ËçÄIŠPëèÞ1ù‘CîÏ]T2:ÆÎà‰!ëäkî£+Ò¯îÞ´*³¢^ôgü¿ýþõ࢞¶&*Y½d¾`¹¦Ì ð¤ZGL"ÐL•¸ $çÊì_<ÿƒ[—ƒRóò©0 ó &¸ÜÔù ¹RMê'ëm3 +Ç?+ü`^ï¼§«šŠnõ¨Áz _—¢²‡`Hz1ÞSmj?žð{Ü̲ΜIù]–®FÕ `¢á.-'ü´>ê“¿“ßëM]_üãï0×ÝÖwý]½SþÙsî¹s7|Nür@ •@u•„A¥IÀS¥NAÕNÏ{çªØ!Ôé6D50!Ôh€"‚ª’4\3ÚD¦Ð®Ô,ºýÁ"ÉÅÚ—OëĽ×4ÿî_Ët탤‚óiÍ3¯ú‡1MÂ5­ÖxéX5j”?¼ÞŒ'¼Íʼn”Ù&áñ­#”œuÿ·½]÷˜z—Ü›½À#ØÉô¾I„Úæ–<ï%ãààààðs£Ð” ÝÖš€Û®k~ãÙ`ŒuïŽbLF¶Ù7ä8A‡««jT6™óEr%ÏK¬½¬X1uA/֛ãÚ삯+b«‘Ë­U†ãiܲ`Ýt ùô¨ͯp- ,“ ;å†J¾áù»nŸÛrmcWWC]­y 1«Ó]¢ÜÖ“gc\ ù-ൊ˜˜W~ìXÄÍ(Oôüþ-© ´9¼gµî#”âëì¶íi=S[©¬¥<|ÜÕ‚Õ„ ÒT[(ÛhAé¹PW:ÔM*­+¾Ê2[8áÖªí)û»8†k¾(>Òb×BKZµLP,¶¡1µr0o³8YƒÉ Ib¥•Êk^Ù½ž^r*…Íž§í@îOÆS:¬B€Õ¼¬‰Üz¢E«OWÌ@Û˜¥®úy©0“‹ŽZ‘8OÁë«á©zp_||XÓ…”$øíJTdÔ§Sšâ“–@t{™ ±ñ+XÞ sLÖ³Þq§ ³°ƒ§"÷t­Þ°- í!o£HãÐöÒ¹Û¼5 ³‘-eÌÈH˜}oœ—[vµV¶™ @ЖتˆFŽVŠ›¾šg'ü÷ìXß6’•Cç:ƒÊ<ìî*<ôzôšF ¡‘¾z{¬žLE§<Ïçîï™ãH5¥Ð¿1pú¿< ½®qõ»' ìGkeŽ UÏ;ý‚°ô/|Ê<–kn ¹Üxh1ªÞÎ.–L1ËD·Ýê}v2{s¬%Œ×F\Ëû|e¹ Óóè•ãX%Oÿö/ã!¿uì0uÇ~’>ãzþÍù÷Œë‹.‚¡yAX»VDZÛö;à Û/¢s xÔgWªëVœä±ªÔѹ9[ra×ZDªTQ± ãÃ?½ùŒƒÃ/"Ž’qppppø¹q,¿.´Ö%pÖ§n-¼ÜlYHâ±hã²9Ó³¤»ÔºÜ¸¡k·I“I¡çšeí/ýUå×îÄ.°ÔþíTjB @mÝ*Å‘Èj(¢âÀžê7žö=Ø¢ÔÈCØH6 ö's¶~™}ršÆ <_F¼™),WÆvqAìágèOP8!Fs»Ñl•0»üÀ†½«X쪩àî&ãš·ÍÝvQhd}å´¿&Ðs““âøMñÕ4“8sVúŒçùŒ·«µ8•J¹%œ ËSfP§Xb‚h]u5Š®zNL/&Y¢¹7Í®t \> €§T? íböƒ€ùjèÙ\l—§àÕ\”€J+.(ÇÉhøÂÈÎïÒ;ÿvÒlwQjéœ~%Úr•f¯L׃EUò³7ˆ\äzW 0LFdw9³¼Qš¹aMœõ¡z[W2«†«[ÀNu†”–PQF ²,ƒJ`ùÒa]íÂÖ¦{uÞíOeS+XlbÅô\š_`ˆÇÊWøŸ|4)¾§³¾­5ÝÔèã‹‘<Ü×höG³~¯.»Ûl„kf9­°vb¾"Ž]î@sùŸhp1—’òPõîhèļ÷†8 Œ iWø)ÒF´›,ÀL£µ•–ƒžúR%üo‘#”_Ož\”WQ {OwzU&Ük`t´ÔzΞ—… ´Û€a#j)Ë]·¢1!¢6À.oë.?•´ûŒJHÂàäYô~ˆ~ý.ì󟄹$zù8}ß­Êbƒâ½ÆGÃÛ‚U{YÖÞ6¹§›ûî¹Àï\¿¶yEwK„ê2V¬bm±umÉëR¬`Q?€äÅàÊbüaï6%ãààààðó¡ ‹y…: e/XÓ–aøW_é½aD­˜ôžù8»¡ ;SR½}­ðé{ø¯=…]ÿQÌÒ¡°€;0̶«9à9ŽD¦r™’8+"Yó+l‹É3ðòJ×5‘rеQ™êrr%:]‚Oì¬×³ïӦ͠Žù­ë·™_Œúü:ˆ”þЯ¥÷ï¯75Z6ج,¾Pniu#Þ‚«ï€³Iml¯w!Ú¸€× Qvä¨{|™pጯºô’ͪy’‘…P0;-7‘-‰Ýš­l¼×i¶ä‹—|q€qZWÜeEKÙ霯)¶ÊîPÉߥÀP ‰áX]g†‚ɵÓ)µùž©¯”vÜ~Lè8[ ¡FÝ«o™~:ŦwÝã;|îÆß[¥SåÖýÑ GÚY¸˜ï 3VZÂiF\>IÎàZÌš×jI[ŒõvžºorU&0ËŒË0p˜<ˆ ²´¼×f¤«¸ ä"޽ߗCòj•1dΡͭo:ÃjªÄÇü…zàBÚô4xFßÛ—¼¦ƒÎV]GæB¹&µ«¥ÒÒN4Üþ2õ(—‘?Ÿ’n¼ÂKCÚš¿¹P»UX9µ«#÷Л-7MDRæý0¡`xdMÛý1ówÏBÙ6<˜Š¹3œŒxígR±Óz,‰!’ÀdÖåâ€G €Æ"Ý‹Õ$¬º¾² 7ìÆú±uÇø“‡ €¿þm\à"A3}„~élpW¨YÅ”Fc˜uý8êدžÆS¯–Û½Äã'ã»6)°WTMìå,=Þovµm0ó¸Q2MŒ_j݃}ù›ø {œŒ‡w-Ní2‡ŸGW¢{£›k¾Mæúîå¶8ñJ%>Æ._.cÀgçêšMchèšøg÷k>BSmÀÒQa‘`J 6–aZ—Ÿ{`Oµíòš%Ϊ>·:‚“ØpxÞ‚Åyê·oʈϽPÌÛ5³Æø1Òi½x—›`ëz_[÷ñŒž•îŸ`Ç<úŠëðKz.©V)ÿ¼0:¥û"Wf4akRmÖâE›v ŒÖ5ŸfY·{Ó°I5u×ßœóío)¯uÉLÕܱ‹Î½‰eÚÀKBK\ Û G$~¨‹v#yÕ¸B!ÉM˜[„Õ,L¬bÿó[Ö‡ïÀî»s]Æ€À¡Û¯ÕŸ8Eúx£¡3A£¼vÜ#XÃ]ćo³ráìdö_žæÊ,üLÌ-a± î¤û;¼‹q|2?ò OA¥;|W”–*é^ Ó–™F ÷Â\øþÁ*Omtl¤Ê–’%¾½EÔ„qòHAWl–ÅS7K«´/Æúce[Æf·íá=$^™NçÅvŒ„[ÃçÞjm„j}z÷tÁö¤;ä±òuwÐ}EÚ®Qëë߃‡_ÆFo5""—Õ^=Á}éCë$åñøýn×*ó³ä]Òê<×W§\Y'«þvv)_á$éߺµ°D'@#hüB9›vWËçvs­TòW¯§µ(©ª@è4—ñ%À— õÝ.Üò+¡åÓ1¥b°RD˜ýZýƒýåÉðüÓ«û?Ý”Ö-SŽRïíyŒ¸.€*Eìχ[õŽfÈû–.wÓœ«–ÎÍe"½ W`ÏÜCù–ªwÝV¾Xf p¬ @Ò€o~ï™#-ÊìCÓvDJÛZRröÖ‹wš&€-•,Ùº6²l1Ãøj÷)„KæC;ôSrµžÐf¸Þ-)°FN¦yFßiúóBÚô\ Æ3úh{¶'RÎV„ÓóÒg11}ýô¢g°ÝXÐ^ÜÒØFóƱâÂŽDññÓm·‘WÄ–¥´h?]¨XáC³äîYX;8Szý0qfªH¬ø›:®é žFQª^°Ýò@5ƒBM`mÿœí× L°5Û­iøŠóÙ´úÚ2C ÔmýÊŸþšòГX(¸9Y%4÷ P-ÞFªæíë+)\Ö¯T(€>s¯5=/ÿãAÃnÒ×Òc½[û߆“çÉvnÑŽÆÁá]ƒ£d~]ŠÞÞµ¸é`ÓdL^+Ä÷Gfýl¥[ŸX }ÙgÕ|J56Ì þ®8™º^Ze\’F¸¡¾ÙŒÓ¥o&ùørÈÏoLl¹*¬¼lá°hˆ€mÑÊÑ•ØSWµ£Ø=£rɨÊ|ŽË•¹PТ]¢(y¡š%ç_ÇÔZɼ¶Äðk2f 1 x©òKKÁ¿Þv¼Ä®Jé¥ó~*; †iæsY<Øa™Ñآ薟T3×¥¸8æJÀ•¢ƒ¤uE0šî̇ÓO?¸ñ³“Œ¡àµbÃã_ÌQêÝ]ç¿?Õw{bñSíùl‰}ôhpü}#åÎè5|½~W¾¼q¼áò- ÜêA߬FR…L¬ÃÕ†½~2ÕËkå”îò»­Mó¼–í½É_èûá’»ÀFäÊ$;ÚNS¤l"ÌÒ@kj:Â+*&²œê“l®e‡y^o6:ëgçÝ#uœ‡­àY0ÈW]ÛZ*Ï^àÑum3°æ¢ ë‰p¹©Ñßy#QM¡ ¢ûºZC¨Í»aCÏJ §I&ØŽå—ºCú+g…í1^UÖ89ÝÓ"ßœèÝØ–ÈF,‡d>v&-îÙ¥7uÜ´1¹f¾‡2m!m»D–ÕW g§ê±Ãó4™-œš6\ùáíjëÕ±3^QéŒF§*(‰Í¿|‘b æª ´&ÐOk‡ünôô›d9àý•¾Ô‹)ÞÊÔIxFÙ©MÏëÿðCêW`ãÃëqb…>صEí2·€Š•õ1sI 0<pBËÞÍ8Ñeÿ^òdÛWç¨ÔFWíýá¹µž0¡zwb2¥z¦ªí—ÆœÃCv®hPAÆö‹› "ÓÐŒyE€–íŽ0ºÌàª{°¥ËZæˆ-¼¬ÞKd–Kž¿>Ü»&c ä©ufÓȧ^´Gº1Ä᪎Óàw™ËZ tPÈâf_dŽU{^š¶"Q~C ØRˆm”àñ3lGk±Nn(õP,鯤À6 #·Ô Ü56~õ:Û¥ÆBqk›^§¹ÁaÅBÈ=ðé/ãï—ä|[î|ïÑG[fÞôæ—€§Ôbé'gÛ1œèŒ5~ã@ò}#åÓËâWõœ^ ošç=ÍzuÓ%è ë´² !è=þ¸§^^óɬ(Q Ã4·¿ÌMð“ÙÁãYô ʺ ®ÁJ¦ªë扂eQju-…f 5Y¯È<Ë´á%½’ó—æ]CuRØò–×»MˆH2Øèæžü‘¹ÐÛ –5zI¡?¶kñþ¾U{©tðþðDûëåþ’.±«9¤T)°=žžÈP¢{ãêËš›,]¶:|N³dƒ²¢‰*I.ëÁ6·na(å³”U+hZ UòÔ´xjÊýŸþIzù¹ê6y׎ÊþÿÑ»™èè9rPd´kËê<þÁŽÉ/Ü_ùþ+FÌ]_­¹.ÇþêèÐ×ßúÚkO/ˆK¦8ÂWð6q]uàĆy¶¦gþê7õWO‘_þ‘+¼Ó*d'/P7ìp2ïrŸŒƒƒƒƒÃ¿—³)ï{›½ K•ÐÁtôÞöE?·ñvœ£ÔëB3Ï”†qëON€‡Õž=Tn}½;R\d7UZb Äš #…ÖŽÌò"`Œ‹ðøñÕ‰×{ˆ O¥?pÅ)k®˜¶"{(rÿ ¶;OkAÁ\ª„Ú¥u+üä97^‡+X¥ j:' ·Ž'Ž5”ìjw'ÉžµÁ«–»“Úˆ «€8»Ð<”ÿC:C]!d±AïòBQŠféB=¹Èö˜¼)ü)ê©¿¾è­ Ôfâé¿/ÞVH YKOëôx{“£5U¨Åj.ú .ÐâïãŸÝþ¡áižÑ:£ÕÎhµ©Ñ3ï×÷÷•þh)讫L”¬Ë¶ilº Ëqf ìoŸ'0páQŸ°¬trº0lÜ»]¦ìcóBíöîI¶&ëod‹®°F0¤R&ê%¥½W-SI^šœ15©:?Ýw@Œˆõ%CÎ6HOÚœ©²‰D@¹ñííK†Ùv¶Aæ«® ¸uc” Yÿû:ª—»hfRÒÑÓâs(¾¿Ý=Ð^—ˆ  ŒDüLT´—ònò°¢D·ìS ôí‰õâÝ„𫄝ë±,ô=Ðírj7:Eƒ VLV¨i­ÿ´Ûˆª’ }ù3—oþtŒN÷Y\Ób›¡U¥µ¢w·0õNWö†Dݪ)×uäàN€¦Æ ÿñbïƒúSÓœ©ø'–‘R`ÁŽÌTÈC'|m!ÅÅ[!ŸŸ¾×šžÇþÛ?ºÞΔ0ßÂ's‰¹ep|­¼¸ƒÃ»GÉ88888ü»XÈùÙAÏ™'‹¥Ð+éXÜm\•a©¾Ï?1­¶)÷û™äïÞ£ œ-¯Ö&VC;br«×²ä+ÆÓ8–V¯6Á޵u¤’‹¬ä× KØp;•Óňœ_:ã2Ð`ù0Y9ÄâçWø¡VcͼĮXêx®eMÉäòè•cèóŸÂu`㣞'Žk»ï Bò…£p4ŸÀ.àí—ŸKÀy>+àË/O?Z%úd>_!ÁdD{\nRÛðS‘¶U–Σ®4Á`“Œ>WÆóU!(^qçB¥?ô•÷~j-1†#Ô¡sχýL•#lYŠ‚%»vðÈäkÅáÙCFÅþî©íF.{ü—’IfóMµ‡ãÀ>0««pÍv³É×ë]q_zqÛír’<ùHÍ͆#ÓP10’õÈã+´_ðÐpº$ÄÂùÉ¢+¬Sl“šŠªeWÉod6¬‹¶ÜÙœØp3ÜòqÍ@tb¨P1À|;+¢’üƪw/@"¨Ô›ä-½ù#sÁ»¶o­d¦K®ŒÍ^ú•gôÑDn4‘ËW…ÉñË/Æ÷EùÁx5(ɵ|& Ü5ZþÇ#þ SMÍȪ¤AMV‘*ÍñŒ/jâŒ]M1Ëe£ îÓ¯ö߸ØÔèó©Ðt‰üËZ"%StÝ»§ø6ùH,¡°„â£Ë ˜ìR#|¢ØºÜ¤^=s—äm³À3Z¾êêôªÉõZGG>¼= 8ÙíÉ>úFXr[É,]¨â‡¦Ýý>#"™~ €cèáW0 W§çÐøðÕW^÷ꜚfn§í~qq”ŒƒƒƒƒÃ¿‹g§wo»¢dÙb1øÒJäŽî…—J=~¦rõ),¡ôrɃ™ØŸô à¤Yʨ±UD‹W* G˜¥)š¥hE ÑÙYn¨"P+Z€»Êßx6ð`\vÖç HœB뱞:æºÜ!³†@©Sª{‡*±vå¿þƒý_~MXp¶ÞÌVq á EŽg<ö™r8äU/?·1ìÅH¶Dd±âoF‚¦Å3pe>‚fãÈí1[.×…u‘# J«µzX¾–›X/lÀ³z‚W×Ú ^"¸0áY<µzQƬÁê_x®<ôþÀ±µ#¦iÔj‚Fo iÊÎ\é›çwý~Ç£äÙç Þ+ûZšR˜oÑ»CÅ ­)üw]._ªé ·«¦˜^ªì!õ”õQ•WcCFŒ•fVmšmÖd0\y>=RÔè_í>Å]V°¡A‹^‚óWÓE1Š,äj–p«iò’â]wa¹›®ºTéÚ!)YHN `‹Þ–– w!½¹©åæïˆÑ—U¢¾æáIïû®Éê´¥[f±èóË<£]=IP”÷‰òήüLZúÑù¸¡X{µoâ.s¾è¸2CœÌáŸé]ŠÆâÃ×u[-¥§gªW2´Š²u“ÜnçõÝ­•n·Úy¯Í£Ô r½SÀ‘j¿´Ô/Áõ!öÉö¤@{Ç‘ÆüEdZÁæK¥ðŸÜ5õõÇ™ý·€òªÑޱž&ÜwÈ .7±z’)l¤ÓËžª •zóË߆½ãöøÐfY˜+Ñ€!ÿf盃ûâÀÁ`°««ëÿõJÞm”Ëå©©©±±±MÇÙ¿ø Xøä'ÿ_,ÊÁáçÌBÆÛPèk:7® “Ñ;z–‚®Ú¡Bǵ…-O|âYúù#ÍþvÜŽ´ú¡lêX½‰~*@«E7” /ŠÄ‚mÛU À4L·ÇCxUÇZÔ khʆ&±Ó— Põe(Áz Ä©i‡CC›m_Š0E’hZì‘—ÊC4_«„7‡a¢‡/—2 û%Œ¢4iYo’ÿ†‰œ1¢.Ò ‘ëVxŠP{ý˜õÂ11ÏÒ8 mØ”6‚€×]’­@a¦äm»tÜ…7,‹~½ÒÑ'lÈ¿å4Oàñ­ÇmÇRÍêâu÷ìæü?]ÉéÝâüôf‰h‘TXl˜$ó/+×ôí’,ŠgE¨–Cç¹µZªcw°¹ÔëÍ'k¾W³F»(ÂMÞ嶦*Jˆª½©tõ±É3z‚#ì%_¢ÛXhBd¾‘u÷Ô[cg)⊼ '1 B™Ó…@7£©B=‹M5«å®=F½m+Ç‘~¯‡Ä.EêØÛÔL†e]‚ 7ßN P¤Õh¸}¼!0úá)ϵý%ÇÞ\ò÷G7ßõ« ­ÝªÄo®¿|ÙTvÄÛˆ7½~æÉ¥Ð™ |£ŠÇê?JÆöµË?^Ü«]ßoš6ʦSé¼ñüjÇ™eb5‡ª% 3 ž´¼aæšöbD’ߘdQ,ÔÉW‘ ú§ˆ±-VB˜íqûèQý£×åÚÝõTÝ}® ž“¥8£'¼ f?š“õ†«ùŠÀÒÈëZ4…ù$”hµ­¨ÙÄÎç]Þ-wÛO¼H=ƒwÛ4 7±¥ž,ºÇ{T¯ÇI’qø#ñÍoÀüÇ?ÞÑÑaïHŠ;>‡Ÿg&}÷lßHXÈû_X``i-ûÙ[×MʉL»oÙ†-»ÁXâú\ñâ™Fwݬ𢠿¢”3…Ù¦iúr5 '™ížòªJ¬u˜‰`µO_³üêT»ÔsÅËé>âþ³ea+d`åÝ`fn éô±gûiS5Q(Ž ´–ß ¨¯œõŒ]V(Ã~Ù É„«¹X¸PfþüãEÍÆ&fÉ/ÿ+;Òiu›¡€ ŠEXþ•>½éêÝÜ¢¥£çVGnŽŸ];’5çÓÌX7Pš=û²É‹©Á=oõÌwºgŽ5z†×K•¯þ´'R=7ÛuÃW ƒMд6ªÔ)Œ¥ûù¦;ÒL]]'aÇSÃBýzŸJe`qÅCèi#ŠchÑ ìàæÃJ¼¿¦3wÓï­¿–÷^}¹:ç š–K.5Ü){Þ`\®¥#•–ñ¦àrsd³ŒÜÝäôq£Þœë¾qí”R¥ %Ÿ¿Rz;1Ðá“35ÏH¼v¹2–ä-Ý2'+ÂCWW¢Û ‹+}âòØQX¬.‡ž8¤ªŠò,¤Ö¶àê‰b¹ÂŸÈÙ6 Ðj­NüÑþ)žÑÛ"—…&"k€É7L†Ã¶p½E}(¶»Úª¡j5[* áõdäÍ:ÀÌ)¢`Öê­&yøœ’0xøÌ=æôþõÇÈKΙt…Âyº³¥ô³­ÐÁá GÉ88888üŒÌ§Å° ¥õh°…œïù¹Ð]Cɵn-EEêå·Nlxä96âƒï¥>{ ¸séŽ`nÁ?Ð3&›FáåÕÀ]±|T¤ÒÕõr42k&¢ÀbV¡üDi‘ãì– ”ËÂV¦íØ ™À/¯eËÀ¡¾»·)wÅkiÅ`á—«ñÊ⊡?tß+%E3,l®Né6æ A¶©[" œ™)_Q'ª ž¹«V%B®-æp@6ÉÈÙ¡€¾kËä°—Žé"±wÌæ8œý›ÌÖh²e™>²ÜumëÄüÊáIšÒ”ÎgÿOiøÖ|ÇÐÛÙJ±dwóþkš=UGØË_¶¸¶„ünïu IDATnc,ÿþƒÑ KÙ¦aÙX /$uwœ®O[½–Ùp˜fÛ€l°˜Š ÈF€@ T@@H`4Ø>ˆ~r„ý\›çó<†Ã=KAwm7s2{fNøê+½ 5ê¶D%_.ýq]bn ÿÐ ðØ™õ_ƇìÞ„=½€ùÛäHšmz~koþÿ£d~Fž‘îݽ^¸v!ë}v:p÷èò¥¾²Ázˆ­_]Gýø Sä@جÔñ¹öÅi²³eõ“€¬äÍl2 E†@a& €‹Lžp1ÅÐ$[ü‚\”WL¼ogéϼ¨dž8Ëñ—6œEMY¨†ÏT£þâ­Ì‰ÿïUù?ÿV«FFE¶ž®™²±®X´¬f·Ð`€ÀYÉÌ•èKj„»Ö3L4ÊÅ‚ö£ YMpuµ£®v[nbÓ øW¾£ ÷’Ãjçܤd8RÝH¾0—8³ÛÖ’8s¤šëzî–÷~Bý?õÉ{©r7[8«ôp[¸#xÖ¸e4ó̉ЩYïXw¹©RŠßã’§Pü.Å?RîèjÞàê”IÙ¿ôÚe®µH!q×çmŒ¬mnãˆJ?\xÝ+.n©óV)»9y°ê,t^öÖpù‚ eZkj”—+.!ÃÔ,Ã2-52âÖ&íÉó Ãh\yû¦i”òYw¸Í0LSÝl¬¯?LZ[«—ö©OzöBX’aù ·ÌñœïþËZÑȷݤÀ¤Á¤p›Ç4„F%yƒA ŠéÐ<Î¥š¨ërY-.×)¨àÊb¿³ŸÂ ™J®ë÷EŒ0ÀÀÙ‚&Vv[©˜]©y±š¬i3p1Ñ>£Šm!d!„ ¬øBÈDȶ‘r5¶m°ÐL½öÛß–0g%а?}˜ëõâ`ÙK¦"µ Z’uþ«ÇcÅ‘«…ûCò@kíRu'_%ïØk÷¥®(JvIÏüóœ"/éy‡w=Ž’qppppøY˜O¹#ÍÔ€ùŒôÜ…ÀÝã©ËÛ6 ÚM©[ž{àºæ‹³ÒmïѺÚt¸ïüàKžÜÌ´ŠöÓ¯“¿|A6ñï[%spombQzÏ©R¢Z­‚ÖXËì¯Ö\5ƒ xƒTI5,$°fT´æW]ñÆ¡“þO][_sÈä랣+±¢Éì—>ÒsBn¢¯ÿÀúöŸx]nõñ´)^á´xó\luÒÕSù %cvÑ€Ô)AžÏýúnêo3nsÀ£ñ!«¿×ªÛ¾Ÿ<ÿúù–½ãv<‚B—ù3xZ»©sá;Ç:º;Ô+Mžìû4'n]Žùjâtö´Ú3¯wtÒ‹W*°Æ­Û³ß|>ÈvwøD}s¬‘ÁòhÕ¡q¼ÑÐöí ¥&7;ß^{ª)´N·\ÏòZ™O¡!E‘Õ n—Å ˜^h=üX-1^è\wé4—kÛ\8i0¢PžC¡Ó\âøÆ>èáàJ÷þ†Ëwõ -ÓhV‹Œ/jå’ÈÔ¯ÀÓZ€Õ 1આ=f®Ì†¼êu=ùÇOEuß ciÉr8A7»¬ZÖ)¤óvÍ 8 H™pë8£cT ø°pe>Ì*é<½OLr¸ °óx.x'äF¨G¹>woùžÙ+_CVVpÈ7ðïLa«cµ'ªÜ5žlªÔôªçÕIo¶æŒ("¯]ÈÙŸ j€mÑPà!Þ"]ØÜÖÉÁá]Œ£d~žôÜ{m æSžg'}÷ìHm*"\Ó™(¿µQ%pØ6†“úÅ#6nÙÕdš µßÿ)­XùÎ8 &f›ÅÃðìrûÁ“ú/ï.R`¾\J˜òiBm•©²Þ·³ôÍçCŸð«?˜þæcÉÓKá7S>ŒÀwµTîŒ]Š$ŸzA½çfžÌl¹Ncñª-‰øáI~ #×;*Æ‚ú÷^ÇúÖåE Úº¨ÍHª^¡b¾·K[ç9pùûo·CN¿Yl脺ctu\Àh\³yî0+‰ýÌÃ}Ýo™¹¾ WFÙ™#ʨ¬õKÙ B÷¾§øÅøïitågš,ų›3hMÊE¨²ÅòÀ‚! •ÎÖR㲨Ä+3îlÊÕ<ôX–¸ÕÖ¿&ƒå ‰¡j49õRbþdvǵÒj²'9ùxÓßoëFØR6é+/V÷œÞþ Žm‘̳†Þ¨XMÛÍôÌ–ÚE9#{blvØ[Óµ(¶Ø£–æáÖÀÌRHLŸ­Ý½K\ Ê£ãtìÝr’ËQLö{ÉáŒBÂÂ\“½+´úƒ¹¾{GwïÊÞ2*þõ÷LM…s x:£Y&é§«¡QC·C^HºÁ¶t`Msëì¯wNÈoD½ðø‘†aq±gÀ·àC®çUxÖë*Žu¬’Ù"ûÔ›ÜPûÏßqïëÜBû=ú‚øZ‘»ûÚ- m;8¼[q”ŒƒƒƒƒÃ¿™ùUa ª†¼ê|Ê}ð¬÷ÞÝ™ ´Ù¯jL·¸utÙÜ2{c?:xÖû-gu›SyM±=T9 Òì&+²EV êîë+¦%Ò…‰ß}o!ÞWVZ“9¦X'_Ydz¼Ö=;”½CÕ³+¬¬CØc}óùpo~;{ånŸãH’òû¤3€ÚÒªª½ôò‚Ý: WÈ7£jÔú?ÇO¿Çd…8«F†¢°H¦³N¬ðµÕÀŸôœØ\^ìÈÔÍ&háöº–ãR&ÉUxò%{¤ê…Ú>ù Äà÷V>fk©Â¿­!‹+ƒÌÊi£{‡~Bnâ«9«4ˆb i– ®e‹yõñç…þ˜wIåºüˆ ÉÇôñ¦Èé‰ o+ask%¡K†÷<—ƒ´íIPùÝ)^Æüvü ©Žéï*‘.%¯Å: –_Þs›'µzã©zçx­¥SgùôèÃo>j[¶ÚÒ'¥§0Ûöξ¾°ýáF“´ß2?Þªæ0„YR+QYZWhCq5І r6Ј´nìj¼ŠÑÃ?NõîJ@Fê®þÙÙ›µgæ‰ÕÖßëN§!ö×…Jû¢Ú)Ö~,{¯ë‘oÅÆtÚÍîÝ?š ›IPÚm»ˆ±a;³¼’Êáÿë çå ³×»´{IJ=>–²‘iœ¥w5U¤P¢‰X7ü”·aï˜üg?â0Ú¹.ܼ¹˜¢ìQ¬Ôp“ °œh$Iؘm梜1-:-ÍΖ&Ü»d…”Uòø36ž>.¾šdÐ'vËŸlI¯¹ ’Ü—Û½’¬>üãÒçyラA×AºÜ$Å Õ X(€à½]šÜÄÎÂ1D^¬\fñR¶LÜÒ^“l òvoèu„S8[ô¶t;(´Œvu@WìǧçÑñg›ûü_?eßÄÜ6| XùÒcT¿ï§TÄ’› 7±Õ,€WêX±Š½p¡±çŽæ26ÀÎ-uµšÐ1†:íûö¯{Ã^jÄz‰ß 9±LÿÑ$†“€A®!b8–ÑD£gJ¾’Ó):ÀhMµsµ†wâé" ØçÙj`ùí}%ïÇùbÊ}þTðåïšbLu×ÚúVo¸×³2;ô½F÷5µ–Nd˜ÈFLò åqÕ¼]™î!N+—èxHßt#´¦€P+К äbµ}§ kѳÿjr~ƒ—dO²áÁlKôœÿ|×ͲBLO²i©<¬r‡{CoéíÙ„b²?Éw{Ìv¯öÊ÷áŽó­n"%ÓBM…œ™·Î¬”‚q×÷6º¤UM‘üm1·¿†~býù…µþÚk%³¾Œ,+./²d¢†yVÀOZ†5$¨2 ní{kB>}o»vB1.uÂù«ïS¿þõœEÏhm‚ÑÔžÞØsËÌp ùï½Â µ^±Udÿò3^.ÌŽu¿ÓgâàðîÀQ2ÿ6N^îS²E橞û÷7õ޼DZ¥ßJÉ>­Ó!Ð`¬W}åwï~à]Âÿeï=ƒô¸Î;ßçtNo¿9MÎ`€Á,’¢(‰Q²‚%Q+K+Ù*¯}í­½u·¶d{}åÕz}m©$™´d[$E*P¤˜Å‚Id`09‡7çÎñ~˜ÁÌ`0 ûWEºût÷észê=ÿ~’¹úù£ØÑ4Qø`7W“ D$³1ƒÏÁÁ¦bÓÒ¿üÎ[3ÁsXÒ{ˆÇ^uNG¢€ù\·&CU‚rå+è•s „Qd_– A8Á 47¹wÝláÄôq{[W«ÅÒ›î¾$‡1’LÒ±øØGŸ}áŽ"ÏÚ-¡,$Iµj4 ñç`IK×êwð³€ÈªM"ÙŒm&Îa²ëBA±¦Ña=(IC¼UõÍN±§^t4Ã#j¢#ðî/ùñz9ÞÏÌŸ!R#s»nÁÈ-Óm–I‡ ã”*‘jT«\~Ô€i5YXš­df›SázJËoì? È+WÞ˜}á@gîoŽ6ÿáËpŒUšÏKÑþ¸u¡ÆÖf•¶ÍDø NŠ%I$­w‹ü7{³Ù<– m®°¾”Št˲䊒‰ÍøÎÍïÿŒ+†oªƒ½ƒn:ëœm %œ4™Ny÷í—_ž*‹‚mPæ%±Uz5¶§=i\˜fV” F‘8‰U«¹¢g@Q¼žï (ˆE`¸ÊŒM˜_Ù6á+²JœŸ%ÿéuôµë±ï|rdÆ Àƒ-³ÿ6ÞtB :º=P¿4;kúýæñQþŸŒ(së>ñž¡ °uþ' §p|°ß¦A‹aé•Ía‹f cˆU3ZÔÛ¨Z‚®p¸f¯h«É™Ü´ªgK OëOžóŸÍleÃû‰!¸ôm}ê÷w_ÉþìˆÓužzÅÿfJàbôÚGž’ñðððð¸N0=aóè0õàM•µ¤^—“•Ä6ßÖE-NMrƒ«ÞhCmÙ?Ù~8JÇpdY ¹ jŒ¶¢¨ê8rݘ™v)N¢¢‡P GÑVo­èÔK2ñÇ7.Dýò’B6Æô¯5–g%Á’§W’býô.—1À;Ó4ÂÏXë…MHÌ™O¡VžuA;[ ¸8¾’ÆŠd¸ù˜[H(¾È’^jQ.…€)¸pêœ Ü}ÅŠé>§¦Ò¡J·m]L6_[ •騷–³Ä¶m«¶VÞ™d÷‹sP“±°ÿýâdHW×MLF Ë)t½û¤Ifvܺec„ˆ.xìûÐ>8°…îzb© q5Õ¹«ö¥2è‚<ÀŹp`á‹w–Æç˜ïþ;}×ç™rN;]ßW\¹èx²œˆÓU §Q~0ð*F™žâë¯tëèìqæ”c»€0„Q¤cÙN´‘¶Š'8mº=uú…¶ß."ƒæÖ ËЖ‹¢\ ô‡Oу=ê)p1!À‘¬¼”oÝÑP`h»)åkt(Œ½[?·=•]"†‹uÉ$˜62m$;´e#ÓAY•.”$!Ý„RÑýëQ_wûô¹ðé ,`víöÍé0wÜ€o@ê‚A‚ ~V÷9¥sãØÙ‘ÊYšÂìî5ri¬rf©žkeL²GÐ RÕîôË ¬K“¾µA,öìwv ûl¿üBXkIÓ¹äaœÊVÿük"ϽŸ$ÀEºMùpcUzéªÜ\X¾è­Ãsv&c‘ˆ´ü>ßDà×>¸´ˆÏ©9è8ùH¡ïÖ`iê}Ûb.Ϲ?€ýúU@ƒÛ®¡t Z#,Îà­Ö©E9±É³øÖånxÖ‰vFÆrzáÜü)›ì]o6«øú|s·‰ä cæÁWu"Zo”¡… ó‘™#¹¦“‡¾dÐlóÉÇ”D;ç®dÜD3€:ò«ô­¥ëº}j¹Ýšx>|ÛgôÒÑ#‘‚ U½DiF#foœDŠÆ@F®BµçˆÆ¨µ,¡uóRA „™r_›þÆ)¦ˆî .@4 Çs:hK” h”ÛŒn êƒÔdSÀâØðŸ=I”gÒQð&y£3¤Jà…#XùYø«—}_¾¥|ÿõÖÊ‹šÏÏäÝ1ýÆÝxs*¸Ã_l‰” ê¾̺ã0"ĸµ@&«ØøœõÖ(÷À ÕØ¥žS4jÍlóÒ…ÆŒDeóh9g7´`¹2 (ççIh[m ÐFµ´j“¹0'|r‡6òßÓ+ ]~v$˜+ðêHèvŸÛâ~¶¨ëááááá±%ªòUýpLT„˜°EYÌ#sL[½¼içκ¥Øx3/àöf´êŠaªX$,É¥@²‰¼AÛºVÅd¢ùç…$ÈÙ]ʯÊùrÅrû£™öVv×WítyìXéÙ—•×F¨3VìWèÆ]ÛÐöh­lß¿·´VÄĵ@®Ã“Z]²y xÖ°ÚÒL‘ H–ÆSÙI¯®õ«ð}€ØXxsÇÈ“óC•¢Í¤^ä+Øü¨PÁ€çà®›àÈI8uþÚ|Ì·s Dç;ņ.s¥fsåø‘L]»_ùâ]Õ£ç©S#ìÚ¡ŒF±ÄEW3€a`î9»(SKæ'{.üŒýN¦¡Ç ÙØüeTævÝÎe¦µú„càJÄåî¡Ä˪Rcº`\}ë B¹Õ]"&ê˜ L‰ý¦^&|A»ÒíÎwã™V1ì{ð/4„›ß¸¯Ü¾¡ôЬâ§Fùÿú㈎Ñ_¼«ú*½*é^’¸‚£ÏîÅH"[æf²¡[ë‹V«V€ª&œù~÷BJõsvgD,¤ßq] }ÿ¹Yû`o—“‹ÉÛ[*!ƬKбˆ›*€P®Ìå‰Fa5 ]ôV›^㢣htF¡WêÏ%êÛ/ÕÝ·¯¯çƒõœ ÜÃã·OÉxxxxx\-<ç¤Kø·ƒKb-Ö83ãëmÚl‘¹:É×$§3oN3ŠÅ|º»á´¢bÑ®i¢õEaJ >1±=ŽÒt”zOŠ'“É)¶ËDT»2ž”æ±Zš)N ¥I†ÇÙm=»îj«o [絺ëì …#/½<÷Ôq÷Ñó Míz~¦ÿ|¦1/]üˆn„)³5³Œ‹rH1 IDAT,½>î9½ú°uâÍ3EÓšê°ìZ¯Ê5$ [ga¦tµõÜ+0³ýÖ‚Nk ÅP3_»¢©DôAª¸þÈ<ßk9Ÿ¾ª1_tµ…y º*¾…‰àèlÛ‰tðsý§³–o¥(Ï:ƒ½êã‘_ ³…P7»9º !‹ÒGJ?) ÇZ>™Š´¯÷°Zh{v©û°A³ÌœÔuaHµ²¯.^¯Õ·¬ˆ¶˜c05ŽjgåniWœÐƒe“ô3X[Ü–ð’M/jLV6"æÒÑZSEÇ}Œm`\¢±EL4i‘c¬çf˜[Jõõ#3æ {Ù³²ŠN] ÿý9þ‡ï0dnܵÚRV‰Óc¾ïý"úèó!„Ðß}%Û5 ò¬¦‹ î%Ò”£ý å­ñÈÙEC@ZÛŸÓÇZn ´Ý̹kiÜj¸`tã4±³³¼¿SùÑëõg¦#ï?G“Uß®ÆÔÙ‘*¢8àsGcõèdlMÇKj9›€…<»³UYÞÞ[€ªL¼•¾~0 ªo/¶N9úŠ)=<~ëñâd<<<<<®žua7[ bá÷ /ÎÕÄÁÀfÅo.±Ÿ<°^ÍÐDt–m%1ˆ†`/º‘&¸(_Qƒ„«Ø¨6s,ß9o »Õ=PÏ–åÓù`¢ £T‰,Á„–ê­ž]äÚjø¥Y£Ê¿ý@ónž—Ͷ% ßÙ:ó‰Ê°¯I°X`Jû“œêZ‚MaJkk-†ÙÕΫ嘶‹3胑4’±ÑŒä™ß¼T÷wGÜÑ(JW;ý(ß~8ÓÐITS,†¡TƒbI} §»|¼ Ø%¢…çàáOZ?ü9 € ö_•Q^öÏ _iœI1-mò™Kƪu²Êað,Tlš&֗Z}ÌúË_oìÏAãêΠUä­rƒUÍÐÜ…øþœ“˜´ë÷'VŽ’šÒ¸øÎlÏÝ+éȸbZ ×!¤ZSã½²/ê“§}zµVߢ†J¼üxáÀÝöÕrÃ2¸j¸˜a@ɰIB}>_ D†’²Ts*«B1 Õf~SéØOœ !1>/Ë6S— Þ|ë=4P¬¹'狤†’ÕÀ¢<;ãºur’ýÈA®÷·ÙÒ ½‹ kÄ{ÄáEê@·ü…WåuB´ÍõØtq ­' ôÖ"0ôñ]ë6C³÷Å/‘ *tËËVü-e[ ‘ßÙ1ÛÕPûñ›3þöÇl¡1f‹±® œJIe¥ÕeX<(Ãràæ>ÄІbÐ+%eŒ¡Z̯Æ|ßÙžùÇÓÙ·=Øl´ÕUà­bäk½g.¿…‡Ç‡Ï&ãááááq tÔÛËÙp0“4*@_îZ&ÞÓ»þy[BóÔÚ’cÒª0ˆ0åd’ÜÏ2Àã–ìPE#ø³ÂnM¶µ91ºjKiÞ•1. [L/bœŸôÇ Œšçš³LC£<Õ,ÍÐŽA8ºhfOýôL·vîdÚÿìyÝ^¡›‡ÄT{ :¼[ÿÄò»}áë;G'ÆýVæ­ôg¿ôUÊØtºîôd [¤-Óðö-Û@VGa'Øëï¬Ïºœ&ÝõG+Tßl}j…Îc?šÛuÿŠŒ€8^Éi"$cÒb¨tEw Ñüæßežs¾×œZÄN _•_ßx>rGbY´²‚]Ë2mkûL´Œ—ø/ ž€´•hB›ËÄÂÖÃw¯;§.Ð (Xc<( N1â²Á@K‡QmÜîZißR®Ä{j³*óÅY9 £ôj®yG ;‘ ÷$Ô°X.}ëCá£Ï$'ßMµ RÓÆûš–](•s©E)3ïb”í•|- €˜«Çò£V·ŸÔÓ ?Q v‡*Žjœ9^xmÞßÈÔnH¦(ÒVXô¿2Æñ†/>Ü4žË5mw[úôDàÿµéÑ—£Áþú=éݵ&¢Is]i@ðöfáòÙí!§…Õ²¥õ ¢E…²›Å ´VrîzvØuá¹òÐ’]ÿ¹ƒ ­õ_ßi>3¿|‚.#u~é=ŽÔc‚™«ðÀÑFk°†ñüÆ–!Ê89»§WžÉ†îj«@®Â?;忾+ÇR"ÅÍãáñ¡ÅS2×@]ÌšZ~¿¤Æ é”ÿ²¯Ñ/^dù7Ffrá·y ÚºŒñˆ±°Ö€B‚UÕ‰£¹ °„3¬¶¿mõ¶&ìÂÒn㘽`Únº¬µ‘å Ó¢Ù˜”YpP´ ThÊ×kàt{ù\RY€d™’ÊäK‘Ìl+£†Y³§W)YAà9ˆE ­^??¯úŠúÑJ®eº¥Eº8ER• Or;²x#‡é’Mé8•µÄEÛÇáZ‘óM¤Ñþ Ûù±ÙwçÿæM÷©‡nõ±ˆùÞ3Î[‹HÁð¿z¹ùm­ñ«s¾~wjg׿¢¢Ž‹lw}eÄRÎf=à­é Þ—Ôž:¶>5—„-€ÁÔvfv/=1\ ¿\ÝÑÕTýì¾¹wg’›Z^}¥åüC‡ÜXÄm Ë#‹«N€>Z{7Íž.rë} ×SÁÞ†ê+±žº²¢S}¤ÙRužµàÝJdGt<<>ÜxJÆÃÃÃÃãà9'UùÏä²J —Ùd\Çumç7 ¾÷ cZ<ÿ6öԹ淗:ç«ñ‚ppZáb¤£_¦æ°$Žõ;¹¥!çtòbµGPtS–k½‚:Aöº–aËe[ShƒS:F¥Øº)ÿ¸n_áø]­ÅšìÞÖ¿ttRŒbéjŠá e<4$Ÿz¶04&µ\ú\`ZrW£vßM¥¿ýr–ôŽhí7°ådË|{+Ód/Öu“!÷Ôzí¬åâ7ØdZ‡_åÊËã{îÛ(c€Ãµ¼ºjQy_3´É»l½{¬ÛÕjú}î“/ ï3ògçã‡c…•\ „£×)cE®ùÄbcQ!Þwa­™dÒ!ì’>8ÄXçæ†Åp@ týî÷Ÿö) ‡üEùF#­Ÿòš´&»ÖOוZëu`Â0ƒb-6Hir‰×»«Þb+b&?Çâ«Sµ-Œ+`¶Áèù„4Ú¬Ž9.šCu%Lȸâ²ã ú»rû]{H:—ž«|í;ÔÔö¯»wÀu»ù7γsZØRúÄÒÞYøHW­€…þ5{à—Ù¡ã…î)QPWå“4n­+m‘ànÖ'>Ö´tëðöL_R}íÔêl³zct‹”k„ÙÊGbº¹ü³K½óZò3C3ðÃwúcõ9–êìçJÿ,¶w‡ ÉòHvUºTk¨‘¨êzŠs©Ñ,.™LL°¢¢ôÒ…†O \ÛáëÝl×¾`õ 2z¼8k€gídÐÍ©im7QRÈžøGï4†©úÂ’ôÑö {va€PNö§¿$Ó*aY“_I‡4Þ.»Æ~tІ-ÖjUI«µ(ÉL›mÖVKƒ‹jN¡4‰;ºŽS)¾¾ÈD÷8§M,3OtÇyk&n D¦¨xÒIÿýøO­»~¾4Ô@×ÚøL˜-€i;¶¡ñ$È& ÇÉ/ÃͽÔ$Jð!gyʉÝyH}äi¡«Õ\‰×Y©(CjÃä1àJ…/—ä‹J†dLZäÒZµûc»b“á¹-ò%¬ˆ@è»Oˆßxpk-ôÞrøž¾õïô„£§­h»¸»aø’Îè¾.fU’HwªŠñ­cös”>ا×Ç­ÇžânÃp І…~½½ØˆO¼.Þ…õ'¾’‘ @8FšUÅ„ –R\›+Ù´-–Ëí¹%yäÄKìþ92å*°’tX±h$Û4 $‹AÔZŰª‹¹8e‡nÀkÅ*¼|Þ^â>¿¯1êj¸6¿ìäMâ@ƒ’®âŸ?¼¼R#2€—Ûh¸ÞªÍ4Jñ—ŒhAisl×/¸MB 1*TÀ@¤ ¤Ï–køºs—kê›4ê©<úb´¯™¦¬ë8°U*‹°¸Ú-Ì61é9)þLj`›˜ßÛPzü\×P²8P·4§‰äÒèï}Ôá9Ž1Áuse>Ë2±¯µv¢às/š}ju¸©v.¨+]H"„:â…®` NJ‘ßmڢ쩇LJ OÉxxxxx\#hõ¿+‘•þ2›Œ¿ŸÂ"·òæhìG¯×ío¯íì(6´fÈHTT!Â>­æ¥!Ì»a*Šo)cÀ´¬¥åt_÷r•™ƒæf|Ž’R–ƒ b§_š§­*è8u–Ù¡œ\Þ×{êÁˆþÝÉë¾] I1‰$¤>«=v>:4&7œ(6”¶í|t¾ªšQÚ–Mòsôõ­Å@/ûä ´Dˆ§G-&æ(ežu ˜Ï½ÉÝÛº›e¨]ïþ[¾íPº®{˳¤ÖËVó²?ÂW n§†¥Žƒ—·ìŠ `k&žu{5ôݧ_¼«ºª¦.2“ E=*®'{ý\Ò"Õ¶JÁë8e]xäLšÁU†å⑲MIªM• ˜—ÖsgÇÂö—>§kÓø\ -WVoÄ«•VgfLØ1…%iWQYV @€-æÆÂ‡ Å”ôCÃ3Ñ Ó”k²u'ðú²NËäuzI§pˆ6ðÉ…–Ò‚k"„Œ€Ä‹¯M‚©‚VB€‚å?®Ö;øLé•#Ù TüýÏú ¿X3éÇÇ„|Zkaõd»hø|?zÕ®cÑ8í:NPJ§Aé÷—8JWMÆ8+·eËÔ¼šÌÔ#´¤4EÀÚã©J湓¾ÆFxÆzà`ñ§oˆ÷ Wª†Ðþ~¹.ÖgœÐzsÍBæç“ÝÇon[<Ÿ >¿#£“ïê?ø“õ‰‹ ær‰‹d$²zOL96ŸüX .,ÍÍÄ©¾¿9ý›©ØÃû.L/ } ÆX¥yÈ_` Ï ãáá)kd°C;rN¼ïpîJ f$bcfXÕbÞÊu€þÈqv@gCõG¯%`gGÑDÌ"ÕÒ€r–‰ûí¥1g»é@=YQ›3:ÖAÍmY¼Å²LµVØž_ˆúÉj€(qÊ2¥Ò|o”‚ú"è8õèt}ô`]HÉþOó'j5”WcÍSLw[í6 ö)ÕdNg<¼s›Xy¨ëô“ÏGö4˜ mÀ½ô,©óˆ ºZ©eb%ÛHÅBË»?›Ýq¯ä ½Ï ùI=UV”Œ$„cË[§œÂp$)(ÞòàÅñïU¡G~íÿâ]Õµ(v83ï?йžâùõ³ñ¢Œrÿ¬-ÑR°Ã2k„Y€E%±Ó/…ÚHä”*…juUù(:]Oo,½‚d`zX)*¸“®ýê;L¡‚Ū®*1c…„3%»"Tôù¿vÂÕXÁ! I'íBcH„® • /h.O+JI5™wÆöŠc\ã$˜^Ò’“Z¤‡Ì¿6Š&ßKêWmÞÞ. /ѧÙ ®Ý>PhL­\AÒˆ'ßôçT¸¥¯¶\ó¹Ž[ÖC®9…œ—‰Ú×ÕXz;“§ÀEàeò[ÝŽÓÙÊé}q¹1¢‚ëŒç1¡Ù·Ò‡XH?Ыþô½„TÑVbT®–Ð>Þ|~¦l²q ¨â€ ÿüuëÞ’ºòGÇÂ;Z¡X#úZddcyÎI¢¤ŽMJüîpñ{'Û¿¾kj픣µúO'=ƒŒ‡€§d<<<<<®•xØHŸ¼b9sE§š¹u3WŽÿ"Õz[<õë³8ô­îäóó7.O,Šß®áö{ĈžvEV[([ÁEÓ‡0ˆ³Õ—òM Lþˆ´­•Ì·3³—ßH­Uø·#P};Ó~gà8ŽžÆgÙ‹@QkÕÉJÇ锯±fu´¥ÇûjoNÅ÷è )®\·½xz*´HØ_?±#JOeü¹µ»]4¨eͱ˜0¢Ñ1{¾ ¯>2Ï:7 jO¼Â}ãÁê_¶ŽÔOœÝy¯$¼ŸŒ‘ÔÖ -ïã`¸€€¨2Ø£ Gž |ñÎòŠ˜É•¹·©O ­ZŠ^?)HؽwtVI«b£Pžt¹PÖhz5Ÿ15V b¦sÄBŽ6 ¥'_äÒ%4’Ázb\p¸…2üîž´äÒ9 r:Ï: n³æÒØxÓìIƒæÓÉn £~v¶õSÐéN‹­5J¤)¬)ÀbÙõü`,©mkÍ?w~Û—Õ'J]WzÌ“•î%Ó7àNüõϘúáÏ¿‚‚dùD¡ò7ïõ*’}GqÓ ¬gSk×–„Ïߤ½7â?y¿÷ðÔ¦ *: o+½aÃbA«ªdE!]ǹ.&e÷Ý2=Yô¹ïXVWÄŸWOS>‘·\|œç ÅÚ(¯žµ·±Ëm‘ât1š6Õ©ÌL0ìÏCdUÌðŒ™©‘ªáü`ÓÔsÙ^Ò¬=>Ú½§YŒd\ÛWÑÖ6¶¶µÚ“OVöø—Æ?q5ƒ–ðÕÞž‰4¬n–­¡âÜåJ!¬*_UÌÁ!ôè ¡•2)|_½.½r赓¡¢ŒÝ{(µÖ×%"X´gq¼’¯é©Råd×÷Ú8ѱ ¿Å*iTŒ7öë<çðìÅh%,$82ß~ÅâŽlÒ1X‡ÊŒ¹97ÑS[*F¬=à«K‹"_Òs5J” Ç@´èCÕÚºK^„+³Ádf4‡s[Š™× ÛK*îÎ,<[b;÷Õµ%1Ùßšî9ža’Pëëëê]=;rù‰ËpˆeÍúÕ´Ý™´’Áæxxx€§d<<<<<þÜÐbÈêÖJÀE§?ßÕ–?Ûwzußeé¡t—)øëô 3Ö¼<:Ë’ó¦À!Œ²Í53Ù× íQÒ?ÈM,êñw¤ú -r0ÀKkWp,S“«M1ß\FJͽÁ9 ]­Ã]‚ÆiÔ™Œ^e—çG롨ñdfÏ}ÝtHJõ-¼^šRÁÖ”Ð.´gŸå‡þèüÿõlÂ|Vá@ý”)ÉÆ“VSÀA3Y&\ýNêýì™_˜ßÊßþû ^͈ñ´ž®®ç ½è`¶sS³ÏFøU)ØÙ-À£/„¿ð‘â/ϳýé <õZ(]&¸¡|zL€•”Ù¯M‡zË×H5k¸ÄÜÌÍ'wªîý·®Ïà‘ÑPCPŽ…/µ9 CîŽc9꼓oòÇë÷‰†YþÍlТ[:ØÙËG†g­]pG_Ý9$µ5\2GÖVQH*î÷™0‘ ØB’lŒà;ÙòêøèCŸ»õ<4YŬ⒂ ªBÌgh@¨(€PF¢&«dGÀFŠ `(Ä[¡%,¦ä{Zs5K¯–òbÛ€˜ë ̵ÅÔå‹0® >ÊØÓ#Œo^Ú½µ{n­“†Oàò!º´Åxx|(ñ”Œ‡‡‡‡Ç5Ó–4– ìÚÊ~# ®¨y¤û®›‰úVc0dè l–=Ãfg±ŒD­RSjö£o³ûö+2pMlmY $ß=ÿÌò¶»ëÊìl•™×â¿Ê÷íå—š¹ ƒ­®Mm¹LùëóG¦ÂQ:áÊ@¹Z=,d!ÎÝpªèk¹ùä¢ÕtQH4eÏõ•gƒ)_cE£»–Þý«Ïí“´D|‚U³")XÍ '^[øÍxËS!ÇvtK{[³]'Ë7_Ÿ<Èž~—†«S2mÄhm%K\ÙÁ, ØeéÊõldg·$ î{<Ñ1žz=úÆ Õ0àÈY¡¾[""Í×AÄÊßwS\TªßÕ:ö¶£es‰€Ë˜¤À` Òv[§ýÆ úþÛ/ÉALƒv¸úV>¶o}B'WÒAèeÜJN0Ë2%Ó!ø %¯¯Â#B… '^#¾pãò£Q©’ÛuT‹ùÞ™¾ì‚ü™í™{òªÉ¼±Üp¦À(íÖºôÁî%7Ødyê°È.êñÊC‡Åáµ÷áÒÁ©u6)ÏóW$l°gÕ·MsXÆÙÂyO"|‚U­‘𬕑HC[Ô\j%dk%ÑÏÚ±+{ʉd@5ÌY»àTŠÖl$‚rW–ÌQËÄ’#j´ZѦ ÐßnO5ÌKB€6J Y°¨eÚ34—a.¾cn$ØDov™óðø0ãÕ“ñðððð¸fêÂÚL†Ýú˜ëK±C!it9pv!9“‹äjb¶&"â’_œ”™´Hâ™<n€¹H=ÓÛD¼s¬’«ð4žW¨%ÆÚuÅ_Îõƒ«]üìý‘“£JäÅ\ÿ¤Ú²z!Ëp‹Kd@õø³î§ÏRý>ÖÍ S£\®íl4Lɾx¨8{y³¢tmÛêåoÞV/`©‚sCcíëŸÈ~îãFó­loÓÁNeˆmó+-‘mh¥êgömýE$ÃÄý[Ôý$0X–Ü@ÈyuŒÌ6÷-®Œó{¡yeÓpb-µLwu.åÓ¦ÛtúÍí³o–¹½·X‚?zòͼìÿßÇzDEúwÌt5I#¥æŒîxwóås;ÌX=éø€“nnLí`gÛéüëÕþe}sÊxÖ¾c_åè0µ6MšÃð^^Ûœ¬ÐÆPìõR¤Î¤_¾ô¾ŒÉ1f4 Dr[¢,Dé[úJÊbú»f>>8ýåý#ߺåÌí>,Ìͤ;"FëǰÀua²*œ­ iƒ>œ(†¡Õ§ÍäBÖ ’žAÆÃcOÉxxxxx\3kg•ÐñjÃuÝFÇî(±\ˆ‘Å$›W}Ð$¦[˜ÚÛ‹í+gqõöðùn6÷F¾îW¹¡e# `®R%‚ƒ‰¥'†»6v&¦Îœ?›yKÙV¶‚ÐÉOV×+K|‰øÎ¹ è/n{=é—¦’×5¦NúÔ²Q¦K@Uk5ÎRv5[¥ß¥yƺ;u;óë ­Ÿ,oœ þÇ¿±Ýõè0-«WåÖ•–óëU5‹ÁF®º´©ÈYˆ¸fw‰¶zùP£4Qa¶ïõч†íöfXÚaŸŒÛó›ZžšâŠœ5\~‘ÉâæÌÚ¤¦zÀ\ÓvyÖùO·ê¦6Û‹x5ëJËnD‡ÕE¿Ë ”³š­† ÜZê9Ë04Uöµl<£ô®@íÕùžl¼ÿTõÀKGÃ÷4¥?wýü‚žü—ù]¿ 0©ŒëÂ×nŸm jÍ9¬å§7^¡ƒ=,ÏÑuq»©‡¬ýÅ»*ðÝŸúeSl†ƒÍ)ÂÀÀhÒ^µ8ñŒÕrËRœÕùª8V»ü¬«dÆ ã•ô-Û.Cm Ô§¾ÚwÎÍ"ÑÞ†oK.öG K*åº(Ië“UŸ€+:ÆìzºúÇo%ž’ñðððð¸fxÆLˆv®¼Ù1ò·‹VQ¡Zã¥ÖXñP×Ü¡ŽÙõíMÌöZKºëÝO¶|²õB2`í "¼î2TÜ)LÈQ ƒi3Ò°ëolû‡Ìö—¥6HÃÀ êô%©Zv«dL#DŠt»Å¹O'Ov’¹_-µ)h‹« £ëêÜ_íÈDóÆ.™ç§vÑSïHí“J Gé~é­ÙÕÜÙ<üé¿0úîÖ©¦ƒ¼”m›9’ ÷4¤O$ Ó#侄yg*=f‡‰ª?y”—Ò£;î‘Bq29®7XsG¸ IDATãŸÙ£i÷‘gÅ©ùv « ©SËëòÏ “ö ò%ŸØÆÌ*×à]¶Â/Ž |¤s0ø£WÈíää~âDÒ[¶œ( Œ¼HÒ,Îð›9¶Ã1æÆ=¡¶.ðÇ ÌY‘8-Æù¹Íò•´j@º­héŒÛq½f“1Iâ뉨ej˜oÓv7§'ª¾oïy5ºóK ¯$¥ÒOR»N,ù&OdïŒ/Þ¹G¹µMÀÆ)";vùC1˜º‹Ÿ˜Ò#oÕ¶oùÔ<ë ö(¶é<ÍWeälåG§ãiJ´½*r’~»jP+±+ ¹ ‡> ¡Ü•È:‰²P“Q8°…Y‡cÌOï™·grÁ˵!Õe\ÇÝá¯ÝÙ2»¬Qe…4 ;¡V ^S.¿‚‡Ç‡OÉxxxxx\²²ºk‹kËÅÍJæÌœ¸¯¥šU·6×GjªÃ”LjW` ãéÝìt·oîlž?à›ŒB­_ä5ã¿´²3o¿°œ/‹PMù}±ô¨’ÈÛ¡2S—óueƒZ²§±“ûÔn¹¿³­\ ÂJ ßÐ/û9R1‚$Ï#¥ÃâpÊÇ¥–uK5dóðسð­/»±$3Ù¼/ÛKŸ5ËsüR ,“ªe°rÚòO[~ÍøìÑ®ÛF­î‹Û}e׬U«=p‡ùí/Õ’atzœùîOý¯¾'L-\Áé€g­Tá’E´ìKRþ’F~ ?ͪż8ÙRéØq÷€õåíS÷õ•^9ò~Bh¡F°XÍ(-sáF¬OS¶Ä¨¿d•,&šL©.N`îÅþ;ÛZìÓ¼éµt%Ô QH³`¬ø˜¹8µ^ba¬pQàŽŽérŠn_»B^ <5Ù—qÙzJÝßVùÇÈgÓB”9=WY”þä¶åí…åŠPÇ×lʇ…ÂZåŠ!I ¦‡cDõ…òæl=ƒ½ÚûõþJ¯Ín-ó2D]T2€aÒ²–¸zȡ٭ê] ÓP_‡gæSXÀ·µƒZ¦,Dhó¦ºÑ~fi5lo¶?Ú=ÊQ:ÈK„4L»õa³®¡š‡Ç‡OÉxxxxx\-S³ÎùßÖ©sÔ…Ô™üf%stÞÑ–‹ófnƒ×EV—qO,õÝœ¬ºšC…!3œoÚëχÙò¼â Óån¿ZÕìm …öY/žÆF•“‰Ù ÑÊò«Çð„4š¨œ‹Ns§¹â”X éS¤^:¶˜*F5⣑;‡j‘ß»’¾íô·ÿ3Ý"˜\éÞðéF\ÚݱÅâ’;þ–ò»wš±Èzÿ þäTëa™qÚLu5 Y¦¢c-ÃOS-Ýc{ÿSAìIõã±ãýÑù“ç?¾ÏžµíÒ5ú‹wךÖéIö{¿ˆ¾v2˜-®;’É*~j”{î-~4íd ëú¡l ä/12ð´9¯Òp¨&3RjþáÄ6àw“G;¸YS;åÏzíä֡蹚¸Ó/€­É–\£‰µC’‚‡ùu›ƒˆ(ÓEÅÔ˜‹.*“=Û”7‡×»'è%‰]­âÙ…&–ÝH &%PîºmG–'Öõ[P_.:¢Œj1/.lûÑtOÎeâqBì ŽÖB-åÙ7G‰Á¦Ò_hÿ½ŽÎÀx‰…)ÐFªëA,[²1læJžfíMÆ·‹¿<ÞBlKTPÐWs!´EÕ²J¬¥‘S†E[ø¤} 5ˆ¨ €‰—ÿMÀ?œ¬;Ð]Î6>r²~vÚÐiæ¨5´m´T! ŒÎABÀ JS¼§d<<.ÁS2×Bÿ+øÛG,×12ò%Ÿÿ§—Åu× 5¢¦Ê—¬Ú$ 6¼¸°í†ÀRˆ.Oš½0Ï-%·G kRàB“¨©ºmÁB²'ßûELVñú¥(­Ÿ__|#Û@¶ºDë©nòÂâ’üï'¹·3üé,u~²ú'ÿ,Œ§jóeó©WÍ‘EL¶q Y-Â4aãI^îdŠ_¸#·Ï7¹½z¼¯r¦¯x¢³x®¹<ž¬Ì¸ø÷YR+ƒi"q©èÛ$Ÿ{:›¨œ«sç [À3J¶7_¬¬2ú›Œ÷.øÚµûn*~á#Ŧ¸qdØÿýgë^?ýÙëÑGŸ Á.ý?¦]˜]—[:˜¡Íá*›QLæí¥Î_Ìö¹.ôWNwëÁ0Øïn%lfJ\IÌÔ@xø£ÌÔ"öê±ÍñHå´ÂêBŽ *Z½£ìRÌÈ&SÄ£mhÎMc‰ØnmOŸé¼¾Q1ÕùÌBÂ2ìƒÉÊ¢5—ÁO¹ý­õH3À@ä<ªkA e…ð±æåWððø0ã)«e~ÉýêÇñ¾fúÐþØÓúÈl%WYW,§gøÞÆ*$ò»K›k>‚ëæ•@^¥úBsi3i;àÇÊo-´ç9R[»øB^ $ÅÕ¥6Kj€ãõIç@¯úè ¡éEöÖžùcsâÆ;®Á’Ú¾º‰["³““vžN¨ÁĶó©×¦íª,—¡d’%‹ÊØü¯Î‘ÿ8ûïÙ»™ÛGØÞ³âД¯wÊ?š%*`,QÑ÷˜O†BŽ$Ž£ñ³‘“Ï}ÓÿóŽå÷šËãIiQÈ—ÿÏCyŸ-¯öôIà Ԫ¡ªJ€ë¸àº@RÏc+úˆDÄ^âVÊ/®°ÉÁŒ£u‚&¯”B`¶ý—3ÛŸë)ýÓ'ûBsÃsl"v‰ÏÏZÙS<:Æ].fK\}`5dܶÌZ.-ÃrP®!‘37\Ë[ZË!s7j«Cƒê‘Ó<„•¸N¬Ë”(¤CP3pq£’1\ §hþ¢ ¤hϦüÓŠïî¶e;êKÆ@Èç_zU)äÍu×v¶¯ ‰R׀ܳGþu~o»ã+OF `«ø–ËYñ4SzKO³¼Fµ†Jw2>÷oÿ•7¸Ô8M«ÙÛ’A9¯äʼn’\šÁþCJ† P€Ñ ¶^ot­3²ÔT)_+SÑ%soƒ¾=2BÆvl©:'·ÅÍ¡Ë"H>(eÊÇy6KðêÉxxxxx\-çÆÝ‡‚©eLôS?hþð‰Ìð(}ãu«Gßœ§ï= Oó ¥èôJIõ5~=Ý|Wëœ×ꇸ)Å _O‡¾¹ã,¤d1ÁU\xÚÌVåA/WC¹³»ÜÙ¤<ÿŽ¿]6>»göÇo5~îz}Slú ÍL”¯hVt’Kœ°Ä²”oQ~i-áÓ«GBIýÝ»ç‡óðÂbÛ'ÛF8R× ©YpÜ`uΰ…Š*:ùÊ…«€àÿgï=ãä8¯3ßS9uÎÝ“03˜ˆ `I‘)JV0)Z¶dY²µëµ×{um¯µ{e˾ë5}-ÉÞK‹¢$K"EQ¦‘D AäÁä<§suåðî‡̃a>®êÿiðVwÕÛ5ßœ§Î9ÏœÀ<>ŒàÄ §P æÏAD8)8äà݈㠂GÌ2t 3mŒ7Åx·y—ÔÄñoƒ(}ù¶±U d‘ɤë¡Mïj ,°æ#;KÏð?vpA`ÍÉŒïî–5îXµ*FCþ±dl€ÀQƒ2tÃa£ðÕJ)Ô3gÝ–Œ ¾Õ9°1Bǹ hhƒQ˜³›ku[¼Õþ`vÖŽO°‘9¸Õ•ËKX˜Ã>³gŽÆû[V¾<Î…æüTõ®&Mí©Ø+?P÷?þ+$e®‘`ÒªüfµÅŒeݘ¿âá‰Gà©çl@Ø@/VãB.¥$²^žÑæ5º!ck%ßËbM ¤5•ªÊ4†ããˆ$JŒž-¸Ÿ¾le,† ñ:^ßî/œ,·ûò/ »»d‚Æ÷ø/-žçç©®—A^O#§’ºaËàuÁû88üfâ(‡D&‡z¯Õ@õ¯3Ž]rÚ_l âë;ŒÀþåµd‡¹ÖÓ)üðòº]×Þûv&¼%–€±©ŽýTéÅË´,U:¥k7£@¯+êJhÎÓÚ¼DÉ:³˜·8k Sª‹_ù‘iT"ÈDk?)×%•& zú¶ØÞU­Èb 2V³fVj$[£@1ØÌ·¯iþRÒìD_}jOþ§!Ž7ìl´³’á£)I¢¢£ù‘ñ†m㮎êYqÇ@öó‡>C?´sE*ø—^(ÍS^Þ±®à¶øáŸÚ·ny¯Oû.,¶ÍÌkÑ#åÍ]øÜ×jM"ððÄ#øè„ýä·Ì;û"~±” "ˆJsƒY“VsE­l«9 [š“ƒaX¾²Ô „ž©Ðò3†c8óCÈg{[ä]t%*€GO‚T–iæ t0>äÊ/ÏõnåÓ™ÜÙ^-2¡»}g—÷ñq·ð¸ÞXþÉtï^Ö‚Œ±°£î]M¨~cq”ŒƒƒƒƒÃb6‰ë–¢·XH?úZ`w‘‰ð¦¤1e…<° ޽£—«°Ok€ÁBÍvU^­͘›:¼Q¨ûTù…ªëí,wïØâÙ&D׃‘9((ÞU^·}žštMÉ, èýÉ·~á}öuþ#û,Q«5•«ˆ£°†0°¸Õ37‡'U“š)s4£íü á`?:9gv·EníÆ6Ô—€£ÔÑdZöè˜>}%Þ ÇÆÊ}c±öMÔ ¯É#î¶ÎÚe@„äŽEò—Ȫv^lýÖ0vW¾ø‡{.{:ëDK]éhž7®oŽD—lÖSu©—Z M•W2å6(!ák£‹˜[ž×cóîsã­Ý÷,é¡ ÃAÌTþóþ ³4‚EªÍÉ& ÔL&§y*Zȶa¸æ2M&ôôdÌC©ÈBZsÓº@« 0Úb§µNÚ)“O¿ÞÐ`5„מ«¨åÍ ˆßÉM¥W2†»)'´Mü÷£=[` %c[&FàT™'Yµ³ÚlÁ=8OÔªæ~ïÔÈ‘r{*â“Uêl¶¾ƒ4—ë ãê¤mדÍo]JDˆuÍÊ}‘Ü<Å”@xÍOñ,VšÀ1±-.Tn~ÀƒÇ ƒó°{3×–†a@4Îòˆm¤®): ` ìïž§t[AŸ}÷^éæ¿R¸ÑS˜!lM1Ùy®%GðÛ}ÉFwæj±¢FÈ»%¢Nx×ÝÆ]]~—Œ{#ëÜ.¹ÐlOŽéš]Ñé¡´ÑýÏÁÁáz%ãààààð+#pÖã;kCsî– ”©ºgÍÇî,Â6„'¿ O<aÎÀ[(óCYöžÆœG0ÏäÖm ¡¾<Þòé¾ùå³ÍËO©ñ›¹Ô ž›<âH6vU¯_aã>ëõ1ꯞõliÄîÚN\Vw«-‰6I(ŠfË: •H˜ x7?wõ£·©Ûn¡×¥\ϼE]|Qì ·zÖCØ[9™¯¿…³þ(ü/?Ëúç\ó×z/Æ9­¬yÂ@U5CSJ< —ðy|Ðî5#MØÓÌ&]²Tõw•“³„½"´Î|dwé¹þÏß»$ 4’Õ\lÁµÔR˜m©4…é)ÓKU<—U‰žeëï s†p_Ö`¼qÏÏ7=:0#p*°„ê[43»®OäÀÿ²óöÞ†ã5„D•ž¯EÙ‡l”«“%¢YÐÁ²Ã¼6^!'*èö¯¡d ¿tíðMŽøÍ›É‹«Ó\¬@Ç™Ü:wûdRh­“VšÃëæ˜°—²Zhm¶Df R®ÍMÑŸØ(~ãeá›Jn_êìqe{!ðõS¡?¹c);—:i[È“0^Äþ• ›Áã?•:·”ÖõÞ¼¥÷¥›¦uù2Þ0®4/·Í,s~0‚èź\3u±ÈùRlˆŽ¹Ö‡ Yšˆjœ‚eg…\ÿËg˜ÿú)~p„ÜëjcrA^/ê:6-6]®„fò•/÷½³|ôH©u~ª¼?fXu±lÞG.Ùpçé†2¨N‹`ièõÔHÊÍáø[¥À݉µz:8ü&ã(‡ÄåqØ:°â®ÛÑ =óFâáÖÒ?žnÞèK œ °Ô6ýÔ°Ý›àÖæôéd|vZyx[jp‚uöT-øÅΓ WV¢Z"ÅÅóL#»CK¡-I’¦yCOs[(ÿý‹í»Ú$aO»ê£x?õнdSœ@¦!‹EAýâÍ f}ˆŠù¬ ÛnŒÑ€góos-ÞAžÑ6¶h_IÐã™À¿]¬›š¬¾2§ÅŒêvoË_<¾çÙŽ-Á‹Ü˜’>gö$Œ˜T±Pij¨Ýiž "Ó;‘$û;é4u+r\;Í -WÝëh¥Ðç–÷ñ«=uú›‚{ûo0ã’5.çØ;¹@Rcê9}#Yê $#Þì}•*þF^Ë×ìèœÞ2ÉÕÍò ëäU&f×3+3‹/´zBéµ+ªÔ2È ?¹Âã­X»ßаêÆfÑÅ›¿j+pFí5çF ¢”)¡¸—h\Ò¯Ë1ÌZ£‡sc¿òÜ ÿç¯S2Î,¸×A¶Rªh9B5mw¥x%Åß⫾~ÿ“Û“‘ëÄ O© ,Óæã= ’|'’'`2麿suòÄF0µÿñ–׿¿ž˜©ˆdÀ*N!¸Ö6³ÈÄ4¤ ÄÁÀ2Haq±ÉS›3\Ag,w;½2´çüUæø%ò/?¥F‚6$‚(—Ç"¡jð0Þ;>Ͼ™ªßHîs_Ä-vùÐÑR_j¤´Q¨v÷@Ò†rfq}–íÒqºIV­ÕI'ÁC9ÃdnÆQ2ˆÁy®‹˜Öì®Ó‡æÜ$C ´¬$R6ÀºVôÔ°>U»`ð»b…°Oðþ"ÛtGNŒoïXñNU] O·g8ɬŠÉyFCºyn*hqG[òÛö„­ƒ&¿ðsKýë–âÝCûáÐ~"[`ªq~œ?:åó°Þ[©²«a2™UÕûš2í±âwÏ4‡iô{M£H‘>ræ>CÖ“yü~-Ò~öË®cDÓg»F¡p£¬'£‚¥j;»èãW–£ˆ8¯’»ÈäqrÛEbS‹9éÁ–ª¡¶tUžy-Òñ`$)ªôTÉõN^@¶aPOIÛÛµuÌH;\ ÷·Î€¤»õœdwå#ñdi–ÙÕð64^,2o¼N°5Ê«ŒH-ÓY=[cïã ¼huųÆWîð™wm*Õ áùÉè¹Ë¾W)+1ÜÍ2S+zȰ P3ân|¦l×ÔÂ0Ì^­dvµL…#œ÷Ú¹ñ«ˆ U!®1¾i[¶™.”VÜ3/¶Kž¬`Hð{PV‡S>¥2Ì[î…ª[Öã€Òðâúl–jŒ®þtR7Y.sûGC§_õ!T^ß÷ÞÿfÊ Uï«x2‹m3ËÍ??Fôv`€á–Ä…]RAä|ŽÙ€á$¹ì4 )øáã< û ]Ñom v2‹GB+‚³ ùÞ¸ñôxÓ9ŽT'féwéeÓzØÜÀ•îPÞA]ÛÉó``ÌßÉ[µFybnñt2¾!Ðèóà& Ds888Ü„£dÞŸ‰iôÑ}«‡Ïoé(|çdS½ ¸}Ôõ®»O<ŒÎ\2³ç†»?nÁ±N÷„f'Ó^°í–ØÊTûђПHÉò¤¶ôÀÞÄ g ÊU±Ý<Ä’(Â*%3“ZœØ˜+‡/„ß³zKgµÖËп^<´$…üþQÛÚ>uɾü:¬ ZQ·t[4MìŽOnÿ†zGó6®0_‘‹Õm…ôŹ¿?ìŒâ»T¹ÀŽ€ÄG¨š²-tu²©bÞ›+P‘ :ðÆìÚtjšh}]k÷™"*T e¼$ÓS&óõ,AȲ[xå¡ÖL"¬G× f1ô“ùú‚â ref Æ{b(±³+¥õ©Å —`NU£³%ï¡è)–T\FEP+`à¬Np¸Þ8àù@ÑíÇ~ûÖ* T•ðþŽL{¼4YŠ\®&ÂõH°ªT¥òïÓ³«$7†U5¤×G±™ÊR†A£\¼¾ZQ¸@«áô·JÇ}‡îA¦öàˆÂõ™*QSí;Øó«ü‹Cm'ç©FºR¿UØâ1jÄù í†Öš.qtWú;—›Ž˜uÊðòúà,¹¥«ºêº!09>¿í`ôåïÀ¯,flZn›Y4h'çzÛÃɆ¸5>Í A¨-*T/âŽ*6Ã⊤àßú©kç} û†²®Å~êr ÇÅdß*tˆ hÈøÌéÅÌeȆؒÁôKÃ!W±üЇÒ#ø†[ì!T‘ '™æ&e”³VrPȆK31èGãþ»ÃÀ,æ[]Èçààà(‡÷§ºFk7ð¬õZï,Йª{U+‹ÀCQvïë6¾ÿSm÷6¡‡>Ò2 §\;»Wj®¦ á9™ZlèWL¢€ ÝP£ü²Ž±Èˆ@9b§æ/““¾6ÝÐ$ J8T‘é÷Þ¶À™¦àËff·F>½÷’¤’¹ª«±š^Ç'ÿeè¾gÓ~ ÄBJF6úêïxQm¶F’m+¾5âÆYW¾ÈVxx(xl*%r^·!¶Õ ©:4$•ÏA–C IDAT”2Uà¹<óÄÎÙ{åûó­²9/+ÉáB»[Â*ê2Ú³°æÞxJmóÔ&kÑ W€'­Ïlö&CBUÖ ‡LÕÓëIuf0¬ééâž^ÏB§o[§m¶u·$mRîj$Ê'‘n£Åk•QËäJ\V$ÚUΙ㗽ýÀÓÚ†è\PO3íå t_ë|Ïz//à,f,(X¡*†Õ¤@EªºðÝÓãl{LÜ7PIsM h%Eˆ^¿¿ÉyþÁ^‰i ºRˆËÌ€oåÐp»¹¬.@ë²Ér”jr|öŽýb¦ ‘±%1ÙÎM×3ÙsRÇw^"ÿîsúÛƒ`4Š£´*`P$HÈåŵ\ú«ºþüQ1\}7%‚0•á TÜêîv-lî–¥lòfŸ„3s‰Âdíó÷§“TÈm—KL}… 4+£¶¬NUC¢JM…³ <4v<ÑŸÑ[IÊR¤€À;^Ì7â(‡÷§\ƺ5ÖýD§½³¢{U×Âù«,ØæžíÄ/‚ã³C#šxOsy2åBÈ^î”ÐkÒìöNkÛP#f Vœ XY—)vwÊ`D}tnxõÜ’¹ ¹¯ÃœxïmOÎsz‰Ù‚»ÄÒÇ”ÞÊöxè˜7ž{Q;Ø~KåOÕäñ¡À[InO/åe•êlå¬ÙÛÕ9»÷V=+r>·ù? •lØÐæyà€oî„°YÉÓ )èòϥʫ™À Ó;£á´†ÓpDÙÐé[èpÍ€Û’SôÛZ‹*#‘^§uŒ áùSõ‡n-€ÀYéʵÛ5%¿Eo¾'rååÓ|¬3í}&•ë÷Ïö·ƒ¤’s"¹!dYâÿ;ûüª>*þøD"趪›7Ã^‰$Àƹp8Š3,F^¤JZ•®¥=P+Ù¿Ñf*ú'6ûÛ  ñËX·Ûª˜º©SÚX½çÇÙ¶[üUÌý@ëèN…>w×R/ÊÄsh`ü²]ëFùõÄL¶B×Mæaq%õÖÈ®½á‹VàÊ\rˆ2èkPn·TRh¶¬áŠŽ/LžþüÑÚÍ2‹åëß9îR Žn®óöuí^Wf¨-½j®Hÿü,ñù½9…ð*”«YN )Ñ•¿]h­gõ0§7ûj;Z²·wéÏ®ëkÊ€l°#P4ÙzVòYGÉ88Ü€£dÞŸËãØÖ5Öü6ÞÛ¥,¨7 _Ïåñÿuÿú—DÙ` †fMµ“Å£§­œ!|h§2e4áGÃh‘¦|V15T}áô¿}5t5[ýðŽìªKðŒŽl´PÂ×U×\™"vm¶ªêåU²Îä$¯d0³¢ûôÔ³ZÌ„F{aþSÓÊ„œêh"’cóîïœû®?»wK4…kÃ{~}šsÏGº‹œ™aÜx(`Ÿ¡ÇîàzÌ£†ÆŒäàÉß™—bl–+—‰_`׉݊É9Íܼ®Ö¡µóÞÃSÍýþ…îzãìH`ïÆÜšw•#U?«'•ø¿^Œv㸑öº¤"@¨h®ôˆ÷µ–arô…‹±Î¶ÍwE¯p¤ ÄD„ŠŽÓPÀéµ4ʇ¶ ·- VM@5O­üäþIctƒ–ha_‚–Ò-UÿÁ8ð[ñ¡_åÁ¶v†5`3xÃ8³1ŠònHkÖýЖ™ÖV/¡cš'æXÀ)N¿×UhÛF6y£6`Eɮʥ¯?ïþÜ]KFm“ß7NøûƒÊí»²Ë’•µ%DZö½¤‘îE%#)Ä›t×îNíø *hËNhs)¬!¾Vwûƒm~ 13QÂyvEÉä Ä/‡©ÿñ…¼FŽ•i‚¡‹$‘G©²l-Ç+Õ?8´†w3ŒÔšO”ÛcSãÖ{Lð¸Ýb톑5à ¸¤ÿíÇþC[圹Xˆ2¶Ž5÷Ò:WI÷FõûzFVv^YJ6ò”ŠT°àÈž­º»ƒäS:8üá(‡÷çjê†vÿE&féû¤æVøîXc^ò†®Mê8ú6ö—ŸT€§Ô0od ÷®½d²L客ÖF[5¦§²³òN¸:¼úÎ úÿüntŽìïXÛ§+Êk«ÂØ¡þ!ªê8,J—š§¦135÷¥²«ŽÓÛ½5­o‰%ùÕR[ëj»5²ÇŒ½!6saÜ÷Ìï§¶Vû7¸7EKt@bECWïé›Ï~:»¿‡x§ÔÒÄÍÔ€èŠá8 “dl1TÕ|j öO/„`g·âs[OþΊô2,˜-j^··ËNxƆSÞWÒµ,w5ŠÿÚc oõýÓ¥žšÓaWµl ägjB ŽÕs§,G-µdôµV,M?2Ùø†-Þùz>SÁ˜EI³ § ¸¯@úr%îùÓá?¼s‚A Á–îX?á&eã¿ÒôòTνÞÃo¸EÔ&kÌTÑÕ¤¸º½Pªä(Œ\ïËÉ’Ö_=0+)TªÀG\ø¾M:`îjÕ89åL½! æ‹ç›7¶*å‚õsþ;7Z¿¿¿26ƒã³*Yg /ÏØ‹Ã<ß¾êÚ³‰ê0–zcvõ”Ÿ{Óóù%xö-üo?»ÆÌS/¥I:s½QÛ¢˜ ~Í÷ÁÄŒmÝPóuô÷ÔXÜð¨™pcÛպ6&ßÎMK–Ï⡹‹)~ƒëÀf`µ’)êþcå6/¡,~Ž#ÔÁ ±è`Æ3D:µ”t’ v<åêï¾òéŽÎà˜ŒS4­M($¶ UX] ¸D«/„•TR V`º¼RF~‹:‡ß`%ãààààð>äòpp­(q±•9â©â–©y–•̉Y¶®Ó[¢¨´îIžPL›˜Ôu>v«yìÈÛ…›)ቘkÿFö- ÀzýSs@Âêqò‹ô5TŽ_õ?¸c)8žLñû×I12Z掾uKƒ`„X½ÉSÛ–H}¨ã†ˆójºqóúr›¢lmì:QˆO ‡›•ÜWJ.(PÑhUæÉŽ­èÔ±b4Ä—û3íÑÐí/ž¥ÜϾ1Îìï!vuÜf$Y˜«o=à?¼yìÎâ»™#–¯H§Z›Bá`-&L~íµÄóg"1¯ 8tY`€á¸—7Ã0 «‰Ñ€O#Yé ²Ã$±¼æ -š¡a€ t)04ó½W=þ»¢jä_aÍ ,sb(phÛ‚ŽQ:F@ð^˜òŒ¥ý›:u·XjõåûúçyK50J®†óº­òÕ«:Á3¡¸×Ól–³¼™ÜÖôóÆ–&™cHd’çgÙ·GájÆ0c>åŽFócî3Y¾—z8ÝO#\žWâ<¡è%kÔv4þê#$ÌwtVøâÝE -‰±H@‹¹Õ‰YùÈ­ºÀ­ýM¸“ãóÛ|1#©d›kEûMÌ1€A[£5…Ú.oóÌ¿Yí—«ƒ¹?»Þ±ÓËÆ½«dŒbqg*“Þí›Xþ€{¶ØGÏ`Ÿý_(jW Á‘L"Ji¶n^œ࣠›ù &è-Ò1Âcâ0¼'aN_{älµ"„ è6u]Í×¼!×ÚÙ!‡ßL%ãààààð>ˆ5ú×XîñO_”`_¬4WscxcÍbÎTC;î6fuÅ0^œLZLŒ ç2 >€–˜!ýÑŽ4Ôû— ÆlÀŠU¬×/®q·`eªÄ¥ùÄtI8_ri±«Ä0ÀüË[ßYó-‹øIèc“¢OV[ž; \ù¶ Ñ;‚Ž0Ÿ¼Üô™îÑ$^¿“ž>:Û–“Qˆ/í¦kºý_¶œ­èB Ê]U¸->ZÃv)"T ßoOZÜ{9 H*•›Ôò5õ©“¾î(ö©-ÕoŸv?¼-€ÕTíÖ0LÔøñxä`cå­J¼‹,`¸»‚±¹9ا‹õQ`à8T!"°í>Èc@â§éãúfG.B'pD`@ˆÇÀ¤‘®ŠO ó"lÇ7áêà4ƒOªuu ø²oÉÈBThŸËfqe¯gp^‹þàJu¼òå‹s˜wÌÄnmщ©‘ä@›?g BÀb @$|•¼n}å÷ðµ£è]5‹bÆ5;:wüÝÄLM&ÂR“ÌùaaC“µÜÁ_Q™ú  –f\:#,ºëö¦©lj˜AÞNÊܼQBëØüAÿ¬b2#Õ¦”âUÜ!B÷‘ZB¨&‚èüLKëŠ ûјĻ<ÊOÊ%O[´:Ƙ«­¥×ÄÇè’Êœd¿°¿4 $sNNÅz×2ÞppøÅQ2ïÃåqlkÿê òü>ÐiÀÏG:ó:ƒapOëLˆ/¿þî÷ÐÛh9A†} £8T¯ß›¢28CüýϰLÛ0eB&©¥ñÞVº1n¯¯§Æ 0–ö†MøœDa8¶­¡âåô/n {Ä‘Îh%ÐàʱµO“-ÀÈÕód–‰KZÿ||ã…q÷æÚâÒå11×té }Óu³…‚!PjI]j¦®aîjδj¿[ÛÝlÜÕ=>Uœœ¯ã¤ú‚/ŽFöQfêú I*5–ôœœpÀöV±¿Y|hÇÊCwµ,+jØ6ÛÃÅŒ¤ª®\¼cꈅ$VïAåb ¡uäU¯_¯™ŒŒ¯‘ù8»5*6ˆ>íêè– ±åöul¾C˜^ªË³^{»a qÞ£®Íäùô3êmô¦þîYþ>~¿hš¤qòãjS'1d…‰Zˆ¦Á™ 1ÙÃÆ$Ý€ã‘C›³W§…7/†÷n\@ *EP˜‹+‹£'ƒX©ˆGfñ¸¡cã#ò¾YÓ$mݶA´@`Û0FÐÈšý¹~šG~L·m°,ä#tä!´ñ² ud7B.Z!£€Àh€ÓÐØîš¯û÷§’~b…l@6H ñ­ã®¯~<¿|d8/lnÏK*ùôkáž„öЦ‘ÿ…ºKÀt¸Z ½VŠÚ¶òÉ”æ9^©óãZ¿ÐáZؽ¼|’u{à…£xKûÒ?t„ z­;?€Â Ã*èƒÉð2ú¥9×›SúC{¥"¸HjÓÊhÙÚ»h<‡ßT%ãààààð>¬ÙîÿÚ ~Ï>øÙ`Û¹ÿ©®¹ç“mïäêïl._žÄŸèWyŽOÓ­¼TQkÜÀ€h¨+{ÜVH„ÐðÕSGÆüæÝ{´L¿0Åÿ¿?™Å)òé·.†?¼}!ì]=¿¦¿U:vÉuhŸCi$pH‘0À×P24f×ÑR©H?þêÀ=mÕÏï¸A?p¤:Dõ!û¼´îöD!kO©ùk6hyÛsþª´9¬"‚ÚÕUä(µ;8Ë#éÈ”ÿ“­…)œswxk•7“õðÝsþ6¯¹½M<´5·lÕµ I££n !Â]Lyž4–*èþþDÓ—vÎ,þìò Õ$™^ Á`½þJyOÚZ.ýàд:6{¨ã‘0¦\so“ j:ƒlTR—Ô]²êF6B•$?”«ÈF“e¢Çè8¨Ömþ÷§¾ÌüW@VÄe€‚.º2ƒïêÑà¥Ó¾Oï–YO>ƒ xfftÿö;±/ì/,ú§…­™'æ¯þmü ðZ!êÅ´#@¯kno ´Æ-hòt.‘üè0˜½ëÎx/¦F]LN¾÷=_űQô‡—.„žÑÃŒ¾PÂ^gD¦ƒÃŽ’qppppx/$ºo.-›Áöá¯׿c¾¸uTàM4 : WSo^~rs±£®öÌ/#»xñÔ0~îõ»w[÷ì4ÚšlI1_:å}í2ž)“;{Í»ï:6z¾û:jfjC³Ú_Ž]QOO³ÙÓ¦/×ÿDj¦Ì@.ßÖmOk¥›º&\¤ÝÈÊ&=ƒE¾#NmîXt^š‹·»Åˆ¿6ª„ZBrj¶¸xªyiIÉ ¶&Öüë0’¶KÂdþç3±ÿ°s&#už½J—¦UÂ&ßÂß=2þn!–IÔ2Œ.I|ŒÐÝ.%õ“³-vçÞ%ÁFƒÚ„RU*$hÉk+MŸ+noŽU+¶Ï‹¯!"a¾f—ZßbŒN’'߯öoœ×£GÊ›÷zmÝüæÉèºm~ùÅfÅüÖùo-½\lüTëð1=ƒþ¶ì̶øCd#d»7ÄæÞ‘-_>ù·³ý¸¤€PMÆàÊ {bØåqc™*uh_!—ÇQêîÝš¤1oÿR>9ÜÉ}íµ;½íˆ— ¾V©Xu‡<¤%hq=7ËkЀŸ4€°Û!™ÁGº÷o‘ †å™†X —I¿ßžo@ÀªšÈ/'-UMZbªÀ9JÆÁaGÉ88888¼™ô¶¯^<|ŠMyš­)ó·úRaoM6Ø¥3/ûj€/\äþû#ÉÑIüÒPþòÙÐûƯóœ}r!ÐÍ=~¿<:E§+\1¯43æcòß9ÞлêJÉyô<—©ÐÓhõ´ªÈ¶sJ”ì €“+Å6’‚·ø /iœKz؈=‘~v‚á™Ì|ª®g‡Bÿ×mcßMnz¬·˜.™æµ †}µ|Íkó\*k!Ó²pÚç•ÊE€Wëš9õo^޵yC‡'äîÀÎpê¶Ñàš1jÞÅÌ©‹.S—™Ð¼»WŵM7LÎñ™¹ŒkhP 4¸§¦€CªZ¯÷¦±î&N»pEàкVóðQúäÛÖö­Y8Z둇²ï/†¯e‡\Õ‘WÝ똣Jì·Û®¹rUàÎsýëßu«IÖÑ2£U&!ÞäŽåDP%çÍšÛX(™FÍUW”œ”òkZ‡:ÎU &™f²$I §cÁÃ!ðxaH.Ù˜@ƒ®• ÿ´ænYã=T4hFa좺.7œûþk•Çî„Oÿn3Ž!SšEÄÔ›k ºh­¤} ‰*åõ}>€uGþ9{ÇÇLŽ`bŽÙÐhø|èßþÙÝY ‚xíÈùÀ­1å¡ixø˜-û2ÆyˆÏÍzs©òêíhôÕEZ¼Z›¿r¯a~&¤”îZ׊þã“ØÁ^t÷#q™³é†6J®” eí|Ý»q~˜¼­oIZ3H£ÈX ÄýÒ‰«þ­¿ÒÉþOÆQ2ïÅl óynXY(ósl£Q¬íjT7¶®Äñ¾…§.7ì½zø­ O½@îî·¿ñÇú §¢I_°¨ÌRP>™ò쨓SILàÐt9t ÆCiúù$ûÔOèD0;8çõòÞ®Â@—*)¸$ÉêèE×Hž8vÉÎ[;7,¥IÁÊEª+fóŒ‰,ëµ`º>P·Zœÿá¶©céö½‘¢ßÿòjà– O©€lTÓè©j`C°ú´Hi€¾Ê NÕ¿5϶yÍímåOl¯¨Z[þÜÕàv  &¾_Üwµ4ûý|u³Þ5ËQÓ耰ÔNØš[IO·îæòzCÈXI/Hs#Qâ)<€gó¤+¤‰:¸i¬¼N»yÆØë´!é/¾: ´¦¼ôR|8"‚ño¾‹·2%bõ—÷@Rõd…Ö¥3ì ‡ò¢'I0)¡¤áê ¥ªBš ™lpÞÛ—ÏÏþÏ“íÿåÖËÍB¹ƒ¯)‘æë¥ýÍgä?üd°™MÂh¢\†Ë¥“­²†÷º4Ý û6‡[¦ôêÜ[3gsìŸ6&­ê˜E» W÷ÖÇë&'¦õ¶æ›úû€ýAÝ™™£/QÌ>Å~ä6©¦±8N¤E_$e #˜Nxò:·}½ EÍw¬Ò^¶_z…üCÔÏšúÿU½ó©ø•³ã™Ù$šgçé&ÆŒ‡!äÇëÀ-`‘0ÀdÓ²k6™ÉÙ€ð·7“nwÀÝq³™R±ø÷¼H®@¥KÀ{|óPS) a¦‰T‹8#³úKíàð£dÞÌãZ s%îo^ŠâÂÞvû¡Ý+µ[–nLOÖÒåéÕÀÿö³²À/½ëÎþ̋Ӿ÷¬d映`¤Þyš<µ+ÙÀ,.Ìgª¡×ΣmÍ&A³=mÜã›–ºº5` ‚wëU‰q53…»ÑÙ %qQ׳\=™[ÕÐÝý»¡Ÿç…S ­‘Tƒ\£:%‚m²Æ–¹•´h9Us‡P1 "’ºYÉЄM\ð(pèîÝúá£äùAâûcîÏïI™-€A+==z–†Ý}õw¸¯ú©òµ×¯mp +´ÒeCVGÌ0¬ŸX³½¬H]G¸Åx¢†<¯qŒ”¦Y|‚]ßf‰ g¨À[›jTFZи#0•ãêê1ÜÔÁ,’P$dÕ÷Vµkg"7C ëCæ×&É–»OÿBX•Dªß=B¨¨y‹ ìÙøá¾´1`Urï¶Û²˜9µþ±¸ßŽÍçû>¿¯ðúL}" `:™÷ÿþÎ\Æà$à^HoÆ0ð‘zÙbî \ Ð%ÙW'Tø MÑx[3ÖÖŒÀ½5] ½–ÍÊZyjʬ)¯œ7v×C8Ä2~cÎð|æsÑñ+…»:±¹¹B LNå~eåqì<»«Ï|§tƒf3 PlÖÏ*—‘+2‹ÖŽ †ƒƒƒƒÃ{qy‹E–‚ªÉ¤ðü©€š_èð¨‡n[’1¹]svÕ ÂíséeÈé´—F@ƒÚ…®Ôë3)™±Ùx;ÅÝ`ô†aKl%•ü›#ñ…Åu©q4»MÚm³vÓâ"YËÑÞ NqýxÍm?TuêÆÚ>ŽÆqë†;,s»Ž{ÝÒ¼V®Þœè0·Â¯T˜ªºK¶gÒj8GÜ‚oÝx¥àšJj2×·øKí1èW—-ó·yÊ·½ùÂÑïž÷o^_€—ÏGlà Ի•c¿HoÈÙì=‰Á1),šô‡#ge è OJE7¡F7¤Æ8B]58æ"Õ×’ß¼<ÐqoOŸÇ[üí½†ìï}{öå×Õ©äM µ÷ãè;ôÝ·ªÐÀ²¶bha(¯{`wŸ81ïoK8²ÞÁÁÁÁá]™˜ÆÝàù×¼€ãŸ¿?Ëc€aþ¯xwvØßü“¥XíåsCsúöõ”b²ËÆS‹p„Òˆo%ƒ¡‚X±è‘Ææèï(k„×%€5æö¯?á'†½ìÌŽbüu ]Ma©ñ©{­Þ¡j˜“9 ph­ÓÍs%•ÌÙ¹n,e<=éNh !¥*“€P"¨žIã;{µsW…Á‹!ØÞ*>ØŸ–lá͹øÆ„U)ê·Æä°·¦Ø¸—16DWÛdéMY è6f.P ~;ëÒ+" Ïྨ¯•¥³¦T^´uÆËpälè“›Kÿ þWn(`ƒ;ú¦ºy=Èj5iŠ7È„1³lºâ"0+\ð³ZyU€üÂùă)ž²¿s²væL¬ýL3·Ö½3fS9sý‹Ûº(­„¶+ÖŠRº*Ï›K2fk%¤*néIXi XŽCZ­Îå‚¡p Ñih"gløh»ÛWûÝ“Ããø÷¯_ÿRº¨ûsâ û§A­£³¦“áGÏj«ì¿÷x¶ò㳌ŠûƒTHÀê£F2¿rø$ó‘ƒ]ß¿í‹Å+|QÿÉüŒ"Zê¹Ò<ÔyíC gŸ”¶w~Ór½gfÕ{I1‡a`ÁM6©6Ðs³’²íÁæL ªmßÎúêƒû쟼‚É$väg6€ý¡ýx[óÚv.§‹ØÃ:„y]ÒhžÑçØÆ~0­¥ÿo¦ ¿ZžÇÁáÿ`%ãààààð>üèW¦dïìŸ;L¤ zt7\™a³nP,»Ô±¤2í‹vùW…q¦ºµÙý‹‰fO-ëgµCìú0€Nº„ZV`ñë:Ñ%€ÑI@¶eã/ž&ºbè¶ h±Lë“âu‘`©RùæDãÇ‚7ˆ 5[5ÚëêQ—Êù¹<÷ÓaW{ÀþÚk @ö3oxnkÌ~jW…g—\Ë ¿9ëd« ™T¨ ŠfGôÂÍ·B#ƒ܆(Rî²A†x*KŒBj@Ÿ3Í\MŠîDˆóyµ…BéšÉAÒõ·¯1Š„ÁÔ&bƶá¸ÒÓBäû¤bÀÛvWŠºÀ¡Þ;ïÜsÏ}oáþïÞû¿×4ס¦ {m·wg"›"ʲ3ï=[ä?þñÇ“½!9iL63Ü´ÕzÎØF_kà˜ˆG/ˆ[7I »Z{ìK—L÷ê€,„z”w€ãX–ã:R).U*¥E†ÀQ^z m|µàÆO•wz•™Zôû“ÛnhÕbÏ]þ#g­Çï1/å¼oŒ&wu¨·uOßÿvE§,¬”õõIb<¥¶º²¶ ÏLÝòdê,Kª-š•õ ¥Z¼bs²ÉetOá´¸ÝGhnR‹qµ0_áé œÄV™œcbŒH6+1.ø§wúB»uñ…hB³š<œHˆÆ‘‰Õ"®Ut–WÂÝñF®Æ»ƒ¶Ö ¹ur%vRoºóU¦ZLc†ŽžÈ¥æ$};¥bá¡¢»grxn¿pØÜ·èî nìË´–#gév¯g.ÊÌ£[&Ý0Xyl›F®@DBŽžqpp”ŒƒƒƒƒÃÍ™K?8N2°eõ7£m}vG+þá‹D—½s«òÍŸ¹ ‡6Ið^ÚÏý·›åãåE9Ôë_?U›ÔB·D³?®Çò²ÿî`í¥ ^0 †°4I!,U=?ÊN.éq9{cxs»åsã'ïV ~𦻳MM†5Q FBäR¶ «ÚFU$@ D,«šÚ…qî¡®JÙP°M¸gsÙw½orQõq:[‹*½Õßp æ7g·<ÖtÓÎ!%.PóuÚ-8êaEÆXnu¿ ek.eÉÖ‹u> º“¾˜—+àl}ýmߟ>ü~~ÍíôlœÌ®õ—2þyªƒ­ÊâT(béM®íâXM½&dòU×÷GBýÐ(H2zŽ8x_°6™Kv¨À"µœÍâè1sûvr„E*ˆ¼™.ƒX™KôÙ³º®f×Ș%ÔâÒÊ¡{]7´Éd#A™#ŽTü4$ùô #ÛþÝ]ã-ÔòJÁó÷cmQZPš‡V®z›½CÀù«Ìþm걉¦¨Çúë‰[6w÷çO6uTÔ@øír›…ÉqŽÍ]¼QÆ,#šÂ•t5bê*Þµo]˜ðz;½º7©A0<;‚ûBKsñC…ÍóhúÝ1u°[ëhCm°sMÂþÖº{+Ú¶yÅ<`¹±TÀ·®ÄÛüœÞИÕ"¡¡Q{Oþ%ü&€#c%ãààààðþôƬ}CöPÿµ;§ŽV´˜ECýÖÓÕOºôVø±ÛóËo‰<þÄíåoζÇ#›“×ÝVr„‚ 8¸[¨ÍÊQ+]ÿO_õöFlKU`h“¹_´#Áu[úÓ÷WÞ÷tv5•8}a~y@€ÑTÌqhýSù‚é‰ñ5È•˜t• > {‡äo¿ÃÏ’†¯ýºÁ«Í»ƒ‹s6?·àkõÔO”»öEò–±þü* Ú•gÀ° $Û‘ôõ ,i¤±Rl“UÊ÷ÂhãS»³ÿûE–·è€ûÒœýçáˆ\WHc¡r™lj]«dÜ4ª•®5'96þ¾9ÈПƒüâçcàáþüÿÊß» "!©-h–íœÕßDšÑ¬ÈÛ©V2ϴ߃-鮲ů]è‘|*x) ¸êªe!RÅ„¢ê^••i÷b!õxlÔ°!, ¼|éϵ{³ß»ÐIò¦éwqkåÌÒ–-çq“ù‰”M³8¯@ECUIyùN¿RÕ‘¬cɸ6Oh0|gtëÁäÕ‘Ô;¯Û¢&^/7t/ßrð@Ê~°Õœª Sµ@]cF Á$­ËÛð°ZÌ]¯UTÀ¶dºOæÄù±íõþÐ¥WÍô>yBŽìYcÜpd_Ô•)H†±¯¹lË*}j:¶ùVŸU·|ëJô¶åד¨¤XÊ>ÿ¬ß“jÞÏþó[¬âjéôåCBEÐÐüm™Éás#ø…7ñ¾í¨;…Ö†hŽœFO4Vÿôrz]eòUWR4hÛÂ%“•–7Ü6.]E‘S-ãàà(‡›³sО¢»S×éŠd9Cõ["oïè“Æà«/%á½§Ç<¥îð]˜²¾µëºGÝRǦ^˜È^lZÓÆ*Ä}$éf´¯|¾ _ønëPßM;oøì‡]¾Òø‹ïö³‘  4ycñ@ÖroçàÙ·¼³ØDÆíýK“tßS{*/¼ãKä°·²Î^H'O瘷¤8Æ€1þáx„$ðÝ]856š@#ƒÜF£N»*ŠÕâ֥ح‚,ÝÊM[ê¦;7÷ïšRn:í2©t‹3Í\樱y"Ø3´ô=µg Ïsвr+†¹òØþÝÙ(„½eó÷“¬¦²8õä~´˜A‘Ð5y&2¢rÞîG¼Pݶ+t:6«{öŠAC`/‹Œö^(!SK[^‘«Y„e#Fô4ÊE¸ÚhÛî-¹ÊRµúÉŠf×KNÑî›?t©é¥cöoïÌü¬j1”êAÌØ˜:Ô·²Æ·ÓaÅPc¢ìãQÜC@A¶+ÊŠZîÏa¿8×Mp‹¹" ^+ Â6 †…ó2TUI"å®tˆ…¼Æ–£Ü²Îæjž…ª8]ŠÎò­¢þçÈûÛ«û{–g0yáÈö?­„Sv#&Ô dÔEº#iLÞx9tNðÉ– ±"d¹RoÛ}€¥J3‘òD…Oj$ 1\¶MäÓæ¯°Ý<­vDÔÚ¼e6øWêí€á`ËtH¨ˆ,»9K2ŒMá¯?kt¢þˆ„Ðä Œ×^²eêÕÒèE©6SÑrå/,àþ&”oÜ9ÔÁáˆ#ènŠ(à÷Zßxž[.\YyQÄK¥•š‘7·vUÖàÝé5“rg=añ_Þ ]˜¬m7?A%ö$åZº¢Æ“ÝAI÷{uïcKÅùÂb ^Ì.28K²ôÈüЧEmP‡ Ér„rþŠ0‹ü{ZÌG¶ÏQÔ´ˆ$µ¸«­öüHr$ÝôŸØþwïœWCOvÍÿîöiš%?{k†åˆOö-2‘.ÒGF“ùЏáz´×eÖÀ°l“Gßlå’B¾r…êK4$U÷„©°a~q'žTï^yE þó…JUß›^¤ÁÖV"4²Æ<3º·qr–xåóÛÏó·t“Å)ع=·~NÔ!â’‚Ù ŠßE;› 5lšAv„Ѻ\j«h"°ŸË&‚ö\^²€çÓ’MÒ¼ 5–i¨RJöyæÀ°¡ªÚqÏu'®Ü¥|Ë+s©"»›<7Μðîp¹SÈ¿6Œ:Z¯…õšøjVò6ä%{¶bdÛÑA&áeD†€ÍÑù[BŬ;zaãKºÊ9.‰yó‘j™AU`´¶P~[sš qW Åü6 „Þû’(÷óù³zÓ‡;Nõy±T‘ÓF, †®óÉa°< °… ò5÷U­gsA—¦I½¨Í—ø¸m9¢-é9M·éˆQ€Ïý!j™GS—÷Æ–^žiûÎèÖ‚´’Ÿ& 0´}æ ¢% oD_þ'xá-¼§-ÉX’ñùaûü°}ähî+ßšûÒw•…é¢ ÐÛÆ–­_ûßéß{šÚLrîß%ãààààðþt´Z{­oº–#ò8ĹâµýT¢†1œœõ-G ‚\¥×#÷µÑß®Êà…¨ý[•ßhKŠ ¡R.ÚXñ±Â7x—-ÃG[iÑSËΊ,òöþk¼Æž¿ÌMâ…LÖŠmb ¹"õݑ؞ã‘íÓ0›²üâDß‹Ùæ¨Ç>9ïý÷Û†÷÷ê[r­¾Ü©tâs[&F­fÛ°«îÎpUd /¯?w.öµ×RSKë}´Çe®,»X“>ßÍvïåã.Ø4ÌZ¹8¿°X5/îôÁj’›¡˜ª¯VÚ&¿7’º0]~‘k58óêhÓ“}…“çìã?3þzß˾{w+Ù—Q€Dr7Tå,Qʦîãÿ$»í…³î(¥tñU(häx>WLôPŽXÉ"Ã@˜€T‹À´¸lÂvVêÚã^äÉ•ËU.>~%¹£¨øþab+ øDß…nº úhПP5~ü\þɽ×Õu`|ͩΰ ¢Øsec®bŽyÙŽ0ïèÍñ…ǺóoN²k»ß„y]ÒÖ»”-vÚðM[!Ô¤ZžXŠ={¹çIû¾øH¦L<ÕWxiÆ7õ+÷“¹>/­>™:kòB:k9)¬U¢Ê4Á ˜ump%8P1¢±1]MX‘¶-í“¿Bè ÆT…úbó@TYDrÑ uòšîêî@GÏbV[}Ùw]Ù_zqºíÛ#ƒkõL,·ïÄö¥ëû?5¿ð7æ×Ÿ±*5 ì'|¸÷©ÝíiHöu¬Ë¥˜Ì-- ',ãààd—98888üBºÛÍjƒzó´xÇŽ•€@G3^ÊRk«YœþÀ¦Lº,~ýDßG·M&…š»™RøÙ±Ä`k,U75ƒ‰CÁ ›>Q êˆ!í÷b7Æd(†$-S_½G€€ÓlD©Tí¦½šaq ¾.¹ ! Ixg&¹©™ê(]*´\4“q—†Z_¼ö@gU֘׮´¾›IHAf7?sb©‹ ‰iª%¢Uª §jBÂ݈·ç»â•LY˜Ïó¯ ûûbroK}¹ÖE' ¯,Û0m’¦yžW”õ&“ó,ÞÙŽDFÃ4‹•F­NĽlKÀªÕ¤œÁÂÍñbk¯÷äö…7ž'?þÆüàãÝWšè¢aPÔt.ã—KÑ¥ÊÞwX¹ý‰¥¹™µŸêÃGN¡Ç¸¶¥åž¤õ‘U|æD¥}Ú³rfuÀ;…¦‡#«r‚˜³ÃF6M›ŠR1ýK¶û6áâêÃÂéšÙàÒuêx¾«¨1Ÿh»ä+€m«$SØÆ©a›B>ÖH„Ðä,áaÙq+*TO¥“ý×DîÊ„ù†QQL¥† º˜¸¿îæ¹3±OÞžXàý Ý+ºp¶°íl6°7šÿÏ=Ï ‘y»3â2·´dæß«cá²àýLïxHXÉx$½÷‘Þʼoñb¥g‹(§™@ÜÌÏØæu€r0føuý@[/‹ëy¢¸²c±üxÙ“€ Zå¬Ìx gíE!;—G‘0hµÍ¯Š¨š©{þöç®Vž ˜Ù×Îãþ&Cg+ñGGçG)Ä {·XC}*Èzcžö1*ðX§0m ާT @6À¯ÜZÇÁá_NLÆÁÁÁÁá òö޵X#Ï_Y‰Ì$£öÄâú”*‘Õ·´dv4Užé¶4{ÑôÝÝ» àMD/ÎÇ “§¹‚½ÐÝ¢(4§HÖ…±•GÔëc2¬ E»L©¢×¾ìsYû:ì«Öç¶Ë€Ðúû¹²åž$ÎU} ÷J% ^Ú-ŽöGæCbV¿{ÓÜÑŒ¿Çš+*¾ÅÝÛÚ ØêØi´¸«ãÑÆÎHÅ«·oÉ~òöE¯hþèxà+?‹O-ŠÁç6`˜fMÒ\îõqI!þö¿o«ŒˆkÙM`Xö\I+H–—#ºÙJ 6vÍ9óT‘D€™ÇSïn •ž½Üsa®u¹gü×/$ß8Sv5ÔÏu}Oº##¯/¿‰E`iMLæheK”4õ15]¶é4¨Øä9)54Ü™ÈüÓ¹M‚h¡Œ½?¼ÈZzÀe•X·¿QY•1@RH#XÖÂåÓ¾«AkÐj9–XŸc&#Ñ0¨T â Q¿&üÄÊB&ØÅZZSñÈyï¦ÖÑJ\³ÏÛ‡Y_þ¦ùŸþ®qøµô=‘¹É|Íßµû¡m}"ðÄCÔÐÑÑFÜŽ{䯿Á®þÊÀÆW BÔ'€@k`ƒdp02MÇ"ŽŒqppb2¿ "oß·§ñÒ;ÞdÄŒtQ°3埅miZêŒϦ2ˆVjpü¿_øñt D1]Ü+—q¬!‚gQ;ŒÏ¬ó°\1,x©Â,huóÇ}Ò\ÍsG·œŒSÁ°ýòQâ`?,WT} “}³˜”fiIúÍsmÁ2\Òzz‰Eöz³"hïMD=avg"? ‰Ûèóǽu““‹U:¹ÆtWä̭宦z¶ÈÎe™—N‹ŸëoÃ*ø\P¯ÕBñõwÀ/å~ó€ šå#ÜÐó¤¢bY§|aj>maÑö¯MLZ¦Ëk”4o€"<µ‰]1œ x^¾˜Z²Ø™¯Ëë(|4vzLnY[Ÿ«¶œ`69‰&îD¹k·7¿Å{eIbJDpeýv\š¦ùÀ%z¨Û¼üÖBìö™ÕóuoaF¢[økÛÚ+ÖˆpC;8¬àü~)DÞ¾wíÙ#^I!EÞ„$eÍ"krÃF;Ð6¢õ •fÑ>Ö=ïò1³5÷«¹DgXR€@€ø­Rª‰š0#_})¹\9a“Œè´‘Ê]½QÆ€ÈjE› º­¥"‡m(q‘—s/ç67ÂðXxTã‰ÎùeS6ý£J¨¾®M§Ü4‘¸3r™s‘‚*•…àòò²ÔiÈKEN Ì©Š˜¯¯¿793•”îØVþÔÁb–ñùõÂÿø‘orž5MC7-Î}MúLÎRx9Mˆ 7.iÐm”ÓÙ1#P!¼m(Ýb¦Ù5V¿óSj¹= U]VC`´?è|©*Ó§ bO’s Y¼ãœÚµ¡kësWíoÎn»Ç¿0àS¼%âšÝpGÒ(f͘=²‹oT6'\êrÀj‚¢uÓÔm¤›ÈVå)œìf®u Um~Xéy¡¸i 36fO^¡£×›çü?:øü×Bÿö+¾ßÑMO”ÃNN¯ßCÞîhÖl¯yÁÜ^kŽhóyþí+Á¯½–zëRb:ëÏ×Ö«Të'GÉóÖÈL ¿Ùºs }.Yc.ÎÇ¿w¡>³óÒ@riuü‘³ô{ô‹ ‰6¯ù'S÷²óÁæ#¿A¼©zÝF¯n1,P$&6y!wð£lzÆwõb©R ÝÏØP!’ d´rUC£_ÓZ¾üxCŒ¸•ŠPž•ØpÚ×¶á%þ¯ßÁOÝIOm×É­-˜¨÷ê–ÌpÖÿ3›§ó!Q€ûo·óÎúå9ùÛ‡£¦jÌ4è•´:ŒW"R— ´È;1'&ãààààðË#òÖý;äo½ù·§ã,ɤÈoœ#$ÐêCM—¾³¸­0sˇš.Ýß”©…8/•–B"§×Áçf+ù:øìÜ.¦ks’ªWøª€H3/çèFzÃi@ż'@¹YÿE+&¤ñîŽ.Í¿ñóÒm Dx¿{µs_ª:ª-¾$5߯¯Ï‰š¥::­EYçU¯aWFuGW#B¸*Q¼É&¹ÆÉ¹øCýµ›íƒØ œd}l[ñ«¾—Ž3wînìÙRëUdô¥Ñÿç'Wž¦ä†s¬ c2îÁÇìBJŸ® oš­.FC”,D„zÚå*IT¨R/q$OsgæŒÄ´S‡‚Dí^9ûŽö IDAT+굂œk (öÁ»4èç`èTË®?K óÅqy½Iä´°«ÖÕ"}ûõÈÛJSiâóÏÄÛ¬ ¥Ü©&ƒá˜]]²z\®@,Ñã­Ö7Î(ŽütûÕXMC3Ëk} y'd,Fj.Ê6Jp›U0y¡xëÝÁ“¯À\ï@˜Â³bWÈV~k ÛÛEÔ,FWA\iø*ä'¦zîè½ú2ÖԹέžàácöSÐÛ@ÄáwÐÝ{<´…òm¡üt>4œñ¿1½3•éN?ÕÉ 8:îÃÀ®×,ÖæÞV‘èm8“ƒÃGÉ88888ü ¤’Òm2õÜÑhG²¾”g"Á›6HáIµ‹¯Û6¼œßÜÂ×ünGÌÙC³LÐãuCˆ²5 A ™¯u…vé5W³|¹ÐÜ@ƨ6¿¨G³†§j1u‚ñ Ö…Ÿ,~ñ³@ V¨D@?|ÛUuö†Ê­Mh¹¿Ë‚·,H°×Í&^ƒ æÜ3õÛcÃ'Gè^—w9"‘ªSiÇd¶yg³…ØL!ÜÊßì ’ïj®ÚII!Ʀ©rÃ{lÄw×Î_&?{P_.m‡_.ùAjŽŠ¹‘»I™ö«Ù2H»šƒ.3¯påPT(N3Ju¸’ú›cý·o±KTôogR„|¯ÆdËâ\‘7 ö¡qIX1Ê»¶&=ö’ÌüåÀyžQÏV“7ö°;S"`*ãëöÖ‡øB7MƒÞF¶¦sí[´ø¢ º…Ɖd©¨#ËCQ8-„ši¯u)Ð]…î5»ª‘½\ duù¬‘,wÄÊ7¦Õ­²Ît[àŒöX¹=VYc' Á‘\àBÕÝì2º| 6D½=ÕŠ ÜÀ?s+Zù.*Ë!ɺ$×òr›#gÈýÛ‰Ÿ]ÙŒ‡ú®h$»Ý=~6ïãÎ>ªýR‡¬ÞÝ4¼ÈÉ‘±\GSáè;‚ ÿÃÑîÁ[)`ÀÅhXÂ’BÅýŽq™ƒÃ Ž’qppppøÕèj–¦²üTÞ…Msë&é}FvŠùœîÝížx­Ü¯K Ep÷øj—î˜×í¦"¹r“$+„èa.P}á|“š ¦  a.mE1†wµ&ÒRT¡Ÿ÷Qåו?YÙ×*–êbœÇ€xo1ÒY¼x9ù‘H§+ÉÛë–”áÛÚ”éSÊ–>o•tóma®ÉûÊ|êÑŽË­Šœ™.“¼‚¨ßÙ5óÌH÷Ó7W2Y:5²EÊ'òöPŸN™Õþ÷Ÿþ?2¶í¥š˜#C>Ô’°Ë$S¯è|èol§„î€Zð7æýµÙ«ìu‰i$<`ÛoŽw¾Ì¸Z£CgµqãÍÔm[ˆ øÉZ{õAÏøÈ‡¹Í#ZË|u)¤iì—n=Çÿpâ–¡6T«v’$4±õ0]C¼¬Œâ嬔á:~0LîØí> M”nAͺšíš•R¾&ºüé"´²ÅíñùD–px§›Ñ,ÜÐ>Ç0­R­ f3àvi‚U¼ñ—}„e“£r¢Î~Œ¡¦±UÁTfA¦±“œŽm<è©ûy[¨·É>²dÆr™nÒœ¬p›rT$ Ô MQ·+¨ªV¬Ç3ô˜¿Ý¶ð'ºçÖš#Z°kž¦M}êߌ~¨w›3бôX&¾¢ÉL^(l¹µôx²Ónm:`(sB+¶nP"ig—‡ñ…éb×îÄÕŸKŽÆ{Qšu9‰þèã+ÿüÔAó™×øOÿ†üþYaïé™àÅE߉…PO4ÔfºzÝ—Õ\^º^Ô˜†L½7wpspø€á(‡_ ‘3n/|ûͶ~AS” [=ÛhÚF*÷ø/ý4÷†˜"á¾7:½‰%#¼léelÅÕâ1JsJ4)ŸÜ»ðæxR*…87-ÙlÕy¤>â:¶vZ?¯ ßm}¹ªî%,ëì?Œt³£^®‘H¦.¼¹på²Þµ»ÓÅ×ÖÅ"j\’­aò‰£^Ó£ŒÑXkõåwt±ó`ۈțc%­±¡Ûc¥cÓí·µ¯/öXF#VBR’BŽOX};„ìÅÓÄgÕ%Õ%4·Dmè­3ä—èÞŽqȇZâ¸Å Òk“%6²ñ‰ìU2¦mb¿ž{DÏè{ûømhö–Ùo´=5]xÓ¢R•\Å—šŒïÒ(RP[”wµŸ:ƒ òØT2X(\ZÄ4OÞÒÏZŒP c PÈÖéæÎ¹WN §îtåܸ€ ö–9,uö©b-Ý“­F{3‰ÛsùýæÜ(5v~•¾óÞ¸9—ö´€‘eÑj|Ù9õyÓc:ã›ê½c혜èh»¶Y‘½w‹ùÒÛâã÷lPúµŠbr’ÎI¶òbºÄÍKP`éÍôÝŸ ¿:hÛÂ5™ö¹ßg‡Ž’qppppø•9ó“w¤ÿŸ¶æ+BØ'ßlO*>J/éþS~ã……?ú}늷›\„%“"Aêu:œã[“òaêõFh2˜ÊÓœ¿W÷èÕWÎÒŸÛzqµÜy-F.ÊPI<—¡¿{yà¡ðÕÁ]ò—ÿ™ñ{¨{wY·m¡¿±$OŸ¹|ØÞw êî@¢ÁJBÄW™:û:Ck×9s¥ &åË-ÈžÑbK_pn›R5Vœw„ ÏŒtw‡=a×3:¢ ĺmùèDìGø§÷ÖiÒèÛê-V뢢€#!ÜÑj; OÜgz³Õ¾p=õÀúØKw»1µÄœ¿" mZù½hÀ©6W2}uƒ-kìXÝåÅšiJE$¾¯£þú¼—c"v_]­!ëè|\5q°eãò-‡ Ž’qppppøu9ãß Ÿ;ÿ7{æî¦Õ2|~¸ÑÜT¯|ä6«ž âêèP€å LÄÓ&J•Ëv§ VÓÛƒæVw5 Of4ò“­·¶Õ–»j®%ÄVÇôæúø´æUg[>»y,$Öà¶;‚‚Ù€áj÷]ÁžÇ\]Ã_ÇCðÀ'Z¼jvšSn)H*bmfuBžV÷'&Žfº¢‚di?Z‘O£hͼ0Þú©¡á Ïn¾Í8 Ð_¼ ò®ç˜psº¬\+C§Þ«ø, 8‚ŽÖ•XÖAR$¡ºL.Ë›b•:|…êÚ1? §E„à¯:Ç^”öT§Rÿ*ˆ¤ÎéüKŇ¡BÀ"$…It:ç†üÄ-WNÌw+Š2 m‡a CˆT‰‚B —¥·OJ™©Z²‹©»£¤‰)ÒIƺAˆ4c–¥`6-Äö×jÛÈÂ@ۺ˒h¬y ‚< `ÊêêÝ„.ûlU¾x·ÃDv¢@Å þÐÆùT"§g«ïk†°†|EÌJL„×!@èή™ÃÓíOögϾ›e‘Ùb8ÓíæÔþísð•9ô[ÉbY£ƒ.Úã Èz£V3ßëwÙjNf\Ý~+÷ч˜Ÿ<϶x…hˆ.î~˜´uæÌËs+M•X{¥g À±ŸÅûkúЇIŠ¡êEà† š*l>Øð7\êù4Ð ‘’ I–Ý¿—zæE†‹ù-/czTéh:ÒulaQzÎ`KÀ,ưؠ:"ú\Åõ¡n¥$²ãµ§:j£…à±1Ï`ký—Ü7‡õ8JÆÁÁÁÁá×$ÇÎú¾s¢í³wŒ]ÒYÑÖ 0•š”¬Õ—MdÁƒ*[áÒUÔk¨k$¡ ¦\¸òÎ ï½Ýš ÚMõÁö\W¢òóKI€è:13rI.µ0)òu•Wíƒ%…b°–—¼oç8x"a £C®»ŠúÁÏ­½¸¸K£J™uëäiõ–ðü¹Î¦xVB×΢-˜å‚ÃKÉÄu :óU×sg£û‚Åõ {è•<"¤5ÑèéVʇT›Rë÷d-"E7!s°Õd°ÁXêçXVEµËJ¥Á?å1K’8juõÁT ¬ –®±ÞÇÍü=:ØT€PM¡¾sÆó[;+ôNOÕ½:­ìˆ-B€\žFP¾„À ´¨–íWÏ©;è´Ò50BÈMKOpiZ`Úˆ²u—ÕXÅÔ — nÛé,Ö1/®aT©ÕZƒá„ǶJÏÌ»>r«uä õø}«\ `Û¿l½Çsçb÷ô^½¬ÉZI¦Fë—Ž,µ<¶wøç"‡NÅIŽ}õûÒßÿ‘9SŠÜj$5¡òc& ”°Œ6û-Ó¬VÊJ½Ja̓늧%*à{ë?<ù¿ÅjÕ’RÉ+ͽ•H›7=Ýrü99’*t <ä;u(A‡ŠûŸ´ Ó³4ƒ-,%{óm}Ë 3‡ à0€l]F_{!ÿ{¿Û4f±2fm ’ÍVmƶAlè,þókÖ“÷™mD`QÜ ð¤ºÚ™4ßðü¬ÜúH×Õï,µö‡æ¦ žú¡C™Ž=AC·ê†àˆGÉ88888üÚˆ‚ÕéÒnm“Ž\nºÙžT¼¤~.뻣£¼ú"ºac‚¤D³‘6=A*€1ik‚’Ö|Mtþ2¬~oÿ⿜iGmiÉÀù|ô,nýw5a7uí‘WKê•SK‰Ç[®«lèJ%ŒjîÖ©f—zéøÌÑcò@'ÙßeGÖD ‚\eÀ“?\jnWKk?~gÇô³—{:B…e&kìkWš35â÷,&=Á¸®òPʃ;ƒ äV_A€M2€¤†çdó4Á€–.:ÒeÓÐ ]1M[ ,¯K÷ùyŒëŒÇ0z¦õwÜouÑ?%DQNl¨…fY~vvË÷HƒõNÖC÷zì¯>4·-Q™“xYk;Ã@w¾ÿìí]it‚ò“躞¡ÀDÙºa¡DuAJ5‘9Í&‚V±O€hÀiÀa€2ö`@’^2Ý¢ª32õDWF,“S¸Y ʆ ~º¼îè"g€eJ*%ræú•]ÏO4ïj«¦â•]*=] ÐÈ¥e÷s“:i3o½#ýöƒXRÈ·ã¦fBfL0tV£=9ÛUÕHQpyýœËP¤:eT4¾‰'¬Í]È$СŸVnß²RT£³|¾­¯ÜÔã]šõ-,Ê¡Öì¿£ùc¦Fë6xßÂoü¿u¯WC¬ Œa!ÚÖ1FCb-ÓmËßzÓøó'©¸[¡ÉMZ ‹lMUÞËÀt]õ—Ç¥Á¡ ìV9•N~¨{NàtŒ±¬ÒÀC_+¸¶¡ç&4‚¤OÎz»bå />h8JÆÁÁÁÁá×DäL ›UgÊ®óUîÖæ‡ ¸æ/75Ç"+÷²¨³†]›¬)„ZÊàÒG©Í0º´¡Œ:RÊØßŒÊó °úÇ·OOä‚ÿë^uvÊÖ´§„HHûÑ´àŒ­ñ•¥H^r…= I!S-ÔØ$mÜæÏ­]ã Ûºœ£B=.…³C©zw Ʀ‰·Né±o«Œ®ß·º²›4m_gÎ%0ÚíÍéÃÓíÚ§' ¡ÓKþíÑâÃiЖI· + Ä«6²Jé<»­ í2ÆÔ˜lpÈE¨,²ÐAoØ€U­ë`k^³À@\ŸrµxÕ3$–´ž · ÎÇÔ‹WZn#9"?%x[Z2g¥×/¸ÿîÉ®„>'³ kÏçH!ÈnLyBËq›uX´`êfÍbY¬®ÄdLC„† ì)|Kš‰Y`@u‚0™Y^ù6TÌ}éíîû£õô¸Gçu#ä>šúx˜Vû|¤†mð’š‹ÐCŒ«2.¦ ûD®°ñ÷¦–<€ñ²—]W¼úýÑ𮄠²Æ*dÖæž¸Êáêœ šûÁDLÀy9Ò‰’,M±$Å‘Q·I±È+Ú„ËÓäÖÛܬa [²‘7ÐÕªŒ/z†—˜­[)1A[)–YoÓ´1ˆÅŸK›lŒ½éqÔ™kEA­ø*sˆ$\JN0ò¦2ßœ¡‹ÉîÖFÃÖLLHõ†ˆÔ޾ú·_ôµñ¿rãùÀl%‚ ¹ª4I¥9^Ó;4€$N?t‰Þ™ÈýóѦ߾{}£$‡ Ž’qppppøõ‰zlgÜÓ·?ב.‹VÆ[ªÒbDà¢= ÍðáA¶nfÆÍäbÇbŸ'4½ •)$‘è7¥2`KÎX$Ê:ÿäö Õ^™ÙLÌÖDl Ùæål0ìiH*ÝëÆÿs<øPÏìÚ£“íò2EäÙÙ(¦g@`¨ßêI¶Ç¦‰ï¿BÀ¾­¸;¥EÉêq5¹ìR°:‰‹Õ‹ûßÎÜ)}¨gN2Ø‘l3"ТêÝ)†7»Ç¿R¸;Âk4 >FÃU#åA•£æ¢lq5‰WÊl €›Vm„?ùbnÛÞz dkke_{¼:3ëëb9ãùÓÁ×ß üÉÇ­&J¯¨dÊé<_±EÉ"%ó:‰2Ô—Æ6(Þ€ÌÈt‚ÅkZz=iV+à‘l޵µAòRGßÖ·7ù‘ãˆõ÷âé{¸$×kɘÇðiîrúü»Äþû­ýŠÅ`Åä$““ 6£x…(w,ï~>Û¡tÛÆAZ÷2ª›Ö]´æb4à)ù+o‡ÿøÞ•Ž@§ïŠ«¯¹¾|*õDO~O(÷Zºc“}ùÉ}ÚÝÒñyH¸Òmþœ¬1 „d‹CR1Gjl¤,üb”Õmà OPò¢M†²]ô$SO#©jè«:VU[3,E‡ÌŒ¼åËôð![kÄ/æ(ž!8ºØ{ÎFûëï1ù%ú©ûÌÚ ½ÌZDÎ|lOùG'ß¼#-nT`öv6y°y%¨èŒ¥’~Ïê¹É¯"Ìy»D…… ¾­ëÛ98|Ðp”ŒƒƒƒƒÃ¯OGTKùA)æµO/â¾Fؽ>ƒ¿ZT–tmÉÏ!Gi1»|ú€h‹db$dz›;‹lN„Y°t»´èŠ6ç+ÒÏ^5— xß6x|óR¾^ÿÞ»œ— qƾö¼f»L=ß.þd$¹ 5ç.“]Þú:5ŠDeU1y_¯–2ëËcDõ[Cý–¤ SïÒøUnÇ6­”‰­ [³*2£¸Bc¦¿^ׯd¹’ ˆ¦—7à–м‡nжñ¿Å¯ùDë|Ks³7¦Ì£Â¿ñêìO÷<Ú‘]­>¢-I§8—ш«é…i¯éµþø‰Z”Ð'íĸ¢É­–:˜¥1š‘mJ2p­¡@,/¼ö¬;w;ScÖÔàƒH—+„? uÉà\„¹Žã‚ pBÝ|+s)Bg—ÌèÛJ;YH2ÙµzæÕË¡G‡Ò¦iœ¸Lîìå —Š+ç¿ì]Æ“j€]L—\°µ·¡ NÒ™ºÆ.ÖÝ5G/ãÞfâg©«ù9ÃËi€ 'Ó_>™:˜ªy\VCc‚7êý‘ú„Œß.ŠRc–â°M1,e³$fI‹a¨ iñ„M”d“R³aÓrI‹6"u!x÷ƒîoËþíU]ǺIU³XÓlMEô ‚Qjv(A ¿ƒhÊ 4êÓˆãÜŒæGµ8~Åsk÷uÉŠïCįìî’~~!öè®ùuo–Z;½°"Q|‚k¦Ä–u[»ÝL¢¯½˜ÁV$`"'ÇÌá£d~}âA娕à`g ìl*ÿôjëS[Æ×ÕýÏ-âþðüQ¹¿C¨mc‡ß1oé''€$pÒRËnzUÕßLMW­Zcý<ÝŠEÉêå{.…zëÇg;`OëäúObÓjVÆK9]–l•òpfMÅœ‹üuî5ƒJÞÌ“#dàS‰•xŽì» 9ÆT/S]'_E~SßÛïŠóå´Âhf9FjÈ7mEO—Zš¡sÑây!I4t›k4ššª¹‚¾>,sƒÊÂ&-ê*ÁaÛ`[˜u.67ï GlÞVú÷ò—ÚéÙ8™[Т‡+ý1ª¾IœãIe*㋈zØÛ€|fŠb$NK¹Úð?Ö^·öO« ÐjH¸öî… _ïÙBàÕ9¶1´ú¬DïŒ+ˆ –ênDÞBAÓ×…<3”ƒd•@@`Ì™acaa$ƒÂê¼—¯å³Ñ&]ª«†irbqÔƒg›áÑA÷—NïÿýTÝ3çÈ̬Fy ŸWy¸ô$Y^–!^òئÕp%ªÉ.ƒÛ`I*ê)ôÌPBQ¯FûŠ:ªkXÑ,Ë0Ó °ÊÂú/^w²6Sß¶_×÷æp1ñéöó«Æò±ËpçêõBy}øVôÛ`ýã«el¿û˜£d>ÐP£££¿x¬ƒƒÃ¯Â¡C‡œ_–ÿzDÞÌJ+U%1ocB?¸Ô½Î³xxÌÞÚµmè ²VŒÅºU€ Wî£ÉFFÀÚý‰ÉyëõE¿ê»Zz(¹õ wïóË+ϧOf»às=Î/$ÎLŠ»úU-ÀÐæ—2u÷åtosY`¯QQ¿«¢Y>–!´¢rƒŒ‘Tj|^Œ¿qTè X{z¥ûwiiCÇŠ¹9XÊWåÖØ“îK«í5·ÆϦ ’w]I½„øµJ$h¥¢;‘4kzŸf’7ÅmÔ£éÿj|òÁ®k™r:+bà «Õç‡[;RÄŸô1§Ž×W6ŸÂZgDVåù99úÜ\_Yíòæb¾9 @º|ûïð>\ùÐc1¤É¬ºZš²~u:妓šŒmÀ/ë©MDþ¢Öµƒf±~¸ÖßIºÄ™N~¦‰ÉÎ)ÑWòýMt=S0·4­Ì즵±¦y‹gçvåÈ)ùñú«` öJ¹¿¬³¹š»¦2U•)+ô©%6i—“ cÝËëŸß1%²šÀêÓYÿk㑼ÂÜÝ3±,˜'gÉD®XóoÒTë¶Ô„@¾w•1€Pã’’ñªYoyŒ›Ž¥, e4ÔEvs‹:ÍHE0ôм(~è¹ñ®»[ìíXµBäê;Ñ× .8óàï&Uð „ø–Ή¥Z¢¿j©Óî¾Á~ö>»d¥t¢TL1˜`1pé©cnVõ€fh*D nivŒ«Š´ ¶}ï–ôwN¶%ʲö€3ÅžþÒªƒˆ¼‘©‘ Ö«à€ºÆ"ÀÐú-PÿñUâð æÀ.GÌ8|p¡öîÝ ‡úÿ{%ÿÚèìì\þ}98ü+F䌘ÛÌW°0 $BÇgR{Ú®•#“C½$Ëö“…¢éÕ 6I­<„^›v…¥ò_0žþx4nº$ðÑè˜+€æËûšuE¦eÍ8•ë®›ì½ÍÃ0Ô´”SC"+¨eJ$”˜§þÓ+ÍW­ßß{Ýãí°‹¶±Íp¼K^šÌ_Ë€ÊW„Å"?•a³5qQíËŸ¹–uvøÍ6'5¥yPXÑ’âV”ŒÀhýÁâ‹ÓmŸÜüîÚ5€ÂµŠ…¸Û EóD Ä~©Œ£UÜf£YšxÇ:€X›)§3B ‡øVÏ_|\Û1@²$ýØw7ýå½ck­ý8G(Ý®™f6““<'æc™abG¬0Øžç5xý4ìÚ#y#Õ6 lÖ€Xïm †Ðꊀ0Æï%Lj\ÖöNªmÜL€^A{ IDAT¬œªuÙ¸­Ç5ÑJ·k¦™ÏÌ5¢'èX„$½ òÀ`h†\-¦6EŸyfí!d•t6SsW%¢ê¿xT€&^ïö7<¬îåôM‘âü¬ë±ÛÊÿ"Ü@OPò{ð3#ÝOo€¹49Т”P­,0}M`’)’Ñ2 ³æV®âvÙ¶FW¨.×H’ Y0q)àJ°Ñ xÁ²ÓM­ÑêÂéô;Ö¾ö" Teð>=1PæYßì%F¯˜n1Á±¦'šÝt[4s!’=ã¯O_&·-›?¸Rñbš˜’ ĺ(P sPP¼6…Ê®bÝ›© ±Œ ØúñÅÄ]-S­¦bñ•à§›Ž¯=Y‘3ÇË×\j» ­$ç  ßBÊ?¼D÷oÔ¾ÆÁá{÷îuî·~=Ú#êRY\ý3ÌžMd›7Gç`¬ÑÆù¼g]èÜ ÛZ$’}€^iëN’׿õ/}%ÿ…Ïx?½]óªðæ¥5û'•à“ÍW‹Ì¬êy¢åÌòHÑRBìÎ#“©'ûΉŒ6‘³ÿË]‹Ó »:M@Ç&ïf•ÌbE•5f<ãŸÎñÇÙ—qk{uo_yy”\¢àŸ:„9ЕãJ¿Ÿª¬–‚´r£ÅàL9²ÖM’Bö5Á‚eë¼Ù¨Rdį”q[R»:6íê~~¶ãÁŽë¬ *ÿñWîÞ—T¶µ#š Æëô®¸âÁ o4O«­>µÕ—“5æôXà«/$6EwÖ SÅf¡(iq Î3^¥Î¢m«áÁµ(™ƒ`¼Z¹fQ¶VÖX7½ò¼Ÿ#”Anüp­?Ig9RÙá9×-¼É; <©ÒR¹¹nÇÆ«K)Û‚A¡¢2•’l6ï¾7ôö(¦¢1Ê®$«…8£Õ[÷ŠöÈñò_~tz]:âsoEnë‘#þ Rç‹bsPj–ŽÏvìi|öêþûÿ½óŽ“ã¬þozÛÞ÷ööz¿S9I–m5[î²q76ÅcšI!$¼q ! %´€ ÆØØà"WYÅ*V?¤ëý¶÷™ÙéÏûÇžt§ÓI– o^°÷ûÙ?nžyž™ßÌ3·ûüæ×´á z–tWÚ|.£¨ØËfõ˜¶™F1#eÕ2øJ¡xVŒKˆÁ0©ål¸'Ÿž«V$°ÆÍ+f¾·=zEìß6©¶^‘ 4#ÎYä|8&;‡ö²,ÎùG÷Mwo¶«ù@öØóýO­>n“Ù_s®i­ÄØè§jÓ¨H_E÷§ò‚ß5WqÒ2ôS¾¦c\UÈ—NÔ,çË.^ÅÔù´Q^·('QξpØñýcÍuœº¶6¿¾-}ËEg”9MŠŒŽc5(žÈg•01g¢añr3½W뾌ݺçåõ£¿ê ØŠ§-:6PE`Ãpði3CT‡ Ër \ UÆf•õñ1®}ëÔ²V§XÉÃ[A*cÿç¿ßíÞÕõ¾®é4õì²·½ÒhÖuqgv¢pÎðŒvÙ²øšrp‚î gSÊð$˜˜ ˜‚aÁ'6·0 ¡` ¥ÝôAf×ó@™ñ˜Â`Šjt˜;F#Ã0/Ù5½±;~¼LëêÛwÄã“Ò ²`B$]è¥!ˆi8AaÓbȲPRîÌ¢ë.²ýö¹§¦ÔNk7´Ÿá˜·.ĈE_`R •­…ÅW²€²Á’<1^´O-»ëcÌS%zL¶nêJõ•ü%ÝD:p ·X£NBrÚžŽ% J› *e•öfDpà@‹ñ˜£†ƒ9M&\œ ¤þ¹·÷›SWÜtcA` (ÆÝÃûœ¹lnåæ‘Æ+Ø»Ú#{q[‘åJ飣—÷§Ã‚exj1@Z§ÔŸcCqÂ{A“ ƒ£˜¥óBý‰lTÄé¶ñ¥z!MÖq·2åçÓI2ö‹Øç>tá'¬Rå­FU“yFFF ¹¹¹ºyöf•*Uª€ÀêI™îòj’Êøí<­ÞÖzò‰ÑNºŒ_6z I²z»”²hÄðí ëZåÖš|ˆÕË[‰ øÞ³ÄgïÕ·ï'5MI¤¢^þ²feuû_¯8‡óÜ5ÁôKéÎRLMͪN#h7=‚y«G7M qû<°!_*Ó6V“uVÖ;nðŽ´ijÅ”˜7ÿ|ÕÑóÈ_d# *lÓr+µ#ß~ÎGóšƒ!2žCΓF{9Piáiµ×—9¬‹Î‡þËÀºñ²h18Ža…Ê4ÒK¸Ãa-‘™úll 4¢™Qº)i¸¶%<ŸXk$•ñ¾/|d‹Üºª0œ-§ú÷¨ÚZùžðªŽBØMÇrKÚfNÍgôv;ÔOlZkT>Øîð¿¹9{:Z¦lP”¡9]g îµ!'¡ô®®,ôçœ÷•:B]¨Ç9gX—ÂÏ–BW;GïîÚ;}Ƥèxd¸!¸®á(¡®½T JgøþÍa°@Ï“ÊÄnu|ê–ùʤ•|ÊIÑ!êì”dß9‰±HÄ0…ÒššÜ¡”7l¤X‰i ª³àe¢J­õd<¬ÎsAÎRu©)J2¢1·%eO-*Η¯ÁM­Œ˜¨)JõÅa^ŽAúÛµN¯±õuÏm“àN wýä ÞÆµÉbq|Ý@Á˜ÿø³áäðŸ<·ò‹ï.ð çØP DQªH$1wÎXœîl’iü{[É/Lžyj¸ù½=‹ó˜Uh ª‰ À¬Ælô¦%…ñÛ@*c?ø5ó¹©ßJ•?~–(¡UeÁ`ÐårU7—ܬR¥JžÕÇRÜÂ%iÙ`I 7TÄáJs=6“+Ûþý›fÇ~v¸5­S²ÎÀ+»‰;×[Ú´ÆøùVR7Ì©´h”RФÚüôr2¾ï€ñ7Ñ}ëëôµ½üm«âË#ùZ—(– žD'†š§Â‚2VpïOÔ~óØògÆÚÙ"hTLÆ,byí;LÚ^ðv+¬»Qê «#¹”–n.êÖDNdÀ>eÕÏ·xR#E{Zš÷Ê"žÇæ\¤¼v³¤Ðà1ÓE܆_À/- fž#jEœ{e¢é=­“§®¤2ñ·?öܱV»õ*¤±LÜæ&ÿôŽâŽÃD©dÊ)É"hÖë¾ofÜë!>øPÀ‡> ÃpCgU>6×ÄÒ•áã.L‹:äT™Ú™<>Ò3– Édz:Ï껇¦tWñ<£ñŒÖ噸.{:Qwëjƒ§ÕÓŸ’ÊX&²tëGG–[Ržå;Uwe!ÍQkfAfìçö:?°¾4›á{žØý»ßv}~[ÛÏ·Ìl€ÐE¡™:FýPãÁÛ#ûW¹Úì‡^Júö½3¤ŸÙp€²2kR…‰øÔx&›“u@Þ”›’Æx‡%Í— ",UÓ4À˜æò%uކ×ÅÜ­Q ,8<è¤Ô²P3nsbÆûô—[õ¹¦=¿šæ#G/úØ/'Vݶ‘pˆ¾ ¢‘ÌN¡$rº(³Å…ú &þç[ÉÏÞ£  5°Á<2µÄý€Ÿr46—×'0'£•TžÝ)ܰÁ¼À¼ÏUª¼U©ÚdÞ€æææ… ÷êfU©R¥ÊÙ=­Ïÿ ¤e×OÆ:îi:™OMuoïß¾ù›k:é´N0e[QŸh ç·¦–mjjvˆOõÍþËÝ"|¨ÆcL`Íõ¨?ãøe¢é¯š{ùÒó´ð­WjÛ"ÉÎîÕl[—-Õéž°S‡ÊŸÞYÿW·¤[ì¿Íwö‹ô½{CPxå”"œK`Œ¤Á1 “Nm®Nÿ0¾q¶grq<ƒ)kÈc‡¬nìžR¶4Œ=7Ñxw×áJ Àp¦‰ˆ†JQF›UÀÄ ó¤~ 1«•ÎŒkAè´äL+tƒg.GRÈ¿ÿEð†öâ®–u 2iÅË(£üo3ðn’êl†¬è „8•KçsÊšŠSu5gèi-nSR¨ÓõeÂÎ* ˆ+Ô;ë&ÒɺՂvKñ¢}ÏD8)FÛ\¥ZWi­súÅXó]*£ºý“?|ÖÚÅj{ÂÓ•Æ¢BÕPê;Z'¾ùzÓΡÚV÷t°£hs kdÃ3ô«£¶ÎÏsÝõ–ËŽ6tdnu-6SŒB<«+ˆ-X®ŒÂ½ãö‰éÐ.¤‚LŽ‘‹*bäÖNÚO 1]µDfTsךÅÌ£¹q…Ó Îï³yreÇ$­´ ¬qíÚìC/ø»S…bí*š´òŒÇÉÒ`!„¡¦jbûódôg{˜ÿø‡@¯eÕœ&ÏŠH¯´¼ÅÉÈ…° ‹“L²(kåòâú¡ðØsÔ²f+à³`Ȭ-ÎÆ’nÇéè²…œ@Zv­pIvF.Ø~õ²ÛëÒ›ëÞTÕ*UÞ‚T5™7&ŸÏW7ϵY¥J•*Ðè+qTþNK·†Ûïm=éåò^.áØáBÇlz`Xô-wLå1×´p9žV1®­Ý7îÚtcÇ Yê´&Y¼¼å2ó“w‡í¿ÉtÝè§Ì#—¯mƒnéµ×]{†´»6ŸH¾_Œ­ÞèMJ©X;ýBzíM¶a¯\˦Gâáed8Ò*)bÌÙ¢’$ÅØÀ¹ÊR‘.Œ-ÜõèNü¯ß……Åš 0 ´à3ƒXÓjt°Òâ ÍŽÒîéæKkç|Ì4Œp]4i—`” hPj°ts¸ yö1+Ð8ŠÐåYÃUQöÍÖÜÐ4^Ù%)ÔÖ¾-ÍòGo(Ê:–,ã6‡ß?b5¯@ºÔ6à_ýMv6Mû]R:™àƒu¸fZêÒ@pl’¹hùuK1b>gw-&hi`™Y6ªì >¡ÐYea*-œègr‚µ‡mmb§netš»±£¸¶>ù‹cmȲ–Ef!˜(‘~{鶦ØcƒL0RW.¬èŠb¹ù•º$£‘ ó…Ã˜× -u°}ûÓ[ÓpÊ&;Qô7Ûôç‹kHp Í#­T†5öLªÈÖ¹‹À`J –:=Sº§ªçÂ’ƒ•£Q8Ôr*e©Š1;hÔ…Ù`aB8ãÞ«S¿|²ó}íB>™¡j]¦¬»£,ŽÉ®ˆ{²ÿûÓ_ºk˜|‘ň#5Ò®ž‚!Šz¶NP¶éTAÊ–v‡ÍåÅ«œO#cÞeqd€Í—‚P›Í䪚ì®t{ÈV\”ãŠy­ nIg\¬&0ÚÖQÛJª¸ù_Uª¼­¨z—U©R¥J•ÿ)a—YcþûDÛ½-'O)o°'†VÛÛ‡d»‡É׉¤9÷ºá˜WŸ|rêº@¿T_+w˜íïê]F?“ïºÑ{\ óyʨ$Sάr$×­ÉßÝ<õóX%‘º©¶ÿÅ1ákÛÙ®`éΚc²ióðJ“;y™pp¢,«ql±¯Eâ^—#ZWG’f‡­ÂÚÅÈ~çz 0Ü#,ýžÛñ0¤ÇñÖÓ-+‚3£¢#-ÏYªS¦Àã:†Î0ãûY›§†7$ÄTÂ*Æs¨,de…záHHÀŒOÜœ-¨X²<÷{­™@Ь„ i5×›¼BÙqÀÓÐ¥|¹kqÎÁ+pÖ–…ÕnX–EFZjZvup"dDÒÆÎ¯¿yFm d7uM¿oÝ仆Gж_ }ë×þgö²Ñ€ÆÓê]=ƒù2ýÔ‘VÌ ÈB²J·„r«¹ÝSôë㎒É#ÆV9š$£g_6½nì»ñ¾!s×qîÓw,^ÁË:ÛŸª;ž©û¯‘uÏÅ{¦JÉÝô´])åò09i¶f[ÙR·{BDÌÔpz¦¼Xi‚h5m! 2£Ž” `hà³3õnRRšÀô’†¸ãìÛUgLßÕ2ðõÍ$ˈ@㠆ݫÒüød0hlµe#+H«°,þŠ»8D˜Z’«;ŒµÏ‚ß®%mÞL.ŸM%tÝ_ƒn ›8’ _þ%¹iÍ\!I¬¦‰˜êí4Ñ6Eb[§›‰!pæšZ *•lplç1;†ã·_ž…*UªT5™*UªT©ò?G`4À@Té¯\ö¡ŽÁ…/•9RYçj‰Ú{í`ñ² ×ò¦ p¶î…¿¾Ëäˆr 7¾ž?ÆãÊ 4MEzýÒ4cä@Cxܲ¥M.gV³cMÒW6½¶ë(yrÈâãc÷\JýgþÊ´è,ÐᑈBÌM¥Å"ùëÄÚEú¼Ñ/`È)æ2p‡Žcu5 Öâ8™ÓøPRÇéQWÙä)eChvÒø‹w$§JXþ”•Hcx(dÁЏÍA›ÐÞ„F4Ç7éKÊbQt-]7™e.kµ5†¤Ìi>.»-¯ãR$veÓ¬ø5-‚gu¿½tmí(pÞ{m6ì²ì¼<­®ŽÆÜ¥ïíhC†eI¡V¿feBÍI–¬>NèŽZd¨¨1›×Í Î9‘¡¼zåÚN×ôÍD>¿gÍcíE€Ô¼5²¿…KR½+±Êr£ï"jZ&ìmŽG(;‡¦#gÌ©¯5h NãÜdaÎd°N(&XŽoˆ„HŠŠ•,;GIˆÓ”¥ç-»X<ïôñ@»uU—ôƒ#½ [@z9PGJ¥¯.¾±5žÎæ4[`ÒÑʃT«LÙʳü1¡0+hG%wœªQ„ÓÐõBÒJ[2ŽÖSûì«ÄgïÕ+ñ-q¼Î‹•ìùÑl«w%šâÞxë"I²,’É &)Àñzû9Ñ*UÞnT½ËªT™cûŽ×ú9O‡îž›6®û:W©ò–‡g´5>ùñ‘à•µidY©¢ `.þ_T(@ æÔÊÎ%j IÉò g —"p7Œ+®’Á¼zˆ@€É•GTi*©šèÁîÛ@€P<ëp›a„¡ÍÓŸÖû§°+»­{;wjãYéª/‰ë×8ã+˜=aNmcYYáåÑØ#Ì# §Ç’¢nž3<úÅ>ìŽ-æá“˜ë6 Ai0G†¨;*ðVüBáDÎ7‘Ö»Âu„ÛpÃÎéÓù9˃EÒ Úì°]E/vÍzy]×fÅ9g÷tóFÆ'd•yñd/èŠÙ©&-Gc8JNÉm‘I‚Š€Õ7µâ–JnÛo¿|M‰㸅ç„F·4¶ètb™ò9k2€ÍYev[\f|fd ÓBKi2|Ba•7s8^XN,“ЀgÔåuq„ÐÏû¼Í9XãO/O}«}8©‡BþFWøÙßÎxÝøæõ8$3äÉ Õƾ³Õ;¡ÛšÜæÅuEÀàS—Ìg¾®gž™ uó…ëÀ¶![4¤¿,z?ì–(¯± 픺7ý,^&qËk‡ŒLÖš˜œ7u»?d£ðD:Á3DÐ-Lå$I# lÌÌ@ø"bX4ç«<¹Yš42öÐ ^zqëð€­qYw{4FxýEçæP¦VÖ•e5ïhCÖdL–]Ä8Æ(2FÑP‘öåI‡fóÙõ¬[f¤˜Ï×.3‰, IHС.õ(<Ôx¬d[á›zjº»EqyÙù¦1¤K¢É"ÝzñÔg^Yy®I©RåíFU“©Rà”frï}÷Ÿ§ÏC?ülÚ¸îMuþýÊY¥Ê, né`ÎöÒŒû…I×*w ª,‚=¬žWiMÕ§Ê™–º6c*ÈPC$2*ùÞu†©B4  Éd§¸ÈÅÔ´»5Glö¶6gÐ…ëù4ŽDðk¹<)R®OkâOt: ݤª×ÑÏ-k¿ú{¯‡Ô•í‘)C ®j›|dcƒ#¿Ò;CRĬlÏ­ÃÀÈv×FùDCÆyzRH‰˜³³lC‹|xJÙT;òÄhg½+2¢˜× 1˜Z²˜¼érókÓhÀ–1[œ;WZrîHyèÝ'kÌË£ ^Bù঩EjL…²·ÍJ%-›»`(<ƒI†Õ(çE"&ØV¶‹¬’)pˆŽz´3bǧ2B4pVè9†WR0;n²\¶ ¢B;(â¸óÅ”7yS/5¤‘£x¦ ­¡~¯ÉÚñIá²e"4G•{×Y?x™~q7çײ5¥Z§|è$;:K¿Üºë©u]Æh¬ÜNÎn¾ôŒû/kÌhÆÿÛ™ðuñµøD¥¸$›$ù¨3o^cñr;S)þSvÔ3ÅÁâÒ|“O5mŠ"U)YNç| ‰ôÑXâô@”¬ÉòÄ—à1SygxÜä•ëÄÿøµ{s˜p"³€ß[¾·y†š”íå¼31®ƒÇíI*ÁòcˆÖ€ÒR]Ê ÙH’ HoŠx1sðù™ûïINCt·±ÚÅ›”¡N%„h®C3qèõ)W…G¶¥Z®«$(€°OØ›v¾§kVû¤TÑîwœòT¥ÊÛ“ªwY•*ÍÄãâ+ŸšgÑÇãâ·Üpsų¨ó’ŸÓ«TyûpeM.Êë4KHÛÊFé–Uc·¬ÛÔ5×å…Ù‰žxÉî®IÔq²Š›$f´FÄ•-ù¦ˆØ‘$o¤ÝžkwÍ,Ê _Ü7qÑâ߯xm95“ƒe§h¾Aô§·ãÝÏ+kiª…8ͤÇÈ&Ù¹xžRVz3{f[@2Ie`Øü¯+!WêˆÔŒ<}„H8ˆ0|*=±½?Q{W㸬³Û&š|4¼ãä’jLY–á *Æ1„=rV¢¯»´¸ëwxÀNXª_KbÞ8^·pÔɤòœ¥Éœ’“¥‰‰"i·ŠPP(­€ežeÃ9žV¯hŸ¶£I~a»¤ÐkƒòÝ+3OÏyÖµ5è—7ÉÇ^Ÿ8ا»[ê|Š„fSƇ®Tþä¦Äʖ̵«Ó™v¨.ã°¬2}35_y½þvÍëÝ©l‰°q:ŒL±=õæ,x» Ï¢b TjÚ¹ ¨rÆ®§A<]È4 1hØ"MÅRif4(†a · › ²‰Y(ÇmuÀN‹²ÞyYá›/GE+øôîà×½¯" ÉŽ›’'-•“s“¨. ¶<î¨e¤E·È¡ÌÔ—ŽI1mù‡ÌÈõí)Rþ&4´œf9¢/åžQ•ž‘™ð²ùnGjOfÞǬP d YŽ˜ÓmÞ`ZªTyQÕdÀ*yðã×,oinijìØtßîJ›(ýØõ]xuQ^â37·Ýùâ…¿QùæãcÚ™âËw·núÎÄùÞùýÞXR€*çbÉ]g·°,˲,ZÀé–ÿy«TùÃÂÉiïZ6xcíìh~z²ö‘ÁU{ãmŵ3å ¬U¯¡KG¥ö(™g¢Ø‚‚~{åå¡6³ã§[B°Tmb¬0Käò¢³êH}L¬ÝÉ\Û?]Ìu•Ži"]œòMìcñ¼§Ez_DZšrþçû–Å‹¾WŠ_ÛÕ.+ÔùÅÇj¼¨·€5çYu^zÒ è<;!ÓäLŽŠö´ìÒNa–‡SòÚ©´iE˜j˜HÆŒ¹¸o haätb>b{"€zWrÇLK§G¿{Í`LDçRc$w„MÏ*£™ÀðÏP«ÇK¤À™÷^›Û5`;<ä¤Ú¤Œ!_ æãsÆÊ Ï.>¨—×E…r Œ(IY°ÛP…æÔ9ãõ:žQï[9KØl E…r³ ¸©SÑÛº@àQo—yE»¶Ò5%Pú{îö‚e„Ýfo×\À£-—;އú©£“¡/îì@>½þàéÌÎñY±M%è²Í[Ç–8bq†k¿]Ç0Èç4cód@ÃhŒ¤0M2œQ‹sgÆ–LTí‚â^µÝ szˆÇÈæøˆŠÓœK7¬€G[Ó!ÿûЪ›olž¥9k¸åiðXÉiÅ‘7Ü9‹C$à??RZõ±¸óN1¡cô »2É5¸Ê‰fæ@1òÄÌšŒâx˜MÍÝíz[Ãa@l€´è|x¤h¯\¯›×Dõ+oV©òv`^“©Tp‹µ¼úøî¾å«úGžè=ùò§ü?{ï_?¹D NaÝ—ýüEüÒ;— |ò‘oüU$Þ„–a½ÁÏÕÚÌþ¿xB¬S€´€Ê®³;WvqWÅq\eàÙ«TyËcgµ‚BóŒ¶<{àÒ7„§iY9ÙÒè3³X Æ‡%Óx;?)3\p2<<•Óëue†Á2v`á6­E?tÜÍߨÕv"å½²ñðZ®ï5½±Ívæ¦G ëH,Pù™)ï²pabUÐàÆ®™§:§‹ŽÎ`ùGÛ#ç—|rz»æ¾3yd14DË IDATÞ8œšDj <&Ó•tG)ëƒ3/Ì4i/[Cv*¹1…# / H›UÂۇ:6;³ðh;5kB3/Î,»4\ººed¢pN5$W€K «š©|±lr'°zȦ'sœÀ÷^“Ú=($s,”.tü¨Ñ¢"d•nr-u]æµÑE±,¡9ík -ì%@çN~° £ôÚ}d,0ß„²s ëÚ5Y—`|ë ¿TÆŸÞŽoº¸U®8©0î—Oð[6ž¡ŠZ¹ÌùèD[^ÄþvÉEUM‡r¸ÀÐ?Å(6W€).’D£2ð”FR¸÷0¹YRÆq )|i2Š.L…¼žHœ€äʦ“’s”(›+Q,€T&ŽÅøC˜ðê(óù¾ÛßÙð›M}ùe±I¦ÇZ±™£¥¨†ð™2íá ·ØØL-Ÿ˜\FŽ IRÖŒ¢iG9päíÁeüçô‹±æ¾|+Á³É4G({†ß´úþ‰¶­òÔQ¬VRªšL•*‹l2g—ok´œåØ÷¾z|ÓWþõöf`j®ýǯÝÿÎ×^—À˜}úïn\¿º«uù-_Ø™µ@zí¯ïüÔë2è3Ïüã-kW,_ÞݳþÞo*!mê7ŸºiU{gϲekßõßC‰—>÷Å}É—¸éêëÞûÕcgFCéÇ®oÙüŸ¸ïÝ·oY¿öÆy-oXù=ÿvûꮞ•½+–­ûÓsPú±ë›7~ä£w¿û]·\¹éŽ­Hò»PüÉŸ\ÞÝÞÙÑÞ{ó?½0ædhÞtÿGßsûÍ·ÿŸ2o¸úþC›Ùßû‚ANQ1°,i“A‰¢xº3ˆ¢x.«N•*omFËZ]ñŒ¶¢>ñ—ŒMNùÉbM6ß¶ü¸ÑV6Ù•ÜÐX‰f8ZÂhÀÐ~u†ÁZîèÙÇ ø ÆÛÚ¿¸³£Á- îâ“„p« åÀ4{á¤é`:Æ7N¾BëÒÉàú˜ñÛKï^9ìä´Á¼c¼Ì<¾+|ɱB¹ÿÙÙ¤!ðôÿKZª[•lu•Ôºõ΄‡ÖúÓuyƒ ÑóŠŽ£Jêƒvj ã¼3;#|¥?U×lûJÑk£éU¡ÉáÒßð»!C)딽(k,/@SP‰eyXãž+“¿Úã“’¥›Þ%÷@¢hï .U KP˜)«†a ˪È|2n Ü+3<£²²gÌžÊϽê+–I'§Ù8=SÄÎXÙ^Z×)ýÍ52àÀM59™yÇ;ë‡ã¾ÓÇ9<â}àñ¶¬Âþå¥ÃGûDQ<ëF £Ó\б•(¡–‹-ÜiâLÎÑÌägÔ:ÃÂLu™)‰©šI[‰oZLAÈÌê~*{@’y ç@£ì¯†o=zh«·',ÿ˺™û6Jïº9s‹°§. *Gs1|ç Ï<%<¿[b_Ý‹Çj_Ÿð•uÏ\Ò H¦aÇtÇõÈEäVñC%É’QkÒŽ·ê')ÝáåŠIÓ¹šö½³²ÊG”ÛÙô6©éÃ]ƒ>[2´fÎ'ÄÎj…òX«Ty›0ñvùö·FËy± ¯g¢ïí¶ŸvqÚ77Iÿv4iÌlÿĆ=Û¾Q#íø›Íûìæ=ÿyé©NúøCùçÒ_>}à*?QÜóé«ÿä?7mû‡¶™|à“oyüà“=(Ù,ryÿño×>óË¿zêá+lKŸÞ,Å©w>ùÈz{á¥oü§'î}öÂöû ÷ù]}×¹1«œW( À,ÆÈ;ŸzäJ·zü߯zÏç.ßõµ5©7-€6øµ«þ%ñá玾¯^ÝóOWÝýñ•»v‹À,%èw?õØå.liÿ§÷ÿ¿e!çñ+[R“©üQ*•ìv{åªSåíÌÂâ$àwJï»tâ‹;:vÕ/iL¯ÅfOdƒ'„è„D»ð’‰€Äa¿ÞÃcê*ºï\Ç 4„¶Nº?±~ôt|ó¾iw¤›iXe?ê ÃAÐ „, rc­×•¸ùÿnžQ—Gc-ÌPÜý³>¯÷¨yÙò%ÊSŽŒÃ]›@8ml·Ì ÷»æÔ4"hÙQgÏÀ¦šá_wu¸¼šÑçì$A⦜…"59žu/X‚–uvk¢¦%`܉E„äpî¿@t†§ä¦I"Ô40Íña¼ë¸{E3@¥>ýŠâ_ÜsÙl‹ûl~½˜®u/QHÑÉé8b…LÊ ÕÂ\ôühç q¡ŽÐ룪×n=¶/ð±kÆ  ‘µ^B§¬ý½òå“(ž£õCo·þØs”Ó—[ÓÀï‚ Œ2ôÝÃ6À‰º~¬â·åRôèKünOÀIæØ Q&´/ê¸Ä6³H†‚­>—·úŠõ­Lª&’VtÌÖã§ oê04æoÀ4ñu2ºÜÉö§j‘Ææˆ²oö²±8ý³CÜšpfE}bmóú¹/ªÉY¨«±Ðh>ì ºI5Y8ÒÆ‘çu΃‘¤Î8€$4J‚ig4’¬£ÂÏ„^í¯¹¨9µ(VäP?ôvÏëÇÆµ}©ºZÜnÃ>xCX5SfͦÅXÅÇì¥ÙÖtZë›Ó»h€EÛ§£®œ+ÜÎÜéáÛgZ‚üýMã27‘¿ W.áH1›ªŒÃЋ¢D0‚Àåâ¥ùô¦šâ:…~xgô£WF¨DQc¶IZ×â`t¨[$i@§Qt*Ï2/´n XÔW„^=â»lE:#’µ:Ïñõ_>A|é#Ò3¯’ù">›Fw\'™âDWWç׿Ëb8÷w7$îùg ¹N[/>ãø³Û羉2á±Í¹–y6ØêØÁ…¤ìíiÍN•ÒW ã²B'ÚN¼Dh€©a¥ç I³ÃçºQ8&6l¦Òy{ÇËõ»‡„K[Jû ·M=Té b”.Å ¤ÆpT9 *Nk$o7¥!øí¥Ë‚¹’ÁmꜦHÒ$<›Lüè%ÛµMÎ;öÎÐÁqŒ`èF‡è¡ÕggÃÝ))As2P±ÏµÍ«½ãyîÐx%+·Gú_+wçM"N©Ø£%¥ªM¦J€sea®¸ßT|o¥–³Àík¼S¯ô—Þ_3·˜—^–-ñsdZìŠ~úôy ¥»@à5çõŠa²Óþ‰gö]¿ûå—_úÅýë¿rçoŸýd;²ÌSΆf"îw`‰ÝÉ’oRjøÿ=ÿïZ–4¿T:œË&S±ðTú¸\.§Ó¹ä#÷?W­«Tùcä¥ÑÀM“«_¶<õ9¾ñ²+þkrKO®›ð™¡#V“hQýf3†C%®Ä‹•\PÔº=œvsï¨$ÃEÝmðcÐ7 ·6OÕOõ55qd.…1 ’Äœ»#lÖŽ6TÚÒÇh¤ ¦_ãlsÇ÷ŽÔ=µ+²¹-»¡#¦ã¬$àÔe½xs¡–(#ÀÕtxta˜e]µø²&^Wƒì xÛ(pS勆3jÑ6\ý\ádÁ?[ò¶¸çB8p é´]ó4²ÙQeîW»W›–]%§ããuƒ6âBÕ˜ ²¿Ã™›g;tŒ‘KEÒáØ$s\À=—lES0컯´|tóp‡0qk—[âX¤ÊÈeBÆtzð¤òÂÅA $ëðŸ/óBšBj©L­iÏ>÷º'™eâœgu@YswìÐqöÎK-C×o2>ù üs4“òÑmüº+ŠŸ¼Ý¿S™Í 5èí,†}óWî?»}^÷$¯{›f‰¹+-ëìq¥9âă…aŸW,®OkQqf%uB£T$¾Fg-)GØí‚Û'åÒK^‡+‡¦°O%oÉ~Icñc×Mˆ@[ B‚•jK'“Y¦Ñßn+fD‡W¢n³P"è­™~x_C‹âY=LðÁ:#çð£Ä¦n`î¤:á!mÎÉI¹†7«ÏꮣQ?£yhÕIi6R-Í”º"âjÃ^³¤³Ûbõöâø‘Æ‡øL©«é”,PµÿW©°¤ ½¹¹¹¶¶ö­×²$lÏG>Þñê'ÿþñQh³Ïÿó'ž|ø/ÖV~σÏMë`å_ÿÙsêÅ›ëN%¢Ì}Ñ­­Ç¿úÝ} ÌÒèÑ1ÑÂ\knn8ú_¿(#¤r ‚ã@µ ÿºAJb4Ͷn¼íþü÷O´N½6¦ Âž>;¥ƒ•ÛûÈsÚÅ›ëØ7/æZymøÈž™Ò‰GñhjÙ–6ö‚å:“?´™ý=>!3‹µ83 À¢Î5&›ÍV:d³Yp¹\KFü¿©®*Uþ(9óµHªhŸ(‘~ûœu¢©¦¸!”?™@Ç3ÁÃÎÓ_eV`ãyóÈ™X'6â„bsL«ÞÅÖÐEAgO`ˆìÎ:Z/º24Sv²€Œä µYNÀØóÎ ¦«ìlŒe0‡Ó]ŠœÜæNN”Xg†÷gX_Œ«™äê&™Ú*šâœÁæRºPüÕQûgŸì<dNŒ˜?p ͱŒÓí)Èü½·¸Þççþ6zù:étwõ¸mõ¶–ðþ|èW}?ûŽ÷›{·íwn;à’90S#¥æŽIs”²Ú7½'Yçæh åÍtv ×DŽ(;1uZUvͲÑû.¿)5¦¥H˜®kÀY†nÒ<0¶ }±ÖÑÎ_ÒPÜ~¼–#”„ÁLËΉBpQ–ÅÄ iÚ]xJeÒͪO óë?¥õSÉôxÜÕxË£)^`Ý…_nw çÕÎ:y*Ýñ®~æ¢e ì;B†o?È=ú¿e­¼Â;C ìekäÝöÃÃÞE‡m«W×wkÛ8`2ÁÔ”É]Óâªcæ%¢¿I,÷GY·4áaòŠÉ½Zìö⥠ô~Bài%ï)œ[ç¼ ¥cv›åçí‘UúÈDð³Ï6fê%]Æ—/}~es ³´yÝUÃi‚":ÐôlŠ–=¡”€ éæñ¹¹æíâHöõ˜†>Ú?IyÜwÜæ8ãFE}´š¬w&ꉋCƒWGú.Ň‘¤¸`Š’ÅD\ûõæ´Á%œ°î÷ä£*A—1:{Ê3Žg´q±j“©Rà\6™³_*¿5Z–€j¼ï§ÃßÿÍÍÝ”-“ˆ\vÿÃýy' i <ÝÑW?ºé߯Òzë¾ýàÅ@*?ÔTã}?úNüÏÿì’¡,<´å‹ÿk£­ñ¾~iòcïZõuÄRlçŸ>üЇ{?|}æãW¾ñ¶ï>ö+ßXs@¥Ã_÷/eq™ÂªOþ×&@OOÃŽû7}i^üwà—Ÿüþ§?ºeå0D6¾ó[ß{‡ÿÝ_éü¡Íìï«e®ŸÇsvãÙ „2™Ì¢g·Tx“\UªüñÁÓêô™QÈ'c®;ZÏ(ÜÀºoc©­±øÌXoÙ;ô‰°sù=ÙË@® ;Ą̀¹wÂukïq¿)iÀê‹´¿•—,×^¼CiÕÜ+`›$µ^.s ›aºì,ë6ºŽ•?Ò¡íÀ…PW"Ò¾HB³>°%ÿÃ'Õš0õà_WX96ª¯ï1) èûÊ>{=†Qôš6¬µ–ŸÆúà öÎN0Þ´7,|,®š€ï<®–DKWŒV 9­æ¼·-2r¢hLS´3JÞõ²ŽÂ(©Ï©sËS¯¤[jùxŒj»Â75§ÈoöVËžZª,r†X‡`äuEA´­)¨ì<îºmý|ÅžÕ[kòÏ÷G~s¬uS0·Â?õøH§@*>aÞ ¶Ý)ïˆ{ `ÒLÅþ€æR0?½¿a£ ƒcä/^ä0 _¿\Ì€wIC VI×ð¨ë:äÁ׿iÀÈö€ÀYÉ4öè.¼«o®5î¸F°À-Md<õ÷\vòÇÛÂÖÊ–y ŒÀ™mõÊs{‡ì•$1Ò×d+»©\ªdz¸ÁáÀ/ZeÄ!Æ(ëÿF÷ˆ›Ê@™ö¸‹C„¥ÚóC†§ ´’ihR!ô{'&çÒà ÏÞ)çÚÚü§¯6LûÉR@Ð2v:\¢lÃ鯋 õsQö‰}±Òê€òD:4ŒÒ Öª ´ÔäzÎÓYK¼ú«;ÕõtÚªòÙÌÔÀíñZrAWÎpó[Ñl å~ü’_Íh·_>0Ê6ŒM?ÐÔ§Xœ‚X˜ÚŸŠÀÑȤ"µÌÅt­õK©‚Íï#mÀï$À=ßÞvÏ0ß¼ UÀ²¬T*uvã¹:¿©ƒ_j]¥Ê3Q^—5†§ç^QŸHrw¯=C“ËÀ0RàʾF—°m¯U¬ÚêË—¸‡žšê6 44 ð‘ˇ*ÝRw±¦—Îé@%ræ+¿ÑE‚¿á nëqÛ{zä®G:Ï]í4$›U¶Ñ\È³Žœ¿®¡ï9güøxÏus†K•ÀY×_ª>½S×é‹ÏÕ4 b¡L¦( {u '9Žš±cpɓւ¤+v „á4†c¸@;l€O«yÜÎàõ’ ÒÜ÷^Á(†\éΈEû$ÏG.˽:´‘.¥ ”ÂÓŠ W'©îÕöÄL’¢Éße%*»ƒ¾áö†â˜­ÁÁ*¦4[°µ6½{h±µg´kºgÙßäæ”JÏÓÃõïì¨Ì‘›Ô €Åâ knÁ^” '¯½ò~|>@½Ýzo·.•ñÁqæŸs¶ûцnueû’ ¬–梤ÚêËÖ6vd’n®Ó:|Z2C bóc_a!@ð®kÔJõž ŒQ¤ ©ì‰Þsùä_  •-óß–g^wqá¡üƒiì/®Õ$Fð¡ì“‡šÒ*{S÷„ªá” *k/&—a$ÜÜ_Uf|”!– ¸©ÑR’ Ô±¡R±ÈÓDÐë|ñ¨°oÚ ]É}xý\úï('¿ò|À¦K”mZqÔó“ /SÚ)LÇó„Æp´2'dw°’h1 °Æu«òÛ÷ã ^7æ³’âÈ:Z½¹~ð8…É©3òJŸº{ú=W$'˜_öÕcaÿî‡wÞùh/ByÓ‘DvÓÂz#Ÿ={x•*ogªšÌ…¢|ýÎ;¾Ë¼ï'+–ò4®òÇNwÏŠ‡~ø-7Ü|ž>Ï>ýdwÏŠ7Û¹J•·'£qW‡Wª¤À:Mo‡yxˆs4Kˆi%Ó›.MN°>ã\ß­^üí@tZc>½ánŸÓn£À,kú”jœŠmÀêj1¦÷fc=ɃÇ#ÂÉaçcF›aÙt»Œ¬È8Ó®åœR"-aºÎ°„©ž¶Š4×7öÙŸpL»®·Ð\7ï>4=F}ðÖ¼ÀÇNÓÄ$•Q¡ÃD”}¢,ÔE*ÞÙi•™(ÑNaEý7û¨{7—ïPñ­cÔdÑÕéç]šA½8a#(Œ °ŠUÿÖÕÊÕîÁçb¡¦ˆ½$0* ðÛWG9?4RŠ4`¦¦6O åHI!+WNÃ3Úòf³ZpL×,¯-ÉÔÏ·|pm?¸eFÇ0€œáj%ç9ò%LõÛÑ)ÝÎêí,±A•Êäñ1þ[O…Bn«·Ynª€gõq‰–Ušg´D–ÛÜ=³›Þ “'3Ô£/’'3ä/ï¼ÒüùVòD JðáPçRffùv›M¸gsâÇ/¡•­…§6ï½:ýwøž=äm~ðŠòž•¹›ëG“lB`fKß[y]M¬Ë3qzH {äùM³E²Þšl,³ã„ýç'}µœvES¼Ñ?3S‹It¨Î9¢Ž öåÒ®_“PF83BœC<–Ê0mêœR!ã£48Uˆ.äÓg¨Âz×füPŸiÓŽ8SÛ€çF†3#Sª]8à S˜ÛÔ[:lŠá+œÅpB’P‚l<¦×´Ò¦e$L•ÆéÈ›n‘7§‹ åw¾ácR¥Ê[œª&s¡0í²ïãÿûç­šMþwØ´q<ûô“çéÓݳ¢ÒíMu®Pø¯òvÀÇêÒ)›Ìt†¯õ.N–ò›Ù“Ü¡r¤ž-zð‚À™½R[}ùÁgœ'·áW®Èõ¶±?Ø×ý¾-ÀñÖtÙB…YB+îuc}ƒfß0öµ}Sþå@é’&𤥠J* ¢‰dIƒU™É"œf"*E´“—Ë8Ƽu8 Ê ¾Cºïf쑽x(pÆšòD‚xNç7ãY N¯—ÁìfíËÖMÎgºžKœŽ;OKÎá|`ëaáÆUJÄK`ÎOº!ˆá–~E´t0¸¨ÍZç}äxûÎ,™yŸe"Ó@–‰"¬†,ä§U«ÕºE@ÈÆj£-R5–'Å ƒ)´©åM· rH•5ʾ¡N•Ê‹5˜Aλ†žë;¿6àê^¼®+–€4U4r[Öä ¿~!éœ0Wb)FгöƎמé>”íº¦õU*Zg”6±'†ÚCGJáf';:¬yƒ“u—¯W‹cV©UM¦J•ÓlÚ¸n¡îñ{ì\á’éU©òÇ †Ï—”ùÍIáK·ŸåHƒÕZs)7:dE*ñå04ã"Ûû–‰ÛúTO”æ]ø×ž„¬tÑ¥E£û†ÝÛ7ž3ÈI¶>j%êt3.PÓ´ZŽ ¾FêæLÇú‚·,Zhîf¿p CXMÈÒÁÔ1MLg‰ûo3Êp^xJ¹88¸Üd§”Ы¥îZ®¥šŒîØR»Ä?„«¾®ïÐt† ´‡h§”K#s•OhO¤‘Î=7Ñ8"R·Fƃ˜ì(Ì€dCXå-ÒÐQJç´’‰â^ !dZ–…, 5pZ€×ܼjÝ[l)Ä1¯«˜Öœ..'Èñ[ӌϦÙEÀ Œ/ÜÔ‰~;XײÁ–@æù¾ˆ”d‹á9·:ÉdüÔܺÿذÑáSLj…`g#pFSÄhŠHkÚÉD–þ˜w¬Ìèeu}¸Ô]§]ÔY|v6›FÛG„/Ü™¬˜¹ÐõÍCT2C.Jg×SyÒ—¥£˜º÷êÔC/øY+ÛKpxس{Ã0Ó[#8¥Þ­— ç×¶g¿ÑJS÷ôY$›D{5sz³?Uw(åAz½™oÝ)‹ùb±(ËX ÍŠs«WÉHÎvqb Àá‡3MbÐå˦§\‹3h+0TsXŸM3ã°•Ò¢Í)ƒù…üóý$`°}/ÖÜpzœ^ì/F×oÔi´D¶qcÑÝmÚÉÆkG7tf¸ÚvÜEæö•—§ pi½bñÌwi_ûëÄ+ùîå€Õ¦2Ây&¨J•· UM¦J•ÿ ªÿUÞVŒÎ:ÞѺ„¯”F¹H†ŽåH¿»Ä`ФÛN 6ϦI B›jdsl"Õ—h3?ßZÙ202Žj|Rå =±ÝÄE•Eœ 'â¾VP :Eú]€9yº ÃjÄR"ð"¢5†¥;5UÛ÷œÇS—¬ëÑî¯ 3¸.:áö2½=$Æv?½ºÀÁO˜šŒ2Uº¡,Q†…#”6a¼ÎJ )ÑÝj'†£;ÚgØ)Ø _D)í>ÐËPï,‰†c¸ÜЛ¦2ž IDATÛÜÞ{)V×Èœ,;êEƒéòLÔÙãp @Ù`Se—¨3%—í²›Ò¸‚Læ ¥2U(SȲ2u2É×zÚƒÀB6íTß±Luêd¦D¬l=CÔY5¼Òž¿½¸¹!þËíï츦gºšŽ€0 f5{;7rlTìŠàwm¼ Œ0©ð˜h1-R6€ÖvMó,§ÄîKU["¾6ƲÅäUíkþJm£‰ˆ+=R£ab‘qZ`Q öòÛJ[·Ôí3BÑçŸÊÀˆO}½=uKh{u¯nXMà§Œ@¡lÖDÀTº,‘õ‹ G“ö‹DZ! f/Íl¦àPùÑ—Ž'š1¢plE³ðûgUÈ©‹š£{r¥N©¦ $‚æ†H†Å5Šöª² ªˆdIäsª,)’$ËômÛÆŒWV9¬b’´ŽóEc²9%:Ⱥ‚¬u1™1}H1Ì7{¬dö`ÄáźÀ©M—6MÉ’¨ÕðyU+r2“•˜ŒÌŒg Œ>6cT˜S.m²™L[™xÙÁ¿MØÆÜ¥-¼ØpúDg§ß¤&2ÁØ4³ †^H$ÖPZ¤Ÿ<Ñð/- züˆeÍ|ð DçÝäžzÃi0iù‚™.j§È Tï¸ ü¥ÍRʼn+«’÷^>Â1R(©ß;H_¾`ÐtÄW {‡]a¡|ÉÊHgò ?Å]òcÛÔFô Àä}úu‹„iÐH$˜ä¨ª®:û‚eŸm®Z8I¼” úz]èõ 5D7É”öÍpºË“"mºÔDg´|{гÉîû|}«–œ\ I–cñ¸ÓÌŽ‹þ Q®ÍfdV/&Bö¥b²¢‰K ål83îIÁ´HQÃè)€’„7­·›"=?D[ÏÇFSW†â98³•Ê7Èjø¨x¶êZ ¯ÕðV€¼¼ÉÉLVf2ÈI{LªÖéæyñ¤Iqšt;D­†× äË»ØuŠ?DOU21d°““ªrž{ plG_3U#ݲ1ø­g\e‹õ•:‚að‡0¼¥q3³ AV û‚–Á»œYîÌVš3ÿyÅÌÜœùóM÷£O^:–ÉÀ½iM5¥‹VØG3Äbg¨µ5ÖäÉÅ Ö›ù{þÊÖÓnØL`2€A‡ô˜í¡qd~u´qhP¼fù8»VøÃ+&#Çj­œA¯5ä®új¡µ–ŽY×m,ãÚásÒŠ4OúRÃÞYË$2<‰£239“’"Q¢IF5Ž”‚ÑBÁF´ÌåÛÖ_n—¯a÷¦˜™J† 4,+»ÊÓ¯™>ëÆ¶®Çª+0gU«^Ï44åÓÞ2ã<¨rZÖÒÀ7½{ùy´ZQI å­{Bµq•ž§¯w @ÿ0FpÚ>º¬Òµ€_p»4©·‡„MKh ^Q ›´ð®“w)òD»wïîëëûgäMMMÍš5kþÙ£(òa¡ñ_äÃÎæ+›gI.¼7YÒ€…¶ÉKÍ&¬½5ÑH·4Díµ³§!^Ô¬ÖUŠ=ƒÑ_"PkççÜvtÕšè ¸9 ۺ߹Ý|± ÑÓ6š»;6¤XB:"ÂC"î2P#qIR ®>¯Ö>“³\ëÄe*m÷5¬Þºšxâ í‰ÉigO­®È’"K@.•€vIP07Ú¢ %)P@ËÐ$§õДGLJJB„Ȳ¤ŽU‘ÂñzW<›ÃÞqŒ‚qÍI%£%y %Fr&«vN¦Ú‚°a&… ÉçPOö¨v‘\d'E)#l\•šÐÎÃìÔXù¡¯&†§¶Ve öm¾E«Jz¿xAâåt©—JÀÎØÚ%x×ßä2Ïä:dEº?dŒ²¡,µÌï‰]±pöDÀ-†r€ªö R»aóê,MÞT8"¬³`eH•Õ 6¡Ñ.7N,ÏñÿÍò‰‹”LKe°dñã϶ë¥4ï)¹î– Ê?xü”¹ñ-KS¯dkVÛ•ñÈ“>φdÛîhÕòi]çíHÎùNÜÃh=ÙBÍ®sN‘ÈŠœZ5ÆS–Ñ’ –üE°$?š&Ãz–KÀ9ojEAÃ|÷+ðfœßÐdÔ8L ñ˜@R€fu,#eyªËÀ$6Õ%|¢9_Æø…dÿþt5¥ðcIÃln1D/зŸjÿÕ#:Ýy-¥WÚòW&Ä/å±´¥VÃ{˜d_ܾÂÕÛŸ  H‘=š¼Œ¹üòËÿÙ#ùGó /@QÌù‡QŒø/òGG‹þ”¾cDøÄÅÓ6»YÞŸ¨ãÄœŽåë¹t÷8vCå`UÉ,ñ'SáXXÔ¬Þ_‰~ÿüúyxð–d·¥‘\@Fâƒcj#)‰¢¨µR¹Ä@ò:Œc¡”$+ðøÛÐÒ¬1rRÇ2–’òC/šJ[R –`]ç>!*+Ò·×ÙYñÒÆãL$Ú2õD¯3uœ$--8†á¦âÜúÊ”H €Š¬¤È“Tü|‹$«n ·Ê€‰ ¦ dYA  LUAUAVqªbª 4R1U„©@ñ¼Žy¸dB¤Ë™”*˃„~(«D:TþrÂY¥K€K›ˆx4:@!„Ütr‰.úDtññq“K(Q©kXÆÆ00èR”êr”é¨ãð„©h‰#ºªbâœI¢YZ㩬HwGèÀo½2ùçCZ¯ÑßÖM_½6 züeÃM7j9þˆ·R—â<ÊD,[U’qØPÛ°ëõëÆ¥Ù ›}HMdäH¬±Œ'" MWꬦ‰¶ÀÊv[ºWf2æW´£¼soºdç»É}dÌ4¯2ÝwÎSŸ%§P9+J"¨:=¸‰"VðRa)a¡9m¶ÉR†Õgc)¶ C2Y8°êôJsMú[õâîãÀ€’rW2²’ÊIZ–Í+™§ºó0}AS,§hÒ0™dŒB¹t =3Qqq­¸ÒD¡ÁS Ç,Úå U줌€Ö´ÍµN‰²¬ÔO<3и«<¹Pœ³›ÎñwT¤ÈM^ÆÌ8ÔüÃ@SSSgggQÉùÇPŒø/ò!áÕj¾Aä´…ÓBŽ :øÍÎQBßZ¾¶guòPëwN%sÔéƒÕeòwè>v ¿Ä±°n6°ÊWMK£,‘Á´öìÀ(µÐ•+d¯Jd%„KÇç¼¾Sºa=<ßK]oKœ`òÎf¦‰¡'ŽO.ÙqPwþ²ÙmDYî Y,—ÕÏØÓMÕgTz±M’A’)‘(µë™áYǨ*©%AMä°‘ŒÁÆ‚²h„Á´Ã£K‚†TpLÁ)A¥œRˆ*¦ S1IÅŠ‚„„Ë*&« ¨ ‘%Y•;O‹š%,‘`vCy¶eOÈ[&¶H£÷HUTG@ðÕ "UQ‘Šª6ʱ8઒x#C Å„cc'bÙ]iÀ)æ.ÃÔ}Ð$+ÕXƒõ¶´œRS!‰ŽUNÏò|Š%öì#oØ0BøâuáÁ ¥Ñ‘;ÚC]~ ú‡ñ+dËÉrãÄ|™ ó¦T…ý˜Ü‹¥^ïÖ6iSߨØ{*î…TCkc…QË¡8¬ßäÚ>œX¼€«—NpTܩׇ:’#G‡OÒ×á[œï@’t襘 gÞ´**6œ¡*˜Ô ¨‘èê̱.z2UÂx!źÔ[á t¦ªVg²Ð3€í:ŒÖ.a0sê’Zy”++1ƒ1{k̶кržV%È©2ÆÇ»ßÌUV³éµ¦I3–uÍ׆ßn»fRfkIÞLC1Ç©<ÎEŠ|˜ù°ÇÉ<üðÃÿì!¼gÔÔÔ|½ÏÂûͰh)òGG 8©YXÍgrš^ŸîÑ£¶Z\تVlNªô|G¢}ÈŒiæs¤<€Wv`Måök•ýƒôSÛàÚ­…ë;VÚ($¤™‰hcª¶ÏI¢œ F¥~“LgTœ0»¼=~ßæø:Iä´r>W€Hkƒe;£ÖëôíÕ¡ý½ý›µÕºm†’ú_®¾¦6xëÒã3>˺Fsúˇf\/uµ˜ˆ'YÖˆ0 z|ˆr[Ó6½V’,J:‘ ¥í)ÿ·æB‚f €9Y §€‚ÓÇ$ …&04B€PHÅ |Qõ…¨aEÄ)*4€Θ6xE£ÐHä/Ã4z1•”hEÁûr:E+A;)EOˆ ¾-a‹ª4´éÍ8HNǰœøÆ Kñ™l*•!Ã’b$@EÒÀˆ@ŠèORµæ2ª½‚a˜‘• Z 0ÌBë+RÐ>nUø`˜Ã"ÀÑ.bQcAßj5¼•ŒÙ%ü­c:ÏaU=Fæ^ISFÍšPˆ¯ˆÊù(ôCIe éA~N ˆ±”kß”[¬9©’ oáNœZó é.†Îù/ê"ÂQƒw * nqbœræ?êâñ]гØ}GŽÇvµ‹áKÚM‰sŒŒcØïmFG nù\Ž–’á$>ÃiÕ]4˜ccò®m~÷¥Þñ›ëš-VšÃ¾KW¡­[îì€ö\ý±”Í¢Ö™Û¦Ž03º˜D§f„--wù¶õ—WráOÚç>á"E>ˆ|¨•Œ(£O~ò¶ükTø iÿ…ëÐÉ2èäS“×'ßOV9õjæ…Éæ¦7‹¦TŸÞÅìUf `Û3šÎ”®§Œpz4­ûÓúž¾,ghdFë³ÌwJ©ÍüÏiN[“eNoèŒÀ¶gDtÁƵP¤H‘†Žö0‡éÕÍâ=— qŒ<šq©ið²È©L­&ÌrטØ5j8§’yk/¾½ ýöK ³Q¥@Œ'ð·öbV6Ä.›p°Ó̧íóD„K8Ó  î¦0™H LŽÇé/ß^ÞѶèåŒ@;t“ÇÌwŽ3K7”e’òüÞm±"T5_¢µ¨íÝe¡õÅ%ý§'ü͸%½W¹§ÉR£qZZB‹¤³‚¬7AâéDªÜÅdâq)ãæÙh\õ87“R/±ª¾™k¨ˆ€àŠ$Ìì7OiÛ+‘úe/Öo0~õ°]Ÿp¦]¨mfR½}2g&<ª±Ô$®Š!dz -¨"¤1͘¨A*Oõtç.½ÔÖhè=Òo¤¨{ ¦LSâR«ËfI^€ey2ÅS`Iž<6f:ÐVÛ°1Ibœ©#òXŽR%m…IÝ3jÂpüH.·Ü,Er`0×=Ýc¿ªjâÖÅ­ìÕ«ÛxE;&:»ùÒ V]M†-š¸ëÕô^Ë©)§r‘l8¼åíbI³É7؆6-éš:¤áà”´V™%cÞYHbΔªV*ý#”·:ÝÆ¹”F×?J¯q'H†|­ÝquÂXËŽ-º¥äT‘ÒS|œE 23Í´Èçx‚3J|†VÅzçàiqW¸ä…÷_[|X†4jɡѡËJ¿îYèdœÖÑÇë3)ñBSëŒáJX7§znX‹Í¸nÓ%¬!ÆSÆìì¿ "E><|¨• R‘ ¼ßØi/ÎX¢ðúô‚g¬:wޫ霉™“˜cÑÉ·³Vz&~&>ò‘ýùÑ?¾O”L1â¿È‡$‹¥©vˆ×6Nn(D½çÛ æâv¾d9ÛÏiP­!Óp¬Ÿ¶Ö‚aìñ]ø?«Ô–iú£*ÇÂò…ê+;É£ø¢æ|ö^Œ3ÂVØ0ý”ÚO¸ 2’‚àrà…ÔÆ™,Üõóðƒ?ÀFÒæ2çød•¾ 1GYÚhŸx1¹<ü|¢lþ°ñ‰öë×—ÎbîŽð¦QïùŽi‘ÃnÕjÔh"“dÈ ’‘ÕƒFŠTW»²é”>=6N»<é!“jTÜ9“E#eµRê”i® HŒ uË >ÐÙõIøb¬[(­Ñ÷m×^³!*êžLŸ†™t¸ªI÷Ä([„²ä§ð¸¯iô@ïÇ®w¯®À«+`ý å±W563öÎq0¢¹5W y»Ê)òf#Ù! ¡„î¯íÖ;Öc¤æç»ìëÈnÊ\Öb—škjS‰neë˹®˜¦3¥ÇqD3„§ú OXШNåhÊ€c`§’D0Slc’ 'À'S„.  ÀFò‰’:=„.Õî€v¢:”ÔOÕ–¤Ç+»ÁŒó{еϭ(V,¤KJ“':-K@Uüâ ?³¶†—5Ï÷µ À¤’á‰(T¹„„q kÐçâ)mÁyXH'H{9¸2c/n|$YsUõÄ¿-ng)8 w™@$Z’ßêõŸ *iYŠ„doÆç¨žæ¶7’r-Ö…Æ5ÍÁÕìˆl?a3Ósr¥+RäÌÿ%“;tçò[ñ‡üh sîÂs!¤ªçñü¿Âl:ÿ{$IDï'7âbÄ‘<‹Ê Ošœ§+V^Ƥ¬LáŸ}B¥Mš¸MÊÞ˜ª\³ÿEdrØ·¡î½Ul©Ñ2¼¤æÛ‡-ë凞gÃ5 œ£ËÊÂ;!‡mJ]  3ƒ¯Å6r%s ÿì¥HM;:ˆ¦J!èÇð“”,ObžßK´–¾TÏó·W¤•Q Üø†Pê€ÓˆäLÛÇ«7yú¬ôäø5Ò[V¦‘SSnÖ̰z@Wš“¢7¬ý.ÆÒâr[6˜=Û©DEŠ|˜›’ —?Ø †?xáÈÏnýÊkÑ©\ŠôÛNoPãX}Óç9Þ[%3·í0ßñã5îÊòüOÅÒWßù«í£9UUU•(Ùò•»¶xðw·»€÷LtLmw…øŽ¯)¿öù°r¶B飿¼ÿøùmíï{æ“åïjnïŽÌ_±ôÛGOJ—ÿŸÅ<!„ÞGFªx<^4Èù0ྨw×^`ók5…RC¢ÝKv„%EE‡NÎoˆgðÔëºj¯Z].ÛmÖH’Ÿñ)§E×oÊ=±CÇç( \€`xš˜É 2Ãr‹¹Þ±8pŒøìV|Ü•-6ë‡x‚02¡¥xÊÈÉåÉß¼U3fpiçGZÂv.^qeÖê-Û÷œ}¨pDI8c|èDÝ-UÝS‚¡´¬ÙYÒãÃ\ºôXhfX‹(+©XQ¬]Ÿ´`™]iB•h­Ql­u2V‡B¼&æãíK‰ãV"Ñ-”¾–\z,]g‘4Á3ž Ö¯K‹},Ë6µÍìh[»vAºu€âÔiƒq¦v°Üýéó.½±´ëྸ{Y-ÇB¹q¢†ãëS]¥Ú>0m=9­\U’^¿ xïeÃ[3 €=×áýÞ¾%oŽ[6”‚1æî¿:ªJ”k7§5 Å8mªŒêÊùŽ`é/Úç÷*W.ȶ”Îî;Ç2R£›ïŸ–ÚqX.K\l†¤‰ ˆv˜#ýäáCË©ã^"”UéQpêjL¯Ä—MÕåQoz—¾y&J=ÎO9Š85A{©#-;.jV~t[ª‚ÎtްqG¥atòÈ„ÇÈkÊÅál‰Ž@(¡{pWݳÇ<­ïÿfícz³ä5J-I“Eç ^M8øÜ`É %\"8ÂkÛF\ÓV î\aŒŒøñ©gûÌ`¾7ï£[\‘"ÿæ®d#4 m¨ÚtÛGë„Ç&â{¿Ð8ïÖ{n¿dùüÆ•_Ù›A™ãøüú›Ùl«^÷¹‡ÚÓ »÷ ÍÿÆç/]wÞ²y çÝúÛ㙂F_úÖ• K,f³gáµ?ØR²SüôwoùØ#ãc¿½¼¡²²ùº¿ú•Ü¡;[æçM4³Ô•ýÛÉe±XlîúÍ÷9w>ÈçÕGêœ~€ZüÓ#Ý=ƒÇîøýkßrÉçþ:&©ˆ°.¿úêeV|®íZƒwW~®?s›œ£ Éš< Ì¡5YTþWcž²ÿ‹yŽy¿ØdŠùPˆ!-„³¦¨H6Y&ÏdõùÌTÀq¨k[Pß30ÓwëéízÀ`Q“àôxc©l–Ÿ%üÏa•·,î8xA&Gp,¬[½2ív&ÉrZPœ6¶„HvFËOdF&(“NVN! :©…ÈÑV>6`ûÓž²«_¹tj½)‹N~£·*TÑ4²òJ¨~û¯öÁŽßvÖÝZw"‡Ö™Hsùèx®Å÷…âùSk¦’I¥hQr„ÑqAÝÈ›',(%rqL£iðµYý IDATȇ&Jf”§1ÞIV²mët,&´§KŸ_z0Rá Ûý ¯ùþKö›û4©B¦éU®L:WZ"iŽUÞ9&ÄG"§š%bIRJbŽš —}¤´+ˆï™0n®/ì…וöïôy ¿y¬3Åa–‘XFªó&KÝÄFoü£uÿ;äøñv÷‚yFÒl gŒ‹m9’Õ‚œýÙÀ°¯->`Ã&ÃÙ¾Š—V‡÷¦Æ«Ú¹ù!Ű:€`F©Ü”ÃXhŒwiÍ̉•\[?dJEdrP´'cÊïFÏ{Ú·ô`¸~$åŠäÎòþp²¹L½a¬íã•çWéËÊíœ]Ô®ùáß*S²K K4‡ŸôK¬ròC #Ï3Ï,ö¨{s]è3k{æñ»»Ê.IÇÈNJÆÈR‹º´ªÊZ¢ÑÄ1ÿS}Þ”v%"2 tëüÑ}úPb2ßÆz|æ²Ï²tm£îçŽT>ð޽ÁY±è¡[ú]úËåÒäß2c²#½'6î«4e}¡x–ŸC’Gâ3 N‰‰ª5±´PgIïîr‘éqM:¬ÕH˜†:½0x®–Zoi»Ø~\Oð‡#¥õ/Þë«ÝÞîþÄŠ¤ÉƒB$Ÿ€J{Æ.4¢%x=&ð˜áúuÄø8€LžzIÅzü}ÜòcÜ’”vYµñmoCsƒÕÃŒ6,ÉWëR{† >f‹•‡f¿“FxÓï5Z«¼ýdžue$ÿÕ‹B—7'EêÕѪ¶G1ÄUK•ºto³}Ž‘u•góHgÑ¡—'Ì}¹ŠÝ™f‘\J·ÓïSíN¬`iÑsj$1MYUÛÂ'Â\ 3n°[,‡nö¹ÄyÜÅ$9Ãápécý‹ÿÒ³x¯¯v8îgŒ3z´³Ø G-=2õâÓošw •ÒÂå"\Òoû–lE½þ‚ìp®-(‘æ4ññük+ÿ¦Í}ç…MÆøgÎï­tƬq?ÈJ–Àâ´0À*Å@F%£ˆ»ÛËDvtä 7—wYµñÖ!ýšy‰JglEyü郎S†µ±,™%nX‹¦æåËJÌñqï½»ô[Q8Ï]ß2q–…-RäÃÀÜ•Œ°ÿSÍ·ËVºþ‡ék~úã-v@c½äË××2–kÿóËÒÖïÜ~ž$m«¾xÏeòËlËa¾øö«+)ªüÊ/m̽ôd¹ö‡ÿ½ð¾»6•08SºåÎ-;ôèšÖà™Æ1kÝ$NãÙÑŽöÁˆˆsÞù sò³’ÉûƒMÖ”^¸¥,vð€_Tóg&«™£?»÷oåßy³§ëĉ=OÝw±‹PBÂøÛ=˾ûÔßþ¶ý©O¤úùûdN¶†ªªˆ]ðéÿy½««»ýé/ž½ëîía¬tËÞãz{BRUUMþË›šÍ×Ïcæ:ʹLgÊ\B‚g÷Â{žÜ¾ý­Ç®ù¯o¿è—À|Ñÿ¼üŸK¸–{¶ï}çÉO9ïÖ{{7>°«³wׯ6÷ýðãßÛ›PB‚Gç‚ûžÛµóÕ.Õ"$޽ú¦ùË/v¶¾öæç¿xÓ^køîÛmG_ºUxè;ö ꬓeVÿðëž›ÿ´ÿÁ=^éÄN®Œ’Ü{¦NgŽö\ òþQ2p2âÿŸ=Š"Eþ¾Xi±?®Ž;BS ¼ÝNN;P²¦TM&Q½#wd¤` Øqȸ£—¼~C ‹;>«¿†-­ó­n̽Ýj€-ç«»Žâ™ìäçb.›•”¬Hf£©€Z™¿Ø% 'rb E"î|GÉÑwn[P53Ђe¤ ç#ºÁ sV _mh[¶9Ò¸ÆuôUwÇ^’ÏRÖ’î W94’¬Ì*c@•%Y–q‚’%YÑZ–”ŸˆpYb2~›8ÚÔ@dçÈj¨Õð ¦á KÚ¯(ëŒ&Pœ2*Úý%~j™Ë€Çšë÷M EæÑáÒe‹¸ÝíäÑvôû'ÔêrÌ]‚ÿ`|ó•žA«6þÖ;¨¥ZΡ›Œ’_èë‰q¡´\väœ>ˆ ¦§M)ë²3ñZ«-œüÙMvCz"gÌ0KGx•= Wú#X0Œ@ׯiÏñU¼¤6³KmÈ(ô&ý¡*jªIE`Àâꪲ”`g¥½üB‡…|Ô†/Õ–;z.,m¿¢¬óBKúRú~Ï#Çæo;ÑðÎ@åPØ–è ÞÝ@†|Ò}#¥IÍùËÒS%)&3zÝ×jÆSN¸F·Îiì?þ?ÏÙ39"›¢âÛÇ쯶[¡o,ß¶¤b4ߎÝ×:ao¤¤dQp×Â·ÍÆD·îuZpEŒÕµàc•ÝVm|ÀoÀs˜y¨qÇZá‘·\°g¸z­uÒµ,'3]±òÇú?Ûßö­µG6”Ž"Y¹ê¼™ù»‹ù2w%C-ºÿ­£­ÇzG'Æöüê¦j€0” Æ)6–6×: „(g­9ãŠ@<¦Â×+aòréѸb¨?Ýöéeó6}¯S’9uZƒgbÖºhÁ×ú÷Š·ÿýÂZgÅÊ›¾ÿúܨ©êœ~šzÓ9ô §ÅüC!œÆ²c݃c\M BU¦óoÝê%Jx/¼mmîõçz²H=YEÅ,‹.ÞPkÒ àª/ýÂ¥ÆÎ<æºèÆšžÇÞ Hª;ø§wØË®©cæ8È9Ngê\@cßôÉ‹<¤’e«×X|‡ÇøSeRU”íxò ióŸ\f ÓâOݱYzã‰ãÆ|Á§®(§@UAU–·ß2ß@P¥›¯®Ã4ë?sY-‡ië.ÚZ<4’=Ãd ²jêØÀÙ:}´gþ)ôð~ ñ_äC†aÀ“ÃKÓ¶Y#’ÞCO½âqÈ}>Í’²@OBcì3­Ì­ëÒ«B¢¤HüÙ ÇÂÚEêcÓî |:©WWŽu‡´ŒÒë*'}ÕN„™ï>ç0RJi)fKgí…eÄ [|¯÷8þr¤jž#Za Å]å#«®’Xk*‘E2«u(09[â,0`X<>&êœ,-./‰r#„ýý¹ñ›ä*ÎRýª,¿~¿¶®ëºúnx™½à'Öµ¸Ò3™Œ™`5|FÕV¸ˆ®q%žÖ|éø²JéÁ̵WzË `=¶mX¤ÉSñ÷ÀRÂùeýÃn8é`Ö?L+Ãk¾ÿ¢ýºuI4L¿w5—òK´Þ;¸¿ÊÉw±­%Üì%VßïÛxöHŸxho…‘“?ÑðšR~$S¦àïÉêÜ)άQ\‘*ƒBš¸ÿØzŽ„*+™J¥}©£Õ×– åEþ±ãêæ‚ÚçéÂ%A$Ë;Žš{ãÜB÷X{?f²2G“õ ÍÃ0Øì¸¹áè<×h0¦}µÍôù‹GNŸu‘"Bæ®d0Êäp:V5Å\r*õ ¦]¼/X¸Gˆ½qÎc¡@ŽôøüvRôƹR ¤¥Ìæ¼áÏGºòt÷ù_üh 1­Á|ó§oDg¯Kš—}ú¿_88è}ö“âo>ÿ­}sqEꜽË`zŒ¾” $5kqT0#PM·ßÿÅҽ߿vMËÂË>ÿ“IUUDèœúBü:¦w³é±˜XØ®#¤ªr¬õwÞ¼yÉò¥ V®ýÈ_|™´ ¨˜}Ýó†ŸxÕ'Döýy¿ùò++É9ŽQãt¦Î¬I‹å_â$!ó¢Rh©`·㾌±Ò¢É×X+LÙ@TPUDè:l²MBoÏ¿E8E’z‡Ï_f4ª ¨ê&{j) ­Þž¹ÓYG{晢BXÐû„bÄ‘FZ´ÖºW[ÃS 2>~škYŽU1‚¥‡Vj²ÿ÷vóúÊÜ¢&”Ì9„¨Î ‰$§9F¾hixo¿þØ€­®…øÔèŽ _ŽfÉù-D1¹³Ë›ÎV^Ó1nE¹÷Ê‘å™2M:%Óý|Å©ŠYž %¸cCŽçŽT~÷ÍÚá,ig„J{a gŠ,¿4Ì9¹#o/ñ¿m&ñ±‰èÙG«$B ©ÃQ•e‘±Õ8£‘Œ&¿n2úÛ:Õ 2†ÉÙÕÔT^=`¹û²§•YJhñøn°¾|;÷" ØÞçÁlÇlÁ˜T‰_i}‰ 2FÐ9‰y9¶x‰}´Ì€ûÑ}ŸÅC¶î™Ãvè“HUCI=¬[*oÛ=© ÷eæÃåŽCþ¸þåþŠ¥Ž\gÜñTO|uÑ‹«:ìÚØ_Û–V‡×yûÃò±#:Ò ?ÓtF3®GÇB—;­vöOF½û½“@þ[œc‘?2ÓYÃíå”@ÁÌœ§ÃR‚]—¬°†ÖT}ï¢ñz/Þl$²ä;½ö¯¿ØxÏ+U n"ÍÓùÕI&èhaãCd&¾,ÝÖ1L@ÖZ:Ï4Ø\Â?pÌŽcØ¿®8¶°&€aÕªã`ëßp7ä{\;þRÔÆúZ“X®ÍÅ„ñ¾c¸ªÑ*7MÀ@À„aà0Mš9Fþø¦àKÝú‘´&D¸*®Z~XmÖÂUîC ¦á|†‰`Œùáߜ׬sÊEŠ|Hx×q2gB;ÿæ-šm÷>°?*ËÑÜû"~ñGç³€Òo~ÿ—{#²Ý÷?÷½Á]r]#ì‚[oÐ=÷õ½6œU ‘žÝ¯ÏŒ‘ÄõN6=8–šñfÖºÙþW^:èË*@émv=•(xNÞ…wš¦d„á×ÿ6j^²Ä‰«j!ê -7}÷w/:´óák…Gî¾ÿ@ZEHŽ Mdó»m>Пd=z"¯%RÕ\×_ý…ÿ¢Ÿ¾¾kßáÝ;½¹Dªªª`>ïæþ'^>úæc­®«¶”s¢:wï²É¹L›BhRဪªªŠëÝlr0Ìç/óÁ„Öi$T„›ÒÛôv¦JÄ“Jå “U€:EŽäWæÌÎ>ÚsͶH‘"ÿ@Räïß’ 3\Ë€Óªn³Œhš­?ìÖÖr×\ÑX¦Æü Ÿëœ_œÈŸãÁ1òÇ×û‚Ú¬È.žݱsŸ‹ñ©_RèòQ#T™Slí1þÇ“nÀ`yE–cd_JßhŽÖÀ`@4 ×<»¯ô«ÏÔýiOÙî X]úþ–ŽrVœHœ–A!³7+d¤[i©#ÖoQîtß›W9ãªÈ¢‚“À$F’Œ‹¥Å%ñwúíÀ’|†‡òÜ 4jjÏÒHk–I+JÖê2'»ç—>³¶ç’Rß;ÄÓûí¼Ròµ‡ 6"µe­ØÐî Ô\šÙë°Ä €Ã†Å¹ãÌ4k,%¬,¼ÐY '– †11GćÅlÏ«Ãó^ö¹ÇrTX š­‘[æ›ç,˜D^ë(¹©%Â2"KòLìõv·”S’ô³ñß¾åÝqØ8àケ‰p9™Ùîk9õ^íê¬×€Ó t(e€¡¾ ?ݹmæ÷ù”ôNPáì»ðÚe²7f[eóW:¢ëÇ®\:ø™%¾UÎÌ…-ñѰvw§ù+)`›çéyGùMÁ˜Çiëbý£Ì®ØüÛö¯3éäïß8±ŠøÃî=Î ¯€*'xÔF"ÁÛ{0îZ(RZ°¦\:ð¼ýºR&sIMïH†ÌH°c¨²LŸ*7|&ÛÆL«ë§)I£sOí<³×ŽÚGËÀ± ‡j¹¡S‚1懯8¿~qÀažSZ£"E> ¼gJÓ¯ùþ÷V½pSÝ^{ã ÷<ñƒu ¨²«/‹Ýsž×^}ͳUßùó·—²À.ùÆs¿ÙØñëJ­fKÙòþdgH™ùEWßø¥ C_¨³š½[›Ô9³Õ•ã‡üôye6³¹ä¼û’ýŸ{W°pnÌ5w E’e‘OúºÞüÍ×>ó“Ày_¾m]ø©üÐö7Z}YYÕp& Gb€T@™w~ùûÃQIŽ|äç»Ù—VSê©*ª’W¥‡Ã‘Þûè+>±Ð—aé+¼çÇme×oò¾›D^s›LÉœMÉcpª*B*]Õùš×ö§C1YŠýÃoÇÏ¿ª™Yñôv&³‡œøf,ÆÙ˜ôèxJ™>¶¹u:e´gÉ]vÚïŸE1â¿È‡„hŽ\k âÓ¼¼Ú²6+9‹AÒjD»Ú ¿xËlð¶®E 26aDî&`!›Â ßô,#]´0ðl«#Yȇgø?‚yÉñie©Ážz¶}åˆa`œþÞuã•v!™Ó´öûº£}ä÷_°wµ¦GxCÎ`üÑÕ=ŸÝØÕ²á•A»1=8aƒ "”Ð!‚íõcQJ›ì#5·Ûé FÆ\5kðî~Æ6Ðq¦ÑbŠ¨ÈŠBé U@Š”¥íNST%t,É[H!‘¦í¹^¯;Š-a– ƒQúá½ú«×Ÿ1v¨©2'ÇÃrÄï "מGÜñ(õóÇr=C4Wj_šìv™†òÅ~ôg´n'‚Z§a¦’»!eg„¶aשƒeŽ¢f›&Yƒ<2²8œÓlqùþmqûÇ´UX&JêL°€ÐÛmίü¥¼µM8Ñf+~ïu¡5‘QÂýè‰ÒçŽ:ïx¢ú‘£Í¿í[tÈG.fU±p{gia™;Ö¶À ÑVE¼§´H“¿cOgœFH5Rщ¬áLkr:zî™~]Þ6Yž|`¯suS¬ÊX?âêÕþû®öÝrA°Ì)ìÖ6>–;ÿûc7!UùéK,ÏÑÏ4ýa•cˆcdIï®4Fÿøvɱ[MI²—g‘¬†ŒÕ,}6æï,]¿×.û~~lÁ`Ô´íDƒ‘O©¾Á 3v*½„JÐÖ3j˜—!tY7øú·==V瞦3¼æÛ_ß2‘«)R¤Hž¹ÏB7³õ´#‡ÙU¿ê:<å=¦›ÿ©w}êÁÓºp]ü½_ßõ_3®RÞ-ßzrË·¦]sNoªüØC‡>öÐÉ·ÞûÛÛÎ\÷/´~cNs™Bþ™þ¹Ë©*±õëk–|HSùÂ5×ÿꉮsás†T9qì/_ûÚ¾”гÞ7ßóµ…´ÚŠÈ’‹.ˆÿ÷Õ‹Ž…‰òÍ_ùÉí-´:Y…jüô¿­ýÒ7®¼Øl3˜ª—,vÑùèæ_·n{®î;œØœø.¦3Å»ìT„½ªª…òM IóÎ.½ã—w~ÿ›ŸßðËë/úò¯ï\Ê!~jE€íœjJg³OVSvé'Ï{å?V/ºƒ]ôÍwiaeй;2Ú³,BhîË÷÷'ñ_t0+òf(joë.«Èœˆ™Áiðñîm˜!fyŠ\æV_ÜcV²™M%â8o©„XŒ+µ$ûæÔ†OÍ Ã2ÒæÆðë=žMóF{ûÒÍâÎÃäÖ5¡ªH‘ai]ì™Ãv—Aªr Ûgì]©^]h¿H_R½j%9…yÍ늕7š'“GFØÍu¡ßtäœ]Ï”býà°[ãñd.ÇÆ«šžJ£°rû£©ªEáªæY,ddRGˆ)Cn<¤-÷Ò¡ÕµÁgz>s~o™>5‘1ظQ£0¸@Wv$ÕÜôt§©'w[î¾l¦O‘¬e5É‚Ï[GtŽ)wÝÕ2ýj毇ÜOõêãC>\«—44¸à©mêç®À6,”Ð $ –žÝðµ©qôÑ5®¨§š}þe}if¿d¦8û:ýh“}fPJV ú–c& Ç9ʤ~ò‘aŠ*!û††±@HS]–󸇆3ÎãIÛâÕFKë´Ý`†±˜>&XŽ%kËt²“1&„#[Q«™Ž Óý à(C£3y›m³Îc:'Ü«Ì“ŽŽ¯µ{¾zß>ÝÅ ªJ䪠„œ¾³ûæÍí¡õ¬h2wìË­¹TÒ[+*b·ØüÚíÝ;hèOàò/^»t™hÉо`ÙâÚd—@ÿ@_[ióýúxÝb[vuùäì6¿yAiŒÐ8g³ âX&áœh;4`‡°¾A:z ‡­b”á5ÿñ¤ûîKƒES¤È Þ˃&ÿÏ‘wÇ:w9Mí^:þ…Ój«*jÞ×^~ nÿõK·OýXÍ©ÛÚ»îýÔ7f­¢‚kó7ŸØÊÁ¶8P0¢™D<Þ_>2ÑèwöSÕnaíüT©du±I¯ Új þ÷ñFšU5Û 6® íÒªà5Køšù†ìD¤€‰M>˜NêçÑ}G‚Ë·dMÓöׄ˜Î°.€–“˜"%I‡Ýtpâ@ÀäÔ'JšÈJNnpSz ÝÜ„÷ñBûϼíhö SýÊNuŠ#¹ösVúìe°mq›CåXdÑædŽk¬Ñ\µyø®ß°%þÚÕŽQ¸v+éyqùS°´¸¢4þÎ`‰±ÑFPýªÑ­®6:í7HõLuÚ+õÒpVsCSø Ï¼ÌP³C—èY–,ÐlÛ±LD*’y5—TêíYŸbµ†zÃp¥3—dE:+1‰ e\ÒA„>b©…M”¢è0¦ÚdBà=Ä5$“gÏa}:v‡óÉ·™­ÕEqlØ ~Ê0r:"­M55xǶ!y­~ñμ/;{©@¤SœWºeÍX︩?n ¼ºf]*ZÑñüxÃE> 2úÎCKb{ÊáÕJ[ë»'ŸÔ7º‰•-•ò&Òi>àï7 „ؽ#5UFå¢òXP#T—¨ýÃÊÑãhÑ< ^=hùÒÆhQÆ)r:E%ów{f?%´þÝUDé¶Ç‹,ûÚJÓ»2çéüßäý£d h)òÁ¦Ý_RkJ×Zb‡ƒÞjäÓùw{ÖÖ¨›%ÏÒkíž*gVÍ)€ðhLªªÈðˆñ÷µ%µ…@ †ŸÚÂv…ðüWë*‡ôË´¿|‘ƒ)û[·E;§4Œ7ÞáÇ0ì¡çY·›×$h´ä¾ ³jbÇaS<­YXŸ d$ºÖ”ž:*­†¿¼´ã™þF¤ yÎÑq£“ “Ñã2>ÂoôŽ€Õbßø,GyH ;¶êƒÈqà•TÕ¢¤·Jb .p˜"JmÆGÉJƒ¼°Åÿ§=e[ë ó…íx<§V³}VÖ÷bj¡U’ÃÁ(=ž ÎäW–RìÇ·óë.`6ý£ðûgɯÞûs{‹‘FÇ•R~ì#6‹Û£/s«-¾‚k4¢õZÓ³6˜¨Þ€Y²ZÛÂb66¡qâÄàêúi~hÇlû†Mƒi²Ê eõ0ìé·Ï/¯qDûBÖ‡Í[掵”ø–—ø·õ–»-C;Ûm»2WTL|¬¹r ó·à¼®¬ý"ûq-ÁK ,%Ø ±I‹¿©¸Õ»7§09EË#&ôÝ’÷°TuÙç…9œ7A" ØmxhI–úL§ IDATÞÊH#)W™þ4Ï‘Óè Üt,Ÿ®-”Ô=ÑmÿÞEÇÏ^E¤µñuç_ÿÄxÕP€YÓò³ÝWßJ:S~YFZP2LD^—·ÞœÛaiÝn¼ db¿¯ä¼ˆÎ ¾ÁØ„TØkQ˜jb Þ!ŠD(˜¥ô«#IW0­Y`Í÷įX¾û•æMÕ‰Çߤ®½0Wâ@½(ÕU‘¯tV¹…Böð"EŠLçï¬dfz ½¿ø;+™BàÊ»êB¾ò¥+ÿý°aã×X¥Gê»Ê¼UT2§ó¾R2EŠ|€ÉŠô³ýÎ;Wtde-`à± »Û ë’c9w‹6¬=͵ì¹C•N\Pré'w[®Ù¢K{†ˆ —͹q:,«"æ“—O$Èâ€ÐzMpŸ¯ìÕY’ Ü~cávPˆFp«&–5¥~ÕZæâ0Ã0ðgŒÝL{‘–䯪îz²»)ÿ½÷ŽŽë¸ÿïëe{_ì `Q‰F°w‘T¡HQ*–%Ù’l¹Çvœî4—Ø¿ÄNüãĽÉU²­.Q¤(‰’Ø{HôÞ·÷òúüþX°AЖmy?;3ofî¼]ì»sçÞ«Å¢jS+b|Sç£{N²Í½Ï­êõú‘Ñ9"ÿ^$å©È[ÆñAï¾gÒUK£ÕMPðI#£¤85IRwšÙK'õémŒɚ캤¬Ád–(ç[¹Ó/§—"„ýïËÊ•çÊ ›Ãvï'ïÙ7nM¦í–Bá¶êžÃ>w¬u{en™g ôûúV¬_úr7±¤N¹xïånÝ·Ïîó¢åñ;H›.g…]çù® >slÚ”¨¾ ã/ÏZ1¯2©]¨tÇ`(h±°2ðŒØR:Y팄íOœn^îŽÙ)d.?Ã?±¬×qa©9BØêr«ä®â!wIýÓñP»®®I0©að[=†‰aŵyïs8hxU™ƒ“ÆÛkR<{)gÛãè° Ã°Õ5ù/¿?/+J:‹¨R{ÙPJHª:ÓŤ$ãKÝ Ç«-ʖƘ¿äÒ³õX”/³^R!xZlöNT9"ÿu´ASAáMÊó ¿4Žê #>>4–w½Z^¯‹Ôê†`X4lwôŸ •n­œýìnÆ"—·ò‘LÍø#PqF#h é4ëÃx3C’ ®±¸ŠÄ¬"åIR%+MoðÅ$ÇÞ>t£? /wÔÖÙs޹̉¥œ–z¼wýbÏæà‘/—üœå aætçSÍ7„Žâ˜“h¤ßþµü 9Ƶð“zËã"uÃy%Ã76ž ÈõS†ŠNÒ–q§>á#ÇzöQ±±MÈû†Øj^Ü~ƒæé ö9`ž0EŠùóÕd`ýúõpøà[艼38Öw,ïý=?ùÉOþP£WWWÞcŠÿEÞ­„S†P޾£¹ïb‰ŽSJLj(ÎŽŠ†E†;ßz|€aw/¼X²¢I3W4)gÍ6öL¬ìæh24†äi_šÙ„bÌÛ½äWé~kÄ?1j}ëhdój‰FrÜè8eÛ²ô+qï2çÔHÞ»Ø>·u…§Å«°ˆ@ ž¬­ŒËçç…Ö:>05‘Ï/4®ÌòÁ–µF»Çy졤ZmÜ4ù s:” U9 f›XäÊuŒJKØ&×ô…ÂÃªŽ˜Ìè'Ç|ô+ÑåÛm—ÜTÎtPÛÉ/>":íšw›ÏƒšæBÕ«ƒ€Á÷ÁyË_šbÞï8°W}¿“CïY+ÿæ^U†ÐX˜Ð +Pý“¦_žµV™Õ["Õ¥YÊ]“ˤcŠN!±fጫž}ö¨IÌ›¯e9—¡Ú¢ÞÚñ{f«¦W¢ËKr"ýz§w‰1µ¦*¼k¨¢;ë§'“wØg]ÈùZýp<‘ªéÉ/7áR#qrÉC!o$g.¤$â0AàÒ9ÂQd«Åz€ÐDBA†¡ Ç˜Ž[™„DRžg9Š ’bP ¯bŠ( *ùòU„á¬+"2w4ö.ð&fóXï y\¡v oiG~ýß`/|wdÛd¾Ýv4ä:PмSôZ¥¥¬\Éýêœ7™§BSÔ¿Vý˜LЊ§!á½/+@:!'ÇÚºÝ-™Ó"+}£üÎ}•þà†Lk00‚ï5oª‡{7SÇ)2Öš ¬_¿¾¡¡á=‹"¿/î¼óÎ?àè/½ô\P˜‹ÿEÞÅrß¹è’' 6Þ̸̬X8#T }¬$.ÐwÍ|’K˜J;ÏåÜ6¶Ä.$ÍVæÊ ‰kYmnM¦sDÿ™mž7W }#¶¨·O1¢KÕ24vN­vð{³Í´4c"*ÍQs{QOðõSq†>?issf—9óéûè¡Nʸã:?Ê›•¿ùÌÈŽ½X^ŠÆ»PÕJìÔòšØ+¯Yë Ïõ±œñŸßpû¶ÞcÓ¼Z¾Åv^“Ä¿È7UªŸzð‚6…€HL?ì¾:Ø[+;h!Ó¸XûÁðhëTÚº8‘m¬Ð~̨GÐ9N5xå}í®Î·¶:ó…Û†xVf8Þèª Ç¢qºÄ †ñxàì¨á‰#ÆÕò#Ä;j"›–͹’ÄL óبiUEjqyî¯ëùêáEí`Jv¶nðLòB^GäWûÆ×Á¤w½9ÅQB«-2rL'W½dxÓ°µ¾ ›¤»ÆnK•mv$TE€TJ¾8Q Ç0`Lfk{?¶©¡OðÉÃê+iR2C%‚N3¦Ë{Ëæ‰lŸ‘ãÄ[]X½S[ß,½göÃsMœÔZ}vjØA¾6¤»å[ûWýµrÂLõãüƒ£¦ÆZÐEÇ·°Ä‘ çKMOjîÚ$çÌ÷•}ÎÕÔX“;pj´~Sù žÁ)Óž6 ÕeÐÖxrûû©OÔ¥àë»Ì‹Jˆ{7Õ˜"E®Á%MæàÁƒýý ‹}ù'Ŭ}ñ+±Z­ðg,~¢øï¬ø…q:;;/N h)ò®d(d@êp””hð—ˆoEKôÜ6±Ÿ˜´>¾jFÒ•æÖÖ4ö½Ã6A‘»8û¡wKéà´–rŽÈs˜à§SÀîÄr7•NéW]1V:#&ÛFòô¬r“8•){å5‚9t)ñQ°ížh(Ó§—: J4M/Äh!ãOE•²0¸Û•òó1ÃÛ½dM^× Ü°T¸ï–é8Èg:ˆ{WHT³y88ùëÔ©fü¥p»±äë†OÝYÖWY"ž4¯ùF€Ú°‹,}¬±¿_·ôéóMå¦l“{¬ŠMOdî¬)*3Ö0\«ðT»µ’om‰ø=©çyŽÐ®ŽÀÛ'ô‹ÜÄ_Ü]Tcй6ÓšLáIîì;›ßOüè»pa_üjÅ/ŠÿΊ_—¦´H‘?]~xÆó™5×—¸h)/³›ÈaŒí‚NÎß)¹³a¶õIÉ¿ŽîäYi‘3 ×·¼*t*SºìZƒò¤æH€|ªßþÈÊKÎåæàíåÌ«DmÿX›QJ=‘qÙUÐdp––iQªAGê8åâ%2Æ1õœœQG¦îj` ÙE>tK„eù/ñ±µÂPH·¸r¡‹3 ™å9%3Z¿ºáè¾Þ“á5Û+Ìcírõzú¤ËšóŒæéiW™³½F¨«ËŽjÞª\¨ê3Çôi8û£xØ —–Qáxx«Ý:Øêï@STJÁ·<Ýy'˜lžœŠáo²76Sw7e6-»¤H”˜YÞÀ Ä”Ž!â;φëÚºFy0ÀtL°ëêó÷lLNèvç&BòæÕsI…BZV ûÆG÷­ \žž¥€Ë˜®²ÚÄhfiãDž°¼>áÇp¸Å3x¹OÔ‰déFk¿•I”²Á“™š,ÅœŒÖ-·õ°˜UM`3ÈêöaQ›mFãÁLJ1Éb¥ãWNP5¸v¿*Ü·<9’taÖä“€ŽÒÖœ@ePÙd† ÑÁ$îÔ+U%Â=îÞ¿uœã‚]rÌ&fÍò”1k-‘9}…A¿·¿gùùª¥Öú`ßÒ®b˜èʯë‘+wue㉠š ÕÝþÕÈ–-“´I˹¹rèl ôç­Ë=ñs`?ðÞàÊIÌ@Øöt·ã¾êàç¶ \Lés`”&h¢µ:ŠÑϵéþåž9)R¤È•Lk2ýýý<ôh:=wLÆ?in¿óÞ/=;ÿ³lQü¢øï¬ø…q/?¸Xôø/ò®ä@wéÖò„Ã8ããƒa˜ž ‰ÂѲHÆô½öê¶ô9f ;–k)'¢…¬)Ë*BO­^¦-”4!”xÙ©yÆEøÜG£w ™?wË ûjƒm0¬_ôÊÁî;oINÐÞ& ­Ñ:L4¡ìžãÖ‹ÕYÜÔO×¹¤€[};hõ¹`8ÞîvއjH¤±@Џ¾5𠝥†9¿yýíÖ¾s–Žcœ+0ât&³™MÜXÙ7^Òä Ř'þý H8u,ߨ*´ßXa³VgòJð@°i¾Û¥ã|?ó}IÔ±Ûª: /õB,C›³yÒ8v¢ÝûYl˜ì ã?yÝÞL,rd­<ø\Ó'Áh•ð¼ˆ~sD:Òž[×"î~µsˆ?ÜÅ­kÈß»)Zhæ² n3³w„ E§}v„̱Mãÿúœ÷‘•©‹FžÙR3ÒÍu‘oï7wÉ›–|2œ7¿¨ªÔ¥«Œ!›˺¸X°Å±x~½±½’v–Z„ ü²õNYË–ásÛÏ«ùð¨èœS“é™â]tÌ ‡§ú+ïr -©9æ‚)©“ýŽÜúƤÓrÑ÷É>›¡q3%æi!Kæ²\xBŸŠñ½‘Ÿ3v¿ö›¬žw`I.;I"q55¼¦´*ذõ›#ëÓÔ‡û·­4L!yZ‘ãiq­oÀ*Û5æ¡|L$M”¸oÔ½Ôý·›Ú.Ÿáà„Ãñ÷-M„bô—ž1ÿÕm)§uEŠ™~ù „´wãÏBãðþ¡çùG!þÆu­ïšßл?ǸÿΧH‘?~ÂIý®AÓ†úñYåJÊ)lHµfbB(Îå$æû5k韥ÆÄKR¡™žÂKžë¹3žfýX{Î;ÿÐKŸUx §l{Múr‡•Æ`•E”««^z]²ò„P8£ŠqEiÎöš ‹™»ÉúRaÄ­ÀóíœË*$ew{Þ>”ý›Ÿ‘¦¾ÐÎ"EùÎkû:õÙ?²lŽxÄÿÁ`’ÝS–Ã9ïGšz/º\¤#[¶‚¸¼diéäÓ]uuRÌDI Åb&ç~2¦q$£9l2¯[?»¾ëÊrŽšÌ#Í ©ìäÑIØPîe§ppìúÌ­+…W[õWÄ^Ù,wë ƒã܎挎SL޲Wö£ÁTc’KÅŽ1fm–È’>›Ø6a~s¨ÄiP*­9·1}¥€sO z%+Kƒ °|¼¦™,ËÑ‘9?ÈU–Øý_Ûë)§s™‘Éñ»Oðn“òžÍ¹8˜X%sÕ¨7»ºOL•¦Äªxž> ‰uôöÑÏÙìn“ZU"°àƒ÷ÅÊOïO•Ö·:S?9Ó¬f†:FU¤à{ŸÔó ¤éÀ¿¿›üòÚß<‚M$sÏÐOìd×5ËŸ¼wî5wZ¥ÍuôDp†oÒ™nþ‰ƒœ¡ÿçýóe×)À3ÒºÚèW'ºŒ›–Æ ÷e‘e¤Â<Ÿðõä &Z²s‰ËãC,6µ§ÊV±G2UϼȴÞê´„FG³(‡©€æÌçƒsÚ%ò&BŠ+ €œÄ Dìð\¿S•”<è\åSËgÙ 0Šˆ²1JÈ‚†øø™ŽÉ)™µiŠ–µW*¼njB}ÖUŸúAοœ<pŒÈe §ûxVö»nHÛ]|Îã6$ØJ÷¡Xo×Ûá=­#8^qgY×ÕÂKì î]ú‡ŸZh½nCK1ær‘"×Á¥/TÈå¸`rÙL00©! ¬ð€J Aü…D[àêõŠJ§“Š¢X,6l.ÇÓ?®Kü½ûN^_2Î?b ²¼ãw!´Û=ç¸Eÿ"ï&f@¨ÒuÕmøˆL¯)I¾.Èùl;ß«tÑx™M.é‘÷Ut¥™ÑQá‘;t,&ds€Hö¶Cƒ̵á´ÓîÕëw޹K(±Ú”¡õT%²èä ³ú¶²Ã@ƒB#Ù f@Õôb …ÏNɲ"á\–³# …|‹¡ŒÁvùä)!ÇÊqÙ‰èIõtâ%Utxغï¥Ñ[>8¨U € ÁèÐäÍÖNð™…[oBç¡tO7q|r¸v%òºˆË£5ç†<×—oô± e✢"EŠ\*ÇumKs¼0,˜r»ÝF½Žã8žçûúúEÁñßéñŠŠŸJ&FFTEa9V–ä¡^ ÇýþZ“ù·9iðÇBèæM+ÞxûÄœµÁà¨Ëå›U859\â©ø½Ïì·bYædž»¯(ʃ¯ŒNKˆP–P¥:ŸoõŠM þ3-RäO’×;m÷,û‘ÝDŠgâeKõÑ©ŒÓK –Ù{Ìy…=÷<ì9såµN}êp¸´TÎ!¡^ˆ36„›í­ñòXÉg–œ›g‘ßbëˆKM¥:)ÃM`ÄE˜€òkçG&OFñÂvûˆûÕIËÇ7#†ÉƦÆt,ì>a¾c–TçwŸ2ŠDV t¬Ì3b®°‡ /³aÁÜ›vœÊ”$,ÒEìtÒLÌ¡Œ 1ˆ¼U—m‰XÉÄãø’õ Rná”ÃÜà—îÝÍæÉ`ŒIeÉ)æÀ0½½DûPËË«­ÑªÒþLiB|úôIÒó¨ûpéñßLÜõ8Ø“º\$…›°‘`ÓÆñºí¦ó‘ÏæÔÏÿ”é SHÿóî$f?ØnÿÅ ~ýbõ“,(›ŽÓ>¼E>p–Œ8tŽzÏÍY§M9Ûg2ñ³óÍÖ–©ð NèüÞKƒÛ>\}†#Ÿ.8šw¿mô`Ñ_ïJ<´<³Ù¼VÊjÌbzüÇì˜ØTN†+ø¨ªÀ<¥ìPÊÕ¸öL•”4¤`RP0 u8ìŠÛ„»-úJ_º¢’3âG-x“EEVe å€ b¬K¨´µùšÓ6M8 Ý•_€øªª ôucª(÷iš¦(Š$I²,K’48ÐÍ0\m}ã•= ®Sü×ß:>gûáÁŽýoüº¢ªiÃ÷_´H;ðRgûáõ7ÞW³hù;0Ñü™Ïßü1üÛû>¿øQ ²üîw_U•'Ÿþ>±h»aÉǦrÈA §Gô=ûÄûï}Œ¦çží•½=þ‹¼›h´/r殌Ø@‹§ãv9V"{G0¸"ÙápÍ­ÖAŽ˜cï™§„õî‰î„³Õ5>¥¹æÔd(“QÈíX`$áÜä‰óôÜa‚/Âù;Ýý¯¥‚Sb™‘±SíZsèUø©¬“Ü3lÝ׿èÏ;âpOCji=€·O™}RÁÛe“iëK…lžÔÍtÈá(ÁG|†@^婦^©LÄ«ÜTÊŠ'mp)‰ ‚ªBŠ0±ié&§à@_~m‹©\~jÄXÀŸ‰Mýdê9ëÒÆRѬW74'ïÝ(À€¼¡©ÿ­'£Kâ@o¯é„Я»–l×I]:˜Ñ;­gÞ,½5 «ÞĆìD²"‹Ó$RÕ‡k³ûû|?k·mhE—’Ò,€lK¤±® ¾]R~iÂçºÆ²_ÏÊw5‰{Κ>~A“M¹V™#)dóDï~è\œÒg<Ë 7ÞQeà"¥tðlÒOiAÌJc{ñ/¤Ø·ïùÞŽãsŒ*v~íoUeáÇ¿òæûþþ;oŽÏ÷ç¹¹ÿ´zåÎæ(òå²üŽwÿÀѽñÊ;´²5Y )ý{©ñÃHS'ìöðÛž88¯4³)züyw¨ŸŸ2/¯ŽÌÓFCPÇgV{úÖ– á„îòªÑ´iP¦»ê,ŸÄ0 1ŠæpàŠÀå™&™ÃáÒZ[t!“·ñ ƒ^/Càh¼W"Э IDATÁ*üäT>ÎÚ_ìä7—¿¯)¸ý&> @(F?w†Ý´lú䕎SÝf)ò¡Î«á9"o¡âUìðJ®}%}ÞŒ§R˜ñ ³²Ÿ_gJ%Ê ’òÚô>ȳoZvçj E3ø[ý¶2Ïrõ0¸=Öà¿£/o­èi­M:­ÓÚ‚D±?ä?©&`GùtN•fÏÄëÆvj+ÚÇJ€‹j’JÄ'âv?§ÃˉÈËìwÎV=ä‰i¢ô‹Ý™ŒùÓKKúМÍcg:¨=Ϙ èk/¿°cœvY¯C“€5Ñþ438©/¼<ôº¨ØÙýgn€÷ܘûè¶ÈrÇÐfSìK7â8¤4¦™šèÏW,¹»é•ÌÒ¾´`IÍÄßÒ*ÝÜñ•aõ®8 „%ãÙóØÄPÿÈèX[œûèç_Ús8úßçõgººM&h\\±ôç+ä ¬úÐ#º O­ø‡´Å¼Â0êËÄ— š€2#¥ÇÄšåyW9‹9†:@" ¬Ÿ½°1ÉRÎM×qhIƒxß–ÌîÌÀ¿Àmª•›ê‰°À‰)R亘e“™m¯¿X5Ðߓɤô:½Õj­¬ðÅãñŽs§A`†ã8I’R©”ÅbÑ4 iÚ•ýh©Þk&c [Ãærs3/Ó†®' \ŸQb¾iÅbMS,³¢(f‹Íîô¤S‰p(`±X€¦©l6‰m6ÇÌ®5¢ä®Ï|¨…“SÃõËç+*79å·µ\!œËm'Âañ\—ø{ö™µÉdôµÝ¿øÒâfZw˜øç§ö¿öÃñXï©•& cÿòÆÓ§×fsÏìQ —þ÷‘_ÞnQ2þcÏë l?öŸ;¿ÿ€wN«Ò.ÜܹîBAŠ«ÕÎEA–ßýîŒ Æ×<&ç€êß]•ïÄp",’qUиt`üµMWÿÈÌ*)züy×ðÚ)Çû–įÜ<ÎIÌPÒœOÛ _2ô¬Åíðl¬´`{°S–i%=?5mË-Xy± »j›o ˜|†I#æel9Ž˜Héb .‡€¨NÊR*mq@?òõg}—ºÀ1ÐaâÅ—Øe°,"0ˆçÀG&)×ë}nÐÐMÕS›Kscæûnã YÈÀ³³3{lhÉ<}ÀŒÓ³uæ„Á( K,Ê2ö,祂4sµÄ®ý ÂÐú&å•£ü²Ö¸¹ÆèÒâĶ%‰Ÿ¾yã§Wâæö#BIEÆW]ð,??UÚŸÐýƒw—ñ\gï²…QxF|œ}æçïEš«1bðñàš÷Ðf»/9Ù<öÍž©S}¿À 2 M,Ô·3Áý:ƒÚ°XýôCsx«÷F°Ë³ñ,ž•ÿâ†Èž6óÇ=™ƒ¾‘8ĺ¨uuâÿ}dÆ)D–ÈWsÃ6*y"W•AÌ€h'p(·JúqŒXÇ œ0h¶â£€(ÍÜ­T—Ò{ÏRF½¥6n&åZ¿Ú;Â~ó9ÛúFñò°lSMY•é•ìLt©™[&wZ¤ó£+·Ú ‹a$sh§²lCaS‹×8íÛòÞª½ßÃ<ä[”CŒW25cìÒ;ür&H£×|ÛÆàÞ^ß]M³c)Rd!,ÈO!”Ëf|ee&³Y¯Ó3 ír¹ššš4M;tèP<Ïd²š¦E"’¤\¹!­&z²öu÷ÖœyîÄ(¹Í‰²*(Á#/îS*JÄ@4/ ¸cñÚ5‹,$\µ|ºS5vöÙ§Çß~“ŸÅ@yö¶éŽÕî«꺮]ùyj'ÆGªü~I’†††+«ê c*•ˆÇ"‡CÓ4Ð4$ˆ±Ñ!«Õ>G¿&…ãYÒVfÑR¼Å—ê:säD_ ­†’Ek×´xXÈŽŸÚw²/˜S1‚µ×mÞÚj#ÕìHûŒfŽøá½ý¹<üâºp¶lûF¿nž/¥ëëÍk_}ãðå…F£µ±qÅ cý÷›õ˜˜ßA£çÇ:ò{PNb’¢°›5×ø,çì ïÇq‚1zoùäÿT¢»oûêwÎÞþ¥e¼4±çëÿø¥'ŒåÙ²>ô•¯~r½ !¸`¹¢¶µóï>òë`^þ­[üÏÏïžõÊf(Èò;Þ}„Óæ N|IÑ–‹Þøà§ž|áç!_UN&4Íó|d®,,züyŠs4¹cÝtȲœH÷‡í#IC{ÚP¦—k,9##थÛJÎg2Ä¡~‡·œ>›·‡EÚO¤t¸°ÁÕ³ÿmÍ~}"YÓÀGF©’5pö¢ù¢@©… ¥%é‚&³?RµÜ<®#Å+{4°éf—‡êÈ#zJ3`݉*5,~ЃÀJt:qG“”Q.C›ÉìÀ³2{è8µ'‚ Šs wΦfaÐZÄY¼úï~¤û⣌¥Æ'³qçT^awN:ÜvrÒòèâñ³•îÓ†µµ¾jýh¿sÏS¹E+Î:n:²>º¸=uHC¥}'ÆkVúçtÙ÷—þîèF7öÁ•¿ˆÕ¬ícAù¯ë­vêï¬oaK©Ï¶Uß´M†ä7Ú`É"¨ª¸êl³y¬w<ØNÀmkåªò¹u•ÁqnÇâÙI0ç!'2YÊ䩱(Ó—¢ÿúÉr{¥õΊ@ÓÊÙº¼Ê ®“y¯…M¤”Ö˜•º3?3BåCPß(ðáI !×QmY6áÀ&<‘Ãè2§‘át[ö‘ Š™Ì€ŽÓ–ÔçjËÅW™õÛ&rJu@X1¦U*¨ˆŽï5²¥¦¼BŽ%=®»/Ÿ•ŽGY÷þÒÈ©˜Í §#“ãd.kÜbžêÌY\`åy\†™ –GŒša¹ EÉ/>©[¾Ò~W#J0wÒP¤H‘ëg¡Q˜1 “eyrbBUU«ÍÎД(ŠÙlV¯×§ÓiŠbjë›Ò©dw×9MUg÷£Æs¶u•e)îȉaØaG9!вSbÝ£/²q¹Žçž8Ø[vG£N§€0ùë çc#žÊ©r¨o¯ØÑRãH‡„ßÂÒ³@ñB€@Q”\.G¤^oH&£Ãý‡CQEQ’Éd!¡»ª¨š¦Ío….v¢Ê™©þå,1ñ{÷O•m}ÿC-nm`ÏO^:SrßJ8{rÔ´þ®ð°Z*ÁLl´{ïÍÖ®¾©>zÀøÞOn+ÁU@Bxj"½ÐÐ1ó‹¿ûõCW.Âê wÝ÷ÂÓãÝ÷Ó…H@¢PPc^æ,Áªe¶> W>»£Ù«Jùn½Í÷õǧäEÙo<öWnúÖîïß`¼þå÷}òï+_ýÞÍ€0@(×>GíW¿ûžÓŸ¢¿ýæ¿¶°¹öÿ¾²Í®Ëu™9e™_ü9k¶ÝtWá|>ûÔ‹¿8è|0vYÌÜüÁ Ûo¿.ó`‘"ïv˜ÖTgÚíCQý±°®Ê¤®,OU˜3w4ö\l³7âm´¤`W°©ŒL„2X‰Š´TˇތzorNräܱh/§Ù0v4[UÎ¥ÄXfúÍ; f)Ÿ’1 &ò%&Bô²W9«6—GD ™#šAQAÓ0UƒlZj1¦œtJG ö{N Ÿ<§Ì‘- R[Æi'SBþ¡ì¯Â ‹g¾ÑÖüé–öyÖ¹H‘"ó0# óüš EQ}&‹R­×ëE!I'Ȫšz0MÕµ‹®ìG‰ôŒˆÎ &-WêÓ:9 ì𢔌cükZ<\zx2ËUz¤cÃäš%Zøêå€ÓùªLgOŽ Ûí(2Þ kî/'Ó!A½žÝñ9šÍÛ2›I“$¡(J:6š,…ðeN‡£à ”L¦Nw,Æ0 e3iþ²ãÝ!P§^øÚVÒ¶ü¾Ûj±±§Dß–[—¸”ðX”)«×wôæÍKHLMK™ÐÈ (ÂI-꺲ÙM kª¨*ñ‰`Hx‡N— „nÛ²~×k¯¬]uÃ]ÇöÃÓƒí÷«9LÌÔ˜—x[¨zÙú[š{” E—ªp½Ó¹h:ÝùÔ ñM_ùÄF7 à¹éã.½ëéS©›J s¿œ«Ö —ùåççl³}›ù²¯‚,ïÈÝ/ðì+¿Þéø@®ñÞÑÿzx˫űp›LÑã¿È»€¬@¦q¬J¯« ß½bøÊ6#I×*s$¬‡M­ÕÆkÒFª'¬¨6f(Êßá8/C¬#óe¡âfR’elŠõÖ(3ì™$IÉêôÎÕäh1];™ÉEò ;„•¥2`"¥40$ê3“o 155Þ-þ8Òà/¿0úµOÈ?yÑ‘åŵZS-ÊklP2fGB¡ çI§R£€ÊÆDàa!ŠÙE²y|÷A~ß [¿J^ÓHlöLås0–ŠÀt$rñ±¨PJ˜NT­|tMádeãâp¾|Ÿµä¶ûÞ”Êj“Ë$ŽŸX´¾äÜ~Þä ³îÎìòãmi·Rm)¦\ó{îÛ"š|6ËÛ?UI¹Ë¿%ØIŽ4“Z?€=K>~¯ªã/N ;ÞΜ"Ö·Èßþ«k[ZdŒ9?BÝÜ8U B²QQ±ÁÀk¢ª€=t 0ðèR5fá¶šÙ!žCqîí„»LNg '‰á´«3ãšôáKN_Ì*3!”èqÉÇ$”²¥tB§C 0Û3Lj%CG\íÐÈâÒ˜j §·­&#à€‰iÆÒsH²ai'ÞW?Nú3}ã¦Wß6®©ÊTTN¿»Jò“Îdoˆ÷O¹—ÂUXÖÑ6ZÖ¼*=¥°Ó —*õ[ÛvéS«BeM•ÝSeýoç—nžuU˜² éd#ßs³#JW[£m¡²;|k«(R¤ÈÕ˜a“™'¥†aƒA–åL&,Ëvtt¸Ýn›Í¦¨BÓn&“f§æB½#’ãÆ£ò^Ÿ¾ãT·ZUƒ²a´ž…L4#ª!ÆNÇ «•‚‚.ù«lí§áN[ 7ÀÔÞX†g'òWûBwÍç¿  ,Ë¡T"‘Ëg jŒ$IñxÂ_]/äs—;{Ïè !DÉÝý‘ÅLvìèÓ¿<Ò5º„Ç1üÚ÷¿þºª!¤IÈ–cü«×µïyí©·cÈä­oY¾ØžI]ÙŒÐ3Ó=kóÍù·ç«®Ö!†áŠª€QIQà MCs§WÑ@Ò44]/§)à-:%2Mœú›[WÓ’ÓP“Î)n„Ó4w­]&ïUÚ ãeû¯YÞ‘»©Tl9ñ I‚‡G¿úð-[vϼo˜«züϘùÓEÇ*Ÿº1¶§ÍœHãÕž¹3·tÇËœã8m©²:ÓÈjk_RmOr¥˜HÒx¹9äÔ§†R®_ ,½Ë×yµD–ð}oŠK*ø\7é´éGaŠ$ä Fè)©„ ÀJÏ—Zþ"y•ëJûúU[9½– É$dÖáY%tf&3Ž¥¦gõïZ”××ÕfrÔøÉÆq°x˜©‹@T2sY¦;obR|Bb@ð1ip³Ižxrnõ&%¾øKžàøÇ7çËý]ù²‹U²Š*(kã™ò®°ëvoÿSð?º7àÊ" Ý£+Û³P)ÚÔö;^}*·hÅdŲsôÝßßå¬1É=‘©/–4å‰Þ¦†-jlë/_·üCÅ+)‹9f+€DÏêé3O:–4!ÀО#¿Géf ÉÖ·ÈŸzïìi“$…‘4"h…`d H}˜,b¢t‡Ç·88„ÔPcˆÄVó º ãdšg¦dü{}K¼:µÅ¹­äü•‹Œ~&l'âãPp@źBsŸ%g@(…'#˜3Aê]áÆ›ÝA MªÀÆZð™ÿxYh­ŽÖ–¦^;ç=6ny|EôSr¦Û±V$è«Í™6›W­¥ e–J›“ý“õ«†ÝRßù;Þ§w´d”Kž1N³xžy€Bä·G¼·ZŸ WüUãÑ.Z‘"E®d¡6‚ I’Äqðt:­Óë·mÛÆ²ìØØŽcó=/Šþ IS_ûÖ¼MEèl§ÔTšOK2§!„Ô|R"­ IâW-Ÿ!`\µ¶3§û2-ƒ]ým^” ÚUgðŽìʳ/I’¢(AÄãQ§súPY<žðWÕñ¼nb|. XŽŸÑšVÂr“ã#Yws3÷ê[«ô ï|ï§ïöb‡1#öÊeî%[lL²kç/öõVßUª›£YæŒ]Pc@îMž^–Ž"mÕMï#Yä%“Ìôä‘×_³,[îb‘×êð}}Ï,å.k/œ-´&ÌsÖžFhä»ÍLY ²¼S6™L:¡ËŽo›ú.†ÔJ+ï°—Ìß¾èñ_äÝŠß“yÄ*ô›~¶ß»¶:³Ø?;‚Ùù”îÖŠD^e“*!Tk£jY˜%À‘Bƒuiè…á†K¤Ñ>zµ±X<ï&Ói•O’v4­Ép,›—¦ŸÈÇ5{%¾æœëÉùFƒMÛ ¨ Èfž€) «a#]®ú‡Wå:NÇ;Muú=c•# l‘7ºï¬mcëŒh…ÈÑ¥\>‚é_=#=Ts:„¼Â@D0@ oJHŽÞœÞNJ€ ‚O 7—ÒQâØpî‡{Ù›ð­k¢:N4.)ÏñÐìà“%Œt4e­÷WÐ6©Övíÿ^±Ï?t*ÃØ'ÿ~ú¦¼û†g;MméºÁÿ[9àé}¢þ~Ç`?DIÊiM`¶{Ýû[eÇ?voXW›kµ% c˜Ü¶fÆÆ­l#þþ‡ ô×;ÄE>Æ5ŠŠ$H’"h†¤9œÕe<'k‚¬b²‚pÙ¯JNM EIÐ µÌ0À¬0¨× '1ƒqç™°©êݵ1M”c1m‘î°]g3¶š{ è8mó"5%/&c™ BT3Æ36mur:”¶ ¤æÞ?âYùîÃjl%»ÚBõ¸çßÔÔ¸}­ïÔ)A¸a†u=V·ÂÝö:ío‘hn¢bciø„•4g ä1ZÄgp6“¶y•½™Š¥ÆhoÊñˆ¿{þA‹)2? õ“)¨14Mã8Žã¸Ao8uêT,kmm½h™ $ºƒ˜oÛÇïkà!@Z²ý©'޵g[ê<ºïXè¦JM ö´O’åܸ<©¡¹ËÑ“ D;ýÎcGöULKïpi‰QéêŠÌ‚¹–V€a¸$I8Ž[­EQ4MK&S•þZŽ×EÂÁ\.Cฦi…|2³4™éƒq!Œ·©äÜ‘6z›ŸÜµû­öµ^Žkb*WLv*”,.UÍ¡LB£/¯m®86»™Ë,Q„œLŠÈ¸`›ÃÂÄi×¾+;Ó©ìÞ#tN {6eÔ\Þ@âvëÛI‹eo©˜CYªñåÑ!ýd„qZ¦Í/eúÀÅß·ä„ófÔ4µEYZϯÝ" í±Œ‘ô´(+PX¢Ë{æ)a}É䓽¾pÆm‚í¦ŽÉþsª/:L¶c–¦|¤ÿéÊ#"É3]mD[(篷tŸ<4L”9MÁ޲åë[+¿zÌHoàå®0¾ €–À ŸÇÛÇ ?|ƒþÕ#•ë“ßx«Â–ÌTb‰àdœ‘ž“5IeU”•ŠÜåÿcÓYü¾å×q&*'1ûhÚ‘˜eÎØX–²ç""¤³©ýcî¶Aû•ZñXÖÝÂMOÀ‰gÒ`6@Ãð+ãC\ä¬ÒÃô#½åµ&»%p4HTâ8´ˆS} ‘Æ4/•ÁJ¤³ù†Íuò¤u…'Þ외Zçô@uëŠÑ“Ԭﻬٮl®‰Î±ÊeQ³G‡5[RýYJeí "–HÆþî)݇o‘–4L¿ç¼+؉IÛ¸â÷B‘"¿ Š]$EEMÄq¼¢¢â–[nG½ê…(7Ù¢k\lÇÃCጠH_íOŸÎ´ú0ÜP[/yñɱ,f([qÛÖj"=!h®R~™9eõ{ÐÛîmK\Jr`^EæwŒ^u‘¯ojb„çùBËD"Áóú\.;>6,I㪪@©¯rnß÷ SÚ]SIï;šyßÖMçOxåhTD8mpU.Û죣ÇÍH#uÎEÖ—’T¨qãÆáÎÍü<[^ï9²ó¾)“¶e·¿ƒ±ËîÚ¾éÅWÞ¾¼0Ž·Ÿ?òÿ Lʃ(¼ltW-ã8þ7²t×!,Ÿ½³ëð?[¼µK6Y¬®YÝHgÿ~Mëße®XrÃ{¿ÿÌ#=BD˧ôµoñßï]ñáŒF™+WÞõ·ÿ¹¶ú‚®ÇÎUÛTqÇ×íúÇU-Å/ýÂîß?W›™¢dy§îþðPç«Çލ¬…Ô”r+¿ý¦»çi|ÍÞŠyÀ³òb¤Æ“<9èüþ¾šU©ÅåÁýžmC…&‘LV:®c$ERxAв޷’5l¤šŽvø»†Î_t¶ÞSÓÍÏuÒŒÁ QÌÊ¡—Ã@´¤ŒaeuÔU׊ˆ ¨®aÅáÃ#[Œ' f(ÃFi€¨’ŒãëöuHol©ø÷ fóøöà_ýÀ$F„C)ãÛJŽOÙïjsg„îÕqêF¿t¨‹k½Â¤@A½±)áÞaê¥Ý©Üª,i”s2›“Ù¬Äd$z2c4ô«á:½”·1’™½Æ4èhÑ©K"”á…AW«9dèßôºX©ZšYm꣥<-Šódè–s"yb#1¤!œ¥q ðõq‡rÞTø1§ô£Kz­>h ¥Þ¬Þõ¬k–žû`—DqáÜq?þ£ç­oLØîÛzQ_Dpe~Ç™ŒMáe% ÊH3¶O¤ôoNZ—ÚsM®h…5<u´3¥ÖÄd„m­IÜÚøÙÁR˜¥Ì•nrL缷ᩘ ¨ò*“aÊi›cèB3ƒƒÊ ïß, #ïJí”[Íbæ8aë¤[M(mQ#¼–Ù)%šgBš‘`Ô–ÒÉjgôÍÊÓá–íÕ#vÝìÛÊŽ JU‹X;wD¤eqVmª´Þ9z*—@Ìà1©q—0&‘\šÔ£ÄóOá}y§mzIûóÍ|äpÊ{—­c! X¤H‘yXP> Irtt´¹¹¹pÀŒe™ÒRÏeW^íB¶bóÃK++‰ÄxR ˆ’ ;òúí£GÓÕÜxkÃ:ÚjâI$¦Â#ÁœŠÌYŽ[[o¿ßã!`LCa¬¡Ë–5˜Åø¨Í´l¡ç‹æ cŒår¹Ã0š¦éõzI’ScA`¦ªªªª&³Å`0Îî36Üö~W5¡B:ÌÜtÇ{]åú„L–¯ºÛnÕÓ UÌÇƒÄÆ›|¥fcH“²‰ñ‰bì+ï™Ù,-_³­uG…ÛÀàZvrx0~Õpþ×%þ ;ßœ5y½ÞtÃæû¾µï¹¥{^7¸¦j–¯»ù½†DèiIÜÑyðË·¯Z·ÝlqÌ–šªýÔ«=Ÿšk Ý›?ýÍŸžQeÿ§×ß„´9j”Þóõ—ïùú…—>G›n+YÞ©»€ŽZ¶§¼›|d¼,ðãk¦µ)züù3gå&–‹ôkÞãõ!‚¸øh§“ç³eµY‘€R}&¬ÚÔ`¼Ëi ª¹aà)¡Ñ1 =Û[¿ÄmrÍá»_ cÝš%Ź š N’¢Ïbæ4®kTÏ]Ù^6®1ÕîÁ"Ù“Ë{ ª€Bäè87••Þê`>qo 僡VM¼Ì4 ˜ùíCêã›t¿Ã` IDAT§ˆöðc âw;ŸW< ¢›ëÃ~÷¥ô%Õùo¼Æ„bŒó*©!Ïö踗¬5å¾øˆâ´kyyJ°_p²I–ödéJSoNf3"=‘2@›LN¤ûƒÖgú\åze…7þ¹ §/VX›ÜQž7¶ÖÏʬßsÖí±òót°hÞ¬ªÈv!ª˜’ãX©Ç©8«k­Ÿ“àh¶Ça)Ýþ³žEÕ-&MK—‘^µ¶–èÕ¡„NIÈ› ãt¥‘”W0C˜&÷'Ñå)VyZ¼}Q÷ù`Ù‰€×g4Í2RSãrI)ÜÔ„ú ¿iæèY“ƒÊEm驨¡D$Y¥¢…î?R*>ÙÓòÂ9öãïcœ¶Kšp»âu¡t«>beŠ™"ÿ?{ïçÆuß{ÿÏô‚Þ]l_n'¹I±ŠÕ¨Þ%¹_·ØVžÄŽ87íÚyÒœä>²;q‘,ÉŽ¬BÙ²-Y•Å*±—í½ ,:ÓçÆX¤À.B-tâÂwµñ_æ«]×6yd<<>νÑ_sYUL`UT E…€öðÔétmÔ^üy—k #õÜÈìð¶Àx­+±k´p´=t– V"FLfýí`ô¼…c˜¦#ÍÆÐ’žâRˆƒ/€S©Ã  ¡ÆRÁÜ5ì3­âÕ¢‹¹#’½m½Ny˜~Ù¹Rgxª°Á3ù£¾†Zv¸³åLeºp~C€¯ ©;±¿pÜy}Gº.R€ W;×’L>ü¼ëôhi{‹z÷Žs.xRάÀ¨£úDXá‰`̘ª¬sÏõ7W8 ×82Z±ÓFþïÁ›o†Ñ}èºJ9±¦[†E¦&,Í0BMXºE$FÇßÿåùÌZ04Îõ$ ¸a£Z_µ|žQÀm&üàz뢳åÂÙØºcxÙÍ%…î»ïò×Úõ Õùÿsõñ¥4öpJ¸¹­WR¨XnÎaMàôëWÇÝWu皸ß%À@οÁsÆÑ‹E#˜9C±Ôao~%AÀzþD‡†º‹·_É”,®‚ŒÁmyìr ,ÐXñãuN#h#frÌ½ÑÆzŠ3™_Úƒãun8x|pÍJwj>É3Ø]Z9WÎUåøîËg+;ýÇR-aÝ‚Á}m?ç*Rø³Þ–LÓfÈE¨ªý>O9ór™2ïñv‡K´9bñØððp㊇Þz€¨©m$)ê<¶ó§Ë¶ß~ëöù‹._¶}þ¸:¶ï×ûg˜ÊõwuØ¥™É ™‹åbòð"„¢Õu²\š1 `Ëšf¢Õu>MОSƒÌ¶ÕP刻e±¨Xôðíúu©G^ ܵ)}džìÐ”ãØøü!Û kru•¥muÚ'lw]yf¶’L¾Õe{ú¥g³Ÿ¾w¶Y&Á"„Ř¢hH€iŠôP¸¢„8GMµ˜Ë@¦ŠtÅÔ¤k!Ý^w♎#J{{¤O з‘±g†×_³­šÑdwb”Ÿç&Oc„f4IŠ@ –aV¼úD±imª¾Žvó?xÇ–Õâ·ŽöPçR2³ÌŠ™ïýšü$fæ#:–%1Clo]ä~&)ôÀ”óÇÇ<õnkCMþïn<§ßÔ‘±ðuÓ rX É”È púµ­©GBÚ4&pú¾”÷3Þ3²–E$TÉr‰|!ž]ôöh¾ cØh;]ü•UY;çİHi#Oš ›©C€(Æî ±ÈŒë†Er‘ñǹjG‹Ù´3ÏZ™ãÚ“hì_{U` "~ÄòMA€-069]ð-õ¾KT¶¹Oê:Í+gÛ[Èþ=ãU³ªo!לÕÁÌà yÙg¡¾|»ÕT«• ¶’c(GBc !hU Ÿ7SE™2e.žE6™ '™…$©p¤ .ºÿ‘c]ç:4rz`™VKZ¾}-×bù ˳¹ØH‰‹^Î< ÃÁÛÙÏßóþÜhƒƒª TD®D(ì#»‚´ŸÔ9‚"A„’&uLµ8RòÛ|vŠDØÔR½£ŽÜ-ï¯ɼ€¦‘,RXPÎŽŸ7L©MEëÄåwÿnºð‘Êß;yyÝ´¹ÉölÐÙúí©kêVkgê¦çä `ZZë:vì$`•à‚çr5ˆÞ‰“òæçÓ _ ürÊÞñgC÷\®¼fÈm%Rä|Üù¹üñÛä<Ã>ôœíÞíJÀ½Œ§ÙXŒL—„o?+››å_9%rç ×\ÈpÒ{MeF`ç> õaujfQ ÑªÚ$ü¸·êSíK·6œOP~ÂnKR(‘7ÞJ5-æ*ÿœŒ™*ù¦ÆÕºmÒ¤âHhsAùUt…èØM®c®sX¯üׇãnðÛò÷uô½sŸ˜ˆÌ÷$-••¦I‡W·‡žÖmá‚·9ˆh9;hUžF­A=9~»mïuŽC ÂȬŒ‘k‚ Û‹ÉÉ9’ò'}'ÆÃöʶ¬]{ˆ×ûŸ~#ðÜ^‚¸î ‚xàûÁ¯?í:q*³sÀÿïüß|ÅñÐëÌC»ég†jôg(-/gƲÉÞx²/&%Òõ6Y+ȉcÃC¯œˆNî}îèÝíÙ»oÄ üH˜‰9‰¬eY8_̉@)]Û’FŒ°1Ó ÔºÃÄØ—WüòùBÃ>åvº– ט;ãÛ=]/ûû^µÜ‘ìú[ÄÂ8 ”î¼ÉpUNGfJ¸'÷ ào#_)Oñ–¢lsŽÀ—i»-_Vr "?q‡ÚVQúé‹ä±Ï|»$G{„§^uï<骯°îÙ’þÜÍ±Õ Ù‹”1ðJŸ¿9x&Ä3âS§è%}œvLÄd‚]ÒNcÅ¢hðÚÍ©n¬+Ù¯òŸÉúp¤»½£<¡ät2leÞQ%êé}“pî¥,Õ¡Lú }v9.³žW{Iˆ˜ ž‰Ód|hUpÔ’cl€1Xæ©ÔÇØ4ÌBákŸ&þódÅ_žÇÛ×x'|B–A–›Tý8mVÖtDÓ„P&“È7aÑU[ë•®)íúæðŽÏ ¿tùg¦Z·4½b $¯" Y Û~1rÙ`’¹í¶ÒJ餒bfð«ã_ÜÀß^ÿœaóõù6þßC_x¿|‘“dÔ7D}ÿUî“×alꃓt-ðÑŸ'+:´ãÌyÅm™2ÿ“Ù~õÕðÒ‹/nÛ¶­TZš¢pYæÏ444üü™'Ö\¶á·8»ßGhhh8ŸòòËËw—öuËÿe.azâžk*–ÌÜÌT¬‡²[) „·¦©ˆ^=Ÿj)ë™SÓtÐßé_‘œØy4 wvÆVVNÆ?9R·¾2»2C¦f–²˜@-E0¢ C´À a)“¦fQPÉr( ;IB3Ja'` GN›µ5|MPøßß.06¾B™®ñ`¯ËrE±Ì¿Îpë=ÙÝc¶F/066f ¦=ãån]5W'‘áw[‚Ò¶•‹ÒKžó~ñ¶R¾D~ç)4•¶ü‹ÊÎ\š¢Z<¥%¸¥*o*J^E#8,àD%B“ss‚kà£þÝÏ÷¬<íh¾µzàÉÌŽk:bùn+_@ “¨jQ_ÿòøú¯¯|dÏ uÙT ©A“šÜ_¤¾PÕ‹hŠ6ŠMù#kÈMƒ£B}õÌfyÜÙ¦_5AüÇs$%Ú?¾M¾ûÚ Žàû®xÇ‚ ŽO8WU,**ò&–dRäÏLéÕ)÷¯=ÕÁ/ž®pðîÚà™!Òa’ãöò»zqzº)Ç­­Ò¬u(IL—ÕzD<÷±ì`öÈmn2ç"Mà\–*”¦85eÐvfd ~ÿ4i9åÚ vúå#źA©€QJèùݔ׉¯Ú¨¦ŒŠÀxå\€@£¢YœÖ9J1D®p;–™.˘2eÞMæ”Ì–-[àÈá¿ÓÉüVhhh˜]Ýy(/ÊËW—?{Ý7ß|sac9â¿Ì¥JïŒp[ÛòE*9¤°!ˆŒRã˜)‰Î¤äxb䲕®™f×=Ã"¥ "€É`Å=îþñ»óH¨9(¯«O6R?9T^YW… m!BÎØäs$¡ŸÝ`cÐ7M‡Vè½"‘;ÚÅî9ACÞpCPžýÈV ¸²ªsëvCR8oE"¥|ì iÏqes‹¼ºA-©òË=Ñ£¡•Õq(ÊT£Ëèšb·­Z¼ö$ú|TD’{»ùÁ»ãòìÂ}ùòÓ¤hÁî´ñGZ¢PøÑ‘hÏŒES6¯ƒ ’f¾(Ê‚†ç¼ÎXC‰ÆŽÑjîêUÂCo­¼Ö;YX&£óFkÊ`í-O¿î—§]_»mz7X:”s‰D´elÅÖøÙ[BÙ û \Ö×lÓR·¶ôýäxû,&DÎ?ÃYŽž¦_í¦Á'®EG#ˆ}ÛH‚­EÞéA2g;8Åß¾fxI{Èe.T2#3þ+CéÙ|×µM>öfÍœîwÎéCÁ(Œk‘cY¶’ZúßéñQÇš¦’bñoémJêbí™>!·1“=JtƒxQJfÂTmÓÔØJK¼WñÔÓé…wx˜MN䃵i²3Zèù³ïXŸÚaÌæÐ(®ÄùœFvF‹ð›UkÐEµ¯4b"‡—_Î.­µð[B’‘T"&ã„Ãf]¤|-Sæ÷Ž3.³[¶l¹àžï¦¼üòò׳(Sæ÷’dÞ6R üŽÂ²G9B65³Àñ³/LXïšÞ—lì–Önó ,,%F9¬°µ3 õÇ\î«jö—nkeíß>Ðþ¾ë‘KÏ*¶ x.%ó6ãt]¥“’ÒC/Û¬û®UüMÕO?‹j«:NN=6àŠsÓ2h7ëBÊj¦¤êòê†Lczþ €ílU¯i{ìÍŒ­U5‰|‰j¨?ï^epœ½kR Z+ˆ^Ÿî~Á»¹E^Ý´Ì ±HónÊéå,Í’³ÙLZ•K@1½…Z{¨ÉÔŠùÌ`zÖgiN'„s£ÔÉ„«lÁêì±læ¾u¨m{cáÑÍ_­Ÿ½±X0].²(Ó~ðH²üÕÔèÕá“RèõtC5_h±ñä\ÈÅ= mˆÇ«jÇÃÙþ)çη‚êòk«å'_à7TâÆ¹$D„ÒÔ¹®X"œy™8úZ.–oØ(×WiØWWÊ«>VÛ]rŽ÷u6jCmnK[6àž».÷O‰)‘Ç7l•ŸƒË¸«.Wî_?òØþêˆKÊItÔ¯l©¢~~ÔxœŠ†tJ(â‘7W7«J¿>èÚÛúèµ3"oèˆËÑ~LÒ*粪 ¦q¼_65P9rúXž[éVÆFSvÑFŸ5µªlXVOÕµU™nZ-tÕ^ ØøÕA_Y_?zD{o¼RÉSë5L˜¾¨žó#08ÎvM —4Ú¬ÚT9}¢ÆâÂácS•[ÜSuÆX–öÆa¯×Yw)ëîúko €  …‚摇_ß­ö¤Ø—Ž*m‡¬›®"êk.VÒüªßþW×/“õ$â×Þ8n[Ý4÷ò­„pKÇ™$cµÁÌå óãCµŸÜÜ›,:öÄB›6`Ÿ˜Û\éHf¿kξ7ái^ë©¥k\‡H˜’™%ây5ßÿz¾ÍCeg«] ôpwáº;gÿF¦F[ŠUŒGinwÂ…òƒ…¿øçb¦˜&—‘r(“ QœŒY—™“è I‘ K¶`H„šMfx¯OȈ¤¤¶¼øÿ¯ ÉDß»÷Ó= [-~óÆM:ŒÅÞ±ò,Sæ÷…ò‡»L™÷ˆ`0X•)séÑ.«™>×Ñ’Ê䳆Ó5WÊC z;¢RŒïœ)õåL[¿T£˜sv”•p:¾)T%púªº™m€½=T£_Ù?êè9­Ïl^©³‘dr‚©:‘­«0>O.°LW4žåþâGtZ±5ù16L}&¾º!3/H hÏ“¼0û·Èã¶*.»µë '°Ú5Íɇ‚i‰€ú Kñó£NP!Ÿ y]èíáæŽËsMÖîTC7jï£Z4`(K«Ìq¦NÓŘni&:켬À…ÀÔq¼¯Ùß7â[¸Š°¯/œ.rÞ1okUq¢«rëì¡ö*ê5zâæaìØ±>+ò«KgC²¿Ñ&eÆ&ÍOí0ú"—Ó%U£…‰Ðz—4*qÞO7uïŸö$Ø šÀ4˜MTÒF,Ê<6õq÷!ÀøO’¿Úê#úÿz?×ìÕÅhðŠü‘SÖƒ[GO^8ô(漩!¿l©‘7c™¹[÷FoյѥƊUÕÓ—Wæ~~¬þߎÔo fÑ í€ÐÛ®„Щ>*wG¶ºNÌ2t ΂#äzv¦·TuÁ ÏCNi^ÿüK•bE^9 œÊ}áÃL´ÆòrUTF¥m3®vƒ¶«$›#d~†& Ž!Ap“4å(Ž@¾(góE‡Jöè¹>À¿1G{„¯üÈ- SÖuÏåúÞ/×W_lZ¹2e~O)+™2eÞ êëë+++׳(Sæ]&™³ ç¨YÏŸe‘Æ‹T–# ,Rdtæa9O*M¶‘kܧ‚]…¶¹f¶¥w!€ãä q§×6·o'§ÆôŸ¶ýøçfÌ /½–Lësì/5#YÚR“B÷ÅÇë~ÝS‹LÿËûGîÜûèu)Ó°Úë¬%ŽuBJÚÜæRäñŠZÝe·¾ùŸ|]({ymnÏô”Â^yhúL}Éîù·wÌ £»‡ÔšW¬õVmU{…<Õ›{íé¸37êV'`ܪ>ŒÖôQ-†há”/{Š)Æ `ËÍ(s·ÅfÉ-J¯ˆ‹]®Î"çj*ž(²î~ï\YFÉ þ¿?õPÓ¹o®v^?”·S~[žÑ‹k« (SYqFrþ¤oÍ‘˜K/*Ü¢!Z7RÉNL6£»Ï3Ûyø±!eãM‹šH âI¢% S)´ë)Ö5ª'G)WÙ¬€ˆuoá¬*ò>¤ÀÒ9ާ9Ž“„9W3§ÏƒVâi2i_q1s¸Žöˆ_øwßÞSl³[==Œê+ÍÖjk˜Ó0y ¹åge.YÊJ¦L™÷ˆl6[ú/s‰Ñ=ḡî|uŠ‹ ]+£¼Ä9)`A!¨°¨Øö™5Ï×ÖÌ|dmöµn+™åÅb¼h÷ÀŒASºšç='Oº®YEÎÚ@H»Ñen®Î¤xFˆ„éäÇ7©8."†M¯ŽX Š"뽌¡°ùCòK÷Xy‰ùò÷l€Ðû®ÓI·5˜ñÌ¢de>Hß×Ñw$éÎU^µ™øÄ½<ø#ëè),•7uhÊõyO°³ ; ©D O»›}¥³Uq2gûþÑðÇWMfdúÄx˜Ò‹˜#îÒá„ÿ¹ášë*‡¤”¼¹"¿d6—ß»s„Ü&ŒïË_”£¯°÷%¥¡eþ¥]/–„ íe¶®¶¶®ÆOî§~úûàctï±i%9Jæ&]VA°Û´à ™’ù‡ a¢pFe™†^˜‰ H!ŽsÿUãDšùÖNï_šÜ˜Úæýó÷I­‹îa6bYÉ”¹d)ÇÉ”)S¦L™ßîiþC›Æ.ØÍCäÁ9÷s#"Mîìz‘!¯z‹?¡6ŽÊk×°N"²ÆXPOÑ+Iv=9A7%mëH¯mL½x4øìçÆ:Àzä-Ô0V¯±U*#ÿü¾`’ÑüMtzi‹2#[¦uj”¾w»¶uñàà̵ë©é“V°Ö&Xe6 1üðhoïàõÜ •™˜á œç×ÃbÖb ¹‰–¨²%²wá…dƒ-GþÈj°¬Ìø®á«¯IŠÔ9¼},€"vÔCT@å](7ÄÖ‰ ÿ/EùÌmã+bDZͧ£«Wä>Š­'^³­¯æ5š€¬Œ}¤ ÑÜ3ݶ+î›{RÉSŠ ¥i!ÌÄb\tò†ÚÉÿûjå†Î¼´I•srÌKoâzHQ|þMØÜ®~û¹(D €×èž>ãS×5ED‚¤À¨÷´ô¥œZuwSog»²¢õ á<  ÐÖ·ÝåŽØWÕ,U ©¯Ð§’ôHÁ±*º´[2'þËU¼uÄï,…—zªl"T5“ÏöV—¨¿^|xÚ¥ùˆ+±d —Q%Ͷ7©` GóMŽÞóÌ Îr-c°¦RB"EųôÝ×É’Œ>y|ïeö“×êG{Øç÷£Í+•5cv;É»üÙ@Ghú í®5¦G—œº–K ¶Ê˜j›&«‚æ…¿Ag#Éä¯:_ï§,Ãhö(›ÛõÎÖEß©‚D¼€@e%Sæ’¥¬dÊ”y/(Gü—¹ôHf…Á,¹lðÃ<™vñš’§3ŽPFÀrpØñòöIŽ×ó'¦ÍÐ ½ÁOjÉQ·5Óý*#ÌÐÑùБÓoÞ4óʉÀ£G\Ø4·T)[Z³tÈ["_i®Ê­æ¬¢r“Äb“H³[£¥ÕõÊÇ„»®Îà„øu!åPf™ßÄÎ6Q,9¤Ý½~æÉ7܃2íõx¿{*`Þ¹"²Oú„ì®.,œÉ UÒØá\ðå™Èu¡ØZÇD¥¢ÉùðËþÍMòêÆEkg\Ák÷5=Þ[cedUÐEd=8 %…~áh0^ î»Ý¾JrHq^ $ÊQ l°º©0<#~qø®Ïw¦ ¨“&P=ÓâQ‡÷ØÒÛÑü$OPõWoMGŒ„ÂéZ¯~,îX[%g äKÝâGt;mþùýŽš¨»s…¢”Q$…žN1ÛôdNl© Ž ¸†„ŧRè—Ý͈€ëì3ƒ-µb>ÌeVÔçÅî9Mí<®jg§‹T–Fˆˆ¨%:â“ËYf"~ýcüÁwûºE›þ’BÿÓ®Ê?¹jÔï”@`µM5ñŸ¬¸-Lߺjæg‡œ0‘µ¹ýŒç¬¤ÌØÂpîÝ{“0öRª­šs{˜sæ;ÛµŒH¢kX¸v 2 –v°­—1²Ó{÷ïÿ `…Á!ý¡çr«WÙ;ÛX:Di¬‹sØXÎ÷²”¦ ÖÍygT‡.;¼s½$SýcüC{DS×›Ýò接f §†Éõ+—QteÊ\”•L™2ï³ÿe³2— ]ãö›Ï÷¬²%&ê•(°ÄhÀ1 8p~Už¿šIŒ»ˆì41Û*É™)Ã~95##Ȥ– ’B¿xÄ/ ªJº —âYt`*ØVí«.žœ=ƒêiò¬d͉ðÚôO‡>npœëlWÃ[|”À†ÚW“9Û|õ’yvb K=}00¢s†$¥óÌýuÝßxŠlß:×3•#Úô’Ê $}‡^‚DkÙ?lYT¥juc®1*õÛ¾ó«È]›Ò·.ž‰–è$&MPÁëºAO8>ä{ì¨ûþÎLëæEj¬žIËîÖÎä¹§}ä¦Z¾õ´ùù»²E…"uýW»‰{ƒRí_—ÌéÕÅ.«œ<¬Ö‚‡q[cC(– wCK%1Æ¹ÖÆp¼/dûÅnpºœ5uþv{»z›º§ÏгþÓŸµJô$étŒÒe !Y—si€7s*͉ØHšjðÁÕ•ÚÊŠ™#ÝHוQ¦,ëÑÃÎF¯6Ö"Ùï’æç& 擎;:¹)J ýW¿¨þʵã~çœøIdøz5|KKQU=Õ Jæm/ŒºîÙ”?;™›ÑŠ ã·Ã²ð¤¼Å5øF¶þ¶À¡%‡TÌ 8wωÁµÒ·N°:A¼F ïÎãôŸn÷'°X¥±¶¦EeTô£ú'nN¬ª¡k+ÄÁIê¡I ­¯¢†ç %µLž=²”F6»—5NKõè4‹.\1S’©þq᡽6K×›\¥ÍZgËò£zèô›T/-Sæ÷޲’)Sæ½ ¾¾¾œ¸¬Ì%F×÷ámçL…¼C1%d¨Ž…E#¸Pq‹ÙZ™AbºÇläi\0¸Z£{”éWéƒS¯6ÖïØ”:˜išêB¾:1ek:¼?3®p­µØ]å6=°Ü‰-À¦È[;6zÞýù¨ÒÙðƒï»™Tö§öúo_3§O$™èãüÞ)qká4ýtªc%yzœéê÷\~f ñ ¹·?üVÆù¾öô}í}Ë:5€È«³ÁØsÊyy3»¡ 3XÏ*’N¬êç5¹²F:£%…~ñDx:OýÍM#:#vìëpؘáíB Ø":hTÇþp•ÿÿ;îýÖÖµwé»âµýEøà&‰Fs¶2©}CÀüî³ì÷Þg3”Ò_ì‰ £$¦¿x“©&â¹ÒºãzïžãE°¤ñqî²Õ>,©tëµ>SŽ]vÓtà7Y4¬«ùIÊî„|éÉÍí<—¬û@ãhЫí¯w2j˜ÏMdÅ—Æ|© Ǻ¦´ÏCŽöÃÉ®i±»kS&–÷ôyR¸%(·Täü΢È[MA²¥25¿(I¡þ♊?Ý1éwÉ Édÿ¸mÿ íO¶OÜrJ7Uä ØÌž¸×dýô2ej°e^š¾L69$›œlq2f)öV$dÄHÀœ¤Š°Z}×~åú›•g-Dkzâ8sg§-’?¹ð´«šXÒeøãÆÛÝ•NiMd²ù~Fqíïõ>zØ·y-Scz©1Š´TGq4Á×Éü¹}·TS-áX¿óá½6Ë0V8¥Ííê¹4Ì<…âœ{a÷4ù²wY™K–²’)Sæ=¢l)s)14åÙtñ¼®e.Ñ-:LÇô ge Î⢽öYP’ ÛÌÇT’í![õŽO˜Õ5ÑOFNÏFÌ7rSG np¸íŒySÝHÿ|Ê»ªÚ#Nv³ü2',Àe3@ä­ö*ýµÃÎ+/Ëuvð¿¿£‘\.‘$fÐä4õýW¸–0±¹ÃØÚ‘÷yˆ¨W®‹ä+]Ä7žf(;…÷37nT%™ì9äÖò…-kKwl˜¸˜EÕUÛVð>ÛcØ‚tÀÀç·Ôj{†¹•UÄñaÿ{>¸*}ûúdFw¿Zh½Úv¼¬fÚ‰ì¢ º¨gÕ…¦D؃™gßPKŠóŠ$Ÿ%¥ìè¸òw/ÚZÃxk§58¬ÇõXW1Üç®.TV$ŸÅøçŸÿöƒ(T9I]·ÊýÖ‘ØdÌ@´>d§F´îé1‚"k¢l]½ÃëHÕgJ÷^]yóÏP‘{Å%à5Æ ¡k\jm(WDŸlq0ê–ú‘-õPR™¸'‹üˆ$®ÙäšÈŸP,ìÚ¼¢tÇú±’BOgm{ûý 9ൡ ÖÛÒK¦þü©ðWoŽÏš­)êkO{>±Mþì “³|| h÷‘ ‹Ób´Žšu-›ÍTVÒ9IçŠ[ „^ÉÖ?Yò;c2?«!Ü´f§T;©6 3ûr‘Ž)?“ã™[`ádžÕ7EðØB5оÕùÚgÞåÙbA6ª-ÞÊ*Ïþñš­­Z[¿R]ò4:“ÇUá9[ʺ6éל‰4ðhÄgzãMµ7¦>‘7·ÊÿøÉâüØî¹-4ÔW[_ºKûæëtOŠ÷âø!nK»þµ;'¿òCûêú‹ªÚNP´Ë¢Œ[@=}À·±Qº~ÅÓ¤‰ÓCIÿ¡FŒñ_BI‡×Ûú´¼JƘ­¶ÃS2xnbÅAåjG¼—’öOØ£frxR*í_}ÒñGMó雿ê®ìIøÐöO÷¯USÖ›qò¥cÐV¹öÿµVzf”ßì::Ît%ˆ¦u×ݼå ìz­xÍŠˆØâ%?Œ¼†TBàsáB‰ x©Š«Csõ.Z¹£¾ûõ±º¼V¿±rP`µ•Õñ•ÕKV×u„Ü#Õ—,õ%„+bÌŽuÉÚP¦6”)©Ì Ç$Ë>ÛÓà·+#™£=äÛç¼ïžzÝÕÇmoUð±~g®ÄA"’ܾ ×;­¡+³ÌÖ–¤¸2zò´üô]¿*_9ã“IcÕ©§Ø(¥~©¦Q\4I¡^xËóz?ÑèT>¶Iël>gþ·sORí52€–)óûLYÉ”)ó^PŽø/s‰Ñ5A¯mºˆ½;†Ù§ÚvPDÎ Ðù²ç”ý~"{z@Ü?`[Ó¨¸Ãm¤rŒ‡3µ Bìòäêb<­@·h¶d ™á¦@¡ò¢o˜úáϸ-+µµ–(¼}1lÌÙ4DÞìl”ŸÜíüÜíIèì F­J‡äuÛ:Û…ÊtO ëçBnê«­mVø:÷Ê)åŸÉΙ¸¨’¤3À‰UΦ33p»6íÒ%ò­ci§>ã1ÆØÂî« (LSêÃB½ƒìe\€PR21`°Ç3ГDÔêÿ×½¶&¯\+XÝ ¢P5žÙr­™•|;ûýø˜e©ºšÉ}jGŽ“%L'R¿ïjÚí¤§ù¯ïÚ­¿yœ¯¯)¬Þè¥õ΀)§“™ ÅŒ–FhÒß3CN¡*'Œ —$r¼ò²š—;£HZÙV54œñ?ÖµúþÖc³!»vWÕ%¯[MO§ùñóÌ >ž ´F muJÀ§½Þ_½yðÉ×í5Ô¿ïó26>3aqf`H~å´rßVógÝ®½Ó$AQMÕ»Í1…Û¢˜Ìá¯~lÍɳo5oº&R‚—¿€Z®ã½EO®ºÙ¹(ÙÝ}@»îö%Ò]WÑÎîÑ¢…£ÄÌóc.H"oÞ~·ãÀ+¹“ytýFJV š‰}‚¼¢MèðŒO§…c#öNy65#¹ÙlAsLBlAäºR>ËÄMŽQ˜Ó0Þ݃¤©jßV|§cœ-–Ël”ùAYÉ”)óQŽø/sÉ04)†È]¸|øP8 LKô\(ÑÌ:p¡D8Dë|…hfysˆ i÷¯Ï^?Z"œqKóã.3QdüJL³!1Aÿb·qóºªz¯Å(R+€È[­ÚŠZÔ7Dü`'¹uµÙÙŽ •1ÛÏH¨ºJ94 Mu•¥’Æ660ûú¬„.T%<€q¾DÆÙÑŸ‚纱4ê‰[Ø44°ðv’Ÿ¸Ó„šýËT”_&ðÕÖ¤©Ñ;㫪2ó©ìLfÿ@„`Œñu¹TŒçÉÓd<ÜÇÖŒ@­¨Ržh±Pˆ©ýc<üàu¡É«ÿý5ñZwú/š©€×HdØ¿ü®X×îIõç$âåLÃ_o²„ïþ¬ô7Ñ> r7“R_>IüÛ縌"Ý}8|Pé’"$–)ß q[3oi;Ög~É_áÑ@:0ã£D3xªê¸¡ºH^Rè)ç£{¢Ía¥µ"çwIxün[éJ™ösf)3£?¼Ïf*ÊÇ·~;ÌB EÂe/{—•¹”)+™2eÞ Êÿe.%ƦÙÕuÒ…û-Ɔsq²"h‚håt…ÿ¼:HRèGvWÐõonÆQ£-h¬ºÕ »ž,1¾ÔÓÍΠ ÏJ±…'¡x¶µÕü‰øÏCÌšzdDÙQeXlAVa°…‡œü`Yq¦UËÄqÞÒeãĸÓÍëN^€¨_A}ö­9yCäÍcÝìÉȱ#ãõðƒgè÷Ýáó–ŒWĈ)8ù̸¹ %´ÅØHuizÔR‹"ׯοÔåµtîØ0><íþ·‚ë\éoÿ2|SGÉßNð¤ø?¥ò²±¹¥ßüTªÌ¬L€4àt—"D|Eu»R½½\ñÖÏÀHÏÊOí  2;ÕKîíæOõ§[Cø3w:L®´®A‹Fó%E€TFÖôVÖ¥&†ˆìDÑÕ¨[ÒÉFöiã”< ­#`­.MÔòú÷ ¿r‘:!{?î]>´cVÌììo¾³±‚%y´°™Ë©§G1)Ú^ëÇ»ºmX×»gÈ]ýô•MøÕ“ùíM37lÆÓ)ú?(?Vpü|’4Ts¯p]Û¤“¦lAnÓLz¥â±Õ`áUµ‹JÊØ8-Ï÷®¼ O)ëÝ{×Dæl;|Ïq¹yÈ7&+¬z2f|©£› Ï™ÎxŒk!-ì) Ÿ¿%óè˾öZûꆬf´¥ø)iœ°ñ¤“7s"§¯ª›iŒäúc®Gák[fÖNïÓÛKÉ¿îâL}üŠLgó;þŠ-¸ÃÊ- h¸ì]VæR¦¬dÊ”y([cÊ\2œ£Öµ\ ÿ2”¦Î~F¯0XÕ h¬$}®Q’BêótÅy9軩-/RsàÀZøp&k”@ßw+`NeQl6-$Y¬„YÕ@Œ¥ë&°¬æk†JЦó0™-Y&ºbEc¨À°5¤ô³Ù"yåª4<õ<ùú„½º 櫾”ºÁm9DôÎФÀ6ûqo ÆE!Ž!Ë|½_C$qÅ:KäÌ ÇŒ(ÓS3UÃy£Þ£…C(¥:Ž%ˆCîl0‚LV`µû/}t_4â.ú«Áø¬ÜeçÂÇe{sþ±B¨ÊºûÀžµxzÌOÐnOÞ8O‹.‡3ê“&KËïšdÔ°P•2÷.;ãó·fø²='1ÛV%rd󓈛¦*jÌ9S¤Àé«j“áÜtN<>ézñ”»'–0õ®õÆŠt6/ã2÷›€ˆywÊ2e.IÊJ¦L™2eʼ†&øËù »–I*°InFc…M&”¥³ìcƒÞÇŽ¸ï_“¹ñrùÕ&*æTà4Ä%±OGÌݪ“ŒEÑ4I„y¬Q–n!ÊĨ`Ђ’ñ1¹¥Òøíÿì¯ ‰øÖ÷¬/~µËØy”غŽìlŸ34F_ò$2\À­t¶â]ýúÞ^Ǽ’‰g„ÖÐ"ýÊ‚Q’ÛšHsE18A¤ÎŠšÍjUbÜAi„5©¾¤½‰Bؽ@Ûì>¹©!ïwI%…„ºbì@ÎZ¿FŠxå?¸B¬ÃÛbïš:xŠy~?ÓV­µ5è¯ þ^ò5úİ!£ÑÒèöËÇ ¤± É9š±xÃ%ÁÐ1÷¡Mc?Ú]q׺é€{.¯—ȱìÅTá)es°ÿÙñ¶|‰O™ÍŸŒ·άëT"zKCJ2—ß2Á5|ÚÑù‡òJéúË”þ Ç3û*îÝ:Uá0I™–‘!‚nkî†K2`bC›Š©=1ó®Ëô׳‘­z¾o¤nSÍÐEÎÿ<œ&×u\¸RM™2¿¿”•L™2ïåˆÿ2— cÓLgÃEå-È´‡×@`µá v\I‡ÇÌÙ­‚B:¹·ŸOË&7#ÙwúR&ûÁkŠ SÑg2~?±Wm¥) HL!L`'T13EX` N§4Š¥ìõÉ„)MæÜMþž)ßÕ®±³grô4ùÆQôµO|â>ºoÐúÎN½ý0ý¾›PÀ"otÖIOïó|ö¦©PcÃìÆ‰4»Ð³©êh´Ç²dÀ3#ò¸¡†úþKD]„›/µž&‚£tuÔŠUO,¨#6Áײ¦æ.Ù¤&³Â/{mÿxgeóÌ­-żÊmŒÈ6›ãdÉaÓSÑ`!I&ú†é݇¨©rëj³ª…Õ~µËd=®µq7'?|¸qûªìßW?üª¿Ð;mÊ“…5›ê *j…DñŒ5,“N;CQÆæÒŠs[vKÊ`‹Üb¦?3m„¸›hm1»PDÁTòÚj~t·á}$¾YtÆÖ‰]iÎw$­à­Þen;´â…ÜS{ÉÇ%ÁÐ$Ï“¬µ¹)¿º©¯vîêA|Kñù£ž+×·ÕÉ““Ê*$³B¢BêO£¦ n(ƒ¦¸Ä+ZJ¥G²±rÔCø:è’OÅOOÔ†YMð+Ïž ¿ÝØ\ø0.Ö«ª¤±ƒ3Þi4„¾Òý ¿Õ»p93EçñœýÓ¾Á’Žà¬<p…–5Æ"››@á1Ù9«±²“™o¾PóÀ)“““Ór—åÔã0Þ=€…1Æ`Y[M^+ê—¿ÔÚ÷úXí¡8ošœŽtT\T½¦eÀÖlκ2e.yÊJ¦L™÷ˆrÄ™KƒS£ÔºÖ󹋒Ƃ¥&°7–©Ê0ÜU´ª¼Å¦-›fÐfVUj5¤5`«PA¡ƒÒDžGª禀åýU k Z¥õ&F¢’·ÖUT+'•h1¾ðºO½(6¸N–ˆêì ¿b‡|ÌüËÿ [«è÷í0ë*¤à°}hÊV)no'^Ò§’ô¬’)È´S8cY’JÐ5_û”º·×»ª +1ÿëZ}`ŒªRN/5¦Wh}KÒLKÈ5À®¨ÕFÆ¢ˆŽ==Þ?Ù>‰ ÿ/EVø´>¯kL½xª‚CÃ2 ÚÌÏ y«³Uíl©„ÆGáÆt_Ýaú\0dz¯ª¿£`#6»2œðÔÒZä IDATÒ7m±>01ýËAû›¡wR)y6TzHu|8qK~—düÿìwxÕ¹ðß™ÙéÛ»V½wKr·åƈÁÆôjœ@ $¹! $¹ÉMá¦Ü4R @Ø¡…f:Œ ¶Ü›ldIVYõÕ®¶÷2³3çûceY–e|÷»ß…ìïÙGÏœÙ3§ÌŽvÏ{Þ–®aÚTÉ8¤À$Hø1 )‹L²—‘…¨¶ ìj6ØåU¬¬˜ G‰”‚Qôûu6—‘ ö…ÌÏnjÐyë,çÜùÖz_›¢7©¨ÊÁ»½š'cÞèÖùÍÜ>âµÌ\ç7ÄZ¯øêã¨ÓG¨ônSa8¶ 8´·“ZhEë¹^yŸ6ðÚ!©T+hŠäÙ½\+H9LðêÜO -dzÛ©+æ#¥j7‘‰XÕ| ST¯KÄ©››¼oÖ©7†j¬þ-®‚_N®Öí7Þ\5Ì2”'>U¹‘BÌ!©zž¢O%â@ÅR”3 ¤ tªìõ“cÂ"J•"úæ š+ªR¥J#‡ùZµ91jÐÀ§˜[çA–ûܬAì6•p‰Q† Y[zÌý~þâŠAŽ>~"çƒrètã<›µ.ËòEæI2{÷îíí6Yr–,ÿº”••-Z´èVÎzügùb`¦ëòS<ûq»ÝñKRÑuÊ©{«½Â›¢•zúå®*Ç*r£‘À¨A+ú1å CÉ«¨ÐL˜Å:Nùõ>Aº±à$=)Y¡ ™0 :É›¹@ÿ˜ªL#G|"kT\ƒ¥Š=#L1–Ælhb â½ý¼A›^>wªv¥´ˆøý}hëNiû ùÇ›ÙkÁ¢ß–C–[õɦªô‡vdw•¡•g8ë€qø$Q“ƒxF‹L(70µ­^”Øô¶*gIÉ<‹? NéÎ…^ÜP–š*Þô95`ÒÆOôêØU¬u•%Ë1âuË‚¤uˆàó…óo2Ï¡òÂùH?ñëgÒ8Ò±X(%qió7û î4û-&)ß¹H³íPüñ·Řo(ˆõ$´§‡•‹+îˆu~qئ‹™¹0ÒæaÞq5.¥è¤/Mùu³K½ À}X¨ËÃ=ËÊ‚­Ý´5‡HQôŠœàÛùQPÍ0 ׇŠ5î—;*üÜŠÒ$‰ÝýÔ;èj+f³1NÖªI.,ìmSð3fÃ؇ÈwP€á©&ßzót.<Ä­õAĽíü5‹™¬2¥ù(‘–ÏKΩ»Üĵ•m-ȽfFòí65N‘…U¹¬P® ž%öøùpN~H¢y©á‘ÏO3– Öçã=qj^Qø†¦Þ Qa¹e´òŽ)Ñ‹÷ú ÷Øe…6!‚–ãã +3Æñ˜žO†[bE¬€2±‚žʵ)’‹Y "O 3ÞòÉ~S›Ë0¦‚É'Ä+­Öæ‚ÔUMéÁ˜ñÀ ¢‰jú¶%19)ì;å±{©Õ*„)ÁóGKæægN-mZb ìÌ^mÉ.ËòçŸK21¦¦¦æ`4Y²|Žèèè€O.Ìdµ1Y¾ »ùVb "–PDŠpœ ëcÇ:9ŒÀKµ’Y•6ð’+¦¨6'ªr‚zyEÐD…ôÔY_“Ý£ªY•ÑÉb ÈC€AJ“OÇÜN¾\C¦¥PÇ*jUiÜÖ¬ Â&“¤Àè€ë?_Ómh¾`[žÃ.[A”¢ÇÞL¾¸›¬í§zâÂÑÓšÙ•À0g`|'ÛSTçŽëdÜ^ìÅìºEÇH•è r&mÜSÓr;”æÍJŒìÐ]öœŽº¤Ê¦œÇÎÃ_öšX9úÚ>ܽjöuêÜ) p•É#q „`TAO3~–"âQZ„ÃëÊ5Ïoóüc;qý jihæEOHiÒDc)dÐÐMõ‰»0¬å$U_"ç‰ÄþAñýí£8Cuh ÖX–Ë̪%òX³×ürмî&¨Îç;%çP§öÆë"ŒuF=Ë*ÖQJÍÔ˜ŠTlé®jÒ{ërF®©î:>`~z—±­7F*9ÚHj¹$'ÒX–xdaÔ#ݾÊ3ažíh¬…Î}mŠËÁÐXÜ^øÍséõIœå/©týá}õÒRøÚš³k÷Šbñ©7¸åó€gQiaš2X› –à`ÈÂyÕ!89„.m4:’à”« ‹b[@IÀêÈw=*S0/Ÿ‹XéPçŠ%=#ÊgŽê‰ E¡ëÔïdÊ5Ü­YápÛøpD à¤ÏËŠÏv4:ŽS9T !0R©Bu!äc´‹õ¡Jn˜£Sqáì'd"pgR‘’°±ˆ "E†C\”ßÚ%Žù•@kb0RÒr‰|C “ †a0hV™¯Ä§ú„!¤j.gnkÏíó_RëøtÊsyV}V!“å Î?—d2b †aGýP–,Ÿ fÏž½fÍš7ß|ó“K2Y²|Þ‰%ðS}Ä©E×VU•³êdƒiU2ZT [·`dr}$ça1U¹T^µÍÁQ¯$?Ö½h¹¬uuŸo  ßc`”‰òNí]¦¬D2ÍÒÃj2­ ö9e³ZöM®6ßd¢{[©>êRýpmÏ…|]2ðÖTý¾ž|I¬+”iå'?äÕ4µ¼BÞÕ…»} ³!=%ù3;ë{cÕ/ ‹ÍÉŽ!~©6>%ÛäÜ<0·d Uà7½«½wÝø’2Û&”8̧¦cvdiÎKîm×ÀÚæqˆ=ý J©µ5œ’‡“œÂØ~ºlãÜöó/gÆOÚmÒoX@—[w¤ÿ±=9äà»|r˜\· b –ŒÄX–iªKV”¤Ÿzƒé)þí !’2½j·&||ðžj…ŽN† éʜ¥‘ò¼0Ϥ…2h Bðò"¹‡Á’‹Øö-lN—¬-Ãl¤k”£ƒq²Ö4T¬{©½B)yqOBÁќծ¨Œ,­wÀkûrÊõòWWº –Þ} ú|L÷Ók‚‡Û8ز[¿m¯÷îu\Eqàgïkß;¡ª2Ãâ†sž žE9zÙí#2q\IZŽÛr†N¯\„ª½r{¯¢å¤ ^Ü(µHæ=àaü˜²¾‚ÈtkØ€ãy¬P$e"üók†@BbF9±4""JS=1•lXˆd$‡ÂYÆd¡BÈ×¢D* Â[ýF·D‰ê@ºwe-BK§ÆmÙT+n- @ aÀpLG¢ÒÅþŽ´œFźhŽ&nÒÆ>t ÌI88Zn+¯©ëäÈäì âƒ6r¸_<œf–ºœ!Õ³ çЧ&ð™–*³tÚì0ª³’L–/8ŸÔOæèÑ£·Þ~'þÉÒgÉòÅF–å§7ÿõS¹ïg=þ³|xw×éÅï[¿7š¤–ñå )!e(IRTk@‰aФi!>×6*té›s<<êp™ UæY¿’ãÏcà£JCäPÎ)ç#MÓ² )&I––•‚"N²¦9 Ä’tú9³.Á‘I.zs'¶z ÅsÌ0ðOçÅs°ñZ¼ÛŽZŽ$ÖÏUl>¤—I Ãö£Ö_’î‹#ÆâàrcÛÛ°‹ëå¶^xqVWï— ]Ê9#¢ÿVuO§ ©*†a؇Ç4Ëf…’2ûVxæ,ÎQBM3w€}ó´²L-.(‹7–ù3'ûü•ÕÑ „ ÅM’9"UHóEm£¹õ6Ç”pš¥ÄÐ(¶aIœ£E첋eEòÉöÄú¦d‡Çôð‹ª¹ÜÈÄèšœD"És莫’G:ÈwZ°æúØý‹ºíãQW骊˜ürÜóÒòT·‚àôU&Ìf¥æ:ÉëÃÊzQEÖÍà‰•E#h´ ‰Á’*–$(@’¨ŽŒ>qŒ #kánšá+·¹]A~Û)†Õ÷цYÕãæˆ¯lãÌlê²%äËåqw Ó‘NýÞ…&>õ7/?èCºÅ#{;tëšÏy–Ìö£×_€¸ªŠö‡°p"£Ù(,Ÿ±Ö݇ï>Jìì@ž”*Q¤;iÀñ%³1½…q‹šö¤éŸIF ÃSB ÆS€X QÄ’q“Éè€W¿Ò:êH¨ RåæY֠Ƽ™u –YZj˜&P²N!ð„4’b§œï÷qñÕÕ10 D5ô{i®Çç[ºÜò­*yÛp1’ᦪñh<+]Òè{>]H_Ú¥h®‰]ÕÞ×e:`/¾eÑH&ÃÒ?%õª¬$“å ΧðøÇq\’²ù•²dÑÑ‘^é<²ÿY>×lÙ®@+*%7¾6Š%= †a}^îÐ_¢N›UécBà UVÿšúÈã;K/*âÆW]úÎaõÛÝÊ›ý*VX)ÄÒ1‘T‘bdJGÌõåÓHJ2Q“çO Jéˆ8òŘöS( 9úø¾N}C)¼~´ÈHÄ £Ö’;È”±ÿtv<MõXnì>A"½~!±å8}hË.}‰:ýÕÿ"jlÐ1 ×-–ÛzÑâ™ð[á3Çu’¢]Ždœ—å‰÷i[:̃ÆòËu:ò¼Ͱ¯C‡$yÕŒ`‰ílŒæÖ^®©,Φ£7­ÈÓ.¤:8:µ¢|àåÎJ#éÏîÇ“ …(ž ÷âîøcßÏÌkª'–Î×üé©‚(¡6’–ôÆwLåûÓ—ÍeKò<‹ôf¾Ç÷u$1,ÕXé(5yí^ãQW>Ðð• q¥‹²(öti+si·“­*wÆrlƒPXH ò¬¦áÅþY+LÝ®öð]O"U\m)QmIœöÈ€a#–Xƒ—Èò#{M(^”ŸÄ"–ÀÞma yî ñH;qõD˜J•ÿÒ‹RŽ1jouÝʸÙy³M•”cÒ`'B*ÏÉ®K`¾´Å"+ð´–ƒ˜€Œ šÒų¨©Vjª•.[’>ü‘â¥}¸V…®½8žÑäø#®*¤"C¢Ê HU0ÞrþœCsx`ÍO‹À©‘E9ŠÓKõ½z:Ȫ4 Ã@"]áÂQ}¥yz+b驹’|¦]ƒ–óO¥B”Ú¬—ÚÀ„ $‹Ï%†ÿ¾ËüªÝ*$…ÕEÁ>R=ñ_|ÚØeY×±,Y> Yÿ,ŸkZ;Yg¸vE¼å$ßrJ‹áÄÞa¦\jl)­RZTá[;wš ¼ö°"#ÆÄ“äXCÌwWŒ˜´ñèERI"4œ+Éœì7Ìd=U! Eød–ÀÀÌøÜ@-Œ/ûx6=£Þh-ÑsÂ’š‘obÈ£\RÒ¾#P+KP¡øø Æâ‹c&ø/lE´ÅrÚGaê„öÈ ïâË¢¶ÐYµ/ö•+#ùT*<{ ËvëEîÉ"t–,ÿš|:Iý³˜†Y²d¹YmL–Ï/OîæªÌÐrRiPKíCŠk–…Ö-û$Æ“dϨæ`Ÿpì’:ÆœL™pÆ9+ŽÉÄÔü˜û{x]%;­C£”!™ÈS%1ŸRQ ‹‰¡ÌŽ|\d ͳ¡h ̪Ȏ^s¥Y±BÛþ¾§I¨Rs6žX,ÐÝ@ï¶£ «±AŽ^.+@ehé\p¸àoïù'ºÜÌŠÄË{urÄ¿xŠ ·Î¼Ïg¼´Àn`ƒ£ªÂU•¹çX+|à¨Ç0¸yç{Gõ}eIîÔˆÕ'zuOÑ|ïÒ±)bLß»¶!°h4c ±³¹D8*µ$×ùš½zÂúHA³#>r×iñ[«§Þ¨„(s*º©žÀÝc¯†ÖÕ*¯kYV Ñ`¸g„ÿËnm™AŒÙ¨ÆŠ°Í$ìmוX…Æ2_‘ÁSdð øLÛÆ ÷èä´¼¢ØUlŠÏ­OÆâ„Ã>Ø¥ÚrLþóÉc¬I‡d´º,º¸üìåñ’F×3{ó=h½¢ÔoÖÆ`ÑŒÈovéÄ4¶ë´âË+Ó'¢-Û9årmZYYœP#ûÄL+t±@R;2".­?g^5eâKÛ9Ó\ÕšüöÃNuæd2(L€ÿdø{û•É_¿> ‰Š[:c¦j¥w™rÉœÚˉ) 7ÔŸ˜·Zb¹ñaÉ&k<–@€RJÅ} í #Õ×矓:f2z,)gƒæ=£9——pÔ¸¿ »Íœú¤7÷"Æ ¶º Ëõ®L ΛXbƒÙ•XB1êeZN©]")D%ÛÓ‘·¤f¤©*VQ˜<Üκ…ž½y›©¹*ÖXž:”É'»º—6Ç.4Ú,Y¾d%™,Y²dÉòqÄx•I¾w]b âÔ 6÷ã‰'ÉRuú'[‹1»±!phHsrXƒR1"Ã#PSŠ„+Å[aÒB«oTéúKšiÄSNᵆ¤E”ŠÀ˜dÍ&¾Ù€ß´kÀÚ¤ôƒ4¾EÍÑ©%®ý½Æ+gö¯2žÚꬓe¨Ö ™,™°¸I€¥säkVOýiS*É3r>j“R)=OÌÈ¿³õûŒ¯ è0¿é™öÆ[jOdZhÌ}Í^Ó±>—vrx1³A²êQŸ7Í'}mu18"•èaÚªºcI4­®+TØÎ]¬u\e=«BK©IÀa†rÖü‰jÁ´.ŽQb26à7é=AG©§ûÊo-éÌHÓ¢D g݉½qíÞ±ÜËŠûŒü$kII )D1DKpN€JL0ês$ažIóLÚ¬K6–C,¡èq¨ž9¬êDrBS`JòËg‡çÖïPï¶S]n®²ƒ¾}•ÿüÀè9ZùôY²|Ñù´’ @[ÛGmm'?¾f}}C}ýŒO=œÄñ­¸tïO+;Æ™OÝÈäv>ÛåY²üw“õøÏòù…gå­ìöSf½À³R·_KŸR&ƒ=¤X—(1%03ŸvGÉaçûÌÝ×à§æºоQ¥’MóLšgÓ'z8µ‰©VuMigŒ(É4d)0î¥6$š HœË?æÖ_Ww:Ã3®2ŠÍþ“COˆ7ib—åœjq–ËRAç±1@²ÍKf§ÍÆé÷æb ¼»¼nŒP õÒž””Ä“ÖPÎ5\aúD¯¡±Ì6]œ  e¼Q͓ݕח jǵU<“^ÕÞrÐpërϤcIÅûGca¢\—n,›f5¼gHyù½p y&רŸ5iÏÙP/Ѻ[\eþÂý`×ýîÑè5 Ò<7µtZÄhxF¼²69/º®´oמp¥Mjª'x&Íi™uMŽx’"ÿð/iijsêÂÀ‘ÉL>ÍgÚ¯®8Í‘IŽL.Êm‘,Û»Lwž(Ù’ÇÞ! á<›€xš0)â±$ÿþ!½3¿ºÅdz’/¥Ýã-Ó*R7ÙŽ³Ä9R÷HJ5„& 3Kÿ ²ñ‡ÕzÒyõ¬CSè¹³Ò¬ ó8¹«?ï–âÓöãT늀)sìKh·;KVå÷¹sœ¾pI@A¯ˆò2õ%ãÑâæ#pAÃcžMWäǪÇ,7Ììùá«y‹"ч¶ª* bsmjICtõùÝêÝ=Ħ­ÚæÚÄ´ÑÆ³i1³|áù,:™¶N>pÿ}E Ã&¿›)þׯ_WwF1Œbݯÿú¿¼·7 k›yÙÍÿöÃ//µNõ‰„BM>Hþuí §ÿcë—w_qÑ#ã„•EËîøÑ¯¿»Â2Ýy—ßw?–K\P‰”8òýewS_XÔIýýªy?±_úħ.ÒbÓ×ùo íÝûçÿÙß¶wd M ®ùÙ£ß^ ÅÿéðàL!Ëÿ2²ÿY>¿”æ¦G=”Y/ÀÒ2ñ“H2#~u¾k[»~í\„¹G™µ!“6¶@àrtù ¨PŠmµc®²ÜåÃÊ‘Ìê϶ãÇ-^Êš+yŒ¹¬ä9ëò>,ªëˆž÷‡ëŒn«? H&]‘s~šËܯ³ÞµÂÎ*’MûßÚJ-<¾qÑ@k;ÑÞC˜çøÄD÷ cw.4×¥®¿DØßŸÐÅ¥9™¸½9Ù;”ÚqR“¨Û§<ÐË/¬ˆ—ÛB€/Š·9r{ +»ÎÙ}(±EÄɧwçÞºÔñ£WsoD/ª›&ž}˜ž½Ô”#:xÍEêH¥É¹¯ËÐPrN–L.ÎéÝ;VnIjßÚ+—+c¶iÖ©i1sãf{³+ýOï²’3ô‹—廵ýi“°ñ:r†6æk\piíèœ$Õ3¦;íã†z¨‹92¢»qv5Õó&VC²D½ÊJP¯öš2%|‘»æä˜ÓoÑÕ±¨|°Ÿè‹Ezê†ÆžçŽƒ$vêçæfŒç‰Å‰—*VT‹;; ØxµÝvÔrÏV‹$ƒÎp×]wÀã?ŽaØùÅ3R„ÐûÄWþ:rõnÞ¹ªÎˆ<»ŸrË>oó:ëùjO„ãg$Ï·½ßªdч@ÍüÃá®Ð&F>üÃÆ _ÿASËßVéÎ4ãÜ«×Ãǘá‰þ¦¯ ¾ñ\—¡˜Ù÷÷ï²+ŒSƒOK¢Lø…ŠŸÙûÎwî|$yϦݷÏ3ƒ¯çð‡Ô¤;wáá}’)dù_EÖã?Ëç›Y|y¦±2 ¥9⨇ÎH5OINÈ2¨>a74–ú´œX¬÷u®šBˆrj . U‰¦â(ô°£Ç¬f•ÐrRé `V­\jrŠh¯¶°”ö«)8=¥Äø¢v4•cA‘½îò S.à±7¤ˆ%ɉµ&mÌÌ }£êPPØ×†Ý°¸¯3V° ¤¡¸ÿÉ×Èå 2؆•öQÊ€æêxS…PšŸ€x’Ôói ÃÒ±øŠl8M–— ‡»Xoï ¢Þ#šrƒ {T~œØ8÷£ioBc™?'òvÑ÷VDã5­mžiõZ"J¹Ejg§%q,2Ív«HÎ4 on/œeùÈ>ß´ ä´ ¥¿'i‹*}rDµ¸ `lÒž|Qô[Cs¬ã•9Fh(+·ÆBÊ6§áx€á£23ŸVkð† ;Åùœx[Íð±“B¦Ý3V\žŠÍÓ9¤ŠÜˆS^¨K´¹vO IDAT+‘,_\áÝ|*?cŠ·h«Ìñõ—$–ÌÄ»Gîbm†xËQ´ñ:r,¨.å"O¾(.ž­hªÿñ¬³ +©Ô–îª&£¯Î2¼Àäp' ô[Ö4ž•d<ÀçÛ§y|â‡{ͼI¸wÅp”à:…§"¦zµç"íY×É$$´Šàä ‘¸jôÅ­Ú«±HÆgfÇU»ÂªpŠr¥¹pBRÿÄ¢R/‡CH þ”v·l…eQ*$k[R5+¸ö$gMZ5=n“ˆ­)tµŒæ\H’€%cûíæ+›úDñ#Êe³BfƒØT±îò(ZOS®@Z¡Ë§Ø´UÓ\“¨(L C6“L– >íò»’ÉòwÞùÔSO=õÔSwÞy§$I“‹²,OÔDþí¿z¨mö¯žýɵ³ó5 «ÍŸyåüñ*+ÇÖ_Þ4¿®ØVR=ÃC{|šÔˤîdÿÑ·†«ÖÌPF„‚T-»åÚòTïGQŽw>ýËëÊ‹låM+¿ýì©B8þ çþädâ¿;oÎ7ÿ½[/[²tv튻ž8—Â{¾óå\ާohlj˜uÇ–QéÌhϼRö-Ï9ïÿñ-ÆcOïpKAüàwçÍþúÝwÝŠ¹ .~àˆ÷ÜbÄýáÏ®^ZŸ_Rd«ZpõÏ·¦A°ÿeyãM¯yåL›ÑÃ÷7.xà@|RG¢óx·XwË͹¼‚ä-5˯[?SƒŸ?<éüÆÏ«ùàÖú‹7 ‹ vì™Ë~þQ ¤G·ýlí‚ÊÜÒâüšÙWüúd¦N6ûú ¯ÏB0Ì*d²|NÉ•¹ý4ØL‚ÝõIUÁ—4ºô*ÝT›ã€'È.¥0BAˆ1ŒÎ|µÃ»G•†í—f:®^îß°:¸¤1&+U}\E…:©c±`œ±•ú’¦®ˆ²Jã™c2,ÊKÆŠsàüó.í¾SÔ†5‰b[lYaŸŠJµºŠlt¢W»û#˼^Ð7Æ”ÚR_»ÊÝXU)±½†Ç¶ÿôýÒ­vµ‚C>ý;½Ê~/ëòKV~å aq)T˜±þ(†6Ûä¾Ð8Ñ«íp óR§º?íÔ/ª;Ï?Âk5Ø[œ¶Ùj¯Ž db¾eîÕ Lp¨ÍËšØÓc8ÏNÿu”BgÜÕ·QœÓ&MõÄÆëHsÔõÜ îXüìµ-›ýkz¾6«0츟F‘RN^^Ý0«í؉”›T©9ymm·šNí°ôû‰1By<¤QðôáíæSù·×ÍÍó?ún^,©ˆ%ÿþJŽ,Š—-Àl”Ku¨wýè±ôõW<‡ {ØÕsÄב-GåÖ¶³ î"ûêŠÓCÕ©±ü|ÞUgJô ­'¬Ê¼;²,Ðù–4%_ÚÉ—k„x’zýpA¿‡£5âH,÷©þ&¸¦àhÕÄð¥´&•” Û=A\ u; ÓÎý!ÛNWÝÛUc„þd?{hØj:537Žã;,›ŽÕïµõ{ŒÓ6®”b1Œ ˆº½¡²¥Ói„†Qá)¹l1Ý¡%‚Ú„SÅÊà åi¯¤R%ÊÈþÁ Úó´àŽ“Pžó…ðÖÓãOÏÊ¥ÂúK¢ÖÄï[_×ítÊOíæؤ±1È 3YþøŒÿ“õ›6mÚ·o_ww÷”j™¿ñž÷Ž ?[jƧè'ºù›{.~lÛ“KõÞm?»áîooâ4~=:{€ÂÇßì-þR“sâ¤;½íý~E^….qàÁÛ~Ò}ýs_Ÿ ­ºã¶›,Ùý‹ÆI—§»OÏ|óµ_ä£îÇÖ^ù£7Wÿ㺜ſùëõǾF=¶ûÇ ÌÔù@²ã¥-cµß½xv­ÓôĦm£koÉSB(5º«½ñw~SÂÄ¿<¹(ùŽ6}õ±¯=_©Mö¼ôo7Ü÷ÀÌÝ›V^~cþcO8vÅÕV"GŸÛA®zb;©/2¯y&ûį~ðÛøµ+fͨ-ÔS€rêð$/^ã—N©95éÖ!±Î‹ŸøýOÞ-zpÏ ™ñøhg?ua‹»,Y²d¹<+-)¢ …R<+¹BŸô·ƒgÄUõ-‡L «’.§‹í=mX;?ŽI! Ía’ùJêö+nœ›èNfU CÑ|c ‹15óÁ6ÏX{ø¨¦¶(SªéUWÛõç-'òcfб¾i«²\•ªÉ'3V7•²*Çóð*ßP|~Qèw×÷ÅŠžaþÕËxhé\a Î,ÈMÌÈ þöɺrÝ „JT"’侸r¡9¢âÒqF ÇŠU¢=Dúè† 2ç'Ę 6<ú裓k¦Ãc1Ƭ£ÏžÉoöµÀŠï}™•Â(ÛÅ÷Ü™w⥣a9³ ŸX#„PìÔ›íÖ+fë0„áØ7g×U—TÔ]úÇèUþl%Ûùâªû¿2WG(t³ï|`UúƒÚâg/P˜V}yu‰U°x‰aäèpòLèÄN>óV áÚf#StÅkÇóoŠ™¦ýÅw]ULC&1ð9EÜ0ëò•:`Êò+¿~¥¶cw_·]zSùéçw8ÓH~º…_sM3¹#Ð,ÿå–Ç®f>þuÍ*™³îo $'Þ<[oºÆÏŸÂäÛ~vþ'FN·÷ûŒÍ©­1(.4ë,ŸœÏðŸf·Û3NÿY²|NY<#z¢—À>ÝOG‰-lQ‰z8°èâ®0á°@ˆq\¡ÀI><¦Uç(KÕãš0­P=‡wj £Õµü²fnÑ©èˆXì =ÿº´ëg:'ŽsŽ>Þ76®/êa¿÷ŒñÚe±ÛVúÚ‡IOˆksØ~¼«ñ¶Ü¹¶Àµ•Œ$d!ñÈë¦Íïë ÄšüÏu£ +]>Õ·—]5{%C+*…Û.öˆñ$”˜“édâù6ãã­ow)¥TZ–å•Õ^@€$y~IøÙVÝ£ÛŠúFÕK*^m±ø¢Š»/€hG²ìM+O˜Ï¿E{"%¶´ãõ>óBƒb9^lJt «§ÔŒ%ˆW[™ÊªÇR²-w4•s^c¢˜–pz¢¸¨>´£¿HòÇp X5©â*ë kUOl'·l#^úÌÖHÃO0„]º&ï‘^³ß~_B@¨,ª3:)E9tò™ŸþrÓή€Hàr$Œ¯NI·,»¹þ×O¾çXeÇ3ôk¿SJMí-¾ôÞß^z/ ÔØ¡Í÷møî½Å3^ÝX8exÓ6>¥çèd2%ºî[üæ/÷àUõ£Ò‹îxàÁo.›6FB–ÿ÷d=þ³|®áYÉ!€gÒ9Ù`>I,æ «fyžþ0d‰gÄUuþ}ºµÍ ˆû µ$ííg2Õ)`N¢ÚYd¯Ao 0ˆ KÉc1íPg5&¾¼f„®Š¹<Š!'þû×UÕ¹¶Hª-y>qúÿð˜¶}˜üÑú REôùM!‹åÑéµeîûçŸìî§|cÄk'yŸìñؾ»l0ãóã ò?}¿ôƾLè-x§¿bÁ3•ÕÑ·zµ}ƒ‚~¼Ê~¸SÝéâ0‚°‡±päÄ÷ QÁñ“ËŽvëÙc,Ój-J¡Äšl,ÿoùHyÍ¢€’÷?{°Ð¦‹Oöbo WúÁãi5ŽÃ ãðÄùr[èé½ySrªiç7,Š*ÅÀˆøõ«ú÷Dk9"©UL[-§Ó"NrêÌg—v4\RjÍ)ê„ß0!Ùʯ^íô:>:ÙîR|õ*¦©V€¿i8N!(-<÷VàÆËÄ£þüxܲ&ß;!-|4b{­Ï²®ÔmŠªj>$IH’¶ö(GS–6Ù\Ý÷ÄÊ1F˜ R,O¾ À‚ŠžC׊ïÖ6çž“ÍlÂ6^‹=ù’lD«Wà<7®™éó›>èÓ)Ú<¹V>ÚlðÆz{W“$Kt€ºAï½Ä0 ÊŠ cŒ;ª‰ ô`ˆ÷&)G’Êe##ª£Z¨4ú„².'d1ôMî<©Ÿ•9å,&Øé2¤¤™IœÂÒB™9´½3ÿ£AëŒBG§ŠM©b“wVŠ «FüÊN÷üt±ÁvêTç|q\ÓEVÚÒ. šš:–Ca’ÂǼ¦"£Ç¬ #§ÖVePSàá ‹[Rš4Q³AZÜ€Þý[ÙôÛjöQ¦'ª\VöIÿ=³dù\ó™¬ËÎìLßsÏ=b ôôôÜsÏ=ùË_0lÂi˜òU3Éo½¼{ì’+-“öB“§7üyû¯gM6N´N4?~´pˆ^zS.1Þ'FªF“;3…:‡ õyS¨LIw_µê“gF ™Èhç1$O'É àþgw†…ÄwVÔ@BR–_z¥ëîï— `“šœTLu>ü­?8nn÷³Õj"ÕöËU·Ž!„fX|ëÌzç¸r«mý‹ÞϧÌónØ8çÏß:æHÝQ€3¼ 4>e 8MHB:S”bÁ„¬ÊÔÑ4Üò«§où•è?ùûnºÿ¿îúÝüi,¯³ü?&ëñŸåóÏN`0,šP˜uŸøZ&½°,¶¿“i(‹>î:©vX³.K"F®ˆª;H^?' )Ät¡òbÌa1²$†ÄT"Œ@\¦GiCé(R >6¶p¹%¥BiÌ‘€î~rÏ1Êéƒ>I~ä ³ÍË3Û½ùÈtÞëó;÷ ~:)|ègêJV%ÿé+žÖò€]¿åHÎÕó<û»c1ê;K‡'Û°î;R}ÐÃ@©2ÕÞ若šÍ;Ì>y÷êáïn)¿»ylØMµôá¸:tužbéŒ1otð=~z,„«9±$7Ö7€YŸ€›ç>{¸èæ¹-€?¥=5vìi-/¼¬:È’ç¬>íçZñ¹}ä+GɇîNí±Ç®™/1x¢žuO•®PLM9/JB㻇qîšh»µWóp±9qiáÀ‘tùê£n»ÜÖƒ-ž«¨CË‘ ¬¢s„UHFudënæ¾+¶r2æ’;ä~OyÎgœÛOxÔ=Mv“*¬ò›;|ÆËÊ;‹ÍH•ò™ Ø-­úÛ¶ôWdlFÔXœŽ&(“&ÆsÈh ¼Þä+ïëWO²â`ãµxwzòeùúË1³›ˆÎ|"b‹)µ-u þí¡Z’ÆuyŠÁQÿ­ÝqQwÊ•?Q áöPÞÁ¨±LÕм\'G%'’QNàõQZ|Ü|+–À»û)Í©A³M$Ä 1V[bȦ&'ÍT˜ ˜’.®~öpQŽ6:!ˆr´PlòŒÒÁt^]Ø>"ÿj¯0óbCn°Øˆ¦1ÒV™ìâäi¢ÕQ(©¹q‚ßa7o4z8:µ Ðùz[îWš§F!Ït´º8ä ò™®ƒaø 5½þ²it£n?½gHõÃuþH ve7.³|ñùìÿ÷ÜsÏæÍ›3gËËË3›7o¾çž{&{ücºe÷³æè6üüÕãŽH">ñÖo¾ùí×ÃÕ7_ɽóŸï‰K€RûÝ'}ÒÙ^ÆÄ‘{ÒÍ‘“ON~15×\Dnûí¦#AI òwÛˆëkØsjN¾äÌ1Á›ÙØðhTžêÉ-y÷lÞ‡­øÍûûwîܳcçž»ßøvõØ[/¶%¦6uNQNEDÆVš«$@ôîûû[#©ñékæß´Àýäu¢ðúK ˆ)ƒ‡_ÿÓ£¯é÷%%1:¼ç™¿–JçæÓS‡7}ãS¦À̶:wr¦ ƒonj eΧ¶}ÐêHHˆTê JÀþÿ»Ë^Ÿ…¬Ç–Ï;%9©Î!%”XSáøôNB¥”{£ô‡­žI¯jîm×&‰†ºj¥‰o0@§T®ƒ°P4‹Òé¨k"  k µ G‘bp(b©<Ç…gÏ¢¦aý%‰/]¤È)Ó¡ŠÑ–ÿò12xªËæo}xÓȯŸNÈ©¤Ë‹.[(°$Õ\Ò>€,Iá `ð«wLrZ\[oGé„Û‹»½¸ÛO¿Ó‚ÓFƒ/(¯¬p¬m¸¤f I²õF¨Ò<ØÝf¹¢"\’^Úà}pÝ(BÈ¢Lm9høð¸þÔyïRß­sB]~âO;õ¼™ó‡÷Õ‹gŒo´s´°²ÒûüÑ’xŠ€Ö`>60ÈZŒ„o´ŒLžLj s““þ[Z™o]ášÎ¶p¾5 9¤³„ötŠ•Sî¶ì~ã)gÞ/Í~¹³Šô ÁᬳÅërFXüIB fÉòÅà³Ea>«6€Ûn»íᇾ÷Þ{ÿþ÷¿gêdÞõƒùJHN´svD“T2dñ•_YôÖý³ª¾ÎÍzðƒg®·ë‹$×ÎgŽª¯|îâó™_ú»šýé³­÷Þç¨y&· LÝ=÷/ûêý«—ëMmùœ99ô™I¨fÞ¸»é•ª_¬´N z£E§~ÿã÷9¢pmé’ÛþøÛësq„ðs‡·~ºÆ§N¡àšŸ|yß·¿´ìo&SþüE󌃀BrèäÓߺï#‰àòçßöËÍd.¬Ê’%K–¡žEE’/L¸ý´EŸkU»Lã!Íù&u©áÈäq±žÇ…||Pm,Á1ñ; €[†°Ü¨CPkB°ßm[ië›ÒrRfG’–Ñ”:T£5"D"Wõ»•ØK›hB²Ô>í/âã9L0§¬ÕŒ‡BØÿaµý d™6èH¥2H¤cq‚N}p0ðÁa€Ä„ê\¢¹~d—Ùc~wí¸çψ‹ò’Í5á-ô¯ŸâËÕ©!QSÿùúè‘NÕ«­4`ØË{´×, fÖ—ÅfÿÜýüñÒKj( ÑÑ0†[×WzÎ_|—˜£~Τ€Û§pú±«óSƒ 9Ýé½wùøR5‡ë”ʇåBCÚWDuÌ­ã”…kT©kj›h6X­oµÓŒ‹}öíDÃJøã¿ó vV”$*Jà—»Táá±í‘ôw¯•Ò”ŠÄ‘ <—æ'ÿ°¿ÉèÆ¦!?c|×?{¾Ú®S8*ed„­ÝÕ²$¯©ï€ß½Jýä–•vt«¶ŽÀåRÓ €<Ù¸¼/Lšõ‚Y€°'_Á6®G““{šØe˱­» ål¼x dp jPT¾*ݨ÷Zøð©”¨QÉr‡Xw&o¦OÖ–¦ºÎ»Ð³K`#BaE|˜.3õ'3óÚöv¯±1SGât|Ÿ9žÈ3ãÔ<‡‘gÂ[óâäëG ¯š31LÛŽW]ÛGâAp´PƒiËMi$E{ú¼Qö§'JKTâü¢P¹-Ä1S£8]n”öõš®š€KjFžÙ_Pž8¿&χ\ìè¨qAY$yÉ\lʶš;ÀüâÓ’¼B2¨8ÉútÛ Y²|Ázè¡5kÖèõú ÕØ¼ysMMͱcÇn¿ã«áp^zñ÷}뛡{ï½~øáL™ÉÅß?ôÇk¯»áÿvtòØ«7¯ÝõÕ÷þ¼dª×ãçˆôÀ_×^½ûÎ÷žù’é3¤œÉò¿‘P(´ãƒw¯»îº7ß|óöÛo¿PµÃ‡wttd*dÜýKKK@«ÓÀÎ;þgF›%Ë#¯í³5×x6ýônÛÝ«.îö|ú\ÚW•ã{y¯îkk\}~Èͬ˜Vå–xÜò¨#èWZƒ™d›Ædex•Ì!&âNº4€T5‰mÃu³Œ#ÁÓ}U÷ÕÌ´™BŒS²¸M_„ó:edè²Úw€ÝrØ|÷ªÁ]ûd­kªÇ샊!—bù¼¤Û‹¿ð>ñ›DØ}ÒtÚ£211"0w†pä´î•ƒˆ5Êthe­ïííQB­¯-óu™¥-€ãm#Ù§)Z¯/W f&fÐAaŽ4ìå_oçË5XÝ[{XW¨ÍOµÓ€A—€ }úÚ¥a³A€†sÞvØîj°?øÇ´¿¼¢ãü›ærû:õkŒÀ+Û¸%³³!}lØqÅ—Í7pŠ ô)_^_XÙ$sa–ÙoUE•lçúfì:¨xq7º¸­^&w‘õ¥Ä°Ÿª%ð›6°&‚ñ»fõï$Fbì’z©ÀŒ~³3¯ÂŠ[Ôò—êº`4•s*•›CEÊ©¡ÖÑÜþþ¦ÃÐÚN#Øòù‚Û [Z˜Ù s\„a¥®½{X3ŠÜ}N͈[RçÌt×z k9S„ˆÅ¡»ZŽAãLÃîp!É(æ eJ!=¿¨Ú°&Ö=Èìk§¯]3ëJªÂ'>ÒÎ2XëîSØ §7Ô,›EÛ’'&Þå†ûU·]ó)eR_¹ÎI ””ØÁZ‚£.e÷OœŒ'Ém'­Å¦DE¹ØMV–¥ºkBG£¤ÆÇš@&¨˜¶ŒH¹øèDýX’êV¿Ó£*Q‹ J"9ú¸Y€–žBIÉùï¤omãhƲ±Ï©ö2KëÏI/K*6o3¤ø›çD”˜·µ›l›îóËwÌ߿ܽçÖT•.-Ý>ÅžVfýÅQÈ’åóÊ‹.€¶m[ºtiüÂúÌÉ|ZÌøß̶þŸÿüç3ç§Ç£{ý_’ø‹¿qW“ês¬D@ÑÏ>çÿ£Eüs<‹,ÿd=þ³|(±¦œ~®¡Ô69å'ĬOÕæ&?<¦S}÷˜º¦W5×ÒËfSmËñJU2™L¦$²*-a5‰àMPœ"yb,wÎ'ãK\¦í¢±Šp±Èñ=ñ››e>àÙt¦¯v¡Çˆ€J ¾ˆÌFÙ¦ƒÖNò°#Iâ-‹û\Åû't¸xÇÎø e×Üap@Æ0;³½¯º´ê’eɌ؃馤H¹p)—Ü÷{)ä.wÉ]¾É7!ÀA!T‡n ÛØÆ6.²-Y¶Úªk{ß™Ùé¿?V¶,Y&oîqgŸÿhgö33ŸÍÎ|^ŸwãZªÜh@0BŒ†{Eca»"Eã&% /ŽéºÞ·ÝZo‘t]ëê§¢tƒCñZÕ“!ASøÑ‹æ—ºa1—‘qUÑ÷ô˜î^œór±´\H`08‚èn‡}!²É&vËF2Æc)cA½¬(Í64–µè}$ä «#ÃzyÉiSHA®¯m ˜23Ë„Œª(!s:uȼ¸±1ï¯Ôü•ZÒTûìoÃÿTiKîÒÊtwÌw|ÔÛV*¡‚v"T<¤–1Œ(e¦L½Cüû½B$ß{yð‹y@F÷ àdC Žf‰Ù< È´…¦£U7á‰áÖ«t·sz=Ë@}-~8Sý¡hõ©¡°ì¹Ø=¦+…tÄ€ç4½£‘/uÉ/ì4·V(‹[rj2ɹ,a„3f &ÐKÚ”• %·C}yŒ-5fή%C…Æ¥ªÆÂgŒµ2™Þ}@cÂBóø®Œ¿_«:“€¡åË燎DJG ®z¡× §Y!bË@§Œy[ ž „éìÌ -3´¼ÊÊ-®‹qy¢gÔô»Ã%~³|‘?—äñZs&‰Û+K´ž1Ó*+¿í¨©©l:£ÆÑAǾ>ÃM+bšýcg‰=Ÿ\¹x–Œ1¼¼ßñÝ«"n[~Ç)Ӧ˧²ZWè"Eþšø4ÞeÍ-­?ûù/?¾eKKë_À‰ /[·ù–3Çý«C‹½þÅu_ÿÈzùžZiùk=‰"ŠÿE. |aïIû|?xÍ*ÿI”Œ‰–<‹›³Om³7W£fz† <Š™ÊhNSÓ]`±Ú5EŽE"qs“Ošó…Í Þºý)ãòfîÖnÖr&${õá±€ó`Àôë& .XÀҲפ<ô}ëš©ñËh¡4ÁñÐ7BFdóþã¦*$Ô3&ÿ㸓´ÚtU…áÜÓ˜³Lg°ß¼êŠvË*äÕ~òöEY3«@‹_@ÞëÄîØ˜ÝvØÐ^×OŒˆ—tÈOîu\âšØq’'ìŽ:«Œ X_o©š«…,‡í7¬˜ŸÍòèäŽ^ ÑACádP‡Ì@6bc%¬CÑò“s^´Â¹DRÌ›{µ«‘îP9|Ø)æ–-fÓ•æÜU §Î4ƺoj‘ ‰s@Ó0àdëädL¿u½âvjjH|dmÀb¢Œ³FºM// €N‡ºŸ{%?Ž»îÙ˜T¹Ä[{ɾtº©’öYX—…£QÁ¬¥bG‡;>fsŒCeÿþà—.—A׿÷öàU·8A'†C«¿®#uÒƒ˜g)™w»<«½ 5G•Ù¹£}æ§š+È¿_,÷×WK¡˜ØÙ'>¿\Þ•ÕÄ‹“Í7•ô8èž©8.¹ íÎzÃà7þ-ûà]šÛyz§(J£Ârkàw¿EYôæ@îûþ謞³ ÜuúÖûèÐÐ@搜åÉ»[úÆ4$™ò¶¦'^–/Z<\²¤)µêú´>a j]9—LÉú-× áÁ µ QðWª³Ï[¹d¦kÞSñ(.d-3:K4aŽôbÀi´/³œÉf¦¦¤ÙïÍô'Hìéžÿ½âHŠ© %ÉjÁ9ÒŽÍ KËíµ‰#©’«ëâ¡ ß™¯íe¹üT™šÒœoȸûTÙ©8{‰³svë’X[5]C)´lë¶Ý¸$|¦¬Ó¢A‘"K|Ò }Åáx‘"EŠüíÂвפDSL‰]ØÛç˜_óivâ¶K7ñO°–à›ùšš¤'¬VkJÒÊfL09«a¤D;Ó´GW4­ã¡Ä"{Ö­F š6þŸÝ·¶ÄæWGÎÞ³ Ð‘‰öVÓs¶Á (j®ÀMÕÞ X«‚Ir&{ÇJ tmy‹úøvâ'wåXƒƒ#Øh«,'ÚÂäêIN@€ãÑžA A ”¥¯mÉŽ† Àq„$vPÇìÒk§,uv­­Íš:&¥,‡‘øo÷›÷õ›Ë•æJÎm˯YÊ/iCõÙºµã½ÒÉ0Šª'3u×̳O¾°‹ðÙaÅ|ÎÈê„{$kŒåI;Â÷ÇÕ¯¬®v§`gÌB;€¹‡ÝnebŒiòžÁ^qûщ›;´û?3#‡•ŽëõÊ{ñ;«ò*æ8k`/½MÕŒ_¬KdÑ_n7ã$ºfuuËôМ5hþrÑ_.°=µ×JC7¶ôÓz* ‘]c¥ ¬ÁýRÙ=÷dl¶èùÂ&½‰© ó,ãΉ~ ›2ø˜sŠ«° ¬¾Äð‹Ý%dÜx{[¨Ê>¥v¢YÓh¿su~q <ñ2\Zšàh÷eÍCÀñHß:0†ã°¢]ñWÉf.æMc ÊëI$Á8™vQ’*N o&pJX|Eá³ÅÄ„ÆæúÒu° ™3 tœ(ñ‰\ζ×B H ÊÐ~Nà¹`ÿœ{øÆÒeá\.•*™¬2sB¤ÐíXÎÒ­—p=™ŸÜ0CEâødTŽˆÖùÕQ„¬ïž°ß¾rìLz€±^Hjw¦óEŠ\ð|ªz2EŠù„œñ_¤È_5m•Ù½}ÎËÛ‚aŽüÓ­ÏC}e~×€'ã.û'ÕFÄ`0Ð6›¢#¼Š‰!`l²£RVT”O9“=bƆ5‰í(€ÛÞsß|qÖldóU9…JËTR&#)+ ²˜åU¸¶6¾T‡}ý†Áè «’úùÉºÒ KËO¼Œ•Ø4·SçTGŽG Jt4„WxD(x1±µgqtK…ººcFáBN@¾ó[k¡$ôFÍsfV‹È/îœ1\Û&'xú­úö˜# AªÍê(OV”É *V£Š ú˜$Ó’Ô ¾ùþôÑ´¥o€Ômµ7±´dÒɦw kL¾‚Œ€cÔµõçõè“x)zjäéípûZ}ÑÆÆËÞÙ ÊW’›ì3'c½Œ€Ó{ê<‚®Õ•2#£ñW{,´™¸{=Õà—çò“*÷)Fµ¾.gBóO½ël)“*ÜB:ÁéÏÎ+”ÏwŒ 5nÇ`uƒIFVŠpÄü|ªÂMÇ1®ënuº(/Q‡‡\;cî[†Ouv1g¥:;²¯-MAÁns£L†|eÕÁRfÇ¾Ü {±K[õÚrí¦+ ‹b·rðPÔ÷ô{î‹øöÚi3xH0/qæ@›åS#½±«> f“QáÒª2÷Uå4Ò†²™y‡·Çê`4VOMÝ/J;ëõñÔ9ÚìOÂKT9+ÀÎÃÖÝ)¹­•uÛò‚Lï­‰ðÄ—;NœÔv~Ĭ^2­¾>褯Xí ±Ñ;™dö[îY;pö>_:Dý䎩èÖ Ÿ ϨH^¤ÈÉ'P2ñxôÏL#P¤È… Ã|šâ¢Åˆÿ"^+÷îI'CËC¹OŸãU"ÌÙÒê&lb¾oZ¾À¬dTŒBÌçóyÈÅP Qt„7”D1“Ó‹‡¢ú ¶ãq+«¥AýpÔhü@HôáéÅ¥©G>‹‰£8•«t“±½'í§‚j­Uòš@vÿT6ËÀU+µç¶á_ûœÌ´›K“¼O€ zb”\Ü,æ5 g·!ô<ÆhKKñ‡±USS“‘²û²fµãÃè±a¥o¯‹Ö6x#s<¬òš¡ªï]3ùê|ó:¾®Bècÿï{6Ú˜µ9 5ÇAæ-J$E—Nšç9…@0€©|Ác ¶Á‘,U'3¸+@Ïw$úCp0èb¶ü‘j8ynq× rACöƘÏ.8íšZFÌg#‹Úú:³|svÉ”asA´½Ž©+çõZÙZvã²xÁíjˆ3]g¦¦ÜÒ ®eŠ»ÉIdÎw£¦ª•HF³§{-ô¿ªB”ª:v˜¡)¿Ï<ÞõøöŠÍë1Ö0Û¥íã‰dÍõ6îåö½!ÓšшâEê÷Åík“ü£°¸ݺ›ŽÄ±BÂèHœØÙGlZ›Ë©Â–£>{Ö̰ ŽQkÔ)A^@+zš¹ðùs•Ì¢E‹^õåÿÒ®)òWÄ¢E‹>QûbÄ‘ †–=&%šf—ùòÑ´ñl'þ¥¥ðiå“× o§››Èé’”Hâ #*B"ˆŽâ¸ª¢nÌL¼ŠåU”—‘<Š&Ҋ͉ M‚$#UFYPhŽKã’ &dzm}V×°œjëi¯Ñ–Wjƒâ'ï–ÔZ”û.‰Ö”d¢)vo¿óìþø+õ’“ÐyëhQ›ýÒt{ ( Ø©(2k`ÚŸÄ7_”9“í ½Ç•u|G™h5iOìÐ÷öÆPÍ_.nÐõ­{˜Mër,£û+u¥ÔR?Ûm\ÂŽo?¬ŠêªÚè‘Ü5 ÍŽ—!d°L¸Òk¤ãIûv—/%#êTÿÑ0I2$ ³úI/ì4ù,ÊOnO² $p'*x…¦ÉÙss…þ0Dµ%¥RŠÊçÄï=®½ÐmÅ zKƒ½»/[]IK™8ÌE·\[EF½DlÃÓo™¿zc²Äž•bb³Û<š·=òvÅEµ\{mÜ%xÍ•a+:VHZNÈÀ©¨a‘?Bê’!ìç )kÝ+ãZ¥YûV{Ï™¢7n§¾¢ž|ÍøÕ[²C»‹j†baЬÙÁ >€‰Ù§F[½‰~°V²´²j~¬Üezù€«¹D\TŸˆÈ¤ ËLªS#{œÏñ‹Ö€…!Dãó³+ùœAS0œ°xÊÒáZæ.³rï¥ZH]U’Åî0 ü†Eö'·Z¿zÃÜWì¼ ðvå ³×Jš¤Þ¬IÓMKÍQaÊu5h Ò‡ðMëUØ}”yàjÒyj(GþÛ\i»æҥɫsRЄEŠ\¨ü¹JfݺuëÖ­û‹RÊ éxHW•®ýÛ&Žl­_q“Þ2#l¾*U–ÅpAŠ&Ñ"ÿÓ f—çûxŠÖ˜" 5N>˜dí¬L±¦’ÐtÈ«†-É,=†LW-S ¶n  `š €é:¢‹<š¨8Jø+¦<—ööº—ÚÛi—¶"¡8ô„Ðv˜+}šéËÍÇtE ¤J^E¼¤Åúa0ÂM µu击˜“cf·M81N×ÍŸ‘:™°§¶ÙA‡›W§Ï.ënãDÞ©²,Àìꥪ¯7|Ý»êèÞPó:rëN ÁЃ·Ã|mE°Æ~*䲘Œ“£sÄ׿™pÉ‹ ¦LðÂ;{èÁQ­É«Ý¶.óôxíÖþd y§ªÙ—o.ÏØíý(é6øKI!9œ# ®wuyß8e¤ÌdµU¹q948“47CHt4KiŽÜyÈŒ™¶’sú¯ÈB*ÞQí:vе3ÜÙ_I8EˆÓ¾5%ÙÛìBÿ¸åŸß©ñÕƒ*å§Š¢˜¼—\s-XI-ÆåáüÄ$ÊH*%•¡à˜šç€Æ„Ûªú_oúµkÂɲ¥5Œ°<‡ì8Œx=èÎAêÆËÒ»{Ë“¾Ì•¦fçÛ “åÞ>r>»ÆqE%Säç“Füÿ?Áç2“C'¼¿%|bG•1_ã3W›"‰?ýèIUÄO{›/©Z|eYýB{ɧ #-R¤H‘"ÿõølü—,«˜;îücTálÝ*c •Q[²7Zì#Aqç®ì—nfòñô»=–ò2Æî` ƒeh =>BõL‚¦êªÅSZ¹Aº´&b¤D—9 œ€…´Á ½{”ª³)ËR8óÚ¼Û ‘¤!”uÀ#[Ko[fi Å1^$Ïžàg}A£úü»ÔýŸ6-–&#„Û¡ †ÍŠ•îì§®_0GEŒ³eªÚ üÒjþýSØÞ.<•eAüåêÖÉ›Yp;äH’þ`£¹»¯ÐŸØmüú‰ž—ÉG‰šÝš‹ÿv»ã¢º|©3q]5òÚˆG•€"×4dÚÊ&ýÎÈ߬Å|ýéøvÊÆÂ øÛ,¡¶aQ¶¦l¶áUE#ˆ9Ôæ"R03)°‚€n5ã y\ì "¦joc•9¤Ã¼Ò‰À8sé|LÌ¥•sâFN"­ 0ƒ~ÅòÜþ‘Òu¸u½bÀµzC60íµ#õe™þIË–#>·I©qpIQ_ÔN@­|·E‘ÆrX\o+j¥ vÉÕH& Nÿk· Oms ËÔ¯‰À9ˆ¯KŸXÉ>|øðáÃßfáÂ… .œµòÈžww<òŸEkª©\µ¢Ê^·! b:\™ƒÝ˜”Ðä\Nx]8zâµG{6übÐãñ|Ò¾)ò?–bÄ‘ ‰3v˜¡ÛVù 6<˜©ó’™R:¸%àýÎmb4ˆ²´koê¥ýچպ̀ÔZÓz–Ëea‡Ñç6®F¨·?€ƒpqÅx8cê7ï#*i¡gL¼Á‡¹ù_€Áaðš‘Bþß‚X{m@ú=÷úö´Ç¨p5ËUÉ_©\¡;Ð͵Òö&Á³ç¶ã†=cÌ×g š ô'«g v Mey‹øøC“[o©¯ ûás,Šã€ âemÄÞ^òÆ…b†#Z*Èly™&‰w]<Àåñþ Ë?¿lÖZÍX⻥5ù‡£U=of<¬¤ÊÚrëÀ ¯¯G‹åó ©-ذ®Ì8kŒÕÖ³É1/µý°fk©ªuKÊS© ‡tÐÔÌŒ²+ƒD3®ëuJ÷™5…J5:@¡R Ì·ŽË”70´<¿&VW’¥Ø÷úܺ®¿÷†ÁtŸ]Jã·-äêSmTÉ\PwW"|ZNOéÖ nX*n;JäxŒ™mKÇMeöç¦ËGqã¹9Vƒ¼©ŽÉ1¿åHc£GX*¸–YQ1%Øù®!‰!wÔ LsB^#®•³JL"£‚BcÊuÄžw饥\ºŽf Ú˹'_3”º§ÂZf!ÈôPÖ³=R¢Êr.’ºwñ±­£u¹¦zèßp•­GSõqÎThì²äVÍË-ªÅC1¼³é "ƒ*sÙb#\Ó>u%é§÷”êψ$ȧúIcuйø4Jæ‹_ü"œÎcvÆ ììÅÇü\%3tlg‹]XÛdDç]Š(*ä"jèàðñƒõ¦ êU—’¾åŠÈû{»çލævo®¿Óóf×OÚç¨Lü©à÷¹é3ÄK=¿\lø í€?p_Ó-è‹'µä/¹×"í#þ‹\H4¹…tžŒòŸ$}Y¥Óˆ¦ëÙa £­rPtHã‹›Ò±ýÆNáK7×§Ç£¼¬h¹¬"’¿;Þ4:&T¬¦Æ-M ÆÇÆÕ…ÆHm©|ã5'Æ“lœ£~³»¤ñ‘yML4%¹¬Óª£½6UW–{û =®¨!‡Ùeš=F¯¯–Ÿ|±˜aG?±¢A0ÌëœV2o}ÄPVÖc›Ã80Ä[®«žWŒÖÔ«Á˜ÞÑ,~àñ÷éå­ê’d0rG/¾i‰”XŸMö X†eBêž]xÂÓR.uJJV-‘bIÙs4㽪1qbœþ0HêºöÐN«ã#™Çö¢%uå×^šk0Îú_€ÅÄ`ŽB…éªf&æqª‰œ|¦Ïh¬(ùL{®­<¸w¸¦Ôœ€LuZeA˜!"t ¦ƒ_œ.bÓy‚xl;uÓ2eÓúé–<ŸVÏ’ÌÛ'uƒ‘\EQd""ÿŠHI‰Uæ¹LfÚì“ ©|‚qWàˆ.¤¦ò/'X¯ ÝrØ{n½ U’~/›gt•cœF.–ef%zðŒ†)_¸x´?h5oßsré¦ZTft~H>ïkšÀ`¡7ÿá˜Ç$À†KNRã˜ÜéP)_úäU†ü ùµP3.’ž‡¼ÿ3Ó&2A¦‡2îw#%Rj³ÅWá]tª÷\.¹Ì*‚ _jî ƒÃÀF$„N)3DkPüåŠÉ€ìušJíÒ5ó§þ -{X9’bܧÍ29k­œÄå°èYÜN(RäýÛ躮iÚÝwß}÷Ýwkšvîâœ[‘î†rvå#ˆ©A@5¤vCÕê;ñåßÖÛïÓW|_-].ïíø¸€˜L¦ÿ·óú(áí?º~žC1øZ¯øÇ øï.«¼ÿ£Ù¶ûƒ¬ºùÁoªüôY}Š\xøýþ²²²ÿî^)ò£Ñ—L ¤Û¨D3Öãú£l£°ÀÒ«¢TÂÖÏê(žÌ<ó¡—5èVä·ìÆ"º‚Rå¶° ' o0žŒÉ¼ÐýÞ„:8ä#Ó˪/«fëJt³¥ÚXÑ0vÝ‚¡Ï/^ìöZ$„döô;ÝQû̇ƒâØ #šbXZ¹bQBÎ {ŽÏÑ1Ö ßq°·‹lti“QAEÎ$€ê<Å´VÈ$CÏ2æ@\°Æ4Š!¦GÒ£º£^òÚ´Hïh¿ÿîñíTß0¹a¥¼½S\S+,mSö†-ë—¦V/Jãf¶ª½äË7’×5‡»ûã/î‘|v¥ —-±#¬=5žè:™yó$5Âá¸@PIMfŠ_»4yÿâ°lÞšZ4)ùÎwÁ,ŸI5AdÎè,9û+I‡XžSüÿºm+À®°½PÂ%•EDy†ØËJ5œ¬§[$†~ùÿöžbp›ºfé ¡ÉŠÄ‰{NyسÓÿý×Ê»H“BdCuZ×txúCßžc:PZâuXÍg¶ÕIˆŒ`ˆ^RQEà8¼Ñk\ߺȟû gî'g4§X‘,EÌxÕæ‡56»®K k²QÐ4†–çWGÊñý’ŸÓ¬í|WDu¿E³¯<ÌáàEs.4ÌÓ9ezÔÄ$Æd3u™õD_ÞÙÏU€¿B¾¤MÙ±dúD¬âç'–½2ܬëpwíÑ[ýGÄàø®Ò-ëD·Cý(\”H€ŒjÎ¥ÌÔ}©3zŠÄÐÞâ´Uy¹fÞŒóªq 'Ǧz£a²Â3û-RäoO'£iÚ=÷Üóä“O€®ë¿þõ¯ï½÷Þ3‹>úèœ[‘ŒY9ÐDÍBÿKHjXàøtÙÆ[”uèc‡ùƒ1• IDAT¿æeTÈIÿ ÑiZxËæë*|÷ÕÀý+|éÙ½­óO~TYÈ9´ îYuûmÿ,òWMÑSäB‚¥¤ˆ@º™ÙÓÀs²#:Oæ›,1“Ƕ̒…4‘‹Ô˜ƒ“®ª=ƒU—ø‡¿qƒøè³É|Ý•Mó,Nßþ3£ˆ5ÍÚŠjù`ÆyçÚ0CI ¥m–€N#Ö¸jùH¬a4©‹Ù±ôàPª£Y÷WMŸ'¸<¹§ÇˆQ&”qƒ®—xÔδñáWÜ›×Çg9á°mù<ù‰¸ÏJ˜ÍêŠÚé¯þsó½[ø¡Á9â œç"Gâì5¯ö˜~¾ ™ÉP=¸Û¡¸ÊO¿˜yò5æ±w‰–RÑa–Þ9^qߊK+¯©N̉{gË |ó&xkøîéÁ/!n\€Áˆ}Ë g=ôêI#‚ æËjGì¶ãøEucµåt\Ú«–. ,è]Õ@LEíÞ2ÔæÈ$§\Ñ^ìnÙ;¤-œÇUxÑÔ '\«=S'‚(˜‰™Ö'í)›7Õ §ÝÉvèõ³×-›ä”о‚ ƒAêƒaš±“s¸.³N\7òLÕùƒ[[@‡+ªÒ‹j"!û3®ƒ!ë²²ôò¤ÚgM¤¹4/€¦È¹dŒBÔRsdB¹ª.ÍÐr]IúÝž²ãc¾‚â:Yƒœ*ÚT$tÖHF$ º6ÛÃ*$‘v$ÐËvlHX¼þºEC-zàþ=W4¹……UáY2•D´Z†É0‰¼^a•üÖë“f˜6ì‰q\ˆK¤†©¢™PJ†Ö}Dõ<._U»·þ¨á´Ðݱ‹§Ñ¯}N€¸hL¥Œ|PkZB,40àù¨<Éã?zÉj¯ó,.‘Äp,’ ÜöéÔµ¥™§w•œq0;1FÍÊV³–ù³óq)òWʧ´Éœùüä“OΛ7¯ cÎýölp Õ$„Œì„H7H9UUÃGßDŽ? Ù˜vê9^†¼’ ÚùV”àë¿ÜG#ˆ©é–‡Žå ÇÒsǽ} GÜÙqÛ#G³:·{siåg¿÷•Ë;šj¼Îú~yœ+4ÖÒýÇuµ ‚0e—þ¯íѩװ4~à„Üqß=—VšÒTÚ~åw\dG!³móMŒ>ti‰Ý^~åoÇUn÷æÒŠ[¾s×ÊÆªÒæ{w§Ão=°ºÆŠ#B—¯þÆ+ã2ðºÿ#áü}(R¤H‘¿nJr3 úS6™CñXíêZ¹ŒQ•êØxã/Üy½Ojš©ñ¥ ¹÷hžr&trôÖè]·`]²Ï’om°OħìQ,­°´RëMojJ½3áZQ)_RžÏ§óÇÐÆª6ëÆåRšÃ_ÝA&'+´PæÐës0Ã¥Š!òU‘“¡q‹Éh0x‘||_“Í ]SïÍ0É„“S‰9 V:ÒYfJ¶i¤Q6¹ìÙ~N@:Oßú5ýÁ°õX•Lê¾_Yž|Ãôä[æB¡˜æì®›+W9>»\n¬¦Úkgd ,óåß0—Û8†’Ú*C7ÕEûBÚK½ö‡:ëzƒ¸“Å+­Ó“‚ñDr"õYµ«d ·Ùºæ‰á”1š5Ã9p fÆÓ¿ñKôÑ7õF·rý|þ–†É• ŇïOõ¦ôÝ7æõ®lUcÈXaÄÄ öCõÆa .%å^[º¦ëšæ±N]öÊÐw.9唹|F|+TõX_kˆ7W™755±(+êO_6H±Ö†¨ÎPâEÕá·U¼4;ö_ÒјlXÀœÌ©Ób†3zŒÙèÙÍM‘Õ©˜^rà èp¹Äñæ((«Ï. %OìoŽfL$(õÈdPb’ aR¹{]/$6ŠÌhb õǨªîpùO;—léo4bù¶ž2‹L2¨Ë’_µDîMããá¥75‡EßtåÔØ`Oº­Ù³òUd® f¤º¶á"¯ÐIÒ?ÙæsÕ{ÖUsË«°¢-;œ=4š_•=9j€œ€_ßþ'r¦)r¡òém2?üp]]Ý™•uuu?ü0œß&ÃZÝ‘” ç ð jzO|8¢åÒ‰S1ȈÀË èHP>¯ë* æ+üû•N·/à_6ä¶üþ„üÑ'_•®ûÉ7Wºµâ?½A~õñNï ߸±š ýë×»†÷çø£O½®\ÿ/÷-¶`„ïòüþÊ©h?Ä~åû^¼ƒÙõÓÍ+ëÝ´û¢ûž8Ïsw^ûŸk0 `îKn¹ªÍE"¨¹õóÿø9û±·ûfn5WŠümRˆøÿïîE‘"1<æì˜@DŹrKÀXÎ{"ãÚXÚ݃´âªôÆ[Ù,XE«“INÔY¦Cê{ûµ‘“Ñ¥++m­$QðÔ¸ßß/ùjg?…`X%óq‘²½ ióó ¦‘5ž®%Ý&B<){j¨5E[‡î3-´Ä+4kPïØº¸!×P¯XÛ¼.¶¢-Wá‘R9¬ÑýQ(Ød>è¤ØÈŠ¡ç–8“ܦØÙkö…˜Bíð—i᛼7Pyëü ‚ãÿþ~é Š5x¸ñ`T}à?¤«Ö k–cÀ´ ç^Øi<#fŽxNÅÙÏ/5SÒïªq ï #Á@~ƒýÐJã œÆrÕ‹—3‹9('’lŒiLÑ¥*J1¤8š›v»zf·ç÷û Ý0î2çㆥeâ"oà#Z\(È“ )Ú(MV5]U€ ÙWÞ•þí?†û£ôö€¥ùòúî-ýÚçä5ˤŽÙíPe„¡!í€À²{áP 5\8P íÊÏ>÷P®ªÍ0ôôœ¡¤Ï. Ì7G÷Ê¥høÍ¸ÿíX³¤QuL΃ c¹“rj&¯V2¢›]ÆÌBorË@Ó¹ÿý„ÎȪnÌOß!9“‹INžY æÌ Ä$,°cCüÂËR"…Ø$„8Ó™kç\êw »Jùh@ð%4ƒCJ” CO_—c¼³ŽÈKTw¸üáÛ¿I^_m=þùæ£-î1:3ãvŠÈÖ÷•'žWüÈšå§;#ùPÊÍÉðyÈ9Ê@$ÅüÇ{¥–RËeUÜòª©$o¬A %g»«xì|O€Ñ05gŒÙ¨§æ>H‘"Ÿ>âÿ+_ùJÿtüYÿW¾ò•‰ø÷x<ù¼¹I=Ÿî 뻆«–Wè.V×U9GÂ9$%@J$hêüÉpp‡ß;e{¥<~Kn$!ƒœÍÙ¼S/SÊÛ`çÆã`F§±ðËG SY£œ£Ñ[8b¬¨³Ÿ~Ò#là ß{zGO8/Œïü†áéÛnùõÀõpK™õôFZòÀ/7_âwY,V{É¥ g³âL›Ì\}(ò7H1â¿È…C‰ ]ü¸0÷;ž·îO”µ;£{Õ‹ž­Òú=ZÚíŽf"ù¦8yéÃà~ÿg„ëd{‹IPè·÷à¾ce=„’úÎ>\WÅF'?ç! œèC¾uËôƒ×€ç›í#ë+»¿:¯k0¢ŸˆÚŸêœ·g°j(ê,c31Ù¬Aíhä—·HO¾aê&Üv±¦Œ_½0½aqEÑÁQtðWH0’7»ÙÙ•sš©‘=³8¶m¬Ÿö@+õ(ƒcÓ¯×á„ A/51¨—,1 Ñ%ÃGÆâ±|÷ÿÏ_&üUÓ#TÖ mX"¼°ËÌ X4c:8n»{ECŠ5öH)%­¨]×q,à¤Q¡…ê]LtW² ŸŸiYã0x™½ä+[åˆ%i®Y_ !ò"Å‹äc{léË«úL”è2£š°â¨9„cã¦BŒ…PpY³‚ãÄÀ(ýÖ^ Áq»›X¿©î ­¡ó”õ ›C´ˆjD¸Dß_ŽŒPÈŒ :;‘ÊiÓ·D4Å ¤q+;;žŠ¡¤¶ŠÐuÕáÝÝ ∸Uhß)´“(ºÆ5²¬"áH+"xÑ\«g¬ÖÊÕÁ9Œ¡ž¥/ÆOÍI¤¦]¶sF»!š l_—è)ódIÂ>k' ŽÐÝ ïI%uµ{bA?r˜Z4ˆØÎT¹á%ª;Tþ¯¿ØÛhM¦~l}é -G[=cg§| 1ጘ©÷ÃdT¿j Ò1oJÓŠ:}P®®3†Ç™:L’ÄlíaÆÅ¾ˆýç{+Í^ö¶y¡å•Óf|Ö z­j$1ËÁLñ˜äHÒpb’òØE(Räo’O£d 2æ©§ž*,ž±Ì<õÔS13çVn·;Ë‹òЮ#Š>Ýk^ EPœ¬´ê>“NbÀ‹ªÎ?‡ ÄÃSO 1<˜6VÚ låÆd_xêW,†z“l™ã|bˆ°•›rã©©‡ªŸÌœãî…Ð¥«¾üKˆ}#…}"³M‘Óe‚!ì_?ûýÑ[^î§S‰àο«*æ++r^R©T1è¿ÈF••CPˆæfÇ0ÄëscMõ¶L/Rº=Y #мؘKÉåT@×GÉo?fô—©›. ™P1†zc²õø†éY»Ïyl¿…0ÏÉ=ŽÄæ._ÈñðüÔ_5ÇCäšÓ‹Ý#7·ô•YrãIöùNëÞ“†cCn>O@G#ÇÆìÞ.¢³gj‚LWÅ—(²u±rÁT¤G\§ ÄŒÁzJµò(E£Ó¡ Ç'mM¥Ó¿n–Ñ·Ÿê/ÓϪʩàßðm¾8ß´²¢œÌMtMLFÕuKLn×ì·°¿<¿a1ÿôNÏk'+®71u.¤H@•7˜iÐõýs h É» Ô¬w/Á»Z¼ÙU+é% ˆS#ÈsoêG'œvxØý/;믛7±¢aLV´PJ`pm-ró)m2g /·ß~û‘#Gn¿ýös¿š}$Eüë;û‚Õ6½Ê 9 räUDÓ´œ¼ 4EtÁü›>ï±µÌÖïÿbo\Q“û~ù¿ßf¯ýl‹˜Ž;®!^ùî/öÆ%þá/¾»»úÎŽó9n3í›7hüå¶ öýþgÛ³á%žýþŸù /&(r&ðî¯~º[m\YC`f“ÍΩϴ|Fb*šª,8(áíÿa¸8)R¤H‘¿!¼–,‚ ³‚þã‚õÙ±¦6g.Šš/&z 1Í…y1žØövÊcFCøK`ë>êûŸã;š§f¦»‡ñ5U‘јºd1•OE1ÊÐÙK¸}²y⦋Ôç¶á;öá?{øøÑ1ìž«Î[ÈÜnTrÁb•3¶¢~ä¾%Cf'™ˆ¼UýÈ;UGl\ž¼ãê\*‹>ô<Ë Èè¤îsá‡ÃxK•Z¨o8Î{—ÚgWŸ éžj†kÙá„ÉuV, ËÀÚVmp€ÆýWW„öÃWÖAuÖËŸy|`];vëÕçõ>0Ûˆ¨Ñ+'S.óTBähš-'ò5öȲJ%”ů_z÷¤3šš~Ñ‘zÞ)Us] “×\Ämºê ¨[æÛ—äIzÊZVõÉŒz$AÚX9‡›.)EqÌiL» !#c ë¿Ý?x<þ¹Ï¸K}Æü×®–Ÿ{CP›ê®G°eúK2]6qü|=/à&2ãÊ”Sßë§Œº®§µó–m)xšÀïöU[ó!s8p4aúв>ÍÔøÅ€O K:ÒM)iÞ{}œä\ i¶ z˜ò9´‰¼tÚ}W×™tbœ¥Õ”#óYÐô‚k™=32ÎÐB”*Vdú“„#‡0ã;r¤mÌç_Sz}Äûü â÷Çjà—º}þñVß8CŠ`ˆqf×ùΨ fÆPWõâéM"³Œ#º5?‘”If¦’á%êõ€ #ñ ž±JkøÜÝ–¸åÁÉÙ÷ŒÇ.ì&®Ÿ÷qFË"E.l>Mfx衇Î|@äìÅÙê ¾ðòoúðí[hOÒ¨d"uEYGTMÏË€“ä{ùeßx|;Aœß²AUÝ|uøÛ­¦CXý¦¿ò¯ËX0¯þù›?ýò×x¾—ÐíóoýÉ›¿¸Ô‚œçwXVÿü¥¯ß¶yaÝ?¹íy ÓJë€#ß»ý'· gt@íMWÜÿÂï¾Tàõ·}{Ý6{°›—ø±z¬(Žœì ÷¥›×Oöªm§>è]Û†„Ò ÀÜQ“±œå7Ýu_î蛘Ð^Þi¿qu²Ñèä ÙÞÉyNŽ™×5Ç·tú¾pÑÈÙñ'¸&âb”ϤO¡ñŽbÔÅÕúÓ‡M¡*£›‘jÜ<rg;WiàG5ÒÞdPAz§ßó_×›}ªFâó{Ød—ÕHQµ—‹±ÿüCú¾[’ç»ÈçR‚‡?Z 0iÖ5mEµœ?.Á]ÁÓ äÙ#þ¾ ôÍÕ£–682eWysCÍá#IÒ4”$p£_껑±¼ši¿Úyèì=ˆÉ3¬/ÈVxEŽTu¸G ¼‰“) ™Çó鬫ÕÚw)õB:뵜ÙRÄŠÔ©["iXãØ;²•YÚ"¨ôLN +ì¹SqLSgKe,’¨«|½ÿ(i—¡úª~N¯c‡9Ô2ùZ‘A•qÙ¢' ¦ÎHÁKÔ/ŽÌc-xUv¸µ54ç>YƒLð" ¡$“åñÁRîž{•e`2¦}êÜNEŠüUði”LÁêò«_ýêcçð›ïü;móýo¼øTÿËÿÔaãºD ªªÈ¼NwQ¿ó«?îÀ슧&†¾7+Cbê¸ï™£÷=3»ñ™0ªõÁS§Ÿ ¨õ¢x­÷Î4üyágý_ZÿÃ9ŽJúïz¾ï®çO/Vœµ[¢òÖÇß:½ü3XúðÈ0œ¯Eþ)DüÌŠ\H0¤Øáàbù©©bA¦_nfè<6Þaê-¬LˆÖä–5̉!ÄK(ßù­ ¥ÈK¬|$95õÃÒJ(†£º^åJzÔüá\ÝÐaå3—r(Íîì7×¹sÍ®AÑõÕZßúËß=³cvË Ûq Àgç÷ž´Ï?=@£A@Z³âZ êJ’%=ËãGûé÷{1DW˜‰åÒÅÀ¦^d‚N¹ˆÏqÄ£`¥OCwŽù®ª›‘„ ƒÈ¨þüdsi|`wеyItD¯Ìæõ/.Ïô Cì…÷^ËìH ^¦?UOkŸÓ˜a*0Øyغzaj,J•;r… ~ù¼àƒïÔ|Ö ËªÒÏ쯺{õô+‰Ï“‡®SQfieúî‘ï¿ß~©àªvó‰ÛóÇÍB2`úãGØ&l ²®Tä Gß„ôÑAú¾ýU?º†ÿúºüÏß&òuʯ¬åNQÇcÉxcY&X¦îØ …´4*˜01¥Z·3Öš¥w¾KœÛëlÚʃµîø¿ì¨ q·=ˆq“ZžŒ9*d{©-hûhÐ>ÐPçAGÈuÀ]VÂNœ½yÂàö§öÇ*X«,S žÀDÖTjÊãq §©ÁC”ÿа½ñÌ&”’¯ˆv'Ìå$—q§‡¥+b”g<ï=‘q®õ <<^³iõXLˆ8žØß¼¸4Y¨ic dª–}̉pyü•nÓ/nÏ«\¡Î agšµíôê±áBô¬ëÁËôÿwr¾Ñв±I¦Ú0c¤ÀË4/QÁ´t2–Ú^^auEkprVƒÔ^•1ÎåZ6Eѹ¬È…Î'V2 .|öÙgÿd›ùEÑkn¹n¹óÝמ;øÌwXÂ{^*Ñrÿ׿ýÓOÚ™"EþZðûýÅÄeE.H––ߪ*|þ`¢6P×:eÌÔhŒ—¨·’ÍÛ&p1£røãÄš6ìƒ$ÍnZBI¬7  k;û½žz»2!ÇÓñÏ_mIÛ‰áì.šö0µ•ùÎa#€>Ͽي5E{&áž+ÕÁ$“Ct=•™!ÆR:„R*îÀù4ºÞ3•ÎêгšÖr:û†Ï2€¼©ºО0Š‚`ÓÃÌ(bj f„ð˜¹\Ãi;PŒ³ÚeœÞÉ2@˜©Òø©í]¤ÆU–dK—A'eB_x»y-ÿ£—l­•3” /ÓlúbSŸ“MkPë*„·Xöšà¬T†–ï^z²«ì–¶ÌÒÊô+‡ª¯[4Äç‰wºJÂ9bYUæîUý0u`J£9˵y£ÍnáagWÒ‘Ê¿\76Å”œö˱!5òÛIú÷w½ìw~M"(b”øxœÆÂ15>^Ò>ñ¼j5kóþÜÙ}žéN¸¸¾8v›7õÞ`íŸÞà£ãäC€z|_Óg 2”$G†’8¹«,6wådo6Í­•>U[™ÙÆ)¦ eÚ}KÄ©°µ~^úðÓ2+x&DˆÂ`Æ´Ô>(!FvlHn^jK T]\hOÊùòÐÑ„µÊNú×rˆõ€ÒTM^ã>4sn,OÐ C"me“µ®øáaÏc{–”¥6pûy»ïcÎâNï×Öeà´›Ù{©WN«+5ª\D“r­uì”ß  Ð¯¶”¾n¹p$iã¼9‰ÊˆTJ$»Ó¬í¤XiÌêº~yiÄBòí3|N¶3Ÿ$Ãñ}ƒESäÂçÓ(™*>뮹uÝ5·îßõŽIJ_¿î¦¿È>‹ùKÑSä‚„!óA‘Œq–C‘²¤JÞZvÒAOßêûuÕLÎÈM~çE{S ¾º•Œ ܪùÓq&œ€}÷Y×ׯÈÔ” ‰cÙüûsÀ{Kq&¿v¡^áH£&03j‹#"FYMpórí…1…TFûÿÙ;ï¹ÎêìŸÛÛô>;Ûg{‘´’¬®Ý3, IDATbU˶lÙ¸Wš+`l'€! ù $„„!6`L(†€›Ü°±-WKV¯«í½NÛ™r{ýþصVZ­dðGš˜ß?š;·½suwæ=÷œç9Ù<ârÌÎØÊKf_4×€ þó;ø7n¶`&u3@æ§PžÞ‰×øô´ÜƒŒ’§+û@¹*¥ûÔbß´oC(g1­¹y¯ãƒ9S˲¤•4®„. dèšÂ^ýÞ â@œ˜;ø»“5kC“¾Ó|Ò8Ƹreöñ7ý}9âs—J©,ËÑ: `gRTz¡ß·)’€ÇvÔ€i­ªÊ_Ñ\E—¾ïù¦ë€¶¼<ï¥ÜY1øð¡E7G‡»^oNOÊú77§y»´Â#î5?s•ºë$L呸4Ñ=Å5– aêuZë/Vw½—s:Éêòs?þ? 7š{e$¶i!™£õF“túôzª99„Þzi>àÕà‰#Ñ¥ÙEe1Cדã2G{ƒ•.ç´s¸=gqcþÚhlfÌSuj÷ívO :³9ð‚h %aB"üʸȅèĸSNÖ\>³%©Éåã‡UÒîŠ÷ª´}¸rÕS•ÕéV— ËÀxÖÖäËš @K)ëêG—U’otD¾;qëz&9Gq`*gK)Luɬ”£ñÅåÊñQj¶•C3oJ:íÄUÅ¢à`®6‹P,¥…–F~—¥tÃBy(!óvR‰:’WTœñ«‘¤‰wÒKÎ<%‚ "&ÈD˃·O‚eMa L£µ¶Ì¹Àù:™ÿTYʥ㖡·ï{}âÈkuën‰¶®JO ¸Ã•†¦"(ŠáäÙæýEŠ)Rä ,©,r ÛF«ã*yKå0ƒJ©‚cÆð±wÊÓ¥0kÅ¡ÚÞÔ¢†aø ÞÏíôƒe‚eY¦±£CþÎs˜e0`™A£sÜh*±j™TÖÅF…Ê©0!Sõå‚'lò&þìëÔ¥-às!€PWœOî¼¶TæTËyä&ÐR8Ë#àµÈm±gÑÍÕ¨ô~$“2Cµärÿág…8­´lHt^_Õyöy÷ Q±´,CÏNöóµv?Øõ, Œ’·\¤€ƒÓwÐë¦é€[€7'Z]”|¶Ô›cŒ–2­o?6hGp<%Ó¢Žs¦’Þ—®–i¹ýd§#”*((Ò¢p«[DN-㨣0‹Å 59Ì81Éܺ$´+;úKÞIÚøLîG[†›j ‹«óÿ°ÕßTÆD"H[‹<“§¤§lœ—ˆ±$)Gþå)ÁÖ° ÝðpF™[l”ê;Ë¥Ú‰fûºìL9µ$/­ŠÉ$ÓXW™ cf*Íž|øðù·Y°íÈî7·?ú@Øi6VWlXWé©]ƒŒ’KTúµØIL͘ÏK/KÇ:^z¬sË÷‚Áà:¶"Eþ'STü¹PéÍÚ,Ó*w‹=Ùjg’!äd–ýÍh3?œþXsrIý¬=±u§Y*»¨‹Žlíªß7VveÚÔÑÄ\À°k?Ü~5|&€õƒ'Ä[orµ„ýVŠÕBG ÜæºTC£8Ƽj¥¼»ÃuãºùÍ7N1¯'#iÉ$nÍ‹d¾³•øú]ZçîzTDñÙÇØfw›¹Óc“dyNhžPœ ®œIÎtíæÝd§[.ÅŒÊ(“&]³AÈÉa¼,4;¤æqÚdŸmsSúeáùOâS9Ûwv”~¬ujqõTršÞÝáºqmüX¿{o¿=iR7/É­D­¡QzÝr~[—·:¨¼ÕG^Àü‚± 3c*¹Å!aš€!–$ÈMHºÃ.1•Íxé‘”¯K¢ÿ¦ò€@9¿?¾jﮑº2ÓHô<´Ìs8YõÝ#[õEõ2Æ‘B‰¥¨†¦ÅÚɉ‰ž^¥n1ã4ù*ÿlPw€¤Ñ¢A‹ P[ÉõËm½íÙ#è’ ‘—m6±T"-™°6Ú:9ˆÜsý1!K)Ë*âNÆóäÑè¦h¢ÊŸÕBã–-CD½nOy®C©WíLtiÅKê`¼zeéñÝ#­[IÊA©øtÖ˜Jà ™,k€ªö·™T¯Âxõ‹ÖzK|Y!ŸÎÅæ„WÈËJ§IS=»96=Ù—\y5KkÕáÜn±oܾ»=¸®•/+A @ËþÖVEEšT]G5݈(hªBe“PæbÞÎ6t”åáyuôÈÀç7¤^SÒhA£‚CSÍWûS"1&Jõ’r¥‹€55)ŽRYJ=ÖEÀ’š÷cÚ,[ãZØ»o`¹m=±Åê²"8&’ùÔ§>ï{”*;}ñ§?ýéÙ‘ÌÐñÍé²FÚº Ñ à“Füàð‰ƒuö¤ ³eY÷Ýw<öØc‚Ì[\p/2P_¦5bWý5dǑ셚HÍ–JO+N“–ăÝgš¦6¸=ÕýnZbíöóyÏÿѱRO¬ |ü½³Þ_ódêÝÛ}Å"Ó"ŠÙ˜"$íqwkp:àÈ?}²îîŠö*gò屿Aݵ¸‡Áç?}OòÄX ¹h‘G:{Ûâ"¡þj—ó/¢IDø—'ởŸÛÁˆ›¾gW~Ý_º`~c+ú··çdŠð!b)Ä-;Gëk›³Ï-¹ï’þ‡Ç1z¼pÆ/‹(§õKwÙ¦Øò°ÐõZëÕ½L$(‚5-$ŽBY•Àá±é…*¯Í˜V¨´JOj”©›%¸¼¶ÖBIÀx±Óž ²€Ý³Aj-;Íz˜‚H-÷ü¡ð}— ßRŸÜÚÓ0¢bO‰~ju¯’(ŠÀû“2UšžÊ5_ís- ºÈ‡V¶uÀ‰Éï„vô]#–„:=øxjm%[XæîßÒÜÝ2áûÍ¡º•åùEe1ÄPqCÅ¡Ààpï­èÏž½ýê1§Ÿ $„– &©:ò•S}™:~2WU‚¼ÙE†©¸æ7s’‰ˆ2NWc ‚ŽR€…‘€“Ía„“B5¨ëTKuU’%,CÓ AŸ #XJ¹¬aôôJ³™÷”ŒÙJ3´Ÿ‹¥]O#ùlùÁßæJ[§ÃÕÁÎ#¹Ž8‰eÆ-Ë…£å·Ññ.ø¬†–qËÇ«ç|€9\ÀýŽ(…J^C'ƒ@ 5ÜT¯¹Ñ*‚E!`N ˆµ Ë ¶_+¯‚Œ^Í•—›ŒÃ7™GYÃ5P òm0%QYƒÔ Ä0jé|SPb0ùÒðÜOÄì´Qª—Y8ŒŽ5㙹YIA"¼¶…=ÞîÄo¾òì¬R‘"&’1Mó¾ûîûÅ/~–eýøÇ?þìg?{jñ±Ç[p/’u˜Š¦Žè{ÉK‚˜+݆ʑÒ6kì°xðÇ¢ª¼ú_ Eü·o—n4€ßyWýíÆ¯ûþã $] cŠ)Rä<J²×4÷€R†§|6FëO Ûè–&GªÞ>—²àh èŒ<ûãuêUa€×”ÊÓ aN¾¶]¼ï„cç¾wÓ<¾¤VÈ ú®}´¢:ÿúö©€KW-l\w–"ß%mÚ`ÜUÊÞRß½µ§a$ǼÛW`(E¡ .S†êQ¦Òp’­ìt¹9ü™] †c>[Ž@­§xBV´L=ú ×tJ¼0ÞÖbOÕÖݯ´Ä}?;Ð|uùx…/©àp,\½yêUëswÊ€…É.,&çj´v¼øó5Âן ï]‚uk%l6‘׈´›ë<5u£)È[†Y,Kµ³¹€W×þñ?°ÏÞŽºì(G¢`$nTX¼®iºfꆥa¨¯$[M„Ÿ!Ìllæ|çúAØÒMÿ÷­ÔÌà ”¤g 0@0Ц‰Ü;_¹²Áƒ#B—müҋ〙Ý÷ík£,‚²e›ú‡›#UŸ;(c EŠœÎÀÀÀŒè¿H‘ ‰w{Ê/‹Ìz¯*½=|¬½¶ MLteÐX ^J.ï*g6`)uH Á2{q°ÌKVÊ08鸮YÚìÿm_ùÞ ¦­åŒÇG±i,èQjË…îN%i²röP*`IËQ S$èpyóäÁ¸WT)Xˆ]ŸÉÌ@h”b`Ƕ¥Êš™¾ØÎ•ø±ˆÃ`PYF(À‹>Íi—´¹S…Ótá]ª/BŸ!±8Ô‰tͶ5;÷«×¹M”´K³)”¶F9ìAwRõõ[K~üj9Rí°÷oh-®LÞÛ6™U)Ç~ÞÛÐìϬë±þçáõÍ[ã7®Kr´ôH]‰ê®×ÔM½Õí–Tn©ï®°ëoOzvOyê¹B˜oHïËêv-ß§¶]])¸Ž“£èÓƒ¾ ŒSv÷–wOa·nœ Ø4ÃR”|•sâþy‚À_Ê,í@ê"µùkÇ^›,oï+w'“v9ÑJdÝ2dûž~îÆè›–Jùœ~ó2¹ÙŸ9´uµÃ—6Œ‡8í“Þ±~¢Ì/—•Ñ8y´—Úu˜¼ÿ{Ìg¿ƒejš.ÊJNP&sêdÁæ‰NÁ1¬¹’–ƒGðáS}û¿Y¶uxÌ–î *å“íÞì¤MȰ¹qËâË®é]ù )Ôèë|#sŒ¸…ï´ ÓÔtjø(3Ñ¥ÑÑÖkfZЊd˧ƒ=¡Éžhß®Ö#¿ièy©jl§M™v‹ ‹$“Þ&‹µ«v?ÎÐÎ Ù-/‡»[j¹H¥fï%ËÐ…lZÍM¥&rÏu8G»s±A¾½I&™'Ê ±ÄeöÎëC‡® ª· sÚK+T>ÝàR® ŒïÎF%c~^ÈIÈ‚¶ðm|ŠšRc"1;M*Ȥ“[ 'óÚ>ª¹¶Éù“àÃD2ðè£Þ}÷Ý3¯{{{g^Ü}÷Ý>úè¹vaF‘ ƒü¬Ïºn‚¨˜–*²¢¢º $IœóÄÊðS/ú¾ÕÎkém· |ùÚÿ»_°ò;ÚòPÇ5ÏÅT5öÂu]qÕC;rÈ£¯µ¯zl_×àðÎ{¿öÀS€•ßùÅ뿞úôάž;øeë×ÏOž#ùŠ8Výå‹}¢iä}ÍýË;?ûRÊ´rÛºþ›ùwgµÜá¯Rϼx®}‹Y€Åÿ÷(ŠùcÒ•¤—UÌfBüö‚e™×–NV: 7´Š“)¤Þ>r¹·£OöíÎ-’MªìZsþ“mè–u³!ÁXš)óI^*›<нåòP¿Tyúñ{3(ÇèÛö»CvMJ ‡[г|fTlÕV XJYQš=6YpÕA9–™‹0Ä"I,™&ž=4ëà<8a»a±äuZnR³(–1 §öbÚ窀bZ¸…K @–Ž<õªrÛzäþïR Îêr—0—JfÙ¤Ä4„‰žib÷@`—ÜX) ëâìE:ù´No©¼­¼?›?÷³P–Çþñ£É›6¤N5=äh-d×SÙùÁŒß)lÚPÜ 3ÁLcO•ÛEÓ9•€nïÊQ0²'ˆ¸äáÉÔ¶Ã6‚!JìCÅþv»÷’˜çü–Îæe1}Q­õ‘ªqàå©åYÔs[K¯ê"ŸØ˜ò4ìg†ZË•tÖ:zr~0óÚº©J‹aeA™EqѨ$¢Kk­U—ðÕaãòÜÍ—æoÞ,>úEé²=ìGþ[úh×|¬ja—éž‚¼¢º…Ä4÷¹Çë¸ê_\ïÃqÏš‡¾¹…þ7ˆÇ~ñ[õúþ‹õ~‚ð¯ûÒ·oÔ~ûÓ£¡¿tS@G¯¸Â?¼gX=þ²~Ã7¼È‰áÍý·ëÏQ)‹ÖÞvõ"?‰ Ž–OüõÇ=Ç·õÊâ±_¾ŠÜô÷÷-ubDà’¿øÚ%\±ö¬ÈïI4---ýàíŠùßÃ`ÜÕàfáðÒñZ°`0I€“Ó›JÔã^“.uu„Èü.¾yP© ÚôÞiüëwª§,•ºlÈ#=i•ø`myrPó ª•sç0ÍG½ 7n˜ºlÙtއ“#p„fVÆÁ)Sn¦ ê›Êô”¸ÀÃ;£e…¹œ b¨4b½{ŒýÚm³¹ˆcÃö²€‚àN @Ò ®ÎE2CëÒœ©À„éósb°ï8ŒÝ¶¹dµÞ4.º¦‰Ôy\›Ý=•³½p$|ÓÅÓwmžºx™Íª­ÞÀtúñ¹¸hoº.†j~÷y¾õ±ÔÆeYŽ™?­ È] |ÀÍ-“ovû€Ò•¨Ôûij/É`ÇDû «IÁ('™`E¿jwXýÉi&Á“”ØrÏî 8¶nöóÓééøcgêK¤ËÝ;ÅVÚ…_Þ2¸‹jø6ÿç²Æ¶¦÷.m7Zšéˆ~üháî«0Ž1Ryû÷÷U|aÕ°ß)ª@—„½—¦iÍeC]vS2˜÷ⵉΘwEðöË™%Uçt”® ç~½¯býYï³´°é}}®›ñ'’žæíT«Ç‹¥ ìË=å·µØBáÁ²Â•€=ÝÞÖ¨…AÄ^í'6ÔÁÙ½g0uÍÌLèž*Ô‰ÖðÃ¥t¢W.On©+’òæÓÒeuÜ’eÔ‘;õ~õ•Ö/_6i¼*Aw[VJЕŽ1Àfåhì˜"[4…Ìï½³ý=¸mǘ[.æûÆàWÛC×Ë‹…‰4O IDAT«§æéôL)‹J'ÃŽÂÞ‘P¥Û¾¨tR¥È¢–[Ðãow”ß¹¦2g÷–úÆ-Ëš)3“Jš §'_V‹  i*€¢€a€a‚’é,çõò¸sÄìÏ»âþî"UF,­ˆÈ&M.­T0‘5$£9:%Jå-E¶ÞPWù@ætÝ”µi,ÍôQº¥k(¥¿¸]ënŸè‡u—š¨ÙÏÅ`ÒJWßþLŸpy¨Ù›ÖF(1Ñqžcmj2á«;É6Fæßð'G‰»¯Ê/¸o‘"Rñÿàƒ>þøã3‹µµµ3!ÍÌ;3™™³ Qцvînw3жtD 0Aq²ÂeÉ:d%È+†;÷_ žHÈ4(‰œ­ÂCá.³M÷&h&@‰÷Ls¥ÞsC„»ÌÎgu”ôdÞX¨W¡|ü[ûÛÑ/lï۱ąˇ¿Øxå$á)·eûS4–Î ì[¤H‘"<‚L¼;B^¿2 ©,÷½Ýå_\7ÊRê嵩½ë­ò‹­…Æ`ÌYÎJÕäpZA'+Âo¤¸%âDKyn0îúHmáµíæg¯C8f6+A˜ûÌeiÁñ;.™Óñ»´ñµ5Ü#’V°É¯h’¨>†ªõ˜—ëãB¨”;Cú?ϾL°½Ž~çÎY‘ã`Ìym#`˜… @`&Ap”Οr^cI„ÏÏe`RŠ§Í³¡GÑ{ÖËc>ú‚þoß+Çsk[àñ×½W­Ñÿ£»ò «ûü^ú²ä"¬«²ÛáGã›—ã;ûû%îݤÔÝ!#8ÿÂ`ãR-ÁœÕjsv´°é©œÍïœK¤PºìÉǾh;ðOC·Ön¾ ip»±[K{^ê.òdíGñ‘Ø´/ÄäcNEP‚(±žÝç#bmcbÁÍ¢«XzHaKG;ß»ˆí‘Mæ„R+pd ——dò'ü5-¡ÔÕ†ÿýï?\òŽèoÝ·þÛŸ–Fð›ßïqIX2 ªˆ:m¨¢Â9™ö~äÞ›­÷ÿ§Œ%u¹ÚrñáýuŸX1|*ã· ~Gá²:õ­Þò‘éÚ›ì{ÊþBdÍ]J_qkoŸ=RÂKaÃtWDeœÎî]L|@wø$™è ðÜl»NQ£E‘zy°´AT÷Ly´êPµêð4ðɪ¼ÍFýêÄýÿ0wn€ÁçÏâÞˆØ ~C¶IÁ$‡©°€—q°LÎÔT-=ž˸ڲNXŽžQeç!dÝRˆ„¬€OZéé{=Õr…ÿ$ƒÉÀJîƒªË Zjvô㟠œ²²˜a`Œ »¬™0²H‘?>duÙ©²;ï¼óÈ‘#wÞyçÙ«æŸ E‘èG{cUn«Ò¼ ¼ ²Š˜¦É« j@SD;,¾õ±ásžÛÌ¿ö·ßß“Öé½uwÝÇš`Ûî¾–xñ+ßß“Öõô{ßÿÊóØ5÷´qç8»ä®-æ ¿7”Þß|÷­Â‚WÙòÆJ'zâ­>9¬»øŽ+Íç¾ö“£ySKîøÎßŠüžÿE.0õ8¯­Ÿ}êôü¡à׎ÌL¯ƒ.Pd¦èemCæÍ.ßé{QºÌ&ÖW £îº×ÆëßhwZª§ ý)D.GG¸|úg{œm5ʩꀊÝÊ]¼T{o€œ®ÀqTÇJÊ´q'VhóŒæ—qž²/›YܶßõW×@Ø7û¼ëĨ£©¬N9)À"q‹"1̘³æ0C”ç§_Íœ 4§âžW[KêrÛwë_øt‰Aá—Ôók?Úîüdí ßQÐz”ˆ6Á²Õ¡ìÕµ.â{㨹Á>òƒ¦ÛDŽ1YB^âMŸHŸiOv&Õ~1–ý}#59œ¬x V„Êô]]¥Ð—³a(€Ý¶ùb#!¡Ï.™Ðí^*÷ãý¡5õ™¾¼m,Iö¤¬uµpzD´ ˆ¡ÒB ׄQÛ" ¡hTZÁœXMŸT1*Íù—R]¢ܱ¸|­ûWñMGsµ÷×$—õ¾(¶çÊÃs¥qv«#|,¦¨èü9úÀ0´Öw¦ö‡£µVŒ®ªÈ?y¼¶ýÚ§Ù+ J•©ã÷|Åб_ ¬¯»iü¶¿œ¸îÞ>ÏŠu\N_¼y²b%F⊘ºÎ×,µM$Wßšn\Tïq,1u‚|o4úÏGV<×ÛðÓ®ÚQwÊ]µ=Ÿ ½òý';ÑfߨͲ£C²+Î€äˆøµI(7a}· I‡¥T–V.±±ÞYæ7]èd´\‹V˜ÑJà¼öÕ¥¹Û¯²`çäá_!ûö+djb[²e怖ÖïƒÔUëíƒ( ¤uæcI²­þ|á_‘"&'?øÁN½@äôÅóìõÉo<óÜ/ðÞ¶Z晦QÕNZº š…¦%k€“äÛòª/ýô-‚8·âŸª¼õšÄ_µØß‹cu7ÿã‹ßZÅ€c㿾òíûï¾6øµŒåY|û?¿òýMNdá„9 Îÿúìî¸kYíß<¶u—†FÚŒ]þ•¹êÆ;[êý!··yíú2צï?ÿ>ù‰‹_D"?ó™„G‹J™"¿/3ŠÿbY‘ ƒ“cÄ]—¥à…=%+«r~—0ó>Kk©Ë¥¸%µY¿KÚõ¡¸»*4ë6‹ ‡(åèdО³•SÐÓLüÝó¿HE™øÕÛĦe¦«)2eѾÓÚS2bLwÕÜÒØó\_#Q ‘ÝÀ£LsG•A•&¼´: WFéáÓ8c_ÆÑÚàZW–fI& ÊÄÞ8wýÊ1 I P 1G,Ž"$eöWÄE®Êš1÷äŠÇ9»ö~9ËûÊvëÁõiA´‹]±ÒÏv€¤ÓïHµ^Ú÷Ú!çÅ"îl 8ô¼ÇJÀÑNjënÕqØÂ9#+RíLîNÖ¦e——^ø‹"ì^l,/ñæÆý‰c©ÐÒõ7̬Z^üõÊå 9©R‹iw@yh©òý£­tZ;˜ô|¤ŽçX}R&OöPœ—Xü}þ£1S±K‰Q•J7iÉ4"/%ÛF(~ÎKPªÒãkHá¿~·1è¸üGo¹Þ‰<-¥¼#4í+uhÉ1¶V§ àÌçG;‘¶¦… .*ׄ¦Óþ_w.¹©¶ûô<•]ÊÚ„)ßÐ^-›W¾ySM …:’?ìºî¢ôô¢ÒÉØ¤‘õ»ÆóSŽ¡–e “,¹fjÌÕç+ß©Ý hp9´(Öw új*ØC}\SÀ.h§5m©Ø\€EÄÆ”ðüÓr—¹´ ®åí†àRH>÷Îõz8±±ÓwÉ™T™k>«­âIŒwKŽ'§ëCÙ^_ÉÀ¹ ì߇c,°Ì/ÓC}xá8ûý€µH‘ ‰©“€Gyä<‹ ‚aØ­÷|Þ¼ëÏ·õñ¾çþ¦Í•Æ-•@ C×D‹n§>òÙz¾sëŸøÚ<‡4ÄÞöà¯=øëùŸ’ñP-ßè~¿Úu­þòK=_>µá¿ž¾—mãoÒ3Ž¢¶Ûÿýðís+¾;ó{ÍW~7ô+õÌeÛ+Ü玺Š™#ËŠ\0 ޳Í%2GëÇú\–e.‰¦O_[æ:'<3¯×ÔM½p¬ä3ïG2!gaßp¨µ(kÞßí)Yz±ç¤(I¦sŽÆoœßqrt\·SJmI¸äY;cÔP0U0½á›î‡šV†*£Žaˆá>ÂTË•qÙÆìUšK­øé’Œû²€[zøÏ_$¥é:iiph0xuí¬Ô‡"€ 1‹Å¡P˜Ý݆ªy ?UÂÃ%0[Zæòx³»{ÛҘݾ۸ò²€’É 9ºôŽêN/“½sC¾kIçµJjìh'ùïo’«/]»®ðò{wUè™þÈî®ÌŸÝð¾v‚œ©c¹²KÏÉxÐüˆPe?1؉æ›O_ÅRjƒO|òh´¬ñ’Ji¡H®nÌ¿Òåè}_¿äøp& I\ÓŒú퀔£ŽQh¾ mò›S%Ö(±xâ)44„G*YÜÑêz½?'™dW̺õbc¨ù .ŸvÅ{üû³%M…ª·kÆ4{A„·NÀÍWó¤,©´„Ç}i¬y±gê"¶Ý&gý±#Z*£'Ó9ÚÏ×®Ï\Þ:³± ]Üÿäñš‘i®fl]b¸òñA-0îú|q?Í6Õg ÐX#å¿h¿ê«T’RUˆ4¢ œGè^E Á¡Ù¼*ÊXæ\ìâ-?}l(NÐ6›8ÖU…D½Ë Ĭ«ÄIbˆ1;#L©áê ñÇB´¢•Ö*}d[¢eB®˜êIMÝÚ‡Ô”C$ß9'T%^‹— 8sÆ58ÁݰD>Û+¢H‘ ˜?8’Y¶lÙO<ñÛœg-Š¢×ÞvÜvÏ›/=uð×_YêLì~ùñLóŸ᯾ý‡æ¿mr÷öDÝÆ¶€5þÚ7¿¶·ä£ÿVú!³ZEþô(fcŠ\0í¥Úêäd†ÚÓź¸?½Wþ9·úá&/ry rÔÙ﹞÷öËÓRоZ û( v½™ 5ƃµ*ÉÄÃuuOý¶ä¡5ïº Ã$Ÿ&(J³{ó'Ò-,>h0gœÎ泓P›í@²‘òÈY¥~„Õ韚_â5e88T…`pùÊàÉW¡ecsöçÕÊLÄ‘XmZå%–Ý6?ªik4¾ÿª­µñŒ„̱AnIµð×´H‘ ‹Éœ?Pùý¹üÚÛ/¿öö};ß°«¹.¿årÌÿd¬üáï]»ù꘬#ÞeŸxxë_6°2¯H‘"E.$’i|{/zåjå+¿ñõÆô‚ÛDÚkGíFxXM½7¸®ŽR¦äÙ¯Í#Çåmq4F=HrÒ^•Àuµ«€H‹«R0ó¼7¡Wt”+D9•ÌTHçÙ°Ó¾¶¬c[¢Å¡Þ>¢"ÄU•zëС}ør\œ5÷ø ^ÀÁDn\›ÍCS3™`ЦŸÒ”³¤I"–Œ€4}¶œÌƒJ¢†ªÖlBFÁŽ3FB¶gX™]—ÕNí=„~ìVïØè¨l2G¥ÚË=ƒ3aÌ´£.–†[‡ËB U×TámT|X £åêº ‰ “%áÑqxüMì®Í)ŽÖ\^äß[ˆ^í=4sRR•<™1ÿÄþTéªö¥/Ë {GB‹ÎRÓ(}oöú”‰´Ùì—OÕqI©J…/\Ô¾µ§a8 ®n®6=l>wŽìó@‚܆tP[ ©"‡O½éyÇnòS÷†“ƒpè¤Ô¸©™†BF@¥˜dY£ŽR‚ÍCòBÍ»OåÊeÃUÅ´÷Ã)­ÿü!†ÇâISq©)UÒ‘ñ!¡»Gw„Jï­kª"FÜ J†VÃÈϬ¶—úíù°>åzû Ñ×`·“ÚdŽ ù_ÞüÉxI}ÆW^>~¸±wp jƒJЃ“ŽpµóEc¾(¥+Õ£{Hk RC)L‘lŸû´&²ˆƒGhÞ$XŠ`@Ir^!ÁæÆTï ÏflܘÂ"zßô“«„i_NžÓ˜ŽÁå®ñS5›iwÒm>¹­ÅDˆ'‘ÑIäéw‘¦hZÍuÖLHò›‰¸3äþïŽÐ7®;ç)й ùïÏ(¬Ú°ù¿{¿?dÃç·}þ¿{Eþ2#÷FrÊ+Räýø½ë…m{¸¯Þ xn[ÑQÓy4™¡…£UARy»ß1מe`ØÚ5êxhÀaÉrW§R®äµŠ$Ó !ŸròÅL…+ŒXŒ ÕÁÔ°¥«œK;j ”bpùÊÐÉ“…Ú>¡²–VQ"I–T‹'³ß]Y'A&ºÆý9|mDKN3· «ñinQéœ#Gšˆ¡"`QˆÁ òŒÁ¥Íyk®í˜B{Ž`&(—’# +6)‘gJ܃ɫÝ= u3Bÿ4á& eQaï¾ ÇXÙ{tÔ©¯ªÊ£Z”ww¸vjÚºR~kÆgýàÌñu” ³šYP@ ÄÒôY?(VÏÇqç©aXg›î'Q+ÄûbA”@|\.«Ð—9žà;‘;®T¡Ã‚yÄëð³RWïƒw³¼«çS~cÒ_K ·"7•uǘ!IKñ-eÈ1Ú½Ú•~nŸou­´¤&½š<ñޱüòÎýRI¸}å]§_X–R‚œž*8N ]&•p§¹˜îT%(³é¥Aìð€£´mJÒéž¼"íÁË–xÒBZâ<ÌæsE(9ׯ¦mÑ•äKüŒê¡µR_úào'ABQÏ%â{û•ßazí"ý™Ýðõ»µŽ³ÄÜ|¥¬)Ç D EÇÌz—–ñjcÀè…æ$Æ¥U6eC•ïM­*éÀßÚ•¯Z"UÔ²n‡éèy Ñ”»ì½»“‹¯—/]söw4*UÀˆr#DU¦|Ú5rÞÝ/§×^Ã+dgVò®¢„nóØœœÃ±Ú¥âà¤×Üñ}È1UÕ¬tÌ͸"ÑøÁ›h³Œ(0›0Äùl6oüþ­OÁMw0¦éR¢n× CM@Ì*/©8¶ä€1LdÅkäüH¶[¯XðºÅµp=y¾93TØ ¢#¥8}gµE:Õ""²ë :È“­§éd^?á¾ieêOQ¤ÈÆÉ>|øðáÃçßæXV¤È…AQñ_äÂ``µL#솛/_¸âÿc€e%ÓDÀ«ü;ƒ¡TÁî·ÊXí¹·ÈÅMdYÂR³Iåío¯oÃMÅ.M°ÊTÎUs׃N3Ûsz3—4Ë*-¤†’ÏR!wPz^·ÔuöŽßòËDïïÒÔlŃõû6h'úV_tƒuD™¨q-©É,©+dŽ [ˆÂ¿½a¯sÑÍeJI B"&‚ bÌ”–yõ¬hRêû?”ã¡-3•#gâí©ÈFvV´Ðãé ÙÄŠOè;:ˆ d×ßèÓ]m+Ü:°e1µ,©$'ù‹‚èoºÛ>ÞpÖ·ÉϼÅÜ{S"¦8öç+n¾¸ÿÙý>FQ®‘ÿ#Qz¥õ¾&²çìk»²"¶,ü‘Æ<ô •ŠïWJ#j0jçÁå<šE¥¾%(QNò“•>.·»¯¢”«ké¨×°3…J_é›Q!™œÌ°ÇG?~/PeS›‚b™_´1zÀ=ëy HXï `íé Á´B.#ÑX“œ¾¤´3ïŸH7â1+µn¾ÂR<ê˜COò¤/dždÓå•FH'QË@)ÜT&xöï{*þý–¨—"\ˆî¡pèë1"—ÉyÚ·i¶P¾jIï y®[ËÙ:½‹'}qg«CK³â$„w¾¬”ÖIÿxWê™3ïB0,åiuŒžP·V¿Ô8øÔ4²‰1Μ>Ppzµ+äZ³íÓ\$F‡Ë¥fZm’ÃBÃÑY ¤¥Ù@Ž˜Óª$¡:àñöY5‹Ý$ë%h¢œÔJ€_X¦’1^ôƒ-\64«]ó˜Ü¹üë8 }»wT’Næý¶H“@Ù|c‘"J|˜HæSŸú¼ïQ† ³ÚÍÓúÓŸþψdÄ}÷7~”x¶óá‹qÿƒ·¡[»YÁ|ð~EŠü'PÌÆ¹8ÚaY†±eÝùÍ‘Ž1–ÔŠƒdÀ«±”²©:±o4|MsÁce^Ù'}å³ÎñülJ'U°ÿàpôÏ– ø³PÌT\ù~ñ(ž()Mcü\§K)›Òøl¤$Äçs²H_÷3”f÷ÇÙ?/ÖûškGë\“ÓÛ’ïpÑiª ËŽ%r¶ÆÐì¼|Ƶ6gØnªé¿e­!HX"MŽL‰þwŽÒzïíÆ`ŠqzSs1×p§YLÎxP íh¾ÚK«^:pS™‚,_°J¤Q5R³6LΊÓé ?ó·‚ÝË9²n|ÎÔUT ¨¦½š<§¼çtœ„âB•·ãÑkJ;|©É4ñõ'˜ÆÔ¶È²³³Šÿ±4{Å¢âOL‘?E>¤ ³eY÷Ýw<öØc‚Ì[ü#ñYyë7¾T=“‹)RäC’LYo5ÿþ>‹›ïµ0!ŸöÚ{dS5ðAgaÇh8Å;Ôɱ/ßÍNl¥ND•úÑÑš?[Þï·Ÿ!Ø@ …äc–”ŽQõ‘‘²fnVÊœŽýfŠ/9œ&6o p»¾Æ•º~)O‚îÑÅ—°K š°7Gû°Ò‹³8È™í¿ŽålYy¢ š9ƨ.•¢QÌîÁcƒyåÿ±÷ÞrTWÂ﹕Cç<=Ý“g4I9K€$„9c±`#cì^§µý­w×öy ƬÇÀØ€ˆ")¢œ5š;LçTÕ•ëý1Ã(0ŠŸwŸ-ú÷‡¦«êÖ½çV©«ï©“TZVœoî±Ä³¦Sn ¶ š*½±VŠ·A1„Ôê?,U/²õ;ÄÒÚah8r ð»g¢÷]ÿ6GûªÕLÌér¨€ÄXî:ÌÝ{¹ Þ„£—£×_6OÚûž¹tÁ‡’›þ%ø…?Ö¯ÿ„cèCÁ|™jk;‹àT?Ž’½œúëþya¡»[2Ø1Ù¿S¨V XäLvzUK:’̆»Eßz6÷Ô°Æ9°Vz´5Ä‹7{êªWˆñ [ñ½iˆj¶k÷,+=rQÀFâx:¶ÀMuÖ¡š*ÍÊOƳ„´w@ÛéûÖUL“ 7dK9Jk%™÷#ÌÔAUíKðXO¤ñA÷á7ÊöÄ’ÛsþB­£ýþ—աܼU¥Pý™ÿƒá†Ìeú1‹Ãÿò£Å»¾>±8Ï'ä IDATs°@Leq…µRª(:ƒt>–Ev¹mÿþã~üPªvvíÎ?ö]z£ÌÈÉÕois¹Vµßlš19DÏaéºÉŒD”¡øÊÃÇø™Õƒ›ôè‘èÒ:h.y8\u¶‘Š.fceÍë”E¶…tU3e‘–2´V€bÐ4jɇ±’2Ì´§^íXWê­côg¨âkõ÷cTȘԳ6ôÛ¿Ý<}ú .n.D“1 ã¾ûî{â‰'À4ÍŸýìg÷ßÿÔæc=vî]bÒ9tÕÀIììí>€ð¯X÷ù Q¡ÂŸŽJÄ…‹€¢`®™mø<çúèåY£³N=ÒGúÜ:GÉ«êâ/ì°v›­¸£¯`[€·ûëÖ·¢ÆLtÅ-ôªëÂ>Š ßÛ˾ÚÇ×pÊ¢Pn†lý%®9zÃ.¯0 œ½]zùE˵Mf?@~œòVmF3®.¨vîx¾Ú¡Œ÷ò`V3«Z*’ )œGÏ!.oa}·]YÂs%"S<Ї÷#~ðñ©ë-íxÎìÍKVgÂUb‹N2àÌWrÿúT÷š9ðÃÏcváT+¹¸ßkÏä…\æÔ•ås{è[?óÝîÆ0x-Ùy§ùÚ<ú½|©³8ÑypS©Á&+WÎŒõÆ/lq\z™œÿDIÍ)D•é’ì!NöؤÂ0 ŽHÝâÚûh×ì†úŒŽV0Š8|L»lq^TèWû­kç©8N]†Jk‰”}B“%²7jÏ•ðYšlªß¢6Ê—tæo¹ôøšÛç‚Æ0€PF‚ˆK°ï(M`UnL½£]w%.šðÔYëgœ:QÇh‰q€Añˆâ0ÌMÕ0R*ä—£þo›ãµË“×~aêá²Í3‹¡F&=Î÷²îz[l[(ûª¤Ó›h®ø_úeñ²;¸úFBÈõŒu–“·Ž@Ñâvdzù¡®,]M–ì^[_öÕWwïÜlYå·i–:#c˜7 ΖV5€ŠqÓ #=º×7ÑUUi$I£}ôÈÁØ‚[K6·UÈÙâûF«æIkaÏvqñêf@jD¢8JÞÐÝêd”:Ï4aÊ¢B 2/X‡rüÞ4¿À/_:ߺr!\1'"d'#§GrÀ9å”p;£ç@AdŒv¯*íxß¹0¬¦ 4©*¶Ë,äq½âhÚ³(U›*,H!ƒÑ u 3Uéc¥€«‘ÓkµÛׂÓë(Œ¦Dˆ®ë\[Ïtï­_*oÛ½´©ø£/b<$ATÕÔêÅq+mÄbqQ:µœÈ»»,·Í—'²±)—/ͽÚR¬Ûà¼<0¯õíMòCíÅ [ŒèAÕëCùÙu „° Û|׬¨r)Ç5™”`!ÖZÂ8žC(»€éŸÈˆ•.;:l%D”©¤;¸¬n¤Ž%,‡"_mu©øˆ¤óz)³kÄv¬¿v{„i´¨K v^ûáÇú‰L¡Œ÷²˜F®€¥ó¦M£®˜iêz{• ¦Yå1=8Ôƒ®]…5TË¢’0uã¹®Î+çf%ªe*<1˜iê ÇñRœ’Wü(qx·2sæÈâëÊ®Ú2fhBW-FÉb(S¶BNc¹R¨¾ª'Ê"?Üç|ç¦ …Å«Åð4&kd¤ëZ ш'­„ežï¤H•ïö§Ž¥íÕà 41L†®{Ð9i¾¬êÐ[¡hóÄS°L6wð°¹:C5ˆŽ9g‡*¿,>¢\`î²G}&ì0SjÌ=÷Ü3±ÿ\˜Rc`õ÷–Á?lýœ“2#nØ¿hϾ_Ì`ôä–%_ùÃ×ߘ閎<¾~åúû—õ½x ýÞ—núNòóïåþvޏñ+«®Žª“<âÎï~îù¦GÞº¾ +ì¡+~hþ”T"þ+\ð<ЦÏÏ~γfÐ¥÷£ÆZó•7Êó«õå1je ³¡· À\^?0ÕXThQaâEëPβ/Ã…Xu?³¤&~}GTÎn»Ã°Xò©ñr¹¬ê€L™2ÒE&`3Љ€‚Q¥–eßßë]»3¬×’înÈö‰5–ÉQTæPÑz Ÿ/¬)[¤¬€tSu ”¦ÉàÈöÆíÇ‹8¬–šò¹¥3ÝdMw*e“­¬=¿×1s†!ˆ¦Ã†|^7+ÆtCÎL& 8…)ƒ )‰ŽØ mh¡~6“›«Žî¡1ŸH‹>·$ã2FRéGgÕÆC±TÐém¬’û`RÈ×ÇWÏlPª!ux·r~2‘´ 2vRF‰+ÂÎhpF‹lø·vø‡KD]v4B=×Umšºi˜z³“º¶!—.ý1j¼€žÚ^cšf³]Ã84—EsX&MX5UZG“¦Éó&Ïž8/ a Fgio™·pËSÞ5èí¨jñ1dõèšbæST6âH yzßQYO¢yí¹Ï|²& ‘Ù~– «9á´ŠÛâewV!—Pr¢< ’ƒ…|ë,¡¶‰NsÝ-Ûß;+þ âž4Ñ’èyçéøµ÷€ªi©¼¶¥ßµ"œ¯£ …W@á„B2*kw ãªÙb¦ÍBõ\ûØ^G¼xÁõ›6ºšè¸§&† %ÑâÏè¼uv4“4$ËàïsÍönUf<£‹¯¶3õG_輱Ğô`%Y”’D&G°Îð¬Õ«ÈåT̺Èòâh‹ [83ëíé~ŸÛ>©$Фiè°#ÁÝ´`ð4_Á .r.Ü&óÈ#lÙ²¥·wÒ ¸¹¹ù‘Góõ[ý½ó›ðÜøµ»f°÷]²îZ :?þõ»þù–×z¤«ô'_Ònþíƒ í8دüú·.û¯Óf?9D0˜päàþ¾¥îVOÍÜyç'V… g§b©ð—ÏAЃ%Ràóœ½ñW_¦>þ<~ÇUZ4Ÿ¾³ðŸë†úK7¥\3㘨ТÊÄ‹¶á¢å@†¯f”ù¾Ìâpt"1׉¦LŠÑ²”Îzªü \Êe²yEÓZq¯Çrš6‘g,Íxª # ãÛ…–`ÅÞÇŒ™¥ý9¶.68_æÏ@‰²2½`«¤+ºª`¼”uÉe-u21™“×faéD‚  >NÞ}½ë—w”ÆßîiAù›7éÿs73Ò'Öxóqú_ÕþQæ¶Š•ì“:Lÿª»&9Éì Û¨oéVk}0@#©.à{ÔöKð=³Â±!0ÏrnV&å¬|©{…IP°Õôæ|ž4™˜h«â $c3R åÉ踦ŒÏ¡LBmaŠ‹üf0ÀÒrrL´eT:ì•Ú ð¬:á[uލˆÉá^„ GººÄQ»Û ¹¤£ç1‚ ÖÅ EmM™CîX¯=rrÁö]W~0µ¨P·]cByRfMS‹H"í1Í&›O‘%Í:&ÙRŠ{·ØÄâà î@µ3\—Ev°×þæ †iŠËÖ”k|»ßÎ-¾©ì<î{Ö5Î.k/kXƒÍëlŒð(Ce¬‹”ñÐɶˮŒý"*ÚGúÞÉ_qM÷+= oêÄ4Á0ò¯l,~⋵:L%ÆÓöB|0qýg-…tí¾ççÝ^âÓ^"MSµbŠyDP@óPÈW')"&‹”” Ápc²º#©Ú Õ†tÊCä\tŽ#¥´2Y/ˆ%¥NKâéÁ¶Õ¾Á*[ö·Ù‡Ö÷ÃDñŒ6˜p]ÓŸVŒ > \xÄÿ<0¥Æ@ooï<ðÓŸþô#þMÓD™¶mݲü[ï“ DØCŽd6²;þâ—¼áPJÅ1=ŸÃo— µ0"¸×&ÈRÓì:Dz ¾ý›ï|íë_Xö³íú¿ùþϾyM°Rl§B… N!€ó4Ëpté¿Þ`Þq-â(yE ³9éŽ)ô»#X÷‰¢…××ò¯Œµ,Ëû;B»ÇLt‚JÕbCÉ„9pLfø¤`ØÕ”9o%MÊzÆÂÛ5¼ô®’ÕuÖëfjʸìªÃÓdfP¥¬eÚ•c„"rJŠÑ " âÍ4[Ö™AÑÃi¥É2öAvŠdÁúì~ǵíé2îøÎ¯ÕoÝq<š¨Ð¦iÀ¡¨siÃøôÃW¨ðà#þ|ðÁ'Ÿ|rb³¹¹yB¥™Ø3a™9&”™©Ïçv‚%éÀ¿Üù­‘/¼Óûî!íùRÛUQÒ¶–ÆrÚDuf9-è§„X#‚ÁuE›N/eDcÂ2Œ¹–<ôó·ú¹’Üõ³¯YÿÕËÿ{凟¶*\•ˆÿ 5‰£‰¼Uçs–ùæ>ó½]DS-â-9 ó óž5ÁkšÎûu2Ò5ŸHY—Çç°Ûl46ž+& ý5«³´4=Æ c „cûë#üx¸³dåKŽÚÆñ]¯Yoõ° GJ&€6i‹À4²;Ÿ'¦IöØøìMÈÆ›{¿sßy¥9󾛤*¸l14:1ÒTF3Òm« ¡Œï:æxôÕÐÒ–rKua"›”ÄÈQóBqWɃ?ݤ$5©G¥Vœ7ýh\¡]µŒ"ëlF¦j2G¶‡BmšÝCŽ…:«Æ&¥"%£Ž%¬‘Ü¢5š³]ÂÕqâ#=ä¢9ÔxÊär àѼ* Àâ’“R2ŠÓE¶ä¼Œ LÙò`Ëc¿™²Å&õȉÍb9>æ<~‡ ”ôT„yµñ¾×äž_ýpcÑ8å4¶áÒÐØËïFT¹ï7?z=;QAê}ñ…í£‚”Íë³QèÏ4™t…¿`&"þÿÿ–¢B…ÿ+ªÐ?z?'Œf…Õ}cn0X»)OFÃéˆì;EÙdFÍÚQ³v§9ÿ tŒ@ÂæØýýÙúÞ€1â×G¦³,ëõù-F×TØþ²w˳Á÷ =‹îê™óxõŒµ R^}ä¯PÆ íjfÃflnƒ„ªDØÏå+€gÀ2‚û²3Ç,U:5mÿâç?ð>yEáÉ#+¾~xñÊÎzðg?Þq¤}üÕtò°ÜÁÏë `TŒ ö»çÂÚ6š†©ÒV«Rèp oËWÏ¿JÏÎå†{\¡Ø±¦%\1f)eås:o…ƒûÌP|Û+ë’ b4'ïÍÞñeµ¶í\äŸ eZí'÷ã†l“"AáXX „NÜüÓÈup þîû×ܲ¾s†7àtw\rY˜d_ùÏ}áîOÎoþ†Ïå›{éêÀÈ)§‘MŸùé—Þ¼kAÝ÷†•kWúû@ÏîüÉ]wß>˜×qKÃå=ñŸËùÿµ™TøP‰ø¯pqÀsÍ`g®ŒyA„oþ}÷3ÀsÐXkŽC¸ŠpaȘaÄ´\nÇ€­ÛÇÚ=Á:oUEðy??{§ ij:›+° …謇( €÷›®òxóøÞ^ÿ<…dúW™‡Ä8C´kÇÕ‚=“^lŒÇ n¢SÕ'}åTYE„%ËÚüU8”¬~$âõÝž{#+[œç±™,ÝšØ&"®„Ó´. LfD1Ÿçøám~ÕÈòèëÇ¢³Ÿáfó« >÷i«""‚B¼Ã¤xQžLqó…Ž%^ ±<€”(ô–Ý·¬!ü¥"¡H#Ìj wçÂ{á:º ó·ùnŒ7¶»†GKR™)ÈV›Ê“c±¼½¥té<ÒÉèÕ\¬KªJ˜µn¡€P£3ÌŒ¿Sì˜ ›LÜð§ [ ¬V${°"ƒä6Ôo…À4Ž„$Aج‹…„KÙŒ SµïT"þ+\𜠀ñÜ9=ê_}î»|©’½7Ǻ¹2\°ÑD»;z•”Ïp£inÃf»ÍN†ëªkÜ€]«B ‡qN•7@ÕáøhÝ‚ka«±¥bÈšÞ>øN_h©B1‰š@îH¸ ÍJeç_bœEÆ‚-Àç%‹ ) ŠIǃmHÍ V÷϶>Ëæj:*Øl—'¹ij?²Jù:sL¶„z:à… [°UK'5¢,:ºö0c½BëÂP q§<ðôfu{êÐìþL‡ï¤Ú‘8A’fõhš¦R„%Ëh¨‡›[7ÌT9ã–Öç_Ì]³"-HÁÝJGR¡9Aiv›7R]Ñœõ@ʳ¨~œ%¥”F¥%G\²›`â”Óc¬ÕŽÊùWúŸ[Ž9 È£äŠÔ• /w$@2XÉd²†­ô‹Â2'¡ÔI7V˜‡:óu& Üfa6‹Îêö["‡X—xç‘ù×ñìi5Û¹­¢#s@o|¥tí¥0Z1E§”?°BEF¯^O©’UÌðÅd0¶±‘² –êƒò-×­H—f,þID<Í^Nv±J(4–TËžvW1î’ÇS„»Ó“ÜÚãv˜¦YÔg3åƒ]Dý ÅãËù[zß>6¬ZlpýLj²Hï~£,ª+otmx||Ýç%§4µœÎ¥ºL1O Óg› ijЙ VÊ&Óý†Ž2e”Q¨dXDza>€D†ÚÖÅ=xsfBôH²f_Òe¦õG·ûž$ržKähùB¯e… ç­ÉÌŸ?ÿ™gž9k› •§B… *üYôœ«&³ï0s;'[¾ÔSÓâ,5Ù Ù™Ù“ ·»g´†`¡!XXØœ„úÆ]CÃÖýŠ­Ú_[㪪óÉv5ÅÊ©s‘*!9¤§H#‚ìhžôfu£qð½þúiÜî7ÇŸ>zÙßÍé(“;Åplo_x©B0‚ÕëØ ¡VJ*”˜‘qÙ$¢Œ‡·_êãäjxÎA”rò|–e¸nIäZ«2^3!û{Êvà9sf£¹ï¹°!o?º‡íÛŽÝð© ©J‚©„ë®ú@²æÙÞy³ÝéwÆë¤hÞªš˜X*Š£]S³àYóšeÊÁ>®ÕŠgnæ ÎqC Ê©Ý>ŸLRù†bÖIŽ‚G;n¨9²È‘IHöÙjè°Ð(êªÌ±ü»l+fbJc²q°±ÊÐî·ZÆä`Ã/‘ŸÏFD“Ïzm=6ÆÊ3`¤’Ê¡-öÂXÎ3c¬ay‰wíØc»“¾ªéÎZ—P̘]¿g:B¤ÍÇ.¹Š~ï€7ìS¬œÎ3 GŸÝ²1…odžĒk@!™´=˜¶!4›RÊÎäHo[vø ÁU+:ùk<Òàñ`*’æ×ݯǜ |¾O7½Þò<é]üZrÕX ¿d­báàÙ[‹×Ü´Pªè¯îïïGsæÚ·¼YL•´`3·ã•ä'þV™*Щ)Pˆx¦èhÖLÄ‹ÑÓI›3mNì¸÷—‰S& òhÊš¶¸fÃ4Õn–h$/æû#eþÅÁËa<‰ójnAD]¸èx,S½#1Z´º­ø·öÇÃïĜ̹_º .J.D“©(**œ/•ˆÿ  !#’À'jóD =¶ûáç&ßÖ¿t¤e?“—©½Ä‘RV;)ì{"8~VM|ÄE…N”lG£Þ#Q»‹·Õxêjle?•4…¬©©Š¹bâŒßG´Ü”ßÊ´ìslèÙØÅÔ 5Ž|ºãéßWÛF=s®¢Þ¡qtkWýj™æˆB @Q9!6îºl¤%ì>póÜXf hK—‹’QcÑŒd¯ª"ÿÈ~ J]GD³M»¬¹ø_o¸®é~VìX˜¾éÞEÚ¼Ÿ¿z¡%_VÓãD”ÃÂz¥¬x:jE'•Õ0º@øÄÍYMe ­KYh³Ú¸L ä˜éh1Œ€’Oº!å:<#C/u,õDzoF£¨bƒ#5–,;¶§wÀWïÆ ¶§ê#šÕÉ;‰²«ƒýbre,ì¶rÇ®'‰#K8­ ’Ëfÿ!¦g‹BÚsžæ‘Žë¦Ú`~†&È-/®» V-- eY(K%Ãe÷Ó£I"«2)™‰¨L]÷Y4¯b8VÅçyRF¦D¢z멪¹ì<5 ¸B±‡¸ÙÍuxÁõ\.i>ê,¤ÖY^PS­F-9¯ å¸17mVýV_Ù»5å•&a#Sh–W|W|e3¾p¹îõÅ­MуUå± 6OÛ½I•T&Þ_¸ã©"6Çç®+–lŸH{Ƭ3mÒ¸MÆŠ˜EÖ6&nåÝN錣 eGb´Hƒq0 D…~»¯.%Qw6lŠV%ŠÌ¬†î¡Ã+šñqÓý‡¸/D‡ó¶œ IDATýt>l‰_î¡¿ÍÏå»Ó, ä³V‚d*|Ô©$®P቉ˆÿŠY…¿tªýú¦½ôÜö3)ðëW±ïÞkð@²`Mäõ‘ÇwvÌ EYBNi§M`ÅQr+YçJŠ*“*ÛãYû¦„¤šÝZ›«èF‰B¡ jÓ»3Q¦„åMüÚ6a/Öc¸üjã aœ«)÷ïó­¾rð(Ü›îèt,¾A>ÖU?s4b™…Ô6ãöÇsM•¶¡vÍk/yöì)´-õéå P({Ý–Ø~y÷IR%2Ô{Ô­—g'UWdQ‰&Íq)Ð'×xíBÇ(ÇãeÜ"àÐÔÑ!)@Œk‘ÂÖCäCë@'tðÔ£ô ž°v·¨”Ê…´Ë錕Åv×°•’7$0@‹-I‚¢`Þ7¶S7ÌGÕv=Í7ÐÆ%¶ƒ2ãÉë#–u+Û9o8ìØ©%/Û0O a‡z4EϹš†:nVHæ”–qöUĈá)ÅbmAxÖàYô¢¥Í ÷ËZÔXQ£†Æe»¨Ð$ )µÍCË4nzñvðIís­¡¬u羂n–›ÃްWêò”b¢¯ *&óø˜§Xg 4Ö3pDa¬4‡£Ô¸œÁî7¢Ñ\x¡Ìbábð²h=´›î.w.ŽÝúéEi|Óú¶+Å%ɤÉG>žnv™"ò2ôD'cÜ9†òâ k•.Ç\ £+Öø1¯C M¤öµC„Ú×ÅÌm“ðRà Ú[+'‡ ‘ðx½ùÔ8n(eO•0„Á{z¿èF{…Ðú!žä¾øágU‹V=b¥$ÂbW3n†)j¬Çs*„‰dÌðOi2f:hÓF#ÒP±Dïß“s¶®Ž´=8í $²ÉuÓ\ÒTCúÕmÕ¬ãQŒâÕ'¦Nã(yjQ†ãÊÀ¨Àh&…ëfý+?¼åÛ†Ågõ…YSæ0]2˜&‹’‚t5$ÂÞãõ*éÁ:ÖÁÜåL­Î÷óf±ÓJRtHIúWÏÕ¶Íü䙽åÐÿ±~qy°eq{þ‰×Ð`¿á £¹XO48#œSºûózÝôjÌäES%w9V•ÍSáÃܬ•åÍ,U0[Re‡²¡0J&Îd698Zµ+â|p^¿×VÊx Î•(í÷·®˜4Ù±¸æãa>^Ö˜Á¼ïXÖ‹8ÂÌ ½’|¹B…ó×döìÙ³gÏž3·©x U¨ða*Ö˜ Z¡B… mVµ™‚8½&#ˆè¿#f¶°E80ìÓœU€#¶›fF&Û!ˆH¶ÖóšÁÊ ”ý¯F1˜´f-“µ,SïÖ3¸.Z…H‘´Ñ#¨= ó4FÜáì ¿%7úߒܛêXlÝ´!»h-JÞ¶©÷ólÂ7ô¦$ÊdÏ®ò‚Ë¡8Ysohü°ˆò8ð‘Ã1ßüp©{˜nF»v;ɳ—$×ýõ‰Rñ¬1w†RNaOÖNÈIÓ¾ù°k·à[½PcvÜ –¹Ä²fŠyYˆ‹iáƒk@#©õ(&“£ªQ« LB¬¹Õžæ¸q¤™Xrñ†qÿò|<++¢º²6Jè¹Ú’IA?–¯%1Z•¨è­fSïf¾ôqÕ,—Ëåò”x ¢pCf pPrFv¸èI’F)<É5äö€ªhÙTÚ^Ÿ®¾ôÃ^dÓ"È´ßv6›ŒnÕÆ¢·/;©eJ”¡”ÀasRemÑ!H7/È£kª×4ÈÀîH“C|2UD™9ºÁ IÐt‡˜gJIåÒk›Þ|V¦ k“AòŠë”Ñ$Nã±èââ[K37l¿ýžËû7÷3¿ýµ¦$Žeü³ëª*38Îø˜Á> bGöA ^µèV{²nî íŠåtøòqÓÿž´`1u$‡[Âæ©• &80èÛ1b¿yNÄû]e(å09Bü—·ªçtZxF;ÝÕxm°#a°Æ»qg³ÛæµTBe*|¤¹À,̦iÞwß}ðØc!„NÙüËø'AÜö×-EÿþؤrBÕ}ì»ßEµäùvc&Ÿ¹Äw×¶í_þlróž?Ë™Wø³ ñ_áb¢)¤E„Ï=ÍbëÕMÄß®ƒ7S JÔ¯¹¿±f¢j ä ¯mrÝæcò1ÅöáÓÏ $Ê”,ztÐ0Z!­ç3¬^ÆqC)˜n0{%ƒuSò>¦ácÙÐðµy¾Ÿ*é~æùø*’#ÖZvTùu:3¢IŠ®éœ5üHX5ÏànΦfÇã}9KKŒ¥3xïÔ9K uß©’˜ªË(̬ÎeN êâÎjÅ&ZZÄÀ5AÔ?pÒr“ÄIàI’$ $mâ”Nq¤€ëEc0ïp;ÁÁ‘lÛûF7Ê =ŸÏ%ˆZ·MS+I2²“ZƒwÓÕõv9d“f›½û< š ;)Ž%W"½¬<3×1º)ÛtS`7…t'&9LÁ&êQëjñ¬½.V?ûüåw/«Qú¸ZSuj\“ d³˜g×dHIômýMôŠ{ÏÐ&‘¡[*(ˆ2뀴Å?q”ÂÌF½Ô·ø&²,b +#·Ó»²¨Ti\ãL:ÜÖòòËÍWíx]ê4šJYÛ| ¦‰×R†î0åç,K¬¾ñÌÒÒHªÅ‡ m:AÁ©•dD‰|ã` ô×+NªóÎpຖá×÷xoš-®i;/«Ì¦HS¢„©²¶²*ß“á^î©]×ÙS‰–©ðQæB4Ã0î»ï¾'žxLÓüÙÏ~vÿý÷Om>öØcçÞÕ)&ÿ)tõÔ·F„Åú»/ 'ä½ãò-”ÞûäŒ;ôÿî}z•0Š©¨1ÎL%â¿ÂECЧmÞÇÎi;u•öÜë4 x'—­oªúÒ%Ã9vãΫëŽCd )¯Ÿ“ѹ@2!Ë §LœRžb¸f‹Æ`º){Ç2HÄèQÌÕ†Yk>z€½º1¾Sß v‘Çââê«9uÜ}˜ôxùè ‹µ×—ˉiÒi”UfS´)d)È92ÅygûG{23øÓou×\_)ŽYá#Ì™žA§ãD­ã‰'ž˜9sæ„óá£g!dnü{sãßoýΊs²ä›? ßöåõ+çΜQœ¹îá%@å‹+Bˆ ¯üòÆÔ‰ÆÕ5ëþϽ—µÖU·ßù·ÝúóÈÈ×]®ð5OéâŽkë>·³ ÒÀs_^ÓhEáŽÖu¿8ù"¿ð•+,B|ÃÕßÚ˜Ð1Š™€Æá4Ãù·ÿîªV×É£ƒ‘{ÿßoh䯅/ÿâ÷n«®ÿ›]åM¨ÂG‡ÆÆÆP(töv*ü%ÀsF,j€D"…Å2Ømk'”<`^Ǥ'Õhš ¹Ž(³¸ä •ŒrÁ§é Y%ÉEúc˜ê¯vbŸo’’L»øÓ:AÀì•¥‰;"R æió×Máî? éÆÎ37§jüg*J£ šüÀ|¤˜˜‰ƒã ”HDúþ­ðä“Jbðß®ÙA ô³èZ³ƒ×'tÖZÓ8¾ë¬¢žBٚȱ&õZ¢óX®Þ;à}~‡÷«k¢§¨1ðö€¿†Ï17/Ÿ¾4MYc~Þ?·Í™ìðŒ*;–¹Ó%»)Åʨ&ÀÁѪó¯B…‹† Ì]öè£À„ÓÓÓ3±óž{î™Ø.L¨1«¿· þaëw`ÂKí,§Éc¯¾ôàŽ§að‰›Þô÷ ÿx ȶä+øú3ÝÒ‘Çׯ\ÿ²¾oå¤Ñ ûíÙ÷‹,€¸=u¢w™ø¯¶°ãëk>ñÊÕ¿Ú÷‡›ÉÌÑ=û‰Ê¸ç[WÞýú ¿ízy­wü³êŽõ3¾|gðäðiF¿…zç‹7ýSá«[rŸŸ)¿÷+®Œªœã…©pÑR±ÆT¸˜èNôó!”Ñ·Ÿf¾ý‰ãVšm}–Ï^94µùr·åÛלT>åÚ׊û25‡5¯†˜+ˆ]áŸgío¥2’S³QÜ™"ÝLØïáŠZ$‰66Põi²fªŠÖ8 1@ rU1k] Ú 8f‘3¼žŠ‚’8?§æMEÆ“ãŠiœÛJ`’~þ½†EUBÙnß§Óe6šfÆÙ­¶É¡c¶¤±Ë[’7-Î>MQÒ‘½C—˺´ƒ’D¡XDYɛլN‚ ºöWµ›{!è¡ÔŸìö=°&–/a/¥g®ra°2äpŸK͇Ո¯<‚r)•àqÞ3ˆ;ý–9Î22{dœ6ªçý€B:³wÙl]Dwß¶pGn$ÖT ¦Ã†N;.—K¹ö¿2tíCg•äð0±°ýL‰¼TÀI‚PõÉW•*¢HY„ýæ¶-šabË/e¾ð5xô©-û>¶f±ów¶£é_Âå—âÆÜ=f¯¥ ©6×3ìh9«$Sä‘5hŒº-ã5Lüåhç˃žETä³WM63˜tªöô.ÛW×D@PiûÉÞbiÉñÌHÛ]µ]n67˜ôP ä Pk/eꊖágv7TÙ‹S®›*|¤¸À8xä‘G¶lÙÒÛ;iÓlnn~ä‘Gà|ýÄVïüÆÆ]×}e]#õ·eíÿYÿ«#ÿºdë»dݵ@u~üëwýó-¯õH·Î <7~í®왞³Â¾ÇžÉ]ÿÔ?ÝÒÄ€§céIökqÿcÿoúš'¿qu˜¨½á¾úO³¹=÷W·ºOìŸfô«´§^A·>wß<;°êo¿¹êá/žß<+T¨PáÏž5V6ë‰ åsM¾u3ó™µÚT¹ÌÞqi­úÞA¿Ã¢B9‘l´ë½q' dcU„”²ÖSvhËD¡÷©§+BÀ“¨Fìg‰S]ÚNR=Š@õŒ¡þª¼¬šºÅž‹s¦À1e|õX{ ÙÐHÜÿ!¦\, Ek®\"?úô½‡½1zçæ}ž{oÑⶺÆô¾ªÒhÌ>«0(Iét÷“éáøòvjP I¾ÑSZ¾ÕçëK_[õ:Ä÷“–¿‰´ßYst"Ñ_¤`¡YÂËæ `-Œ¬nN¼p ø×—öœ£l*\L\xÄÿ<0¥Æ@ooï<ðÓŸþô#þMÓD™¶mݲü[ï“ DØCÎÉ·;„3l)ͨtvÇÃ_üò7J©8¦çsøí²1ÙØq– ª©Á¢{Eè4)Ê”DïxzÛ­Õ40•<êÌ‹¸O4ÊÓŒ®æGJŽ+½’"®ªÎqö2È.j*ÿ.2Üv#šœÔdö¥ÐÜöI­f<à —E {ÊE‰€®Ý^5é`;–å'T‰ï—= x! å †!4ñ†2*…°‰Ï€0„!H鎆&7q0 œ„Œà8€À€Çd ÑIõdÙJ`qhÌV×›2J2UÈò!#Xñ6î3eI/‹8ŽC9;jMMGHÈj,~„ô» ›‘¤É;Õš¹"0ÇI•KŠ„"jB e`YËé6$Z‰²Ã 3ÜFÀf(Ù—xÒ,)Oˉ2 õ¾Ìb‘Øt´ú²öȇ;©Páâæ#þ|ðÁ'Ÿ|rb³¹¹yB¥™Ø3a™9&”™©ÏçtŽšê‰–Íù ¢ÝYK­‹éÀ¿Üù­‘/¼Óûî!íùRÛUø™"8Q«BðáAHO½5Ó)CÇtSÒ]ç«jü]ï/.áO+Ñ´£“®K®/©B+`б¡œÞvNó«pS‰ø¯p1á°è¹‰4±õõкâÔ¡‚ˆ7;´ŒH­N®æ·£æ7&NI,+él)ï¹Ä5ô/Œdœô:J2™¨îÒÝ8*…Íq$Iá÷ÇÏwJïýàßÌŠ&óѦ±±Ñá¸˜Ú þ< zÕþ-”±ï<ÃëΓB>bôÒ¦ÒPÖšÌñ^‡È2=iüÃõ1¼ LYàÿcï=ãã8¯{ÿóLoÛû.QÙ%Q,êÍ*–Õ,¹Hr¬+¹Ä%ý:÷ïßÄÉMþin±ríH‘»%«¸I”%SbÅ^¢—°½ïÌNŸû @€`“ØÌ~_ðƒ™yfæÁà>¿9çwÎiA‚€@!@YS , ³N‘˜…! % ‹%qÌÒÁÔ+*GaV‹™¾ÙÓ ƒ2+¼‘Cš%:©‹HSA×YMCMͰL4ÍÒ 0LË0I" ³,UóŽ‰ÝŽ‰Ý³ w )çÍ}˜ÌÕï:½¬7íaX¨ÌisoÑf¿àœ`™§?û0ËšU2`YÍ€eé&¬Ù7p"À‚:ÿHU儊 O—}@N±Èá'w û¶FcšnäÑ<8åÚ à”lÒoW;»ð4,'7Z¨‰ýÚ‚ž5JE,x‰¿çs:MIÁ:²œËZõsj É(ÃéÄ—¾ß |-±îö‹œF,ADƒKïB)UÛô(1÷ïÐz®ÕºÖj.Æ/$ªi€{²ñâlÂÅÚ­Zïjû¶ÝqÕÀm6utÒµ¾×`«`²£Òo=,LÿhàO­úƒëÔ6¢È~¾Ot±ŠJva ?÷ùJ~Ï¢‰q”Òšjö¤¿w¸L³ M¼v%W°“ÊÁ|{I§Þ9pæþ鲤0»ð¸]b¢hóÙÊ£~xãÄs»ê>ì’.;±FßD.Óñÿ•¯|eþ „Й›¿šy ºñáûrŸëö$ˆüõËu ë?÷·ï¹ï±îv_ÐåéÚ¼5º\K/zÅ£xË÷à ›Ÿ>ùÖü‹þê/¾þŒùħºù÷VqÇÊþáçßZP2À_õ—o|ëÏ>ö»kìwMÊÓ~Ýãûo·.¾0·ÜÝ‘óÆ|ñ~øC×:~E®òÉ»BÏž÷ÝUÿÔ¢15®$xÖH”ÈWwsA˜É03Y „н;Î{ÜxJ¢_: 8Ì´Ht·¢Ÿö¯DätÃÂN ŒA$úvy Ž#’©8à8à˜eÃTY8n˜…c Y8²HÌ"LÕ´æµÈ=Vr)ÑÂL0U,sÆ &uOÄH…’Åpl›B9åp ^ªà+»#d9eFÃ33%gKÈ087Q",¸©< IDATsk´ƒ“fhi¼Wäü96P&„ó>’9(M€ã§ì¥2¾iC~á µyçÏ2 ³Î Àç¢ù€S„Ãõþ° 8ª<“ö¶ÖfãEêF@±RöÖ8韽ƒU۩̤do].§€F² WÒVЇ@˜ ªBØiýÚ,V &È.?>QuØyï4s~#¾+çÎR2Ñw_­Z.&¯l–chCÏÂÚ¯JìØííçUgTê½Fú£ÿp†¥èÃæÓÌ¡·¬ÿu-ÒV¹ó>ûÞB[CŽê´@*™K+¾-WM¾´³zË{œ{ß°6ÝÂ|¼õÓ?Ûùúöîû¶”CT"Î,/üRìϾÃý?$¿)»ìQ&˜m¶ü÷Oz,ÃúÝ-ËÔx§Z×ÂUnð[²Rs„XíL«XÐ^~g,ØSÀ1Ú­ÙçÞ -[W F+•ËwüùË_>ÏæDèî¿îó_[´lxøÿ|xaûï`˳ÓgVX§Z>úƒÁþàôfýW'Æg¿bZÞÿÛßÿ‹.xõüQªþž/þüž/ž=áúïds³_-wwpmúÜOÇ>`¥xó³¶×%·á¬Q£F_WxV9Ì_ž$?z£²¨ ¿inŽT£žj½·ú‹A_“«2'n_# ¼q´§Wæ,)ÈA3=~ÎÛ˜çn"/ê̤ØYŠøhµƒÏ¬àÇ-Q3 Å.1µ-ø‰Çc_?èù­MúHÅPC7ðZž²îTp^)È;·g‡§µëî¦wµuÔs^»hrvÊPSyŠ Ôl%ãi$éœ<épdlì¤á ‹¤³BØTDVÌsþ®’ ÔµÏnsz’¨¹n‘ÿA%–{×¶€ã|Y8œŠì|lÕHµ~šxN}aðhïà8ø¥ /WœPÀ;®ö)íôÀÙkÆcÐâƒÄÜå¸ÈéÒ%(„!tŽVc¢í®ðÄPÞ˳çs°¸ðâ)9Ú|Fv7WÈb.võ?¾âY‹¨Jüİûè«æ»®J=þÇ» ], ©ÖÜ\=#'„ÁƒbÇ5Í#„Ê·ßm2Sðúz“ŠEƒoŽÚB¶ÊÔdî½ò¿ú½ôw®½½d`?¹Ê^¶‘¶2¾T#>‰ï³[È‘›eÍÁÜ‚ÐTžïŸR?~{~Ù xˆâ€m¾ÄÛV5f¬8Qòâ8ê²§?9¦ ÈÐy£Ì §ÑÝõñ*´…? ¾mXúŒâÄ_™j˜½“K{_úž\QÊý#ûôoshI g|Î2ìÈæÇZ†Þäí¤F0Ë;0³Ôs"¨b1Tߤ⌈¸¢Š‹êòJ‹gÇoË>»Íó¸G9Y­K¢>¨BYºq<1™ÊÛûñ/l˜°HfŒn‰–uÅp¢ƒÐ Tdj3}ò]¥{\oh$–¦0Ù À!¥b9(n(yi/Üvγ”BÆ“ø½½è£Æ ¹d,r©Ö½õìÔõ_üJIýÞ&±ùÝõG5w}êÚ‡ÄhÓÙÃL]µ…Âýï2ñáØ F_ø;µsmé·¿¨ScLÏêôá“äê¨JEÈ)eÙ#·_/?÷S£½³|ÕÁ7~0u÷GPgËJçXì±ë&õÍd[ø´%xõ- |úò4É[¢8’ J12Cï£Û}°ie6wîÛåP&Onüñ‘Q¡f[Ç€l°*mCáÇÈÙßÂDÁO1¨Ë±èçÈѪŸUÓ%a¾ómëÒ¯íw‡Ý´ß}ÎV¡5j\I\Ž’© •‹À*üû{n½3.ëȳîC_zþº~eݬkü†Rsü׸Âhªo P¢„Ÿ©dFâÔšÖ¹õkÀQùÆ¡ÐýW³Šƒ]T{Äy$+ú_O†YY¾7Plv¦xܲ€Ât»…á–TE×”Œj/˜v¾+üöR×ÎŒh=Æ„°8ئÇÝÛžUT½øø0a’bRÌ ƒYÝMûª AHbÁ×îÏ£ü6‘R¥U.g[¯ËrÄûKöºB 85Ã1xÔãVBahQÑÅjU«. ¿ð¬±©£úÚ»Îû¯_>Ñè2x;zo}üå‘)•½»§´ý]æë·H„ƒ £cöÍ…c)¢Ù$/­|œÙ>#Ó×À‰}j· +:°¥ÿùÔÃTœˆ´éÀM…0UõÕ‹-†/¸ƒÎd²\oËÆ’l½ÿ%³¬* 5¯»fKBG÷½–[uÇE敹*)zzB?Jz¡9ïjËô¾ó ¶dë<ö†e˜±kß×ø³¯iùœ¨ƒBÚ6vÒzïÙ#ià4N–òY‹R9—³§©8Ô_¹ö:ZÇ÷${®Í4wð><>±ÉM¼x¼mM62nýí÷ÐM«¬Özôü6ºéVûɹz;á´ÃÖÕâ7.ÈxI¡^9Ü `ÍULFX¼0'Bd“Ý^îj£2$¹¼üëÏù ]…¼Ñ-Î_xFßÒU|~—ë“÷$.æ1Ö¨ñ›ÎoTœ€_’0öë µò3¯Å>ó_=‹¿6Ôÿ5®<Â^³äµüÛ#äü£ÕÛ‹–65Ÿ…Áª¸°’‘Tz4ï?P ZÛ ýÉÚ"L¸bx4SÓ«°èjU‘”ÙEÀ"ÖiaUƒ@€v*vJ‰†ÈxàØ¡ï-E3*7=²Òö±S¥þ±’½ÃPP±éÓ“þÉTü¦÷ûiAGÕ¤ævɾœ  1íUŒì”œÑ Ó¤–_œ`y¶{8ŠÎ8#Š,²DœmõÒHœ:2`[Ý^>÷÷w±Œg}­öJOÝLAªT MŞ߃}æ©™1ª%B ŒóIg»»0ÃÚßT{{øxÔ¡94]*ÍW[7S–\C–„98³Œ˜Ð…\´’æðe´JÞ»Ò™þù ³¾ýÂ/nüD)«:\DÞ™˜@2M]çO*UÇ̨7~X®Xåæ5ûíþv:ß`?ÿYtµTB”䉿½õá“;@i\“u¸Išã ®yefº‚Gë@g9‚!©rÒ:¹j­ô­—°ÕJuÍÁc;|ã}éÆÎtCgQijÏXÇØžø‚aDW@Öõ׳IŽ|ìæe‚é’ðï4¾e¦·aNc4yıœ­·>QÐ]ÛJ·Úû\D~4ÛÝJ.N1ì…e~4!Gå¥cáÞúÝâw+›Ú+ot\¿®VǬƕÏ9R\kÔ¨ñ«¦P(Ô25®$xVÇp|&½ EFbì}«½Q~~—5" Qvhž (Ü‘Â-©à*›šs[éRó"C;Ó}šnÌx2_Èdâôä1OvœÅÈŒ³;%¬ÌÓuˆn¿º°»ŸMå~aùçú¢+|ȉKbÃcü_ݘW&xÈáEðEKÙ*7%á cz] ¼Á+ íK.HY²×̤ÈÈì&f(8q Íϰsd—(ò†X„]°îléoî)uÕ¡>¾Ç\ÓeÒ<å1—Ñc)÷+Çë>»q|^Æ „0T0\oŠ·Ùûæ{•žÍD1ÀqX#—:ûϨcå¥imõÕl;|êÂMEkÔøMç’c2Q¸÷÷Ô]ŸŽÏ€,’™}.*à1¦®ä÷_æ; 2ˆzÕ.ð]žJ““ª”=¥ü¢u6g³DHÖŒQD†JZªÅ»@<ç’úLªˆbÏŠÉLü×zrå*Ù¾(ŸƒÉ ß‘ë¹]<+¯Œ$p'(ÂÌ;yTS X׺ó³gè›¶xî|JÆSIÒ}c+îÖ65L)E@ÛtXºªéºiŽƒÇþÊwÈ›ç:8`)KÃ%§KÑ ëåoý_µ^c¹ÉàÚ™ÝâŸtvÕ¡-ëè¿x¥éÿ<<ˆdý›/„?ý¨"nã¥ñ·ƒõYþëGæ-1³å~É{@n¹IèsâsÏ<¯ÑÜY)d‰ª'ÀM-ósáhõj¿”.ò>ÇB1tž5nßX|æ§¶ ؙɟ5j\y\Ž’yâ‰'àt²%­-g7¿ñoüç*iïÇ;!_èûÒöƒkÔø/ æø¯qEt£Ivuû\ŽþÈ4±zÅÂZmrÕ‡ôPhæùþöM‹O” ÌhŠE§­ßˆ8pÅÐÍéiDà€W+ÍtnU4—Ø#F´­oÍ?- ,(µÚ¶ïÛ´ëöw]×m¸fƒâŽô¹{À™œ0 S¹êv¿ Tðˆ¥[GÝ‘¢H¬ŒÙ|ãûÌp£ÈxƒÕé ¡iÄÖá†J;žLÙÝ“ªC0D¿™±ÜLÊ~=”*þرˆ\HׯÏyê‚°£è4Š”©†,¢ìt&¢Û«ë ‰Œ/.»$=??òÿáÆ~K¸þôAãçoI¿wm©"2Y§‹B¦Š-Ä|T a;[Ìã ¥á {«¦›ÙB¹X‘¾ ãðXœ³ZÈé§µ i)n=[¡=ŒT(¥I‡O»8%ƒh©Š˜.Ù¶âáIvSGîb.ÂâÕû3¯BéÅye”Zugcn­ §§‹Žéž»Uzé'|*ƒnî>ß2=T™r•'F¢×*+šˆÓ?¨¾^ÊèºÛ8Úïºÿ‘ù³LO®è³JFalZ:a¿ãæüñáÃ\ïÓ?ñ|öfö§wîž^³õ…Wñ®uæ4ݼ>´©íïÔ߰Ѩ‚Wš¿”¤Ðoœª°žØØöôJ¸“ðqht^Æœ‹iÃÞk_>Eš¼âLŽ;SÉ€(áA§ñê.ö[ÄsX£ÆÀåd—Y–ešæ“O>ùä“Oš¦yöæ¯|–s(ÇþW3³ùû™ÿÐ2Ï5jü1ëøÿ¯žE¿JšC‹Þ»oÀ[¢ ¯“@Ðgp”Òæß™j‰U‚ņ·Ò=?N­!»v{©k¦jã‘‚cšLÎôí­¬´¦ï𞸷õdo4~©“1GwEõ;eE£ëªéöÃ?(…×4Xûá¾;¸fÈÝ3{ÔÔaFÀYÂr2ªeÒVŒ¬ôÇ2ënPe”óªŽ8³l3D‘ ä3}^ì6&KºF¨¦æñò†§Þ•ì¹.]¿Þ™n?ürpf¡ä±ŠQ ŽQX¡›ìÙï’G˜1]¼4½~º}²¸ÈomçPÃÍ‘Âl k>à´ñÊÓ/•n•ZŸ®ØI4lQöÚ›¥® n­ÄP%6»G×µlõ/þ¾Å#^GmÅTã çrÿ¦i>õÔSÏ<ó X–õõ¯ýcûØüæÓO?}ñ—ZÒ©QãJ¥æø¯qEöÈ{NÍ-‚G&©6Ìd$•N˜¤Í9.ZS)û©ª€0´7«úpy]¸à7L]ôÙ+¢Lù_>l´¹ì×´”ßwV³óK"IDšôñ3÷”ºC*Ö¯sáE-о]¿1fºÖœÒàó#)_·ÏÏé‘/—To³ŠÈŠÍëO#H<é]Ó`Lð¥d*²2 §g›‡¨6.bžlŒ¸¹R®*U4†Ù0QhMDšôR)0Ý×~øåb #^ð¥ð¬qÏšÌó;ß6³Î5¹ÚÉde÷DÙñã~\^ëÉ„’϶üRUR¨×'ŸÛ2:iãܶww üþu’,saåç#ŸXÌZ\Cl\±Éöj5Üéœ:UQejίҙ #±~?¯šŽ¨%W1N˜ k”E.ÌK3–®"Se¾j!}Á.c$åAç|`Z‰{÷Ê‹x†ßðÙFôFÂðŠIïøPJWëøºŸÿÄÃ'ñ‡ §ÅúÒwˆžÔÕfø=s‰‡èQ-®ì$_¡rŒ2e¬¸§™¦dŒ§8S–€xñiì¯þa~?¢pÙÙÊ—R»¦ý;!€Öÿm›xòn¼Ð?’Í´?ñ‚÷kïð@„:›öž;Œw²8UÎÍÊ»±´÷—£OmõÙ—)öpHë€ë˜“üêDÅ~昤J±ä¢§š$ aúœÚžgÔ‘ööïKG™6—¾©½òå'S02IÅ¿Q…jÔ¸t.¿3æ,Ï<óÌîÝ»—=z~BÖÿ öìÞ…ºD1c÷ýýcø“WF rÃSsë¾”³kÔøO§f÷¯q‚Â@’)@p<îK–ñÒñð‘‚­^Ð,CKÜ;€¯p%·â£I²©#ip&át£Àv†Ã6¶IÞïiÂb6øwýq?†Ài,X¢Cù±HÞ£¸íNèã… j¥`+DzõkÀ›*5npVR(ÒSœqÚØ ΀J1’;ê)Ï$»ÖäöÆ<ìt^m!HC°ªÄ€fB¦¬(HbœƒÔbJU¡b€ƒ¿Ç#ÚÝ ‡³gë¿[ÙÔQÝßg»~]@qÒq'os0šÉ%˶þ\ã+'´ÎrÔ%6å<¸"ÅÑŠŽÑ ¡­Ò—|ú…êO>[˜¦ê}xi] ?–mpÔMÌÙë§åP'QM4^%[šz¢§Þñ®Uð¹ WõUH’mV%Ý¢] ä¼MŠW\­ Í€RÌðNOõ"~ÔY+ˆé¢Ðj/Oe¹:ÏEd|ã} öRbR:F~’·ÕDÖζ=?/¼Îų֧?\€«V[ƒcÄŽƒt¢@lêÕ·tQj\9À£æ\j2O¹±óÔÍ…r^îÊô«Æ=zsþáÿAüB›ËÓt|ÌÿgÇ¢a¸s‹ÑÒhaG&PÇnr.mì»oy?²®ÚÉ Ç4ºLÚTÀ§,WD(7»Ø—ßQ‹$S¡‚ƒ9þžŽÉeeÌQ£C°š8>V›,ÙzÎXÀœÝl4iÙºØåSË$™œ¶¿3,èŠùþÄ™Ub "¼pÑ…5~£¹L±þÏÿüÏ0‡™—1ùÈGf÷_ ó2nú‹káÿÛýçpIbÆ*½ý»÷þyú3o~µôÆÜpÇŒöÛ—úMÔ¨Q£F<«•¨/ü¢¥Ùi §´»:•ŽHþžž!%øæùð­:ÏZPÕF^ïÔË¥XŠ:£7u*÷_›ó»d8 ‘ÿL’d¸N›ßlËÃh©Ë¶YGµc}í·HN/ URrŠÓM\¹ñ ç³5‡r¤_7¦1¯/œ³™JyW}4s,înÎ4_mKíáË©”¿>… ,$8•K%$Us‹¾&; †’)ÉE)ÃÚŒ;TeÝ“6]N»3“³z&ç­W)¶­^zí]ç™E™9Rt®3H^¥~2kÿÚno3WÝØZ{d„“¯ŽÚ¿xÇI˜¡šOžT`Lúèuº‡ÌÇ; Ù2Ákaļ’I©vW@3 £Óþ†U-‡úç'ßj Ÿ4;éJš%Å$‚Íá^;B:ë!ªYSÓx†–YN®^@P¸µ¤üÂ@–¿»}ò¥ƒõ-ç4uÌ¢C—ªÞ‘·©•mšTl²Öï Üëa.¬ŸÄ*þÚÞãÔ¸u®JÏYkº´5]šXÅNô³_)°"êilTünÅfJ~u&&´ESG&C]yË<}›RâôìîŠï–R\nífäi%48†ýË«þçÆÌ ·½›Y5çø­xÃÜÁýtïšÀ¾=Çë®Käñ4’r[T¶uª©Zø´n›fý·4þÞ¦»µ_sB5—&ß)À ˜mRÚð¹…ÂPF¹@!ò2¢½äô™{$…Š;÷ŽÙÁ0¯i.=zÝÌðŒ£ âS,®F+ŒËôÉÀW¿úÕ¶¶¶ùmmm_ýêWáRóÄnú‹Ë˜HGžý‰þ¾¿üäN†nýã?ÝZ³ú×øµfdddÖô_£Æ•ÄìÊé‘îÌ“[+Sé­3ó/¡yîÜl½º“±ŠF»ßœxu?çŒOÞ›Z½¢8+cÀ…Šet~ ç'CEmVy¶) eªm…>‚ÂLHer?>¹òÖùf‹­|úh! ¼ñ‰¡¡cåÐÐÐ'>ñ‰¯}íkhÙòòË]!d½°g÷®Múö%I -7)zn ξÈ@B}›»– ZãלYÇ-ǬÆF›ËÜ;f°üƒW/]¼ý& aÛ÷±/ì%Ÿ¸Eýý‡¬}¥¦ÕKëøÛ­R Õ]v‚°†è lei-Õ!‹cq†¤*žùÞ^Ãt,tÕðP…wõ:O9Qôu¹2¦º.×W´uäÈÙêJ¼LÚ WßèÿI€œ ¬ SÒàY¯Ï9i†BÙ ¢%†Övš}4’-]ƒR’ÀóíM +JiWÎ[ïÎLF†v¸œÑ‡ÛºŸÝýä½Ëô™…g4€ÂÚfˆzxI ®nÍL¸~ùƒi„`m Eð&_é8¾`Â!H*U¢¥£×„‡ «R,>¯Ðt3‘«0Vºœ'⎆ÙýÈQkzïèÑû˜ÓHÓº$–‰Ñ+¨j/¥ƒ® ”WÓÃ/–vciÏM‘üXÒuGËRÃOÕ`brp 60Rn4YÀ=0|¢YôÍ•sô3ÅÃÙhÇy½„£3¶m‡mÿëެ߽L}纀êp¦¤Õ\'õÖ=ªøúxÃ^k¾=ÔҌɑ€\2èùUÃÈî+mŒú‹G÷Ø*óâËÌæ^ýÓÔ’8à¢~%t–“Y'64ïºsC,ã÷ÌÕÔË.ÎÒƒ¨”°ì’J —Q޼£eŒ3÷#çï<¢Y˜‘-”@fZÝay yæ´J%,]±ÏÖ׮ꌟ\ôTs¦½Ê ÅÝE™üŤóæH¾7Rhò/­ Ç3Úpe¢–©ñßËtüò“Ÿ|öÙgg7ÛÚÚf%ÍìžÙÈÌÅ0+f濾¤9®¨­2UÐ(P²3%£V޶Ư15Ç+„FŠ„w”w³Õ%GxÖôØôöÑA,«ÑQ"YÅé¡éy d£.Ð&æÜ¤Ø¦€'-E¹É˜´nË̤ðá†ù¾ŠÝÅÁ—%d'¦äŠ@›'¼êÔ80œÝžp2{ IDAT%”Y ÝóÃʤÍo¦ÀäøR Ó«¥mJ^£©åµ¥] K‰j£)ìS»#(ÓLf¨¼4CcÙá$:8¨„Ã.›·Þ™¼¶ðêZ7=0¾•iäá¼ìôÞÚ™sùxÎ×öWLL‘<ö¿ž~ÞÖí.T à À(–§KE-0Y `8ZÅ/ê£éz¢¢xÚ¶ºöýæÅŒÛLjˆž"Zêô ä8‰É®»ïÍ¢·`9 Ls %ɡVEá‹b2S9¾ÎUžÊ Qwe~gUg*²Ífš÷sÛtKQþ~¼‹/fyY™Ùpõü0޳êù’¬Þ>ꛡ½iúì•:N^@ÓªÉÌÜ})̪ç”IàïŒÝâe÷ÊíÇbÎïØZ}ÕtÍg/»ÍR«{~·njÆu­ºö[¤xsîXå@ह¨hA¡ûØŸ»°GšBçÜHDÆP ‘,ìše]ÁUöɲfÚqØØV)KÄß¿`ÿü˜†È™‚q[¹Ú8%œeãI™ Q²<§d– ©ô»Ig*e„)j} ûç79{Ì<›¢U±Jžù|ú“Pk&SãŠç2³Ëæ…Çc=vèСÇ{ììC©Ë(\Æ­~üó¥/mKÊàwþîríµÆ¯9…B¡©qå´w¶•ÞI»ëCKµÈÈ~bý[­p€ÞuŒHeñÕîØŽLë’aȲTtaŸ÷ÙÈ„CC”K™rcÕF"o8‚’I…>1 q‘>“稥ïïW»bSdƒh2öÖpšÅr‹|*"UÚî2Áv0 §UJ+¤÷s¤@®ƒ‰ äÉÉûv®·ªÏ#LÅ«ÆÚô~ÊRé]G`õxpõX×m实æô‘öÃ/»³SË_ ]àÁ²š‚ùwË-›É~/$Wõ ­ÖçJŸÂ^Þ–)9_,oz½´>§9, m ¿“©(ûüTqɥʥRNRR=ïuUb6ù Ë»™R&¢@ƒL)Y)õ²ù±™-ª–Ï5=§¹Å1™WGmGeÛ„3à%•N½•‚¿Km¶k´'Úûé¶,î€èžoÇ{o9ó\–]„’­.óºGR¨—4åeêã·Mœ-cA±á–JUN¦çô‰£f9!ó‚)Z‘ršƒ…{7Œÿî5e’ýq_ô›ûº&âu9ÒmÆçùm÷µžQå2,ä¶Y8Vu6œù¬t–{I¾º8“† 7ú'šÃTîïnÊJöPh½¤ZØt•rÐÖ¦®Rocåk/eÂÛO´w›ËÈà™$Qñt¬OÒ¥V5ædºþo_õÏ}½ ¿õ‰¬=Þ™9ûô3YÝTîŸ\ÐÆbuj+£W>—™“õ•¯|eþ „Й›¿šy]ä¸þ^øì£¯kû¼ßí_³å¦àäÎkÔ¨Q£Æ™ „0„‘„ÝÉ,¼Æ™À~¶›üôª¢¬¦¸žVü¿`>õpÁE)9Õµ¤5$‹T  –¶6¿ )¦!(Oø)ÕK ¸J’î®æ­TZd£í×›»—YÉ Kwø¦Ê¦[šˆ8xe’€-Í‹Nbž0YΩ¼BÐå…Ñ‘@‡]´üaš)/ÿöÁª×ÛNNŠþŸLuu é.ïÜçeɘðâÉ3¸£ÒÕ„gêœÉrKKéí­̻¾ÉKJ6ϲ{À½©=óVº§‰Ë8‰¼i ’VÅ/O›<ÿžë­Á±Âî×¥ÕÝÉõ2BÁ1)p0[ŸGT¶B‡éÒ¤yÚÙ>7S ¯’QVŒÜÖ4õÚ>û­YsΘd¢J>à‘*`U`è â ý­Xä=ÍÓÿzªµõ¶3iZ“€§•ù˪”ãÌtÙ>{xŽ»Ú/ §6f6`,)u}.nyÛaûu«æ6E ºjý-j\ù\~æ/ùËçÙüîýËÑù¿g̹ñ~<ðGóÿaÙSjÔøõ`ÖîßÒRK‚¬q¥Ñì¯þÛÚ2ÊýÓÎù.ã#ØÏvŸþ  <£oî*¾x0rÍ>Iö¶M£[+»Y1o\ZвÀD(PÛ¹"‡’ŽgÊz•W "YG»î’T:B/³pŒŠfƒÔžq„!ìc"†ð¥ ‹ÒH7MQÇr¶ˆ?5j³m§‰kš±ü'‹WÛíõlòÅ‘K3»C !ÉMÔxˆHNV¯¥º:ØtªÕþ¯RèÖžøÙ%›Ggì–Ëg˜°‚7qJæýåÑn{nÕÏV몋_|…6 lý&a(E+UÓƒ)iƒ~;Á0°,h¦ËvlV{XPVÍ•­‰ÂªU™w¾M?8?1/SÎÙ‚Õt<–;2Srš¬®Ä Öæµ÷—Â6EráÊì¥,ÂËÁsý“AË´ ‘G Êûo?¦ëVF†Áê2~WjR gòs¥ƒ©ºNïžñ¬ï—cÏ\3¾l-c‘ ›¬“ÏŒ›êB2›×¤²¤h­lu²ê^r k©ˆÀÚ]Å £Ø ‡míÜUÓSØJO%ï átÚ J²$˜*m£Ì9?LºÀ}û°ûŸÞ;Ž;ËçðÖU®“û†˜®§O´=Õ=䊒éc0#àq$³EÈ+#Öv:} SéZ­–mB~7 YBö’j•å~4½Þ4À…+=¹«üs%2²m%vΨÝxF7-+•gfki”EÌë¨Ådj\ù\²’Y·nÝw¿ûÝ Ž¹ÜùÔ¨qÅRsü׸2A£ÉŽì©tt+¤2èg;±‡o׿‡ø]ÕÎ’«øF¦Ò.¯ŠhÈk.¹ f«” "þK±Êè]b‚ñ!#âeCWµ0U)IW!Ñßuˆ2套±†ëÞÆ£9z_aõ‡q X¡R)Ÿ“€¼Á8XL,Æâ˜Âk¿~ë# à•ÈUÎ?KÊïkîÉx¿ùn×=+'|Ž…Á V]ÁGéÄx9pÀjHMdëªÚ´ŽR;ÏÔ3ÛŽ»6w©Gs¡‡[€hk8v¸|³»0^®?PªŸ( G B½ ß¿¥hTôç^*nl,ߨš‰ÁÁ²/L•¦e›‹ÕNÈ^•TÚÙL“d°* É•_¹ž>•{Xe» '2HÕÛ¨ <”xÏ*H§’–‰_ÎH-ñ"¹ÎžÇí^FêõÅ8Rõ˜”ÜÚ5I˜ƒ£¾ô³º'®MIŠñƒ£uïÆ\?Æ%#)¥<üòäÆ.ûÐ8RÎ( ¤Ý-ÃþáÞ³ó Í6kÎ?s§=X/ij±Pj°Ã¤$TÌ¥êÔ4A ò㣔ÕèÐ÷O¬ì^Eé~d B{+Fù`¨$G¡¹d¶ÝƒÞ?ºeFc8Ýæ!“±ŠÃ[f;6Ü0+c@¦]v¥H88»‹(å³pÌhV‘} q,ÚŠ=·#‚°JG{,Î¯à”‚[€l²±j`F±çMºª×»f:=““å`¢:Šk!'Ø%|d„lœ~›\®`N[-&SãÊçr”LM¨Ô¨q©Ôÿ5®Tl¬†,X½B>žÑÇ’./|ÿUìá; ¿wÑ*j}kæÛûÛýìß”¸?Ý/G¯=CÉ–¢c誱E¨»Š™a m$gPȳJ)oúÇw5ܸ0È\º’#xפ`Ë1áâzêlV®,:M¹Â,MvQ—Ëå‚‚ÓŠ3ŠuÛ•½ûÈëoÁc4I^f…=G)=áé P|éPèªhnuË">KÈ®‰F!9ìu½ºOØbÙz£ÉXÓ:Jítg&v¾ö„mÝÏâ[ë飣^‰¶æÈþÄî(íUšàšúÄÝ] ñ5Šïü! ×]Žv{ÚCLÓ:’ò<ÔzH6™IÅÿJa­‡TZèLÈJŒž ­m}=”‹»šf¯àÐR)¶)O×¹”©R.ù@R/Þ=>Qì˜µØ 6R{qhåjO¶;#År”‡õ‘Èœ˜1§Ð§~ùM½õ °àÛûŸÜ2‹ ÷ïÊvÜ"Ú—yÔÀ‘²›P2¢ƒ§”·§ZLÃzlÕ±³‡©ÀÄÈfÒ²êK‹d ò5)¦¥¤Q'ÉrE_&ÁƒB±®Œ"ÍöÞa¼uìˆç¯mŸò»Ô¡ª¯R¡–ënpÆClœ%M—ž€£ã~@Èç” ÓºŽ™Hþ\d7®~G}5'̵BRž( &’÷†0FŽaQÓB­òÖAùúc[§· …ÝÕ kpˆìH*\A£ :ÕFez„˜ƒôï*»üL‚ùJHFp±©e³¬nw·ß] e=˺V£Æ•Çå8þkÔ¨qÔÿ5®Hl¬†QdK#ljKÿbÐ÷'߀‡ï0—Èàhõ–•Ùa5ÒÓlî? V,ª »æ’–lKk‚Ž¡V;Jº”IW)…T.ªÉ½c7•¹¹ËVdÒÅ,†Í—ÈëÖˆCÃyP|µ*Â`¹öša©@ÛìvHØ›Ury¦Ë½4siY|öʇ®ËüêCg÷aI¹'ßÔQ}nów:ŽNöù^«løëø‡ªšý3ò?nífe%º’ßþzê±53&…B¾Bo݌϶¨Î!0]7ýø iÈ:KÊMŽÔjwöGí.2¿Jx¯óÐznD2é7äµ{Rþ,:¾ÑUšåçz‰’–¨ŽU A&š®ªìàQÝ0yÂlp&ïoë·ʾIG#] üÙÃ=9%D"«T‘ÆâÙá¸zgÆg¯@oCâêú⿼Ývæ$g]ò©úŽó<®¨P*øþïÈš¨­üžÖ¾³(ÀG¼Q©—ûÏÜ_u·ª¦¤Æ=N;àDZ\>«ŠÇä‚Ê¥Óev¿Ùz›ÃÔôþ){˜J’4Ü8~›ïdÑ"¾‘ÞøJù†Ô+)Ô÷û|·öÆgÏ(aîoVï÷(9Â(Zá¹ïE¦½¼šC×*…ì4ÛÑj¿fXñ¢trÞ¸­7þæTýRëPž+tîphåÆÝT^ Š‚¤¸´¥Ò xë±,\ ·œÈ_T'Œ5®jJ¦F5j\>eZÜ,­<”ÒþðQþl3K“/ÛîI·bBu‹3ƒZôÌ£6³,ãî—Óë N§ ™’ÌÑdÄÃgËz öÎhÝÖ2{FäÓ²¬Å1MMUAŽ»óÓMö¡‘² ³NµRlùOÃL¡LÙ½ â4CFK›ôÒp’Åžf¹eOYÇh«[ó›ÚËÏüT8|rA­‰™À÷Q»Ž‚Z–O Þ9Eçdèßö9q¾·œÝñ«·ú;ªw+ßZÛ÷³ö±ñu¹<,_µY10ŽÑV5¥QöHÌyl*Ì‘r—orµ'û܉U’J3XՉ绘[˜C½è”T–SΖ"Ÿr•&˜Óu– Kq+ñ [¯ct2[pÛT‹ÇM˜ 1ESnÉUÁ¶LxxmVQõ~t”€#cü¦ˆ|¦)¿-˜¿º¾¸ãä\— ¾”õœzs¦cóùŸNcGÿûç‹%œIÑt¾­­]aÍEGó|“j 27B³œ`wÄRË”3žÅ2!S”4]Áî~(ìÓRÖ©´P*ây–M–Å«½®ÉO5iæâ£FäUiíû®â #:þöÔUÙvn¦viÅ´"¸lª&>NÔ1:AD ]´³s¿NšaÅ+X‘iÙC¬¯[Á÷%™›‰k¹Ánjz—º^¶ð’EŽÃb;TtZ ç‚02FÐ9›- ÏV*GÀ‰ñZ[Ìÿ-¸ä첃<¸´¯Ùjh5j,¡æø¯q¥R*ªã"•J[Ÿÿëw¦ŠÎæð9=$k£ñçûÛ¯ßXùÞ/*›l,šNÇie©2acŒ¥„Ï„ ÈP8,}´.YcY&ìsN%³‘dßT`}™Y$„JUÒÁ.X5 Œ–8zR0Ä^ßFNR*8hy%£T%PMD Š>ÊbfyÅlû›ÖMw±NR]¦Óü²¬n¯´Õ£ÁQìKÿf…¼èÍxg…¼¨5j=t“ÄsÒ³Û<÷mÈ œùùGMݬg*ÅÆ"«öFÞ×9ô‹6ü‚< CÛÍ , RM3JèÚpiÉxŸ=ÜóP×`w <ßßþ`ǜۄF2d‡^•0î´U7Õ'Žnoz„ÂeÞ,qzÑ®åRŠp鸮ª<…I:„h9eoE4KY-ÜÖ~êðˆû¹·ì÷]« ¬ñÜ€ú=§f´Ï½'}æ”8Zm å_?Úq"´µ;î;»æ•fÏóˆÅÆAÕkS$³LìzF õi‘«Ù>ÛâZÆ9*ZA¶úâ1Œ íºDò|þøº÷Î Ñ2«c“­ç9Ã2Ì•ÞRÜŠ–«&Ã`U #I5ÒÓz±4œŠZ•“F IÀ„D<Ñq HÞÑ¿;n¯êïCµ ‘<£ä ŒÎØVpJÎ.O—„Æ,Û¤)Æ(„iIm¡Š ô%³E;üîæ'6Šb:‚]•îNjš#d£f ‹²+SfÀ-›uÉaü Ã˜IS~·ÚŸÄx¶æ“©qås9Jæ‰'ž€Ó5Ê–´¶œÝüÆ7¾ñ_¬d¤w?Ùñ~ìùþ/_u¾ÿ7ÿ½§Ô¨q)Ôÿ5®H†'M„àÏ¿Mþï'5Á.~{Ÿoë¹s”r]}bW¼ñ¡uÇw˜lݘW2¤¥è8}ž ./çpW°<0ŽêÅrÁPh:>]—«PÁ£Þ¹…¯L8ŠÈЫ<•Ò’T’)‘î¾i£­Γ]¦˜­€2iÓŽ#L±±ÍöÃo(ŸøsÌ6ãCù Ÿ°²ë»–ºef xáåcì–†ÊtœrÍ¡hÐ{þmæŽRÑ´m{µ‡³ñ•¹Áv÷„­÷mk- „;xÁÑ1ÿ)•)*C†@V‹­¼->Qöõ82‡¿2ÖÑæ­b8 0ºLº\žw¼·6ÁXïôÎ}‘[tœÌPA Y@;'(Γ6¤T%Ñ. Kæ¢Ä6ŽÑ\œfir_Œ;•VÚÝÆÉI¼o:°±¥>ýÌyÖ0ïoê =òRó£«Ï±.W,楫Ê4SãPo+ÇK™JæÍdŽÁ¾KN,YÎ1+²RÍÝbΫ*%ÚCU i)0·=Ò[V‹; k»‹;¦Bî(ŠaÑûËïg×fÜýç#]NZÞè T©böƒ­·X8éÔ³ŒRÅì ˜©åÝ”"e©I†5ߤœ€!r¥ŠÊ’5ÝHfòá_R´VÚ5Ò¸¹eœÁªëmC¯¥ºhÕm/e¤…ψ$æéµNçÛ9<«ÇóÊâµ¶˜5þ›p9JÆ4ͧžzê™gž˲¾þõ¯ìc›ß|úé§/þRKB:ÿ•ë{àb“jÔ¸4jјW©´ ¦¦.œöŒ¬ ^>9’€­‘áŸLwÝpmêK?ɶÜv®„©˜ø2¦Œ¸@]J¦ Ñ‹ReG‹«4LøŠÉ‰Hþ”…аs™æ$–5–Iá“cÄC3R <åDÕ­P>²Z$4j<ç«·'¬s+ÌPŨP>AMW(§[ÍLÔ7±Çèwß.n¸qnLÊ]øAe`çAôéÇ–¾é«øÐ$;§|0‡om®®n‘J€´»±¥2úü”ù'÷Tº0;~&žAu¢ºÙØþÞôÐ0¶¦ß¾V3 @wà™yû«Ro LW,vG)â”(YÚ>%e#5„fkd&q*¤Ø¦ødreæä´§Î´(‰vé@™ˆŽéž&khÆ`šðLâl‹Ž©ƒiˆìgnI¤ß"Aÿ À‚iÂlGËz©áÅï&ïþá8Ö~Ô `ZA— –åq˜` ò¹P›52lÙó#@€©Kãy!@a$gfž™yfÎÙ™çûüH²K¤lvG.×[éˆlj/=6äïdñÜbûñ­ê èk¥Q›d\$®é¤Kyeð¬ê6)MtCi!qYO—^s„Õ«Wïܹ³­­mÌ­ç!¤müìÚ¹cİsÞæbË'ÍÜúÝÖ ·81Ho¿¯æõ¥¶?Ì#{_äÞ‡ŸÞÔaËýw|táiNZúÈï\ùÈ‹‡Â`tûV?õ…Izù®W¿óÀ¿ýncW3Ö,ÿÏu¾§\ñ.Û{Ý/n|v0 üΉ÷o9é¶{«oCi}n®î¢oW |Rqر«¦%e(ˆì»!íà¤PR7’ÆjLX2?Ó6x×Y")¬®H€æìMëË)Q‘‰ŸÅô¬”šî÷ô»çš‰sÅÉŒ ÏùC¤G¡(e-OŸ€øœ«¬¼®˜¬éì…”L0 yn½vt1“Ã39|(Dýa;_cUgË]>! €òxzœgè•KG·Å¿wCÆXˆF‹tú1»`>U–+j© 4‡a|kQýåJz=Æh~‚Ò÷A¤A¤Ùk¼þ-†ÏÔ÷Ÿúj0j˜õ霋Sœñ„¹ÅTUE ˆ¢ÁH<Æ•»säÓÀœ~XL•Žw˜ïœ/÷fʽ™Å3°¶^fçQ¢eŽBã|ä·©u®ö ºŠ¢´ÍöåA /9 TñNTd, µe°Ô¡ljByÐrëÐ4@¡=n!pYÕ¤ “^;€O »óú\3dh{UìÈù¿‚éã³AŽÌ÷gH€~ð&œàYÅeVÒíŠÒÀºhE0o´"Ïía'Y²kÛŠlèb°ÓB€pJ¥uyœê3ã+¥ªš†4 i#ôiLŸ:£Ò„"©äeò#mŠYK©b¢y7p[%ÉáI¥ñÍÝN„Pƒ{€%ò¸JØ9ì!)¬\7œÁm.íÂòøœhZSÞPR°ÉøTp)Jž~úi±Ãœ”1+W®Y1œ”1pågÁ#;ƒ ‰ªòæE¿xfcð¦;\¤ö=û.Zºvª.{à›Wßµaé_[ÞYd~ó+Wܺ¢æè;7Œî£%·>´ä¡¦û×û÷΄=_³øš‡j[žvâÛW}nÝ’½qCm>0h<õ 3,z~íý»Ny—É]÷—ÿìé÷ü7ßíÅ!±û·ïËÞšZ1þ^ ÿ>©ÜtAƒ]íì¶ýÊ-W «<ÁßÝå\:é|µ#ml¼Sp°.‡¡/x ‰žYgdBÖp×& IDATJ±–å%üh@7Q;ÁC\b­2É©oˆvê„QKž`Î÷5G<+@ò¶uk÷Ï„`tR<ÍYã`0˃8¡ÍY)>ç~ÿª™42—pV/gR,Ÿ¯ªñlx¡íƯ)úR]ªç\ûÃðèsèû÷i<:ÁvQ[;Èy•R¥Wú¯ûNY®žzÃ1·\‘1y•="x‡·5#˜9Qxí©þc™ÒDŠí/,IŒ!›ulMÌY™±YDêl¿hÏ_mm=˜{ZCâ£Þ…•Á2çhЋ]lÅëüTÉ€¯zv÷+*Ïw@©Yމ$O ¡˜"{Éð Ûµ(b(8UÛ„‰Æs5¥£nžUk³µŒàMíø+»ññÁ~½¯÷ÄäÿcNg&O"€Gֺ攈ÍCT˜Ù œX^ØõR³&KÍ~„38<}÷ìäž>kož—óJ“UóÙf¿vÏgrÉâ©,ž‘™!Ïd¬7‹`CŸ=GÐÒŽàÓÉ’*³sU„…—C&N6pèX©[o' <”iýºW”GvòZ+óÛê—ÌJCùŒ¡»™'iaèÞÉÇ¢<¢y y•äTY–E% ú<ÂÊ;ÓzNbÌ¢€¢pWÙT?!¦@D h Ó& *†qô@N£ÛC*Ëp)¬*¥ä-nê€XòÑ@±ã ¥(QU\D1»$ëŒJ’%Œ Gå`Ìò çâòÆÜc/ssþÑ®. ü¯pé6™§žzjÇŽíí£.ÂUUUO=õü½~bWþðâÛ’e7®,ûñ3ë·ÞíIïyvµìíI|öð3/D®yþß—1%Kù×Ç'þawü3£>ÓÙëßoxùësí$ÀåÿlÙS7?wèqò…—â×ÿññe•<ØêgÚÎsR¢dÙë{æÁÏ=P”Øþôûº[7N¼¨Ì› œE!â¿À' +•MÀ9Eúë=‰%Ó„`†¼€YÏO7µoIÔ_qyüÅ×… eÀs@Ëi™ÔQRRÔ¹Ö4E‘à!²Î‘W0s²Ó(…}Zp€ðœ¿Wª¢!pùÄeÎ4’GM=¼œh1ÍÀ‰Ô’‚©ÎèPÚV¢‚s;ãZÞ"Gýª£ ‹Ç(›Sò§ˆÊli¥y¨ÇÜs4â«c1WÇkf²ðÝÕäÂ)Ô_·R0»^œ;)³|xV³Ã­úÖ¶djjt1WÕ×pa¹»¯IL=¤ec(™B”#är´èëêc‡ÊZÞÏ‹†=ugéÏU²=>uxŸT?{rüƒlÓ³äIJ PZž•3-¨Ì‹E"Îꆶ·öW~­ …z dÜÃê¯TN£æ:µˆz “'â¬Ì“üøûÞaUVeÚ4mïŸÞE·¾õ*r[XhÂÆyú?ØM”3×ÝQîÁ‚1ÿÀø«02#ñqŠæÈ×üEˆB®Þ6Ñ?±<¼yöÑòŠ"ÏÊz#ñ¢¿þîI-*!ÓN–—)]œšédòHåH@(•£ú#< èËëóÙä{¹R Çp[³­ÈqÃ;¦aIG  ¨TVV&Ù¢ÇSvÇojÈW›‡óŒ#Ò@ÈBVM„òy9Œœý¸» †¼j°2´ë¨áF2ÂX’ën5Ôóñœ¾ˆ2d>J‰)  ?Ž6§ë%@%l/€ã¤ÞåÊÄ#R.›éµíuS|~Ð1‰ÞØguÒbXÓ  ¡/ïU fHMÕzSD#hªjgEPÁÌ  jFN4°€ªceÐ4ž•G”0Ï© ‚^W°ÉøTpéÿ«V­:)c ½½}ÕªU¿ùÍo.2â_Ó4„¶`×γ¿»õˆ,ý콕ßvÿÎåÇ~÷Ó† äƒíÑ]·×zi ‰ ÔȪ£JFŠö¥-ó]£®§´«Æ’ù ’ w§¬ó|Ï{¯[5å›ÿùFïÊÛýf‹ý®Œc.¼SgQˆø/ð ÆÈŠ _.®´+íýü†Cº> XΣd€ÅsÕ\ØÅ—Ï~oKrù5*%¥ò:WŠªÂôô«Q¤¯[õú(:WN£‰N‹.Å‚=àJÃù@[´#rÙ‘#Ù+®¥t|ÄúN‚Àl¸<*'*ìáwV|Þs¾( °iÃI U4¤pC™å’“fº>x%tç·cŒ×–í:Ù8“ÃÚz™x [{€®/W*ŠÄ%% ž{dŒÒ«wê´r_b’¹-N»Â-Ë—(vJI˜;S5”»ÔÛÓm¿Úé«>ø—„kbÌVš>3e3ƒå¦QÇCÈY9ÓÙщC·V[šj’«p JqT5 MTó]Oœ(›‡—Í&"&)b%ÖjÞœIAÞ~ÒæAáûr+gF8FÊÈc{å5tn WÍ/õ™<ïjCa4¾}eÀ`Æ„ÑÁ ³”Ž´Ä“6¢Ïdzã‰bD’›3IÝ~«¯ÄôFjG°j‘¹ËBÅ UZä§æI›6ò¯ýÌgíqê²c$±ÄÛǪ&vïæ-DÊP Ò"3”ÒÓ49o:£rƉ^éJc2)­º5áö«zF¥ry#¦0ëØKˆÐ eÏÈa£_œ6¹£‡ºî©™ÖÆÑ[²W£ø“z†S –›olZ¬_LÆX"¯ÈR208‹“Ã}s½CÛÞ«*†rœÞI‰QžãíoNØøljVÕÅd²™< ¥r$hZ2Kô‡5œÄ@Õ18D5V@Óó%SàSÁ%Fü?øàƒÏ?ÿüÈbUUÕˆ¤Y3b™¹FÄÌÉϱQ¼ô¾ÚGž{û˜eý&Ó­›êÅZêpW¼ÒþÜœÓó{Gþ'ÍEºXÛ°õÖï³ò¶2}´e07²r,ÐéÙ;1ç¢g}õ»kv>Ü]tÏÕçÚ©@óS°Æøä‚ây xV™T¬*Îv Iû†mZ‹ojy£Ï6AœÄK ïê«ÍÁ=”ñÐñxõ4}ÓésLJm—óûGÔŠH0½MêÒ)ñ*Þ#:Ópá'±¦ª½xe`Hº¹²/…•ØÄ4XÅhœóC#Ö4ÒŒ£š–Ú¢»!už£Ñ(O)âèàg­J"‚«])²×ìxùÈœoçv¬¸üt=C£¼zMt¢obiß·#FO5Jð^Acªa Ã7–jÇJ†šÛË'ddÆDÀ°¦/×ü Œ›¥î’æw¥õC¸S‡†®ÞÜØ*Ëê€a_mgB÷Þ¿Õ×€µÔi²›ûš7í$î^Œ>G k{?h)ruf½€®-m;@êª+Šô‰"]Ëã1 ÜØ4ÏÂ/¹)E4P£_- @ʵØëâ¢ϰâœKçŶ nk;ן€YŽÁ¶˜ˆÆ“2½/b`h§!IÔBm€²ØÌ´h$_q-“LFr&‰’{˜êÚÜÁ8btiqú(™JŒå¤žaÅÔTýÀ[ýõ·”U–²‰ë(É u”˜‚€Ðë=esê %Fz˜tãƒaõé %wÍ<™Øzäïhä_ûÇJÈfòdûï¤QbÖ¸,h…ºç>-\Êo}Ä&3òyÅŠ\±bÅÇ7]ü¡.~Ü{Ýý Í?}ø‘Íö;€ŸüÅ;u¯üË÷ßíΨ  á–-ë> |:r+—’o|ë‰YŽìzâ[¯á×ßÓèh|àvãÛ}÷­®¬¦IáæÝG#§?Nqƒ›Kuö¥N¾|eþƒ ÿñ…oyù©u (Pàӌ˘:=Æ…gä‰å!'ÅúåC•Ç=Yqlû ƒå&Ó}Lùâ…fT]“"­,®îõ»‡£0ƒ?:Ò&¦¬± K‡uJÜKez%sZ»¨ %;!Øï;Š<÷·™{-Á|q‰¦O ùXP;1wšÆspë5@¹J1†ãC-uŽà¬ºìêu†Lîœ#Žg•¿qÌÏрˡg!«·õ@\1'dzvìü÷vôçì>,$Žlfnmnò—'”Vø¼ ¤Ò™Î®îC'l´¯>@Õp-áŒBó:oé#Hpš´Y¦¡d§Rz–c—I²ñ"NB×åüùÖ +–ÂÖ%'ý²ï3ïŸpuÙ~BkØÖòp4ËæôE9C‰Û’iЇö V~Gé¸$ä(«JŒÃ œCi>.‰xZµá‰åá™Éç7Ú3¹±ÓvŸäH¯sk“ç{ï–vØ ðàgÃuYç 6™Ÿ .Qµ?ùä“+V¬X±bÅ“O>‰:}ñ¿·gƒ{–|~òÀæß]·V¼ËøioüÓ¢c_k4à3Ô~öG›†å“ÂæÿòÝŸU­]ê$IÇõk+~úî ŒˆŸþ£÷W_uäË <†±•7þê@òô¿wºú®½ªón'Žô—ÿ®OdšýÅkщàÄ/ÜP|‰) |Úéìì ú/PàI8¶V™Y6Œv[c' ôJKMS°hÌXÜK'Uƒ…áÉ¿þúx6‹ˆL:p"Œ±PM]Dµ‘Èc©€—“2V/j:)“ÃʧººGWÍDq› L§@I‚±øÌÚ&Eö|køÂ –oM颂I@$§e"=Ê«ïëzɹְÀÑ×i5ã7,75ÖåVyón–/–.xÌ'6+ÜbkwXÄCMäQ­tº± (L3PjL"À ƒxòœGH+”ˆQF8»…H±Q‹¯«f~¨hŠ)ÔQsäM—¿ZÓ¥ÄêéÎ Ú¡"ègËÜ¢Î[¼L¦ŸUÄ!I/’LgÙ<_`—19zÌ ²˜åˆ¬‘v-Ô׫º² ‘CùÍñú¶LiN9¥g¼í»ÂóÒkg/_ YÙPd Å_ÿª¤Mcmfv½0"üÎ…Ý^X|»Í›:*i‡­¯=1ÉüAjÜDòÂSžD“Œ™®p‹+²r$ަµtC{¨g(‰'“©tS¨øùö.˜’UÈ;ØDSʶ¿_çopÓÉù%áCÄÇæÛ­ôì¼Åq°’ ထWe©Ÿ²—Z³2SaN]íkþFùމX«AŠ NG g<r¶ô‘ï5¶Ä1¦Xï1tH–‚ÕýiWD0‚’†S˜ÑUú>ƒŽ¼­Ì®˜ä(¡ 0©2¶¤1ùüzË¡cü8Ãiã±AÏ£NühÀdâäŸßؾlŽRUâã- ødséÿ¿þõ¯Ï³ø?æ¹k‹|׫¨â¥?Z·ôGg¬s?ÕÛ3òIßøàŸ?øç3ÂTÜòÄæ[ž8}9ýä.÷®i»wÍéiOËxŪk=˜)PàÜ"þ |Rá)áãIŒyZ€Œ@÷ VØÂÝ ç_:'O´Dê̽§7 “E2Å¡|–åC‘¾åpp^£ZÃ%×~ä¼íÊıîjw ÅK š¦AñbŸÁÁŒS3

3}DÓ)£#<åv‹Õõ|Ïéuz¬Öªœ?EA&‡e²’+Þ¿ÝOõw›¾r™ÇÍgæN¡—_-¹¬e϶¡Ýa÷4›li# t12fíË=sÒñ4~Ïœtg/±)_wg%òà ¥°0ªÙô:-ÓÎ5ó¨(HF¤Î9„Z|Q‹söÖ–²­`jªF/ŸÂ^<•e‹i’ò'dFÝtòX¶f<×Ú\~Í/wJóE’Iaœ¤á2ô'@Óæ6„sRZ¡-ÝÖ¹¾þ¼ÆnÕ×±¡c¯sà ûjà¯Ý-±,ãr{¡0–I\> ß¼‡¸b† µYИW7ê–/<ç=/sÆ®¯Vvw[¼^í¾9›÷P›÷Pýeã®·4›ðؘ»P˜f¢T@ÈÂ"YÃÒ2/æâ‘Œ’‰~‘}½;´)7xÒ•˜×Úk‡ʉå>Wô0eÚ;èM†°F–ya©a?„ÔF;epdñœÏyÁ?Äײ¹¨“—lùt‡T -ò„$%˜Œ,Š>2 x¨Ë¤Ñ289™¡3šÄX®šDDR†Á0•É ¸L£0qãÄè¾!O2­=”Hà.’N£áp‘&+ª¬h²\_"ÿ~3ý¨-ï°©“˜®¸ã~— ÏO¶E¾åÒO(ð‰çïV2S¦Ly饗.ØæRûóO‰–ÜûÔÓO,vO \"…ˆÿŸl…³=¾8Z[í†G õö¾rsðx¼äÀÔqúp5ß#"¦Ÿ(GÊ3Gö§ÆÝؕ׽ñçîq%§);¡Lú 5n±/Èj²—@Åz’•Nf„.ÉÓupðË—Ç#ÈiGG½:-/\¯ÄÍ&Îk=¹4òÁqûg&§³yÒyr(̨~*ÃZCPm–\Fɪ¼×e,F€\\95$Y.:c¡{Ã;]‹ê6§ªÚ´}åöüÇ»tÁ(ˆã7ÎOå÷®•³âÏì¶M¾Œ8)óô´$F_Ð<‡†Âçœ"LH”…P)ùg<œ®m2^¾¤¤©.º“;ÒŸpÔÜ5@’„ÃL åJŠôE™H:= T nÙhJR7ÏîXÓR·†I·Oì°cÙË'–KæA”—t¿ÛQ2ÙYä<Þ›vvt¸ëý϶O»5á7ÏQÇ•Ó:>àÌåòP]¦¾·8ÔD6ÖKP]*‚[ö2󧟳ó&Ú֌ͪKÀ´‰Ò£1­,:a&O}}Ry\&1ÇU–IE ™€Î8’TmMWÍÒâ&–8åw·jå“àøpÑስ7‰O4&”wô¼r#¤=0¡sGª ')Ach”×$I@ }¦É+3˜Î£žìtУõþE[6ƒ>žÓŒ¡Ù˜¦c5K0%Lƒ #â ñÛñ¨‘± •fBL³Ù6L´¤¥¾Ä·û8HãÍi–7±O¦GN„2éTPQë>F›6‡¼f$4èCÿ6ù£óÝ |z¸%óI*çE~ùêŠÛ·X>ûÛM‹­Çk´@³)Xc |Rá(!”•Ž’ I°ñ‰›êZ;CÖ—ö•ßÖØQ/løÀ÷måWÚZ~·Ö~[b­gèTYIžÓ–Ì“ÿðõϪÕeÂ{Û™“Úf„`” âÕ%ùáÿÇ}æ9E©=Ý=+u*EÇg³=:Ÿ¨C"‡‰,.K@e5R"$Ré3CJzãŽ:9bãëîäE ŽÖµ×BF-ëÆ©b.þãí57Õ†¿6õø?´«¢h¦Ä°Hk4H–„eÉ‹“6g~4Ù@„0—Ë}F5#"ÆÃ%|À‹¡¨ÄH* ¼x£‰ÒL¦µ¼NKr™¡^uÙªyBÌlï°Ôº¥Ëj”l&jp™2YĨ’Û²²q4fHrͻÛT ¯(>xúå(P.¹2æ§ÌyÛÆômÿè^(P À?5^VÌŠôYJ†£;'v‡leöðÉ•8®YLªª–º½#ÎÇrÚ] G>øÈ3a[>©tR¬ÿçëé»g7ôdb¥³p¼S€x…ãþÖ<0΋ÀmÕa6£f2hñv¼—TÜeÙ^½Q€¨Hx>L(g’±ˆblO±Çû' dI%X)ÁD ^M«Ú{az‘8±ôŒÔ·§Þ?–•íŠFC$(dj¬Ë@7[S¹ãårïm¸§LбäùFœ‡[uà°ˆÛZ@U'N2¤ ÅÆNv(­3qjPÎsÐ40öq (Ð&< cEwgEº+æ8±..í:yp8-Å™#—ðî]“f-GðÏ–Ñý}Ý©@?7½¸^3èã¨|ˆwú-®áöB½!è]è´dü)Ê@©¢¤`ÀQÂx令ҎDÞÀzêã3ƒGNp/~)D¨/*ŸÕ%žÕî¹!ÿ‡79¯KuXžÕ–\žo…1†®azGQÎåÆy2«ß5à,÷­%þ퇹{gwåü´“ë›2µ9—' *Ttiù|¹Ž[¦ûΔX*ÕEÏéJI!œÀöúiY§8´o]~b$'Ø8è°wÒŸáa•Ô òÙ¡ÿôãDq‹UýJDDJ8[¬†ãȨGñ„ˆYuD&–§µ|±œWP¥^KÚ ˜AÆ,® b^/ÅJÅé#ƒPaÅ&Vk&-©Q0ÀU,›ÌÛBå3JÂýª]RбæôïÑûùë(ði¦ d øß`$Ü¿¢â|%É ø¿‹;,dfià­–â{ÿ¦d’šé ÔUÁz³*µq¸Æà6”{„î°#SL™~dv7Œ7¿øZ绪ÌC ‡´ƒaîî™Å­¾€ç”•‰Tµ°;‘C2m*µU˜4-.d8ã;á’`Ö£U…":9ŽI¼3/w5sdþtÑepçâ1B‚×¹/¨dºäp»=+ñ9ƒèA¡›¨x «¯¿÷ºî—³¯œ½çÉã ~²m°rQéñs!“Ãÿ°C÷ãÛCÁ±µ“zä†ðs•Ÿo­Ïfg!!á¢z†@½2Ù±‹c*ŠÆÉcɄ҆߯þLéðãÙ Íhª'†õvÓpÇuý/(ý Wq ä~ìêû+ýw)Â;öî¼ÉV2µ¼m“­‡ESÝ É|6椒O}ã³ÌÍ^ÓÖŸ(ÿxûÒ¼îkæEûûwŸb‹4¸Ïa<«ÝrUþ¯™•KsAõ¤—éõÕ-GgVç?;-É0KÚ¸Š™¼r^*-QUJ*Ûntû3äš7˜/ßš9×í½ü”>˜&mü©;“éÍô­áZ:h;º©¥õá©ÕŒx9„#=ºË\YATCYƒ•TÓ@g²ˆ@$Æ@f3²ˆd4Z]..'JtªvÄF„QNÊA¤¹a`óiâÄD&Ko Úõ,L2‡kÍ‘bJK„ŽBiÌB‚EªÍ WLP?ò»—XŽôûQ B•Lú»eLË0Ƴÿ£AË ü³ðw+™8pàüm>mh \ …ˆÿŸ`ç…]Ÿr°b(¥·ëS}jÉ j›Œ· žÍ“?ØTu[}¨–ŠgC¿Å;u^A´Ï¯þìgý«–Ó3æzìÑ×2î7ùŠ$»ñŒ¸p Ñ(…Œ©,íIüa+k²USlõæ@>Á<¼£“©Ñ« –¹ZL‹ŠÁEÓd>|ºubAÅ»)ãäÅPœ³›²ç¹RŽªMI”µRG|åúÈýc/óWŽSè©Exæð´á¦¹q=1G©ylQ´~¯ñ«‹™,úÁ«¦§æÚ“E×ùO޹­¬Ö?ûNzlÉjëøügc÷Wõ”H2/„ßUºn@ÇåjG´IŸOˆ$Ê©òÞ¶­ƒÕó‘~*,ø´Ð¶N¯Õ+ßTs¢+b_}püTgd¼wèÔÝÖ˜ï²Ö“/íUhÐ…®­ì5U„7nÆç™B¶L’ÓR)¤K–è( lÿµ½á[þÀøö¼a÷VÝõº-ê¡fªqÜ9ëeEú„ß<ÅîZ’9T­k˜ÞäÅL^•3iCAµ\Ÿo$š‡<€Â1„a€ÂPw† Q‚Zî}ÒȆáXÑGñÀ†! GÕãÈp@:˜©Ž00¥¦8f0_!Àb £ñœª$e’ÀG ãôáÑ›„é&‘À5„éÚ‰k¤š,IÓp’À <'PÙßë=t0yÓ¼B:²ÎÇ¥(™ûî»þ–£ì¬Ò–#‹Ï=÷Üÿ=%“Ýû`Ý-Ø+-¿žvvvüä)þzUàœ~&) IDAT…BÄO6fFʈ´m,£Áxwì@Àã )@0“<Á8÷‹M¾o,è±›2 Á;[ŒEžAG £‹Ö½6¸d67g$ˆP ÔÜ„öXÜ7Ë“T4ÈâzEC)¤CŠÉà}]Ùí›c+çÀcwåxF¡Q`WoÅb—XÅ÷ÉÓ•fé}©æ¤Œ1SêáˆÕÉŒ1.1J“%(³e›û óΫd`JéðŸvM( Æ/åí7.¿L4àÉWŒwÌXÜxàO›gþdÇÛÁ'8J8kß‘2:Vúþ=Fá%>ù-ÆïÍ5›˜””¤Ž1›>fqL0PÒúPB÷«½e7×…ï™zN£˜,V41—€Ãæå5­²&j-Ö¥#W÷¿?׎ï=¸øÐe3ë¶ …QŸ` z}=;Ëç84Õ>1l¯“þVœ´¼ysÖ\œÖ[&í²¾þæxD³³R™ÆÚLƒ{ Ü:Ðçþýžqs*cFRŒ ‰&Tñ²ò¤Ò¹g‚!`áeœà”ÄøyܱAGkÖö½- ­¶Ÿ0^Îd`W@÷å«zm|‚õ’‰4¾õˆ}Éåá?¼É<«åd:#1)‘N橸@©Šv$Æ»‰|OŸl͘)ÒÀk»\¥eUñ1SkÓ­·~mvïYÂøt^ßí›]Ý7Î#›¬LÞHϾA·dksDpÛeÎæ³ö2ã°69uu?H|‡†°ŒHÛ±XŸªäC‡Ôz‡)ÂzA†Ã­ºwè~n§þW÷Œú¿õ'3¤ª:½>{°_ÿÙò¾ÍÝe”Íè°„ @çæ³0kšöÀÀ3Ï<ƒ:kñ¿¹Ÿf¨Ò›¿ÿ}TBBv×ç«o£_;Q4ÿw)Xc |‚ÑÓBZ»üe‚¶ˆ«Q¨àú kP·á˜åë FLÁãO`‹§GŸØYíÊ’_¢‚Ä”¼¤HÖ2Mż.d×P,eæ± -§))¥Og÷5š¨Ù5™›î;åxJ6ûÍß™±†"( Î:òT|ckú¬ÿÚ8FAÁH @•'ñÇmÞyã/p±#9Ø|0ÆPfE/æaWLO€A§¾¸Ç¶”œ5§ÿÐzÓ„[‹¯ß~Ö¾ïí×-™šþþ+ÆåÓ¤HZ:°=8ùT—l<îOž[%hÌâ˜)MgÂGÅR6O¾ÜÌQÿ2£û<餀eY³ÉÔÝÕ ={….5âk7R‚&jñY¢³B;”­ïZçÆm¾Ÿ·w€ðÅ­ÕÞŽíqG9— €¦,€.%…Ä`ÍìªT«Fà¿Ø7éæ…9žË¶õÒO®Ñß¼0ëðÓ& •´Yì]Â4s³Sèщ1NŠJ.®?åèáe“¾9R ¶К Þ—ojE JÍ”¨·[ šÍ& @‰FSÆw¤8I.±]E¿•,ŒjÐ.òXÞ@ •¦hÚ5•‰ÃÖr’šÛॠﴕ,*OÏ.ëŠí‹þˆ»ùáóʘ]ÝyÂZ4)‰ÿ­p§ y•e°„q»U |¯Œªúðü¾`e0F„óÔÌ¢ÔÜZJ§œòëkDMû•†Dߺ1å2)?¾=ij ì6Žl ék8REŠªœgyƒƒÌJL_WÚẆR»þÜå„ øÔs)JFUÕx`õêÕ iÚoûÛ/|á 'Ÿy晋?ÔY&ÿ(’Š“ÿKù˜ ç¼w\`а@þ‘Œ9ƒ•WÙCÙª F9¢,¦[˜šÙ—ölóÊNó’)™_ì­·g†céïÝ•!+3 à¤&ä@’qa­iTžÐiS¥TÍR]ËÍŸNc²Ô¤!JT ÑZþX/}uYlHp³X ·9ì]Zt*H£5ä˜c‰ŒÕMTŒ„8Fré¤`Œu˜sç¿Þ‰¥‰íGx ‡}¶.wÿ¢pLe ¢HXi“Úz‹_>h¨žƒë‚–2Ç©Äb[]Få?ßá½)ÙÜÃa4£©ªÝ0*ÆL ÊŠZfÌ€£s¼!Ӫ΀ç kÈðônç“ã7”õœ¿çà°ÛþQw¯cóŒâÀY ¢_ÀRÙ]Y9cóÓÞÔþ„7ZÒ¸îX´¶– BÌëKd™`Ú^W_QÚ4Tï—!@«Lâhá lÞ,¡÷䳂}¸«8pØ> Q†TÀÖ®Œ5B²½Ú‡Ç0ÂdnpI3Æå5‚^~›~A#9*Ñv–#"‘”®¨"¶Gu©¤8³X(å£5üмkY9Ùÿî.ìÚ«ò«ò±ëƒÝmÌ]W ôî¶\WÝk×%»üÆM½ž‡öÙ°Ñ1Òpš¨Ò„„f4AXUÌÊ Cå ºJµéôöY‘î Ûö,ª•¯ä`º·ß¦Ki°»RqNʾ¼1­õ°_Wçœ{%Œ×&©C8y ¼S‹‹Ùd޶X„€Ï]úaGy«oZeèåÕ·MjIHP @s)òÓUÇêÕ«Ç?"c>¾õü „´ßÑ6~gçcó.Ê’£ ¯{h~¹‰@1Eó~c@€Ìö»½%·?ºêêÆºr—­zÙÍŒt@ïùÙÒ a\Ñ‚‡~¸Ü[ö•}9H¼sµiÒ¯ºG&½2;ïóU|ý`þ¢ÎR|Ë7ï[[ê÷…í§&tÄ–Ž3]µfx4oLzû}^Ï=[ÓBïëßXX®ÃâË—|wcðŒ‡­–>òÌŠÉv!ÂÖx×Ó‡S@¾ëÕ‡¯ªÐ#„pSí-è’²{,)ýòGÃî¾ñÙÁ¾'x,–¢kþØÕôãó—OžtÛ½ï}ÛÎ7ËTàMggçHПHt”03œ¾&&™_M¶ãÉ…üþ ÎÁýËÚ ‘$öàÒS餷ÝfmuS©Sˆ4uç–7Æíu’,ã9 *ID¢ü=mKýô·ÙŽ#©åB_㿾¼«Jn)ÒС߄’&Hô„8MÕ– Ç3E-ÄðÔþ¸ï·]³ÖtOùKçägZŠ;Sºuãvö”ïì.?6èíÙºCÖî Å‚á8?ó=±4ÕÒ§»àõ:-ù-­Mb²‘6§F™<«6Öf¸¸·¾ã¸Î€¿Üø™kóêÎ=í{Rî›ûÍ-Ó7¦Æ‹EN¶´¬¡Êx×MÞ·ž.]óSû—îwO›_6iºÓi=‡¤d®–õ[¢Ý¿}r¨,Ñú—ç\CM¨¹ýñŸ¬y)thor"xï°iÎDeÍÌÇ»Ý5À: ʦÎòÞ¸nåäcv]òp§õý&Ë}?µ›. c`DÍêå–:£¿gN²2 ~TlWFuiV xÛÖ¸æX5hp]uï<{§0›.²,eR)Úh€L_»ÅúÊ6ãu“Ÿq5 ß-•Œddä3ÈUs¸Šçâ””mƒ¥RoQ ]:^ÏÑ‚òÀ‹ûË.Øí>µ\bî²§Ÿ~FL[[ÛÈÊ•+Wެ¿Fd À•?œì| F¼Ôο“aÆ7Þøöûã­ù¦ß¯˜¿â ³:Þº‘È÷½wlÆÁ=¿)Óš~2cöª¿,Ûz¯Kl~è†Ç“ÿº#þ/ã…­ÿ¾ðê!iÕÅvígé÷𴇞«9ý‹ª¼yEÑ/žÙ¼é©}Ͼ‹–®ªËøæÕwmXú×–wÙ‡ßüÊ·®¨9úÎ £ûhÉ­-y¨éþõþ½3aÏã×,¾æ¡Ú–g§øöUŸ[·äÅCoÜPAF› OÉLâç×Þ¿ë”w™ÜuùÏž~ÏóÝ^»û¹ì­©~÷ø‡Rˆø/ð †'…Ó 3m™Òö¼m±¡y¤ˆ!G ª$ÙÔÜñ§ b"IˆÀr@3äöÓVl| Ò‰)-#rVIjžÈ’ë?¢ì†Ô¸’H×ûÞ>ÝÝ‹£<«°iüíM\Ùgr¿x×Hæ #ˆÆ­±nºFÉd!Dàž[½Û¤¤R›÷RÅ.YÏkÛèÏâXÀ~L±.3 ¤ØzÄÍ_ªügŠÎZ:eŽü–0a£@<ʧE8€Íï;šp¯ípsÒeÞØ7f4Ÿ …ÂE¼%{*’IÌg5½}Û ï±Ò’©érߨq¦jß•m0cIC8ÖÏÖ 9ÙfåxWEU0= u³B¾ÂÊÒãí­Ó²ÄûËn˜Ú}qÝ/PàÓÅ%ÆÉÀSO=µcÇŽööQ'પª§žz þ^?±+øw4Æsn¹¨†;¿}Ç–­oËß8 €t-{øÆ2*-²?¹³'¯ÿqºñÕ&q€+¾þèO>ôÿyÂö™»£†=ÛvD–ݸ²ìÇϬÜz·'½çÙ Ô²·'ñÙÃϼ¹æù_RÄ”,}ä_Ÿø‡ÝñÏøFvÉ^ý¦xÃË_Ÿk'.øgËžºù¹C“/¼¿þ/«äÀV?óc¡§A”,ûbýcϼ3ø¹ŠÛŸ~_wëÆ‰cEÚø§¡ñ_à“ Gæc29…y?ÒPD§®µî?¹5ÆŽŸˆ q¶)¹(ÏŽÖ7ì³’<³¤8úÆQZŠ NºÕ'«À':@•e!%ì:.õ´çíÕº‡ïÕx1G$‡?l/u ÏÇÕ0ÛiñdpH&ƒ†¬4Žš;X"ß´\鉖˜ƒ`ãÏî|oöåü„*t ê65Žóˆ/ló­˜;È•Z:¥~øšyåœÔWf·êÞ?`uÌÈq„’ÏxŸJåÎÅ»6Æk®ÒüÉ'_³ºMêÖnê«‹EyXÐ8>·þTF/«Ž $Î9Òæy4>ãÝšÉaë?TæÅÛ&gÜ;?â4뇣§r¬ëÐÿ¤nŒR5k7™­F‰‘ähUᔰé[›_rEu±%6àðïM † ›³uí„#––‘œ¥@’iÊ"‘, Ì„Ó"¢üˆøÅ3Ô­KT‡MÐ$ ?µ*·~¯eó!Ç’©©ÙãrÏo°>xCç´1jý^曋;Ž29°S¯]žƒŠR­¢TˆW´ê;‡¨W÷ ù5ljÂê‹IÆãéIbß^ÐÌѼ¶Ã-›=Hìè“}Åy—ªÜñw{ìÄß&Y-·¥×öÔ†v Ã>ÍìŠ1[³xžÁ0#G%²b&GìkáÍaÊTnní±R ÊÏb›vdê§²5å´€(•ƒld0UŽso·éþmqç[]Õ9Ÿµ;8u¡ëhw9Òm¿›dr¨ÎùwHâþOséÿ«V­:)c ½½}ÕªU¿ùÍo.2â_Ó4„¶`×γ¿»õÂHí}ò¡‡õî±°„cJ"Žß$¨¸Î¦)"†H—s’ GûÒ¦«í#V}ĹKMø¹|Qg!Œ>ÓX·‹,ý콕ßvÿÎåÇ~÷Ó† äƒíÑ]·×zi ‰ ÔȪ£JFŠö¥-ó]£Á±´«Æ’ù ’ w§¬ó|Ï{¯[5å›ÿùFïÊÛýf‹ý®ŒÃÆ^àŸ‹‚5¦À'„ 5QÒœµÏ³tXè3~í<¯É9ä [3Ê’Õ%Âp”Ù1ÀÝ5=òâaK>ÐûÅ[Îe5&Ž@(¡ûãFÈÛ¦”'—›•D¼'í)'³9sM;òn{ÉÝÇÎ:õÓ{ߘjDžÊ œ¦lü©aß@”ó™ÏY”CÖ¦Á–CÖ–!ú®+‡yF.ò‹ÚUü¹YýsF|Âá6ÃÎfæ‘e1‡E€ªâü†ýÜÎV׆@P<#áÄp¦Ú`¥?æ¿|‡i K56Ùe ¥Ú“Ô—œò+3r¤¨¢ódšN½"5ÓÏmfï¿ÙèRHy‘–(²ér‚Í^Ñë{|×”ñPzm«ÃjæOI7i’ÌܩɞeÞÄ–D'ÍÑqÔTm$³H›âÎZ‰ÑµûmGÓ¶ùµçȬÁµsµm¨å‹Îè*ÏÈ7Î £Ô_·èASÜiËAóüɱZ»ªâ0çË=ôP„9× ¢ª8Ûé7be7Ëó§ç§N4¬n.›LEsñðÃOaõq:„`Õõ~ 6½‘ô‰‹¼Q#ÓeÂIîP®¤w fÈ!·–qsŒ}6û9m_,ž#”œˆ9·%vžàf×f'x[®ˆz\<ã·Ç`¹9|Ók¡‰gjžü Æ^éQ·79ÁøVÍéâ)b9-ÞM;×ÇÏ«m[»×¦)ê¤Ê±c½ øÔr‰ÿ>øàóÏ??²XUU5"iFÖŒXf.†1sòóÛçüøöïö}usû–I&"àku‹‡Îݘ´ëâ! j)-ëï‰+u€WDyätJ:šUÏœ(?÷YÐØ1­@/½¯ö‘çÞ>fY¿Étë¦z@±–:ܯ´?7çôÉ¿ìÞѾ™‹t±¶aê)­1ÞgåmeúhË`ndåX 8í&aÎEÎúêw×ì6|¸»èž'ªÏWè¸@þ‡a‰|D¡7…=×:ºµ ÈyV“sb•>#u©ç7XÚ“ôW†ŽÙfã(²¦–Župíé3À²™‚[ï—rÙ°HMx³þY{¹.®ºíf…:î÷^oqëQçµñ³B –”œ1{Ý`§”³ä¥(£—·Ùu ~ñÚÑç}¹;1#Oÿy_éÓzF‚­3ybÃ> ¨ðà §ŽÃ³ò¢Ë¢/lõNôftœœ–Ï=MzJ§ïÿshñÊØÁ·EÐóë-š¦" SE%‘;e ô¼Rd%#éó žƒzÊd½·òLjŸÝ“´Ty>Ü’ÑŒåÁÑ8‰£þðèúH—m8MÓÔ܆Sm2yrÃ›Õ ^5)L+â±¹H8ÆÉÁ”›Ö‡"™ƒ°Áª9 Ó(9eŽtÄíUßÛÑøãÛÏg.p9´À"QÖ³}öqå’X[½³‰ÚÖÅE–!4g‚ ›°ã¸±Úªdòc8ûñ¬²xz"55 ²íÛ‹0’üòe]M'”ñ³•[xõ•—AÑÄÌ“kø mž)ËϜɓ ãRyª+Ìí pWšÃ&zãNKnÃP­Î€Ûà|.|™JãY•óØÓV@éP–séųU4ƒåê­™¡(5šê)1<š+<Qh *w'à2wÒ0ÓÕµU.ÿ0Puã´¶Wwš¾éâu‘»¨ù¤Èו ‡7>õrÏùžûÜÄ»«kýÝ¡¤*·üâ[Fó[~¹oà-ƒ€Ð±æ?7ÄÎÊ{òweÜ{Ýý Í?}ø‘Íö;€ŸüÅ;u¯üË÷ßíΨ  á–-ë> <׸r)ùÆ·žØ‘åÈ®'¾õ~ý=ŽÆn7¾ýÐwßêÊjšnÞ}4rzÏpƒ›Kuö¥NŽeþƒ ÿñ…oy9 þ¹)DüødÓ—r?1ägó~÷Oèÿz‰ù¯—˜WÖ“›w›wã=¨³‚aÈd<6øèö𯱠Ÿüå[3&»å⚦3¯Ù™¸ T ž=yCöt¾°°ÛiTBq(¤š±¼Yî×ö¥ñ»*ħè× ãe1°é²½É´Oú³ù¡Â•€ˆ¤†*®Š"ÕŒ=xäƒù¶ç ¦çYmÉ,yûá9önUër+¯MÝ=+¶­YPOìîÐÏÊÃiâ‰ñFvT–Ì’ý:_›_¸wF³ÝŒHf©¾a[2%}ãüðò«s+—f=jwk¼òÉ5úW?Ðja‚"“'‚1æp‡ùp‡åµ]Þ‡ÿZñÂ6ï ;|ýaæT…Ëôr2®„DÞiÊ€¦É,]çœ;ÍäˆÃmÆïüÕ¥—³ _sjŽÒÐ"i8k—(r2”ÖÜ&6§ÜÉØ©[÷Q›dp ÑPéˆ|Ôgt“þ¹º.AÇl诘U“{e§9“»Äç>‘\âßÓO>yòBèôÅÿž~7õ[?¿fÙŠ†»Ël­Ÿ3·è|UÈ´à‰×¾ù¹;g¿†¼ó?ÿùëÜÏøÚ’•÷ÿækÜ1µôç.WùüEóÿg÷,ùüäVl­~üÖªã?íñúÞ¾öÿØ{ï»Ê:ÿÿsz»½ß;s§Ýé%½‡I ¡ÆÐUŠ èº*«®~Õýíºº*°ˆ‚D@!RÄ!=aR'Ó3½ÝÞËéç÷Ǧe’««†ûúgæœû<ç<çÌsž÷óió ×$TÒZ³ú®þzýK_ˆaÍÿñ?¿p÷uÎoE5ËÜ[ÿã?¹Üˆ KðÖÓê½_jä®ÏaÆÚÿ{Û³s¬§ ªïøêºîrb7ë.y¢u÷}%bZù…«‘5[æ>yCIá±ö·@!â¿ÀEŒ?k¨¢SI ¸JœIØ{’ú1›¶)ŠªÊšD‹É!qX"ZF<:,«s—z„{£5K}­‡³‹=©¯¯êŸš,á8¸&¥HVÑ@7éãÛƒ ‹ôÃ.]¤¯ô¨át`ûaó‹ã3ì;ƒ°¾ar~?¤jöLöÁ(õý×m«Ö™WÍbR˜[@Pô©Ã b<ýµ«çJÍÌÒÉŠ Ž„’º…\$š½Ôsü—áµ7.mÝ~ÄⱋójÒÿ^’Û~ȸ¿Û°8ëóæ¼C2ÍÿÏ—ÅL€LIe@A ÓÆÂÐ:¬‚¦­›?ú’±8N DÓX­óÂËm%f"™³‚¡8·³Õú¹5#v±yAÔÎð:—Î`©4a1fÒÙ5$ðÖôhE|;¨ZÜ\~¬tÓãoZ¾´$³ Ñ× ìLDlFc<ÅYr¦Ò„ht‹í½Û7z8f(3•k .› =X0J9,³˜cÔê2Az+¹wЂp´ €œIœÓçàÔ€ëȰisôw]RÏ é+[GèŽ|óÆhÞý8FƒHÂ~™½1ˆµâ{’ «Jø rI]ôS+¦ýeCq®7‰áqÍQIý¦¹üÓ‹úŒfÌYÇp¢Ë¸å þ®å©ïßìçAwj´¬¾ˆÿ:aªÀæiÂf‘&ƒ»D Û ¼2×ã3X¹Ð×{]kÍËõÌ€"¬œ–QšP–íŒJè<Ʊµ&Ø&” »<–è––©†Á>á|üˆÿGyä<›ˆÒ[yôÖÉíÀª-#á:Tãw;>°þ¢æ•_£ïëZèwk·èKÍjZùÍ·ú¿ùA—GÿÉ.}l .x–³A=wì–‹,¹îÛ®ûÁ´}îNúù=wâ¡ç¦…öÝò“wo™æÉKLŒ |÷¼ØuÏ‹S?¤Ì«<2’ÛT™ú}«˜ä;bMµÕþ¸VŒ¤5»t.›‰I ÆTã(RâÁ¯²Ÿ~}¨¡‘¥r¹÷už–œÎ n^=-´²A¼É–rX„Lõ‡‰ã]ô¾“hC)‘r‚Ë&r̸#Dû°áþÅcïG‹Ý­ºiäÙžF£YNr¸}ºeåD·qËý¥eâ÷oösŒ ¨Ä$Q^Rf²’ )%ěŌ´2þEíÔªÊaÌ %jË\MÎt8(¿iXo=½ëŒã†ÆD1Ç0£$`NQ¼}Äd7¦‹˜± ví5±L +=¹ÜîfýšEçŒû*PàÅGV2 .|þùç/ØæãŽçOˆ4ºïÝ@õšùmøÍïë ç¶Ÿ_T¦ -yø±Çý—ÿä*çÿQ•ÎÿK Ö˜+ çOÚ™8ƒó‹Ã;B7¸š€!øû`ƒ²Lš‡íÇ¢8A¡~¥X•Ã3«J…\LÖ4õP¿ñ`¯^SµzgÖkÏÙxÕë\‰/Ò†Ž© :$iÀã×·î¬0â|0@ìL.Zè<“ã*™þ‰Æ­Ã„"¦\ŽñYi0Ju„ËÍÞ9Ñ©ÛßÎ<|CÔašyŠÂg ¾€ù‰#®ÛÃë‹‚½ûþŠe½ç¹ q[QûIsõÝ ¦%$h¶¦.ül—g¾VÖew4[ònl>oÎçÍÙ –æ6xå€yÃ’\>­Ù¹K27iY2è¸@,¬©̶z¨ ”†‘¥Cq<ˆU‘sªéXv4¤wëýgR“ö°ož,þbcÿ|ê´£·EÂt1CéÉêë ¨Ú³Ú¸WÂ’9BépWL_*ëhŽâ  'ç¤Ô°·<ÐjœéÞ![“NJ9RgÌb`ÈP›"f–¨(ʸû ç/<Š ˆË 7–e¶²}áªÁ '¿odf&œ“ÎÃÆMsF'rX9d@Èï¼ Dyóí²h¾"Ù¤W|ÂmGñ‘¡ÜÊÕSÀ1ªÏ+ø¼yIC ˆŸî0ÔXÕ•õ9]lóÓ‹*Ã\\ÎɌǂÕSèX_nLÖOÜ‚1ú¥ýføÆuá©Q+ Á›q¡Tö¸mRn¼ü+® &ÞÅl%!Õ¥!Y„lòÈb&U­ hšöÌà¼Fטݘ–d¹‡¬õ€Ó˜~«Ízi=@1ç¿Ö [ÅR’Q^9­7rÒüºÙ¿0™,ê2ÿíT/PàÇÇQ2Bå‚hÉ£?¾nýÕc¼ŒX~æg/}¥ºp§¿ÔÀ ë}·ï¶lúù;WY?T®¸ øs1–6h0ŬÿLÎÑ™.«ÑõO4` ¾ÌÌ× ‰*;’ñ€"‰2©;5„W›3^SªÞ›äHá™ý%ÛúÌË2¸Ö£ìy‰¨2º\ɪ“½N‘¦' •«¨f†àW{{^<]-%¢<¯®/êiNUòsº,ŒÑݨµM®ß§2è¦KpU˜űõ] ðÐ ã.@¢<í1šÈ­E ñO—åçÊÖÐîŠÖ ·Á1t®›‘ Ô˜^ìŽ=szî'§~DÐ˱ž£ƒ®Þ‘^?}¢Û4¯*,MšX‘;´a }¼‹|ó½aIÎwŽª'A ù¨½Á  9Y–ÎD‘|ªh¡³¨AÆ(‘àd‚£A`@ ä´M+©h,™ÉòÄwvøþyõ¨“·‚R„µäÀ—«ŽÒZ&ÞŽ’u>ù¢¤€Ï¨vÀ*Q¿„a'…²Z¡H*¡šßkqFˆRRw…p¸Í4Ä›êê15Eh»/ÛY‘>£Ü~Ú#¢ÓÂ8/iHü¾ÙõÀÚs—FA`ß0÷Ñ7­ïrÖy“b’eò­–"@á¾U]Œ’#AâWï15ie“§©¦jrõÜiŽ‚DÇ\4‹(ǨyIyÙ¢d&‡u2/°!˜|¤M§b’"j~p0 ÔЗ:\Iš_<¼e—nZ›5ò^S5Y’T„R:UW>Œ’F=FÄ„«üq¥bÞªÞèÔñ‘ÔèþØãÚí„Æç€”šÐx––œ¬гvSJôþOyµEoP”ö·1EÉaUÎCŸ(.*+ÅtÈÚ¿ß>ô÷éQüy@·íJßö—E@>Üßçóý¥R ÀŸžž”n¹y2æ~©©ûH¢Ê.š-dlj3_±ºõŒ›ÒCƒÖש+»»¶›#…@R?ã¢YS … Šk!‰[S/Þ{³:ÔÎäÐtð‘Drwgæ¤UßP&¦Î7÷P2„Æ»ä±bJt 6b@â`g±XD“döõ”-Ñ…l:mëТÍÞf½š&€€5‘}í–MËÇÍq¥ÆÀ-𩨧ƒqý¹k³‡ |2¹ˆ•L]"þ \”ôÇ#9âפ0`°\“nè`Êw…©•Æ&ýˆ2L1É1¹pxLLDÔè’[çt—ÛÃåv€¬@@ Æ F˜Öì—{è ]Q½+çµç|¢ÃÌoX¾–Xd˵‡B,&ÕØbCæH/ëj¢ªuý^Ú¿m¬±±¬5NókS?¯ÏA “C¿ö¬õs—fæ×N3ш¨†SÞ÷GÌ×7 Ú 3ƒX‚_ííym°A‘zËÀ¬·"œÕŠÍrZ í­l‹–NmÆRâ•ýÝöõÝqYà™w]÷® ëuº@dd¢MÞß©gˆúÝ;hÚÍWd'ôL8­ã¬LW¦ E ¤ÆRz3.¸‰hZ éÕ8œ•ùšDT7•äYxµ¹¬Üš­pÅ)U´ðaG¦7­ØNçæe”Kø9îTáÞÙ¤…ª r™:ÔO•r úcA‡s†Eý~çÞâú† jWo†ÊO¤+®*¢ ½¿h[¾}Ô·È$<´¬»óåôÑ@esd¼Ü³™v¶[ת*è 8ZšZ„tnEæÔ q±[h´å¶Ÿ4 2åöwÛޱËlñ_`ªŒøòªÌOï™1Ú˜úd|÷1eÍ‚q¥Aõ÷"¨ìì9Ófåõ6îG·ÀåP¶‡¼(à¦átû(ÝC«-¹ÍssÍ¢*13#j—<<ânLdk9žœL SǤ “–.ÅÆ¿4C·v #dEêQË·VM…ßõ/¼´"FíœÏßê’Wj Ü^¥=#zÐÿÔ+øß}z–ú­ |røÈJæèÑ£G=›¿´þ(Dü¸XMéUE³³ÓÂî-d¬šwæJæê:ó{B)CW”SDÉ•¼åS†ooI]¾&õ‰ÊÛæžÉ—cÏGü—»ÄrW lj»¬¥?z•}kL·(ÓdeO¯­Ê,s¶À¨Í:¿z”cäÓýäº9c;š­¯1ß»:Îàü¢£-îyS,½¼~ü¤=èU—ë! Áñÿ^6~óƘÃ:sæ'É©wºË4ÐîYÚz®+eþú’¶?Œ4 (Ôšf3¢¢8nç„K‹Î¼1ÚˆbPkœlæ4fmÖ„5ºäåU@±Ä,ë>¯p·M:3¢û¯]Îúrº®;ž±9)±¬ @-=t»Åãiäín»¾föÅ‘"*‰´Œ¾Ú\®Wīܧ̉hjŒr2¯}²wþíÞv€åeÇŽVœxBø„B#±îLË1êW–¶ûã‹(óL• YTçh …ùlSë j@’ŠíKËoÂÜi„â 8…ÚñÜ2¢OÉÚž×ÐdŽÐBÚ®N»4Þ“ÀÑ¥Ò®ýüá3HHVV²z§AéM¿9e –9“å~ÓŠsfCF0ôŽ¥™3ƒäļM§äÊúsµ?›ÞQýuuã"–%x›ãX©¸<×Ô}ýê@û ~_ ƒÑÙ—Úk:¢S‹MÀ’|(K€"*²‚“51UI ¨—¿d‘¶Ù°ähÔè1Â;=å›|ãš§LÐ48î·yÜP -Õ»³£jjpQ™%xG½öô‰b»ÔÓÓ/úÊ ^æ>¹|%sï½÷Â9Êf”¶Ìo>ùä“~%“=ô…ºÛˆ—Û~¶˜É~¨îô¥öG–ÌŒ m]ï Í«ŒùÊõ[wó*Çûf*˜Ò§Dj0¥oIé‹Yéò%R‰!u°]ð,›—AâæêŠþ|c1J²’ÉR.Ýì‰Ë̘š)S*qOч>Û}ˆ’9…~fhÁí%mVzü‰ÄQF ë %÷`~y|ÆîÜÙ»òŠªheM¦¯•ä>0¤ø1k9ʶ‰`FMC‹‘È0b‚"—I¥¯­â«rá8è2SíM¿ØR½iáŒ"副>Åýç=™­Å°'b»­¢ÏÂÉÛz ß¾²÷\Ùí&8“ÔßÜ0¦Ã©­ï;¿°¾¨ã26Ÿ¿×TNôró*&oQuvùÅý%7-´›x‡™_Tƒ¢ìÉaéÕ> H£kfÜK š ¡”ÁÈĦÖÄ<‘«šKŒ(¶2”¦ÞJ+ƒb,‡ÓƈH^óÁÁùr}RÐ2êžë?f]Iú¥ýæy•ÓÞ eÖÐf¼(–»Ýg.pg ¸ˆù˜•1UU½ï¾ûî»ï>UUÏÞü“òe7÷»7•^Õ!³î+.ýÒ‘ó¥û,P @¿ú£öáy©=röG4–[¨ëîlqÙ¼««d­7±{Dç‚ÉÌä Z¹=|¹/ð|sE(93Ï•"ËNm*½¥© ^îªïK¸+Šs·­ÚæxøùlG/qËñ¤fÃ/îU~öâÅ=ª‰’iu±%i Ä_Ÿœ³ó¸ì.7Ú—ÛßB|qs|Vs:à•dx`Ι ʘ< ί°uIÆ‘œûìO9ÙÀ’ùfK-g¦|¼:¹^VáNdXR9qÚ­ƒ£êoNZö´z^=Vþ¯o5½pÜwjÌ K‹Æ¾¶èýÏÔŸ¸ª¼µÞ:xëÂá{—„ö•†{‚Á&OgòïˆÙ—‘ˆR„ÆÐ\zN®Å’Vµ]×8F»D”ŒŠæßÞäž”1À’ÂåžxWR?ã8:\åp¡M,Êo£íÙÅ:túí×ÔLÎøEÀ3˜®˜ßEôAÄ\„%t¨¢ŠylTÖKæ³IWŦËô™jkæÀÀ̸AM“k¬KKN%p™ªpÅW7Œ>°4ðÜ‘²¼ÿáyð+4Tx’ aO«ÐÑÉæ8¯©ìí'+<ãW1*ºC% pçª`>à8Z®ð$7-üÇE­G¦-Çßkõ„Ó¼×l$š† iÆÓ'œÉ•i”ýHõˆ¥`¢Ñ,/Šó¬öú§vg¾\0ñéC£Uù=3ïÒËÁè´¬E™òóW2ë‹‚gß™T³< |bø8q2ªªÞÿýO?ý4hšöóŸÿü˜Ø|â‰'>ü¡f˜t>&¸sõw\¸Y9 ÿ.JFº"J8W•yÍ5±#;ⵌŽDR²Ì­­kAç7( Ž÷)·G®Ð´W[Šnh™Hª;–š<#>[ø¥ÎÚãëæêŽz6Ô)©uE\vÅW"ÀÒ•®gßg´Á¾'þõEÐ:­=´Õøü3Õ,òÅ›g9+Ñï VhÈšfÓÍÒà\0¿ÔÔýN¼Åy31-¼$+È’†°‘$ËÍ×ìË4\µÒèøúÔܲÄ/NÎ9óUiQ¯©Í¼Ñ¥ÿÂòà ΙˋcT_‰x5Åœìg· Ê”µó0ÉÊ Öé6d‹–2ÉqYT»‚¾§zWçs|å‰Ëæ©úëmmr¦}¸ÆÙ0ŸrÏñŽ{á(Ö#»‚µ:$DC®w˜ÕŽDóæß¿($âÌPŒ3qÓNT¸R6G*š¨"ÕXMÂOeRJÌfÝÓ&/rHN3?A`ª1¡Ü][|å”'”˜´ÌhŠŒ“–v–nªé˜o‹¼ÒS—È‘q‘C&7^Ø«óϳñœ•€ö qëÔ­×`€ |,Û×26:š9ÞŠÃÓÞwá¬éñö¹%†ôÆÊ6YþÈKi –»ÂÜú~ΗÍ3>Ê ŠA7^†ÅCù¨ða±!¿y¢Ë°ý˜¡+‚m½{è ëûW7Œ>°Ì¿ãô… 0T–áw_—5éÕ§ÿH¾ò. £ i ©@‚â‚„O«ÐÆ8àEB·7;÷©ÞêMs&CJâŠé\ýcÛŒ„rylºÄðzH…Ìáo¬ûìk~x<­¨¹3[ÿa¡Èýöú;v̬=«äÚ~ä}öÖ;_U@èßú†í{'ÓÙ®ÿ²?wëªÍ¯Íò Ÿ<öÏüÏüŸNÎÝ‘|³eÙ‡Ú{ûßû\ï·ü툆+·lý|QÉßF‡¶ÝYŒ}È»Y௟ÏW\\ü—EJúB¶*Sêh„uÎZ²þ€W[ŠÆ†2 )W,,mtFócƒaÔeQ3ÙÉP¹3¶®:ôÊqw(~Î4S,)4:‡6ùÚõ¤ÐšÔ! 0ùÖ`Ò¡…K\ßxÀ\ïF~·yqþN;³b­ë›ÿìºõâ`å{[M¾È½{„ Fˆ¶héΑŠ;+;ó ÞÊÇZ4¢Ñ\=rLðñ”Ì“Èð45¹§œì/#BmÙò­»-=cԃ׌jš†½ÿ¶}  *܉z¿çô,ŽjSI+´ž9F›_/~ã¶”I¯½¸“Ú¶wëE’ªFGYDŒ!†^ÄÍ"‰DÉ(Z82©™Hõ—³­&|öÜÇPjHû:”Ò€×aÊÊHFÒ(1ýÈNc$…=tCÈ™8µkNëÑAž>;rLÄXŠàÈÉ?kL"Fs¸[NÝ)ËR  äŒÞÎZMN½Í83`•%…ùÖ¬¦B‡0™ÁyNñèbOìw­Õ³Š™¬B›§%ÊQ‡Iy»äü7v‚`”ꊢFÎl •Ím¬é4¡;ŸBh°^éí;-µÚÑO/ê32âás ÷…l´œ ‡UMƒ©†»jz°”ô2TVa<¬hãf7’À\êí9²žx9Fq¥`€]F@ùµ“eR+܉+£Ï¼ë,ˆ™Ÿ@>¾Mæ±Ç«ªªšØYUUõØcÁGõ»â{¾möÄ–?È›¾ÿÐb#F¸×ãÛ—Î|ö!8fN8Q]ÉüN³\ó•[|$Y~ÓW®Ì¾ò›Ö©A(˜ã’[®žc'ÔÐø™o|Úrr{Ÿ9þÄóñkúýOUr(BÚ–ϵb=ñÄ3‘ÿõÍ ^¥K¯ûׯ–úÕÁ¸€Ù¯ÿΗ[ ¦ò†Ï5!ÄÆ¯~¶É€ë›nº½|t_oÎÝ‘p}êŸ6—S´ïÊ+íýûûÏWÞ¹Àß>ñx¼ô_àbb$®ÓT˜oNŸ+#íkÇÊûÓD ¥§.uÊåe z°âõš¬£3£V$B9ÄÀMÓuH‚ËH±Ôä_S‘%>Jù‚Ùƒx)V_Väb`¢&ÔYÃ-qk&Zš<#‹\±—»jÏV¥ Ô´·è¦?:´†ÓÆó\õm}ô߯×ᬩ%k[mïÓHò3%ßTÞÖ’°õgÜsJüŸ^Ð ŠÖ2fzîôœ“Qc™5;µ±ÁHQRâýhé«£åüœžrð--ãôæªö£AËé±âyUüžãt0ÆìÑm^332­Â“¼rN|Ë[¶ CeŸ>~Äÿƒ>ØÝ=Yù«»»ûÁüðÿš¦!k¿oÿ+¼ý¯öï[ùí÷.ØQŠf¬µ®üÃÑ•TYf¼å˜Eÿöâw*Þþ‡ÊÜpÝ·¶Ê¸±Ø<›½ºÔ@tª)GþÙ]—øìF£Éâ¹üÑþTJP¥p_ÊZ_<](‰Áî@äÕÛk‹ŠŠŠŠŠJ–}³QY7zL8B0i*ß YBåEí<1M—â …É9©Pݪ@Ct„#-˜éÙó&…ºC~6ÑÕ½iNJo0P¹\?R>¯ÚzM=[ÍT¸âëê¿ov†â¬"Ë8~Î<. Á/°‡û’äkýõñÒžAòò¨³Ž" Št{ˆøÇxà vݪȱ6äÉßIj&<¯ž~'èÜP“ûÎ c%Nq(L?¾½ä‰w*,|rFÐö‡Ç‰ùK‰Ðq­A€É|2ÕëÇ=厷3¯ïƾzc®® b^ƒÉâÐÉ1U—,™ãè?,-}vÅàÎv[–?çõf€Ô‘<‰j¨¤±ˆxYeeä§÷µÉ¶Ÿï1?ò[6“C]j”穟57þÃòþ‰,dÄÔ‚Ö.ÆÚóÕÏKðM¦ŒÁÄR:c  Fðùµ¹~©µº’.éÏ\žÈȬ?¥/ÓK/í³öŽÎÌÓUŠá¦ª8m0*8-F–ž&~4YT£#§ýl‡h‘u»Ýît-¨Ÿ–8¸‚¡åtj†ÿ^£{x¡#ú›Žù3O ´Ž˜ü*Ò½ç3«$ IDATøB×eeþ?ö•ÿÂó´’N«9‰Þñ5Ðá|RVˤrÉÌî`6A>CwKÂv$PÍR‚ƒ–—Œ9µ¹T`T5¿Ñ^Û7.yðt(ÇŽZ¸¨©ç{í›!׌y¿Ê£A˘èòDZÿÜU´yÙìu9+Š2$·l·$3Óݦ@¿E>Î×=/c¶lÙ’ßœ°ÌlÙ²%/f>äqòbYûý#c€0{õéáøø"šMÎô@-˾øËw:c|pçýÂÏîüê¾4Há®Ñ\þèühgLWj™ò²àOþûíß¼ekw$Žíþû2[¹>Ú>2=a-s¸?ûj÷HžÑP:úîç¼bíã#wDfÍFSào›žžž|Ð}AK%“ÈŦYÂô³<ù£=ÞTw÷æyéËVÃq]€¥´º\mé9ç«§Â_×yùˆ#œ¸@Š|MåLWՏހ%ÆîLT˜[Eý÷:'úz•ýíúª ööMôÜÇôÏçÆ”¿e‡ÕiáWÏ ß±fl]]¤?…ÿxoé/öVŸr‡ÎJáuAJÐb4|™¬[’ãša39ä庞ì‹›ã^KªLé1uiAåyâ®r6ÜÏ%#ÀÒÒúºÈs‡Êf=~V ^´ˆr¥Žw±™4ŠuåŒ?Ùn.ó©£}îz^Sä_½Ît¶ëŸíX°¶*4!cr˜qˆ,›«uèáCYƒ‰M+rÇ:•#-øïÞá¾uSr¾3 `9þVÿÜg÷3¬.©âëêâw­è3œè±N=‚$+Ñ4o´ØfYRÔáPÜn·1Ì´?+¢ˆ~äèKf¦m E]1Ù€Áy%hÄ4ÃŒ£58†æÙ"¿íY0í.Åâ“6ºý”ä..³„ìŒÔ*9ÿ…÷ 1 %"Ç(°?X•@¨Rz< ß‚Çe¡é l`þ:o«ž^\d5*ÛzKUXÏXñ¬Í…¶†¬¿>9' ”Ðj&À㪢¡bfΗ=Ùˆ$¢ªòAbuq‰õëŠ>370µ°Ì *г+ê2O½M›ôÓÌX ÀßÓ&3!<î¼óÎcÇŽÝyçgôáõ!»°óîÚ ¾ò³~@èúÍv¥fü§òݯ¿rp(£i°; $’¼ÑR;¾õ£½aYŽìûñÃ;t×ßÞ0剤òI‘-©+3â v=öB¿Üüûo7þáËß~½7«iR¸íੈÜ‚/|F÷Òß÷}4!ܾ{ۑЇq®þh1ƒ›Mõ μ´…ˆÿÃQ¶Øœî3NÃ,áþoµ¸S½=«+Ò—­" 3Ê•B DwL3(Œ±ÝXjê+Çy§ÿÞ&ƒáó­!Ëœ™ÕöH( -DûiÏ{Ñ9ÝT6¿|m¶¬ÎtãÕ†Fº¿[÷ƒ?8…»¤^?¶ÖÚ†ù§ß4ï`9ZrYù üû5mŸYÒ\OkÚß_ÑýÙ{‹aÀá|ÜP Éò‰Ó©¯ü‚›_#ܸv\W_Ìòc’.As RÌhÓZOËÛùOË]±ZGnOÛd4]V¤Æâv\5,p ·5ô:쉶$Š“‰ãmtc¹æ°*À±Ú=›¤›kƒ_ßax£MqèÇc–xÜ KKå>Nû°N­åeDs/ý×åžü‹7%V)#’QžFú©+H+öÀÚ>FOްC’£å+†÷OöM»QÙ,/h(q–C’•ѱ Ùîœaß°’qQEäTŽNŸ ³ïucç©D9s—€QÄgQa Î1GŽ'³Ÿå0’Á&• Ù~/­€5¥½'c¶Hî|ÏÞ¡îuˆðn¨©OÑÛHq"/ð¢‚p }žî08_gh2„ŽÉîž v…³ÜòˆÁ‚^]ÓqS]g­!Œq[k¸t@"9ߌ>­Ž[·XRPx§ÉäœåªKy =WHTà“ÂÇ4A>úè£wÞyçwÞùè£"2uóO;¾© Æ5ÿýò?¤¿¶°ªqþÊŽ-¸Â5ÃKW‰yäÓMFA¸¦‡÷<ýŸ+9 ÊnýTôëM:ÂvÕ‹•ÿß«ÿ¾lª»èë?ÜØrgcͼE+oÉ|©—à–þà­§×üR#‡¢LåæŸMªÜ’ïïzöÊ–œoÀÔP»éï>\¾›Ô‘ª¾ã«ëzîrbˆ~Õ/ ¢‹†BÄ‹Œm½F§1Ý›ÀÏ®Wx²Ï¾÷Œº¦"}Óµ$ô…l5– K ÂW`C­ŠïŠõtœÇú\áI®¬?µƒ ÆÎ9ƒäh9˜£–ŒEÒØkÆÏT÷¹Éä=ÎBžC{7k êŠùâZcñBצ¦Db4bÕI5Ì‹-† ïíøm»ûçÛ=¤^“U`)qŽw캦î[»Š ©¶ˆõ7óV &]憸µA§î æe²ðòvâÙ?d·|Sï+™ôffôFE‘‰Ô°Ý„¤³d Öœ½¬¸ëH¾Á"_°#Âö̆Ø9¬ÊN®òÅ̺TOy2²8Èc$›”ÈL}ò]zqÓ䬽’ô+5M5úœ?¸e§åÄ“Hâ\©Kèg”›]Z1y9tǶ!’#-`²}z¬ø¹¶âˆLÕs­d1·<ˆáDNEGE*ÅÑÒg/yíxÅÄqdYʤR¸aù!Ér`tDouáôä{˜Fss˜‘ö´³ûdzëK¡öíh¦¸/†£[i)B9 ›ÅéŽ!ørCÀ@ Í‘šü#'R]3½üò«ó¿³‰kt—ÿ|ð_n&}ÞÜïNjÔ}d¡nxâ# áyG5ù<ÝgPk¨å2n-Õ™,xEE’š‰%+õ ”’yU‘µóç9¢ž!¡šàÔ°Aѯ®h?š0å³2ÌJ0J~íY ˆË^˜>ø¤ðqÒ\äM(<òÈy6ÿ< ¦åÿòzç¿Llÿwþ»ô±~øÞ;½ÓSdw_ûãg¾ù?ÓöOv)½õ—GoüàGù´ï–Ÿ¼{ËO¦Ÿž,¹îÛ®ûÁ´}î-#ÁBÆkw%>È]y8š|àCv¤¿ÛñAe,ÒwÏ‹]÷¼.: áþ.úüæ e‰@œÛP6s¢Š³Ï¾¯[¦ëÌˉëŠ>ð@3 ñb,¢3ß’X»›>‘6s ^ï9 ¨ñà{Ž3¾âÜêÅÙ²Hê‡ú_5(óë“sª,#-9¹¤—YBe–PV¢CYãXÖx8^ŒbÐhÙ©ä¬YŒó˜ÕP,(üt»aë5˜ÁH‰YB–ÇÅ ¥3¤âRʃAmå˜QÄ`iSé±?è’¾´ÁŠà轫¢(ª+±ðÉœÏeFDD ­$è´œ¨áÛèî½\à˜q˽^Éìª `ô®îiD~´5Ùáç6"®åe#4vΜr3I}\Ñë{ƒ·¯g$ÄýÞP#ŠæY"ÿ° ííxƒ%×Þ¯ß(͵ŽÒ«]“q,-U¹bŠ>u¤á¶ygò Gä³8kJÂLÏCE–bþ!Ê^¦FÇT!Éa݃̾Ӽ_Õ64ÐßÚ}8Õ¿?Â/­H/›^^JE<6éβ,18_ª fÇâ5 ¦ó”èyÂ?,¹'WŽJ þ#QZk8ûÚ{†¨òqÙ¼'S±Ézì¹Ñù÷š;§6ÈÈ(|?‰Ãþ*­t†QGÜ (R£ë7iÉ1ÍYlhÞ*3o•id(e@èMë—÷P4SbVmö[nmêfIárC÷ëm•×Õ Úϲ…žè2îo£6/ÈEâ0ñõ(Pà¢ç#+™… >ÿüólóqÇS @þÚŠ0ÅÖôP˜õZ33>úžå¦ÁÍë'Mæ;‡MÿR26±é@u%Uü•€Y¦•H’lã;®nyË~Ó%Ñ©5ó°”8˜£@S¤38Ñcç‹´i·®OûòÊb42ƒãçµÊVfºèG·šïÞ˜ä±Üqè¢Ï¿N£zÉ ð踱¬q8SÜ‘«u3R¹.m x;(5vÍ‘éœB÷e]‚G¡ˆN•PA6SÒœnÉ=ñþï¾Tìrr¶Wàs´Þ˜Ž…€Ò™@ÊåÓXi¢ŽRy¬[¤˜pår$‰ëЬUFM‘„@\üÚ«%Ÿ_99™–QÊ„ñ «¦»cÞ±8ºùŠÉH‰öÁ¢·S®{–µ€¯Tû¯fùÛìöw#eÆå>lnyè<79‚RqƒoçöÐõc”…”Ñ@ßUÚ™O¼0Ö#1&‘b@Ö^E‹ôÓôIÞ–… èKí5WWظ„&‹R"$‹ð`çÙ§Se‰ €­ìØ‘äÁcÊʺÜÝ“YÚÞGÏ~õ¶¼©#CÛ›cvðjcF±es,›q(çK¸àûɪ“Ù*'—œH!Aô¶gæ,šÚr…½{G¸ÑÁÌ"Dw5UX¾ØN˜7Îcg¦ÃÕlZ¡òÕN/x3ÃYSoJ[Õ±áûB¦ïd¶*£P †#R£^NeݧE“˜2Z1qctÛ°;œ1ž+3˜D·äýÍiû}]š*f²ˆ‘ŽíìÒÔÊë†&¢à÷û\ ©ÝÜݬ÷ 2>A|%S* |Tòáþ>ßù< ø[áNÝ¿m íl³.òM›(¿r ¨o^?éoÖ²®-ŽM­ËN_ƒt} j&pNûFŽ–ïZÚ²ÓvÓ%±³ÅÌ'Jêû‚ܧçEvëâQþæ•Ç‚à‡5¤±‚® Çzdo*hÒÄ$ç×ú-Û-+ësójÒoîeîßÏ·ºOu éØò† \ “é0o Ʊ¤aPm°B•2³‚Ò?*9»Doñ¹ˆ”MØ?¼{kéV´?î[61ë!Óq½Õõ’1dbS¦ÈÉ’eu67¥ä(O)'E…èXwj\þÕÚŒ{;KVÕŒk0#õ*ÿÆIëÍk&ç¯bÛ,ºgYk~“ЙLzë½×t?µU¬Ñ'õ—‚Ì-›YB~¶|Ç›!ÁæY` –°§3Î`=2êÙX•€j¡%k.Ê·” ]4ŽUÎ6ón*ñÙÃ[»ë8¢ öAÒ’¬©ÇÅi¦ƒ wë¶Ô¯ªÌ\~¥unå &¦€±eÀÄ1ñ+Ä“§°Ë–8°À)¡êxH_a“ܸ”46™3”<ÍÐÄ`¹%†î£™ª¸@Ãò ô*Ó£qœ_l9˜ò]mmž1òwÛ±ŠÕ%+Ñ{;°híÌŒz-j À‡²rì*¿ÒÛ >W.…õ•­C¼sW´‘¡TÔ.Þ‹hZ ›ºÌÙ’•h·?e˜P2Y€LŽHåðdMmÖ™æëSc£ÿö>Rk£5UnRnY%–ù¯¶}zQK‰YžØqÌaÕK«çàô y÷† ü[(p1q±QâVMqâ*Pà/I>â¿àcVàoÞ1ãÕUI––ÎÄPvJ-ÂÝÇ­cQõ¡MÓ¾áÃqÝÙÉÍHà©àhº´´sN¹dY"q8F¾k]hËËM—&–i19 € ÆØM+F Œøã×ðû®‚ã’¯m¤#;+—å‚F @ @ÁÞ‰”éÄՙ݇…§Þ£WWðÕeBŰòÙÒ›{Hb~ƒ Î{u~¯nÜí—W˜¨lЍ†ˆT½DÒ‚ðàû0â9±£åïîH÷ôk?~=òÆÛÂz÷|»Æ*As€†?n¿2pJ,k4r¬IÆý£#áLªìÄ6Xº9ß`aYàùæŠb‹µÜÕh\µ*‰¶A78¬ã÷<”Ôïép_×8.x½‘2Xã#Ý ÷lVºzÕ“†jí¦_ì­^VšœS⇳Èd!b©óÊˉJæýüÎ]མGÌ©Y‰f Þ•=ÜQ¾9S+kHŒGýìÅÏXRØ\ÝñZ=‚!õ–<ˆs¥6ñ4dy¢kÄp°›M]^•þÉg‡@Í„2¦J,Ï`xˆ,«N¸ìò¶dƒuØø&òLDšßå'ŠLÑí¡$ƒYžz^Ë•X2­igŸXVNö3ƒ}ÂA2S)bÆú%{_æ£û'vö MKL NÌ?”v™PÁJÍ|D“—MF²ç¬þ2Λ=õº´€Ç.î=ÁÍ«I—0ÑVGgtüÐÛüåLª‰J»FRz8¶ $¸`†HbÅ” ÊŠƒÍ´`dD@€vZ% ¾v]„% g‡}øe+U€èZ€çŽ”­­ ýüãÓs"s+ÂŒ’]Q¼àZVàÅÅ®d øëÀçó—¸8 Ñ^[¶wÔpMõäêxï0óz‡þkë‡f4~kÀøõ)®e¸µ@ËÁRZUªœs±I–eÇ%Yæå®+£O¿iºyurb|°×~mm*ŠÒÕFâd¬x™39·ŠêÓ°‰¼PÂSÀ€ü ¨ÐiÚ¸¨’‚Èêöv4YÁôú —¦Žœ¢Þ=Œ]¶tæLÆr,çñ 4: ¦$bQ2)‘Çß1ÛuóVz:P}‚†¾¹ÆÞÞ@•NWdÐ'Åq! 'H£½’¥vî>1Ly\‘嬵´øLópå"`)ñöE½ÏóÝnH³”€£Š©¤*<ôîœÝ4£Jé;æ{ha]Ÿ«ÅL錣ƒã©Þ9æ7jŸqïÑÀ­×Å^ïðŠÎ)÷Î#Ž3)£$µÈ„,1Lû0_­ÏŒÉX_̾”>A¤CqÌd8dP½Y=_ –ào(kk‰•4GjY;UYhžŽÓÚ]ºOÏ‹n^ššAUD6Ö1T)¢ÏpZœC…a×ChãraÏQâÆ+ÍUêš…Ówö®ptK´á ;×(Fíòä—&´…º¡¶´U´9c{D·wÖá-ÔuïË5X•øD‘ÐmÈ¥ëйX t&ì5ÆYœñpMà%Å_@„3Æ0Onðµ_AŒÅ´©švÁ¦jPƒœ<#Ô©ÄeòdÜ«CEÅ#(2œ!66ô³$vyÙöX©#­VF£²Ñ„Å‚âÍCôß}:•å‰ O&3¨Ú/›Ý_Y3`7‹ä¶>æSó E¶ |²øÈJæèÑ£G=›‚ZgS°Æ¸8x½ûî ‘æN‹×>>+ †ÔŸn×=¼Ùï0OsÐï Y×—ÄÏNn.»&„‡ùZ9eöYf·ÌȲŒ„$ËÀ1ÊÝbOo3ܼ&3!fŒ´´sÀö©²ô ƒƒ$‰2-È:ëÍzŽÄP$ðTF~áMûÃ7¤8FÝò¶=ƒ£Ç¢%&V©¸Díïã}1üÅ[fÆÿL…Bx;øíà†ˆG^Ô=tRTF ZDR6°W\]òÒ–3w~AIòøñ¸iYCpÅs†’ZB…LÒ?Ž'¸X4££c.‹Nf‰ ·¡ìÔ6]ª"­·K‰WT_8î»gYEbð/œªþÔ<>o•ÊŠÔcG}ß©_Óà²èhïìŸ1ÎùšA¿}]œS×`ûUsãµµƒ`2ö#ðûß?2²òšêbéÄÙXņ@³Û.±f»7OìÏÈùJ CðM–ÁÓÑâß´6£Úe—¹MºÁnž]¯bª`MvqÕ2…˜…a»4eKõRÈåPÆÁ0ê°©&Hò$u‰{¬Œ<*ñÉJKç ^$æ—Ê}ùLÅZ…îeT¨Yi4ë–›í³´Ðh®‰n‘+WaÍ £ ©K¬}“éάnmQˬM%A:×”)+RY‰þco™S'­J*t7¯£)¤Ýß6G"1L#P(Eº/_iÅ… –I÷¶c~³„Ëš¦ž-c¢‚é½XÑ%Ç`Úy¯.CÿàöK+ÄŸï²!€8 r…=·iÞØ+§<2Z‡¨»®œçS ÀÅÍÇQ2÷Þ{/|£ ù ‰àÔÍ'Ÿ|òÏ¢d²‡ª»}©ý‘%ç¨Qu®çïxÁÃþ ‡úç8W ü_Ñ;ª»®.ÅÑrÛ(¹¨& ™¬ö½×kjг3Œ G¹bó,u3€cµú’¬ˆ´5ÖîÝ!m\˜qØ.÷’cÔ»7&Ÿ~Cóå‡U@œ@Ý–lG¢t[€¹º®»¤ÿŸ]¶ºr¡“Ï¥d`G³åᢣîxßÒ“¤®¯K½ôºŠ‘x‰›вf}ôwاn/rêÒ˜”†ÌìB+%ÿßVÓ·n‰9¬ÈIƒ  ”Š‘«‘'ö­]ïÎȘˆP¨šÞã‘WM'ØŒc±hŒ*FeQS!ÅŠX<Ép}eW;ZÃõE@£¹r{d±@íë.Û°BHÄÅWZ¸ÇïèÌŠÔÛÝ¥?ö½“tXÀcÀi\ë=²ßW÷8à©—øUìȪyú—Z«j‹d³ÿðËG™uwÌkPÚI˜e ßJÆOd‹¬dÎÐÞyÔûR ädÔ„ÍR>h‚¬@ ZúÂL 6x’†‰(ržL\é®A¶VQ›4Ä€ Ò6ÂWHy³ŒNKæ4;Æj %,Ý—tn=S¿ÖÝkÖQÝPaDREÚEb˜*`¬Œï>Q±ÌÁ&=Úଧsb~?؇´R7æß5dÛ¸bÜéîT¸d±áœ@Õ4 0Õâ9*#c = È@B¨Q‘*椑QÌH^]Š € h%Z´T¡! [j©£G‘Tê”j£Tá½èœÕ–Sã÷™ L®ÃoÉÖ&È)Ìk‘†–ÎÎ>j(Á¾Û•pmš›5rÊ*[ÀnÊç€PBçä&5[0Juʼn|}Ï>9|Ì,Ìš¦ÝÿýðÄO 2cóO<Æ È²›¿û]¤t–Ôò3dÜW}õûŽqÁpÁŽrþzFR௃BÄ‹ƒ¡ •7ÅtEPŽ– ÃÓŠ›‘áLãØiÏÿÆïÕÌ>¡ÌCj|%aÖ–þö·]MÚ’¹ ÇžOÏpŒz÷5©§_çn^›uX—.‰‘Γérƒ’H[I½ŠÒ¬*+b<#jJœ³ä•ýž@  Sû;ØÞ{ÇÿÏÞyÇIV•yÿ¹9UΡsNÓar`f€!KF¢’DÕ5­«îšV_Ó®º*" QQ‘0ä0L€&ÏtΩª+Ç›ÓûG7šž¯û~¬ïó©[uî©snÝž{~çIËsu©¥Í¹‡^õµØ ×¶‹E™Ÿ„ß“l_l®ô¸,•evÉÃäMY0te6ÿؾûÓ}Ž/\)šž`15Œ40B'9d1«›‹Ý7¾´ÓV¢tAÀ”tÌÐdL-¢&Â)Ó¦‰ð˜U7PÝ€‰eA`Ì]¶Z¦ç8}É…sëíŒë³uGÌS¼„/‘‹ HÊ´4táoì *Ð~«^í`eÅ àµäEÛsƒ•×¶¦ßò) rCf¸<œñ&»+ýjPžE‰2\àî~,ÚÀ+mã`š¶_éu¯­àE”ñH‚|gÂvhzLpkšUM6ZWûÎq•[O’†®gÜrY»xâ6%J|ôø JÆ0Œ[o½uãÆ`šæoûÛÛn»íðá=÷Üsê]Í3éœl°þõ7ÞpJ „÷yâßÿ=#)ñ¿†RĉÝÏüàêÜÈ4wI+¼ˆýàiÏÎNä²ÈýO¨k—â]‹æÂSFã®s+O~·;ôÏZ/º*˜˜¾ÿ¯øÚN£«unSYSÇæ-Í8ƸùââïÿÆ^}¶$¢Íáa&Ñì¿íöñóÍg{ý7®K?º›4Ô\íB•ŸYvë£ñªZ3 æÚY—ŽÖnØœ´<¹Ý~ñê%šeÜkvÒã9îÕ1gÇa²ë¦©mÙ+[3ÅË.÷ë†N/šL s1$(NÜ|½÷áǦn¹­‚ÎM¡:T@eÖ‰YžœŒº]Ê1!ø>BqPâ˜FV|atÑyŠQgÀ4²µ¡ÕH_ß>4Éž¬8ôùóƒX ’”§2\·d‚ ©¢ ÓÔõX1T ½/¦¡7A7dÒ=S:èÚ³/gu"g7Ž-”žÏq—j*G¤~úÊœL¡2м‚2Ä16A¡†“ž]Q—išKéïmØÌ‹gÎÁöT[‡‘†Z8Ám@˜RÚ7ŠÔé&øÕ"â,ã`jÝõñ—ÈÏ_'YŒ"‰:Íi6{YmïHÚûØþ†ÅÞÔâ꡸Þ"/mÀ§|ïÍm¸¬ÚšÂk’h¹G¸HCWв IDATAZìŽâ+ËEŽ5yI*¾F2Ó7Œp#3Ô›c ‚ Ão7k ¬¨ŒÈ¸å²¥ý«µü)îÞ[wù ¡‡jwiész’…Ôè:x+îGÞÜ…wµ'ÄÓl³aƒ‰k¬Ó‡ ^™sÓY%DL-ߨmKfaóÙè5‘js³ú™³@ÉÇûBçTeŒ˜¯dŠ2é⎔ììPW¬NC‰ÿ`|ðʘ³lܸqÛ¶m ~zb1_ù&lß¶uÖ°s’»fµîº©á“Ê-K>óúP4¯þÖ“ø§vy·ÁŽ ÿóŠßMÏÀ™¡GHËÊŸ¿õ̕ӟŸ=qI~ÓW®¾sãÖÑœN•­¿ãWÿèÒ²…í#ü–›ê¯+^{fòµ=ÑTŠ\õ‡ï¿£Ã‚˜Åý÷Þqó¿=²7 îÎëþcã]·uZõ©§¾zݿݑQÚ·ìóϼú£Öƒ'Érz~„- ϫćŸRĉ#ÓÜ¥‹xŽÖò< ¦/ì°ß¼*_S®@9ÖP‹Þÿ„žÍ›Ë»PŽEL;ÚÃ'W2„)…•áq{SS{®¡:?0ŠþòbVÏhšNà <¤8ÆüÔ%Â3AOC¹ÒìC®^k&òÖ]1úÂæxCÂÏN½÷Ä}CÎGù®_ë¬Ï¾Ù[(zéÒ±Ù…B0¤, LÞöd¯-äÃQ´m°vkZÀjt|€Ì£(°ª´q›Ë bùÊ®hFõ‘ªÉ²*ÈsŒvx ÎfÊF ÁÜöÌð«%Ž¡å\’Ó"åž±/cþðâ ‰`jÍç‚-þéžÉê%À`"øø$Xh–+¼=ÖÑ¢¤Ï =Ó>ít¿‰“vŶÀ%Åq›Ë $Ç ©h ÀœµÒðòï¿…¢Å;©ÐgÑûãºçñáÅ—Tö0øf."[–Þ{À»b”·zhD“ªÀŽø_e|Ó9ËPβ؛ºzÑÀ{#=æ®"µC÷V­‹!*Žçñ5 iJÕæÐ Ôy±Þˆ>réñ$ꥢ&WÉ2tþÝüo,!µù'kœñ'6Lôs:S^2µ]j‹¯üA½3N›b¹:2É6Ò YÔù@w”c¢ææBuès?K´„Ðb¥ÿ4{P€µíÅ+N_@È¦Ó "À1JFG©Mû+V¶"^›Jš‘é¦y‰²cöSŽ5# í¤%Óªà¨iTp±} ûßÞ±t¹ø‡_‰µLÀÉ4C®ëÌ}|C>g8v‹ì™Ü.dêÑ]Õ_^7‰³Ä!¾¼Ž}Ï˜Ž¬sÄÂ5dK”øH³ÐžÕ)p÷Ýwß|óͳ¯˘›o¾ùî»ï>ÅËØðýÕkNÛöÝõïÏ-MšxþàÊ{ÞîÛü©‘oÝþøôQž¡¶søógÂw¾I§'7ÝX†õµ¶•_}jP0ôÜ®o9¼ñ¶§Ç÷Þ•§ž?´öþû‡¶}©ðK¿¹ƒ0ó›¿xþ»/úsTQ¢½¤÷+|ñ¿ó{ÿô纻GdÃã;sUÅaqtÜ‘,Øy’y•øp“ÍfK™j&fð Ÿ ÙZá“÷õ[ ³qÎÅŸc‘[®Æ6äþ?š{š;f˜Y£“B˜²OÆèJŽ5»Zõ[.Ó†&Ñ_>B$3Ç}(l™iq.ªKöN¦ &"P2¶{olä@1ÀÜüÈî×·Áð@·2ÖP!˜¼8é¬ (Ït7<ÛÛøƒ·—>9Ðô—Á¦]±ð²J~Y¥0=- Ÿ.ß~&~püÍÑ.²»Ž ˜‘·÷«]éO¯]ÉìwèÓÓx+íùc¦ë½3Ã4Ø^G¸–a˜X4Ù+yÖ5+‡xI¤PC³…Q]愈§0P$zÖ$qLŠ­ŒNk:pN’P –âÜ¥Û7ä\äUy‹ÿÙ{fB$ÏrïÙO®õIY"»‹Þy—Åc¥ªƒŽ°ßchZjjDÊ&8Æà“cMŽŸ,^†jkª*Œ=ñ¡¦ÒUTö™©Ö¾lå{¯0оÜkBØ“çžh‚AÛѼ Ò݉ŠïYþætÐN«7vXš>žŒ™…) é^5ÜCvªu‚–$Hu0˜R™©¢Åê Àº¥úã/∮àˆá´Î_˳¤|uÛ@•½¸ñë ûBâXv»ä}³Ø:$V©’Q!öe逌#öPÊ’.ßþÞÈ×&a篾b\{1ArÌÚ–DW“ÐÕÄÏËô}ÝDý˜i l¨Ïl™T¸¥åi•` NØtF5è™Ò}J´Ï¾øll0ò§ç±/ýˆíè›’©§§+>w·xUàê Êp>·š7;ô–%Ì\A›W‡*74$½ö"JY„2±^Ò*œ¸M‰I>¸Mæ®»îÚºuëàà\B’úúú»îº ÞM`Ã÷?ÀˆÀå_¾¢š€ÚsÏõþzÛ˜tKwÒ³0ßiWϦ™'Û>ùOüŸË_®è:^c×…_½º–€ê+¿zî¿ÞøH÷V¶îÛø7åÒǾ²ÎK¬ýòO.¿ëªûöþð 4ÊwØ7´ÊÝä©èZ ïq*{ÂBýüb9öçU¢D‰ÿóüe/ýÃOà/{©>OÞÚMÝyù1AÒ‹t-BjáÁ—˃'J×;›×Q2ÁÔxÅŽ5¯8e½ûù²+V¦.X.<ð‚ë´výñÞÀg–FjY Q1ˆŠAˆ€ 4¢i«FÛdãÆƒíõ8ä›Ï”6n¢ï¸)“àxÄÿí·ß~XÆÀàààí·ßþ›ßüæM+¦i"b¾°}ÛÖ5ßÞüþ$fñXf-Aaš¨žÒÉFfǯ¿øåÿ~î`RÅP=—Å®”o“Áíeι½(ÜYn)ô¤UPÓE×é¹M%*Ðèâ_NaK¿óÄw¿ö^ýïfóEŸÿéo¿uÁÉ܈ìGßœW‰ÿõ”"þK|Øž¤/ï9F§Éõ5ʦôU§çlɱ.wêÅì/4Ö.AºÚNé¡`UI¶ºHz-Jj+ †‘˜Ùà™†jƒcÍdÑþ»Þ†këÆ«œññ¬ÿÌJ^"é¿í`z"¼*"¯âLg›³(J7ÙÒi@èæ ±¦MÍkFÏ”âÖg¢QLWC™Ô^~"{Gku™[ÚÚí¨ H¬RïÛ_v^ElVÆÌà6w@–rÙéˆ`UÓºiÄèrËrº|l,ÒW ;U»ÅÄh;¯Ø9#„!ûÔa/BCÝ4,ñ›Érd\Að "äƒØ~墷ÔïÊá·eZíÅ—r®.¿Êûlh2o8ûp¤hÍ)TwѤ•&V®´4L³‘YA¥kE…™{ám{E¦4ÅÜU íA¬,6˜—‡GQWÐ|–¸YÙ‡ø-¹‰~²=-“F6 ð»á®ªrd•w¤Œ[ ÂæI¡©KfòT MZljj¶æ‚PˆÔ½}ùf©,LJÏ_§ÝÿW¼«“GHŠ¥°Ã^|‡Ÿ¦À4?^Ÿèµ%½å«ã êÌN¦¾?gi´Å«KKdö[¶OÍ8Zì¤U}jËjE¦âÝîʲ´ “ ¦ ?Œ* :å²áLÎQ šJkÅös—·dkaD^Dfâh¾CðêCo ™Ý“æõ×2¿¹†Á ù¾ÉPmùØlokC33é"d–VW…ZcˆHØ /Œ¶:iiQhúð·È|B±ÏS2‰´3s¹Ë† äѵzJ”øÇáFüßqÇ<ðÀìa}}ý¬¤™}gÖ2s*ÌŠ™Ã¯?ÀHNïíRÚÿÃë¾=ñϯ¾ÑéÀ¥Ý_j>ï¸ÿ•€šˆˆæ"ýK¥‹ÂYnÉ Ädh%@žéÏpenu­¼ów¯Ýù;%ñÎo?yöÿræè½G¹Ò.4’…ûù;L»Äÿ^Jÿ%>ÔLÎàå <òz?rËÒÑE*çñö ûà Fù¥èý2®¶“÷²G[-2 ¦érè·\¦ Œ¢÷ÿoo"ÆñÊÏ´ x¸DE[È’ß•cÄ@PÆzë…Ű_kHÑ)§Øûºùé3¥®f)Q´ýmï«ëzAúVÃ'ƒ#™ŒvǯìÍ~sÍ"5ìÓŽ7ŸS7&ø8ÍŪån,´êµÏ¥gnS‘lŠ ¨¼ŽƒÃzjF¨…äÞ3<‰½Þ‡˜€€i4ûôÓÚÕõË Ÿ†ÇàÂîDe](oȳ‘es0„t^0:‘·$DBP¨®åD1fãˆ^ž^„âæêòá£çè%²òå–c&~x5µ_Ô´pºó%>ò|p›Ììëo¼ñ׿þõwÞùàƒÎûè»ú89˜-ÈvNŒÌÑ‘@†”WØŠæ*;Zì•»“ןhp…¿õ_[V}g5òöϾù¢å’W[`»n¾˜¸ðë¿Ø¶éë+`ç/¾þ좧»°Á§ÿšì:gy9góúl$r´Yê8#Y°ü½/D‰ÿ-”"þK|ØyòâÇ7 09ƒŸQ¯v5׉v4æ<¿: ·\‰ŒÀ/„µK®¶“ü‡²CžIÙê}ÙC j:Žak6Öã“Z¸g"«å{sÝÃ/@wá·ã-ç8W4²{úô Vi5av÷3»¦ÌÓ,è§?å¯cbÒ¦áªÛ³”üÜ`ó‹¢U®",oWxŽoîcf²–ÖJ½2 Ö”ÍßÕÞ­ÀYúòàÔö~KKPŽÒHgCH†uùÃ…\&552Ûøm¾E¡œ?ºŽ…MêóOOž~eëžbQ( vϘCë¹"ŸÒ6Gkzó®]I}]ñÛO[†·17&lކ¾Ûxð±þÅg˜K“/‘´X®¬ßct5ˆ#^5¢\Œ §QTÚc•öœ j´ Ñ‚FÏHv Τ10žßžpUïȹ[“ÔUM3Ð4LW-”|igFM ›§ƒqžn gÉ»òeKÏð|mf‘ÃaŠ êa”” E žO/ S… :îÀ.³sˆ’€_ÿúׇ_ rôáßg\ÿP 7üËÙÝäÇ®²œvO÷Ÿœ{›]úõŸ^pùmÞ€ÓÝzÚºòn/QU×\žþú"Ëö¼áã?zê‡+9°þóç~ò¹›/ö+mº:®ùñs¿8Ón¼³óWŸ¸áÊÑœŽYjμsã/×p°ûÄ#Aê)Eë}¤)YcJ|xž ?¾Tæ#žÂþô6Þ€½}ìñÄÌþIÇšú9—}Ž…®6h¨ûŸ€“‹VNH”“gCÜ»ÞG‚Lýä­æ+êãw¤y¹ÿ/8lA{¦ô²¥ô}ÞŒ"Òž1ÁÄšpž‘ß?EKÕôM+Òå¡!À„MƒÍKü¯%ÿüpK¥­Påzw`ŒÁ1†Ï­u5‹¼ˆÎ$©‰òù]dM‹òÈ>—üÜ`3æÍK@}Yþ¡7B-AiÛëv"íV ÃÓ±iEœ»|•®ÃJn ©†sxBîîϵ1H£C|fÆUĬC‡Øto# Èú²Ô•U}ßlèÕtà ë˜Ñ8” ÿN_o£cmJÚoò«3eYµùBhA‰!P}–v%€45@€D 5  gHÙÄLŠEM4§‚àÑñ4ùà>×éeéHBOr®7GíhÊKä˜D£¾+Þ<à³åGsþƒ9›M—ïKÖk*„È¢h³L2ˆºlý’ÁL+þ>¹\Fk«ˆD%6þÞù™Ù™W17ÅÓ£ç൅éáãµG þâ@ßSS&V±¨vê™—„ËÖÈÇ,è-¸q(G\d/nE}²¿ Z=VJÙmk³'„‰‰-{¤o]5AÙùÿ³§&À)ÈQÙðÆÒ>7¥tz†³|½Çâ`! ï*œjFE£—Ö8_?Dî“‹Ù†c5ûä@qíÅÓ¼®=ÕQ“\pðñ„ùò^ó+gW§Ä9?FóXgv––#E¼®µ Ïeü핉œ£6¸…Lr rZv6²É[¶=Ê^ºb|Ó%Jü#€üüç?¿øâ‹].×ñZ<ðÀ---çœsÎìá½÷Þ{Ýu×Á»æ”yîa³‡>úèg?ûÙÿé¡ÿÏÂo¹©áSþçþ¸óƒÓK|´yúé§oºé¦ã5عsgOOÏ{8œNxíÕWÿ'GW¢Äß“×wÐA½¶B}ò%¶«Iýù³–¦Š èšùho«Y¾þlË/ì™÷&/ÀÀ²e/º¶Ë8±žÑQªh­`…B-ÔU†¯û½çŸ–xm…Ùîy½z­9fËÊ-«=9<ð܈Gé›ñ3ùh½`µ:Á6wØ&]T¶iKÆÍbÞ<¿¶çÅñ6Ó0Ï«î>ñ4yãE¼gŒíKXRV·&ë×7ŽZm6¹-/ƒS6”vœ¿éîW䑜ÂiÙñf¦îÒÀ®ãö,Àþ…»õ–ò•îÔçŸÓ((¦Öv*³ö M•2R—]B”å£?ˆŽó³C {ÿB“ù" (B½ãÇÅ}·ño¤©à¨N`¦BXÃŒQ0ZAH@1^ÇAyåȪù¹ÁæJ[±Í?O˜ÙJÞt1žÖIÍÆ›TD·ÚqÙ†**{ðHv4+jô’7þ뮦{’œe¥}Z×a y¤ÜH-qI ›ô˜Q™C-4Å<¥šÉb ?ç=+|Pœ`¬v»Õ’ˆL©š¶`{'¡2€ÿaªÓ ['¿y-Ÿ1Ñ¢yÄ{4ážÊpK*¢Þä»þò#%É<óÄT½KËzñˆ‹aª/£ã8A¼5 “éßKÊÏõ7µzSU®DJr×Ö:b“3‘$•‰Ñûv”nwªå£©Bg=èÎÍÄ¥žÇpŒiª`4ÁT{¥Ñ$ˆ•¹S8ì‡6ËëÛô³Í^תš8Æ€¨ÑÏFÚ®¬˜‡äÜ­ƒ}j4"ŠÙƒÜ¹ŽãÞB}¹Jh²‘Ž[‡«ÊìESÓ'S̺Ö9Ë—(ñaáÌ àå—^Z¿~½ œÒÿû¶É,Y²äÑG=i›÷Ûm‰mJÿ%>Ôüi;ú›/JO¾HÕ–kµê-gÊ#ÓÄy«‹/ìt¿5hYÕ(vÖÍùÎ8ϯY kÇBW›ÙP£ßÿg ³«õ¸ÙV0Cæ„ÞV1²?ðÁ¿Ÿ1¨HÂëoa‡‘µúo¿¦ÀîŒ%)Ü¿¯oSÑ#W×?W€î8Åà2H¼³ÞÖ¸¯']‰ pnåId pŒÎ1:Æ0{Èðz:òä6cÒE÷D(¤%$·×Êg¯e0\úUó‘è Ëœ³³N‰Ž'"-W—Ío³29uŒ¦¹¬)>öl¦é2ã»ëû^<`‰‰úa€á2Š™8QÀƒÏ¥Nó³¯Ê¶/¹ßy–]û´¶özõé ²+ˆìjÓVŲ>"€È9k–0޹œGFÂ`˜mþ¹ {!ÒÂÄ5£"ŒdR2ÐiÃ.‚W4êZ“ƒ‘ò‹f®Ž.ì˨D³fZE|Ì1?+…HX¿t|Q,¬cU3åQNbðÐÙm±PRpxج¡©|&I#zØïÉd39~„f¼†9ðܹžîçgZGå¯í\»Œ/Â%3•µÔ9sÞä^A"XZ€½‡-{¤‹Ïì¥ZÓŠ²3ãò0ùJ[ ®nUb¼ÿOÝMK<©}K«;up:4šæþ{Ûä¬á¾ÉË_»4õ5¿ªšØT Þ Þ쀕µ…Ô??ŠWŒðþ‘ÝQ羽û}¶­²Úª®¨ÈuTÆföøkÆ-—Æ'-Ëá]«iÌðº»fh‚Ü? •â8éÞ6;î¥óR¹}™ò&û‘w2Yf‡ýSŽŽ²’Á¿Ä?.DÉ”„J‰€Rĉ)Ããè•«´½Ýtµ(ÐP)D¨Xмb}œ—ð]ý®»_ªZ]Wì¨I¾Ü繬ë¸Ûà ·\¡Œ¢¿|¿æ<ÝçYØ8£䩜^Þhøè®½Ú;½øÚ.ãóŸ<’´*¢[Ïjš`òæK”eCq–éj‹Ú/¢ƒ‰¢Fo·^S7’’ÝEï{÷ÂGJr<2Þ|cm/ Å?™þæòÂúŽ$/á:jk´Œ‹¿Ûdú­Z½ÿÃngŽ'–µänº±¶ÇMó§-HÄ`Ô¹cܬ¨Ìu„³g7eîÿ36¡—7ÒnZx]ôœE9*샨,ªbQ]’R2óûžÀ2þz÷ óo-ÂÖi¢í!ì¢6¹k1¹¯…ŠL%gÌü^¥‚­ ŠVŸB2EËŽ‰¼õˆóSKç] Š4ˆàÇf@6éòÜÞ!¢s™/•E¬Ð ƒDÁ”e“µ,v™)dN€ªN§¨ð„¥Ýj8%Eª çµcpi•gz×Lø¼š¹Ë•Jgò8°S$` ~~^2ÅDsY‰NŸæ#“5-’5­3û!p¤Á@Š;½bŒ>4Öó¼D˜†úü|þ@\޼õ´°2Qç¼[¤Eã6Xv?Ñç0Æ\UŽÂªª™Ë»$Ê^€iR/š(¡iøpÛ7Ê>¼×yaCñúÓ&YZ%ÃQR“XZÉÏÕ‡c)¥£*^ÌòÙqÜ»¥¡É#Bæ_Zúéú&U<²©ÜÚ¦OÞ¬D‰S£ñ_âÃËDзìCo¹l. ™côóVåxÑu“[ám}G|™D¼3ì½÷ú‘"áµó'èc¡«ÕûÍÇ_Ä×v]­ó¯‰,÷Ÿ›Ëϭ˲œõ¥iÎn>ÿÉù®G ž{Y‹¤PŒ ü6À鹌ù’ÁxH¶'êkƒPÄmÝ)û™¾¡Sœi_®²;ïýDU¯›ÎÀº*±( !QSã0"㸮ްžˆ¥™É$ã·›FÛ¤òuÎiCV€A"x‰ŒdØG¸ =¯®pZ«@Y gÄ1‡›/2÷Üh{]Âù·åW§«¯%{DUž’dÀ`yª·š ‰ ¢°ÚýHˆ™nÂ’wâ#‡Ð¥÷‹„‰â~Ѳ²eu‘°+E,ù!ª³£ íìåÀÛ| ÉÆ‰À/wV~ù‘5n7ÝÎ2bË&-™´dÒ2BI&Õ|ffñ%p[@ñ Åá<çv!¼`²¾!L) k(%Qn‘õ«d˜3Xq”Í^6×p'yûl:P5}&+VÚÑõ¸„ÍkŸ6Y§–òaéK«zþ¢ÉÄÍ IDAT7Ì76ŽNç –ɉ¶üÂ7÷bÓ“ÈÚÅ0ë¾XkF· §3¤ÒÉ=zë¼[“Í¡„û¯#~AþiIæ×{ ‘ØP—rÐBå³Y °Z¡8œÂ_ïv÷Ì0«ëŠ?½âÈJ@1QÁ H]â¬êPú˜Ââ,¥°”âµ—Êd,Ëýt“¸¾¡KÃ}¡ÂœåÍ8JÉ4Gr6>2T¨<ÞdO¡É™[îR¶'K\rbrJrÌÞœ(ôE,d-Q⇒’)Qâÿ%kL‰)Ol0á{·hGW¨ä}M³ôÂN×ëÀÒêúÖHùŒã•ß}Ûš–WäÚË›c|s6½ò/!®9W÷yæ¢öx6nÆÔÂä¡¢ÒήXR‹çŠºpLJ¨]‘0«¦+Ë¡®šÌd!ê\æl=¬îS…þB%ŠB=›Úó]âévQ§ô§·;Ó8!Y¯(?b½YÛ^d8w0D‹ÅLz.7G«5!µ&”²»qgDùÛ eµ}8#‚S˜¿ÖæÔɸ2ó¦ N4O›R]zÇÂmÛ–j¯§:-j}c$¸Ì{$ø$‘³ìŒsKò5S '¡Æ.È)) ]‰=ò,™Ê†'îÕèêÕƒžšKÊâ5„T–€¥˜.wˆù—'ëîzÊ™Ê@Òäí…dy‰ÈnѤâºM0É"vL±¢2‹*Y¨‰M"T2 0`€±"`¦¶ ®i¼¢nöÍヲEŒ€&FV?h TÞ೚tDܲ„´<0ýÜPåGBÛUݜș>R­¦„QÙ:¯Û8æ.G {MÍgû›Õ(Õœ€Ñ„ç–À¤ ž„ˆ GÐYS @PKD¨Å:̃ÏãÏÆêÆ2„Ý”Ë(åâ–‰Ÿtvõ±}uW–M6T%$5ùÆžª×{ê󊹪®ø¹sÆÞ;A·Zùi°–¯)âú½ö–R8T^MòÿZ¶ùÛUÛGü ¾lyEÎÆª‡“µâ8á ã3 ¡ÐÛŸœj¯Š?¼³êÒ¶ñŸ¼®v{;ª®qfòqÁ~XÉ$DrFB6Ô7ÿ[‰ÿ¼o%³{÷îÝ»wŸ¸MÉ­D‰%> ú­Â{=Áê+Ä‘fdš« Ï­S_îq_¾xšcÔÝ¡ßïj[Ê]Ýokvµêïgô†ã…í–Wöšæ5×i> b|\¶pan×9žÂ¾óuÁ•¶¡lPïzÖsåêô$.ç)ÔŒ)Ö¢h=ÇÛýdrñùÞaqr#éÌ;…zÄ˂Gd ãK:ƒñLN,œžëéýu ë²ç¶è›º²º¸ EMÃI²‰¤’KB“O,ÇùjçQÙŠ8ý´ÊgŸÍVúµHÒü{:ÕZÍ9<ìÜ ·ø»¶v÷¤½©&PEØŒ£’ËÇf‚ÊVMy1QùJÚÛéÊŸQ7t&Fæ4&™Ó®2˜¶Õ½¸Ç—²Ðáê5ö|n ó'dkÄ´fs n ÊåÚŒBӕܘjgç.Túé¡ö Úþ\e#s ô¨ì·ÙQ§'1‡`RypÌV ?)ˆ®`ÙI'Ábgn–ðÊ|á°ôXrn\Nl^ë'4Å@â2éDõF$:jz•£Ö'”Õ Ü-§R”û úï?Ã4ÍE¡é鬥 ›Þ»CýUò–k:„ŒêœmoÕŠ@8†¹ª`¢ÿŒç”dyEJvûg’Ä­},%ç êY‡z¿ßùÆcýK ‹ÝG_¿4wãÁBij Äìð(ë’ ïñ;Šîㆆ¤&Ôh6†@É¡¸û•/€x€ ¶—Gý^WzfZ’I[[a0gjfuHYQ–ÝÖïc‰·†=A'ïs,ëìcr»“åÍï:"Œ dµïD5^K”øÈóA”̧?ýi8aî²ûî»ïêd„w4_þ©÷WË™£ß}ûsÍ×OöürsÜ3K”8¥ˆÿRöv-AtÁÒ–£»"ýЫ¾Ü2Gk‰,7œÇ½ÖÖ-Q¨á¤çÁýíK™ÃçïÅç1n¹L½ÿ)òÞÑ«NÓþósÊÑ–*ª„Qp–#ÓÏo¡£iô;7HýÎ…ŽDí!êsÉD±ÛA¡YRÎ-§“ë½{øúF·H“Ìw^›d0{„z.wXŽØFÜ.§Åb‰'â<ƒ­ëÂ}îcÜÛ™Ü5ì};BU±JM…Ëa«j ÕsÙx;ªAH^&"nÿ¤ãÞÝ¡j«ÚäÊ]|µ?`eª«þáMÃÀàÒ†Àð‹ÕŸhÚKj’Ô§ïJYþcÙÙN•+3YÌËáS ÁIŠŒ•P’¤*¢AÝœ1þ}Ùî?޵ü×¶†u•YÎN[­ì¡=#`IÌÅx—Âwµ!"AI^_ÌÖb34&$-4ZF€ËÍÙ{`He=‚³¢€øœûø;B£;Çíži óÕdN —XR¨u§‘§q )J6¡8áv9ªÂI,æyQõ‘§»ËoYyLšÅDc:‡€Z£MN£þÊþh†•g{S^·Ë^8»oïŸz:MÃìÏpÚK_ÄG~óI>i©ØÚc€U-ÍâÛªé>þW{ë¯iM~bé(¼Üf‘üegZ4ÝÌíñj YC«ûá[K3²‰[¬7¬ÊvT¦Š¦£š…TLÞƒŒQ(V1[ã·GÔ‚1-¿fÜ|ÖtÆÖ<{ÈRJ{y´Î—úuOgNžØÓÖ-„î©wÄq £ì˜. A}0óðžJ®?mê¡Í¡ÖOsô|§J—Ò qøA‘s+K®e%þÑùà•1o½õV¸çž{™wøwãÿOȪ«¾÷=¤’8yË%Þ'¥ˆÿFºZ³ùåÃØ¢Z¨Amå1«+ŽÖV5 »úë;½S¶ ë ‡?bIyQhºÖ“Éøéëêô¤Z=ïéövc÷¾€#Ö„ÖZùhšª±j:fzwOjËÒ?G€}*I!ÒTÆÝQÇŠv+(2B-ᦇ”r+.éŒÔ‰•LVw¼&´®¤FBäœ/ÃÐ>¯W’¤ñ‰Ièj º‡Ž(™Ù^¹÷YÑ]ï„.š0,®x¡Ì¦aúЙ Ó;ªVVÌÜ﨩±x‚À1;Kx8œd “{kØ7sVûçWØœ’eâhsGé¹èþaUtc¢Ã½.0²g˜ûã¡Z”À¿Ü9µ¶ç®iÏ¿pˆË£”&#“üôé;·‰+«Š?¼`9îg[*¯Y”Z^6aOñ2ãï¶®Á÷ô}ç@mSHk÷¡_i?0À»w ûžÚUuéÒ±¨âòáñ)ÕòÞ‰(nê³¹%¶É _­‰X+Ýcȱ;Ÿ(fÕË»¦4ƒÝ3AíÏ…S/j n‹ƒ™óœÜ´­Â2#NGgÎ]”~èuÿçΟoÏdɉ+³™ß`Z"×…ŠP¢Ä?6DɆqë­·nܸLÓüío{Ûm·>¼çž{N½«y&¿ºj`Ä)§î_ã Ÿ‘”(q¥ˆÿRj«Ú*“ô™º·Ÿ|þm¦µÆ¨Â1:Ô—_Úí‰Øzg˜ëO›o{aI¹Í?YãJŒæ|OŒ,iw&›sëàxyüE¼wm "WŸo¼¹ÄIŸ[<úô\ÑÔTdÇŽè9øÔDÊÔ j, /M¹¾ß2 4¢X9@U+ó$—“) ‘Ñý)¤üÄSËŽ­JË™l·Ëã6«Åba㉄(Îíµ¼Ú¦møŠ.j$åýëˆ/L)u\ºC?yZŒ¥T‰ØÖ„¥ÜÊc³j§Ú¯Tû3ëš§™Ü-6ÕtOlߦe¤Žù]²}ÐõùnžøZW_¢`Ë‹®zÕLŒŽ1ìk -‚i.¶¦n4 øõøÛ»Œº‰®ªžöp˜ ¡‹+ÐÁˆ}ÓNnUMîíê7.ÏS,—'*$eäŒSžšI¾Û1[ ÅÀsÂâJÑéWx¥œ ‘æ5\>)ì;Pã‰D[§ûS`ïòL‡û÷±öÔ³ÖshÞÍ—§‚ªéɼ >Ú¸¡uô'Ûk¿ˆ]f–Ê3õuùnÐõ(ž}sÂÙ\;¹}¸|u…%Ú©úþ³²Á ¥@ gi 2”#ÿû&…µ–¥o=c.ÔdÿˆçíqÇ×W6’þØPAs(ø¼WùÄy-ßoš]ßt †4äF:50µßóZí-kÆì6Î…i“…÷ P~ Ÿ y|[X:æúÜëÆ·+F³Ì÷ÞRGÞNhCÙBS«»NK¢‰¡„{4Í%eâÞWË5Y¸rmö‡›Ø}CÎκLsŒ|cëôÅ xŽÅÛawÄjoêÔ¯‰I> Mæðë7nÛ¶m```ÁOO ‚ æ+߀íÛ¶ÎvNr¿å¦úëŠ×ž™|mO4•"W}ãáûïè° Ào¹©áâõgGŸzuØÜðèîû– ß{ÇÍÿöÈÞ$¸;¯ûwÝÖiE@yò›·~íÞWFЍ½ñã?Ûôð§jÞkz9â]FåvþìÆë¾õ·aŸqëm. B§8­%¦d)ñá…cÍÚJ½¶RäEt&ILĨÿ~ÉÞèEÖ4‹!|Î’ÄCo†G‹øl5÷ÂR«g¢Æ+øÿ<½´Íšxñ™HoEPtC›ññs%X×ElÙoélžS2¼ˆŒQˆI^tºvzWÎ(Ú[)F‹ˆÕ…æÆRÞójç jRLªþje QäÅôÁ“ÎhÒ¬œ0¼k©;𖦂A6›Ÿ<&…ôX¡lLÛãXQ)}yYw±hþà)÷7/Krïδ à`š§îŒÀRŠOÍsêìÅäþ!­¦Úú³ƒ¨!G_ÝWÄê£N“ !¢ŽSε.kð‚³Þ©F¢à³FíhšÄmEÔÖCv2*ï1 ,‹ŸëorÐʬû›‹,:K¡Å[þ6ß@‹2j¤…¦Ó¬Ápf†×j»ví7þVðTïª4ÇÛݧ8ýYT¦œ$5#ggØ6ßhÖäfÐcI+(9lm­ÈöUJ…qwÈ8U¤=þx?j¥ÛƒÊs‚ÓT•«Ÿå¸Âý»œK©â5+Š·t¸0è_ß*SRðÕ/û²Ý[c§ÿ,zUš$Ö4Š?ÿäØ$6 ’Ö¶ÅêNóôÖ3lµ¦yß–ŠëOO/Á¦Š@*Èüeϸ¸ôh˜ÉÌO³6iüXõØ\·zÞm Ž¥Ý­TBÀœmÄœŒ9Á*o©Oƒm ¾ ÷{œ8†E£1Aš ôUz$ç{q&äÇåÓjƪ,ÃmA“ÑïýÑù­«R>ç‘\jYë¨Ê¿2ÈÎ&O;ú[xbi:/èH‚Aä­¶Ákj~g'–ÄåkÖÖ®tÞ·=4^$¾¶j?bȨb¾Õ(1õÓoú›ƒBƒ‡ ;ÂMÞg•£y³¥Ùž±WŠƒm!‘·zm…dA¶…m+¬Êy«ùÁ 殿zW7ó]M $\]0í£Fù;ª­›ÉhœŸ³¨<×ßk*‡gñbŒ·¹ "§4ë…Ö=Ç+—TD_îq-Y‰g¨ŠŒ¯‚@òðZË?·«;€ME 1WëÕ,~ÁS ‚ëTµb¢ç´G·9ü…s¥€žl–{yà2¸«@̹uÉ9áht¢-£¯•­RzÆS_3ðZÎ×€Z\ e9[ˆ»Æ*q䳋b©iD6D1€—ð—vû:Äé ›÷ì¸zì¶z·~þŠ|Mx.œ ò3ª²{ç/VÚ®ô$+´é ªC Xiå¡WzuE[Md‚Îv‘rØ…nÓ4æÇ±LL›çº¦Á*’óÓ¯µÛ&_kYѦꈑŽqÛô:˜”ùÙ ““oô äœq‹÷‰ƒŽ3k7›Úø¼#ä‘}î#,!¥¦óÖ0£@‰ÿð|p›Ì]wݵuëÖÁÁ¹TëõõõwÝu¼_?± ßß¹.üêÕµ$T_ùÕsÿõÆGº´r9àžK¾ö‰Fa߯¿)—>ö•u^`í—rù]WÝ·÷ÄCf/zð—×qài]å9ñ÷ûxF»ìw,³c`?çß^wïWßß@K”8†Rĉ³®eõÙÎú,/ØZ(zï–†fŸXæü¶"K“þ‰`ç>ôà0²v±LüôÙ|°É[¬h–’a2F£"ÇèA'ŒL±{û‰hùñŽ1Žl{Ë©ë º $?C'MÚc™‹uF qÓ+YÒåGŽ@¦$bó”*B㵺Ž,5w€ÍÂøÜ®L®Êæ@Ôèñ¢ÿ@Öcš°È–øRÛÛOÂã›®6xþMâ‹|®c–=²¹<çcåqÒ4pd$JoŽ1 .P:Ìš€ `žÖœF.[9Iéò®‰æÅ‹³hÄõúNÃ]®N„¡ ÕAK,]8Ã¥µd÷]ü±Ö´Dñø mLjM0÷Æ Ûëb^ÀVVÕ §²²†6—£>žÊdÇ¥Í{¹;®§Ô\®³±P_! ŒS¿þ£mM›ÜÕ"¹Ar£10ú¤`¡X®*°Ø25càc}³qÆ'òU+f_¿Q¨Ya™¦Qц2èÑ"m 7øj¶Õãnd01ã«€sYä² `ÓQBÈ•E»5k@ô¥m /×´Hw4,Pó0š¦ÎD¦k\ÎXÎ㵆™úºB/F” ­^–{à•ò«Œé²VEÆŽDòȤ"ì/Q2ÃcÆ‹²Xa&æ½ð˜_\K¢«VK9‘žŒÏå+çEäù7I·Ýua1^°u'Ýî÷,ñ¥ÖÂÿeï=Ãä:Î;ß·Ns˜éÉÀ`ˆ@˜I1‰¤DY‘”dË2µ’îJk¯Ö^ËÞ»×w×k­µ+Y¶îµL‰ÊII¤À Iˆ8˜ˆÉÓÓÓ9žê~˜áLÞ}žkñü>à™>UuNuntýÏ›VÔ;Æø‰éÖ¡ R2Ù·xkïÞcÄÿý÷ßÿýïåeWW׊¤Y9²b™y'àó|‹ß©%Ç(L,)x ‡Ô¥ñ²«%@Ø€Ö< h³«<‘Õ`€my¼,6ÅP›»4šVV¾=´¿ÙÝX¬˜ hÅ¥šåZÅÚYôÆ™ðʤè¥ôXr‘Fé  ”ŒJyøî¨2ï1s!¯èóºËµFºd-j‰q9dYÐ#~¿åå‹^÷ºAû™0:=AlìŸ`ÏVk©@‡£ìžÍÅSónzSê­žS°––ªŒÆMW Þäø<ÔQªSñ\©Ö/ÊSe— ^µ0~«\ack JÀ„IF'؈Ëj©¥ÛË–J{7¹nÝ¢Þ~S#]Âÿîï9KÓ¾ù=œ26DÚ¶KYy{ßåêö赓Äÿ| ©$p¤bJ.]¶¾88–“½¯e’y©å²P±/7& ]_Ò|ÓªûöÐÈ*Ó&êÙ·#!­{/ÍürZq/J±&ñ’:Á`ùJ´Vþ¸‘VeaÅnS\¢¤jSú´é‰+ÑŽkkŸ=ysÇÔŠ¶ÑHv.ØËz[]r9šIJ•J°sÊÛûT¹uâuöÚäÒÏ®??ë'B-Ö¤ª†“͙ㄗ¹õ†ò¯rj$"êWµiŒÏ%¹cl P»Ô Wçiš>¡zh*|Ç&4_¥§\}¥`Ywó½×äOOG_8d­Ó¥²;åªåCž¦¥,¹–×îñö¿oV¢ý:qnŸá6%Ÿ‘/¹Z|¤úÍ#½+0IAOâ‚>¼ïò ì–ˆXõzô ÍÚk'©½Ûòa¡°ÿUÏOfý=­-°%Zî N”Z:½ Âpâdþ6™•¿?õ©O}ûÛßþ¾ðƒü`]Ó;<Õ»¼v}ÿŸãЕ±½òßÿt¿ëöçx€ ÿ†î»¾åkß|鉯]¯}ók·>:â?êÝ÷|ýÑÇþêÖ6º8zt)º}Sp}´Þy'Ù|ïMöÇþçþ?ßöÁ˜9ñão<[·%ãð/ñÆ8ü®rf‘¹ñ² â’F;> ?zlñs·BO——¼‡#Ì7ë¶üÑ[J³3¦Ï­Š¼uïu…<yi”\¿uwèñgQp1 ¼ÀàÕ¨Ó²iŠ0L,FÌ•ÊÑ %0b¥¤šˆå»)„Y+ MP@ç¦AÙšI¬Fkè´''v57&ÝЈE|0±XŸUïËÉ!6½Ã3å§/™ŒK’áÙÓÔwÿlí^ËÀ;²Àû\ë}–.Š[¯·—^Ϲ:ÎF.7y¿«>ã#RÃËMLÈóÐQøøŽìˆ$³Ù  ÚE&µ6Ö&YÛ:Áb‚XÔP$YˆYŒ¿-(Ÿ˜®½ÒÊ×´þ&zß•ÊöA´œ¯ÎÕŸØÏvxÉÎîn³Eï»ÒÚ>ßûgô×?´šì9ÂúÄåcõŠ•›;³²Îr³…¸ëÿ=ÔÝÕ˶±õ•ÕX®½! °ÖÇcð¤z…ò‰ì†·P2oÆà„j¬Vþ]Õ6å|ïÕÆ«kBñx²~Üô& 1`ˆ>%”P×|tçâ>ò} 0}ÃìÐÙòÜ2…/»Â·d þØÂ;¯€°ùõ ®A.¹ãÆ+ª"o3;\mùunŽ•{$ IDAT뀫ÐÄe×j€¾ÕyJYð D ˆš v䎂eg|-ÛKmØþö#Áûn*¯™_$wŒ/Ì{]×v0«±þÌl!¶kí´¬¥·WOf}=^R9_½¡+2¦£Éê_]U?§74& 0Q¢Vœ6`ÛùGÅþv2´n¸¼f”÷$ç\æùùŽ“ 1HzêÕ¢c“qpx¯ÿßþö·×þ@ÿòͼ.Ûú‘;K_Ûèzy™ê¾û¿üêÿ¾B|SäÙû·ÿõçï»-úç%üÈ}ü›W{ºü¯ž~Àþì¿Ù Þ®ÞÞ»ÿö‰¾•’AÞ½ûЗ?yï–®ÿ D†v_»H‡÷=SóÌd…úTàÜ6ñø0þ‡_ãë6ßøˆ¨!V¯ ËWo…@›˜U½“¾`ˆÑE©`4”ñî “;úõT°P>C¢#z}P‹4ÖL˦IÒ0mƒv#Ššhhœ 5»5Ež![Òæ,É…5ƒ’åi)³6 °òˆ[ :“&¢Á ѳuïkEÑ´¡…,|È÷ÒÛ¾Á'_ ?w«yÑú!g˜›¶¨÷I‡g¢›Roî—Ò~53Ø2í4(1Q< ÍbíѹØg&K5ªEPmcÕ¦D#»NžûqÓKÓ&I“œÀ F¬åëL¨3šþÍÑ–[Ô…®–ÄxÃjŠ9ÜÑbo4ç‹ü«Ë¾ï~;ßÇ»‡ìîv ùG¿ç}x6õ‰¦‰rQ<‹3y€xؼ_|ù¬{¡Œ³JˆÎä öµ4VÊØÏ/Ó>×E"ËyJíò¯åº·G&ÞÜú18¡o€»à¡úí{¯¿ŽVe¾”4³<;þËzÛ×ݧ¾Ÿ" áÈ pÓ?ò~þÌe‘œ*ër¡Ò:øåñ«?Ø,­‰žR·Ç‹OëÑ—•[ORY7\ü‰Ò•íÙœLÞ¿«ØDVXŠš oMåNÅm;hkÚ¨}²0þÀ÷Ý\[3 WÐ={"Ùi¾ð:=Ôp|ؾ޳HV2å@r휩ʘÄÃDuFOÖ,Û«2f¨×ìH³z9½®2¹{UÇ9U,òöMWª/¥î¾Áy¼mˆ~z>‹¹Ï4ø«ftù.‘*ÐÁá}Å{øÿÖ·¾õ/ÿ·AÅoýïþÇï\pLÜýýôäy¯‘{èþ¸ÿGŽä:îùæ{¾ùÖ§.ÿ»¹Ù•?}WþÉ£ã²Öò·ï}ο³Ì/Z©GžËãŸ=àÿüмà+RùñßÞ®t¤t€z³kùسM¡vûñ…@g“ÿÖ‘‚¥Lål4C ¶å¢TMݳU:œzD»‘@u0Åк\$‚.œ¯W´P41UAñ·„›7l¥ÊäüW¾EàÅ×ÝÛ²0Øi¬¥Rd,I8:ö,¾et©PÙ?A0ÌŽC$K‰Ü7ËÅ nŽ\ÜîÔêÎ>:?Ðáöù÷bp&(š@€ì ú?<Ìu¢d*ùšdÓSW ÊnHÓ2ëN3ز¸ÅaK7±n,ó7 ¸ÉlU3l\Ü[h81á©èú;Å“J'?Û„—s8:,e§pÚkåÖu {ÁHW<àÅíö" ×\dc*s"n[™Pç†Á…/>ú?»lçm¨_ÓžªeE/V?qÏÇ_¼k¹ºbí„]ËÇ\Åœ§hÅx‚xT¸éJý|³FC¡‚ûü#±°É¤Ý'* ™tI&QÏÐW' =‘â÷Æ{à-³ó98¼x×JfË–-?ùÉOÞ¶Ï{ƒƒƒƒÃ¿&>Æß}¥$Éðäoí¥|ä ÛbMÍ3Of¿þQi-œFÒ`Èø£»&#MµùŠíå„pƒh9‹ýÞ¸2<æÙBú‚ÏÌ5˜Ð°87c¦ FÌîn¶eS&1 ÖË “@Ûš‹F ¢4ëœõ€ h¯ÈØ&ѦOsáðdÝ]lW¯¿«w÷Âqþ+wimÊ•Ø.¿y.#Ö›²ÝÄ•%¿–]pwèðôÇÍBÌ^µîÞɲâ´|ÃSå‚'ôÍ _7iˆ Ê" Ÿ & Y³\.VÁÇ ª"”LEÚ‚µÃ‹ñDd®Ã+šÈ»®bLÌž÷ó¹£ôïV÷ê›ø‹75g¾ _F»/ÃÉDB (YŸ¯µ]á{ÛZÝŸ¸ó%{9'ͧñðLýä c\ ت¸ìjêŽ>ÿ¥¾ðÏÇÓC\•"àxÑüÈ>äž|)}õ}«·¾4Mkup±3lWƒà !¡WçÉ{/&cÜœ¾XmDû\«BÔ@\"ÖØÂ¾|ªtmO¥˜a46˜›Œ%«~„V2Z¼Í§×ÁáýÀ{Q2¿BŘúÎWýÙñóýfù¡ÿüÂSÔñæz™ajIýâùÔI{÷t÷-ì­¼&œ™¥î»­q~¦Ú\‰E$A L¦î‹²¡Ä%Ëæ~8Ö»­ƒêÚâA›#¸(Ú5ŸšvS5 ”<)Šã8 ljy›vé¶¼®uÒUcdUG–îs{±ÞXÓˆ¢]7A¨aªbXÄôr•ÃÙ$¼;r%f¹Ju¤mmÈäÀ%tV[Pè•\ºÀØz‹4#¾¡ªí;bö]Nºñ9ÃÅ«éø-]ó™ªëd>^4ét–žš‹õª# ØO#«Üù’u HFW%‹dKù<ï ©Ê¼`×ÎBs2Z}숸C!¤X¿‡"°)]ðº•W›¿ùrû5÷íÀûv€$ÃÄ4üìq€Ý[ð–Z=Ø6.»îh𭍣ÆêÍŸÜ»ôÇÿΉ6 ãÙã2¢hJzÄÍWÖÝ®âT#^&èmÑôJ¶8‘QÀjB„0 `-,€óÌ`&@ ~ÞTMNdˆ\…;Z æ,tkjZZ¬-óÅ)òT“Cž™W§¨v“aC3U_&(ÊôD÷Ý×­ñáeªŒ$ErÇ@@ãCepns7¸ ¤S\ÝÎYkò3ÒÙ’ˆ*@Ô'=3ÞÝ :¢‹„H³³6¼ÐveÓä¡Å¶¹äP×Ì 7í¾í{¿dì–PwH_–d8=ie×ªÓ wÜR9¼ty}ÓîËê”’‚¾ó[×íÛå‹Zc\¬^Vü6Љ˜]ã’2pYrº$jÖäQŒýèµ°V©ÕçÓ½Aåñæmw°„SÓÁá þUå^ïEö/‚îø£çÒô¿êlïCju Qô¾níî›.(6,)Ä“/ ð…¯ÏÕP¨Ý)µ=iýüLìõ|x{SuClX¤~´}ä'¯w4ãêöD¡ÄÆ1™ŠR §7D³|"!èÂ$Í6”ÓiKIFé\ Yº—4ë–Á¢?ð’º,âF®\‘5ó%­\Ï¡Sîï«_ªu>K§¢çUY Ë’Î ¬æ6¥¶Æ™<—Êp±i­uÎmcGÏÏÎ4@ÈUhõ™“‘Ôšš¥ŠÁÏæ¢áhµ>¸ÀÉ4›ÀiH†MŒX`@MÙé"éˆzºìΛ´_ͱ¨X„µXº=;…·‡êeÓ?Þö¸fE†6ÀІUIsàXäaà7L³eÏÛ"c lÓDl¢póÕ/ç„j µ'‘(,<<Ñ V²9¿gD>p~üùÕ”ÔŠ.µ$ȈM—…&É™O ùóó¡ñßJ¡žCÐùiï+ŒZPš7Qr‰3Êß=ûRÛt"¸Ð¶XS„\z D,ÓØð"Åk¦1Í"@– Æ5JV#¶;j†#4 UK9%"3Y[´¬t†‹ƒi6‡³-[“ãÓÝ{$ª7sô3wl˜!|eÛÇ·¼šô¿vÜÚØEÔ¥ZÛåÀèJëØo˽è¬3nâÿÑ}ÏÕ&à‹?'u‹xSÉ0>>,jªÂêRWýäÙ\pd)÷µûì;Ãó8© Ý%K2þÞÏWn d$‡¹¸µÐÁá}Å¿*%ãààààðÿ'j…¶àü»×oL„ìŸþÖú“O®WÎßñ%hšz‘ m*º¢ðFØ×?*I6¾0˜ˆ¦HÇc“Œ-ø”5“¶BÕ´d óUß‘tHWq£|¤¿¸©e}v8É`Èñ.spGÉ88888¼g%t¹e›¢>r£yæ,ýíŸs±z~’¾{»ÙÝvñ(ùJƒHE5‘3Û €Ð«ó¾vNËÞ™ÒÖÍît[8óI½˜MÊ:+0ekœVH2‚鑘Ã6I`³ç†T×ä:oÛ!LÙ!. [1•úr¹Ö0)ò_PÃiÿéÀ]—¯ ?Ÿñ±a­>‰/t\umPLî•|A¢G×:0×þÑ®yѪ¶ïŒ‘Ü훚'ý"gH yªF*¾†{ý“{@ŠBxæ¬X\€Ñ¡ô3éq_pl®h­-Õ˜~£fø%w«XŸ]ûëãíÁØÔœ9X '}RÜ]!úë¹þžÂ@x„Ræ8}ÍUÉúå1 .#$&¦ðÁW­ç†©æåtÆzö4qÏUöº)ýüî?}æœA ÕŸ;“ œ^JnL¤ßáòR-ð,CXi3X·tSÖQ¼C{¨ïü2úÅÎU/Í„3¯cI.;·Àl1¼/^k9Óå—}†ìüÙ|èg½ÏýÍèõ×´¼êžNçã[2¡Îu—Ó ºA@Y3€nT0 ’-ÆgèH5Xõ´y7zÔ|‰gÜâÝ^Z· :ødôð±®ÇO=W¸!~ziïg·tW’/ŸùÇûý µ œÐvêY¡:SmÝ– ¶Ãy2&4gòÙ>(š=Å$K:9>£¾”!šZÐ\=L¾Ç“›õE¼æ[g.ºt5AU 6.¾M©‡÷Ž’qppppxÌg™]ÚÙ9"£÷]¡o4&f¹ƒ3BQ¢<à’&hª/¦"’lÈ.N_)R¾Æ`[¾+Q}f¤©Íw7U‡Î9;ÑZ ×͇&zïî ¶Ã^©ª‡EõFEnTMN@<ër¹<"‹L0lë!,s[ÉWò €¤ˆ‹¥N~'Lg¼1¯ñ_2¿ÙÔ¿§ýœ¹&næ:?Ã\\³bp¥6ù ½Þ¹u£fËÐÈÀ¨’ÚÌÌÈŒÒáõ`¬V¤ïM_ö鯔÷ù£ `›º ¡,)¾Î9?UÊ?S´ÚBòrEMÄ”<®›I·’þõ±6@°»gFó®­=ž2úüs­®ìÓ½ØÆ¢ B~ú´ûÓ·Åά\K`h#ÚHmd‘8tÔˆÙˆ«çˆ;p$t¼Ù×6óóáîŽPA¸´Ë&$Hd»]nްHKÓ¤ZAÒe °oLo쀯0woJGËãt=¯ÙÜbÿÕ ×ª©*]w'½uq>oÞ¢³Â ø–û›¦ó}^=.x\5`C4Öûçž_ˆÕ9ï¥f†i€Ù¨TÀl ä&GìÛº^œµúNAó;‚z2t{»~¦©ö˜gäæiŽMŽ oºa{Ûo¾vÝÒþÇCWïÝ“ªb>;^M^¹Ð¼VdÌÏ\_ÿhc-×E+W¡z7u6££ãEH“ C5ýD ŠJFýÄÎùÉ%ï÷Žû>¿#Û¿´JAÄáþŽQÆÁÁQ2ï•3ó̽76ºZìs'£84†ú”ÏdE¢ïÚ“—Uek®ºÎ¥k®J™•{ ʶµ\Öc|M¤TŽQ®ë_üéñN ˆ­M§‹-SA*,Øzälß]c4©ñ,-câ¡ÊRa‰¢hñ#–u57<„¡$½˜+Júê›°4D½Ç߸gÆÂweÞ² z,`°‘2–c%LÏ-¸ã>߃ӽw§fSžõNA²Áýlªå³}V㦠113m»&K¯"¯rõ¤1ë,\¸G¦.“n7²t 8¯¥Y†¡QÖ¬ñ¤ÒÉç_aã9™êœaÙåj½ÃÏV¯LpöíCÓ+'™‘Xñò#<­ÞÙ9:] Oàºf°íbxˆLDÙg^Ó>²mŽŸ3=åJÌð÷…;‹ëº Œ¶/•ynõñ¾ŠÁyËÞV®4ÜÍåá²»%ãjºÔUÞ ikÐì)þðLKO§J»ä‘Š=Kôáû²>oŸíXú'+?ÆÙ/úɨl{[`é‹а?0µõùÃæU[ì¸ÖTÀ²a¾j}øCª!The!„ ›\§í°× t¤¹TÃ&”zêmY½#j[þX‹¥i_»i&´.:CQ@à ¸[cÊ&ëp”ŒƒƒƒƒÃ{f,V<¬î»µñÀ“þûnªˆ¼Õ•R÷§—\퉴qçRàžJt6k$Kç ¯f… „+Hkm—QKŠX,„¶'2)¼À±>Õ—Ü×m/-u2æ4æ,Ù°AW”–T³d­Þ(ÍMQ”Èò ¶îe`Þðk{ožNÍÅúbjØwÉ­6,déæ¨î²•6s¶@„3THDZQgžœiýdûXH¸H}•ççÚoi^^ ‹ß_h»#2 ó9¶]PGÜ[;  -¼ü“…m¿ç>\'„µ„¥ËÄj63[UtÚCè’BzX³!¶ÒìÎÑq ÖPx^B‹ÔœêúèÖ¹•䲯t.0¡ŒuÕBÆÔÛÙ¨"x“Þü2ýÜiës·/a¶m:ô‹Þ[Zß"î:NûgòÁDHÊâhðÔIÑCª1\´Ž¯t»ø&l¦ôEÁÈrÉèOÏn¸å¦öµ4Êk,*L³<ƒ¦á >}<þo:çxS«”ƒBÖ×ÕÜÝIT¨Çz@Öú«'Ë|,ÃD/}Íõœõ±l¸=F™ëÒ’ÅÑ®ågÊÞöRgSAÜ8½ßÒ´ÖWŸîÂSæÒqcGRÿ´òd¹¿íoJ»ðÃímÜáYú?ì-û mCîÝv ¡‡6¤ÕÄ\1¸PFRCNˆ–Ȩ ö„Ý5I¥–òÖdwðõ]ÓˆÞb…Š:c¼ñÞÒX88ü®ñöJ¦³³sdd¤³s½×©ƒÃûœG}Ôù^8¼Ÿ™Zàîºl5¦_äí›·Ëß&|ÿmË"oÞ°­øàÁä§šð¦2ä£KøýEh‚U«…œœÉ1*ã>SKµøU—›Ò³fTÔ»z-ÊôƒYC¶Æ ’"Q¹R©Õê@Q´×ãòyÝ–&2Á²tĶw!Ù°ó22Öw¼S~1ùÚî±·î3`€lÍÝ[?«Ã³ÑÏ›?­µ<;æÁ¶5Ø–¿ [CÖ÷’kI´y)¾!¥_4 ‚bq‹F %r4ú¹X4Š‹0Ž@q¾íôS’§©¸ázßÑ߈úé^©¨»‚](Ï•—ìHËÓ¡k ¡LIýóÓ5)–{­ÜÚ¾Pkî9‘m==øÕ’Ÿss†$³.ΖbD„ËÆzCÕª­]>íþ;Ö[º.Z ÷éwTÝÕÁáw›·ÿbïÚµ }ôÑÿý“qpø×DggçÊ·ÃÁáýÉÂ2Õ;·ÑloR6„ƒ'Ã{ó"gîè’ž>¿cûüºQ¯]aAeA@Í©ÈÓ“‰¡xÝÏÙ¬lÙË“Ù`[¶y–!h†dÝ´|>‹ìº¬4*ÕdÈMš2f#’¥UªšE­nS6Q_2óØ¥xqºí†ÖšÀ¾Õ@̱,òòÚѲÆ<;Ú $.mzj®íÆ–(Ⱦ¼L_›\ ¡9³ÈÜ{]a:Ë)Џ=nJ Ñë+ªlØ)ž¨“âJƒn®&¹fŒF‘Gìb»ÃÈ'â DÄjJ–-òUññS¾{wÏE]Ñ’\Aúñ0Bëç6“ögæ]ö„'l|Ü=;¹äùû§[?yբȭu Ï3ÿöƒr®HïëY•1ùŠ•Ø;w®:ÝÉ:+\Vö¦UÏYÝçô~oa—o:•bª:å[|‡ ÎØGéa¢¡6T67Ušæšºà¦Ýê¹¾p¡’Yª¹žº«^¬{_šŒüáåYâ”@ëëØõʄ̅2lÛtòÓz“ƒæ0·PîvYµvÈVï²íz'S û¤¨ÛÈW„°O^9¢ÓÜr¬»äoöeg=3'!À˜ÈÍšEçD[vÏÝwe^-?K¶3 ºÍƒv”ݾ¿œH¦?³Gº¬žì„“ Þëö®, ’Tº!SOsacÞœ¶¹d“çDkoòÆlrÉ…}‡+ìàð»Í;zD±k×.gÇæààààp>Ã³ä¶ òùG¶öVŸ>=9l/t%ª3%÷ɹè`Kv­ƒ¤=—ˆX¡5‹¸k¿œîã]äD F Î' MLdK*M©l0iÐ40€%ÛT™ôBlÆ€¸ž]¦<¢—ÍôŠª‹šaåNm¼ÆšƒÔíwäg&ëìóË?Ûñú[ô‰A57OܽMŸ'" «ôÓɶpc°%KMöÉ÷f›ÌátW‡WZñ+{r¦õ¦¶éµ¦ñ<ˆ¼ÙUNMñUU€0_™’æĮ™e¬Ö,fåçš´µºÅ%±*’ŠÙ­#0Ú5]…—‹ÍùŠø7›¿ºw!¥F¥” '²‹h·¤d“ÿ\aYcþñXü?ãýõö+@àôÁö¶­Ÿ‹\ÙÕØÜ]˕؉2ó…æòô"|Ãñìo¦>wùr¾æÊTÝs5÷©º§Ùel‰–·„¯çÏyÓ±1æéÓ‰|E|k÷¼Â"bôzÃÒóÖhL‡·ÕéÕl"ooh³ž?"îÝvî<“U׿Dšnhåz0§Ðm±2¼ nÿ¼wƽ0!ûCP"<4IEHeQmšÅb‹9®dª­t%gpïäð)UYðìñ]ðñÖY>—êË¥úzº’ÊZž`¼©QË{)Ò0tÎã+Æ&9¬é–!UóE{]7ƒmÄÚ2¡cÊ™;÷D IDATË“ ‚U®n²u…õHÚF&×ËçuÏH#Â*ưêÖu1žŸk¿£ý’™—°š¡Ç¤ŸË€\™ÿëg“´»Ð« ‹l‘ ²oºáúXÏq8½”lkkQ4¹³’m¨Kûö¯Ø˜ß’d"T»Üù×ý— ÇêÔª A7ÑÊÏ5ÕºÍêˆk‹3vsXU‰QO=›¡ÿÛóM·tV1ƹ2eÍoVZ8öT=|J'{ØsÏûŸ>“$)²I;™ëØ·vpsg¹+Yÿþ~ÿÔ‚1œ­ë0Ÿe}.s:í:‹‚gFCQ¯ÕV¯HenuO\üö±úÎÎü#ÇbŸ»zêR+ !¯)U‘År@^ÈÓ‰Œ»g]Ÿm”žðô·Ó‘àªâ’Î6[‹ÀrÏÌlº®{ÕN!ÂeðËS°iè@emW’3Â$äk*¦x¬©Z)ÏJÈÇØ-n«b2yém\c~yÿiÿž«/Ma4™/gÁÆìòQι9 cŒ1ëtW¬xÅ|-ÕÑo ù4 ì›¶+‡Nðw]SkoRÚ›I¡ö¿zi”¶M¿‡Óžxûñ‡®ªþ_¿ |z¯úê‚;êUœ>ºèy[%Ãú„£;±þk8JÆÁÁÁÁá]35Ï|hÛE4‰À×”~y*ù»'V¿¦»ðÓ“ŸÙ~æ]œ§Õþù—´ ÏŽ W†éªm穸I°¬%!5©¦WVv±Š‹gë²­”æÜ<&µ²É¸z⌤¦ZMÒ…¨TÖO5-lîJïâx½ééJ2§1~B÷€æ!5lã¸Pi0FdÏÍ]£’ é­([ÀÞeì©Ô‰æ˜9÷Ÿðþñµéˆ5X¨ÅSÏJžu¥îf“74Ï@¾æ~h<ü—ûN¬5Õ%2è6 )Ê$ñ/^#®Âd«3zÄVXp¬ÄÉo„¾‹¦¤aŽÁjÍdá¨ožVycŒ_ Æ€qö±0±œ÷EþëãþVNÀˆ$€gxì2Gtê €cŸË€=õ—'Üg«t¿v|”{ø(Õ¥q¦„¹¯\5¹ÐFq)Â>©7,<ݳ1ûæV–bá ²Œ\!”e‰u´¾Šˆ¼}ÓvõÐ á®kª0[Šì‰”i³ÿ´åûlt5–i!Ï]ÓšeÓàYš­%Z@Ç̦ü ¦‰B©LÔd IC\®¾\6 d9ž\®(†yó k錥M¥‹ñÉÃÊFî(_8‹u놭:Öy¿–ì¢-LäçHŽ`b!ÖÅ•÷ŸüwÀpoÈAÄBLpS \G³ "ov$-´L¾<ÂN)þ])µ-¬þâEÿŸÞQzy2r]_áÔ¢¿9 =uÊ·¥“ßZv>í|ѽŒÞµã¤ƒÃï&Ž’qppppx×,dˆæøÅ·\mÑò{h²ew×\[¸-‡3Mâ‹P“ÈkÆÛâIÄC9b². aXDÊë^(‚z.6]pyççXŒ±®z®¦7xoç—ë²ÁPd0¨ÛÄ´îÌzÂ[üªk´j±³ª_69Ig1†¥º«¬°Çuo)ß{¥¿Û_Ç6nò7c§GüJŒhx‘4kG˜€á„;’æï½!'òæ¹I¿É&s¦B­a^:ºwà‚¨¡…,ÕÕ€åEŸ»ÀÔ%"´xRéàó'äþËŒãuÚÅJ^?á¶ëð6£ kkËï#WMLQ^_äˆþæZø|½A2f°í;/P×^ÚÅž€n¡lêÏ/æª{R1VJî`\k¸RC³¦wWSþÙ@DÔÒ6‰°…ºàí,´m.ç[šì=ù¨j)ZnÜ<áýBóªX¹¬?{TÿìµÚ§ÚŠŒ¿¼êòã± í±Ê©E¿‹7ûcÊÑqÿžÁ·ªÇJò¼—Õ"¼ã]æàà(‡÷ÀérÛ¦KÖ@쌖Ÿ›HN'7&ÓWwÌþb¼7橇Äj¥A¦¢oÿ0Y÷¦ ÌF˜¢˜ð7óê¡YÁß`9·]â¼á“µÖ6f<þ`­Ñ0L“%° –a4 r‰€˶™Rk’A»”»BÏÒÝ]Æô ±P3Ù>Hc­Å›€¢ê“–Å[âã8[uÆól[kOÍD¶zÔ²‰£#è6RQ}4KÄCèþ;Öï8£bíh69^}©ÜÓÙÄvŸ€éŒ,»-raþbl`Ç]—Õ®V[dí`–]c’†¸R”R?oÍ<¸:e673ÐD´ˆOXU2ANï Û½ùüõ³çz[z9+ x™¦þºÚs3 zG‹Üylyè†ßú­ðL.°“¶6Ø :šì±ç*æÚ?Øž »ß]9y‘36·Ö~%ðù›Ò€IÆvGYžÓ• Ô2LµˆØ1œ|[/)‘·wo–~qÐ{³r¶îÚ_œ-´A„=«+%©Ôd…²†`‚t4.T ²/´ÒdXöbQò†âœ¾¤Y ÖlO“(¼Qâ)Ì+ËŒ­…ÜXÑ®AƒÉ–9/cÊ~uŽ6ëþˆ¬èG£f›ÏÉH±ZLx ´é&o%MØÈÎéCG÷ìÍ(ž†àctÕo6bõÅfWÇ-Ô+zÊË‹ÀàUG!Û4´F ~P% HK·-µ4 `lš`óÐÒIÌ÷Aþ,Ñ‘ÆÚÖÏT}×ħVâyVôF[´¥/©Ý¹SÌJ<^.0öüßuMýÍ3iµdœÛõ¾°ÔygÓ O«ðwƒrãúZ™Ã3ä¶ ËùdUy|u¯°¿ÁÊ·xRïßn¼V§Ý[SLnå<‹ÔŠÁ~ªr¢‘ÜøFá’„žˆ’1ìé%O{âœðГ ðocf\jTä¼Ôµ½ÓÔþeéÿùüv:v[ÿüð9Ôk!š÷wD/“‰@âos×ÞL{¢âOLx»7‹ï´‘Oò:Å›sŠ·a¿ÓíG$ ¤ôç_÷.aF`´W ©Ë;–ÖZ³%áö~¹,&HÔ»É31)ûBâ,‚5—ŒpEå˜`7GØ Ö(½la”'›™Æ‚¡Ù$%ˆ.·‹ªaEÕE0 Ó&„{!´©Îz ƒ4^É7íi^µFF½ó§rW~(úÊC6I®|Ÿ<ÜúÙÀ¯Å‡þqäÚ¿h3-SÎ2ܲ;6ÙãžW&3_ýûПܬtu¹+õÈKbÐmì,¶­ËÕ¶ä_Ÿ‹-ÂÙ|¨3RŒºŒé´Øž¼d´ %°F“GÄ»¾#¿“8_‡wÇÔù¡+Í·î#0ÚåM™'çÚdƒkñå:üÊc¨“¼¥¿¸!Ž7·I+2þî…Ðξ’Àê»»ç›i¹ªÐ??ÝMûÜÏŒ^Da®Arœ‹ÖÜ´¢@Ç&ãààààðn™Ï Tüm” „Äêe‘Ò¯fú?Ú}l0¼ðR®+Cˆ•‹v^°[¦PÂËZŒ1Þ®ÖépŽo P¦^U@²é¹ÔÆxHƒ×72×Ä,•`Ó%nuˉm„­UW%S·Mø©”„ßÂ}Ir‡–4§·ù/ZáøêàUGF_)m › Bݪ,¨>òÜ´oÚ%?ð÷ºR'ÀÓjÎdƒ€_-µ¬erEz¹wí©®ëœ+’ûz Îím4 ÉðÝß@R {~‰,TQ¦h1Åæ-ÍdvV)Õå0·!`}E¸Å¨j^ñ¬dcóÐÚ20¿uÓKîöĪÕH6„jåÑÚ‘™HOÜL“af2-u%ß¼ -Ä¿,¹À“.È·Ñs„/Vš¶F$‘PÒª(©˜=Ï`C‡ó,õ¼êm•ýÖÎè’)nN4ÙÙ(””ÇãŒÊm—FrŠÍ-¯d‡ëj§€tiA¢`+ñ^ËLu>}.I6¹× Í×F–‚|þùYîÃ×^$ïs½‚“`}ª"À“Ï÷ìÆÅ*t´àŽ$é¨Td:<¥ÅúÌòG4nc»ŠÛ4*æH¯Ÿ.‡˜êos=Þ9pQ*'°pÖüƒ¢ŸCÉÀ´Òý¬?ÕÊî¾ÂµEßÉ—'vuý:äS{åµb8gª­cnGûj~°Ž” ›3Ì·.~øZ5ré¢@5ì›$Ú]Xï×NÑXíê÷dÒè•ÓL2ñ.H ²%¡®±U…-ëì°ê­*Û=ì6+±%°®á*_y¹cOhhùy_¶³/²ÿV” &$Hd»|~ÆÒ&éPqqµ˜mf”.É z\³ÀIK4Q¬3¡iq°Y§ñê½39þÓ£©›omˆ~W£äË¢Û|ÓÒnŒ!A ûBZó&Àxsð…Ç^¢>÷ úÈ>ôÅOäÊLNuM,¸%û³—ƒÚµlÒÁ nÚ´›bÍ2\¸$£µó¶Òxîlt„½”MnÂ|_–¨;Y˜Öp”ŒƒƒƒƒÃ» W@#i, ïHÉÀ¦Ð™ )Ö$.×óµã‘ž!ÏøJ“jó'Õ.1—±gsL’À˜5ëÃ̦&+Öx·2P^Ð@’Æ h!çb8«ân7@757 Íy¢9¦`MËzÝ6Lƒv Ö[%´]aÌJ±S%pé$ÛJ•-[­Š:ɰHeAõ%—W¦ªÚœls³Zø`£]ï5Oh’Õh„˜êº5YÅ[6™ëspü 9ТE‚±_ÍgˆTÜ"RÉFxûfü½GÎý(‹AA(GõÆ[)¿7qW—sä|†(V ?£û¢â†6uB—fh±-.$€È™ý íà‰àžÍEÐ)æùÃLOÇ9Éåsµ,¦ç#w=q¶ÿæÎ‘óçótn59,˜‚%r‹¡ÿÜŠ<ê×<.û…×ÙŽ&{¨u¯/)ç¬Çkmyä ç}PÉl$Ò<¿¬a~ùµó€žJ}õ>ëçÞìr…X±2Œ è‰ ‚$ú›-ŸËjJ}|eìl°·‰Õ‹Õ?PÏ­Ê­é%Ïm½«¾p†… KØì¶O–<ˆÐxµL ¨Î€I°³\¯‡lŽX ÀÊV÷äS˶ûüs@ÚšOM›41I÷úRÏweŽÒPgcÝÓz<"ªMs¯`Ñ]ñ61ŠÔÔ7dBÕÕ÷Rké;s®6û å«-ÅE”’TjrÑ}xR¼ëŠüÈ4{褘7hÓ4À\þí!»5‰£Ýžœ¸‰Ò$¯Yœ®S·jâ‹uíµúÖi—‡œ©F~6uY›ØØš_±È• †Çeâ>Êñ.spp”ŒƒƒƒƒÃ»¢Þ€{v¿S<¥ÞÞ_Ø`J’§VZ¶SeÓÏ#õh£KÂÌ&!g2Çœ…½P?K´wë"®Å †Rá¯QÖ¬É6ã"”â9–"s¾Æ§‚~;;=Ç÷h†³.´R–Ù ô·~x=o·Äéº,GxÛKÁŒ6P €jú¬„Äe:¼Vç„#ŽP| &³@µøç§b‹ua‰ñL+}~Robê1¶êcµÅÄGšF —Çß}ÔúÆ—.e¾°IOm4²ËÆwƒo| DFÒëVÄÕ<×±–’yÜÑbv´€brKÍ}Ÿn;ºœ§Ê3™'_cÎÌ—]‰º;‰ã#\2jní©|ÿÙðÖ^JäL†ÂSerÆäïÞ±äSsB±`$]XÇk©±àH¾çÆDf%9¤ ÞÍq¥ÐÚÔxó¤;RF,l=ù¢ðÏyWŽôEñ‚Á!šH5ÈäFXšaƒ!·5µP~ø(Ý$Góh-.'[UGçÕD~u•²Eæ›û½;{›{Î]}®À{Û «¢?ø¼÷òþU·«…"ïM ¸"ŠÔ‘çxU²VDð…ÏZžÕÜ k%0)[kQÆÏR}4‰ýú"ð¤rctx¦ùñØÐÇz¯t  ”oXþDy¹ÁD3ñ­›™ÆÈ¬¸£ö¼ìKzÿšÜu—ô}÷žk™g‹6IÀñatèX«¯¤Üõb8I¸ÏÿF¥åßÿÀó™kðçoZ±_ÿÓ_$úšäJì ÓÌ»ÁÌ[DÑ—å®+¯"§µÖvvve)nÚÖ™f÷nk „æÛ½¹™zôŸf†¶ûKíîìš5æbUXÞ8JÆÁÁÁÁá]0¿„R‰·)‘¾žR·yÓOúz#ƒâÔáZ‡eC/_ègà¥êFEtEíF…ð ZÇÖF‘Œðÿ±÷Þqv\õý÷÷L/·÷»}÷nÑ6I«j[–d¹7ÀM`ÀƒJB Ižîý½.ì6° ¥x†‹ÁaÁÀ•¡E×c?ËYšþ'ŸÁyn〆ÞQØ}€3”Ò›§à¿<ÐV‚Xþ»|#–Bá2Ýà3+žl,!orÊ2¸c59·ß:þîÇ ;]¨Í±±9æÈ00ù¥·¸p‹;DQ‰ƒ,¨èü¹ƒÿ{@èòb³ƒ”ë)É`ÎËþß®~{iðQuYFbFâ7œùB_È ƒ»ؽ¦åȨháRl0wˆqùÍbJÎ¥žyÕq]“vߥï<él®•yö}^AÂÿýe÷ç¯-Í‘[[VŽÇKNË„¶Ê‚3f|ãI¦£À)rN ™£QG5DÊ…vcÈåi˜Écµï<6~׎OZrL8«·Çh´d™a ¹Î•0uëÇç7lZr®ókéù×Çù­G±Ý^­öÏz›A×à”Rb®%úR…«wÂñ#ÊÝóOÄæý·[»ãÇ !ÓêÙ9w“œŒó¸¥”ß=ž5¾!óý3Õ¢Lëu=ü®·!i)kÚ‰æ¾×»ÉÛÂ^´vDñb· Ÿ ¯Û À’r›oªÞµ˜R<rÕ%‚Ni^­8Í+ X²±ùdz±±±±ù<ù¦ }›Ì•ì|—'Ÿ ÇÞHÄ¢x±Ñ]\’1#¥Ú<ídA‹@²Íº¸º‹Eš,pjÑ”0Ž× NŒ„¬©kBjÞÁ`¢£šÖ3%¦Z%]Ë}qSÁL­„\±Añø%&±¦:ÝêSE M×$æR9OÇèˆIÃQeƒZõ!Ÿu›ãsŽb†Æ©ó#Ä„æÁ¤â¯¼vó¶kjÊu'7¢Îb½îsçJfèÝlU~K×l÷Ês–‡k`’«ZF9Ÿ5GÊI‘ AØiØ-ÞwS黿—ûÇóoNr' khÑØ¿yÜóSŦ=>=½H×|¢cø×cádÁy¦Ø¼Ï[Îk\°A}åÅöVì—ýüwÏ6€eÝá?ÓÈNZ8eø,Š—æÇÒó©g^uÀ}7– â5.½¯Kyé”ûó×–šj¤ùÜšÍÉhÁ¹/œaXk¸Tmòÿëñ¦#¹vóÚsWg+a*jMëº&)rÁÕ~÷üÔ†— @n@s}¥p ÊÞ8RîÏl ¤~v.–Ì;¢zªJ™wo.2\;9bY('GëxñT©ËȉÿÒÓ¸+2ž ÕžÕ÷ûêè¼ó_¿bÜw» XÉú.JÉο$¾ãÙsUí™?¸5uì<™H•o$ìS®®TÞre®K²Ì³F*mì Üä¿èÀäGc?ß”Í^S¹>ã‚"K€“S-·ºf.w¡0¾P‹¥ŽåUÄ,쬌¶kh“µˆ)æß^$@#¹š¼Éx.´‰ù|èñþ÷ß“rýg~P•º¨>}óɇº^[ $â±s­qsûÕ‡*êõDdKsþ̃ן|$<«ûxíýüÞÍë+%‹Î˜×H‰žDÑmÖ5¾ô‚‚cÁªíééÿ5~Í÷'¯yi±ã¥DÇ…B5 hÇf½¸2§:ßwIml> ØÞe66666WŠÓaÅS ˆèÊÅL_²æåÅŠ[£ñªÄpSµ>k6ùðü&|¤Ûh«L=WOM^ÚË"HÝ*oñIKÅ^UK¤&¨Œ‡O .73…,Î{ÜV&A4˜%ù¸Ì2T`Œ¼!KY‚¼´ ‰£ÛÓæGÓïŸKZÅÈ1¬Ö@õŽ´Øî8zaÇ™ØÎŠ Ü»+q¼ßjõ »ßÙ÷?“]·G¦XB®ãŠcÅðt_ÿýKÍç=?>ZÑ*íØ”[Ž)–Àë#Ÿ|jþÛ×|Z÷{ X‚Ð%EÆEG³ÛŸ¾˜v–KT†ù©ÙhG =”>1¾£kš£MX•ã ì“çd£5¬vµçºû™G^à¿EO5þrÌí6ÛÛù IcÅø°²¨RÁ5§ç)Ž^S>6M¾ø6u`¿÷±‹AVûRsKÊÌÕÄÿ<Ï|ü+›œÒ"Ÿ\Ê:ÿõãì×ïVb5+Sñ»Œb Bþ÷Zç§ßtÜ·’«z>Ï¥çÕÅhW7»ÁbÛBÚ¹89>WmÚ³ï5:Â×&ŒRŽõE“T´€Ë¥Äª@=©ëðj²ã¦ÀE dp`z­+‘f˜DG7° IDAT??¼ãêXakS9év£0"0]lÿ"WÕìüéOó65ýó—¤XaŽT¥ô »=ázðê" D©‘‹ŽR&íŽ:Ôl'¹¥só£‡=¿Q/)TNeXyj®-â(­Rs2…0TɪŽ<³@¹iÕE+nÞü„wŽ'•ãÈ…i™¤¡©õMÅ­-¥´ì9;Yé ŒÇù`Ö 3ªw]¶ ›!¶’±±±±±¹RŠ%ýè9ò޽Öê­ê†¤Jî'났ö¥–Ž”4Ïbz 9:Œb)=)2 ¹ŸÜ¸3NJÙ /&Hw@)À`ä&\Ê/ •eŒÌ&_œ‰bݨ‡ôè* ?¡úaµ'è Î3(s!eMò®uH3] ›&\È Ýòâr5_4i¬½røß‚'³Ltž«P,¦z{ -’·zμ“l9à›[J0µÙ7ýƒÑ®9ÜË3…-¾dc”™æ}É×V%¶7È!¿1=g>wdñþ(\£³<.«°A˜= MOø\á–e{GÊ ¡lµ» ¯ û7 _ÖK )ªº™9‘tµÉ×y‡^¿ñ¸·«M¡An€¹^½‘å 5,×MÚ"Ù"ŸîËsÞ³3´Æµllšü÷ÃŽ®í•gÐM“G4D³mõF¾ÿPß«T›"^ „V…×DÔP­4T+‚„ÎÏ»ãÊ`!ŠáZ÷èùBu‹ãÒ~66.l%cccccs¥8(C¶wXûÛ©-µåȘ)"†!«Iì%-X¸m¯úGÿÅÜÐnþþ'79ròV:wÙP™“cÞ¶ÎçrM›¨Ôµž1•$l0é^݆tr×V¦~=èùô&€‘¸;æÒÃ.ý¦öôLŠÍ$¼5Cå „Y€ÐÚ ²€¦¨wj›‚‚‡Ó¢>qµJ¤<äaú㮄swãÜ*µ%¥žá9Vûß›ÎNpÕ2F~óyÿ^7»%j&òÜ ©_‹_}sÓÉÑú=«çI¹©Ê‰>o17꿦H¹²|UDŽÏDš†ßÆ;cFNFa¿ ŽD– y×ù\JW›ùæ)¸ïžµªCÄ!\å5 •ÅåœJ¿ß66¿ùØJÆÆÆÆÆæƒ€–"˜Í®MˆÇ^]Ý"om̈ 5ºà;=ëÙU“ÿhõȺN’ÎèÍ 2°xºD…õ‰vX…€6_tÔй5YËLœ²Äüê¾¥ˆY¼Ú¯ ’ÚF^J–E䦅`+¥ OÈBÖ®ñEª”|²’.¼n7{ÒNŽœM ‚ŽLw7Ô¤³¥€œ–®¹” ԊƜĆbFÉvÃ@-øÅ_§_J6›SÿÉ Na:¬Ds”2ntÔßsy\ Çp}áV­sOôБù‡?·^ÌðœOoh»°À4å\2 ªñl‘ó€›VÆSÜæ€Æhî±£×\k9¸!ƒ áß|Þÿ—¿eæSêô"uë¹c ÷k ]mjs=âZ”Éék*¤>sS#­²ÉɧÏz¼) £g³/Ñ3êyôcr¿ÿI @Åb’(¼ˆüõÆœÏ*çsDtøM¢5bÅSï™dÙÚ@ÉäMÏ@1êhãk‰Ôú­•u`ÍëšµDšX.**!ÚP[åä\S§òñnïŸÜÿywÔÉéû;ËÞƒw_‚L 2yNo:Óoìõ$±¡âóFdDFÃ)B˜·Á¥¶Eäê€ìuÃöN2±Pá-=;ÝÙhª­þ$|dšýŸcüïlÏ5RÙ?ÜŸ§¢´‹°Rsä×çÅdšy«Ÿ¾kK.Öª&Šu¦"›kWÜ‹œGt×r¥Y§”+²ž h‡ƒÚ=[…‹ÓÎË@¿¶=÷ìIÿ—o[#}7$‚Wÿ×Ü· …‚âyúºzõt®òê`š%d¡¤eŸ¹Ò÷ÖÆæ7[ÉØØØØØ|¶ôÕ¶6ç›j„ÇÞ¬šÌ8µ»®ðÛ{/í1]ˆür±^Ȧ}®Ô;ÐøùúÁÓ¥\ÊÙ,¬GuD©Òür{“t eb™-a§RZžT×§~Ð ¤+D)!»«øä€©kÅÅépE¥#R¥RrKtEAÊî* xÂдbÑ¥–‚úнuÑqº5äJ³Õfƒ/•®§w¨o3%aÆßYdÜ ˆsÈ \áÕ¹†O6ëäþû×Ôoÿåw5ËHjΟýl¾»×ìê¼¢ ¢<«Ï§ ]×4Ëð3ÄÒD=¥ãåV<£…y¥”#hd/öýÙ]™Ê KÖµt‰ìj)9Þ\®ªYшòÐléGáK_“zãìöJaO ýé}6I=qåïº=Mn©Îþþ'˦ƒ¼é9e´µsÛa¥æ ¢=GîÝjÜw«Ö݇9¸zƒJ äØY˜mllll®žƒxfÅ’ ÈÄȬ{¼Húx 0äâÖ§5æå©Ž·“û˜wrñ¹©ÊÏ7-Ù(SñÈó%o££8…(hˆ*-ª´Fñ² K“–=Å“Q½EÊ_&ͺQ> µqT³ˆ×¤Èê,]E*¹¤§E'FŠ6:TÇ¢–˜,‰79¥³`å“ñü,'Æ×û³] ášquxT¥¶œ-éÌÙ¢Ÿ©1þaâžI¦³:u¡65à”ó‚`U`KhvpRþêÿDÇãô?}¾ÐÕ¦òœUÂ]²xó6òØS×X*xúç6´lX–¡%RXß`– GBxZµŒÐ’ÌÄÁzöhB>…%1÷vŸó4….Ë´¯L› Ôø®-Ú—¿T™OŠ#CùS3UÙ¼ÕâW †¢=¸+eJâß’@6ÙÓÒæµq7Þ_Vâ‹)ôGß#ï¿Eëj7 ¹ÞHç ûâe X¨ˆ™G5§ÑV°èÓz&nôN.§(XMEH-lq'¦–J&ãÂó-||¼@TE {4±è]×7¢Ïù½0­…¤@µ;>Ê3zÈ+5T÷oIîÛV8xûݯ¡¿»7þ§·/Þº5˜ªæ³ò?|+¨Ì÷~gá–Ýê¡SØß}™<°Eš#*@°yF$È¿¸/·µ¥äP å„X^y`פ›U;^Õ3ê[ºz‰ñEòJšÖxòmßœŠX9žÕÿø†Ü³'ý‚Lܲ=ybÔ)È%ÂÇi ˆ ˆÐÝk=ý+ó‹«ýèIãÜEÓ˜ž5 »G‡+`r‚(cóaÇ¶ÉØØØØØ\1л5ùzF<ñ|fgñ¯ï˜äm‡Bý¬§i—ÊtV–ÝfR‚ûÑÑM·UÌßœN¤ñws-V:z,˜(‘€ˆÀ÷ïC ¨%9k]ÕQûÍW©Z§Žì®*84ÚˆÈϨ8OU ä2Ò[B>ZT];+Ó¢´†Y”œ)9«%I6µ"âÆã1 ÎÏ‹qËrPåã5“ÄXü×—¿^ä9ÃpF…Œ83¨Òo{ñ×ßJ[ºö&†Ý=ÙQ§Í`¡Æ€q¬-ɘQ©®[©ÜÎÍ5¬M–=6…ÃÿæA-x·’=·í7^|«ŒÀòÁåSu{*‡™ n‚OÏ\kž€ñ9ª6NÁsæB¦:”&ÿæ§\kÈøý?ô&ß™€›öû sß}XDtú<ÖsA¹óeŽëÂÔâßV%ƒ}§Ð„að×9[Êß}ëÁºG_7Ožƒý»Ì'^DÝW¾£*¤¢5ÍZD»ôòÊ ñ¯zþì£)¸ ÏâT.\+ÑÁYåÍŒÁFŠ‚ha8vÏ.O2³ÀQ`̱ŒóÙ7óyüÞÂß•1h*ÉRšªR|y¶Œö™ #ÓÜ£/û®Ù$8cõ Fž×²‡Þ"ï¿YU˜@™«õä§|NU/ýäx•¶8Ó7]˜5+Âqi{·¢ƒ—¯‘:6Mu6Xiš2EÀ0`ðòã¨âò‹¢ËV26flï2›+E‰á÷)¯^].ì#×;å|Z“Dà9k×co—ù¯ÏZ¥é…oåk_N¶Ç˜äµî ëdÌ3/¢±iôðëeÌ¡ì݇€‰Ó%g]ÖÕ„Ô–zG^8#ϯDÆ¿tÚû¹kŠ!ŸòžËo,‹…ÝZ6m¸fñÛ¯û®mË@{pÚO©KKzSûÜéY¨P«{úQÑéÂæ³|ºi»kf0Á4dé¨73€o$cIóþE„6wà+J¹˜c÷¿} •úWîÍ!œ¬®L•DšŠ3€a€­HPžÑ·6¼%36‹ÿýÏ+ÒV˜Äô‡¶-„¦ ©‹ÄÅ)¾†,žKR³“éÖ`±ª!ô/±d¤~Û>ñ„{åõ[‘:|ŠmkÔMÕªâÕråBl¡'ýþ¯±Ío0¶’±±±±±¹"z˜§^ç,]ÿ½»“—Ûƒ^˜­xmÊý‘êyÚAüz¾S2˜dŽ?5áúX×øÎNùâ䎖®ê…”Ëã-¥ÂŒ;ˆUÛÍQéÕÓ šL¤ 0. «X{ÄÍ`EOåDÀ”59Ë}¸Ú7£)¥\iaZLL#S¥})Ð*°*bÖ”ÃÃFccÅ…KÏ.dªåS¢Æ,îS‘:¯ðÛ{]x† 2󾆱škYFþùH[fDÔ˜88«ìŸÖÕj¦‹tE›\ñÅŠÕ@¡´~S+ˆxÄ¿r0%a¬‡£T‰gõù Ö=ÀüÙSá™9Táþò`þ{_-ýéo ²$Ý{CáwïXtàÓ;nWö5ècª;VÍ™‰bˆDæ×Ç~Ü»å'}[OÌÆ.d›JÈC±âÞ,€»"g*ÙùµÓ€g^D~Üwû{¥)kî ßpÿ¦Û@˜j wÑ)ÍeåWÏš}CåÇ”ÈÐ y|kóû„*ŪŒéy\²hÝ€’A?yÖsW‡°œ¼x_ÕØùl`*æhuwuþìdduß b§ðcñŸëø¼ tE¡7׿´‚hu÷OüJÿÛƒ–N&oÝ•QÓùºy¬ŸûÇÏå»Z%ˆ'˜°oEÎñ «8 lý&ŠgÛö{:•£ƒ•ÅìŒN}éñ=‹@R§=>ý«[Sv¶äAÎç—q~Ê ïÉðõY!¿>'Fuâ+wÁ‘ò¼L¦DÏ{`cóŒ­dlllll®ËÚ4iƒßQ¡^8ßøÎœ÷v÷uVÌ}´º¯Š+¼’îxd áî­sÀ³fGþÆé ¾ä+¥œ.\®T,4±…Õ;ÎæéåÀ]Ó)i¤Ã)¬ÄEК¤­ª•i°>Dqe~¬0-dèš`ÑaiºÕ¿(T—oBW|ì¸ÈpŒhÉ8Z’æš­°Ëëwz|jrÚR6®N¿l‘4æd¼é¹±ÖZ°Õ[r1kªª$3ïo˜mÙb Òæñ×·.œ§¬ò^<2ç³Äm×c‡Þ¸l­•wA­¬yÉÀuMké‘iv(‰=ò¢ëíX¦$äÝ´ò@a¨ ¸â“ÅM{9Z½eGêŸ>…Ÿ?—’³÷l™YÌäþ¿Ýg¶ ÞÛË‘òÝõýo-VJÓÎdd*YX‘ .Õ1 òo³WszñªîG/?‘4ô¤Žâ£a„cš,ð¬ñw_Ôû'H“²–B›¼„z®@ó««… ¢a€6øÀ³¦‹ÓNL°Eó˜åÿã³Å‡Ëèê°*«ÑœH¶Wfy ãíæÍó§f<~·õöëæ6¨Œ¹D߬5¾Àïí’@–L‚FArEr¤Üî(-–ÞG ÙØüc+›+¢"¤¦ðÁ.ˆë;’yÇ7ßh®ó–ÚÝÇQ °„\EÏ%û“­t‘ -5ÛÙ)_œ"7¼TÈ“˜…m*¶<þVãÓ³ä»[ÿ¤ÆòfI%xR]Ùe[XFyo­“NÉU…i^Z` a‘©Ó5Ý007¡ÈR:«RuUž+]1ƒ§Çù̇KŒÄÓ¨ÑÀ•Q–eÓ³ãúeÒ¤eON§ln0_û˹v­|zSwGx檚…#ÓÈåÁµ*­”J2™ÆªÎ|–OζŽ,ŽÏZQŸµ¢:›àÈ[e+GeÄ›^¹¢HZ“2îÌdÇÈ·ØŸzm‡Ž‘Ôµ¡Ds½zYR–ªé&¸¦ú‹ÕÍàá¶Zá³5=SREÅŽR8RÖó‰Édëu›69J>uÛfzïvøÑÓ°l,J¤¬?ü?æ7~º:6X ‚ ÝÁˆ+\ƒe,ŒZÉ LÌÜ~{âWV÷ExâuÿìþëñÛo G'Íï<ëi¯Rßϯ¬ÌÀÓ.+wúLñáë3ëβ¤¼'<÷ÜDG«›+²'&ÖhQ޵jêé`zÂM.rÉñu}—L1÷ßItuâª#ªcÂáp¸&“Ò^§Ÿ}Ý 3 ßGZÖ¨Y’@*"H¤©øúÚ”‚ϼˆ:†½u$5§Š®Ð“ßú >6‰@3a0å {Xàhõ]“ ð/nlL$-Üá„B>u2¬vhnJ]×fGxvª`+›/¶’±±±±±¹"xÎ  Xãþt~"ô\OôkWMn®Yã…õÒ)ïŽÊÜWBpLÙ¡X ÏšQ¯96³AmrM×Ó9YY ´Aa,¢@Ô˜Yn£Nê¢Jñ”²Z`XK…Û ŒN»YÜ2’à‘çD+éøN½'-ùJ²8!„.½42T&?íÏ xÌt¥×ÚTÉ.¨îcÃï•çB±:À«¯¤;ÀÇëζùËâ#è,Y-Ur/%6XÝ%è*0ó{Öíkn£TaS߯"‹#û¶«ÝÃÔ®.,•…Dò²–„Àï6@‰£ç¾œxœÒþášc×v(?éµúÓ`YŸôò×}ÊT–” 3Û+zPáÄ’éÂ7n^D†Ù7½2·±)ôí—øÖ­.B¹©²·Å••«»:ࡃp®ÏêîµÆ&­'YûEZ‘A¸ß㪭©UTºž›SsIK/oµyÿÿKxø³ ÜãÆxmïrö¦Ûª/连µ®o32 a>EûäÒr’±ÕÔº·øR'ãMaW 0HðnÚhè ë•7Lf5ÞÏçËöœDÒüÖ#j.o=ü9*ÄTÒU`Âb"»””ÏŠü∫QÿòÅ#ƒðÝçƒ 9GU`ŵŒCÅY„¯ó.뾈¾þ-«±þ-Q„®{ÂØnÎõ£oýO¤ÐTžHˆ^¿Ç­6ú“$Kž˜çzF×ç’€¢„ËÙÕ$À\Þé#”¸êô­-áÊ‘rJÞøë€Í‡[ÉØØØØ5ýT IDATØ\¿¿A)’Fðæê9ÜÀÓKÇ S ËS”ª¸­lÚmΩaÅW$ƒ^3” s¾O§Ä¤¨Zá@¶uPjJKk‚‹™PëR¤«’)|,t¦Å=µnœ«ªçÕ¦³à\[ê£`y‚íþá9õT&6]½u¼éF¾0¿kèW{ÑŒ ‘Û:Л§-XªØsé>aý‹Î¯?{ìHÄÍë¿wçüÖæ|ùNk"ë¿Æ¿˜J ûv™ª…Sï&Kàõ|É¢\ñÉbË^p&e)¢¤\U1ùbOøÉ×Êbrl}ûe>v ³’-ì@Íe zi&·ÀƦ¬zÜ|è ¶:$ÄQÀÅÔE}f<>Ÿž,e×Oú™—ÈŠ ö‰}Æ‘ãzïÞÜ`@ϸûþ˜'^ÐÖÒ¹±*³:7vè-j{u¹6 îD^¥'Šá«ë^¨‘ öh¡=€®"/§U*‘&RÛ£ga•)æÀµe¥š`j¹qLWŽ‘ _Ðèdª!¿þwnjÏÌ;Á\ Äâq]Àx·Þõ.Dxæ;ÿú°ÕÕaͰw%`Ü©’\»?sðvóŽ½æ‡±'N£_^àN˲ðêpð–Ú<ãf~rƽ”–zÍc'X‚å–$Üp–÷;µ¬I/'.[‚£?©¤Jî+YO›ßåH n•bÆšö¥6ïÚæØ;ûL›€Õ¡ÿKˆ2u´¯â?OVD=æ7>:ýåÛf·6–?É1®(r7û'_9U B°Ð»&J-©@°©¸¨€ VJ Vµ•Hé\´F0ƒcShl}ûe®é@ç§jÚ|å‡È²TÒ²xü> ZH”'æ¡¡Ñ‹j<$XÖÈL2+iúúr¨‚„žy™ö»­ûn3vua½#æÀ"ÁsÐ3ì€Wi{wâ?úÙz/© ÑÜÁ'ßÄçqG¥ï²íYRÞW9z>@8âµGÆ6ïâÇèI–”71…XæÊp¤˜9ÿô²)f©ï4ÓÊ«YZ/BC˜+øô¯Šm±òµbµÆžp>K¾Üíì}WÐb`8†/å.ë¾_ÿˆÕÂß±–zÏWÑ ŽB$f9@‰ÕYÝkì(œˆÇN Þ`øÂL´5$ïm™>¸)å »Ÿu&2kÌ•ç§ý_¹®üªO—ˆäY¸l™ZWi(é¿’õ´±ùÍÃV266666W Ï€ßmýü<7>O|fÿ\C4¿®M"…½u¿÷†õ™©(7.(vÝX1knàå%ánFÒ’^PѬVå¶$?¬ÿÒ_ÂxÚRTÊí(®È¤"^+ã¼—¨üš‡)3zn”¬­òý­Þ™þfŠˆ­™2ëA×Ѭ¥½rC˜ŠW™­cæTMH)†+z˜®sÙH Ÿ Tµšß ›Ù2»*âÞÆÊuug[ ¹KTòʼnºòí8|Ýõ×½™>Ðóëü/Äž4ÏXV"KŸ ÿàXóã'k=œöéÍÉú È¯Í%Ð3溧c‡çœeêûv¨ˆ$å<P¦ ªÎÁ7 uP(CÂt}ÁrE|ÒÞ륳žo¿Ì]s˦û«ü̇¥J¶TÊßøÓyüKÃGú¥´¹¤ £§$K«©âÆ.‚„þø|×&ãÀÕ:ðºã¾-lŒMažpÞ²+]›‰½;ñ#Ç/æ¾Ì¬D$í¯è÷*™²0óê\ƒêt2EÑK–wÿ;#sqËuì¬~z˜:5Þv[çÔ²)2XX3W™€¢D"„t@‡O+!ÿŠ6[(zkébï`úǧ\=£>àH$X4˜•“Èg™cSæ¿~uMѱ®¡JÁ¢L‚Ê!—W€ç ©R&X:.\U*«-¡E謌ßÛ’Z ½Ou-"ÊäÛóœ¥æ`"p¸p ƒÕ‰Ë–ið'‡³ëí966l%cccccs¥ð¬±?¦=ßË~¯8Ÿ¶ÀZoCH¤Ð_=J|üiÃî¤%Ô™Mæ@û—ÂG×ÕM˜*$4fL‹6˜3 ú̺6*¢HMË\Š˲X^Fg ëW*S½TW6A²xVó‡ËÉLqT³ÔÆÔ&*%ø¬´ÿi)NI†ÈbÄÃAtA ð”~a*’Ì;.m¿G)µ$Á·´¼A¹±Ï×4¦†§¥·§ÊjŠgg ±Ó‘;wÞW}ÌþÌu®ô¿­€vM~ẑ-õI@h)èF°Dïî#Ÿ}Ýù¿=¾¢*öo÷¦– º‰Ó†êT‹yÌïŠO7퀰‘Lil¥46CD€c4#¿8iú®º¡ùãug×ɨu,ö•‚ï®u]Séë÷äg'ÍÑ"=’'ròeÃiâOþÛõ×H±Ú10³@F½Æ¼êk¤S§ÏHc“47®¤2{ú†J¦"+E™%ä÷h&iÌP!ˆ0¨$ ;Ò[õKÇ-M®õ'•\ÞŠÜßÄ%'–»ÁÓoÕ‡õxùß! ]Ìܽ¢¯\NÇh‚½eséwnQ•dýç+uN.9•É ~ô ˆÕ¢ûîÀVÛßÆã®»7—g«Z˜dQ8C³D9£KÊ$CuuXà G0D ÎÝA!H]UgÍSž7Þ)¿WgÆ‚j6 !˜Íñ4ƒeMzuâ²e8J Òj²èºô”Ío<¶’±±±±±ùÄ¢Z“Ïhª÷´Jïô¯Iš$ˆð—?´þæA-x¯z#„©Ð‰ñžqÎ · bE?”0'§ iøM_ƒy‘ÒŨ–XÝWÁ)Í"Mq¹(Àä”*Íáa„¡­q¼ñ«еIäÌ|@ϖذ¤|c0ŽgJÓF°`y"V¶ÊJN©žEm3r¦<í­'Ôþˆ9]Y˜¬e„ê ±®})Ýôã“ãñ ¶) §Ï&ª–ÌkѼqò©7U$_Ÿs¥7𬱧UîIÊ»ÿÓøêè§óÈãíOìŒLr´ ‚DŒÇɱYâ™_»ù¥ãͳ4¤ÌàŸÜ0wómú¬¹®~xåÚš `e‚®/¹–ùµ,ÒT_avŽªS¹TæLšïˆÑÊↈ%d¡xUy“9õ¥ý³,cžÎø_8GLl\½q‰±ú©×ù¿ú”°”z™‹Sdc#w] fŠ…ÞQ8×k~ëõô9£±;öŽ16qIu w™Xt&Æó…0¾±0^"%¸¿Û¿¥’-|¬¦?¯Ò…ä‹îî‹ÖŸG4$ùÖ½>Àf5Þ·÷?¦Wo6VYÅåE a¨ç¼ºìZn¯ÿÜöÍ ÖõMÒèhþšÆn2A=ó+STÉý×c]ë×äü”«µfÅÅ1«‘,MŠ@W1esJ»K81Û˜p(ÌìÜW ?z††•õ͵ÜkÉHw? /Ž»Õ\nI# %Ø6¯ˆ.¿üµžâÂ奵Ío0¶’±±±±±ùT•‘4þè«Á¦)]"W‡)Ÿ>§bŸ ¼0·“gû³™y ÕðÞrJ¬rrfâFx 6žD>04’pêkr ”d.= ƒFgfH5ëâë..MÌÒõ†‰Àg$Çe… Þ˜/ 0׬Ìñ¦0•%k½5Ñ=Ô¢¸«ÜÂTE¡—1ÊtÃ¥àVÏL;ôîgÎ_WŸñwøOh?={ãœ/‘Y3ˆ˜Ìg j9[@¯TYE¬H²-ùÜÄâ¡ÑZUºîúy™jh3»Z¿ÙwÇø´¿¶ûWU#ï¼rØõè«ù,ò;õ}[¥¯|¼pßÍ┽ª¡ôˆðø+~r:¥òŽ\³hJ“BªDºýG%_(,L‚$‚i¤)_"_ÿ¤jï½)t°ud Á%óë½’(Sª‹_uý4Œæ2áG/4,XNžƒ¥º7ëŠÌ,säŒëðiî+ó«]³–Êžò\ÛQxè~rï|>…î¿“¬©B£“V_;ôº~91s®¾v{1Vc¹Jëî2½ñÊC£µ6¶¦YRÞW1ZÐS•í ïÿ9~Csã½½¤ ¢Tl{pü,¼#wš&¸PyÑtŒÎó¾z‡~d_ž?ÉrFõg1ŽVyn;`¨¦äÄ‹ç+“ †1‚Á/Ò‰E>ä]‘^‚Ž4 JÀ±dyÇ…08žòí®š7•mäÛ÷Ô<«7yµöjõAÏ­»²‡Ïº©{ÎÁ“ÇðoÿŒÝ0Ïò:ön)=ñ‚"%¦œGeE”$p (Ò’e‹Óýa|!»“D”R‹ÕùÁÕ3Ž0©I!sNíäBê`ë]übR³ÈáPu”%O£)¨TáHÙK(éQÕ¡ݰ®#NŽH é‹¥$Ÿ WÙyf…à§s@ƒ\¦nâÏßXßÔÁ¥jŸiüγÞîb¼|M0~.S®Å™Öh±’¥€gÍ/ïMŽÎËzÇÓC›¼.ØS%Upé¼€Ïæ¼' ÷ó]¿rw|Ì[ìUÃ.HÜÔ… (S->!¯SsóO«gœ¨\6ÛÍo*¶’±±±±±ùð¬1”Æv¶æ3%bdÖ±g“øòßÒ©®Ü2Û÷èÓ Ôw_ˆ=Læ¸Ëò©±@©ù9Y"¡À6rÆÔÚ¬ì”!½"æ"•Bmvh¹£B0é$•Lm~†æpÜ.‰ÖpfpÁQgh&–«¡` Ê,ªvjÅÏrG–Ù§½E^ŠŸ’À++¢Áh¥!Kêüˆëë0Ž”‚[l%cccccóÁØS»egúÄ(ïrÐ3â€Xºi+æäô;‹Þœróæñ‘àßj¹0[±á8{7—Ž]p꺖ÎΧ˜ºbÍ!5Ð@–wê FM;ÁÐy!á”WvÃÎBg˜¢ÕÅåèÿ%¢™qôiX 坿UlÞÈËíùáêl_ÖíIŠdQ$7Ñ3ob$QSôÈ¢°03)åÖ§~€Y!¾ËdÐbÜÎ }Ìß{CC)º¥FÚÜ%ù#ƒCÚÕ¹ñRø\©²šJÀt1rj¡ù?‡¶üb4à•ò&¢³3¹çÎ KU~k{£¨ï}µôð§ÕX-T¶„¨4›¨i}­öS¢@7{‚8¾pOW¹–ÎØ ñ£ßPIf1²9<{Tœ%e(¥°Ì‚ÛÈ…Å´xäuÏ+Sžkïèødýèêø~J—?æ9}þ¸Y4Çü]ýÁ]ó\ùI±¸ì!ÕÃãîH`es¿äcvìlÙÇL‰?{&‹ª×mßxY™x¾Ïõ˜=Ãîža×ø,7>Ë&2àô¶Núx7Þ} k3ñå{ˆ\^?x'öÐÇ1 =ù =œÃƒ¹©DÊʺ;ê©Äª=|2Ç}ã•Ø]sÛªgºûé?þÝ­<üi5Vk@{`ºÓ#,êôÿeï½£ì*Ï{ÿçݽœ^çœ3½÷Ѩw!$À€MÇØÄàØNLœåäÞüRoû—•ä&qîµs“8 .`Ç€)¦IõiFšMo§÷¾ûûûc†QaÀÆkýþ¸xhiÎÙçÝïy÷Öš÷»Ÿçù>óY4{Ê…*ÝÛ„Ï_¶¼Dßð`êµ5s3ˆµAi>!1AKý;_Vp©š6‘äfs>©À7þ€ºï£”Ë#Z¬°g#§´w+<ñ2ù•Oi"§mhMo€tEf†–CßhwUÚ]I7e×+ò:$2¬Ï%/¨nW.ž’·²qYRðêV^&ÙYï¶æå£µá3ã- £8_`?uógöt”‹T9®klм‘³w¬ü]ÓVÑ5°ÉæÄe‘ùžïËèÒ&ærÂ}cËÌ­.ºÆ"Hª<—K¿Ï—=“«Ýç™~ÿáˆj 7Oæãɰ£§Û6” Y#%R³QÅï&ÛäŠV-išRÒ*R¢Tn+†QIùÚ&óú6¼¯'²¼ÏYµY‰Å( p%2^u»Z;NN ì÷œö_x¡ÐПlì9?% v¬æ•D—·’µ3`B!ªe šµÞÇšö±WwÖmi8¸ßv pvm@k9ëÌ/‰ÕDÎÙò,ùéW'½_M^÷uÚ„ä3bå]¹dÜ~:ô†±w—ø·‡|òÑ¸Ï¹Ž«Øùiç‰)a*K!„]–Õã NHŒ1` èÑ£Á]^c,jè¥B:âÜv<‘foh/™¤Ï_B$7ÝéVñ•†9p~ÚubÖö…MË/—æÄ]}Ê¿üÞõÊöÔL§åîc‘`£3pW~|Üù¹‰ÿ}¶k›šåcɦ²Í iðë:Œ<‚P£óÊÇóšxæpz¹êtÈ_yèŠê@ §`c°Goo6,6K9ŸÛBOŒ¶}¢J`äãsM75\oJ¾B¡,y¼¾å°¶»)½˜(ŒU®iÏÊË©×T }651Ÿöv¸ËË#Ë.W(èDÑØí-yë—]¹4¬/Óïs€‰É‡3&cbbbbòÁh (‘$ÍÁÒŽ¶òÓ§|· äŸ>éŸ=hfáJ%´À*»[æîï¼´†2uÏD7O•%ƒ‘×Û¤c£6(ºt®äëe§š Qƒ¯<5/rö„³‡®fê—/Tuî¹Tw=†ál`…»Rë\¿4œst(4,’² Œ*íŠÿ×\±nÊ¿1© ½­Û»œÚØl »ü½É–¡ø5;ËëX.×8(ù½2WS®Àß~WÚUŸã ©_È'‘c>MfÓÚpÚÝÉ>V ªÉPq±^‹}vKú‘û {ñî…(ášËØß)/ÛÊ@]óÛ!ôÌH( ÖRWóâö»èr¡åð÷Å/µÔ½ãöËð‰ºMÞÙ!™ùØe½\µI X’ÿåü­·ömﱌ£Tk¢“—^¨]<©ÒÂxËÁ¨«©ÉŸõ[´‘…šë¾‹%Û×ó [ñþú“ÜÝš¸NÆ”%úü´ûžh>1%Þ2Ph³«{e‡UßОßÐ^¸aSî†Mù{÷gî»1{ßü#÷æþùw²Ÿß—¿¸P½kõ_E‘˜štq޼o«BY÷퀛6³”Å6 ”«äOø¾BЋ¹—Ž«ñÈÅÁîõKhxZº«a,¡³'–[|N 4m6åâB“¾lÙäZ9lʨ ˰(1ˆ@å Õ¿ù]¥B[ M¬¾õ³ìªÕª¤êSr”Û‚³Æ5-”!ûªs"¨"îÈr`d¼ ˆøøÆXAgŽ,økÝIç ôžåþ+¬âãÕw[8˜˜|¸1•Œ‰‰‰‰É#èUf"«[±¶ÚbU+TX¿M_i¸w³þÒ‰ëMZj°Ço ~Äw ðvµç¼Ö—¿ß%ÀH¦>€39PCsÍa¯CË´J³Œ±j‰›¶+Bȉ-9wZ–¬-)×nºšl\I-c”ª=ra±v`íUW6Ü9þì\Ã×Pk2'Öáå-ÆÔòrW}a©=¡0;ÝSo'CÕõŒ˜W8“«½®Bæ:dÌÍ© ³rãëùþí|C|3*yjÕé&)½Â[ Kß~AöÑ¥‡î(ÿî'ʃ=*„ü8•Ò?Ûe¼þ¿û\ù…qñÑŸ á "]¸Î ùDå®Ís ²|¤gNj·º¼ͯÿÀ3{i刲ÕÃEÇéJ«V5‚"—«=ç6ïÿHSá@`”‘«þðåöÓ?À³mÆ»nz[×F¿©{ùô²#Y¸¦Ê"žáKN×ZÑg§ý ¢®KƒvÅȬ"Ñf=ñ³øÚ]K¿}ë2`ì·é»{ò³qþ}–n°ÿã—ÕÑi˜œ#þ$IbØ¿]Nkk¿¾±—½w;ÅýÇ?ô¼9M¶å[·V¹??Øõ~f€§¥ûægK¶ŠÊõ6j¯dš:—~>æVYO\ é­Á‰KVÈB€|õxð³+Q-«œU®°\%5Lêx5_Ì`gew|ìG–q± —Bõl f©ú2[ —ÜÕ$(4·X»©d4ìÿ¨‘— Ö°]ŠóÙUH©Üª¯@hòídÝŽ«O÷é苾å¡Ù–[Š‚kZ›±Ð_:åFK?Öïhk(Œ†ÀSRŸ-y4Üú®É¼G@FEl’ª‹õc¨÷ }ǵ÷RÆýÒbKù„™Ýö0EÁ îðvwØÕúbäèëñWÓõŸ½Û~ïÁ¢È_ tˆ"ŽfŸµ‰²cW£öÑ‚ÇIDóä7¿+e$ɼåTŒÛÕrMõÎá¨w~÷ÍK»îá‹?Ü™WX>:x§säe£ª UÄÍÛô{ŸîZÚ›;Ôvü©†áã‹»? t(ÌõÒB`•m‰sׄeŠU†¨Éwõ‹ÏžªËT˜ß¹-|û è‰1¬h˜9ïãoÕÀ×>¶°¡5-r*¼rÞ¶»7/òZüzUv=¢ß«ç èÐQ&XÃb¹T®à™ !°ÊR’M%+Ã>=lýÍÝ¥¿y0ñȽٖºõã0ï¦ÁßàN$êJ¼¿b}µÑ»–¼éÎŽèÌ9ÔH,”+ø'‡‚@‹Eôïÿƒì# ‹PÊÓyKàÚŠ—²D;ý¬&¯Z“a’€ ¥ÏÝœ[¦//Ê€àí¥–ug’U9‹N0•ªŒ)ÖbáÞí{&y ©¶ÖÂ}WÏMÐS×|ÕðžÆek´ÕdÇßW7š˜|ø0•Œ‰‰‰‰Éã«¶ãœú™}‘±ß’Ÿ>í€[wWyO×2`‘äE±ãb“<Þªô4€Î¹íŒ±VŠ­ :Êúg¬ÝþÜdh¼b IDAT 7ç‹íÏû>-*SÎùp'Ì”í¾w&²“ i>q9ìXù‘‘«M—[¤ÄDßÇJ¢3_øËúï[äÜ„¥?JydfŠ¨Ç†‘Ì[ Ñ–0tãb¼îÝS=S¨p,ɨ–€$3¶ö9û¦°Ð+Y¶˜ï¯ŽífÎn%‡f‡c~øy®>_÷v5‘þu>k jó`ò#¡ø¢d»\l¸zp‘Çã R`ä[æÏ×4ù䑨·>ˆz›É‡ï‡\¾ù}øÆ±Œy°ÂlÄÖTENS9aiû­™Þ=¶…±ÆWÆ5ÝÐ4@è-ç}_.?·óÕ¿°-Ž¤Ú¶Om¿?^Ûù>WÄo/ÀÜUf\ù*sЋª«ÍO+óì™§E¿{û´4¢ ž~MxüD|ñàì@sJxg’³‹ß¦ûœ’Èi56#‘ýÛkQ€­ºÛŽ_¿DìÙ„þà›ø¶¦\Y¢..P¯¨€ˆ¿û\nCgùº¢_†fGb¶lÍÜÜ¥8ìjO¿=ëËù‡™[”…åo¯ðè“j¼, „œ«Ò"K¹µQ®°”ª Í ­jT´ªÕENûÌþx›åÃÅL‰üáÄ`å]ñ½3Õ–.vN–$CtŠ¥.ŸœR®žDÒâânib x-\ƒïì.msLÉž÷1.[CàTŸ ¼a ‰É‡Sɘ˜˜˜˜|0V6”åê•gí"§ÞÒ— ÝAéÈhÈžYúŇi,[«áËiîÜ<Ùé,ëýn»È¬þn’IvÆ» Ü5õj&͵ã#m¿Õ°ð£úĈ  \*f«RÆ3}.ÚûÑÕùҭǾS±þÖó¹@j¦{î°¥š²íûãS;‚‘³1*x¬ãa;´´¯næ\Ì™*Ù€¦š¢œ.7e Ýן´‘·1Uä`"—nÊŸk,ôqã~}±Å²ä±äËøîņÞÛàAï™j¢ôO4?=îníä¿|GtC{AäõþÆL,IÖœËv\½7v‰4)0òæšÌ¹¤7Q¦ˆ Vÿ»*^B2VïL’¢«ÊY•ѾKß¿Co¨&~Bé¥be~Ž,`àúõM¼)ž¹ø­ËÃùÆšÞ†£'-õê‹?›¸Ëg,CýÎ5œY¤;CTf¥P ‰:ªic}–ÂrÕ–Øäw9Iùèlì‘MEÝ(ÆÛ¢f+y°Ž;ì ïó}®Êñ1çÀú9n&&BL%cbbbbòi *‘ås]³Ûk æçR‚ߪÿôlÍÎöÔko¹nظ¾›Óƒbrl<%úœéT^K0ˆô•N#QQÉ“‰~¦§>Ö<òÆýÙ¡DýŽwÖœ?RñÖ‰—ÏbÝ×øéèà-Pwò]É,îº'4}’Ñ Oq¿7Ð>¿v®š«å y` …õ³â‰Ç¸ær”î­)3 tlÂÓà Àr¥&.K^ç{º3_.6Œ—½ËI9<1§ù,“Ø¿­!÷¥ƒsÓѪu3rÝG¬Jæ¾@q6X*Ú{èEŽ®l«TR‹´·€OǵûŠ¢5¹`1Æ`š.Àq\huÛA׈=$A$K·w_.–…±Û#Ó"öÔ?ÇmÖÞœKs9í‰cµºÉ®zÛ…Ü,ÐD0Œ*:ËÖ…âJH`°a‚ l`ƒpØRKY¿”AP«ÒœÀ)¸Jp›Ú*Kyg^s9½ÒA—ªéHÑ,Œµ¹íðtžU4P5Pìe©@øýÚÆjt»)Æ2fžjrq Ö 0t0tŒ ‡¨bl€¡6ëOCÿöÿèÉœð/'‚_¸56=?Ð5À9³+]ƒ ¥µòœ+ X튊S9xçïF4µÚahmԥ̹7³¶z¨ÛÖ7ëíw.üùo|!&eðÉË–ÂàR4ôQ"§€ X[ô±ÙRè–ºÙë®J²†¶š>‡T|¥Ð%¬Z»m‹ °Ê¦Æ¸]ÔŸ[¨Ij„@±Ù¶²³ZÕu¨š­5T~Áîµ2@ºbû¯Å¶æ>šf‰×²=|êÛØe¥©»z+.žÍtßåŸÏvo¶.G«ö×Â}C£ïuOмzl‘¹{×{½obòaÃT2&&&&&«¨/ůo^!pêÍýÑÇO4ølÊÑKÁ-݉Ç^÷Ýð‹†JªöBîhX|ì°¿«[y–¯`bI·3HˆD\ÛÄ!k!<‰¶Ï´ÝXS Œ¼š õÙO?/s62½¨é†-< ¬pBèø‹˜@ºÃÛ0ô³TÛŽ¬§îÍñš˜F•*UôK…z”pQam9Îc«ýùa¿PA@PÑäW§¬w²¯½t&_»Ïµ~™Œì8šmMJô&i¡¼Ìö2R—+Òâœêr˜¼øq8çª\2Ÿ*³š«>X¬n”XÎ*ÒOÔ7ÐæºY¦J±\+kÙÃèUUÃHST8ëk­™Q£ÌïÝý•Í—ÃaùØY½¯íî’ÙñÙ­Âĸû7"mM'¾„B‚– ÑžÛK6·¥œ±TRb!é+ǰͭn…wH‚G!ø²FVt,UWŒÈ0IdÿóTÛþ†èr–™a^]äCu •Ѷ„=uѵ0  ÌÁKo¶!ŸÀ|Ò‘ž´ßµ7Žã²Â;²¦‹„Ý!³E”Î#â§ç¬ë+ÿrµ§Žüç§Äñ8H¾eàÑ‚ 9¬(@’‡ÎX{jeÀ8lW¬ê6lW•LOû•i‰€©ˆ{.…ïÞž J§ãéSÈÍñ-'’žfªxQªoé¸Ñ›yêdÃoß«ŸÏ#@‚·–€˜ÂxÄë]ÈhŽ@ïÉÉJÚj@2"\¬Â¿SŽ/°Jm¤Õ—þñDÇ«±€[!üW„)— dP­ˆ ËŽB¾^¶ºhùÖ–Ô‘Lð3þãk‡ÕÜãK–û›³Ã¹Ö»¼c.&×@§ÊÞí®©¹‚ÿGSïlèuÜÛDNÛ]'%²Üº}~LL>|˜JÆÄÄÄÄäcôt~¦ã§~zÇÂ×^mÅîªÍwתG.øö $Þg¨Ù¼u£%-rÚŽ¶òø¢åêØÙpÃBIô43åMÞ|¼;ü¢B …ÆÛä9Íd–& ÕÐ\ ¶so”;·Ôýä oI“ÅÀà˜ÿVªj3¹ßÕ{/NÔ(cšÅ4[§™7.vo¸…^)½à<ê#®íülFîÞæ©Sç|û: ò§Ú"U.®L†*åÉBh Ã0P€¢Q»é/Jƒ¦8@·Ø`É7ØB]È ;@ãEE'B$Mr"…0MSBðY0©KÜ.MW”Š,kª œöüXÓR‘®qIþ ˆ¬ò­lßWj1Ä Ö­5’EDí\_mV?9Ûæ·2·sßÞQ®ccbr"×¾GHβj¶âms3ÁéW ±`WÆV“-JÞR)0RÆVJÍ9íAÉê;[K:)U%$—›Ðs ù2Æ7XU; »6fLtÝË' °±=ñ"þèͶB…œóV:uQL—H0 –'&3$L[¸HT€»î²ªðО*ØD^<¬ß¶Ë‰zoÛ[j®ÉÀÿ?p#õäFwÐ@ ¹k=ýµ‘_îÞDÈr¶|ýžðÚ«}îÅ3÷™J°S,í©™yn±;WÛ¨šº»f1*B(bx›ˆ¥…¼—g@¢‚X¤¯–'aÍXuK¶fþúJ!‘ïï¼üraC8ef~êO7Šo-±ìMàîF0y]ä5xöTÝ®ŽŠ×Q^w„±ªO7¸mꊌ™™‡Oì'/ÎQ@êAÑRWúöSÒ—>ê †×ýø»9vAü£ÄVn¤xJºÑy=̪ h¶–Ž66®> —ÖÍ©€PL·ö¹±j›YÇ蹌¹šwt­%S`m£ß}|œ©ks–2›ÃÜs©nØi ÷[—¶ z‚kŒÄÁ@ÔW÷.Ú øRÔóqßÐ5çª èì£]«Z%Àä'ò¡tÕáæs=ÞÅ&{üð\Ö×Y‘Ó¢Ù_à|mbò¡ÁT2&&&&&‘7&’ÄJõü»ßmªÉ~¢—~â’w<âìÊç¦={{×ße¶ØÒ<%€ÈiÝAùìe×¾D2où§·¾ºkÞʵìvÌ€Âpwí’ÐÀÔïSߎ֕ßâµ Œ±¡uMwá7a Jel,$ DÀe° dç’g Z,$$‰y" AŠÒß²?ôw«”ˆ)HJÆ6N4T‚# J{Õ «2ϳz§X.©Üb<'³>•â.—QQ%Ê‘‘HšÂ.ZQ)ºžH H" lU † ”!cÀl8² €¶[¡"³ç¦,s%û¶N£Ã2ÿü…V·ÏYïjŠž^´o­ÍÝÔ™{f®ûÁöKóïŸû3þ×¼sgãmûgÿèqþ#Ù®9[®àGŸÔw¶½)µv Z#Üñ\aÓÎÆÑgP‡#)ík‰Ëúzðøêñ%o‘±]w2@-‚Nè¬)°vzsE°$ÊPUÔpŽž©ZG’;X²ƒd#¥ X°°’÷ªv+IìkZŒ¦ùGö¥›ƒ%x.‹É ë*™™yà|.°·{yå•Å(Y2ž: `‘,}ë ÆçAû·§¢ÛÜ×qyݬª«yúu›Û®ú\׫‘\™&XÎãç—zôr²w9aùKÇÑ£µw!‹Øº §`¾b;˜y÷°”º:¦N²†®@¨ ÐEŽXM-«ê\Zv”56*Û¢†%@”ú\)/“-Ö‹ˆ$ÀÅdA¤«IÝn-I¢ÍIÒ–m¯˜X’r„l<‘ÉÖ{ë΀—É#"4•õºùŒ¼¿iîÉÑö|…ÞÝ:õgE^«±)‰ ûî01ùða*“_…ýmj¹B¾—=n[ ·--š·¢;yrÎÖ•½öuv±£9Ïž«*oîÈ>öfpKýÓ¡š¯î\ðÚJo&û,z%—TËö™(stŽÃhwi÷€"€1& ‚ä’¥š&N t‚èPXËÅHwMSA`eXÉBèÛOúd!@§—jç²–f‹dmTþdéÁ[ZãN* ß ï¼Ã1òãC¶{weç*ÁSYw©d@ˆW’ˆk~¬«õNäf•:1E(DÉ)9íYH#lÍx 0ÀšµºêÏkX¹#ˆ±(þÐÛã¼›Vî˜&/w•}é³³¾¿~³­Å%€£TøÝÒOX%¿Ü±/É_}E¹çþú›k΀( ‡ ÝCóÿðÚV/[‡¡UO›/62Ñs"Àχz3öþºüD™÷F…Њõ•i0²b pÒòÍÓÍi)ñµ«yÁω ¿©·ÊERÉUKz¹Š´¢¼”µdж·k¹j—¯ädÀ†ÇË¿q$óå;׿ºBùãSž¦uÞZJ²{êJwn¼’^õÔÛÔ>¢ƒ®?°€À§GØýەσö7.!£cc°ØãY'²B"MFÓpïÂu¯WöeÇgúæ~*…æú¨PÏåâ[}%îÅÜêp)K* ’ HhÌŠZ¸Ž‚ÎÑxUDiÁÃÒr¹¦¬³ce/8(9ȼ~rãõÕb›….-VjNWB€ DÅÎ$mA?.H¤OD—pãñüuç¾ÌÜß•îràT¬}[Í$OJ€a¦`ÙþŽ“›ÀÈôNN'\ÿy¼óÁͳÂUfk-ylŽ3•ŒÉ¯¦’11111ùUpÛŒb…ð¹×W`•›{ÉJã©%Çö¦üxÄùn%³÷ÆÅ\)­9­; ýŸ5´Úµ±y>]´¼µXh³«DsˆÚž¾Â¥`~ÊyáÎ*š¤h€I$B$AÒd¥{Ÿä¯Ea‘Ò<È62³½a‚µeÖm0\ P-ƒürQ_q]hJ¶óÓIψ”.dÔª«Ï¢ŸYvý»t‘Ä·N¹íú +fi6^µ°ŠÀHX“ÿŸŒÏ~ù<ëH“lÒç>ÐJмBo2z¡jkj¦VÙÛµÜ]Wxó”Û}f¼âùÖ¶Œ3TÕ¹Ã. ’7_õ0¾NŠ šÚs§õÑ'Õ=œÄC}Í3¯R3Ñ@„où44nŸqmp©™–êTŽõG)ÏÕÓ¸°à?½ìøÊÖÙ³Éú[¸Z­Bµ:aÏe|!·^Wç òy†ç4§«¹¦Ü£—¶u­8O³ Qr"¢N‘ØP¾ù==àA€ÀãXUo;Ø,P¨ªÑ¸”H! ¢,ZŸc¿¼ïJÛÇ™êã»°Íb`]wØ ½Eÿγôþí0ØGü&(ß}órbO?A¢.ç:fÄå ú‹ï3õÙu4óëS ¿Ñ¶àa‹ý^ïñ ¼rZ3ÕR ­@másÒ"ö€ƒÌ.•j¶9Öq«S€“€w’¶$MåV©áhÎã¡%ùÂ>×ôJMK…õ–hž/]¹±yJê°Í[$ùh¹y˜m—“(@c…¨–;']™ÏúÞ«ÜwS-ñ£…Ö…¼¿Á÷0JµŠSeûšÀÊýuQl?8Ùp°#¹’›mõÕïrÜpM.¡‰É‡Sɘ˜˜˜˜ü*8,z±ô~í•V¹{ ò¿N4¢e è*X®ÎG€ãñgCk™9k`Œ»j*N;œ'jÿôÞi7›€@rZHGøø$VÕRm5yÉ-›1[lD׌2åÕ›{üx¡q æoS5îí^ô¢"Æ´À` ÇݵŸ×9{I§Š¹¢]náË¿åÔþîFT²aðW\¢_0Z,N$WÓÅ~qy°½rõô~òsãKw¬/cr„O@²¯óDÿýYÄΨÿ}×äbÕÿ\b³_ÌÅË6˜g5©­ÛX˜¥¿8uÏ-\®‰Ô^N7¿rñ¾¤]=‚¥œÌ7ˆzø¦RoE&zjì ÎâbÆQó·©œŠœ‚ন­>Ý.\ì„pŽ°Ç  M$…/ì» cóÖ[ßÙ+÷Ã-žÔ“ÛK*ÑY?oP[&ì9°—YnN«×<Èç.6‘ÂâDöË;æ†/"·ž8ŒðÁ hc/*”`1‚T]ª<ù*[ãP£iGP¨ùÔÐ3tyì.ÎÓ—‘ΈÔs%\®@ÀÞ<-ܰµ2ØG(ß;2’÷„ž®l¾­fµ'Ï å zº¼ò¥Ëp @ÈaÃ6 @ˆ±œ3ÛüiCÅŽ¥ÉÚÎåéø9š²ï…š‘m›liˆIv+³NöZ;U(5À‘lÈÊâZQ6ë†d3L]}¤N°EK­';öîA\t®RÅÝÎÒ"òúôR‰f'*þS­’öµèMEa¿sÚqÿ¶Õ[ˆ§¥=Áégfº¼BÞAÈ"§Ç Öë|Õâmþì+çý…2¹¡% "¯ìZ"MûÜïYŸfbòáÀT2&&&&&¿ AŸzl˜ßÐõ~Çxm¥ºROMx-Ú‰¹ÀWö| 93{®µlJdùçÇ-_Þ—Yv(”íæÚdJ¸ 1_âVдrMgÆVï=þ¤l)·ÊÚu«]iÀ .œ/œ>¾ù[9Õté•|°'㪛®²Û•4ÈjåÊ‘ BS°Ú(me T màÏg‰†n©¾ËU©‚ÅÀ~º¸Kœ­³ÄÊ~â»?³„¼”Ͻ*†G1 ö­—(£=õ—­J_ãÕKu`gc„'åË<M·©á@nÞ™Ÿò]ÿáü|ªÊ|uïäå¨íß¹´jü‹·â•ÈÆŽüd¸n7ˆ 5 ɳ/ÌwýåBÏßßz´>}iÊ¿1m*ÌþæØ §ól‰!WôF*Çè©á–L™ú¾)X,øwy¯qîZÉb:‘hþÞpßÇ{&Fvè $@&9‰à› Z6½VðX› -õ…?îôRv1Œ_|ÓèkƒújiDqêÂ’ç®Í««ŠÂ~ãlïaêÂÚ·Y€b™€K ¨¥VÿWHD€Ð_ý€€@?â;½"(ÔÏž*ä]¼’oîµ$üÖ²Èk`hðÏ$FwÎÀí{ @¸PB‹½÷nu,9KF3äxLî¹¹jå¥Ì|C¾Å”ê]L§èÅ‹îXÐÁ'“ã¸Æm5!‚¥†+>Ã0*E/Bè&ϼèb Íd¡’7æ  „DFÉê'ÒùœÄâJZÉ)\ùÿl±í÷œ‡ÍÅ ße%ÄPØ%V«dIÏš’yc¦) &ëWdª@KÎÔáù¦foaIµœ‰:{Ë×ÝB§Ü²!öý#AÀú†Ö´„ÔH‚2•ŒÉ‡Sɘ˜˜˜˜ü*ˆ‚;_Lf…þúX^b~¾èX’ØE«×ºjj<–vó<òÒWêYîoùþèÖ¨ÏY »v’ üy¦TT0 V»fKެêµÇϵí/¾Ù¿8rN­ÙÀVÏÌP~ÛÖ“ÏÁÏšºãSY_ƒ+»Ü2ìw¸–,Ë­ÅaÁÙòºˆt.ëlTgekt2ÙZCl Ã˜‚£™`±ƒ­jœÈK·n¯>ùsúw?©@"‰Ã_ùÜúßZ"íE òõ}HÞŸgO×·5¤"©Õ†Ëü†òX»tôbå–hCãR¹f*aÝhIe;íðÜÖÓOÌ{€.­ìYÀ]ŒM×Ê 'èìm¨ÉñR¼±‡»¥TšóyÇDÝ-©¡®Â茭Kj¬è3*ÜÝS2“e€éÚƒ5××» ŒÜZS)bçS—Ú7ù3k~Y,’X$eªÔå¡ì×îZ¬òÔóçíQ='yRR“Ó'5Y%BO-†ó/¾‰ƒbR_íATQØÿ5Ü÷¥þ©|ª`´‚σÀç1`âEú‘î¦Ö ½ IDAT~‘êÀOr7viƒê¡Ü®>é?_gþâÁ IPÿñòb×~¨äO{Ò ™ ©ÁÍÆt±}2©¿67÷•ª­SJ½ƒ6îÚ¼²V*TõÉÇ{3‘¥ä\2´¹Æ4 ðŠzé¹"yc[f¢àªØX‘ñ3JŸ€ b^“ “„„Øbž‰•h¯’-V@€¢c1M¡<" D  `°  ˆX‚ ¡XI„i4j©¤SÉMÑ+Å/£áVsùï52µÙ™Xȉó)¡@°‹%œ¼êßÑ•kÄ©ŸÙžZ²üŸçŸ»)ô*G‡¹÷Ð`bò!ÀT2&&&&&¿ "oŒ'ÖM\Ǧ†ødƲP¡O-?ÚsReûHÞÒ]¯òÄj&OY¢þæEï]}å»ê¤ä?Ûq¢T$S¸Æmã¹0kÙX¤,®ÌrÍÐs {>í?Ú÷ Ê Üâe%P«ò""‘f±êí›ÄÉsðÜ2w~*æo˸ëäËZ¯4\&|Þ¶ÒS´+‡øÙ„â ä Wh“Û\Sßr|´))ò:Ôó±#½o¤BÚ`I׸ó½M©Ã'È­úŸÛøúßS¼e¸€Où%{ž¬òì©:|×ÖÅóSö|™€@%â+L&,-?Ô¿tJ¶fJ-\‚ à¢âm&‹wúÎþ󛶨ˆ"L-[þõÅàŽöò†¶¼EÎä] ½*ØT–„œ¤4ØÇ“z$R~9¼h¸EÉ;ãÝØ’n¡gNÊ}u(øÈ¾Œ¨hžn X U#m°ëÖ»;ˆ¼Çï½Ù?þÔ¥v¸Úü7Ÿ7îè*‰œV.©¶Be›?•«(l4o™Kל©6©.i>UR ¥~‚ë©«hÛƒm‹K~têƒWÎ2³ÄÝЮ>AAö¶ê¿yoYäñÌ"ÓÛ¤vKŸüÔkÌ®>u°»òû~ñÍÒƒ÷•‡£Þ7"¥/P¼Vå¿ý Üs-I4 ôóQëlžÜÕF¥E’&rÃD  :9ÅÎ*^kj£S©lVc,ô^5’}júKw’>ïú»C`5Z´”'~ùÕ{æD- ¸{û=2S»óTLOxwÊ$S­²ýLÚÎȯç[(·Å}®‘á ¡·I_Yð ­¹¶ÚÒ˧\ÇÇkþÏ–ãY±îêÁ5‹‹–+ ËË$›°·ûÔ°?³tl&4ØGÊ$;ãÞØR¼4@ÍÿÇ'Õ"`U‡dIÍIÅ`0øµ"É(­k×g%qHª F£ø÷LΤó†”N+—âÁ€×Öꬔ ôw.´6:Ë}ÁpCü¢mqhnÃ= Í×½ýÃé~keX XĪƕÙv¿~>“s¿TóõߊÿïѯÔO¿È6ZúŘáÔgp»K{É¡ªaek¯žÛlX¼«ÿמ’ôÓÙ. )»#Ä$Gù`Ë6Õ[LK 7·NÈ¢,\ò{öŽ|7ÏÂwïX«û¸q©‘\[Š”eå+#E%[ “"T0˜SËõ?8RùÖ¯Ø|‰œvトK4R;Ù=°YYñd€Š»NÌ%Ê67¤9W‹z,25Wùæ£ÌßdÎ/¹^ï¨ÿ|ÐÏð5ɲª¦?1êÙS—üõ•RQÏ'®ž0‹$?Q”1gcr+™•L3½"q6Ö*¬"XcÅ ¸¹F± Ú·Î4ß²Kéäs Q*¡Æ"Ú£ÏÐ}MÚè„.øÿùpùô0ŒEaÑ(òx°[±‰ÆÑst,ÇÜŒ#‘’]©Ö[³ÇòõAÏ5G¶·`b˜ÈÚ(v°[‘="@EåÊin·–+@Y…ÉaÖO­Ÿ¨kÀ£+¦ÆUÌr„ÁJW®IÑ‚ÃYÏ^÷Á1Ô+r+9‘ǫ͛øðâÙ!¥o5V®5zøtÄ™SõŸM†=JáÏHX7zjáÑÀjôo,€V–"(óçÝÁ…o^ºjÿ†®vDÖ¬£KS¦’1ùc*“_‘ÖIüâ˜Ì MÞÔÝ-̳s5i¹cŸ?SÖÖÁÝÝXƒ¥Yyv2Þß%¢³£'«‰¹h´-üx¼ã6ý°=?6×ý±’èl}=ÒvW ɼݛ‹~¶´MY%7ÛºëÊsj-Sp´ï^~jaï®–COd‹e¸¯ DgÁV'­´ûË^'ÊiLª(ÀRН÷]c59 Ó Ò©¹Kò–:l´Ü·wÆç¬jÜ|Ñÿz¬cØá ×[cW;…s83ã¿äºýôxܽ3Ì€V§FCJÐÿœìÞÕõ9W5•ËOT½/åºwZÃDzÁU|~„ܵÇ=\t7r‰µX4Ø“ ÑÞxê°ØSÏlí­ˆ¼Qqø¼sÃPß Á„ÅÖ½OA³ûÿð;Ž®ñȽÙ¹•œJa{(•¯ÀdEØQ—* NÍ×aT LéŠúwî·æøº…0SgÌz,ï´Ë`ä¯7.E·—ksÈjÌw‡Z?½aª)À4Úœ¹ª:áºjóÃQ®O…î ìÙˆ[àþÛ•Š²<›ö¾´Üÿ9ï(OI]Î…Fk{²É–àiI±D%K¿T#Â#ÃnÀøÝË.(9p!GŠ3tB¥*½¦dÎçêŠÀ°ÏÙèrÉzxší’·wT3šãR¥®ˆ[ÚØT-爪å¬X·ÁSj«'&¸ï¾`ÝÕ+ok¨êµS$Ä2² ôøˆû¶©hò›â‡?ÉïÀr©FŸeƒÏÌÁ€%XS 'ËÙªµ!çèu¦(CIUt¥Ÿ¦ÀÈû‚KºT®Z,Ì/þîiÉ1Zðnõ墹U?îÅ vãá‹ðµ/ £§à¥ãpÛ.F§p_û{Öx”«äÿÐóÐîâ`guf§úÚ‰é|Μ§æØN‘Ö¢±X–¸÷†<ܺ§29Ï|ÿUW·0+97z3¿Ñ9 Yµ¸ t³,­çl[Q¸¾%6›ñ¾8Û¾½eaåVÌÈ;£³WÅd€ ±|% e³Y)„«Åwœ”e0+×Gª¤=Sx,^ŸKæ[lÉq«!zí}xÓ¢ïæUÍ“®ÿóUǧ¶$ÓVÈ€üûHA-#‚ .,ºî®)™µþ<ïùA“+¦’11111ùÕ‰e~٪⑥À™ˆkYf‚FìA‡¾ß3û¯¯8¶ì¶u÷Ù #òöÛš“«ŠurZr$%;únò,.êS_=–óðEö¤ÿe¾÷Î{-gW´––ºrv…æTÁî®$Ò‚/æoC$ åg~äÿÝ­ßv¶í];ÒgQsUvb¾°–eÚ;gbª î°Á¿ýÑõ•ÖÍî$Æø;g{?Ñ7%°2OIõÖX½5VU¹¹‚ï¹ÅîF¾X×ĵÉ_fÞv+eôÛûfPÊüÔ­=FoöKÅ* •{;ÑZ²Û<ª¼âˆÐjI>{‘¼å&š#3A²d£’Á/Ëþ#…žƒÌMâ2c‘7;+í Ääóg=ÿêK3rUayP‘\>½ÔT,Á‚b0Ã#Ú£?Röl!CG¿¯èÎNt5lcWÄÒkn øP‚obÔ²GYbA‘R‡VÃ/Ÿ·ß»uá•HÇ‹Ó ›|™&ûõîÀk¤%Ç“áîBc†[?1ç﯂ÑitcŸnÝøÆÇÙ*\ ã¾vb-°+u5«q¿D†ýëg]vOz%®¥A¯ñ“sÄSoÑX×öaŸ¾ä4a¡ãøhõþ½«óD$]aBe"ZÞäêõ¯–¡p¨ŠX$&d÷fiHðKÍÎD¢d{aªcØ_%yJd0ƒ¯îh–Ç¥Õü¯ŠÂІçÄE\(æRüÉ(ß$*eDKEsÄ->ü¥ºÅ5úFyóÍÜ´ƒ¼º96j6òcд‘XžTê¶|¡ôžq-ŸP¨qX›ZscnÝLL~Ý0•Œ‰‰‰‰É¯ˆ(è¿ }¥"ÑS1ç“ã^’" Џ·-þüb@#È©„žzB(K$² æs±¨ËAÉ-Bn 5c“ÃKþ¶6‰Å„ƒ‘çSM»K×ÚÈl|Y÷6^}®˜³­®x9-ø m¯mHŒö‘ÑÂŽGqÌý£oçîút‹“sDR%ÿæ§TIõ5k©t×K_-Q¸œ‡Êõæc#÷ÃØÀ?nùäàôJÉð´Ôí^l²%Fpt–:Rîp¥z<‹ï³o9ÜåÝ»¢)…»¬ù¯{7设5áÕh?uÕ†ˆýÌ¥¤ìÈèv'=3dø[=c*Û ñ•ƒ9¢ÚÊÏײñ žÀ@®î´Ðe•wY‘7»¥ö&”9ßyö]o!{ôDŠøËÇ]Ï|Ec9ä! R‚Á~ª½•œœ1žxA‚°|z»´cóEÃßYL3 )k³²VÃbs¤ï=èÔÒH&À·¢df#¶î€äsV³qþómC?ïÈ•PtM¬QÕ¸ŸÄº¹¹\±Éêj`g,à¾ÛDh»ã‰—¤Û÷bÀP¼j+•ýlXd8[jæ³æºè´ìoQåüôkasÎ ™1hKš.©· €÷nJ)& ÑvuNæÂË ë¬p^°™bñ?MìŠØ"¬æLÙ]Η1FWo^ys&=wo°=|ãQ„HòÒõ9p*48GáŽË—Uhi°ûZ $¾½øØO¡k®Ä¿HDóæãvÿàÊ"óö@§\1žrµ$ôb ¼Î3·`GGõÆ f³o xB/-ß?"‘Çm´Sz…²' ô¯ ˜ޱú•5&``tepiw_%æe'2+.ÅàÞÊõÌNs;BSu® 2©Š¦¿‚™+ÙÓ«[Òî‘£î?¿{'n&;«¸»ÝÙ}º/Î\¦¤Ä2­"©î¸:6ïZm(äàðÅQ2ÿvb~,ÉÄj ãeNŽùÞwM)üí]Òg¯Ê Hú‡·š~{ËdØSY.†;*¹Ü•ì™#ù?½_y{©þ… ÷ÎhfYƈ Ñ@—Ì¢2)vèh¥‘âºòK¯vÏåB]âH2 5óçr®îÉy¾,‘c\¬i®q .ý½#QHD¿zíW®yëè´§¼n}2>uê_‹ýž‘¿,o.òËu Ks)‹ÊÈÈ(Ù%˜R-žeÑšžYWŸt³ÚÞl¸¡3Ó[± )Ñ,´*OÃÖš±õ7UŒ¼0Û µî`¶Á—^žQ\ĆeOThݾ|0ž¬³¯N5Îèä¶ÞLŽxP8R‘sx8pï–¼JZg­ÐdŽ.ÈñôÚ]Q4‰mš¥™NЩ‚åËYža½&hæj³åÖä)€Þ‘±{›9>G<ÉýñG¨’B¶´‹?{Eñ¸°[´#AS@&ksÆÄL£‹ãvøD¾R©öF]äW|n ¨=p&LÄF´ÚI¢QJË1·ñ+9Í`WÊ‚õÆçQt\ɯö¡?RjÛæ[\–1Ëô% £©àñ7ÊøQ ­,È\N¨ +Q/î®!‡—P,¼öFeKÄpÚóÃn{Ïêpoè¶6ôßz-Êø½o/á›;æãU5jÄ>¯[$ ß¼¥46ËOžMvµÕÆÌPÒº®àÌ“/åzýœ1¡¸ý„æEZœ-Su{ƒYc ¾8T“.P¾¸îs¡V6ç#K!%‹+c([ÿr&qc}iwðØ¥w÷ŠÔ}½8|þ–'ßüÑÍI‘3 Ç3s|~ƒ‡pÛX¾ôÜóY®®íu9ÞGÉ88888ü{h©5R+•^%…›¾ÿ–·-hmïV>ß<™’ëïßlü­SËIÞ€a^¡}n–в«öž¥ª¡±ãe7šljI]u‹rJý»“×@²LÆ_ ³ºÿ~Ñ×ÔçœJ4 •“麭5+n?¥cŠ)h+]W8BñhZrº0|𯨾v}b÷Ú‰ŸýÇÜæ~}Ymª$ªõ²z:‚‡ß)æÊÄkcôU…ÐsnÄTcBºj÷·—ùŽàÏ*5ßùA±3Þ,7×þ²¢‘ÔYvJO‘Tw[‹ó1úùÓÙÕ5úøHôÆç×y(­Ã5}þQOåïŸ2Õ |:²¦ëöMx¿Þ—°Mf5¼JRéd‰êmÑ®ÝP€wGRÐà5’Lëž®ÔáËœ,XvÙ"šB¢OL´ªé™Õ>9"o…ëÝú¼¶¯ÒVWC#9“Í`öŽÎÊ“§ÉXT~8±æ<9– t VQ¿kÃÂÜ©©ð³c×F¶w™ÈF’Afeß sMµòË[R¨4uéí½Y]×Ï.ø¨µ)ëðXx}ãÊÞOǹ:µ‚¼(@­X^”<Ûã‹çr¡e%C2ìdŠ{ò°+Y ®ê’w_[/èg¢ø›£çNt4úQi ‡ÇÍÚz"£–ª ¶T©0Þ®Ì@‰pµó“î:¥¥nÅ÷’-“µqvsSP¦›*GRJÕ:¼À½±èjõºÚœ¢ÞRWhÎÌI±735~Z“N8/æM`´HÈjsjÕCøü)§³èÛûˆûwÊX_{~sy±.$ÀÄ4AÞ°žXÌØÿýQnŽ«ûÃëç{á2OzE¼ ³cE†ä¹kÛõùéé¡yügŸ¶#¡åªÄx Çª­aö œ(±5)á¬âjöØ[be‘Î\/žùQzÛÕþÓo¡ê=¾³vD–-†¥‚£™,õÊXÃí=+õèl SöŠßIM2 ˆkš2~&òÊ\htQÿÔæLÌÃeæç.½OÕæT›oö®Å•I ñçOø¾rßÅÚŒ§Õ»â“?Î4~^ŠÕŠI¸­fT¦S€Tå2ÙD4%ãààààðo§"°­WèºÀ†>0”8›>·sìü¿l±tc6 JsL»§-=™ôÝÒ\ê飚ùl.C.ÉôΦ©É\øñÑÎ+Âù}G$>\a<«#Ô²©CJOå+YŒÁÝ—Þ’Ž‰¬*î¾Ö²Y~´”kýÞ:ÈÅP%‰Ý/e 甚°R)îlNØØ’@ zq¸&´g›Só­ÚHÊs~I I¡Ž»~v’@C=¼£ÒV—ÛüÎñgŸÆ‘–5v"œ)»O•ܵ¢ÑÛ^õr†-/Ö[6âÎ xYtd!Ñ'd—9³·.[©&Ϙâ ‘¥«r©Ç‚[Æe½U˜ÎT=;£2aià§ôŠj€mß迭6ù™íc ÁO-¹þüûvOwSwõ¢œ±w*m›„ÿyqeÏ?uuõüòk«„ÅRœóžK™oçkßMÉÀ‚L»j<òæ›oîèèàyþÿö88ü¦±°°Édúûû/ÚÎýÕ_ÀÔ'>ñã¦þ?ffj‰Øïœ%›â¶(¬˜›ÎÄ õñíÓçyjÒûZ:2qzIyïêLu&rpf&í ­*H—þÛ+5£•hw(WãÍ·û‹ªÌì›íͱ±ˆk-Ò†Bf‚ÎÓ;[Êc®É£rózÃë¿è–$}÷)öd@Èc^ð·ÕT$࣌d#JµÉq¨/ÔnìŸn«ÐkÞwš4azY©ÕŸñÑö™dàÐd4î嶯SfçÅî&•ñ…ÅpÂÖ”ÜÒ¼ª(ûßæ†¦‰OÞ!­@Z>^neÛÅé¬gÏXÍ¢ÊÞ¸^U½á¨:Ã[% )ëØl°Þ§‰œþõך?²aIä ÚI0 trÚ½°@.¦Í‚%ìÚ*qVw¹Ä#Åx˜–<Œìwk±€ÒZcýüŒg}\-«Ì³§¨­îò`Ö{*µT-áOR][ØQŽPiÒªõT¦‹þ3©h­§òÜkèÆ+ìÖFû™ý8ãoì «"£ÀÞÑÄMKpj„žCT ‘7]»2ýÆqtÈD ›pi=<íù«g#¯œF’|j‡¼kk¡>*›&ùÂQß©¢‡â"?ª›/øk<ª5îëí¦ê¼…ˆXŠú”ž3C?|žös„á Eé‹Ö¼…šÅ×ø°Wϯ$bSã©zˆl^4c¬ezðæd7ùYÙÿôpër?Ø4ÚȈ4Ôø†—ÛkdY!Ÿ~Ã%U)‘³EÁ€E-^0Å~×Z|݉a6_&®¿R‚ËA“¦©Çf9"hªç»¹Î‘Ê’‡´¬Wϱ7õ]&^ÑÁáÿ¿4=òL>ø`cc£aï{<8>‡Å Q·êcÖc/±_z@€½oÔBwo½ Ò&EOœ‹W“‹#cãÕn‰õ­ е¹lõþõãßx£s/ÝuOóˆÀ¨7ßîð×}w|`¶ìº¶ar5iCj“)Kˆik¡‹»²Às¯S·\kèH8SV5‘7Ó* :Ó†¿APt üŒvz>°}cÁ–½Á;÷±ÏýŠóm dYcŽM5þ☻#ˆ6slmt¹²0i›ì‹œB_zàòÖê¹î̸ùÐÀtÅW{dÆ_‚1±¯fÅ$ºL@pðlí--å°W 4‰ß¯]L¢T•Šûµ ‡ºySêÕ±FŸ)ɺa½O[w]D<ñ¢,Ñ=M¸§YT0U£dÔ±AS–i!ž,ñªOà‹›áX¦¡TJ>‘¸º1òÒ¹–f*Û*L€È×]#Žœ4Ú>¯×D;ðl¡Dú+Ò±¬¹êdÉÛÝã«]SFH,LæÂñl¬ÆÊÝ×S€¡y¸}³‘,»Ã®òT&xSãÊô‡æÙÍqü±ã"oïÞn?ö: ?8#N²wôHwvg¨m=z{£66ïzáxäEa»Åo­\Õœ¾s`òÝ–Bäí.µ½Q?7à YîÛèŦFmJb—÷©RЬÛ\;ѽwîL6§óå;Š6rJA¦d Þ™kÚ³Øpgtî ;J.ÒŠsöbdDú;ªmõʹvÏ«bO½ÑÓª½j5ß<¾zé,ñ//ßø—1–q±še®á—›ïo9~Ùc|Œ ;-eŸŒƒÃÿ.ŸŒÃ_bwlТ![–ˆéyòäLºûª…‹ûÑᚢÅTæ2_¸Sy{)rSÛ¦¨¦½'‚Y«šL&€¡ìzV=0ëÉA|»kš'•ãmómL¿:_ObzÕ9Ã!-¾xŠY®¬ÛnÓôù:1DÊhÓ:˰ÁI•2MY Å@@0DV·a‚Šˆ(eø³;;Ò¤WNð¼ôs½µ_8Ô{òë›äÚ¨ëˆy}ô?}7ø`±§IchØÿ&ufŠüòG/ó5]RÈgŠUú¡’\"êö1ÂPG¨4÷½4^#)¢@YýÜ÷Ì/„Þ~A´•žhþšîtȃßJF7Õ.öÔ#·×e˜¶$½gÑ^„<éE¥¡¾µÞh¯µ “85!îôͧݪFy¢^˶uŠ‹éóeìšF*rÑÈf`íæ±mÛšD(âd`!¶D‚Iú 6_=éõ´ø¯p‹ù¤ÎD±¿FIÎÈvÕ[%™³ñ‹ ФZuzDnÞШ|%[ª ¢ íÆP:ÔÎ-Ek}’_”eÝ7SŸÎËmTòÐiþè¸7gø² ‘$"P “{}œ>»D÷ÕÃÏÝsI¡>dú]V_`IPK÷î(L W®»òý?â24Æž"Ù…‰Ò/ÞòF(;Ô-  Q%ÞÌÎ'Är“‹þi¶v!md*ˆÓô˜h½%׿<mfK·wŽl`O<]Þx]xª«Ì«œdç=ÍIÀ7_ò²3³1¯ð­¨Íç^§>q‹á÷¾—ø”òИȸ1mîË»eJŠPV葸²IyGÉ8üæàødþ2’Zi‹ÙÓŽÿò™ðÝýÆ5ë/ΡŸ\rÏ£à1ò*A/d i‡ÖV?¡–‹je~õÈæDùyn2¬mMŸÖ› 0FëÎ52“ùð‡ú¯®Ylð¥YPEiÛXç·°LgÑ??Gþõÿc€n˜ŠMPœhªRSHNV=aO AQäzOé{/°º‚Ô³|{X¼ûAK~•Y»Ea GÈ)”f”’²µ•û×—©ïîe¶¯7ö&þú š¤,'©¯¦ª#I!÷ðÄýxûºò’ž0Ê,W˜Ì u35îò+Ñ—fš`hri?~§ismq[[†rÈ >M€«âôLÅÓ&u –²ÆeZlž‡NseˆFítEð‹¼ ’¤R©88JÆÁÁÁÁáß‹¤R‡†w¯ÓN V6¶¡Õ„™eÎ,…®Lo|N=1ÃÁý½Aea^Ùbsâ‚¡ú[‹·XóÏÍn:FÕÞâIZíÎÅ\åçgš«îõÑZÊóts³¾Vêõ£Ä×>i,_Ý2 ¹RÁž¨Sq_õ٩ƾĊ§(#YY no^K¿Y3ž½Toº×…ßc¦ÁîÄiSõ¢»g/‹Bˆ„€ F³"Ð5m òÐT›2ª€ˆ €@€BD»¯Ò@€ÐËóëÛ3MᕪhªE”¹ü2¥¿ÁSI–]Ý¢K±ÑwÆ>³í½º¼ËCá ×PÖ²‰DÎlNTš›d‹¦©B%è;©vdÆ´ö€TãM7Êy9C¯÷âjÈÊøì4Õ¤K$®j‹æç˜G'6ÜÛ:Ìr‰kÖÿéëZßœA½<¨}…ŠDDBÆúælÜ/=ù†ÿ™Ó¼^æÖw o§¼}ÿpÓTéxñx¥µBœ~xªé†ºb¦êù§“­×…~‘f_•ºÆôMµ…Ï^33¶˜¯=¤U*æßt_8¯)齺Í\DÊvoç‡@ä­k¯(nꦦ†ÙüEœê`x3H ž´ÇæÕ%ÖߪŽçЉ2s#[eW黡õêBøŽ}7@£Ë@ÄŠ^ˆ&B^?R nve¡¶£GÏž¶¾ñh°ýÀT&.n-Ý_dWí/ã'Q«×ØÚ|ç(štm’¼—ïY ‘`¨*ôjG‡&Ž’qppppø721KïÞbJ õý—·\Qn®‘< ùÜëÔ}7¯EœšŠš€Ê¤ügŸ¶E‡¢ÌA³O¯æäç_–Úyqp”Ÿ68™°dWñUºçzÿG¬”‰¥{ÚÎNÂ?ëT‰tD~A8ÏÔô981DÀrÞeLUÒ…(M2£elN18þ—±:gSü–vÒï ò+‚AêY¯4µy÷>¢õo•{Ö_:Y“`«LHfmT>Xž’. |y<Ðc}è‰ê¾)çïÚÿ&ýðŠÈÛt¤Él¥/S®w•’Å»øµÑi[jíÇ:æ©L)M’e˜r9Ì3S)Sô]øTÙcƒ6.Óä,‚±ÚSï WÎášÎí¾Ùb…]’Ü?[hNðzÜ#!BžÐ"•ðâŠßÊ ÒbÕ•xc2êèÃUWô¶ðæa¯‰=¸Ù›fuüˆ_yè:ãù7Ä×2TgDkŒZ e׫£uósGïØÂ>>Ú N\ëýÕoŸn«ôW’Œ‹_ºb4â_+Åöì4A’‹iº¿ËúÆçÍïì)7]þä£ðè¾á·³ìî÷¨‚çT9t&q ©3jÌM©"¡y‰âù1rQ¶YŽP$…L娲L«”.ÁD™Ù‘ɼƒÃxRÛÚ&?ØwÎ]Ìý~æV‚- Ö»ÓWôŒú*Ó³î IµþY½ý¦«ªÞY[›¯´ò7z5Ý|S|I¤´ŠD|ÿ5ª‘(|î6(î}¯Wg]Ý'ÌÊ‘U™e×ݼB#„lÓ ¢…g§šž¶ û\&x©’ Û˜ ˆ²ÓÓáóÿ€ƒƒƒƒÃ¿\™üÏ?õÿöMåæ Ú›ì‰9âÄ9Ðc€¬Ò?>å—æ§>w« á¼îƵخøŒä ‡a¼Ì#¸ UM@LÀsóæü÷_‚À¯Ó=W»ÖÄŒ@«=‘¹&&U ü}çŸ]WX#Q™Î§õoÿýÏÿtA\°tKSt!Ღûü²l®)™ýKþH'ª Î0ÕÊŠ¥h Béî‡Ü¯¿ œ/f Ä•èp†ôdzÊ‹ñ´qùVíÍæÄ{â¬0Ð)€$Ãs¯Ó€Ð?"€+VoØØHO¿÷’öFóc¹pø—IA¤­ñ ™´›2* 2zÄ…›Äª|UKiïÉøgß]ÉT Vç"ýÊ€–K÷Ú‚ße ¯Pž˜±´ÈÔué­µŠÁe5ßx9\q¹ÇG‰.<9·±Û•éòÏ,ßírEïÑJCÔkÙ¾ÓÆöƒôže]ZÙØç&³Ov Ø=+af²ÎÀD6´`¦ä>‘ã'$özNouWö'ç bb­Gç*a^'¢$9VœÃ'ãßÁáNÆ¿Ão<§ÏñÏŸsÿ—»óµÑ…ÀÐÐÀO½F6%°(À/Ž&ÆÆs;›åë·Ã\5ör±­·Þ5o®Ÿ`)\(³ƒÉ…è˜o¥šS—,éDQG {´7B[LŸ šTžBk™Í¾Jr݉¿½/Ê$ívíÙSøÒn[¼$É…0Ô<›pki†$Fªñ&W¦óa7GGâˆ)NrÁ¸ièØ\ñ`š6 âkû’6"1H“uSL«W딳¼UŽ3jI'Uûòù) qóé7ÝQ Àþߢ8?|¾x’S3ﻪ e¿‘¬Y^k'b ÊKš²\Q¿ Q^e.ãfHäw]Þÿ0‘ĽÕítÖß|é^ÛgËs¼^œ¥š£æB Lˆ¨ Ë候j“+ÝÀ˜"cšU\2„¼í©~ Ÿ ¤ùæ‚· _£§ÑL›òwÖ”ŠeBÓQxq ¡¦³C>@™]õN¶ŒÃoNÆ¿ƒƒƒƒÃÿ!Ò9úÉâWîË_ÔãOð­Û­G_ nÛÉ8gëùâÕ»ˆ¡lý›Õš+:¬‘ñ•ö³Iú¦Þ\,düø&Dëê–¼ "£¬øUDÞÚ}MyÏkÖÍ7YÇ­ž^j +ö­I@ VëÍ»›]SÅÈKC±æÚHè2"´5le*âK'äÚå‹e7:A VÕPŠyŸ°Ó3`­ÌbÕ3“j¾qÊÕ"*ÝÚi«à"Lž0¦Œ÷úö'òö‡7+ FùÊçnUI†æÖZãLò½‚ÊVh5,˜YÙVæËèUÄŠ W@çƒ*pÈ0K€õ-þðPÝçb—Ï–™”Üý‰Óô¸•b…÷]x™MSÈÒiÊ6r(Ò€çN­aö‚†Œ<©ð¤â§ ­æJØW6=ªÍÈ4ë Ã/ä8+ßZoØSSae‹blàç’_ý¸ ®>P|ëvcèG¶ÏC(wp¡µÞS>™ïlHYðmŠç_˜Õ¸6' k `82ÈììDA/Ä=VRv[ØÆ¯žÖ…÷KEÛÖ·Ÿ±0¶oì‡ñYôÊÔ]CÄCÐZ¯r¦zWþìN0i”FÑÔX¦nKs–…0a©ª,+šaXvÕZ1‡šØÊ×ÒJŽüvóãߜصц–ܬË÷0/aÓúOS÷|®a\®r!FžRoK NW¢OÏõôy³z®ø½Ã®‡·Î¶=¨œßSÖÙtÙ]јé¢ûD^¬ŒP@¿¶ž)ŸšýÊ®ÊÅeBÖØ½“‘ Êë)t6Ëooƒ‹ˆ{«øU^'‡ßl%ãààààðk“ÎQ{^±®‰üe>›µ4Ø}‹èo÷¢OòÃCãrË 94Љ¥,W¤D5fh–ÞÔUXëc§Æ3¡ïëûË»’ é ¥"Ac[·öü³öGv/œCÍ0é˜쭆Ñlõd&¸½ï'炪\µþWñ«KÓTS7y2ÈéÓï§ c÷­ÍÓ´M𴤬hf2gWO)ò‰#7ÿBøÊ3{Qw|u»P–Tö}§¹VF'½ïè©KD(³M#“Ný* »L½§’Ѽ«s!*ò„q@§Ü†aærà&ÎèŒÊÎD¯é»Ìø$M @ºhÅ ¶”^¶ ë‰ÓгÍ 2¨vôr£—ŒÀ"ՇЍUˆ²HZ³Èö.nÿAW™ñl»R{òÕ%±WvÙ’Ï÷ÌÓY$‚·'Š L LÚºR5¾þ£‰ßý­Ø«‡*é{‹-aüóI|퀹¡]ù£Ÿ‡·t–šëLË4lÀøÞ@ÿòÛêèsÛW°ªfÁ†Žâ±AÊe÷ݬÊ2‡¿Û ò ‚×ÐÐúPOÞu+X—Þ<²tléór¬…Ê--.Ð Øi)›AJ#!™º![ôÈjþ€'Ve}Ïv=¶aï ×Ïâ;(¶>šùÎ4p´®³¦„íAÎSj¿xn-ºòTô¶åöP€:=€é‚x<'Ö»ÌvÕËé[ê—nïY«3±®6ÌH½Äö6ãÍë´å€€zùl= teCÒ(¹ßÎy.͆Y !”*_>ÊÑÁჃ£d~=&f™çÞæw_'}íÇܪùuyÍk©Ò`É–:5¯§£è³Gr6Uá\KÀÀhŽXþn-°úºÚÅýä™9÷xŠë^à¸èRã¡·õu[ð ÕÔdM vIÈ' WÌtyàÑ}pÿ­J¨~ül¹ñØ|m­ËÓº Ã£`—aVÀçÊEÛë‡Â’ƄĒF†WÌûr\Hr7Š•i s#V›L/5á•8œb~ôTùž‡lA.Ï[5ï»>?;ï®Ñ š°õ?tžœ3fæò‘Я±ÂžÔ³©ÞÕ dé4E-ûŒª„ÛÀÌĤä‹a¯Ûr¼ߨv™&‰YÌò´ZB.µPá¼çïb9NN§—ÿf@õÚ•QÜÑBÏ—Ú ¤ßO¯Ùͪ͗°W¶žé¢Iì!´°™¥0¤¸X ˆõWºscùñdñ3›ŠÿåñÈÎúœr.•Ÿç¾ø ’iÀ&Åüü)õæÚË¢?mÓRµQ]UxR¾5V|z&úøAêž­I85L?¸ÃyÐ(€‡#¢íÍ3^»/£þî3%À6xìÖ –`¾úc¾»}|@»³½Xã—Á´À¶ML¶Û`Û€± °¦ëºìéi Æ`cäUÀ*Æ 6TiUG^…mÊá¡TÏC“ý\”ؼÝ54W×ô­áfDªÏ ±5‚( §¦"oM¹'JÔU5Ê@¬øÌw §óýrÙ¸³! [“wôUÞãA·4˜ŸŠXç¦èï=-l볺Uh ZضCØUþÐùðÓì‹ÃÁÏ]š …Þ§-ªƒÃo>ï]‰ÞÁÁÁÁÁáN ³Ï½É~qW©"Á®wiD89ÏÀ_^£D¡H²õMô&bÄ Åù¢«ÆS€s³ü=ýk¾X^`ÒÖNB/L÷*wþhíMZ¶„fóíæÈ"ר’^@@LÑýÄ>èkƒH9¿>Q¸¡§?Û0”­?„ÎNZuAªX"Ü3ÅÈ5±<0X#©•V˜¤œ¯Xì)³÷ˆÞëGå­Ô17mA”{úõ­žŸ=BÈR=äJöûw›yêH="Èkr·mL¿~.œ/ãÙdþõ£¿Þ¯-O©AFËë+¥“±©3X£8±J‡%̪Úš;|nE‰œÑWÞõ]4HNóu{«Påü.5þ.Îí%m›kaõh6mºá:s¨Ô¢Xü9©q\i|¼¸íÒ3¢×ŽX59p  7Ø‹=Ɖˆ5Wâ#n­ÀRæ ª>0ÉF¿÷bðŽîÊ¡3Ì×~âÚ}ÃIêO<¥ý {kŽ–j›ÝGe EÖc¨”Ëårå³Öî¶ÀÊŸï ͤŒ¿ü9Ùש,–ôé4VÀR‘u&ÇüÕϸûo2§~J§4÷9ÍwhÚÝ]K‚mþè8}âgÈÖ3TǦk‚iœ`›'¸Ö ¾}BhOq‰$_“äëNRun"_e}UÆ_eýUn­8µ´®Û& KšPÀÁƒsuÞ¬$Ä@ãøxü™þ’¦›xõ­y&U"ÿós=DæL¡#N,ûb¦æÎÆÔç;NÝW?Ý’¥Z£ù°û½dÌÊããñ@·þð2|kçÄG Œëy9ó¶¶Òx2Å Þ=Õ7‡¥‰`;©€ IDAT*+©Î'i‡4Ž’qppppøUÙÿ6wè4õÅ,ÛgÐe~D$…ø»}â@›öÒp£'æ’¶3#^¢£91ê©`O,u‘5K׌e3iÑîi©s—ŸYèÉ©kv¹Èã[v¨O‘ƒƒF£r6+ÔsÅ‚R³.·‹Y{çU+‡™ùù é¯ËÞÕ8¼ xذªˆ<¸X4Xs&Å,JÞ„« ”­Ñ4ªÍÏ(ñÁŒÛ¦è~×LyA¾Íª˜qU—RØýÞësp´(òî­ó4 -aûÆžü?¼…ñb¥³Çw½7 ¡’3Ö¼(È2Xž¯ÕB¢V9=UZ‹,ÚØQœ£Ó…  bó>Fâhë‚j×<ÇÒµ}Y¤&ììñJûÙB(­0?YÉb;Ù,II@7µpùæF8–À³šÝF™oH6M )_­êO¥GÒÄî«éHpÍAôÄ/lð­ë•C÷5I„à¢Õ˜˜†sE¶­NÚØ–ÛÚRþ£ú¯ë´Eþ¼ìlˡۮ¥WSJ$=ñ<ô¡/?dߺ“€…䚇BGôÊ­L…rU(×$ÕÚHd+¼˜ãÃ9!œ"91ºäkXò5.ù›–M³ÑÞB4Jðø pýžr˜ÚJÇ{ÃlU–¹®Ñ盢…ú²«ª32}Oîw·ÏüŇÎ|z˰ænmL÷ÆVkð¦în€½]C™ õ{ òx [}øöêgÅsò¹1¡#²">7u– Y=4t±Rõó"¤Ð¿â%~#q”ŒƒƒƒƒÃ¯Ä/°¹"þÒý+uÆæ’T]ìâp&xî°pïÚ©#í[«yujd%ßc¦J ¬&¨XhÅ!ÀkUÕxZíÎ^›8]ª­6®Ž)òøÓwiO |FKçaB6½.ÜëšAŒMC+gÃáO«;bãë|ÙŸÏvç€Ej‘Mk^/¥ž–ƒa±”¥cR—÷6` 7ˆïô¢á%²F&.ˆÂ¹§ßÚ¾sqïArpð=ÖçÌbMQgïÚ0Ÿŋˊòf#k²¸u‡õè ¿Þ·ó0[ÊbÏê?‘©»x®€ÝŒ&ófUàŒˆËHÿò;½È™· ”‡§.(E5=Fb@nm-CÃÅs†"Ë:›­zSuÏOöüíà–ã©@Éd|œ~wdćõ”áIšn‘ж²C;Øwê‰5gl…öûÔÛѬø@аÅuÔB°ÞLðCÍzNME–>q@âš~Éf€ˆŠt’™]DÑ"o ŒÖVS†yhÁ}⬸¼·\EßÙËîhÐ*ÚÊ%ýþ?q-uöέæ‰AØwþðA }ópbð]c{üDùÝö®R×|&zg±Â8 † ÍŠiiºà"i BÍW ì©@Nõåuf5xZí ÏÞÝ2RÖè ÷g¥‹ß¨w!jŽŠìh2«ÉÂàY,)$ˆ¼yWoõÀ8q‘Rõñ:º$ýÉÁ჆£dÞŸ'ž§Û÷Ý´æHÉ–·h_tX:G&óè©!o4Šô€ß›|`³|ð8¤³)»ê…_†3Ùxå‹;ë²y¯œ]< WÜCžËoTíãUðý7[> jUcKض7<Œ„.°ä”JÉR¥h8¸¬ˆî¬€Ç&¯Î7$¨Ô¼êŽàŒ¬ƒ@«0’ }w$1<<ÜÂMµˆ¾8A4ëpɵ1„゙äO^v}¦ ‘ã™àí}c ²[ÜFJÂEÀ ³ï¤‚Þ '„‰™_ã7—'Ô¸‹ÖÊ—x¹Ræ($a¶j±¢]€õõ¥ÃÃkÁQÑ€:4K¥ókIDjåy´k¹s¬14ãÏ©½§šþæhϾ‰Øÿ½Þ·v5oa² †ûç¹nD€&Ù7ùÞif§W›ù¬’š‚Z’²5k“‹› 󨶅›&Ò¹ºõ‰º¾Ðð´ôÓÓ©”?Áaë®ëwSÚvïéåÓ[êìruåÁ-§Î͉×4­D*>½Sý‹]ÉŸF¿µÇ38E»i ºo ás[ß{ÎwrÔ›ºË¶¡O^ðZbÓ@Yu|2l%ãààààð><ñ Ø¾ïæ ²b’y$ +™¯þ-°»¯FKLìjÿø†Xºõjü賨ª2Î=¿´°Å¨™™…KàIµ]œn㳇”ž)£ayc$„wlÀO~[2Ýu¾î¨G¬ë¢óùƒ,¥aÙØ¹£nèL1tp©•·õ—gêÖÇ´ÑRÿÎ]5[~oÝ\›8}þé>;´r§¡çüA£ !¡ä W¯½‰=ñæ¥b&§øÞÈÔÞÚ:ã"ÌV¡:W% ÚÊÏ«Àh··Ï>;ݸaµïЯQiŠ#”z¦¬ýRS!ÀIYP T²ÙåîõÑ€œ,­ 9‘·nÙX=xR\Ý’Áî]I¥gå=eÿó¶i$€+—*[ê“_ÙvüëO÷FçDFÎ7<>»q°²m¸38tKdÐ2 +_ÑåQ)Ñ£.€m#Û«6†¬?øZ&!/ë‚uë"j¡üü1î+ß¶×ßÔÑÀ¤ûøµzh5Q<1¿æ¡š˜†‘4<Ë-hˆ'ޱ]ŠÈ[zë4釗 Ä=†Èi™Iç¨=/ _ý¸¿ÿ?˜–¸ïÃxµ(ÀΫìOßcÏßü 71³v•DUİpùÆ;çS.á:y³¶2,±‘¼èþ¯©u‡qÃmúÖõþˆ¤±½ÙÂ6žRŽMÇ.µ]Z rï*ýé{ÛF<¬þøhçàRí{\wrÉ 7ÇŠ)…í¬-tÊßR€|*<6+üÎM¥¡YzÙK³Œ›× ";y2h%ãààààð®H2<ñ, zñ}·\\Ùv$M\ɰì·AèþëÙY;|mh<Àji„¾VüÏàZßJt}ÜMŒ›€@{×Ö~­üôv~hÞÏÙ+bf vݦ¤³>79g©Y:g|áóO1L³\•cÞ5×O«wÔÕðåÁ‚¸$3Ãy~°¾'2|ctÈÏ\ìm€žâì¨Õ±ºÅ¯e ¤lA,ßûÐEb&¯ù_꾩n²Ñ•i ó³ŠPµ.P,!WéŠhaLoùuÝ2­ô\ …WçõZÒUŠq{%}Bą̈Û?î ¹C ž“Çç¯ýXχs1ê‚5¢ˆ—òÈ:[Ã鳋@²\}D€çßpÿî­+ïƒÈÛŸ¸>·{NÈC´ÀêÛO¼Ø}ƒ²$}‘ùÚ'Íž‹µ4ˆÞu³që6óÙ7Ùo=&¦s”§e•e?>BÎæmo^*¡§®t0ø¹Øüƒ]'棛 RHÜ×Ä—¾t]ì¡,Ýì¼O·SÑz£s»:ÎÀN­{7=óÂÿ¶ŽÜT&8-±he¬þŽê'oÊþáEßHÒ::¸ö¸±mÛ¶ui}m‡Ž’qpppp¸<’ Ïí·[êñΫ."£vv^¬m^>e?p³kÚŒÜßr<ÈÀãÂÅ €ÍýÐLJy °aº]¤N{*|”-½O³HŽP63ƒ€àÚ #>…ó +T/UL#3-ˆ—ÿ‚ Ç%YWUÍMsYÉ;”®ÊÔ¿>ßúÂRÛ€0Æ®b€-¦ei2M^ÆŒ@J²˜e_PPÍ!ÛªP+Οe1C–Kâ `øŸÉ÷ì®nàSDfF÷UíË|#oö¥‰jzjöú5¾ sH5ȵء’Åê6Ck}cš£ÊðôšFäí–„¾çþ‹ÿ3¸ç­˜†O4ÿö£3Ÿ¿y6V'»ÙRØ+ùxÂ4ô’L.Õ~óTßlÙÕåÏ>Ðv¼;0ÃS*Ô‰I©Í–£!±Ôꪞj>ÿ–4ʃõÌò?1Ë‚§Ž6 A€ú­uà)õÞàñ¹ÃCÑ ­ï¼­:+Â…ˆ<DHÊÊÊŸ³Iž‹ÕtŽ~mœn©[‹`X½§Õ<›csO¼(Œgí¾VêõcÌÄõåª7”¼–óSwÊ·l5ö¼"ì?*–ÀÁ™÷]sI!ŒÓë£ÆéLýîc÷aî·6'1M¹´b•óm½ö÷¹¦×Ç3÷nÔÕ¢¢eß?ñfe.ŒÖŸßÕ5úNÒÿý}›8éŽÊaŸ<_‰*çÅŒ‰¼õÉ›rïPºÔÐ<·Z¬Ì-ZØ´Š’ã“qø@ã(‡Ëó{k ô ÞËìªHDÈ{)ɰasbR~¬óÄêF·¹ ¢lmÓëGÔCäD@‘M¸‹“„¥ÁûÁ"µÍtÀä,Õ’¥ëMb]8©ýÞ³ÞjÅ®¤f=nÍe==Ÿ8³Pó‹‘Ž/¼Øÿƒ“íÏN5b -XL‚7®ôç° aR{i!ôÓ± ŠÁYšÌ—iÉÁ"µ››ÐËz< /æ™ Ü>¶ Êým×ûÈ?ÊÕÞ®g’MxaÚ U1séhÀÓêŽøØ"„„¨gÿ[¿ªéÉ€ê¥4‰ð@Òˆ÷2ùÁª¸\n™¶Zihn劒B<ñ²ëÐúl–üÖÈÝqÝá*ö·¯(ÓH²DØÌkÃ5{†Úà6½¥e¸ÁwqKÍÿÜÁ¥ô'FsB¦²V±­ÌÇ=ÊÒÚ¡&€$®jY|++t4-o>ðº|ÇýM]m~OT|z˜?5¹èñ–d¦ xhE‹œyð”ëw>,]t¤(Øÿ‹½÷Œ’«¼ò½÷É©r]ÝÕÕ9J­B€ˆŒÆ66lì1¶×¹cÏ¿wò½3¾³^{üúzl ÆØ˜ì! I ¡ÔR·º¥Î¹+ç:§N>ï‡nZ-!Ϻ^Cý>h©«N=ç9O^ýüÏÞû¿7µ £’mß0¹Ö[Ø5f­«ÒïݲH0íR8ƨ«–¹½d3J;f\˜µ(GûØõªZVNñž_½wIm7I §â¶ÆãeFµqAH"Œ6{NIÉÂÂÇ+À’ÒýmƒË½™çO7öÎÌ÷&Jdéÿèc6.IÀ›ãÖÕ^aA¤…c´¥…‡·d Ýxz·ûäÐ|ÖŸ&«¾R'SáMEÉT¨P¡B…EàÀؾÏH¤Ùë_j\vb6LXl…Óƒ—pL 7,G~úšfz‚ ¨PêÕ>Ï“‘«QGʸI‡ÂZÈFWÐÏüêýê—T}áçæ¿Ú|½¿1/’°:ýöšcŸ[rò[K»gÊÖ1ÁÜiK=9¬²¦î¬î×u°ò»Óu½3‚¸x6ˆ×0}§„`Aò¤é…]-u–˵¯™Yú™;ßú³°4X¥ÎŒA W*éfpqµsZÔöŽ ¼pµAn=™&0.»'yr9uQ~Ǩ>‹<:Eïý€}êuS]P}âþB³åˆø‡›vA"OMx¥ààˆ“C•j×ÌÃ]½íþéËÔÅæ¸4žõ°¤´©&vhÔ;÷z™r\ô­t‚ܵllÿqâÏîA“š^zCgô­õ“w†ûëý„ÉÁæ’ù‹"3õ!}61¯è6/'F"CFsh]èR‰‚Š®¯¶­Tß›bë½ø\ûÈ«‡côšV³©œµ™µ§ßtœ´\îHA$Î$,Šn^ÉÆQ\0ÑÒx™&@€£¹ú?óO"’´'·–#кm²Ñ&¿tà÷P2À’RG`æöAøÅ±öÞ™ÀÁÓ–'6¦`,ḩ&ç`oÓÄ1ê-+²§³ùö“ÁÙ4£Ër¬X‰ÉTøDSQ2*T¨PaqÚ‚ð©Ûßn7º¯d> p` :Ë,ïõ;‘îþó©ügD³8ŒÆl[#ùÆrc§nz1»…±«Ÿ /â‰,Ý7Äœ9ZzýDÝCg>÷]ä3N²¶Žð-ÕÙïÞÜ÷ß7ݳt¦#8ã6…~{¢é_ú–¯´$l8Ñ꜀#9‡Ÿ-0„øõñ”€¯ðL'Eä¹–ÓñТ'¥ÑòµpögØ­em¡•Œ"õ¹ÎXºŒ|éQÉRB9fUll“7‰wÖé¹Úç蜞œ€1ÑÌèR=}QƒK¾Œ‚®í8ÂØÌú÷ºZD˜ w”±2a¶B^‰Scîx«./%Â|wË Ê8þÑq°¡‘w'}ൠM‹Û Èø¬âù€ÌgšQ­÷¡‰úNÚ^Sòáùÿù;+l]'Kˆw×YRã¸å•~A:° xÔ‘™ùE¨¯c[âS¦û¯[ØG’ño¿àCôÀ$“)ÿp÷4€ñ“ížs™iWIséÜ\Í üø ÿ¹°Æ9Fg-»=ìµhs[_ƒ+: ²~4E1˜J1T‚ñòsÓ¡[†Zíù‡6—úÆ…—Þbö~@w÷Ó#“d"óåÞ\±¤ÔœùTçГ–“²ÏlF gÚZeç­œZîùÜÆ MbK(uÓ’ü¡a3FS`,ò ¡B…O%S¡B… c@PŽE½€>ƒ\Ø©ãô8îsÏÇd~w,œá±;– À-Ä÷ÎЗîäŠneŽ…Ý½8ä(a\v?Í—ÑDšè>Ë0½¼Ïù§ƒOïvÂÛg!lCH¶Û.²°5ÿÛ>€Þ7Mþ¯ó¶h–óØË««¢Û¥šÞôS¯që;”«É4Ëa~Ñ-ÄÑêÒú\CUéÍÞC#5Ãyü¡e¹»×Í|õGÖŽv:ËÙ”ŒÝZŽ—Ì.6ÇQR®J€›œµÝÑT/øxo¢wºýí~ê©ÿ†¹ÌzV$§¢êu«/š _Æø2Vð‚€OÆ©4' øPžh°k^‹î4kVNÅýcyM ôø„7bÕz&}€,féîÕÓ`à ¤«€c„Ä Ãøåa èÆ¹š¨ >QT”L… *TXœºd&7Ç£۴Á1ôÉW‰€ ÝÔ¤À+ïùD¿kÍÌ…Ÿj¬Ÿ~ÓÙZKy‚@”^ÑŽÅ Ü<ö~13^zC5ô´µ íˆ6 \»\þèbnÁKyÑk6 q@u»/©"ƒÁ,wu>Ñr²žI *×8σ٧$eìæù­ž¢é¨"túÔ×ÎÖîŸn V¥]\þ¾–‘”ëùÓ+¼™Žà X3gÏ6Ü 5¦øhC_ªºÍ5)9êi]oN¼ï&ú+æÔY®tßçL/>W#f®±MïhL¤N\Ù}kþx)Õ ßâL(¼Ü?ÎÔ›‹ðã¯ß¶Ö”þ¢o”z¥›}t£à·ëN‹a7!–òEÚÀ„© © i€^U4ƒ¥¤•þôñ1φæi=»çM)íDã0;»ïvë”bù×ïœýÇÇQ’œ:"Ô]¨d`>“jÖÐθ&Fü†®-­Ï^× ½tïZeôM㪅 2'‡¿:f5 õá5…¥ yh~u¨fI$Å’NbK €Ø~þ6ñ(s9uW@ÀÌ&maÞðe"žG|ÅgÕ?˜´LÈOÜ‚d.ħm^­p$ló R"íÙ(ŠÚ‰í3þ¯6Ÿø§Ck̺òĶÎÙ€u'‚éwoˆ.<ÎÐoYQxq¿åæ®T¡„èŠôâ¤÷Ìì_W>ʇuúÃÍ­È[‡‘ü2²up¬°ÐÐùr˜JÁY\å…žaî•‘š//+mŒœ>­Ú•íØŠôÔa³>Pc`€4f-K6ÀFœÏgÓdÑEI××í:YÛE!µîÔ\v+5’týâXûÓxµ­QÆi`pqƒoè•Ñ« ¢ZãÈNNÎô{×^8±ßKÌxÐXµÉ}2Þ“6s,óÉYßÞ\ûÌk-tYͼˆóe|6A ÏàûQCÓî]¥þèK x´w'B—îÝMºE² W[¥SïÍ<{¸¦>hGÃÎϬ8óâ{ëZ‚–`ïÜ#Ⱥz5PëûËoöÿãã¨ÇdMˆœUìv"»`´ÎPÔÐõçûݯN„Þ?CzM2JR0×·Ý~^t½z8ôÞUo·­Iyì󀥯YKæMnkÉE+)Á¶´!÷½*ô©×M!fr„í\doÀ‹ø±[ÿ,µmMÚc/ÀhÌö¿_FÊŒË?•ب&b\«Š)ñÃ…B@ƨR™uÜyúw[@|´k –Ldp¹\ޝl%v(½ªÇ©^:‡sp´:÷¯Ç^îî7¾º!7ç:=³ýô¨ÿϯ™xµ'0!»&l;†-µ&åÌd±žã¿õˆ©šWø‰,ó½·-ËÅŠøÙYÁðt»yUjp‚þ·—ílÍ/èòT¡ÂÇìæ›onjjbæ=“ >nÌÌÌ$“É¥Kîièï}Æ>ÿù?Ƥ*Tø=À08Ùo´6^”´OPÉwññ˜zC[I±‰<–ÄÞ;÷àÿö95… N «Ã³TµG)ó˜ÅÊrfÓ{„”ÂM¯M§­FìS7-GíÖßoJ¦R×TH$R®¶ÓÅÚ§û#–â§Ú‡vÁc&x7´nµAFLcœÒåÊjÖ§EFRÔrGÜÆs㨚aC!¶’‡Ÿ]²ˆ%i^K±É™²>_\yÁëêÒ*}ûYÏÊÔa‡ð­ºtnA*­ÔÉcx*¡„ÂW¾JœSdÿˆÂ¡é`ÐfìŸd¾Ø1‚1T ßuºáG<ñr*í‘ò}J+ë´}=‰b>—Œ HÉpD¼e/Ê^ókñ"bÂA+a ¼\×ì´~`Ê×å‰Y‰ÂÉI‹ ÁÝMgϰç}´©Óý½Nþý {þ>Á,û«é…æÎà³ñ³òÁ[fLC“âÆ£/Ë­ñW¶@‰íǃïÏÐë凮Ÿá˜‹$¬Ò39S+?Zô¸Kˆ$a´E”×?°é%Vµ-^vU <8èVõ|'™“CÁˆ& IDATÖ}Û½º¶|ûêä¹SdÒŠÝjé¨CwôZŠre–’§ó­˜Ú—p®Ä~rÔ§0¦}ÝúgÖ亚 Bú°BÚ0©ªšÇlµüÙ£Ô̘v¹™,`d’Œ¦°kºæõIï¤ÓIëÓ9ŽW°&»4ÃAatM8}m;J3ìXÊ´¯Ï&ðäDŒ}ò×_m‰Ng·YUy¹Ý§ÅKĺւߥòÚ¦-"“gæ šÔ>ó Œ>ôP8V”ÅMüPQ2*ü¡¨(™ ú û«—.,?>~†Ïà-CQà7ˆ:ASFGƒèÜ ¬îÔVwjíõÈé¤ÿ†¥¥x†vÚ16Õ:SÃU)‘ãR9c4ª6¿ç÷s^bÊE-o®ùa~M³¿¯uÀc.èº^å’¨̨ËYŒì4àq[ƒØOèZ 3’šc³ÊÌûxîC^Üz6–€8J˜¯V5{ >ò'WbïþÐÎ3>¾Ì¸Í¢Õ„ù=V_|ô•™vSÄD`‹‘ ‚T«ªQ§w¾*/]y… Á@µâRÆ6k9ÔX|´‘Iâ·{íQK0•ÖV+ûÎXÒEj‰%NrèÖ•Ù•EŸSâ 8Vo ËG,²B8­ŠF8üÖ¢& ç†rjyÄ0²¸Í®å2øïQ Ž0졳t£9=bÔqNfª'ÑV+“„áÄLÆ:5%õõów­UêkÏß$¢ü.¼Ì`‹ˆ4»IôÐX÷A0ÔhÜPemYÄ{J‚H¾Õx†ùìÒÌu‹¨ 3­¼;î_V•$P´/çX@F[È‘ÈËû¸¶ˆB o§<éeµ"¥ À—ñ7ÞwõÏR~[¼Ú+\xØžÃø²e¦:ûôÖžIÃûÆPGHAT ·³Â[“~VîN؈ð¥ñ*2à fX0¥ b†,¤ ç²0±³¥D-”á£øõNúÖkDŽŸð®>ožÏ™2ãg5ïÍ5Ò긮3m7‰ao©%T¨qÊûÏZ“¬ÅQ>2ÈA›åD­ñªïM27/)€ß­:Íú o“$Šø=•ÈL…?=þJ¦â]V¡B… ‡c¡o±¦#{ðòÄÅ{·”¿¸Yé'PK¿°êƒ£•µu¥c#n¤š:CU“…§žKýð¤oöa7v¢#3‹[Í^A¢zbO$$ Â_µë\TŸ£hÆDV]oçRm0¤<'­×Úĸ!ÐDª,è$åÏMÌ,¦ÊªYƒhpL¯ dŸ=>7”=1÷·ÕºÓŸ^1j¥•g„§â^óñ×[ôýõUÅçNÖ_a’:ËÉ‘eùZÓ/‚ û<^«çÉb¦@¼^VéþLÍS‡#/Å; ¡ˆ)#(Öâ7¾vãÄ]ËÆt ÂæE6ú£Ý¼:{hØ48mŽxdT»h3Í©a$„ àª6ç@Λ:KO¬*µÑ}æ–•ÂÎ4Ž·÷ÝüÛÝê`‘«ª¾¨¡ •—²3ãå…Ý0çàЊ ¥˜S$U7œ&@“‰üÇÝõññ—›¦—DR‹~¥$¯IM–,n&—×Ïû#sŒÞÕR^ß.?µÃ’H/ Fˆ¸‰Ñ |;9hyúmWÄ/}õ¶è\Š×…¼s©vZž¦¥†púÓËF`÷¤u¢`šs€xg4xw°ô-ÃsÙhs$4Ž!€DtT“ØÜH†dškØßõ™»Ï²W^Õ½‡Éö°âqj Häþ3U£y´82öPWüÑûQ” ZB|B ÎõÜœË([[Ïeëô¶‰€ ûÆ–BÈ+/}€ª¥ÒÞè‘I"‘B몕/Ü%OÁ…Nƒ*|Œ©Äd*TøCQ‰ÉTø  —8öü®hd’¬²:eÂÑïÖÚêÔt{y/öi{^ÌXuÏ»È ÂÔTÏÞhÒ½‹çÌc)}42("(fÝ T ãèØa÷L~v*¼ŽˆÞÞ8ÒzꟋ«¯»ôÝ^C C "I—šN3¾¢%œÌ©ZÍN?HöL> Å€R%R“@V4„À­¤,‘IK»`*flñhu¸VçÌom,¤{ò?Z•pD:«c¸ŽÆ5®ËVW©y|Nл·«­qYÁÆaÒDÙm6“ª¤Ž—«R²í?­Gã®lÎX–6b&@Úé±,·1’`I£,Jˆv9•!—ŽFâzk¨¼ý¤û¶Õh:UÀóKZS˜¥C2JúõD[ÄozQdÚ¥L®Œ MÃ&×(Çh©O ‘j{4Êÿj¿y ÔÕy«Â‚¯@µùª&#Kº¢"¹K“Q2–"ÿù5K÷ƒ´¦hŠš]lw_þpºvµ¯üÙu£W¾ HÈÚ#Žä€ð’sAbžß­’±óE ¨ß5?ˆˆ[ ”[›MüÝK®®jåŽuiŸs‘Ô¯þ!2äÃ"^!¨Æ³¸£ŒÒ®y-ÅUþì«#U#IWª %ÒÊ—Lf\P_¬bf£Œ¢‚¢†f!Çy§X>.†}ú\¸ìR)äǯãOÜ/@2ozáDèð¶5œø³;K~/B°gÄs{Û´ƒ6F“–WatÖòz·ë‹×Æê‚85êÊòĺÖ4Eêñ~÷:±½ fÓ„,ª{Žáô ª·öÓ× Ýð{*z¦ÂŸÿ‰˜L¥â¿B… *\…¡û‡ˆûo”8V~úmwkDôØEŽÑ»ZD‹ÉØßÍÔUi]Íóy;,-onNýüD ¦Á´Þ2È‘HÀò¼á0ë‚üùÂÉ! }*ÅlµÕ;¯r&Zq™. =Sþ—=+\·ÖY6üÚ¨ùú+Ï8®2Y "ú VPâÖº“x¨IWPI©¸£)4sr¸f ”P6TÈ¢RæY“¼"’xöP•qß%ìM„æMÉHÐjð4Ú×Óe¦ñ–ëßìõ‰liÏŒñô©qÏ’pâ ÓÚ—ûâ3â­ÛT×" è¸æ9¿—š*z•rnß NMžZß¡vuÌo¸ßÈ„ɉj–e™4€Œ¤Rºt´98Zýüµ3Vʳ{’[ž9ÅtwË( sF^F¹„\ÕãË2ç—à´‡—¼°—{b›ì¶áO|Êô×?L¦nî4î½ }·›ŸIà†ŠÌÄçntdöžx¡Z¼$ŠœMbÍ.}}‡ò?"(}w—§‰|¼ä¬¯¹3’XR³H iSaÿl`€”Y¸G_ÚTl¨FŸÚa€¹›PC©è„нßòí»2óNz—@2ìkÇõ?»[' •AÅaÌ ‚Dò+š ÃË¢UhaEv§F'¨‰"^MKº®{ÅÎH,¢×;eTI3LŒárCAS­Ýó¾Ô#·ä3û _ºIî>mžôbfÛ*ïÌp2¸ªeþ·f,áXåÀk-ír§²U±<ö¹³sO‰g»íëx÷YöÉ=Ô£›Äº”ÈÀH”Ú´FÞ´x‰%`rnèÔÿÏïŒoš .|µ¾Û*ü)RQ2*T¨Pá²ÔÕÀL <®ùG& ŸÝ˜sgºeyñ`ŸížkbóG†$ŸK™3Pº?g>[ëÍnlñ§EÞAf «ë4P ‚š9P¼5\ò8²;ã‚DÆ æé¼%Ÿ¦²Zm½˜‹¹ ¼0à^å-ÿÕ5gXJEˆ2¯ÚCWž¶ ø(pªYS,¶ÌêLs–öÙC®L6mØõQb8ê©—Q’2À:©,%vÍø¯†®3¬Ù¶* %bÌ"=§04]Â|÷ʉѨõÍÓ¯IýÍI‡™’"þ+ùÞJíK•Hûâ3ʲµRÇRPQª€{r`NfTUt-¹ÐcôG¶æŸÚ1ßÑÒ´$ÂfÖݵxºÚ'ÆÙzsÊBÏÈÅÿ©ïxÖ”,““Ú5!,™™—pÔrâƒí§b:'H$ð"Y,ã`ñ2ŽiìlIKØh¶mÙÔ |ï‘y›2ŽQc¹ù'kÔ…¡. ݽH4¡›¹ŠŒ©ð1§¢d*T¨P¡Âe±˜`röü“Q¬«y~ËåuŠÈ¸etÖ Ì{dqŒÞÕ,=ê ûÌ×´IK›Jé²mH±2¥â+¼N‹ae¥¾Y¥Ã‚p¬^TöÚîÙ˜–’kÝéZw…~átýŽ3tˆ–»šñ°Ë£NE/[Ñ!åtU׬%#D”ðŒm¹³ÿz¢õ—w¸gŽ‚¦OV-œ}»È:J&‡€9À0a^°´òÅàñÿ5uÏçÄŽVª…q|¤'oOÕ.?7lÄŸÈ. M[Nož²n£å '.ŰØùÏ>A¿³ £§¦Wß¡)*'gÍ¥dq*aèú‘üÝ!DÅ–Zò›_µ ©Ù ?;•åì¤Ü3eé¬Ê+š! ¼ 7² šÆel420ÉÜRW´PÊ“GÚ]Õg+ŽÇ|æÞ-!Œ×X(%ÉTe¾Z93÷ãç7—þ¿—h·‡€ÞaøòhW'hXÚtÎôy> Á‹H)ZxºÛ½¾‘âž4/Ý=ÚO^Q 3Cº«‡õÁ¥ù#“Vœ¡¤‚Ð7ŽÌÊ Žr±ÙÅ·„ò›pÉtæiq¦N¤«® Œôˆ ë‹æàý‘­¹]‡¬û†ð¿^‡ CX\ñ(´sO·\ÅZ_=bý Þ±¨«Ã…u‘¸ÛRÚ>мÜ-ÔXJ%‰<=¡%læ"‘ùÎÑ5,ïÕ,%»?tÞ«vPyQÏ H½ó8Vs³76YD$µÚ/aL΢FïÖ7¥³Aír}ª=5Ó›JÑ!çùëΰUöR"Ç~ÿíÀC˳G¢çÓ“9ö½)2Œf¾÷ù‹¬–9FHòìÜ Æ×©ìñ*|ü©Üå*T¨PᲘM¾`ßûâaüŸ¿44àhuËòä³C.rûõ8äGnÉ M2?þ›v[nkÜvç(ÇR÷ÌTš#ôŽQâó}­FŽ—J9¯‰’œÌ|+ÀdÞôjO@þÚŠY·µ$jLF³e4K\¤jav б}DLæqÔáÀMºf8Æöh‘VWÿ1C7Á®àÐþ®»2\Ð;¥‹çà m“¿º³ÞóÌ^ï–¿AOöçl ÓȘ/\YZŸn¨Ê°¿|ȱ¶o•.,"'p'Œæ€bu‚++ZúúûÍ?ùwONÜiºíȬ³Š,¯®Ê : Ú•¿ÿ5+gSh•×d±” çól‚þÌŠ±x«îÎec 7!e)6S9[$-°ˆ¡qX)§X—…¢ŠNž´Õ„ª$l¾D^œ@>ÚÕ*o #šR-΢ZN2P<TºûPеþþõŽó¦.1^Dâè³–j¢íÁϱîíÉwsM |K°”V:‹w¯9“̛ƊŽÛ£¿:jágg¼¡œÙr%žqÄó®V9ä*{â/f—ÿ [EcåP¢ÎÐè"2’côhýÒ6rzœÿåvÎP¨f~M‡ôjs¦¼ˆM™FãÌ{ÓLixhã§½ÍÎè×W'¦ ; ½c¨ÅFIëãɢåµ3¡³IÉaCk,¹jRþűöOu ±ÔE¹jѼRå±ä…Pˆ¸¥}öû–/wgzd³©ìqHu5À ðâû¸¥¡j}ÙÒ1<'‡àµ3¦ÜQfÝ© K4‡|só¬Ç&Œç-c ‡—^|×:®Y¿µyÖ½˜ÌÛ‘Òã)äo~ßftµW,*|"¨(™ *T¨pY8fÓ€#ø}«eŽ9 àh¥Å/îï^Ûz‘ÇhK›J¸Ùòô>¹ŽÑ¯G÷'Ã+²1µœFúÇœ(ÍÞÞ4É+ÔÞ^ó,‹Ô°ÜêÔùüŒÕ¨[;„zg–AU ±r+ f!+ÐA@ÅØ„­C$F-brÉÏJÊ Þ¤s9ì–p>Ʉܣ½`µ¹£Ç“ž.™0{§Ïf½á@1!!óíÝã}ùêÕ:e[btçÖõ«¨D¨åòkƒôG™›–fÞ챿7À´¤j¯´ºQ¤#LCk1+fˆÁ¢Ý¢›×o{4tàÕ¾=·ÝpQ0aßôc7ÊaŸtæ4rÍJ›$Šª€ ‘£y<–a¶ÖÎkÕt#ÿð˜v.´B…=%S¡B… . ÇBÿ‡OÝg±k—/4“YQŸzöH¸¥`r[.’‚L½1üÖmý31lÇn–¼\ÕÍ‘|cÄ0Aƒ]s› n€kÂt=@ÆNør²¥%MÙé´nRª$”" ƒ@ VÄ1ݬlzÖ Á^8 $8 C:eBhgÜᥠI å² Hçá ¨ÉªzSL•³µ×¦Mþºá½8˹¦ç­–©ž’ÅÍsÕôL)•eŠ1žœZwwÝðPü9û)¾ì^ —-ƒyû”ïÎÎô²Àl—;3‘p~ç˜_”ß?UîXBͰN»õ)]C:L±Ž£Z·¯q ao| ÜvϹq^8Œÿó—xpX„ÙY¨r›Æ¢9ˆeÙ[j²SI:äš/Ü— TUTH2Náâåës41t@çņ—ï>dZ}h4pOä Cˆ2` B˜@.—qTãì†ÉÅ•â¨&‘ 5âɤf«ôü»††Pç-žÍ¬:E‰:>áH2+«²_ºnº»GýñóT‚óYÃ&“Û«±%Æâö÷ã®/mA"?˜eîZ66>Š×¥!–>=N>°e豦Ǻî«íŽJ‘@éº.àËØÐ$³¿›‰åض\íSº¼S=…P-?«ylØ"™r#S̶e¢B¨ÄD]Œe¨ÿýº AÐû®Qí&òVšŸœ)íϘÕJ™©ÒýߤL¨‚chI%û35§Ò·\ì¼zd)i…Wªqã&&ñÞˆ{S]rmxžë®{°käB1“Éó·“a˜r¹ +ê’oï³ë®5½yÌHJLg;qw×äôt9W@æ•Ì©1ÓúÖùK˜Ë(#MÄ—n¾Œí7õM‘a‡²ºùõ úËí“—ûÎÍœúƒ—ñë›Ñ¯ö÷sÙ®PáOŠ s… (*.Ì>ˆÄeä§;‰nX¸O"pÍÁǧÜM¾Ì…¯¿5Üp}U4hËùœR[µÈ§àà0ÒàÅ<Ör™gL,ÚR]Y¡~zØK3›Û2›;fí&ÑŒ—¼D:ˆ'ª±Y’õ@@PD%§U8?Z”Ô@óú)C"ä’Ág%¾ Ê#VõЪYtÈæ :ùv¯c}CŠÀu à ֡álrŒLOê8kŠ—| Ll¸äoa³IÅÍb†î{?³ì:{“ùõÃf—I·[.Ên¢4É#%ž=Õ±„Ìnm<‹™]¨Ù†œ­ÍtØ¢.º(¡4Ù›‹æë,Ù:gê¢î©›Í¨nÐ;^V›Ú€ G&‰*4†U £ÈëNVÓBÖÕçû¯mN¿ÛÏ­oÍ‘øüÆ1t—žKbv[!¡&™ áüF&ƒ0;gÃëý3Îü¬Ž2h€Ã€< ×™³ªšPcQ%C˜l¨=(h(“1b=2;®»³: ‰4þ×ORÉœ†1\«_zý]\àQ]G?‘ öe|;md4“U~vÜ?kjôÖú¯¯/oŽ”%s%Ë—ñíý¾»—D9Z€Cƒ¾Á’ÏÆ¿¾¿ïZþhÜÏ#z:y÷Ú⩨sD¶Z£sS" Ãç’[#R[­Œ¡0ÅžÚKø›ÜÊÄdÙ¬Æf\/À™1ºlqšHéù—EEA—Ô«·¯ã1´±Jîj6¨­F,-õC“R5Uî>­ÝØ©ò(õÆôÒ‚BÝ>õaðjž'ß57PŸ¥thÄq}KNPÁa*â¾kÀa7U]×ÅLV;_,ëa“rx”Óè‘nÅ•/ß0ÊÑ †"gÇÐÖúù/ôgï9ïY™€“#ηN;\™Î”˜fO¾Ìôúkc@ºãšlµ]þù‰À_\;u9‹êDûÎs$‚aù™+•lU¨ð_ŸŠ s… *Tøƒp¤»ÝâW¼V¾7îKºjÝó&Qã)—¡aGrîGŽQo^™©›’wáÖ6Øê‚ã5^$ÞêöÆy"bSß4ºèȈ@ê"È2˜‹Ã<ëB‹Ó`&5ÉÅ2 K˜(DCUQ%Q,¢RÔæòP·5è³B÷p62fÓà™¤cþ&C3œgßÁ 1]QMCº¡¨†aØ{ÞÕ^jàTlÝyo êÃ7¥ŸÞå¸ÕªÌgq–ÔE[yXó¿Þí² 7\§&‘.^1Êå²&Nx<~pPîÑ`m[9ˆÇ'ãÄÎ#t[µÒçÜÞÀ`9©c©À>ÿ´ðÀÃ;Þ÷<°ùü¾™cÔh^u`xªD¥·MH8.¬À)”WágL¥T‘µ]ºh¤Rq§O ¶êâ)Þä€6פ™’wDÛ7y†½,‹uáÌÚê˜$ªœujy·‘Ãü%„€“¦ƒ§ñ/ÝTúùË}kÔëV«–jC3ìOšÕ²FÙ´¿¸~0¥Ùrª¡¶ÊvïÊdØÜ®ÙK³-¹c¤f0ªcÍØ¹ÀÝö!óßÞ4 gâ˜Ç^^”öóô¾sý_óÀ«#-ÿ]~§ÿøEÓcôºj¹®VuJ'y¼lõ¢Ä“oлP4|tpÄž„wzPÜŠùaÒŽe¾öàùý#w”ÇÈý–ÛºV F¸ý㬭yôArpXûÑë´m»•”Wº¬ÉÈ$¦ùñŒ­3õ°ÒtšsX˼¢u†¢fJúͱÈÓç.ª,” ÎJ›­b1>Ïçd]Uê­’*j‰,í±‹F4‹(0:kº³µ4÷‹_Ù2>·ªöôÛîõÍÂWï˜w, 8œ ²- »Ÿ:؃ÿÝCåxÁÊ—Ñ *Tø$P‰ÉT¨ð‡¢“©ðñ@’b 9z»ý:\ØB€Àµß>î $@¨;^wOó$GÏA"qÃÐ Íÿæ)ìÔ ­«Ø© KGH¸¾#Õw-«¾’Oî9ܹq‘¶’S£¼¯ZÂ0I(•ŠÅ\±TÕ¼¨"Š4ȬÊÛäø4Ñà§Æ&,!J_í󥜹i¦\ÄT5åäƒ4/`ù8ÂtUcR1<;fb³[+¹@Jå`f¸Qμöû6t¯Êa8–÷·ïŠ^;¦s›;G³‚Êó‚, †z^àÙ¡Áž3Pª_®ª[|;9Hî9F(b1é$a€æõ!8©?½K¬koí¸èuDÕ /ªù9-8ŸÂ¤!˜MÉ*¥¨%7•u,,•1k<¥IÜ6Rð¸Bóøë³¡†€•*Õr™=™f ¡kÙDN£.ü ÅÄ9öéxFcì ñ÷ìZz” —J‰7>ðeKØçoNŸÅϦ¹Ïo.j@ˆ7O(ž[Ú¤kóƒÓ¡Qó±A4ì$î¨=0g ô¼úRTl× ý ]³Aû|ÊÖ©1wµY­äø22=ƒ¯îPI9•´Z˜Étµè­®Üé”[4Ì6}ém@`ÁdÝáwÒrg•Àbâö=ê¯v¨+[±Žfä›±ióšõV»6‹\àF@àwkíuê oSgbÌñ7‡¿þiÜnC,NGmy~x" Œú½ «äOÁ10ÒºmYuŠDŒÞqû²úr¾¬€+‡lâ«§Z·›DÐu]U5Êî‘‹YA$ÞêñOæ Î¬TUq5nýÝSTmÐ`Iù7è[×ÈðÛƒîeá•£ÞŽ¿ª1Ý?fùÅ1W‹Gûܦés<‘ø—}¡­õÅ¡¤¥ÙQ*_F_{—˰Gîä9ÖòxÀuQkÚ þä¨Äÿ"\ IDATd*T¨P¡Âÿe‚>ø›_`l08ö²uâ,)5Xr‡«±÷œ~%33kô•lé€ÄòØPorh€æ(†–Ec8‡×[倃g)ÙcÑ’E³Û\¼Üàç ¡ÄعBJa¸ _W4² €f0îcCŒ4[ 8Ðt³ ±™1kvÆ*ÉE•»LYU‹MNš†¦&u€Ô¦Ï²Ù¸{ä›:‹R¤æ¬"#5+¬â?õÜü™¥"ôLÆyC‹Ïon)±Í5±%§åeêFºš³|=ÒC?õ×VªýZ]µ"w,žvÝ2û¥w½ÜqÑóŽ’Š¾ÕgõúÎc¦›—/43àÎ!&¢œÏ3y.Ô$YC d.¢SRÞÙvaƒ‹7¹ûúKu×`}•V–p˜é±É)ÕQß>ó.¢–ϘZ Y0ýàÝЃmÉ%‘ôÍpö€yWªFUˆ©Xç) •½±’÷¦Îäу³ÛnÔû'¬Ïìõz-ÆÒÚÒœ7· S‡Ç¼«bT°Ö¼^ýu·ýï¶Ž@,‰wD ðZKµ6m@ ‚vÛŽ=ùûnï¬éc¶Ã»lƒ—^&Še”¬Fg© çü úÀãB²©³eD“/ý Ç÷ÜFÿËoËmµ Ç)Ãåš)Éu§«Ÿ²ež|N€®Î‹öE½#ð©›„CSr²`ò:„Cg8AÌË ·¥ôÙUãÏ ¯ɹΞŠÈ#¢Ø«y¿ïËßÕžË#6G|Ϙ\U_Ü<¼EE”/£¼HçÈÑC¾¿¼af6Eþ?/>¿ºpG«Xeç/œÀ[½Ï,É4òÿs_㺠ªÑø2úÔæõíRWË|ì«>¨Î&ðsÑ¿ >!T”L… þëòýï? =øàƒ ^ß½{÷‰'¾ùÍoþQfõIÄ0ª:/ ¼€y¤PBA‘i åг)¬Ù[)Ñ(á­³¨ë2`3i­µeàmÎK7‘e¾»Ë»ª‹;qFñÐÙ—; à‘cËÕ(B+Iø"•!—"Pn«’-£xOÞª–†ü+€ô.Ã0Ó†n°™(VÌâù¨fº¦†AšY÷hÎ`Ù™jülÉ옪) GËè¾è¶6òxÜùÈòÞ«™ƒ‹›¼½3¢ÿ_×À¦‚tlÓjaU'KâÝgñïáíµÚ‹Í?ù’~g °@̼1€o¬ç×?nÚ°Ì Ûseg]ñ$>œO^z^R AÀËÏ–\ž…ÃÊm¦‘’fÑ †ÀF#N‰¦qŒª›~WÕ¤ s#ôÎLZÿâÚɹ†•‰41”§V­¤Úm)™ ÎŠî±±h)>z[GÆã¬ÁøíÆ£÷eV¶âñ {jÒúöYw‹O,¦°£XçN¿x¦i]5Àè¬å\#È"Ù,,%7»„&‡þêQû:G¾»Wëêo œÞ•lGñ¦%¦…I_4Z¶âRZ·¢$P&ww×ïÂút- XMˆÀ”ËÞNÏ0>·¶þR¼³ÚןÈ@"s™f?|J~ô‚cçS¹ÎDÁãÒaÒˆf¹ÎšCŠÓ)àüà,%vÕø[½AÐ=Kj‚Hün'#G‡6x•M«Ñd.ýÊ ßC뇟=\£‰Øs‡ƒí‘t1&h(™ŽÔ¤ÂšÍ£‡t1tÃ0 Ç 0š$(•£ f®¨q”Èx ˆ)S’;ºô×ö!oî¶þùW¿n¤£N2Õ<Ç´öâ¶í?ÛX‡r¬x³§ow¶ C›ÚÙ…b¦ŸD"† Ÿºo¬ƒ'ŸW6]“qre–2°ïf(Ajmcz¤†e ¦?ý‹7±GïQ98i¬ÇAž|^™3#Èýë5è æNÍØ:k â-ϤÌ7>ç”=KÉ[Úgž=\“ã±íƒæÏte‡úƽòÞÍ(¸m¼—“cæî%³ßßгš&’ß{;„âXÄ$†ñwO_X 5çˆ0Ç+Ýþ{ºæ¼ÖÒî!÷†&xy¯#šEÙš]Pñz4³x-M… c*J¦B… ÿåдW¾é÷û{ì±W^yå«_ý*ÇÍ'=þøã=ö˜×ëý£Îñ‚¶…ð/Ü%^ØLæRº‡hEʈ `¡&IdéïîôþÕ-q]\ŸŸÙïóŒ¤<ŸK>·òý÷º‡µÇ-ë›ù¥…E7‹yó_å|eÚÆ QH¡R eÉTΘJ &;&#lÎÞàØ£ë†.«:FàŽ!j¾¤ ¢2Ó‰ÔlVVßIÐNys¨}–#Mâ̾hÀJ×poF.˜hÉã®<-×¢ˆ õ½XW>ÊêyŽ1öœÅÿåË|,‰ŒÏr»’_\òúl$n˜Šb!Ÿ49 «j3íö³ÿcðÎÛ›'ݦóËR"l&!Ë[l.±@Ép¥xÌTõ…ž¸çZ™\¼–׉•¦³ÉlÃŒ¨€¡¥\sôàpÃ=¼&Oó¾Wgj¯wÌ´¹&'ÔšqÕÍ$Ê€XÔnh3n´ž¢ñåÝfà ¿þé‹2ß<.xô^ãÉWp@Œ®6­;ò˜Ô[›Î 9œtK0É2‘çQŸIñ|Øåô$±²}>âÄR²‡U:ýâ®nÛ­› ;ö¨÷ÝF0Xy³½o?߆ÉM-äEb†FD!IDïIÚ:ƒyŽ…Ž´»Wë›"7™#¿HjY"…üö]äŸwí•«ºˆÑ*2y€ùíîò“/cºô®vƒc‘®Ìb†'ŸW6¬ÀrE¢: €×Æ'κ ¡Šù÷øÄ…J #n4ßÖXê‹ÀíŸnÐòÓ˜\€-Kb¿:züÆÑÏ,M?sÔ‚± ‚"“¼muÒc¿(à6^"ÎuÌ<5æiñ–Ý6þÜú4;ùo¾R¿µ&¹mÓ"Üc€¡óeäÊ¿¤*|̨´€­P¡Â-²Ù¸Íö¦Ûýf©ç8îŽ;îxóÍ7:4÷îsÏ=—æ›UøƒÒ0®Y¢?õºù Ç$²t4 __rúPºêÒ·¾³Ý3'c šm:NS³ XRZScl\)?¼99¥~ü;ÏÉENDª¢Lp„(hŽÐ•g+3N»’©Ì4öõæX¤tÖ'L‚Äœ=í÷çì Ρ} ã’H' F‘BÇ&Í4<Õ†êÖ–—l¤½6 Qˆ£û-»ž!û{^=mþFçзnˆ~wúËèRWÕIE±ö;¾òúG¿å^z‹Ý{™@©ÅÿªR ¶§½F*Mrt°»¸oµÌ±F]¾i­ö¹¯‘̵{¦5ׯ”ÍD‡ðe—["^CÝD±íüB–¨Šìx´p0ßyœ¯útõ« ù@[>ŠšÑEWr¢TFZ—¼B.ŒWË­»í Æú¹LxÇ7„;~Eµcö sîÈ€º¥[ŠùËa_­9*MN[7í °ç‡ÝgfÙ·ñ…™9R°¹%Ü4@×Ñe§ÞªðfÕ 8,ëj\] áôD….œ:Í¥ãÜ4*˜üíýªÁ°-Æ/Å>½ÒÕê.“¸*ɸJ«ÅóKc…Ä5ÞgÁÔ¥•Ð&ˆž~æo“_ìã7J5ì¦èd±%™ueæ¹ã§›ÿÊsïnLìð–St¤Œ;iÌh@é¢Ìä,3]³ÝÔœÿò Áû¶V·t¾o EisÎÑÒ¥)Ÿínª!^T–KÇD.¸˜Ø­8ñé±Ëá.0ÑÒ¦[ܹ9R,e›·¸ÔnªÌÒ¨Éz£}Æw"×߀åçTøâáÞÉ¢ëNj~‹¶ò#¡[›r2Éš¦ùÄëÄg>"5EÕ;å7©‘^>jlqøÜºÂ9ß^pŸdϧ/¢€™25£¸*N Év'åòYrÌõ¹~¦Â=?à{¤kê®ñƒ„ã+9†“\ÔÙ];&±‰Céd‹³´&f(EÆu9WIl6‰uolOq׌¢§Á™š·׊§×ީ״æ»^‹ˆsšÍ眡j™ñŽ»¦˜–9Áck¸–1ÎoæÆLÔ\´ÃúòÿÁ‘°›…—.Ú~ûît,øAís¢ë¦ÚJNïè¨;Ï**ö¯ •·.¸WuÛ¶¨Ðèɶ¸2A¢r>íšDM‹RÐAX²F†(±U™òqÊJßÖ!=mt·á@ =ˆæ!®ã¼ÓZ3¤¥¨¤£(»´Þz%Sâ·lsj…í2_=msliŽØÍ.4¼¶ÅacM «ë7g]L¶¡Þ°(ÂAtqØ"0ØÜ…­ *Ë¢ª2r‹²Î≰¦äÏFGW©]ñl¥csìwOñ¼Ës1GíG¦Üg‰‹GM¦í¤)©ØB™huqÚÝX;:Æš ­R~¸l¸¼˜w2¤t ³iwºÂîn[A&~x*P¬Ÿº=ų†—Ó_ mM\Çœp .Œá—ÛnÖ©óoŽº s:uþm“ÏO57A€®ËL¥…ZÖrÌî¹ç¨û•ý+³Æ];+Ïz.L¹6·”®þèÙsÔ_þâz& KÈÛÝK—„†xN{õœãá —°¯fohz´ÒWW²~¶ônéšœ4ž56·×Z¤‰yú¯žuïíV6\¥8 ……æ™N“æìHqèy °2SÓ´Ï»qy}þ=–±þ‡{*ÏðÍãÍR&:~Æ>{ÚJ´æ#]Þ‘Cs[Â1D`*ÉdÂ}Q\0ýã‡+¦ýélß[KM¬|`‡òüÁj8%¨ ”"훲^P>Üùì êë w­_–Ñ7·6·²ÛXÚ7\ˆ´yÅOmÏÛ¥&`‚N/¤ð‹³jªˆÆ2¨Õ¡”+Ù®nÇîþJ¥B~zzõsà6Q·â¿ýVô+á#ÔGwüæ÷‰ñ<÷øâwV_”}^œëz´õ¼¨PY"šÈœƒ]zÙÌéN@ h4ªJ¸)Œ{V†¦øE…š5sXÃ@°h  ƒ£Ð*º@ïi3ª5ºñÕÆ;9Ò$4ÍÆ8dhmò… Oj&åZPÙZúOw¥®ëGÖ4æÛ³Ÿjóq%øÐ>ñ›?´Âú;ÄL>:G}ñ®ÌÉ™À=›«P-[{ø•±™¼êJ«ÎA)¥«Mñâ+ç]ŸØžúÖ[¡Î \2ú{q AîƒáqÔ¹B5GÔéµ+Ž[·2:i'´*c¶éÉ^µþ+IVs%wâ––‹òÍmW|çÚeâ¤n0æ“ÿgjÿßÏÇzúcwKû¶Ç0Šð»lg—1’§ÕQÍ=Zk¡ìd<[Ø­"©4oà$ð´šð–Ú¼eIgÆËKÕˆƒfW*á;•„_KçÈOT´³ØÊª™KUì™Íqo½K(šºúW/b·oãhiú.çéϹ)XJÇúðsÙxfÅx:¸TpJÎJO®Þ‡ªÚ1³s¥æÐ-¢#7¼J'Kœ«ÿìÿ~wÓ'‹ï$ÕUáq%LüD%©/í¬¾²Ì¶$ƒË-GMÖáÀeRT‚µº©›ÔåPÌGÆÂiýÒ-£<óAK¤’μ´Ø}Ã䚌Y{|ÝI-_&ž=ê(T™û¶VBnéä¼·Á©ðŒzqÊÖÒ.ÉAÖÂL>NB‹VP÷:\,R$«R¥÷o“þÇßë³3†(X< ÞðX¥ EÉ•éy¼”3âmnÒÒÖRõ,Ư •'…®¶õ‚¥ ÍÛ'ŽV÷ù–ÝöuEͲ,o³çòýÍ KåHEC¯Cé¢& (_D>7jo‡§ÍYÍußNiï&BÄ*gohq,ÑÚaku)¸&Ý×™¹§}¶?œi䃎ªÏ&F9㙓\g=¿ÂŒÎá]>õÎþôÛ“®=QiUåîÛ¢«e±J9ÒYY’©áYâ\ÅÓj+Ÿšîk,'CÅ ÓÞ×/¹q¦9z£´—ÓOLû¯6k¾ê÷Nb=-æu;ØÖ©óÓO=»¬NŸ"êJæŸJ&“v8¾’HÀšKYµ ©Ô4À]x’­"Žwèï×ËœñE½ùáce6ç¬RŒ¯‘10Â&›Ï> ƒÅâK~›Tp®\Xè¸eM{*ójZ|»Öù½×‰7§Ü›ZL¦©qk·÷3Âÿð|Íî3É:Ô§ÒáGïuH秉ٚv¾¾°­šÎ¼í)-Öš¤!HÜð•W&ÉVß¹I;ƒo½cîëSƒ>ÓíÐÃrÀ£Í,/žÀõ>­–“Ÿ´]üîA+æ…C¿—?;Š?µße¯"*úõ¡ï=ñ‹ ž§ún‹ÁÜvþ¦5Þ¸+}ªØz®ØÎ7åƒçªµ+h&=“NôúN®5÷€/OñF° Ŧéƒiÿ÷ùWVöŠonWLŒ¡¦ae ’ÒÐ ÕeY #:b. Niq7¸Þ²{)™ ˆ-ñÕ~%¯ö‚.ÏûöÛ¹“80ÍWD²-!¼1æÛÖD®ÐÛ;¯cÃÅ ybB¾ÍŸöõ¡CãŽ;ŠXíòTú{3‚hML[Ͼ$ŠäðÏt`1"ä] ô*É;,€Æ&Fª,©íÛŠóßÖ8¿`âÅ•Ò ÷¹;s×\‚·/.•¦³ÑÙwr™jdä Ň÷n(›.ÉôŽâ&ÇPMY­A’ÌU­ùutp©öF÷…SYï>#“µ~÷«úÿeâêd¶«ÙÜR* ÔKc(°ù­*T*º¥AÜÞº\Õì¯ÍûZ}Ú„a{iŒf}÷‡šJ/O…ɪY«8™þ®é|­öEK'¦ý÷n¹N‚YsƒµœB_=ǬÎÏ u%S§NŸ&'ÿ(ƒbÒiA€já<ÀmÿÚCû¹¦RC.ÇÆ‰Çh·wä^Š}|Û,G+ŒTïí²!÷Fj„Ë=¸n‹. i-eÓåÄ®¿œÏ’r‚ªe%nEjâŒró}q×ÄZó Іªáx„™ž~ˆ'f©'ß`À2?v» ‚‹A^Z/Q\AeË—fñí}JÃê}êdeóm6R^¤«¤­eéLO^‰M‚ÕìÛŸ¿i¾I:;Øó(” ÷€þoÁdq1±+9÷%ÜQ IDAT¦õ `(l]‰¥«X5eÊ&ã%¹¡IÕåÀú»•bUŠ­ñîT¨Ã.x!È k´½èLäí!“B˜4zª ƒÝà\æÚPÍMžÁì/ÿþ·èß|P à÷¿þ͇–ÿg`î™…]OÎl½'1 >Þô½'å° ½·ÜO,üñ`[ÛqìmóÃJãˆÖ4_µL“DåË/i4KMŸ­Þø@p ÀV+4 ¿T¦£üè»ùýŸ&#y±–+ N?+IZX^É¢ÝZQÀœYöc)Yµfã͆™Ó·PG}PÛœ·Ò½€ÁmÁKï·ÃsÌ}"€ž8ì„:|ÂÙißd™¼º#ä•W‹VíÎÍ®0[›RGÙDCuY —>›-äbòÝÎjoEõïÌôÜÔ¼° Fó»¼m£(VWjÐÖe§cgÏ×–†r”Ͻ+X[kû#ì|-°ª¸ÏÒ~ŒïòU{›Å[Ó„"DÆ,;eªn«Æ ¹•\ì4J¿ñuã·£«ªóÛç]-NýÎÞb2R™ž3¿÷Œ6¶ \B_}áƒdÌ#)ö£í•/²_¸U$ì뇩‡÷V8å´qfÒ“ßòá4ÂH f+ÄTÖþ¥[–ü.A°3ƒÌ_=Éw7D{Ð%¤'ü×­–‰†¬£§¡¿çFT§ÎÏu%S§NŸ AèíýÛ³gçàÖ[³·xèзÛMüè¯T<þcºˆÔù¦)XÜ¡2ß»Øò™ë~P¦,NßXåéÅ©¬ï{Zöw•gÍøæ÷Q2ã+ f7n—äsÌÏ_GÆe*ÉQÍé,Ç3V—ÒÖ¤Jô«ïp–e~ì+ë4¢Mv9µžÝ4²böåÏÙåÊæÛyÆX“)™[œ4ß9ß~ÞtíÛûwX@¼TƒKir—›wðÓ5ƇÇûB…ť؞Xö\ 3€p´êk¹<ÜTÜÊRyŒØWàØá*ãµw×WýU’É;#yg„ÒZírÉ&‚¥q ÔXÏS'ÿ×竼^q›™ÑŒÿÈIâ†]ÄsÇløYÅã0àtŽNYM~²áå¹jû‰r·Ûlzôñø¡×¨sµùÛ>ò»M“ß?æ{þBxw27BÇzñM®Â³„$è,GÊ¢ÊùÅÙZß­k#¡‘¬`”­’O\|N0xTN zÀÅÀR^4)ð}^5j2²)"ê˜/-‡ïKŒ•ûé¢ÿ–øå•×·úßWÆ Œñl–xÖ€ÇoËN.Ú^¸D$Ùêy_ó€–Pñ;goìÔïì+MÏ3ÛZÓßøÇÒ¯|Ò’h_…o q‹µÈ¡²09×ѽtÁ,¤k 01'S+dpgÀÉ9ßx#•OÉÛ¶qß|]~øÃ®a%0$øHdÅ9)áÕÛ›ÊdÇt‡eª`Ô ÁZê‚Òå{‚LN®zmÍö×Ç`w²ú'¦/­¹ûl˜øÚsè«/È܂öo™Yqt…åý}9"¯³yâ3·(…ƒ'¦C÷yæÃöbmÉà#~Œ&ÀP´G;Ÿ<ˆïí¥ú»Ô›wŠ;úP*K=G­æá†>½-©ó¬ÅÑꮆòتë½J†ç`%gÖ»Öùù¡^'S§Î?õ:™Ey<žd2™L&[[U‡#ér݉D"‘ÈÚ½½½õ"™RY ®Û¤"謑@½:ݸ9œyöM·¤b¿tWñ™ÁÆÞp)æ)‘@^öh6ÞMé<\_¢ŒN‘²ÛßnËh¼/U/%3è:\»VÃ-£L»]S«Ý&A"‚tùÜMMžŽ„ÌÓÒ‘ëÌ%ÆÍ),-Àô<¶»ºÜâYÍõÝĘڛ“Ážã/¡í°IXûîäø\KÖWu ÍÛûŽè½;™q^5ð„ ¿hPŒÀøl¸ ²Fjs_=ªo¾†}öörw³þ¯ðE¶Ç9s%]ÊÀ ‰¶•y… ¼Xþ÷›†\H",s4å:|Ùå‘qõ?~–MÄ=aÈ|þ4w÷VAEdwz°ÌfqLÛ¨o«3ætH³Žùy©oûVÿRëÀè!­µ®6{xá°æ‰+¾ -½ A,ÎI ­šÓ èP%úOýo%_¶ì^|ß>ÀðYÕ¡™ !fŠê¡"+¢¢À<ăËc¾™Ç`Áwó¨“*UjBôx9ël±!ÉÖ  ¯¦ ºª±;íήæ>ëüÔíeŠ´`­zÄ+39‘g:ýš×®_×E€$ŒÅ¼ÃËén»thØÓR %ÄFˆ/qr†0d‹âýI,„ášÐÐàrÙPÐÏëª^Öl8ÍŽ_X.оpœ¢ÑÛŒemTGPmpH^vÐ:/¥CòŒWO¹¬Í*Û¡LÁú['ÈäÉÿ¡aOÜ£îk. æî½e£ë4A‰ímGÞÊö4Âè4>‰–!“C¦t]]£òý¡» <«¿~ÆfksŸÔ>²MX.ÚuQ»˜¥h“þ›WðŸ‘Ê«$Ç ³,KÔíaþÒˆ-Ä" Ã(Ò zõ®f½§ÅȱÞ&E3 +Rßœô¿×Ž™"áôk­LèJ:?ÔëdêÔ©S§ÎÿÏ”*¨!ò¾*z£ËC_z²a—¿úàÍØ/?9Ôöé­—zÂKI_nQ ,¡ˆM+±Äu$Êà$jðê²`¬åq %Ñãä¯gÊd)*ÁYYUyâ=$o7¤RjqšМ0ŠöÄyez‰¸£_ —Ò§0Ï3ÚM¶3ÊŸŠÜÚ- ðPë<]X ïÝpr‹áÆvÛt1â@%Ðt#kztWg¶'xM?J… [ð/^J<~k­‰.ff‰?;áøH´:<ô1U* z­ÈÑ„“†ç¿Q-¥¤*F­ršöÆóZÆŽÍ´Ýem»Ñvö(?üŽmÇV|ßÔ½GNý¥´O°…Zð>rq:úp¡j1zJ¸õžµër¥Ü-GÿD®Jd,bëmXBö¼å 1#t_‘6¥"ëd$ÊÔH¤Tt¦f¶ž_;CJvîõ6ùg+Áºz¹nÿÂ埫¨¹_)uÝíy¿w¦é·Èê¹qkú©Ãܯ6h@¨Õéim±ÀݼÇbl–Âp„H0IAóXªlõîjÜP¬á•JÁˉ¦®!CÅËU M–PÒõõ9‚LN.;¾sÞÝìÔw7W?ÇÜÚöˆ29X‹Ý]ya, Xêö~¼! 7ﵪ5ka»4¡°ùœbœ]!)à–`¢€Ýh)Ÿ<à~úÛ¨®h͘–^žòw³Ÿ¾»ú»ÏÆÀ²šìºeZ)]§Ô/ܪ-f™ø0hq`BwTÊ—aìq“»²\Í«'éxÒõâÅлi¶UvÆK7´åö¶ï »Ž¯ð­n³#$mkÉ¥ ìbŽÉ°é!í:Bèt–íK¹‚!uÉM“侓¶p‡ a(LtÅpBBf! L@¦¦ÍO„•×Uí/R(ÿ™‡¯߀¶Y«gf/oMÀÌdØt•ØÝ\ýòGç7Ĉšh9 èqS!5aÇ^Ç ?­Qã9à9ø ¹Ñ¼y""ZNcß¹ä”2ÙÁ¶'ii–VD_“û¾Û3?8…F–¨ñŒBðB¬Ó P!í܇sUïmÍK†äžW½&²Ë«5¥ˆ,CΟ»CGˆhšùì» "§SãE¡·ÛŸ_-6„u;o¬gK6'ÐrÊ øëb¦ÎÏu%S§N:u~rž=ì€?¸?ûâBÂÑš{ÕÍM³ÏMu†ÕµÖ"s±Bu¬J¾™‚ÿf×0ƒ]I×Ë¢O8 µ–¤6Ç™5 wã`ƒ˜¡LE CU<¬úºøìè{‡áäiE¬&•e:7²ÿîß}?øf&#¬}ФOY W•rl<¡sä¶Vqž%2UÒ~e»®*’²âèr‰<˜ (‘ÔDOÈVɆkت-xW&¸ý"zò0ó«ŒÍf½oŒù¬A×ý[Wnƈþýíóîç˜6·|à¦ZÀ«MB'eªvCpëù€žpç%÷²Æ"3lÇ·”V¦‹d F;gZoõd<ƒ¯3‘¤˜•N-zZÄ+¯|zWr¢Öøþy[šmœÉ!-£¶öSÈø7EÚZc©Äþ¬7ryœÓdÇ2.uÉÐU 'I’ÀA…EÅÞÏÏj¤­b9x(ÀB%DS¨Á‘Z;%åZFgòþožï½µ9uÚj»Ë9â&®#cD•žÉûç+¶Sf„Ì5…ô°£xï¦+MQþú¥ðÃûŠÃw6GÝ„dö…ÓÛ" d(¸®N|‘×l¬ SûøK“î»·K5Z3p¯KV Æ¢1ž6 £V®Tq‡ƒ£Ì‚J¶Z˜.¿=à²P5ìÇ¿ñúÌÏY`qn£²žŽu9³'&oNT’‘ây¶¤õgñþcÃvÝÄ^+âÃ29,à»&bÉsÀsÖJÉyOgmÿ#UABïÛL]wÂS'vÌEšPʲe™-¼”.Óß9ѨKòSÇtgþÚ9~h¦DpâÜÝ[þÂ#)AD³ú±óؾÍR2fÚXmxšýÕ‡«Ï¼Jìí±WQtÂJ1W²V³æð¢Ñ0Þ6TËÔù9¡^'S§Î?õ:™Ÿg …Èݳοç†ð¶Fkm.¸g;<óîª$®7;Š#åˆj²>¦LâF„—ßXN¶8Š$®ã ³¸ÉÙI§^TFºñ2L/²Q‡Õ+/CÄ…D›‘G`s¤ðÚi†BXÈ«€ ÌÞ””g–¸Fvˆ)­Vâ­ï‰ÇF»Òøâètbß¡ÑÀ}7°ven¤ Gq|šï0ÐÆéÝ$ÕmÃÔ.át¨uõG˜.­1Е#”M¦ˆ9ܸ\cdÛÓ]è V‚6íÅ3±‚ºùÝ#x<È?‘ku)nª¼ë ÿÂ%œ-ž áBŠ\œªÄíÅΧ¨`…ö²J-òäg*Îx*ÖÇMr¹YÔçg\mqrð]{›‡ʽI$E®³cèk•ŒÎgÏÿ%Á3dcÛàæ_\ñ4³Æú­˜"»qšmqÊZvnm DzY‰?"4÷1ËqrI[~ÈÀ¹RSW‹pW*1HÜØ+íÞòÁjW@.v¹®4 ’4f¢É Î'&ÚJî0/·²ùpmõC=ù>ÏBRvµêU².µd/îomÅfo M&øüÎð<˜– DB:k4nRP¶ÈÿöFoC¤f’Æ¥%[Zâ0ÎŽsöpÌEqô¥Yr~¡”É–u L¸UTÍøÆ÷«=Í2Ø}ÕEýºT_8Bõ´ †»AJeFæÏŸ ^œwÄ=êc7,wÆ+—;f¾Š„ÅeäsÆ-btŒvbµé²1v¶¯ ~ò†4E˜ ç§œ[êÝûjÞ©¨áæÕ#ä«–iåªVOD,pMtíK•5Í~vZÙß$†ñ¹[KšÅ¼t)ÚâWšãJO‹ùÂ[¸Xƒ±æî½2Ï™‰¨ùÂa¸{·v>xho¶»ÕÚ¹ >z#êiC©ŒÉ1¨©¡^ô_çßõ:™:uêÔ©ó/ a¯ç=Nãæíëq–÷&_ËöØŠ‡*ú¸Ò&oþx¶õ¶È%pè‘ñxœBLNè-)}ëVbÀ° ˆW*ÈéÐK˜&2~ïã·Ï¼;j?>ð·¸*¸=jfY«HEBªi6×{Ãî AM/O6߯ºüÏ bÔ{¥ "ÃrþÚ`–‰o*°Èvòl"ç€ mÌ¢#L…P„YHøMÉϚ˱¾F¦”ó$C¥ 2çf76 lmÐÛç\7m-%#Úãnabž~å8IÚm/ ’m.åáýÕ€ç:_Ï*"ó¸3G°n̈¡ZÐ*Æ)|ÑÎóA[-Ï—Ó¾ÉS‚+V¦úØå9LÌ×IJۋ«OörFƒµú4þÑ¿~ð͇SG½Ïýéæõdÿ̶;’V)T€E¢Ú¸‚V¼’D—‘9œ¥íU•¶°[•Z[ÍéŽû\Ãïê°Ù¶‹KQ³©Ì’Õ”,ÙÍìL®Ãm¥o‚@ðc†Ô«¨‚U5ÏÍM ¼ªð*ÁcÊ*ÿÆÙÀÎýÁã™"{ü¢ûþ½+"Pg(û:–.'¶­ý#ÀëÁÕÃoÞNž› z[«—&Ù—^ÍϤ˜Í­ÊbŽÍ ž@ ¡V5;ÁÂÉ»oÁ—çKcEÇžxC‹ÝÐØ„Â7_ÊÞu37?)MÌúw7W»qùºN×¥9ÓXÀwMX†Ö«9*ò¯¼zнiçÆ°#ý÷v kÓ3+Ž£³ôã;×˪²ceYö¶ù`lk÷ëéóÑöÚË“®É…Ú;ãeãnÜ^øòw™€»p§#.áùÁÈΆò¦Dú3èg‰ÃJsØxç âµ–kA^»ÚŽ™çàÐìO£.cêü¼PW2uêÔ©SçƒXÉ£ AÂ^=Îyæe³KÈû½ÓÇ+Í·»‡\jr¤Óšc¼šX+ñ‹³yGk@Ív““YF]E¢’.@e–P ,h+"ßäñ{Ù§³Ü;ÒÇ/ò¬ØûÎ̼ªÍ k.º÷Ä.LÓl)®•˜€ŽÑ>BÓ¹Šû7˜ã’8²Ú`FE4“kµèËçôîËÛXT’ kÚ}¼¶]f‰Ïõ%¸FYñ¬ÑÚ ¾vÆsa¹¹­Ì³F‡øÍwüM=¾³\¬XG/ðéŠ 0¼'¡ÅýªÓý.ñòáNÞÈHl ¹€Ãc‰¼Fð–È9‹Þ`:Üé\µ/G™]Ö4i…Ü<—.sÎóǵŸŸÚññH»öõ~¹-<–oéÒRpd@ kjÇç<¢ ë)a—¬^ŸÛ¼9>K!‹6°(ðsrnUŒQ$´¯'¥*)WR,‘Rö•þ?nýfŒ¨N›0b•Yo²q\£y™rÀ4yƒJ2ðÌAºßf4_¯xö¤=™4žÕRU8ZÝ–ÌL¥<_?ÞñÙ½c€$N’ÃýòCDM €–g±L¥âŸ¬ž¹Gg]¿ó‘LÀ£$#•E3¡óØÒÙŠÑá@çúÊ\³Swà‚DÒ]=¼V®Y¤m#^¸„íhQ/—òÿßÓÖd}ãyüæÝ×(ËÃDç}lgå©ñà—¿Ë?¼ký¦ùµOL¹¿v¬íþ¾•‘û¥GË?|S/•aG?|èføÆÓæGﺦKæôä#åK–Ýf´F°ÚX ÈM°<)íX9p–¤RQ§H¹°AxÌRŤªØ5‘ž5îÚQ|â ? ØÜZ~™ßþpf­9#.ÈdM"s|A¤2Ra¨3$Ç:ç[»™²Éžc:¦r–`š¦Y»ÛqLTÊmd]FXSúõ‡uä°¯Tl#”+¤¯zÌ~_ÏY/l¨‡!-E´(Ø×/?}Äùï¯R2gÇ]m/­d.Îú»#Êà¸jçŒ#—ÂÇ—èfNÌÑ.œÐ†ëŒíÞŽâ—¿ÇRµ3ÎDüElšèšñЕ;ÉÑê¦Dº5TüΙÆhDJƳŸy&f¬ozUú„Ô} –Åå>ûâ¡y¿c˜Á$N\Uq“²aj²äÃÏ/}þQ*goshy¯Q=)tTKÆ—Lyw¤šÎ¯×ýO^â¢ýÀ ¢FÅ>{a&¸+Æ1 F!27˜éޱ—;Ç+„§¥KÀ×€¾úP²K\0T¼`*N€…ÁuJÀ…•'•@w9$#ð§3ÙŒŒ[86²YW4i,-¡p 1W³úãwd¿u80“fÎá¿sO6àV®úÔàY#à†d¤¢LBé²m©hŸ(1fθP‹¶º…¨£ÆSŠ+©žÖpЀB¦‹2].ŠôÆJ-•MÛŒñ âì <=C¸a˜z¨9Éž}¬–y]¾qLÙöÀØß¹æOV§†ÑŒu˜.ŸÁÑnÏ»º|Ú¸´ç¹Í‚s^ð³èø”oGXy+í+67\3Ë2G•ŽÍÆ×޵íl(÷÷¤Û’èO™`™òþ³k]2§ç±Þ–%=uêülSW2uêÔ©SçƒMã<§€ ¡ßú;ÛoÜ'77ü˜ƒ$=‡áÖ˜ÞÞAŒ»Éb+—»¤¶lg.a†BÉäŽBz\°åUÕ­dªb¥êIZ–pÉ­ìE oI—ªv“£qQ16·U¸šP,r3+’7&ek«L ¹8Øå&µ” ”Æžœî¸·g=«G±˜°‹G’´¤_ãWfR6ÙÝä(®[ñj8­i&–‰ÃõÖ²Lj¢2ùX€ó…=$+h’8²‡t¸\3e”´V— °A,M­¸¦*ôdÙÄiüÙ3Á®ˆ÷IvV÷»„ çç š…¦@¡#À=?~$q!+8Si×|lÀjC b”!kX¹\¨ó$aA>­OŽ€jZB!@sã´ aüäcæ‘…Î{^i|l·cS_òEU ‡wúUв,]ä¨bQÀ gtEj‰8·òá&¡!¨$£Âv™œ\uûì®w‡è@(^™WÏ®ìÙ"¦!ø®Öãjϸð2’€PÀZ9þž2*CS-†¹9¢ÌÛÖ”ÌÁw½íXoVs|2ðË;Ó0šAKÃCQþó‡26Þj°i…¢Y¼Â8þëý‹<«XyÁÄîŒHîï&µdòøå{Ïù¿pS>©mS¨ïœi€M‰ôg „ì} IDAT‰iìož×"“åïßÚD½ü†õjMÇÙªXðqØ‚b€®äÀñê›övÊÆzQΖÚ$RË“®n 1<§B@›Ëùƒãr鳯ÅýhaU³]3,Úfz¹ü ¦þh7Dƒ¡©ˆ"q¸®’/UÊŠ‘T…GD–òD4iªZ†5m6»…S3Ô„ç–-OÍ$ך?þãEÏîð ÛKß:m¿§£²­£œ.rÙ94!Úðà¨Ã'&™‚Ë,EÔ1¼VÆË˲°B&˜šé¶,#•Œl2A÷ § 0X§¬Ù²îžœêAhŸzJxññ1„Nâ KH‚`á†Ó˜¶yw±{;élðä˜Wø}i¾§‹™°!£(¥&ë8Ëè9$˜€iš"5¹0„…uœ“u£ i‹KVƒC#ITPƒ9Å«H'HUÐäCs ˜ºej†ƒ”-ôSŠe`™wïRÎáÿy©í#íó~[…cԯΤ\ÉP)à-@`Ø÷&¾¸¿¢ÔJg|5ÏÀž.ýw>ZƃžÁK̳oê¿s£5u’åŠÐ¤—^;hogÕhËàòò¶è|€L¯èÁ³r³i@’̵°sï÷2ó¬ñZÌœP)ƒÓ¥Öá[ooÈ™cóôûÒ0›v# šBÅ™UFà†¦ÿ§»R—$ª4ÂÐÐ,j a\ÀðL€ÛC?w‘| ?®Ú 3=úÑsÔCw¬›•gJ\ºF­Eð8Z½\9³³¡Üß›~´B€¥}â·…#¾ÔKè:u~æ©+™:uêÔ©ócX“1ðIéêuâ†Fr#¾0ZV¡! Ýää´VÁe‡’YXæ Ãe_ÙÆlw?¨ë´ÍïÕk5D—2)‡ã KÐ ÄpÆã·ç¼?_ŠýÊ–Ü«Y*¶êè€ÔÚN¥d †óÞÝM«kW_–ÃÛc’\U‹ê•:~DP”¿²sð#²‰ášø}²„¼Ë³tz9üanÔ”e˯ -Iª™Y\tx|Œ ¤u°Å±÷‰aÿ¯Ë'¿8hÓWNOîÿ"ß^nz|è÷ºMKwÅ,Ë*¹7WP «Ç&ÕDAŽ™Î°^qÙ´°¯âÞ® óS‰_¼icÓO@¢™ò͸Á-7JöMÂ?m>ü_i–ªE GÂLÓBóN§Ã1y¶Ôµo¬õc7Gs3öEc󭒤Ȣqæ‡eÊfâ´L{M JLÈiÊaJË)>u ‹Ñ,_“8´–yUC®Qº½MÃIÅÂÁâ,Aa,Ó²L³*‘°Xà,]CÏ•)@ZØ«º#+¨k€Xkuß±–säïþŠ£¹ÝšP‘Ky]¾›ŠfŠÌZ×Ë4úrsTŸnÛ*ö„—ö¶æŽOú’¡ÒÌŠ£Ù®œ±GüÄ­ynZüûã­pc“ök+ªfX:>8¯Æšyx»òÔafoêï”+¤'¬NÄJk¨8™rωþ”?>ªÙšˆù&r¾‰œ/êî9ðƒÜ¶6&×À¦Xü:)g7nÕŽž§/« 0-dYxF9¬™Ç…iö 7¯·C=<¼·w)[±õ„§„ߺuyÍÚ!]±Í rþ›R32q:Õº34i·Y7÷RCÓ’d–²nçGºµ1â²p:>æ}pç/¾«+gf–Á Ý¡‰JæåÉäý{ê™:?wÔ•L:uêÔù1|é«ìü‚ðþÓ–{)›ajŠì -˧-6Áâ,ÑÊM<1ràfb·œ[k_‰ðؤTŽÒš@³AS©Ša”ÉÔB>Š#XÒŸýÁÛÕ]žF€ zo’¨T4r¢«d±>[$±‡ü6cvYBð£ÚŒ 9_H.®‚R»zŠQ&²ˆµoC“R×§ª”*QФ,€eùŠ#MyO£xÉ$xR,w&-ÓÒß XÓ>Zéþ zצÿ¼ã­ç4Ö]`ão¾¾e¯\ÕOïùëgê8@  *´ R‚œͶ^³ƒeEÊP:²U||(Ó“äÙã–úö½Ø¾ñ[I :DN~‹ :«©²tÓ'°ÉIjåLuëÛÙ§Åàn¹ÇyúÔý ¿Wê½Å×¹#-qo-ÚcÑD§ [H± MÇ¥B+ž/["f÷©‹kë!'†@¶˜5%“&"-Æœ¥/ϼפÑmd`ó:ÐÍ» I¥TÂd8fk©i¥œð¿þ&¯IFÈcy]Т7ƒöëkcŽRtO¼5ÛKºÓ0“r]\°wE•Ñ{l¡å#mú—nYzö”w_Ÿ¡kÈÐuX)Ð.×׃>Ö¹:1Gýѳ¾úR±V.k¥˜—ùЪ·'çš™97QtÛŠm,» ^KõÄèjÒ–ö2¥«ÇÃóÖjáw;‡Už5ãq`owéÙ3~дd´Ç&í~‘§µ?:Öaêå{»Ê~— g|ß½à’r•Þ6'Ïh}ü s]}^ÆÎêˆ ïÞgýùËâ’ì›M»oÜR~ò ú J3)ÂPÀuM}ÑÚÏr[ÓüÁA7noº8_¶¡¢e‚îø1™ruêüŒQW2uêÔ©Sç}$Ô²úšÍŸ,k…²äVm,Å4É–SÌÊ“=mo½½}Þ‡ÕÀ µ’tEÉ`†È*ó.†óºøJIÓu#HÊ ƒ€¹l"Ê+#ÌÃo ù½ëŒc˜µ™<[2y(Æ÷EVÖÎ3­4Ýe/*º ®™Ö>7«%6·@é¥I`X© `NRjšÑTË…,LK£\XåÔh¨´Œváß~äŽ=2çþú±Gö5•ÃQf¦ài.øÀ>í÷mÃn$ù8ߊ4Æ0çƒ1éoåAÇû¯_YÎÑ G+~{µÑ—ý€¨Ò_9ÞÑÅšƒ¶gG\«µUç"–NßÒëL¬÷ôôN9O½ ©¦-á+Š<†U´¾vÇÔiˆ·â­>S¿ÁüÿØ{ï0;Îû¾÷7½^æô-g+¶/: ØÁ±ˆUݤK,Û‰S¨ä&v¬äIn,__ßljÙ¦"‡–(J,’ÙA‚ …èmíõœ-§÷™3}æþ±KÁ¢bŤÎç/`æ·üfžgßïù•÷»%…]Þû›mz"0ù¶áP¨ã_?Za 2F–™Üb\*ØP7¨ËÅÄ"1u`êq5÷ÏRék>ËÜy‹r1 Fj %3±Nùí½ J¨XGku,™&B ?0g¥òö ‹ó:̦€ 6Ö°qX©Ú¨üÌ”oØAÏ3Ç2œeZ{ì•u§ˆ[†¥}çœ?¡þí­Ÿ“65å:êô×%êâŽõÀ9¼NæºbË'ÿûSܵýêp¯,¥²TÞKUž:Ó’Œ¦l¾>r1fË0˜ÔeO41™¼ì:Uˆåx¿#ßëO®®‹c¬ÇšM£+)k€Ö,]¿u¨¹š}ÿ’ûÛÇŸ:×nhz+Um êu…|m$–µÅ™ ôÛ_š&YZЮñ/ŸÍÆÚm©¬D,•÷lRÞÌËoÎC3›Gÿödø_îH|ÐÎÙ<úg?F¿ùåŒÍ^üþñSeê˽>ÅÿV ¡düzÑP2 4hÐàCáëÁ[´¿Á]Xbïß-òž-Yöa–Œ¥–|Û\ª´%²¡ g²º\›÷\çN,^ ×A •°TƒæL¹^ÅPÄ2Ü$ ‰@Œf#Çy08êÖÍ¥7*ýhU¿Ñš3k9ƒÑrA·™Øu0%$N/³S²" ¼Q'Ô˜f}Ãr½HO½ ¨8«Ìêˆ"çK±ëX£bãLÚåLj½–ì ;gDy\ªÕÅöŽ£s¶!wþÿÚrq4ºµ”´dÙ”ˆüÍ«8ÍðnÀq±¶ÕG€ÖEÏÜÙoŒ¿x÷chÇW¼<°5'9ç¥MU*')ƒAi ÒYÁ»·Ãu*Åo¦^}RÙ~›Á°Dn^¸çw¸©‘ÒΛ³'°Ìñ¶— …»~£¼ùs¼\ãÏ=síÂñ8ÕþN×},Üo•/¯·Rc=u’¥9CEÄeàD»ºR2‚-ˆY–_YüØWŒà$‚‘ÍâvßÖôzE«æÌ÷âÇ.?Û„cLŽ1y¯Þ[³Æžkð?y>:Ñ'rìþŒ`”À Í´,K—uÓ0·˧KöÛÚË/Œq··Uvö¦dpMrjµjBtþþ UÞ-Ð`˜(QP©ÎjÁˆð @uªŒ{÷–éÍÈËȃgÉÛ¯ÕÛšM`iíÁáÄ÷A™§ÎxcÇòán:×\bp9fKÇliI£Ïfc?:·Õº¼yŸ­²sƒzà4}IÉ rÙX3¤ aÓ%¬¯âŽGÄ£ÉÐ×ú—Þœi™¯`¸}Xà>¸.gÃ+3ï»»›E±5›ø¹ÊåPˆf™Ès_Ü’÷–˜§ÇܯEwnXø³7cwöWýÎ+«DˆúÍ'¹o~Yä}€zc|åµQÏñ¿ —Ÿ’Ù Á¯ %Ó Aƒ > Þk|íNa:É>}ÈÓÓ6®«\,süIxv¿ý@ÂvÃNùÚí¶‘“x!MlßìysÁU@°­õšB5‹†´„Dã¦ÓD\Þ i*,nj­*e €b^sYUuÕîÖfIDÞæÃüF´”ó^w F á˜ê8Oæ'é!õúoÄÆŸ6t“éï²_ýÏKd>{Ë¿ó³¯òßž&ÖO®Û°ò¼qI¢TÌFq†,Voò,RY`:y¤«”9på\Å¡$cšQ¯üðË×öÖ>Â}'ét]§3u',‰ö ›eZž½ŠH[Ûj[M+h¯­†Š2.J„ ‹yæz¿<¶l³,k<Ç:çù ×8y›öW­µ—:£ÂtÊý7;·¶Ôb©Oô¤iM-Ãtа[X{ÐJOUóŽ›h¤”3µÛa­Ô ÐtL¥MC“ëÆéZçNf”Eê EXª*0ª…fª«1`€”ÚŸh~W¥7¶”­üBQpלŽ8©©•"ch Ð6–eqᵌC0üºe24È©”¦ƒËRtœˆ’ÐHƒŒ`Žc¡…m¤––e£TË29F 4Â~Lh3Mh£ò›"þõ·Éû·ËȦL~š#ÔPlµdÆÖ™Ìc™JjjQi Ù×tcôí]âØ<¤Kôü4±8‡6ÂmÊжâ7þŸ+L… k9*«xkéHòPÉÖ&×kT0Èv…çˆV½&‡Î>IØh188“t1GŸ?wÝ—Îe™ÈËÔüÆÍ~£l»o]täÈg“7}­ânÅtu†‹ë®¡êÑ{7OS’ä@¸> &ŠhqwX8¡–ιò+ª—r_:h'Ö `÷a¦jÖ+F1e½W;A±hÙ¢ºï'Ö9° ¡Ø¨bGT¯À€s‰Á¤«Ö€xPYÉSW(™+` ¹Å%œ.øãqôÛOÔî/?5êÏ+­iM?×$šŠ–"ymtN@IPr–=ªåIëÊnÛš­Gî5¦æà©— ¿ÝÚ<¬>4<ûÔùŽ;»’7GÎwÙ‡Òá—C§òÞ |1îβ¤Â’J‹Oiñå·Féoí Läš»|bO¤ì£ª¢AÌp×öWÀë4¡–_Z—äHõÏŽõÜÏX¦ Ù<š*ÀçoVŽgh­ò¾Ói¶DWNeÛºƒ%`I¥É „· FÙp„<ÕÙÖÖ¼æÃyö¿×¡µÅ.-êÐyçî>â?¿Ññ`o~O¼u_ŠÖ Ág›†’iРAƒ?,­ ¶f;ÂåýSͧ²ýwv%WÃ>Œ¶ˆîuš³ËDÄOðFQ“ð†Ï)5÷†N>Wˆm‡[¢¾VªV-ÛY×d‘½ÓÖP¤Å0*iÓ„¼©Æœ–&Ê*fÓeÔˆI‹}÷%9ÌL“üíMV]¦ë% H@ˆÂg²z;28Ï®” , ê]{Âx ÁÒfÏ­ÀRÉfXV¡j³L³äö8yÖ0aq"O§r3¦ta–®Jqkæ´ÞkC+N´ ˜©ðÂTmÛ²½:5‰øÜ‡–WÒV­2\û©]wO<¡ mÓbñÊ­w¨½PdUÊP†ÚT'¤rÆ3à<úµí÷°nNu Ýrü9ÊmOo¸kõ ÑËw]í›=?ðy°€+Ö  Çw}IÀ9³8Eñƒ“TD0‘ÜÎ>åB/2“' Xg'ÒP3Q¯J{ì¨\uÆ]•9Ëj #óX$‹â8(uueÖÀ)ƒG‚pÝ¢2†­ "%SÚé«Ñcy+÷3ä‡}òÓ‡ÝCõ­²k™_Á<­žÎXjKÁ6+о5œ-¸A¡8ÍpyPdE£Üd…¶TÂT½J? Ã}Ї©Yøîô­;»’/Í4ßÑ‘lvfüleµÃòB –÷û qOŽ%dàÝò6i¸]¯©Ü³'Ë A’V/ ¼GÉ‹ÎC%?‚ê{›R‚J½•þîð¬¥ÔnìCà©}øƒ·(€ HA%£ÎµÅž_‰œL{Eâ†HÑïXKÓòÓê[i÷#믻|6çK‡«ÐlÀsj]·áRQµ\Åv¼âÝj—ÿè†i–R?²nCKú“[¾AƒÏ %Ó Aƒ ~fXJÝÛ?½Pð¿4ß³ÚuMs qõßÔí6³, ÃêßqüÞ=K,Ñþ ÏcgêK««BU”4­s«íG2ÁíMÕ ™"PcFbÜ„Aèâß_ø#†2K¢ùº…H­–h¾lñD¹wˆo¦|·ï¡½d‰%°áfÌf&«WŸ<ƒ­Eà0¸ u¤Ù•E(ê$ƒÈÊÅ6ËмhòiG,-ÚVwÄ–("©¬µR€¿ü>¾cX‹w/ŸVÚw3'WŸJÌkåtbaGÇŒTñ˜ áЬçÙïÁ¸<°5è2NmüÃxôc‚<¬&ªT·VŠVdzt“d¸½‡‹{~Óv.TLÁÂcG¤Š²T‰oZ}„Ū£³›µüw&÷ª¼¦ªÁUá}ºôñ»‘¯{šÐäɹ~—÷…¥Þ°+W“Éæ Jà@„M9š †6è2š”ƒ jB÷ÇÈ«þZ—…Î6ä;ÿ€ p¦¶{wæ¥ÙæûÖM²¤ÜXŒ»³oζœÎs‚;[ð¶9ÅA~‘%䶈^­ÁPwn°5—-1ÿ÷K¾”;;iO¡A&›þ|24ä¾¶þ<ÌÀë‚3£Xü½êdu A‘ éØó‰@„VUl½·vmûÂʼn¹(õú¨ÚêÏÑQ}òtÛTYžMh5Í(zÏö5/h]&_»>ºÂ<Ô—Œ`>çíòÕ/KlÐà׆’iРAƒ?'-Þï¨Í—ùHö z -ö ƒ_©gì¬Q¨×mû2ÄÛ§œ×m¨¹ôúžˆ©©r5çóó+ɺ 1ݘ²";g;vI¿ Óe€Ãq tÝ2-ÂLÝ‘® /™.£XyyÞ½£æö‡„ê+I¼ù——Ñç'j~°¡z-'k¬øq… $ƒá L]Õ€\ý‹˜Åb 4ŒêZ/:kG×~ÿ昵ôtÆVvZ›‡Œïþ”BF*í7f eõ„øÑCÊ;Ï¡CG'nè¤^’ûÂÈ¿ù <“2ÉYáéwœ_ÿ8%Óæ¨ôb‹¼‘s8çÆü¹…ôî‡Ñ@2“«W-8—O~ÏRóÎÕöŠEσ½ø+"Ò ŽÖw¶([ÞÍÝäÍ/ ñˆ ¼™ Éâ@s†ç*U*ÈcéÖ^Ac¼3õØÙ7u–Û()v²Œ¹\XùÃú<~~ç.´3ŽNÍ#o(ÓüY|ݽ,!³¤rǺÉÞœodÅÕÂ$üdn]›]ú /¾m u×@¨£N/õÕëR§f\¯Ÿh§*»l8·w­¥U°þúEøóß_ûƒ RꙂwØ[üÃç÷EÝndoÿÌÅ)Õ5ú@Î3à€¥ÔÍÑòl>øê™"f³ÿÎóP—‰é”ûX¹¥¹rp[•1°\¶G]\ÿ¿v\ÍíÚ Aƒ |2XBîõ'?×<† ðj®oJl¹¢Çš© ›zÅÑ$™-’+iýϾ“fH”A5¥VxË*Ë#ÕïL …™êñiŠád©Žèš Õt‹Œì´fõL}4t2ØsoÓa¬¸(µ½:‰Ñ¦0Ð$þó濹G׫Õ×[+Kd3QLÖiAÿà,KÓ,ÉÄJTtŒÛ$`öAýÜë´®²>3ŽþöV¡k=r·rí ñö¾•䨈Ì2O=ÿö=_Ì@mèyÔöö}ÿAìtU«”¿%ÀCÐed‹U!Í«7ò眛E›|“'¥6sýo ±Î¥\µ®}†4Ú]ôD@±èZ_[‘ÐIt(ˆ­(á^[umk«QL¾s[ËÈË…ö¾ÒÐm°²M¼ëÒ¸©pjޝM—jV® ¥+8X®ìBhò8Ÿ<åÌMœÃÂÕóAa­,yÔEæÃeÌÛ§œ÷nøy¼1‰”•<ý N-FL’=rlM¬s'ö†²»Pô1„ì£kɈ¡2 òÅžÅî.œEÔÙ4~LhÍÆ>¬Û@†û޵:ã°c=vnB32wf”X}¼\±~ô¶õo08FóM?˜ž–íi…º·s²/¸øúhöÎ\>¥w’ñ|±¨®}'í|a[“¹ˆz·6åàܼÿ›ûiÎe IDATÚà·®›. èÞu—¤Ëd‰ 8~N1Ù Á§—†O¦Aƒ ü¢0¸ÜíJ4Û³Kr`_yc'›o%®hÃ1Æ}»*OpÞ:”oi™B9æa 5åh’tÎfÙ¿èyq…CM ËÍ´,TÍc3ÁîN"fš`TŬ 1»‚_Û¯•Î.ð›»o£)(-ç+ú IŒ›xôn3XÌ›ØÂÖ'™v]£ ˜%0¡ªAÛJG}„°>tS>›@A#Ac6àq'2}[ùGÆ\ˉüÍpëðýï³NCòãZ×:bR.ç0 ÁüÍ;6¤žäî½þ*ñ?†DX0µƒ+ý‰,û@ý¯*þîÅæº# éEK©@tî$eÇQŠZ m[}jTïˆa9›’8¾ßœ°A¹î‹rµ¼àð®6(ùcîül05Yjj¯£<_>]>¾Ú2ïí— ŽÇ4CÃEIÇñœÊù1êv'›Ÿlš8Ñ„B&ò{%Îí&>>ãå'çØÿúPö“üÃûäCçCW¿ûÜ;üÆëJ6›®]ª/³¥÷6Á¡TH!¸V?9]amvmY” ÆÐX+Qê.¶›ùŸ‡*ùƒ‰á¸]ÛªÍÎK§|¾õ.úÀN°€cÌáuÒobä÷agÏæÕjø‘ís«ÍXJlÎtJûF‚è­Có‘ô{g¬«¥;u8ý¹0ŠÂ€W¾¥yvU˜ÿw?ðL¦?nœŸ6:Åø‹Ñp€P¯ ,ŸUcuG~zºkïðÜå+Í×]EÚÓ6VëÍ×]>¶,*äÑ'­Ã£ø±¥6@ÿxË,KkðÒ´ãOn›_}p!ï[’I–ú…ôdƒŸFJ¦Aƒ ür`0©ƒ[ˆ™™ójûоqŸ±Cy5.K”PŽ1yº}ô/;ÙYÑt+S–Bœu|žˆÔ“„iŠ¿Åöæáò‹ï`t; :¾%¼äŽ„¬y®'Vq¤‹Çæ{|¼Ùцz¸Äyc«B)÷Ò Ïú,+ŸÀ,©+¥]ãbØ=‘î®ì„-Œˆ‡¬š·›r¸©ºäånf»¾§ÆÏMÝ#TÂß~Õð·H}[²üƒa§ëœ•g‰÷í¬qWŸ@Ä£cÎj‰“ F% JG›Ìs¹là½Úåݲ4uӥЫs~kegõéùîÛsŽÖÝ(/Xš6¡è*Ocñ¶ºŒ×œVûD5MPêœÃ_0€ÑÉóË#];_jÛŸ~£ähžm˜÷¯_ñ„|†Ð".ˆL•Ö+G–ÚTŠq»ƒN¹ Ó.•qç#½¢ÃÏÕ 7'¾ 9t¹m‡`ó|„Mæ–¹»‡dŽ1>ÖÚÇ© vÕ[ϽëçõX°X+|ù­K8•õ¦T§ßD;ìùy1ÐŒ— ª£d+–•ÖÑŽ5ã9Ñ9Qò¿›ÄíµvgÎË”týóß{_âPgåŸÛ¬ÿù.aNþ«Bð«7ç/ÄÒêÝ›“gg¼g¦h/§ÔKR%%pÛšÈ:n¨êfG¡MÎ&ðª`Íe1½.-cIÓ2LŸ äw:Ï®&’äcûÎ…àsç¯XìéBô–Ø<¸(u*ëZÒÌg-1#³ ;“XࡦÌPûš°<7ÏßÑ%¬JXªÚoˆ~h]ƒŸaJ¦Aƒ ü2¡Qi}>g§¸­…ÍÅ Ûë誤éh’v÷¸œëõl‰ÈàÜ/wvÛ••jkwö,G´þþƒ¦X"#T‘&D‰j³,dä4}Sµ°évS£åúB†õu¹\®z-W5¨ë{ô©¼@+•v5aa˜@xú×á9¹#¡”šÑä‡MÅ „ssxÀ,ËÎì4¤ák ¸TG.Ì=0Ÿô +†Ë?e¶¢¿û_.o0}f©¿¿cZyú]OÈixl…ÈýäÌ¡×4 Y€jš³Áºõ®±qù¢’ÁpÂÇD_ÊêŠ*̹ Óû\¿g礵½>GkñBÑÄ»H÷ H¥´§N«ýPQ©Jí çE$¸ÚL%YR_“p²É¤M¾ˆ8^îº>h )g1ÇÃÇÿ«îðÐ,œ?e‹Y¸…¨û—"»Z*x=+;£˜ZS©è4Ñ凞æŸYjÙ.pî«Zæ•3Žû¶ÿ •Ê® ÇèA§þÁT™çÞáàΛpª²„ÓÚLé}j‡£TC3·¸æ,¢cAa–4»]V]Gç(d-_+Ff•ÛÚù…f—ÜìÊH“\§Š±cãž ÃUÕ¹÷ÇÆÃÕoìgOðseä‰7о¸É‡©šN×tÒ˜Áí:oT+EM­“ –<³,Ue°¬iÓêö³½MŠËnøÝ֠חꎴ¨rñ}Ÿ‰0Äš“°bR–©Xwm\¸|\QÆÏ¥#ç dmŽ<0êm–ó¬§^atE™7œ_*_v;—–ÿÔ¨ïn¼–6]¶=Ð7õ ¾… >4”Lƒ 4øåãGÓN«\‚éb;„š¸È{8ÆXY*§«þ¿}\ñz myk—,R¾0­)9m³ð7o4ÇÚ#Csˆ*gUŠ1Э׈ô»k¿Ž{ª‹Fë “B—µe:îè“Ú=BËÜ è,ÙŒ™Š¿6éF¨e6>a ñZÊcf.ŸŽ´Ý‰³NQ¨e¦ÒËUß  È•kÀ¥:—˜aÇNÀ‰ÔÎÐÞÍé˜O¬Ãß? pY³Ù². ŽËãÅÐWoœÜwÂ3–b\ïP[a§môDµÃƒ¹=d ÒÎx;mêE9ÆD(›-«…L)+'-Ó8Õú¹#©¶€Š k©)M+#à Z¬­n`5Ò1¦v™È2‚¢°• ¹x>IsŸtß_©:ŽZ­n\‰S9/Z]o_:Vb[Ÿ¦n[îÞÞ:õV Ù¨jHZðÁ¦ÆJ‰.TÔQW­l0Œ¦p!JL¡ 1úm|Ý&cÉ£¢#\r7×X×åö™[±…œæGó i )+ù÷)™·O»-°î¼ÅÒpµí.]”ñK~JåY]qÆ‚”n¯!Ô”äëÔ D–á=‘‡,9¥¨¸ÇS¯Ö¼ á=`)õæøJ®b[)²Ö\†>¼HµÙU«#²'8Ë3•{w)’Fÿùq¯"êwt »úSð·¯j(}ÈQc)e>ã¾­½Êҗ—e’%¡e ~i(™ 4hð 2o,z¤,ÛÄ“îNE+Pb ¸ÕxæXH¼ý–ðöÛÜ¿¸‡í´%%Ë>o1ñÆ…X·Ï¸»ƒñ"‚ͬÊCj^Mi4 ¬°œá®ÃUq´‡ S-"ú9wÌÐQÔXÛÛá–â+MÑÀ )àsGšÌ?’&pÌãr¬£RÊ˳P“ÂŽ÷ +úšÀ¥º-9öƒÏèÞæzϦܞ‡&sÎ3øçcW¯<öÒAìÁ[ WÍyru·Çfă‚à½?~S_q£z_®w§{ÆC•ÝëkâÞžæo¼ÎFX-³dÊ"e(MùQ•ä¾uEÑ%ÑL6v±Þ€]*sJ®>x½³0f£óZóŒæuÈ‚“P†í“ ŽE²c¹ÂK~….ºàÓk·»NÓè¥Ù.ÛÒ'bÖ¶Œ3 ]»[G÷IXÜ…æ{›4Ò2H©ÐÁ*jǵՕšZܘ*0†\ÑI•dŠdD°y½•¥hê¤h –ÑÕð68;o¿¶ï—Ôö)Ï;.¦Ê¼}Ú]¨á÷îÊU¸^®ºæ[ Ø5Q".*ØÖš>’îjGnpž:’š]ÒT ¡Jº[2èºI@ ¨ÅvŠ‚‚N€Sf%[87¨r¨bY¦•Tì%ƒÜîZnb2«Eºë<5Wð¿‚q0ŒP[[•Á–ìÙ×á f{gÝÙâzáMq¥LlÛZå]õe94S÷Gu²K7qIQÂO¦#"8s5‡Hý“ïl¨A’. (zê|ÀŠÛ´ué7§æåŠú¼eâµ³~±(?vòßU€ÙvïzÉ)íŸjÚÛ?ýÆLàsýK°Pôïÿ¢n± >¥4”Lƒ 4øG·i13v¦¶s·Ã t‘rieÆ@)ºÃ©^Ó‰vD-•àd¿¯°”1Õm“sªë™ûÏeCm¦B#¢ŽVsue…Œî€·š*9â.L>:/ÇbúDè,œæê‰s‘›e6€Ie¶¾v& ǘ¤ò³Åc“c€ïŠ iɲI^:`Ä2.ew8kEnaξr-ç —_ µ,>úŸ.Þ=3IíÜpu3›@Â^‹÷YòuÍs?ºÐY_ÉõÆGëaô“³a~Eïjμ•m¿-tÁåþ!â½dlØm÷åÆS±kµxáT–kKÙcÉZðT5Jé² »´1 Væªí×8M¹Œ¹­ÈY)’/ÁzÖC”GóMË’Ã0ûI¢luU,ÙåJ°2;®¿|’ Ng<Ý{*/|OxÐí*Í÷ÞKœ˜síÐX¦µ>¹ªÿL és,í›oRp½-ÚäÔF-É LV :åk/8£ÞZ*–=+r|Ñ™­35‚wL]éOÇèéÒš˜œ[bG—¨¯ïM+´SE\»zI.I£ë³¢q`hGËK¦Ç@ÕÑY$’p˰¢dí¼`{À?îÆ×¬ú?öswÜ(óŽKU ºœ‰¢ê^ø§óë[©Z“ S©¸/¾UŠllŽŽ:L1<«|ýŽÔáê.é€ ·m~r2ˆÆ}A‡¹ž[Ž0k‡½ ÞÐÇDŸË‚’DL0¶ÁîåÉTmW?+żÞz¹L‚Ô$¢\'Až‹&BUÌSö0Ì™Š˜¯Éž‘ÝB–¶ÑÚR ¨·û %îù‘Ž.Ýï¸Tµìåðí­ ¿”·Ð Á§Ž†’iРAƒÿ¸Ø9³<¥“•d=ÏÔí±k·YÛú—òEíï^÷»C$‰qÂL…s5Ë„)·úê’‚IJµH¸ycš,-‰&NÔ+«ñSîâ<–Dù…©h«EÝã÷Ugf½ë ©€*BÅÖ¬ÓÇe‰û;¤;± %*Uì™Ê€iÂfö⎶,`q¦àž:ÏMœ€Wéj-l“=þ+æ?›$Þ»&{8Æ.¡¹æYý7K*øÂÿ]‹€ò»Ä/nKL§Ý‡&\%ö!½›ZËÇ…ËóåzK÷påhDœ™ón¨ö…ÿn.|Klæ‰u; ‹*ÅÑM]ÈÊÉI«}µ'—5lºòƒBS” ù |K×&Ÿšõ]§k…ƒU‚&«”G+°~›QÛ«)§’ÌbËæ³®ÍzÕˆ›ãeÔ™¶¸&MÞýéB݉l؉(’N3˜|±ç”§µè{„t,‘ë_ب}p ŸŽ1‚.#[¤„:öÊIÛ×ïJ@™‹¹«³PW(ÈŠÄTÎ7S#+5.9ÂŒê¥51sÔ€}~ &3˜$㎬KVh&kNRAðaÄáb›BQNTYX–íÑb†‹ ªÂ ƒÊàÂJ²ä!KëlÉ¢æÊiŽsR$BÔ|Žê ØÊ˳îTV¸³[™©{OåmNîòOÏ4ùެƻr# åmt^qËÍ‹uÇx•ócª—RP0 ÝâMÝÞUyî`ð‚lTd•#±{%B¿¯¤µU¸…Éå—Õ¿?íêm&úýäŽÀRFÓÎä½-D¹(“Ù²¨²o¿‹‚À××§/<¥>Û‡ÖÈnÐà³MCÉ4hÐàŸ4§Nú°[Ñh4ü*'ÓàçƒcÍt%ìïöÙï¸&Ë·™¼Ïídk·mÓÔpK¬6EêU!’D¤MGL5…XîÜXtGu ÕŽr`ZšÍ l9avÄp¶W³Ñíòbèü“½*B0Sq‰4×iXˆ[Y ¢‚ƒ2,ÏkÌ›'уgá w*”ë¨Ðæ­×n°öáõÚ—Oý'Ý»6®½óMÇ­ë±Ñ‹™â—svŠÚ9|σX‡ãç0X«¼ m¾,ŠEæ3îÖ@ .Öð –&*Q9ÈÏäl»\çØüÇûÕw’WÒ‹¶Žn›ÏùÞY ÜÑ9ëe*AZ•tšÁe»&¸•Ìxloö,2’Üv°`o¶×® Cáò+¡ e (¥‘»&ÔÛNsQ^ÈëÔ0nžíÅëÆÜ‹9ŽñÙ ¤ªÀòçZÆÒ_=æqÛÍœâ\Í0¹Ô?N¥\ÍKDS}Rßà>£ÖØ4SÐ:'çÒRŽØÒelÏ&1[b,/_ÉÉGÎzOäšâNPÁEËPöZ'•ßí>u"…E[_ó%/–¯}Þ›((ÎiÑ?-Ú{ØÜfWy¼ä¿ƒ?)›ÌÄyò¦ë ³$‹ÊQó£¬=Dªr¨‚ÐEæEƒz§Òœœ Sï¿ÆõêöºòúŒ³×_„õuWÅS®N£Ž@íÛ'ã·v‹vRÝàY¼9²f®)±E4(WyîPPä¿}¹øê»¶ôlé}ߪKš{ªD ƒvônª)Æl; ɬšìŽXþòIú÷oC&‹Áé2gêï«0¾PâwòÅ_Üø |Ji(™ üÓEÅÇ{ìÃî~ë[ßj(™Oÿö ÷ÝWæ=ªXUª;Yüºdtv~"ƒu¨(1gën+–E(Uo-%àN¾rA¦cL~ºäéó”–-·/Qð+Ûv¶K·d¿3Ó|sqJC5 ¸©…)F·À²…àYÅY2iîÕ°c/ˆ_Üp¼©ìX~»Þ=Ël;4pG¯¿@©ªŒÒT2³‹ ï½”›!Ö¡'‚<ý2’*¢!¯òZgFÑá^sõn¦@]Û¤¼6æý’s­H®l2YŒ—<ž6iÀ<Òÿ¥Þñ·¦dЇ#;s¨]\Ø?ë½k`ÁÇÕÀCªÙš½\²ytî÷¦6N·tUgi¾¯Õ¸=<±ZÌ÷r‚¸âŠÀxm¦Xƒ+•Œ‚’óx¼_?ß”E½¨ ¤ZvÚö%É-!»Ñ„”&&KÈA+'U-§?0?ƒv9®ò6/D€ŸÓò(ù¶ê¨@zÒtHýÅôLدg¦k:Bœ°í2¹²½M¼kýZµâ³Ó.hñ¼OYµj'G<»š×þ‹›ŠŽ &EY)ʦ%^¨~šŠëšÍ5Ñr&䱚ý€ðþÁA6-Z¶(É¢ê&}4ÉÍNUÚ:è@cšÈ#‚ÒVk;@UZXP=Ê›gô?8Í„¤y·ïídèþäåi÷Mtæ­JïsyëžkÓ°u+ñ¿+r® ѵ6¢Œ?wÜ¥×3÷nÉa õ£åžÂk %ä’¾fÏ„áx|ºùÎhêkñ ÏŸëò¢ßp¼è[çÉÿ"foÐàSMCÉ4hÐàŸ.Ç=ÿüóW\áᇀh4zµ‡~™ìß¿ÿôéÓ_ùÊW.—L™Læá‡þÖ·¾µaÆì |6à³·Ekm»¯éúa¡›—ª]üüpPªÉ6m  ä9°AxpœO_H¶ìàÓg9m ÜÙ$àØ?Ӻѯüvæ›s-7ˆÅeÅÇISk!5ã7²*ÎŽQf‘H‡1 „\w,ÍÝ•<N8öÆÆèîXa÷I:-È.)ïËa¤£žó±eÝ@,ì*åËÎNÑ;†êb¦ær~tzÂ0¶·ï´ÚZtë05þå÷ñÃæp¯Y­ãNks–OLyv dJšûµZÏfÛòvò$àð@_åø|s;dO¸;ž }>¸8³Düô<ÿïož%,[¤V Ì£õi†Ý¨‡ü«Ìagyº`o«×oˆŒ~pz”®hì•罄= ç®ú.*=Sïž#M=]§C=áÁ¦Ô©$²ÉæÐTXÛ:³¤ÂšËÂùy¦®Px<)(Ã@~€^xáôéÓO>ùä¯À!Nœ8qîܹíÛ·_¼øÂ /¬_¿þæ›oþÇý³ï18ùÿ^²…l–ÃfLâý Mæ´¨£ó9›]QZˆËD$”– ìäÇ:wÓëêÑ)[ž1ërÍßéV’ò¶ãbì+ØË•pkÙæ° \Sj±£x P|–iÏ`>D–ˆªÂ,â¯ý9—^T=árçú|ÿ5_à‰wÝ­pÙt')8lð^ìd1$Ê\Þàš˜¾Ïã1·Hþð]*µ žƒæ0Ðò›÷X[anÙ¹É" ’€oõµ›ÇFÐ7Ža:ÊvÇ䦀8¶â¨bü˜¾Þ9"×Ü„|spâpº{Js½3fP:úì|K¼;BŸ£‹UÊc7øýóý©]Áó•h ãp†(åÅIûîàUd à–áQ29[ìý—/ZË#®¶g ùûÅÍ„‡ö¢µåÕI«6¯¬L%‰ˆÈ[©J]Ys@‘š Ú‚gfm˜j¸m—,3Ÿqh«=´¶ç6LÀmUÂMÖÓ,¢K(mú3%$a€‚;ŠL”&¯¸[—±L‰l ½/ÒOÇÙ*8MAçíÕµf˜“´4º¤UT÷Òb¢è¢K…îòï§Û*5‰".æ*ǧŽ,†¾s²éÚX%ÒŒŸVZ/(1¨!j¹—š’dVÓ*æiÇo ŒSµx‡§J zÀ^Ãòí•æg™ÀtxömoU´"mö(±¦ÇŠà- ®­®ä §<ÏœuF¶¯õ¦Ð´f¯únõM^”1«ŒU"'Ë^§RŒ+s½ñµ©¢r!åî  Qx3êhD—5øŒÐúÄ0÷¥/µ´´hÚ'JÃkød4hðiâ‡?üáã?þ+‹+ã8î+_ùÊÃ?¼~ýúo¼ñâ>è)jðÑpŒ9¼Núc^ÿñ[¶Szs{ r}dõ–Ó¥þô\Ó:ƹ+6Âk‰%¦õ¸/pªØ·ž;a+ÎÉlÀÒ K7¸j µÓ[u¿‚z¬¬3 ”.{Ä /L§=C'c÷±ÅiÇÜ$“MÒ‹#º3\hÛùýÏ?syöK[‹õß}Ú¼}ÒÖ‚è5qÏ áé¹¢*¥ŠîáHÝÒ•©Yk&ií? „×öùROxßjk) aˆuàØËÈÂm»Œ©yô{Gð8o:œÜ‚-6>+<Ò7®‹0WwTë8Xf3)¿YôœXÄÁ,k¢úÌQ”rj X×gÓ6üœ*ƒ˜¸„‡Òxx€P'sØNß…3,iªueø—Šà*ÊÚ@¬«„{…ÃCƒÖü,ðvZ€”£ P¤«xbÚ6@Øœ’ÉäK€™ŠR”âë˜sﺪub°u­Ø×ëSþ»V®èVEˆî/`.U‹[©2â(‚M ~vJtØ[¿Ê©¦6Ö( WvhÂ;´Ù”­/ôÞëÊ€%CÖn¿ÖlåãîlVp\Èxßšn Ú|…U§S]¡öO5Uò®õòY£Í+)5„j&kÃìôªÇ¦›M¼œêÛMÏÔÀy‰£Á‚VR^\éëw溉¾À"‚!Ï/öîm}ù `Ý¿)}DñVL—-‚€RSö¸—N5óCÈJ‡*ë¸üåùHEÅõV¶=§‘7–Ó)—ýÒ’8JÉ k›·TݲU 7h𙡡d4hð©áÔ©S?þø£>ú« ë ßúÖ·{ì±––xüñÇŸ|òIŽã~eø,Á{µ»nE§1ûsßOž·³Ü(ó>6v•Ÿx+H{ûºØÅ`máVÞyp1‹oð%P¥@QàÄÅ%sÛk¿ƒªÌv‘šì­®ð…óY~pֵȖÚ}Çc­Õ枥m·­Ž6òG•¾Aböb]cŽ…GîC¿ûcsÇË2T°€%äV{2­0È}ÓmJUØKíÚ¬îÚF?}¿nóš@±hËB@2躇.”*¤eAE¡À²Ji™VÖ$®üé •Ft¹ÚlÓÿìð¶¨â¡•~^S53!Q>¿z_s)Uâ±HTM ‘ËX°b NC8hlÜA¼Á3éÀÊ'Í-–…#–€]mOÒÒTâ*_£EPœiú•×ÏýRFUÁıjN[«º–²ÅÅ|J%©éQîå…lQTYvÓëÅ7ì`™ƒñü|ֳޗüÎ+óLVQ"xŠàð õV4_[ÉdTëgðÏȸSGN½Ztœeyå5!˜x®ì¹ý½+¬!ˆ¨ƒ1ÞWÎ+[¤Æçê~ÖßÊ—XRiñäZ<¹ºJÍd½úîºõ!›å.¼%lÙiqÀʾ~Sì IDAT«¾MÌr;³p±—£De*ïß™B&ésíŸÁ·o°–óŽ iã-þÑ^_ÅïÎ D©Ä]Û2'r)3àDË¢Œ?!TJ¿»½À»åwgÂo] wxòˆ0àÀ•NnmÉ`’R`¬æ»ŽŸ Ζb(¤¶÷-ÛzOQ)yÿ0<ýÉmÛ Ág†’iРÁ§ƒL&óØcÝrË-=ôЯxèîîîG}ô¹çžÛ·oߣ>Ú(3ðsSÒÝGôîm0ñ;•ï°}ó)âÑÝBg«É±ú½[ ?8ùòuˆÇéõ éê‡e´y±ù¶èÔOÀ0-ÓDq4¤)¹[73Óî⌂ٖñvÏ[O3ŽPµu87´m*¶Û'%iýÒ¶Kì!©·Ë·Ñ «9¹yùMƒ"­l ­¦È©E+ЋÞÔ§¸mVYu”ðIY‰Ýr;r‰VLJÕÆT5LhKe}ÊŠ QR ì„bÃå6‡–%HÄ™Óôç» ­Î¥ï>‡ŸEQ’Þ}½4Ð ˆ©'*Vð½‰ñ0â‰#®à\áÎÝ…„Ïû5†\Æ:zœ§¾“Øazƒ¤$ä?.QA,ô*:!gp~Z‡÷+™Šé,*@iãæ@+õËœ¦‰ïUl.Ò¾<ʶ¨…BQ¦ìNÖ®çWxºrdÑëê´~çÊãt¹æ¯€s[kúƒ#^Ž xÚrMÎÊ-t­lÐeø„z¦H…\òÕûç#U¹J'¡ zļè\Í$¹ªOæÐyç6T~²Ø¼5f÷;Ö¨aIe ºr /N7.:Ý~ÜkÕw8cj ‚ÀÝ®Ó4veͺ~ïâÓ]mN‡ßV 3ù™JSâÀü%£o–{»ØüØé¢ÛO!m1€ ±ÌQ±KN9LqÑ.îK;€¨°K9g>=ÙÓƒv-Žn¦ÞrTˆlf—ïI§Ë&µ<‡n¼fÃR*Ϩ¹ŠMB¸k¼…ObÒ >Ã4”Lƒ >ˆ¢¸šåÿõ¯ýW?:Çq{÷îÝ»w/üêuÔgÉ`^*öÜîs¥hü·&éïöy¿{í<+ì2‡{¥míÂÉIÏ®A=åjž˜åÛÇ—†©- ,MGIÜÒõªÖ\aøÎOšª¦Wp„ Å3¿çë½æå’Ó"îwhyÒÒEHÄ$P 9H-O؆™Ž,F1½˜¬™²‰Êº1°I 8…™´%ðV ÑÕåstÂèôJC¡œ›`5‰Z[Ë[¦°Õöþ¨®s‰À±yûΖj_( Ü£OÍ£#ʦ>{©"ækWî¯[²_ÒÝß}‹ÙY)u{ÍöLR öÛŠÏd¯)ŽfLgQÁR®îú¸Šv•?媅bÄ•¡eÓZ,BWHÝ4ËèJÙþÄà¿¿7½X5Ý%mF6Í ”\‚&Œsc|+»’%Ä%§‹®ÈÍëÇNÍøŽ-R{?nVksÀ2W’M¡7sjÅ ³ÒLj™á·,°iW/WpõQPŠÖk[Â+ÇW·uT€5«i,rù©@¢ŒHR÷ìÊÖL{ªÌ]T2’FÏýÏ/†}õøeY|>ÑýRµ¿˜ª.8K»®Rz›%ä]¡•É”ÇßQåhýÚ˜Ü,Îi¦c‘ 3~|¤Û=÷ÇÆ“Rà•âÆ=ž“ã3ÔOŽØJÿ³ÛWX‡e˜P€Íb{ËOqtRihÙdÎÔ;Ê:ùyï%ùÄà²WNNŽyŸ ]ý’Rugˆm„–5øu§¡d4hðOQ''^?÷ FiÛºmÃÀj^ÊÿÁ°®‹‰1§Nj”,û9 z_®÷6Ϙ›x/Ê‹1¾zKqz‘ûÞa?r®pð rû®Ú|–Ÿ[qÄÃUO3ýí—Ú¾üÅkû'_²¯³LÓ%6e/Θ¦(VÝö9Ò\FÍ]%Lœ@4Àp£$bb(¦bÌj1.•H¿•êaq5n[ÔŒúÿÏÞ›†×q^wž§öíîû‚‹‹}ApER¢VJ–cÉZlËqd[N¼tœLžÎLºÓÓÝÓIžt;ÝÉŒ;ž$Î(²Û²%k$›ZLI$EŠâ¾Ä¾ãî¸kÝÚë€H¸ AI–©~øUo½õÖÅñþï9ç4ý²hP\ˆ@§g©üãüÉÀöP â§û;ZˆÖ:QàV¥j½C:Ï=u<ÔQomML§–äŽÀÃõ[˜>á9ôvö¿~ßèŠR½M¨>‚ìZÌ©€ÖºÊMmÎÇ_³}ó¾¶ÕŸE8}Jr’xmúhšÑªí~ª.#+*€ •daª‰!‚h]T—î5¡6 2-´‰7waÞy2‹—dÓãr.VÅ…Ô9*2§Z:)b€p"Ü¡ˆj™ ¼ª3TDÜVOñ»Oû¿tGNàVezÕBExZ¥ :r1¨ÅU,#®ya†Ž„åɵΠœ>œ]é/‡žVr*óÎS(òEÑ Ç.8¿t]6Ç“?:Ú°¡>YÕØÓéØÁŒ;H*Ô–§IgäÛCnÔß-vj¾ïŒkGK©µ®²Øçô"{ñ¥Aw{@ð;ŦR,á}þ©:=õÚXÔ÷{lôa¥»‰ÉøË™ÿülc¥ ]ßGºÚœ€R:N F¦±¨åfèÀï:û££ ¦Ã–g< Tv‡må³ÛIõîÝüŠƒM1‘çªÞßõ])óÐÂâ〥d,,,>,¤RŸîóËìÛ;»÷–Ž[†Uþ0::š{ê)÷¦M®ÞÞ@08::º¸€áááW_}ÕêÈù.x3ÝÚÉgÁ¶¥½…ThÇpŒ$pŠÑ¿ ¦5Αòu†©$ (ÆŽPa=á6S€ €¥JÓSçKõ³¥¦-Þ•¦X€ÌK1“tžM•È{w§ µŽ™¾¿Ïs}‡Ø—VoßO ;Ùï».pK§†.ÛÒýn¯Ón›K§åþÄ*–Ì`Ó 2WÄy2ìAm-¤'ÄÇ:…Soi¡igô¹Fþø`+@Ÿ»À˜e3¸c\ ” :§3i‚SLœ„bÇCCwNgTgx@ÀÓòrsa•`&˜ ›ÜI%ºÙ™" ěŖ ôgûšv„Ä¢¨›ÃQ)•€FJ÷%IgJ€Ž'D»o;'&Ù 41Íw,ÐÄ{GN^à}ÞþåO–×)f@5±´„åäâðf?W”Íly¥r‰ P¦º¢¾emC”ˆE§æ¥ÀS²U/&˜™—Àž´ÿ̓“À3*Ø£'z²¸€ãð‰È|w`.ã Ñ\síÎ)ð Ð.Š292kû?Ÿï®—û›Å¦º%÷0žQomMpz‡öJO ô5ç^ø¸¥iîh¥g‰'±bEûÔ&EtúÝéɧI*Í^¶›f %EÔ×#ýä Nð¾n÷/äÿmëžQa~<3NDW »«ß;×r[kŽ#k4rµ°øXa) ‹¢$^.cö-ìÛ÷Ú>8p•ÿäädϾ}¾}€¡½{ßÜ·oqßýîwðƒ\¡_§Åj^šéÅqXÜ#®fck±5&þp°§ 9©âë^²?·uì»7Ï´'ë ùC…Oìòþ²d69`¼êm)„ÚlÕ,mH69kË€"5ƩЂH;œQq½N™œ ›(ÒpÙ>#¤nûÔd9ø³‰ÍŸª;¿¢Åäò⊃î½ýKy;«ol+¶Æˆá)æÑçí;»åþ.Åå€RKçˆÇ_³÷4˜ß¸snqp¡BÔp„êq ÍL_zdG‘(C{]a1œyÂ6F«é…ʉI$WªÆÀÔMÛñŸñîvÎ ëA‚§œÒ,Ç#Lââ ’ÁI+lJu‚’ÁŽ«¶ÍÀœê}:Šl 1ª&>F¹­K z•‰Jð±F#%½½Úiàõº@ÅÃkš®§ÒYg(V­J¦®QH®"Fr‹4Y@ ÉŠJS¬Š‘¥³ÆByg¿ªÐßQúÉ~–ÛÕ«öw¯Ë)uÍ„ŒhdÙ)0aoIRr…K‰ji:U&¯6ÇÊ$= §š õŽÊH!àŠ4’@vñ ðúéÀÝ]ժʌe}ÏN†Ldè9½³A»-:îã ’ÎJ· æ Ñ+„Àê[ ­¤˜“#ì‹G¹]RÔ¯¼zÐUA:“^`^+’?ßdžî¿]%*;Kä€pÚïºÛ%i˜Ýx(^ùÑë¾nδÉŒ-¤X76>uÄÜêêo';Õú•í5Œ¶§¦µbYu±$<\û ¿ûÙß}pï]ĶìÛw@qf&óÊ+\oï Sf‹«rd¾™èÖØš> °úC7¥Ffí‡Gcù™yl2Õ1÷ú ¼í§¡‡1^úšëÔ´ç.¥Ó¯f⾉´Vï¼]¥Y`t0°iÀ1Á¨¸P™ÂñF*¿‘JçÁͨjª‰_l²Ø'!xf²ëî†~™˜¹“Iç¹T‰hŠ\V "pFGµ-ŽOßù †ñaÏ1Ÿ½­ð^J=:?Ëlë•©@£ª)rn^ÒØ‰R0lVr ‰¶ ­6 ;%ßö¾c¹»Ã‹‹Ä3ö±9lC|òÕD¯ÛXMäÌ•¡ Žû0F¹%y³ @‹$S½›Q )9Ë:½ 3YM˜ÕÑ«I㡺ü3Š·ŸŽÓ¦8¯;A€‚–*âÉ<È&Š4Bs¼þý .A¯vÒ§†l¡3˜pKwÙ¡ª*Z½_öýò¹¹ÓpÙbÅÑ9sW¯|à$ëï©Ub¿6š²%¹XÕ6!‹TD)·ÏR1^¯\9 !×ʘŒ‰°ÅÛ7ºÒOwîÚÔTŒ]”4Ï ÙolÃ~z&°5œ¿·-óR*œžl= ñý¹È;ù[ݵe6œÞÕ›¢¢(ÃSÌŸÿÌÞáÕïÜ!ïêÎ?¾_øæ}ùf‡‚Qì×WOûÞµíh*ß³5WU™ÙL@³‡(_@nIÝ~;[˜;äliQ{Ôq²!ª'º°ipøa«Âü󱞇·¬ü59= Ûü+•ŒÀ¨,OúV¥ZX| ±”Œ……Ň‚³'Ö:5#Î<öØc‹_ûý—êx¯Øèvÿ:ãÍdrï€}ûä}ûD€ÊÞ½ÿ7ÀýÕ_õööZ9fWe2-_è:uÕ‘«okÉö°ÙV˜uÖÝväR2yçïß‚ßn·…*e†KÕu`8æ›~³yôW…@[Â×¢ ÀR^Y–ZÝÓ†¦¼løš¹„a#œ]A¤¨™²fÈ’ÔÅ—u’j¤ãÞ–Á‹éX6Jž/ÙàРgo_íO»ÎlkÔ Eâg¯›sØÿüCQ¸¼„a$O Ùi|*ÁˆõaFm²—í´ºÙ3s{´ö¾SàL—‡ýb‡û[ÿTþÜ^×@ÙÖ€ˆ9³ÎW˜"pœÐêø$,þ»ˆ¤³U%˜ÀMõ•AÃW‡•¸­4£Ia§PÎTl1GÕE+L„/Ú‰ ÅøbÍB9YEÃ)PjE•~tŠ¿.Vî ˆ\0h]ßÔC(£³“í±Š$¢| õ6™£ÓpàöAK=DCèÆ;WGÓ\¡TªTmg¤¾át:Ð¥œ¹úe«D“‚Ѥ)OÉ^ZÍV]>¾@#Ef|*tdÂÖæC ¾êm¡Ù73­ Uæwš‡Ḭ̂d÷æ5æáÆ“ëÌÑZT³ßŠËÉ qò9ŸECõ;?fÆ5-Üåüo¿ ýö†Ü7nŸ\ÌÓJ=SUÓGæÛ]!F¦yž@ÎN›/Ž^~]­JÔ'ê]ô¥·YK WÖ˜CM;Ç—ßt0‰}†)/¨îå™™ †×0 ¤Ö&ÎÂÂú%°°°øPsÆ`­FÕÌÌ,mì.~îXìפd¦ffl˾%á’™­ P÷íoÿi>öìYKÉ\™lÅùútèÎÁ«Ž(ˆÐ"®T‹uÔ9¹ó‡Ç£-^ú¯„°¨ìÒ$ióÏ¿íOœp—gf›ʬsÅl*"@UËo«qU.:ñ@‰$)œ¢AcŒÍ0±Ö-ÒÄ”´¶‚®aºÆie“f*ˆNød…útd¥’%|x‚þ§—É¿¦vëh®Güûä-L÷†M—m¬—G()f‹f™Ø,ÝÁ¯÷#sÆéS Éîzú™>_+„ÍšXoýISªRÃŒ#eŽ”+’Óãæ{ĬÛe‚)÷f ÉÕéDÕQÔ\ð¯¥X ªºKæ•UIÓ¤Ai1`5(¯kÎ+òÀ y}g¹ÔY_‡gò}õÊ%u*VA¬Âùalt Yèmú(47¬kýš®çrgK®(Wõ{£²X’ W2.ó:ŒJ•x.1M `É f/§«³ q¤åsùÑü¿}bBÆ„ÍmÚíš»Å9¤-þÜIâ‹{J·{¯¹b^àÌæz³¹^%lxÿá1?ëuž7¿}Oâ+žV®sMæ"9ÊãŽ\¬öÅí‰ù9òçÇ£Ûb¶ uóGöGç÷O4žKÆzBKÿˉ¦”UË•LJušš)ÊÏ^CjŸ…ÅGKÉXXX|(h ·ÁDíS›Z7ÝúÙÚ©\£¿žÅÉçwìÛ—4€ À<€óÛß&;:hApX‰eW%SvüÙæ¯÷.¯A_AR.‡ÍÁ B­dË\^@`µ/Þ072ïLš~©jêšÑãz/^• µ-xë›§ÒF¥)s4íêHØc«'g0¹›=¥¶lgα˜¬ëè@ @p€3/MµÑ ÕÁ3ŒÍÕ€{»n0ÎÊ 2ÀK”8\žƒ7N˜æÎåϾ¨#]þóÇØ›nöNíÙüíÓ“=­êÎ>fc™ÌUohTd&à_½œ5ÁÅ$4Yìnç_ÔwôàÄ5l¯É"lMSµ¹´þzÒýpÝ›áºmèMÊPoO@½c)€s;€¤±¢Æªyž zÔœ¨F“ !Z€&[I’Ÿîœt{ZÈ™YWvÌH±€±´áxxøˆUH¦áÄyxáu3샖8 AÀ·Òpl9*ÆfoùhI¢h§Ÿ ·*Õ¢YL×ìôR¿üršBKÂOÀ¥C©è3Tw—¹-^Á˜ì*™lWf4x|ÊwcwugËô_¿V·´`qI„à hPI»L 6—©’¦ZP–žÖ6ij-¡üc§[J ½)–Xüái妯‰'G:í¬w¥ ™&Ø¡ûèâ91Ö¶ìÖ3Š} ›˜_àý®ê{y ‹–’±°°øPÐëXëÔŽ¥Ô÷·Û]˜(œÜ»·í–[â–óòµPUè¿;ÖôÍ-#~[¹æDЄÍåt¹A*Ìf²šn\Úžò¬Ö×”¥ìôaÑÞÀÊ$ƒÿôD›‡×ÀÅk`ç´)ê·®/ÿÊ!(~”r/¤ó|$Á†WÜ%L'³Uǘïfj|^„©Ü~ìT‹_©49“Ïœ‰Ð¤yÛö™éŠïØ¿€q†ÂpÂì4ƒ¬‘ùÃ\alú¶ë)Ø›ÿdgIÜoœ&Ú@ÑÈUœöÚW¶p¹2&mÓù™8# AÁMQ#“ì–mLÖ§9€J¤+8ôÜÍ¢¶0,¬ð?XGÉ%¦d¶€‹´óùO¦ª ÑQ5aºHïíÌ Õ9¦ Η#¸Ó+˜e­Œ; <47@sˆU\¬¢óC0:…ÔÛ õQ¬¹¡†¤™&›#zL]“sóI㎠¶£j/×l‘yÙÃD™™µs )ٯSì$ŠJ„QÄÓÎÌíñNÀd>ðødÃ]uÉ;üÓã?0Á /Å÷Òl“SJe[ÁÕîS’fúÁ£cßãçÛ¶„ò=áYàiå¾¶ Ou ´êã %s9OÈeóÒûjAuçM¦‘”×ø™[X|¼°”Œ……Ňþñ¶üÚË_[qü'ŸúÉbK™˜S}ßþ¶££ã¶ßP›Ó¼ g±®-2›±ow<Ð94ž<5ÒÑï_èöOÇ)Ñ`Ÿ›íNO lëÓÀN\z_£;cŒ©%ËÖÎÂÂR2&N¸uÓo¾E°â0ï–§Ä0ܼ¡ó²-ݸÒ0ƒ| ÚôY–ZçT2¢)‘°FˆB!™„=8î_˜“ý-x¸.”Ÿ8ax‹¡õÏöÒü°êÿ­úckÝ«*SÏ®©CNž¸ÿ®KG l¨Âûv›ã‚§bááuýá{@XÙ“½2é\`Âõ…ã‹ß¾špµ…µ˜-)’ä© {:ÏÜWÏ1#IJAµÿŽ¿•lÛbÏÙù¤îØ"aÝYTvT,™Í ¬>ŒVJ”\¡âõP߸™û_i½)žluM¦Èˆ +ÙV嘭“ ¸dŒök¾%pCò#,Îmñ²³—WÒ‰þwOº1œÜÙ%]¿%;BúáÀž‚ØyÈét¿8Ÿ&‚:#ÂÔ0<±°°°°°xœuƒiÞ³mi,éì…bü‰ÙNŸ¿?îAë•1PÑ †W±Õ/#!D'ø6"7W”`/r×7°åsIýÄØ¤ÍTNÚךgµ+Șt¿LÆœ1{óÈÙgœ¸X("ð€öÂ#O€¸Ž2ì  T–+NOIЏÞ? ‹Ý+‡.x¯>NQ¢f®>ž­ºÞÌy¶‡†Ïë­ª\Çzf[„ÁdEƒ9ä/ƒkõÙb©BcÙ¯ßR:›t§“XÌœ¦œTcäz˜Áêšñ«#LÅSö•‡«¤=ènïw å(À°±$h$@#5]à hº^U6Ùi¥™© $¦>9‹;+_ê?볫*SМÅجQFé:ªnä{¸m@ 6™R3šèÕÏôHGÛäS Ê_I'&ÍçÏ„ƒ‡·œ»è3¶žQ·‡¤LѶր²‡ËœµicØT9‡9˜·¤ÈNo„>Ý8à`”çf»óq?‘¡z¨/ULë˜W½|vq†1)_3"gañ1ÁŠÉXXXXX¼¤˜ÃCÜ7ªÊLgŠþ¾xƒ° IDATÜgǹu{ /§$3a¾DÛ=ÙJm«å”IÛßÞœ×$G7HÏTÓ-n,!b¢jò´rwä‡ÓT¨N¨YD¾&bþË?šñµ¥þÄž×ZBm‡.7l…¹yxä ¸ëÆ+Ù§‰˜abk*ÞžsoôŠ‹vUôH0íÌ®îLe"LG5²¶Ž¥¢¿Óx¡hº’†ý681lv^ý9—Â+6]>-;É•Q,]×ÄrÉîç?¹½zèuô ß»Õ<£7õVÇ}ëv^$A`ƒõ^EšJ¨rÁ‡1Ž®¦?èòð¥]Y(áØø‚~ ˆs¦ÓÆd2H(Ûq:O¹™ìh©êÈùZÁg²ŒÓ±Hª„è2 G¨ZÌ69W†üª*3¾xn*ø©úä—úÏ®gyMþj¢ ø•Õ§JÈUF Õø-ˆ“SA{ú Þ=ª°hÞÎõŧé=†ælVç¥z °8Ÿª &#³”yèµi‰üZŒè-,þÍ`Åd,,,,,Þ+éú/ŸñÜ·#—)Úž;Ýú³smÁƒ­':ÝSïNÆ2B¨JØ4}]åï*N1M65gKŸ«DÆÕ9/Ó!'ãsrIp„¼×9úÖB¤³×´Œ_ì7ÿä·+ס »!nöà¥v¢¶ô÷ÀW€^‡“çj×UÀ5…G”ÅoÇçS"µ-réó~Õúâ¥§Ž…®¾8‚–5cű©B™ÈÇF´ØfjœB2®k5,k„° g*Z|õYC×J™¤`'·o0·Õ^{ËŽ>´Ð˜W6ö¹2PCk–¬‰”¸<ÐæÁ vn‡Ï‰v¯„V›÷p äTíÑ8†€ÀÃW€ÇQM13±í’ziÀ»Å'úí—õâl ƒ=S¸J½– ™—Ådª*óØh|kh®`¸æu{H€• èd†Ÿ(-èÎ.r4¥: zÏüM]“s ÞÍõõ¢‡7LTf˶óÂhüì|t·È@È eûº2+àô¥ˆŠŽÍc^ hGIÙXíúPê:~h;v*F–£ò<®©!s:dN¯v‹^DàQÄc¤—Òµà|¦þG§Ëö?ì;Ûš¹B+¤S±êä¥2Sš?ˆ])®ÈâR ?¹Ë•ðµyx7ùÄ÷Ð9|,ÕTšUíD©4cǤæ.6{ñªˆOO^›ë·…ÅGKÍ[XXXX¼'~qÇýή™õÛ_•|•Œ‡)±ª\¥JærT “àD@6)#3ji‚ieˆIO ä­kj2R³²k Wߵ޿î‹:äþ»pFdßõŽ1‘_k|¢HÜÒã <|åü‘'Lèï¹$6¦Í¸ŽÀN,m¬Çç„ñ }ßÖ¹Õ³ílË=}*òÕ=#WX¡1 éËë¾÷O4~².éŠG¥ Û˜¥»Y3b±+U¤_B,.Õ“™Ã¥æ;=5œ®êé)ÝÛè‰b·0#Gª¡›õ ]¡žä"çQãflpë‘ ˜UƒÓ‘F6ž†4yPÑ|ÎtŽÁ,ò»Q™ÕÄ Ž-%$‡Î]ý½sÃ6ó#hÏÍž—f›Bw4L\kšÜ"K¥2%Ûr¿»Eò:íd®>g›m2Æ&ßD­BÄDå"Xs¸ÒJŸŸS‚Çå¨h08Ý䥷ŠÀé «èßâc“±°°°°xO$sè†úò®®Üû(c S¥0 SÕ•ÙSë!eÄÕ‘ÅnmÐ@Øi¼g>S¬VÊîºÈíÅ)w¶z•l«týóèΛpIg÷gzçeÇ]Þc‹æQëdQÌÀw~°T”_0\çÔhq©îâÔ˜pWs¡fq…ß%lúDêJe: ¸$“2G¦Jõ„f †»dÒ!r©"ˆÁä‚z zÐCSš"L"D–×tJ0T"7¡Ò6ÒmßéâíxQGoM9ÎL]%/nÅ£(w…€Œ¤±’Î^(ćŠñ×2½§7½Zè –F.¹H¥%6£4‡™¢ÆtÃÙ>ì¼ +å‘ãˆÞ5DDG%;ªá†°ŒâÆ|½^h²•ç~»ý仓1‹4z«‰ÂÊ¢ÿ„nÄ×L-[GÊ×ûGJ d„¦o~N8ÄR ?y·ë€c¦/µÖ#–’±øØc) ‹÷Ä—ï®6×é?{™Ýÿ›Î½o[+Ó@eƒAÚš­3¯LZe¦ªŒ‹…Nj.®MžÔÚ†x93Å’Ê'w¢±~±‡}MÄ*ü—Dñ5 §Ù=º´Ç{æ]¬Aà¡­ Û½ûÎL± CJýõÔ¥@ÄØ 󯳥uÍmîí½s/×ˆ†3Ë[‹>?¿«u .ȱnêÒ‡÷,&sHÍ×Ê« ‡ËEc)m©C˜**tN©-ü0CeŠ36„Qt—lëôª|xÒ~z"°Öä b‡ŒH=vYL¬ª2U•9—ŠÏÔï›ìùÞèÆçfº°Á1óÅð¡[½çeOÅdêµÄ8^‡-åø9°c*j²K¶÷SoÞÆ@²*óš¼å¼ÒžÔÂcåãK:ûVªí_&»¨Äœ>ª$Sßù!vòü»ß…]•£s+ï2¡øë¨«[V\„#åÝ‘(Wúñ…þªÆÊ&7&7¼PÞ˜–'û œ¾»AI/\SÌÒÂ⣆•]faaaañž8Ôߥ¶5jÃÔÏ^f{m»†ú–šL•ˆÅꥫ]ÕĦ z½›n¤u2þ¼Ñš(;7¨#6AooW”0¯OÔ¼ð¿2¿þ)ŒÜÿßxçÝá‰zûºìÎp¬†˜À/e—}ït|{,ON;5ÂÝÓU¾B ‹gÔNõÀPlw{í¢#ÍÄðw¼ËÎÌF|¬â·• º»dÐa!±|$JVqºÉõÅ”˜ïDÂ8BÞàœy5Ñü™†ã5Çâ†b«Ì„z1ÒÂ9×ó3§ ?>åB¦±±¹†H›4ãíø¼¡šÅž(ÙK ½?é©·é€c› °90»wY`¤„\#fÛ¤á¥u­-Üäê9{éÑ7*Ý.¼xñ9Bnâ*IÓÞAÌ9Ý9$79p%ˆ—cTšiª<[ò÷Ø37უ9Óî'n؆ŽžÆ¿ócz÷FÔß}ÍZ`Ô)qe߸d¿Þ~ ¡<à(¹Û7]Ñè}é.…ã07©Øq!b—Ͷž¨“…ÅGKÉXXXXX¼,×3¿8Àzè=êC73*OSïÒúlÍ„é‚æs-a;¤¦æLÏþR÷u.Äœ-7©¡^AÍ»•Ëü©~þ¼ t(¾oÆ÷ùØ —{÷éF‰·y¼ùºcOà6cý½¤³øþ Ø·¾¼²]ã 67¦r¬isÍ35ÚÝHÀpÆTæçCþÿ¸ë H±­üØŠ‘1:}¦k]_ÇW–r:#GHàe q¶|$Ñz]¸vÑ­•„j*)´E+ÓU¦~{¿Ú8›þ—£n@ÆÆ–¥WO”IQ¦ó¦kÊîÝ¿¯ÐèlÀq|[}ÑÁ¨_ß0ºÂðĦPpÎô• šÒµ8J´Ù&×\0.õ0sç*±Ý®K»ü ö™ÙB‹).2"“ÝìlrÃRýó¹NQ††Ûƒ.Ÿ*¢M=8öÆQtÿ]ØM;Œm}æðù¿~*ô4¢md[¯Zàu«_Ê”ì~GyñÈœîb²W¾j5‹EYEŠALÕá%gw8ÎŒˆ £š/¯¹/f96‡•ù ð\ƒ3…ÅG KÉXXXXX¼o¼£g°á ꟟åßu|¦ªÐ ¸ªÂºëÔ×B3P¶¬8Þu‰¹0™Ú—éîPè(L=~°ãúÍ¡*Åøõ9ÉΠù,´ìì>™a¾Ðuâ½ÞûNë>é`>ƒ¿ø+ú{±7ŽQ_Ù#^u—Ì3j»¯z|*´»­†Eab‹Õù¯ ÖÝß–æe^ #«c/.ååkð¹ŠSeÉ`• lðN?5ÖÙâpú„ÚÒKP3*Ƥø_¥0n6ìj=ñÉÿýyÿ=%,W¦ΰm^3è³9Ü\NþûÝ隥A‹,j˜ F´"!©ü|»s ³¸e¸É‚iú—çÚzŽ@NwºÞy5¦ÄÀÑ‚w·c.îO/h®Œæ˜W£¯œ+=ØV×ä*Áù\:‹>LàQ·ÖÖ¤O0ÿáQç}[µîf5àY³qêr<•ä2%3\ñµ ™õ\’ÁNK¡#娛PR:…¬Ïÿ¢ÜƒÍ•ªí% ‡J‘I£<¨µwº‡þòþ„(‰¼ïÆ4M× õ¿ã¨¶±F|Tñ–ʈ¨*ÜÙÎðÕ5ÌÒ ©W˜~=Ûòé豋GèrEg`¸Òp¨mdÊ¿9±Øà(ÂH&ΘO§µ°C=[‰¥c?}á̽„xBö0Cý]ò·Õd–~âu'`pçÖjST¼ò2ÂÎÊá©PoÝҷâý&ÿÕkJ:{¾ŸQí]¶Ì-α—švºæÛm“ðF~Ã6aNV”ŸkêVU f{¿ãÒµ‰|œF ‹–’±°°°°øµ°LÏÐ>ÇïìÕÛÕõê„k¾§Ô²är¢$¹}q48rÊ4г£>C‡¡ øöÖ£bK‘Ù¿ÝQ—êÔ°E~wä$×ËéÈ´^üVàá+ŸÁž4ÿüa `]{PžQonN¥¼«•Œf`àéSáOoLÀœFÖ2XsÊú«*Ât1£8<ô¥©|Bq³/wh¢qgcíâ"ði3&L”’Ä¢érrÓ°”û4¢Å6P«úPÀ”Ÿ6üy•*•V–6zsÝMW·É^‡)ÔÑå£é¶máÅ#!º4ªøfs[LŸ ž¸bºHYDÞLDÙD”Mlsr/Lb¯ ±B¨L¨cËMBÊËšcòïÇäñYþä¨ð‹“ŽíÒÆÖ5Õ À¨i)ö5]m®äZ&éìd98Pñ=¶ÌΩ7s­%¹Ç?°Yz-·Ú„I %{élT¤µгÕPŸ3¬R‹9–’±°°°°ø5"p¨¿KikT¯IÏ”%R7ÇÞO%ªTÕ£Œ¿GX7L7:RŸo{yÚUç,§ÏWšº·m@6ü='´-ãXªîó±Ë§<Ü´óÚ ²‚Žò¯&‚íeÇŠz’¢Á ŽÛ;üÕÅd­•èNÇÊ ™‹DÙÒ±dôަuÅdBI)+›i6y3j‰Ø|þ5k?ÆŒaƒDô”Úr#{©MR€¿ìî2b“FðœÕ4„—äB^ÛXèYÃÞà È& š‹d`ºê8XÚ¦5»Wò&ÓÅd7Ú‡j^8=‹êë–ô$GHwîGžœùBÿ¤¤³YÅu*[ÐZܤåJoñ¾ºŒ(“dž\ÿ‹º­Rk]I`WºðŒ´LÙá·—.ü®Ú©e’ÆN”ƒûs‘m®…=þQ/[ÌÇÚt³wî–àRjAqåUúÓácï̬ÞÞ3÷ú ]P¸·óu—” €(áë/æ±°øˆa) ‹_;׬gÀ}ÜU âߦ®É™)ð5äÀO¤§ïjžx¶Z÷G|Mÿ‘ç‚ÑæÕо–mÂØ5uXå]v.C&zïž<£ÜÒ”zk:üÉîË”L~Aî´çÛ÷ Àœvàêò(Ê ]éãWìNsÙ ¹¤®4€æiåÁ¾ÑŸkü¼£TÓ`/JÇ vD÷ (í]Ì’„ÔêúéK± =xV6BÆ·Ì[ÃùžÞÙ5¦|ç*““LV2تÉ@Rs”Mº`0.B€Y¶SJ=£ ­щ]Tdƒ;Zjý×ì–[ÝçWÇdÎŽ˜Û6]®/:yïï–cd2&$%ÍH®¤ä8Sh |©±±´¥=92ëü—ƒuA¹+Vò».K9kpU’%›ß^:_n­L-“4öL.6Yuôº²¿ßzr’ëg›½´úïšß¼4LgŸLvݸìõgÕ­ÑÔ?iâÈy—Ã.C¬–’±øØb) ‹ˆÕz¦¿«¶íR©Šëâß›qÙ ª2%ÊÔü6þ¶k âñ†×_—ÛÜ•­Qí­)ÇÓ'B·vdšB“n¼x°ØÜÆfÛ×ö˺*ÙŠó_§Cºõí÷eñG2ÞLÅá·-‰±ÃÕ¯o_rˆ>VŽîv­ž’g*TUexúêVW!/Ôj¦É3ÊÖºü±±À ]kªä:˜.LJµG ·‹È'µ°ª‹(€lrcj}Ù½z±¡0qtÞ³5šÿò¦ËŠg–+–ªÉTL¦lГqáŠPLº¹ŽYü2}R%Ù„ÞT¬Pn7KH[#3Rð¥\w—i·_Vxsn üeúóÎ=æ#O‘ýÝK€#åz{²ÞžÜ ilFræý jÔC©ÚªÙ<ÿô)[À¦ïlÍ\ô09*oM‡Bp‡ëRjYUc' S ^ Ãú<ÙÏ6IcߘoÉëôm‘±r÷ÍLë½Á‹î—^JŽÚŒ=ñù—gâÈÜØVjŽhói2à}—m—,,þ­c) ‹”åzæï~&ÔÔ3`Ju]nQ5eR \©J«T®B¾9ǵ¸ Mo H€Ð®Æ¤ß%*Føæ›=JA £T_Cj"é>5ã|yÀ{[WîVÿùi1ðäÜ–.>Óé^oÝùrŽÌ„~¯sø]? xZÙK¼0ÿRÿÒÇüs Ú0QS¸³ÕPU¾B@f‘ ö’¨¬KÉ€¹FÀ¬5˜élx<á\¼uM;‰‘ÃxÏ1¹ùVáØ95º…WÆ5à5Šžü̳[âê}›çsºsLnMF4™iÕ‹ŠÅ†+<®øÈRŒ9|¥bY ž’÷Ô=1ØÞà^êGÉR›m2Æ%÷¥{*þ;üç8R€±IãÁ›W6rxèm†ý‡É›v¬ôcà(¹ž’ë)IcÓUç|ÅAÛéK«æ‰cözVÝV_ÜKŒ’Qè¹²-j/@UeÆóçÃwÕ%?Ý4xQœŸÏÔÿ2¾#’Øë[YôÊ\¯“Vkz3ð”쥤›A>~Æ ÈÐ e«Ë¹ÅÇKÉXXXXXü¸²ž)ˆäÞº…uN%J¤(óY0O²¦˜6¯€uE§`Ä|RgL»÷úû`FLh&¦:¼Y±Î§Ï6†ò¡üxÒuzÒþò9ÏuM¥OÔ§ž›éž©Øw…F¯ °KÊ3³d"ŸíýÌŽóÛJ~^›\ð7x2ðw¯{î¹iIm¼]¬»ÑS»˜~9qG9QV7oY GÊÈD’Î.nú—óêí½ó?x=ò[¼B[O“w0çV{^)o ~%v@„(#§ŠnÞèØœ”²>²TË;lטÑW žVZåƒc »š'/=!ï œ›®_Lõt ™×Ôô,r9k˜.lë3yšÚÖ‡ |m1ÇQrÜ)Ç)¸!Ʀ+ŽœïdVxjŒ{{Þ³­.ïçÔ×îOQÊ #9…Þä_ø“þ£/¯jìS#>VûFçéÕoª…8Øê¯]Øõ¶r©J^çuô¸‘n>ò+nO›±øøb) ‹ßkêd"½öþL”ˆTŽ.‰D¡BäÊäãt›…œfsX€]=Å{w_CNšMšg•ÜÓã˜G€¦P¡)T¨ÊÔ/OßµuÇ^?ùôXgŸ;Û\³]”É×Ò¶>S²=qÁ÷·žYÿ2ÖÉöhâ…‰†OæõSÞhçv˜0#†btyu&ÒjÂÎòÓ§#‹~ÍWÅM©U­†’žÕv4—ö½í½wwêâÁE,ÃQ6é¢Éà8q…S« 3ømñÜÝáŠkUÇ›÷—þÈü+Ãõ™Ë­«9BnwN™ìÏEË;˜»¿½FÜOàÑ]»ô£g¨›®»zT§ä·ÜàNï©gÒç\Év,å•(œ€ç¦B¦úœåñ4;žnœÄÏ”íAS”eù¥…0 ”ª€˜"YRôz¹DêïÏÔ 0‘‰˜€À4‡r8 Dr8ë²É¹|¨Kxþ-L3¹ðîûÏZXü[ÇR2¿aVë™lÞìo•D «ø\š€±y*Y †²D»õÔë.»QT»åûö¼×礩ÔË&˜ÎQÝ¿\ê†É³Ú½;fE™Úw"p~ ºc‰¢,|ÿdï]-SWiõÿá¶5»¦¼|¶¢ŸUŽÔ›6Ü[Èhx1ÓôPݺšx Œ:^X™OµB5ÖË]vP28 §¹ ¯ô銫l03º\„bÇU@0.Ùp cT>JéÆ'³Ií‡o»ÚVÚØòë0á¥7´ðÌÙÈïí\ÜèôL58RÏNu)í²D.5RCtâ–Îâßz+éyZA†iêæŒHÅ­Í]^°M+¤›QÛƒ9@pd&r¦l¿;žÜƒKÒ ïx'ˆûr¢õVߨ¿ñrQŠÞÉPUèãï®äáYá÷Ûäüǯ¡ç©…ÅG KÉXXXXX|(¸¨gŽžaiíWç¨ÎÖÝh¸læ %7~MMR• I6vÒØÔ¡ \ D¬vïõs¢LrŸ ™ÅB­°¶è]vzÂ&ò;ÖìaÿÙÓ0ñgÏ…ÿø¦Œ†<¦ ƒùø&[®fäd5<£^¨d ¼ßU½Â0É`uHRvÈ8[1˜²Á”L:o0nBÁ1pjˆ+mŠIO¾M}¾n—79É5Z ¯øÚmeS7G%;Ï!!3ù×G¨/ïÒþæóï¦Öè½ÐèÏùgIwch¥|âHy{îÑÿËT= Ôå]Y©"phS‡ñÆqêþ½W×ÉU…Myž4دÖqê'[§ýöR”Ií³Ûsçc‰ÏÊÔÿ¾í슔ޘoësgªXJÆÂÂÂÂâC„À¡›¶ËÛ6`ëí¡ù>A!9hÌ8OvG¤¹—¼´$V¿±/³¥<6è|öŒâíG&íÛc…¾†ôŠIÒyîG'\}ßȯoÉÈ“ê=”Êcò+ÙÈÃ'×y£¯:Ÿe•Œ¤³’ÁVuV4˜WÀ¸b/­ê*Ì‹Ô^>¤K „Ìòjãû›˜ã®Rsý¾T$©ܹ×üæé©à[F#f(ÇžŸéÛ#ÿ?_ekþëãö®Ùy³þw\~Uã¤I7»§šÂÚã §r¾ÛëÆ}üe‘PÀ€!*#Þ5uÂéÉÀÄ‚©ëâ¥?Ý}AT˜çbŸêšòÛËÀÓJÐe…ÆH[›«b¤˜½¯ù¶EÃn„ºýëêÚè®Ì/p}ÎŒ—RÎÌ8ÜW/|²°ø¨b) ‹°ŒY„Fr¦MÀ¦¨h©Àt¸. #¬~cnKgqdZøÁQçhÖ]([Z³ËÛ#pý7_¥)Ê{A”ð¿}AøÝ[‹ç*U\¿ Ú¶:¯‘tª:›‘¦…¼NÎ5e5:@©cËvJ€>Ç ìy§Þ&[uÓ¢mkøPWUf,ëû×ù0Bzn¨ðïwQ"Ÿ;›µ‡ÁTvÀà׿ö>76½VxVÛ/¼=ì¹qCjũޘqWú÷»‹¯M6}¤ýÎHb¹8Ôß¡?þ ûÍÏŠ+®­ÊÔHÂõ“3Þf§q[g¶1˜€LÉöìÙèݽ3+s&2ÞGÏÔÝßžyxË9ØÕ™¢mpÎõ½×ZÛýbW´p12–'2ž‡zN¯ó¹"nñà §¯¶Gß™Žlˆ}@9{B,%caaaaaq‰:˜rÅ×È.FƒFjeN”ÀêÛŠ­1qdÖöãιðŽ–ÒÆ–‚(S£"È›÷ºÌ‚¯ Q"†§ØCçi¸w“üÈ~ždÓž:‡#½ž¥Í·¤±Uu¶¢1³UŒÈv?¥€‡R¢\ :Ü ßÛÏÿ§;篚ÆSrNYY€QUèÑ´÷ÉÑ`Ü®oäÿÓöc¢„=ò•îÀ#þÇË¡Xo`G ¸Å½¦õÖLk´øÃýÁÎp_ö¼{bò´²§a<–õ?3<‘öÜÙ0á–çšëµÐ…KaQ&¸‘eFIDATGf‡ÇŽíh*ëî gËmOŸ‰|ºov1«°ªÐ/Ôeªôl_n9àwVüÎÊ–&j$á:xÁ›,v4•Ûê+ß;×úÕžkˆãñ¬š,ð´¼-b⌠À ËX|L±”Œ……………Åe8°Â^áÄ¡jÏLÑ~ƒïÜê§ol-´Ö•Gføïr´°;;e@h¹—×û‚(#ÓÜ#¯óß ~ùÅÅ2¡m=ÕŸžl˨îüè/œ£t'ccƒ´êfT'©Ø)6ygà¶Z=I6 îrÑà¼W¹5OÉsµøuU¦FîŸú›œúöúÒ¸~g–ê=ݵSûé‹hB³µßTWp<&$מõƒF`õû®Ë=qÀýûŸº¬´iyOLžVz#³ÍÞÌÏη½0ßÈ÷„–Lênج>þ ÿ廥‘Û¹ÚZºokj…XÍ…§O…?½q~QÆœž ¾5í¼®¾twmמÕú3} ÊÔ±aÏ·µÇ˜’©* \ÃCmjz x”™é¼‹ñ4ZJÆâ㊥d,,,,,,VÂ`òõÜù7Œî'§ûï \ܸ/GàŒm忌UG¦¹GØ÷t¾Ÿm=Æg¹“£\2Oìì’þ×WÓPU™©‚³¢³û’‘°_ýB{v*ï=‘ ÊÓ….¶wJ—ð\½B½9,ϧ‰õt…Ó꡺sS$Žã×5—ÿË-#üI%rdš{ô­Í£ß¹¥ÒT'UUæl¢nVtœ«Ø#œºÑ›ûFû)Ž’ Ë {âlºêH{ž™Âó‡‹msg§õ«~×ÊꎋDêÇéWX12Ͳ-¸Qƒß|è†9aUÅür¦K¡#¥èg£F³ÈÛ‹¾ho­ÇƒZ‹E2«‡ñŒº¡. ó©ñÐãçÛ†gåÏ´%ÿëgÊ¿Êml­ñÓOø§ïÝ’õ™·b)‘¾wÓü^ùdÊö´D-VÑ4E*¢D¾=`ûî3þî:µ«I x®ÔÍ&âWœä6¶ƒ^•Û<•ã“ÁÝíër °°øˆa) ‹Ú°¸ÔÂO&,µ6/ÌõÖ­ÝS½W‹Q"GføGß´yGé¿?˜Æpr,ëýÁéÖ„ÎÔqZ¿áÆøøê–ðûÍߨÀŽg<ö‰a{õ¨ÜêvuG”˜_jŠ®ÜX ¼9Ÿ©áÇ%JØð$sh€Ãprg—üÀ®…Ñ2±ëW–1ç³õg‹¾Û"cZgܹµúöYv϶*,+’YÁâ+ðÈ~µ32«âÚΟ¬4´5÷4è'¹þÎË’ÊÒyîÉ£þû¶'ç²ÜN†gsážík6N]MUaþîXó7·Œ-[¤¾gsak‘ÌÒoœä’~g—ÒÖ Ôt8=‘Cé,ÜÚ‹6Ç“?:Ú°»}ý7·°øè`) ‹+Ñn›½šŽ²Ë_{·:”F‘лœÿÔˆóÐ ÝõÚÃ7énûŸÇZHš¨´Í¡…&Ofµ€Y OÉ=‘ùžÜÒÅŽe~$9¿H&}·äS?5í®’Ž?›\X Š%é÷ŒÛÍñþ¸lÈéLYì^¿±oZœ²üÍ9WûÎø…€òò¡ñv«{çR­SI,ÜÖl¹göíŽ5xâ£ãÆK_Î}bl÷'¼iUyðßöÄ¿ü·xí¸B<ë ¾õYÕk” ¶J€Ç³c/yzßÜóEwãɦ~Õú¥Ÿ‘kš&IË,½XV$fÌnâ,„dRŒ»eÜj²Ê©WvOÔnÏ-`QL1OiÌS*öm/›±])>?䌪½±úÛ¡k}3MÕ™öƒ¦ýMÂçyèɚЄX殹h¢èáZ‡%þŒ{™¨Û°\e™–ZíïþC<ï×.}®}ô©$dCû~­óOú ¯­žù˯Eßÿ´¼+bïV:‡,•ö©¿>[&¤LmeìÄr‹gëÊP…д.kQ­š¯&é«‘¨ÔwKþ··ŒUÎôþ=šÏ#¶Wd„¦Û5!¤ò’H…šŸVæÏ¨¶J€±šb/yz.Ýov¿\ߣZ4@$* m™Å K]î/½PSÙ [JŠLJ‘§8ÓV5é+»Ÿ—€YJ1ǽeqoÙÄó{ŠÆB¶«·í]wûÇ×ÎÖW‡”GÞ¥šããÑ%GÊ$ŠþáÊÞ¯ÖŒ6W¬bYÈq°U»v#óÁ%ñÁåL“[n©MO‡¤KŸKB’„Šmš’ه®>¨8ÿÎéL2ññ€õfÈ™Œ*íÞÙ¯œZ”²+4²ýøÚ¶¿x¡µªŠ¶¯)Ýà£AñÙuqîÃLK½¦¥…]}ÐÏ{Ý¡¿p~ã0%ƒ­…’`¥¬¦˜ß5l7–ÿW_“_¹ÕZŸ½AH{ôŠÿHÌ)þQw‰l£ê2{ŠÓ·OùÊ'Ö)`–RÌqoyÜ[>ñBKÑ@pÛ…G×ÍâÆŠ9wù\måò‹õsüväKß'Œ‡‹O}ÞðZs_™-—鈂Sñê7£Ál±di3á¾}W’,„Èþ>2 I)6)Ÿ-ÖÌË„pôJ~opµï™Þú¬òÛ‡–ÝÌz…ã÷y„Ï#"Q¹o ó¼?¥ª¶.¨(Ž^u§¬ëq6+°aQ2¬‚bŠ5W ‹Œöæ ¯Ðn¶6„#Q!DF|ùî²Èœ‰ÊwÇ-gºK‘Ñb²:ÞâôÓuå<ýC1Ç[vÜmÙ!¢1S`´ô_?­ö(e®èž¡ò’Åí/ ÏÚ³ ÓÇg‹ÿ'°ó÷›ûÊl:>‡QU$ŸgÑ}€ËßD·Tö ÒÓ狦K…ÐüÞñU½õûW«y–ù$ç@Uľy_˯gÌTKò°oæ‹Û*%ƒ-…’`Õš«F*l3ÿØå‘•ÉJËÝù[õËŸÜÛfTÉ`(*1Ö9µƒ5Óu®‰œ¿KÒï ÖW‡ÆB¶áû–¿ÿx§×–|zgÈïùõlƒöà—¸:RÝ=êüꮡr=gÌeÏú^ÍÜ{¿JœéRw Ôžh]áÒ”+7˴̪ãgUêwÌþðg®çüë÷À†CÉ‹rûÌŸ üçgµ=iM›»~[»Ü-z'-æ’b³Ãa.•|Žôaïl]åä† ˜Eþÿ®3ÑV{,d»:\üËá†Æ²¨ÛñVLyá{![勉oÊöêÓúئl½©Öô‰çî×Þˆî*y3S~ÈnõM<ú’à”õ|¿­ã·×w`–T…-uóŽºô!`³¢dÈ‘Rÿý¯§<ýãv!¢&WµÍQì³'ùBõ•S9`–RŠâ^WÜ뚈ÆÍý£Î+wô»$IŠ˜¸æ^}úz¡¸±d'gÃê™ó%úmß~îŽjY~€HÌø·ïUýéo?üXÕü9Òzã%HÉ`Ë dÈR”øÖÁÁÀ]G×`ñ!Oè;U7‹žf)¥(±wçèÞ"›4%±·f´ÐƒÚˆTkºµa¦Þ9ó³Šþ¼òp}¸µn™½Þë.ûݶ©'³|ÅåŒW–¤‚“f—Sßÿ¢dX¥(á÷sØÌjƒË&M¡G±Ñ©ÖôwŽn+gºn(ß>\89óÖG.!´Öº'wfekÝÜG—¬/£d°%È…€Ž©Ötë®Ù¿zùîá†Èé÷Ë/÷gŸNÝ›2œh{’ƒ©,‹ß›Á ~T-’X+Õšn­½¸?ôI¯õŸÞv'Íß{ÛùÊ‘É'>ŒÌ‘æxÏÀâ#MM‰’ÈÚÑï¾pÿÙÝÑ7þ·äÏ_šp9 ppP½'~í¦ôø×úÇä#@ÞdiÝ.Ü´fOòÒuÓ¾¦d¡Æ<” À¦rpo2eZ›%°©¨Š¦*Z¡G¬;ÖÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè%@(úCÉÐJ€þP2ô‡’ ?” ý¡dè±®®îìÙ³{öì)ôH€Í¦§§§®®îaû›ÇŽ=ÉÁl2Æ#GŽ!zzz =`³©««Ëþÿ@ÞISSS…¬ëdè±ÐèØÅ‹»»» = €Žµµµ8p ‡ )@»;::òþa $Øô榳³“’Ì/>:ýó+9\ØÔì?ÚþÌÂg²óÊ7¿•§¡6¢7~òº"·†É¢dk•͘ïþÞäpíé|_±0f²Sæ´çm|€§££#çÙ˜,J°VÙŒÙVªæpí‹Ç¿þî¹wMËðX” ?4M+ô[%È¥%“J¥ŒFãðœ'XÑhôƳ³³Ù‡áp¸··7vT€Mƒ’䇶@$éííÇã@ ‰D£Ñ@ 099ÙÓÓ3;;»ð•…5@¯˜åäÇ|–¤ÓéÁÁA!„Íf ‡ÃW®\É>i2™fggoݺµ{÷nƒÁPÀ¡6ædù1?Í"˲ÛíÖ4mffF–e!D:–e9‹Ùl6·Û-Ë2s2€5¢dù±ðž1EQ‰ÄÜÜœÁ`e9‘HH’ÔØØh·Û¹» °vÜ]ÈEY’ •d2)Ër*•J&“f³Y’$êÌÉòcáLK8îëëËfL"‘H&“™L&_»vmff†9À9Jóq’J¥FFF¦§§%IŠÇãB³ÙœL&“É䨨ØÈÈH*•¢d9s8'Ož¤dù±pÅÿöíÛUU››S¥µµÕï÷—––jšV^^^]]ÍŠ@β#X'XŠ¢ìÚµkppÐív«ª*„hllTÅívÛíöB WósêÔ)J‹&X¬Vk}}½ÑhÌ>¯ªê‡¬ÖÂŒq8” ?–&ŠÁ`Xøä¢‡¬Ü¢Œ9yò$%È*°N–fŒ` _(ÀzX6cX'ȃ¦fÿé|ÿÅã_ÏáÚwϽÓÔìÏû›ÃÃ2†u2€<8ÚþŒâÝsïäpmS³?{ù¼¶¶¶7~òzGGG~Ø:;;ÛÚÚýšGd ëdùq´ý™EA’³!:;;óòÑS[[[ö þÃ<:c„ÒÔÔÔ“+`ó¹xñbwww¡Gбe“æ±sêÔ)JÀ²’Œq8ÿÖþ/ÞˆÎÞIEND®B`‚./Doc/Tutorial/Makefile.am0000664000175000017500000000523512176660653015210 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# TUTPDF = ESyS-Particle_Tutorial.pdf TUTNAME = paper TUTSOURCE = \ paper.tex \ bodytext.tex \ epsf.sty \ glossary.sty \ bingle_output.jpg \ bingle_vis_snaps_2.jpg \ bingle_vis_snaps.jpg \ gravity_cube_snaps.jpg \ gravity_plot.jpg \ hopper_flow.jpg \ PV_examples.png \ PV_initial_window.png \ rotational_bonds.jpg \ SC_bulk_friction.png \ SC_dilatancy.png \ ShearCellSetup.jpg \ slope_fail_snaps.jpg \ slope_friction_quarter_snaps.jpg \ slope_friction_snaps.jpg \ slope_friction_wall_snaps.jpg \ stress_strain_diagram.jpg \ trimesh_normal.jpg \ UCS_epot.jpg \ UCS_force.jpg \ UCS_nbonds.jpg \ UCS_stress_strain.jpg \ examples/bingle_chk.py.tex \ examples/bingle_output.py.tex \ examples/bingle.py.tex \ examples/bingle_Runnable.py.tex \ examples/bingle_vis.py.tex \ examples/floorMesh.msh.tex \ examples/gravity_cube.py.tex \ examples/gravity.py.tex \ examples/hopper_flow.py.tex \ examples/POVsnaps.py.tex \ examples/rot_compress.py.tex \ examples/ServoWallLoader.py.tex \ examples/shearcell.py.tex \ examples/slope_fail.py.tex \ examples/slope_friction_floor.py.tex \ examples/slope_friction.py.tex \ examples/slope_friction_walls.py.tex \ examples/WallLoader.py.tex \ tables/field_names.tex \ tables/file_formats.tex \ tables/interaction_groups.tex EXTRA_DIST = $(TUTSOURCE) docdir = @lsmdatadocdir@ if PDFDOC_ENABLED MAKEGLOS = $(srcdir)/makeglos.pl TUTAUX = $(TUTNAME).aux bodytext.aux examples/*.aux tables/*.aux CLEANFILES = $(TUTNAME).pdf $(TUTNAME).log $(TUTNAME).idx $(TUTNAME).out \ $(TUTNAME).toc $(TUTAUX) $(TUTNAME).bbl $(TUTNAME).blg \ $(TUTNAME).lof $(TUTPDF) $(TUTPDF): $(TUTSOURCE) if test "x$(srcdir)" != "x."; then ${CP} -pr $(srcdir)/* .; fi test -d examples || mkdir examples test -d tables || mkdir tables $(PDFLATEX) $(TUTNAME) $(BIBTEX) $(TUTNAME) || true $(MAKEGLOS) $(TUTNAME).glo $(PDFLATEX) $(TUTNAME) $(PDFLATEX) $(TUTNAME) ${CP} $(TUTNAME).pdf $(TUTPDF) doc_DATA = $(TUTPDF) else doc_DATA = $(srcdir)/../$(TUTPDF) endif ./Doc/Tutorial/stress_strain_diagram.jpg0000664000175000017500000005612212176660653020246 0ustar vborosvborosÿØÿàJFIFÿÛCÿÛCÿÂ?""ÿÄ  ÿÄÿÚ ßÀç΀¢—®ˆ× yeïý³B7‚Ê?ZlI—sI| «5Qƒ[´Q¸¿88óê8§×Q~âØ ù]ÁK£½¯õ¹â#ᬨ¨6ø>D›Ý?–P þŸË/b‰Çæ–)Î{žËìÂ5þù¢ú],õå€Eò€zø<° ÿ(Ï¿‹çúãòÀ+ã+¬EÈVí ÏOi}Å#â´DgÌ ¯ãç‡g  ü°gŸq¬áº­á€7XÖ5ŠûQÅ,ƒD”P þŸËvÍä÷e®ô{ˆk?`Ð%×,äÚŠåØë¬k+5OK’„€ ü?–+6øðÛWU·GE`“¶ÔwÞwš»Œ85  ácóÓ†\×ss”šì€@'ø,àåùRºaôaèzóµ¸Ã½ÄÇ>ïW±Ž¹âA á¡ùšX[[Qg¢@fż;"rH_ÖO¢Kíaù€ ?Àù`1^Üz/AÔ÷7R¿Øhò䯆Hk~ïi®h·Y\ì`ÊM £äóàã>©—Ô@'ø,Hø[Òáu[Qèýä<«ý€¯ö@–r]hœ’­¸ÂßDÔoóµ¸ÇöŸà ü°@XR»SNµ¿´Ö‡µ¯ò4sÇ”zËŽY ìyhÀ0ïq £Têþ}7ôó‡.œ@'ø,ðp¶FÓFÓÌcÎWWû_ìË5¶Ú•öú謃 oÐå™$ ü?– ;jq ²×^ ¯î*À+ûZûØ Sí€Pú½îÏ]Go+ª³1׿Vx5¹ë €ÏúŸÞT ?Àù` ¬ÛãÀOZ­Â8Œù…ºµã7Mˆ±ð¤ÖUd¾ ¶>V5M¹GÊÆ©Œ¬j˜ÊÆ©Œ¬j˜ÊÆ©Œ¬º“ú‡êúX€'¿<úo¡êCÎÖîWªÿ°”g&9vgçû£Ãú˜ð£Ißæ ç¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿ÌüÀ¿Ìýœƒ0§ëð¥çÖjœhix¢¼bþÐfñØñ<ì„u¤ogö§SÉdl|_C€ñ³ÓA‰€ ¿hUé¦áA–èW9.Aôua„=ì¤ðÿÄ.(70 @P6`'23pÿÚþR&RÆr/í‹ ¯Ïòïœ+²nÇ$œ…¢‘ݳ%#˜r.­n­ã¦/æ‰ÆÆðY_XÉÚû5&_– ŸÒQŸäʯ¶1hã˜j©‰pÀÁú¨†5Ô$oä‡cËæâþêÜ&  lÍ›Qš †Ö›òs% óD⌛‘“—m“¬Ó¬éC-æB²þØÝI€‚ A7Œ’uo%|ÌðÉõ4ßi=Š@s$9&\A”L«Ÿ¹-‡\àÇ-š ÁZØæe«îåËé¼­qx€B-ãouü¨ø)OÅŸÁê‚”üYü¨ø)OÅŸÁê‚”üY÷ý^¿ùAÆ9Š!W’àx mRø!Yì3ªÖ«Nu@|ÄSñeÛ5mauæÂ²¡MÂÉnªîîÖÂ×Í…ey°¬¨R[Z”–‹ƒ±óaY^l+*.Z.rƧK…ëÍ…eI:T‘VPs‘$‘?TØš+…’Žc³&¼õrW8Á"–È¿t[ b@ÄN¨ý+)Í¥ðÚÙOÅs68h•¬3GS“à„<ßØê‚”üYÖr9"U‘*D”“2öÚÚÚÊÙš²€h@,™³êYÿ°Õ)ø³ªêsY*£T‰ó9þöjÊ¡²fÏ©gþ¿T|§âΡqLHHâhzi²íf¬ c-šÍ²úíQðRŸ‹:†22ÚdFFÙCFû˜Ø­“ºë3 —÷ÿ?T|§âΞ¡™·¶Ô YY,ýúˆü¹\†3Í7YõLÁ¼ãÀ唸ÓLŠ4ze4ŽÊ]üÍQðRŸ‹:MV ’Ô7OkùkÛžŠ_þ*yûØÒ†qÍlQ%±E]äñ’cÖŒø»$Æ1l¼”Ù ˆàüP¤ÌÕ)ø³£ssmem#q.û6éj¨zJ?4h†4²Üâ·–qá,)ìí€ÿá„à ;nSq^Òì¯iׇ4ê.Èû*ûæj‚”üYÑ|É2 %à —½&¶`­(•ÞæÂû§ Äd>Uã¾öj”²×£h\,ÌìÏ*æê‚”üYÐ{·m–ÚyT`eþ»Ó6ÿ¦¢údä1âcÃÇ*/Âì '.P‹¢mŸÍÕ)ø³Þ\S8ššlŸÓ/õÞž¨¿"Y¡ŒóMÖ}\9x0vüÝQðRŸ‹=æ22ÚdFFÙCFÓ/õÚ±œŠ’èÜÛ[^Û!qÞ«\ßWª> Sñg»PÌÛÛjP,¬–}Ì¿×I§mÆ`al%Îæ“$š4ÆKµÝ u‘‡7O¿UCÙã³ðRöÄŸUª> Sñgµ–ÉY éÔjJ÷½—úëò|Ù÷$yÛ,D°ÚbVt4© Âè2ב,Ñuã £Oå×6×¶ßSª> Sñg²ææÚÊÚ6ÖKSÌÏc/õÞ«5eЀVµå•¤Sª> Sñg±äk,Â( ‰_‹û®õœ‰¸–œJE·{{õ£à¥?w¾~Y‰ U·!‘>Ö_ë½wºŠÙ’9læz)»5®.ú}QðRŸ‹;‰HcDàãÌÑ߈´ëÄZuâ-:ñx‹N¼E§SVL’\Ÿ‚S§ÅQV J÷̽EŽÖSÛC\Æêq?}elÖY]Û}¨ø)OÅÇr·:…jÁÁÄÄ÷0Ú3cM#vÚþÒ™*WñäB&ontқ϶ô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¯HKjô„¶¥Ââa ðõGÁJ~,­G4ü.5@²²X ÷`,^EO'JØY&ÊÈ_ñ„Íû­QðRŸ‹l8•¾A&¤¯{æ ¡lü§VU @]„l`€®/ºÕ,nm¬”q¶²Zžfª> š5–a D¯Åþ¹­¨Èµ!ÀcåTuðÚ Þe*õX½Ïß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}u¾ºß]o®·×[ë­õÖúë}têócòšN—êK`Ó îøþœm[¦‚lOˆeÿð˜ f£H*}S:ƒbN—߆¿N®óõ$ƒ-( g0îˆ%e1­è”Ô\?°häX¿;î‡ñ«ßÑÊ»l" ?ÓOw1ÃZj˜¹6“DñrúÛ# –ý;;Û9 v÷ùæ½àb2âä>è¹0°:¾‡\…” ˆÇ¡”1wÖJeü|Dx´ Tôp´ Lê°[´0$´Dë*BoñÿÄ< !12"@AQ0BCTa‘Ñ #3Rq$4Ppr%s¡ÂðÿÚ?þÎj]Z5 vÕ¦ãV›ÛU·µñ}¯ý ¦µúaGD‹5QrÄôTËn9HÍò,ƒ$|J†<Ù4#ÊiêùÀ]žIÝÔbÐáHî½Klw i1ÒÕ%RPRD:&…ñ$2 Õ‡ÏKZÌ< vúÚ‰GGJmUQV Ð@ÞNÀãÅP&Àȱ¤£ŠŽ2‰vf:¥•ó$®wg?¹°îø’Äòª¥r⮄«Ab#©Œ{)èû©¶@ ÉKPµPG:‚ºÁº7:’®‡nl/½³Ûªj–™ókAÅ#¶4ìÇä.Çò¡§xÃÔTf®¦Í.ßv£‚°Àl{½ÍÛìSÿ _SK´uË`Û l• ñëip `j?Ýù£ÊÚþINJÑ©¸édÍTG€ÊÃq{\ÙXgìsš”HkPô2‰´Ô¨AÜ.„‚žJÁ€e7V”ˆ9~£¶U³VMæèZÉ`õÒ)ÊE|@¾Mß~͘ª¢ª"…UUTX6}—E‘]]Yx« ûƒËšÝ„RRHo- †›“ð?ø”ê¯}“9íuµ&ž0#]u3ŽžK–Ç´‘z¦F“ÆdI6é=vk4ddJ nPH”LL|&'ãíϘÊv6,7"ákx5þSÁ×Ú“¹Zkl[lÆÌÉœÊÙXõ·Š$•çÊ|–0:Õñ~ŠÏ4û«eiZÍxÍn™¹bUèq )í©Xœc”̼#‹ZÅíõ/ók\Ô\‘¼žù±zôR^#‹§_ ª`ðzî>$(Ò“>KÔí^yËn=Ý„5Å WÞÕa{ïî:‘˜–ÁƧõÐù~wë6†*mÔ‚dbWG29«Ý-uÇÒLuXô©Ãâ2yü¥ .›²L¥S£MÛP %"?úcX@¤® ­0XÇ(f1ú~§ êvëÙ£†°»ü¤d_Õ[¨ ÅŠ¾iZM˜MlçÐãªÈŽÊ=U”²õ`´†·Zº!à³Ù2/°ˆ¬âö$úr¶»L­vS¸)‰ ÚJ%Š»áèÞ¬ª²Šödb»yO/ñîaF¦§-¨ç„ò:~Í@üøÌÆ%³ Dˆ#½Y,P\¬L#‘zɵœ‡³ê0ÑîOH¢Çj9KƱz}b— ÍCKº§V·µ-ÉšÙlìË+àˆ–E]ÊÒÚRW©‡äñ–ó,}Ž4äÙ±k3 &ãï,|¹ `a|‡É5TÊM±–  bž-;]Ýתd·½3Çùæárз)‹¸|½BâóøkJŽgedÅX§q];d–w×wkVcMÅ:¦Ç%ɸ hzC«Šã—m»cɇԩ©°bá´Ø]œÄÊš´bA¾¢‡ÊۆזÝö<žÍšh²öIÐ]‹]z•RŠT*©bº´j-50=Ò ƒl›MŒ/ÊÔy|1:ât½ÏMÂr&§RÅË8Ú™‹©f°“xP6kàsÕÍÍÄSl¨ÞI­S¿Õ¶^.’ýg‡6òÓ7,†‰•s$Èè‚Ã1ž(!ôÛŽ$_Z…~ø †gj¢Š{ì&¿UÈVà_]Û#Ö©n:®vY0B Ó«—ûEÅ\Œ}GŽ‘G« ¡bf9>6ä<1Håtm¶‡Îb–5ì¨!­TÌW³é}=‘øw +µ‹0è`D?E¢iy~@ÙñºÎz:ã;íÝ5™ÔÄãU17r·È> §MSÜddÆ«yž¡.TÝ1yYÄèÚaXWhëe /y²aÈ÷³í=¿ ž¢s/emH%*jQt-uéyßP?;¿ïXá7=§¡áÇgò´ëÊêDehi@É’`J"Ò˜Ÿ¼Éú…°~ò?ƒÛßï2~¡l¼àö÷ûÌŸ¨[ï#ø=½þó'êÁûÈþo¼Éú…°~ò?ƒÛßï2~¡l¼àöØù[‘vìaa¶]·-˜Å›•`©\b‰$äL’Y0* î\ÌÈü,˜B$fe$FE=Dc¬‘ÏHˆŽ³?öÚ \;¥³©øg÷j)±ÉµÞÝoEåÇhÕZ†:jÜt¿±H¥‹š•ËÖWec§þ6­{IËÝÙò¸›¬ö+nÒ* ðõvŽñŠY|Ü1ëy×ÄGuꈪ¶1×–™L€-«'’¿™È]Ëe-:öK#i×o\°]î³jà ®s ÿ£2™éØb"?ПÿÄR ¶÷!$05Pv† "#6@•Ö%1347B`–—·Õ×2Qw&'ASacq´Cep“±µÔÿÚ?þªVÝUŸº¬¸¯NÒ¹ž™ƒÜ#`¸ÛPý&Õ\£'Lâ¡ÍÊAÂxÌqôµ7 ´êõë6õ“î7›E¢8µ•u4,sR¸jªË(,ÛÅv2êE¬äxc,ryN~5Evn'ê[UÈ5欓ÕAw­Ø;ö™jiÔsÂXq–?‰†9³0ç“­.ú¾­éøÖ;¬XúÚ}æw_¾\Qýçrw]Vég&ôŸ/VêãË¡ËâÖ66¼Œ¨rŽ/"åÍr٦͘òjÜZàÌÃ5Ù°2T{¾vs€NêÙ ¸1òæÀ¤ñÁ‚gxóÄ3Ÿ/–i$v[ío‰\|Ç%<§˜õM‚âeÎÇ»½ÃZ®1ë¶µ4h'\W* m¥â½^FÄ­%ôd£ƒµ>Hö2·“8‘¥Ë!FGëîúb[.º`lY{`Òvuâ“:­˜<ÆP„d5+\Ùš‘,ÂPÁ‘ã¿s‡|Å–¿«lNì5 Éî`¨î‹Šl;Ê@”™‰„9c‡T°&@¾1¢TYꥵÖx–rR/‰ß쑲¡Ø–-zÀ`g °ûÚÛRÙ«BÞ‡ë²â¶ ŽB¸cÊ a|ó.QŠ8„#Í,æYòŽ19g9Ïý¹óñU¡¨ç5f¯^E‡ƒÿHî!“D“Š.öT2®5k ‚rSÖ­—Ër™Ž²ÍjÄ›Ku§`0@¬Çë4=º-¶ræ pUC`Z1VDÁšynáiÆe?¥–Ý5¢ßCÝ—KÓg{P06½•v%Ï.jY̲€eåó”Gƒu°º½ mŸˆÜF´â#šÑHÖ¼Œé+5ªZ÷ÉŸ¨–²´‡ƒ?É9Ã!ŸãùK8•¨öâP4•"ÚÅå\©¶öº¿[=xØa€Î¤Í“9 Þ™0£L¢Lˆ›¿ªw_¸ÔñéCÒ¾õê Uü·»7}ßu:ÿÉí¼º_óêx¶ÚøyÄ;¿²a|ìªBгe¨´eQtb:ë2hÙd^Q3B”ú¹Ç>a‰Lù6Ñ¥ÙØÛ\Ÿud–[FÎÙG‹«œ” ¯c òL+⽕—* réþS­’šdN›ˆ_¹ÜtõZM’k‘Öi¨Ëiéæƒ /ut©™zÄ(‡#âq(õzƒc4,·M ˆè7êW©±‹Ð+6jËIV®jHY]ÅÕÏoƒÆsüœqˆD|çëq ÁÚÄ»^ÙZó»l€°Š‘¨mjû W.EÕU-tD#k)†cˆâ3t0`1˜[é1;Âêšñ.&çŸw+BT©7òמ1œ1Ýd½|gÏS›Å °lZ×vÍQÞÿ[ÙPŽtK,ì³IŸÈ65­rG¸H³?—,K‘ˆƒußv%ökL&†³]WE-z޵¶¹;›b¦ÅÅûnY“¢ À’°€˜A'‚S‡ÇŠ;–¨ÅUS—±h¬í:ýé*•³³5‘š¶…u¥ëâÊ tR€Â¨Cʺª‹ZŽû®i+¾ 1A·Ñ»ýf º1KšÉ²´¶ŠìGÉ,¨Ö99Ýþ¡ï?f}°×üpÓê›ìíwõyû3톿㆟P4ßgk¿¨›ÏÙŸl5ÿ4ú¦û;]ýDÞ~Ìûa¯øá§Ô 7ÙÚï§x1ÿ=toýžÁã„ó׆ßûÇ|q ãx‹úþ§¸ÙhzΫ7\^™IkÂZ6·,¨¡Áì,]fX[êvë‹„sŒCÝ£ÚÊ46tS.©¬X°Ó£×v±¬Ô0D°;*wË%JdK) ,R ¥(xF¿‹ÛN£Ä“­Üm;ž6”,Ͱf>MZÔm˜)*â¦ó=w“[·À°PlÏMµJÚz»%µe 7öª6T­ÐbªòÀP…}ÀI6ˆôc–å`Ìó;Œ¦xÈ0hªö/Ú¯ºuÕF ­eÇcÜž­  ½O²NÐ=7~êñæa!@E‰æ1äžbHðÓê›ìíw†Q{ˆ:BN¤Á”q6öºÚQ¥É °³+™ø °˜ŒÂ$#(N8–3Î^ý²×Ì|snÖ/Ýòl©ÒßÕZ´5`Al‘t[9`¼ p F”08†eÌHc>yæWI$—3n8Ù†ºª*¸äfeƒJà&S³ˆÄ8Ês–#ŒçÇó— lµßóÎ^ý²×Ì|íròžý!1% å-’Vª¨ FšÄaPb8 Êx$FaO1å$3Ÿ´º²¯§¬W§ÜØÚ8½z+õŒ5Ã×m² quX(€>¡#Îb qóœãŒÿ9zöË]ÿ1ñüåèÛ-wüÇÀ-)l«î+êvÖ5n/`‹stP…\½&P¦Ird¼§ cûåÙuýw¾ëv^»s]SÞvÝ.çµïØ_¸íû€uº\Ý.°¹ùzóþrôí–»þcàϳÄ}8 Ož·Õ÷.çªX=Úƒ=bǔɓ·T½bg/ BEÚ'eSd 0›‹ç<…‡ža(Ê3ÄJ„±˜Xð*22¬È„Àˆ8ýB}nIç`Ó· -Ú¡;LÙµG–a*ÆX„g% ÚÎ1“8‰°,O#†dQéØ4€èZö£¶Õn¶ 5³Tß¿kaCƒÊ¶¶°ÝH Y²nvÚzk’AÆ:aŒáÒ6Õi¦kKîúžïi÷ÆíîСº¡ÙŒѵm‘×X!mÐ È92|yG€üÙÛ¶­µ‚éF¹Õ§¨jÚåEÖmg­¯<œæØ\elаû Ý Š©“ŽrªÀŠùjxþ¼ëÞÕnŽŠ»Ñ‰´›p¥Æ»y‹·¥Å]”1wÌhb&±V)L›«‘LXÄZg öë‹iÃX2Öd°¢a`¶p ¨æ’κí¬²ã•‚|Œ çÌXÄߟ÷ÿÖšï쯓q¥·ÛÚ³§ô~ØÒ™ú…õ]YºãR&%Ê»¥˜úlÈÑ¥Ï Hrá§Ô 7ÙÚïÐgc»Ef–GŠm+;ûL³]|VÔÈðižå¨Mx– P1[ieVdá=•£/j|>›5Ý@¸Åý´ŸI!T%"׃e¼ëåÐÛ\󇵎\ ˆ½&ˆ‹p¯‰UÀް‘Ú’¶É®b2š–É€[טX„nõɹ—Žaö^¶¼Ùp<ýÕN5ߤ·Ÿ³>Økþ8iõMöv»åð1à[u%*ZYK<ƒ‡œ‡êöý9D¡ª c8Œq˜Ù¶dsM9а°­g‰¼]›Ö ^s5_ZÉΓ·ýqtÃjÜÓš§­£\8Ñ"Œ”îD%Š«@ºa¸]4׉¨,ª« Yeˆ ®F"(ÄbãŒ!GljT[Ƕyn©¨ï(ÍÚggã3†3(w(³È8YVÌ¢€å,òȼœxCÅévÈ­Ò±³˜²šJ%9HHBo–0îuVy2:Û"b×KUÚ dV(µß¤7Ÿ³>Økþ8iõMöv»å”FßiµêvUl¡ìÒè7Þº0³*"±ŠRb´¶žmÅ'c”˜â_ñÊw¤ÊÔ‹ÈÛº t¢ÝåyF.Ê.”A[EN„–ºÕ¹û²¨·lòÝSQÞQ›´ÎÎ1Æg fPîQgp²­™ 'EÊ$Yå‘y8ð‡‹Òí‘[¤cg1e4”Jr„ß,aÜê¬òdu¶DÄ ®–«´ȬQk¿Gï?f}°×üpÓê›ìíwÊÚí“¢ï9dDŒK'’5@7d–9U9OcØ&Ý“ÏáÝò¢Ö±ç·«ÌN˜ 詹߀þK2IóÓ³eÚ }k,%ÖdJàþtoºßyqWÖ×;’ÉÚ¼Æ+¦™HëÎÓ–®Å÷sθâI‚,•âäaÕnÀ}Ÿeý!%§°ÁTqiðó¶]ú¤²Ìqæz&)åŸ>„3†ø‘Yä]¦ªœõ!‚ÉMˆv P¶ù,Jpî¡}D‚‰±˜sãÀ8‘råžÙ¼}ê/Äl¯ï.NÊ>—ë®PL ¾¦@”Ò\êgq€ý΂«:Ëý ˆÚõnÕÍfíqìl,ä+E':‡‡,X`’X@¡áÑ…£ 8ý7yû3톿㆟P4ßgk¾NÃbcñÞŸ5mÙ\¬‰ËöUdµáj"*܈ö+o’M-.ÉcÁiÍ骹ƭáãÙìûP•HžS2H±<Õó––;ɯ¨ÇS…ë”ÕØÀ×› ÙÁZï‘ܸQ/Ž#}ËéŽGã Òë™Ù(ûæ3é‡>»bð­zÆæºŠ°S¦Ž yþ µºæêž‡–Ö+$”ªÓX%|µÊ…]êÛ¶ÕìÏè¬ã¹‹Ù{àŒº%ŒCV üM¸¼\¥°nëYØ+´Q™ú•í`ƒ4zµ Âô«‹:<ŸœðL3ç8æé—îÜÓÕ[z…{(/qÚeéWI¡ä3hJá´rCŒsžWÏt.™ºeÏ>!Ó’u¨oÚRÈתº)¬>X`kª  à ´‚#ÿáBC`¿¯Ú(xˆÙß± _\- rN=†!g$±‚âp ¢0¡ÒŒ¡5»Ed¹¡ÓÆ<7Ã…8ŽxhM èAcëaclN…©Ë,Ñ+³z¸ÐíJ"l­e–±2Nˆã ½rl)UN ÓHyžb1ÿ ÈI~1Lbff9¥øæ1I~4³únóögÛ Ç > i¾Î×|“8ÀM@–šd°Ë,H§aƒ–Q@FD)I(ÀpŒ§9b8Î|Kr}[@ðÏ_Ùôzºµìã [ç©ë¯TÀ¨²”—¶µJÑ›ëV’‹±mIß’ù¥käôÎ)Ð ¥c¬<Ÿ°„ÑTé:;=a²(P±T4QµÅ€Œv¢.»¶µ©.À¢õ%Azµ×(…Õüæ ”=XþUF»c0¼‰ðDß^ÙÐyK3¿÷=W4G„â_Ru––t¯G ¨,r :vвWÎCò”–l9 ùÃ<ÈS$%Ž!úÅÖ_U²Ö^^ûaÙ6“”Ö—šëUy®=ý«‚$Ή’ìž{æ]K ul±j+³×ôÇÜ‹[ÆÁ›¹Ç®.^ô£Ôêrf~›,£‚u?!Õñó7ÿû_ºSÿéðlP-·*—¨œ{¦7XÚ厂¼ó7ÉÎç±ÈúXG>ŸÖÃuû¯ ýí\ëõ<½n÷×u«‹¸æévݯa¶jýŸKÈýn¯}ÜuÉÛtgÜcÏsáþ<óåúµØ¾ùg>Xÿ­‡>XÎôÆsãóË@þí6/õcÇç–ýÚl_êÇ€ëeÔ,+#ÔîT«Ñî©Þ/˜I€ô,[ââëò1‘J¶º¡ŒÉúfóögÛ Ç > i¾Î×|•OtC¢Éô °»€²B°jg¥ ER#Bªù¹µñjyÙUXåQš=s\S¶Emÿ…)I˜ÍÛgÅ*,YY1C¹yžHsÏ’  Ȭ²Áù-—W”"ÛU0$rÉ™]a[ɪfX*˜“–ÀM¢Æ6 Èd]J`&Áû˜ö–:sÓ:)7‘)d$¬kÕP•\—¸ôk¸Ž´ÌØ(zM…`F_Â×l•Ñv‘Y­¹n•¥­ÆEДj¡Y°& ¨~}XW hS) ‰¥”êì[ÉhÕ-‚Öµž¹¾o—ë)b™0U[‚7[+èÌ &11ä«Ï–1Ÿ/ÁZïQžs[ÂwgÚŠ˳nÌ’iñ(|=4)Y“·–%Æý?!Îp¯Úî¬*,ÃZJp¡I‹"Û­–Ñs9Ä Ä—ŒÌrxÀF"y`¦ä 5Š“†ìW'´‰Œ¯oCvMz6[ºí6˜â†¤U2œ?V*¼ÐË–Pý7yû3톿㆟P4ßgk¾D©Õ¼ oÆ(ÕèAÜ¢´3xè&Hˆ ¢ÈêòÌO- 8v/$¥®…Ų ûîÙ@Û,ÕdSÔ°Ž®¸L9ÊPœ%uo*žec8¤Ç{ tZÍw×þÿŠzoÊTî1ï«mý[ ŒÃÔ‚”}fl!² ‡‡¨ÎëÓlr¶äjÁ2±Z’ê+ˆ ×Ê\춳䯤¯fÁ‡”âæP¼þ ’r.¼?¦bŽøeáÊMŸˆZKoí´srÄv ù ‹-’õE…>¶|Ö@%…Et¿¡\‚qÆ1Éã|áκ*ÝÑí eÅvJl"cByÇN½ýZ¦‚fj¸Â€M*„»1íÊ´`i[uÆÛ`úµ•ƒ¨>ç²Z.¾f¼ ëšÍ­Ã 냯$̓¬¬‚Ë„ª¯ç’C~›¼ý™öÃ_ñÃO¨o³µß!k´^Lñ¬© |,°Éfc‰UV\XÌc“¶áÀ¨¤baÌÑ#L.´JqØñ¯sÑ«¯x‘Òk]‚­¡.B<5À¤Êy£¨óC Ú•ªwÛ,åi‡ci_lø®úÿÂñOMùF-WVÇQy{‘ä5Ýã³­.{ u xgE]Ù8(:Tc“"Ä•£}ÖûËŠ¾¶¿t\áÜ–NÕæ1X­0ôÊG^vœµv/¸3˜FuÃÿL`|¬³F9ž|ç˜ÇÌóÿgïgÿþ¼ý™öÃ_ñÃO¨o³µß ž•®€ãáæ•k9_^.þ;g¡Üv­ÛÀâïªHvYÅ4ÅgY4zÌós6!©¯¨­o]TŠ•¨/Ô)º "¬¨z§™N^u B~\Äœ§œË>+¾¿ðŸüSÓ~åÍRN…‹ |ê-p¬3ùDJòb}H—ùêš$†qç‚qÿzÆ>E„Ü\ ¦Ø ³J²(fV<$#®À À0¥!”DŒ HJPœsç6ÎZ¸õ®`,ô,…¢QÛÊWÉÙI#k®¸ëFWãîÓVªLƒ¤ö~ŒÞ~Ìûa¯øá§Ô 7ÙÚïÃO„Úd‘{iÜü©nÕX•×n’uŒk–{cƒ³]¶¢ZÊßåpæÎ²ÑeêyQbýÏl–ê±õyË $bY<‘ª»$±Ê¨‰Ê{Á6윆~åw×þÿŠzo‹KÆ3ƽlJ‹ø÷Ü$¢ úÕ¿âÕ“Å]cý&íñ®žíé´—éûM¹YP|E\½Ô»<禤˜luôàÎd#È·ž5.è­Æå·®{ÛÜÀ†®¡¥_äŽö£Î;¦¥ÛŠ$ÎEÓÈO6¡Ò©Òïxð*™í+ú¤xe©±[lÚx©S©‘™ %²PÉh,®ðFÆép€ÀÅëšJnL¬XÇ!zqüQõ%ç.HüóòÇÁÓ8§@.ÎÆ'ì! ÜŠUž°Ù(rwž °ŽÔ]W²¦­H±"!µM~œ4îê«íÕ1„ÖJ ÀAˆ†O1,FbÃıN>RÏÑ[ÏÙŸl5ÿ4ú¦û;]øGÙ-Bv哾®¹8ÎÊØá9–NLôÈ$ÒY†pÑ–° Ñ ned™°ã>öGœÙv.¼(ýQey½5‘+ç°¯ç‰>ð•M(V ` â¨š¨¶G·ûµß_øOþ)é¾5 Wi–ÛN½RË”jìõtdkÄã€kª˜[íDˆ²%3WS˜±Ê=HÌ_ }nÔÇRX<,*ìWó”ëm€…g$·Pbt&X]”Í(à˽(æucp߉<µYª»ë7 ˜6br_ÐO§‚¿®>\–ã]œ4p* À[TÙ.âl´Û™U¥‹¬ÊÇ„J8¥!¢Ar” Fp–cœgè­çì϶ÿŽ}@Ó}®üq€(š€+-4É`–X‘NÃ,¢ €"ŒˆR’Q€áNrÄqœøÁcTò<*ÔúˆÄxëI¿,M¨+æ9¼¹<Ò.ÁžßÓèšrµï‡Pý‡àW}á?ø§¦ü´ª-ãÛ<·TÔwfí3³Œq™Ã”;”Yä,«fH Ñ@r‰yd^Lüâ»@ŠÕ'}.ÅÝa…ª``õɺä¹eq´Î±ªÜj!g_†•˜W¬.¿ôNóögÛ Ç > i¾Î×~ \ÐKTܬŽ(ìÏÌøäƒÕÆ-‘jÁ!, !VÂÚÜ•ÙvÄÌŽ4လIúË Íf¤@ÄTå`àNÞÚA·f33%ëºQóDsdøMh¯^¼ðš‹Ž]õÿ„ÿâž›òø ò ݺ´-Ô£žBCÎDô‹~œdSU²œ†HÀŒÔ²I¸œ ØWÙƒ|K[ÐvjÞŽ–b%Äè—Å_FÜ…ñ^ûµèbŠÈ’[RZ0),ˆ«ßDo?f}°×üpÓê›ìíwà~ö—“lØ:ÊkœÉw`_¶š¾©f~¤ ¬}=VáÚ ÝÏVÉ„º•î! “[fÈs½ºî ]û9¾ ÷Õ+3™?šã°øcm›VØ i¾Î×}Ú¾ëm€º6¨yXÜ[!g1ÂÅhMîíÖ dèɉQkR^¾ÆeƬ»ÒRY–i#EDˆ+jkA…ÓM|gPóÌå)Jy‘LsS;,žde¶HVY)X) /¹¥´/1ðÞ¾ôš&Ö÷? ²ìH,ðú¿ÐÊô+ú{=ÄsžSzÂRÆ ,ù Íñ™“ï²’¦µY½osb\Æ0R¹8rõ æAã3)H‚Í1œô—èöM[fô]Z·`V³Éú®¯Bm&õ½ÝtúeüB‰ˆKŽEÌ2b?£šÊßNÕmlXé÷ÙkÕ:~ˆ ušeBœ½ a<óÈ!Àqò„cŒ0jÇH¦D7Ø6)2¤É B ¯-NG³‚Š-*ÊÙœcƒ®as_=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼|÷¼~²¡ýšñóÞñúʇökÇÏ{Çë*Ù¯=ﬨf¼5A@Õ«i·j{rÜêœ2uNp„ÓE`”c Ê|ò&rLÇ1Œ?CÞ~Ìûa¯øá§Ô 7ÙÚ﹞j…õ Ãh䬵ID½HéÒÛ`Í|cK§y}Ü.ºJEfÚÅiÎÖ‹ R6eêyQbýÏl–ê±õyË $bY<‘ª»$±Ê¨‰Ê{Á6윆~åÞG†¸Æ äóöGœÙv.¼(ýQey½5‘+ç°¯ç‰>ð•M(V ` â¨š¨¶G·û¾ŸOUx‡Vìn+Ô³O¬?>™»gD`õGÍ.BrsG›>YÇž|6šö7]ÿ.ðå2:ް•EŒðK ¥(*–­~qÆ#¸ˆT‚ÍOŒq‰SÎ1cÁ&µ«ëôg¬ž¡ âžÏ6 b*LƒŒ¾ŽRÌ#Ÿ†8ÇÓ{ÏÙŸl5ÿ=qÆ¢jpçSe¦™,²ËY@§aƒ–Q@FD)I(ÀpŒ§9b8Î|`±ªyj}Db¼u¤ß–&ÔóŽ Þ\ži`OoéôM9Z÷è~Ãú…¼ý™öÃ_ñÂ~h%ªnVZ>‘™ùŸzº;"Ô‚BXB­…µ¹+²í‰™iÃ8“õ–šÍHˆ¨ÊÁÁ ½´‚(?nÌffK×t£æˆæÉðšÑ^½yá5>ީծµ› *Ë |W¬ÜU¾¾^W¸nåª V²íüb¬]Cñ>@´IÄDšÑ+†Ÿm¯VÍL)osš;Nú×Î+Õª+Š÷b9PáfÔ1c"ŒO84¡úæ•êž‹ë^™ûåÙzmé×ößÈû´zÝnÇ¡ü¨]>¯Wñù:siC]KN,$Î̜ᅋ= ¥ÔÂÂbÕ׌°&L@Œ iŠ L MœJ­‘{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹïç¼{žñî{ǹï¶/Îo½õ{Í¿˜½F×¶ü×ýïùÃÔÿŽøçýçä{¸šÜ9žÏ²S „Ðím꺈B¯u,ÛÞæ5ÚÒù®$Ek-èÚ8L€^çÓ9N#Tk72]sfÍ«î¨ÆNS(â.'‘W1\,¨©$–Á±ªûXq€2ºØ^þ ÓmmŒS%_O_JåR”ãe§RÖÎÁ‚-jk‰”Ö ‹RøÖ ¢ÄÄÔe•¼C“U_cw cXíü—ädfk bS­`P×ÀÀ1,ѦQ¨ª<Žfœ˜rlÿô‰Hñzà\Qn/Pêš=†Âõ kIÄq¬¶¬I7kˆûV¸”ŽÁCgø“ά‚^6¯G-½ï ¾ö%oQ®MòÜì»*$–MI¯âBDVÉ(ÊKÀïÃ~K†rŽzŒËˆµ÷U›’ÛöÜÅmÚk¶’¬&§ zQÎ7ŠEï«{’œµ–:³‹äÏâg^N‚»h1/AbË%%P2ž®*ùÚF?}O­`ÊU„±ô“N¸";… ˜D‡‚Ñj±[[â-žª©Èï5ÚƒÔ!€— 1ýJlˆò\DÆc2E,ü?#œæ8Ï ¬ï#mh·ô†t¶¨¤ ;ÂmzÆÇ¹:Ù•&E2¬ g1˜¹ŸÃå³iبÛ-ömftÍ5 4-žºõº¬ÜDÔ«¬îK5kéâÝ»(V,¡Ž° SåsZNœVÕÏÑ9„/(¯ÐÍeÝCSÄò!¼ŸPчW¤\C011Ì\¤ãýðÛ YŸ¶¬FiûK3ùÇuMp³~xÌá‰aE Ë"òÉ!çf­ žXz˜£ ½cˆYSÛÖ¸ÎE‡ª.S¯³[å—NeV0Ÿ,±g8ÏÓnËuÓ(UÜiß°¤¾¢i¬Kd¨{E±‹eÃOpE (Ä£˜â5Æ|hæD\’ÎÝýS`±¾ÐPÓѺ*oXÊÜz–ÌkXª:5–g‘AŠÞ³’[2çø#ƒs•i’|fÿŸœDÿñMà +¢Ø–­Þ¯íT!™Úúe•Ü&âQ”HC¡Z£ÔŒñÉÃ8ÌqåâÛfgkÐ4.ÓJµ5^ŸªêáÈÈ­•{]–·êÎÙÁul,H\W¹ ÚœMœñ_49£û’æÿý|~è&ä8e+Âå„o/Ç€Õ:Œ2þ@³MiOÒÈGœÿ»º/ËÇå8QŸƒàøeªXJYÿ×9ÎsŸøç>~ Ú ¬ò…æé4™ÄÊä䜇>CSù B\²Ï,ã(çáÆqãƒÊë¹ôýþjÙK»ojëÑa{ŽåV©±€žÊÀã˜Öìí)Ê"lM‚H«M6œ¹žªÎåx,É»J* kÌÚUÔöÀ NîöÛn[¦Ä¬d(a•ÑùþšÍžÑ¨WØXËÁ_ ŸªqŽLb0m7˜C„2Ì˘Â1„sˆÇñ:½F‰*DÊLðV3‘™.1Ë6Û3mÎüXM“–PâÇ8ÇÁâãs¦¤ü»ánǦçxÈjr¯›r¬Øi`œÌ10BbY‘3Õ/:º®½[h‹p^¸‡møF²ÃÂe²;lša£ÎQ9‰Œ`8ãÄa†,Ѫ¢v`Ô'–ÁÔ… ³ÙÖºãÈd‚œ‡ÌŠ«ÈpÏ(ó x ¢Rƒ¥U«ìªîJú­Ù; ‰)J¿ƒÊl"Égä“E=~|ü¤®qŒc΂= ͯÒq~ïrá{ÿCRHUüXÌE{U'!|H õ¼ùØê“Ê~6-–½Þëlôœì÷.¿ô5_ÅÌÁWµT³Ä€·[ÏŽ©1‰âºƒÓý$k¿±8­FZÃÓ¨Bãd¶¸­ª3‘eÈ´Åm{Ë$Éâã‘+$âÓÎ 4‡³ÓŠÂu¦î+ÛBδþp–H…¥k X)œÈbœ°aHB‘#,ŽE2²eÊ+–Æîòïc²ÊЗÿ)0)‰ÓL-åXX:¼L(¶FºÉÔY™ôS$ËØZ&ÎcÌÏð“cv£˜½Ú<‚17†mPh2Ö1ïƒÃÇQ8Kz_±’|ÈÞ»°Úía͇ÃA½ª¬%Šžå÷/¹}Ë—}-„ù_İk)%VoË^¨çÃÙhhã ƒOt5Ž<ò—&¯U<Õq,% ±?@[ ²-I,Šú+ÆXˆl_ †¦ÉrÈ££p)­ZQ· Ù«èz5jðÚ’îXÁ¤ó×|ðSGŠ%ZÀBsr©;eðø(ô~çL¯õ€UýAM?¹f™_ë«ú‚˜a‚ú[ c¤ã«Â°äsØ ÃT7œÐ¨²k¨}Ër"+=òQȼ‚íWx=„都á¦U³Ïõ^ó˜(v¯M8_¹uñ–ÇÀc×ÞœwØT¯N™[ÄL«›UUÁöºBÑ2 ꆅ“:8?&3Ñ÷/¤£p6]šî¥G™ƒ¥Ë—.\³/ýN$¢ Ñ-‰1¢-gð¹‚tBµmԣʦô8Ê0·e‚¶ 㫲ûŠÎ%Ä<º½:5C¯F{–i„­Œ„S0Î@¥FK·KWøýïiDd?Ä´âŒ;?!®M‰<¸/•ž¥¤5]êu5{.@/°'P¦À¯–‹Å.áq³÷ïß¿~ýû÷ïß¿ {ZÔ¢›»—¾6ozþ‚ÀàY£jz‡ö!ÔîïÊÊ!UQPè§³ex¹‰V.c¡@"ï­´Ž°}wØîXü—u€%1áÉHºzMÄ íRæœáÏF-Iª ¯ÿÿÿÿÿÿÿÿÿÿÿïY‘ 8åò ˈIeÈ ð# Û5­EœÚµIF% ŒÍ}FÁ½Cþ×À‘L£af1´þGÙP8bÊÜýByHSŠvÚøD‹å¹ñ²ÐÔ›—ÈëýGÅk!ã=õÀŒŒµICåßâõû_Ã`d¿h%¸þbI0–W1¯:okÁFíì‘…pjkwvC‘WeˆÁ©¯ 5æŸ+*;_¤~]ä^®Š6§­,iG3ÓØˆøJˆô^Û þÕ°Ð~Jìù¡Z³ð~ˆ¼ý 1¯•õ s&HÈËþOd­øÖàx̽*<ŽEçÄ5Õu€ªØ¬Ïë1÷®è|Ý¡¥b[FUMM!(®gæ˜ ™Ñ=Õo™þVÎàóúÊ@w…êÞC`õRù.:gEe$ÚÏ¡½¾Æó5.º1’ä¢î¯„¿ÿÚ ñ†,G0Á @P00À 4AS(@00P‹ I Ç( @€@8è @PD ,@°@€02ó  @@‚@˜À ‚ T €B$òCAÿÄ"!1@ð 0AQ±PpÿÚ?ÿɤÎà])„ PþÜ@ѸÑ4C޽u¥3“PJ:Bs|ü6À€Ïà.RT ’’)wK…»ÖÊ®»§ ¿ñ?Ž·Ø”è*èðÁó‘Zæúú޶µT@„#_ ‘¡Ñ ô[(@,v”’‹¥ÕÞ(  ªÀ Up«ÀšYz ‚U=2ØÙötC“Ý^ÆEGùGä{à ŠÅ…Ä8ô€:éψ""nœÙºÁ§0sC¡wumsÂCs´r±,,õ¬† P¿\H"^õU:‰S‚­îhñåW_€ J—TGpX‹&=`‰Èz0À| „בÂ0Ì à@AGr¦šŒ4,4!‡odѨZ Vfäª` 8öÊA ÀöàP€5m…¨¸¨a…J¥²«ŠÁ€=§£õ£ Š uáÌèT‡¤ö¤`K<²YˆÅ`TG|¯"uþÄ!Ð9Ù£X@B¤o@€ PCíÆ]D¦Š¹ï,®ÐRN"AZñO9ûöóÅ<çïÛÏóŸ¿o ~yüfªöür⥔•i_ç}jªÜQ÷Ÿ-QAŠûäÅŠúï–9Zpl¡íî î„¡h‰ò€T ï"qQñ&“DzË7«%ê’+³}zÇ—asyYv"ÀúšàÈK $©úªJ¿ÀÀæ©»ëå Ê`(n+©0~PvP±ªf•C»O¨…4bž1yÎ9ÅIºSëŠzo£µ¢°i½Hà3”Æ  7$É©$¤¡Ò#[›„ª„9åGé€,’oÞ9Ù0y!ÀN5–)RTc–Ü0Œé¡Z a£WÒE 5\@ÿNÝÚϘ&‚mª5Ep±¾ {›áâ¬LV ¬%üÁR Ùû–CÓ¡nŠQZ&nëuµÅ1C‰xµÃËd·|³ Í»å™mß,È3nùfA›wË2 Û¾XªUA0%!hªtÂû¡(Z"|  sÖQ¶ži!¾ŠÊ,bôªXTØ¡¢@¶"…‡àÿÄ%!1P` 0@ApQa€ðÿÚ?ú,ú…Te§¥û]ÑH$ äm±¡<ÿÀ%ÆT4«FáV–&dCôÚ°(7 ™€(cƒWò†+Èr%Ò‹áÒ6?G »Ø=€î«úÔyù ÇQã[ WCK[k½î_ŒI³¬ŠL–šsÅ™DVÙ­’%Âl8U*h'ÃH7«©eââäB«-O, l"ɦ‘6UùR‡”+ãÆ´BhÔI’”ÐÁ†¼Õ·Üf`.”7áW\Ì>h3ƒyìÊV»¸LùúC`¢™6Ú"ˆá­-6Î$p,ùyŠÂî&E±ë°ÃŽBÑMÊ7Ÿ54Lušë&ðÃ…üï7DéùD3—D—DjžëªF•²)°ÄP§#üæ0…=Jô3·AÈÆhÓnZ³Cü’c†aˆ!4Äô¤·Ó6Äõä²î<†#H¤>|åüU5 )¨vM9,¡e (YCå^ýÜ5ùlp5QK©†LdãdÚNÎx¯`ÏK¥®$},ËѺe`z A qÒ&1SòŒ ŒEÏB[Ž•1ŠŸ”(à€p0ˆÄ\ô{*TbÞ*ýBƒÙR£ñWí†eÁ| ¢:´à'<ƒ÷Ð0mØ2go­;;^2–éÎüöž¬38c’wVñö< é;é¾×¯ÚÒQÔ¸&ˆKE(¬k2ôF.™X¨VíeL–åqº¤tµ®˜•§Ðÿd2;¹sÁ+(?$ýö}’gÙ`=Õ7€Ž¤ïïïÐ@ø¯écfü5ÿ±=,h[J?ÊÊ/G¢x/â;›ðM^äÀ“òpºþ–6oÃ_ûÒÆ…´£ü¬¡¬âž~AÅKü}Ý·Ç–n×ô±³~ÿȹ‹¸”s–, è7w¡Sè*8-ÙÃpïP\~» Gv+ÔåþÏFÝ,8_E,£g€há"-×N¾²æ—U%ó´õgFZ @X©€Dc¥ñЬ—Š€4EÉ mBU5=5‚ãTíâ‘ngŒÜÂ1†²•ÏÍýšÝÜ€¸ý‚Š —eVùAÀ^ °Ù“ˆ M\#UÁb/ðïI‡B´õ™´Å’ÔöGh‘Tˆ¿„²hAšTÍ“²2ĬHO ¤þåQßßß ðWÔÈ “UpÕÐgú¨2í&>ëðû¾‡œ"ê¶‹uÓµfüИý“9>&Œdp@kJFOn&L;³È¹!£±°°J š/ò… ª‰Ïeâ¯VQ­¬”i͆lSéj¤þuŸ›‹‹ëôD·ãd0?`¹< KôlŒy®ªe'Rø·Ö£ÀœxH¬ CÜR¡Xk¢³‹„ÇÓÊ,÷>¿Ueü‹NEƒ7ÉQ¾=Ì2öX/V’°£IièÔÒ,2Î4I.°k-+ \28« ˜ Èn ½wÝÏË`²†³Šyù/ðM÷vßY¸VüâU¾ ¦§–ˆ*`ÑW¨¶QALRõxu”îñ©ôlá¸÷¨· #^DˆpÝð=ýú9¢Ç<ž¡%”lð $Eºé×Àö\ÒêŠpúµ£J84iiéžê=}03Èø¾ÏƒÁ誯wR„“g$Y!¬§› THÍ×P&¼—ßN²‚¹iYCØM¨òA&î,WK`ÉHR‘nmAfåÄDÐÃV÷“!ÄVu/®è‹zžƒÚR_z,öÓj94nâý”Âk©)¨ïïïÐ@ø²Žøþý€þŠ’„Ï'Ö~+_ÒÆÍøkÿ]œÓL2cq𲋬9|²Ûñµ*øn ÷E’~û~C’gÙ`2ÝP üšÊ Û>[?Wã>ûnÉÀ¡þE§"Á›çRÔ=­†7Øx5þ/ú–U”o&>ëòû¾‚6Üäæ4¾ñÈP¡B… 1v b¾TPÛT(cm&s£78pèý\|Tb†Åí`*/›â3¤èï)+¡ÐGsP²ƒ¡º½dSEØÇ~ú »btô ‹X}ÆsDY‰S¡-{!©¨ ×¨šèßfãEÙƒ‡8páÇ8O1Iò[ଠ½]éjç5§_ÙsKª|>båôÏ¡P½a˜(·eož4DóNy?záÔ¯Ž LEÆE”=€tÚnâÀåt¶l”‘=¡™X»BÐ2Q«ÀᣲlÍ@ÉžÌjØZ0KçVç…ïÿÐ@ø°/è©(Lò}×ëYcËíߨWÃpW¼ O ¼Þ“äÛ2·¯GèÑ?ó”Í“ØK£2Ui_VDÐ+‘’ 5šOØÎ¤:;ßò„šEq©…¹Õ[ˆµÒD «Q˜Të–;É"÷[%Z­jÕÌÿ³õcÊ?Qeq¨ˆaM4 k‹¦˜„<­ŸÒ*y\>Â%œÌ(×Лjð:œÆûWFHêŽY‡¾>›§·Éû ï^A Ë|¥=h>C§è‚ )B5¬CIH…U VvRÓUÔ.r*Øñ21”\ŠS-ÐÖ añKDHNyq,ªŠ¯R„vªaá=-Pæ†ö­×û'Âwáþq» v=ûû^:£Dº2{í=Íã1öX$ 6J\f7%vP¸ Óˆ-_GJ¥‚¸eÛ‚s7ox׬J7ö¹_t"i“N§Au•àü‚qFF®@D™Ë¤%H©ý#ÿÙ./Doc/Tutorial/PV_examples.png0000664000175000017500000207237012176660653016113 0ustar vborosvboros‰PNG  IHDRg,~ ³â pHYsÈÏ«tªIDATx€p½½½BBB¾¾¾÷âø ðØìîð"8 øã÷ûýõ Dz 4KùõÅ«,'!²¦šêð÷'$ ÷÷Æ ïðòL?1«ÃÛB;/=GJòÖÆƒ£Á}]?­ÆsS:}—ǃi9÷ÿ …–«ðóøÿÿÛáèvpcƒŒxkYüú€‹+.+éìðûüþ÷øù¨±ÇkßÛRu‰±âúõö}Z(±ÈÖO8* —º×sS:z“«YL8-!aw”Ÿ‰lƒi9…ªÛ+a+ 3)BD@Œ•¤ýþþ|rcš¦·*+)™¤µHIEœ¶¹INMÃÃÆûü?$ï ôË–‡ì÷pI&—º×†mUÓß㟉l{V%ÿ ñô÷f`SÁÇÑÁÈÓòôöWPEúúúöòð[RCüQJ?¥®¼7Q[õú6 ¡„Jƒ„ˆcA&ÙÔÚF)-!~¢Æ‚^:Ò×ßöøýøøøOOIêØ@Bc™œ¨õõõùø÷ þT:"üýþŸ­®s;“Þëy°ÏsP1i…©—{W#)%¶ËØJ5($RadúøôÚÎÌæèëË¿ÏÛž´RXW ù Ù¶§¤µÇ‡`Bn8  ]eNsP1—{WmI*†·ìzIzŸÇ†a9j’Ζn2zJ›–œg^P442ûè+29MTúùùèéâÿåè×¼Í߀X:™´Ê  ïàèíWB©½qWCzI†a9`y™ ‡g:A@¬¶Ãn\GÉÌÖüüü§¨°ùôòñóó9(Õâì7#àî÷Wn~’Æön: qWC*0M.Êû × RáG=1ÿ„’§ñòõþþÿüú÷ ø]G5åäèC&Á«*UqCCC½½½n: †®Öçàâ“rHŒh=Wl‹©”uñññSSS­­­```ããã½½½ż½",1.ïÅï,.(ÉÍÑsL0 ’¬ÃÏßê" æîöïõúïgcZâæ ààà zR**wŸÎ‰a2©”uïgc™ååå­­­¦¦¦   üRÕÉ¥Puaº©¦ øøù,,(õöö^J9ÄÔØ#J3"åìòªÆÙm‚Ž·™·\u ¤‹`üZZZùòñåæôCdv¯Ý .3;ö²þþþ*ó&".ΰ½L9)ñ¨ÃרãêbTCÕ¬ê+T 놾zBþ¤‹` ë@E'Âô(÷òðúøø¹ê3:2*å9 îÆ·ÊÖ4:9 ø2#¢çé|iU›±Åµöòe+T ëzBþ[u¡¥‹_aƒÐŸ}0fŽášr ë×ÇÁìáÚ ôëäW< ¤²Áî( '!¶ºÆâëóÞèð—®Ã<$" ```   ààà ¥‹_Ÿ}0šr ååå^^^½½½ü4$E0=2 Ÿ“¤M/ý$6:õö÷ØÙÝ üÝçHA4+$ÍÕÞ üö    ìÇç9½½½äκ=7µžÍ•xR ÷÷øðêæûèùü¿â*ïòõûüþÒÜæîòøßåé#_mÿ ç9ÿ fU)ÄÍÞRA*õöùÿöööæìó×ÝÜøùúåìÿýæÃÐÝ*!ûùøìïñK=0Ѻ¦/FZû'ñû'ñÉÅËûõôì æ ýýýüô/89ùê;+ÿÿòìëú!&ô÷ø½ÁÆ&ò*ñÜÿÿÿò*ñÜ^^^¢¢¢+-ÊÎÕºÑâ¾¥’B[náê8¡ƒ:u©û‹WJáê8)CXïÑ &$óë ûò*Zu-í¿ ²ÇxhR›¤µúüÿ6ÿÿçèîùùú³¼ÂüèÚ+#:–qõšxBQ0Q0S–qõCCC½½½MMM³³³0èó÷·¬°RQJ £¥° BJG££­;FC¿ÂÊãäægWB 6³š™˜“chm Ìï`4áèè¼ÒÜD.$½½½³³³ì ÷WUPòûýî÷ÿõäçlbTê÷çÞ·³»ñÞ_K3š©¼\zzœÀ†d@Õü)•Àåk@Ç×ñD.' Ïúû!ÞÔÓ“¡¯JF>]YLÓÜä²ÃÐÛáé. &01òÝü#u‹Ÿ‹ua†d@ŽlD~¡Å‚_;ÄÔÚ=ñÿ5‘¸Ü:Ø3‚†“M]^!,.ïìíûñTXVÚÒÐúúýüýýÅÂÉÁ½Ã .*!ª³ÁT\#‹uaÿЯpªÓ?c~R#‚_;<,&©ÐìVoH$$*-çæèõõ÷ÍÀºBCA«¨¬÷öëêìðèâƒvœœ£ b5Øãê0Q}ó÷#¥Íë[3V0àÝßóòôþþþóú>83$÷ØÚJÖÙßhH+¢®¿ºÎòÑÝçkG=Zñëè‚PN~°²{qh~ˆ‘‚xo˜§ìßÛßÄÀÍÿöûûý,F>ξª:93öôó\-'jH-~°²‚xohYQ?+"+BV½½½BBB¾¾¾ýíÙðîíõ #úëØ ù ûþýîÒº.FöàÉØÝâðò÷ëßÄåàÞñþ éç´*% ôõ÷ú,*& ß¼õ!D}|xƒ„„ÁË×ÍÔÞ åøùù JH=~‡˜„vc¸½Ã´¼ÈVZUöïïàãèâçùÀ¸¼pDÿõÐ 0•°ÄkP<‘§¸oYH}|xƒ„ˆíìîèçéb`XŒ•£tl\úúüœ¤´BC@œ­ÿÿÿSXUÝßãòðñãæëçèë\8!êäℨÉ<õoYH“²ÊmN6‹¨ÀuX@ŸÈéa8ƒ„ˆˆ©ÒxW.\iråÚÍùûüC?6ÆÍØ÷ö÷A<3ãäèWH5ÌÕÞ91( š¨ú IV^Ô}d#¼Ì‹› 0|x„ˆÿ |X7¡³¿¦³¼mND†ŸµzaKuX@a8xW.a{ÔI*ÔÝàâtqhìÙ¯Ç ìðôŽš«ÉÎ×)dI.™°Ç¨ššl;)[z„ˆ‚cDvšÄ/cu†‹zZMDzaK¸ÐÜH0$Ÿ…,êö"öâ×"%#êìïĸËOLG­°µj]N ýþþȳ®“§º{W;ýýÿûÓ³ˆ=)H‹z{¢Í…^3ºÌùH0¦­¯ÝÝâ}sc°±¹/$& '!æèíõúõö÷Ïó q0É ©ÀÔ =.y¥Ú3ò¯Ëþ,‰kH…^3Žd+jÆ–q: $) ’Ÿ ÌÑÛçãæ¡ÖÜý÷÷úýþÿþëÚÎÍ/ =)»Òá‡[&[v#¥ŠK¼â÷D \v¡¤Š_–q:PD=·Øì8Hïêç&91% ãå鞪»øùùrU=ÒÛæQ;*¾ÉÕ[9$ñóóó ÿÿÿ¥ŠTD èöø ¤Š_DDD¹¹¹‘‘‘oooIII···ÜÔÓîéæÏäí(% îðóðïíC=6%ô *"“±É þÎÞê!- ððð^^^²²² ¼¼¼ooo£££¶¶¶.NЮŒ\SAÀ´Êô÷ûøùùysh­»ÌîßäÝæð÷ùúF+/!„«Æ !N²²²c…Ë{5]]]m–Ñ,BÊø*< ÛÃ’G[aÚ»ØÇOsp‚†”7)¼ÑáÊÛè'!M,ù÷îÕ59="éõûîÜùöõùõñAùäMPîÖýÛ ¿ÇÔiG/F2#ÈÞë4)!ž«º[5e†¶›zJ¦`Vkª•cØÈÃþýüôõü ýûù.+ª¶ÅÿÿÿF?4ýD-yŒ¹B2'þþþëîòÇÔâ^=,———iii›zJª•cú #)< õ·»Þf;ôñ%.1õѾ*!ÓÜæ  /& ÿéàñiiis¥[üëÛÍ÷ñîºÅÎyeN ÞÞàçÓ6HAÝÓÔÜÏò"!$…Ÿ·D9/ÂÃÊo/V[üZˆž¯ ùúû÷øú÷÷úÿ¶ÄÔâèðÌÎÕ òË×ã4) ÚßãD9.i_Pb…ÆI4íáÚààõõùÿíííbd^ýæÙB2$ýþþËÎÕ1)! Õßæðê%?```ããã½½½```ŸŸŸž{:Óôì"'ÛĺßàãôôôößÏ<0'þþÿ!¿ÈÒòãêñ:%   k”Þ•l"   ™®»!(,ïëèf?Ê ï×?Rc箊çíòõøûðóöôÿ ·Ç× .% %ök–ç•j•l"gRE{Š˜=7*ä3dJªµë½ª¥óóÓÝæ ÿÿêïò_B-þþþúÇàïâÛÝ7/ùf‹Ëšu5±Î "!#% %43àýDäÜØD!÷Ûåï=8,ÆÊÓÿçïôJ7& ú8¶{ÕC§šu5ÿÿÿSSS­­­qO2ÊãìàÞÚõö÷ñðò%? /=¯š•1éÒHIüêàa‚П~0½h]E™¥þ­­­ÄÉÇ"#"ÂÔ×èëõôó üûüýúûüøúFZbÈÈÊÅËÕòóôåñêijŠ573 )6Ÿ~0Ÿ¼ÐÁÄè ˜£Uj•«–k<79ÕÒʃt`Íå÷òÞàä÷÷ùððóööøùùûDÝ›œ.LY ÞÄu§ï‹Y0aD«–kßáç ÙüûùÁÊîòò)*)úúú=<6üûààáúûÿ³±ºûæA$Bÿÿÿ‹Yx˜¹ˆhGCCC½½½Ý×Ï ðñòUTLÆÈËÚßâ 9A>šœ§JNHÅÈÐD<+ùáþtœÎ.ÿÇ^ekp—ÈiGæâÚ&½½½éû÷úÿ ÷û¯²»AZ`'àÑëóöÈÈÏ ¦£ªdqoõÛ×ÜᬷÅòæà[+NŒd22i8¥ªª[VV&t¤ì÷ÝŒe7-?8ë åÞÐ æÙÔÎÖÒ240XR"ÖÖØ;DBâÞÞÐÕËñèå(.-3I:ú³ÑòÑX[^íÓ»[VVŒ\&ÇØÝ =IJø÷÷ãÓÊ "ðñóàßã ââæÝÄÐ76M\‡“¥êîóCL"¡Ìî_4qM//–¶ÎJû€“cXH0'%x€…þ_4¹ØëG(¶âô“m™qgˆ€{“Ÿ¨ïïñ ðîî:C?þöö ýöQA)ÏåéÝàåýÿâãåø¾ÑèýþÿF0G(V33¶qgmaX‰“wm³ÆÏöôôÃéî ûøÑÜæ²ÒÔkeaÜÉ¿/%/H^áÁú}¯±wmM:1k7G\kú?½½½BBB¾¾¾ éÊö6¤—0,'üüü;5+íëê ýýþðòóúçìðÉßð#  èëîçäâ80)ãçëËáõ))(ØØØE>3öñð þþÿ••öùÀZA.*H¾x!jˆ!}|zƒ„† úöóÜàãâãä ÿÿÿö÷øÍÓØPF;ÃÉÁÛßçïðñpnf–•›÷øø#öâüÞëîÚØÚüýûbc]Õ×ÛöäÛÝãê²{ex…ÿõÐ’›½òìë_|‡ò°‚,Xž¸ËbH5¡µÂ_K>ƒ£Á}]?Äãc<z¢Ï†^1ÿöÔBqˆüè¹Gƒ„†”Äíl<1% )24‹•¤íîðo\Gœ±ÃUQI´¸¾>80ÖÒÑ$" âåè&ÿñ×ÖÙîðõ üýýìïó(ý3)'þopsùô늦Æ}b}|xƒ„ˆý‹¢³u–·$gL7úøø—º×iF)c<¥Ëçñ?/(v˜¿ŠhAÓßã-!€±ì€O ,GúßlBI•˜¥þÿþýüüpdRóõõˆ•ªH( ø ‡¯àÞåï óõ÷P,ä ÿ5`’«pŽ›ñìé«ÜU$[H<šµ;Kêù“\;;‰¬ËwTEøøùþÿe‚«!§”M³½Â 7681åãäÔÈÆåçëñòö "òüû.H4870úôð!÷ùûÿxlZïðñ“¥©ûüýC2"àáæ:$ÿþÿÛåî õùûü>;1s˜Åh;þùU$Ç«˜9Uh±›Œ HoEfK“tN‚›±~eOwT5nŒ°’tPÖëí 3›~UÏÞá6=;íìëÆº¼ û%ëíï¿ÈÙáéïîñüòìùûýúûüñòóù^@ ÿ%-øúü«Áß<,9* ßèî2Sjh;úûûc‡ËyhOetZp‘Eo~eO’tPh7Pn“Ã’m=1"‚‹“&;C.B üîì îÑ¢«¹îïñk^Kúúû­ÉôeheŒ‡Žäüüüðòó0µÉÚüýþM5#ùûü·ÌÜÿüû4{žºvL1ÿCCC½½½ ú’y5¦o®·¼Éé‰`.c„¹|G‚¦Ê~Z6’m=```   ýýöõ÷öõöÿÿÿÑöí2Fî!5 [@ çØÏ>6) 07ò晨¼X0ÿÿÿøûü•¯Åéòù .#ÿèðöuM3ûýþ츙Hg½½½ö 4XpŸ¨aRIDR|Gèöø ~Z6^y¥¢‡[   ÒÖþöôÍ ÜûúúúøöSF3ÝÎÛúüÿ ÿÿ÷øù×Üâñê®Ä× ûáêõøý üýýòõøA+1äêï%±ËÞ ÷úûðô÷`Húog‘™“i(|¦Õ„Z+Yq™§g ¢‡[úog‘™y­õ$BXýúõøòí÷æîú¹Þ^LR® žëíï Ûàêàâämÿ ’Õáýþÿïóõõôöäëò )-)"Œž³x’ ó–{]àÓÜ+§gt‹¢Œu^^|µ¢„K óäʬ üøôöß 1Bö ­Õîó!Mqæ þKT ëíñ²®µëñ!ý¿:2.d@ øùúº²µ:)&óöùýééé57/ßåëß°” Gf ób„¼ž|DŒu^¢„K óCTK õðíÐÂÀîäÝ ï þüûþýüõïè™Ðä!'/ÉÕ øøùû-JñÖýþýH.´ÂóôöùôøüáêñûüýáèîÖçò+øH7(*ûüýó ž|Dh3€°ç€P `5du‡%M~,Kåɨÿÿþüû:A:OJ€ ðñò éêí³¨ßaWHÿXA*ýþÿ»ÆÑºÍÜ üþýûüýcSA03 ñóõ£¬¼¹Ïàÿÿ_*P ß½÷!C€Ps›Î7`÷ðëúõî4:2 ѸnXÿÿÿ›¤÷ìå òòòR8* º¤žÜôøùû=-I9) ô÷ùœ±ÅÜçðùýûüÿ?<3 òëµæ K!CåÌÜÒHK79)ñìêóÜGfRkmeøùùñðñççéìÛ áÒË÷áÒ þ(+ÓÞèíóù óöø0&ÁÍÚjVAþþô4ý#üKö}´þƒLý#üg[2òìÜíÏÊééì þþþüüü÷÷øóôõ©ºÃýýþoW@ú õ÷ù±ÂÓR8#+ ˜¹Ó1"!@-ùúûàçí×çõËÃÆ6&åÞú1Vú*æñ`Ä <ƒLú*æñúôï—§ßûöë0êüýíîð ÷÷øññðòìé$  V7 $в³ÈÚ÷úýöúÿÿþ øü«¹ÏÌÜêñöøj1VÞñ <]zª£†V„¼|DþÞñQQ-! ÿÿóðïÛµ6+Š´Ùÿÿÿþþþþ =K3&îÓÀ÷âÍ4ïó÷ ùûýòõùÿÿøúüRF8ÜãéÑØáòöû õ÷úâéí ãíñ×ñ %€¦Ï€Z1£†V|Dþ×ñ %ÖÎÎçâäù÷÷ñïìøëëñùôèÛ3SD(»¿ÊñïòüÚÛñôüäìøúþ ÿÿÿüýýïòõÒÛã-"©½ÑJ9*úüüîþÝì%€Z1j“í–mm™ä“g}´ýƒLÝì%)EXׯ»þòïF@4Q8üûûñññ94-õ10"öö Ä` ΄ ÿøùûñôö?/"! lT>±ÂÐ5#àèî·ÈÙ ùûûMbräêb„Öž|*ršÏþ d%–mÒn`.’ “gƒLäêX, rˆ5( ùøúëéëýüüüýýóòòöñëÏÛâÏÐÙäúèäéCTVòÞ ®¾"!:%üýýèîõ¯ÁÓõ÷ùmU=ÓÜåE) ùûû³ŒMctêæúž|*m–Ö“j*Žf1½h]C˜£.’ ¤ºÅ"E)êæú»¿¼~mQ ‘“Ÿôôøÿÿÿïîî$*(  ÿÿ!ÿÿÿTe)ØÆ¾Üìø-)$& #()åÄ·0!üêçóéèëðö ýýÿ0,'ñèósž×“j*Ƭ˜+" -JC˜£Ëâ‘FñèóÒÓÚìîôýýý %$,22©ž¡hXC¯ºÆ&'%ûüýûüýúüþÿýýþüüüýüý÷øù 20*ª¯·Ó×á@=34CŠž.0- ÛÒÝÔß [itöéîb)u Ù‹`'|ªã„VVh‚ª˜~:ThlŒ¶”tJ”º×lF)‘döéîsnj¾ÇÆ ýpdS«­³ æêð ÿýòòôúúýóóöüýýùøøÆÀÉÊÑÛ.-& "$ yˆ†üüüÃÅÊG>N åï8-$àÂý >úëè£ÃÚ]=&‹`'l—á”i„Vª˜~”tJµ¨lXcj…¤–{\úëèæßÔD3&’š«åæçOKC$$!÷øùéÕÛãôóõýüùQWUúúùûö÷ÔÔÖîðô ÿññòï ÿõ23üÐÀKo™{]=&“®ÄmR<”i{‹˜…uhØSK‚¯á~Q¬¹ÀÿïãUX]¿ÑÛ(ø™{·½É "!@>;èé뺼Åçêî ïïñþ[Z4µ¯¯XOIÑÓÖ¶¾Ë EIIúöô ó÷û=PSöõöí˶úÎÔé÷øü þþþ"úѰ/PmR<µ’|Kn„áÙÎ…uh޲ÑrN/sB~QVk–ª•j ½iÀ—s@A/%¤©­\WSC;;½½½ôþN?6¦²Âù½Æ àáã:A>ææçäåòû’›ª+ÂÇÐ÷÷øWXOùùú¸È×ÿû7<<ÿþôóõê˹(#&÷ó 'C;;½½½‰µáwK{žÂ…b>ŸÉëan„'2ü oƒ• " 3!øçéæõ?øø½½½$âäë/&%+ )<õþÿ 22 »³¶**(ööö!ùäãýýÿøøûûüþøøù ÕÛâáàåûúúäáàÎÄßC'›°¹##$  ÷âÃ"/=øø½½½Â¼´wKL…b>¯ÁÊÒ½7yvL$©ÎêW2ÖÁ®*?R, ñepk]F7dRH°ÑñiF)C C½`½CCC½½½½ÄÊ?FGøøùùûøþþþûúûÓļXSFóóôÈÍ×äÞâììð  ïïð86. úóç+" =*9—¿ö"6RSM#ûäõøúðÈÝã/=C C½`½CCC½½½‘·×oI)>DLˆ¸ìxHþ G0‹Ÿ®uaRW2× 3*epziF)i€–½`½½½½Ž‡‚•¡©ññó óññý¯¯¸ ÚáäXVMAB9õôõáñÿȱ¥4:DV Á½¨<:7üýûüÿþþýEMNùࡪ«7( õøúðôù½`½½½½oI)ëÌ¥HoS:**(æ–¸ÓjH-–TRüYp*,'D'k_WƒŽ— þýýòñð$*'6@> .îíÁ··Üâëéê9ûhB& ôçÏÌô$*.ÏÒØåæëùùúE$ù j^Oô÷ùš¦¶0+!@3(B`|oM.jH-j¬®}ri†“ž  n_U.a[›„ éíñr~…œ‡ ïñój}‰ ‘†ÿÜì½ÐObpzmbes|dqy`oz½½½BBB¾¾¾BBBõ×» ú9ôåÓÙÝá,=ùåÏøùúú(êÜËøøùÿ#ëìæêêëíñ÷øûÿÚÍŸ9NaÔÚâ êëì È ýþñÚóëö8ðóö øùù;¤5)øùú1áâæöøûõôóüøðïìþþÿ ½Ê× S;(ôϲ 1No{†‘…z>/ ùúû¯·¿ýþÿøúüøøùéìôöòÔ³ÄþþþàãéåêðúûüA +2ÿð’¶Í0&$" þþþýûëhVA¶ºÄ ÿ‘…zyÇc=·ØpI(}|xƒ„ˆþóü ÂË×ûüü"êíñúûþóõùÿÿÿûüüíîóÒÓØh`S˜§¹ïñôÿÿÿôõöhg^š˜žÿÊÏÕ/)#üö ÷÷ùö÷ùÿÿûûûøþéðõÆÕâýýý4+}|xìì샄ˆ™Ãèg=ŸºÍaF3 …¦Ã{Z=“¯ÃmQ=pI(Œ»ítEðÊ•ƒƒ|ü |xƒ„ˆÃÌÕüüü.(!ßãé ôÿÿüüýìîð ÅÒÛtm^âäæ™Ÿ®e[J ÷lcVû ýóþþþ‰”¤ûüü÷ùû÷ùûîðò ùúúùùùÃÑÛñôõ#ù‡Xy optÕ¡|Nö xŒ¡±t_OÖËÅF3„­Ô|S,àáÞ "îäÝ1'.óó÷²îƒ6 ~˜ƒ‚hX!u_Hýýþ …Ÿóõ÷ñòóñòó_O>è÷ÕÙáõööFGBÔÙâêíôþÿþÏÑÖ83-Z^[ôôõ¼¼Àðñóüýþ÷÷øùúüuH+  »oXÔîü+Gnýý ‹{n$ "…±ß{O!xš¿ˆfA“vTxV6×ÊÂñH92k†¥•z[Rúv‚}Z&åîõ·ÃÒACul]‹”¤ÿÿÿÿÿÿh`Rýüý´ž¯çðññ++)Ó×ÞãýþýKLI·µ¸ûûûJLHöøùòôõóõ÷úûýôôõüäØÛ" ?3&Wmoúýö wR0ЬË!+*U) h4­ÇsS9{O!­»ÁSE?œ»Ôû ñìëH`M•z[ )\ƒºê = tk\ö÷ø´ºÃóõø>6+ &"MD7¶¿Í  ÿò697þþÿ û**.%]™¢³þþþýýþþþþ07ýåØÁÖãåîò0[ƒ„{±‹ŒOxˆˆ¥¿x[AÝͽvT5ûâ9#6A€˜­&ZMD›ºÓ d> Abp“¹mGwžË‰b5éĘƒ„|Ûßåðòö þëíðäçìØÜã úûûííïíð þÿüýü òïí!©´>8íïóB;0³»Çÿÿÿ":C"%ÿ xÅ•S÷ñûAvˆìé錮ÍtR3w•³ YW¿·¶C3,e0€hS˜žphbeF-„£Á|]?]y¦£‡ZõîìþýýýþïêåßîîÞÿÖòÎñöýÿÿ:“y\ëâÜ3þ׸)HïI„Q¢ŽvxaNpib’„w„®×|R)öïêr›Ó“wYSb—$ºÒ?'ßÿÿÿüýý÷÷÷ñòô Õû& úëÅlh_‰Ž™ÿþþZPAæèêõáØ÷òð<,!Öá ´Ñßïÿr< $ /* 5V€®ã€Rƒ©Ð}W0‰pW)H ¤Ëé\5—©iWyŸÉ"5•{]­žiÍ×Ù! ððïô©±º994óóöþþÀÍÙÛãëïñôMV!\YQØÙÛ ÷¹©¨ÊÙæòöø,)$¾ÅÍfG.!ÏÛå øýþÿÿ€R}W0gŠ¿™vA\5iWk<úóêøóïv?ßÞáêëîù÷ö:=7ôô÷ôõ÷úûýMTVÐÒÕýþ÷ùúþÿúüüüüõö÷'9?´­¯. ôtZCêèéèïõÿéïõõ÷ûÿÿóöù#|¬æ„T¤‚\p~÷î䇩ÇyW9–“‘jmonM½»À\aZýig`¨ª±I>/ âäçâêù ïïñÿÿÿçäã üüþüûüýðñòîïñÿd<¤ÃÓôòó çíð) þþÿöøù#„TâÀ¥ŽÉþw]•²Ç¢ˆ]бÖyW9–“‘4tšÈŒf8\v£¤Š]"#eo+®ž›,+*ÿÿÿÛÜÝJ?2õ÷ú áÐßìñàáåìîñèëïþÿ öùóôõÝàäBôøü K1áéï)ޱÌbH2 ƒ¤¾D@[-Ý\p~ÊÕØ6+(ÓÊàkÜå•so“­Â¡Ä_<Œf8¤Š]ƒŒ‘/35÷ýÎÐÕûûú ÚßåâæëãÞÛù Oaið¨ùùû ÿÿÿÿíïòß÷úÿ ïóö !ëò÷ã7³Ç×c X?,r˜ÇŽh9c?#a‚ÀŸ~@6+(‡©Æ£…JmS>vŽ¥ÿE‚¶ô~J }to~†;U` èáÞÓÁ­øøùþ nXA êëï ½úüëíðíðòñòóúíàðüðõùðô÷  ÁÓás0mŽÌÙ‹\>¿Úéåж9•³Ëóòóèîm@ÿþþyW:Šr[jÇ–p9CCC½½½```   ììì0AF÷ûýúúú 0BN0ëÞÕ  úûòBHF»¶¸þüüýúøøø÷÷÷õùôhO:ÓÜç·ÍÛkN8"mQÖÚà ‘aA:"ûÀÀÀ@@@CCC½½½©˜ƒ"+*°¨½™zN„¤Â €Be‚©›~W0®®®RRRJJJ   üüüßÙØðíí þÿþÿþóîîåâïö÷ùþÿÿùúú ýñU[Výëá# êìïþÒÂ$  êðõÞèðüþÿïõùöùûþöùûΞ‡=by@@@½½½­¤·œ~Tóõûa¶ŸJ›~Wd€¦œ€Z] RRR½½½   ¶¶¶éäãüÿ ÿú÷öìèç§ññ)&ûüþøøùóôö¼¶¢åêðïðò  úüöùûúüþùûü-$ºÌÜÞèïòõø  ÿÿò÷ûô÷ù=byïgc™åååœ~TôíèŸJt£êŒ]œ€Zïgcqùý   ¦¦¦½½½£££]]]Š|pw‰˜úùú üûúýýýîéèê ùìðýýÿüüýóõø5?CêÚ¾ÇÏ ù!õùûþúûüó÷úgE+ ôö÷™¹Ñöùüóöù- r–ÀŽj@•z[þûð~µ‚KÿXo¨‘c  ™ZZZZZZ]]]qœÕ $Zðסóïîüûùsl\¬œšö÷ùÿýýþøùùýÿÿF-)üÃÏÚ"ãëåöùü ÿ÷ùûéïòýø÷& hH1‹¯Êþÿÿÿÿÿüø üŽb&‚Kÿ¨‘c üfˆ·*E û R óë䤯ï`?êìîôõøÿÿÿéìíþMý& ç‹áðûüþýþòÿÿ0#ÆÐÛò÷ûûýýpYBÐÛå÷úû5Tk óòèßZqÕ¦gtÓŒc- óøñêôéÝ øñæð "*´áþö!Iã¼ùúúþòIý ÊüÈäæzwkÿ‰Œ™øúûM9*ÇÕà6/'ÎÖß õùûÞðúÓÝåH+Õ¬äíò>b óWl‘©”oŒc-hĘs<m“È“m8^{°¢…P ó¢‡_^z§úóéEýüüÿþÿýûú ?Üâ8ß1>%!ÉÐØÅÒÓ $!ÿ(2öøúÿÿÿJMG÷á×- A.÷úûÚèð-%éòöæïöÛèñòöø  Zrµâ+œy>˜s<“m8úôí]x¥£ˆ[ UldÿþýÅÃÞúöæùõòýü ýúöôûùøâòù óöùçêð$*&*#áæêÉÛâëïóßâä5 üýÿ÷úü ôññM=/˜¥·Úçïd}‹ £‡S¦ŽKWm©“c¨‘c£ˆ[ Œ¯Ê&.ý×óöóìè þþþûøô¯ý$2ßÔ!çðó÷ãçëýúøìð÷âçëäïùçêî) ûêð øúýöøûçëñïýöéïõòô÷sU< ð bƒÌž}4©“cdˆ× &‘bdÜœ$ çÜØüùøø>ôä¬üúû ÿþýýýú÷\prü¸ÎÙà ÿÿÿßó)>$"<öë"%"üüýÕÝãÔÔÜúüþ äëðö÷ùîùÿÞçü #÷úýÜ®”+Rl ÿÿÿ‘°Çž}9[w°¥‰Pv¦éŠZœx)œ$ ```   ððð___±±±u^}«ã $ ÿþ(PïÕ­öïêÿÿ9@8éÈ*Y_Fàâå" ûüü–Žÿøó,ÍÕðôöù¸ëÍîó÷ùûüúûüVL=úûüâßá¼ÏÜXq „ ¹|`Ga€Ô¥‰PŠZ    ±±±ýûù-è;`÷ôó±¯ËnJëêàáäóþþþ¤¨®a\Vúûú ÈÒÞáèïÜàå éíñm\Gêíï ûüýËØâ  þ Qü!ë |`Gu8Ì,Zs§¦Yd„¸œ|HªÚäÛý{) az›/I ÿîéýýú÷ö‹g+ Ÿ¨ýýüÅÊÑöööU>3$6?ãåçÆÍÖËÕßþÿþ÷øú7) öøúøúýìïôüýÿöøùÂàò<üþ³¯ta|Œb{ž…c§Ô÷YH` )œ|Hq¢^&Ÿ†eh‡³  èíåÒ_M6ÿÿkmdììíÞÞß+$þæÖúäØàÓÛCó1ï÷û½çìó þþõÜäêÛâéûüÿøÿÿö÷ùæèížØÝvŠ”ÿ hé˜qž…cY, Ÿ0i“è—m^þÿ ÷ñéóí\dR 1òϸ þÿÿÿþÿÿûûüùúú°¦¤;0'ûüþÎèòóúþäò÷æ ÿ æ ÅÑÚþýþêßæëüüý{hSâçìþ ü˜q—mþ üðßç‘›q­²Â ( øùúööøþýÿþþÿÿúúúûøøú'2ÏÙØþþþÕÝãÁîñ! ÝäëÝì+#ùúûòõ÷ÜäíPA1ëðôüþÿý ñý ñhnGòñôIC6 ξ»õõöýýÿ÷øùÿÿÿÿÿÿøùù÷öøéêìFHM¥žŸW^]4'ÞúûüÿÿÿéíòÁÏÝwT7üüþ À×:( ôöùªÃÙòõú6( éý ññUj•«–ký ññÕÑÕëêî´¿åO9 ñòôýþ ÿþþöö÷ðððPC5K:(÷á  þþÿÈÏ×ßçð*þþÿH3 ‘¤¸;+ó÷ûÛËŽ5ZrõñMMM³³³ÿÿÿßßß!!!«–kõ``Q   MMM³³³NNN²²²Ðâëþû÷LBîæáþÿööø ýþýüüüùøùóóóÀÇï 7ÿÿÿûüýbTE•¦¹úûü?3&õøûùþþþþþÿˆpWŒ ·]v„éû³³³!!!l•Ó”k-éû   ³³³²²²UR$! úùøöïéϺµûüýððòùùùöööü ööøÿÿÿüýþýøúùûü÷øúB9-ÑÏÒ üýÿúüüñô÷µÁÎT?- ëù”k-ëù ÿþø÷÷ûùùäãçmD!ÿÿÿ‘¹Ýþÿÿÿþþýþþ+JY Û¤ƒÿ õøúüýÿ÷úüýýþöøúüþÿáçíäëñøúý ÿÿÿîñõK@5²¿Ìúüý^3Tìøìøæââùùû öóòæÇû'ùûü Bs)ñ»·¸¾4Sc /LìêÉüüþÿÿÿ÷ùúüüþÈÔÛãèçíòõ÷ùú6* ìïðB7) í÷%nœé’d]v¿£ŠAí÷%ëæçø÷ø÷ôôÂ×ô÷û×õöøè$4>àØÖ#'ù÷õÞÕÒô  ÿÿÿÿõöùêïñubMÃÀÃ3#,¬¹Êþþü! îòóðõ’d£ŠAðõ.::À±¯ÿWVK ?þþïí ÃǵúúüðììøõóLJ?Ôµ¦üüþøúü ýýþÿÿÿòõ÷àæêñåá8-$_J6ý ªÈÝñ ìñô"ñõ¼ Dö“[Um¥«_}Ç¡ƒ9ñõü$9[qÿëØ ûí ÿÿÿUOAïóû) ²ÀÏ+Zrìçåéìþþþñóö éïô ÿÿÿ÷úüßàéòØáêñõú íñô"AóõÿçзD?Ž»çrEÓn`ÿm¥«¡ƒ9óõÿoƒ–-@MýüûáÌ»UQEùøúûÿÿÿÿûûü àÐÙö÷úõþ àõ÷VE2¡³Èÿ_Q@¤Øáêéïôÿêïò¼ÂÓ^K: ¶nU@óòþÿÿÿt¥ïŒ[l—Þ”i"˜t?pšÓ·ëóv§­n˜Õ’h+óòþ```   MMM³³³ååå‘}ji{=4&#ðîðýüüüýýîîîëééÅëå ìý úùüõòñ;0$\K9Ùäíâèîøûþ Ýåì îúûü^H4K>1îñòþ€kTëïò÷ôüŒ[”i"w­ f-v§­’h+÷ôü   ³³³BD709;®˜” ûûýÿûûûìêìV^Yúêß  çíóëïòb=%’¼Õýüþ{xj¼£œ.ÿõÚâíÏñ5+# к¥.F[øôû‰S÷ËèøÛÖÖZB2øôû5% üZXN¯³¿þþÿù÷÷ëêêº%&$þýÿþýÿýýþýþpÿþÿúûûÒÙÜJ@  íïó!0þûåïôùóõõîòõþÿö÷ùëïôùôøZs¡¦_öÓ¶¢·ËhvuŸÔ‹a,552f‹Öšu*ùôøóõ÷êëïññôúúûáßàüüüôóòQZXÖÇ¿þþÿþþþýþþýþüýÿÿþþÿüüý ÛÕç ÷ðñõúûúÃÇÏú ìñöâòþ   ûüýßåëúôø f‰¾šwB -Jh-Jº«ŸFUa‹a,gÊ™s6šu*úôøÊÉÏáàáHRS ¤™œôòðwhTèýýþýþýþÿýýýýüüýûûúüüüJMG† ùøùTQF  ”–662H,ºÈÖàçì ðóöht|üõö|DYp­§S‹¢µìþ‰`ag‡´™yLƒ·ö}I ™s6k–ã•jüõöïôúöýòXPC! UI9* ñàðñÚúûüøøùùüüüýýýü¼NF€gNÝòv‚€§ ¢ WmqÞÉüùööýõõ§S”»ÞlE"u^K™yL}I •jýõõtj`±°¬ôõøûûûöõöéáçúúÿôõõôôõïïñùùúøøùüüüýýý"*.¶½Çÿþþ/.*ö÷ù CLLÐÛæùùûñ*èÎþÿæÉ°7Pýö󕯿ÎÐçZßÑÈE"|›ºëëòB8WB5fŠÌšv4v¤âŠ\Óçï-ýöóy~!ÓÖÛøøùÜÝß97 *83¢¤¯75-ññóøøùþþýõôö//(GF?öñð±±¶ïðòùúýûûúîïòÏÎÓëìðñïðóÑÚák7P™{ÑÑÑ///r™ÌŽg4kQAQ޽érC÷æÒ .tZ„eFŠÁÿšv4Š\-™{```   CCC    €scÿ¡©¸ëìïôôõ ecYììîòòÈøøùúùùôõõìíýýÿÔÔÖéëîìùúü ôúùúáâäR>($!ÔÂÃÛákx///Žg4y¤×‡\)mˆ¨“xXrC .­Ç×S9)v?ÿ·ÃÆI=:ÃÉË=75   ½½½˜–”UQIüüüQ`aùæÚÊÆÊêëîùùûåæèppeÇÅÉÏÒÚ!(%6$$­¤¨ Y_X Í¿¿íïò÷öø]O;âãæ Ù15 ÷‡\)“xXµÙð2Ú¤MlS9)fßšs!I=:ÜØÑ$(/¤Æ=7hjl¬ª©íîðHGÿ+*(öööüúøÝÞãýýýäöü%ûý&'&'  ’šª,44.54%# éèêVhiüüýóññ÷ÖÀÉÎØýüûûüÿìîðçßÝ þíÚ~¸ù„[-m‡£“y]šs!r™É/3&_4$(/õ÷ð™qCCC½½½)8< îàÚÞßäþþýö÷ú! ÌÐÚ?IJãø̹»KHC :5*ü%%#¯´Âòîíæãå:DBüüü¾¡”UK@ 1,ôö÷ª½éìðíãßÔ]'ICCC½½½—¼ØiD(y Ì‡`4dH33„[“y]¦Èâ1/#) ûŽg7…¨È{X8f†µü÷]Ϋ“Á DqJ)ÅÅøøóãÙÒÕÚïòôïîðêðò~um’ž§ùøùúúûþþýùøøðîí>NNË»·óóõûüþÛÐÑ\2+# ÿÿ哜Ÿ=UbëìïðûüýÿþþòóôQ.·ÇÖý Óàê þÿìòõ"fP@lR>ymeøþÿnbY…™ööööõöÿÿÿùøøòõøýüýÑÐÕöðôø<1(ÝÝá ßàä þÿþéêìíÛöD8,ÄÎØËÏ×_P>…¥À{[@PO°±{pgz„wn§¸ÁôóöÒÍÎ øáÐ÷ô÷úýýþØàçÙòípkfr…–6õ÷èîóúüÿœ`q{[@°±†|sÛÖ×ìéêùùù{oh—ŠÛâëýÿþ`nyIŽ{j¦˜ N_k;·£” `q~rhivZhsI]l½½½BBB¾¾¾BBBòÝý#úê× þÿÿñíîæ ÚÁª ÷ùú<¸¯¥)&! ýòÒèêí,' ÕÖÚ%!þþþÿÿíïñ0ãÄõ÷øþ?Ĺ­  ÿö ûÿÿÿýýþ÷ùÕòòô'7éÔ¿ þÿþñóö0ÄÆÂ ûûÿûûï÷øø  íîïÎØãæìô ô÷ùß´ÅmQ:Ýäë6RgzŒ™†tÌÑÙN>.ÿÿîðð²ÂÕïðñôòñíðóþþþþþÿðÞÊóôüØÝÝ;)öжÓÚâó üßæ ÿþþùúû¿ž–ýÿë ýýýûûüöâ¸$06ÝÝã8 üòéèïÎéôôô“ËÍQKBà ÿÿÿÿiWCz‘«ýþþA/!`D.òòóÚãì86©Å×W;)™†tZL<äêðúûû+ õüïñóÿÿÿúûüö÷øóôöíðóÄÏÛô÷øQMDœ±ÿÿþêìïððñîïðïÿþþþñòôÌÑØ6'!ëïõ ÷ûüþð²ÕÝ<5*ÿüù þÿö÷øÿÿþýþþÿþÿþÿþöcc\þîãÑÑÕ îóù(Ì®—4Riž¸ËbH5ƒ£Á}]?W;)Äãc<yÇc=ÿ÷}}pM’Ô:c2ð˘Ï/f9»ÅÑ ÿÿÿúúûëîðC;/Üçìúüþ ÿÿüýþüüüüüýúûûîðô//-íðõfYHþþþ¥³ÃÿôþþþÿÿÿÿÿÿuhUøùùuºIÚ]úûüøøø‚‚zþÿþ˜”™ ÿÿÿâæêýÿÿ÷øúüýÿö÷úýþýýýþýýýÿãõÍÙäáéñ ÿi' ⩇WyÿõÐ~‡µƒ„{Ú§£ðKƒi6þ|zp‚ˆŒ¡±6BA¨ÇÜ úO8* ¹É`G7c< ‹«ÆuU:…¦Ã{Z=°ÖñP*¯ãQŒ}Xy‡ /½x¬Ý*T#5h'¶xºç5F÷øùnXAÿÿÿçêî¾ÏàÂÊÕøúüõöù ÿÿþÿþíïñõö÷~hRâæê®¿ÏFD< c]QüüüÑØá Ü×Õ*'"ãçíy7­Þ4(.1îäÞüñèüüýPJ@úûûúúú2úû½½Áîðòýÿÿÿøúüõøþþÿüüüúûûóõ÷%.0êâàéå  ½Ûöøûü;ó—–“ñéå6‚i6|a}~ˆƒ„x $;ÔÕà>.X9$±ÈÖatŠ4<:kP<úøøàáÞ·ÙùiF)ñîïZ1¥Ëç[5¸ÆËH:5uU:Óßã-!¬ºÁTF?Qgƒ¥™}[Ä“xñ¨‡yŸ€=€ˆ6$²ÕìFC5(àæî÷øüWS]†‘ ÿýýýúûüùùùeTBßåêñóö*') õóò´…qãíóüüþó÷ø{Ž˜ 0ƒ„0ÿöׂ—܃„qx[A!.0U&äÝØ?i:d=ÃÅÅ "îñûgC&ôóõîäÛ7—©·‚v€˜­!ÊÙñ?/(lM3eF/‹–žòùÿÒÏΉqi $íô|‘¥„o[£²¼]ND±çO†nX‚±æ~OTzˆY_f´­¥èëïøúðñõÿþþóõõ¸¾Çùúý üüýþÿþüüüÿÿÿãäçûüû1èêîóõø þþþýþýùùú÷÷úçèë ßâêíòÂÊÅùõîðô üüüúûûì"ge3êÒ úûü Áÿõõøæãå üüû*ShÓ¨’8úøäveùýÿ#œ )ƒ„)tލŒrX­©Uy\^qˆ¢xŒ®Í’|gw•³‰kMby“ž‡mÞîú=ªÓíV-_RJž²¿•{\ñöûq‹¦ôìå) 6•zL˜žåîõ‹zm£µÀ]K@ujbŒ¤¸t\H„«Ò|U.{eTd…»äáâðÞÉ£];m‰§“wY~O^uÅ:ïþÿ ïóÿÿÿÿÿÿýþþûûüþþþïðñpnd ‹˜ ÿÿÿþþþþþÿúûúƒsøøøš¨çêî ÷÷ø÷÷øêëì÷üÓØçêíñþþÿïðñÿ ÞáçèëïÿÿúúúèéëóèñõùxY<ðóõ·ËÞÎáæëèêÿÿûûúúøù÷öôn9#¨µÎØôùÿöýþ#ŒrX“y\pŒ«ñé់t¢xxŸÌ‰kM¾îœ^%nv{ÿ(vV:†ªÌzV4èääxaNt¡áùøÚphbp•Âk>t\H|U.¸ÐÜymbqPu™Ám’Å“n;“wYd‡Àœy@Ueœ)þüùÄâ=7ýÁ ýþþýýýÿÿÿÿÿÿÿÿÿóóõùúùÿÿûûûsqfàÌÀ# úûüôÜÍ 0îïñö÷ùñòôþþÿÿÿÿÿÿÿýýüîîï PH;ÿÿö÷øôõö©¶Èýüüöøø`6 QO–¢±êïõ ÿþÿòõ÷ñíé/ýì7  ÿt1-²²ÂôùûP{Ž tttR3ˆa4ôÕ´Ëð÷7)âÝÞB~HzV4zj]Œ_—©iWåâá ŠÁþ äÕ\Os›Îe2 ùìåœy@«›dQ^ •’W .ïîí%„Œœÿÿÿþÿÿÿÿÿ660ñòôØàéíò÷ ÿÿúüüÓ¸Èkh^ýýýüýýêê죦¯bpq þäÓ ÿÿÿ&$!ôõöÅÉÏGJKË­žýýþßÎÊIB:¦°¼þþÿúýÿeG1áåë øûüýþDG:Ûãêöüq‰£w]{¢Ï…^1ûÓ³-M9ì7RrgŠ¿™v^]t—Hir•¹ŽkGz‘¤†o\•¾âkBiWeSG¤Ê\6ñïðe2š{Om“È“m8¯¢pÈÒÕëëîíðÿÿÿÄèõ_mkçÕÎÄÊÑôôö üüþûûýøú3AG­¦¦ÿþÿÿóõö]caíïñýýýýýý=<5ãÎÁ üýþúûüþþÿûþÿÿÿþÿ;72êäßÌÚæÝçðþÿÿìðõ ù?/+" ÌÑØ# $Øáéüýÿöùüûÿÿÿþÿÿýýþùûü Ŧ;Zq{¦Ô…Z,ŒkFw]äѼûÓä-M-M¤‚C5*£Œi©Ùÿ ‚›±†o\kBnŒ°’tP}¦ÓƒZ-ôîé×¹› „]2“m8¥­­êêñ ìëêD:-*)&32154—™¢CKNáçé&'% ÿþþþææèíËÊõöøüüþûûýûþþÿþþþýþþüüü÷øù÷øø8DEéòüËÅÄüüç×Þýüý«ºÆ3'ëñø úüüëðô ùûüøúûéïóJdw…Z,m…¢“{^âÀ¥ÿÿ¡u;T»Ð–q9W'ÌÃû–“‘4’tPx¥Ýˆ[#èÝÛ-nMŸ†gc€§€Yóóö\d_ýþýüûüçââÚÎòçéî??;·¸»*!613 ÿþÿäçéÑÛèùüýêêî÷øûïüûûððñõþðóõûüþ÷ùú ýýýøùúøùùøøúîïðãæèI," ÿ%A•²Êëñöÿÿÿüýþüýý ô÷ûV>*¦¿Óûüþüýýóöø“{^@[n‡£’y]\p~’³ÎÜãþE–Áçj?!÷È7jmo©ÉàiN;rŽ«ŽrUˆ[#›}R€Ygƒ§™}Y’›Ÿ4::çæéüüûùüý÷ÐÒØ ùúúùùúõöõûûÿáäê ùùûóôõêæàèñýêëïúúû þÿþðïïèáÜ#!ö úõ÷ù øÿÿÿûüüññóèêë* øðõêðööùý þÿÿöøüC0!>*–³ÇU@- ïô÷³Ì7(ëòøF4%ïóö?\«ÙU'c‡ËÒ‰tc’y]nM2–ž¤jb\Wm;"ñ×û)—voɹ°W7pf†³šzMø™}Ynea–¡©ýüýðîíøõõ0HRøõóñîìX"úûû§«¶ãæë ìíïôùÿöòñXH3Ž¡¸úúù-;?.8;Ƶ®  ÿÿÿùúúøøùòóöÿ Ýçïó÷û þþÿó÷ø×àç-ûþÌÜè ô÷úK6&¹ÍÜ×âìùûüâèìaûüD`p”Âl>46%–³Êy65s™Èg8hÚÊ„o\jb\°¸¸Õï{Y8©“cŽ~pÿìðáÏ;eƒ®›}Rf£š]Xo¨‘cj_W®ÆÒØÕÕ07B Óø÷ôøð=Qóߺ—]RA•eøùúôõöÎÒØnrmŸ› ýþÿôôöôùùúøùùþþÿùùøôíó %ÌÝèÿÿÿûýýX=*>, lQ:€ ¼ÿdC, /L2þÿÿçîóCCC½½½ŸŸŸ UUUmmmÚÚÚ¹¹¹¶¶¶JJJ¿¿¿AAA€€€€€€’’’nnnl>u™ÄòÞ‹u^g8˜p&&a|¤Ÿ„\ààç{hHmޏ“rH“{a¦l›}R|¥Ô„[,š]kŒ·•tI‚¦Ê~Z6¨‘c[t¥¥Œ[a®ŸR¿¿¿999´´´EEEJJJ óóó½½½uuuÏÏÏ___„„„½½½ÂÂÂ>>>ÅÅÅ;;;°°°¯¯¯nnnááá²²²úúúééé___)))CCC+++‚‚‚SSSððð½½½w„'05ÝÚÜõòò ýýþúüÿÿÿÿÿÿþþþþïÚ 3UrÛÄåûüüýÿüýþþûüýýþþ3/+õóçWL<¢³ÇY%¥ÓòSH7%! þþþƒ”©þýþZ6  öøú>>;;;PPPPPPdddœœœ---%%%½½½­­­‰|s€‘ž òðñýýÿ÷õö ÿÿÿÿÿÿýýýõóóòîîáâÚx¿ÒJD;ö÷ùýýÿùúüüýþüüýýþýóóõòôö=/+2Õ ïòöàäêYM>ÂÈÏ- ûýþþÿ$äëðÂÔßÌÛæ øúûÖáè/ûýÿ øüýþ÷úûóöù½|Rq„JJJ‡‡‡///CCC½½½{{{ÈÈÈ;;;zzz===···IIIc†Ñz/ ›Z€P{skt£êŒ]2gÌ™s4r9ú‹ZCCC½½½···ŒŒŒ£££†††CCC½½½€obc…ÌùÙøö÷òïð ýýüþýüýüüøõôñíéEòéõöùôøúû úýýýóõ÷ôõ÷ëíñ ðó:)ËÐÚ þÿÿùùúýýýþñüéïô ÿÿÿþþÿûüý÷ùûó÷ú H-•¸Ñþþþ‡fJÓÚâéðõîôø ùûüûüýíóöRq„ôke •›FFF///®®®½½½CCC½½½áááëëëIII]z®£†Rz/‰gC\x­%û'ŽmL[t ¥Œ`ðâÎH‹Y ^x¢¢ˆ^Zt¢¦Œ^f‰¿šwAôke •›ëëëIII888þþþGGG¹¹¹‹‹‹uuu¬¬¬þþþ1@$ <رù÷ômeS—‰Šþÿ  ÿÿÿÿýüüûüýüüýþþþ;;6&P?þþ›—œõôó)3éÒÄåìóðù ÷ ÿÿüüþùüüúûý ÷ûýY:% öòX<‡¬Èýÿôÿÿöùúùûüq…‘ pppRRR½½½r–À£†R\y·¤‡IhŸ˜a¤ˆSm³“s7¥Œ`¥Ðóœ{H^x¡¢ˆ_¦Œ^šwATi•¬—k ½½½¹¹¹uuuu¥æ íö,föíâ+4'ýüúúöóðæÞ!ûãúúüiwx–‰ˆûüþÿÿÿÿÿûüý÷øù÷úü æîÒÄa'þÖ,†Õð þþÿüüý÷ùúêïó ·ËÚ. öúýÿÿÿüýþK4#)(!òõøž·ÿÿûýqŠ— ø3Bþ¤‡I˜a“sM[0 ¢ˆ_^y§¢‡YWn£©’]¬—k ød„² 6ùôïôû÷òþüú¹•5P_úöóó ôÞöùûøö,UG9¶¨¦÷þúùûÿôõöûüûYmr®›™ýýýzC»Þâð÷ðøüKÀÞäêúûûD3%ìðô ²ÁÎìóø÷úûåíò ÷ùú6,"ðô÷1 î¹—ùûýLl øp7þl˜î”haz Ÿ†`gŽÍ™r3¢‡YTf…¬š{©’]YqŸ§at¢åŒ^ øùóîðãÒÿþýþûøýúö"3;òéà( $±×òð:6úÏÿþþþ^L8 ýþÿ×ý¼’‚<" Ôáëî ÖÞäKda  `ÿÿÿøùúƺ»ÿÿÿÿÿÿüþþ +ùûüC7-(Ÿ³Çýþÿýþþ ±ÅÔøúûóÛß5%  ÷Ç¢ÿ9^ Wl‘©”oSf•­šk`{¢ÿþþ¡‡`”hŸ†` ,j•â–k¬š{§ai‘ê—oŒ^ £‰`Yp–ÿÿý þú üúøùôòÿþýýûùüúøþýý Æ’5 Î- 2úî&VN¥¦°JD9ùûûÙïû ,çêïòõø ùúû?þßíõ  KüýþkR<êóùýøö  ÷ùû‘Ÿ²ÅØçñ ïõ÷G9 ©”o­šk …^b„¾ž|BfˆÀšx@êÓ®Y–khã˜p—o |—¬);HUpn ýûûøõóÐÌÖùíßüúú÷óñýüýÿÿÿþýûýûùüúøüù÷™ú+:ÞÊ øëô÷ú þþÿøúúìîñöåëñüüý\)„®Ð  úûû=Ÿ½ß,!üüÿúûþÿÿÿûüþöùûðñó´ËÛ;0&üýÿøûþýýþóöøÚãìZC%ÏÝå0Vr ž|Bšx@£ˆY`|Ϙp˜p  êáÝ þþýùõóýëÒöòùþýþ  ýûúÿþýÿÿÿýú÷÷óíWûýNÙâê(,+›±Ç ýþýûüýçêí-ÄÏÐåíöøúíðò,) ôÄ¢<^Žyc•†|A2$*H`Zs§¦Y¥cj•ê–kšs!ž*ž&úôñôëâüúùýú÷ûøóßèÞáØÖ ÷ôò\D*gjaþÿþöö÷öööççéðë讳¿ÿÿþsT6 þï÷òƒhMæêîûáâåú½°/ ÿûâñöê(0Øùõæëï ýýþô÷ùÍ×ßÏÚæþÿ÷ùü ýýþûüý÷ùüÌÖäúüýN< b‚Øž~(kz„fŠášv¦Y–khç˜p ¡Ši_xùôðIJ2 6éâßüÝÉ ÿÿÿÿÿþþÿÿÿüþþýüýÛÛÝ"7-&øúýýüþòõóúüþäÔÍýÎùýàñ÷ïøþÿÿòùûðòöçíóùûþ üýþýýýüýF8*½ËÛóöùùúûæéívbRúûüó5þ ž~(fˆéšxšvSd­œs˜pþ óåõýÿþÿþøðìüüþ üûûöóñ ûúüþúúûýýþýýýüüüýýþáÓÎÛãëù ýþþòôöåêîÜóñ!!·ÊÓ øûþ/-íòßçíáèî þþþôöø"êîó) üýýÕßêÿÿlWCøûýøùûûÜÁßåé&?Vþ öšx­œsz®ö†R þ ö®£n¶ÄÈ! ŒŠ—,þ ööøûüýÿÿÿÿÿÿýýýüüýüüûüüüÿÿ,3à×Ðãéï ÿÿñôöLUVóóô ñÞ"#²ÂÔìðô Ýãéûüý4*!     E1!èíòÂÖæ ãéïñáÛ ßåï&ý öü†R ý öüc…Å=(îúùüçåé JI?êçè³Ãò ïüüþÿÿÿÿÿÿÿÿÿÿÿÿüüü÷÷÷÷÷øîîïA5&L;üüýÙÛß çÔûäýþýýþÿiT>öøùóöøµ¾ÊH;,,üþþ×àéáíò0%   ýýþøúûL5 èíòÇÚã% þ H&콞Cbü åÝÝÝ###ÒÒÒ¦¦¦GGGAAAêêꘘ˜hhhu¨ö‹X ü åCCC½½½UUU«««þþþ{{{ÈÈȽ½½ûöðÃÚ"ÍúùúÚó,õêÉó ýþÿõöøÿÿýýýüüüùøùö÷÷ûûúÿçéïóõúîñõ&ýïÿ þÿÿ ªµÄð õ÷ùÈÖàE7*üýþüüþúýûüýþÿÿÿþþA£±Ããìô ó÷ùÜæícCë ¸¸¸kkkuuu¹¹¹{{{AAA‹‹‹uuuðððhhhhhh˜˜˜‹X ë CCCTTTïïï½½½ááᢅKVmœ:nOHòð$%¤“‘ öøüüûÿÿøøøûúúúûûÙîî ÚáùùúU9ýþþÿÿÿþÿÿþÿþÿüýþùûüüüþûüýB;0ëïòï÷ü(öùùûýíòöúüþýþþüþýþýÿúüüøúüêïóÏÔÛ?0" üýþñõø?avêúkkk¹¹¹………uuu˜˜˜[s·¥Iêú½½½½½½¬¬¬¡·ÂbeC  ýýþÝçð4≠² øøúÿÿÿÿþÿÿÿÿÿÿÿÿúúúúúù  óå  ÷øûÿýþÿþýþûùúüÿÿÿüýþüýýúûýûüýýþÿùõôêðõùüþ  þþÿýþþýýþøúü÷ùúëïóÝâëåíô ýþþíòö:2ëø[v­¥ŠSožõ‘b ¥Ib„Ìž|4ëø öõöþéê ÿùøø÷õôéÈ0IT0 ñô÷ÓÜã±Ðîÿÿÿÿÿþüüü:G$( ÿøõôૉùúýô÷ùþþþÿøúúÿÿÿþþÿüýýûüüúûýýýþýþÿÎÕß#&'×Ö×îò÷ó þýþöùúûüýB4(8-#üýþ©¸Çòõø|‹“í÷Wn¢©’^¥ŠS‘b ž|4í÷åáá   ýüûýûüùø÷ùø÷õìó íïóøòõ÷ìñö ?lîãÚ6÷  µºÄÿþðìíöüûúôðïó8åÊÿùûý ùÿÿÿÿýþþúüüúúüöøùâèî5%­ÈÕ7%Øáèô÷úÿÿÿÿÿÿ'þ  ƒjPõöùäëïàÊ´ 6Lï÷©’^f„«š|U~´ü‚Lï÷taT‚’¡ ÿÿüûúù÷÷õòð#ÛÜòóÑêíðVlr>ÿã¹ÌÄù,û ¾ÄÏ&/3ÙÐÐ é ûúùüûúù÷öHB5£Äÿõõøú  ÿþþÿþÿÿÿÿÿýýþ÷ùúøùúíñôâèí9)vT9 ýþþG7&ìðô÷ùúöêç ‡¬ÆD5*üþÿùüþô÷úþÿÿ ïêïðõ Wm™©“gš|Uj”Û–l%‚Lðõ –¬¹*FW Ò¾±Lþýÿ&7DÉËÔùîúëã"?>þÿÿúúúÿÿýþþ û.)" ÿÿ' ÀÚù,6#9CþýþüüûË›‚ÿÿOE5 îñô°·Ä óúýÿ þþÿúûüïóöëðõ·ËÜÿÿÿB3%©½Ð üýýöøújQ;>Wjôôþ~~~‚‚‚êêꘘ˜hhh]yÁ£‡?Vkœª•džW™r$‹a+šw…­Õh„§.Kaj1øŒÀøt@Òn`Áíõm¥«v§ìŠYk”Õ•l+mšð“fôôþCCC½½½EEE»»»˜˜˜hhh···ŒŒŒ½½½ˆp]{•® ú÷õE3üü ÷)ýýþôóõúüûúüýþþþþþþÿþþÿÿÿø÷øüûýþßßßîýæçì ïîïñþ Þþýþó(Hú#ëïó ÍÕÝþÿÿÿ  *)$ØÙßèíóÿÿÿùûüäêîvZB € ¼xcM³¼ÇÅÖáWI8 ÿÿûüýòô÷ëñõª‚vn~Šôòý‚‚‚‹‹‹uuuðððhhh£‡?i‘Ñ—o/d‡Ãœy=ª•df‹äšu˜|Yø1¨eŠ™öv§­.¤ºÅ\F;»×çŠY‹Äu<ú•l+“fv¢ÚŠ^&ôòýþþþðððhhhCCC½½½ëëëIIIAAA•••kkk…kR£¤¥ç÷ôÇÄä üûý  ùûúûþþþþþþýüüõôôóòñüüýéæçëßåì{Y5Ûö *‹š±üúù{nWB(G¹¦Ÿô÷üäëòðóöð÷áJ&޹Ö ö÷ø<@;-44íîðÊÊÐÞçíúõóG( Üåîÿÿÿ5'±¿Ì.(#   ÿÿøúüm÷ôûuuu—o/œy=šu{S+±íOC˜£C¤¹Ä\G<§¬Þ¬ ú™sŠ^&r™Ì÷ôû½½½½½½½½½kkk»ÒÛDHA ââã­¯ºýþÿýþøùúøÿûûúõôôòññîììajgëÜÑèxjSSgmÿÿÿüüüùùúùùùùú}“’B91 åðú ÅÈÎöä# ûüúñöù 6=ÊÃÁíòõúýþÿÿÿýþÿùúû÷ùúÙ²Ÿ9Naùôúu ÖãÐÁ¨il˜á”hiŽÇ÷ë  ‡/°äP‚·÷öðëçѽ¡ˆaÛ½›Ox\G<—¬»ž}E…ºød©œWùôúÄÉÇ-%" #%&gf¾¼¿êðñùùúòñòÿþþýþþÿÿýüü÷÷öø÷÷öõõ ØÉ¿ýþþþþþþýÿýþþþþÿýþÿÿÿÿÿÿÿÿþýÿS]`ãããâæíí÷ýùûý øùùúòóõùûýçïõ óøüúüýïõøÔͧó øúý  þÿÿþþþøùû÷ùúëïôúôø‹`**”hçÇ­~99SP~I º«½FUaYa¦’xiTE{FœWúôøààäññõöõöîîîÖ×ÚZgj³ª­ÿÿÿþþþüûûûûûûûúûúú`ljó­þýÿýþÿýþþþþþüýþÿÿÿÿÿÿþÿÿÿÿÿþþþÿÿÿüüüúûû ØÏ×==6½ÃÏö÷øóóôó ¾Óâ úüýúüý)/-ý û:' ¸ÆÕ ûüüýþÿãèìht}ûô÷nñ’c9St Ü‹9´Ø ùçaD0×ij™Ói8Wl”©”lûô÷èíó ÕÂÆ%/2-#>4bütgTùùùõö÷øÿÿîÜ ðñîýþþþþþþþÿýýÿüýýþþþþþþþþÿþþþÿÿþøøù¾·¶HD=:]U )'%éëíù ³Ä42.  :ööøíçäÔÐÒöùûRB3 ™­ÀVE4õõôüõöiˆ®—xR|ªã„V’cl•Ó”k-Œ`$sL(FUañ¹¥8p—Èòìôž}D©”lüõötjbš¦¬ü%üüýÿðãïÿáËÀ(&"þïñôõö÷$éòøøøúþþÿùùúþþþþþþþÿÿÿþþüüü+36ÕØßïñö ùúúáâå588 øøù   Á·¶! %g{?÷ö÷ß¾«4)! 4ÿýöô»âùE—xR„V”k-‚¢À~^@ŽÉ r7öµ¨Ÿƒc‰Âw>û§¼Èi8fäúñÌ(BZýöô2/)ÞÓÑööøëíð÷øúüýýöööåæéÁêDV_ØÛàñòö ýüýîïðÝäèÿþþþþÿÿûúúùùùóóôªíh[ $'%575¨©¯ö÷ùóûûþùùûÿþþþûûû(-æèì ìûûûñó÷Úãêöõ÷ùÔÇ•F[kþöómmm“““jjj{{{mmm“““êêꘘ˜hhh¨¡»E}Ly›¹‡eGc}žƒb ÷á÷ ~^@qßc!r7öˆ¾úxB|›º„ec„¹ù|GYD8šsÓçï-þöóCCC½½½EEE%%%{{{EEEþþþ½½½```   EEE»»»ÝÝá!ÕØÜ þÿþöö÷òóôææçTRM ý3mdøøùëëììÁÑòìçÿÿúúúúûûûúúýüù563DËúú'ÓÖ×(#!ðòôéêî ùúýüüýýýýöö÷ññò×ÙÞge_Ä»´¸Âçu^BûûüÃâݺáêft}7š€“““üüü“““ßßß!!!¡¡¡hhhr™ÌŽg4!y¤×‡\)ûøüƒb÷ þíÚ&a€±Ÿ€O­Ç×S9)c!xBl…£”{]|GªscV„±â|OËÚß5&!x¦ãˆZÓØÕ-(+š€þþþüüüËËË555þþþ???ÿÿÿþþþìåÛ^M<ôôõÝÿ¹«¬ÿÿÿfi^®¸É-,þÿôõ÷ûýÿþþÿÿÿüýý÷øú% !+ÆÉÔÿúúúùúúúùúõôó ýýý&)&¼¿Æýÿäåé ó üýýüûûòôõççé/$êÞÔ94/@:3Xppáåé*çÐò÷úùššš!!!___Žg4qÜc6‡\)ŒmKZlƒ[mmK'éÆº:&–m-ÜÓǸ¿ñS9)Š´ÛvL%”{]¾ðsBscV|O´ÂÈL>8æâÚ&.ÛÀÀÈ-(+½½½½½½½½½   ½½½ÐÔÚåçìïðñÑÓ×@@YUIûûüD3"ÄÇÎüýþþþþö÷÷èéëÛÛÝeia233ö÷øßìöµ¨©ó,›Øjýþ9<<! øøøÂ¼½&+) üüü086¢‘‘ÿþþöööVJ: ˆ“Å&ñô÷ùûöøûÿÿûüüôõøö ÿÿöÍ­ 3Sy¤Ùc'†½ÿzC†µèzK¦”}œ¸Íµ¹¯D.!&êìð Ò ›z9 Ìï`4c€§€YvL%—¾ÝsB#»ÂÄE><´ÂÈL>8­ØmÜù$üZKBîïémhcgŽà™r   ô÷ù ÿøùûûûüÔ×ß ùùù28!:/(CMÛïððæ÷÷÷riZ Èò9R«­³H]fµ¤œ×Ýæààãóô÷íììããæþþþõôõ,6bttáÀ¬ |l[¡¯Àïòö  ùúúÞáåóîòö?3‡\'s›Ìe4zC‰³ÜwM$óëä^s¢sH3ãåè„[J•Áçk?îæâ€Y+ E><†§ÄzY<ˆªÇxV9àÒÊF$»äqE»Îï$9 ¢£«pnl‘Äû™r ¶×qJ)CCC½½½èçêòñôãåéýþÿþþóôôëëíÓÓÕMUS þþÿâàáÅÌ×òôëúúùàÛãõâÙ/.+úúü õùùùöö÷õæÝ RTQBDüûüóóôÐÍûÆÃÈ).(ðìêÿÿÆ©š-'"öøúÿþÿK@3ü”³ÎoN1¥ÁÜ àñô! ü?ZnCCC½½½e4òëæ$‡`4Ç­š¢s#zYA<¯«³ öõõ^`X;¤““  îïïGJEþÿÿþþÿÿþÿÿÿÿÿ WSKÙØÚÍÑÕ/50#'' ûûûìèéÞâéöøû üýüóõ÷äæê _C+Øíùé SLCüýýøéÕ+½½½w¡')kL6~ À…b@éÇ­9Se„±›|OŠ´ÜvL$íÓ»-E‰’•*XtDæËf æ™z^ :JC'œËõ”hðŪ½ÿCO[a6Áè`[**)“““HFAüýÿûûüõõöäÓÔ?OPÿIVX¦˜› úùùKWWûûûOSK»½)æåè8FHóòóÁ»º*'".2.þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýþüüýÿÿÿ øøûèçé üûûõôôôóóR­ÎäS2€o_¾´³7mežVSøþÿƒ¼˜}¯±tibŽ™¢þýÿÿÿþúùúø÷öø÷øø÷÷ìêé@IE óòòäÑØ%3034 *ͪ üâËÜÎð7K÷÷úïðóò÷ùÿÿÿþþÿö÷÷÷ö÷çéìó|V7™­Àðôø üýþùûüó÷úèîò$ˆ¡¶x_JhE)E(,„ÙÒÍ–†yëææ$V3S2yme–TRíýý}¯±½B~rg^‹–Ÿÿÿþÿÿÿÿÿÿúùùø÷÷øö÷ '#2;8þ¾®¬ÚØÜ ìëìÕÒÒ@îØ+% ýþÿßÔ¾û6ûúú@GFÍÇÉúûüõöù ÿÿÿüüüôôõääçoI'ÈÖá(!pdRÿÿîòõª²Àüüþüýþèçét™x_J–†ylR>jH-™´ÉgL7ëüý°±¹ÓàG- uja|…Žúúù{pg©ºÂóñóþþýüüõóóäí÷Î˺ .5þþ $úûáåëñ ýýýøúûøùüÕÒÕúúúø÷øhhg˜™›þÿÿþþþòòó=%=" µÇÖ"÷ùýÿ:7/&?U‰|r]L; ÿÿÿîÙº'FgL7PO°±°±G- „{rÞÙÛëèê  ÿþþø÷÷ëèçpbYL{‰•ÕÎ̓uh—Š  ûûýô÷ùãèíiw€hge—Šýþÿîò÷ øùü8M]þØàê÷ùý õ÷ù¸°~hw‚°±ymc…wkiv‰~xûüü|†Œivƒ}s}ƒy„šŒƒÿft~h=Uw‚ˆs}ƒft}½½½BBB¾¾¾âÅíñó )EñÜþ$ðáÏ ÿÿðýþõúúú éÍ´µª—BViýíÚ ûóÞðñô .òßÊ ÿòóõìîð)>Ú;þþÿùúûÿÿÿþþÿýáóôõ*ÕÖÑ""  ø÷ô ¢“†3+$þÿ÷üýýÕʼôöøûüý¹¯¤:5,ùööýýþÿîàËøï ëïò%CùúûÿÿþþÿýýþûüýõöøäÏÀ$1@éÐ ÷ùúÜáå0Fýýþñòóûüýüüüðñè, ôþ íñöàåìóõùûûüçëî9&Åûüþð=Þáçúûþüüüôôöíðóââåøùûÿþÿÿÿÿþÿ ôýýþÿ ÜŬÁÕæ0,'ûûýùúüüýýö÷ùðòôùóççÛÓÿþþþðëÞ¤ª·)*(øøüùúùïîïí óóæíêè ÿÿþÿÿÿÿÿÿÿq|„™„ïóö ùúúìðóéïôûüýéܧ?Y±ÐsO02&!ýýþ¥·Ì÷øø! õ÷øþÿÿýþþûýþüýÿÿþþÿþþþ÷øùôöø½Úè-üüýóõ÷éìðøùû þÿÿþþþíïòêìñýýÿ÷ üýýýøùúåÙàãäå`F- öøùñÃÝùëêê êìíôñ ÿÿÿÿûëðóöóõøúûûtT: ÿÿÛä좼Î^D2‹«ÆuU:šÄèf<ÙÇ´#H9'—¨¾ ÷ùúÿÿþÿÿýýÿýýÿÿÿÿýþþþþþ÷øùö÷ùö÷ùäéïøùúóõøóôöñòõþþÿöøúÿýýþòô÷‚‚‰60)ûýÿñô÷ûüüôö÷åçì\G3 B%™¶Óððïý"þýþûûüÿÿþÿþÿÿÿÿÿxvmñフªdJ6 üüý ¹É`G7pI(¯ãQñô÷èëðÿôõö=80ëêé÷ùûþÿýýÿþÿüýÿøùûþþþ÷øùö÷ùöøùÞôòûûü>=68:4š©¾ôöøñòôîïñ€€y¢ž£ïñõ þþþõöøÜàãéîó÷úýóõöòòò  ýýþúûüüúûýýýþþþÿþÿþÿÿþþþÝïÿ*#éïó ûþÿþ bH5¨ÇÜX9$ ÚÉ»O2ßÐߌv‹Ÿ®3=% °Ëíúýóüþ úþþÀaX_Ÿ¨’w[~™´–{Y‚cDá̵\.„±â|O‰–¡wj_–Åêîãß&óðñ„”¡|l_xaN{™¸œ¦ëèæ…|tvj`n‡£’y]6P{J_xÍg*ø¿ìîñÿÿÿÿÿÿûûüüüüùúúóóö fdY’•¡ÿÿÿþþþþÿüüû…uøùùóôõüüþøùú ýýý÷÷øñòóäæç äçë õ÷÷ôûúøøïò÷øúüüýóôõþüýþðó÷ ý ýþÿÿúûü' óöùßïðýýÿï÷öõÿîúíúýúÿöýþb ¨øû…¦Å{Z;¤y|Owj_çÛÙƒ`G|l_…gH–²ÆjN:x_J„p_m‡¥“y]óéã\r¼ òóõÿÿ ýýþÿÿÿþþþýýþÿÿííïòôöþÿÿomaæÔ èÕÆ)8øøúþþþþþòóõøøùððñòòô ñòôúûû ÿþþ÷øùùúûùøùþðó÷ÿÿú ýúüýÿûýüùûýæéíîîùùþýýÿÿy@ØÌù\I1¤·Ïíúüøþþúøö©Òþýüt¥Œs[n³’sMƒ`=|l]y¡Î‡_2 pŒ«tUƒ¬Õ}T+ûùùl‡¦ˆa3¨W~ÿþýþûôÿÿýÆã=?"Èôöøþýýþÿÿþþÿÿÿÿùùùöö÷hf^ùúûÿÿÿÿÿðØÍúüý çÐÂurgˆ‹—ÿÿþþÿÿÿÿþÿþÿþÿûýýýüýcXH}ÀL€=±ôõ÷¦³Æýýüþüúi;'0Š˜¨ãèîôù  þþþýýþéíðóæQ?  L?ùûü&5/¶¶Äéóö]‚”tUƒ®ÚÚÆ±!-6Œs[ þ׸)H†• zk`jŽÄ–r<éâà*Š™¤Ú眀[“yZb}¥žƒ[z¤Õ†\+y§å‡YüøïþþýÿþøøúúúüÿÿÿÿÿþþÿþþþûûûPPIùùúÿƶ±%öýþÿõ÷ûûûpmbˆŒ— ÿÿÿÿÿÿÿÿÿÿTJ; ’O øfYDôõöåÕÐýù õçÜñô÷íòõøû ÿÿúûüÞäé6.& ÿÿÿÿþÿþÿÿÚêòl‹˜ñçàžŠu«Üw§‰pY©ÙÿòçÞpŠÑv[–r<w^Jœ€[ŽpP}T+ïüd¨œZlŒ³&)ûøëøí™_þþ=ó†ŽÿÿÿÿþÿÿÿüüýJHBùúúþÿáçíìðõýýþíñó$÷ýýýjf]óôôíîïâãå2BJ÷ßÎ ôõö!Å© úüüV9%·Óæüòõðóöúûüüÿùúüüýýùûý^SAU$L Ô<Ë×á7)zk`8éàÚ“tNj†©–zWýð×+œX„]2‡Y® m¬´µ,0/úúûàúXebÿöùúúáãæÛàæúûûÿÿýþþèíñðùùûñôö'7ùýýýýýýüûüèÑà þþÿýýþþÿÿÿÿÿÿÿÿÿþÿÿËÌÊåìóðöúûüýáéï94-¼ÂËÿþÿD-;." üýýÎÚåÿþÿÿÿÿþþÿúüýÕ²˜+Nh€®ã€Rÿýû ¿`AÇ«˜ºþ997Rg»ãûE‰\!nG'¤Ëé\5žÉêb7»ãpEeSG‚´í/% òèÞ+ÿÿõôöÿÿÿÿûûûÞÜÛ:<9ïöîõöøúúûúúûþÿüýþýýþ\bbª££ÿÿÿÿþRYZ÷÷øúùùüýýüüüûüüûûüýþüüüÿÿÿÿýþÿÿÿÿÿÿÿþþÿþþþ$!¿¶¸þÿùûûäëðhP:ààä÷ùüüýþèíóþÿÿÿÿÿÿÿÿúûýùûû€RyS.ëéî‹}uuƒ‹©Ž®/çŬ;TEfŸša}žý5\ÛÌÆ7Pk†§•zYi†ª%ã&p—Èõìåííî ûûûÝÛÞADA è úûäùúûýþþýýþýýþýýþþþÿSZ[ýýýýýýÀ¿Âÿÿ ÿÿúûüûÿÿþÿÿþþþþþÿûüüö÷øRZW²ª¬þÿùúûþöïôöïòö±½Ê/$ùûýýþþôöù÷úüÿùýùûýÿþÿÿùûüøúûéîó(Juƒ‹rR{­ë…S`€Ä €<бÖb6šaÞÔȃpbpƒ–‡kPpE•zY{¢Íÿ ðçã–n2‘tUþüü‰`1i88n¶’qJ”tM ××Ý÷÷ö^b^òì 4+ÎÄÅ üûüüüýþúûÿþþôúü ÷ùýþþÿýÿ343áàáíéåúûüûûüÿþþÿþþÿþÿÿÿþþþþþÿþþþýþþùúúö÷ø÷øù6?@½ÀÇ æéìäìòöúýçîóéðïôø þþþõøú÷úüþþÿøúûøúûïô÷Zs¤"9BñÙ¼“{^âÀ¥@[…Søïß<vO*žÊïÒǺ.9F}jóìãìØ¾2óò }©ØƒW( “”*--:<7´±¶[^XêÝ×þþÿb`X¼¾Âõõ÷ûG:" çéìÕàí¸½ÀDEDôôöýþþøøúøøúøÿýýþüýþüýþüýþúûþÿþþþÿýýý÷øù÷øùøøúïñó÷éßV;&(ûüýüþþ²ýþæìòìñöô÷ù þþþþþÿûýýòõøPi{üùó„T^âÀ¥Ê×ä@ÊÖàO;®ÑéR/¨‘]b6ÒǺ.9Fq™Îg2|—¯„iQñæÞ’tO2÷ñð^y¢ ž|BsmlÒàâjt$åÞàëëìüòõìðóóöýýýÚÚÞMB3þÿ: ¹ÆÖûüýòóôýýþÿÿÿúûúëêì÷øúõ÷øýýüýþüýþùùûÿÿÿúûüùùù÷øû÷÷øðñóñòó`>) ô÷ú ñõ÷ ñôýþÿþ òöùA0¹ÌÞüýþøúû,4o³s1ò@[@Oet˜µÊ÷ôó–Í»jb\бÖvO*v ÖŠ`Fg2q˜Éh7’tOÿÿŒf8óë⢇^g;ËÏúûüÑËÌøîë÷øûþþþ÷÷÷ééê øùúðòô ûýýýóôõ#¸ðkëôõ÷ÿÿøøøíííõ÷øôõ÷ÿÿþÿ üþÿÿùùú÷øùìîñíïð.úõùû ùûÿÿÿùûüX;&(þÿÿìñõüýýô÷ù”¶ÑU?+ [D/ЍÂüýýh5b„¾ž|MŒ«Åtw•µ‰kKŒ«ÃtU=ôöûtWC‡©ÆyW:ÚÆ·O*޵ïÙ*ƒ™«}gU p˜Ìh4úöót©ŒqW¦Pš~\öìß3ûüüôóôþýÿõõôøùøìîïûüýúúúõõöééè*!ëîñûüþö÷ùóôõçéë6ÿ…ííùõ÷øøùòóóòððýù÷øùÿÿúÿÿÿÿøøúòóôøùûûÿñõùýÿùüúûüõùû±ÈeH3èïôÿÿ X<&®ÇØïôøûüý5'5Umž|BýûûöðìÊÕØîæåœ‰s޵¢Æó™}rê×À4•rDèçøRay®Ÿ‡£‡Têèêöõ÷ûûúæäæÿìó÷þøöþþþööõveœ¡¬ùúýçéíöûÿéêëÿþÿóóòÿûøòöóúûüøùú ÿÿÿÿÿÿûûüøúûïðññ õøÿÿó÷úöøúìñôaE1øúüêðõõùüô÷úêðõÞæïì ö ô÷ùÚãìö¢Œ?^t 6iw„—‰|“{_ ÌÉÌ‹q\;CK;Cm…Ÿ“{añëè(Gh¤Š_,Uúm‘¿“oAq ë`XmŒ¨“téçéñïòúùùôòô$:A!óïìïêèñòôëðöüýç ïñ ö÷øëìð ÿÿÿæìì þü5FJÒÀ¸ööø÷÷ùöÿÿÿÿö÷øùùû>!Óâìøùýøÿÿÿüýþïóöøúüûýþäíóúýÿ øýýþëñõXA1¸ÌÛ ûýýûüýO9(ïóöÌ«‘¢|éáÞ2jb\tŽ¥Œr[mS>“{a~J i…§—zW‚Júõì䨓ttjb‡*15;E Èñï&DRèǵõõøööøûûûúúúóôôVK,ûûüõö÷ö÷øú ÑÀùúúúûûúÿÿøøùöøøùùúûþ9&Òâí÷úüýþþøùûöùûõøûüýþßéðòöúÝæì>'xN2x¦ÅüýýS7÷úûÊåì#CCCŸŸŸÂÂÂ>>>[v²¥ŠN¢y{“¨…mXe¦›Zi{Œ—…t…lTÚãàÔÔÜ#©ÞW"øŒt^p•Å—{Yc†Áz?žƒ]CCC½½½```   yq¾Úè ñõùýýýÿ úùûúúHpᮈK@2 þþþö÷øö÷øîïñeieœ˜œÿÿÿûüüýþùÿùùùúûüüüüñæööùú÷úûûüýôöøbF1 X¤»ÐÿþÿvO6 ÿÿÿŠ[<þÿÿ * ÖÖÖppp   ¶¶¶JJJnnnØØØÉÉÉóóó+++QQQ¯¯¯¥ŠN_tŽ¡Œr›Z—…t& ÔÔÜ{Y8w›Ä‰e<W"ø ! fˆ»šxEøðæÜÜÜ$$$‘‘‘¸¸¸úúú½½½±±±---ÖÖÖJJJäääÛÛÛAAA®®®RRRÊÊÊPPP333}}}ŠŠŠ&&&°°°VVVIII¿¿¿AAA………üüü???éééWWWˆ˜¢+59ÕÐÑ%) þþþüûûþþþþñßNtNóÿàÔÌÿÿýþþÿ ýúÑâï499ÉÄÄþþþýþùþüüüþÿÿþýý ôA3 íðöøûû ÿ#xZAÐÖÝýþÿüýÿþÿÿúüþDDD–––ºººCCC½½½SSS­­­CCC777êêꡌr·Þõ¹ºÖmXâáãæÜà<Vk›ª•e|¥Ô„[,ôëâ÷îá'[t¥¥Œ[—p/Zs¢¦^$$$ooooooVVVªªªCCC¶¶¶CCC°°°CCC¤¤¤«««vvvããã°°°JJJ```   AAAùùù{{{úúú©©©]]]ñïïúúù÷öõ þýþüÿÿÿÿÿù÷÷ù÷öôøìœàîz(äçþþþúûüÿÿþþÿþÿÿþýþýþþüüý÷ú\, œÌím^L ÷øù‹›¯ÿþÿüýüjB#  þÿÿ üýþºÉÙëðõüýÿ÷úüþÿÿòõøøúüñöùûýýüýþüþÿûýþÿÿüýþüýþ௓$Qm¼¼¼½½½­­­½½½ÌÌÌ444œœœÇ¶³#pha^t’ ?ª•e`z¢ †^êåój8:VkŒ§•tI˜t=¥Œ[¦^ªªª½½½••• ½½½   ‹‹‹      ]]]ìèç÷õõûÿúÿÿÿÿÿÿýüýûùùúðÔðó±ýí úüüÿÿÿþÿÿþþÿýþýýýþúúûùùûûüýï&Ad6ØÉÄùúûúûüýýÿõ÷ùI>0ÿÙÌ þþÿ ùúüO>-ÌÙ㢹ËF5)èïôùüþ þÿÿñõ÷Óåï7þþÿÿÿýýÿþþþþþÿøúü444b‚³ž~Xm½“pC¢Œns¤ïèöø  †^šv9ƒ´ê}L€EðEI\v¡¤Š_(((’’’ñîî ÷ôóÿÿÿÿÿÿýù÷öø÷÷÷õõëáæþûûýúúüþþÿÿÿÿÿÿýýþüýýýýþùúûøúûúúüÚÅÁ?KOñóöèëïõ÷úþÿÿóõ÷÷ò÷þÿÿüýþÿþýþÿÿ"."ëñõô÷ûó÷ûýýþîòö ôøûüýÿùüþþþÿýþþó÷úíóöööö CCC000ˆˆˆ^{³ü÷ç j”äë”l1Tfˆ¬šx\ a·ŸI}La¹ŸG¤Š_]x¤£ˆ\EEE»»»HHH°°°CCC½½½˜˜˜hhh…vj÷ôôüûüÿüûûýüûûùøôññõòðg3ãúþùúûùúÿþýýþüþüýýþþýýþùùûúúûùûûõ÷ù·¢šïû õùúûçêëÿÿÿ÷úûþÿýþþùúüùûý!ÏÛçùîó÷ óöøøùû ýþÿùüþÿüþþòöùåíó4ïgc™———iiiSSS­­­ €€€€€€ ³³³MMM¢…M‘k7–lt“·ŒmI!-,ŸIRc‘®oŸGYq¡£‡P£ˆ\ïgc™þþþ¸¸¸ààà CCC½½½qqqgggCCC½½½qcy‹šýýýþýýýüüýüüüûúôñðñíìã õøùúþÿùúûúûüøøû÷øùH. Â×ê ÷øùúúúêìî$ôøúýþÿüýÿþþÿþþþøûü÷ùûùûü8#<+ƒ¬Éïóö„dHy–°òýýÿûüýøýýþþúüýøúüñöùíííiiirrrŽŽŽBBBCCC½½½ccc³³³Â³³³[u­¥‹SëÞÏI`¶ L®o^w¡¢‰_§_ÂÂÂ>>>bbb½½½LLLbbb½½½Vk˜ôûúùúúÿþþþýýýýüþþþÿöôóþè=b̾¼óõ÷ûüýûüýÿÿþÿÿüüüùúüö÷øùùû=IFÝÑÏ4!ºÏàþþþ3"'1EøÚÈõ÷ûÿÿþýþþþþÿùûüõøûùúý&%„Y;ôìëoM4¼Óùüýûýúûýúüýøûüòöù ŽŽŽkkk½½½>>>¥‹SSdŒ­œt¡z Jb„ËûõÞ£‡Wc…Ã{=^x¢¢ˆ^_z¥¡†[¢‰_~µ‚Kÿ½½½>>>žžžžžžª•h™Íûݺ›üúúú÷øÿÿÿýüüüé[sz ¿²²óôöúûüúúüøùûÿÿÿþþþüýýüüýûûû&'#DC< #"!õö÷ÕÞ¦þþþËÕÞþ öùúüþøûý ÿÿÿÿúûüùûü÷úüîôøÿ   ~W<ñöø•¶Ïòöùùûýöùúûüýs‡’\tž¤Œb­œtjƒ –}`i†ª—zVøð⦌WöìÝ= '¡†[‚Kÿ{¯õÿþü!TúÛ¨ÿÿÿþþJ@/Hôõöôõøüüþüüþùúû÷ùÿÿÿÿûüüüüýüüüö÷ùíîòüüþÿîïñéîñ,5ééêÿýúüýþúüýõúÿÿÿÿüüýúûýúüüãëð Úãê- ÷ûýüÿýþúüýÿÿÿþÿûüý" Pzü¤Œb–}`—zV¦ŒS,3\x¯¤ˆQiÌ—p4ê׿7Xp ¨`üiŽÀ&> ÿÿÿ(_%+ÿÿÿýúø÷òïÿðж ûûüùún|}¡’‘øùúÿüýýÿÿÿëíï çûüÿíïòùùú >ìË  &zÌøÿýþÿöùûþÿÿþþþÿâêîÿûûäìò ô÷ûúÿþÿÿ÷úû>*=6+r’®øþüãïùüf‚¦š~ZŒc-¤ˆQ%ý­›xf„ªš|V¨`ü þûúþÿüúþýûʵ¶-=9üúøüúøÇ¿É"7½ßàôö[:üûüö÷ø ÿüýüüþùôõöóôöàâçïðô îïð$ñà öúýûýþs*ŒÕïþþÿõÿúÿõ÷øK7(ÁÐÛåíò þÿ÷úýýþÿ÷úûêñõñõùkT@—§ºèø:7->[pøš~Zœ×d)ñ  ø]w!6û÷óýúõüøô úöôüùø÷óí%;MºéóêãUce±£¡ÿÿþýùùúúúú[ptì´˜ÁæðÿõôôWE8ÙÊÒøüÿýþÿIµêõ ûÿÿöùûìòö2(!ÌÓÜööùû öûüýô÷úÆØã)&!èïóUJ<ðõ÷ ò¼™ùûýIjn’¿’nAÍ­—d|Zhˆ´˜xLßÒÉG'‘l=[w¶¥‰Jc†Ïz1xªóˆV þûøùñê  ýú÷üøòøñéøôùôð ¬ÎÜENQýüýŸ´ÿÿÿýýýýþþòðò÷úü[. ýþÿòöøâð÷ðøü=C0,&/ûüýŒŽšþÿþýýþüýþR>-÷ùûêïó þþÿëñõúýþ  ûýýúüþúüü=2+Ûåíèîò#æãå," üÔ«ì,UP_„°¡|õìä—|ZaƒÃŸ}=˜xL\x¼¤ˆDŒu^ÿüéôçÐ1ˆV ¥Žkb€¯ÿþüøýùöøðçìß÷( ÿÿÿÿþþ ¸×ç2î!-2ÓÈÄÿÿÿYG3  ÿÿùúûØññõøüëñööùûþÿþðôøáðöG^[ûüþÿÿþþÿVWOáÒÏþÿìñö÷ùûI4$ûüýÌÚãD7)¹ÇÖþþþýþþ Ûäëþÿÿ)'ÿöúüüþÿþÿÿæ´•Lk°¡|‚]u˜¿óáÁ=[v³¥ŠM]x§¤ˆY}³úƒM¦a©“aqßc!ž€Q^z¦ýùõþýù  üùøþþÿýüþýýÿþÿ Ëìübã¯PË /! üüüýãæ³ìñöúüéïôîñóö úûýûûü"ÆÞí, G úüý4%ùþïôöøöý öøù—­Á6 ìëòþ÷ûúüýæïõ0;‹hA#?£ˆYƒM¢†ZYp—ÿþüø ýûúýûúÿþþÿÿþþýûùýúùÿÿþÿÿÿÿÿöüýñùüòõ÷ýþÿúûýþþþ ((ÙÓÖ[SE óöø‘ªÂòóöøúûüýýóôö9Öçð ýþþüýþþ ó÷ùàãéüúù&ì zaK¥¹Ìéïôíóø ýþþÑßè4`~² ‚Nhטp)e„° ’i1x®ˆRøÖ½¬yæS‡R“gXn¨’p]y£‡>c!¬ÜþZvtÿÿÿïæàåíëÖ¾þüüýüûüûúýýþûýûùýûúüùøþþýüúùçõúúþ¯óH"úóõøþþùúüýüýöøú00)üýþûýÿ&íðóúüý üýþøøùôýô÷úüûýþÿùþÿúüþ úÿ¹Õè,$öøúòö÷!æëñàêð úüýÿÿÿh ‚N˜p)›|P;6—{Z¨’p£‡>œÅäþýþ  ìÐæøöþ þýûûúöóþýýÿÿþÿÿþýûúüúùüúùúöôÚîö øùïòõýþÿûüýö÷øìðôþú÷øûýö÷ùèëïñóö ÿÿþðòóå ô÷ùþÿýþþûüýûýþüüÿöùûíñöúüÿþÿÿ÷ùú÷ùûîòônI0 5Y`~ºSfNYq¤§\€°ç€P\w´¤‰Lk•ò•kþþÿúööÿþÿûø÷ 7ió׬ùóÿþÿþþþýþüúÿÿýúùú÷ôùöónkT‡©ìíðóõ÷ùûûüóõ÷éìðúøøé ýýþòõ÷Ï×á‚aDŽ´Ôüýýòôÿýüý0¬ÆÖ) ôøûþÿþÿÿýþÿûüüûüþÕäìõùäêð÷ùü øúûèîótM1 ú×°øûýú.SgŒì™t ‚F³ä§\€PVmª“cP]„°£|¤‰L•kh‘ߘo!tŒ¡'ûøø ûúøîæáþ%ú÷õþÿÿÿÿÿÿúÿþýûúÿÿÿÿÿýùõòúöóøû b_K”¬Âúûý úûüïòóó "ôñééëïôÿøùúVPDöøûb@$äéï«Éáø Õâûòöøõøúõøûÿùûý÷úýûýýùûüìñõÿîòöôøûïó÷ úûü%÷úýöùûþÿòöùCCC½½½CCCùùù½½½™t]w££‰]mšã“fª“cWnž°£|eŠá›v!EEE»»»HHH°°°CCC½½½ÊÊÊ···CCC½½½Œt_}™´úùùôóýûúøöóóìè úüúøþþþÿýþþüüÿÿþþýüÿÿþþþþùôñùõñªú> ä²![C.œ´ËûüýZYP„˜¯4û ()ôö÷áäèüÿûüüŒ6/ùúüüýýÿÿûùö¡®Á ù÷ùüôøúüøúûìñôö÷ù Ûêòþþÿñô÷ÿÿÿøúú ýþÿ üþþÿô÷ù^^^¢¢¢ ³³³NNN^|¼¢„DuŒ¢‹t^Ys§§]z®ó†R “ft›ËŒe5©’bk—ó•i þþþ¸¸¸ààà yyyºººSSS˜˜˜¨W~ôïíñëç øôð $Aþûùüù÷ÿÿÿþþú÷ôÿÿþÿÿÿÿþü÷òîJWT,ßFO ùú ]ìíï Œya‘‰÷Ýäìðô?/,ÎÖÝ úüýðóöÂÐÝñõ÷þþþþÿÿöùúùúûíðô mZFòõöøùú³ºÈ íóøýþï  ûüýëñõEooo‘‘‘¢¢¢óóó³³³DDD)))¢„DTh“ .Ÿ^§YSf—-Rm†R Œe5•i šsoooÕÕÕ¼¼¼ºººFFFÕÕÕ@@@x_[s• ñá&Oÿýÿÿÿþýü3Rûÿ ðÕ®ÿÿÿú÷ôÿÿÿýýþþü?IDýÕ¸ 62üüþöøùÙÛàþþþþúúûAKLǽ» õøù$îîðûþþûûüýB3&‘£¸üþþýýþþþÿþÿÿjYEÙãë&  þþÿ`NÌÎÔÔÛåõøûôþýþ‘‘‘½½½ ¼¼¼a{o®ŸÖZuª$M“g ­šiüVj¥ª–[c†Ûz%eŸ›a½½½½½½½½½½½½5I þýûþý ùñÝÊITJçàÛÈÁÍÿÿÿÿþýãÚ×%ñòôø÷ùùòôöþÿþþþö÷øôöøþéîòùûýðòõø÷øüýþùúüüýþþþÿq_J‚—¯ýýþýþþyeNþþÿÆÔß.%  @<5¡¬» ýþþo‚\q‹¤uKþK~(É­˜¦‹hb~Øž‚(ª–[z%Œ¾ñþ2q—Æ  þüûÿþþþýÿýûþûúBA+ '.üúûÑÜóÞ½ý_K2ñòòíìíÞÜìúûýÿÿÿö÷øæèìôõøþþþòóôÞßá*èìò ìðò úûþõ úþýþöøùãèì#ÿÿÿÿYJ7$þþþþþÿ½ÌÚûüýøùûøùûüýþ \<'" þѪÝèïGg¤u7ShìÇç9ž‚(nø’c€«Ø€U(B/ýúøþüüû÷ôýû÷öÊûû,üûüýýöûùø ýùìn[>453¹¶½ôõøýýýõõöõöøåèëúúûõööàâæriYž©ëîï+#îõ üüýòõ÷ôõ÷ÑÚâ2(ÿ ö÷øðóöþþÿùûüüýþúüýùûþÿÿûûüúûüýýÿÖóüÿÿ¦Òó0æÙÚ'F_’c€U(üú÷þüüû÷ôûøóøøöíçæòííÿþÿïêêlI ÿÿTWPžœ¥ýýýðððúö÷÷øøùùùbG+óàÖéíñrqf÷øùÙÛÞ ­¶Åÿÿÿûüýûüü)& ßæë÷øûúûýóöøÿÿþÿÿùûýþþÿúûüýþÿ ãìñõù ÿÿíó÷§Ô÷Y, Z. .`j’ò–n^yÈ¢‡8i‘Þ—o"÷ðê   ÿÿûøóíéåûúü ÿþüåÜ×ESÿoqhúúùôôõõõöÒÒÔ  ª¯¼Y># þþÿ þêÜù  þþöPð ýþÿtÒñbL9êïñùûü÷ùû þÿñôøøúûøúûóöøðó÷ýýÿúüþúúüûüýóõøæèî ùûüäíñ(TY, –n¢‡8ÿþÿõíä  ,ö &9º¹ÒðVC,7Eÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$$#ÔÔÖ=!/  ûüýøúûñæÕõãáÏÉÒ6õûþþøýýNü¯¿Ì4+"ñô÷ÿøúüýýþüýýòõùÅÑÛðô÷ôõøú ùÿÿÿöøùùúú6, žÓ×o„ÿ —o"ÿ ÷ìöþûúüðZ^H d'-”‡›aJÿÿÿÿÿÿýþþýýýýþþ õ÷ú÷ùûûýþÿÿÿ÷øú üÿî÷üÿùùýýëöúöþíñõüüÿýþþô÷ùáçíöúÿöøúïòõÿÿüýýîñôN?0ƒt`éîñÿ ÿ þüùùïíÿûù;;%ùùùþþþù÷÷MQ;þéþþþÿÿÿÿÿÿÿÿüüüýýþýüýÿÂÉÑûýÿõøûýþÿ ýÿûûü÷øûÊàîÝîõ öøüý*.>Þåëöùúüýýêîñ?3*ýþþÄÒßúüþþÿÿíñôÿÿþÿÿ Ûɱ7Oÿ ü|°÷„P ÿ üûùîþýùùöþüø÷øðëë÷ôõüüûòïïúûûÿÿþÿÿþþþýýýüýþýýýûüý âëð   üÿÿûûüîñóüôô26.ØÏÕøüý÷úûýþô÷úÿÿîòö  ÿÿÿÿÿéîò üýý-"ÐÛæÿhT? ûüýýþÿøùû ÿ ü„P ÿ ü°¦vÅÓÖ¤¦´ùøùäÜ×+;*ûúûúúüüÿÿÿþÿÿÿÿÿýýþÿÿþþýýþüýýûûüüüýòõøãèî õ÷úûüýüýýîñôäìñöúü ùúû õ÷ùüýýÞåëùúüòõøúûü*"õ÷ùüýþüýý üýýáèðúüüG9, óõøýþÿÿÿùûüùûüþ a}Οƒ2l™ö”g þ opcŒŠ—üûú7'úûûúûüûûÿÿÿÿÿþÿÿÿÿÿÿÿÿÿþÿÿýüýüüüüûüüüýùøùZbb¬££øúüþþÿüýýîñôVceÿåÔØèø×ÙÚøúüýÿÿúüýûÙáç/&ô÷ù-    ðôö¥¾Ôðóöùûý ôé üýÿ üi’í—nŸƒ2”g ÿ ü“ž£/33îíïø÷ú__Tùùùæãâ,/-Ê»¸ûûüúúûùúûýþþþþÿüüýþþÿÿþþþûûüüüûûûüøøùóóõøùúPZZ¦ž ÿûüý#fO:üøäýýþý5# 03ôöù´ÅÕþþÿ08* -óöø§ÅÜ:+! øúû ZA-èíñÙéòòöùûìå1# ÿÿÿëɦ7Zþ ñ—nd‡Åœy;þ ñø÷øéèé òñðåâä,0/ùúûüüþüýþúùúÿÿüýþÿÿÿÿþÿÿÿüýýùùú÷ö÷úúú.$ mmcéñúî×Ç ÿÿýþþýýþ  WE3óô÷òîíðôøúüþòðî;9,ÿÿ ûýýëØé ÷ùÿøúüóøûÿÿÿÿûýþþ ñjjj{{{óóóddd©©©ãããs¦óZ œy;þ ñEEE»»»```   mmm“““EEE»»»UUU¡¡¡ YqŸ 2 çÛöõ÷þþþòððàÜÜ÷÷øúùúûüüø÷øýýþûüûúþÿÿÿÿÿÿûûúö÷÷ø÷øÙÒÎ H@ÿïñôøùú×ÓÒ1 ÿÿýþþÿÿÿ ó èçéçîóøûýõøú-#þÿÿþþÿýýþýýþûüýþþÿÿþÿ K4!©ÂØýøêñöþöùüüýþïô÷$÷ ––– ©©©^^^¢¢¢iii———VVVªªªZ [v²¥ŠN÷ þþþ“““»»»êêê €€€€€€üøòüøòÑê)$ ËòððþþÿÚô2øúéçéúúûöö÷ýýþûüûûûûÿÿþÿÿüüüþþþýüüö÷÷ùùùèëîûüþ ôõõíïñ "ÿÿÿýþþæíóó÷û øëðô ýþÿþÿÿýþÿüýþûýÿÿÿÿÿÿÿÿÿ A-ºÅÒïôù þÿÿîòö$ôþÔÔÔ,,,¼¼¼DDD¢¢¢———AAAYrŸ§Ža¥ŠNôþCCCddd¡¡¡¸¸¸YYYCCC½½½«—oZt¨ýúöÖõ"ÿýúÿþæúóéáÞøøùö÷ýüþûûûûúûþþþýýüýýýüüý÷÷öûúû ÙÜâúîîðJ/ÿÿÿÿýýþûüýûýþMC7¬¾áïüýþùûü7 ýýþøúüÿÿþþÿÿÿüýþûüýùúüòöøìñöïôø÷úüìñôHõý,,,DDDiii§Ža`{£ …]õý½½½   YYY½½½¦ŒX³Ì×  ûûûñíìGNK©˜—üüþüýûüþþþýýüüüüùøøúûûûúúùõòôõøþþþI.ûüýÿÿÿÿÿÿÿÿÿýþÿÿÿþüüþûýýûüýþþÿPE6íðóÄÓàüýþÿõøûÿÿÿÿýþþýýþüýþúüýøùûòõù)$ {žº„aEèîóõý …]õý¤»Å  ÿÿÿÇÌÒ÷÷öþþþÿÿÿþÿþþüüüúúúûûûúùù ÷èûüýýþÿÿúüüÿüýýüüýûüýýÿÿþÿÿþÿD<2¾ÀÇóöùÿýþÿûýÿýþþýþþüýýúûý÷øúóöøðÿëñöûýþxY@ìò÷åíó'öüöü{ˆ1<@  þþýþýýAW]¾¨£ ÿÿûÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùùùôô÷ üýþúûýúûüþýþþûüýûüýûüüþþÿþÿÿßÝßùûýðôøþÿýþþ ùûýýþýþÿüýýøúûöøûïó÷ú÷øýÿ ýþÿÝæî'õüiñ—pŒ¹ätGõü ÿþÿùøùþþÿÿÿþýüþýýúøùÓÈÌyR. éîòœÂäÿÿÿÿÿÿÿÿÿÿÿÿ)5øöôÒ®œûüýýýýþþÿÿÿûüýûüüûüýþÿÿÿÿÿÿDA;ÅÇÌüýþûýþ û ûüýöùú÷øûóöøïùúþÿâêñóöø`v„÷üýûöôíër¢Ž^÷ü ÷÷÷ÿýýý ýüýø÷öø÷öT#ÿ ÷ö÷ÿÿÿÿÿÿÿÿ +?QöÄ¢÷øûüýþþÿÿüüýûüýûüüûûýÿÿÿýþÿãèíöøúíñõ øúû÷ùûíñôZG7ýýÿ¡³Ãn€‹öûSf­šqšueƒæ›}€Z1öûù÷øõòóûúûýüýþýÿúúùùöööõóûþòõøþþýþþóöù>" Ó#k$ï»ÅÆËþþýVeeÀÈÕ öõôøùüöøúüýüþÿÿÿÿÿþþÿûûüúüýûûüþÿïòõóîùíèçûüþ÷úûøúûþþþïòöF8+ðñò `M9!#ØÆ°$:P÷ü­šqc†Òz.›}d„µœ|K`~¾ ‚BnŠ«’vU÷üôòñ ùøùýüýÿýüüüûúúùøñîíäðýþÿ ûúûüëïóÜäë÷ìäåçANM þþÿòîî þýü÷õô÷õôøúû÷ùúÿÿýþÿÿÿÿÿÿÿûüýúûüøùûïñôñô÷íõýíðòÿÿùûÿùûýýþþÿÿòõ÷8,"  üýýôòíøðíøûz.`Å ;f„«š|Un›âœ|Knœé’d ‚B’vUVl˜ª”høû„ujŠ«ýýýýüýüûüüûúúùùòïíÛýëêïô öøúóö÷ç%aôãÛþþÿþÿÿÞìùòîîüüýøüûúúø÷õòðúûüöøûúÿÿýþÿýþýýÿÿÿÿÿÿÿÿùúûøùúøùûîòõpeU¿¼À ÎÚéàçëûüýàæèùûüÿÿþþÿâÌ·4Iøúøïà;*GaôåÉ e~’dc…¾{BfŒÆšt:w­ ‰Söª”høúïêé ø÷öøöõüûûüûú÷ôôôòïôêÚçëñýÿþC[d,ûÿþÐÒêþþþýüýïëðòîíûúûÿüûùûúúòîë þÿûüýôöøþþÿþþÿýÿüýþüýÿýþþþÿþÿÿÿþþÿøùú÷ùûùúûîòõÂÀÄB5)/%øùûêïòÒÏÒ+ —ºÕ ûüþöøûÿÿÿþÿÿ ÚÚÝ4øû¨[Ú½ 5T\xµ¤ˆK št:‰Söc‡Ùy'øû2??·¥£öôóûúú*%. Gýýýýüü:: óññîòøæßÝèâáöóòúùùýûúSRHöõ1Ö¹©ýöøýþþüýþþÿþþÿÿÿþÿÿ÷ùúøùûùúû%ùûý ÀÊÓ+ tO2”¶Ïìòõûüýûüýùúüñô÷ÍÞí=ùú_}áƒ=–xT­œ~›w7Zs¡¦_Ón`-’ y'ùúôú 7Xkúùøëæä0 ÙÙÜ  þýýýþýýþí84*¾ÀÊÿÿýüúüèáÝ‘„näåæåõõöôõ+:óØÈÿÿõ÷ùýþÿüþÿÿÿÿüýþøùúøúûõ÷ù ÿÿöùúÿÿ 'îìí÷úýùúüô÷úêîôûüýøùûóöøpyùûoã‘c¡ƒ=e‰ß›w!p›Øe(häòµ–~gƒ±à}O  Ón`ÿÁíõ-r£íŽ]ùû”·Ò%+ Ýççóðíì½ÙË),,  ÿþþþÿ çëæ>;2"""! èéÁîô-5 8BР‡ô÷ùÿÿÿÿÿÿûüýùúûøúû*' úóðöùú÷þÿÿúûüúûýìðõæéðúýþ ÷úûéêìúüþ ûüý÷ùûôöøúúÿ‘c›w!|²ù„Ne(úõë,9N Ón`sÿÁíõm¥«gŽß™r!Ž]úúÿûùúòÿýþöòðöñâêåâ0& ûúúÿÿÿÿÿþþýýþþþÿÞàçöêß<9úûüüüýš¨¸;KQýýü"OhÛ¯–þýþùüÿÿÿPF6 ÷ùúü¾¾ÅúþÿúüýûüýùûüêïóÙäìíó÷ÿÿöùú\L;¦»Ï÷ùûûýýýýþõ÷ø^H5úúÿÒÒÒ¦¦¦ˆˆˆCCC½½½CCC½½½v¨ñŠXöíæ!t£æŒ]iŠ·—vI rE‰ºïwFt@@ Òn`Áíõm¥«™r!úúÿEEE»»»CCC½½½¬¬¬TTTHHH000ˆˆˆ¬¬¬TTTóîìýûü ðêçôäÝ÷0ÿþÿúúúÿþÿÿýÿþþþþþþþþýýýùôíõõøéêíö÷ù ýýý öôõòïïýüûúùùøùûcP:òô÷©ºÍÿUI9 óô÷Þãèîòö ìñ  ûüüýùûüêïó;1#àìøáæë øùüøúüdM7 ~›µ‚eKùûüáçíùøÿ...{{{ ^^^¢¢¢iii———÷îåqŸöaŽa!Œ]üùõwF~¨×‚X)½h]Öóø­ÇÖS9*ùøÿþþþiii———TTTVVV¸¸¸MMMßßß!!!ñññTTTVVVªªªîæäòê úùöîæàPD1ëëìöõöÿýýÿþþþþþþþÿûúúùùúþþþþýþú áâæ ýýýù÷ùòîîÿþÿ ÿþþñïí7EE"ð   ÷:/!)($Ÿ­¼õøûöùûÿïóùúüúüýðó÷øúüõøûüýþùúû^H4æìñL<Ÿ¬ºøúüÜèï- õöûn[FàíôéíñþûúþGGG¹¹¹ccc³³³¢¢¢———“j*Yo­§‘S›}Tb&‚X)~¨×‚X)½h]C˜£CÕô+ þ˜¬·v¢ÚŠ^&ûúþããã———CCC³³³hhh˜˜˜ÀÀÀOOOCCCˆpWl€•;0 ãâåõõõþþÿþÿþþþþþþþþþùøøöõõùøùþÿÿøøøåôîñòóûûüîêì ûúüûúúíèææãËC5 ÷úéþóøúú çëñ÷ùüîñõ äèî./,ÏÏÓ ùúüÿÿÿøúüíðóüýÿöùûýþÿúûü  þþÿ  Ùàçüúþ¹¹¹½½½§‘Sfˆ»šxE‚X)}®è@ºuC˜£hTI­ÇÖo“½‘mCjа–vPŠ^&üúþ½½½½½½ggg˜˜˜OOOggg”€k‡Ž•ãàâþÿþýýýÿÿþþþþþþöööõõöõôôñðñóññîôîPJ; P  ˆ–®ÿÿþùöõ~s]ŽÇàæîô÷û úûüÖÝä „V7‡´ÔùúûäèìTTK),)ìîðÉÉÏëèèeTCé×ÓúÜåíòõø%0!  ýο¨)AXûúý\w¹¤‰GšxE]uœ£‹d»g[GC˜£Ã·¶+UH¦¾ÎZB2ÃÎì–vPz§ß†Y!ûúý¿ÖÞMacÞÙ×ÜÎËõõõþÿÿÿÿþÿø÷÷ø÷÷÷ööLWXúéÞÿþÿzlT€–†…ñõøöùú$,; 튷Ô:2'ÀÉÕÿÿÿig\ öîúäÜ  ïôø¡ÚãÓá«)"ýþÿýýþüýþûýþÿÿûüýùúûýúþ¤‰G£‹d}´ƒLþ½h]ÏòøƒRhUHñîík>†Y!ýúþ¨W~“¢ªMC5 òôðó×ûûöôõùøùÿÿÿÿþ÷ööôóóôóôûúûþþÿñæ× ÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿþÿþÿþþhwyÿÿøøøùùúùùùÃÎÑ í%(%+($ö÷ùýþÿÿËËÍ;) øúýûýþ2ÍëûøùûöøúýþÿÿÿþÿûýýøùûöøúüúülÔp=c…¾{B`€Æ €:ƒLþvžÊŠb6‚·÷öðë  ñöv§­…¥½{[CiTEüúü9.# ôõçßäíöõöÿÿÿþþÿÿÿûûúø÷÷÷÷÷ôóóåáßýòêÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿþÿþþþÿÿÿÿ))(Õþþúûøøùúö÷øüýþúúûôöø üýÿò÷úÿûýþ üèùô÷ù ÷úýþÿÿÿÿÿÿÿüüþ÷ùúöøúýúü”p={B €:⨕çG‰WöÓ¶¢·ËŠvìãï’fP­¤¹Ä\G<}‹”ƒulýúü‹ŽŽJLI ûüýÿÝáìöö÷ûúûþþþÿþþÿ÷öö÷÷÷ø÷÷÷÷öéÝ×ÿÿÿþÿÿÿÿÿÿÿþÿÿÿÿþþþþÿÿÿÿÿÿÿÿÿîß×õõùóô÷üøùùíîñðõùëò÷üýþýÿÿô÷úëñõóöøòô÷ÿÿýþÿýþÿÿþÿþÿÿüýý÷øúõøúýúüsž×b)Zs¬¦Tv¤âq#ËO©h -JÁŸôh’f{[C'/4ƒulTh›¬˜eýúüööøèèê óóôö÷÷DNJ»²¶óòòøùøÿÿþþþþþþýýýùø÷ùøøúùùXca̽¶ÿþÿÿÿÿþÿÿÿþþÿÿþÿÿþþÿÿÿþþÿÿÿþüýýð ïñìèëî÷øúóþýý÷øùßáåøöùãíóõùü ûýþòöøçïôóõÿñôøô÷ùúöùúþþþøùûéìðýúüb)^z§2”j'¦Tzªé†Vöîå\S4B.ŸºÊaF6×ij)æëïþúûvŸÏŠa1…TŠ\”»ÞlE"”tJ¯ÐåQ0“qE²å0KZs¡¦_¾×ã†X ^z­¢†Sþúûh\UŠ•žó íçïÿ÷ßÐøøùüüýûþÿÿýýþþþþþþþþþþþþÿýýýûûüöøúóô÷ ôþþþõõ÷ËÏ×õøù2/,úúû9DDµ¬¬ô÷ùæ"!"gy>èèéöà»ÄÌM>1(úÿûúóèÝ.ìãÝ"ƒdEQ05¾3¦_§ºÂ)¢†SwšÀ‰f@ÿûúôñí'+, üýÿùúøúûüáÌÁ/:ÿÿôôöúûûøøúýõñù øøùýýýýýþýýýüüÿÿÿþþþþþþþÿÿÿþþùùúçéí õöùîïðN:(ÄÚë ö÷øô÷ùì,þþÑÔí9/&  üýýôØ»(Eþûúw¨î‰X‚Qq›Õe+“tMXk‚¨•~pžëbEo‘·‘oI þþýs¦òZP_а¡vþüûþûú)&ýñîõöøüýÿüýýüüüøøùûúûìíð÷øúúüÿÿþééìøÿ ùûøøùüüýüüýüüýþþþþþþþÿÿýüüùùú Ô×Úüüýö÷÷ÕÙÜ%$!øùùýþÿüýþýýþýþþÿAHIÌÖàøøùúûüöö÷ýüýûóýô÷ùÿÿûù‰X»âùE²ñýùõ™{Q¨•~b‘oIã)×Á­YD8Xp›¨eZ]t”£Œl°¡v‹jEÿûù%$ íîìëíïýûÿúùùíïñïïò ûüÿãåé ûüþøøùåæèùûýùúúøùüýýýýþüþþþþþþüüüúûûöõö÷øù)-'  $$!‘˜ûüý÷øúøúýýþýýþüüýþþþýýýö÷ùóóõééëóôöÜÛÞóùûýúûüïñõ#'ÿûúUUU«««ÝÝÝ###CCC½½½ØÌËE<øñí’l6oœâ‘dc}œƒdìEŒš¡þ'`ƒ_ "iŽÆ—r:£ŒlÓçïéææD3+ÿûúEEE»»»CCC½½½¿¿¿AAAÝÝÝCCC¢¢¢CCC¢¢¢ ííïéëîóõ÷øøû þÿþïðñîíïâãæ..ð .XO™œ§ñòôþþÿXVL¿ÑâìÐÊ ùüüÿúúúúûûûúû0 ÿþÿÌÌÎùùûûûý÷÷øøüüþûýýýüüýðñóòòõxn`‰•¥üûûüèÚß ëñõ óö÷#š€JJJƒƒƒ†††²²²NNNCCC½½½n‰§’wY‰]"޽érC‘d ÷á÷ 2Jƒ¶òþIˆ¯Òð:„?ÿž~Ch‰º˜wFìêìD3+š€þþþ„„„AAAƒƒƒ   ¶¶¶øøøýýý æåèððñööøüüþûûýþÿþüüüññòíîï=<6 tqeøùùøøù* ÓÈùùúúüýýüýýýþýùùúûúûúúúúûøøúúòóõøùúõö÷ýýþýýþüýýüüüõõ÷îïòôõ÷ üì7.+"úûü”œÉñþþþjw¶¶¶```zzzNNN½½½{ªä…V„¬ÐômR<rCQ}JàÐÇ0G ¬¹ÀTG@j‘Ζo2 çäã/%ÃÉË=75oooããã………zzzùùùŽŽŽÿÿÿëëëÃÃÃRRRãããëëëìäØm^KÞß¶½Êùúûö÷÷ÿþÿûüüñòó ýþÿõö÷üüüøùú úùúüüüüýýýøùùûúúØ×ÖôôöüüýþþþïïððÿÿDCAÑÑÓþþÿüüýÿÿÿýüýüüüëíîÛÜßøïUMDwn_Ýáä-îÙ÷ûýLp   &&&½½½õëã’wYƒµî}KjƒŸ–}aòÊ»ì+(9÷íÞ "’¡n_Š´ÛvL%~LËÚßTG@_y¡‡i9 *ZKBÓØÕ-(+½½½888&&&¼¼¼RRR½½½ÓÍÅ%$ûûûHWV® ¡óôõÿÿþilbÓÑÔáÞàÿõõ÷üýþþÿþÿÿÿøøùùùú ÿ(,+ÉËÖüüýüýüùøùùúúääèõöøêêìþýùùúóôöüüþúûüþþþýüýúûûççé û&#üýý   ÿÿÿ'# öß ÿé³Mpk9b© ü”y[ýø–}am‡£“y]€¦Î€Z2»ÃÎ^(9ôB•ª¸kVH}ž» % ðçâáèè5&!¡‡_æâÚpšØf(Üù$ü=75ëìðøùýñòô 24."åÞÝÞÜßööøïðò ùûþþþÿÿÿõööìíðððò111©ª´üüü8@> ™Ê=Ùq^c]ñññÞâæ&¿±°ûùùûþýþûûüùúùaS@ª°ºùúûûüþüýþ úûüûüýõ÷øÉü9þžW“y]€Z2}¬ä0"ÿN^ek‹\þþƒ]9ycÃÈÇøúý´ÂÈL>8öö÷]w¡£‰_—aXLfŒÜ>Ñ\WSÜÞãúûûûÛÜß"ûý" ïïñôõ÷îïðýýþ üúøùùùñòóíîïjnhFE<³³½" ÿþþg7Åø*E÷÷øþþÿúôò/2\mn¥””ùùù÷÷÷aTDñòöÿôõø óõ÷üüýþÿþÿóõöÿÿ ùúüܾ¢B^}«ãƒUïâÙ©ØW(ôëãST9Ï êÀ-=&ÍÑØ8$(/£‰_Œ²/7+2:>št$“˜ÁPSU ŸŸëìïùúú5DEöçá ûûû?<5ÄÇÏüýÿûüý ÿÿÿöö÷òòòúûüüýýø÷ù[TEôôõ–Ÿ­õõöôóõþúûúúûûüüþýýöööõõö`rrúùúùùùïιìéåóúõöøðòõ ÿÿÿö÷øÝáæ9 ôëâr˜åŽh8˜¾ÙÉÃãW( @c´ç&<c9n˜Õ’h+A3…X#öòÜmF$˜wJõ÷ðîïémhcœ¤¦5>@ ¯ ž773ðòôüýýûûýõõ÷ïïñøùúø÷ùþþþ$*"-5 ìýþòðïðìüø bZN'¾­¤Ýãæöüûûîìíÿí ï÷÷÷ÚØÜ.8;þþþýøÕ¿)$  ïñó@%™·Ñôöø  ûûüìïð&ÑÝçúûüÞæíV?Žh8öòôŸDr”¿‹¶àuJ ˆ])¦ÃÖK1õæÔ$öíã+Œ¾ð éÇ>#OÈÐÑ80/iB"q¢ö^ ÊÈÄmF<iœ&:Hâàð "oC  ‘Äûo<CCC½½½ýýÿöö÷ùùúôõ÷õõ÷èêí ðñòìíï1??èÞÚ+-+ÿžÄýþþ ûùøùùýüþìèêøùúûüüûûûɹ±898ÌѹãëëìûúúäââóòòMYXþþþþÿÿÿÿÿÿÞ¾«/)$ üýþðû ÷øúõ÷øú ùúÿÿÿøùúèêíïúöøúew‚CCC½½½rP3ŽlAuJ Kn„•Áçk?œ{H ÁÚ`?&äÓÆ%80/†©Ê^6 ¾`B_|¸¡„dk„¡ oC_|¯ò„Q×ÙÔâÐçBêäÞ÷øùýýþûûúêêìæçê 7:9¶¹¿øøùôóôþþÿüüüôññ&11ÜËÇííð÷÷ùúúûçèêûÓ121 qo`óóôôóôóô&¨¨³ 383ôïíø÷÷$&wpVMBóõ÷ÿÿúûûøùû[>% ’³ÏïñóþÿÿmL0¸Ò4;Z,,C½½½j;f¢š^Š«ÈvU8޽ërCéÇ­9Sx¦ãˆZ˜““omγ?|`?&oJÈÐÑ80/‘¶ÖÞÝé&%öö÷¡„H•|_šÄèðæá-[¿E&1½½½qhcš˜•2F@ààæéêîö÷ùúúüúúúììîBUVÝÑÎþÿÿþþÿýýýûûüþûèäåòðñ óññ1.'äåéõõøýýýßàá<ÿÿÿÿÿÿÿÿÿÿ MLBìöþæáß%))úùùíèç ôöøóô÷üûý÷øúÄÐâL4!kL0¶ÑäíG@8þþÿûéÔ,½½½w¢Õ‰^+š^vU8¯ù3hˆZchm$7Iz¥Ø†[(o‰¡‘w_¨¿sXAÎìû2Œ¼ítD/õñî"!kH0ý."üàœËõd5 κ«MOÿÿææéóóõóóóJW[óòñDF?ëèèññò APQíëìÛÍÆÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþÿÿþôí ýþþõóõ þÿø÷÷ÉÃÃòíðýþÿñóö ýýþøùúìîñü   üüþúûüÿüùövZAàØÌ (49Sfn•Ê!ùÅqrq¸ÍÙH3'þþý‘nCsGíÓ»-E\N1ªÖV*p>ž¨vcXðèâ)vL%—°ipu«‘ý@o1@@þþÿõöøÿóôùùûëíîÿÿEPQ¦šœïîíí/9;éçéýýÿÿ÷ööóñòôóó·´+,+ÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýþþýþýýþéï÷ñðñÿÿþÿÿ öôôôôôôóô3ITθ®ñóöþýþôõõþùçý öù ÷ùú ûûüý÷øúúüýõö÷™{TÑÕÞ (4ÄÙâ<'’k66÷蕬Ã#*.{W6tƒŒ}ssXAöÜÃéçèV7¯¡“RE8ÿýÿ”‰lswôøûåÏÉ|`GÝÞãñòõ úúûÙÚÝ/!ÿÿÿ[heÿÿÿÿÿÿþþÿÿþþþþþðïñûûýùùûêèêûúúõõõâßÞÿÿÿÿÿÿûüüûüüûýþýüüýûúúúúûöõ÷êêëûüýüüþ÷÷øüûûýýý÷ö÷(/2ïíï,7ø÷÷èåå)"üüýôö÷¿½Åïñõÿÿôöøþþþóö÷ …¹õ{G OSVX/ãàຠս±BD=ÚêüU<+  (?H3/>H~”¥‚l[ $= Q_mïØÁvcT”‰8^|nd„’œXXWœž  ö÷ø)9>ÿÿÿÿÿÿÿÿÿÿÿÿÿþþÿ7=:Á»¾÷÷÷üûüdiaüüüšŽþÿÿûûûõõöûúüÿÿÿüüýúúúùùù÷÷øõóõþýÿýýÿ úúúýüüöõõöööøöö÷ööhB!Ôåñ,(# ›¥µéìïöøù  òóõ{G |ªá„V‡§ÄyY<¯ÁÊYG>§ÃÔýëàßåúÕµœ5z]?+‚l[L>7 ÍðúñMlsw„’œ—º×iF)íõ÷ ÿÿÿþþýþþþþþþýþýýýýýýýýýÔÇÀMG:þýþ ÷ö÷úúûöõ÷õõ÷ûûüûûûûø÷÷ððñòòóõõõ÷÷ø ùùøøööòññ÷õöööõ:—®ÂOH?ûûý2,#Úßçóô÷ üýýäæé<ŸËía5„V|ªá„Y<ª¿à¾åY=Q¥Ð³OGB2;AÄÍÏ<31mƒ–$2˜¦«Ùø6bow}Wgl:"iF)CCC½½½ÿÿþþþÿÿÿþÿüþþþþþýþýþüýýüüüÉ»µMOK  öö÷ñö÷úùúIRSËÄÃöö÷ùùúúûûùúúòñòñðñõùú0/(ÇÇÎ/   ÉØåâÒÅ øøúýþþóô÷üüüûüýtD ˆ¹ÜýýþñóõþþýùúûinrCCC½½½a5„Vˆ¸ìxH&/åôè¸Î`þ[my–œqjd÷÷öjy†–‡zv•²ŠkN­ÍáS3óìëþöí«ÉÅ)=IÐÙÛ0'%“}jq‹¦SdP2ðƒ™¶ÉótI ^£C½½½ÇCCþþþüûüÿÿýüýþÿÿþþþþýþýüûüýý./.ÿÿíäÝñøòñðöõöõö÷ûûüûýÿÿÿöõöòòòïïðRPFñðñ =/ñêé :+´áÚÿõæòô÷íïó÷øûþþþýýýÛàä@~L(ýþþýþþöøûîóö^£C½½½ÇCCxHú÷ö$,3P6YÿЯíä=\qjdÃåù=®ÝaNCkw€•‰€.?Kðèèþüüøöô<31uZ ²ÇÓ<=.ò½½½½½½þþþúúú÷÷ýýýþþýþýþüüûüüüþÿÿÿþÿùúûþþþöõöüûüÞÛâèæå&.0ïåàûûüûûüþþþÿþþôõõòñòXWM ÏÉË54/ ýýýþþÿIHC—éìðÿÿþþþìíðY.ùûýþÿÿÿÿüýþþÿÿþÿÀ ‰@`w½½½½½½Œ¥¶t[Jïéèùô&0Q”©¹þþ=0R#;KU“³ÎmM2hH/epzswy‰‡‚“¡~m_èäägUI¼Á8D1½`½9½½õôõ ùøùýýþþþþþýýûûûù÷÷øõöëìîôõö þþþùùúééëþ%23 ! ++᫸øøùùøøÿÿÿÿþþóóó[[R ýþþûûýûûýùùúÿÿÿPQLÁ¿Ãÿÿõ÷ùûûûèêí9þþÿüýþþÿþÿÿ ½`½9½½$+pP4”©¸'/0 áÙ׃¯ªÉÞV7"Š¢²v^N,>KU7#uQ1‘¯È­ÎäS2~m_Çãò!+2ÿïíì þþÿûüÿüûü÷öõø÷øéãçööù  ðïðìù)() þþþTL¥Ÿ§bbX ýþÿüüýöö÷ýþÿüýþÿÿÿøøúiD'}¤ÄD&! 2& öúûþÿýþÿüýþûýþþþÿáØÕ7lWHÎÿ[î0Z>+‡áæmM2‚•¡(4=,;E[3™¶ÌgJ4oQ859<ñí쫜׫œøþÿB¬®¾ÜíB$ˆ€z‹–ž ùÿþýýýýýø÷÷÷õõøø÷ ççé ÿëêë%) þô PVO$íéè˽¼+,)ùùûøÿÿþøùúùúü÷÷ùÿþþþÿÿÿþýþüýýþþþõúú ùðõø ÿÿúþùûüùûýíòõäìñ/x_JoXHöòñ~k_òîí#ÿüžVSøþÿíýýöõô ÿÿüüýýþýýþþþÿÿþþþøö÷ööõù÷÷ööö&,,¹©«EUS= ¤ ¥#IFþþÿüüü øüüI#úàìãêïóü*@øùúùúûúúûööøýýÿýþþÿþÿþÿþûûüö÷÷ñòõëõùøûýîó÷öúüöùûùûüüýþéðôÛåíìéé()-(XPKˆŸ³0øþÿíýýõýþïëì$un˜¡ÿÿüýýýþþýþþÿÿÿÿÿÿþþþÿþø÷÷öôõø÷÷.62 ^qpùøø ùùúññóýýÿûûûñðòܹ þÿÿíìÒê,óôö ö ÿýþþûûüþÿþÿþþøùú÷÷øæçéE!ÄÑÐ;6,ÿÿÿÛÛáöùûöùûÿÿúüýýþþéïôpƒëææ,óïìfK8ëüýA†–ƹ²S9uZ…¥zsh_‹— ýüüýýýýýýýüýÿÿÿÿþÿÿÿþþÿÿøö÷öõõ ;ILâ×Ôúùû ñðñèçç ͺ$ ùûýÿÿÿûüýþþÿãÇ´2Fõõôóóõùùú ÿÿÿöö÷õõö\8°ÂÒ3+#ÿÿÿ7.&±¿Ìéîðþÿÿýýþüýþ^u„þýüoXF•¯ÂkQ>xaMPOþ¯±{‰”G,lui`„˜ûúúúúúÿÿÿÿþÿþøö÷òõø  ÿýûûúúúþþþíìîøøúúûüþýþóóó!)ïÚþÿöùûþÿþþÿûüþûüýëëíõõõ &&åßß÷øùôôöÿÿýþþöööîîðï  þÿF:/¡«ºÿÿWK9 ñÒ´ .LkQ>¬ÛþT%POþ°±…wl€u|qh}‡ÿÿÿvka›ª±öõöúúûø÷÷óñòù  ÐÍÏ!07êççó÷óõø þþÿýþþýýþô÷úñô÷òæçöõö÷÷÷kki••˜þþþüüü ÷=#²Å?4*öøûýþÿîÔÖ5E<  â̱4O[B2eF0T%POþ°±ƒypy‚‹ùwmïìí õôõùùûðíìëèèòðïúùú ëçæûúúîóòþÿ óöùûûüúüýéîñÝäëÿ kfakkh˜Šýýòõøòõøòõ÷ûüýùúûïóõVfuÄ­™ô÷ù÷úû÷úû°±‡~uvjb’ ªúùü ûûùîììhXOvƒ ‚tgT›„ùûü  úûüüüýéíòjx‚hv˜ŠÞäëúûý ùûüðóö'èíò ùúýöøûn`Vƒ™ôóô üýüpaWŠ}qes|™Œƒ ûüüüüþbqzhv¢”‹  øùûTdoTfu¯ñøõøùÙàç'B}qggt}ˆ~wþþÿz„Š^luŽƒ}üýýv€†éíòëïôÿft~Fx‚‰r}ƒhv½½½BBB¾¾¾BBBíÞË øøùêìîòóõ.;KðÓ¹  þÿÿö÷ùðóõ-HòãÑ ýýþúûû÷øù .øåÎÿýýýóôö÷øù"8ͳ ÿÿÿúäþþÿýýýú ìíæýýýùøùååæ"¨˜Š)" üýÿöøüÿþþÿìи0HØÌ½÷úÿÿÿÿýýÿÝÐÀóôö"5äÓÀ ÿÿÿþþÿÿõíÖøùúõö÷$9ïÑ´òô÷;U½³§$!üüýúüÿÿþÿÿÿÿþÿÿÿÿÿþþÿúûû÷îÑúúû÷øù+;ðÛÄ þÿÿö÷øùúûÿ0ÅÇÂòóôÿüûü ÙÚÔ3(ìíî ïòöèìóñù ó÷ÿÿüüýûüýïòôíÎgL6þþþõ÷ú÷!B·ØpI(¯§žüýþÿÿýýýøùúúúú´»ÇbYL½¿¯ýþÿûûüýýþÿ  ùïØõöøÿõþîÍþþþ÷ùûóõ÷Úáç,E\õöùþþÿÿùúüÿÿþÿÿüüýûûû÷øùûûüñóôÝ´¨ALXŵ¥ ýþÿõ÷ùÿÿÿýýÿþþÿ÷àÉßãç+=P™š™!"! þþýûûûûúûÿÿ²½ÊD:0úôçûûû ïêÝöñðÿôöùÜãé  þþþûüýüýýïñôeK5òõøþþÿþþþý׸àæë#C]pI(ÙÝãûôöùüüüüüüûüüùùúüýýÞáæ·¼Ã÷ùúýýþýÿÿÿÿÿÿþÿÿÿûûüüýýþþþêûùôú úþÿÿþþþþÿÿùûüœ–Ž ñóõ÷ùú ÿÿýýýøùúûûüðñôïòôüöêÿøùûñóöùúü÷ùûÿÿÿþþþýþþûûý³£6?Cíîðñö÷ù÷÷úýýþõôôõõõìììæèëøùúûûûìÓ×  ÿÿÿÿÿÿÿÿÿÿÿøçÿyeN‰žµúüýô÷ùþÿþúúüùúûU@-áèï þþÿüþýüüýó÷û‹«ÆuU:·ØpI(p^I þþþÿþÿñôõìîò¶ÅÖúûüúùú2+!üýþ÷øúýþüÿÿþÿÿÿÿÿÿÿÿÿÿÿûüüüüýúûüúúûùúúÅâîðñó7'ýýþýýþ÷ùúúûüß±óô÷íïòøùûøÿÿÿÿÿÿÿÿÿþÿÿñóõòó÷‘”,'!þÿôùúý þÿþÿþÿýþþýýýùúûûûü÷øû ~vhçÖÌ  üýþö÷øÊÒØÝô ùùøööö%Üßäúúû  ÿúûüÿÿÿÿ&{z&òãp‰¤ÿÿ   =- ÿÿ÷ùúâèîØàé0ž¸ËbH5 ¹ÉÖËÆŠ|q­ÆsS:šÄèf<±ÐsO0z¢Ï†^1Ì3~ÖIJ  …±à{O qO2ßÐÃýê¦Üü Sc:4\\ÙŒ£Ô¶œµqM"K^:Ú—ÆË¢¬+vZ#  0!×åóùûûßäéïðóöøøùúûýýþýþþúûüÿÿÿÿÿÿÿÿõ÷øõö÷øùú÷÷øüýýåèìóõùìïô.+' jcUçèêìòù¬®´_]VËÈÇ0+&ùúüóõ÷ùúüøøûýþýúúüøùîçéì!(,cZL  ÿÿ úôëgkfýýýüýý‹‰opjüýýýýþýýüûûü÷÷÷ÿÿÿøøúýþÿÿúúüýûûÿÿÿþþþÿÿÿýþþþþþÿÿÿýüýøùùùùûüåßßúýþþ])âïöýÿÿ÷úüáîõ%þõäÊ­¤Àî#MY6"K^:Ú—ÆË¢¬+vZ#ü ìÔ¾{gV›ÀÝe@#¨ÇÜX9$‡¦ÂyZ>¨ÐX0•°ÄkP<qФ ew‰›‰wàáÞ "‹Ÿ® ;)ŠªÅvV;k†¦ ÁÑØ?/(ñçÞ™‰zxV6Óß㬺ÁÕÏÍH92›¿ÛeA% Ãß`=! Œh<®äøÞ°˜¼ë,`[0 'Wa8â™ÈÅž¨"t\+ :9ƺëÔÂÝö#* ]J6 !óõ÷Ùßä½Íãóôö÷øø|sc…ŽŸÿÿÿûüüûÿÿÿÿÿùúúøùúøøùýýýýþþøøùƒnWøùúìïòèëî¸È×íïóùöøúÿÿÿýýþüüüüüþùùúÿÿUTNùúûñóöûüÿ úýýýõö÷îðóÅ¢¥)%! üþÿÿüýýüüýîïçíðñ#*.lnhûüüüüýþþþüüýüýý¥§­ùúûýþþþþþþÿÿÿÿÿÿÿÿÿÿþþþþÿÿüûüøùùõöøõöùýýþóõ÷ô÷øóùzT5  öùû÷úü¸ÂÒýþÿúüþM{Žóɘ}É %54@(:9ƺëÔÂÝö#* !gT5–¸ÒjH.‹¢³ sƒµ}o„­ÔX0-ALßÐÉ›‰wœÃád=½¾Áca" ãÛÖHvV;­»ÁSE?™¬¹gTG•zZ¥Ëç[5¸ÆËH:5†mU¥²¹ wrœ´ÆdL:þúñ~¥Í‚[3Rs™Èg8þòÍ  Ïö 칟—¹ÿûÙ£ŸÆuh; ëûïæòü* ʶ¤ üýÿòõùÿÿÿþþþúûü :-/56ƒzi‰šþþþÿÿýÿÿûûüýýýüýýþþþýýþúúúvcOÿòô÷øùû÷øû÷øûîðôî ýýþýýý÷øøòòôÎÑÕ886þäçëýÿ ÿÿÿÿùúûûûûõ÷øîñóçéïóõùïòõþþþþþþûüüéëîØÛß%*ýýýýýþüýýþþýüüý÷÷øÿøøùþþüýýÿÿÿÿÿÿÿÿÿÿúúúùùùõö÷õö÷øøøI' :ýþ÷ùüF<.çïóJj 7hvLÿöØ®›‹¶Qwb3 ëûïæòü* z—³k«0?FáØÒ}o¡µÂñûu–·ûøøbv¹žŠsz•¯&ÀÁ¾caa…±ß{YHHâÕÌ;xš¿ˆfA×Ⱦ5[zžÃG3©²¶WNJôìçv˜¿ŠhAxV6×ÊÂP*MÝÏÄA%‘­ÃoS=k†¥1.!s™Åg; $üç¹›¯àÿLsj7ÿôР‹¨Þ·˜¶uMýùøûÞåëúüÿ ùúû÷øúêîñ¡¯ˆ‰‚uþ|scÿÿÿÿÿÿ–¥ÿÿÿÿÿÿÿÿÿÿÿþþÿýýþkcUãÃÅ÷ùûQLB¶»Çüüþ þÿÿÿþþüýý÷÷ùòóó+,,ùúûýþõö÷çéí öýýüüüýþÿÿèéë\\Y·´·íðóþÿÿùùúùúûö÷÷RURûüýýüüýþþýýýýýþ÷øø÷÷÷<<8ÚÙÜþþÿúþþÿÿÿÿÿÿÿÿÿÿÿÿùúúüûüôõøôõöêÞïþÿÿÿ ýÿÿýþþ  #5* ÐÌõáÊÙô16ýùøûwR0– e@# }oŠ¬Ë þõ #õöèrQ~’¤7ßÏÓ~h­ÇsS9 à̸Oi”o‘¯Ç„m[?/(–|[š¸ÏfH1¡Ëé_5%ƒš­}fSH92‹¨À+z˜´†hL Œ¬ÇtT9‚Z/r—Å€Oÿ÷׫›Áð&Ya6 0Y]Ø ÐÊž¥"u`+ ùäÑä%#Xeq–Œ… ûüýÿìîòõ÷ø~xm÷øûýþþþul]ðòõŽ–¤ÿÿÿûüû ED= ÿüüý165þýþûüü^TEþœ£°ÿÿÿÿÿÿþþýùùùøùù91$ËÔà>@?ÍËÍûü÷øùÿÿÿÿÿ÷÷öRSPøùúADBÿ·´¸ÿÿÿÿÿÿþÿÿö÷÷TTQÿõöøÿÿÿÿÿüüýüýüôôöø÷÷öö÷÷ùúþÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿþýþüüüùúúûüýüûûHøµåýçðöó÷üò÷ûÿÿÿûýþúûüõøûó—Fiÿýôäθ§²Ðõ9L0ùäÑä%#†iM„ ¸ nUAõðî‹jI /:™­»gSE—Æòi:†kQàáÞ½¾Áca"wޤ …±›ƒi­»ÁSE?  ½Ò`C. ©¸Á  ”³ÍlM3 ÑÍÌ-!ÖÄ»5\bA(A(‘œ¤ fYQ  £Â†hL£²¼]NDlµ•z["ŽnKŽi;h‡®÷ï硊kþíÈž¡Öú 4bW+ $Ta;ß—ÅÙ¨žÃpj>üçÀ®×û)O>jt{Š|øùùfbXÿÿÿ {raþþÿÞáæüüýúûûóôõìíî  úûûüñòõü þþúûüþýþûüýýþýøøúöö÷ðòêSMD ûüüúúûþýú þþþMûüüøùùÿÿÿÿÿÿ@B@ÿÿÿÿÿÿÿ÷øøÿÿÿ û ÿíîðë0%ûÙ˳Ýùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúþþÿþþþÿÿÿôôóµéëéïôîø üýþ÷úûÿÿÿÕâêFóɘ}É #5Xn9*üçÀ®×û)O>çìô øàbwž‰qýëäá Þ̼:R åÈl~¯tcNû ‰r\‚¶à̸Oi™½ÚgC&‘¤²o\N£¸Æ`C.€˜­ýûû ú lE3›ºÓeF- ##ßíý˜ž)++‹’—‰qi fYQàáí ÐÚB#.]ND”sKœ´ÆdL:x¢!{•­ ¡Šk9kˆ9IyƒIþñÍž™ÃðOlX) þ##  ýþû-)%ÿÿþþÿþÿþþþþüýÿþþþûûüôõöàãæíïò úýóõøþÿ÷÷ú÷øøöøù÷øúèêÞ ÿÿüýýþÿÿýýýþþþþþÿA8,øøøòóõôôõÜäîüüýÛÞâÛè÷ÿÿÿÿÿÿ ÿüýþ ø_4õøøù­µÃÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþÿÿÿÿÿÿÿ.5")+úùøùøøüúúÝ•€ôøûþÿÿÿÿþÿÿ÷ùû’œ 0e„0þñÍž™ÃðOlX) x[A‰¬ÌÝͽ#y^Fž‰qäÝØ?‹nRáÿ;*ãäçôæÞîñû)ØÈ¼C&“Ÿ¦*..ÉÎàÿÿþ7„“ —©·dI6ÞÑÉO5ªµÍ .›ºÑeF/ÌÛÛÙÍÄ unißÚÙ j?²×ìD?£²¼]ND…™©ü>ˆs^ЧÀsQ3‚±æ˜yRþóÖ¬§ÒøEoc?ñòôïðôü þôö÷ûüýýþþÿÿÿþþþüýýýýþþþþùúûùùùöøù#ßáåüýÿÿ ÷ùûÿÿÿÿÿÿýýþüüüþþþö÷ùèêíÿøùúÿÿýýþþüüýÿÿÿþýþþÿÿýýþúûýüüýôïê '  ýþÿýÿÿýþûüþÿÿÿø¼ËÜÿÿûô þþÿøúûÿüýýûüþKD7 ¯±»ÿÿÿÿÿÿÿÿÿÿÿÿÿ4= þýÿþÿÿÿýýþþýýzaK|¡ãí¸t\Ht\„«ÒqYEˆ§Â£‡Zäáâ   öõ÷m‰§-C‹e8dÜb{œž…dglq¡œ—úûüÿÿÿÿÿÿÿýýþþþþýýýþþÿþþþõööîïòUUO›ž©üüýþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿûûúüüýzwlýýþûüû¤¦°ùúüô ÷ üüüüüýûûûüýýúúû÷øøððñ%ùxóöùèëîôõøýýýüüüúûüüüüæèêöùûîñùúü÷ùüýüýûûûùúúîïñìíñÛǺüýþýñôøÿÿÿÿþþþ qT7³ÈÛ ÃÚìôóó úùû÷÷÷ýþþüûúþþþýûûø÷öú)±ûýüôýýÿÿ üþÿÿöýþS›¥ŒrX’w[‚§Íƒ®Ú}R&–{Y‚cD{¤Òˆa4 º¡Ž 7Rg±¨¯(dZãÝÝ} ý„lU„ ¹•„sóðñƒ“¡}m_‚¤Å~\;µª®1AxaN{™¸qšÓ4#pibýüýt\H|U.¸ÐÜymb œÐûž…da{Ô4ùùúüÿÿÿÿÿÿÿÿÿÿÿÿýýýþþþÿÿÿòóôõö÷ñóö kh]|€Œ ÿÿÿÿÿÿÿÿþýþˆ…xýýýûóôöôõ÷üüýúûûúúúððòûüûûûû  øþðçê üýýþþÿýüýû ÿ÷öó÷øúñòôýýþûûû@A=Ä»òõø÷ùûþÿÿýþþþþþóõø1!ÕÜã"øæééÿÿÿþýýýýýÿùø÷Iåäý `N5œ±Ëÿÿûþÿûÿÿw¦¬pŒ«òêáY3}R&…¦Å{Z;t¥3n³ûøö]q¹£ur“¹ðæÜz^*)Hwj_}¯ï&03mI*|`G}m_y¡Î‡_2|l_…gH-–²ÆjN:{cM¶ËØ„p_pŒ«ŽpP¤Ê\6¡Ú ,DRÌ­š/Er›ÓŽe-“wYxŸÍœ\bƒºž}FUeœ ÿþÊéG/´ þÿúþÿÿÿÿÿþþÿÿÿþþÿÿÿþÿÿÿÿþþþõ÷÷öõöýþþed\ýýþüÿþ~róÚË ÿéÖýýþûüýìðò*9øøùýýûûûýûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýýýþýýüøùú ýýý úÿúüðìíþþþÿÿþÿÿÿÿÿÿ øøøüÿÿþüüüzbHs„˜ ïôùûý ÿÿÿÿÿÿÿÿÿÿÿô÷øö÷ùùûýðåÿÿÿýþÏ ÿÿÿÿÿÿþþža0ýýþüý"úûüýþÿüýýq%#×ËÓ¨¼ÑI;)ëó÷S}tU°Ïƒ®Ú}R&ƒ©Ð}W0þýüŒs[w©’sM X(ùË×á7)†• qz¾>zÜ̾I*|l]zV4jŽÄ–r<—© "ŽpPƒ¬Õ}T+ŠÁþv?ÜÕÕïû q—ÈûðÞ”yZ_y[†¶êgƒ¥ .ž}FýúôÿÍç:' »ùùûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿüüüýýþþÿYXPùùùýýýþÑ¿´  óõùýý÷ùüÿþþÿëÓÆåêîwth„ˆ”ÿÿÿÿÿÿÿÿÿÿþÿÿÿýüýl^Iÿÿÿûüüùùúüüüøùúùùú¤±Ãþþúüü^= ›½Ùl? þÿÿîãÚ“n‚’£ëðôòõø þÿÿÿûüýõøùìïòßàß:<1 M ÿÿÿÿ@6êïó)äîÛêòc†•èÝ×ìèæƒûD}W0…¦Å}]?‰pW{ŸÄ…a< ùÞD=*)H†~‚¸üw§!}™°ïò"7FpŠ¥ŽtX’±ÉnO7øØ<Š™¤5(óéàtU}T+ìö‘`)d¨›~Zóéâ )êâÞ-y§å‡YÌ3~ûöèÿþýúòÿÿÿÑò#ÿãùþûõ@0ýÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþýýþþþÿÿÿTSLúúûþþÿýþÿýýþþýþæìðùüýýÿøÿÿÿüüýûüüóõøâçí#øúÿÿÿqmcÿÿÿýýýøùù—š¥ÿÿþþþýýþÿÿþq‚êÐÀ ûûûûüüùùûùùúoaNðñòâäèýz3CÓ³¦ øúýüýûüýðÛÒU6"­ËàúüýöùûñôøÿÿúûüúûûýËÓÛ@2)  þþÿþÿþþÿýÿþÿÿÿÿÿÿýþþüþþ KG8<[_v‘¡Šoþë}W0ìãÞq‰Þw]}¥Ñƒ[/Ç«˜9Uhm^É®™7)gŠ¿ yk^úöô8\!,@Oij³r> ŽtX ‰¬Ëzdw^JeSG{¢Î…^2/50ÞÂô›~UlŒ³ „]22m“È  îßΰ¤wP]Œ|L þýþëêê%ýýþ†œÿÿÿÿ;<;ñðì úûüýþÿþÿÿýÿþýýþþåêðö÷ûöøüÿÿÿþþÿÿÿÿùúû÷ùúåêï÷øøÿÿÿþþþÿÿÿþþÿÿÿÿa^Tõõöùùùîïðññò)9Aî×ÈñÖÇþþþÿþþÿþÿÿ ÚÝá(êñõöúüûýÿ ÿþÿþûýþøùûëñõTKA«µ¿üýøúÿÿúûûÿÿÿøûývU:øùûÕÝåýþÿô÷ùýþþüþþüýþÿÿÿýþÿýýþýþþß¹ž!Gb{¦Ô¡Šow]þýþûÓ³ÌØå 99Uhþ׸7Rg»ãûzk`„RW'ÝÞ:v[’±ÉnO7 iWk<j†©!Ýè?Z¬¼êýê+œXïã×4ú÷ò`y› ‡e°£t«´¶ýýÿùùúúûÿþþýÕêõÕÒÒ;>:ø÷÷?KI$ òóôòòôÌÑ×ûúûûÿÿÿþÿÿþÿÿþþÿýüýýU]]¡›ôøúÿÿÿþÿÿûüýýþþÿö÷ù[b`÷÷ùÿÿÿþþþÿÿÿþþþÿÿÿþþþùúúûûýûûýáÌ¿ þþþýýýÿÿþþÿÿþÿÿÿÿÿÿÿÿÿÿÿ'$ ãÜØáäçåíó ù÷úýüýýþþÿúûýéðóø ê/+'ýþþùúú0 "x–²ÿO6"þþ'ùúüïôöèíóüüþþþûþýûüþþÿÿÿÿÿüýÿþþþûýþþþþ Ùµš'KfäнZ,ŒkFt‘¯w]}¥Ñ…^1ûÓ³ÌØå9Uh¥´¥Ý/âØÕ}™°ƒgP y•° »ãpEzŸÇ†a9eSG{¢Í…^3k’Ñ•n/ôîé0Gw Ï÷ðè#% ”tM“m8lŒ³+Ÿƒ[ûûüòòóôôöñóÿüûûüûû÷÷ùôøáìîäúûüúúûûúúüÿÿþÿýýýýüüýY__¨¡¢ûüüX^]þÿÿÝãæ ææçþøøþþþüüüüüþüüüûüü  þþÿûûüþÿÿþÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûü"I¹°²ñöùúüýô÷ùüýý#()ãèí÷øù7$ ûüþŠlPª·Å üýÿïôøýþþÿ îò÷ýûÿûýÿÿÿÿÿÿÿÿüþþþþþûýþýýþøúûöùü¼ ‹D`u€®ã¡Šo‡­ÒŒoQïäÜ/Ç«˜9Uh9-”y[pŽ®¤‚C5*Ê›ŒOetcE0ÍÔÇžÊï!1?‡©ÇáÙÝI\}ž pƒ­}j}\<ôíéäнnòú’l9•n/nMg‚¦ ŒpR}© ƒW(l¾”qBôìån¶’qJ”tM£ªªåæëôô÷÷ööøø÷âßÞMPLïáÚ. !ð·Áíäãýýþ NVWþþþÿÿÿÍÓÖ%%$ÿ 0þþþÿþþ ÿÿÿôôõíííàÙÛüýþ ÿüüýùûÿÿÿÿýþýýýüÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿþýþüýýûûüûüûüüýENLóü¸«¥ ÿÿßäéüýý çíýÿðõù ¤µ%  ô öüüýþÿÿ÷ùûõøùöúûþþÿûýýýýþûýþýýþðôöõøúKex€Ry¥Ú‡[&¥Ú-4úâÀ¥["ë9UhrRÊÖàOet»ãû¡‘›¤Œj„¨Í|X3éߨyW99ÞÔÈ",8ƒpb‚›±nN3N3‡kPpE’tPq˜Éh7}¦Ó¡Žvz«ë`± O‘tU™~ZƒW(”qB›\450ÂÀÆ ÿÿÿôóòbf`ñäÞÿñë ÿþþÿÿÿÿUJAùùùúûü¬­´ ú 2'ÿóóõòôòóüÿÿÿúúûúûüôõöüýýûüþÿÿÿÿÿÿ "!Ƽºþþþûûüúýþýþýÿÿÿÿÿþÿÿÿÿþÿÿÿÿÿÿÿûüüüüýûûûûûüýþýûûüýýþôñì%3<üüüøùù÷èÞúõüüý\@) üýýýþÿÿÿÿ¹Óçÿ E;3Ñ×Ýâéðýýþþÿÿ÷ùûóöøÿÿÿÿÿÿüýýýþÿûüýúûüòöøûüüw­‰Sø‡[&È«œ“{^âÀ¥Ê×ä6(ÊÖàOet®Ñéïê礌j|X3b669uŸ×‹a)ÞÔȸ¿Éjmo—²ÅiN;~eO ñæÞ-öìã OZt±#íàÔ ‰lc€§€Y õôö;=:þþýÿÿÿÿÿÿÆ»¸$#!éëíøùúóõüýýùùùúúû0/+ÈÊÏýýþ8.  ÿÿÿÿÿÿâåçÓÕÛ ×Üßýþÿôôöûûûýööøþþþýþþþýþöööõõõú÷ùùö÷ùýýþûûüýÿÿÿÿÿÿÿÿÿüüþûüûýýýûûýüüüýýýûüýöö÷ðñóûööêðúôèßN7$!  eDñôø‘µÎðòò ùûýÿÿÿþÿþþþòõ÷òöùÿÿýÿþÿÿþþþÿÿÿÿÿüýþùûüøúú^s‚ùè¼q˜h5“{^¬—‰Tiwp‰£TA\w•µ‰kK\p~˜µÊúþÑÛü–ã¤jb\cvŠŠvuœÉi8ÿ–“‘jmoj,8rœÔŽd,|—¯„iQrŽ«ôì嚆pˆ[#’tOi2ÿÿ ‰l€Ygƒ§ÿÿýgÍ™s3¸ÄÇ6== ÿÿùùù÷ööãààú÷øïïñëìð ööùûûûøøøéêêüüûýô)%%ýþÿúúûÿþÿüýþþÿÿÿþÿÿÿÿ  0-)÷øøÌ×äõõöóôöùùûÿþÿÿÿÿþþþüüüöõõõõöëìî ÷ùýýþýüýþüüýýþþýýþüüüýýþûüüüüüüýþõõöôõöïñóõöö& û+B- ýþÿýþÿûüþþúûüýþþÿ_@)ñõø+rž½þþÿ  ÷ùüúüþ&.# þÿÿòõø¸Îþþÿýþþþþþcw„k<e‰Æ›w:o³‘qMŒ«Åtiwc‡Ëy5:GE‰kKýýýnN6»¼×jj\°¸¸PHHu«‹qUr¬Šv޵"",)j,8Žd, ŽrUq‘¶oJk޼ñãÒ'5Œh=¼Dñ¦Pm‘¿“oA™}Y™s3øùùÿøøúÿÿýþýø÷ø æñòññôçèê ÿÿþþþÿþÿüüüùúúýýýðððýýÿ÷øúõöøýýÿþþÿÿþþúûü÷øøûûüôõöýõìïñüüýûûüüûûúûû÷öö÷÷÷úö÷øüþþýýýþûýüýþÿÿÿþþþýýþûüüûüüûúûðñóôööôõö÷øù îó÷ üÿúüþûüþþþþüýþþÿÄ×å:'þÿþÿÿÿY=¢¼Í>,! þþÿþÿÿ†«Çÿïó÷ ÿøûþûþÿH5%¥¼Ðúüüu„Žýûø‘qM«Ùûûóñõw•µ2KXW óŒ«ÃtU=÷ùþ—s@ ‹qU–Áçj?ŽsT]{µ£…K޵’ªÄ&B•s)“­Â7 f…±š{O _<sÔc,oJ¤r\v¡¤Š_c†Åz;“oA‘šŸ #$ÿóòõþþþÿÿÿúùù÷÷öéçè ôûõçêýýýýýýÿÿÿûûûþþþûûûúù÷ñóõüüþùûü þþþøùúûûüçéëåèì ïïðùûûüûüýýýÿÿÿûûû÷÷÷øø÷ÿûùZmt©–ýýþûýûüýúûûÿÿÿÿþÿþùùúöö÷õ÷÷øøúøùû= æð÷ôøüþÿýþþûüþúüüõøúîòõøúüþÿÿþþÿ¾ÑÝ4&÷úüþÿúüþþÿÿjJ1ñõø»Ò êðõòöú úüüøùü7) [v¦2RîäÚ ÚËÀ?#öðìW óz’¨m“p˜µÊ 6+(ÊÕØ6+(j?£…K;CK;CKmS>z˜µ·èu¥ê‹[c,•rDxžËˆb5Yn(N¤Š_a€²Ÿ€Nz;m‘¿“oAofaš¥¬õö÷þýýúúùõôôéçæþûùÿþ÷ýýüõïî~saýýýŒ–¦êëð ûøúüóó÷øøùêìïèêí  ÿÿÿüèçëÿÿÿÿù÷÷ üüüDRVïîïGY`IJ«úúûÿÿÿÿÿÿÿÿûüüùúûùùûùúû.ÿºÏÞþÿùûýøúüÿÿüþþúûý÷ùûõøùåëð?*ýÿÿþþÿéïõôøû  þþþüþÿóöøW@-¶ÊÚò÷ú÷ùúðô÷L7'õøúÑ®•/Rkr˜ÇŽh9¥ŠZúöôèì–³ÊjM6õèÔ5‰tc“{_†nX¬Çô0àÚÛgw¸™‰zÌÉÌ6+(–ÁçÞ;Œr[mS>†hKz˜µIù½ëè÷îäeƒ®›}R–Íj3ÿˆb5§’pñûõïc†Åz;õìäq ë`f[Tˆ‘šÿÿÿýþýýýýùø÷õóò.DM  ÿÿÿÈöõøõõûúøøõù#@M9ú¥®º÷ù÷øùôôöþÿþùùù õö÷TE1 ûüýùùúüüüùúûüüýÈâúæåçE9*1qj“–ÿüýýýýþúûüÿÿüýýüýýüûüûüüýýýûûüïðñ >, Ðàëòöù ÿÿÿþÿÿÿÿýýþúüýùûûY?,õùûþþÿþÿÿàêñò÷û þþÿòöøóöùI0_<%µÐÿÿÿþþÿQ;*éïôöùúøúü[v² ýþùêÿ¨‘aªÐèV0s™Èg8i{Œ—…tsT9`€¾ˆq[gw†™‰zjb\ÊÕØÛÊÆ#w Ò‰`.fˆÀšx@/FSz˜­†hKŒt^”m2|¥Ô„[,p•Åk;j3ÿf£š]c†Áz?‚¦Ê~Z6¤‹_z;úúxofÀÝêîñöÿÿ ûúù ûúùÏ÷ö%BR÷ÞÉÌÔþþþÿÿÿûûüüüû`UDÿüýýúúûüýýûúûüéëíýþÿûûýkoj•‘—ÿÿÿýýýýýþüûýüýýüüüüýýüüýÿÿÿþþýùùú ü÷ùûýþü0 ÊÜèùûýþþþûýþþþþýþþõ÷ùeH3ôøûÿÿÿ  V>,üýþ±ÇØ ýþþÿÿÿÿÿV8$  „W9þÿÿÛæí°Ûå7âââ©©©WWW©©©WWW¥ŠNc~£Š»êþýþ‹u^ÑÃÀ…mXe¦ÿþý8—…t €B™‰zƒ¹ú}GäâääuZw Òw›Äšx@W"øWhKVlžª”b›}R­Ü„[, !š] ŽÇr9ú¤‰Wøðæ`|¨ –p9CCC½½½CCC½½½CCC   „“œ/:>Ƽº$/4  ÿÿÿþýýÿÿÿÿÿå#SNüùøùöôV)þ„ƒŠÿÿ [N<  ÿÿÿþÿÿÿþÿþþøûûüÝæMRO²­°ÿÿÿÿýýýûüüþþþÿÿÿÿÿÿÿÿÿýýýúúú ÷êèò úüþþþÿþþÿ0!ºÐÞÿÿøùúZ@-ÍÜåEC/  ýþþ0&åìñÊÒÜ   ÿÿÿÿÿÿÿþÿÿÿÿÿþÿÿþþÿþÿþþÿ Q3!ùùù¤¤¤cccIII¬¬¬íííÁÁÁ]]]CCC½½½UUUîîî½½½CCC½½½•••kkk………{{{éééSSS­­­‚]ÞÈ»˜}[E^…mX›Z„¤Â|\>ÞêG\†®ÖzR*RID®·¼öîæ.æÜà<ª”božø‘b­ÜS$¯äíØ³'r9ú~Z6hŒÃ˜t=ñãÍ/w®‰Rÿ „Xa®XXX¨¨¨CCC½½½DDDžžžaaa½½½SSSªªªCCC½½½JJJ¶¶¶```   ÷÷÷‹‹‹~~~XXX¨¨¨½½½‰‰‰wwwMMM½½½```VVV¦¦¦JJJ¶¶¶MMM³³³êêêvvv   ÷÷÷pppùùù   CCC½½½üüüûûû‹‹‹WWWÇÇÇWWWp{ƒ&)õòóÔÎÍú÷÷ÿÿÿÿþþÿÿÿÿÿþýýýþýýþýþþþþúàÉÿ&ûùø¡Êø\;  ÕôÿÿÿýþÿûüýýÿÿþÿÿþþþþÿÿÿÿÿÿþÿþÿÿùøùúÙàï$&õõõæáàRE4 òôõ¥²ÅÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüýþþK+ ' ûüþùûüùúüþÿÿóöøßçí;)ðõù ûýÿô÷úþÿÿýþÿþÿþüýþ # òïðûýþúüýþýþüÿÿÿÿÿþýþÿþþÿùûý æ¶—æîó4\vbbbSSS···QQQWWWÇÇÇIII½½½mmmJJJ¼¼¼lllKKK¼¼¼ZZZCCC½½½aaaŸŸŸnnn{{{………˜}[~”¨‚lXp—Ëi5 Ÿ„\RID‹Âûu>)(ˆ‘xo‘bm“Æ“m:u™Áùõó$Qp–Èq—Æi:˜t=\vŸ¦bâÄžRaöðð]w¢£‰^¨¨¨GGG½½½¼¼¼JJJjjj¶¶¶­­­PPPaaa”””–––˜˜˜rrrEEEŒŒŒ½½½ wwwvvv¨¨¨vvvCCC½½½ªªªPPP___ØØØ„„„‰‰‰&&&ýýý ùùùCCCbbb®®®XXX+++ ppp666qqqYYY———½½½ÿöóôïììÿÿüúûýýýûúúÿÿýýþÿÿÿÿýüþûúúûùøúø÷ùøøùíëùõòüûù2/³×ï÷ÿÿýýýûÿÿÿÿÿÿþÿÿÿÿÿÿÿÿþþþÿÿÿþþÿýýþøúûøùú'÷ûû 45. š”›_RA  ueQ÷øù÷ùú•¢µi- ïÿüþûüý  þÿÿòõøÂÏÞéñô"ñõøøúüùüýýþþþþÿôøúùûýýûýþþÿÿÿþÿÿÿÿÿÿÿùüýûüþÀœ…@d{­­­ºººccc“““III”””III½½½TTT½½½ŸŸŸ………u¦ð d‚¬þýû5b…Åž{;óìåvÓŠpUzR*øóîu>€°éíîv{€Š…€óçÜ:‹g?z£Ñ†]/j8x®ˆR¦dd€¦ÿþý:^y¥ÿÿý£ˆ^ƒÀ¤Ša§Ža©‘b£‰^]w¢£‰^¹¹¹¶¶¶LLL½½½°°°OOOŽŽŽIII   NNN¹¹¹½½½½½½   °°°///{{{ºººˆˆˆ   ½½½[[[¬¬¬??????TTT‘…}yˆ“ýýþÿùøøÿüüüýÿÿÿÿÿÿÿÿýýþýýýüûüûùùýòØïòüú÷ó&þþÿÿÿÿüýýùùûÿÿÿÿþþþþþþÿÿÿÿÿþþÿÿÿÿþþÿþÿþÿþÿþÿÿûüüùùûùúûúûûúúû÷øùmslÌ¿ºøùûïñôùúü÷øúùúûF=/âåèõåáþÿþþÿÿþþÿþþÿ R@.òöøêïôÈÕáñõøïô÷öúü þÿÿýþþñõ÷÷ùûûýüýþÿýþÿûýþþÿÿÿÿþþÿþÿÿÿÿÿùüýûüýøúüûüýùûü½½½bƒÁž}?b‚³ž~MXd‚¬žYzªç†Vž{;ŠpU£Ç]9›ZÞÌÇ¢„Pcic †^j’Ò–n.†]/j“Ðýúü™s4ÿþý‚]¢‡[Ù¶@_£‰^m–Ö“j*¹¹¹´´´‡xm}šÿÿôýüýûúûüúûøööÿÿÿÿÿþþþþÿþýþþþüúùúùøøõôøöôüúùíåís= ±Òú úûüùúüþþþÿÿýþþüþþþþÿÿÿþþÿþþþþÿÿþþþúûüøøùùùúúüüùùûóô÷Ø¿¼?IM’Šøùü ÿÿÿýþþûûûïðòáãé ûüþþÿýþÿÿÿÿþÿÿüýþýýþûýþøúýýþÿïóøçíôþþÿ ûüþùûüûýýóöùøùú(ýþÿûøÿÿÿÿÿýþÿøûüúüýøúüðô÷GiŽŽŽrrrÐÐÐ ¦¦¦ùùùJJJ½½½¹¹¹GGGMMMýýýPPP³³³#9ž~Mœ~T†Vc‡Ìy4WkŠ©•vq¡ö_ öðí¢„P t£êŒ]a·ŸIwŸÎ‰a2çÎÀ¯Ÿp‚]_}³¡ƒM¤Š_[v«¥ŠU“j*^^^¢¢¢CCC½½½êêêMMM³³³CCC½½½CCC½½½CCC½½½üüüqqqCCC½½½CCC½½½Ì3~ƒsfxŠ—ûýýþþýþüûúúúÿÿÿþþýÿýýþÿþþýþÿÿþýûûúùøøõôøöóùöõV&þâéðøøûüýùùûýýþÿüüþüÿÿÿÿÿüüýúüüúûüùûüûûüùúüö÷øööøö÷øÂ­¤M8'³ÉÛùúýñ üüýýýýö÷øüýýðñò üÿöøûÿÿÿüþþÿÿÿÿÿÿÿÿÿÿüýþýþþúüýúûýúüýùûýõøúÿÿþöòöùýýýýþþþþÿýû òöù õùûüÿýþþþþÿùüýûüýõøúðõøïgc™óóó rrrHHH¸¸¸aaaœœœCCC™™™$$$¼¼¼GGGÒÒÒ³³³MMM³³³³³³Z[u­¥‹Sþ×4©•vk†¥ ŒmIüÓ7e‰É›wL[t ¥Œ`]y©£‡Wc„Ã|=ðâÎHŸI‰a2Yp™¯ŸpZt¢ÿþýf‰¿šwA¥ŠUïgc™þþþMMM‹‹‹³³³SSS¼¼¼¼¼¼½½½XXXþþþ+++CCC½½½SSS¼¼¼¼¼¼Yp£  Úýýþýüüÿÿþþþÿÿÿÿþþþþþÿÿþÿþþÿþÿÿúùøøõôûúøðßé üýþõ þÿÿÿÿøúûÿÿýþþþþÿùúûúúûûüüö÷øõ÷øøúûððòúüþêïôI5$ ­ÄØ þþÿýþýÿþÿôôõEMMÜ´úüþõ÷úúýþÿüýþþÿÿÿÿÿÿÿÿþÿÿÿÿýþþüýþúüüúûýùûýùûüM4    øúüÞæì‘´Íýþþüýþöùüýþÿüþþýýþýþÿýþþýþþöùûõøú ùùùFFF///¸¸¸CCC½½½öööQQQ½½½¥¥¥§§§555CCCggg™™™CCC½½½n˜Ö¥‹Sc†Íz3–{]_|¨¡„X•z[l—å”i \wª¤‰V%Gp_~®¡‚Bd‡¿£‡W|=§gƒ»ܾž¡‡][r•¥Žk¦Œ^šwAXo¨‘cXp ¨`¤¤¤PPPýýý½½½CCCggg™™™kkk½½½¶¶¶‘‘‘jjjOOOþþþªªª´´´½½½­­­¶¶¶‘‘‘jjjOOOùóåýüúFXâèÿþÿÿþþÿÿÿÿþþÿÿÿÿÿÿýýüûùøûù÷ðYxx ’‘ýÿþÿÿÿÿÿÿþÿþÿþýýþÿÿÿýýþþþþýþþö÷ù31- C4lôõöÜÞá-éÿøùúõ÷ùðóõ1EFééêùúü÷ùûüûüþüýþþüýþúûýúüüúûýùúýÃÙèM3"÷ûýýÿÑÝå   &“eGüþþô÷úûýý¢ÀÖþþÿÿþþþüýþüþþýýÿúüýýýýúüýn„ººº½½½ ¹¹¹[[[[[[½½½VVVr–ÀŽj@n˜Ö’h*z3¡„X¢Û ^%ó”i¤‰V€EðS«ÎBöíár£óŽ] fךs)ޝÉrQ7øñèYmŒ-V…z=ï}EûE]¥ŽkZt©¦ŒW]x¤£ˆ\¨‘c¨`Ujš«–f°°°½½½VVVJJJJJJªªªLLLJJJJJJ?^c  -UyÓ«ˆùÿüûùüûúhaP ôõ÷ýþÿÿÿÿÿÿþþþýýþþÿþþþþþþÿþþþüüü**& üýþûüÿùÿÿÿÿ ž¤üüýöøù$3<ääçñññûýô÷úýþÿüÿÿÿÿþÿþüýþþþÿüýþÿÿÿ÷ùûò÷ù÷úûêðõ Õàç-   ÿÿÿÿýÿþ ÿÿbC-äìò°ÊÜøúÿÿýþÿüýýýþþýþÿ*áíönˆ—d…¹œ{GȨ“^}`ñçÞ+l‰¬”wT­št¦Œ`Ž] šs)!*¤Š`§“t]w’=]¦ŒW£ˆ\«–fm•Ê÷þ 1kûöð*1"Ï¥€ÿÿþÿþÿþýû:1#$'%ýüýÿr€€ÿÿÿÿþÿþÿþÿýþþýþþõõ÷ ëíðùúüö÷ùôõ÷ùùù065åæèþ4çÇûÓþÿþÿý –Ýöúüþúÿÿÿüýþþÿÿþÿÿíòõòõ÷ÿþ ãìóäëîôøûýþÿÿÿþüþÿûýþýþÿýþÿûüýÿ:'½Òâÿÿÿÿþþÿ ùüþüÿÜêòl‹˜üœ{G\u ¤‹`–}`d‰ÏœwM”wTn“Å’m;\x¯¤ˆQ·¥­ÄÀ,—p4£‰]c…Ë{5^}¿¢ƒAüo™Ò , ÿþÿ×Ðâ'Z&+ÿÿýüþýûþýýþüûýûúôîç&#ú÷öøÛÂúùûûúûþýþýþkyz—‰‰ñòó ùÿÿÿþÿþÿýýþôõöõõö ô ýýýÞáæÝÞàMÕ üþÿóöøùûüÿÿÿÿÿÿÿÿÿþÿÿëðôøúûO;*ºÇÔÿô÷ûÿÿú÷úýÿÿÿýþþúüþ|aIÿÿûüý÷ùûçíò«µÅþþÿçñÿýþÿrŽšüf‚¦ÿþý<€»ܺ’¤‹`œw1’m;¤ˆQ!) Ui›«—e^y§¢‡Y{5f„ªš|Vùñäüe†´ !ýú÷þüúýýû÷ÿýúýûøþüúÐÀÅ'2*þþýþüûþýüþüûüûøüúùìù  'UÛúúòüú÷øóî^kmÿ²£¡þýýýÿþÿôööýýþýþýüûü_ns®›™ûüüøøùÿÿþn;ï"áÑ×ðøûùýÿùüþþÿÿj'ùüýõúü©äõÿÿÿÿÿöùúýýþûüýF4%ìñõ  >3(´ÃÑÿ÷úý ùûüýûýþùûüéïôùûü!"ôýýþúüýðôöéïóMF9úûü÷ùúùûý÷ùúC_søš~Z€EòE`i„¦—|ZgŽ×™r)hˆ´ùò쟆`gÛ™q%Œu^•¹Ù«—e¢‡Yš|V©’][t ¥Œ`c†Ïz1YqŸ§ac­Sø[s– û÷ñÿÿþþú÷þýúýú÷þýúýûøÈ®¡/EOþýüüúøúöó#þüü ­ÓèôíçT5BPSÿÿÿ¿²®ÿÿÿÿüüüþþþýþþþþþUioýüüôóô8ü Àáÿÿÿþÿþ‰Q-ýÿþüüþ òñéê è#0|ñóôÓÖÜÅÂÇÿÿÿÿÿþþÿÿÿÿþÿÿL8(óöùíòöíñõ G:-ÀËÕ óøûþÿÿýþþÿÿÿÿÿþÿÿôøúûüý2,$Þçîÿÿÿÿÿìñôîòõ %ÄÂÉ3"É£ þÿÿþþÿþÿÿð/WRd®œpd€¦œ€Z /™r)ùò쟆`hĘs<ÿòkG'^z¥¢†[Zs ¦`}¸¥Œ`ôçÐ1§aS¥j]x ùòìþýýÿþýÿýûþþûþüúÿýüùóèùóìõîêüùò  ÿþþýÿÿÿ ´ØòõîëùõòH;AþþýʽºÿÿÿÿÿUC/ÿÿÿí.òðñüûüÕ­˜!÷úüðõùh;íôøÿÿÿýþÿûüýô÷ù×ïö26)% þÿÿþþ 62,40*÷øùÎÁÀÿÿÿÿÿýýþüýþëñöõøù=*ÐÝåÿ91(ÄÎØô÷úÿÿýýþÿÿþþÿÿþþÿØâêúüýøùûæìðßÕ×'þÿøúýÿÉ£ãëòLkWl‘©”o\v¼¤ŠDòœ€ZSf•­škh‰·˜wIgŽÜ™r$Ÿ†`ôéÝ<ûöõ¢†[^z¥¢†[j•â–k¦`YqŸ§aVi‹ª—u©“aZp“¦m£ˆ`]v þýüÿþýûÿþüþýþýûÿýûøòç!!ùóì   þýüÿÿÿÿÿÿþýÿþþÿþþÿþþÿþÿ  ¼×é%êUì   üÿÿÿÿÿîøûß)6 þþÿþÿþýýþúãð÷ôïñôåíó ûýþýýÿùûüõùúÝçííó÷/2 øùûÿÿþÿþÿÿþþÿ#25ñòôÞÒÐÿÿÿÿÿÿÿ(    üýþC üýþüýþÿÿÿþÿÿ(; {˜³ÿýýþXF3êðøÅÔßëðôÿÿÿkQ;ˆ¦½ ¿ÂË øûþþþöü ÿÿÿþÿÿøúüóøû¤ŠD­œ~­šk`{¢ …^˜wIu˜¿‹hA™r$\x¶¤ˆJ¤Š_÷íß>Vi£ª—]¢†[fˆºšxFùðä§aª—u-L£Š`\uŸÿþýÿýûÿþýÿþû   ÿþþýûùÿÿÿþÿþýþüüÿþýÿþþÿÿþÿÿÿÿÿÿÿÿÿ 2ܪüþÿ÷üþ¶ $+ ÿ ^[P±°¹÷úüýÿÿQL?úüüš¤µ95-½ òô÷ÿÿþþÿÿþÿÿýýþýýþôöùö÷úQ3 êðô³Ïã5%  ÿÿýþÿýþþþþÿýþþóö÷îýqYCþÿÿìëë ü[J7 ýþþûüýúûüfQ>¸ÇÖêïôöùüæîô ÷úý üþþþþÿúüýäìò' `~²-GŠU`¼ D‡Á …^d‡Âœy>®ÝþR#ôíçfˆÀšx@ùòå ª—]šxF{:]x¥£ˆ[c!¤‹aŒÂü úÚ  ëûùòìùõðáǯýûú ýûùýÿÿþýýÿþýþýüþþýþýüþüüÿþþÿÿÿÿÿÿÿÿïùüÿüÿÿô÷úûýýþþüüüüýþ273C]Þ­‘+$  þþÿ÷ùúmbQäèíàôõùñòõûüýóõ÷ÿüýýýýþøùùðñóÿ   ýþÿýþþýýþûüþûýþø÷ú¿ÎØ2$ ¶Óä)! øûü ^K9«½Î èççùò÷û ýþþÿÿÿÿÿÿò÷ùXu†£‡S ‚N Dy?ùt¢ãŒ^œy>s‹£æåü¿)K“g—{Z[u¡«–eøòîXn¨’pfášsi‘ë—o£ˆ[j•î–k—¾Ú %" 7 þýøõï_¦kXpž¨b„N³äThš¬˜f`~Ô ‚,­šjYr¬§ŽTWmž©“b¬˜lz•«ôðîúøø ýýûüúùýûùõðïýüý2å $<i09ûüüïá©Áÿÿÿÿþþÿýþþÿˆ…yøøùýýýüüýÛÝàŹ· ýåêï:71 ýýýùóíÌëðµ¾ÙU;'÷   !7.&ôöùþÿýtaL™©¼üýÿüýþüýþüýýøúüùûüÿÿäêï  ßíôÿÿô÷ù ÿÿþÿò÷úÿúüÿ ýþÿüýýùûüðõùCCC½½½GGGÒÒÒ³³³óóó ¼¼¼HHH¸¸¸­œjjH,õìè_|©¡„W™r›ZWmž©“b”hþþþMMM‹‹‹³³³SSS­­­äääaaaœœœCCC½½½‰pVk•ÿÿÿþþüúøüù÷Akùòëü1]ë΢ÿþúùúøÿÿÿþÿÿÿÿÿþþÿþýüûITNüúùù÷öñÑ  þþÿö÷÷ða`ððó  ÿþÿüüýýþøX9$¢ÃÚíüëèðR@-  SA/O>,üüþÍÕÜþÿüýþüüþÿÿþÿþþþúüþüýþÞèí)jYF•§»øûýÿÿÿýÿÿÿÿÿþþÿþþþþÿþÿþÿÿíòõp_Jûûýûýýþ øùúøùúûüýþÿÿ¤²Äõîòÿþþøöõ ó÷ú ûýþýýþõøúùûüSnCCC½½½´´´½½½CCC½½½ùùùFFF………¸¸¸–¸ÔjH,p¢ù^®u¡„WUj˜«–hWmœ$K—oaÆŸ:©“bмñvD¤¤¤PPPýýý½½½CCCggg™™™kkk½½½­­­kkküüü°°°öööQQQYYY½½½Ì3~•kx£Ö   ÿÿÿ ýûøüøó ,)êÍ¡ ÿÿþýüÿÿÿÿÿÿÿÿÿÿÿþý/3-èáßþþþûÞýôõ÷ýþÿõ÷øýýýïñå ûüüüýüþþþýýþùúúÿÿÜ!"éÝÙñóþ:2*íðóýýþûüþúþÿÿûüýñóõ ñôö þþÿûüþýÿþþýÿüýýûüýÏÜç3&m[G†›±ÿÿþÿþÿÿÿÿÿÿÿÿÿþþÿs`Jÿÿÿ³ÅÓÕàé  }iSþÿÿþÿÿýüýpÆ\!ØTþþÿÿÿÿÿÿÿÿòöø   ½½½LLL½½½½½½ººº„ ¹ãë2HÉ­˜7Sh^«–hpœÚìÙÆ¤‹` C—oŸ:Vl™6RXtBvD°°°½½½VVV½½½••• ¹¹¹½½½q—Æ   þüûü (3&ÿ5fôðîìåá¹Ãÿÿÿÿÿþþÿþýÿÿþøùþ  êäáþþþÿÿ õ øùûþþþýýýúúüôôõóóöûüþÿÿþÿþÿþÿüýüùùúúúûïñó;%°Îàêîòóöú ÿÿþüüýöøúìïò ûü÷üýþþÿýþýûüýüüýîòõóô÷ýþÿýwcN}“¬þþÿþÿÿ€jRÿÿÿÿÿÿÿýþþÃÒÞ  ýýþöøùûýþ}+˜Î#R9(ÇÈήËߊ\>ðõ÷üýþ=aVmª“c„ ¹|`G7ShÉ­˜@2%÷!Ci’ò—ne„ã›|[s¥c&šs!ªÚtBf„© ÿÿÿÿÿþÿûøöüýûùþýû÷Ëûúþþýþÿ=G>ÊÒ÷ýúöýú÷ýúöxX"ž¥ ûüüýýýùùúñóóääçïðôþþþúúú÷÷ùóõõôôôME7o:þ¡¢­ðò÷ýýþÿþÿñôõ ùø úûüüüýùûûòôöúúüK;)ûüýýöøõ ùûüûüým[Díðô%ÿÿýþÿÿÿÿÿÿÿÿÿÿ½ÍÚ ÿúûüúûüþþÿþüÿýýþøþûýþÿýýþýþþüüþüýÿ#ÍÌÒ|R þÿ ôʦõøú>`ª“c|`G7Sh͸ Ù C4'ÀÎÚ'F_—nZs§¦Y›|Rd”®œl¥cV&&j”êêÓª¬™lýúøýûøýûúüûøôÿýûýûøþþüüüüøööÿÿ÷õõÿþþÿþýýûúù÷ôôýÖçù}[" ÿÿnpg—•ž ÿüüýÿÿÿôõöóóó ëìïñôüüüûüüýýýüüüýüý^UDèØÏ'6> qüýý{üýý`7ñöø¶Üäûüýþÿÿÿÿÿýþþÿÿÿÿúüüþýþ ÒÚâ!  üýþüüýÜäêÿÿ¥¹Ê ÿýþÿûüþöøûþþÿýþùþÿÿþþÿýýþýþýþþÿýþþýþÿð¾ÍÞO, ýþþ÷úüô÷ú]s£>c} ÿþýž…cµæ òîíÿþüZ. *H`ç@2箜ld‰Ó /^þj”ê–l–llüùöøóîúøÿÿþþüûþûøþýûðóêüüþøõôïéåZG2ÿÿuwo~}‡ÿþÿtvlûûüîîîííîçõèåã'ÄÇÑûüûüûûbF* þòåùäØýóõøõøùyuiüýýùùúéëí÷òô`+1 Ù©¦  øüýøüþüÿþžñýýþýþþT@.ÓÛâ ùûýÿÿþþþøúûûüýÄÏÙ6,$÷øúõøûüþýþûüþÿÿÿýþþýýþþþþýþþýýþýþþ Ùåï ýþþÿÿÿó÷úÿÿÿ£>ƒ`qˆ x` ç9¦Yeˆà›x i‘Þ—o"hç˜pœw-þ–l¡‰ia{Ÿöïéýúúþýûýúøþýû÷ýøåÜûûùùöõfS:ÿÿÿÿÿÿÿÿÿÿ„…züüýúúúúúû èê ü TQE ®¯µ0$' ÿÿ üýþ üýþîäØóõ÷$ ÷÷ùóà×í×Û"   üþÿ]þøå#+úüýüþÿýÿÿýþþô÷ùýþÿüýþÿÿÿþþÿÿÿÿûüýûüýúûý´ÂÎòõø ûûýþûüýýýþûüüüýþþþÿðóõëîñçêñ þÿÿÿÿÿòöùn„x`c†Ìz4›x —o"÷íÛnø’cþüûùùôîë0>Eûúú÷ô6ôñ諸ºþêL>*  ÿÿÿÿÿÿÿÿÿÿÿÿýþýÿþþþþÿ  äãå3-%°¥£$ûüþÿÿÿÿÿûüýýþÿüýýûüýüýýçØÏ úô$ºÃÏ ùýûýÿÿÿûþþûþÿ÷ËÊ03½ÊÔôöúÿýÿüýþöûþþÿÿÿÿþÿÿûüýô÷úVD3­¿Ðýþÿùúüÿÿÿûüýüýýõ÷ùñôõXG62×ÔØ)Lfÿ z4Wk§©•YdˆÓœx-¡ƒ>’cÿ øî éÿÿû:9 3úùúþÿ `hSëåâ ðÝÿÿÿÿÿÿÿÿÿþþþþÿÿÿþþþÿÿþþþÿþÿÿÿÿÐ×ÞïîðôöùüýþþþÿúûýÿÿûýýüýþúúûþÿÿÝòü øîøûÿþ üÿÿúüþóúüäò÷øúïòöÿùûýøûýôöúþÿþþþÿþþÿýþþïòõñôö$õ÷úF7)ÀÎÜýýÿúûýüýþÿÿÿíðó÷ùú þþþ+.+éϵ1Kÿ m™æ“g]yé•Yœx-ÿ üúðÿþþýú  éüüýûùúúùùÿÿüûüýüûþýýüûûøöõüüüÿüýýÿÿÿÿÿÿÿÿÿÿýþþÿþÿÿÿþþþÿÿþþÿÿþþýþýþýþ  ×áØñôøùûóùÿüýýúúüøúûðô÷ãèî ÿû1<3ÈÀËóúýýÿÿüþþýþÿöûý32õ÷ùB6,ÄÏÙ þþñôøüýþþþþøúúñô÷Úáçþþþþÿÿ÷ùúúûüøúøúûwaJÿÿúûüúûü éÍ´3Lÿ ü“g£‡=]yã‡=z®ö†R ÿ ü­¡kOXƒ÷òý†Œ_©¬º÷õöñîïÿÿÿöóñóïí#üûüþþÿÿüÿþÿÿÿÿþþþþÿÿÿþÿþÿþþýþýþýÿþÿýþþÿïó÷øúý÷ùûîòö þþþþÿÿþþÿýþþõ÷øùúûëïóøòóÕøø $"ÿÿÿÿÿÿôüýçÛßýÿÿ+*óõø1( ÕÞå ÿöÿÿÿÿÿÿÿúûüùúûõøù=1(òõøþþþÿÿÿ.#ÿÿÿýþþùúûýþÿãëòÿþþÿýýýþþþQB2 ñôøÿÿÿûüýýþþýþÿ Üììðó8Maÿ ü£‡=†R gŽç™rÿ ü±¨}´ÂÅ  b`S‘þýüöóò7&ýýþúûûÿÿÿÿÿÿýÿÿþÿÿÿÿþÿþÿþÿþÿÿþþÿþþýþýþþÿþýýýÿþÿþþÿýýþ(5:ÜÎÉñõ÷óöù ýþþÿÿÿýýýõ÷ùùúûLWXøøùúúû÷÷ø÷÷÷¼¯­-1éÜØ "÷ùû àæì÷ùúÿýþþ.%ÿÿÿÿÿþþÿõ÷ùþÿÿ ü 'ÇØæòô÷ñô÷úþþÿûýÿÿÿÿÿÿôâÜÞèî%/0ùúûûûýåêð?Sdþ ™rSf•­škþ “¡$((ÿÿüüýüüýgh\ýýý—3KXýûûãÆûüýûüÿÿÿÿÿþþÿþþÿÿÿÿÿÿþþÿÿÿþýýþþþþþþþþþþþþþýýýÿÿÿþþÿ÷÷øööööö÷X``­¥¤÷úû÷úûÿÿÿÿüýýQYYýýþÛÆº+#ÿÿÿþþÿÿÿdUBý&8ùûûûüýùúüüýýÄÑßýþþL35  ñõøªÇÞ÷ùúÿÿþÿÿÿÿÿ6%þÿÿýýþ-$÷øúñõ÷»ÐâûýÿùûýøùüÙÒÑ6& +û üþ* ܶ˜Jhÿ ü­škÿ üc†Å1÷öøïíïôóõXYQöõôïíí?1÷õöÁÝúýýüýûûÿÿþþþÿÿÿÿÿÿÿÿÿÿþþÿýýýÿÿþýýþþþþúúúýýýüüüöö÷õõ÷5)ÿùñ WXPùÿŸ™›þÿþþþÿüýýhljÁ²ªK=0 øãÿÿ,$þÿþÿÿÿþþÿÿÿÿþÿÿ ùúüûýýN> øúûûûýÀÎÝ8$  ^@(üüý¿ÏÜàïùÿÿ- þýÿüþþÿüý J4"÷ùú¿Ôæ  ùï%ýþüýÿûþþÿþþÿÿüýÿ Ö¬‘*Toþ ñ_}É¡ƒ7u¨ö‹X `Ä <j•êèÏž®œxþ ñ[v¨íìí õ  üüûþþþôóóöôôíëês}°„yGùúûýüýþþÿýþþÿÿÿÿÿÿÿÿÿýýýüýüûúûüüüúúûþþýýýý ÿüüüõöøccZÓÆÁ  ë×QB4ÿÿÿÿÿÿÿþÿÿÿþÿþÿÿ üüýùûüúüüRA/ÄÊÒûüþïô÷úýþÿûüýùûüîöë  ýÿÿýþþüýüýþüüþþÿÿ ÷ùúF0öøûÁÕæùÿ÷õùúüÿ üÿÿÿüþÿ÷úý þ ñÿÿÿlll”””ÊÊÊ666OOO±±±ííí¬¬¬TTTCCC½½½¡ƒ7u©ù‹X  <–kxþ ñMMM³³³CCC½½½```   |||äää   ¬¬¬---'''JJJ   ÿÿÿMMM³³³üøñþüúâ7êÍôóõýýýþýýôóóöõôÝõ-úòÔñðòúùûúüýýûûüÿÿÿÿýþýÿþÿüüüüýüúúûýüüûüüþþþæÞÚ -(ÿÿññõõöùÿÿÿÿÿýýüúûü÷& ÿÿÿÿÿÿÿþþÿÿÿÿÿ ÿÿøùûêðõ õïôø  ÿÿüýþô÷ùèîò ÿþþÿþþÿþÿþþÿýÿÿþþþÿÿÿÿÿÿÿÿÿÿÿ ûD/òõ÷¦¶Ç"÷ûý   ýþþüýþùûüõøûèïó÷ öööìììôôô666PPP}}}333ôôô{{{~~~QQQ½½½ïïïc}Þƒ"‹W÷ ºººòòò„„„```MMMCCC½½½```‰‰‰©’g[uª Üù(ôÃå<ÿÿýÿýüÿýûöüöã_X6ÞÛÝøùùÿÿÿÿÿüüþþýþýþþÿÿÿþýýþÿÿüüüüüüûúûýþýýýýþýþíïòßâçèêî úûûóôõóóõÙÜâA&1ÿÿÿÿÿÿÿÿÿþÿÿþþÿýþÿÿÿÿm\Kš©»ùûüöøúùûüÿÿÿÿÿÿúûýÿÿÿÿþÿþýþþýÿÿÿÿÿÿÿÿýþÿþþÿýþþýþÿöùüŒrYúûü”¦º öùûùûüëñôKôþ ÉÉÉzzz333   ªªª™™™vvv½½½½½½yyyÊÊʆ††777´´´………CCC½½½{{{ããã•••ƒ"y±‡Oü„¼|Dþôþ   PPPýýý½½½CCC½½½FFFÍÍÍ333½½½¥¥¥§§§¥‹VVlšeg<%ø÷÷úøø÷õôÛÍËýüûóùÿüü÷üýþüýþþþþþþþþþþüüüüüüüüüþýþýýýþþþçéíòô÷ýýþýþþññóQ6: ,üýýÿÿÿÿÿÿÿþÿÿýþþþþÿþþÿýÿþÿþÿýþþýþÿ[N>ùûüö÷ú£³Âýþþ-*% ÜÚÜÿýþÿõøúþÿÿüýýÿÿÿþþÿÿÿÿþÿÿÿÿÿýþÿýþþýþÿüýþüýýòõøóõø£µ>."O;* ŒªÃÿÿÿüüþøúûpT; 7Yõý777½½½VVVVVV‡‡‡LLL½½½………Xm¯¨“Qu§óæÍ®¥Œ_‡Oü]xãˆ=‚¸ü~H|Dþõý°°°½½½      333   [[[[[[ª”f®ÇÒ  ÿÿ øööðìêæÜÖ^>%’¥¼ýÿÿÿÿþþþþÿÿüüüýüýüýýþþþýýüþþþüüüîß   ÿÿûüýþÿÿÿÿÿÿÿÿÿÿÿÿÿÿüýþüþÿÿÿýþÿÿÿÿýþþþþÿþþÿýþþþþþþÿÿþþÿþÿÿPC6øùúÙàæÖÖÙúüþô÷úüþþþÿüýþþþüÿûþþþÿÿÿÿþÿÿÿÿÿþþÿÿýýþýþþýþÿûüýüýýòõøòöøøûý ýþñõùmR;ýþþýþÿñõøå¼ŸDaõý¨“Qf‹äíÚ²­›j‹Y Y_£ˆ=p õ` …½{Cþ~HõýÌ3~œ°»  ÿÿÿÿÿÿÿþþÿþÿ 7¤ÉÕ:PUÁª¦ýÿÿþþÿüýýÿÿÿÿÿÿÿÿüüýþþþýýüþþþýýýýýý õö÷ÿÿÿûüýþÿÿÿÿÿÿÿÿÿÿþÿÿþýýýýÿþÿÿÿÿÿýþÿþþþþÿÿýýþþþÿýþþþÿÿþÿÿÿÿÿþÿÿÓÓ×E>úûýöøúÿÿýüýþýûýþüþþþÿÿþÿÿÿÿÿÿÿÿÿÿÿýþþüýþüýþûüýüýþòöùóõøöõõýþõøü úûüüýþïô÷ïó÷öüv«úŠU÷ïÒ­›jk–å•j` {CþöüŽ–%-0ýüýþþÿüüÿÿÿÿþÿÿÿÿþþþþþýýüýýþþýýÈÁÂ:PUòðï?áñôööøú¼Üûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ+6 þýýüüû ýïÞÐÐþþöè ûüþþÿþÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿýþþþþÿþÿÿýýþþþþýþþýþþÿþÿþÿÿÿÿÿÿïòõúüýóöùýþÿùûùûü ùÿÿÿþÿÿÿÿÿÿÿÿþþÿÿÿÿýþÿûüüüýþúüýýýþòõøòöùîðõþÿòöù  ÿÿÿþÿûýýðô÷öøû9õüf‹çšul—ï”i€¦Ï æéõíö£†Jk—ö•i •jõü  üûüÿÿöýüýÿÿÿþÿÿÿþþýýýýüúøøúøùûûû>òòÍ9.ûýþêîò¶ÄÐáøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ'2   ÿÿþþýüü-#6ðêèþîãóþÿÿüýþúûýþÿÿþÿÿÿÿÿÿþÿÿýúÿÿÿÿþþÿþþþþÿÿýýþþÿÿüýýþþÿýþÿÿÿÿÿÿÿÿÿþÿäéî:95ÅÆËÿøúüöûüýýûüýýýþúüýýýþïóöYF6þÿÿþþÿ£³Ä ÿÿÿÿÿùûûm‹÷üfÙšs'šuf‹Õšu+Th˜¬˜h”iZt­¦ŒS€Z1nŠ«’vU•i ÷ü õóôøÿûûúüûúýüýúùøüûú$óÑô÷ú÷úüöøú.%ìðÄÞ÷ÿÿÿÿÿÿþÿþþýý   ÿÿûúû öõ úüýøúýþÿþþÿÿýþÿÿÿÿÿÿþþÿþÿÿýýýýÿÿýýþþþþýýþþÿÿþÿþþÿ÷ùûëõî %'' ×Ö×øûûøúûüýýýýþûüýýþþÿîòõô÷ø[G8ðôøÿQD5ýýþûüýøúûøúüûüüÞåëfo†öûšs'Ti™¬—gšu+¬˜hs¤öøðã•l'¦ŒS’vUcƒÞ}"j•î–kdƒã–köûðíí  þþþþþýÿþþýüüüüûýüýûúùøööñòúûþ÷úüÿÿþþþüýýöøúøúýòôùGwûøõõîç$ùÑ °³½ þþøøøþÿþýýûùùù÷öù÷õü%BýÙ½ûýþüýþüýþÿÿÿÿþÿþþþýþþþþÿýýþýþþýýþûüüõ÷ùêïòóõ÷ìõý üÿøôýþÿûþøúüûüýÿÿÿÿÿÿîòôA4)ÿý  úûýùúûûüý=<5ñÛ %>÷ü¬—gc…Ê{6`Å ;‰¿ùwAn›â’e\ '{¿…cA}"–kœ}s¦ü ‚L÷üóðïý ýúùú÷÷þýýþþþÿþýþþþýýüýûüýþýüúúõóòüîïûýÿ  ýýþúûüõ÷ùøùúðô÷ìïòúèùóïõïèý üüýþÿÿÿþÿþþþþþÓÚéþþ÷õöÿÿë  ÿÿþýüüþýüûùùùø÷üúùñîìùûýþþþþýûüýÿÿÿÿþþÿüýýýýþûüýüýýûüýúûüñôöðóög\N÷øùñôöÃÃËäêî Ûâéÿÿÿÿÿøúû  èìò    þÿùúýÿÿÿýþÿþÿÿ÷ëçííñÆçëï!6Køû{6øïà; ô’enœé’dèãfŒÆšt:k–ô•j Z~´ü‚Løû€uyˆ”þþÿþþþþýýþþþþýýüüûüûûú÷öûûú!8êáËêóýþÿÿÿÿ%=Eÿ¿ÛÝùõðôìæýýüüþþþþþÿÿÄËÕ÷õõù÷÷øö÷ ýýûþþþþüüþþþýüüûúùùöôåÜÙ ÿûüýøúûüýþüüþüýÿÿÿÿÿÿÿÿÿÿÿÿýþþûüüüýþûüýýýýûýþõöøðóõñô÷ ¿¼À  R@.þÿÿýþþüý*÷øûóöø üýþÿÿÿëïó´ÃÓ + Ôç÷ôöù  ûüþöûýþÿÿÿÿþÿýþ ÚÖ×ü !øúi’ç—n¨[Sd‚­œ~\xµ¤ˆK’de‰É›w7€%gé™pm˜Ü%Aùj”Û–l%•j Th™¬˜g}´ýƒL‚Løú‡xlºØæÂ³³ÿþþýýüþþþýûûø÷öüúø+# /W¡‹†d{€ýýý&*ýþýýüýýø÷÷Þàæûúûþþÿÿÿóðñ(14ÑÆÃ öóò ýýýþýýýüüÿþýýýüùöô÷ôó^b\ûúúͯ üýþÿÿüþþúüüýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýþûüýýýýûüýýþþûüýïñôóöøF4%ÏÊË#  ÿ÷ùúÔÚá@7-¦¯º6'eD* Gþÿô÷ù²Ë ñõøýþÿüþÿûþÿÿÿÿÿþÿþýýþ÷ùûúûüêåäøû—np5ôc‡Òy.­œ~¤ˆK›w7™púõì‡Oùü÷ð¬˜gƒLøû¤¯#& EVX «–“L_aëæä$Ÿ¡­ýýýCA8  j‡ÿþþÿÿÿþþÿÿÿÿýýý . ÷÷øûúúêîó95+º¼Å  êåäõóòÿÿþüûúýüûÿÿýüû[]Uýýüöôõûúúýþÿüýþÿÿüþüùúûüýûüÿÿÿÿÿÿÿÿÿÿÿþþþüýþûüýýýþüüýýþþûüýðôö2$ ÿÿúûþÿ !×Ûá&õøûûýþÿÿÿô÷úúïó÷øúüúüþ úüþþÿýþþþþþûüýöùûûüüãéïPeuùúoã‘cy.l“È”m8ûõï“Ëm5úgŽØ™r(Ón`ÿ.’ Sd•­œkùú’´Î0E ÿ ùöûûþøý9Xmèß×.+"üûûöôôýýþÂÏà%)(  ÿþþÿÿÿþÿÿÿÿþÿÿÿþ þöùøøèêñC@8¸¹Âòîîÿÿk[CûûûððñÖåõûúûûûú /A ýýü罨ÿýýüýþûýþÿÿÿÿÿÿÿüüýýýþûýýýýþûýýýýþöøù$ùûýõ÷ùú þÿþþÿüýÿþÿýþÿÑäï$ùü   ýýþùûüV<)²ËÝìðõöøü ùþþÿýþþýþþúûýøúûüüýåêðùû‘cZr¶¦ŽJuŸÕ‹a+b…Ïž{1Ž»çn?ž~Iç×È52làˆÓnÿÁíõm¥«šu5­œkn™Û’g%ùûþþþüúûûùÿÔØãúùøïêéïßÕ$''  ýþþÿÿÿþÿÿÿÿÿÿÿÿÿþÿþþýþþÿýýÿúúûæéð;90õþþÿÿ1¿Øí (%"ÿþþùø÷ØÏËúÕÁÿÿÿÿÿÿûüý4-!óö÷ÏÔáûýý *$ÈÈÎÿÿÿýýýþýýþþþÿüýýýþÿñõ÷ôöùöøûßéñ ÷ùúüâêï?0#ÀÐÞõ÷úþÿÿþþÿþþþüýþûüýùúû>0!Ndsúúÿ]yÁ£‡?u¤ä‹\Vkœª•dŒ]¦ŽJðä×+pœÛd%ýùòrE…­Õ‰ºï j1øq“ºmFÓn`ÿÁíõm¥«e‰¾›wBYr¢§Ž^úúÿ~˜¯"òíë õûùøöòïöñïõåìúùøóç!$$ ýýþøùùýýþþÿÿÿÿÿÿþýþþþþþþþþþýÿþÿÿÿúþ÷ìî÷öêà +(òóõüùúüõÿÿþþþþúúû°ÂÑ!ÿÿúùúÿþþþÿþÿýýüýýþ&*ßüý÷Ô¿TC/øúûùúü¾ÌÜ @6,  MB7øùûðòõ×Ýãðô÷ûüþûýÿ  þþþýþÿüýþþþþóöøòõ÷1+%úûý¾ÅÍ üýþýýþýÿþ($VB0  ‘«Âþþþÿÿþÿþþþÿúüü‚eKþþÿîòõðó÷úúÿêêêýýýCCC½½½¹¹¹GGGMMM³³³XXX¨¨¨üüüuuu£‡?m–Ö“j*_~É'&Œ[l—Þ”i"‹\ª•dhŒÁ˜t?iŠ·›}Td%_x™&AwFh„Ÿ~Ù0‚X)q“ºmFêúýÁíõm¥«Õô+ þ­ÇÖÁÑÿ’h+›wB§Ž^úúÿ^^^¢¢¢CCC½½½^^^¢¢¢CCC½½½üüüuuuÿÿÿWWW‘‘‘ÿÿÿýýýPPP±±±gggßßßQQQkkkÕÕÕ‘‘‘‚hQ›´ þýýþýüýûúôïëöñîWK7ÕÔüüýúúúþþþýþþþþþþÿÿÿþÿþþÿÿþþÿÿÿÿÿÿþýþýýþüüýþÿÿþýþýýýüöïñû÷ñóãäè óþþþ÷÷÷ûúüúøúñïïûûü÷õöþÿþþýýöôóûúúGesƤH<0 1)"ôöøˆž¶ÿÿ{jUÔÚáÃÌÖ0)"üýþýýþüÿýøúûøùûýþÿ2.'ÐÔÛïòö÷ùûÿÿÿýþÿüýýýþþóõøêïòJ8(/D¨ÀÕþþÿm[F¢®¼úûýýûüþþó÷ùãåíVH6ûüüûüýùúüÈÙä&õøûõøúùøÿ½½½QQQ¯¯¯GGGÒÒÒ³³³CCC½½½£££“j*¡‚7m™Ühï˜s˜t?—vI¡ˆg˜|Y~¨×‚X)Yq³§MŒÀømF½h]C˜£.µÎÚïìë+F;»×ç’h+‹Äu<úùøÿþþþþþþ£££DDD½½½üüüMMM³³³³³³¹¹¹›››cccšššüüüeLq‡žÿþýüúùùöóG;+þÿäãåäãâõôöÿÿþþþþþÿýþþþþÿþþþÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùüüûúùúûúúüýüþþÿÿþþø÷ø ääç  üüüððñðïù  úøùÿþþýüüüüûóïîáÚ֭ϹM@3ûüþüýþüýþ ûýþ÷úøüüýöøúUF4ÈÒÛèëñúüþýÿíðõüýÿüýÿöøûÿÿÿûûüöøúäêï984ÄÆËûüþøüüýþýýþüýýøùúdM8 ýýþR=)åêïúûüô÷ù )ÿÿÿÿÿÿùúüùúûôüþåïôüü°šŠPfvûúþ>>>½½½ªªª™™™CCC½½½CCCCCC½½½´´´½½½CCC½½½pœÞd"“g$ñâ¾Søðå"‚X)~¨×‚X)§M»g[1Š™öv§­µÎÚ &(ïìë»×ç_}»,GKy¦Üôìæòæ ¡ˆ2ûúþ¤¤¤PPPýýý½½½CCC½½½¤¤¤PPPýýý½½½CCC½½½½½½fffûûû“““¶¶¶™™™CCC½½½ÔÔÔqqqWWWöööpppûûû“““ yb’  áàâÿÿþþþÿõõõûüüÿÿÿþþÿüþþÿþþÿþÿþþþÿÿþÿÿÿÿþÿÿÿÿÿÿÿÿÿÿþþþúùùûûûúùùùùùüüüþþÿþÿÿùøøøöüöüìì21'"!8®¾Ò ÿÿÿþþýù÷öúøùù÷õuiVìðôýþÿøúü ùÿûüýþýþëïôÝãê*êïÜáçö÷úÞäê  üýýüüý÷ùúìïñ(,+EIDâàäØÖÙÿÿÿÿÿýýþýþþþþþI8) ïó÷ñõúÿüýþôöùúûýÿ"  ÿÿÿúüüüüý üýþúÿüúþVVVVVV½½½½½½LLL½½½d"§‘Sœy=pœßd!†Âz>òt¨ŒXe†µ›zK{S+‚X)»g[ÂG òøv§­CK2&Ëèö\F;´­ƒulS9*…ºò{Fjа •sF‡Z$$z§ß†Y!üúþ°°°½½½°°°½½½šššVVVVVV,,,»»» šššqpn´ÉÏõòòóòñøööÛÐÐ ÿÿûûüÿÿþÿûüþýþþþþþþþþÿüùùÿÿÿÿÿÿÿÿÿÿüüüúùùûûûúùùùùùüûûüüüäâã_llîÅ«û#  vg$ÿÿÿt‚‚ Ž ó  ÿ÷úú÷øúÜâè)&$Ï×ßkB&"ƒ¯Ðôöùçëñ ýýþýþýùúü\[R$# õõö,.+´µ¾óõöTA/óÞØ ÷üùûøþûÿóúüòýýþîòõéîò%7>Áºº ÿÿýýþ5,$ðÓ¹-GûúýhŒÅ˜t;z>òSc–­jŒX›zK»g[ÄJ’ýûv§­Ëèø5)3:{Fú÷ùœPo”Ä!ûúýÄÜå $'úùùÓÇÆüýýÿÿÿÿÿûûüýýþûüþþÿýùùúÿÿûûûùøøüûûùøøùùøûûûùøùXdeûúûñÛÑ-ÿÿÿþÿÿÿÿÿÿÿþÿÿÿþÿþfwyÿÿÿ—‡†ÿÿÿÿÿÿöøúRbc)ûüÖÖØFêðõø«Îå4-# ¸ÇÕ'&! ÿÿÿ^]RÒÔÙýêÄÓß'  øûü÷úüó÷û¼Ùäopg§¥©ûüýöøûÿýýÿúüýûýþüÿÿÿÿþÿýþþûüýýþþûûüöøúÞ·£2I]ýúþ|®ï„Rc„º|F˜t;b…Ôž{,[u .RŽ]_~Æ¡‚:­jpšÚf&»g[ÏòøïT¦‡O¦¾ÎZB2o“½‘mCd©œW‘l<ýúþ›¬´?3& ÿûÿÿÿhf\ÔåóÒÃÀöööÿÿüþþþûûüýþþûÿÿÿÿÿüüûýüýûûúüüüùøøùøùûûúéççÑËÉ+14âÒÈ ÿÿÿÿÿÿþÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿþþÿþÿÿþþÿþþþÿÿgwyÿÿýýýýþþüûüýþýüüü01/ïõö­¢ #ööùûýþþÿüýþüýþÿÿÿþþÿýýýùùûÖñíÎÅüýþúýþüþÿÿÿýþÿûýþL+àäéûüýûüý÷øúÿÿÿüûþÿÿÿÿÿÿÿÿÿýþþüüþüýýûûýöøúõ÷úüúüðâÔ|®,„RöíävªŠVž{,¥‹`l˜á¡‚:f&°ä!.c¤ -J½h]Ïòøv§­²™Ö‘SuŸÔé{[C¤¹Ä\G<ñîí‘mCœWf‹Ôúîà‡iüúüÌ3~ÁÅÃ6*  üüüýþþ09¸¼Å öööùùúüûý÷ööÿÿÿÿÿÿÿÿÿÿÿÿýýýûûúýüýûûúýüüûûûûúúûüüùïêÛËÂÿÿþÿÿþÿÿþÿþÿÿÿÿþÿþÿþÿÿþÿþþþÿÿÿÿÿÿÿþþÿÿÿøýýþITVôôõïÞÖüýÿ§¶Å/,( õ÷þþÿûüýûüýÿþÿüüüýþþ÷÷ùòóõóô÷õùüëó÷þþÿ ýÿÿþþÿøûüøúüßù÷øÿñô÷ýþúüýüýÿüÿÿÿÿÿÿÿÿÿýýþúüüýýþúûýôöùôöøýúü”p=§bŠV”hv¤âŠ\çÇ­ ¢·ËhvPîJ`€¸Z+çFUaC˜£C‘g*ŸÉé'/4_xÇ¡ˆ9¦¾ÎiTE_|± .•j!šu,,ýúü”—˜685ùùúÿÿûüýõõÿÿÿýýþûûú÷÷ùøùú#áåïÿÿüóòòÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿûûúûúúýýýüüüþýýüüûüûüXcaŶ¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿþÿÿþþÿÿþþÿÿÿÿÿÿÿÿÿÿÿÿþýþÿÿÿïåÞC8-Þèñ þýþûüüýüýôööëìïïðñöúþÿùûþöùüÿÿÿþÿÿüþþöùûúûýïôøçïôñþÿùûüöøûýýýûüýýþþûüýõ÷úñõ÷ýúü^z§¢†Yl–Ù”j'c¥%=9SUk™«•gh-J`~Ï7Ei=½áöC fŒÍ €Hº«ŸÄ³¢@äáàIROªŸ¢ÿÿÿÿÿÿÿþþþþýýüþýþýýýþýýýýüdpnÿÿÿýýýÿÿÿ­œ—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿþþÿÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüýýýüýýüüüýýþþþ'*G ö÷øñòó±·Æüýýûûûýýý ÷ëãì åëïýþþþþÿýþÿþÿÿûüý361ÿÿþþïððRB2µÄÓúûüûüýôöùüýýýýþÿÿðóöòõöoz‚þúûZq•¦kZoЦ‘vz£Ò†].v¤áŠ\û÷ð†V”n9  ‰[š‡v}œ»(aD0‹¢µ$.0 |§Ó*>×¹¡ ‘i2h‰· d,U%z¨à†X YrŸ§Žae‰É›w7þúû„|wš¥¬ãáã úúûüüüòòò3>?<3&0.òûùü`TBü"œ‘”úüüüüüûhtrªŸDA; þëøúúðññÿÿÿÿÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿÿÿþþÿþþþþþþÿÿÿþÿÿÿÿÿÿþþÿÿÿÿÿþþÿûüüüüýüûüüûý×ÏÊ;72  ÷øùleòòô–¤.,)6ýýýüöóóöÑÎÐóõøñòñ úûüSC3¤µÈýþþÿÿÿÿÿÿóõ÷K<-$>Tþûû¦ktÒŒc.¦‘vóéá.|ªã„V’cq™Ðg0l•Ó”k-Œ`$u^K‹¢µ0„Y-ï|Ù.â΢vNFUaµ¨KXc˜<g‡´,«ÛU%ƒ·ö§Ža›w7þûûçææ ÿÿÿ+  ùùúúúðûúüWK; !.ÿÿûúûôÜÍA?: ýýý cZOÔÖÙäìôþÿÿÿÿÿÿÿÿÿþþþýþþþþþÿÿþþÿÿþÿÿÿþÿÿÿÿÿÿÿüüýüüüûüýÐÉÅ$"øùúùÿÿÿýýþøøùøùû’w\üýý•ª)+*ÿÿÿüüýúû 6ACÀ¶·úûýùúü÷úüöùþÿ'+ÿÿÿÿ>–­„lTþþÿÿÿÿÔÙÝÕÝäLB8ö÷ùùûüº§–FYjþúû~¯ê‚QóèÝ.Š\p•Æg0úóë”»Þú÷ñrN1ƒdEu^K¯ÐåQ0q—Æi:V £ÈKXúöñU%¾×ã}I k–ã•jþúûuny€†ÿÿÿF:+   ÿÿÿÿþÿýþþÿÿÿòìßÓÔ×$9DÿåÎÂþýÿøøúûûýþýþûüüúúû÷÷ø ýãæý üûüûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüùùúéêïøùüù õÿüüýøøùùúúÁÆßýÿþ011 üüýüüüùúúüüýúúúAKKóóô¸°°ó÷ø$ü ?% öúúûûûr]÷²½È4*" 4*#>3)÷øùâÄ«û¾×ãéåå)i“î—mc„Ø|(•jl‡¡ úõí‘uXÿûú 30(èÝÛúûûñòôÿÿÿþþþþÿÿþþýýýþûûüûûüÿûûûÿÿñòõ ëþðïñó üüýúúú÷÷øàãæúùúûüüþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüýùùú189ÓÍÍðñõ ÿþÿúûûëìîûûûòóò+*'þþþøøúþþÿýþþÿÿÿûÿþÿÿúúûùú:CDÊÁÀýûýøùúÿýýþþþÿüýÿè èýþÿÿþþøúüãÆ­:Sþûúm•Ñ D: E²ñõêßúøú6™{Qf0r¢ôŽ^ q˜Éh7œw1€bEsŒ¦ˆ¾úûå ˆhc} ƒ`u^K а >[ÏÆÇÖáù  YD—mfŠÌòæÏ§c|(¨¶¼XJD”y_þûú'*(åýÿýýþðñó÷ÿÿÿÿÿÿþþþþþþýýýðñóôôöõõöÑ­¥9MVéëîýþÿ þþÿûûûóôõòòóàâå ûÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿþþþþýüýýýýùùúúùù &'ïïïìïðìíñÿbaW¢£«úúûûûýûüýøùþþÿýþþÿÿÿÿÿÿÿÿÿþþÿÿýýýýþÿ'14×àéööøððòùùûÿþÿûûüììîõùõøúüúûýûÿÿÿýþÿùúû÷ùûéíóÿûùCCC½½½ÃÃÃ???}}}CCC½½½CCCRRRôôôººº½½½“k/o™×"øñíŒd0tœÐg‰¹™wGŽ^ ’Ëõïí¯áQoœâš[ÿ÷ tZc}œƒdƒ`ƒ¶ò}J|›º6Üv ÑŠ`/G[ªÿ"J+$Õ½¬=Ui‹«—u4r× Š\¨¶¼+13h‚¡˜~_ÿûùÿÿÿPPP¬¬¬ÿÿÿPPP¬¬¬ÃÃÃ???}}}CCC½½½ÿÿÿPPP444}}}âââhhh•••!!!CCC   ÿÿÿPPP444}}}z254 øùúïñóôö÷ úúú÷÷øúûûóóôö÷÷ìíð2EOûì%ZPž «   ÿþÿþÿþþ÷øú÷øø,4ùàåúúÿÿÿÿÿÿÿþþýýþþýüýþþþýýýüüüùùú /þÿÿýüýööö úûûûüýüüüøøúüþþÿýýþÿÿþþÿüÿÿÿÿÿÿþþÿÿþþûüüõõöùùúûüüøøùððñýþÿ÷øù ýüûóóôÜɽûüþ  ýþþõ÷ùöøúÞäê4ÿûúÿÿÿííí===¼¼¼aaaŸŸŸrrrzzz½½½XXXkkkwwwüüüuuu‘g)“®ÄmR<ûøõŒd0u£à‹] pžðùrCn5û‘d¨¨ŸXOB÷ d„¸”l/2J}Jv§ìŠY„eF?v Ñôí멾Ëï 1„A ?^n¸’pH«—uiŽÆ—r:öìã˜wF¨¶¼+13¼ÍÕ˜~_ÿûú___±±±CCC½½½___±±±CCC½½½¼¼¼aaa222æææ’’’___±±±CCC½½½aaa½½½CCC½½½½½½```___±±±CCC½½½þþ÷÷ùèçêíîð øÿÿÿÿþþþþøùùø÷ùúûúóóõ÷÷øÙÚÝ53. lj_Œ›ÿÿÿÿolaýýýèèêéêêøøøÿþÿýýüüýýþýþýýýþþþüüüýûø"#! ÿþþýýþíí¹HC@ùùûúúüúûü÷÷ùþýýþÿýýþÿÿÿþþþþÿÿþþþÿþÿùùùö÷÷ùùúöö÷íïð|sfŠ›ÿþÿø÷÷öè ìñöûüþ þþÿúüüÿïòôiw€š€ªªªOOO±±±CCC½½½£££r™Ìýúò‘mBn‰§#)|T0mR<®ÒèR.Že-ƒµî}K‹] b޽éOXa÷á ÷áîïñ .œ|H h˜ ˆhG˜Æïh:ã˳§•|©¾ËWB5ÍŸÏ„±â|O’pHËÚß5&!—r:r çŽ`XJD¿ÑÛA/%-ÓØÕ-(+š€þþþþþþ»»»‹‹‹üüüþþþSSS¼¼¼¼¼¼þþþviXÿÿÿÿø%ÑØãõ ÿÿÿÿÿÿÿÿýýýùùúøùùúúûñññ('!,+Kÿÿywkþþÿûûûýýýýýþ ýþþ@:3ÒßìùõðÿþýþüýüýüýþþþüýýþýýÌÊÉ453úúüøøúýýýüüûõööîîñö÷øôõöúûûüÿÿÿþþþÿÿÿþþþþþÿ÷øøöööùùúèéëFEBñòô¼´¯L8! ýýþþÿþùúûíîñ$éÕ÷ûüäïñµæüûûýu€†>>>½½½ÉÉÉzzz333žžž´´´½½½CCC½½½ &ûøúR.®ÒèR.öï郵}K¤È\8æÖÌCK÷ ¢›•^ekº³ªFMV’¡,56N4'QIzªé†V˜h«Û½¤™u¨#6G–Âé§•|Îî;ò”sHþþÿ·ÃÆ5&!w¥á }GtBó˜wF—sic’—œ12/ÃÉË=75¤¤¤PPPýýý½½½CCC½½½¤¤¤PPPýýý½½½ÉÉÉzzz333žžž{{{ããã••• ¤¤¤PPP&&&½½½¶¶¶‘‘‘jjjOOO¤¤¤PPP&&&½½½ÒÌà ýýý$#!ÛÝàÍÒÝóóõÿÿÿÿÿþÿýýýøùùììì(6= èûüüþþÿüÿÿÿÿÿÿÿÿþýþýýýúûûüüüþòèðùþþÿÿÿþýþüüüüüýýþýýüýþþþ%')óóöñóôýþÿÿþÿûûûùùúâáäû÷ù998ÏÏÐÿÿùúûþþþþþÿÿÿþþþþþþþõö÷õõöõõ÷XI5£««0+%72, þþþÿÿêìîð:÷ß *ÿüþÿ妇Zy   777½½½½½½LLL½½½Žg4eƒ¬TqÜ’wYrªŽqVR.‡\)x¢Ô\8ŒmK€¦Î€Z2µÙðK'ûÁœ^ekþíÚ&º³ª=:4ÜÓÇ$-9÷NÔ˲,56ôÒ€£ €]9U%øPZ]1 ˆ­Ñ è‰sHs¥ú[áßá5&!‰[«¨£;:7‰·åwIx©ïéÖ¾ŸS2:>ÏÎÑ12/°°°½½½°°°777½½½………°°°JJJJJJ   °°° ™42.ÿÿÿ÷øúúûýýýýøøùùùûYjhÿþÿÑÄ¿þýþ÷øøññò˜”š0/-ýýÿ÷÷ùÿøùûÿÿÿÿÿÿÿÿÿÿùùúññòö÷÷øøù Y]Lþþÿþþþ¥¦±ÿÿÿýýýÚ„åu173 âàáÈÃÄ øøùU[T&,*òññöö÷Áª°üüû1?4ÑÄÄÿÿÿþÿþþýþþþþýýþüýýóóôððð{kVž¦±*&" ûüýûûýýúúûûýý ÿ¸âûìßèí9›}Tc$ŽqVrªŽqV hž˜btœÎ 8- ­ÎãS2ç³”MlþíÚ&=:4ˆWp›9S9&•ª¸kVH Ìï`4z§à†Y  öïì]1 xS/z È8~L[áèèÚÚÜE><´ÂÈÚÖØrh`5&!«¨£;:7wIpšØf(ˆWSÜù$üA/%nid±µ´OKLìíñëìðõöù òóóéêìéêì 5þ™‹ˆ[VNüúñêèÿùø÷ÿøøFD=ãåìôôöýþÿ ÷ùÿÿÿÿþþþüýüöõöñòóöö÷êëí`d_ýüýfe[÷÷÷ÉÈËÕ×ÞþþþM¨1I þþþüøö¢£mslùùû 283!+. !­ž ÿÿþþþþýýþþþþúûûûúúhZGñòö ôöøýûüþüþþÿ÷ùûÿþýþûýýøøùûûýÿÿ8,!2&ûýþéÊ«ÏÚã@\r}«ãƒUŽqV~ªÛ˜b€Z2©ØW(Œd2q—ÇçßdH3Ϧ  ñ&þíÚ&¦«µ'&#¼ì$€-e&^y¤¢‡\kVHöðè m‡£“y]%—¾Ýêìù†`8Æ6Á !ÚÚÜš£¦f]Z>8UX]ÊÈÄ68<f(Œ²TI&Ûîi@¿ÑÛA/%õ÷ð óôùtvv™˜™  ýýýüüüóôõééìEWZèÖÍ\WP  ÿÿÿýþþúúúõõö åÒÕÛ÷øù ùýýýüüýúûúüüýöööóóõøøøââåúûüýþýýý"$"ýù  üüýúùúûüü´¼É  ýýþ÷÷ùÿÿüüüåãå`gaøøøþþþýüýúúúööö btuþþýüüüþýýüüüýýýœ‹Œ  âåêôöøýÿÿüþÿööùÿÿÿþýþ÷øùùúúìîòóöüýþ (y¤Ù ¯èQºïFëòêçý%üøî¦ÃÖZ=*êñ÷Œqg{™&þíÚ&DA;ŸÑ üûù¢‡\i8{œ¾2 ãâÕs:ú¥ªãÜÝãa[Vƒ¡¹%i]ZÉò®ÊtR6˜wJ¦ÕûæA/%õ÷ð b…Ξ{S±µ´OKLghgÃÎÐ µµÿÿXff¶§¤ÞÍÅ ûûüûûüüüýþþþýþýýýþþýþ # Ô×Þ÷ùýýýüýýûúû"  .áõùøø ÿúúûûûûúúûìåä4-'þþþààã°¸Ãgwv®£¢÷÷øëëíõõø ÿÿúúùòñòíìíøøùÿÿüûüûûûüüüççé$/þÿÿÿÿÿþþþPA-  ÷øùïñôîðòõ÷ùþþ õøöÿÿÿÿÿòóõòôõÙÞâë ùûýõ÷ùêðô‡\'q–Åóéà¯QF뎰Í,?H¤Œ¢…Nr”¿‰³ÜuJ W( "öKn„Ϧ{™&òêâŽlDu§‹pYîæâ…dBd…¸+]1 ×(=ûúûæIƒ¡¹+6öòïp ô` •¾ãkBˆ‡†ù7»äqE`{¡ .;;i@/?-OKLž¦ª'+)M[[þþþõõ÷ùûûñòô÷øúþþþýýýýýý÷÷ùìíïóôõ&&ÚÏÐö÷øÿüüýïü(/0 ÿÿÿæùùäàçüÚÔÒ*(&ùúüøùúýýþÿþþýþþ?8.+BM±Ÿ™   ÕÄ» ëéìùùûööø ÷õöøø÷õôõçæéýýþøøøöõõ8CDþþÿÿþÿþÿÓ³¢! ùúûûûü!§³Äùûý þþþüüýûüüñòôéìî+ ÑÝçùúüöøúçíò9Žh8e¨QXrP3ëüo]ñy Ì‡`4l¸”sHñ1Zãåèû÷úu§ 0> xŠ˜ˆvhYi{3UuK9¾°¬)YOŸ¥ªa[V…¸ó}_G†§ÄzY< Ó•¾kBBA>68< ¾$ÚÆ¸mÌ “y[ …_—Çó‘½åoCz¬ì†T­üî¨pnl†³åùõñ*c|˜„h¶×qJ)Ì3~Cøø½CCC½½½÷÷ùüüþø÷ùõõ÷óôöëëî  õõöõõõ÷÷øïðñððñ&6* ÿÿÿïîïôôô¼¶¼üûü ûúüûüøøøÿÿýþúþýýûúú÷õõûúûúùûùùûùøùúþþÿÿýýþûûüþþýôôöóóõûüþÒº 9;8 ÿj%$—›¨ ÿÿøøøñïïS]Z¼²³úúû÷÷÷JTQÿþþÿÿÿÿÿþÿÿÿþÿÿƨ™  ýþÿ÷ùúþÿÿÿÿÿúûüüüü PE6÷™¸Ñ øøûþÿþþýþùúûûûü  áèïþþþþÿÿøùûs‚‹Cøø½CCC½½½j;›XJñŠ«ÈŽlAñéä†d@‡`4Ç­š9Sf”sH˜“Õü) 1@ÿþrN/™u>(7B¦ÈâZ8§—…ÎìökYOÈÐÑa[V{H oƒ•‘}k{ªåöáßxV9j“à–m —d_y¢;KFìåå}W3ùòìt¤Œ\lçéæHø®ùþý*)46¥ÖÿÇÇCee››C99½CCC½½½áßà  ÿ'27ßÕÑýýÿ  þþþýüüýþþöö÷õõö÷÷÷íîïIZ]á×Òþÿþÿ HNJíôøÊÉÏðïïúùúõôõýýýÿÿÿ÷öõæãä:8MǸ¸êìîõ÷øóôöþÿÿüüüøøùîïðÞàã"âÙ###vreÿÿýýýûûûùùùûúûøùöþÿ ÎÇÉ8=8 öóñ þþÿýýÿâÝâ$&ÿÿÿ–~w.)"ùúüóöø þþÿÿþÿþüüýûüüøùûÿÿÄÝëiJ1 þÿÿªÆÚ   øøùúûüâåè×´š)LfÇÇCee››C99½CCC½½½vU8¶êJñ޽ërCˆ°ÔxP,o„•0EVa7qšÑf/DA;c'2òêæyU3Š´ÜvL$Ű¢›„¶ÏÛJ1%ÈÐÑ80/"3A êâÿûÊÈÄöö÷½Ùéòìè—Äì–m ¡‡^ÑíŒ\×ÙÔïèãöòó~^?99½C99½½½½xrÖÓÌõõö4&ãö̽¼ ÿÿÿþþþüüýöö÷îîî[mnµ¨§')'ýýÿýþÿúùûúüúûûûüüüöö÷ÞÕÔBE@¸µ¼ ÿþÿýüüúùùöôô]`WüüýTfi ÿÿÿÿÿÿôôõ,0,"!ÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûTOGôôôàßá=EDêæãÿÿÿýýý"#üûúãàà`vµ“ øùûüýÿ ûúÿÿÿÿýþþûûüùúûõö÷ðòôÛßå/úüýÿÿÿÿÿ¼Õæ";5/ þþÿ þþÿñàÍïñó /@99½C99½½½½w¢Õ‰^+w¡')kL6JñóëæöðìX)"þÂÆ«é:Ujn•Ê’k6'2z¥Ø†[(¹ãsG(7C¤–Š9QÖÎÍJ1%o°/=tD/‘¶ÖoJ*~™±ôïíŽxbL168<¨ÁÐX'C'Zt§(9SfÇ­šµÄÐbuƒ_w—¡€Q¨¥¢X[^•£«#*.H3'þþýõíå(ôíé‚_;RF9÷÷àJcXÄÔÚ\N1ôíãÛð×é‚gOЬvcTöðíðè⑸oH$7þȽ±ÊÚßæâM«‘å?\#,ìêí~^?••”763ûüýÿüýþúûýþþüüýüüüöö÷ö÷ùþþÿÿÿ\ik®¢¢ ÿÿþûûûôóôGTS2>@ýüüþý+,' ïïð ø÷÷÷ûúúø÷ø>KL÷÷÷ÍÇÇISUÔÆ¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿ æëñ÷÷øõûüþùøýüüûùùùûúûùøøôòô>U_ÿÿÿɲ¨õ÷ùþÿÿÿÿÿþþþúúü÷ùùûöæìñÊÜç#óöøýýþúûýÿ™{T‰s^u‹Ÿ<" àØë (4°ÁÇ $FSfȳѡ‰iX[^¨¥¢Áâ—p? )14úùú{W6‘nC¤–ŠRF9 íÓ»-E<,&´ÂÉL>7ªÖV*¯¡“ƒM8ÿ¨ÁÐvcT!&Øßèþÿipuôøûpwl—º×iF)ÚÑùùûðñóüüýðóýýüýýþüüüãäçãäè,ÿÿÿÿT``—‰Œ_kjÿÿÿÿÿÿÿÿÿÿÿïíïöõ÷öö÷  ÿúùùüûû÷÷÷üûüðîíBKN·¨£ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿþþÿþþþÿþþþÿþþýþþÿþÿüýýüûüûûûúùúüüýüüþìêì ÷÷ù ûûöþþþþþþüüüùùùüûûø÷÷êééø÷øüüû)>IûûúÓ¿¶ÿÿþÿþÿþÿúûûwhT }†˜öùúÿÿõ÷ùôô÷  üýýþüüýýýýúûüúûûööù¢š’^fn‹ua‡§ÄíÐk(4—¹ÖiG*X/k†¡•z_ÄÙâ÷øûõçæº±¹¾OGBŸ©&[B1Áâ+@ˆxyz¾ÔߣÁÕ]?+‚_;©ÎêW2sXAAÖÁ®*?RV*ð׿)A¨ÁÐX?0`FŒ³×oH$˜…gou]r‹i«‘aw„z‘¢†o^~^?rrqš›  þþþùùúõõõåæç:JMÿÿÿhvtÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿòðñûûúüüüûúû*4üüüòððòðï‚[7¯ÂÔò÷úôøüñöjfZÿýýýíîñ­¯¸þ õöøðóõõ÷ùÿÿÿùúûûûû÷øù^fnd€¦!9O{G íæáysl•””-( ¬× T) k†¡':j„Ÿ–|a‚`@ÇÀÁug]¥ÀÑqM/–œ±¹ !¼ÅÐ%,úúú—yWuœËyzð !R#tƒ/>H®ÏäR1©ÎêL>7û/YÿðØÁ)AX?0‹°Ò¸ÞqH"™‘‹hq{žÈëœÅçd;£ŽuÆÞé:"«‘ôøûz‘¢ fec’“— ýýýùúû3BD-2ÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿþÿÿÿþþþþþþþþþþþþþþþþþ;A>õóóðïîøð×Þêÿþÿchaýþþüüþûûüøùú÷÷üüýÿÿÿÿþÿýþþþýýüýüúùúùùù÷÷ø÷÷ø þÿú÷øûúüòòóòñóûûüþýýýþýÿþÿüûûñðï$)*óðñüüüúúúüûûúúúûúúø÷÷_<¯Ä×*(% ùùû li^ÖÙݼÃÏÿ÷øúøøùõöøáäç8Crˆ›/DSœ€Z|ªá„VŒs[kll‘Çÿ•z_t—¾–|aª¿p&ðw9 þ[@/¥µF'KýëOGdÚêüúúú¡ËêðÝ#9Œ}sW2–¶Îm“3L]Ó¸£0BN‡ŒIMN0'%öòï#kA˜¦«Ñé!—q4gouðêærN/ëèéÆ:"Uo„ ¹|`GCCC½½½CCC½½½CCC½½½ú   ÿÿÿÿþÿÿþþýÿÿþÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿþþþþÿþÿüüýüüüýüýл;<:&(!EÿÿñññçÞ× ùøùõõöõõöþþþûÿÿÿýüýüýüø÷ø÷÷øùùùõõõèçèßáèÿùõøöôõûûûø÷öúùø^RAóôõ»½Â#úùúüüüúùù+û áæíÌÚä93-ýþþþþÿýýþÿ úûüøùûþþþúûüûüý@:// ôÈèÿÿÿÿÿÿþþýýþþóóöbimCCC½½½CCC½½½CCC½½½-CRþÿÿ„Vo9ŸÅâa;ª¿›é! OЯs-Ò¯[myéåäNGF[o†¥‘z_5Ÿ²Ó «ÎåU2“m“¹Û0BN‡Œ=AB^?…§Èo`*gо™vBow}BOU™¶ÉÐÉÌ—k^½`CCC½½½½½½½½½CCC½½½½½½ntx#(*ÿÿÿþýþüþþþþýýýÿÿÿÿÿþÿÿÿÿþÿÿÿÿÿÿþþþþþÿþþýþýüûüøíäBDCþþ ûúúÛÖÕ ø÷÷ööö=EGÍÆÅüüýÿÿÿÿø÷øúûúø÷ø÷÷÷ùùùãâãRRJõôô   ¥¡¨0%jg`þþþððò¿ÂÆæããíðóûýÿøúüôõùþþÿýþþþþþþþþòô÷ñòö |Jÿÿz¬ÒÿþþþxI'õøúùûüRLC?‚“¡þþ€o_( Éßè7!¢†Wfw‡š‰yÇãò—kv•·ŠkI½`½`¾½üûûúùúÿÿÿÿþÿÿÿÿÿÿÿÿÿþþþþþþþþþþþüûúûûüýýýøøúÿÿûüü÷ÿþÿÿÿøøùø÷÷ôôôôô÷áäâÿ7¡#Š&& #48ÜËÈÿÿÿÿÿÿÿÿÿÿüüüø÷øúúúXWNÿÿÿÿÿÿÿļ¼ þþþýþþþÿÿÿÿÿ:85ÏÍÑðòõ  ÿûüüôõ÷õö÷åèêoB"ùûýÿþÿÿÿÿÿýþÿþþþÿÿÿÿÿþÿÿ ½`½`¾½oI)…]0§Éá÷ôôïéèäßÞlWHey„Léìæ×"S%*áÙך½ØªÉÞV7"hH/¥ÍëíèçfK8ÛÉ»Q1swy‰‡úùú„teš‰yèääÏÈÆ[^ ¾çBÿ‚zt€‰þÿÿÿÿÿÿÿÿÿÿþþþÿÿþþýýûûûýýýûúúððòééìùùûÿ÷÷÷ñññååæôû7FH¸5åÒÆ÷ý:=6ÿÿþ !/±™“ÿÿÿÿûûûZZPýþþýüý–’÷÷øýýþÿÿýþÿþÿúûûúúûO*£Åâö÷ùÿÿÿþÿÿþýþH#!øúýþÿÿÿÿýþÿþþþþÿÿÿÿþÿþÿ îéçkN8pP4˜»×lWH‡˜¢4@G=ZðÒæ9ñÀ=BZZ>+‘¨ºáå©ÈܶÝ÷ôðìV3[3–¸Ó™¶ÌýúúšˆvoQ8)>R5îž»ÐbE0|Œ™„tg¾´³7mefUI™ûùûàoR–þÿj¬®¾ÜíB$€wpˆ’šÿÿÿÿÿÿÿÿÿÿÿþýýýýýûûúûúûýýüüûû%*çÞÛö÷ùûûüýýüñðòóóò  þó =<ÿÿøøö\b[ûüûûøöö®–GG? ýýþþþÿûüýÿýýýýþÿ÷÷ùþþÿûüýþüúÿÿÿÿÿÿÿÿûûüûûûúûûûûü÷iD&}˜¯    ÷úüûýþþÿÿÿþþþÿýþþûýþþþþøúüõøúðõø÷ùûkN8õé)4@G¸ÔäM.Z›‡|Q<*=Zíæãy]EŠ¢²,;ExŠ—w^Jmz„1AL­ÎäS2„tgžVSÏŹåýýõýþõôôÿÿÿÿÿþÿÿÿÿþþûûûýüüüûûûûûýüüûûûýüü ðôôøòïþþþþþþEHA«°º÷éá%$ÿÿþþ÷çÚàÞß.:MdjöõôêåãÛÑÒG"èÒôýýêøú9Lˆƒ†øùùüùûûýÿÿÿÿÿÿÿýýþúûúüüýþþÿýþÿíîðõ þƒhQ’¨¼üþÿúüþýþÿüýýüýþþÿÿ÷ùûõøúñõøìñö8•²ÈkN8fP@E(§ÁÒ ey„oXF}•¬ëæælR>v^N¨ËäX5ˆvišµÈXPKXPKˆŸ³bE0ymežVSøþÿíýýˆ²³‚’œfK8bª­–TRíýý6‚‘~nds€‹€uwmdˆ“œþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúýüýûúúûûûýüü   öõõûûüóòôéèëôóö  þþþ÷÷÷ø÷øöõõæåç 'Ó²   ÿÿÿÿÿÿÿ $åÙÃü5ÿÿÿúúúOTSý¾üüþÿúûüüüýÿÿÿÿÿÿÿÿÿÿÿþýýúúûúûüýýüííïëìí{S0±ÂÑ ,'!4-& ÿÿòôö§°¿ýþÿþÿþþþÿþÿÿþÿòöøèæê{’œy]EóïìjH-™´ÉgL7‚PNÿþ°±ƒQOõýþ¹ÓàG- xmd†‘›ÿÿÿÿÿÿÿÿÿÿÿÿûûûýüüûúúûûû þýþÿÿþÿÿDRU¾°®ÿññó ÿÿÿýýýõôôøøøåãä+=Eõƨûüþüýþÿþÿÿÿÿÿÿþÿÿüýþûüþúüüéϼ '<þþþúúúûúúüüü#()ûüüçáâ úûúüÿÿÿþþÿüüüúúûøùùùùùëìípL,£·Ê&! ÿÿ [SD÷øú«³Á-) ÿÿüüýõøùàæì…¥À xaM™´ÉlŽ'~bKPOþ°±}¯±¹ÔãˆVw©zoe€Š“ÿÿÿÿÿÿÿûúûýýüxmdœª±þÿÿüûüûûüýûûýýýþþþýüûûüûûöõõ(35éëðíæã ÿþÿÿÿÿôóó"2:îëë ùûøúüûùýþþþÿÿÿþþÿþÿÿþþþûüýúûýêéëþÿþûûûûûûüüýúùúüüûíñóxecœŸÿÿþÿÿýþþüûüö÷÷D' ' …žµ>3) øùüÿýþÿE@5«´Âÿÿÿ>6) üýþ0' ñݾâèí;U{[@¥¾ÎeF0gL7L7POþ°±G,€u€vmzƒ‹zoeøøùõóõí ýþýù÷÷÷ööôòññîïóðòîëêúùùüûüöðõ üýÿüüþüþüýþÿÿÿüýýýþþýýþøúûòô÷ñô÷âèîøøêÿúûûûúûýýýkfadca‘’•ÿÿÿô ÿù÷õ êÔãéþ  ýþÿôöù ÿýþþûüþøùúö÷úòõø^mz’„xüýýùûýûþþÿüýýüþþöøú¤“ƒ\m}[B2POþ°±¬ÆÖT:*†}uxŠ…|sîììýýþûúû ÿÿþûúúóñòø÷öîìëse]z‡“üûûzj]„Æáçî  þþþüýþþþþþþþ÷ùûòô÷òõ÷áø éësnionkSšŒ‚ ôöùæëðûüÿøúüõ÷úýýþüýþúûüöøùëïó^mzòõùõøúý ýþþ÷ùûøúüøúý°±T:*ˆv~rj‹˜£  ýýýþýýûûûóññrdZ†ymu‚Ž‹~rp|…”‡óõïó÷ ýþÿýþþþþÿþþþöùúòô÷gu~ft~“‡€õøû  ýýþýýþüþþïñôTdplz…œô÷úòõù  ÿÿûüýö÷ùøúûds€uh]z…þþÿsh‹~rly’…~ÿÿÿþÿýþþþþþs†my€˜Œ…ÿþÿþüüýûüünydsœƒüýýýýþìðón{„†{qn{‚ht{ds}BBBBBBrJZl1ÅIEND®B`‚./Doc/Tutorial/trimesh_normal.jpg0000664000175000017500000002221612176660653016677 0ustar vborosvborosÿØÿàJFIFHHÿþCreated with GIMPÿÛC  !"$"$ÿÛCÿÀt"ÿÄ ÿÄJ !1"Að #(7v´2Qaq39Rr³'BSV%46CDUWc¥Ód•ÒÿÄÿÄÿÚ ?²Ñ'Ó-i£Ì53%Áë,rYê-W º* ‡Ôõc¹{,œ&ãî7‹Ú‹7wgï¿daœ3öØtÛÊý1Á|öÿhÿòL.ŸáË—/á·ÅdþºaÞ{ä[,>oϧìc´rþÏO—-ÿ†È3ȰÕ9f+Ku}ª§%³CpŽ¢WÒÉ]flÓ áŒ°»p÷ŽínÛ¸zn¼Õ™ÞF\ڼ˧-«}„·8[µC6ç ÝßÒ7q»}FãqÝċܣv@1ÖäVƒy-ä-â¶?iÛm÷éoËm»úz&G”c8Ó"~G‘Z,͘‘«ëc§Û×ndoþ2è¹Ö¹ê F¢—\÷’×s’˜S:•ò54­’¦(‰Þ7Cg¶w¨ÉtT\Ôìó)¹d±csi«¢±_ªì¯ž«%0>Y pá‚™ÛÓ¶çmÈï¶ëzÆo í••¹¥’׊sɦ¿µFcr÷=ÑF·øÿ4,69–b¹$“GŽäÖ[ÃàÊÚ è§1ÿx1Çoñ_ÍÃ/Äí÷¨ì•ùE’’ë):)ëâdï'Óh˹ÿ’ Ú-rºýcQK_’c”¶Úk3«ç¢šN±ÈCªœã'Ó‚ÒK;8{à¿H³l2[•%²,ºÁ%uc%-3nP™gcÀsÆrÝÁÀ‚pFÈ3è±¹AaÇiY^í¶Šg¿ƒf®ªd s¿psÈÿýZï¶K­UM%®ñn®¨¥dRTEMRÉ eo(œðÒKCÛݤúŽãtZv¨gR*<¯Ûþ°dt–?úÇK¡×û_Ùw.¡·MQ_Sr›'«ªh²VÔKÉÏ“ö˜æ00‚#±.“S£:mQCMK6:çjŸjЧÛêEP—F IÕwºØ¸‡¢ýo:?§‹ÍMÚáŒÅ%EdÂz¸ÛS4tõ2üå¯HwËšwø âš mîÔl±Öš‡TÛ΄ÕI#¤2EÖ“ƒ‹ÝÛ·c¹î}Wñ©˜ÝŠÑàNÓu·Ú© ¸ÓÛ,ÕñU¶!ÖmD’Ós“Ÿ¯#ÍÃ×Ðíè¨+ΈÞ.õ×[…²ÖWXß`¨{g‘ôqs¡ kƒ[ÝÇÞ8| þ¯8&+xÓøð+«¯ŽGO3hý¢Ví†&ókƒýÓ;òÜíß}Êu‘ÒQÝüaÙh/”ðÕÑQáSUÛb¨`{SªÃ$sAí˦ø,‡Ê=·Ä&¶ÐØY tTZc‹n¼Ã1‘°åãaé¶ß´k–-Y}¹ãõñ`T¹m5 ¥êˆ.Ž·Ü©‹€ÙÐL$¥‡mœÒá¿o_‡Ÿ@p;ž3}Ì2‹Ž—úÁ5#)lðNÙ%=4F6½¾ë¤ysœí‰îwÜ’Py|T¹´öÝ;ºÎDtVÜúÕU[;»2A‘¥î?‚öÿŠÚŠž²±õÕõRÎé'xh{Ë¥s¹ oÇnßÄ œp›>;qðC“ßoÔTO½ÔÓ^*îrÆÞ¿·¶i„d¼ûÁÛˆÀüŠïzø!þ[·~š5ä¯Ñ­5®¸Ü«ªqˆÜû›¤}dMª°K#ÁÂ#÷æpwî· ®‚Çc ²Zàöz }4t´±ssºqFÐÖ7wNÍnI?½µ¿Ÿæ˜¾Ž¿ ˯Ú­Í•°‰dkžç½ÞŒc žîÄìÐH q= 6¨åú•…b—fÚ/W—2âbëJZIªædÛs!cÜÆÿGuÏOµR£Ø1šêÖ]™Lú©­Õ”ŽXbl‚2ç8oܹ„¼œ= gr{mÂÃæY ‰ÚnYÖX…yª­4fGšÇ†?‘oºÐßtlOq·pÍâ¹ “)±Á{Ç®t÷+u@=9àví$ˆ?AìAØŠÊ.EáM”C½MÓù­FI_5òšH"Šà^:°1Î÷v!Çpwí¾Ã® """ """ """ """ """ """ """ """ ç÷}J ·ëÝK¦)®vJ‹ƒd|.=IDƒ¥Ó°û8jÜîMÝgnH=|À͵^iüQUê­­ýxiolš”R>J_k£ƒŒLi.ÝÍêÀÀ¸ÿ}Û·cÅ}?@DDD@DD\çYu§ÒˆbfOpšKD]j{e]Z™YÌ4¿bCXÞä‚÷4;ƒÃy¡­JÕÝRñ•Rb¶Êi ¤¬”ÁG`¶HñãŸQ®¨q Jæ†4—»‹#/ g¼HQšãâóÆážÓ§-‡$½2PÇVK¼º àð×LïtlYîðàó·3a˜°x‰Èª¯Æªk›c”ÃQx»T–SS“ÎQ †îîÑÄÂÔná­p+¿ø|ð‡Kjš—#ÕGC]]±ÏOe‚A%3G ËjIoÚ8˜26U0DG-â݆Û#oEãxõƒ¡}9c¶Y©$”Ìø()Ož@å¬lÖýv÷ É¢""àõ⇠Óï2°Xõƒ,¦çB6Ÿd¤œqí<›Ž[r;²>G“ÇÏp³*¿Ù±lv·!Èn0Û­t1uj*%>ë îq$Ð q IF~ ü^U]aªÇ4­³PÐËT^§ŒÇRãÏ`ê`öm,ßxçö›˜ åŸí—Åqÿ™{÷iè-PË/Ïöå{bÿ‡jÿBü2àúiPÛ½k¾´_ÛÄÇY]LÁ3›!{_>÷Mý™ï—9À³v–‡B`Ñ? 9î¨WRe¹tóZq댢²z꩹×Üò÷9ñ4ò<œ@=IvHÑ ìnm/Ó¬GM±Ø¬¸¥¦Vˆ˜ÊŠ²ÆššÂÞD>iîÝï#àÞD45»¶"" €>Ž/ÆûÏå¹ÿSL¯õ}_÷ŸËsþ¦™_舀ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ‚Ñ¿ë ®üÉ}ÿ.­_êÑ¿ë ®üÉ}ÿ.­_5õt´5ÕÕ0ÒÒSDé§ži#‰¹îqìÖ€ $ö ý–™«:Ÿ†é}Ž;¦]töohæÚ:X˜d¨«{ȶ6ðœZÀ\Ðç7SžºxÅ §§u£IcöÊ—rl·šêW6(Úc"qsÃë#CAn/Üqý+ÑmKñ‘Tf¹ Æj;]ÆY_Q­ŒHéäfÍ †æ—4˜6ãCÐw`an¶x–ÏuBº¯Ä`šÓ\e4pPÒÃξàÇ–5¬•ÑäâéŰ"BÇsÐ4;ÁÄ“ÃëUꦥp”‘b¢•…Ä5íÛ­; ‡ðY}œÒ$k·h¤´wGð}+µû63mçZþbk¥`d•³5αҘ8³f4û ì\K@Aâ²ZmV;\6»%²ŠÙA.•- †(ù8¸ñc@wNÃÔ’½¨ˆˆ€ˆˆ £‹ñ¾óùnÔÓ+ý@Gã}çòÜÿ©¦Wú" """ """ """ """ """ """ """ "",6e•ãxmŽKÞSz¢´PG¸êÔÈÍÁ®wW¼µ®!Çc°*&Ö/–gtú·¥t•¶Z ÎñJ)ÃîµR=¥…Œâ\#ÝϽ=äÝÁã—4yÅ.œxÃÉóJÊ«â¶ä²Úhœé^ÿi.?²ÞonîØ7 8‹$ʵ¿Ä½å–ºkt×:J9DÌ·Û`PR<Æ@|’=Û8G',„îçµ›râµÓú\×\-Z”¶çmŠyj¡¬d@CS á‚Wð"F»‹ƒã‚ÝýGb¾œá¸¦7†Øã²bÖZ+E{•4a¼ÜÖóyõ{ËZÐ^â\v’ƒƒhw„¼Gš Ök49eàDA¤–¦Ý sѼ3šz€=ûM®h"’D@DDD@DDDA}_÷ŸËsþ¦™_êú8¿ï?–çýM2¿Ð'«þ-ï5z£iŸ|Ðâv:æË#ÙIzvÈ$äÓÓ‰Ì. inà‘!Ã]Šf×ïXÞ!Õ²i÷±dׯôœky m±5Û—q¼_Lj٤4sîíØæ)ç?ÕÍ`ñ v~bµÌ-sÊÙdµD\Þ]™%LǹkL‘‡9Å‘Ö;‹HÝw?ž,Ö8irOd7›£âŽVY¿ðÔRòÚG5ÛT;`ÐZGO»ÆÒ×àØ–žk/ˆì¾Ÿ&¾Ë[%Ý8&¿×BØ©á¥àˆ#D›9"sw¾[ȹYš X>”Ó¶¦ŠŸÎ/îâé.õÑ0˺eŽ ¾Å‡“û\CösœÛ©ÐRRÐPÓÐÐÓCKIMa‚c Ž&4lÖ5£³ZØ¿dÿXewæKïùujÿPÿXewæKïùujÿ@DDD@DDD@_}]- EuuL4´”Ñ:içš@ÈâcFî{œ{5 I=€ ö\OÆÖ_&%áþîÊgÍ]òVYá|q±íh”9Ò‡òôk¡Žfî ¹»mû@%ÿ£ÎéAo×¹é+'éMs²TRÑ·ƒRQ$SîÃìá‘Û‡»·©ý _ plšë†åö¬¦É7J¾ÙRʈ·sƒ_±ïøKÝÚàÝ®#⾸خ”Ëî×?´P\)£ª¥—ƒ›ÔŠF‡1Û87ibýè=¨ˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€¼W»µªÇkšé{¹Ñ[( ãÕª¬°Å'ŽOqnâÜú×OX>šT:ÑDß­öòQÐÔ°ELæÈæO7½Ógû®p,ÙÁ¡À™ôšßâw*йôÓ\))¥|1NcÖËk\ö—°;й¢F9œÆ·~|B çÅ7Š®–¹°Í;umŽnqÜ®2·¥-s9ôãîÈ\Ð .ÙïâZÐ9ãžU”{GÕœjõ{ön>ÑåÔ2Ôt¹oÇ—ž;ñvÛúìrú£¾tãµÿÓvÚ,Âñ'6Ë[s£‹ƒœltî/c6 ñäýËýà×qͳàKÔ¬ Ω2Ü7Êì÷Šhk©«e–µ •½„2FÝæ÷›!w6–8q‘ʦD@DDÿXewæKïùujÿ_3j~½ÿ­öKþ?ígÖK¿°AýºŽ§ôÿgýSö¿Ã¾Ë¬ß®ž7lv:ûÝÒg ·ÓIUU/ ;ºqFÒç»f‚NÍì?¹²‹‰ø2ÔL£Rtšªï—UCYq£»ÍD*c±:Vâµ€7ê–û¡£f·pNäöÄD@DDD@\Ï]4SÖ'úÍp½RyG_Ùüºh™Ë«ÓåËœoßn“vÛoSëð鈃æ?„Ý/°j΢Ü1ÌŽ²çKIMh’µ ‘Œ½³BÀ {8í#¾îuôcN±Z\# ¶b”7Æ’Û† î3‰gáÈ–°¸5£‹A hÖ´|Aôq~7Þ-Ïúše """ """ """ """ """ ""/ƾ®–‚†¢ºº¦ZJh4óÍ dq1£w=Î=šÐ$žÀ)ë׋ëU£Ì±½4§ó+“9Óùä…¦’û¿i{õöÞ@ ¸³“ZáÕaî6¨ê.#¦Øì·¬®í +DO}= {MMaoY d‚÷nöðo \ZÝȉµ£Än{«õÒaz{h¹Û¬õ±MNú 8ý¢¾æÍˉ—1½6{ÑÆHØÈç´ìN.Ýð™É«©3=Z¹MOd¢¶{Sœ÷WÕ—¹Â¦BA…Î<v.yp&7Àh×¼ÇZüMeóX,¬­†Á-KZmôÅÌ·ÐDâÃW+[ö›tyƒ&ä¹®é´¨Í ð£†á”í¸æÑQe×Çqplð“EK¼e¯cbq"oyÎ÷äoÁ„1„{Î+`³bØí=[¡·ZèbéSÓÄ=ÖRI=ÜâI%Ä’âI$’JÉ """ """ """ """ """ ""èâüo¼þ[Ÿõ4ÊÿPÑÅøßyü·?êi•þ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ€‹FÕmZÀ´Ê„Í•ßa‚­Ñu ·Cöµsž[Æ!Ü5Æ74=ÜY˱pQ6­:Á¯yñl*Ýs µÔÄÖ:Ëj½Îaû'¾¦ 5¤Äã.ÎåÆ 9 Ç"¸ø´Äpé§²áPÖ^@ЏªmЗ1Äo# 39§¦K°!Äuæ'œ7Ö¿×Èïyæ´YâÙͺÜãs)ÒæÇ ¤… söˆ—´º?}Íq÷- ðƒbÆêyÔšŠ,–½¼] ºñEÛ!ps‰âgÝ¡žëšÖ Þ _¸"¦AÌô/E0Ý%µ·É©}®ù53`¯»ÎV£gÖ’DLå·¸ßPÖr/-]1ôq~7Þ-Ïúše¨èâüo¼þ[Ÿõ4Êÿ@DDD@DDD@DDD@D\O\|IàZm ô4u0äÙRˆÝk¢¨Ù±÷5ýiƒ\ØÜÞß¹níò×ïwkUŽ×5Ò÷s¢¶PAÇ«UY;aŠ>N žâÝĹõ )_¼`ÿKbÒ3ÿ Ç!žæç²*yYýÖ—È?¶?eë–QC®¾(²'2Z¹¤³Å,”>šÏDönàÁÁ¤:P& Ÿ/ŽD´ C¼<àZW4j8f»älˆ±×ZÓï0¹kÄ1v6±÷žÜÒòÈ&ÍðÇœj]Óë~®\¯VÊ*Žm‘•’¼Þ*\Ɔ0»¬×tÙÛ`_»ˆŒÞ.kÅ¥€ax¾޳Älðڭ͕ӣsžç½Þ¯{ÞKžîÀnâH h€`DD@DDD@DDD@EÎp­sÒ\Æ¸ÐØs›d•fXᎠ®t’Lù dM¬2¸‘¶ÌÜ‚Fþ£~Œ€ˆˆˆ€ˆˆˆ€ˆˆˆ€ˆˆˆ‚ú8¿ï?–çýM2¿Ôôq~7Þ-Ïúše """ """ ""ã‡S3‘­X~1[‰ÑÙqÌ×Bk$/¸H)aêuKXî5ÅÍÙ§›ˆ~=—c\#TrLvo7W úÕ%=;oy[Yd\©# äwØn{ ýPfòWF½]QäüýÏYóbî&Þþ.Çõ³þ8=+õ^ ¹yå‘/ñ/äÏôÏðJ@O©O.?Ô•âäÛç}›åUUJü§î=mÊû÷å™8™x÷¯ÆÇ]ûXîbܰ¯¢É9éô߇3œ€þ€þòϦÑ£žkö×Ë´åkúë6sqéu±òkJªÅ»lß1ífI‡OËë2qñïÓ&zCò}ëºùT7¾U3ý3ü"J[cg§ó‘k' ;Ùåø‹«21³,Þ¾ o1¬Ÿ3íœjI“•ö¶cýdÖ̪¦ü²5r‡±ã= )«Ñ~4ˆ ˆ   €! =ùáྲÃÈ£#MéuSfý™5¾ü³"õv(¶o™V¨­¸WîÜ“Ç?ùœ«ñ=É„zH_¤üP¼ÔÏôÏð-zbÓ³zóÌþÞ·^F'G™…fé››ƒfoËw,ÉÃû™‡&gVMÐWFYß~Ÿ¼ŒzÊë~{ØAÕø ÏôÏðó×±P¯Ë{Ïãîâ×ÈýE99*ÑnºlÉ¢ºîRë?,gVß–kÇ¢÷ʱëm7lÕ&-¿Ôpø«}„vÔPo÷¤üS2ÿó™Î@ ÿ@ ÿVÀ!V½gy(â~ ÉÆ»óœö[ÔÚRï—.âÖ™Vr1m—3º©~5x÷%Á¹ŸÆäÒÿO{½¤¿ê Fžgúgøi–æôLO1ݽ%æŸnYú¦<ë¹V(3êÕúÄûU»fù]»Õ·ýXÒbgñ|›dä½tyõéÕøn·ç¸”ˆ·Þ<]æ”Äÿìz÷Ïþ¾±nãs›ƒ÷&Ì»Y8ÙvÍU6>[.nüŠIo‹Íù&wm]/ÅŸ¹l¬^W Ì­ô…äûÐßIâ½c2ñ/ýͰ?Ð?Õ  lÙ5“éÏ ¼(¶:>Þ.Ñë{Ê­š?oy®·‘ZhíÍÞRý!ýÝ«y‘©gúgø£úcuÐl´~Þò).|Þ%.Ò ;Ê­4c#wÊhÝÝßRí¿»£G+Þi§{ˆI„b@ ÿ@ ÿ™Àn’ ¦šq;Â¥trå+£7w„®ŽÓ¼ƒF>ï2¶hÝ[Ä¥ú9óyŽ|ÞBš5›»4³´6 ["_â_çÖÀ ÿ@ ÿÏôÏð@ ÿ@ ÿ@Kü@Kù3ýä Éþ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@Ÿä‰þ@O÷‘)n%ý_Ñ%ý_Ñ%ý_Ñ%ý_Ñ%ý_Ñ%ý 'ûÉ–ç“ü€?Èü€?Èü€?Èü€?Èü€?Èü€ßòÿåÔñ3ý3ü/ñ/àÿþ¿ú¿ä@ÏôÏð ^Úö$' u[`ŽïÕŽÔÓÃ?w ›Ðn€"_â_À®¸Ž+Z‰Ót1 ]¡»Øl°"_â_Àu×bôqÊþö<ûávË@ö\Êî-×¢qŸˆý¹ÿ þD ÿ@ ÿügìÃäå8NƉý'$ˆ ˆ  ?˜ýhµÐ›:¿²¯"_â_ÀY¼?%Ìr£ »gôƒ¯¬v@ 7ÿ@7üˆþ€þ€—ø€—ðˆ ˆ €ßýßò gúgø"_â_À %þ %ü"ôÈŸèŸà \Ú8óZë wa>3ç“Iµ}çµ[¾W»G/AéB%›OdÞ‹ÑM&»:ý ÉÒ€@Kü@KøMbÎÜ¡.ÿþ¿ú¿ä@ÏôÊy{w‹±Ý®ìýFtñ¼÷¯Ë\c~*æ£Ñqy<*ðz…¯ÒJ°h¼¥læ[5¾ü×ï³êä×i f­·Ÿ{;ýOŽ9Úê<2Pœ!¹óH€—øv˜^£“«š§óÁù­W{úÍñ¼ÎwÙæô°™‘~'£ ?È:^—wCñ?†¤ŸønÐü²ïÙ1ñ¯ÄäZÛ²Ve„˜`ÿ þBZõ¦ºržýû¾º¹_/îÙ˜—>ãí誺ÕÇÅûŸ&º2.EòÕ5.±ŸbLÖk¹nF-‹w§ÔäXûb’HüÃùeìmß–îWArå>³Ð®‡ÆWƒÔì_AY¿«îñïUTYøõUx³Èñ¶OM9x´’škÆ“¬ë6©%+³t=·ÚÚ§k#Q)’¥å_žÚùüËMÇ“ùê|jÿ/æ _Øzè˜ ë½wgº}Ò4~£)š‘®7Uý/#×üžE´}]Ô˜óêÿeÉuýÈóva¾Î!è »¼Ìsü·­Î´ócØùÜ—¬€„},ŸY1{ÿåßÔFóËjúY1òdÝ£H©XÝê”ëÌ™0ä‰ù` ŠÊL$^ õ e€daERZ £®”PßÈär‡)c'4|M™ª £Å‚÷MÆjrRE+élí4å²Aœ™N£”Mˆ)šŸéÕÌ ^ï[qß¶œ“Ëf´é¥—-²¡»æè±%–|З%Yó&l”gÿ®§d›Q=ü‹khKJÎJO!Ç÷¯ÇÍ_K#>L­¡¤µÞqê,ŸÛ)¨n²¢=$´Tõ(B¬n²ª(Š«)MþÅHðS"²ôÙyꨱÍt›unñ`½ÓqÊ;,ÕÛ\Á¬L©N¾‚r1N^|¾Î§1 ›ùG”²ÑÍ)˜WIȱ uO×T¼À5 XÄéÚT½ñÇ÷¯ÇÍ_K#>L­­Û¿ ™Sš>Ã@ªš'P¨ `Ý_iÌ $@7I]A ‡¢C™TÀŧժ”©†Š÷¢Þ6‡ Ý7©¯Ü©ÖÆ:è¦CˆŠUJˆtÕÂdO¨%BcB‰(yu£GÞ"A@J©ò&¢I/ÖíÑU¿øþõü•*¥2&‚èM![öÇ¡ÌÒòi­¨/j8m…“î…ªä–U6Jϧ˜ó#JÉV¾n‰KÈÖ¶§T´2n͸jV½Ûnޔϛ5},Œù2®³d’šS˜PŠ2ÇSš@™)ÌéB:üæ.£ ÄJAJ9*²*ò¿áC˜Ê”Iì1¢c¡oq`½ÓqËŠ‚°¢‰=E<È¿q‘SN¡Ó6½]1 ¦éR˜%Ä>½b™D'MDùbÝókÊ[üzþL’r¬•©ó9|!D«d“«\B¡WY3ª1Ô2’‘:i® ‘N‰õô«E2ñº-ôÓÈgWú–ÿ*g$A«s%?Õô²0cäÊJ¥…£WQBªÁŒ²ˆœÆ<Ç.C¬é\©–útJ &o©cAU›'L‡ §TtË’KcÝ¿jR[î,ºn9B½ˆ­Å0 ™Öë¢sù&qõD5B‡.®I+‰×! ¥¢…[ eLdÈ%©±ÖÕþõð»Ü;>Âyö®ÞS†X'Öÿ„ÅB,bLÉë$º¡ôj&r Ž©ˆš‚œ©É¬„P…9æSTDÉ*¢(Š–½Ç;g\M³Npè¼3WÒÈÁ“,’· mŠBs¡«X’ª*$#£—)„À¢…Ð%/QS&H°º H6²Äê¬a2¦ÅJ¼œÛwÅ‚÷MÅé¸lë¢í/MS& r­È~åúcG(C˜"L$1£¤3PäPU‰¹Ê &28ÕAµ«§Þ¾_3hD±uÂ¥äpPV1NQ@ÇXè*^c ÆLÄç4²iTˆR˜™Ìd“'4$˜‚ÅPæŠféŸѶŽåðÍ_K#>Gê•iT[qê5H*Ý.êŸÔ¥©ˆ`!e sŽ•9ú¡ÉM?ý&/Ö Í4ñ«úlx°^é¸äS…×ÐsÁ*Bǫ̂)y ¡>A:È™J¡SêŸN™Ó˜ý‡ÒCÅŠh³u u!Ìãû×Á÷;C=,Y)D¢°RC!`b$p竤cýæ&0”©ýšt˜†ŸÝÒ9DäI¬_Ÿoéà !«éd`ÇɗʇõH¼Ó!2ÜÌpMb‰Jx ëHA}#ÌLúWNXA1X¢`ê"UDÒÓÂKbÌÔŠÖ Ý7¾lûª°"’qÔ/MBˆ&‘B'ÉPý:ze ¥uÖZSr9U$(E% ÂcBæS˜[ùËzRoª7UVÒáû×Ã*¦í¯" ‰‘/ÿ)4ò1~Íb)Ÿ™ÕU9œ¦äDLq"¢(ëÖºœÒšæ°§¬éÅŠl¬¢’–JV³#5},Œù2šjÓ5”`!‡IéXá̲ÿô›ê”ªšFX9›J⊄Ó0ñ̇PÝS‘U‡‘æƒêƒ>Öñ`½Óp9È™.ÒÊ!rŠ„‰\ Eº&M2Ës:!"Í÷,T#^¸LH& tКQ9]&P¨„±!®³ aY¼?zã)/ÏàÅÉZªÜ•5€T—˜8 SÌ'ÔÐ1Äü¹jæ§Ð‡œ† ½J €h,ÂsEà^I‚iKN ˜©Î}6¥N½ïŠEÊ»ž‘y1у&XW¤Ë2S© †2ê…Ž˜¦b•"”JPCYt¦tàuŸÈ2U !ô1UPÆM RˆšmL{§Ý4ÆÓ‹ÿ+#6Ö\2¶„µRA8cêb¥4‡µóèä*@ G!´®Q:CümK*¢ "%9Ìc (܉©ÖOÞ»®ê%ßjºßÛÛJ¢ ÄĺBEWêu”Ë$y>€T„‚(©­X"ÅH.ƒ €H  ¦P²²Ä’‡æœÁ̹Ô)O ³Tn+ ³Î w˜Ôù SA1ò:ô©ØšD†Oþߢ€S/ÈŸä s"°ôC¬p‰5à„Å7кS‚¦fNkծͶ¼X/tÜ›]Ä´\‹zºJm*¦ DE TúF\€"SLôuÄPK>fLL±L -Bh[˜¨b‰@ßX’q°êF«Yü?zìÖY´^³tÜ—%Cÿh˜9Õ7@åÎt•0’‚A…ËÔ_¨i`TO ÚVO¨S”Ë냕ýDÊœ‰—ý%Ë/6*(bôW4¸ŽŒd¼íUl¬Õô²0cå¹ÙöÖñš+ÑžÞÌ83&€Çd±·c˜ãk,hÛƒ3ÏmÌ¿=·2ãneÂÙ‚ˆã“4%Û“5ÊŽÃ4”)©YYin,ºn7“oe¸|vg cƒ2¶æ_˜c{0X of…Çd‘¶Ö[žÛP¸³:¶ÜËÆÜY¨66²æ¹3\‡Ùcƒ0pAh%ÏÇ÷® ŵ N« âÁ=Œí@Ûof q¹—Ûk/Œ°Àcƒ2¶öc–Û™~FÆÆTâ8ØË 72à!ìÀ@cs.RŽ72â̸qµ–Ûk-ã£4€Ù´ËEj›Ûr»š¾–F y ºo÷¯ÇÍ_K#<† Ý7û×ãæ¯¥‘ƒCî›ÇýëñóWÒÈÁ!‚÷Mãþõøù«éd1Ÿeã|ñ¾xß2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,ÉŒ³&>2̘øË2cã,É‹ªïrÛ‡ß|ñ¾xß=åï'ÇÍ_KK0cóÍ:öÔ“‘m¶´kj±ñ¹2å_s·"×U2‹G’ž’©Jð¼½äþ{ºä‘³í‹ò¤_¶Äí­«E™¾ì¹D•Mtø^^ò5ÝrHÙöÅyR/Ûb«S“¢Óê®IÓo[™+6Ò¶.·:­R¨^6"¡Ã5},iý,ÁÏ9ýb97ñÍ÷úëÍ2–R™LnIOj9Sש\slUFR³¸^^ò;œ™míšÊÔ¶RÒ».ª…À74ƒ³K­ÒíêmôÎÎÒjM— ËÞOæs“"­½½pORZÊ éPé#Q“uÐv'¬š¥‘Q¦Û—¥Æ¿B‹eIe­ÈÍ_KK0cóÔ-Ëz­;r’³òªP¨kKÔlûJ¯?Z¶­Ë‘)99:|· ËÞOçP„T”j Ý–9©;NÖDý‘eÕJB"p¼½äþeEIF P­Ùié*œ 5-qE:=!)š=§jÛªÏYÖN¥Ã5},iý,Á"ò÷“ãÞ^ò||Õô±§ô³<‹ËÞOy{ÉñóWÒÆŸÒÌò//y>=åï'ÇÍ_KK0cȼ½äø÷—¼Ÿ5},iý,Á"ò÷“ãÞ^ò||Õô±§ô³?ÛŒßÈLäPœ bœ¿‚ò÷“ãÞ^ò||Õô±§ô³>kÕ¥ßu¨¾²°Ò7÷•ÙåêíM¨§J.w’·]´É·<)Ó®•ÝYµØ×ÆœÛÒÐË‹ÁFªÊ×i5åï'ó^-ýÙ^qÿåï'ÇÍ_KK0cŠË#,:¥N«É¸nÝÊÛ»&VNTí‚V«rÀ%¹¥ÌÀ  ôsN`¤ZWM} ©R0ÚÎË…i%QÊ[òr†ÇdUåhÕºEÅNãy{Éù¯«˜Öu£¼óÎeÐÉZtµƒkåµh'WˉŸë$2*‰&ÞYùEdVQorŠdÕ›Ç#¯j…ÞÜ佡HoÞ+1È^ú¿( åͽ-ûö‹ò^^òV©#D¦Y—­ý£~,Õô±§ô³!ç»o+*Ô²òZÆž¶Ý×ΫrW&ª#¨«©Ñëª)¨ ÝUå“ÿAé\½0z#Ó!S*jKŸ«.'!s]]¬§š·o;ŠÇ«Idݺzä¬Ü¬ü´_ ¡-˜¼lË®â¸k^GÜvcˆG¾óBÈ©¿.mJ€%9Ê%ÖqæS¨&éu‘@@SÔ*À“ïSü—jœµÛ+¦÷l÷.ŽÇ¹mb6¥^à Ûé\ruj…¹¤Ý”[J.¹¹iœÍáZ­RíÚU~î­Tl{fb½7A1ŠBÛ×}¯v.×˱@—%ô:+“b\u5‘Fa- ‡kÓˆªJ$„ܤÔ6õ·µ'󿝥?¥˜‰3Z’¶&_Ç:n“vÎQj· ÅB®¡LªŸSÊ ©1¾ÓÇSý 1ô ‘Œ¸”ÊЬ €®*“îzV–]eSœ¦XúÙgæiºE¨y(®|¦]y®·"¹]®Ëe )Mt2Rä¬Ì&ë¸ä·Š ¦SýOò2K“¦‡5J¡H˜'Óú‰Ndù‘T*`XIQê@c¥Õ–¸ok¢íFÀzoöê^óÉ«Îr½b=¶5å'Y©Qj9£Â³E¥\Tů†Åºžm².ƒ|ÎßÝózÒi·hQmK?).[j’çߪ¸÷P×kCL¢ÜKz«Y|Šâwuõp_•)+й%+DºîFr¸èÞÕû‘²ÉßééÎWR*ÕÇžô¸±íkºV¡Glqêq$ãQjjúXÓúX¹” ß夿ÅXbcRª(·5Le:! RTú Í4ÖôÁÎ(ÅB¥:‹$±Œd¥ÎBÿ™ˆšj5“UUDÁMZÕ8¨k6â^Ö¾2ù£8.ÝR°zX­¦L‘ÖTú%#@ßÉ/CíL’òÄä™ ™@K¤#ý R`¤æ¨,¡B”NÆèôy‚œ”J_¨XDVRJ©;HhD¿ï5ÕmÜþ< ÅAît*U›®ñ«_ÊlíF1&‘Ĉ}£ÿjý#¢C PÊUúCÕO˜`€eP°Q?$ÀÊDÅBey zùºmJ¥åpm¦ò¡ÌVNÙ¿n«Rºã¼7Åýg´þ–[àFÖ)&¬ÒQÆ`Â!55̆!C¬Nº&øÁ0’`C3Ž“u› d ‰,b2-ŠH/E3˜ó*‚ŠÂq2ªÊ‰À皨U­™t&A2„Hògˆ•1¦,°™3’*ˆQé™#XWIV:«•%0"tuÄH }KË ˜U=J¢p•é¨*Në, …2àîåˆ}I!Q^Z—W¦Q9:(ËêRY$ʲÊØeô s—BÄCT¼Ê`ZU"‚‚!LàqQCªb K”̧3g2‚Ye™³á´þ–5V ï|ЏâôÓÓvyÊMº½"¡qÙèþ8cÃÔ¦;=Š –?={{ôÞÀ…1õï9À=â¸cÛÜØ¯Yqñì†<½‚cc£Î0LxyI ãÃÒAu{õ1ÙéVdqééY]¸½E’¤³78»Ã†6d¨€a¢Ýá¢çù¨Ù²Ã aº‹&l6™<+†‹/†³L3Y8.LM†óG)0âi3Ì Žh6*¡ ÑS P£‡ ôO‡s„°ÝtŒl3Xñ}²UËQÖOôÌ8ôøŠs{zãÛÜTSLJÀ‹!/r íÝð2©c›æ†>½Ê(|xzT&ÞŸ"€c»ÚCŽ?½ª<{|ª¸ð÷(scóÔsŸ•C¹rÅJè÷ëã»ÞyuqÉéQIÌu{IÈjÜ+€ÓúYƒEåï'Ǽ½äøù«écOéf y—¼Ÿò÷“ãæ¯¥?¥˜1ä^^ò|{ËÞOš¾–4þ–`Ç‘y{Éñï/y>>júXÓúYƒEåï'Ǽ½äøù«écOéfÝ–µ¯Øk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈuk.’[Õk#z­doU¬êµ‘½V²7ªÖFõZÈÞ«YÕk#z­doU¬êµ‘½V²7ªÖFõZÈÞ«YÕk#z­doU¬êµ‘½V²7ªÖFõZÈ–y¬»÷&û°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘݆²;°ÖGvÈîÃYØk#» dwa¬Žì5‘—W½—r¶Í?¥›\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã¼od¨óݧk#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈí;Y§k#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈí;Y§k#´ídv¬ŽÓµ‘Úv²;NÖGiÚÈ­cÃ/_šÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFרÚã\b£kŒTmqŠ®1QµÆ*6¸ÅFר””••ÿÄ= !"#1$3A 2Q%40@Bq‘5CU`abp€’ÿÚ?ÿÎ>^ùÓ}UÓñ~Äe[…Š6ª³Ò5AJ}‹mŠ¥6MeÆx˜áíŸä¯J·ô–âg!T¶ïv×ÇXjq¬¶÷oqÄ8ÈB8´Ÿ(À“=õ“ò+|ƒ$ìmPqpÀ ^ØÞ鄈€BågÊÃSÕá~Ktp´’ûYŽAj£ˆÎµFÈ[QMH€sf ÚÈÒ&KÞS"©ôðÿ&:Qd¡yÎÁ&÷«F¿—d£iígÃ&L˜§°f5˜ò_¤M“ÃrËÑ ®;Âê·1'£™b2r6E¢¶N=‘ÈÐ@9S:*<•é‰ d3$b©–%€êä‘:ƒh› ò}f*ZÕ’ÎÆ>þè ~Qôb•u»Ô%h2M‡YÊ]”*Ü[HÍ@Ù`Á¬Js ´—É2ƒ`«¨1_DÌäq\ è¥`”,¡ðA1¶±±pÞ3˜A¤ÄÄ~5êÚ¶pºµße…;D£iLÿh|8e°pù9-F?ÐÙˆ‰1JW€ÄãYõ‚ûLO„ô¯Q?N<5í$Œ`˜™HªtfÖ7`‰{d ¤wL»¦#Çð—R~ø{c³¼„EzDŒÈG öÉŒ»Û¬nÓÀt·Q2dW†¾É=‚=b~Ä;uÞzï Á¤Äë¤Äø>•ê5Ì ar0S#Y„s';C@’Ó¤zÈœÀZOçGv*Úqo¡hy5-‘!¹Qº$½ºÇ¦¾šëãøc¨»’¨XL˜Xi’›Mê‘ ›ˆ¥€"0±Yë3?qÛý^Ÿî^VØ{º:ŒÙåJçU ¿L–}MU,:Ý{ jk'u1³jißaÚiFÉ-êÃ"Á%5µ†š˜Q!zÝr‰³2šJ¬ :hŠ—T dhe°À1C¬#:Z.|ëï$w{ŠÉRT|1n%VE0ëN®¹Ï¶N ¼l[uä¼[—[³^Ø7¸Y…k’6U SÔÛ*2ߢܲ{€†kƒ+p.ã]óTMV…šõ‰¾¨”ÆÆ˜²á-xÌŽÅ·;Rl0·w °˜á±²·!Tdª-gƒ!ZAš€#d:`œ±cc雿MÐÂ)ÝW´$ãÃz”CN¬LòHËÙYí…h.‹ëï8[YwVÀ“J„µWÜÔK“o°ƒ:¦‚BÙ/[Z¨Ol'1ã>ì“ó9f9£#ÜHY‡­Š`Ê T°•¸E  X.øàwk>¿Éå=[¡ÑôrÍ{®Ü'ãè"ת“®YKˈ¯¹Ã”§¹»hê-0ý¢½ ¡ 1îm’7+.¢×JžJÇe´š¤ñ%;f‡oe–›V;Š[,Úkl™”× ò%crÊÕuñE[xbë,,íb¾Æ"«MœðQo9XIXã®P£'Éņ¦½&V¶á°sÈ,«q©ò‚ZÀå"2\0ç†ÊÕB«+Ó»!fÍ„Í)­\±«¬jlÕ7)‰5»q:Jt)ÒÂÂj^î );ÕŽ_º¤ë‘¯¹‰®ú‚0Cc·ršÖ)E eªáK“fŒi@—ÜJZ€ ;‘rAD ¦5XéaÌÁXÕmf@q5¹›©;5Tã‘?Ò…wE§ƒF·®Yb¼ÇÀEŽdY…/åk™nBc«™+±gaMv—ÈG5ž$qÀÊUKµÙ«^%²ª¯NãÖtþA2#3(‰"")ÐDF=d¦}"#ÖgÒ<}½'Òcï*à3—ÛTðù+UÐ*7:½+ X ÷ð”.ck8Ïdý‹léã#Ñ9ÊΈ¡Ìå*MZ–;ÑÁe*÷Ö¬çªeÉ®³ùÿMÚ Wì`ø©åÿXÞÿO¹®úë|¢¡‘ÚkR¨¶ä™ü‰d6B +ŽÆX•-ª#.”ê`G8´®“«N X„šR%ëY&vý÷ ÈûÆd}|ezw;„6/-‰½FRJ“ëœ( ëåHKâ%;ؽHC“v^žÒÓù¼ _LªêµYbÉ3Zí<ªÙÅ›¦šg!ÔðÕ¾«öCe¿ce¯°†iTÊÕ{l&U›Ö](à9›J­ÁñÕÝ]²ÞÞœDÂM¯êÛQw©³–FÍëb̶2ZEæ÷0$0;GhŽÑÓHü|³ ˆMy´Á>ÚëW^Þ(’ë.l÷щ¯f,KEÕÖ!»D²–ªE 9+lYš\–®Î³XE¬¢‰ ïl1vˆê,” uV-Îlm–Ï BjC Uí òR‘IBÜBø­š,ÃbPŸHªŠÖÅÜÕBs"И您 E$B­§.àÇ9©V­5d‚ŽÌ4&ÚË.Y¹Q Õ1ðE2x!DN‡n[kY°„²Ã—Ç•6½‡®ÃDdT SdÈ9¯WB´<ŽÒ¦E BݽcܪªÕb¤¥nà;MØ¥z¨F,š–þ@)S-•¥2µW%ï‹Uv4Æ™ØçOkñ,…´«Í¨ Ô|q˜ˆM}ÉIؘ`+œ”–ÑšÑT%”¤­Û””kÌ^\¨Cg:üÊÇc±ýG3AöšY u²—f± jÚ¾<å^©:²Ä„VrG#¤°Ø%·ð­VÍת­:ï·iű5«%{KIªJ„˜ÂÒ&t™Ò&|t?•YÖð™ì½° eþaF ÛoSª×jºÍÉßÛˆ­„m=êjÖ–~¡mž‡é iLáñ›ÖÖ8ÙeU\v®Y²çäk,ÃzÉ ZÙ&òì:«íÄ@¼Uì–„ö¯*õV4V³Q€Ít)ÂÄE*Mq÷1º© T¥Ö•“^d¸e0Hl¶Ò€3|ÿ76Ma\cGŽ(!®RÒ¸¯µ² AÂ[[J Œ’YÉåʰ™YÝ!m§ß5bå­ƒT¦lL§çŒ‰ Z"l$$Ÿ_ê•"°‰Dº»I"Èî+ÕBcº¤@‘B®eaê³?©»Ã”Œ¥Rï©°PlÆ“«Ù¡#&ò6k¿†ü,Ý ®+Z!iú¤×%ýjnS˾–»‹m¢ÐKÑu…ÝSZè\ç½ù•-+ º¨UŸ ™Mq¬µÎšíW˜^]Ùéw²ý8C0_åXË~Œ‡Vq‘µ†•„²ÉŒ¤,„%‹ßüžKÚE®™µE«¾ÞÇ/¾ÆÞ6eeÙŒp±G±ªm0m‘YDÊ9d‚_A¦°ÃTêÍ@´çt(„ò6;;$ªý­‚]¶A°Fµ̓½£Æc;ÜÑ)“!hz»›¤…ŠeŽÕ\/ï¶"Ì5ˆjTòÑŽ²S3+;“Yã^ö§iSƒª[@J¤+¸Ì_Q5„I{·@6;Q¹qc·ŸzHlJÛ,<Å7ÃWHCpF»«“N8_½µÃ‹bš0h‰ejýÖYD=­Ö›WlÊÇbÆ…u\î4…Ç$«(ŠK„vq'6 Ó"'Ó_^ì;ÉMx µâ;2®/Z,¼øk8X²íá¥É˜)Í}–¸K$dâå`&º¿=I·bùØ‚²•´_ $.­»«ôþ)êiÿ7¿¹f¸T‰÷É¢¡HãfâXJ€Ár"q¾ gñèÕòt§O¾­kN¨ä:Úñ÷mŽAÜ( Ä2W#e{ûa¢¨²WdUmKJjv²…2v„6U« œTlùì.yÜ×Á$ÂÙbžµˆƒ°Ù\mØà`8â­ÖvíÈ*9E¢LGz ¨è6ÃDÀœk­¦Ä ¤8Œ– †h ÙZÙúæ MkZxŽâ$y²6Wd´…Š™¼\’ƒ„"6·û©ò@¹or*L\ŠÞô…%UiˆÌ’p–q .Ù.±,ìËÓ,%r2,[pµ’<Ž`%]Òª`¸Ž³À›.t¶âTËd\†vMFñ¨4Ðà:•+¹°CôQŒ¦D¬©e*á ÀqîlXÕ1^ãu[Y[`•F v¶¤ãµ#"3:ã.W»‹Î[©Kl½Î[ñUJ ±`µÕ®¶=AR¯íš«€ß^ylI%«g9‹ñèÆz—f—tU|Ø``â~£Ä¥œ²VQ#Ä­š÷-’]yi飗~À]Fž^^öUßUulêVe57¡åQ -JL5®›@dJ ²û[Í‹k¶…Ýüe`—y‚ÏËUh%FUXëÀ.Lá¦Ç…ð?(Yg)Jæ'ò«UÒ.YS‰!dYZÚ5˜®áÃa>bXãèÜÕ% »BÖÙ«Lé×&d`ÖÊÂ`×ËmiŽÞvbâF$¥$- ³“ÉéßÑÊä¢p(É4ëø•n òa•ì…ISê©c5òpí EòȆτª'´vöðÍÀÝDƒ¥•̸bkÈ#%R äb™,\.°ûÊà3‚TºÖ$ᘪ.¯SnõW›4t‹‘Û¥°N‹³R§K'>ÅAÈ:½n+ŠH ãJì|ܦêˆ.Gâ_(]qs™ÇURlc'˜÷M©˜• ¾à¢Âau¦ ØvDµvÝš—§‹EÄô•w¯Œµ\øª»¢šv‘ sÓEîã¨m¶×,UH64¢DV©°¤ž•%Ð’–i\R1|AKЖ·‰L$¬\¦õJ˜0„EuÙyS±hÚwB¹8gÔamw!½Ô!j½j%Çq6-V6=Gqü*ƒ¦µ¥6á…!fZ§6BPIñÖ[¿ŠúŠ r¢Œ½á–±úmyƼ®64·é¾7°ä`¶î?“¥0Ôð˜$Ó¦ýjŒ.ý6ß8µ°ÝŽÇÚ±q‘Üv)Ç®ú­P± µ wˆçV° {!©mwà“kŠTRÜÚ†.®*Ð*\­Uj”:µ¦®dbݱ.PBý«MT6"¨°¬­²Îk+šÒ+×î“6©7{ÙÅf·X+›*˜9‚É.³kXÙe‹·^\á·bÓk\íH„ZÍ“7¸$¢ ÷ëÌv"W`âÍ‰îÆ¨ŽåUÒ\/ZëP±eՆʔöí Ì|Êy‹ÃgM¡kd,JJZ®ÑrZ_ÒWYZ¶Š›T_ÈTŽÉ.KyKI÷8ÄÅr4RVX„׎ÚÃk±¶•K·Yw%\MvZ£݆ŸÏèÝ›×Ô;¾»˜ÞH#œÙ9ª³U~I°É8JÙb±-Dbcöô™& ¥ÑÍb.¹Ì®ª™:6Zô­mj‹JiµJh5LbÄdÀ¶DLŒáŽšÃz­×e±ù2]Š6²gm{$Ë6ëö“Vº•a¥Û2%5ÙhU¡m×EËX¹J¥_™Cå³YÄ·ÜáFä^Uj®'RŽæl(i‘ÔžK ™_sÚ€”¸Ü&* ]¦š¶Ø©¬ÊÆËI€HQ‘H¸È—¸‰f¦„Kb N©¶FýbY V,Øæ)Ž2IÙ(´™27q]qÆq:±b { ‹\²'˜lµôxÓQQS‚ê”Yc‰ÕV—E®0, ) UbìL€½" ²°ivͬë,i|ÆU×÷ŽúûA²¸æ0º­jÔV$+Å ïHl;W *Ü@ŠÁKtºšÏ’æò2z­²øä JžVÅ3_´Ä$4|Jû•$÷µô)ÓªåX–Ø ÚÎÊðe¸¼í'vØQÖ;×쵓fƒ’ëVS‹²P0¹TÁxöHÁG楀¿hÈ^³‘´ôÞ¨߆¯ÂÝ;¶Åñ&ŒŽùøêÀDûKxo¥;@úSg L¢ôTmœ·q–pÒt¨Ð+6MЬUx#¡Ùökœ„+‰$驯*úœ–@ŽÍáÅ Åá¯b€U[¢›Ü)Ûá±.˜)`˜‘ +5RðÑ0(.y‹ †ªË*{HªåÔD²³«Ã\¦†pLIXµ’«(áv¢Ð¯¹çPÕµÙ8AUæâ(½e•ÞÅÈØ& P,®]ºågšV‰°®Æès—j”*Ã+×BEª¤ÅÛ%fܾ£OlÍtFù%ñœâ !2Lc9Bï¨'š“l©/§ HjIÙ\«•u(œràU›¢ ñ#8؉](’ˆp±„ÍæYÙ’°"øt.É®PÐ5›W g­D*†¼Ûe4­‚.6Aå…^Ø=hT²d“)5Šäª¤f «5Œ¾#"½‰DbFÑ±Ž ’LÛˆh±¥e J…êCI­qÔT Dä ¿qظëMXx/O}eI'tÖ£µv;c­V7®vH1 [å_›xuN'ŸÇÕ?«ó!·nVDºØÐ©NV·¾õÍz룭EÚlWŽ[¶`JÜm³3%33333333¬ÌÏÞfyŸÞölÔl:¥‡ÕpëÚíb[Q"Q Y F£3¤úÄÌO§âþ±?\Ìj%¼gêwuãï‰æô.n^1þ˜ˆñüIÔ[·ý{5¿×ßõK۽ð½ÜúûƒÛ?Ü}'ÓÁu|ãiæòä>ïid®”{÷oô—iîÞ[¿¾â×ï>'¨så¦ìæbt-ñ®Nìè~žèÕÞ…é¿HñüAž×_­åõÓM~¥s]?¶¼ßoÔD ìЉoÜ#”½\‘0Íb¤ï‰˜=ª&bu×óùÛ#!c5–xHívFãFGlÙqDŽÑÓí¶">ÑË_5˜¨ˆ­S-’«XOk×½i(hq¾¶Šàôc#tºúû§_âüÄG×2úDÉD}Jî‘3®³Íé3¬ë?¾³â:‹¨#HŒîf"‚"2wc@2ƒ0ŸÐLâ‡ìE3ë'¨sä"œÌ‡¨ äîÈ„í€öÄ»Aö‡§ü#öˆðAŸ_éæòë÷Aû2WGÞ?côt{£ö/¼x¢êþŒîd}4öäîǦ³:z?í©ÿÎfyð=GÔ DCžÌ‰m2¥è"ÒzÃõ(ÞDZOüE%÷™ñ=CŸÑ9ÌÄÁÌÉÄä®Îù‘ ™/›Ý2A3:ê$Cö™ñnýëäz廄±Y[°ë±’“‘ qœˆÉ””ÀéS%÷ŸÄs™ ‘ Ëå€a#¶2 Ú 3 Ô@GÚ#D¤Fž=œ\h¼ÎUq·f‘¶1³YšC£Û©íûk3ýçÄçó³¬Îk-;¦dµÉ\Ó?yŸ›Ög÷™ûø ÏÉo.$Q0D9+‘%3%0íf ffb~ó3¯ßÇñ{ÿËú ý¥súdù$[úežù¶ÿwß×Äç3S&S˜ÊI2bY3·©ÌN蓞]J`¦J&uõõûøŽ Ïôæòãûúd®G¯·û;ÿ`ùí?ˆ3Û`~·—ÛÇõ+›`=}‘Ú@{§ÛöõŸO_žÎÀk,A9’12í4ˆ2ˆþÐE§Þ|}{9¨—Ör»‚`‚~£oQ(×BæÖ&5&=cYðyœÃÖÌ®HÁ‰:̽h€ë°Å¬AŒ¶`’ưÕ1 F"D2QÿЋØû˜Çö·uŸÄ‡ñžÝÜ6R~Ù(щ`0}uУX‰ñò׫²`cÅò<¼v­8”qéîôÞÊò_`^â?f›„ q>Fäfs1N Šk•eÐßa²â°'JNÒê(lªkÈÀ*_2Ñ${}ßàïTš†S4æÇ+…õa`Ô +]‘$…¼ rOx,·Öâ(7”/ÆGɼõ,e«µ®VÊÚEÆ!8ú °L·QSwRÇ ¾Å¯åå|š,ýwÊ…™^Î`Å'—Æ[Nj͋LØ^Íæ™Ñ÷´é3±¬zÿ³ÇÕ­mæ»WÓXÕ¶ñ{ÖæƒŠìjjÀ  ¡–˜"…™D‘Ä”þÓþãB“27jPI¡m¹aU–Ë. õÄÜp.s4†³‘}¼cü·ê{™‹‡Qm.Ѧ·^°§qîŠw‰cMæÚòvêo°”Ø®²d8GIœG“XÜfZØ\ÌTÍÔ}FT­FqÁ6_õNe êY v¶_‡¢uˆ5*JÊú¢ðÝ<»ÅK–"åú‡\­/¿d ¶ €ëXï C"WÝ…„b;"‘0™]iÖËŒ^„¬wY¥Ž’`Öxè45ý¾ÚþÚÆšÿÓXÿ¬~ÎŒÎåòvpô—Lò5¨×¿(œ•¦×e)Û‡•2wô±‹;À"ñ|­©5Âü—êœ5ÏÅ<+æŠ}Ñ‹lÔ\×–Y@¤Y`Á†ÇWáZâÐð“à8MfY/.zw-Œ¯‹F<±õkÝMÚkTäÚ nC2“Tˆ öÙUnÇFE‰–À¾²’0Æø[ЦÛ6†x1gRUWÉUÿ,®á„UÎÉ>U°$gFJö*³]áÞLô±“ÖØº‚Ë6æCj«È ‘UÅ×§ ¼|yx[6ĬØ:â`꡽LG—½¬»sÁÕ³YË­U” 8¤*UbÊ«4MÔ¬hjC™d¸ýϲºÁøê(0“O¨maS’úçÔ?ʱUTñ`³3ž°×»ŠFiºÂ§z¤Då:Þ/¥ëÙ±„χP÷òvÈf¬Hb©íJ"™=ëµ.†HIqêÀb$—\ˆ«òÏl› ãNöñb få¬ÈÁµl$qS6T°ô-ê´ sQÉÃ`@äEÊå³±Ñ`{f7 O§‰ТFtÒbbv˜Á úþÄ33ö‘˜˜ôŸ [ÀR€ÚÖ˜­kXɱŒ9’#2˜‰’™ˆˆ×ñ¶+Õ+/$$×}¸æÑm…Q6m—cH¢Ú’3ªeÌP„þŸoùÿo GޏúLuK‚'Q´›µ¨‰ê›UÌÒáд’YÌn‰¼OòùAÓŠ¹O'o+„«f»æ“±WíÑEÂ"ͤ¾Q an¾÷œUXk€Ìú/UQe*娣hÆâ_$É0Ö+¯"7Emc1f7“†‰£w,qÔpÜQ A1ç¤ñ‡õ—…ãž¡ˆá úزµœ´Bœ5ò1i1a³T’FkÌAwPQ $ØA³`W‡Åš°ÈaGmËaW¥åÝ[лuCUë‘…™ØX[éìÅÐÂXÅUn!~úé Ìjë#x)V[NkO`ÞU…²Œœ÷5Ñ,P–Þ¢òϦ2˜z'‹¨8c«‡‰¢êm¬óÊ\qÌ©W0Q.zQù‹LçZUe²"•NÖt…»Cg U‘¬²‰½’—R:˜úö,¹5Û®ò`5Šõ!}A9¦¿“=P6W?RÅ×â't ÈVm}Ç\§’ri˜˜šZf0UÌbm}–ŠbC„ªr¯ƒºvâ¯y>U¹f3Ä®ÜOÎ.’!¶ao!Y¶9¥]½K;† …)®ûeYuâFWZ¢A@d`¶xwœ]ðõï ¥k¯Ã5ž Z«§á•¹ æÒD FõTÁyÅÒ%7ýY ´–ŒWÜ‚{Yg“’Ý‘¨6u1ª Ž˜&褉B‰žlôQV°@èP›Jiß}‡:Äk5Âl+µ¯]U$±ûZ¢…'äC<ÖòøÊÝd‡mj :⌃àŽæoU÷À†6 M´d%ÊRä –mQ;Í®’'wëµk›IMFãÚaR)Å®ÜÔÀZR+`ÞbÍ0‰ØK-’ `JúW¬úYryäE!¨¯´–×W>Î#UR¥;ö6× ÍyÞ£­TÄP’g_tɲ˜ø[ ‹äíùÚŠ¦Ñ¦ )âä^@ëÚZ7,[f»æ,Dº&Ì.Ž”£nf†ëïYØi2a˜â˜‚%”1Ù–X6^ThíöºªåóæOG×xå*«bß‹n56V<ÁÉ`Ø­uûÝZ•m\ë›dZ³H¦iy™Ñ–êJl_­JÓœ@Ò&Õ•¶,ØaæªjÕüÀtù?DÀ¹4?1:P^sc¨«X«Ç\ëØOyÊÂCøî6uq‚^¶ˆ´™6\-X¯æ?E¨N>¹ALÊ”›/ïBR±düvªESiºc·Võû ·ÎâÓü@è–QiXÊc¬Ú“UpL˜©@¼Æ‚ÚÆ »ì¤ß-=E2±ÔYæ'EÕo*³”òV´)v†š«VYµ.–ûŽå­ žB{œÒˆ®µG˜*ú°ëYÊŸS>íª\]«Z˵ÌB"'jiíâyêã(hLÉy›ÒçPœYZÅJ ®¨‹ ©µoD>ˆ$E \=®µ´!n‚™/‹_æ7O!—-}r“ÑXS ©›l‚Æ”¨ê;·0ÇЮ½k“$¤¬²¿)pÌŸ1¯SÈu!X£qSúßT‰•Tu“ÀUë4ØÆ9 …ÇšPÆŒÁ/^1ÿáOÿÄD !"12#A3BQq RTa$C‘Ò4@“0br’S`p€‚ƒ¡ðñÿÚ?ÿßVõ]f‡WÚNÂÄbIPYÈËÌ–UŒf0™ä'¯ï&¸{– †"H×s¶î[nmTqž[°ÄØûGê) µÈ|¦­\¯+!F˹$ÝŠ«t~ÒzPËžˆ<©Ýmw ¨ðôØÿKö‹^l”ˆïCã gµ‹½<Ùëûǯ”h­M±Œìʱ7V„;£e$ZšåýäÖÝT x°*ùåÚâàâÜéqúÿ¨³EQÇ-° Ц(Í ÌÚ’ ä£?§0h¶’‰ÓÃ=î%ÑVZ>€±µÅÜgDî¨?6`£ÿÏGW¥΢¯ù©ô4~¿˜¯×n›]£_:ˆ¾†ƒdwñ²Ùßòüºøýóþ‚ÉÿJ½þ›oÑ×iDCõjÿÈ߃ýý vŒøÔÃ_žb¶ó¿ÿ£ó|^”Ýj 8ûªT5õß~¾7I€ja(J€DŠl±@¢Nö?×þKÖÑWÔe™™UË÷«²Î¨Ž„3·ÌÁ;‘‹ä =QÈ•d`jŒQ¿°e!rH1l‹l¡ÅQHÈ+, ØPQ!݇$-Š+œÇšè AüÍF92¤n„`Fqð6ÊBr·SÒ©"Ô˜Ô»c´§˜(ò+ªäyØCȤ@Ì ÖFäœèH/êCö6SC”Òì$ åj½ýÀÒšfbƒý=¡ÕH'uíÞJæ0éC»‹GÛÍ•£îÐpù‰­y‘G­*šx†ŸÎ˜A¾DÚÚ’X’kk¿ÜõÙ#>¡)8ÂÍ+Z«H±ÆÊ¹R˜$ß¶‚BÊ ãçe8ƒ‚Æ>[™ ’HS¹*3…äF`ä¡‘ùU‚µYš°›àæóW˶’¾ëVpìª[aÑ4¶ÛŒ@ÁY¤à&þíÎKTYAÇ`w’•ÃI¢#„¥Ã.aX0+íóùÂOr<0ÆOb‡5ªf¬Y…½šb •‰¨ûVAf†ÑÙuqv@j*>bâÎTÇï]G!€*iñ|á…•G^—ìñkˆîÈPЫS]†90bQßlZ‡î³°’|ýªÓDÊ’j!Gk ­")%k!Dý,_ëÔ>¥¦uù³iá|Ý;gU †•ÝU­¹ªg•ðw©=WÓ£÷j£ðÆ×'XÙE`6aû÷ eX®ÑœÅArQL¨ƒxâHmÿ".öóÔ½.¤ñK–Dq‘ iŽ>êbj¼~¿ö€å­?pá/xƒgÆ{ÁwiîXâPĪÙëÈo6È3й¾œ…œÒ7j%UHÜÝ7CAS‚Þ)[%æžÅ —æ}ú1 ]û,ÃÄÇnwñÐ6J®sU,7¯J}ç« {…Q³C¾niß2Ë`ŒwÃ=…«{›zPdV71 jL_Ë£“à­[°zPu½¨8Ï%IÚ 3$+DjœŽ[£­×Cå…ÅU‡0'i,…#ùnôëŽR_ « NÞ‹J˜E¥¤?t Ã̓wvl’lþç­õ6nØ#8hç ¨¢£ø†L)dW&:¶Ź0ê0@e §¾ÔJ×òÑJ!È…pUKXEåÈ™+«ðv¬²L{Ú+y18W@>DnXüƒ•]Œr â FŠAS£ l©ÆùoËÝÜıq¢4f¦Èb)ÑJ)Ü•+Èn2©=‡$Ô\1Jn å‘ò+J1{žBÑ#ÁÝY—´AfwbÙò#!=X`Ù53ض92ȹ©i¥o–ró‰ôi¦—GóUjG‚2Ž4‹ˆwÚä‚HÚü€_ö;¤j^GXÑwgv ª?2Í@çשúìO§K§ŒÊ>æY †gÕ#Û3bº*K~Òõ™þ"j`.¡#DUˆ¦œ!‰aÜí”^'2MôýÂíšæçºH òb´ÝÉŒ6q‘%òÛí—MtÃbGÊ0”vÀ7Ý`¤±Ïv`åÒÈäÓV^aè%]FmZ±%s€l¨oL¥¸1âÝ™35ÅÀb¼Ù¸Il~Ž0RŸJéY — È ‚²KÙK’å…§²ÂÑi¯CêúèçY~&Rá!2ÇŒt„´nPÆÙ&ì¼›6?ø½'ÕÓZ¢)rMHó;«¶. P¬Ò é‹£_¹ö5©*˜—»§¤»_˜ŒçS VYKìwȦ}Šº±_…3L›5ÊYÚÐ$ ÇWÅIÔ e8G‘º^m’ö®°Ä0b£eèQjr4­}Êo?2™”®%Ù©\}ÔqËÃ[!„áI"âd&ˆl•€µ²±èîËa¶vîfGïÆwB–1ãîä[3ÖFí±e·Æ»ùv¹\÷™•,Š2uÄóéE~E•UÔ"ßîÜÑÅð“¶‘¤b Ùµjôÿø&á¿ÃÅDÛ[äÖj9MÖß¹ê&µÚ¥wEueŒËv—&•X_YÙg+jZ2Ke&}38âñQ*Wö¨^D© '0UÄ_ÕH*6áí³ˆ¸‰˜ †ÅNìwJ=ÆÊ1’£&!X岃a¬œ,²×Ð/X«#mHm‘R—`ç%“Ü¿E;¯bJ^N(ì uRŒ ,ŠÌ̹|F @è·³Æ ©uO••¨,Nnx±ókº«¡>:Ë Ž9U{YT>_x=½¡ùÛ=2¯/HKõ4¬cB¡A#ÔTCQUÅ>mí¶Ã 8œ?wíÞ¢jQm –Ul™>[*C%«±çŒ!ã½ò5¬—Q]ù§%\í¡“#fƒ 6ç`Mò©b]M/¿R]3a'ÝòaÄ¥‚ÞÀ7'pUß(Ëd=á;r,Œ)u ‘rª-Ú€EvÿLxµ¾Ä©XjÊ7læÁP¬Mùèæ_ܱUiUn@¨åîFöØ3…sɉ ¯áf&0X¤VÈrlŠ(‘P|ñ)!Õ— ‰8ˆÙQÀF®F¤%‡7@¬ªAºôÿø%¿Ãž!ú(o~s]©“S©i$^{Å"Ä0°³J‰áÝiLL’­¦G^-ÑUU×朳âaÛ±;¼dî1hÔØ¢/ ¤äVË;/Ì !ZÅ{¶ÎØÒE¥%½€OHväÕÖÐßí¢ˆó܇DTýEí ºŒåæKÜÈo‘br„¨²ám}£ @UW‘¶|žÌlJR Æù8äíÒƒ·¢Á±iJRáó/º±`«c ¸òã½tS·ÅÀ Æ2œ¸»’ѨÅIÍU×bc's篳’´0¢ y!Gvbš]‰ÅÌ,¯ÛX1Z,oû}wÔ!e“Ó±%²€™WÅ‹Ø ¾QÊ®TɈ–3`¹9c%HTòŽHÚ|Å›bI›‘µ«nIfä¸å0ÍCäË'j<)ƒ)r•l~ªZãueƒ £LµX-BQë&âR=±Kl˜ÄrXÝTrÙv9¨ÐåŽ@r|lž#£C‰Ûå»rt¦É’PÈlÞáÄîÊ«šÚ„cÜK]¨PÀ:­:ƒ¹ðk ³ùXÇÙí;ž~Ü) sC#>HvÄѰ`¬*#¦c’¶ey«‚³^L1'Tb/¬²îÔ!¬$”ÌB C†ÅÍ ÈÁBØ_ZmnžmjûÑö„w$žÄFM¤:+‹)·ñùŽ )XÜw¨#û~ÑiœjDìÙÇ Ž—µ]£°L‹E²².CŠ)$ø R¸Úªª âÌÝÐ6i,\S²å·k8ÓQÃ6Ã…TŒ V%Æ*¥20d³`uÈÙݱ‘2–Õd6Ù(»J£ŒåÉŒmõSYÅÔYÌʸ…R«î̽dA<”ýn¨Se¯fj[\÷lÄ…„Ž¥ª;Ä îcJz¦^áE6Ce»Aå@Y_ ê†5Ѝ«´-+`¬ÏÍUÀF“20Ì,…Tƒ˜ ò«k£¤ÿ…ÓÖ@vc¬Èg¬dA ’7þÝJtóƪ¤†T αd )*AÝ#èGZ"?iâX%„•"â3ŽD~ì¬îYTf'%…æ¶×ø‚ƒ“_’ãš‚±œVŒ»¨Y8`ÝÀ$Ù[­ñÌûB‘]Už59‡ l{†Ø©)ô肤ÖÀ8[‰Ãs dÊ5€[¶ÁðI*&½¥d¶ç@¢ÉÀ..YpÈØ®‰"Ñû~qbB£5u@ÆÊ´¥ö4ÖVø”·U'~ë« 2FÛ’WÈb(W•Çbȹ=Àwßðf«,’:•ºCÏÝBºû5Žz‹#1H«V|»Œ@Œ¹s{“(¿à¢zÔ|A1$(­…×PýÑÆWf†¼½øñF¼yýBj$,ÂA„ d)$’àrèKÜîÖVØ÷,·fúBDgq’Û¦LYÖNâ+|ÄÉqÚˆÙ‹«PE õXñ4UñrÈΦF¦W leø#Ćdl—pZ™q%Ó¸¶ÍÉk´ŠÊ   ÔüبLm±ß·…JIjÙŠ™µ¤LdQ|Ûj6,íÊ€bòØÈ¨YjL˜ìÖáÈĔLK·él5Ê­“b@Š„ù+k 9))ñf‡“g÷#, ºâ7RÍ[6VO6ªR Çæ’m›¿€NÍ…q!pf¶lY–‚‰ºº‰±Š6 ÛT;e[´…‚†g—tÌ;ìw°Ûfô CwæÒÊãáñanØÇÝy*±H¹¹“æÆ\cM£§¿ÜtI.Šëü.¡‡ú|&—ùm?Šû˜ü^Uíñ‘-_žþzø=%WÂé«òìE[n?Ðï×ÂiG6œöcúxü?Jé×Âi?–Óø¯¹Çåíñ×Âi–ÓÿÑý½|îtºbEQìEôñø~ŸOË¥ÒéÚi SæÖÁ¿>Bþºúm<œBîEx‘š¶Û"¤ÖÃoè?.¾Kü¶ŸþŒíëàôŸÊéüƒ÷1ùöùaý:øM.çá´ö|žÌ{ï{ñüÉ?©èé4§Î›Nv­áŒíù{|ttšCçK§?¬1ÿ·¯ƒÒK§5ãäG¶Õ·Èú¾K·øm>Þ>L{nÜvÜúÒEV"#r,ÕYÄ ÛoÓûN›Lnôð6n(÷'rO7õèétÇΞ½ï gÏÛçaþ|&—ùm?ýÿÛ×ÂiNÇM§5ãäÇôÿéëá4¿Ëiÿ?¹ÍUû-¿Mºøm6ßáàÛÇÊoÓŽÝ|&—ùm?ýÿÛýO_ ¥óðÚ{»¾Ì~?o¼õðº`li ¿Ï³ý?îÿAþƒ¯…Óxøx7Øü˜÷úz}8 ˆ!0pDH`(08ìÀl6ÿä")c™s‰ƒ®L¶?‰« ÿ&u/¬è"2ƒ)g‹DRÌÙù~×ÖŽÃÔÿi¢6žI gÌËH%IHÎp9ùlqxt œ»˜â¥dTb¬Åm†TƒJ¤Š{Ëeߨ~Ñid™#xÞhÃ4²²ÔnÞ#`¹ëºÜ},ˆ5zmIa§š9J€[tÁýýœ®ñ¨)LKƸ©U!Y³Û),G’ßòRÈ!å`ÅcRä"—bYÅFäÿN¥õzueY3PV5e2Œ†ÝÈÁ2(V¨ä¤fG5Z´SMf=;é\Hò÷N ØÅ˜:оžV&/vö6cÀê½GQ«1 u,8œ>´9nÄ:öþƒ+€»H1bèP {YÂI@©ß%øhm½¶ÅQ1C@F…ªj°Em\N ¨ /Xª1ÇrÍáe ÆSºĸAƽãY²¼Ê^/@·ØP{@¬ô…FY6b:‚y`*i£<‘œ?m³ƒ‘–Å×#ôˆkz¿¨G"êew™~„løÂÅPj /qÙ¯`\22äÛÖ‹Ö´ú˜‘æìÈO%v’Â˜Ø ÔÑ6h(÷îMêZ]<)¨È!y,»2Ú²w2,˜÷1¸˜åjVÕèý£Ò0ÅVt/§î,˜ RC•#dB‚WÈœ9¼ƒ«êà™§iD®ñ´rì©%ˆ;€µ/ÝÛ¸»1¡×íÏTu A“´Y76ÀáÜEÛk»gU®—í¸#¶ÂŽ‘ÔäVs¼™D2zÉ{tŠ‚®iƒz·¨4 §mS£©wYVÌìq,ˆÎ¤,‰îe/eF¿h¾ÐjDšDÔ´? ÚùóÈ®'$È€}×[*¶ÍgÈêTŽ}k"jt§Iڨ︓™Õ¹™Š”ÄŠ oô$†è°×6AeŒ¼XoÑú×HÅ‘X©BÊ F¬‘x¶$‹ ?¯^|û[ô;tHPYˆI&€rI>úž–dw¹01,Ë(R`ecC‡Ëf>ìC^$7Ž‹(!KÍx‚Eµy¡ä×Ö¼tî‘©yQ–v £õ&€èÉĬeå~1ß•ý+ÏG»ÝR vplÔ«w –¸l± Y·uGû"MÈÔ0¼dFÆõÉSúÝûA¬hä†85.Œ½Åž$•£É.TÈæ½¼œxþ}D“-æ&ik‚Æ$ :)\@ùÌÄ+5lÃuCŠª† ¢/d¹Ä«¨ÈŒIz±!Tj“¡³¨Eä¨.r,ÂLSñcˆ¢Í²ºº6µHÎ¥6ÉŠI+(òd±‘eC½WÛB÷RÊfùDwFD í– 6°qn-â“e€ "ûÅ$Š„Õj¥Çp¥ß‘—·Ê“Ò3íÀ¬˜Z¢Æ‚ŽeY®•È%•›Ú;жë 8Yb¶‹2( >%­ˆÌ¹eŒS²¯J¸b{y0I’ØU,)}Õ_–ÿ÷@@öºU ŠÊ6E’Î$âRJêv¥ÅJoucÓ=cSé¢ÇÃ,x• ’ öûDÈRòâ  ñ9+ë’,š˜Âj$Ž=FŠ {›·&¡ã C f]œ+°kà‡õ¯QÔBÂ$Vˆ‡%y>cƲ†,K#‡%–Ùw M,ÒDgwE%cWÊfQ„µ¾Øµk ô*¾àÊŠUKݤ’JFS¶Ôã<Î%Sø:fDH ¥°lĶÙ*§‹SdbÇ…‹êP>„­ Š„^$ÒŒYpëÀj;fè1;Úñ)V@ALœnKYC•t¶·J¯XÍYJÆî¤2ŽMJ>§ÁèüÕ?ˆ¿$Q2bƒƒ`ö—?ýnBõ‘»/Ž*Ц7„1ãÁ(²4ÁšŠ[)1êõ1™u+;® ìì\+aœŽTH裴ÊD•ÁÚ‰ëGëZØu‰ßâê>jÈ®¢Ô šb¬Ü‰fA»‡¨FºDÔº–Ì—%êIYâ̾(™ ùW?NŸí‹òg{ ÀˆˆuzâFöÝE1ÄLMö†Q¨NÒ¬Z(Š 8»ÀʵFñbôWü+l2k&yfy&ø‰cC2eÇ»‚±Þ=¼6MÈeà ýKW64“j2AÚ8T|—¶¨˜|ÖÁ,Xß&]ÿyX[bª£|Ë~Ê×+âšY;#'¶C¾"'l|Òw[QÄoG¡èºÐøö$ÂIUÏ{ ¯,e,K1*ÉSkúô=VË|4ŠÏ4ÆØéá&Lƒ®`Ë+UTñm×£Å$ZÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî3¯“O…õüøGü5ï'm÷Çàþb£À>Ç{ïIÙ;_kíïõ<Ž_#ãµs—Ò±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»üøQøËï'þ§ü,û ï¿ÿÀ}•ÿñ_þJ>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî=(ûõ»J>ÄýnãÒ±?[¸ô£ìOÖî(3/Ã/„]»0Rà]‹àï½<®Ó‡bµý«´{ù‰ëÑïg+“È]\í|Õåè~<¨þ$ÿ‹¾èòÕýcx¸7Ýëùžû£ú…þŽæ¯sÊâOø»î ÅÃd¥‡4µ–ºjh¢­17e’²ž égž•'ÐÕÃUM,±Hç…È‘p<_>fŒ³†eú¼G¢Àj+šl.­k>f§¯§Ä±RœbÔÿèòÅ5-=-n ”õGI[5|Ï_S6†3H‹®é$Èù+ŦzŒJ¯ 0ÖTɼµSáµu8cUL~TÕ]Ÿ3|©$fñãÎ^TüŠæê‰+óhÆsl¬¢Hâ ƒ̘E5EF 3&f÷¾–‚Zg©¬.OŒtçļã—2–[®É%>9–e¦ÍÙꢵrõtf¬RS`ø8¢«Ã…^(ñ”®q&#RÄéŽÊ®µ» Ã0Ì]*ê©õ`¸„X–‹QÄÿ¼ñ¬.Ušy¡¢Ä"!⥮q[–ç¢Ý}ßõüÏ}Ãä£Þ*Ü6ŒIå&ÓžÝI]P[š©ýçy;#C¯ …–³ßz÷ŠõzQK[@a”χá¹ã8å<0I†RUÕCQˆAƒÇRÏ® ëh(q Ùª¢Ã¦­§«ZU–¢¥Ñc0½LÒFîqxrVnÀñ:ÊZn[VáUTxÚá5ÑT®UWKF—^lË<²DµBšXõ€‡—J —3b4u>NÕ±YhiðÁ$U9r¶¾"ÃéYééa¤Z¾Î‰g,ÔJLÓHHÅp O'5(¸ÔÔU^MfÅêh|¥QáôØ›ÐTKW>!ˆÒatøŒPFø‡e— XœiŽ¥ê-»€}?ÂÿGsW¹åGñ'ü]÷ dlO3G‚Qลe^ä‰é¥Æq*LKÇq:ºlr“5e|K ¢E“¦1&*¥w§Þ¶4FJªzêŸ(™ß†n¼+\–0ê®dB½£Þœ›…bÒ ˆ»=||Þl<ÈdÆü—à˜ÞW§òsbŸ+¨\PæÜ/ãµòb®G@6ZÚªk)©± Šø‚¥ËÒk ¢§Á)üœæ|™6†aØf^ò…AXÿ \9› ›ÃkZ¾ž±#Š®x«ž¡*VÔÕpGÆ\ÊSbRbòàxzÒIˆJyïÌ’f#<4^ÏIv1ÒÅ |ŸwËWõýâàßíü£Ð67E†åÌç›±|é†ãÙ~£øã†â¤ø6¬9è1¼˲aÓÁ-QjÙßñTð;¬Ô´µRùOò_5LÉAX™ ±Ö¤2¬IUØò-%_f©U0ÏÙjéj9NÜŠˆdÓ"ç‘ä÷Ê‘`™ÿŸªøCï´xŽYDZ8¨q|G L>ž¢›b«b§­—Õ¢©’Hƒs2&QË’àòe  ÄpüÍUˆvøóóŠHÎY [áñ½N*õÕ8º×ËŠH… Ü7ŽA®Í96»/b”õ˜=fr«¦ÅÎs›¯æGQ¸4P¦&(h¥z>Ú¸„Q´Ý˜OׯC”NNÆò®–éråFKòK4¸Y8~”¡Æ©«è°ÜF§ßÊ LÏG$&bë. [WE=Mn7‹ã²Rá1MOàç¨çûÍ€ÓÔ3MCkS¬šX³Ë!D/owý3ßp寃“áPâù[;åG6UOC&¦É²aPÓÉPÕ´ã.åïzk}ðŽJh ˆËQ×KÙê*õÃÕ/%þ/Š<1Vù>­†‹£¯‡ÊLxmm?”Å  Å‚8c§ ƒ ¤ÄZÓ’ª O³ök·cyºýÜéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïÜPTf)+$—™â¡ÃðØ#©® åvº“OM SQ,Ñ5D’N‡ã!I¥eŒ·ð.vt2ȸvUrDf1&cŽ_ŒµÕ^4{yʦà*ûÁžõ7É÷³Ûðÿ­ÿ™áÀsÕ׿ø3ïûÛü&¶¯|þ½¸ûž·fQü—ɺضÃ3ü›î}bÝåo=|mù`a¸ÚÖðøMóŽÿé·_Ïš½^öeý¿ñŸðÿ¢.ÖËùìèÜÿåÿÚõãƒÙòÒy¿Á¹ÕþóøŽîðz¸m:}íËú¯¿pøOsæø|Þ^ðç³½ˆf©oÝuøM{$¶ž¾(]ï†`+oPêÌ«¹ðà[Ï q{.€3~fØíÿK^ÜFžðç¥i,6€‹ÞÀô—Öÿ}âÿg”´ë8n¤\\ŒÊv=×µ=ZVäPa2Óæ\$×ÔGMï†-E…A†QI+”Œ×ÔÁT´3h¼Ë‘Æ%W™£D™¢Àq*<[™®†tždgL‘’§¢XÛi"p²!ó”~ãËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïÜTg…BcYMi¢Ã^cŽ ¢Æñœ'¨‡F‚VžDÝ¢bzypm7.YQί£¤mßoèR¶ÕßÄuj¢8Bžíæ±¶ûü]î½ÛíóíÂÓt©”êî\ÄAêé6ú®Þ­:´H©³B‡–ˆGQuê»¶£ð_ÃxåV-.’JÈHŒÜj!çÇ`ÀgQY&ìöbÖ $ÕÕßò˜°îî^ò-êãG5’‰(Ec»¸æj ½þ+q¨x$H™×M›º+…×Õ¿p85ê:”¨åòô¦¿ÝI(»(¶àG 74Ç2Ø$h êÜÓ"‚á™Wä‹wwñÈH¨-¥’~‘æŸEÆ Ö×¼{øé•b–.{µ‡{“¥„zÁÛÚÄt“ÔÜA$¢Bœ¡mW´º4ýñy»wû¸’Ž*€bkøÝìvc#ºú׫NÖï7ìni¨ ÒMS´t¸Q¤Í:Æí‘­0ÇËBTÊÑÆAPÉ„SQà4µ´Sa˜´PUÅ>;‰UCP˜ÄÕRÔUÍ A£¦¤Ái¢j:jHcO‹ntªü¿wËWõýâà߸çÖÕSQÁ©SU^a’Ò°$ƒ/.¥µÊ¦À¹|¿ž‚«[RáØ ØiÊ™>-µë]~¬XkÒ¬²Ñæì=ƒB*ðŠ) ©/0¼Ñûß‹×]>„ç))çGÙãžÓrZEÌUvRÀ©À1Õm i‡‡×"šUÞâ¢ÚÂ@É;OˆC™f¨hH_{ãÁñxñ˜¸]4ðÕÑÓE.ǘXOËXÃêpÈÊ)ÅF3YƒÉQ;À"Åpº´1iŽZŠ™h–ºšš–V˜ÃÓN«Ì‚ ¾ˆ£æš—|mk*¦¦–§Jzºl;“,1šÙg«¤ÕI'5¤§žk…DTóÉ¥ó ª¢©‚®šªš ÊiéåI¢ž’©9”Õ1:¯BuÃ*’’.èHýÇúþg¾èÀ>Ÿá£¹«Üò£ø“þ.ýÆKÄqLf #ÂÛ´±WT¶ïv&õX®0´ÑBÔóGÉÅpØ^fJú©!† † &€$€G4”îYu.9Ñ⾡­ #h ®c`YãYXQ'DoT¥ûôZÌt :>NäíxûCˆ¤‹¥Y7@ EÍûÆÚAµît“$‘„E’3Êì¥Uvé7øÒMÅútÛ¤ïÁ1_HKNüÍ7™‚´e¼_Iê'¸êÕá!,yQEÌU¿œûŽó¸Vf«ø4 Y&èöÄ8ï$éQ¦ÆÛ €°â™„&ë¤w ®¶þžÿÒ;­)/-Æ=ãmV¹énïWÎ8 åà^V½VÓquÚäzüÃçáÍKîÈ[¯v3Ú)‡HÐ4‘ÞOÉ]¯ 9’_P댋c³¨³ƒkôïæ¶Œ”ñ3Ý50î½´òõQm&ú­bË™#ù@€øëP§¬(*Ú R·ÚÄÚûGƒa¸}e~%/28)hég­žnR´ŽÑÅKÒÍ¢$grŠÄifknxŽ´K‹{õ™ð\³>?G‰vuL:¶†Š¦V¤§‚*h§…¡Ÿª†£´ÏPÌaŽÜ¢$×îùjþ±¿¼\÷vk÷†Ž,”¸›TÓ× ‹WÇŽË„RÅOJôÐT[-m%%-2L±S;ÕÞ¢ªš42ki£aÌ€ ªSØè:•:ÿá·Sî@XC=*kzK…,ÇHÝ­Ý:Ö7ÚüJ/Q<í§ªãR¹cñ–"Ѩó{í¥zu¡t´œ·±Îà‹FAkóCî!gEè]BôëV‹3Ø*ép€ï$÷käC"lQC.›i=V¶«?]··ˆsbVµAñÍmfSñf¹Iî=ÛwXð°´ ¡ŹŸ+fE :b@Õ§o_ÊáºÂ¼åpzy@÷;Ž£}¶&ãÍØ_ˆÀd–2X‚«¡Pñ½ÏÞÿÔ.Q!3"…Ò.¨÷ù;­dî;<;ñp±Å3<_€÷ ç©âãqÿ(&T1Fúe=Ž…¸U²¥õìSIk®@> <:|7ûºéêv$² »±­·‰áy¥—–9RB–})ìnn.4[_zq]ÑÕ GÀ1l&xä¨M2Öaõõ”õëLó­Sö!5=Q¬†š8áššH%¨¨§1û¿ëùžû£ú…þŽæ¯sÊâOø»÷n[©¨-™Z¾Ÿè⢊¤ö~ÓERõu22¶O8–nÏ,Yªêè…1ˆRöªŠwBÉÞ{±²);V[Ù_QŠLK š· ®¦æ­6!…UÍE_M”Ïɨ¦xg€M ²Få%ë†Fú$n0¸¨1¹1œ_/áX.™­j£Ä}õL6š¶¥kUjfž™a¯<Ȫ厩DÍ==JGîùjþ±¿¼\÷W¦®J|¿Š`ÜÙh…E0®|T+{ëIX©â¤4´auÕ&8©ªMU=DsRÈÐó)ÙQe]-#žf­*¾¦mÜ:¯³ m·b’_a=Ç(€·ùú¶óEýwâš6"ÕgÒZ4ØÇ¾Äü¢{ÐØ¿©d©•co¨ó@%š+\…~ž 6oòx,Õ•¢{Ò=W'IùRº€¹fÞöÒlJMj1*­ÆµN¢L„•msnþVá„ÎŽUc0i¹tÿÂ]NA¸ßO¨†­Q'3^¶˜Nê“Ò[À =×ñïácŠeÙ´…ÒÁwß{Xx|ýÜCZ6ke•{Íõ u/Nÿ}ÀI]Z8ÈÈQ= üªß»X[M¿”ðÊw»G;) ê”÷•=*{m—bœâƒy¹‡“+¿àÖº@Òå{ŽÜÎά4U:#R|ß•kFE¼Ý,.H E&ˆ¹¬š0ú½r¬Q7(JÒÃOˆbX»a˜«RójòütX®#WR³Æhઇ Ž’¯\‰ñ5 ˆÄñÍQÙP¾ˆ°¿}ªðÞt+"bXŘv&åó’jÙšÔÓEÖ-JEBò&ˆ*å/6²ƒ¤Ÿ(G<õx}~+YO5%lTÑó%‚S£SbN šJ…ol(ÑC9ªh)æ÷ç,âqâ˜wh–‘æHªiÞ¨B4”õµÓÕÓLX¥åÏlÐÍ Ê RÆíû¬éþú;š½Ï*?‰?âïÜA‚×aÏQž»-f ˆ¤5 0Ì&¯0T§ŽHà¬í}†¶ž ”ªŠi*ŠS»Dóv>]¥x]F®•¶€5ýޝ DXÜF- kv/Ó}.X¬¢Ãk‚<å·~ÜÅ#R¶åù¢êÞl]Kee¾ß}ßò¸,ÇS´¼´… ºS¬j+ó Z‰asa~î#Y¯1e:bŒé’>ës-˱B:έÛÍM¸ ÓÚ^¥mÝîHû€>$íý6$ƺ$ùÔ4—ë¹ÚÌmkmêݸÓ¸Ž4ÒÏÜáæîÔ m°>÷ËƼúåPc6B 1m®£Öt°$|·ã˜Oe ùcÖ¥Èm?€‹wz¸Š(äˆë]MpIA2Üí×µ¬¸[qËÐVjŽ•;hÕ`€­­Ò¦ÝEUšãnå ¡trJÚ(Ç1MBŽ‚ÍnÇM»¯n­¶á€˜¢´œ”VT^–ÒÓêÚàƒÔªàñBø³ÖC„ {=L¸DO^RÅcž jÉé©jge µ0¢]3##Ä2ž#Œâ8m}5.b8å$mU<˜zÕ6 Xu%U}$4¯ mEDSEˆ×¼Í<‰=B<Ž—ÝòÕýcx¸7î2®cíx¸|ô•ôu‰=ŠÐË[†®pú2·Ä)0šªœJJ…+Ò BJˆâ–.×%:Æ£E2ÊdY$B.7: ®Ö:™ok;›U¸b!xÙãÔ½@  ’ã^^ÄØ÷íÀæ‰%¼iÉE’M=cs`Iß§mÔ¼kBCÆÈÓ ¶2…y4ÚÍp»¸»ÆÊªú¡2¨hT“+ôßÎÕâm°+ÓçxŽ$.eæsJ,:ØjÙ4ëø»Ý·m:˜q©¡˜2$+e6Bt_ÍëW$ÞÝÜIš¤'Kjei^:¬ -§Ã¿‰ü|ƒLi3Y‚ëiîÆÂú‡—k$ä.¢K©î:Qºm·vþýP¸E…¥-ñº¬ãvÙdØî›ì£‰ôFU£Ñ¦jBHR×ð]CMÊîî8‡â¥”¦®dFúFÌ,ŠÏʸÛMŽ®]þ~#Ò9ã”4Š#ê (:SÚß>ÛÞüU/%ßn•6<¨Š’ƒÎ=$êÙokݧ„ɵ˜†I™+ñJʪ’Šj)ñ*5¦¢Ž­­’š*ZÌW𵂖©–©ðèbոܿ»þ¿™ïÜüd­Æñª|J޾«Þšõ£‡–Ÿ›Šº††ªž®²Xª$§8\”ò­0œWLaª¥¤I2¶–å\±G–°X0‰¤‚Ÿ Å(ô0Š:J©Ž)GP°Æ”p¢—Aªyê¥r†š*>*,Z—ÔkÎl>Šž7®«€Þ¾£´ÁRTÎ% hâ"ƒZëé¦4JÜK®5uøµdõ5µ2ªëž¦¬¼³M#ÄJ¥ËiŽ!!@¨Ð)+Z]!51*l5d’ ]Æ¡ÝæÛ‰*^E‰5_” …Áßr?”:vûÓÝr/ÀŽ9 oÎÅOŸpK+&¦¾£½÷éØí+¹‰¹R«u]÷5;ÞÞe¿¿B¶¶ ¢BßÊ> Cw»j.÷±µøÕéä—3Ÿ¿‘;ù{êU¸né‹Í}™WK1=í¨iTë;ŽãÎÓk••™f´DJ„Þ—_<*‹ndêÙȵ†óR`9‡0a0VHÓΘ6+_‡%Cè‹ãtÒÕÄoˆ‰ZhôI%<""Z;ƒO„ü(•;HN$i0ËVRÉ¥§ªžjI¥f zYŸµ#¥m_¾ Bj¾\:iðß(”²â°*4C1áRûá=]E_2›¶aÑûßD)`£—³´´KÚI§…Ú ™gžDÄñŠL"« ƒÆ&‘j'ZžxŽžž¥d2$P¬U<º„í4cœ)ïZ™ÒUoÜ`Oð¿ÑÜÕîyQüIÿ~àฮ‰ÇנŰLÁEI‡5(¤ž% 8>#S6!i¤’h«äh⤑i䚘žWçR¼äYõ«)°ó-§»Öz·õŽ#K¹hX€c £–¬VöïÞDZºl-ÂÍdÓ5B?(w’ºýÝË«{ _/ˆç ÊHĉ«Äº\2XñÙIï±°;¡yœédèg•#ª‚ÖØté6Ô­«‰J3B^S+«‘›«H±½Ï3¾ûi·à,…×–7u*6Õp.£þþ?ÑÀxÈ‘u:"­µ¥l ñQæü‘ê·s‰ôFüÝ”ÙMÀñ‹yÍê#Z›³Ô snVá‡]*—óo¸n¥c§“eemïd,Š«°Øýðµø©…eø–Жk›¬2DÛ*ìG~ÃðwTòõxú£*²_vþp–,>WYÜôék=äyTÌZâÊ»›“ÒÌmf¾Ý%,‡D‘¸¹Ž8íË`ƒ1¿ÊÓáá¤|üPb¹f²lJLưWcµ³–Ô1ªX‡ÃàŽJ* ¡ Ãëá¬Jž+Å)©í1TE3{¾Z¿¬oïýÄ’áx]~v‘)ðœf‚žka˜tT4´òÌN ¨­‘eì•A‹)¥Ó¨†IÕV¨{J;•PV)Ù6ߌ…ÕÁµ­ÿ0<"Ú ]!™»¨Ôæcâ>ùO}¸ŽO9”˜Ä ¤>’½-ªÁMôßÔ¢þ#z”–&çO~Pé;ZËc{ ñ#ÄŽ#ç§+@eˆÃ¼†TkKf²íÿIûíÅÚRÞ&²ÊçkŽ’¥<åM Óëcý,†mFS},-ªÚ%Y?âè¸Zþ…¶‘ÌI4òÛB ÕoÜïÜXo¶ûI¦.…]>!ʆŸ’ÃYÕâÛwZÜ53D;M‡©zS¿ÎØÙ[]ûÈ î.ḭ̀²òàds®þ Ê}[ôÛaâ¾41˜äïΙ$i<åÛfó¶Ø ‘ã§5Vg¨W–/û€#}Àø»ï½üìÅ•ãX¤?xâU’ÅO]™T¡>7îÓÄ…ýå{B›@W¿V䬀n<ï ¸Â(ñœRl5ðƒMŽ`Ô1¬ìoÁ*#¬’ˆÔNHû<•“SCµ8|UZ&§0=Gî?×ó=îáÇ6c ÷Õª—^ÉW=Ob¢#ÃhëÕO©äTKÊŠ &ÜV`Xô¸vV¡Çù˜eu b”˜®' Ó$õµ=²^Ž®W“¦¤ìæ!Øù¦i©yÏYU_Q$³MQ4ÒÍvæTOQ'2z†Ò¹%›Q@§exìé/B¬F5u(ÎAó.~H²Ý´‹Ü»ø" ò–ª1ò”)md\8ïR¡‡A¶Ä߇`ʈu÷çUôµú,¤¹õ–Ýü^ 9  -ºiËuí§EõG¸ØpòMé{ëm¬þiEÜîu_ck.¡ÃÊÑÇËuXÓWzØm¨&­¯Äíâ·„GæmÎömû…øX—LM…‰=0·¨ëõô·r››Ì×®›hꬶ]Ìn¯ r;Ö5õjPÜÂêl{®lÌÀ«OPØ_Œ/0`bøEp’:3C4.œªºzÄW…䧪¥šzz°ÊñÈy2$ú$âk«ðHsy޶züyãÑM|ôðÔCOXòËcN´òTF•5f•YÝX×ÝÀ>Ÿá£¹«Üò£ø“þ.ýÆ=U‡4Ôâ&›®‚*P¢š™JøqY¥…çš…!«ÑÒÃ,L˜Du70-\S¤) šSLÔ}Hon¤Õ¹·zw±¨ˆrás¤€¥šÛõ›¾®ë/qù“F®^¦xÞǪkH´ #/Æ_¦Íu¿¬#Fæ1æh¼Òn [Ci¾þW¯…‹\Äš5”é7› ùƒp¶½¬¾u¸„²É}µ+1ûí$l=`µï½Èk^89HAÝvÒïµØ^ñ¯à.{¾q~sã‹eèãRÆË ßùF$szI+°ážÌÎÂÓÕZ×Óf7î7-óO ¥ä› ÙRˆÜ‘ºô‹yÆ÷¹ínâ‹§]zuHVÒ¿1ëpºšß|;ÆÒH±‰j´—S¦/2P«QécÝêµôÂ"DFÓÚ@=%Ât¹[ëd6ÖX‘Ó¬q%;Ënj,’éM€HÔÌ®ûþõí+<ð¶kC¥u16°c©ñ·š¼Tá1U¬µxF5W,ÔbÀÔ˜§ÇÑ+Õií/ eH˜ÏnÂê‘RÓê÷|µXßÞ. û‰1|¯…Öàø¨Ä±Š|´ê4˜‘§–h1hiÞEzÚèà”â/OHRDŠgíSVMÄÍ3ZYSm ±ÚÇr VCÐ×*vw–s*FÑ€c•:ÑŠîIm[ج;Ç’¨LœÁ/üEmK ì5n«s´}7ñâ99¥¤Ž62(p¬Ž4ÝêU÷¸·Ì7î®Y‰¤\HÌÑ—§T—$u³(¾ -uîâ1/1ãMIyM6Pšn¬¶zÅþmÏw<%,ñq„ž^6#å7p[oÿœ%V6,Z5IS%ÉmG¸—];Ÿ øye““4E†¥k±àn4„±ÿÚ7½¸Œ¨Gd~tÁ…®ÁWÎÞüÂ7Q} é°ÓÄ(J˜Ø³iNà¡•‚,ÖWáâ>B“"|c:µ£åë+púôƒÿ³}ˆ^Lü´2®­Ö_Rû–û Qm@›ïÁtæ­¤u¡c€;]B±;¨¸M­ÓÞ;èj±É55ƒI%v[ËÑSKøÃE6¢¶|NXž–Jxà’°K„ÁʯªPÕœèé)'Ž£Ýÿ_Ì÷»€ÒbFºLâ$¯“+ÃAR)„TÕ 8F(ÒÒV@pîdT,°O_UUMtUPÓ¦$ãTÂDÅidvçh#f{Ù:»¬#¿‡õUœX…mŽ¡º›õï³êÜ :|CÝV$‚º‚žhkÜì|Þ›Zá·7ï^9zI–C :Y¼ÏŒUH&˰ ãäxéâˆ뭬£}0¶åÇ€½ºw?öàÊ$…¹H×¾¢I}JnÇ`;­ÿüá Œe‚¬Kw@Y¯§w?ðö±k«Äñ'0²ÊK‰s`­·Jêlþ^ï˜q#Ú%Ò@ót¿FûGI¿vÆÝÿ0ÑË™:ƒ`ž¯7«¡‰°°âDY«Q ¬¶Ô/ζ­%U[eÌG†Äñ䮈·(t9]×ûëÜîu øž9 ¨*’Šçª דu×Ñ¢þ¯p@’ò _xd¹<»¶è[rB/òJÜ&¯c¤Ki žqÙ–Ò½õjk…m‚Ž%Vc:BÑÍ®= /4÷v-ÝÜ·{[`BTñº¬®9r\½­rK6’ “Ýæy¶Þ ¬Fµ©±¥¬+Јj¹x–%5 i¯‘¤J9)Q(°ˆjØvšª>eD´ëOÚfNZ{˜Óü/ôw5{žTÅ߸ÇfÍRÅIïu4µ˜-rµXœx¼+Ú)¨°™«‡hÅ{?`ž¾2¢’Y‚èdY¢çC  Feî±Òo÷Ö½öîÓÂGÚRq#ô­´n½*uØ_Y#onå€*bu5•uêÃçsnñÔ<ît÷¨§^…“GN¡~­7mì¯ãáÞ.Â(T‚Ò“a®÷‹\©Ù®^îiaaÐᇟ#¼nf¦`>PÛv²jæéí:ˆA…¹{üXvv:N¢£b8:åTT‘bê’&b~Qêù˜}éëßn%1‹TfÁWùvÞÁuÇ®ÍmWá@E…‚ù©Õ;óX2†ûíÍî¶¹6ä+Z'ã%$ÎQuµ¶* bU´Ø)±~[ IÉ ±<ëŸ{_}ÿ£ˆ¤ÖËfƒ—'y²ÞíѦÀì»êú¸GÐ*dy=eîÌ¡_EÆúØCÕ°øÎ5rXdÑ+¢I.Ï·ÉÔë«­†Ÿ(=ç¶žº¾‹0Ôœ6ž‚¦£Z‡¯Xg– '8Œ8}%KEA],ÆIhâ‹U= ë¡§÷|µXßÞ. ûŒÃKA‚Å€vgÃå¬`9i˜1 ªXëê1—§aŒÕ½CFÒA¬ÕË âLÕ•Æ•³@QKkNXPn"mßfp¬ÃkWÆìDѬrèFÕi sÜä€|}}Ýã~!ÝV>•¶¯Ì?%Ÿmˆ]ÚãÔLc—6ˆŠ©Òua±,ªÿæÚå5µ¸1˜Ö"±&¡¨j7“þµPõ+Þ8hen\M$Ì’ÜÕ!W¤–î$7K^ä]|8ä;"ǧRJN¦“åi#m2³w“½íÁ˜Ê¨Ñ*”Bž•¸Õܤh>"ÆÖ,adç(ë˜ü[ÚǬî÷; Ç}¯%ã2Ê%]SÔPOpðð âoî¡“¬º6‡+¤X,[ Úåq}€‰ É-Þ2P(o5›Y¹;”lnæü?&EE…€Ž`£S¯,¯Ô‰{xïo7‹O*%E.9©ü 1øßN£Õ»x‘~I¦¥×˜Š@”ÚÉfØ€Öo¤ ¸È¸eD ÄÍ+ÕbQI ©Šª‚&ŠJYÚMoÎ…a¨ªŽ*8*¤F¬QG Õ~ãý3Þî!Ošß ¨Ï86TÌU¹n&®Äé* ª jêZÙ°ºšhAªªŽÃh1y}3Ì´¹ª™fyyâBÉ&¥–(eOŒVGm¬º”1t6Ô’èV@¬©VÝe-h˜hGæimµ¬º®+_ÂÕµt‰‰+N®û´:¼ÅmÀeµ€V¿O©\·šÒê·WT…º¼ êÔ þkqª)ãóí¦ÚÝÁe-¨ë„…Aµ»¶æóÉ$1óXˆ¹ È.BëÍ7Â÷ÞÁ{Jê^Z$$©ÒÇ}EAÔÝ=Û÷æí$‹€XB…AFõ‹je¶ÿ2…·Í¥'’HÝuËÊðµ—¹}bÛ l ßÁ9: hÃ¥µ O ÕvT&Ö²‘¯{ž{Ùù–q¸³ -"ÍàÌÖ:­Þ4öQûM~šJH’½'H›•²OO,RKÔûä¥g¦øºe ÍY!nb ¡4Ü͵ßóp£vq0'‘Šè*M¯sµºƒo«aãă–¼Ô•¬šA -±ºß¼uõæÿÓ#•Ëe2f6m ÈÒt·›e“Õn Iè‚fÅŠ÷énþ펫±®Ûªìtj¥ÜGÖÂîÓY4(Õ¤XÚÖ:}QÒT2JíòU¶n<ñßkm{q1VY#^Íak —¥,G¨þû×Å<$¬n€H] ûüëýã¸íÄ¥J^—,ÌܯªñðF®«šÞdí6×~bª³iUp-÷»Ý‡ 1I§œZäF;’ÄùƒpÝ÷÷‘ÅD-Êì(#Àó›ºÁµüþe­°Õ!=2ÇËi ÁBô’I ½õ\ïu"Á&4VKÛf’hªëoASMÙbX jJU¦¬Št”K3Ô¦-¡­MÑÅËêq0ü/¢Š ÅVòVÖV-e&)5E=3k¡+OF 4´éOMWO ‹š«SÚ%š¦xi}ß-_Ö7÷‹ƒ~â; À*S3å¼kËø¶g«ŒA˧Ã'–†ÒŠZÉ¡®‚ª»¶ÍO&+OH”µ&ŠÕ™÷¤s$Bìè×#S‹Û¼0!WÏaßkñSܲF!¦óUË9MZAM@je¸cò†çd7&fcòš$*ߤüÌ^Ýý6 ½¡•ÔË ÅË{¯™n(äí`GÁ¦“HhŽ·pçYäѻ܂PÞ÷á哊:VÄᦩ¥Š3SŒÇE<|ÚŒB–™ÚZ‘kQ^!AÍ©0Ä“2‰irÍn_ž¦§l† +[UpŽŠ¡hkÛ\€×ÓËO%=u¥•{TSi–Ag<`Oð¿ÑÜÕîyQüIÿ~â /‘~O/mÊIIQjZºƵT*ò©)*(%0°¨ž!S?%âIÍò”rY)ÐÑ¥A:Ó¤l;`Ôƒðp©Ë& †‘Nñ+ýùðÑaßqq«‡Ö¼‰CD86;…¾Òo¨¶ÝzmÁ——ÅÍ.å鸲îOBùÀwW‡ÚE³ÊUî™Ó¤±½ÕCt‹j`¾pÞóS ‹¯Å³›ÈvBÂ÷±ÛÃÇs/+ã Ô K%ùŠÉ£PÓe¸ù÷pH:Я>T~öØrö»”ŽðmkïÄ Ê]*ô‹rî‘ïkßk/r8¯._0`KïߨŸ“«Õóoac: 5ÑœChùF㼕 ZÖ߇¹‚(TrtßQVóVUì°|í^7€!h‘ƒlX<†5ø ›îCwø \÷<Òƒ:a^¢¨ a~f›±½‡ªÀîAÝTÅH›(‰c™+É«–±ª(:ãæw‹‹ôqGFÑÖÁqlb¦zT «C†Ik½,1â M rÏ\5*-%G»å«úÆþñpou¤‘•#E.îä*"(»31°UP.IØ Ï†Ž†›—†aù‹Hé„óaôÔ•µ‘SÓµB³%G*>‰9m)gŽ6 ÞsHæñR¼é¥•Cwí®A2©­·ï«·-¢‘RXÀæ[CZ6'W†«ÛabÚXjæjÓñYðÙLš÷óÂÚûÚþgºÊ%™­ ²u›YõÚäC§‰9e¢š8ùat·Xóµ5ÁQ –±¸ß¨´1<}jT²…ÔÁ6¶›ìd ÿo›Q„µ@'¸ùZ ïæïm;wÁþ/fÑ÷hûÃXƒoVÀyÀÜ aÖgÒÎed¶‚ý=û®‘mý{ñOÖ 2UUºØ’{ö¸;•¿•æ»”«|_Ašîý,¸RúºX_…’yuȯ§”ÞÛX°¾° ïr ïïàµC+w€º³‹Žg_Ë‹×Þ÷¶Ã~%ÒŠQ]ƒ1ki;_UÚçs»a¸¥ÔZñ¸dÓñwR2ÁúË-ʯþkn+¹´òÔHa<½U=iêÄôÏÓZ);\}–9¡ì×?›ÌWŒ¬˜v^lf§å=EX«¨é#‰k¥5 KEE,“MEIkò%šI CÔNy<áM¹þ¿™ïsÊX61ÐãiИh$¦˜5> œ)*#– Bº4UK÷Ž@¢X$–ŽWãÊâOø»÷{,Ë—)Þ®¢±Z\Û?>:ŠHÒ±áªÂpÙ!0‰ ˆb|J:‰g†8*édZTªjj¸fˆ Ð4´MÌÞHËŒ·êm—¬ßpI¿‰¹P舩%ƒFV[-}_ÝÝb}| ع‘@!]¥ŽG ÚtFnYUn7»È·R–%Œ±C¤´m®úÑ›K¦úû¶ðnð'=d},©ñ/Ód]Æé{.À;¡vv–þi3èßp|ÐlQ¼NæîvŒÊbæ Óz¯mM­ˆÒ·:ˆ`ocàÀïiŠ‘A£T«n—µÜ·‡XjÛ»„Ùfšif`÷äê×u±!MÑJ“náà §#[9`£sc¥6Ù¾V±{~ÂŽÒ­+8$§ø°$7éód¦ú‡®ò@ÏÊ•¦ÊÿÆç=µZÁ ú~Hù[߆ˆôÓ71Ù.¬ûmbÎ4÷–'aëâ!Ú †^¢WÓ}%Ã5¤S}´ùÝç×n"‚:Y&•Ï.*( šV”n³$I}m%®>-ÏMÁ'~0ê\× U-BWbõQbTAˆÑ`k"ÅEMYR¬ñé’:–¢‰…¡Âž‚(ÂDˆ‹îùjþ±¿¼\ÝÌ1â8¸Á©ÖL.Q3Á=TuUb”KA-52IQ*ÕTÀ1#vi+fýïM7N!†ãØÞ/˜«Åm5AQKK†ÇA4/3WK5'&`´ºXvš.T°`U˜L¼Ÿ½YY´–¾j•*? »8îA tñ)˜ËQËfê7°CæêÔ.°>®“Y1¡ŠDÒÚEú•€:ŸZa¦ü+žT2B¼Ðª\ªX:½ŠuŽâYNžmý|s@„»Âìê[J°WIî@¿­þûn»üx$žS‰¯m1_Î7ÓݧOÝÃ!BjK›S¨µÈRFä®ÞpÕu¹â§©™¢`Ë iéééë+Ö/µ®8š'˜#•S¬L÷±,yqßÿÓò<ARaæŸ [‰´Š·exÇqÓ§–»n ¡ïÖðú—DºßJ‘iŸ4`ûšíÞwG5=K> ‘<†–8#æÏ.ˆ7ZžPÐÔÀóR=·‚xŠŠE“™ñ‘2:£uén ©ãV–Ë)ñ*À³\°Guc~óoÀb3óÁDÕ"GªH·b-¤’ ÈØ‘ëÙFqSbÃA„…¹Ý¬Oà8iõðfÐg5KÕ¡E⑯k÷éæرó”ïÜ–eT7…ä¿,tܸ u-mVêiI —<Æ:Qˆ:˜ò]¬C!ë›X_ˆ”BИ“[5ÕÖ hé7¹ÿÙ ø˜êPy¨êƒ9Ø0:Å´—&öQø-}¢UšJv‘K¼²Þî-ÿ>Íæé;ÙFÝk$¥¹ºVÂÁÔ[ξ“}-aÄ)Ñ•¤m2’Q¦³ËÒm©zE·°]Ž€ \‰2|+DHì²GfŽehdt‘WKY ˧N—ïÃñ<0âyŽ£­¯ª§¨ÅÖ­«(éâP.Û[<óâ4ýªŠ¦¶ž®á9u¼˜þ.·»å«úÆþñpowÊÓUŒ6J¹(ê)1>Ƶï‡ÕQÕÃP³ÇNÓSj2Ä“Qɦ¢4õS(jßËXŒÒVš8¢“ ­z3B˜­T ë[ "¦´¹ÂZgQQ1SIi•Z5Œ¬d3¦ºZ>SyÈ׺•C÷¡ˆm?(¬CP¨ŠíVm%ÀØ],˱»üa>jìnTŽ5j]Q:!þQŽ•$¶b4êû_U¶âwx£›{Çf倛ëÚã׫ÇÕÓÁ¸æ,‘sïü‘V[¢4š…ÇC mótðÎcY»OòdŒ_èÒ|ß;¦Ö;ØnÜ4Ìâ9UcmˆBŒ€,|ó«P{ØóñŠ¢íRBKÕrëóXô÷‘¨w_ædyˆYÚf}DA€nÜÅVA’;†’÷«É)–@ÂW¶Ã@ÛÔA°Ó¤xð²¾›”I”)Ô¢ U¤Õ{¸Ò4éÿ㱋˜‚¼ç)á@`‹}¯ªÿ†æÄ÷·fY)Ë¡ùHòw‹$6Êúôuwu"&¤ŽA'N‡ë²°í}:õ‹/U´’7àÆuSC‘£(ë¹ó¹—½£Ö{͘³jÕ¤‹´2Wöêœ9$äÊ”uQP¹†èX-l´5ñÁ¬‚¥,úZϤ 6À+›-M“ƒÐˆaË3 °ŠZ9$¢£§Ž1OI¢™©iáš;-1ZI`ˆ(=ÏõüÏq™1ì0×â«àxµZT1Ÿzd¨‡]<“Ç ¦ àÙE1ÀÙ¥äDZ)ðiÒµÆ+T,6zˆ†`Ô)%% DÒ©ž²©âj]0§ø_èîj÷<¨þ$ÿ‹¿r•Ùƒ)aÕ5«$ó=]#Ö`õ52Ô˜L²×Ï‚Ôáòâ2^ž>[×µKCñœ“>ncá‹“ãWqþÌ=§ŸM Té®8·nJqdú¨Ò¡hår“KÍ#'Oy6j=ÝçßÛ›[kù»ÚÚÁlœÇH_1æÏ ÿùïÎx dö Ÿã&mïãÿNøün¯;øÉ›wÞýÞþÛ¿†¾M=FíüdÍ»ŸYþâÿÚát_á&m¾‘áö{€~›aüdÍ»°·ð÷‡‡«|šM—H¾dͧaáöwæö®-ð9¼Ý?l¹»Íõ}žãPÉÌÃlÉ›{†À}žØWNPb¬¡9“6}ùÿ¯€>=—Íþ2fÑoÿÎðÕ”.åx$¦tÄêñ\r•à—HxÞƒ¯Ä(_ÍKS–sRÆôôTTðQÑÑÁ -%%,1ÓÓRÓSƱAOOJ‘A"Ç 1ªÇj¨Šû-_Ö7÷‹ƒ~ãø]‚ŒXá&¤áì+ñL=éûg#´x]mȲöh‰ŒŠ¦0T)$•FÉâG”8dz:Í©Ö$:ªº(‰yQ<%çhQ¦ Ë¶N#{Üf<ØÜûûsæôOø×'WÛ&mó¯{ýžõðÁrqÁVóeˆ>÷öÖù¼<82shà|$ͽçÿåÝÂéÉì4’WøÉ›v'Õü;þ†ÝÜð4Ý›Qþ2fÝÉ7;{ýmÏñâã&êÕöÇ›|ï_Ùïþ\jøÚ·ßá&mñÿßß0ÿ·|kˆøI›lmÿ¿¸ûOo7GÛ&mó}_gx:²s@üdÍ»áö{»ÿø Ö±l™³Ç¿ÿNÿç߯£“šúµ_á.nó½g¸!²q7ïþ1æÀOyè&×ÚýÛ[¸qBñäº?àéZu—ƪ"gYL«Û`Ÿ’IU‚b1Õ ˆ,y(±wý3Þæ-ˆK“¨¦ªÆýð5í5f-4Z±G‘ë$£¦—zl.RÒ¹§› †ŽZڅ騭’áAQB>1˜©C,*È­(¦ÅâçÌÊçQ6ºŠƒ¥§’FE <ù&,‹š,GÃc!B^,;¥‰äèVi] ­&©YÌ®îÖøÞn¶\Ûæ÷Ûì÷Îx¹É¤ß¾ù6 ?ý»êÿà=C´çî·Û.nîü½Æù4ïkÿónöGþžðXd÷µ€ûeÍÝÀÜéï_>5¤óÿŒ™·«ðÿpàs»(9“6›w÷_ùø»dÖ7Üÿ3w®ÞÿZÿ?äÓ·qøI›uÀÞÿ_ÿ>9®;¿Œ¹»Ãÿ¯é< d㱸þ2f݉ï·ðîÜh9‚ßU¾fÞÿ_Ùîý†üXäçóB}²æï4w³ÜiøtØ |#Í–°õÿïý<Ù3QkßVaÍmÞ-ãŽûwøûM?œ™·ÿ?áíÇÌvâ G“÷Ê„•ŸÌÓ8Õï ÍŒ»Ó=ÖÜÚvŠNYxµr¤thQr\:`™ç]XÆbrîæ"¤¾.Æ®ͧ«3S®©´Æ;DüÄ̘VÃðÌ^v¦‚zFªJzhÞid4¸wh8m,òÓƒÕTô‘ÕJ²Ôó&cUReÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«Üò£ø“þ.û£ËWõýâàßt¯æ{îŒéþú;š½Ï*?‰?âïº<µXßÞ. ÷Gúþg¾èÀ>Ÿá£¹«ÜÍÅ„Ÿ =äÿÓ~óö/yý÷ÿòŒS´v}?ý‡+‘ÿ›ñ~‹½¶ú£Ç¢ïm¾¨ñè»Ûoª@ü£CþeñèŸ ~Q¡ÿ2øôO?(Ðÿ™|z'È”h̾=äÊ4?æ_‰òåó/Dùòù—Ç¢|ùF‡üËãÑ>@ü£CþeñèŸ ~Q¡ÿ2øôO?(Ðÿ™|z'È”h̾=äÊ4?æ_‰òåó/Dùòù—Ç¢|ùF‡üËãÑ>@ü£Cþeñ‡yJÏùS Í“ÓÒbÒåúJØŸ ªÁ¥Â*2kšjš[j*‰è¨k2TUUšlA®Z èôQËè»Ûoª7GMˆa-‹ã~Õô•q¬´óSÇ_QO$‹":ÛJ“s¤ï·Í ‰43"˱:ɱº†I#u%]Hee%YH ÛÝòOôþÃå/ý¾;™ñ)pL6¦¸­E\4)S4QžÉ@µ3üZTb5f AgijªaŠ8ä‘Ò6Âs.UC2WÐÐÍ]IEˆÓbMƒbUX}%}N _-)´X–+#Žªžhà V’õ¨ãÆ1y~AY‰WMbÜš:y*ªeÒ7<¸bv°ÜÚÃŒ#6æ&؆äû¨ÃRÈÙ‹ ­Äðú]MTu̸Ѧ3ªý7÷p§ø_èîjãɧР›ú;‡qåGñ'ü]þÞ…«; MQäbALÕ<„iñ/‡tKMÉ2ØÉ]ÊL/?-,+·Û)ÿô¹åoö›ŒëSU#KSQä·1ÏQ+áuxÉ<¹N²Id|’jüžFfl.¶ijðò{%L4NÇɘı<â9c'axn«§¤íøNJÔØu>HûUuBÅ+AIº‰Dr´5¼¥bgÊFlËx¼y«1bÒÏ1 ¯S—±Í1Ç$Ô9z†« ¤Äé*jUÃ&Ähq|颊ž*‰×âÇ“LÙ˜1ÜKå"£É{ ²ç”ÌQ–ñl"Lz¨ÃŽaµñ½4Xfe« –º*H*f4 æŠ*1¥ñ°L»E–¡‹7f:ZÚL#¨Å²õf)OV©]Šåªº ïttpRAMG,±ÓÂ.þç’ ö)pgõ‘Eø™ÛK¨aª<¶HÚÆýI"«¡ïWPÃp8òkU•ë㥩9{'ÒâáyòŒý£à¤ YV ”ëè+©*D±@j1*©š*vD¤ž#5m;% &-ŒÖÔaò ÃSGo(™*X¨*fC&gDZÚÌ' $i%êéäíeE:**¢uŸ ‹6eO'^Jj^§ì0bXLÇ6aqTIJò%ž\¡‚bed f«Åªé iV’½8×eŒcɆ$FXÊTØŽRò•HôôT˜ |›™ ’ÄpŠü?A¯äÑWÑ%hªq!AO®À°:Œ·„Ôá|Ê,¦¶«|>>ÕP I]\ïUUJÒšŠiHÕG$#‰4Äžç’ ö)íóúÈ‹"ü Ìí¥Ô0Õ [$mc~¤‘UÐ÷«¨a¸y&ø+‰­'?&`‰‹{ÕäÃ3ùL×_M—²øu¬ø‰áþòVDdq*â|Ù±ßËìëÌUyר­Ë˜VYÅ1LF*ï"™ß!AÙ©9 RN'š1lKÄI¤jˆý䊟µÖ Ñ¿*’t|"§9æÌŸ•2Ôa¸®äêƒÂ$Æqhè䊯\㈚¥ŠŽ$xà¨l·„ÓÚ&åÃW^Õà&rÀó;QF0ZlÙðrZZÜs§Äk¨ªh寣åWIAMUŽY%ª¢7Ãz¨Ç-y©äÆ/'9ãÌu™›1%cËõ×δ8†Uz ªŒK2Ë#ˆâƒ › h©å¦ªÃÎO71¡É 4CË) O“lñƒM™³ vpË9Þ*¬»Ÿ)*ÂF*pl½Ž©šzš;(ø-4t0/1Ôa•026_šŽ’¦‚’\ ’–‚±å’²Š™è`h)*¤åšJšhÊÃ;Í$’´¨ÆGv%Óü/ôw5qäÓèMýøò£ø“þ.ÿo‡âX®ƒbxŽ*O…Wâ]enRÿÛ¼R¢ÉŠÉ$r(ttq¥‘Õ®¬¬¤†R Øñ%_Ápœ ŽZ‡«–“èðÊi*¤Hã’¦H(¡‚'¨’8bG™”ÈÉjX„P*0üJŽ— ¬‰ «¢®§Š®’ªxj)§I!š'4r##ñÀeòmU”‚¬2v^¸ Œ:àÆ'[‡GYŠuƪ㡦Jœ]i)û%*âs¬BZñMJM58ªiD4瓘úxž|¿–rþ=VÕS`ø6†KR/ªÓÉEM ÍÕÕñ…·ß¿ˆñœK*åÌC„ÆbÅk°<2¯ˆÅnQŽºzY*ÇaËÓ(Ña¦Þîôÿ ýÍ\y4ú“Gpî<¨þ$ÿ‹¾èòOôþÃå/î$ÿ@1ì>RþèÀ>Ÿá£¹«&Ÿ@2oèîǕğñwÝIþ€b?Ø|¥ýÑäŸè#ý‡Ê_ÝÓü/ôw5qäÓèMýøò£ø“þ.û£É?Ð Gû”¿º<“ýİùKû£ú…þŽæ®<š}É¿£¸wTÅßty'úˆÿaò—÷G’ ö)t`Oð¿ÑÜÕÇ“O 7ôwãÊâOø»î$ÿ@1ì>RþèòOôþÃå/îŒéþú;š¸òiô&þŽáÜyQüIÿ³4u¹ã(ÒÕ¤¯ ”Óæ,")¡–!!‘j#j°Ôú9N¬g _šÈ…d•ãuŽ„2:0º²°¸e`nØÇºHe`YMÕ”î#bÜßþÇÉ?Ð Gû”¿º<“ýİùKû£ú…þŽæ®<š}É¿£¸wTÅߺÇpJ, 2au8ûÛã0ÓF§ÈX&åUO%-dŒ$’*YÑZJx¤”5ÑÑ8\; Ða˜ÆF-_‰â°V"WÔ,³¤‹…4´Ö¡Ð!äWˆy„Úi0ŠZŠò$M€Ó 9}ô— £®­÷Ò{‰Öšg¦zl7JŠj‡§®WœÍKËŽ4âY©³G½î)à¥äSá¸@BÁST$sPTQY:µT’† M,ÒCJ`¥T9 ¦9FÊÇWýz­¦Ö6¶û©õq‘²½4ØCdŠ|:™+ðüN©â®— Ãéè©+§£Ž™*iÄ %5ªeä<•–j“‹SK[„×O‰‚—‚’£%DRœ:%¥I%Õ5<”Óâ]³iîðÔsM«²†+‹b˜¦>))$•¸•LõmËŽ©j(%’BóUQTUO o&Z†§Š¢™$XõSÁ³ >5_…ÔÕR×á0a´ôRÍK3SO&S¶WÒ—Ž¨Á…r)£qUÔjV•„¯ÚòÞn¦•em(à³ )ïd‘^Lf˜óÎÚéÂŒ°^Ð÷¿V7CÌ48ÆCŠÑóS—/eÄ)¢«§æÇsË“•*kK-q}¿wäŸè#ý‡Ê_û|“›0¬Òøn—ÌGÂMdnëa¨ªŽŠšš.ÍP¸í1v&Õ³Äc§†"½©BÁû$ÿ@1ì>RþèÀ>Ÿá£¹«&Ÿ@2oèîǕğñw»-ED±ÁOo4óÌë0×’Ydr8ã@]ÝÈTPYˆˆq *º ¨ ­ ©†®–` SËžxßK­fé`TØ‚8¢‹ªŽo'•˜bI…ÑÒÍ]©©$…檨©‚‘ˆÅŒi•©i+Þ˜`†–^A¬™‘ñ:,¨ÊÙ¾¾º™iqJi(± Xðå`j%«hÒQˆ5<>÷Æ;Ácw«†ªšX!ˆÔa¾ûbÉG]0¬ª¡§Ä«c¤«–5ГTD³¢ÏP¥ß®TmšúÆ.@U¾™]ƒrãn¶°æ•m~pü9‡®Ê‚Ú‹|f²ÑZ÷$+êfþn g„®±Ê#¶·Ô/`¤ :{»õX›ù£ƒÊ^ Ì£˜¾,¼³ñÚˆù׿®Ý[ž4éÔAB(Wιðï6¹Ò/n4ÈΩúZê/«k9@:z¾QññÒ8ÖšùßÈ£ØýâiÜwZå‡ákñ +¨x¶V½ãUÒnÅôÛ[K¤©ôªùÂ>\€4¡ƒóI{‹]ž«ú¬Fûøj<6b4ô8t"*<2a#‡¤{Èã²WEQtòN&7Œjå4ETŠL"–* 2AR'­Ì”b’¢ž¶‹LüºDÁ±<:² I¼&¢©g›ýÛ⢈T”‹1QùMÍd5t2S×a¸¦ ØFÚi' MQ†ÁMEÕII5(ªŒÃO=T©]/4¬pD¼SâØ#IŠaµJ º9VX›`J5º¢š;éšžP“Á%ãš4‘JwÉ?Ð Gû”¿Ýãù(_|‚J¤£FÑÍ}Ksdß—MH&«‘C4tÑÊèŽÊáØ^f †Š\7‡hÀ%™h†XšŽÑƒb»§Žþ÷Éïµ (d¨W²ÏtÆk±l:Y+r¿¼x. MïšUWæI«èëRƒ·Ô´òªÑpzš¼oJA-šJ:7¨1ÐÈËœð l>JZ†‚\·!EU\4óËM%_‰EWdëµ’ŒQóZ©ÞuNO€‹%%.2Ò§½.$kð¨éÝŸ™.*#‡«æS¯/DT§Ek4—š€DØVaÌÏGð¿¢Æê0ü»…Á]Œ¸v'_‡ÑèšCˆŒ6Ž¥éR)*«ªM厼ÒÅQÙšGfН,WÍÍÔš»ŽNÐ±ÒÆ+`½rvˆdYZZœ6:cG>­cXež¦“ÊCÑÓá5:ÞŸðÙǽ5%ie§¦’ªª¯“O. !¦¬«I¤ =D”Úž eÊØÌ{ Å*“ ¦†ƒLXÆOSjz¬ZÚç§ÐÍï.Ï éH)êƒÌqoüD®¡Áñ¬*Ex"bÅèeñÇÙ¡NÛ|I*¤ež™%[Ó~þX£¤§®–žj LJ—§¦žºl¡0UÇAôÔÍYÏ¥’· xÚjÊtXãÄ^§®ï('~±öª1I:ÒRRPÀ*+kª™^ÏN¯$êÂ¥”½UM4c#›ÌhÑ×Ë•2TQóÞ’tš )êh뢎)g¢©‰Å„ð¬ñh^jw¯òÆÊç÷Iþ€b?Ø|¥ÿ´¯Æ19Ö—Ã)'­¬¨`Ì"§¦¥•´ g‘´¯Dq«I+éŽ5geR1̽Q,Ô‚¦Z)㨄ÁSIYÇ$”Õ1ÁdäÏãCº43ÄêÇWû<éþú;š¸òiô&þŽáÜyQüIÿp1ÌŸ…Rbš­N9SWTŒ+ 循Èè㪦–ví&‘ÐT­4Y¦„F¦xhj³¶5M‚f&–xk(©0|rji>>CGQF´°b¯Ê–‘ÎæÎ:¾r˜ãˆÁ¯7eü£Äüžb8}5X\´‡œipªéë gƒÆ…m./ âZòÑ4jA¡šWx©–¾«Du/WODg•`вd§JŠˆ)î#‚®x(éâ’¥e‘)éÕä) aaŽÓ,3éÐH²ZÝ2ÕÜJÛÖ ó»"EUf^Kõ9Û~½€ÛcÓ¶¾P8sÆH$,ë¾¢öê%.<îØªG+J.¢£QŠöaº‰ÿ°°ç’y*&ŠþÖEÌšD‰9µþQà‚=NBëšy#†$¾©%‘#@]€>îqÃñ¬£_–é2þ&´x=udu‹?Lj±8®–JŠJzyÑR†ž~eÕP變Òh1É6jÁ*(0iÜ&©g™¤šM:¤snxäáxÄ©2:´O.µ‘d«FÊuI]Á·vZªzžKh—‘4srœ‹é“–Í¡­½šÆÜbÍå-QeÊÊ\AaÃÖ‰›—ULÐ+ÉtjüG˜iä vت=O0Ç1½,¥ÿw€}?ÂÿGsWM>€dßÑÜ;.5yn•+qúl-OƒÒH¥Ö£Š—9=,\°TÌZP¡aÖœæ´\Èõëš³Šºƒ´Lq z¼ vÅ£«SáUÔòÒ„©ÁBÓÔA=2Ç IsRÕÉ<2SG1Šåü:l ¨Äe¯Ãp¾\ÞóV¢Y)„tˆ°ALjZNÉG QQµ=0‘„"GŠi!rYH”x<–ºéB{Ö5#~­'ïA¥Ò5Ç$rk¦0ú€è¿š÷ÛNž¥ÓÿdŪ(â‘$Qg}ßBž†VQ«¤jÔÌR·¯Àñø± [+šjŠŒ††*C.‹ËQÆ©¨ž”G†WskjkšÖ‚«LÔ´š§«æÕŽS×T@™v\fÜBª†jYýô§épê‰iKTIš)A%;s$´‰ÆX”÷Gäö‘ÿýÆqm¾qm¾߯‹¾cǀ𜗠™êß©¦¨ Â°ú|J¶¨+:ZŠìVšöš)ÞgæÅ®AËH¢¥|oÅàJJ:ã…á´æšº±(µâø|ÕUXl ‡-TrF†e¢¨—R<&žò$²ä,KËYvL& 9iªè°Hñ+ž¢¡ªëc¬§\F·y)¦‚’£Ä¯ ƒµÇÙærë.^‡9c' x§çS4‘<†)ãÓ5*bÓBø²Ói{¥å.°z؉5yÖóooÔJ”V‰YYœnö æé!EÇšl@àw[…Ó°Á–6mV÷fï¿x>[ƒsnF-BàhÕòů O6ì.{È\ƒ§gZš7tUÜu;ÛWp ªÇ¤·Ë³«¼¶ Úl»Žc–±Ð» ¿øñQ>¤–ÚQRE:¶¿pØÜêÛPmøæ(Ž#r X‹’7Ô;Õ•†Û’/Â]ñ(°Ú^LJ´ð@’RRN"<§ì‘C’Эæ•¤‚©,òÅ:DØN_CW‚@ï*áXÅ;VÑÇ,½Ÿ[RL'L4S…ì±V­vššžÌjæç®ÉµgÀ)b¤Hð|O Áê䬕>6ªjùŠUÔ¨¨’F§U¡¯¥QML‹IšWË{¤ÌØÍ/?u«¦1b暬Ã饬†8§ÓPï™™«TÏÍ}@dz /5\Å0ÜrXbÑÌÆ©²îvæ‰%v™©¨£’[·,Óv2oK¥}ʼ¡ƒÂë‘cª£©]QÈDš&؇ŽXfŽ9é牒jzˆ£žIcGVBlO ËòrïM‡E¢‹ J©^u|F­QépãY4²Ts+牤暩˜G(™¦Ã1l&L©ˆ JÜB›™ˆ¦+CSE‡Rµeiíbš*¨)¢¨©4ýŽHÍ5<’ŠC”'À«*)°Ü:¦®¦¢XðT¬£¨®Ãê#žy«*{BŠŒ!a™ƒ¬ôÑ=]£jÁ&žY› ÁŽa Ì¸¦5G=~%G‰µ&U—púuŽ› X0\·‰ÓQa¼oRñãPÏ.&9Ö¨¦§È)i(jÞ˜j–Ä"¼eøÅ¼›ÓÓלcÂW­«1Áïv‡\.E‚7Ž¡êy¼¼Zœ³ÍM !Õá4œ°øÓü/ôw5qäÓèMýøò©†c8~7ˆK›°Œ.‚…0f‚ŸG&“2ST5M|•PχáXLuT”õ“Å¢IRñÆ’g§XËHãæu Zâ1Ý«pÁ‰#B}MË–dÔÂHÛÎØu +¸$÷zã–¡ª#‰ã’ÂßýYÔ Ï[]” "Þwˇ÷°1¤ŽÌ§Vå–2±W,E¬Ë}†Æã‰ E—œQÉo ßX¿™ã²„:ˆ°ÓcÅ-âag¹ Øì²_ªâÿ9½¶àÌDÅØHØ_}‹y “p{Í´žDV–-™šáL›úzW}‡¯¼Ž$HåÈ[ãQu%侘׸깵ím­ã³Óó ´a”Ù4¢Ü)2>t˜s5Ì#_yå÷Ø76¶Þ6¿§++¾°à ,­s¶›Û¿¢ÇÖ:½tÎyw$ÚFvplG,7«J“{ÛðÜE¸£·7~žËÞ¿||Ѱk÷q$nªpÑÕ°{³‚¶kj oópæâ>pXí%É K.¥ß¥†­×Àp¤Á¦»Siù>¹¶¿M¼6ðñåI6…“Q”5µ|YЊ[ÎÝñ¿¨Üß„mbËe»˜£¶°N‚Òoàkž!Iuô’ê· †ÛèB¨%¾«"!mkï·h‘–œ¡Õ’†GKFäø†-¥[Äì4´Bê‘"Ï×ïº]Š¡#ÂÌH¿MÃeÜÏuE:á8•$Õ²ÐÓÁ$í†Í'eÄ)a§ª–8g’§š²2K |`¼‘YP̘7i§¦“%AE5=bÄ+)+)snŠJyÖšyãõG,DK×M<2°YU¡ÁfÄg¤Äº‹ ×ËÂÖ®HæY+ ‰«]dxûd¢J”‰¹ '"ÑñS<Ë­ùÛAE:R‹é$’߇Õa/ x4‡–ÆòÌÚvßV’ˆ¶Ívº| ñ¢|Tš´0Ru†[D45´›èS¶ƒªàØmÝ£CòXM+§¨lFÈÙ~ûnÍU•M5/š©&€’;"›½ÅÎÖàÕîò2krÀiè[ì)"çbwñÛŽj7Æè20׋H&Ç}­áÝmÏuù²ê]k¤86Ô-Ý÷Ý×°nà8Õ¡Ì#Xº3Ž¥¾‚:·¸m¬6a·Æugˆë benð5[eê=Äw‹¸,²¾ÅV(Ü >ƒÐNë¯{‚qâME:Æö¸u[̶êÖîm½ÆÇˆätY#×µ€ÂQvnëüËÕ¿qÚI9^a1żcãv®¯Xµ¾Ìî@¨Ó©âe¼Vß»úMö“Vü†“þ,w6r÷»HŒ ·^û›•Zž…-"²Í¾€­¤ÉßvÄ@<³ GLµ7 v^_0]D¨B{/K«j¿*ÁO%ËX›‚6Ñb½;ìZö6º¯eŒSªÙˆ%%—N]îú]µ17ïñ·±åée´^wJÜQ ukµ”ñ…bmQƒÀ«i18æx¢Ÿ³â8|±ÖÑ%á›÷Ô(BJ“£¨"HØ\q”³^g¯¤¦8œù†¦²¾D§¡¥5XÎ ™ äX)éûF!VˆÍdA$ºæa×'Òd<ã…džA…±Jl?àæ#_5%"öJJUÃÖA&®ª (ã¦ÅB‹T& µá¼ûÙùJ1¬Ã$NÕ±Ó:„õzïqԱŽc0eÑm:íÞÀ6 €RN×õžÀAp¡!R7ä†b|ë¶ÿ9áõêç=Š*­ˆ{ì/ß{|“ê¿F`­N•C1ÐEõ.÷/`F•¹ÿhq$¬é~–SæôŽëißÀßr ûå·R˜¤³1Ò”u&úA¿Mûº-Ýá.™O2re:"eq{ÿ§bz»®7àÁ;*†ÝÔ]õ1½‚‚Iܨ\•ßn(ðêš¹ä¥Â¹ôôžOS%|æ$©š¦¡¤žBº™´£7&(U+q¬ ’Äie¥Ä»M-*ÕñVÔEU\’&+OZ’,óB²;è1 I]Ov£Ëx¶ƒÐOZõòPÑåܹÈvgÕ™ŽÕ§RiŽ Ó™!†1ÏUàé\¯A3Á.zL*©ä2FÎÒv!W2`cŠU(ê4“BíqQŽ`œØ^5]CQI_]%%+SQ]E-mDrŒRš¹ “USÁQ%IN{2[™g”, 4ââpÁ˜`ÅÖ á”T5pÔÓáØ…ÓkÃb¤¥4újªfÑ%+Ôëu&£–«òiô&þŽáÜVHºŒ‹Ù´ £†3[¹FÍP=û©gr&’@T¿Äó©·Õ`·ºß`»cª$+Ëbye u®£’Ú”:µ¹ÅXðBÙ¹Ò²kkjuv°:w(Ja}´t‘“ÎIy¥>ô›ÊæR¬¤6óX|Ÿ9n9rO¸RVì7uЀµÀ@vR@$ˆÚb¡ £$$$ÙE·_ãxjó®6,#“ŸAÕÎ7Ñ©·+  ›/q?|;мÈ9$Ḛ{€ÆÄ ®§êè€^.ªlÑH 8ÒI—΋_¡ô޽:GyoµSÉ®§™PÛ"¶êIkZÄ‚ZüG{í%ŸWÉ[jWÓqÓq¹ß§ƒ{£,šN‹rÎÞ}ìüÀ·+}ƒ\²HK™=èLk0ÒSÍóÈÓ¬øz¯ÁM@†V,ÂúüâÆÛ0Svïµ¶µ¯n#Þ;Ebœµ*Knw°³yÚö ´«rÑÈZnvÈ"êšGOòv¿É?ÃIDs¬BÌF˜˜þóÏ_„]À>™V•9’4šoÓ¥6#Í[5¼ll}wXWDE¤Ybæ± ª °k\êRm¾×ûÓÅ´Æò,¤ÍÕç…!eU_Ûpù&ì ½ÍF”BŠîèY»Ä‡…õhN¯ÜVÜA:B-pR'*Lúã+¢ÊÇHêï{i` ¸¾-IÍFݼô?ÊѤY†¦%޵Tk3Ž›qÊ­ `è‰^ÑÜ©IîB†I ’”Ô,2¤=WhüîZØn7ï>Šh•df®à3Ç1!§¸(&þ;ì ¸†)§×µ¨²”]:µXÜÈ>Jí¿p<(¿òqêR›‡PùW ªÄ‰ îñwŽ@ôŒÛª–që"ÇEö7[ð‰$ܤ‰¯±¿:ˆ?| ÷¿=ˆ:b]zœIxÔùÇIÝ•IÛqe¶ËÄH›&¥µÝ‹Z÷%´ü®ö¸¶“¿K"ò™fvÖ\3l]ƒjÓdi×ëîÚv´ÎN\JèÕplÉÓ~¯éÛ…fdƒšœÇ¾ÿÿ/ÿª¾«ïsnõIãšò•$ ËîÌB¬ÞÄk[_Íqp…ª)ã×PÒ¦ˆÙŽÉ{Ʊê6 ¥™@°ùݬVC+ªI?ó{‡}ÇÍá{ž ,d¨&c, g¸]ÕåaºÄ¾}Ë 0GqÇ ›2 ¤MÁ²èî±S¨w÷mÇ6ßÊ-8n‰#‰å`ÃB‰æ—¶³Ì ti:MÍ Xë¦fŠ5mÕ?}‚žxå”0¸º‹ßzˆ#ÒcÖyË(»#5…}ZH]ŠÝvóÍ<,ªÌ‘T–ì5†Šú%‰@°ÓÕmÛR4Ø9<à´eV !ºË¶Öå!»®“·qU!iãi{@ï>#{)nÖoq¼b"ÝRÛSkvRKﱸBªýþho7瓽[X±±¶«'ßm~)Ö>\†2%~òu)#CFíssªàÁ߆{_BhuÕ j }6Bn=Aà ;ñn[´šQ£acgS}”éè²VÓqq±ãM]µHŠÁ“a Ò@HÆíÌW°e¿sò€â']FÝÍì®-½›ß}w ¬cî@¼Ev`ÜÂnH(ÀÚÁ–ã†Py_ÙCwŸ¾ÕÁZs~q~v¥¾‚î¢ñu =,Ì/¯dwÞ`ÚÐ6÷o6å„–¹;[×Ü8äÇ®*}6•™M•WkÖ[Pn×pÒ¥£Ž8üTnÛ·Œ„_¦Þn÷õI S¨å¹,Y-!m.‰u±^]þc°õñ){³Êa‹^‚¨ª«mz‹*Þwˆ¹ /}FE!b€.ÌëÒ½'Xé·¨\pPhû;u#“mB7ø³eîê°ÄóÒÀSG'3K†yމzUnÏ `IÖA7é7¹h•£NTEÔ(–ëp€aòˆÔ–#¼oÅùa8díÞøvCü'_BeæöJ¯÷~vŽWÆhרa¦Ë48ŠÔR¤Í-.?£Ñ¼Ñ“تÅ~!D®”ü\íGÚè5oKWQüF‰‘•ÂJ$³æ¤IDÆÿöРi¿ríßÃ;d@ºIT̹T³o·¿ëÔ:¤B›]†¯”¼rŸ#^KõÈsS<í,«ø~ýV6¸é'»‰!ø ñ̰øE”µŽj›õ{þzAc§mBËçZü:™w*ºo˜2Ÿ|l[Œ|ô2Ž¡`u›†·šy™R´ŽÚaÊ&Ú»ˆo„^h!4ÜzíÆ“‘Õ¼ß;1e; ªÊ~wEïçXoØ2F“ ³‡ÌyQ†÷/Ëþ0t{ö*ÇOp^"Q‘ÿ’!º³RÞ×ÛùÿJ26Ȭ¥~å+õ[¶õ¿vÜ(ø²=ÀøG”µi"Ä3ü ßm­oý¸?ÄCÊ6è“(÷€wû?âmúGôßàK|aäøE”‹ ]‚ðƒ®ë`Iñ¹ßn"VÉq BÑæL£®ÊRãofÞÌMöØ_¿ƒüJ0ªfL¦š£Ü‚Çßáy Ï0;·E¼\|Ç¿%dÊ'–B€-ü=p}[›òwâRÙ_25¸)XÈ»Xãã¿×m휘d`šVaÊ@Aã éê'¸±6ê¶Ü*ü CbýÿÊ`žFãJŒÀtëùÏOVÉ Ë „'Â, u:XØŸºVã¾Äذضɫ#¤qÀ%™y™+u¿*@"œnB‹•Ž” ¼ˆ·pdL«9ç1= Ì9lU²2‰­œâFaî§÷ßi ·j^U¤l£äë2Çð7ưšÜB ’pìÁ¦Ž’‡0Ô¥Q‹ Å– ;T¸=E)ë©æˆü{DS–²¼¿ø—ñŒC6Ì’}ò‘š»˜\2AïïâU)¥ã˜³IÉçIv¶ù¬ï«­|ïÂÂ|¦+7RÙ.ýÝ× ìOüÇú,wâ6Syf!e)“J¶âÝDfΣݹÿµ¶àßÊb6¢¥‡À®ý)¢ßmž qfò˜$?ÊäÎaM‚ٯͿáü$ð#ÿÄ„M6L™fK_Çá^ýÿƒÖ8]~SÉ*AR2qÝÛ|,±ïõüÛYyžSI à2qSÿ…gÆÇð€{Àâíå<»X-ÎOq°¾Ö\Ú»ïÔÿ% å1TK÷¹/I_úHÍwÛäø‚/~.<§õb[&³_¼xæßœÿçÂ#ùO ¨-§àa³Sÿw±ÜxºùPb*òv®ÿÆ¡¿^S¶*ˆ@ÉÌ·UïNmë÷ƒŽ¿)*ýàêɆææû·ÂÍFײutŽîá£ùKRÿ÷/{X€:³[ ¯ê¾ÂürO”­J_˜ìryÖäøkøUpx\ xDƒÊZÆê*#Éš{Èaã^ö"ÿ9ïáa_)º½Ødã©”’H$æ¾û›êü6€ÊZF ©Ð¹.ËÓó Ö?ÖÜjÿÄÐýzÛ^M-~ o›ËÞ/}÷àßÊoüC"ÿÇA$›)øUpík÷mÆXò{€ÖŒé‹ã9eñZ%4”yx2™ô§¶âóÒ|E6QVg’¶n¾JBeUçFH:¤æ‰#øM”Ö=ÖѸÓ¥)ã`GÊ$Fr(ÕÈ–'ÂL¥­µ­ƒ“ïÿá=÷¹áˆÉR%]´øO”Τ lðýºC66ÇæÛƒ ™ú”®¯„¹KeeÒvƒÿŸy߆גVXäP®ßr˜aakªœÂFêìÞÜJFEÕ<†;æL¥ÒÉþ¿q÷ì£ÇŽxÉm¤©qð“)4/ Yv÷ü=ì©sp,-¤ß‰4ä¦]úË”[ú—ßÑqêê|üBÒd‡ŒD®¿™2…ú×çÇ™|å_ ÿG‘ä6]vÌ™BÓ õü>wpîØ‚;¹c$‹Ì³RפCÿ¤Aðb/}Ž‘ÝÀ”d¢ò†¾ù‹),V Üø@N«›õp/·Ædgæ‡óPeÒ ÿë¨xxïÃ?ÀQ¥ÍFdÊ[«;3wãÝÝEG¾÷»€Ç$’ÑÂ3Raæës˜N¥¾£¥@·Nöºðuä61ü_H̹JÄ©mM¾`ñâæÛÛŽd™1Ѷ”2eß(+qÖ[èeS·É¿~æ¦ÙÚYÈ*Í™r×N­%¿‡À¿UúE­aßÂórLÍÖ¬Éð—'h:ðíÍØoºíý7&\ê®Ä·+3eÖ°Ò7Lj¾ÇVǽmmÏ äsñrt_3e/äWN€ßÃû› ÿ_©ð&^Í<— r†¢šS¢ãEÖE¯ ­øŽž ‰ÈDnÿ„yGºÆû.>v»m·w‡uùŸ.6ƒK‰ÒaôÕ‹àx‹¶#%#P!цbu“€ôô³>¶‰a­:Ñüš}É¿£¸wTÅßty'úˆÿaò—÷G’ ö)t`Oð¿ÑÜÕÇ“O 7ôwãÊâOø»î$ÿ@1ì>RþèòOôþÃå/îŒéþú;š¸òiô&þŽáÜyQüIÿ}ÑäŸè#ý‡Ê_ÝIþ€b?Ø|¥ýÑ€}?ÂÿGsWM>€dßÑÜ;*?‰?âïº<“ýİùKû£É?Ð Gû”¿º0§ø_èîjãɧР›ú;‡qåGñ'ü]÷G’ ö)ty'úˆÿaò—÷Fôÿ ýÍ\y4ú“Gpî<£ü%̹.öï‚‹ßÜgÂ{gføQÚ{/o¨§íŸ´AÎåjås¢×§˜—ô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ã gú|RŸ4åü $KI].P­Â±¹UgÚ¦GLF.Ñb´uÃ5dR%,‚P¬Z$“ìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«°ÿò^]ýªãìü——j¸ûŸÿ%åßÚ®>ÀgÿÉywö«'YÞžzŒµ—ðŒ±Š`µÕ™¾L+Ž¥Â³¼É#Ô&)YE<í‹ÑÓ@ÓUÇ$•La\Ädô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ãÒ^@üòË¿¬xô—?<²ïë=%äÏ,»úÇIyóË.þ±ã¡Ë™»,cõ±g|6®Z<±Z¨éS̰½L”ô5sÊ”é,ðDÓ2ÖI¢BÚ¤@|š}É¿£¸whÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íb4™ –¢Ÿ™ËÄ1Ìr…¹°Ésð¼kÄ0Ê«$Œcí4’òfÔC¢¢(¤OF™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî=dÌÜ»ú»F™ó7.þ®ãѦ@üÍË¿«¸ôi?3rïêî#¬®òƒÁ,tëL©‚ˈåªSI,¡¤¡Ë•¸Uµ¦pÕrÓ½SÆ"…æh #ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8ûFö›8~Ðqöí6pý ãíÚláûAÇÚ7´ÙÃöƒ´oi³‡íhÞÓgÚ>ѽ¦Î´}£{Mœ?h8¦¡¡¦§¢¢¢§†’ŽŽ’ééi)iãXié©©áTŠ x"DŠbEŽ(ÕQ(ÿÄ*!1AQa0@q P¡p‘`€ÁÑáÿÚ?!ÿâN³(1Œ0 ÌÃ@fÑ`üE,=Ôç€Ó2µnõvÊó¿¡‡Û ÿõB*5Ðy/ ÒØ&(ÏŸXƒœÍ_ƒ¡ =tס~CdTÌÿFnM1`‚¹W’=ÎVבˆèû=žoíº§Ê>{é>ü³@GoBfi…Y­Rþ¤ÙźL‹hØ]ÊÖÛ¨ÂüOaeÁ #¡"î_êk¨ò¾º ̇ ²Ò˜< ¶ï^ƒmF¶-Ö^n'ø³ÀßèQÏñOZýð”₾nߨٯ3]¢èÁëHÐdSÄ Ê%gUåG,¡Ñ×ÇøJkz :¡ÐäAiâU—ÃÒï·EÄJÆÝC7X?ñ¦/@Wß éSuá@«P´ô(s¡uÚí€j|`ÿ‡îíðש 4,¾Å¯Ó_ÍÎr{ÿî©ç¿ø÷˜‘©Z–Ä6¯rg9³?IÒIÿã<炜ðOÕìÊÓNoK ó8ç©€r ýâ»/<.aüÐðIH¡õY§‚z KpB |PJƒ¯BŒý B%€¦ŒïŠÓLÆÏ’§'Œ†1ŸÃ•‡? *'(¯Ì/þÑ{ð5þö£Ó¬ òP o–·øab`éž›àûŸR¢°À±$n놈Ô"šdÿq?‡!A]ž¬PBÖ,;åõÃdë/§Ò+)…‚·Ï• ,?óJsÁázΈ’Á1\¦+&‡Œ`%‹·„ò¦²6‚ÕzÐïÎ%Â%,%õ¡/½иÛˆV Åþv…XÔ}ؾĈdh_¡Í[ì·¯!UáÌB:\Óò;Ò†ŒX8UG‚´>4‚U™3ÓñÂ2#cDÉ>’+ ÊX‰¡ˆ<*ð‘ …€ðO†A304Î+¶ËMz‘³¹ýŠ’ü<×Ö™MÓÎ.$V°È{Ë"[²¤’?d:dš3!õZHÉá:{$Høq8j9®µ ¾3 dð_УX •‘Ê> ÂÜ|Ò‹¯%~­"wÐù/ý{ØÆ?2™ +'Ä òGêØZÄüT!°.bA?n`’š*̓7ÚºÈ þa¤P!+À¼ã^ÑYã)µÝœÂ*OíÉeÿÁsÀ‚¤²ÔríØK£¹[ǪWÙ¦æq Úç¯ï:ágY _8¸ ¶È Ñ7$DÓZ§òÇ-Ncìªi}‚ôЉº’$5€ô¸Ù‚)Tð[?œxSöŒA„*WŒ Tþ­²ë뤎G Õ’DA< Eà CRP#~;@BÅò¥…Di(¥a6î)Õ°ŽAz)sNd4 ™F‚3¼µÿaªû|æý”;Æ‘¸JJüÞ¾'Ħc¹_ÖB^3åf øõ”R,$Ó;X‡»‘z-Ñz9P5cÚâ$÷ö‡!á•~H8–R¾ Ã’‰ R¾Aqœ"æKü‰´j‹OËóš ¿ïQ„& p¶3¦—òù•íâ:œp°6)X'ùsþ¨XbÄ “õ y *§òš^æV¶‘Û-K¬‚Dy þ(Mȃ¶Ž‹ñåˆh«šËdà>€¥|ú9à+¥õÎ?³FÈ1="8}F¾)½T”e/ÚÿìèõvB¼vFý@Oô<ÄÕb¼ˆäB0…¸t°”Âw^ ÉÜð„â~—¨l…±ôŠ©ÓÎ$|+à‚2™3/ñj0I…OYø8r+™ñF¿»°ÔOZ¼I-Ý»áÔ‚˜õÄ*„WÉI­žÔ—¡dZ7ŠYÁ†gd-ªŒ€° ˆ$€€#p’ªeeÂÇ`°–«ûp*ÁðvZXj0‚r€éÇ!„zè>¡â· ‘úµBWGö.DG¤ü+œò…e‚ÆåO†*>&w)è¯+¤b…Ã#é©rÀWänÁ OÄ%|+}ÿfšÜBŸ½ Œí T 8ÁohÚá1MvÎbš{ ÌÑé… 0ª "}‡†ÿ°œr‘„pZ¨Y†ý‚MÕ6Ts„ߨ²«E)Z–¶)(K¬áyºÓ›XŒ‡¤d^"A€VXCM„VX*SÒD7˜é!‡I‡D¿l‘D » ‘g#~ÜM¤Â %gèü@ÿQ ¯žùÕN{"#YðŽ7Øë‡rÈDÙ™4r e+‚XŸÙ'€h¯\ç]4ÃãÆ3¸ùž0¡ƒ"ƈ„Ç2¡ <¥ˆö«Å aij¸4ã_!cÛ¡îì¹ÜÛ–e„TëF~ŠL›š«ÂŽ¡TbÅ¿jl\0ÿÙXE'ÂB#OiŸP‚«i!#GáEmýT‰'ç¦ô-ØcüÝá¦úQÙ²  µ';{£´Çpಭ¢«?_ìÏõÀæ,¤êM²°Èvɽµj€ÃxÑ‚›mÏÑJ¾K0Û«SV` ã"m?Œ(ÔÇ¡JÈ”±·žk`©Ìs{XH¾à©HÛx‹Ð ™.߯E9ˆ ÂÐÞaÔ"8Y-§å©4Q/ybóÂ~TDW1Ø^¹¨TѨìàD‚‘…k¡®juçE˜LtÎ]{„Z †Ì.úNÇxZ^Ü.ùþÆMÏ `ZÔô3–€ðÁƒÔLÍÞ˜d0Éuh*%rN“ŒtÇN¥²ŸMÊpßöÂûJ.ä× FtžlA¸h™@Š'mK:@¬•´N}\¦B4Á|d/°f8@V¬‰mû’ÿ¤î(%v¯ãñv‘êú/$Ú øÅ&I Eë‘;Ô25±e¿2¡T¢+svÉ|W C‚çß?ÒeÙ—fNßòÚ `pE¬:®[ì÷ž‰üÿ»×>ºiŠ·Q xXZ‚î¯ÜÊY&³ƒ*ªµ¢Ž@ÃC3ÐĨ²2˜PÏ´LÐQ´À6! LÕDⷯѿÕÂ!œ-ªµ+'mÒ4ÑÇ=9à¥ßºg ?äì\‡ðÚF[~•;Ú¶Ù@=! Ó{ÁöÜ’9­ÿi PÜ:~!(¦Ú\(^ÆÊ8Œ§c¨YÂVªU\$žýäâp;ûÀI¨l¶QÒ„@²ŠŠÓº5é^ýîM<*^_Úô+C÷Ÿ±8\íÊЩ1…^Àú=¼a¨r&’EM@¢šÁDt!òè.’KöoyQe')É($mŠO‰`VÜ|ˆ&7H>.WaØ{^é+ȲKº!£Ñ«ñ@W )`¬\w¹ Sc°ô½I ûèâóŽ1ZZ¡­­ ¸‚u'ö*{›ø™$¯+'ò M©–N3Ó2ïMÍ?襆"ÔÛ©„#Ñí'9wMc]•úɤa‡{E%Úã CŒP•{TnÉæUÀ-½]Ó;–]‡kÂÏò<’–;¤Z©P¿<¹ã¸‚€´T·@*D!¶&¦Câ †¶ Âq"5øÕ¤óÒ Ôc°*Ÿêži'Ø*Qá"“êüà|•ö h'l^‹©pI“È …+q`ÂIÆiıhäêqŸoQ¾R6°qXgÒï\ù8°P¤ˆÜDCšÜ×4,Œ3B°ýç‚òØõžOdš1&U@ÙŸUd[X‘ƒüm(”FEéi†q… ¨(!í>}„¤oÀáßlö=“ñ_LÈ_-¯4‘M=Iqj*¹v1éWDç¢QZS`1S ‘Ñ!y¨"j›wJâ<§~‹]0ÙŒðÂŽ¼¬•ÊS™ÉGMƒÌÎæ|4ìE ÀžšpØ(¡f•\y¨UŽáíÇíÜË7÷÷@œ›¹!â¶•UÉ' \·$ˆˆÌ9 *ÏÁ?”DN…¦ %|tý`‚#]„*­’D¡×£}|8´Ø¡ À]HÌžpÐ è= Cމ™LàUþ4µpÔQûÖ¤H™H+]¾j Ùœ`7ýˆ ¾‘>‹“Û¾%¸f’ à»@ÑY_YõJ;k’Ahô¨“ ¨õöc ú¦lbߺYw«*¶Aa” :¹ @¨¬ºæ° DHýAö84*u‰mj€üâ–R´J>“LXsTãç@ªJ@/ñr‹l›1‹„à€V›N ÄÐÓy.€æ$Â)ÇG˜Ô=ª'ðw¶>a"~H< ¤€WšŽ¦œÅIÖuÿóÓÙÅpV0&QQ/‘7Ó¥=—WÌÍ$äýðç­*û°µ²lh¦³Õ7híj®BC9%ÀÙ¬-nÍüb[Ç(ÏT¼I ÑBí,rRUÂéÖs/L0‚G¦y‡ÒˆÂ¼XF‚z™X>“”ù˪P‘‘MxL±¶þa/2óÅM†vD?öŸ:k m2âê =vðx‹HMB,ôQ.šHÏ(IYv'8(Þ‘ N‰’ä™[¿…¥øáYçk*ö5¦dÿè€0Äóƒ…U®9«ølýHðú3©Ú-FÖÁO¹6qo¬³ä!Ú¼a9pÞå˜ÛW¸.¹¼ç’Q«/Ç¡ø+¨*Yaàv›Vóò› ÎvôvœÜËþsQªÔMª'Á(fÞ}:ºƒruôf; Aª¦ #B2ò -mˆ—±€Å7àÍâ#Ø<0‚˜H4VÉâªh J?ÜWxæîÒ=£•ãõÁaân¹²œ•î¯V„ÆØRùý–²ÉÃ| e8¸~æc†ªt‹-èóTuVWÍVàè'üéŘOgV…þ%5µtú„.…ºB‘蜔‘•ûåDx”XÒ‹Ú:2@¼¿ñ9\EáƒÀ F§þ#Ã5Þÿ±èCéõ¶b÷GžîƒTÀJø ï«äóšQ—Áæ¶Š"?Ë.£xeŸDê©¶±‡‡^.#‰_Wì"…D¦9 D¢’ƒ áô*ýV,ý^­Âb‡üø†ª­wüÞÞþŸÔ²ô$A§’J×[hiõ¡ŽbK ðËTÊœ÷<ô܉cD©¡Œ'µÎÍß#ƒÇðêTír]"ñ ·Mý‚! cøˆn'% pAgÛŒIýNG¡½CL0?ô,qÿˆLWˆ^¨n‚2ÁêäSÙ—±=T|ê? `&_ͦ}˜^€&Zõ™aϺ$ZïtNò‘¯ùÇ– f„ýZ<«£#LÇ;xM8`ó 8 )dï- » †OþЛ6&Ä•à©$œ†ê\|ði Ý"ÂX¢BTWà‘ÓÚ@Ä´¸\[爣X¥¸½CÀL\‰¢ƒÀÀ€´ ¡BˆSÇÓómY ˜)Ðμ˜½ˆ}U ¸¦’pMYO;¹¡'¾ ¿\ J·ßU%Vö•lj¸]”ž @h%Y—ô ¡2òÖásÃmsünH¿áuz„¹Ž0Kòn!—Ño þ|ßR)âhÀ$'(Hm©AþA-¬çd,‚jаâ‘;Îrë0(CNSÂóX¢±~¦×=IŠ?Éös@rPNm…['=Éq>Õ G¢"Û B³ñ,t/IÇÅ®Æ"NÁk&›5‡þ«›ãB±ÕÃvåf¹ÚU*Un³ò4£›oì[¢hBƒLvM@êø >tZIê¼m¥H{ã¥[ ˆˆß(§ôSmŽùh“a[°Î@d¾¦0"ƹ½ë5F1¨%Èxë95˜Asÿ£ZÃÒO‚†'D‰Ö‰r—ãB0VÀÜcSˆûC–ÑMhNÆÜUšˆ‘+²Yøˆ0®ˆ 'Fé(0 EQP9’5ˆãþÇ £öC‘>¢AØúpîØÙA¨ò+ÃñÙ¤éEQÒÁ)õ¹^’-iu€)¸#KøD)ÚŠ0p`[€G­ø ž¸L`Jð.Äìö« iÛ)šW=;ßùŠÎîR{g—GÎEêµ/….d%kMwíÇ‚äcAé,\"ÛëºÄÜ'Ï A €« æR>ÀL”x‹I4R±ëÖ‚¦ƒâý(*ª´¸¬³’åø¤oª° !á_ÎÊþã ¥õnPXÕ;î%(@=ã1à4¾Q’2«çž±.ÉÆÚwôb¨¾íâ8˜L4|+×yÕWˆ[«Ë”eH·l¸+zÀ},rÀŸþi›=ÅZ]i|˜]ÊÊ.wÓpȪ [ÜÐêrñ™ y¡@ŸDøp‰\ " Á”m‚:2´B0§aE‚TSCÖÜEΰr˜r£‰¬º©Dè.Èyí¡¡=ÑÐÈŠ%cöµ\ÀE¥û†9JP_:Ñ:Õè¾æÝ<+î¾°{VšÕúœfHÔÔáU‘‰)(BÄŽŽú@‚š³Ð,5hþi—VeXAGkþãZÞ~`W³$†çŽ(ÖˆQ(iü>á gò2j{ˆt$#Ÿ â¯äA²ÜéÝŸþÆO ÿr’xN" ;`dïk±Àè‡hlPÌø2vM0¡\0÷ÿ¹­Þ 8×¢—~Ê~gá2ü€ÙQì•Í­£Æ’±°á¥B¿~ÞÁœá&é –µ_W¾emà!h*TGy™È%r)}©h OÿÔ7>ûïg[  @` 漫ã@¤Kò*úú{ÉÕƒc…¨¥üSëÁT¼ÚÙo”g‡þ¯~BŸóRÊ”ƒ[aÅN¢ßŠE8é–ž’R@U ¬T6›=Ƈip‹JæÔqN$‡™>T° À’Èôž£ö¿Ó¼CÈ…–2@( vÍÑt*úFzÃx /WÇáâT ðQ¨©þßúÄ€B ? çb‘Â3$ ãßNƒü×áú~(œ+Å~?[¯DÿÒ á áÆšc¼ŠÍi(ˆUç#í3åìßòWh öˆ°îˆzb^ jZ¸89WŸQ}F®©m9ÈåE•uýäÕ"*Ç“]$Æ®°¯¾-.[:•^Šé½ñ’6ÀUnöás§€ ¤[ëÕÛí­¯o‰€rÑ ¤ßþˆéjІ%‡âÿ7¡ÔÓêa{4ï­áˆôñ>kžŸXÍ¡O_dÝ÷˜,è1¨SVƒoTûíõÜ+¶¹V0ô÷€<þ:¦4Î àŒ† É*@ ”Ï郒ƒ6ÓšÜpÀ2²ZÝ|H¶«…Y_þ¢$×å1…ÜÏUðSž sÁNx)ÏþSМIÝè 8páÇ8páÇ8páËØXÉë*˜ÿãÒÄRÃÝ[Á·iZJÂÓåÓå‚mˆ ¬.ÌÏÃq;~ÝKU_Ó •(Û÷9WO §"Ÿ y‚ç[/ôX²Æ?ôÃÌ‹Gü3‚ž¿[?¿UüF ð[ ßôªœHõ¬8u&üZG¾ñ4¡+FÂÌÚŒ!ÿ৯ÇÏïÕ€È<ÅÃ7Ö—É—5îSúÓÂ9d‡zŸú?iCßë'•ý ¹gaß9Û!×8ëÐÿ|°¥âD© Ašù¿ÑÙ*z¹ô²×êÇ"Er'ˆK/èí^xMƒ†Þ™á’Ê%x‹?ÃC5³‹,ŒQ¡FõC©Ú¹?]–‘຅êz•è|Q¹ÿ6®ÓÒÖ,¦j®h GÿÂxreƒÀ1Š4(Á˜•C|]²‡!ñXPùT™ƒúbL€×S‚³÷)JZ¬ç^bR¿O G-ç©ÿªi0ì'8&Áµ›»WºŠRj“å€- šw¦£/#’ùl0ȵG&Ø<ØŠ—~?Œ®ø> òáž4"NI†¨%_”Çöñ:ñŸáŽ-¡tI8“þ‡?búجç4RÖ$ªIè"ŸÒX´NøpAÇCé]$à?Â8´>…Ñ$âNSúý‹ë`³œü|wJ^œT9Ïf ] "%9Tì ƒIÀ•áœ\=2‰ O+ÃÛRŠi0?ý‚Ÿ,Ÿ,Ÿ,Ÿ,Ÿ,Ÿ,z;2®ÛáÏ Uj'ñê„Gú€ÿ˜D^W Dgÿ€œ9>X峩#úœZ8¨(ôC'¡Hø–¨RKÒÞÝê<º3*Þ!@.a¯JÐ"=„ÈÔ@‹ú´·zZCú(M!m›䯕~£u¼. èÀ1ÅýØŒ­ZÁH©:•¢,ï*©p›-ŒpŽ5C\¹ÿá“9>X8ýç%úm»нds3ÌŽˆmè¶^Fëü(6ÓQ;Æ÷_VÜ‚;D<Ç`J¢s Á‰ë²ƒ?gA®&3˜"„NÃaV½ðCúšaâ‘ vµ¢†—f—Bð夕•žÚ&Ö•(^…è3¢„K2P(œ€Â Ï œþ,vdDtS«#¿¼ÓLhbB&‡§bÝÓ:™Yö±Ò¥íäÇ Ã®Mh.¾ÅÔæèÚEg*¼…þCQ>ÌçÂ!îFùœ,î|eX*±œ‹³=ûŽH˜¶ôÛ?½æ„rž¥z ˜v‚äílòF¼mæô2ÒC|gYÀ¹•k<óêǃܰúçßÿ ,k4ª(` ˜,dè Ò ¦pàUGC…((?»>X4Â*”äðE: ¾H\•°Ã觪œ} »&5ÏVQ¶ÂÓ:! e@4LÌñOH2ÁSP´–ˆZ-©IÁûpVëýá/Ìâ‘[Ö ØQ[ÑJô*’•¿õLWÙq4Î…Ý À“ÄC´¤0–RdA¹âZ#òSÝÀ~˜ €ðû,^Ã0âáPÂŽ($AúA Ê×3åÑ|\?”±áo"ä¶’ƒG„úDN¿ÕÿŽ<,¼¥Ý9“Ý!¡¨ÁêŒ$0k{ek!Y7QC£ž`Qÿÿo.TC×6*íKÓŒ´5\—¯Ç¯Ÿÿ¢ûA¤ƒÅy©³Ù…/IÓháØÍ{!ð#Æ `Å øH’G ýÑаʴ”¬Dñé¬! L‰=(Ðì%q0p ‘V(Â×O–€Ísjna8úÅM QYàÒÆ† ô^À¶YPùQÔsQ$6®Ìœ Ö{¨KÂ/W¬VøRÁQtsâW?|9ï$9ß‘®AÙLí[$™ÑñŽçO÷ILi!âÚ?gÉ?Õ„Â1ƒÙÅð ñ^*ÿHhó:~“8¡<¥ó«Àå¬é»žò¢©%&¼–P›`Ž’ü€ÎMŒ’8=w–f |Úè2,ïQá‚Í&߀:Çùk~,I£ÙÁRî‘;PÅyÐ Ð “¾êM»¸ oþÕÇŸ.1ê‹óï^ÉÃÍ'Ü=á ‡Tà¾7w%ÊÏçT„„|Áu#@X­`‘>‹2NA›eÆ ~EàÏFV«µ­ÞdKáYhED‚…Éá›°=r°‚µÚe¡jVÀ>•fŽ?ªºø°{y1À0šUä[&´Ú'òŒàäê4f’Ô~cƒî#íÓ9Á#W B[—`V¶1hK²/¥l´0HU“™¼IQhW’¯¡ƒM礲³0Ó„×¶ áíÛøü„(òÙ+ÖÊ´’%ƒâ6o,½¨G¸„Ie½D}’ªå¾‚4вC±fl,¼{í¨.$É^è¼OžJ}˜$ Í×½Y8Å-èTJÄûŒ§r&{¤i±µ™Ù-RÐô·IàBe7hM±¨ú¢LX)£–‰ð™Ï”~ôóâU0COI±IRؤ)–‚\ŠJM„hC#P PO…§$³Ž€° )}u °¶2h+‚ÚïSì²ý\þ&TTâ`.>ä|óMÅv,s|ýj©0x+À½·á¼…” ¡µÿ¸Fª¶é$~ ¸„DêXC0 ºÅ^<„}ÉOð‰ÁøP¢£Å´úðêÁ+œJþ»™õ?^'&ì™ªŠ ñ£kM(™QÓp?Va’×RážW4 %a÷Ž”H¼ ÒšW]  Qþœð£•bKôœã´eç¬77âXêëÄx"2—{Õ+x☖#z£ÖZKbƒóKÒôC4ª¿#…NZÿô°¯â[ã!>Á§}‹^ë¼Æt2ÓlJÓž¿ù{ 6z0(½F²¬¿ K¿ÒœámjÏF‹ ¡ùªŸ-8P1åˆß¯'HNÑâ‘€Ï.¼1b¨7Ê‘½h<ñ&A™k@óQ˨Ân^кn„·# }>©Í¨*Óeq2 gÄÑ%O¥\½h t>¸ƒ€y‹E}jzEIàÇÛEàÿ±Óè\Lå…V¸£Ê…:á—J³e¬[Ò"¼“¯¦˜ýªœyØÏ" z^‰|#/\õ ªˆŒÞŸœ×*½«ÌA‹c‰âút(¨ 6¢"ü«©ÓrY°¨¨Ý†\%ýÐÆ±$‰› 6B‹^¾â b.¬7ƺœâî j ÜÞüUÌ„ÑQÖÅjÕþ3ÕŠQñlJ ±n»@2ö-cÑFiÀ¢L… ÆÂ ­ë„¸—‹¥àu*J·‹ñoNÔJ.T@)Ö'Bø.HÐÍ\%q-§Qè;…qmnz|` 2£Š¡úÎQ6ÉV›µ* á†X¸-MúRÅeÐ2±¼¡öĽEª\ƒƒ¥¢©I»ßw;$e¤’÷X“?‚¬æzQ‹”ý ƒ:ìüJ_;&…7M2•¶ø ažà¾À ¬ùŠÑ)At˜CD„þœ¯À<Êdl­‚Qˆ¨©ç+ñ CH² FZi0>ÞÉ 05P쑨èCÂ|íyÖe´z'fçPTߥôÚ?z¥* ÝÙN´µzü5ÍP”NŒ˜š§H|ÃÒV¬8 ]`åO”°ùÔ(yÀÂcj»«PÉÓ ò8HŸ)S’„^yÄØ hµH¤¹)Ãîo˜°Çh¨¹¸ é ¥Ðlk'´ëÎd™n %'‡|çÄtÙù@áÄNWb3¥Ã²«¦HíÛpCáøI­ACðÊ·ßè[õ): Τ‰tÛËôÛ®¾ã{ÐYÂ0Ú¬o«’›ÏÇ òùÊ<°Û|¸ý¯ú?ÑcKzIÿu9WªÁ Á×ô"}ª7= !* HÈSŠ_ì!¶6@ꥫd"~Æ«:@!7A)h+¯CPà@ü¬C‘—dfC¬_ø(·…aæè0Þ<½L‡'ò¼{†ó'À>Õ/DLªÕätêAN´FVêÆîÿ2‰-Rß§@RK*1rc ‡˜)MÜꔉ ± â`}SX,AÁD@àõã"® Ù¨Ó‹7Šd4g«ãÓ‰'u»­ªp$[ëª2jE,”†øXýS) ±/ ¡5ˆ u€Äº)â) Qx%$O £%b,ŽèvÌŒúL|Ç€‚m5³jj'èµ/Í^RÔˆê{™ôPM€Ê5 ðI|”´ÐÇù¼-ò½ÖÉYAÑ °ÛñŒÆ_r5M °Š&@B¶ßVZÚA§5ÐC)xV5oä8­šb.ˆ8á²àƲJ£¢=éÕ¶$¨ôKùóþ±à@-Zð æÿö‚òX†ªÕ0‘ ×V7-„BÚ¾ƒZ¥ (?hÚy¦Ñ‚΄h« Þ 7‡ÍÐÈD"P*ÙåXØæeÐáçG‘tPw 7,8ßQ Á“…Êá@ {‹0f —?¹p2F™€Ñ‚{d0ÁçO‘WŠÓŸ M¬[›‘õ“‚ó>D*óá«çõó¼€:·°D¼®ÖÍE_£.àÙÛÈ€UrC$  :º "Y\m¯Ü¥$¥5¨†ëù^¨„ÏÛkQ0V]k1ˆ@ƒr \A µÁ"a¶Ü‚6¢!p™0²8Ê—Âh€ ¤0ïW‹ðoKUù\œ *Ó@½SŸ«àöl¼ úÈ·SQÏcƒŸ2&6 ¢¤—´w¦ÈSÖÝS€`HF8¶W|p(Û²9¬kJ>Y†ã„\“ébSËV&÷s+¿¸H”—¾Íêœ{$-/Ý”z‰ççIOIÄÂ7Ú=ß².Lúðâ œ´ô(µùÏÿhC™î–!?oEø/˜„–¹f¥PkNav*|,#j•½P)$a‡æÚi @Aᢠ˗p°iÐׇ‰D<T§ ,ŒðEñ~ „ ‚‚‡å¤'Z8– hd¦ÇŽ-iPÃ)ö»Ô–;I;l`<Qc`€0¥"Zui‘ÏÐfÓcÞÊû¼ ¬^P- PGÀøÀŒygA/ÙW¤WšíÕÑtåcâ-ê9.}¹æÆ–6å¿?‘N´fâ6¨$­| }µýýŸ ÂÑÊ™D È©¸´C\IéGض–§á]4ÉŸÿ$*䜒g׈GG˜xOá‹S-'? ºD·ƒn«B#מC ‰ª*˜bŽPÙá¨Ö¬’$fK(;UV±Xè $‡¦ 4ȃ8Ww%‰ªÕuqeʦáêQ0,x8~iá‚X!Ñ&ÃPj›€ØcÊ “=]V™XÑC– µšƒBÅD!ÕLñ $@cÑ[·6ôûþÆË‡'ˇ'ˇ'ˇ'ˇ'Ë&!Fë.\¹råË—.\¹råË—.\¹råË›CÓž³þBd¢|ùóçÏŸ>|ùóçÏŸ>|ùóçÏžB ÎÀ&&X?ÈL¹råË—.\¹råË—.\¹råË—,‚ü+ÆXˆäƒ/¾ûï¾ûï¾ûï¾ûï¾ûï¾ûï"²(°/ÅT¹råË—.\¹råË—.\¹råË—-¹*­þHCI.ûï¾ûï¾ûï¾ûï¾ûï¾ûï°¾@ 2-OÿÚ  OQA( € Äû®#†€ã #É(’l©_ˆ@#[7( 1ƒ< Væøj$n^`ThßÉæÑ«€·„‚ÓÄܤ"ý4“{ůE°ôŠô-L  ¦%'ŲëBQfÀæÕãalD‡jZˆRåªÐ¤^‡ÈÖÜuQü¨CÁ Å !È8GAƒ € 0à 0à 0Ã(  ðPE0€€J#À À À((<  ð ð¨,€€€ÁP}£Ãܤˀ@0c-àØ<¸ÀpÎÄ 9‚®Yפיžëf½·‚Ȧe¸*§có¿ m^½-•1b¬yÿp€`±r`I%;°wWƒø€€À 0à 0à 0Ã$0à 0à 0Ã$0à 0à 0Ã4sÏ<óÏ<óÏ<ÿÄ#!1 AQ@a0q`p€ÿÚ?ÿ˜„´Â+¤—½öV¥0¼ìü¬Øú)œÜV8”¢ƒWS¬ÛÈèDú` Uçõ®9S­>±»ÜäÉØWI1\³¡$Q>Äö}:áOþˆ„vOð\Žt€4È  l%Á~Ôd¹žÌXA*Èr ¤2£«éŠ‘÷?18Hd X1ÍÖ3£©—ƒ¬â­þ±¡ þEhYaPÑDF"DHô‚ƒµ¹Èê*|ߦ ¹âþ …+B<`¥ëò뵯•iGl ‹\ˆ¦–PvA¿ îÉïe^e\5r~Pòóiš\Ç»BHÐÄ6H“ɶëÇxWÍJ;ªŽÈ«ñã* Ï}ʱsK~n†%¹ázj¡\$^lÀMÀ «©.8n™ Q;¹3<þ‡˜S(t”°vq×­¡‰Ô›ÊþX¯ <ß'Àœ!]ƒ(PȤ"ˆÄG¢À‡”žY§6>3§ûYEOЇÜÄÞúlè·qŒ8tÄrx P9ØAlœ¶ô b5šæÅÇ«ä]7Ék±H7€ ?ž/v eá2ó"fø¥—sÊΔ2×¹°PòùÏÞÓ,VãúÓúÆè€dKÇXIÏUl/Vã .ÛÚ59Z†˜Ð(èLEînV@J‘kNs‹éÍâh¦:©sì m§Êibe€'yf°¨ ŽËý}ô§™Dh ¢o5—)dp§:-QŽO,1G Sæ•¿ªX fÂ#ºÞY0\<%ÆYš,Ž‹nÞÚæ€E±4 Ž_·E†dÌ!do¡$‘#õy³,‡­'8†)TzÞ}?®Á"Ð/^ÒºƒðÑ™Ýj–]]FJieÒI”FÔd.DfáË'eV³é®µØH)u¶·ib‹‚Çà×ШPÊ»¿Ý0·hSñ:ô)0L sb ñ‹x!xèj4;:ДL½N(Mp >â9 ¨«JÆÐNü–UÿÍGrÁ„R*—¾¹>š0ploYð¦×?AZ>á¡„äWdÛSò&A²u ûY› Оi¥¯WsX\œ!Râ\Yy¿Ñ&uPÓ‰Ióãä‰ÀvÓ+Iè¹Ed¿àÇI”dÖ÷taZPñÌÉ÷/ìæet¾&c»Äm©NoBw̪÷Yû¤l$W+1ÿR+´ kz¨ÀFÐü”zÊÁ¥jn,'ŽåñãS×9iå—``_V^êþ³&ñw¼ö%E§¤°ìü!`ú1oˆ˜øÀØ=Ãбt&»§ñSGðû]F[–ü(dÌ¥'HªD.Í@=¥âÄ@?ÑæAì BçÛâcä®çm›¿½”0;7 >Pw¡¢ôz‘)²MkF <Ðâ€-¦W'É*š<à,‹ÕHÝ<@!]¡ëÞ§ù¹cÀ ଼õU˜ó«€@½)‘f] ‘vÿfabÈÍ|á 5¹•¡2ù’±hCæÁm±l‹1I2Ìóé[ô´Ýc:_,W,‰òr`†ÏË¡hâBÊ5j;2ëÆ ¼y&´8®C‘2„ÄŠÅ£´Ê“ÉǺ=9U'$ù%ô@ hÈL¨ít(?J8};Ý*_ñ ÍÂf‚!´––ú¤|K;Ê6ëöi¢€jäQ~$™,Æø³TBøµ_‡ A£1á%ùµ¨ëIÛ%e€©¸,Ÿ,¿ü €¹¶¦·zAp…Wp^{D!@†û‚#b\¾›ZÔ|$ꞃB@Í©îæDãÞí’E Þn*ŒâºG‡|e×äL—¸ätsÄî Ò¨71@Q”P…® »¡‡ÁŠ«eë9åÊ‚¨UUVüšÂ'RˆÄ¨$W[°%êˆèY 2L(&HENý×Jt)'Õù£÷¼ãÜbâÌ8=8nŽÍ;PÕ€% K%Q‘ˆüBCû‹;ebHªªªª«UzªõWªûôm’f„>¤ÄÆÊ ¼Ù4ä­Š«G|Çž„´¤¹]EÄâ°,˜XIs|ò¸&RRÐ2yƨøè¹Ò*p¨A(Lƒ½e,JÊp©í i(¿ ìG=£SY"˜i$Ä@@€ XTWoD’ÕëP­ UUÁmXö-Q¢0U฼`o(KÒX¼^Pý#P .xV/ J#E:­ú n¥÷Û@|¯Ð‘0"P€ý*èä-/•y³ºœ„ÿÀåVNë¤s2~È ÙK`¹=¡‡ÅŠ•0»P€îÌjž8Ëu² ‘ªÚ<§”«ŸSLQŠhOüi—ÈMYÀsü-º°¡Žƒ»AøX$ÀìV·¡˜(¡ëœXPMXð±–Ô«%„ ÌD† C#Åõ}äû‘A Œ1Ýè5àr$TJoD~ím©VWPÁ'[½\@Öº4ŸX%KI™P„ˆñÁ (†ñB!ÐGÓàfë‹\4Ã2­sºµT‹¨ÿ²‹¢5úž$:>…Ž·k„G!gȶùÀkg³å ú1EV«ªdÐo1ìqª:IBD‘ŽàðÑÇ ì4$€-°Èü œL"ûð©Eà¶ÁÈÕ >¼]s>²O¹“l!òŒ¯5âÒ‚ÈfDah²Ÿ5)$à½ðËk)yÍpåÔVE?.vwžä„tðÃÞ4™¥æƒÈæ8œ“Ê Dq1]„åô[7Hgc»Ðì§Á÷°Šð8òѳ÷c$‘‹‘,§…'§È0b@+”†Ê+iƒ‘}Pi'‡M£4¢)la,I1ULÄ7Á‚ÊÁßf½†ƒ¬zb|"ß)z/ ÙÙ3¸BsoÁ4Âaéd_ÒhcÅÁ ʅͤ']?t9„cäÚy© Á˜esöqÞå_`„Àd]…aèƒÒqÕ}Ƈ¾Q$¤y5—ÃÎ|6c!0Iyi?ñ¶Œn{¤CL-m§°d:€x 5mK©…Åîs†rbX$±ó "m‰ü²Ê½W¢QÏ%GÐ<†øIã 2•ZÍÍbJœîræo^C\}_ó/ûrvÙFÉ™?C¡2ÿu43#Ó¶€G“(§¹ ¥0™CË}4¦äb/Ôç·L«à‚Õ.N&¤¢01ñ9‹œ#¹Ñ5uèŠÕ…É ‡O#S6½ÇrA¤³BÌf½ÕˆF—è’¤kÎ8T–ŽI@î¶;ƒ*%Ã[JûQíÚ â ›µðÔM¾#rÌ™¥ bÛfçѽ©ŠY"+u ¤8—PÏaöòdr”ÀÄí1¾øÆŽb*±ŸŒTÇó%Œ‚å4yÔ·RíÔU4à2¶áb¥ìO“ÍŒ8§Ï}Gƒëkþ÷,b¿>rû,ç™uà °Ô¨Èåaƒ…‰º»ÛËlÝÆÚ¯XuÞ ,o"3\ÈVš¹<G*Ò‘ª„‚›ÝלÉ2HPRka%´F”%&“H>+P‰‹=oK¡ÎUfc!ZÙ‡ /—æ‹Áu@`|(0¹€àXW½óúm3iÁ‡B’Àƒ pµLŒPßMNŒ‡|H©5Òª^âS0PŽ`f-ÓA$X„äƒÅÅo¶ˆ›8if…âÞ|!"àï ÆìÎ4L„¯X†>$µZ€±ãoEJ§ ³Æÿ@=`-fSrS¡D <¬<]V±Ž4'@µa"àS„¿¼†j Ô®l r÷AE“Kt…)±ØÈ«zh_ÅÖ‹Z-¢Wò( ªà«¯”hèž'ïž¶ÈÉ[œé—!÷H‰…gƽ¯‹¯$Ö/T]‚ÄsðŇ€…X ÈÒ™‚]bÿ!kY€ FNKÁ![†’GÒc 6ñZˆ™Imß.q´%Uˆ¬ePyÇ p|1ë1dtÊ¡Ñ)È&ûU±ûï Ô·U‡•ÙÐåéRúWò ĸJ¨<³B KŒ.=+„4€_-#[@•ÑB’j¹B8*8²†ÊÖ!Œb$p ÑÕK!$Væ— Fè£P€ 3˜ ˆ‡$ ÓÈ{¸ „ þCýZ.AÔ* ‡Þô'˜!þ•.’ËÏ¥ƒ¨„nµ®÷nT109´i˜@:JÚ¦Q‘Š!8U¬ ÑOk‘¦ž„!³€·Â,Nãšùs’{FpI ¡²ñÿÀ½¼AYe.Ço¤ÓŠ""A—‰)ÈT’AWR2À³×òFÓÇ`IæÁB¬DØÓ<%h±ž»¦hYmNW¤T@ø*”‚²¶©§ÈDP4B¤V» ÖÜi )Í~­r$»Ã†2ÕS@—'†ïß’K¡D[ ¹c3bÆäè ¯ˆŠJ‰‘ ¨æ XaælHÁ`JÛ(%ˆâıWX-•¤%Á ŠßÌðñKG¯Á¸’DÇŽðVK“rQÝUÏ”•¥¯yÂJªèÜC¢¤’¦`aA† BÁÅOw1à³8ÔG ˜ŠK: \½‘*¤¬3öŒ´•§|ñâdç8êëI?‰˜ˆ‡ÐGAÐ:eÈv´B8&0bd ¤¦Þ¬mn³ÁC[¨º€"|DZµBªf€BÁ·0>° !j±¯\(½–‰xX´…wQ‘ׯ)dYEq}$! )p¬hpp2Ô`QŠP3Aâ‚(¢/a(€ˆÄDüŸÇÒ µj&0+Ù`!¡¥…+Ž‚»Ã>^ZU]D*mã¬ÕD8f\ ù‘.ô‚=ã‚P]”*Ç*s¢°;K ÅPÔÛêˆT€–L '°VdFÊ7‚HÎÀè â²}徉… › Ì §‘T½ad/ã[F ¬Š é5¡EéptË–¨h†¤¨@ŒQЊP€DŠØk·²‚XaÌ×—*WDÂ: °(·qAÈ(+*žš¸¢T†åH9JÒuD±5¢'JŠ›È(‘ÐF\0Û%–E¤! ©€ÐÈŒàlñdbˆÇÐ3ã¶Ô4]H@0ÀÊh¨¨ˆ¦‘¦ švi“S5´jƒ-š^ÿ?¸<3ðf:o ªf†øôWÁú‰áÁXvêµMéÏ5ì&Ìoîbÿ~Ti‰c+eƒ$8a;TÐimµ_W¼óø%§憤/Løbj» .è èÀ×(ªª…uB>Ч¢Aƒ@°EB-úGÕ{özúgºZúxý9JÑZ ¾ÀðÃ*Pdt à‚H0ÐŒ€DzB:  ò  B¡(V•UÕ¼º¼¤  «@/°n`ò€„(ÀΛ"úˆ¯Ø }Œà€P„ðåmjF½7ãÿ£û{WRºS"tˆý°Ü8p”ª*•JUEº§Ã±q„0IDÂ0£˜~¹SøˆÇšTBSþÂ>®—OµÉFS{áµ\!¨•\CJKçAU‰«i¢Œ’!ªíZ ‹Ðyÿ¥W^‰rGA­P/‘CéAÆ9þ›Ÿ*ùR æhiý ØÍʆÇoð¶’&-4…èª*7dBplX*µ±0 ‰ @n2vRøeJà"RT77ìÈ‚€¾(J E€DÁ56"Æ‹‘V?»Ù…+ÑÁÍ]\Båp› …¦…Äýõ,»ìûùþÁ˜Q’‰Åbá ¯ƒm² ÓÁ–¨†¦mpø3j,)“GPqG59Å'Tø½H¬²€éªGϘÆ,l* [¡0id„‡„a‘õiªŽ!‰'P¢þf h{郼 ¨J”D© ú =8è9áÊT@Xp’È8ÂDˆ.ö ‰Fç0a¦/•`¹Tå¬@X2ÕÖ-8JdP2B•` ÔÍ7Í÷ü~ÿãžw„|¢¦ H˜ñÕ s½kX5–°,ˆ#/Ú©<./ fÐ@ÑBL îBà4ÙèD4!}DÀ²Òf0WfZ­cŠª&RØ·ÛJÀ €|Œ"k"€IubS“È'Y‰&°¥Šn%S°Moƒ(B¿¸FäMè±;™€ðn8ác4!Ôì[I;–ñªx‹Š8OWMýdFcV•)ÓY xEcÇÿjœÀÊ3¸ÀHÃ/tÂ~GÒKyB€JE CF"&kêfÅÇ¥)€±Õ>[‚*˜_ØRUÆb„Y° Æ› H l6,;2äØ:š×DMu==ã‹ °•C)®¬ @¤°‚VË{ Ïh^ER€%ßë0@4‡)Ä;ÀB¥Ê© [hAîÙd‘Eß¶|Â;YÕ=]”ްÊ2&ÐñÆAéZ¨X)äØÛD ºˆå*üÑÒê "'_7‡.y~“¨Ý²¥µ¦ޤz¡Ö -&°ð„ÙÔ‡ÈbSx¢GPíU*Ë€#£ üð^6³„3;•áÈA%=Uª$b@ ²µ&SªNÚ„–Ìâ84OááÑÉRjm VÐážaÃSey`è’\Z"Ó² róI+˜6é¸dI >؃H!#;¥rÒ"[R5ÂÞÚ' Ëì!G A ˜‰µ0Ð7ú*¡ ]† ‘†Ò(€¦@A2˜rZÂ" bu¤:çT˜‚G½fPDq é§uä2©:©> ¥ ç•Ó”)VlÔ¨a1rz䙿2ÂkzGj ¦HL«–¡Db .Üƶ a²0Ú-±ì‚k·%¤†@ÎA=+zHpÌ%‚¹}ô­Ò ¨s J0 A%Tû‚³ÏSlé1Í’! í²ã—JDÈ‹ÿEoÿÄ%!1A 0@QP`apq€ðÿÚ?ÿ‰@ 7/s?³33333333331€Ãx.ÌÌÌÌÌÌÌÌÌÌÌÌâ³33333333335°Sÿ_XÒ«Ì«¯Õ5’ÆŽ±¸+~,nœJ0E$µôïÁ_äÖ\ÝÉ4+@¨ÏA.Ö—ðæ'|¦íhÙ4^HçôÅ`¥IÔ1)I½­—ª`‰¤×кThF+7›j±o€·Dær†’)’Gå=¹s¬ŸÃ]ÆCãNû8  ‡EÃUƒC…vÇÃÜZF´ƒÓˆŒfþäϸÚâGñ©ý+'Ф“”$ÃÝ»—µÕ°­qmö˜\lIpµN¿cXJV¶€^*e"…»Øþ†§ †$\' :–ö‘¾KIˆ€B1?(nQ4#èÕö—ÑÕ¬ŒârÞP®Ìàw‚Ôæ7ÈÛïE­îþ%ô„¼â„5#¢†WÄÅS$œ„øÿàÏ2Åÿ¾ß‹÷hØí7orɹŠ`¦³ÿ‡0ŠÆXÉܤªî|Ÿ5™jßkÖÃ8ѧ(¹¡%oh¦ê9ƒþˆ>u>éÓ¢N2>»K…Å¥r@A “8Ì5*@oîÆ—“Ö‹**¦`j4ÏØ1¤ŸàUŒÑêÍcC:a‰øQ™`!=>o¿#F(hÈã{À˜-A‰+ú¤6KÿÀ‚X•L ?2-¼“Ên²Å‹.œ"ÒÜ"qµ*)¨±1UÂu¥â!>7ª‘Žš(£© d ]’—"䎃öÆÙú-Õ¦ÀÂÏ¡U]È`2DÁ7-ÉЇÛá/@•¬K:„"Ä“¿€½—güšbšàèˆÚ¤[ N5µGN: Q¥«.éi8Þø"Rm}’ Ñô 7D³Ý\®(ó0û¨‚žœ!‘¬¬3 ¯ ¾i`lëJ?4PáwJ2Ú yùFQpSœðУ QƒJe¡b`*ñÑ&³`¢Œ9¥AˆúìÝÅ‹. ÙfÐL€5(F°Áh ýqÀÿ|Ømjtž¬i”QŸg‡ôþçÜwƒ_ ÿîL¾†£Ä±´Ûc¢Qº'×~ u‚ÙI|Ôd»!GEÀ+JuâÑ£ 9 v/×liPXœI¨Üƒ'EìƒáÓ2­17XËCmóE†¥SëÌ­¶à&N6:òtŽ‚‚l䊻‘X>h3±?,òùʉ}%&÷Т'ÚÇéa,DLÛÓž–Ç#¤UbpXŠr·Áumª­ )M¢ÖD„ÐY€9ß“ñ¼çÂÕa¥¹Ë…ŠhUµNgV=9„wóÞfÒ„l,aLÈEï¼× ‘(¬&¼cŽÁ¹PAÈØÏ&ñN©ñÌ7PJ„ë¼”ŠÆ!“‚Pµ»Øy”K.()'•Y£R ‹ÃAñ£úŸfj§0FïH"˜¢a?”ÀÄ´#*×[ù.ÿš‹„# PøŒWaŒv‡0ì|v§¬RâWS¹uîûCÅÁõ̦3™µT<ùD$^áð(MÞ~;:Ÿé/„Æó 7µàR'Úpê±’Bb3„-3ƃá>Ó%ÀÖî]hNøÈâìî&¦G¥I17ja)­Y®'ŽGÀˆ~è…(£Ð¾)¥}Y8ËqµŒ8 ¢‚ã%¨ á(YIò1£2؈”˜±èȨy÷‰Ö ˆ’k˜iåW=keZ …¤,w+3’8X[›œ-%uçUØqö_!€5¨Ÿ¡.OT²d¼)íÌ#¨%Þ‰Ï=Ù<‰°Šé?A 𲤣XòH«ÁŸ2ô/È6]9O`›Ð>¼hbÓ'LfÁÂØ¬ÖÉ, ã&Ïcû”œ_IÁQ¥L™F!ÍicÉx¶‘0RÖp¯¬•ì7‚€ÂÓq tF9)¤Ál‡‰Á•9œR 1±ÈSÁímà¹ÐÉpÙ¯´³RߥÙG·|¿™J/¬ˆgìK¶xÚ[ìî6¤^’*þ“­öÙrøÇ/¹ZÁÔ»ÊÁDù*ðð@‘ìDž2,JÐ l Kb7š•x©ƒÃ«èäé  qÞ‰ñÁ Æ"1¤€g/¹DLøñ@änÂèÆÞ‚"éZ¯ÖaÂùYõº– r ¶JsIá± (îéÄlf‚·@©‚®¦@س¿`¥æ¬Bk<©Ä aDA2Eäm„Ò§ ÀúåZSb<°ÂŠ›QŸ%4þoÉ`SBVŠ ¬N sá„ÊJômÄ„Bº²9fã`ˆáÈÑÂM¹”z¤JI@cQPm/ÉÉEyEC‚u ‘åß}SÃô3e(ÎŒu§o®ø† •ë²e.Àµò š‡ÿo)BËEb7j²X¢PBÔ$f€Há‚IR"ƒÏÖ˜öw9¬…ñSos»TøåYsdxöÞATk…fŒ¹æHc¯b(Uþˆý­<Áý’Ɇ–F%ª¾ˆ¸EØÂÔ)!L±¢~qçxÒÐ[D!V^X¹UF<>‹aŒAeP)ýN†ÉR ¶D¢²`}øq}P'çN ;»|í©åkÐQb©%2£r€”?ÙKÔ=.ˆèè] ÀÙà-Ö{›Q& Š†ƒãZ,„CNÇe{¨t“hæx ’ÂDQ*©åÞAéG ®~MFkƒ$# 4h80, ÕÄc)æ “RpŒ+40iØä-ìÛúp;׸D­'H¦0pŽˆ˜åŒ¤ËæcTv¸áO@ÞÙaâ^šÀˆS˜T!?Š tíý –|G—eýÚÆUr_=—´ÂP؉‚0¾ÅdÓ7*!Á³4¶éÅÅY—âK4’ZzålG•ÅàDÂa¸B˯IÊ ¡Š¹¬*”{ µ ‰º\܈Gîe #SÐz>dbÅ:ûpp%AÎ^TD$ö ©Ðc „ƒyOŒáô;„¹ß/ ÞÄUVo6Õ÷«1D€‰˜~pðŽ?yÉÿUnå'·.0¯B‡­,œXÌAŠãËB´@`IS^p™ªAÂ&²HÓ‘xÕ¶e8HžÍM2%é§@pÑu§"7kÀº)É:X“b‰š~iÕL6[@˸š®çgsðƒ€”÷‰Ð¸x ¢R0]Q·¤‘6°ÅT#ºP6ƒp‹Ÿºí»/Á”÷"†³É7 åhKÌá·`<İüƒ˜bHðÄü†|˜Ø¾Ȇ,ÓÆÈD ÔŽÊì:‡¹d)aLÆio⣌³°ñÿ%K×  MªIîdB(¼×3úÂ_Àˆû‰¿0ŠæB_{e)|aÏõ1‹•U˜Ç>£Pót‚©I«ÖЖš$Ö÷ÂmàÒô‡@”‚€7÷QðÁ©1'Ø4nrßÈm&RTPäN»íbÙª(¨™ÅŒ½. ‰™V©’@F9ðõ4¥¥£»Œ8IRƒ­„š*‘aªkˆôݸ“I!2Ö_ÙÓwKŠ \¿¢K$A ÀN«ZÞž.V¯úiÉþ$8/“ïæO§ßä9Þn´T–1{Ùú$"¹‰= Ž?ëz¾fVšíŸRÕg=rËÆp€@sc¸1·RsþâáHPpV«—¸“–suQJ±ÁÂ¥”UƒX¾"/ÕC  %U˜Kc"JE?¤–,¸Ïȳ#|$" P÷iøñN&5\,ݼÕU5²ÈüŽôIº®S2¶±áqB°…¿nCåX&ÊÓP·_Vï9%»™ÑÅ»Kfè%ÀU޹ºpð W e`Z¸ï‡e‚@vº‚:I±$Ç̪£wÀåÐ@BG215À”0" Ä€U‹WÞ˜àd„HÉ—^(M5e]ÛŒ4£À—ó« Yû³†DJðÕy:PdFÒ™/×Ë µ Nû iJ&1 ™£ ÏPÓudÅ="\}jì Ó¹)ìŠ1€ 0ƒ¸ €Ç=Hµf…Ka!`óæ   pÀMÄ¥wïÙžop”ç‡zE‹!ˤòIý¤Ö•zÀpÖŠrµâb Ctsqm /¥Șez´F(ÈÖ‡Dñ%û肽Úõ Á&c¾”jˆŠ#ºÜZi´]µßÈ»1¨ÌÌqcÿ‘.öKÁêdl©XÂ+Ec¬a„ð,ÌÌÌÌÌÌÌÌÌÌÌW\Ö‡|`z¿åq (P¡B… (P¡B… (P¡B±è@j~¸³33333333335°Sÿ_êQ–ž—ì8rÅ 8rÅ ©PŒÐ7—Z°î»šå° Åfò´°buŠBŒVf2¢×˜¾„«r £øc¼È Òé¹` òn§Â¸D*èF¡DÅÅ6§{§êÉœÙø·é!eâ¿Ô)ü!ÞdPiôܰy7S+„B ýõ7øºÞ´Gûç…ÜX~Môœ_ ^B渨™Ú„ÜØ·¨ PeÆX$¯¥ïŸÃX¡Œ BÖ<­”HŸ"4S\tKϪ(Nè† :2"›ÖàŸÆ«À¨AÊ(H]ˆÓø|žpñÞUDØï†wEÌ S0͉Œj  ¥–4µmõÐX¡¢t ¸ L“ˆn:TÆ*~ß°®}Q—÷¸}P”MësQ9!{@çC¢dãWn$ä¹ÖV +„9|×Ó—¢'£-†oõ9ÜÑJ´ `£(Ê ¬8…q¸ªÍ9z!âz?‚9|×Ó—¢'£-†oõ9ÜÑKà¶Ò0µù,“`§¬Jy' ƒßP{\9cUVgÐ!‹¥åN§¦j5I#ÿ@¬PÇ,PÇ,PÇ,PÇ,PÇ,PÃc½Øº€ˆ»$Çï9;o­Ü¥øqäÏZÐÈ_ôáË3#íR•:¾,R­¼Ä•i“h¹ƒý$$‹¦M3â-Éì©ÜŠòв Sº1Aèê­ÃE'mÃUú±Ešð†=;ü}*Sb8Šv¡éŒ°ut&9µ@YÛu§ùáÀôQpk09‡,PÅ ÚÚ—Ý ‘¢ï!É’Õ˜C^*©× £üÚñcEBŽŒ±œƒ”ûöÚÑd3óP À¶œ†úàOðm—¸kXÆXš{±NÄû ¹Ç½²nŒB¶!wEñ*„²N HA iYì?ÖBð§I KütȘlê?@>í.2Y^H½Eð\ÂáÓ‹1ñÆ:*X`àI»úÆ×Ðq~Jx›:%ÔåZøu)§Ò ñá†õ,áˇԓõ‚_åœ/žA1Ï|v´ðiÔ+'zŽõgÁîé‡e*—=Ü7öÔë|J£#Ç ËË],—¯Ìî°¯ˆÀ¿õÛƒÀ Ÿ)îßðU#¶ÆžÔc†_Ý›üfBæfv~ÂܬPÂWU¸8&eR¨gˆçÊýéù#I]|–L'¿X%–›gÐdY[CâAALͶˆE“Jà º#¥Q¢¬ƒº4+S‚+²7€EœàšX<³z".zä½) ¥**y0¬t÷ACâéÀa–Rd¢{z/8?1ä¾rGF¥N¥xu<¶+MF~‹s‚¾#FÈ!…[uPÈlà°u‘¡h* …'‡Ç‘>‘òà ç‚7æ[ÕSjm²ð=ìQoÜ7³W,`ˆdy~ C5]`fÐ<û2;j‚°ÓVµÔT*Bå† èN0ëXªØkŠíŠ ä±¼¬`–¢¥á»=÷*Z†)ê@SR_ à€#îâb}‡„5Nqƒè}³¡½“UGU&wÜVXh¹ZT …ÈzÒðPZ¸OÁ|œk?f÷ ›hà™tX͹kÿN³Å=@œY‘0‹™Ž«Ì°)æßrU ÿ ßõ´ÿË›e¿…PÁúXıýœ—•^ŠÈLSwIþê"»r y3Ö´Å0QóÍ=3¾h|yD”(á_IŒAõé$%v‚“$s"üئ4ÄuäHEïxI+°“öSöj£Ñ tRj‘Q¼Jz“œôï—Ö+ÀeÇýI´rŶðvb"¿8:=ë6ÄS`Áåu¾Ã—â—?I¯-‘•2ª¥3H„‡ã‹»ª Q¹i’,ÇaÀÜÝé0­¥½/ÛNW¦ÕA`VþB‰ÅbÍ¡—R †Õ Þˆû¢ÙÆ#É.iìÚ™T¬¬Ê@,Ë|/0€¹T¬²“ -бÿ×Ô#Å9V& Úý§IûêÐüâ4yò¼X;ÖØ(W ¥¶WhaZ‡»H†)26ABTº`{Å×o ØïŒÒ,­²$9/…)ñ.€·¢Ýè’øÊ‚ü”óŽøMù:ë4$}•õÊÎXW<ß œêR0r-~kö4Šyr²Œ”yvÍ·Ñ‘Süt«aç¯Óš¦ÕâUß2@!A³{P¥ÌãUXB( ƒR«Î–y„lK@ü”U…0y„dzèòþ˜©Ãº@yi®ˆ  jƒ!•%: K ¹$Kˆ¦ XNÝ–<ø“A%Ì\*„¡œå¶F^ÛxX•ëŽÏ¦IÏݦzmº m°e®ŒQXZuCŠ~VÈU„×ü‚@Ù‹@]ö¹‚ÿ…‡7|j__íE?ð ·­CË›äÆÃu.øø~ ­hÐÇ=Íø^«Œÿ¯ °Øa†: ÎìÌ*>ÀWlšÉÇìhârÜAÀŒJ%Zk‚›>ð—âØZSµ¥wƒ%ƒæú¼º\SÛE¦˜£¤¡;YùÌ£Lr&ì|ûuò¬šç¿o¾Y%jñ8öæ1z{)L¸’“Þ¦h+”4šOEPº0,üNSŒ_JÁ|QkI¾œ… 9í1`¨.…!Œ-Å :x….„C:D€I$æ¡c’Rä&7¦Tsé;¥  §ÐMg0!Á0Br¬¨bɆ : YÖR^j(FNƒ(t§½y QqWC*Õ•1O»•]ãñì$a© ‚–Yа›ØR`64/I0Æ3 ýàÈZ~žú3–„¬Séöȇæ=‰üØÔó ¼,¦©¶²éG}|9íÍçx-FæFºd¢ûïâ¸aNöÉ÷˜«…,K)d Â˜L‹¼T`Îp~ò—דÔ>ì¿Þ”W„Uo° û·EÃUCt®`P¬¥tD1ã|‘$ÈÅ“ë–å&/([t©t¢-@o€#¦Mª!#’'œGɤH2îg÷š9 -1$Æ’,„€ú#è‘2£ \%i "=ÒÚ’28µºƒ‡›Uf¡ÁÞ™2}ÏX"jË„‰c“¨¢ÉÁ±è³~ÂÈ— i ÌY/f—ŸŽ¶Eóëa”#âHÓéuùaÌ@ñù¤ÛÓÕÅäí;AÔØ{ú’ é „}ºñ_‹•b7¬»û—±*“Ÿó!ÛžEŽ7ýNâ‡Õ4õ^M3Ë¢QÞ]`ØI††‘ªÜ3m„Ò§wƒ=tø³Q![„ 1™m"\‘u^.EOlf˜ýËý§„Ý)£„PH7°±Ò½·¢X¤‡Dy©fu{-Ž;P¾ªÝR‚ÒVÄGaÕP‚ê6$8÷(„qàE©º{\h%WOl EÎHŒ i©’“SÞØö…äðä/ëÈ5ðS¬æh—v•ÝV5Ið øQ=Ô-Τéö“]ñõ™qTZà`Š`ÏÆ!bÎh ¢!€[‹kI¥Äôˆü|½Í¼”‚yc~°FJÊž‰†¥½×Ñæ™:.Þƒ7}€ ;‘D°‡&LÝÓ·´}¹V¬e§$NGËØF*à«w”Ñq;(W¡¤I‡²_ N©{X°„)¨  Ï€4Âä°dx[_ƒÍŠîò_´1Ã1ËO`^)VIrŽüyIšûy9p†Q ¼ ìà 0|šé…Ƙë1€¨â2pe×ö ¸¢àiaŽY‰ƒ¦nMÒ€Cà!q´Âb5,5,õíÐiçWÄaÈle ¡‚”Ø ŒÏ!oQ±6õ …©t•I MLìÃô…K¿¸ÇC<€J¨QÄuU#O\8(ñŽ4P4DlŽq/Œ¢MHª!À!Ð`ÙI1Ò‘ð ñÇ–eä{&kÈ(Næ[j 02pàıåÄ@ ¡”nì žS‹bu‘£Q0t,¹LÌã'ˆ<†<þò 7BÚÀiX@°øRçGÁÍå „jb¯ÑV=Žä°Q¦¦q÷ Ô£lìÓáè f~‡›—§Âij 6Y ^S:Mò1¯9í…Á¦& %ÒÑé’W‡±†án!eÄå\ àG¹ái÷ælÝqJk½}€o!Ú€.C1rРQº/ÎÊù?l[în¤|SÆ­0€GWPš¬WgÓ¨˜/i)Á k *r¡?Ÿ•³ƒv¸k‰¢XM`a9s K£C‹ ˆ—v„*hí%àá¯)µàɰdƒ¼k¸q†…ÏLÎU‡Á.ùl6A6·&f¬å‰P¨¯Í}VRY½&Ü(lßz1­,ËYâ%„W•P¼|N(ñ ÂD&OÖÜ$ÙV ã‹“³`<šF|fúhÔo$Äë#r Ò3G¬,æeï†ÿ¯Ki=r».zš•*Q½Ï…©\†x˜^§ûò´<¨³KÕ9T‡}§€P¸~ ž-;ˆ’iÍ—MV‹Ä˜d®÷ AÐÉq(íÛíl‹ÇA]­‘eIuPFv0ü´Ë°µÇ}5=tÙ‘Iàµ.ֆ艉ºùƒ5D1‡¤»@‚¹à ¼ rž–ÂdU˜ñ#ýñƒ,^¬dTL=ëï Ç³ÉE7Z2ÅHˆp"ŠÄt¨ —œ]÷ƒõÀ:æF‹à­øÅÊÛXâ¹l•"È"î­ˆq¬Ãbph‘b3AI˜9ŠGˆ'#šÕõJP d­LrßC»ü˜x6æÔ bä‰"#,eF›IñHOHF 'A“—ØÞûÄd}9€ÜþF26ô†t&`)ŽÚÚÊyt€»EG¤(ô`°/k¸;Næ…#Ž\¨/uîñ­ˆ$@ ÔhE蘛=HŠ¥XW .ì(šxPA1á’Ÿ‘*XCBrP§ŸHÉV %–™6åL²Ur­×&Θ€MÌæWàÈì )ÇÎe ±Ôx{}”·@p:ZýÊ£4§æòæÓî†U@¡-G‚~Ë?²¿í§ðWÃÚ¦š¯ÄOÙ;]ø¹ð7Ä_ õû¡s„üGñGàÿÅÏŽ7W¿ 'ÕåÑtokþ ø•{{¡-åÞµ¨Á§ÙAoouø½ÿÿ‚á~ÍŸðNßÙþûþ [ÿ)> ý’¾-~Ëþ(xgþ$ñgƒðßÃ‰Þ ñ޵‚¼e£ÞxWÄ6¾ ðæ™©_ëZÝéÚ´ÖrG¯èö¥ ÔB[vY‘dìb_~'ý¥cÙöŒñ¶ èþ3øýû1|ø×âí#ÂÖú…§†4¿üTøUáOkúw‡-umKYÕm´W^»¶Ò-õ=cVÔ!Óâ·Ž÷R¾¹Yn¥ê<)ûBøÆ_´OÆŸÙ—F·ñøðá¯ÀŸŠ9Ô.l¬"ð«hÿ´.±ñ³HðN‘£_¦©.«yâ ?þW‰u/[Ýh–]–¯xM´½_Y½»Öì´ð~‹âø'¯ì%û<|ðo˶7ˆ¿g_¿gÍ;Fø-¡ü>ðÇŒ~ \|-øa¤xË¢üLø§á¯ øCCÖ'ð¬Wºœž=ñ î€u‹{KCâ3o%ÌŸËGüƒþ cûY|Aÿ‚†ÿÁl~.ülý…iÿ‹Ÿõÿ‰_³'Âß|"ý™çýŸi_ |]«üaøýðGOÕ.íÍ­ý„Z÷‚ˆì¼OâoxãÄšœ>]SITþà试|CûPêýš­ÿh¿þÌ?µU¶§%´S]þÎøsቴ®›<úôú67 øWãïøJöå’(µ¹fÑ<«iÖZ Ô—÷Ö“ÇyikùÉû9Á}ÿd_Ú¢ÇÇšÂOƒÿµÍ÷ÅÏü`Ÿà^…û8ëŸ |%¡ü|ø“ñHÐ¥ñm$ðw|I¡êqAt°ß ­f‰1Wþ ƒð«Ç¿~"|2ý“>þÑŸ·f³ð{Zºð¯Å¯~Ì„þñ­€ß©xóãoíñŸöø?â¯i=¼Úß„~øßÆšî‚.í­õ«+ ×kTý.¢¾ ý“ÿà ß³Çíâ¿Šß | uã_|}øg§|ný›þ5xBóáÇÆï†O©ªÉ¤êZ¿…ï'¾ÒüCá}b mntŸøÄ0ðN¡þœÖÞ"‘¯ík·íÃàÝCãÄoŸ>ühý¨|ðbm#OøÔ> Ùü,±ð‡ÂkÚd:Ö•àß|EøÛñ[à߀/¼}.w§jÚ‡€|âOxÇÃÚ^«¥ê&Ñ4k;è'`µè¯…þþß?>!þÕþÅZ¿ÂÏ? ¿h¤ø ãÚ?Vð‡ÅxzÃDÒ>øKâï†Ñ_[üAð‡-°ñ–­áOiú~‰«lkÿ¶ç‚eø·ãï¿~|bý¨¾%ü"“FµøË¥ü²økoáß„º¯ˆl Õ´o x×â?Ɖÿ~/îô[›mr‡¾ñŽ¿ãÝ#D»Óõ}sÃZe†«¤Ü_}¡E~yÍÿø{áïÚgöiýþ'ü ý¥~|tý«5_Š6_ ô?ø3ÀzŸ„F“ðáO‰¾.x«ÄÚÏÅ_†¿¾ ü+{/ì ÜhVþðÏŒüMñËÄ:¦‡'ˆ|¡x_Q&‹ô2€ *¥ýýŽ•c{©êw¶šv›§Z\_ê…ýÄ6v66p½ÅÝííÝÃÇokiko“Ü\O$pÁ o,®¨¬Ãáo‡ÿ·•‡Æý~Íß³í7ûD|Õ&½‹Â¿ümû>øáç ÓîžÊmgÀIûB~Ð|oâß ]\E9Ðüu¤x2ãÁ)´‡ûSÂÞ"Ö´›‹;ë½+¾(þоøIñCöjøGâk]x·ö©ø•ã?…ÿeas§iúÇ€¾üSøûâ _Å—7º¦Ÿ6áøü%ð›YÑí®4›]wT›ÅZç†lÛHG¸Ö5ÍÀ>ÁBþþÑ?ÿk/‚^øgñ÷Nø±ûøKሾ1xÇ?ì¼­O®|gÑ>$ëÞðƹâk{Ox’O†ZŠ\ø‚Îæ…šÁñ…¯|ñÅš=ö¥©é?Ëgí5ÿ0ý®ügÿÁ6ü ñöý¤üðãàG€hÿfM/Pø ¬þÒ?áøµû:ü~øq®|^½²“ãn•ðoF‡HŸÁZ妑ám_ã ßh~ðŒu«kÛýsŶžpîŠù{ö~ý£¼]ñ·CñƵâÿÙ'ö¢ý™Á¿ak=öÓ>nxî+»=Fîâ_Ú|øçñ¶ ÏìçÇi}»wáë¹/5=:-6ßPGº–Óó7Lÿƒ‚ÿc;OÚG\ý˜>/|%ý²?f_økáw‰~0ëZ¯í#ð >èpø'A– M&ëJѧñ–§ñ+ÅzÄ-^â/ ü6Ò|ðûľ/ñc§„ì¢ÄræHû§E~P~ÍßðX_Ù»öŠý³ükû]ü;øûðö¥ðgÃÝ7âˆøsñëÂÿ4kÝÁÚ¶‡ x®Êk?øW_¾&\x_ćÂ)ðÿ‹n¼ñ6ÓÀ?4ýRŽëP𽬶÷–ößJü]ý·¾|6øµ7ìï௠|Fý£?i;OYüBÔþ| µð-ïŽ=øYð§Àö¾£ÚiPøÏâ>¨_¤ðê6ÖO£™5À>ʯ,øçã?ü8ø'ñ‹âÃo‡·ÿþ"øágÄøáN•t,uO‰¾5ð¿„µ}sÂßtÛÓâÎÿƚ准ìîŒ {J9ŒRØßx;þ “ð2_Ú Àÿ²§íðçã¯ìSûA|V[¡ðwÀµ?†¼£è¿.ìn ¶»Ñ~übø;ñ+ã7À_x¢)ot¨×ÁúgÅ7ñeÍγ¥éöz-Ƨrl£ú«ö™ý íf_…÷o>ü}øãog©Úé²xölø_¨|]ø—"\Ú_ÞIªCá 6÷O¸“H±‹O‘/¯¾ÒW66©·ÆÀšŸðC_ø(í›ÿýš¾!|Wý´¿e{oÙŸÆ^ø³«x+Â3iñ÷€ü7ñÃvº}Üú†à߉ú®½ã +Ÿ êSÍáw[:Ýþ®k\Å¥&™}¥kZFŸû[_ÿðM/ø)ŸìýÿTø%㯿³vñWÃþðÆo|Ôâø»á¿øW_Ô|UáŸü?ñÍþ§¤éžñ‡Œã>“Jø¢ZZÜj·zV°Úž¯ Ɖok•åÿξ ÿ‚á~Ìþý­~þÇ¿¾~Ù_=ñÏŽôiîü áí'×?ÚzÞ êÒiϤ^jVVZ6¡ª ³TWã÷Äßø,ŸÂ¯…¿/ÿj [öIýº5ØßMm:îëö·Ñþü1³øf<'«] m3âM¿Ã_ülð¿íQ{ðÂýf±¾°ñíŸìñqáËý'TÓ5k+Û:í.GêÂŸŠŸ¾8ü5ð7Æ„~/Ñ|}ðËâW†tŸøÆ^¹7Z?ˆ¼9®ZG{¦ê6r:E4^l2…¸³»†ÞþÂé'±Ô-momî-âô (¨nnmìíî//.!µ´µ†[›««™c‚ÞÚÞig¸¸žVH¡†•¤–YcØ($ME~]x#þ «ðËãæ­ãدöuý©?n¯ø ľñ'ÆÙëCøáoÏâm)Ò-gDðÅïÚ“ã×ìáà_ŠWz4Ó[E©Kð§Xñ½ŒêÞån䲓íCÜ~~ß?h«ßþð5߉¬¾6þÍqÃÿ Ûön×ô­8|wøq{}£Ë­èún¥ák^"Ó5»zÒƒE»ðˆ|E£Þê„iSMMdµ@µ(¯Å„ÿð]Ù—â§íéð¿þ Çwû>þÛÿi‹6ž4Õ<=añëà>•ðŸÃöZƒ>x×âñ.ª|Gñ ??‡üM xÄ>Ôt/k‰w®Äš~¦šLq_ÝXû—üoþ ³ðKþ ƒáÍ;Çþ ~Õž.øuwacu©|Oø)ðe)øÛ¨xWâ„4øwÃÐxÃ:αg¨xÖßJñ”:®“£x‡TÓ­ï`¾û.³{cn·Òþp| ÿ‚ùþÇÿ¼oñßáuÏÂoÚÿá?ů€š÷Â꿾0ü ·ð¯ÅßüQø×uâH~ü(øcðÇMñ§ˆÛ¡E¯êÞo}á=/Ä_hµŠpÞº+ó×þ 9ÿð7ü;àÕ‡Çߊ߿i¿Œ¿ F¯ã~Î ø{ãAðÆMCQÑ´_êm4·ðÚéÞºÓü]sá¿ |Gø’ÚF™¯j~ _ h:ˆo4oê^)Ó/´¤ðb ½ãZû¢Šü­?ðTë;¿‡W_<7ûÿÁD¼Wû8Úéâ…øë¦|øK£Xj [ÕãñÆð+Æ¿ü)û^ë~ºÑÄZ½•æ“û8Þ]Þé—P^ÚØËáû‡öpý¤þþ×?¼û@þÎ?Ê¢¿1üQÿHøkðVûÂÍûd~Ï_´ÿì-àÏkš_†¼9ñƒöÐ~ kW^×fkmLñ§Å¯Ù«ãŸí àŸƒój÷(öÖRüjÕþZ´êkˆwÄ_êïÚOöŽÓ?fï„“|`o„¿~>iq]ØÁƒÿf†7ÿ>"ÞÙßX_jK­éþÑom'½Ð൱c>¡Ë©šïO··Žâ{ëxÜèª+ðÓöpÿƒ€?c¯ÚÓàˆ>3|ø]ûQxëPÑ>$|Oø}mðn|4Ò¾*êš_ÁÏü7ñ÷Ä_‹—Ókl~ü6ø+áÝ'⯄ôÛŸˆþ)|0°ÜIḭ›V›L¶Ô~ßÿ‚vÁE?g/ø)÷ìíí-û2Þx´ø6ë¿üOáÏèvZ¼ãÏØhšÆ§á_Yhúω|;%úh^&ðÞ½o{á¯ø‹D»Òõí>[}VIþÕol÷eW‰þП´_ÁÙ_Ꭽñ‡ãÏŽ´ÏxI¿Ñôcª_Å{}yªøƒÄZ„:O‡|3áÝJ¶¾ÖüGâMwR¸ŠÓKÐôM>ûQ¹c,â´µº¸€Û(¯ËïŠðS¸>xKRø¯ñËöý½>~Ïú£jÞ#øùsà€Ÿ<#áo B±Mâïü9ø+ûGüOý£|1á}&Í®u cW×~ØC¥éöWW‹ mhn¾ùøAñ‡áwÇÿ†^ øËðWÇžøð³â‹ˆ<ã¯ê–úLJõý.i%·im/-Øì¹³¼·ºÓu]:å Ô´}^ÊûHÕm,µ;»H@="Š+ʾ6üU‹à—ÂÿüP›áïÅ_Š©áhô§ÿ„à—‚nþ"üPñjÚî™ Ç…¼cqiq¬Ie&¨º¦ªEÔéºާ«\Ê–Ö0õZ+ò·þ ½ÿzýšÿà¨^,ý¥üðÀ´€üCû(j4/‹wÇ¿‡ºÃF×Ä?o>&iÖÞ°Ðìümâ[kžÔ~ø›Oñ–â}ÃSé7ÒéÖ¶«©LÚŠé¾3ÿÿ‚ð~ÌÿðLÞè¿´‡ìçûtI¡.¯máß|OðWìý¦ÏðÇž#¸Ò£×$ðÿ¾&øßâ|+¯jözS\Þ\Ú-ý³4zf®¶u&—z€~ÜQ_5~Õ¿´Î—û&ü)ŸâÖµð{ö„øÛ¦Zj£N½ðŸìÕð«RøÁãû Dеï^xŽ÷ÂúeîŸ5·†të?Ü[_jòܬQjš†¦Ç·z¥´mùõû"Ás¿d/Û‹àÍ÷ÅßÙßÀ¿´wŒ5i~0xçàÇ‚¾ GðçÃümø“­ü8ð_ÂßøÇÆðæñ XðLJ>hZoÆéš·ÄŸŠž3øsámÄz®…®_i—ºß…WijUñ'ü{ö„øåû)~Ä´Oí û6ü›ö‡øÙð·ÁVúÿ¾Ãk¬j ¯ÜÏâ=HÖu‹í+Ã²Ûø‡[Ò< á½KXñþ· h7VZÖ½£ø^ûGÒ¯ì/ï­ï ñŸÿÁVþ jßµ‡„bŽŸhoØÛö—ø•á»ï|$ð7í/ ü(Cø¿¦é«;ÞÛ|6ø£ð'ãÇ?„Þ"×-ã³ÔOÿÂsk® tùìΟöù¬m/=×öÞý¶¼ûü%¹øÕñáíñSÀúE¶·ªx²çöxøK{ñVëÀ^ðÞšu}wÆ^<[}SG²ð¯„4­9'¼¾×õKèlí­­/n&d·´¸–0&ÿ‚JþÖ_´‡í·û |$ý¢ÿj߀ðÎüi'‰!Õü—â_é:Ö“¤kwZ~‡ãßøSÆ·zŒ¼+áßØÂ·ÚFâ]SW¾{hÆ«e¬jº&§¥_Ü~’×ÈŸ°‡í¥ð§þ û*|.ý°~èÞ<ðÿÂÿ‹’xõ.| øG¡kš¾–’ê–Þ?î<]ž-n.´uÕ´A©}áE~züÿ‚–þÏ¿~?êß²/‹4o‰ÿ³/íy¤ø|xºÙŸö–ðæàψž+ð‡Ù¯.åñWÃx?Å¿>übÐí Ó5‰u¯„¿ðwü;¨é^(ðV±âûŸ ɬh¥ÓÙÚÜ «K`§þ •ÿý³àŸ³WÃߊÿ±oì¯mûLxËÅ_tŸxºm_Âþ>ñç†þønëO¼»ƒPÖ<ðÃUÐ|a{sâÍJ|3¡kc[°Ð4=b{hµTÔïµ]HÔ?V¾xÏÆ¿þ üø‡ñ'áíÿÂOˆ¾<øYðûÆ~>øSªÝ íSá—|Qá-#\ñOÃÝJôE¼¿ð^¹}á»Ë¡"âãM’aaö/çoü'þ ðWþ §¡GâÿÚösýµu劉t-oVø“ðŸàE§‹þøkTñ5ÄÖ:'‚ë^jêwºm´šºiØ=ÇèÿÁï‰ÚÆß„ >3xVÓWÓü/ñsáÏ‚>'xnÃÄ6öVšý–ãï éž*Ñí5Ë]7PÕ´ëm^ÛNÕ­áÔ­ì5MJÊÔž;]BòŽâ@F¢¿;î¿à¢žñKxÂÿöfý›¿iÛSÁ¿¼M¯x3Æ¿¿f™fÙ|¤x¯ÂÒy>$д›ß´wÁMwâî8kyà ÆÖ÷· äé3ê0|(ñχ5‡ÿ> xÖÎâöÒçÂßþx–ÞÏÄÔEÖ›©ZÛ]´7Z&¥s¦j–ÚV­}>•©Gjùïÿ¸ý¹?ࢿðNOÙ÷Çÿµÿìãð÷ö7ñ÷ìóð«Jð·Žì>2j?¥øÁˆ¾!xÿFøm¦jz‡üwáj~Ó¼Kâß %ÝœÞ/²Öîlï5[¨ÚÙtèÖçõö]ø¯ümý™¿g_ŒÞ*´Ò4ÿ|\øðâw‰,ð‡üU¬Zhvº–¡«j6ÚE¶£«\C¦Ûßêš•ì6I wZ…äë%ÄŸŽßðtwü £öæÿ»fÿÖÃýŸkõþ ÷ÿ&ûÿÙ¢~ÍŸú¦¼@]ÑErþ7ñ¿ƒ~x?Äß~!ø§Ãþð/‚ô=Kľ.ñ‡Šõ{Ã^ðök%ö«­kšÖ§=¶Ÿ¦iš}¤2ÜÝÞÞOBŒò8€:Š+òóáŸüCý¡<<~"þÊ¿±í»ûN|–öòßIøõào|ø_ðãŶ63Z]ø‹áîŸûR~Ñ_³ïÄï‰^Y­/£¶×>|:ñ5–¥5ŒÖz[ÞßKgkuõ'ì­ûc~϶ƒ ×t¯„7º‹] ?Bø­ñâ¿Ä„?³ïÃïÞ­†¥-¿|OñoNñ±‹NºwðòšÿŸø(ßÀïüqÓe¿‰¾ø¯û(~Óþ Ò/µÿ| ý§|7áßø‹â^¥WX¾øAãÏøÃâ7ÁŒ­¢ùˬéÿ ~*øËVÒìíî5+ÛtËy¯ïÚ+ó¯öóÿ‚’ü:ÿ‚zè>2ø«û>þ×ÿ|¤xBø»â/ìûð&ëâg€< ÚÞÞÙ]MãÏIâèÞ’ÐÙ‹ËѨ\¬6]Ýž©}=½Œ¯<^ðÓþ ÝðWãç„~jÿ³/ÀÿÚgö•ñïįƒ¿þ9êŸþøcá-¿~ ø⮓o¯x ŽÞ8ø•ñŸáçìóðËÅþ&Ðå¸Öô?jŸçñV»¢X\ëz•ªié·×ઔWä—ìÿÿ®ýˆ>:ÜþÐÕµo‰¿³ÿÆ_Ù{UÓôOŸ³·ÇïËáïŽÕu¯Ùx;úo‡<+à]Wâ&•ñGUñGŒõ=+ÁþÑ>ø‹Çæ¹â]oÃz^Ÿ¦Ï/‹<*u¨>8Áa~~ÊÖÞ ñ‡ímû)þÚ_³ÀŸxÇGðF‹ûIüNðÁ_á.™«ëó´i|}¥ü(ø÷ñ/ã/› ð“Ëßþø6d[iášÚ+ÅKi?](¯ø¿ñ£KøQðo]øÓ¦x'âWÆíIÓ4-_Jðìûá3ñOâì¼Gªé:f›7<7¦_ZÅâ8LZÄÕÍä:Œ6¾¶¿×&»[ 9e¯Ê?Øëþ ëû~Ü_þ2üø/ð·ö°³øãðg\ð׆µ‚¾>øEáÿ üKñN·¬ÝxÊÃÄÖúVÿ POéŸ õ/Üèÿ,i:ÁKü4Ó>/\xWàž‘á­câ'ÅÝsû{âþ•ð¯á·Áý<[¢iøßâïÅ/‡Öúˆ.O‡lm'Ö‚YIõÿü÷þ Oû/ÿÁIÿfIjÿÙç^ñ›ð×Gñˆ¼#㫉úUƒ|OðÓÅ~Ñ´oø‡@ñÄpk׆m&Ó<3â=ÄSêš'Š5ß#Wµ¹ZvK¨íÀ>ù¢¿.Т¾Ñnÿ |JñôÙ·àoÇŸÚ«Bømãká×þ$üƒà¶ð»Køá™ä³ñGƒôO||øÕðOJø‹©ø[R‰ôoÞ|->7м=¯ÅuáícW²×tíON²§ðÃþ ðÃâGíxa›ÿ…Ÿ~~Ñv_³Ï‰ÿiøkât-+Ã~ø{Έøc 1xÿÞ2ñW‚|u«ø‡[ñå…îsð£]øá;[ ÄV>'ñO‡‘n þÚ¿ ?a?‰_³ÿí¥àߊß¾2ƒ? *ðï¼ àíPñ‹|câíkNðï…ü3áý&ÚKÍS[×õÝ^âÓLÒ4­:Ò)nooïî µ¶‚7–iQšé¨¯Ì/ÁO´?Œ>o‰³_ìgûqþÒÿÙe¹Ó¾<|9øsðÀþñV‘’Æ|EðçôWÇß~,ønqoq.™®|+øWãM?]Š$mmPÝØ-×Òÿ²§íû<~ÙþñŠ>xÞMn÷À~"¹ðgŇÞ'ÐußüZøAã‹)n`½ð_Å…Þ0°Ñ¼kà/A=•êAm¯höÖÚ´V“ßhwš¦œ«xÀSQ_ŠŸ¿àº¿³ìåû`|"ý‹>/üý´¼ñ+ã¿Ç_|øQãO| Òü+ð{Ç¿ˆ>'é Ç|1ãïxÿñø“ᆑ¯ëZV­¬x“úf­¨Gá}GMÖ¬4-@jº]½ï¹ü@ÿ‚žøgÂÞñ/ÆŸ‡¿²'í¥ûD~ΞÒ/¼I¬~Ðÿ¼ðzçáýï…t¨¤ºÔ¼cà_ |LøëðËãgÅßAaέeã?ƒß |}áhmøWV×t››Û ÓŠ+ç?Ù?ö°ø ûn|ð/í%û6øêËâˆ6SÏ£ëAs§ê:v£§ÜÉc­øoÄš%ôpê^ñ7‡õ(gÓµQ‚)íçˆO\Ø\ÙÞ\ý@ÀüSø¥ðïàÃ|^øµã À >xoUñügâKűÑ|;áÝÖKÍGR¾œ†r±CXm­ãšòöåá³±·¹¼¸‚ >Uðßí¯âøGMø•áÿØ“öÒ½øY¬éxIñÄÞø¦jz‡„n!K¨|OÁ][ö±ý¥f²cyká¾ Eñ"þ ‘éþ »»º²¶¹ûÅú¶± øOÅ9sã Eðî·«h~³¾µÓ.üS¬iÚmÍæ™áË]Jø->ç[½† 2 ëÀmm%º[‹€bÅ~!ÿÁ ?षWüSÂ?´þ¹ûlþÇ û*\ü!ø§£xCáµí§„þ#ø"ËÆ6º”>%“Å> ¿Ð¾'ê:ž»{ã„ÒiƒÅ¾)ÓäÒ´rãÆ–¶^ðýæ¨ÛI÷wÂÿø(GÂoޱgü7WÁ_‡´ÅŸ…·ÚçÄ Âþð›Íkã§_áßÇo|Õo¼5ð±uHuCiâ_ j~(³·ÖîôMcKð&5Ÿi^Ô¬õ}Ló_ø'üöxÿ‚ž^~ÐÚwÀŸ|{ð¥û2x¿Ã>ø¥|zð‰ðë[¶ñ_ˆâñ1“E´ðý—Œ¼O¯Yê>½ð–±¤ø¢ÃÄúo†ïôÍV$µŠÖð ä€ôêŠürý¦¿àµŸdŸ~üdýšn÷â¿Ç_ ~Ï?>*ÿÃ>YéŸx+⇚kiaª^‹4iÀ?T(¯Ì„?ðW/ØßöøðÏãWìÓ¯øçö‡ºøÁ7Š4ÿüøWà›ÍCãþµàGÒbñþ›âx†ïÚwÃûÜkþ¶ñGŽ~"øÂ ¬eñ/„Œ>7º‹Æ~—\­àø*ßÁM[ö°ðìAñÓáí û~Òÿ¼7}⯄žý¥ô…èôÝ5g{Ûo†ß~üaøçð›ÄZå¼vzƒIáßøNmuÁ.Ÿ=™Óþß5¥àê ùSÿÿ‚¹|ÿ‚eXOâOŸÿloü<²Ó4kÝSâïÁÏiã„Z.£â;Û½7@ðÆ·ñ[ñw„¼3¤ø“VÔmRÂÞÊúúh¯u ÒòúÚãWÓ£¸úßÁßµ_„~ ~Çÿÿlÿü?øÁâ¯|Røðãö€ð‡Ã ø*ümÔ<+ñGÂ|;áè< ágX³ÔŸ¯æËþ Sÿ3ÿ‚™ÿÁ/§øwñcÀ¿ b~Ëÿh/‡ÿ³çƒuÜürÖ¾5è~#ñ‡µ¯µÿŒ<7¥ë~ðkØ^i~ ñ¼6h#¾m6æÏE“PŠìj2ÛÛý‘ûÁk?f¿Û‡öÄøŸû xàÇíkð‡ãïÁÏ…ïÅ߈šíð‡BøQ‡4}Å¿¼#?‡¯´»ˆÇ ñEü¿<-¯i\xF PðÔ³ê‘ká›O¶¿üËÿƒ¾?äÂÿc?ûJìïÿªkö— ê抯yyi§Ú]_ßÝ[XØXÛOy{{yé_³¬Ö†‘w-–¥?‚4ÏŽ´Áo‰Ÿl ¸¶¼—ÿ ¾øÂË\†Þ;¿Üjöš¦‰>¨ú]^+ûHüyðOìµû>|ný¤þ$C­]ø à/¯|]ñu‡† Ó.¼Mªè_ü3©xŸPѼ1g­jÚ{âmf 5´¯Øêšæa{­^XÚ]êº|=Ü^Qû~Ýÿ³7íÙá/x›öyñÜÚÆ­ðßÄ“x'â÷Ãè:Ç€þ1|ñŬ÷öw^ø­ðÃÅVšoŠü«¥ö“¬ÙZO}`Ú.·q¢ëðêÚ´Zeì°ÿ4?ðvŸíñûF|'ýмWû3øöfø£áƒßþ xGáÄoÚÓÅš§€,|®C5•ïÅ ?†_ ´MÆúßµMGÆV>Öí|[âx[ÂZ6™áÍ]ðý•¾·yâ8/´€ì~¿¿à¹_ðP?Û7þ Ùû5|=ø¯ûþÊöß´ÇŒ¼UñgIðW‹¦Õü/ãïxoáφî´û˸5 cÁ¿ 5]Æ·>,Ô ‡Ã:¶5» CÖ'¶‹UMNûUÑtC넟¶ßÄÿ‰ÿ|1à=sþ ·û~üÒ|Ewumyñ?âÞ™ûÁðëÂQÛé×—éyây~~Ø?|h–—rÚG¥ÚÁzõÁÔo¬Ö{x,Íí·‘ÁEÿà®ÿ¿à˜ö#ø÷û?þÙ^/øe¤iZŽ¥ñkàÏÀ„ñ‡Â-#QׯntÍº×Ľ{ÅÞð–âgR‚-:ËOÔõ;Ke½Ô4«k»ëiu;5”ôàgŒükñàŸÁïˆ~ßü$ø‹ãÏ…Ÿ¼gãï…:­Ð¾Õ>x×ÅÒ5Ïü=Ô¯DP Ëÿë—×þ¼ºB..4Ù&FbúyÏÁï‰ÚÆß„ >3xVÓWÓü/ñsáÏ‚>'xnÃÄ6öVšý–ãï éž*Ñí5Ë]7PÕ´ëm^ÛNÕ­áÔ­ì5MJÊÔž;]BòŽâOе?ø)—Â/|Sñ÷Á_Ù‡áOÇŸÛâ'Â]]ü7ñrÙoBøkuðÿᇊቧ»ðWŒ>;üsø«ð7ö~¶ñö ;jßôÏŠš§´y‘¬uMÏQÛf@?F评~ÿÁCþ|jøËªþÌÚö“ñ7övý©´ø­¿fïÚGÂV¿¾%xƒÂq‹‘sâφúŽ“®x³áŸÆ_ éòXßÅ«k¿þ!xÿMÑÚÆæ]RæÎØE<¾+ÿÿ‚ºüÿ‚dÙÍâ¿¿lü=´Ò´CSø»ðoàGü&?ô]CÄ×^…á}sâVµâÏ xWGñ6­©A…¦Ÿ¨jð Ëý*Úâò µ;$˜õbŠüâÑ?à¥>ø—¢øn÷öoýŸ¿iŸÚ§Ä:§Ãÿ‡_ü]à߃øC¦Oð’Óâ€<5ñ;¾ø›ñã_ÆŸƒßô߉¯à¿hšæ¥ð×ß|Qã=3N¿Óu+t­ÃWúÖ÷ìQÿ'ýœ¿n­wã?Ãÿ†ñ|DøqñÇötñ4~øëû;|rð”>øÑðËS¦ŠÒçYðý¦±â-WÐon­o,ìüKáø“@ž{`SQò/´¹¯À>ÿ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(®â‡ÄO ü øiñâÏ&»¶ðwÂÿx·â'‹.,-$¿¾ƒÃ> Ð5ë³YXBD··qizeÓÛÚDD—3*B„3Šîkå¿ÛÃúÿ‹bŸÛ¾Ðõx£Äß²ßíáÿ øoÃúmøƒ_Ö¾x·MÑô=GÓ`¹Ôum_VÔnmì4Ý6ÂÞâöþöâ%žXã`Ÿ?j¯ø%×ükþ S§h¿ioÙ‹áÏÅÝ[]ð¾>ƒñJ×þ|KŸÃ7¶0ê-ñáæ±á/^i––×1Ϧi:¦µy¦Y‰¦Ž;Šææ)¿–ø)Çüÿà?Ø£àçŒ?oßø%Æ? ~8~Êše÷Ç&ø®xÒ/Gwá_‡vrx‹Ä·ß ü[a¢é6Ðüc è–Ž¿‘â OÆúw"°“ÂÐZisê1É?ëüwöžÿ‚~Åß²GÀO‚¿ðR/Øö€ø”<ð»ÂZ/þ:þÉpxSöñM¯„t½K‹ÃÞý þ è~$Óþ(x{âotV²ðÖ¯âè~9Ò|Yw`ÏpWW°ÖµÍ[Ø?l¯Ú»ö“ý»¿gÿìû~Õžñ÷íàíá‹hÏÛàÄoÙ#àgÀ/‡~;Ó_Þ>ñ¶ ŸþÉ ..ïüð;À:o„-5­Bíµk&kcÅÞ2Ôí!–k{=OÆž/Õ5ßjVV’5••ö³qke¶ÖT=±WŸðI_ø+ü›ÅßgïÚâ¯ìÝÿø…¥þÒ~7þÎßþ&þÐö6>5‡ÇßüsyðÇzÁÿ xŸ[øk«Ë©|uñ‹câézÒ éÚž¥ã+-+S}M?©¿ ø³Â¾4Ó®ux›Ãþ,Ò,üAâÏ ÞjžÖtí{NµñW€¼U¬øÇ^¹¾Òîn­ ñ‚ümáÏø;Åš4²®£áÏhZχµ‹k=_K¾³ƒùÿƒw>øbëþ ­ÿ|m¼·[¯蟷ÏÅo…~»’?ŸBðÇŠhïÚž4·³”»a|Wªø?À2êQ¬Qäø3Jgy°‹ïGÀ-K^ýŠ¿bˆ|eñËá¿Å}KÅþ$ø·ñóãÏ~| øeãÚ3â„|Wû`~Ô¿?hOÀº_ƒ¾ è~5ñŠaøm©üd“ÂúÞ·áË=kFµ³ðýæ²úÍæ“ÕæþuàŠÿ> ~˶üÿâÇØ;þ wðÿÁ¿¶ÿí³âuû¿ø'‡íO¬Ú^x/ÄŸ~5kvVÞ.O ü:Ö.|!­[é^?ðýî š¬ £ZDoƒëM%›£~ÁÿÁi|C£ÿÁ=ÿàÿ·×ÄÙáÿƒ>xPðÍ”O?Á¯øoáô±ø·ö€øàƒž1øšÑxOKÒãoÁ¢øÞïZ›ÆrFÞ ‚óK´ÕWQ[» iâø÷þŸ·Âÿø$—ìo£üýÿbMoáÖ½àm{ÇÞ-ñ¿íÙñ¯á‡(Öu¯ø×Ážÿ‚o|WÒt}râöá´øm ø“ã4³Ñ4ÝOƒXûµ•ŸôûOþοkÙçã'ìÏñnÊæûáׯ߇þ"ø}â…±• Ôìm5Û) ¶Öôk‰#š+]{úˆ³×´¹až+McM±¸’ ’&‰ÿÿà—_µWüçá4ÿðO/Û;àGÇŒ_¾x¯Æ7Ÿ²§í›û+|ø›ûLxcÅÿ ¼gâsÆGÁŸ~|ðçÄoŽß ügáïëzœ–M{à¯x\iú°ð݈SDðŽ®øœÑ4ø'×íõãø-Àoø*7¼9û"~Ï?<1û9øÏövý¡þ|ý¥¾4|qñ¯ÆëDø‹}à]YäñGìqû:xy¤Ò‡_iÏkÞÕ¼+á­Ïá_ˆ€ñÏÃï‚þ‡Ä·þ5Öµ‰Z/þ ø«âއà{-–^ðι«x«òëþ ÷ûEþÔ¿²_‹o/‡ÿµÏìoûWi¿³Ž½ÿ*ý»þ þÊþüøƒñêmWáÏÄoÚ;Ç5»±ñ/Áƒ:W¿hÃ:ïŠ'xËà§Žþ Å£^ê¾ðf·¯ë^ñGÂjèþ(ðw„5½C¾ñ±¡éšÎ›¨ø–çÃÿ|Hðgü×þÿûVþÙ¿?bïÙ‹ÁßðQ؃öÌý¤üwû]j~´×%Ó¾7|'ø³ñOìøÛE´³±Ô-¼U-ƒ[h6Z”t|QðáðLJ¼"Éá?K¬é¯è‚|(ñ_í×ÿhýnŸ |ø¯ðCàoì#ðö•ðïü-ŽŸ õÿ‚?i_~дð†|¡üøƒ§øã.“ðÃáNã?'ˆ¾(xKÁo'‹¼Y6“¡øráÿ´õ8üKþ ßñ÷öÁý‘~#ÿÁBüûXþƵWü2¯Šÿà¥ß·įÙgã§Ã„~,øÕª§‚¾!|ñ¯‹5[ sà7Âû_þÐßüE«jW?>üHðß¿xgƱø³ÄCu”Zþ´ÊþÉÿðYÿÙãöëý³¿fÙßöÝýŽ¿hø'oíËð{Æþ'ø­û7xã½¶§k øÃÆ*ø/ñkৈ¼5¤x³[ð_ÃíPþÛøyñ+Å÷:.—¯xúŠu½;CŸEÖïõý3IѵDøáÿ-þÌþ5|_ø¯þÃðTk¿¾(øÿáNµâ¿‡ß³/ÃýÀ^'Õ¾ø³Vð†£âk·¿4{ÍkÂÕæ6¥á­ZïIÒîuæÊò}:ÆYžÚ.ïö£øu{ÿSý§¿àú‡Ã_ÙëãÃ_†¿±íoàïÛ Çµgíð?Æß³†·{§|5Ó5 övøEð÷ão‡¼ñëÄ?ð¶¼tþÔþ%ßê|+àÿ,îŸ_×uËI“÷ê€?¿fïÛÓàïüötý¹?gχŸÿlÏÙnÎãà­ÿÁ¿ø«ö’øKំ:´¶¿´Ç~,x&ÓÄ Ãÿ½ð‹Àúl^ðA¼Óü៉º¼“xoÃúM¦Ÿcg⟄_¼I}¤XiÖúØ›QžOê?ÓüÏÂ+øƒÿÞÿ‚‚x Àž×¼gãþÄ_µw„<àÿ i7úÿ‰üWâ¿üñîáß xsBÒàºÔõ­{]Õïlô½#IÓ­®/õBêÞÎÒ ®&Ž6ø¯ö!ý½¾;|9ý—þøþ 7û þÙŸ i? ü.ðN‡âíká¿ìÉñ³ö»ðGÄ»Í;@±³´ñ·Šÿd|tÿ„CÄÞ"³‚KÆþø•kàÝKž.›YÒs{a†£xÿšÿ‚Š~ÅßðR/Š¿´§Ç/„^ ø‘ð?ö‡Áþ~Ô³ïÆ(´?øgÿ|Dý ¾ ü øwâ/Ù³ö…ð7Á¯ ë?~*ü?ð¿ŠtßšÅáw…lo¼oãÝ*ÊËö‡ñ ö§aà­?Ä:Õ´Þ²¶þÄ?Úöïpý,Ûx³Â·ž*Ö| gâoÝxÛÞðÏ‹%è~øá 'Åv—W–~ø·ðÛÆ¿~"éqÚê7šcÅâ‡t_øÓÂ×rËe%Í­¦½¢Ø\]iÓYê0FöW¶ÓIüáþŸ²ÿÇ?ø'—ü÷þ £ñßö”øAñ7â¿ÃOÛßÅú?ÄÙÇö©øIðûÅŸ-¼ákOx÷Äz§ìýãï |5Ñ꿬;¾›@›ðvįÛ[ýƒf/ŠŸÿeŸ…Ÿ³Ið/í¿ðúóáÏŽt_Ú‚_‹Ÿ(x—žÓü[â/…ŒÚƧáøVz®¨ù›ÿƒÿÉ…þÙŸö”?Ú#ÿT×ìÑ^#ÿ ×ïáWˆ4ÅÓ¼Q­éqjºÎ§á÷šÖ«®Ag†ÿÁo>*|Oý¨¿à¡¿ðF¯ŠŸaOø)gþÁ?¿k]Oâ§íâ½?þ ùûQÙi‹á¨þ8~Ì^#™<گÛ üwvšÁêPÜéÿaê6÷Þ:V³~úÊiàÓüšÎÒoø%_ü¢Úk[imáý?ké¡‚X"’¦°ýŸ> ÝXËN¥K;›x.mT5¼ðC4%$~ÿƒ^ï.ï¿à…Ÿ°¼×·W7“%·íf“]O-Ä©i§þ×ì,-VIYÝm¬l-­¬¬àEmio´*Å/§ÁL?jˈÿðK?ÚÃáßìÙûtxëÅß¶ì·ûY|øQðÛÃ?±í/ñKGñ®¹à|+Òán|:?añgÁ­U×õ{mOCÖ¾$i~´ñ7…•üAás­YÉköŸ“àÚ¯‰¾-øMÿôý˜¿aŸ²×í·ð'ã¯ÂÈ~>Ýø’ïã_ìyñûá—‰l¼Gñ×âgÅ}ãOøÁâ¯éÿ„×þñÞ—ek¤jz景Ýë¶:­…¦“q 6w—ÀÒÍ2¿ðvŸí)ñ'övÿ‚Gx‹Iøi¨êz%×í!ñÇáÿìããsGšKkí?á߉¼+ñ⋬þ×$·°ñe—Ã8ü ­(d[íÅ:Ž—)1_Hý5Wççüþ ùðûþ qû|Tý’¼}¬IáI¼]—âxþÞÀj—>&xRðj~ñdZa¹³”s‹Ä:X»´—T𶵮鶷Ú}åݾ¡jÓÁ5>ø3àüëö/øIà 6ÛLðׄ¿f¯„ [@¶ßÚZÞ·à­#Äž-ñ%ä*ò(Õ|[âÍc[ñF´êåfÕõ‹é—@ û3Á,ÿdÙ'öµý©ÿm_ƒžñŽñ»ö¿Ôõ-_â½Ö·ãMKZð½µçˆmF’ëL¹øƒþ ÙûPþÓ?±¿ìïð×ö4ÿ‚Žþ˴ΙñCörð¦‡ð‡Á_´ìÝû>|fý¯þ|}ømà:ÏÃß¼Qc­~Í?þ$x»À+O ÙéúG‰ô¿ŠÞð›Ü]éð’Ýj°ßk—ú‰úOð?Å´/ÆoŒÞ#ø½â¯ xÇà_ìá¢x¼ ð›áì´‰_üY®ëºN»âŸŽŸ<=g&«©ü6Óü7ñ埿f¿j÷¿õ¿…Þð§Ã+èþ xKÀ—¾,ø“ñ"÷U—G#¶Ñ¬< iªÙh÷-õ´WvW1ÇOÙoö…ñ÷Ãø8þ /ûyøËöÿ‚£èÿ³í/ð#áÃ/…þ8ðNoÚ³PÔ®|Að×À¿³¿…õoÁÚ_ËßéV¹ð¿ÄÓx~âMk¦³m6MrËBžêK{pì3¾ü>ñO¼sà/…Ÿ|ãoŠÚ–·ñGÆ>ðG†|5⟉:Î Öú~¯ãïèÚe–­ãN ›ˆ,¯üEw¨ÝZÃ<ÑÁ,i+«*?ðXkÿ‚cÿÁcÿàžŸðXÅ&ðgã¶«ìSûoßZÚÉo¤G¤kv)¦øKÆþ)½…JÞÜÛø)»ooq,ÿ†uðÍ´ãÏ‘bþ·ô^hz6¿kiªØ[kšV«ÛØëÚN£ k–PjVpÞÅi¬èZ½½ž­¢ê¶ñΰê:N©ik¨é·‰5í¼0Ëþ|ÿÁZ?b /þ ÿûý¤eÉll.|aâß^øƒá íû#Ñ~4x#þ*Ÿ†7ÿnFI´ûK¿i¶z¹ubþÖµ»9¡º¶ºžÖpþ×vðþÐÿe?ØâÙã¿ð}ω ý±ÿh›eUº°»øEû6ø£ÃZ§ÂOêÀ·ÙŒÿiOá–±x·6~*ð/ŠÚ<Öwbõ¡þs?àèO‹?¼iûtÿÁ¿am/IÓ!ø·KðŸÄ ½ÂúEŽ©â«MWZ´ðŽnø‹RX.&Ñì¼G©xKšƋ®ˆn!ÑüQá­#íѦ‹¨k3 ÙIñþ •$qþÆŸðOèãUþ UûDª"( ¨Š¿ðIЪª P¾1ÿ‚(Á9ÿißø'ƒþÝZoÇ gà†ðÓöý©¼AûCü ø5ð/â7ÄO‰~ø'¥xÎã]oø>óÄ>ø=ðP^\Ùiø öڶ‹àû(µÛ ÿi^Xé%¾›ºüÿ‚–ø¾ïáþ‹¥þÔ¿°ÏíÇðCö›°Ó-lñçÀ;j–ò\èzŸÄO‰þº¶±ºµXHYMÜßZ~ÍKûAx’çâwÅ¿vW¿SâV½¢…³ÕΧ kw¿þx_Ik2?랻ռ=«|bøƒ­ßkž0ø„¾×µÏø^ÆçÁÿô-gÄÏàCÆþ,úš¾Dÿ‚‚É…þÛŸöhŸ´Ÿþ©¯W×uù“ÿ_øöŸ ¿d?ÿ 4¿ŸµWÇoþÐ?³ßí ðóáï‡f?Ù£âïí,^'Ôþ?…´ëojŸ ¼3­h_­µ-GÆÚtšEçŽu] rÓMñ$º#j2øR‚ÿà×ùAGì3ÿw3ÿ­‡ûAWæ·ü·ñWWýµ¿à¬Ÿð\¿ÛâÌrj|ã„ÿ~¾¤žlß> ê><øý¥Xø FYä¹:Mµ¾ð;áìz´ZtAªk6:–¯u—ºÌõÇüsñ“Å?¿`/Ù'öøãû&þÞ>;ø"ïö€·ÖõO‹Ÿ±Oíà/ƒpC¯ü^øÍñËI¿¹øÕ¯x×áÞ‡i}áOXhöIâs@¾Ô|jÑø[M²¼½Ô4fÔõ´/؃ãGüoþ kûI~Ý_³Á¿þÒ±ííhÚ¿íCðSá:MÿÇ_€Ÿ ñEߊ->*|?ð.­­hÃâçÃW\ñGŽnõ/øJgñdžÿá7ÕF‹¡_éÓ­5`Ùoø(_Ão|`ý„?l†¾=ÒãÖ<)âßÙ›ã^ŸªY¸O1?‡šýØË$r­®«£j–¶ZÆ|#y4ýVÆÎö!æÛ¥~/Á¦_´ïÄoÚKþ á'âV©¨ë×ÿ³GƯþÍ×5iãP¾ø}á/ |8ñÿ‚¬êId{‹/èŸ`ð&Š Ä,ô/ izbÆÉb³KôïíÉûUü|ý­ÿg‰¿²¿üÛö_ý§uOŒ_´O‚5ÿ„Z‡ÆÚCötøÝûüýž|/ãí.ëÃ^8ñ÷ŠõÿÚWÀ ¼]ã{þÔõ ü'¢ü!ðgÄWÔøÀ^,Ñ´õyY×ì×:§Æ=í²Å\yv†å®6ëmýd|2øIð§à§…×Á¾ü=øIàµÔõ=m|!ðËÁ~ð…×YÖîš÷YÕ×@𮛥i#SÕï]îõ;ñh.¯î™®.å–V.‘?ø6«ãÄOØ»àÇÙßö›ý‡¿à¤ üuñ³öðñÏÆjzçìûO]ø<ñ[Á<¢OâŸèÿõÁ­¢k Õî<[âiôÏhz<–º³k—6‹~öÙuøáÿÕøÿùøíûkVŸðRß‹~3ø)û9ü3ø‘áŠöÞ4øwâ›Oxê_ˆZ™â}@ðÏ…´ËÏ xâ?ê¾*Ñ|Qâ}?Càýzúî+¹µ­6=/QЭ|A¤~Ç×óƒÿþÂ_´íY¯ÿÁ7~<üøusûD|6ýˆj­7ã?íû(é:ž‡e⟟[Å_ µBéÞ+¾Ò|1âm{ÃÞð'¼1†o5K}SU³ø‘y‹m¨Ê·62€}Eðö“ý£þ;|ð„ÿf/ø&>µ¦~Ëòü2Ò>ü8Õ¿o¿Ú3Iý.~!ü'Óü7¦ø[I¿¾ø{à…ÿµŸÅ›_ ø›Â #é×_|%¢xƒÄVMkw¨è¶–º¹½‡ò×þ »×õ­gþ KñsNÕ5+»ë ~Ý´ ÚÜJd‡FÑn~ ~Î>)ŸM°CÄ6’ø‹Äºö°ñ ƒ}ªÞÍÖS_ш?j+ÿxPà7ÂŽz×Åßè7¶ßô‰ÿ³ÏÇ/ƒ^ѼUy§Ü¦—©|IñoÅx7Þð§‡u÷Š~É©êž!¾Òínm¼ x³ZºÒ´­Cùÿ‚%þÌ?¶Ÿì7ð7ã_üïÄŸ?iŸ‡ß´Ïø*§Á¯Ú&ÃöœÐ|⯠þÍ^;ý”>üFý–uÿŠ–•ñÖÆúßշů…ß³ŸŒþê? -µ½OźöŸñ›Hð¿‰ü+.‚¿SÃàÚ Q@Èü‰ÿ)Mÿƒœ?ìÿôïýh¯Ûúø=[þQeðþÏÿágþ³¯íU^¯ûüø¿ÿ“ÿ‚¦ÿÁZ¾"|gø ûA|Dý˜¿à¢¿ü/ûBü#øûû9|øûMXøk^Æ¿¼uâO‡þüð¯ÄŒ>ÔáÕ>9êzmŽ­'Ãû¯M…ã¹]XÛjMÊ?ðs¿‚¿moø)ìð3Jý“ÿdŸÚoÄ¿ <ûRxvsáSàwÄ-#ãÅêÿ >/CeñNßàÍÞ“Ä¿…_þé¶×žÔ|Mñ»Â_µxËâΗ¦ÙxNÓô‹mOÄàÚ¥?ðdïß XÁ?iÿ‹–újx§öÆ×þêÚ»•wo xà§Á?x{M·7Û,zÇÄŸÝ^˜äÛzd°ó“60þ‡´?ø(µ‹þÍíãߨÃþ ðêâóÆéðñ¾Ëû%üBø•û@ xx(ø¾mn?†¿"ø‹ªÛü770j´ø•âøG¼//ŠìáÓ®îtøõ ãSþwÿàÔŸüWýŒ?fþÇ?´ÿìiû}üø¥ñGö¿ñ?Ä¿ x‡Æß±í£ü$>ñwƒ~ ³ºñ'Å;¯‡ÑøSÁÙºÏÃ-qu{Ÿ^h\÷ú$–šëÝ^E§€w¿ðq{¾ŸÿZÿƒeµ+kFëöðÕt««û66×·:dß´ì!i6›=Ô%'šÂ[][T¶’ÎIÝíõ-BŒÇyp²HðPOù0¿ÛsþÍö“ÿÕ5ãJþVÿà¹ß>)~ÑÿðQoø#¿ÄŸŸ°Ïü‡â_?àžµþ¿ñ'ö…ñW‡`Úm´9¼;§|sý˜õéŸá–¥}ðöÊÏâGŸ£üñ~£¦jžšO kwž¸ÒuëØµIÏ÷Ÿöðý±tOÁ;~*êž ý›¿nÏëß´÷À/Ú_á§ÃO†~ý‡¿iWâÞâÃá/|?Ó­~(ü6?­üSðvÃÄåå½Ï…õ‰öÒ¼M Hž Ðîïô©"¹pžà×ùAGì3ÿw3ÿ­‡ûAWÊ:‰àÿ±wü3ö¶ñOì+ð·ö³ý»¿à§¿´žƒ¨Û|{ø#ðƒÅ¾¾øðL׌¶þ“[µñ$÷š~¾-ô‰¬t³}7ÊðAoÙCöƒÿ‚Eütý¾>~Úß¾1x¯Äÿ>$xoÇŸ ¿lτ߼{û@x ãw†ôñÍΣgâ]wᆼoã/†ºõÞ¡¯]ø¾-ân‡á›{ÍWWÖlÊê¿ð§‰@>sÿ‚Íxïö¤Ô?à¬ßðn7>7|ø]û6kÚ·í«màÿKðëö‰Ôþ:xãľÕþ6þÇ:_|7ñ'øð§Ã²Ñí¼g«i>ñ—ÅÅfšï÷ _É'ü;àígûB~Ó_ðKÛÏàçìÛñ‹â‡ìýÿèý®þøçÅ_<ðóćí)ãïkþüBø¥ñÂî-¬üy7„-ð—í‹û!ëú¦©§ørëâ^‡£ßjúíOáýÂÚv¯â;? x[Äz晪üUÕ<; Ý\hz¯ˆ5 /!?mÃÒ÷ìðÏá'ƒ?gÏüDø[ñ"ËãÕ÷í%ö/Úâ_í36ñ_~Ѿ>ø…¡é§‚ß1èš è¶š7†üà[rºwÃ?‡º…þi°ÅkáµÝùëÿ¸¾×ÿoß ~ÕŸ´‡íÕû"|løAñ·ã6§âÿÙ÷WøûT|ñ×ôþÇw«2øCà—Ãøá/ [øãÁÞ8²{¿ütñ.‘§Euã?‰z °ñ40øÁŸ t òþ eûK~ÒŸðJÿÚ{ö›ý…îbø*OÅÏø%U‡Äÿ뿲Æ?aOÚgÅ/ø1&«tºÏ‰<$úM§€nu¯ü$ÕuûÝjßI×tK{‹ûÝwNm<7¿ÄŸ.Œú¿ÿGÊ ?noû¶oýl?Ùö¿L?amoFð×üËö9ñˆõ}3@ðöûþÏzÞ»®ëwöºV¢hÚWÀÿßjš¾¯ª_KŽ›¦i¶0Oyy<6¶v°Ëqq,pÆî¿‰ðpïǯþÒßðL¿²WÀ/Ùþ ñgã'íáÙ‹Æþ Óüû þÓºŸ‡t-þÂ÷ö^?ñOü+ˆ´ox¿@ð¯„5 Å_µ†ñï„ügqkáŸøkLº‡U“Mï¼Uðçãü›þãØ«à—€¿h/Ù£öÒdÿÙÏàÕþ…ûTü øµû5Ï©xËáÆðÏXñ¯€ô«ïˆþÑ­¼Ká¿i¾ñÃ[ÿxbmoÂÖCÄѶ«¨Chó`åø#·ÄÙöy׿iƒðBÿÙ[ö°ýµ>ø«ãöïÆoÚoãÅo|&ý—¼)¯hÂãMÑþ|:ø¡â¯ Gã/Zx[HÕ¤¾²³Ñ¾øËÆú®‡¬éö½âÏiך­šÁ1u¯‹PÁ×ÿðU]â‚|ð‹Å(ýˆ¼ãoü-øOñ/[ø¹ðêËÅ‘èÿ°mÖ¬X|Añ¯‚ºÇ‰õ[½7ƺֵ¬\\ü5ðäZgˆ|YâMÊOXÙÚø—Wý#ÿ‚ Üx‡ö8ÿ‚qü#ýÿhÙ_öŽøñûàf§ñ;Oø‘ /ìññWÇñî³â/‰^9ñ~ã¿ |døgàïü,ñ¼> Ðï´ë ¦‹ÆÒ]hwvú$|<¾Ôõo†<ð¿öÀý?àáoÚþ +ñ{öCý¡>&ü#ý»?dMKá瀓örøuqñ‚…~8Ð5€úÃß…ÿu?ßj>ðˆµþÎZ¾$ñ¶·«Ù|'Ò|OñÖÚ/j>ð÷ˆüOdúÿGÊ ?noû¶oýl?Ùö¿PÿàŸòa±ýš'ìÙÿªkÁuüöÁhçøÿ/üø&}ÏÁÛwö±ý·µÏÙ›öÐ|gãß„ÿ³/íû@øÅÿþ|Bø-âo‹^(ñgí¡x?ÄžÕ‹­ë^øiûe~ÑšÜ_õF‰µ=á^±ð‡Kð÷†5"¥óN›[øºøCžðN‰aáŸxÃzƒü#áÍ*/#Lðÿ†<3¥Ú躉¦Á–òl4­*ÊÒÂÎ-ÍåÛÛÆ™;s_‚_ÿcïÙçþÿÏÿ‚˜|mýƒ|=ãøÇÄ^ñ—Å›kŸø·PñÐð÷Ž!Ðï|/ðâ-ßPû$Vþøuªxž}rÚÚïíÚö¡»_×õ¥‡OK?¥ÿfø(ÇÅë†~ð/íÛû~Ùk éVžñõ—ÂßÙ_ãGíðSâ‹4¨×¾|lýœü ñá6‹áŸËnšÜ_Äox _ ÜjrèwS^Xiiâ ß}ðŸÂ߉ߵ¯ÃïÚ§Lý°¼%©ø/àí;àé~ ø#ö\Õµ _x›À_dð¿Š<=â/øûÄ^—V±Ó~4|a»ñ¦«ªë:ƒâè¿ ü7á†Z>ªËã ;Å××`™ÿðjÇ‚tMþÁû?|H‚9.¼oñóâ'í!ñO⧉ïäkÍsÆ7µý þ$ü4Mw^Õ® š†¯¨¿…þxrÖ[ÝFââêF·vyIcŸÿƒ¸´ïøG?à› ÿh_ ßj>øÑû6~×ÿ¾!üø‹áû¯ìïx'Å âM6KÍ/Râ̇NÕŒ¿'ˆoà³Õ,¢Ñ æ¡ÿø ñóþ µª|ý’¼ð“ãWìÕÿüð'ÅãGí-ûEþÐþÈ^ø¥à°À–úoŽ5/‚?°—€®õÇ·òZ9®äо&x¹ÄØIÆ©~šŸœnbÜß§ðtµ¼ÿðB¿ÛvYíáš[9¿f{›9%Š9$µ¸oÚïà%›\[;©h&kK««V–"’{›ˆ ¦‘[ò'önøÏñ#áßü…ûxÿÁE¼YûÿÁOtÿÙOö„ý–ü7ðcá×âÿ‚t~Ö—ÚÔÞ,ðß„ÿc½6{­cÁV_ 'ñ^—¡êß*üaÐ./m žM;Ç|-¨|XðMÞŸ$ÒBöwóx—Âv˜—6ò¬ío¨\ÚùwPÝMesóOü/ûHüHý¦¿à³‡ˆ¾+jZ¯ˆ<]ð×QñÿÁñ^µs=æ£â |5ñMæ›à›Ë‹»–yîäѼs¡ø>[É¥ž{Éü5-ÕÌÏu4ØòÏø*/ÄOÚçþ ð?Xÿ‚Á>¿g_¾ðŸÇÛ½7Ã_´_íûW|ø¯û(|2ø]ðzÞóLÖ¿áÑO„žø%ÿiýƒþ|ð_ÃßÚ+âÿ€¾Ú[|=³·øû=üKý >)ø¿Æšõ·Šü{â߈>$ðÁ¯ x«UÐ,3ý»¾ |Ô¤¼.~øcàxÛCÑá’f“n&½ñÃÆ—·rG«]^Ms"Í-Ì…=þ˜ñ>™ûÿÁµ…_²Ç#þÇß>2~Í´·ìGÿøAãï_·ßŒ~*xZñWìûKEðÞÛÂ_<#ðWÀ ï~"YøïÃ>¶Ð5¯ê×~6Ö¼ay£ø[ÃZ A®\x‚]>-J]?ú(ÿ‚œ~ÀŸ¿à¦?±‡Å¿Ù#Çú¬ž>7²ÓõŸxîÞÈj7~&xZñ5x¾-<Ïju++MJ#§x‡IK»)uŸ jšîþ=üWöÀ*þÓÁC>~Æ_²—ÿ…±Wì eðãÂ?³¿ÁÝ#ÁÉsÿøùáÍFïD‡À: ÛjúÞ‹¦ÿÁ,µÛ;kžcë^$Ž-{^i5ëýFyµÝfyeÔî¼³öÿ‚xþÚà­Ÿ¶ÏüâÕ¯ìÉð“àí‘ð_ˆÿgÏ€¿~+|hÔã·€î>iúÄ_Wñ·ìÉû:èW—º‘ñSQ¾¹ƒL“W¶ñÄÈã·¾‹PÔõ5?àÿ´ÿí1ûþΟ?cø(Çì³ûMÚüNýšü%¢üð7íû5þÏÿlÿ´/Ã_i¶~øoâ?^ý<ñÆ>ñkx^ÇNÒ|kø³©|lñ_…¼oðàà=_À þ|C´Ñôÿ‰ŸüG®ø—Ãúοñ×â—‡´Ëým<e¤XxNß< u«§Œ¡ÑÿÁ?kÚSö]ÿ‚xþÌࢿ±wíðÆ? >ØxGáÇŒ|û1üký¥ì¼[ð£C¹½Ó¾é¾5ð?ì×áŒ_> |Bð·…,¬|3­x;âÇ|(Ÿ`Ò4]fÖú ­z_ èGþɼyñþ ÇûAÁSuO‚7ý›¾ëÿ±¿€¿c†Þø©¢Zx3â×ÇOOøž¿|iñëÇÿ 㹸׼m£Yè> ø[à=?ÇÂËÇ:·†´I/µÖ0ØXÌøçðnÿþ Ãÿе_ÙSá×ì+¥ÁPa|@ñxóág‰5?ãŽáx×Zñþ³áŸZøzÏÅž-¶×¦×4Oø-Ÿì3ðïYø]{㟀þø¢_?²÷‰~7|5øðÅ^ñ¶5î{àÿŠ?(jÿ±¿üÓû&Eð°\Øx{öùý“>xcöŽðå˜òôÿê—ˆ><øÂþ$»³…ííŸUðÏÁ_†š¬ZÅÌwZ„~›¯XA*Ûk7q?îoÂø)Ž4O†šV“û_~Äÿ¶ßÂÚgÃúE¶•ã_|&ý”~6~Ó? $|!ñ ìk} Íñ?Æ¿o´Û}F;-f(³oï×â¿Ù7þ íñ»öœÿ‚©ø«þ ?ûm|;»øyàÏ[üý†?eSеïˆ~§‡õ­çâŸÇ ß ë~!ð¦ãzÛÆž=½Ò>èÚ¶®Þ»ñ½ûkw–ú߆t©o>ÿƒ |ῊßðP¿ø7/áwŒ­d¿ðÄÛ3Ç>ñ]Œ3y¯<7ãß°‡µÛX®3A%Æ—¨ÝB“c8p \WöGý›§gd}‚Ëû'ì_Ù¿Ùeƒû;û;Èû/Ø>Ååý›ì_fÿGû/•äyºòü¿–¿‹ø/~+||ÿ‚Á!|}ð?öÿ‚‹|Xðgü‹öÊñghø/öý¤µ Þè:ÇÙZšãá/ˆ§ð ¦ƒñRÓQÒ¾øÇQÐ5ÿ êWñ…ׇ/´]Ùë qoý0x‡þ ðï@ø¤üzOÙçöô×´}sÅ׃ô߆þýƒÿjKVÑt˽LÝêßføii㯠x_UŸaÑ|qâ­+DðV¡©ÜÚY§ˆç ?Ÿÿø2Âòîçþ [ñÆ›«›ˆtÿÛßâ­„SÏ,±XÚ?ÀÙ~ýílã‘™-­žþúöõ „$MwyurTÍq+¿õé_Æ÷ücqñwöJýš|{ûþÒÿ²íÇð;â¿ÄÏÚ³â?Æ øâwìsûAx7àÙðuçÀ?…:b7ˆ>0kÞ±ð?ƒõ3¨ü"ñmcâÝSE¾«ªx[FÐfÕµv+²üøÿ‚«þÅúçü/þ õûLþǾñ·Ãÿübð†‡…|S~/?²,üSàxWâW†ôÿ6ž“_ÅáŸë~ °ðï‰î,­¯®íü?ªêSÛéÚŒ±¥Çóé¥Ál¿àµŸ°o…íü=ÿ+ÿ‚8üMø¹áχriž:ýª¿f=fïTðæ¡£h-¤¿|Ecáo|Lø{šì0&©©ÜÞxÓáfˆ—÷ÎEðÑdÐm¿jÿพý¢ü[ÿÓøÍ§þÈþñ'ÄÚWJø§ûøÛàÏ„|'¥ÜêúÅ÷¾þÚß³¿Ä;Q6¶ÓÙ›}#Ñøbø“X»¿Ó4¿øsHÕµícVÒ´6÷Qµì|9ÿ%“Oð…¥Æoسö÷ðí c§[Ûø—à‡‚¿d_¿¼=sâÈ‘`Ô¬< ûLü,ð‡ˆ¿e={Ã7ñÝÉáïø—ãW‚¢ºÒÒ÷Ä>¼»]5@:Ïø%ÇÆÙãÇìmàŸ‹°þ©©Þ|ø‡ãïŽmtoD–^(ðOÄ?‹ÿ|ñ“âß¼I¢$“Gá»ÿ|Iø…âkkÚâûJ±ðûè§ÃÚ®·áÉ´kPüPÿƒuÿäý?àã¿ûJÄý\¿µ}ÑÿÓø5âOø&ì[ûAüMøçðsâ7‡µÏÚGö×øíû]ßþ̳—ÃoþÒ^,ø ¢~Ð+ðî‡à/ƒ^ð‡À¯ø·Rñ$>ðg†¼5?Šï<¤^xkÃ×—ZáŽöm#KmVËø!ÄŸ‰?nÿø+¡ñ›ö)ÿ‚‡|'ð×íÿûxjß?gßøûöý£¼?àsàÿ|SøÛ¬ØOñ+ÅwmásXé~<ðõöµã+­3ÃÚ\]™õÍöSª€t¿ðzUåÞŸÿ½ýžoì.®loìà¡ o,¯lç–ÚîÎîÛözý©æ¶ºµ¹…’k{›y‘%‚x%ŠTY#euVŸ~ø#áOÂß|ð^…e¦ü:øuà?|5ð·‡ µ«XYø;ºŸ†t}íc‚+9-¢Ñìmí%…m£‚T ¾J£¯ãûþ¬ñWÅ_Ûkö[ðGì}û.þÆðP?Œ>þÙÄ/kþý†ÿi[ï…'Ã>øWñ¯À7÷þøœŸ…üsm¬kŸ´Y|9¨ø*ï_Ñu=.ÏU¿}RÖ8ôõÔ¿¤‹ø(_€-¿g«Ú-ÿgÛæM#Pñ«ø/…ÿ°§í3sûCA¯§†/|Po/þ Aðõüo§ø)£±“CO‰·š|? ÄóYhkâãu{kæ€8ðdçÃoXÁ?ÿjŒÚ\kãï~ØšçÃmc[`4žø{ðWà·Š<7¥ÀL~dí|Mñ]ÝÐIv]µÅ™’=ÖQ5w¿ðq{¾ŸÿZÿƒeµ+kFëöðÕt««û66×·:dß´ì!i6›=Ô%'šÂ[][T¶’ÎIÝíõ-BŒÇyp²qßðiî©ñgö=ý˜üuûþÓ±ïíÝðSâ¯ÅÚßÇ?|)âˆ_±wíᯄ?ð‰kŸ~xvÞãÄuO[x3Á—0j¿ üAk2x¿QÐí®'Ô<=k¦]jº¡¶¶à¿à·Ÿ>'þÔ_ðPßø#WÅO?°§ü³Çÿ?àŸßµ®§ñSöñ^Ÿÿüý¨ì´ÅðÔ?f/ÌžmWáÍ„þ;»Mà‹u(ntˆ°õ{ï+Y¿}Få4ðÖ¿ø:;þPQûsݳëaþϵ÷ÿüwþQeÿÓÿ³ýÿõ~ׂÁM~xþ Åÿ‹ý¡þ |Ñ|gàüyðƒ®|7ðÏÇOøËàoŒG‹>üZð¿ÄŸøkƾ ø“¡h-ðž+×>A£[ÍâNŠ-?Z±×&)¤N—‡Ê¿àœ¶·ðSöý•?fOŒ¿±ÏíåàÿÚcöyýžþ|ñ­?ö@øÛâ? ø¯ÄŸ|¢|7]SÂ?´–áQû$¦ƒâèü4šî“­x¿ãç„´{K{åƒTÔ,ŠÅ$àš?±¿ü®Iÿbÿ³øqÿ¨7üN½þøÿ“ ýŒÿí(³¿þ©¯Ú^¾(ý“¬ÿoŸÙ›þ9ý¹¿lïÚ'ö ý¯~%|=ý þ‚V^9øðk\ñ€¼#7‰-ÿfoxÊÇÆþ'¹ð†|}á/†žøMÂxçÂÚ¬¶7~%Ó&Öm´­>Ãíe‡Ò?ðt7‹þ&þÓ> þË¿³§ìyûz|pø‘ð7öãøGñÃÆú¿Ã/دöˆñOÂùü àï„ÿ´ÝJo|W°ðx Æ×óê´ X|/®jv‘^Zëvšös¥É€ÕÏÆ øÆ?þ)øGâµí¦›ð»Å_|oΈ:þ»ÿ½‡€uÏ êzgŒoo|L.¬O‡m-|;u¨Ïq®ý¶Ïû"ßPûU¿Ùüäþhÿà~þÎÿü_û+ÿÁe/Ú³öÔýŸôO2ñWŽÿkÿÚâO€¾ üÖþ$ê±øsž"³ðoÄíwšf¿ñt-Â^…´ß…ß®4Ë[ôíVîòú÷_ºÕn>ýý»¼?ñþ íÿœý®þ~Ë~øßðâ‡ÄÃÀþÑÿj‚Ÿ?eïêÚŸ…éöZ‚eÕ5}O:Ìñè:صçÿà>2›ö\ÿ‚uþβ÷ÆÙwö—ø ñŸöyð ü?øðö?ٻ⿌ô-ÆÚ^¡«Þëþ6ðoÅ…~ñŸÂéŸu™oüU«¥øîgŽûYxuϰHðÍrù ÿÃÔþ)éßðuÿügÿ|ð÷áˆüQûx;Ç_>|ø®|WøkmãÓaCNñŸãï|'ø!­øŸWÕ,üs¯x‹]»½øcá£aâoøŸKüAkm‰µBÿƒÕ¿å_ÿìÿþë:þÕU_À_ ÿl_Øóþý¡¿à¢¿?d?ÚâoÂoÛ·öHÖ>x?f߇W_%øWã-\ø¡ü5ø_ñ»Sðö£áïx›QðìåáÙ|UãmoW²øK¤ø³âÖÞ<Ô|9áïøžËèø,¯üÛö»ý¶?à†_³oìÅ£k7¿lßÙƒEý˜>%xµ5¿G¨k_~)ü*ø®ü"øº'ñçŒï\ë¾&ñ,¾=ñ‡-5Ÿk–·ž)×ôût½ÖóUo´€K¾&ñg…|§[k1ñ7‡ü'¤^xƒÂ~³Õ¡ðøÍaáÏj–WZF™®jzý¦»}¥X]é6ðÍyybÛþÚ´×ÄOØûþ ¤ƒãïÂmJÿCøá¿ø'÷ì™áø‹If‹Wð®­ñ‡Bø+ðe<]£Ü$‘=ž¯á(~ MâM*ý¾Ÿ¨iv׫͆OfÿƒqþøKáçü‹ö ‹ÂšL:søÓÀ>#ø‘â«°ª÷ÚÿŒ¼oãÿëî·ªÞmß]»Io¦ÚKròËg¢išN“‚ÏNµŽ=ÏÙ_Áß?à¡ÿðIÝö.øÝðKöø9§/ì™ðŸöpø¿áÚ àÅ_ÙëÆ7‹tÏ„þÒ.5ÏÿÂÍðÖ‡eã<â½ gJñ'…æñ†¡Ö´½5/åž)šÎožà™Ú§íÿ•ø¦ÿÁ?¿l¿ß~(ü3ø®xÂÓöpý±¿eßß¿iŸ|NøAâ?k~,Ð4?ˆŸ ¾øwâ?ÇO…Ÿ¼-}®ÜèiWÿõ%4õ²ñý–•.»ª|sÿ{k:¿ÀÙ§ö ý·¾ßÉáÚ#öoý¼¼§|.ñµ˜òîô½?Å_ ¾)øó]Òîä…¡º½Ñumoàç„"Õ´i.WOÕtÕÔ4ûø'·½•Õßðq¯Ž?áfÿÁºŸ´ßÄŸìù4ŸøX_ÿcOeMþ»Lÿ„³ö¡ýšõïìù~gýåŸÛþÌÿ;|ÑŸ™ºžöäý“¾2ÿÁy~:~Ìÿ üeýª~ ZXÃþøgð_^¼²ø›ðûÀÐxgTñ›­øó⟆<­´-Ö?°4Ôô+xu›þQñ·‰¾#Á9?hÏØ3àgì½ûc|køÓñSCýŸµÅðöAøññCáE–“á?ÚáÇõKMGâ§| ªü;Ò/ô¯ ü8ÖO Ç­K¯ZMw E.‘ ž§Ô`£¿ðF?‡Þøsÿ¢ÿ‚zéþ²kXü[û#|ø±âK™äûEþµãߌŸ|?ñOâˆu;ÖQ=õþ·ã/kZ„·7o5ÉŽh¡’yD*Çðëö,šKø.üMð‡ü™ûtÿÁB|UûÿÁM|4ñΡÿôýª>ß7‹´ ö9ÐRñ†m~\ëžð¾§wð/Æ“ØêÚœsZÙM¢\k¶7ÚïSNþܨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šòï4oß /|g_ Âdx¾|?ñއ‹÷¢MXèbÁ _¼ p6|دÂïø7ëö†ý‘à£ß³_į‘üÔüUûRCãXü!û^ü\øûàï x£Æÿüy«hV>"†÷Ã~'DÖ4í/àݾv4_‡ßtYtá^ƒ£Úør¼ÓÄÞ&þ®m­ï-î,ï-Ẵº†[k«[˜£žÞæÞth§·¸‚Ux¦†h™£–)£‘‘Ô© ùÏÂo‚¿þøOþ/_ ~|ð/ö®¥¯Âð›À~øsá?íÍfT›WÖáð~•£hÿÚº¬Ñ¤º–£ö?¶_J‰%ÔÒ²‚?‰ø*ÜVðA?ø,ì%û\~ÆV–ßþ~Üú®µàïÚ£öpðJ&ðŸÆñü?ñÇí+â6¿aà->Øè>Ö¯¼+ñsÚ߆.ôM*Ñ:éþ ÒÕ¼RºÝÍÏ‹ü§jü¯ü³Q½—þÊÿ‚7i2\ÈÚm—Á_ƒ¥™#É‚÷TøåûWÛj(1‘%ÔF™¤’ ÙÀ$€XÞ-ý…dOþÌ—?±Ö«û>ü.ƒöp“Â’øGMø_¦x?B°Ð<7ftÆÓ,õ Å‹6…âý%|½CHñ‹Gâ[ n5¸u?íHÅÑüdÿƒo¿lÏŠ¾~×°ßÇïkŸ>3Á3¿h¯~Ï ñÅ7RÝx¯Åÿáñ|/ðÖçÅ7vvZŽ¡â Qøgã ÜjZŒGQºÑ´¯¶¬Ïªý²yÿ¤Úþ"àÞmNþ/ø/_ü#£Gp˦_þÐßµ;Ë@±”žÿHý³>+Zé× å ªÖ¶úÞ©*H±¸»s";$F0±¿à™ÿôÏø+·üsþ !ûX|lÓí¾ |ÿ‚~ü@ÐfOØG៊l±à?j×´ÿŠ?tÿ_Û6‚ÿ|eÿ‹©é¾+¹‹PñV‡áÏ7‡Dú]އáýÞ¡ÿø{Pý“>|=ÿ‚·þÍVv_?jÿØÿã7ÂïøHüsáË4¹þ1ü ø‘â};áß‹þ |bŸOÓe>6ð³«ëž{+oË2xjd¼¸ðÍάê14ßœÿðd®£{«þΟ·¶­©ÜÉy©jŸ´'ÃÍGP¼˜ƒ5Õíïuk›»™H'žY%r˜àÅ~½ÁÑßò‚Û›þí›ÿ[ö} Ú_€Ÿ|3ûC| ø3ñ÷ÁbEð‡Æï…_~-øY&‘%ž/üFðž“âý‰#UF¹†ÃX·Šãj&&IÄ ¨õšü‡ÿ‚êwú¿üÃþ ëu¨Ü5ÕÄ_³Ï‡ôÈåu Øh𦳣ivàFˆ¥m4Ë ;Db Ž+ÊòJÏ#~¼PEPE~BÁkÿਯüwöEð×íá„1ülñßÄo޾øà_k¯áí üAÿ„‡þïé?µ¯…4Í?\ÿ„SÅZç‚(øßû6ÿÂ)ÿ ¿áý§íeá»]KÀðœX>©á_íýGÃVz%ÿöÅ„oqö&©ªy*»nþÏ!@?±*+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB£þ™ÿÿÒ¿ù¸Ÿù €?¨j+ùyÿ‡¦ÁÁô¯Çþn'ßþB¯œõø8 þ  þÔý‹õø"6“eûOx×áuÇÆŸ ü%“ö±ðÛë:¿ÂûMWÄzÇ‹¡ÕaðÔžŠÎ-WÂ^"³6—Zä¡}.g[¶òLý‰Q_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿò|çñwþÿ‚Á|ø­û?üø¹ÿFÒ|ñWö¦×|Qៀ>¿ý¬|7y{ñ#]ðd~—Äúv—y¤økPÒ´ét˜ü[áÖšM~ÿI‚aªD-eœÅp!þĨ¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù øzgüÿJüæâ|9ÿä*þ¡¨¯åçþ™ÿÿÒ¿ù¸Ÿù ¾wý¦à¿¿ðX_ØãÀZ?ÄÿÚ[þ‰¥|)ð¿ãü7Ò¿±ðþͽ£ßÜÙèš§ªÜF..­âòìl.¦-(""¡ˆþ¶è¯å á—üSþ «ñ“á¿Ãï‹ß ?à‚öÞ+øqñSÁø‘ðÿÅ6µïímÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…Gü=3þ ÿ¥~?óq>ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…Gü=3þ ÿ¥~?óq>ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…X^)ÿ‚¹Á{¼áŸøËÅð@ˆ´ øKBÕüMâ-ZÛÀÃ¥èZŸqªêúŒÑZé³ÜË–Ÿiqs$vðM;¤EaŠI ¡þ¨è¯ä/öqÿ‚íÿÁgÿkƒ> ý¡gOø!¶ñCàßÄøHáñΓûZøSLÓõÏøEÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ÇoìõÿÿÁ`¿jÏøZßðÏŸðDm'â_ü(ÿŠ>!ø-ñWû+ö²ðÞ›ÿÅ ù_ðxF÷þ il¼Ó|ø¼Û½+íú\»ÇÙï¦ÁÇÑŸðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòðôÏø8/þ•øÿÍÄøsÿÈTýCQ_ËÏü=3þ ÿ¥~?óq>ÿòyÆ¿ø.?üŸöqðMÇÄ_Ž?ðCß ü4ðm½Ì6#Yñ/í¥ðæÝo5…wƒLÒl Óî5=oTš(¦š=3G²¾¿x ¸mÌ0LéŽ#C F®'^ŽF©Z¾"¤(Ñ£N*òZµ%S„V²”䢖ìôrœ£6Ïó<K‘e™ŽuœfxšX<·)ÊpXœÇ3Ì1u¥ÉG À`éVÅbñ5dÔiPÃÒ©V¤¡ô?®:+ø¬ýž?àå?ø*GíYñ3ÇþÁô¯ˆ¾xWÂþ9ñÇ„-¿iË_ê:ƒüoe¦jžñÏâßhVwšwˆt­oGÔ´«:îì^éú¦¡ Kˆä¯³áéŸðp_ý+ñÿ›‰ðçÿª¨Ö¥ˆ¥J½ ”ëP¯N¨Ö¥8Ô¥V•H©Ó©N¤¡Rœá%(N”e¥ÓLË0ËñùN?•f¸,^[™å˜ÌN_˜åÙ†¶ —ãðU§†Æ`±¸ÿòPÔWòóÿLÿƒ‚ÿé_üÜO‡?ü…^S¨ÿÁ\ÿàâË}Bú?à¾\0^]C ðµ®µo.(çt?µtûج5-ˆ¡´,¢ŽÒói¶!‘[”Wñ™ñ{þ ñÿ¬ý–¼¨üvý«àŠü)ýž| «ø<|Rñü¿µ3& xŸÆ^ðl b$º¸µ}KWñ›£è‰u²}cP±[׊ÐÍ*_Ÿ ¼u§|Qøoðûâf‘g{§é?<áOiv€j6:w‹´ ~ÊÎüZËql/m­µ¡ºóÍž’yRÉ×`ÞŠ( Š( Š( Š( Š( Š( ¿?jOŠ~Üþ7ñ¯ìWð“ã•—ÁoÙÛÂw³øWöÓý¤ü3ãøÆ~#¹ÿI³ñ'ìƒû=ê7ò<Öž3¾³e·ø÷ñ‹OY,¾éWð­ü3.©ñ[SñT W>#ø>ˆ_5ø ñ?Áü¡|@ø‡ð3Uðe÷‹<¯Yx—ÃgÄ:vû9xgZ»°´Ö´ë+Ö‹Lñ‘yæÛDÐßB˺¿£?ŽŸ~~Ó? ükð/ãïÿ üVøIñJþÆñ|]`/ômbÎ;˜/ìæ^+½;UÒ5;K-g@×´«›súkº£§êú}•ì£yyi§Ú]_ßÝ[XØXÛOy{{y"øÓÅ::É´—z«®üMÐ4(îmìí¬ Öü¯éj^÷O½µÓÿh5ø$ç†u߆özñ_í¿ÿñgì´ÚbøjïöqÖ~3ü5‡Ãš·„ØÉðç^ø×¡üÑ¿kßøïGGðþ£á­oö‘Ô-5/Ü\hz¹Ódû8ýøUð«á¿Àï‡> øEðƒÁ^øsðËáîƒeáŸø'ÂzlNáÝOB–öVVꪻ™¤¸º¹”Ëw{=ÍýýÅÍíÍÅÄ É÷üYðÖ÷ö-ý¶¿à´ŸðOC&ƒâï|wð?Å߆º]åÓ[Æ_uýCâ&› x÷A‚V7è·Ôþ^\3Ziòx¯N²Žæ[£vêïø:ïdziŸðHÿ|Ðb¹Ö~!~Õ¿ÿgÿ|¤Z6©â_øšßâ~‰ñZßCðþ“oÍýíìÏðÒâq£Éy=†çµ;{KÏ×/Ú[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauöØ+ö{¹ý“¿boÙCöjÔZu¯‚³ï‡>&¸¶0µ½ï‹ü5àÍ"ÇÆ…¹·’h :Š#Õï¢ò§¸M— ¶âqûçúÖŠ(¢Š(ù:ÿƒÂ?å²ý¤ßàþ©?Ún¿¬ZþX?àíMßÄ¿±gì+á˹f‚×ÄðUßÙ‹D¹žß`¸†ßUøQûHXM,T’?:8îâó#tÞ«½rõ?@Q@Q@Q@Ÿð_o†_>1ÿÁ ÿmŸ†Ÿ~xßâ§ÄøÁv~øðßš÷Žð¯Š´=_Ã>(ðÏì·û?xÄžñ›{¢ëþ×ô_„ÞÓu\Ñõ(-µ'WÒuk‹ KM¿··½°½·žÖê§ŠH×êJ(¢Š(¢Š(¢Š(Â?j]VñìÇûFh—¨ëšî¹ð#âî¢èº=•Χ«k¶§ðÿÄ6Zv—¥é¶QOy¨j:…äðÚYYZC5ÍÝÌÑARK"!ü¸ÿƒpþüSøÿcý¾ükøiñàÿÄß ÿÃCÂMðëâ—ƒ|GðÿÇ~þÛýªþ9x‹FþÝð‹4Ý#ÄGö¿‡õ}+]Ó?´4û·èúžŸ©Úù¶W¶ÓËû}EQEQEQEüåÁ´Ÿþ5|ý˜ÿn}ãŠ?µßÁQÿi¿ˆ>Ñ~+|?ñgý[Äþ×þü²Ð¼oáí7ÅúNy­xCZ¼ÑõkM'ĺl7:6£s¥ê0YÞÍ-ÊEýÑ@Q@Q@Q@9_ðMÏÿ¼ ÿÊÿ‚ã|[ñ·ÂŠ>øSñkþOþWÄß|?ñg‡¾|Lÿ„wÀWv~ ÿ…}ã=_I³ðçŒÿ°®ÙmuŸøG5-Kû2å– ß"RÿF´PEPEPEP_ËÏÆ¿ù[“öBÿ´Dø›ÿWíA_Ô5~|x¯þ ×ðÇÅßðRï†_ðSÛßxòÛâÏÂïÙšÿö_Ò>ÚŸÿ»Ô<'¨x§âŠ¥ñ¤%Ñäñ)ñ]üDÕ-£û.¹o¦ýšÆÃu‹J.`Ðz(¢€ (¢€ (¢€ þr¿à¯?þ5|Kÿ‚®Á¿?~ü ø£ãÿ‡ß>;þÓúÇÆx'áÿ‹¦Þ#ðüë¦ø{Âþ±ÔµÍjý †i–ÏM±¹¸1E,‚=‘¹ªÔPÄðLŸ ø«À_ðM¿ø'Ï|uáŸx/ÆÞ ýˆ?e øÇÁÞ,ѵx«Â~*ðçÀoèþ!ðω¼=¬[Yêúˆ4-^ÎóKÖtmRÎ×QÒõ[›ëh.`–%û~Š(¢Š(¢Š(¯ý©t}[Ä?³í h^£®kºçÀ‹º>‹¢èöW:ž­¬jÚŸÃÿÙiÚ^—¦ÙE=桨ê“Ãieei ×7w3EI,ˆ‡Ýè Äø7á?Å?ßðF?ØÛáoÆ¿†Ÿ>üMð¿ü47ü$ß¾)x7Äüwáßí¿Ú¯ã—ˆ´oíßø³MÒ?`_ø'_Ãø'Ïü5ü+_xóÆ¿ðÕ_´Ï¿jÂr|>áñgIJÿix{ÃØ>‘Ù}•>Ãý©öýKæo>ú^1ú@Q@Wã¯íÍÿ;»ømã¨?d_Ø·ÂðÑ?¶¿ŠæŸF‡Ãz,qê~øA#Ûƒ6³ãëõ¹·±mcKI£¾}æöËJÑ-`¹Ôüu«èvvöšv¹ãçyîYÃØÌëºTÝHPÃѧ VÅã±U]¨`°ZjU±xºò÷iP£Ië9rÓŒçѼ.ð§üaâŠ\'ÀÙTqØÈaqžo™ã±42Îá|ƒS3ân+Ïñ²¥–ðÿet_µÇf™zTazxz*¾2¾ [èßÛ³þ 'ðOöð¥ñ[\ø÷ãŒ[|/øáã¸ñÇ5™^ÏN¸º‚¯gð÷†&ÔÕl$ñÕ…ËÝ] lt 7]Õ¢m:¿>ÿgø'ÇÇOÛ7â¦ûfÿÁTZZâÓ—Á/ØäG:|=ø]¥]Ïk¨ZÂoáÛ‰î-¦¼‘ µ§„5%Ô5-b[kSñ'SÔäµÿ„[Nú3öÿ‚`XüñEßí;ûVx·þCöØñŒßÚú÷ÄË6±áÿ‡W71®íá½®£on±ÜÙ)6Kâ¦ÓtÉ­¬"‹Ið¦‘ám]Új?®µòXl‹4â¼E ׌h¬.YF¤1Oª‘«B” ù¨ã¸’¤¥˜æ Út²ø¹eÙ{Jë‰æ«èLïÅnú?åŸý³7ŸqÆe‚Ääþ ý%%…­Í1ô1tsðS ‰Œ1ÜÁó„ªá3/« ?ñ|Ý9dY+£¯üâþÅ¿~2x;þ2ÿ‚Á|h×¾ üLð¯À߈ßÿd=áÅ_áçŠt?…<Ô<-ðKàF¯hÞñÝæká^øsQѵM+WÓ¼=ªßO¤^éZ…ä6óØÜÅôuEú.ÛÆÍ¶Ûm¶Ûm·vÛÕ¶Þ­·«op¢Š(QEQEüå|]øñ«Sÿƒ¢?e¯ÚNøAñGPø áïø%Lj~kÿl¾ø²ïá‡ãÙþ+~ÑšŒ>Ö>$Á¤ÉàÝ3Åóiú拆¯u¨5™,õ.é,Œ…£ÍýÑEQEQEQE;?ðYß‚_þ)~ÞßðAÏü2øEñ?â/„~þÛúß‹>-x§Àžñ_‹¼9ð»Â²Ýü"h¼Mñ\ðþ“¨iž ðü«¦j-³â[­3NuÓïJÜ‘i?—ýQEQEQEQE9_ðt×Àÿ_´'üÄŸ¾ü ø£ñÃâ ÿþ kxáÃÿ|Kñ”ÚN—­>§ªEáé:Ö·&§$±=ýêX›kE’6¸–0êOôkEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEÏø³Åžð…|Mã¯x›Ãþ ðO‚ü?¬ø³Æ>1ñf³§xs¾ð¯‡4ëcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´Ê Q@Q@Q@Q@Q@Q@Q@ÏøgÅžñ¦s¬x;ÄÞñf‘gâxNóTðγ§kÚu¯Š¼â­gÀ¾:ðÍÍö—sumˆ<ãox‡ÁÞ,Ñ¥•ux«BÖ|=¬[Yêú]õœQEQEWä§íµÿªý‰`Ú¿ösýŽhKâU¿Å_ÚJÓÃú¶ƒ©xGÁvÚÿ‚¾øsÅþ2Õ¾øKÄßµiõý/V²Ò|?ñÅ?‹¾2Ñ<à/ Ù›ÍkÄZõ浄²ÞÎÖ%u©jº„å-4­M‚ëTÕo¥†ÇN´¹ºš([ùñ½ñ'íMÿÂñ&¡áß¿‹¿eïø&^¬Íc¯x¾xŸñ+ö”þʼxå°Òãhå¶›H–ÞTúds]ø7÷I,Þ!»ñŠ4Ë?é-Ä%k{‹ZÛèÖW>9µý'ý‡?àŸÿa/Ï¢|:±›Äß|K rüKøÍâx ›Ç~>ÔšAur'ºÝ;h¾Kâ÷o…ìne´¶m—Z•Ö³­µÞµyô/À_€ÿf_†^øEðSÁšg‚|áËqµ…„fKÝJõÕEæ¹â Rb÷úö¿©È¢mGXÔ縼¹}¨dX"‚½’¹2N¯O!âlM<߉e FŒ¡G+ÈhÕKÚ`²-FÝ´”19[ãñÜ­Ô*Rú¼~‡Å²¼_ UðwÀì“áß‚TqTkæX|]z¸÷ÅŒË6ð¼QâÎ{‚8fU¡QÏ“pv^éð— {HÓÀáq¸ê/7¬QEö‡ó0QEQEQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPE~5ÿÁCÿàž_·Ïíiñ«Ã¿eŸø+—Å_Øáö‹ð»EðN±ð{Àßm>&i>$ñ–›âÏkº‡Ä«zŒŸÓQÖ4Ox{ÂóiEºX-¼ix5IÍûZY|ÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ü¼ÿÔ?à±ßô²‡íÿˆ“¦ÿôPÑÿPÿ‚ÇÒÊ´Gþ"N›ÿÑC@Ô5ùñÿëý“ÿj?ÙáŽ<ûU~Þ^7ý¿|_â_xsâ?޾[ü1Ô|á³áýIÿ„&ÏJ·øƒñu !ªi÷úèÔT±>~­5·Ø‡í~ƒÐ^gñCãWÁ¿‚E—ˆ>4|Zøeð‡AÔ¯WMÓµ¿Š<ð·€4‹ýE¶m°²Ô¼Wªé6wW­æG¶Ö ¤œïLFw.}2¿‘ÚÇþ  Á*¿à¸?¾9ÿÁE~|M×f_>ü?ý„ÿi xJOhŸ¬|!ዹþ?|<Ó´óqh·¿þ#júï‰>  Iqã‡Ò¼/ðñî|5¬xgZMGJþüûN~ÍŸäÐ"øsûB|ñü¾+ñ%÷ƒ|-‚~,ø ÅRx—Åúg…µŸj^ÐB×ïÛYñ&Ÿà¯x‡ÆÚœ.uKO hZψ.-cÒt»ë¸?œ¯ø9³þ Ûû2þÏ¿°oí ûø+âÏ‚¼wûW~Ð~—à´ÿ |¯é^$×~xCÄ—qÛ|Jñ'Äû]6kÅðb¯ƒ Ö|=¢èúÓØø“Rñ½¥]iúdºU†±©iß\ü'øÝÿÊÿ‚µþرoíƒûþÑ_|wñ×ö+ñ_ÅøÛJ“Ãúÿþ5ø‡à—ÅÙËã7Ákÿ ]xKƾðŸ/ô¯|Iñß+xwàGÿi€ž øáã ,áð—Á¯|aøyáïŠÞ(›QA.Ÿ‡~êþ"³ñ~·%ôDIfšft×HCÀNkÛµ-KNÑ´ëý_W¿²Ò´*ÊëRÕ5MJê ;MÓ¬`’êöþþöêH­¬ì¬í¢–âêêâXà·‚9%–D‡âgÅ/ø!_ì£ûS~Ë_³ßÁ?ÚfëâœÞ:øwñ ÿ´WůŠ<{„¾!|pý¤¯ôRŸüqñKÅCIÖeñx³VÔu«[ «¦ë>ðì¶~ø[®ø'B°±³‡òþ eûdøwö£ÿ‚òüÿ‚b|qâλû þËÞ Óþ5þÑŸ¾ üøÕû@j¿´Åû߆ðüWøáω >ü=ø“ãü&𭿈þ_ê>¾ðŽ«àé#oÝxªeþÔÐn<>ýJ|3ý¸ÿbŸ>5—á·ÁÏÛö[ø³ñ•'ðÃ?Úá7OðëÄÇö:ÐíþGsâÍ/Gðö¥u§êÚž¾ÔuKÛ»[’X¾>ýª¾$ÁG>*Á¼ÿ±ÆŒ?³§ÆO|_øeñ³à‹¿à¢¿³/|-âïü[øëû.þÏ~ xâ‡ñÁz¶•‹M§Æ¸|ð·Çÿm¦ðìÖ×¾ ñˆ(ð â¯é~/ðÇ<9­éºç„üGá=sMƒZÑ|Q øL¹ºÑõë=Õ¶­¥ëz}寛¨i·_Ú\Ík4r·óàOø/Wüoþ 5ðj÷öUøƒñsÃÿ ´‹¾_‡3üý¤~ß|8Ò4 McOM K´³ñ£ézßÀÿj~ž{9<3©XüB·mQ±°Õ4k‹fÓâ¹·‡þ •ð?öšý™ÿà‰?±_„Ôj ö;½ý„4OÛ?áÃ!®Cÿ 1û&~Î^Ó´O~ Òl´Ëkï\xâ¹áŸÝø¾Í,ïL [ij떗z5¶­o(îNûnþÅþ"ñ-§ƒñ­àÿéëz åþ›.§áè:ç…¼E`—-u¢xFÕ´MN+mON¼µ‡ùÛø ÿ(Á ÿi¯Züñ—ÄË€ú7ˆ¼7oá-Gà—í+ðkRð¿àÐîl÷„u}cDÒÏCÓ¡Æ—=–§âë6H‹8fµŽcèì¡~ÉðJ/Ø?ágÃþÓ?³ÏÃOÙÆÏâ¿Ç›¯ßüuñoÁ~øe«ø+ã×Çßÿ´GÁÏø{Ç^8ñ™¡xŸÄ_ÂÛÙÒõ[Óâð–¿â \èð½Ì`©Õ‡â_xoÁš©âŸx‡Cð§†4;G¿Ö¼Gâ]ZÃBÐt{ˆ^êš¾©qk§éö‘–P÷wÂ…€gðçü=‹þ eÿI,ý€?ñ2?g_þxÕùiÿ|Søû8x³þ µûXx£à‡‹ÿhïØöný >$xçöÜøKá+uànué¾ýŸ¾'ø‡Ã²Å¢ë:WÁßj5ñæŠÛ÷÷wpÅóW™~ÞŸðRÙ#þ Éð“Äio‹~ð®¥cá[]ðO¿øH4¯øZ¿õ+{¿ìïü=ðI¸msY¹Ö5KeÒ²¶+áÍim/M¶º»‡ñãoü§þÉÿãý–þ'þÂÞý¦¾øsã‡ÇjúÁ ö‡ðŠ~øƒÀÿ®tˉ¾k~ÖüY ZøsR×­ ü°Óu_?þ|!Òõ«™ìô}Kâ‡Ä øÃV»µH¤¹µÓo þÍó|mø™¦øŸÀ_ üC’ø9¼_ñzoŠ8ñ­ÜV¬Þ“©ø»ÅZ—‹¼EwâøSI´Ö4_øJg×üM¡oÁ^€ø O×!¸ðg…ÒßÃúN†>³ñGíñû x#âü#ñ§í¥û&xCâ¼w£M“áŠ?hσÚÄ$ÔL³@,Áz·Œm0üPøwðŸÃW±é¶þ"ø—ã_ xCŸQ™Yá°‡VñF§¥XK{*#´v©pÓȨ̱¤äßþøðgÁ_ðSø7×â׃>|=ð‡Äÿˆ¿ðS†ö_üáh^ñoà²øãû2ߨÂq®i6z‡‹¦Ónî¯gÓ.¼C>£u¦¶¡© ­×R¾[ê³ãWìùð'ö‘ð‹ø ö‚ø7ðÃãgƒ®¥Ã?ü á¿i—7º}Ö•q§Yø“NÔcÓ56Ó¯nìÓTÓ…®£ 7¬Qï&€1´/Ú£öañGÃO|iðÏíðÄ_<«ßxÅßt/‹ÿu†ž×ôÃbº–‡âOéþ!¸ð¶‡«éíªi‹}¦êz­­í¡ÔlDðFníüÈ~ ~Ö?²Çí*Úšþδ·ìÿñù´HÌÚÊüøÉðëâ£i‰ „Ë©ø^6‰n­¢/t"Q%ÄNé£ üzÿÁž³·†~4þÆ^8øÇñŠÛJø‡áÏ_µ7üð áLj¬SSð§Ã¿ê¿ þxËâoÆOì äŸGÕ¾$x—GñG|áŸj]jžð×…5í?ÁŸðxîçÅ_GÁrÅ¿ìçÿ·ÿƒ|¿h/ƒÖ°øâ·íûGxƒövøÉ⯤z=ÿÄo…ÿÿeÿÂ3âù´ä¶›ÄV–þøßãÛ8SX’õ;ËDŒiÖ¦0ëîŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾?ý³?mÿ?°çÃ+Ÿˆ?|@§T½Šâü9Ѥ·¹ñÏÄ=n5=/úSȬ–±Êñ W_¾0hº42+^]©ì¬îþsý¾à¦~ý•uàgÁÿ \|ý²>#µ¾“ðçà—…Œš‰Ñµavi:çÄFÓYîôÝ8þвðݹ‹^ñ´AÌÚƒ5ÇŠ´ÿý?à˜þ.¾ø˜Ÿ¶¯ü_ÄvßÿkMfkm_ÂþÔ$‡UøgðÞ)ïFÒ|;£¦í ÿÄ>’iNk sá_ êo%ï‡ ÔüA~6ºø\Û‰q¸Ü}~àútq¹Å¡šfÕÔªdÜ5¯‹84±¹«‹æÃdô'í­S<6-Ïú¯Ãïx_†¸S+ñ£é̸kÜÆÅp‡ùMZX_¼n­‡©Ëì¸s‰ŒåÃÑöy牦X8RçÁpÆ:ÍêÂoøIûþÒ_ðT¯ˆ>ý©à£VڟïÙÏE½O|ý‹4ëËÍ6ÚëO‘#m7ÄŸÐ-®¤S³’S.©—Œ¼F'–bðo‚MŽƒ©ÿC:&‰£xkGÒ¼;áÍ#LÐoüÖoÛÿ¡ö¾oÿƒ¯--oÿd?ØÆúÚÞöÊ÷þ Ýû*Ú^YÝÃÍ­Ý­ÏÃÚ.‹k›y•ážÞx]âšQã–7duebô ÿ …û&ÿѯþÎÿøe>ÿó3@Íáh=ðŸ…üsá;ÿí_ xÏú'‹<5ª}–öÇûK@ñ›m¬h×ÿbÔ­¬õ?¶i×–×e¿´µ½·ó<›«h'I"^Š«ÙÙÚiö–¶¶Ö66ÐYÙYYÁµ¥¥´K µ­­´*ÛÛ[‰D‰Q"Ǫ(ÅQEQEQEQEQEQEømð³þ !ð‡âü þ Gÿ·ýª¼IðçS?¼[û7xŸöeð7ÅMÁøwÆžø•û)|ñ_޾hͪiÐÙxßÅÄËÏøúßHñ)Õüe¥xûR‹ÃÓ_øOÁRiÞýɯñ¿ìÓû8üMÓ¼£üHýŸþ üAÒ>+êú7ˆ>)i^7øUàOißµÿøjÃÁž×<c¯h7öÞ2Õô/éZg…4mKÄQj7ºg†´ë Êx4»;{XÀ?šÏÛ×öý~ÿÁQ?à“~.ÿ‚vü7økðCöæ“öÊð¾«ñëáÿìë¦é~ Ó.?a» x‡Wý¢¼{ñoáÏÒÏÂÞ´ŸCþÍð†…â­SEðõ×Ä ÿˆzž%çŠu±‹M¿ÿŠü øñKþ -áÿxÃ÷ºþð;ö³øYñâ1°¶º»ŸCø~Ÿ>4ü1ºñÚ[Ü0²ÓüQñ7‰©\Î`µ±Ó®.¯în#ŠÕƒÿH_¿foÙ¿ömÓµöuýŸ~|Ò5ym[Kø-ð£À 4íRhÞI#—Q±ð6¡[^È4®s¬¯,Œ¤b}šòÎÓP´º°¿µ¶¾°¾¶žÎöÊò®m/-.bhnmn­¦W†âÚâx§‚Tx¥‰Ú9‘ˆ š´gí5áoŒÿ¿cGö`ø´Úž¯ûY~Ó±_ŠþêŸ|U5®³ã/‚¾ý¡>|}ý¢ÚFðÝøÔäðS~Î?>(øO╜¾f†lµË¯øÉV×^ºÓî?¿àò/x)à–¾ðCxÃÂëãIÿk_„70xA¼A¤MokàOŠ7·WhìjÒCmeygwq*Zᵺ¶¸‘–)âwþ—~~ɲŸÀxÆ??fOÙïà§‹üa‡Å¾*øIð_áÇÃx¦¸ûcEâ=sÁÞѵ=n6»ÿJ)©Ý])¸ýùoÍ\'Å/ø'·ì ñÇÇzïÅ/°÷ìñƒâoŠ?³?á&ø‹ñKöiø/ñÇ~"þÄÑôÿèßÛ¾.ñg‚µjÿÙÒ4­ LþÐÔ.>Á£éš~™kåYY[AÑÞ ø‰ðÿâ>›³ðóÇ^ñæ‘-¥üZ¯ƒ~Ú1ðÞ…¨ø†ûà.±uðÍþ h|[c¤ZêZ¥‡ÃÕÒ4¿…úľ ²ÓoÎð_Š<)tlõø>=gúøû'~˲ÿü%?ðͳOìÿû;ÿÂqý‰ÿ ¯ü(¿ƒ¾ÂaÿÏö¿ü#ð”ÿÂáÏÿÂAÿÿü$÷ö'ö·Úÿ²¿¶õ°}ŸûJóÎ÷{Ë;MBÒêÂþÖÚúÂúÚ{;Û+È"¹´¼´¹‰¡¹µº¶™^‹kˆ]âž Qâ–'häVF €xW‰?jŸÙ¯Â_l>>ë¿~[üÖl-õ|G´ñ¦…«øcÅÉ}±t»/_h÷—ÿð›ëšíÌÖúw‡|9á(õÄz½Ý–¡iš†«{ig7åíûÿ=ø›û~Ï¿ðNïÚ«ã?…µ øÑÿ ð¯Â_Ú áÍî‰câ_h_³ÅO‡?µM×WÆv~£­xoâ…t½àÏÅŸ‰:‚.Ä:'<)â?‡ºe÷ˆt9uÄ?¦Þý†bo…~=“â§ÃØóöYøqñB[—¼—âG€ÿgß„¾ñì·r1y.¤ñ‡‡¼#§x…îdr]çmDÊÌK3s^ýâOø+ÆW^¾ñƒü/â«ïx¢xóÄžÒu˯øÖÛFÖü9mã Üjv—SxsÅþñ/ˆô(¡§xƒáÇÆ¿­§ˆ¼Eâ)n!ú…ôÝ{[µñ¦³ki¤^x{Ä+1Ófü øoûr~ÒŸðI¿ø"OüÓâ—í1}âMsö¨ø[ðWö—Ðuï ǯøËþ/âWƒ?ksáþƒs¥júe÷Š´|:øu£üñU¶™ 6ã¾ø‚®d:v¥¯h—ô›£þÀÿ°·‡~#Œ^ý‹dÍ âáÔ¶Å=ösø=¦|F:±x¤:¡ñ½—ƒ ñ1ÔLC'Û´þÓ¾›ÍÝôG‰¼ àÜøJ÷Æ^ ð§‹o<â»_øïÄÞÒ5ëŸxâËIÖt ?xJ}VÎî_x®ÓBñˆt[_èïg«Ûé:Åx–z¥ô3€~u|uý˜ÿà‘¶ŸÁ=ã—Ç…¿±7Åσ¾1ÐgÖµ_ÚGS±øWf°ézŒ?hŸÄvŸ´6—&—â ^…¼ó¥×4ÿi:•¬Ó7uŽê-¿à?ðN‚¿ÿà™ž-ýŸj¿†Ó~Ñß±†‡û~þÑ?àžšgÇ×Q¹ý•,n®¼ðâP³Ã×Ö«ã+Moâ§Œß>·¨j·7:Ö¥¬_Iq¨É-õÛ³ýåª~ÇŸ²F¹ñrËãþµû-~ÎzÇÇ2ö-KNøÙª|øg¨|\ÓõX/ì¾$]øboZ^¤ˆ® Öcž0HIZ¿e¯Ùö´ðí‡í)û9üý¡l ÿÁ&þ!k¿²qñž›}â?‰ ðWÇx;åñ/€gmsDñ”þ7ñZž–¨hV¥âm;Àþñ·k%³YøwÅú¢Mykk<ó'ëÃø'Wüëàç´‰aOØßá_Ä \Ïyáoˆ ÿf/‚~ñ·†®î¬®´Û«­Å~ðF—®è÷7:uíîŸ<úuý´³Y]ÝZÈÍı¿Ø“C Ä2ÛÜEðOÃ<"Ë ÐÊ¥$ŠXÜ2IˆÌŽŽ¥]IV(ó_þ £ð‡ö1ý¿àžŸ%ý›®þx{à7ü)xóÄt›Ÿ iÚċ˟ Y^x‹â§Ä@máÖõÍVþKéµ-GY¾‘´l[&a¥Úé–ŸËü[ö˜ñìÉûHÿÁÓß#Ðô¯þÑž/ñ]§íCû1|øåmu¡ø§â'ˆ¼}­þØ>xSPðk^ñ~±'õ¯t ß hº–âY®þ$è7zFµ«Y¼_Ú?†¿d¿Ù[Áz¢k~ý™ÿgß ë1jëâõ |øs¡j‘ëéqÚk‰¥ønÖí5t»µµº]Ie«qmÂq$1²ík¿³ìï⟋>ø÷âo€ŸüEñÓÁö‹aá/ïÂßêÿ|-b‹*%—‡>#jÇŒ4KEIçE·Ó5›XUf•B#†þ]ÿàã?‰¿ ôÿÛãþ ë†ÿâ‚,¥ðGü«Â#ñ¤W~+Ðm¤ð‡´ŒŸ³+jÚ÷‰ÒkômEÒÖÚáµSU–6KÆæx„NWú¹Ô~&ü7Ñü:<_«üAðF—á3ö¼x£Qñ^ƒcáÓöçšûÝÍüZoú6·2Ýÿ¤ÿ£Go;ͱb¯Ëþ6ÿ‚jÿÁ9þ%ø»Ä>#þÀ±GÄxÇW½ñ‹¼mãoÙ[à_Šü]âR™®usÄ~$×| ¬ëš¾¡pï=ÞÝ^ÝLí,óÈìXôú¯ìû ë¿ ¼1ð'[ýŒ?dýcà‡‚|A¨ø³ÁŸõ_ÙÓàþ¡ð«Â>*ÕΠuoxcáå߃¦ðŽâ LêÚ©Ôu+H´ÔoN§¨›™~Ùsæ1ßðe‡Œ¼!kÿÖøïàËŸøn߯·‡ÄVß“ëš\^%ŸL¿ýž¿f›{J K¥Õ%°½ŸCÖ¡´¼KV·¸›GÕ#†G}>íaÈÿƒ¾)ü1Ÿþ ›ÿÞù?¼7ü+ÿÛšïÄ~<ò¼_áù?á ðõÇíûy÷‹¶jþ½øE¼OäêšÏجdÿ„s^Ù;djgþœ>ÿÁ:¿àŸ_´º½ºÔ®­t xbÃKд{kFö÷Pž :ÂÚ)¯nVžâY· Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+˜ñ§|#ðçšÿ޼{â]ÁÞ ð¶›q¬xÄþ#ÔmtEÓ-Wt÷º†£{$VÖЦUÉ 2JñÃydDiœáN©Rq§Nœe:•'%BNRœå&£Æ)¹I´’M¶’7Âáq8ÜN‚Ã×Åã1uéap˜L-*˜ŒN+ˆ©T0øz£:µ«Ö«8S¥Jœ%R¥IFŒ¥$ŸO_„_µ_ü‹âÇÇ?ЧìIÿ·Òm¾&|k“ÌÓþ'þÑ1˜.~ü Òšo²jz…ŸˆÞ ýÿUÓO™ ψeƒRÒìo‚hžÓ³í 'pÑc …â/2|«Ä«áèf<+à:_ZáÝhC–ñ2ÂÖ„±y³„©ãrï°µ©beGØVã|^_‡Ä¬–¿Íß°Wü_ágì_§_xÛXÔî¾2þÓ¾7[‹ïŠ´Œ„ú‰5MGSc>©¦xUõIï¯|? K;¿Û%k¹õïM›ÏêW1&¦i_¤ÔQ_o”ånG€£–åXJX<ù)RM¹NZεj“r«_V^ýlEiÔ­ZmΤå&Ùü¹âˆœiâ§æ|mÇüAŽâN$ͧ‰Çãe8z+“ —eØ:¥‚ʲŒ¾.,Ê2Ü>-˰°§†ÁahP„`Š(¢½#âŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾@ýµ¿o_Ù;þ Ûð³@ø×ûbüVÿ…?ðËÅ4¯…º‰¿áø“ñíÞ;Öü9â¿išö7ÂßxÛÄßiðÿ‚|O¨iÞiVú|OÒmô‰^ðgÄ= ÏQ‡X´Ñ|sá}źM®­omwe©o¦ëö:…œŒz…ý¤7±B·1Û^ÝÀ’¬W3#€ßð^¯ø/Wü{öÑÿ‚O~ÕŸ³GìÑûVÂÊøÛñ+þgü!^ ÿ…ûIx;ûkþïÚOàïüGÿþøWÂZwöw„¼+¯jßñ6׬>Ùö°X}«Sº²²¸þ½?d/ù4ßÙþÍßà§þ«_ ×áüÅû8þÏ^ÿ‚#þÚÞ,ð7Àƒ> ñN•ÿ áý—â_ ü/ðG‡|A¦ý»ö¶ø ¦ÞýƒYÑô;=FÏíšuåÝ…×ÙîcûE•ÕͬÛàžXÛ÷söBÿ“Mý—ÿìÝþ êµðÍ}EPEPEPEPEPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@WóQÿóÒÿkÏØ×ö"ý¨ÿoÿÙ³þ =û[øÅ|Eð¯VÒ~êOìÇâ?‚vñã/Ä·þðÝ¥Çìñgñ'K¶Ò ñ»ëÚmö»ñ#Å—Ms`ÖW‚â+ÅžÌúW¢¿™ÿø$‡ÁßÚçöîÿ‚x~͵·ÆŸø+üCøñ«Ã¾*×õýá|±o‡¼¥d|Bñw„´ûMMñ_ìsã½uâ]áëYï'½ñ%ßÚ/f¸’là1ÛGîÿµ·ü‡þ eÂoêÿ±üCö»‹ã6‹ ßj^ðíá?Ù'Åž ñÖ¹e·Þ¸ñ7€ÿfÿ…—žþÚÛ…¯ˆ.l-øÁÖÏ­|AÑ>ÞüøgðßãG¯Øø6×[Öü?‰~/|e·Ôµý/NÐ5 :î-Uîaýº¢¾5ÿ‚þÛŸ ?à¢_²WÂÚßàêÝØø_ↇ4š§…õ9’}oÀ~5Ðïn4Ox[–8mÒâÿÂþ$±¿Ó¢Ô¢¶·´×´ÔÓüC§D4ÍZÉ›óþ Õÿ[ý²ÿbïÙKö¬øÛð[þ ýãïøàEÜ ‡öŒý£¾"ü Ñ~ßêÞ%ø±á¯ƒ¾ñ÷Âß„? ~&üKø¯ñCÃz®§ã-Äþ‹ÇºWÁX%Ñ®e›ÄÛSÒ/ü%xýÑ_!Á>~)øëã§ìûümø¡­/‰>&|bý¿f¯Šøkû>Ãanú·Á°ú_Ä‹h~.ñUÞƒ¡ø¯Å~3½×¼-lÞ&Ÿ^·±²Òõ;l|?áßZýªÒ~¿þ “ªþÞ_²§ì•ûU~Ý¿²ÿü[â¯Â5øU¢ü=ñ†g©ÿgÏØÿâÂÛIõß|<ñ›gâOü Ö~,›z÷TÔ|fÚŽ¹ãïŦk7÷ZnŸ¦ÅáøôÝ/Nþ¨¯æ³þ Cáïø)7íåÿýý?k¯ŠðWŸÚ#¾5øÙ ø«Ä§†¼û.Á<¬¼-¡Ã¤|Bño„´ëñì¡âMZæA§øzÚ{ÛËH-Íäó¼vPyvéÏÿÁDiÿø*7ügÀþý®¼YñûÂÿðR_ØÞËÇ:‚~µum|¶^vk›eÙ&¾ešâé`°Xh©U¯Y»]¾XS§©T­Z¬š…¡:Õª8Ó¥ ÎJ/ìxÃþ2ñCŠò® àÌ8›‰óªÎ–+ËéÅÏ’u1Ì^"´éa2ì·EO˜æ™†# —eØJuqxìVJ¥XýûLþÔ¿¿d?†ŸÅ¯Ž¾1´ð¯†lÙítË4 yâ?kg–âÛÃ~ÐÒHîu½rñ!s¼F+kXV[ýRóOÓ-î¯`ü8ðwÁŸÚ‹þ GâÍ#âßíKŠ¿goø'ƇªÛë ÿg]+PºÒ<_ñ¾(ek3Åž1¿Š;{§ÓomZ¨Ý,Ã;QjT±\MÉ+ÐÁÝ*”rIó¾Yf“›ŠÂÇúŸÆœôTÃb2/3|ŸÄ_¤ Z0|Iãžœ1Ü#áuJ‘•vEàtqTmšñŒªàó/qT!õx*”8 ‡…yçµy?xÁ üáï‡ÿü/¢x/Á>ÓaÒ<9áéöú^£éÐd·³³¶D7Èò\\JÁ§»ºš{»©f¹ži_­¢Šý:t©Â•(B•*P:téÆ0§Nœ"£BJ0„"”c¥Å$’Hþ/ÅâñXüV'ŽÄâ1¸Ün"¶/ŒÅÖ©‰ÅbñXš’­ˆÄâq¥:ÕñëNukV«9Ô«Rrœå)I¶QEg8QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPÎ?ÿkÿÙwöñ-ƒ~6ü{ø[ð³ÅZž‡mâm?Ãþ7ñv• j·ž¼¿Ôô«MfÞÎúx¦—O¸Ô´mZÊ+•SÜé÷q- å_ðóø'ßý/ìùÿ‡+ÿü™^«ñö@ý—hØøËãoÀO…¿üU¦hvÞÓüAãéZþ«gáë;ýOU´Ñ­ï/ –h´û}KYÕ¯b¶V¥Î¡w(PÓ9>UÿÎÿ‚}ÿÑ~ÏŸøm|;ÿÈuòxïõçëuÿ³Õ?¨ó¿«}{ûcë~ÎÊÞߨ~çž÷¿³÷mn·? ø_þ%Sý_Ê¿×Oø˜?õ§ê±þÛÿUÿâ«ÿ]ç—7öWö·ü(ýW“——ë½çæ¾–øyüïþö|ÿÕáßþL£þcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡gÁ>ÿèοgÏü6¾ÿä:?áÙßðO¿ú3¯Ùóÿ ¯‡ù¹ãcÿÕÿ™ÓÞÿŽ-ÿ¬¡ÿÎQåÿðóøyüïþö|ÿÕáßþL£þcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡gÁ>ÿèοgÏü6¾ÿä:?áÙßðO¿ú3¯Ùóÿ ¯‡ùøØÿõDÿæt?ã‹ë(ó”yÁü<Ãþcÿûÿ£ÅýŸ?ðåxwÿ“(ÿ‡˜ÿÁ>ÿèñgÏü9^ÿäÊ?áÙßðO¿ú3¯Ùóÿ ¯‡ùøvwüïþŒëö|ÿÃkáßþC£þ6?ýQ?ùøâßúÊüå_ð3èoƒß> þÐZ&©â_‚|ñS@Ñ5_ì=_Xð>½câ ?NÖ¥µÿömåÍ„²ÇçØ®ín¼‡!ü™â“\õÚò/ƒßþ þϺ&©á¯‚ ¼ð¯@Öõ_íÍ_Gð>ƒcáý?QÖ ¥µ‡ö•嵄QG=çØ­-m|÷ü˜";P õÚú¼×¾©CûOêŸ_äYú¶ú§?4­ì>±ûîNN[ûMy¹ºXþâ¿õSýaÍ?Ôõ‡ýTöñþÅÿZÿ³Öªû\ÿÚŸÙð›íþ±í¹~©û¿cì¯ïó~ÿÁÑßò‚Û›þí›ÿ[ö}¯ßêüÿƒ£¿å·7ýÛ7þ¶ìû]gÏ Á à«ðM¯Ùëþ ûü,øÛûmþÎ ¾%xáÿàñ€|Yñ+AÓ¼aáû™þ+|BÖíí/ü:× ª¥íÖ•}e}ke¬—WPÝÛxdi£Výaÿ‚SþÞžÿ‚‰X~Ýß~xÞ÷Çü)ûwkÿ¿gíRëM:]´_ þþÊß²qÕî4h.´Y}ÅuŸ‰¿ô—ñ³ë)kã5¶•á³·²±³ñ¿ø7*ÚÞóþ‰ûYÞ[Ãuiuð×âµÕ­ÌQÏoso?ƉÑOoqªñM Ñ;G,R+G"3#©RAû‡ö0ý|1ûëß¶m·€4ŸxcáÇíû^êß´ß‚<à½?û&ÇÁñx¿öyý>xçM¿Ó Ó´í*ÂÿXøµð¿âŒ­í44¸Ó!мO¢¡¸]@_ÚZ€{ßÀ_Þý~§ÂßÝë—^¶ñÏÅÏé±ø‚}.æóJ—ãÅ¿|`Ôü7c.“¤è° øWVñÝÿ†¼å­Þ¹„ôk¾&ñ z§ˆõ_d¯—¿f_z§ÇÛïÚRö]?E´ð¯ÂoÚ‹â/ÀO^i"ý®u/á?‡¼  x×P×î®î%µ»Ö­¾2‰út‹m>ÂÃIÑô{{gLÕu]KêðçìÙû2iš·ûI~П¿gÍÅ÷ZW†uŽ|ðŸLñ§en·wºn…ãÍ@´Õïí-.®¬ôùn.-íÝf–4ƒœáì_ðK/úIgìÿ‰‘û:ÿóÆ®óöÁñOìáox6ãöýñìwáÏ ÝkZŒ?gý°u‚ºG‡®|B–1>­ƒdøÓqo¦Í­&›ä¾¢š#5òØùMr¾Ó_ÂÞÿƒoè¨Áðµý„?ùg@]ÿÃØ¿à–_ô’ÏØÿ#öuÿçS[ÁVà—W—övðROØêîêh­­mm¿l?Ùâ{‹›‰äX ··‚/ˆ¯,ÓM+,qE´’Hʈ¥ˆãïø[ßðmïýø"/þ¿°‡ÿ,êî›ñ{þ ÎþѰþÈø¡ÿRþÖûm¯ö_öoaíí>?±}ƒìºŸÚ~ÛöŸ+ì¿gýÿŸåù_¼Û@µ´QE?Ò¼Sáßø>á&«ãÉ–×Ã^,ðSê¿ ¥Ôç†+Y<-'ükâƒc†Á§X5×Å­ÆÖvp+Í4úÌ»‰£?µ¿ÚZãÃvŸ³íuã&Tð…·Á?Š·*w’â$_ ÃàMzMqž[I"º‰WL[¢Ò[KÂZ@¬?>ÿà¥?ðJ¿~Ü>5ýŸ?i¿…_æý?n_ÙÅ0ýž>=[xrh3ǦêË®ÉðÇâïƒ^÷I›Æ_ 5ÛñuÅž±§jZ!Öu©­N©¥k"ð׈~ý²¾.|øáÛONý•þ þË~ðV¿âßÚOTýŸþ.|]ø³ãŸ <¥Üx£Æ? í´Ÿˆ¾hßü ñKÑ®tO‰l|Eñë\Ôþj~%ðV‡}¢jzµ¿ôÐÀoø2;âvµ­~ÈŸ¶w »™¦Ñ>~ÐÞ ñæªZ;KŸŠŸÓEÕà¶®]–o…67-f–¶ðÁq=ÅÒÍs6¡p¶ÿ­ðtwü £öæÿ»fÿÖÃýŸkókþ ¶ýž&ñ^µ¯þÊßµçìÕðŸÂCA²‹Ãß þ/~Ç>-ø¯¨IâKkw[ë_âχÿj?‡ím¥j×E(m>_\h°™Öî  _³ì=¦þÍ_µïüöðî§¢§‡?mïüñóxCM³¼·¼ð׌þü>Öüã½SPžf{K¯øNu}B†³*Ë©^k qb-ò'ü}ÿ(Mý¾?ìøÿWWÃ*üÖÿƒwÿàª?ðSø+lj¾1xÿãOÄÙ‹À_¿g_xGñ_Ãß~Îþ,ŸÆßâƒãË›x4¯ß|r‡Møs‡¯<5¦ß>¡/„0|MñGü47ü$ß~)~Í?þ xïÄ_ØŸµ_Ç/èßÛ¾.ñg‚µjÿÙÒ4­ LþÐÔ.>Á£éš~™kåYY[Aô}ð_öNý–?fö½oÙßöiýŸþ¶§C¨·Áƒ¾¶¡ ȳæþÎóOÓ>h³o޾YøÎ×QÓîô+ß ë_µn˜Ú_‰ôý_@Õõ=>ïOÝqôWü¿ÇŸ±oÃÏØƒö€Ö¿à é¡ß~É·¾} ⇆õƒª=׌âÕ/-“Að…-¼?}¦x–çÇ:Lj#ÓWÁÏá­KLÖôÍz-rÏWÑF•&³aùyÿÉø›ûf|fý•þ'üçö5ý™?àœÿðO½?ÃwËû4¯íMâ‹þ1xÏÁºÝæ§â _ˆ±üøw⯇‘hþñW‰µOÄ{ã_ÚUñOŒÖæÛßßiþ&°×ˆê/ìÿý¿à£ßµŠŸoüM¥j~ñ]÷ÃÏŒ¾$hMá‹¿>$é(¯ªxâ7…æö+-FÍö]WGÔuŸjoý¥†±6§£ëš~—÷UŸðl¤>,Óà¢ßðrãMsA×¼I£þÜ>‡Äš‡ƒü7©x#Àú—‹Ç?Û®ËÄÚçƒü«x·Ç—þ Ðu›ý=gÒ¼7ãoêZ.‘™£j-ñ$ÚhÕ®¿±º(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ª¦«¦hzmþ³­êV>¥YÜê:¦­ª^[éún›§ÙÄóÝß_ß]É ­¬¼×77Ç #É+ª)aü÷|hý¶ÿh¿ø)?Ä/þÉßðL™¯|'ðŸE»WÇ_Ûnú OLд­2L%Þ‡ðÚõb·½Ž}ELÐØ]iÌž-ñJG-߇‡‡ü)k{ã â%Àðý*« øìÏ9QÊr\ UlË4Ä%w =Ò…JÓÅc+Êž Jõ+ÕŠqRý¸§Æ ~i[‰Ë8_‚8SK2ñÄÎ*¯<»‚¸'«SÙÜf*ž'2ÇMK‘pÞYOŸñ6Ø\«]ƽJA~ÚÿðSÍw@øŽ?c_ØÂþÐß¶V¿5Ö—©>”–Ú·Ãï‚Imû½_Tñž¦n#ÒnüC —Q{¤^^[èœHþ5Ômïmbð¶³ÞþÁ?ðLmöo×uOÚ+ö†ñdŸ´Gí§ãö“Uñ§Åϼú®ŸàëÝJ0oô/†ñjh%¶Š+¥Ëâ©ílµ;Í6Ö; NðŸ‡æ›ÃíôìUû|ý…þ|'ÑûÅ:ͽ¬Ÿ¾*kñÁs㿈Z´[¥–ëWÔUI±Òcº’i4¯ ií•¥¤…ÊÞjRßj—¿iW•pÖ?0ÇPâ.1ViBN®S’Л«“pÚ’²tã˜gºb3zðNnž_K F)Ôý+|lá^áL×ÁŸ£v3È85£ ˆ>&æÔ)à|Jñ®tf¥R¬èT«.ðëÛGŸ(ðó+ÄÊŠ Î.Æç•iÒÂQE}Ùü¤QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEQEQEQEQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEWówÿÜðçü'öàýŒiÿØ#ökÿ‚iü[ñø—â…úo‡ÿh köý‹¼ðçRо|aøuñjéñíkñ1×YYé>&🄯­¤ÔTº";4²¾þ‘( æ»þ Gâø)ìÿþýœÿd_‰ÿðHÚ+Åž4ø'áÿh¯‰¼ûPÿÁ!ý¬¼=«[²Ùx† k«[<ˆ®­åò®nbd’¾‚ý¦mßø,•ÇÃ_é?²ükâ%·Åm[E¹±ðÇŒ¾=þ×ß°}—„|¬Ü¬±E¯^x7Á´‰oükšž]žŒþ&ðœ7—LîùmmÞ ïÜú(ó[þ û<|eý—àž³×ÂÚ>ÂKÚ1­¾#|Høú.µ¿x›S¹øÃñ£âÏŽþ/øöëXñ'…5 _Úöªúïîb»ÔtMWQÒX¶ú]Ôšu½¨_Òš( ,ø¥ð3àŸÇ++Lø×ðwágÆ 7A»žÿCÓþ)|>ð—Ä úê·º½Ò­ óS[~ÀŸ°Å½åŸìWû%ZÝÚÍÍ­Õ·ìãðv ‹kˆ$Y`¸·ž/¤°Í ª²E,l²G"«£­h Š( ÁOø*ìûV|fý·ÿ`OÛ¿ö|øñOľýŽü@š‡Ä/Ù7á÷Äý#á–§ñF _Zxš+Ï êž8ñ‡þNÞ0²ûO‚>+é~4ÕtCâ/Yiz.™«$“Nöwj/‡ßðRø*ÃÛÿÙKZøwÿØý•¾$´z/í9ñ+âÆƒŸÿiˆß &hljþ|ðOÀŸüOøcà¥ñý¨—Añ'ÄO|K¾šËÃ7—ö¶¾Ô^â{+ÏÝê(ʾüøeû7üøoðà×…ì¼ð·á7„4oøÃ6I"Ó4Ñ-m–{™ÚK­CQºe’ûVÕ¯¥ŸQÖ5[›ÍSQ¸¹¾»¸žOÀ?ø.¦ƒÿý¹¿cÚsö ýœ?à™?üJ¿|QðûIÐþ>x‡ö‘ýŠ|'ðÿVðçÃ^ø£Š´/ ë´,¼ŸÁàEÓì4ŸxcÂZ®¨·Z•¬SÛ=‹ÿJ4PâüCâíùðsöoý‹ÿd¯ðJÿÿ&ø3ðwàoìñã/Œšoí-ûøãáΗ¥|0ð†>\|K¼Ò>=þÖÿ´gÁAð²-JÎþÚïÆ¾øUû,ø‡ãÅÇÄ?h±=µ×„toxÏÀzLjZñÒh¶Wê®”Pó‡ÿÿ‚@üaÿ‚Ax·öøøcãoéþüOñ¯Á|øµ¦‹ "ÿÆ~Ð4ˆÖÞ ÓüQà„ÕµMWÂ(ðµæµ¦YjqM-Þƒ¬Gyk¨øwX¾ ©éú7mÿÉÒ¿o/Ú¯öJýª¿a/Ùþ ÓñWââüUÑ~ø{Ã?´,ÿ´ìð÷ámõ¤!øƒR³ðߎþ:èßE΃{¥ê> m;\ð‡¢Ôõ› ­KOÔ¥ðüšn©¨ÿ@ÔPóÿð§ü ö(ýÿf?Øöœÿ‚püUø{Ã-Wâõ®½ûCé¿´Gìqã†Ö:W~)üMøÇ§jÚ¯…<%ñëSø£ÜøÎÛÁ§xsÁþ+‘¯"ƒZ’âßN¸»KþŽh¢€?ÿà»ÿðLOÁXa;ÙËáÄmá¿ÄÏ|Uð§ÆÏ\ø¯ûN/ø¯Ä^ðß¼)ÿg¯t[]KUÒ´WJñæ©{¯c£k’i¾ Ò´;©4›«xæ1ûÏìãÚËÁ²ÏÁ¯…?bOø'ã?Âï…žøU¨o‹ß³æ¥ðT×¼áÂÖ¾*Ñ|aáïŠßÄÍ7áΪ,ÓSš+¿ƒ2øßÃöñjZU·„¼E%–—¯þ‘Ñ@ÇÀÏø$¿üöiøßÿ”ø'?Ãÿü{ø5ÿ–ð V:÷핦üIøà-'àŸþ$h¿¬þ7ë2ø1¯kWo¡°Õ¿h¿‰:ÇÃÝÀú?Ž`ÔÓÂÞÑüCâM,x“Äzß…± ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¼›ãÇO…³Ã}âׯèþð'†á}¬jók›¹Cg£èö1 /µ½{SxÞ/DÒ­îµ+ùƒ%µ³ìr¾ûl~ÞŸ?a‡ÿð•|RÖVñ–¹ Ðü9øIáÉ!ºñïÄ=c&km3OùÛMÑì¤Z¯Š5×KÓ”˜ ޳6£j—_?aÿÚþ 9ñ@ý­ÿà§pÞxw᎛ru€ÿ±„ú†™áÍLsézÏÄÛ‘/dšößý+RÒµŠ×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š*››{;{‹Ëˈmm-a–æêêæXà·¶·Yî.'•’(a†%i%–FXãEgv Q_ø×þ 7ÿôøk¨ÿcüEý¼?c?êþdðÿeø×ö ø#á]GζKy.bû»ã‹ Ÿ2Ý.ítò·D—Ví Q“¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùSÿƒ¹|/kãØsö#ð]ö¡«i6^/ÿ‚¨~Íž¼Õ4¨ìuÝ6×Äi=&ãPÑo¦·»†ÏV³†íî4ë©mnc·¼ŽžÞeCtßñ wì›ÿIÿ‚»âX|5ÿèv£þ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔÊøÂVžð?ƒ| a©kZ͇‚¼)áï Yk#¼‹Qñ­iá½"ÏG¶ÔµíBk(oµ«èl’ëT¼ŠÎÒ+«égž;hÄIÕQEQEQEQEQEQEQEQ_Éßüÿÿøý‰t¯ø%ßí±ûbi³'ÂMö£°ñÀŸÇñ×Eð½¶ñï^ñí%ðkáÿ‰u _ÄkZÜk­¬xCĺÖy´5 VŽñnÒÔ-,®íÀ?¬J+ùŠÿƒiÿ`oØËÿðMߨ_öÂÒfß…P~Ôº§…>(x‚ïãäþ‚ÿâÕ5Ï|PøwªËgâÝAîµM6ÚïÀòÏáfÓ´éí4Øôk›«8m#K«7÷ö´ý…?d?Û³ÂzG‚k€~øçáÿÿl·†cñ}¥ìz¯…'ñ Z|Ý焼I¢ßi^$𮣩C¥iÑ\ê~Õ´ÝA£³ʪà€}eE5_ð@/ø%Gì+û>ü ÒiŸ|ÐõÚ'Iý¥ÿnÏøwãWŒ§ŸÄþ?ð§…þ~Ô?´ì¹áÝš­éX<;i?Â?ZiãéVv×ZÝî»â‹»ë‰"ÖÖ¡?à¶ßðX#ÿÒðÂÿ…?<añ¯öñý«›a¨ÚizŠu]÷FŠüýž?à‹Z_į é¿à¯¼yÿ ý§üS"ñw…>!xëÅ6ÿ²_Â=Výíïî|ðgöuðÅÿ†¾ŸèÓE…Þ¹â/ jø–êÎ}^ÛJðõ®£.’ž‰ñ¯þÏð‡Ã Õ|SÿÑñ?ˆ¿àœ´ç†­®µ†~1ø¯kÚ/Á]w^‚fƒÂ_¿g{‹ýGàßćþ#º²¶[¾}wN¼q⠻ɓQÒu°ÚZ+ù‚ÿƒUuOÚ Wý’?o;Ú»Zñ_ˆ?iK_ø*§í¢|pÔüox×Þ'?¼9ðOöbð÷Šlu9¸‚/ìOK›H²°°Ž +KÓìm4ÝÖÓK´³¶‹…ÿ‚`iÞÿ‚üÞþÓÿ·§í£ñ‡öqðçí〲ì]yâOXþÏÿ þx@𖺿¾'|5Ó/t]+â§Æˆv~3Ó/õ[ߊzn¿‡œèZV—£Ýø_Gð˜õoE7?ðRø"_€™ªÛͦš¤ž,›ÄÖ¶÷VbÒÓNšÎYnÀ>™¢¿Žoø'^»ûGi¿ðu/íóðCö…ý§<}ûNÜüÿ‚xŦøKÄÞ-Ò4/èš.Ÿñ^ýƒ>.jÚ?ƒ~x>;x'C²×¹{¼Á¦èÚ=¤·—³ùP¤—3yQíl­"žöúéá³²‚{©á…ÿßø&ÏíGûEþÒ_ðtíÏiñößQð…¿Âø'ž¹àï†_§Ôæ„^Ö~)þÆž?Ó¼7«[³ÄIåñŒ×¿¯¬ÞúÜøÆmKGÒµ}GÃ:/‡ä@쎊ürÿ‚úxkÇ^7ÿ‚XütðÃ/ê þ |Eø¯ûü7ðŸô}SXÑoü#¬üDýºf¿Zëqê~¸µÖ­¡³:ë=ïömÄwSY}¢Þ2|Ò­øiðþ±ÿ.Yjúo‚>%Áqáð¯ÁÛY¡°ŸÅ~ øŸñãâïÅ ‰‚O<^?øyà™uu³Û}¯âÔ†9öÇý¤#O5€?µŠ+äÿØÃöFð—ìYðJÃá‡> ü[øÁ®_kš‡¾%ügøñãý{âgÅÏ‹¿uË-/O×|uãoë÷wSKwa¢èÚM†›`¶ºf“¢hú]„K<77ןXPEywÆ‚¿h¿†ž$ø7ñßáÏ„>-|)ñö?ü%_¼y¢Yø‹Âž ÿ„{_Ò¼U¡ÿjèÚ„rÚ^exCÑõ»:6û>¥¦ÙÝG‰`Fç?ÿGýŽ|=ÿÒý°¾5ÁI¿a†ZGÃ? ÿÁ=?ট³†1ÛY¤»¸?‚µß‰šßÄÏx—O°ßÐüuµÒlìmôKíìÀ?ÒÆŠóƒŸ<ñãá'Ãß õ/í‡ßþø?âg‚uB!}á_h%Ðn&H'¹†™4ÝJØÜÀ— {6#˜É}OñÇ /‰¿³.âï‹Úæ‘yrlõ={Åú—þ!ë×vº¤7ze¶¡âÛ«‹K yìôÙ,¿º¿ŒðOOØöƒøcð»àÇÆ¿ÙoàÏÄŸ…Ÿ|2ž ø;àø3M¼Ðþxbé·Ò<¤RxRÚÓþÐô‹&Ñ%²žÊÏHÓ’ÒXZÒ@²(¯óŒÿƒO¿`oØËö©øÿG°ý¤ÿfß…_,> x¯özðÿÂë/Š^ƒÆ–ž ÒüSâÚvE¤[ky Üê°øÂq]j7)q©´x£K´K‹Ñsýs|Qÿ‚ Á1¼gáVÓáoìåáÿÙCâ`Ó/ ðWÇÙ:ûZø ñkáæ¹'—6â- _ø{©èPê“i—öö·«¤xžÓZÐïÝc¹°c²HÀ?ch¯ä‹þ ½ÿ‚±~Ò_´WÅÿÚ·þ •ûiøÁ¾.üzýŽæñçƒ~9ÝEo‰þ!øáÇÄè~xãNñûÛ1ƒV×<-â_Áòè~,2^jþ$Ò+ë±GüÂÊÏÆž8ñ{ö­G/ÂÿƒšEÔÒYj~ñEy¦ÞßÚ¤wiŠàRóîà’Çáæ•âʽÒþàýƒ?àœÿaÏ _j6ÜüOøõã/:óâ‡Ç¿Ân¼câBúoµßØé2Þ\_ÜøÃmxÍ;ØE}s¨j÷!uêzµävÏkùæ/>Ìø§_(àÚË€¡Vx|ãŒ\#[ …œ-lÓšt³<Ñ{Ñ«‹|ùv\×¾ñ‡1þÇÈ<&à2L¯Ä_¤¦_S7â¼×‡Î<9ú7QÆU˳ì÷ ‰¦«åÜWã/ (ãø€ê'N¶‡ ðügÆqvÂÃ%É¡[4­ó§ìEÿÆ×<-ñÿl¯Û¿Å‘~Ð?¶‰d]RÙµGƒUðÁXÀÙº7ƒ,6 *ó\Ðá-ž±ccc¡x_Ì:ƒ4ØšÍüM¬þÍQE}VGå¼;‚X¶Œ¡T•|V&µIWÆãñuu¯ŽÌ1u/[‹¯/z¥j’ohSP¥Sà>)ø³ÆÞ1ñ3âŽ7Ì©bkáðt2œ‹&Ëp”2žá.À§ ³…øG‡ðq§—d=•Q~Ë—`©E7ωÅTÅc«âqUŠ(¢½“ó`¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ƒà¡ÿðO߇ŸðR‚¾øñ+ãíðCBð¯Åâµ§Šÿf/ˆZÃ_궇á?xBjúî¿àÏÙÝøBîÏÇ7ú•þ““os>³¤è‰¨Ã„Ö×yQ@Àïüÿþ úýž¿b/ø%ïí;ûOøöÆÿ‚ŒüUñOÃøRßÙ~øñûBx#Ç? uïøM?h_„ßoá*ð¶ðcÂzŽ©ý—§x²ïYÐþÏâ ±x“NÑõ¾Õ¤¶W?Ú×ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?;ÿjïÚÏã&‰ã!û0~à ¼3ñ×ö·Ô´­;Xñ-÷µ½OóÏì»á }nSAøûGx¿A³ÔuƹÖÚÚæëÀŸ|kuñ/â–Ÿ¨ê¶Ñø{íâGüúÖ?à‚ËûXÜ/Šÿà«_·?íIûn뚃Gw{ðOÁþ1¼ýšÿcÿ Ë$–·¦xKà¿Ã[¨õ—m:Ⰷŗþ6·×5Û [+Í^Ò-N$’èÏJÓ4ûVîÃM°±»×oãÕu»«;;{kcS‡LÓtHµ-VhcI5 ø´mHÒ#¼»i®LÒ´ÛZXÚÅúüXðßü±ÿW𦛕¥þÀ? .­aXÑ%ñ'ˆ~(øËR"(Ö%2ë>/ñö»«ÌÅTkéi M+<®îܯÄ/ø6³þ¥ñÍíï?b øNõU~Ŭü8øñ›áþ¥§Oȱ]ÛÇሚ~•s4^c0MWLÔmdE,ÖÒÉ éOÆÛ§ö$ýž|Sÿ7ÇÿÛöWøão²AÿwÆÚá'Ã?ý†ê®-¯áñ§‹´M[ì—Oð\}“Éš¢’7d‘þsþÔÿðVßÙ×ÂÚN­ñ#ösÿ‚´ÿÁ!àð·¼ ¬xƒ\øCñźÆ?ˆ_¼C¢¦£©&àÏüý²<'¨xIuÛ(ìtK /Ùãã6½mªùÚ®¯-Ô€…ðçü_öòÿ‚~îñ'üsöâø‰ñë᎑!¿¾ý„¿à¡ž*›â_µí*µÜ\xgà·í#¦éüBø¨ù,Öž±½ÐüSàÉõ˸õ/Mug Ò×êÏì«ûRx{öžð^©}'ƒüWðâÿÃýF׿¿g¯ˆécmñ/àŸf°‹QˆWM¸»Ò|AáÝjÆTÖüñÂ÷š—‚¾"ø^km{ÃzœÃíöZw{û:|eÒhÏÙóàWí  èÚŸ‡t?Žÿþ|eÑ|?­ìþÙдŸ‰þ Ðüo§hÚ¿–‘§öž™g®Ce±>Õ»QFz¬zV™©y­Å¦ØE¬ên•«Çgnš¥ö™£Üj·zF›y~±‹»› *ï]Öî´Û9¥{{cUšÖ8¤Ô.Ú` ôQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEùEûuÁA¿iÏÙCâ߇~üÿ‚fþÑ¿¶o…µ¯‡:G/þ(| Ôg³ðÖƒ¯ê>&ñ~‡uà+è¢ð'еÍ/Nðæ•â—:„$Øx§LSgQ5ÇÅßðú?Ûçþ+ûqàîïÿEÔWïü1⃹6A•åy÷Ñ—‚ø¿8ÁacG0â\ÃÄ_2¬ns]JMã1vEƹ~Q„©(µK‚ÃáÒ‚jš““—•[˜T«9ÒÎq8zr•áFL¾q¦´÷Têá§RK}g&õßCùÑÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‡Ñþß?ô_Û‹ÿwüè+ú.¢½ïøŒ~ÿÒ!xÿ‹WÇþ˜>¿Ò×/ìüÓþ‡ø¿ü!Êÿù“×úZÿ:?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿEÔQÿÀúD/ÿñjøïÿÓ×úZŸÙù§ýñøC•ÿó'¯ôµþtáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: þ‹¨£þ#€ÿôˆ^ÿâÕñßÿ¦¯ôµ?³óOúâÿð‡+ÿæO_ékðßì!ûUüfý¬þxÇÆ_ÿc‹Ÿ±n½á¯Ÿ é>øÃw-æ·â½ hzV«ÿ n–òøcÂÅt£ys£ì—#ízmÁûNO”ŸrQE~ÅY¦Mñišðÿ `¸3&ÆW\ eÙŽq›à²zJ*rÃaó. Ææ9Î.« •ÝL~;YJ¬ ¦©Â«B)Ò„*Ö–"¤U§Zp§NUÛæp¥S‹µ•¡´½¯p¯Àø:;þPQûsݳëaþϵûý_ßð_OÙßÇßµGüöàø3ð¿G¿ñŽõ‡>ñîáí&µjþ “à§Å?|l¿Ð´{ º†¯¬é/´Ý+LµI/õ=BêÚÃO†kë›xŸçÍNþ Áÿ”&þÀÿöNüwÿ««âm~ÝWóéÿ»ü\ð‡Å?ø"¿ì¥¥økP¶¸Ö~\üXøSãÝ.+”¸¹Ð,è¶Z®<­u§ê\ÙÝ„º‚d_æþ ½ð#ÆðN?ø,ßì[ÿÑðç†u}özÕ<}ð¯Âµf«áýëX¿ð­áý/ƒºÖ±«G r¤6ž?ø}oáïLѤÆž ¹Òoomo¼Aá¸o@?ºZ+’ð<ñKÁ^ø‘ðçżã¯é^*ðw‹ü5¨ÛjÚ‰<9®YèiΑ©Z<–÷–öSÅqoëz–‘ƃJ°Ôt_†^º¸ÓÑ¥FÖdÕµ mA¢øñ—ìÿ§ÿƒ|¿jŸÚ âOüçàÏü6OìñÿÅwßeø1iàý_âTþ žkBãOðö¯ð×ÀšÞ‡ñ_Fñl5¯èž;øtº…üeá{Íã]:}KN³ðÖ‡ý„~Ã?¼oñãÃþ=kíÞ³ð“âïíãköVyÙñþÍþ ðGÄñ'†Y!ŠâãÁß|oðÛâÇŸêW¯pÚ߇¾+iúæŸ2èz–“o;ÿ±ý±mooø'÷ìµûQK­ø[ñ—Ä/…âçü#I®›¥|kðí„>ø¹¤E¤Csw& ¿ŽôÝnãLÑ®æ{›]ëK“|ðOÌÀÍÿìÍÿ„ü4ÿ…£ |ÿ‚ŽþÆbÏ]\Ûi:ÿÄ;ížðåõÅÄ–ÿÛ~3øaâ_x7âwƒ|3ÑOmtÚ"üMÕ­¥€Èlæ„Ý5‡ö!ðïJø¡|?ð.‰ð›Mðvð¯Gðw†t¯†šGû=Oø¥|?Óô[Oé¾°ðÔpørÇÁÖ>‡MµðÍžZ%¶‹Œ:Tib(ü¸ÿ‚æþÊÿ³Çí=ÿÇý¯¢ø÷¡ø^9>üø«ñwá¿Ä_LÒåñÈü©øÃÃZ߆õ›ÄŽÿO]SXÑ,tJÓoì¤ñ^…©_xnI Ôc)ÇÁº³|LŸþ­û?Å™u¼R¿ ¼G”ú£Ë%ÈøgoñSÇöÿ¢‰¦%ÆÁȼŽŠ|¨´˜ì£€, €ÚšøóöÁý®µÙÃÞ ñŸû&~ØŸµ‹øÃZÔty4Øûá_†>)ø‡Â+§ØÅz5XøŸâÃÈ4üÉö-:îÖóQšâú9a{hQ|Óö|yû`þ×Z‡ìáïøƒOý“?lOÚÅüa­j:<šì}ð¯ÃüCáÓìb½ÇŒ¬|OñáäN‹~dûwky¨Íq}°½´(¾iø#þIâ_úCWüëÿ á7ÿDÍðúOÿÒ¿à·_øˆ_ ¿ú&hÿ‡Òx—þÕÿºÿÄBøMÿÑ3Gü>“Ä¿ô†¯ø-×þ"Âoþ‰š»¦ÿÁfê ÿÓ¯ëö¿/ØßþW$ÿ‚±Ù€|8ÿÔþ §_ÔGí9¥|×gß‹Ú쯭øÃ?´FµàmoHøEâo‰÷Z½Ÿ|5ãNÜØØx‹]¹Ð¼7ãJ5ÐÒyµ]F«à?Ù`ÜiÞ/ñ*ªÝÙj´u¨¯t¿~Ï>4Ñ5/æ÷þ Ïÿ+€Á]ìÑ5ýH?`Šý©øàÏø+_ìóð—À¾~ËŸðLM?Át4M'ûCöæý¬5kTœË5ö³â_jòÁ>cŸ^ñ‹uÛÍOÅ0ñâCÄ~(Ö5}wQy/µ ‰ù—ý„õÿÛêø:þ u©øáGìª~Ó÷?³©Äßx³ö‚øÑ üÑ<0u¿ØÀË{àOŠz?ìÍâOˆ^(×–h|±é~ ø;á =âÔ¼O#kú.•¾ýlÿÁ[|ñoâOìAâ | øk©ü_ø§kûA~Ã>4ðÏÃ&þßG¹ñ, ?nŸÙ¿âF¿ƹy Í—‡´;Ã>ÖuÄ—ÖóØxsBÓõnú-,&CSÅŸ³gü[ÅÕü_¥ÿÁFï~|w›N¿Ô|9ð×Á?³·ìýªþÇúN·,7O„üG¦üBøcãÚÅšŸu-¾‘ªøÛHý <ªë¶öŸð‘Øø'Ã2ÜÉáxþ/ÿ‚ÃÁG¿à¤?°Ý¿ìàïØçö1ð‡íMñ³ö˜×¼i¦ü\ðŽ‡¢üWø øZóáÞ…ðãU×<7àKïËà rÖË\oøº÷Lø£ã×Cð׆|yâø:e¼ƒMýõÓg¼¹Ó¬.u ìËû‹+Yï´ß´Å{ýŸy,ÉscöÈÃwöI™íþÓ ¬Sù~l`#@?ðFø*üŸðS…ÿƒÿ ñgpí'ñ߈O‹þþ˼ˆ³­Ý´Ú¥¯Ç/‹²†X.4?üøi¨ÄgSÌÌí[oÿtÿƒœ¾~Õ]ÇàßÙ?þ ¥á >|_Ô¯.ßGðn‘ñ'Q¼ð÷ƒü[«j—÷Þf‘e‡>#Úüø½â^MišW|b$ŸIÒî.n$þ§¿b 6ïÄß|YûLøƒL»Ó|[û_xÖçãµÔ£Xu=#á5Æ•¦xOöqðÍÕ™U—D»Ó~øsÀ:ÏŠ<9&ÖÓ>$ø“Ç×7®¥©ê/ ò™ÿ—ÿ•¶ÿà°ÿöB>;êùý«û…¯áëþ /ÿ+mÿÁaÿì„|vÿÕóûW÷ @çÿš~Òß¿g‹?ðVÏøOü9û@xƒþˆŸ³¿öOü(¿Ù;ö§ý¨>Éÿÿ‰kO·ÿÂSÿ Ñðoâßü ÿhþÛ³þÄÿ„×þÿøI¼_þ¿í_øGõïìßë¿âüL±ðÆ©oû7þÆßðP_Ú;âíÖ™x<àÏØcö«ýš¼)¨x¼»m&ü`ý¬>üøqàÿµõÄjú±×5]FÇJŽúöËDÔ¥¶û+ÿ2ðfü•Ÿø,¯ý”OÙoÿR_Û.¿»Šþi¿à¿ðFа7‰ÿhÏÛOöÃÖ|/ªþÚÿµæ§¯\ø«Âþ ¼‹Yð·Âø§ÆóüFñ'…àñ:Ox“Æ0þÈÕ¼U6=߇´Èü/áí7EÔu†ŠÿX¾ï~þÞßÿࣟðP?ø(ìSáOþÓ¿°æ•û x¾çÂ:gŒ¾|*ýžüAÿ +Ä—>x·Æ´§ÁߎZE„ž;»·o|5ðLJ~x}u†2C¯Câ½ZD–êOÝoŒ?<ð+áÅ?ßïfÓ~üøs㊞9Ôm 7ø{áOÅÞ&½·¶2D.&µÑt‹Ùâ€Ë–HÖ3"nÜ?—?ø&oí#ÿÿ‚ùë?iï~Ðþ<ý„àž>ø«¬ü-øUð;öeO h>,ëF…¢kw÷Ÿ?h@ñм?§xMñ‡Æ§?Ë_Zø‡XÖõ½Hm E®\}û;ÿÁD?iï€ðV—ÿ‚=þÜ>#ð‡Ç-KâßÂϲíGá_iŸ ¼_ã?éúõ=WÁ?>h&/ÿÂWakð¿âRÁ⇶>Ò®_Áþ|¾ŠG†¡:þ&¾*üðÀø;ïþ iàßx¿ãa¿ýŠ>+x›ZÖ>6|yø¿ûAx¹uíWá§üV‹[Oüdñ¿Ž5 x}l,4ë;À^¸ðÿô‰®¯umÃ67úö¯{¨ÿd¿ >)xã‡5/|:×á"ðþ‘ñâÏÂÝCPþÌÖ4³øïàwÅ?|ø¥¡}—]ÓôËÙáø›ðÿÅÞþÓ‚Ú][þÈþÙðî¡«ø~ÿLÕo@=Š( Š( Š( Š( Š( Š+æ/Ú¿ö¾øûü0»ø§ñÓÅ‘èZYk‹O øvÁb¾ñ‡ŽuÈmÍÂxÁúž 5=A×a¸¸škM#JŠT»Öµ-6È›‘ÍÆá2ì-|v?GƒÂÓ•\F'R4¨Ñ§çR¤ÚŒVÉ]ݶ¢“m'îp× ñgÙO p¦K™ñç¸ÚY~O’dø:øüÏ2Æ×mSÃá0˜xT­Z£JR—,yiÓŒêÔq§ Ê>Õñ â'¾ø/Ä_~%x«DðOü'¦Ï«x‹Äþ!¾‡OÒ´»Ý$ÓÊA’i¤)oggËyy,V6÷wÁ'óÇâÿŒ_µ/ü£ÄºÏÂÙ†O~οðO]#U¸ðÿÅOú½…ΛãOðÅ#A«øSÂv$3>•}a&Ù<3 E½¼ËsñT‹íö–ÿÃïÙÃöœÿ‚ÁxßAø÷ûoÙx‡àgìK¢_îüý’´m_SÒu߈ð M§x¯â£:n£ö JÊaøŽX4ÝwQ°–òßÀzo‚ô½DøVþ‡<àï |>ð¾…àŸøoDð‡ƒü1¦ÛhþðLJ4ÛMCÑ4»DÙma¦i–1AiimçlpÄ ±gl»³Ïys_5¨±™Ïj_½ÁçœWIýª¿|Ÿ!®´T—³Ì³*-º ‡ª£Sû ÛðÑÑÂK‡ þÈ¿ ô¯„ŸügáO Øl¸Ô¯ŽëÄ~,ÖŒ) ׉|a®˜£º×µëÅVK«€–ö–é¥ZiúU¥…¿ÐtQ_¡á0˜\†‡£…Âa©ÆŽ ‡§ThÒ‚´)Ó§Â1Z%‘üqŸñyÅyÖiÄœM›æYÿgxÚùŽoføÊù†g™c±3u+âñ¸ÜTêWÄW«'yT©9Kd¬’H¢Š+ òŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf¿"àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( ¾sý°þ4ÞþÍ¿²GíKûDé–êš—À?ÙÏãwÆ?Lš14:ïÂφ~'ñÍ¥„±íD±ÞO¡Gnñ›«`ë!S< ù‹ôer^>ð?†~&øÆ¿ ¼i§.±àïˆ^ñüY¤¼’Bš§†|Y£Þh:îœòÂÉ,K{¥ßÝ[4‘:È‚RÈÊÀü~~ÖŸðoOìû?þÃ>4ý­kâíEûZè~<øñëö¾ý¢|qñ{â͵ç‹ti¿hO„þ$ý°¬t øÆžð¾•á|(›â¿‡´Í^]Rñ§„ô=F?èšÚø“GÒn-¿A|Eÿ¸ÿÁ%¶Ñ|Gðoöh´øqãêzoŠ|-®ê~2|lðµ{§M ýŽ‹ñá§ÆO‰~:ðŽ>ë†%±ñ>‰kƒ¬êZåäzŠü;«5†·aß~ÊðNŸø(·ñïöÉðïíñûlxCö¯ý€>:~Î÷¿³ßÃo6ú>­¦ëÖúmýމàÃâ_xkPðÄð«ÿ ÒÇÄš?Š`ð‡‰¼aiñÄÞ6»ñ.³“'‡´Ëk¯Ï?üÿƒ¡?cWNý‚¿gþÌ_¿cÝ>æÓÀÿnïŽ#Ãú‡Å߀?–Si {ÁÒ|Pð§ˆxÃáÃ‡ß 4«ýGTÒþø#žÓu=bTŸVÔl<% Øhwú¤ñ¤qͨÞ[éñÜ^Ëq¤—2Jꈤ(í袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5+?ðvö±áߨöñ—¡Þø£Sпàªß³F±§xkMbºˆoôÏ„Ÿ´•í¦‡`‚·ºµÄØZ°‚b'¸ŒˆdÆÆ÷ø}íóÿHý¸¿ðwwÿ΂¿SðçÁ6|2Ò¾x[ã_ìñSÅM$>5×g¯êo xÌ]Ló\ëÿ ~ ü=žî+JŠ95^âûÐáÞÿ>:júÿÁBkû¿Ú³á·†µ}+Äv³OÃ_‚ìËû3ø³Äš¡©áý[ãƒmüuñ{âWÆ S°Ó5›xÓã ß›ÍrÌj:ÿ€5¸ãÓ­4߇ÿáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: ?âO|xÿ¡?‡ÿø½<ÿ长¾ðÿX2¿ùù‹ÿÃfiÿÌ~kï?¢êã>"|:ðÅßx«á—Å/xgâÿh·žñ‚ƒ—öø÷ñÂÍ|9ûw~Úš¿íð¶V—þ€~ i_²wÁ‰v®¾RèŸb±øñƒã'޼$ÏÃõøÓ¢xÆ"{Ý;Ç^ñ?†®‡‡¡ø;þGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óú!ÓtÝ;FÓ¬4"ÂËJÒt«+]7KÒôÛX,tí7N±‚;[+ +Xâ¶³²³¶Š+{[[x£‚ÞãŠ(Ò4UÏWìkÿ ¿ÿ‚sü0ðžû Á@>>üø>‘µÍÁ>ø¹ð'ö…ñh{ÉÆúïìçãÙ/m~kšDW6º‡/~|HðÖ³„t}'Fñ^¹ã;ôÔ5ÍFŸü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çÒŸà™_´·í‹¦éß ¿à ¿·ÊüfýšSWѵ¯þÎ?³gìÛmû&xSã3xSƒZÒü?ñ“Æwÿ>>üHñ‚†«iew¨xSÂ(ðž¦Ö6ow3Ý[Cuì‡ü?¡xO@Ðü+á}Lðï†|3¤i¾ðï‡ôKm3Fд-Ê ;HÑô6Î8m4ý3LÓí­ì¬,maŠÚÒÖ ‚4Š5QüôÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×ÞEÔWó£ÿ£ý¾é¿·þîÿùÐQÿ£ý¾é¿·þîÿùÐQÿ{ãÇý ü?ÿÅéàGÿL¯5÷‡úÁ•ÿÏÌ_þ3Oþcó_yýQ_Îü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çô]E:?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷ŸÑu|ãûFø#ö£ñ¶á»_Ùwö‚øYû?k–:åÇŠµŠ_³–­ûEØø‡I’Õ#±Ót­Iøóðü7wixê}NmS_KÈYmWO´(n_ñþGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óξÁ ?o¯„ßðPŒðS-þ Ñð×Sý¦>;ø†Ÿå×ÿàœV7Ö¼ eaðËLÓ|=oáM3öÆÒdÒ¡Ól¾ü?†ÖûMÕ­µfþÄi.ïÔçú"ø/ |]ð¿ÃO è_þ%xCâ÷ÅkíøJ¾"xá}çÁŸ x‡í:þ«y¡ÿe|5Ô>"|X»ðßöO‡.4}ûÎñþ¿ý±©i—šüÙQj‰¢éß„_ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷Ÿ¹<1ñ×ÅÞŸGý~.øàćÕtÛ‹|Fø5¨|wðÜ4!ÕtÇð™ñ_àÍÌ÷ºŠ4IiªÅšcw}3PóBÇüô|ÿ‚þÝ?à ?ÿà¥>ÿ‚®|.½ý£¿h/ jžøžž ÿ‚qZÞ|>Õü#©Üü?»]ÇÂö¶V—w£Ç§Oð»Àïc¦ëvúà —QÔo×RÕEï§ÿÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ~Èügý˜´Ú?àß„>|hñ>´|àëŸøËÃß> >xóÀ?ü+¦5¬_>I=ïŒÛÀZ«]^kqÃáÍVûƺï…5ícÀ5‡ÆþÖ5ý;Yø‹â/ì7ÿø½àÝà÷Ž¿à¬—º?Â/éÓx{ľ!øCûü=ø[ûRjž½hàÕlm~9AñWÄ?ü/­jÚI¼°¸ñ7‚go j3]‹í 4‰ H[ä¿ø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏØoØÏö.ý?`O€žý›¿eÿÚxំf¼Ôä‡Ï—RñмOª-ºë~4ñ·ˆn³¨x›ÅºÐ´³Š÷V¾säiö:^‰¥Á§h>‘¥XýQ_Îü>öùÿ¤ þÜ_ø;»ÿçAGü>öùÿ¤ þÜ_ø;»ÿçAGüIïô'ðÿÿ§ý2¼×ÞëWÿ?1ølÍ?ùÍ}çîÏÆßü_ñgÂÿø{à/Å |ø³©G¥'„þ&xÛátÿ<3ávƒ]Ó.µ©µ†–ÿ>IâY5/Á«èÚp>9Ñ¡Ò5MFË^¸‹Y·Òåе?ÄÙ·þ OÿDý›¿h´Ÿÿ”ð‡ÄmSöŸñæ‡ñãoƒ~!ÿÁ:´+ÿ ëÚç†ü9¦ø#ÃÒøgû+ö³Òu¿ÿÂ9à EðV‡o jÑiI¡è>‡[ÒµÖѬÊâÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ}íÿEÿ‚[üÿ‚¨ü3ø)ðÏã.§7‡ì~ ~Ðß¾6[jÖ¶µ¨ëžðõÜÖ_þ9ŸQÓ³´Š~ ¾¿ðýÞ«æjèZ¼>ñ<ÚˆNwö/ÇŸüyñOÃû]öføÁðïà'-µ­2aâÿˆムã|T(ÿ‚rÙêÖôøÁþ+Ôt›/ iß¶>q¢Ãe¬ø ÂSi—zV±kªG-ïoÕ÷÷7ãÂÿۃŠ~xwà§íuðgàÿÅ=Ã)¦übø™âÙRøµ¡üEñ;xH±¸ñ?€~7í1à8þ[ÂEo®x‚ËÃúß‹>,AogªiÚÝþ¢º<ú–±ù3ÿ£ý¾é¿·þîÿùÐQÿ£ý¾é¿·þîÿùÐQÿ{ãÇý ü?ÿÅéàGÿL¯5÷‡úÁ•ÿÏÌ_þ3Oþcó_yâðNø7÷öÑÿ‚[ø£ã·Š¿f¯ø*—à Fïö›ÂW¿,>(Á:‡Š4Ý[Vð=ï/ü9«iË£~Ùþ¿Ñnìæø…âå’ßN¿‡K»UUºÓ¥k 9í?¨ßY´ÐôkOjvZ߈-t­:ß]ÖtÝ*M NÕõ˜láSÔì49u=j]ÊþõgºµÒ¤Ö5i4è%ŽÍõ;ö„ÝKüóÃèÿoŸú@¯íÅÿƒ»¿þtÃèÿoŸú@¯íÅÿƒ»¿þtÄžøñÿBÿñzxÿÓ+Í}áþ°eóóÿ†ÌÓÿ˜ü×Þ~ÿüAðƒþ*ø Æÿ þ!è6^*ðÄx—À^9ð¾¥çgx“Áþ0ѯ|=âmÿìÒÁqö-cEÔotû¯"xfò.$ò¥ö¸ü–ÿ‚{Á(<[ÿ·Òþ&ü'ý‘ÿj(ï?eÿˆ?5/ŠzGÁ¿ÚàÍÏÅ_ü6ñnµaáíYƒÁ_üñàìÍáCGðõ£èž&ðgˆnc»³°ÕÓV:¤¾%¹ñGÍ?ðú?Ûçþ+ûqàîïÿðú?Ûçþ+ûqàîïÿñ'¾<ПÃÿü^žôÊó_x¬_üüÅÿá³4ÿæ?5÷žËûIÁî¾-~Ö¿³¯ü/áíQ«üýºþøƒÅ·š¿Æ/| Ѿ/xâ_‚ügá)<wðËSøJž7øsÿǃ¼1àËÿøcÀø{Æñ_éV,ñ>µâk¿øëW¸ñ‘ý_ýž¾ h¿³ÏÂᆭj¾(–ß^øãx»]‡N¶Ö|mñ+â÷ÄOü^ø±ã­NËG´°ÑôëßüNñ׋¼Wq¥iVšV•&°tí6Þ+X#_ÿø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏ躊þtáô·Ïý WöâÿÁÝßÿ: ?áô·Ïý WöâÿÁÝßÿ: ?âO|xÿ¡?‡ÿø½<ÿ长¾ðÿX2¿ùù‹ÿÃfiÿÌ~kï?¢ê+ùÑÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‡Ñþß?ô_Û‹ÿwüè(ÿ‰=ñãþ„þÿâôð#ÿ¦WšûÃý`Êÿçæ/ÿ ™§ÿ1ù¯¼þ‹¨¯çGþGû|ÿÒn/üÝÿó £þGû|ÿÒn/üÝÿó £þ$÷Çúøÿ‹ÓÀþ™^kïõƒ+ÿŸ˜¿ü6fŸüÇæ¾óú.¢¿ø}íóÿHý¸¿ðwwÿ΂ø}íóÿHý¸¿ðwwÿ΂ø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏ躊þtáô·Ïý WöâÿÁÝßÿ: øŸâGüSûküa—Ƴ÷ì—ÿ¶øÛ¥~ÒvQêV:Œ­ÉñwVøo™rš~½¨Þxà í¢M[F¼š=:I|M¨Ûé³$kZv¡1þË—‹ôLñÇMJ®Sáô«U掼zðž']Gš8l$q>(P§R½Mc*°Šº”ç^Kéø_>,ÆÎ†9…»ì+çüAW‡8¯’ð¶UV´iUÏ8жKæ¸ÌS„Ru+×¥‚Ä×”`éápøœD©ÑŸîçíóÿ+ø]ûiútM.óã7íAã´ŠÇáoÀ¥Æ©â CRÔq•«x½t¸®ï4Ks,+em¼þ#ñDÍöOi—ðêÚ¾‹ò—ì›ÿÔøñ{âVûkÁPµ«o‹n~Ë©|8ø7‘uð·àFž.?´´ë ôXg»Ñ5MoM™¢6Ú ©½ðþyúž¯¨øÓÄ·k«i?¿°÷ƯÚ×öMñ‰¾5|@ÿ‚#þß´í[ãÛ½BûÆ_ü}{zº¬ ©ÈæîËÁºUïÃv_ ÇunÉiªj«_kZ¬›Ay§è…múwÿ£ý¾é¿·þîÿùÐWÅá>ƒ¿H¾#ÆQÎxÓ"ðî 5U['á ~=x ‰ËòùÅÞž;9«OÄ·C7Î"št¢¹òì½·õX×®þ´MqÒÃ_8s2ðÛèË™føÌÓ<ÀK,ñ#éáÌï&âî1ÃW§ãxWÃL//¥šøuáÕY7 mYºeÆ1PþÜ­–epŽE/躊þtáô·Ïý WöâÿÁÝßÿ: æ¼eÿÖý²¾øOÄ~<øƒÿ?ý¯ü àè×þ"ñgŒ|_ãh<7áo hU¼—š¦·â XøSg¥húNi—7ÚŽ¡woiko,ó")aúüIïô'ðÿÿ§ý2¼×Þ¬_üüÅÿá³4ÿæ?5÷ŸÒüV¿ü_ðb;õÓ›ö7œÎÑ|Ôý¬¾IbÌŽ0§SÁ/¦ ”^,ÁäòÌqÊñÇ­ÁæŸt "Žûö6¼¦ß°è¿µ_Ã_F<½›¼Ù|;àmR(3¼lóž?3åîØûOø“ß?èOáÿþ/O?úey¯¼?Ö ¯þ~bÿðÙšóšûÏíZŠþF¿gŸø:oĵ®¿ªxOödÿ‚b|cøñâÝB›Åׄþ|nðߌ ðGöíð‡ÅgöÔ2|8ÐQÿá%Ö4M?ÂvukMº¶¿bãÏ*-¦þÆ?d/ù4ßÙþÍßà§þ«_ ×ã¾!xmžgX^ã,6O…Í1™] â…<“‹8KŒp²Àb1XÜ)ÔÌø7<ÏòʇˆËñJx øÊXúT£KW >+ V·¡„ÆPÆÓ•\<ªJ›¦ÝJðòæQŒ¡ˆ¥JmrÎ-IEÁ¶Ò“q’_DQEð‡PQEð¯ü‹öÓ²ý€ÿd/‰Ÿ´\> ½øã­2O øàÏÂM)o¤Ö~-|mø“â ?Á þiVúU¥þ­s&µâ}^ÒmF-*ÊïS] ÇV¸°¶žê¢ã·Zý‚?àðß^._Ú‹Uý¯ÿáOøÒþäø›JýŸô_Úy|áE8ŠóOð“|ðf‘¯|¿¶Òà–=(ZøÏTñÝѲ•üM¬êº„×:ïõQÿ0Òtý{âŸü?FÕíþÛ¥OÿTð­q`òΖ×:‡ƒcÛgÇ~¸ºŠ#[ŸìOx_þ$±Š2õmN»1´–Ñ‘ú©@“ßðH¯Ûsãíuð/Ç> ý°~ÉðOöåý”~ /ÁÚ§á»ÚÅeeqâoøG4ø7â—† ³ž÷Kÿ„Câ·„u{OhóhºŽ¡ Üß[kSøjêç²h7·¬5ùÛð›FÓ4ø*ŸíÏ>™j¶rx£ö ÿ‚jx«_ò¤—ËÔüF~2ÿÁNüÚÌð¼ ßÉáøSD–x’6–Ã@Ó"—y¶F¯¾üA­Ùøk@×Gï¾Ççy_>Úéã®OúÄOþf*þ¡¨®WÀŸð˜ÿÂàßøXŸØ¿ð°?áð÷ü'_ðŽyÿðÂcý‘gÿ ?öÚ¿Ò¿±¶þÝý—öŸßý‡Èó¿yººª(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+'^×ô? èš·‰|M¬ižðÝêÚÞ»­_[išF‘¥Ø@÷7ÚŽ§¨ÞË ¥••¥¼rOsus,pÃ3ÈêªMyoÇÿÚáìÁðÃÄþ6xËMð_‚|= 2ÝÞ?™¨júŒˆíe xsIˆµö½âMãhôý#N†k™¶Ë<‚+;{«˜?4ï þÔßð[ïéÞ)ø‰Šÿf/ø&^¬Å©x_À¶Ó?âWí ºMÚ5®©­\«´M¤\OÜE©ùW^ðóÅŸ†l¼YâK+¯Xü§qD2ªôrœ³ <ë‰q´Üð96¢ƒ§Fü0Í1-JnWJzOY9Õ—îp”«Ö¼ô„>b¸÷,Ì|Bã|ÿá—‚<1‹ŽŠÏëàþÉa:8¾6ã¼~9ár,¶qÃåôöŽÊråEN—â¿íƒûJÁS~ x¯ö[ÿ‚tÜj_ g= þOüxý´µ;[Ý>ý5ÁRðçÃ6Ao¨Gý«i*¾›=Œ|G°Ü\Üx+«ê?®_±§ìIð+öø[mð×àLJü»«Ä´¸ñ¿uˆínþÛÿðtwüæïÃ??dÿÙ{àüÏöt×­5ˈ_´RiúµÅÞ¥¢j²\I¨Üi>6Ñ5ÿ‹Ú¥¦£dö¾Ñ5o~Ïø3R½´ÖnοÚ.9 ÔÂãĸçÖå¿Ôt÷ºø£ðïÄoéKâb÷YƒÀß ´K;‡Ó´/Ûjž>:|w>Ó~Äþo5~$ÿÁÏ´gíiñ'ÆŸ?à‡¿ðOÏþ×^'ðï…o®>6üRÑüaÿ æ ê©¶¡y®ü2Ñ/~k>¶¾×g¸Ñ4øëâç„`)¤ê½Æul²ÛÙñžÿƒxÿà£ðRïˆÞøÕÿÜýµõoÃþñŠgðwì·ðMô{ÍÛÃÚóÚ_]#ÆZ мðÒÛP¾Š2kmÁ>5ñV£á½I†ÿÆ:mÔpGgý~ü ýŸ~ þÌ |-ðàÃ|'ømàÍÃ@ðÿ…¼¥C§Z[iÚjËös{v|ÝK[Ôešâî÷PÖµËÝGZÕµ+ÛýSTÔ/5+ûË©ýŠ€?>Á¼?ðG‡^Õ|%kû ü(ñnŸ¬ZxBÎ}Gâ:§|Qkƒl®-­%Ò¼_¬êx›H»×/oõ-cÅ÷zn«mqâ«ÛË{=jK­ÃþÑtUø7ÿ@ÿ‚Jüñ$^/øgûþ϶^%µ¿S°ÕüYዯ‰·ZUüV÷vÑÜh¿ð³µÅ¢2E{;*é1ÙF'[k­Ÿj²³šÕ*(ùÿ‚¤ÿÁº_`ø{ûtÁ<ÿ SûNè¾ð…_àÀ9ôŸÙ¿áÇ-,õx¬üGªxwÄ~ Ôü!áïÞêÞE›Å ¿Ò€ü}7†$½×={[Ô®µM¿ø*ïüqû3xëRý©àˆ>øµƒt«Kïøëà?Æ­ èèú‘öø‚ëBøy­~Ð ks©-þ°òXYYYhK:YË “Bÿ×EüöÁ8àåoø''íýa£øg_ñöû)|x¸Òµ]OYøKñÓÄZ~‡ Æ4ÝPYG„~1j¶¾ð'Œîu )ìõ;M!$Ñ|Tеø>òtÉîŸôÿþOÿéÿ„¯þOøo¯Ø«þ´ýþßøjŸð•ý¯ìÿlû/ü#ßðÿký§ìŸé^GØüß³þÿo•óW€þÓðDoø%Oí…ã+ïˆ_´ì]ðÃÅ>8Õ,#ÓµOøcPñÏÂmkUŠ+éõuªß|ñg€åÔµwº¹›ÏׯƷqlËcq¨Kevéòæ±ÿÁÁõ?Ýø&Ïö*¶ðý¼úίmâMãí/4ÝJæÂ8ËiâsâÖµ©ÜéÐAMmáZMOÂpß™µ1 BââæPÞ ^ÐüM¥YkÞÖt¯èz”m6¬èzž­¥_Â’<--–£a5ÅÔk4rDÏÒ(’7BC#«_Èž›ÿœxá^ƒªxSö\ÿ‚¯ÿÁC?gï \ÂA¥xWGñ­¬ž°ñ¥ Ë¥kú7€5…:¬vwÁõØ"‹LÔ¼Eoi-¼:Þ‡-ÄWv4~Í¿·_íóÿ!ý·õ؃þ âÿÚöÀýŒ¾5xûà§ÃÙŸöõñåž¹oàßnÏSŽÿUïˆn¼ou©­¼ºåŽñ;᦭ñ3Xñ,|7Šü7±áëí=¼RýÁÑUìï-5 K[û «kë ëh/,¯lçŠæÒòÒæ%šÚêÖæxn-®!t– âwŠXd™b€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯ƒà¡ÿðñoøR¾ÿ‡dÿÃ9ÿÂùÿ…£¢ÿÂ[ÿ ;ÿ /ü _ð¨¿áñ·ö÷öGü"ßñ0ÿ„¿þ/ø@~Áç¡ÿcoùŸ¿û=~yÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5üRÿÁoÿâ"¿øuïí;ÿ Ûÿæÿ†Tÿ‹-ÿ Oþ?ü,¯øZßòpß ¿áÿ„Wþø”ÉGÿ„Cûsíó-ÿlyé>Mk_²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?Ÿø8{À¿µ?ÄÏ„ßðNŸþÄßtï…?µ'ˆÿà§ÿ ¬þ|GÖu)4ÁºÌ_²¯í‹y¬kšíä>ñt§A´ðµ¶¼u»8¼+âI5-)¯4ÔÐõV»3þfÿùÿàðúK§ì‰ÿƒô×ôÍû`|GøQðûÇÿ°EÄï†VuO‰_¶ÞðãὬ¦>|WÔfoÚwÄzwÄÛHä‚eÖ/äðw…ümðÚ×Fl÷ñÜÅ9–Ñ-î>Û á/ÄÿðEŸø:§ÅŸ5Ÿ‹×ßðVoÙßHøâ/x/Ὲ#êÚ6ðóǚ-¯ü?¢ø3Ŷ»cys•¥æ¦èwך¥Õ乊ÒÚâÊážæ@c‚'i_åC@ÿÁ'å_ðM?û0ØßÿY×áÍ}ÿ_+þÂÞ1ðÄOØ“ö:øð§áä?¾xëöWýžücðÛáE¶¡ý­oðÇÀ>'øIáoÁß-õS±Ôáð_‡o´ï Ũk¶G¦­Ï‘™å¯ÕQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_þÝðP‚_°§‚­uÜ\xÃ⯋#6ÿ >øZE¹ñ×õYî>ÃfékWRh~[óä_x–þÙàó#›OÑmuÏ5¦‰wóí×ÿ=O„2‡öPý¼"ÿ´gí½ãF‹àO[gà n®bY›Wøwmukkæ§™uyt µ-> N€ëÞ7Õ<9 ,êPþÂÿðL9>øÖ_ÚÓöÇñoü4Oí·âÙŽ³¨x¿\™µ |)–xDPhŸína†Ñµ-&ÐÿgÃâ+}?N³Ñ¬Âè~ Òô]&Þ[­_à³>$Ì3\v#‡x5Q¯ÃÏØçC^¶OíÛÚRI5Ó;Œ]éet§ìèMƦcR•8ÊOë>ðW„x …²¾’Ó̲¾Íðë3ðçÁ쯲ßüe„nð˜ùJ¤'_|.­Z‡c°ï›a¡_ Á˜,ÃVža„ùãàìñßöèø¢~Ù?ðT¶—û6Òáuß±m´·v¾ø}£¼©q¥ÏñHyÍ»™#·½¿ð­Ô·Æ»*Z'Ä]DÙÅwðþÓþ Ïÿ ~Å?ðM߃^.ðgÁ¿‰¿ >3~×s|=Šoß< oyã¯h×·ÓÝøÃÚ×Äïø÷Oð—†|%á™´ùµ-CÀÑøÛCñYZZhZeޝk¯Z~rÿÁS¿o?Úþ …ûsxkþ±ÿêÖ?h„?€?h Sáïíßû[|:Š÷þ­ÁW_ µ›Oø2ïTðž¥Ðh:]œ¿4]sþ9ÖüŒ>$ü?Ñ4jSÆ—–«¿ðMßø7_þ ËÿçO xßEøkÇÚGÃÚv©e}ûAü]“TÖ/®$Õ/í¯¾Ñá…×:Þ¥ð³À÷:bÙ[ZhÚæá¹|meho`—Å÷QjW‘Éîðÿ åü=B´pζ+¨«æ™¾6~ß3ÍqV³¯ŒÄ4›ŒnãC ISÂái¿g‡£N7Oò¿¼kâÿóL¶¦u»!áNÂK)à?øc ò¾à,‰ÍJ9_dќ㠵œaW5Îqµ1yæ{‹×3ŒÇ]BPüâÿ‚DÿÁo9/´¨ âþ gû^~ÐÿðB¯Ú#ÁðGoø)ͯß…ß²ç‹5Þ?ý–?l¯|Fðæ™áMGÁ°kKáM7U××Å7~ð„µíWÃÞ*ÕHñÝæ‡ã? ø‹Ç¾ѵm+OÐõm úïûnÑõ'Ä:N—¯è¦®hZæe¬hºÖ{m©é:Æ“©ÛE{§jš^¥e,öz†¨YÏ Ý•í¤Ó[]ÛMðK$R#ŸÎø*7üóövÿ‚¡þÏ^(ø]ñ{ÁÞŸâ~àoˆ:oìùñvþ ƒ®|ñ÷‹tý2K?é“Z–’m"ç]ð×…›ÅzKÁqý±¡é÷6æÖêX®áþY¿cÿø-§Å¯ø!_ů‹ŸðKßø,V³ã‹þý>üÐ?e¿‰Ÿüá¯ÃÃë_ ;H¹¹Ö®¼â?øwPð¶³á«kšõÝÞ­á‰ü «øSR²Šà¯ÙÀ?¼š+øëøiÿVÿƒŽà vº¯ÄÏØ þ ¯û:ü)ý—µ¿xºÃáÏÅŸÚ·SÖ4kÚ‘¬Ì|?«Ùé:¯ÆŸ‡—º›_é)—©jÞø]ã7ˆãÖ¬¬|O šlËj|zý´àëߨ¿á׈>9|Tý‘`¿Úá§„WG¼ñžð_Eø™ãèúÄ+w¬kZw‡¼+ñcEñ;Úh9m?ÄZ´>ñM–ˆmsû2ïÃvwzÜ@Ø¥ùßÿÁÿ‚’|ÿ‚§~ËÖ´ÇÁÆ~ ´Ó¼g®|-ø…àOÚi¾&ð?Äÿ é^Õ¼Iáë†Ñ5jÂûN6'Ñ5SûM¥î¡ êúmÖ©£hZœ—š=—è…QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQE~ ÿÁ|¿à›ÿà§¿±÷Ã?ƒŸ³¿ÄMá§ÄŸ„ߴh{-sY¼Õ´ëëË|<øµà»­/Áú–•-˜°ñ¿ŸñÏVðÔÚ®¯áí[Ý$Új>%ðôW#W´þWü7ÿþxÒ-oIðGÇø-ÿí]û!|LÖ$šo‚¿ißÙ¯ÆÒuýL*ïÒ¼ñ£Iý¼¼Oû<üQÕwyŒ4O†ß1Ô‡ƒjo[‘à½ÅŸï3%ÝÆ· OökpÑÿø$ïü¢Ëþ §ÿfûÿë:ü9¯¿ëŽøwâŸxãáÿ|kðâöÃRø{ãxgÅ>Ôt«9tí2ÿÁž Ñluo Þéº|öÖSØØ]hwv3ÙÙÍgi-µ¼‘Ã%´†$ìh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+‚øñGáçÁxƒâWÅ_h~ð'…¬¤Ô5ßø†õ,´û(|‘©!§¼½º“m¾Ÿ¦XÃs©jW’Ce§Ú\ÝÍ/Z´¨R©Z½JthÒ„ªU«Vq§J•8EÊu*T›P„!å)ɨÆ)¶ÒG^ŽÍqØ<³+Ábó,Ë0ÄÐÁ`2ü¶3ŽÆbªÆŽ ƒÂaáR¾'ˆ­8R¡B9Õ«Vq§N”’}½Å޼÷wsÃkkk ·77¤ööð#K4óÍ+,pà jÒK,Œ©+;°PHüý¡¿à ßÿm_Š:ßìaÿ®Û}5ª;ãgí”Ò\Áà†:=Ü——‹àoÚÛ]'Û®¸4¿Ø cT¹¶¼? ´ëÉ,ׯo˜ë><ý©ÿà·~%Õ¼ ðŠãųü_EÕçÒý†ÿàŸ?`Ïê1xP?‹~(xšÔ>+|uñ‚Ç'Œ¼g|d’þø½ÝÌ÷_ðŽøb—’æÎí¡fEÔuËÝgY3ê³~ Ák?àáß…ð/ÄOØ{þ «ãOü~ý¹~'xS@°ðoÅÙžO üHøgð€êÞ&µO¤Þ:ðç‰ïîîþ&éþ ³ÕΟgá}ZÓ<©júv©âF½Ñî´wüþÖ¾.ÿÁ_?àæ‰þø§øûöÿ‚TøoâŸ>|DøáÏx‹Àþ1ø»ð£Å¾’K«/ˆžÿ„·F7ú€ÒÓN¸øwáÍ>ûáv¬|K±ƒÅ·Zý…±×áþ›¿à™ÿðEØcþ q¡èZ—À߇qø‹ãÌ^¹ðO¿i/Iq¨|Jñ½–©ªÃ®kQ¥±»—ÞÒ¯µ[£Ò<'¦iÇû+JÒl5kýj{9/î~ï,Êòü›‡Ër¼% gCB<°Š½å)7yT©RMέj’ZÕ%*•g9ÊRÊ9~ÑŸµiºŽ¡ãMSF·i¼ º„úÿ‰õ_ÙxgÄ:—Œu7ñ޳¬ÿëÞ+ñˆ›KÐãÔÓIµý˜¢Šï>L(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+Œñ§Ã‡Ÿ-4눞ðgl4F=cI²ñ§…ô?Úiz´QI Z¦m®XßCe¨Å ÓEí²Er‘K$k(G`{:(¢Š(øÉÿ‚pøçãüÓþ ¥ûOÁ6üqð]|5û;ÁL?h¯Ž´ïìÇãÝOÆéú>áÏüMñô–^ðö©Ŧººfà&‡Äº‡u­7þýÜZëWÖ¯?öm_ÉÏüKâ þÍ?·wüköçñn­má| ý¯üYðÇâç.“TŽÇCøwñ:…ÓjÚÖ¯{aÐNð§ƒô/‰:ÄÚtP½ö¯gq©Å½äVó$?ԯÿˆ ø³ðÿÀ¿>x†ÃÅß>&x;Ã?<â½)¥m3Äþ ñ–‹câ? ø‡Miâ†v°Ö´=JÇR³i¡ŠSos’(ß(;(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€<+öŠý§?g¿Ùá¥÷ÆÚgã€~ü4±¿¶ÒÅ¿|Ag¡i÷ºåí½å凴Hgs}â_ÚiÚ݇‡4MK\¾µÓ¯î-,&†Êåâþb¾-ÁÓüsñŽ­ðGþãû |}ý¾~+BÏmÄ _Á>)ð—Â9K-—‰î¼?¦ZÏñëÃeÔ­Óøÿþ„Vÿ3>¬~oÐø/gìtoO‡?ðOÙ’ïP×4 øãþ aðÎûÆþ*м#¢øÖ_ xGÂß²ïíwâ=KT¼ÐüQ¢ø‡ÂZ^Üi¶>Š_hºŸ†?´õÍ:ßUÓõ®WOºõ„?ðKÚöðN™ðÛà_üãÏÁï‡ú:…Ó<ðÏö9ÿ‚\x'ÃV±çGðïìE§XµÜá®o$…îî¤[™¥•™Èâøÿ‚JÁy¿àª$kðUŸø(?²ÀÝn$¼ý¿d浚ê}:T2Üx_ÅÇÁÚ½€&X¦º’Xuøïöˆ¹IíÍ©³ŠÚ:koÙ¯Øçþÿ°ÿ‚iø~ü4ýžü;âx#J¿ñ&§ñëãšÛ|Zø¥c‡ký§w®é:¦»`¾ð=í¥®æ>ø_ÁªÊ’“ IsrÓz¯ü1'íÇÿI—ý®ÿñàšÿý5óí­ÿâý½¾*þÉ´wÃíþ ûVx‹TñOÁ¿ˆeŸ…µo€ÿ°ÿ†4oI/†µ'ƒ5­{áìßðÇâ6—¤x—Ã:ï…üo¢ßÚÚê²Ü¨Aº]èì×Á¿‹ ø÷ð‡áWÇO†šÎ±ðããGÃ|Xø«^i׺EÞ©àŸˆ¾ÒüaáMFëIÔá¶Ôt»›Ý X°¹ŸNÔ-ི–V¶º†)â‘Ò+àÿø%–•©è_ðL_ø'.‰­é·ú>³£þÁÿ²•«é­ÆŸªiZžŸû>ü=´¿Óu+ ¸á»±¿±»†[[Ë;¨¢¸¶¸ŠHf$FQ÷…QEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~`þÞ¿ðS~È×Z?Áÿ‡>¾øûû]|@6¶>ø6;­[T†÷UEþÊÕ¼rš:\êF™p²%Æ›¢ÛBÞ#ñ*m:u½ž“öïéžfoœe¹®ešâ©á0”\bç5)N­Y¾ZX|=)UÄbkJС‡¡ •ªÍ¨Ó„™÷xoƾ,q^‚ø!Åqf­Z8j• 6…µÇæùÆcŠ©C/ɲL²…ñžqšbp¹v_‡‹­ŠÄÒ…›ú7öÂý´¾~Ä ®¾'|mñ*Ù‰ÖæÛÂÒÒóÇ?u˜#F:?„´9î­MÓDe€êzµÜÖz‡ ðϬjVi=¸›øÎý»¿à§|AñWÀÿÿà©«ñ& OÂ~ ýŸ¿à•_¾Úß5Ÿ xÊ^ |QøÑ«ëw~Òô}Z²ÓÅŠ\M¨Cñ_Æ â =ü!àßxU†óQýý£|/¢þÀŸ>)ÿÁR?à¬|ñGöðÔ<ãMCöIýž|e¯èÓü?ð÷Å='AŸPø{à xF†Ÿã [à Ôt‹­zßÃPj>ðNŸ&§¯Z¿‰¼DÖ~.“gþAÿÌø£ñGÄþ/ÿ‚ÉÿÁMdøaû@þÓŸ¶ß¾ üLø9c¯ø I½»ø/á ="ÓSð牗KÕt(ü=áëѾÍàÕð]¥«øú v¶úŠßj÷–ZWÅRÊs^5«OÅ8z¹g Âp¯—ð…F–#0äjtqœW(7+¨Õ¥BRÃQ—'öŒ±5 èÃúsâý°8Îð#9ÀqÇxœ6#-ã¤^–OÂQÄÒ–3á¿iâa ´[„êà1þ-âèPγ*O¸?’åØ˜f¯ ñ?üŸþ ñ›áÞð“þ ¹ÿý þ>­§ßøÀ_¾8xOUð×¼ —6ë£x7ZðƉ⿇ÿ >èÖ^u–îêãÅþ*¾ø¦\ÚÛØêë>Ÿà¸ô¯ø'?üg¢kZý§í©ÿ–ñ6¹ûk~Ø?ü£Iã¿„Ÿï¬|màŸ„¾*†öÁ¬lµè^-×t¯Šzç†<+£éÚ.n>éé>½g¡éºÝˆÑµ˜¿­Ú+ôhÆ0ŒaÆŒTc¥Æ1VŒcd¢’I$’IYhV­[Z®#V­|Ezµ+W¯Z¤ªÖ­Z¬ÜêÕ«VnS©V¤å)Ô©9JSœœ¤Ûm…QTdQEQEQEQEQEQEQEQEQEQE| ÿ8ýŽ~~Ü_±/íðGÆß <ñ#ÅZ—ÁߊÓüºñO„t_ëþ4Ý|8ñFàøãU°½¼ðߌôcR†+ kB’ËUk[«Í7í guo7äÇüéÿ ø)ûQÿÁ8þþÌo›Sý¥ÿdŸ†¿ð‰ü[øs¢ø¾ÞoxÛ⌼?ð‹Z±ñ.¯¡Úx[Ä6tÏÁ5Ÿ†uÝbãÃW(šn­k¦¬šzÜLUü_ÁkÿcÏÚ‡þ kû@ø›þ £ÿÂñ'Ã…¾ð×Ã/†_ kÙîÃáï‡aÒ¼gàôø…á=çW³ÐàðÝLJäð‡‰mtχ7_JÃ~=ðŒž›Æ^ñS Füx|ûA¢¾UýŒÿlÿÙïöôøá¿Úökø¢øÿÀº×Ù´Ý]´©ä’÷Á¾3] C×µÏø¦Öx-®tÏøjÛÄbjÖÛÆÈ.­®aó-nmå“êª(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†kò'þŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢ŠüïøçûvÙ~ÇßAý®ô;áì±ñ*ç@²ø-û^ZK}'ŸøÂ}3JÓu„Ÿµ­v^×à÷ˆµ¿ÿhk þ%ê’Xü+ñ†…ª[ø7RÕ|9ã 7ü&~èºÞâM#Lñ‡u}3_Ð5» ]WF×4[û]WHÕôËèRæÇRÓ5+g²¿°¼·’;‹[ËIå·¸†D–6V4¼Wá? øóÃZçƒ-xàÏÃm Oö‡‹þ!ø—LðÖ’n|™§‡L°“Pž)µrù •tÍH†ûZÕ§Qm¦X]ܲDÞEû"þП?j-Å¿5?„¿Áï€>"›C‹ön´ø§êÞøáñÂö£Ymâÿ< ~"o†ÞñÓ\x}þx#[¶·ø‚¾Ó/ü_ã{müa£x[ÿ~Ì_ðD?Ù×áÄï~Ñ´ÏÅoðQ?Ú“Â÷-¨xWã/í™ãË¿‰_ÃmEòoƒÿ %Ç€|MÖ™=҉uïêVP_xs_Ò"Š/Ú (¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠþU?àîOéþý‡b/jðßÜé^ÿ‚¨þÍ~)Ôíô«a{ª\iþøEûIê×°é¶fHEÝü¶Ö’ÇgleˆOpÑÄdMû‡mÿaÁ9¿èˆþßÿøŒ–üñë;þ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔÊøÆgÄ/ø7ÇÚ,®ã x{ÆM®±j,ukm3ÄÚEžµa©d²Î¶zŒ6·±G{j³Ì-îVX„²ÞÝUPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEsÞ,ño…üá­sÆ^5ñáO økMºÖ:ñN‘lfñD¾ðµÖ¡£k_5Äϱ³§G ‡¥†Xœní¯ÛCþ âÿøã_ý‘?àœ‘èŸ>7ØØj×_h Û½9~ þÎ>Ñ#‘üUâMoÅÚ“ÂbãÃvé!Ö|M«ÜKá/ ݈ô¥Ox²_øGì4ÿø+/ü;þ 9ã=gÂÿm|wÿjÿ‚™øïÄñøâOÄ_‡“ëZ£âŸÁwwâá÷Å‹3Ç3êé&¹$:F§oà+Æ'ñ–¤ÓÉâ-ZÑ,-t{…~kŸ´üOVÓ¿àðIŸüVý‡ÿà›Ú‚ü¥~×µÄOGãyÿhM{@ÔmgŠóâÄ /ÚÒjºÞ™sàí7Ãß¼=ãÏ <:o‹üTuM6ÙÞ['ö¥ÿäÿ‚F~ÄßðL?Xh_³§Â"‰þðÞ‘ñ#ãˆEö·ñ+âF±¡Ø_[]ë·z–·¨êëá+MZïVÖ.ß¾ :/‡-b¾K!eq¼£ÌÉøcˆÇÒâ>.­G0Ïi©<»CšY7 SšW¥–R¨“Äc䬱yÍx,M[{,4pØhªsû¿¼qáÜŸ…3¾viÂã*|gÅ™¯°£âW¸Ì,¯OÇÜ¥ Ÿ„hUæ«ÃþåX‰äÙzœ±ÙÖ#;ÎkK‡þt¿coø&gü³þ çûX|#ý¿?à¹>ðv‹ðà­ßÆ?ü'ý…<}à„ðÝù³ñÝ.™s¬|4>–Æ/&»fÍ­x÷_—âg#øeàëYu Å¢ßê_Ú¶•¥iš™¦èš&›a£èÚ=…ž•¤iU¾Ÿ¦iZfŸo¥†›¦ØZG ¥…¤1ZÙÙÚŽµ¼Qà i*‹ôWÜË!EPEPEPEPEPEPEPEPEPEPEPEP\¿¼௉~ñÃÿˆþð¿ÄøÇH½ðÿ‹¼ãoé>+ðŠt J¶Ôt?øo]´¿ÑµÍ#P·w‚÷MÔ쮬®¡vŠx$F*zŠ(ø‘ýüCñçþ/ÿ‡×ÿa| ðþ‘ÿéÿ‚ª~Ø>%ñ/ì§ãÔñŒ–þ Öï<.lìü'à/øgZxt³ñ×þ ü×´ßè^¾ øgEÕ¼5¯i-¤õý·Wã‡ü¯þ n¿ðSÿÙ¿ÂZ„~$ø›àÿÇïÙÇÆzÇÇoÙçÇþÛë‹ñ3Eð‰ì¼1áFÖ¿´4Ëï iZß%ð^µyâmöß\ѯ<)¦]é“C2SáŸø6Ïþ áŸÛösðgìñ{Æ_ üOÿ…+ÿþ³ñKà]·ƒ| gÿWíð—â&«ý»âHük«¾›öÂZ•¦™>ãíšÄú}ò…Ñž/í;öBÿ“Mý—ÿìÝþ êµðÍ~DÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã4ôEQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEàß´wí1ð[öOøc«ü[øçã];Á¾ÒÕ¡µYÚuÏêí’ZxsÂz$ßøƒ_¿òÛȰ²–}GQšÇJ³¾¿¶ù×öòÿ‚Š|ý…¼%`ž KŸˆæö+h/§ð÷†$ÔÝmZ¹±¹¸Ô.#¸Ó¼5¦kÚ¼2iëü+þØÿðPŸ¿?l|4‹Jð§ícÿ%ñ§Åí{à‡ÿd½gMÖàøûx‚êÜxÃzwˆ-µC@ð/‰¾)è^;¿±ÖuýV×|MðëÂÞñþÑš–³ªÍwá¿ |VuÄø—ŽŸð¶ŽkÄJ0–.¥YMe=Fª÷1yÞ"–ª¬£yárªúö1GšÔ(?nNxgà^J¸W ã79ÎaÀ^ J¾&a2êxyx‰ãg—Ê+xc“ã¿vð8z®l÷³ZK…¸v¥UGŸ5ÍWöQôüãþ õ®|QðìÚ÷í{«|$øqªøJÇâOì…ûCaã˜|cûOYÍâÛÏ øgâÏÆ/èz]®¡|2XÓ¼E©Ë?ˆt;ÍzËÂ:·ƒþ ÙÝø‰µ‹³~Á_ðn‡íûsx›Dý¨?à±¾$ñ/Ãÿ†¶ç€þ#þÏŸ°oÃ__i |!àïéšwˆ|EðóÄ^Õîµ›ïƒ éÖžð~¿á-Rƒâ®·©éÞ$Õ>$xÊóÅÆ}oWýÿ‚5ÿÁ¿×ÿ³×Œ¼;ûzÁH¼]â?Ú/öý×|3â2ÿÃ_¼Cáï‹~ø3sw¯¬Z­áMnòÛXŸSñÆ•àûÑìõKMrx_Oñ¯¤ø[NµÛ_'õ?]Ü=Ã|’XŒv#W7ÏóšgØØÁbñN/š8záû¼[FZarì/- 1IËÚÕæ«/–ñ‡ÇLçÅ YG å6_á焜R²à/ 8j­wÃùjÇÙUÎ3l]~\oñ®eI'žñžzëæÙYT§Gê9±ËèùGÁ???fï‡Z7Â?€? ¼ ðsᇇ¦ÔîtOü:ðÞ—áO é·ZÖ£s«ê÷vÚF‘omj·zž§yutÑ´÷WSÉ,Ò;׫ÑE}9ø`QEQEQEQEQEQEQEQEQEQEQEQEQEQEWñÉÿøCöšÿ‚q~Ù?ྲw‡~kÚOÃ…Ú?ìáûNx7Æ“k‹'Œtÿø¶÷ÃþÕ5-+EM2[«mKNñF›áQâ[E¨x{UðÏå}UÓí¤¶›û¯Ëoø-ìçâ¿ÚÃþ Qûnü ð…5?xïÅî¼Aàè–+©ëž'ñ—Ã/hü-¢hZit’ÿ\ÔußX[höVÞeõÖ¥%¬:|7Ïoo(éO„üO¢øß¾ñ§†î×Pð?£xŸA¿Ll½Ñuý:ÛUÒîÓ†Û›¸&\3 8Á#šè+ð³þ ëý»¿á´àŸÞð_‰¼⿆b/øBÿbÿ~ñ«lñ£ãƒ? <¤_øÚçO6}Æÿ .¡ý«i}á­NÞ-_Añƒ¯XÝİ%”ÓþéÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3_‘?ðtwü £öæÿ»fÿÖÃýŸkõÛöBÿ“Mý—ÿìÝþ êµðÍ}EPEP_9þØ~%¶ðgì‘ûRøÂôø¼YøSösøÝâ[³ðûÆz·Ã‹m ៉õIÏ‚>!èºï€ü_åZ¿ü#^3Ñn­µo ë?b×4ëˆo,a‘~Œ¯9øÃðË@ø×ðâŸÁ¯½Ü^ø·ðçÆÿ ¼K%ƒ¤wÑè=ðΧá]e중$.ÓNÕnZÝäÑfÎŒ ©üý¦<5âø!¿üsö’ý§¿áªjïÚwö¥ð—Á]Á6?ÿjÚƒãÇO_übø™â¯ xBÖ¼ðgÇÞ9¾øY¡Yxoƾ!ƒÄZQÓ<ÿ zxGH¾Ó5þÑ¿ðVÚá6‹ûHé?¶Høçñ1 Ö<þ"—áßÄ/‡ú8øcÅ1þÑžð'Úì4ýKÀ³ýÅ­ÄŸ…~ ÕôýFóÄ÷׬¼G ÿÂÀƒE·_‰š_…t«†Ö?D?ਿ?ઞø5â¯Ù;þ SÿîÔükÿà 7ᯇ?i¿þÐÿ³?€¼ðç÷þ‹C¹‡á¯ÃücÑ>#ëÞ(ð¦ŠãDÒ5¯ÚxSJÒ4ÒìíÆªú©û"üj¸ý¤ÿeÙ‹öмÓáÒ.þ>~Ï?¾5]iVË"Ûé—þxkÇ3éöë,³J°ÙK®µ´K$ÒÈ#‰CË#eÐÕá²×ƒÃÙösøx¿õ_„Ëà?|>kÚÿ†üW®|4øáí |?Ö|SàÛ«ßø—Uðh±ÿ„sQ×ü)ywá½fóM›QЮ®4»›Y_Ý袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š*ž£¨éúFŸ}«j×Özf—¦YÜê:–¥¨ÜÃe§éú}”/sy}}yrñ[ÚYÚ[Å%ÅÍÍÄ‘Ã1¼²ºFŒÁ6’m´’M¶Ý’KVÛz$–­½Š„'Rp§N©R¤£Brœç&£B1NR”¤ÒŒRm¶’M²å~ÿÁYà¹a]Å þøƒÂ>-øõgcwo®ëz­ý¼ßþ \=»4mâ9’AŠ|y·yÑþiRÏx/ÒµØÖil´ kóûþ óÿè^ðGŽ< û,xÃSð·Âíò/ üLý§t¬®ÿÁþ.ÿÁQþ1xCöÏý©t¿Á>¾ü}ñ½ðÏöøÃàH-<}ûEéV ¼Ú~«âKÏì»sâ¿Üx‚ÏÃ0øºïÄ7zç…µ+«¯‰~ø{ö KÏ™?:¯æ|a^®YÂ8‰`rZU%C5ã(Â3Sp“…| Âqtñ˜»©R­œIO|ϱx•ìÌ«Ãú9eywý"rz|Qâfa„¡šðÑ®®"¦¦ž&”1gøñˆÂէᾕ9ÒÆå¾aêaø³Šc*1Î%Ãù$ëÔÅ|­û6þÎÿðWoø-·‹üsãOZ=çÄÿ4›ëÿ~ÞŸ´xñž‡u⸼3âè<;âï ü*ñÏ…ô¿Mi{qsosá&ð—Ãí%wèžñ…üCã xSU¿ðµ§÷Oÿ¯ÿ‚6þÉÿðJ/‡ºÞ‹ðvÏZñÿÅ\è×Å/ŽŸGÕü1øuðcÀ>øWð—ÁøoðßÀÚE¾àÿx/D°ðï…ü7£Úîhl4L‚ÚÊÎ2Ig—ʈ=ÅÔÓÝ\<·3Í+÷5ö.G–pþ~W‡T(FR«Vr”ªâ1XŠ–u±xÌMG*ج]y.jØŠÓI»+¨Æ1_Î^&ø¥Æþ/ñV'‹øó9©›f•hPÀàpô¨ÑÀäÙMƒ‹§–ð÷ d˜8QËrÊè¿a—efƒÃCšjœ«U­V¡EW¬~|QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE'ßðEoøkàü3þ íû"øŸYÑ|1ªøëöªðgíð¿ÃÚ¾¥¤éZˆ_âË|Nø…â›/ØK¨u_'BñŸ‚u=?OÒ¡–â×F[››»[(â6ðX5üpÁ~>|ý‰ÿà£ðJø+߆¼)|Q¯~Üß¾~ØF½âC¦ø·Á·~ð†<+}®XjzÝÏ…ü;{àï‚ÿ~&i¶·Òt&ñ–“M«®‘§Ëeý}øCÆ^ø…á­Æžñ_†üqàïÚ ýÅž×4¿øk\±2I½ÑõÝê÷KÔí ±K¸²ºž$r&ýÈÀt”QEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¯×oÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEóŸí‡â[o~ɵ/Œ/O‹ÅŸ…?g?Þ%»?¼g«|8ñè¶Ð¾øŸTœø#âqk®øÅþU«ÿÂ5ã=êÛVð¾³ö-sN¸†òÆèÊóŸŒ? ´þ)üñ[ÝÅáo‹|oðËIJX:G}ãß ê~Ö^ÊIHÒí4íVå­ÞHÝ`ŒèÊ ÁÚcÃ^ ÿ‚ÿÁ'?i/Ú{þ§ö®ý§j_ |Ðücñ?ö¨ý¨>7ütðõÿÆ/‰ž*ð—´-kÁ¿|}ã›ï…š—†ükâ½â h®4M#Zñ§…4­#Ä6«¬ÁcãM.ÎÜj ªŸ²/Æ«ÚOöPý˜¿h«Í>"ïãçìóð[ãUÖ•l²-¾™qñOá·†¼s>Ÿn²Ë4« ”ºë[D²M,‚8”<²6Xý ^û-x0|8ý˜ÿg?‡‹ðÿUøL¾øð‡Áƒáf½¯øoÅzçÃAá‡þÐÇÃýgÅ> º½ð‰u_‹øG5——~Öo4Ùµ êãK¹µ•ýÞ€ (¢€ üý¿ÿàºÿÿd_ÙËãŸÆß…?²Ÿíñ¼|ŽÓHÕ"_ß5ý‹Âltkñâ;OÞJüÿƒ£¿å·7ýÛ7þ¶ìû@¬?±/Æ¿þÒ¿±ìûFxÛNÐtü~ý˜¾ükñv‘ák}BÓÃ_‰þ*|*𧎵ý;Öº¶¥¬ê¶Ú Ž«¯]Ûiúž±«jéñ[Ç{©_\¬·RùWüGþ ð»þ ×ð&Ïâ×4-{â|wãüøðKÁ²[ÇãŽ?¼lóÁàχ~žé%³Ò#¿šÞ{½sĺ„3Yh:E­ÄñÚjÚ¼ÚFƒ«Òÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþt?à´Ÿeñïümÿ#ýš5‰îçð§Ã_¿´<IòßMx»âÿ‰,ô}Uí®-¦¶–ÿO¼ýž4ÃotÁï4øÞGÓeÓ®n Ô€¹ú¶½ÿœð¿ÂÙ>1Üèß°Žü_¥ègÅZÏìgá_|zÐ-~Ú¿ì?d_ÙCÁ¾>×|;ã^_ ü<ø ðòÝõ‰ß«ámÏãÏí%¨ø—Ä(Öjÿ‹~ ð}çÆ+)|E¤7‡¯ü;ðû]M:óZøuàû[Øum#Jñ íÿ‰/µ½~ëÄšÖ«iya¦é_°ù¯µS0§‹É8)µ*Ydý¦9âŠ{ª¹§+…l¯%«½<º2†;MóãeB„㇗õÌóžú"ÂxNÆð÷ŠIÚp•,ÃŽpëÄxNÓÀð­N¾YÇ~&àãŒã:Ôñ\/ÂxØ,? ÑÍsL=\â‡óÝÿ´ÿƒdý°à²ZF‡¬Á©|9ð’|-ýŽ|?wâ]xôÝnâêÆÏã\M%‡G´‹X¼ð&“¯ë7þ!×üuâKÿŠz’xª×ZÓu_î–ÎÎÓO´µ°°µ¶±°±¶‚ÎÊÊέ­,í-¢Xm­mm¡T†ÞÚÞH ‚$H¢‰8ÕQ@(¯ÑpøzJpØZ4°Øl=8Q¡‡¡N¨Ñ¥N*4éR¥MFéÂ)F0„Tb’I$ã,Û7ÍsüÓ0ÎóÌËœç9¶3˜æ¹¶i‹Äcó,Ë‹«*ø¬n;Š©W‹ÅâkNukâ+Ô©V­IJsœ¤Û (¢¶<ð¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(äoÛö&ø ÿýž¼[û9~ѰñoƒµÕŸUÐ&½}U'ðomt]gJð·´‘£êúÔÚ¿…eÖ®¯lí%Ô#±¾ -•úKkq*ç+þ Sý»ô;Ÿšÿü/âÈñn‘ûY~Äš¿Ç[˽ZÒ%M„ZoÆ 6 ¨ìš.¡¤ØIcᨴ_°Ó­Ò _뺿ø)/ů…ŸðO¯ø9Cþ éûcü\ñn™ð›àíûübøñ—ÇúÍì¶^‚÷Àvßµ-U× i,“)×|EðgD¹ŒoZMì=í£‹ëÞŠj:H‰$n²G"«££GF•Ñ”•ee «AH4ê(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¼#Xý©f?jÚ¦¯þÑŸ4=wCÔot}kEÖ>/|?Ó5mVÓ.e²Ôt½SM½ñ š~£§ÞA5¥í•Ü0ÜÚ\Ã,űºÇø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf¿ÿàæ/Ú;özñçüöÖðŸ¾<|ñŸŠu_øgì¿ xO⇂ h´gìÿñÏö{ñEíΛᯎÿ~&üñ£gÏw§èü­ø#V½µå&¹µ°×.'‚&š’XÕXÁ.?’ßÚÿö[ÿ‚ã~Ð?²/íÿý¢¿à¦?`›?…ÿ³WÆÚoá‡ìû#Ùx«Â7 Ñ~ü9ñoÄï |5ø½ñ“Ã<øy®ê¾3ŸNÒ4ý/Ç·ZŽ›ãÛxuÝKQM5´Ý7CÓ¼>?§ÿÚ»áÅø{Oøû=üQñÏÃÿ¿´Ïëß ¼;kâ}F_ƒ?îæ‚ÊúóáWÆÿ…×÷àÏøoÇضþ³ñа°ø™ð©õ[¿ü8ñ†ƒ<ºÅŽ·ü£~Ùßð_uø?ûþÚ?ðL¿ø)çÀ?ÿoMGöBý gÝâ…ü-iâŸÙûö‹×|gð‡Æ_ ¼ñŸÁ>'ŸZÒüA¥ø_âN§}a¯jþícGðü·š•”ºÚêzn¡¡iXø£þ+ðïüM®¿c?ø#¯ÁoŽÿÿiUß…$øÝñÁ1ü?ø-û-x?Ä0Ë£ø‹ã·ŽµX|A©ø‚âçÀV7SjÞÒ$Òô;YñZe…¦­¬ë2iÞ ñôÍðâ÷‡?h?¿~=ø9&‹Â?þ|:ø½áhîY^â?|Jð†ã= .U¦M3ZµYYQ¤ B¨8¯^Qðá‡?gÏ¿~x9æ—Â?>|:øCái.URâO|5ð†àÍ îYÕf}3EµiU]Õd,0>¯@Q@~ÿÁÑßò‚Û›þí›ÿ[ö}¯ßêþUÿààÏÚƒ^ýªÿàœµoìMû;þÅŸðR_ŠŸ<{⿆^Ò®tø'ÇíYÃÅ? h‡ü,ð›+Ç&^ðçÆÿÓÜ[‰pfžO‰~·EO:¼®#“)û=ÿ’ý²¬­ÿdÿØ/öDñçì©ÿø=ñƒá×ìÍð3ào‹¦ø¿ûþÓ¾øe¢ø»áÁŸøcÄ7Ú¯Æ sáÄ 4ê7þ¾þÁÕu¯i¢þK­6ÁàƒR¾‚ÍïÿÁi?à›¿ÿm/ ~ÌŸ´_ì¹yáý?öÚÿ‚ülÐhÙÚÇÅš˜Ð|)ñ&-3Ä>ñŒ¾ø‹Ä†¾1“ÁºÐµ[óý†ºÎƒ¯Í¤h%ÕüE¢€~ÜWñ1ÿåh3øŸþ cÿ |ZѤû_ƒìÿi_Šš z‚Á2Cw?Ä/ÚÏ㯉t #yV6ÍÒü©N`–5›l‘—XÊoè\ÿ‚ŸxÆãá-Éð/üçöýÔÿkK½Kölñ/ìÁñ?Ã^Ó~"ÜZ-½•ŸŠ?k][CÓ¿d…øse¯M jþ8ð÷Æ­bý¼1Ö­¦x^ïTA¡WÿBÿ‚hxŸþ »û.xªÇã>¿¤xËö¯ý¦>'ëÿ´í=âO?@‡Çž);¬¼áË•‚Ñ/4?ÙÉsç_­²Ç©x¯[ñ^£`ãE»Òmm@? ?àË¿\x áOü‡á†¯*ÿÂOð÷ö—ð?‡µûQ‘¼_†ü[áæ•‘²fÔðÆàŸ xsÁžÒí´O øGAÒ<1á½ÏÌû&‘ h}¾•£év¾kÉ/Ù¬4ëKkH<É$“ʉw»6XïPEPò·ÿmxgCñ¯ìMû x7ÄÖ_Ú~ñoücöfðψ4ß´ÝÙÿhhz÷Â_ÚGJÕ¬¾Ù§ÜZ_Ú}®Âîâ´Ù][]Áæy¶×̉"ýMÿ¸ÿÁ ?èÆófl?þˆ*ùßþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔù£ûÿÁ?àðNø³âwìkû;ÿÂñÇŽ| |âsþßÇOˆ_Úž:Ιâ¥füTø›ã"Ëþ&ú>wöí;O´Ô¿Ñ¾ÏöϲÍ<þ—QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQER3*+;²¢*–fbUTe™˜àI 2x¯åGþ ÿ ü7ýšü3ãO„²Çt[ÿØÅ£ø«ãu´ÖŽ•¡_À²Cyáoƒ–wÖÞ9ñã˶ÙüG W¾ðìm=ݳßÍέáß ?â,·‡pÔëãeV®#Sêùv[ƒ¦ñ–i‹jðÂeøHµ:õe§4›1~ÓV•$æ¿Vð“Á®3ñ—<Æe|1GÊr<öÇñ¯c!“ðOðí9òâx‡‹ø‚¼^+Ëè¥5F’U³μ~¥”àqøéÓÃKôkþ —ÿŽøÿîð–·áëC@ñ×í4¡yƒ.5$‡Ãm. †{?|UÔ­î"›K´šÞæ­ÂÖr¯ˆüHe´X×JÒïcÖÓø˜ø[ð+þ ­ÿüqŸâƒ“Å>ý>+^xÿÁ?ÿmO‰^ÑõYøIÒ/ìõo |>ðmíΛ¨éº:\ȾÑ|;ðþ;MJI¤Õu Z¯‰¢OÖ¯ø#·üïÆ¿¶N±7íÉÿ`øâ‹ïøž_„ÿe/‚ú·Ä¤Ô­üqÿ A›â-÷ÅÚÛFÕn xkLoêÞð-Ço‹éc5‡ˆ~7øãÂ:°ë¶’__E§ZGªx—ÄÏá½ Þy“@ѵ(´©/µ9­äÔnH袾üþE (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þwÿàèßÙëÀÿàŽ¿´÷Ž5øCÄ?~iÞñÿÂßk>Òµ?ü>¾4|*O‰Ÿðˆx†ãN»Öü7мeªi^ E¼ÓáÖmíì!Ö^k+5Xÿ¢ øGþ …ð;]ý¥?àœ¿·ÀÏ h7>)ñ·ÄoÙwãF‰ðÿÃvio%Þ½ñ/ë:ŸÃ½"Ô\«B.uXh6°Hv¼RȲÃ,3$r ¢~Ÿ?áo~Ä_±×ÅssöÆø™û,þÏÞ>’è®Æžoü'ð—ˆ&‘ãòmÌR4ºƒù±5¼ ›£x!e1¯ÕUüçÁ³ßµ¿Š~6~·߲ÄÏ„ú÷Â_ŒðMYþÇ´­{X³Ô®õ=kÀÖ×Ö1Í5•–…¢ÇáÍGB“K¾ðޝ I>»qo}á÷½›^ÔüÈ?£(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ñâÏü‡ÿcøãñOâ_Æ¿Š_±·ü%~0|@ñ—Å/ˆ¾&ÿ††ýªôOøH¼wñÄz—‹<]®ÿcxwã–‘áý#û_ľ¡¨fhZV™£Ø}£ìºfŸeeÑ~ßQ@Äü«þ+ÿžý‹¿à“ßµgí/û4~Êð­~6ü5ÿ…ÿWáyþÒ^1þÅÿ„Çö“ø;àÿÅ9ãÿŒ^*ð–£ý£á/kÚOüM´ÿ±ý¿íöeÔíl¯mÿ¯OÙ þM7ö_ÿ³wø)ÿª×Ã5ùÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ÐÑQEQEâ´·ÆDýgÚö‚“ߣøðOâ¯ÆGðfˆâ=gÅÉðÇÀš÷›ÃL맯®†t«0Ìêî&1HÃí•ó¯íãÿ|(ý’ÿj?Š^Ò|%¯øßá¯ìëñ·Çþм}¦j:×u¯x7ᧉ¼Eáí'ƺ>¨i:¾­á-KWÓ¬ìüG¦iz¦›¨ßèó^ZØêw2Åsç¿ì?h/ø(·ì»â Wþ ÿþý˜<3ã=#ãŒôo‡?µo xCã/Ãïü+M7Óhž>Ó4ŸëôÈWXÔ%Õtˆ|C§x–]7Çvƒcâ½LÓtOIûOé‡Ã‚ŸfŸjÁ_„_~øÎ9µ}OBøUðûÁß <)v0K4úÞ‘àý#DÒ—ì¶Âg{™-·E˜w-_ÆOìGñ3þ¿Ñ~ü=ø‰ðöJýŒ[öiø—ào øóàÀ߉>0·o |4øuâý ÛZðŽ‘à»oþÓÑ|oð…×AÔ4ËŸ|8ñoÄ}FÃáö”º„ô_ øOKÓ†¬þ™øÃûEÿÁÝ·þ)Úë_°oüƒGÑ®~øÞßVÕ¼âÛëŸézdÞÔã¿Ô|)m¬~Ùz¾‘qâK+V–çCƒUÒuM6]R+Xï´ëÛV–ÚPë_Àþ6ðÄ¿x?â?Ãÿé1ðÄ øÆÞ ñw‡ïaÔ´øGÅzM¦»á¿èz³=¾¡¤kš5ý–§¦ÞÀï Õ•Ô3ÄÌ’)=E|ÿÿ”YÁ4ÿìÀ?cýg_‡5÷ýQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWžüWø±ðãàgÿ|Yø·âýÀ¼§.§âok³›my«ëšÍý†£ØÞê—Ö–“~wÁH¿à­_³ÿüŸFðæâ-#Ä¿þ6xúã_Ò¼ðáß„nõmïLð³kö~.øÅy®x£Do‡ ÚúûÃU÷ˆc³ñŠîω¬fðo¼`ö÷ÐZþþÎ_°Oíéÿ™×<+ûIÿÁE>-ø—áÿÀ×ð^¥¤xBÛáÅ®•ðÿÄÂHúœÚ¡ðkáž½áÏx3úêúÎ¥«|Tø‘£ø“Å>0Òô½EÒì¼AáÛÝ7YðOÈçüQõ U<&Âÿmq>*Ÿ´Ãå”êrPÀГåþÒÎñIJ9~]M´Ó’xœd—°ÁQ«Q·è |ÿ[r,_Š>%çÿñ ¼ Èq¯›qÆ3 õ¬×ŠsjIU—ø_Îtjq‡â馧 5)äœ9‡rÍ8›2Àa)ž'€ÿ‚ŠÁ]k_ø(w‹|GûÿÁ-þ|dø‹á‹‹›-ÄWtmN×Ä>6Ò¼Eqq¦iž$øÃãSokáïÙÇànµyg©ÁdÞ7ñƒ}ã-:ÒEñöÖ·á Sþ yÿÀxæßâ—†j_ø+wˆ~ü\Õ<;gãíÂÿ±VŸá‹|&З]´½Å>-ñŒzìzˆîím.5Û? §„µ¦ŠâßÂ:Ö¯ã½CUÑSHÓ¿­_ÙÃöQýÿdÇà/Ùãá>iÙø~ê>ðÎ¥ø£â§á½×Ãö,øâ«+}wâ/æÓm"MKÆ>/½ÕüC©LóOw,“9?BÑp¿ö~&¦wœâ¿¶¸£OÙâ3J”ù(`¨=³2L+rŽ]–ÓmÝA¼N2w¯­Z£J‹~;ÿ­ÙÂÿ 2ø†>dÅ‹Ê8Œx¬ÓŠ3jKÙ®7ñG>„(Õã.4ÅÁ'N¥xSÉxo á•pÆ]—àéT©Š¥¦éÖ>a¤iVvÚv—¥ÙZéÚnŸg[ÚXØXÁµ¬…Žkkx£‚£UHâEET »EõÇó¸QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü­ÿÁå à¶?ðqÀ+ˆc±ÿ„›ãÁ_ÚFÓ–;+vOøNÿáfø¿ÄÚ¨K]:Ö[¯íÃñWÂwÓI<ïäI‰[í—š•ö¡?õI_ÇOíÉ¥~ПðMø8göký·<ã‡íðþ ÛñGà'ìeñcÂÓiúž¡â½._ X|øsý£©Í©ik¡h_i—OðÍþ…­èÚÌבéº_ˆm5 8ç{çþŨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾¯ÈŸø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¯ ý¨¾-øCàìÍûDüxø…á«¿xà§À¯‹Ÿüqàë ].úûÅžøoàxËľ²±Öæ·Ño.õÝF½Òííu{ˆ4»‰®’ù¢´y]}Ö¿•ßø-Ÿˆÿà» ?aÚ®mà?´çìé⯀ß~ü|¸ø}ðöø5ñçÀß<{à=kÂ>8ø‰á ø›ö¹ø±àÝE¼#á­gWÖ¯gmw[ºÐÖÊ ^O x“I¶Õ¢´þ|6qà_Oá]ÓÃ~›Â^›Ã~°±²Ó,tMÍô}ËMÓU4í>ÓKÓšÞÆÞÆÁÊÒ UX#Œ•~8üZý°>øƒÆZžû ü,øåû;hv·2Þø'ö›Ö"ý¥üM  ÆçÆ+§~Î^4ý›4„Ú…þ›zþ ÓôÿÃVÍuã 2ÇI¹ˆiÚ¶¿7†´æ¿ÀŸ¶ümàÛxkþ Sûj·ð§‡ ðýýçÄO%Ýö‰‘g•ytÿ"±t¹¹°X&ZÊÍ–W`ֶ䓬ÿàðŸÚQ&ø3â_Ù[öý†¼?ãhdÑõ¿Ú[þ*ðLj¼IðïIÔöv¥ªxoLÒ?kÚ'P“ĶW“ê:<¶¿ ®gŠÿO€Á¬hó˜®ú±ø1â†.ø=ðŸÅ‡‡ÇÁü5ð/ˆ~ éPh^ 5¯ éZ—€G†tKkK mÃã—:Oö6•oce§}šÒ+KháXSÒ«É>|ðçìïð#à§ìÿàéîî¼#ð/á'þ¹¿Úo®<9ðËÁÚ7‚´9ïJ–_µË¦h–²\mf_9ŸŽkÖ袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿›ø*§ü7Ã?×Ųçì5«ËñöªÕtÜÚüjðÖ‘àŸ‰_þŸëbKíîoøI/'ñÏÆ9|-l—z4Ï ëÓ—Å>ÕüY®YºÅáíSÁà¢ßðU¿µ·Æ=;þ éÿÁ¾ñ·ˆõ¿üTø/ñÛâ=·…ôÛ[ï%¹ðî—ðOÆsj7÷^ðfŒ©ãmgÆßSNÐ&Ñ´½K×>ëâÁîüQcú-ÿ¬ÿ‚2üÿ‚{ø[Ã0ñ&•á¯þÒ6š5æœþ*Ò–õüðÚÇS¥ç‡~h÷ÖÚtQ9·‹ìº‡5Mê«w¬Ahú‰®jz%ÏÀcø‹1Ï1¸Œ‡‚åIÔÃUx|ëŠkSUò¼Ži/i…ÁSmC7Îáu…„¾§‚›„±õy¯†—õßx7ÁžpÖMâ×Òb–:,ëO9ðÓÀ|·,¯*ª*¢*¢*…UPUTaUT`08¥¢¾‹ áÜ»‡pÕ(`£V®#SëŽeŒ¨ñ–iŒ’´ñy†.IN½YkË£FŒ²ÃÒ¥I(/Ƽ[ñ“ŒüeÏ0y§ÖÀ`2œ²n à®ÁÇ'àžáÚR¾‡¸G‡èJXl¯/¤”]z­×Ìs3Ónüâ FÇUñƒõ¿x×_ðn£¤k7šlqYËsqý‰¹hÐÆ‹&‘¬i³c÷¹?sM 7ËoqsÁÒtw¸VÕ[ý˜?à¦ß>4þΞ#ý§ðΛo~$ðÏ‚<ñëâOÅ–´—Ã!µ¿jZ‡Ã+Âúþ‘j±èö£¨^é:~¡ùïû>Á~¾0þÐ>×j}þ EûKéŸðLÝWñ7ÿ¶¤?¾ë>0±ðw…oå±ñ'Å)¿eHôû‰>!øsáíµ CÆÞ øcâˆãÃöZ'ˆâ‚ßVÕt KK‡È¿àåïÛká8ÿ‚1iþýžüyáê·î¹ðcá¯À #áíì–«ãO‡âÇž"ºðn…¢³Ï.†Ú…lþjê,¾É§^xÊÇÂó%®¹©iÖÕúý ê¿ÿà–ðJï‡:wí ©xKÁß ÿeoÙ+À>ñå®§y¥ÛéÞ(×ü'ð×Lðö±á}5I­¼Gâ‰*·½Ótí:ÏûB÷Å> ×BÀ—×ÌÒ~èú¾•â 'K×´-FËXÑ5½:ËWÑõm6æ+Í;TÒµ+h¯týFÂîx.¬¯m&†æÖæx§‚Xå™Iѯ‘?àŸž ñ¯ÃOØ/ö#øqñ* Û_ˆ¿ÿdOÙ³Á>>µÔ„ÃQ¶ñ¯…> x/BñTâà,âövÂþ;¡:‰„ë ”Ü+ëº(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ÊŸüËcâmOöýˆôßkVþñŽ¡ÿPý›,|'â+»85]Ä×i84jçOº·»¶¿·ÒµY-o¦³¸µ¹‚ê8 ­æÚ6é¿á…¿àèŸúMÿìïÿˆ[ðÿ¡â€?¨j+•ð&Ÿâ½'Àþ Ò¼w¯[x«Çg…<=§øËÅvú]§‰§-…¯ŠGõqûþÃÿ?a?‚øMðÛIÒ5oéÞÑ´Ÿ‰_®|'áâ/Æé×:¶©sâjš…½Î ‰­x‡_›ÃÝî¡aà½PÃz‰§Z!“ó§‰Íxýºy}LfIÁNê¶ii„Îx¢žÎ–UuÙ^KQ]U̦¡ÇÓ|˜(С)beý— —€¾ˆÑ†3‹°œ;â‡ÒrœaW-àjÏÄ>ø‹²”qü|éN¶YÇ^&`¤ÓÁp] ˜®áLe7‰âzù®gBŽMC’ÿ‚ÿÁ<¾ Á=þêÞ ømqªø«Åž3¿ÓµÏˆŸ|Um¢ÂIâVÏEÓ´ÕÑôÉt­'O›Hð—ym¨ê~ðÍÖ¯&‹s¯k7:Æ«¨ê7º…ÇßQ_—åø«‡ËòÜ- MRÃá°ðTéR‚»´b·r“rœäÜêNRœå)ÊRÈü_ÆSÇüKœqgÙŸqFŒž?8Ï3ŒULf?‰šŒTªÖ¨ß-:T¡N†ISÃá0Ô¨áp´¨áèÒ¥Š(®ÃæÂŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿œ¯ø9_þ ÅðßöÂý„~#þÓRKã=ö„ý„¾ü_ø½ð_Ä^ Ö ÑCivðxSÅÿ´ŸÄšeÖ£­éÇÂ/åÐá²Ôt«SžêöÖwûeÔÿFµÈ|Að7†þ(x Æÿ $ÿ‚MþЇíIÿÓýˆ>:ëwÓjž'ñ¿ìãðÑ¿ð·Šî¾Ã¯ØhYhW:]ÏÚ¬ïn,®µ¯Ù þM7ö_ÿ³wø)ÿª×Ã4ôEQ@Q@Q@˜¾ÿ‚1ÿÁ/|ûS¿í§á_ØßávûHÂM7­¼qo?‹¤Ñ4¿Ï|uFñ¶…ðÂçijü'ðÿŒÓVfÖ-üY¡øOñ ¦²Í«Úê0êLn‹?lOø#wü·öþñìkß‚ž1øÏâkkK -6 Sö”ý©¼3àý 6Åtø?áøsào~øyáy¦·V}JëÃÞÓ.µ›Ù®µ-^kíFòêêoÓÚ(Žøwà/ ü*øà_…þ´¿ÓüðßÁÞð„l5]Ä>+Õ,¼/àýÇÃÚ¦¥âêšçмIm¥iÖÞkþ&Öõë &£­jš†¥ssw7cEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEø{ÿ[ÿ‚Õüÿ‚{ø[Ä~ð¦­á¯~ж¶A®´kûÒÞ øW Ô1Éo¬|G¼²š9æÕeŽx%Ñ|¦Îšæ¬Ó[É}.‘eqe.£äçYæYÃøæ¦!P¡•(F2«ˆÅbj»QÂ`ðÔÔ«bñuåîÑÃЄêMÝÙF2’ýÃ/ ¸ßÅþ*ÃpäÓͳZ´+ãñØŠµ¨à2lƒ%Á%<ˈ¸—:ÆNŽ[pöUEûlÇ8Ìñ|0u%^­U>Ýý¹ÿà Ÿ`o‡'Æ_õµÔ|W«ÛÝÂð¯C»´>5ñ½Ýº°’kkiœ®á› ß‹µDM#L –±›ýfëMÒ/ÿŠ?Üþß_ðr—í?âý;Ãì~~Ï?$ðþ§â߉7–>(‹áŸ|#â¯.wàÙßO´Ò¯,|ðVƒàh0¹™ìô/XÅem-õã>§«ê š–·¬]—¾Öu‹»íVþY¯o'•þ?’f|_^ŽgÅØy`²ZU#_*àÙN3SpjtqÜS(7K‹RŒjÑÊ ç€À¾Uˆx¼B“§ý›xŸÀßG<¯0ࣾoKŠ$ñ§ˆb°ƒ]ñŠüUâý_^ñ?‰×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€?;ÿà¦ðRß‚_ðJ¿Ùû@ý¤~>øã7¼ âоøE™ð;þ ñ7Š´íÅ^ñ‡ˆ´Í[S°ñÏćT~ø2ïJ¸º´Öï55Ö5]Þ"{[‹ËÛÅoø‹ãö ÿ£3ÿ‚¡ÿâ;üÿè—¯é ãÏìáð¯ö‘´øSeñWG¹Ömþ üsøgûDø;{¥¶[‰ß u+WÁºÒ¼ yekswp.lÏŽBhdT‘}Þ€?”oø‹ãö ÿ£3ÿ‚¡ÿâ;üÿè—®+âWüóû/ï·…ÿdø)f™âaà¯ê^ ø'ð‹ÃŸ® üéÚç‰lÿh=rïÃÚE¦¡öyõ-r×DÖ.t›(翃KÔ%·[I¿®êø“öËø—ñ÷ᯂ"Y<.‹5†­ã¿Ž? ´¹u[©´ÝR]'NµåÈŸðM_x»â_ü›öøñÄz¿Œ|{ñö(ý•¼mãox†ömK_ñO‹¼Wð/Àšï‰™ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ Ži¡¶†[‹‰b‚Þ¤šyæ‘b†bRòË,®U#Š4Vy$vUERÌ@×ñ+âgÃñįŠ~0Ð<à/ Øÿhx‡Å^&Ô`Ó46ݦŽÚÝ$¸”Íy{=¶¥éÖ«>£«jwVzf™kw¨]Û[KüFÿÁGÿà±?´Ÿükât?°Çü£áŸÄ=Ã^2×<=á[»/iZòë^-±ñ.·ƒiãÏ$Ð,oâø3ð;»µ\隥ÄW:Æ“e-÷Šnâ‚êãBðïÌqá²IaðT0õslÿ0RYVE‚”~·‹q|²ÄW©+ÓÀe´dÓÅf8®Zb¤£íjòÑŸî~xœø£K8âŒÛ8Ëü=ð“ƒçB\}â¿Ò®ø‡áY{JYNU„£loñ¦eI8ä<‘*ù¶g^t¥Wê9¶Ì(}‘ÿ–ÿƒ‹<ðDñ/ÁoÙÅ–ú‡‰¥–ëÃ^ øÝ¢G­pú©ómo<%ð2Ć\ñ OåÙÜüFxçÐ4hå’o ½Å캊tŸŒ?à—ÿðn÷ÆOÚ«ÇÇö®ÿ‚»h>0ð§‚¢¿øuñOàoìÏiãxÿ¶¼Sâ Ýr_xTý§-¯tëïiËgoe¡ø‡Â×—ZWˆï›Å>$Žê÷AšÌÛ\~ÄÁ¿à¾ýuß þÕ_´‹ávÿÁ@F‹ãXñ·†ü5Ñ|a9ÓWÂß<-©h>½’ÎÓÂ06óľ,ÑŽ±¨_kþ)š+; {»8í¿¢ªáÉxcñÐâ>)ÄRÍx‰Fk N”f²Ž£U/i„Épõ.ý¬•¡ŠÍk¯¯cToB‡îªñ3ÇL–<+‰ðgÀl›À^ ʾ§ãs ˜yx‰ãe—ÊO Ÿø›œ`­ìú5±YåUW píJŽ·&iš§š DHÑ#8ãUDDP¨ˆ *¢*€ªª PEö§óQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWñ“ãÙ§á·ü[þýŽ|sðÏRñn›ðëþ eá¿Ú³ÅŸ4¯øž9ôoÚÅüMñ6³wá2ÛLÒì Ó5oj?t­+F½“QÔ,®µÝFhu)Œöö2fÕüºÿÁÏÿhH¾~Ì?ðRßÙ›_øwá߈ßðKx»ãäÞ6}NãRÔ¼9âíCá–˜öÐ-|/¬i(’wÃ:-þ½¤x“^ð¦šÞ·ÕEµåþ¡4LýEQ_3~ÅŸ/?iOØóöTý¡µ)l¥Õ¾9~Î~-kGO†+k8µÏˆ_<9â­nÖHn.£±û­ª^ZI§‹™šÂXÎIH×Ó4QEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEW‰þÒß4ÏÙ¿öqý ?h}jŵ=à/Á?Š¿5m5T}CLø]àM{Çö(ðAs:5Ý®…, ÐÛÜJ¦@c‚W {eyŸÆ¯…>øñðoâ×ÀïÇ$Þ øËðËÇŸ |_+Í/…þ"x[Uð†¿IsÖÏ#éZÅÚ¢ÜC, Ä b’2Ê@?‰ïÛsþ äÓü}û8ê?ðP¿ø)çí‘ûKüLý¬¼Eñöoñ_Ç;Â^#ð?†> üø]ñSö‚øCáŽþøw øŸÀ?µM:ÓàßÂøÞÛáæ§i¯è^ÓuÏ øwSÖ<"þ²Ô´Û¿¢þ3øâeøŸ¦hþñ¤Þ °ð%ÕÅ®±sÃ?¿ooø8oöA¿Òàž^8ÿ‚c^þÚÿ4,~üÿ‚…é~"ñÎû?øŸÂÖïý—኿µm/À¾(ðé¹µÑ_N¼ñ„zçÄ„ž-•´ëá¬Ùê^$¸¸Õu êÇà­Ÿƒ´ÿƒ l>øKþ‡ö? ¼gà_}’ ?þ¯[x[J‡Ãû­ÅÝ­—ü#z"Xèßd¶º¹‚Ûì^L7F‹#zeyÿÂê~|4ðµ¯Éâ½gÀÿüàý[ÅBm¦ñ&§áŸiº-þ¿-»K3A&±ue.¢ð´Ò˜šä¡–B»Ï PEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@TsM ¼2Ü\KAÍ<ó:Å 0Ä¥ä–YªGh¬îîÁQAf hJøGöôÿ‚„üÿ‚|ü=ðÿŒ~-.½®ø‹Ç—šöð×á÷…- ¸×ü]«è+jº„×SCg x[Lš}N×üQvn"ÒnüE¡ÛÃa©_êVV?ÿ·'ü/àø“ZøÿìÑ´ÏÚâõÕ·‡­4ïŽ^ŸÿgíÄš–µ{k¬ø7ÃöÞ×bñÅψzf—c‡Hð‹/…lµ {O]OÄÓê]÷†/)þÃ?ðGo‹?þ5ë_·üÿTÕ%øCá´ ðþ¥cªÜišH"øÙ¢Gá{­*ßKÐ&ÂÚ„¾ø;YÓ´MLðoöN·öýö? Y|>oÄØÌF:¯p•9†yNÑÌqõÔ¥’ðÜ&•ªfui´ñ„¢Ü°¹= ¬EV½¦&xl<]ISxuàwäü)—øÏô‡Ì³>ð³êUàÞÊýümÅa¥iàxŒŒ¡“pŠ4³ïsl<²\½M`òZæsQa(|ðŸöBÿ‚ƒÁsu þѵ×Ŷø'û0k'‰-¼gð ?7L–[MPø7ð§Å²ø¿AÚ¶§«Kñwâ%ÿ‰uÍfÏñéZ}®µ¡^h7þœ¿cŸØ3öVý‚ü©xöcøQ¢ø |Lž›â‹ØË«üBø§­xgJm'Nñ/ÄŸj .±âlG>£yºâh´Û=CYÖît7M­ärýEzœ?Ã8L†8ŒD«VÌóœÁƦmžã¹gÌ*Çh·¡…ÁQøpyvC …¤£BSç©?„ñƒÇ"ñf®Q”C.Ë8#Ã^§W á÷…|+íèp—à*;T¯Vœñ9ïæi*üGÆ9ÕLV}ŸãeR¶'K °Ø,1EWÒŠQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~~ÁX¼ÄÏø&ü'ÁR$o6­ûþÒi‚gX ]{GøMâ­sòÜHÖ÷^]´:ö›§MpéÌ£´9„r'èpŸüoñ3áÄo†÷s}ž×â€ü_à‹›Î¾E¿Šü?¨è3Mº,ȾTwìû£ÆÜ§Ì~MÁ»þ9ÿ…‡ÿZý€5ÿµ}¯û?á±ào7ÏûFÏøV|sð×ì¾g‘o·ì_ð‰}‹ÈòÛì¿gû7Ÿsäý¦_Ú þI?àØíOö‰ýš>"ÁD¿àßüy øëÃßðNÿü1àÍ߇ü7q¤Ùǧ|iñÆoüG¾ƒPÔ!·Ö.t_뇄üK¡iÚ¤Nöëä–w[]¯ën€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>×ë·ì…ÿ&›û/ÿÙ»üÿÕkášü‰ÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†hèŠ(¢€ (¢€>Fý¼?l‡_ðOßÙ#ãWíñ_FñGˆü ð[ÃúV«¨ø{ÁvPßø—^ÔüKâÀÞÑtèîf·´µ]SÅž(Ðìoõ{Ù£°Ðôéï5«âlì&Sóì‘ÿ]ø%û]ÿÁ7|Oÿ*ðoÃOß|?øÏãoü.ŸKЯ>&A{ð#H×uxWÂmq®iñ^£ª[èR/ƒuñ&‹£ê²ê}¶¹yá‹èõ‹=#ô—ÅÞðŸÄ ëþñç…ü;ãoø¯J½Ð|Qáhšo‰"\xÕ_ÁàoÍâØÑí£y<3¨>¼‰%ìÖöhÏ¥-Ú«Ýϲ’y£ˆ;¨ÎðN¯‰6øÉÿúý…>/|K×î|Wñâ§ìoû1|Høâ›È,­nüKão|ðG‰üW¯ÝZé–¶ZuµÎ±®ê—úŒðiöV–PËrÑÚÚÛÀ±ÄŸdWÉÿ°UçÂMCöýŒ/þi^1о_~Éÿ³¥çÁMâ$–|@Ñþ\ü ðtß ô¯K¥jZÆ—/Œtÿ¾iâi4Ý_U°}næ³Ô¯­ÌwRýa@Q@Q@Q@Q@Q@Q@Q@ÊŸü˯ÝxOöýˆüSc jÞ+½ð×üCöl×ìü/ Á%Ö»âK­áí'¨Ûè-¬1O5έ¬MlšvPM$×—0Æ‘HÌôßñ×íeÿJöÁ]¿ðÂ|JÿçMGücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨•ð'‰.üeàø¾ÿÚ׃¯üUáOx’÷Â>#¶–ÏÄ>»×4‹=NçÚõœÑA5¦µ¡Ítúf©m,Ëõ¬ñIn…UEQEQEQEQEQEQEQEQEQEQEQE|9û}ÿÁA?g¯ø'gÁ-SâßÇ?ivzÎ¥¦x¦ÛáÃ}4>1øÛñ@ðåî»§ü:ðMž«ÞÉ©ë3Ág¦ËªÿeÝiú4š¥Œ—Á¤º³µ»™J0Œ§9FŒ\¥)5Æ1W”¥'d¢’m¶ÒI]èkFlMjX|=*µñêÓ£B…r«Zµj³P¥J•()N¥Z“”aNœ#)NrQŠm¤zßíQûXþÏ?±7Á_þѵÄÝ+á7Áÿ\èÖZß‹u=7Äô£Pñ«k¢èÚf“á¯é!ño‰5[ûûÈ„ZW‡4[PKH¯u)m£Ótëû»oã+ãÿüöøÿ‚ÛüR›öTý„| ãϳ&­¯xßJŸUÐu‹Ýâ·íð›UÓO…#ñÅfãN°¾ Þhúž±©èÖš«x]þÙÑ­T·Õ­t«KŸ—>þÍ?ðPø8ö¹¼ý¢ÿhh¡øuðÃCÿ„/I‡ÁZv¡â½WöpýŸ4 X°´¶Ñt_Zš×âgÆ‹ùuwÄ÷z}µäi©âKÉïõ×:OöG÷[û~Åÿaÿ…öÿ ¾ xkìiû5׌|m¬}š÷Ç?5«xLCXñ^µ½·Ÿåo›û7G±‚ËAÑ#¸¸HÓ,þÓv÷œÕÍóN5«SÂøŠ¹g Âs£˜q}4–#0ån°|(§j¥J®}R2ÃЗ7ö|15 ªÃû?áçýpX.*ñã&ÀqÇ8œ62àÿ£¦2ržQÂkJ8Œ·ˆü~©‡œ*áï ÑÇåþakRγ:N‡úá_%˱Àb~?ÿ‚cÁ!¾Á;<%¥jöö:/>>I¤Ë¦ê¿WJû“á]6ò%Š ü/Ð¥g‹ÃZpoµ¾ÖÌkâoyׯ¨ÝYiVÞÓ?\袾×'ɲ܇K-Êp´ð˜J.RP‡4§V¬Ýêâ1¦åW‰­/~¶"¼êV«?zs“?˜üEñ#|Xâ¼Ãxÿ>Åñæ •bq •6 …³ÀåF]†…M’e”-†Ë2|³ …˲ü|Lø½ÿ n…àÛöøeðD×´K;ý[M¾øñãpð/…-õx,TÆš¦¿ðÏD}vÚfy4ˆÖÏÄík16Üÿc4QEQEQEQEQEQEQEQEQEQEQEWÁ¿ðPÿÛ+âì=ðWÃ>þÇ´gí½®ø‡âŽ‹ðòïáGìÅásÆž=ðþ“«xOÆÞ$Ÿâ¯¥èñ-å¿„4›Ï Xxnþþ[­¢Ö|Y [½ÜrÝC ÿyQ@Àïüÿþ 'ûBþÕŸðKßÚwàŽàŽ?ðQŸÙWÂÞ=ÿ…-ý©ñïãÇÂ/ø_áO€ÿáý¡~xÒËþ­wXøy¡iÖ?ð”j>´ðf‡öV×í>$ñgŸ=ÄVÓk_²üšoì¿ÿfïðSÿU¯†kò'þŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢Š+åÛ§àß‹¿h¿Ø“öÅýŸ>ɤEãÏŽß²¿í ðoÁ2ø†öm7@Åßþx»Á>“\Ôm­5 ‹ !5rɵ+Ø,/fµ²Ï¥Ëư¿ÕñGü«ÆÞ.øiÿæý¿>#ü?ñ¯àïü?ýŠ?jŸx'ÅÞ½›M×ü-âï | ñÞ»á¿èz³%ÆŸ«èzÍ…–§¦ÞÀé5­í¬3ÄÊñ©žŸ³w‹¾<ÿÁdÿ„ß ?à£?|/ñÇö[øUàoxOý²|à­ÃÚ×À™!·µÑ<;ðÏãÇÃѯøÛÄ0ø{¥Núoþ|{ð$_½´:5Å_†Þ´K]~Q|`øÇÿ+ÿƒ“¼3ñ3áŸì3¯ûÿÁ-­ôhZ‡íñOIÔ`øŸûhëvV×öÞ ð߇´«ý>÷IøQ«kP¦â›=+[‹MƒEþÖ—ÆÞ'ñ®ïðj××?b¯ø%ÿí¡ÿSÓ¾þØð^ˆ¿ðœü;ð·„<â¿ÙãöðœÂ_ Ì÷: Œö¿i]L¸øI»qmuyá?±ÿà˜?ðD¿|Fñ_·7ü³SñÅïŠÿlü1âôðwĹcÔ­z•xpß þ|;ø+àOü2øSàýÀžð¥„Znƒá­ÔZØÙ[Æ 4’34—7×÷OºãQÕu îõ=RòI¯µË«Éæûú(¯Ñ©R¥B•:)Ó£FŒ#J•P:T©Â*0§Nœ„!¥Â)F1I$’?Œ1øüvkŽÆfy¦7™fY†*¾70Ì1øšØÌv;Š«*Øœ^3ˆLF'ˆ­9Õ¯ˆ­RukUœªTœ§&ÙEV‡ QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü®ÿÁÚqÇáØ£ö9øä³-”ÿळ׎ï5&»Ô­^ÏÃñøCâÀÔÔéÐ\:Ý®±kụ¹+Ö¶ö—Me3]?¶ø‘¡êžðþâ½vÞÏÄöoeñ'EðÞ‰ÿ ߇ïWÅú^‘­Üj:.·w-­õåŬ‰spE¹¸bï@jQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEWñ7á¿‚~2|7øƒð‡â^m⿇<⿆ÿ<-y=í­§‰|ãÿÃ+Ð.®´Ë«-FÚÛXеKý:yôûÛKØb¹i-.­çXåNÞ¾[ý¸þ'øÇàìSû`|gøyo5×Ä„_²ßíñ?ÀֶЛ‹‹Ÿøá7‹|Wá›{{qkzgšmkI²Ž(E•Ù–FT·¼§ø[ö‚ÿ‚îÁbˆš—ìëñŸöÆðwƒ¾ |7X¼1®ø'Â>ø×ñ}¼u£[ÁfÞñ±ðáÏÄFñŽ‹–§ jú¼ö›w özœ¶÷1GùoûbÿÁÿðI‰þ ñ~·ðsþ ëñ×À:–ŸðÃÅ:=‡Ào~Æ·Þ(øoñ_žÇW{M?Çã×ìGwã¥_ È<5©[øOöŠø+¥ÿdG¶úç‡uV»ñ ž§ûRÁàž±OüßÅßtÙOàÏLj_?áBþÓŸþ<üEøoá?‹ß~5i¿~6|*øÛûEkzߎ¼{¤ø»Ä^ø»à|A²ñ·‚ôÝJÏš÷‚|O¯øVkXt}ZòFý??ðJOø%wÄÏ ø'âÂØÿöQøs¨<~ø›ðwã¯ìÝðcá'Ã_è×ÒÁgâ/x÷Â/ð…të_iÅ_NÕít¯Câ?ø£M”éÞ"ðþ½áíJÿN¼úWö ‹MƒöýŒ Ñ¾ÜüÒ!ý”gh´¯‚÷š‡ˆõk¿„:l|–? îµOßjž.Ô®|j"ð¤ú‡Šu=GÄw’é-q®_]êr]\Iõup? ¼G©xÇáwÃok7EÞ¯âŸø?Äz­ß‡Äƒ@¹ÔµÏiÚõƆ&¸»”i]]K&š%º¹Y4!î&lÈÝõQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQU¯olôë;½CP»¶°°°¶žöúúöx­lì¬íbyînîîgxá·¶·…iç™Ò(bG’GTRGòƒÿ1ÿ‚ÚøÏâ—Š®ÿbø&âÏ‹? ð³jºeôVz犴}+_Ñþ«ÿ‚IÁ-ü?ûø÷â?u-WÄÿ´çƯx|W—X>¿Ò¾\äÚë>)øMðÛSÑme¹¹ðô~5ººŸÅ%¹×59~!jðΫ2Ùiº‡´½3ö*¼<³†ó Ó‡â3tkãðóUòŽ¡?m“ðëûSiG4ÎãÕ\Ò¬= ¹SË©Q§V§êœqãWð æþ}a™å\'›ážYâ/Œ®ež$xËËõ¬-9ηøaV´²þÀb>¹šá¡CƘÜÃV¦_ƒ(¢ŠûÃù4(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šæü_àß|BðÖ±à¿xSÃ~8ðwˆm †¿á?èz_‰|5®X™#˜Ùkµk{¥êv†X¢”ÛÞÚÏ ’8ßfäR?‹Ïø7Ëöîý›ÿàž?lOø#‡í'ñÛágÅÁD>7éÿ³Ì^'Ñnto ø›Ã•¦‘áí+EOEi…´Y5›¿ÛëµÖ®ìgñ¾9Ó,47¼I¬¬í¿¶züzÿ‚´Á ?doø)OÀÿMñ'àõ…÷íà߇?î~|Rð•Åÿ†|q¢xÿRð¦¤|9§q¡]XAã}OC£^ÜxcÅðêúeÄöàÛ¥œÓÍ;~ÀÃ47Åqo,sÁx½ì.ô¸u NÓÃÞ$ðßÅÏ„è×[k7ÚߥÀ¸þ¸h _Àþ ðÿïx?á÷„ìÛNð¯ñO¬ôí_ÄzŽð+àƒt{›=ó_ÕµËMZ¾ñ§Ä ˽gIÑî|Xž×$þÐÖ£Ó¼?¥YiŸnÒ´ŽÏx¢¦²ÂC:âzÔãQ`ý£†)ÃÔÒ9Ž}Š‚—Ôð‘Ož–)ã±òJ–•¦ëSþ‘ð£ÀŒ&}Õ<\ñˆ+øiàV[­‚Ÿ¬-‘ øcÂн”‘ßÝë¿ð“jOx¶¾!º²¯rÿ‚^ÿÁ(¿f¿ø%­gÂ_m5]wâwÅ#áÍÇíñ“Ä:¦»{®üeñ CO>*“KÖu½zè÷:߈|a¯i>Òog°Ð¤ñF¡n/5 Yïeý>­¸…á•W­›æx©ç\K¦©ã³œE5gE>u—åXdåO-ÊéIÞj-δÿ}‹«^µ§;Åïñ\{•å¾pFA‡ðËÁÆOÂþäø©âV/2t¾¯SŒ8ó;”(âøÛŽñøx¨b³ÌÊÃeô˸/Êrå,=BŠ(¯«?ŸÂŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åöLðß…?fßø:Ëöôø]áè~ðwí5û|3ø½áŸøCÒ¼; Ÿø&o‚>ÔBÒt}O´…u†Ðþ"ø›ZºŠVûwˆF³{}%ÝýÞÛêþ¿ïø8÷Á?´ì5ûX~Êð\oÙçâÆ‡àðÒÓá‡ìoñ“ÿðƒéž)Öõ_‡ž+ñ·Å?ëºôƒ_ðçŠ|>úf©áýbóÀ·×KµñfŸ-Ö‰uá­^ ëK‡ûGI$ÖHäUtt`ÈèÀ2º2’¬¬¤`H ‚ €EPEPEPEPEPEPEPEPEPEPEàß´?íGû:~É> Òþ#þÓ~ü ðµâ‹/é.øâ7Âz£âíKIÖõÛZj:¬Ð[Ï«ÞhÞ×õ;{$s4–ZF¡:©Kiüzÿƒ£¿å·7ýÛ7þ¶ìû_®ß²üšoì¿ÿfïðSÿU¯†kù—ÿƒ‰¿à¨¿ðNŸÚ/þåû`üøûiþξ+xÇþûþ_‡Þø¡á¯x¯Äð~ÔŸ¼U®ehÚ}ì·wŸÙ^ÐõnûɾϦ鷗Rb(‡ôÑû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùfÿƒ²ôm'ı¯ìáí{O´Õô={þ Çû.èÚΓ \ØêzN©ð¯öޱÔtûÛyG=¥íœó[\à ),2º0*ÄWê·ü97þ ÿHæý‘?ðÊø;ÿ•ÕùyÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jÊÐt-Âúá¯é–Z/‡ü;¥iÚ…£i¶ñÚéÚN¤Yçéše…¬Ab¶²°²·‚ÖÖÞ5Xá‚(ã@@­Z( Š( Š( Š( Š( Š( Š( ¿ ÿà¨ðWßðN¯jšS^è^:øõq¢Ë©i>—VK] Á¶RF~Íâ¿Šš­¼«&…¢)ežÃ@ŠXý˜¼5ýˆú-Ÿ‡4½Ú-1£µ»Ò´½.ãÇZGˆ5$×®n¼A£Ïý÷~ı'ìùÿ÷ýž<#û2~Í»ðÏà ͩÉ6¯¨gÅ*ñ6²ñI®øÃÆÙ‚Ôjþ$Ö¤‚Ü]ÜÃiccokke¦iz~¥XXØÛýA èZ/…ô=Ã>ÒtíþÒ´í @д{;};IÑt]"Î?JÒt½>Ò8­ltí:ÆÞ ;+;h£·µ¶†(!#EQ«_O‘pþ[ø7„Ë©NõjKÆâjK˜fXÊšÖÆæ8Ê—«ŠÅU•ܧ7ËjtaNŒ!N?…ø¯âÿøËÄtø‡Œ±Øog—à¨å3ÃY6–OÂøD¡—ðÏpæØ ‡#ÀRŒaK †ƒ«ˆ¨§ŒÌ1ܾ'X¢Š+Û?0 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àãÙãÄ´Çüãöµðü-¯xËâ‡eðÏâ7<=áoê^,ñ&¥­xâÏ‚u½JÇCÐ4k{­[PÔu?Åâm&Óà–â~÷)áŠ[y}_þ£ÿðWügöðÄß xƾñoÁٴٻãF‡ã»'OÕ øÍðËá×€.üi}¦[éšæ·;xoVoXê<ÚØÒ5ÜMqm©h¶sZïŸõ®¿ˆ_„¿¿ioø ü£Ç¿~/|;ð—ÿÏÿ‚°þÞž5ñWÃ/‹7Þ$ûmßÂýkÅ1ÝÿgÇd4q,ü acâ‰_¼;â¶ø“¡±¹ð75 cIÔ„:f¥®@ý½QT4­WL×tÍ7[Ñ5+ cFÖ,,õ]#WÒ¯-õ 3UÓ5 xîì5-6þÒI­/¬/­&ŠêÎòÖYmîmåŽhdxÝXß Š( Š( Š( Š( Š( Š( Š( Š( Š( ¼ö‡ý—?gOÚÛÁZ_ÃÚoà·ÃŸŽÞÑ|Qeãm#Â?¼/¦ø³@Ó¼]¦é:Þ…aâ;M;U†{x5{=Äšþ™ozˆ&ŽËWÔ V s >óE!ÿðq7üëþ Óû:Á¿lŒŸ?bÏÙÏá/ÅoÃ?Â+ñÀ ü5áßøþÚ“à—…uÏì­gO²ŠîÏûWÚ汢_y2/Ú4ÝJòÖLÅ;©þš?d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEüõÁX¿à¾ßÿ`ýUý›gHý¤n›OÁ§XøEp|E¦ü=øUá=uSZÕ|UñoǺmˆÓ4É¡ðà¶‹M𞓪\x©õ/xrúïMM1¥ŽãŸ‹ÂàpÕñ˜ÜE. NU±œEHÒ£F”çR¥I¸ÆŠÕ¹4_ È3Î*β¾ᬣ1ÏóüïC.Ê2l£_0Ìó,~*jž ‚Áa¡R¾"½YµS¥ IêídÚýý§¿lÙ³ö7ð$¿?hï‹þøe¦O§ø†ïº¿â *ׯßµ égWÔ<)ð£Á3^EâO‰~5’Ô¶^ðn«ëwSÝÚF–€\#å¿öŽÿ‚~ßðW[Ÿ~ÎðM€þ=ðOÂûÏ Ùj>1Õ|k­øsá׌¯l¦†Æß\Ò~,üOÒ|]â‡Þðĺ®±”>ü>ñ'|uã­KÔõ(&×<7uâ x{ÉÿàŸ¿ðIÚ·þ añÓöÝÿ‚—ü\øŸâŸkšÎ»â éÞ,ÖüO毡x»T]~÷À¿³·ƒ5ÝNþÃàì÷<ße† ÏÃiâ&ÊËû+ˆæ³ñF‹ýžü-øYðïà—Ãÿ |+øQá ÀŸ¼¥Å¤xoÂú ±·°Óí#g–Ydy[½CRÔ.å¸ÔukS¹¼Ö5Ý^î÷XÖoïõKë»É¿;æÍ|A²¦ñ™ÎÍÕýî;âÊ/ìÒø1FC]|U³Ì³*´>©‡ªå?ìuG€þˆ7–29â—Ò—uO/¨ñ'…ÿGüÁE~óe‰Ê|Fñg*¨Ú†2ÅpWæ”Üñ2â,ã8OÇø&güËàì+5§ÅŸ‹W~ý¨k#Y7„_ˆz§ö'l#ŽÆßÃ×¾O‡µÿ ËÄWˆ¯“Åþðü2DúÊÛ ßìZ¿?à»ÿðFo…ßðSßÙׯ^8ðWë Ûßá‡ÃØ4¯Ù“â‚x³Vð­ÜcJñ•—Œ®>ëÊÞ&Ðü©è~'Câ=+IÕ|eg|þÕ|O{âïO’}RKñ¯ösÿƒ«<}û3ÂIûÿÁI?d5ý¹þ|FÓ¾Ý音e‡¼c7Äfð†4Ïê~#ñëß§Ÿ\øâi®»-×b¾ð—ŠôhÚ—†£·†Úv¾þàè¯Âø&Oü%û ÿÁP>'Oðá‡ÅŸ„´/ŠüDŸ ~0øNÓM¾Ô´o\ÚE­M£ø›ÃZ·ˆ|1u¨Ú[^-ýÆw¨éúìV¶z¬ë§Ëo¦\Î?v(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ðþŽÿ”~Üß÷lßúسí~»~È_òi¿²ÿý›¿ÁOýV¾¯ÈŸø:;þPQûsݳëaþϵúíû!ɦþËÿönÿ?õZøf€>ˆ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( ¼wã·í ð3ö`øu©ü[ý¢~-|?ø+ðÓH¹µ±¾ñ¯Äi>ÐR¿2.¤Û^ê×6ë­jM©¦hÖëTÔdŽHì­'tež?ðVOø,7ì½ÿ©ø9â=gâOŒ¼?«þÑz÷ßø§àìöÍ®I¯üR×4û»] IþÓºÐôRx;þB#ªxÄiq]izG‰“ÃgWÕ´k«¿ƒOŠ—_ðR?ø.ïí3¥ÜþÑCâ+x{Çwÿ¾!~Ï¿°çÃ_˨üð††|2–3xÃÄú<^&ºƒá«?‡&º¼ñ/‰üa‰ñ.K_ëW7—ƒt ;ÿ<ϲÞÁ¾mžg–.ŽUÃ<%ÃØ.Yf|QÅÜAŒ•<» á쮓ö¸ÜÇVø0Øjxœm|6·Þ¿·ïüOûXÁKuÝOöpÿ‚jè>9ýŸ?f/ÙøÛáWÄŒ:Ç„¬µ_Œ?[Ä­¢[éŸ ÖÍï/¼>­á[½5ì´o OįHú–»¥lÒ­åýzÿ‚<Á¼ø¦xã‡í‰áøüMã[Õ³ñ‘ðwÄ󧈮°ñ¬–¾)øåªÎf_xže’ËÀáäð÷‡·y¼w·*ú6“úGÿµÿ‚7|ý‚t 'ÇÞ0Ñ|ã_Ú>âÚæS®hº Ž›àO„±êÆiµü"ðí½†Ÿ¤»›»›mOÅñév¶¡ ÷–:M·‡ôKýCK¾ý©¯”Âd9ŸâhgeEað*C“ðjœjá°³ƒS£âÂô³<Õ;J– såÙkÒ ‰r¯è ñc‚<ɳO¾™•Lã‹3L'&ñé%<-l»<Ïpø˜{Ç„üÂâqÜÀs\ô1ÜI%†ã.3‹rÄO&ÉcC,®ŠªŠ¨Š¨Š¡UTUUUU@ )h¢¿D?÷Ü(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+‡]“Åx_ñxš]Þoˆ£Ñ4Ô×dßn-_ÌÕÖØj¾Ô fÝpw[ Ì`-tTPòÉÿÁ/nø¯Åzg‰¾ܧƒu¿‰Óµ(õ?Íâ?xhi~/·Ö¼)ðËVø«=¶£§êr·ˆ4m_Rð§ˆm5 éb‡ô»þñÿ^ø)ÿYý›,üyðûQÕSâ׿ü0ðçí#ám_E]þߊž%ðM¶­­K ydA«xCQ×ì×ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕüªÁÜš¡âoØwö"ðÞ‘â ÿ j¾ ÿ‚¨þÍz™â­)KêžÔ5o„_´…—ˆ4Õ[¿Ñ®n"Ô¬Ô\@MÅ´`Mw¯mÿ'ÿ‚ŒÿÒÅ·ÿþ/?ùõÐôëEr¾ðþ§á?ø7º׉uk>𧇼?«xÇXRš·‹5=H³Ó¯üKª#\]²ê:íÕ´º¥êµÕÉ[›©A¸˜1ºª(¢Š(¢šî‘£É#¬qƬîîÁQAfwf!UUA,Ä€$:¿—ø-üG¡þÅ?´Ø«öѼ)ñ÷öø×üo ø#Åñ.—â)<ðy<_¡É&„uMNÞãBÒüCãû­OXð­åŸ‡mõ™ôMI›P½ñÍ“Eo¥Þ~yÁeàâŸüu¿ñŸìÿ‰ñN㩼gðƒSÕ>)~Ø~ñæ±ðºûáDÚ/‹<ïhŸ xkH‡Ã_ÆKOôýˆ¿`o€ß°Ãµð­µ_ë0C'Ä?‹>"†ÚøÿU &–]Bú4#KÐmî ÂÚk¦™¦Ä«5ÃjzÜÚ–·¨ýðCà_ÂÙÇá¾ð—à¿‚´xÃp”±ÑôˆJµÍÜ‹¼Ö5‹éL—ÚÞ½©¼i6©­ê·Z•üÀ=ÍËì@¾³\Ù Ö£\CĘªyÇNœ¡N´!(å™% ºÏáj9<=+ZñÕoÇYʽXÓ’¡kÅ?òìdž_ƒÞ dxß|Âc(â±yn#F¿ø£šà¯?ø³žàÕ8fùƒ•ñ_ `]>ánxÑʰU±TešW(¢Šû3ù¤(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+óóþ eÿçø5ÿFý—5ŸÙ{ã^»ã? h’x¯Ãÿü'ã/‡÷>´ñW„¼}áuH¼?¬XÍâ_øŸOk)-õOH×mbÓíõ ýTÕ,4ý[HººPƒôŠþa?ø.Wíƒÿ’ý—¬bßÛÇþ ½ûnüTñÿÀ|[“MøÐþñ¶¥x£á$^,ñŠÅWZÿÄÃâè·òxÂ=/Ç u6sà-+B»[È’Òí`þš¿à•ßðZ¯Øëþ ÕáÿÅðÿÅøµð÷Ã~ñÄï‚ÿ´Èôïø^Ó^š}<ê.©i-Ɖã ÙkͦÜkúÆë)/t_íÝ3C¸×4ëI¿]&†ˆe·¸Š9àž7†x&E–¡•JI±¸d’9™Jº’¬$WñÍÿÿÁ%´¯„Ú„ÿà±ðOŸ†~>Óÿmß~øÛÅžø5¡]êš?Ä/ èZ½·†F³§ü6ðf…6¨Þ(Ëø-Ò”ÙH\OlùÛÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×ñcÿÄÿ‚NþÚ³GüçöŸøÛñkþ =û_þÖ?¼ÿ WþÙÿâ–‘skàOÂGûCü%ð–•ý»<ŸÎX]Aý§~È_òi¿²ÿý›¿ÁOýV¾ ¢(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨¢Š(¢ŠÈñˆ4O èçŠ|MªØh>ðÖ‘©xƒÄæ«s–™£hš5”úŽ­ªêW“²Cia§X[\^^\ÌëðÉ,Œ¨„€ zþ ?àºð\ω´ßÄoÿÁ8ÿà,ø‹ðßß~&ø«á¿ímûOxRo]h~1ðì¾Âú§Ã߆:–•¨ÝkVCXÕ¼k§krYêžÖõÝoÂE¶‡ª§‡/u}Ngþ ÿyøßÿ‹ñ}Ïì#ÿàµñÏìOñSÃÞð×¾ X|7ñ‡‡þ;þО3}jOø—Ám5½FÊóAøMm§[h‰/ußiS^ÜØxáõmGUðdÖöR~îÿÁ"àƒŸ¿aOøWâOÆ/øgÆ?tÏ'SðφmR-_À_¯HŽhïtçºIŒ~$Å2‹‹Ïj&x4›Ä·O CΞÕüñÁþñ÷‚üA VÚ÷„Öíຂö }_@×-/ôJomm®âŠòÒh㺷‚áeŠ7Pý’¿l?ÙÓöæø9¦ü{ý—>#Ù|Qø[©êº‡‡ÓÄVzN½¢5¯ˆtx¬åÖt+í7Äz^‘©[ê:Q¿µŽñ~ÊöÆI?Ñîno?L×ðWâöý¿¿àØÚ§_ñ†|-¦|iÿ‚8þÓµGÅOŒ>(øyðwÂ73ñßÁßÛÜnÑd:ݯ‚lüã ø-óCœxœü8ñ¿ÃµÓµ¿híÓÃý,Aÿåÿ‚O[~Ëÿ?kO~Ù? <ðûâG‡ôÍwIð^¿«&¹ñßMš÷R}Qðþ­ðáÙñÇÅµÏ ëÐÞi)ðÞ»¤iRXÝjŸÚóø|C¬LúùE~9~Ïðpüóö£ø—áσÿmŸjÿ|_«é~ð§‡|eàŒÿá%ñ·plômBÕþ0ü6ð…«kšµ÷—a¦é:œúö¡seamm-åý”þÆÐEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3_‘?ðtwü £öæÿ»fÿÖÃýŸkõÛöBÿ“Mý—ÿìÝþ êµðÍ}EPEPEPEPEPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @W·üƒöIÿ‚|øVÏYý£>&Øèž-ñ>‰â-OáÂMÞëÄ>-_øzKè^ð–™ ÷W77—×V:bêú»é>Ó§º7ZÖ¹¦é¶z…í¤T© PZ³…:Tá*•*T’„) ÊsœäÔcÅ9JRiE&ÛIL&/‹Ã`0lF7ÄQÂ`ðxJ518¼^/R4pøl6ŒgZ¾"½i•4¡:•jN0„e)$þ‘øçñçàçìÍð»Åþ>üFð¿Â…> †ÆoøçƂ麒5MJÏFÒá–m²M=Þ§«ê:fci Åíõýݽ­¤M*!þ.ÿl_ÚÏö±ÿ‚ú|iÑÿdÙÀ?~þËñïtÿëÚ?ÄèšGí!à L?†t_ˆÿ´m¾áß AðËàeLJìüG¨è¿¼Quâý{ǯÚA©iñø¢+Á“tÁß¶ßü7ûH]ø¯[“Çÿ³—ì5á½;Á²é|Eªjž5ø=áx$^ùúÔúfŸá/ |dý õ]wÄúÅñ2 7áÿ†¡Ó4æ×¥“EÐõ?ÿ^²÷ì¥ð;ö<ø_¦ü&øàë_ xzØÅu­j³yWž*ñ¦º¶Ñ[\ø£Æšð‚ õÝzñ"Eiš8,4ûu‹LÑ4ý+Gµ³Ó­¿9©™f¼u9áx{ˆÊ8N2•,oSN–a(¾Z˜^Sèáæ§[>œ“æŽW Ž/ìü/pÑW C=ñ‡(ÉüDú@Õ¡KÃ^cg  xc:°UpYïŽrÂÖK3â% RÆežakÅЧìkñÖ' ñÈjü¿ÿëÿ‚_|ÿ‚yxÚÇÁºuŒ>.êzU¾Ÿã/‹ÚŽiaª]["B[Ã> Ó#k˜¼àky¡ Ðtû™®µ†ÚãÄž­5žœ,?K(¢¾ã*Êrì“C-ʰ”°X,4yiP¢®ÝçR¤äåRµj²nu«ÖœëV¨åR¬ç99?åž>ñŒüPâ¼×¸ûˆs'â|沫ŽÍ3‘sä§OƒÂaè–.Ëp4# 6]•åø|.]—a)ÒÂ`p¸|5*t¢QEèŸQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEr^>ð'ƒ¾)xÆ? >!øwLñ€¾ ø__ðW|)­@.´xSÅ]Ö‰â S·%|ë WJ½»±ºŒ2³C;…el0ü2ðÇüÿJð¯Ž_Ç_±Ìz› {oøŸãÇøÒv’Þo1<;¯üDÔ#¼dŠÙj·†œ#¹¸¶6fÔÅ_¿TPãÇíÿÿ‚[þÛ~ð¿†~#~Ì øoyà¹$>ñ—ìñ¦hß|_ci-…¾&•{àÝ"ÛJñ.”-¬¬µ‹4mv-5ìa}/ì>eйþfî¤ý«¿àÕÚËD7zçí‘ûrÿÁ%<_ð iu %Ja¶‰ë|ãq­i«{Ù[øNçâ‰ñ"ú,ïuÍ8¸þúëæÛGöPøuûr~Ë?ÿdߊ÷€þ7x:_ ëZ®†–®h3ŨXkz‰t!ªÚ_é£\ð׈t­+_ÑÞúÊîÖ-KNµ’ky‘J0¾øCžñ÷„ü/ã¯êÖÚ÷„¼iáÝž×,Ä¢ÓYðçˆôÛmcDÕ­DñÃ8¶ÔtËË[ÈÑE(ŠeF•Ÿ§ìµÿ\ñßüñöÄÿ‚k~Õ ?kßÚ£ÃÞøòì âY¥·<]ðèx/þð‡ƒl¼Aâûä_…ßÂv?† ü(Ѽ_¡xS_××ë·ì…ÿ&›û/ÿÙ»üÿÕkášú"Š( Š( Š( Š( Š( Š( Š( Š( Š( ?ø™ñcágÁ_ Þxóã'Ä¿‡ÿ | §ÈßøÏâgŒ¼9à? ØÍ$SΑ^x‹Å:–•£ÛHð[\̉5â3Eo<€ŠB¼ŸÁ_Ú[öqý¤ô½K\ýh‚t]h­µcà¯Å_|SÒô›‹†`·ÔµkÚí¥„Ó5­ÊÅÔÑI#[ÎXÅ&ßæïþ ŸñLÿ‚»ÁW?ࢵ‡ÆÍ>ÛâÁø'ïÄ ödý„~ø¦Àkð&­q¨øÛOø£ñ×Oðõý³h/ñGÆ_ð€hºž›â»˜µh~ñ£xtO¥Øè~Ýêðq¯‡µÙ3àWÃßø+ìÕgeðóö¯ýþ3|.ÿ„Ç>°ƒKŸãÀ¿‰'Ó¾ø¿à·Æ)ôý6Sãoë:¾¹ág²¶ñ<³'†¦KË ÜéÚΣLý0Q^Mðã†hoŸ~>ø,H¾øÝð«áïÅ¿ $Ò$³ÅáÿˆÞÒ|_£Ãq$j¨×0Økñ\mDÄÉ Ø„³@Q@Ëoüƒ¨Yé?±÷ì ªj7Úiúoü«öXÔ/îæ$Ekggð¿öŒ¸º¸”€HŽ#y\€HU$Ò¿¦?ˆ>ðo¯øÓâwÄOéÞðÿ xƒÇ6ñV¯#C¥xoÂ~Ò®õÏ뚌¨’H–ZV“cw{rcŽI|¨GŽUòËÿ‡M¿üÛöFžy(`ÿ‚™üši\…Hâàí8òHìxUDRÌOM4¿·oüoöÿ‚ù~Ð? ­"ø}ñOàçì=àÝGâ/€3û\Wšv¢¶¦ø‰?Q?à‘?ð@~ÎÞøqñ?ö­ðƉ­ø¿ÂúMÏÃÏ€²Ûé÷ÞðÙ^ÿÂKñ1­û;Ç¿n®ß]Ú\ ßé7óI-Ûkš•¶”þþ¡+â)åy§Nž3‰0õòžŒã[•&77Qjtq|Rá&¡BéU£S“‚—$³9Õœ>­ê,_pÑg ŠáßsŒ¯ÄkáëåÜUãöYáŸ]hJŽaÃþCJ3Äæ¼²«€Ì|]ÅQ¥Š©Gë¸# €Ââÿ¶«ò¾ð7ƒ>øKAðÃß h> ð_…ìLð÷…¼1¥ÙèºbŽòýžÃM°Š [ty¥–âfHÃÜ\Í5Ìí%ÄÒÈýUWèð„)BéÂ4éÓŒaNœ"¡B F„b”cÅ(Æ1IE$’IƬV'‰Äcq¸Šø¼f.½\V/Š«S‰Åbq%V¾#^¬§VµzÕg:•jÔœªT©)Nr”¤Û(¢Š£¢¿7?à¯_µoÅØ{þ ÃûQþÕ_áð½ÇÄÿƒÞðÆ·á(|i¤Ýë¾’óWøàÏ Ý_I±Ôôk«ÈF™¯_’NÑ’èA)vXÚ'ú£öTø“â/Œß²÷ìÝñƒÅé§GâÏŠß>|IñBhöÒYi)â/|<ðïŠ5´Òìæ¸»šÓN]KT¹VÒÝÝI°Š'¸™ÈÀ÷EPEPEPEy7ÇÏk? ~|iøáÕ²xá7ÄohI©A%ΜúÏ…|¬ëºbßÛE5´·M{aº‚;‹y%€ÉM0uø#þ£ûd|]ÿ‚€Á2fÚç㽿„-~+|Zÿ…Ëÿ Tѯ<=áDÿ„öø­ðËCþÊÑõ _]»³ÝáÏhï}çj·_hÔšòê?")ÒÚÕ (¢€ (¢€ (¢€ (¯Åoø!×íýñ×þ ð+ö®øñö×Àvž ø1û{ütý›<Ÿü?¨xwN‡¼ð—]ðüºÅ¶£®ëòÞø‰¯|m¬CS†âÒÚæ²Ž=>Ý w˜ö¦Š( Š( Š( Š+ñ[ö%ý¿¾:þÐ_ðUø*·ìeãË_Åðƒö3ÿ†~ÿ…Cq xPÓ¼aqÿ 7Â7:߉?á0Ö®5Ûû-kmìJ4ß±éGÙaÌr} àö¦Š( Š( Š( ¼Tý¨¿gíöŽðç싪üSðÍí'âÿ†óü_ð× å¼,Ö~[jšö‹?Œ,â[F±m*-SÂþ ³b÷©qæéWD@QU›Þëùyø×ÿ+r~È_öˆŸêâý¨(ú†¢Š(¢Š(¢Š(¢ŠüVÿ‚þßßeoø(7üëöcøckà9þþÝ~ üÕ#øƒ _øE_øößÅòë’ZØéÚÞ<:º6‡eö×¼–pfZOæ.ÀÙê(¢€ (¢€ (¢€ (¯Ïïø*—í5ñö5ÿ‚yþÕ¿µÂ(|7qñ+àÇà ø>i—Z׆¤Õ£Ö´}=F±¥ÙjZEÕí§‘90éY¹FÞn«~€Ñ_+þÂß<]ûEþÄŸ±×íñ="/|vý•ÿg¿Œž6‹ÃöSiº~.øŸð“Â>6ñ$zsw¨\Xi ¬ë—«¦ÙO{5­† nî^6™þ¨ Š( Š( Š+ɾ>xÛYøkð+ãOÄo­“øƒÀ ¾#xÛBMJ .tçÖ|+àýg]ÓþÚ)­¥¸²kÛÔÜ[É,HÒh™ƒ¨¬Ñ_•ÿðEÛ#âïüþ “û4~×?íü!kñ[â×ü._øJ ðyáï 'ü ´Åo†ZöV¨júíÝžïx3G{ï;UºûF¤×—QùN–Ðþ¨PEPEPEP‚| ý¨¿gïÚkþgü(_Š~øŸÿ oâF»ðƒâü#rÞIÿgÄ¿ ù_ÛÞÕþ×ii·UÓ<è¾Ð-üûœys¿8÷ºþ^àÙ¯ùÌwý¥Ûö–ÿÜ=PÔQEQEQEQ_Šß³/íýñ×âçü¯þ Oûxª×Àið'öPøMû:xÛáuÖ•áýBÏÇ“k?¾ü'ñ‡‰—Å> ›]ºÓõk$Õ¼k¬.™¦…¥Éih–PË5ËÁ$³~ÔÐEPEPEPE~+|Fý¿¾:øWþ Ïðþ ¹¦Zø ¿gŸ‰_°F³ûIøŠîëÃú„¿â%‡Ä>‚-7Ä©®Å¦Ûxté¾ÐŒšd¾¹¹k—¿”j ·ÇoûS@Q@Q@Q@øÃÿ7ý½þ9~ÈßµÏüOà›oOàÏÛgö¨Õ> üd“Åzþ±­[øFÎãáÌPÉàËëMoJƒCÕÊø«Tß{{g¬BÄZ‘h<¦ó?g¨:ÿGÒuY,&Ôô½;Q—J½RÒ忲¶¼“MÔaVX¯ìâ)Îö%wXî­Ìs¢³ ÿ,ý¿à°Z-·ì=ûUüÔ|ð§Rñµmãx/âOŒí-¢ð÷еj>ð÷‰í>ê±jð[ëú–©â~çáäº6²Ú¼:ŽÚÒEê³á_Åï„ß|¥üKø#ñCá߯?‡ä—ðèŸ>ø×Ã_¼¬M¥ÞϦêqi~+ðŽ§«èZ„šv£ks§ß¥¥üÍi{o=­ÀŽxd~wý§ÿàÿ°ïí¡c-ŸíAû.|øÃ<×¶ÚƒøƒÄ^³´ñ ¼³Ò_Bµš/è_Ù>5ƒìúC®ŸpkñÄ–ööJ¨ …“[þGÿþÈ~»¾³ßíÁÿýŸ|=©êz¾¯yàÿüoðt^·»ÕìíôɆ˜4ÿ†º¨´‹tÒnîuíKÄZ®£§Emky©I ¾É?«º+ù/ñü9û1ê>’]öþÿ‚‹Z|[mOHÔ ø›â_‹žñ5­¯ö\Žm†,¼á@¬¶_eK{¹|e&¡§ju…Ý¥ÚØ¥Î‘uâ¿àš¿ðqçü¾îÛâ¿ì;ÿBñoü?À~ Ó<[âÍkàOíM'еkQÛY´^Ð<=ãÏ|S¶ñòÉ Û[É¥¶‰ñCáF¥‰mÞ xrÒçS&ðû?¢¿¿ðv¯í_ð‹ö{ñÏÁo‰Ÿ²}·ì¯ÿ7øDÿ WÄzÅÏø«QøkãÛmrV¸ñÜÖ ïo|5㆚”¾Õ¼ã? Økž*ñ>™«èºž³qi­„±Ò"Öÿ¾‹k›{Ë{{Ë;ˆn­.¡ŠæÖêÚXç·¹·X.-牞)¡š&Y"–6häFWF*A QEøÿGÊ ?noû¶oýl?Ùö¿]¿d/ù4ßÙþÍßà§þ«_ ×äOüÿ((ý¹¿îÙ¿õ°ÿgÚývý¿äÓeÿû7‚Ÿú­|3@DQEQEQEQEQEQEQEQEQEüCÿÁ’ºî¯û:~ÞÚ¶§s%楪~П5Bòb ×W·¾Õ®nîe džyd•Èc€úõÿGÊ ?noû¶oýl?Ùö¿??àÚφ·¿±oíµÿ¤ÿ‚{øê4xã¿þ.ü5Òï,†šÞ2ø+¯ê4ÝǺ ±¸ŸE¸ðΧðºòਗ਼ÓO“Åzu”w2ݰŸWÁ×~=›Lÿ‚Gø»à†ƒγñ ö­ø÷û;üøsà"ѵOøßÄÖÿôOŠÖú‡ô›x.oïof†Ç³KÉì4ï8Í©ÛÚ^}·ÿÔïõø#‡üÖëQ¸k«ˆ¿gŸé‘Êë°Ñ5MgFÒíÀJÚi–vˆÄ W•䕞Fýx¯’¿`¯ÙîçöNý‰¿eÙ«QheÖ¾~Ï¿ >øšâØÂÖ÷¾/ð׃4‹jæÞI 0ê>(W¾‹Êžá6\.Û‰ÇïŸëZ(¢Šþy?àæ?ø'—í;ÿ$ÿ‚{ø3áì•áOü@ø©ðËö¡øqñ¶o‡úçŒt/ßøÏšO€~-|4Ö4¿ kþ-»Ñ¼ˆ4ÛŸŠzg‰î-¼Yâ¯é×Ðj“Çáñ?W¡ì¿•Mößÿƒ® ¸•¼Gÿ]ý”µ[V‡l蟵7Á¯ÜGq½›-ÍÿíwâXæ‡ËžBZ[¾öI>ѵ oÒÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔW¢|iü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü]~ß>)ÿƒ˜¿oŸÙãgì…ã/ø#ÁOxgãfƒ¢è:·‹¼3ûc~ꆻ¢C¢ø»ÃÞ.Š}:ÏUý¡ŽŸ<³\øz IäX.%uýâ¥{wÀÿÚcþyøðWáÁ]#þ©ð\Ò¾ü.øð»LÖµÛ7öƒPÕôÿ‡þÒ|'eª_ÁmûC hou m&+»¨­À‚9æ‘"XZþµè åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ äûâ—í]ÿ>üRøeñá–£ÿNø¥éÿ¼ âï_jv_¶À o4ë?xPðýÍý¤SþÐÆ .m Ôâæ'–4Y>Bkåßø'%çü¹ÿãýŒþ~Æ^ÿ‚;|øáoƒð°¿²üeâÏÛösÓ|A¬ÿÂÃø«ãŠ·¿o²ÑÿheÓ¡þÏÔ|sw¥Zýœ2ÊÆÚi¿$¦¿¶:(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆzüçÿ‚jø?þQÿ‚j|2øçðËÀðH_„_tÿ޵ÄßÚWÔü]û`~ÍÚeæ‡â‰¾ð'‡ïü/¦Å£~ЫƦAà;;‹;» o¥–þåf;#Š¿¹ê(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆz?áºàèŸúBìïÿ‰¥ðÿ¢¿¨j(ùyÿ†éÿƒ¢é³¿þ&—À_þˆzüçý›üÿ(~Íÿ·íÃûqè_ðH_„^#ñwíÅÿ «þßêß¶ìÝmáϪÐfÐtïøG/ìÿhQ©ßÿjÃ1¸½þÓ'É”ƒåÍsÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýõùÏâïÿÁÊ>.ÿ‚ ü-ÿ‚¡\ÿÁ!~Z|Aø[û.ê²æðÂÛönjžÔ'Ûü9·Ô,h¾$Ö?l¿Ùò×Vñ“ð£Àz€ôíoT¶²ý¡…¾£ªÙèßÞÁh´77Ç*W·ÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýôÃtÿÁÑ?ô„ÙßÿKà/ÿD=PÔPòóÿ ÓÿDÿÒ?güM/€¿ýõÂ|Rý«¿àçߊ_ ¾"ü2Ôà‰ß4½?â7<]àKíNËöÏø-ægâï깿´ŠÚÁ%ͤƒÜAÀÄòÆ‹'ÈMX4Pñ9ÿä¼ÿƒ—?àœ±ŸÁÏØËÀßðGoƒ?¼-ðoþö_Œ¼Yûb~Îzoˆ5ŸøX|qñV÷íöZ?í ºt?ÙúŽnô«_³æYXÛM7ïä”×Û¿ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü0ÿÁ=|ÿ(Á=?á«?á ÿ‚Bü"øƒÿ [ûQ|Aý¨üGÿ Oíƒû7ißðŠøƒâÙ>Ûá}û'ö…_µèÚÙì·wÙ½“{y§_£ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü0üðü£ðkþ 3ûaÁF´¿ø$/Â-gÇ?¶>xÄÿµÛönƒÂž³øIà¯ø+M¿Ðu+Úk·:½§,ïo£ÔÅ ÅõÌvÿ»Ž*ýÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ åçþ§þ‰ÿ¤ ~Îÿøš_ú!èÿ†éÿƒ¢é³¿þ&—À_þˆzþ¡¨ á‡ÅÞÿƒ”|]ÿAø[ÿB¹ÿ‚Bü"´øƒð·ö]Ô?eÍ;á„¶ìÜþÕ<=¨x¯â/Šßź¬Ÿ´/öÜZÌw?¯­Ò& :ÑÈó$›?£ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü¼ÿÃtÿÁÑ?ô„ÙßÿKà/ÿD=ðÝ?ðtOý!öwÿÄÒø ÿÑ_Ô5ü4þÙžÿƒ”¿lß_°‡Ç¯ÿÁ þø7Yýƒþ7ß|oð~ƒáÿÛöo½ÓojãÔ5/ _Úx†øM êW×ZU½ÒÚê6ÖI¨ZZÜÃëÿðN†ßðpgüçáW‹þ ~ÍßðFŸë|]ã9øVøaðCàßÃ]~ãN¼×~|*øyàmjïGšæãIºÕ¼%á#@Ôn4¹ïm4ûÉôéï4ù¥²šîÂÊæKf‰ç´¶•žõZ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(áïÚ[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauý¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¯ý©h¿‡ß²7ìçñ§öšø©u%·€~ü;ñ/Ä/¥¹nÔ¡Ðtùn,´ -J²É­x“Tû‡ôXYvÏ«jvp±UrÀÞè¯ççþ Ëð¿ãwüËöiðíçûmü}ý¦|#¨þÓë¾<ø/û6þÌÿ´—ÆÿÙká?ìûðrïZÔì>Ù%÷Àü*ñÏÅßë¶·ñv»ãŠ^!ñ.‡©oN³Ó¼%§YiËö§~Ο¶?ÆOÙþ ¹©ÿÁ!ÿjOŠ> øãàOÿá¢?`ŸÚâ)Ò›âÍΉ§ŸÁã_ÙßâÆ¿¢hú6•ñÄÿ„Ǻ÷„üs}kŒî|9¡Y§Œ®üA¨x«F›Kþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¹]oÇ~ð׈|á/øËžñ_Ä}GWÑþxc[ñ‘¥x‡Çš·‡ü?¨ø³^Òü¢ßÞA©x£QÑ<+£êþ&Õì´;kë7Ãú^£¬ÞÅcssUEÈxï‾x_SñÇÄßøCáׂ´HÖmgÅþ;ñ.á 黈Ò]OÄ ½Óô›ÞFTW»»‰YØ(%ˆ×Ñ^ ðKö«ý—¿ixõy¿gÚGà'íåÿoKðKãÃÏŠ±èžs‹û]ü â-ytß5˜,l0ïbä+Þ袊(¢ŠüTýƒ?g_Ûcã¿Â‰ž:ÿ‚´'Å…¿´v­ñ³âf™àßþÎ_¶¿Æ¯‡? ôŸ€û4CðîãBð÷ì¿ñƒÁ~ °»‚YµÝ.ÇPñë_õ #GÑüGã-JÏĺ毥Ú~ÕÑ_ϧüÛö¿ý¢h‰ðT‚Ÿ|{­||ýŸc¯ÚÿVø1û+þÓ>%:6§â_ˆ¾‹Xø¿àƾÒô#âF£ð·Lðÿ€ï¿á>{kcÄvŸío5 JþÔér/ô@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ùñÿIý¾üÿÎýˆþ2~ÖÞ*Ò­¼O©ø+N°Ñ>øæöm=<{ñGÅ—±èÞ ð¼—¶ð\ÜZiÒj¾¯â+Ëx$¸±ð¾®_[¤“ÛGüÇû,þÂß~9þÏþ5þÛµßíªþÔŸ< áω^%‡àwí=ñ¯öcøSðXñ¦—gâ;O‡_ > |ñ_‚þë:gÃûKÛ/\^ülð·Å]S妙¨êºÌ©&—íøGÿÏý»þ2Ý~Ùÿ¶güWöÅñ…·ÄÚ7ö?þÃø…ð‡ã´šF‘ákö‘ý˜|mgáÝkÃ>'ñ‡ü;¦é>ƒâo€4ïxCñÞ§á+ ?D×µnUG´Õ|9â CTýÜ Šüøÿ‚¤þß~ÿ‚g~Ä?koiVÞ'Ôü§XhŸ|s{6žž=ø£âËØôoø^KÛx.n-4é5 ßWñå¼\Xø_G×/­ÒIí£þcý–ao‹¿ÿg‡ÿm¿ÚïöÎÕjOŒžðçįÃð;öžø×û1ü)ø¬xÓK³ñ§Ã¯†¾ x¯Áu3áý¥í—‡./~6x[⮩â]SLÔu]fGƒT“K„öŽŠü#ÿ‚gþÝÿn¿lÿÛ3þ +ûbøÂÛâ?íûÿaüBøCñÚM#HðεûHþÌ>6³ðîµáŸøÇÃþÓtŸ Añ7Àw޼¡øïS𕆟¢kÚŽ·*Ç£Új¾ñ¡ªc~ݶ¿Æ/‹¿ðRoÙçþéû&|HÔ~ x—Æ¿õŸÚöÊý¢|!e¦êŸ¾ü Ñlï¥Ò~|,]D×<9áω.áÓ,$ñÖ¯§êOà]/ÅÕt:ëSÔ”Ú€~úÑ_…Ÿ·?ìËñ»ö'ý—¾(~׿°—í/ûU^|fý™¼«|hñOÂÏÚ?ö“øßûWüý¤<ðâÎüOð/‹<ñãÆ¤ð6½âéúôÞÖ>Mð»U±ñ¾—¦iÅev"·ûkö[ÿ‚‡|ý¦?àž~ÿ‚Z\·…~j?¼Oñ—âœ×)«]ü8? ô½roŒ>½ºŠ+1©]ü?×<'â½KÕ¶²MYt„Ô`··‚öP¾h¯ÁßÙ ÛDÿ‚¾|oڣŷwƉ4jwvzwÀØgö™ñOÀþËsǦ¡§ü/ñŸŽ~ ^xGâ§Ä¯6‰¨iWÿ|AãïÏà}WXÕo‡¾Òü t+ÍKó{âí»û\ÿÁਟ³wì›ûHþÑ¿l_ø'GíÁwi¦|'øû@\Øx‹ö€ýŸ|]}â½ÁZŶ±ñNÃF°Õþ%øÁZ¾¹àýGÄPø‚+¹¦ðg‹mõ-=;ĺ>©Š€?°:(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þj¿àíë^ÿ‚.|hÒ4™š ˆßþø#^ds¢ÅñLñÃB¬ªX¬úŸ‚´Èg@щmÞhäf‰äŠOéV¿ž¯ø:KàÖµñ‡þ¹ûNËáë)µ[á6¯ð£ã*Ù[±YEðwÄoÚxÆõ†UÁ:ç‰6ÖÚ+fsyvÉm%Ô— ýÿÁü[aãOø$ßüXÓ|¿³ÙþÅ_³—„¤ò®Ré~ßà…žð.«™cDU“ûSמu±ìæßi#¼3·óÓÿðDÿÿàæ?ø!÷ÁÿÙÍ©ëŸ ô~о!ŠÎP_MðÇÃŒþ7ø¬Ú…øÒÒ>êòšoôÒÑÙEÏ<\€gôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEywÆxçâ7ÃOx3á·ÆoþϾ4Ö±ÿ±~/xÃ? |aâ¿ÿgkúV«¨ÿexsâÿƒ>!|:Ô·ô›ÿ _ÂCàý_ìšnµy}¤ýƒ\µÓ5K/ãŸâÁíwà'ü·ÿ¦øq«~Ð?´Wí·¿±Ïƈ—^.ý£¾!XøÛÄqx“Å ÿoïkÃúW†|5à‡žÐît¿xj6ð×ÃßøO@{»)u9´éµ;ÛËÉÿ¶šþ@¿lù\“þ ;ÿfñÿPoø)e_µü¦~Í_´ßø+gü{öÛƒâæŸÄ/ÙOþ 'a¤ü"øðsÄv‘ëŸ ×ö›ñ‰õï øËã‰ü=s§MáïxçKÔ¾|Oðÿn<@÷¯áÍ&ÏJÕü1m¯a¨j‘ÿVuüCÿÁ£:î¯ûVÁx5mNæKÍKTý¡>ê:…äÄ®¯o~#þÛ—7w22O<²Jä 1 Å~²ÿÁÄ &ðìW¯ÿÁF?gÃmð·öÕýƒõï‡ÿ~|g𮕧Šo¼?Ž<5àŸ‰_ üi{eg-Ç‹>xƒÀþ#ÔõgÁ ŽÿÃ7×z¡ ž“>«9ýEý™?jÝSö°ýƒ>þØ_¼aâOü_ýtß‹>øQªø¬x?LÔ~%^ø:MCþn¥ã¹ô§†¬Ç–÷ ¼ñ‹èìZU¼rk¿Ù¤p‹9þFÿƒ€¿å ðPoû!Ÿú”xj¼_þ ƒÔïõø!‡ì+w¨Ü5ÕÄV´.™®±¡[ ö°øí£ivàFˆ¥m4Ë ;Db¦GHåy%g‘€=£þÇþ /ÿHzøÿ‹Qð¿ÿAíðÖ?ðYúC×ÀüZ…ÿúköŠùƒà—Æ/Œ÷¿üGñWöÊø+à¯Ù+Ä^ok>%ð¦…ñÖËã߆tO‡¾ÒãÕäñ¶¡ñÇáïÃ[xì¡Õî5 xiÛI¶ÓDï¨]›¯.›<9{û ÿÁdgØ~-|$øÛñ‹â_ÁÇㆣĿh?ÚÓöe´–ûN¸šÃÄz?‹¾x;ÆŸŸVÔm^î9¾Ãñ;Áµ®¯¡ÞiÒIe«xOS´KÏÑÝ{BѼQ¡ë>ñ™e­xÄZV£¡kº6¥oÖ«hÚ½œÚ~§¦_ÚÊ+›+û+‰ín­äVŽh%’7XŠüµø=ÿýøûû|:´ø ûþÓþ ~Κ<Þ ›Â¾3þÆqüiñ7€G‰uZñ|7ñáoíû/]Øß^Ý5ˆ¾0xcâ·ŒuHã±›Ç^%ñ®©þ©ª|-ÿ”ý©5‚ðP_Û[þW­øsÀ×Þý‰|á¿‹³ŸÄÿ|>ðwÃ+cà·‹tÏ„Úôþø±áχ:'†<¨üJðïü//ÚÜøßÃ~ðÍÏïlüW«ø“K›ZYu+Ïé"¿7¿a_ø&Ÿ؟Åÿþ8\xׯkÚ—ÄËâ¯Úö–ø…gâÏÍnæM+Â^ð߆4ý7Ã_>èjèžÐíçh¢†ÂßSÖ5[]ÃÖúGé QEQEQEQEQEQEQEQEQEQEQEQEQEQEð{gõ­7ö'ý~ZÌÑè^/ý§õ룔7þøYâm3FŽE ™aXü{ªÌQœF'ŠÞCÉOö™ggi§ÚZØXZÛXØXÛAgeegVÖ–v–Ñ,6Ö¶¶ÐªComo $PA$QD‹j¨ ãÏþJø5­xÏþ Ùðãe5í¿ÁOÚH¶ñCÄÄG¥x[âo<[ l\©!ñ†“àÝHÝ2ÜkÖûÊiÙ?®¯x¶ÃÇÞðoŽ´¯/û/Æžð÷‹tß&å/!ûˆô‹=bÏÊ»#Žê?³ÞG²æ4Dq*¢«?Œÿx²óÁÿðz¿Â}I†8!ø«û.ê^ñCÀ"¯lôïÙ3â_Žmæ¼Û½ì‰ðßöê^H¥Hm-@œÃh¶ÒkUü`ižŸãWüƒâx~Îkë/ÙöOµñ/¯í¥i¤Ýx§öi³ð„wî<¸ÒkƒûCè¶ðØnžwb÷‹ŽÖå­?³úþ*ÿàöÏëZoìOû ü<µ™£Ð¼_ûOêþ+Ö#G(n/ü ð³ÄÚfŠ2±ø÷U˜£8ŒO¼†7’8ž/í2ÎÎÓO´µ°°µ¶±°±¶‚ÎÊÊέ­,í-¢Xm­mm¡T†ÞÚÞH ‚$H¢‰8ÕQ@ÇŸü•ðkZñŸü³à7ÆÊkÛ‚Ÿ´þ‘m⇉ˆJð·Äßx·@þعRB4+ã 'Áº"‘ºe¸×­ö/”Ó²]^ñm‡¼àßi^_ö_<)áïé¾MÊ^CöézÅŸ•wGÔg¼eÌh‰:âUEVþ2ñeçƒÿàõ„ú>“ pCñWö]Ô¼'⇀E^Ùéß²gÄ¿ÛÍy¶{ÙÿῇmÔ¼‘JÚZ9†Ñm¤güWÅwÿÿàï_ø+N½âXá½¾ðÏìÁãÏ hOp‘Ü*ÃÀ9ýоéiÍ$`ØÌþÓd·í„r:j:ŒRI(¼¹i·´ÏOñ«þAñЉ{skKE€V?¶5µ½çì‹ûTYÞ[Ãuiuû8üp¶ºµ¹Š9íîmçøeâx§·¸‚Ux¦†h™£–)£’6du*H?ËÿüW¡x{ö›ÿ‚ þÐß³ÇÅ­2M{á~¯ûF~ÒŸ³Ïˆô1¨\Ù6¯ðÛâÁ„:Ç‹ôˆ¯tÿ±ßéŸÚ)ñSÄÖÂ{[£yo%Ã^[]Ã#E¿ôÁûxø«Lð/ì;ûex×Z–8t ~Ê¿´'‰5)f”AÙhŸ |]©\Ä{¢¶e ±Èb6£œ)üÿƒ@~k_ ÿàÚgŠõ}>ïO‹ãçí'ñ›ãŠnò¦ûE³²ðGÁˆ5 x™‹Åiqyð~ùm÷¤Bá"ûl+%½Ô3ÌúÑÿÈÿ‚SþËðIß„Þ6øIû1Iñ#W°øãyø:óJÓõ ì£Ö þÎ4é >i¾ ºÔ#ÿê ÿ,¯êßâ߀µo‰ÿ¼Oà=âÄo‚Ú·ˆ­-m¬þ'ü$—ÁP|Eð”–úûÞxb_ˆ¾ ø‹à´»»ŠÒM.èëÞ ×­Î}x°[Ázm¯m¿ ¼qÿîü'øûQø/öÔñ—üwþ ™«~Ô¿tUð߀þ2ÇñƒöbÒ¼Oá Ú¿‡¼?û!iú&™ ÜZø×Åö÷š5¶•›}‰µ¸¯-§MJéeþ„ëøüÿ‚'|4½ý‡ÿà»_ð[oÙÅÛ´øûwàÿÚÏൕýµ½œ>3øQ/ÄŸ‰>%Ò¯ü3vìµáð•·íÿ–¦t¹?µü?â8o­­®ô»ké³öpýŸ<_ð ÇÅv~-ý«¿iÚ–_Ýé76Z‡íwð6îûÁ±éßE=Ÿ…Á?Ÿ­ÓYkØçÕ‡ˆ-+Ÿá¿Ço†±êq͵¢è¾2³µ¾´Öüâ K«Û?øÇ/‹<®ZßßE©øjëís³€~uÁÌ?t¿†?ðFOÚ×Ožfü_‡áŸÁ/è–ð›­GÅ*ñ÷ÅÅq¢éV«¯sƒôïk‚ÜIm¢Ü‹\ÝAû#þ û1øö9ÿ‚f~Åÿ³§,IñÇ€¾ ø~óǺ,5´Ú¼yu¨|Gñχîcfb×z‹<]¬h÷sü¿j¹²–äG˜D•ôŸø&/ÂÝ{ã'Ã?´çÆßÚ+ößø…ð?SO|öœÖþ/Ãÿ„Þ1…¬ÚËℾ~Ïÿ~ü"›â6—ö4:?üMàx»G™¾Ù¦k·öö7VŸ¤ôQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEá_´ßìáð—ö½øñWöiøëáÅñ_ÂŒ~½ð‡‹ô*ÛÞ-µÄÞiÚÎ|ÑLt¿xgZ³Ó|Ká}b8¤›Fñ“¥ê°#Mg¯ÎÙÛàOüOö1ø'áßÙcᮽûþÕŸ ~è6ÞøñÓö€ø•ñ³à—Åÿü6ÑaŽÇÁů†>|dð—ÆWÀºÛxrß[ð×ÄïâMDÒÿ´m´ý^{ý^OÙJ(óþ ÑÿÜÒb­Gã÷lj^?ã×í¡û`xðüKý¦~>?†m¼'§_ߪ1Ñ>|.ð´WZŒ¾øCàSqw‡4›­OQÖµG‘ouÍAíì¼=¢xsãïø)·ü'þ û^ÿÁ@¿a_Úgöfýº¦ý¾~ÎÓh-ñCázëÞ=ÒõÔt¿ê'ñ/Œ¼ᯠi÷^ø•«üJð…Ö—ðÛľø“ªxoÃöðݹõ–½­h¯ýQ@ûMþÎ k߀_fŸŽ¾_ü(øÇá+ßx¿H­½âÛ\I æ¬è×ÍÇKñ'†u«=7ľÖ#ŠI´oi:^«4ÖqŠüàý¾ÿÁTÿc‚~ý–>ëß±¿íYð×á^ƒmà/€ÿ?h‰_> |_ðÃmì| |ZøgðóàwÆO |iÕ| ¡­·‡-õ¿ |Nøþ$ÑtM/ûFÛOÕç¿Õäý”¢€?0?àðMÍ'ö*Ô~?|qø•ãøþ=~Ú¶Ä¿ÚgããøfÛÂzuýú£á—Âï Eu¨Ëàï„>7pxsIºÔõkTy÷\ÔÞËÃÚ'‡3?o?ø&õ×í#ñ«öuýµÿgˆúgÀ_Û»öI›V·øOñ;]ðÔþ-øwñáïˆbÔ ñWÀ¿Ž¾Òõ-ÄÿÃ_Úk>!µ³¾ð÷ˆ4¿x.ãÅ"Õü>òÞê2ÆßªTPâ‡í]û)ÁG¿à¢_®ÿeÚ ]ý•ÿd¿ÙÇâ iº_íâ¿Ù£â‡ÅoÚãůé×±jš‡‚|Ÿÿgß>øaã« -QÔeøÙ¨Zh·ºu¼—Шõ_Ómá:~Ïÿ³T¿d_|9ð¥ÏŸƒ÷¾ ýü âûÍHø[§kÞð­Å‡Ã#Ç¿‡ìuïAá)õØ4±ã_iº~½âÛ‹õmf85zb.½æŠþ#t?ø%üqá/üXñç‚à§?±'ƒ|Añ¯ÇÚĈwZ>³ãkËk_¼Š+:ÖMWİ¿‡ü'¡ÛXø[Á¹Ö.t¿øWMÓ¼= [Øé–‘[døYÿ¯ÿƒ’|uñ¯ö‹öìÿ‚•þÍßÿdï~П~.|gøUàÏø¾Ë]ñÿ†¾ üPð¿Å<3?²Øuxïõ é¡ôWÅúF“tÉ—WðC"aÔPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEâÿ?h‚ß³¦…¥xƒã7Ä #ÁvÞ!ÔÛCð¦—,:–·âïkÉm%ëøÀ>ðÕŽ³ãoø‚;gÔ%мáýsV‹N¶ºÔ$³[;içŒÚ(¯„ü ÿ)ýŽ*x Ay¨ÙéPd|?øYáøÿijËûa-¯†ü1«][Z™õ ˜b°´»¹€Ѩ¯È_‚ßð]ÿø%¯íñïAý—¾þо3ñoÇïx‰ü+gðÅÿeoÛÚþŸ­Ár-/¡ñLž+ø¡iž ²Ò'lkÚÇŒoô-@Œ<úÕý„¼‹èß¶Gü#þ Ûÿþøá¿ƒ¿µÏÇ}sá/Ä/x~ÓÄþÑ¿áB~Ò<°ñ&{¨\iQI¡øŸá—Â/øST¿‹P·6·Ú-ž¹6µ¦I=Ô´ûTÔôæºú“öÁý¤4oØûö\øóûPøƒÁÞ+ø¢ü øeâ‰:ƒ|mω&|øíàKýSSûˆnä·¸økã_†7ÄË]*ëIðLj5X5OÁvºþ…a&³k¨ÜiÛ]ÏÚþÃÿµWì{û]|ÿ…û ø»Âþ1øáOø‹áµ­ß‚¼â_‡ÒüS &¬kú>‹áßøOÁ²5¤CÄv7çTÑô™t-BmFYlõ ¹–ïËûŠùßãWí[ð#öÔt¿üHñŽ¢|i®éÒë:Ã/‡žø‰ñ£ã½¢Ã<Ö’kZÁσ>ñ÷Å-gE[è$ÓµôÏ]iͪlÒÖäêÅlþoðOþ û!~Я~øâÅΑñÓOҦקøñá¿ÅÙÏ㜚·žnµËƒ?´/~üLÕ4[Hí主Õtß ]ØZÚo..#µ¹·šPBý©>(üzøCðÈx·ösý˜u?Ú×â×!²—á^“ñoáçÁ{ÄÐŽ‹®j7^ O|L–/LÐêZn“ Á£FMõÕ߈m¯7A§iúÔÁ?à©1ÿÁZ¿gOŠ´ _µ?ÙÝ~þÑÞ3ýŸÁ×âø…«jø;áÿÂÏÜøP¿ƒÁ~‹C»žãâLºÞK=\Y>‚o޹pÚ‘±Ó¿YëùFÿƒAÿäÂÿlÏûJíÿªköh êæŠ*–¥©iÚ6«ê÷öZV“¥Y]jZ¦©©]Ac§iºuŒ]^ßßÞÝIµ•´RÜ]]\KðG$²È‘£0»E|W£ÿÁAf?éÉâj¾"x2â6¹Ó¾%|0ý“?kO‰ÿ 5Ý9TmoÃ?¾üñ'Ã/xuD2Ê|Iáßjz·Ctu³)›Á¿ðPÙâ_Â/þ|^_‹Ÿ g߉W?þ)x«àÿ€þ&üY:gÄ{-3À:Å÷†|3¡|:ðg‰¼Iñ&k ‰Þ “P¿øi£ø¿H±ŸQÔ,®õo¼7âk}ßo~4|4Ó¾5xköx¼ñ'“ñ‹Åÿ ¼oñ£Ã¾þÇ×äþÑøiðãÅŸ¼ã?ÂA”þ´þÆñGÅ?éØ÷Úݶ¿¨ÿný·JÒ¯´í/Y»Ó½F¿‰Ùëþ càOŒßðpÏLj~~Ò?¾|ÿ‚yøÏö}øIà­KöXý¡üqñ¢óUñGÇoٻ↫ñ Æÿ¾|5øñ;Àúwìà[ÝSñ/†ô­×Áúg€#Õî4¯x¢ÛM¿þ³¼û_üñ×À_~Ó:wˆ¶ñï‰üGñGàׯ¯‚úÞcá(–m{Pºø{ñáïþ#ÿgZÄÞe¶¡„¤²Õ\éSßyrmúfŠü±øGÿ±ÿ‚\|t_‹Ò|1ý®¼®[üð¾•ãŠ×Ú—„>)ø?Mð¶“®øŽ?èV‹©øÓÀžÓõïk~+šÛÃz?ü3s¬ø×T×/tý.ÇÃ÷º…”7D~Ë·ïì—ûfëß|#û<|T›Å^9ø«Øh_¾ø³áïÅ/ƒßþêZ »þÍOü2øÑàŸ‡Þ=Ó-/ÚÂö;MN_ÿf\Ok<^4Ñ´`ìj+å‹ÿ¶‡ìÿðKÄ—Þ ñV³ñÅ~5Ò-,oõÿü øû@þÓ¾4ð­Ž©n/4ËßxKönø_ñ_Ä^ ´Ô¬Šßi÷)Ótˆol^;Ûg–ÖD™¯þͶOìÃûaèž%×?føžž֟Þ<дÿí=Ç?|B2â'ßéÚü­¶º4¿økD¾’KKÈÒ{K…ˆÂ?à©ßðPMþ ‡ûüHý¯µ¯„Þ+ø×õ èZ€¼/©GáØ¯õŸkö~Ò®#Ñ´Û/x3Å~6ðÿŠl´a¡Úø’ËVÓ<9á?Z.™x§A²ºýµ½…ÜÚÅ”mq4þMzoìýûJþΟfŸþÒ¿¼a¦k³^¯àí_]ðg‹ì<+â_hÑø+À×:¶ƒ©Meá?x{Þ"Ñ´Í_ êvVö3øvÄý—OGÓ­¥²’ÒI@>Ž¢¿2þ Ád?àš´?ÅüøEûWx;Ä¿|à|Rñ¦›á‰>Ðü%ð÷À/¤¯‹¼[â_øßÁ^ð&‡¤hñëšeä“ê^%¶k½6y5[»Ómo.àÁ`¿àžPk_ôÍoã—ˆ<£|Yñ¿…¾|Rø“ðö’øaû?üKׯ ¸²ÓüûIüDøCáÙÿÆMz.¡{)ü;ñ/Qµ¼ž[iåŽ)]?L(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùÙÿ‚À|ý—|ûdþÀßðT/Ú‡þ -âØçÿ²¯{§hßì4›í~ïö„’ßÄVž8Õ|à};Ã:ÒøæK¿ÙÛGáoŠú'†üñ&_øûAkËo£}ýWñuûc|4ñ·Ã¯ø:àWímû~x{Z?ðO}áÞ•¥þÊ_¼We©ê¿³¯Á‰:gÁø£‚ÛâW‰#øY¯Gñɼoâ½?UñÃèÖqÝßø+ÆÞ¦ _Dë?àâ¿Ú›Cý­àŽÿ|[¢þÂÿ¶w‡4/ø·àoÄ/†_´§ÆÏ…? ~øoឺÿ¾xFZxcâÅÏ þÒ¶ë㟠ø×]ðG‡ï<ðOX¹žãÄ^kë¢øM/'~Æ¿³Ä?x‚þi®oµßxÓà—üIâMföâæY®'»ÔõJööâiæ–ifÞYdvg?”?ðp>½}ûdÿÁ)ÿiÿÙËö7²²ý§<âýÂ:ñ$õ;_Xx3á÷ÀøãâOQÕ<-.­a?ŠüFÿ cðg€>ÙÍuãkºÔáÝ÷JÐ$øWÿ`ñ'ÃÏø+oŠ4 êþðu‡Ä†±ÂMVïÂÞ.×g ûYÑ,~0üJø‹.‘w­éš'í'ñs\ðn‡éº}ó?Ã/ƒ:?‚4{)ÓÄ~2ñô÷Ÿ0|(ÿ‚¤þÅŸðYÿÛíbï…-¼Oû4~ÏÞÓþ6ë¾Õô_Ãv¿¶ÏÅÏ xž+ßxgMÓ5Ø,5~Ïÿn4«_ˆþ0ðö³¥ØŠÞ7>{‹ Cᇄµëo~fümý¬þÁ¸ŸðYW¾ø‹¢ÞþÂÿ·üiñ;öœý—<5õþ³û|U½º´¶²øÓàÿ iÖó[éÞñ„z£jñxGBUÔ5/Ûx‹Ãö^k_‡¿ pîòÎÓP´º°¿µ¶¾°¾¶žÎöÊò®m/-.bhnmn­¦W†âÚâx§‚Tx¥‰Ú9‘ˆ?Êwü½ÿ(׿ìîþ3êð–¿kfÿ‚²ÿÁ5`ø!í%/í±û=¯ÀËß|2·ø”<¦?‡®>$iž±ñåÿÃëwFkɼoiàýON׿ð¤V¯-í±û–dŒÿ9Ÿðg?íeû6ÙþÃì{ñ›ÀִƧûIübñ¶‘ðNÿV[k~“Àu#â= E»Ž5½" /ëSÞ^é/y ‡öeÜw­o,E(ïŸÚ;áÏì½ûÁboÿটÿà tÿ~ÑŸt_„¿?àžð‹>%øçâ~¥¡xcDøy§Kà¯|/½ñW9ø[öŠøéñ'á‹Kã ø?DÒ<#ã/…7‡ôSÃðêZwŒµéåøÍyâÿYxfëRo†þ ð}÷ˆüy'‡¬5M µ`ìZ¿”oø4þL/öÌÿ´¡þÑú¦¿fŠý2ðoücöjºñ/Å/ÚŸÆ?µ7ÿ ÿÁ9u¯…ß²Ÿ€¾|VñÚéþð?ˆÿjmnóö²øƒñïÃ~ñN·¢i~ ñ†¼ŸìÿgÛ][B‹SÖ´xƒÁþ*ðö•§é0Ò¾!ÛOø]ÿŒþÚ²–‹û>~Ðß³F·ñãáî…ñûâÿü+ã_į…ßõÝcûÇ?ð?‰~ ü]#_𦉪Cis¬Ã7ü+ÿ«[1.¡¥¦‡pú­¥’Mf×ÚÅ~hÿÁb¿f¶oü;ö¹ý™ÿg]j=ã/Å/‡zu‡ƒÚ­¾…‰$ÐÿÁÒÚOìϧxWáüûþ µû[þÆ?<+¥i×õ|6¶Ôþ CJ‚×NMcú/‹.¾êú/‚/í+íNð—ü,h,lî,týSñäë2þæÿÁ/¼Gû|UøwûC~Óß°×Å=â_ÂOÛö›ÖÿhïÙèº_ü#ïðï⮯ðcà‡Ã/ø;\ðÝݽˆ4jšŸÂÈþ$ø†ÇÅf«I¬xþöòÞ+­ëGÔ¯²<%ÿmÿ‚{xëáŲ|{øÏðïöfñö¯áØ­þ"~Ê¿µíþ™ðkã·†u›½9Oˆ<ª|ø¢šŠ|usi;Ï¥Ç?ƒ4è^*F·Ÿ@¹Õ-5+37ÉðEOÙ[FøCñßþ ‡ûJ|øc¯| ýŠÿk¯Žµ¿Ù3áˆ<®ü6‘ô†?õ'âׯ|1ñ%¦•®øáÿÆŠ+Ö5†ú¯ xfé¼ á½÷Mðî™áKŸ #€| ûÿÊäŸðV/û0‡úƒÁ4ëúý¯äÄÛþ ÑÿEü|ý³ÿjÛë/„ÿ²gíëûèß ~~Ñþ4»µðÏÁO |Iðw…ÿf6ÿÁþ$j“ÅáoëW2þÎZÃXÃâKAKµñ…ÚÙ§ŽàÊÿ¸¿²ÄOxG¿·ïí¯ñ ]´økû>üný§õ_Úž:ñø—ÂZD_>þÊ?²÷ìÉÅKùõØì&²ðWïÿg|Eð޳ic©àxs\´ûV™g©^€~þÍÿ<-ñKþÿÿ‚ë~#¶´ŸÂÿ> üøé¡ø@ÁÑ5Œ³~Î_³‚|%ã]KF06™©øNÇâÄéÒ6¡¥xÏSÓ¼K§ºjöËmý=üý„?doÙ³ãOÇÿÚ'àÀï |=øÕûQøŠ_üvø¥Üë÷º¿Žõë­Vû^Ôo gXÔ´¿G¬øƒS¾ñ¿aá Nñˆ.]Ö­/õeŽñ?ÿÙ þ wÿþð¯üÃÿIý¤ügý›¾ ø#áwÆ]cÄgNømãOø á·ì¹¢x§IÑü_wmŠÒXêžñ]¥¥ÅÅäzÓè·2hw:”/o$ߨ§ÇKÇÿ¿cÿŒú¿ì•â½"óâ—ÄŸÙ³â.¥û2øâÃVµ‹@ºñÿŒ~k_+øÅ¬üÕo|J|kâI5ñ§íáÏÙBÐ>G¢è:Üšª| ñÀ- ö=SA‹Äö÷:„7ÿ®åñÚþ­7?ÿÑþÙß²¯‰¿à“¿³wÁMãÏÛϋ³¿Áÿ‰^'øáðéõè¬ü[ðÇÃgÅïj7¾'ñf|¶×zw†â±×4›µ×Ìo¤Oý¼–÷’«>ÿ‚”|*ðçÆø;þ Íð7Å1B~ühý…ô+¯Œ¾û¥ÆñWß~!þØ?´>‘àŸXJ‹ˆ|/®øËàû?išžÓWдˆô=VßQОçIºý5ÿƒ§|;¡êŸðC/Û÷PÒ¬®î¼!ªþÍZç†'–/¡êó~ÔŸ<+.¡§cÞåü9âMwF.ƒþ<5[È )Çá×íSÿ(ýƒT®bMLàÃŒÇzÇá´á` €<ÛOmÃuä¾…è+S­ÉýVÛ‡å5m+Ç"§v´¹ukËö¶íê¨ÜÄýýç´“-Œ4ýÛ{¹ù[éûɱÿ3ÿ ù KëØEXlõ5×ò|>Šwú=d~UßnózŠÕž6Û†£vñ½º×a¤ß§ßÖn*ÕK2³¹iãG¶ní8/¬õˆ€—ø€%ü?Ð?ÀO¯nך¦ñ?Nþñ«ùÎ{W>­ãw ŸÙZ\s£gckÊÝÝ}ŸåçåcLJçåi4óuÓƒè_ÛÏà €1£R½™õªã~“µ«Î·/îö­{9âÓ§ûyo*Ö½¥j•8ÆïêS íéþäj=OoÍ5÷*ë~yì‡Oá¸ÿ€ÿ€¿‚†’ÕoÒ3ayÚö˺4îmåñü·á;7Õ-y[É£Rç™moû^xô.T©:~©äµýfæ½üVÊ—¥üBˆ ˆ D¿‚gúgø)5ùØÏ\®êÊUùsÑzµu?c{Û(dÞXþU•º¼8òŒíëó·ª}½­²ÜÝÍ$)Mo¢|nngúgøĵŸø¯§8Ô³«ÍûENj¥Æ¿åHdÒ¸µ´­»®K9Z©wqÔÆå϶2µ[n]Svéü.FÇeóv?àà/ý~*Eþ»²ébæÂ¯ õEß_ØZàõ7_¶ô);º5éUiÃ"µ¯íÚ¶¼k[JÅÍ k‰Z§W•Œ­HÍš_O/]ó¼®D±ÄçOáRþ+HŸèŸàs‚½³µ,áþ£ªåKŸö_µèRvÝÔyÒTÎ<.¿)v•Þ0îiõ÷•„äÌÔKËG¢üf.2gúgøy‡§øüojqæÞ‹ñ^a÷E:]]ka{ÎÝo*§+{•h~]ÚÖ?•T¡uK”­ñçit9¯…oØñ›z¾sèýã<ƒ ÏÔƒ_Øä®+w8/­zþâʶ.òÒîdzG•¥_ÈäþqçÍJÔ¹ÛÃ#±è®jO½V‡iÕ^Q?Wl¬Ôü¥u<\ºÈ¨Äú-ÿ‘nn;o˜à €á!ëYÑoÑK+ÖRìŒâ).ªÆ#?%ÑID ̺¥n!¿eà¤I÷Òœ¬1wÓçÑ@—‰ë»-™>[[ßÇÛm¼×ãѳ9ÉÁa'ÃçrÒ&è¾K+CéLuȪL.bĿĿ€®•í÷”™æœo}À¹Šë»+ã^ÊÅ[;LªõF§YÜÏÎEWæYŸæm[õ_9S«ÆÝ\Õ¹´îœjUiuRÆVkWçÂ7=Cä~7±ž4¾çn±}~ûÉ÷Hð½h¤_kÀút¶éñé÷õsáÔÅ?,>ŠV®uÔøü.£cŸCÖóáTÚ·¢Õû¯•½‚>£]ŽÏw<¾% ÷1¿)vqgs·Ø3Íag§ÊÑÎ\ë­÷¹Z)CÌc¾’‰‘‰‘YüœšÅçÐ|~ëÌvøLBÄØdL•@Ö|atÙæ˜ÏóIKöE°XÙäÔ°kI2ÙŒÅÇX”Ž [ ™< ;<“y±½@VKm¼ÿ5ìuw™Ü.£4òF-17'I0?5òžWUœGSênàH`ÏäôÑõ/'õ=û;Þ§[Û\_Ñü†MK®²´nÑ¿ënef¥:”éw—ïçêÖâœ/s¤åXQs´»†¿ü£¶üœîàüo×y×ÙmxîÒ­=W v]mJ”ÿnáTçSöÖwOÒJÍ*ýmå¬ûj¿·ªÚÐä­»¾¢µâÖåoÊv¸Ýqê+g¹­oä;;ö¯Sñn»[Úýió–ó­yÓ©+µ;K·Û%Kš§ô»e!‘ª¾ØªÃTÃjõc©ÍÎתÇS{½¯JêƒËkÂ:¦uûaR)mxíM{Í«“ÅÓKݤâ_îájquµèÔϾڹk;SÏͱµªþÖdême¶²xú¢u›g)]M*팬59êöÚ)ª¾Ø¨ej“g¶xú¯|öØJ\Ôë7\€úœ+»Ûo7SͲQ»©-mµuú›VÛ Kº›ô»q Fûý±JjaÒmÔ¤µC³Û –§_›cÔѶZ:œUÛ¦¨þ¹´@]ÀÏñµá" € %þ %ü?ÐOðÿ‚ gúgø"_â_À3ý$ÿ/ñgø"¡ïÉD—ô@ D—ô@ D—ô@ D—ô@ D—ô@ DKü(}1è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€þˆ/è€ÿ>ÿäï"Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kú ¿¢Kü@><’÷ ÿÄ17@ 8!"#02$13ÿÚeÙy§âkc±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒEüÆ~‡tö1ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄ]˜kú^Öeq¿Ì¶Æ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61ŒFÆ#c±ˆØÄlb61‡«ü?kF zW ÃFµ(ñ11/'/lºÍýáRø)¿Þ¡?)J¦T¤«4ئ»í½^ºc…¤¿m]roáØâÌ*âÏGõ õ Tj2TŠ}6£'X§|f¯F zYE$I¶Rb§?c¤ôÜÕšÃ*íKJHUnµn™*½o©¤?¿”ßîìÉ}±nfæì¶²ã¼.—xÊÈÉâíÐI…m¯¯p™KëVé’«Ñ–úšC±Å˜UÅžŒõ¹-9”>B¸¡å·(—sTÕ£­äêr—Ôf¯F zW¥J¾­’¶–„Ô¢-í‹+K·Z:¯Vd­ê¤Ôœœµ>Mýü¦ÿzµ2RµJ£4¶}>H±,‹}zk#jÓfê6Œ•^«"É[ÒëU™+z©5''-O“v8³ ¸³Ñ«·´ê­éâv²*ÖÕ.«kNXt o5tº%z3W‹#=‡÷ò›×v8³ ¸³×Í^,ŒößÊo]ØâÌ*âÏ_5x²0cì»/›NÆ•™ÉvŠYPÊ“FçÚ0‚äëL(î}¥éºF¸L¡j}Ð4°l¦i ”M ry¦‚å Bp&Q4BÉ–Œ .Ñý5 é¶nr|¿¿”Þ»±Å˜UÅž¾jñd`ÇÙ’–¥­cöĦ9Ï0pT4ŸR ÿÀOÔ5&"]¡–ëš)ÿœº…1•éˆ! ªŠQ‰õ*…6êù)½wc‹0«‹=|ÕâÈÁ³-gkÇ\‰²É ²t,Çd‚2ä>ê‰!ôë™%йåÔÉN¡Sê‡ð ˜‚šFÅ+vR[åýü¦ù¹°[vë¹jecÿž¸{IÜ7•ÉpKL n¸aLLë%-/\ž”1ëU•Wúê‘âZ±p¢‚Wy2å¸;‰]÷‰bZú½$•l^»ÎÖ¯äPŸÇaWzù«Å‘ƒfT'B^Å<ÂP‘ë.€è¦ =½)˜z‚…ëüàc bS:KNêÀ D&—•÷Jä²>_ßÊo›ÊäNϵ¯ê·EÆ“Dšÿ‘d‡XBFE#vûfШ4N¨$Š‹ÁUXL@8¸'2bc.DޤP¥ŠµR– ™ðìqfqg¯š¼Y1öd¼å‘O¶ÑP¥AÇÓSXÆPfà?­Cp2ýƒ¶`Wª`ÚÈöHšÌs(Šˆ¡‹VÝ[‡åýü¦ù¼©“5»@U]tš¯xd”2¬c@éT!5AˆªzÅî*CSP”äHÚ±•+[ãåØâÌ*âÏ𼞠­Ù‹}~ÏVoë&Þ’u›ŠJ î¶t´iŽ}‘ZºI5*ªÿáš¼Y1öd¤“wZCª«©ÓTë 'èuDÚŽoärö”P©ˆþL AÊA0”eæJ€@ëÿŸ(Ô#È|¿¿”ß7zU•íJ¦*pD©QýÒI CúÒ9µ:-ÐÀÄ¡ûŠH ̤D¦Ԫص ¾“X£©SZ‘ðìqfqgÊ×ZVäÈV²ß&în£éÊkâ»K”ÈçJR—_¯Ö»š ÐÂqÐ]`n†åÏoÝ•ûR§(ú;”êÅ-îb‡“MeFŸ+^¢Ï%óš¼Y1öed¾6 —û0‘U qTDÅ7R”ç@  %Ëÿ×q@æ94OÚ)Ìr”Jbš&™>çËûùMòð ×B&˨åÐpOéõR*iœÊôÒd–H‡PUGF²€§©â’…LÂ}H3+iÎÝe«Ii9?‡c‹0«‹>ëÒrô•%ϦdÅQ®nÔu˜5S”Å( ¨ÃÝLT5R˜š SAT(ReBʬHÑoJ]NFµMøÍ^,Œû¶¾çP…eS9›!‡ú¥2‡WJ}zAÔx9N˜êH«t)Ò,Æ„Êe9•*šº¿¾ IK);òþþS|äMúžÏ˜˜^eCL"b„Â'ÐN†è= Lšê‚Š–5¢¤†9U1Ìæa?¦ézb¯@©É¨ªÒŸÇaW|:Îó‘I¼.¤¦§T Å9‹ @u î˜Åë ªN¡‘23 PDê¤0(   Ô'M(X‹™D&€ãuÓv\øÍ^,Œû2®­]¦Ð5@¤(`êÂ*J*ÿ`Â&qM3S1T(‘Rf•¥P…#¤dL|MZš—÷ò›åÈ¢T®K l§—P¦ì (*ššÈ ¡À:TÌ Ç`‹›P‰@5-0p™0Š]Í?Q2E„AFÊÞ¸-k7áØâÌ*âÈš›•–Ê7JíNf\ºH AÀ;eètÀ tP“D¨¡Ì~à˜â@15&a'xC¤$S(C;Àb’åM¿lvò¯ñš¼Y1ödõ …S³QuDÀŸ÷®&£ÕdÊ™Nœ¨&N°=¡) UŽc² %!ú "ªÚ—ÒRæ¿ËûùMó“lí«&‚J2«Âg2Ó?¸&’ƒ¨ŸÙ œÄ(€¤‡õ’X#Á»ZAª'øuE”ˆ¬²võRNRc§jsí·Ã±Å˜UÅŽ Õh6õw-ø§¸”õ Ô2¢¹Ai”ËÚì÷H’er¨aPæ7hN&Lª…L d„æO¼²p¶ “ Á»f"zÓUн5M•¨ãëÑZ¾*’•:u@ù«Å‘ƒf\ ,% "Iu c ÊCÂ@ý£u0RcLƒ¢˜)Ü)Dâ2TÔ)ÐÜb Ö¹_—÷ò›âõ­ÎÛV•ËX™¹kgM?¤0ç9¥A0T5$)Bº%!4©1 ¯`âjHÊ ¢aÕ#.Q9µ+3 uULzº¥jÿÇcõípÓ['Кr&& ‘bmHOø„U÷@çPA@ÓÜ …“X;‡:Â`&’†8]"«öŠr¢—R—RÿºªŠ¦U05šOX#0Ô<3íQruÄJõµ#>Ç5¾µïÊIëL ©OúH‹(tõ¦*fADUƒŠGEnª‹OC€ëMuþ”/Q?hªâ•ÍQ«Ñþ_ßÊo‡;‰[&²z÷t† SôYL“šÓÐ]‡f”(ˆ$ B­®IA)ÀÇ9¡bt(¦±ÌdÐU%ÌrËèÏb²ZÝQ^‘Ç77MrÒšEm%1E0Pób&)¤ DÄ¡˜;‡êºÄP‡—Ô‘’€¦8Àè4¸™01Ê&ï"ê1–ÿÎ)ŸTu"(M*™C¶¢1>sx¾0cí¸1…­«–Slt©ûE³H‚8i”Éâ%¶˜—mÒÀâ §ˆÖæ¡Ä;_¨áõ®1´;d¸kaÄ\æCìô⛉¶4¥FÏnìÛì)¾nŒi³n‹„¸‡h%‰6iÈöÏCb-¹ÜE¶m‘‚â%°´ cIðöÛѳ»_ b ¬ -ž¦Ä`ÂLA´J`Äk[¸–$ØÀÜQn%eétÙ*52Ž,ÇZÐsiÌD°WŒE± lK±Ò™ B´õ![:vygÆÐ­Þèâ¯Þ.Ú ‡öéŒL>³Òaý´umÉâ·­\CµÖ6Э>Ú˜‡jŒ+‡–’žÚh‰°òͧˆ–¢kmÇ ZxÞL—k-6Õ¯ŒößÊo]ØâÌ*âÏ_5x²0cØ)½wc‹0«‹=|ÕâÈÁaýü¦õÝŽ,®,õóW‹#=‡÷ò›×v8³ ¸³×Í^,ŒößÊo]ØâÌ*âÏ_5x²ËùÓ±ãϹM}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å497›»?zy÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ‹…âÉË–€É;.í@óîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹M}ÊhóîSGŸrš<û”Ñçܦ>å4y÷)£Ï¹MSœô^–µ§]ýQk`DZš¼Yì`DZš¼XÓñf z,ë‹q^µrï«æÝº"×»îÐõçZ•D®[W*î æ¯z/5ù_±É#2yÉ' vò–¤RëW½¦çúµ_Œôkò¿c’Fdó’Níå-H¥Ö¯{MÎz.z¯hXÕc%wªUžŒÕâÆŸ‹0cÑ´)UÒ¿º¤ë.§SPÕÃ~£¯NMU››‚‡3@­·G»”²3W‹=ÎJ§1I¸-;Šçª\sWÛ{bµÓ–¬•r^Rì¢Æ zœ•Nb“pZwÏT¸æ¯¶öÅk§-Y*å×_™ªÒ§dêN ûg鮯jñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñg±ƒÆjñcOŘ1ìf¯{1ìf¯4üYƒÆjñgú,²RèÛw]»wÉ– {«Å?`ÇùÔªtê4Œ¤ä¥BZ“tÛ5õË5x³ý&å%§å,» Ù°$~Ù»¦Û«ý˜1ëUêrÔJM£uR¯ZjñcOŘ1_VœÍÕöWn: ±)u^ö½•!w8ÖmÅ–×é –N…Í…ÕcÈä#‡I¢X}¹­Kå­îUe²Þ¦j²ùÑÊNVòq¶¥šF£+P˜»íÉKžˆæPë׿ÎjñgÙ;;+M’·.z ÝM‹Âê¦Ù6åµpHÝT/¶÷©»2WÄûKqb¦ßÚµ{®©S‘¢Ólw­|]t+†‰sÓã?Í{¢õFÓw,ËÎàtã’ߣ¨z?Ë¥Z¾(6Õ±5\·¾.# [~λ&¥Ùüž­Õ®6 §âÌ.®Ðè)[•¶¢¶àÐ_†Ê¿9~Ýÿ£,鼄¡ƒqh¾uj#mqº—ÅïG«^×UfƒV«V+“iDÝ CèÐ(Éœ ßÉ àŸa… Åív\ITëµjÚ­Å/#ÚªµPÕº1Jè¸SÕ'3'¤g 5f—pÓ.÷Ò›eß´·º§sOPßÚeJ~˜éZNƒnÇÔ›{a»°ßk"ò§ªì´uZlûäÕÑé73ö¸:#Þ­ŸJ³¯K nƩù®KVÀɚūo¼Z÷Ãr¾ó­ä“¢òÝV §d¾“—³¡n=2ÕŨ¹oO¬_Sr….ô­ÓI)É{u†nZ7U7Z™ƒÛžÞ¶¤Öèµùgë¯ZJ£µl[vÃ#kÒ©¨×¤§ªTK¡½¨W%#¦Ñp¾$íFá»›#ÞØ,;R}Á°\{mȧÅìéÙV V{£Bp)m Ë|Üöú5:lÌåNAÃ;¡tÜ®U=ƾnJ…§ne}ZnºÆ´üXÖÚÿ©Ï:è^2).^̵ÇpS¥újbX<ÉÌž¤ÃÿT@?ñ€6°ýÕMB¨%Ô%ƒ GS¡ˆ‘Ê {hœN¢€$B '—5³[][—(2UêWUZÝ=…m:—Ͱ»1zÛ27{#œ/«›¸§¦J”Ìô¨[³t¢ÔwORžuÄU1u¨C)PžRšWJ¦ª(0oÞ'*Õ@*É-굯O§ÚîeNָЪ+ô–ÍJvN¿v\Ó›–ëd¯ê*t…J¨ÂØø75.œÅû6õqU¯ê;yµît¸àÉ^;‹x8´FJݾZ • ¶¦K:æRáÊ{b¹[lîJ³ŽïHY¥Ìéº6MíPV³r•±pšºz—ÅÑlH¸-#í)iÉÍezÙ®Ögêuææ¹Poý‘˜–Æz*aÍlÙöòâ¾²vÔ·n_yãÜù§3,fŧâËh¦HE5hî‰ÀçT‡)V&€Hš€’çÕ8®ƒÆ¹rYŠQ8i˜(—ó7xeʘ&™WH¥'dES€).šŠú›ÿØý*èÑp ¿B”ÒfY20„²§M9‚”À©´ô“S2Š4(šeUN¿°”†O´ÁS€ïžXI!!'Sç›9`Fp2¢M § ‘o.•¨´Ó &&)·tÕ&@'v§ZR¥U4Э-.¹œÉÔªyƒ(ðS»8¬§|ЉºO­Ò„qSQfWOQ¥”è’ stù¹É)ۉѺ/{‰UŽ·’—¨ÈÖNSÒš~,·Á}$XU“„Pè'¨%Ω»3Z%Ó–Òˆˆ˜"_éÌDLc$c”J¾ˆ÷DUÔc̨TÔ9V,t@4á ª& (¸KŸP¥0ˆ”¨§/ÞN¶s™•“,¾Œ(E^³+÷ú¦~ÙSP'Ö€¦€¢Œ²çU€ì¦8¤u3„…XJiRh!ÈrLÓyU:ËÉÓ„²&9ޝôˆS©uVrA5naMj‚é„€PUcÀ#õ—K¶³FVmU;k*!:·d²„Ñ6u ieNDÕ0 ?±õ$Vx!SšPÆH³ ÊLÍËKÜB™Ñiø±±±¯;ØÆÇ×p«™†x´»ó[Â/„=Ý] eÁ!™gwB,ø*Ç»Jˆ0Ï0¢,»º¤ $ñ&¢l«ÆVUàUPd^ÔAÝ*©1ÒI&Ç;êÏŽxÓ\XL,“Á)6‹ í¬d'– «ŽÙ8u!FÞ\$˜’pàÀ½Š¨V1æ˜SÁï7ÕNcó¿-(#^éÑk°¢S…Ù2QÁ3቗²ÂV.µ yš‰P£”ʆ<ɵ6úÓ2szÖGˆëUî®!UœsZ¢qÄ€Zx¡€|&°€r¶º$·ï/Çȸcg.‘*.™³JjÔ;]¥àºKzÂæðA4¨B‰ˆ°õAòJàHŽÚ²ˆn'±вLÐñçup”§‚û:VaU«­®ØÙr6²ÏÄEé^ËF6}òø¿Ï†Ö3¥P²&€‰%*³ «YxÃNÐ-«°bÕLñD=D;fǹ5ë-I÷Úƒ£ä ¼×®©iH=LNR‰ÚÂ!BÄây"ÌU©y«í¶ÚÌH—,ž¼sÃqlÕ¬²Ã´К£…´@‰Õ_ S¸Mµ_Xj zmšM…ͤµkÕ§!§&¼¦j²ÌþdIÕéÛd_A“‰Å ©i¶Ï—R‹qX˜b¤¢´˜Vµ1 …V²Â7©Ì\êÖÃ#ŠÅ‚]µhÙ-.B¤»a’…×}A±›ø£o›˜Â¯›¯“‹É±_$»ŠßRïíR쬱l[¢µsa‘Ö&K=î2†0€9ÐŽfb"d¦d§A#÷™˜ˆÞ}#Æ ú³< f7 dÖ ä#±²˜Jâ&I‚VÉ"kH6 Șî(f*yEÕ¶½ÑCÞxWBÔ£ãø`Ÿµ 7€1 aYRªfÐòW•ww² Ëk-W*öq‹³,Ò —_á‚bÖÐ;1f$c@4W!äž>ùoPÙž08‹aH¸º`2ôË䃤©† –À”ñŸ†y%ŽRÙ®fñ¡ÜÁWÞèk ,­bÃ5ë¥b—¥vžËw*Ú”1½ÞEÝ…2kõ 3°€gqZÅI«5Ø ¾({ Ùq-Íd(œAƃ˜’(=·<¡ëJÒBŠh¾`|fºÏt7UÁU˜A™8%B±‰(±Æ*Ô¢þ/‹-¹eú3,r†lÕrDÙ_o0¬Ì *‚>2-¢BSèQ3ü¾Nd+Zé»XçÛ·%‹È©­¨-ú};§ÉÏI‚·îªÓ.It׎cB×',ñ ™,»…‚"Õ“›UV²]±V®!#·êIoSsP°ÞÜRJa:^í®–ˆ¸–k±¾½Æ¾{imžÒ®·_ qëÆ²*rÅ6b0 ¥Æ[²6ÅYSꡦº­;b6.V®×³Ss¡‘¸œdÊâ…½&mèu´yW1mt°"i,—i²!Y”ë#ýÐÔ&S°(¸SºFde†Û2k‘ŽMÖ8Øà”YÖr;É„ h‚:°Í‹p5–KÇ›NuÒ@–Jâ½¢ß=²hk y[p:½W‹Ú˜w%hõšË¬“Ña¹†{M1È %µ¡2¢ãJ›ëh"ƒ±6ñ¦Uƒ™hgh.Z{üÑ€ºÎ@LÏþºtÒþ“Cy î-àe©ƒ5ù â4˜þO'Zz(@UÞÖž@nGj˜·CJBi˜.EØ´´•ªö÷Å|cÀBÛ; T˜a7Q%±ð,‹8†Û«“\Á¬uªSh¹l(7ÚS0[Ê*Ïp•ʈ•%IPáªL&wBæÛ–6Õä xLÂRJeq.ä”B^!hj˜¡ê²ÖhP³€aÑOk!t­ÙR—(*ÂPaX3Tˆ«a­¨rk5•FÅ}8oX28@×MØm˜îÇÙTQ6%f ¥L\ŒžÊ³-[+“Åu¬ïâžî»´Q âÁ 7)– ÎjàŽâöLŠxÈІò¶+Ò5ÁhGqfŠ´ç¬SÂÔ ål®Fb&Kq´r¹eäK ñµä¥D i&úöŒ´%&6â¸>ðµM6m ‚Q>vƒ»Ü&µUWjošì®· »vÊö­Í¶ ¶ÂJÊÔŽ8˜‰H‘þO)0Wq½y×JËc¨äWR‰clÄ.£XÐ^RÅ€››€Vj\¦5Š É–:Ja:­ÂR‚­<ój¥‡d(‘‰«s‰¬l:¹ïeqµ!lNÕ½€MžFG™a‡í[EÕD÷¹èJ„T¦_Œƒ)º‚¶d +;Õ´Ä…«âb`ÑJ¡nÁ±lêH4ެ)¨c7‰†ÄCù··Aõ t”-éÕ5ð@–€{’ž>¨5Z×!”rKΉkö '»š³lX¶ :ÉÕ¢ÆY72ÑÐ}q’vèbÒ¶7œmˆèÁ–ÝJÀ,Ð\“!ð­‚]²L: F#r_K¼Jeuäì5?$ɰWZ®oJ¹°ÉU•:²ßè'h5*°3|•`­*¶AzØ\´âÚYn½úLMdT8`iÜ¥½+X¤þÄÍlŽw…•9ê| =u˜ã[§=ˆf -s×"ÁÔfÉmc6¤µ-¢ÃR‰s5Ú];è$s QÕW±»“ P ç™ °ƒ\©ƒY Ü©~5òÐ}ž«ÆmW@<7¹Î5FßÎæ ›jñÄ3$˜Ý<”­h¸Ê¼­huÁ2ÓY¢åºàÍÒC¢ØM²{cf÷ ¼wØ $5Lïq ”¯{Î6˜:ÅeÌ©i0ˆNéÕÞ/ã°ÈjãeºÄ8ýûžëV„€35ØPW¬ØÅCd5±$¬¶NÊÿ',šÕý©®pͺíwÍ TÅx°Úדk}¯hA\æÄÀ–CÁÐ’H³|¥PÅÀIî÷5óóãäž3,Œ]çI¦1Ù–'…Q_’À[«e]Ö¶l§`ô ¡,å¯Ko Á¢ÀLãŒ!¬Sï²iW}Zó]r2-½" ki*èïPÃÀ\Šu˜ÜT×`÷9|CÊŹ :Œ\*¹T…T¬–P.YR¹¡¦n\û€Dãs&E6Oæ*“jº¥$µòÒT ô[Y½ŠŠ¶¶+•µ®zs @QyaacRrlÖ5ìX5ü}¼Õªs«ÔZ"»X¹¯%*ýü0¤ªkIò€RšôVSæµV(e‘,ØL$âÃ+™¸âdƒÅˆ±^_qá ±y°úÜ•ë ¬?Ý‚¸-ÔÕ eŠäDǤl0'lx#bl“Bv7ºÉ}@«É´j¹W+×£ ”©“ó`{x˜Íí9Ü#!ç2ì.>Úœ©Æ¦òøgƒtÛeºíÛ)³Åʧr¤äØyɲ1±ÇÐI›Z/«xpÄI+HDš•Tí…V½+Öh•$EÃ\M’ E·dIGK`1ý7,l%¶á溲ºõl«&u–I€VR0À#ZfÙo8®QÄŠþ,1+wêXí™hÒ‘µtñ!+Ü›îšî6:;† eÀø´Éžå15ÖÆT2$vì†$ÕªÃd[¡Üñ¦\*L©Ãr"Ç…RzLÁ"¿Ò§é²lX›©ËN·pÑ­f½“䱑‹—ƒ7–±0â6‡p/²Ò¼bÚ­¬6ÄÛ^0ÖDe æ™Ñl' ˜å x(›‚Í„6yuÖšïf³çäz^2µƒÜ*X¨#] • ¯Ã½v ·¼¤v…`¬« ¹T$ŸÝñ®•r4š´´Û2AÏç”]Wl ãDñóÙ„€]É=ý¹Æ< µ5U‚k kŽØLÙ©3À™sVî±4ÂÝf¥‚µJՀߨá†ój¦ÙRFÁ¶‰±oøÂ°yŸÒÖ­+øžª®’)VJ¯>ûÑ3j¹¾W@ñt뎨©Mà`¡iLÖ%òn9ðBA2$2%q(˜˜ýýb}“Éœ²­à‹T/÷ØÏ¨‹É¶—ØJóPÙ\UIœÊdXßa‚¸˜”Ÿ»ç‰Øé·'2øo§¸@Av)ÖÇT\Ç啨 (Ñæ²­;§j¢g¼G#c•„¦¿‘ë”ÅzÌiw2Ölˆ ×U$+)Õ6M ÝÎêòj8¬­‹PkiÙlò¥6öµ70§Ã¢Ü'†I–¬B‚7§t²}“Ç5™;$Úª#{ õlŒÑS—j²‘B¸UpŠm5rÁyX^„~ jwæš¶<@Lª©R£Ñ+Yd{‹i שß4öÐ_AÃÍ›Ïzí¿‰¬r— ê¬:³™¥¶Þ¨êêÚz¦WTfdJDz žE-•~Qk`‹éÞVI„´…ƒUv½'-X±pb ÝÊD¯0á‘ÖyîZõªt¹í©°š„‰U®@±#˜„2ˆPîDmŽ?ƶٰˆ8\„¹[á¤B©ãºAîéúÈ}Ð:Ìzø¨…9‚¯ET')¨ê®Œ‚*ƒMUêÕu†®ÊëÒÕVFV-#{œÚ,™%¼"¸,ê~eã‰;kk¸{w¢xS«,Īؔ+{‚RrÉ ‘ð»ȨV|È•‘ˆDↀ!•ia)ÀSÜŽ ­ «0JZ­•We‘N²ÂÓøFF*•øTÖ䫪v²•:ºçx2¤™±$§oî0aF/ÙY­Æ¾à˜„y)aXù­.•›_5ŠÎRtö™Rí>Ã8‘caZÂÆãl s’¸~ʉ •:»‚ aå-jxEšZÊdíŒS\rAœ²{ª0f`«^GbáÓ<2Ù”´ ëÂÌäËuûL2šl¬¥ip=Y+J“ 8ëA[É-„þ] µoºÑÍYŽ´Æ2ÿNº«lÓ®è;u,Ø»³“¤òÈw%H«W'¼o¯ÁS¦ƒˆ%ŠþFÙ‘ÿ1ûÇÛÓí1ÿb'üÇŽ„Äo>ºr´=ãZÅŠ5í˜ ÑUQ|Il7Òk'mŠè²ðÕH`0 ¼c°•ë`«! EXšuXIM €³á´+"¬»ù§ÌÚ+UÀ ²¢»È$yÍ’…¥y@`ò•p>ö\]ÑNÒ!ÀÖ(–ásd\_Ó‚§ ³ù•ÂiAÖ‡0ÁÃÛ6ܤתíEÄŠÅ ‡6Ú‘š‰qïîéÊ!l0Íà/\w‚Va=Ð â°öéÝ,•!c“d§Ò O@]j÷)–®W}é5à”Æ7¾g°DŸNTõ­« šb°R–À‘E™6*d˜©Q‘Ãmc¯%jA_RŒ€VÁÝÏ惢DÖ±íí\m™ÕXÖM r‘0VvMM•ˆ{^eh>5rªx§Ðk?cfºÞ&udºÅÛÍD¶ öÕŽªÒË&kÊÒY\’QgX`NÛ?-â'ÒkJU¥Ê{íBÎ+jì›xäâá»ëãR‰,KVFZÛáì®’ïM¬|¸È×ð¹ŠíÄ+È¡–›¶¾þRò@`n§;ÕÈùeF¶Þ›M²÷Vs‘©Ir0d­ðuãœHCCº5/5zWW ’ê5 y“®š¢Â‹-s38ÕQ²Æ÷G:pt-Ó$‚àW&èh1ÜoƆO#ŠtXÆÞµEðB\•\Ä–àBgdÆí“ê;µÛ>±ëâz󬥰éêL´´Z/îÙ¨4ªâaûÂ….`t‰€bg×ÀùÖ PcÔùˆ(žìý –)-#íîP,'ÓY®?öÃCëÞ³fØ>¤ËÃ&¶‹ã3ýD¿øIzLíÓÖ"¶4/0:Ô´ÝÔÙrÒ`£[G>°°V¿üÏÁ~¿uŽÉöúxºë–õõQg ÄX™€Ù²'nšÀñ†ØŸ¶ØÓÇñ×Wñ’¿ˆ2\FÈi/›P&Ä@òé¡Ñ€Ý>²¶go§ƒë^­4öåÔIG*Üœ.96Ä i#.l‰G¼I„BPS¯‹,[s,Û{­Yqou‹ 79§?scXDfSÿ")ŸäGZõed¢º:ƒ(´Ö„Åu“ÚžÝ`¤Ê¢uÙ+Z–C¡@¬]4O]õ•r3ORåÖl“!¸Ígˆ@h€,@t€ÓÓÄùƒÖÒ2?Äù¤PsÙÆ¦2¢?q”'oüxƒM6ljëþµ™™ž§Ìë2S¯|íu=wé:ëõ÷i¦èôŸOÆÝ[ûõL¾Þ7Y#˜D–ùLIk0¹-&B=³¤k‘àzϪÀ·&¨²É n_ôçAÒ5_öz{?·O×dq0}K—(˜\{®2} KYþÂZäĬ'ûc@ëβ\ /©2 "i`ˆÙ!e}¼ÝÉØ©ÓUˆŽ1Þ¶êçoäê,±Iéº{ÆÁi „í‚‚âˆ\ˆÌ ¡Dúø™’™"™")™"™ÖfgÖff}ff}fgïâ•û¸ÛonÅ+K˜}VšZ2$'ägÐÀKO¶£ûGˆë©Ûì˜Æåí´ÁÜh-é#˜˜“%³VÌÙúÌŠg®zĈˆº—2RGÈ[¯:bYìù$d¶ïø×ïÓv‹\k ëN«~ÎlþI’±ã +$+Ù ãûÂøâf»v{4Û¬xžºëˆ‰ê\ÌÀ¿ºÏ;ÛgßóŒîÔ[ò3ä Þ^¾³ãøÏªàL¨2¢ )#¶À)‚‰’˜ÖµÖ?¼¿äZ‡ZuZ¼öH¦$V2SD :‘Á‘DAIÄÎï_ ën®D§¨²Ê‚8aqÛ`n`˜°Y23' 89÷A Nºø.ºëc}G–&µb¦´­°˜Å®EFsî%Ä©e3#¸ ´××Ãz׫_]Ô9V†Ø_-°×°Kx‡̆Ñ8Þ#·A/tFï_ÕýO+Îs!­xÕ϶C»¢qfÅŠýšì‰dÛŠ‹šÍ]7&»¹t®Ù™†’Û³ðÇQfNõZ uJì¶áH:õ•Ó¨²/±>˦ÿ&s¦ºGÞ|q™„È”IA„í5D†tÔJ'BXôñX@ì &k7(X Œ³ã‘ÖØ3¤—¦¾3“£g"kW*ù«Øµ!÷èY¼’¬Rb·FÏ7Hï!}‹ l鶿€:ã¹òÅ’¼\òK¿k’°u»Œz¯ªü i¿–Å0«ä)ð0ø›ÌÔPË ŽÔ6/˜ª~ZtÖ>®B¼¯• ­,¢äǸ¦*e#³®žèBÉЮ³Éµ÷Þ®fÁlÕÀŒ-5QôÜep]'ܿ⬙ȂN›-Uª ÊõçpñÿºD¶¹.Û%Œ#hH*œÕmj‰*.pXTQJ[ZW°b®ÀáI%$…C¤ø &åIÁÕ'Ö[øÍëhÅëÚ¸ÔÅŸ;{`îV'²fç0ˆ‰µJ­ÈW))Ru*4ÂÅÒ¦¤­4î/™bâ´LëÍu ›JÁŒ‚Ù\Öpé'H¥fÕU$ ¡7Üýò°ÁJ`wê'c{ªD«ŒÒ#A@à Åê6O• 3WFàeWœ¦»P‚öàâ¢+!@£R£]i¯V­JœQõdŒC+Ê-­ p÷”68ôa8$kŠ‹7åWL]¸W —hK ¢Â¨³zi,vVV@âÒL¬óØ % U¨e†Šê"¸ÌN·•“[¬08™eBÕ; ¼:½šu©VÝ DòײŸ1¨ÂeeÌõˆ‹+°Xu¼¯±{#ŸÄT¸ÕßÄ?œnÐ,"Ý\¤Y6­%r·-R 틹ò‚™\ùrõS­Óª°ìwNâ-eodòYLv2Ý̚ª€NÓ^™±]µº¢¤ð­¨Þr òÙ ÝBÚ~†TE·-…{+¥y8jÙÊþ\¾Ll…9ghÕ¨0¹*¾.yUŽËä²®ÈÞÎܽåÙ«”|Wq¬Z y!QÌ…åCJ­:!\ „6º¶¶GÅ_%:q¦q9^¢rű|h¦ µ©RK62búì„Éœ§ˆj®fD™ x'0i¿„8JìÒħeñj­-y•é}…~ëÖs\í  MháSÕ`ôîŸ.1ç½{^=9^¥ÌŽ#Õc)â¬Mšµi‘€IÕŠp È5ÖÒûj®<Ö,.Á讄À]½@eѺEpýË[)Øuà©îÊòJŠNy,×M*£<®³Î£®‘Xc<ªÀU:'tqÄM¥’«}MM†ÆeVîÁW·U–^ÅÛ©]zsÐM#5Úþ‹6*ä~±ë®ÝI$¹d3'<»ó–b)Nkç •ï¸UV÷hžÆÚ¬ï?ë+EvØY³Â"vÉFæñެé1†ô¾'Ó·qù7÷˜Ë¡o¸XÝÊÖhßÈÅj­šìº´®TP$q1ã§|°È[W#º¢­ >I8帨5®›o²ÊÚâî#’ºÊ–ܵÌä&/P,`íŠ>Zbþ±“ÃÆ8Öž&ÔâïåíÒ,`Úe»¨ö7 b64”ŠëkXä÷V`Ì·—Ù¯ªÛ>-çˆú•|}{grµ´%¶¸„búÅ ˜C+µb(¬@bÖ|dsÔ>[c0X:‹%“êù¬~-Fy51œ¶*•‹J5Ìè)Ku{’ȯÞzŸ ‹fÞ'¨:®ÍPÁ áw1Ý=®û•°5¹² ÅEkóCìXS 9Ф±FjÆÚÈåO¡Ôµªa& _^9ت‚3IöK#`˜Ú‘ æ6’‹™3uÕ…j[[ÂÔx6!Š»TÜ Laf«žBQb;JdìP …¦¡ž-­ÖË©d5üfÓT+ðòµÇ¢°Êj­ÃYœ’™Q"þ<»ê¼kºëb¼‘3Î Q|‡½PMˆÛk¶L ÙÌ*i¦ÎJØ,P$ä ·_ÐÊ—­ßZ²b¶!ÌdIjá%0ö&xí= d¢@é×ȱüViQÚX†µ¤kªÅPY×d²|Ws–t f¶êÃ["uC"Ë q뮩›ºÊ¡°$@@ÌÓl›à•Ù›Šr˜ë(¸¹3ªæ‹©Ô¸kJŸÜÔ ý–IAo(dpÁ3uu8lDiòvî <R×<Á SÍùŽ'sYUgVÏGHV>KÎ7 ­€×QzB,Ù6òOA%ÅT?¨„Øm6,® mµV CÒ×vµ­†Y¯V° r‹x‚°¬$¨5¥Vá››´cÚUF>ÀØ;‡Bq€Ó8m„ ›,°"‚&‰ÊYpIã‚ðMßkþ›b¶DÖnåm©†VRU\š”)îQ€”dUîE‚m*±Y6ÊËòÉsœ÷êHº›[aKâ@¶+~hk5F£ªÙ[βùå"±åZMéBê×CíÙÇ;Xt «ƒŒùy/H&9޵5˜×ØU¦öâHmuão.§Uu-º¶{*¸ú6©Uàh¡’¼wPŽ–íP¯] d?uz¤Ó° ¨p‹ö­b´¢ÒYZÅpTë= °Vú°rƒr•hBÅŠáãæ¯ik&6ÃÒeÕu0ðEå*«¦¥ÖWz+«&¹§ wìºIL­NW6k„M=õ¶úX:ö—ÄÎ5)MJ]Rî5Y‹öר³S% ‚j’a-JÀqí)V¹˜Ù]æZ-ê‘°+¤µ­šìö­c!–¨JœØr¶ÎÜa°Žå'‰’, Ú¸°6å&/> Ö…L uL/Bovdg1&ıFžç…k±º€L0¢ †@‰ÈEÀ_ b߯“[B gaéŠõÙ¬Ös,×YU·Æè½l­í‘¬ŠÑ…ÊÙÁO[…fs |³Æ7+j)•’êå ÝY +±N©1†8IÍ£rTÉt– ¨Ð¶ó}œ$¹Š×iºÊ—Þ®³b}Õ£·°Ø©+LšŸ+®³kXÖØ_5”>ÍÚ¦CN¢­¾é»¸·k#~¶«—n@)›0h#mfÍrzx£L«€«m0Q]¿QrnV7ÉW´á«omÛ– `ôUp¥ég„ Xb®-äi'šj4Y²y­J{@‘™P*¹° 6kØ]¾ÇÚŒ]zMîM"÷PVMp†©Á^k1QÈ4Ü[kX ¬ xº±KH‡#eƒ”í-×*º='’]Q•kaÊtmhL*´·ub•7œ5‰«]Œh-ÕÝgo¸|°î+¨–ùT:i›Fêi US+ƒ(6ø«yV¨;#Ü nö-¹5,%ª=jÅ·Ÿ+ŒFÊyI…bV™¬F,!Ø;ÙdÞ°M¼Bp~ÉïkUa"rТԀOš+nö@«lòMfë^VJ* t•W”§6Ð…ŽÚ¸ÑosŠ%xä ŒdŸ5ç_| úÖæ©~«bÞ¶ÕqñÕ¡!ÛØ*Žh1‘^²Ó#+#`î}"¯vvÚmÃp×QÇp‹R‡}5xêu ›P1©¼Õ%§b w¸[ÂxÜ]:˜ìonåWãªg £FödÅŽ6Í¥ZI™©W¹T&Ó×"É-½Wd¢z…Ú¡0úUqF“­ÛÑ´¬}P²Ÿ—h¸ e¥]‹H=’™Ú¯Ãæ&{Š£‡JñΩåì¦Ícc‘ÏjÕÆì`¹~†ûldÆšrvÿVºŒCÍÞ­YÁPÍ[¶ÅÍv’vÙ 0±\¬JµÌh˜%ê¡Ò´ÚÏ7ú©»¡£AËeVS4¸nµDƒß ;ôÀöÒÖI^É®EzB×ÿ:zÂÀ€²1‘Æ5à u\¦Ö!”±l]‘b˜:HîQ£¦„r^ç/V¾š©41f¤ññŸjÞa5™Ÿ42,ÿ\ä¾WéÊÁ) `o9zʤ4RxýŽ…‰¬êKµL–ØÒ®&vñ,E[?² H¥~qõŠNMM¨¿Õ´N*OHa)1b²`ÆÉ(am€ó‹«Æ`䨛w1’óKyIÆò °N¬2]£$wV’™VÝg_õª»…>Uˆ.s\¨”ÓxÌ‚¯?ý Q€(Òdk<áêöC5:,¸ëòk¬Kd=â¡=†Ž5|+8X@Ç$rN§îñþ³õw*Ú ÃªT豪ìGo¶Ã£—æ|x8s72ÇLKORósª¥ˆŠ%ÜK` ÅiöžÓ|.Ð-å¥ÛP( çÄ1®«ó3¨—w/z.ÍvÜ2±µ`4“J¸5ÇÄ1õ·ï3Τ:&%'þ¦õ,AMP ÛÔ ‹kæ-kÐh…[ …UŽoo>»@ÉÉ\‰RŸ7úƹ¥õ„ŽÂm²en1e…-‹–šÎįsá›ìí‹ ¹‘-8¯æ·SVq5aÐÝ6IXûn~Bx¶ϲ 6LíW>”šôûxGœeZBTÊ—/ØgT˜ÑU‚hi¸Ž*‹Mh×`žŸª|Xógªíªº¬•@ÛT™\É•ýü›ÔÙnødþ’dÌ™/Q)繞nu›EBË‹.! ݵ¢ÆÁ’Ž{†‹¡éQÁ4ˆµ &dIkóg«Â`»°3XW&M’ívÁÄJ¹Ø%{àˆJFF $GÛãýUê‰(6M7È&-äQ£žNç—y¡q^YÉÈ&)dÃÖÏœ}mir–\@¬ƒa “ÇöÖOaÆù"ŽFnÖ “ɦø†ù¯ÕOU´Ñ^kihKªÃI©LÖ°¢•ê0é\̃_©¾C7<ÞëÐÈs¨3Aí”Ó™±lCW&À>C…öêƒ"Ž0€-ÑâϘ}Ao#Óù;›_Ó0QŒ[L®"P0Ô1„ý8-clÉzÌ΃¤ù¥Õ6gu)îëÚ®èšÓ#¶ÛÆË c“Ñ‚áƒYú쟷Ú4WšýT‰¯ÄTAUnÛ½^¿nF…ºìÉ28ØÓܵ³kP%2IjÖÁ-À3üÅêJ“RPäQUbˆvå×=ó5wsn*°fM]b™R]<Š™-GÌÞ¬ ½’ïJëÕZÔ,³µI¦éz½Ö&`çÓY’ÐGY™ŸægTº²êY´’¤EtóÃHC;’\±Æßl4G'’÷l3O™P‰q*†léÝGìñ2kG)‡3`ص8cFIk>-yÕvË›ºÝ>õT'Ö\Ä­jdq­Ð()pÂÛ»ã$üÐêÄÇt°í«öÕ¥Påð+ZÓ0;â¢@ù95(»Êd<Î꡺ì‰YS®8lG+Å­â;Uâ£ß]dî%X*ÃÁ Ü*’ÓyîWšýX–Öj›QSPžiW•(fÁ(Ù¢ÖÁ È\Š×°‘öøWšýX˜TC«oM”«ï[Jkƒ™Èö§W{,?Ôø÷Êç`ȧŒ¯˜C˜Ç^ÆZš‘[$IeÙZYÌ÷%ï³Êmc˜Z›ì¹’1¢‡~Õ×ÿ™ÿÿÄ@!"12#AQ3B qCRa‘$@TS`bcr’Ò€‚ƒ¡²ÿÚ?ÿ¾ž«êú¯OÔˆÄp¡$™ ¤,3@Š\ñÜYØiu´áô÷ûд9-ÜÃôÁzË"7 @>%ÖOkLC{if¶°ÕTÅ@$(ȵHúuý¥ÕШtÁŠýK:‰6È’~íš¼’£¤ø—TÖZ-9PO(û®ñ ò“2¼jÀ Vúë6²ÀÚLpgý"i¨«E¬UWå~'Õ6'³¦±8äÙ…cV `ŒÚŠoum[ô¿ëX4ð1µCæ}˺™mOqãÜÆàoÖƒUøÍ2ÎT+•FT r2W5Sà Ú²° ÿç½y}FCo(–8ʯpvôülX•·ºŠà)Ç÷e¶;œC–$UFŠÒ2!¹>€1,p-h@¬o~‰+º³^K c|°ÚÜšµ9“¡ÖËb1,—±[¹H;‘ˆrÜÉÌÆp¬‰ai`6ÎL„ÆîéˈÏÉk €ÝƒjfÚª¨ÎÉv$!ÝÎ%]iÓ*ª+K‹änºóD—(å¤%BHVRrdîÛŽêöÖ…•ŽLÅ p±@Ê®²E¶ÇäŽAJ ß‘ôèâG„Ú2÷ ú™$ç!#&ÄæZÐCÄxþOˆæ0ML±Î[ŒHì±”,½ U·íÉ…(‘ ³ô¾Ž§S㽨Ë.àåÁví,\Yò*ÄIE¼'¯Äê7­D¼Y’Ìî¬h¼™–‘–Üd­tªÖ¡ ÕN ~#Qç%f'»[Ub5p­•Þ4¡XtšÙ_â§Äýú†`'ˆŒ?1[Ñ ÔGßñ›|5E™ ]³ŒbBÙ qБœƒjÞ7üLöqžjÄ›øR$AŽbˆix.mÜ EöTᘾ¢E+¸Û^ø4Y vð¦6ªö¤½|;¨šxeLgUíÜ÷¦ ¦@¢ŠÕ+7øŽ9ÿ%ñVÖ5®Ÿ,¼NÞä0‰ñJ£¸HðÙUa(Q­Èè °&Ýè’‚´¬ªT^ά38©«!ä2è–—pþõlÂX YS7q÷U&”—\[“+‘5sÅZF:âÉãj£÷)ë³WÜ¡½ÖvJe›6@.H âO@  ɉ'–%QÝâ8ª2²·œŠdØ×Bˆ¼‹+¯xv `2³ KŒóÜ }½ 1 ¹EhS÷Wr›¬qKPVXf ×£&›¦¤†Ã¾³:Œäf˜–º# M«ZíT?Äô?ß5xIœ;‘ÁBc¢Á{¹d%MUøä€ùZ™ÚQÉ›5^ä‰nì«cÚÖ•{r)¶=¬mƒ¨‘û!¹œS¢ìÙRƒ“‰Ùîw,¬½­Õˆ£Ú _õ‚2n…$xýØå ÀÆ1ã^î[a—…]ü Jë“.E‚7†¼‹Ü[Á; ºöƒÍSÙJÒF;L1 ÉÐF1Û·˜RA,ÏDfo“ ¥*µk’ e(€P¡!C ºÉje× Mž™áí24%K?g´’wA;€)ö²@ä$$ëþ]j=SA¥*&Ô ,h¹ ýl5ôsFºˆ4Ô¦YF7”I–ûÒâJ°°¤† !Øedt~$˜Î{qD`•áÒb•Bü¤&ù!o£ñ$Ö¸é‘ „¹Z‹PV;ùŠ«ò:ÌÄÃÄK—'öâ¼ `ÎIJ±N(´cf;/Äñd3ÒHˆÁÑóÌYË#Q– Û À.?ˆ=9ýÒ4@‹ÔãŽæí2±9^Á†7–ÝE¨Óϼ3E&ÊÜX€þÒ@62ú]YþoˆatÖ$Ëu<,̯vHÀÈ·UN£`¹ñ MW[‰àK`ƒ »-•ižüöžÕ€ Äѥˎ+kD€AZhÂòÅ;ò×%HQ_˜A«ÝM í]€2hq˜(ÙAØÐPdT€¤ìû…fæPnâGoa’¤RÑÿJRíI‘YŽIú4ÈËàT«9ÊP¢ÿÌbÆh+›Kå{hUÝ †Ç 8 œ» Ít lv**§–ìÊÑ#xNÜÃ3‰aÜmÛ—æSmEPÛd¬æ‚§Eš€£alFTQΣ0ï"• R•Qöéø1°æKšpÅPă2ŸsXÖL5¹Eò##rÅȈÄä»V1ƒyX*ÜYÀr¯îd_qÛÅ,öÎî[ S0 ûªÜbCÉÒ¬œ;n¼ƒ GqHPª Úúk™he &2§ŠJËŽJÄ“`©ÿj ÝÔM@M"ñf`J†ŒïG cÌ®JRFDòr íêW7.­(_(Ñ2&&+BZüŸõþO_ÕG;EÆA‚ia/ ™7(&SŒñœ9 ŠV¥×ÜŽ ˆåy³Çj‘KJHì¶ICz ¨äu”R«3nD] 2‰°BSX¢­aº* eb,¤bK9*Ê©q±ìÇp¥A w¼Õ«rvRÇÈØ %r­ÅÒ€ÛŽ`ŸÝ|3íÑ( P‚UcKí,Bã…î£×°Ûo|˜˜ ×ËÆNÛ5µ"¶Û¹æLtÆ–À ÈÊås•·V)òƒ F±á4:„o€äï £úÐGÍ$^è 8©BªÜIĸPAëK¨¨#œ+ ^.·ûjÊîx‘ü¿¬ƒ^MÚ<*WĘ`yq¸ b æd+kÈè±ù¦ŠJȦ(pﲂDm˜PêYˆšEŸïúcèrþÉ?ê~ç¡é^œ¤“þ¤“¿Ï_”úoŸÁiüWéÿòkûÙëò¯Mÿ¢Óý?»_§öëòÝý$#–[ ª²Ûë__=NÐŽ–çÊçÏûý~ýKôáãG§»[¿÷³þçïÑô¿N>tp (.ŸÜ/ÿœ¾öoÏCÓt U¤ƒoü±^rñà⦅¯^6:’(æC¨’!ò®¡”í^ù:ü¿CwøX|0ݠ˜µ}ëòÏOO°¡òׯû_šÜíþgîz_MÐ-㥄Y³IäÝßõ½ïÍï×åžÿG§öáúkìÛþ†Þ6ëòíÇð6Æ Ðþƒý‡Û£éÚléa'îVÎÞ7óCÅx­¼t}7@Þí$ B… 4*«úQªñ]~Wéà8©È 7dîwó¿KéºÝt)»°€ñwæÈØýÇ_—謷á¢Èùlw5gsäù=~YéûÿÂA¾ðÝ›ÿgíû}:I¦‰³Ž‘÷*Ô|‹ó½o÷úÿô>¬®+R,2ApFÄɳ¢c›*äÁ&&>oË ŸâòÅv’DA åÝT"Ÿ 䑈4hšu«õ&Œ|é9oQ ÍÍP>6_#ÞVþ—ÔŸèq“°^I6vû´¡ØY±, …ÂBHÇvø—N$Ó¯löØÄÈlî4e0ËŒË+fñ±`ßIñ¦=3ÆKb;°ÈŸP ^$€I#}ºoQÐ"äÚÍ5+´Èy-ÚÐ$ä1m¼ìz.ŠfU UT–&oj‹òÍû@Üý:ŽXå£upЕ7OuþªÀƒüªÊÀ2ÊÂÕ”‚>#b?Ï®ä}ÎÎkÝù…òíåŽuþ…_ßø±K„…»jQ-š)Ù–)R&ÌQ*]xÛY±î*ÖCøz‡ª~R#–h£ed4’I,‚¢‘;2!0nLCZ õijTÉ<( Z&ŠÖE¥‘€x¤ÉK¯Êà‡™³Tdõl¯Þ-@há!’H>c¶ •Ф°ªÆÝ³Ãsš–ÕLÎÝéšäXâ–Ü·É,$»’¶ßØÔ×ÐM™3íÜU·'¸Ì¯vs³‘^Ar(Yk.$)èS…v[ Tÿ¼PAŒÎ$‹æÝ¼IØ|Á9 ™C–`׫Q¢ZŽ~ dÃ*\A®…¸#<šÀg!eÀ]U›, 5ׄ¥“•†?ªJ’Ì £8ìC¨ÉðÜÑ®‰-,’bÎîòeòcOš pù€(ÛÌ·Zo\ÖÇl寱iE4„ó1 aŠ”ÑÒdf­ƒúæ~ŸªÕ )"E§ÅÒG‘ü·B‹ì”r±Š›!Á½mc‹I¨’51j|û/Ü(ÑÉKvòùI+ /€QGÝùÁ*d}["Ë«Ô$C L‘Âb!]"«bâÊÈkP¤È0´_ˆ5,0YQ¿%Y8Ë¤ŽÆ"—<8*û€Zéú×fÓÃØG§ˆ£À™(%J¨fâÆ³2/,ŽJíÆú‰5€‘¤V ƒm!dä ÈËcå; ¬¹ó]huM¤dRIÚâÄ¡:sò€Š5#Æ )f{äÊTnÕùÄÂX¾Uü[ÉZ‰•¦’uï%Oܶˆ,lˆÎqD*:>©ª:uÒKIí‰"Ä_r&°“df‘ÏL6³7®êœH#3RÉ ÄÊÈ?É:8Enôr9öJÒÊCw1·ÓúÌÑöûºã¹4š“ŽRÑvÌ¢Ô+27–ÊL:ƒâ AM3,òH!å$1 s’$‘$tIÄ]ó°¹15A’ú”šÉD‰‡ÒqÀì°…Hs) § #$­ŽÊ»QhµHûs7üL)Ôä¸0–PHâo¢½¶"ÉR–ºÔzŒHZWšÄ±¸—‘È ÝdBV; ¹ëÔ^°5:SŠÊ5/!Ó Ò¢ÊÙöûè×SÛ°¡ÿ]P“ƒµKþa§MHÓ°€ê1d˜™b©u2ªŒþ#‡ðý¶1¿%#aÔž¯é†‰?–šž%%âî7v2bY•$|Õ€ÞT·Öƒ_Ç[¨Õjã–íÍLIŽ[Ån¤Š÷g¹‘²:ÕúÔQµ.‰åÔBÒ•…^Ú oS³ #R~W,}Ô7ê_YŸððê?¦P'NüZxäï”"©]À$³•öþZ¶vD­¦ìFu¨Ôv^WAÆÌ©vR"Y¹h¶Yìb7­'¬M©ÔË’vt‘i倆Y&Å"ÄÁ³Ã²vd9u©$sé4çTMÇ6®WT湩LBÛOšûqE"ñf`@i’Dš™eѼš‘!ˆÊ³ÈOq´€ >SŒÉùjä’#ÖTšÂgŽSÛ(Ó8‡$ç&3’…œ ”pVj¥° åü=y\ú–¡ƒGE´Ð‘R67:—X×+föÃaGn“6ÜbH ÆN\[¹Û,(âöškemúngˆmÑX.V$xBd¡æ-R€ ‚ ŠéÕH–óæ^æ ¬æ—<˜vüä¨vÞúu¥åÜ)V  ê¥]ã™pp|†ãn]NWk&9)%2Ø[ ìÉ[aÌ#Ûn)*×pUdV8 ZßnK™?A@Œ1©@ÌÊÍòØ#b”¡Üž%l¹&Õ¨±Ž¶ÿò­*`#å!F*Ø­'-¨0$r²@R|äxA ЦÎY³V’I(Ùù[ÒÑ,Œø—\ÙAÄWnFŒ†\çF969ÀºC­¨sŽDš,˜»²Æ’¯·Ë1UÔvÜCÈÀ€©l‹™ ®fŒ¾‡G§qæ}c\Er6Ø’»3 yHê–ÄÑéw6ÌŒXšáÜ ã&g"ˆ¡2ªÊ¹Y4èH˜ˆÉÃxغ÷# ŒàK¹ŠÙE¦%âsÝÊ{öC¶fVd’)‚I^_0†\…`i‰î¨DÄ ˆ £Ä—$Šf R‚wÉWê`c<Oú6 ãÛÈb2t¥l¼ö ¶ƒÃ&+óNß2â*Ý ;dä •¶;ƒ]; B9Î?+¿€  A»I‘ܸ­Ìo»dK+qð"K~ä”QÀ+1ÇÉg5 ,™3ŽEB{d‚ßÙ¨î[QKb€œQ•#p ŽÑ¬aq!‰÷Ä{‰`ÉLq˜Se{—F÷Ò˜Èp¼ÑK'Ê*ι+ ÌÔ-ºôæoËýZHä1«~$„XX¿0ve+þÂ\]<n£Žáx{jÂŽìë -(À1U•¡9+)|Ãld]Ýge*û”€Ãœl‹Kòà¥}§“ãÌd1;ØwVXðZ–b †Ç$yXÚBÍËÉ«$/O$«4{}ÑqYXrÁF* FªÂí³ª»=l)-¡„DD‚‚•j¶fñ!ª«±C•íÓ¯;±(1È^‡t£1÷ÌW k^ïlX½—>•~S¦wÚhËW±A»yo5ÄÉ"‚NZî†Äþ!ð¡u91±Á“%ï¤rOoÌͳ•kûr$M<,Ù+5¸,±j%0[\ 0 Ü|$ ªF4©i“c-<áƒç"\£q²µ¨E ­LÛ·ðŸÒ4³Ï.¡Œ«$Ø÷0p±Hã[O…Œè\xvú€Š"_bF@:ˆ×UÂä¤ùj;Ÿêl|?¡ZÄʤ82ö•ƒ ³b-óÄgw—×ɵøoÓÐ’;Ûå`º°9Š`T¡ ?Éð>‚ºèC"™Ák±šâAcX{El¾Þ®©þôé(°–Ö臣ÈQ$…Ÿ®G{úô~ôöË!ñd•,Õã&ÂÈ|ùÜÙèü=éçošˆeÄ(6T¦•ÿxýÿ»¯ìþ‡¹jAAq î¤oŽGÇÔýÇÔô>ôñ[K´k`„‘`®çr,ÞÛxëû9 Ä©:†µÂÚ[!9p^ƒéçnÙ›p0çãÜp¿¥lEÙ»=~E¢‡qEÞÅ@òHÛ  Ç:ª-DÝ“áïMFÈFÄÝ‚Íuý,mCaöx±Òú…Z6ÒѨY•ñ²Û5mÿmùUÙqóÔ~éñÖ+!ÅJŒ¤È!”Ð"…æÄæÅtž“¥Ž\+ÜUÖј†§±~Öæ¾»¯_’h¸~§Ëdeç¿Ë\;xÇb>½7¡h[<»…ž8âgÈ+VáE8µlÊH"Oé7Ï%cÜ!œq¢Â¹Ö;=¥Ç&]‰=~K /Ü1ÛÛ’ÔœšE Ìxy MÏCÑt*æDBŒ_6ƆGÿ×ë‹ßȦô]c’±ÃÙ¸´@¬±q¿Jé=B…Oo&_ Wo$ÊÞÄšúnnÎýDÐŒ¸›fùbrj6¿LØŠ­ëÍt}CÛX‚2Æ¥8©UÈFýÅV!m?,I«£ôBÐ0uesÜ –³À7 ’i“dýOMèZ¾/ÊA#Ñ2¢”7Ñ|…ñ{õ¤i4òÅ2gœ!„vF*¥Q1  Š/É«$ÿï§ÿÄT !"1#27A8@BQv“¦§¶ÕÖ$3Ra†Ææ bq‡·0C%&4Dr‚¡S‘’¢±5–ÑÿÚ?ÖS§k)‰´‰©s&K¥¹¨eV%j+/H“&CÕšs©!§¯<éÊrS’ˆÌ€UÏZ?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸õ£ô'ú»Z?B«¸Ñ]š~tySóÃósþºò'ròw碙@ÿøï+Ëï}Óºw¿ûün3‘æqç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜzÑúý]Ç­¡?ÕÜj]KÿÄ~ýù»§ë5Þåù¡Ý»ç’iÒ'÷^ñùÑ#»÷ŽïÊçråeŸ)ÌpYú—óËów¸ê T.åù»ånov§R§÷®ñåÊfùO•Éä<œù¥ÌÀ=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®ãÖПêî=hý þ®â¥üòüâïÚ‚- ¹~nù'•ÞiÕYýë¼yr§žLåry—;>hòð>;Qþ þn÷”ÝA¨'6NŠl×çA~CQZUí¼ñfûí7ÐÙnw[ Õ8~\·Ú+.H“%÷¦#°È+<ó¦¢ 4ÓbFㆨ ¤JˆœyOj6'TU‡%1Èu:zÎŒÊâìš[•(PÙ«Gou7©®JlEÔ°E/ËØ¯úsþâÖ}á:©Py#@¦Ä“>l‚C!b$6ND—ˆ[p‘¦[3T#TKªíÅ>¯L|eSª°bT©ò„LFL)̘¯ˆº à‹Ì: ¸h…b+§äoNSµT95Gå=*$zƒp'M~tJueØmѪ2…R܈3ä:K°Š¯d¨"(¤D»" %ÕU~$N)Ðiz‚|¹iQa@¶‘Öm0ü‰¯xÉÞßÓÍÄi³uÁ}çÛŽÚ.nº„Iù;Kù¬¾ÎÔx¯ü¿ª}Ò¾òM)߃ó„¨Å¨R›ƒÜÅ£ঔîo/»à“\0çs²\¹xu~IµZ”†áÓéÑdN)ÛòãÅŠÑ<ûÇdRŶÀ‰PQImaE['úµ9îñOªB‹Qƒ#–ë\øsX 1žå> ¼ß1—ùo6Û¡|\$QOÉ@ùKû;ª¿'j?Á?ÍÞòÕ®›ÓZyQæ¶1fHŠÛçåˆ0ù3›aÀ ðð–ow9Hì~öÔI|¾ñƒ4 N–ÖÆ#1JG–$jÍ5.g2LÙŽY“u®®§VåºÎÊÛŠÛñ[ˆäh¬HýØc´b{LVt©1€Â”úž—¨È5 C=[“ù±_®ò†=?œ’;ïvGœŽzŽW`ÎRe™PûP¡Ò©©9:ve¨Å^;xCXlDD|ß,¾Öã]Tuŵ= šÕAÍ!«t…ªh-=§#‹~MwPéê,Žôä¨d†µöëˆd 7":(¾T©Pf¯Þ)°^ò¬vF;>lfÊ GtXfn]å¶EÇ q Ñ2^ÅÓŸ÷³ï }Ǧ0)¤«²yfH‚þPiïÍÕø®6êÇ|ã‹3cåÉ› ÇáÉ#>ëeÙÇ’¨«XùwJPªÒ¿í=ü’óºv…ú$_ÏMOI¹y>—FæAÊ‘æ"óÛçö€)£+ÚjLMªç@Ÿ6¯£'Ïb”úEŒËZoTV§Œ‚3ç6ë‘[Œ(Á H†ÝÐÒ›hfS¡vQTÓæÊ 85窔vKî“ï•#x†Î)ºýüK@ÌI"L~‹Tb©ï÷hQå½ æ£;.B ŠÄp|›'FÍ@IÕ1])6¯'E×ô¶ž¥´ýf—G¦UáUbÃì T©•¹5™QëR{Ô†¤¾Ã”PI>OuD¿꣮+ý¬éèlÖªi [ ä-SAií9[òkº‡OQdw§%C$5¯·X„C P‘¹ÑEò¥Hòƒ5~ñM‚÷•c²1Ø©óc4~Pb8›¢Ã3rï-².8-ˆf‰’ö—òY}¨ñ_ùTû;¥}åAÔu$“·¨9q5^#â¬é›€¬G–ÛKB £Õ ’ê é’â»%ç/Uz¯ÿì½–~?ãQÖkôg’uBjZå2$‰ç"§ù¾sÅ$%¢å*|ˆR¢GëæÔasX"ˆëŒ:Fí 4+ÌÇÕeÙö C¯==ŒéÔq’,¿6Ñšä’Ý=É - ㎦BII¥¹ª{Z¢ÔfR*e7Dö¬ÜšÀj2ŠÛFU7^)oÓ"½JrîÌj–ë­ËŠhƒ …ù(/éguWäíGø'ù»ÞUm'\ï)K¬°Û2JÂÄ äÈf[.°é¶ð HŽÓƒÌiÖË\lÁHVZ¢‘N×µŠj-oFÓõÊûÑV\©G~o’#·ÉŒsí3–Ä:ˆMãuç+TXCMÒ隊'q®D¤Q R§–û@ܵ¦±Ý䌩ØÔ¹‘‰ç ‚lÉKŠEaúæ¬ÔÏéȯÃÒñõE]ªŒ=6Ì–R+ÞKeˆ0‰_(bûÝAÉòÆ2#bòYŠù·¨µ½“ªæH¨j]1E¯7OVeÎA›²#¹DÖ<ªƒj’@Ÿ e ’b¶â,L„hpc1$vömˆÑšXd~†šýÈœv+þœÿ¸µŸxTèÓÄŽ ZŸ2™0Õ³(“ã¹@ƒ‰¸²é šn+ºqLÓµ¸ƒ¯ Ðòj„æ½§Ð5ª$‹ÒéŽy+q TèÖQ>d>~C¢ ‹OÉ èÝ+D“&+dȤiêE5ùž6ÜzîÈˎÅtÙdÜŽd­´Ù*€Ú’©TÕsh:z©å?£j5‘“¥hÕqÇ¢¿s î¤7 1>¥2ç›aBäEeQÈMrZ\IpÅ• T¹¤Dj)æ”. ¼²\ñSB&ÈÚNoUZ¨ª%ÈJƒRÈ<6+2¨‹ºm}ÓqºoÁ:µ*À’Áiú§8üÚ¹qÅ’gÁ-‰:.]Qpï‹•J² ™å§ê}j?³f–÷ø)±-½¯)VQs!EZFÄ‚(¨à/›ÞŠÚ9t\Û²®ò¸‹‘"Þƒ5qD ³$‹_4–E,Ñn(5qV¥Y ¬K§êvuPAPB̪¢’’‚+¨Ø!6y,Œ¯>·q+`´¨DœÁm rDL .b]Pð¸¡â‰å*‚ŽJêPjÄŠŠêߨ ÙÆH¼"F°é.ø…¡tK_%ͰDOó¿îñ±ãW©Ü}òC'§`EkûÖó˜%Ó÷ŽF§T«1yê E.©èªbÑìæØ¡bI’sE½ìÚ­j§r.±üÞ­)0Ú¨Yç-mPˆ‘'³Gv¹bàI:äÖ³‘É䤯£^ÉØ6Á¡CQêC7¾'˜¢ ëšsPQ«£#¹'É5(sÊ(ËG7{n3Î9_F^åŒl‰Yu.Ñ þ^ÅÓŸ÷³ïŽÒþ@k/³µ+ÿ/êŸgt¯¾(/éguWäíGø'ù»ûªª’jQ¥hÄqÊ“ÙfRH*ìÊ]8âIŒû±Çô€§,G 4Û²™–Xrœd…ÅÀå\Y2ôqRÛp%A±&VTÅ6œi¥i%Gí’nˆJ ™¡YU.Iþ áÁ&âd-ºå€¾[ª"刊ZÂ){"t¢¢ðÛjBŠ.wysp³B[£wÚÖö]ËÀ8nóU§ŒÌqèÞ÷4²l…â »-ìž—ã”Ù8Š«×èòì[YÛô©**{xhã´é¶Ø­É\‹¨¿¼9\‘/áéup­°^w–KÕ‘d©¾#à›û ößeÛ…³€Ò8*„צWen;öË~”ÿ=ÊéÖL±sÆËÔ`›ot°ªn‹àVãŸÍóè*&È¢¾Å ²G-ñ/µ|xFÅXeÂ4QOHÓÏ4ø6[`·óðNæ6 Oç “es K qÇÐDOƒ½Çǯ†Ñ…nÒ.˜/€†&AbÇ4²üÅ3+'‚ðˆàò™Án|Ä4Ì„-rK"b«|R×·‚¯—N!Ÿ¥eLªÄ>ct·(Òeœ{>îäYžR–ÛX!H7E²o( ñ3ù{ÿNÜZϾ;Kù¬¾ÎÔx¯ü¿ª}Ò¾ø |¿¥ýÕ_“µàŸæïìhèŒÕ&G¤Õ!jF^§Â‘"2Jy•¤‹çPßg1Ýå´ÔfžeR=æ\•&bÛŒëq¤«fÓŠÛ“€cÌošÑ"8 CQ,² ì\Hâ,tôÞÆê„¿éÓû]XÛÀ||ZQmœ•¡y,„^Üq<±BQË!AÜnž—ŽK*öųQÌŽä«éÙ~5½±øÈsNj™ ¬¡ IP”‘´;Úçt^Km×ÄWWµaÒ ”¿eQËd]‘3Ø|vÝ8Ä—˜F>mP ÄwUL|n[-—+ß‹â\ñô—O9ð®VDô¯~«.ü l¢“›(„+€ª)î¸øŽÊ‹ã{~î#´=&® \…ELú”qUMÒȫǟ%1P+aÊFÑn–OÖ#½?ù/í߂ިª‘”r['›E¬•7D;¢_û©º[…cšã|Àwš —󢨊-⨖Eè{1KìŒ#¨ ónª<àç»E‡·;“~Ë£{§°jDë†<¡pœ!4DO„½hV¾è«ûÓ‰ºúl‰Æ_}¢Ói¨Ôz„%v4§*R TûËA!$œ\‹-ÌiÖ•/b¿éÏû‹YþÅx´è š€hµE¡6]߬$Ö˜ÞÈ"âSy(½äÂ=—Ï·’ðå'Qê}k¸ÞFqd×*QJ"Ê#&;¼ŽÜy,bÔ[0Mõ6˜ºEÃÒWR×[u±GË3¬ÒÅCHà‹ÏÿÃäbÑ"ݼ–£šðÛ¡©µH”Ù‰~X¨£Î(ù¢u^ëø ÕF–ðÔµÑ(jÛqÝn·SiÆ’êÔumáåòÌÕ|ÂÛ|l›ÜÉkUç¤<Á„ ò´ëšŸ¤&ç?K<ÄÌ—«+’ª´¥¨jÍó<ˉå)˜‹HDï,[æì"ú!ãºs:Îåuã’ÌÙ Ê#`}ÃiÖÌG”ù…Üo!,LAIJ†\8kµØº&ŠE€xȈœ·%#qM,ˆVê«Ã“¼½ZrRÙ…”uZLr"x¸O8ÀäXŠ® û%ðˆÜ«Ô¹‘ÑŒ¦Ê_0ãŠö=N*£oäm´ Š[⇿5v½›qn+UY¬°Ù‰sô@\ÅH ¸‰.öàQ½C]ˆA«Tq¸ŠuàÛýj"»§ –[u' ºš§Q²çœÈ†±Qm9`…† ÎÉRåí"²8¹øð/7«u3„bà«×ª]å#ÙÈĈE9ŽëŒ¨Y,/*""\8C§ëD=Ý•X„uú‘rEÂpži¦mòç8DÙ5†o:J&Nº]OQ½7OUkôɹ:ˆÞ©» ²X‰Tp%¾á?´ˆùLqD•L6ÝT$9-È1q·L  .&—BEEE²¦éù{Kù¬¾ÎÔx¯ü¿ª}Ò¾ø |¿¥ýÕ_“µàŸæïìBjlºlZúTQê r`ª…B;jÀÖiÔùl¶ã´ÆÝ`H›!Å/,Xå¨sØ}•Hì¡¶öj£‹CìUÏKYoo +œÎ_œÕ:^nêDI~]…~.”·Ä©Ãd­““x`B»9ãtñR‰/·µeT7Õã^a2ˆj¢†H¦Xï‚úXšØ•Se]øRm؈r¼MàÉ+ßIÖQ[f]W+pþfQzDQœðALRÛ ­ÕoþváWŽ"â ªÚÀ«e>´Þ÷M¬6Dö-ͤqRE­?iÏï侊*øü.­ŽÊþx¯'óvRÚé¹§·Ú6TEá‘6;u! $*fƒ±ä©e²®^6¶éÂ>#h fâßkõåÑÓ»·¾Â‹ð·^ Õê!pMŽÙ­Ämq=“¥o•½»¦J*Š ®=CÏ,zÓ§Äw2é+ß-—„eç›\A D««o6D«çnªžÕAðÛ‘ÇãKŠûO1Tˆñ‹ðÞo–ãO°û·šyƒ±´m.&†>’R©u-I ¯ªi‘äw¸Ë$ް¡—9ùÂö.K6¢= ‰3Yç‚8lµ1ÿ(è¿—±_ôçýŬÿb¹©ˆäá£@vXÃhùE)Ô°0½Ë{»´ãæØ¿'’÷ve\’ï/–Z—Q+«g*Iù…9èé ›1ŒÔân'1–ñTa±mD[· ™Ç岉é*"¶kÓ×tÛ}ñUÝSÃLJU. ‹hL ˆm·ÌÝr$A¹.ÊŸ¯Æ¨¼¼,­rÔÆÄ]cº-²¹Y |8`ÊB€\×;_ÄJ¹–[Þĺxðé:(ªMfÒ¸ˆ—EM“u%KüK%ô—{ð@Éõó‹rþ§è¡~å_N›x£b dÚsHÈn¥ÌÍ7²úW\¿öàÉMæÒáeÊëš—‚xç²[§ã^ Þu‰¥ÄvI’+îETôRÉoÇŽgœWœóm¢ J Kn»å…ÿüSt¿ ‡BŒœ8õ¢à«…‹ÑXªxÿ•Êèl\FBæãÖˆ((æ÷þöW·Rz^6’ú)8€B.ØÙP¬;ú> ©¾þ Äd ‘SÝ ­Ë%<ñöóP:Jþ¾’ñ˜´j†£rDu Òß}º¥A–;ñKeZ‰R?ÒšÍqˆE";„NÙàNRS…ˆ‹Od`ÄF`rÊ HÃhÜEnÉËXÃfT,˜ák%¿/i 5—ÙÚÿ—õO³ºWß—ô¿³º«òv£üüÝýŠlÍEL Æ£d¦†”‚åB¥¯Ò¦…bLµ§¾Ê;8]h”d:@ Ä~(¹*K]ÝUÓBÅ6^ŸNÇnjf#–*ˆŠ¨©Á‚ŽÑçÕeQ=òÞö_ŒJÛð ŠëXÜ6ú›ÄÓÂéž_»Øˆ¥Ã “(-aŠdâ-•|–ņÞ— …‹cЯpzEQQ6É ¯Æ·ðN5ýhÝUO66°ãe[⣶)¾÷_kCnWQf‚«—.È_ 1²¢zi½ºwºò˜@GOÒ SeÇÁC õxb¶ßeàÐüÙŠd×$.Šª˜*øxÛeºZËþ ’+êê*ƒèƒèŠâ®¦öDÚÊ–²ú><"-æÍÎP ¨Ž*J ;|÷_²'´ùÁcDFUUDܲYoÕ¾#º-¼oqDi”h;Í.ž».i¹caÍØîI{쩳í¼ñ àŽ à›!bâuÖê‰íºÝæÇu 8D$X¨¹tÃD·¯ "¡ å¿“P±]b§2 ª\Ñ¢Ô"~Upjr|Hè]ãɼ¦#°ì‚ŒœÂ™Ë7bßòö+þœÿ¸µŸìjª4<;Ý_M×)‘yŸ«ï3é’¢±Ì²áÌtr°—Mö_"›œ–YŒ=ØDcÇE…}ù?¤¿ÊGå=Þ$ód›Ž\¸À£†›h\ŠÃ­–á’!ÉPoe.ŸŽëÁ€¼Î nDÌ} ©b¹d6ÆÖÎ*¾(Ų Zû"Š!\TIoÙã¢Èi[µñlÉ0Ûû¨¹-ì©{¢'‰¨6Þ¸­rúƒTñ$]—ø;]6^E󄜶›;žh(JwÅ»‚cíÚélwÜL›x|Ñ‘XŽöK®Kˆ"å|GdUTÌMÇì$Ù!‡¢ ·RÅ|n—µÿúpm EÊT\MѮ䨫küY¯Ä¶àÌ>P€ªæª¢%Ò‰°ß÷mºî›£®š)6¼ž^í“n*"fŠÚ¦É÷º+~Á]‘SÌ¢Çfê@eçQÔ_j"~­–⫊û8o½)‘bç3–m•1!TÅÎxà–_IvºGWG¬-‡}Im}•=ÄI?tFê±k²5‹+Q: œÚ{O"Ç„ó¯È|i™Qg7Þf:K)4Ò<Ý͹ï@i¯ËÚ_È eöv£ÅåýSìî•ÿƒƒ©&Ì2lF竌S¤ËÏÈŽÓòÜŽ&h†ìGÇ–ÃrpÚÌ–•I¨É‡V'Ýj-6¯¹È¨M›¼ø&Û’"¼&Ón8Œ,€œ ¯Äk¦áM®jª*{‘Ý–1&Ôc0ÿwe]Cq@ÎãsaæÚB±>ëN4Ê8à¡Raë: ÓF;’ñI  v#$ÇÍ©®c îDUYR Ùi§ÍÁŽÿ.‰šÖ‚ŒTóˆìi}ün<‚ŠëªPJ4ÒI^å¶á²ú4GÈ{Ñôªäiõq„3›X„’)ò›V†Iµ¢ÊœI2YŠàIu–œUFTˆT•‰(̈­ÉaÉQ’•lߌ2Š:ÈdI\eÍYWy¨¡|Wþ åý/ìîªü¨ÿÿ7b%6¹©[ÓÚÒ 8ª4Œ©ÕYM¦È’è÷IÎSàJm¶¤J§¾pù‘ŸˆY6Þq1-»­òú‡Aº’®y_a¶*‰e_ß…º ¸à7ˆ‘#‚&ÒqQ }1ø…má—@mÅ@UBë¸Ù¢ÂøúX⟠{þî&²bFH‚‚¼µ,IÅè-ÓÙ¿ŽüsÌüêò6í®‰Kö•Pì>—‡‰‹·Þ2M.œ²M‘Jß³k"²×†Ç@èåíe_€~+qDEEÙ â¸ðâ²+L¸\´q/Q¸’&ÝQUoðP¤2æœMúWq‘6ÙQv¾÷Tã¼´‰‹¨"þH¾o,ñHÔ2/ñ¶ÜF噃|Ç,ö@ŠYfF‹µÿY²"Šx~äà[lùˆbãª..ÈvÅMWoƒÒ‰¾øÙÇÁLùŒ]mk]¼‘n(˜šª%ÕzW~y³l‘¶¹C̾D ÆÝ8¨cŠl¶¾èª¼î ˜\¬„@é툈Ûl­ºíqÛ,•+Ú•ªÉÔ}y´ÀEoÉ4Â|ŸŠã!eTr›Á G»ÃM~^ÅÓŸ÷³ýJÆœSûÔ*«TemÐŽï”Ü‚øÂäHuÖZ#¼(ryÖÙeìt‘±.&¹S›*tÃyÎý*Lõ©;2P™4ëç?!&¡+v "ûͼ‰ÌmÃW™G9A¥²BÂèB†™ªZàÚì µº½«Áà uÄEÏ2¢ ˆdIpU·ÿU²x§ã&|çJÙßrîØ2²íoßè¬,ãª"8Ð åsÆêKlwÿ[Éz±i0FÝSæs=%!T.•DR%_ ¦_ù-¸ï.8¢è©ƒŠŠžlPVÂ#º*eÿ™wº]èÒ‚ª¦㤨=(çë­rßÚBˆ…º‚.It]ÈsK ä¹¥¯’ošÙD|=¼AÏ>y+¥É-’KíEýëµíny K+ àªXŠÝÅ k[/îðŠÙd¹s3VÉq¸8ت¢ #`ˆ¶Çãºì¤€ˆê¢dXÕ3ŒÑOÅ7ÈìÊW[dÕÃɱ̯uü¥ü€Ö_gjÎé_ìK"·H „‰>cÕ(mE…)LHÒäÈÔi ã­2ñƒ™¸ÌoTaKµW çãÓ©LԦǨJØÐ›­A§Ì¤6RÁƒx¥E"^z"¶AÄ7‡HPAQIÈs*&䮢ºÄP·pÌU´Duº—-DÌ”ÄÐ[›I£Ò!é§f:õ¬)2©C¦*ß‘Ç0m¹æ6iÊ›B$N”6!É%·š:€.Ügb”Ù4Øó*eœ§$÷&Î ô°l†y ²‘1SaÉ€SUr½S—Z¬H?:ì¤i²Ä˜m˜ñZloŒxm´Ð¥ñi·< §\Á Ós۶˾>ßïpªiql—"ıXEme²\·[Ž‚6˜ €¢«j¨+²–9!ª]q¶è½jßìŒÜB$QÆÄJ‰ƒx4©e[Çí^¢±›|°ö¢+y%Ðn‚cÕ—Æ«ˆß,o~O•æ­Ñ¶þ‰b!º¥ÁAù%Ñ0MàW)U‰1݇5&GS‘,ØtÛýc2ØÁ‹-†û´¦ÎÜÈÞ`•$T¿<ªR^ž"‹{éTÅK–=0™J}4²AL 3 Šäjâ¢Åf¹¥i•BjŸ)©ENœõ:LŠ›$=ÖQ«L+¨&Ô¶[aÕæ¼2â´Ïqy‰j¤½;Q50‘I—I¬Ïr;û3iTÙpŸhÆÎ6hè9'9†»iø•jsíÕ\§s^ú&ؼØsÉÕ嚈"Š¢’'ö(/éguWäíGø'ù»ûŠ”÷‚-eºŸw¦ 4v&ˬ'v”«L~¢NÆzMa])®’»!•qÔù2I’i¤t¤rîY¥¹B¥º¶‡¶éš"ßþ¸UhK—Íå‘:«±î¸Û¦Ç’/†J¨›qËWƒõ¼å\ÕnÙ) 5á‘zH·½ÕWÿ28mš©ýÚØƒ‚‚–p×pR—°,Š#ÆdéëfU”ZwÒ_UD½½ƒý¼9Я!-³q1]/—‰*nƒíEDË-¸XèÖX¨õ¦Æ¾ è­5[Úéñ{nКQ>µa-®Xc⢢û}»]Iî‡U…äˆÊjX&h»ÛÒTÆÖñßâ Û6ëŠfÈÚãð‰.¾(ˆ–!Åwÿ±u]C,¶SÔ¼K\¶Q¾>Ý¿HOb ¨Þî ò\Ñ̯ӖÞ;–=\bß1IÕBGUô¤BU‘ðÛ¥-Ã&ÍÉ "¸‹}Ì÷¸ú IW-×~;¾@« u»ŠÝÌÈ>>–Xüy_Á8í 2³Ï5¤žÀ±,KSsI±ô”7€MwÃ6„–äŸØìWý9ÿqk?ØÔòtÕUºDêu6MNKÆÒH¥SÙrUV(;ÝdɄۢÃü—<â#FG–lcOüP*‚J¸6VNÑU &ÿhñÙMwBnÍòG]ÙA^QU+¯¥è_uøK¿µQÇ!æºYï­|ÞËŠn©kÿ¯#5æ‰ß¢Â»Y,ˆ‰ÔvÏ½ï¿ +L<`KÎ軂¨™’øÝITVËÕuÿï8 DE{ªcaÁ@—Ç«Ûèãn6%qÄlP^ÄT•mg %\-ð¼=Næñr»*’ZçýåDºaþ’¯Ûnæ<Â;t€ â—ê¾I‚¢ŽÛ&J¹]8q³\ík6ž‘ïátU[&éÿèã2m8¤¹'ˆ%…U|JýK²ªÿúã5hm T>¬½§ÔßQ u'þkeãÁ¸*~-ÙÄ,T—á."€Žl¨=^ÏßÃm¸½'E9‹ktíŽþ8ª¥×e[nœIiómòñ^•T øž-Ô¯cOñàÛ6Wr\‡&Á•D¾Ãýë*ï²Ý|cs؈Ȏ+ õ• ÆS$0mF^˜øÊ§ÔâG @]èÒš™;! ¨\ Án&(H©ùh/éguWäíGø'ù»û F¨ÔdQåÑ\“P¦ÕÞj;‡›xgÅsó…×[iø’Øi[”ÍmÑ}•„WŹ¢\×4TÛ×e[í²[‹ wÅ3 ¯PeºÞÛ.<ÄÚÿ»K…Žà.bBÞB›+—Ì-ÒDzïñâ¶-¸l$* Aé›*]'k€‘xî‹·÷S-쨬 Èýhb·@M@ºÉè®$¥¾ÞÞFÈ—{’»è¶êc²xd¸¦JVKõ!"ÞÄv}·ÕFÂ\¿9âYomŒ“%ÿÜxå÷u ÂSñ¾Ê¸îž*WÞöø­àÊÇQ0\½p%ê[meðT¶ûx*ðFÝÕäsÎ/ü´S%M²²(úXÚêžÝïÀ¶Þdbæ*¢X•Wïû•-ñx-ª9‹mœØ¹ª¨*Ø[eEöÚþ’ûi–è6ãŸ\EKÛÆêEèû.©{pè8ª½ÌD€Å=$4_ÖYtßÑDö*pé&}áµEm×2Ù¾«f‚%éyÁéOD².5ÕMG),CÓÑc8Y£¦ýf\Ôµ‘µ @†Iº˜¬uº’gù{ÿNÜZÏö Q3>tiºV³3ßt’ÑGgH”&M¿N‰äDËÈã ²Û_7Ád·‰é\ÇÞ$Äyùùÿ¶ãÝGí¾Ã·TŽcˆ¦Ò⦜°^bŽV²¢¯îTÿG ¤7BQOL’Åã¿…¾4ÿ>Çu%<Òèá/ˆ…­ºŠÚè*›p+º“1ºI‚†Ûs½/C{"ÞÊ£íÂ0h@Î\Îñ|Žä„V"PÝôÛãáÀçâÞ(¶DBÙS.¡[ímÓÚ—MøGTÄùwFBËçCãÉ>B{?ËtàÍáBS±°*l ª©l¯e¾Þ)²l«ÎBäËy;|WlSt·÷’éáà¾á_&ÍM1\[o!qKÇĖʃ’Ù…và‘•îèìYxŸVÛ/Ž;Ü×ÁJÛä\f(µ»{Øq/×x©cãq²¯VÞÎ9ã5ú·Á:œxþì¹zf½"‰•’è©ehÝÌÍ[.zrÎÈ ž¦>(Jˆ»¯‰íጠÅlš]Jžúˉ8MPA–ÜYT1‘èßyˆã4û(¬¾ÃÂJÑEuþ_9ØÌ8÷)¹¦Ø“œ± ¾-ä«‚<ê ‘Àº~^Òþ@k/³µ+ÿ/êŸgt¯åÕt–¨àƈ¡²4é­K£¸ìZ¤ Ô8Q{ÕBªÛÊà9"L·üŽÝ6]<Õ§%Ä”óZo¨y *Öœ•Caê‰ÃmÄ~b±\Ù<îHD`\KšMæÛÌŸ›Á•1ý`ÝT“lITWÑM¾‘|x ¶Héä„kÕt!Lz¨‘mà+ðQz=Í–.yšù´TôöAÌÑQªÛ-•.7à_uy@õ÷UDQå¢&(‹lwUÞ×nÊM ó‘LTA, ÖKnb’ûEKK¨ø[‡ó2¸]¦ÑÄÒíß–ií쫟…Êê–ãAÌEl(„&‹ˆõ^Ûåð|Qzr°l¹—Á:T:­¸ä¨‰º~þ¤]¯~;¿-Qß qT²ÿæðÚè»/øpè‹bH®ˆHpº2Û’{?wîÞËà Ûh"ónKm²¹Ù|TJê?¼Wâã;)™ffÒ& ØpnÙâ­ôЍ¡’­ÓoH \.j]D¶å¢Jƒà‰íÝRén++·æ6)bmæ…I6²ÿÍÙrº*(ª.'˜d㑯æŒqè ô„·Ç«¯ºí†”â>Z;rg7y€êrœº™7‰%‘W+/¥dNœ–ÖðqÓÆ)ˆ´‹¸© ¨ßÓæ(¢"nD–Þü89 8 ÝÝ5¹ØoÕu.½ÑGdKß{—Û`¦UÛtTØŒA²•ÅËoeÑmn3` –‘Q·3ßìEÁ@[Ýoeÿß‚k'‰°¹“ÀC’¦J¢¨„B·RÉr°î›"¢ Æu¬yË~yYqø][ß=¬‹÷x6ÒB6ÚH9Ÿþb¥êÇu𿳅´t]w&”,ô&ëkc²ªþ½¼ ˜óRÆè vmAlA{§Š'Æ¥dßeDEaŽ—Zéôˆn*£ìOKjÙüMœÝ73iÁø y"©âŠ·°ëâ‹ !£€SR¹">eŠªl¹^þ7±mExQåä.x‘æçœØœK*ª6 Ž!Šø¦Â²~KÂѬ912B}%²%÷ ñXb±\–òIF&*>Ìv "5 åGí˜5¶¤5§‰gé.59Vg´ 2oÅv_v[Æ‚SXEkÏDƒù{ÿNÜZÏö5mŽãÔêT9Ñá f ,§ùJcN']u†šj©ŠÓ_qçE–ؔồhB½ÞK"ÓÐ¥¿s6œ`œd‘Å Šˆ:$;)•ˆIQ/Ä1Ô˜”¢è†ê8ãÿ•|Ev[mMÉþô+`Çb«€B ˆ†ãþ?ãÃ,“bÐe»·ÇB·ÀSÙS;má‚òd+’zR×&ül»Ý6ôT—ãTT@¶/ ¥—Õ6#ÿ$+‡-×ߌ$6Ëvd’ù]w±n#Ýño¿R_¼‹Ëlm‚-¯oHÓlo·ùü~%qpÈPÄ@®íuµ“=·ýÈ–ðÛ¡OÍŸ-åWL•ÐÝ®„_ÙVÉà^.”fÛ"Ò¢‰*¦ ¢7ô|nJ>Û~þA«6Ødd¢¨˜**[Ñ·ÿ^Ÿ€uV˜ÂÏmËC¶§J¥ŠëÔ‰ˆ—ÑÕ°AuVËË# vERé]÷°ÜWb㚤ٸˆl>Š-ÖÖÌŽø&ööx"ß…ÇÏ%–HY´ksÊ÷ôyh¥t'³ŠUS×KPÕØç¸üâ‘"`¶7™„ÌÉŸ¥K ³FXyámyh-¶ÓL6Ócù;Kù¬¾ÎÔx¯ü¿ª}Ò¿’DÙÒcÇ—$J—)æãÆ‘Suùº@Ó,´¦ã®€ )¢';§5>©¤V›|’ÓõH5ÏVü¥5¢n¤ì^Þv!œho+™'¼ “À Ëd$dï1¥U[‘•72êLmì¾Ã{qàJÎê¼Ï6æ[ÜÀˆ‹ìñ\‘wêâêdØ‹yòòɲpúA,ˆ Þ bÇÆÈˆœMŠcËÁ_ð\yŠ#|…ͼWñ%á§ ±i°%—u$U-r¶ý*7êÿ%Ì\&œU± Ón¤èL‘P |•U<} é]ÆTC°R/Q]P”SÆè‚¨™b;!6ÚœëoUå¨ãk%’×,¼|xET‘C+r 6C%¶ËþC}¼lœ+‰ÒHb˜à»ù«äCoLöM—öSªÉup…Â-Ú²oº8¢·²Ùoà¶N…Éz•¤‡­í°rûÙç,‹µ÷½Ô•z|Œ„ºÝµ5Rg nÛ`H"¹z[`¾$™cº¾ÝÚå5Ñž>ﺗÃý”NQyÏæú¯3#,2V×t·R¢\-Â6Ð+N¢“ÉrÅ¢²ñK•ÆÁà_åÁ2ÞXÝ·ü\4sÍ¢zJMÛÆé|Óoލ*!©$ΑKŸM®ƒA`ÐûÕUÄ%–D‚uQ¯&E„ä† EY'_z?}’ ÆgòP>_ÒþÎê¯ÉÚðOówö"T¦U)ô­CHÿæáÏ™!žø’û©UiìDa‰k1é-CŠ­‘GAŒëM“"GrB¸ÊG5D]‰Å"%h±=Å UûŠÝ,‹ŽÜ“¹:˪£d"常^ÖÍUwê¾ê¾Åá×.Q¢"•ÕU‰\ÈKdðÞß_c!paÑå•ÑyI`•\רÒý~>;p‰q&¤/0ý"T"hÑÓÑ+_.¯m¼ã6‚è¸H™.8’õ ì…ðö·³ÛŤ'x^R*8śߺzY ekl‰n–ÛY<8%ÈÓ—âçU¼oíTø;ïÀ £‘šrÊÖiTírTDLMwKÚÖö')“Ž4d®,|IPÝDÐmèÿŸ…³ÍAÀWPlJ¸õ–ÖU±x%®ŸäžrγK÷«"¯\ é€ô¢&×Uñ^¨ãc'ÑÔm•lHb¦›â ¾%dOŠËaâ¤Ï*èF"…—M°O§Pª­¶Ûüœ°¼†ˆœÇy¹e™ˆ­ˆGÁ, ²z uã—‰•VÜW-‰îˆß*Èvñ½­uñÛ‡QÂ!ó-¢z"ŸÀµÿu÷ô¸@A2æ1Ì®ˆ¨KËTKû.}VLÕ~ü™0†WýSV§¶Ù„EÆ£S¥H‹h$¨ÒpX3Þb`=»MaÖEè’[q´BíN¦UoSÕˆÓ’dÉv— ¸”Ìi΀L_)ÛdÞe¨4¹‹¤ë þNÒþ@k/³µ+ÿ/êŸgt¯ú%uŠÔ™ÕmÔiPâÈn47¥?§ä”™ÐÖÆôY6ã!ÜX5PK†z‡Jòå鈇>ªCšä¦k1)òÈÞ¨£Æˆä¸C5¤nlV 35žÄxó$wAzIG9ÖKº6K©h¸’§´”œ%[¯´o³Þ›À™»¦V²¢¡‡²ÞÊè©þh¼b*ÛXz>'tBµÕ6K'‚ÿF2 V‰ÄÙ US"K¢¢¢íuéÆÛ­¸DEq;6‚›Y=ERÚ¥_oÛ¦§[CôC+®[Ž7öûVê„«rºðÊ©rÝÐü:ŠëeTEDº&Éáºßh)#n]Õs„‹eKn‚·ñK'¢‰û¹qËÇ/.¿D·µS%¶é²®;_€^hþ¨/ ÛÙouTSO‹ÆûÙ-ì"ERNb)ÖÄ;s•WᢠeÒ–DÛÇn.bü,‡¬Žÿ9h8’ï²xðL!ØI4øHâ¯,… o¶^ÕêN9oŸ3’aÊmÒRNŒ‰0ñLÑ.–ºu_á5›"vD-ú‹=ÑqL| :¬žÕn(–J‚ñ:„¶ÅÁñ;§R¯;ÙuBÉv²] Á.Ju– ¥g®¡{ØÔ¶·øo~%<è¢ãšúº³\mÐCqËÙññßë´¯.S{¤ÆÛ¥”éTð~BÇu ,§áynGfG-ÇY‰6+ï3u ie­iÝ]>4©êÓUJ žE>žo³‰B˜Ë»ºJHÀ ÏŒw¦#GQ9’9-F”Ü „)®A|âÍ’˜’pä¶n4äyBÉšÇ}·Zu³iÔÛpP€‘(/éguWäíGø'ù»û%j¤u¢-D”wX“ªS å§–¦uHîÄz\ÇHR#p‰&¶¥%é.º€Ó1».^p¹—Ë!"TBSMº¬¨Kµ·['‘µÀƒFèh{\PWÇÙ{|Kžèó(ŠhŠÚ(6Ó–±¯ w±ŽÛ""x«—SLÅáTrä*H›""¥²µî¾ÔÞë°Ý§T‘ W:ÁE.*„·D]öþæÅŽÎ¸DB¢Öy‚'R&mª*•ÓēҷƒÄÓ­›E:¾&„VåŠxô ¯·u_ø÷xËéŽM»bô“¥vOKå²¢|pbòѧNÜâÏ 3Ûlm·NûªÛ€F³rA.n.âª+l®H€˜c°ï¾ÖºðCËQ€Åµ+'JÚæ©|óCDðº]}¨¼ç9Kòv—òY}¨ñ7GvzäûBªvƒ6¢Å.sM ½§ÇLRûÛð%Ô]‰FïͽNSXò¤›½Å™†ÜR>K‚“u#O7[¦3äÈõ<•†²†ÅK›ƒüú½B,¸AÌžäwm§ÉÑL!4@L9ÌW:[Ø®x·d4DÇ$2¾Ê»]:‘8eå/MQ…Tñ@;ø¯Q‡Ný*»m·æX¶€‡š­º2ÅEIÓ"]…-½½+ñ I.Ò …“J#Š‘)%ïº`ÚŽ>8Ùv]•bºjú쨮â}Kb?ŽÊ¨¿ÖáyNzJ„—LL±#MùŠ»l¶Ú×]øH™: §Ërøò½”Aé/FÈ^·´UMÎX¢_øš[Ù.HªŠ]^¯ÇãÃŒÜ<é©!ïj*~Â/M½%ßãUm´ÀØ!Rp}ñ]–è^†åíD[_„o%é"ªõø©8ÿÌVÛƒ $ ı e±*-ýžÍ¶ðµ÷ß„Tú³ÀÁvTOÜWK*ô§Ä¨»ãÁ X’?¦«“fon§uKn…|MÝKk¥ømÖÛE5ÈÉDÖÊ8ä}y[u_AÍÙ UOŸ‡-MKq ž"¨ªà_u[ŽþGjè˜ÝEEÈWâC;e|’ÊjŠž%ÒÛkÉÈvÇÈGÿ˜Iñc²(o™'Pª/ *Žr¼ç{5¿Qa²Š-Ï~ƒtU¿ y8MlQ­Šz¨9Ý.»"(­·ñ%R^e«“VUå äð´{ãˆ]1ßaöå}Ò¿ÜéPª®Ö$Q^™Þ¤Ih-4êÆô8bËY7&RÔ”˜âÈf/$oZš V) ™"¦uÞ€îéòRaK~µ£uĪŠ=%—†iLnäÚE¸¡°ùÎæ"רÿÿ7`“QSæJzŠÄé´¹·Î5Z3ªÂìÂp[|\ï‰(ÏŖî6Á÷su–Tl®‘ ' ÐmslÛBD@MAOohîCЦàÙ-±oË#"$Q4²´k’¥“+üMÅÈäØ˜/%·5Í–Éák©&]>Þè²ïK7˼*9‚Úøu)"à_«_ñE}á°*¸ d­¡ ‘PØlà«®_ „G«{ãû_â‰{òT›LZQ5¹ó̃¨r¿V(¥ýäÀ®…Æ¥¡ÈH‹Nya>Ÿ(ŠhUuÚŠBÊ{îµOŒGR– &T„’NI–ç1Yü½Šÿ§?î-gòê€ÒNZh³¼’MÞP²Eˈ»a9àCf ª¢-L6\"TZf§*¿|‰å7J¢*¨Ëƒ*¦ä§V,·™Ì·•(Ô•;ËÌ2rÛ}¤VÉ‘RCº¡ˆY±‰%ѽ+)ߨŸ‚Ó‚¸Í¶mQD>ŽŸjߨ›ßÆüJ»/ü¾œòø=8ú]®·Îꪊ¼s<$äžd, Š™î…ˆ¢­ÓÀÿføñtŽ„*¦Œ®"Óˆ¥¸â…b>]¬8¦IŽÃmøCF•ÓNkf6¢–¿Iå‰î¨9b¾k½…ƒP‘Ñû<ÎcFxÜŠÈ£íø+ZÞp/-›7æ²Îɉ®;mÓqD-ì)·çäâ¦_ÊHªâ7ãÒ—T¼sMÕÃm\ÅUKõŠ(½B |-â)¹&è‹ûM1)¦“•o’"§B¢¦){ÙJëþ¤œ–6K¸œËª¥É8XÝg Ã&2Ç §Šn–„¾Ý‘7TNn'°E$,‘J›ŽÉÌvø¬»¥·–t=_A¾ÄHíȪM¯Í¡³'¼T¢2 8äžv`!M‘ÆŠ1â²0 ÒßZŒj½N„êÕá#I¨®Flü£qÖ4ë÷–—\k”èòÜ0±/¥ü€Ö_gj2Ù:n;ÉlU9¦f€›©šuGAŒÑ´W|9¤¦ ™ÙQyŽ˜ƒ˜ø­ÓÚœt²áïfE}!깸ŒZÞm³åûöÛÎc×ï.›Ë=î…q‹átxã½±Tàq}DŒ…‡D²º6¶÷öÙ-tD騝d±\òl‹¦9ˆ'î[%”n¤¿÷+'Eu0WÈÓ6+t$@$EN»øû||xUlÕ§y;à Š®*‰Š.J6ô¯¶éàXª<—lãU6ÐQqAAUë±c·†ë}ì¼sÈù6)ÒÒrÇeQ_Md’LÑÆcÔ¤º.˘ :,· ¹Û¹‘#1ÐܪÈrAŒÿ:õ?;”7FÔÔטJדÊàmbæ&„â¼b¢Ð=êîª~z“k¥ÞiÍ,i]ólDw%À|M¡”²ÖC¥ÝÁb¹ ñtP5†¤RûƤ—Íz—ôD\;º (e’¿wù¨ ÝÑ ½e¨‡¸‹‘)n[ ³»‹ nnXÓlDz1%ÅÁ ëKvÍÓÑé e$™º¹ëMF½J¨¡–ÙX‚ÅräžD¤‚·¶()Šìišk:þ)àRUätn \þO €"·ÊER˜œÛºÓR7ŽÜZCEâYäEá,‘Q£¢Ê½Ym׬u:´‹“cɤ!¡\•Tc–Øc‹ae[–h€~wjŒ@VìÝ-$Ü5U{ŽJÚ4x›HBὓÃ!±TdPZÖ¡¶¹bÚ¶­Q‰U;õ$í|‡àßbº–i€'熩ÀQÛ£–耆¨¡¤²ÙÌD¹yQ+w4Vµ†©”^&F^”5ÛѲZè¢Kš¡b+mWªyEĆŽN©(âòóRœ"œÄØlÒcÓ‘ðN~wjuéQåR3å Ù°Í`¨Ü |¹VQ¸àйðÄÔ: $£ÎÙèå1Vk €GH囌‘ùCÉty²{Ç?8ýÒgW8ÜV[,wê`79Ö¬¢écIæ0ÔŽ2Ó–På£fÑ „óG¦œÑW»AÓkPï“\™—“tÞµ¼¼Ñ9vï²3µÔòì‰Çj?Á?ÍÞøìWý9ÿqk>øí/ä²û;Qâ¿òþ©öwJûâòþ—öwU~NÔ‚›½ñدúsþâÖ}ñÚ_È eöv£ÅåýSìî•÷Ååý/ìîªü¨ÿÿ7{ã±_ôçýŬûã´¿ËìíGŠÿËú§ÙÝ+ïŠËú_ÙÝUù;Qþ þn÷Çb¿éÏû‹Y÷Çi 5—ÙÚÿ—õO³ºWß—ô¿³º«òv£üüÝïŽÅÓŸ÷³ïŽÒþ@k/³µ+ÿ/êŸgt¯¾(/éguWäÕü4Ñ_žTò'–¿ìæ¢ÔNî^WòwÿÀL‰Ý;ß{Ÿÿ{æsû·˜Ç’ö^¥~®{EûçR¿W=¢ýóÇ©_«žÑ~ùãÔ¯ÕÏh¿|ñêWêç´_¾xõ+õsÚ/ßaT4Ü;¬µ…Z‡ºûzJŠÅ@(­ÏedBJƒ²§Ó›ï3# Êb$E•%Æz¥µ¸¦jJå"•WŒ’b:m›.c‘6ãn²â!¶óŒ¼ èºÙ"*¦ë@ùKû;ª½åÙúÐiÕ)‹^íOÑêk-&JH¦>þ2hMùNl^MZ¸'…!ÐÁ(’»ÕFæIør܉*žä¨±äœ ÈÂM„o´.”I‰ùQ’Te.L„&Cè)÷›Å§ÄÐÑ[:Õj½M£9T‘¾ÅÓTÉ\ã¨j)0ùŒ¤ €Ë4Á8€r¤Gæ!¶† §4. ÕkÊ~®¡W*a!Ê%.‹YÓÐ…ƒçI (3ê=Sšqcñ‘þøÚ‚HTdÑæê!CÖ…¤]©¥%½z”üÐ'Êw“ô—ß¼¤°èûÉ]ÛÑÌ¿åíGø'ù»ÞŸ­R˜µîÐtý¦°bÒd¤Šcïã&„ß”æÅäÕ«‚xR ‰+½TiÞdŸ‡-È’©îJ‹IÀœŒ$ØFûBéD˜‘_•%FRäÈHòd0ŽrŸy¼\*|M ³­V«ÔÚ3•I»ì]5L•Î:†¢“˜ÊJ ±ƒLˆ*D~bh`ºsBê XÖ¼§êêr¦¢Rèµ8ýX>t¢ƒ1£Õ9§1?ï¨$…FMŒí¶Î›©ÖuN–ÓѫҧÈb”ÝV³'Íuª«nÓ•¦iÍ'NPrÚo7³h Ö¡ŸÛÍ7´}?F¤L~§+FFbŒa,ê²dé–»è¤x‘eˆ²ï™x7LÚnÚ~;Ús[Ñ)Ú²CQ4΢®P[‡A­I’ÉH‚Ôi O“1’©0 í?¿Áˆ2[ëÇÉ@ùKû;ª¸ìÓäû;NãµàŸæïxöÓ£Ó°¨×;KÔÊ‘.|½U£tÝN‹2^™ë^鸒eG˜Cù Ì‘!¶N,°‡1Z¥L‘@§3%J —Þß{g¬›L±)§\p)JCtÊ© Ój.7r§v–c×;%Zm:uCɽ³èÚ¥G¸Ä‘/¸S"Ä® šŒÞCnwX1ÉÖ…ùoá¥q´qÁS¹¦‚[Í( \ @tõüÖR)Î@?•Që­lT;ë”ôféN!ucÅk³ ì:µJÔõ(Õ dz}#NÆ  ¯%Ç6¤‰ª‡‘IÑÜ&êÂùòêà9&Íüê¼³h¬DÔ#¥ô¼&;Bì ê5oÏ)tª3P䪥rÞ¦3*ö¸‡WˆC& ‹ŽÍŽˆšlõà€êã§VЀ´…qÎW4"þŒ»¯#¾tF_9DJËú_ÙÝUï-Q¦Ò*µ¡Ó]«hMT‰D‚ýN¤4zL™nM‘Q92‰´0NSgÕ{ !¹_¦éæÊ V-2\*öÅÚî„©23´•’õ.‰)ƒBaèÌŸ4͵‘4BsÒ@Z…EÓµ_,×5cQ_•¥êzÛ¶IT КYõö×TA?¾6Ê$K 4Vå<ÌÅtÝ~[*Q©Úµ¦uq·<¯®{AÒ•¦åNž]KPT|Ì6 YFâSá·xä6ÌQ¾Úêˆ1ç÷ÆÒDƒItŠÜ§™˜®›¯ËeJ5;Cv´Î¢®6ç•õÏh:R´Ü©ÝÕ““Ë©j ™†Á«(ÜJ|6â@ï†ÙŠ'ŠñßÚì¾§©¢i}zpjTzý0U‰Hæ³ùç¢!Kqæk-‹ÑŸBŒüèÇ)Xä˜X˜Õ”^Ï«4º]Bë*-h5•0´¡ëéÈ-±HÒ¯D”‹8éqßmÇÞ¨ÊݘW‰ÉE¾f†§èZ7kšnuìë]/®š‘3BPôëQIÑ´õf¶.ËrCQ–èžGžão´™>Ë›EÅåý/ìîªã³O7ìí;ŽÔ‚›½ñ@ùKû;ª½óÚðOów¾(/éguWš|€Ñ¿giÜv£üüÝïŠËú_ÙÝUïžÔ‚›½ñ@ùKû;ª¸ìÓäû;NãµàŸæï|P>_ÒþÎê¯|ö£üüÝïŠËú_ÙÝUÇfŸ 4oÙÚw¨ÿÿ7{âòþ—öwU{çµàŸæï|P>_ÒþÎê®;4ù£~ÎÓ¸íGø'ù»ß—ô¿³º«ß=¨ÿÿ7{âòþ—öwUqÙ§È övÇj?Á?ÍÞø |¿¥ýÕ^ùíGø'ù»ß—ô¿³º«ŽÍ>@hß³´î;Qþ þn÷Ååý/ìîª÷Ïj?Á?ÍÞø |¿¥ýÕ\viòFý§qÚðOów¾(/éguWüWd>à2à ›Ï:á ¶ÓM ›Ž.¤D»"%ør¡¦êÑjðÙ’qv2ŸšÚ N6è6è*ƒ€¤.´`ëjm’ÿÂíGø'ù»ß—ô¿³º«ŽÍ>@hß³´î;Qþ þnÿ†ýN¯:%2ŸdM!¨±Yæ8 ·Ìyâuçe¡¾N¼à4Nб6¨óaÉm.#íÉ!¢ô\aöHÚu²ö û‡Ø¡j*ièÀŽIf“W§Ô]ŽJo·CÄÐ¢Š ¢’*&éÿòþ—öwUÅ“c!&ØïD•ÔɧãHl™}—á­§´US‰Tý3 Ȭ͖Seò_™!×qFÚ~A™òc²"Ó " Šfág!çÞwû0èk´¨µº‚"Â¥¿6;s¤!-á»ä„…Q I6èÇG§±ÚðOów½ªu™¼ÎçH§Í©Ëå1Þí3’Ÿå·tÍÎSE€]2+%ø…©(½ãÉóŠP42ÛdC˜ü'QæEÇQµW#‘‚f¹2M¹¶vâòþ—öwUqÙ§È övÇj?Á?ÍÜIÑ,ÖXsSÃgŸ"–ŒÊÈÜ›w¥a ›ÃÐxã7$äk‘´(%oìýCVƒG†ì†¢7"{àÃg!ëàЩzEˆ›…m›e·qE¦ÌÆ-SSUBl‘‰á6z¾ù°ì”@f›cü¾K&Jÿ/=N!ºÐ›¥¨+°"Ë{•(ô¤|ªÎŽ `ÚÄ‚ ¯¸’lÙaÌ’6Þ^byÓ é;ˆ­¼ùJzsÇZyæEÆ ò)ÍBÌHOjq˜›GDe…:ð{ôJÒ£î#¥’5pÊ2rº.a+¬ íÄ…„¤kN˜UM»2ªpÖ4ä¡tH1˜†‘ 6ë2¡6I1)‡!¶”[ÙÈZž¡?I£D AXtêTykPi±nUTª~P´†‰ Ntñ§ƒò_ru®SM¹^ 1M“%úCÔ‡™ªF’ôB¤E–}1ç@q!1ËsŸdBqµSéŒr¨Ú=èù¶r#ljY*Cb¯5÷+²›Žñµqi÷bÉm£!p˜xE[(©3HAEæ²ÕG‘>\šƒ X+²Øx˜ŽÃˆ ª¨ÄX™’Ø{Â[yPäêci"š·ÞÒ[‘C Fg"S䜒 ÝV‚;¨BQ]|.$· Ê¥xãKÈTØ­Œim¦}îT)rŸa—š‰‡/­YïN›K]Ч)º}EƒTTT>xgM¹Œ –˜yÖÞVŠäÁŠ: „$(¢¶§èÙ0oRÕ!»PLäJ"~##(Üs¼‹ ²@…(Ñ—dÆ 8`Ù _C¡"Ä«µUÓ­²$É„­AŒ› Häjð9)”aÙLÇjp*½žc–ã¿–òþ—öwUf]Fsá ¯Í™%Õ³QâÅhŸû‹ìšp×öEx¾œ©ÇªÓ‰çcóãæ*Ûìªs}—¹ÞD q}¦Ì˜u™ŠÃÍ8|Tõ=\d X0®·±rK®K–Ĭ²&ãMæô©L5“޶Øe›† *¼Rõ 4d´Q—%´ŒÉ%QÅæÄÜ!!T»n8Ñúm8ãd&¿Ù¡³¡´Ý¯§œHåZ—Q–ËYp¥¸Ì–‘«A0a¸$ܦÝsÝàî²?%³w!Í:r–íM‰ÁÉîM#LU¤«¡¾¦¬ÒT6›6òq°RÉÊFµŸMçj #\˜2»ÃâÕ^(ÆüAs»>ì3“ ã:mæê)«yªõ9MŠüÙ²\4f4vÕÇO–и󥈮 2Û:vm¦ÍÂ]Dõ6=-þË©±ª~¥eC¨u¨Ô)2`În|ÖljuEÂU¢Æmj1$·…ÉAUÓõ8•jy¸ã)&œÀGš[8ˉ±´è\UZt@ñ @hß³´î;J~¹Y¥QYöˆêµB%9§ä(k†\˜ó"ëܰ3å©àV°ªñ¬&Ó)1cêí(’‚·¨¦Cb36ˆNÓ*r¢Ë)q¢‡: ã8®+hûñ ëT!µ¨Y¦÷n]qZ¤Á©‚˜´¯SeIuà îï#—”dâ6ãã\Õq©å]*3L8TøÏòÔùÒâÆpÝ|•ÈbR{ô·“åDeÇz’™¨k'Ójº­+´Êm?NÉT™Új÷7êåþàÌdäE”ËR¿I´ˆäËrÚ»ük(-ê rõl:à %GRËï’£HzŸTh,T^žË•kä¹HIN RDÈÝë¹JSFÕ«E‹PQŠóÔêdyíIîó#v$‰ÎîèÌUy$s‰†9jÛm*;GÓõj¼¹tM4’¤ÂSi_ŽëßüÙâSl”hM¾á·&¢6Ó]ì¦ã½äŽG~<ÅÚ?2—@ĪÎ~kS{³Ú¥TžL$B‹"N”|µŠÁÌy¢"1vK@ÒºZöDÖj4x´ÊMG §#=Pu:w"M2AˆD‘"SLHM¼ú{*ÃÍJÙ¾U8…`À_œÕBn¯z•D—åv˜mZ§«a:D!!¤µS F›(ÝmÇ%/(Üv;%NªR4œÆ'÷@¥×+ÔÆ%IhšeÆ%Ççdt7cÉ·X$-µ*¢JÖ:Z]=žù|ï²¥4cФ–£RfI­ÇtnŒ­>,æ'ú1 EíÅ6{:ŽÈ’¤5ˆ4pGª[@wÏL¢yš>ÇüØ`j$ÊGeÞkw é]ý ±§[j|öœ„ð>Ó³*o³\jIÁbJL±Ë•"<ÆdäÜch´ô½ 'Mׯ³2¨Ûõ@˜˜‘RŒמˆ Óe¶.=!*Ms)b°ÚDA91—ã»Úg´j<)Z·JÃŒöˆïózz[lQ‚B;QI¤ÛO+”gbʧÀu;ñ\ÜØÞíR=C_ÇMS"šifjÕXÑ_iä…WvsÔžtˆaDŽÒgŠ3Í35à@²<ý/QB›«' Ô~6©[y©MÁ’ÓÇ!‰sŸƒP~_u–Ûešdâµ5ÖÖ˜ƒ²Óïè}i]¥i÷¨4Ï)3K“S¥?«&£;¿¡²+Nr|ˆPÎJÔ‚Šê·Ëaô»…Æ€i«(uN¨®ª•0©sksˆ­Lq"z‹Q'Gé—R€r%¹Î©ÇaÉ#“L:Å»¤FæÌÍ+5oÉÌ¡¬#MΨÒêKP’ÌÚtÇ#‹r`#lÇWšJ“\R%K¦éM3§û„ºL·j• Cõ@tüNá\–‰æôÊ”¸1¥0ÃìKp#›¨ô¦;OIz\ýš³>S¦2ûĪœjqVyÂä9©éIœAI¸B‘!ÿ8ó­8ó}ÔÈ0jú=ié2ãF‘W CßRJqA(…D‡Ín2à²Td‰#y8 ªˆÒÒ©u‰c_¡ë×'ÐMèÕ)‡O©»&¡s}Ø!yM£qÈn;=Œ ã4²ZãNöw¢t|]DÞ­v¦uCÕ7œ«ÔÒ`·OVŒfsê‚©5Eð8á–ì6˜s’§³?OR— Ÿ*4÷¡¿Q0~¡:©6™GWßžë¹j€Q¯Œbn:6ÛI·©©Cv„å¢4÷ïëQeñv0¾µ5!Sìê\ÅØèÒ› És˜¨øÛµàŸæïÉýCXGfd‰ÉòyòßËà‚u<âÙ¦­ãß‚™B«ÒëQx£œªLøµÁ A·I‚~¯6/ o4á4¥š­š¦&*±ê{HÔu”é , hÊ3ˆË‘e¾µÛ… |ƒŽÛ‘ÚŽB-69É ¤4¸‹”úö«5¡T¤Ó©¥é#u§u$ª¨¶¬­-å…9Æâº’s}ȱ”Ú†ù úwn5.ª¡ëWµ…7YNjjð߇&¶žä¤©w™Ò¤Hªº3XOH óFâ×.­O¥ÔJ‘QN™PWN&CÓ3ƉN9’:¸ „(¨·N(š§SöŸS¯½Mf[2(® Jlg[‘ ÃlùZ¡Væ>ÛNÍIˆ²) ‡%¼1ið£(ôx"ÆÖ.iºõJ¸ñ˜;Š»™bœGÙn”Û¥¿Þæ¤áч7KÌä­êÆaR´ôš’J•S©É”í…•>÷-¨C.CÀŒãؼäcl2áŒqä’3¡£:¢3Þ_Qa 1-Œò<Óʬ8ÀH¤ƒ8˵˜mà^{dQ‘^áÝ3BÓ'PÓT‰õ¢ç¸÷vNs•?P6°•=-çZ):åa·# C‚Ë’êxåp’‘fC¨2ÜyÑÈØæÓOÈD Écº.’¶ók‹8Âùv®ÁNGc·äJ{Ñ¥×1’&àH*gxmö¢#M8éJyfÈ€o8Ënj ºE™³%Ðs'O =-ç#¼õ9[.sâÜZ‘°ãL¼÷-À&Üç0ÞZ„ÍyB*J5eè‘r“R¢;& D… _(57TAù0ܶMyäòÑøÏºüªtz„êE£™l;2?š0r¢ƒŠôqy[q'@ÎYá|JÚr¡N©0ßgLÑ¥·^§)Ç_©+U1bÌœgd¸âÉvð>Ôˆíƒ$´XäA?HQ4þ•j¥£j( ]¬(:I²­OqÉÂbÅ5Úduf\H¯´eXRròëX7Æ8Æg>[ŽàD®äY¶ Û+g±å·Ë5¿,]Íמ!å#u:K5yIOÔŠÛU¨¢ò¹å6Ø.öÑKqDŸ'¹àŠá‚ЏÙ™²ã€é:À‹IɲA%EzÇŠŠôä(Š*‡uøCÕŠ4W hžtˆ÷ÀsM‰3êÝnHJ‹Ã™!(²ï˜å‚(~Ù*­²BöÝ7Úû¡òPXU{#/ IOãµ”Ó%ôl½=CÕÇ=²B+ JN‚ïdÿÔ¾"¾?»‚AuYtUqE+óoŠ'/+§]¶^›ÖLx…²'9¼·9†ª½({Úåáì·Á^23OÖ˜DÕÛr<|C"ö[âCN ZmÅĽ"ö€î ®Ež^Âö ÝQvKæž-ÝÄP󈘈øªìH;õ-쪾<+Ê;ã˜r’øô" »’%“öD±öîœ\Ÿ¸¹wqÃÑ*[k ¢÷üwNc.#`8:à"‰X–Ù ­‰vM±ºÆ›­ÕY&ÌÎù)ùËâHVTE5ð°­Ñ/è¯ •ó†ªÖÿ¬º* š.åºeþ6à[U7w» mˆy°ëN°DµÉ1·]ESÅQÇQÆ@…1mS¤qDmÑU Šû–ÝKkqÎÇÒ9,ªš¶j„Kš!u ¡•|=¿„oSÖæ vŒœçfÊ6©ÁŸ ¤¬)#äÀn;!œˆx+mGÁ³v;m¹@Ah»­Lj¥RKªÌùsi É¥­=æ]s™ˆ5GåpZ7wÍ&::û”æÇQ­—ª¨Sê’&H"‰">‰¨YqæM®í!j/TêÏ»„Ø’ ˆd"ÝAÇ_:ˆå´üht¨oD§Sן§wis¥Ô¥ŒêjšF’ãò¦Ê+1Xt’,2é@VkqôõXiÔIÕ2r…¨Tv¦ÑèüÖ,VN+6’Þ†`Üå|ê& ÷ÚUæquY*܆dÕXfk­:² œ€Ñ·*Cç1Ø ,xÅ?»¿Ëƒq¸ÊqÜ“è¹2ë‘ÉÖhÚx”kvÞmÒià%P&É@óTáÈ:…šœºL¨ÏµÊd• º‘œr Ã0^}ˆu7¸ÇøòÜ`eÅyÁ 8ŒÉe°hYg—ë ¶¯:9ç<âº9¢(³æÐPh:3Wp†¤“ùQ¢Ôd`,FÝïÃBSPÎCF)¿£ 6͛˞¬'?’\ n®ª4Û^•uBããllß쥷OK~9±²ÄÑÃË”â±!³Œðsš,‘·™#iÖ½`ˆ  ”xb›%ü©ðeÕgDŽ(ÈrfTš§Ežùº ÛQérÜ7E´vyìÅA1CC\S%øH'|‘1DTéDÙ K„WDW"¹<Šn"øçmÖËßkî¼4D7L€LPÍ^²­”L°D_KØ»ãÂd[36ÝØPòDéK)Ùm¸øþÏ ¿2D‡ûœHð©àëˆCŸ+1Ûa ¾-6,¶ØØæIÍ5'LÏ傎ÿÉæ%úïáþEETÛ‚b¹¤B¿ å4ì9A¨*T‡@ïTº› ìÉ‚÷,Ý‚”ª£º÷ýbëdÃqu]z™;Π¤W©œ³”ñù5kr†S3ÝlÊ|ªkìÇ6Öc¯!·\q „ Ö¡24©/ÊŽÌš¦1ù§‹Säs_†Ãï¸OÈîDӲϖëÝ”Òí¹>3Q©úŽŸ&˜gÕÍ;JztØi.læ]˜b;½Þ;•'Â+‡È†Ó‰™Çg Ω[£`PiЫtÉ•çg§PߦF)qà„†æ×åTfœøTµ ëÏO(+m‹¼yFÀ~ >KNmíCL£J–ò\yQãÄzUVš7æ9%Ñ)hð±Ý9<Ù iMeN—^§ö…¨ûíѪc4ës©ìÂ(°äœ»ÍRQJæÔÍ9 ¯%ÚqÔÔ_æö™Þô}%)¶‰lGêFå<ŸÜ`æEد‡ÇÇæýB‡[úR£¹$W»èÂXœé!ÞbÜjLÄ äHe¦%fDÑSµV– z¤'k]:Ä™Ñõá‰ß&›!Vš/½I‰PƒÜEänNuÆ{“êšuÖÖ£§4|‡e7U¡A®Ô*r™Rb\&jß!¶Á¨¹Ñ–SbÕ3žÛޝ.+zÒ…¤«šWKCКž¡K}dSÝ9>TŸNˆâ¤ÈU¡œQZ£¾ãËÈÀr']WŒ+ÇVW]Ôså<ÐLìú+”ú¤¥©K‚°‰ÃmÉÞŒÄhM¥@#Ì™¹: wñz›ŽÓªÃ^ÒS%Í ÆÔô-= °çz(t¸Ú¬h’’cHìwš„V–x›VŠ‚÷{Ž$,‰ÆšZƒî>¬°jywzÆ!ñùŽw1EHýýé„çRHYn+aÅ%£ÄÔÑ?9ë>MeÌ&„ä3K1]†ŽJˆ9ÔÕú{‘ÚzB³N!À^ ¬eT¥Rõ"H¦i0ˆJÝZdGऺ¬p§S›‘QäM•,[H˜}a1%nUVÒ!ÇÕtêÝU˜äD©ƒ¹El— mFŸÌ‘ú ¬nPâc žp *°î¦Ôtùã¨4mJ{¡LzKé\ÓmÁç™[R£¢i§RѺ±øtôòÔç™H4:¸ JµV*E;¿MYŒ¨E-ˆ&‰Y%iÀ‹N¦ÜùµêLµ-Z%Dh¹¨jœ‰YTkgR˜.“ò&¸Ün÷\ŒòŒ·œ}e0ãR9Z×)[U;Þ)ô§žåH–QÔÝ—V“÷HäT‘¥n3ŽAd#2¤ò˜”v`ÓÛӂΧ©L^ rLW!D§½L©ÀôPT*“OJZt¶¦Œ<â¦Jè;æõž¥Öš’kz]n* ”¤–lO«KvM@©Óä, &¤3ÀåÉuÁC2Y ¼iæFCñëšTh]t£~oê‘ïY5 •+¯š|€Ñ¿giÜITÇFÔЕ<Äú}£¿ÿ^2m¦œÀ…T²UN^KâH©tTø‹2DLI÷Œ ; 6Ä2EË\‘}‰ŠZÜ2Ëx²C|•.‰ˆÛRT·RäCoGâRµ¸|hÃm«%ù—æ ¸Dj·BEæ!ÜUrLPÅ«”+,FÂ-’]kd –>>»‡ …Å‚2W.£ˆ!/ˆo¸&ù_ÿFÜHÀÚ,€rsÄF¹z6ñöÝ=—áTù#‚‹f@˜–\ÁN›î¥áuêK*¢Yn¼-ˆ8*G¿Z zžŸ·ÅS¥,—\°Þ° ‚£wŸ0±ö%¾4ðñM…1&ÕÇUÄ[à<´\„WÑULrÝ:–ÙqÎÈydjFª.Kà›·¶IáE Üso3E;f‚¸’Úꈛú*^ß9€Øš´­¦Wsqø%Ñ|†û-ÐwQ²pŠíûÀš)‚d¨·ÝUPlª¸Ø‘U<|x7 M^EÛû¡{·¹Ù eºø¯±S€Y{¸‰vö[tܨ‹©v[{7^ –Ä»­Óû® (xõz)tTL›º¦é²%ùoÛ ¨ÆËuÿÒ—lrºÿ÷pÐòÉ‚^R¨á²’`f®Øpß—é­Õ1ñ'ULK“ƒBÝÝR"R#$ QðÇâ? pâþ³’ÍžSÀ°.{mªâ(·K)ú}«t^ Ï(´`¨¤}b *Þø 4¢½½lœ5Ïdp¤1dhm¼ˆL"àŃ3Ã3,sp•\uIãpÉåS6rùhX¯5ÜU1;8¤#mÅ¡5U5XèᬔÚ>ë.À¹’¢«Y !2$º î$-ªàÓÁt6Õ2k1`Øý’ßÙÆ£"²äD¤i°«Sâ¿)ĉ:¥N¬R)1پ܃n“V«y8[F  ddGŒrD™ó„Kß˧à'Cù«)õß᪭ÕoÇfŸ 4oÙÚwdˆlÈ_]vzÈ‚¾>ð“ÿñ¢ïl´¸ˆ`Fªê úa‰]~%ø×Àg¡©-¯›FÌS1·¥’†íø ØW­>1áÀ}j.›˜[ãÉvN›íÿ☕¹‚ÙÈå9m€Š÷B;~©zpø)ºþ"N¡+kå‚스å²ø>Áº* –ëu3]TQW 6K¾Ê¼² Ôwé=¶ßkðÑ2‚Dd¦ap{—cÛ0$R\S«ÛíEÛ‡Ùn*¸.×™7q¡f*¤Š·!ýëŠød¸rÉ© Øík¸—L…=4]Ñ0ÿß‚W…Ó%B\·+¨šŠ ÙÖEêOjðNŠ“#‚-̉LH·å“«Ókô¢&7ø;ð€H¦é)áÑ‘ˆ·è—‡œ° *å’n›'ç–Äß*ÿn¢Ýw°áì"¿_ ¦ÂÔ,äœD²§·¤D”{\}§ æ9æJžjèà’`·%5EÅQ-ìÝÛìuW_%Zi3Û2ðö®¸åñbª)í5W[»[¢¦Ué%%½Úª6\¼wáœEÆóEG [5"ÃáÔH¶_Ü(Kà‹ÃXó+(d„ã‚f¸™Ør‘yªX Ö÷^3ƒÞμ‰ÍÔƒÛèô©-±ÞÝ6¿Æá³yÔaQ.¨WñO2Þ(Eµò\ooܼH3QG}[º!tÙ“Ojš §ˆ" ªnˆÒ Žz#¯G#ê ®!–}IpñA¿‡Áà”ÏñGÉGÐ5¶*ªˆ½[|H+ññ#½Ç6¹Š.FÆøf$Ùã…Óþb{.W½÷eÅÅÃ7S塽 ²”‡ޤܑÖDQF ]'¹ à:Š 2J¥ÔH«gzVÝK’¢­Õx09n¶KtßôéëÌ„  b‹Ô*¸¦ÖK2©vÓžãHŠG‰4ö7¸4²D\QwMÓ‡ãs ]i,,„CÒ«"cb²šî›ßââH>¶u>SGb1Kݱ ­ì©k`¸’|w[…ÛV17BÆ ½ ²*¸ŠŠH>= íá ;HlÓ7L|êŠî‚‡kªåuë[%ÓêÜÎeSœ ©çEÅ~¢³j] »ªä[XúTÊÂŽ]1>iÞãŠøõmt¿ØÙ0pË/b'(Ë'OÙoæ‰mø¤«hß2í«—$Q¶è»*ªÞâ›ì©·Ä¤ÖY|#6ìVì ‰Š*Ø ¥“|¯u?;ç2éL1èùy*¢¡&Ëâ¾)Á:†-yµç&Êë¨> ¦ªŠ'l¬«{)oáÀ0ÒÇSå9’’¢Xoðƒö²Æþ$«¿ˆ#m9!L²Wž$CU±dIҡѶþ;ª_¬„Å¢BP3#yH—;Ž-°fª†dª eÓuM•rVœÍ¸ç£ab¶èîH†ß3;’&+²¯ÂË‹6Ú·d12ØÅÕT±ä;¯°ÕÛ}¼b‡,—¤[mL°¹¯±LºU‹ˆ¢ª¹Èn×MÒÈ…¸’nˆ«²²ÓˆÚ´Ë˜´‚Š.ž[²=H™€¶–\UZæ¢Ûã|ùdì$ê[< ´AÁÜC¡~¯Ç³Nó˜¹4¬‰EwÜ•õ½íÔ¶ðê^Ãõ8Ÿ‚«bŸ²;¦9ª®ß½ü88Î6åìÛèŠÛf™6Aá×í!CÈz’öñy §YuW$7,D"¡—;dP+¯±Jƶ±^ÊNK5FÔÂϘܓ"M·Eb|i—Ñ6™µÌe\éäì£ñ—Ç"Æë{YnÙ— Ùnlˆ$ÕÄÂû³5Æ>Ÿˆ9c[ ’íâ)áº-•-«hf¾Šl%Ñ‚ˆ89°’&ßòá¡7³7—å4"™¢‡5 ê¹maÞÈ‹Â6+‰(¥ÞobmRý+ð‘vôPÑ:³ÝW‰$L’¡8ù)š2$BŠÐ­l„HKbóK’¥—ƒŒÅÑÖqÍå^ƒW.´ðÀ·¾ûz?”–c*_ž¹8gsfÂÚæ½÷ôS ßk¥¶e¸ÂÙ7Ëi1!&ï‘&^%’‘x|+¯Š÷ÁpÖ›å3u.¬‚è¶ØKÅG£~›n¯¼ëŽ«¨ã¬²>$·DÉ¡ôH²Fì*¦©tT$âSÿ¤7Ìó%E·ɇ‰§ ­ž{ ¾š`/ˆ=ep‘§1U& t8Û뿵1± ºoãÇfŸ 4oÙÚw†4… êÂÅ*XT ¹£7 %”Þî¯96L`DxcJ²ä¨œ¥ÎÛ^_'CM ŠF!ú}GÍœyµ@ï1ßä—$£‹!u·J-QåÈ ÙHó(¤ôeiy&ÓÍwò&²!'C!³¸.&÷A“&VŒ`Â"$r¬PFKÄyó;S1lTr±­ìÂ8Hh%4Ml[Uäµ™R (‘8³ñ&öô×]“™~ §ô%_¼&(ÓˆTÞX¯§es¾ø%ˆªŠzvE8é jÂqÁDüý)5Ó–ï”Pe—ôs56®b„Ï0‘™¬è*ÛY s6§“þp2¿tIÈê]Å@ ³DpÕ8q³Ð5µ‘~5œI†H;:“yJî;rs·ƒjðrÐu±VŠêFå1·RCPl¦£¤'š²*¶Žu\:àhjˆ6‚^gÊT!%p’ê¢Û•òhŠW° ‰Ñ ¡EXìö®·u²¿GÉQ="Z’5Ö™ŠëJF&HqÝJ)ÁÀS BR|Ù‚)¨='@ÕÉáe96å+d+låª+çàkv“™|T\³ä惪7ëmeQìŸæ‘¿)£„Øâ~u´óJ­‹Š$mæègõP#»C›A’Jkºè•Gy½ ÿ/™‘ô¦k Úè á“äF'ú§^w/19%çèæ6T4ÿ–x¯/AU¹¢dªÉ§éçQÐ!¨›)~—Z#`Šíä…tTtEÇU±LÖU°¹‘*yç*@Øô ¡"š(*u ’ñÊ-=yfâ ó(ï\·êÌ*F •AÔ"\l]I~@hZ‚dç.ç.Ž %ÓuÍj8òº‘y¹#^’efÉSÍèj™¼n(Ô°Ô!¬õÇèxÕ@»ç0±à9š {ª("ˆ’hê7}²ræƒRU,PwUXrÍ: ñ€ñ˜h:Âdø+äêCnAª¢3"[*­ôc¯,Tx×­3UϪèâ>œß=M+ªˆáúr¦#Ôà€l¦H*Š Âh:–Dê¾ shͲÛCË,IÔ‘ ?h‹†'uP^Z¢"· çµÊR˜òʨÑç`´i¢“T'!Anâª"E⊼<Áhš€ˆä€Ûsh/‰.Ÿj¬m n6P'3ëllcn9nh)93¦µzµXUlÀ«œnò¼ÕFâ+Šùu4¼£ d“AJb/1@*tEÆŠÀŸõ¢!8ˆH¦Â]à.‚o˜Š<(~bÔ÷ký*’ñ!*­šŽV±XqOb6V4²U^ÒúyúðQ†Ôy 0Q;ÿ{H3eÅ'Iîé#Í1å’×u?0jÙJ ¶K&˜B$™ˆ™;ßða›»t}õi•¸¸]KÀEMPGã’¼Šu +!v…ËàéU UPA îÞÍ¡r4%[ù¯¡I~•@ ˜ä©ì¶&FÙ#H§çrmBèh¼HqÝT,‰Ç#á.‘Я9×jïm :ñQTµïĈ˜sÍ…'9­”ê0"Úļ§Ê¦-:>o*šÝëãùR&PRm‰/`(Ô%åíž[±%²—'EÉåsy"ThmÉðG2XåRÏ—n”y.ôß.@èy¼¶Ùp-å:ºŠæb† P_"E`*¢`VDpÜŽZz“")“SèO†ê<³f¦à=¹Ž\•<3,A·HGAVáNkĮӕ§y¨EÒ‰R&‰l½bÒ™"#€&{¶c ª,I41BmÊf -EÎ š­5t°·ÍÄŸ$Á¢"U-9;±3ÎNûGi÷ÕäqÖEg§?–l¡;Ž|¬™SYäˆì]Yeži÷¹¶ÒÆ=\¦ÎrŽ*ì6$ð­Ç–8¡°±ŠäGäöQQÌÓ¡\˜ KÐW5&ÑAM 2a±ÐsM•ºžž1ÈÞT%5Jªòìj¶G°^RómËëâ<6ôKêkúQ—•4ð°¦Jd‚S¬±QpmG¥µlTšÌÈtT“Hî;j¥C yT‰®cyTÂŽXæòí†X¡"ðæZs²&bdmThOl™ ‹€ÕP¹xÙz 2Þä–1ãš×gµ€ÅlÏx¥zVEëEÌEß᥮›oÌį ªóKþóI[+çͰa8“âBËO l©Ã~bTyÒ'„››C0°i24©ª ùµº•P•1TU8ã ê+!!Ä™Fu¥yUI§ZªO%Å‚ð±* ®|rœÑrÛqé¼Ú¥ ¨ ´ÆÏ™IJ®.‚Š­‰¬¹Â)ÈG–Ü3XÕ:bUšU©MÉ‘&šè¹=æ&Ém–ÒÙ&hLA”ç4EXDm.â+!öiòFý§qÚðOów¾(/éguW¾{Qþ þn÷Ååý/ìîªã³O7ìí;ŽÔ‚›½ñ@ùKû;ª½óÚðOów¾(/éguWš|€Ñ¿giÜv£üüÝïŠËú_ÙÝUïžÔ‚›½ñ@ùKû;ª¸ìÓäû;NãµàŸæï|P>_ÒþÎê¯|ö£üüÝïŠËú_ÙÝUÇfŸ 4oÙÚw¨ÿÿ7{âòþ—öwU{çµàŸæï|P>_ÒþÎê®;4ù£~ÎÓ¸íGø'ù»ß—ô¿³º«ß=¨ÿÿ7{âòþ—öwUqÙ§È övįͮݵïÜžûä*F“ß;·7»w®á­£÷ŽïÞäóråsÃaßÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?á¸:þž¿ ©-¨uªEV«¹@Û¬„–ãÎ×/´§ßh^G·,\4XÐ`ÿÒK[Â… ;1!ɽ,H±ÛcÆz 1†€e–€[i±ADN=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=Óšÿæõãþ=ÓšÿæõãþªQ{d¨QêqyÚ£KÒÒ)ó£ó™r;܉q5“RæÇuÖå¸9²ã•ÀÉÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?ãÝ9¯þoQ~?á¸:þž¿ ©-¨uªEV«¹@Û¬„–ãÎ×/´§ßh^G·,\4]5¦»×~üÝÓôj}ä÷nùäštxë»ódw~ñÝù¼ž{ܬ°æ¹ŽkÿÄ*!1AQ0a @qP`€‘¡p±ÁÿÚ?!ÿ§zΠÆ0À€3 ˜€ÖƒÞˆ¥‡º€ñ°÷P‰,oB<&°?Dà9–mõæ/Q㣤û%ŒMZ !x£M`]}yPÁƒÉ¢ÖØ’{£àPÂ-,À ®{Bq5‘™¦·öÑ©sÒûOð'΢O4³Œ^~‚FQÓûz¤Ñn?ÄN“Á(Kå` Óxrú›ÑÞctkvwÔiIY#©é>ŠIÓD±ÓyÚ¸‹ðÃÃWgàc¬ÐHlÿb)MWk¦¥ée¾ÁGÿݰ4ýú8=§Ç–[‚jÌøMÐô‡(ò«v£Bõ®4€åÖØ~:pó´5qᇆ®ÏÀÇY ÙþЗ<ùJ[wãýJh<‹·OH´ÿ&p0»æhÍ›pŒ0É€¿¶Î)ùàŸlt¡ÆWOŒÙ½VꞸ*˜_edHÝgz,IcžRˆJ í²£.\- o!Ôï”ÕC+ýŠŸd¨Ï̓*,«#ç¯$Ià^s]§á©E¯ýq *-Rý6*K¹3ü¢ƒÖãÙ‡VvÙQ— ®„·êwÊê¡•þÒ\òÂVm¹Ê£ñú%—ÿõö³gæ>ÞA·`úå?µ £».c\<ƯÿÏ%Ïž KŸ<1”°ñæòTQg¾§¢1Õoºn$c^“Ò£ðÿ‘y‚À][L;x!ÕõŠÖ¤ûùóO$ìyýèˆYõû*¯ôÏÆ ]ò‘ˆg~õB¡ðˆEvAÔˆµÿãè…º0S„üVeè²^@®ü2ŽV ¾Ç•`²ÌH9°¥-š(,ôÄŒb·ô¦÷›ÿ7E%Ïž i8bbs^ìð +J<á7Ó€G¶Óe³Í|4Èò…,”$®©§+öÕ„zÀÕ|DKŠ=×W8¬†‹`6œ-Ũ@ùà‰ÐÁ‡Œ'þ@Ë ˜v53¦úõ°Ç*I¯ x *™bsÉœÀ%ôŽ×Ãé«WÅÞ‚t=*‹K‚ ¹V˜™ì! )†ÿÀÐ$dÃÉ D}0Ý"eÿ7r’çÏÇ¢ÊAA_J?F>„Ž…|XÕ¾j%ÐêQQ=2úNH­á`\r‚†‹€ C‚'°„R§á õ®Î2M&$^IsØ-ã Ž¢ŒÅŒ!A@(¼»ç™F",bÂ<¢ÌÏ$\hyÃ1K‹Ìh´>2ˆnt…ÿ"µ- -"R< ¼ãEò€)ë7F/æµ#»ç­ûÛb¡²¦ZDÉ_mžËÐ/… ³h Ïl— ¶•áïÊÖ„%•¾9AS Œa&õò¤ÀFožoëu0˜ñ$VÈÆåEtz,Ì‘(´vb¬0Ð3@g*UF&‹)uÃßréáÐ1‡òÙã^ø¤HRRóÑÏÂÆB#Ïq\ÔÙói Ûßœ©Ü(Ðþ—·°øT¨ M4^TæªIB"?ðRçσЮ•ŠGé‡ÜA‰æ](_wÂÞ”…âÐDá!‹Z4 I8oN£m"†ŒÉà ‰ÁõU[s†V}ÿ×ÍÈWb¼„\Ä¥„'¡vÇ“G3ÓŠ#_šÁ*^¯HJÓq,1 ,‘NŠªRâÑ!÷Ú…: ß}h‚áKc6dŽÐ ,+>ÜÙÛàn° 9n¼ºdÄcT‰ÏûS9™Ð}ú\^_Kg‘ˆøî°ÃÜmp©£#åºÚµ«Ñ÷°7Qü©3“I³-_Šgu.’À~&3üå[}$æs&°<ÏIÙE€‘þSÒò*…j3—(ÿ8]^¹ÍÄH3Qób³´zcT¸Bz?YñQ¥Q)GË›¸øL@€UP HqñæàÂx\ºà}x»uª†’È#ðÑ €P¬‹Ò¡ê¬c¨®³^Gü¹óÀGažuhµgª VECuT2Ë X4WÃÏâ&‚¤\F饌®#é~[ óïøs5úÀP ’+/'.rÿ<€äy(îç½’å»°£*¬'yÃVÂC@  Ãù%b ‹AX1°ýÔÍ,i\E¢E^+‡éå€Dt ô&8…ï:xÄâ+À/¾ÚðáÉÎþO€±bkö*Tù;M´~ƒÕ’ÑwnUcŽøìhŠ0aèIåo×° ›^ÈèøŒÍ! >žÎ4R7æOsЭ7 A¢pª:Iù¯­~ÍŠ•ìB#£†@€uIµ¾¬Rx„±äJ0HHöíÐÀF ‚¬Ñ›Å‘H¢ Skß•0Êþà £" ãhŒƒB|yÝ2móCP‰êÓEƒãUt–|1¦ӛиʃ ;à[•?a¨xC}Àƒ Ò¿ä$L0ש‘_<Ÿ$TJSÿÕ¦«”Jã4R¿"ˆ¼ç ÇPß %Y!ã‡ÒMÚ2P±%Í‘è6ž¾Ä(”VZ)+À?h6­ dT<äΑ—°æ Ã ÌÊ „(4KpÜþŒåÁ‚! \QÁ¬ˆÕ–º¼àÀƒ& Úúri˜´ÚÍ'ˆy«çR†ñá7XFÍ5•Îñ£¦ˆQßK!Yr¿°¥ÏkæôÞârâozYÞEÜ ³:9œ¹õÙ8‹ÙÑýxr w‘yz&ÌŒõ :‚5ž52õ¡ż‰¹†®>öZ" VI RÚrëe´‡¤[à²×vüö¢6‘hú\—Õ~%nŒ­2 ŽJ2UIV|´ñ˜«­<'8P)°·‚CûŽ•E GT¦ë8¨2 $½æ©íÏØ: âRÃb 5Hø +="£PÙÙ†³ø(¬h :ƒªEc t’ýjoÊ„ƒ–£ %‰¾|H‘îz†Z&fü¢ Î9…Jj"ŠxŸ(Ï.$.êB./¨ö¡ÄiO^'‰uƒ0V·ˆ+b(ç^RnJ`ßiR!¢í^¸‹hþwët•¸T¬M[zCÔñj“¡IçÀ:U‚Œ”—9ƒÛ„” GúÔÔ]>³Jb\¢´¥=½¤Açâ±9©T„…„½4„/4¤d@ŒbÎ4 H‹ú™’j03¼ ¾Iæ}A`­ËFÜ©ñ ø¾à$DÔŒÈøàá›8S͈Œ÷oÉ÷W~ tü D~H >$OLÀïfú`Ñ8¡¡”l ŤhÀÜŽüVzkáòLønu ãëtŠïZPiZm‰g‚Í Mý¬rŸ |qÀ;+°jþ©sö—°!è­U,nI”ì,_Ѹº¦&¶»t4B«!ܼy¬Ÿµ¯È_•ÈME Fd1ÞÍHBº€’4ðôzæÈw»BçøVy ®¤ÍrpÞÝÄIgl™NþÄð•Ý”eˆ½Q[‰Ÿá¥Ð®â”ýƒ€×â‡>¤.€ò»@Ê{NƒcÏÌðN TåʹõÐH,p°"éÛ Søž´æ^앹_ù;zW\0)Àx(qË¡à6‘¾¨”ÈŸQo²Ó GI"™ œ“vž.zä…o׎©{ߢü†ÃÐK pH4¬¨œ¡àËGpˆ~e%£’(Œ’f£ÏÊŒˆ6²˜s·õX@Ÿg4Âà¡ÀV‹ä“Àº) àn.}bÅвø–†òuHÞ8„²€I"ÍL܉=F Ž ChO1@OT‘¢ðºþi7ç9¥¹°ŸL̾xW°M¦Ðúf£x˜NígàXŠÄF »-ߨ°¤‚g{xúhè/ðvÅ•D”Ø)Òhðóà¥úz¾üÄ£ÝÅ«ð5h5ÀÔ^ÁjJˆaå4­c@t …DÍ|"…UoPíø‘„ÒD´B^Ð_ù즃“ðð¶wHgR K¡¯ÆB{´(›í™—’"ø½ƒEòÿÛ‚5úR~½h~àè‘,Mô`Å{ ­V]âÇ³Ê £’[!¹ù‰¥fâSœ*-IN sñiÖ†#Èjx„ ÐGÛœÜÒ81 £R¾ BŠ ¶ùÊ%ÿ£3MÛó¼B—OTŒ ŒŽœÕ ƒbƒú^Ò¦aüÔLáÊŽêz@´€zˆž2Ñ2§%F‹Ë#”Ça¹d:†QJuÏ:0ñˆšR£ª£/1ƒÁêÀ,<ÈÏz¶ ɼB7ÞÄeœ-%cj½*F’pÔÐ=‹ŒIiáÒr]ÖÈJÞøY®-+! @2áE§¹p0ƒ(=ÂÀfÔ¨in™á»qÚ)/ÙýÇ5@õÈ àØ/jðb1P E’#šY: y¦”[v‹åfÝÄY½ÑHyÑ8+ ÆóGÐß“ˆ!fÎ,sìÈ>nL@ëÀQ•~0ƒXêArPÏqJoT!‡Jën«ò%ö¢ ÓPJcÕ4V|ƾ~Ð.¤”%¨Rž©{\<Œ°ÂVÃ7 N ’d‰3~掜]RÅb™ Þ@0Q-y!V'HV÷ Ž8àKbæµr媞ÌÈÅN„;6¡ ¯â´|’RšÚñÜü7‘3$úÞ"ûú ’EùEP/†Ã1ev¤*$£2mg`C‡Ýè‡Þ0B{›ƒ\–ØÃ1&aÂ-Éï ˆ€†‹ë…‹–TŠ„ Xaý`’М×€’È¿o­¿›ðÖ&d¯°V].€êÉ’™†]Ð.ƒCahòag,9@¦é@8M:/á†T›£Ü©Çx½`û±¤œ qr"ÂÃ8¬  ž«ñh)¥Uepçi¢òèkHJ#)¨@J3–' QWÂ=ÄÊ4¼ßÓÅC] ›n¯—ÖÖQhFê÷MÉ…[á ´Ø(ų̂ž*Ì'‡¦«Ñ KÛJsßtÚÖ•³Dí• v~á€آŠ(¢Š(¢Š(¢Š(¢Š(¢Š<’q1 ¿·QEQEQEQEQEQE°ù›ˆ@1Å%Œ¹ÿëg"QEQEQEQEQEQEVk 7,8 l=ä'„ù`žXÕóz¿þ‡ A ëhˆ‹#Ç?"¤t)ÕѬÃôúwHå!¶"ŠÙ2?³§üµd%ŸmÄàDC›\`åìUÉz¿ÖÜúD_âõ‹Œ>š¨¹Ô©`¿ñßìÃå«!,øÓn'j"Úã/`º®KÕþ¶çÒ"ÿ¬\`ùþ“B|¦s áÅÁš•ê° õ*•½*kígËÒO04ôÞ \co7wˆÝh„B™+€qe—'zD°Û9Ö ]ýNÄÖÃЖ!¨vóÚöGÐFV«û>Z}cùÕE…b¥ðëÜlŽ¿»*·±ï(ì \Äî*f†’õ‡ö•+f™j‚r`…cùÕE…b¥ðëÜlŽ¿»*·±ï(ì \Äî*f†’õ‡R×J¨á©Û«䵄ÎáKÏ1uaMº{ÿѳŸ,'„ùa<'Ë á>XO òÂxO–Â|°žå„öÔ§`,˜pù H €Ÿ,M~*(…U=µtÔšYÔæÇè“1í‰Cû‰ö_ Koù';Ä# ˜ÐSŸ-u_ÝöPfOAg rÿÔÌ¥o;©©t*’úÏ–(§+AYœÞÄþ›¹ +×GžNñ8ŠšC*põ dXq"…úuõéÑOKJ‹à ˆ VGwAá§ÀÜéŽ~¸ôw\3¯ú#þh vÝG'e¢àÆ¥wúHçÊ*²~G€"dÊÌû!ÿZÌ7I4XYÕ÷h¦l&[ÂÏ$4¥Ifý _)jªàÌØQ×áë¾îÞ^å¾<`¹Þ°´<)5'ŒåO®¡u6™ÞpjúBCÕØXQ!émáæ.JZhðnñFu«ÌD$œ| +ÉC€jš(×CI6ÜFy°8G¸Ö?á¹_)Jd²„=FRÛåq~¤þò…øUhwržˆÚ3!(˜f6 QO…ÈZEà¾ÿÄHþb“Ú%YÈãÆv„þmi·?Îû/8TòƒÆfi›•Úr…žžÙXÕ t;ßãê³Ð×h*樢kJ4vv9»?W5+ˆÓRˆ}¸¼@.ÌÚTá1kŒšË?Ð÷è ŠUjnCßY¬ÃgÖ’§ù\¡á7“_8QÞMEq˜YVßty«q„>œ l°ÞekVjä:žð!ú[”çá€4RU8F@‡µGÌ6êeÈû!ÅY\<ôçxô÷‚ƒP8qN¶Ñ#ðýbHuz MÂIОDÉ+ñk Œ”‘A%3xD?HËÅ{ mÓ–¿¨È ¼¨7…_>ïJënCIY€B÷Êï‚Gõ5‰kƒ\2ˆÒ;Ž¥gO1›ÜÇU ÁÿKnz^ÕÛ¢ÛI<à’y+²¬åú»ÃŽzØ0ýáf{QùƦyj…<~º*‚:,4œ_Ùî5IG>ƒƒÀ<ìà®sÝ!nd-ÙLJOU LZÿ¦îʦäi2`ƒk7‚2§oRLèåžûò½ŠûZú/æXºÝO”‹‹è&œAÇß÷€žPþÍõÿ¢K+¢wB¶dyGô$D îòO°ð'ñÃ…q:·;yu@R4\V —P®ì÷Hlë#è2ø5–ÐÅô¬„¹ð®4.+[²)Æñü@Â3x>íÃñÑ8ÐÁÁ P³¡?$"-s‰7O,ïóËM"¬+ö˜@UZü"c‘A¿‰Ci¨) ¬Ó:k›¸Z•Å4u¼7ÂhQz¡˜e‚(Ø2ú틜+é(® åc"›ãbâz–†{H+ô¬e#Ð…§zЗk5ÒÅЪöQË ¡ßq‰ß® ã =íÌ8Íš²+Å´ Šà9ÍŒâæïBpϾƒs·稜»`RNÙò†¶ðwËÇÊ$(9¤éà.³£‹LÊ”ÉQåqÖ^…µl"6â œ¨íÏ~¸Æîëˆrê¤83MJ’ MŠÂGgªöAqèО‹y B"ütSÂÁq>!ô·«ZT8ДÞ.݇ø¸x?•WN~Qž·/ƒ`–ßYë@+Ä(ë},Nà€<ÕX‰òZïvŒ›„Ù=†Â©b.=áçÅKäLÄTñ»@Fìò±æR@Ä„1â/IýD›jRŽç#+Žª‡-Ê©1§ÇNBçz2bÍÔOÔP÷÷ ¾©¹‚5ýÏ&½B9ÆÔ½òàŽñ¹SˆCè«©ˆ_Ç™âT¥À̇|ÐûÆ]^ÉANoˆÃf6#æUöÒ£]7dn³Z2–ô€éìg•ôF}œ¯êC;Hœ|ˆ.Zäi´òa…®eÐ"@ô=uÎóÐÃ>kMMåÐÈPRÊi™ýÚ§¸:Ä=R½Žúwhà!=ÆS®\=‘†'á€îGïr ­{ -9Q–böpñÑV0¶yp=.ÑPüüÓÇ”KÐhÖèôÊ Á…E ïÂÀŽòíÒê÷¼ º‡ÁÃi´HTÁMÈ—#a‘,UfÞ’ºõ¨l}–½2v±Ó쀡 c ¤+ Dhþa1׃›UÀþY4ðDq•­2BŒ õ7‘VjDÅ0•h…îp‚µn$K!b9$… ¨ÅjÏ-îAˆA›ï[…`4@­éÏ=b‡AÒ„å…ˆ©œÈÐ>õ2”„³òÆ(éYÑT3G ¨A\¤€Œªhw?ï”ÈðŸ>,QN*L:pq^Ð@í£Ñ\‡€ÒŒY¯X‰æ:ç}«¨…¼(†ììÎ#Fj¼¢=!áiÈ~íBÏÓÆº+1xH?¹å〠5dá#T¨E<Ÿ`ÝF!•ï#œQ("S­޶Œ!œU?1‰©0ûûÔ‘V¤ß×u4Çè}H*€~XrpýXú®¢Z+üÓ^f"vä WÀl=zš £;yõ¬D Ãä$ˆü“¤ÆÿÍ, Ø:´‰%S”üøeìw† s3wµ¬2\3,Q6ƒZ¬RÕŽ£èÜÀ$&‚&…XOòeèóPjO Ò«¸'ÒBUåòÃÓ Døh¿—1S¼a| HƒªHÈxcÑ·Šís¦®c¶ÀDp$ Ú½’j¬Ø.ÙË(¤wËVƒ¾Ð(RÓ˜ò `´‡==sƒ¦Ê,‚ß'q…*ïÅÑÉ9Ê$x Í ŽD žs¢’Nq‘£ÙôÆ…4„qÛÉ@T-€? pÍé -’?Ž3;î‡H› öðà™ÏC*‹¦†ËÑA.WÒÎç*˜oN"¦P ¬5ø€ï ôHa¢QÍ~ È<ñ m²üO$á„™ ü!†¿’‘¾{Q,€s¨(ŠfÈŒˆ¾B§»ç—ËS„æ¹ÀþâÌCbØ â©:â$«ö{ueÈC­‰éTuÏÔb)tx̣РÞ%ú°2’0—¨AD5MlA¼Ð{áNšž­ðqx~¹œ À`¼Å(ðyŽi`-ëºK Àæ2µ%KÒ  ´¸VÌã»ÃrXîDQðÇÐ Óµ†_ˆHt8Ä?7dÆ)š0S&**u„ñ§ú#^¥F,U¾E?HKÉ38c•‚‚"}ƹĹ‘¹ {û¼FêaiUªÇ¦ðëø²ÞM$’bù`ò¬]18bLìëZ@~GH‘dfƒØÓ§*K :Pp‡—cq^Ñëj üؘ~çÓ?Ixu\9ó=zx½ú!û²&àþ^’è ³s5+ÙxAFfÝàoo`Ûgïj,”/Kž,U›rK1Jä$da¦™µÊ9êdüe¸ÝŒTŵL!%»Š@)k:"mÅ«ÝA’Ð¬Š’•ŸY΀+ã1Ÿ— ’ž™ÈÒ½ ®ÛV.Hq„ Áóü@`xè?˜Fª¶ çèüf-‚oŸppl Bã¯p¸“Å·Vá@´¨…¤Èp ·cÏœWÄkxâLKþ e¨£ïaLU5úUÅRšK–JE#ºR8<<âa¢wåš• ãЩ0ï¢2OI* J &#Ev0RZ¹0ÍZÅøAfñ¹Ì8z#LZ0<‘ÕqÂkŽ²È‘JE«¤&p>ÁIp„Ï~BP„H;í”WnÒÓ}TöÂHC·èè±O¨¡üeµ´?#+ß4$g™Y ‘µçd›¼N6§ÒšH„Ç¥K/$kà9PØuu—EBrHÀÜn~b†ÝUB·Ñã…)# í5ïÈRÍþÒˆòÎ ¯£|hÁäüƒó…‰Âµ~¨ä]À·¼FI›Ž‰ƒÙÎñt˜24œ¾_½™ÌMf€@¾—•dÖIQ¢Q`ì't,‰\±Ì`xQMŽØ&®ú:9q¬H)LÚÇ€«£˜ÁÚ5RmUA#…}Ìc5ðw‰q€Ôl*scÜM­E¬41âÉ‚£ð´1͕߫fîÒ tËÛåè$ÔF#‡çwÆ]öE¦Ì„± UiUõì€ÄÙŽîM·ñT Áèpa*5JRÁ`ò4„Â̘*˜B‹®›üxàB(#>#J…˜ÃA ` íÈÇO…IÍ¥#>Sôðh$1Öïþ4h?ïrÖXO òÂxO–Â|°žå„ðŸ,'„ùlÄ,ÃÝeË—.\¹råË—.\¹råË—.\¹fSÑ^2Ä@‚'è a†@E©ÿ.\¹råË—.\¹råË—.\¹råË«îIi….\¹råË—.\¹råË—.\¹råË2žŠñ–"ß G­‡¼ÿÿÚ ‚ ApAP(¡@O±EðPðÝž°,|‹ ‰‰ÒÀò7TëÀðP]ʽv*» †ÍâᨰA×7¹D(à•DàŠ€m𦠓–ðHÂê?aPª][@÷+,†¸-Òïh‘\ú˜RÀ ìPRþÎØÀ\©9Í>¡„CâÖ¦„¥6jâ,D’‰cL E³D/³È4ÁÈ0r@!ðP SÀ1JB(Ó…< SÀ < SÀ 0<$IŽ8 À ‹(¤º@ÄbQïÀ£-ëU׿JµR¡¯$ôƒ|¬€8;EÔX,ÁNå<ÃÊaö¡äªZ&–ïw60:zItôµ°íÆ ~0îa}ÒPvlÙ|1¥ZÒI¬. ´Øp`ý,òìÈ$ª¨ þùd±)1[°­tÎ#o¸™x€_L;à˜«‡cßrã8‡Ÿú-ºÚžàÆÀ‡½i e]@ ¤%ŽÒŽÿ=T/h€B®^½`bÇ9°¥Q ¸µH,‚~yo²Ìúfo’˜˜ÊA$PE³Ù_ £,$çÈZ¸3Î_/8¶úe€Q´ÁȺ]* RZœmÝ×QâÇ·8¨t£J¨%¡nz"‚"%ÁÕ*ãÀ`¼C}ß’h΢Á_ 7¾&¨²â5 Ÿ]èìŸ)*téÇdiêÓ©x)HŠnd%H¥  2EMªsÂ"H0O,ˆG:²„W˜1NɇY²‚•~¤Ežz_KìA×V²|„ÎŽq¡Œ-$L+p)‡ç½l<áä bƒÉë )I®ÆŸLÍ'@c_KÒUö`-ÚQÎe©FtE­ÇàÈ7pÊ6È?ŒÄ¶EPˆ \0t'w$„蘵ìnN'n‰Mù’¤U†í΂2ÙIWt†ý¿R7=Bz{ﬢ¢cu‡âÛð>$ïBIöÀ¨ËÊ3ü2˦ÊÀĖ唃YÑ`ˆ”è‰ÇèôVx1¬Ê©"]°Ê ïÎ[b&JH³ãtt–ìúW“õb‰Œë}½…Uùh}aøbÁ«Þ?)W$–ØïL“뮫ãcëå—É&%Ó8€Zi$—M¬é\#‚‡«ÏXÁ›ölxÊ: 3EÎÕ5ÁÅM«ÌÞ“TÄ‚%:p¡œýF±!­Ù,m‚®œaM›OF²‹@Œ~Ê‘/jŽVfÙê§„&*޻Ή_«à4ØZy õ…©òâSv`ä·Sul¤÷šÛ iöEøœ üÎÊoAÉΜ€_ãi”ý‚ÒT!"a{Ç¥³U¯`_ (ƒÕ¦l挠}i-,0T«î_)TcÓ!ØÀZ7£5*[‚ª|ú»ô4go3ŠÚéÒ³ÖEó¯HEþ Nno)²€S =ÙBâ,íb®pØ`À›QÚ‚‰HØu´Š¯@ä;@¦CŽÞ$†R0W´ç8[»ÙÉxx\+Ϥ °V”?àƒÁ<<((«ˆ€‰1g"æ³Q·ðÈ dáêõ´/GH2€NHQ 3. A¡2Ã"Œ”[(rfÁ€áº¤ ˆëç4›^Ü€'h.SˆÄq>-±:R¿$ý\P(*UUÜ¿Kß,PijЇê-N³BWB O.‘óœBëËÑ.Бc¿RðÒ€©:(ªõE‰‚‡¹4c %MЇf ¬˜¦M«!’r L.H®ÈÃw͇IÏs–ˆPBCaliz‹å@’lÄIJ¸Ð ‡É£›Z‚[(-µÿÃÀTU «Àª¼ÝÀU ÍgýãÿË¿+üÌø_‚ÞÅ)Z{&2`P CVA og˜’2éÓyÇUÐé2í YC³:rú"Š-$ìLãB¤4ž‚øE‚YwN*ôzGö€¨|¿$üP*@É Ðî8`‰d™4Ÿ6'îZå™ðõœòáˆ#s0¸.»ÒÕ¥Gøõ(B:©¨¡Dí¸uÕÏ‚‹útÇï§>j6xœ,@k:2Lé1)ƒr\;˜«<¥)²@BèʳU°šŒÑ”8m5­”AÔ8C%xÔfD)5|Õ»ñ ‹‹Œìm·%OÀ©óJ¾iœJ7™¼Œ-’ä pÞñJ/€Ü5˜!†‘‡²I¥HN5TÄ¢XÀÉ*3ËFE€:iYR%×wÊ‚:ÞMܧ°.Ý ‹á8À–^xôà0Þä0l@©¢ùýÃÜ,Jãî­´t­±vÀÓíŽÉ¾ÎŽ´‘þmçŽå¹àƒ—‰Ö_T¹Ã¼ï©6B¶ ‘Âv£¥µ(ïäÝ_¼Ú@-) ;Ÿ|CÉÐc)„1># æMphÊ=ۉ𑩙† ÷@º6ÏÆ‘)AªÀe' £1B6µ¢­Ï3§À§´K×JüZ{qJÒÆ†œ6©QJ“é }ÐൡŠu:éG ð,0<Ñ&ß.ÃKt,Õ4e#›¤cá‘qKî÷/"!ü“U@hú¨´ø¤Q=§9p?<Õë{ˆJló9´áâÝGã¨OÆ.›MÍohj¥Mÿ;mu'@n )ñBô*öà êÎàA•“wÆìQ–š g,™Ž"JX}u|†’®¸³ÊÜ=½À´%ÊHGƒf…`!Ú–âë¹ æÜôýdoßí]é(²"ÓExBþû­a¨ ˜¬ÒÛÔ Ñ¬+©ØN¯œHæü§þ0·HŒ/,C‹¸e‡Ž|æå$o]*€r˜»)¨Xqf#ôÄÙM÷Ž!A ü¿Ú¨\™‹³Mìk~,ËdZ:œA«ØèÞf Úk§¥}Ö ÑTK‡Ä%zëH•ö#½xˆáæ9@ A‘Û2šÉZ³e#È<u’,ò>Z\<‰ ¨ã»ôvt´*œ¦sQê?\©Œ2#!¦hPcºznŠ ²¿ÕÛÙv’_içÉå4V„Ã[ sŸ€i$òH3Üö{¸4›_«Ý.¨Õ6ƒÇ°î”K£Û‡Ðd5Ð: ,0`'mþÆ–"+D{ЪÐ/73û²¹eëÔ[BÍÐ)ARÓǧ¨jZ´fµ5±…~Dý r º ç‹m[ò?h¢l3hR Àtç°w¹£K¢Ö8ª/Ü#‰IÔÃb¥‰‚yЏl7T¨xÍ&…’-öú†™œœãï/‹_8ó9¾* Œ™ÍÅP÷st-FÂ6=Þ!!;Ô-TºÙŠÈÂ#·pí¬„4r(e‡-5*‘¦7ж6ª/@9âPg‚ÙÓ* Ð2Ù4T¯*dˆÜ²qËp§$< ,QG ­BÑÇYÕ¨·Â¥¥;CtÏ'`gÂ*~n•þÒ‰ÿÄ"!1A Qa@`q€ÿÚ?ÿtEô¿­yͨOZ¬qWîÐ…@cÃñ±÷2‹ )Z.ÓDˆàΈ)›Ò$BbT€öB*êrÉ)N‘ÄC¡H:»{'ľPµÈe¹ÂÖÅ©Eù¡@‘F–Ä…¥ÁvsØú+(“\l7€uº“ýΊIm‚ Å|E¯¥¡ñ¢x]¸†ÞT7•AOÓ!y| Ð0·Ø I…bØ1Ä© P½ÛDÁ\˜]gb¸<ˆN(ˆ›Ô€¥]IE˜ÆKÝ}ÙlÐØNíÀM}%ãa¿Rœ&+Aý ÅR•ã ´£H”k Š„:d•ÊIƒ¾4ë!ddÅ]Ïȃ$¢±ÃvY4Ì9ÂŒ¤Jû ¸0z1#YŸÔÚ˜| êÊI­Là=fsgŽ(qV"ô$(N@‘\w€¥]좙ѹ"'ªm„DŒYQ%SbTà P3j4Gâ:úªv¥ ÚEÀV°qÝ Eu¥Ná€búR‘ºÂn( z2%ÝZÌ.‰º`c^–”k")Ž(a:+{Gm¯¡÷F ºÿÐ$pçò-@AV¿Uøk˜RJhŠ”@@¤e#räÚµXx(L,a‡:qEé.*f…pUM ”© 7+JÊlCŽWFÕpȱ¶.Qd¨^˜V6 hÑÄÌ´ï*H³n¨R’ Çæž*ÈÇžG˜2r*Nªïà ûÃ|IhÝÔ@TÐŽÉ ¨„<êB ʵ‰Pš ’ISòÐé@cbØÃ˜I)ÔøÓb•ÀàKÑÐÙé'(”p£‚ˆèâ0:U)CƒbŠœ­CC”§¶Tm%Â[*‰;4¨éƒ—âBnqÕ×ÐØAíŠ)Äóëa „º#ЃF'»Ô¸ ú~éc„ªF(Cšɵ¯V¦®®¤À=]á&l èÔ€¥J®È"PûÓ%Õ5äÍ¥+dDñ@,.B¤Ç/`ˆ{XÞ”Â'/¦ô6Ù|7ªC\Jøc1J“´¡÷ñh) yDÀºBêXR•Á$× XøG@.¢2Ô.p³-ÈQðE0•ŠÙBìÛ’–/’”f["ÀÜ"œ¨ºÓjL UßPÆ ÛBa\zð¥«4F-DæìÛ<é3ò]ÁÁ €øˆÏL÷?õÎ@»Q?µˆéˆ )¼´È+ ¤¦ ¡Ê‚ *Ý\@zfêH¸$Å g"2ð¨ŸÁ| ´®. »:O°¤BàÉ=|ŠM&(u¼É‰0ÔIzÿ?Lt€4ŽBÄa`ç9”sªÚÀD·´tQà†ƒŒ¤Ef0…ƒbqëô¸ìXMÂEKJÆ Ñ±‰F͇‡4‰t"}$rmhQœ` CÀC£G³RF±eó>ð3 ~) æ4Ø?Kè£ÿŠ~”೨„PÃj¨S©È  ß,Ž8ªÐ»?¶ÉßnäÀÁP‰Q)g¯‘µ$ ªt—èØ‚u9? œa*.8VFA‘ÙÔX˜«È&ElxŒÂTâ1­ÒèG£š8áð,‚ÒpVžh pÀkH“z qjµDÃéVðOÁ;„Ò„ !)ŽpLÂ*JªÔTBDz*‹î°W÷&£`²Ÿ†½mA@¢(XÉÿ1¨÷ªp@+I·¬|”Å,CJ0B±ë¢¦ê„ö«T@V”8  )<o€õø0nO€–Jx©ªT†%šU:kÁ¦¡Áé?ö+^`)’8Ø—ÞýXžÀÁ'…wZ44fµ‘‹ý¯**AòƒWP¾ªªÒ"T²Ô°]¥)sœ¨V—J¹4#À0Àâ–èr)QM¡,SëËQÐ1B 0€>H0‰?TÓJòÓàœ€*¹ãvÇìPx%C[ý°²Gëü3]@0"DSB.y”ªP(J N|TM¹Lˆ‚d4’G…b#)4„€„XÎGXO¬ h-Á¦p&Í˸> ¤Tªúð LÙI/¢ƒ>It?@ "D!wÿ‡¼÷€¶”;Ä”|Eðÿ°,Eî]P`ÏåôÇ Z(=õLIP"k,G¡"tv&Ã0e˜µSÕPXIÖ  ¥0‚µôˆ0!šŸÛ3@Åœbf’j!R àdæŸ|OÔTUXª®j¾p?ÁªeDÑí¸ÊR?ZCâßáDˆâ#ˆžFTØí)àþ/Ÿwú±¡ÕvKdö—£AƒcŠEEdާòXD3ÄðA+²‚ŒiôeÇñéºÀHû °_¡1"(£§ ¡*"Vƒ SS¦Ÿ b£Äc^ÜqÌèFg$Ζ„ ôÔQ2}‹µÙ4o1з|æôVóç2r€Í=R 0(DÓ3ôf ÎÉ™§B6w*,–K+IÆ5 š‡'aJ§|QÊÊÉæ˜“@x:R$¬VéZ:#8 ™þ*~ŠE´½h@à#u0ÌÂép©¸¿H'yA£!Mbµ-ÇB»ñŠ,^Yêíno"@¥9à& È…˜ ›ˆ£”²¤1 +`¢ôN ³»š"G ïèÈàÔ ¡@tcQ ÈInð; =`à„0LIRt&Ê*“Þå2}U@âRÃÓlX{™)º4h@Tž›,0ÃÌŠê{ºݰ/1"å‡Ф+œ7¬×ç`¥ªLZL²Ÿ¼s`&Ò£1$â‘es@‘Ò~f 䂳&PPðåÀÒÊîà‚Ž4^ÄÊRYFÝn G0Ä•ðMøÒõ äAl&D‡°Ð@˜ÿ¨ÚµÉÁ¡Táp].ü'{‰ °;ž„°‰iÂÑF1S#ê­E" Q#$h‚¡ø †R‚—³´Ö4$U1©ŸK³Rà ”ÂcïF‚æË+:k¶¶(‹So}.Æy‚Ë„ á¦à(>°…£S«aŽYlêÛœ¢±’f)%Ï”€ðÄl¡P†zSØ £‚ZJ O,Cˆ0K Jp„WvÅ ;7†°F»;ÓŒÊ ˆ´ÙÒl™a*hÝ_V×Á„Œ:œ`Ó3¢n¬Wý@’A5Nš`1×m0t¿ yìA»ZìcZƒXá>ì¡Ù[Q ‚¨U2—y€J ™ÎlfÊÍÕ€Ií¸‡PH`ã @Çd­< ‚'3&'@KEr§6ãBÓœw!,+¢†ÆéØ×è0H´Jíê®B™ HðK)±/è œ#¾Í+¶Y")hú"Ðãü)šŠ4NÙ\ˆ>!b1]Œz¼À…ÊV°0û…D@±ÆD › Ÿ€d-{Ô Š €,±”è-ÖTA8Õ% GHÝWD€­‘ÚgÒ "p)w!B¿0^9Z\"²È¥€a›J](e@tÉœÓuæWÞ˜Ú0PDÙ<ç‰eÈÐÈ!( U©@ì%Ä% €ZX„°‚)QAâö°ÎÌqîô™è…´ªE½H Ä©!   ¸C`3P(%Ñ-¬dȇ(P`#DÄÛ€R©jÛŠûE„™OURKM>E‰0`FeÆÀh, € (ÍT‰í4ùLÅFád­Å 0CÏí ݫԋ/:¡4¥X¢Ži¨€óì`Räf0Ï À¬Î™Ê4Ãyä‹ñ¾‰lưPÈv=_îÿÄ$!10A @PQ`ap€ÿÚ?ÿ(Üt½ÌtþÌÌÌÌÌÌÌÌÌÌÌÆ à»33333333333jð¶ ëâÌÌÌÌÌÌÌÌÌÌÌÖÁOý|X¼Åq¨Wö#q™È×ÞI?íS¤fs¨4­l Žf1ÇÚS˜êà“~̬¯xƒ¢ËÍc±žNH<ŠH*8A ~ºü¢åÀ®T,¾3¬!†’x” Äýˆ<}¬d™œÖý8XÈu4aÐPÇäèYKÝ!H•U,‡n}ðDQOŒ9jÅ1·÷Hʱ’.èdê2~‰òÒ&íKÚ^Û¸¯êä %YÒnþH·u1Ÿ›6D9ðϲ` r¼íp¡æ'±}Šÿ~î•c$]Ð:ÉÔdýcå¤(X-üo‹tôyz¨f2ggktñM»¾ l¿dˆ²ø°fÔäߪ±£â^šl•º¨Ç-G|\`Æ,lú-B xN6˜Tß7²Þïþ”Öeñ(VîyˆWôDRÿ­bmDì³=T\èbñ4Ž~ëI„î"xvóô8Eð&Ø—l˜jü©®mx³‚ðVÔÜ^Ë{¿úSX}—Ä¡[¹æ!_ÓP±‘ËŠë/Ÿ‡Òänãfz,±¢Ò6“Èa°ûÊæø¿éâÆBÅŒ"…‹nÄ;ž·a]¡ÑcË74aä¡Ýjh¢bl¢ÂÚE*r*"Òüv€Pí |§„E¦´ÝKÝÜê¡ÐGZH1ÌYEfðÊI¬Ø{¹G½K ÖMÌ€X4Æ]³C,üs†ÄûÞ¸U‡:>Xã Å…X¾ýD´KöåˆÝ< ú‹y ¾*KZº"´Jf»™œ` þr ¡bÆzƒûáÛ ¼" sb™•!„ò¡RE@RÖÞ lÅ4Àô S.ûž™`¸u¬ÑŠX!ªâ©ÒILHÙ›BÉéW÷h4˜§×5Ò!³*}t…2cÁ]²KÍl¯9IçJ»<д£ÎO!È*v´\c>H`Û›*ô;t™_r‹¸w àÙ'üíçýèhÆpàWB(X± É–®OP 8 ’%¶¼\¾×œá’»}Áà¹[¬¹¥X\<«^añAž@¨KÄ-çÊ]ãÝb^ñš1è¶!Mt6 êaT—æe{Ý\H«4£Õ_R¿B㫺 qÄ«E*±¬ÅUz‹"›ì]xÞŽ2LM†l‰¶ôAO=)õÓ$¯#櫟M!ÅÔ´gÀ¸jù?à ×™÷™Rëx;lˆ 2Ô27b{ã ÷ ³"+ˆ7Ô¨ ÅÀð™ PÕã‚K}éíE$Zß Ä3vê{ð$Øv¶ }í4 *˜c­ú0ÙΘ”^˜9Ô†è+=€Þ®gÄ>°“!z–™Åh±E8}çšr…ä(çÀbAv¼, TÍkå-8Îøm€Ü£ø% 7.VM4±M„×(ú'Šy”ºFÁQH5R ŽƒU0 •Nˆos*hÔ(]WêšîÓð¯mæCjÕצiSÄæ£Tcî öåIX¢ (w¢A™ƒXî°ÃçDÌ`+HÂáËY?WûÔT 6ÓBRöð+YÅíHÉŠ˸<‡U^ø.!ñ:¹¾W('øš/> öb+„ÙDÉr|;çÈýg Þ­Â);ü‹)NAUÉp ™Ù( FB*WN•}£‰ìVô’›±Ídy0Zu¨–Ñ͇õ‚-Ç^‚¯ Ò(Hݪ…&-*ˆ` § /{!Éu ÷•¦˜«yÁ„ƒ†Ê‡ŽJ1l¹YÑ×ñÌuNx–®!«1›|Þ#ž”r±I’QÄ]h¡bÆݳë€ä˜çÖ%cŒî>[Œ @{  X ¯e|)]Ì6¡#&µ_0Е@š(2Înæ .(Fezäa'GCOÃj§³@·„c”Õ´jv„¾þ %aîEGk´i—³üàœ1ïŠ.DoH‘ó ßwé›)0k2ÃÚ=—êfR"ÓÑ@žÏª¸£ðÝj,ðŽø†²t°R´K(ÂÖRÃ"ÞM‚B䆢Yw‰à.%ø©çØ<6P™šÎ+{xö\¶î½oNa¡M–¤<Ç:‘ÎÐY´Åƒ €„'óMÎ<öÈxžzIA5 ¹€5“¹jŒ<a±& ì‘ù*!;@Lʾ5Azðî+Ä!3¬s^KޤK‡Àƒ%p½(Ѳ)¿2õ 8 QXݘÀFhLÕP÷?8Ÿ6ÕbÚe½ú€»¨1ê‘+*›R$ô¸6¼6†Z…¾ôÚ׋óœ¬i­…Ê”‹ Q|Æj²aºlp„ÊZkïÀ#àUb]ìwªÌõÒÒ¯¯3 T©7t1‹‹Ùïݸ4b\ðCAu)Bf¡f(qcLêJ§SF I3Mܬ›.IüŸsntj3 ÚIOo]@–Ÿ.óæSH#šŽsü½Û†-I¥”ŒÅKÓ@‚&c+é¥hBç)Á‹¤Dàxþ•¹oðÈÜž(3Ðs/®yWÖ‚»ÖQ i¬ëz‘Juû¢ÃgíÆˆìXbó{e`´.¤0Ýý±¶ÈEs.ËÆ¯¡Ä @g·4ˆ2lޱ«ƒJXAí.»'«¾KVì|¡t×=ø›® º#-n(£k@¨DÚgÀ÷kŸÚpˆ ZÍÐ&öUÓ<Ù€!ñž’䢇4‘¨÷ÇÁ(X鬚l©R|HÙç7§7ÎÖyǰèÚØD´ë4dʼ2KEÅ„ÿ›v¿Ž@A‰KšåküXêH¡ûí²x·û£lq‡â+¨ñÄ@ *Ìiac³E–+¿$ä’Q@ZÙgñJC:¼zÄlJ˹bº¢É–ÜÙùó[mrê‚F ¤5ì˜éþ"Æ“Zâåü‹fFÍ8:!å¹LµY“5dºéã$ú( £kú\K#A §8=Ì1’‚¤°\UŒÁB19Ö WŠ£ •™ÇAÀJ r]i¦)¨Ý}Öç€ò` B3ˆ IÔzLˆ”ÄÚIN²PAé±n˜T¹í(î’€DâUú=5,¹NCÓÍŸ[kš`€•´WJKƒ7É¿Ąѭ¤cF³>㊆Úä.H›*AÍ+v2 öÍ6V°õᯡJ³{͸'ÀÓës™NŽÎ5€›T!Š$Yî§(ˆÐHx“GÖ P`Y3r䨠¸5¹tQ¨…!#YŒ€9¨f=¢£=JÉÊq„º¹iŠånÈæßA$¼ {¸y)B¡Ïk@ìÀ' Ä[ ðF?ÍÞ©ôÿ2…ŸÑþB¸¡¾²×°vôÀHQš"62Aº @d–ÿwâ*’’BºZüû¨×Aå t }ÅÝÅ€†€ðÂÀhæY<”û ­À“‚,¤Œq!i‰»ryùÒ£{”å¬a›á„´ ý†+à“Þ¿Eޱú¨»Ûë}«eX ZŸìÒ"ºEH €U‰Š ±š‰Y5ŒRf8°,åøòPà=Ø!¾’¬`*¾ní;}ʯæÎ'ëѵñmNâbTnÒýèÓWˆU)L à 6º©J êhW¬mX‰™…õv`u`½yGOcBÀ*ɤz TœG:T5‘.îÙ/êàÇ Q£[j³…£ˆ:FŠs(÷±O ŠÕlKêXR´´½B(fz)TBc_€!ì##ìGVŒsúgžT{Q‘¡>s"%Â%ì^i–eµmjdù;ë’V‘pK´4\œ°’ö[¬ì/ÔG»’ï„ @ƒ94θ;!Nµ}ƒ%{±±ÑE „a9¸+ÕPz@ÆËËÒ›O4ÜxШ–ç^¨dÏ&KpûV㸘þ<€"¹öËÖTa—¨Ó­õˆ¸(tÓߟ¼b¡`ÿÑH×ùp#ºèè0xØEŸç-ú¥™„iÍDKYžò=ï<ÁÉs­Š)+,–ÆxÌ€HæJwA²n¤9xh ˆð µ¢ì‹=ÂD’É’\7.îÔ¼r²«ñä6BN/U´%س£lAóÿé¼b2Y']ü 33}v·;I™±q:‹‘™J)_‚€Ð’8šjœ7˜àß®q÷€‘`*¼tƒ‘'Ã,hWèŸÈ Ô›tÅÜŒÁ½¨®vNÞBÍ€îÁø· ÚĘ‘uhŽÃäv…šÛ« ‘àëÂZ‘Y¨2áf  :‡¤†s¼l>-€BNibUZÓõ¸ɺøÉØÕ)¾˜h­C!M.)Ã9äÓÐy¡X:7–yøØœ‡>ŸHÛ':h58}Ü ‹jÉ(Ñäê¯ð †¯âÞ(.Jóö˰~Ðvfq`ëL &3h[–tÀ¥T‰¤Àò‰ÊGÈä»>©eÆ[ÛIÊ àJd>”kÈ;²¸¤=ÄŠHØ>ý‚Žœ‚¯Š-"N‘*É;+ÐŒÊf\ L`š•k˜‘¥Ù ¨Îc¦Š.d~²”DŠäëujr„ÂäŽDtY±fáäîRò;¥®‘ã·Io¿0Ëf¡eEé×ó{Œ¶bËV[IÔNЭhÑ¥Z]thaƒdÚˆ²šQ+ÕñU·¹¸dÕL‚3Ù\é.¹kCg#ÄoaHÑW!s¦Ðá°Ÿ×õ|dǃávÒ¦FÍ9‘àú‚‚Øa;$’É ÷b‹kÓEH0VFEj ~_©…6ï%LeÁÝHp¨=\ûë]:.D’¤?”‹dßGëˆxkŸ!í–ÌuÒB ì‹c€Ÿ²éY1IaqÆ mK]Øq'çtu«å5zÉLwŠb´HæxÇÁV)иXÅ¥E‚ìR¨Â•‹³Ò´ÂZ«È#ÓpLvZ)®§à•Ãè5“‘yCÙBÞŠˆŠ–U/ ˜Z%ôøs©kTó}„¦8Dv}!©é#&6TûQޤºâfÂ(¯â&¬¡(X™ƒ L¼ ~~„Ø`Ñ$Ù#3&ºÕ‹@Š-Ug ¼M Ì¡€“iðÕÜÂ4á"Qe)i«át>ep¦M ØÐ£&ÖîþðP…¤c[ 9“DÐ~½~s4ºWúêÍ}ýT´«U’@…ÝÕ³Ù-ä1ˆ+è4¼€@S PËJØÕ –+ð¡e-¡©&GŠ´Ðà*庖¡€-QŽËíR u襭!Ë[,™2Cʈ¸$,}`8}Ä'ð”ÂøÔÐ9[àéÿçDøì勪moÈ– 0¹• Ù µ¼D Å â¨r8jé-0tØÙ%‘gv«Õjë(£Eò™ŠçåV É”èªHR !«ÊÖ:0䯡Q=úä ˜"f—%b‘|HQâk Éj¾«yµ†z±æ¢HYçAeÇ,­Á¶×L®Ïš‰ôv[|j ÌÈ ¦ÃE;=À/´ß…CJ*÷AF,AÍ 7ófØO B`o650¯…ÕõCǰµ;DD=4w¨é—¯ØùÑÉ3 UÑ9@Ñ7š: H•Ã@U·':Þ°z…x@€ÿkX ‹EzCX>‰íÜ 77P LãX@‰C”\üÉDYDÄaaµvVVÅužò Úh†äªväåè¬Р ¦P‹¸j˜™À7°kZ± 4pTi»_Á@fBÖ»2j#f 43ÀM Óp?ßèuC•¥òÄM=y³P‡”Í‰Š´mkVOHÄNN|ß? ÆQ@Vû  Ò)R ðÈìJ@PcÉ>l:Y[.!޶sÝq­Èv€"…¦OÛ†àk+vÄEø$D¾qËFzdß¼qtì’<Ц:ÓY˜‰J46I?bSáË‚Fæë “WË.¢ï ™]«FCÂ}CˆV¯ÝåS¶±±4S Ä w.p¨)~Z†È~‚ƒe¨i½ìíÖ”ìÞ&=.äýð@sùó,7g>l¼š5R-DƒQ Çg"U­+@£TƒÃ@\}Nq(,=sD€’=xCèR † €£€W'öl)”‰·]2DîJÜb´œ5¤’Qb²›¸Á‚Œ1¼4˜ÛÑCŒßàÙQž0:D1r=ÚQ$h"}2ƒn¢£‘¥“ƒ!&Dâú¡ŽÅ#ý€0fKlo ƒªdI„þt@»&1®xÊÈÒ$£Ý„¥P6(ÒRImQiöU‚ˆÀˆk%2Õ)æŽÄíH˜Í…ÛË»Là¤%eãÐNÁì4£2“YÎËS  ›R$GF#˜’d” XyﻕY+ÇéF:€Jˆ9XxKÆRoqê² °úñCŠó‚&Iï°Aj@˜C$@8»ïÿü˜UÄæ–CyVBnëL4‹=AŒKF8;9y±¥ ª3ÑŽÊ= *} ¤E#ã¨8¢2òòD%œ=€yɉŠrwWŒ;@‚Ï rêS4\äO2óhÐÖuU¿ÉÇ»­{œå#”¨·L;Pr9ê8hí‹Ú„œˆÕØG>ÉÁÉ9pr)UžÛ-„ìÀ17LÛ„áÐAÉŠtZ¦—,FUóXá\Èfy+ᥫ–pÛùLÏGÏäÊšA)F W4è:²´?€HÐRÖÆoS)š-<Zûl,ì =:6!)ÈÈqµÏ¥b%P Xdï` Ö™ª`Þ-ëó€Hc¶!€@Æ>Y­ì!Ùñ- ˆáà1&›YI9—ðß¾— •Ë ˜=ÌÈ^åvíÅp›Zð4má#kó„ldbî6®4Ô7‡Cºf€M$€/Z„İÈ8À.OÄô†ÇÙHt:&D‰j‚jï)I Jä”v´xÚÒ<Ž86á˜ðMm Ñ8ñÃJ¶²¿¦3”~¨÷ @Ѿ¡„ŒBvÉ‹I±YV—2ÖHŒŠÐͪð±_ÏþÌ’S ­;a\(Éå¼Ëˆ%(¶B—8Q—MX‚å¸ÐÂFíLÉUB+÷ühêœ}(cD2t ±(2p»ûÄÑ”ƒnéñ”Z¡€“–ÕFçÆlüðœ7 £¯ ÀÑH¹tÒ¤uÛñ¹Ä€gû’ú‡È®Á³åŒi‹»蚀°óò© ?ú©l"…‹E 0Š,a,XÂ(X°Á¼AAAAAA À–„ có| ‚ ‚ ‚ ‚ ‚ •sŸÀ‘ÜÍÿ›" ‚ ‚ ‚ ‚ ‚'ÍŸ­‡œ½i`Ïྠ±–(jÁ?hºÁÌq.ÎêÞ=Â>h4Æ’¼†·Ž“9KYu0Ÿð®ÓrŒ¦S7èÏË%£WçtÅÞ¨âC÷4©£ÜæŒHkw¿5à`$£¬ÇZ€åCÙˆó§"ô§ôûKF¯Î鋽QćîiSG¹ÍÖï~kÀÀIGY;Ž´ʶ.Àƒ8ŇßFªç;Wì öfN4|„G¤µŠ=‚CS:ª}çJ4CÊ$äA‡“=R9¦*5ßä2ë¶ß®ù_J âÙ0²}P¼_ê’'Õo飙`Àò:‰7ÞQnG»](ésìÅâ¼áÓ …èYÐŒHçŒoÓå±ä,0<Ž¢M÷”[‘î×GŠ:\û1F¸‡o8@tÆaFzt#í;ˆ :i<5¥1ɯGä „Òµœѳob†XË2ÆX¡–2Å ±–(eŒ±C,eŠc,PË(ò`Õ¡Ò"ïßò ¯î³L±C`<Íú<Ÿëgü¼RÙè]ÁT’µcÀðÕ?®°%D¹u$ÁFœÃð«D GËò, ÐMƒöÚ‹J,Ú‹¥H %‹Æ®—‘Ò z|!(`ñúýºB‚p×Ím~t]§õ0RÎ×êˆbünÌh©ì/£åÛ¨zù•Ï…ÆÌöIz­>/‡•«»6~W£Ý4‘© ¶¶\QzáϘ®óúÖmŒ:®4‹Ú‹sÒÑ&¬ŒÀž$õN2B̃»XÓÅ9jDdù=6i7ÃÇ™Ge¾#X_AµAkÀèêë´iVQN³ñ0™«ÎñÞ¹÷ù¡™AR¦ðÓ—š1¿XÖؤ‰Ï*è0îÀG  ºÊÊK—•÷িp—†N%å?|§h°Ì=|Ƶ@š›[Ût pF5D”ÞT‰Ï̽?À3Z´¦beÏÉ1Ïåi²ËÊ 4jy±SÎ">>³€%ÿ{%1,à¼êªípÙ@¿1,`±9ì¤tòÇH!Ëß@óúöô”H˜$b/M¢Þ(’G"/F—´OI2ûÉæI^ÉaEqEZ’HÝ”åÜ×:å-Ÿ@-H*|˜;Ý*t錋ó§Q!Á’«'œÂ.t H²†)ÛÎZ.-&È‚,)>Jz‘˜ÑšÀüƒÞ™YŒvªãj[×4õÛ:±$‘zÏÇ5T"=sÆæ*kŒ"8‚ñÒ^YÔp5IŸ­«¶¹™­¡%¢ÚØBO<–l:}•!xbM¤b0'J»d]¡CEª2Å,¢iT/¸¿0Ð*¼ú…á|Õá!iÜ÷\•H\`ãuäÁbï[š˜Þ9D¹v¢Bô±ñô î #®BdF©GÂᯠÀ ‘1Êò fþ;§-'óöðÿéŽü-8ä—œ‰zKò§bÛðóóËH•:1•2&¤ÖL4²»B{²FÈôÈâÊÓ¸ð–ßΆ Ï¨Ÿ€½Q $Ý›¤HRTó vc´Šä„ë5t ëv9õˆ ìéFz:*þ¦ŽÂ9?¡óµý> À/‡d÷Öæ¬Âb G~YØoÆm0™SAH@-jœi CŸ:)‘‹¦OùhK0N¶©°â$9$[\h _fÀä ©P™‹z¼ý»=‡džyéXäÏl=kk&g›M}P2Až ÎÕáëM—(©sàÑ´$4dð~öŸ#K(ì¡Dަ,“áLw”#Å=RÔÄ^J7æ‡M.>䃓<¡>õ<©2—‰Çcu¾³)>9mþÖ‹a·åÌ%$ÐòwæéÒ!¢`D=0ÍIb÷BÇa˜,,n·¦Ü4›16TÝ$ue"hã%$LÿÄÖ¢‚”°°)…ZŠ>3ÑÎ'úà\šØéÅØa&ûpe— €ƒÉ&Þe- HþÈ\îCªHV")•Gi("„]÷ÝŒå»ÁåL…f‰["xƒÃÞ` €B(€Žô@¤iB!¬×q~<ßèI¹·7bÏ¢Ëi÷.d¹õŠÎ6ŠyYå|w‡‘˘Ã~ò K/I¾\ºue‰/ ^àƒ¬šL™D Fä(öT?ÀnvkMIL‹±&¢D:·î7H|O‹C—mH…šdÏ Ã#ûøÍ@†ç@íÅ ÇN¦VuûÐväÆë²ãŸž<¹|õ ºb†·Ì©Qi*¨´B!—¨P*å7ÞØ±F0ÊÊÓM6§ïæ¡à‹ùTÒhösÊÔm¹*SBB¬Ù÷tï? œ=Y¼*W/S…õÅ:$;^›hÑâáõÕJuábnØÁub:û”r@G×MÊt<‡wydH©$""x"Šn4äˆÊt9 .²Ûá…2k2 5ðî¨Í8ˆ Ø ¨-‚s8©Nk¸›I 纫̘áJQ®Y-Bá èAõÂÄ âÅ~Ïyb„*ÛÝq憮m h ydMRæ[šÎ"]òBA¢­+µƒ”³:2îF3>R°#*=š:ûº±Ç“íEñ ≦U­Wª“Z04Èi\3›¦âú¨ã)Ü0g~R»Ka˜#¨z9ÃSMƒ Ö9í2çOÄ`0Iã¢6jþ¨Û«#Ü+èÕÓ|h´ôÃ:æ2Û¶kýwÊ™Òà†IÕLš2‡}’íAcS䉔Z`h(2å Š a>‚ ÿÔlÀö¨ð ch"¾ûTe9±ääLY`–OZwÜW™eV&K™Ã¤FÊ$‚N[`¨ ß%1‚ÛŠt½Âó†i:u¨£aIbA¢ cBéÈXMRASPÌ4ö{, Æ^–â­©Ê%-^¾?v‡&Ugš§¤U 8…±Ê‹JPK@ìÁI ŒB—\3ÉpiÙWJ?pF“!Râ/Ujåt+2½NUúœ§aõÎ.¬DÞ‚R@JìØH¾éáSÙ+É]¦Ê¹º7"Œ‘£Nêu);ä%2ßtRs¯j`ÐÂÃó ý„ÂUoz‰WG$´e®±Å ›§ŠàÄùaÇË€hP«èè E–‡êæÑØ,…±›b *¡OÐ9óéZÇÓvѤ¸ D‘/"c|ˆ³saXkèÇ%רªŠN«XP¡­qÛEÚÔÕË…ÈT`§ˆ 2Ù±Ý(€ ró~ø€¡l=YFöë!¼ `$¼;ݳ¨Œ/QE#&SúG°@{¤Ø9éožS®6b¾Ô§4/@}â½ÍbÄt0ðn³ƒ¼Æ-_ŠâÒe\{UÖã †js´ú‹_AÖÌ^ŠTGÍt˜#‚'^´¼°Œ½½/_¸$`=I}T°YI@Puš1+r°Áà,LÛ…(êèÌ>³¾àªÚ+¾j:â: °Ö”àY2É^`UBX8‰ Ð;x'v±2Ú‡ué30‚„®Ë|•$ï0+iPžìÒz¥Š6¡GE¸ú¢­n@Ç´D¹ R˜T-ZÃ>QÜa¹’©}E‘éÔM¥„Èÿ¬ ¼5Ðõº U ‘I&8„ƃb3É&N-zá {1 !Ì]¸¬ux"˜Xˆ?«í¥ñåʲ¸ˆA+–¨¸M¢ØêZÕòfœ§ §˜€÷Gâ#^L/s É©+±­èzõÊ7—Xº– 2 ³¯M ]έ.6köé´GR…š¡³OÕŠ~±T‚èIÅ&4¬¸Cˆƒên™?d5Nx gñ Qe sk ^N츽µ²L#ë 7̤¡5 ²ðJ+ôøAǾ„UÂD. êÁ‘·m?0Ђ‰à d®T¿Ìž q+J$ZÃ…´}Ö£!Ö¨¿N'Ü׈µ¼Ÿ4œ3 7&D–FK]»º[¥¥*êý¥ii‚ÅJzÒ9Ò‡Lÿ-WK}¤‡r‚E˯Ý֬цöÈnë£twZÍyå/Á´X’b–òTNŒ ,;3>£=Ô!‹É5qu¦óˆ¦È`«~éŠÒô;̶"ÍðÜ"öüÁâÕIA×mXPŽ´Ä›I¤ÄìCâÑ så´Zh|Èp0òMÁ£Æ¨`:±’ˆ 5ïf4­g‹Eã—úÖ¥ðæÒñ€Û¤”jb Á‹”VÓÄ5°W¡`Wd,‘=šNO*¶UÛ©¸&YkÐîjKƒ§¤6ëqÝf˼«¡?š.8R$7þ‚Âj¢òú%Z8®B†XË2ÆX¡–2Å ±–(eŒ±C,eŠ Ë‚ølÙ³fÍ›6lÙ³fÍ›6lÙ³fÍ›0 "1=(af:TÆ*~Ù³fÍ›6lÙ³fÍ›6lÙ³fÍ›6е·Š¿Ù³fÍ›6lÙ³fÍ›6lÙ³fÏÇf͘ ‹ž¥ƒ?‚øÿÙ./Doc/Tutorial/UCS_epot.jpg0000664000175000017500000034637412176660653015353 0ustar vborosvborosÿØÿàJFIF,,ÿÛCÿÛCÿÀ0X"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ñãþ »ûGþÞß üMûüÿ‚th¿oþ=þÕŸücá K\øñ¡kzÏÃ?ü6ø}ðÓZñÏŒ¼U¯ËáÝgLÖ4ÈôhmìïüûMnóPŠÖ}LÒo5­OKµ¸ý‡¯ükðþÓ¿h›ßG?¾~оÓ||= ÔÚψ¾:jÚׯ)â©54“DÁþøWâ½] ßC¼“Ä­ñ ÷×tX|-.™âp‰4ÏŸðYÉ|9Ö³ÿý‰,<\l'’}Lÿ‚s|BÕ¼9¦«/Ù¬âñM×íÍ¢êsXJÂ>¤þ‚âÝd•£Ò®L(³þÿÁ¿à¦¿ðW¯ø,׆ÿhŸÚ+ö>ý›­>kŸ4%·±o~0Üx²ãÇö0ÔfÿŒ³ø[…£DĚܚ”š‹å4õ²V¼þÉkøGÿƒä“ÁCÿì¢~Îßú|Z Úßü`ÿ‚Ë~É_¶GìOᯎ¿¿dÚ7ö3ý¤?h¾øëÆ¿ ¿g¯üø«àø“Áž-Ö< >¯ k¿>%hºN‹­êšÆ×,uÿEÖ3è·v¶×º¾‡-ÿô_;þÒŸ`ý¡¼-ðãAÿ„’? j_ hÙÓãö­Káè|L¯?À¿Œžø‘¬xliòêz;ZIãß h^#øˆmõ;“x¥ ×t¯„7º‹] ?Bø­ñâ¿Ä„?³ïÃïÞ­†¥-¿|OñoNñ±‹Nºwðò˜ô2ª_ßYév7ºž£s –Ÿ§Z\__^\ȱ[ÚYÚB÷W7¹ 0AË,ŒB¢#3¯ƒ~ÿÁFþxï㎛û-üMðÇÅÙCöŸñ‘}¯ø3àOí;á¿ø?Ä_ôm(ʺÅ÷Âxƾ|emÈž]gOøSñWÆZ¶—goq©^ØC¦[ÍxŸ›ŸðqíñûF~Ç¿°?ícð'öfø£âKoü7·ð7?j‡Õ<¤|øῌºÅ·ÂiµKhŸÆãâwˆþ&¾¥âÍ3E𶛥ø-EÕµí;Å:§‰$¶Ñ¤Ñu ÜÙëã_…iO€_ÿhÏéþ Ò|ñûàÿÃO~ÒüYk§Xø«Mð¯ÅOè¾:ðöŸâkU×´‹?Yéí¾³k¥ëšÎo¨Çs Ž«¨Û$W“{~ÿÁ+?m¿‰ö_°oüƒá|_ðM¿Û÷QЭ?doØÿÀQüj°Ó?cóðŽÿIƒàßÃÏ'Å)ï?l?ˆ§áÍÕš[Ëuðæ×ƧÃ.?‚ ×whKû1ñ÷ö‚ø9û/|-ñÆ><Ò>|7ð»i°j~!ÕÅÝÃM©kz•®‹ h:6“¦[_k^!ñ'ˆu«ë-ÃþÐtýG[ÖõK»k 6ÂææTŒ€{%ùmñ3þ aðOÁ·>2þÃ?·§ÃÏÙÓL´mg\ý¡äøðâƒ<7á(¢[‹¯ø£á¿ÁïÚ7â?í)á¯XYyÚŽ£¬ëŸlOÓm¥¿¼†W¶–ãïÿƒ¿>þÐ |ñŸàü/ñGáWÄ-!5ßxïÁšµ¶µáí{M3Ïg3ÚÞÛ;îôýBÖóJÖ4Ë¥ƒSÑ5› CFÕììµ[ Ë8?Óþ eÿ øWÿ­ý‘à™?´‡Ã?ؾ/…?µ€þ.|SÓ¾!|ŸãV½ãH<à…?üM¡é-yã}{Ã:V…⸼gð’ÑÊÛPø©àÏÙÚ]êöº´ÚuÌw‘Zþ“Ã㟠ê~‹â_…/ãñÿ„5'Ž|5©ü>–߯0ø×Ãwz0×ô{ÿM¢Ouiâ¨üI¦Imqá©t‹›‹}qolžÂy¢ºŠFü.ý‘à¦ßðP/ÿðX/Úóöø¹û ÍðÓöPø%áßÇäÐ|{¦êséÞÖìtÿxËÅ5Öõ Ÿ‡>5Ò>8þΞ&ÂgoŽ^‡À?>js´ÑZ\ë>´ÖEö—5øßôQEWÀßÿà¢ß~|l“ö`ð…~-þÔ¿µއgâ~ÏŸ³'…4_xÏÀ>Ô…¯ö_ˆ~,x·Æ>*ø}ðkàÞ™¬CNþÅo‹?<u­E¨Z^i6×–2¥Àøgÿ3ø/âÚ/Ãß²Æo‡?ÿcÏÚsÇ:¥âo…ÿ ?iÍÀ[ü`ÑtFŸûn_„¿þüJøËð;â«¢ÁÛu_ xsâçŒ,¬¯&Ð ]AìÀ?F(¯Åø(×ü?ögÿ‚^x’}ö“øûkÝèR_éú/‡~(ü?ø¦ê?¼qâ=CÂúw‹†<ñ7Æ>ð?…u¯XéWóǨiÿo¶h/ô?Y¤’É êF¬|mûzéö:—Œìþþ˵W퇦|8Õuÿx÷Åÿ³—‡¾ ÅའÄþ»¹Ó¼Uá]Ä¿þ9| Óþ*x›ÂúµÞâ=à«üIÔ4/Yj^Õ ´ñN“«hö {Q_þ÷÷ìÕÿøM©ü\ý›¼Q«ê6ñn­àˆ~ñ§‡ï|ñ;áwŽôF_í|CðV¨Mþ«¤/Õ»,—šmìÿbÔ.&µ¾†ÖÇíSûx~ϲ©ðïÁ_5_x¿ãWÆ[û/à§ìéðÂZ§Äß_/l›ªËàÿ‡ú ™íü?¡Ú¬÷¾"ñÏ‹/¼1à Ú[O.½â­8„Y>Ê¢¿/5¯ø*¿Â„þ?ø]ðÿö¿ø ûLþÂíñ»ÄÖžøIãÏÚOAø3©ü"ñ—õé^ »ø³û8|pý ¼ðóÄÚ¼Bâ]/Høµ®xêõ,¯|•-nÊ{ŸÛÏþ 5ðóþ ïágñçÅ/€?µÏÅ/i¾Õ'ø3áׇ´yž+íCâ‰ß^ðþá8aDkÉ¥Ô.ÄzhmNþkM>9.Pô*Šü6ñçü÷ö:ðgìÇkûXé? ¿i¿‰? ô„Ÿ>4üdðgÂÙu/ÙË´ú%·Âmã.­âÿŒ¾ð?¼W/‰4)->|8ñ¿Äoˆi¦k?ˆÃcÚ֫ê¢úíÉû-k±îûzÍñkAðç쩬ü2Ó¾-Šž-Ž÷ÃÚ~›àýIaH­¦ß[.¯k¯ Nxü:<2–3ë·^'hü=§Ø^ê×Ö³€}eE~DéðXo†šŸÁøj¯ød/Û»NýF”þ)oÚ¿TøAðæÓÀkðþ8ýþ)£$ý­Ÿáwö)>#OGû8?‡¥ðâ6· ä–&zSÿÁY­üA­þǾ3ø1û5|@øãû&~Ù_ôÿ€Ÿhïk¯­_ZÞꮿ¡Ÿ‹zÃOxGÄvÞø!¤jºÜ^"ñňŸ > i¶ºÍë|0¸C½RûE~~Пð_ÿ…¿²ÿíðÏöXø½ÿöÿ‚™h¿¾7xˆøkàvcð³ödÕtŒwÏâ8ü/m'€oÓj+Å~|yðOí#ðöûâgÃØu¨¼1eñWãçÂ$“]ƒL‚æÿ]ý¾;üHýžüa¬éãHÕµ«9ü3®øÃá~»¬ø:ùï"¿Ô|%¢j¾•¡j×7º&ñü_öÙøåû~Êÿ>-üý•>#~Ñ~3ðŸÂˆþ>ÿ„‹H¿ð‘ð—á—à_ÝëÚߎþ/ßø—Æú‹ï4? h¶·þ%‹Ã>ð§Š5..†·Ûµí?¿àߟÛÇã7„?à’?²ÎŽÿðO¯Û÷ö‘º—Wý¤õýOãwÂk/Ù&ûÀ^?Ö¼]ûXütñf¹©h÷?kŸ†:¸»±Ö5«íÄ2ë¾ÐËx—LÖ?³´´°jú€ï÷ü{ö„øåû)~Ä´Oí û6ü›ö‡øÙð·ÁVúÿ¾Ãk¬j ¯ÜÏâ=HÖu‹í+Ã²Ûø‡[Ò< á½KXñþ· h7VZÖ½£ø^ûGÒ¯ì/ï­ï ó_ø$¯íeûH~Û°·ÂOÚ/ö­øÿ áñÆ’x’_Àði~%ðî“­i:F·u§è~=ðï…ãXý¦5„_ “Â:&©ÜÚÚÙøÃÄ_ÆÑû]xcÂEïm^çXñ'ìݤ¥„3,·ñ[.M~±Ñ_ž:·ü§à®½âÁ³þ-þÜþ7Ö¾øâÅç‡ÿe†Ú¾•àï‡?ôk|5ñ/ÄŠ_¾'üø#ài¾ øfãþoxOÄŸ¬êÞðfƒ5Õµ«x§Ç¿þü}ñÿíMà? Ùý§í:®£âïÙÿF:-¤Ï«Ãb¢!(êÕÇ|=ø…ào‹>ð—Ä߆^-ðÿ~ø÷Ãú_мã? ꖚׇ;þÖß þø¿áÏÂÍBËÆ?>9|a]vãágÀ…%§‰¾'xÇIð²ZÉâ¯5¾©ªø{Â~ ð7†Eõ„:çĉ>,ð_l5 CLÑ¥ñöÞ«¦é×0þÓßðT þÅßüwûEþÔ¿²Gíð›á€ôˆo®uH|3ðâ½Æ««Þ_YiºW…ãO?´?Å+O _ê÷×ÐYØø—â}÷€~­ëEa}ã›+ûÍ>ÚðôöŠóŒß~þÎÿ |_ñŸãÄ ü-øWà-0êþ.ñÏŒµH4D±3Ãi¸ºœæ[»ëë›];KÓ­ãQÕµK»=3L´»Ô.í­¥üü?ðTë;¿‡W_<7ûÿÁD¼Wû8Úéâ…øë¦|øK£Xj [ÕãñÆð+Æ¿ü)û^ë~ºÑÄZ½•æ“û8Þ]Þé—P^ÚØËáýR¢¾7Ðn¯_¿d‹ÛOöuþÕÿ5]+OÕ<1¦~ÍžÔ>"|Kñl—ž#°ð½æ‡¢ü=™ôMrßÄÞÕ/eÿ„Çþ!MUð…¾“­Ëâ+m8é7iÁÿ³§ü¯öCý§GÆ á÷ÂÚ×Kø­ð⿇>'ìûã_ƒš/‡~>|Eø¹®i~0Öu_ø#á°ñýö§¥Ýü<Óü âkŠºÏÅ9¾ø_áÄsÝø§]ÓìIºPÛŠþÿàŒŸðSoø(íïñoöÌð?í—û Íû)ø_à?Œm4o‡~!MǾa{q¬ëZ~¡ð«Åw~9Ô5;â'Ž|?§XYëZŸþ¦ƒá±ÜÛ5dž4È5ÏÝj?MþÈ_ðYÙ‡öÛøkûQø×à—€ÿhMKDZߊσ>7þÏcÀñoÇ7\¸Õ¼K¢è‰á /áG>$|?ø‡eâ}CÁ¾.Ãú‡‚~"ë–—qxsRº¸–ÒÔZÍs½ÿìÿ‚¶~ÏðRÿ~Ô¾ ü9ý¢>ø¿öCÖ¼៌ZíðëDøi¬i¾(ø}ñ7L‡Ã6º¯|MâKM{ºŸÂéÞ2Ó|Q£xj}&ö]6ÚÐjR> ºhê=òíSûl~Ï_±Æ—à©~3x«Sÿ„Ç⧈?áø5ðƒÀ^×¾#|jøÓãmPxcágÂïYjž*ñ]ü/}b5;ø, ðÿ‡¢½µ¼ñ.³£XL·Uò¿à¬ß~Cá~ØŸ²çíûü"ñψ´O h¿~=øSàn¹ðwK×þÕ¿?g øÄ~=ׯõ[ÿŠþ(Ò| ðkÀÞÑï|wñ ã7õÛ+OIð¿Ã/ x}.o|Gw>“kw­ê¶ûO xoöw¾'ñV½¡ønÂ÷V·ñˆ¿·]ïÁo‡ž0ø¿ñÇö7ý¯þü*ð†uïxËÆóèÿ³ÏÅEÐtMM¼Ôî/.üû=þÑŸ¾'Ém4„Kiàk+BŽQ¨ø·Pðîk©jv {Q^?û=|kð¯í)ð àíà]?ÄO‚~?|øiñ¯ÁÚ_‹-tëi¾ø©à½Ç^ÓüMc£êºö‘gâ =#]³·Ömt½sYÓ­õîa±ÕudŠòo` Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿„ø1×þI7ü?þÊ'ìíÿ¨×Ūþ©>=ÁI¾|ñ_޼ sû/ÿÁD>,x›ÀþTdü ý€j_Š~ñeÝÆ›e©Áoொ>øo/ÂÿGåßGmq¨ZxÇû6ÏP‚ûOº»ŽúÊâÝ?ïø5ëÅ??à˜^ý®üû_ÿÁ??à¦Þ oŒ¾"øCâ/kÞÿ‚{þÕ;Ѧ‹ÁzOÄ-?]°Õ#ð·ÃMCZÓ¯VMI{&:DöwQÏ>û«v¶epì+þ ûExËöKÿ‚t~Ù_´Wï“âÂ߀ž;Öü x`[¤Ò(¸_i²^iz”hׯd:v¬`‰ãGÖ´ þMí¦Dgþ ‹ñ—Wý£?àÖ¿~Ð~ ±K×¾;~ÍßðOOŒºÞ™ ?f‡NÕþ'üuý•|m©XÅoæMäGiy®MnùÒùKO1öî=7ü{à/ÇÏø.Ö©ðGöJðoÂO_³WüóÀŸto´·íû@|<ñÁˆÿ…tÝgMðŸÂo€¿>#Zh-£Ôa×õ=O_ñ§Å?xLеÑ/m¬µ[Ï?‡|Mú)ÿ^ý‚uÛþ IûCþÂ_í´¯ júϯhŸt¯ÓMÐáÔ~xÓÀ¾ø]WR‰¦éZÍÏÃmÁÏ©ßÈÉag¨Ë«È2]ÆÚÿÁ2|Yá_Á"?àŸ>:ñ׉¼?à¿ø/þ Áû(x³Æ>1ñf³§xs¾ð¯‡?fOë!ñ7‰¼C¬\Ùé‡ô-"ÎóTÖuRò×NÒôë[›ëë˜- –UòOø./Â/Ø ãüÿÇZ7ü›âÇŠþ þÍþñƒüxÞ8ð‰-t/ˆøïòê á­ Àúuï†|mŒüEâKKíkDƒÂÁž%¸¾²½¾ÔììôûÍ"ß^ÑþýŸjxï@Ð|ñÅ^>Ö|P-¼7¥øò6ûeCÿÿÁ>¿ißÛ;Iýƒ>,üø7íàoØûö‚¾øŸñëöXÓ5mNñ7Æo꺧Ã[¹ï<'câ‹ý'Ã^#×<5áïøÏÃiáË­RßVÔì~#^¦‰m¨Ì—R€}Cû,~Ñ_¾0~Í?>þÉ?ðKÿéß²?‡¾ ø[à÷ŸÁB¿h}#öp›â_ øGGð6ƒywàü-ýª¾0Ká¿øÙntýsÆÞÑn¼[c=­ìÖA«Mqgù¹ÿ]kš¾­ÿ¦ø¿a©j7–~ýº¾,è~¶÷E¤éfïͧٮ—m&½âoUdÉÍÞ§u&~|èsRý©5|2¸€¿~;Üü[ñ‡g³ð„¾,~Ï?> hñeî™w™qñ3żáO è^ð¦¥Üx²mY×µ+ý2Îh|¥øËSÔt?Vþb¿à‰³í§û ü ø×ÿ»ñ'ÁOÚgá÷Å­3þ ©ðkö‰°ý§4ø«Â¿³WŽÿe‡ÿ¿e↥¥|u±¾·ðÆ¥mñkáwìçã?‡zÂKmoSñn½§üfÒÔu}WIÓæŽm"k«G¯][}ŠOìáwÄM/âÏÃÿ üFÑtx[Kñv˜º­—‡¾(ü?ñ¿ˆT-4Ð}—Å_<}¤h1𦦭 ;izþa|°¼3˜<©¢vï«ùfý¸>ÿÁ\`ø)íÿÿ‚tüð—í¿ðOöÍð7Àÿ~Ò³^¯«&ãïøö|ðWü ž ×¼ ÇXÒµi¬F:¥Ý…džbñs _ÆÞ2ƒÄfH<=â[êf¿žï†ß¿koÙWþ ÿU×þ!~Çÿ´w?`_Œ?¿ex ã‡z¿Ä½[Bø¯¢þÅ¿¼ ñRѾ øZMGâ÷Ňº—‚ôŸ kþ1ø9à/?„|uàtð¥ýާy© €x7ì™ÿžø5ûnþÚ¿³ìÛû|~Ä´'ü§öàøOãüTý™<3ñ•ut🎼câ/‚Ÿ¾ ø—BÓüIâOü8ñ Çâo‡_¼W{á­'QðŒ~ñ>·c¢fx¶ÿ_Ó<=¦kþÿ«Ê,¾ÿÙÿü,ÿÖuýª«ï¿Ú¿ÁºÏü?öšÿ‚q'ÂOÙûã¿€¾~Å_¶G‚¿l‰?µ/íð/âGìËy™ð·DÕî´€¿ ¾ü{ð·ÃÏŽ.¹ø·ã—ð¿ü'Ú€ð‰àmCðEŽ£&½®ÜË¥Xµø9/þ Ýñ«þ MÿÞ¹øWû;i±ø—ãÂ/^ý ¼àGÕt­Oˆmáo |Að½á;O\’×IƒU |MÖµÝíGK‡QÕt;=3íñ½êÅ0î׉¼Yá_éÖÚÇŒ|Máÿ éž ðŸ„ìõOk:vƒ§]x«Ç¾*Ѽ à_ Û_j—6¶ÓøƒÆž6ñ‡¼á=)[QñеÝÃÚ=µæ¯ªXÙÏü¶Áã7ðI_ ^YÜMkwkû`ü¹µº¶–H.-® ðʼn`¸·ž&IašQdŠXÙdŽEWF £w¼oÿ ðìÉð£Mý˜ÿj/þ/OŽÿ²ÇÇßÚ‚Ÿ³ïÅ‚¾øì·ñÀß´¤þо!|Gð¾…àß׌>+|"ð—€ü1ÿ KYø‘§Íá¯_øŸÄš—…¬¬ÚQùKÿVx‡âí?û&Ø“öqý‘?nŽ<1ûC|'øƒ¬ëß ?c_ÚÆ¿ÂúÃj—7š?Æ=À·~ñ\пômòϾ½u¥xŠ gCÖcÓ¯ôMJ+pé‹Aý’¿g»‚_~xŸáÃ/ˆßÿgÝáÖ“ðÇCøà ø»Kð¾¥ð»B±Ð¼#âKñ›«Zh~&Ò °K?[Ó–-RÂâIe¶¾Y¤oÈŸø8'à÷ü×â'ÁÙëÆßðSˆŸ|!¤ü+øÄÚ—ÀÏ|×þÇÆx† *ÃYø[áÿÚøsÅ·Œ4ív;-õ›ý ×ÚυÌZøû‘êó®«ú­û,~מý¬4ßßxsàÇíaðbëÂVž¸Ö4oÚŸö\øÏû6êSMâ¸õ·‚ÃÃRüTð¦¤xæïDmê?u_XøvKÍê7±E¯èòÞþÿÁ\ÿaÏÚWÄðW?ø&_ü³Ã "|4šçÄ66¶ZÇ‹|ð.¦¾ÿÅkš¿ˆà†°¥þ·¨\êw–úWÇÍ›§ß,zG†?jŽ>ðþž­‹m'AÒtÝ*Í1û»K8#ÉÛ“õgí»«øÏöÍý~?þ˳W‚þ#[xïö›ø/ñàËøËã7ÁOŒ<ðß¼-sáø³Å7¼àMWPÔí|+â-RÛÂþð¶Ÿ­ø’ÿÅÒé°ê¶'‡lüEâ= ñÓþ¦~Õß?boØ7öRø‘û9~Øß³ÿ‰?àž?kúk¿ ¼w£xãÂýwÁŸ¶mÏ€~|+½Ð{ÚŽïÄŸÿh…þ3ðç„þÛxûKÅ?eÖåzÜ? îõÐ ÿ³gü®ÿÿ´^x/ÿRØŽ¾»ÿƒ£¿å·7ýÛ7þ¶ìû_–??hø7þ-ý­à ¾ ýƒÿà¨6²ÇÅïØ·AýŸ¼ãÄÿ‚r~Ö—Z׎t‰¿f­b{‹ïZü0—Æ:‡æo…ž*Ò­µ ôAvÚ’iï>—yý§Þÿðr_įücÿ‚o~Ðÿ±?Á?Ùƒö×øÝñÃãg‡ÿg¿x=~~Ç´'ćֺv‡ûAü7ø•¬[x—âg…¼¨ø/Añ™áχÚÐÔ|'u«·Š´ûû½ÞûF·‡R[˜€?HàŒ¼1ðçþ EÿõÓü/dÖ±ø·öFøñcÄ—3Éö‹ýkÇ¿>øâŸÄêw¬¢{ëýoÆ^.Öµ nnÞk“ÑC$òˆUá×ìY4–?ðxŸü³G²o²iWß°Ã]^óO¶ Ö«‚?àœò&£=¼Ac’ôI­ë›–S+Ë©ßJìÒ\ÊÍú¡ÿ¹ý«¬=ý‡ÿiŸ ø³[ñO¾øsáν¥üЯþ­ÿÆ»Ø5¿ _^?áœ^$Õ-4K­7SÕ,4å»Gømû,|]ø›áø93öéÿ‚„ø«öÿ‚šxöYý£ÿf | øiãCþ éûT}¾ohìs 6¥â Úü6¹×<;á}Nïà_'±Õµ8æµ²›D¸×l4oµÞ¦œý¹Wžü[ñ­ÇÃo…?¾"Ùé­¬ÝøáïÑ|?ÿîøBl®uÝ^×Á¾"]XøÁ"[Zi³X²j_ÚZ_—þÆŸ²?í ÿýª?i¿|4ø ñGö¡ÿ‚ZþÕ~/µø³á-Oà‰ÿ ãwìñÖ-FÖãž ø¥\§Ž¾$xûCžÏÃéâ_†ÚG‹¼@ºG„|5ÆŒ5‰u}>óõãÅ´oÅ_Ú²?áWìðÓöŽøS¤xƒ\ÐâgíGñ×à/ÄïÙšÃáŸÃ»=^Ö÷ÆúÃ/‡Ÿ´O„¾ü`ñÏÆOh–—¾ðí¯ÃøqàËÝjOˆž%ñeòøcJð?Ž? àõoùE—À?û?ÿ…ŸúοµUXŸ ~øKàÿßü*ðšºG‚þøK@ðW…ôÕ*Ík¡øoL¶ÒtäžUHþÑvÖÖ±ÉyvÈ%¼»y®¦Ì³;ägþΟâçíkû3xö1ýš?d_Û‡ãņ?µwÃ_‹þ*×þ~Ç?´'Œ¾Úüø³¦Ë/‡~0h¿ð'Œ5õ‹~Ó/,<)«ë ¤jÚ‰´}nM3VЮl[ú)ð‡ü+á狾x¯ã¡ý¿o é~ Ô|)¤k_<_û~Ô:7ÆûCÅŸfX—ŸÇÃk¯|@Ó´ ®L>+ñÃûøcÃÿg¹¹½Ö…ŒkvàÏ×ü|ïmÿ:ÿƒ˜´Kgk}Kÿ‚€Ù¾™¤@Æ-3Nyÿh/ÛÆÒw±°Œ­¥£Mi¦i¶²µ¼Q™-ôû\˜í XþYÿ‚}üeýª?hø9þ õñ‹Àÿ~ üsø‘û?Zxëöfø}§þÑ?¼sðDøSð‡áׯ{†–|6¾ðGìÅûMÍ-ÿ‰“ÀŸÚwЧ‡|#çEâÿjÒkº…ÏŠµ«[ïMÿ‚x÷â·Àø)'üïÇ_¿aÿø(·ÂÏÿÁGl¯ x÷övñŒa/ÚKN𭞃­|yý¦u‹k‹>!OϤ|*´³Ò>9x?TÖõÿÞ[xKÃÚu—‰oµßiöÚ@–ëîÏ¿°GíûÁYµø+ßì?ð§Uý¢þþÑ~ ¹økûxþÊž Ôô]3âÔvš•Ç….n¾5| Ó¼M¨i~ñ®µ­à¿ ø¯XðCjZgŠou»Oiú%ôú_ÄVëÁ€ÅÿIý‘ÿà¤ÿðSØ›âÏìyâ?Ù£þ ïðÖoˆW> Õü3ñ:_Ûçö‡ñõÏÃßx'ƺ‹,õý;ÂíÿÃðkê77–V¥á‹¨âñFŽçIñ¥\K ’Ú\}-ûcx3â‡ÃŸø ÿíOð÷ãwŠ4Ï|hðü?㇃>/x×D½Õ5-ÅÿÎîI­£ôûÿÛ§Å¿ü>|#û(~Ìÿµ5߯OÙ>•¦ë_´§ì³ñßöaø7ðoW¾µ•G‹þ,x«ãσ>¿|;á' ywá¿€«ñ?Ä0¾†Ï@ÑæÓ¬5Kè¿8ÿÁSþ(ëŸ?àœ¿cè¾þÚÿµçÇOŒ?°_Åïžñ—ÁoÙCãÆù Ôþx\ñ‰µUñ‡‰lumWI¸M6]RûBÒoÂØØÝxü}û;|$¿ÿ‚þÍ^ñ¿ü%ñ+ßì>)xßâÿ‡üáÅžñýí÷Å/øKL±ñ_‡¼CmªéZý†ƒà?xÁ–Ú­µÝºèþÑàŽ {{[k[1ÿƒªf¯xïþË«øsöxÓ4ï x3övø«ðƒâGŒþøFËNðöð?ÁšGм <# h6NÒàÒ¼#âxÆVZŸjcŠËÀé•§½ÌqNÿƒwþ3øƒÀ¿°Oì£ûü]ý—?mÿ?>ø+â%Цøãû|ø]ð½L_üaâëY¬þ/ø§Á_Yµm#Ä6?Ùeïˆluëëĺ²M%g‰VOoÿƒƒ¾!ø[áçü‹Åºž§ñoÀ? üu§ü`ýžüðƒÂ>¹×e´øýñàŸÆ¿|kÒ>iž𥞭â¿ê~=À3YÚiš6…«Çky¦§¬G§èöw𽀬ÞþÚ¿±Õ§ü,þÓ·Ä߇6³„Ÿ²Rè³6§­h°Y.£7Â?ì³ðbm[‚íñ¯ x(ü5[wñ+ëá´Ò^ï÷á¯ø5Gögøýû2Á'<1¥þÐZWˆïƒäÿ‚¤x{YñÔ´‰?àÓ/ÛçãEÄpxƒRøÅ'ì+c­xê=DÄ/n5(>*_þÎ~+¾ŽZI Ö纲žâ /$†Ù¤hÓö‹þ åÿÄý’à¡|Oû9èžøëû5þÔ¾Ðî5üFÕ?Ò.ÃEðkSUä¬7®Zö…£x£CÖ|5â-2ËZðÿˆ´­GB×tmJÞ;­;Vѵ{9´ýOL¿µ”4W6WöWÚÝ[È­ÐK$n ±ü¥Á¾Ÿ°ŸÆ?Ù³ã×í«ð›ÇÞ)¶ñgì»ûþÕ_¾~Æ^;ɯ"ÔïcÔ¯£þÑðÂý+ÀÓì ÜúŒ>2þÐ&«}©/Ùt êWá·Ã¿|"øwàO…?4KO x ᧃ¼5àxzÅYè~ð†g xI¶QŒC§éZ}­¬dü̱bX’{Z( €?à¬_ò‹/ø)gý˜í‘ÿ¬ëñ¾ÿƒ\å°ÏýÜÏþ¶í_¯ÿµÁøiÙcö–ýœ?¶?áÿ†ýŸþ2|þßÛ¿ûþ·Ã¯øûcg‘s¿û3û{í»~Íq»ÈÇ‘.|¶þzÿàÿ¿iÿø'¯ü§Lÿ‚xüjý‰j+oÚóöw×¾6økàÝ·…~ øÿÇ¿³çÇWø‘ñ+ÇŸ|âÈ?jo iìóà/ YøƒÇWOŠî>'|Hð.£¦èz\WöZ^§ª]ÿd íÇí¯âÏ ø÷þ Ãû[øëÀ¾&ðÿ<ãOØ“ã׋<ã ë:wˆü+âÏ øàGŠõx›Ã>!Ñîo4{Ãúö‘ygªhÚΗyu§jšuÕµõÌöÓÅ+~nÁ®?ò‚Øgþîgÿ[ö‚¯Wý©ü0çüGBýtÿ…_´¿íã{Ø Zý’|eû2þοh½cÅÞý›¬~i>'›á¿„u[_éž#Ô屓LÖ|q'†´ë剂O3N¼†–àÚ?ˆ0ø]ÿíý›¿a³íðã§Áý3ãÞ±â©þ9~Èÿ~ü/¸°ñ7í ñ â6Š4O‹^3ðN•àCS¾ðÿÄ}mü;&·kâIï4ý|[éXéfú`„à¢_ üñsþþÿ‚Jø?ǺD:ï‡mÿcãµÓnR)-åñÂ‹Ïø(Å?Ü\E4sE<:Œ¼ jÛÉYãµhIPû×ú6ÿ‚´Û[ÝÁ+¿à¥Q][ÃsþÀß¶ÊÇqs"ÜYþÏ¿o,î$VQ5­Ü][J’ ˆbž&YcFÌGí1ñ§âOÿàãïØ+þ 3áØ+þ ¬þÊ¿³÷컯üøã%ÿ‚t~Ö:~»gâ¿xoöÃÑã½Òüªü2°ñ>« é?<&­wo§ óoo¯6‘¦jÒXÚE¨~èÿÁRk ÿÁ6>?øÀ³OíÙñ'Ç_¶?ìkûJ|?øMà~Ä´¿‰¼[¡øŸÇŸ ¼CðßCÓ~1hV…ïÁK·Ö¼Qe¨6ñ2?j÷š ž©©húv¨mÞ`ÿàÔ¯‡Þð‡ü/ögñf‡§­¶½ñÆ?´Žü{¨O­xAøïñá‘w4«Lëaà…Þ Ð­Ry'h-t˜¡…ã¶Hmáøßö-w±ÿƒÅ¿à­Z]“µž™yûü7ÕnôëV6öZšø'þ É*êW6q·žüK«êÒ Éck&©¨¸“uíÉ—éßø7⟊~ÿÁ0>þÉ?e¿Ûà߯oÙ«À?´‡Äoi¿ÿc?Ú'Á^×tKÿÚâÄm/GøkâÍwáý¦…ñÇÚׇ~$èØ_ <3yyñ\¼°ñ zG†ï-´k‹¶üáý›þ4üIøuÿ!þÝßðQ_þÁ_ðSû/ÙKö‡ý—|9ð[áçŽ`ÿ‚t~Ö7ºËx¯Ã^ý´ùïu¿Úü2—źfƒ¨ßüñ¥ž›vºEÍÿ™uáùu 3Oµ¾½¸Ó@-ÁL¾/|møÕÿLÿÁ9ÿfx;Á_|3û;|5Ô~+ü)ø7ñƒâˆþü#ñÆ þ|iøµwñ#\ñφþ|uÕt_Eÿ„#Áqh6? ³y¤êºNŽôÂðR«x_O†ÿö'ÿ‚ˆxsã…ŵ¼7ÿµ/ØûâÌÏ^x ûNmûHêZ6“û]éQÞÌÖöþ%ºý¡ôÍ:{XÍõÒX*ÍŒ²§Æ¯Á´Ÿ°'ìåû&þÞ_þ9þ×Þ/ñ·ÄÚ+Yøc}ÿÿðN¡ñÛÁ¿ ¾hºÃŸ?†¼_¨|]Ô¾k>¹Õ|Uñ3_Õô-3ÃÚ†›vÍâ.!–̵ßÒ¿ÿàå¿ÙãÇÆ¯„´Øcþ áwã/Å|)Ñ|Wñöeø x ÷ÄOi>Ó¼Cã}vËãÆ±y¢øCE¼Ö!Ô¼K«Zi:¥Î£[^ÞA§_K [Kûcû4è_´¿‡Ú†¹ûFkšuïÅOˆ3ñ?µOøzüjÞø=¡ë·0Ãàÿƒ^Ö͆™qâK/xOOÑôßx¾âÊÍ|mãÙ¹'ˆ§Š]Y,|e x¡u xtM7Æv3kÞ—à߉ð_+ÿü;ñ?ì“ÿºÿ‚QþÕ°ßÁ_ÚSÃ~%ø ãŽöv¾*ñ/±xóFÔ´KX°¿ÖþøbëHm ¯·Û]ø#_ø©¯è³Z[øŽËO¼ÅlŸ£´gŒ¿mïÙÿþ ‡oñãáGì“ñ£ö…ýŒ ü×|Yf4í;ã'Ä?ˆßµÃ?…ú%Õ·ÁËù—â6‰Â(>'xÃSñ7„´‹O i·¶èøÏÿ4üsñÅÛCþûx-|;ãÿ¿hO†u¯k>5½ð§Â?ºŸˆþ3ü.ðíÆ^;м-ñôß[èšßˆþÕâ]3Àž=:>“ñüKká]iú^—?ôÄŸÿà©Q¢GìiÿþŽ8ÕQ?à¥_´J¢"€ªˆ«ÿ ªªU+óþ aÿ<׿iØö"øaû>|H´Ñ¿lø&/‚¾[þËñçÀ;j–ò\èzŸÄO‰þº¶±ºµXHYMÜÀÿPÿ‚sþÓ¿ðOýº´ßŽÏÁ ;á§í!ûSxƒö‡øðkà_ÄoˆŸü7ðOJñƺÞ!ð}çˆ<}ð{à ¼¹²Ò#ð‡mµmÁöQk¶þþÒ¼±ÒK}6Íø!oÃOë¿ð\ø8sâö¡Ú'|d×¼k5“;‘gs©Oð7Á0]¼ /mì Žy|»XãoèÂ?¾4ü2ø}ñËö­ý¦üñzËEñ½àÁðÓöTøCðû^ý¡þ+ü%øaes¦x?EUðoÀ½3ǚǎþ1x×Äž%Õ¾ |[_‡âŸü>ð’èžµÖuÝ/ᧈ>!x—ù£ÿ‚J~о>ý—¿à¡ÿðYÿ¿`oø*?ƒþþÜ?üñ'àGˆbÿ‚s~Õž#šûþ ñgí uzž'Ñ|/ðãYÖü9¨êvü7¨iÓéóÆÐ&§§q¥ßZÅgrý†xà÷Â?…wþ5Õ>|,øsðãSø“âI¼eñQð‚<3á ÿx¾â?*ãÅ~5¼ðö™§\x§Ä“Åû¹µÍvKýRXþGºeâ¿˜Ïø §ü¥Ëþ^ÿ³»ø!ÿ©í“_ÓŸÅ¿‰ºOÁ¿‡^'ø—®xoâ7‹ôŸ ZZÞ^xsá'Ãoü^ø‹ªGu¨Ù鉆>|:Ñ|EãOÝÅ-ìw7Vš‹qk§Cy¨ÏYY\Íò/ÿløÁñàWü×þ ñKãì=ÿ#øwðçþ ûMü*ñ?ìóã?þÀ_´ô›EÑ<ñöÖ}Câõ¿Ã»”øma-ŸÅ kªø¬XèúN‹µuâ=GD›Lki@µñ]Çü?ö‰ñD~ ñ©§É'ƒ¼v¾oø%ž‚5ù¼ âë}ÅÖÚ7öîˆÚÆšë[L/ ùOöæÿ‚vþѳßüá¯ü§öøsÇ?Ýødü,ýµ¿e ?h> ñgÅÿ†²øf×Â-ñáV»â+Ý'ÃÚ‡4/hÞ¹“ÁÚÖ«¦®·®|>ðtúl—òjZý£~›Cÿohqé?cßÛ‡Å5+im¬~üXý•þ4þÍ^ðλ"˳|Døÿñ¯Á~ømáK ´Y¼C­ü*ñ·Åýe4”žçÂñ¦©&™£j@Œ?¿à–ðU?†_±oü+Ç¿³WÅ/ƒÿÿà¢ÿðI3â^ƒcàý_Äš½ÿÁ¿Ž^øŸáË_†z—ƒô¯üC°ø5Íþð£Aðï´çñlß âOj¾3]#Å^Õí¼;qqÀÍÿþÙ³–&›ÿbÿ‚+~Ò?þ\\Åá¿|xø_o®xãá%¥Ž¸ñiWÞé~$ð´>–ÉṸf·ƒã~¯u¬[ÈöZ~<ñµ}oûfxwþ Qðö·ÿ‚2üUø?ðŸâíÓ⟄ÿÿo]öäÕ¼š<7«ø?ââþÌ^!ñ&—áÝgÆÚç‡|á©-¼UáùµOÙÏá§ŠŸ‰u{w§YëþI³”êÿØš€~Ç¿²ý§ì§â¥ñ·ìÕ üøWá/~(û}Χsªü.ðgƒ4 x9õ;Ëë[EõËmEµ²×áÕ,4ýZÓZ¶¿´ÕtûF ›H~Ÿ¯Î¿ø$ÇìcâOø'Çü³ö^ý|gâk/xÓáƒ5ÃãMoKšâëFoøÿÇ~+ø¡â½+A»»·´º¼ðï‡|Aã]Gþ½¹³±žóDÒ¬.f±²’Vµ‹ôR€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ üZÿ‚ž~Æ_~&~ÒßðOŸÛóöyð†ƒñëÇ?ðOßüYÖ5/ÙKÆž,Óü¤|]ð—ÆoØøCY×¾x—Ä#þ üjøw&ŸgâŸÜø²}+Ãú®¯§éCQñú-šß~ÒÑ@öðRo†igoŒ?f¿ø(‡€¼aoüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ðþ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö€?¨¯ÀøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úýþ¢¿â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúh÷úŠüÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè} ßê+ð_Aÿƒœÿà†þ%×t_i_·-‘Õ5ý[NÑ4Ñ©~Ï_µ~‡§ýVò 1­ëŸtíG²7Çö­SXÔ,t½>2ïP¼µ´†iРÞŠ(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?“_øÿèÅcüF?‚üÄWàŸüá¤ßkß°—ìY¡é‘¬Ú–µÿIýœ´>‘!Ioµƒ¿´µ¤m4¬±D¯<Ñ«I#* %‚‚Gõg@9ÅûþÉñE²×ìç Æ‘C _~ÇQF¡#Š(Óà ‘Ç(DDU@U*Oød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"ŠþG?àÜ?Ùûà7Žáîð›|øEãøF¿à«¿´g‡|9ÿ OÃoøƒûÃö?ÙbдOímïû+F³ÜßeÒì|‹+}Íå@™5ý-ÿÃ!~É¿ôkÿ³¿þO†¿üÌÕß_²ïìýû2ÿÂÌÿ… ð³Ã? ?ár|H×~/üOÿ„n+Èÿá3ø—âo+û{Æ¿Úîî÷jºŸ“Ú ¿‘oò.ç>÷@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌ×óiÿ¸ýŸ~xOþ ÿþh¾ø!ð‡ÃZ7ŒÿníwGñ†“áÿ†¾ Ñ´Ïé)wðp&—â[ ;E¶µ×tåW!lµH®­”\Î@M&ïëN¼âßìÁð㿾 üGø½ð»Ã~=ñÇìéã¾ |ñ&¶—­¨|8ñÃéRMâ›[ËhRþGÐô’ÍwÔ_è0ÃPÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þ 9ýŸ¾|Fÿ‚FxgÄ¿¾ |"ñçˆäøÿñ²ÊMÆ ¼âmìí5 mmU×4[ëæ¶¶âÞ9ŠÌ#E sýqׂ~Íß²ïìýû |2¶ø5û4|,ðÏÁ߆šÖ­â+oxJ+È´ˆµ½vH¥Õõ%[ë»Ûƒs$´ìÓ•>Z„UKþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"Šùßþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šú"ŠþG?m¯Ùûà6“ÿ/Á|¥üøE¦øÅ??lKßø3OømàÛ? xŽóLøñúïM»×¼;o¢Ç£ê÷:}ݕՌú…Ķ—–Ó[¼rA'ô·ÿ …û&ÿѯþÎÿøe>ÿó3W|[û.þÏÞ;øùð§ö£ñÂÏ ëß´ÀíÅ>øMñRú+Ãâhž6ÑõÅZn‹,WqÙ­¶·£ø‡ZÓïæÒá¼JçÊhÝ•—Þèçød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfkèŠ(çød/Ù7þöwÿÃ)ð×ÿ™šøGþ •û-~Ì~ÿ‚dÁF5ýösø¡ëºì#û]ë.µ£ü!ø¦jÚ>­¦~Ï߯tíSKÔ¬¼=柨é÷Cwe{i476—0Å<Ç,hãõÚ¾Hý¿¾øÛãßì!ûkü øi§[kþ4~É´‡Â‡úMæ£e¤Zjž6ø‹ðsÆ^ð¦u«js[iÚ]µî»¬X[O¨êYYE+\ÝÍHêùƒÿ ý™ÿfÿÁ ÿ`¯x·ö~ø#âk-.õx‹áO€õ½oUº>%ñfçRÕu=êþúàÆˆ†k«‰d(ˆ»¶¨õ·þ öMÿ£_ýÿðÊ|5ÿæf¾oÿ‚G~Ïÿdßø&ßì‡û9|nÑl¼9ñ_á'« øãDÓµ­+ÄVZv³»­_5½¶·¢]^éZŒf½·qqcu4$¹MûÑ€ý ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™¯¢( ÿá¿dßú5ÿÙßÿ §Ã_þfkù¤ÿ†~ø ÿYÿºÿ…%ð‹þ÷ü:‹þ/øAá[x7þïøH?án}›ûwþì_ìOퟳþãûSì?mòuçìùkúã¯ÿ†]ýŸ¿á£¿á®¿áVxgþOþ¿ü*ø[þUçü%Ÿð­?µ?¶¿áó~×öì¯íOôÌ}‹ío~Ï–€)Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@;ÿÃ!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3_DQ@Îßü/û5þΞ ÿ‚5~Ý(ðoÀ/‚žñ6‘ðÿÁi>"ðÏ¿è:î—4ßþZË.«éZ¦¡e,¶ÓÏo$–×3Á4°±1Èê~îýƒeOÙ{Xý†ÿc-_Wý›¾êš®©û(~ÎÚŽ§©ê?¾_jŽ¡}ðƒÁ÷7·÷÷·>–æòöòæYn.®®%’{‰ä’Ydy˜ýÃñ»àÂÚGágŒ>üsð6‹ñ+áG¬¬ôïxÄ+rú7ˆ,¬5[ nÎÚýlî-.Z;}WK°¾AÄgεq)¹[±ðo„<3ð÷Âð‚ô{Ox;ÀþÐü!á=ÀH,t? økKµÑt-ÈM$²‹M3K²µ²·Ë$‚|ŽÙbãðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPò9ÿÉýŸ¾kÿð^ø//ƒµß‚_µ¯ø?þ#þ/ jß ¼©xsÂßÚ_¯&ÔáÐï4Y´Ííó-ïöe­¯Ú¥IüÆ×ô·ÿ …û&ÿѯþÎÿøe>ÿó3W|û.þÏß >2|dý¡>ü,ðÏ…>4~ÐðŒÿÂèø‡¥ÅxºÿÄ?øCl_Mð¿öóÍw5«ÿcXÈöÖŸe¶¶ýÛ7Ìl5{Ý|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}_0~Ö¶/ìõû|,ºøÃûF|FðßÃÿÚßévqÿkëš-†µªÅy®húV¯uá½QÔlµ?7…tý\ø›_Òü7oªkqxN¾¸±Ó/nVÞÒàó/þ #ãoÙßþ «ûüDý®¼û~Ì^0×¼â/èÖ^Öþ |6]/_ºñƲžÓm/¦‹@¶¼¶²´Ö5}7V¿¸ÓæÑØi×^DW;šÖ—à‰?b_Ž_ðDÏ…ÿµWÆ?ƒ³–±«þÊÿ|àÿÚgZ? þêþ"Ò'ý˜´MJ{ísÅ“Þé^sø«Äÿô|JÔ§Öo-&Ô¤ñZjwÇêÜåÿöùñÏü3þgøÁûWüIýtßZÿÁ?a Þøƒá÷€¼s®êžðçŽu èzíôš¶™¥ØØj¾ñ_íñLojº‹ª^Z'ƒ< yáÿêž!ÑŸSK¯~tøöý®¿à•ÿ¿à©_ðKŸÙÿÀw?¼#ûZøCâìù¨xCWð߉¼Wâûø‡Â~'Ó¼7ñcÁš‚.#»>7»øñS¸ºE·¹Ñ]ït½[XÓ¯­|3ie@ëÿ …û&ÿѯþÎÿøe>ÿó3P¯ì—û"µÄ¶kû3þÎ-w6÷3Ú¯ÁŸ†Fâ{©.bµ¸–á³,pÜËgy¼®¢9¤µ¹HÙš B??àãoø-σdøÃðOføÃ¨ø'à7Ãûíö–¸øuñKÄ÷:¿ ^øËCÑe¿ñ­¶±yá½ÎÚiü+¢ÛÄþ–¿ðÈ_²oýÿìïÿ†Sá¯ÿ35üÒÁØß³÷Ào‡?ðHÏx—áïÁ/„^ñþ ÙG¯ø3á·ƒ|/­¥Þ¡®-Õ¢jº‹c|¶×!\@'LDˆÁF4ÿàÞŸø+?Äïˆßßáwü·ö‚›Å´×ÄßÛ£ö–ýŸþøÆƒÀ:%•Ωð?á—ì…)ø3eqàë J¿ñ³â¯Œž%Ô<ðXß zâ×Z°W’vÐ,.ÿ¥_ÚGö]ýŸ¿kÿ†W?¿i…žøÅðÂïZÒ|EsàÏÅy.‘.·¡I,ºF¤Ëcwep.l$žf–p£Ì`êÀâ€)Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3^ɨxǺMÞ©cªx‡HÓ®ôKêšÄ7·öö­¦i¾+ÕuMÃwׯgE¶´Öµ}WÓ´ùædŽâïN¼‰´Ž’€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf¾ˆ¢€>wÿ†Bý“è×ÿgü2Ÿ ù™¯æ“þû?|ñ—íMÿïÓ¼_ðKኴÿÁW~9øsÂ6>$ømàÝrϾ´ø‹ñN M Öڞ‹u‡£ZÁoo ¾—¦%­Œ1A qÀ©þ¸ëðÃþûûþÑ_²/íÿ}ñïÇ? i^ðÏíqÿ ø±ûA|¼Ó|WáßMâO…þ+ñ¯Ä gEÖ5+=P½ºðåíÆŸ¯é’Ë£k‘Yjví;Å5²I ª€¨ÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPÎÿðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌ×ÑPò9ÿöýŸ¾x7ö¦ÿ‚iÞø%ð‹ÂºŒà«¿<9âë ü6ðn‡gâ¯]üEøYÞ…âKm3Eµƒ\Ñ® ¸¸†ãKÔÒêÆh§š9 d•ÃKðÈ_²oýÿìïÿ†Sá¯ÿ35wã?ì»û?~Ðþ!ø5âÏ <3ñij×ÄâÿÁ]_Ä^=ßÿ‰~¾Óõ-ÆZÝÚ¤z®Ÿ¤é×P¤¹·ólá/… ûÝ|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E|ïÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ}E%Ÿðkgìûðâüçã>µãï‚|q¬ÚþÝß´Žk«x¿á¯ƒ*Õåò4ÏøOÂzMÞ¹¯ë7Òá™m´í.Ææê@Šò¸dHò2£|Uÿÿ‚—~ÎßðLƒÖ?ÿhËzÄ¿ð™èž°ÐlöãÅß<7à}sÆúÃèæO0iZâÐ/4mW¼´{-QíÛX¸²²wºüþbÏÙ þ ÿLkóüDý©~?/ƒ¾ þÆ_¬¾x âz{ßÛøƒã]§…,gÐN¥á+fîãTñon•ã¿ÚâLigs©ÙC¡èš•¨ŸC²ðç­üj?ðP¿ø:[ãÏÄŽÿ|âÿ Á9d{ÃÖÿ~jšÎ¯g¥üD¼²ñ†í|i§é#K0XøŸö‘ñÂßx›ÆšÎ Ì^ðÍ®…ðçNÕ´üI¤ê+ÿC¯Ùëö\øû)xc]ðOìñðÃÂÿ üâGâ[¿ xCN‡LÑ-õ8¼?¡ømFŸgihlt [†´Fh¿´®µM@ŸQ¹gù3þõûø{öÿ‚p~Êì<ß!¾†(ÚúÿOñÅ÷†´ó;Nú_†¼? ø~ ä²Ñí1Öü?ý¾xöôø÷ûhZøÃ)âøs¤xª;X#ñ.ãÿ‡þø½ðgÇ)cu %ÍŸ†uï„Wÿt»­*hº†­á›mb[Yõm&ÎêËôŠù³öMý›|-û'ü ð'Ào‹Iü3ðͼm¢ø.hìã·¸Ó| ­|Añ/Š|/á×p –Ðô=[IÒ/Z ¥åî˜÷[AÅ^Ó«øÂö¿àÿêþÒ¯üGà GZÕ|®MjŸÚ~¾ñ‹¨øw_—M¼@“Cµ£ê—–š¥©gµ¾&Úæâ .ìln-ºª(üðÿjŸø3÷ö¯ñ'íûA|GøûKø"?‡^"ø«áˆ_ƽˆtÏZê_üq1ø¥‰m´©î"ðÍ·Á¡&«¿‰t{ÝgTñ¿ƒl¡»Óô¨üO¦ÿÂ1'_û&ÁÉÿ¶ü&ÿ@ý‡?à°_³§Åx¿áç‹ì<=ª~ÑÞ$ծ一< ¨xÃW³]êºBxm¬~+ÿÂ9ðûPׯ¼7â'Å2ë(º>Ó+YøkJø…§ø1üUoy|ž¼ø™à½CÀ^$×´k8¯mmS^Ô¦M'W–7Ô¼?¶±áûÍ+Yµ¶Ô!þ,ÿà°_ðp—À÷ñGÄ=sö0ø©á¿Šžý­àšü'Øoo-üKðÛâÞñ—â•÷…´¯hQÅpÞø•à]#âÝÿŒuMÄ­»éÞÔ´8çkoH½Ø—ìÿ ýœ¿à¡Ÿ~ühø+ñ Âúž¯ã¯Gâ|5þײ¶ñ÷‚5M&öøÛL×<qt|Aiaá¿´º ë’ZÉ£ê>fy§ê7–ºŒ÷ÅŸíeÿšüðGí¿û"|ø7ñwÅúÀÚKÀ´?„dÖüT¯â_øsã_Â…ž)ø©á-sÄ:œéz,º‹ã•tX´mG³mNøs.©:xŽ÷Ä—ö¶ÃûþÒßð@†ðMßø-gìÑ©x“Ç^ ñǃ¼!¥~ן> øºÛH³ÒüsñÂWº_ˆþjš…4ý!uo‡¾ Y™m¬hº¸•#š5»°»‚V·¸Š«iíâ)"Næ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>ÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷úŠ( Š( Š( Š( ¼#ãWíKû1þÍvúmßíûF|øk¬çûçãWÅï‡ÿ íõ\;D³fñ׈t(ï±"´gì­.YÌ£ö¥øÎß³‡ìÇûF~ÐË¡Éâfø ð#â÷ÆuðÜ&A7ˆáwÃÿøàhq¿z$ÕŽ†,ÅûÀ×gÍŠü.ÿƒ~¿hoÙþ =û5üJøùÁýOÅ_µ$>5µïÅϾð—Šè:=¯‡!ðûÀ-i_µûiöÇAðîµ}á_‹žÖü1w¢iP¶‰ã_j¶ý›Ä>#Ó5_Ô¯ø/ïíCãýcãü—þ 7ð£Æ$ðÿðQŸ¾ðïíã?Þ^é~+Óe3ÅžðïŽü!¡êÚjOK›â®¹¯5þ¡¦OdçFðN¥ j÷ö¾ñ6ªÌû}¤~Ýÿ°÷ˆ>$ÅðkAý²¿e=oãÅüzT tÚá¥ñ&mNY"†-6/YxÂoI$ÓCvi¥µÃÉ,H±–‘ú²¾Mñoì+û"xÏöd¹ý޵_Ù÷át³„ž—Â:oÂý3Áú†á»3¦6™g¬x^(ìY´/é+åêGŒlZ?ØkpA­Ã©ÿjF.ã'ü}ûf|SøÅð«ö¸ý†þ?xÓ\ø‘ñ›þ ûExƒöxoˆ>)º–ëÅ~/øGˆ|kᆷ>(¹»³²Ôuh:Ã?øfãRÔb:Ö¥x}µf}Wí“ÎýüLø±ð³à¯„ï)ézMÅÃN°[êZ‡µívÒÂišÖåbŠêh¤‘­ç¬b“oówÿÏø‡¦Á]¿à«ŸðQÚÃãfŸmñàü÷âƒû2~Â? üS`5øV¸Ô|m§üQøë§øzþÙ´ø£ã/ø@4]OMñ]ÌZ‡Š´?xѼ:'Òìt?îõø8×ÃÚ‡ì™ð+áïü¿öj³²øyûWþÇÿ¾ÂGãŸXA¥Ïñà_Äéßü_ð[ãú~›)ñ·€õ_\ð³Ù[xžY“ÃS%ådžntígQ‰¦þ˜(¯&ø ñ‡Ã?´7Àσ?|$_|nøUð÷âß…’iYâðÿÄo é>/ÑḒ5Tk˜l5‹x®6¢bdlB Y Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ÿ8Ïø*'í›û^ÿÁPÿkãÿþ| ‚M*Ío¿Úþ‡Åîu{Û­KÂv¿þ+x·AÓ|U¦Ù[FÑü*ø ð×Pjÿd¿¹—ÄgEðö …ç„­¤×ÿ°?ø*·ü/öPÿ‚\üñö»ãñ/í!mà©õ„Ÿ³%—‰ôéþ%xç^Õ]´Ï ^k>²»msÃ?dÕØÝkž0Ôí¬íN‡¤xƒþöÖ5«ô¹œÏø4ëögñ?Ä_¶Çííûc|=ÖµÚÏÇ7¿þ4ü4øã«H,µ¶ðí?¤üsÖ¼Mñ Ã66«éÚwÅ{i&TŠá#Ó®<;e£K¤iv–Kcu8õãû þÇ ¿`oÙGà·ì™ð~ ÞøAá M}v{+{ WÆþ+ºy5?|A×à¶ybM{Ç)¼Õ¼I©CÒÛØË¨ 6Á“N²³†?¬¨¢€ (¢€ (¢€ (¢€8O|:ðï«ð‹Æú—ü#,f0!×5o†¿~Þyåãwki<1ñ'Ä*c‰âcuöIÚ8š7ù»öÏýŠ>þØß±ÇØÛÄš&‹¤x?âïÃÿèÇö{Ïgàjo{¯x/â§ÛÜZ”½ð/ÄÒüe¦éÖóAa,ºbé2Û¾q=„ŸfQ@È¿üû[üL·øaûFÁ'ÿiˆ¤Ñh/ø'Ÿ5­#ú.¡$²êMð§PñV©¤kþYRÈAumðËâLwv–ÚœÚ{¿xûÂ~d–+Lÿ×E Ÿð[•øïÿtÿ‚Æü'ÿ‚ÃþÊß 5_Š~øéðWâûN|5Ò­î´¿ê¶Ð<à?^øûRð}†£¬èºÇÁß/Œµ½"M×â…49ukÍEïWI¹þÿcړ¶ÏìµðOö­ðƒ¯x_Áß|oãmÃÞ(ûü$Z=Ííí’Øk_Ù³ÝiÃQ‚[)èX]ÞY 7 [˸\JôíQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûýEPEPEPEP76Ö÷–÷w–ðÝZ]C-µÕ­ÌQÏoso:4SÛÜA*¼SC4LÑËŠÑÈŒÈêT|çá7Á_ƒü'ÿÀ¯„¿ ¾ xûWR×¿á øMà? |9ðŸöæ³*M«ë?ðŽx?JÑ´í]VhÒ]KQûÛ/¥D’êiYA™_޵'Å ?nø×ö+øIñÊËà·ìíá;Ùü+ûiþÒ~ñ¿‡|?ã?Üÿ¤Ùø“öAýžõùkOßY²Ûü{øÅ§¬–_ t«¿øVþ—Tø­©øª?… ˆ>x“þ ÿ‚Óü4ñ7„mc¸ÿ‚bÁ+üM„üañÅÃx{ãçÇ]?ÄGþ%|8ø]{ñÅâk-K]ðÿ¼ â½_JxtÿxGº·ŠW[¹¹ñ€4í_•ÿ‚¶j7²ÿÁÙ_ðFí&K™M²ø+ðcQ´³$y0^ꟿjûmBå2$ºƒHÓ"”’A[8pŸégÇ?eÏø'oì‘ xGöiÑ~ é¾ðN§ðËàïÀ€ÞñŸ‡ôK/øÛâ¿Ä¯ ü;ð†4ϲÜêš®¡«ë¾*ñŠëæ«ö×Oðoø2WQ½ÕÿgOÛÛVÔîd¼ÔµOÚáæ£¨^LAšêö÷ÀºµÍÝ̤ “Ï,’¹Ìpâ¿^¿àèïùAGíÍÿvÍÿ­‡û>×ççüYðÖ÷ö-ý¶¿à´ŸðOC&ƒâï|wð?Å߆º]åÓ[Æ_uýCâ&› x÷A‚V7è·Ôþ^\3Ziòx¯N²Žæ[£vêïø:ïdziŸðHÿ|Ðb¹Ö~!~Õ¿ÿgÿ|¤Z6©â_øšßâ~‰ñZßCðþ“oÍýíìÏðÒâq£Éy=†çµ;{KÀ¶ÿàúþ¯ÿpÿ‚zÝj7 uqìóáý29]cB¶&©¬èÚ]¸¢)[M2ÂÎу#¤ ò¼’³È߯òWìû=ÜþÉß±7ì¡û5j- º×ÁÙ÷áGß\[ZÞ÷Åþðf‘cã BÜÛÉ4GÅê÷ÑySÜ&Ë…Ûq8ýóýk@Q@ʧüÉuâ‹/Øwö"½ðF›a¬øÒÓþ £û5ÝxCGÕn>ɦj¾(·øEûIË iº•ןkök íY--o.>ÓmäÛË$ž|;|Åí¿á©¿àêúF7ìÿ‰ ÿ?êÎÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5~EÿÁ<¾1Ád~#üKñ¾—ÿ"ý‘¿fÙçáu‡ÿ.ñ%ðy™#’êÛMÒt}&Â×zω­ÿ‚AÁ²þ%ý¡u‹ïÛ×þ 7}âO‹~6øÄß~2|?øU¬üA×5_ø†_¥·5mköœº½±V»Ôõ&Ðt >C¬˜ôí:M{KñC¥ÊÚiW÷¡ü/ð—‡>"ø³âna‡ˆ|cà?†¿µdµ†ÚÚÇþß…:·Ä_ÂQAoo e$´—â—ˆí‰ghÖÎ=>ÞáKrÑ( Š( Š( Š( Š( Š( ý ¾ü?ý¦þü[ýž>+Y_ê? ¾5ü=ñ_Ã?ZiZŒÚF«'‡"_øÓÁڜ־Uêjz„~ÏÊû4Ñ5üÿÁq>>Á|kÿ¹ý§ü3ûlþŸ²Á¿Ù‹Sÿ…+ÿ 3âGÂߌqø«Ç~ûíð—Pðgö‚¿¼Poÿ¶> ÚxSAÔñ¡_}—GÕ5 ßôaoöËr¿v?àèïùAGíÍÿvÍÿ­‡û>Ñ@¿ÔS]Ò4y$uŽ8ÕÝØ*"(,ÎìÄ*ª¨%˜’¯Ä?Ú;þÿ‚}|ñÞ±ðkáV§ñ{öåøû¢ùñj¿aŸ…ÚÏíâ-:î+ˆìE¶©â"]7áͼ‘_»ZjVV>1ÔõÍ*Kyâ¼Ñ–í¬í/?o¨¯æ3Qÿ‚ãÁNµÁ¡ð›þ Ïý¶üAáù™ÊÜüYø›Àïˆ Y­_ j<[} Òn’îÞk¨Í‹A 4“O<ðY_Ó?ཟ¶WßPý©?àðR…þlšÞ¿ðGK´Å®‰hf»/{rÖžø]g´6pÛÏ<ºŽ¡¥Å Ìïdò¶“߀L”WæŸìSÿvýo­RûÁ¿þ8ØAñ‡Ek˜|Iû?üRÑõ„ßt «3ê6Òü9ñÅ®“ªxt¸¡óumGÁoâJó#‡QÔ­®‹@¿¥”QEÆ|Gð|ÿ¾xóÀ6¾2ñŸÃ«Ÿx3Å·øƒðãRÓ´oˆ~ŸÄºö‹Œ¼«êúF¿¤é^3ðÄ—«­ø_RÕ4-kN±×,ln¯tJÚ)læþPµ/ø2ïþ …¬ê7ú¾¯ûEÿÁC5][U½ºÔµMSRø»û>_j:–£}<—W·÷÷·_²Ì·7—·—2Ëquuq,“ÜO$’Ë#ÈìÇúð¢€?—?Ù›þ $ÿ‚lþË´7Á?ÚSÁ?lïø×à7Äÿü[ðn…ñâÀÍWÁ—Þ,ð½eâ_ ŸéÚìåájîÂÓZÓ¬¯Z-3ÄEç›mC} .êþŒþ:| ø=ûLü'ñ¯À¿¿ü3ñ[á'ÄM+ûÆ>ñu€¿Ñµ‹8î`¿³˜x®ôíWHÔí,µ^Ò®luÏëº~®èZŽŸ«éöW°zÍùA¨Á'<3®ü0³×Šÿmÿø(/‹?e¦ÓÃW³Ž³ñŸá¬>Õ¼ ŽÆO‡:÷ƽàŽû^ø‡À7z:?‡õ k´Ž¡i©xvâãCÔ Î›'ÙÇèÿ¯…_ þ|9ðoÂ/„ ðï߆_t/ ø/Á>Ó`Òtèzz·²°²·UUÜÍ%ÅÕ̦[»ûÙîoïî.onn.%ô (áïÚ[þ ýð3ö–ø™ðÿãõΣñà—í=ð«J¼ðçÃïÚö~ñ=Ÿ€¾4h¾Ôe¹º¿ðµ¨jz'Š<ñáÝÍõåÖ£ÿ ÿâ·‚üuàëmFîþöËD¶¸Õ5W¾â¼ÿÒøIgñçÁ´ÿÇߊ¿lÿ ¡Ô"ø7ãoÚ{ÄotO‚óêê‘êúÏÂÏ„þüøáê°ÛØAã«?†ãy¢ÒôÏø¨•ìauý¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿ÿà¿_· ¿°/ü/ãOÆ/ üC½øuñ³ZÕ| àoÙßRÒ?²§×/>/ßø·K×ôÔ±Ó5’úf¯§iðç‰|Kâ­7PµÔ4ûï èºÕCttÛ°çþ õû[x{þ Ûû}þÂðHïØ—â=ÿ?fy¼Q£|ný©>(x.ÓP³°[;{[«Ý^ò)õ»H.aøOðµí[CkÈ[þ%ø‹ñÃZ*KsªizkìçöIýŒfoØ[àí—À_ÙWáF‡ð—áu¦¹y≼?¥ÝëÄú·Šµ}2×QñF¿®x“RÖuíwĶÚ.‘o.§ªjWWÚézu³AgagoòéÿzÁ?‡¨ýõÔm|âýgÆZN—¤Ýéú†µâ_ø~ÊÎyïM¥•Ïô/MtIã‘HäVGGPÈèÀ«#«¬¬¤†R A€?"ÿàˆðR?à¨?ðOÏ…ß´¸ÚU§ÆO Üê? ÿh J¸†HtÿŠž KTºÖ㵊;s§Ù|@ðÕ÷‡>"XéÂÝ`ÒÅè6×Ë£µìÿ®ÕüUÿÁ%¼àïø%ÿükÿÿ‚sxzM_Â?i߆øãû6ønöìYøwT¼Òt½;â¬>ðÖ›{swwª¯¼?ã_¾Òõxoíô¯…zÉÔmgfÓµJ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh ¸jÙ+âgíÃãÝGágÆßë_ÿa? G¤káWÂkžø‡û_kWúUµþ·¥ü`ñ߆%ѼCàÙÿïzþ? ¼­Yø£â–¹i­êÞ0ñ•àë?èº÷ؾ|ý›< ¦ü1ýŸ¾ü;ø3ðÿI޳ð—Ã_èžÑŒ[Åj/¯-t[;A©ê³Å fûXÔšïUÔfÝsyss$’¿ÀŸðUïø(o‡ÿàšÞýŽ~5üFñm·þøïöÙðÁoÚÄÒx;WñÅæ—ð§Å³÷íâÁ{¦hÞ±ÕÿdÛcK³ãçÂXñ®€Ö÷~øÕái.|ñóáf¹§4³è~"øeñ£ÂRé_<#©èZŒ‘êÖö:Ûhw…µ¹Ö4}RÕÕ÷¿e~Ò¿ ¼=â„´­>:iÛCµøCûFßÉe¦üMø¥à‹Ø5†“ñǺf§èÖÿü&m§ëþ;ðº[øc⎗«è^(FðçŠ?á-Ñm>°¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+øaÿ‚ˆ-ßüûþø ÿÜÓ®?·¿c¯ø'•´ß¿ik{6–ó@ñˆtÆð׈~-iZ´¶OoíMJïá¿ìÚ±Ï*_xW[Ô~ _éÓfæî ?p¿à¯_ðZφßðK{оñ…µ´ßõïÙ2ïâ·ì·¥‹g¸oübˆZ—Ãð¾°·1Y>‹ ^ë¾ñæ£+øðfñæ!©ÝÛi–ñ÷ü£ûø—àìgâïÛsã|÷ÿ´‡ü+ăâö¯­øfoÃð|^êºÃé/Í —ÿµ]wÄßu ÛFXõ­Åž ˆ.ttX€?¥Ÿ„ üð;áw ´xôü+ðƒ>x3HFóO🀠оßÙc¹Õu? üMøñ=¶“©êÛëZvu¥¶Ý<ê/ö%_Îïüû.xŸö›ÿ‚Cü`¾ðEÞ§ã٧ƾý¨ôk Íüšwä×|=ãËë7Kyî"›@øeãŸx“u¤–·/$ pVW¶¸ýÿ‚LþØöŸ··üÃöZý§¼ØÛÄ~8øoe£üDµ¬Z½ÍÄÿ]Ýøâw· xä¿ñO‡u-nÎ袽:N«¦ÜL®.y@?E(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh }ÿ‚¼~Èþýµcÿ‚r|ø‹ð—ľ Aÿð?Ž>7x{IÑõýOBÓ>øSöTý®ç·Ö~!^è»x{À7>=ºð?…µ[UºÓt«»ïi>}B;ïXC|'ð¿ÂÏØ³ö“HÔ>#~Ξ9øUñ_Pð/Åÿø«ÂÑÝêzŽì<yã)nüiá/kšÔ5™£Ð.n4Ûm'S¸ÐußjöçU¶þ“kù¹ý¹¿àß?…ÿµwüËŸðT~Ö¿~è_tj¾6øI௠FÚ®¬ÿôùcGðïÅX¼No¼áMÃöPXx»Â¶_|E¨êñÏâ7ÓµË üBÀöŸö"ø§ãޱì‰ñ·â£X|@øÅû0|ø§ã›·6eãˆ? |'âßZ=¡¶³6­m­j÷°µ¹´µ01h6ùKôýywÀÿü/ø£ðWáÄß‚7–Z‡Áˆ¿ ¼ã¿„7ún‡©øcN¾ø_âï é> ð 准µ½3EÖ|=esáMCIš×CÕô}'SÒ`xì/ôË «ymbõ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ʧüÉám?Ç?°ïìEà^kûm+ÆðUÙ¯ÂÚÆ•r,µK}?Ä¿i=&öm6ðÇ0´¿ŠÚîY,îLRˆ.9Lo³ií¿âßø'7ýïÛÿÿnÏÿÅN´W+àOéŸ|àßè³ê7Z7ü)áïé7ZÅоծtÏ éz-„ú¥êÅÞj3ZÙE%íÒÁ¸¹ieFbõTQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEVGˆ ý¢ntÛkËM;Cðˆ¬ü=â¿ |7‹ÄV~{Åaâu+o|aÖaƒû?Â_¼1ªi:ó\iÚ÷ˆ-ôàËO‹_4/ø8þ ñðQñÃOÇÿðLÏ‚Ÿ,ÿe_øŠÂÂûOðߌx#ã7Å­+RñGŠ,“MÖöür×þx£]ÑtY.-ŸðçFÒ4›»M?[Ô5)õ¯ô°°±Ò¬l´Í2ÊÓNÓtëK{ ?O°·†ÎÆÂÆÎ·´²²´·Híím-m㎠{x#Ž!"‰T~qÿÁ;¿à—Ÿ³oüÇöQøKû4ü=ð®™­ßx#\Ð~)xßâ%Ükÿ¿h+m×K×þ,ÝNn^îÂkµŠmAÑêK Áb×ÂanìRñïI袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(™ñ¯ƒ¼7ñÁ¾-øã-*Û]ð‡Ž¼3¯x;Åzà-i¬øoÄúUÞ‰®éWJ¥Y­µ.úêÒp¤Ìšþ\¿àÐ=wO´ÿ‚nümø4ÚË_ø‹à?í¿ñ³Àú¾Ÿw ­†£kauá†Ú¾—ªÿdGyw}c¦k7×ò[6 VC«éšý„/q™ç¿õg_Æ?ü_Vðü÷þ.ÿ‚°ÿÁ>O…õ xcöÓô7Àé®#+açxOKñoÆ ¼9¢¡»¸Ý Í üjø‘z¯+@Ÿ #Ó.£¶¹ÝÙÅQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@WÂðPø'·Áoø)GÁ ü øí⟌ð…>'è¿4íKà§Ž¢ø}â©üG¡xSÆž´±Ô5™tMyn¼?.™ã½^{­0YÆÓj6ÚUعAdb˜ó·þŽÿ”~Üß÷lßúسíøOÿÄÿƒ{bÏØwþ sûOþÔ ~)~×þ#øƒðÃþ¯ü#ú7Å/Ž–Þ2ð%çü&¿´?Â_‡z¯öï†ãðVú—ÙôOêWzf5 ±ëi÷çͦ Jþõ«À?kmû5~Ë´·íºdzÛ|ýŸþ2|k]a!‡Wo…¼G㡦J"žÖSùÐE«ˆ®mä+) <-‰ßë†ø¡£øÄ? >"h£Ò&ø]®xź?ƼC{ý› KàO@Ô,¼c¹¨‹‹3a¤?‡gÔWR½û]¯ÙlŒóý¢/ÍPäíà†_ð[oÚ.oŒ¿´üûHþÏß)ò4_cûT›þùv7³¿ö¯·û>ãšøgÿ~³î¡â€;ðÏí?ûIxàüÃÀß ¿iÿ†¾ø}e«ügð¦åéúµâï|Dø­àkÝ3WµÒa‡OÔ¼i©|DÔ,eñ—ü+χI¯Â)£÷^5ÿƒÔ?à›7> ñm¿‚>þÝÐøÒ ëÐøB]cáÏìù¦é1x¢]*í4 5MFÛö“ñ͆œš«Z5íí¾ƒ­Ïkl%ž-#R’5²˜ú3ÿ‚YiZž…ÿÅÿ‚rèšÞ›£ë:?ìû!iZ¾‘ªÙÜiú¦•©éÿ³ïÃÛKý7R°»Ž»û¸eµ¼³ºŠ+‹kˆ¤†hÒDexWÆÿðN¯‰6øÉÿúý…>/|K×î|Wñâ§ìoû1|Høâ›È,­nüKão|ðG‰üW¯ÝZé–¶ZuµÎ±®ê—úŒðiöV–PËrÑÚÚÛÀ±ÄŸdPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@œðVø(_ƒ?à˜°ÿÅŸÚ«ÄÖ¶ï‰tXlüðÀ÷÷rÙ'ÄŒ^-[«ødÏSL¶©iªx³Ä­ ‹ˆ|!áÜZ±º†Áßø6#þ w㟠hž"ÿ‚À~ØwÞ+ñíwûe[xçÄþ·ñ¥¾™=Γð³â–³¡x­~*^5ŤÚÅ—þ,Ïi¨jútöwº}·Ã/éÖgOoí»ˆlþDÿ‚‡x’ÿþ ïÿÖø7ÿËðÅίûþÀZö³ãÚ“Äz4î4ßx«Ã7–ß#:žžf²¹‡RþÄý›ü+µÁ°ñe÷Ž|Ie<ÚMÓKiý×éºn£iÖF‘ae¥i:U•®›¥ézm¬:v›§XÁ­•……•¬q[YÙYÛE½­­¼QÁoqÅi*€ ´QEQEQEQEQEQEQEQEQEühÿÁÐÿ µÙ«öŠÿ‚`ÿÁb¾ߨh¾7ýŸÿho|ø•6¤ˆú~«àËÍs_ø¥à9uYe{{];ÃvX|gð¯‹.îgIní~"è±Ú^ériÂyÿ²êþyàéoƒzgÅÏø"çí5©^ÝÍi¨ü×>|dðñŠÒÞî;OCø xNþÒäKÏo Ç…ükâ$[»m®-î>ÎóK6öë+°èjŠø“þ ­ñ§Oý¢?àŸ±Æ}?Ä÷~2“ÇŸ³GÁÝG\ñ&£/Ÿªj^1²ð>£øëûf_2]úå§ŒôÝzÇ[ýì„jÖ·Š]ÈÜ~Û Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþÏ´QÿGÊ ?noû¶oýl?ÙöŠýþ¯š?m„~'ý ?c¯ÚÇà?‚o×JñŸÆÏÙ£ã¿Â?êqö4Ó|Oñ#áoм _½ß›ÙVÏUÖm.ã·È™|ØöïK×Íÿ¶O†ø‡û,i¶ºO…~!þÎ^5ðýµžâ†ß¾Ä-µïøƒÃz¬_ÙÒkZ­ƒZxÆÌéÞ.Ñ5Añ‘­ê?S|[_·ÂŸ‰Ëã÷Xüß|h¾6‘ÆžR?Ÿ êCÄŽãVI4¢«£Öa©#éäöÄk0äWá—üAû/þÒ~ü_ý¶ÿjßø)Œ¿iÏ|øo©üY“ÄŸ¾Ï?…ü[©øfËZ×| §Z|MøñÆš6•àíkTÔ´KmYñ†¯sk5µÌ’ÉÓË nñ÷üiÿÚ°ð/o¼ñçöð—Æ–^ñß„"Õ|{ð ^Ó$ñE¾y7‡ãÔ´=3ölðþ£¬Ø>¬–‹y¤éúö‰{¨Û™,í5}6y£¼„úsý€`øOmû~Åßo _üM]!>$_|'‹àçƒcøuyñ<=kc 'î|º<Þ+]ÊÏH]yïÆ›kod ‰>·¯Š?àš¾ ñwÃOø'7ìðãâ‡5x÷áÿìQû+x'ÆÞñ ”Ún¿áoxSà_4/xs\Ó®U.4ý_CÖl/tÍJÊtI­omg‚UW€û^€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùîÿƒ‹ÿૺ‡üSö7ø5©«~×ÿµ,Ú¿ÂzlÞˆ¼c5¤v¾4øÉ§é0$×W—þ ƒTÓtŸFc0Éñ Ä~»–ßUÓ´[K¹ýíñ—Œ<-ðóÂ+ñÿŽ5í3¾ ð7†õÏxÃÄúÝÔv:7‡<-á.ëZñ½«ÞÊDVzf¤Ù]ê÷R‘½­¼²¹ „×ð¹ÿÄðˆÿ࿟ðZ‹ßðV/‹ú.§'ìcûx“KðOìàïZ1Ó5/xbk[á&™.ŸtóE§á(µ9ÿhCo+M¥üFñW€ôüÝhw @¹?ðnÿüŠ÷þ “ûMªü\´ûGísûP^èß¿hmFø‹­c»,n%ð_ SíwƒR“ÀQkZî£â-Ae¶øïÅ~,òî¯ôË]"qûýEQEQEQEQEQEQEQEQEQEWŒþÑü!ûL|øÓûŸRµ‚I!ÿ‰Ž“öõÔô¹ãžÚâ×Q´µºµº¶¹†+ˆýšŠþMàÒß|Rð_ì×ûgÁ?~0Å¿ðO¯ÚÿÇ? a‰UZÃE°ñf©â×ü7§]-ÌŸj¶¶ø«à"Y¼HÉâ˜äŽâí% oýeWò¯ÿ<ñ[xþ ÿÿ|ñŸö_ˆ¯¿jo‡ßt;iä…o5 ëÏÆHæ¿û9ŸÍ6CNñõIá†Dò¼B«y%´iÿÕEQEQEQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´PÝßÿnÛ/Øûã‚è?µÞƒ§|1ý–>%\è_¿kËIo¤øSàÿO¦iZn±ð“ö¢Õ®ËÚüñ·âŸí cáĽRK…~0еKêZ¯‡|2Õ­fš´¼7V:îyì“ÚEt–0~ý|wý¡þþËÿµ‹´Gůüøm¡©þÐñÄ?éžÒMÏ“4ðé–jÅ6±®_$®™ ißkZ´ê-´Ë »–H›È¿d_ÚâgíE¢ø·ã&§ðƒWø=ðÄShq~ÍÖŸôý[Ãß>#x^Ôk-¯ü_ñçoÄMðÛÁÞ:k¿ÂokvÖÿWÚeÿ‹üom£¿Œ4o xwâÙ‹þ‡û:ü!øáïÚ/ö™ø­ñïþ 'ûRx^åµ üeý³üJÿ‚ŽþÜßµ‡ü×ö¦Ò÷ßx“Æþ1øYû)øwQF¹µð‚ˤÚxw]Ô|+,¢]áo‹+à†õh¢š=zçYø>¥+øƒO¼º—ûx Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ä“ÀšL¿³üõñSKÓüËmöûÿ‚{ÚxæãJmBóû:MsÂiáý4ëÐiÐ:ÚU.ÿeÿÅ —ñÎÖÐx—Ä’ÚIö§”­ºþE൞!Ó¿eŸø.ÿüoöÁ»Ô&ðæ™ñ\ø›û.øßÄCs=¼~Ô5Ý Â¶zv¸£M1í1â Äy®.<˜àÔuX¬dm„ß×UQEQEQEQEQEQEQEQEQEQEQEQ_ ÿÁAÿà¡?¿àšÿ<3ñÏã·…¾0x»Â>+øŸ¢ü'Ó´ß‚ž‹âŠ ñ»áOxÂÒûPÑ¥ÖôµðüZg5x.µ1y#C¨ÜéV‚ÙÅé–Îßø:;þPQûsݳëaþÏ´Wá?üþý‹?n/ø%Ïí?û.|%ø[û_øsâÄÿøR¿ðë?¾Ûx7À–ð…~Ðÿ ~"j¿Û¾$ƺ»é¿hÑ<%©Zi˜Óî>Ù¬O§Ø(]â(ûÖ¢Šåüqãoü4ðWŒ>#ü@ñ‘àïü?ð¿ˆ"[êzïÁZ™ÊÜ­¯Á/Š_e[&ûUÂ[¬s¬?Í—€à¸ðWÿø)o…|/£Á)¿à™w>ÑuOé6þ0ý°?këöÓ>izüú=¿ü$W^²¶›ÂÞñöF«!ŸL“H×¾'jwwZ}Ö¯ðÊÊÞf‚½£ÁðnWÄÏÚ§Äz'Åø-§üãgíÙâëNmzÙóáçˆuo„ß²×…õ ÙÖK/IÑ­¼?©\Ú:I4Ÿoð†>]–ßN¹µ»³±/|ýSQ_¾?ý—>%þÃú~?ý‡¿iOhz –£ka£~Ä?µÅKÿ‰³çÅ^íf:Â߃Ÿ~&Ýxƒã‡Àˆ)hîm|ká/xÃá¾¶-­®> ÝYÏy{múOð3âÿ„¿hO‚¾>xß·~8|,ø}ñÁgU¶[=PøKâ_„´øpêV‰,ék~t}jÌÞ[$ó,dK,CS¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5/?ðuüšoüßþÒíû'êµý¢kú† Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+áïø)í­àßø'ŸìQñÿöµñƒéÓÉð»ÁÒøÃÚ“1‹ÆŸõÖMáƒ>ÏåõÍ·ˆ)ðÏ‚ô?x’{?ZÞΩq¦xƒâ¿õxËUº°e¶Ö¼/‚cv{[‹ÛFþ¼¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(çÛᎩñ³öEýª> èvš®µñsöqøáðÇGÒïÀ6:–©ã߆^'ð®ŸazYM¥åÞ­ ½Àe`a‘ÁR8?…ÿði¯í Æø#ÿ߇·K ¿‰¿eŸŠÿ¾x†Ðƒo¨4rø…~/xzòòÁã†Ku]â­–ƒÂÆÑ^]xzÿ|ï¨Á©Gô½_ÊÏü?o€>$Ám?gëMáÍcáOü⦩>ž«é–º‹/¼E xnÇM1»ùÛ[|:»¸†T-m6›}¦Mm$©#ýSQEQEQEQEQEQEQEQEQEQEQEQEøÿGÊ ?noû¶oýl?ÙöŠ?àèïùAGíÍÿvÍÿ­‡û>Ñ@¿Õñ¿ü:÷á¿ì-û[i¿eø‘Á¯þÏÿþüDOƒzLïÅÛÏüXð¶£ðÊçKø[¤ÞišÎyñW—Űé~ M_K¾ÑÄwšlÚä ¤GzGÙóíµyð§JýŽ¿jm㞟©ê|)û>ü]ñ§Ä»] úëJñ ø7Á^×üGð‡…4ý"ßHд_x7NšçIÐïítí>ÜE‰su OdÖ·º ÕÎsc<ŸGÞ^Ziö—W÷÷VÖ66ÓÞ^ÞÞOµ¥¥´M5ÍÕÕÌÌÛÛ[Â,óÊéQ#I#*)#øñ‹þ 7ÿþÒ~ý¤þ*ÿÁh¼Mû2|SÔt«-Fýœþ/Œäøià4“M‰ôOxÿIð¡ðÓág‹|E¦À-l¿ñჼ[¬Íqs!2\M.£«Ü¼³ÈKÍ#4ŽK1 ¬(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ _ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯á·þ Õñ+ÄðVÏø*_ìoÿ1ø â9'øyà_i¿?lørhµ_ j°i7—úìWíäVM¨üø37ˆõ }2òîÎ=KâÄ'ÂW2Úkºl+ô=ÿ©ÿ‚£ø7þ Kûx»ãlçLÖ¾5øÑ®þþξ’)‰þ'ê:|ÒÁ®ê¶tW3ø+áýž|Uã b1%Äúw†£¼³Õ<¶’óÀßþøçá_Œí!1 ®¼'ñ ç„|Emž)àO£ê÷‘!š ¢ ÃÌŠDÊH¯ ý¨¾!x÷áìÍûE|VøUàõø…ñCáÀ¯‹Ÿ¾øÒæDñÇ|àx“Áþt²+xëâoéºvŠÉhËrÂôˆ”¡ åßTñ¿ü±û0x‡Iý”~üýÿlŸ‡ZøF ×âð~¡ /‹oîüFÚ½‡éþ·¬Xx{FÕõýRVƒLÐôËýcQ™"’g†ÃLµ–öòT†%yehíà‘Ö(Õ¤€ˆ¬Äüšüÿ‚žü@øCû%øþµ ~Î?-¿à®? ~ 蟱'‚|>ëgàÒé¾ð]¯ÂOþÙ·¿&™|øEðGÂŒÍáoƒŸ <ð«ÃL𥻶ð÷šO„tfx#gŽ:v‘lZÝ’2J#2¨&ƒ<ñïáÂ¯ŽŸ 5cáÇÆ†þø±ðÿV¼Ó¯t‹½SÁ?|1¥øÃš֓©Ãm¨éw7º±as>¨[Á{e,­mu SÅ"/¤PEPEPEPEPEPEPEPò§ÿrÃ⻟Øsö#·ðÞ“aã‰ÿળd> ¾×–gЬ¼W/ÂÚM<;w­%½µíÃé6Ú»Yͨ¬ws5šL"¶ÊÄý7ü)Oø;“þŽ÷þ ÿ„ÏÆ/þ…ú?àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @¯ ñ·ümñóEÔ> [øSÃÐxêÿË:xzûÆ1iqøžóAK«[¤Ñnuµ¾›K[›+9ÖÅàZÛÈ$ꨢ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ¡ªêºf…¦jZÞ·©Xhú6ayªêú¾«yo§éšV™§ÛÉw©jW÷rCicaci ·W——RÅomo“M"FŒÂýÿðu'üã‚´O?ðKÙÄk{ûA~Þð¿€> ø#G³´oÜ|5ø•ã?xÀZ‘â)õmÿ‚b~ÄŸ ¿eÏ &™¨x«L°/ø×ã}6#¾5ø–ÊÁ¼sâ²÷ —O¦C-—†<'Ò%Í‚ü;áÍ>ä5ͬòËú?@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@(ßðw熭-à?>:ÛihñOìñûnüñ¾•©Û\ŧj–ú>¥á¯ˆZN­¤Zê¤=ÖŸm¬kð‰]M5…½ÕÔWú.“wöv‚Îf_êæ¿%¿àºß³r~ÕðIoÛ‡áT6ßë¶?uOŠÞS¹»ÅŸµ ;ãŸq9SgsªËà—Ð'š #–m7W¿°c,“ÛÌú“á?h~8ð¯†|ká‹åÔü5âÿèÞ(ðö¤‘Ëjˆ4ëm[I¾H§Hænì.íçXæ%A Y\~0ÿÁ½´,ÿ´§üßö ñûßɬø/á`ø¬Ë¨Æââëà&·ª|$±¼3}¦ìÞ­þ…á"ÿíÒL'º’æI.¡·º3AìõQEQEQEQEQEQEQEQEQEQEðoü?ÂÿðQoüðÆ›ÿÉøû9ü0øóÅ÷źÿí;câ]CÀWŸ£ðŸ ×´}" xâ ¾/¸ñ•Ï€ol%›Eµ³]O×ÒMR ÞÞÒ÷ï*(øÿ‚ßü/ÿƒŠü;ÿ½ý§uŸÛ·öŽÿ‚sxóöT³ÿ…-ÿ OÂô?‰Vµ_´~п ­|ÿ­Ïˆ>ø3Hì?çð†¥®}¯Äºnÿ ÙëÁöË–†Âè¯ÞOø:;þPQûsݳëaþÏ´Pïõ|ãûcx‹â?ƒÿd_ڣſ5«¿ ü]ð¿ìãñÃÄ_ üEa¡i)¾Ð>#èŸ ¼O©øZ²ðοcªh>"»ÒüOk¥ß[èZÞ™¨é¼Ð&Ÿ©XÝÙÜMo'ÑÕ™­ëZG†ôm_Ä^ Ôì4M@Ó/õ­sYÕn¡°Ó4#Jµ–ûRÔõ+ë—ŽÞÎÂÂÊ îï.®$Ž{x¤šWXјÿ±§üwþiŸá—‚?h¯…ŸðTÙçàL_´Oƒ¼;ñ®÷àÝÇÃ? ?ƒü!{ñKE·ñ•ÌS|Óÿf[ÿ‚ñ­×ö÷Úüu/€¼-ko}â×ÔofÕõÛ¤Mjçèï‹ß°ßüoyð›â…¦¹ÿ}ý•|I¢]|;ñµ¶±áÝà'Ã? jÚö—?†µ8µ Kñ&ûéÚ¿‡µRѦ±²×4­BÇRÒngŠþÆòÖêÞ)Ósöÿ‚ÛÿÁ]¾&|2ø³ûWÁ8?à™Þ OØ'àßÃßü\—ö¢ý³uëŸÞ|`øQð×Eñ‰¼AñáŸÁý?â§Áÿ§†õŸøwPÕüöCÇSkTW×cMÔ5ë-Ûú/ýªþ&|ø# é¿þxGÁ~|8Ó¼CâÚálöÚö›ñ§Wð-Œ6W·~0øâÈ5¹|!{âoè¶ž!×.¾x¯Á­7Åuš‡~#xYµ·‡Ä@wÿ©³»Óÿà—¿ðMÛ û[›ûØ#ö=³½²¼‚[k»;»oÙëáÜ76·VÓ*Moso2%Ð|gá¿xÃÂÚ¥¦¹áèzO‰|9­X9–ÇXÐuÛ }SHÕ,¤!L–š†ŸuownåT¼3#3ŠÜ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<“ãßdž߳GÁoŠþ0x‚ ü1øAà­{Ǿ4Ö¦1—¶Ñ|?c-ìðXÁ,° í_Q‘"Ó4M.9çVÖ/,tË@÷Wp£?ðoOÀÁPÿooÚÏþ ÇûXø?ív7Ÿ5?þÇþñE²ëO„ï´Ø­ìŸYð±Ôã(Ñüð¿…þx_Äzu¿Ùo¼]¬xëW‰ìüQ O$u?à¿´¿ÆOø*§íáð‡þ ûk º<>-Ðø£ðÃà߯þ ëûVü2ñ¿ì}ãoxá·Æ/ƒôÙãÇþÕ¾'½~óK×®¡ð÷‰ì§ðŸ‡n¼9§j>¨¶¶¶ºlæìIcÞ·ü÷ö8ý•¾ëxSãGÂï´gmƒgoÙ£áŒü5ñGâÆO‹þ*Døyá[Ox?WÔµ;ê¾)¼Óm5ßjɧèºu„“EÝÞµq¥hú‰ÿÁBàݯø&wüƒâ¡ñ‹â×Ãïü+øÓ®ª¯‹>,þÏ~)Ó<âÉ0[ÚßxÇH×¼3ã_ø‡\µ‚€xšûÁâkËQ ž§¬_ÙØé¶öT?bø!üþ &Þ%ý¤>xÅ~=øŸðïÂ'ñ|pý ¼]¢øËÆ~Ð4­Q¼ñÇ…VËBð?Ã^ÜèÉ}g}â+ÂZF´4©ï4ûv-"ïP·œõ'ö4ø=¯~Ï?±ÿì§ðÅ7ëªøŸàwìÙð3à÷ˆõD˜\&¥¯|3øaáê÷ép„ëy¨h— 0f‰†;²~“¯ý›þ6è´¿ìïðö𮓫èý > ü-øÛá½ Ä?bþ‹ |Vð>…ã½I×›u{§kéºv½og©}‚òîËí°Ïö[©àòåh Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ü–ÿ‚ÒÿÁM¼%ÿ±ý‡~!üu’÷E½øÕâ{k¯‡ß³wõ)-§—Å_µ»9cÓu{­K›{GÂmšOxÔÄðÅ&•¦C ­å¶­â-.?U/uíMÒ5?j:Εa è–Ú­æ³­Þê6vºF‘i¡}§ûnëSÔ§š;; mìWŸÚ³ÝMZÙ.~ÖÐùìþ¾økPÿƒžàµþ)øëã;SÕà–ðO‹¸ôøoUŠëOѾ&Ê/d›AÑ”Ãn‰uñ»Æø“ñÞV‹SÓ¾è>ð­qc¨ÝhÒ€~µÿÁ°?ðLï~̳ŠÿoÚR×QÕlÛæGø—âoÅ/<þ.ðÏÁßjCÆ~Òµ¦»ŒOk⿉úí俼y—[‹à#Xµ´Ö¼)yþ¤é¨‰$q¢Çj¨ˆŠTEPUTªS¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùý´õ/öhÿƒ¯ÿàšŸîô};Mð§íiû&xŸà»®Nn]Câ=µÇÆF¼·•îÖÙµYnu?‚^6þW“ý•q˜íäÔn"œ]ü†ÿÁØ–ñ|Òà”ß·õ®Ÿ`š¯ì“ÿð$’ëë¦Éªjö:~¨–? „éÉ,6ú¦5Ùú)f´¾uΠö6vsÛk^‹ë‡GÕô¯i:^½¡j6ZƉ­éÖZ¾«i·1^iÚ¦•©[E{§ê6p3Áue{i476·0»Å<Ç,lÈÊHQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûý_2~Úÿücðö4ý­¾9|<°]SâÁÙ“ã×ÅihoÓQñï…~+ñ†lÄ[ݛŻִ{+v´·&àHaóoòÛéºðÚÇâ5ÇÁßÙcö–ø¹iàÍâ5×ÂÏÙÿã'Äko‡¾#»KxòãÁ¼Gâh|¯_ËaªÇe¢ø¢M1tMRîM/RKkéæ{ ÅCo òócÿŠ~É´N¦|hý¯¿nßÛ‡öŒý >"iÖ~+ñ÷ÅÏ |HøIcá?jšü ¬Ü]øN×Ç~&x‚? ½ÕýÔÚâ™mÛMžÙ­tý6"-SÅÿðeoüb ø¢o|wý»§ñ”^Öäð”ÇÄ¿ÙâïI›Äɦܶƒ©kì× És§Iª‹D½·MwEy­Œ±®­§3 È~uý‘¿hŸø:+¿ |â_Øþ ½ðÃTý‹¼yà­Åÿ³wÂßÚ§ãçÁŸˆúÇ¿†~(´ƒ^ð¿‡|âÙ¿h?ÙãB|9°Ò.í øuáoŒz‰¼EáK¦ø~ fëFÓô8tÿnø­ûfÿÁáPü.ø“7‰à–Ÿ±áؼã uý{Â~2ðv»â­EÃڋ꺿†tK?ø(wŠnõi¶"{ÍJµðLjîu FkH4-^Y—O¸þŸ?àžß |wð;öý‡¾ |Rпáø›ðö@ýš~üEðÏöž­ÿÂ;㿇ÿüá?h_Û>Ô5êÿÙ Ò5 ?ûOBÕu=ÿìÿjÓ5 Û)`¹—ëúø'þ Syw¨Á/à›·÷÷W7×÷ß°Gì{y{{y<·7w—w?³×ù®n®®fgšâæâgygžWye•ÚI‰?{PEPEPEPEPEPEPEPòãÿ^]ÚØ~Ȱõõͽ••—ü»öU»¼¼»š;k[K[o†?´\×772C¼£Ë4ÒºGhÎ쪤èþ÷öMÿ£ ýÿðõü5ÿæš¿ž?ø;kÃ:boØkÁ¾&²þÓðߋ૳7†|A¦ý¦îÏûCC×¾þÒ:V­eöÍ>âÒþÓívw}¦ÊêÚî3Ͷ¸†dIêoø…ÇþQÿF3ÿ›3ûaÿôAPïµå¦¡ikaum}a}må•íœñ\Ú^Z\ij[]ZÜÂÏ ÅµÄ.’Á£=žŸw ”S5Ì–ÖWs¤M´Î|ûk~Á_²wüKáfðSöÅøSÿ ƒá—…þ i_´/ ÿÂuñ'áÿØ|w¢xsÅ~Ó5ßퟅ¾1ðOˆ.~ÍáÿxŸOþ̼Õn4y¿´þÕq§Ë{e§ÜÚ~-ÁÌ_´wìõãÏø"?í­á?|xø3ã?ê¿ðÎÙ~ðŸÅx‹Ä—Øko€Ú•ïØ4m\¼Ôo>ǧYÝßÝ}žÚO³ÙZÜÝM²%‘Jüçÿ‚õÁà“ß±wü{ö¬ý¥ÿfÙOþ¯Æß†¿ð£?á ñ¯ü/?ÚKÆ?Ø¿ð˜þÒ|â?ø§<ñ‹Å^Ô´|%â­{Iÿ‰¶ƒö?·ý¾Ã캭•í¹@Ûås¾/ðLJ¾hô-N°¾aÝΣ¨Ço¢ØêW¶ÀûðŸÀ¾|,øiðÇá&•§h_ ~|?ðo€þhz=õΩ¤èß¼!áÍ7ÃÞ Ò´½JòóQ»Ôtí;Úv›ie}u¨_\ÝÛCÄ÷—2ÈÓ¿ WË?°Ï€ü{ð¯ö&ý>|T’æ_Š?eŸÙ÷À%¼v’îOøCá/„|=ã .¤r^K—ñ¨´îä³JY˜’M}M@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüþßÞ3ñGüiÿ—øqÿØø+âVø'Çì9â+ß~Ó?ðÕâø£ÄÞÔ$Ðþ%øŸGñƒ^Ø^ê7It¿> ݯÛWÕ¾ x÷NPð…î¥=·íŸüÿR¾ÿ‚w~Æð­> ê“?í}û]¶±ð§à¦Ÿ¡ù×>&ðo‡níbÓ¼}ñfÂÊÌý±u=ÛWÓ¼5àCo&øƒâ} R±´Ôí<;®A¨ÿÁ¾ŸðJË_ø%ïì9 èþ<Ñm!ýª>?6™ñKö“ÖXA>¥¥ë3ÚÜ7ƒ~.¡”ͦ|+Ðõôû¸ÒîòÊçÇzÇ5Ý>àØkV°À÷ÏÃÙ?Â_kí_âÏÃoh¾ ð¯ûüý›4Ý'ÃV¶Ún‰¢éß³çÄ_‰š¿‚ô84›Qv±Øxgâ«izdþYyt­ßNóL=´QýÃEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWò9ÿM'ÆÙÿÄðKø)ïÃ/†šÄo Á<ÿiø£âœ׆ÇF°Ð>%ø‡àŠè6~,½³µ¹Õ4mÆçÃñà?"M¦húï‹tË ÛBï_Ó-%þ¸ëç_ÚÛö\øOûjþÍ¿¿eŽ]Þ«ðÃãWƒ¯<%âEÓf‚ÛYÒfûE¶«áïxvêîÖúÎÓÅ ñ>›¢ø¿Â×—º~£ciâL¹½Ó¯íbšÎ`·öøÍá?Ú/à_Áß¾¹¶ºðƆ^øŸáÉ-o¢Ôb‹Jñ¿‡4ïZÙµì1“\Ø&¡öÌÁo$wvóÅ5½¼É$1úí?ðA‰Ÿ¿à–ÿðSŸÚþ'ûQ|u‡âGtO ÃãïÙ/U‹@·Ðü'¬kšÿ…ô?‹š¬Ô|Uqcâëñ'€µ»ëKáþ‘?|5£|Cð‡ít=^ag®øƒûv Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Àø:;þPQûsݳëaþÏ´QÿGÊ ?noû¶oýl?ÙöŠýþ¢Š(ùlÿ‚†Á¬³í{ñcâ7ÇoÙËãçÄߨcâWÆŸí©>4é_ô8üiðwâEÿˆLͯjÚ§Ã8|WðòöÂ÷ÄÒÞj3x·OÓ¼k…5û‹ÙïßÃ6š¥î³«u¿ðOOø6Kötý‘~3x;ö•ý¥ÿh/Šÿ·çǯ†wpj_ uŸŒ6RèŸ ¾ë¶“ ›èŸµüDÔ¯¼Q¤\¤Wš ߈|u¬èú§®½¦hVþ#Ó´gNþ™¨ Š( Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ òï¿þþο¾#|tøÅâ­;Á? þxC[ñÇüOªJ±Ûizƒg%åÓE|ÛíFì¢XèúMšÍ¨ë:µÕ–“¦[Ýj¶Öòú ßð\ÚWâ×ü[þ ðÃþ7ûx‚hþø#ƶþ(ýµ¾*é/wá›=WÁ·7Úý–¾tÖK[Ï|ŠxßPÓ5 Å´ñWÇÍOà J×ü%¤^߀bÿÁ"~üOÿ‚ðÁU¾%ÿÁj?jŸ kšGì»û9x¶×¿±—ÂßB“è·!ð­Æ¡uà Êæ ¶«iðWí‹ñÇ”_ÙúÿÆïißdº¸Ò´x~ßûïý–¿f„¿±×ìùð£öføáåð×Âïƒþ±ðŸ†lÖkë±’ëUñ¹x3©x“ÅÕÖ£â?j>¥®êš…ë$~–¾û@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Æ×ü…ðfÿàmÏìÿƒøE$Ú/ÆÿÙ ãï€þx—PÒÞ;}GÄŸ/µ­câW-ï.ï-õ °ðŸ´_hQØO¦ÝZjVß5ÄÕíu+xìëûð·Š<;ã xsÆžÖ´ïxOÅú‘â ø‹GºŽ÷I×¼;¯éöú¶‰­iw³Cw§jšmݵõ•ÔLÑÜ[O¨Å\üÞÿ‚Ï~Í? ÿjÏø&í£ðÏâeŸ§è¿> üY𮩠0I©xcâÁß êüâ.I”´2A®xvÞÃTH%¶—Sðæ£­èr\ÅkªÜòü/ñ×Âÿ?àŒÿ²u¾‰ã9¼aâ‚¶0øñ +Û›«GÂ(ðWŠõ-OCðeë]3¼Pé_ |KðöïA¶‰ÚÖÛºžƒ ªÃ%¼@½ôQEQEQEQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´PïõWÊÿ·O‰~&ø3ö$ý±|aðSíÿð¹|)û+þО%øIý”®úŸü,Ý á'‹µOÿf¤rÀïÿ U®•ö5Iáv¸òÂË!ÔâOü?öø3âýSáïÆÛ›ö;øSãíC·à‰?´×Á_ø¿G˜<‘µO x£ÆÚ^µ§È$ŠXÊ]ÙBÁã‘ÜŒŽø×þ ÿºð§ƒ|[â‹Oø(·ì#¯ÝøoÃ:ö¿k¡hÿµÇÀ_VÖ®4}*ïQ‡IÒôÇ:žµªj:Œ–Ëge§in¡ª^Ü͵…Ýܱ[Éù‰û?ÿÁ²ðCŸüøqãWàω¿jkψðÿ[ö‚ñwíûDéÚßÅ•ñŽ‘gâñÌö~,ø?°Gâ·rì´9ü¥ÕíôÊnºñÇüÛÿ?›Á^0‡Ãÿ±Ä>×¥ð¿ˆ"Ñ=¹ðí®­5¦Ÿ6©m¢M¯¾›£-…”·±[-Ì––Ï)…>ˆ¯’?`†·?aØ£àõÿŠüãËÿ…²GìßðÖ÷Ç µÙ|Qð߯w~ø9àß Üø¯á÷‰¦°Ò¦ñ‚ÐèüÞOø%§üZI¤’OØ ö8wwbÎîß³·Ã–gvbY™˜’ÌI$’I$×çŸü3öïø·ðg[ýˆ¿àŸ_²çަøeûJÁIþ>øwàÐø¹¥ý¼Eð7à|þ%ðdž>$üGð¬·-äéž9‘üc§Zx?Th.¯-,ôßßøvüW¦èW–Ÿ¡_ðIßùE—üOþÌö7ÿÖuøs_̯üÃÄZµÏüoÿbðœ×,ú‰ð“áOˆ´ë2_d·Š>5~Óznµr ±@×v~Ðbr¨®E’g @è+Vÿ‚+Á>[álž ðoÁ{O‡,ô3oá¿ÚÿÂz¾¹§þÙÚŒíìR-'âTß´ý¶§mñ“Ä>(Óµ{{?Ki¯øÂûÃZ¥õ°³Ô49twm:¾uÿ‚ÿÁC>)þÚ?>7|ý¥õÛ/þÖŸ°oÆÿþÍŸ|]ciib¿¬tCYÒ| ñ>öÖÂææÎkÄßð‹x§EñÙùVZŽ»á-G\´Ž(ue¶·ýé¯â[þ ßñ¥cÿÕÿƒ†¼k"Å k?´ŸÆ¿ÞÙ§˜ˆÚ—„ÿl/ZV‹"F’-¸[k/ë‘.øD`’Útœí¿ÙÛâNŸÿÁÿ‚˜~ݾø³¨^øŸþ áÿÜñ7‡>ü3ýž­µ­CLøwûBüy×oýœÿhoß59<-y£ðgD½Ñþxoâ†ðñ‡Äڃ᷋<á?j#Ä>ˆ<áëíÁ^¶»ñ¶Õ'ÖþÉ ÝÄÿÙº]ôßf1ÆòÇúý@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@W”|uøÝðÓömø9ñ/ã߯OZx?áwÂOk~9ñ¿ˆ¯tÓô- ÎK»‘ml™ŸPÔïY#Óô}*Ñd¾Õõk«-.Âïnà…À?¿àáßø+bÁ1dÐ>jpÜþØ´Âë?¿gíÌ‹½gÁÖòÚ-Ÿ‹~5>˜±Ng_G©iö^µ¸ŠHõoˆZ߆ãk WFÓ|I ¿7ÿçÿÁ$n¿àœ_²¬ÿþ8i÷·¶·í]m¦|@øé¨xM߉~èׯMcÃ_¦Ô®škù5]%ï¥ñÄ«‰§iµˆzž£c<ú•†4;çü\ÿ‚;|ø›ÿÛÿ‚›üRÿ‚Ú~Øþ»ösøã˜ü!ûü!ñoy¢'ˆ|y>­ðóIÓÎØ¬µ/ü·Ô ñŸ‰õ;[htÿüwñ/ö´%¢ÑüW ¯÷—@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ï,í5 K« û[kë ëiìïl¯ ŠæÒòÒæ&†æÖêÚexn-®!wŠx%GŠX£‘YƒüEÿÁ a»ÿ‚CÁzÿmø$¾¯âôýŸ¿j»+_Œÿ²Çö³iºo„WÓ¼!yñ3M¹Ñl¯mô9.O‚n|kð“^Ô|`ßÚÞ*øK¤h׺eý†c¨èÛåŸðvßÁ[…^ý…à«mõè¾5þÈÿ´ïÃ/êSèšËè¿nøuw¨x⧆®æÕd–ít[ß üJðe¦‰¥^iš¥u7ü,íBãT†îËGµ·@쎊¡¥jºf»¦iºÞ‰©Xk6±agªé¾•yo¨i𮙍[Çwa©i·ö’Mi}a}i4WVw–²Ëoso,sC#ÆêÆýQEQEQEQEQEQEQEQEQ_ÎWÇø.¿í9ð‹ãWÅÿ„úü»þ ñsBøañGÇÿ4_Šÿ¾ ü@Õ|ñ;IðW‹5o éß¼ªY|1Ô,õ/xÒÏL‡Äž¿´¿½¶¼Ñµ++ˆ.îb‘&pßþŽÿ”~Üß÷lßúسíø7ÿ¿ÿ‚Éþпµgü÷öøãŸø#ügöUð·áKj|{øñð‹ÆþøSà?øEÿh_„Þ4²ÿ„«]Ö>hZuü%‡m<¡ý£UµûO‰ ÿÁB?cÚ¯öñ7íËà/‰e-3áïÄÿ|IÕuÏxŠ÷Sð×…þèÚÍçÅmÅÿ mômcÄ÷úžƒ£éZ£_xcKÐõë¯Ø=¬ž¶ñ ޵¤Ë¨)Ÿ²wì=ÿAkß <û@~É?¶7ì#û|$ý£¼ |kðÿìѧ^x÷ÄÿþÛüV³·ñü²xcáÅ/Ù³ö›ðOÂßÍ­k~øKâ»麶§¨3KÓ¦¼Ôà—Ù¾,~Ç¿ðxe·Âωw>"ÿ‚£þÃÞ&ðý¿ÃÿO®øsÂÞ ðâhÑxsR“SÑ<9«ËÿóðœZV½ªÙ,öF¥'Š|5Ž¡qotþ Ñ–#¨Û~—hÿðs·üKÃÚN— h¶–¡èZe£èº.û,~×Zf“£é:e´VZv—¥é¶_³Äz~§ÙÁ ¥••¤0ÛZ[CEQ¢ ?ÁÒ_ðD| ãY¼9ûc¯ŠüC„¼G.ƒágý™jÝž%ÖcÑïKÐûà~¡mÖ/„smkN“‹“ý£©XÙù×Q~–Á'å_ðM?û0ØßÿY×áÍ}ÿ_ Á=¾"j¿`_Ø{âÆ­ xCš¯ÅÙöiø‰©x[áö…<á­CÆ¿üâ[ÍÁ¶–{o xCF¹ÔäÓ¼5 [Í4>me§E,‘Û+Ÿ¯è¢Š(¯Àø:;þPQûsݳëaþϵûý_‚ßðQø%¯íûÿø)ñ_öaøƒÿ.ø3ð÷övø£â½3V½ðƒ?àž·W>3ð§ôŸˆ^ð¦µñXý³®©'‡õŸ øf}K]Ñ<3á)üAw¤¼²Xéú}õÆ>êÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþvÿàº?çøCÿßÿ‚~ںŵµ§ÃïüMðwìÉâ?Ü,ß`Ðu/âÝÆ§ [k—(‹„wö_|C©hóM9„§‡üCut°ÚiÓÉ'íçì-û~ߟ²ƒ?g¿‚^1ÿ‚üøåû;|ð7†>Øø0þ¿ ~&k< àØ¼à/Šºísâ­#I»Ðmtí ¤Ön¾k÷𥦛=¥â›«ó©Û}ûf~Æ?o_€ž(ýœÿhÏ Ýø‡Àž!»ÒõÍ7RÐõIü=ã_x×Ã× yá_ˆ¥®xÄ:½ÉkÍoÄÞ$Ö.ïu{W»c-æ¡y1Ž;{T·µ€ùdÿƒT~Ïû/|rÿ‚Í~Ä>'¶¶Ðügðö¦ðl–Ú#,ÐÏàÙî>+x_Añ”&HV÷÷úG†tWL»†oìïé77)zŠ·Ü?ðvì¼#ÿTøùá)ä¶þÒøÏñ7övøiáëI 7º–³cñŸÂ?ÍŽ‘Ê’]j-¤ü0Õn>ÏWR5µô‹nfâÑ/Úþ Ŧxßö¡Ñ¿n¿Ù—ã¯û'þÙ6ž ᇾ"i>Ó~%ü/øõð¾ÚX.tÏþПu=kÂÐxêêÏOx·Ã3øñI´°Ó´´ñ„Ún‹á»]ˆÕÿà™Þ-ý¢¾<üøõÿ ý¢tÚfÏ'Ä€Ÿ~üoÙßöcðwÅ(W˱ø±âoë¿>>üDø™ãí (­O…çñŸÅûÿ xfu¾ŸGð¥³k¢Ü€}ÿÊø¬þË_ðOOØ¿ö~ñ5ög‹þ~Íß ü=ã;Ê’°øù¼#¦ê^=´òåHægñ…þ·fŠ)Ÿnù¢ŠVx×îZ( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þ ¿à²¿µ/ÅŸø.güá÷üöñEµïÀo‡¾/·ñWíñ§D–Kß Ë¬xR…|[y©_ÚÜEg¬ü?øö˜­,4Ñq¯¾9Þi:%Œ­6…ámbçõþHÿ‚¹k¿°ßÀöFý—õ ýcöñý±mÁ¿toÁs«ø×áÇÃïêmáÿiZN–“j‹ã_j’]ø àìVÑ¥ýÏ‹[WñŽ.î¼-×Ò_ð@ÿø$/†ÿà•?²VŸiã=3JÔ¿kŽZGŒ?iÀöúŒÚn¥²{½á.…¬ ËះpjYÞÏks5Ÿˆüa7ˆ)þοiÏø!_íƒ∾7þË~1ñgˆþ^x¢ã\šÏXø[§ÿemxO–šÆŸö#ÂCN½Ðþ1|4jmcâ|B¼»ÑtÛ-ÏÔÿ³*þ>¿à¡¿tïØÓþ™ÿ‚e~Ñ/ð–¡ü&ýª¿e×ý•o¼~É™¥ñ[UñïÅO BúùqÝê>“âì÷£kú«²Yø?X³‹ÎŠ-:ÐÁý‚ÐEPEPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~Ðü{ø ðö ø?ã߀_|¢üNøAñ;EþÀñÇõÿ¶&­éÉyk©Z‘u¦ÝXjºf£¦j¶~±¢ëZ>¡§ëZµ§éúƨXêv6·Pø§‚¿`ïÙ¯àÿìoâÏØ[àÃý;à§À?ü2ø“ðÊ ³êšî›eñGCÖ´oë÷:牵=cÄ~&ñ5É×n¯®ußkz®±r­æ¡,qD#û"¼ÏãWÅo üø7ñkãä’üøeãÏŠÞ/–&‹Âÿü-ªø¿_’'¹–d‘4­í‘®&Š` ²Çfüÿ‚V~À¾ ü*ø?oû"þÌ0_†?|!ài|câÙßá&¡â^xgB±Òoüaâ}BûÂÚ…ö¡âO_ZÜkúýýíýíÝÞ]\ÝÜÏ,“?…~Ö?³_ì_ðÏÃÞ#ðãÿÁ´Œ õφþ&¸ñßÅÏ?³§ì'¤ü7Ñî¬u};Zþñ×Å_†¿|I¯i:Do¯Åeð§ág®®í§´¶Ñ^û^é6ßÏÿíKû Áo~5ü·ÿ‚ƒ~Ñ_ðWï±%×Äï‰ÿ³¬±÷ìÏwñCÃ>ý~þÑŸ¾|*1x‡ÄøÛðJË[ñoÀ¯üG›Åþ(Ó5 x‡[ñ¦­àÝCò|@SñëÖ^…ñ7þ Èÿ‚¥Â7-¶³ÿòýº¿iï‡÷ò-ÅO‚¾<ø×ð³Vø…ðÚè¬>0ðׄõï~Óßü{â½SC{ë}CøáK_kz™µÒ|I¯èUíÞ³§€U±_|ð»ö7ý’þü(ñ×ü-…¿ÿfo€þømñ3Ɇßþ'€|#ð³Â¾ðw޼‹oôx?á.ðkþL¹ûCd_"­}3^7û:x?á¯ÃÏÙóàW€> Awkð{Àßþx?á=µÿÛþÝoð×Ã> Ðô_A{ý©ŸÚáð½–•ÇöŒßùÊÿlŠ;1²PEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|‰ûw~Ùÿ ?àŸŸ²§ÅÿÚ¿ã=ôiáO…¾ºÔ4ÏÇoa¬üAñ¥Ú5§‚þøaîUx×ÄYh¶2yíôÈgº×u5‡FÒµ+«®]Ò4y$uŽ8ÕÝØ*"(,ÎìÄ*ª¨%˜’¯àöÉøãoø9·þ ÙáØ/àˆõ{oø&ìOâI¼UñÓâ~të øÿSÒ54øóHÕlí®´Û½OÅ.º—¯ÙçÏ—RŠ]&OüS± ¡jÚ厚ôGüÍû|^ý¿jŠð_¿ÛóLmWƼcâû"x'[µº¸ÑtKkU¸ð¼Ÿ<=a«4ÆÛÁß ´;uø]ðU&Ì·:_ˆ|bÌš®›á½v÷ûv®Cáÿ€|ð«À~ øcðïÃÚw„|ðïžð?‚|+¤FÐé^ðŸ…t«MÃÚ¼’%–•¤ØÚY[ $’_*2I#–s×ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPò»ÿn| ñ7‰¿àžß ÿkO‡zE¥×Ä?ØSö›øiñŽ=^kïî4¿ø–ìø+\Š8Uâ½{ø‰yð‹ZÖ£µ”Ä4¿Ou{ ÛÚCOþƒÿc¯ÚS¶/ì±ðö¢ð,Ÿ ürøYáˆYÀï'ö&©¬ép?‰ühýž¼}i ïƒ~5ü0ñ·ÃÅýž>|døÿñê#À~|CøÃãc£ÚCVøgácƾ$:]€xî£ý¢^ýŠÐI¹¹ò¡Þ›÷Á/ü[ÿ‚„ÿÁLüCÿÿ‚n~Ú°‹ÿdÿ×?²Î©á~Õ3Ë®>â·–ÞðÄ:„xÛãįØûâ÷ì]âüfñ§ÂaðÛâýÅõæ­®ÛxF×D¸>+Ò®õoxSkcw«]x{Z²—à k¢ø«A×4KMk\m:âæ?ÒwtIcŽ5gwv ˆŠ 3»1 ªª f$$€(Î~ è*ð§Â…^ñÕÎyã ü7ð6ãÍ?Ù7^*Ñü1¥éÞ!¹Ò÷EþΟW¶¼–Ë0B~ÌÑf(ÏÈ="«ÙÞZj–·öV×ÖÖÐ^Y^ÙÏÍ¥å¥ÌK5µÕ­Ì,ðÜ[\Bé,Äï±:É20&ÅQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE~LÁe¿àª?à“±ÿˆ~8k°éž(øÃã®ü û:|-¼¹‘Ç_îl$5^ Y#¾‹À>´+â_j0ËfÎ=;Ãz•Ÿˆ¼WáÑpøÛÿ)ÁR¾&éw~ÿ‚8þÁ+­x»öÐý®¤ðÿƒ~$Kà‹èíõÿ‡Ÿþ Ëio¤|=´¿2Ám¢x¯âö•y,ž ÕuÝ:×Á_ %ÔâÚáÏ|V‚_"ÓN²´°_|(M+šTZe§Š(Ô¼K¡x×UÑ´øg7÷žø6×Ävw× uu¥jŸ&Òµk«Y&Ó4è?¯*(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šüÿƒ£¿å·7ýÛ7þ¶ìûEðtwü £öæÿ»fÿÖÃýŸh ßêùÏöÃñ–•ðëöHý©~ ë¿tïŒZ'g?Þ2Ö>ëÌ^Ò~)é^øgâ}oPøsªx†}+]ƒAÓ¼oic7†ou™´Mf-.ÛS–úM+PHÒo£+Åi?|&ðìéñ÷Ç?âó¾ø/à¯ÅO|i‡û?Sռ߄Þð.»¬|F‹û+EWÖ5?3ÁözÊgé(úæ~Í`­u$@€ß±¯üþ 5 |3ðeσ¿à‡Ÿ´ÿíû-j~еÙë^ÖüeãûŸŠð¶ïI‰üº¯ÇK?Ùát/‹¾‡B:_ü"¾8¼øS¦ø§ÅK=cÄÞ.ñ¾³©ÏâËï£>0ÿÁx¿à­÷Ÿþ)ÚKÿã~Õž ŠëáÏíäñ†«ñ[Ç^"Ó<)þÔâj^³ý’4k½vÃBV:¥æk¬iW½¬–PjV2ηQXŸ 4/ø_áß ü4ÓcѾxwÀ~оèð›Ó•à#Ãú~ŸáM6#©Ë>¢c±Ð­ì-PêÍzV!ö¹dŸÌsòïǯڲûá.¯ã­âGìqûWk¿t]*(¼[ûGøMø ãÿ…oá_ÃÖW¾%ÕSáï‚¿hMOöµ“Eð´:†©¥xªòÙÁ'´Ÿ@Öµ)5?]Õ€9ßø$ïü¢Ëþ §ÿfûÿë:ü9¯¿ëÌþ øSá> ü%ð?ÀûmËà·ƒ~xŸ,ü9ªM­øzÓá‡|-¥i¶Ðu›‹ÝJãWÑ`ðž“—ªO¨ê_ؤrÞÝ<­<ž™@Q@Q@Q@Q@Q@Q@Q@ʧü˦kúßì9ûèÞ׿áñF¯ÿQý›4Ï ø£ìqêðë÷ÿi;M^ûÄC}ý¨Ëo¨ýŽR#¹û?’ä+“]/ü:Ïþ ÿ¥ÿóNþÿòmðuüšoüßþÒíû'êµý¢kú† WÀšOˆôø7Bñ‡ˆÿá0ñn‹áOi>)ñoØbÓ?á)ñ¤YÙë~#þÍ€˜4ÿí½N­Oì0“§Ú¼ˆÉHÁ®ªŠ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ɾ;ürø[û4|øñóãg‹tïü*øQáMOÆ^7ñN¨Íö}7GÒâÜÉoo{GUÔn^ßJÐôk®5=sZ½Óô}.ÖëQ¾µ¶—øZý„¾|Sÿƒ˜?ਞ"ÿ‚”þÔþÕôø'Oì™â‹O ~ϵ®C«x·Ä:×ôþ߈Þ#¶k[RÂ÷Ç~¹‚mAµ[y./ñ¶‘ªü>ÿ„]–+K?í_ëžñöÌlnmÿáû)‹P˜¼¨ àwþ ûÁb> ÿÁ/i߉¿µGüþ›à7†¿áKÂwðþ³Á~ÿ„ëûgö†øMáÿ Å[¤ÝI¨i?ðŒxËUð÷Œ¿ÑѾßÿ÷öd¸‚öB ýäÿƒ£¿å·7ýÛ7þ¶ìûE~ÿWò»ÿ³ý½¿à¦Ÿ?`ÿÚ»Â_?à”þ×¾ üaøñ‹àgŒ?hOÙ÷öíÔ~/è-~0|?×>ÛøÿÅ_¼Eû|(ñõׇôYüN5 n%Ó4}¥²]7ZñO†ÛQ±¼“ú¢¯ý¤ôOø“övøõáïü:ñÅïë~'é^2øOàõÒ_Åß|-ànÛ^øáE×üAá=þoir]x@:ÏŠ¼3¥®­¨Yµÿˆt[Q.¥lü¡xþ(ÿ‚¡h¾ðnaÿÑþÞú톓áOi–ZÝž¡ûB‹MfÒÃH³µ¶ÕmD?°Mä"ÛP†$»€Ewu•2ùw3¦%n©¿à¸ÿð[ÏÚJŸƒ_³¿üçûB~Ïß¼om6‹áߌ?´¾µñNßá€$Ô—û4øŸÄ«ñödøákÈô)o`ÕÅŽ¡ãÄ[¨,n#:&µ–Ò¿kÿeOø)oß‹Ÿ³N³ûHkÿ²ÏísûþÉÿ þ ÜüL³øÏû]xwà§€ô=_áç„´‹[¥¸Ðü'àÿ¿~0Þ-dž#:ö‰­jß4ßø›M¶Î‰âOS¿Ò¬5€?gÏø/ׯÚºïíO¢ÿÁ(¿i}3þ › êþ"†ÿöÔ‡âwÃgÆ>ð­ü¶>$ø¥7쩟añ'Ä?|#¶¡¨xÛÄ |Añx~ËDñP[êÚ®©ip€~ê~ÊÿGìÙû0þÎ?³ªë-â5øðáÁQâWGׇÂχ¾ð0Ö]$DmPh_nepLä0Ü {Íghú¾•â 'K×´-FËXÑ5½:ËWÑõm6æ+Í;TÒµ+h¯týFÂîx.¬¯m&†æÖæx§‚Xå™IÑ Š( Š( Š( Š( Š( Š( Š( åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÕü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þ=àâßø+ßÅÿxÆ/ø#ü÷E“Ç¿µÏíC øWÁ6ñ7Ãín}CÆß ô‰êöš¯Ã="-%tÿøßÇ~ “FÔeñlÞ&K¯ü:×5ÏÞØxnîçž0²ý;ÿ‚ðÁb·º»Ñ|§KªÜIq­ø®êÆÓZñ^±~ÁÑEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü AñoÇ¿ðl×ü‹ãk‹+û+˜™d·ºµžX&ƒÇ#)µkùUÿƒNOÄþÊ?¶§ì½ãŸßøÿGý‘¿oߌ_|{{%ÓZéz'‡tO ëXx~ ɦ›JðÞ£â‹}gÅ:*·•a¨x‡V•~{¹1ýUPEPEPEPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~ÿWËß·ƒâO~ÅŸµ÷†<§j:¿‹üGû.üÐ|+¤èïq­ªx“XøQâÝ?CÓ´·´ÍÚj7ºÅ­µ“Úƒp·2ÄÐþô-}CE*¿ðr÷íµðœÁ´ÿ~Ï~<ð¿‹u?Û÷\ø1ð×à‘ðöö KUñ§ÃÇñFãÏ]x7BÑYç—Cm¶µu_dÓ¯‚ÿ‚~x'Æ¿ ?`¿ØáÇĨ/m~"ü?ý‘?fÏøú×R FÛÆ¾ø5འÅP_‹€³‹ØuÛ øî„ê&¬‚Pp¯®ëŽøwà/ ü*øà_…þ´¿ÓüðßÁÞð„l5]Ä>+Õ,¼/àýÇÃÚ¦¥âêšçмIm¥iÖÞkþ&Öõë &£­jš†¥ssw7c@Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùyÿƒ¬äÓàžÿö—oÙ;ÿU¯í_Ô5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEò'íÑûlü ÿ‚{~Ì¿ÿj_Ú^þÊðG€´âºng%¹ñ/üe}ãÂßücq,)©x¯Åwð›KZHìôûHïõÝfæÃ@Ò5]FÏÛ>4üføaû;ü'øƒñËãOŒ´‡ß ¾ø_TñŽ|a®Jñéú.…¤@f¸—ʆ9¯5 û§ò¬4L¶¼Ö5Ý^êÇFѬoµ[û;9ÿÿ‡žý¢àíø(÷Å߉ÉâÿƒÿðH_ÙÆw7„|$“\i÷Þ6¼1iWwþ°Õ,£·†ÿãÄí6=/\ø¯Á<ñ|ø{ªèÞÑngÖoôSÅ`÷ÿaý‹~6ÁhmÿÁtÿà¤w? 4OÍiûü Ô šëÁÓÝø+U<)©iVz€O´ü*ø'x.¢ÐŒÖ /ċ˪øÇXœ Y±ñG÷i\Ï‚¼á/‡ð¯ÃïøoEðw¼ áÝÂ>ð—‡4ûm'Ãþð¿‡të}#BÐ4M.Î8­4í+HÓ--l,,­¢Ž kX"†$T@+¦ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( åçþ šÿœÇÚ]¿ioýÃ×õ _ʯü%â­.ãÆ¿ðZï »Oxcþ ¥ñ¯ÅZ¬RÛ˜íãÒüe«kÚ.Œ#›/wöïx…o-Ìhm£KG,ÆçlÕUQEQEQEQEQEQEQE~ÿÁÑßò‚Û›þí›ÿ[ö}¢ø:;þPQûsݳëaþÏ´Pïõùßÿ3ÿ‚–üÿ‚UþÏÚí#ñ÷À¿¼}à_|UðßÂ(´ÏÞð_‰¼U§kþ*ðïŒÏ>¥®ZèšÅΓe÷ðiz„¶ëi0õÝE|QÿÕñ·‹¾%ÿÁ9¿`?ˆÿÔ?ánxžÊyÛâ6¶ºoà ¾§§ßÞèÞ?ñÛ«ö”øÑÿ8ÿÁ@|=ÿ×ý†üO«øsþ ÓðÄ–Þ1ý¢>:ðŽ¡«‹hîZHµŠþY¿àëoا^øÑûxKö×ø>‹¤~ПðOOØ|fÑñG‹ít‰<Í3Nøƒ—ö'Äm&ż›|[hþ<Ò¼E¥Ç†3´òˆÊd€}©EPEPEPEPEPEP^ ûCþÔ³§ì“à­/â?í7ñ§áÏÀŸë^(²ðN‘âï‰Þ(Ó|' j>.Ô´o]°ð妣ªÍ¼ú½æá½S·²G3Ie¤jª”¶y¯ý¡ÿeÏÙÓö¶ðV—ðãö›ø-ðçã·€ô_YxÛHðÄï é¾,Ð4ïiºN·¡XxŽÓNÕažÞ ^ÏFñ&¿¦[Þ¢ £²Õõ‚\ÈóÿÁQà?´_üËöÁø7ð#öÓýœþ-|Vñü3÷ü"¿¼ñCÃ^"ñ_ˆ?áý©> x«\þÊÑ´ûÙnï?²¼9¡ëÝ÷“}ŸMÓo.¤ÄP;ø8›þ uÿéý?àŽ_¶ÆO±gìçð—â·ƒ¿áŸ¿áøƒà?…þðïŠü?ÿ íIðKºçöV³§ÙEwgý«áÍsXÑ/¼™ín¥yk&bÔ”ý<üyýœ>þÒ6Ÿ l¾*è÷:Í¿ÁŽ ÿhŸGot¶Ëañ;á.¥sªø7SºW‚á/,­nnîÍ“¢yñÈBM Š’/»Ñ^'ûK|hÓ?fÿÙÇö€ý¡õ«Ôô€¿þ*ühÕ´ÔiQõ 3áw5ï_Ø£ÁÌè×vº°+Coq*™Ž \,lí•ñ'í—ñ/ãïÃ_xÓ]ðŸÀ¯€ß?gý+ág‹5ŒºÏÄ_Ú¯]øñ OÑíôý`x›Iðg„¯?f¿ˆ¿ |D²x]k [Ç~irê·Siº¤ºNj5ËŸä·öÜÿƒy4ÿ~Î:ü/þ yûd~Òÿ?k/|Fý›üWñçNð—ˆüá‚¿>|Tý ¾ø_ã¿€þè>'ðÄ­SN´ø7ðƒÅ~7¶øy©ÚkúôÝsÂþÔõ¿…lµ-6ïèÁ—ŸðOÝ=+Ä_ ~1þÓ~.×|;«ØkW~;øóÀWŸþ$iZ}ÄW7þÖ5ï„?þxûÀ«âkHçÒbñ΃«kW~¸»‡\ñ,vhZˆõûÛü³ýÿd»OÙÖ}jëö}µý™¾Ûü ¹ñ²Oâƒ|,ð¬_ gצ™Viµ©¼º$š¤²ªÉ%óNò(b@úf¼Ïà­Ÿƒ´ÿƒ l>øKþ‡ö? ¼gà_}’ ?þ¯[x[J‡Ãû­ÅÝ­—ü#z"Xèßd¶º¹‚Ûì^L7F‹#zeQEQEQEQEQEQEQE/?ðuüšoüßþÒíû'êµý¢kú†¯åçþ±ÿ“Mÿ‚{ÿÚ]¿dïýV¿´MPÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE*¿ð_ÿø.'ˆÿeû+þ ÏÿýšoˆÿðQWz7e …µ­[àŸñl´c³yñÇÆ ªØIà-w?ð‰iwqxÿÄQ[A/„í<@âÿð_ÿø,gÅMsâŸü¯þ sµñ+öÌøír¿>1ø×á­Ô×ß t[_Úk ¼7ªÚ;.…ñ"ëC¯ÄOu¦Ù|ð8¼»—S±ñT×ÚŸÃï×/ø"üÓáü?ön·ð’è¾6ý¦>%Yiz¿íñ¢ÚØ»ëÚäy¶¾ðUÍ妥§ü.ðdÓOƒeq ­æ½¨ÉâÍjÖÚûSƒKÒ>yÿ‚ ÿÁ ¼ÿÂøo7ÆÏŽÃâWíýñ›HšïâïÄ‹ËáâX¾Øk÷)«ê ¼­\yÏrÏx ¸ø‹ãhæž÷Ç^%‚FŠú_ Xhð蚀 (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<»ãÂ~Ð?¾+| ø‹eý£à?Œ_üeðËÆb+I¥—þ7ðþ¡áÍY­’þÚöÍoa³ÔežÆ[‹Kˆà¼Ž Ì/å…?Ç×ü)ûRkÿ±×Ç?ÚßþEûUx®ÛIø›û<übñæ¹û3>¶ñév^4ðüšµÅ×ü/àö¼[VšÛÄ >ñßÀzI7Z¾½ xóÆúÄi–ŠbûV¯ã þ¨ý™ï>kÿ±×ü—özøq ÿÂðý’?h…“|añ4“jQiÞ+ðÞâ¯ë__â&‰¥½›k:.™ã­%>ßë6ºÆ‹¬O øêËÂ×·¥Šhð€g´WœüøŸá¿Ÿ þübðtË?…>*xÂ?ü;"ÝØ_Ÿìoè6 Óã’óKº½Ón&†ÛPމlo.­Zxäò'–0®}€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?àèïùAGíÍÿvÍÿ­‡û>ÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷ú¼ÏãWŸ üxø7ñkàwã’oüeøeãÏ…>/Šæ—Âÿ<-ªøC_Ž$¹Škg‘ô­bíQn!–b±Ie>™_;þ׿nÿf/Ù7ö ý¥,<;mâûÿÙëöwø×ñÆËÂwšŒº=§Š.þ|5ñ7m¼;u«Ci¨M¥Ûksh ¦Ï¨Åa{-”W-s¥ËÄ!pÇ¿à°_´ÇÄÏÛ³öKÿ‚¢ø?àAÿ‚{üKý˜µ‚¿ üwðËXðÞ¥âxÓYÓt_ÝxÓ@†Ó\‰VQë¾ü@ñ2üOÓ4 ÿ øÒoØxêâÎ×X¹‡áŸ‡ß··ü7û ßé?ðO/Á1¯mŠš –? þ ÁBô¿xç@ýŸüOákwþËðÅ_Ú¶—à_xtÜÚ诧^xÂ=sâGÂOÊÚuðÖlõ/\\jº—õ³àÝyüUá x¢Ke²“ÄžÐõç³ILéhúÆ—k¨5²LÉL°5Á‰e1Æd¢´|§ñ¢×þ áÿx¯Ç_ýœüsð_â¿‚>*x‚=?EÓÛÄþÕ:WíâYë^ Ömµ™¼+w?앤Aªèº.»%÷ö>¡â\é„þÔþü,øià k_“ÅzÏþø7Áú·Š&„ÛMâMOÃ>Ót[ý~[v–f‚MbêÊ]Eái¥15ÉC,…wŸ@¯,øñÂ_´'Á?ƒß<oÛÀ¿>|>ø¿à³ªÛ-ž¨|%ñ/ÂZGŒü8u+D–tµ¿:>µfo-’y– 2%–@¡Ï©ÐEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wà?ü?þ …ð³þ SðŠOxK‰·ůÜÁð?á—•©¯„ÓS’]&ËâÏÄÛ8L³XøKK¿Ÿ xy m[âWˆì?áÒa·Ñ­¼Sâ_ p_ð^Ÿø.VÿÕð.Ÿû;þÎö–ßà ß4è4Ÿ…t›9û;ÝxË_Œ^Þ[Ëáí:{McÉ¿àßÏø"»ûYêß·×íÔúįø(Ïí¥âfïÇ×6þ*×>éþ1–îó\°]~æëU›RøÅãxožO‰ž0KÓ>™is'€tF†É|U©x·Éÿà‚ŸðCßxÆrÁVà§—> ø¡ÿøËñÂø’ÿÚZŸÀáâH¥‰|_âëy³nß5}Xíô­8-´¿ƒž–ÓÚ^aâX%·ð·õÍ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|Áûh~È¿oÙƒâÿì•ñÞ×\¹ø[ñ›ÃöZ/ˆ&ðΫý‹âM"ûCñâÿ ø›ÃÚ“ÛÞÚÁ®xOÆ>ðÿ‰ô˜õ=?UÑ.¯ô‹{MwGÕôiï´Ë¿§è äƒþ 7øÍ?„ÿeŒ?±GÄ;ŸÃã¿‚_µÿí3à¯ÃâZkõBøo¥üøRÊÆåöx^çCÖüm=úøkLk› ‰¥ñ6±µ•n’oë~¿Ëûá7üÄ_ðHßø,_>þÔüIð¿Á ÿ‚ þÕŸ´OÄ?\X꺥æ¯ðOö økâ‡6wÖ¾ÑôûÛÿhk£Éðßâß‚5OMvu¶ŽKKˆ<¸„3§†«iúö“¥ëšMÇÚô­kN²Õ´Ë¯*x>Ó§ê6Ñ^YÜy1Ãsm4ryWÅ<{¶KH@Q@Q@Q@Q@Q@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûý_ËGü“ö:ÿ‚¼è?°÷í=âoÙ»þ •ñ#ã_Âl¾9þÎ?fŸØ²|Cøªø'WÓ¾)éž ø­ðönøqaâhü qâ¶Ólü3£êš²HÃÃÞ*еû]95ê^¡¹Ky-î#¼Hd´’Ré.V6·{v–t¸YA‰¡h‹ V@c1– “@Æ÷?cßø<*çÀþ ¹ð×ü[öÓü9qáOOáû χ~{»]"ÎM*Îéßþ »|ïsm`ÐC;5íã4¨Å®® 2¿X?à™ßðtoí“|$ý¯ÿà±?³Ï…?gÃ&“ñ2ûökð…añrûÃ7Ãì:Þ‹áËï~ÈŸ³Æ£fÚ¾‹u©Z5Ïü,»hf{wºÓ58CD¿í+ÿeÿ‚Á~Ö^(ñ_†¿à†°%‡ÄßÙÿÁÚæ·á[oÛKãEç‚ü;à‹×þ½ºÐuÍKö}°ø™ñá?õŸiÚí¬öz?‹ÛXñä~(‚Òyâðî…d>'ìÓÿnÿ‚ÈþÇ>7ð¾…ÿÓý…ì¾þÎ0×´¯ Éûeü·ð¯ˆü?ðk\ñ×Ù4=Sã’|!ø‹ñ[À–Ÿîµm4»ßBþ¼ðÇž.®-¼S<‰`€Õ'ÂφÞø5ðÇáχúwö?€þøÂ ¼¤y†_ì¿øÃú…ü7§y¥TÉöK²¶ó ©+vÑœWwMGI$ÖHäUtt`ÈèÀ2º2’¬¬¤`H ‚ @Q@Q@Q@Q@Q@Q@Q@ËÏücÿ&›ÿ÷ÿ´»~Éßú­hšþ¡«ùSÿƒ¹u_ß°çìGâørãÆö…ÿPý›5ÂV—bÂëÅ:¾—ð‡ö“¾Ó|9m|Ö׫eq­ÞÁ™ Ù³»ò],ÆÚpžSôßðúÿø,wý+_ûDâ[i¿ý ÔýCQ\¯5ÍoÄþðo‰|KዟxÄ>ðö¹â^^®¥wáoVÒ,ïõ_ ]j)kb—÷:ýÄúT÷«ef·RÚ4ëkn$§U@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wá§üËþ oð[þ 'ðkì¶ŸØ¿ÿkω:UÜþ%ëKä´žeœ¾(G§NšŽ‡ðßF½ÊÛÛ$–zßõ{wð×…å¶Šø— üßþ eðkþ )ð[ì–¿Ù_kωú-ê| øÙ‘¡óZ}:?Š£³“íº7Ã}QI#¶·So«øÿ[³—Âþx"¶ñ/ˆü+ù_ÿ ÿ‚&üMñÄVÿ‚¿ÿÁXÿá"ø¡ûjü]Ö¿áe|+øsñRÒ9¯>ý°FÚÄÏèƶ–™Š|5ðiúv‘ð;ÃPiÛèÚŒí´Í;áÞgü/þ¡ñ«âçÆÇÿ‚ÇÿÁaeÕþ$~Ö5ËO‰¿>|A²‰à \Csá_ˆ¾>ð©‚ 3@ñF‡c„?þÙéö:'ÁÏJ¼ºÒ­ðÇ_‡¦ïM³Õuè%\kÓøâ]éÚ>·á¿x^m h¶­=ÏŒm/©°kKÐÏ?ø:;þPQûsݳëaþÏ´Wàßüÿþ ‡ÿ*ý¢¿à—¿´ïÁ¿ÿðD?Œß²Â?ÿ–ÿ„·ö‰ñgíeã­áçü#ÿ´/Âoè?oð¬?¼&©ÿ g‰´MÀÖ»|K¦ý†÷ÄÖÚ‰ûbÙ› ¢€?¾*ù?öõÓ¾"k°Çퟤü!ûYø±ª~Éÿ´^ðÀXnûqø‰}ðƒÆ6Þ ûÄ•þ×ÿ ,ºgÙöÅ#yÛ6£œ)úŠùçöIÖþxö]ýžµ¿Ù‰´ƒû<_üøw'Áh´#mý›gðÞ? ixSMHí%ž+{½/IŠÛNÔìÞW¹±Ôío,ïH¼‚pû\ëß<1û.~КçíA&‹ìícðwâ øÑ¾ö«¦^ü:¸ðΣiâ})’òkxnou6y´­&Å&K­CV¼²±±Ý}qn­üô~×_ðBoÛ‡À¾>ñÿÄø#'üÇŸ±g†þ+x›^ñÏ?dÏø·ÆÖŸ³~ã¿j׈üMð˜x[Iñ”? ì¼E¬M%î§á›_†ºÂÛ\Ýܦ¯é޴Ѽ#¦s¿²?ü_öñø‹ñ?À¿ÿàµðQ_~Ùþ øUâ-#Æ~ ý“<ãoˆúïìýâ?è­¨xsÄŸ‹to‡–+²ðåý½†¥má¯øVqlÞ ²Ö¼A?†ÓSÐ<@ýÁ?´ïhÿ°oìM¤|SûXø¥þÈß³vñ_ù¿n<±ø7àËoý·ÏH§û_ü$j?hó¢Ž_;˜ˆùQõÍPEPEPEPEPEPEPEPòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨jþ^àëù4ßø'¿ý¥ÛöNÿÕkûD×õ @Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Wó ÿ½ÿƒƒ<9û ^Øçö%Òì¿hø(§Ä?Âú7…¼?¥Kãß|Ô|ErÚnœÞ(Ñ4)¦»ñWÅëéä‰|ðŽÚ)§ŽæâË_ñÄèÇIð×@=£þ ‹ÿÝøoÿ³ð†›ðƒáF‘¦|ný»~+XCÂïƒ6Ò\êV>´ÖÝôíâÄû¾¬ÖZ‹$ ð‹Ùøâ&£ÛXÜéZ4úí§ç÷ücþ-ñ/Sø±uÿUÿ‚ÃWâçí»ñÅqüJ𯈗ú´? 5%!´_|GÒ­ËhW4ø"±O‡ß--×Âôm;EŽ×M‡Åö:fðóÔàˆ_ð@|ñüÿðRø)Þ³sñÛþ !ñU¸ñÖ“¥xËYOY| ÕµtÉñ¯¬Í-å‹>5}•’Ýu‹I'ð×Ã[d‹GðA¸½±ƒÄQÿX4QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWósÿU~ÌÿhOø$ÿ‰|gðÂëÊñ'ìñ›ÀµýÕŒq‰.õ ü9ðÏÄø¶k!%½Å¿™áOüKÔ~ ] ¯&Ó|yf’KŸé²«iZ•œêðÝØj67w–Ó#E=¼ÒE"²9óïþ 3ûsèŸðQØövý¨í5M2ûÆ~(ðU‡‡>3éúdQZ'‡~8ø6Þ⎒úTx}ÒëĶ·"ð픪¦_kÞÔ ól¯íg—ôn¿Ï[ÃÞ&ðwü¥ÿ~øä/~~×>0ÿ‚`þÒŸô[ \h:8×t? |EÕ5Ïø‡DžË_ñ5ÿ‡|ñ7WøHúG޼–÷~)Ñ<{§x3â"ßjð‘jP·Š¿¿ÿøçÁß¼á?ˆßÑGüÿ((ý¹¿îÙ¿õ°ÿgÚ(÷ú¿?ࢿðUoø'Ö¡ÿúýºì> ÿÁH¿c{ï‹×ß±¿í;gðªËá—í…ðNçâEçÄ‹Ÿ‚~7‡ÀÖ¿­¼+ñüOqã{¾—… ðâ>½.¼öèêÚƒ[ƒû_”ðU/ø$ßìÍÿ+ý›>,x Åß >ÅñòóÁž&ºø#ñÁô Ç>ø¦šLóxBþóÆúEˆñß„/5û}.ÛÆ~»›QÒµ­ÏéÒjºeݘQð×þ ¿ÿÅá×€#Öÿà¥?°|zÌ~ ðªjéªþØÿ³êêi©®…`·é©-ßÄav·ëv%‹tÀ¸ €5|3ûc~Õ?ðn•î‰ñGö–øûCÁ?µoòèi¨Mñçöbø™ðSÄ·úç†<5o¥ø>ïÀ?þë—?oüQ¡Øx{AÑü*§[mÚ=#@ѵfA¶ŠÙ ÿÁ­ŸðDH<7áè)øãÁW—¶wv°Ogu}áë™ídB`’1$À?HÿcŸüSñçì‹û,xã㥛iÿ|gû8üñ_Æ+±‹K{Š~"øeá_â ›é¤péÍmâÛÍ^±Š8â´(mãDH£¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCWòóÿXÿɦÿÁ=ÿí.ß²wþ«_Ú&¿¨j(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯?ø©ñ[á¯Àï‡^/ø¹ñ‡Ç>økðËÀ:-ψ|eãŸêÖš‡<;£Ú”I/5JöH¡‹ÍšXm,íÔ½ÕýýÅ®ŸcÅíÕ½¼¿Â§í]ÿ;ý½?à⎚ïüïþ ¢øÏàçì]is.‰ûB~Õšü:¿ƒ§ñ§‚o^K-OQñž³onš¿Ãï†Zõ¢ÞAáÏ„zD¯ñKâΜÒEâû-#B½ñ/ƒ<>ö7ü¿þ ø•ñâÑÿ‚_ÿÁ´«ÿÿµ¯Ä+ýCÀ^0øíðá"ñ‰ðêâK;Ø™ãÍSÆ <]sðÃMÔnít©´¯Œú7‡õ;ï…"ÒuëÇŠ SÒ¼hšS.©<ÑÙ ¯¬µ_;F½Ôm§üÿƒYà¡0ë_µÏø$‡íà‹ß¿µ¿ì'ÿ .‹cà¯K>“≻ñߊõŸ4Õ#ŠÿLñÂMoYƒ@ñŽŽk{¿êÞñ>…%Õ´Þ$·ðÿõÇ_ÅOüû|Bý•þ(ü8ÿ‚ôþÁr¾øéðÅþŸö—°ðärØÁâí{ˆ¼%£üSÖ-ìï-µm¯lõ /„?ô8¡uñ‡€|Iey©,vº?‰o/À?µj+àÿø&ÿüàgüÏöWð_í;ð+X[«A ð§Ä¯ I¥¥ð»ã™áßëž6øg«¶§§é²^Ýøpx“KžËX´´ÍCÔ´wMšKMF-¿xPEPEPEPEPàüÿ((ý¹¿îÙ¿õ°ÿgÚ(ÿƒ£¿å·7ýÛ7þ¶ìûE~ÿQEQEQEQEQEQEQEQEQEQEü¼ÿÁÖ?òi¿ðOûK·ìÿª×ö‰¯ê¿—Ÿø:ÇþM7þ ïÿivý“¿õZþÑ5ýCPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE×tIcŽ5gwv ˆŠ 3»1 ªª f$$€(Õù—ÿ/ÿ‚´~Ç¿ðJÿ…’øëö‹ñÌ7^;ÖtË›¿†_|#w¦j¾(\Ç,–‘É¡xrâòÜé~‚ù kÇ:óØxgHòå¶—ºÔ–-ÿâ÷ü+þið_ÃØ·þ Oáhm_ÛgÆš»øLñ‚ô«ÿü)øâÛ×kUÓü5o o“ão¬G4:_†n_À Ôiñ7ˆõy4}oÁ¯ç?ðL¯ø6ÏÄþ2ø•üþ oãMGöªý­|/ðØ¹†ˆVK5”:Ÿ´ÍZÖÞë⟋äÓÖ}6çã¿Ä >ønkým~xMÒóľ¯íûöMý‘?gØà—…?g¯ÙᮇðÇá„¡&ßLÒãyõMwW#]KÅ>0ñÛM¬x³ÅºËÅš¯ˆuË»ÍBàGªK …•¥·Ñ¶ÖÖövöövvðÚÚZõ­­´QÁomo,P[ÛÁ¤Pà J±Åj±ÆŠ¨Š& Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ²µÝCñF‹«xoÄÚ6•â/ëÚuæ®èîg«èºÖ“¨ÛÉi¨iz¶•¨Cqc¨é×Ö²ËmyeyÖ×VòI ñ ø{¥…ñʼnWÖ¨ÙÓ¼ðþÂ_íaEÁ‚ÎûÄk¦x7ÃÓÞY¿Š¼K¡Z\ÇrŽßü~ÿ‚ÍÿÁÐÖ·ðëögÐ.ÿ`ø%¼š½×‡üiñ'Z¸Õcºø“¤Â|­GKñ?‰ôÓ¥kßµw¶û@¸øMðØøáv=í®ñ?Å’ǤxŒýËûÁ±ž øñF_Ûcþ …ñWý±ÿiÝÛkgàµï‹5ü3ðÛ!ŽúÃNø‰âUûxÝt)å—OÓ~x6à߆ìíäÒ-¡ñ·‡îí­´ïìÞð÷ƒô¾Ðt_ xcÃÚu¦ xsÚ]މ èzM„)oc¥èú>™®Ÿ¦iÖVñ¤–VVð[[B‰1"(PùoÿÁÿ‚3þÅ_ðJ 3à/‚?á%ø¿®iV¶?h¯ˆYk¼i*Ç_Yi÷âià?Ov¢[ø:-;J‘-ôùüE?‰uÛ6×®?Xh¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ ø'þ ]ÿúøEÿ8ý¾#þÊ_ûÛÄßañÃUž¯®ü*ø£áÏ´Iáˆ>¶¼hwÜØý¯PÐõë+kÝ2ãÄ> ñŠ|*uM>Û^¸ºïj(üïÿfŸø,‡ü'þ ìðW¿àžŸðQÿÙwÇŸto…zuÌ?²oÆK]oS¸ð¸Ð.uÓ<7¥ÛxãS¶:~Eoæ§á´«Ý'Ç~{þjz6š<‹‡Ÿ¬¿²ü¹ÿìøƒãoü1ý¡.ÿÁ¼ðNŸŽ¾2ý¬ÇŸ<¢|:ý¥,¾ëÚð³ÃÚ'ßüø¡ðŸFñß„üQâ_„ú懡¥—‚´_ørûáíιáÍ2ÊM Äþ"Ñ|AâýVKûpÀ¹úF±¤øƒJÓµÝTÓµ½X²¶Ô´cH½¶Ô´­SN¼‰g´¿Óµ )f´½²ºÒkk«i¥‚xdŠFF tkøx·ÿ‚;ÁsÿàŽ~"ñ¯ŠàŽßµ>‘ûH~ÍWZ½Ž¡oû'üuÔü=¨x¢÷DÒ¬æÖ'ŠmÆzO†~Ûêw𽯳cªk_¼eð›Æ~$µ¸Ñ¢6×R)‹Lú_öhÿƒ©¼1ào‰’þÍÿðX¿Ù[â'ü£ãV‹ êz¶§ãK¿ |HñÃ}l[KpÚMÔ_[šŸÅ éÞ"KMKLðö££ÂÕðÞ±¨i-tž,µ·ÔÖÛLþ¼(¯æïÇðv/ü;Âwtí ñâtWÊísyàÙçãFŸo£•"¦¤¿¼ðöîV‘I•‘kª E"GIqý.ÿ‚yÿÁU?bÏø*„<[â¯Ù3âdÞ$½ðý­—޼â­ |EðœZ“ݦ‡¬jÞ¾–[ŸøGüAö Ñ£k¶3^i—SYÞY=Ä:…¥Õœ ¢Õðoü?ö5ø‡ûpüðdž¿¶?íûë¾ø£¢üC»ø¯û1x»\ð_|A¤é>ñ·†çø{«êšˆ|5yqá ZóŶ$¿°–þ[iuŸ èi$¶°ÍÞTPð;ÿ¿ÿ‚6~п²Ÿü÷öøùãŸø,wügöªð·€¿áKj|øññwÆþ(øSãÏøJ?h_„Þ ²ÿ„«BÖ>!ëºu÷ü"úˆ­f¾iói^³ø‰â»=Jc©xkOó’àGÎé<’:ÇjÎîìgvbUTÌHIWó?ÿ$ÿƒŸÿaÿØÞú÷àÿìÒÍûuþÔ÷wsx{Hø}ðWT]Oᯇ|Q,ßÙöV2ø£¤ZëZ~¯©®¦Ïl|ðÒÏÆ~${û9ô]q¼!qsk|)`ý—àáßø/ÜÐj¿µÏ¤ÿ‚c~Àþ%’øRú—®øOÅþ7ðÃ[Kökφ_Ú–ß|w%ýšÃ,—üSá_%èM{ž ’ûI_ðN?ø"'üïþ £iwŸ¾Yx«ã4Mo­~ÑßâÓ¼gñ›Užâ1÷ö>·5…¶•ð÷JºŒ%´šÃ#ÂÚuݬçZ]gQYõ;æ×Á?ðIïø,§üÅúÇø,/Æ~Çß²QÔá#ð?ìƒðúÍ|7ã t»·†æÎßOø]}q«é¿®a…¼^7ø÷/~0X½¤–Sx*=3P·Ô¡þ¼¿bø'÷ìÿñøYÂ?Ù/à׆þø~u²—ÅåºK«xóâ­e‘ǯ|BñÖª÷^%ñf¦âîKDÔoÛKÐ㻟NðÞ™¢é:²¨ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¾3ý¯ÿàžÿ±·íçáÝ?ÿµgÀ‡Æöx´/ëÞÓOŽ<9§®§o©jO†|s²ø«ÃZv·äËe«G êÚtò[^\Ëiqg©}šþßìÊ(ä¯ ~À¿°¯‚ ¶¶ðì]û'øZ ;Òícð÷ìíð‡Gi±˜JXÆtÿÛ²Ú+[ÀÞF|²ðÆåK"‘üõ~Ó?ðlŸŠl¿jÿŠŸ¶üÇöðñ7üGÅ?|)ý›«|øSðßTÓ|6±rtéõû Åøà›Ÿ|?ñV«£i~%½ðd^ñv™¢x¢;CÃööšgöF‡¢ÿYTPòkðOþý›4 CáÏÚköý´´ Èt›_øŠÛN³ñn·¢iÛ#Ó.üwâü#ø©j·6i7—ÖµO\Üý¢}WYÔ¯ê×ì{ÿÚý»~ÁK´ÿø'Wü›àOìÕû)ë¼>µð£âw»­GÂÿÄËá™üm¥G⿈ß¾?øûÁš·†|Q¥i:ßôkÝÍ­EñzOøãN’mNê};úÛ¯Ìø(üöÿ‚¡ÚøfÚÏáv¯âøH½Ð¼ñ'ÁÞ8ñO‚|màí+SÔ"Ôµ >M'Qÿ„kX´ººˆ¹³ñ†¼IglóM=•½­Ó‹…üâÿƒþ;|øÓÿ ý±üOð—â§€~"è>)Ó?fmoÃz—„|S£ëPëš1ý±?gýš¾˜¶wrMy¦L‹ç[ßÃZÜ[_Ùköü8Ñuky4=?ÆúÆ…w¡ëZaþÐ3C¬Á¬Z½œzq@è=EPEPEPEPEPEPEPE~k?¶ÿÇŸÛ‡þ ñËöý‡>#é_þ~Å/†®ÿmÚÉ|áo‰þ9ÿ…—ãØõ8|ðà?…ümk­ü7Ò5«ìÜøßâÄ? øÊßOÖü®xcOðY}"KÝw”ý±ÿk?Úƒþï®üøÕûA|z׿lÏØâ‡ÅŸüøÑâÏŠ?þ xöŒý™5¿A¨?ƒþ)iÞ!øàŸ‚ÿ þ$|.’úÎöËÆ¾Ô>i>,Ñ µÒ®tOj÷WóØLûõEW³¼´Ô--oì.­¯¬/­ ¼²½³ž+›KËK˜–kk«[˜YḶ¸…ÒX'‰Þ)bu’6d`MŠ(¢Šþ]ÿàë7Hÿd¿ø'Ë»*"Á]?ewv ¨‹ðÓöŠ,ÌÄ€ª ÌHIÅQüÿÁå’Ëükö_ž $†hà£ß%†h£–)cø ûQsöíQEQEQEWÌ?m¿Ø×ö|ME¾:þÕÿ³Áùt–¸ŠþËâOÆ¿‡ Õ!¹µ¬I×¼Gc©Üj{¡’(´»kIµ‹…û5½¬· ±ÅŸÚ'þ¹ÿ‚8üÔtÝ#@øÁñö’Ôî®55h¿go…Ú¦¹§xil’Ù­®5/|KÔ>xKX·ÕÞy¡ÓÏ‚µïËØÜ¶­—¶^€H´Wñ×7ü§ûvþÖæËþ wÿ[ý¤þ-Ú_µÌzgÆÖ^!°ømbò# ë0ø#IƒÁ15ây,ôRc‚kk)nÕÚþ×çö9ÿƒ­ÿà ÐCí+ûhüÿ‚lü-Õ™†±à/Ùþö%ø›§[ß’³.Ÿ¨|Ÿ]Öõ(m¬ÚHÃTý©4èËùažYn¯mÀ?¨¯ÚköáýÿcMx‹ö¥ý¤~ü ²–qacãßèú_‰µÈØÊ|3àÕ¸ŸÅÞ)˜‹{‡ÞÑ5K.Úæ_+Ë·™“ùøýÿcx;âGŒÛàGü+ö:øßûy|jÕ$’ÏFñ6¥àxoáÜFFD´×¬< ¢X^|]ñ6‹ ³\x§Mø9k¦[!¼›]ñÎðû_ìÛÿ‘Á:>øŽ/ˆÿµW>;þÝŸ®naÔ5ýSã¯ü)àmcT¶ˆEo7…¼wkã-Gj¥¿ŸcãŠ>2Ónã´¶´¹´’Çí6·?ÑÏÀÿÙÓàìÏá<û<|ø]ðGÁGkðßÂßxoÀú]ÓÙ¤‘Áu©Aáí:Ãû[Q>tòOªjmw¨Ý\\Ý]]]Mssq,€Çÿ‚FÁ|ÿà°“ÛkÿðVÛ6Óö=ýu‰­¯dý“¾½¥þ¡s¤¸[Á¥êþð6·ÃÈ™íîž×M×þ*|Eø¹ã_]5ܧ†-’Òëúÿ‚~ÿÁ¿àœ¿ðM»}7Uøð+L×>+ÙB‰sñ÷âãÚüEøÉupšçKñ¥c•àU¹ûÝ¢Š(¢Š(¢Š(¢Š(¢¾"ø¡û| øGûo~Ìß°Š­|xÿ¿jÿ|Hñ·Âë­+Ãú}ç€áѾø[Åþ0ñ2ø§Äk¶º†“zúO‚µ…Ó ´ÐµHîîÞÊf¶Iä–·h¢Š(¢Š(¢Š(¢Šøƒþ mâÏx þ ·ÿñ×|MâøÛÁ±í_âÏxÇÂzΣáÏxOÅ^ø ãícÃÞ&ðψt{›=_Añ…«ÙÙêš6³¥ÞZê:^£km}csÌJ oÑ_•?ðC߈Ÿ>,ÿÁ&ÿaŸˆÿ x›[ñŸŒüO©·ˆüAj^!ñGˆïµ-sZ¿h!†¼Ô¯®n QE“dhêµQEQEQEQ_Ã| ÿ†ýÿ‡n}—ÇŸðÐßðÏÿðÒkÿ„Oÿ…wÿ ïþøF|¯øI·´¿á"þÒçû3þï³}›÷¿Ú¿w@nÑEQEQEQEQ_4~ØŸµoÂÿØ{ökø«ûU|h‡Å >é^·âØ|¤Úk¾(’ÏWñ&‹á[A¤i7Úžky0Ôõë*M©Ú*Z‰åÍÄþ¯ð›âO‡~3|,øiñƒÂ ¨Çá?Šßüñ'Âé¬[Ge«'‡|uáÍ7Å"j–pÜ]Ãi¨®›ª[ Ûh®î£‚äK\L¨$`@¢Š(¢Š(¢Š(¢Š(¢¾"øû| ý ¿k?ÚÇö2ð¯"ø¿ûÿ¼ÿ…½q¯øOÓ¼qÿ 7G“[ðßü!úÕ¾»{­m²‰†¥öÍ#Hû,ØŽ?´¼}»@Q@Q@Q@WÄ_ðPOÛûàWüSöw¾ý§?h«_]ü7Óü_áÜCðçÃú‰¼Iý³âÙ®àÒ™4½O]ðí³Y+ÙËö¹Î¢$„) ¹;@>Ý¢Š(¢Š(¢Š(¢Š(¢Šþr¿à…>5|]ý§?àºÅ‹ÿ~'è_ÿà¨ÿ>|(Ñ~!ü@ñgtŸ†>Ò¾ |N²Òüð÷Mñ&­©Ùø/ÂmžŸaiaᯠæèÖvÖV[ÙG´(€Ñ­Q@Q@Q@Q@ñíqû| ý‹<{û$ü9øÅkãË~Ú?´…fσïàïéúÞoñÆΡiøÆæ÷]ÑåÑ|:/|G§›½NÊßX¹†¹‘4ùZ4ŽO·h¢Š(¢Š(¢Š(¢Š(¢¾(ýƒ¿o¿ðQ_ƒþ&øÝû?Ûxæ×Ážø¯ã_ƒz¤t kMâïG£Ë®Ikc§kzüiºå—Øo^ò)®˜Ii–7ý¯@Q@€?ðtwü £öæÿ»fÿÖÃýŸh£þŽÿ”~Üß÷lßúسíûýEPEPEPEPEPEPEPñqÿsøæëã…à©?µ´™üYñ“öµðïŽ|Gysq<÷^'Ó¼sãKƒ-ÄèÓG©x¯V–[€Z{‰.[íˆá)úmÿNèöŸüËö˽¼‰¤¸ðö§û5ë[¬²F ¿Ÿöªø' I+¢0Y”éšæ£ŠPñ‡™& %Š6_Ëïø3Â_ |1ÿIø­Ç{mâσµW„ü!â;;ûskwku¡éÿ|ñÝÀâ9 ½MKÁš¼Wvò[Âa–-˜Ý½#ý8ÿƒ¨üC¦è¿ðCÚÿM¾‘’ëźçìÛáíWËĺ•·í?ðwÅrÆûäFÚ4 j²%f“|I˜Ä^lÑ}Éÿ`øŸ«üaÿ‚PÿÁ>üy¯Ïsw­ÝþË? <=ªß^×z•ÿ€ü;mà+VéüéÌ×:¬¾mF{†u{‰nZw†Ýäkx¿M«ó þ±ðÓZøGÿœÿ‚}xÄV×vZå·ì·ð³ÄzžŸ·¾Ó.¼y Ãã×ÒïmÙRKk½0x˜X\[L‹=¼ÖÏ À¤‚¿Oh¢Š(ùÿƒÎîÏþ ‘û8_Ê’µ¾Ÿÿø=}rbBì–öÿj7‘±d]̪]Ñw½vÛþýÿ‚:Ïoo<¾ ý£¬åš¥’ÎçàmËÜZÉ"+½µÃYø–êѦ‰ŠVµº¹·2+.&ˆ¬ý/øïÀø£á=cÀ<á/ˆ¾ñ VÐëþ ñ߆ôoxO\†ÎöÛR´‹Xðïˆ,µ SŠ×Q²³Ô-£½³`½´¶ºˆ,ðE"|¼ßðNø'“L· ûþÆ-:ãlíû.ü3.8d>.0  ÇjüZÒÿàîŸø#>¡igwñ㮇op³4Ú¦©ðÅsXX£Ñ.ãÑn5MÚᢎ(MŽz‹%Ôw‚%¹’Þ¬?ðw—ü¶[¸­ŸÆ¿´¼2\¤7Àu­ ‰åµä©oªO~m¢Bfu‚Êk³‘¬“mˆþÝéðOØDšKöýt‹‰còeŸKý™¾ XM,;•ü©%´ðLNñïD-˜®åVÆTÑŸØ‹ö/6«ddOÙ€Ù$Æá-À/…&Õnv4ën|'å,ÌŸ!” r¿)lq@ƒÏÿyÿÁ–áà_~ÐRD³4Bñ>ëBÞHÄ…Ê,š´wbQ檽ª\ 5ºË˜Ä?ñÇüÇþ†ŸÚ#ÿ ^¥ÿËêýê_Ø›ö3K94ôý‘ÿf4°šQ<¶+ðáRÙË0òñ4–”yQbFBãËä\hÇû~É0Æ‘Eû.~ΑE,qÇÁ/†‰q¢…DD_ …DEUTU ÀOø‹ãþãÿCOíÿ†/RÿåõñÇüÇþ†ŸÚ#ÿ ^¥ÿËêýþÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?ŸMCþÿ‚ÿó3@çùÿˆÿƒÿaø'½ÇüŒ ÿjÇûPþÞÿi‡W ¼ ð§W·±ø}ã·²MÇÅKã_¾»Ó|R«hòßiÚu®³§[¤‘õ‰ä2Gë&»ÿ±Á:mîãO ~Ì?¶®­`m‘¥¹×|=ð3÷ive˜IvVüQ ¶Ë Á"]5ü2¼²ÍYÆ$×Ôÿü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34üuêÿð|À(R¡~Àß5)œ\.¯ñ§Áz"D€/–нŸƒ5ö¸fbÁÒHí„`)W±UðïÿÁòZ´’I¿à›:uœQÞÉåj+ý«.u/4à®±yš>û>iK¦Þ»¤“n»ªÁ«Â¾qe?¸_ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhüý5oø={öÔ×õ í<#û-þÈ_íg†øÙjo>:øòËOœyÒXÿh¯‚5ïjZ‚„òmåŽËL´W¦7lbTÿÁÑ?ðRÏ‹¯ügwü öcK¦v ~ÌŸ¶Þ¿š58ÒPŸÙ×ö„žEðóBÖÈTß¼ò]»;ë¬wßèkÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍÜŸðTïÚãGÇoø:ÓáÿîcQyìïÿÿý¬í³ËÛ˜ä·Óo|/ûþÏ•ÜvçPÔâ‚òêêÒöãìZEõíêÂÚMIlÿà‰ßɶWüùÿý¥!¼X—Y¶ƒàßí›á‹[àSO‘[Z|KøSñêÒÆÒV´YÙ½½ä0 6ßmÊi™»ÿDÿød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhøAø7à¯ø2'áKÁqâ¾:ß[BñÅyñ“Â_·ô¨fr»ŸGø_ð+ᇇo&X‹Â‘^h×($3­˜»ŠÞæ>ý´¿moø7·Ãµ§ü Æ¿ðOwø-௅_³ïíusñ/ö±ñ¿e^ ÕlþZ^|8ŸCÕÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Úüÿƒqà·ÿðKߨ/þ « |ý¬?ißøU?,¾3|Wñeׄ¿áK~о9ò´Þéh—ÿÛß ¾xÇÃ/öØígo²Ç¬½í¶Ì]Û@Ì¿µ¯ød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhø¥ý«ÿà·ÿðK߉ð^ø%‡í¡àŸÚwûköiýœ> þÓÞøÏñ'þ·í ¦ÿ¯üCøIñ—ðÿ„;VøMaãïlkž+Ð,~ÕáO k¶ZÛþÓª\ÙYÚÞÜ[~òÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øýµòü'þ<ÿ‚1üqýn‚Ÿ lŸøJ>&ü`ý?io…¿¼3ÿ óûUèŸð‘xïâÁøOÂ:öψ¾éÒ?µüA«éúöž»ªéš=‡Ú>Õ©êVQOsôkÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ,ŸðGïø8Cþ û-Á3¿c¯Ù÷ã¿íuÿ/Åï… ­¼3ãßÿƒý§¼Oýƒ®G¯kw¯eý¿àï‚Þ!ðÆ©‹kËy~Ó£kZ¡ó6 ƒ"H‹úKÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>×àßü>ÿþ {ÿÿÃvÿÃNÿÆ*ù¿áCÿÂÓÿ…-ûBÿÉVÿ…•ÿ ü"¿ðƒÿ¦ÿ…ÿ ô¿íÏøD?áÿ–ÛiýÍk_ðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐò}ÿ®ÿƒ€?à‘ßµÇüçöºý?g¯ÚÓþÆOŠ ðž“ào‡ý¦|)ý¹¨iŸ< â+ëøH|oðgÃ^Ó<FÔ¯<Ýc\Óà“ìßg†I.¦‚ ~¿ý?àå/ø"ŸÂÏÙ#öZøcãÏÛGû Ç?g?‚>ñž‡ÿ éûXêŸØÞ+ð‡Ã? x{ÄZWö–ð'QÒ5ìí_N¼´ûv•¨_i·~OÚ,o.mdŠwþ€¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ â—öÿ‚ßÿÁ/~ ÿÁbà°ßµGÄßÚwþ¯€ßµ7ü3gü(ÿ–ý¡uŸøN¿áð]Ö“âßø¦ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúkðoþ:ÿ‚ßÿÁ/oOø&®¿ðöOý§ák|\½øÍð£Å–¾ÿ…-ûBøÍÐ<5{«Í­ßÿo|IøMàï §Ø£º¾Ë&²—·;ñim;+…þÖ¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>×àßü³þ ÿ½ý”ÿh_ø,wŽ~>~Ó¿ðx[öªÿ‚Œü]øñðTÿ…-ûBø£þÏ…>(ñ¿Ä=cBñWؼð›ÄZ…þݧkºUÇöŒí<;âKoµy7š=¼ð\Åöµÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ~DÿÄQßðBú>oüÖoÛÿ¡öøŠ;þQÿGÍÿšÍûaÿô>×ë·ü2ì›ÿF¿û;ÿá”økÿÌÍðÈ_²oýÿìïÿ†Sá¯ÿ34ùÿGÁ ?èù¿óY¿l?þ‡Ú?â(ïø!Gý7þk7í‡ÿÐû_®ßðÈ_²oýÿìïÿ†Sá¯ÿ34Ã!~É¿ôkÿ³¿þO†¿üÌÐäOüEÿ(ÿ£æÿÍfý°ÿúhÿˆ£¿à…ô|ßù¬ß¶ÿCí~»Ã!~É¿ôkÿ³¿þO†¿üÌÑÿ …û&ÿѯþÎÿøe>ÿó3@‘?ñwü£þ›ÿ5›öÃÿè}£þ"Žÿ‚Ñóæ³~Øýµúíÿ …û&ÿѯþÎÿøe>ÿó3Gü2ì›ÿF¿û;ÿá”økÿÌÍ¿ðY?ø-ÿü÷ö¬ý¡àŽ>9øûNÿÂ{áoÙWþ 3ðãÇǽSþ·í áø@þø_Æÿ5wÅ_bñ§Âoê>(û¡j·Ø~ ´ñ‰.~ËäÙè÷Ïmß¼Ÿñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhò'þ"Žÿ‚Ñóæ³~Øý´ÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™£þ öMÿ£_ýÿðÊ|5ÿæf€?"â(ïø!Gý7þk7í‡ÿÐûGüEÿ(ÿ£æÿÍfý°ÿúkõÛþ öMÿ£_ýÿðÊ|5ÿæfød/Ù7þöwÿÃ)ð×ÿ™šü‰ÿˆ£¿à…ô|ßù¬ß¶ÿCíñwü£þ›ÿ5›öÃÿè}¯×oød/Ù7þöwÿÃ)ð×ÿ™š?á¿dßú5ÿÙßÿ §Ã_þfhø±ÿƒ{ฟðKŸØwö,ø¥ð—ö£ý§ÿáWüAñíñ×â–áÿøR¿´?~ÙàO[x*? ë¿Ú¿þø·D·þÒ}#QÙ—z”ÅŸÙó§Ú‰`2þìÄQßðBú>oüÖoÛÿ¡ö¿]¿á¿dßú5ÿÙßÿ §Ã_þfhÿ†Bý“è×ÿgü2Ÿ ù™ ÈŸøŠ;þQÿGÍÿšÍûaÿô>ÑÿGÁ ?èù¿óY¿l?þ‡Úývÿ†Bý“è×ÿgü2Ÿ ù™®"ïþ íûßÝ\ß_~Ãß²íííÄ×w——³OÁ‹›«»«™k‹››‰¼óOq<ÎòÍ4®òK#³»31$ùJÿ‚ïÿÁwÿà•·ü£ö£ý–eŸÚŽãâ¿Ç¿Š÷­>ü=´ø ûKø^ïÄ·~ý¥þ øç[µµÖüqðoõ¸µðdž5½FunÎMFK5ÓtÕ¼Õo,lnJþ¯´Ø öðö­¥ëúìSû$èzÙk.µ£þÎ4Í[Gմ˘¯tíSKÔ¬¼柨é÷Cwe{i476—0Å<Ç,hà ­¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠüÕ?`ï°¿üOã—üöø}¡üqø]ûihz¯íû!ÉãM៤øá[ÝOQо?|ñŸï´ß†Ú¾¹¨I¬ø€x¯áÇÄ_xO¸ÕüQâ}sNñÀÿ„†ÞÇÂ\—í¯û!þÕ_ðYOü øñûà6½ûÁ?¾|YðÿÆÏÞø›ñ;á7?iÚkZð…¶§iá…:g‡g/ˆ_¾ü7øe»RÔîüSâmGã·âN[íóDðΉ©øn+‹¯è>Š©aac¥XÙiše•¦¦éÖ–ö~Ÿao …œ)oieein‘ÛÚÚZÛÇöðG0CE**¨·EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEW¼¼´Óí.¯ïî­¬l,m§¼½½¼ž+kK;Khšk›««™™!·¶·…Yç•Ò(¢F’FTR@Š+ò'áü—ã7íœ|kãø'‡ì£áŽß³¿‚üWâOé¿´¿ÇÏÚF÷öjøkñ›ÄÞ ½ŸJñRþÏšo„¾~Ò>6øá/X‚MßÇž'ð×ÿk:­¶¥m£ë—±é—Suýà Þý¨>$|gýœ|Yào~϶ìã6–~4þÍ?u/ê¾!Ó¼;¯[X]øoâßøfúóÃÿ¾øš SOþÈñ¶‹öË)ï¬,|[á¿ j¦“i~úEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE*ÿ³çü-ûrütð—ÃíGKÿ‚~ÞZ¾±ñ#žñgƒ ·Å]'ÀOwu<ºw†gø†<3á ?kšf”ÖPxRÑô ]ëÃQ·Ð.µ} -büÖ袊(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¾ ÿ‚ŒþÕþ9ý‰dOˆ?´oÃ/‚7ÿ´Ä? xÇà?‚üð+I×îü1­|PñÆßÚágÀÍ+º·cá¿]Ùø‚öïâDo ¤>Öš÷X†ÊÁ¬dK¦*öýüù~ΟðWoø(?íYâ}ÀÞÿ‚þÖ5ûý6ÏÄ¿¿lOÜ~Ͼé·^Rë'¹¾ñW¨üuñ KçYxcÀ^ ½×3ÿ„Z)øVv³â]&Û P¤gq`ªÀ¦ŸðE¯hÿ ÿà’ðN?hqÖ£ûüñìëoÛ¡Ö>*øFø¡â9.n™¦›_ñ†§5ÌâUK«‡–æ;k8æ[H? ÿਿ'ý—¿àçoø#×Å¿ j ¡ÏûCü(µý–~&[Ûioã øëâ—Ž<áÛ xµä6Ú›[ø«â7‡u=7t }§á_æmEl4Ë Oèþ -souÿ®ÿ‚jËkq ÌKû~ÈÍ%¼±Ì‹qgû>ü>³¼·g™DÖ·pOks"H.!– UeÔ2Ÿð_m÷Äßðp—üFÑÖ;JËâÏÀïÝZ‰á¿Ú×Âþ%Õ/5"G“áí^h‘c•¬æ@àG# öáEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP/ãÞø;Á^0ñv›á|AÔ|-áxŽÃÀ^MOøÞ÷CÒnõ;_x>?kþð¼ž(ñ,ö±èÞOx£Ãzj×¶‹¬kú>œn5oæ+öúÿ‚Æ~ß?ÿk_ø%ìÿ¥~ÈÚŸìsðïöæý¶þü:Ö%øãâ¯ô£âïþ˳υíu»oâN«àkoC¼ñ¿Ä/?‡õ]/ᧃouM/A¸Õ­íï¼suñ—þüÿ‚£ëÞ#I§o†_²Wм àÛy.'XtK_‡¾(ý~o´†+)¡Ô¢¸ñ&§-¼âX ÷ˆ//…¼W~K@ûûc]ÿÁB¿àžŸ³çlŸþÖ^-ý¸ü7ð Ãò|Ký¡?g?Úá7ìçàh¼YðƒÃDêu¿¿g/„5ÿ†¾(ð_„bÕø«Äß¾|Zðö«a«Y.£ªhzpñwÅkÕÔµÖ×Ä:ñ Þ‰£]\=¦¯£ßiÐjš µá¿³Ïíq¬þË_³/ÂÏ?>ÁN>>þÒÿ >é~ñ4Ú÷ì¡ñ‹â׌¾0xßI³“ûSR—ö—ð~•âoÙNéu]MnmtŸxÓöŒÒ`¸ÓbÓîõÝi®®òëƒÿ‚$~ÀÿdþÙ´oíC§iý¥ÿࢵ'Žÿj‰ ¼7âè?tßøŸÅ¾$ð¿Ã—ñ>”?±¼EâM*ëÇ&»ñ±¡I6ˆÆûNÒôùî×I’þð÷&Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿>?mÏÚïÅüWðöhøŸï?jßÚ×Ä^"Ð~Kñ[VK/†ß|#à›}&çâ'Æ/ivšÖ…â?iÞ> ð߇|#ð뺅‡ˆ~$üCñg†xSÂ|®j–¶7ÐxAu‹>7–­se jÚÆ—éñ^‘ìðF¯ø*ßïø+‡ì™kñ×Þÿ…ñ?Áòü;øïðÀÞûü@·Òl5eÔ|5}.ÛÍOÀ~-ÓoâÕ¼-¨ÞÃÔ/¯áËÙ.µ?jsþŒ|nøÃàoÙïàçÅ?Ž¿uXôO‡¿¾ø·âOŒõI56¾ðn‡{¯ê¦•ãYïeµ±’ Eo6öö[{Hæš4oããþ ¿øñG@øûqþÕž,Ð.ü1ðßö£ø·ðãMøU¦È¦ßL¿ÿálMãm{ö¯(y4?íŠ6^‹R[8 º¿ðf¡c÷iSEhý¬QE|Õû`ø3öšñÿìÛñKÂÿ±·Æ? |ý§.´­'QøAñ3Ç~ Ó|à}?Äžñ.‰â9ü/ã/jzn·>ø“¢é:§ÃOø¢ÃB×õÿé.¼ñφ5×|úExì³àÏßþü6ð¯íKñJøùûAXiW÷þ)xÁzÃï ëž$ÖõÝW^:G…ü+áÝ7G°³ð§‚,5;/x^þëMµ×üA xgNñŠÕüQ«kÉïôóßíñ§Ç¿<1¡êÿfÿµ?ˆüC¯Ûx3àŽ¥ðOD¾ÐÞM>òò ÅúçÇO‹ß¼3¢øPÜZŦ\jv:¶·¨ÚÞßZ;è¯d.ní¿ ¿bŸø*Wí§ûFÿÁw?i¿ø'ïÇ…¾ ýž~~Íÿ±mçÄ—ø9áÏè?|A¨üEñ?‹?eoxGÆž/ø¹g¡ib}NÇá¯Æ‹­&_ø,[ø;IÔuMRÝGÇ7ºf‹âKé6¿/ØßþW$ÿ‚±Ù€|8ÿÔþ §@×í~øöÕý ÿà¥?¶§íGû7þÆ_m?f¿Ùgöñ“ðËã§í;áÿü=ø¡ñ‹ãÇÍN}f_á¿À»‰º_¾x3ÁߣÐõH|SãÏ|=øƒ¨jºü}¦‰áØ´kñª7ìÇÆOðÇà÷ʼnVÖËysð÷ᯎ¼qohà2]Oá? êºüVÎ¥ãg“OX˜#1×ïå3þ ¼/­Á7¿iïjÓ\ê>-ñgíÿñ0ø\¼¹¸žïV{€ÿ³Ž±×BILåµ?kw“ÜÇ\\Ë|ÂæYRe„ôCö‰ý²ÿhŸø$ÇÇŸÙŽ×öµøÕsûT~Â_µ‡Å[OÙñ~?xûÀ þüyý™~8øŠÚçTð üCÔ> x_áÁ߈ß|[¤é~#›R¿ÒþxÅ> ¶ðε®Ý_ëöÖVÚ>«ú-ÿø]ñ{âïìåeáŸðß‹þ)x{ö—ý†¾0xÞ0ñWü!Ô¬gïÛ{öxøñâÄ×¼VšV½u£i–þøoâ Ë«3Ãþ!ÖÞ;so¡x{^Öf±Ò/?ÿàð=>Î÷þñ«ÜÜÃæÍ¤~Ò¿õ =üÉSì÷’ŸéO6ØÝ]Öõ¿—:ËóüЂh¡’?¨×üm}á­ÆŸô_øsWõÿÛ—ö¾ýµ?à›Ÿ¿á°þ3/ìïûFþÏŸ|Wà«/Ú'À¿þüNø=ñcÀ>ñ߉ô߈?üQâÏÚã.ñ"Oø—Ä~]oÂÚ—€ü úç‡ßUñ kÞŠÆk(?Z¼ ã üLð?ƒ~#øW¶ñ‚¾ xSÃÞ7ð†½g¿ìšß…üW¤YëÞÕí|ÅI>Í©i7ö—oD*eܪÙð'þ ™ã_ŠŸðTOÙ?ÆðOØçöyý¦tÿ~Ò:×Ãß üNøñûGþÌ¿f‚Ÿ³çÿ|@Ðê¾ÓüGøñWÄͤü?ø³¢ë^ þÎÒgÑü#â KÆv:þ…ª¦­á½>;­4ÝyŸÁO€^&ÿ‚¡Áo4/ø*µÿƒ|WáØ‡ö%ø3oð_öD×>!ø;Zðm÷í1ñRò_ˆŸð”üZð„ø Áâ?Ü|>ñ½ÿ†õÝ)5[Í/ÀÚ_†´qhú!ûmkVýŒkŸê²ù^ƒû1||Öµ)²ƒÉ°Òþx®úò\ÈñÆ<»x$|É" ÇÌê¹aüòÿÁœuoÁ#5¿j0]Ågñ‡ö¹øÍñA’âŠ'Lð„“Oa#" ›E×>ëVÏ"|ð×ìçÿ¾ý™áøŸ§|V[Õý¢~+^üføAðÐé¿¡”YêtM?ÆÿþxÎ)¾)YÏ=¯‹¼qá [OÔt%ö‹á½ZÃÄ^!]sà sûMø3Æÿð^ˆ—?³g€¼M­x þ 'ð[âD6¿´ÏÆMK­3Ä·wÅ_‡^ i/~| ÔÖ)`øðËÅz40|GøÍes&â¯Z¾…ðüj/á ¼CîÏÂ}/à—ÂÛ ÙŸàå§‚¼að?áïÃõ±øEàô²°O‡Ÿ|A'Št‡r Ó ¦iäÿ¼_g£ÜN¾f¥qá½ff’y¢žgþ=< ñgþøcàÏ |:øuÿÓý‰¼à?h:_…üàÿ øƒöbÑ|;á¯è¶‘Xi:.‹¤Ø~ÚðYéúvŸgVö¶¶ñ$qF€êOí÷ü›áçü}tOÚ§ö‰ÿ‚ª|?ð§ÂßÚ§ã¯ÅŸhz_üªü6Ö|1¤üøEðÏAÓ<.wðÏÇ4ë[kßø³ât³iZ׋ouÈu}ªOµž±gæ€~ÖÑE|Õû`øÏöšðìÛñKű·ÁÏ |zý§-t­'NøAðÏÇ~4Ó|à}CÄž"ñ.‰áÉüQã/êz–‰Þøm¢êÚ§Ä¿ø^Ã]Ð5ÿi¼ð7†^&Ÿ{ðïöe´ø…oÿ §Æ·EÌ?ˆì'ý…t‹ |aý øÓÃ>-Ô¼eñ^}KÁ? |ã_ xöðŽ·«ÿðÃOkŸµ.‹ûG\|@Ô¿àµcÅm7üÄ´>¥a­ü_ñ/†ÒòÚÇá^·ðC\€¶™ªþÈxZËÂvŸåðMÆ{=GÕ­týMøi§Z~ŸÿÁ?àŸºìk¡ø÷âÄ/ê¿´gí§ûFj¶^5ý­¿koÙYÛøÏâߌíìâµÓü;áÝ>Ö(¬>|øyaøGðÂðiÞð?„ôí;NÓ´èL &Wü þ ûÿ UÿÇo>=ÿ†sý¾?g?¶ê¿³?í1¥Y}£ì_hógÕ¾|cÒ`Š_øX³ÿÄ?6ãLñ‡ƒõ;}Gû'ûFï_Ð-&žmkEñ éMà²ÏŒþ?|@øðÛÅ_µ/ÁÍ+àí¥_Ú|Sø[áÿh_|7¡ø“D×u]êþñW‡u-bÂóž7°Ó,¼wá{ ­Jë_ðþâm;þ+dñF“¬E¿Ð_Èìoÿ+’ÁX¿ìÀ>ê ÿÓ¯êö‡ø¥ñWá‚´¿| ý™¾#~Õ^%½ñE–‰}ðóáŽ>x_Ñ´;'[¿¹ñÞ³ñóâoŸÜéuþ›¦hwf›â+ßÍ{â->êÏE¸Òìµ›í;ùFøðsþ íð¯þ ©û\ÁV¼Eÿø•{ð§öø¤| µøg¢þ×ÿ°œÿ¼!cáÝöjÑ´ïOq}ûAiþÕîõýžVâ÷AS°†Å|TcƒZ¾:8mDúæøÕà‹‰Ÿþ-|7´›ì÷_>xóÁב|‹ø[UÐa›t¹|©/Õ÷H ¹”þPÿàË{§ÒÿàœÿµÃíVÊÿKñ_„?oOˆ7^!Òµ ckq¦¾§ð/ö}Ñ#²¹‚V[˜/íu/kV×¶ÓÁ·’MÏ'šÿT_þ"üHø¥àÞXÞKåÜx“öø#¢éI”}ü¾7ñ ‘|άq¥è:”ØdÜä ŒI"~ñÁ?¾êßÿ`ߨ›á&½ݶ¹ð·öFý›¾ëV×ð=µõ¾­àƒ~ ðΣí´‰ÛÝÅy¦MÄoÊñ²!R£ò¿ö•ý‰ÿhÿø+·í û2Oû]|›öVýdï‰Q|v“à7þ!ü8ø‰ñïö£øÃa§ßé^µñÝÀïüIøAðËᇃ­n/ãÔ­ì>&øïÅ+Ò¼M¯èq.„5Ÿí? ÿA4QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE|Á­~ÓZF•ûh|4ý ðúßkþ=ý˜>8þÓZ—І¿ á#á'ÅoÙëáf‡áöðºé·šøê÷ã_ˆ5×åÕô˜t3ðéôë}7ÄRx†æëÂàOÑE?ÿ²/Ä?ø.>¯ÿ‚ý¯<ûPxÁÚoüE‡Æð_·Ðüc§Ã£G­Ø¯Á{ßx³B ñ#ÅÞ9ñW†[Ï‹ú?îuxWW‡[µÓÂ5èŠ( Š( Š( Š( Š+äÿÚóö¦Óÿdÿ |ñï…áñ}ÏÆoÚÃö\ý–t&_ÿÂ/%¦¡ûI|gð§Â©|QmuýƒâíY¼¥kúŸ›Ã_f°ÿ„ŽßÃ×Gööƒö¯íkP¬(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¼›ãŸ„¾+xïáO‹¼'ðCâõ·À_ŠZŶ›…>-Ýü:Ñ~,CàÙ­õ­6óS»?¼Gªhº'ˆ¤ÔtKmOE‚=GQ† >}N=[Ê»{³¸õš+ùŒÿ‚~Ü¿·gí=ûUÁa?goÛcãÖ‡ñÞØ[ã¯Ã_Ÿõ|&øwð£EKÍ#Ç¿µOÃÿø–ÃMðf§ë3C㛄~ÖMñ_ˆ&ü?øðÓâ—‹¼3ý™¬Eý‘àOŒ#ø³á?‡ZïöÌú|^¿ÿ„‹Ä¾)iÿÙšf«{¬ið‹ý«]ÓôË-o÷:¿ó û6ÊàðP?ûEç‚ÿõ ýˆèôþ ÓÿFøñÿ½økâ_Zwì âOÚ3öuðV‘áy3kß u«û¯x߯gÁ |8²ñŽ™¨xfIâmÅÚ…þnÿƒ£¿å·7ýÛ7þ¶ìû_qÿÁ|5 øSþ GÿÛÒü9¥Úhú}×ì9û.ø–âÒÉ pͯxÏàσ¼aâQÔ–ÍÞ¹â}wWÖ¯ß8–ûP¸|…ðçþ ©ðÃÄž&øÅû8xïöuø³àïø(ÁïŒ^øÿ 1á}kÂ?üañSƾ2Ðu¯xWÅ_¾%-×…,þŸfíþ û!øCàgÀßÚƒâ·Â¯ ~ÐÿiËïÚ#GøkñUŽ{ß|'¯þÏ/|)ö»(¾ßw¬xYøŸ¡ÚYYë·6ºŽ§‰;ÍùWû%øwDÖ¿àó/ø)ö¥ªé¶××þý†|â/ ]N¬eѵ»Ÿ„ŸðO ÜjVeYBÜËáÏøƒHfpëöMVéB‡euÙÿƒÕ¿å_ÿìÿþë:þÕTýsxƒÄ„ô sÅ^(Ö4ÏøgÃ:F¥âxƒ[¾¶Ó4m BѬ§Ôu}cWÔ¯$†ÓOÓ4Í>Úâöþúêh­­-`–yäH£f“ßÿà¤_?m Uø¡ÿ÷ý¼?ñköpµÕüA øSö‰ý§ÿhOöRðoÆ]CÂ×Óé:åïÁO xWöý¥þ(xƒÂöúͼú5¯Šþ x'á~‘©jV½½Œ“®™,’|•ÿTøû‿à‹_´Yðºœ>3ñÁŸøûUÓXgÓ¾øâN„ºÜSÜC‡ƒNñý¦àÝQ $Wúw‰.t¹÷Ã$2uÿðJO†ŸðPÿà™_° Ÿ?jŸØG¿ ¯¿dÙóWðdžõ¿ø'ÏÇø‹CƒZøaá­_PÓÔô_5ßõ³§7‡~,ü'øáÇÄï…šÜzÖ†±ø‚ÞËAÖ´›½gJµñ†tsªéê3|ý¸>(~×Zoˆ¾!þÅß|ñ#ö}Ñ|oã/‡¾øëñ»ãÖ·ðGÃÿµ¿‡ž#Õ¼ã]wàLJ¼ðö×üKðÿCñ®…­xI&`¿“Vñn§ã |.×|%{¦éše¿‚|K£x§Mñd?Ëü3ãÏü_ø(ïüGÂ_þ ~Ïÿþk_·—¿~Î?üûFx£Æâ§Æ¿„ÿ¾髨|tø³{ð[ö~ Ó®?ágè¾ðç‡>ø¹¼¦x£Ç:¥Õ§Œnb´µŸõËþ ÝÿSø‘ñÏöñÑ?d?ø)Ïì)'ìWÿð×ÁŸ‰ið7Äz~£?ˆþüWøEâ[ÿxÇâþðó[ž¹f‘ê:—Á_ ø¡ŸGñ_ÄOj¶ß 5(¡ñf“«èwZN¯ògüwÿ)Mÿƒcÿìÿõýh¯Ø€?¤oÙËâ7í¥ãmsÄvŸµì±ðWöðý–•mqá}gáwík®~Ñzˆ5™/<»½3TÐõ_ÙàD^²¶²ÍÔZ¬ZÆ»%Ìø³:d MÐðßÚþ Eá_†ÿ´¦‰û~ÏŸ ¼MûX~ÚzσÄ­càIáïx?áÃMð¤~?|]ñAŸDøm ß½ÕŒ:.¥èž5ñþ¹6­¡3Á7šö“yw÷N¥ñKÀšGÅ?üÔ5ß³üMøðÿâ_Å/øgû3X—û_ÀŸüGðŸÂußí˜4ù|?aÿïˆ>8ü-Óÿ³5=VËXÕÿá(ûV…§êvZ'ˆ®táÓþ û½ý±¾9ÿÁJ?àºßüñàÂŽþÐ^°ø€¿´gìÛñ#öŠ×›H“â¿í+§ ø&/~Ö_²ì¾Ðü /…t/kVœ~6†öÖÏÁ~–ž‡Ã“ÅâèûãüâWìMã„6ðRÙsÂÿ³ïÁÞ9Ó~xkö¡ø ûBê_´ÇÀÿ|E×­šçÃ~øéq〟³GþZkÿeÕ!³ñm=B÷N“þ Ùÿ;øÛÿ»ø]¬~Ð_ì+âÚKöwðw‡ü+wñâæ‘ûA|=øcmàoxÛÆÒø ÞÔ<«xÅ~;Õ,'×o¼m}â@¾°³›Æº\1ÚÝýƒZ“OóŸø(ü3öçÿ‚‘þÊþ?ý‘¾=~Û_±¾…ðóâ£à­^ïÄŸ ?àœŸ´ˆÔü ã= Æš]÷…µ_ÿÁMüo X\ÞÏ¡V’ûÙŸÃzƵekö+˨5 OÿƒˆþÞü&ÿƒq?hÏ…zŸ‰î|o©|3øeû|?Ô;ø—á •ß‰"~Áþø“ö[ý¸>hqxÆO‚Þ0ÖtïxKâ¿Ã›‹X¯íþ&þÏ¿4KM;Eøàï±O—Öºž‰àŸé3Ûk–š§‚-e𷊱»ïø$ïü¢Ëþ §ÿfûÿë:ü9¯ægþg×uƒŸðUø ÇÇ/‚æaûDIñƒÄ>šÛK|j~ ðŽ•ñ“à·ƒ¼#w´I{q¤x²ãâgÅ ]Ù5İêæ±c0ù÷Mrý²ÕKù®m¬on,¬ÛQ¼‚ÒâkM='†Ùï®b…Þ 4¹¸e··k©U Yçe†"âIX"±«tPó‡¨ÿÁ}¼eðwööðçì5ûfþÀ~1ý•õ?|$ñOÆ›IñÿÁŸµ?øFÖÏÅ ôÿ‡~øIàmþ x×â×Ä? ]ü(ð¯´ÏZx¢çÇ÷V‘¦øƒP¿Ó­o~¯ý¨à¡¿¶Çì±ðÆßµ¿Œÿà›úEÿìëðãH“Æ^<Ð-?l þÖ>øujÂmWÆçÁ=;àV³ð^Fðæ™"j¾$м=ûVøƒQÓ- Ôž#xš{É/ãŸíÓá­Åðx¯ü[Kñ—i¬iö¿°çˆ êÚŽ± x/À¾øñ?â‰uo xšãÂúˆ|;á¿ëþöÿÁeôŸÙö‹Ðgø)×ÁŸ þÈ_¾|@ø·ð‹ã—ï·ß´gìïñJøU¥]k~?ðü%·Á¿€ßü=ñ#KÓ ôŸ Þ|º‹Åú†•¡è:µæ¹®xsNÖ¿(?àÊ h6¿ðMoÚKÆú]¤>'×n?økWÖ‘¾Ô4 |ýžõOiwgi£ê3ñMÝ’9µËö%¼Ðÿðr÷‡tOÿÁK?àÚß ø—M¶Ö|9âۛľñ‘x¬Ö𮉭||ý‚4ÝWMºTdv¶¾°¹žÖuWV1JÁYNýkø÷ÿ0ý²¾~;.ý¶5ø&…Ü?²÷´8ü{âÆ?µàÿÛ3EøL®ï¾!jß³eÀß|6ÑÛGÑdµ×uÏk?´öŸã­ɯà×t-3PÒ5 8¿M?f/ÚCáOí}û?ü'ý¦>kW:ÿ¿Œ¾°ñ„5 ë'Ó58í.šk[í'ZÓdyN¯xW´Ô4zÁf¸ŠÏXÓo­áºº†4¸—çø+ü¢Ëþ Yÿfûdë:üF¯€?à×ùAGì3ÿw3ÿ­‡ûAPâÇü?öŽñ/Âø+oüQðÏáÀ¿~Ð?þ/þÞž%Õ<áÝiÞðƒá¿‡?´oí£|mñ{ã‰ü5ðãÂZ=׎ü%¦YÁmaâßø³W×m¬¼àŧxŽïBþ„~>ÁQ¾.~Âø;ÅŸðQoÙNø9û8øÃÅz?‚ïÿj_Ù£ãέûUü,øI®ø’h­|:ÿt?|ýœ¾)xAÔ¯ŒškxŸÃ^ñþƒ«.•¦-ýÅö¯onŸ’ßðn'ü¥7þpÿ³ÿÓ¿õ¢¿oêýÍÿ‚Íø?Ã>9ÿ‚KÿÁG´_Á Æ•eûþо0´ŽãìÛÄß>øƒÇþ ~×ÑyÖ¾2ð΃sm±çíÅö)`¼ò'ŒôRÃÄÞÕ|7eã-3Ä:£á GC·ñ6Ÿâ» ZÂóÃwþ¼°MVÓÄ6Zå½Äš]Ö‡u¥É¥o«Au%„ö%äW nË!üŸøAÿ8ø‘ûlê^<Õÿà›Ÿ³†ÿhO_¼Q¬ø óö£øûñþûöbø!ñ#Ç>‘SÄ:/À“áO¿´ŸÄÿ‰:FŠÓZÛ\øëSøkà¯ßêOm x‡Y†ÖK¶þk¾þÐ?´2ÿÁ–ÿ|Oisâ)|Iá øßàWƒ5èn/SV¿ø ­þÔømâãê8™ô_ |=ñÄ/ …–ÚÏÃ^cm†ÎL~°ÿÁ¾~ÞMÿŽýˆ'øûN~Ä^ø]{ð»VÔ¼9áOþÁ¿þ&ø¯G¸Õ> øËQñ$^%ñç…ÿठ4k×*ºÖï5mGOøsá7÷3Á6“Ì3K(éÇì‹ÿ/ð‡íûE|hý‰þ,ü(ñoìÃûk|ÐôÿxÏàwŒuÝ ÆzŒ¾êÒéÑi¿þ |MðضÓ~#ü=•õ½ ÛËýÁÞ&Ñ﵋[[¶sÇv-þý¯?à»~>ýƒ?k‚?ÿkŸØ7Zø+ðKã·Šþ$Ûø;ö¢Öi_ø›C¾øuð¢Î;ïxãOøoðûÁ~0ñ ƽgm©øV{O†Ú¶± x‡R_è¶š}Íα#éCØ´¯ø%?í â¯ø*‡ìéÿHøõû_üñ>|ñ·ÀëÏ…¿cßüÐþ'x#Åø©c¤ÅâïøçöÌý¡u½ðlj¾(Kâ{i-´§µ½_iZ_Ù,¤Î©æ÷üCà¿üCÿ‚¦Á¶>ñm„z¯‡5ÚÿâéÕ´©Ò9-uK];â/ìSªÿfßC4rÇq§_Éc®£lÉ‹›®-ÃFd(ènÿø™¤Á@¿e¿Øwãwì ñOá?¶?ÃÝgâoÂEã›ÏøçÁž²›ÅQé‘~Ðß 4_…V øc®K…'¼ñ~…àÿŽ_5…Öz¾qñ 5äþëQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüå|Yý‚ÿjÏÙ{þ oâø+ì»ðšÛö¡øeûJ~ÏúwÀÚ›àw‡|àüpðäº.ŸðÏJÒ¼yð®O+ðÂoY-—Á?…†ëBÕ¾$ø"ñä²ñ, äêê)ýÑ@| ðÆ«~Ô¿¶WÄσú¯…þ$üZøð³á÷Ã/Ù¾|<Ö¾!iŸ ¿g+‹>+ð„ücã-'Åwm>(øûâ‡Ç?‹w·ú?u¿x[MÖ¼-g{ñ'UŠ×R¾Ó¿¾|6ÿ‚©xþ ›ûJÿÁQõOø$§Ækσ_?e]#öoѼaûX~À­ñ7E»ÑÛà.¤ž-Ôí®?i{ Ëmu©|¿ÓÛGµñ3Ëoc­YêcQ¸žÖm&OëÒŠþz¿à¿_ÿn_Û+öø×û ~Ë?°_į‹ZŸÇüÖár·Ç/ÙCÀ_ü¨ø7ã_‚>*øƒÂzž‹ñ ㇆¼}«xƒO´ø{÷:W†·3xŠÞóOñ5êé×vÍôgü—ÆŸ¶wÁ_Øá/ÁOŒŸðNø£û"þÊ~hžƒã¿ìsâ¨h|3ð&‹ðçV¶øk®øwö€¼Ñ<*͆`ñ$²|[½ð™¶­›aªê×–s³~ÄÑ@ÇoìãðGþ §ðÛþ Ñû^ÿÁSü[ÿ§ø³oðcö¢ø üÒ<¦þÕŸ°–£ãÿE é²þƒgãODhÛmþÚî?ÙîóQÔôQº»ÒÓÄÐÛX^ëòé%µ?Sÿƒ˜ÿeïø(üŸà‡„ÿc¿Ù7ö ñ÷Ž´O†´w€>7¯í ªü|ý’üàéšOÁ?ˆž¾Ð¼1áürÐ>'Û_éþ øµu¤j7^+🆭þÕàÝBçG]kGÕô­Uÿ«ú(óú kðQÙ7ãÀ¿Û›ö1ø…û4xs⯇î¾xÇáoŽ>*| ø“ªjúf¥£iº‹øÃÀþ5øãÿˆš=‹xgÄì$ðž­¯Çáß[kþ²ñx^ÒÜÚ,ŸŸ_ðOß„ðQø%ÂØ¿c?üÔà¡?²ÇÃMkÄ1þÌ¿g߈ÿþþÐøs®k:·ˆ,þ|høYûL|Oøà}Bç@Õ5”Ò¼Ià‹ºÒZh×vºDZ4–šm¤?Ð5ð¿Âÿ þÒ¾4ø[ãÇÇß /ìûà…ÚŠ´ÿ„³†•ñNñ׊õÏxÖÚXø³ñûÄž fðjþðšj>øqð»Á:ïø3Ã>øy¢¯‡|à |@øy}âx‹ÄšŸ‰´{k-7LÔüGþ ÿÛøõûeß~Â_µ?ìœ|)®þÓ_ðNOÚ3Løõðóáwõ¸¼/áï‹:4ž-ø_ãxF_3hzˆŸ\øAà›&çÄQÁ¢ObšÕÖ«¦Iq ÏûãE~züðïÇ/ÿ´îƒûY|jøâOÙJø[û<ø÷àÂÿ„¼ið§ÆÿïõÞ>øCñ ãwŒ¼O}ð3Ç¿þiþ³ÿ áÄÞ?×=|Sýš¼Y↺F­n¶~!×>xörø»û@ÃãïˆVÖ°x Qø£«|,ðLJõãcâïhž)±Ñäð‰~ ÿƒ—¼-¤øþ ûý¯¼ ‹ÕмáßÙ/ÂÚ*êZö±¨®“áÿÚÇötÒtá«jsÝjZ¥è³´„]j:…ÍÅõìþeÍÜóO,’7ôA_Ïÿü#ðÃöÖý®¿b/°‡ì“ûxûã½ïÇ?üÖ[ã}ŸÆŸÙ“á¿Ã¯ê>øýá‰Ï„õ] âÇÆ/|EÕü@4†Z{Gs¤xJ_ ÉtׇÄÓj>µ¤Û€gÁ+¾3~ÝŸÿàš±‡)ñ'ÅÿÙÓ⯄~)ê¿ ü §|;Ô5?7Á_Š~9ñ–Þ°ñå¯4Gj|A“¥ßëï¦]ß?ê…Rþyílon­lfÔî­­.'¶Óm¥µ‚ãPž^Hlm澞ÖÊ®äU‚)o.míc’E{‰áˆ<‹nŠþ9¾=|ÿ‚ªüUÿ‚î~ÆÿðUþ ;ñ’ÃàÿìËû<ëŸuï‡:·íYûGñ+Ä×"ðïíC£]x“H´Õç…í!Ó§ý¡le·Òï5ï3Q‹Ã~eöœúœ+gûÿ(ñ¯í§ñöø¿ðàwü“ã'Ĉÿµ¿ì…ñwᎳa7ÇÏØïÁz_ìýã/Œ×~ÉáÿˆÚ¿Š>=Ú[ø§S𵿈§×¥¹øTž8ð¶°ÚriVþ)³kÓiûE~Á½ lÿÙöø?û ~×±§þjÿ´¯‹:•¿Åë³wÄŸ|Aºø…ñçÆÿ4ýEÒ>|[ñ¿Ž4MjÃKø‡47’kþµðû/‡ne‡^k½FÏM_.ý›bŸÚÃþ {ÿ'ÿ‚þÑŸ ÿgM{öÇý—à£þ3ðÏÆÍBÛàßÄ‚> øéðo⮓â/Š~,Öô OÁ¿´_Äñ_…5Ÿübñ…Ìæ‹ñNBÏK‹F/¡Kz—VUý#Q@Ç'üköÿ‚¸þÙß¶ì û}ü6ý˜ü;xß±ÿí ðóÅÿ ÿd]oöø;£j^ð_Ãhß>è´ìƒâÿx#Dñ†~ŽÃÅ>ð¿Ç_âUÕÊjÿ ã†Þ_ø[Äí;xžÑî­´ëM2öñüÿþ éð3þ ›ûp~ÜŸðKŸà–_m~Á7ÿi]Gã7ˆgñwíOû é·Æ-<|^øã5°ðn™mûDj/áëk½àI{ CÅÛjsâØmõégE¯ÿ°ª(ñãþ 'ã/Û3ãüÃâ§Â„?ðN¿ŒÞ/ø½û_~Ìß´¿Á}ÀW_¿cÏ Ëû8ë~;ðN¥ð×Â÷ÿ¼M®|~¶ðŸ‹mµÛ_Þx«L‹àö³ñ `´ðõÖ•â[Ÿ j†Ÿæ|ïÿùü9ý¸ÿdØ«àwìûZþ¿>MðWNøÏ¨ŸñÏö\ø‘ðçÅxãã_Œ>)èÚ$>øcñÅ_tzH>#_idMá+߯ž—P¹ñ%¬ÚŦ•ôE5ŸðLïø'·í¡ûþ׿ðSßÚû\ð†ƒãO~Þ·ÇÏjôø&ßâ}—Áíã/Äÿ~Î<âÛïCðúûQñEÅ¿Œ~xÏÄ~Õ´ß ê¾×&×­&ñµÂx5{ KÄ^øðÇàÿ¾%Úø“ƾ:ŠÉ|;¬ëßüSð÷Âþð¥æµ6ŸoâífòÊÒÇöŠù+Àß°ÿì×ðÿö2Ó?`=áõ¥×ìÃaðoPøsàMZy/$×<­éºWˆåÖõHŵÕ׉›w,ŸÖÝâ?>%üNø­àI|Qñgötøû/ø¥5íCKá¯ÄŸ|ñ߈¦Ò­-ìe´ñ*kþ#|QðJéÚ¤×WV¶Ö2x•5»y4Û‰/ôËX'²–çÛ¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?ÿÙ./Doc/Tutorial/bodytext.tex0000664000175000017500000055351712176660653015553 0ustar vborosvboros\section{Introduction to the ESyS-Particle DEM simulation software} The Discrete Element Method (DEM; Cundall and Strack~1979) is a popular numerical method for simulating the dynamics of brittle-elastic or granular materials. Materials are represented as assemblies of spherical particles, each of which may interact with neighbouring particles or other objects (such as planar walls) via simplified force-displacement interaction laws. The numerical solution involves computing the net force acting on each particle at a given time, then updating particle velocities and positions via an explicit finite difference integration scheme. Depending on the application of interest, many thousands (or even millions) of particles may be required and simulations may consist of up to millions of timesteps. The heavy computational burden of the DEM relative to other numerical methods is often the single most limiting factor determining the quality and utility of simulation results. ESyS-Particle is an Open Source implementation of the DEM designed for execution on multi-core Personal Computers (PCs), clusters or supercomputers running Linux-based operating systems. A modular, object-oriented DEM simulation engine written in C++ comprises the core of the software. Spatial domain decomposition is implemented using a master-slave strategy with inter-process communications using the Message Passing Interface (MPI) 1.0 standard. A verlet list neighbour search algorithm is implemented for detecting neighbouring particles and a variety of interaction laws are implemented for bonded or unbonded interactions between particles. Particles may have up to three translational and three rotational degrees of freedom as well as thermal properties. An explicit first-order finite difference time integration scheme is employed. Provision is made for file storage of both the entire model state or specific field variables during simulations. Since the applications for the DEM are broad and varied, ESyS-Particle provides a simple Application Programming Interface (API) allowing users to design simulations via scripts written in the \link{Python}{http://www.python.org} programming language. For numerous applications, there is no need to modify the C++ simulation engine or re-compile the software. The Python API allows users to \begin{itemize} \item specify the initial locations and properties of particles and walls, \item define the types of interactions acting on these objects, \item select the types and frequency of data output during simulations, and \item perform user-defined computations at regular intervals via \texttt{Runnable} modules. \end{itemize} This User's Guide provides a tutorial-based introduction to DEM modelling using ESyS-Particle. The focus is on usage of the Python API to design and execute DEM simulations. In later chapters of the tutorial, instruction is provided on the use of post-processing tools packaged with ESyS-Particle, as well as third-party software or libraries for simulation construction and post-analysis. New users are encouraged to install ESyS-Particle on a PC and work through the following chapters consecutively. Additional features and tools are introduced gradually in the context of a number of common applications for the DEM, namely: \begin{itemize} \item ideal gas dynamics involving collisions between indivisible particles, \item gravitational acceleration of individual particles or bonded groups of particles, \item sandpiles and landslides, \item hopper (or silo) flow, \item brittle failure of solids under uniaxial compression, and \item shear of granular media within an annular shear cell apparatus. \end{itemize} \vskip 5mm \begin{minipage}{5.75in} \emph{\textbf{DISCLAIMER:} The simulation scripts described in this Guide and provided in the appendices are for instructional purposes only. These scripts are not considered production-ready for applied numerical modelling, and parameter values used may not lie in physical ranges for the application areas discussed. No warranty or guarantee is given by the authors as to the utility of these scripts for research and development purposes. It is the responsibility of the user to ensure ESyS-Particle simulations are verifiable and validated for any particular application.} \end{minipage} \vskip 5mm \newpage \section{A simple simulation: collision of two particles} This section introduces the basic features of ESyS-Particle simulation scripts via a simple example: collision of two indivisible particles. The simulation consists of two particles of differing mass whose initial velocities are selected to ensure that the particles will collide. This example serves to illustrate the main components of any ESyS-Particle simulation script, namely: \begin{itemize} \item Initialisation of an ESyS-Particle simulation object \item Specification of the spatial domain \item Particle creation and initialisation \item Definition of inter-particle interactions \item Execution of time integration \end{itemize} The complete code-listing for this example is provided in Appendix~\ref{code:bingle}, entitled \texttt{bingle.py}\footnote{``Bingle'' is slang for a minor car crash or collision. Given our simulation setup, it seemed an appropriate name.}. It is recommended that you work through each section below, copying the code fragments as you go rather than simply copying the complete script. Code-fragments are identifiable by the \texttt{teletext font}. Shell commands will be prepended with the \$ symbol. \subsection{Initialisation of an ESyS-Particle simulation} In order to use the ESyS-Particle simulation libraries in Python, we must first import the modules we wish to use. For this first example, only the following two import statements are required: \begin{verbatim} from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox \end{verbatim} The first import statement loads a number of relevent classes and subroutines required for all ESyS-Particle simulations. The second statement imports the \texttt{Vec3} and \texttt{BoundingBox} classes. Objects of the \texttt{Vec3} class are 3-component vectors, useful for specifying position, velocity or acceleration vectors in 3D. \texttt{BoundingBox} objects specify a rectangular region of 3D space and typically denote the spatial extents of a domain or particle assembly. Every ESyS-Particle simulation commences with the creation of an ESyS-Particle simulation object called \texttt{LsmMpi}. This object provides a means to define and run a simulation and can be thought of as a container to which we add simulation components such as a list of particles, walls, different types of interactions and data output components. The following code-fragment creates a simulation object: \begin{verbatim} sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]) sim.initNeighbourSearch( particleType="NRotSphere", gridSpacing=2.5, verletDist=0.5 ) \end{verbatim} The first statement creates an \texttt{LsmMpi} object and takes two arguments. The \texttt{numWorker\+Processes} argument specifies the number of MPI processes to use for calculations. In this example we choose to run a serial simulation (with only one worker process). However we could just as easily set this argument to a larger value for a MPI-parallel simulation (if you have access to a computer with multiple processor cores/CPUs). The second argument (\texttt{mpiDimList}) specifies the manner in which the domain will be divided amongst the worker processes. The first coordinate refers to the number of subdivisions in the x-direction whilst the second and third coordinates specify the number of subdivisions in the y- and z-directions respectively. It is important that you set \texttt{numWorkerProcesses} to be equal to the total number of subdomains specified by the \texttt{mpiDimList}. The second statement (\texttt{sim.initNeighbourSearch}) specifies the type of particles used in the simulation. The two most common particle types are \texttt{NRotSphere} and \texttt{RotSphere}. \texttt{sim.initNeighbourSearch} also sets two parameters for the contact detection algorithm. The \texttt{gridSpacing} parameter defines the size of cubic cells used to identify contacting particles. This parameter needs to be larger than the maximum particle diameter. The \texttt{verletDist} parameter determines the frequency with which the contact lists are updated. If any particle moves a distance greater than \texttt{verletDist} the lists are updated. Optimal values for these two parameters satify the inequality \texttt{gridSpacing} $>$ $2$ $\times$ \texttt{maxRadius} $+$ \texttt{verletDist}. Reducing the \texttt{verletDist} will result in more accurate force calculations (because new contacts will be detected earlier) but the lists will be updated more frequently, which is computationally expensive. In most cases, the \texttt{gridSpacing} should be set to approximately $2.5 \times$ the maximum particle radius and the \texttt{verletDist} should be approximately $0.2 \times$ the minimum particle radius. These two statements result in the construction of a suitable ESyS-Particle simulation object called \texttt{sim}. The simulation object now becomes a container to which we can add particles, walls, and various types of interactions. Before we do that, we need to specify how many timesteps to compute during the simulation and the timestep increment (in seconds): \begin{verbatim} sim.setNumTimeSteps(10000) sim.setTimeStepSize(0.001) \end{verbatim} These two statements are relatively self-explanatory. A total of $10000$ timesteps will be computed, with a time increment of $0.001$~sec between each timestep. It is usually a good idea to set the timestep increment before creating particles or interactions. In some cases, the timestep increment is needed internally to correctly initialise interactions. \subsection{Specification of the spatial domain} Prior to addition of particles, the simulation object must be assigned a valid spatial domain. Any particles or walls residing outside this domain are eliminated from force calculations and time integration. The following code-fragment specifies the spatial domain for a simulation: \begin{verbatim} sim.setSpatialDomain ( BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) ) \end{verbatim} \noindent The spatial domain is defined by a rectangular \texttt{BoundingBox}. In this example the spatial domain is a cube with side length of $40.0$~metres, with the left, bottom, back corner at the position $(x,y,z) = (-20, -20, -20)$. \subsection{Particle creation and initialisation} There are a number of ways to create and add assemblies of particles to a simulation object. We will encounter a few of the most common methods in subsequent tutorials. For this example, we will insert two particles individually. The following code-fragment creates a particle and initialises its linear velocity: \begin{verbatim} particle=NRotSphere(id=0, posn=Vec3(-5,5,-5), radius=1.0, mass=1.0) particle.setLinearVelocity(Vec3(1.0,-1.0,1.0)) sim.createParticle(particle) \end{verbatim} The first statement creates a \texttt{NRotSphere} object called \texttt{particle} whose \texttt{id} will be set to $0$ with a \texttt{radius} of $1.0$ metre, a \texttt{mass} of $1.0$ kilogram, and initially centred on the point $(x,y,z) = (-5,5,-5)$. The second statement initialises the linear velocity of the particle to $(V_x,V_y,V_z) = (1.0,-1.0,1.0)$~metres/second. Finally the third statement adds the newly created particle to our simulation object. \vskip 5mm \noindent \textbf{\emph{EXERCISE:} Add a second particle to the simulation object with \texttt{id} of $1$, a \texttt{radius} of $1.5$~m and a \texttt{mass} of $2.0$~kg. Set the initial position of the particle to $(5,5,5)$ and its linear velocity as $(-1,-1,-1)$ (HINT: simply copy the code-fragment above and modify as necessary).} \subsection{Definition of inter-particle interactions} Having added two particles to our simulation object, we must now specify the type of interactions between the particles if they should come into contact (which they will due to the carefully selected initial positions and velocities above). There are a number of different types of particle-particle interactions that may be used. We will encounter most of the more common interaction types in this and subsequent tutorials. For this example we will choose the simplest type of interaction -- linear elastic repulsion between non-rotational spheres. The following code-fragment achieves this: \begin{verbatim} sim.createInteractionGroup( NRotElasticPrms( name = "elastic_repulsion", normalK = 10000.0, scaling = True ) ) \end{verbatim} This statement creates a so-called \texttt{InteractionGroup} for our simulation object. The particular type of interaction group created depends upon the parameter set provided as an argument. In this case the \texttt{NRotElasticPrms} parameter set specifies purely elastic interactions between unbonded non-rotational spheres, with an elastic stiffness of $10000$~N/m. When \texttt{scaling} is \texttt{True} (the default), the normal stiffness scales with particle size. The \texttt{name} argument assigns the \texttt{InteractionGroup} a unique user-defined label which can be used to extract information about particle pairs undergoing this type of interaction. At this stage we will ignore the \texttt{name}, but we will return to this in a later tutorial. Depending upon the parameter set provided as an argument to the \texttt{cre\+ateIn\+ter\+ac\+tionGroup} subroutine, different types of interactions may be specified including body forces (e.g. gravity), particle-wall interactions and various types of particle-particle interactions. Some of these different interaction types will also be encountered in subsequent tutorials. \subsection{Execution of time integration} We have now done everything necessary to set up the simulation. All that remains is to instruct Python to go ahead and do all the computations: \begin{verbatim} sim.run() \end{verbatim} \noindent Although this statement might appear to be something of an anti-climax, it is the most important, instructing ESyS-Particle to commence the simulation and compute forces and update particle positions repeatedly until the specified number of timesteps are completed. Once this command is executed, the C++ simulation engine takes control and no subsequent Python commands will be executed until the simulation is completed. In the next tutorial, we will encounter three different ways to instruct ESyS-Particle to execute additional python commands during the simulation. \subsection{Running an ESyS-Particle simulation from the commandline} Using your favorite text editor copy all the code-fragments above into a text file and save it as \texttt{bingle.py}. Make sure you insert all the code-fragments in the order they appear here (and don't forget to add the second particle). Having saved the script, we can run the simulation using the following shell command: \begin{verbatim} $ mpirun -np 2 `which esysparticle` bingle.py \end{verbatim} Since ESyS-Particle is designed to run in parallel using MPI, we need this complicated commandline. If you have a multi-processor computer, you can increase the number of processes (\texttt{np}) to run the simulation in parallel. (You will also need to suitably modify the \texttt{numWorkerProcesses} and \texttt{mpiDimList} arguments in the script.) The number after \texttt{np} should always be equal to (\texttt{numWorkerProcesses} + 1). This is because ESyS-Particle uses a master-slave parallelisation strategy. \texttt{numWorkerProcesses} specifies the number of slaves to use but MPI must initialise one extra process to act as the master. \subsection*{What's next?} No doubt if you got this far you are somewhat disappointed that the simulation did not appear to do anything. I can assure you that (unless you got some weird error messages\footnote{If you did receive errors, carefully compare your script with the complete code-listing in Appendix~\ref{code:bingle} to identify any typographical mistakes. Also make sure you indent the code exactly as shown here because Python is particular about indentation.}) the simulation has correctly computed the trajectories of both particles for an interval of $10$~sec. During that time the particles collided then bounced off each other, changing the velocities and directions of each particle. Of course all this happened only in computer memory. We did not instruct the simulation to output any data to file or the screen. The following tutorial will describe three different ways that data can be output during simulations. At the end of this tutorial, you will have written a re-usable module for creating snapshot images of the particles in motion and will know how to find out information about individual particles during a simulation. \newpage \section{Data output during simulations} This tutorial extends the \texttt{bingle.py} simulation constructed in the previous tutorial. The primary aim here is to introduce three ways to output data during simulations. We will first examine the simplest way to output data -- printing particle positions to the screen. The second method involves output of data to a text file using a built-in feature called a CheckPointer. Although these techniques are often very useful for testing purposes or postprocessing of simulation data, they are certainly not as visually satisfying as producing glossy images or movies of the particles in motion. Finally we will examine how one of the ESyS-Particle visualisation modules can be used to generate images of the particle assembly. A secondary aim of this tutorial is to demonstrate three different approaches for including your own code in ESyS-Particle scripts. These approaches are: \begin{itemize} \item direct insertion in the time-integration loop, \item writing and calling a user-defined subroutine, and \item use of a user-defined \texttt{Runnable} module. \end{itemize} \noindent The use of \texttt{Runnable} modules is arguably the best method, even though it appears complicated at first. \texttt{Runnables} have the advantage that they can be very easily reused for other simulations with little or no modification. In this way a user can build a library of helpful utilities for analysis and visualisation of simulation data. We will explain how to prepare and import your own modules, as well as how to configure your shell environment so that Python can find your modules easily. \subsection{Printing simulation data to screen} This example modifies our original \texttt{bingle.py} script so that the positions of both particles can be output to screen every 100 timesteps. This represents one of the most basic of data output operations and allows us to do our first real analysis of the simulation results (e.g.\ by utilising external software to plot particle positions vs.\ time). The complete code-listing for this example is provided in Appendix~\ref{code:bingle_output}, called \texttt{bingle\_output.py}. Replace the last line (\texttt{sim.run()}) of \texttt{bingle.py} with the following code-fragment: \begin{verbatim} N_max = sim.getNumTimeSteps() for n in range (N_max): sim.runTimeStep() if (n%100==0): particles = sim.getParticleList() p1 = particles[0].getPosn() p2 = particles[1].getPosn() print n,p1,p2 sim.exit() \end{verbatim} \noindent This time, rather than simply computing all $10000$ timesteps with a single subroutine call (\texttt{sim.run()}), we explicitly implement the time integration loop (via the \texttt{for}-statement). The \texttt{sim.runTimeStep()} subroutine call instructs the simulation object to compute only one timestep of the simulation. After the timestep is completed, we check whether 100 timesteps have passed (via the \texttt{if}-statement). If so, we firstly obtain a \texttt{particles} list from the simulation object by calling \texttt{sim.getParticleList()}. \texttt{particles} is a Python list data structure where each member of the list is an ESyS-Particle \texttt{NRotSphere} object. \texttt{NRotSphere} objects have a number of subroutines that permit the user to obtain various information about individual particles (e.g.\ particle position, velocity, mass, radius, etc.). For more information about the available subroutines refer to the \link{\texttt{NRotSphere} class documentation}{http://esys.esscc.uq.edu.au/esys-particle_python_doc/current/pythonapi/html/esys.lsm.LsmPy.NRotSphere-class.html}. \vskip 5mm \begin{minipage}{5.75in} \emph{\textbf{WARNING:} Care should be taken when using \texttt{sim.getParticleList()} in a simulation containing a very large number of particles. For large simulations, the amount of memory required to store the list by the master process may be very large. It is usually best to avoid using \texttt{sim.getParticleList()} if possible. In the next tutorial we will encounter another method (the \texttt{CheckPointer}) to store information about particles that avoids using a large amount of memory. } \end{minipage} \vskip 5mm Having obtained the \texttt{particles} list, we can extract the current positions of each particle via the \texttt{particles[\#].getPosn()} subroutine calls. These subroutine calls return a \texttt{Vec3} vector containing the x-, y- and z-coordinates of a particle's centre-of-mass. Finally we output the timestep number (\texttt{n}) and the positions of both particles to screen (via the usual Python \texttt{print} statement). \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{bingle_output.jpg}} \caption{A plot of particle trajectories using the text output (from \texttt{bingle\_output.py})} \label{fig:bingle_output} \end{figure} Save your modified script to a text file called \texttt{bingle\_output.py}, then run the simulation using the following shell command: \begin{verbatim} $ mpirun -np 2 `which esysparticle` bingle_output.py \end{verbatim} \noindent This shell command will run the simulation and output to screen the particle positions every 100 timesteps. An extract of 10 lines of output looks like: \begin{verbatim} 1000 -3.999 3.999 -3.999 3.999 3.999 3.999 1100 -3.899 3.899 -3.899 3.899 3.899 3.899 1200 -3.799 3.799 -3.799 3.799 3.799 3.799 1300 -3.699 3.699 -3.699 3.699 3.699 3.699 1400 -3.599 3.599 -3.599 3.599 3.599 3.599 1500 -3.499 3.499 -3.499 3.499 3.499 3.499 1600 -3.399 3.399 -3.399 3.399 3.399 3.399 1700 -3.299 3.299 -3.299 3.299 3.299 3.299 1800 -3.199 3.199 -3.199 3.199 3.199 3.199 1900 -3.099 3.099 -3.099 3.099 3.099 3.099 \end{verbatim} Re-run the simulation with the following shell command (typed on one line) to redirect the screen output to a text file called \texttt{simdata.csv}: \begin{verbatim} $ mpirun -np 2 `which esysparticle` bingle_output.py > simdata.csv \end{verbatim} \noindent One can then use this text file to plot the trajectories of each particle, utilising your favourite graphing software. For example, import \texttt{simdata.csv} into a spreadsheet program and produce an XY plot of column two versus column one and column five versus column one. Your plot should be similar to Figure~\ref{fig:bingle_output}. Note that the two trajectories do not intersect although the particles are deflected in a manner consistent with collision. This is because the two particles are of finite radius and they collide only at their surfaces (whereas we are only plotting the trajectories of the centre-of-mass of the particles). \subsection{Data output using the ESyS-Particle CheckPointer} The simple example in the previous section is quite useful for debugging purposes, when one wishes only to monitor the movement of a few particles. In simulations involving many thousands of particles, one would prefer to output the positions, velocities and accelerations of all the particles at regular intervals so the data may be post-processed in various ways. ESyS-Particle includes a module known as a CheckPointer for this purpose. The CheckPointer is a special case of a group of modules known as FieldSavers, which we will discuss in a future tutorial. FieldSavers provide a mechanism to selectively output information on particles (such as position or kinetic energy), interactions (e.g.\ potential energy) and walls (including their position and the net force acting on a wall). A CheckPointer is designed to write text files at regular intervals containing the positions, velocities and accelerations of all particles. To implement a CheckPointer in a simulation is a relatively simple procedure. Return to your \texttt{bingle.py} script created in the first tutorial. Just before the \texttt{sim.run()} subroutine call, add the following code fragment: \begin{verbatim} sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "bingle_data", beginTimeStep = 0, endTimeStep = 10000, timeStepIncr = 100 ) ) \end{verbatim} \noindent The CheckPointer takes four parameters: \begin{itemize} \item \texttt{fileNamePrefix}: specifying the filename prefix for all the output files to be written during the simulation, \item \texttt{beginTimeStep}: the timestep number to commence saving data, \item \texttt{endTimeStep}: the timestep number to conclude saving data, and \item \texttt{timeStepIncr}: the number of timesteps to complete between each save. \end{itemize} \noindent The example above will save simulation data every 100 timesteps, commencing at the first timestep (timestep \texttt{0}) and concluding at the last timestep (timestep \texttt{10000}). Often it is advantageous to save data for only a portion of the simulation at more regular intervals, particularly in cases where the interesting part of the simulation commences after a period of time (e.g.\ after the particles have settled under gravity). Append the code fragment above to \texttt{bingle.py} and save the script as \texttt{bingle\_chk.py}. Execute the simulation using the following command: \begin{verbatim} $ mpirun -np 2 `which esysparticle` bingle_chk.py \end{verbatim} Upon completion of the simulation, type \texttt{ls} at the command prompt. Failing any errors, you should have a listing similar to the following: \begin{verbatim} bingle_chk.py bingle_data_t=0_0.txt bingle_data_t=0_1.txt bingle_data_t=10000_0.txt bingle_data_t=10000_1.txt bingle_data_t=1000_0.txt bingle_data_t=1000_1.txt bingle_data_t=100_0.txt bingle_data_t=100_1.txt bingle_data_t=1100_0.txt bingle_data_t=1100_1.txt bingle_data_t=1200_0.txt bingle_data_t=1200_1.txt ... \end{verbatim} \noindent You should notice there are two files generated at each designated save time: \texttt{bin\+gle\_\+da\+ta\_\+t=N\_0.txt} and \texttt{bingle\_data\_t=N\_1.txt}, where \texttt{N} denotes the timestep number when the file was saved. The first (ending with \texttt{\_0.txt}) is a header file containing information about the format of the corresponding data file (ending with \texttt{\_1.txt}). Depending upon the type of particles used, whether or not you have mesh walls etc., the format of the checkpoint files changes so that all relevant information about the simulation is saved at the specified times. Let's examine one of the output files from our simulation. Type \texttt{cat bin\+gle\_\+da\+ta\_\+t=0\_1.txt} at the command prompt. The result should look like this: \begin{verbatim} 2 -5 5 -5 1 0 -1 1 -5 5 -5 -5 5 -5 1 -1 1 0 0 0 0 0 0 5 5 5 1.5 0 -1 2 5 5 5 5 5 5 -1 -1 -1 0 0 0 0 0 0 0 TMIG 0 \end{verbatim} \noindent The first line of the file specifies the number of particles in the simulation (only 2 in our case). The following 2 lines provide data on each of the particles, with one line per particle. We will examine the meaning of each number on these lines in a moment. After listing the data for each particle, the next line specifies the number of triangle mesh walls and the last line specifies the number of triangle mesh wall interaction groups. In our example we have no mesh walls or mesh wall interaction groups, hence the \texttt{0} on each line. We will revisit mesh walls in a later tutorial on hopper flow simulation. Returning to the lines providing data on each particle, for simulations using \texttt{NRot\+Sphere} particles (as we are using here), the fields in each data line correspond to the following: \begin{itemize} \item fields 1, 2 \& 3: the X, Y and Z-coordinates of the \emph{current} particle position \item field 4: the particle radius \item field 5: the particle ID \item field 6: the particle tag (more on tags later) \item field 7: the particle mass (recall that we set the mass of the second particle to be \texttt{2.0}) \item fields 8, 9 \& 10: the X, Y and Z-coordinates of the \emph{initial} particle position \item fields 11, 12 \& 13: the X, Y and Z-coordinates of the \emph{previous} particle position \item fields 14, 15 \& 16: the X, Y and Z-components of the particle velocity \item fields 17, 18 \& 19: the X, Y and Z-components of the net force acting on the particle \item fields 20, 21 \& 22: (used with circular or periodic boundaries) specifies the circular shift to be added in the X, Y and Z-directions \end{itemize} Your first impression may be that this is a lot of information to output for each particle when you may only be interested in, say, the velocities of each particle. The CheckPointer is designed to be a multi-purpose data output mechanism which records every piece of information on the current state of particles in the simulation. It is an ideal mechanism for outputing data when you intend to perform a number of different post-processing operations on your simulation data. The downside is that the CheckPointer can use a lot of disk space. To circumvent this problem, FieldSavers provide a mechanism to selectively output only certain data to disk. One needs to exercise caution when using FieldSavers because if you forget to store important information, you need to re-run the entire simulation. We will examine how to set up FieldSavers in a later tutorial on uniaxial compression of elastic-brittle material. \subsection{Generation of particle snapshots (via subroutine calls)} The previous two examples illustrated simple ways to output data from ESyS-Particle simulations. In this example we will introduce a way to generate beautiful snapshots of the particle assembly at various times during a simulation. This is achieved using the ESyS-Particle \texttt{esys.lsm.vis.povray} module and an external package called \link{POVray}{http://www.povray.org} that is ideal for generating images of 3D objects or scenes\footnote{Take a break for the moment and enjoy the amazing computer-generated images in the \link{POVray Hall of Fame}{http://hof.povray.org/}!}. The ESyS-Particle \texttt{povray} module provides a relatively simple interface between particle simulations and POVray. This part of the tutorial involves implementation of a Python subroutine. If you are not already familiar with writing subroutines in Python, I recommend you first study \link{Chapter 4 of the Python Language Tutorial}{http://docs.python.org/tut/node6.html}. We will modify \texttt{bingle\_output.py} for this example. The complete code-listing is available in Appendix~\ref{code:bingle_vis} entitled \texttt{bingle\_vis.py}. Since we will be making use of the ESyS-Particle \texttt{povray} module, we need to add a third import statement to the top of our script: \begin{verbatim} from esys.lsm.vis import povray \end{verbatim} \noindent ESyS-Particle currently has two visualisation modules -- \texttt{povray} and \texttt{vtk}. Both utilise external libraries for rendering images of simulation data (\link{POVray}{http://www.povray.org} and \link{VTK}{http://www.vtk.org} respectively). The ESyS-Particle visualisation modules are designed to provide a common interface to these two rendering engines (so that either package may be used with minimal changes to your Python script). Each module has both advantages and disadvantages. \texttt{povray} produces very beautiful images of particle assemblies with the possibility of rendering particles with various textures and special effects, but it lacks tools specifically designed for scientific visualisation of datasets (e.g.\ for generating isosurfaces or contours). \texttt{vtk} is the opposite, providing great scientific visualisation tools and an interactive graphical interface but lacking strong support for rendering particles nicely. Having imported the \texttt{povray} module, we now implement a Python subroutine called \texttt{snapshot()} designed to render an image of the particle assembly and store it as a file. The code-fragment for implementing this subroutine is as follows: \begin{verbatim} def snapshot(particles=None, index=0): pkg = povray scene = pkg.Scene() for pp in particles: povsphere = pkg.Sphere(pp.getPosn(), pp.getRadius()) povsphere.apply(pkg.Colors.Red) scene.add(povsphere) camera = scene.getCamera() camera.setLookAt(Vec3(0,0,0)) camera.setPosn(Vec3(0,0,20)) camera.setZoom(0.1) scene.render( offScreen=True, interactive=False, fileName="snap_%.4d.png" % (index), size=[800,600] ) return \end{verbatim} \noindent The first line of this code-fragment defines the name of the subroutine (\texttt{snapshot}) and specifies that it accept two keyword arguments: \begin{itemize} \item \texttt{particles} -- a pointer to a list of particles (e.g.\ obtained from the \texttt{sim.getPar\+tic\+leList()} subroutine), and \item \texttt{index} -- a unique identifier used to specify the name of the file in which to store the rendered image. \end{itemize} Within the subroutine, we firstly specify that the visualisation package (\texttt{pkg}) will be \texttt{povray}. We could just as easily have replaced \texttt{povray} with \texttt{vtk} to use the other renderer. Having selected the package, we then construct a \texttt{Scene} object via the \texttt{scene = pkg.Scene()} subroutine call. \texttt{Scene} objects are containers for \emph{actors}, a \emph{camera} and (optionally) a \emph{light-source}. \emph{Actors} can be any three-dimensional object we wish to see in the Scene. When defining actors, we specify the geometrical shape of the actor, its colour or surface texture, and its position and orientation in the Scene. ESyS-Particle visualisation modules provide support for a number of different primitive shapes that we can use as actors in our scene (e.g.\ spheres, cones, cylinders and boxes). In this tutorial we will stick with simple spheres to represent the particles in our simulation. To specify how our scene will look, we need to add spheres to the scene via the code-fragment: \begin{verbatim} for pp in particles: povsphere = pkg.Sphere(pp.getPosn(), pp.getRadius()) povsphere.apply(pkg.Colors.Red) scene.add(povsphere) \end{verbatim} \noindent This code-fragment loops over each particle in the list provided by the \texttt{particles} argument. For each particle in the list, we create a sphere via the \texttt{pkg.Sphere(..)} subroutine, specify the colour of the sphere using \texttt{Sphere.apply(..)} then add the sphere to the scene using \texttt{scene.add(..)}. The \texttt{pkg.Sphere(..)} subroutine takes two mandatory arguments -- the position of the sphere (as a \texttt{Vec3} vector) and the radius of the sphere. In most cases we can simply use the original coordinate system and sizes of particles from our simulation. Next we must initialise the camera we will use to take a picture of our scene. This is an important step: if we do not initialise the camera correctly our rendered image may be empty or we may only see a portion of the scene. Typically you will need to experiment with the camera settings to achieve the desired result. In this case I have selected reasonable values for visualising our \texttt{bingle.py} simulation. The appropriate camera setup code-fragment is: \begin{verbatim} camera = scene.getCamera() camera.setLookAt(Vec3(0,0,0)) camera.setPosn(Vec3(0,0,20)) camera.setZoom(0.1) \end{verbatim} \noindent The first statement returns a pointer to our scene's camera which we call \texttt{camera}. Next we specify the point in 3D space we would like to be the focus of the camera (via the \texttt{camera.setLookAt(..)} subroutine). We also specify the position of the camera itself (\texttt{camera.setPosn(..)}) and finally we choose the zoom factor (\texttt{camera.setZoom(..)}). Changing the zoom factor is a good starting point if your rendered image is empty or doesn't look the way you desire. Finally, we can instruct the \texttt{Scene} object to create an image of the scene we have just constructed: \begin{verbatim} scene.render( offScreen=True, interactive=False, fileName="snap_%.4d.png" % (index), size=[800,600] ) \end{verbatim} \noindent This subroutine call instructs ESyS-Particle to communicate with the renderer library (either via a temporary script or directly via a socket interface) to generate an image of the scene. A number of optional keyword arguments may be provided to control various aspects of the final image: \begin{itemize} \item \texttt{offScreen} -- a Boolean variable that determines whether the image will appear in a window onscreen or be rendered offscreen (in the background). \item \texttt{interactive} -- a Boolean variable specifying whether the user is permitted to interact with the rendered image. If this argument is set to \texttt{True} and \texttt{offScreen=False}, a window will appear and the user will be able to pan and zoom the image using the mouse or keyboard. Only the \texttt{vtk} package provides interactive features. \item \texttt{filename} -- a text string specifying the name of the file in which to save the image. The filename extension determines the image format. Both \texttt{povray} and \texttt{vtk} support a large range of common image formats. \item \texttt{size} -- a tuple specifying the pixel resolution of the final image. Changing the aspect ratio of this tuple can help you render the extremities of a particle assembly that is not 4:3 aspect ratio. \end{itemize} \noindent Notice that the filename argument above uses Python string formatting syntax to construct a filename of the form \texttt{snap\_000\#.png} where \texttt{\#} is the index provided as the second argument of our \texttt{snapshot} subroutine. This naming convention is very handy for producing a sequence of images that can later be combined into a movie of the simulation. In a copy of \texttt{bingle\_output.py} append the import statement and subroutine definition above directly after the two existing import statements. Having done this, all that remains is to replace the \texttt{if}-statement in the time integration loop with the following: \begin{verbatim} if (n%100==0): particles = sim.getParticleList() snapshot(particles=particles, index=n) \end{verbatim} \noindent Notice that we no longer \texttt{print} the particle positions to screen. Instead we call our new \texttt{snapshot()} subroutine providing, as arguments, the current list of particles returned by \texttt{sim.getParticleList()} and the current timestep number (\texttt{n}) as the index for naming the image file rendered when the subroutine is called. Save the resulting script to a text file called \texttt{bingle\_vis.py} and run the simulation from the shell using a similar command as before. All being well, your simulation should now produce a sequence of 100 image files named \texttt{snap\_0000.png} through to \texttt{snap\_9900.png}. Figure~\ref{fig:bingle_vis} contains a few of these snapshots from various times during the simulation. The approach, collision and rebound of the particles is now clearly evident. \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{bingle_vis_snaps_2.jpg}} \end{center} \caption{A sequence of snapshots (from \texttt{bingle\_vis.py})} \label{fig:bingle_vis} \end{figure} This tutorial example illustrates only very basic visualisation. However the \texttt{povray} package can be used to produce much more attractive images by using some of its more advanced features. In the next example we will describe how to write your own module for producing image snapshots that you can reuse for subsequent simulations with relatively minor additions to your simulation script. \subsection{A \texttt{Runnable} module for generating snapshots} Thus far in our data output examples we have had to make use of an explicit time-integration loop (instead of the simple and elegant \texttt{sim.run()} call), used a \texttt{CheckPointer} to store particle data and, in the previous example, have added an additional subroutine to our simulation script. This has resulted in a rather lengthy script. To compound the issue, we would need to do this for every simulation script we write, resulting in many large scripts containing much duplicate code. From a design and implementation perspective this is unwieldy and multiplies the possibility for errors in the code. ESyS-Particle provides a mechanism to resolve many of these issues in the form of a \texttt{Runnable} class. A \texttt{Runnable} is a user-defined class that can be called by a simulation object once per timestep either before or after the force computations and time-integration. \texttt{Runnable} classes can be implemented as modules that can be reused in subsequent simulations simply by adding an import statement and some lines of initialisation code to your simulation script. This is a powerful feature of ESyS-Particle, offering the user the possibility to develop runtime data analysis and visualisation utilities that can be reused whenever they are needed with little or no modification to the \texttt{Runnable} itself. The aim for this tutorial example is to implement the \texttt{snapshot()} subroutine from the previous example as a \texttt{Runnable} module. We will discuss how to call this from within your simulation script and how to deploy the module so that it can be easily reused in subsequent simulation scripts. If you are not already familiar with classes and inheritance in Python, I recommend you first study \link{Chapter 9 of the Python Language Tutorial}{http://docs.python.org/tut/node11.html}. We will also touch on some topics covered in \link{Chapter 6 of the Python Tutorial}{http://docs.python.org/tut/node8.html}. The complete code-listings for this example are found in Appendix~\ref{code:POVsnaps} \texttt{POVsnaps.py} and Appendix~\ref{code:bingle_Runnable} \texttt{bingle\_Runnable.py}. \subsubsection{Implementation of a snapshot \texttt{Runnable}} A \texttt{Runnable} is best implemented in its own text file rather than inserting it in a simulation script (although you may do this if you wish). We will implement our \texttt{Runnable} in a text file called \texttt{POVsnaps.py}. Like any other ESyS-Particle script, we commence with relevent import statements: \begin{verbatim} from esys.lsm import * from esys.lsm.util import Vec3, BoundingBox from esys.lsm.vis import povray \end{verbatim} A user-defined \texttt{Runnable} is a class that inherits from an ESyS-Particle base class called \texttt{Runnable}. As per any Python class, we must implement an initialisation subroutine (\texttt{self.\_\_init\_\_()}) that is called whenever we construct an instance of this class. The initialisation subroutine prepares an instance of the class for use in a simulation. The following code-fragment implements the class definition and initialisation subroutine: \begin{verbatim} class POVsnaps (Runnable): def __init__(self, sim, interval): Runnable.__init__(self) self.sim = sim self.interval = interval self.count = 0 self.configure() \end{verbatim} The first line defines the name of the class \texttt{POVsnaps} and specifies that it inherits from the \texttt{Runnable} base class. Next we encounter the definition of the \texttt{\_\_init\_\_(..)} subroutine. Note that we have stipulated that this subroutine accepts two mandatory arguments: a pointer to the simulation object to which the class is attached (\texttt{sim}) and an integer (\texttt{interval}) specifying the number of timesteps between successive images. The \texttt{\_\_init\_\_(..)} subroutine first calls the equivalent base class subroutine to do some default initialisation of our \texttt{Runnable}, then stores the \texttt{sim} pointer and \texttt{interval} as data members of the class, as well as initialising a counter (\texttt{self.count}) that keeps track of the total number of images rendered. (We use this later to define the image filenames.) A \texttt{self.configure()} subroutine is also called, the implementation of which is as follows: \begin{verbatim} def configure( self, lookAt=Vec3(0,0,0), camPosn=Vec3(0,0,20), zoomFactor=0.1, imageSize=[800,600] ): self.lookAt=lookAt self.camPosn=camPosn self.zoomFactor=zoomFactor self.imageSize=imageSize \end{verbatim} Our \texttt{self.configure()} subroutine accepts four optional keyword arguments: \texttt{lookAt}, \texttt{camPosn}, \texttt{zoomFactor} and \texttt{imageSize}. Each of these arguments is provided with a default value in the subroutine definition (the first line). When this subroutine is called, any keyword argument that is not assigned a value by the calling statement will be set to the default value specified here. The call to \texttt{self.configure()} in the initialisation subroutine specifies no keyword arguments, so all of these arguments will be set to their default values. The implementation of this subroutine is straight-forward: we simply create an internal data member to store the value for each argument. These data members will be used in the \texttt{self.snapshot()} subroutine later. \vskip 5mm \begin{minipage}{5.75in} \emph{\textbf{ASIDE:} You may be wondering why we have implemented an extra subroutine for configuring these data members. We could have included these as keyword arguments of the initialisation subroutine. The rationale for implementing this extra subroutine is that we can use this subroutine to reconfigure our \texttt{POVsnaps Runnable} during a simulation. This feature might be used, for example, to change the camera position during a simulation to produce a fly-through animation of the particle assembly. The initialisation subroutine can only be called once but the \texttt{configure(..)} subroutine can be called many times.} \end{minipage} \vskip 5mm ESyS-Particle \texttt{Runnable} subclasses must also implement a \texttt{self.run()} subroutine. This subroutine is called by simulation objects once per timestep and it is here that we implement the code that should be executed by the \texttt{Runnable} each timestep. The following code-fragment implements the mandatory \texttt{self.run()} subroutine: \begin{verbatim} def run(self): if ((self.sim.getTimeStep() % self.interval) == 0): self.snapshot() self.count += 1 \end{verbatim} The \texttt{self.run()} subroutine simply waits until \texttt{self.interval} timesteps have elapsed, then calls the \texttt{self.snapshot()} subroutine prior to incrementing the counter. This code-fragment is reminiscent of the code we added to the time-integration loop of \texttt{bin\+gle\_\+vis.py}. Not surprisingly, the \texttt{self.snapshot()} subroutine looks very similar to the subroutine we encountered in that example: \begin{verbatim} def snapshot(self): pkg = povray Scene = pkg.Scene() plist = self.sim.getParticleList() for pp in plist: povsphere = pkg.Sphere(pp.getPosn(), pp.getRadius()) povsphere.apply(pkg.Colors.Red) Scene.add(povsphere) camera = Scene.getCamera() camera.setLookAt(self.lookAt) camera.setPosn(self.camPosn) camera.setZoom(self.zoomFactor) fname = "snap_%.4d.png" % (self.count) Scene.render( offScreen=True, interactive=False, fileName=fname, size=self.imageSize ) \end{verbatim} \noindent You will notice only a few minor differences though. We now use the data members defined in the \texttt{self.configure()} subroutine to initialise the camera and the image size. By using these data members we can easily configure our snapshot \texttt{Runnable} for different simulations or perhaps reconfigure the camera during a simulation if we would like, for example, to create a fly-through animation. \subsubsection{Use of the snapshot \texttt{Runnable} in a simulation} Having copied all the code-fragments into a text file called \texttt{POVsnaps.py}, we are ready to use our \texttt{Runnable} in a simulation. We will modify \texttt{bingle.py}, the script we wrote that didn't produce any data output. Firstly, add an import statement to the top of the script: \begin{verbatim} from POVsnaps import POVsnaps \end{verbatim} \noindent This statement will instruct Python to search for a file called \texttt{POVsnaps.py} and import the \texttt{POVsnaps} class implemented therein. Having done this, Python now knows where to find the implementation of this class when we wish to use it. Now scroll down your simulation script and insert the following code-fragment just before the \texttt{sim.run()} statement: \begin{verbatim} povcam = POVsnaps(sim=sim, interval=100) sim.addPostTimeStepRunnable(povcam) \end{verbatim} \noindent The first statement creates a POVsnaps object called \texttt{povcam}. We have specified that it will be attached to our simulation object (\texttt{sim}) and snapshots will be taken every 100 timesteps. The second statement is all-important. This statement instructs the simulation object to add our \texttt{Runnable} as a ``\texttt{PostTimeStepRunnable}''. In other words, the \texttt{povcam.run()} subroutine will be called each timestep after the simulation object has completed force calculations and updated particle positions and velocities. We also have the possibility of adding a \texttt{Runnable} whose \texttt{run()} subroutine is called before force calculations. This is a ``\texttt{PreTimeStepRunnable}''. Save your simulation script in a text file called \texttt{bingle\_Runnable.py} and run the simulation from the shell. The simulation will output snapshots of the particle assembly in much the same way as the \texttt{bingle\_vis.py} script in the previous example. Note that this time we only needed to add 3 statements to our simulation script to utilise the \texttt{Runnable} (as compared with \texttt{bingle\_vis.py} where we had to add approximately 19 lines of code, including the subroutine definition). We have not only avoided tiring out our fingers typing all those lines of code; we have created a module that can be reused in other simulation scripts just by adding the 3 lines of code above. \subsubsection{Deploying a \texttt{Runnable} as a reusable module} Whenever Python encounters an import statement, it will search a number of default directories for the appropriate python scripts implementing the imported modules. These default directories are typically places like \texttt{/usr/lib/Python2.4/site-packages} or \linebreak \texttt{/usr/local/lib/Python2.4/site-packages}. If Python cannot find the script, it will search the current working directory. If Python still cannot find the script, it will crash with an error message. As a user, you have two options for reusing your \texttt{Runnable} module. Firstly you could copy your \texttt{Runnable} module script (e.g.\ \texttt{POVsnaps.py}) into the current working directory whenever you wish you use it. This can get tedious, so a better way is to copy the script to a directory where you intend to store all your useful \texttt{Runnable} module scripts. To do this first create a directory to store the scripts and copy your script into that directory: \begin{verbatim} $ mkdir /home/my_username/Runnable_scripts/ $ cp POVsnaps.py /home/my_username/Runnable_scripts \end{verbatim} \noindent (Don't forget to replace the word ``\texttt{my\_username}'' with you actual username!) Having done that you must add this directory to an environment variable called \texttt{PYTHONPATH}. In the bash shell, it is done this way: \begin{verbatim} $ export PYTHONPATH=/home/my_username/Runnable_scripts/:$PYTHONPATH \end{verbatim} \noindent If you use a different shell, consult your shell documentation or ask your local linux guru or system administrator for help. You may wish to add the shell command above to a file that is executed whenever you open a shell (e.g.\ \texttt{/home/my\_username/.bashrc}). Once your \texttt{Runnable\_scripts} directory is in your \texttt{PYTHONPATH}, Python will be able to find your module whenever it encounters an import statement like \texttt{from POVsnaps import POVsnaps}. You have now successfully deployed your \texttt{Runnable} as a reusable Python module. From now on, pretty snapshots of your particle simulations are only 3 lines of code away! \vskip 5mm \noindent \textbf{\emph{EXERCISE:} Another very useful \texttt{Runnable} is one that stores the particle positions to a text file at specified intervals. Write a \texttt{Runnable} to achieve this and store it in your \texttt{Runnable\_scripts} directory for later use (HINT: you will only need to implement a simple \texttt{self.\_\_init\_\_()} subroutine and a \texttt{self.run()} subroutine for this. If you are unfamiliar with writing text files in Python, refer to \link{Section 7.2 of the Python Language Tutorial}{http://docs.python.org/tut/node9.html\#SECTION009200000000000000000}).} \vskip 5mm \begin{minipage}{5.75in} \emph{\textbf{ASIDE:} It is worth noting at this stage that the concept of a \texttt{Runnable} is really quite general. It is not only useful for data analysis and output during simulations, but we could also write \texttt{Runnable} modules designed to change the positions (or velocities) of particles (or walls) during a simulation. One such \texttt{Runnable} could be written to implement a so-called \emph{servo-wall} that maintains a constant pressure on the particle assembly by opposing the repulsive force due to the particles touching the wall. This is particularly useful in uniaxial compression simulations, the topic of a subsequent tutorial.} \end{minipage} \vskip 5mm \subsection*{What's next?} The first two tutorials in this Guide have introduced a simple two-particle ESyS-Particle simulation and provided tools for visualising the particles in motion. We are now well prepared to start examining some more complicated simulations including ones with gravity, walls, blocks of both bonded and unbonded particles, and differing inter-particle or particle-wall interactions. The next tutorials will introduce these techniques in the context of progressively more interesting examples of particle simulations including a bouncing cube made of particles and collapse of a loosely bonded prism of random-sized particles. Our \texttt{POVsnaps Runnable} will be very handy to visualise our simulation results as the simulations increase in complexity. To use \texttt{POVsnaps} we will only need to add the import and initialisation code to our scripts (and possibly change the camera parameters via the \texttt{configure()} subroutine). \newpage \section{Bouncing balls: adding gravity, walls and bonded particles} This tutorial aims to build upon the techniques introduced previously, to demonstrate more of the basic components of ESyS-Particle simulations. In particular, we will examine how body forces (such as gravity and viscosity), planar walls and bonded clusters of particles are implemented. By way of motivation, we will consider the problem of simulating an elastic body dropped from a height upon a frictionless table under the influence of gravity and air resistance. Intuitively we expect the body to bounce off the table-top, rise up to a height lower than the original height, then fall back towards the table. After numerous bounces, the body should come to rest on the table-top. To make the simulation more interesting we will start with a single particle representing our elastic body then replace this with a cubic cluster of bonded particles. This relatively simple problem serves to illustrate some new techniques that have wide applicability in particle simulations. As always complete code-listings are provided in Appendix~\ref{code}. \vskip 5mm \noindent \textbf{\emph{EXERCISE:} Write a script that initialises a simulation object and adds a single particle that is initially at rest, located at $(x,y,z) = (0,5,0)$. Assign an initial velocity of $(V_x, V_y, V_z) = (1.0, 10.0, 1.0)$. You may use the same spatial domain as the \texttt{bingle.py} tutorial, i.e., a cubic region with opposite corners at $(-20,-20,-20)$ and $(20,20,20)$. At this stage you do not need to add any \texttt{InteractionGroups}. Save the script in a text file called \texttt{gravity.py}}. \vskip 5mm \subsection{Implementation of body forces: gravity and bulk viscosity} There are three basic types of interactions in ESyS-Particle: inter-particle interactions, body forces, and particle-wall interactions. We have already encountered inter-particle interactions in our two-particle collision tutorial. This section will introduce two of the most common body forces: gravity and bulk viscosity. The following section introduces walls and particle-wall interactions. \subsubsection{Gravitational Interactions} Gravity is implemented in ESyS-Particle via an \texttt{InteractionGroup} specified by a parameter set called \texttt{GravityPrms}. A typical code-fragment for implementing gravity is: \begin{verbatim} sim.createInteractionGroup( GravityPrms(name="earth-gravity", acceleration=Vec3(0,-9.81,0)) ) \end{verbatim} \noindent \texttt{GravityPrms} accepts two keyword arguments. The first argument (\texttt{name}) is a user-defined label for the \texttt{InteractionGroup} and the second is a \texttt{Vec3} vector specifying the direction and magnitude of the gravitational \texttt{acceleration}. In this case, we have specified that the gravitational acceleration is $9.81$~m/s/s in the negative y-direction. This is the usual value for simulations in which the y-axis is assumed to be vertical. \subsubsection{Bulk Viscosity} In a great many particle simulations it is advantageous to include bulk viscosity (a damping force proportional to the instantaneous velocity of each particle acting in the direction that opposes motion). A relatively large bulk viscosity may be used for quasi-static simulations in which only the steady-state dynamics are of interest. A small bulk viscosity in a driven, elastodynamic simulation will attenuate propagating stress waves and eliminate catastrophic accumulation of kinetic energy without significantly altering the numerical solution to the original elastodynamic problem. For our bouncing ball simulation here, bulk viscosity is a crude proxy for air resistance. In much the same manner as for gravity, bulk viscosity is implemented in ESyS-Particle via an \texttt{InteractionGroup}. In this case, the \texttt{LinDampingPrms} parameter set defines the pertinent parameters for this type of body force. A typical code-fragment is: \begin{verbatim} sim.createInteractionGroup( LinDampingPrms( name="linDamping", viscosity=0.1, maxIterations=100 ) ) \end{verbatim} \noindent Once again, a unique \texttt{name} is provided for the interaction group, a coefficient of \texttt{viscosity} is initialised and we specify a maximum number of iterations (\texttt{maxIterations}) for the iterative velocity-Verlet solver used by ESyS-Particle when viscosity is included. Typically this last argument does not need to be very large as the iterative solver converges rapidly in most cases (less than about 10 iterations). Choosing an appropriate coefficient of viscosity depends upon the particular problem to be solved. For elastodynamic problems, a small value is sufficient (\texttt{viscosity}~$< 0.05$) whereas for quasi-static problems a value as large as \texttt{viscosity} $\sim 0.5$ might be appropriate. For the bouncing ball example, a \texttt{viscosity}~$= 0.1$ was selected by \emph{trial-and-error} to produce sufficient damping of the ball's motion over an interval of $20$~sec.\ to simulate damped oscillations of a bouncing ball. \subsection{Implementation of infinite planar walls and particle-wall interactions} Frequently one would like to incorporate fixed or movable walls in particle simulations. Walls may be planar, piece-wise planar, or perhaps an arbitrary shape. ESyS-Particle implements three types of walls: \begin{itemize} \item \emph{Planar walls} -- infinite planar walls specified by a point and a normal vector. \item \emph{Linear meshes} -- a piece-wise linear mesh of line segments for arbitrarily shaped walls in 2D simulations. \item \emph{Triangular meshes} -- a mesh of triangles used to define surfaces in 3D simulations. \end{itemize} \vskip 5mm \begin{minipage}{5.75in} \emph{\textbf{IMPORTANT:} All three types of wall have an \textbf{active} side and an \textbf{inactive} side. For the case of an infinite wall, the normal vector points to the active side of the wall. Particles impinging on a wall from the active side will bounce off the wall. However particles impinging on a wall from the inactive side will accelerate through the wall in an unphysical manner. Both types of mesh walls have an active side determined by the order in which vertices are specified for line-segments or triangles. Caution should be exercised when inserting walls to ensure they are correctly orientated (lest you get unexpected results). We will demonstrate how to use triangle mesh walls in the tutorial on hopper flow simuation.} \end{minipage} \vskip 5mm For our bouncing ball simulation, we will implement an infinite planar wall in the XZ-plane (i.e. normal in the positive y-direction) located at $Y=-10$. The appropriate code-fragment for inserting our planar wall is the following: \begin{verbatim} sim.createWall( name="floor", posn=Vec3(0,-10,0), normal=Vec3(0,1,0) ) \end{verbatim} \noindent By now, the \texttt{name} argument is familiar, providing a unique label for our wall. We will use this label in a moment. The second argument (\texttt{posn}) is a \texttt{Vec3} vector specifying a point lying in the plane of the wall. Finally the \texttt{normal} argument specifies a \texttt{Vec3} normal vector for the wall. Since this vector points in the positive y-direction, the wall lies in the XZ-plane. Simply inserting a wall into a simulation object is insufficient. We must also define the type of interactions between particles and walls. There are two common types of interactions: elastic repulsion and bonded interactions. At this stage we only consider elastic repulsion, implemented via the following code-fragment: \begin{verbatim} sim.createInteractionGroup( NRotElasticWallPrms( name = "elasticWall", wallName = "floor", normalK = 10000.0 ) ) \end{verbatim} \noindent Particle-wall interactions are also implemented via an \texttt{InteractionGroup}. This time we pass a \texttt{NRotElasticWallPrms} parameter set used to specify elastic repulsion of non-rotational spheres from a wall. The \texttt{wallName} argument specifies to which wall this particle-wall interaction refers. We make use of the wall \texttt{name} here to identify the wall under consideration. The last argument (\texttt{normalK}) specifies the elastic stiffness of the particle-wall interaction in units of N/m. The choice of elastic stiffness is not arbitrary. We need to assign an elastic stiffness sufficiently large that the wall can support the weight of the particle with a relatively small indentation (or overlap). If the elastic stiffness is too small the particle will continue to fall through the wall and eventually fall out the other side!\footnote{Try it yourself: For a ball of mass $m$ and radius $r$ in a gravitational field with acceleration $g$, the elastic stiffness must be $K_{wall} > mg/r$ to prevent the particle falling through the wall.} Having created this particle-wall interaction group, the simulation will now track the locations of particles relative to the wall and apply an elastic restoring force to any particle that comes into contact with the wall. Add all the code-fragments above (for gravity, viscosity and the wall) to your \texttt{gravity.py} script and run a simulation consisting of 20000 timesteps with a timestep increment of $0.001$~sec. Use your \texttt{POVsnaps Runnable} to make snapshots of the particle during the simulation. You may need to call the \texttt{povcam.configure()} subroutine when you initialise your \texttt{POVsnaps} object to change the camera position and/or look-at point. If all goes well, you should see the particle bounce off the wall a few times, with a reducing bounce height after successive bounces. Figure~\ref{fig:bouncy_ball} illustrates the movement of the ball graphically. \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{gravity_plot.jpg}} \end{center} \caption{Trajectory of a ball bouncing under gravity with linear viscosity (from \texttt{gravity.py})} \label{fig:bouncy_ball} \end{figure} \subsection{Generating a bonded lattice of particles} In the next example we will modify our bouncing ball script to replace the single particle with a bonded cube of particles. This serves to illustrate the three steps for generating an assembly of particles: \begin{enumerate} \item generating a block of unbonded particles, \item creating bonds between neighbouring particles, and \item specifying the type of interactions between bonded particle-pairs. \end{enumerate} \noindent The complete code-listing for this example is provided in Appendix~\ref{code}, entitled \texttt{grav\+i\+ty\_\+cube.py}. We will replace the code-fragment (in \texttt{gravity.py}) for creating a single particle with the code below. \subsubsection{Generating a block of unbonded particles} ESyS-Particle provides four methods for generating a block of particles: \begin{itemize} \item \texttt{SimpleBlock} -- generates a block of particles whose centres-of-mass reside on the vertices of a regular cubic lattice. This is the simplest configuration but is typically not the best choice for serious simulations since the particle-packing is not ideal (the porosity is very high). \item \texttt{CubicBlock} -- generates a Face-Centred Cubic (FCC) lattice of particles with a dense packing arrangement. \item \texttt{HexagBlock} -- generates a Hexagonal Close Packing (HCP) of particles. \item \texttt{RandomBoxPacker} -- generates a block of particles with radii randomly distributed in a specified range. \end{itemize} \noindent For illustrative purposes, we will use the \texttt{CubicBlock} in our example. The \texttt{SimpleBlock} and \texttt{HexagBlock} are implemented in the same manner. Generation of the block of random-sized particles is somewhat different and is covered in the next tutorial. To begin using \texttt{CubicBlock} add the following line to the other import lines at the start of the code: \begin{verbatim} from esys.lsm.geometry import CubicBlock, ConnectionFinder \end{verbatim} The following code-fragment generates an FCC cubic block of particles and adds them to the simulation object: \begin{verbatim} cube = CubicBlock(dimCount=[6,6,6], radius=0.5) cube.rotate(axis=Vec3(0,0,3.141592654/6.0),axisPt=Vec3(0,0,0)) sim.createParticles(cube) \end{verbatim} \noindent A \texttt{CubicBlock} object is instantiated via two arguments: \texttt{dimCount} and \texttt{radius}. \texttt{dimCount} is a three-element list specifying the number of particles to insert in each axis direction (in this case, the cube will comprise 6 particles per side). The \texttt{radius} of the particles is determined by the second argument. The physical dimensions of the \texttt{CubicBlock} are thus governed by the combination of the \texttt{radius} and the \texttt{dimCount} (in this case the cube will be $6\mathrm{m} \times 6\mathrm{m} \times 6\mathrm{m}$). The second command (\texttt{cube.rotate(..)}) rotates the cube by 30 degrees about the Z-axis. This is done so the cube will first strike the floor on an angle rather than flat on one face. This should make the subsequent bounces a bit more interesting! The final command adds our cube of particles to the simulation object. \subsubsection{Creation of inter-particle bonds} By default the \texttt{CubicBlock} class creates an unbonded particle assembly. In order to construct a bonded particle assembly we must explicitly inform the simulation object that particles are to be bonded together. The following code-fragment achieves this: \begin{verbatim} sim.createConnections( ConnectionFinder( maxDist = 0.005, bondTag = 1, pList = cube ) ) \end{verbatim} \noindent The aim of this code is to construct a list of particle-pairs that are to be bonded together. The \texttt{ConnectionFinder} is an object that searches the list of particles provided as the \texttt{pList} argument (our \texttt{cube} in this case) looking for pairs of particles that are within a specified distance (\texttt{maxDist}) of each other. The chosen distance in this case is $0.005$~m. Each pair of particles found will be added to a list and assigned a \texttt{bondTag} which we will use in the next section to specify the type of interactions between bonded particles. \subsubsection{Specification of bonded-particle interactions} Once we have inserted the block of particles into the simulation object and bonded the particles together, we must specify the type of interactions between bonded particles and initialise the interaction parameters. Once again, we utilise an \texttt{InteractionGroup} with an appropriate parameter set. For this example we will create non-rotational elastic bonds between bonded particles as specified in the \texttt{NRotBondPrms} parameter set: \begin{verbatim} bondGrp = sim.createInteractionGroup( NRotBondPrms( name = "sphereBonds", normalK = 10000.0, breakDistance = 50.0, tag = 1, scaling = True ) ) \end{verbatim} \noindent \texttt{NRotBondPrms} contains five parameters: a bond \texttt{tag} specifying which bonded particles will undergo this interaction, a unique \texttt{name} for the interaction group, the elastic stiffness (\texttt{normalK}) of the bonds, a boolean (\texttt{scaling}) to specify whether to scale the stiffness with particle size, and a \texttt{breakDistance} specifying the separation distance that must be exceeded in order to break a bond between two particles. When a particle-pair exceeds the \texttt{breakDistance} the bond is removed and those two particles thereafter interact according to the interactions specified for unbonded particle pairs. In a later tutorial we will illustrate how to model elastic-brittle fracture of a bonded particle assembly. In this example we have chosen a very large \texttt{breakDistance} in order to prevent fracture of our cubic block when it bounces. Modify \texttt{gravity.py} and replace the three lines that created the single particle with the code-fragments above, then run the simulation. This time you should obtain snapshots of a cube of particles bouncing off the table. Figure~\ref{fig:gravity_cube} provides a few snapshots from this simulation. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{gravity_cube_snaps.jpg}} \caption{A sequence of snapshots of a bouncing cube of particles (from \texttt{grav\+i\+ty\_\+cube.py})} \label{fig:gravity_cube} \end{figure} It is instructive to note here that although we are using non-rotational spheres and interactions, the cube itself does rotate during the simulation. This is because forces between the wall and individual particles comprising the cube impart a torque to the cube as a whole when these forces do not point in the direction of the centre-of-mass of the entire cube. This is physically what we expect for this configuration and this fact can be exploited to simulate rotational dynamics without using the more computationally expensive particle-scale rotational interactions implemented in ESyS-Particle. The downside of this approach is that we must bond together a number of particles to represent an individual discrete entity in the simulation, thus increasing the total number of particles and simulation time. The decision as to which approach to use depends upon the scenario you wish to simulate. Some simulations of rotating, interacting entities do not require particle-scale rotational dynamics to achieve physically reasonable results. \subsection*{What's next?} In this section we learned how to add body forces (such as gravity and bulk viscosity) and simple walls to ESyS-Particle simulations. We also demonstrated how to bond particles together to simulate rigid bodies made out of an aggregate of spheres. The rotational dynamics observed for a cube of particles bouncing on a table arises simply by bonding the constituent particles with simple elastic bonds. The elastic bonds themselves are translational but when particles are clustered, bulk rotational dynamics (of the particle assembly) can be achieved. The following tutorial builds upon the techniques learned in this section, introducing some new techniques for simulating two slightly more complicated scenarios: collapse of a pile of material under gravity and flow of loose granular material from a hopper or silo. We will illustrate how to create blocks comprised of particles with variable radii, how to implement simple frictional interactions between unbonded particles, and how to exploit symmetries to improve simulation results without increasing the number of particles and hence the total computation time of simulations. We will also describe how to use triangle meshes to create walls with complicated shapes or containing holes. A hopper flow simulation will be used to illustrate how mesh walls are incorporated in ESyS-Particle simulations. \newpage \section{Slope failure \& hopper flow: variable particle sizes, friction \& mesh walls} So far we have encountered examples of all the basic elements making up an ESyS-Particle simulation: a simulation object, particle assemblies, particle-particle interactions, body forces, walls and particle-wall interactions. Along the way we have learnt how to output simulation data to disk, make snapshots of particles in motion, and create re-usable \texttt{Runnables} to achieve user-defined functions during simulations. The aim of this and subsequent tutorials is to introduce a few more techniques commonly used in particle simulations including frictional interactions, brittle failure of elastic bonds, movement of walls, saving data using FieldSavers and the use of mesh walls to simulate complicated boundary geometries. This tutorial uses slope failure and hopper flow as the motivation for the introduction of blocks comprised of particles of various sizes, frictional interactions between unbonded particles, a simple method to simulate frictional walls and the inclusion of mesh walls. We also discuss how symmetries in the problem to be solved can often be exploited to improve simulation results without greatly increasing computation time. Slope failure is an important problem in natural hazards (e.g.\ landslides), in handling of granular materials (e.g.\ forming piles of sand or grains) and in minerals processing (e.g.\ the stock-piling of ore in muckpiles). The study of hopper flow also plays its role in materials handling (e.g.\ grain storage in silos). Along the way, the examples in this tutorial will illustrate some of the key features of sand-piles, as well as introducing a few more ESyS-Particle tricks and techniques. \subsection{Splash-down: collapse of a block of particles with variable sizes} Until this point we have dealt predominantly with assemblies of particles with a constant particle radius. Experience has shown that often the use of uniform particle sizes and regular particle arrangements introduces artifacts such as preferential movement along lattice planes. A simple way to remove such artifacts and to model more realistic granular materials is to use particle assemblies in which the positions and radii of particles are selected randomly. ESyS-Particle provides a simple mechanism for constructing a rectangular block of particles with random positions and radii. The following code fragment achieves this: \begin{verbatim} geoRandomBlock = RandomBoxPacker ( minRadius = 0.2000, maxRadius = 0.5000, cubicPackRadius = 2.2000, maxInsertFails = 1000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 10.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() sim.createParticles(geoRandomBlock_particles) \end{verbatim} To construct a random block of particles, we first create a \texttt{RandomBoxPacker} by providing a number of parameters defining the range of particle radii (\texttt{minRadius} and \texttt{maxRadius}), the geometry of the block to fill with particles (\texttt{bBox}) and some additional parameters related to the algorithm used to fill the block. We will discuss the particle packing algorithm in a few moments. The example above will construct a cube 10 metres on a side containing particles whose radii range from 0.2 metres to 0.5 metres. One corner of the cube will be located at $(X,Y,Z) = (-5,0,-5)$. \subsubsection{Algorithm for packing particles into a prescribed region} The \texttt{RandomBoxPacker} and some other ESyS-Particle \texttt{Packer} modules make use of an iterative, geometrical space-filling algorithm to insert particles within a prescribed volume (a rectangular prism in the case of \texttt{RandomBoxPacker}). The algorithm may be summarised as follows: \begin{enumerate} \item Insert a number of seed particles at random locations within the volume ensuring they do not overlap. \item Identify 4 adjacent particles \begin{enumerate} \item compute the centroid of the tetrahedron defined by the 4 particles \item compute the radius of a particle that touches all 4 particles \item if the radius of that particle is within the specified range and it is entirely within the prescribed volume, insert the particle \end{enumerate} \item Repeat step 2 until the number of failed insertion attempts reaches \texttt{maxInsertFails} \end{enumerate} \noindent The \texttt{tolerance} parameter defines what is meant by \emph{touching} in the algorithm above. If particles overlap by less than the prescribed \texttt{tolerance}, they are said to be touching. The \texttt{cubicPackRadius} is a parameter for setting up the neighbours table used to track relative locations of adjacent particles. The optimal value for this is approximately $2.2 \times$ \texttt{maxRadius}. \texttt{circDimList} informs the packing algorithm of any circular (or periodic) boundaries so particles will be fitted together along these boundaries rather than being fitted to straight walls. This algorithm for filling a volume with spherical particles has some distinct advantages over some other methods but also some limitations. The algorithm requires no equilibriation simulation like some dynamical methods (e.g.\ expanding particle algorithms) to achieve a close packing of relatively low porosity. The algorithm is also easily adapted for filling quite arbitrary-shaped volumes, a feature exploited in the \texttt{GenGeo} add-on library for ESyS-Particle (which we will discuss later). On the downside, the user has little control over the final distribution of particle sizes (apart from specifying the range of sizes). Experience as shown that for a broad range of sizes (e.g.\ $[0.1, 1.0]$) the final particle size distribution is a power-law. For a narrow range of sizes (e.g. $[0.4,0.6]$) the size distribution is approximately a uniform random distribution. \subsubsection{Simulating collapse of a cube of unbonded particles} The aim of this example is to demonstrate the simulation of collapse of a cube of unbonded particles under the action of gravity. Suppose one had a container of loose, dry powder (such as sand or dirt) upturned on a table. When one lifts the container, one expects the powder to fall outwards forming a pile. Rather than going straight to a complete simulation of the process, we will progress in a number of stages so as to illustrate some important points about both the dynamics of sand-piles and about tricks that can be applied to simulate phenomena realistically using the Discrete Element Method. Write an ESyS-Particle script comprised of a cube of particles sitting atop a wall representing the table. Implement simple elastic repulsion between the particles, and between particles and the wall. In addition, implement gravity and viscosity, and add a \texttt{Runnable} to store snapshots every 1000 timesteps. Run the simulation for 50000 timesteps with a timestep increment of $10^{-4}$. If you need some help, refer to the \texttt{slope\_fail.py} code-listing in Appendix~\ref{code}. Once you have run the simulation, you should have a sequence of snapshots similar to those illustrated in Figure~\ref{fig:slope_fail_pics}. The most striking feature of the simulation results is the non-existence of a pile at the end of the simulation. In fact, a movie of the simulation snapshots looks remarkably like a fluid splashing down on the table (hence the name of this example: Splash-down). The reason for the discrepancy between the simulated results and our expected results lies in the simplified physics we have implemented in the model. It is well-known that the formation of sand-piles is governed by frictional interactions between the sand grains. Indeed the steepness of the pile (known as the \emph{angle of repose}) is directly related to the coefficient of inter-granular friction. In the next example we will attempt to improve our model by incorporating frictional interactions between unbonded particles. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{slope_fail_snaps.jpg}} \caption{A sequence of snapshots from a frictionless slope collapse simulation (from \texttt{slope\_\+fail.py})} \label{fig:slope_fail_pics} \end{figure} \subsection{Sand-piles: adding frictional interactions} \subsubsection{Frictional interactions between unbonded particles} As we saw in the previous example, the use of simple elastic repulsion between particles is insufficient to model formation of a sand-pile. The reason for this is postulated to be the lack of frictional interactions between the particles. In this example we will replace the \texttt{NRotElastic} Interaction Group with a new Interaction Group (called \texttt{NRotFriction}) incorporating both elastic repulsion and frictional resistance between touching particles. The following code-fragment illustrates how to incorporate frictional interactions in a simulation: \begin{verbatim} sim.createInteractionGroup ( NRotFrictionPrms ( name = "friction", normalK = 1000.0, dynamicMu = 0.6, shearK = 100.0, scaling = True ) ) \end{verbatim} \noindent In addition to the \texttt{name}, \texttt{normalK} and \texttt{scaling} parameters with which we are already familiar, \texttt{NRot\+Fric\+tionPrms} also requires two more parameters. The first parameter (\texttt{dynamicMu}) defines the coefficient of friction for touching particles whilst the second parameter (\texttt{shearK}) defines the shear stiffness at the contact point. When two particles first touch, a shear spring is created at the contact point. Forces from surrounding particles will cause the two particles to commence sliding past one-another with the shear spring resisting the motion. When the shear force exceeds the normal force multiplied by the coefficient of friction, dynamic sliding commences (as the maximum shear force is governed by the normal force and the friction coefficient). This is a simple yet effective method to simulate both static deformation at frictional contacts and dynamic frictional sliding. Change your \texttt{slope\_fail.py} script and replace the \texttt{NRotElasticPrms} interaction group with the code-fragment above (c.f.\ \texttt{slope\_friction.py} in Appendix~\ref{code}). Re-run the simulation and study the snapshots carefully. You should obtain a snapshot sequence similar to that of Figure~\ref{fig:slope_friction_pics}. My guess is that you will still be a little disappointed with the results. Although a pile begins to form in the early stages of the simulation, the pile eventually collapses (albeit a bit later than in the first example). Whilst the inter-particle friction has clearly had an impact, collapse of the pile is inevitable because the table is frictionless. To maintain the pile, we require frictional interactions between the particles and the table also. In the next example we will demonstrate a way to simulate frictional walls. After that we will discuss how often symmetry in the problem of interest can be exploited to produce more useful results without increasing the total number of particles in a simulation. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{slope_friction_snaps.jpg}} \caption{A sequence of snapshots of slope collapse with frictional particles (from \texttt{slope\_\+fric\+tion.py})} \label{fig:slope_friction_pics} \end{figure} \subsubsection{Frictional interactions between particles and walls} As we saw in the previous example, adding friction between particles certainly helps to form sand-piles but the lack of friction between particles and the table means the pile soon collapses. Once particles hit the table they slide away on the frictionless surface rather than remaining as support for particles rolling down on top. What we need is a frictional surface representing the table-top. At the time of writing this tutorial, ESyS-Particle has no Interaction Group specifically for frictional interactions between particles and walls. Consequently we need to think a little laterally to model a frictional surface. One way would be to make the wall entirely out of a slab of stationary particles that interact with the falling particles via a \texttt{NRotFriction} interaction. I'll leave it as an exercise to try that yourself. Another alternative is to attach particles at the base of the cube to the wall using the \texttt{NRotBondedWall} interaction group. Particles attached to the wall will be constrained to remain in place, oscillating around a point if large forces are applied by surrounding particles. The main reason for choosing this approach is to demonstrate another useful feature of ESyS-Particle: tagging of groups of particles so we selectively apply interactions to those particles. This is a handy feature that will be useful in a number of different scenarios. We aim to make use of the \texttt{NRotBondedWall} Interaction Group to bond particles to the wall with unbreakable elastic bonds. The code fragment for implementing such interactions is as follows: \begin{verbatim} sim.createInteractionGroup ( NRotBondedWallPrms ( name = "floor_bonds", wallName = "floor", normalK = 10000.0, particleTag = 12321 ) ) \end{verbatim} \noindent The first three parameters should now be familiar. The fourth parameter (\texttt{particleTag}) specifies the tag of particles that will undergo bonded elastic interactions with the wall denoted by \texttt{wallName}. All other particles that touch the wall will undergo unbonded elastic repulsion, just like previous examples. In order to bond specific particles to the wall, we need to assign a specific tag to those particles prior to inserting them into the simulation object. We can do this by individually inserting each particle within our random cube of particles and checking as we go whether those particles are close to the wall or not. The following code fragment achieves this: \begin{verbatim} for pp in geoRandomBlock_particles: centre = pp.getPosn() radius = pp.getRadius() Y = centre[1] if (Y < 1.1*radius): pp.setTag(12321) # tag particles nearest to the floor sim.createParticle(pp) # add the particle to the simulation object \end{verbatim} \noindent Rather than simply inserting the \texttt{geoRandomBlock\_particles} directly into the simulation object with a call to \texttt{sim.createParticles(..)}, we read each particle in the list and check whether its centre is within $1.1 \times$ the radius of that particle. If so, we set the tag of the particle to $12321$, denoting this particle as one to bond to the wall. Finally a call to \texttt{sim.createParticle(..)} adds each particle to the simulation object. Go ahead and modify \texttt{slope\_friction.py} to include the changes above. Remember to replace the \texttt{NRotElasticWall} Interaction Group with the \texttt{NRotBondedWall} Interaction Group. The complete code-listing for the modified script is called \texttt{slope\_\+fric\+tion\_\+floor.py} in Appendix~\ref{code}. Having made the necessary modifications, execute the simulation and record some snapshots. All being well, you should see a sequence of snapshots like Figure~\ref{fig:slope_friction_floor_pics}. Hurray! Finally we have simulated the formation of a sandpile, albeit only above the base of the original cube. A lot of particles still flowed away due to the frictionless surrounding area. Whilst one may argue this simulation is still some ways from the scenario we hoped to simulate, we have learnt quite a bit about both sand-piles and some of the features of ESyS-Particle in the process. The results of this simulation demonstrate that by bonding particles to walls we can simulate a rough frictional surface quite effectively (and quite simply). The simulation also further demonstrates that a sand-pile requires a frictional floor in order to hold itself up. Any particles rolling down outside the base of the original cube just slide away and cannot support the weight of particles falling down from above. Of course, we would much prefer to be able to keep more of the particles within the sand-pile rather than losing more than half of them from the pile. The next example achieves this to some extent and, in the process, introduces a technique of great utility in Discrete Element Modelling - the use of symmetry in the problem of interest to reduce the number of particles needed to simulate a phenomenon. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{slope_friction_wall_snaps.jpg}} \caption{A sequence of snapshots of slope collapse with frictional particles and a frictional floor (from \texttt{slope\_friction\_floor.py})} \label{fig:slope_friction_floor_pics} \end{figure} \subsubsection{Making use of symmetry to improve simulation results} Often the physical phenomenon one wishes to model contains geometrical symmetries that can be exploited to improve simulation results without needing to increase the total number of particles. For example, in our sand-pile simulations, the particles are initially arranged in a cubic volume which has three symmetry axes parallel with the sides of the cube. The final sand-pile is approximated by a cone which has circular symmetry around the (vertical) axis of the cone. In order to model the transformation of the cubic volume of particles into a conical pile, we really don't need to model the entire volume due to these inherent symmetries. A perfectly reasonable solution would be to model only one quarter of the cube collapsing to form one quarter of a cone. We can then rotate the final solution about the symmetry axis to obtain a reasonable representation for the final sandpile shape. The advantage is that we can model the process at higher resolution without increasing the total number of particles (and hence the time taken to run the simulation). One needs to exercise some caution however to ensure that the physics along symmetry cut-planes is accurately modelled. Typically the dynamics either side of a symmetry cut-plane are the mirror image of each other, known as even symmetry. To achieve this, in most cases the use of frictionless walls along cut-planes achieves the desired result. To see how a quarter-symmetry simulation works, make the following modifications to your previous script (\texttt{slope\_friction\_floor.py}): \begin{enumerate} \item Add a wall located at $(X,Y,Z) = (-5,0,0)$ with a normal in the positive X-direction (i.e. $\hat{n} = (1,0,0)$). This wall will be known as the \texttt{left\_wall}. \item Add a second wall located at $(X,Y,Z) = (0,0,-5)$ with a normal in the positive Z-direction (i.e. $\hat{n} = (0,0,1)$). This wall will be known as the \texttt{back\_wall}. \item Insert two new \texttt{NRotElasticWall} Interaction Groups, one for each of the new walls. \end{enumerate} \noindent Refer to \texttt{slope\_friction\_walls.py} in Appendix~\ref{code} if you are unsure how to do these steps. When completed, run your simulation for 100000 timesteps and record snapshots every 1000 timesteps. The results should be similar to those of Figure~\ref{fig:slope_friction_walls_pics}. Notice that we now have simulated formation of a pile that is almost twice as high as the previous example albeit we have only modelled one quarter of the sand-pile. Without increasing the number of particles we have now simulated the formation of a pile that has a basal area effectively four times that of the previous example. Although some particles still slide away on the frictionless floor, we have improved the spatial resolution of our sand-pile model quite considerably without sacrificing computation time. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{slope_friction_quarter_snaps.jpg}} \caption{A sequence of snapshots of slope collapse utilising quarter symmetry (from \texttt{slope\_friction\_walls.py})} \label{fig:slope_friction_walls_pics} \end{figure} In many instances exploiting symmetries in the problem at hand can greatly increase the accuracy of results without greatly increasing computation time. However one must be careful to avoid artifacts induced by potentially inaccurate boundary conditions along symmetry cut-planes. In some cases other problem constraints demand that large numbers of particles must be used. In those instances, exploiting symmetry may be the only option. Later we will encounter another useful technique for reducing problem sizes without greatly impacting simulation results - the use of periodic boundary conditions to simulate models that are effectively semi-infinite in one coordinate direction. \subsection{Hopper flow: Using quarter symmetry and mesh walls} Now that you've discovered the joys of slope collapse, there are really only a couple of steps to take this simulation and use it to study hopper flows. The flow of material in silos encounters many problems in the real world. These include rat-holing, stalling of flow around the exit, uneven draw profiles and unexpected segregation of finer material to name a few. The study of granular flow is a dynamic problem requiring many timesteps of simulation. In the previous section we learnt how to use quarter symmetry to improve simulation performance; hopper flow is another application that benefits from the use of symmetry. By using quarter symmetry planes around an exit point and modelling those planes using frictionless walls we can simulate models representative of hoppers of much larger capacity. \subsubsection{The mesh wall file format} So far we have only used planar walls in our simulations. Planar walls, by their definition, are infinite in length, making it difficult to simulate problems that require complex wall shapes or walls with holes. Mesh walls overcome this problem but are slightly more complicated to implement in simulations. ESyS-Particle uses a triangulated mesh format to define piecewise segments of a wall. Generation of these meshes can be done through most CAD packages but require a little work to convert into the ESyS-Particle mesh format. An example mesh file is shown below for an "L" shaped floor mesh that we will use in the upcoming example: \begin{verbatim} Triangle 3D-Nodes 6 0 0 0 -5.0 0.0 0.0 1 1 0 -5.0 0.0 5.0 2 2 0 0.0 0.0 -5.0 3 3 0 0.0 0.0 0.0 4 4 0 5.0 0.0 -5.0 5 5 0 5.0 0.0 5.0 Tri3 4 0 0 0 3 1 1 0 1 3 5 2 0 5 3 4 3 0 3 2 4 \end{verbatim} The mesh file commences with a format header \texttt{Triangle}; the number after \texttt{3D-\+Nodes} specifies how many nodal points exist in the mesh followed by the specification of locations of these points in the format: \begin{verbatim} ID Dummy Tag X Y Z \end{verbatim} The number after \texttt{Tri3} specifies how many triangle elements exist in the mesh. Normals of triangles are considered to be pointing out of the page using an anti-clockwise piecewise specification, regarding which see Figure~\ref{fig:trimesh_normal}. The tri-elements link the nodes in the following manner: \begin{verbatim} ID Tag Point1 Point2 Point3 \end{verbatim} \begin{figure} \begin{center} \resizebox{3in}{!}{ \includegraphics{trimesh_normal.jpg}} \end{center} \caption{Specification of mesh nodes for wall normals} \label{fig:trimesh_normal} \end{figure} \subsubsection{Using mesh walls in hopper flow simulations} Save the triangle mesh wall specification above in a file called \texttt{floorMesh.msh}. We can now read the mesh wall into a simulation object using the following code fragment: \begin{verbatim} sim.readMesh( fileName = "floorMesh.msh", meshName = "floor_mesh_wall" ) \end{verbatim} The variable \texttt{meshName} will be used later to create an interaction group between the particles and the mesh wall, just as we do for planar walls. Let's get started by editing our \texttt{slope\_friction\_walls.py} script to replace the bonded floor with a mesh wall: \begin{enumerate} \item Replace the current \texttt{floor} wall code with the above code fragment to import the mesh wall instead. \item Replace the current interaction group \texttt{floor\_bonds} with the following interaction group for mesh walls: \begin{verbatim} sim.createInteractionGroup ( NRotElasticTriMeshPrms ( name = "floorWall_repell", meshName = "floor_mesh_wall", normalK = 1.0000e+04 ) ) \end{verbatim} This interaction group creates a non-rotational elastic interaction that repels particles that make contact with the mesh wall, essentially just like a planar wall. We also wish to constrain our hopper so that particles may only exit via the hole in the mesh wall. We can do this by adding front and right walls to our simulation, in addition to the left and back walls added in the previous example: \item Add a third wall located at $(X,Y,Z) = (5,0,0)$ with a normal in the negative X-direction (i.e. $\hat{n} = (-1,0,0)$). This wall will be known as the \texttt{right\_wall}. \item Add a fourth wall located at $(X,Y,Z) = (0,0,5)$ with a normal in the negative Z-direction (i.e. $\hat{n} = (0,0,-1)$). This wall will be known as the \texttt{front\_wall}. \item Insert two more \texttt{NRotElasticWall} Interaction Groups, one for each of the new walls. \item Finally we will change the tagging of the particles for visualisation purposes. Change the tagging code fragment from the previous example to the following: code to the fragment below will colour the particles in layers of 2m in the Y direction: \begin{verbatim} #add particles to simulation one at a time, #tagging those in layers of 2m for pp in geoRandomBlock_particles: centre = pp.getPosn() Y = centre[1] if (int(Y%4) < 2): pp.setTag(1) # layer 1 else: pp.setTag(2) # layer 2 sim.createParticle(pp) # add particle to the simulation object \end{verbatim} The new tagging code will tag particles with one of two different tags, in layers of 2m in the vertical Y-direction. As mentioned before, particle tags can be used for a range of simulation-related functions. In this example we have used tagging to identify the initial location of particles in the vertical direction. This makes it easier for us to visualise the flow of particles later. \end{enumerate} Congratulations, you have now made all of the changes to the code required to do a hopper flow simulation. Run your code and you should expect something as in Figure~\ref{fig:hopper_flow}. If not, refer to \texttt{hopper\_flow.py} in Appendix~\ref{code}. As you have seen, mesh walls are a powerful and flexible feature of ESyS-Particle that allow complex shapes and interactions to be simulated. Discussing the model above, two unrealistic simplifications have been used that results in hopper flow dynamics somewhat different to that of real hoppers. Firstly, we use non-rotational particles as our granular media. This consequence of this is that friction between particles is higher than reality; particles are not able to roll over one another. The consequent higher bulk friction results in more frequent rat-holing or stalling of flow around the outlet. The second simplification is the use of a frictionless mesh wall as the base of the hopper. As with the slope collapse example in the previous section, particles can freely slide along the base surface as there is no shear/frictional component to the interaction. This will result in a wider flow pattern than usual, with particles sliding towards the outlet more easily. A more realistic simulation would include frictional interactions at the base of the hopper, perhaps by using the bonding technique introduced in the example above. \begin{figure} \begin{center} \resizebox{2.5in}{!}{ \includegraphics{hopper_flow.jpg}} \end{center} \caption{Hopper flow using a mesh base in quarter symmetry (from \texttt{hopper\_flow.py})} \label{fig:hopper_flow} \end{figure} \subsection*{What's next?} This chapter has introduced a number of new features of ESyS-Particle as well as some tricks and hints for obtaining more realistic simulation results without greatly increasing the mathematical complexity of the model. We have seen how to create a block of variable-sized particles at random locations. This avoids unphysical dynamics often encountered when using particles of equal size in regular crystalline packing arrangements. Techniques for tagging particles and bonding these tagged particles to walls, as well as introduction of mesh walls, provide methods to simulate complex boundary conditions including frictional walls of a variety of shapes. For problems that allow it, the use of symmetry-planes can increase the resolution of simulation results without greatly increasing the computation time. In the following tutorial we examine elastic-brittle failure of rock samples under uniaxial compression. Simulations of uniaxial compression are particularly important in Discrete Element Modelling, providing a way to calibrate numerical models so that the macroscopic physical properties (such as elastic moduli and failure strength) match those of real rocks. In order to simulate rock breakage under uniaxial loads, we will need to implement movable walls and introduce rotational cementatious elastic-brittle bonds. We will also examine the use of \texttt{FieldSavers} to selectively store simulation data such as wall forces, total strain energy and the number of broken bonds. Particular attention will be paid to how one may calibrate DEM simulations to achieve desired macroscopic properties. %This will lead on to the topic of the following tutorial: measurement of the macroscopic friction angle of loose granular materials via shear cell simulations. \newpage \section{Uniaxial compression simulations: moving walls, model calibration and \texttt{FieldSavers}} Quasi-static uniaxial compression of rock samples is a common laboratory technique for measuring the macroscopic properties of rocks such as Young's modulus, Poisson's ratio and the unconfined compressive strength. In uniaxial compression experiments, a sample of rock is slowly compressed by a piston until failure occurs. By measuring the force applied to the sample and the strain, one can measure the Young's modulus of the rock sample. The peak stress at which failure of the sample occurs is known as the Unconfined Compressive Strength (UCS), an important measure of the strength of rocks. In this tutorial we will describe how to perform uniaxial compression simulations using ESyS-Particle. Such simulations provide a means to measure the equivalent macroscopic properties of synthetic rock samples and are an important tool for calibrating Discrete Element models. When discussing calibration it is important to distinguish between the microphysical parameters defining interaction laws (e.g.\ elastic stiffnesses, coefficients of friction, etc.) and the macroscopic elastic properties (Young's modulus, macroscopic friction angle, etc.). The later are a function not only of the microphysical parameters, but also the geometrical properties of the network of bonded and unbonded interactions within the particle assembly. There is often no known analytical relationship between the microphysical parameters and the macroscopic properties (except in special cases of regular packings of equal-sized particles). To overcome this, it is common procedure to conduct a series of uniaxial compression simulations to tune the microphysical parameters until desired macroscopic properties are obtained. To simulate rock breakage under compressive loads, we will need to introduce a number of new ESyS-Particle techniques. These include: \begin{enumerate} \item implementation of cementatious (rotational) elastic-brittle bonds and rotational friction interactions, \item moving walls via a \texttt{Runnable}, and \item selective storage of simulation data using \texttt{FieldSavers}. \end{enumerate} \noindent Rather than incrementally building upon previous examples, this tutorial is written stand-alone, containing all code-fragments needed to implement uniaxial compression simulations. We will also discuss how to measure macroscopic elastic properties using simulation results. \subsection{Uniaxial compression simulations} In this example we will discuss how to implement a uniaxial compression simulation using ESyS-Particle. The model will consist of a rectangular prism of particles sandwiched between two piston walls which will be compressed at constant speed. We will utilise \texttt{FieldSavers} to monitor the positions of, and forces acting on, the walls, as well as the total strain energy stored in bonds between particles and the number of broken bonds. These simulation data will then be used to measure the macroscopic elastic properties of the particle model. Full code-listings for uniaxial compression simulations are available in Appendix~\ref{code}. %Since calibrating microscopic model parameters to achieve desired macroscopic elastic properties is the main objective, we will take more care in this tutorial to choose realistic parameter values. To do this requires that we choose a system of units of measure that is self-consistant and practical. ESyS-Particle is coded so that the choice of units of measure is arbitrary. The user may decide whether to use measurement units in MKS (metres, kilograms and seconds), CGS (centimetres, grams and second) or another system defining the units of Length, Mass and Time. No assumptions are made within ESyS-Particle a priori about the units of measure except that by default, particles have a density equal to 1.0. In the following example we will explicitly set the density of particles. %For the following example, we will use millimetres, Newtons and milliseconds as our fundamental units of measure. These are selected primarily for convenience. Laboratory uniaxial compression tests typically utilise rock samples approximately 50mm in diameter and around 100mm long. The Young's moduli of rocks are of order $40-80$GPa and peak strengths are between 100MPa and 250MPa. By using millimeters and Newtons as fundamental units, stresses in our simulation will be in units of N/mm/mm, which is equivalent to MPa. Similarly, by choosing milliseconds as out third unit of measure, velocities will be reported in m/sec and masses will be measured in grams. There is no reason why we could not have used MKS units in these simulations, but this selection just makes measuring results easier for calibration purposes. \subsubsection{Initialising the simulation object} Every ESyS-Particle simulation requires a \texttt{LsmMpi} simulation object. This object serves as a container to which we can add particles, walls, interactions and other modules for storing data or moving walls. The following code-fragment loads the ESyS-Particle Python modules and initialises the simulation object: \begin{verbatim} #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #instantiate a simulation object: sim = LsmMpi (numWorkerProcesses = 1, mpiDimList = [1,1,1]) #initialise the neighbour search algorithm: sim.initNeighbourSearch ( particleType = "RotSphere", gridSpacing = 5.0000, verletDist = 0.08000 ) #set the number of timesteps and timestep increment: sim.setNumTimeSteps (250000) sim.setTimeStepSize (1.0000e-06) #specify the spatial domain for the simulation domain = BoundingBox(Vec3(-20,-20,-20), Vec3(20,20,20)) sim.setSpatialDomain (domain) \end{verbatim} \noindent Most of these commands should now be familiar from previous tutorials. We first import a number of useful ESyS-Particle modules and create an instance of the \texttt{LsmMpi} simulation object. Whilst initialising the neighbour search algorithm, we specify that particles are of type \texttt{RotSphere} (unlike previous examples where we used \texttt{NRotSphere} particles). Subsequently we set the number of timesteps, the timestep size and the extents of the spatial domain. The simulation object is now initialised and ready to insert particles, interactions, walls, etc. \subsubsection{Creating a block of variable-sized particles} Having initialised the simulation object, we need to insert particles and bond them together. For rock breakage simulations, the best results are obtained using blocks of particles with variable radii and random locations. We will use the \texttt{RandomBoxPacker} first encountered in the previous tutorial: \begin{verbatim} #create a prism of spherical particles: geoRandomBlock = RandomBoxPacker ( minRadius = 0.400, maxRadius = 2.0000, cubicPackRadius = 2.2000, maxInsertFails = 5000, bBox = BoundingBox( Vec3(-5.0000, 0.0000,-5.0000), Vec3(5.0000, 20.0000, 5.0000) ), circDimList = [False, False, False], tolerance = 1.0000e-05 ) geoRandomBlock.generate() geoRandomBlock_particles = geoRandomBlock.getSimpleSphereCollection() #add the particles to the simulation object: sim.createParticles(geoRandomBlock_particles) #bond particles together with bondTag = 1: sim.createConnections( ConnectionFinder( maxDist = 0.005, bondTag = 1, pList = geoRandomBlock_particles ) ) \end{verbatim} \noindent This code-fragment generates a rectangular prism of particles whose radii lie in the range $[0.4, 2.0]$~mm. The prism is $10 \times 20 \times 10$~mm in size with the centre of the base at the origin. The final command adds the prism of particles to the simulation object. For more information about the \texttt{RandomBoxPacker} and the ESyS-Particle particle packing algorithm, please refer to the previous tutorial. The last section of this code-fragment uses a \texttt{ConnectionFinder} to find pairs of particles within a distance of 0.005~mm of each other. Each particle pair is tagged with a \texttt{bondTag} that we will use to specify the type of interactions between bonded particles below. We first encountered the \texttt{ConnectionFinder} in \texttt{gravity\_cube.py} when we created a bonded cube of particles to bounce on the floor. \subsubsection{Adding walls to the simulation object} Next we need to add two walls to the simulation object. These walls will serve as pistons for compressing the rock sample. We will add one wall below the sample (the \texttt{bottom\_wall}) and another atop the sample (the \texttt{top\_wall}): \begin{verbatim} #create a wall at the bottom of the model: sim.createWall ( name = "bottom_wall", posn = Vec3(0.0000, 0.0000, 0.0000), normal = Vec3(0.0000, 1.0000, 0.0000) ) #create a wall at the top of the model: sim.createWall ( name = "top_wall", posn = Vec3(0.0000, 20.0000, 0.0000), normal = Vec3(0.0000, -1.0000, 0.0000) ) \end{verbatim} \noindent Simply adding walls to the simulation object is insufficient. We must also define interactions between the walls and particles. For basic uniaxial compression simulations, repulsive elastic interactions are sufficient. If we were interested in tensile loading, we would need to bond the walls to particles at the base and top of the model. Bonding walls to particles was covered in the previous tutorial. For now, the following particle-wall interactions are all that are required: \begin{verbatim} #specify elastic repulsion from the bottom wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "bottom_wall_repel", wallName = "bottom_wall", normalK = 100000.0 ) ) #specify elastic repulsion from the top wall: sim.createInteractionGroup ( NRotElasticWallPrms ( name = "top_wall_repel", wallName = "top_wall", normalK = 100000.0 ) ) \end{verbatim} \noindent These two code-fragments specify elastic repulsion from the \texttt{bottom\_wall} and \texttt{top\_wall}. Each Interaction Group is assigned a unique name that can be used to selectively store various data about interactions using \texttt{FieldSavers}. Elastic repulsion of particles from walls requires specification of a single microphysical parameter, the elastic stiffness (\texttt{normalK}). For this simulation we set the elastic stiffness equal to $100000$~N/mm. %In the next section we will discuss how to rescale from simulation units to real units in the context of measuring macroscopic elastic properties. \subsubsection{Rotational bonds and frictional interactions} In previous examples we have encountered two types of particle interactions: \texttt{NRotElastic} and \texttt{NRotFriction} interactions. Both of these interactions are designed for particles with only three (translational) degrees of freedom (known as \texttt{NRotSpheres}) and are suitable for granular flow of individual particles or aggregates. To simulate elastic-brittle failure of rocks, more sophisticated particle-pair interactions are required. In particular, we require particle-pair interactions that incorporate both translational and rotational degrees of freedom. As illustrated in Figure~\ref{fig:rot_bond_diagram}, two bonded particles may undergo normal and shear forces, as well as bending and twisting moments. Bonds designed to impart such forces and moments are known as cementatious bonds (or in ESyS-Particle parlance \texttt{BrittleBeamPrms} interactions). \begin{figure} \begin{minipage}{3in} \begin{center} \resizebox{2in}{!}{ \includegraphics{rotational_bonds.jpg}} \end{center} \end{minipage} \begin{minipage}{3in} \caption{Diagram illustrating the forces and moments between particles bonded via rotational elastic-brittle bonds} \label{fig:rot_bond_diagram} \end{minipage} \end{figure} There is also a \texttt{FrictionPrms} interaction specifically designed for frictional interactions between unbonded rotational particles. Unlike the non-rotational equivalent, rotational frictional interactions impart a torque to both particles, causing the particles to rotate relative to each other when in frictional contact. The following code-fragment defines the microphysical parameters of rotational bonds: \begin{verbatim} #create rotational elastic-brittle bonds between particles: pp_bonds = sim.createInteractionGroup ( BrittleBeamPrms( name="pp_bonds", youngsModulus=100000.0, poissonsRatio=0.25, cohesion=100.0, tanAngle=1.0, tag=1 ) ) \end{verbatim} \noindent The \texttt{tag} parameter is used to specify which particle-pairs should be bonded together. The bond tags were assigned by the \texttt{ConnectionFinder} in the previous section. %It should be emphasised that the Young's Modulus, Poisson's ratio, cohesion and internal angle of friction (\texttt{tanAngle}) refer to the microphysical properties of individual brittle-elastic beams connecting two particles. Although the macroscopic elastic properties of the bonded particle assembly are strongly related to these parameters, there is typically not a one-to-one correspondence. %Rotational brittle-elastic bonds require specification of four parameters: two governing elastic properties of bonds and two governing the breaking strength of bonds. The physical interpretation of rotational bonds is that two particles are connected to one another with a cylindrical elastic beam whose radius is the mean of the radii of the bonded particles and whose equilibrium length is the sum of the radii of those particles. The elasticity of bonds is determined by a microscopic Young's modulus (\texttt{youngsModulus} parameter) and a microscopic Poisson's ratio (\texttt{poissonsRatio} parameter). It should be emphasised that the macroscopic elastic properties of an assembly of bonded particles does not necessarily match the microscopic elastic properties of the bonds themselves. The topology of the bond network in a particle assembly also influences its macroscopic elastic properties. In order to simulate brittle failure of samples, bonds require a failure threshold criterion (or breaking strength). In ESyS-Particle, a Mohr-Coulomb failure criterion is employed. A bond will fail (or break) if the shear stress within the bond exceeds its shear strength ($\tau$) given by: \begin{equation} \tau = \mathcal{C} + \sigma_N \tan (\phi_f) \end{equation} \noindent where $\mathcal{C}$ is the cohesive strength of the bond for zero normal stress ($\sigma_N$) and $\phi_f$ is the internal angle of friction of the bond. The \texttt{cohesion} and \texttt{tanAngle} parameters respectively define the cohesive strength and friction angle of bonds. %These breakage forces determine a threshold failure condition that once exceeded, causes the bond to break irreversibly. The threshold failure condition is defined as follows: %\begin{equation} %\frac{| F_n |}{F^{brk}_n} + \frac{| F_s |}{F^{brk}_s} + \frac{| F_b |}{F^{brk}_b} + \frac{| F_t |}{F^{brk}_t} > 1 \ \ \ . %\end{equation} %\vskip 5mm %\begin{minipage}{5.75in} %\emph{\textbf{IMPORTANT:} Since version $2.0$ of ESyS-Particle, the implementation of rotational bonded and frictional interactions has changed slightly to fix a problem with the scaling of elastic properties of models containing particles with differing radii (as is the case in this tutorial). By default, ESyS-Particle now interprets elastic stiffness parameters (e.g. \texttt{normalK} and \texttt{torsionK}) as elastic contact moduli (in stress) units. Internally ESyS-Particle multiplies these constants by the mean radius of two bonded (or touching) particles to compute a per-bond elastic stiffness. Similarly the breaking force parameters are interpreted as yield stresses. ESyS-Particle multiplies the yield stress parameters by the mean cross-sectional area of bonded particles to compute per-bond breaking forces. If you do not wish to apply this scaling of elastic properties, you need to set \texttt{scaling = False} in the specification of \texttt{RotBondPrms} and \texttt{RotFrictionPrms}. If you do not include the \texttt{scaling} parameter when specifying these types of interactions, ESyS-Particle assumes by default that \texttt{scaling = True} and will issue a warning to remind you about the \texttt{scaling} parameter. %\end{minipage} %\vskip 5mm When a bond between two particles breaks, we need to specify the type of unbonded interactions the particles will experience should they come into contact. Since a broken bond represents a fracture surface, it is appropriate to specify frictional interactions between unbonded particles. The following code-fragment implements frictional interactions between unbonded, touching particles: \begin{verbatim} #initialise frictional interactions for unbonded particles: sim.createInteractionGroup ( FrictionPrms( name="friction", youngsModulus=100000.0, poissonsRatio=0.25, dynamicMu=0.4, staticMu=0.6 ) ) \end{verbatim} \noindent Rotational frictional interactions are defined by a microscopic Young's modulus (\texttt{youngs\+Mod\+u\+lus}) and Poisson's ratio (\texttt{poissonsRatio}) and two microscopic coefficients of friction. Typically the Young's modulus and Poisson's ratio for \texttt{FrictionPrms} interactions are set equal to their \texttt{BrittleBeamPrms} counterparts. The \texttt{staticMu} coefficient of friction is applied when two particles are in static frictional contact, i.e., prior to the first time the frictional sliding criterion is met. Thereafter the \texttt{dynamicMu} coefficient of friction is applied. By setting $\texttt{dynamicMu} < \texttt{staticMu}$, one can simulate the physical observation that the frictional force required to maintain sliding is less than the force necessary to initiate sliding. Finally, we must inform the simulation object that any given particle-pair undergoes either bonded interactions or frictional interactions but not both. This is achieved by specifying an \emph{exclusion} between the two interaction groups: \begin{verbatim} #create an exclusion between bonded and frictional interactions: sim.createExclusion ( interactionName1 = "pp_bonds", interactionName2 = "friction" ) \end{verbatim} \subsubsection{Implementation of viscous damping} Uniaxial compression experiments are usually conducted in the so-called quasi-static regime. In other words, external loads are applied slowly compared with the compressional wavespeed of the sample. Any acoustic emissions generated during fracturing dissipate rapidly compared with the duration of the experiment. To simulate these conditions, we must also incorporate two body forces designed to attenuate translational and rotational oscillations. In previous examples we encountered the \texttt{LinDamping} body force. In the uniaxial compression simulations we will use both \texttt{LinDamping} and \texttt{RotDamping}, the later being designed to attenuate rotational oscillations. The two damping forces are implemented thus: \begin{verbatim} #add translational viscous damping: sim.createInteractionGroup ( LinDampingPrms( name="damping1", viscosity=0.002, maxIterations=50 ) ) #add rotational viscous damping: sim.createInteractionGroup ( RotDampingPrms( name="damping2", viscosity=0.002, maxIterations=50 ) ) \end{verbatim} \noindent The viscosity coefficients are chosen to be small so that damping has little effect on the elastic response of the simulated rock sample but it is sufficient to attenuate unwanted oscillations. \subsubsection{Implementation of movable walls: the \texttt{WallLoader} \texttt{Runnable}} Only one component remains to be added to the uniaxial compression simulation: a method to move the two walls at constant speed. There are a couple of ways this may be implemented: either as a subroutine that is called each timestep of the simulation or as a reusable \texttt{Runnable} module. We previously encountered \texttt{Runnables} in the first tutorial. The use of a \texttt{Runnable} is considered superior as the module can be re-used in subsequent simulations whenever movable walls are required. There are two steps involved in implementing and using a \texttt{Runnable}: \begin{enumerate} \item Write a script containing the implementation of the \texttt{Runnable}, and \item Add the runnable into the simulation container. \end{enumerate} \noindent The following code (entitled \texttt{WallLoader.py} in Appendix~\ref{code}) implements a \texttt{Runnable} to move a given wall with a specified velocity. To achieve this, the \texttt{Runnable} must be passed a reference to the simulation object, a wall name, a velocity and two additional parameters: \texttt{startTime} and \texttt{rampTime}. Experience has shown that it is best to gradually increase the wall speed from zero to the desired value over a few hundred timesteps. The \texttt{rampTime} parameter specifies the number of timesteps during which the wall accelerates. The velocity of the wall increases linearly over that number of timesteps. The other parameter (\texttt{startTime}) allows the user to commence moving the wall after a specified number of timesteps. The \texttt{WallLoader} \texttt{Runnable} has two subroutines: \begin{itemize} \item \texttt{\_\_init\_\_()} to initialise the \texttt{Runnable} and store parameter values, and \item \texttt{run()} which moves the wall and is called once each timestep of the simulation. \end{itemize} \noindent The implementation of the \texttt{WallLoader} \texttt{Runnable} is as follows: \begin{verbatim} #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * class WallLoaderRunnable (Runnable): def __init__ (self, LsmMpi=None, wallName=None, vPlate=Vec3(0,0,0), startTime=0, rampTime = 200): """ Subroutine to initialise the Runnable and store parameter values. """ Runnable.__init__(self) self.sim = LsmMpi self.wallName = wallName self.Vplate = vPlate self.dt = self.sim.getTimeStepSize() self.rampTime = rampTime self.startTime = startTime self.Nt = 0 def run (self): """ Subroutine to move the specified wall. After self.startTime timesteps, the speed of the wall increases linearly over self.rampTime timesteps until the desired wall speed is achieved. Thereafter the wall is moved at that speed. """ if (self.Nt >= self.startTime): #compute the slowdown factor if still accelerating the wall: if (self.Nt < (self.startTime + self.rampTime)): f = float(self.Nt - self.startTime) / float(self.rampTime) else: f = 1.0 #compute the amount by which to move the wall this timestep: Dplate = Vec3( f*self.Vplate[0]*self.dt, f*self.Vplate[1]*self.dt, f*self.Vplate[2]*self.dt ) #instruct the simulation to move the wall: self.sim.moveWallBy (self.wallName, Dplate) #count the number of timesteps completed thus far: self.Nt += 1 \end{verbatim} \noindent Copy the code above into a text file called \texttt{WallLoader.py} and save it in the same directory as the file containing the code for the uniaxial compression simulation (called \texttt{rot\_compress.py} in Appendix~\ref{code}). To use this \texttt{Runnable} in the uniaxial compression simulation, we must do two things: \begin{enumerate} \item import the Runnable at the start of the script like so: \begin{verbatim} from WallLoader import WallLoaderRunnable \end{verbatim} \item add a \texttt{WallLoaderRunnable} for each of the two piston walls: \begin{verbatim} #add a wall loader to move the top wall: wall_loader1 = WallLoaderRunnable( LsmMpi = sim, wallName = "top_wall", vPlate = Vec3 (0.0, -0.125, 0.0), startTime = 0, rampTime = 50000 ) sim.addPreTimeStepRunnable (wall_loader1) #add a wall loader to move the bottom wall: wall_loader2 = WallLoaderRunnable( LsmMpi = sim, wallName = "bottom_wall", vPlate = Vec3 (0.0, 0.125, 0.0), startTime = 0, rampTime = 50000 ) sim.addPreTimeStepRunnable (wall_loader2) \end{verbatim} \end{enumerate} \noindent Notice that the sign of the wall velocity (\texttt{vPlate}) is opposite for the two walls. The top wall will move downwards and the bottom wall upwards, both at a speed of $0.125$~m/s. Although this rate is significantly higher than that typically used in laboratory uniaxial compression experiments, it is sufficiently small to maintain quasi-static conditions in the simulations. The piston speeds are approximately $20000 \times$ lower than the compressional wavespeed of the simulated rock sample. The initial acceleration of the walls from zero to the desired speed (during the first $50000$ timesteps) also helps ensure the sample is loaded quasi-statically. Technically the simulation object now contains all of the components needed for a uniaxial compression simulation. The only remaining item is to instruct the simulation to execute all timesteps. This is achieved with the following command: \begin{verbatim} #execute the simulation: sim.run() \end{verbatim} \noindent If you have been following the previous tutorials, you may notice that we have not specified how data should be output during the simulation. This is covered in detail in the next section, where we discuss the use of \texttt{FieldSavers} to store only the data of specific interest during uniaxial compression simulations. \subsection{Measurement of macroscopic elastic properties} One of the primary reasons for conducting uniaxial compression simulations is to measure the Young's modulus and Unconfined Compressive Strength (UCS) of the rock sample. Both of these macroscopic properties can be obtained from a stress--strain curve, as illustrated in Figure~\ref{fig:stress_strain_diag}. Young's modulus is defined as the slope of the linear section of the stress--strain curve, whilst the UCS is the peak value of the stress. In order to measure these quantities in a simulation, we must construct the stress--strain curve for the simulation. \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{stress_strain_diagram.jpg}} \end{center} \caption[Diagram illustrating a typical stress-strain curve \& how to measure Young's modulus ($E$) \& the unconfined compressive strength (UCS) from such a curve]{Diagram illustrating a typical stress-strain curve and how to measure Young's modulus ($E$) and the unconfined compressive strength (UCS) from such a curve} \label{fig:stress_strain_diag} \end{figure} Suppose the net restoring forces (at time $t$) that particles apply to the top and bottom walls are $\vec{F}^{(t)} (t)$ and $\vec{F}^{(b)} (t)$ respectively, and the unit normal vector of the walls is $\hat{n}^{(t/b)}$. Then the stress exerted on the walls by the particle assembly is: \begin{equation} \sigma_{YY} (t) = \frac{\vec{F}^{(t)} . \hat{n}^{(t)} + \vec{F}^{(b)} . \hat{n}^{(b)}}{2 A_c} \ \ \ , \label{eq:stress} \end{equation} \noindent where $A_c$ is contact area between a wall and the particle assembly. Since the peak stress is reached for relatively small axial strain (only a few \% usually), the contact area can be approximated by the undeformed area of base of the particle assembly (in our example, that would be $10 \mathrm{m} \times 10 \mathrm{m} = 100 \mathrm{m}^2$). Computing the total strain is also relatively straightforward. Let $\vec{X}^{(t)} (t)$ and $\vec{X}^{(b)} (t)$ be the positions of the top and bottom walls at time $t$. The strain $\varepsilon_{YY} (t)$ is given by: \begin{eqnarray} \varepsilon_{YY} (t) & = & \frac{\left[ \left( \vec{X}^{(t)} (0) - \vec{X}^{(b)} (0) \right) - \left( \vec{X}^{(t)} (t) - \vec{X}^{(b)} (t) \right) \right] . \hat{y}}{\left[ \left( \vec{X}^{(t)} (0) - \vec{X}^{(b)} (0) \right) \right] . \hat{y}} \\ & = & 1 - \frac{\left[ \vec{X}^{(t)} (t) - \vec{X}^{(b)} (t) \right] . \hat{y}}{\left[ \vec{X}^{(t)} (0) - \vec{X}^{(b)} (0) \right] . \hat{y}} \label{eq:strain} \end{eqnarray} \noindent where $\hat{y}$ is the unit vector in the direction normal to the bottom wall. From the two formulae above, it is evident that to compute the stress--strain curve, we need to record the net force acting on each wall and the position of each wall at each timestep of the simulation. The next section describes how to use \texttt{FieldSavers} to store the forces and positions of walls. In the following section, we will examine how to read the output files and construct the stress--strain curve for a simulation. \subsubsection{Storing wall positions and forces} ESyS-Particle includes a group of modules called \texttt{FieldSavers} designed to store specific simulation data to disk. \texttt{FieldSavers} are closely related to the \texttt{CheckPointer} encountered in the first tutorial, the main difference being that \texttt{FieldSavers} store only specific data rather than all of the state variables of the particles. \texttt{FieldSavers} can also be used to store data on particles (such as position or kinetic energy), interactions (such as potential energy and the number of broken bonds), and walls (such as the position of a wall and the net force acting on the wall). As discussed in the previous section, we need to store the wall forces and positions in order to construct the stress--strain curve for our uniaxial compression simulations. The following code-fragment initialises a \texttt{FieldSaver} to store wall positions: \begin{verbatim} #create a FieldSaver to wall positions: posn_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Position", fileName="out_Position.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=250000, timeStepIncr=10 ) sim.createFieldSaver(posn_saver) \end{verbatim} \noindent This code-fragment should be inserted before \texttt{sim.run()} is called. \texttt{WallVec\+torFieldSav\+erPrms} takes a number of parameters. These are: \begin{itemize} \item \texttt{wallName} -- a list of the names of walls whose position you wish to save \item \texttt{fieldName} -- the data field to store (in this case ``Position'') \item \texttt{fileName} -- the name of the text file in which to store the data \item \texttt{fileFormat} -- the output format (\texttt{RAW\_SERIES} creates an ASCII text file) \item \texttt{beginTimeStep} -- the timestep number to commence storing data \item \texttt{endTimeStep} -- the timestep number to conclude storing data \item \texttt{timeStepIncr} -- the number of timesteps to wait between storing a datum \end{itemize} \noindent Storing wall forces is very similar -- one need only specify a \texttt{fieldName} of \texttt{Force} and change the \texttt{fileName}. The following code fragment will initialise a \texttt{FieldSaver} to store wall forces: \begin{verbatim} #create a FieldSaver to wall forces: force_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Force", fileName="out_Force.dat", fileFormat="RAW_SERIES", beginTimeStep=0, endTimeStep=250000, timeStepIncr=10 ) sim.createFieldSaver(force_saver) \end{verbatim} \subsubsection[Measurement of Young's modulus \& unconfined compressive strength]{Measurement of Young's modulus and unconfined compressive strength} Once you have written all the code-fragments above into a text file (called \texttt{rot\_\+com\+press.py}) and created a \texttt{WallLoader.py} file containing the implementation of the \texttt{Wall\+Load\+er} \texttt{Runnable}, execute a simulation by typing the following at the command prompt: \begin{verbatim} $ mpirun -np 2 `which esysparticle` rot_compress.py \end{verbatim} \noindent The simulation may take some time so feel free to go grab a coffee while you wait! When the simulation is completed, two text files should have been written into the current working directory, \texttt{out\_Position.dat} and \texttt{out\_Force.dat}. If you examine one of these files with a text editor, the first few lines should look something like the following: \begin{verbatim} 0 1.125e-10 0 0 20 0 0 4.75e-10 0 0 20 0 0 1.0875e-09 0 0 20 0 0 1.95e-09 0 0 20 0 0 3.0625e-09 0 0 20 0 0 4.425e-09 0 0 20 0 0 6.0375e-09 0 0 20 0 0 7.9e-09 0 0 20 0 0 1.00125e-08 0 0 20 0 0 1.2375e-08 0 0 20 0 \end{verbatim} \noindent The file is formatted so that, for any given timestep, the vector position (or force) of each wall is listed one after the other on the same line. Hence, the first 3 columns are the X-, Y- and Z-components of the position (or force) of the bottom wall and the following 3 columns are those of the top wall. The following python script will read both files and output stress and strain at each timestep in a format suitable for plotting using \texttt{gnuplot} or another XY plotting package. The formulae used to compute stress and strain are Equations~\ref{eq:stress} and \ref{eq:strain}. Figure~\ref{fig:UCS_stress_strain} shows the result for a typical uniaxial compression simulation. \begin{verbatim} from math import * posnfile = open("out_Position.dat","r") posn = posnfile.readlines() posnfile.close() forcefile = open("out_Force.dat","r") force = forcefile.readlines() forcefile.close() for i in range (len(posn)): Y_bottom = float(posn[i].split()[1]) Y_top = float(posn[i].split()[4]) F_bottom = float(force[i].split()[1]) F_top = float(force[i].split()[4]) stress = (F_bottom - F_top)/100.0 strain = 1.0 - (Y_top - Y_bottom)/20.0 print strain,stress \end{verbatim} \noindent To execute this script, write it to a text file called \texttt{make\_stress\_strain.py}, save it to the same directory where you ran the uniaxial compression simulation, then type the following at the command prompt: \begin{verbatim} $ python make_stress_strain.py > stress_strain.dat \end{verbatim} \noindent A new text file (called \texttt{stress\_strain.dat}) will be created, the first column of which will be strain and the second will be stress. Now that we have a stress-strain curve for the uniaxial compression simulation, it is a simple matter to measure the slope of the linear section to estimate Young's modulus and to measure the peak stress -- an estimate for the unconfined compressive strength. You might like to write your own script to compute Young's modulus and UCS directly from \texttt{stress\_strain.dat} or modify the script above. In the next section we will examine three more useful \texttt{FieldSavers} for uniaxial compression simulations, namely the total kinetic energy of the particles, the total strain energy stored in bonds and the number of broken bonds. These three fields provide information on the internal deformation of the simulated rock sample, quantities not usually directly amenable to measurement in laboratory experiments. \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{UCS_stress_strain.jpg}} \end{center} \caption{Stress-Strain curve obtained from a uniaxial compression simulation (from \texttt{rot\_compress.py})} \label{fig:UCS_stress_strain} \end{figure} \subsubsection{Storing information on particles and bonds: kinetic energy, potential energy and number of bonds} In the previous section we examined how to output wall forces and positions using \texttt{FieldSavers}. Both these data fields are examples of \emph{measurable quantities}, i.e., quantities that can be directly measured in equivalent laboratory experiments. Comparison of measurable quantities from simulations and experiments is a useful technique for validating and calibrating Discrete Element models. However, the primary advantage of computer simulations in scientific research is the ability to examine internal dynamics that are typically not amenable to direct observation in the laboratory or field. In this section we examine three quantities that provide insight on the internal deformation within rock samples subjected to uniaxial compressive loads. The first quantity is the total kinetic energy of the particle assembly. The total kinetic energy is simply the sum of the kinetic energy of each particle, i.e., $E_k = \sum_i \frac{1}{2} m_i v_i^2$. It is frequently useful to measure the total kinetic energy in simulations, particularly if one suspects a simulation is numerically unstable. An unbounded growth in the total kinetic energy over time is a good indication that a simulation is not working correctly. The following code-fragment initialises a \texttt{ParticleScalarFieldSaver} to store the total kinetic energy each timestep: \begin{verbatim} #create a FieldSaver to store the total kinetic energy of the particles: sim.createFieldSaver ( ParticleScalarFieldSaverPrms( fieldName="e_kin", fileName="ekin.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) \end{verbatim} \noindent Most of the \texttt{FieldSaver} parameters should now be familiar. A new \texttt{fileFormat} called \texttt{SUM} is used here. This file format stores the sum of the kinetic energy of each particle. The output format is an ASCII text file with the total kinetic energy written once per timestep. A number of other fields may also be output using \texttt{ParticleScalarFieldSavers} or \texttt{ParticleVectorFieldSavers}. A list of valid \texttt{fieldNames} for various types of \texttt{FieldSav\+ers} is provided in Appendix \ref{tables}. Other helpful information can be found on this \link{ESyS-Particle Twiki documentation page}{https://twiki.esscc.uq.edu.au/index.php/Documentation_and_Presentations}. The second quantity is the total strain energy stored within bonds connecting particles. The total strain energy is simply the sum of the potential energies of the rotational bonds connecting each particle-pair. The following code-fragment initialises an \texttt{InteractionScalarFieldSaver} to store the total strain energy each timestep: \begin{verbatim} #create a FieldSaver to store potential energy stored in bonds: sim.createFieldSaver ( InteractionScalarFieldSaverPrms( interactionName="pp_bonds", fieldName="potential_energy", fileName="epot.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) \end{verbatim} \noindent Notice that instead of providing a list of wall names, we now provide the name of the Interaction Group, whose data we wish to store (in this case our \texttt{pp\_bonds} interaction group defining rotational bonds between particles). Once again we specify a \texttt{SUM fileFormat} so that the total potential energy is output to an ASCII text file once per timestep. Another extremely useful quantity to monitor in elastic-brittle simulations is the number of broken bonds, as this is a measure of the amount of damage the rock sample has suffered due to the external load. Another \texttt{InteractionScalarFieldSaver} is used to output the total number of bonds each timestep. The relevant code-fragment is as follows: \begin{verbatim} #create a FieldSaver to store number of bonds: sim.createFieldSaver ( InteractionScalarFieldSaverPrms( interactionName="pp_bonds", fieldName="count", fileName="nbonds.dat", fileFormat="SUM", beginTimeStep=0, endTimeStep=250000, timeStepIncr=1 ) ) \end{verbatim} \noindent The main difference here is the choice of \texttt{fieldName} -- \texttt{count} instead of \texttt{potential\_energy}. Note that this \texttt{FieldSaver} will output the total number of remaining bonds. If you wish to know how many bonds have broken you need to subtract the total number of remaining bonds from the initial number of bonds. \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{UCS_epot.jpg}} \end{center} \caption{Time-series of total strain energy stored in bonds during a uniaxial compression simulation (from \texttt{rot\_compress.py})} \label{fig:UCS_PE} \end{figure} \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{UCS_nbonds.jpg}} \end{center} \caption{Time-series of percentage of bonds broken during a uniaxial compression simulation (from \texttt{rot\_compress.py})} \label{fig:UCS_nbroke} \end{figure} \begin{figure} \begin{center} \resizebox{5in}{!}{ \includegraphics{UCS_force.jpg}} \end{center} \caption{Time-series of net wall force during a uniaxial compression simulation (from \texttt{rot\_compress.py})} \label{fig:UCS_force} \end{figure} Time-series of the total strain energy and the number of broken bonds are shown in Figures~\ref{fig:UCS_PE} and \ref{fig:UCS_nbroke} along with the wall force time-series (Figure~\ref{fig:UCS_force}) for comparison. The total strain energy time-series closely resembles the stress--strain curve, suggesting that total internal strain energy is proportional to macroscopic stress. This is not that unexpected given that it is the energy stored in bonds that imparts a force on the piston walls. The time-series of broken bonds is more interesting. Firstly, it is apparent that a significant fraction of bonds break before the peak stress is reached. In other words, the sample undergoes significant irreversible internal damage prior to reaching the unconfined compressive strength. The second interesting observation is that the total number of broken bonds after the peak stress is reached is only approximately $30\%$ of the initial number of bonds. The sample remains largely intact even post-peak. This is exactly what one would expect in laboratory uniaxial compression experiments as well. These experiments do not entirely annihilate rocks to atoms, but rather fragment the rock samples into a large number of smaller fragments. In a later tutorial, we will discuss how to post-process \texttt{CheckPointer} output files to measure, amongst other things, the sizes and number of fragments produced during our uniaxial compression simulation. %\subsubsection{Dimensional analysis and rescaling of simulation results} %\emph{\textbf{TO DO}} %\subsection{Triaxial compression simulations} %\subsubsection{Implementation of servo walls} %\subsubsection{Measurement of Poisson's ratio} \subsection*{What's Next?} In this tutorial we introduced three useful features in ESyS-Particle simulations: the ability to move walls via a \texttt{Runnable} to implement external loading of models, new types of particle-pair interactions for models involving rotational particles, and some FieldSavers, providing another mechanism for outputing specific data about particles, walls and interactions during the course of a simulation. We also discussed some of the issues related to calibration of model parameters in DEM simulations. By this stage we have covered most of the basic features of ESyS-Particle simulations, so you are ready to start designing and executing your own simulations. In the following tutorial we will encounter some post-processing tools provided with ESyS-Particle. These tools are designed for post-simulation analysis of data stored in \texttt{CheckPointer} output files to permit visualisation and analysis of data that is not easily computed during simulations. We will demonstrate how to convert \texttt{CheckPoint} files into a format suitable for interactive visualisation using popular third-party software such as ParaView and VisIt. We will also see how to visualise the locations of broken bonds and also the shapes of fragments produced during uniaxial compression simulations. %In the following tutorials we will start to discuss some of the more advanced features of ESyS-Particle. These include the use of a external helper module called \texttt{LSMGenGeo} that provides the capacity to create particle models of siginificantly greater geometrical complexity than the basic tools covered already (such as \texttt{CubicBlock} and \texttt{RandomBoxPacker}). We will also introduce some post-processing tools provided with ESyS-Particle designed for post-simulation analysis of data stored in checkpoint files. These tools include a conversion tool to permit interactive visualisation of ESyS-Particle checkpoint files using third-party software such as \link{ParaView}{http://www.paraview.org} and \link{VisIt}{https://wci.llnl.gov/codes/visit/}. \newpage \section{Post-processing and data visualisation} ESyS-Particle is primarily designed as a high-performance parallel DEM simulation engine. The Python API makes designing and executing different simulations relatively simple and straightforward, however the data output mechanisms (\texttt{FieldSavers} and \texttt{CheckPointers}) are relatively basic. For most applications, post-processing of simulation output files will be necessary to obtain useful results. ESyS-Particle is packaged with a few tools designed to aid in the post-processing of simulation data to obtain particular results or convert the output into formats that can be visualised using freely available third-party visualisation tools (such as \link{ParaView}{http://www.paraview.org} and \link{VisIt}{https://wci.llnl.gov/codes/visit/}). In this tutorial, we will discuss some of these post-processing tools and how to use them for more advanced visualisation of simulation results. By way of motivation we will use the uniaxial compression simulation (\texttt{rot\_compress.py}) discussed in the previous tutorial. By adding a \texttt{CheckPointer} to our simulation and post-processing the checkpoint files, we will be able to: \begin{itemize} \item interactively visualise a variety of simulation data, \item calculate the size and shape of rock fragments generated, and \item visualise the locations of fractures formed during the compression test. \end{itemize} We first encountered the \texttt{CheckPointer} in Chapter~3. \texttt{CheckPointers} provide a convenient way to output data from ESyS-Particle simulations. In combination with the post-processing tools described below (amongst others), quite advanced visualisation and analysis of simulation data may be achieved. To begin, add a \texttt{CheckPointer} to the \texttt{rot\_compress.py} script (just before the \texttt{sim.run()} subroutine call), then re-run the simulation: \begin{verbatim} sim.createCheckPointer ( CheckPointPrms ( fileNamePrefix = "snapshot", beginTimeStep = 0, endTimeStep = 250000, timeStepIncr = 1000 ) ) \end{verbatim} \noindent A series of \texttt{CheckPoint} files will now have been written to the working directory, each beginning with the prefix \texttt{snapshot}. These checkpoint files provide the input to a number of post-processing tools packed with ESyS-Particle. In this chapter, we will encounter three of these post-processing tools, namely: \begin{enumerate} \item \texttt{dump2vtk}: a tool to convert \texttt{CheckPoint} files into a format suitable for interactive visualisation, \item \texttt{grainextract}: a tool that identifies \emph{clusters} of particles bonded together, and \item \texttt{fracextract}: a tool for visualising the location of broken bonds in brittle failure simulations. \end{enumerate} \subsection{Interactive visualisation of simulation data} Perhaps the most versatile of ESyS-Particle's post-processing tools is \texttt{dump2vtk}. This tool will convert a sequence of \texttt{CheckPoint} files (also known as \emph{dump} files) into VTK unstructured mesh files. VTK (short for \link{Visualisation Tool Kit}{http://www.vtk.org}) is a popular library for three-dimensional post-processing and visualisation of scientific datasets. Although designed primarily for advanced visualisation and analysis of mesh-based datasets (e.g. from finite difference or finite element software), VTK has quite some utility for post-analysis of DEM simulation data also. Third-party visualisation software (such as \link{ParaView}{http://www.paraview.org} and \link{VisIt}{https://wci.llnl.gov/codes/visit/}) provide interactive 3D visualisation capabilities that make these packages (in combination with \texttt{dump2vtk}) a powerful addition to an ESyS-Particle modeller's arsenal. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{PV_initial_window.png}} \caption{An example of an ESyS-Particle simulation visualised using ParaView.} \label{fig:PV_initial_window} \end{figure} For this tutorial, we will focus on visualisation using ParaView to simplify discussion. VisIt is an equally good choice for visualising ESyS-Particle simulations, if you prefer it over ParaView. The first step to interactively visualise ESyS-Particle simulation data is to convert the \texttt{CheckPoint} files into VTK unstructured mesh files. ESyS-Particle's \texttt{dump2vtk} post-processing tool is designed for this purpose. \subsubsection{\texttt{dump2vtk}: convert checkpoint files to VTK files} The following shell command will convert all of the \texttt{rot\_compress.py} \texttt{CheckPoint} files: \begin{verbatim} $ dump2vtk -i snapshot -o vtk_snaps_ -rot -t 0 251 1000 \end{verbatim} \noindent Having successfully executed this command, $251$ new files will be written to the directory containing the \texttt{CheckPoint} files. A partial directory listing of these files is as follows: \begin{verbatim} $ ls *.vtu vtk_snaps_0.vtu vtk_snaps_100.vtu vtk_snaps_101.vtu vtk_snaps_102.vtu vtk_snaps_103.vtu vtk_snaps_104.vtu vtk_snaps_105.vtu vtk_snaps_106.vtu vtk_snaps_107.vtu vtk_snaps_108.vtu vtk_snaps_109.vtu vtk_snaps_10.vtu [...] \end{verbatim} \noindent These new VTK files are in a suitable format for opening from within ParaView (\texttt{File | Open..}). Having opened the sequence of VTK files, you will be presented with a graphical window similar to Figure~\ref{fig:PV_initial_window}. \subsubsection{Interactive visualisation using ParaView} The default graphical view in ParaView shows only the bonds linking particles, with the colours representing the radius of the particle residing at the intersection points of bonds. The VTK output files from \texttt{dump2vtk} contain a number of different scalar and vector fields that may be selected for visualisation via the \texttt{Display} tab in the \texttt{Object Inspector} pane to the left of the main ParaView window. The scalar and vector fields available for visualisation are: \begin{itemize} \item scalar fields: \begin{itemize} \item \texttt{radius}: the radius of individual particles, \item \texttt{particleTag}: the tag assigned to each particle, \item \texttt{Id}: the unique identity number of each particle, \item \texttt{bondTag}: the tag assigned to individual bonds, \item \texttt{bondStrain}: an indication of the amount of strain stored in each bond, \item \texttt{proc\_id}: the unique worker process identity number for visualising parallel subdomain decomposition. \end{itemize} \item vector fields: \begin{itemize} \item \texttt{velocity}: the current velocity of each particle, \item \texttt{angular velocity}: the current angular velocity of each particle, \item \texttt{displacement}: the total displacement of each particle since the simulation commenced, and \item \texttt{initial position}: the initial position of each particle. \end{itemize} \end{itemize} In many cases, useful information can be gained by simply colouring the bonds according to one of the scalar fields above, or the magnitude of one of the vector fields. In other instances it is useful to use a so-called \texttt{Glyph} filter to visualise, for example, the velocity field as an assembly of arrows. Perhaps the most useful \texttt{Glyph} filter is the \texttt{Sphere} filter. This filter inserts a sphere at the location of each particle, the radius of which can be scaled by the particle radius. The spheres can then be coloured according to any of the fields listed above. Examples of visualising the particle assembly and a velocity field are provided in Figure~\ref{fig:PV_examples}. ParaView also provides a group of controls on the toolbar that allows one to step through the sequence of VTK files in temporal order. Clicking on the \texttt{Play} symbol will automatically step through all the ($251$) snapshot files one at a time. In this manner, the progress of a simulation may be animated. There are also a number of other more advanced features of ParaView that are useful for visualisation of DEM simulation results. It is recommended that one explore ParaView and its documentation to learn about these features. \begin{figure} \resizebox{\textwidth}{!}{ \includegraphics{PV_examples.png}} \caption{Examples of visualisation using \texttt{Glyphs} in ParaView. A) Particles represented as sphere glyphs, coloured by the X-component of velocity; B) Particle velocities represented as arrow glyphs, coloured by the speed of each particle.} \label{fig:PV_examples} \end{figure} \subsection{Calculating the number and size of rock fragments} \subsubsection{\texttt{grainextract}: analysing rock fragments} \subsubsection{Visualising rock fragments using ParaView} \subsection{Visualising cracks formed during fracture simulations} \subsubsection{\texttt{fracextract}: identifying locations of broken bonds} \subsubsection{Visualising fractures using ParaView} \subsection*{What's Next?} In this tutorial some of the ESyS-Particle post-processing tools were introduced. One of these tools (\texttt{dump2vtk}) converts \texttt{CheckPointer} output files into VTK files, a popular 3D visualisation data format. Having converted checkpoint files to VTK format, third-party visualisation software can be used for advanced interactive visualisation of simulation results. Another post-processing tool (\texttt{grainextract}) permits analysis of the number and size of fragments produced during brittle failure simulations. In combination with \texttt{dump2vtk}, \texttt{grainextract} can also be used to interactively visualise the formation of fragments. The final post-processing tool to be considered was \texttt{fracextract} which calculates the locations and times of bond breakage events. Using this tool in combination with \texttt{dump2vtk} allows fracture patterns to be visualised. The ESyS-Particle post-processing tools are designed to permit advanced analysis and visualisation of simulation data with little additional computational expense over and above the burden required to execute simulations. The following tutorial introduces another popular DEM simulation model, the annular shear cell. Shear cells are often employed in the laboratory to measure the bulk frictional response of sheared granular media. They are also popular for studying the fragmentation of granular media such as occurs within silos, along conveyor belts or within earthquake fault gouge zones. The purpose of the shear cell tutorial is to demonstrate some more features of ESyS-Particle and DEM simulations, namely how to conduct quasi-static two-dimensional simulations, how to implement periodic boundaries in one coordinate direction, and how to apply a constant external loading force to walls. These features are important weapons in the arsenal of a DEM modeller, finding application for simulating a broad range of physical phenomena. \newpage \section{Annular shear cells: quasi-static 2D simulations with periodic boundaries and servo walls} In Chapter 6, uniaxial compression simulations were introduced for the purpose of calibrating the microphysical parameters of DEM models so that the macroscopic elastic properties match those of brittle-elastic materials such as rocks. Whilst uniaxial compression simulations (and their companions, tension and triaxial compression simulations) are quite useful for calibrating a DEM model to simulate brittle failure, such simulations are not as useful if one wishes to calibrate the model to simulate, for example, flow of granular material. One of the key macroscopic properties of granular media is the \emph{bulk friction coefficient}, defined as the effective frictional resistance of a volume of granular material under shear loading. In the laboratory, the bulk friction coefficient is measured via either direct shear tests or annular shear cell tests. We will focus upon the later in this chapter. An annular shear cell consists of two metal rings, the bottom of which contains a groove within which is placed granular material (e.g. sand, gravel or powder). The top ring is then lowered onto the bottom ring and a series of weights and pulleys are used to maintain a constant vertical pressure on the ring of granular material. Subsequently the bottom ring is rotated at constant speed, thus shearing the granular material to a desired total shear strain. By measuring the force required to maintain a constant shearing rate, experimentalists can estimate the effective bulk friction coefficient of the granular material. \begin{figure} \begin{center} \resizebox{10cm}{!}{ \includegraphics{ShearCellSetup.jpg}} \end{center} \caption{Diagram of a two-dimensional annular shear cell simulation employing periodic boundaries in the X-direction (from \texttt{shearcell.py}).} \label{fig:shearcell} \end{figure} In the following, we will discuss how to construct a two-dimensional version of the annular shear cell test using ESyS-Particle and demonstrate how the bulk friction coefficient may be calculated in shear cell simulations. The main purpose here is not to describe a production-ready DEM annular shear cell model suitable for calibration, but rather to elucidate a number of useful techniques in DEM modelling and how these are implemented in ESyS-Particle simulations. As it happens, the annular shear cell is an ideal application with which to introduce these techniques within a practical context. The key techniques we will discuss are: \begin{itemize} \item how to restrict ESyS-Particle to two-dimensional computations, \item how to implement periodic (or circular) boundaries in one coordinate direction, \item how to conduct quasi-static simulations, and \item how to implement servo walls to maintain a constant external loading force (or stress) on a particle assembly. \end{itemize} Figure~\ref{fig:shearcell} illustrates the DEM model we wish to construct. It consists of a two-dimensional assembly of unbonded frictional particles of variable size. A layer of particles top and bottom are bonded elastically to planar walls that will act as driving plates. So as to simulate a ring of particles similar to the annulus of a shear cell, we employ periodic boundaries in the X-direction; particles exitting the model to the right will re-enter the model to the left and vice versa. A constant compressive force will be applied to the top driving plate in the negative Y-direction. In addition, the bottom plate will be moved at constant speed in the X-direction. Since annular shear cell tests are typically conducted under quasi-static conditions, we will also utilise two numerical approximations to achieve quasi-static conditions in the simulations, namely: \begin{enumerate} \item large viscous damping to remove elastic waves, and \item higher than normal particle densities to ensure particle accelerations remain relatively small throughout the simulation. \end{enumerate} \noindent The complete code-listing for the shear cell simulations may be found in Appendix~\ref{code:shearcell}. \subsection{Two-dimensional computations and periodic boundaries} For a number of applications, two-dimensional DEM simulations are sufficient to obtain useful results. Although ESyS-Particle is primarily designed with large, three-dimensional simulations in mind, it is relatively simple to instruct ESyS-Particle to ignore computations in the Z-direction, effectively reducing the simulation to two dimensions. The \texttt{LsmMpi.force2dComputations(..)} subroutine call achieves this. This subroutine call should be made very soon after initialising the simulation object (\texttt{LsmMpi}) and before setting the spatial domain of the simulation. The following code-fragment illustrates the use of \texttt{LsmMpi.force2dComputations(..)}: \begin{verbatim} #import the appropriate ESyS-Particle modules: from esys.lsm import * from esys.lsm.util import * from esys.lsm.geometry import * #create a simulation container object: # N.B. there must be at least two sub-divisions # in the X-direction for periodic boundaries sim = LsmMpi (numWorkerProcesses=2, mpiDimList=[2,1,1]) sim.initNeighbourSearch ( particleType = "NRotSphere", gridSpacing = 2.5, verletDist = 0.5 ) #specify the number of timesteps and timestep increment: sim.setNumTimeSteps(100000) sim.setTimeStepSize(0.001) #enforce two-dimensional computations: sim.force2dComputations (True) \end{verbatim} ESyS-Particle also permits the use of periodic boundaries in one coordinate direction (the X-direction). Periodic boundaries in ESyS-Particle are implemented by borrowing the code used for managing transit of particles across parallel subdomain boundaries. Consequently, if one wishes to employ periodic boundaries, one must ensure there are at least two parallel subdivisions in the X-direction. In the code-fragment above, this is achieved by setting \texttt{mpiDimList=[2,1,1]} (and specifying the need for two worker processes via \texttt{numWorkerProcesses=2}). It is also necessary to inform ESyS-Particle that periodic boundaries are being used when one sets the spatial domain of the simulation. The code-fragment below illustrates how this is done: \begin{verbatim} #specify the spatial domain and direction of periodic boundaries: domain = BoundingBox ( Vec3 (0,0,0), Vec3 (10,10,0) ) sim.setSpatialDomain ( bBox = domain, circDimList = [True, False, False] ) \end{verbatim} Having assigned the appropriate number of parallel subdivisions and correctly set the \texttt{circDimList} argument of \texttt{LsmMpi.setSpatialDomain(..)}, the simulation object is initialised to employ periodic boundaries in the X-direction. A simple test script could easily be constructed in which a single particle is inserted with an initial velocity in the X-direction. As the simulation progresses the particle would simply loop around and around the X-direction, exiting one side of the domain and re-entering the other side. If periodic boundaries were not correctly initialised, the particle would simply disappear from the simulation once it crossed the spatial domain boundary. For our annular shear cell simulation, we desire a particle assembly consisting of particles of variable size, initially at random locations. As we have seen in previous tutorials, the \texttt{RandomBoxPacker} can be used for this. So that we achieve a dense initial particle packing, the \texttt{RandomBoxPacker} must also be informed of the presence of periodic boundaries. The following code-fragment illustrates: \begin{verbatim} #construct a rectangle of unbonded particles: packer = RandomBoxPacker ( minRadius = 0.1, maxRadius = 0.5, cubicPackRadius = 2.2, maxInsertFails = 1000, bBox = BoundingBox( Vec3(0.0, 0.0,0.0), Vec3(10.0, 10.0, 0.0) ), circDimList = [True, False, False], tolerance = 1.0e-5 ) packer.generate() particleList = packer.getSimpleSphereCollection() \end{verbatim} \noindent Note that we have not yet inserted the particles into the simulation object. This is because we wish to tag the particles carefully prior to insertion, as explained in the next section. \subsection{Quasi-static simulations: local damping and high densities} Annular shear cell experiments in the laboratory are typically conducted under so-called \emph{quasi-static} conditions. Mathematically, quasi-static conditions imply that particle accelerations are negligible and, hence, inertial effects (such as elastic wave propagation) are neglected. ESyS-Particle employs an explicit finite-difference time-integration scheme in which particle velocities and positions are updated by computing the instantaneous acceleration of each particle (via Newton's Second Law). Such a time-integration scheme is only suitable for \emph{dynamic} conditions in which the accelerations are non-zero. If all particle accelerations were zero, no stationary particles would move and non-stationary particles would move at constant speed (Newton's First Law). One way to simulate quasi-static conditions in a DEM model would be to change the time-integration scheme to an implicit (typically iterative) scheme in which particle positions and forces are repeatedly updated until all forces are negligible. To implement such a scheme in ESyS-Particle would require significant re-factoring of the DEM engine and is likely to be quite computationally inefficient. An alternative approach that is often adopted by DEM practitioners involves the use of two numerical approximations that together achieve quasi-static conditions. The first numerical approximation is known as the \emph{high density approximation}. It involves assigning unrealistically large densities (or masses) to all particles. Since the instantaneous acceleration of a particle is inversely proportional to its mass ($a = F/m$), a larger mass results in a smaller acceleration, for a given net force acting on a particle. Here the particle mass is being used as a type of \emph{penalty factor} to reduce the amplitudes of particle accelerations. However, given that the particle accelerations will never be zero, some inertial effects will be expected to remain. The second numerical approximation, large artificial damping, attempts to reduce the impact of these inertial effects. By utilising a relatively large amount of viscous damping, elastic waves can be efficiently reduced in amplitude over a few time-steps. In this way inertial effects can also be managed to achieve effectively quasi-static conditions in the DEM simulations. To implement the high density approximation in ESyS-Particle simulations, we must prescribe large particle densities. The \texttt{LsmMpi.setParticleDensity(..)} subroutine achieves this. As this subroutine sets the density of all particles with a given tag, we must first assign a tag to each particle before insertion into the simulation object. Later we will need to bond a layer of particles top and bottom to driving plates, so we will need three particle tags: one for unbonded particles within the cell (\texttt{tag=1}), one for particles near the bottom plate (\texttt{tag=2}) and one for particles near the top plate (\texttt{tag=3}). The following code-fragment tags the particles accordingly and inserts them into the simulation: \begin{verbatim} #tag particles along base and top of rectangle #then add the particles to the simulation object: for pp in particleList: centre = pp.getPosn() radius = pp.getRadius() Y = centre[1] if (Y < 1.0): # particle is near the base (tag=2) pp.setTag (2) elif (Y > 9.0): # particle is near the top (tag=3) pp.setTag (3) else: # particle is inside the shear cell (tag=1) pp.setTag (1) sim.createParticle(pp) # add the particle to the simulation object \end{verbatim} Having assigned a tag to each particle, the density of the particles can be set using the following syntax: \begin{verbatim} #set the density of all particles: sim.setParticleDensity ( tag = 1, mask = -1, Density = 100.0 ) \end{verbatim} \noindent Remember to also set the density of particles with \texttt{tag=2} and \texttt{tag=3} using similar subroutine calls. In previous tutorials, the \texttt{LinDampingPrms} artificial viscosity Interaction Group has already been encountered. By assigning a relatively large value for the \texttt{viscosity} parameter, we can use \texttt{LinDampingPrms} to damp inertial effects. The following code-fragment achieves this in our shear cell simulation: \begin{verbatim} #add local damping to avoid accumulating kinetic energy: sim.createInteractionGroup ( LinDampingPrms ( name = "damping", viscosity = 1.0, maxIterations = 100 ) ) \end{verbatim} Due to the way ESyS-Particle implements damping, it is important that the specification of damping interaction groups is placed after that of all other interaction groups in a simulation script. Before adding the code-fragment above to your script, insert the following: \begin{enumerate} \item two walls above and below the particle assembly (at $Y=0$ and $Y=10$), \item \texttt{NRotFrictionPrms} interactions between unbonded particles, and \item \texttt{NRotBondedWallPrms} to bond appropriately tagged particles to the walls. \end{enumerate} \noindent Once you have added these items and the \texttt{LinDampingPrms} interaction group to your script, we are ready to define the boundary conditions. The next section describes how to do this. \subsection{Servo walls and constant stress boundary conditions} As described in the introduction to this chapter, annular shear cells are loaded via a combination of a constant vertical confining pressure applied to the top ring and shear of the bottom ring at a constant rate. To simulate shear at a constant rate, we can simply re-use the \texttt{WallLoaderRunnable} we encountered in Chapter 6. So as to match the typical laboratory conditions, we will only shear the \texttt{bottom\_wall}. The following code-fragment achieves that: \begin{verbatim} #import the WallLoaderRunnable (at the top of the script): from WallLoader import WallLoaderRunnable [...] #add WallLoaderRunnables to shear the bottom driving plate: wall_loader1 = WallLoaderRunnable( LsmMpi = sim, wallName = "bottom_wall", vPlate = Vec3 (0.125, 0.0, 0.0), startTime = 30000, rampTime = 10000 ) sim.addPreTimeStepRunnable (wall_loader1) \end{verbatim} \noindent Notice that the wall is moved in the X-direction this time and that shear does not commence until $30000$ timesteps have elapsed. The delay commencing shear is to provide sufficient time to apply a constant vertical stress to the model, via the \texttt{top\_wall}. Now that we have implemented constant shear boundary conditions for the \texttt{bottom\_\+wall}, we must also implement a constant vertical stress loading condition on the \texttt{top\_wall}. In DEM simulations, constant boundary forces (or stresses) are implemented via so-called \emph{servo walls}. A servo wall is a wall that is incrementally moved a small distance in order to maintain a constant prescribed net force acting on the wall. The net force on a wall is a combination of the forces due to all particles interacting with the wall and any external forces (or applied motions). Consequently, in order to compute the wall displacement required to maintain a prescribed net force, one must have access to all the instantaneous particle-wall forces. Of course, once the wall is moved, these particle-wall forces change, so one must recompute the net force on the wall. Typically a simple iterative procedure can be employed in which a wall is moved a small distance, forces are recomputed, then the wall is moved again. In most circumstances, this iterative procedure converges rapidly and the loop is terminated when the incremental wall displacement is smaller than a prescribed tolerance. Although it is technically possible to implement a servo wall algorithm from within a \texttt{Runnable}, this would be computationally inefficient, requiring numerous communications between the Python API, the master process and the workers. Consequently, ESyS-Particle provides a built-in subroutine, \texttt{LsmMpi.applyForceToWall (..)}, that implements a simple servo wall algorithm. The user need only supply the \emph{name of the Interaction Group} specifying the type of particle-wall interactions, as well as the net force to apply to the wall. The following code-fragment illustrates how one might apply a $1N$ force in the Y-direction to the \texttt{top\_wall} in our shear cell simulation: \begin{verbatim} sim.applyForceToWall ( interactionName = "twall_bonds", force = Vec3 (0,1,0) ) \end{verbatim} \noindent Note that we do not supply the name of the wall but rather the particle-wall interaction group, \texttt{twall\_bonds}. In order to maintain quasi-static equilibrium in the shear cell simulations, it is advantageous to initially increase the applied force linearly until the desired force is achieved. This is similar to the initial acceleration implemented in the \texttt{WallLoaderRunnable}. A \texttt{Runnable} that achieves this, called \texttt{ServoWallLoader.py}, is provided in Appendix~\ref{code:ServoWallLoader}. Once implemented, all that remains is to import and initialise this \texttt{Runnable} in \texttt{shearcell\+.py}: \begin{verbatim} #import the ServoWallLoaderRunnable (at the top of the script): from ServoWallLoader import ServoWallLoaderRunnable [...] #add ServoWallLoaderRunnables to apply constant normal stress: servo_loader1 = ServoWallLoaderRunnable( LsmMpi = sim, interactionName = "twall_bonds", force = Vec3 (0.0, -1000.0, 0.0), startTime = 0, rampTime = 5000 ) sim.addPreTimeStepRunnable (servo_loader1) \end{verbatim} \noindent The arguments to \texttt{ServoWallLoaderRunnable} instruct ESyS-Particle to linearly increase the applied force on the \texttt{top\_wall} for $5000$ timesteps, then maintain a constant vertical force of $1000N$ thereafter. Recall that shear commences after $30000$ timesteps, so there is plenty of time for the model to equilibriate at the desired confining pressure prior to shear commencing. Now that the two boundary conditions are implemented, the physics of the shear cell model are complete. Of course, it would be advantageous to include some \texttt{FieldSavers} or a \texttt{CheckPointer} prior to commencing a simulation. The next section describes how to use \texttt{WallVectorFieldSavers} to measure the bulk friction coefficient of the sheared unbonded particles, as well as how to observe whether dilation occurs during shear. \subsection{Computation of bulk frictional properties of granular media} The primary purpose of DEM shear cell simulations is to provide a means to calibrate the microphysical model parameters so that the bulk frictional properties of the DEM model match those measured in laboratory experiments. In the laboratory, the bulk friction coefficient of a sheared granular material is estimated by measuring the amount of force (or torque) required to maintain a constant rate of shear at the boundaries. The bulk friction coefficient ($\mu_{\mathrm{bulk}}$) is defined as the measured shear force ($F_s$) divided by the applied normal force ($F_n$) i.e. \[ \mu_{\mathrm{bulk}} \approx \frac{F_s}{F_n} \] \noindent Typically a time-series of the bulk friction coefficient is averaged in order to obtain a measure of the mean bulk friction coefficient. The standard deviation provides a measure of the degree of variability of the bulk friction. It should be obvious that in order to estimate the bulk friction coefficient in the DEM shear cell simulations, we need to extract time-series of the forces acting on the walls throughout the simulations. The following \texttt{WallVectorFieldSaver} will provide the necessary raw data: \begin{verbatim} force_saver = WallVectorFieldSaverPrms( wallName=["bottom_wall", "top_wall"], fieldName="Force", fileName="out_Force.dat", fileFormat="RAW_SERIES", YbeginTimeStep=0, endTimeStep=100000, timeStepIncr=1 ) sim.createFieldSaver(force_saver) \end{verbatim} \noindent This code-fragment should be quite familiar as it is almost identical to that used in the \texttt{rot\_compress.py} tutorial. \begin{figure} \begin{center} \resizebox{10cm}{!}{ \includegraphics{SC_bulk_friction.png}} \end{center} \caption{Time-series of the effective bulk friction coefficient from a two-dimensional annular shear cell simulation (from \texttt{shearcell.py}).} \label{fig:bulkFriction} \end{figure} A time-series of the bulk friction coefficient from a shear cell simulation is provided in Figure~\ref{fig:bulkFriction}. In this figure we average the normal and shear forces acting on the two walls as measures for $F_n$ and $F_s$ in the formula above. Note that during the initial stage of the simulation, the bulk friction coefficient is near-zero. During this interval only a normal force is applied to the top wall (with no shear applied to the bottom wall). Once shear commences (after $30000$ timesteps) the bulk friction coefficient rapidly rises to approximately $\mu_{\mathrm{bulk}} \approx 0.65$. Thereafter, rough stable sliding of the granular material ensues, with the bulk friction coefficient remaining near-constant. This result is typical when shearing a granular material comprised of irrotational spheres with a constant internal friction coefficient (here we set the internal friction coefficient as $0.6$). Past research has demonstrated that inhibiting rolling of DEM particles (through the use of \texttt{NRotSpheres}) results in a bulk friction coefficient that increases as the internal friction coefficient increases. However, when rotational, unbonded particles are used, the bulk friction coefficient is significantly smaller, and almost independent of the choice of internal friction coefficient. The reason for this is that spheres simply roll over one another without any geometrical interlocking and, more importantly, without \emph{dilation} of the granular material as it shears. A time-series of the top wall position (as shown in Figure~\ref{fig:dilation}) confirms that the top wall monotonically reduces in height throughout the simulation. If geometrical interlocking had occurred, one would expect to see evidence for the top wall ``riding up'' as the granular material becomes locally interlocked. Thankfully there is a relatively simple way to achieve realistic frictional response in DEM shear cell simulations: utilise clusters of particles bonded together that interlock by virtue of the surface roughness of the clusters. In the next chapter we will discuss how one might construct a shear cell model incorporating clusters of bonded particles representing the granular material. \begin{figure} \begin{center} \resizebox{10cm}{!}{ \includegraphics{SC_dilatancy.png}} \end{center} \caption{Time-series of the top wall position from a two-dimensional annular shear cell simulation (from \texttt{shearcell.py}).} \label{fig:dilation} \end{figure} \subsection*{What's Next?} In this chapter, a number of useful DEM modelling techniques were introduced using annular shear cell experiments as a motivation. We discussed how to conduct two-dimensional simulations with ESyS-Particle, including periodic boundaries in one coordinate direction. The use of large viscosity and high particle densities was demonstrated as an effective method to achieve quasi-static conditions in DEM simulations without altering the time-integration scheme. Servo walls were also discussed as a mechanism to apply constant boundary forces (or stresses) to DEM models. In the final section of this chapter, we analysed some results from the simple shear cell model. These results, although promising, demonstrated a lack of geometrical interlocking, an important mechanism governing the frictional response of granular media. Some DEM practitioners have implemented more complicated particle-pair interactions to overcome this limitation. This is often a reasonable compromise when computational resources are limited. Another approach is simply to make the model geometrically more complex without increasing the mathematical complexity of the particle-pair interactions. Past research using ESyS-Particle has demonstrated that the use of bonded clusters of particles to represent individual grains results in bulk frictional response matching that observed in laboratory experiments. There are numerous other instances where increasing the geometrical realism of a DEM model can yield more realistic results without resorting to more complicated interaction laws. This observation is one of the reasons ESyS-Particle is designed for use on parallel supercomputers. Increased geometrical realism typically requires the use of significantly larger numbers of particles. ESyS-Particle permits these significantly larger models to be executed on parallel supercomputers in almost the same amount of time as a smaller model on a desktop PC. As simulation models become increasingly complex, one may need to carefully design models to achieve optimal performance or make use of third party tools to generate and analyse these models. The following chapter describes some of the other resources available to assist advanced users of ESyS-Particle. Of course, in order to construct these geometrically complex models, one requires a flexible tool for model construction. The next chapter introduces \texttt{GenGeo}, a companion library to ESyS-Particle, designed as a tool for constructing DEM models that are much more geometrically complex than we have encountered thus far. \newpage \section{Jazzing things up: complicated particle geometries using \texttt{GenGeo}} \subsection{Particles in a box: a simple \texttt{GenGeo} example} \subsection{Getting serious: groups, particle tags and bond tags} \subsection{Lateral thinking: hierarchical packing for complex models} \subsection*{What's Next?} \newpage \section{Additional ESyS-Particle resources and documentation} ./Doc/Tutorial/UCS_force.jpg0000664000175000017500000033400312176660653015464 0ustar vborosvborosÿØÿàJFIF,,ÿÛCÿÛCÿÀ=D"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?þþ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø{þ SûD|Dý“¿aÚƒö‡øC£Yx‡â·Ã…Ú¦±ð×CÔ´‹ŸiÚŸ/ï,4 Z_èvwú]î­e.½«X ­>ËP¶¼»€I ¬†áãFø÷àwŸø.ç‹þx{Ä_¿mØ?àÇõ}#KÔµo‡¾ ý†¾!üe´ðÅåý¢]^hZŒo¿kÿ…÷ºž,‹a{.“¢^éS^ErtýJîÍ-îîÿFÿjo€0~ÓŸæø?{âHü-¥ê?~øß\¿—ÃÐøu?üø÷ðÓãˆü4ËOJ‚ > h^Ô< »4בøVo§ŠBñ*èçú§ÑügþÅ?ðSø,Gíÿ\ý®ÿà˜3~Ð_±ŸÃ™?dÍ㻪|mö:ñ׌“Æ–Ÿ >+|?øY zÆý©<&Ú5ψ®¾!iúÄ©sã»ø´[{ ËD›X‘ ™ÿD?oGþ ñû'þÏ??h?ß´Ÿì#ûNYüðF»ñƾտc¯‰¼i{áO Y^jþ)›ÀéoûO|[ѼKªéœÚÊhú–©á«VÞÖþÇJ{½at½7Wügÿ‚-ÿÊ×ÿðY_û'µïþµßìÍ_Ü׊|7¥xÇÃ#ð†»ÚtOh:¿†õ‹}±7Ÿ¥kš}Æ™¨C¶x§¼ÛK©£Û4DwbH¤BÈ@?,?à ß·Wí)û8ÿÁ.&ýµ?eÙçþãE÷ÿ„^2Ó~Ï£ø]Ò|;¦üC³Ðoµÿx‹ÂÔm¼aâoø.ÏU{­_CðÆ¹§ÞClÇS»×týKÕu(~’ÿ‚pþП¿jߨƒövý¡¿i/‚“~Ï>)x*ã_ñÏÂY­u=4 ˜øÑû9þΗ¾'𦉥|ð/†<®|Hø‘gŒeÒ~èºô– ¯Å¦j*×"Ñl$½Yµ‹Ë "ïV?KþÌ·Ã?Úãö'ðí×ð›Àß'øiㇾ6ø‹á¯‡º‡„t›ÿz¥‡µ/i7žÓüàßx»LÕüc­ê¾µðÆ¢x›S“X¹½Ò­xo.ÞÞ³¨¯Âƒßðp·ìAñSö„øÛû3x‡áïígðâwìýðÞ_ˆŸt¿Ÿ£ðn¥Ôÿ¾|)ðÏÃ_xCñ‡‹~-x«â¯Äüeð|;ð†…ðêðøÊÏXômBâòëM²¿öÿ‹ðW¯…ÿ³T>ñ_íqû-þÙ²wÁˆ^3Ѽ áïÚ7ã'‚~ _|"ÓõßO%¾‚~ ÃðãßÅ?Š_tíM¢‘ãÔ>1|2ð½¢$ƒR6RE4q€~´Ñ_ž>0ÿ‚‹x@xÓâGgÙ×ö›ý¶uOƒ7÷ÚÅýcö^Ð>Íàox¿J±–¯ðúoˆŸ>5ü ð/þ%h¶’Øÿoü:øWâxÓÃךžŸ¥kº&«ÌöwŸ°Çíûû6ÿÁD>jÿgj÷Ö~ñn­ðÿâ/|i¡\xCâw¿hl£RðwÄ?^K=Ɖ«ÅÇqo5µÖ£¤j;¶ª]½µävÀiQ_'þÕ?¶Çìõûi~ —ã7е?øL~*xƒþƒ_<á{â7Ư>1&Õ†>|.ð…–©â¯ßÂ÷Ö#S¿‚Êøz+Û[Ïë:5„Ëu_+ø÷þ Íðçà>ñ'í‰û.~×ÿ±_Â/ø‹Dð¦‹ñ÷ãß…>ëŸt½sÄÓÉkáÛoˆºçìñû@|wñÁ{m^è[ÚǪ|hð¿ÃÝ*Æâòu{Ý:Ho–ÌõbНgyi¨ZZߨ][_X_[Aye{gx NÇÃúuÍí¾§«ëÞ+ñ^¬&:/‚ü áYjÞ,ñ×uÃmpº7„¼%£kþ¢-î$¶°xm®%‹â¿ÿÁVô?ƒžŸãwÇŸØkþ ð7öpÓÖÏüñ׃ú·‡| ÍumjÞ)ñïÂ?†¿|ûSxÃviûN«¨ø»öÑŽ‹ióêðØ¨ˆJúµE|}ñ“öÔøwðÃöwð‡í;ðÿÀ?k†¾=] ÿÂþÆŸn?hxƒÃ ðö­â{éš7‡u+E»ðréšCG.± ãçSÔtm"ÚÞãSÕm-_à€ð^¿ÙöŸøß>ü4ý¥þ j2ø“âÆ“§ü±ð_ÃM3âõÇ…~ éÖ>"|]×?·¾/é_ þ|ÑÓź&™þ.üRø}o¨ø‚äøvÆÒ}h%”€²Þ/ÕµÂ~(×|=áËŸkú/‡u½[Cð•õ®™wâcNÓno4ÏZêWÀÙi÷:Ýì0i_^ki-ÒÜ\n+ñþiÿ ýº¿à¢žý§õÏÛgö8_ÙRçáÅ= ¯m<'ñÁ^1µÔ¡ñ,ž)ðmþ…ñ?QÔõÛßü&“Hðô-ñNŸ&• ë—4°µ²ðχï4}FÚO£¿fø+ÏìÕûb~Äš·íÑû4øö‘øÇàø¾çáç‰~øáþ+ý¡ôˆ0ørûPð}×ÃßëÚž“¨ê:~‹âï x†óQðÿ‹µŸ Ç¡jö÷Ã\qÜvúðN/ø+ìóÿ=½ý¢tß^øûà Göañ†|ñ3KøùàáÞµмIoâG“H±ðý‡|S¯Ù_øjûš΋â?Åz_†53X·û,6w‘ù“Æú{E|kûTþÞ³ß쇪|;ðWÄMWÅ/øÕñ–þçKø)û:|ð–©ñ7ã×ÅËÛæê²ø?áþ‚¦{èv«=sâËï xÃv–Ó˯x«N!OÖ¿àªÿ þøÿáwÃÿÚÿà/í3û ·ÆïZx#á'?i=àΧð‹Æ^7ÔPK¥x6ïâÏìáñÃö‚ðÃÏjñ ‰t½#âÖ¹à «Ô²½òTµ»)ýC¢¾qý¤?j„ß²æà›Ïˆ×^ Õ|QñOƶ? ¾|.ð‡ïë¾$hÓAøað÷áÃß|5ñÅ_\—»þЛRø¯ðßAÓ.¼?â;í—sèÍ-Çê·Äߌ?ð…|¾øÉðóáÇ¿i{oìÏ k~ð7ìûsðã]ñ—ÄMÅZ®‹eg«øûâÄ?†ÿuM2×HÖGŒ.oïþ i6·^Óoî´Iu}IôÝ+Qþ5¿àŒ_µÇÄ?‡ðSø/÷ŒôØ+öÕøµ©|Sý§~kZ÷ÿ†:ì½7Žþ\Øx§ö©žü`ǵ<'½ª6¹um§/ÃoüIÒMdž¼@/µ{SG›Xþ‘?à–?´WüoãÿÊiÿ(ý|/û)|ZøsñxK÷Þ×þÛà/‹š*X»ê$ð–}âÿëºF™¤ê¬ê÷^-Ö´[j–“h—!ôÝR4ýI®_Àþ#½ñ‚¼âíKÂ(ø}¨ø§Âþñÿ€¼pš~5ðEÚjw^ñ„~×üWáxüQá©î¤Ñ¼@žñG‰4Õ¬®×G×õ8[ê7=EWã/ˆ?à¸_³??k_†±ïůŸ¶WÀÏ|Y»ø†Þø™ñÓàv›ðà}׆~øKÄ>3ñ×Ï|sã½{¿x{IðåÏöž·£h:´šsßéš••–¨Gª®ÏÄßø,ŸÂ¯…¿/ÿj [öIýº5ØßMm:îëö·Ñþü1³øf<'«] m3âM¿Ã_ülð¿íQ{ðÂýf±¾°ñíŸìñqáËý'TÓ5k+Û:í.@ì çÿ ~*|:øãð×Àß~ø¿Eñ÷Ã/‰^Ò|càoxzäÝhþ"ðæ¹iÙÈéÑy°ÊâÎî{û ¤žÇPµµ½·¸·‹äoŒÿðQo‚? ¾6Iû0x¿ÿj_ÚŽÇC³ñGˆ¿gÏٓš/ø5ðoLÖ¡§b·ÅŸŠ ºÖ¢Ô-/4›kË Ò€}ó^#ûK|~ð?ì©û=|lý¥¾%Á¯^xà?ÂïüXñnŸá[+GÅ:®‰àoßø†÷Gð͆©©èºU爵ˆì³4;}WZÑt©uK»TÔõ.ÄÜ_Ûü«ðÏþ gð_Å´_‡¿d?Œß~7þÇŸ´çŽtKÄß þ~Óš€4·øÁ¢è?öÜ¿ ~'üø•ñ—àwÄWE‚¶ê¾ðçÅÏYX;^M ,ºƒÙÿ<ðvgíûûK|6ý‹¼[û4x+öYø«à‚Ÿ¾&øWàÿÄOÚÇÇ:§Ã‹ox®(bÖ¾$Y|9øIáß øçÄ~:»“ƶ¿ï.µŸx¿Ãþ³²ðήøv=&ò÷Ä÷ÚpöiE|ð_öÒø™ñkâ_†þxƒþ Ñûy|Ò8|k×u«»\x—áÝšZ]øc\Ô¬´Í+âL¾Òü=ª\izì•|çðKö„½ø£ðÇÅ_~&ü øÍû"iþÕuËm_@ý¨¦ø3 k‘øgÃþÒ|C¨|E}Cá?Æ/Œ ÓüjöM©k~/ÒµKKÏ x‚}KE±ÒaÓuMOäïÿÁQ<ñ¶ÃUñoì—û)~Øß¶Â="ÿVÓÛã·ÁŸüðoÂ/¾ƒ{s¦ëW¿ üAûM|wýŸ5ozE†£a©ië­|Ð>"i:îŸqk¢Þjs½¤w §´WÈß²ÇíÅû:þØiãÝ3áŠõ;_ˆßµÄðÇÆ‚|3­ü5øéðoÄr‰ÛKø“ð¯ÅöšgŠtuŠwмCï„üM½ÔÞ×õxmnd‹ã?ÚŸþ Iðö;øïðûàGÆÙÃößÒæø©ñ³ÁŸ¾|_ƒà žŸð ž=ñ¶·§hÖ  üTño޼-£êÚfž—ï­j2iÐÝjshZf±}¡éZËéÓ[Ðì-øñ+þ ßûü&ø¥ûð+üeý£ÿd¿ÚßöHýŸa“Oß?hË/Ù£Ã~Ñ-µ[ó¦é×¾)ð/ƒ?iŸüyðlwWfÅŸ‹¾hz´&îØ\é°3H±ýÝâߌ_ |ð«Vøçã?ˆÞ ð¿Á½ÂÇú·ÄýoÄZ^Ÿàk>Ÿ©Š'ñ%ÅÊicE¸Óæ‚êÒùnZÈç·û+LÓ®éWå^‰ÿVÐ|sðöçãŸÂ؃öÿøÍû5Çeu­é¿´‚¾|+Ñ|9â¿ÚÅ%ÊøãÀ_~(ütøwûUxÿ”cQеoþÏšéñ›,ú¾£k4r7Ú²ïíUðöÐø1áÚögø“¢üRøSâïµÃ¦x‡I‹P°º²Ôôپͫx{Ä~Ö¬ôßxWÄÚ=Æ!Õ|9â=+LÖ,KÁ,Ökosm4ÀBQEs>4ñ¯ƒþxKÄž>øƒâ¯øÀÞÑuø·Æ>.Ö´ïø_Ã>Òm¤¼Õ5½]Õî-4Í#JÓ­"–æöþþê [h#yf•I šŠüÂðwüûCøÃá¦ø—û5þÆ·í/ð-–[;ãÇ߇?üà?iI,gÄ_|7ûE|xøñ—âφç÷éšç¿…~4ÓõØ¢FÐfÕ Ý‚Ý}/û*~Ùß³ÇíŸá?ø£à7äÖï|â+Ÿ|Qø}â}]ðů„8²–æ ßüXø]ã ƾñÙ^¤Úömm«Ei=ö‡yªiÊ·Œõ5øÛûOÿÁl~þÈþ|øÏû4þÝ%ÏÅo޾ýžþüZoÙûOÒ~ø·Ç>'ñ%¯‡,îô‰þ0ñ÷…´­gÃöÿk]z{­* ÝRïÃp^jš6ªý’âýÅðV‡Px?â'ÅŸ‚ß²ßíûV~ÏŸ [Ä¿ðšþÑŸ³÷~Ü|&{^ϧø×Tøv~.|qøGãÿŽþð­å†±§â€ø¥á»†Ðµì}[TªeýR¢¾sý“ÿk€ß¶çÀoþÒ_³oެ¾ ü(øƒe<ú>±:~£§j:}Ì–:߆üI¢_G¥áÿxR†};XÑõ"žÞx„ð5Í…ÍåÏÑ”äßÛãª|)ñs~Í|&¸øáöm4x /Žw^0³øRnÛZÓWWOà;ÿ h|:u‰´Ø´kc-Ƶ›mu5­Œ·WPþ"ÿÁ¿à©Ÿµçíÿû@ÁM¾~×? ¿g¿‡>)ý€þ*ü7ø5¡øƒq§êž1»ñgíà‰Òê^"ñ׋õßøH´X5ï‚Öø6ëNðç„'O¾¿}ZßP–æÔiÿÐ ðD¯Ú·áìáÿVÿƒ|7â[øóâŸÅø(.£oð‹à‡Â/ê>øµñ5¼ûB~Ý>1¿ðÿ‡¬š×MÒ|/àÛm{B›Æ_êïá¿‹~ËzÃ[¯‡ÿ ßÕu; LÔµRám4Í"ÂóSÔnÝdtµ°°·’êòáÒ$’WX-â’VXãy)ŒÄå߳ׯ¿ þÒŸ¾þÑžÓüA¤ø'ã÷Áÿ†Ÿü¥ø²×N±ñV›á_Šž Ñ|uáí?ÄÖ:>«¯i~ ³Ò5Û;}f×K×5:ßQŽæWQ¶H¯&ü*ÿƒŒoßÚ[öJýƒÿi=àOì³ñW[ÒüKðîÏÀ>9ý­oõO‡gÁ¯ƒÞøÍªèß îu "Ãþ™þ'ø§âÍߌáð¦ƒmoàM3Eðïˆu{ÝëZŽ’úu÷¢Á'm/‰ŸðÃðM?„ðîÛËþïøeØßáÏü/¯ìßÙ#þ¯ö7ü*‡>ÿ…»öøkŸøZð«¾Ãÿ—ÿ »þßøDþø@á!ÿŠz€?y¯ï¬ô»ÝOQ¹†ËOÓ­./¯¯.dX­í,í!{‹«›‰\…Ž å–F!Q™ˆ×•~Ï_ü+ûJ|øûFxOñ“àŸßþ|kðv—âË]:ÇÅZo…~*x/Eñׇ´ÿXèú®½¤Yø‚ÏH×líõ›]/\Ötë}F;˜lu]FÙ"¼›ðÿþ/ý¾?hÏØ÷öý¢,~þÌß|Imâ߆öþñ§íPú§€4ƒß|7ñ—X¶øM6©møÜ|NñÄ×Ô¼Y¦h¾Ót¿Å hº¶½§x§Tñ$–Ú4š.¥ÒÁ+?m¿‰ö_°oüƒá|_ðM¿Û÷QЭ?doØÿÀQüj°Ó?cóðŽÿIƒàßÃÏ'Å)ï?l?ˆ§áÍÕš[Ëuðæ×ƧÃ.?‚ ×whJûùEp?¾)ü7ø#ð÷Å¿~/øçÂÿ ~øHŸ^ñŽ|i¬ØøÃ>ÒmÙ#{ÍSVÔf‚ÖÝdžX--b2ïo®-¬lâžòæ$øÃðSX¾$xB‹aø(Åï€×ÖPë?ÆÏ |%øKá'ÄÞºD¸ÓüU࿃ß¾<|1ý©xÏâçü'×ÞøƒûB| Ò> üO ü1ð‡ˆükãˆþ7ñ¿Ä.fðG‡´ ^ÿkk:N‹«K¥Iw¦\ê¶vUßö”`µ4Wã×Åø,·ÂÏ„¿5Ú›PýÿnÏ~Çzbé÷÷_µg‡~|,°øvÞÕoM¦™ñÛ῎¾8ø/ö¼øk¨Ç%†§aãû_€3x^ûFÕô­VÏRžÊìJžý¤ÿÁK?g¯‰žømâÙkLø‘ûgꟾé_<àoÙ¿@ðý߉!øy­ê¦¥ø£ÇúÏÅïü"øoðrÛP×´/x{MÓ¾2øûÀæ­¯økÅš>‘¥ßßxGÅèà ôWæ÷ìÏÿBøûF~Ñÿ?cm_Á¿¿f¿Úçáo‡m ¼ðÙñ†<_¦A‡üfÚ½½ŒžºžÚv¾ÖŽ‹ûûþÝŸ³Oí×àÿx«özñÅα©|9ñ5Ͼ.|5ñn­x âÿÁ¯ÙMyk{àߊ¿ ¼Ug¦ø«ÁúÔ7šn«gm-íƒèúÌúNªt WV‡N»–À_ø<‡þQ ÿÙÝüÿÔ;âÕJ¿öƒO…þ ?²í¿Á»¯%¬ÂÑü|½ñµÂõF¼„jrø‚o‡–ŠÝ¢ÓÍÄ–út./®.m g™?¿à‹?ðSÚÇö÷ø“ÿøKûZü:ø ðïǰÏí¤þÏÒYüÇ—&£âm#Uøáˆ7Wz÷Ž|U­Íâ 9|Iðô¿…ïlt? ¸Ò®ê677£[þô×òÿëÿÉúÁÇö”?ˆú¹j þ®h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¾<ý¤?m_þÌ~!Ò<3â‚ÿ¶'ÄûýoïâK;ÏÙ¿ö:ý¢ÿhïAß^éë¥jþ*ø=ð÷žÐ¶¼ÔtÍ;S˜ZYÝü§ÿøÇ¯|ÿ‚W|'ø ñ›öbý¶þüVý’~ üHñ'į |Lýÿh_^x’Ò×â'Ä/[i_dÕ<?üc¬è—öRè~ø|úߎu+»»}6/Fhí˜ó«öjøgàßÿÁçÿðQ?x¯H‡UÔ¾þÇßþ&xK„ŠDÑüe7ÀoØ?á—öºÇ,rš üHñ]­³¡Ž[{‹È®¢‘^ úoÿIÛ[Ïÿ+ý·ežÞ¥³›ög¹³’X£’K[†ý®þYµÅ³º–‚f´ººµib)!·¹¸€±Ši¿!ÿfÿ?~ÁÈ·wüWŰWüþËöRý¡ÿeß|øyã˜?àµî²Þ+ðׄ?cí>{ÝoÁ6¿ ¥ñn™ ê7ÿ¼ig¦Ý®‘sæ]x~]CLÓío¯n4ßѯø8û⿊~9Á4¾<~ÆßeÛãOÆ¿žýœüaàØ>þÆ?´Oü¥é:_Ç¿†ÿõ[Ox÷Cð×…ü+â#Ãõ{}gÀú†¡ÿ ®¬^èÖZ¯‡ìâ¾’êØô»þÁðûÂß à“ðN­Â:zéÖ÷ì}ðân¬ Fd¾ñ§Æ/‡ºňÕ̑Ǟï]ñÇÆ&;H?ÕOø&íYcàŸø&?À_ xÿölýº>xÓö2ý‘¿dÿ…ŸþøÛö"ý¥ü?ãí{ÅÚÃ᦯kðcÁ÷F»ñÆ/]ð~£­?Âë?ÍáÏ^躿‰­ôhµKxëð÷þ‡ñSâì»ÿ ÿ‚ÊüTøíû ÁK<ðóþ ûZéŸ?gïêðOÏÚŽ÷Lo IñÃöñ)ãöÒ¾ßÏàK·Ðþ7xKRšçW‡ûN·±ñÕu›Ó­“På¾ügý¥ÿhßø;öȽðwÃ_…_üIûþÍ^2ð?ÀO‡ß´ÇOüð?à é7ß|âø;ľýž¿iRëÅ~(Ô>(xÛS:0ð&‰­¤xÿWÔ§ñ”>Òü?­~õþÜÿà¥_¶çì‡ûEþɾ)ý“àŸ^Ó>=|(ñgÃë_ÜÁCÿhŸGà¯êš|’x;Çká¦ÿ‚Yè#_›ÀÞ.·Ðü]m£nè©ÜhÑY®±¥´Âú”ÿnoø'oíû=ÿÁQ~ÿÁj`?‡1üsñ}߆OÂÏÛ[öP³ñƒàß|_øk/†m|"ß>k¾"½Ò|=¨xóBðöák™<­jºjëzçÃïO¦É&¥¯Ú7é´?ðPæñƇ—ðSö=ý¸|Wñ£R¶–ÚÇá¯ÅÙ_ãOìÕá ë²,±[7ÄOÿüáÖÞ°»E›Ä:߯|_ÖSIIî|!áoj’iš6¤ùCáÏø)ZÿÁ ÿgOØÛþ õûj|ý°kŸÿf êçÅØ·áE§ÆŸ‚ãÃVÞ<øà/øN|MñÇÁÿ?ˆ<1áOiVwzm÷‚l¡µÑßBšÖwŠì[Úý/ûÁÀ¿³×í»ûJü6ý˜< ûÿÁF~x§âwü&?Ù~=øñû=ø#Àß tøBü⟈W¿ð•x§GøÏâÍGKþÔÓ¼'w£hgðýÿÛ|I¨èútße‚î[ÛoØŸ€þøà_„^ðÏÆˆ ñKⵞן|wo§ÿdi:çŒõ«Û½sÄCÂú;4³èÞ ÒµMJçEð6{s}©i>Ó´=;SÔõMFÚëP¹õºþ[?n?‚?ðWÏØGþ -ûAÿÁGÿàš¿ þþÙß?lOüÐ?iٛŚÄ:O<-âÙ÷ÁŸð¯|¯|?kÞÔ.4á¤ÝÞj?ðŠ_ø²ùµ_xé|EðòkHtYùÏ…à»_ ¿hoŠ¿cÿø+ü×ö—ÿ‚møßÅ_~|Hø9ã_‰ñkÓ|*Õþ5ü øÅà/ŠŸ î ñ—‰¾|:×4=Xø…áMIÔoì4?øjßIÔïü=âiºV¡{®EõWß‹¶—ì«ÿoÿ‚ªø·ÅŸ±Ïíñ;þ õñ£Æ?²‡ˆ¼/ñƒáOƒßƚ׆¾-xsö;ø#à_øƒÁ¿¬¯âø‘ñÀ:½·‡mü#ãß|$ð¯nü!âÿéÚ}Üßð&‡«ÿ8ðüðXßÙÿHý†~ ~Î_´u¥—>-üñgŒjOÚöcøÁû-xGödðoÃψ7‹|sã/AûNøágÅü[ñ„4½cá—ƒtO†~Ölo!øªKâoøsöš½Áü§ÿ‚™|^øÛñ«þ™ÿ‚sþÌ>ðw‚¾&øgövøk¨üWøSðoãÄÿüøGâ?Œü&øÓñjïâF¹ãŸ ü&øëªé¾‹ÿG‚âÐ.l~x¦KÍoáîáØßÑkº§‰´ïé/ǧü«â7‚¼að÷Æ?±/üëYðKã;Ç·²ðlj"·ñ't}2ÿU»±Òµ Ç ³¼Õ4ûË ÏÝžÿ‚•Xø›Âú|7ÿ±?üCß.-­á¿ø ©~Çß`6zóÁÚtëoÚGRÑ´ŸØâïJŽöf··ñ-×í¦iÓÚÆo®’ÁVh òoø!ì#ûKÿÁ7?`O ~É¿µÄO†ÿü_à‰uŸß|(ñ|MàÝáçŒ5?iþ³Ôxf/ÙöüøÃ5´wž)ñŸíÝñàæ¥%ä p#ðGÃx3ÆÚ “4›té5ïŽ4½¸Ó’8íZêòk™ind)ûýÆÏв‡Àø¹ûXøWãÅï‰>*ëڽϟÙ;à—Å/Ú‚÷àýŸ‰ôí_UðGÂohß ¼ªø–ûÂðw„4ïø«â߈4ÂÞ'ø¯ªjzæÿ YøçÃ~°þwÿàÙ¿ŠŸÿcï‚?fÚ[ö#ÿ‚Œü ñ÷ǯÛïÆ?< ­x«öý¥¢øomá/Œø+à ÷Æ¿,üwáŸ[h׃uk¿k^0¼Ñü-á­ ×.ÁiñC¾ðî©©iSj¾°µ²“C[ÅÖ"»ðWÄ?‰^)ÐÖ;}oMÐ5K»+K[ÿÓOÛzÃöåýž¿mø#¯ÄOÙïà¿ÆOÛÃß>~Ú_ ÿlh¿ðŠè>+ñGÃ}{Ã?±ú\ø¿S×|A¬øCáâ|[ñ‡>[üFðéuk+Ÿ‰:ÿ„õßxbÖÒ/u½­ÿ‚€þÐRþÝ?±wíû~Ï_±ïíoñ/ãí+ð«ÅŸ´Í3ã¿ìñëöjøGð‡^ñ…ƒi_>"|`ý£>ü>øoyeðŸR”xûHo„ÚßÄýwVñ„ô˜¼1ctu 3T ¸&µ¤x“FÒ$ºÔm^›‰ü}ãDPxŽöÔ\?þxGãgÂψÿ|¦Ã¬xâ§¼WðóÅÚ]Ä0Ï÷‡·ák]SÅ?·t¿­Æ³âÉ|-µ‰ µðÖ¿´ÿíéñ—â¿Áoü'ý?doÚÿÇ?´ÏÄßkž ð–½ñÃöaøÝû'üø!®ø‹JŸK“Ç¿¾'þÒ¾øK¡ëÚw–êçYƒIø=sñ"ÿÅZ¦—k¥hòmNßT ÊOø3{öŸø‹ñ§þ Ññ3௵ýwOý–þ6Màÿ†ºµü³\KcðëÇž²ñ—ƒ–êây¦ž x¢OͧFDpéº&·¤hÖq¥–›m}üSþRåÿ/ÙÝüÿÔÇöɯÒø&ìðÛþuÿë? Êü@øÑâ;U¸øµñïÄ?>øë⇎>"üQñhð߆uøuð³Àš/ˆþ kž𾓧xÃÚ™¥è×Z‰ðþ{âýZÂÂîÿ\~#ÿÁ%ÿhOþËðQ/ø-ÇŸ¿°Oü ÿmÿ¾ø‘ðĶÿðN_Ú¿Ärj^ðG‹hK›ÏøI4O ü5Õµÿ ßêÚÄÿ j:5­Ö—"µºjPêÓi:…¬VW Ú…RÂò=BÆÊþ(®àŠúÒÞò8/í.4ûèc¹…&H¯l/#†îÊî5p——PÅqm2¼3Æ’£(·@ÆÇüñàÝâWü3þ Óøaâ˜în<ñWö»øð§Ç}µÃ[kÀ¾.~Ã^ñχn\ItïøKÄ:΃ªÙÜE=ž¡¦j7v7Ö÷6w3Á'ôAÿf³´›þ Wÿ(¶šÖÚ[x`OÚúh`–¤†)¬?gψ7V2Ç©D’ÎæÞ ›GU o<Í I#F_æwþ yñSâíEÿ ÿ‚5|Tøû ÁK<ðóþ ýûZê?héÿðOÏÚŽËL_ GñÃöbñÉàÕ~ØOã»´Ðþø·R†çH‡ûQ·¾ðéÒµ›÷ÔnSOýÂÿ‚˜~Õ–?ÿà–´-‡Ã¿Ù³öèñ׋¿lÙoö²ø)ð£á·†b/Ú^ÿâ–ã]sÀ2øW¤ÿÂÜøt~ÃâσZ«¯êöÚž‡­|HÒü;iâo +øƒÂçZ³’×í 7ÿÁºÿu?Áºß³/Ķ·»ñ.£ðûá¯íƒâ›-6yn.§ÔÓÀ¿´§í{¤èq1Ïä›]ÓH²·‰Ô[Ú¤¶Â8â‰Wò›þ _ø‰ûq|Fý›ÿmÚ£á÷Á_Ù£öƒøŸñûö×ñcükøÇû@þØ?>üHÖõýáŸÃ_Øhø[Á±í+cá-&ïâwˆ5mZŸÇÚK›ïk ·‚ô›Újº÷é—üañ#Å ¿àÿ³?ìñÏöUýµþ|nøgiû@Ëâ©~8þÇ?>ü#»Ó|QñÏâoÅM-í>.x·ÀÖ?ämOÃ>=Ótø4][ZÓuËÝnÏVÓ­´‹›x­.ïüûö4ý‘ÿh_ø ÇíQûMøsá§ÀoŠ?µü×ö«ñ}¯ÅŸ j´OøX_¿doˆ–±j6·ñÀÝ*åý‚¿à¨ŸðRýu-áŸì#û0|Ký‘ÿjo~Ðþ øË þÛŸ´OÅYéZ ½Êø‡Áú/‡ÿáÝßM•λ«Úø7ÄK«$Kqà«M6kMKûKKùGþVÿ”Y|ÿ³ÿøYÿ¬ëûUWî·Š?hߊ¿µd:¯Ù;á§íð§Hñ¹ /ÄÏÚã¯À_‰ß³5‡Ã?‡vz½­ïôÿ†_?hŸ |=øÁ㟌ž,Ñ-/|!à;Û_†+ðãÁ—ºÔŸ×¼'c©ë’Zé0j¯á‰ºÖ»£Ã}¨épê:®‡g¦}¾7½X¦ýÚñ7‹<+à½:ÛXñ‰¼?á="óÄðž©âmgNÐtë¯x÷ÅZ7| á›kíRæÖÚxÓÆÞ#ð÷ƒ¼'£E+j>#ñV»£x{G¶¼ÕõK9ú üg»øõãø(g€ÿfO…oìÇûQ|ñz|wý–>>þÔ||ýŸ~,|ð§Àø?e¿Œ~ý¥'ð¦…ñ â?…ô/ühÖ¼añ[ᄼáøRZÏÄ>o x‚ÿÄþ$Ô¼-efÒÙŠ+ùFý¶ÿålÏø#Gýš'í-ÿª‡öÎ¯êæ¿‹¯ÚçãÇÄÁÁÿðO/Û£Áß°wüïų_ì¹ð3âçÂÏŠ¾7Òÿàžµ:\Áâx?ö‘ðvŸ/†ü=¨ü:°ÖüK¢éwÿ|/ªêºm“Á6“=Õ΀5Ë‹chà·ÿþÓÿ~ Á:>üð£¡iÿµ'ÆÈ|ñ+V°–kyo¾x÷¾3½ðs][Ï ÐCâGáIµÀ’KDÑ5}ò7²Ô®b“ú¬øUð×Â?~|=øEà &ÓBð?ÃxcÀѬmáµ´Ó|9áËBÑìá··Há‰a°±Kld“_’ðQ¿ØŸáüsþ רü7·²ø«ð7Å)â¹>!| ñÇ‚¿¾ øãÀ< j>Ôu[ZàÒ®u†üeÿ‚¬|TÕÿc¿ø9ƒþ ñƒá?Ûtmsö´ð‡‚?eZ~šþ^—ñÀ=øá/Ã=5¼Ma€j7>ŸÆˆà½¹šW‚ãá÷ƒeH™t`›Õÿàñ6ãZÿ‚v~ÉÚ=ž§w¢]êßðRÏ:m®³`Ò%ö‘q}ð7öžµƒS²x¦·•nì%•n­Ú9à‘f‰ MëôWÃOØ7ã—üþ ½àø*çíð·^ýž>þÊž ³ðì7û1øòïG›ã‰µ‹[Ïê·>9i^Öµ½áåÊkþ)½Õ¼'ðùu½CĆ]# â«}<1sŒ¾7ÿƒžü}ñ3ö¨ø1ðSö_ý›ÿcø(ÆÏˆ?n¯†ßýˆh½sá|ž øuðßâLJ5I¼#ñ=< ƒ¼usªêthô¼#©ë5Ìv:Ëßjúi¶´[àên?Ù—ö{o üðާðWáw‰4OÙ¶ÛÂð|ƒÅ~𯉦øC?‚ô]?ÃÞÔþ\ëZMäÞ Ö´}KÓìlµ6™¨[Ák pΉ*ÿ%üe«~ÖŸðxgÂßEÞ¡ð·öø&|_ðÁתïáÛkŸ³Þ‹ñyüz–›âA®ZxÃâv‡pš²ù²µçÂÏ ZH ;bÿV³7íGáÚ“Ãz׉<3ð¯ö—øN¾»Ó,u ö™ý›~0þÎ$–ëR°û~ÝIø¹á? Iâ›KÏSÕ¼-&µ£Z_¯ÙŽ¢í$-'â·üãþ ¯ûDh?ðPÙÃþ ;ÿøð®‘ñ+ö’ø`žøûû3êºþ“àáûH|—Añ'…5wðw‹üA'ö‘ñ>ÓÀþ%Ô¼+e¼ƒO½‚ÏÂΗ4ZÒ86^%ñ#h¯Ĉõ+­BêËÄW¯«x[NñTúf³­h6Jº/ü^ßÇò~~Æß·¦£ñ¶æÀ¥§ÁO‰?²wÆ/¶ˆ¥£·Ó¼QûDüPð®‰û/Yèv×ÞXÖ|KáŒ;[}3Ï¿Ð4¿]G—wñüçþ ñCþ cÿãð?ÁŠŸô5ýº>ø“TøíðçãEµµÞ•à] ãˆu=^ÖþXɤiÖšýÁ{?Äü3ðˆ?³fñ–—£ø'á÷Ž5Ë=_Ò5]/Yû»Jñ—üëBÓ4ÝDý‰àž:>£ØYéZF‘¥ÁH?h-?LÒ´Í>Þ;K 7M°´ÿ‚LÃicaci V¶vv±EomopÃFŠ£ã_ø#oü§ö§ý‚þ*ÿÁHþÖ~Ò¬ü7ãÝ7áGì±ñ‹öŒø1ñGÅš\`ºñ·Âß¿³×‚ü}ð‡EðÏŒd5èt¿‰+ø/…&Ô¦Ðîf¾²ÒãׯþÒý›æøÿã=sâWÆ¿zn¯ð¿Ãÿ¡ðN‘ð{ölÖoñ'ˆü)àï xWá¿…,µ½cÄGŠ5­PêÊþ;ÿà^.±ð7ü£ö(´Ô5}7á_í›ûKß©£]ͧKâ| ñÁËM;ÁZ…ô¬ƒL¿×~-Ùø±m¼§ ®x'BÔD‘¾–‰?ö!_ð[_ø%\_ðUÙ{Cðo‚¼ceðËö”øã8¾.þÍ_51vÚ&—ã«3 ß…ðÇíáË1åéþ3Ô5/|yð…üIwg ÛÛ>«á;Ÿ‚¿ 5Xµ‹˜îµ4ý7^°‚U¶ÖnâÜß„ÿðR?hŸ 4­'ö¾ý‰ÿm¿…´Ï‡ô‹m+ƾøMû(ülý¦~x߯Zu¸·Ôõo„Ÿÿg¿|HøB<âØÖûA›â~ßi¶úŒvZÌPÿfß߯ŲoüÛãwí9ÿSñWüöÚøwwð>óÁž·ø?û ~Ë:þ§¡kßþü=OëZ-ÏÅ?޾ÖüCáMÇ:õ·<{{¤|;ѵm]¼)wã{öÖï-õ¿ éRÞ|wÿ¦ÜÜYÿÁ.¿g»Ë;‰­níà ¿ îmn­¥’ ‹kˆ?gÚ¢X.-牒Xf†UY"–6Y#‘UуGõoðçá‚>ü-ð7ÁŸèVZoï‡^ðçÃ_ xpÛZµ…Ÿƒ¼+ YøgGÑÞÖ8"³’Ú-ÆÞÒXVÚ8%@Ëäª1Jþ?¿àêÏ|Uý¶¿e¿~Çß²ïìaÿøÁñCá_í‘¡üBñv¿á?Øoö•¾øR|3àO…üá‰Éððø_Ç6ÚÆ¹ñE—Ú‚®õýSÒìõ[÷Õ-cO]KúH¸ÿ‚…øÛöz°ý¢ßöqý¾dÒ5¿€"øQoû ~Ó7?´4úxb÷Åòÿà”_Æú‚š;44ø›y§ÃðÑüO5–†¾.7W¶¾hà'üaywsÿ­øã ÍÕÍÄ:íïñVÎÂ)ç–X¬màì¿~ö¶qÈÌ–ÖÏ}{zÐB&»¼º¹*f¸•ßúô¯ãOþ =Õ>,þÇ¿³Ž¿c_Úoö=ý»¾ |Uø¡û[øç⯅“?ü“þc׿ÒôéµÝ3öî“GÓµ©l­¤Õ´ý'\ý¤ÿn{ÝkK²Ô^#yi§kžÐ.õK(&ŽÛP¹Ðôyîâš]2ÉàþëùLÿ‚C~ε_ìQûsÿÁbÿj‹¿|}ìïûnÿÁ@~=CáGG𧊵_‹Ñþüvøß®|6øº~Úhïâï|øÏeñ¯Äv>ño€4ÏkQOá¯x¡<;qðÛÄ·5Ò@?Wÿà¸_ü!ñ³þ ÿ ðÇŒôë-BÇÂÿ²¯ÆŒ3^Y%ëiþ/øàíSâ÷„5-ÒBö—°x‡Áz|qÞÃ*¼Ï8xî­ÞkKçÛökÿ‚–~Ñ~ÿƒE~#~ÓéâOIñÓà—‚¼Aû1x?âl·w3ø4í_ã—…>øÇZ~§4Ër5χ> ø•¤ÙéúÛÏqs¯àdÕç77bhŸöãþ w©|}ý¸ÿe×ì_ð«âm¯‹ÿiþ§Äß¿þüDøðgà/Á¿Þ[ZüG×õY¾+xkÁÞ0ø¡â¿xTê~ð¿€þøoÅ×Ëu®M­ø²ÿÃ:6”dÔ=¿À?ðJÙ·ÀÿðKÈà”í««ü ¸ø+­ü)ñˆŠÛi¾*ÖüEâ{«ïø‡â²­·™eeâûŸ‰:•×Ä]>Ü‹½3MÖÊÁ¢¼Òí¼€<ÿÁ¸ÿ|%ðóþÅûEáM&9üiàüHñUØU{íÆ^7ñÿŠõw[Õo6‰ï®Ý¤·Óm%¹ye³Ñ4Í'IŠAg§ZÇæüí¬êÿÿfŸØ+öÞø['…ÿhÙ¿öòð~ð»ÆÖcË»Òôÿ|*ø§ãÍwK»’†ê÷EÕµ¿ƒž‹VѤ¹]?UÓWPÓïàžÞöT?cÁ3µOÚ3þ +ð'Mÿ‚~Ù¾<üQøgð/\ñ…§ìáûc~Ë¿¾'~Ó> øðƒÄ~*ÖüY h>|ðïÄŽŸ >#xZû]¹Ð&Ò¯þë:Jiëeã;û-*]wTòïÛ“öNøËÿåøéû3ü4ñÁo‹³wü/öiøuñ›â—‹>>xOPøSñ—ö©øib4OøáŸÁ}zòËâoÃïAáSÄ:n·ãÏŠ~ðN¶Ðx·XþÀÐ[SЭáÔ;Ÿø8×Çð³àÝOÚoâOö|šOü,/‡ÿ±§Ž?²¦ÿ]¦ÂYûPþÍz÷ö|¿3þòÏíÿf¾hÏÌÝOèÿü'Åžðü#þ óã¯x›Ãþ ðO‚ÿàœ²‡‹|CðWÅŸxVâöh$°Ñ´ÏkÓ¼--ì±Åi¦ZêróZC¸‡ó_ö|ñŸÆßŒ?ðH‡ßðK/~ÈŸµWÂÚªûöQð÷üëâ}ŸÄ€Ÿ´‚~ ð §Ãí;ö|ñ×ÇËoÚvç@›ö{ñW‡`øUý©ã½AðGÄ_xûYñ@¶ðÞ—à{ÈÛí”ì_ðtwü £öæÿ»fÿÖÃýŸkíÿø&O‹<+à/ø$GüçÇ^:ñ7‡üàŸÿÁ8?exÇÆ>,ÖtïxWÂ~ðçìÉàcÄ>&ñ7ˆu‹›=#Aðþ…¤YÞjšÎ³ª^ZéÚ^ks}}s´ʹŸðXïØÛÆŸðPø&í_û&|7½²²ø‰ñ;ÁžÔ¼º•õ¾™§jž4ø_ñÁŸ¼-áËýNî)­tË/kž±ðÕÖ¥r©oa­%Ü×±Â×0þhþÏž3øÛñ‡þ ðûþ eãÙöªøAûU_~Ê>ÿ‚}|O³øðâVðOÁ>´ø}§~Ïž:øùmûNÜè~Ï~*ðì ¿µø‹â¯k>(ÞÒüy}²€><ÿƒ–¾-kŸ?o_ø"wü›[7'ö~ý ¿k¿ƒÞ1øå  ÃOø‹k¨ü|ømð«ÃþÕ“Íò5 +BÑüAã›ë½"úÚâÆëP×4=EÐÝioö? 0Ûý¼QÁ¤0A ,Pà J8¢¤qÆŠ¨ˆŠP¿à¶ŸðJßÁC~ü ø¿û>ø—Að7íµûüH·ø×û1øƒÅ"tð‰õ{ [Ã>%Ô¾xÊîÑãºÓtïë~ð–«¢x|ïì-wC† E¦‘®ëwÐ{߃¿à¦wQxøÛû ÿÁ@þ~Ðu’Úø‡àw„ÿd_Œßt]Gű¬z•¯€hß„~ñGìÅ­xfæõ.[ÃÞ&ñwÆ%öœ°\ê–:-ÅÂZPàÿ>*jÿ²ïü ñ7à?Ã?¶é ?oŸÙÿG×¾3øBÕñá«¿‰ýüGñCCøŠ4ØÌÚëÑMðÇX°:‘[™æ»øãdËëòÉoüûàüPÿ‚…Áº_ |_m%÷ƒ>)þ×ÿ>øÛLŽ_(k>øñ‡öð_Œ´)Ë$‘Ée®xg\Õt‹ûiâšÖîÊöâÖê í¦–ýÿ‚zÁ9>8x»þ +ûDÁfÿn Y|/øåñƒEá¿ìÏû1ÛkúgНÿg?‚6м#§ê¼OáËëß j?¼Sám ÖtO ßêþðÛøÅó>§w©kði>ü©ÿ‚Ø|]ø›ûWÿÁ@¿àŒ>~ÁÿðSOü9ý‚jËÏ‹¿¼KüÓö¨ÑíàðÃüký˜øvÊ gy#Šh®î#Ø×’­}%ÿ?ý«,|mÿÇøõá¯~ÍŸ·GÄ~Ù¿²7íað³á'ÃÿþÄ_´¿ˆ<} ø»_øq­ü4Ò-~3ø>ÓáÉ×~Cªk¾0Ó¯ôgø£gቼGáë-kWð;³—q|‰ÿàüWñOÀßø&—ÀØÛã—ì±ûqüø×ðÂÿ´gŒ ÝÁ7_ ¢ñn§ é×ÿ|g©]¶‘mæZø‚]?LÔ-ll®5/í{ÂÞ!¶ño†<9â»+ {J³ñ6ƒ¤x†ÓKñN«xSÄúm¶µ§ÛêPXxÂúý¥†»á½zÎ+”·Õô jÆËVÑõî4íJÒÚòÚhPz¿”Ïø9¯Á#ýžeý€?à°ÿ tY¯üsÿøý¥ü#cñ: fgñÀo‰úæk¨izÝÏÚ-•tÆñM¿ÃûH¾Ó`ÙøË«4z…´ÆÕ|ÅûiþÌþý²dÏÚ#ö[ñrÛ.ñËá7Œ¼õÓN‘hZþ¯¤Ïÿ—ŠU­ÒYEÏ„¼W‹â{¡nöŸmn5GX²±†çV‚§ü“û3~ÔŸ¿bMÅ?¶Ï‡|Iáoͦhÿ³„|+ã-÷@ñ/¿fÙƒÄ>;ðçÁ¿ Þ麛µúC?‰<]ñGÅš6¥ö}:×_ðoˆü©YYÏ`,uMCÁ¿àðO_Ú+örÿ‚¬þÙ 5 kZ?ü—ágǽ{öÿý—oîôíV/ ë¿´7íKðÇPøawáo jº„/¦êÚ/ÁŸë´MsÃöWw7¾פøoâmIa›XÑ®î@?xµoÙ§à'…b}cö@×vøOöcÐÿf Wöuñ’x|$tö .~ë—W>0Y¬‡‡f°ð:^]]ø©®-_Lž9u™."xZQø]ÿ‘øÅðOàwÀ;ÿÙ_þ¹û,þÓ?¶Wìåðïâo®¼Kû_þÐß¼ðOàŸ‹~"júÅ¥Ÿ‰í¼ñW𵯊~"É¥Ziöi'ü*ïÙÞYX[iÓÜjsêÚÌ÷—¿ªŸðWïÙWãí·ÿÙý«ÿeÏ€&Ó¼)ñsâÏ€ô};Âú¾£.‘¥jÏáÿøSÆ:ß‚uV(¦u—ÄxwXø}s}r†ÂÖ/¼Ú“G§¥Ì‹âðK/‰0~ΟðOÙköqø§û1þÒ¿~/~Ï|ð“âWÃ8?fÏ‹þ5Òµˆ¾ ÑãÒ<_ã üIøYà¯| ñŽ•ñOÅ6š¯Ä M{Añåõ¨“ÅGþ­;P¡?¿à˜z·Åm;þ½ÿ‚­øgâO‚~üñŠ¿b¯x÷⿃ßuߊÿ  ñ˜Ó?aKý/ÄV><ñ'‚ϊ5­JËÇÞ"ñµ{}ðÃÃM§x—Æž*Ò­¤×í`‡ÄºÇПðyü¢7Aÿ³»ø3ÿ¨wŪó?|/ý±cÏø8Sö†ÿ‚Šüdýÿh‰¿ ¿nßÙ#Xøyàý›~]|`—á_Œ´ sàV‡ð×áÆíOÂwÚ‡¼âmGÀ³—‡eñWµ½^Ëá.“âψ[[xóQð燼Câ{/ÿ‚úèÿ´ÿÅ/ø$ïìÏÿÝпg/Ûßö®ý²þ IûÏñßâ—?e?Ú[ãÃ_ø£À¿³…ͷįEûFEà½c¿õ]cÆ%Ž=sRѼMâ}zO\ëvž#k}_LÖͰöé_Ê7ü¯ÿ'éÿÿÚPþ êåý¨+÷?Âß·ïÃÿ|ñ/íÿ ÿûuxwE𞽡xoVøkâŸØköœÒ>=\jZìZD‹7†¾ Ÿ‡?ñ¾ƒ¤¾±ï‹|¤x‡Âzd¶»K®5¾—w<Î7üÃâ§Ä€ß·OüƒWøÕûÿÁF~xgþ û}ÏñSö|ñŸŒ`ïÚ[Lðoü"^>øÃñ–ëK½ø›âUðú_»m+Oøá½WÅ×'Òü-áÍ(êwúŸˆ!·Ò¯ž 쎊( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š*–¥©iÚ6«ê÷öZV“¥Y]jZ¦©©]Ac§iºuŒ]^ßßÞÝIµ•´RÜ]]\KðG$²È‘£0»E`ø[Å>ñφ<9ãoøAñƒßVÐ3êúÏÁÕðÇÃMcÄŸ¾üÒ4_~Ó_ | ¨èZ·ÃÏÙûàÿÂy~"ÙAáêzLIñSÄ9·{›}7]6‰®Ú Aÿ­züÿƒ£¿å·7ýÛ7þ¶ìû@ÿÁ'å_ðM?û0ØßÿY×áÍ|‘ÿüÓ¿i¿ØAý›u}~÷ºOí ûh~Á_õOi¶pj:†ô·Âo^ëö}Ô°[_^èöÚüº­ÄðÁu=´pK,q»:ýoÿÿ”YÁ4ÿìÀ?cýg_‡5ü§à'ÇÚ#à?ï ~ÎÍਾ)ø#ö¹ý~9h÷&»OéºÀÚWá·Å}wU×­4ë« SY°Òô ]ßOáý'PÓõ}z(IÒï­/®àž0æãàßüåiá]VÃÃÿÿàª_´ßÄ¿€º{[Û§Á‡> ¼ø5·kyö˜¼=u®jŸ~-hQé’ÆÁrºW€´¹A\X>Ÿ;Àö¿×ìéû9üý“> øö~ýž¾è ¾|8ÒF𯄴¥òmâÞ÷ºŽ¥u-Ƨ®øƒZ¾–ãUñˆõ«Ëýo_Õîï5]^þòúêyßá?ðNo‰'øQâ}oá_íÓûlø[öʵÐnõŸ|y¹ý£|}Û߈ú}­Åþiâ¿ÙÓQö8o†ú¾¿äYk¾Ó~Zê0ørF³´×~ÕÞKáŸð@¿ø*Þ½ÿUýµoüXðöáÚ_à/ŒÇÂ?º&•i6—¦ëÜZU¶¥áÿˆZn…83xnÛÆ6Ú6Ú—‡¤‘—Iñg‡'üuÿ‚~~Á°F¿û8øsãGŒ¾ø||SñW‰añî‡{áí?þ$‹@ñ6©©~Ôß -üQ«ØøkÆ>—Pñ>‡à h:íÕÀ°ÒìšÞ{;¦á§?àðoúG_ü#ÿ }Cÿ£ª€?¬Z+ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨¯åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú((ú†¢¿—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè  êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWÇ´/ü_þcý˜~=þÉ?³oÅoÙ_þ _cñ?öÙñWŽ<ð&ËFõ­#SÖþCàÙüIˆõ‹oÚmü9o ~;ðù´¸¼WK³-È@>ÊùþÓh¯åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú((ú†¢¿—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè  êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚€?¨j+ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨¯å?Ç_´ïü“ðëÁ1øƒâoÙþ #†ü á_øËÄZkßnî¢Ñ<1¤^kz¬–Ö‘þÔ"K«„°±¸hmЇš@±© ¼3ö5ÿ‚“ÁÏß·ìÝðãö­ýŸe/ø%>«ð‡â§ü%ÿðˆßøšž×'ÿ„Çž(øo¯ý·C½ý¨žæÇÊñ?ƒõ¨m¼Ö?i´ŽÞñ1Âý‘Ñ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_Å¿Œÿàª?ðs?€¿mƒÿ°7ˆeoø%t_´?Ç?†)ø»à&×þ}×…î¼àõñ;kW—Šö£ZeücÂ:ÏÙì&F–ã˃azcì/ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¼sö†ý¸àêOÙƒàoÅÚ#â¿ì›ÿœ±økðcÀ¾!ø‹ã‹ÍSøÓ­jÖÞðÅ„º–«6Ÿ¤Û~Ô+>£v–°¹†Ò&Là"M]4Wò-û<þÜ?ðu'í?ð7áGíð£öMÿ‚N_|5øÏà_|Eð=泩üiÑukŸ xžÂ-KJ›QÒnjŸN»{YÍi+!rQ‰"½þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè ¯|ÿQÿƒ™ü{ûhü`ý¼=û+Á+¥ý¡þ|0ð·Åßi7_ð»í|/kàÏ/†E¸Ó|Pÿµ²Ôïä.ѾÑa ,¶þdûÉò ÚEü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ün~Ù_ðRoø9ûöý›¾#þÕ¿´ì¥ÿ§Ò¾ü+ÿ„Cþëÿ Ïñ³ÄúäðœxóÂÿ ô±hv_µ\ßy¾'ñ†‹ Ï”ÃìÖ’\^>c·p}ÏÀ¿´ïü“ñÁøƒáŸÙþ #7†üwá_xËÃó]ëßm.¥ÑÏý½g¤}³ö£í&/´ÅömZßl9mŠ1@Úmü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔWòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPPõ E/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA@Ô5ü[þÒ?ðUø9ŸöRø¯û*üø½û+Á+¬”þì*ñoФּMíF,´[ˆ4krYÛÜ£=äñÛÁ p„i´Wòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ_Êæ¹ûAÁÞšJ[µ‡ì3ÿ¦ñ9¤YcÐü]ãËw³«ÜŸþØ~FY‹2Æ-éÁüåˆËó¿ðÓŸðx7ý#¯þ ‘ÿ…¾¡ÿÑÕ@Ö-üh| ÿƒœ¿hï‡r|eø?û~~Ç?âý¦>üsñ¿ÂoÙ~Ï^;ºð¯Ãí-¼'cáå“Lþ(Öþ5\jÚÅž¯y«Çy®é~6—DÔ-³ÅŽŸnÐOqxPö_EPEPEPEP_€?ðtwü £öæÿ»fÿÖÃýŸk÷ú¿¿loø"ƃûvø;Ç_ ¿hø(¿ü—_ø/ãÿÿÂSªüÐ<{û)øcáå°´ñ<>-ðï‡!·Ó?dñ&­áŸkzTþÓüYâ_]ZË¢é7÷×ú†¯h5'ú«þ ;ÿ(²ÿ‚iÿÙ€~Æÿúοkó×þ ?ñ_þ á?°'Â/ø%5ßÃ]/‹ž øµ¨|_Õ>"Áð‰t}a~/ÃÍVËÁúÆ¡ñp=Âé>ÕüqâË­àí½ÇÆMgBð‡‹u¿¬Z_ƒµY—ì/Ùþ ‹{ûÛ|!ð·€ÿà ÿðP?ˆþ h¶>ðÀ‹þ0ý˜¼SðÊèÞ“Ã^ðŽ«u¡þÊžø–<;á»bú †‹ñE:|šN›n’¶›ú}ÇÜÿ¾ü.ý£¾Þü4ø·áÙµï ÜßéÚÞw¥kºÿ„<]áh³ƾñçƒõ= Æ¿¼sáË¢×^ñŸƒ5íÄš<Ï)°Ô¡IçI@:ÿˆ~?ðŸøÛâ‡Ä rÃÃ>øuá/xçÆ^#Õ.a³Ót/ xSH»×5í^úêâH ·´Ó´»«¹åšXãHâfgP ¯ãŸþ ÏøñFø%ûv~Ø%Ñuøö±øÕàm+ᆤþÒÓ¾ ÉñVÿÄž"Ód)Û´©5ï‹òøIu8Ꭰ_ÁšÍ¼`5”ªŸ¹ÿ?àŽß>>é±øöšý²¿à ´—Àoí]?SÔ?f߉Ÿ<£ü$ñ<:Uå¾£§è¾;¿øIð“áÅψº ¶¡gg~šo¾*x•~ßim|d7pG2þ¨xÀ¾ øcàÏ |:øuámÁðFƒ¥ø_Áþð¾—i¢øwÃ^Ñm"°Òt]I°Š =?NÓìàŠÞÖÖÞ$Ž(нIꨢŠ(¢ŠþJ?àÍ/ùFÇû?ÿŒÿú¦?gþµëùiÿƒF<1¦øWþ ³ñÆÃLk–‚OÛÿö‰Ün¥Ydÿ‰W…>øn× ‘ÄtíÈËò÷yFÕ‘cOêZ€ (¢€ (¢€ (¢€ þ|?à«ÿ³Çï?ðT_ø çÆ… üWã†_³‡ÆÿÚWÄ_üi¡ÚÃ>‰ðËDñ]‡ìøžÔ¼O<·=­¶°þñY4QÎÒ6•t ‚«»ú¢€ (¢€ (¢€ (¢€ (¢€1þÌ?ðGïÙàoÇÿ‡ž"øSñsÀÿð¿á-ð‹-£´×ôøIj^/Ð~ßo ÓÇö§†|A£kV»e}öZ³¬ÅWö‚Š(¢Š(¢Š(¢Š(¢ŠþhÙŸã׊?àâ¿ø'ÿíIáÿ…ž+Õ¿g¿†±Æ¿ø÷âÍ¥œOá xËÄ|g/‡µ[Ó:Ë£¨{GѤ¬ulºïãú¢Š(¢Š(¢Š(¢Š+óãþ ÅðÃÇÿàš?·7Â_…^Õ|sñ#â'ìÍñ_Â^ð~…O¬ø—Ěυ¯¬ô­L†I"Ioo®dH-ãi4Œášý¢€?>?à“¿ <ð[þ £û ü%ø«á]WÀß>þÌß <%ãë±$φ¼I£xZÆÏUѵ8c’TŠöÆæ7‚â5‘ÂȤn8¯Ðz( Š( Š( Š( ¿˜¯ÙgþV§ÿ‚œÿÙ€~Ïú+à NµñG¿`¿¿nðP­çÇ-ñïãß |ñÍ­þ¿aqà¼#àµð¢èòh^DƒPÓõvÒ>Ù{>½} ù»ÙiœžPÚôQEQEQEQE~/ÿÁÂß>1þÓßðGïÚóàoÀ‡ž"ø­ñsÇð ¿áð„í£»×õïøF¿j‚¾/×¾Áo4ÐG'ö_†|?¬ëW[¥M–ZuËÌ¡[ôËöfðî·áÙ¿ö}ðŸ‰tÛÄ~ø!ð£Ã¾ Ò/VïJÖô_èn«¦Ý*3¢ÜØßÛOk:«²‰b`¬ÃûuQEQEQEQEüøÁ(?f/߿ਿð^?Œ>ø¯Àÿ ¿hÿÿ³Wˆ¾xÓ\µ† ân‰áKÚ jZ\rM©éÿ¾7|3ø§{§C€Ë-ý§¼O®ÏgBêÔÈ÷ƨ.`,@š=ßFWó ûaÁ©ðNVgÆ?²t>5ý‚¾>è­k¨øCâÁø£Sð|:Ö›i-­ŒšÏÃÿøŠátø]L=ïí{À:ÇÛm£Õ&¼¿žmNSªÿ‚ÿÁAÿi|Cý¢?à“ÿðQ릟öôýˆ¦ÚüCÔµY/.ÿhÏ‚7Wv‘èßàºÔ’ÓSñ%þ—k­øWT_½”þ-ð7Ž<¬êš}·‰`ñD÷ÒQ@Q@>ð@¿Ù‹ã÷ìÕÿEÿ…ñð¯Å ÿápÁL¾=üZøeÿ E¬6¿ðš|6ñ'ö_öŒtO&â?EÕ<™~É;ùnû1ŒWôEQEQEQEQE1_ð]ùHÏü¯ÿgÿ¯ÿégÁJþkâÚ‡öøû\ü`ý¾7|V¹ñÌ3ý‰¾+Ýüdø7…5û E¸ñuäž–hügcw¢j³ëš@o é{,¬¯4y” nÏš¾_ÚôQEQEQEWñ7N½ÕþüAÒtËi/5-SÁ,Ó´û8@3]^Þè7öÖ–Ñ@2O<±Ä€ 0ÍvôPá?ü}û9üqý•?à“Ÿ> ~Ñ_ üMð‹â¯‡üoñ»QÖ¼ âûX¬õÝ6ËÄüS¬è·76ðÏqG©iW–·ÖÄJKÛϹÅ~ìQEQEQEQEüø~×ÿ³ÇïÁÂ?ðIÚ{Â_ üW¯üø'ðCö¬ðïÅŠº}¬2xSÀšßŒ¾ ümм-¦ë×Mp“ÛÜëšÇˆ´M>ÁRÞU–ãQ·BÊ þƒè Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠñÿÚã¯ÃoÙ‹àÅ_Ú㸾øcðoÀÞ"øƒãM[lrÜÅ¢øsOšþ{M2ÖY­Æ£®j’E• iÊ—:Ƶ{a¥Únº¼…X߯¿Ž_ÿg†Þ#øÁñãâG„>ü1ð•²Ýx‡ÆÞ7Öm4= MIGMutên/nå" >Ñ./ï®`³¶žfT?Èçìùk®ÁÅßðUöÏñ?„üEügþ ɪßhß³.‹ã .òßôïím«Å{?'ðæ¹¦[%æ”·6:7‰þÎ_ |)ðcàWÃÏ ü,øYà{Ó|+àiéZk$òÝ\mâËÏw{y=Å]Ëq¨jW×·÷7sË3€zQ@%_ðpç€üWû~Ò°Ïüsànƒ4ÚßìÉñ Bøû]éš@XåñßìíñþïCÓT¶Uµ³žh“ÄÞ2øu³ª]\Ü[ëž;øg46í„íÓúÕ¯ý¨?g‡¿µ¯ìïñŸögø­g%çÃïßüMðïÄ¿f}¿Oµñ5¥®½£É2I¾½á½DÙøƒ@»tqe­i–aXÂôÿø×Ÿ¼àÿˆÞ×l›-cí¿ ÁÚß²ÿ†¼Qá'öÃýŠÿmߨϾ<¶{ßüFøð͵¿ kšu¼éî¬Ö1.â«Ý*ÓÍ„KwàøéÖy ‹)#€XÔWðÛâ_ÃÏŒžð¿Å„Þ8ð§ÄŸ‡6Ò ×Ò´û=v?XjV¾ ð€á×$ׯ.´+‹Yõµ),WLš;y-VæUŸòãþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWϵwí7ð«ö4ý>/~Óß5ŸìO†¿¼©øÃÄ2Äa:Ž©%ª­¾á ‰`Š÷ÄÞ.×ntß xgOy¡[ý{VÓíh–f•>„¯ã'öüñ¦µÿýÿ‚¡x3þ Oð+ÄWòþÀ°ï‹l¾+ÿÁB¾(xcS6Zoüy¡jhöÿ ô^q§6‹~º§€tü¯,øÎëâ7Ÿ¬iß ´JPžgø&wü3þ ÕàŸˆðTÚ{öÚøßû êÿ¶uø'¿Á…>#ñ&™á„þÐïo4ÿx§ÄzDzEÌÕ­’òÒÎÿÂO øëÆisqñFÿÄ·úí–‰}ÏüMø}ÿÿÁOtÙïþûûqþÍ~(øMð£Áÿ4«¯ÚëöôÑ!ûG¾;|ø\`×<9ru;+¼­x‚åì¢Öt™¼3«Ã7Ž~!ŸOâ xo x²Vþðü9áÍÁþÐ|%á]Nð÷†<-¢é~ðæ£ÚCa¤èz‰c™£èú]ºGoe§iš}­½••¤Û[A1"¢(4Æ|9ø{àß„Ÿ¼ ð¯áÞƒeáo|6ð‡‡<àŸ iÊÉaáÿ øKG³Ð|=£Y‡g“ìÚn“aig‘ÞVHCHîå˜ötQ@Q@Q@xí û6|ý¬¾øà—í#ð£ÁŸþø®Ù Ö"økã?ƒjOۇ¿´WÄ}'âÿÇoþØŸô¯‹_t/ižѼ}ãË4ðì>"ñN™áJд ËWÔ[¸4Í;GÓ--A6p"„{7íÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@|›û_þÝ_²GìðöÃâí{ñ˼¬j7:FƒuâÖumoÄÚ­Œº•æáOxSJñŒ¼U{gc¸»¶ðî©Ël²Û,Ê’^Z$ßRêZ–£i×ú¾¯e¥i:U•Ö¥ªjš•Ô:v›§XÁ%ÕíýýíÔ‘[YÙYÛE-ÅÕÕıÁorK,‰3âûö"øO¦ÿÁÄßðR_Ž_ðQßÚÂqøûþ ½û"ø‹[ýŸa¯€Þ9±¼½øyñ?ÄvÝë¼Yá R&Ð|Amu¦ÍgãéZ…ÄZ¶¹âoxXºÖô…wZeèÿÛþ;ñíï.ûÿÁ þ|Wø«ûE|´ŸÂZ¯í%®xSZð†¾øcV– MsÅÚ›©i—~!·¿ÓôÖîu/ˆ^%²ð¦‘ðæ¬õÍ?ø‚K{-'úÿ‚KÁ2>Á*¿do ~Ï>žÓÅ^>Ôæÿ„ÏãÏÅÃbm5_Šßu;x“VÖfi.¬¼/¡@‘xsÀÚ “0Ò¼;aÅë]øUñ±ªþŠxSÁ¾ð&‘‡üáO ø7@ƒÁ¡øSCÒü;¤BâmƒÅ¦é¶vQ°·¶·· )ÛÃ>\H«ÒPEPEPEPEPEPYZö…¢ø£CÖ|3âM'N×¼;â-+Qеý X³·ÔtkEÕìæÓõ]'TÓîã–ÖûNÔln'³½³¹ŠK{«i¥‚hÞ7e:´Pñ“û.êÏü½ÿ`×b¦§ü×þ eñ ø}ðßá÷‡õxׯ¾*ÔmôŸøoÃúM»\ßêzýË$Pà I„Aºk‰š+kh¦¹š(Ÿó«þ ÿßðïüöø—û9ÈúF‘ñSNkˆß³ïµtd‡Á¿¼)oxÞžæúg»Óô?XÞj¾ñEÕ¬3ZøÄ—ú…½Õõ…”uü®|#ðoü»þ ÓâOÙÏþ ýûz|!øŸû+~È¿±XZ~Þ~<Õ,|G¡x“ö³ø­ðÎþ ?ú,zÞ§§ZØÝø“[ÐF¸Hü-©k¾°¿Ö<_ñ¹õ]uæø[ámöÇà·üUÿŽøÙñ›ÂŸl|yñƒáì~8ñD¾ ð¿ÅŠ¿ Âõ |Íim§[Þø¥|A©êž´ÕgÔ4ÔMSÅ^Ðô½=JÎïÅ—ž²w¹ú@¯Ì¿Ú¯þ ûþÕ±4?°–·ðgÁßþøCÂ÷š'ÀûÏxoF±ñÀ rIEý§‹þê6³Üiš¼šÌqê^)In/,º•ŸŒ[V‹V¾i/¿àÜÿÚãß…fý´?à“_µ×5üvÿ‚m|U¶ð·#ñ¾£ðâ Ùë¶·šoƒfñмPú}—‰X·ºÖbµ{5¸ŸGÓÚTœÅˆôºŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ùÿ‚Ž~Úµ_ü›ö½ñ·ü›þ Qã‹O‡þøqitoÏÛbÂïSmÁØOui¨|𮽡Dnì¦å™ð¶¸þ»ÿ„—Æ>1‡Tð•¥ß‡¼àïˆzƪ­ÿ«ÿ‚’kß¶§Štßø"üÏÄ–ÿiÚnïþÚsâï‚5¬ü5ýŸ~4‰Ä#Ä~0ÑcÔ,ïUÑåk/ˆ÷vÞGáŸÏ©x:8o> xÏDÓ4Ïèçö$ý‘þ~Â_²§Á/Ù;ắƒ> ø*ÇÃiªµšXÞø»Ä“É6­ã_k©=ÒC®xóÆ޹âíbîf·¶¿Ö'µ³e³‚Þ4ù«þ ‡ÿ”ý’à”ß &ðìñ᛽GÇ^*Ó48>.|lñd¢÷âÅ[FK‰æýÕŽŸá¿Á{}}>‘áÁi¥éð˽“XÔà}^ãôö€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ þP¾=ý?àëoÙ/â…´ßÙ> ÿ‚’þÆþ0øã‹ÙLvÖº‡Äo†Vz¥î§h[Û›†økðÃö;Ûa¹Õ–%—쎰7õ{_ÊŸüÚ—<_ÿoýº,âŽ/øeÿø)ÃÝ\Ծȗ oá?‰o£xÇÄwγAq‹ªØü—J¾Û=´M%õ¼+{gy=›¸õYEPEPEPEPEPEPEPEPEPEPEPEPEPEPEüÇkßðo¿íY¬ëšÎ¯oÿÿÁZtx5]WQÔ Ò4ߎÿáÓ´¨o¯&ºM°…>+Æ‘YX¤«kk",pEª(ä?öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯ø‹ð«\øûR~Ü?|MñSÇ|Að×öÄø¿àígãÅ RóZø‰ñ'PÐÓöW>1ñ¦­¨_jwºˆµÉ"kÝRîëP¼žk™]丕‰bPúãÑEQEQEQEQEQEQEQEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE~BÿÁ[ÿà­žÿ‚`x᎗¥|6ñíûV~ÑÞ+_þÌŸ³7‚žî?|Iñ Ôt].òûQ¼ÓôÍnÿKÐloüC¢i‘éÚ.±¯ø—ĺ֑ èEʾ±ªh‘>#ÿƒ†?੟ ´íoÂ_àÞÚþËâî§dWá™ð4ßü{ðó^Õïà±m6ÏSÕ<7ðSûTšwÚ¤ºÕtÏ ëZ®¯,©k¢\[h7rê6`uÁ}?া;ý> øöOý‘WQñWüSöåÕSáGìåá? …¼ñWô~ú/k¿ü…;4ËÛ›åð÷ÃÛÍJKKgñ}ÅωWíÚ7ÃÿÃoõ§üëþ àø%ìwáOZ4Ö&ø·â‰£øûE|QŠÛß¾,êöP.©äÞNd¿ xJ_ x2ÊâTUÓ­.5Éí ×µÐ>Úúçü"úö›â›ÝCÆþ7ñ·Ù?§š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ù×ÿƒª>·Äßø"Ÿí+ª[[ý«SøGâ¿‚?´è„1];â×…<¯\,“Ë Eö x×ÄZ„…KÍ46’ZÁ³ÜF‡ú(¯Ï?ø+_µøÕÿÂý¿~-´——úïì‘ñÚ÷@µˆÌxcáî»âÏÆE¼SÎñ·Št=ÎŽ&–XwÇR; GþÊ?ÇÙoökøÖ×+zß>|ø¤o‘Òìü@øwáÏ”xç¹Ös«yªÉspŒžU"F÷Úüaÿƒxþ%§Åø"÷ìâe¸k–Ñþê? $gA‘?Á¿ˆ>3øH-Ùq°Gऎd&{q Ç™:Ì'“öz€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Šç|Yâÿ ø@¿ñgŽ|Qáßx[Jû/ö§‰|Y­é¾Ð4ß·^Ûi¶_oÖu‹›=:Ïíšå¥…¯Ú.cûEíÕµ¬;çž(Ûùîÿ‚èÁb¾þͱ¯‹þþÊÿ< ñö×ýªmÀ¯ÙëáßÁ¿h¼g¤ê_.Â:§ÄYôß ÞëSiM Øj7¶Þöí'‰þ$ÏáíM±Ôm-üC>’ñÏü'N‡þ ÁÿÄý¶ÿàª~&Š?~ϰÕìß±wìL×3-öuâM&ßV±ñ_Äm»µ–7Ñ5ŸøâÒG–ÎâÞ?>ž;v½ÑƒØÿ_5ù“ÿyýƒí¿àœ?ðO/Ùçö`¼´²‡â‹á–ñ§ÆËë)íoSøÓãù¿á%ñúNÈ›]ZËÃz…Ü>Ð5(I[¯ øSBmÒ2?éµQEQEQEQEQEQEQEQEQEQE‡âoé>/ð߈|'¯[-î‡âVðîµfá.ônÂãMÔmœH®…g³¹š&Ž„9 ¬2åü´Á¦>#¿ðçìûB~Éž(º‘¼wûþÛ¿>ëÖ3#Àöö2hzÔ7‹h÷wfÆ;ß¿-þȬ©ÆrKO+Ëq/õ/_Êüᔿàãÿø,_ì ÷bð¯íkðïá‡íÃà[k–Ù©¯Eu§]øòM1âŠ-FïÅÿ~ È­ šmWOðŠÞÞ\ÄœFŸÕ…QEQEQEQEQEQEQEQEQEQEQEQEQEQE”÷íÿ)ÿ‚ÙÿþÐúY¡ÑGíÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPùðÿÁ¿à_ðOŸø)Wì·ñ“öŠý§4O‹Z‡Ä‹OÛãߨn<ñ2óÂZ0ð߆_š–—iPiwˆ×«uâ-HÏw憙(¾P'úðÿ‚pÁ'?doø%n‡ñ[Ãß²~™ñMÓ~2ê¾Ö|j¾=ñµÇŒæ–÷Á–z펈Úl·6FÂ5ƒÄZˆºD‚áŒ,J˜¾oËø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP\—|yàß…¾ñwÄŸˆž%Ò<à/øoZñ‡Œü[â È´ýÃ~ðîŸqªëzÞ«{1ÛXiºu­ÅÝ̬NØ¢m¡› z·tIcŽ5gwv ˆŠ 3»1 ªª f$$€+øÂý¸¿h¯‹?ðpÏíq¨ÿÁ)?a?j~ÿ‚||ñF—¬ÿÁAkýn£á‰CÃÚÝî—ð»á¾³b·:N¯¦gI»†[çƒâ'‹´¹0ðî“­5½åÐMOKѬîíž]ö’[´Py_¥?¾ ü1ý›þ|:øðcÂzwþü*ð¦•àßø_Km¶™¢é0¢óelÍ{¨ÞÌfÔuVíå¿Ö5k»ÝWQžâúòây=V€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?’ø.ãkßðO/ø)üSþ g é—ºÂßj­ûþØúu¤Ó›„<¹ñmÞ…âi­-. ší–“㉷Úl“ZÚÀÞ.ðÃ÷U‘5-:ÖßúÂÐuÝÅâo êÚv½áßiZv» kº=å¾£¤ëZ.¯g¡¥jÚ^¡i$¶·Úv£cqå•å´²[Ý[MðÈñº±ù›öæý“üûrþÈ¿´ìŸñc |løo¯xN×R¸Í>ñg’ºŸ€ümh¾\ÃûGÀþ7Óü?âÝ7t5îOmsKo/ãÇü ûMø¿â÷ü›þ¯âóÜÚüxÿ‚{üUñìƒñDÔ™ÛWÓ´Ý™~Gr§tIeáý{¯…Úz!ŽAÿ ÊçÍŽ{èÖŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿˜í{þ ÿ‚?ø\Ö|C©øcö„mK^ÕugPh~8j0Â׺¥ä××mCB"(ÌóÈR0HE!A WôãE‘ÇÄ_€þý—jOÛ‡öuøU­mðßà·í‰ñáÏ‚-õÝIõf ø]<;¦éQêz¬‘Bú…êÚ‚{¶Š6™òå8¢½›öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè õa¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ùÿ‚âÁC¾?x·â·€¿à‹¿ðM ›»ÏÛ—ö ´²OŒ_4K›¨-ÿe¯ͪ^ë:Þ«®iÑ\Ïáx“Âòɬ_øÊ}OÁåmO@´>4ñ§ÃýKOùÏþ Qûtü|ÿ‚¼þÔÚ÷üGþ Wã6ðç‚ty®aÿ‚ƒ~ÚZ=ä×> ðwÃ{9áÒ|gð¿Âš¦¸Ô•¯ngðÖ½‘¬i·?üS|6µÕ4ÏEñÄ5ý%þÃ?°Çìïÿóýž|û8~Î °ðÏ…<-¦Y¦½â-mÆ?|T°¬øûâ» 1\kþ(ׯ^âîif+a¤[K…áë-'úv™¥Yù§ü'þ ·ðþ sû.xOöqø%§Ç¨G®½ñoâ…í„Vž)øÅñ6{ kmwÆÚðY®ÞÆÉÞ°øWÂñÞÝØøKÃXèö÷7÷QßêÚ—èeQEQEQEQEQEQEQEQEQEQEQEQEQEü’|5žoø&OüçñkáÍô_ØŸ³·üsáU—Ä¿ÜG+A¢Ú~Ó_ Õµ-jÖüïXeÖµ[|K¹(ÖÍ,—ÿ<%o á2ÝÆßÖÝ6ðsïìÓã~þýµ~[ÉoûEÿÁ3þ3xWö«ø}¯XAu.±aàTÒâl6’YÍmqm§hòhþ ø§¯\Esm"iŸ äÙÕF#mGGº0´‘l‘¾• Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¦»¤hòHëq«;»°TDPYÙˆUUPK1 $_ˆ´wüÿúø#ã½cà×­Oâ÷íËñ÷EóâÔ> ~Ã? µŸÚÄZuÜWØ‹mSÅDºoÛy"¿v´Ô¬¬|c©ëšT–óÅy£-ÛYÚ^~ßQ_Ìf£ÿÆÿ‚k‚-Cá7üŸûmøƒÃó3•¹ø³ñ6?Þ#<³Z<¾Ôþx¶ú¤2Ý%ݼ×Q›‚i&žyಿ¦Á{?l¯-¾¡ûRÁ?à¤? ü9Ù5½àŽ–?i‹]ÐÍv^öå­< ðºÎ;hlá·žyuCKŠ™ÞÉäm'¿þ™(¯Í?اþ íûþßZ¥÷ƒ~üq°ƒãŠ×0ø“öø¥£êÿ ¾:èV"gÔm¥øsã‹]'TñéqCæêÚ‚ßÅ6•æG£©[]K(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(øµÿƒnÿà£ß°_ì«û|iøaûHþ×?>üC›öáý¢üQƒ>$üFðÿ…|E'‡uh¼ i¦kI¦jwp\¶}s¦j[]ò¥–Î቉±ýYþζ_ì¥û`Øø¯Sý–ÿh?…tÿÝé6>1¼øYã#Åöþ¼×a¾¸Ñ­µ™t›‹…±›SƒLÔ%³Žb­:YÜ2#l)Ÿðmßü‡ö ýª¿b?ÿiÙà'ÆïˆpþÜ?´_…âñŸÄŸ‡>ñWˆ£ðî“®ôÍ5=NÒ{•Ó¬nu=B{kPþTRÞ\:¨2¶«?ÙÃö4ý”¿cë韲ßìùð£àŸã«½&ûÆ6 <¤xBßÄ·š7Öú5γ“on·Óijz„VrL KË…B¥è¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢¿ÏÛÓö¯ý®à³¶·¿à‘ðL߉7¿fïó}þ ûpxf}JᬧΧ¥êßü¨èz–•%ݤڶ¡áKéZņ­ñÅzOˆ4ûÍWBøgàÿêzàèÇüãþ Ãû2Á:<⟆ <_á·‡ˆY¼ð¯önð¥gã-oÃ?µ¸­í´=Sã=–ƒw=Ç‚t:ãSÓoíü'©µ§|q-ÆŸ¥øoH6ºˆ´<ïø!ü¿Ç?±Ÿ¾!þÖß¶F©7Ä_ø)'í™7¿hë—–zÞ©ðÿK×o^²ø=£ê–‚KšÂí ¿ñËèç_´Ó|=¡µ×…¼á‹©}Wþ Ÿÿýà˜WV~=ø_àÝ_â·ítËË_öøÏym∠&©<·³x?L‚ÖÏÂẾš.<-£[xšëBUÓñO‡µXçL×¼9â:çH×4mJÙ¾[‹ SL¼º±¼¾Ymç’3ÃWAE _ðExçþ Oÿý¡¿à‚ßu[CáН|[ûMÿÁ:¼s©É"¯ˆþë§Sñˆ~ÛIvÆ{›Ùô Äýݵ¸k3Ç¿~1wx5Í*Y¯ÚþR¿àè/ \|ÒàœÿðU/ÚIaÛ3áü>,¿ÓcHïµ/‚ß/ ÕÑ|-o¤ºLËkñÄfÖ[(ou6¹þª4ÝFËWÓ¬5m2æ;Í7T²µÔtûÈI0ÝY^ÁÍ¥ÌD€LsÁ,r¡ ¬2â€.ÑEQEQEQEQEQEQEQEQEQEQEQEWæ=ÿüþ 3¥ß^éšüCöJ²Ô4뻋ë;ŸŒÞŠâÒòÒg·º¶¸‰õÑÍñ¼RÆÀ2HŒ¬¿N+óÿþ¹ÿ™Õ/¯u=Gþ ßû%^êÝÅõõåÏÁŸKqwyw3Ü]\ÜJúyi&žyYdbYävf$“@çGûDüEð'ÅÏÛþ ñ?ᇋt|<ñçíÃñ¿Å ñŸ…õ}_þ'ðî¯.w¦kZ.§hò[_é×öÒ$ö·P;E4L®ŒA¢Ú'á×>þÛÿðPï† <% øáç€ÿnþðgƒþÍžÓ~þÏßþüø¤Ç YøKᯄtOhÆH-âµ×–º- ÔõYâ†3}¬jMwªê3n¹¿¼¹¹’I_ò›þ {ûpøŸþ ùàoø'×Ç&Oˆ¾¾ÿ‚—|øiñÁ bÔ5üFøM㿟´­ˆ<#gá­6âÚ^ÛëÞñ‡‡|òˆõßøOÃvãlË ¯¸§üàÛ"3~ÊÿðTXÙ•XÆÿðKÛȼd€J9àL‘–Rv±Gt$®Ë‚@?Qh¯ËÏø{Á¯ú5¯ø*þ*Ãöôÿç_)üIÿƒ”?à—?¾!7ÂO‹þ&ý¥þüVFÒQþüIýÿi|BW×–'ÐѼâ†Ú_‰µ”žÒTé ê+4Mf&! ¤?µŸüïöHý¶4»8þ>|!Ðõè owà^’çÀ>kšsK>‡â/†_<%.•ñÂ:ž…¨É­aoc­¶‡q¨[[cGÕ-Qí_{öQðgí+ð«ÃÞ øAû@øúÓ㦑ðý´;_„?´mü–ZoÄߊ^½ƒPˆi?|+¦iÚ~oñoÀRiÖÚ~¿ã¿ ¥¿†>(éz¾…âˆôox£þÝÓè¯x®ÃÇž ð—Ž4«iz_Œü3 ø¯MÓ<_áwÁ^-Ó¬9ð§ˆ|­¤-²gÒ"øká¿Å†Z-¿‹bÔôM^{ÿØéŸ5ÍzMç@Õ“Äú?†ïW[]>ÏQÒµ_MøñGáÇÁox£â—ÅßxSá¯ÃiW:ç‹=¹ðí®­5¦Ÿ6©m¢M¯¾›£-…”·±[-Ì––Ï)…>ˆ Š( ¿™¿ø-íƒÿ…ý˜ÿàŸŸµoí#àß ~Ȳτ~ÇàíHñ…~*|Iý¤h gKøñ‹Á¿¬üAá¨õÏ‚ß~|-Ö£ƒÇ6$†ëQO‹wjÁ}¦ZZÚê‘iÞ#‹úd¯Àø:;þPQûsݳëaþÏ´úCÿÌñŠþ ÿÁ7¿àŸ~=ñ߉uïøãÆÿ±ì£âÿxÃÅ:µþ¿âø¯Ä¿ü¬ø‹Ä¾#×uIîµ=k^×u{ÛÍSWÕµ›‹ýGPº¸¼»žk‰¤‘¾7ÿ‚ÉÁE~"þÆþý™?gOÙ’ß~ÚÿðPŽ~ýg{ŸØkÿ !Öõè1øãâhuí;áÔÞ/ð¼všF¤ðhÒêzäƸ5øZÒ/þ¦ÿ‚NÿÊ,¿àšö`±¿þ³¯Ãšþh௾+¿Öà靸"ÃmB8n¼;áO‡¿ ü{¥ÛÜ$sG¿ãôëûµŠHʤÐ/à Ü[N¼W±MŠXVFýþÕ¿à˜Þ)°ø[#x öüý¿tßÚ¯NÐÍæ‰ûFx«ö¦ø¥âß jm,RK ÿþÊ:î·ªþÉ>¾×­à“[ðV‹ðCK¸}[Í*Ã]¶¼—ûPó?ðEŸø)ˆÿà¢ß³?‹®¾1h:‚ÿjÿٗ⟉g_Ú—Á¾pè±üGðT­hž4Ð,o¡ŠëLðÿŽ ‚æê.S/ö7ˆ4ÏèQM=¶•Äß°µüQÁ¹þ)»ðÿü»þøI¥Ä¶žÔ¿iÿо)‹M·eŠÇO»ðíeñëÃ:Ác¿àà_ØòòÝtäÕÿh/~Ö ÒÖÄiÿdÑ>.^xËÆšòCn‚8H‹Kø±ðÆ-+kxbOEi¡¹€CýY×ò•ñfY?dŸø;öyñÔ—Ùžÿ‚’þÃ>$øG­_ݺÁ§ÝüNøXš¦©g¥0{•‰ïZËà÷Â-3I»òä¹—PñÑ ¶D¹’êPêÖŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Šüñÿ‚€ÿÁR¿cOø&.ðË_ý°|â韵?èþ›AðŒ¼xú•ÿƒít[Ýv+˜|!¤jÒé«mo¯é·Ëw&gHÚþeÿÄXðDßú8ˆŸø¿ù ãƒöÎÿ”ŒÿÁN¿ìÿÿhý,Ðè¯#ø§ñÃá×í-ûX~Ý´Â=Vï]øañ‹öÊøÅñÀzÍþ•¨èWšŸ…üJ¾Ôt‹ËW·´Ôôɧµš7’ÎþÚ ¨”š$pEþ’ŸðR/Ø—Mý¹ÇìGà_ü9ðGÅoƒ ¿mŸümøïàˆ i7‡õ†ºìÙûMøØ6x¯‰n`øñáô£BÁYíVîòu’ÖÆâ7Åÿ‡&ÿÁ#éß²'þ_òº¿Pëáø*ˆ5ÿ Á4?à¢*𮹫øgÅý…ÿkoxoÄžÔ¯t]Ãúþ‹ð ⥣뚱¦Ïm¨é:¾“¨Û[ß麕…Žíí¼7V³Å ø+áÆá/øÅWúì^ñn…â&=>ïO¿ðö¸l5X÷Ý µ´kZ ½*æöÒMÿ‚=þÞ–¿·Oì[ð»Å^4ѼIðóöˆøqàøcöø_ñ LÖ|9ã]ÅgÈš_ÄgÒ"kÿ´í;âˆw øuñ_Ã?|ÓxZÃöB³ð熼M«Ýø'ÃÃİCâ/i–\jÚf—wz~ˬ€ÒŸø$ïü¢Ëþ §ÿfûÿë:ü9¯çþ ]àk‡_ðqÇü›ö–Ö-$ƒÂ_u_~Ï–úÔ÷ o¦xOãOˆ¦·ÓžgfŽÞôÉûEhóA©êbO³ÚÉ+ÛLm¿m¿à_ ?àªÿ³OÂ?Ù[ö^ý ~Á?5ƒ¿þ|>ø%­|QøAûCþÑz‡ÄÛïü+øwc௠êú_ÃO~Êžð®¥â+ïìuèï>%èqŽçRÔ,BI¾™qôGüwþ ãð›þ CðÓá'Ä s^øuãŸøÏÃÿ>|tðT2xÿàwÆ/Ü‹Ï øßÃk~¿fÔ¬‹†Ó¼M᛹­mõýâdµÔ4?Ùè%Ѐ>ÿ¯âûþ ¡ðM×ÄOø)üÇöÁ´²’xÇö»ñï‚|¨ ƒ=¦§uâÿÿ~(x’ÊÞUH…Äš|<×Ax¼ElÐ p‘þíkžÿ‚Ñø›á-ÏÁsâ/Ø Á5Ôô9<'©~ÚÞñoÇmcÅÖ–—v‹¥Þ|Að¿ìs{ðsDð~‰ñ+i.5"Úûö¯×¼¦øž;YæÐ¯ô5}}ÿðýþ Á6?eÏ~Ë¿SS¿Ñ4½OÄÞ3ñLjʹž/ø£ñ+ĆÞOüDñ}ŬqÃ.¯¬=¥•…º‹EðÞ‘ øvÖYlô{yíú(¢€ (¢€?•ßø5_À>ñ/üËãn£â?xK_ÔíóûL[ ýoÚ>«x-â´øvÑ@.¯ìçœCI#$Aö#HåTb¥ïøT? ¿è—ü;ÿÂ+Ã_ü¬¯ç;þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQExí)ûBü/ý“¾|Zý¤~4kÑøoá‡ÁŸk~:ñv¦Æ6¹{"ؽ¶‘¤[I$GRñˆµ'²ð÷†th_íZ߈uM3H²Y.ï`€?<à®_ðW„ßðK¯…¾·O_üný­>4Ìþý™eÿ¥æ¥ãˆÞ)»¹I±Öu›  íkMð5޵uia=Í…Ö·â}bX|/áíRKÛ'ñ¯ö@ÿ‚C~ÜßðTŽý¿ÿà¿:ü7‚šÃij§üÃB³‡Eøqá¿KMQ.¾,ø1n5Xt=1^+5?‡Z¾­â/ˆž.½¶µÓ>0x¦ÛEðõÇ€5Þ·þ9û1|Bý¼ÿh‹ðpí·áØåø•ñÓZ×|+û ü7Õ –}7àoÀ¯É©x.?h·Ð ‚öÿH‚ëÁÕ൱ŸQÒÓÇßfþÒŸâ­¾¡mýqÐ6ÖÖövöövvðÚÚZõ­­´QÁomo,P[ÛÁ¤Pà J±Åj±ÆŠ¨Š&¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+ùÆÿƒ‘¿dŸ¿fÿ¿·/쥦Þê_µgü+ãí)à "Ò{ík_øuos¡ßüTÐ4ë 6ŠëVû+xKÁÞ5Õ4D™Ž»áŸx‹@¶²Ô/õ‹K9¿£š(âø'_íçðoþ Mû&ü4ý«¾ \M‡ã+I´¿øGP‘_^ømñ#BX ñ§Ãß…XÃßè„É%Ž ‘Gmâ_hž&Ó“û3Z²fû~¿’ø%™§Á=à¼_ðTø&–#ðÏÀßÚ#Ã>ý¹?f¯ æ }J½¿]*_øwÁ¶QIØcOøNu¿Á¦ýš`<3ð>ÅãžÞ-8hZôQEQEQEQEQEQEQEQEQEQEQEÏëÞ𯊒Ú?xgÃþ$ŽÉ¥{4×´m;XKGœ"Ìö˨[\, 2Ç•¢d rB.9¿øT? ¿è—ü;ÿÂ+Ã_ü¬¯D¢€?ÊOöÀ°±Òÿà¡¿ðS;L²´Ó´û/Ûçãíµ…´6–v–ñ]èKÖ¶éC€±Å""€@¢­þÙßò‘Ÿø)×ýŸÿíÿ¥šþ”ß¶—íßû*Á<¾èß¿lŠ2|#ø_âi? ô¯'€¾&|CYük®h^&ñ.•£Í¤|+ðoõûîôoø†äj÷úU®‰ÖQXO¨Å¨j:e­çå¥çüÿÔ-.¬/ÿmËkë ëiìïl¯?eÿÚþæÒòÒæ&†æÖêÚoÙíḶ¸…Þ)à•)bvŽEdbéoíÍû |0ý½üðcáÇÆe{ào„ß´ÏÁïÚ7TðޱáË/xkâ8øM{«\·ÃŸhšÕµï…<]k¬]iÚä7‘êVWeí5 U°¸º±›{þùûÿÑ‘þÈŸøŸ¿ù‹ åWþ ßÿcÿ‚ÿÁA¿fŸxOá?ü·Å¿?hƒàKÂø‰ðûàí­àñÀ¯rºÞ§û8|bÕ´?ÙÖê}càŸõKKt½·½ÒõÑà­jDñF›¢kZt¾,ðoŒý+öÿ‚ïÁ»?°¿ì;¡øö`ñuÏìýâÔøo'е¿‚·ÿ¾?øÏ↽ñ‰<9!–Çâ7Ž?áƒø/â?ŠïuÈ“NƒÅw~=°ð´zd–vškø;ÃÖÖú.ý0ÿ?`¿ú2?Ùÿ³à×ÿ1uÍøËþ ±ûxÇÂ+ðŒÿ±oì•cŠ|7®xrkëoÙ·àòÜYÅ®iwZd—Ví„­¦[¥Ñš#ͼ‚DSñ6$PßöøÉâïÚ/ö$ýŽ¿h?ˆéxóã·ì¯û=üdñ´^²›MÐ#ñwÄÿ„žñ·‰#Ðô뛽BâÃHMg\½]6Ê{ûÙ­l„0Kwrñ´ÏõExGìµð:Óöbý˜ÿg?Ù®ÃÄW>/°ýž¾|!øeâËÍ:-ïÅŸ ¾ø{ÀVÞ"ºÒa»Ô!Òîu¸tÔ§Ó¢¿½ŠÆ[–¶Žîå"?»ÐEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@VŠ|Sá¯økÄ3ñŸˆ4_ øCÂz.§â?x£Äzž‹áÿøE³›QÕõ½oWÔf·°Òô­.ÂÞ{ÝBþöxmm-a–yåH‘˜Y×µíÂÚ³âë:W‡<7áÍ+Q×¼Câ{Q³Ò4= CÒ,æÔ5mgYÕµ ­ì4½+K°·¸¾Ôuëˆ,ì¬àšææh¡‰Ý‹ïÛã>½ÿ&þÛÞÿ‚qþÉ:ÖªßðL_ÙSâ…ñ'öéý¥ô ¦°Ñ>/ëú õõ®ðïá¶¹·¥]˜µ}+Àw†ìµÏ6«ñf;Uð§Ã¯ jzåOˆ¿?k_ø9ëã猿gÿÙ§ÆÞ1ýš¿àŠ<[¦i¾;éÚ&©áoˆ¿µw‰4Ø,å×>hò˯^é¾'ÐåydÔ|=áéôÛo øKN¸Ñþ!|XÒ¼IâY~ø"êïö7ýŒgoØ'àG…?g?ÙÀ^øqáxÖyUdkïx·ÄsZÚ[jþ5ñ¶½2­×ˆ¼_Ⳇ}[Tbˆl†ÇM³Ó´‹; 6Ðè/ø?ÂßÍæÓmþ'x×âìIãífÙôÏ][ø[À.° %$°¹Ô¿hojpÉu$–úTÚTºÊ +‹¼¯êο–Oø;WDŸÃß°WìãûMè¶72øŸöMý»¾|X³Ô,¼èîí4i,|c¤^Y­í½Í¤útwþ)—Á­ì3Ç2_XXE¼¢hÿ¨­VÓõí'K×4›µéZÖe«i—^Tð}§OÔm¢¼³¸ò.c†æ:Úhäò®!Šx÷l–42€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?Ê{öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè£öÎÿ”ŒÿÁN¿ìÿÿhý,Ðè ô1ý§¾ þÖ¿ >%ëµ¯ì¨øÇ~4ñ ¦–¿ÿc/‹ž,ºðÏ¿ÚR/ èúg‡´|9ø‡qªŸ?hmº6áK/I¥ê? ~!øLðö…ñ'D³ŸÃú/ŒtŸš>ÿÁÁ?°Ljá_ík«üDÿ‚wþÑZtp'Š>þÙÞñ'à 2é±׺'Äç^ü+ñ/….&"}ıx¯N:Ö“5¦¬º]œ3¼Pþã׎üjýž~~Ò>oþП~|pðyóÊxkâÇ€<-ñF¶–àD%¹²°ñN—ªAazLò%õ’Ay ÖÖÓÃýºbOi±k>ý±eé,o«á¿Úá&»¦Ì“F³Dñ_i~.ºµ‘e‰ÒXÙ%!ãeu%XÆ|Hÿ‚–Á<>i·Z§Ä¿Û›öJð}½¢«=¾­ûA|,]Zv’34piú ¿Š'×5[¹` Á¾ŸðF_ƒ¶Z‡ƒàŸßuK>EšØüQ—Æÿàóæ{¥k‹?¾-øƒg{¶k‡ /`¸Q [ÛökKXaòsÿÂðÇíQ⋯„ðHÏ€¾>ý¾>#¥ûèºïÆOFñwÁ/اàÕɵy_Wø«ñׯ~‡RÕšÁ1¨Xø7áß„õýkƶ¶—–^ÕùìÌÿ¤ß²/ìáãß‚š/‹|uñëâíÿÇŸÚã,Ú«ñ£âRYÜøoÀ–Qøtk-á…¾ÛÛ?‡ÿþ'‰_ú=¶¥§É¸ùøׇüƒþ ?ÿÐþ+k_ðÈßµwìŸÿ ·Uðž—ýûS|9ÿ…y¨ø×þ«=vïí¾ƒíwÚ–Z'ö'‘¬Ë”û,úŽž˜o;#òãþ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE™­ëz7†´m_Ä~#ÕôÍÃÚ™­ëºî·k¥hÚ&¥ZË}ªjú¾©},:n™¦ØÁ=åýýäðÚÙÚÃ-Åıúÿ_¾!þÑ?ðt/Çï~Î_³‹¼cû?Ág¿áü}ý¡ìRÿLñ7í{ãmëLÕŸÁ> Ò®^ KÝ"O°k^ÐõÛ;½/ÂV7š?ÅO‰zu߈5O‡¿-ý#þ {ûPüdÿ‚Ð~ØŸðD/ø'Ÿ‹ïôžÔÒûþ iûWxx´¾ðÏ…ô`Yk_tR £ƒWhµh‡­hV—+uãï[·ƒgk?‡þ ø¨ÝÿQŸ²¯ì¹ðSö.øð×öhýž¼!m௅ 4Ñ<;¥FËq}<³K}­x“ÄZ——š×ŠüS­]_øƒÄÚÝÂ,Ú¦µ¨Þ]²D’$1€k~Î?³ÁoÙ+à·€¿g¿ÙïÀZ/Ão„ß ´X´O x[D‰„qF§¾Õ5KéÚ[ýsÄZåü·:¿ˆ¼E«ÜÞk:ö³yyªj——W·SLÞÝEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEøuÿ#|2?àŠ_·VŠ–s{á¯xâmŒ±[½ÅÅ‘ø[ñwáÿõ;¸<»[É!S xW´¾¸F‘iwWÆ{«+s5ÜmÿÁ0>&Cñþ ¿û|MŽhç¸ñì‰û=j:¹‹o—ˆãøYá{/Ù)Ž XÏöˆ­uKÑ[A5±h¡Ž2¨:¿ø(GÃø\°Wí±ð©md½›â7ì™ûDx*ÎÞ>Óvu|#ñv“¦Ëc±ÔÜê6÷÷V×sŧ_O ôVó[ÚO2G~jÿÁ²?áeÿÁ¿b»¹æŽMOÁÚWÅŸ†úœQEå­¯ü ß>$hº$ˆ¢I$“ÂQxvòiP>é®d–YÖW ½4QEQEQEQEQEQEQEQEQEQEQEüÇkßðrö¹¬è¿ðçÿø+N§ýªê:_öŽ›û7yúv¡ýŸy5§Ûl'þ×u•ß“çÚËæA$o»ý8Ñ@äqñãü4íIûpüoÿ„Ç ¿ájþØŸüqÿ ßâ†ÿÿÄOÂ@ž¿ÿ„oÆš'™/öWˆ´¯7캥˜ÿg¹GqÆh¯fý³¿å#?ðS¯û?ÿÚÿK4:(ýXh¢Š(¯çöÂÿƒž?à—²Å_|}{ã7í+ñÀ:•ŸÄ›Ùkáö‰ñCø{y¡Í<!¶ñŒ<]ão‡~½“ÃRÀbñ#xW\ñZÛ>™©Ém«Yê6±ßiÏ~Íú€®~(ø_âŸðËÆZœº½ñÛIÐtÝká' jæûHÒü/oñ–þË]oxCñ–©«®Ÿ¦|@j ¼7qepß6xŸâ·†¿à_ðKÉfñ_íóûFZG¤|Xøáëá“û&ü#Ö­V_kž ñ ­µèð·Œo|'qs¬^êÑìÖþx>ki6ïã_ü?þ¦ÿ‚ØÿÁ\®?àŸþðwìûû4ø}¾1ÁG?j‰­|û/üÑ´¹‹RÁq¦iz³½Ÿ„Ïmu Þ.•ðêöÞêõ$Ó´Ùc»ŸÄgÅ–Ó[ÜÀ.àkßGiY[ÿTUüªÿÁ ¥_…ðU¯ø8wög¼Xl þ×¾ý¢¼)¥*Ú$ŸÙ5ߌ>'ÖZÞ8,ì Zf§ø‡áô:}ªC,6V÷ÑÛùÒH ÝøõUEPEPEPEPEPEPEPEPEPEPEPEPùO~Ùßò‘Ÿø)×ýŸÿíÿ¥š~Ùßò‘Ÿø)×ýŸÿíÿ¥šþ¬5òŸíß­üGðÏì=ûex“àë_§ÅßþÊ´>·ð±ô£tºšüGÒ~xÂÿÀí¦µŒ¶÷«~¾&·ÒÍ™³ž¡p#6òÇ.Ç_«( Â‰ÿ¿c¿ƒðoÇíyaûxÁV_üEÿ¶ý¥õïø¿Â–ºDº§Ä6÷ö_ø‰{?¶ø³ÆºÅÅõýÿ‰µ]jêëSM~óV‚ãìò¬¶Ñþ®~Ö>ø)ð»ödøûãßÚ>÷H²ø áÏ„ž<¹ø´5Ë«k]?Rð5χ5 {ÃùºžÙ.ïüOgvþÒ4¨¥šÎ¯ªXézM{m ŸÊí{ÿøáâ?~Óÿ àŽ_ðTà_ÃO‹^2³ý¥¿àœþ1ø¹âY¾ü?OŒvZ­‡‹¬,|9ðñ> Þü>ð§Ä;-K^´O kŸ í¯ôëF¹±Ñ|Uy¢.Ÿ¢è¯û3Á?i¿üwø}ÿÇÿ‚¦¯í{«èúåÿÄ?°¾—ñSÄr|&ø—âÿ…²iWÚ‡µøîê?tφòxƒÃ÷ºî¡ü$µKVÖ´{_ø’o ë7žñôyûÿÂÆÿ†ýŒ¿áq}·þçü2ìíÿ OûKöü,oøT>ÿ„ßíþgï>Ûÿ 7öŸÚ¼ÏŸÏó7|Ù¯«¨¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:×ùðÿÁ¿i¯ø-_Â?Ùoã'…`ø&ÏÂ_ÚÃàKþØŸõ[¯Š>5ý¢þü,Ö`ñåãøRxY|3ã‹> ÕžËIÓít+¸55ÑÚÒíõI¢†òw¶•!þ¼?àœà¥ÿ4?Š×_ðRØ»áÿìs®h¯„íþi~øÅào‹°øïJÔ,õÙִˤÕüf‘€}¿ÿ8ÿ‚büRÑ£sÒÛX.§®ÞØY5íÄV×Aj'3Ë*ý¢¾i?>;xƒöÄø¿ªüZø]¡x‡Lñnà^'‡fñ…´Ïhº®»¤ë¶ZF ÒÚA©éÚÆ§iv‘‰a¼9(ýqëåïÛƒâ‹þþÅŸµ÷ÆŸ‡¶²_xûáì»ñÿâìa‰çšóÅþøQâßxjÖ("‚êI¤¸Ö´›(R(í®Fp‰ÌDmõ ekÚâYð׈´Ë-kÃþ"Òµ ]ѵ+xî´í[FÕìæÓõ=2þÖPÑ\Ù_Ù\Okuo"´sA,‘¸*ÄPä/ü×þÛû~ľ þÛ?³‡ˆ>&ø£âíð‡Ãþ×õŸxþ|=Õô-j_øÇÄ>9ð­‹ig]¸Ö¾+x—Âú7ŽüC®ø§Æ>4¸“R½¿} ãJ±Õoíî¿@ÿj¯ƒ?þ6|ñ¦ƒñ…¬´=ÃÚ.§ãMâpc§ø£àŸ‰ü-aq¬h¿<â›Ym5xÏáÕå¤~&Ñ|K¡ê:v¡e>´Ý}–[ˆeþ^~+üÿƒˆ?à—³øþ §Ãÿø(ì ¡É<_>|vÓí¼_ñŸöðÐì¾j6^<øAñ'Çð„³¦—à«íÆþ0Š ÃM·¸ðÏ„ì —L|?‡?àâÏø,6­eðÓþ E§xþ ßûê×z{|tøkðZÂüRý¡<Û¦½ðOYþ%|Xø§áƶ&ïJñ]ÿ‰¼[áMtÝJòAáï%´>Ô¯ìWñkÅcÙ/ã·Ž,ÿ³¼kñ«öføñkÅúÙ’Ïì>(øð³Â¾1ñŸØã‚Ö;O³jÚÍÜfK[dƒg”°B¨#_¦k+Aдo èz7†¼;¦Yh¾ðî•§hZ¦ÛÇk§i:6‘gŸ¦i–±ŠÚÊÂÊÞ [[xÕc†£Uµh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+ù°ÿ‚öÿÁI¾'|7´øsÿ¸ýî$ñ_üköèxA·ðΧö}[à/Â~+‹üHÖ5+G7×µ­ q|/«¿þðÖã‰×7Zpð¶ƒý²ñü+ö—øåÿÓý¯üEÿuÿ‚|xÊ÷Áÿ²ÂmVÆOø)í‡á»>™w§Yê7Vš‡ÁÿßYj°Yx›EžöÎëA}Gø‘ãk ø.VËáoüM­ø—ú¢ý—?fOƒ±¿À/†?³OÀ Ãàï…? ¼7máÏ éJë=õÑY%»Õ|A¯ê(_XñG‰õ‹›ÿøŸ[š4ŸV×u+ûù3?–Ÿ.ÿÁ+¿à›à–ß²'?fφvö¯‰’|Oñ«âtv?dÕ~,üYÔlí£ñ‹/¼Æ’æßHµò!м¢I,‹ øSMÒìd{DêZÿèýQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEðüwþ çð/þ yû.x›öVøÿ7‰´Ÿ k÷‡¼cáßx"}ÓÆžñ¿….'“Fñ?†n|A¢øƒIŽåìoµk]iSÿhø_Äö• ößE¨ZýÝE~.Á$àÿ‚Sêÿ´§Šì¾<øûö—øûIjþ¸×~%üXÑ ‡ÇÚ_‡~iÚí¦‘á›¯\—\†{¯]^ÝÞˆ´†¸û.•kums‘¦µ¯çÀÁ7ìÿK~Ò_Q²¾ÿÁYÿfmã÷„,"‘¡²¸øáðšÏ_¿×]äó ½EσÿhO]ÚKWÖÇÇúl°´vrªßÿX5ü¢ÁÈÞoìÅûBÁ¿à¨–¶óYh²¯í•iðÇãV¹§ˆÅÉøEñ‰ôWZ·¿a$w)i…|ñ/GÓn‹ 2×Qñ¬–úš\6¥em õwEG ÐÜCż±Ïñ¤ÐO ¬°Í ª9b‘ $‘ÈŒ®ŽŒUÔ†RA¤ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXk¿j+¿Œ¶³7í}û9ÛÚ]þÐv_¾.]ü µ¿·‚îÆçã-·€ø¥üAÕþxŸOðf£àohòÁ«h~1²ñÆ›sácKžGLÖâ±½²–;˜"pðgü+áÆo‡?±ÝíïÆoÛÛÆ?ðP{ÿˆßüañÂ_¼{»Œ>øSU²Ð¬àï‹l<]âøÃÃ5ð†·¥ë3øßáÞ½ªDß ãQ¹HšgŠ‘á¶uC,‘ă#¢e‡ñû5ÿÁ³Ÿ¶¾±àÏþÑ~9ÿ‚×þÞÿiÏŒ¿| ã‹á»¯‰ö~6Ñ|a®øZÆûVð?‰|suñÿEñ§Šnü-ýÏ„æÔ|CÕÛé÷GKƒ¥Û{_Åø7'ööÕ>|DÓWþÿ‚“øéµx¶Äx#ÄÞ-øÅ¬øoÆ&ï@Ô-Ç…|C£ÉûLÜǪè~!2djÚkÛ\%õ…åÅ«A*Êc`ê+öoøÛ ~Òÿ³¿À_Ú?ºN¯ x_ö€ø/ð·ão†ô/ýˆkú.ñ[ÀúŽô}'\mÕîý¯¦éÚõ½ž¥ö Ë»/¶Ã?Ùn§ƒË•ý¢¾(ÿ‚jø'Åß ?àœß°ÈÕüã߇ÿ±Gì­àŸxGÄ6Siºÿ…¼]áO~мIáÍsN¹T¸Óõ}Y°½Ó5+)Ñ&µ½µž U^6íz(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþb¿àÓßùG7Æïû?ÿÚoÿHþWôë_ÌWü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø¯þ ûyüÿ‚o~Ì^<ý¨h-sì>ðµ³éÞ𭌱ÂUñCâõ•õÇ…~ø.ÒL‹¯x–{Ô\LMд›]SĺõÍŽ¢ê—ÖÀ3Á`?à¬? ?à•Ÿ³Ô1¼Ò£øûGüV½›Á_³ìû¦Éusâ‰ß.|›Xoïôí$K­Ãà? ]_XOâmBƺÔ.®ôè³/ˆüK¤òüþ Wñ;àïÄø(ßü"ý¾%ÿÁNkÅÿ„—ǺοŸq'Àë–öÓZü(ðÄP&™¢ø’k´ÛG¢èn¡|6ðŒvþðö©¨x³æ/ø#Çì'ñçöÝý¥¯¿à»?ðT ¬_¾ Z[Ëû þΚÒê³h³gÁ¡ý¦|!âØôea[MNçLÕï5‡V÷¶^|Rëš¿ÆKècñ¿‹ô›Ÿ ÿYQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWã§üûöyö—ÿ‚?þÜÞ‹KþÔÖü%ðwPøßᔉõu¯€šŽŸñy¿²U"ži5GGð~­¡Gio\jPj×\%^ô0ý‹®KÇÞ Ñ~#øÆ¿5øcdÿ |o¨¾6¡âïëW­@g0‡G½¿K+ùwÿƒI|_«ø&_ÿgÿ\±ñGì™ûc|}ø#ªiå hl£’o üDšM=áùåÓ.|Kã$RÝp×Öšˆ -Õ›úˆ Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( òžý³¿å#?ðS¯û?ÿÚÿK4:(ý³¿å#?ðS¯û?ÿÚÿK4:(ýXj†«ªiº™©kZÍõ¦—¤hö𦫩ßÏ­Ž¦éöò]ß_^ÜÌɽ¥¥¬2Ü\O+,pÃÈ쪤‹õòßíÇðçÆß¿bŸÛáÃIæµøñOö[ý ~ü?¹¶‘ḷñ·þx·Ã>žÞXäŠH¦‡]Õ,$ŠD–'GUe‘ÎƯ‰_ðp¿ü®üÿÕñÁŸø'Çì)¬Éwsð;â—Æ½^÷AøçûIx"9%³Ò¾*Ko§|-øÁã‡^ñÌ*øÓû9xBQ,º¿Æ =µß†?<}ã x5qªxßBÔtO$µº¸Ò¯ü)oouªéWö&ý¤~~ÕŸ³/Â_‹¿³Åî‡ÃÍOÁÚ—‚ô™­“PøK¬èÚUžŸ¬| ñ^‹ v÷ñoÃkØdð¦¹áÍBÇOºÓ®´Â«h¶¯nòVý¸i߀?²OìËñ_âïíªx}~Øx;ÄYðN±qjÚ—ÅÍ_VÒ®¬4¿„~Ð¥ŽæïÅ^(ø…wq†4½O°Ô&¹“R2\[‹næˆêMWÒ¼A¤ézö…¨Ùk&·§Yjú>­¦ÜÅy§jšV¥mØ]ÀÏÕ•í¤ÐÜÚÜÂïðK±³#):5ò¯ì'ðëÆÿbØßá/Äsrßþ~Ê¿³ÏïÍßk>3ðOÂ?xgÅët“7ÚN¹¦_÷K+y»³#œ±úª€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€?χþuðçþ Ïâ¯Ùoã&§ÿÝøùûü5ýžWöÄø÷kwáßÚOFøƒñþ"Dþê1Oá‚Þ?ÓG‡ntÙ|=™×Vånmõ-…º´rOýxÁ8<ÿZð~‡ñZ?ø*OÅÙG⧈/µ_ ¿ÁÛÙgMñv§hÚ5½žº¾2‡ÆKâφŸ%–ööö_>Œl Õ£H-µ4¶ŒÑ¥ÇåÇü{ÿ(æøÝÿgÿûMÿéÊþh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šù7öÐý¸?foø'ïÁ köýª>%iß~iW0iv Ð\jÞ'ñˆïwgxSÀþÓR}gÅ"¾ $ÂËN¶x´ý>Þ÷ZÖntÍ MÔµ;@£ö¯ý«>~Å> þÒ´_¬< ð·áÆ‘.¥«j7/šž±¨:²hþð¦–óA7ˆ|câ{ñ“á¿Ù·Úµ=Jâ(ÃCÏqò·û~Êßÿ࿵O†à¬ßðQ_ _øGöøk«ß·üóöñ@—PðïŠ4»FŠ o‹?´Ë›[M?_ðþ«©ÙZøŠþþæÒàüZñ…–šÂ‚~Ð|=âîözøOûLÁÍ´Ç…k¿ÛÂz÷ÁÏø#§Àoêz¿ìÛû.êzN©ûNø’ÂïTÓ´ÿ|@^©:j1Û"$9ñ£ØYéZF‘¥YÛéúf•¦iöñÚXiºm…¤pÚXØXÚC­¬Q[Û[Å0Æ‘¢¨ºˆ‘¢G,qƪˆˆ¡Q@UDUUU@  :Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùLÿ‚+´_³ÿü›þ ýûÉmi§ÚxƒãGßÚÓÁÚU±’Ò=;Nø¦Þ"ñ·ˆ–ÓMš‡Ø&±øÏðí-~Ç½Ž¬vö¿j±»°{êο•YMçÀ_ø;ºØ)UÓ?mßø&; 6‹¸­®uoë— ‘Ö—ºæ§þÍAi-^ËEÖyê×BÛPþª¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯æ;^ø/ÿeË®k2xwö·ÿ‚K[ø~MWQ} ßRðßÅöÔ`ÑžòfÓ!¿h¿fIâ7±YèÇ<Ñ™ÖB’ȸsý8Ñ@äqñNøë¤~ÔŸ·™ûNëÞñGí aûb|_µøÍâ/…ðêÿõ¯ˆ§‡SÄú‚àÕtoêQxvëRK¦G}¡i7+lÈ%°·lÆ öoÛ;þR3ÿ:ÿ³ÿý ?ô³C¢€?Ð?þ óûiþÒ¿±?ìÛà_~Æÿ-?iÚ›ã‡Ç_ |ø-ð·RÓ|C­é7ºå÷¾$ü[ñNµ«è^Ö|7®êÖÃ_„7¼hlüMáø¬§j÷ú‘Ó´Û»;¿ºhß²Wí&ŸüC¤xKã÷…¾:øÇàõ·Áÿ?î<=¡i¿í>迵/ ^/Y.¡oá{o=‚Þ_¥ˆžä}#ûxÁ¶ÿ³7í¹ñ_ý«¿eÚãìñ«ãt0ø·âW‰~éü:ø«©kÑhxËÅ ñWÃýJËź¥ÍâjZåχükáÝ3YÔfÔ5g@¹ñ^«ªø‚ë'öÿƒg¿gOØ»â÷‡ÿjÿÚ¿ö˜øŸûxü_ø<¯â?†ÚßÅý"_ü2øg¨i~¢¾4µð«ãŠ®©âOù6ú‡ï5o]éÕ,ÓÄ:ü$š.§£xÏ€gø;šø* þßðL{?Íá/K Ùßø7_{ë]MÍô»kÖ±]Ðk¸,L\0º¹er.&ÌlOŒŸ³güÙÿ ‡â¯öçíéÿâÕt_øVþ9þ×Òüá½GJñ–¥¥ÿÂ1ªhXxKTÕ?cLÓ|Myiç[è7ú޹¢ØYê²Z\^jÚu¼r^Býh|;øàÏ‹?ü ñSáLjl<]ðóâgƒ¼3ñÀ~+ÒšVÓ#ð¿ˆtÖž(gk kCÔ¬u+6š¥6÷1™"òƒ±¯€?à“¿ò‹/ø&Ÿý˜ìoÿ¬ëðæ¾ÿ Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¬ø§Ã^ð׈,=À#ù(ý€¿àŸŸ?à½_þ õÿX³ñýœg×'°gì@Ú¥å¿ÃûO†º6¬Oñ‡¬Ö[ÿ ë7ZjÜ][G›ñ“]ŽçÅíÄ? ðŸ…5˜þ)ø“Åÿðsçíã¢üøW}âÝþ­ûxæ ã/ÅHuMÇöÁøÏ¤ˆ¤µð¯†%¸†Ý®´Ï²\I¦øz<%×…<«xâF´öž"ñ¯ÃYÿh>ðþ…á=Cð¯…ô}3þðΑ¦øþÑ,m´ÍBдk(4í#GÒ4Û8á´ÓôÍ3O¶·²°±µ†+kKX"‚Ò(Õ@Ë *ÆËLÓ,­4í7N´·°Óôû xlìl,láK{K++KtŽÞÖÒÖÞ8à··‚8á‚Ò(‘QUEº( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ågþ ëo?Áïø/wüóûFÚ@¨¾;ñoÇïÙ«RÔ£Q¾!â}#Iðn—§ÞHté5¿ƒãïˆN›^Ló˜5_*--¡këŸêš¿•_ø:=Oí þ #ûTB°­ßìýÿNø$We’;«Hõ›mKâ ¼s¶Ÿ¨}žÑ®~ Ù›™Z âYÒÄÉa|Þ\qÿUTQEQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« gk>“â'TÐ5ý/N×4-sN½Ñõ­X²¶ÔôcIÔí¥²Ôt½SM½Š{=CNÔ,çšÒöÊî­®í¦– â’)0Ão VöñGFÁ(±C 1(HâŠ4 ‘Ç*¢"(TP@ &†ˆe·¸Š9àž7†x&E–¡•JI±¸d’9™Jº’¬$T”Pv£é>Òt½@ÒôíBÐôë-EÑt{+m3IÑô2Ú+-;KÒôÛ( ³Óôí>Îm,¬­!†ÚÒÚ ‚(âhÑEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯óáÿ‚Á8ÿà ßµOì·ñ“âwìÇÿ…øµû ü7‡öÄø÷áy¾ x+à=ŸÄ}çÄšKøRëTñ³x†^t½×­u=6Æ};û –Ù4Xd÷h1ÁýxÁ8?coÚçö@Ðþ+i¿µ‡üSâüRñÖ«á;ïk^=øWoðºo†Zž»o­ézm½¿Ä¿ˆãXÅêzuÝÔí>’lÛE†1ØŸ|¥ÔQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ\Ï|iá/‡ñWÄx“Eðw¼ áÝkÅÞ1ñoˆõ m'Ãþð¿‡të_]×õ½RòH­4í+HÓ-.¯õ Û™c‚ÚÖ f•ÕšÌø›ñ7á÷Á‡Þ1ø¯ñ_Æ>ø}ðßá÷‡õxׯ¾*ÔmôŸøoÃúM»\ßêzýË$Pà I„Aºk‰š+kh¦¹š(Ÿø·ñW‹?koø:ã>£ðã᜾3ý—¿à‡Ÿ¾$}›ÆÿÎ}'âíyâ_Éo«ištMõŲj6Ðkv†• “ÿ "Ôt¿xâ|HÓü)á="î©wûDÁÔ´…ÿ‡t]CÇŸ³Ïüßöqø‰:¦±oo¨è7ýµ|uá{å­”ÒÛ­¬vѪÃsaex×6 4JË]Õ4ígâN¡e¦x_û.øEð‹á—À?†^ø3ðgÁøqð·áLJì|/àŸø^Å4ýÃú&ž„Ckk/,ÓM+Ky¨ê7’ÜêZ¶¥syªj——š•åÕÔÀ—ìÛû5|ýþ ø'özýœþi_ >|<²º²ð¯„4‹Nþ+1¨jZ¶¥y{«kwÚ¦¹­jº¦©}y¨jz¾µ©êýÝÄ“\ÝHJí÷:( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( æoþÛðEÏŠ?àŒÿ|Sj.Vo„Ÿþ|C[«atůÚtïž=0í…ö/¯xkâƒÝâ{{”Ùéàö¿Ü±¬Éömö÷“¬wPû'üÛâ+üUÿ‚UÁ<üi4ëu{sû!| ÐuK¥Înµ¯øEðN¹s 6ÖŠ“\jþ½šâ(`[h§y"µy­Ò)¤ý#¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šþcµïø"÷üT×5KLÿƒ?hMMÔu]FûOÑaý”4ë˜t‹+»É®-4¸®í9¸O‚Hís&UˆHbŒ¶Àü‡þÙßò‘Ÿø)×ýŸÿíÿ¥šã?~øÿáíIûpü1ø«ñ{Vøýñ#ÀŸ¶'Åÿ øßã^»¡'†5ŸŠ^$Òöº¯µ?G¬ø‰4kÝ~ê7¾ŸN]wV[g”Æ/î6ù„ ô€ÿ‚¶ÁDüqÿÐýž>üjøuû/ë_µç‹þ$~Ñ¿gÍàï†|}ðÿÅ–±ñ/Dñ­Öuᙴφ_õ?k×~$ðÎá}7Áºw†"½Õ§ñ(»¶Ô’]5týGò7þ×ÿrÿ¥hk¿ü=þ1ÿè6¯éç⿇Ÿ"ð|?ü'¥x²?‡ÿ<)ñSÁ‹ªÇ+ÿÂ9ñÀ÷r_xOÅšiŠXš-WCºšYläbñ~öD–)cvCèü£Ãúÿà®_ô­íwÿ‡¿Æ?ýÕç¿ÿà¼ÿðW ~üN‰ÿàÜ_Ú³Á«'ÃßFÞ/Õ~,ø÷_Òü*¯á½I[Äš–…§~Éz¡­Xh`RóI±×4kÍJÞÖK;]WNžd¼‡úû®↿áï |4ø‰âŸ%„žð×¼[¯øž=Vú 3L“ÃÚ>¨j:ÒjZ•Ñ[m>Á´Ûk•¼¾¸e‚ÒÜÉq1ÆÆ€>Bÿ‚TÞ]êðKßø&íýýÕÍõý÷ìûÞ^ÞÞO-ÍÝåÝÏìõðîk›««™™æ¸¹¸™ÞYç•ÞYev’FgbOÞÕò¿ì-ãüDý‰?c¯ˆ ~Cð‹áwŽ¿eÙïÆ? ¾[jÚÖÿ |℞ÖüðòßU0[NøvûNðÜZ¶·ûdzjÜùyžZýQ@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEü}ÁY¾0üTÿ‚ÇþÝþÿ‚þÇþ-Ôt€Ÿ õ7â/üãdžѮ´ßhžÕlu‚ð_$‘ØÞj:F©›Þ‚¯zÚ×Å­GÃZN¢ºN•ð»â Ÿ°ÿà´ßðX/|ñO‡à›ðO-÷ã/üÛöŽMð·†´¿ ­–­gû3³¿…~ xºtšêßFñžŸ§›oèzo‰-m4/xZWø›ã+ë? éú}§ˆ~Îÿ‚6Á*üÿ¯ý˜.5x~"þÒ_u8>#~ÔÿgšïSÔ~!üL»†W“LÓ5ZÞ vãÀÞ’ûQ´ð¼Z¨ŽóP¾Ô|Cã JÖÓ]ñn¯ €~Œüøð«öeø7ðçàÁéžøQð£Âú„<á]&2¶Úv“§«šâw-q©jú­ì·ZÆ¿­ßËqªkÚíþ£­j×WzýÝ̾·EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEòÏíÍàø­û~Ø žÞKÄø“û,þÐ^{HDÍ5ÒøÃá/‹¼<Öñ {«Ì“DÄ‚ Û9‹0Ý[¾ÙSò§þ øˆÿ?àˆÿ±Ã]]5Ö«à…øÑðïS,Å„ á£ðõª¹¹”-¿ƒnü4…dò¸u¶¶†Ì[ûãcgªXÞéš´7º~£iqc}gsËowgw ÛÝ[\Dà¬Ï±°*èì¬&¿–ßø4^ìhßðN?Ž¿î/]Wàíéû@|/»´¹“K7°ÛÚøoán¹ãǦË)kKÛícUŠ+ÉÙ㸿±Õmì¦–ÎÆ-€ÔíQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@å=ûgÊFà§_öÿ´þ–htQûgÊFà§_öÿ´þ–htP÷µÿ¬ÿ‚lÝÿÁSg??³ƒ]ɦxWDý²>üRøŸ«éÚž›¤x£GøI¡iþ9ðĽGÀ÷šÅž¥¥¯ŒáðŽu8ô%¿Òõ[s<®Ï¥êE¬¿™¿ñ÷ü7þƒßµßþoó¥¯êæ²µíwF𾇬ø—ÄZ–‹áÿéZŽ»®ë:•Ävºv“£isjž§u)X­¬¬,­çºº¸‘–8`ŠI…Rhù[ÿˆ7¿à‘¿ôý®ÿðóx;ÿ-|·û@Á±ßð@o‚×cáoŽlüøëãï jw_|ñsöÅøàx—U¾]KFðέ x3Æ~ Ñõiâ‹SbO±º´»¼³»ÓüÆš)£NÛã_üËþ ¹ñ'OoÚ7öÿ‚`|´ý„<[ñ7á—Âÿß?k-F]âÅùþ6üUðgÁ_‚>4´ð÷í'ð WÐ|3ñgǾ>ð|:5ÒxG^ð¿‡tßÚêZ÷°´cÄpÿlø;]øcâ‡ÿÿà›¿°'Â_„¿ô«ÿ†þ9ø¯u|Rð·ÃOxÆÙôWÆþ:Ò|ûb|~]Ážµ¿}KÄ^'ñOÂïx7ú]½Öµâ›?ì?QšêÏö øEã?Ù÷öýŒ>üG·°´ø‡ðGöOý>xòÓJ¿‹UÓ-|gðÛჼâ‹}7T€,•„:æ‹}ü*±^[¬w€’_XW‡~Ì ¼CðSölýžþ x»Æ³|Iñ_ÂOß ¾xŸâ-É®<}âx @ð®µã[†º–{“7Šu-*ç]”ÜM4æKö3K$›œûQEQEð'üËöûðoü3öFñ§íyãÿø›â_…| âo‡žÕ<'àýGJÓøÍ㯀?¿f{¯µî¯á¿…ï4Wø§¦ø&ióá]g⃠Í{càox‡L1ê×Þ—UÕõO Eqo§kw±ë+}§Xþgøoã§ü¯öYñl|ð‡önøm{¯[h±þ׿`¿øö{¸×5]Jk t?·?ƒgÍ?öto¶êopŸÚñ¯ì$’N÷[$2·ín¬i>!Òt½@Õ4ísB×4ë-cEÖ´{ÛmOIÖ4NÚ+Ý;TÒõ+)g³Ô4íBÎxnì¯m&šÚîÚh§‚Y"‘€hÑEQEüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ¿˜¯ø4÷þQÍñ»þÏÿö›ÿÒ?‡ý:ÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Ž_ð[Ïø*§üÿö;Ô%èšå§ìû j÷Ÿ ?àž>ñ]œÚ|^7ø¥\Ũ_üe—DžQw¢]˵{»ˆcÔ,¼e¨ü)𾵪·ÁínÊØôëþmÿ–¹ý>øŸöƒý¤ï›âgü_ö´cñö ø±â˜uí{ÃW~&¾“Å2ü"Ð5½ÓŦ‘ª_}¯â©£L,ümã{asö›ÿ xkÀði_¼ôQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@+?ðnlqø ö±ÿ‚ýþÏðÌÑÙü3ÿ‚˜xÇÅzN˜÷vÉmá,ø¿§xsPšÞ xmæÕ4O‡Ö"fŽ( ilžÖ+KW±ž!ýSWò³ÿÃþÐøQÿÁx~ ÊÓEcñ3Â_³WÇØc”ÝIø_ x{Y†òÚseok,63üwÕ4æMåínÅ„2_;Û„þ©¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šÿ)ïÛ;þR3ÿ:ÿ³ÿý ?ô³C¢Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†¾[ý¸þxÇãwìSû`|øyq5¯Ä‹¿²ßíðÃÀ×VÓ{‹oøûá7‹|)ᛋ{ud`škV²’)…í¡ŠEWVû|Ôú’¾Oý½~.øÏö}ý†?lÿ_.,->!üý“ÿh¿‹¾»Õl"ÕtË_ü6øAãø^ãRÒç+¥a¹¢ØÉya3,W–ë%¼„$„ÐãOŠ¿à¢¿²‡ü#à_íƒÿçýuÿiµwÀ¯Ùwÿ>xNïÀÚ·†ü£ø×àÆ©ðÓÆ¼%áíMâ†G“á¿Æ(þü9ñŽ‘}¢é3iú…ÜöÚ^Ÿ­YéÚ‡‘ïÿ³¿ü)ÿ¼øËû7'ÆoŠŸ´ß¯ٷǾðë¯Æ¯ÙËã_Šl¼%ñ«áïŽô˜®,ücàm#áÆ´¶~1ø&«Ù_ÚisøÃúýÆ«fÖ"óNÒµ™îôK)ÿàžßðPø'¿Åÿ ü;ý¡uŸ…¾ý‰jÿÚ»áï5ˆ—Ÿ¿gÓû.xß㿈otçÔðWÆø7Âí;á{ýUu­{ÀÚ—‚¼wã™îô—TºÓt]Aµ>Ïè‰_ðFoø&ÅÿÚwNý±þ"þÇ? ±ãOkú…åÜ)u{qqp<ÊûSötóìùð$ÍáëÿÍÿ oᇛá=V9bÕ<1'ü!:™áíJ)Ò9â¿Ñ[:mäs"J—Ò,ˆ®ÉEQEQEWÃ_·§…¿b?Š ¼ðKöåø›ð»Àþøƒñ‹á~»à |Jøµá_…ðµ>!ü+ñׇ~!xcÁñ&±¤]xËíúÞ¥[ëžÐMÆ¥«i’بƒí‘Ì¿r×óåÿ¿ÿ‚]| ý¸¼eû"~п´O„?ho‰?e‹ÿ‰–?|û3Üý³âUÏ„~!Ëà=bÃÆ°ø*Ïž.ñ—Äo ø;Yøý—ãŸ|!¶Ò~/ê¾ñ­ÏŠ<}«ê^·ðˆ@?r~ |'øwñCá_‹¾ øÛÂz.³ð·ÇÕþxÁrØÛG¡Þx3[ѦÐ/´(ì"‰m­l†•;ZÚGokd© ZˆšÊÿ$ßðggí?ñdzŸíûxïÄú¿4ŸØŸã„m¾ëšËÌï¥ü?ø¼~"ÚCàÝ-'¼¼{-HñWÂ?x‹NÒ¼Ù£ÒŒn,m®e²ŠÖ_×/Ú?þ —ûx3ጬÿeÏÍû_þÖÚF¥¡|ý•~xOÆ~<øÁâ?Š7ömá}#ƾÒü7>³ðÇÃöš¤ö×þ*Ö|{a¢?C³Ô¿³lu­pXhZ‡ŒÿÁ¹ŸðJˆðLÙÅ·¿´–ûS~Ô~1Ó~*üg°´Ô!Õÿá °Ó´¹í¼ðãPÖmÕ­µŸxoûkÅÏŠu +›Ý1:x?á×ù4ÿ¿…5mb_ë¿ |mzþ"½“^¸‡SÔ²°\ÛYéÑÇe[»Íû1ÿ§~É¿ôø+·þ%‡Ã_þ‡jÑÿƒOåß¿ìÿÿi¿ý#øq_Ó­QEQEQEQEQEQEQEQEQEQEQEQEQEQEKRÔ´íN¿Õõ{û-+IÒ¬®µ-STÔ® ±Ó´Ý:Æ .¯oïïn¤ŠÚÎÊÎÚ)n.®®%Ž x#’YdHј]¯åþ Óû[|fý«>6|(ÿ‚ ~À¾"X~>þÔko¨þØ_ôÙf—Lø û7Ij5}SCñMþ˜âãIoxr+ŸøçO7z~«{àü=àk=jše¬`,ü}ø›ûEÿÁÍßµGˆÿd¯ÙOž(ø7ÿnýžønËž ð†‡ ŠÇIÒl·ÈÌò;=Åþ§©^Íu«kšÍü×:¦»­ßjέwy©ßÝÝM濱—ìƒð_öý›>þËŸü=ƒðóᎃ Ä‘Aýµâ½~äý«Ä¾8ñ]äD5?ø»Y’ëYÖ¯™?´\‹;(­tËK;¨h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯å^Ñåø1ÿyê°¼Ÿgƒö·ÿ‚YÛ\¤-- Kùü)âëh"™!7ï#\ÛÇû8_EÑjÛ¥Ù[/ìÉfÔ¦þª+ùWÿ‚§Isð þÿ‚þÓrG·Bø¿§|uý‘uiÕn’ ouÝ;Sðφ´íVæå7]ý£-5]Ê}¢ãQÑnçh­'0UQEQEQEQEQEQEQEQEQE~hÿÁGÿà—¿ ?à¦ZÂâǿڻàTõ_jú=çì³ñKß uÍâû= ÎòÛÆW!øãÔÕì´äÐ-åÑ¡µ‡Mk9îõ–[‘ ø+öføñâߌ ìÖÝîþ ü.ðçÂÏk<j·wÚ]«\ø¯Âvz¶ƒÜêZu»K~¢këHË\GôÍ|_ÿ!𥷎ÿàÿ·¯ï|aᇖ~2ý‹ÿjO ]øÿâ æ­§ø ÀÖÞ!øã"xßPÐ4_k¶>ðÌW­x–óEð[hÖW³iÚ.©xØÎùÛûKÿÁsÿàŠ~ øSÃ_þ<|ø¿áßøÂ賟ÂÍMý£5«íTÒmn<=áMwÁÞ¶ñƒ¼1wia¼K¤|EÕü2˜­#½»ÓÒçò·áwÄ?ø*§í9ã k?ðF¿Øâ'üóöp´Ôl®[Ƕ÷Å-SÃÿÓìtŸx2oèöz¼¾ñ®•¦jzÞ›¦x·Ã¯xÚGˆôý?YÕìlµ‹;ËkMNþÞ8î¥ëh¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ùŠÿƒOåß¿ìÿÿi¿ý#øq_Ó­1_ðiïü£›ãwýŸÿí7ÿ¤+úu Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š+åÛSöÅø)û~Í?ÿj_Þ ]áÿÃ=Kãeo%±×ücâK¬ÛxcÀ^±¹šÕ<[âí]­ôÌ˼O4º–©sa£iú–£hð¯üsþ Ëàïø%÷À ð¾—ÅÛã½ÛøöMøaΫ¬øÏÇzͦŠõKëø+ÂWú®Ÿ%Õ¥”IãÜèžÑîl¯uéµÈ¿à†ðKþÄŸ¾!~ԵƳ7Äø(ïí¡'Ä?Ú[ÇÚÍìZÞ£à«-oQißt}Y@KºšßTñìº>ÍÿÅÐ[hºLÚ—…<àûÓðÏü3ö1øßûr~Ðz÷ü«þ MáÛI¾,|^°‰?a‚z”ÏáÏ€?Ü\ ø÷DÒ5$ó-.õ=ö{o†7wq%åΫx‡âÍè¾×þ 蚦‹ýjÐEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Êïü}¡ÝøöOým_Ú_ÉâÏØ“öùø!ñF+í8)º°ð¶ Ú¤š·ó&‚îî¼Oð«Jz/뛉tEñd›t½BðdžÕ¼Iâý?GºñÇÃÝKH×ᶺ×-ãþĨ¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(ü§¿lïùHÏüëþÏÿö€ÿÒÍŠ?lïùHÏüëþÏÿö€ÿÒÍŠÿVøƒþ má?x÷þ ·ÿð/|3âxÛÆŸ±í_á?x;Âz6£â?x³Å^#ø ãíÃÞðχ´{kÍ_^ñ»«ÞYéz6¥ÙÝj:¦£umccm=ÌñDßoÑ@É7ìŸÿ°ü ñ‡¾üJÿ‚þÒ_´ÿíëñ/FðW…#´øoñ+â_Žü/ð§áí´z>±°oj¿.l<#µ‡‡í"‡ÇþÑg²Ñ¢¶¹ð]¥™]2×úføû1þÎß²·ƒ!øyû6üø]ð7Á‘Gj’è < x>×Q’Ég_k’hÖ6·^ Õw]]M>±®\j­ÝÍÝÝÕÝä×7WÉîtPEPEPEPEPEPEPEPòÿÃ~Õ²÷ÁŸØ#ã_„>0~Ò?>ø²OÛ»ö’Ö#ð¿Ä¯Œ?< â'Ò/mü ž¨š'Š1Zxvk;o]|,ø‹áˆ6úÆ¢—éöúÌþÖ5x´¹¯â´»’Î+Ö‚K¤¶¸xÖ ÿßðoWüþ ÃûpþÆßþ4~ղ߄¾0üO¶ýµ¿h_CâÝoÄÿ´‹Èü/¡/‚ï´ ZxWÆZ˜a³»Öµ9’f±7N×n²Ï"$Kõ•ûÿÁ<ÿcOØLñÞû| ðÿÁ3âeþƒ©øêÓAÖüe­'ˆoü3o©ÚèW/âÿxŠ[vÓ­õN(–ÆKXängIYc(öuQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Vf·­èÞѵøWÓ4heþ·®ëºÝý®•£hš6•k-ö©«êú¥ô°Xéºf›c÷—÷÷“Ãkgk ·Ç nêCÅþ.ð¿€<)â_xÛ_Ò¼+àßè:·Š0ÿƒ o›ŠÞ1ÑÐ~|'øi ÛxsÁž ðå±·Ó´­:ܼ²I$’¼·šž«©ÞKsªkºî©s{­kúÕíþ³­_ßj—×wsz¦Ÿikaakmcacm••œ[ZYÚ[D°ÛZÚÛB© ½µ¼(‘AH‘E,qª¢€,QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE,_ðuÇ„uoþÉ¿²Gíåà˜f‹â?ìûmüø¯¤ë‘@o4ï ø‹U‚ÓQ‚ÚêXÜÚµ÷Ä_|%rd/e;Y$WvÓ±·h§ß øŸEñ¿…|3ãO Ý®¡áßxFñ>ƒ~˜Ù{¢ëúu¶«¥Ý¦ ·67pL¸fq‚G5ù‹ÿËø(ÿ´ü+þ ðâhoo"ý|]ñ'L³ž#7ÚµòØ|lÑ­­ÐIú|ú¯ÃÛ8´ÙöE¨5¬²,ˆŒcþñ±ÿh?ø$‡ìñ*{¸oï‡ìãேZ½ü7é¯uï‚‹wð[_¼»˜É!:Öµðþþ}]7(‡T’ò"1 ~©QEQEQEQEQEQEQEQEWÉW?·ßì'gqqgyûj~ÉV·v³KmuksûG|‚âÚâ )íî —ÆI,3C*´rÅ"¬‘È¬Ž¡ëZüTÕàÝ_ø"Þ·ªjZΩûü=»Ôõ{ûÍOQ»ügGº¿¿¸’êòáÒ/‰QÄ=IJJËi–!T?‚¿Ú›Å>ñ¿íïÿ!ñ‚üG ø¿Â~$ý»¾;kñG…õ}?_ð_\h3Yjš.·¤Ü]麦y ,Ö·Ö73Û\DË$RºI\¿Ç„Ÿ¾þÙ?·ïÁ„~´ðWƶ·ÆŸxÂV:埇|/ ·‡ìt"ÚïV¼Ô5;ˆl­"ŽšþúîéÕCM<ŽK€?ÖžŠ( Š( Š( Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€)jZ–£i×ú¾¯e¥i:U•Ö¥ªjš•Ô:v›§XÁ%ÕíýýíÔ‘[YÙYÛE-ÅÕÕıÁorK,‰3ãöøíûHÿÁÊß´'¿a¿ØcÆ×¿?à”¼_¦èÿµÏígje7ß´®·e©Ç8ø}ðÖY£:ç….೸Ôü-¢›˜tmbÖ/ˆ®¡Ón¼ áSÕÿ௿¶GÆßø)¯íEüwþ ¥âeŠïWgŸþ 1ûJh¡ïü/ðgá5Îoâφ‹«ÙMs[®©keñÃMÔ-/5Ÿ]hS´¾Õ>!ØiŸÒ¯ìoû"|ý…?g†?²÷ìýá¨ü7ðãᎃ™m$¢5Ïk³qâ_ø»P†(F­âÿk/u®kú‡• ¹¼»6šm¦Ÿ¤Ziúu _û8þÎ?¿d¯‚Þýžÿg¿h¿ ¾|6ÑbÑ<-ám&ÅfžûTÕ/§ioõÏk—òÜêþ"ñ¯sy¬ëÚÍåæ©ª^]^ÝM3{uPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP;âÿ hÞ9ðŸŠ<â+µøÆÖü-®Ú~ìý«Fñ›s¤êvø–9b>}•Üñ~ò)cù¾xÝr§ùÿƒK|U©éðO?²ÿНÕügûþÚÿ~ êzSÛ\Y]YiWáßG}-¥Ê‰maÔ|i­øþÞ+iÊÝÁ>•yÄI²7›ú‘¯åOþÿs'ìõÿÖÿ‚öþÇw±ÜÙÛ|HñçÃ_ÛOÁºsí{1kñ î¼]ãZÂXäòZ=Nóö€ðU¬±Ä’ Its§ÊÖ×67ôýVQEQEQEQEQEQEQEQEQEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@Q@Q@Q@Q@ÌWü{ÿ(æøÝÿgÿûMÿéÊþkøgÿƒz¿à¯_ðNØ{ö6øÏð_ö«ý©<%ð{â}Ïí­ûBøÖ k~ø«ÞIá}u|c¤êâï¾ ×´Á åÞ‹©ÂµðºF´v–Ñâi?¬¯Øïþ û~ßúgŽõŸØû㧇þ7iŸ ïô3ÇWz‰ã-<=âk}NëB·¹OøoòÜ6£o£jrÄÖ1ÝG´q;ÄÍp³¨¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢³5½oFðÖ«øÄz¾™ x{@Ó/õ½w]Öïít­DÑ´«YoµM_WÕ/¥‚ÇMÓ4Û'¼¿¿¼že¸¸–8cwP[Öôo hÚ¿ˆüG«éš‡´ 2ÿ[×uÝnþ×JÑ´MJµ–ûTÕõ}RúX,tÝ3M±‚{ËûûÉáµ³µ†[‹‰c†7uþ=ÿmø,?í]ÿGøÁãïø&‡ü—ÃRkð­µç‡?hø(=ÝÅŸü*¿xJù.­µˆ¾øª MwDÒ´ïØ[jZ‘ñäÏâïNúœ_ü7¥a¦ü@´òÿk¿ø9£ö‰ñïìûø×Å¿³·ü'á®úíûObÞ[ÏûLëúý´—^ð­Ôv–òêf¯oiyáo†÷zÄ\¾KO‰¿¬žâãÂ>·þ³¿cOØ£ömý~ø{ö}ý—¾éŸ|¢-µÖ¢ð…ºñ|Lš^¤ê>8ñÞ¼ñÇuâOë°iv’jÚµÂÅh£¶Óí4ý6ÞÒÆÜæïø%Wü³àü“ö›áÂyïüoñƺœ^+øåñÓŰÅ㋾5Ëw·á&»:7…ô(î.­|%ákÛ»M ­CP¼¼Õ¼M®xÄÇéíPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_Ê7í¥2þÆßðsÇüwö’+s£ü>ý¿ÿgþÇ;¿O: M[â†ï®ŸÂQMp—+ íÎ¥âMwözÑÆ•w ÅZTZ•©»¾HÒÓú¹¯Á/ø8—öø‡ûdþ°üDýŸnu7ö­ý‰> i?µìû}¡EøƒSÕ¾Û\]x«ÂZ,³Ê#‹UÔ4Xáñg†ãŽÖòçSñǼ#¢ÇA©]H?{kË>9|bðOìóðcâÇÇŸ‰7í¦|?ø3ðçÆ·£Àún­¦Z|´ÒþxÏ\ÓuI¼·»—Áz÷ˆ¼o©És,íªk:5¶¥¨4ú´6×ð@±í ¦~Ö_²?ìÕûKé-mä|sø!ð×âeݵ©V—­ø¯Âz^©â= ‚–T¹ðÿˆ'Ôô;È•a»Óç‰] LÑEQEQEQEQEQEQE~*j¿ðqWüoDÕ5-Tý¼>ÚjzEý晨Ú?¾3»Úߨ\IkynïÃY"v‚â)"fŽGŠ’ŽÊA ÂOíÿ)ÿ‚ÙÿþÐúY¡Ñ^sñÃâßï_¶Oíûñ£á‰í•wªÙϧêVzLñÉñCÅzt^Óµð»Bøªêø?¶ïí¹û^Áw>8øóþ £ÿŽÕ¿áý‹¼+¨Øø3ö×ÿ‚€ ©|'©ÚÝêJÚσ~kp^éí­xdØX^Gm§ørþËÄe†òÚËWðÿÂfºñ?Š¿¥ø'ßü»öcÿ‚h|Ò¾~Ì~ þÁÑŒ–ZÇŽ¼c«Mý¥ã¯Šž6‡I±Òoüqãi•Ö«¨EcA¥é°iÞÐbw±ðî¥Y3@ÀÇû,~Ëÿÿc/€_ fŸÙûÂpø7áW¿àøwK ­FöC$—z·ˆ¼E©˜â—ZñG‰µk‹ÝwÄzÌè’êZ½ýÝÏ— o}EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüSühý”à±_ðEïÚwö·ñ7üûà7†ÿi¯Ùöë×%ø…¡|1¸²¶Õ¦ý•¾;ê³O.§ªXø:Oxn_ì;[y5[M QO7Áwþ“Ážñ’&¡à=%µ¿±ÿ`/ø ÿíyûFüÿ‚…ÿÁa?kïþØÿµg†¶ñ_ÂO„2^¥÷Á>-ºµ°Õ­n¬Ä–öÚ=î¹à¿µÆ­£éÿ<7à¯Xx·GѼSnÞ"žÊÂh?©(Ë>9ü#ð·Çÿ‚Ÿ¾øâ6›ÁŸ>x÷áO‹#Hã–FðçÄ/ j¾ÖŒ)(1´Ë§j× ÿ”J’1‘üéÁ­ß¼W§~Ê?ÿà›ß]l~>ÿÁ3?hoˆŸÒ®Q&²OékK¦µ»µŠ?ê¿’ÚÚÒãþ ÿ!þȵ¾ŒÑ迳ïü—ÂþÊ?aHRßI¶øå  xoÁ:ýÃA$Vm·Àë”Ôµe¸º¶ƒâ¥âÞL×Ú”¶`ÖýQ@Q@Q@Q@Q@Q@|•sû~Âw——Ÿ±_ì•uwu4·7WW?³ÁÙî.n'‘¥žâây|òÍ4Ò³I,²3I$ŒÎìX’~µ¢€?Êö¦ð·†<û{ÿÁH|!à¿h>ðŸ†ÿnïŽÚ?‡|/á}#OÐ<; é7 6Z^‹¢i6öšn—§Y« ­´Öñ*ÇH€V÷íÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEPEPEPEPóÿžÿÊ9¾7ÙÿþÓúGðâ¿§Zþb¿àÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@Q@U-KRÓ´m:ÿWÕïì´­'J²ºÔµMSRº‚ÇNÓtë$º½¿¿½º’+k;+;h¥¸ºº¸–8-àŽIe‘#F`=Íͽ½ÅååÄ6¶–°Ësuus,p[Û[À,÷ÊÉ0ô’Ë#,q¢³»ãö¾ý³?hø8#ö˜ñüóþ ›â­sáÏì3ðÛ\û7íëûsiWÐé8ð¢jWº«ðÓá~©¡Ëq§xƒÂþ-Ó£Õ“Ã=ÍÜMñŸQ·k»öðïÂo ëú߉)~Õÿ¶oíGÿ|wñ×ükþ uâKÿ„¿ðOÿjð蟶—íúÖ´ÚOÄm¤{}Wá¿Ãu´ŽÁõ/ ëЭéÑ<5k­èÚ§Æ„°ß®k¾ø?gOþÌÿ³‡ƒí6×ï ^x‡Åþ!þϳ:–¥7•oµ¥†£Xé>Ò´"Ãêª( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ¿/ø:ömñGÆ¿ø%¿Š¾/ü7ŠEø­ûüQðíwà»ë(Qµ;M;áì÷ú'.`ÆØì¼?à¯jþ>¿‚]Ð\Z–î!¶Ûý×;âÿ xsÇÞñG|a¤ÛkÞñ§‡u¿ x§C¼2‹MgÞ#Ónt}oIº0I âÛQÓ/.¬ç0Ë¢)˜Ç">xìUûPø;öÔý“¿gïÚ«À†ü;ñÇᇆ|sýâçþízöÌ[x¿Â7‚D—þ ñu¦¹áMH‚@Ô4k¥ Àdý?_Â/ìÿ=ðoü•ãÿÚOþ +ÿÒ¾+·Â߆¿üCñKö6øËàÏ Åã›M{àÅ+Ùµ›-OOµÔ´©ml5 ¨ÛŦMÃW}/âˆ>'x_\kYt] Ǫ|ø3oãß®‹â7ð¦ck&¹/‹ô6]^ô ×½±D[Ã-¤‚y åSúîÿ‚tÁRgÏø)·ñO_øàÏŽþ³øCªøWGñ,_~CðêîþëÅözÝî™'‡`‹Ä> ­´h‹¨ÊÏlm%–ÑKçå?+ÿàÓßùG7Æïû?ÿÚoÿHþWôë@Q@Q@Q@Q@Q@Q@Q@W%ãßx/áo‚¼Wñ#â7Š4?ø À¾Õ|Uãø—Q¶Òt øsC³›PÕõ_R»xíìì,, –âây\*¢eˆR¹«ëO‡ô­G]×µM;DÑ4{+KVÖ5{Ûm7JÒôë8ž{»ýGP½–K++X湺¹š( ‰IdTRÃøÑý³?k¿Žßðp¿í¯Á/?àšzíÿ…ÿàŸ^ ×4x¿ooÛÆÆÆõü1ã=OÕ­µ ¯†? µ„¶kM[LÕ[Oš/é°\Auñ—W³’â{àv‹â?ø·Žø¡ñ#öàÿƒ þ%xëàì³âmköLÿ‚0xÅw?iSÁš•§Ä?Ú«[Ð[HþÐðjº¾™¨_éR\Is}¢øb5ðÖáíí5?ŒjÞ)ŸBøqcýkþÈß±÷ìïû |ð—ìñû1ü9Ò¾ü3ð…³­½•£M}­ëú­Ô²\ê~&ñ‡ˆïž}cÅ>&Õï&šæÿWÕ®®%Uh¬,RËI³°ÓíÙöAøû |ð7ì×û5øËÀŸ | eåÛÛDzç]ñ6¹r‘mø×ƺߕ ω|gâ[˜Vó\ÖïZVX,l`°Ñì4Ý6Ëéš( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( 3ø±ðcá/Ço j>øËðßÁŸ|!ªéÚî•w¡xÓÃún¿f¶^&ðþ©áMylý¼³i—:§†õ½_D¹¾Óe´¾:n¥{j—)ÄŠßÆ1ý˜õïø6Ãþ wûk_>7|UñWü_öùø›âÿÙ×â§Â"›UðïÁx·ÅÞ|.}:5t³[o MâíVÒ¼cq§_ø«PÑë_'ŽúÚE’Þhâ•¿vŒÊûñE|cÿìý¨ímoØgöWý©¡’Ô>3|ðg‰üW²À–ö?¡Ó“Eø—¤[­ªÇn!Ñ~ é^&Ò"ò¡·R–J~ËjI·‹ìê(¢Š(¢Š(¢Š(¢Š+ùŸ×¿àê¯ø'‡µÍg@½ø+û{Ëy¡êºŽw-ŸìÓg=¤—ZeäÖWZÎ~"Æf¶y`v‚Rˆdˆ«”\àLPùüIøáá?Ú[ö§ý¹?héÞ(Ò<ñ‡öÅø¿ñÃ_´eð÷‹¬4_§‡u _èkw~ºV¯ *^Ø­íз˜4byÜJö?Û;þR3ÿ:ÿ³ÿý ?ô³C¢€?Õ†Š( Š( Š( Š( Š( Š( Š( Š( Š( æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅNµüÅÁ§¿òŽoßöÿ´ßþ‘ü8¯éÖ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (®âŇ~øÃâÏůxwáßÃ_‡ú ÿ‰üiãojvÚ?‡¼9¡i±nõKPºtŠ(ÔmŠÔ½ÅÝÌÚZE=Ôðà Q­ëz7†´m_Ä~#ÕôÍÃÚ™­ëºî·k¥hÚ&¥ZË}ªjú¾©},:n™¦ØÁ=åýýäðÚÙÚÃ-Åıúÿßþ#|_ÿƒÿkGöXýžõÏü6ÿ‚.~Ëþ9Ó®ÿhoÚDM_E¼ý¯< I§ê0ü?ð›]5„WZGÚŸá :kKû_ iIoñ›ÆI®j |âµïü#ûGøÓàÏìßãÏ~ËßðEŸ‚&·ð÷ÅŸŠšl:¿„¼yûXÏ)ðõõÿ…gÑ®î]uk›¶Óµ KÁÞÕ¬SÂþðíþ™ã/Šú6«ã[ÿ xìwöhý›> þȾ~ο<¦x áWÃÚøÃZ›1Ë7”<ÍG]×.âŠ5¯xQ{­oÄþ ½¨kºåõö§},—.Ô×ü"øEðËàÃ/|ø3àü8ø[ðãÃö>ðO‚|/bš~‰áýOB!µµ„–i¦•¥¼ÔuÉnu-[R¹¼Õ5KËÍJòêêoF¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š+’ñ÷‚t‰^ñ¯ÃŸÛ5ï…¼á/ø'Ķhȯw x«G¼Ðµ›di#š5iôëû˜•¤ŠTÁxÝr§­¢€?—_ø5Æ>"Ða_Úö4ñÍõÍÇ¿`ÿÛWã¿À»«9–Há²ÐïuxÏø!§üßö¹ý‘¿eŒŸ ~ÿÁ%?jÛgÁ“þØ¿~Ôx×öBÿ‚3øÅ «ü"øg{>ãßÚçDk°ø®6ÙÆ»w¬ØëiÏÆ+…“Á~±·Ô<'ðwHÔ JµüQ¥ÔK(J Hÿx€ß¶wü¤gþ uÿgÿû@éf‡ExçÄŸ‰~,øÉûSþÜŸ¼yð£Å¼gñöÅø¿â¿üñ´­?‹¾ëZÊxvòÿÁž#™´í%¤Õô)äk+×m2À´Ñ16°Ÿþ¸”QEQEQEQEQEQEQEQEQE1_ðiïü£›ãwýŸÿí7ÿ¤+úu¯æ+þ =ÿ”s|nÿ³ÿý¦ÿôáÅN´QEQEQEQ^ûB~Õ_³Wì›á(üsûLüxøQð'·+|tíWâŽ|=àñ®K¦­³ÞÙxnÏX¾¶Ô_h’‹YlÙ®t»ÿxãGÕá&VÔ »ñ§À­I¦Š[[+IVõ¿ Á©Ÿ³§Äi^8ÿ‚‚~Ûß·7üÅ:T‰8³ø©ñoUðïƒ/&˜DuC5´š‡>%ØÇ|ð¤q&…ñgHkkBðK%ä«mulógí7ÿ¦ý°?à­?uŸø'Ÿüg@Õô ;jžøûÿ ñ~‘¡xOÀž{»ý'SÖ~ë)k«?ƒð¶©á‹Ë¸âr¹²‹SkËGVI"º‚¢’9Q$Pgþý¥ÿgÿ‚Ÿ´7.a¹ðÆï…žø¥áö‚u¹û>ã i¾!‹O¸u É¥µû麕´ÑÅsg¨Z]Z]ÁÌBžÑ_ÃìÏÿýµ?àÛøWûÿÁTþ /ÄïØZÎïĺìáûeþϰÏâ;½'MÔµý{ÄÑè^ Òõ;­1uËK+½BþæOëqøGâW„ü9 ýφ-¾'hNhßÙ_ìõûKþÏÿµ—ÃM+ãì×ñÀ?þk-äZø³á÷ˆluë mAmíî®4Mj i>ßáÏiðÝÛ[à ´Ó~Ó~4ñ¬?¾&i~'–Çáÿ„Æ6ßü©k§Ãúo‹¾$Hš¾w£éÝ®µsek£Yx‡Äw‡ukÄÑ >”º§ë¶•ªéšî™¦ëz&¥a¬hÚÅ…ž«¤júU御¦jºf¡o݆¥¦ßÚI5¥õ…õ¤Ñ]YÞZË-½Í¼±Í « ôQEQE”÷íÿ)ÿ‚ÙÿþÐúY¡ÑGíÿ)ÿ‚ÙÿþÐúY¡Ñ@êÃEPEPEPEPEPEüÊÿÁjëÿàœ¿ðI¿…0ñ'€'ÿ‚Œü}ðÿ‡hßø6ò÷Kñ^›û,iž,ð߇|wá VÓPêz\ßíuÍy¯õ 2{':7‚u-W¿µðÿ‰µV`Ûí#öïý‡¼Añ&/ƒZí•û)ë./ãÒ øS¤~Ðÿµ/‰3jrÉ1i±xËÆx¢Kù&š£³M-®IbEŒ´ˆÕ•òo‹a_ÙÆ³%ÏìuªþÏ¿  ýœ$ð¤¾Ó~éžЬ4 Ù1´Ë=cÂñGbÍ¡x¿I_/PÒ+ß|ÿ‚-þÃßÿà¡>7ÐîÒ?üX¿ðÿ‹¼+ðgD¶ß«@/ { -nòk;_°ø³â³ð¿E¹y%´°œ’ÚK õ³Y ñá= XñGеÍ#Ã>ðî™}­øƒÄ^ Ô¬´m BÑ´Ëi/5-_XÕõí´ý3LÓí!šêúþöâ [Kh¤žâXâFaü±ÆÿðwÏÆÖk¤‡þ }ûÅx²¼ZeüÞ ñmέgŠ‹­=?i‹{«¸¥·%¦‚[«IuÙ›bibl¼çZÿƒy¿à¢Ÿ·O‹ôíSþ ûÿoñ¿Æ¯„öÚõž³«þÍÿ³·‡î¼ðÓÄ?Ù7º\Úlb´ð?€t ¦žð˨[|ÔüAkq+j>!‹TžïPœé_Ú[þžÿ‚~ü3ñ쟿dÿüoÿ‚‡üe2\[[ø{ö^ðeÖ«à©/¬ÚAsioã½N¹ñDj‚áÖ>xK⇧†uÛ¬,±M|ëâ¯Û¯þcý¼¼û!Á3ü%ÿâðG‰;ŸµŸŒ`Ô¼}á+;¡%œšÄZ‹ô? êúlÅnbÔ^ÊÃözøªé?d’i/.rËýþÇ_°_ìû|:á‡ì›ðCÁßü=,6)®êZM¬º‡Œ¼esa•£ãëj,ñmú–žhäÖõ{¸l庹|pÌÑW×´ü¨þÍßðkÁOøÒËöÿ‚±~Ð?à¤_´ö¨Ðê^&ƒÆž:ñ~ðWM¿ŽæKë=L²P¶ø‡âøzáÒ×LÓuOxwÀ—ºl §Kð³NÑe}?¤Ïƒ?³ÏÀoÙÓÃ6Þ øðcáwÁ ZÙXéñè_ < á¯iòÚéÉ"Y%ä>Ótÿ·É<Ÿi¾72Oqqq,Ï=ÄÒIìUøaÿ5ý¸?h¯Ù«þ ;ÿWý~ø¯Jо~Ù¿¿h/|~Ño¼)áÝv÷Äú€,þMá›m/ZÕôû½WÃYÉãît « ‹Áw¹’O²[y`¹ôQEQEQEQEWŽþÑ/×~~Ïÿü{á{˜ì¼Màƒ¿|_áÛÉ­­ïa´×|5à­oYÒ.e³ºŽ[[¸àÔ,­å{k˜¤·PÅ4o²ŸÏOø!_ícñ·öãÿ‚VþË_µíâ-;Å>(Âîÿ„Ç_Ò|;¢xSO¿ÿ„+öŒø»ðïÃßgÐ<;e§èÖe𯄴;)~ÇgÚ§¶’öã̺¹žWým¢Š(¢Š(¢Š(¢Š(¢¿~;þÛ_´7à¼ß°ÿì'áÏéVŸ³ÆßÙ#â÷ň~›ÂÞ»Õõ_xF?‹M¡ê6ž-¹°“ÄzUµ±ðž‰æiÚ~¡oesöy|ø_íoý Š( Š( Š( Š+áø)¿Çˆ¿³OüÛöÉý >êÖšÄÿƒß³ÏÄψ>Öo´­;]³Ó袾ÿ‚d|pø‹ûKÁ=¿coÚâæ­i®üOøÃû<ü3øƒãÍfÇJÓ´+=OÅ%ð垣«Þ[húE½¦™¦C=ÔÒÃþ_Ú3áÿý£@ñ–¡£_ý«Â¾-×,¢ûeœßežæ;Û.êÚ Sô/öwñ~»ñöøãß\Ç{âoüøeâÿ^Cmoe Þ»â_hšÎ¯s¬qZÚG>¡{q*[[E¼ â(cHÑT{Q@Q@Q@Q@øaÿÊý¸?h¯ÚWþ ;ÿ¨ý~.x¯J×~~Æ_¿gß|Ñl|)áÝ ÷Ãìþ:MâkmSZÒ4ûMWÄò^Ià˜nuû«û‹1i(¶’?µÜùŸ¹ôQEQEQEQE~Á{¿nÚ+öýŸÿd/þÍž+Ò¼#âo‹ŸðPÏ€?³ïŽ/5 xwÅÐê? ü{ௌZω´{k?iú®{w¨xCB–fÊ(u;5¶–+k˜ã¹dýÏ¢Š(¢Š(¢Š(¢Š(¢Šü0ÿ‚#þÜ´Wí©ÿÿ†ƒñ^•âŸøg_ø(gÆ¿Ù÷áWö_…<;áoì_…þ þÎÿ„G½ÿ„O°þÚ½µûL¾n³ªý«SºÈûEËíûŸEPEPEPEPÌ_¿l¯Ù»öhøû:ü%øÛñþ¯ˆ?µÄ …¿³ÿ‡ÿáñç‰?á>ñÝ«è‘Ï¡jøKÂúö‰á_-üE£í?ê^ÑÛí™MA…½ÑƒéÚþb¿à»ò‘Ÿø7_þÏÿ_ÿÒÏ‚•ý:ÐEPEPEPEÇ|DÖ/ü=ðÿÇZþ—*Á©è~ñ>±§LñG2C¦h·×¶r¼2«Å*ÇqnÑH­€u*H øÃÿý²>=þÞ¿ðLƒß´¿í/â}3Åÿ<_ãŒ>»®èþÐ|!asa቞$ðÖ…Z†¬tÝ"Ù­´6Ò e‚Ñ$¹‘yÙåvcû=@Q@GÄo†>0ø7ZøwñgÀ> øà[}“Ä> øáÆ>ÖíCX5_x†ËPÒoãIdn­%Ê«"muVÌïÄÿø5oöo¶ø§ãˆŸ±/í}û\ÿÁ=t銭«kž"ø!¯jž"¼ýæ£øŸâ‡Ä‹ØïØXßéék¦××ðM¿ø8ûö_ý¬|Mÿ Ûû]i2~Áÿ·/‡õíOÁ¾*ø#ñƒûgÃÞÕ¼S¢ñ·Št½ËBצ½3[Çð÷ÇShþ+[ˆÍ¦Žþ'*÷KýWå·üWþÝûÿÁP´ýOÚ{áTßðžøm Ãÿ~jPxâæŸ¦C¼7‡î|W¨Aâ/ ȲH#мY¥kúnŸ3µî¨µÐóû ~ÇZOü?Uÿ‚ýþß^;Ð,¼Y§~Ñðš~Çß°–©«X[_Åáû/‚ú&â/‡Þ4ðÃjÖ²Eaæj>ýžn¦Ôt¬Lº¯ü,M=uC{¨ê³'îÇüSûOÞþÓÿðGÿÙŽçÄ7·7ž8ø mâ/كƫváîlî~ ê+¥xÊãs•¹‹áÿÉ.’ö8n–êY÷,±yWW¥°×ìKð+þ åû5øöUý4ÝrÇáŸ.üO©YÝø«S¶×<_®ë/ñ&§âoZñN»k§i1êúœ·º£Y[N,-’ËE°Òt{h£²ÓmcOââ×íû\ÿÁ±ÿðTÏ|?ðüƒö€ÿ‚vþؾ3þÚº§À_‡z.ƒÄK_ë:gŒ4ßyZ¾³á][UðLj~éú^‘âýGû'UÓ<ñÁ¿ ô”×üIàkMSÄ·^ÿC:+ãïØgöìý›ࢿ³ÿ‡ÿi/ÙwÆâïk7÷º­a©Ú.‘ãøÃJŽÖmcÁ<ðḺ—ÃÞ(Ó-ïôûÙ- ÅÕ–¡¤êzV½¢j¦ƒ«ézçØ4QEþSß¶wü¤gþ uÿgÿû@éf‡E¶wü¤gþ uÿgÿû@éf‡E« Q@Q@Q@Q@Q@ÿðVÍFö_ø;+þݤÉs#i¶_~ j6–d& ÝSã—í_m¨\ ÆD—PidR’H+g “ý¼Wñýÿýøk{ð7þ ÃÿGÿ‚”jÉkð{Áßüû7üjñŸØƒiŸ¬µ/‰pxƒÂZ§ˆµ[춺V©¢xßâ¥Ðžc±»hâòöÖþÀkø‰ÿƒyµ;ø¿à½ðpŽÃ.™ûC|~Ôï-ÆR{ý#öÌø­k§\3”2«ZÛëz¤H©"Æâí̈ì‘ÿ¶ëËËM>ÒêþþêÚÆÂÆÚ{ËÛÛÉâ¶´³´¶‰¦¹ºº¹™’{kxQåžy]"Š$i$eE$!ðkg½kâ?Å_ø+oüËP³»ÿ„3öÑý±¼smðk[ºÓΉ¼/£|Nø©ñÆž)ÑÖH­¤»Ðõ]wân¡Gsogme·àÝKR÷º}í®žýÑEQEü~É¿±Wü-ÿ¸ømñoöCý‰¾þÌZ÷ÂMcãçþ+iß/ügð_W×üU¨øŸBð_ƒ£Õô-/âWÅí]ï¢xDÔtÝÄß -uë=BëV]V[Ø$²µµù÷ãoüïþ!ý¡$ºo‰þ-µ­õßÛnô‡ß¶7À™eIãI|/ðgÇ^ðãÚAqW¶Kû ¥Ä0Ïmo°Æëþ4Pù|ø[þ ÿ‚ÏAã¨> |eýÿeÚ§XŽîÒâòÚö¨ø©«G«ÛY ¾•ªêŸ ~/ü0ñMÖ˜‹ ‘ù+â¦ò®®"[…O Aý |Ð?àæÏÙÀ:ÂßÙÛþ ÇÿEø+ð÷LØöþøoÄ¿ iRÝ,1Û¾§©G¥~ÒÖòkÕÌpÇöýsV–ûXÔdS=ýõÌÌÒ벊þ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿE|ûQ~Ëðs×íiûJþÄ?µ7ÄoÙ«þ µ¢üAýügñÇ?´ü@ñ¾›àßjß ðõ¿Ä­?]øÕâMoXÓ­áæŠtˆ|/â\À×Z¡¼»¿Ú-—öñE/?ðºÿàîOú4/ø$Oþß¿ú((ÿ…×ÿrÑ¡Á"ð¦øÅÿÑA_Ô5ü¼ÿÂëÿƒ¹?èпà‘?øS|bÿè £þ_üÉÿF…ÿ‰ÿ›ãÿEPÔPòóÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚ø]ðw'ýü'ÿ oŒ_ýýCQ@ËÏü.¿ø;“þ þ ÿ…7Æ/þŠ ?áuÿÁÜŸôh_ðHŸü)¾1ôPWõ E(ßüeÿg|Oøyãφºÿì—ÿš³Ð¾!ø3ÅÖ®ôüY·Õ­tŸèwÚ£q¥Ï{ûJêpj0YêKe5Ý…í´w+Ïis¼/óŸìðSþ‘ÿ‚vþÉß c¯‚Ÿ³ü'Å ¾ÿÂuÿλñKÇ_5¿ßÂÀø“ãŠZÏöî§á?ŽÞ ðýÏÙ¼AãmVÏLþÏðÆ™äèöú}½×Ûob¹Ô.ÿ´Z(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(øñ÷ìÇÿ>üEý¿þÁG5¿Ù§þ ±kñ¿ö|ø?ゞ ð¶•ãÿAð«Sð¯×Åë«j'Ðîþ6_xº÷ÄãÆº¯ö}Ö•ãNˆÛéÿiÒ®ü«ŸµýÙÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWƒ~Ôzü_û[~ΟfOˆÿ²·üÇEðÇo‡>(øcâí_Á>3ø™¦ø»NÐåŒÿ_ôPòû.hðuì“û:|ý™>~ÊßðKkÀ~ø_á„uxÏâf¥âíG@𞙕§]øŽÿBý¡|7£]êóÛÀ{q¦hE”“h4ûd"1ï?ðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿE|'àÙþ}øuûüuÿ‚ŽhŸ³OübëãíðÁßÍ¥Zy¶ßdþܨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ âëöõø)ÿHÿÁD¿dïŠß±×ƿهþ “á†_?áÿ„›]ø[㯈'Žìá_üIðwÅ-û SñgÇox~Ûí> ðN•g©ÿhxcSó´{BÞ×ìW²ÛjŸF|8ñ—üðÃáç€þè²_üjóBøyàÏ øE»Ö!ëGW‡Å!ñÌík¥›;»ÚÞýåÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPWÁ¿ðP/Ùoþzÿ‚|<ø9ð×ãìÕÿÚð®…ðCöŒø{ûNøRïáOÄèz¶¡ã߆ºŒô Hñ þ/øÕã›;¿]ÙøçV—V°Ól4f{›}9ìõû¡¹†ïûx¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýðoì3û-ÿÁÏ_ðOïøi_øS³WükÄ¿ðÔß´gŽ?i߈?ð³~ xßYþÇñïþÍý³¤x7þ_^ þÏð…·Ùcþ̰Öÿá!ÖaÜÿj×ïr»·Š(ùyÿ…×ÿrÑ¡Á"ð¦øÅÿÑAGü.¿ø;“þ þ ÿ…7Æ/þŠ þ¡¨ åçþ_üÉÿF…ÿ‰ÿ›ãÿEðºÿàîOú4/ø$Oþß¿ú(+ú†¢€?—Ÿø]ðw'ýü'ÿ oŒ_ýÂëÿƒ¹?èпà‘?øS|bÿè ¯êŠþ^áuÿÁÜŸôh_ðHŸü)¾1ôPQÿ ¯þäÿ£Bÿ‚DÿáMñ‹ÿ¢‚¿¨j(øý¬f?ø9÷öÆøÓû|vø›û4ÿÁ64/~Ã/>5ü%Ó¼ ãÿižñНeð¼²éÿmŽûQ5ÅÄz‹¦é±ÎÒ­¦™al!y/~Ñ?ðy‡<1¨xsÃß°oì-ðUÔUb¶ñ÷€üað§Rñ>‚NTÜéöÿlï‰Þ ™—pv]WÁZÊ€%»e‘ÿ±:(ø ý¿àÛÏø*Æ­?â¿ÆÿÛ3ãÁ_‡_´'ƾ8ø—ãÍ7_Kêšî¥â;] ïÊöY¢€?(5ø$ç†u߆özñ_í¿ÿñgì´ÚbøjïöqÖ~3ü5‡Ãš·„ØÉðç^ø×¡üÑ¿kßøïGGðþ£á­oö‘Ô-5/Ü\hz¹Ódû8ýøUð«á¿Àï‡> øEðƒÁ^øsðËáîƒeáŸø'ÂzlNáÝOB–öVVꪻ™¤¸º¹”Ëw{=ÍýýÅÍíÍÅľEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQ_ÏÏíûa|_ý°?à«wüö`ø©âo~ø%ðvÚ;öòý >ɧÁñj&æçÂËàÙ×á_‰5];SÓ~k^(9ð¿ãØÚÞx»þ­röDzèw×åÔÀ? j+ùùÿ‚|2øåÿËýš|]ûxþÄ?¿i__þÍ‘è^9øÝû7~Ó´—ÆßÚ›áWÇÿƒzÖ™iñ2Õ/ÿhüXñ×ÂiÏâ½Æ üIáML‡FÕ¬õ/ êV‹Ãì_ìµûEü>ý®g?‚ß´×»©.|ñ»á߆¾!xy.ûv›½§Åq{ jŠV=kÃz§Û¼?­B«¶ [L½…K* ÷EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEÉx[ÇÞñÍÇ‹m<ã_ xÂïÀ-¼ðŽí|-â=Ä ñÖ¦iÞ¡à¯äÞ]Éá¿ØhÞ Ðu{Ïk+e¬ZéšÞ‘=šZjVRÌÖÑE|ÍñköÔýþx¢ÏÀÿ¿kOÙ›à¯u³gøCâ×Ç…Ÿ*ѵkŸµÇujöÞE£ùésE½fŒ°Ó4Vf‹­èÞ$Ò4ÏxwWÓ5ý[°µÕtmsE¿µÕt_L¾….lu-3R±–{+û Ëy#¸µ¼´ž[{ˆdIa‘ãecüíþÝŸ±íŸûkÁNþ 韲ßü ãÏüêËà_ì/ûë:Ÿ‡~x{[ø‘ðûâMÿÆ?ðPm3QÕõÿ‡GâçÃO ÁâÓàþ…i§ø¢îÓ[ÔßNº–Á ¤v¶î?£z+óöÿ‚vüCý–5Ûï‰?´íëûYþÝ?ot[ŸÙ뿼o©x{á'ƒô‹ÖÓßPoüÐ5›ßéöªÚe¢j^*ñ÷‹ø­à«É¤¶³ñ‡Ãox{Ç^»¸†8ešÞÛÄÔuM&y¢ŠâÞY"ŠíäHç…ÙBÊ…»ê(¢Š(¢Š(¢Š(®WÇ;ð?ÃøƒâįxSáï€ü'§M¬x§ÆÞ8ñ‘á?økI·*'Õ Ðü]âQs ËÓ<ØÁÔ(êj(¯äßáü+þ 9ûNxßö‰ý£>ÿÁrjÏÙËáWÿoø(“ìë¦xû↕à-áíÛûG|Ó´†Þ.ñÆËM7Á¾»Ñ<§ßÙè:WÃØ´}îîæ$²¿beþ²(¯™?dÏÙ–ËöSøOkðßþÇŸÚÄwzψ¼iñ‹öø¡¯üTøão^Ákk=åÞ§«ÊºW†ô;+;+=7@ðoƒ´ÂúŸi‘¦Íª]jº¶¥ôÝQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEüQÁüWñþ!ÿ‚úx£]޵}+âÅoY^2F÷hý¦µOi6‘\ÖH¡“FðVƒöˆ„’K+c)•­âkµüaÁ¼ qðþ`ÿ‚áü"ñ ¤šfµñJñgíáøonfÔü3ñ/ã7‚þ+¦£§ÆYÍí”Ð|jÒ¥·¦žÀØÜG¼0FðVë=Gþ Yÿ)·¾¶†îÿ`¿Úêù"¸d/4¿€~>Ôôë•V ¬µ K[ËiÍÄJ„2)–ßði‡õÁ¾ hú¤’KÃŸŠ¿ü¢¼³yÍý‘7Ä[Ç)ÌHñGÿµ xay.<¸bA©•moúOÿ–ñ~Ÿàø$×üƒYÔöýš÷ö-ý¢ü!ù¼ý¡ñáˆü¤aü¹w7ö¯‰l¶C´}¡öÁæCæyÉð·üÛðkZø=ÿ\ý˜¥ñ ”Úv­ñgWø¯ñ•¬®´‰¢øÇâ7ˆ-<z£,‰·àÃ~ ¶XÎ>ϪÄÒ¦Eþ…h¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Šø7ãçì[ñö†ñøƒöîý±>üÖt«=1?gÿ€ZßÁ¿ƒú¸U¶›®K/Åÿü›ö‘?ÛòÃ.§/ö_Æ=ëH½»¸B¼Ól Y/óÿÿ\_ßj¿ðLÚ'SÔïnõKQÿ‚…|[¿Ô5 û‰¯/¯ï¯?g¿Ùbâîööîá为»º¸’Iî.'’I§™ÞY]™õå_ÈüSÿ(²øùÿgÿñOÿY×öU Ú?ø-íß­Á9à›´?í-à£ø©g¤i?> µÍ­µí½—ʼnzµ·„ü;â+‹+Øæ°¾‡Á0ßj>;—M¿†[=Z? 6•q©zcjŸðH_Øûá÷ÀÿØàŽ©âéÞ7øåûM|!ðwÆïÚÏ⯎4áâOˆ?¾,|iðÆ›ã¿IñÄÞ%¶›Ä>)Ó´½C_—Âú.™¯‘meáý&ÆÛû*ÊVº‰¿?àôÍFöËþ WðRÚÒæH Õÿo/…v§òÊ/€ß´Þ­´À‚Lk©iz}àƒçZÄs€Aþš?d/ù4ßÙþÍßà§þ«_ Ðó»û-|UOø'üñWþ gá &Ñ?d/Ûo༵gìçðŠ"-|!ð7ã8ükÒ<£|p¼ø“ðÓã¿Ãï‹+ðçIÞÖüM¤hþ|VÓüAá_ ðÞœ<-ñ»Ãþ¹Ó °›YðŽ©©Ù& àŸµÏaÿ‚`ÿÁaà”~ ý”t+ü ÿ‚‹ê~þÑ¿³€4ëoü#}OÁWŸ €~9øWáÖ“åxWÀ~>Òõ¿Š÷—Þ2ñG…Ôl¼KqªÜÜɨXNuù}ð—þ ·ÚÓEý¼¿kÿs~ÕŸµ?€¼«|=ø!u§ü8Óþ |ýœü#â¹_‚ß"ñWÄ}sOñŠÆ§¬Yxâ'ÄŠŸ|c{ _CáËMSOÒl-íëõ€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€<#ö¥øÎß³‡ìÇûF~ÐË¡Éâfø ð#â÷ÆuðÜ&A7ˆáwÃÿøàhq¿z$ÕŽ†,ÅûÀ×gÍŠü.ÿƒ~¿hoÙþ =û5üJøùÁýOÅ_µ$>5µïÅϾð—Šè:=¯‡!ðûÀ-þÜÖeIµ}gþÏéZ6ý«ªÍK©j?cûeô¨’]M+( ø—ÿ‚­Åaÿÿ‚ÁþÂ_µÇìeimðà'íϪë^ýª?g¢hß üoÃÿ|:Ò¾#köÓ펃áÝjû¿<9­øbïDÒ¡mÆþ¾Õl!û7ˆ|G¦j¿Ý¥?>x“þ ÿ‚Óü4ñ7„mc¸ÿ‚bÁ+üM„üañÅÃx{ãçÇ]?ÄGþ%|8ø]{ñÅâk-K]ðÿ¼ â½_JxtÿxGº·ŠW[¹¹ñ€4í_ûN ¸¯üJøuñ.\|8ñÿ‚¾ [ø+ƾ&økã)üâ­ ÅpøKâ/‚¯¿³ýµ|!¤‰çâ7Ûdì x“I½Ôô_xëöÕ±´«ÿ‚¿þ ßéZ†¡â­ SÖtmâ]½¾•qðó\·ø_¯ß|qð—Ý_ðOßø'ïü2¯ü'¿¾;x÷þ3öøý£>ŪþÓ´Æ«eö¶ýŸÊŸIø9ðsIž(¿á^~Ïÿ<«}3ÁþÓ-ôïíoìëM_´†xt]Ã`¥4QE¿ðvìÏñWàwü‡áoĈÿ·?ísûNø£Æ¶7Ã?‡z΋ñG\øOà?„ønOƒÿ´‹ã:ÁÙçá?Á¿‡—ZäZ·‚6|JñEÔ‘\x›Âž ÓÄø‹â­Nþ +†¿´ðçöŸ†|I«ëì귾¾ñGˆ jzÍܯôçìAð þ ûaü&ñ·íðÁÿÿlŸ‡?þ9þо6Ô<ñóÀºÇÄÅÑüsñ?ãŒþ)üVðo€¼%ñó¯ð«ÁxëǺÝÔð_„|/¡ë±Ý[ø—ZoøƒQ¿ñV«ø%ÿŠÝÍ©~Ðð\Ï j;Ý/ÚàÕÚéWPA5£M¯x×öÆ°Ö ÑÉ}¢=BÏGÓm® œÉŠØ*ƾdÆOè÷À±íû0ø*Ïà—ìAûOüø-û9h’jQx#áŸÅØõ¾3xáf‘«ê7:­Î‰ðóÇžý¢?gkK»m>îþôhºŸÅßü]ñ”ºyñF±â»›{ë­Póûþ }ñïÇ¿ à®ðU_ø%U¶¿âO~ͳµ‡ÂO?³œ¾$Õõ?Ý|±ø·à‡.ñ×Á7ÄzÕö±¬Oàk/üP>økPÕd‡Áº„uÍ7I‚ÞÂìiúgô_þÄðO¯…Ÿ±)øÍã-+Å^5øËûBþÓ>9ÿ…™ûJ~ÑÿäÐäø‡ñgÆ*—+aoö i…|à ¥õý—€þøOFÓü?á-*é¬m…Û†º½(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ÉÏÛþ ¿¯üJýª~ ÿÁD¿doˆ>øûq|ðÞ©ðæÿPñ¿†ï|Iðcöø+®´ŸÚ¾:hþºÓ*|Wø÷ñö‡°ðF¹¦øŸIø|Ÿ~$| ýœt/‚ÞÔüG¦Øë:òé~ ø—â¹§Ñt{kÙZÿi%ïì׃|áo‡žð§€< éžðW¼7¡ø?ÁþÑ-c±Ñ¼9áo évº/‡ô"Ê "³Ó4}&ÊÓO°µˆíímâ‰TºJ(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¯ä þ ©ÿ”Y||ÿ³ÿø§ÿ¬ëû*×ôûK~Ä>8ý£ÆkýGRÑþ\jZO¥±ŠÜ4Ë6‰ðÓÅÞ3ñ+˜âç¶Ñn,Ò0÷K$¥?ðKÿ‹Þøñÿæý‡¾+øgS‡UÓüWû-ü7—?Ñ|M¡ø DðçŒôk…µy-â¿ðÿ‹ô}sAÔ­ávŽÛPÓn RDu÷S¢Hˆ²G"²::†GFYXee$2A‚5ùuáŸø%OÃw~6³ý¿i?Ú»ö ømñ^ÕðGÇ¿€ÿ‡Àù5ÉÃÜ_[üÔ~ÙEq)ŸNµ±–W·ü>ñ§Ã{ÿÛCþððO‹ü8­®ü=ÿ‚i~È^OŠºÍ¬shÚŒüIá׀|y«ªGjž$¹ñ/íeâ[[6ûR–×Â&¶D…4-Hé?ØE|£û$þÅ_³ßìOàßxOàW…5-CâŠï¾ |Yø“ã?k~?ø»ñ›â&ªÒK«x÷âÇÄ¿^j^)ñ¯‰µ æ¹®5ï°Ø=ÝÜz>Ÿ¦ÛÜË }]@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~8~ÔŸ$ý¹üoã_دá'Ç+/‚ß³·„ïgð¯í§ûIøgÆþðÿŒüGsþ“gâOÙö{Ôoäy­_j:–£}<—W·÷÷·_²Ì·7—·—2Ëquuq,“ÜO$’Ë#ÈìÄ÷GÇ?eÏø'oì‘ xGöiÑ~ é¾ðN§ðËàïÀ€ÞñŸ‡ôK/øÛâ¿Ä¯ ü;ð†4ϲÜêš®¡«ë¾*ñŠëæ«5ø ñ?Áü¡|@ø‡ð3Uðe÷‹<¯Yx—ÃgÄ:vû9xgZ»°´Ö´ë+Ö‹Lñ‘yæÛDÐßB˺¿¨Ê+ó×öÞý·¯¿g»ïþÏÿ³ÿí>?~ÝŸ­5øð u¬tm+F±™luÿõû–ãáÇìëðââUŸÄþ'cÕ¼_«G€|£âFI4ŸÐªù+ö}ýŒ¾~ÎÿhÿŽ¡ã_üeý¨þ%j>øñGâ®±¥x§Æ¶B±xàƒ5‹Cü øG¦‡Ò>xGxÚ5¤÷wz¾¯¯kW—z¬À‰—ßðLOÚkþ ÍâËø)ì‘­ÿÃXþÚ¾ Ò¼O}ÿ,øK¨èúo…´ÿÛ»Ã~0ñÏÄ?ê?³î— 7VŸ¾*ü2»’ÏNøCá/ ¬:<1áé>.°ñî5Û¿ˆŸº²Oímð7öÝøáOÚö|ñ_ü$Þñ7Úl/¬o펓âÿx¿I1Áâ‡?¼/<ሿìÿxwPËÂæßPÓî5QÒµ[ÿ¥kã_†ß°¿Á/ƒ¿µÇÆÛáTþ5øã/ÚÁV¾øáðÃÃõ–Ÿð+â‡tÝoOÕ4Ÿ%øx4i~:éÚm÷…Æú>·¥Zk^ñˆ¥ñ6…®xQ €ìª(¢€?/ø=[þQeðþÏÿágþ³¯íU_×í~~Ùð@/†_ðPi ý¬ÿà¡¿ðRïŠþðï‹ßÇ^ðçÄ?ÙCCðžƒâqc¬éVz­ž—á¿ØëI7wº^â gFÓ/µ‰õ=B×MÔo-Åãý¦w“ï/ÙÃöñ×ìó⿠뺇ü;öûý¡|3ám+QÒbøgûDø·ökñoƒµ¨ïtÛ>ÖóÄzǃeÿ‡ÿ5mGE’tÔ´»·øBÖ×ûMu+’ÊPçïþ •ðÒ÷öcÿƒ’¿àŽßðP=Sv‹ð‹ã5¦£û&x›ÅóÛ[ Eø¯«xwâ÷ýÃ]Õgo²iSxÓÂÿ´[-_‹w’ÛÁÞ$Ôtû™¿²/Fýnø×Æ>øwàßü@ñ–«m¡xCÀ¾×¼câ½rð•´Ñ¼7á*ï[×u[¦P̶Úv—cuw9PHŠ ÅyWí/û0|ý°þø—à?í!ðßAø£ð¿Å?fšÿÃúÚÜÃ>ŸªØ;K¤ø“ÃzÞ›=–»á_蓳\hž'ðæ£¦kšTÌíe}–U“âÁ(<-ñCÀ–?~;þÚß·ÏÇÿپٴè5ÙçâgÅÏ…¶Þñމ¦\Z\CáO‰¾üøûLüVð½×Øã‡WÒ>%üyñ\Zä/ Ö^úB’Føõÿˆüñž‰û(þÕÿ¶gô+ßÉûpþÓ:Ç‹üi¨Ø5¥Ö¯ðïáóë°Xøš)6Çúu÷ŽümñF²ð‹løz{Ëi¦·¿„Gýo×7àßxOáß„|1àøoCðo‚<áýžð†tË=Þðχôû}+BÐ4-O† /HÒ4ËKk ;O³‚kKH"‚Ò8ÕGI@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ùÿÖý°-?bø%ísñZÏÇ—ÿ¾#ø›á†¹ðwவáßÞxgÇ1|Yø·i7‚<3ªü>Õ´«í;\±ño‚àÕµˆvš®…w«áû?_xŠÚX›I2/ë¥yŸÅŸ_þøOþߎ¿¾|ð/ö®› ÿÂiñgÇžøsá?íÍfW‡HÑ¿á#ñ†«£hÿÚº¬Ñ¼Znö϶_J¬2²=ÚæÞòÞÞòÎâ«K¨b¹µº¶–9íîmçE– ‹yâgŠhf‰–H¥š9•ÑŠOå'üÇþ ð[þ ÷ð[áïÂ/‹¿¾"|.¸ø]ñ?ˆ^ñwÃÙ4««ˆî.´«_Ñõ_¶»Ñõ[-WG»qivRÛTÑuKk;»KÉ4ù5Yýø+ð›Âþ ü%øà/í_øA~ |2ðÂoÿojRë:çü"|-¥x?ßÛ:¼ÉÚ®«ý£YÿhêR¢K}yç]HŠò=2Š( Š( Š( Š( Šã¾!üAðOÂxÃâwÄŸé øðÿÃzÏ‹üiâÝ~í,t_xgÃöêzƱ©]>DV–66ÓO)Pò8O.(ä•‘ó?þ‹ûFx—ö¹ÿ‚nü$ý¥|Wâ?ø§QøËñ{öÐñ¦¨øÓV¼Öuû/ß~Û¿´d>ð¼—7·/i¥x'ÀÖþðo†ô+I#Ò|5á½Iðæ‡ke£iVp~°ÑEQEQEQEQEQEQEQEWÎzçí‡û$xgÇö? üIûRþÎ~ø§ªx¿Fø}¦|4×>7|3Ò|¨ø÷ÄZ¥¾‰áÿXø6ÿÄöþ"»ñ~»­]Úé7†­ôÙ5ST¹·Ó쬧»š8[èÊþ,ààŸ‚?>ÿÁa¿àÝ?‰žøYðÿÁ~/~ßö-ñWÆ^ð–‡áß|GŸÂÿ´ÇìW©x~óǦ‘eiuâGJ¾ñÇ‹®mu=fKÍAdñ¤Zå„äí:Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( á¯þ9ý”¾h?²ÂÚÜk¿õ¿Šúßísà…6¶)øÇñÄß <#àŸ|øÝâoiÞøI¬ø†ïáï®õÍoᯄoµm[Ã>ÓµMEôãÝÜÐÌñ×õ/ð“þ ÕðÃàßÄ_ |KÐÿhÛ÷Åú·….î¯,ü9ñoþ û`|^øuªIu§^i‰þ|Eø¿â/ø¦Ò(¯d¹µ´×´[û{]F=FÒöÊÚhÿ¿àôë ëÏø%gÁ‹K+»«}+öôøS©Ïoo4ðéÖ2|ý§tÈïoå‰,í$Ôµ?OK‹†Ž¾¿²´W7PG'ô™ûW|tñÁO…ß|gðößÃ>!×ø×Çž8ðåú^\éZf¡áÛ]{ZÒõßéÚ–~ø™ÿ/x/ãoÂØãßí×ðöÛý²¿g¿ˆ4ƒº›ðßàÏÆ7ðÂ/éß>7øáV½}­hÚ‹eâØ|Pt߈Òê–^%Ó7¦¹7€þx³\×l|¯éž)¸çŠïm®ì¼O¬jZ†¥ªiúÖµ›¨u ÅÔ!üúÿƒ£¿å·7ýÛ7þ¶ìû_¨ðO¿ù0¿ØþÍölÿÕ5àºþLàŠ~+ÿ‚ˆ|yý¿¿à¯±?Š?noÚ‹Æ¿ÿfßÚ3Oøuâ/ß>#ÞxÿâþƒàoƒŸÿi…žøiðžÙkøIã?Ú,4ï|Iø£áOZêvZ/ÁËý#ÃÚ5¿ˆüEáÿø ëßø-—ÄŸ‹?ðC¿ þÈÿ·oì½ñëöŸñ·.iÿ üý¢foÚö øÙûGøã_ƒ<[àˆ^9»¿Ò¯ÿho|V×~xÆÖÇᦷa¥ë5= DÓµ=oJÔ$ð–£c¥\iwÜwü‰ÿ)Mÿƒœ?ìÿôïýh¯Ûúø=[þQeðþÏÿágþ³¯íU@­Ú7ìñëö†ýŸîü{ûMþص¿‚?lŠ^_YÍû=þÑŸ¿g/‚ß²÷޵ý*[Cøðûà§ÂŸxkÁ¿¼3ðÖøéþÖõÚFø­âˆ-¦ëzΩs¤Ÿ KðÏø6¯þ ñ»þ ?ÿÛ·øûEjqøŸâïÁÏ^3ýž°ðGí™ñ‡þ Ñÿ2ý¬?cO€<}û=~ÿðO¨tß þп> _ØxgãŸíñóWñ‰ü5oà/|QžÃY¿ø[ð£EÖ<ã¨.5‡ÃFñð5Ôö>.±Ñ¼Olš6wüŠŽßðG>ÿ‚ˆ~Ç_ÿhï|:ø+ñ+áÆ‘ûQþËß´Ïíñ—ö§øsñgáÄh¿gÕ<;âÏÚ7Æß>'ü(ø…¤ø·[ð´&¯à?é¾k:·†5;;{Í/Wü‰ÿ‚-~Äß³wÃÿø,wüûöÿ‚€þ;8üNñŠ4³÷í!ð{áçÄ××þØ|Cø¬j¾)øhÿü7®›Çþø½ðïÄ~$ƒÃî„u5_´¿ƒ/Mþ©¾ Á6¿à_ üãO‰¿àž_ðNÿ xáç…)ð}톛á Ï{w}á}7S¶Ó4¯ÅñBñEìZ†¯ìtµÔä×ì@?hÿà»ß±ÂOÚSþ éûeüDø£®üfžoÿ±ßí ñ7Ážð·Ç‰þ øMã¿…? |oñ'À~%ñϯ x—Kð7ÄGAñn•¦_ÛIãXQŸgk´Cj¿™_ðnWìðÛãüö1øÃ®|výº<%®kWo'ð—ÂoÛÃö¯øGðšÎO þÕ_ô;X´„>+x{áæi¨Ûè°^ø†ÓMðõµ¿ˆµ›ÍcZÖc¼ÔõJæçõÃö¥ø™âÿÚ+þ-ûF|cñ„®|9ãߎ¿ðHŸ‹ß5ßYÙÞµÞƒâÿ‰ß±¯ˆ|S©øJ×O—ÎÔMΗ¬ësèÐYÉæÞ™`XÌŸ9üÑÿ‚$|tñìéÿ±xGã÷ÃË ëßþ~ÎÿðP/‰^ ðÿ‰b¾Õ1øqû^þÆ?|Yû(|qøáû<Þé? |[âY|!âKë-⇄g‡MÖ4Ÿø·Ä7¾ ñg†üWg¥ø}4Fm.ïUðý®‘½‘áÿÍø Ö«ûfürý¼ÿ೟³oÆoÛÛöø»ð ö=ý£<7ð^Î/ˆ¿¼O­ü[ñF›àÏ‹µ?€|!‡¾ CªZZüÒ¼Q¢xëUøÍ}ð‹Að_޼o¯é¿—Gñ—…´?êÚN»ý;þËÿ¿b߃Þ6øóð{öCø ðOà†¥ðûWømñÆÓà?Áü(ð½ÏŒüGáI|Yáø†÷À>Ðtßx×@ð6µ£xŽûK¾[KÃ~ñ÷…/_ɶñM°—ùµÿƒrµ­"ø+7üÃáÙµ;µýWöì›ZÓti.¡MRÿHÐ?iOÛ’Ç\ÔììYÅÅņ‘{âOÚjWQFÐÙÜkzT7—ÖË è—üÁ´·ìû4ø·öüýþ:üfoþÍ`ñïÆoÙ×öƒøÑñö–øñëॶ¡·4Ë­/ãw¼qâ߆¾+ð­…ä^-Ó|Uð£Æ^¸“DеíúÛQ»ÔôÛ½;ô÷öý²þÁ@ÿd/ÿµ×Âø&Ó|5ñ‡ÂCU¼ðÝåÔ7šƒ<_£ê¾ñׂu+˜$¹»ðŸŒ4}kDâ dÕm¬íµ{{x­oàZùþ ÓûBøöpÿ‚EþÝÞ#ñÖ«e`~%þÏ?g¯ØÜHÂóÄ;øÿá=cá_‡ô­&Ú<Ï{{h'xCà}·ÃKOÚGð&¹¤Ù¾¥â É Øx“à sc¯éLÿÁ•?ò‹/ŸöÿÿõeZ?lù\“þ ;ÿfñÿPoø)e~ŠÁEÿcüýƒj_ÚsáíÇûwh¿µgìõð#âgí ¤ü^Ö?joŠ:‡ƒ|W«üð^©ñWðçˆ?eصh¿d{_ ø¶ÇÃz†ýáÏöcj0Ik}Û1—É¿à”þ9ý¤ÿà´²ÇÿÛ?öºø£ñgà×­[NOü6øû)|[ø›û5ØüEñÃHíüñ‡ö‚øñwà߉< ñ¢þOüdмg¦x ág…<}áßü=ð—‡ÃYOëÚÎ¥ªÚ~¡ÿÁX¿å_ðRÏû0Û#ÿY×â5|ÿ¸ÿÊ ?aŸû¹Ÿýl?Ú €< þ uûSþп à´ðRø#ÏÄÿŒß¿h¯ƒ¿þø_öýŸ~ |iñ.¡ñâ×ü1â=#à¯}ðÓÄ?µùåñwl ²ý¡|=ke¨ø¾ç[Õá»ð†¡yý¯fá.>Hÿƒ¡-¾ ÞÁB?àÜÛO„ºŸ…ô_Š—_¶WŽ­¾ë>8Óµ_ÁZOÄþ6þÁñx3Sñ†“£ÝXêÚ§…ì+ü-´ÓüI2É4º†‰û5ü>×ô/Ù.Ã4§Oð¦¹ð?ÄVðiKo¦^ê:”Öë©7ÁÿðHOø)ŸÇ/‰_µí{ÿ¤ýºüEáŸþÙ_±^µ©\øwãG†<=aàËÚSà…¥þ‰e§ü@Ö<#§\Ãß-ìüUàÍo[Ó<;g§i:/Œ4áo¥Åáïj:‡ôA_ÆìðÏÄ_´§üwÿ?ý²¼—­ð'öwðfð/Äþ/€I&‰­|cÓ¾ |ø#{ðö èÑlï/tÝKá¯Äj¶ÐÍ4º3xwHKè£}VÂY?B¿i_ÛÓãGí[ÿhÐÿ࿲Ľ_àv…ð³áeçÇÛÃöŽð^áýK⿇¼ö^èß >ßxŸKñ'†<#â oþÃý;Å_ïü=«êÞG†cÒµß ^S¦ÿ‚ŽþÌ?b_Øóâßí•ûþÕßµÎñÃöUðV£ñËÄžý ¿iߎµÁ¯Žþøom?‰>)xSâ'Ã?Úâ´ ®¡à{ê¶Z¿Áx¾jzf£aio¥Ka²“MüKÐÿe/ƒ àìŸÚÀÿ·‡Á„ßþþß|]â¿Ù†OÚῃ¾#|;Õüw¨Úü,ñ‚Çâ.‰­øn߯þ›á_Äÿ…šX´U×ÖÛWÓ´û3>2²²¿þ¬ßþ Aÿ¯I?àšßðOèãYÝßö8ýgvo‡!UUA,Ä€$|ñÏâµÿ4ÿ‚=øWþ ðgö“ýª¿coé²ÅïÚ@Ò¿gŠ Ó®>'økÀwZž±á/‰B_j÷¾=ð‡„þÌ~7´øåñŸÂž"ñŸÅ½ÄúÕî¿ûI~Ð_>ø·JøÉãÅÓ|SªOð«áç€Å:‡€<+áχMâOx/Ç÷ž!O è_¼_5_€zçü'ö‘Õ¿e¿xSÀ³Õ÷ì_ûROð“ÃÞð>“ðçÀ‡ÁçáÏÄ¥°×üá-ÃKÑ,üãY¼aáMKI°·Ó¼K kº‰¬Äk +üÿ¸ÿÊ ?aŸû¹Ÿýl?Ú €?Qÿa†¿´ïÁßÙàwÃ/Û/ãƒñÿö˜ðw….tŸŠŸ|5i{m£ø¿R]X¸ÐÞ µ=3EÕ5›ÂsèÔ¼SªèÚF©ã OG¼ñV¥¥é÷ÚÌöpýoEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEóÏíSû*üýµ~øãöoý¤üañáÄKH5ï^]_é—PÞi—Öú¦‹®hzÞ‘uc¬è Ðõ[K]GJÖ4›Û[»iáòÙ嵚æÚœþÁ9|#ðAþXxö‘ýª?iþÎK ~Ï_h|+ñ„þßÙh§„´mnÊïá÷Á¿†ž3ø“â xWYÔ¼?àýsã§‹¾+j~³¸ûW†nt­^5(¿D¨ Ê_ø(wüÂ_ðR½Å_¾6~Øÿ¶ß€þxÒ/‰?gŸ‚ž1øá_…­ï‚5KM{FÔµâ¯ÙÇÇ_u)›Äzv—âK­?Sñõî€uÝ'JÔm4{9´Û3¤|ÿ‚~k?eÍOöWðgíÝûqê$:GÃÏ ü6ø±â¿~ͺïÆo‚^øpt;}3 u×ý™-üu¤k&‡†µé¾%øâ.µ.‹}~ºN¯¤jFÏR²ý¢€??fø ?ÃØûã?Åß_à ÿðRÏ |Cý¡xÏ]øWñãá]ÌÒ<³Ãሸ·º»Ñn{¿´xWÅ6ž#ð”æÿP’] 徺’\}öÓõMGÃsþÐÿµ?íYû`øwÁÚž‹­øoáßÇÍ{à†‡ðÎ=kÃWÖZ¯†õ_xöoøû?hŸnü?¬iöZîŽ>5AñÚËÄVZˆã·þÝÒô½FËïÚ(ó'ö’ÿ‚LþË?µ/ígáßÛ{â«ñ¿Ã¿´€> øoà—Â_ˆ þ.øƒáïÂ-3Ã^7ø‡ãˆügà¡áHìd½ñžµqñ3Ä^ñ^:ŸÆ~Ö!Ùk:g‰4Û›¶|2“ãÍ·„,|I¢hÚì¿ ¿áz?ÂÍzûKµÅ~ ×ì<û)¿\¨ =ø¯ðŸá§Ç_‡2øAñ‹Àþø“ðÃâ‡uáÏxÅÚ]¾±áïè×›L–—ö7*ÈZ)£†îÊî#î¨[Zê:}Å­ý¥µÌ_žß ¿à–z'À Ûü(ým¯ÛËàwìû§ÆÖZìýᯉ¿'ñ?Š|Uâ;ùµoø×Ç3ñ>¡«ø³Ç7ñN­qqªø›Æ+Öuëš„Ïs¨ê7·oñÿKý•¾þÑðUoø8ÇĚνñ á¯Å_„ðPë­Cá/Æïƒ¾+oüSøxÞ)ý¡?n»oé:f¥=޵áÏx;Æ–º.‹Œ¾üA𿌾øª] ÃºŽ¹á[í[Ã^¿Ò¿´ï‹~Õ¾'ü:ñ?€ô?Š?¾ jÞ"´µ¶³øŸð’_AñÂR[ê6wïyá‰~"ø+â/‚Òîî+I4»£¯x/^·:uõâÁoé¶½¶üZý˜à€ÿ ?cïŒÿ~=| ÿ‚ƒÿÁK<5ñö„ñ­¯ÿh½CâW칯éŸüKoâ½{Æs_øÿKÕdKˆ/.ïuÏø¶IµM!´}rÖßÅ~"·Òµ]95[’ÀLêðHÿ€ßþ-ü>øÕûbüYý¡¿oŸ|"Ôä×~èµWˆ>Éð“áïˆ%·´µoh¿~üø ð?Sñ“en¶|Yð÷Äz‰¸Š ׸kÛK‹_Õ*( ¿/¿à£ŸðKoÿÁM|%©|.øÉûVþØ? ~ø‹ÃþѼcðà?оxgá·µøÖçǺ'‹&~Éךߋ¼(lü'§Ãá­cHÔ?ck¿ Í ØÙøÁPizJh1Øi á]´È-K³h¿¨ ÿmŸØ7öoÿ‚€ü1Ñ~~Ñ~Õu(<âý+â'ÃOx7ÄZ—‚¾'|'ø‰¡oþÆñÏßè²G©hõü’-ö²ªéWâÚØCÀZÁ?—^Ò ðÇÇ¿Ûö¿ý©ü §F§Føñ£]ýŸô/ ZßÛE·IÕ|Imðöwø©ü\¹Ð®ã²Ö´{Žz¯Å ×ĺ^•ây4yüAa¤¿ ôPãüwþwû4Á-5ùõ_Ù¯ã·í™¨è:œ—·þ$øgñ#㆗«ü#ñoˆ¯tY|><_â_†Þðü-¨x®ÏLkhlµˆì-¤ˆéšCI¿ÙVñ§üïðÛâíYðïöàñüwþ «~Õ_ |;„>|c_‰Ÿ²v®øK‘ÁâÛY<5¥ézWìmcá ß[x÷ƶڶ“q¡Ïa­[ø«^‡W‚ö=Níeýþ¢€?4ÿiø'÷íSû?é³ÿo/Û³ÃþŸá¯Œ>|YÔüâÙ£ÃÞ-ý¡ü1ãˆÖË\ÿ…ŪÞ~ËÚÅ“]Í¢µï‡/†zWÃm"ûAÕuM?XÒµ1vÒ/ûÿÁ'<-ÿîøW¨ü øûgþÛúÿÁ”ðÄ?xá§Äÿ~ÎÞ#ðïÂoâG‰G‹õO‰ß gпf ë¶>>Ò&Ö|Sðþ;Ïx†çWð±swo5§êýøáOø7ßá·ÿkþܾÿ‚ŽÿÁOôÚ·â‡áø‡ñ†‰Ÿ²tÚÏ‹ü(ºo…4ˆ<5­è—_±µÇ„®ô+x.-7Io‹ 2O x~çO‚ÚëJ²žÐÚ'þ ­û1þÖÿe߉ߴή|lÕdÿ|nðO‚4Éá‹ßxÂoÞð„ÛŸ¶ÅDý±a_Ù‡öñð&ƒà/Ú[áÄ~0‡Á~"·ñŸÃhºÞ»à¯‰Ÿ ¼mdÐÉcã†ü#¨hþ.ðn½kqkerÒiZ¤VZŒº}‚ë:Œ6pBž?mÿì:Ö‹>3þÛ?·íðn(^Æïà¿Å_üÑ|)âMQ*Oᯈ^5ø%ðàÿÇ/ŠÞÔ-¥:~¿áÏŠ.ð짬üðE—Ä?ø×GѼ?/†|MuñàÅMOIÓ«é+¤|åÿÿÿ‚Fx[þ æü<ð?ÀïÛwöðñ_À†×~4½Ñ?fß‹ž5ý¼SðnæoÇâ[­Y.bÐf_üDÓm-üWâ‹ÿˆVø‡áÛñ¬QêZ•¾¥ew¬éš§ë…QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEÿÙ./Model/0000775000175000017500000000000012176660653011677 5ustar vborosvboros./Model/RotThermBondedInteraction.h0000664000175000017500000001067312176660653017137 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMBONDEDINTERACTION_H #define __ROTTHERMBONDEDINTERACTION_H // -- project includes -- #include "Model/RotThermPairInteraction.h" #include "Model/RotThermParticle.h" #include "Model/InteractionParam.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/vec3.h" #include "Model/IGParam.h" // -- I/O includes -- #include using std::ostream; /*! Interaction parameters for bonded interaction between thermal, rotational particles */ double calc_angle( double , double ) ; struct CRotThermBondedIGP : public AIGParam { CRotThermBondedIGP(); CRotThermBondedIGP( const std::string &name, double kr, double ks, double kt, double kb, double max_nForce, double max_shForce, double max_tMoment, double max_bMoment, double diffusivity, int tag ); double kr,ks,kt,kb ; double max_nForce, max_shForce,max_tMoment, max_bMoment; double diffusivity ; int tag; virtual std::string getTypeString() const { return "RotThermBonded"; } }; /*! Interaction between bonded, thermal, rotational particles */ class CRotThermBondedInteraction : public ARotThermPairInteraction { public: // types typedef CRotThermBondedIGP ParameterType; /** * Used by PIS to save/load check-point data for objects of this type. */ typedef BondedInteractionCpData CheckPointable; typedef double (CRotThermBondedInteraction::* ScalarFieldFunction)() const; typedef pair (CRotThermBondedInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotThermBondedInteraction::* VectorFieldFunction)() const; private: // protected: double m_dist; //!< current distance, cached from last calcForces() double m_min_r; double m_kr ; //!< spring constant double m_ks ; double m_kb ; double m_kt ; double m_diffusivity ; double m_max_nForce; // always >0 double m_max_shForce ; double m_max_tMoment ; double m_max_bMoment ; double m_nForce; // >0, pulling; <0 , compressing double m_shForce ; // always >0 double m_tMoment ; double m_bMoment ; Vec3 m_force; //!< current force, cached for E_pot calculation Vec3 m_moment ; Vec3 m_cpos; // ? int m_tag; public: CRotThermBondedInteraction(); CRotThermBondedInteraction(CRotThermParticle*,CRotThermParticle*,const CRotThermBondedIGP&); virtual ~CRotThermBondedInteraction(); static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static string getType(){return "RotThermBonded";}; int getTag() const; void setTag(int tag); void calcForces(); void calcHeatTrans() ; //void setBreak(double); bool broken(); //26/Mar added ! Vec3 getBondedVector1() const; Vec3 getBondedVector2() const; double getPotentialEnergy() const; double getNormalPotentialEnergy() const; double getShearPotentialEnergy() const; double getTwistPotentialEnergy() const; double getBendPotentialEnergy() const; double getCriterion() const; Vec3 getForce() const; virtual Vec3 getPos() const {return m_cpos;}; Vec3 getCentrePtDiff() const; Vec3 getInitialCentrePtDiff() const; Vec3 getInitialMidPoint() const; Vec3 getShearDiff() const; friend ostream& operator<<(ostream&,const CRotThermBondedInteraction&); friend class TML_PackedMessageInterface; virtual void saveCheckPointData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__BONDEDINTERACTION_H ./Model/RotThermParticle.cpp0000664000175000017500000003323212176660653015636 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/RotThermParticle.h" #include "Geometry/SimpleParticleData.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" CRotThermParticle::CRotThermParticle() : CRotParticleVi(),CThermParticle() { // m_global_id=-1; // flag=false; } CRotThermParticle::CRotThermParticle( const esys::lsm::SimpleParticleData &particleData ) : CRotParticleVi(particleData), CThermParticle(particleData.getRadius()) {// ???? } CRotThermParticle::CRotThermParticle(const CRotParticleVi &p) : CRotParticleVi(p), CThermParticle(p.getRad()) { } CRotThermParticle::CRotThermParticle(const CParticle &p) : CRotParticleVi(p), CThermParticle(p.getRad()) { } CRotThermParticle::CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn ) : CRotParticleVi(rad, mass, pos, vel, force, id, is_dyn), CThermParticle(rad) { } /*! Construct particle. Old and initial position are assumed to be identical to current position. \param rad radius \param mass mass \param pos current position \param vel current velocity \param force currently applied force \param id particle id \param quat particel quaternion \param inertRot inert of rotation \param moment currently applied tarque \param angvel current angular velocity */ CRotThermParticle::CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion & quat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2 ) : CRotParticleVi( rad, mass, pos, vel, force, id, quat, inertRot, moment, angvel, angvel_t ), CThermParticle( temperature, temperature_ini, Cp, heat_frict, heat_trans, therm_expansion0, therm_expansion1, therm_expansion2, rad ) { } CRotThermParticle::CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion & quat, const Quaternion & initquat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2 ) : CRotParticleVi( rad, mass, pos, oldpos, initpos, vel, force, id, quat, initquat, inertRot, moment, angvel, angvel_t ), CThermParticle( temperature, temperature_ini, Cp, heat_frict, heat_trans, therm_expansion0, therm_expansion1, therm_expansion2, rad ) { } /*! Pack a CParticle into a TML packed message \param p the particle \todo BasicParticle data should be handled by pack */ template<> void TML_PackedMessageInterface::pack(const CRotThermParticle& p) { append(p.m_tag); append(p.m_pos.X()) ; append(p.m_pos.Y()) ; append(p.m_pos.Z()) ; append(p.m_oldpos.X()); append(p.m_oldpos.Y()); append(p.m_oldpos.Z()); append(p.m_initpos.X()); append(p.m_initpos.Y()); append(p.m_initpos.Z()); append(p.m_circular_shift.X()); append(p.m_circular_shift.Y()); append(p.m_circular_shift.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_force.X()); append(p.m_force.Y()); append(p.m_force.Z()); append(p.m_rad); append(p.m_mass); // append(p.m_global_id); // wyc added ! append(p.m_inertRot); append(p.m_moment.X()) ; append(p.m_moment.Y()) ; append(p.m_moment.Z()) ; append(p.m_angVel.X()) ; append(p.m_angVel.Y()) ; append(p.m_angVel.Z()) ; append(p.m_quat.return_sca()) ; append(p.m_quat.return_vec().X()) ; append(p.m_quat.return_vec().Y()) ; append(p.m_quat.return_vec().Z()) ; append(p.m_initquat.return_sca()) ; append(p.m_initquat.return_vec().X()) ; append(p.m_initquat.return_vec().Y()) ; append(p.m_initquat.return_vec().Z()) ; append(p.m_angVel_t.X()) ; append(p.m_angVel_t.Y()) ; append(p.m_angVel_t.Z()) ; append(p.m_temperature); append(p.m_temperature_ini); append(p.m_Cp) ; append(p.m_heat_frict); append(p.m_heat_trans); append(p.m_therm_expansion0); append(p.m_therm_expansion1); append(p.m_therm_expansion2); append(p.m_rad_ini); append(p.m_global_id); // original one here } /*! Unpack a CParticle from a TML packed message \param p the particle */ template<> void TML_PackedMessageInterface::unpack(CRotThermParticle& p) { const int numElems = 47 ; //???? double db[numElems] ; p.m_tag=pop_int(); pop_doubles(db, numElems); p.m_pos = Vec3(db[0],db[1],db[2]) ; p.m_oldpos = Vec3(db[3],db[4],db[5]) ; p.m_initpos = Vec3(db[6],db[7],db[8]) ; p.m_circular_shift = Vec3(db[9],db[10],db[11]) ; p.m_vel = Vec3(db[12],db[13],db[14]) ; p.m_force = Vec3(db[15],db[16],db[17]) ; p.m_rad = db[18]; p.m_mass = db[19]; p.m_div_mass = 1.0/p.m_mass; p.m_inertRot = db[20]; p.m_div_inertRot = (p.m_inertRot!=0.0) ? 1.0/p.m_inertRot : 0.0; p.m_moment = Vec3(db[21],db[22],db[23]); p.m_angVel = Vec3(db[24],db[25],db[26]); p.m_quat = Quaternion(db[27],Vec3(db[28],db[29],db[30])); p.m_initquat = Quaternion(db[31],Vec3(db[32],db[33],db[34])); p.m_angVel_t = Vec3(db[35],db[36],db[37]) ; p.m_temperature = db[38] ; p.m_temperature_ini = db[39] ; p.m_Cp = db[40]; p.m_heat_frict = db[41]; p.m_heat_trans= db[42]; p.m_therm_expansion0 =db[43] ; p.m_therm_expansion1 =db[44] ; p.m_therm_expansion2 =db[45] ; p.m_rad_ini = db[46] ; p.m_global_id=pop_int(); } map CRotThermParticle::generateFields(ParallelParticleArray* particles) { map res; return res; } CRotThermParticle::exchangeType CRotThermParticle::getExchangeValues() { return exchangeType( m_pos - m_circular_shift, m_initpos - m_circular_shift, m_vel, m_angVel, m_angVel_t, m_quat, m_temperature, m_temperature_ini ); } /*! Set pos, vel and angular vel from exchangeType \param E the exchanged values */ void CRotThermParticle::setExchangeValues(const exchangeType& E) { m_pos = E.m_pos + m_circular_shift; m_initpos = E.m_initPos + m_circular_shift; m_vel = E.m_vel; m_angVel = E.m_angVel; m_angVel_t = E.m_angVel_t; m_quat = E.m_quat; m_temperature= E.m_temperature; m_temperature_ini= E.m_temperature_ini; } template<> void TML_PackedMessageInterface::pack(const CRotThermParticle::exchangeType& p) { append(p.m_pos.X()); append(p.m_pos.Y()); append(p.m_pos.Z()); append(p.m_initPos.X()); append(p.m_initPos.Y()); append(p.m_initPos.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_angVel.X()); append(p.m_angVel.Y()); append(p.m_angVel.Z()); append(p.m_angVel_t.X()); append(p.m_angVel_t.Y()); append(p.m_angVel_t.Z()); append(p.m_quat.return_sca()); append(p.m_quat.return_vec().X()); append(p.m_quat.return_vec().Y()); append(p.m_quat.return_vec().Z()); append(p.m_temperature) ; append(p.m_temperature_ini) ; } /*! Unpack an exchangeType from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(CRotThermParticle::exchangeType& p) { const int numDoubles = 21 ; double db[numDoubles]; pop_doubles(db, numDoubles); p.m_pos = Vec3(db[0],db[1],db[2]); p.m_initPos = Vec3(db[3],db[4],db[5]); p.m_vel = Vec3(db[6],db[7],db[8]); p.m_angVel = Vec3(db[9],db[10],db[11]); p.m_angVel_t = Vec3(db[12],db[13],db[14]); p.m_quat = Quaternion(db[15],Vec3(db[16],db[17],db[18])); p.m_temperature = db[19] ; p.m_temperature_ini = db[20] ; } CRotThermParticle::ScalarFieldFunction CRotThermParticle::getScalarFieldFunction(const string& name) { CRotThermParticle::ScalarFieldFunction sf; if(name=="id"){ sf=&CRotThermParticle::getIDField; } else if(name=="sigma_xx_2d"){ sf=&CRotThermParticle::sigma_xx_2D; } else if(name=="sigma_xy_2d"){ sf=&CRotThermParticle::sigma_xy_2D; } else if(name=="sigma_yy_2d"){ sf=&CRotThermParticle::sigma_yy_2D; } else if(name=="sigma_d"){ sf=&CRotThermParticle::sigma_d; } else if(name=="e_kin"){ sf=&CRotThermParticle::getKineticEnergy; } else if(name=="radius"){ sf=&CRotThermParticle::getRad; } else if(name=="temperature"){ sf=&CRotThermParticle::getTemperature; } else { sf=NULL; cerr << "ERROR - invalid name for particle scalar access function" << endl; } return sf; } CRotThermParticle::VectorFieldFunction CRotThermParticle::getVectorFieldFunction(const string& name) { CRotThermParticle::VectorFieldFunction sf; if(name=="displacement"){ sf=&CRotThermParticle::getTotalDisplacement; } else if(name=="velocity"){ sf=&CRotThermParticle::getVel; } else if(name=="ang_velocity"){ sf=&CRotThermParticle::getAngVelNR; } else if(name=="position"){ sf=&CRotThermParticle::getPos; } else if(name=="force"){ sf=&CRotThermParticle::getForce; } else if(name=="anglevector"){ sf=&CRotParticleVi::getAngVector; } else { sf=NULL; cerr << "ERROR - invalid name for particle vector access function" << endl; } return sf; } // used in 2D to output rotated angle /* Vec3 CRotParticleVi::getAngVector() const { double half_cos, half_sin,s_in, c_os ; Vec3 AngVector ; half_sin = getQuat().return_vec().Z() ; half_cos = getQuat().return_sca(); s_in = 2.0*half_cos*half_sin ; c_os = half_cos*half_cos -half_sin*half_sin ; AngVector = Vec3(getRad()*c_os,getRad()*s_in,0.0) ; return AngVector ; } */ //3D case: direction--- q1,q2,q3, size --- angle /* Vec3 CRotParticleVi::getAngVector() const { double half_cos, half_sin, c_os, angle ; Vec3 AngVector,direction ; half_cos = getQuat().return_sca(); half_sin = sqrt(abs(1-half_cos*half_cos)); c_os = half_cos*half_cos -half_sin*half_sin ; if(c_os>=1.0) angle =0.0; else angle = acos(c_os); direction = Vec3(getQuat().return_vec().X(),getQuat().return_vec().Y(),getQuat().return_vec().Z() ) ; if(direction.norm()==0.0) direction = Vec3(0.0,0.0,0.0) ; else direction = direction/direction.norm() ; AngVector = angle*direction ; return AngVector ; } */ /*! set circular shift vector \param cv the circular shift vector */ void CRotThermParticle::setCircular(const Vec3& cv) { CRotParticleVi::setCircular(cv); } /** * Save check-point data. */ /*void CRotThermParticle::saveCheckPointData(std::ostream& oStream) { CParticle::saveCheckPointData(oStream); const char delim = ' '; oStream << delim << getQuat() << delim << getAngVel(); } void CRotThermParticle::loadCheckPointData(std::istream &iStream) { CParticle::loadCheckPointData(iStream); iStream >> m_quat; iStream >> m_angVel_t; } */ void CRotThermParticle::zeroHeat() { m_heat_frict = 0.0 ; m_heat_trans = 0.0 ; } void CRotThermParticle::applyHeatTrans(const double heat_trans) { m_heat_trans += heat_trans ; } void CRotThermParticle::applyHeatFrict(const double heat_frict) { m_heat_frict += heat_frict ; } void CRotThermParticle::integrateTherm(double dt) { m_temperature += m_heat_frict/(getMass()*getCp()) + dt*m_heat_trans ; } void CRotThermParticle::integrate(double dt) { CRotParticleVi::integrate(dt) ; } void CRotThermParticle::thermExpansion() { #if 0 /* * non-linear expansion. */ m_rad = m_rad_ini*( 1.0 + m_therm_expansion0 + m_therm_expansion1*(m_temperature- m_temperature_ini) + m_therm_expansion2* (m_temperature- m_temperature_ini)* (m_temperature- m_temperature_ini) ) ; #else /* * linear expansion. */ m_rad = m_rad_ini* ( 1.0 + m_therm_expansion1*(m_temperature- m_temperature_ini) ); #endif } ostream& operator<<(ostream& ost, const CRotThermParticle& CP) {//???? ost << "--CParticle " << CP.m_global_id << " --\n"; ost << "Radius : " << CP.m_rad << " Mass : " << CP.m_mass << "\n"; ost << "Position : " << CP.m_pos << "\n"; ost << "Velocity : " << CP.m_vel << "\n"; ost << "Force : " << CP.m_force << "\n"; return ost; } ./Model/BCorner2DInteraction.cpp0000664000175000017500000000745612176660653016337 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "BCorner2DInteraction.h" // -- Project includes -- #include "Foundation/vec3.h" #include "tml/message/packed_message_interface.h" #include "console.h" /*! default constructor */ BCorner2DInteraction::BCorner2DInteraction() { m_p=NULL; m_corner=NULL; m_pid=-1; m_cid=-1; } /*! constructor with parameters \param p a pointer to the particle \param c a pointer to the corner \param param the interaction parameters \param iflag */ BCorner2DInteraction::BCorner2DInteraction(CParticle* p,Corner2D* c,BMesh2DIP param,bool iflag) { m_p=p; m_corner=c; m_k=param.k; m_break=param.brk*m_p->getRad(); // setup anchor point coefficients int m_ne=m_corner->getNEdges(); if (m_ne==1){ // single edge case console.Critical() << "Signle Edge Case not implemented\n"; } else if (m_ne==2){ // two edge (normal) case Vec3 n1=m_corner->getEdgeNormal(1); Vec3 n2=m_corner->getEdgeNormal(2); Vec3 p=m_p->getPos()-m_corner->getPos(); k1=(n2.Y()*p.X()-n2.X()*p.Y())/(n1.X()*n2.Y()-n1.Y()*n2.X()); k2=(n1.Y()*p.X()-n1.X()*p.Y())/(n2.X()*n1.Y()-n2.Y()*n1.X()); // check Vec3 check=k1*n1+k2*n2; console.XDebug() << "BCorner2DInteraction check: " << check-p << "\n"; // cout << "BCorner2DInteraction check: n1,n2,p,k1,k2 [" << n1 << "] [" << n2 << "] [" << p << "] , " << k1 << " , " << k2 << " [" << check-p<< "]\n"; } else { console.Critical() << "ERROR: Corner appears to have 0 Edges\n"; } m_dist=0.0; // inital distance is always 0.0 ! m_pid=m_p->getID(); m_cid=m_corner->getID(); } /*! calculate & apply forces */ void BCorner2DInteraction::calcForces() { // get number of adjacent edges int m_ne=m_corner->getNEdges(); // transform anchor point to world coords Vec3 ap_global; if(m_ne==1){ } else if (m_ne==2){ ap_global=m_corner->getPos()+k1*m_corner->getEdgeNormal(1)+k2*m_corner->getEdgeNormal(2); } // get dist between anchor and particle const Vec3 D=ap_global-m_p->getPos(); m_dist=sqrt(D*D); // calc force Vec3 force=D*m_k; Vec3 pos=m_p->getPos(); // apply force m_p->applyForce(force,pos); if(m_ne==1){ } else if (m_ne==2){ Vec3 hf=force*(-0.5); m_corner->applyForceToEdge(1,hf); m_corner->applyForceToEdge(2,hf); } } /*! return if the interaction is broken, i.e. the distance between particle and anchor point exceeds breaking distance, i.e. relative breaking distance x particle readius */ bool BCorner2DInteraction::broken() { return (m_dist>m_break); } /*! Pack a BCorner2DInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const BCorner2DInteraction& I) { append(I.m_k); append(I.m_dist); append(I.m_break); append(I.k1); append(I.k2); append(I.getCid()); append(I.getPid()); } /*! Unpack a BCorner2DInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(BCorner2DInteraction& I) { I.m_k=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.k1=pop_double(); I.k2=pop_double(); I.m_cid=pop_int(); I.m_pid=pop_int(); } ./Model/TriMesh.h0000664000175000017500000000535312176660653013431 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TRIMESH_H #define __TRIMESH_H //--- TML includes --- #include "tml/comm/comm.h" // -- Project includes -- #include "Geometry/Triangle.h" #include "Geometry/Edge.h" #include "Geometry/Corner.h" #include "Model/MeshData.h" #include "Foundation/vec3.h" // -- STL includes -- #include #include #include using std::vector; using std::multimap; using std::map; using std::string; // -- IO includes --- #include using std::ostream; /*! \class TriMesh \brief class for a triangle mesh \author Steffen Abe $Revision$ $Date$ */ class TriMesh { private: vector m_triangles; vector m_edges; vector m_corners; multimap m_triangle_by_node_id; multimap m_edge_by_node_id; map m_corner_by_id; map m_tri_index_by_id; public: // types typedef vector::iterator triangle_iterator; typedef vector::iterator edge_iterator; typedef vector::iterator corner_iterator; // functions TriMesh(); virtual ~TriMesh() { } void LoadMesh(const vector&,const vector&); void moveNode(int,const Vec3&); void translateBy(const Vec3 &translation); triangle_iterator triangles_begin(){return m_triangles.begin();}; triangle_iterator triangles_end(){return m_triangles.end();}; edge_iterator edges_begin(){return m_edges.begin();}; edge_iterator edges_end(){return m_edges.end();}; corner_iterator corners_begin(){return m_corners.begin();}; corner_iterator corners_end(){return m_corners.end();}; Triangle* getTriangleById(int); bool hasMovedBy(double); void resetCurrentDisplacement(); void zeroForces(); virtual void writeCheckPoint(ostream&,const string&) const; virtual void loadCheckPoint(istream&); // triangle data access functions template void forAllTrianglesGet(P&,typename P::value_type (Triangle::*rdf)() const); template vector > forAllTrianglesGetIndexed(P (Triangle::*rdf)() const); }; #include "TriMesh.hpp" #endif // __TRIMESH_H ./Model/LocalDamping.hpp0000664000175000017500000001121412176660653014741 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_LOCALDAMPING_HPP #define MODEL_LOCALDAMPING_HPP #include "Model/LocalDamping.h" /*! Construct a local damping "interaction" for a particle \param P the particle \param visc the damping coefficient \param dt the time step */ template CLocalDamping::CLocalDamping(T* P,double visc, double dt) { m_p=P; m_visc=visc; m_dt=dt; m_force=Vec3(0.0,0.0,0.0); } /*! Construct a local damping "interaction" for a particle \param P the particle \param param the parameters */ template CLocalDamping::CLocalDamping(T* P,const CLocalDampingIGP& param) { m_p=P; m_visc=param.getVisc(); m_dt=param.getTimeStep(); m_force=Vec3(0.0,0.0,0.0); } /*! Construct a local damping "interaction" for a particle \param P the particle \param param pointer to the parameters */ template CLocalDamping::CLocalDamping(T* P,CLocalDampingIGP* param) { m_p=P; m_visc=param->getVisc(); m_dt=param->getTimeStep(); m_force=Vec3(0.0,0.0,0.0); } /*! destructor */ template CLocalDamping::~CLocalDamping() {} template void CLocalDamping::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate the local damping force. */ template void CLocalDamping::calcForces() { m_E_diss=0.0;// zero dissipated energy Vec3 v=m_p->getVel(); Vec3 frc=m_p->getForce(); double dampFx, dampFy, dampFz; dampFx = fabs(frc.X()); if (v.X() < 0) { dampFx *= -1.; } if (v.X() == 0) { dampFx = 0.0; } dampFy = fabs(frc.Y()); if (v.Y() < 0) { dampFy *= -1.; } if (v.Y() == 0) { dampFy = 0.0; } dampFz = fabs(frc.Z()); if (v.Z() < 0) { dampFz *= -1.; } if (v.Z() == 0) { dampFz = 0.0; } m_force=-1.0*m_visc*Vec3(dampFx, dampFy, dampFz); m_p->applyForce(m_force,m_p->getPos()); m_E_diss=m_visc*m_force.norm()*v.norm()*m_dt; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ template typename CLocalDamping::ScalarFieldFunction CLocalDamping::getScalarFieldFunction(const string& name) { typename CLocalDamping::ScalarFieldFunction sf; if(name=="dissipated_energy"){ sf=&CLocalDamping::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ template typename CLocalDamping::CheckedScalarFieldFunction CLocalDamping::getCheckedScalarFieldFunction(const string& name) { typename CLocalDamping::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ template typename CLocalDamping::VectorFieldFunction CLocalDamping::getVectorFieldFunction(const string& name) { typename CLocalDamping::VectorFieldFunction vf; if (name=="force"){ vf=&CLocalDamping::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! return the amount of energy dissipated during the last time step */ template double CLocalDamping::getDissipatedEnergy() const { return m_E_diss; } template Vec3 CLocalDamping::getForce() const { return m_force; } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ template bool CLocalDamping::hasTag(int tag,int mask) const { int tag1=m_p->getTag(); return ((tag1 & mask)==(tag & mask)); } /*! return a vector of all particle IDs */ template vector CLocalDamping::getAllID() const { vector res; res.push_back(m_p->getID()); return res; } #endif ./Model/BondedInteractionCpData.cpp0000664000175000017500000000551612176660653017062 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BondedInteraction.h" #include "Model/BondedInteractionCpData.h" #include "Model/RotBondedInteraction.h" #include "Model/RotThermBondedInteraction.h" BondedInteractionCpData::BondedInteractionCpData() : m_p1Id(-1), m_p2Id(-1), m_tag(-1) { } BondedInteractionCpData::BondedInteractionCpData(const CBondedInteraction &bondedInteraction) : m_p1Id(bondedInteraction.getPairID().first), m_p2Id(bondedInteraction.getPairID().second), m_tag(bondedInteraction.getTag()) { } BondedInteractionCpData::BondedInteractionCpData(const CRotBondedInteraction &bondedInteraction) : m_p1Id(bondedInteraction.getPairID().first), m_p2Id(bondedInteraction.getPairID().second), m_tag(bondedInteraction.getTag()) { } BondedInteractionCpData::BondedInteractionCpData( const CRotThermBondedInteraction &bondedInteraction ) : m_p1Id(bondedInteraction.getPairID().first), m_p2Id(bondedInteraction.getPairID().second), m_tag(bondedInteraction.getTag()) { } BondedInteractionCpData::BondedInteractionCpData( ParticleId particle1Id, ParticleId particle2Id, InteractionTag interactionTag ) : m_p1Id(particle1Id), m_p2Id(particle2Id), m_tag(interactionTag) { } void BondedInteractionCpData::set(const CBondedInteraction &bondedInteraction) { m_p1Id = bondedInteraction.getPairID().first; m_p2Id = bondedInteraction.getPairID().second; m_tag = bondedInteraction.getTag(); } void BondedInteractionCpData::set(ParticleId particle1Id, ParticleId particle2Id, InteractionTag interactionTag) { m_p1Id = particle1Id; m_p2Id = particle2Id; m_tag = interactionTag; } BondedInteractionCpData::ParticleId BondedInteractionCpData::getP1Id() const { return m_p1Id; } BondedInteractionCpData::ParticleId BondedInteractionCpData::getP2Id() const { return m_p2Id; } BondedInteractionCpData::InteractionTag BondedInteractionCpData::getTag() const { return m_tag; } void BondedInteractionCpData::saveCheckPointData(std::ostream &oStream) { const char delim = ' '; oStream << m_p1Id << delim << m_p2Id << delim << m_tag; } void BondedInteractionCpData::loadCheckPointData(std::istream &iStream) { iStream >> m_p1Id >> m_p2Id >> m_tag; } ./Model/ECornerInteraction.h0000664000175000017500000000303012176660653015601 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ECORNERINTERACTION_H #define __ECORNERINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Corner.h" #include "Model/Particle.h" #include "Model/ETriMeshIP.h" /*! \class ECornerInteraction \brief unbonded elastic interaction between a Corner in a TriangleMesh and a particle \author Steffen Abe $Revision$ $Date$ */ class ECornerInteraction { private: CParticle *m_p; Corner* m_corner; double m_k;//!< spring constant /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: ECornerInteraction(); ECornerInteraction(CParticle*,Corner*,ETriMeshIP,bool iflag=true); virtual ~ECornerInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); }; #endif //__ECORNERINTERACTION_H ./Model/ElasticInteraction.h0000664000175000017500000000523512176660653015641 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ELASTICINTERACTION_H #define __ELASTICINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" /*! \brief Interaction group parameters for CElasticInteractionGroups */ class CElasticIGP : public AIGParam { protected: public: double m_k; bool m_scaling; CElasticIGP(); CElasticIGP(const std::string&,double,bool scaling=true); virtual void packInto(CVarMPIBuffer*) const; void setSpringConst(double k){m_k=k;}; double getSpringConst() const{return m_k;}; virtual std::string getTypeString() const {return "Elastic";} friend ostream& operator<<(ostream&,const CElasticIGP&); }; /*! \class CElasticInteraction \brief Elastic Interaction between free particles \author Steffen Abe $Revision$ $Date$ */ class CElasticInteraction : public APairInteraction { public: typedef double (CElasticInteraction::* ScalarFieldFunction)() const; typedef pair (CElasticInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CElasticInteraction::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); private: double m_k; //!< spring constant Vec3 m_force; //!< caching force for E_pot Vec3 m_cpos; bool m_scaling; //!< toggles scaling of elastic properties by particle size public: typedef CElasticIGP ParameterType; CElasticInteraction(CParticle*,CParticle*,const CElasticIGP&); virtual ~CElasticInteraction(){}; virtual Vec3 getPos() const {return m_cpos;}; double getPotentialEnergy() const; virtual void calcForces(); Vec3 getForce() const; friend ostream& operator<<(ostream&,const CElasticInteraction&); // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__ELASTICINTERACTION_H ./Model/SoftBWallInteraction.h0000664000175000017500000000303112176660653016102 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SOFTBWALLINTERACTION_H #define __SOFTBWALLINTERACTION_H #include "WallInteraction.h" #include "Wall.h" /*! \class CSoftBondedWallInteraction \brief bonded elastic interaction between a particle and a wall with different spring constants in the normal and shear directions \author Steffen Abe $Revision$ $Date$ */ template class CSoftBondedWallInteraction : public AWallInteraction { protected: double m_normalK,m_shearK; //!< directional spring constants public: CSoftBondedWallInteraction(); CSoftBondedWallInteraction(T*,CWall*,double,double,bool,bool); virtual ~CSoftBondedWallInteraction(){}; virtual void calcForces(); virtual Vec3 getForce(); virtual void setPP(const vector){}; virtual double getStiffness(){return m_normalK;}; }; #include "Model/SoftBWallInteraction.hpp" #endif //__SOFTBWALLINTERACTION_H ./Model/ElasticInteractionGroup.cpp0000664000175000017500000000215212176660653017204 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ElasticInteractionGroup.h" #include "console.h" #include //---------------------------------------- // CElasticIGP member functions //---------------------------------------- void CElasticIGP::packInto(CVarMPIBuffer* B) const { AIGParam::packInto(B); B->append(m_k); } ostream& operator<<(ostream& ost,const CElasticIGP& B) { ost << "CElasticIGP\n"; ost << "Spring Constant : " << B.m_k << endl; return ost; } ./Model/IGParam.cpp0000664000175000017500000000167112176660653013670 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/IGParam.h" AIGParam::AIGParam(const std::string &name) : m_name(name) { } AIGParam::~AIGParam() { } void AIGParam::packInto(CVarMPIBuffer* B) const { B->append(m_name.c_str()); } void AIGParam::setName(const std::string &name) { m_name = name; } ./Model/Wall.cpp0000664000175000017500000000666312176660653013315 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/Wall.h" #include "Foundation/console.h" /*! Default constructor. Zeroes all variables. Does _not_ construct a useable wall (normal=(0,0,0)) ! */ CWall::CWall() { m_origin=Vec3::ZERO; m_oldpos=Vec3::ZERO; m_normal=Vec3::ZERO; m_force = Vec3::ZERO; m_vel = Vec3::ZERO; } /*! constructor \param o the orgin/position of the wall \param n the wall normal */ CWall::CWall(const Vec3& o,const Vec3& n) { m_origin=o; m_oldpos=m_origin; m_normal=n; m_force = Vec3::ZERO; m_vel = Vec3::ZERO; } /*! generate new vector field slave \param comm \param name */ VectorWallFieldSlave* CWall::generateVectorFieldSlave(TML_Comm* comm,const string& name) { // get access function VectorFieldFunction vf=getVectorFieldFunction(name); // create slave VectorWallFieldSlave* new_fs; if(vf!=NULL){ new_fs=new VectorWallFieldSlave(comm,vf); new_fs->addWall(this); } else { new_fs=NULL; } return new_fs; } /*! Get the wall member function which returns a vector field of a given name. \param name the name of the field */ CWall::VectorFieldFunction CWall::getVectorFieldFunction(const string& name) { CWall::VectorFieldFunction vf; if(name=="Position"){ vf=&CWall::getPos; } else if(name=="Force"){ vf=&CWall::getForce; } else { vf=NULL; console.Error() << "ERROR - invalid name [ " << name << " ] for wall vector field access function" << "\n"; } return vf; } /*! Get a flag how the field with a given name is to be treated when received by the master, i.e. summed over all nodes (Force...) or not (Position...) \param fieldname the name of the field \returns 1 if the field is to be summed, 0 if not and -1 if the name is invalid */ int CWall::getFieldSummationFlag(const string& fieldname) { int res; if(fieldname=="Position"){ res=0; } else if(fieldname=="Force"){ res=1; } else { res=-1; console.Error() << "ERROR - invalid name [ " << fieldname << " ] for wall vector field function" << "\n"; } return res; } /*! write restartable checkpoint data to an output stream \param ost the output stream \param delim */ void CWall::writeCheckPoint(ostream& ost,const string &delim) const { ost << m_origin << " " << m_oldpos << " " << m_normal << delim; } /*! load wall data from a restartable checkpoint \param ist the input stream from which the checkpoint is read */ void CWall::loadCheckPoint(istream& ist) { ist >> m_origin ; ist >> m_oldpos ; ist >> m_normal ; } ostream& operator<<(ostream& ost,const CWall& w) { ost << "--Wall--" << endl; ost << "position : " << w.m_origin << endl; ost << "normal : " << w.m_normal << endl; ost << "displ. : " << w.m_origin-w.m_oldpos << endl; ost << flush; return ost; } ./Model/RotThermElasticInteraction.h0000664000175000017500000000652112176660653017325 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMELASTICINTERACTION_H #define __ROTTHERMELASTICINTERACTION_H #include "Model/RotThermPairInteraction.h" #include "Model/RotThermParticle.h" #include "Model/IGParam.h" /*! Interaction group parameters for CRotThermElasticInteractionGroups */ class CRotThermElasticIGP : public AIGParam { protected: public: CRotThermElasticIGP(); CRotThermElasticIGP( const std::string &name, double normalK, double diffusivity ); double m_kr; double diffusivity ; virtual void packInto(CVarMPIBuffer*) const; void setSpringConst(double k){m_kr=k;}; double getSpringConst() const{return m_kr;}; void setDiffusivity(double d){diffusivity = d;}; double getDiffusivity() const{return diffusivity ; }; friend ostream& operator<<(ostream&,const CRotThermElasticIGP&); virtual std::string getTypeString() const { return "RotThermElastic"; } }; CRotThermElasticIGP* extractRotThermElasticIGP(AMPIBuffer*); CRotThermElasticIGP* extractRotThermElasticIGP_p(AMPIBuffer*); /*! Elastic Interaction between free thermal, rotational particles */ class CRotThermElasticInteraction : public ARotThermPairInteraction { public: typedef double (CRotThermElasticInteraction::* ScalarFieldFunction)() const; typedef pair (CRotThermElasticInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotThermElasticInteraction::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); private: double m_kr; //!< spring constant Vec3 m_force; //!< caching force for E_pot double m_nForce; //!< normal force, always >= 0 Vec3 m_cpos; //!< current position Vec3 m_D; //!< initial positions of the particles double m_diffusivity; //!< thermal diffusivity public: typedef CRotThermElasticIGP ParameterType; CRotThermElasticInteraction(); CRotThermElasticInteraction(CRotThermParticle*,CRotThermParticle*,const CRotThermElasticIGP&); virtual ~CRotThermElasticInteraction(){}; virtual Vec3 getPos() const {return m_cpos;}; static string getType(){return "RotThermElastic";} virtual void calcForces(); void calcHeatTrans() ; // void calcHeatFrict(){} ; Vec3 getForce() const; double getPotentialEnergy() const; //26/Mar added Vec3 getBondedVector() const ; friend ostream& operator<<(ostream&,const CRotThermElasticInteraction&); // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__ELASTICINTERACTION_H ./Model/DampingIGP.cpp0000664000175000017500000000364012176660653014325 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/DampingIGP.h" //---------------------------------------------- // DampingIGP functions //---------------------------------------------- CDampingIGP::CDampingIGP() : m_vref(Vec3::ZERO), m_visc(0.0), m_dt(0.0), m_max_iter(0) { } CDampingIGP::CDampingIGP(const string& type, const string& name, double viscosity, double dt, int maxIterations, const Vec3& refVelocity ) : AIGParam(name), m_type(type), m_vref(refVelocity), m_visc(viscosity), m_dt(dt), m_max_iter(maxIterations) { } /*! Pack the parameters for a DampingGroup into a MPI-buffer \param B the buffer */ void CDampingIGP::packInto(CVarMPIBuffer* B) const { AIGParam::packInto(B); B->append(m_type.c_str()); B->append(m_vref); B->append(m_visc); B->append(m_dt); B->append(m_max_iter); } /*! Extract parameters for a DampingGroup from a MPI-buffer \param B the buffer */ CDampingIGP* extractDampingIGP(AMPIBuffer* B) { CDampingIGP* res = new CDampingIGP; res->setName(B->pop_string()); res->setType(B->pop_string()); res->setVRef(B->pop_vector()); res->setVisc(B->pop_double()); res->setTimeStep(B->pop_double()); res->setMaxIter(B->pop_int()); return res; } ./Model/RotPairInteraction.h0000664000175000017500000000454112176660653015634 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTPAIRINTERCTION_H #define __ROTPAIRINTERCTION_H // -- project includes -- #include "Model/RotParticle.h" #include "Model/Interaction.h" /*! \class ARotPairInteraction \brief Abstract base class interactions between 2 rotational particles \author Steffen Abe $Revision$ $Date$ */ class ARotPairInteraction : public AInteraction { protected: CRotParticle *m_p1,*m_p2; public: // functions ARotPairInteraction(); ARotPairInteraction(CRotParticle*,CRotParticle*); virtual ~ARotPairInteraction(); inline const CParticle* first()const {return m_p1;}; inline const CParticle* second()const {return m_p2;}; inline CRotParticle* first() {return m_p1;}; inline CRotParticle* second() {return m_p2;}; inline pair getPairID() const {return make_pair(m_p1->getID(),m_p2->getID());} virtual Vec3 getPos() const = 0; virtual void calcForces()=0; void checkIDs(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p1->getPos();} virtual Vec3 getPosSecond() const {return m_p2->getPos();} void setPP(CRotParticle*,CRotParticle*); void setPP(const vector); esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p1->getPos(), m_p1->getRad(), m_p2->getPos(), m_p2->getRad(), getPos() ); } virtual void calcHeatTrans() {} virtual void calcHeatFrict() {} // dummy implementations for save/load of restart parameters virtual void saveRestartData(std::ostream &oStream){}; virtual void loadRestartData(std::istream &iStream){}; }; #endif // __ROTPAIRINTERCTION_H ./Model/EWallInteraction.cpp0000664000175000017500000000132112176660653015604 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/EWallInteraction.h" ./Model/BMesh2DInteractionCpData.h0000664000175000017500000000315012176660653016510 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BMESH2DINTERACTIONCPDATA_H #define __BMESH2DINTERACTIONCPDATA_H // --- STL includes --- #include using std::istream; using std::ostream; // --- project includes --- #include "Parallel/CheckPointable.h" #include "Foundation/vec3.h" class BEdge2DInteraction; /*! \class BMesh2DInteractioncpData \brief helper class to checkpoint bonded mesh2d interactions */ class BMesh2DInteractionCpData : public esys::lsm::CheckPointable { private: Vec3 m_ap; int m_pid; int m_tid; public: BMesh2DInteractionCpData(); virtual ~BMesh2DInteractionCpData() { } BMesh2DInteractionCpData(const BEdge2DInteraction&); BMesh2DInteractionCpData(int,int); void set(const BEdge2DInteraction&); void set(int,int); int getPID(); int getTID(); virtual void saveSnapShotData(ostream&); virtual void saveCheckPointData(ostream&); virtual void loadCheckPointData(istream&); }; #endif // __BMESH2DINTERACTIONCPDATA_H ./Model/BEdge2DInteraction.cpp0000664000175000017500000000611312176660653015740 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "BEdge2DInteraction.h" #include "tml/message/packed_message_interface.h" #include "console.h" /*! default constructor */ BEdge2DInteraction::BEdge2DInteraction() { m_p=NULL; m_ed=NULL; m_eid=-1; m_pid=-1; } /*! constructor with parameters \param p a pointer to the particle \param e a pointer to the triangle \param param the interaction parameters \param iflag */ BEdge2DInteraction::BEdge2DInteraction(CParticle* p,Edge2D* e,BMesh2DIP param,bool iflag) { m_p=p; m_ed=e; m_k=param.k; m_break=param.brk*m_p->getRad(); m_inner_flag=iflag; // setup anchor point m_ap=m_ed->toLocal(m_p->getPos()); m_dist=0.0; // inital distance is always 0.0 ! m_eid=m_ed->getID(); m_pid=m_p->getID(); console.XDebug() << "BEdge2Dint " << m_eid << " is inner " << m_inner_flag << "\n"; } /*! destructor */ BEdge2DInteraction::~BEdge2DInteraction() {} /*! calculate & apply forces */ void BEdge2DInteraction::calcForces() { // transform anchor point to world coords Vec3 ap_global=m_ed->toGlobal(m_ap); // get dist between anchor and particle const Vec3 D=ap_global-m_p->getPos(); m_dist=sqrt(D*D); // calc force Vec3 force=D*m_k; Vec3 pos=m_p->getPos(); // apply force m_p->applyForce(force,pos); if(m_inner_flag) m_ed->applyForce(-1.0*force); } /*! return if the interaction is broken, i.e. the distance between particle and anchor point exceeds breaking distance, i.e. relative breaking distance x particle readius */ bool BEdge2DInteraction::broken() { return (m_dist>m_break); } /*! returns the projection of the anchor point on the edge */ Vec3 BEdge2DInteraction::getAP() const { Vec3 app=Vec3(m_ap.X(),0.0,0.0); // move point onto edge Vec3 ap_global=m_ed->toGlobal(app); // transfrom point to global coordinates return ap_global; } /*! Pack a BEdge2DInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const BEdge2DInteraction& I) { append(I.m_k); append(I.m_dist); append(I.m_break); append(I.m_ap); append(I.getTid()); append(I.getPid()); } /*! Unpack a BEdge2DInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(BEdge2DInteraction& I) { I.m_k=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.m_ap=pop_vec3(); I.m_eid=pop_int(); I.m_pid=pop_int(); } ./Model/VWFrictionInteraction.cpp0000664000175000017500000001326012176660653016637 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "VWFrictionInteraction.h" #include "tml/message/packed_message_interface.h" VWFrictionIGP::VWFrictionIGP() : CFrictionIGP(), m_alpha(0.0) {} VWFrictionIGP::VWFrictionIGP(const std::string &name, double kn, double mu, double ks, double dt, double a) : CFrictionIGP(name,kn,mu,ks,dt) { m_alpha=a; } /*! Default constructor */ CVWFriction::CVWFriction():CFrictionInteraction() { m_alpha=0.0; } /*! */ CVWFriction::CVWFriction(CParticle* p1,CParticle* p2,const VWFrictionIGP& Param):CFrictionInteraction(p1,p2,Param) { m_alpha=Param.m_alpha; } CVWFriction::~CVWFriction() {} /*! Calculate elastic & frictional forces. The current coefficient of friction is calculated by a velocity weakening friction law \f$ \mu=\frac{\mu_0}{1+2\alpha |v|} \f$ */ void CVWFriction::calcForces() { Vec3 pos; Vec3 force; double mu; // current coefficent of friction // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); force=D*(m_k*(dist-eq_dist)/dist); m_normal_force=force; pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; // apply elastic force m_p2->applyForce(force,pos); m_p1->applyForce(-1.0*force,pos); //--- frictional force --- // particle movement since last timestep Vec3 d1=m_p1->getVel()*m_dt; Vec3 d2=m_p2->getVel()*m_dt; Vec3 dFF=m_ks*(d2-d1); // tangential part Vec3 normal=D.unit(); dFF-=(dFF*normal)*normal; m_Ffric+=dFF; // --- calc current mu --- // relative velocity Vec3 v_rel=m_p2->getVel()-m_p1->getVel(); // tangential component Vec3 v_tan=v_rel-(v_rel*normal)*normal; // mu mu=m_mu/(1.0+2.0*m_alpha*v_tan.norm()); // decide static/dynamic if(m_Ffric.norm()>force.norm()*mu) { // tangential force greater than static friction -> dynamic m_Ffric=m_Ffric*((mu*force.norm())/m_Ffric.norm()); m_force_deficit=Vec3(0.0,0.0,0.0); m_is_slipping=true; } else if(m_Ffric.norm()>0.0) { // static friction m_is_slipping=false; } else { // no frictional force -> force deficit=mu*F_n m_is_slipping=false; } m_p1->applyForce(m_Ffric,pos); m_p2->applyForce(-1.0*m_Ffric,pos); m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 m_Ffric=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); m_is_slipping=false; m_is_touching=false; } } /*! get current coefficient of friction */ pair CVWFriction::getCurrentMu() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); if(D.norm()<=(m_p1->getRad()+m_p2->getRad())) { // if contact // normal Vec3 normal=D.unit(); // relative velocity Vec3 v_rel=m_p2->getVel()-m_p1->getVel(); // tangential component Vec3 v_tan=v_rel-(v_rel*normal)*normal; // mu double mu=m_mu/(1.0+2.0*m_alpha*v_tan.norm()); res=make_pair(true,mu); } else { res.first=false; } return res; } CVWFriction::ScalarFieldFunction CVWFriction::getScalarFieldFunction(const string& name) { CVWFriction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CVWFriction::getPotentialEnergy; } else if (name=="slipping"){ sf=&CVWFriction::getSlipping; } else if (name=="sticking"){ sf=&CFrictionInteraction::getSticking; } else if (name=="count"){ sf=&CVWFriction::Count; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } CVWFriction::CheckedScalarFieldFunction CVWFriction::getCheckedScalarFieldFunction(const string& name) { CVWFriction::CheckedScalarFieldFunction sf; if (name=="mu_eff_xy"){ sf=&CVWFriction::getMuEffXY; } else if (name=="mu_eff_xz") { sf=&CVWFriction::getMuEffXZ; } else if (name=="f_fric") { sf=&CVWFriction::getAbsFrictionalForce; } else if (name=="muF_n") { sf=&CVWFriction::getAbsMuFN; } if (name=="mu_current") { sf=&CVWFriction::getCurrentMu; } else if (name=="v_slip") { sf=&CVWFriction::getSlipVelocity; } else { sf=NULL; cerr << "ERROR - invalid name for checked interaction scalar access function" << endl; } return sf; } CVWFriction::VectorFieldFunction CVWFriction::getVectorFieldFunction(const string&) { CVWFriction::VectorFieldFunction vf; vf=NULL; return vf; } /*! Pack a CFrictionInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CVWFriction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu); append(I.m_ks); append(I.m_dt); append(I.m_alpha); append(I.m_id[0]); append(I.m_id[1]); } /*! Unpack a CFrictionInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CVWFriction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_alpha=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); } ./Model/CMakeLists.txt0000664000175000017500000000050412176660653014436 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(Model SHARED ${MODEL_SRC_LIB}) TARGET_LINK_LIBRARIES(Model Foundation Geometry TmlMessage TmlType TmlComm Parallel ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS Model DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./Model/BondedInteraction.h0000664000175000017500000000715012176660653015446 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BONDEDINTERACTION_H #define __BONDEDINTERACTION_H // -- project includes -- #include "Model/IGParam.h" // keep this one first - it drags in mpi.h #include "Model/Interaction.h" #include "Model/Particle.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/vec3.h" // -- I/O includes -- #include using std::ostream; // -- STL includes -- #include using std::pair; /*! \brief Interaction parameters for bonded interaction \author Steffen Abe $Revision$ $Date$ */ class CBondedIGP : public AIGParam { public: CBondedIGP(); CBondedIGP(const std::string &name, int tag, double normalK, double breakDistance, bool scaling=true); virtual std::string getTypeString() const { return "Bonded"; } double k; //!< Spring constant. double rbreak; //!< Breaking strain int tag; bool m_scaling; }; /*! \brief Elastic interaction between bonded particles \author Steffen Abe $Revision$ $Date$ */ class CBondedInteraction : public APairInteraction { public: // types typedef CBondedIGP ParameterType; /** * Used by PIS to save/load check-point data for objects of this type. */ typedef BondedInteractionCpData CheckPointable; typedef double (CBondedInteraction::* ScalarFieldFunction)() const; typedef pair (CBondedInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CBondedInteraction::* VectorFieldFunction)() const; protected: double m_k; //!< spring constant double m_r0; //!< equilibrium distance double m_dist; //!< current distance, cached from last calcForces() double m_break; //!< breaking distance Vec3 m_force; //!< current force, cached for E_pot calculation Vec3 m_cpos; int m_tag; //!< Interaction tag; bool m_scaling; //!< scaling k with particle radius CBondedInteraction(CParticle*,CParticle*); public: CBondedInteraction(); CBondedInteraction( CParticle *particle1, CParticle *particle2, const CBondedIGP ¶ms ); virtual ~CBondedInteraction(); static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static string getType() {return "Bonded";}; virtual void calcForces(); void setBreak(double); bool broken(); inline int getTag() const {return m_tag;} inline void setTag(int tag) {m_tag = tag;} double getCriterion() const; double getPotentialEnergy() const; double getStrain() const; Vec3 getForce() const; virtual Vec3 getPos() const {return m_cpos;}; virtual void saveCheckPointData(std::ostream &oStream); friend ostream& operator<<(ostream&,const CBondedInteraction&); friend class TML_PackedMessageInterface; // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__BONDEDINTERACTION_H ./Model/BasicParticle.h0000664000175000017500000000430112176660653014553 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BASICPARTICLE_H #define __BASICPARTICLE_H // -- project includes -- #include "Foundation/vec3.h" // --- STL includes --- #include #include using std::map; using std::pair; using std::make_pair; namespace esys { namespace lsm { class SimpleParticleData; } } /*! \brief Basic Particle class. Contains only the "geometric part" of the particle, i.e. position and radius, no forces or such. \author Steffen Abe $Revision$ $Date$ */ class CBasicParticle { protected: Vec3 m_pos; //!< position double m_rad; //!< radius int m_global_id; int m_tag; public: static const CBasicParticle INVALID; CBasicParticle(); CBasicParticle(const Vec3 &pos, double radius, int id=-1, int tag=-1); CBasicParticle(const esys::lsm::SimpleParticleData &data); inline virtual ~CBasicParticle(){} inline Vec3 & getPPos() {return m_pos;} inline Vec3 getPos() const {return m_pos;} inline void setPos(const Vec3 &pos) {m_pos = pos;} inline double getRad() const {return m_rad;} inline int getID() const {return m_global_id;} inline void setID(int id) {m_global_id = id;} inline void moveBy(Vec3 v){m_pos+=v;} //!< move relative to current position inline void moveTo(Vec3 v){m_pos=v;} //!< move absolute inline void setRad(double r){m_rad=r;} //! particle tag handling inline void setTag(int t){m_tag=t;} inline int getTag() const {return m_tag;} inline bool isValid() const {return (getID() >= 0);} }; ostream& operator<<(ostream&,const CBasicParticle&); #endif //__BASICPARTICLE_H ./Model/ShortBondedInteractionCpData.cpp0000664000175000017500000000367112176660653020102 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/ShortBondedInteractionCpData.h" #include "Model/ShortBondedInteraction.h" // --- STL includes --- #include using std::pair; /*! default constructor */ ShortBondedInteractionCpData::ShortBondedInteractionCpData() {} /*! constructor \param p1id id of the 1st particle \param p2id id of the 2nd particle \param itag interaction tag \param r0 equilibrium distance */ ShortBondedInteractionCpData::ShortBondedInteractionCpData(int p1id,int p2id,int itag,double r0) : BondedInteractionCpData(p1id,p2id,itag) { m_r0=r0; } /*! construct directly from CShortBondedInteraction \param SBI the interaction */ ShortBondedInteractionCpData::ShortBondedInteractionCpData(const CShortBondedInteraction &SBI) { pair pids=SBI.getPairID(); int itag=SBI.getTag(); double r0=SBI.getEquiDist(); set(pids.first,pids.second,itag); // base m_r0=r0; } /*! write data to output stream \param ost the output stream */ void ShortBondedInteractionCpData::saveCheckPointData(ostream& ost) { const char delim = ' '; BondedInteractionCpData::saveCheckPointData(ost); ost << delim << m_r0; } /*! read data from input stream \warning not implemented */ void ShortBondedInteractionCpData::loadCheckPointData(istream&) {} ./Model/RotParticle.h0000664000175000017500000001540312176660653014303 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTPARTICLE_H #define __ROTPARTICLE_H //--- MPIincludes --- #include // -- project includes -- #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Model/Particle.h" #include "Foundation/Quaternion.h" template class ParallelParticleArray; class AMPISGBufferRoot; class AMPIBuffer; //--- STL includes --- #include #include #include #include using std::map; using std::vector; using std::pair; using std::string; namespace esys { namespace lsm { class SimpleParticleData; } } /*! \brief Class for a rotational particle */ class CRotParticle : public CParticle { public: // types class exchangeType { public: exchangeType() : m_pos(), m_initPos(), m_vel(), m_angVel(), m_quat() { m_is_dynamic=true; m_is_rot=true; } exchangeType( const Vec3 &pos, const Vec3 &initPos, const Vec3 &vel, const Vec3 &currAngVel, const Quaternion &quat, const bool is_dyn, const bool is_rot ) : m_pos(pos), m_initPos(initPos), m_vel(vel), m_angVel(currAngVel), m_quat(quat) { m_is_dynamic=is_dyn; m_is_rot=is_rot; } public: Vec3 m_pos; Vec3 m_initPos; Vec3 m_vel; Vec3 m_angVel; Quaternion m_quat; bool m_is_dynamic; bool m_is_rot; friend class TML_PackedMessageInterface; }; typedef double (CRotParticle::* ScalarFieldFunction)() const; typedef Vec3 (CRotParticle::* VectorFieldFunction)() const; protected: Quaternion m_quat; Quaternion m_initquat; Vec3 m_angVel; //! Angular velocity at time t Vec3 m_moment; double m_inertRot; double m_div_inertRot; bool m_is_rot; //! false if rotational dynamics are switched off void setMoment(const Vec3 &moment) {m_moment = moment;} public: CRotParticle(); CRotParticle(const esys::lsm::SimpleParticleData &particleData); CRotParticle(const CParticle &particle); CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn, bool is_rot ); CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion& quat, double inertRot, const Vec3& moment, const Vec3& angvel, bool is_dyn, bool is_rot ); CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion& quat, const Quaternion& initquat, double inertRot, const Vec3& moment, const Vec3& angvel, bool is_dyn, bool is_rot ); virtual ~CRotParticle(){}; static int getPackSize(); static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); // Need to define this for template class using forAllParticles call in Parallel/SubLattice.hpp. Vec3 getDisplacement() const {return CParticle::getDisplacement();}; void resetDisplacement() {CParticle::resetDisplacement();} inline const Vec3 &getAngVel () const { return m_angVel;} inline Vec3 getAngVelNR () const { return m_angVel;} // for field functions inline void setAngVel(const Vec3 &V) { m_angVel = V;} inline Quaternion getInitQuat() const { return m_initquat;} inline Quaternion getQuat() const { return m_quat;} inline void setQuat(const Quaternion &quat) { m_quat = quat;} inline double getInertRot () const { return m_inertRot; } inline void setInertRot (double inertRot) { m_inertRot = inertRot; m_div_inertRot = 1.0/m_inertRot; } inline double getInvInertRot () const { return m_div_inertRot; } inline Vec3 getMoment() const {return m_moment;} void applyMoment( const Vec3&); void integrate(double); void integrateTherm(double dt){} virtual void thermExpansion() {} void zeroForce(); virtual void zeroHeat(){} void rescale(); void setCircular(const Vec3& cv); double getAngularKineticEnergy() const {return 0.5*m_inertRot*m_angVel*m_angVel;} // 1/2 I*omega^2 double getLinearKineticEnergy() const {return (0.5*m_mass)*(m_vel*m_vel);} double getKineticEnergy() const {return getLinearKineticEnergy() + getAngularKineticEnergy();} void writeAsDXLine(ostream&,int slid=0); // switching on/off dynamic behaviour virtual void setNonDynamic() {m_is_dynamic=false;m_is_rot=false;}; virtual void setNonDynamicLinear() {m_is_dynamic=false;}; virtual void setNonDynamicRot() {m_is_rot=false;}; inline Quaternion getQuatFromRotVec(const Vec3 &vec) const { const double angle = vec.norm(); const double halfAngle = angle/2.0; if (halfAngle > 0.0) { return Quaternion(cos(halfAngle), (vec)*(sin(halfAngle)/angle)); } return Quaternion(); } void rotateBy(const Vec3 &vec) {m_quat = getQuatFromRotVec(vec)*m_quat;} void rotateTo(const Vec3 &vec) {m_quat = getQuatFromRotVec(vec);} friend ostream& operator<<(ostream&, const CRotParticle&); void print(){cout << *this << endl << flush;}; // -- checkpointing -- virtual void saveSnapShotData(std::ostream& oStream); virtual void saveCheckPointData(std::ostream& oStream); virtual void loadCheckPointData(std::istream& iStream); CRotParticle::exchangeType getExchangeValues(); void setExchangeValues(const CRotParticle::exchangeType &e); template void visit(TmplVisitor &visitor) { visitor.visitRotParticle(*this); } // stress inline double sigma_xx_2D() const {return m_sigma(0,0)/(M_PI*m_rad*m_rad);}; inline double sigma_xy_2D() const {return m_sigma(0,1)/(M_PI*m_rad*m_rad);}; inline double sigma_yy_2D() const {return m_sigma(1,1)/(M_PI*m_rad*m_rad);}; // inline double sigma_d() const; static void get_type() {cout <<" CRotParticle" ;}; friend class TML_PackedMessageInterface; }; #endif //__ROTPARTICLE_H ./Model/Mesh2D.hpp0000664000175000017500000000340712176660653013476 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include using std::make_pair; /*! Call a constant member function of Edge2D taking no argument and returning a value for all edges and collect the return values in a container. The container has to be an STL sequence container (vector,list...) or something with the same interface. The template parameter P is a type of container of the return type of the particle member function, not the return type itself. \param cont the container \param rdf the particle member function */ template void Mesh2D::forAllEdgesGet(P& cont,typename P::value_type (Edge2D::*rdf)() const) { for(vector::iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ cont.push_back(((*iter).*rdf)()); } } /*! \param rdf the particle member function */ template vector > Mesh2D::forAllEdgesGetIndexed(P (Edge2D::*rdf)() const) { vector > res; for(vector::iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ res.push_back(make_pair(iter->getID(),((*iter).*rdf)())); } return res; } ./Model/HertzianViscoElasticInteraction.cpp0000664000175000017500000001126112176660653020701 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /* HertzianViscoElasticInteraction.cpp: Written by Laura Heredia and Pablo Richeri, 2009. */ #include "HertzianViscoElasticInteraction.h" // --- system includes --- #include // --- member functions for interaction group parameter class --- //! default constructor CHertzianViscoElasticIGP::CHertzianViscoElasticIGP() : AIGParam(), m_A(0.0), m_E(0.0), m_nu(0.0) { } /*! constructor with parameters \param name the name of the interaction group \param k the stiffness constant */ CHertzianViscoElasticIGP::CHertzianViscoElasticIGP( const std::string& name, double A, double E, double nu ) : AIGParam(name), m_A(A), m_E(E), m_nu(nu) { } // --- function of interaction class --- CHertzianViscoElasticInteraction::CHertzianViscoElasticInteraction( CParticle* p1, CParticle* p2, const CHertzianViscoElasticIGP& param ) : APairInteraction(p1,p2) { m_A=param.m_A; m_E=param.m_E; m_nu=param.m_nu; m_force=Vec3(0.0,0.0,0.0); m_dn=0.0; } /*! calculate forces */ void CHertzianViscoElasticInteraction::calcForces() { Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); //std::cerr << "d: " << dist << " / " << eq_dist*eq_dist << std::endl; if(dist<(eq_dist*eq_dist)){ double R_ij=1.0/(1.0/m_p1->getRad()+1.0/m_p2->getRad()); dist=sqrt(dist); m_dn=eq_dist-dist; Vec3 dir=D.unit(); //Calculate d m_dn / dt double ex=D.X()/dist; double ey=D.Y()/dist; double ez=D.Z()/dist; double dvx=m_p1->getVel().X()-m_p2->getVel().X(); double dvy=m_p1->getVel().Y()-m_p2->getVel().Y(); double dvz=m_p1->getVel().Z()-m_p2->getVel().Z(); double m_dn_dot=-(ex*dvx+ey*dvy+ez*dvz); double norm_m_force = (2.0*m_E*sqrt(R_ij)) / (3.0*(1.0-m_nu*m_nu)) * (pow(m_dn,1.5)+m_A*sqrt(m_dn)*m_dn_dot); m_force=norm_m_force<0?Vec3(0.0,0.0,0.0):dir*norm_m_force; //std::cerr << "HF: " << dir << " " << R_ij << " " << m_dn << " " // << m_force << std::endl; Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; m_p1->applyForce(m_force,pos); m_p2->applyForce(-1.0*m_force,pos); } else { m_force=Vec3(0.0,0.0,0.0); m_dn=0.0; } } /*! "field function" returning force currently exerted by interaction */ Vec3 CHertzianViscoElasticInteraction::getForce() const { return m_force; } /*! "field function" returning potential energy currently stored in interaction */ double CHertzianViscoElasticInteraction::getPotentialEnergy() const { return 0.4*m_force.norm()*m_dn; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CHertzianViscoElasticInteraction::ScalarFieldFunction CHertzianViscoElasticInteraction::getScalarFieldFunction(const string& name) { CHertzianViscoElasticInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CHertzianViscoElasticInteraction::getPotentialEnergy; } else if (name=="count"){ sf=&CHertzianViscoElasticInteraction::Count; } else { sf=NULL; std::cerr << "ERROR - invalid name for interaction scalar access function" << std::endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CHertzianViscoElasticInteraction::VectorFieldFunction CHertzianViscoElasticInteraction::getVectorFieldFunction(const string& name) { CHertzianViscoElasticInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CHertzianViscoElasticInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! dummy */ CHertzianViscoElasticInteraction::CheckedScalarFieldFunction CHertzianViscoElasticInteraction::getCheckedScalarFieldFunction( const string& name ) { CHertzianViscoElasticInteraction::CheckedScalarFieldFunction csf; csf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return csf; } ./Model/RotLocalDamping.h0000664000175000017500000000506712176660653015077 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_ROTLOCALDAMPING_H #define MODEL_ROTLOCALDAMPING_H // -- project includes -- #include "Model/LocalDampingIGP.h" #include "Foundation/vec3.h" #include "Foundation/quintuple.h" class CVarMPIBuffer; class AMPIBuffer; /*! \brief Local rotational damping of the particle motion by a damping coefficient */ template class CRotLocalDamping { protected: T *m_p; //!< the particle double m_visc; //!< damping coefficient double m_dt; //!< time step double m_E_diss; //!< dissipated energy Vec3 m_force; //!< current force public: typedef CLocalDampingIGP ParameterType; typedef double (CRotLocalDamping::* ScalarFieldFunction)() const; typedef pair (CRotLocalDamping::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotLocalDamping::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); CRotLocalDamping(T*,double,double); // to be obsoleted CRotLocalDamping(T*,const CLocalDampingIGP&); CRotLocalDamping(T*,CLocalDampingIGP*); virtual ~CRotLocalDamping(); void setTimeStepSize(double dt); virtual void calcForces(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p->getPos();}; virtual Vec3 getPosSecond() const {return Vec3(0.0,0.0,0.0);}; virtual Vec3 getPos() const {return m_p->getPos();}; vector getAllID() const; esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p->getPos(), m_p->getRad(), Vec3::ZERO, 0, getPos() ); } double getDissipatedEnergy() const; Vec3 getForce() const; }; #include "Model/RotLocalDamping.hpp" #endif //__ROTLOCALDAMPING_H ./Model/ETriMeshInteraction.h0000664000175000017500000000217612176660653015736 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ETRIMESHINTERACTION_H #define __ETRIMESHINTERACTION_H // --- project includes --- #include "Model/ETriangleInteraction.h" #include "Model/EEdgeInteraction.h" #include "Model/ECornerInteraction.h" #include "Model/ETriMeshIP.h" struct ETriMeshInteraction { typedef ETriMeshIP ParameterType; typedef ETriangleInteraction TriIntType; typedef EEdgeInteraction EdgeIntType; typedef ECornerInteraction CornerIntType; }; #endif //__ETRIMESHINTERACTION_H ./Model/MeshData.cpp0000664000175000017500000000506612176660653014100 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "MeshData.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" // === NODE DATA =========== MeshNodeData::MeshNodeData() : id(-1), tag(-1), x(0.0), y(0.0), z(0.0) { } MeshNodeData::MeshNodeData(int nodeId, const Vec3 &pt, int nodeTag) : id(nodeId), tag(nodeTag), x(pt[0]), y(pt[1]), z(pt[2]) { } /*! read node data from istream \param instream the stream to read from */ void MeshNodeData::read(std::istream& instream) { int dummy; instream >> id >> dummy >> tag >> x >> y >> z; } /*! Pack MeshNodeData into a TML packed message \param d the data */ template<> void TML_PackedMessageInterface::pack(const MeshNodeData& d) { append(d.id); append(d.tag); append(d.x); append(d.y); append(d.z); } /*! Unpack MeshNodeData from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(MeshNodeData& d) { d.id=pop_int(); d.tag=pop_int(); d.x=pop_double(); d.y=pop_double(); d.z=pop_double(); } // === TRI DATA =========== MeshTriData::MeshTriData() : id(-1), tag(-1), p1(-1), p2(-1), p3(-1) { } MeshTriData::MeshTriData(int triId, int nodeId0, int nodeId1, int nodeId2, int triTag) : id(triId), tag(triTag), p1(nodeId0), p2(nodeId1), p3(nodeId2) { } /*! read triangle data from istream \param instream the stream to read from */ void MeshTriData::read(std::istream& instream) { instream >> id >> tag >> p1 >> p2 >> p3; } /*! Pack MeshTriData into a TML packed message \param d the data */ template<> void TML_PackedMessageInterface::pack(const MeshTriData& d) { append(d.id); append(d.tag); append(d.p1); append(d.p2); append(d.p3); } /*! Unpack MeshTriData from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(MeshTriData& d) { d.id=pop_int(); d.tag=pop_int(); d.p1=pop_int(); d.p2=pop_int(); d.p3=pop_int(); } ./Model/ViscWallIG.h0000664000175000017500000000507512176660653014023 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VISCWALLIG_H #define __VISCWALLIG_H //--- project includes --- #include "Model/ViscWallInteraction.h" #include "Model/EWallInteraction.h" #include "Model/WallIG.h" #include "Model/EWallInteractionGroup.h" //--- STL includes --- #include using std::map; template class ParallelParticleArray; /*! \brief Interaction group parameters for CBWallInteractionGroups */ class CVWallIGP : public CEWallIGP { protected: int m_tag; double m_nu; public: CVWallIGP(const string&,const string&,double,double,int); virtual void packInto(CVarMPIBuffer*) const; void setTag(int tag){m_tag=tag;}; int getTag()const{return m_tag;}; void setNu(double nu){m_nu=nu;}; double getNu()const{return m_nu;}; friend ostream& operator<<(ostream&,const CVWallIGP&); }; CVWallIGP* extractVWallIGP(AMPIBuffer*); // --- Forward decl --- template class CViscWallIG; template ostream& operator<<(ostream &, const CViscWallIG &); /*! \brief Class for a group of viscous and elastic interactions between particles and a wall */ template class CViscWallIG : public AWallInteractionGroup { protected: vector > m_visc_interactions; //!< visc interactions for tagged particles vector > m_elastic_interactions; //!< elastic interactions all particles double m_k; //!< spring constant double m_nu; int m_tag; public: CViscWallIG(TML_Comm*); CViscWallIG(TML_Comm*,CWall*,const CVWallIGP*); virtual ~CViscWallIG(){} /** * Null op, don't require time step size. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual void applyForce(const Vec3&); virtual void setVelocity(const Vec3&); virtual void Update(ParallelParticleArray*); friend ostream& operator<< <>(ostream &, const CViscWallIG &); }; #include "Model/ViscWallIG.hpp" #endif // __VISCWALLIG_H ./Model/Particle.h0000664000175000017500000001371612176660653013623 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARTICLE_H #define __PARTICLE_H // -- project includes -- #include "Foundation/Quaternion.h" #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Model/BasicParticle.h" #include "Parallel/CheckPointable.h" //--- STL includes --- #include #include #include #include #include using std::map; using std::vector; using std::pair; using std::string; template class ParallelParticleArray; class AMPISGBufferRoot; class AMPIBuffer; namespace esys { namespace lsm { class SimpleParticleData; } } /*! \brief Class for a basic particle */ class CParticle : public CBasicParticle, public esys::lsm::CheckPointable { public: // types class exchangeType { public: exchangeType() : m_pos(), m_initPos(), m_oldPos(), m_vel() { m_is_dynamic=true; } exchangeType(const Vec3 &pos, const Vec3 &initPos, const Vec3 &oldPos, const Vec3 &vel,bool is_dyn) : m_pos(pos), m_initPos(initPos), m_oldPos(oldPos), m_vel(vel) { m_is_dynamic=is_dyn; } Vec3 m_pos; Vec3 m_initPos; Vec3 m_oldPos; Vec3 m_vel; bool m_is_dynamic; }; typedef double (CParticle::* ScalarFieldFunction)() const; typedef Vec3 (CParticle::* VectorFieldFunction)() const; protected: //! stress tensor. \warning Warning: this is unscaled, i.e. without the 1/V term Matrix3 m_sigma; Vec3 m_vel,m_force; Vec3 m_oldpos; //!< position at the time of last neighbor search Vec3 m_initpos; //!< position at time of construction Vec3 m_circular_shift; //!< shift vector if particle is circular image double m_mass,m_div_mass; bool flag; bool m_is_dynamic; void setForce(const Vec3 &force) {m_force = force;} public: CParticle(); CParticle(double,double,const Vec3&,const Vec3&,const Vec3&,int,bool); CParticle(double,double,const Vec3&,const Vec3&,const Vec3&,const Vec3&,const Vec3&,int,bool); // including oldpos CParticle(const esys::lsm::SimpleParticleData &particleData); virtual ~CParticle(){}; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); inline const Vec3 &getInitPos() const {return m_initpos;} inline void setInitPos(const Vec3 &initPos) {m_initpos = initPos;} inline Vec3 getDisplacement() const {return (m_pos-m_oldpos);} ; inline Vec3 getTotalDisplacement() const {return (m_pos-m_initpos);} ; inline const Vec3 &getOldPos() const {return m_oldpos;}; inline Vec3 getVel() const {return m_vel;}; inline double getAbsVel() const {return m_vel.norm();}; inline void setVel(const Vec3 &V){m_vel=V;}; inline void setMass(double mass) {m_mass = mass; m_div_mass = 1.0/m_mass;} inline double getMass() const {return m_mass;}; inline double getInvMass() const {return m_div_mass;}; inline Vec3 getForce() const {return m_force;}; virtual void setDensity(double); // needs to be virtual , different for rot. particle (mom. inert) void resetDisplacement(){m_oldpos=m_pos;}; double getIDField() const {return double(m_global_id);}; double getTagField() const {return double(getTag());}; void applyForce(const Vec3&,const Vec3&); virtual void integrate(double); virtual void integrateTherm(double){} virtual void zeroForce(); virtual void zeroHeat() {} virtual void thermExpansion() {} inline void moveToRel(const Vec3 &v){m_pos=m_initpos+v;}; //!< move relative to initial position inline double getKineticEnergy() const {return 0.5*m_mass*m_vel*m_vel;}; // switching on/off dynamic behaviour virtual void setNonDynamic() {m_is_dynamic=false;}; virtual void setNonDynamicLinear() {m_is_dynamic=false;}; virtual void setNonDynamicRot(){}; // do nothing void setFlag(bool b=true){flag=b;}; bool isFlagged() const {return flag;}; void writeAsDXLine(ostream&,int slid=0); friend ostream& operator<<(ostream&, const CParticle&); void print(){cout << *this << endl << flush;}; void rescale() {}; exchangeType getExchangeValues(); void setExchangeValues(const exchangeType&); // circular void setCircular(const Vec3&); // stress double sigma_xx_2D() const {return m_sigma(0,0)/(M_PI*m_rad*m_rad);}; double sigma_xy_2D() const {return m_sigma(0,1)/(M_PI*m_rad*m_rad);}; double sigma_yy_2D() const {return m_sigma(1,1)/(M_PI*m_rad*m_rad);}; double sigma_d() const; friend class TML_PackedMessageInterface; virtual void saveCheckPointData(std::ostream& oStream); virtual void saveSnapShotData(std::ostream& oStream); //virtual Quaternion getQuat(){return Quaternion(1.0,Vec3(0.0,0.0,0.0));}; virtual void applyMoment(const Vec3&){}; static void get_type() {cout <<" CParticle" ;}; virtual void loadCheckPointData(std::istream &iStream); template void visit(TmplVisitor &visitor) { visitor.visitParticle(*this); } public: // Ensure that particles only move in the x-y plane 2D computations inline static void setDo2dCalculations(bool do2dCalculations) {s_do2Calculations = do2dCalculations;} inline static bool getDo2dCalculations() {return s_do2Calculations;} private: static bool s_do2Calculations; }; /* CParticle extractCParticleFrom(AMPIBuffer*); */ /* CParticle extractCParticleFrom(AMPISGBufferRoot*,int); */ #endif //__PARTICLE_H ./Model/ShortBondedInteractionCpData.h0000664000175000017500000000267212176660653017547 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SHORTBONDEDINTERACTIONCPDATA_H #define __SHORTBONDEDINTERACTIONCPDATA_H // --- Project includes --- #include "Model/BondedInteractionCpData.h" // --- IO includes --- #include using std::istream; using std::ostream; class CShortBondedInteraction; /*! Helper class for checkpointing ShortBondedInteraction data */ class ShortBondedInteractionCpData : public BondedInteractionCpData { private: double m_r0; public: ShortBondedInteractionCpData(); ShortBondedInteractionCpData(int,int,int,double); ShortBondedInteractionCpData(const CShortBondedInteraction&); virtual ~ShortBondedInteractionCpData(){} virtual void saveCheckPointData(ostream&); virtual void loadCheckPointData(istream&); }; #endif // __SHORTBONDEDINTERACTIONCPDATA_H ./Model/EEdge2DInteraction.h0000664000175000017500000000302612176660653015410 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EEDGE2DINTERACTION_H #define __EEDGE2DINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Edge2D.h" #include "Model/Particle.h" #include "Model/ETriMeshIP.h" /*! \class EEdgeInteraction \brief unbonded elastic interaction between a Edge in a TriangleMesh and a particle \author Steffen Abe $Revision: $ $Date: $ */ class EEdge2DInteraction { private: CParticle *m_p; Edge2D *m_edge; double m_k; //!< spring constant /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: EEdge2DInteraction(); EEdge2DInteraction(CParticle*,Edge2D*,ETriMeshIP,bool iflag=true); virtual ~EEdge2DInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); }; #endif // __EEDGE2DINTERACTION_H ./Model/Damping.hpp0000664000175000017500000001214612176660653013773 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_DAMPING_HPP #define MODEL_DAMPING_HPP #include "Model/Damping.h" //#include "Foundation/console.h" template double CDamping::s_limit2=1e-12; // default error limit : 1e-6 template int CDamping::s_flops = 0; /*! Construct a damping "interaction" for a particle \param P the particle \param V the reference velocity \param visc the artificial viscosity \param dt the time step \param mi the maximum number of iterations */ template CDamping::CDamping(T* P,const Vec3& V,double visc,double dt,int mi) { m_p=P; m_vref=V; m_visc=visc; m_dt=dt; m_maxiter=mi; m_force=Vec3(0.0,0.0,0.0); } /*! Construct a damping "interaction" for a particle \param P the particle \param param the parameters */ template CDamping::CDamping(T* P,const CDampingIGP& param) { m_p=P; m_vref=param.getVRef(); m_visc=param.getVisc(); m_dt=param.getTimeStep(); m_maxiter=param.getMaxIter(); m_force=Vec3(0.0,0.0,0.0); } /*! Construct a damping "interaction" for a particle \param P the particle \param param pointer to the parameters */ template CDamping::CDamping(T* P,CDampingIGP* param) { m_p=P; m_vref=param->getVRef(); m_visc=param->getVisc(); m_dt=param->getTimeStep(); m_maxiter=param->getMaxIter(); m_force=Vec3(0.0,0.0,0.0); } /*! destructor */ template CDamping::~CDamping() {} template void CDamping::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate the damping force. 25*count+8 flops */ template void CDamping::calcForces() { m_E_diss=0.0;// zero dissipated energy Vec3 v=m_p->getVel(); Vec3 v_rel=Vec3(0.0,0.0,0.0); Vec3 frc=m_p->getForce(); double s=m_p->getInvMass(); double mass=m_p->getMass(); double error=1.0; int count=0; while((error*error>s_limit2) & (count=m_maxiter){ //console.Warning() << "damping diverges for particle " << m_p->getID() << "error= " << error << "\n"; v_rel=Vec3(0.0,0.0,0.0); } m_force=-1.0*m_visc*v_rel*mass; m_p->applyForce(m_force,m_p->getPos()); // 3 flops // m_E_diss=0.5*(v*v-(v_rel+m_vref)*(v_rel+m_vref))*m_p->getMass(); m_E_diss=m_visc*v_rel*v*m_dt; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ template typename CDamping::ScalarFieldFunction CDamping::getScalarFieldFunction(const string& name) { typename CDamping::ScalarFieldFunction sf; if(name=="dissipated_energy"){ sf=&CDamping::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ template typename CDamping::CheckedScalarFieldFunction CDamping::getCheckedScalarFieldFunction(const string& name) { typename CDamping::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ template typename CDamping::VectorFieldFunction CDamping::getVectorFieldFunction(const string& name) { typename CDamping::VectorFieldFunction vf; if (name=="force"){ vf=&CDamping::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! return the amount of energy dissipated during the last time step */ template double CDamping::getDissipatedEnergy() const { return m_E_diss; } template Vec3 CDamping::getForce() const { return m_force; } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ template bool CDamping::hasTag(int tag,int mask) const { int tag1=m_p->getTag(); return ((tag1 & mask)==(tag & mask)); } /*! return a vector of all particle IDs */ template vector CDamping::getAllID() const { vector res; res.push_back(m_p->getID()); return res; } #endif ./Model/FractalFriction.h0000664000175000017500000000506612176660653015131 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRACTALFRICTION_H #define __FRACTALFRICTION_H // -- project includes -- #include "Model/FrictionInteraction.h" #include /*! \brief Interaction parameters for frictional interaction with a fractal distribution of the coefficient of friction */ class FractalFrictionIGP : public AIGParam { public: virtual std::string getTypeString() const {return "FractalFriction";} void setTimeStepSize(double timeStepSize) { this->dt = timeStepSize; } double k; double mu_0; double k_s; double dt; boost::shared_ptr mu; //!< pointer to the array of friction coeff. double x0,y0,dx,dy; //!< origin and grid spacing of the array int nx,ny; //!< array size FractalFrictionIGP(); FractalFrictionIGP(const FractalFrictionIGP &); ~FractalFrictionIGP(); FractalFrictionIGP &operator=(const FractalFrictionIGP &); }; /*! \brief Frictional+Elastic interaction between particles with fractal distribution of the coefficient of friction */ class CFractalFriction : public CFrictionInteraction { public: // types typedef FractalFrictionIGP ParameterType; typedef double (CFractalFriction::* ScalarFieldFunction)() const; typedef Vec3 (CFractalFriction::* VectorFieldFunction)() const; typedef pair (CFractalFriction::* CheckedScalarFieldFunction)() const; private: public: CFractalFriction(); CFractalFriction(CParticle*,CParticle*,const FractalFrictionIGP&); virtual ~CFractalFriction(); static string getType() {return "FractalFriction";}; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); friend ostream& operator<<(ostream&,const CFractalFriction&); friend class TML_PackedMessageInterface; }; #endif //__FRACTALFRICTION_H ./Model/WallInteraction.h0000664000175000017500000000307612176660653015155 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __WALLINTERACTION_H #define __WALLINTERACTION_H #include "Wall.h" #include "Interaction.h" #include "Particle.h" /*! \class AWallInteraction \brief Abstract base for all interactions between a particle and a wall \author Steffen Abe $Revision$ $Date$ */ template class AWallInteraction : public AInteraction { protected: T *m_p; CWall *m_wall; /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: AWallInteraction(T*,CWall*,bool iflag=true); virtual ~AWallInteraction(){}; virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p->getPos();}; inline bool isInner(){return m_inner_flag;}; virtual void calcForces()=0; virtual double getStiffness(){return 0.0;}; }; #include "WallInteraction.hpp" #endif //__WALLINTERACTION_H ./Model/RotThermElasticInteractionGroup.h0000664000175000017500000000355412176660653020345 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMELASTICINTERACTIONGROUP_H #define __ROTTHERMELASTICINTERACTIONGROUP_H #include "Foundation/console.h" #include "InteractionGroup.h" #include "RotThermElasticInteraction.h" #include "IGParam.h" //--- IO includes --- #include using std::ostream; using std::endl; /*! Class for a group of unbonded,elastic interactions */ template class CRotThermElasticInteractionGroup : public APairInteractionGroup { protected: vector m_interactions; AParallelInteractionStorage* m_exIG; //*); friend ostream& operator<< <>(ostream&,const CRotThermElasticInteractionGroup&); }; #include "RotThermElasticInteractionGroup.hpp" #endif //__ELASTICINTERACTIONGROUP_H ./Model/BasicParticle.cpp0000664000175000017500000000275112176660653015115 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BasicParticle.h" #include "Geometry/SimpleParticleData.h" const CBasicParticle CBasicParticle::INVALID = CBasicParticle(Vec3::ZERO, 0.0, -1, -1); CBasicParticle::CBasicParticle() : m_pos(0.0,0.0,0.0), m_rad(0.0), m_global_id(-1), m_tag(-1) { } CBasicParticle::CBasicParticle(const esys::lsm::SimpleParticleData &data) : m_pos(data.getPosition()), m_rad(data.getRadius()), m_global_id(data.getId()), m_tag(data.getTag()) { } CBasicParticle::CBasicParticle(const Vec3& pos, double rad, int id, int tag) : m_pos(pos), m_rad(rad), m_global_id(id), m_tag(-1) { } ostream& operator<<(ostream& ost,const CBasicParticle& BP) { ost << "Particle- id " << BP.getID() << " pos: " << BP.getPos() << " rad: " << BP.getRad() << " tag : " << BP.getTag() << endl; return ost; } ./Model/ViscWallInteraction.cpp0000664000175000017500000000132412176660653016327 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/ViscWallInteraction.h" ./Model/BTriMeshInteractionCpData.cpp0000664000175000017500000000455512176660653017346 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BTriMeshInteractionCpData.h" #include "Model/BTriangleInteraction.h" /*! Default constructor. Particle and Triangle ID are set to -1, anchor vector to (0,0,0) -> the resulting data mark an invalid Interaction */ BTriMeshInteractionCpData::BTriMeshInteractionCpData() : m_ap(),m_tid(-1),m_pid(-1) {} /*! Construct CpData from bonded triangle interaction - takes particle and triangle ID and particle anchor point \param BTI the bonded triangle interaction (reference) */ BTriMeshInteractionCpData::BTriMeshInteractionCpData(const BTriangleInteraction &BTI) { m_pid=BTI.getPid(); m_tid=BTI.getTid(); m_ap=BTI.getAP(); } /*! Set the data of an existing CpData object to those of a given bonded triangle interaction. \param BTI the bonded triangle interaction (reference) */ void BTriMeshInteractionCpData::set(const BTriangleInteraction& BTI) { m_pid=BTI.getPid(); m_tid=BTI.getTid(); m_ap=BTI.getAP(); } /*! Write restartable CpData to output stream. The format is tid pid ap_x ap_y ap_z where ap_? are the vector components of the anchor point \warning The format isn't set in stone - don't rely on this for reading functions at the moment */ void BTriMeshInteractionCpData::saveCheckPointData(std::ostream& ost) { const char delim = ' '; ost << m_pid << delim << m_tid << delim << m_ap; } /* Write visualization CpData to output stream. */ void BTriMeshInteractionCpData::saveSnapShotData(std::ostream& ost){ const char delim = ' '; ost << m_pid << delim << m_tid << delim << m_ap; } /*! Load CpData for bonded triangle interaction from input stream */ void BTriMeshInteractionCpData::loadCheckPointData(std::istream& ist) {} ./Model/BWallInteraction.hpp0000664000175000017500000000346312176660653015617 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_BWALLINTERACTION_HPP #define MODEL_BWALLINTERACTION_HPP template CBondedWallInteraction::CBondedWallInteraction(T* p,CWall* w,double k,bool iflag): AWallInteraction(p,w,iflag) { // scale stiffness to particle cross section double scale; if(CParticle::getDo2dCalculations()){ // 2D // scale=2.0*this->m_p->getRad(); scale=1.0; } else { // 3D // scale=3.1415926536*this->m_p->getRad()*this->m_p->getRad(); scale=3.1415926536*this->m_p->getRad(); } m_k=k*scale; } /*! calculate bonded elastic forces. */ template void CBondedWallInteraction::calcForces() { Vec3 D=(this->m_p->getTotalDisplacement()-this->m_wall->getTotalDisplacement()); //double dist=sqrt(D*D); Vec3 force=D*m_k; Vec3 pos=this->m_p->getPos(); this->m_p->applyForce(-1.0*force,pos); if(this->m_inner_flag) this->m_wall->addForce(force); } /*! calculate and return the bonded elastic force */ template Vec3 CBondedWallInteraction::getForce() { Vec3 D=(this->m_p->getTotalDisplacement()-this->m_wall->getTotalDisplacement()); //const double dist=sqrt(D*D); return D*m_k; } #endif ./Model/AdhesiveFriction.cpp0000664000175000017500000000671112176660653015636 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //--- project includes --- #include "Model/AdhesiveFriction.h" #include "tml/message/packed_message_interface.h" /*! Default constructor for CAdhesiveFriction interaction Zero all coefficients */ CAdhesiveFriction::CAdhesiveFriction() { m_k=0.0; m_ks=0.0; m_r0=0.0; m_dt=0.0; m_r_cut=0.0; m_r_cut_h=0.0; } /*! Construct a CAdhesiveFriction interaction from 2 particle pointers and the parameters \param p1 pointer to the first particle \param p2 pointer to the second particle \param param the interaction parameters */ CAdhesiveFriction::CAdhesiveFriction(CParticle* p1,CParticle* p2,const CAdhesiveFrictionIGP& param):CFrictionInteraction(p1,p2) { m_k=param.k; m_ks=param.k_s; m_r0=p1->getRad()+p2->getRad(); m_dt=param.dt; m_r_cut=param.r_cut; m_r_cut_h=1.0+(param.r_cut-1.0)*0.5; } /*! destruct a CAdehsiveFriction interaction, i.e.do nothing */ CAdhesiveFriction::~CAdhesiveFriction() {} void CAdhesiveFriction::calcForces() { Vec3 pos; Vec3 force; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; // check if there is contact if(dist<(m_r0*m_r0)){ // contact -> calculate forces as for normal frictional interaction CFrictionInteraction::calcForces(); } else if (dist<(m_r0*m_r0*m_r_cut_h*m_r_cut_h)){ // between eq and half cut -> increase //--- elastic force --- dist=sqrt(dist); force=D*(m_k*(dist-m_r0)/dist); pos=m_p2->getPos()+(m_p2->getRad()/m_r0)*D; m_Ffric=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); // apply elastic force m_p2->applyForce(force,pos); m_p1->applyForce(-1.0*force,pos); } else if (dist<(m_r0*m_r0*m_r_cut*m_r_cut)){ // between half cut and cut -> decrease //--- elastic force --- dist=sqrt(dist); force=D*(m_k*((m_r0*m_r_cut)-dist)/dist); pos=m_p2->getPos()+(m_p2->getRad()/m_r0)*D; m_Ffric=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); // apply elastic force m_p2->applyForce(force,pos); m_p1->applyForce(-1.0*force,pos); } } /*! Pack a CAdhesiveFriction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CAdhesiveFriction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu); append(I.m_ks); append(I.m_dt); append(I.m_r_cut); append(I.m_id[0]); append(I.m_id[1]); } /*! Unpack a CAdhesiveFriction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CAdhesiveFriction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_r_cut=pop_double(); I.m_r_cut_h=1.0+(I.m_r_cut-1.0)*0.5; I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); } ./Model/HertzianViscoElasticFrictionInteraction.h0000664000175000017500000001151512176660653022046 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __HERTZIANVISCOELASTICFRICTIONINTERACTION_H #define __HERTZIANVISCOELASTICFRICTIONINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" #include "Foundation/vec3.h" #include #include /*! \brief Interaction group parameters for Hertzian viscoelastic interactions with friction */ class CHertzianViscoElasticFrictionIGP : public AIGParam { public: CHertzianViscoElasticFrictionIGP(); CHertzianViscoElasticFrictionIGP( const std::string &name, double A, double E, double nu, double fricCoef, double shearK, double dT ); virtual std::string getTypeString() const { return "HertzianViscoElasticFriction"; } void setTimeStepSize(double dt); double m_A; // Dissipative constant double m_E; // Young's modulus double m_nu; // Poisson ratio double mu; // Friction coefficient double k_s; // Shear coefficient double dt; }; /*! \class CHertzianViscoElasticFrictionInteraction \brief Frictional+ViscoElastic interaction between particles \author Laura Heredia & Pablo Richeri $Date: 2009-12-26 20:00:00 (sat, 26 dec 2009) $ */ class CHertzianViscoElasticFrictionInteraction : public APairInteraction { public: // types typedef CHertzianViscoElasticFrictionIGP ParameterType; typedef double (CHertzianViscoElasticFrictionInteraction::* ScalarFieldFunction)( ) const; typedef std::pair (CHertzianViscoElasticFrictionInteraction::* CheckedScalarFieldFunction)( ) const; typedef Vec3 (CHertzianViscoElasticFrictionInteraction::* VectorFieldFunction)( ) const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction( const string& ); static VectorFieldFunction getVectorFieldFunction(const string&); protected: double m_A; //!< Dissipative constant double m_E; //!< Young's modulus double m_nu; //!< Poisson ratio double m_r0; //!< equilibrium distance double m_mu; //!< coefficient of friction double m_ks; //!< shear stiffness (Cundall) double m_dt; //!< time step Vec3 m_Ffric; //!< current frictional force Vec3 m_force_deficit; //!< difference between fric. force & force necessary for slip Vec3 m_cpos; //!< contact position Vec3 m_normal_force; //!< current normal force double m_dn; //!< caching displacement for E_pot bool m_is_slipping; //!< static/dynamic status of the interaction bool m_is_touching; //!< contact status of the interaction double m_E_diss; //!< dissipated energy public: CHertzianViscoElasticFrictionInteraction(); CHertzianViscoElasticFrictionInteraction(CParticle*,CParticle*); CHertzianViscoElasticFrictionInteraction( CParticle*, CParticle*, const CHertzianViscoElasticFrictionIGP& ); virtual ~CHertzianViscoElasticFrictionInteraction(); static string getType() {return "HertzianViscoElasticFriction";}; virtual void calcForces(); virtual bool isPersistent(); void setTimeStepSize(double dt); std::pair getAbsFrictionalForce() const; std::pair getAbsFN() const; std::pair getAbsMuFN() const; std::pair getSlipVelocity() const; std::pair getNormalStress() const; std::pair getMaxFricStress() const; std::pair getAbsFrictionalStress() const; double getAbsForceDeficit() const; double getPotentialEnergy() const; double getSlipping()const; double getSticking()const; double getDissipatedEnergy() const; double Count() const; Vec3 getForce() const; Vec3 getNormalForce() const; virtual Vec3 getPos() const {return m_cpos;}; std::pair getMuEff(const Vec3&,const Vec3&) const; std::pair getMuEffXY() const { return getMuEff(Vec3(1.0,0.0,0.0),Vec3(0.0,1.0,0.0)); }; std::pair getMuEffXZ() const { return getMuEff(Vec3(1.0,0.0,0.0),Vec3(0.0,0.0,1.0)); }; friend std::ostream& operator<<( std::ostream&, const CHertzianViscoElasticFrictionInteraction& ); friend class TML_PackedMessageInterface; }; #endif //__HERTZIANVISCOELASTICFRICTIONINTERACTION_H ./Model/ViscWallIG.hpp0000664000175000017500000001313512176660653014357 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //---------------------------------------------- // CViscWallIG functions //---------------------------------------------- #include "Foundation/console.h" template CViscWallIG::CViscWallIG(TML_Comm* comm):AWallInteractionGroup(comm) { } /*! Constructor for wall interaction group with viscous drag \param comm the communicator \param wallp a pointer to the wall \param param the interaction parameters */ template CViscWallIG::CViscWallIG(TML_Comm* comm,CWall* wallp,const CVWallIGP* I) :AWallInteractionGroup(comm) { console.XDebug() << "making CViscWallIG pos \n"; m_k=I->getSpringConst(); this->m_wall=wallp; m_tag=I->getTag(); m_nu=I->getNu(); this->m_inner_count=0; } template void CViscWallIG::calcForces() { console.XDebug() << "calculating " << m_visc_interactions.size() << " viscous wall forces\n" ; console.XDebug() << "calculating " << m_elastic_interactions.size() << " elastic wall forces\n" ; for( typename vector >::iterator it=m_visc_interactions.begin(); it!=m_visc_interactions.end(); it++ ){ it->calcForces(); } for( typename vector >::iterator it=m_elastic_interactions.begin(); it!=m_elastic_interactions.end(); it++ ){ it->calcForces(); } } /*! Set velocity of the wall. Only sets m_vel of the wall, doesn't affect position updates. \param V the velocity */ template void CViscWallIG::setVelocity(const Vec3& V) { this->m_wall->setVel(V); } /*! Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions. \param F the force */ template void CViscWallIG::applyForce(const Vec3& F) { // calculate local K double K=this->m_inner_count*m_k; // get global K double K_global=this->m_comm->sum_all(K); int it=0; double d; Vec3 O_f=F.unit(); // direction of the applied force do{ // calculate local F Vec3 F_local=Vec3(0.0,0.0,0.0); // viscous interactions for ( typename vector >::iterator iter=m_visc_interactions.begin(); iter != m_visc_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // elastic interactions for ( typename vector >::iterator iter=m_elastic_interactions.begin(); iter != m_elastic_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // get global F // by component (hack - fix later,i.e. sum_all for Vec3) double fgx=this->m_comm->sum_all(F_local.X()); double fgy=this->m_comm->sum_all(F_local.Y()); double fgz=this->m_comm->sum_all(F_local.Z()); Vec3 F_global=Vec3(fgx,fgy,fgz); // calc necessary wall movement d=((F+F_global)*O_f)/K_global; // move the wall this->m_wall->moveBy(d*O_f); it++; } while((it<10)&&(fabs(d)>10e-6)); // check for convergence } /*! Update interactions from an existing parallel particle array \param PPA a pointer to the particle array */ template void CViscWallIG::Update(ParallelParticleArray* PPA) { console.XDebug() << "CViscWallIG::Update()\n" ; // -- bonded interactions -- // empty particle list first m_visc_interactions.erase(m_visc_interactions.begin(),m_visc_interactions.end()); this->m_inner_count=0; // build new particle list typename ParallelParticleArray::ParticleListHandle plh= PPA->getParticlesAtPlane(this->m_wall->getOrigin(),this->m_wall->getNormal()); for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ if((*iter)->getTag()==m_tag){// if tagged -> apply viscous drag, i.e. add to viscous interaction bool iflag=PPA->isInInner((*iter)->getPos()); m_visc_interactions.push_back(CViscWallInteraction(*iter,this->m_wall,m_nu,iflag)); this->m_inner_count+=(iflag ? 1 : 0); } } // -- elastic interactions -- // empty particle list first m_elastic_interactions.erase(m_elastic_interactions.begin(),m_elastic_interactions.end()); // build new particle list for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // always add to elastic group, even if in viscous bool iflag=PPA->isInInner((*iter)->getPos()); m_elastic_interactions.push_back(CElasticWallInteraction(*iter,this->m_wall,m_k,iflag)); this->m_inner_count+=(iflag ? 1 : 0); } console.XDebug() << "end CViscWallIG::Update()\n"; } template ostream& operator<<(ostream& ost,const CViscWallIG& IG) { ost << "CViscWallIG" << endl << flush; ost << *(IG.m_wall) << endl << flush; return ost; } ./Model/ABCDampingIGP.cpp0000664000175000017500000000336012176660653014632 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/ABCDampingIGP.h" ABCDampingIGP::ABCDampingIGP(const string& type, const string& name, double visc, double dt, int maxi, const Vec3& vref, const Vec3& pos, const Vec3& normal, double c1) :CDampingIGP(type,name,visc,dt,maxi,vref) { m_pos=pos; m_normal=normal; m_c1=c1; } /*! Pack the parameters for a ABCDamping into a MPI-buffer \param B the buffer */ void ABCDampingIGP::packInto(CVarMPIBuffer* B) const { CDampingIGP::packInto(B); B->append(m_pos); B->append(m_normal); B->append(m_c1); } /*! Extract parameters for a ABCDamping from a MPI-buffer \param B the buffer */ ABCDampingIGP* extractABCDampingIGP(AMPIBuffer* B) { ABCDampingIGP* res = new ABCDampingIGP; res->setName(B->pop_string()); res->setType(B->pop_string()); res->setVRef(B->pop_vector()); res->setVisc(B->pop_double()); res->setTimeStep(B->pop_double()); res->setMaxIter(B->pop_int()); res->setPos(B->pop_vector()); res->setNormal(B->pop_vector()); res->setC1(B->pop_double()); return res; } ./Model/RotThermPairInteraction.h0000664000175000017500000000430312176660653016630 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMPAIRINTERCTION_H #define __ROTTHERMPAIRINTERCTION_H // -- project includes -- #include "Model/RotThermParticle.h" #include "Model/Interaction.h" /*! Abstract base class interactions between 2 rotational particles */ class ARotThermPairInteraction : public AInteraction { protected: CRotThermParticle *m_p1,*m_p2; public: // functions ARotThermPairInteraction(); ARotThermPairInteraction(CRotThermParticle*,CRotThermParticle*); virtual ~ARotThermPairInteraction(); inline const CRotThermParticle* first()const {return m_p1;}; inline const CRotThermParticle* second()const {return m_p2;}; inline CRotThermParticle* first() {return m_p1;}; inline CRotThermParticle* second() {return m_p2;}; inline pair getPairID() const {return make_pair(m_p1->getID(),m_p2->getID());} virtual Vec3 getPos() const = 0; virtual void calcForces()=0 ; virtual void calcHeatFrict(){} ; virtual void calcHeatTrans(){} ; void checkIDs(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p1->getPos();} virtual Vec3 getPosSecond() const {return m_p2->getPos();} void setPP(CRotThermParticle*,CRotThermParticle*); void setPP(const vector); esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p1->getPos(), m_p1->getRad(), m_p2->getPos(), m_p2->getRad(), getPos() ); } }; #endif // __ROTTHERMPAIRINTERCTION_H ./Model/RotThermElasticInteractionGroup.cpp0000664000175000017500000000343712176660653020700 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "RotThermElasticInteractionGroup.h" #include "console.h" //---------------------------------------- // CElasticIGP member functions //---------------------------------------- void CRotThermElasticIGP::packInto(CVarMPIBuffer* B) const { AIGParam::packInto(B); B->append(m_kr); B->append(diffusivity); } CRotThermElasticIGP* extractRotThermElasticIGP(AMPIBuffer* B) { CRotThermElasticIGP* res=new CRotThermElasticIGP; B->pop_int(); res->setName(B->pop_string()); res->setSpringConst(B->pop_double()); res->setDiffusivity(B->pop_double()); return res; } /*! extract the specific part of CElasticIGP, i.e. without the type info */ CRotThermElasticIGP* extractRotThermElasticIGP_p(AMPIBuffer* B) { CRotThermElasticIGP* res=new CRotThermElasticIGP; res->setName(B->pop_string()); res->setSpringConst(B->pop_double()); res->setDiffusivity(B->pop_double()); return res; } ostream& operator<<(ostream& ost,const CRotThermElasticIGP& B) { ost << "CRotElasticIGP\n"; ost << "Spring Constant : " << B.m_kr << endl; ost << "Diffusivity : " << B.diffusivity << endl; return ost; } ./Model/RotElasticInteraction.h0000664000175000017500000000601512176660653016323 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTELASTICINTERACTION_H #define __ROTELASTICINTERACTION_H #include "Model/RotPairInteraction.h" #include "Model/RotParticle.h" #include "Model/IGParam.h" /*! \brief Interaction group parameters for CRotElasticInteractionGroups */ class CRotElasticIGP : public AIGParam { protected: public: CRotElasticIGP(); CRotElasticIGP(const std::string &name, double kr, bool scaling); double m_kr; bool m_scaling; virtual void packInto(CVarMPIBuffer*) const; void setNormalSpringConst(double k){m_kr=k;}; double getNormalSpringConst() const{return m_kr;}; virtual std::string getTypeString() const {return "RotElastic";} friend ostream& operator<<(ostream&,const CRotElasticIGP&); }; CRotElasticIGP* extractRotElasticIGP(AMPIBuffer*); CRotElasticIGP* extractRotElasticIGP_p(AMPIBuffer*); /*! \class CRotElasticInteraction \brief Elastic Interaction between free rotational particles */ class CRotElasticInteraction : public ARotPairInteraction { public: typedef double (CRotElasticInteraction::* ScalarFieldFunction)() const; typedef pair (CRotElasticInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotElasticInteraction::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); private: double m_kr; //!< spring constant Vec3 m_force; //!< caching force for E_pot double m_nForce; //!< normal force, always >= 0 Vec3 m_cpos; //!< current position Vec3 m_D; //!< initial positions of the particles bool m_scaling; //!< scaling of normal stiffness with particle size public: typedef CRotElasticIGP ParameterType; CRotElasticInteraction(); CRotElasticInteraction(CRotParticle*,CRotParticle*,const CRotElasticIGP&); virtual ~CRotElasticInteraction(){}; virtual Vec3 getPos() const {return m_cpos;} static string getType(){return "RotElastic";} virtual void calcForces(); Vec3 getForce() const; double getPotentialEnergy() const; friend ostream& operator<<(ostream&,const CRotElasticInteraction&); // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__ELASTICINTERACTION_H ./Model/RotElasticInteractionGroup.h0000664000175000017500000000360412176660653017341 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTELASTICINTERACTIONGROUP_H #define __ROTELASTICINTERACTIONGROUP_H #include "Model/InteractionGroup.h" #include "Model/RotElasticInteraction.h" #include "Model/IGParam.h" //--- IO includes --- #include using std::ostream; using std::endl; /*! \brief Class for a group of unbonded,elastic interactions */ template class CRotElasticInteractionGroup : public APairInteractionGroup { protected: vector m_interactions; AParallelInteractionStorage* m_exIG; //*); friend ostream& operator<< <>(ostream&,const CRotElasticInteractionGroup&); }; #include "Model/RotElasticInteractionGroup.hpp" #endif //__ELASTICINTERACTIONGROUP_H ./Model/ViscWallInteraction.h0000664000175000017500000000254112176660653015776 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VISCWALLINTERACTION_H #define __VISCWALLINTERACTION_H #include "Model/WallInteraction.h" #include "Model/Wall.h" /*! \class CViscWallInteraction \brief bonded elastic interaction between a particle and a wall \author Steffen Abe $Revision$ $Date$ */ template class CViscWallInteraction : public AWallInteraction { protected: double m_nu; //!< viscosity public: // CViscWallInteraction(); CViscWallInteraction(T*,CWall*,double,bool); virtual ~CViscWallInteraction(){}; virtual void calcForces(); virtual Vec3 getForce(); virtual void setPP(const vector){}; }; #include "Model/ViscWallInteraction.hpp" #endif //__VISCWALLINTERACTION_H ./Model/BodyForceGroup.h0000664000175000017500000001176212176660653014750 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef ESYS_LSMBODYFORCEGROUP_H #define ESYS_LSMBODYFORCEGROUP_H #include "Model/InteractionGroup.h" #include "Foundation/vec3.h" template class ParallelParticleArray; namespace esys { namespace lsm { class BodyForceIGP : public AIGParam { public: BodyForceIGP(); BodyForceIGP(const std::string &name, const Vec3 &acceleration); virtual ~BodyForceIGP(); const Vec3 &getAcceleration() const; const std::string &getName() const; virtual void packInto(CVarMPIBuffer *pBuffer) const; static BodyForceIGP extract(CVarMPIBuffer *pBuffer); virtual std::string getTypeString() const {return "BodyForce";} protected: Vec3 m_acceleration; }; class GravityIGP : public BodyForceIGP { public: GravityIGP() : BodyForceIGP() { } GravityIGP(const std::string &name, const Vec3 &acceleration) : BodyForceIGP(name, acceleration) { } virtual std::string getTypeString() const {return "Gravity";} private: }; class BuoyancyIGP : public AIGParam { public: BuoyancyIGP() { } BuoyancyIGP(const std::string &name, const Vec3 &acceleration, const double &fluidDensity, const double &fluidHeight); virtual std::string getTypeString() const {return "Buoyancy";} virtual void packInto(CVarMPIBuffer *pBuffer) const; static BuoyancyIGP extract(CVarMPIBuffer *pBuffer); const double &getFluidDensity () const; const double &getFluidHeight () const; const Vec3 &getAcceleration() const; private: Vec3 m_acceleration; double m_fluidDensity, m_fluidHeight; }; /** * Objects of this class apply a gravitational body-acceleration * to individual particles. */ template class BodyForceGroup : public AInteractionGroup { public: typedef ParallelParticleArray ParticleArray; typedef typename ParticleArray::ParticleListIterator ParticleIterator; BodyForceGroup(const BodyForceIGP &prms, ParticleArray &particleArray); ~BodyForceGroup(); /** * Returns the force which would be applied to a * particle of the specified mass. * * @param mass A mass ("units" assumed to be same as * the acceleration units). */ Vec3 getForce(double mass) const; /** * Applies body force to the specified particle. * * @param particle Force applied to this particle using * a call to particle.applyForce(...). */ void applyForce(TmplParticle &particle) const; virtual void Update(ParallelParticleArray *particleArray); /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); private: Vec3 m_acceleration; ParticleArray *m_pParticleArray; }; template class BuoyancyForceGroup : public AInteractionGroup { public: typedef ParallelParticleArray ParticleArray; typedef typename ParticleArray::ParticleListIterator ParticleIterator; BuoyancyForceGroup(const BuoyancyIGP &prms, ParticleArray &particleArray); ~BuoyancyForceGroup(); /** * Returns the force which would be applied to a * particle of the specified mass. * * @param mass A mass ("units" assumed to be same as * the acceleration units). */ Vec3 getForce(double volume) const; /** * Applies body force to the specified particle. * * @param particle Force applied to this particle using * a call to particle.applyForce(...). */ void applyForce(TmplParticle &particle) const; virtual void Update(ParallelParticleArray *particleArray); /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); private: Vec3 m_acceleration; ParticleArray *m_pParticleArray; double m_fluidDensity, m_fluidHeight; }; } } #include "Model/BodyForceGroup.hpp" #endif ./Model/TempPartStore.hpp0000664000175000017500000000612712176660653015167 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /*! Construct a new TTempPartStore \param min minimum corner of the volume \param max maximum corner of the volume \param nx nr. of slaves in x-direction \param ny nr. of slaves in y-direction \param nz nr. of slaves in z-direction */ template TTempPartStore::TTempPartStore(const Vec3& min,const Vec3& max, int nx,int ny,int nz) { // minimum corner m_xmin=min.X(); m_ymin=min.Y(); m_zmin=min.Z(); // size of a block m_xsize=(max.X()-min.X())/double(nx); m_ysize=(max.Y()-min.Y())/double(ny); m_zsize=(max.Z()-min.Z())/double(nz); // number of blocks m_nx=nx; m_ny=ny; m_nz=nz; } /*! helper function which translates block coordinates into an index \param x the x coordinate \param y the y coordinate \param z the z coordinate \return the index */ template int TTempPartStore::coordsToIndex(int x,int y,int z) { return x*m_ny*m_nz+y*m_nz+z; } /*! helper function which returns the index of the block in which a given point is located. \param pos the position of the point \return the index */ template int TTempPartStore::posToIndex(const Vec3& pos) { int posx=int(floor((pos.X()-m_xmin)/m_xsize)); int posy=int(floor((pos.Y()-m_ymin)/m_ysize)); int posz=int(floor((pos.Z()-m_zmin)/m_zsize)); return coordsToIndex(posx,posy,posz); } /*! add a new slave to the coordinate->rank mapping table \param cx x-coordinate of the slave \param cy y-coordinate of the slave \param cz z-coordinate of the slave \param rank the rank of the slave (in MPI_COMM_WORLD) */ template void TTempPartStore::addSlaveID(int cx,int cy,int cz,int rank) { int idx=coordsToIndex(cx,cy,cz); m_slave_id_map.insert(make_pair(idx,rank)); } /*! add a new particle to the storage \param p the particle */ template void TTempPartStore::addParticle(const T& p) { int idx=posToIndex(p.getPos()); int sl_id=m_slave_id_map[idx]; cout << "Inserting particle at pos " << p.getPos() << " index " << idx << "slave " << sl_id << endl; typename multimap::iterator it=m_mmap.insert(make_pair(sl_id,p)); m_by_id.insert(make_pair(p.getID(),it)); } /*! add a connection between2 particles to the storage \param id1 the Id of the first particle \param id2 the Id of the second particle \param tag the connection tag \warning not implemented */ template void TTempPartStore::addConnection(int id1,int id2,int tag) {} ./Model/ETriangleInteraction.cpp0000664000175000017500000000330412176660653016455 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ETriangleInteraction.h" // -- STL includes -- #include using std::pair; /*! default constructor */ ETriangleInteraction::ETriangleInteraction() { m_p=NULL; m_t=NULL; m_k=0.0; m_inner_flag=false; } /*! constructor with parameters \param p \param t \param param \param iflag */ ETriangleInteraction::ETriangleInteraction(CParticle* p,Triangle* t,ETriMeshIP param,bool iflag) { m_p=p; m_t=t; // scale elastic param double f=1.0; if(!CParticle::getDo2dCalculations()){ f*=this->m_p->getRad(); } m_k=f*param.k; m_inner_flag=iflag; } /*! destructor */ ETriangleInteraction::~ETriangleInteraction() {} /*! calculate & apply forces */ void ETriangleInteraction::calcForces() { pair dist=m_t->dist(m_p->getPos()); if(dist.first && (dist.secondgetRad())){ Vec3 force=m_k*(m_p->getRad()-dist.second)*m_t->getNormal(); Vec3 pos=m_p->getPos()-dist.second*m_t->getNormal(); m_p->applyForce(force,pos); if(m_inner_flag) m_t->applyForce(-1.0*force); } } ./Model/EEdge2DInteraction.cpp0000664000175000017500000000311312176660653015740 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "EEdge2DInteraction.h" #include "Foundation/vec3.h" // -- STL includes -- #include using std::pair; /*! default constructor */ EEdge2DInteraction::EEdge2DInteraction() { m_p=NULL; m_edge=NULL; m_k=0.0; m_inner_flag=false; } /*! constructor with parameters \param p \param e \param param \param iflag */ EEdge2DInteraction::EEdge2DInteraction(CParticle* p,Edge2D* e,ETriMeshIP param ,bool iflag) { m_p=p; m_edge=e; m_k=param.k; m_inner_flag=iflag; } /*! destructor */ EEdge2DInteraction::~EEdge2DInteraction() {} /*! calculate & apply forces */ void EEdge2DInteraction::calcForces() { Vec3 ppos=m_p->getPos(); pair dist=m_edge->dist(ppos); if(dist.first && (dist.secondgetRad())){ Vec3 force=m_k*(m_p->getRad()-dist.second)*m_edge->getNormal(); Vec3 pos=m_p->getPos()-dist.second*m_edge->getNormal(); m_p->applyForce(force,pos); } } ./Model/EEdgeInteraction.cpp0000664000175000017500000000356412176660653015564 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "EEdgeInteraction.h" #include "Foundation/vec3.h" // -- STL includes -- #include using std::pair; /*! default constructor */ EEdgeInteraction::EEdgeInteraction() { m_p=NULL; m_edge=NULL; m_k=0.0; m_inner_flag=false; } /*! constructor with parameters \param p \param e \param param \param iflag */ EEdgeInteraction::EEdgeInteraction(CParticle* p,Edge* e,ETriMeshIP param ,bool iflag) { m_p=p; m_edge=e; // scale elastic param double f=1.0; if(!CParticle::getDo2dCalculations()){ f*=this->m_p->getRad(); } m_k=f*param.k; m_inner_flag=iflag; } /*! destructor */ EEdgeInteraction::~EEdgeInteraction() {} /*! calculate & apply forces */ void EEdgeInteraction::calcForces() { Vec3 ppos=m_p->getPos(); if(m_edge->isValidContact(ppos)){ // if no contact to adjacent triangles pair dist=m_edge->dist(ppos); if(dist.first && (dist.secondgetRad())){ Vec3 force=m_k*(m_p->getRad()-dist.second)*m_edge->getDirectionFromPoint(m_p->getPos()); Vec3 pos=m_p->getPos()-dist.second*m_edge->getDirectionFromPoint(m_p->getPos()); m_p->applyForce(force,pos); if(m_inner_flag) m_edge->applyForce(-1.0*force); } } } ./Model/BTriMeshInteractionCpData.h0000664000175000017500000000266412176660653017012 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BTRIMESHINTERACTIONCPDATA_H #define __BTRIMESHINTERACTIONCPDATA_H // -- Project includes -- #include "Foundation/vec3.h" #include "Parallel/CheckPointable.h" class BTriangleInteraction; // forward decl. /** * Helper class for checkpointing BTriangleInteraction data. */ class BTriMeshInteractionCpData : public esys::lsm::CheckPointable { private: Vec3 m_ap; int m_tid; int m_pid; public: BTriMeshInteractionCpData(); virtual ~BTriMeshInteractionCpData(){} BTriMeshInteractionCpData(const BTriangleInteraction&); void set(const BTriangleInteraction& ); virtual void saveSnapShotData(std::ostream&); virtual void saveCheckPointData(std::ostream&); virtual void loadCheckPointData(std::istream&); }; #endif //__BTRIMESHINTERACTIONCPDATA_H ./Model/RotFricInteraction.cpp0000664000175000017500000004167112176660653016164 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/RotFricInteraction.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" extern double calc_angle(double , double); CRotFrictionIGP::CRotFrictionIGP() : AIGParam(), k(0.0), mu_d(0.0), mu_s(0.0), k_s(0.0), dt(0.0), scaling(true), rigid(false), meanR_scaling(true) { } CRotFrictionIGP::CRotFrictionIGP( const std::string &name, double kR, double muD, double muS, double kS, double dT, bool scaling, bool rigid, bool meanR_scaling ) : AIGParam(name), k(kR), mu_d(muD), mu_s(muS), k_s(kS), dt(dT), scaling(scaling), rigid(rigid), meanR_scaling(meanR_scaling) { } CRotFrictionIGP::CRotFrictionIGP( const std::string &name, double youngsModulus, double poissonsRatio, double mu_d, double mu_s, double dt, bool rigid, bool meanR_scaling ) : AIGParam(name), mu_d(mu_d), mu_s(mu_s), dt(dt), scaling(true), rigid(rigid), meanR_scaling(meanR_scaling) { double shearModulus = youngsModulus / (2.0*(1. + poissonsRatio)); k = M_PI*youngsModulus; k_s = M_PI*shearModulus; } void CRotFrictionIGP::setTimeStepSize(double timeStepSize) { this->dt = timeStepSize; } CRotFrictionInteraction::CRotFrictionInteraction():ARotPairInteraction() { m_k=0.0; m_mu_d=0.0; m_mu_s=0.0; m_r0=0.0; m_ks=0.0; m_dt=0.0; m_is_slipping=false; m_is_touching=false; m_Ffric = Vec3(0.0,0.0,0.0); m_E_diss = 0.0; m_scaling = true; m_meanR_scaling = true; m_rigid = false; } CRotFrictionInteraction::CRotFrictionInteraction( CRotParticle* p1, CRotParticle* p2, const CRotFrictionIGP& param ) : ARotPairInteraction(p1,p2) { double effR=1.0; double effL=1.0; double effA=1.0; m_r0=p1->getRad()+p2->getRad(); m_scaling = param.scaling; m_meanR_scaling = param.meanR_scaling; m_rigid = param.rigid; // scale elastic param if (m_scaling == true) { if(!CParticle::getDo2dCalculations()){ if (m_meanR_scaling == true) { effR=0.5*m_r0; } else { effR=fmin(p1->getRad(), p2->getRad()); } effL=m_r0; effA = effR * effR; } } m_k = param.k * effA / effL; m_ks = param.k_s * effA / effL; m_mu_d = param.mu_d; m_mu_s = param.mu_s; m_dt=param.dt; m_cpos=p1->getPos()+((p2->getPos()-p1->getPos())*p1->getRad()/m_r0); m_is_slipping=false; m_is_touching=false; m_Ffric = Vec3(0.0,0.0,0.0); m_E_diss = 0.0; } void CRotFrictionInteraction::setTimeStepSize(double dt) { m_dt = dt; } CRotFrictionInteraction::~CRotFrictionInteraction() { } void CRotFrictionInteraction::calcForces() { if (m_rigid) { calcRigidBodyForces() ; } else { calcSimpleForces() ; } } /*! Calculate elastic and frictional forces. Rigid body rotations of particle-pairs are ignored */ void CRotFrictionInteraction::calcSimpleForces() { // calculate distance const Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; const double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)){ // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); const Vec3 force(D*(m_k*(dist-eq_dist)/dist)); m_normal_force=force; const Vec3 pos(m_p2->getPos()+(m_p2->getRad()/eq_dist)*D); // apply elastic force m_p2->applyForce(force,pos); m_p1->applyForce(-1.0*force,pos); //--- frictional force --- // Calculate the relative linear-displacement of point // pos on each of the particles. const Vec3 vp1 = m_p1->getVel() + cross(m_p1->getAngVel(), pos-m_p1->getPos()); const Vec3 vp2 = m_p2->getVel() + cross(m_p2->getAngVel(), pos-m_p2->getPos()); Vec3 ds((vp2-vp1)*m_dt); // Get the tangential component by subtracting off the normal component. ds -= ((ds*D)/(D.norm2()))*D; m_Ffric += m_ks*ds; const double FfricNorm = m_Ffric.norm(); const double forceNorm = force.norm(); if (FfricNorm > forceNorm*m_mu_s) { // tangential force greater than static friction -> dynamic m_Ffric = m_Ffric*((m_mu_d*forceNorm)/FfricNorm); m_force_deficit = Vec3(0.0,0.0,0.0); m_is_slipping = true; m_E_diss = fabs(m_Ffric * ds); // energy dissipated } else { // static friction or no frictional force m_is_slipping = false; m_E_diss = 0.0; // no energy dissipated } const Vec3 Moment1(cross(pos-m_p1->getPos(), m_Ffric)); const Vec3 Moment2(cross(pos-m_p2->getPos(), -m_Ffric)); m_p1->applyMoment(Moment1); m_p2->applyMoment(Moment2); m_p1->applyForce(m_Ffric,pos); m_p2->applyForce(-1.0*m_Ffric,pos); m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 m_Ffric=Vec3(0.0,0.0,0.0); m_force_deficit=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; // no energy dissipated } } /** * Yucang Wang's friction implementation which takes into * account rigid body rotation of particle-pairs. */ void CRotFrictionInteraction::calcRigidBodyForces() { //cout << "wyc in RotFric:: calcF " <getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)){ // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); force=D*(m_k*(dist-eq_dist)/dist); m_normal_force=force; pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; // apply elastic force m_p1->applyForce(-1.0*force,pos); m_p2->applyForce(force,pos); //--- frictional force --- const Vec3 vp1_trs = m_p1->getVel(); const Vec3 vp2_trs = m_p2->getVel(); const Vec3 vp1_rot = cross(m_p1->getAngVel(),pos-m_p1->getPos()); const Vec3 vp2_rot = cross(m_p2->getAngVel(),pos-m_p2->getPos()); const Vec3 dv_trs = vp2_trs-vp1_trs ; // tangential part const Vec3 dv_trs_s = dv_trs - (dot(dv_trs,D)/D.norm2())*D ; const Vec3 ds = (vp2_rot-vp1_rot + dv_trs_s )*m_dt ; if(!m_is_slipping) { if (!m_is_touching) { m_Ffric = Vec3(0.0,0.0,0.0); //first touch } else { // due to motion of 2 particles as a rigid body ! // Matrix3 mat0 = (m_p1->getQuat()).to_matrix() ; Vec3 rbp = m_p2->getPos() - m_p1->getPos() ; Vec3 vbp = m_p2->getVel() - m_p1->getVel() ; double rbp0 = rbp.norm() ; Vec3 omiga_s = 0.5*( m_p1->getAngVel()+m_p2->getAngVel()); Vec3 omiga_spin = dot(omiga_s,rbp)*rbp/(rbp0*rbp0) ; Vec3 omiga_m = cross(rbp,vbp)/(rbp0*rbp0) ; d_Ffric = m_dt*cross(omiga_spin + omiga_m , m_Ffric ) ; m_Ffric += d_Ffric ; } if((m_Ffric+m_ks*ds).norm()>force.norm()*m_mu_s) { m_is_slipping=true ; m_Ffric= m_mu_d*force.norm() *ds/ds.norm(); m_force_deficit = Vec3(0.0,0.0,0.0); m_E_diss = fabs(m_Ffric * ds); // energy dissipated } else { m_Ffric += m_ks*ds; m_E_diss = 0.0; // no energy dissipated } } else { if (ds.norm() > 1.0e-8) { m_Ffric= m_mu_d*force.norm() *ds/ds.norm(); m_force_deficit = Vec3(0.0,0.0,0.0); m_E_diss = fabs(m_Ffric * ds); // energy dissipated } else { m_is_slipping= false; m_E_diss = 0.0; // no energy dissipated } } const Vec3 Moment1(cross(pos-m_p1->getPos(), m_Ffric)); const Vec3 Moment2(cross(pos-m_p2->getPos(), -m_Ffric)); m_p1->applyForce(m_Ffric,pos); m_p2->applyForce(-1.0*m_Ffric,pos); m_p1->applyMoment(Moment1) ; m_p2->applyMoment(Moment2) ; m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 m_Ffric=Vec3(0.0,0.0,0.0); m_force_deficit=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); m_is_slipping=false; m_is_touching=false; m_E_diss = 0.0; // no energy dissipated } } bool CRotFrictionInteraction::isPersistent() { Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); return dist<=(eq_dist*eq_dist); } /*! get the force needed to overcome friction and make the interaction slip */ double CRotFrictionInteraction::getAbsForceDeficit()const { return m_force_deficit.norm(); } /*! Calculate the normal force. */ void CRotFrictionInteraction::calcNormalForce() { Vec3 pos; // calculate distance const Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; const double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)){ // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); m_normal_force=D*(m_k*(dist-eq_dist)/dist); } } /*! get the potential energy stored in the interaction \warning For performance reasons the tangential part of the elastic energy is calculated directly from the current tangential force whereas it would be more accurate to calculate it incrementally during the force calculation. Be aware that therefore the potential energy is an approximation. Tests suggest an accuracy of a few percent. */ double CRotFrictionInteraction::getPotentialEnergy() const { double e_pot_norm=0.5*m_normal_force*m_normal_force/m_k; double e_pot_tan=0.5*m_Ffric*m_Ffric/m_ks; return e_pot_norm+e_pot_tan; } /*! Get the static/dynamic status of the interaction. Returns 1 for a contact in dynamic friction, 0 for static or no contact */ double CRotFrictionInteraction::getSlipping() const { double res=m_is_slipping ? 1.0 : 0.0; return res; } /*! Get "sticking" contacts, i.e. return 1 if the contact is touching but not slipping, 0 otherwise */ double CRotFrictionInteraction::getSticking() const { const double res=(m_is_touching && !m_is_slipping) ? 1.0 : 0.0; return res; } /*! return the amount of energy dissipated during the last time step */ double CRotFrictionInteraction::getDissipatedEnergy() const { return m_E_diss; } /*! If the particles are in contact, get total force, if not in contact return (0,0,0) */ Vec3 CRotFrictionInteraction::getForce() const { const Vec3 f=m_is_touching ? m_Ffric-m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! If the particles are in contact, get normal force, if not in contact return (0,0,0) */ Vec3 CRotFrictionInteraction::getNormalForce() const { const Vec3 f=m_is_touching ? m_normal_force : Vec3(0.0,0.0,0.0); return f; } Vec3 CRotFrictionInteraction::getTangentialForce() const { const Vec3 f=m_is_touching ? m_Ffric : Vec3(0.0,0.0,0.0); return f; } /*! return 1 if particles are in contact, 0 otherwise */ double CRotFrictionInteraction::Count() const { double res=m_is_touching ? 1.0 : 0.0; return res; } /*! Return distance slipped at the contact in the current time step. Returns 0 if interaction is sticking or if particles are not in contact. */ double CRotFrictionInteraction::getAbsSlip() const { double slipdist=0.0; if(m_is_touching && m_is_slipping){ // calculate distance const Vec3 D=m_p1->getPos()-m_p2->getPos(); // Calculate the relative linear-displacement of point // pos on each of the particles. const Vec3 vp1 = m_p1->getVel() + cross(m_p1->getAngVel(), m_cpos-m_p1->getPos()); const Vec3 vp2 = m_p2->getVel() + cross(m_p2->getAngVel(), m_cpos-m_p2->getPos()); Vec3 ds((vp2-vp1)*m_dt); // Get the tangential component by subtracting off the normal component. ds -= ((ds*D)/(D.norm2()))*D; // Get slip distance from tangential velocity and time step slipdist=ds.norm()*m_dt; } return slipdist; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CRotFrictionInteraction::ScalarFieldFunction CRotFrictionInteraction::getScalarFieldFunction(const string& name) { CRotFrictionInteraction::ScalarFieldFunction sf; if(name=="force_deficit"){ sf=&CRotFrictionInteraction::getAbsForceDeficit; } else if (name=="potential_energy"){ sf=&CRotFrictionInteraction::getPotentialEnergy; } else if (name=="slipping"){ sf=&CRotFrictionInteraction::getSlipping; } else if (name=="sticking"){ sf=&CRotFrictionInteraction::getSticking; } else if (name=="count"){ sf=&CRotFrictionInteraction::Count; } else if (name=="dissipated_energy") { sf=&CRotFrictionInteraction::getDissipatedEnergy; } else if (name=="slip_distance") { sf=&CRotFrictionInteraction::getAbsSlip; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } CRotFrictionInteraction::CheckedScalarFieldFunction CRotFrictionInteraction::getCheckedScalarFieldFunction(const string& name) { CRotFrictionInteraction::CheckedScalarFieldFunction sf = NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CRotFrictionInteraction::VectorFieldFunction CRotFrictionInteraction::getVectorFieldFunction(const string& name) { CRotFrictionInteraction::VectorFieldFunction vf=NULL; if (name=="force") { vf = &CRotFrictionInteraction::getForce; } else if (name=="normal_force") { vf = &CRotFrictionInteraction::getNormalForce; } else if (name=="tangential_force") { vf = &CRotFrictionInteraction::getTangentialForce; } else if (name=="frictional_force") { vf = &CRotFrictionInteraction::getTangentialForce; } else { cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Pack a CFrictionInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CRotFrictionInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu_d); append(I.m_mu_s); append(I.m_ks); append(I.m_dt); append(static_cast(I.m_scaling)); append(static_cast(I.m_meanR_scaling)); append(I.m_id[0]); append(I.m_id[1]); append(static_cast(I.m_is_slipping)); append(I.m_Ffric.X()); append(I.m_Ffric.Y()); append(I.m_Ffric.Z()); } /*! Unpack a CFrictionInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CRotFrictionInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu_d=pop_double(); I.m_mu_s=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_scaling=static_cast(pop_int()); I.m_meanR_scaling=static_cast(pop_int()); I.m_id.clear(); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_is_slipping = static_cast(pop_int()); I.m_Ffric.X() = pop_double(); I.m_Ffric.Y() = pop_double(); I.m_Ffric.Z() = pop_double(); } /*! Save restart data to an open ostream \param oStream the output stream */ void CRotFrictionInteraction::saveRestartData(std::ostream &oStream) { oStream << m_k << " "; oStream << m_r0 << " "; oStream << m_mu_d << " "; oStream << m_mu_s << " "; oStream << m_ks << " "; oStream << m_dt << " "; oStream << m_scaling << " "; oStream << m_meanR_scaling << " "; oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_is_slipping << " "; oStream << m_is_touching << " "; oStream << m_Ffric.X() << " "; oStream << m_Ffric.Y() << " "; oStream << m_Ffric.Z(); } /*! Load restart data from an open istream \param iStream the input stream */ void CRotFrictionInteraction::loadRestartData(std::istream &iStream) { iStream >> m_k ; iStream >> m_r0 ; iStream >> m_mu_d ; iStream >> m_mu_s ; iStream >> m_ks ; iStream >> m_dt ; iStream >> m_scaling ; iStream >> m_meanR_scaling ; iStream >> m_id[0] ; iStream >> m_id[1] ; iStream >> m_is_slipping ; iStream >> m_is_touching ; iStream >> m_Ffric.X() ; iStream >> m_Ffric.Y() ; iStream >> m_Ffric.Z(); } ostream& operator<<(ostream& ost,const CRotFrictionInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/BWallInteraction.h0000664000175000017500000000261312176660653015253 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BWALLINTERACTION_H #define __BWALLINTERACTION_H #include "Model/WallInteraction.h" #include "Model/Wall.h" /*! \class CBondedWallInteraction \brief bonded elastic interaction between a particle and a wall \author Steffen Abe $Revision$ $Date$ */ template class CBondedWallInteraction : public AWallInteraction { protected: double m_k;//!< spring constant public: // CBondedWallInteraction(); CBondedWallInteraction(T*,CWall*,double,bool); virtual ~CBondedWallInteraction(){}; virtual void calcForces(); virtual Vec3 getForce(); virtual void setPP(const vector){}; virtual double getStiffness(){return m_k;}; }; #include "BWallInteraction.hpp" #endif //__BWALLINTERACTION_H ./Model/TriMesh.cpp0000664000175000017500000002141712176660653013763 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "TriMesh.h" #include "console.h" #include "MeshReader.h" using namespace esys::lsm; /*! Constructor */ TriMesh::TriMesh() {} /*! setup the triangle mesh from node,edge and triangle data \param node_vec the node data \param tri_vec the triangle data */ void TriMesh::LoadMesh(const vector& node_vec, const vector& tri_vec) { console.XDebug() << " TriMesh::LoadMesh()\n"; // setup node map for(vector::const_iterator iter=node_vec.begin(); iter!=node_vec.end(); iter++){ Corner Co=Corner(Vec3(iter->x,iter->y,iter->z),iter->id,iter->tag); m_corners.push_back(Co); m_corner_by_id.insert(make_pair(iter->id,m_corners.size()-1)); } console.XDebug() << m_corner_by_id.size() << " elements in node map\n"; // generate edges and connect them to the correct triangles map,vector > edge_mmap; // generate triangles for(vector::const_iterator iter=tri_vec.begin(); iter!=tri_vec.end(); iter++){ int id0=iter->p1; int id1=iter->p2; int id2=iter->p3; Vec3 p1=m_corners[m_corner_by_id[id0]].getPos(); Vec3 p2=m_corners[m_corner_by_id[id1]].getPos(); Vec3 p3=m_corners[m_corner_by_id[id2]].getPos(); Triangle Tri=Triangle(id0,id1,id2,p1,p2,p3,iter->id,iter->tag); m_triangles.push_back(Tri); // add edges to mmap int nt=m_triangles.size()-1; // 1-2 edge if(iter->p1p2){ vector &tv=(edge_mmap[make_pair(iter->p1,iter->p2)]); tv.push_back(nt); } else { vector &tv=(edge_mmap[make_pair(iter->p2,iter->p1)]); tv.push_back(nt); } // 2-3 edge if(iter->p2p3){ vector &tv=(edge_mmap[make_pair(iter->p2,iter->p3)]); tv.push_back(nt); } else { vector &tv=(edge_mmap[make_pair(iter->p3,iter->p2)]); tv.push_back(nt); } // 3-1 edge if(iter->p1p3){ vector &tv=(edge_mmap[make_pair(iter->p1,iter->p3)]); tv.push_back(nt); } else { vector &tv=(edge_mmap[make_pair(iter->p3,iter->p1)]); tv.push_back(nt); } } // setup mapping from node id to triangle for(vector::iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ Triangle* tr_ptr=&(*iter); // get node ids int id0=(iter->getP0()).first; int id1=(iter->getP1()).first; int id2=(iter->getP2()).first; // add pairs m_triangle_by_node_id.insert(make_pair(id0,tr_ptr)); m_triangle_by_node_id.insert(make_pair(id1,tr_ptr)); m_triangle_by_node_id.insert(make_pair(id2,tr_ptr)); } // and triangle id to triangle for(size_t i=0;i,vector >::iterator iter=edge_mmap.begin(); iter!=edge_mmap.end(); iter++){ int id1=iter->first.first; int id2=iter->first.second; Vec3 p1=m_corners[m_corner_by_id[id1]].getPos(); Vec3 p2=m_corners[m_corner_by_id[id2]].getPos(); size_t ntri=(iter->second).size(); switch(ntri){ case 1: { m_edges.push_back(Edge(id1,id2,p1,p2,&(m_triangles[iter->second[0]]))); }; break; case 2: { m_edges.push_back(Edge(id1,id2,p1,p2,&(m_triangles[iter->second[0]]),&(m_triangles[iter->second[1]]))); }; break; default : console.Error() << "Edge contained in " << ntri << " triangles ??"; break; } } // setup mapping from node id to edge for(vector::iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ Edge* e_ptr=&(*iter); // get node ids pair ids=iter->getIDs(); // add pairs m_edge_by_node_id.insert(make_pair(ids.first,e_ptr)); m_edge_by_node_id.insert(make_pair(ids.second,e_ptr)); } console.XDebug() << "end TriMesh::LoadMesh()\n"; } /*! Move a node in the mesh. If the node with the given Id isn't in the mesh, nothing happens \param id the id of the node \param d the displacement */ void TriMesh::moveNode(int id,const Vec3& d) { // move triangles typedef multimap::iterator tmmi; pair tfound=m_triangle_by_node_id.equal_range(id); for(tmmi iter=tfound.first;iter!=tfound.second;iter++){ iter->second->moveNode(id,d); } // move edges typedef multimap::iterator emmi; pair efound=m_edge_by_node_id.equal_range(id); for(emmi iter=efound.first;iter!=efound.second;iter++){ iter->second->moveNode(id,d); } // move corners m_corners[m_corner_by_id[id]].move(d); } void TriMesh::translateBy(const Vec3 &translation) { // move triangles for(triangle_iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ iter->move(translation); } // move edges for(edge_iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ iter->move(translation); } // move corners for(corner_iterator it = m_corners.begin(); it != m_corners.end(); ++it){ it->move(translation); } } /*! check if any point in the mesh has moved by at least the given distance \param dist the distance */ bool TriMesh::hasMovedBy(double dist) { bool not_moved_by=true; std::vector::iterator it = m_corners.begin(); while ((it != m_corners.end()) && (not_moved_by)){ // while (it != m_corners.end()){ double dist_moved=it->getDistMoved(); not_moved_by=(dist_moved::iterator iter = m_corners.begin(); iter!=m_corners.end(); iter++){ iter->resetOldPos(); } } /*! Get a pointer to a triangle with a given ID. If the ID doesn't exist, return NULL \param id the id */ Triangle* TriMesh::getTriangleById(int id) { Triangle* res; map::iterator it=m_tri_index_by_id.find(id); if(it!=m_tri_index_by_id.end()){ res=&(m_triangles[it->second]); } else { res=NULL; } return res; } /*! Write checkpoint data to stream. The mesh data is written in the original mesh file format -> can reuse meshreader to read in checkpointed meshes \param ost the output stream \param delim the delimiter */ void TriMesh::writeCheckPoint(ostream& ost,const string& delim) const { int tag=0; // build node map map nodemap; for(vector::const_iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ nodemap.insert(iter->getP0()); nodemap.insert(iter->getP1()); nodemap.insert(iter->getP2()); } // write nodes ost << "3D-Nodes " << nodemap.size() << delim; for(map::iterator iter=nodemap.begin(); iter!=nodemap.end(); iter++){ ost << iter->first << " " << iter->first << " " << tag << " " << iter->second << delim; } ost << "Tri3 " << m_triangles.size() << delim; for(vector::const_iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ ost << iter->getID() << " " << iter->getTag() << " "; ost << (iter->getP0()).first << " "; ost << (iter->getP1()).first << " "; ost << (iter->getP2()).first << delim; } } void TriMesh::loadCheckPoint(istream& ist) { vector node_vec; vector tri_vec; // --- Nodes --- NodeReader nreader(ist); NodeReader::Iterator &niter=nreader.getIterator(); // read nodes into vector while(niter.hasNext()){ node_vec.push_back(niter.next()); } // --- Triangles --- TriReader treader(ist); TriReader::Iterator &titer=treader.getIterator(); // read triangles into vector while(titer.hasNext()){ tri_vec.push_back(titer.next()); } LoadMesh(node_vec,tri_vec); } /*! zero all forces on the mesh. Currently forces are only on triangles */ void TriMesh::zeroForces() { console.XDebug() << "TriMesh::zeroForces()\n"; for(vector::iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ iter->zeroForce(); } console.XDebug() << "end TriMesh::zeroForces()\n"; } ./Model/RotElasticInteractionGroup.cpp0000664000175000017500000000311312176660653017667 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "RotElasticInteractionGroup.h" #include "console.h" //---------------------------------------- // CElasticIGP member functions //---------------------------------------- void CRotElasticIGP::packInto(CVarMPIBuffer* B) const { AIGParam::packInto(B); B->append(m_kr); } CRotElasticIGP* extractRotElasticIGP(AMPIBuffer* B) { CRotElasticIGP* res=new CRotElasticIGP; B->pop_int(); res->setName(B->pop_string()); res->setNormalSpringConst(B->pop_double()); return res; } /*! extract the specific part of CElasticIGP, i.e. without the type info */ CRotElasticIGP* extractRotElasticIGP_p(AMPIBuffer* B) { CRotElasticIGP* res=new CRotElasticIGP; res->setName(B->pop_string()); res->setNormalSpringConst(B->pop_double()); return res; } ostream& operator<<(ostream& ost,const CRotElasticIGP& B) { ost << "CRotElasticIGP\n"; ost << "Normal Spring Constant : " << B.m_kr << endl; return ost; } ./Model/TriMesh.hpp0000664000175000017500000000345712176660653013774 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include using std::make_pair; /*! Call a constant member function of Triangle taking no argument and returning a value for all Triangles and collect the return values in a container. The container has to be an STL sequence container (vector,list...) or something with the same interface. The template parameter P is a type of container of the return type of the particle member function, not the return type itself. \param cont the container \param rdf the particle member function */ template void TriMesh::forAllTrianglesGet(P& cont,typename P::value_type (Triangle::*rdf)() const) { for(vector::iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ cont.push_back(((*iter).*rdf)()); } } /*! \param rdf the particle member function */ template vector > TriMesh::forAllTrianglesGetIndexed(P (Triangle::*rdf)() const) { vector > res; for(vector::iterator iter=m_triangles.begin(); iter!=m_triangles.end(); iter++){ res.push_back(make_pair(iter->getID(),((*iter).*rdf)())); } return res; } ./Model/BMesh2DIP.h0000664000175000017500000000305112176660653013464 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BMESH2DIP_H #define __BMESH2DIP_H class BMesh2DIP { public: double k; double brk; BMesh2DIP() : k(0.0), brk(0.0), m_name(), m_meshName() { } virtual ~BMesh2DIP() { } BMesh2DIP( const std::string& interactionName, const std::string& meshName, double normalK, double breakDistance ) : k(normalK), brk(breakDistance), m_name(interactionName), m_meshName(meshName) { } void setMeshName(const std::string &meshName) { m_meshName = meshName; } const std::string &getMeshName() const { return m_meshName; } void setName(const std::string &name) { m_name = name; } const std::string &getName() const { return m_name; } virtual std::string getTypeString() const { return "Bonded"; } private: std::string m_name; std::string m_meshName; }; #endif //__BMESH2DIP_H ./Model/ShortBondedInteraction.cpp0000664000175000017500000000753112176660653017024 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/ShortBondedInteraction.h" #include "tml/message/packed_message_interface.h" #include "Foundation/console.h" // --- STL includes --- #include using std::runtime_error; CShortBondedInteraction::CShortBondedInteraction() {} /*! Construct valid short bonded interaction. The equilibrium distance is calculated from the initial distance of the two particles. \param p1 pointer to 1st particle \param p2 pointer to 2nd particles \param param the interaction parameters */ CShortBondedInteraction::CShortBondedInteraction(CParticle* p1,CParticle* p2,const CBondedIGP& param) : CBondedInteraction(p1,p2) { m_k=param.k; m_r0=(p1->getPos()-p2->getPos()).norm();; m_break=m_r0*param.rbreak; m_dist=m_r0;; m_force=Vec3(0.0,0.0,0.0); m_tag = param.tag; } CShortBondedInteraction::~CShortBondedInteraction() {} CShortBondedInteraction::ScalarFieldFunction CShortBondedInteraction::getScalarFieldFunction(const string& name) { CShortBondedInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CShortBondedInteraction::getPotentialEnergy; } else if (name=="count"){ sf=&CShortBondedInteraction::Count; } else if (name=="strain"){ sf=&CShortBondedInteraction::getStrain;; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } CShortBondedInteraction::CheckedScalarFieldFunction CShortBondedInteraction::getCheckedScalarFieldFunction(const string& name) { CShortBondedInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } CShortBondedInteraction::VectorFieldFunction CShortBondedInteraction::getVectorFieldFunction(const string& name) { CShortBondedInteraction::VectorFieldFunction sf; if (name=="force"){ sf=&CShortBondedInteraction::getForce; } else { sf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return sf; } void CShortBondedInteraction::saveCheckPointData(std::ostream &oStream) { ShortBondedInteractionCpData(*this).saveCheckPointData(oStream); } void CShortBondedInteraction::loadCheckPointData(std::istream &iStream) { throw runtime_error("CShortBondedInteraction::loadCheckPointData not implemented."); } ostream& operator<<(ostream& ost,const CShortBondedInteraction& BI) { ost << CBondedInteraction(BI); return ost; } /*! Pack a CBondedInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CShortBondedInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_dist); append(I.m_break); append(I.m_id[0]); append(I.m_id[1]); append(I.getTag()); } /*! Unpack a CBondedInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CShortBondedInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.setTag(pop_int()); } ./Model/ThermParticle.h0000664000175000017500000000671212176660653014621 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __THERMPARTICLE_H #define __THERMPARTICLE_H // -- project includes -- #include "Foundation/vec3.h" // --- STL includes --- #include #include using std::map; using std::pair; using std::make_pair; /*! Thermal Particle class. */ class CThermParticle { protected: double m_temperature ; double m_temperature_ini ; double m_Cp ; // double m_density ;// ??? double m_heat_frict ; double m_heat_trans ; double m_therm_expansion0 ; double m_therm_expansion1 ; double m_therm_expansion2 ; double m_rad_ini ; public: // static const CBasicParticle INVALID; CThermParticle(); CThermParticle(double rad_ini); CThermParticle(double temperature, double m_temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2, double rad_ini); // CThermParticle(const esys::lsm::SimpleParticleData &data); virtual ~CThermParticle(){}; /* inline Vec3 & getPPos() {return m_pos;} inline Vec3 getPos() const {return m_pos;} inline double getRad() const {return m_rad;} inline int getID() const {return m_global_id;} inline void moveBy(Vec3 v){m_pos+=v;} //!< move relative to current position inline void moveTo(Vec3 v){m_pos=v;} //!< move absolute inline void setRad(double r){m_rad=r;} //! particle tag handling inline void setTag(int t){m_tag=t;} inline int getTag() const {return m_tag;} inline bool isValid() const {return (getID() >= 0);} }; */ inline void setTemperature(double t){m_temperature=t;} inline double getTemperature() const {return m_temperature;} inline void setEquilibTemperature(double t){m_temperature_ini=t;} inline double getEquilibTemperature() const {return m_temperature_ini;} inline void setEquilibRadius(double r){m_rad_ini=r;} inline double getEquilibRadius() const {return m_rad_ini;} // inline void setCp(double t){m_Cp = t;} inline double getCp() const {return m_Cp;} inline void setCp(double cp) {m_Cp = cp;} inline double getThermExpansion0() const {return m_therm_expansion0 ;} inline void setThermExpansion0(double te0) {m_therm_expansion0 = te0;} inline double getThermExpansion1() const {return m_therm_expansion1 ;} inline void setThermExpansion1(double te1) {m_therm_expansion1 = te1;} inline double getThermExpansion2() const {return m_therm_expansion2 ;} inline void setThermExpansion2(double te2) {m_therm_expansion2 = te2;} // void integrate_therm(double) ; // void zeroHeat() ; // void applyHeatTrans(const double) ; friend ostream& operator<<(ostream& ost,const CThermParticle& p); }; ostream& operator<<(ostream&,const CThermParticle&); #endif //__THERMPARTICLE_H ./Model/Particle.cpp0000664000175000017500000003005212176660653014146 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/mpibuf.h" #include "tml/message/packed_message_interface.h" #include "Parallel/mpisgbuf.h" #include "Model/Particle.h" #include "Geometry/SimpleParticleData.h" #include "Foundation/console.h" const Vec3 zeroVec3(0.0,0.0,0.0); bool CParticle::s_do2Calculations = false; CParticle::CParticle() : CBasicParticle(zeroVec3,0.0), m_sigma(), m_vel(), m_force(), m_oldpos(), m_initpos(), m_circular_shift(), //!< shift vector if particle is circular image m_mass(0.0), m_div_mass(0.0), flag(false), m_is_dynamic(true) { } CParticle::CParticle(const esys::lsm::SimpleParticleData &data) : CBasicParticle(data), m_sigma(), m_vel(), m_force(), m_oldpos(data.getPosition()), m_initpos(data.getPosition()), m_circular_shift(), //!< shift vector if particle is circular image m_mass(data.getMass()), m_div_mass((data.getMass() != 0) ? 1.0/data.getMass() : 0.0), flag(false), m_is_dynamic(true) //! SimpleParticleData has no is_dynamic info -> default to true { } /*! Construct particle. Old and initial position are assumed to be identical to current position. \param rad radius \param mass mass \param pos current position \param vel current velocity \param force currently applied force \param id particle id */ CParticle::CParticle(double rad,double mass,const Vec3& pos,const Vec3& vel,const Vec3& force,int id,bool is_dyn) : CBasicParticle(pos,rad) { m_oldpos=pos; m_initpos=pos; m_vel=vel; m_force=force; m_mass=mass; if(m_mass!=0.0){ m_div_mass=1.0/m_mass; } else { m_div_mass=0.0; } m_global_id=id; m_circular_shift = zeroVec3; flag=false; m_is_dynamic=is_dyn; } CParticle::CParticle(double rad,double mass,const Vec3& pos,const Vec3& oldpos,const Vec3& initpos,const Vec3& vel,const Vec3& force,int id,bool is_dyn) : CBasicParticle(pos,rad) { m_oldpos=oldpos; m_initpos=initpos; m_vel=vel; m_force=force; m_mass=mass; if(m_mass!=0.0){ m_div_mass=1.0/m_mass; } else { m_div_mass=0.0; } m_global_id=id; m_circular_shift = zeroVec3; flag=false; m_is_dynamic=is_dyn; } /*! set the density of the particle */ void CParticle::setDensity(double rho) { const double pi=3.141592654; if(getDo2dCalculations()){ m_mass=rho*pi*m_rad*m_rad; } else { m_mass=(4.0/3.0)*rho*pi*m_rad*m_rad*m_rad; } if(m_mass!=0.0){ m_div_mass=1.0/m_mass; } else { m_div_mass=0.0; } } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CParticle::ScalarFieldFunction CParticle::getScalarFieldFunction(const string& name) { CParticle::ScalarFieldFunction sf; if(name=="id"){ sf=&CParticle::getIDField; } else if(name=="tag"){ sf=&CParticle::getTagField; } else if(name=="sigma_xx_2d"){ sf=&CParticle::sigma_xx_2D; } else if(name=="sigma_xy_2d"){ sf=&CParticle::sigma_xy_2D; } else if(name=="sigma_yy_2d"){ sf=&CParticle::sigma_yy_2D; } else if(name=="sigma_d"){ sf=&CParticle::sigma_d; } else if(name=="e_kin"){ sf=&CParticle::getKineticEnergy; } else if(name=="radius"){ sf=&CParticle::getRad; } else if(name=="v_abs"){ sf=&CParticle::getAbsVel; } else { sf=NULL; cerr << "ERROR - invalid name for particle scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CParticle::VectorFieldFunction CParticle::getVectorFieldFunction(const string& name) { CParticle::VectorFieldFunction sf; if(name=="displacement"){ sf=&CParticle::getTotalDisplacement; } else if(name=="velocity"){ sf=&CParticle::getVel; } else if(name=="position"){ sf=&CParticle::getPos; } else if(name=="force"){ sf=&CParticle::getForce; } else { sf=NULL; cerr << "ERROR - invalid name for particle vector access function" << endl; } return sf; } /*! Pack a CParticle into a TML packed message \param p the particle \todo BasicParticle data should be handled by pack */ template<> void TML_PackedMessageInterface::pack(const CParticle& p) { append(p.m_tag); append(p.m_global_id); append(p.m_pos.X()) ; append(p.m_pos.Y()) ; append(p.m_pos.Z()) ; append(p.m_oldpos.X()); append(p.m_oldpos.Y()); append(p.m_oldpos.Z()); append(p.m_initpos.X()); append(p.m_initpos.Y()); append(p.m_initpos.Z()); append(p.m_circular_shift.X()); append(p.m_circular_shift.Y()); append(p.m_circular_shift.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_force.X()); append(p.m_force.Y()); append(p.m_force.Z()); append(p.m_rad); append(p.m_mass); append(p.m_is_dynamic); } /*! Unpack a CParticle from a TML packed message \param p the particle */ template<> void TML_PackedMessageInterface::unpack(CParticle& p) { double db[6*3+2] ; p.m_tag=pop_int(); p.m_global_id=pop_int(); pop_doubles(db,20); p.m_pos=Vec3(db[0],db[1],db[2]) ; p.m_oldpos=Vec3(db[3],db[4],db[5]) ; p.m_initpos=Vec3(db[6],db[7],db[8]) ; p.m_circular_shift=Vec3(db[9],db[10],db[11]) ; p.m_vel=Vec3(db[12],db[13],db[14]) ; p.m_force=Vec3(db[15],db[16],db[17]) ; p.m_rad = db[18]; p.m_mass = db[19]; if(p.m_mass!=0.0){ p.m_div_mass=1.0/p.m_mass; } else { p.m_div_mass=0.0; } p.m_is_dynamic=pop_bool(); } /*! Do the time integration for the particle by 1st order method. \param dt the time step */ void CParticle::integrate(double dt) { if(m_is_dynamic){ if (getDo2dCalculations()) { m_force = Vec3(m_force.X(), m_force.Y(), 0); } #if 1 // 1st order scheme, 13 Flops m_vel+=m_force*m_div_mass*dt; // 7 Flops m_pos+=m_vel*dt; // 6 Flops #else // 2nd order scheme. const Vec3 Acc = m_force*m_div_mass ; m_pos += dt*m_vel + 0.5*dt*dt*Acc ; m_vel += dt*Acc; #endif } } /*! zero forces on particle */ void CParticle::zeroForce() { m_force=Vec3(0.0,0.0,0.0); m_sigma=Matrix3(); } /*! write particle data as a line in openDX format into a stream(file) \param ost the output stream \param slid from which sublattice the particle is coming */ void CParticle::writeAsDXLine(ostream& ost,int slid) { ost << m_pos.X() << " " << m_pos.Y() << " " << m_pos.Z() << " " ; //position ost << slid << " " ; ost << m_rad << " " << m_mass << " " ; // radius,mass Vec3 disp=m_pos-m_initpos; ost << disp.X() << " " << disp.Y() << " " << disp.Z() << " " ; //displacement ost << m_vel.X() << " " << m_vel.Y() << " " << m_vel.Z() << " " ; // velocity ost << endl; } /*! get values to be exchanged, i.e. pos and vel */ CParticle::exchangeType CParticle::getExchangeValues() { return exchangeType( m_pos - m_circular_shift, m_initpos - m_circular_shift, m_oldpos - m_circular_shift, m_vel, m_is_dynamic ); } /*! set pos and vel from exchangeType \param E the exchanged values, i.e. a pair of pos and vel */ void CParticle::setExchangeValues(const exchangeType& E) { m_pos = E.m_pos + m_circular_shift; m_initpos = E.m_initPos + m_circular_shift; m_oldpos = E.m_oldPos + m_circular_shift; m_vel = E.m_vel; m_is_dynamic = E.m_is_dynamic; } /*! set circular shift vector \param cv the circular shift vector */ void CParticle::setCircular(const Vec3& cv) { m_circular_shift += cv; m_pos += cv; m_initpos += cv; m_oldpos += cv; } /*! Pack an exchangeType into a TML packed message \param p the exchangeType */ template<> void TML_PackedMessageInterface::pack(const CParticle::exchangeType& p) { append(p.m_pos.X()); append(p.m_pos.Y()); append(p.m_pos.Z()); append(p.m_initPos.X()); append(p.m_initPos.Y()); append(p.m_initPos.Z()); append(p.m_oldPos.X()); append(p.m_oldPos.Y()); append(p.m_oldPos.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_is_dynamic); } /*! Unpack an exchangeType from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(CParticle::exchangeType& p) { const int numDoubles = 12; double db[numDoubles]; pop_doubles(db, numDoubles); p.m_pos = Vec3(db[0], db[1], db[2]); p.m_initPos = Vec3(db[3], db[4], db[5]); p.m_oldPos = Vec3(db[6], db[7], db[8]); p.m_vel = Vec3(db[9], db[10], db[11]); p.m_is_dynamic=pop_bool(); } /*! Apply a force to a particle at a given position. Also updates particle stress tensor. \param force the force \param pos the position at which the force acts on the particle */ void CParticle::applyForce(const Vec3& force,const Vec3& pos) { m_force+=force; Vec3 rel_pos=pos-m_pos; for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ m_sigma(i,j)-=force[i]*rel_pos[j]; } } } /*! get deviatoric stress */ double CParticle::sigma_d() const { //double scale=1.0/(M_PI*m_rad*m_rad); double sig_d=(m_sigma-m_sigma.trace()*Matrix3::Unit()).norm(); return sig_d; } ostream& operator<<(ostream& ost, const CParticle& CP) { ost << "--CParticle " << CP.m_global_id << " --\n"; ost << "Radius : " << CP.m_rad << " Mass : " << CP.m_mass << "\n"; ost << "Position : " << CP.m_pos << "\n"; ost << "Velocity : " << CP.m_vel << "\n"; ost << "Force : " << CP.m_force << "\n"; return ost; } /*! save snapshot data _not_ neccesarily sufficient for restart */ void CParticle::saveSnapShotData( std::ostream& oStream){ const char delim = ' '; oStream << getPos() << delim // 0,1,2 << getRad() << delim // 3 << getID() << delim // 4 << getTag() << delim // 5 << getMass() << delim // 6 << getInitPos() - m_circular_shift << delim // 7,8,9 << getOldPos() << delim // 10,11,12 << getVel() << delim // 13,14,15 << getForce() << delim // 16,17,18 << m_circular_shift; // 19,20,21 } /*! save checkpoint data, sufficient for restart */ void CParticle::saveCheckPointData( std::ostream& oStream){ const char delim = ' '; oStream << getPos() << delim // 0,1,2 << getRad() << delim // 3 << getID() << delim // 4 << getTag() << delim // 5 << getMass() << delim // 6 << getInitPos() - m_circular_shift << delim // 7,8,9 << getOldPos() << delim // 10,11,12 << getVel() << delim // 13,14,15 << getForce() << delim // 16,17,18 << m_circular_shift << delim // 19,20,21 << m_is_dynamic; } /*! load checkpoint data saved with CParticle::saveCheckPointData */ void CParticle::loadCheckPointData(std::istream &iStream) { Vec3 pos; Vec3 oldpos; Vec3 initpos; Vec3 vel; Vec3 force; Vec3 circular_shift; double rad; double mass; int id; int tag; bool is_dyn; iStream >> pos >> rad >> id >> tag >> mass >> initpos >> oldpos >> vel >> force >> circular_shift >> is_dyn; CParticle particle ( rad, mass, pos, oldpos, initpos + circular_shift, vel, force, id, is_dyn ); particle.setTag(tag); *this = particle; } ./Model/Interaction.h0000664000175000017500000000620512176660653014332 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __INTERACTION_H #define __INTERACTION_H // -- project includes -- #include "Model/Particle.h" #include "Foundation/quintuple.h" // -- STL includes -- #include #include using std::vector; using std::pair; using std::make_pair; /*! \class AInteraction \brief Abstract base class for interactions \author Steffen Abe $Revision$ $Date$ */ class AInteraction { protected: vector m_id; //!< id's of the particles involved int m_iid; //!< interaction id bool m_init; public: AInteraction(); virtual ~AInteraction(); bool initialized() const; virtual void calcForces()=0; virtual void calcHeatTrans() {}; virtual void calcHeatFrict() {}; vector getAllID() const; int getID(){return m_iid;}; virtual bool hasTag(int,int) const=0; virtual Vec3 getPosFirst() const=0; virtual Vec3 getPosSecond() const{return Vec3(0.0,0.0,0.0);}; inline double Count() const {return 1.0;}; }; /*! \class APairInteraction \brief Abstract base class for 2-particle interactions \author Steffen Abe $Revision$ $Date$ */ class APairInteraction : public AInteraction { protected: CParticle *m_p1,*m_p2; public: // functions APairInteraction(); APairInteraction(CParticle*,CParticle*); virtual ~APairInteraction(); inline const CParticle* first()const {return m_p1;} inline const CParticle* second()const {return m_p2;} inline CParticle* first() {return m_p1;} inline CParticle* second() {return m_p2;} inline pair getPairID() const {return make_pair(m_p1->getID(),m_p2->getID());}; virtual Vec3 getPos() const = 0; virtual void calcForces() = 0; void setPP(CParticle*,CParticle*); void checkIDs(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p1->getPos();}; virtual Vec3 getPosSecond() const{return m_p2->getPos();}; esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p1->getPos(), m_p1->getRad(), m_p2->getPos(), m_p2->getRad(), getPos() ); } template void setPP(const vector &pp) { m_p1=pp[0]; m_p2=pp[1]; m_id.clear(); m_id.push_back(m_p1->getID()); m_id.push_back(m_p2->getID()); } // dummy implementations for save/load of restart parameters virtual void saveRestartData(std::ostream&){}; virtual void loadRestartData(std::istream&){}; }; #endif ./Model/AdhesiveFriction.h0000664000175000017500000000357212176660653015305 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ADHESIVEFRICTION_H #define __ADHESIVEFRICTION_H #include "Model/FrictionInteraction.h" /*! \brief Interaction parameters for adhesive frictional interaction */ class CAdhesiveFrictionIGP : public AIGParam { public: virtual std::string getTypeString() const {return "AdhesiveFriction";} void setTimeStepSize(double timeStepSize) { this->dt = timeStepSize; } double k; double mu; double k_s; double dt; double r_cut; }; /*! \brief Frictional+adhesive Elastic interaction between particles */ class CAdhesiveFriction : public CFrictionInteraction { public: // types typedef CAdhesiveFrictionIGP ParameterType; typedef double (CAdhesiveFriction::* ScalarFieldFunction)() const; typedef pair (CAdhesiveFriction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CAdhesiveFriction::* VectorFieldFunction)() const; protected: double m_r_cut; double m_r_cut_h; public: CAdhesiveFriction(); CAdhesiveFriction(CParticle*,CParticle*,const CAdhesiveFrictionIGP&); virtual ~CAdhesiveFriction(); static string getType() {return "AdhesiveFriction";}; virtual void calcForces(); friend class TML_PackedMessageInterface; }; #endif // __ADHESIVEFRICTION_H ./Model/RotThermPairInteraction.cpp0000664000175000017500000000367112176660653017172 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/RotThermPairInteraction.h" ARotThermPairInteraction::~ARotThermPairInteraction() { } ARotThermPairInteraction::ARotThermPairInteraction():AInteraction() { m_p1=NULL; m_p2=NULL; m_id.push_back(-1); m_id.push_back(-1); } ARotThermPairInteraction::ARotThermPairInteraction(CRotThermParticle* p1,CRotThermParticle* p2) : AInteraction() { setPP(p1,p2); m_init=true; } void ARotThermPairInteraction::setPP(CRotThermParticle *p1,CRotThermParticle *p2) { m_p1=p1; m_p2=p2; m_id.clear(); m_id.push_back(m_p1->getID()); m_id.push_back(m_p2->getID()); } void ARotThermPairInteraction::setPP(const vector pp) { setPP(pp[0], pp[1]); } void ARotThermPairInteraction::checkIDs() { if ((m_id[0]!=m_p1->getID())||(m_id[1]!=m_p2->getID())){ std::cout << "inconsistent IDs : " << m_id[0] << "-" << m_id[1] << " vs. " << m_p1->getID() << "-" << m_p2->getID() << std::endl << std::flush; } } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ bool ARotThermPairInteraction::hasTag(int tag ,int mask) const { int tag1=m_p1->getTag(); int tag2=m_p2->getTag(); return (((tag1 & mask)==(tag & mask))||((tag2 & mask)==(tag & mask))); } ./Model/InteractionParam.h0000664000175000017500000000234112176660653015310 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __INTERACTIONPARAM_H #define __INTERACTIONPARAM_H // -- STL includes -- #include #include using std::string; using std::map; /*! \class AIParam \brief Abstract base class for interaction parameters \author Steffen Abe $Revision$ $Date$ */ class AIParam { private: string m_name; map m_data; public: AIParam(const string&); virtual ~AIParam()=0; string getName()const{return m_name;}; double getParamByName(const string&); void addParameter(const string&,double); }; #endif //__INTERACTIONPARAM_H ./Model/LocalDampingIGP.cpp0000664000175000017500000000335012176660653015276 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/LocalDampingIGP.h" //---------------------------------------------- // LocalDampingIGP functions //---------------------------------------------- CLocalDampingIGP::CLocalDampingIGP() : m_visc(0.0), m_dt(0.0) { } CLocalDampingIGP::CLocalDampingIGP( const string& type, const string& name, double viscosity, double dt ) : AIGParam(name), m_type(type), m_visc(viscosity), m_dt(dt) { } /*! Pack the parameters for a LocalDampingGroup into a MPI-buffer \param B the buffer */ void CLocalDampingIGP::packInto(CVarMPIBuffer* B) const { AIGParam::packInto(B); B->append(m_type.c_str()); B->append(m_visc); B->append(m_dt); } /*! Extract parameters for a LocalDampingGroup from a MPI-buffer \param B the buffer */ CLocalDampingIGP* extractLocalDampingIGP(AMPIBuffer* B) { CLocalDampingIGP* res = new CLocalDampingIGP; res->setName(B->pop_string()); res->setType(B->pop_string()); res->setVisc(B->pop_double()); res->setTimeStep(B->pop_double()); return res; } ./Model/HertzianElasticInteraction.cpp0000664000175000017500000000765512176660653017711 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "HertzianElasticInteraction.h" // --- system includes --- #include // --- member functions for interaction group parameter class --- //! default constructor CHertzianElasticIGP::CHertzianElasticIGP(): AIGParam(), m_E(0.0), m_nu(0.0) {} /*! constructor with parameters \param name the name of the interaction group \param k the stiffness constant */ CHertzianElasticIGP::CHertzianElasticIGP(const std::string& name,double E,double nu) : AIGParam(name), m_E(E), m_nu(nu) {} // --- function of interaction class --- CHertzianElasticInteraction::CHertzianElasticInteraction(CParticle* p1,CParticle* p2, const CHertzianElasticIGP& param) : APairInteraction(p1,p2) { m_E=param.m_E; m_nu=param.m_nu; m_force=Vec3(0.0,0.0,0.0); m_dn=0.0; } /*! calculate forces */ void CHertzianElasticInteraction::calcForces() { Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); //std::cerr << "d: " << dist << " / " << eq_dist*eq_dist << std::endl; if(dist<(eq_dist*eq_dist)){ double R_ij=1.0/(1.0/m_p1->getRad()+1.0/m_p2->getRad()); dist=sqrt(dist); m_dn=eq_dist-dist; Vec3 dir=D.unit(); m_force=dir*(m_E*sqrt(R_ij))/(2.0*(1.0-m_nu*m_nu))*pow(m_dn,1.5); //std::cerr << "HF: " << dir << " " << R_ij << " " << m_dn << " " << m_force << std::endl; Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; m_p1->applyForce(m_force,pos); m_p2->applyForce(-1.0*m_force,pos); } else { m_force=Vec3(0.0,0.0,0.0); m_dn=0.0; } } /*! "field function" returning force currently exerted by interaction */ Vec3 CHertzianElasticInteraction::getForce() const { return m_force; } /*! "field function" returning potential energy currently stored in interaction */ double CHertzianElasticInteraction::getPotentialEnergy() const { return 0.4*m_force.norm()*m_dn; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CHertzianElasticInteraction::ScalarFieldFunction CHertzianElasticInteraction::getScalarFieldFunction(const string& name) { CHertzianElasticInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CHertzianElasticInteraction::getPotentialEnergy; } else if (name=="count"){ sf=&CHertzianElasticInteraction::Count; } else { sf=NULL; std::cerr << "ERROR - invalid name for interaction scalar access function" << std::endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CHertzianElasticInteraction::VectorFieldFunction CHertzianElasticInteraction::getVectorFieldFunction(const string& name) { CHertzianElasticInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CHertzianElasticInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! dummy */ CHertzianElasticInteraction::CheckedScalarFieldFunction CHertzianElasticInteraction::getCheckedScalarFieldFunction(const string& name) { CHertzianElasticInteraction::CheckedScalarFieldFunction csf; csf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return csf; } ./Model/Interaction.cpp0000664000175000017500000000431612176660653014666 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Parallel/mpibuf.h" #include "Model/Interaction.h" #include AInteraction::AInteraction(): m_id(), m_iid(-1), m_init(false) { } AInteraction::~AInteraction() { } vector AInteraction::getAllID() const { return m_id; } bool AInteraction::initialized() const { return m_init; } APairInteraction::~APairInteraction() { } APairInteraction::APairInteraction():AInteraction() { m_p1=NULL; m_p2=NULL; m_id.clear(); m_id.push_back(-1); m_id.push_back(-1); } APairInteraction::APairInteraction(CParticle* p1, CParticle* p2) : AInteraction() { // force the particle with the lower ID to be p1 if(p1->getID()getID()){ m_p1=p1; m_p2=p2; } else { m_p1=p2; m_p2=p1; } m_id.clear(); m_id.push_back(m_p1->getID()); m_id.push_back(m_p2->getID()); m_init=true; } void APairInteraction::setPP(CParticle *p1,CParticle *p2) { m_p1=p1; m_p2=p2; m_id.clear(); m_id.push_back(m_p1->getID()); m_id.push_back(m_p2->getID()); } void APairInteraction::checkIDs() { if ((m_id[0]!=m_p1->getID())||(m_id[1]!=m_p2->getID())){ std::cout << "inconsistent IDs : " << m_id[0] << "-" << m_id[1] << " vs. " << m_p1->getID() << "-" << m_p2->getID() << std::endl << std::flush; } } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ bool APairInteraction::hasTag(int tag ,int mask) const { int tag1=m_p1->getTag(); int tag2=m_p2->getTag(); return (((tag1 & mask)==(tag & mask))||((tag2 & mask)==(tag & mask))); } ./Model/ElasticInteractionGroup.h0000664000175000017500000000354512176660653016660 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ELASTICINTERACTIONGROUP_H #define __ELASTICINTERACTIONGROUP_H #include "Model/InteractionGroup.h" #include "Model/ElasticInteraction.h" #include "Model/IGParam.h" //--- IO includes --- #include using std::ostream; using std::endl; /*! \brief Class for a group of unbonded,elastic interactions */ template class CElasticInteractionGroup : public APairInteractionGroup { protected: vector m_interactions; AParallelInteractionStorage* m_exIG; //*); friend ostream& operator<< <>(ostream&,const CElasticInteractionGroup&); }; #include "Model/ElasticInteractionGroup.hpp" #endif //__ELASTICINTERACTIONGROUP_H ./Model/ECorner2DInteraction.h0000664000175000017500000000313012176660653015770 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ECORNER2DINTERACTION_H #define __ECORNER2DINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Corner2D.h" #include "Model/Particle.h" #include "Model/ETriMeshIP.h" /*! \class ECornerInteraction \brief unbonded elastic interaction between a Corner in a TriangleMesh and a particle \author Steffen Abe $Revision: 430 $ $Date: 2004-09-28 06:51:39 +0100 (Tue, 28 Sep 2004) $ */ class ECorner2DInteraction { private: CParticle *m_p; Corner2D* m_corner; double m_k;//!< spring constant /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: ECorner2DInteraction(); ECorner2DInteraction(CParticle*,Corner2D*,ETriMeshIP,bool iflag=true); ~ECorner2DInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); }; #endif //__ECORNER2DINTERACTION_H ./Model/RotThermParticle.h0000664000175000017500000001351012176660653015300 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMPARTICLE_H #define __ROTTHERMPARTICLE_H // -- project includes -- #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Model/ThermParticle.h" #include "Foundation/Quaternion.h" #include "Model/RotParticleVi.h" template class ParallelParticleArray; class AMPISGBufferRoot; class AMPIBuffer; class AField; //--- MPIincludes --- #include //--- STL includes --- #include #include #include #include using std::map; using std::vector; using std::pair; using std::string; namespace esys { namespace lsm { class SimpleParticleData; } } /*! Thermal Particle class. */ class CRotThermParticle : public CRotParticleVi, public CThermParticle { public: // types class exchangeType { public: exchangeType() : m_pos(), m_initPos(), m_vel(), m_angVel(), m_angVel_t(), m_quat(), m_temperature(), m_temperature_ini() { } exchangeType( const Vec3 &pos, const Vec3 &initPos, const Vec3 &vel, const Vec3 &AngVel, const Vec3 &currAngVel, const Quaternion &quat, const double temperature, const double temperature_ini ) : m_pos(pos), m_initPos(initPos), m_vel(vel), m_angVel(AngVel), m_angVel_t(currAngVel), m_quat(quat), m_temperature(temperature), m_temperature_ini(temperature_ini) { } public: Vec3 m_pos; Vec3 m_initPos; Vec3 m_vel; Vec3 m_angVel; Vec3 m_angVel_t ; Quaternion m_quat; double m_temperature ; double m_temperature_ini ; friend class TML_PackedMessageInterface; }; typedef double (CRotThermParticle::* ScalarFieldFunction)() const; typedef Vec3 (CRotThermParticle::* VectorFieldFunction)() const; protected: // double m_tempa ; // double m_Cp ; // double m_density ; // double m_heat_frict ; // double m_heat_trans ; public: // static const CBasicParticle INVALID; CRotThermParticle(); CRotThermParticle(const esys::lsm::SimpleParticleData &data); CRotThermParticle(const CRotParticleVi &p); CRotThermParticle(const CParticle &p); CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn ); CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion& quat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2 ); CRotThermParticle( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion& quat, const Quaternion& initquat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2 ); ~CRotThermParticle(){}; void applyHeatTrans(const double); void applyHeatFrict(const double); void integrateTherm(double); void zeroHeat(); void thermExpansion() ; void integrate(double); inline void setTemperature(double t){m_temperature=t; m_temperature_ini=t;} ; // inline void setTemperatureIni(double t){m_temperature_ini=t;} ; inline double get_y() {return m_pos.Y(); } ; inline void setCp(double t) {m_Cp=t; } ; inline void setThermExpansion0(double t) { m_therm_expansion0=t;} ; inline void setThermExpansion1(double t) { m_therm_expansion1=t;} ; inline void setThermExpansion2(double t) { m_therm_expansion2=t;} ; void setCircular(const Vec3& cv); Vec3 getDisplacement() const {return CParticle::getDisplacement();}; void resetDisplacement() {CParticle::resetDisplacement();} static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static map generateFields(ParallelParticleArray*); friend ostream& operator<<(ostream&, const CRotThermParticle&); void print(){cout << *this << endl << flush;}; // virtual void saveCheckPointData(std::ostream& oStream); // virtual void loadCheckPointData(std::istream& iStream); CRotThermParticle::exchangeType getExchangeValues(); void setExchangeValues(const CRotThermParticle::exchangeType &e); static void get_type() {cout <<" CRotThermParticle" ;}; friend class TML_PackedMessageInterface; template void visit(TmplVisitor &visitor) { visitor.visitRotThermParticle(*this); } }; // ostream& operator<<(ostream&,const CRotThermParticle&); #endif //__ROTTHERMPARTICLE_H ./Model/BMesh2DInteractionCpData.cpp0000664000175000017500000000342412176660653017047 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BMesh2DInteractionCpData.h" #include "Model/BMesh2DInteraction.h" BMesh2DInteractionCpData::BMesh2DInteractionCpData() : m_ap(), m_pid(-1), m_tid(-1) {} BMesh2DInteractionCpData::BMesh2DInteractionCpData(const BEdge2DInteraction& bmi) { m_pid=bmi.getPid(); m_tid=bmi.getTid(); m_ap=bmi.getAP(); } BMesh2DInteractionCpData::BMesh2DInteractionCpData(int pid,int tid) { m_pid=pid; m_tid=tid; } void BMesh2DInteractionCpData::set(const BEdge2DInteraction& bmi) { m_pid=bmi.getPid(); m_tid=bmi.getTid(); m_ap=bmi.getAP(); } void BMesh2DInteractionCpData::set(int pid,int tid) { m_pid=pid; m_tid=tid; } int BMesh2DInteractionCpData::getPID() { return m_pid; } int BMesh2DInteractionCpData::getTID() { return m_tid; } void BMesh2DInteractionCpData::saveSnapShotData(ostream& ost) { const char delim = ' '; ost << m_pid << delim << m_tid << delim << m_ap ; } void BMesh2DInteractionCpData::saveCheckPointData(ostream& ost) { const char delim = ' '; ost << m_pid << delim << m_tid ; } void BMesh2DInteractionCpData::loadCheckPointData(istream &ist) { ist >> m_pid >> m_tid; } ./Model/BEdge2DInteraction.h0000664000175000017500000000431312176660653015405 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BEDGE2DINTERACTION_H #define __BEDGE2DINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Edge2D.h" #include "Model/Particle.h" #include "Model/BMesh2DIP.h" #include "Model/BMesh2DInteractionCpData.h" /*! \class BEdge2DInteraction \brief bonded elastic interaction between an edge in a 2d mesh and a particle \author Steffen Abe $Revision$ $Date$ */ class BEdge2DInteraction { private: CParticle *m_p; Edge2D *m_ed; double m_k; double m_break; double m_dist; int m_eid; int m_pid; Vec3 m_ap; // anchor point in local coord. /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: typedef BMesh2DIP ParameterType; typedef BMesh2DInteractionCpData CheckPointable; //!< Used by PIS to save/load check-point data for objects of this type. BEdge2DInteraction(); BEdge2DInteraction(CParticle*,Edge2D*,BMesh2DIP,bool iflag=true); virtual ~BEdge2DInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); bool broken(); virtual Vec3 getPos()const {return m_p->getPos();}; // ?? inline int getPid() const {return m_pid;}; inline int getTid() const {return m_eid;}; Vec3 getAP() const; //!< Return anchor point in global coordinates. Needed for snapshot data. virtual void setPP(CParticle* part_p){m_p=part_p;}; virtual void setTP(Edge2D* tri_p){m_ed=tri_p;}; friend class TML_PackedMessageInterface; }; #endif //__BEDGE2DINTERACTION_H ./Model/SoftBWallInteractionGroup.cpp0000664000175000017500000000543612176660653017465 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/SoftBWallInteractionGroup.h" #include "Foundation/console.h" //---------------------------------------- // CSoftBWallIGP member functions //---------------------------------------- /*! Constructor for bonded wall interaction group with direction dependend elasticity \param name the name of the interaction \param wallname the name of the wall \param kx the spring constant for the elastic interactions in x-direction \param ky the spring constant for the elastic interactions in y-direction \param kz the spring constant for the elastic interactions in z-direction \param tag the tag of the particles to which the wall is bonded (if build via bond and not via distance) \param mask the tag mask \param scaling toggles scaling of elastic stiffnesses */ CSoftBWallIGP::CSoftBWallIGP(const std::string& name,const std::string& wallname,double normalK,double shearK,int tag, int mask, bool scaling) : CBWallIGP(name,wallname,normalK,tag,mask) { m_shearK=shearK; m_scaling=scaling; } void CSoftBWallIGP::packInto(CVarMPIBuffer* B) const { int sc; console.XDebug() << "CSoftBWallIGP::packInto( " << B << " )\n"; CBWallIGP::packInto(B); B->append(m_shearK); if (m_scaling) { sc = 1; } else { sc = 0; } B->append(sc); console.XDebug() << "end CSoftBWallIGP::packInto()\n "; } ostream& operator<<(ostream& ost,const CSoftBWallIGP& I) { ost << "CSoftBWallIGP\n"; ost << "Spring constants : " << I.m_k << " , " << I.m_shearK << endl; ost << "Tag : " << I.m_tag << endl; ost << "Scaling : " << I.m_scaling << endl; return ost; } CSoftBWallIGP* extractSoftBWallIGP(AMPIBuffer* B) { console.XDebug() << "extractSoftBWallIGP\n"; string name=B->pop_string(); double kx=B->pop_double(); string wallname=B->pop_string(); int tag=B->pop_int(); int mask=B->pop_int(); double ky=B->pop_double(); int sc = B->pop_int(); bool scaling; if (sc==1) { scaling = true; } else { scaling = false; } CSoftBWallIGP* res=new CSoftBWallIGP(name,wallname,kx,ky,tag,mask,scaling); console.XDebug() << "end extractSoftBWallIGP\n"; return res; } ./Model/MeshData2D.h0000664000175000017500000000233712176660653013731 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESHDATA2D_H #define __MESHDATA2D_H // -- IO includes -- #include using std::istream; /*! \struct MeshNodeData2D \brief data describing one node(point) in a 2D "mesh" \author Steffen Abe $Date$ $Revision$ */ struct MeshNodeData2D { int id; int tag; double x,y; void read(istream&); }; /*! \struct MeshEdgeData2D \brief data describing one Edge in a 2D "mesh" \author Steffen Abe $Date$ $Revision$ */ struct MeshEdgeData2D { int id,tag; int p1,p2; void read(istream&); }; #endif // __MESHDATA2D_H ./Model/ElasticInteractionGroup.hpp0000664000175000017500000001217712176660653017221 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "pis/pi_storage.h" //---------------------------------------------- // CElasticInteractionGroup functions //---------------------------------------------- template CElasticInteractionGroup::CElasticInteractionGroup() { m_exIG=NULL; this->m_update_timestamp=0; } template CElasticInteractionGroup::CElasticInteractionGroup(const CElasticIGP* Param) { m_exIG=NULL; m_k=Param->getSpringConst(); this->m_update_timestamp=0; } template void CElasticInteractionGroup::setParam(const CElasticIGP* Param) { m_k=Param->getSpringConst(); } template void CElasticInteractionGroup::calcForces() { console.Debug() << "calculating " << m_interactions.size() << " elastic forces\n" ; for(vector::iterator it=m_interactions.begin();it!=m_interactions.end();it++){ it->calcForces(); } } /*! Update the interactions from the neighbortable. If the ParallelParticleArray has been rebuild since the last update, the interactiongroup is cleared and rebuild from scratch. Otherwise only new interactions are added. */ template void CElasticInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CElasticInteractionGroup::Update\n"; int count_l=0; if(this->m_update_timestamp!=PPA->getTimeStamp()){// PPA rebuild since last update // clean out old interactions m_interactions.erase(m_interactions.begin(),m_interactions.end()); this->m_set.erase(this->m_set.begin(),this->m_set.end()); // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(m_exIG!=NULL){ if(!m_exIG->isIn(tv)){ m_interactions.push_back(CElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug()<<"not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } else { // PPA not rebuild since last update -> just get additional interactions // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getNewPairList(); for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(m_exIG!=NULL){ if(!m_exIG->isIn(tv)){ m_interactions.push_back(CElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug()<<"not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } this->m_update_timestamp=PPA->getTimeStamp(); console.XDebug() << "added " << count_l << " pairs to EIG\n"; console.XDebug() << "end CElasticInteractionGroup::Update\n"; } template ostream& operator<<(ostream& ost,const CElasticInteractionGroup& E) { ost << "CElasticInteractionGroup : \n"; for(vector::const_iterator it=E.m_interactions.begin();it!=E.m_interactions.end();it++){ ost << *it << " , " ; } ost << "exchange list: \n"; for(set >::const_iterator vit=E.m_exchg_list.begin();vit!=E.m_exchg_list.end();vit++){ ost << "[ " << vit->first << " from " << vit->second << " ] , "; } return ost; } ./Model/RotBondedInteraction.h0000664000175000017500000001164312176660653016135 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTBONDEDINTERACTION_H #define __ROTBONDEDINTERACTION_H // -- project includes -- #include "Model/RotPairInteraction.h" #include "Model/RotParticle.h" #include "Model/BondedInteractionCpData.h" #include "Model/IGParam.h" #include "Foundation/vec3.h" // -- I/O includes -- #include using std::ostream; /*! \struct CRotBondedIGP \brief Interaction parameters for bonded interaction between rotational particles \author Shane Latham, Steffen Abe $Revision$ $Date$ */ double calc_angle( double , double ) ; class CRotBondedIGP : public AIGParam { public: CRotBondedIGP(); CRotBondedIGP( const std::string &name, double kr, double ks, double kt, double kb, double max_nForce, double max_shForce, double max_tMoment, double max_bMoment, int tag, bool scaling, bool AmeanR_scaling, double truncated ); CRotBondedIGP( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int tag, bool AmeanR_scaling, double truncated ); virtual std::string getTypeString() const { return "RotBonded"; } double kr,ks,kt,kb ; double max_nForce, max_shForce,max_tMoment, max_bMoment; int tag; bool scaling; bool meanR_scaling; double truncated; }; /*! \class CRotBondedInteraction \brief Elastic interaction between bonded particles between rotational particles \author Shane Latham, Steffen Abe $Revision$ $Date$ */ class CRotBondedInteraction : public ARotPairInteraction { public: // types typedef CRotBondedIGP ParameterType; /** * Used by PIS to save/load check-point data for objects of this type. */ typedef BondedInteractionCpData CheckPointable; typedef double (CRotBondedInteraction::* ScalarFieldFunction)() const; typedef pair (CRotBondedInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotBondedInteraction::* VectorFieldFunction)() const; private: // protected: double m_dist; //!< current distance, cached from last calcForces() double m_kr ; //!< spring constant double m_ks ; double m_kb ; double m_kt ; double m_max_nForce; // always >0 double m_max_shForce ; double m_max_tMoment ; double m_max_bMoment ; double m_nForce; // >0, pulling; <0 , compressing double m_shForce ; // always >0 double m_tMoment ; double m_bMoment ; Vec3 m_force; //!< current force, cached for E_pot calculation Vec3 m_moment ; Vec3 m_cpos; // ? Vec3 m_D; //!< initial positions of the particles int m_tag; bool m_scaling; bool m_meanR_scaling; double m_truncated; public: CRotBondedInteraction(); CRotBondedInteraction(CRotParticle*,CRotParticle*,const CRotBondedIGP&); virtual ~CRotBondedInteraction(); static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static string getType(){return "RotBonded";}; int getTag() const; void setTag(int tag); void calcForces(); //void setBreak(double); bool broken(); double getPotentialEnergy() const; double getNormalPotentialEnergy() const; double getShearPotentialEnergy() const; double getTwistPotentialEnergy() const; double getBendPotentialEnergy() const; double getCriterion() const; Vec3 getForce() const; Vec3 getNormalForce() const; Vec3 getTangentialForce() const; virtual Vec3 getPos() const {return m_cpos;}; Vec3 getCentrePtDiff() const; Vec3 getInitialCentrePtDiff() const; Vec3 getInitialMidPoint() const; Vec3 getP2ShearForcePt() const; Vec3 getP1ShearForcePt() const; Vec3 getContactPoint() const; Vec3 getShearDiff() const; friend ostream& operator<<(ostream&,const CRotBondedInteraction&); friend class TML_PackedMessageInterface; virtual void saveCheckPointData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__BONDEDINTERACTION_H ./Model/InteractionGroup.hpp0000664000175000017500000000146312176660653015710 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// template bool APairInteractionGroup::isIn(int id1,int id2) { return (m_set.find(pair(id1,id2))!=m_set.end()); } ./Model/HertzianViscoElasticFrictionInteraction.cpp0000664000175000017500000004353112176660653022404 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /* HertzianViscoElasticFrictionInteraction.cpp: Written by Laura Heredia and Pablo Richeri, 2009. */ #include "Model/HertzianViscoElasticFrictionInteraction.h" #include "Foundation/console.h" #include "tml/message/packed_message_interface.h" CHertzianViscoElasticFrictionIGP::CHertzianViscoElasticFrictionIGP() : AIGParam(), m_A(0.0), m_E(0.0), m_nu(0.0), mu(0.0), k_s(0.0), dt(0.0) { } CHertzianViscoElasticFrictionIGP::CHertzianViscoElasticFrictionIGP( const std::string &name, double A, double E, double nu, double fricCoef, double shearK, double dT ) : AIGParam(name), m_A(A), m_E(E), m_nu(nu), mu(fricCoef), k_s(shearK), dt(dT) { } CHertzianViscoElasticFrictionInteraction ::CHertzianViscoElasticFrictionInteraction() { m_A=0.0; m_E=0.0; m_nu=0.0; m_dn=0.0; m_mu=0.0; m_r0=0.0; m_ks=0.0; m_dt=0.0; m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } void CHertzianViscoElasticFrictionIGP::setTimeStepSize(double timeStepSize) { this->dt = timeStepSize; } /*! constructor for CHertzianViscoElasticFrictionInteraction without friction and viscoelastic parameters, only calls the constructor of APairInteraction with the 2 particle pointers */ CHertzianViscoElasticFrictionInteraction ::CHertzianViscoElasticFrictionInteraction( CParticle* p1, CParticle* p2 ) : APairInteraction(p1,p2) { m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } CHertzianViscoElasticFrictionInteraction ::CHertzianViscoElasticFrictionInteraction( CParticle* p1, CParticle* p2, const CHertzianViscoElasticFrictionIGP& param ) : APairInteraction(p1,p2) { m_A=param.m_A; m_E=param.m_E; m_nu=param.m_nu; m_dn=0.0; m_mu=param.mu; m_ks=param.k_s; m_r0=p1->getRad()+p2->getRad(); m_dt=param.dt; m_cpos=p1->getPos()+((p2->getPos()-p1->getPos())*p1->getRad()/m_r0); m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } CHertzianViscoElasticFrictionInteraction ::~CHertzianViscoElasticFrictionInteraction() { } void CHertzianViscoElasticFrictionInteraction::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate viscoelastic and frictional forces. */ void CHertzianViscoElasticFrictionInteraction::calcForces() { // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { // contact -> calculate forces //--- viscoelastic force --- double R_ij=1.0/(1.0/m_p1->getRad()+1.0/m_p2->getRad()); dist=sqrt(dist); m_dn=eq_dist-dist; Vec3 dir=D.unit(); //Calculate d m_dn / dt double ex=D.X()/dist; double ey=D.Y()/dist; double ez=D.Z()/dist; double dvx=m_p1->getVel().X()-m_p2->getVel().X(); double dvy=m_p1->getVel().Y()-m_p2->getVel().Y(); double dvz=m_p1->getVel().Z()-m_p2->getVel().Z(); double m_dn_dot=-(ex*dvx+ey*dvy+ez*dvz); double norm_m_normal_force = (2.0*m_E*sqrt(R_ij)) / (3.0*(1.0-m_nu*m_nu)) * (pow(m_dn,1.5)+m_A*sqrt(m_dn)*m_dn_dot); m_normal_force = norm_m_normal_force < 0 ? Vec3(0.0,0.0,0.0) : dir*norm_m_normal_force; Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; // apply viscoelastic force m_p1->applyForce(m_normal_force,pos); m_p2->applyForce(-1.0*m_normal_force,pos); //--- frictional force --- // particle movement since last timestep const Vec3 d1=m_p1->getVel()*m_dt; const Vec3 d2=m_p2->getVel()*m_dt; Vec3 dFF=m_ks*(d2-d1); // Compute tangential part by subtracting off normal component. dFF -= ((dFF*D)/(D.norm2()))*D; m_Ffric+=dFF; const double FfricNorm = m_Ffric.norm(); const double forceNorm = m_normal_force.norm(); // decide static/dynamic if (FfricNorm > forceNorm*m_mu) { // tangential force greater than static friction -> dynamic m_Ffric=m_Ffric*((m_mu*forceNorm)/FfricNorm); m_force_deficit=Vec3(0.0,0.0,0.0); m_is_slipping=true; m_E_diss=m_mu*fabs(m_normal_force*(d2-d1)); // energy dissipated } else if (FfricNorm > 0.0) { // static friction m_is_slipping=false; m_E_diss=0.0; // no energy dissipated } else { // no frictional force -> force deficit=mu*F_n m_is_slipping=false; m_E_diss=0.0; // no energy dissipated } m_p1->applyForce(m_Ffric, pos); m_p2->applyForce(-1.0*m_Ffric, pos); m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 m_Ffric=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; // no energy dissipated } } bool CHertzianViscoElasticFrictionInteraction::isPersistent() { const Vec3 D=m_p1->getPos()-m_p2->getPos(); const double dist=D*D; const double eq_dist=m_p1->getRad()+m_p2->getRad(); return (dist <= (eq_dist*eq_dist)); } /*! get the force needed to overcome friction and make the interaction slip */ double CHertzianViscoElasticFrictionInteraction::getAbsForceDeficit()const { return m_force_deficit.norm(); } /*! get current frictional/stopping force */ pair CHertzianViscoElasticFrictionInteraction::getAbsFrictionalForce() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { res.first=true; res.second=m_Ffric.norm(); } else { res.first=false; } return res; } /*! get current frictional/stopping stress (f_fric/r^2) */ pair CHertzianViscoElasticFrictionInteraction::getAbsFrictionalStress() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { res.first=true; double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=m_Ffric.norm()/Ac; } else { res.first=false; } return res; } /*! get max. frictional force, i.e. coeff. of friction * normal force */ pair CHertzianViscoElasticFrictionInteraction::getAbsMuFN() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { // contact -> calculate forces //--- viscoelastic force --- double R_ij=1.0/(1.0/m_p1->getRad()+1.0/m_p2->getRad()); dist=sqrt(dist); double dn=eq_dist-dist; Vec3 dir=D.unit(); //Calculate d m_dn / dt double ex=D.X()/dist; double ey=D.Y()/dist; double ez=D.Z()/dist; double dvx=m_p1->getVel().X()-m_p2->getVel().X(); double dvy=m_p1->getVel().Y()-m_p2->getVel().Y(); double dvz=m_p1->getVel().Z()-m_p2->getVel().Z(); double m_dn_dot=-(ex*dvx+ey*dvy+ez*dvz); double norm_force = (2.0*m_E*sqrt(R_ij)) / (3.0*(1.0-m_nu*m_nu)) * (pow(dn,1.5)+m_A*sqrt(dn)*m_dn_dot); Vec3 force = norm_force < 0 ? Vec3(0.0,0.0,0.0) : dir*norm_force; res.first=true; res.second=force.norm(); } else { res.first=false; } return res; } /*! get max. frictional stress, i.e. coeff. of friction * normal stress */ pair CHertzianViscoElasticFrictionInteraction::getMaxFricStress() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { // contact -> calculate forces //--- viscoelastic force --- double R_ij=1.0/(1.0/m_p1->getRad()+1.0/m_p2->getRad()); dist=sqrt(dist); double dn=eq_dist-dist; Vec3 dir=D.unit(); //Calculate d m_dn / dt double ex=D.X()/dist; double ey=D.Y()/dist; double ez=D.Z()/dist; double dvx=m_p1->getVel().X()-m_p2->getVel().X(); double dvy=m_p1->getVel().Y()-m_p2->getVel().Y(); double dvz=m_p1->getVel().Z()-m_p2->getVel().Z(); double m_dn_dot=-(ex*dvx+ey*dvy+ez*dvz); double norm_force = (2.0*m_E*sqrt(R_ij)) / (3.0*(1.0-m_nu*m_nu)) * (pow(dn,1.5)+m_A*sqrt(dn)*m_dn_dot); Vec3 force = norm_force < 0 ? Vec3(0.0,0.0,0.0) : dir*norm_force; res.first=true; double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=force.norm()/Ac; } else { res.first=false; } return res; } /*! get current normal force */ pair CHertzianViscoElasticFrictionInteraction::getAbsFN() const { return make_pair(m_is_touching,m_normal_force.norm()); } /*! get current normal stress */ pair CHertzianViscoElasticFrictionInteraction::getNormalStress() const { pair res; if(m_is_touching){ res.first=true; double eq_dist=m_p1->getRad()+m_p2->getRad(); double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=m_normal_force.norm()/Ac; } else { res.first=false; } return res; } /*! get "force deficit", i.e. the force needed to make the contact dynamic */ /*! get the slipping velocity, i.e. the absolute value of the tangential part of the relatve particle velocity */ pair CHertzianViscoElasticFrictionInteraction::getSlipVelocity() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); if(D.norm()<=(m_p1->getRad()+m_p2->getRad())) { // if contact // normal Vec3 normal=D.unit(); // relative velocity Vec3 v_rel=m_p2->getVel()-m_p1->getVel(); // tangential component Vec3 v_tan=v_rel-(v_rel*normal)*normal; res=make_pair(true,v_tan.norm()); } else { res.first=false; } return res; } /*! get the potential energy stored in the interaction */ double CHertzianViscoElasticFrictionInteraction::getPotentialEnergy() const { const double e_pot_norm=0.5*m_normal_force*m_normal_force/m_E; return e_pot_norm; } /*! Get the static/dynamic status of the interaction. Returns 1 for a contact in dynamic friction, 0 for static or no contact */ double CHertzianViscoElasticFrictionInteraction::getSlipping() const { const double res=m_is_slipping ? 1.0 : 0.0; return res; } /*! Get "sticking" contacts, i.e. return 1 if the contact is touching but not slipping, 0 otherwise */ double CHertzianViscoElasticFrictionInteraction::getSticking() const { const double res=(m_is_touching && !m_is_slipping) ? 1.0 : 0.0; return res; } /*! return the amount of energy dissipated during the last time step */ double CHertzianViscoElasticFrictionInteraction::getDissipatedEnergy() const { return m_E_diss; } /*! get net force on particle1 imposed by this interaction. Returns Vec3::ZERO if particles are not in contact. */ Vec3 CHertzianViscoElasticFrictionInteraction::getForce() const { const Vec3 f=m_is_touching ? m_Ffric-m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! If the particles are in contact, get normal force, if not in contact return (0,0,0) */ Vec3 CHertzianViscoElasticFrictionInteraction::getNormalForce() const { const Vec3 f=m_is_touching ? m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! return 1 if particles are in contact, 0 otherwise */ double CHertzianViscoElasticFrictionInteraction::Count() const { double res=m_is_touching ? 1.0 : 0.0; return res; } /*! Calculate effective coefficient of friction for this interaction for a given direction of the applied shear force. If the effective coefficient of friction is infinite, -1 is returned. \param dir the direction of the applied shear force \return the effective coefficient of friction if it is finite, -1 otherwise and -2 for no contact */ pair CHertzianViscoElasticFrictionInteraction::getMuEff( const Vec3& dir, const Vec3& norm ) const { pair res; CParticle* p1; CParticle* p2; // sort particles, so that p1 is "above" the slip plane const Vec3 h=m_p1->getPos()-m_p2->getPos(); if(h*norm>0.0) { p1=m_p1; p2=m_p2; } else { p1=m_p2; p2=m_p1; } // get contact normal Vec3 nc=p1->getPos()-p2->getPos(); // get distance double dist=nc.norm(); // check if contact if(dist<=(p1->getRad()+p2->getRad())) { // if contact // get direction of current movement Vec3 d=p1->getVel()-p2->getVel(); // get tangential part d-=(d*nc.unit())*nc.unit(); // calculate effective coefficient of friction double h1=(dir.unit()*d.unit())-m_mu*(dir.unit()*nc.unit()); double h2=m_mu*(norm.unit()*nc.unit())+(norm.unit()*d.unit()); if(h1>0) { res.first=true; res.second=h2/h1; } else { res.first=false; } cout << "positions : " << p1->getPos() << " , " << p2->getPos() << endl; cout << "velocities: " << p1->getVel() << " , " << p2->getVel() << endl; cout << "v_tan : " << d << endl; cout << "h1,h2 : " << h1 << " , " << h2 << endl; cout << "mu_eff : " << res.second << endl; } else { res.first=false; } return res; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CHertzianViscoElasticFrictionInteraction::ScalarFieldFunction CHertzianViscoElasticFrictionInteraction::getScalarFieldFunction( const string& name ) { CHertzianViscoElasticFrictionInteraction::ScalarFieldFunction sf; if (name=="potential_energy") { sf=&CHertzianViscoElasticFrictionInteraction::getPotentialEnergy; } else if (name=="slipping") { sf=&CHertzianViscoElasticFrictionInteraction::getSlipping; } else if (name=="sticking") { sf=&CHertzianViscoElasticFrictionInteraction::getSticking; } else if (name=="count") { sf=&CHertzianViscoElasticFrictionInteraction::Count; } else if (name=="dissipated_energy") { sf=&CHertzianViscoElasticFrictionInteraction::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CHertzianViscoElasticFrictionInteraction::CheckedScalarFieldFunction CHertzianViscoElasticFrictionInteraction::getCheckedScalarFieldFunction( const string& name ) { CHertzianViscoElasticFrictionInteraction::CheckedScalarFieldFunction sf; if (name=="mu_eff_xy") { sf=&CHertzianViscoElasticFrictionInteraction::getMuEffXY; } else if (name=="mu_eff_xz") { sf=&CHertzianViscoElasticFrictionInteraction::getMuEffXZ; } else if (name=="f_fric") { sf=&CHertzianViscoElasticFrictionInteraction::getAbsFrictionalForce; } else if (name=="fric_stress") { sf=&CHertzianViscoElasticFrictionInteraction::getAbsFrictionalStress; } else if (name=="f_normal") { sf=&CHertzianViscoElasticFrictionInteraction::getAbsFN; } else if (name=="normal_stress") { sf=&CHertzianViscoElasticFrictionInteraction::getNormalStress; } else if (name=="muF_n") { sf=&CHertzianViscoElasticFrictionInteraction::getAbsMuFN; } else if (name=="max_fric_stress") { sf=&CHertzianViscoElasticFrictionInteraction::getMaxFricStress; } else if (name=="v_slip") { sf=&CHertzianViscoElasticFrictionInteraction::getSlipVelocity; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CHertzianViscoElasticFrictionInteraction::VectorFieldFunction CHertzianViscoElasticFrictionInteraction::getVectorFieldFunction( const string& name ) { CHertzianViscoElasticFrictionInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CHertzianViscoElasticFrictionInteraction::getForce; } else if (name=="normal_force") { vf = &CHertzianViscoElasticFrictionInteraction::getNormalForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Pack a CHertzianViscoElasticFrictionInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface ::pack( const CHertzianViscoElasticFrictionInteraction& I ) { append(I.m_r0); append(I.m_A); append(I.m_E); append(I.m_nu); append(I.m_dn); append(I.m_mu); append(I.m_ks); append(I.m_dt); append(I.m_id[0]); append(I.m_id[1]); append(I.m_Ffric); } /*! Unpack a CHertzianViscoElasticFrictionInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface ::unpack( CHertzianViscoElasticFrictionInteraction& I ) { I.m_r0=pop_double(); I.m_A=pop_double(); I.m_E=pop_double(); I.m_nu=pop_double(); I.m_dn=pop_double(); I.m_mu=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_Ffric=pop_vec3(); } ostream& operator<<( ostream& ost, const CHertzianViscoElasticFrictionInteraction& BI ) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/SoftBWallInteractionGroup.h0000664000175000017500000000515412176660653017127 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SOFTBWALLINTERACTIONGROUP_H #define __SOFTBWALLINTERACTIONGROUP_H //--- project includes --- #include "Model/SoftBWallInteraction.h" #include "Model/WallIG.h" #include "Model/BWallInteractionGroup.h" //--- STL includes --- #include using std::map; template class ParallelParticleArray; /*! \brief Interaction group parameters for CSoftBWallInteractionGroups */ class CSoftBWallIGP : public CBWallIGP { protected: double m_shearK; bool m_scaling; public: CSoftBWallIGP(const std::string&,const std::string&,double,double,int,int,bool); virtual void packInto(CVarMPIBuffer*) const; double getNormalK()const{return m_k;}; double getShearK()const{return m_shearK;}; bool getScaling()const{return m_scaling;}; friend ostream& operator<<(ostream&,const CSoftBWallIGP&); }; CSoftBWallIGP* extractSoftBWallIGP(AMPIBuffer*); // --- Forward decl --- template class CSoftBWallInteractionGroup; template ostream& operator<<(ostream &, const CSoftBWallInteractionGroup &); /*! \brief Class for a group of bonded, elastic interactions with per-direction spring constants between particles and a wall */ template class CSoftBWallInteractionGroup : public AWallInteractionGroup { protected: vector > m_interactions; double m_normalK,m_shearK; //!< spring constants for each direction int m_tag; bool m_scaling; public: CSoftBWallInteractionGroup(TML_Comm*); CSoftBWallInteractionGroup(TML_Comm*,CWall*,const CSoftBWallIGP*); virtual ~CSoftBWallInteractionGroup(){} /** * Null op, don't require time step size. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual void applyForce(const Vec3&); virtual void Update(ParallelParticleArray*); friend ostream& operator<< <>(ostream &, const CSoftBWallInteractionGroup &); }; #include "SoftBWallInteractionGroup.hpp" #endif //__BSOFTWALLINTERACTIONGROUP_H ./Model/WallIG.h0000664000175000017500000000434312176660653013173 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __AWALLINTERACTIONGROUP_H #define __AWALLINTERACTIONGROUP_H //--- project includes --- #include "Model/Wall.h" #include "Model/InteractionGroup.h" //--- IO includes --- #include //--- TML includes --- #include "tml/comm/comm.h" /*! \brief Abstract Base class for a group of interactions between particles and a wall */ template class AWallInteractionGroup : public AInteractionGroup { protected: CWall* m_wall; //!< the wall TML_Comm* m_comm; //!< MPI communicator int m_inner_count; public: AWallInteractionGroup(TML_Comm* comm) :m_wall(NULL), m_comm(comm), m_inner_count(0) { } virtual ~AWallInteractionGroup() { } /** * Null op, current wall interactions don't require time step size. */ virtual void setTimeStepSize(double dt) { // do nothing, time step size not required in wall interactions. } virtual void calcForces()=0; virtual void applyForce(const Vec3&){ std::cerr << "calling unimplemented function AWallInteractionGroup::applyForce" << std::endl; } virtual void setVelocity(const Vec3&){ std::cerr << "calling unimplemented function AWallInteractionGroup::setVelocity" << std::endl; } inline double getDisplacement(){return m_wall->getDisplacement();}; inline void resetDisplacement(){m_wall->resetDisplacement();}; inline void moveWallBy(const Vec3& mv){m_wall->moveBy(mv);}; inline void setWallNormal(const Vec3& wn){m_wall->setNormal(wn);}; inline void zeroForce(){m_wall->zeroForce();}; }; #endif // __AWALLINTERACTIONGROUP_H ./Model/BTriMeshIP.cpp0000664000175000017500000000372212176660653014315 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BTriMeshIP.h" BTriMeshIP::BTriMeshIP() : k(0.0), brk(0.0), m_name(), m_meshName() { } BTriMeshIP::BTriMeshIP( const std::string &interactionName, const std::string &meshName, double normalK, double breakDistance ) : k(normalK), brk(breakDistance), m_name(interactionName), m_meshName(meshName) { } BTriMeshIP::~BTriMeshIP() { } void BTriMeshIP::setMeshName(const std::string &meshName) { m_meshName = meshName; } const std::string &BTriMeshIP::getMeshName() const { return m_meshName; } void BTriMeshIP::setName(const std::string &name) { m_name = name; } const std::string &BTriMeshIP::getName() const { return m_name; } std::string BTriMeshIP::getTypeString() const { return "Bonded"; } MeshBuildPrms::MeshBuildPrms() { } MeshBuildPrms::~MeshBuildPrms() { } MeshTagBuildPrms::MeshTagBuildPrms() : MeshBuildPrms(), m_tag(-1), m_mask(0) { } MeshTagBuildPrms::MeshTagBuildPrms(int tag, int mask) : MeshBuildPrms(), m_tag(tag), m_mask(mask) { } std::string MeshTagBuildPrms::getTypeString() const { return "BuildByTag"; } MeshGapBuildPrms::MeshGapBuildPrms() : MeshBuildPrms(), m_maxGap(0.0) { } MeshGapBuildPrms::MeshGapBuildPrms(double maxGap) : MeshBuildPrms(), m_maxGap(maxGap) { } std::string MeshGapBuildPrms::getTypeString() const { return "BuildByGap"; } ./Model/RotDamping.h0000664000175000017500000000525112176660653014117 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROT_DAMPING_H #define __ROT_DAMPING_H // -- project includes -- #include "Model/DampingIGP.h" #include "Foundation/vec3.h" #include "Foundation/quintuple.h" using esys::lsm::quintuple; /*! \brief Damping of the rotational part of the particle motion by an artificial viscosity */ template class CRotDamping { protected: T *m_p; //!< the particle Vec3 m_vref; //!< reference velocity double m_visc; //!< artificial viscosity double m_dt; //!< time step int m_maxiter; //!< iteration limit double m_E_diss; //!< dissipaed energy Vec3 m_force; //!< current force static double s_limit2; //!< square error limit for iteration static int s_flops; public: typedef CDampingIGP ParameterType; typedef double (CRotDamping::* ScalarFieldFunction)() const; typedef pair (CRotDamping::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotDamping::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); CRotDamping(T*,CDampingIGP*); virtual ~CRotDamping(); inline void setLimit(double limit){s_limit2=limit*limit;}; virtual void calcForces(); void setTimeStepSize(double dt); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p->getPos();}; virtual Vec3 getPosSecond() const {return Vec3(0.0,0.0,0.0);}; virtual Vec3 getPos() const {return m_p->getPos();}; vector getAllID() const; quintuple getRaw2Data() const { return quintuple( m_p->getPos(), m_p->getRad(), Vec3::ZERO, 0, getPos() ); } static void zeroFlops(){s_flops=0;}; static int Flops(){return s_flops;}; double getDissipatedEnergy() const; Vec3 getForce() const; }; #include "Model/RotDamping.hpp" #endif //__ROT_DAMPING_H ./Model/BTriMeshIP.h0000664000175000017500000000343212176660653013760 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BTRIMESHIP_H #define __BTRIMESHIP_H #include class BTriMeshIP { public: double k; double brk; BTriMeshIP(); BTriMeshIP( const std::string &interactionName, const std::string &meshName, double normalK, double breakDistance ); virtual ~BTriMeshIP(); void setMeshName(const std::string &meshName); const std::string &getMeshName() const; void setName(const std::string &name); const std::string &getName() const; virtual std::string getTypeString() const; private: std::string m_name; std::string m_meshName; }; class MeshBuildPrms { public: MeshBuildPrms(); virtual ~MeshBuildPrms(); virtual std::string getTypeString() const = 0; private: }; class MeshTagBuildPrms : public MeshBuildPrms { public: int m_tag; int m_mask; MeshTagBuildPrms(); MeshTagBuildPrms(int tag, int mask); virtual std::string getTypeString() const; }; class MeshGapBuildPrms : public MeshBuildPrms { public: double m_maxGap; MeshGapBuildPrms(); MeshGapBuildPrms(double maxGap); virtual std::string getTypeString() const; }; #endif // __BTRIMESHIP_H ./Model/ETriangleInteraction.h0000664000175000017500000000305112176660653016121 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ETRIANGLEINTERACTION_H #define __ETRIANGLEINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Triangle.h" #include "Model/Particle.h" #include "Model/ETriMeshIP.h" /*! \class ETriangleInteraction \brief unbonded elastic interaction between a Triangle and a particle \author Steffen Abe $Revision$ $Date$ */ class ETriangleInteraction { private: CParticle *m_p; Triangle *m_t; double m_k; /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: typedef ETriMeshIP ParameterType; ETriangleInteraction(); ETriangleInteraction(CParticle*,Triangle*,ETriMeshIP,bool iflag=true); virtual ~ETriangleInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); }; #endif //__ETRIANGLEINTERACTION_H ./Model/InteractionGroup.h0000664000175000017500000000424512176660653015351 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __INTERACTIONGROUP_H #define __INTERACTIONGROUP_H // -- project includes -- #include "Model/IGParam.h" #include "Model/InteractionParam.h" // -- STL includes -- #include #include using std::set; using std::pair; class AParallelInteractionStorage; template class ParallelParticleArray; /*! \brief Abstract base class for a group of interactions */ template class AInteractionGroup { public: virtual ~AInteractionGroup(){}; virtual void Update(ParallelParticleArray*)=0; virtual void calcForces()=0; virtual void setTimeStepSize(double dt) = 0; }; /*! \brief Abstract base class for a group of pair interactions The difference to AInteractionGroup is the existence of a function bool isIn(int,int) which returns if an interaction between particles with the given Ids is in this group. (Necessary because bonded -> not elastic,frictional etc.) */ template class APairInteractionGroup : public AInteractionGroup { protected: /*! having an extra set of all pairs if particle-Ids of the interactions in the group costs some memory, but speeds up isIn to O(log N). It would be O(N) if implemented with a find() over the vector of inteactions. \todo replace set (O(logN)) with hashset (O(1)) */ set > m_set; unsigned int m_update_timestamp; public: bool isIn(int,int); virtual void setExIG(AParallelInteractionStorage* eg){}; }; #include "Model/InteractionGroup.hpp" #endif //__INTERACTIONGROUP_H ./Model/BWallInteractionGroup.hpp0000664000175000017500000001477712176660653016646 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //---------------------------------------------- // CBWallInteractionGroup functions //---------------------------------------------- #include "Foundation/console.h" template CBWallInteractionGroup::CBWallInteractionGroup(TML_Comm* comm):AWallInteractionGroup(comm) {} /*! Constructor for bonded wall interaction group \param comm the communicator \param wallp a pointer to the wall \param param the interaction parameters */ template CBWallInteractionGroup::CBWallInteractionGroup(TML_Comm* comm,CWall* wallp,const CBWallIGP* I) :AWallInteractionGroup(comm) { console.XDebug() << "making CBWallInteractionGroup \n"; m_k=I->getSpringConst(); this->m_wall=wallp; m_tag=I->getTag(); m_mask=I->getMask(); this->m_inner_count=0; } template void CBWallInteractionGroup::calcForces() { console.XDebug() << "calculating " << m_bonded_interactions.size() << " bonded wall forces\n" ; console.XDebug() << "calculating " << m_elastic_interactions.size() << " elastic wall forces\n" ; for ( typename vector >::iterator it=m_bonded_interactions.begin(); it!=m_bonded_interactions.end(); it++){ it->calcForces(); } for(typename vector >::iterator it=m_elastic_interactions.begin(); it!=m_elastic_interactions.end(); it++){ it->calcForces(); } } /*! Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions. \param F the force */ template void CBWallInteractionGroup::applyForce(const Vec3& F) { console.XDebug() << "CBWallInteractionGroup::applyForce: F = " << F << "\n"; // calculate local K double K=0.0; for ( typename vector >::iterator it=m_bonded_interactions.begin(); it!=m_bonded_interactions.end(); it++){ if(it->isInner()){ K+=it->getStiffness(); } } for(typename vector >::iterator it=m_elastic_interactions.begin(); it!=m_elastic_interactions.end(); it++){ if(it->isInner()){ K+=it->getStiffness(); } } // get global K double K_global=this->m_comm->sum_all(K); int it=0; double d; Vec3 O_f=F.unit(); // direction of the applied force console.XDebug() << "CBWallInteractionGroup::applyForce: unitF = " << O_f << "\n"; do{ // calculate local F Vec3 F_local=Vec3(0.0,0.0,0.0); // bonded itneractions for( typename vector >::iterator iter=m_bonded_interactions.begin(); iter!=m_bonded_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // elastic interactions for( typename vector >::iterator iter=m_elastic_interactions.begin(); iter!=m_elastic_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // get global F // by component (hack - fix later,i.e. sum_all for Vec3) double fgx=this->m_comm->sum_all(F_local.X()); double fgy=this->m_comm->sum_all(F_local.Y()); double fgz=this->m_comm->sum_all(F_local.Z()); Vec3 F_global=Vec3(fgx,fgy,fgz); // calc necessary wall movement d=((F+F_global)*O_f)/K_global; console.XDebug() << "CBWallInteractionGroup::applyForce: iteration " << it << ", d = " << fabs(d) << "\n"; // move the wall console.XDebug() << "CBWallInteractionGroup::applyForce: moving wall by " << d*O_f << "\n"; this->m_wall->moveBy(d*O_f); it++; } while((it<10)&&(fabs(d)>10e-6)); // check for convergence console.XDebug() << "CBWallInteractionGroup::applyForce: d = " << fabs(d) << ", num iterations = " << it << "\n"; } /*! Update interactions from an existing parallel particle array \param PPA a pointer to the particle array */ template void CBWallInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CBWallInteractionGroup::Update()\n" ; // -- bonded interactions -- // empty particle list first m_bonded_interactions.erase(m_bonded_interactions.begin(),m_bonded_interactions.end()); this->m_inner_count=0; // build new particle list typename ParallelParticleArray::ParticleListHandle plh= PPA->getParticlesAtPlane(this->m_wall->getOrigin(),this->m_wall->getNormal()); for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ if(((*iter)->getTag() & m_mask )== (m_tag & m_mask)){ // if tagged->bonded ,add to bonded interaction bool iflag=PPA->isInInner((*iter)->getPos()); m_bonded_interactions.push_back(CBondedWallInteraction(*iter,this->m_wall,m_k,iflag)); this->m_inner_count+=(iflag ? 1 : 0); } } // -- elastic interactions -- // empty particle list first m_elastic_interactions.erase(m_elastic_interactions.begin(),m_elastic_interactions.end()); // build new particle list for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ if(((*iter)->getTag() & m_mask )!=(m_tag & m_mask )){ // only add to elastic if not bonded/tagged bool iflag=PPA->isInInner((*iter)->getPos()); m_elastic_interactions.push_back(CElasticWallInteraction(*iter,this->m_wall,m_k,iflag)); this->m_inner_count+=(iflag ? 1 : 0); } } console.XDebug() << "end CBWallInteractionGroup::Update()\n"; } template ostream& operator<<(ostream& ost,const CBWallInteractionGroup& IG) { ost << "CBWallInteractionGroup" << endl << flush; ost << *(IG.m_wall) << endl << flush; return ost; } ./Model/FractalFriction.cpp0000664000175000017500000001332412176660653015460 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/FractalFriction.h" #include "Foundation/console.h" #include "tml/message/packed_message_interface.h" FractalFrictionIGP::FractalFrictionIGP() : AIGParam(), k(0.0), mu_0(0.0), k_s(0.0), dt(0.0), mu(), //!< pointer to the array of friction coeff. x0(0.0),y0(0.0),dx(0.0),dy(0.0), //!< origin and grid spacing of the array nx(0),ny(0) //!< array size { } FractalFrictionIGP::FractalFrictionIGP(const FractalFrictionIGP& F) : AIGParam(F) { k = F.k; mu_0 = F.mu_0; k_s = F.k_s; dt = F.dt; x0 = F.x0; y0 = F.y0; dx = F.dx; dy = F.dy; nx = F.nx; ny = F.ny; mu = boost::shared_ptr(new double[nx*ny]); for (int i = 0; i < nx*ny; i++) { (mu.get())[i] = (F.mu.get())[i]; } } FractalFrictionIGP &FractalFrictionIGP::operator=(const FractalFrictionIGP &F) { k = F.k; mu_0 = F.mu_0; k_s = F.k_s; dt = F.dt; x0 = F.x0; y0 = F.y0; dx = F.dx; dy = F.dy; nx = F.nx; ny = F.ny; mu = boost::shared_ptr(new double[nx*ny]); for (int i = 0; i < nx*ny; i++) { (mu.get())[i] = (F.mu.get())[i]; } return *this; } FractalFrictionIGP::~FractalFrictionIGP() { ///////delete mu; } CFractalFriction::CFractalFriction() { m_k=0.0; m_mu=0.0; m_r0=0.0; m_ks=0.0; m_dt=0.0; } /*! Construct a CFractalFriction from 2 particle pointers and the parameters \param p1 pointer to the first particle \param p2 pointer to the second particle \param param the interaction parameters */ CFractalFriction::CFractalFriction(CParticle* p1,CParticle* p2,const FractalFrictionIGP& param):CFrictionInteraction(p1,p2) { m_k=param.k; m_ks=param.k_s; m_r0=p1->getRad()+p2->getRad(); m_dt=param.dt; m_cpos=p1->getPos()+((p2->getPos()-p1->getPos())*p1->getRad()/m_r0); int idx=int(floor((m_cpos.X()-param.x0)/param.dx)); // where in the mu-array are we (x-dir) idx= (idx<0) ? 0 : idx; // clamp idx to 0..nx-1 idx= (idx>=param.nx) ? param.nx-1 : idx; int idy=int(floor((m_cpos.Y()-param.y0)/param.dy)); // where in the mu-array are we (x-dir) idy= (idy<0) ? 0 : idy; // clamp idy to 0..ny-1 idy= (idy>=param.ny) ? param.ny-1 : idy; int index=idx*param.ny+idy; m_mu=param.mu_0*param.mu.get()[index]; // console.Debug() << "cpos,ix,iy,index,mu: " << m_cpos << " , " << idx << " , " << idy << " , " << index << " , " << m_mu << "\n"; } CFractalFriction::~CFractalFriction() {} /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CFractalFriction::ScalarFieldFunction CFractalFriction::getScalarFieldFunction(const string& name) { CFractalFriction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CFractalFriction::getPotentialEnergy; } else if (name=="slipping"){ sf=&CFractalFriction::getSlipping; } else if (name=="count"){ sf=&CFractalFriction::Count; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CFractalFriction::VectorFieldFunction CFractalFriction::getVectorFieldFunction(const string& name) { CFractalFriction::VectorFieldFunction vf; vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return vf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CFractalFriction::CheckedScalarFieldFunction CFractalFriction::getCheckedScalarFieldFunction(const string& name) { CFractalFriction::CheckedScalarFieldFunction sf; if (name=="mu_eff_xy"){ sf=&CFractalFriction::getMuEffXY; } else if (name=="mu_eff_xz"){ sf=&CFractalFriction::getMuEffXZ; } else if (name=="F_fric"){ sf=&CFractalFriction::getAbsFrictionalForce; } else if (name=="muF_n") { sf=&CFractalFriction::getAbsMuFN; } else if (name=="v_slip") { sf=&CFractalFriction::getSlipVelocity; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Pack a CFractalFriction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CFractalFriction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu); append(I.m_ks); append(I.m_dt); append(I.m_id[0]); append(I.m_id[1]); } /*! Unpack a CFractalFriction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CFractalFriction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); } ostream& operator<<(ostream& ost,const CFractalFriction& FI) { ost << "[" << FI.m_p1->getID() << " - " << FI.m_p2->getID() << "] : " << FI.m_mu ; return ost; } ./Model/IGParam.h0000664000175000017500000000253412176660653013334 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __IGPARAM_H #define __IGPARAM_H #include "Parallel/mpivbuf.h" // -- STL includes -- #include /*! \class AIGParam \brief Abstract base class for InteractionGroup parameters \author Steffen Abe $Revision$ $Date$ */ class AIGParam { private: std::string m_name; public: AIGParam(const std::string &name = ""); virtual ~AIGParam(); virtual void packInto(CVarMPIBuffer*) const; void setName(const std::string &name); const std::string &getName() const {return m_name;} const std::string &Name() const {return getName();} virtual std::string getTypeString() const = 0; // friend class AInteractionGroup; }; #endif //__IGPARAM_H ./Model/BWallInteractionGroup.h0000664000175000017500000000514512176660653016273 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BWALLINTERACTIONGROUP_H #define __BWALLINTERACTIONGROUP_H //--- project includes --- #include "Model/BWallInteraction.h" #include "Model/EWallInteraction.h" #include "Model/WallIG.h" #include "Model/EWallInteractionGroup.h" //--- STL includes --- #include using std::map; template class ParallelParticleArray; /*! \class CBWallIGP \brief Interaction group parameters for CBWallInteractionGroups \author Steffen Abe $Revision$ $Date$ */ class CBWallIGP : public CEWallIGP { protected: int m_tag; int m_mask; public: CBWallIGP(const std::string&,const std::string&,double,int,int); virtual void packInto(CVarMPIBuffer*) const; int getTag()const{return m_tag;}; int getMask()const{return m_mask;}; friend ostream& operator<<(ostream&,const CBWallIGP&); }; CBWallIGP* extractBWallIGP(AMPIBuffer*); // --- Forward decl --- template class CBWallInteractionGroup; template ostream& operator<<(ostream &, const CBWallInteractionGroup &); /*! \class CBWallInteractionGroup \brief Class for a group of bonded,elastic interactions between particles and a wall \author Steffen Abe $Revision$. $Date$ */ template class CBWallInteractionGroup : public AWallInteractionGroup { protected: vector > m_bonded_interactions; //!< bonded interactions for tagged particles vector > m_elastic_interactions; //!< elastic interactions for the rest double m_k; //!< spring constant int m_tag; int m_mask; public: CBWallInteractionGroup(TML_Comm*); CBWallInteractionGroup(TML_Comm*,CWall*,const CBWallIGP*); virtual ~CBWallInteractionGroup(){} virtual void calcForces(); virtual void applyForce(const Vec3&); virtual void Update(ParallelParticleArray*); friend ostream& operator<< <> (ostream &, const CBWallInteractionGroup &); }; #include "BWallInteractionGroup.hpp" #endif //__BWALLINTERACTIONGROUP_H ./Model/HertzianViscoElasticInteraction.h0000664000175000017500000000523112176660653020346 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __HERTZIANVISCOELASTICINTERACTION_H #define __HERTZIANVISCOELASTICINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" /*! \brief Interaction group parameters for Hertzian viscoelastic interactions */ class CHertzianViscoElasticIGP : public AIGParam { public: double m_A; double m_E; double m_nu; // poisson ratio CHertzianViscoElasticIGP(); CHertzianViscoElasticIGP(const std::string&,double,double,double); virtual std::string getTypeString() const {return "HertzianViscoElastic";} }; /*! \class CHertzianViscoElasticInteraction \brief Hertzian ViscoElastic Interaction between free particles \author Laura Heredia & Pablo Richeri $Revision: 1 $ $Date: 2009-12-13 19:00:00 -0300 (Sun, 13 Dec 2009) $ */ class CHertzianViscoElasticInteraction : public APairInteraction { public: typedef double (CHertzianViscoElasticInteraction::* ScalarFieldFunction)() const; typedef Vec3 (CHertzianViscoElasticInteraction::* VectorFieldFunction)() const; typedef pair (CHertzianViscoElasticInteraction::* CheckedScalarFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction( const string& ); private: double m_A;//!< Damping constant double m_E;//!< Young's modulus double m_nu; //!< Poisson ratio Vec3 m_force; // caching force for E_pot double m_dn; // caching displacement for E_pot Vec3 m_cpos; // center position public: typedef CHertzianViscoElasticIGP ParameterType; CHertzianViscoElasticInteraction( CParticle*, CParticle*, const CHertzianViscoElasticIGP& ); virtual ~CHertzianViscoElasticInteraction(){}; virtual Vec3 getPos() const {return m_cpos;}; double getPotentialEnergy() const; virtual void calcForces(); Vec3 getForce() const; }; #endif //__HERTZIANVISCOELASTICINTERACTION_H ./Model/LinearDashpotInteraction.cpp0000664000175000017500000000777412176660653017357 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "LinearDashpotInteraction.h" // --- system includes --- #include // --- member functions for interaction group parameter class --- //! default constructor CLinearDashpotIGP::CLinearDashpotIGP(): AIGParam(), m_damp(0.0), m_cutoff(1.0) {} /*! constructor with parameters \param name the name of the interaction group \param damp the damping coefficient \param cutoff the interaction range, relative to the sum of the particle radii */ CLinearDashpotIGP::CLinearDashpotIGP(const std::string& name,double damp, double cutoff) : AIGParam(name), m_damp(damp), m_cutoff(cutoff) {} // --- function of interaction class --- CLinearDashpotInteraction::CLinearDashpotInteraction(CParticle* p1,CParticle* p2, const CLinearDashpotIGP& param) : APairInteraction(p1,p2) { // calc. cross section - 2D / 3D double r_avg=0.5*(m_p1->getRad()+m_p2->getRad()); if(CParticle::getDo2dCalculations()){ m_cross_section=2.0*r_avg; } else { m_cross_section=M_PI*r_avg*r_avg; } // set parameters m_cutoff=param.m_cutoff; m_damp=param.m_damp; m_force=Vec3(0.0,0.0,0.0); } /*! calculate forces */ void CLinearDashpotInteraction::calcForces() { // calc distance -> needed to check if particles interact Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist_sq=D*D; // calc cutoff distance -> could be cached double cut_dist=m_cutoff*(m_p1->getRad()+m_p2->getRad()); if(dist_sq<(cut_dist*cut_dist)){ // velocity difference Vec3 dvel=m_p1->getVel()-m_p2->getVel(); // strain rate Vec3 eps_dot=dvel/sqrt(dist_sq); m_force=eps_dot*m_damp*m_cross_section; // apply force at particle centers m_p2->applyForce(m_force,m_p2->getPos()); m_p1->applyForce(-1.0*m_force,m_p1->getPos()); } m_cpos=(m_p1->getPos()+m_p2->getPos())*0.5; } /*! "field function" returning force currently exerted by interaction */ Vec3 CLinearDashpotInteraction::getForce() const { return m_force; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CLinearDashpotInteraction::ScalarFieldFunction CLinearDashpotInteraction::getScalarFieldFunction(const string& name) { CLinearDashpotInteraction::ScalarFieldFunction sf; if (name=="count"){ sf=&CLinearDashpotInteraction::Count; } else { sf=NULL; std::cerr << "ERROR - invalid name for interaction scalar access function " << name << " in LinearDashpotInteraction" << std::endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CLinearDashpotInteraction::VectorFieldFunction CLinearDashpotInteraction::getVectorFieldFunction(const string& name) { CLinearDashpotInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CLinearDashpotInteraction::getForce; } else { vf=NULL; std::cerr << "ERROR - invalid name for interaction vector access function " << name << " in LinearDashpotInteraction" << endl; } return vf; } /*! dummy */ CLinearDashpotInteraction::CheckedScalarFieldFunction CLinearDashpotInteraction::getCheckedScalarFieldFunction(const string& name) { CLinearDashpotInteraction::CheckedScalarFieldFunction csf; csf=NULL; cerr << "ERROR - invalid name for interaction vector access function " << name << " in LinearDashpotInteraction" << endl; return csf; } ./Model/ECorner2DInteraction.cpp0000664000175000017500000000314412176660653016330 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ECorner2DInteraction.h" /*! default constructor */ ECorner2DInteraction::ECorner2DInteraction() { m_p=NULL; m_corner=NULL; m_k=0.0; m_inner_flag=false; } /*! constructor with parameters \param p a pointer to the particle \param c a pointer to the corner \param param the interaction parameters \param iflag */ ECorner2DInteraction::ECorner2DInteraction(CParticle* p,Corner2D* c,ETriMeshIP param,bool iflag) { m_p=p; m_corner=c; m_k=param.k; m_inner_flag=iflag; } /*! destructor */ ECorner2DInteraction::~ECorner2DInteraction() {} /*! calculate & apply forces */ void ECorner2DInteraction::calcForces() { Vec3 ppos=m_p->getPos(); if(m_corner->isValidContact(ppos)){ // if no contact to adjacent edges or triangles double sep=m_corner->sep(ppos); if(sepgetRad()){ Vec3 force=m_k*(m_p->getRad()-sep)*m_corner->getDirectionFromPoint(ppos); m_p->applyForce(force,ppos); } } } ./Model/BondedInteraction.cpp0000664000175000017500000001704012176660653016000 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BondedInteraction.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/console.h" #include "tml/message/packed_message_interface.h" #include CBondedIGP::CBondedIGP() : AIGParam(), k(0.0), rbreak(0.0), tag(0) { } CBondedIGP::CBondedIGP(const std::string &name, int tag, double normalK, double breakDistance, bool scaling) : AIGParam(name), k(normalK), rbreak(breakDistance), tag(tag), m_scaling(scaling) { } CBondedInteraction::CBondedInteraction() : APairInteraction() { m_k=0; m_break=0; m_r0=0; m_dist=0; m_force=Vec3(0.0,0.0,0.0); m_tag = -1; m_scaling=true; } /*! just do the APairInteraction part of the constructor - not to be used directly, only by derived class -> therefore protected */ CBondedInteraction::CBondedInteraction(CParticle* p1,CParticle* p2) : APairInteraction(p1, p2) {} CBondedInteraction::CBondedInteraction( CParticle* p1, CParticle* p2, const CBondedIGP& param ) : APairInteraction(p1, p2) { double effR=1.0; double effA=1.0; double effL=1.0; // effective radius, cross section and length of the bond for scaling // equilibrium distance m_r0=p1->getRad()+p2->getRad(); // scale elastic param m_scaling = param.m_scaling; if (m_scaling) { if(!CParticle::getDo2dCalculations()){ effR=0.5*m_r0; } effL=m_r0; effA = effR * effR; } m_k=param.k*effA/effL; m_break=m_r0*param.rbreak; // setup initial distance in case we want to break before first calcForces() Vec3 D=p1->getPos()-p2->getPos(); m_dist=sqrt(D*D); m_force=Vec3(0.0,0.0,0.0); m_tag = param.tag; m_scaling = param.m_scaling; } CBondedInteraction::~CBondedInteraction() { } bool CBondedInteraction::broken() { bool res; if((m_dist-m_r0)>m_break){ // console.Debug() << "bond broken" << "\n" // << "ids : " << m_p1->getID() << " " << m_p2->getID() << "\n" // << "positions : " << m_p1->getPos() << m_p2->getPos() << "\n" // << "dist : " << m_dist << "\n" // << "break : " << m_break << "\n" ; res=true; if (m_p1!=NULL) m_p1->setFlag(); if (m_p2!=NULL) m_p2->setFlag(); } else { res=false; } return(res); } double CBondedInteraction::getCriterion() const { return m_dist - m_break; } /*! Set breaking distance to sum of the radii multiplied with given "relative breaking distance" \param rel_break the relative breaking distance */ void CBondedInteraction::setBreak(double rel_break) { m_break=(m_p1->getRad()+m_p2->getRad())*rel_break; } /*! Calculate bonded elastic forces. 21 Flops */ void CBondedInteraction::calcForces() { const Vec3 D=m_p1->getPos()-m_p2->getPos(); m_dist=sqrt(D*D); m_force = D*(m_k*(m_dist-m_r0)/m_dist); // console.XDebug() // << "bonded interaction: [" << m_p1->getID() << " - " // << m_p2->getID() << "]" << m_p1->getPos() // << m_p2->getPos() << " " << m_force << "\n"; const Vec3 pos=m_p2->getPos()+(m_p2->getRad()/m_r0)*D; m_p2->applyForce(m_force,pos); m_p1->applyForce(-1.0*m_force,pos); m_cpos=pos; } /*! get the potential energy stored in the interaction */ double CBondedInteraction::getPotentialEnergy() const { double e_pot_norm=0.5*m_force*m_force/m_k; return e_pot_norm; } /*! get strain - compression positive */ double CBondedInteraction::getStrain() const { double strain=(m_r0-m_dist)/m_r0; return strain; } /*! get force - points to p1 on extension, to p2 on compression */ Vec3 CBondedInteraction::getForce() const { return m_force; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CBondedInteraction::ScalarFieldFunction CBondedInteraction::getScalarFieldFunction(const string& name) { CBondedInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CBondedInteraction::getPotentialEnergy; } else if (name=="count"){ sf=&CBondedInteraction::Count; } else if (name=="strain"){ sf=&CBondedInteraction::getStrain;; } else if (name=="breaking_criterion"){ sf=&CBondedInteraction::getCriterion; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CBondedInteraction::VectorFieldFunction CBondedInteraction::getVectorFieldFunction(const string& name) { CBondedInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CBondedInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CBondedInteraction::CheckedScalarFieldFunction CBondedInteraction::getCheckedScalarFieldFunction(const string& name) { CBondedInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Pack a CBondedInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CBondedInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_dist); append(I.m_break); append(I.m_id[0]); append(I.m_id[1]); append(I.getTag()); } /*! Unpack a CBondedInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CBondedInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.setTag(pop_int()); } /*! Save snapshot data (non-restartable, viz/postprocessing only) to an output stream. \param oStream the output stream */ void CBondedInteraction::saveCheckPointData(std::ostream &oStream) { BondedInteractionCpData(*this).saveCheckPointData(oStream); } /*! save restart data to ostream \param oStream the output stream */ void CBondedInteraction::saveRestartData(std::ostream &oStream) { oStream << m_k << " "; oStream << m_r0 << " "; oStream << m_dist << " "; oStream << m_break << " "; oStream << m_scaling << " "; oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << getTag() << std::endl; } /*! load restart data from stream \param iStream the input stream */ void CBondedInteraction::loadRestartData(std::istream &iStream) { int tag; iStream >> m_k ; iStream >> m_r0 ; iStream >> m_dist ; iStream >> m_break ; iStream >> m_scaling ; iStream >> m_id[0] ; iStream >> m_id[1] ; iStream >> tag; setTag(tag); } ostream& operator<<(ostream& ost,const CBondedInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/RotElasticInteraction.cpp0000664000175000017500000001137012176660653016656 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "RotElasticInteraction.h" #include "console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" #include CRotElasticIGP::CRotElasticIGP() : AIGParam(), m_kr(0.0), m_scaling(true) {} CRotElasticIGP::CRotElasticIGP( const std::string& name, double kr, bool scaling ) : AIGParam(name), m_kr(kr), m_scaling(scaling) {} CRotElasticInteraction::CRotElasticInteraction() : ARotPairInteraction() { m_kr = 0.0; m_nForce = 0.0; m_force = Vec3(0.0,0.0,0.0); m_scaling = true; } CRotElasticInteraction::CRotElasticInteraction( CRotParticle* p1, CRotParticle* p2, const CRotElasticIGP& param ) : ARotPairInteraction(p1,p2) { double f=1.0; m_scaling = param.m_scaling; // scale elastic param if (m_scaling) { if(!CParticle::getDo2dCalculations()) { f=0.5*(p1->getRad()+p2->getRad()); } } m_kr = f * param.m_kr; m_nForce = 0.0; m_force = Vec3(0.0,0.0,0.0); m_D = p1->getPos()-p2->getPos(); } Vec3 CRotElasticInteraction::getForce() const { return m_force; } /*! Calculate free elastic forces. */ void CRotElasticInteraction::calcForces() { const Vec3 rb = m_p1->getPos() - m_p2->getPos(); const double rbNorm = rb.norm(); const double r_0Norm = m_p1->getRad()+m_p2->getRad(); const Vec3 delta_r = (rbNorm - r_0Norm)*rb/rbNorm; if (rbNorm < r_0Norm) { // contact -> calculate forces m_force = m_kr*delta_r; m_nForce = -m_force.norm(); Vec3 pos=m_p2->getPos()+(m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()))*rb; m_p1->applyForce(-1.0*m_force,pos); m_p2->applyForce(m_force,pos); m_cpos=pos; } else { // no contact -> all forces are 0 m_force = Vec3(0.0,0.0,0.0); m_nForce = 0.0; } } /*! Get the potential energy stored in the interaction. */ double CRotElasticInteraction::getPotentialEnergy() const { return (m_kr!=0.0) ? 0.5*(m_nForce*m_nForce)/m_kr : 0.0; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CRotElasticInteraction::ScalarFieldFunction CRotElasticInteraction::getScalarFieldFunction(const string& name) { CRotElasticInteraction::ScalarFieldFunction sf; if (name=="potential_energy") { sf=&CRotElasticInteraction::getPotentialEnergy; } else if (name=="count") { sf=&CRotElasticInteraction::Count; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CRotElasticInteraction::CheckedScalarFieldFunction CRotElasticInteraction::getCheckedScalarFieldFunction(const string& name) { CRotElasticInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CRotElasticInteraction::VectorFieldFunction CRotElasticInteraction::getVectorFieldFunction(const string& name) { CRotElasticInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CRotElasticInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! save restart data to ostream \param oStream the output stream */ void CRotElasticInteraction::saveRestartData(std::ostream &oStream) { oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_init << " "; oStream << m_kr << " "; oStream << m_scaling << " "; oStream << m_D; } /*! load restart data from stream \param iStream the input stream */ void CRotElasticInteraction::loadRestartData(std::istream &iStream) { iStream >> m_id[0]; iStream >> m_id[1]; iStream >> m_init ; iStream >> m_kr; iStream >> m_scaling; iStream >> m_D; } ostream& operator<<(ostream& ost,const CRotElasticInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/BMesh2DInteraction.h0000664000175000017500000000224212176660653015434 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BMESH2DINTERACTION_H #define __BMESH2DINTERACTION_H // --- STL includes --- #include using std::string; // --- project includes --- #include "Model/BEdge2DInteraction.h" #include "Model/BCorner2DInteraction.h" #include "Model/BMesh2DIP.h" struct BMesh2DInteraction { typedef BMesh2DIP ParameterType; typedef BEdge2DInteraction TriIntType; typedef BCorner2DInteraction CornerIntType; static string getType(){return "BondedMesh2D";}; }; #endif // __BMESH2DINTERACTION_H ./Model/FrictionInteraction.cpp0000664000175000017500000003770212176660653016371 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/FrictionInteraction.h" #include "Foundation/console.h" #include "tml/message/packed_message_interface.h" CFrictionIGP::CFrictionIGP() : AIGParam(), k(0.0), mu(0.0), k_s(0.0), dt(0.0) { } CFrictionIGP::CFrictionIGP(const std::string &name, double normalK, double fricCoef, double shearK, double dT, bool scaling) : AIGParam(name), k(normalK), mu(fricCoef), k_s(shearK), dt(dT), m_scaling(scaling) { } CFrictionInteraction::CFrictionInteraction() { m_k=0.0; m_mu=0.0; m_r0=0.0; m_ks=0.0; m_dt=0.0; m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } void CFrictionIGP::setTimeStepSize(double timeStepSize) { this->dt = timeStepSize; } /*! constructor for CFrictionInteraction without friction parameters, only calls the constructor of APairInteraction with the 2 particle pointers */ CFrictionInteraction::CFrictionInteraction(CParticle* p1,CParticle* p2):APairInteraction(p1,p2) { m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } CFrictionInteraction::CFrictionInteraction(CParticle* p1,CParticle* p2,const CFrictionIGP& param):APairInteraction(p1,p2) { // scale elastic param double f=1.0; m_scaling = param.m_scaling; if (m_scaling) { if(!CParticle::getDo2dCalculations()){ f=0.5*(p1->getRad()+p2->getRad()); } } m_k=f*param.k; m_mu=param.mu; m_ks=f*param.k_s; m_r0=p1->getRad()+p2->getRad(); m_dt=param.dt; m_cpos=p1->getPos()+((p2->getPos()-p1->getPos())*p1->getRad()/m_r0); m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; } CFrictionInteraction::~CFrictionInteraction() { } void CFrictionInteraction::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate elastic and frictional forces. */ void CFrictionInteraction::calcForces() { // calculate distance const Vec3 D=m_p1->getPos()-m_p2->getPos(); const double eq_dist=m_p1->getRad()+m_p2->getRad(); double dist=D*D; // check if there is contact if(dist<(eq_dist*eq_dist)) { // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); const Vec3 force=D*(m_k*(dist-eq_dist)/dist); m_normal_force=force; const Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; // apply elastic force m_p2->applyForce(force,pos); m_p1->applyForce(-1.0*force,pos); //--- frictional force --- // particle movement since last timestep const Vec3 d1=m_p1->getVel()*m_dt; const Vec3 d2=m_p2->getVel()*m_dt; Vec3 ds = d2 - d1; // Compute tangential part by subtracting off normal component. ds -= ((ds*D)/(D.norm2()))*D; m_Ffric += m_ks * ds; const double FfricNorm = m_Ffric.norm(); const double forceNorm = force.norm(); // decide static/dynamic if (FfricNorm > forceNorm*m_mu) { // tangential force greater than static friction -> dynamic m_Ffric=m_Ffric*((m_mu*forceNorm)/FfricNorm); m_force_deficit=Vec3(0.0,0.0,0.0); m_is_slipping=true; m_E_diss = fabs(m_Ffric * ds); // energy dissipated } else if (FfricNorm > 0.0) { // static friction m_is_slipping=false; m_E_diss=0.0; // no energy dissipated } else { // no frictional force -> force deficit=mu*F_n m_is_slipping=false; m_E_diss=0.0; // no energy dissipated } m_p1->applyForce(m_Ffric, pos); m_p2->applyForce(-1.0*m_Ffric, pos); m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 m_Ffric=Vec3(0.0,0.0,0.0); m_normal_force=Vec3(0.0,0.0,0.0); m_is_slipping=false; m_is_touching=false; m_E_diss=0.0; // no energy dissipated } } bool CFrictionInteraction::isPersistent() { const Vec3 D=m_p1->getPos()-m_p2->getPos(); const double dist=D*D; const double eq_dist=m_p1->getRad()+m_p2->getRad(); return (dist <= (eq_dist*eq_dist)); } /*! get the force needed to overcome friction and make the interaction slip */ double CFrictionInteraction::getAbsForceDeficit()const { return m_force_deficit.norm(); } /*! get current frictional/stopping force */ pair CFrictionInteraction::getAbsFrictionalForce() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { res.first=true; res.second=m_Ffric.norm(); } else { res.first=false; } return res; } /*! get current frictional/stopping stress (f_fric/r^2) */ pair CFrictionInteraction::getAbsFrictionalStress() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { res.first=true; double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=m_Ffric.norm()/Ac; } else { res.first=false; } return res; } /*! get max. frictional force, i.e. coeff. of friction * normal force */ pair CFrictionInteraction::getAbsMuFN() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { dist=sqrt(dist); Vec3 force=D*(m_k*(dist-eq_dist)/dist); res.first=true; res.second=force.norm(); } else { res.first=false; } return res; } /*! get max. frictional stress, i.e. coeff. of friction * normal stress */ pair CFrictionInteraction::getMaxFricStress() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)) { dist=sqrt(dist); Vec3 force=D*(m_k*(dist-eq_dist)/dist); res.first=true; double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=force.norm()/Ac; } else { res.first=false; } return res; } /*! get current normal force */ pair CFrictionInteraction::getAbsFN() const { return make_pair(m_is_touching,m_normal_force.norm()); } /*! get current normal stress */ pair CFrictionInteraction::getNormalStress() const { pair res; if(m_is_touching){ res.first=true; double eq_dist=m_p1->getRad()+m_p2->getRad(); double Ac=eq_dist*eq_dist*0.7854; // contact area res.second=m_normal_force.norm()/Ac; } else { res.first=false; } return res; } /*! get "force deficit", i.e. the force needed to make the contact dynamic */ /*! get the slipping velocity, i.e. the absolute value of the tangential part of the relatve particle velocity */ pair CFrictionInteraction::getSlipVelocity() const { pair res; // calculate distance Vec3 D=m_p1->getPos()-m_p2->getPos(); if(D.norm()<=(m_p1->getRad()+m_p2->getRad())) { // if contact // normal Vec3 normal=D.unit(); // relative velocity Vec3 v_rel=m_p2->getVel()-m_p1->getVel(); // tangential component Vec3 v_tan=v_rel-(v_rel*normal)*normal; res=make_pair(true,v_tan.norm()); } else { res.first=false; } return res; } /*! get the potential energy stored in the interaction \warning For performance reasons the tangential part of the elastic energy is calculated directly from the current tangential force whereas it would be more accurate to calculate it incrementally during the force calculation. Be aware that therefore the potential energy is an approximation. Tests suggest an accuracy of a few percent. */ double CFrictionInteraction::getPotentialEnergy() const { const double e_pot_norm=0.5*m_normal_force*m_normal_force/m_k; double e_pot_tan=0.5*m_Ffric*m_Ffric/m_ks; return e_pot_norm+e_pot_tan; } /*! Get the static/dynamic status of the interaction. Returns 1 for a contact in dynamic friction, 0 for static or no contact */ double CFrictionInteraction::getSlipping() const { const double res=m_is_slipping ? 1.0 : 0.0; return res; } /*! Get "sticking" contacts, i.e. return 1 if the contact is touching but not slipping, 0 otherwise */ double CFrictionInteraction::getSticking() const { const double res=(m_is_touching && !m_is_slipping) ? 1.0 : 0.0; return res; } /*! return the amount of energy dissipated during the last time step */ double CFrictionInteraction::getDissipatedEnergy() const { return m_E_diss; } /*! get net force on particle1 imposed by this interaction. Returns Vec3::ZERO if particles are not in contact. */ Vec3 CFrictionInteraction::getForce() const { const Vec3 f=m_is_touching ? m_Ffric-m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! If the particles are in contact, get normal force, if not in contact return (0,0,0) */ Vec3 CFrictionInteraction::getNormalForce() const { const Vec3 f=m_is_touching ? m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! return 1 if particles are in contact, 0 otherwise */ double CFrictionInteraction::Count() const { double res=m_is_touching ? 1.0 : 0.0; return res; } /*! Calculate effective coefficient of friction for this interaction for a given direction of the applied shear force. If the effective coefficient of friction is infinite, -1 is returned. \param dir the direction of the applied shear force \return the effective coefficient of friction if it is finite, -1 otherwise and -2 for no contact */ pair CFrictionInteraction::getMuEff(const Vec3& dir,const Vec3& norm) const { pair res; CParticle* p1; CParticle* p2; // sort particles, so that p1 is "above" the slip plane const Vec3 h=m_p1->getPos()-m_p2->getPos(); if(h*norm>0.0) { p1=m_p1; p2=m_p2; } else { p1=m_p2; p2=m_p1; } // get contact normal Vec3 nc=p1->getPos()-p2->getPos(); // get distance double dist=nc.norm(); // check if contact if(dist<=(p1->getRad()+p2->getRad())) { // if contact // get direction of current movement Vec3 d=p1->getVel()-p2->getVel(); // get tangential part d-=(d*nc.unit())*nc.unit(); // calculate effective coefficient of friction double h1=(dir.unit()*d.unit())-m_mu*(dir.unit()*nc.unit()); double h2=m_mu*(norm.unit()*nc.unit())+(norm.unit()*d.unit()); if(h1>0) { res.first=true; res.second=h2/h1; } else { res.first=false; } cout << "positions : " << p1->getPos() << " , " << p2->getPos() << endl; cout << "velocities: " << p1->getVel() << " , " << p2->getVel() << endl; cout << "v_tan : " << d << endl; cout << "h1,h2 : " << h1 << " , " << h2 << endl; cout << "mu_eff : " << res.second << endl; } else { res.first=false; } return res; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CFrictionInteraction::ScalarFieldFunction CFrictionInteraction::getScalarFieldFunction(const string& name) { CFrictionInteraction::ScalarFieldFunction sf; if (name=="force_deficit") { sf=&CFrictionInteraction::getAbsForceDeficit; } else if (name=="potential_energy") { sf=&CFrictionInteraction::getPotentialEnergy; } else if (name=="slipping") { sf=&CFrictionInteraction::getSlipping; } else if (name=="sticking") { sf=&CFrictionInteraction::getSticking; } else if (name=="count") { sf=&CFrictionInteraction::Count; } else if (name=="dissipated_energy") { sf=&CFrictionInteraction::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CFrictionInteraction::CheckedScalarFieldFunction CFrictionInteraction::getCheckedScalarFieldFunction(const string& name) { CFrictionInteraction::CheckedScalarFieldFunction sf; if (name=="mu_eff_xy") { sf=&CFrictionInteraction::getMuEffXY; } else if (name=="mu_eff_xz") { sf=&CFrictionInteraction::getMuEffXZ; } else if (name=="f_fric") { sf=&CFrictionInteraction::getAbsFrictionalForce; } else if (name=="fric_stress") { sf=&CFrictionInteraction::getAbsFrictionalStress; } else if (name=="f_normal") { sf=&CFrictionInteraction::getAbsFN; } else if (name=="normal_stress") { sf=&CFrictionInteraction::getNormalStress; } else if (name=="muF_n") { sf=&CFrictionInteraction::getAbsMuFN; } else if (name=="max_fric_stress") { sf=&CFrictionInteraction::getMaxFricStress; } else if (name=="v_slip") { sf=&CFrictionInteraction::getSlipVelocity; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CFrictionInteraction::VectorFieldFunction CFrictionInteraction::getVectorFieldFunction(const string& name) { CFrictionInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CFrictionInteraction::getForce; } else if (name=="normal_force") { vf = &CFrictionInteraction::getNormalForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Pack a CFrictionInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CFrictionInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu); append(I.m_ks); append(I.m_dt); append(I.m_id[0]); append(I.m_id[1]); append(I.m_Ffric); append(static_cast(I.m_scaling)); } /*! Unpack a CFrictionInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CFrictionInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_Ffric=pop_vec3(); I.m_scaling=static_cast(pop_int()); } /*! Save restart data to an open ostream \param oStream the output stream */ void CFrictionInteraction::saveRestartData(std::ostream &oStream) { oStream << m_k << " "; oStream << m_r0 << " "; oStream << m_mu << " "; oStream << m_ks << " "; oStream << m_dt << " "; oStream << m_scaling << " "; oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_is_slipping << " "; oStream << m_is_touching << " "; oStream << m_Ffric.X() << " "; oStream << m_Ffric.Y() << " "; oStream << m_Ffric.Z(); } /*! Load restart data from an open istream \param iStream the input stream */ void CFrictionInteraction::loadRestartData(std::istream &iStream) { iStream >> m_k ; iStream >> m_r0 ; iStream >> m_mu ; iStream >> m_ks ; iStream >> m_dt ; iStream >> m_scaling ; iStream >> m_id[0] ; iStream >> m_id[1] ; iStream >> m_is_slipping ; iStream >> m_is_touching ; iStream >> m_Ffric.X() ; iStream >> m_Ffric.Y() ; iStream >> m_Ffric.Z(); } ostream& operator<<(ostream& ost,const CFrictionInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/Wall.h0000664000175000017500000000537212176660653012756 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __WALL_H #define __WALL_H //--- project includes --- #include "Fields/VectorWallFieldSlave.h" #include "Foundation/vec3.h" #include "Foundation/console.h" //--- IO includes --- #include using std::ostream; using std::endl; using std::flush; class TML_comm; /*! \class CWall \brief base class for all walls \author Steffen Abe $Revision$ $Date$ */ class CWall { protected: Vec3 m_origin,m_normal; Vec3 m_force; Vec3 m_oldpos; Vec3 m_vel; public: typedef Vec3 (CWall::* VectorFieldFunction)() const; CWall(); CWall(const Vec3&,const Vec3&); virtual ~CWall(){}; void moveBy(const Vec3& v) { console.XDebug() << "CWall::moveBy: v = " << v << "\n"; console.XDebug() << "CWall::moveBy: oldpos = " << m_oldpos << "\n"; console.XDebug() << "CWall::moveBy: pre move origin = " << m_origin << "\n"; m_origin += v; console.XDebug() << "CWall::moveBy: post move origin = " << m_origin << "\n"; }; void moveTo(const Vec3& v){m_origin=v;}; void setNormal(const Vec3& v){m_normal=v;}; void setVel(const Vec3& v){m_vel=v;}; Vec3 getVel(){return m_vel;}; inline const Vec3& getOrigin()const {return m_origin;}; inline const Vec3& getNormal()const {return m_normal;}; inline void addForce(const Vec3& force){m_force-=force;}; inline void zeroForce(){m_force=Vec3(0.0,0.0,0.0);}; inline const Vec3& getForce(){return m_force;}; inline const Vec3& getPos(){return m_origin;}; Vec3 getPos() const {return m_origin;}; Vec3 getForce() const {return m_force;}; inline double getDisplacement(){return (m_origin-m_oldpos).norm();}; inline Vec3 getTotalDisplacement(){return (m_origin-m_oldpos);}; inline void resetDisplacement(){m_oldpos=m_origin;}; static VectorFieldFunction getVectorFieldFunction(const string&); VectorWallFieldSlave* generateVectorFieldSlave(TML_Comm*,const string&); int getFieldSummationFlag(const string&); virtual void writeCheckPoint(ostream&,const string&) const; virtual void loadCheckPoint(istream&); friend ostream& operator<<(ostream&,const CWall&); }; #endif //__WALL_H ./Model/RotThermBondedInteraction.cpp0000664000175000017500000007137012176660653017473 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/RotThermBondedInteraction.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" #include /* double calc_angle( double s_in, double c_os) { double angle; if (s_in >0.0) { if ( c_os>=1.0 ||c_os<=-1.0) { angle = 0.0; } else { angle = acos(c_os); } } else if (s_in==0.0) { angle = 0.0; } else { if ( c_os>=1.0 ||c_os<=-1.0) { angle = 0.0; } else { angle = - acos(c_os); } } return angle ; } */ CRotThermBondedIGP::CRotThermBondedIGP() : kr(0.0), ks(0.0), kt(0.0), kb(0.0), max_nForce(0.0), max_shForce(0.0), max_tMoment(0.0), max_bMoment(0.0), diffusivity(0.0), tag(0) { } CRotThermBondedIGP::CRotThermBondedIGP( const std::string &name, double normalK, double shearK, double torsionK, double bendingK, double maxNormalForce, double maxShearForce, double maxTorsionMoment, double maxBendingMoment, double thermalDiffusivity, int bondTag ) : AIGParam(name), kr(normalK), ks(shearK), kt(torsionK), kb(bendingK), max_nForce(maxNormalForce), max_shForce(maxShearForce), max_tMoment(maxTorsionMoment), max_bMoment(maxBendingMoment), diffusivity(thermalDiffusivity), tag(bondTag) { } CRotThermBondedInteraction::CRotThermBondedInteraction():ARotThermPairInteraction() { m_kr = 0.0 ; m_ks = 0.0 ; m_kb = 0.0 ; m_kt = 0.0 ; m_max_nForce = 0.0 ; m_max_shForce = 0.0 ; m_max_tMoment = 0.0 ; m_max_bMoment = 0.0 ; m_nForce = 0.0 ; m_shForce = 0.0; m_tMoment = 0.0; m_bMoment = 0.0; m_min_r =0.0 ; m_moment = Vec3(0.0,0.0,0.0); m_force = Vec3(0.0,0.0,0.0); m_diffusivity =0.0; m_tag = 0; } CRotThermBondedInteraction::CRotThermBondedInteraction(CRotThermParticle* p1,CRotThermParticle* p2,const CRotThermBondedIGP& param):ARotThermPairInteraction(p1,p2) { m_nForce = 0.0; m_shForce = 0.0; m_tMoment = 0.0; m_bMoment = 0.0; //12/02/2005 added double ran_ratio ; double ran_ratioH ; double km_coef ; if (m_p1->getRad()<= m_p2->getRad() ) m_min_r = m_p1->getRad() ; else m_min_r = m_p2->getRad() ; if(m_p1->getDo2dCalculations()) { // 2D ran_ratio = 2.0*m_min_r/(m_p1->getRad()+m_p2->getRad()); km_coef = m_min_r*m_min_r; ran_ratioH = 2.0*m_min_r*(m_p1->getRad()+m_p2->getRad()); }else{ // 3D ran_ratio = 2.0*m_min_r*m_min_r/(m_p1->getRad()+m_p2->getRad()); km_coef = 1.0; //tmp ???? ran_ratioH = 2.0*m_min_r*m_min_r*(m_p1->getRad()+m_p2->getRad()); } m_kr = ran_ratio*param.kr ; m_ks = ran_ratio*param.ks ; m_kb = km_coef*ran_ratio*param.kb ; m_kt = ran_ratio*param.kt ; // temp ?? // cout << " m_kr= " <getID() << endl; // cout << "ran_ratio= " <getPos()-p2->getPos(); m_dist=sqrt(D*D); m_tag = param.tag; } int CRotThermBondedInteraction::getTag() const { return m_tag; } void CRotThermBondedInteraction::setTag(int tag) { m_tag = tag; } CRotThermBondedInteraction::~CRotThermBondedInteraction() { } /* bool CRotBondedInteraction::broken() { const double crit_nf = (m_nForce/m_max_nForce > 0.0) ? m_nForce/m_max_nForce :0.0; const double criterion = crit_nf + m_shForce/m_max_shForce + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment; // if(criterion > 1.0 ) { // std::stringstream msg; // msg << "bond broken" << "\n" ; // msg << "ids : " << m_p1->getID() << " " << m_p2->getID() << "\n" ; // msg << "positions : " << m_p1->getPos() << m_p2->getPos() << "\n"; // msg << "dist : " << m_dist << "\n"; // msg << "m_nForce/m_max_nForce = " << m_nForce/m_max_nForce << "\n"; // msg << "m_shForce/m_max_shForce = " << m_shForce/m_max_shForce << "\n"; // msg << "m_tMoment/m_max_tMoment = " << m_tMoment/m_max_tMoment << "\n"; // msg << "m_bMoment/m_max_bMoment = " << m_bMoment/m_max_bMoment << "\n"; // console.Debug() << msg.str(); // } return(criterion > 1.0); } */ bool CRotThermBondedInteraction::broken() { bool res; // const double crit_nf = (m_nForce/m_max_nForce > 0.0) ? m_nForce/m_max_nForce :0.0; // const double criterion = // crit_nf + // m_shForce/m_max_shForce + // m_tMoment/m_max_tMoment + // m_bMoment/m_max_bMoment; double criterion = m_nForce/m_max_nForce + m_shForce*m_shForce/(m_max_shForce*m_max_shForce) + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment ; // cout << "wyc crit= " << criterion<< endl; // cout << "m_nForce= " < 1.0 ){ console.Debug() << "bond broken" << "\n" ; console.Debug() << "ids : " << m_p1->getID() << " " << m_p2->getID() << "\n" ; console.Debug() << "positions : " << m_p1->getPos() << m_p2->getPos() << "\n"; console.Debug() << "dist : " << m_dist << "\n" ; if(m_p1!=NULL) m_p1->setFlag(); if(m_p2!=NULL) m_p2->setFlag(); res=true; //console.Debug() << "break : " << m_break << "\n" ; //zjr // cout << "wyc bond broken " << m_p1->getID()<< " --- "<< m_p2->getID() <getRad()<< " --- "<< m_p2->getRad() <getOldPos() + m_p2->getOldPos())*0.5<< endl; //zjr // cout << "wyc bond broken " << m_p1->getPos()<< " --- "<< m_p2->getPos() <getQuat()<< " --- "<< m_p2->getQuat() <getOldPos() + m_p2->getOldPos())*0.5<<" "<< 0.5*m_nForce*m_nForce/m_kr // +0.5*m_shForce*m_shForce/m_ks // +0.5*m_bMoment*m_bMoment/m_kb << " " << shear_tensile << endl ; } else {res= false; } return res ; } Vec3 CRotThermBondedInteraction::getInitialCentrePtDiff() const { return m_p2->getInitPos() - m_p1->getInitPos(); } Vec3 CRotThermBondedInteraction::getCentrePtDiff() const { return m_p2->getPos() - m_p1->getPos(); } Vec3 CRotThermBondedInteraction::getInitialMidPoint() const { const Vec3 initialDiff = getInitialCentrePtDiff(); const double initialDiffNorm = initialDiff.norm(); return (m_p1->getRad() + (initialDiffNorm - m_p2->getRad()))/(2.0*initialDiffNorm)*initialDiff; } double CRotThermBondedInteraction::getCriterion() const { return m_nForce/m_max_nForce + m_shForce/m_max_shForce + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment; } Vec3 CRotThermBondedInteraction::getShearDiff() const { const Vec3 initialMidPt = getInitialMidPoint(); const Vec3 p1Pt = m_p1->getPos() + (m_p1->getQuat().to_matrix()*(initialMidPt)); const Vec3 p2Pt = m_p2->getPos() + (m_p2->getQuat().to_matrix()*(initialMidPt-m_p2->getInitPos())); const Vec3 ptDiff = p2Pt-p1Pt; const Vec3 rotatedInitialDiffDirection = p1Pt - m_p1->getPos(); return (ptDiff - (((ptDiff*rotatedInitialDiffDirection)/rotatedInitialDiffDirection.norm2())*rotatedInitialDiffDirection)); } #if 0 void CRotBondedInteraction::calcForces() { // Calculate linear elastic force, no moment const Vec3 currentDiff = m_p2->getPos() - m_p1->getPos(); const double currentDiffNorm = currentDiff.norm(); const Vec3 initialDiff = getInitialCentrePtDiff(); const Vec3 p2LinearForce = ((m_kr * (initialDiff.norm() - currentDiffNorm))/currentDiffNorm) * currentDiff; m_p2->applyForce( p2LinearForce, m_p2->getPos()); m_p1->applyForce(-p2LinearForce, m_p1->getPos()); m_nForce = p2LinearForce.norm(); // Calculate the shearing forces, linear and moment contributions. // Need to take into account relative orientations of particles. const Vec3 shearDiff = getShearDiff(); } #else /* const double HALF_SQRT_2 = 0.5*sqrt(2.0); void CRotBondedInteraction::calcForces() { double s_fai=0.0, c_fai=0.0, c_pasi2=0.0, s_pasi2=0.0; double sita=0.0, pasi=0.0; const Matrix3 mat0 = (m_p1->getQuat()).to_matrix(); const Vec3 rbp = m_p2->getPos() - m_p1->getPos(); const double rbpNorm = rbp.norm(); const Vec3 rb = mat0*(m_p2->getPos() - m_p1->getPos()); const double rbNorm = rb.norm(); const Vec3 r_0 = m_p2->getInitPos() - m_p1->getInitPos(); const double r_0Norm = r_0.norm(); const Vec3 delta_r = (rbNorm - r_0Norm)*rb/rbNorm; const Vec3 Fr = m_kr*delta_r ; const double gama_cos = dot(rb, r_0)/(rbNorm*r_0Norm) ; double gama = 0.0; if (gama_cos < 1.0 && gama_cos > -1.0 ) { gama = acos(gama_cos); } const Vec3 rb_0 = cross(rb, r_0); const Vec3 rb_b0 = cross(rb, rb_0); const double rb_b0Norm = rb_b0.norm(); Vec3 Fst(0.0,0.0,0.0); if (rb_b0Norm != 0) { Fst = m_ks*r_0Norm*gama*rb_b0/rb_b0Norm; } Vec3 Mst(0.0,0.0,0.0); const double rb_0Norm = rb_0.norm(); if (rb_0Norm != 0) { Mst = -Fst.norm()*rb_0/rb_0Norm; } const double m0 = HALF_SQRT_2*sqrt((rbNorm + rb.Z())/rbNorm); double m1 = -HALF_SQRT_2*sqrt((rbNorm - rb.Z())/rbNorm) ; double m2 = -m1; const double m3 = 0.0; const double rbX2PlusRbY2 = rb.X()*rb.X() + rb.Y()*rb.Y(); if (rbX2PlusRbY2 != 0.0) { const double denomSqrt = sqrt(rbX2PlusRbY2); m1 = m1*rb.Y()/denomSqrt; m2 = m2*rb.X()/denomSqrt; } const Quaternion qm(m0, Vec3(m1,m2,m3)); const Matrix3 mat = qm.to_matrix(); const Matrix3 matTrans(mat.trans()); const Quaternion rp = (m_p1->getQuat()).inverse() * (m_p2->getQuat()); const Quaternion r = qm.inverse() * rp * qm; const double temp0 = r.return_sca()*r.return_sca() + r.return_vec().Z()*r.return_vec().Z(); if(temp0 == 0.0) { pasi = 0.0; } else { const double sqrtTemp0 = sqrt(temp0); c_pasi2 = r.return_sca()/sqrtTemp0; s_pasi2 = r.return_vec().Z()/sqrtTemp0; pasi = 2.0 * calc_angle(s_pasi2,c_pasi2); } const Vec3 Mtp = Vec3(0.0,0.0, m_kt*pasi); const Vec3 Mtr = matTrans * Mtp; const double temp2 = r.return_vec().X()*r.return_vec().X() + r.return_vec().Y()*r.return_vec().Y(); const double temp3 = r.return_vec().X()*r.return_vec().Z() + r.return_sca() * r.return_vec().Y(); const double temp4 = r.return_vec().Y()*r.return_vec().Z() - r.return_sca() * r.return_vec().X(); Vec3 Mbr(0, 0, 0); Vec3 Fsr(0, 0, 0); Vec3 Msr(0, 0, 0); if (temp2 != 0.0) { const double temp1 = temp0 - temp2; if (temp1 >= 1.0 || temp1 <= -1.0) { sita = 0.0 ; } else { sita = acos(temp1); } if (temp0 == 0.0) { const double sqrtDenom = sqrt(temp2); c_fai = r.return_vec().Y()/sqrtDenom; s_fai = -r.return_vec().X()/sqrtDenom; } else { const double sqrtDenom = sqrt(temp0*temp2); c_fai = temp3/sqrtDenom; s_fai = temp4/sqrtDenom; } const Vec3 Mbp = Vec3( - 0.5*m_kb*sita*s_fai, 0.5*m_kb*sita*c_fai, 0.0); Mbr = matTrans * Mbp; const Vec3 Fsp = Vec3 ( - 0.5*m_ks*c_fai*sita*r_0Norm, - 0.5*m_ks*s_fai*sita*r_0Norm, 0.0); Fsr = matTrans * Fsp; const Vec3 Msp = Vec3( 0.5*m_ks*s_fai*sita*r_0Norm, - 0.5*m_ks*c_fai*sita*r_0Norm, 0.0 ); Msr = matTrans * Msp; } const double eq_rad1 = m_p1->getRad()/(m_p1->getRad()+m_p2->getRad()); const double eq_rad2 = m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()); const Matrix3 mat0Trans(mat0.trans()); m_force = mat0Trans * (Fr + Fst + Fsr ); m_moment = mat0Trans * (Mbr + Mtr + Msr*eq_rad1*rbpNorm + Mst*eq_rad1*rbpNorm); const Vec3 moment2 = mat0Trans *( Msr*eq_rad2*rbpNorm + Mst*eq_rad2*rbpNorm - Mbr - Mtr); m_shForce = (Fst + Fsr).norm(); m_tMoment = Mtr.norm(); m_bMoment = Mbr.norm(); const double r0 = m_p1->getRad()+m_p2->getRad(); const Vec3 D = m_p1->getPos() - m_p2->getPos(); m_dist = sqrt(D*D); m_nForce = ((m_dist < r0) ? -1.0 : 1.0) * Fr.norm(); Vec3 pos=m_p2->getPos()+(m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()))*D; m_p2->applyForce(-1.0*m_force,pos); m_p1->applyForce(m_force,pos); m_cpos=pos; m_p1->applyMoment(m_moment) ; m_p2->applyMoment(moment2) ; } */ void CRotThermBondedInteraction::calcForces() { double s_fai=0.0, c_fai=0.0, c_pasi2=0.0, s_pasi2=0.0; double sita=0.0, pasi=0.0 ; //double temp_m1=0.0, temp_m2=0.0 ; double m0=0.0,m1=0.0,m2=0.0,m3=0.0; Vec3 Fst, Mst ; double temp0=0.0, temp1=0.0,temp2=0.0,temp3=0.0, temp4=0.0; Vec3 Mtr, Mbr, Fsr, Msr ; Mbr = Vec3 (0.0,0.0,0.0) ; Fsr = Vec3 (0.0,0.0,0.0) ; Msr = Vec3 (0.0,0.0,0.0) ; //zjr // cout << "wyc in CRotBI " << m_p1->getID() <<"-- " <getID() << endl; // cout << m_p1->getPos() << " pos " << m_p2->getPos() << endl; // cout << m_p1->getQuat().return_sca() << " "<< m_p1->getQuat().return_vec() <<" 1 quat " << endl; // cout << m_p2->getQuat().return_sca() << " "<< m_p2->getQuat().return_vec() <<" 2 quat " << endl; //cout << " k= " << m_kr << " " << m_ks<<" " << m_kt << " " << m_kb << endl; Matrix3 mat0 = (m_p1->getQuat()).to_matrix() ; //cout << " wyc mat0 = " << mat0 << endl; //Vec3 rbp = m_p2->getPos() - m_p1->getPos() ; Vec3 rb = mat0*(m_p2->getPos() - m_p1->getPos() ) ; Vec3 r_0 = m_p2->getInitPos() - m_p1->getInitPos() ; Vec3 delta_r = ( rb.norm()-r_0.norm() )*rb/rb.norm() ; // cout << " rb= "<< rb.norm()-r_0.norm() << endl; Vec3 Fr = m_kr*delta_r ; double gama_cos = dot(rb, r_0)/(rb.norm() *r_0.norm()) ; double gama; if (gama_cos >=1.0|| gama_cos<=-1.0 ) gama = 0.0 ; else gama = acos(gama_cos); Vec3 rb_0 = cross(rb, r_0) ; Vec3 rb_b0 = cross(rb, rb_0) ; //cout <<" 0 ? " << rb_b0.norm() << endl; if (rb_b0.norm() ==0){ Fst = Vec3(0.0,0.0,0.0) ; } // else { Fst = m_ks*rb.norm()*gama* rb_b0/rb_b0.norm() ; } // change oct 6/2005 else { Fst = m_ks*r_0.norm()*gama* rb_b0/rb_b0.norm() ; } if (rb_0.norm() ==0) { Mst = Vec3(0.0,0.0,0.0) ;} else { Mst = -Fst.norm()*rb.norm()*rb_0/rb_0.norm() ; } m0 = sqrt( (rb.norm()+ rb.Z() )/rb.norm() ); if( rb.X()*rb.X() + rb.Y()*rb.Y() ==0.0 ) { m1 = 0.0 ; //-sqrt( (rb.norm()-rb.Z())/rb.norm() ) ; m2 = 0.0 ; // sqrt( (rb.norm()-rb.Z())/rb.norm() ) ; }else { //temp_m1 = rb.Y()/sqrt(rb.X()*rb.X()+rb.Y()*rb.Y()); //temp_m2 = rb.X()/sqrt(rb.X()*rb.X()+rb.Y()*rb.Y()); m1 = -sqrt( (rb.norm()-rb.Z())/rb.norm() )*rb.Y()/sqrt(rb.X()*rb.X()+rb.Y()*rb.Y()); m2 = sqrt( (rb.norm()-rb.Z())/rb.norm() )*rb.X()/sqrt(rb.X()*rb.X()+rb.Y()*rb.Y()); } m3 =0.0 ; Quaternion qm(m0, Vec3(m1,m2,m3) ) ; Matrix3 mat = (qm.to_matrix())*0.5 ; Quaternion rp = (m_p1->getQuat()).inverse() * (m_p2->getQuat()) ; double r_0_tmp = rp.return_sca() ; double r_1_tmp = rp.return_vec().X()*(m0*m0+m1*m1-m2*m2) +2.0*m1*m2*rp.return_vec().Y() -2.0*m0*m2*rp.return_vec().Z() ; double r_2_tmp = rp.return_vec().Y()*(m0*m0-m1*m1+m2*m2) +2.0*m1*m2*rp.return_vec().X() +2.0*m0*m1*rp.return_vec().Z() ; double r_3_tmp = rp.return_vec().Z()*(m0*m0-m1*m1-m2*m2) +2.0*m0*m2*rp.return_vec().X() -2.0*m0*m1*rp.return_vec().Y() ; Quaternion r(r_0_tmp, Vec3( r_1_tmp, r_2_tmp, r_3_tmp)*0.5) ; temp0 = r.return_sca()*r.return_sca() + r.return_vec().Z()*r.return_vec().Z(); if( temp0 == 0.0 ) { pasi = 0.0;} else { c_pasi2 = r.return_sca()/sqrt(temp0); s_pasi2 = r.return_vec().Z()/ sqrt(temp0); pasi = 2.0 * calc_angle(s_pasi2, c_pasi2); } Vec3 Mtp = Vec3(0.0,0.0, m_kt*pasi) ; Mtr = mat.trans() * Mtp ; temp2 = r.return_vec().X()*r.return_vec().X() + r.return_vec().Y()*r.return_vec().Y() ; temp3 = r.return_vec().X()*r.return_vec().Z() + r.return_sca() * r.return_vec().Y() ; temp4 = r.return_vec().Y()*r.return_vec().Z() - r.return_sca() * r.return_vec().X() ; if ( temp2 != 0.0) { temp1 = r.return_sca()*r.return_sca() + r.return_vec().Z()*r.return_vec().Z() - r.return_vec().X()*r.return_vec().X() - r.return_vec().Y()*r.return_vec().Y() ; if (temp1 >=1.0|| temp1<=-1.0 ) { sita = 0.0 ;} else { sita = acos(temp1);} if( temp0 == 0.0) { c_fai = r.return_vec().Y()/sqrt(temp2); s_fai = -r.return_vec().X()/sqrt(temp2); }else { c_fai = temp3/sqrt(temp0 * temp2) ; s_fai = temp4/sqrt(temp0 * temp2) ; } Vec3 Mbp = Vec3( - 0.5*m_kb*sita*s_fai, 0.5*m_kb*sita*c_fai, 0.0) ; Mbr = mat.trans() * Mbp ; Vec3 Fsp = Vec3 ( - m_ks*c_fai*sita*m_p2->getRad() , - m_ks*s_fai*sita*m_p2->getRad() , 0.0) ; Fsr = mat.trans() * Fsp ; Vec3 Msp = Vec3( m_ks*s_fai*sita*m_p2->getRad()*rb.norm() , - m_ks*c_fai*sita*m_p2->getRad()*rb.norm() , 0.0 ); Msr = mat.trans() * Msp ; } double eq_rad1 = m_p1->getRad()/(m_p1->getRad()+m_p2->getRad()) ; double eq_rad2 = m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()) ; m_force = mat0.trans() *(Fr + Fst + Fsr ) ; // cout << "fr= " << Fr <<" Fst= " << Fst <<" Fsr= " <getPos()-m_p2->getPos(); double Rij2 = D.norm2(); double d_temp = m_p2->getTemperature() - m_p1->getTemperature() ; double heatij = eta*m_diffusivity*d_temp/Rij2 ; m_p1->applyHeatTrans(heatij) ; m_p2->applyHeatTrans(-heatij) ; } /*! Pack this object into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CRotThermBondedInteraction& I) { append(I.m_id[0]); append(I.m_id[1]); append(static_cast(I.m_init)); append(I.m_kr); append(I.m_ks); append(I.m_kb); append(I.m_kt); append(I.m_max_nForce); append(I.m_max_shForce); append(I.m_max_tMoment); append(I.m_max_bMoment); append(I.m_diffusivity); } /*! Unpack a CBondedInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CRotThermBondedInteraction& I) { I.m_id.clear(); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_init = static_cast(pop_int()); I.m_kr = pop_double(); I.m_ks = pop_double(); I.m_kb = pop_double(); I.m_kt = pop_double(); I.m_max_nForce = pop_double(); I.m_max_shForce = pop_double(); I.m_max_tMoment = pop_double(); I.m_max_bMoment = pop_double(); I.m_diffusivity = pop_double(); } /*! save restart data to ostream \param oStream the output stream */ void CRotThermBondedInteraction::saveRestartData(std::ostream &oStream) { oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_init << " "; oStream << m_kr << " "; oStream << m_ks << " "; oStream << m_kb << " "; oStream << m_kt << " "; oStream << m_max_nForce << " "; oStream << m_max_shForce << " "; oStream << m_max_tMoment << " "; oStream << m_max_bMoment << " "; oStream << m_diffusivity << " "; oStream << getTag() ; } /*! load restart data from stream \param iStream the input stream */ void CRotThermBondedInteraction::loadRestartData(std::istream &iStream) { int tag; iStream >> m_id[0]; iStream >> m_id[1]; iStream >> m_init ; iStream >> m_kr; iStream >> m_ks; iStream >> m_kb; iStream >> m_kt; iStream >> m_max_nForce; iStream >> m_max_shForce; iStream >> m_max_tMoment; iStream >> m_max_bMoment; iStream >> m_diffusivity; iStream >> tag; setTag(tag); } ostream& operator<<(ostream& ost,const CRotThermBondedInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/MeshData.h0000664000175000017500000000235012176660653013536 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESHDATA_H #define __MESHDATA_H #include "Foundation/vec3.h" #include /*! Data describing one node(point) in a TriMesh. */ struct MeshNodeData { MeshNodeData(); MeshNodeData(int id, const Vec3 &pt, int tag=0); int id; int tag; double x,y,z; void read(std::istream&); }; /*! Data describing one Triangle in a TriMesh. */ struct MeshTriData { MeshTriData(); MeshTriData(int id, int nodeId0, int nodeId1, int nodeId2, int tag=0); int id,tag; int p1,p2,p3; void read(std::istream&); }; #endif // __MESHDATA_H ./Model/RotParticle.cpp0000664000175000017500000003277712176660653014653 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/RotParticle.h" #include "Geometry/SimpleParticleData.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" CRotParticle::CRotParticle() : CParticle() { m_global_id=-1; flag=false; } CRotParticle::CRotParticle(const esys::lsm::SimpleParticleData &particleData) : CParticle(particleData) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; if(getDo2dCalculations()){ m_inertRot = 0.5*particleData.getMass()*particleData.getRadius()*particleData.getRadius();// cylinder } else { m_inertRot = 0.4*particleData.getMass()*particleData.getRadius()*particleData.getRadius();// sphere } m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0); m_is_rot=true; // particleData has no is_rot info -> default to rot. dynamics on } CRotParticle::CRotParticle(const CParticle &particle) : CParticle(particle) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; if(getDo2dCalculations()){ m_inertRot = 0.5*particle.getMass()*particle.getRad()*particle.getRad(); // cylinder } else { m_inertRot = 0.4*particle.getMass()*particle.getRad()*particle.getRad(); // sphere } m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0); m_is_rot=true; // CParticle has no is_rot info -> default to rot. dynamics on } /*! Construct particle with default rotational orientation. Inertia is calculated from mass & radius. Used from Python interface. */ CRotParticle::CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn, bool is_rot ) : CParticle(rad, mass, pos, vel, force, id, is_dyn) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; if(getDo2dCalculations()){ m_inertRot = 0.5*mass*rad*rad; // 2D -> cylinder } else { m_inertRot = 0.4*mass*rad*rad; // 3D -> sphere } m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0); m_is_rot=is_rot; } /*! Construct particle. Old and initial position are assumed to be identical to current position. \param rad radius \param mass mass \param pos current position \param vel current velocity \param force currently applied force \param id particle id \param quat particel quaternion \param inertRot inert of rotation \param moment currently applied tarque \param angvel current angular velocity \param is_rot rotational dynamics on/off */ CRotParticle::CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion & quat, double inertRot, const Vec3& moment, const Vec3& angvel, bool is_dyn, bool is_rot ) :CParticle(rad, mass,pos,vel,force,id,is_dyn) { m_circular_shift=Vec3(0.0,0.0,0.0); flag=false; m_quat = quat; m_initquat = quat; m_inertRot = inertRot; m_moment = moment; m_angVel = angvel; m_div_inertRot = 1.0/m_inertRot; m_is_rot=is_rot; } CRotParticle::CRotParticle( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion & quat, const Quaternion & initquat, double inertRot, const Vec3& moment, const Vec3& angvel, bool is_dyn, bool is_rot ) :CParticle(rad, mass,pos,oldpos, initpos,vel,force,id,is_dyn) { m_circular_shift=Vec3(0.0,0.0,0.0); flag=false; m_quat = quat; m_initquat = initquat; m_inertRot = inertRot ; m_moment = moment; m_angVel = angvel; m_div_inertRot = 1.0/m_inertRot ; m_is_rot=is_rot; } /*! Pack a CParticle into a TML packed message \param p the particle \todo BasicParticle data should be handled by pack */ template<> void TML_PackedMessageInterface::pack(const CRotParticle& p) { append(p.m_tag); append(p.m_pos.X()) ; append(p.m_pos.Y()) ; append(p.m_pos.Z()) ; append(p.m_oldpos.X()); append(p.m_oldpos.Y()); append(p.m_oldpos.Z()); append(p.m_initpos.X()); append(p.m_initpos.Y()); append(p.m_initpos.Z()); append(p.m_circular_shift.X()); append(p.m_circular_shift.Y()); append(p.m_circular_shift.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_force.X()); append(p.m_force.Y()); append(p.m_force.Z()); append(p.m_rad); append(p.m_mass); append(p.m_inertRot); append(p.m_moment.X()) ; append(p.m_moment.Y()) ; append(p.m_moment.Z()) ; append(p.m_angVel.X()) ; append(p.m_angVel.Y()) ; append(p.m_angVel.Z()) ; append(p.m_quat.return_sca()) ; append(p.m_quat.return_vec().X()) ; append(p.m_quat.return_vec().Y()) ; append(p.m_quat.return_vec().Z()) ; append(p.m_initquat.return_sca()) ; append(p.m_initquat.return_vec().X()) ; append(p.m_initquat.return_vec().Y()) ; append(p.m_initquat.return_vec().Z()) ; append(p.m_global_id); // original one here append(p.m_is_dynamic); append(p.m_is_rot); } /*! Unpack a CParticle from a TML packed message \param p the particle */ template<> void TML_PackedMessageInterface::unpack(CRotParticle& p) { const int numElems = 35; double db[numElems] ; p.m_tag=pop_int(); pop_doubles(db, numElems); p.m_pos = Vec3(db[0],db[1],db[2]) ; p.m_oldpos = Vec3(db[3],db[4],db[5]) ; p.m_initpos = Vec3(db[6],db[7],db[8]) ; p.m_circular_shift = Vec3(db[9],db[10],db[11]) ; p.m_vel = Vec3(db[12],db[13],db[14]) ; p.m_force = Vec3(db[15],db[16],db[17]) ; p.m_rad = db[18]; p.m_mass = db[19]; p.m_div_mass = 1.0/p.m_mass; p.m_inertRot = db[20]; p.m_div_inertRot = (p.m_inertRot!=0.0) ? 1.0/p.m_inertRot : 0.0; p.m_moment = Vec3(db[21],db[22],db[23]); p.m_angVel = Vec3(db[24],db[25],db[26]); p.m_quat = Quaternion(db[27],Vec3(db[28],db[29],db[30])); p.m_initquat = Quaternion(db[31],Vec3(db[32],db[33],db[34])); p.m_global_id=pop_int(); p.m_is_dynamic=pop_bool(); p.m_is_rot=pop_bool(); } /*! Do the time integration for the particle. \param dt the time step */ void CRotParticle::integrate(double dt) { if(m_is_rot){ if (CParticle::getDo2dCalculations()) { m_force = Vec3(m_force.X(), m_force.Y(), 0); m_moment = Vec3(0, 0, m_moment.Z()); } // integrate rotational part m_angVel += (dt*m_div_inertRot) * m_moment; m_quat += (dt/2.0)*(Quaternion(0, m_angVel)*m_quat); } else { m_angVel = Vec3(0.0,0.0,0.0); } // Integrate linear part CParticle::integrate(dt); } /*! zero forces on particle */ void CRotParticle::zeroForce() { m_force = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0); m_sigma = Matrix3(); } void CRotParticle::rescale() { const double module = sqrt( m_quat.return_sca()*m_quat.return_sca() + m_quat.return_vec().X()*m_quat.return_vec().X() + m_quat.return_vec().Y()*m_quat.return_vec().Y() + m_quat.return_vec().Z()*m_quat.return_vec().Z() ); if(module != 0.0 ) { const double inverse = 1.0/module; m_quat = m_quat*inverse ; } else { cerr << " Quaternion wrong !!! " ; } } /*! Apply a moment to a particle at a given position. \param moment tarque */ void CRotParticle::applyMoment(const Vec3& moment) { m_moment += moment; } CRotParticle::exchangeType CRotParticle::getExchangeValues() { return exchangeType( m_pos - m_circular_shift, m_initpos - m_circular_shift, m_vel, m_angVel, m_quat, m_is_dynamic, m_is_rot ); } /*! Set pos, vel and angular vel from exchangeType \param E the exchanged values */ void CRotParticle::setExchangeValues(const exchangeType& E) { m_pos = E.m_pos + m_circular_shift; m_initpos = E.m_initPos + m_circular_shift; m_vel = E.m_vel; m_angVel = E.m_angVel; m_quat = E.m_quat; m_is_dynamic = E.m_is_dynamic; m_is_rot = E.m_is_rot; } template<> void TML_PackedMessageInterface::pack(const CRotParticle::exchangeType& p) { append(p.m_pos.X()); append(p.m_pos.Y()); append(p.m_pos.Z()); append(p.m_initPos.X()); append(p.m_initPos.Y()); append(p.m_initPos.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_angVel.X()); append(p.m_angVel.Y()); append(p.m_angVel.Z()); append(p.m_quat.return_sca()); append(p.m_quat.return_vec().X()); append(p.m_quat.return_vec().Y()); append(p.m_quat.return_vec().Z()); append(p.m_is_dynamic); append(p.m_is_rot); } /*! Unpack an exchangeType from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(CRotParticle::exchangeType& p) { const int numDoubles = 16; double db[numDoubles]; pop_doubles(db, numDoubles); p.m_pos = Vec3(db[0],db[1],db[2]); p.m_initPos = Vec3(db[3],db[4],db[5]); p.m_vel = Vec3(db[6],db[7],db[8]); p.m_angVel = Vec3(db[9],db[10],db[11]); p.m_quat = Quaternion(db[12],Vec3(db[13],db[14],db[15])); p.m_is_dynamic = pop_bool(); p.m_is_rot = pop_bool(); } CRotParticle::ScalarFieldFunction CRotParticle::getScalarFieldFunction(const string& name) { CRotParticle::ScalarFieldFunction sf; if(name=="id"){ sf=&CRotParticle::getIDField; } else if(name=="tag"){ sf=&CRotParticle::getTagField; } else if(name=="sigma_xx_2d"){ sf=&CRotParticle::sigma_xx_2D; } else if(name=="sigma_xy_2d"){ sf=&CRotParticle::sigma_xy_2D; } else if(name=="sigma_yy_2d"){ sf=&CRotParticle::sigma_yy_2D; } else if(name=="sigma_d"){ sf=&CRotParticle::sigma_d; } else if(name=="e_kin"){ sf=&CRotParticle::getKineticEnergy; } else if(name=="e_kin_rot"){ sf=&CRotParticle::getAngularKineticEnergy; } else if(name=="e_kin_linear"){ sf=&CRotParticle::getLinearKineticEnergy; } else if(name=="radius"){ sf=&CRotParticle::getRad; } else if(name=="v_abs"){ sf=&CRotParticle::getAbsVel; } else { sf=NULL; cerr << "ERROR - invalid name for particle scalar access function" << endl; } return sf; } CRotParticle::VectorFieldFunction CRotParticle::getVectorFieldFunction(const string& name) { CRotParticle::VectorFieldFunction sf; if(name=="displacement"){ sf=&CRotParticle::getTotalDisplacement; } else if(name=="velocity"){ sf=&CRotParticle::getVel; } else if(name=="ang_velocity"){ sf=&CRotParticle::getAngVelNR; } else if(name=="position"){ sf=&CRotParticle::getPos; } else if(name=="force"){ sf=&CRotParticle::getForce; } else { sf=NULL; cerr << "ERROR - invalid name for particle vector access function" << endl; } return sf; } /*! set circular shift vector \param cv the circular shift vector */ void CRotParticle::setCircular(const Vec3& cv) { CParticle::setCircular(cv); } /*! Save snapshot data - _not_ neccesarily sufficient for restart */ void CRotParticle::saveSnapShotData(std::ostream& oStream) { CParticle::saveSnapShotData(oStream); const char delim = ' '; oStream << delim << getQuat() << delim << getAngVel(); } /*! Save check-point data sufficient for restart */ void CRotParticle::saveCheckPointData(std::ostream& oStream) { CParticle::saveCheckPointData(oStream); const char delim = ' '; oStream << delim << m_inertRot << delim << getQuat() << delim << getAngVel() << delim << m_is_rot; } /*! load data saved with CRotParticle::saveCheckPointData \param iStream the input stream */ void CRotParticle::loadCheckPointData(std::istream &iStream) { CParticle::loadCheckPointData(iStream); iStream >> m_inertRot; m_div_inertRot = 1.0/m_inertRot ; iStream >> m_quat; iStream >> m_angVel; iStream >> m_is_rot; } /*! get deviatoric stress *//* double CRotParticle::sigma_d() const { double scale=1.0/(M_PI*m_rad*m_rad); double sig_d=(m_sigma-m_sigma.trace()*Matrix3::Unit()).norm(); return sig_d; }*/ ostream& operator<<(ostream& ost, const CRotParticle& CP) { ost << "--CParticle " << CP.m_global_id << " --\n"; ost << "Radius : " << CP.m_rad << " Mass : " << CP.m_mass << "\n"; ost << "Position : " << CP.m_pos << "\n"; ost << "Velocity : " << CP.m_vel << "\n"; ost << "Force : " << CP.m_force << "\n"; return ost; } ./Model/RotThermElasticInteraction.cpp0000664000175000017500000001524212176660653017660 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Foundation/console.h" #include "Model/RotThermElasticInteraction.h" CRotThermElasticIGP::CRotThermElasticIGP() : AIGParam(), m_kr(0.0), diffusivity(0.0) { } CRotThermElasticIGP::CRotThermElasticIGP( const std::string &name, double normalK, double thermalDiffusivity ) : AIGParam(name), m_kr(normalK), diffusivity(thermalDiffusivity) { } CRotThermElasticInteraction::CRotThermElasticInteraction() : ARotThermPairInteraction() { m_kr = 0.0; m_nForce = 0.0; m_force = Vec3(0.0,0.0,0.0); m_diffusivity = 0.0; } CRotThermElasticInteraction::CRotThermElasticInteraction( CRotThermParticle* p1, CRotThermParticle* p2, const CRotThermElasticIGP& param ) : ARotThermPairInteraction(p1,p2) { // m_kr=param.m_kr; // wyc added 22/02/2005 double min_r ; double ran_ratio ; double ran_ratioH ; if (m_p1->getRad()<= m_p2->getRad() ) min_r = m_p1->getRad() ; else min_r = m_p2->getRad() ; // double ran_ratio = 2.0*min_r/(m_p1->getRad()+m_p2->getRad()); if(m_p1->getDo2dCalculations()) { // 2D ran_ratio = 2.0*min_r/(m_p1->getRad()+m_p2->getRad()); ran_ratioH = 2.0*min_r*(m_p1->getRad()+m_p2->getRad()); }else{ // 3D ran_ratio = 2.0*min_r*min_r/(m_p1->getRad()+m_p2->getRad()); ran_ratioH = 2.0*min_r*min_r*(m_p1->getRad()+m_p2->getRad()); } m_kr = ran_ratio*param.m_kr; m_nForce = 0.0; m_force = Vec3(0.0,0.0,0.0); m_D = p1->getPos()-p2->getPos(); m_diffusivity = ran_ratioH*param.diffusivity; } Vec3 CRotThermElasticInteraction::getForce() const { /* Vec3 force = Vec3(0.0, 0.0, 0.0); Vec3 D = m_p1->getPos()-m_p2->getPos(); double dist = D*D; double eq_dist = m_p1->getRad()+m_p2->getRad(); if (dist < (eq_dist*eq_dist)) { dist = sqrt(dist); force = D*(m_kr*(dist - eq_dist)/dist); } return force; */ return m_force; } /*! Calculate free elastic forces. 23 Flops if in contact, 10 Flops if not */ void CRotThermElasticInteraction::calcForces() { // console.XDebug() << "elastic interaction: [" << m_p1->getID() << " - " << m_p2->getID() << "]" << m_p1->getPos() << m_p2->getPos() << "\n"; Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); //cout << "wyc in CRotEla ::calcF " << m_p1->getID() << " - " << m_p2->getID() < calculate forces dist=sqrt(dist); // Vec3 force=D*m_kr*(dist-eq_dist)/dist; m_force=D.unit()*m_kr*(D.norm()-eq_dist); // cout << "dist= " << 2-D.norm() << " eq_dist= " <<2-eq_dist << endl; // cout << " D.unit= " << D.unit() <<" "<getID() << " - " << m_p2->getID() << endl; //zjr // cout << "wyc in elastic: " << force << endl ; //zjr // cout << m_p1->getPos() << " - " << m_p2->getPos() << endl; Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; m_p1->applyForce(-1.0*m_force,pos); m_p2->applyForce(m_force,pos); m_cpos=pos; } else { // no contact -> all forces are 0 m_force = Vec3(0.0,0.0,0.0); m_nForce = 0.0; } } void CRotThermElasticInteraction::calcHeatTrans() { double eta = 1.5 ; Vec3 D=m_p1->getPos()-m_p2->getPos(); double Rij2 = D.norm2(); double d_temp = m_p2->getTemperature() - m_p1->getTemperature() ; double heatij = eta*m_diffusivity*d_temp/Rij2 ; m_p1->applyHeatTrans(heatij) ; m_p2->applyHeatTrans(-heatij) ; } /*! get the potential energy stored in the interaction */ double CRotThermElasticInteraction::getPotentialEnergy() const { // const Vec3 normalForce = getForce(); // return (0.5*normalForce*normalForce/m_kr); return (m_kr!=0.0) ? 0.5*(m_nForce*m_nForce)/m_kr : 0.0; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CRotThermElasticInteraction::ScalarFieldFunction CRotThermElasticInteraction::getScalarFieldFunction(const string& name) { CRotThermElasticInteraction::ScalarFieldFunction sf = NULL; if (name=="potential_energy") { sf=&CRotThermElasticInteraction::getPotentialEnergy; } else if (name=="count") { sf=&CRotThermElasticInteraction::Count; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CRotThermElasticInteraction::CheckedScalarFieldFunction CRotThermElasticInteraction::getCheckedScalarFieldFunction(const string& name) { CRotThermElasticInteraction::CheckedScalarFieldFunction sf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CRotThermElasticInteraction::VectorFieldFunction CRotThermElasticInteraction::getVectorFieldFunction(const string& name) { CRotThermElasticInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CRotThermElasticInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! save restart data to ostream \param oStream the output stream */ void CRotThermElasticInteraction::saveRestartData(std::ostream &oStream) { oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_init << " "; oStream << m_kr << " "; oStream << m_diffusivity << " "; oStream << m_D; } /*! load restart data from stream \param iStream the input stream */ void CRotThermElasticInteraction::loadRestartData(std::istream &iStream) { iStream >> m_id[0]; iStream >> m_id[1]; iStream >> m_init ; iStream >> m_kr; iStream >> m_diffusivity; iStream >> m_D; } ostream& operator<<(ostream& ost,const CRotThermElasticInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/RotDamping.hpp0000664000175000017500000001054612176660653014462 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROT_DAMPING_HPP #define __ROT_DAMPING_HPP template double CRotDamping::s_limit2=1e-12; // default error limit : 1e-6 template int CRotDamping::s_flops = 0; /*! Construct a rotational damping "interaction" for a particle \param P the particle \param param pointer to the parameters */ template CRotDamping::CRotDamping(T* P,CDampingIGP* param) { m_p=P; m_vref=param->getVRef(); m_visc=param->getVisc(); m_dt=param->getTimeStep(); m_maxiter=param->getMaxIter(); } /*! destructor */ template CRotDamping::~CRotDamping() { } template void CRotDamping::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate the damping force. 25*count+8 flops */ template void CRotDamping::calcForces() { m_E_diss=0.0;// zero dissipated energy Vec3 v=m_p->getAngVel(); Vec3 v_rel=Vec3(0.0,0.0,0.0); Vec3 frc=m_p->getMoment(); double s=1.0/m_p->getInertRot(); double in=m_p->getInertRot(); double mass=m_p->getMass(); double error=1.0; int count=0; while((error*error>s_limit2) & (count=m_maxiter){ //console.Warning() << "damping diverges for particle " << m_p->getID() << "error= " << error << "\n"; v_rel=Vec3(0.0,0.0,0.0); } m_force=-1.0*m_visc*v_rel*mass; m_p->applyMoment(-1.0*m_visc*v_rel*in); // 3 flops m_E_diss=m_visc*v_rel*v*m_dt; // wrong } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ template typename CRotDamping::ScalarFieldFunction CRotDamping::getScalarFieldFunction(const string& name) { typename CRotDamping::ScalarFieldFunction sf; if(name=="dissipated_energy"){ sf=&CRotDamping::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ template typename CRotDamping::CheckedScalarFieldFunction CRotDamping::getCheckedScalarFieldFunction(const string& name) { typename CRotDamping::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ template typename CRotDamping::VectorFieldFunction CRotDamping::getVectorFieldFunction(const string& name) { typename CRotDamping::VectorFieldFunction vf; if (name=="force"){ vf=&CRotDamping::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! return the amount of energy dissipated during the last time step */ template double CRotDamping::getDissipatedEnergy() const { return m_E_diss; } template Vec3 CRotDamping::getForce() const { return m_force; } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ template bool CRotDamping::hasTag(int tag,int mask) const { int tag1=m_p->getTag(); return ((tag1 & mask)==(tag & mask)); } /*! return a vector of all particle IDs */ template vector CRotDamping::getAllID() const { vector res; res.push_back(m_p->getID()); return res; } #endif // __ROT_DAMPING_HPP ./Model/brokenEWallInteractionGroup.hpp0000664000175000017500000001056512176660653020041 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //---------------------------------------------- // CEWallInteractionGroup functions //---------------------------------------------- #include "Foundation/console.h" #include template CEWallInteractionGroup::CEWallInteractionGroup(TML_Comm* comm):AWallInteractionGroup(comm) {} /*! Constructor for elastic wall interaction group \param comm the communicator \param wallp a pointer to the wall \param param the interaction parameters */ template CEWallInteractionGroup::CEWallInteractionGroup(TML_Comm* comm,CWall* wallp,const CEWallIGP* I) :AWallInteractionGroup(comm) { console.XDebug() << "making CEWallInteractionGroup \n"; m_k=I->getSpringConst(); this->m_wall=wallp; } template void CEWallInteractionGroup::calcForces() { console.XDebug() << "calculating " << m_interactions.size() << " elastic wall forces\n" ; for( typename vector >::iterator it=m_interactions.begin(); it != m_interactions.end(); it++ ){ it->calcForces(); } } template void CEWallInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CEWallInteractionGroup::Update()\n" ; console.XDebug() << "CEWallInteractionGroup::Update: wall origin = " << this->m_wall->getOrigin() << ", wall normal = " << this->m_wall->getNormal() << "\n" ; double k_local=0.0; // empty particle list first m_interactions.erase(m_interactions.begin(),m_interactions.end()); this->m_inner_count=0; // build new particle list typename ParallelParticleArray::ParticleListHandle plh= PPA->getParticlesAtPlane(this->m_wall->getOrigin(),this->m_wall->getNormal()); for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ bool iflag=PPA->isInInner((*iter)->getPos()); m_interactions.push_back(CElasticWallInteraction(*iter,this->m_wall,m_k,iflag)); this->m_inner_count+=(iflag ? 1 : 0); if(iflag){ if(!CParticle::getDo2dCalculations()){ k_local+=m_k*((*iter)->getRad()); // update local K } else { k_local+=m_k; } } } // get global K m_k_global=this->m_comm->sum_all(k_local); console.XDebug() << "end CEWallInteractionGroup::Update()\n"; } /*! Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions. \param F the force \warning Forces not perpendicular to the wall make no sense here, but this is not checked! */ template void CEWallInteractionGroup::applyForce(const Vec3& F) { int it=0; double d; Vec3 O_f=F.unit(); // direction of the applied force do{ // calculate local F Vec3 F_local=Vec3(0.0,0.0,0.0); for ( typename vector >::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // get global F // by component (hack - fix later,i.e. sum_all for Vec3) double fgx=this->m_comm->sum_all(F_local.X()); double fgy=this->m_comm->sum_all(F_local.Y()); double fgz=this->m_comm->sum_all(F_local.Z()); Vec3 F_global=Vec3(fgx,fgy,fgz); // calc necessary wall movement d=((F+F_global)*O_f)/m_k_global; // move the wall this->m_wall->moveBy(d*O_f); it++; } while((it<10)&&(fabs(d)>10e-6)); // check for convergence } template ostream& operator<<(ostream& ost,const CEWallInteractionGroup& IG) { ost << "CEWallInteractionGroup" << endl << flush; ost << *(IG.m_wall) << endl << flush; return ost; } ./Model/RotThermFricInteraction.cpp0000664000175000017500000003763112176660653017165 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/RotThermFricInteraction.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" extern double calc_angle(double, double); CRotThermFrictionIGP::CRotThermFrictionIGP() : k(0.0), mu_d(0.0), mu_s(0.0), k_s(0.0), dt(0.0), diffusivity(0.0) // ds(Vec3(0.0,0.0,0.0)) { } CRotThermFrictionIGP::CRotThermFrictionIGP( const std::string &name, double normalK, double muDynamic, double muStatic, double shearK, double thermalDiffusivity, double deltaT ) : AIGParam(name), k(normalK), mu_d(muDynamic), mu_s(muStatic), k_s(shearK), dt(deltaT), diffusivity(thermalDiffusivity) { } CRotThermFrictionInteraction::CRotThermFrictionInteraction():ARotThermPairInteraction() { m_k=0.0; m_mu_d=0.0; m_mu_s=0.0; m_r0=0.0; m_ks=0.0; m_dt=0.0; m_is_slipping=false; m_is_touching=false; m_Ffric = Vec3(0.0,0.0,0.0); m_E_diss = 0.0; m_diffusivity = 0.0; // m_ds = Vec3(0.0,0.0,0.0); m_p1=NULL; m_p2=NULL; m_id.push_back(-1); m_id.push_back(-1); } CRotThermFrictionInteraction::CRotThermFrictionInteraction( CRotThermParticle* p1, CRotThermParticle* p2, const CRotThermFrictionIGP& param ) : ARotThermPairInteraction(p1,p2) { m_mu_d = param.mu_d; m_mu_s = param.mu_s; m_r0=p1->getRad()+p2->getRad(); m_dt=param.dt; m_cpos=p1->getPos()+((p2->getPos()-p1->getPos())*p1->getRad()/m_r0); m_is_slipping=false; m_is_touching=false; m_Ffric = Vec3(0.0,0.0,0.0); m_E_diss = 0.0; m_ds = Vec3(0.0,0.0,0.0); //wyc added 22/02/2005 double min_r; double ran_ratio; double ran_ratioH; if (m_p1->getRad() <= m_p2->getRad()) min_r = m_p1->getRad(); else min_r = m_p2->getRad(); // double ran_ratio = 2.0*min_r/(m_p1->getRad()+m_p2->getRad()); if(m_p1->getDo2dCalculations()) { // 2D ran_ratio = 2.0*min_r/(m_p1->getRad()+m_p2->getRad()); ran_ratioH = 2.0*min_r*(m_p1->getRad()+m_p2->getRad()); } else { // 3D ran_ratio = 2.0*min_r*min_r/(m_p1->getRad()+m_p2->getRad()); ran_ratioH = 2.0*min_r*min_r*(m_p1->getRad()+m_p2->getRad()); } m_k = ran_ratio*param.k; m_ks = ran_ratio*param.k_s; m_diffusivity = ran_ratioH*param.diffusivity; } CRotThermFrictionInteraction::~CRotThermFrictionInteraction() { } /*! Calculate elastic and frictional forces. */ void CRotThermFrictionInteraction::calcForces() { //cout << "wyc in RotFric:: calcF " <getPos()-m_p1->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)){ // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); force=D*(m_k*(dist-eq_dist)/dist); m_normal_force=force; pos=m_p2->getPos()-(m_p2->getRad()/eq_dist)*D; //cout << " wyc p1, p2 = " << m_p1->getID() << "--- " << m_p2->getID()<getAngVel_t()= " <getAngVel_t() << endl; Vec3 rbp = m_p2->getPos() - m_p1->getPos() ; // Vec3 rb = mat0*rbp ; Vec3 vbp = m_p2->getVel() - m_p1->getVel() ; // Vec3 vb = mat0*vbp ; double rbp0 = rbp.norm() ; // Vec3 omiga_s = mat0.trans()*m_p1->getAngVel_t(); //28/02/2005 getAngVel_t() : already in space-fixed system Vec3 omiga_s = 0.5*( m_p1->getAngVel_t()+m_p2->getAngVel_t()); Vec3 omiga_spin = dot(omiga_s,rbp)*rbp/(rbp0*rbp0); Vec3 omiga_m = cross(rbp,vbp)/(rbp0*rbp0); // cout <<" omiga_spin= " <force.norm()*m_mu_s) { // tangential force greater than static friction -> dynamic // m_Ffric= m_mu_d*force.norm() *ds/ds.norm(); m_Ffric = m_mu_d*force.norm()*(m_Ffric+m_ks*ds)/(m_Ffric+m_ks*ds).norm(); m_force_deficit = Vec3(0.0,0.0,0.0); m_is_slipping=true; m_E_diss = fabs(m_Ffric * ds); // energy dissipated // cout <<" stick->slip: "<< endl; // cout << m_Ffric<<" norm()= " << m_Ffric.norm()< stick: " << m_Ffric<< endl; } } const Vec3 Moment1(cross(pos-m_p1->getPos(), m_Ffric)); const Vec3 Moment2(cross(pos-m_p2->getPos(), -m_Ffric)); m_p1->applyForce(m_Ffric,pos); m_p2->applyForce(-1.0*m_Ffric,pos); m_p1->applyMoment(Moment1); m_p2->applyMoment(Moment2); m_cpos=pos; m_is_touching=true; } else { // no contact -> all forces are 0 // cout << m_p1->getID() << "--- " << m_p2->getID() << "departed " <getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); return dist<=(eq_dist*eq_dist); } /*! get the force needed to overcome friction and make the interaction slip */ double CRotThermFrictionInteraction::getAbsForceDeficit()const { return m_force_deficit.norm(); } /*! Calculate the normal force. */ void CRotThermFrictionInteraction::calcNormalForce() { Vec3 pos; // calculate distance const Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; const double eq_dist=m_p1->getRad()+m_p2->getRad(); // check if there is contact if(dist<(eq_dist*eq_dist)){ // contact -> calculate forces //--- elastic force --- dist=sqrt(dist); m_normal_force=D*(m_k*(dist-eq_dist)/dist); } } /*! get the potential energy stored in the interaction \warning For performance reasons the tangential part of the elastic energy is calculated directly from the current tangential force whereas it would be more accurate to calculate it incrementally during the force calculation. Be aware that therefore the potential energy is an approximation. Tests suggest an accuracy of a few percent. */ double CRotThermFrictionInteraction::getPotentialEnergy() const { double e_pot_norm=0.5*m_normal_force*m_normal_force/m_k; double e_pot_tan=0.5*m_Ffric*m_Ffric/m_ks; return e_pot_norm+e_pot_tan; } /*! Get the static/dynamic status of the interaction. Returns 1 for a contact in dynamic friction, 0 for static or no contact */ double CRotThermFrictionInteraction::getSlipping() const { double res=m_is_slipping ? 1.0 : 0.0; return res; } /*! Get the contact status of the interaction. Returns 1 for an actual contact, 0 for no contact */ double CRotThermFrictionInteraction::getTouching() const { double res=m_is_touching ? 1.0 : 0.0; return res; } /*! Get "sticking" contacts, i.e. return 1 if the contact is touching but not slipping, 0 otherwise */ double CRotThermFrictionInteraction::getSticking() const { const double res=(m_is_touching && !m_is_slipping) ? 1.0 : 0.0; return res; } /*! return the amount of energy dissipated during the last time step */ double CRotThermFrictionInteraction::getDissipatedEnergy() const { return m_E_diss; } Vec3 CRotThermFrictionInteraction::getForce() const { const Vec3 f=m_is_touching ? m_Ffric-m_normal_force : Vec3(0.0,0.0,0.0); return f; } /*! If the particles are in contact, get normal force, if not in contact return (0,0,0) */ Vec3 CRotThermFrictionInteraction::getNormalForce() const { const Vec3 f=m_is_touching ? m_normal_force : Vec3(0.0,0.0,0.0); return f; } /* calculate heat transferred bwtween 2 particles and applied to them */ void CRotThermFrictionInteraction::calcHeatTrans() { double eta = 1.5 ; Vec3 D=m_p1->getPos()-m_p2->getPos(); double Rij2 = D.norm2(); double d_temp = m_p2->getTemperature() - m_p1->getTemperature() ; double heatij = eta*m_diffusivity*d_temp/Rij2 ; m_p1->applyHeatTrans(heatij) ; m_p2->applyHeatTrans(-heatij) ; } /* calculate heat generated by driction at one time step and distributed it to two particles */ void CRotThermFrictionInteraction::calcHeatFrict() { double heat_frict = 0.0 ; double ratio,heati,heatj ; if(getSlipping()) { heat_frict = dot(m_Ffric, m_ds) ; if(m_p1->getDo2dCalculations()){ ratio = m_p1->getRad()*m_p1->getRad()/(m_p1->getRad()*m_p1->getRad()+m_p2->getRad()*m_p2->getRad() ); }else { ratio = m_p1->getRad()*m_p1->getRad()*m_p1->getRad()/(m_p1->getRad()*m_p1->getRad()*m_p1->getRad()+m_p2->getRad()*m_p2->getRad()*m_p2->getRad() ); } heati = heat_frict*ratio ; heatj = heat_frict*(1.0-ratio) ; m_p1->applyHeatFrict(heati) ; m_p2->applyHeatFrict(heatj) ; } } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CRotThermFrictionInteraction::ScalarFieldFunction CRotThermFrictionInteraction::getScalarFieldFunction(const string& name) { CRotThermFrictionInteraction::ScalarFieldFunction sf; if(name=="force_deficit"){ sf=&CRotThermFrictionInteraction::getAbsForceDeficit; } else if (name=="potential_energy"){ sf=&CRotThermFrictionInteraction::getPotentialEnergy; } else if (name=="slipping"){ sf=&CRotThermFrictionInteraction::getSlipping; } else if (name=="sticking"){ sf=&CRotThermFrictionInteraction::getSticking; } else if (name=="count"){ sf=&CRotThermFrictionInteraction::Count; } else if (name=="dissipated_energy") { sf=&CRotThermFrictionInteraction::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } CRotThermFrictionInteraction::CheckedScalarFieldFunction CRotThermFrictionInteraction::getCheckedScalarFieldFunction(const string& name) { CRotThermFrictionInteraction::CheckedScalarFieldFunction sf = NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CRotThermFrictionInteraction::VectorFieldFunction CRotThermFrictionInteraction::getVectorFieldFunction(const string& name) { CRotThermFrictionInteraction::VectorFieldFunction vf=NULL; if (name=="force") { vf = &CRotThermFrictionInteraction::getForce; } else if (name=="normal_force") { vf = &CRotThermFrictionInteraction::getNormalForce; } else { cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Pack a CFrictionInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CRotThermFrictionInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_mu_d); append(I.m_mu_s); append(I.m_ks); append(I.m_dt); append(I.m_id[0]); append(I.m_id[1]); append(static_cast(I.m_is_slipping)); append(I.m_Ffric.X()); append(I.m_Ffric.Y()); append(I.m_Ffric.Z()); append(I.m_diffusivity); append(I.m_ds.X()) ; append(I.m_ds.Y()) ; append(I.m_ds.Z()) ; } /*! Unpack a CFrictionInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CRotThermFrictionInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_mu_d=pop_double(); I.m_mu_s=pop_double(); I.m_ks=pop_double(); I.m_dt=pop_double(); I.m_id.clear(); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_is_slipping = static_cast(pop_int()); I.m_Ffric.X() = pop_double(); I.m_Ffric.Y() = pop_double(); I.m_Ffric.Z() = pop_double(); I.m_diffusivity = pop_double(); I.m_ds.X() = pop_double(); I.m_ds.Y() = pop_double(); I.m_ds.Z() = pop_double(); } /*! Save restart data to an open ostream \param oStream the output stream */ void CRotThermFrictionInteraction::saveRestartData(std::ostream &oStream) { oStream << m_k << " "; oStream << m_r0 << " "; oStream << m_mu_d << " "; oStream << m_mu_s << " "; oStream << m_ks << " "; oStream << m_dt << " "; oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_is_slipping << " "; oStream << m_is_touching << " "; oStream << m_Ffric.X() << " "; oStream << m_Ffric.Y() << " "; oStream << m_Ffric.Z() << " "; oStream << m_diffusivity << " "; oStream << m_ds.X() << " "; oStream << m_ds.Y() << " "; oStream << m_ds.Z(); } /*! Load restart data from an open istream \param iStream the input stream */ void CRotThermFrictionInteraction::loadRestartData(std::istream &iStream) { iStream >> m_k ; iStream >> m_r0 ; iStream >> m_mu_d ; iStream >> m_mu_s ; iStream >> m_ks ; iStream >> m_dt ; iStream >> m_id[0] ; iStream >> m_id[1] ; iStream >> m_is_slipping ; iStream >> m_is_touching ; iStream >> m_Ffric.X() ; iStream >> m_Ffric.Y() ; iStream >> m_Ffric.Z(); iStream >> m_diffusivity; iStream >> m_ds.X(); iStream >> m_ds.Y(); iStream >> m_ds.Z(); } ostream& operator<<(ostream& ost,const CRotThermFrictionInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/Mesh2D.cpp0000664000175000017500000001460412176660653013472 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Foundation/console.h" #include "Model/Mesh2D.h" #include "Parallel/Mesh2DReader.h" // --- STL includes --- #include using std::set; using namespace esys::lsm; /*! constructor for empty 2D mesh */ Mesh2D::Mesh2D() {} /*! setup 2D mesh from node and edge data \param node_vec the node data \param edge_vec the edge data */ void Mesh2D::LoadMesh(const vector& node_vec,const vector& edge_vec) { // get temporary set of corner ids used in edges set tmp_cid_set; for(vector::const_iterator iter=edge_vec.begin(); iter!=edge_vec.end(); iter++){ int id0=iter->p1; int id1=iter->p2; tmp_cid_set.insert(id0); tmp_cid_set.insert(id1); } // setup node map for(vector::const_iterator iter=node_vec.begin(); iter!=node_vec.end(); iter++){ // check if corner is used in any edge set::iterator sit=tmp_cid_set.find(iter->id); if(sit!=tmp_cid_set.end()){ Corner2D Co=Corner2D(Vec3(iter->x,iter->y,0.0),iter->id); m_corners.push_back(Co); m_corner_by_id.insert(make_pair(iter->id,m_corners.size()-1)); } } console.Debug() << m_corner_by_id.size() << " elements in node map\n"; // setup edges for(vector::const_iterator iter=edge_vec.begin(); iter!=edge_vec.end(); iter++){ int id0=iter->p1; int id1=iter->p2; Vec3 p1=m_corners[m_corner_by_id[id0]].getPos(); Vec3 p2=m_corners[m_corner_by_id[id1]].getPos(); Edge2D E=Edge2D(id0,id1,p1,p2,iter->id,iter->tag); m_edges.push_back(E); } console.Debug() << m_edges.size() << " edges generated\n"; // setup mapping from node id to edge for(vector::iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ Edge2D* e_ptr=&(*iter); // get node ids int id0=(iter->getP0()).first; int id1=(iter->getP1()).first; // add pairs m_edge_by_node_id.insert(make_pair(id0,e_ptr)); m_edge_by_node_id.insert(make_pair(id1,e_ptr)); // add edge pointer to corners m_corners[m_corner_by_id[id0]].addEdge(e_ptr); m_corners[m_corner_by_id[id1]].addEdge(e_ptr); } // edge id to edge for(size_t i=0;i::iterator emmi; pair efound=m_edge_by_node_id.equal_range(id); for(emmi iter=efound.first;iter!=efound.second;iter++){ iter->second->moveNode(id,d); } // move nodes Corner2D *c=getCornerById(id); if(c!=NULL){ c->move(d); } } void Mesh2D::translateBy(const Vec3 &translation) { for ( std::vector::iterator it = m_corners.begin(); it != m_corners.end(); ++it ) { it->move(translation); } } /*! zero all forces on the mesh. Currently forces are only on edge */ void Mesh2D::zeroForces() { for(vector::iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ iter->zeroForce(); } } /*! Get a pointer to a edge with a given ID. If the ID doesn't exist, return NULL \param id the id */ Edge2D* Mesh2D::getEdgeById(int id) { Edge2D* res; map::iterator it=m_edge_index_by_id.find(id); if(it!=m_edge_index_by_id.end()){ res=&(m_edges[it->second]); } else { res=NULL; } return res; } /*! Get a pointer to a corner with a given ID. If the ID doesn't exist, return NULL \param id the id */ Corner2D* Mesh2D::getCornerById(int id) { Corner2D* res; map::iterator it=m_corner_by_id.find(id); if(it!=m_corner_by_id.end()){ res=&(m_corners[it->second]); } else { res=NULL; } return res; } /*! Write checkpoint data to stream. The mesh data is written in the original mesh file format -> can reuse meshreader to read in checkpointed meshes \param ost the output stream \param delim the delimiter \warning doesn't deal with tags yet */ void Mesh2D::writeCheckPoint(ostream& ost,const string& delim) const { int tag=0; // build node map map nodemap; for(vector::const_iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ nodemap.insert(iter->getP0()); nodemap.insert(iter->getP1()); } // write nodes ost << "2D-Nodes " << nodemap.size() << delim; for(map::iterator iter=nodemap.begin(); iter!=nodemap.end(); iter++){ ost << iter->first << " " << iter->first << " " << tag << " " << iter->second.X() << " " << iter->second.Y() << delim; } // write lines ost << "Line2 " << m_edges.size() << delim; int count=0; for(vector::const_iterator iter=m_edges.begin(); iter!=m_edges.end(); iter++){ ost << count << " " << tag << " "; ost << (iter->getP0()).first << " "; ost << (iter->getP1()).first << delim; count++; } } /*! load checkpoint data from stream. Re-uses code from meshreader to read in checkpointed meshes \param ist the input stream \warning doesn't deal with tags yet */ void Mesh2D::loadCheckPoint(istream& ist) { vector node_vec; vector tri_vec; // --- Nodes --- Node2DReader nreader(ist); Node2DReader::Iterator &niter=nreader.getIterator(); // read nodes into vector while(niter.hasNext()){ node_vec.push_back(niter.next()); } // --- Edges --- Edge2DReader treader(ist); Edge2DReader::Iterator &titer=treader.getIterator(); // read edges into vector while(titer.hasNext()){ tri_vec.push_back(titer.next()); } LoadMesh(node_vec,tri_vec); } ./Model/Makefile.am0000664000175000017500000001370112176660653013735 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am lib_LTLIBRARIES=libModel.la AM_CPPFLAGS += \ $(SILO_CPPFLAGS) \ -I$(top_srcdir)/Foundation \ -I$(top_srcdir)/Parallel \ -I$(top_srcdir)/Fields \ -I$(top_srcdir)/Parser libModel_la_SOURCES = \ ABCDampingIGP.cpp \ ABCDampingIGP.h \ AdhesiveFriction.cpp \ AdhesiveFriction.h \ BasicParticle.cpp \ BasicParticle.h \ BodyForceGroup.cpp \ BodyForceGroup.h \ BodyForceGroup.hpp \ BondedInteraction.cpp \ BondedInteraction.h \ BTriangleInteraction.cpp \ BTriangleInteraction.h \ BEdge2DInteraction.cpp \ BEdge2DInteraction.h \ BCorner2DInteraction.cpp \ BCorner2DInteraction.h \ BTriMeshInteraction.h \ BTriMeshInteractionCpData.h \ BTriMeshInteractionCpData.cpp \ BTriMeshIP.h \ BMesh2DIP.h \ BWallInteraction.cpp \ BWallInteraction.h \ BWallInteraction.hpp \ BWallInteractionGroup.cpp \ BWallInteractionGroup.h \ BWallInteractionGroup.hpp \ CappedBondedInteraction.cpp \ CappedBondedInteraction.h \ DampingIGP.cpp \ DampingIGP.h \ Damping.hpp \ Damping.h \ ECornerInteraction.cpp \ ECornerInteraction.h \ ECorner2DInteraction.cpp \ ECorner2DInteraction.h \ EEdgeInteraction.cpp \ EEdgeInteraction.h \ EEdge2DInteraction.cpp \ EEdge2DInteraction.h \ EMesh2DInteraction.h \ ElasticInteraction.cpp \ ElasticInteraction.h \ ElasticInteractionGroup.cpp \ ElasticInteractionGroup.h \ ElasticInteractionGroup.hpp \ ETriMeshIP.h \ ETriMeshInteraction.h \ ETriangleInteraction.cpp \ ETriangleInteraction.h \ EWallInteractionGroup.cpp \ EWallInteractionGroup.h \ EWallInteractionGroup.hpp \ EWallInteraction.h \ EWallInteraction.hpp \ FractalFriction.cpp \ FractalFriction.h \ FrictionInteraction.cpp \ FrictionInteraction.h \ HertzianElasticInteraction.cpp \ HertzianElasticInteraction.h \ HertzianViscoElasticFrictionInteraction.cpp \ HertzianViscoElasticFrictionInteraction.h \ HertzianViscoElasticInteraction.cpp \ HertzianViscoElasticInteraction.h \ IGParam.cpp \ IGParam.h \ Interaction.cpp \ Interaction.h \ InteractionGroup.h \ InteractionGroup.hpp \ InteractionParam.cpp \ InteractionParam.h \ LinearDashpotInteraction.cpp \ LinearDashpotInteraction.h \ LocalDampingIGP.h \ LocalDampingIGP.cpp \ LocalDamping.h \ LocalDamping.hpp \ MeshData.cpp \ MeshData.h \ MeshData2D.cpp \ MeshData2D.h \ Mesh2D.cpp \ Mesh2D.h \ Mesh2D.hpp \ Particle.cpp \ Particle.h \ RotBondedInteraction.cpp \ RotBondedInteraction.h \ RotDamping.hpp \ RotDamping.h \ RotElasticInteraction.cpp \ RotElasticInteraction.h \ RotElasticInteractionGroup.cpp \ RotElasticInteractionGroup.h \ RotElasticInteractionGroup.hpp \ RotFricInteraction.cpp \ RotFricInteraction.h \ RotLocalDamping.h \ RotLocalDamping.hpp \ RotPairInteraction.cpp \ RotPairInteraction.h \ RotParticle.cpp \ RotParticle.h \ ShortBondedInteraction.h \ ShortBondedInteraction.cpp \ ShortBondedInteractionCpData.h \ ShortBondedInteractionCpData.cpp \ SoftBWallInteractionGroup.cpp \ SoftBWallInteractionGroup.h \ SoftBWallInteractionGroup.hpp \ SoftBWallInteraction.h \ SoftBWallInteraction.hpp \ TempPartStore.h \ TempPartStore.hpp \ TriMesh.cpp \ TriMesh.h \ TriMesh.hpp \ ViscWallIG.cpp \ ViscWallIG.h \ ViscWallIG.hpp \ ViscWallInteraction.h \ ViscWallInteraction.hpp \ VWFrictionInteraction.cpp \ VWFrictionInteraction.h \ Wall.cpp \ Wall.h \ WallIG.h \ WallInteraction.h \ WallInteraction.hpp \ BondedInteractionCpData.h \ BondedInteractionCpData.cpp \ BMesh2DInteractionCpData.cpp \ BMesh2DInteractionCpData.h \ BMesh2DInteraction.h \ BTriMeshIP.cpp \ RotParticleVi.cpp \ RotParticleVi.h \ RotThermBondedInteraction.cpp \ RotThermBondedInteraction.h \ RotThermElasticInteraction.cpp \ RotThermElasticInteractionGroup.cpp \ RotThermElasticInteractionGroup.h \ RotThermElasticInteractionGroup.hpp \ RotThermElasticInteraction.h \ RotThermFricInteraction.cpp \ RotThermFricInteraction.h \ RotThermPairInteraction.cpp \ RotThermPairInteraction.h \ RotThermParticle.cpp \ RotThermParticle.h \ ThermParticle.cpp \ ThermParticle.h \ $(top_srcdir)/Fields/field_const.h \ $(top_srcdir)/Fields/FieldMaster.cpp \ $(top_srcdir)/Fields/FieldMaster.h \ $(top_srcdir)/Fields/FieldSlave.cpp \ $(top_srcdir)/Fields/FieldSlave.h \ $(top_srcdir)/Fields/VectorWallFieldSlave.h \ $(top_srcdir)/Fields/VectorWallFieldSlave.hpp \ $(top_srcdir)/Fields/WallFieldMaster.h \ $(top_srcdir)/Fields/WallFieldMaster.cpp \ $(top_srcdir)/Fields/WallFieldSlave.h \ $(top_srcdir)/Fields/WallFieldSlave.cpp \ $(top_srcdir)/Parallel/CheckPointable.h \ $(top_srcdir)/Parallel/CheckPointable.cpp \ $(top_srcdir)/Parallel/IterativeReader.h \ $(top_srcdir)/Parallel/IterativeReader.hpp \ $(top_srcdir)/Parallel/Mesh2DReader.h \ $(top_srcdir)/Parallel/Mesh2DReader.cpp \ $(top_srcdir)/Parallel/Mesh2DReaderImpl.cpp \ $(top_srcdir)/Parallel/MeshReader.cpp \ $(top_srcdir)/Parallel/MeshReader.h \ $(top_srcdir)/Parallel/MeshReaderImpl.cpp \ $(top_srcdir)/Parallel/vec3_mpi.cpp \ $(top_srcdir)/Parallel/vec3_mpi.h libModel_la_LIBADD = \ $(top_builddir)/Foundation/libFoundation.la \ $(top_builddir)/Geometry/libGgGeometry.la \ $(top_builddir)/tml/message/libTmlMessage.la \ $(top_builddir)/tml/type/libTmlType.la \ $(top_builddir)/tml/comm/libTmlComm.la ./Model/BodyForceGroup.hpp0000664000175000017500000001154412176660653015306 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ppa/src/pp_array.h" #include namespace esys { namespace lsm { template BodyForceGroup::BodyForceGroup( const BodyForceIGP &prms, ParticleArray &particleArray ) : m_acceleration(prms.getAcceleration()), m_pParticleArray(&particleArray) { } template BodyForceGroup::~BodyForceGroup() { } template void BodyForceGroup::Update(ParallelParticleArray *particleArray) { } template Vec3 BodyForceGroup::getForce(double mass) const { return m_acceleration*mass; } template void BodyForceGroup::applyForce(TmplParticle &particle) const { particle.applyForce(getForce(particle.getMass()), particle.getPos()); } template void BodyForceGroup::calcForces() { typename ParticleArray::ParticleListHandle plh = m_pParticleArray->getAllParticles(); for ( ParticleIterator it = plh->begin(); it != plh->end(); it++ ) { applyForce(*(*it)); } } template BuoyancyForceGroup::BuoyancyForceGroup( const BuoyancyIGP &prms, ParticleArray &particleArray ) : m_acceleration(prms.getAcceleration()), m_pParticleArray(&particleArray) , m_fluidDensity(prms.getFluidDensity()), m_fluidHeight(prms.getFluidHeight()) { } template BuoyancyForceGroup::~BuoyancyForceGroup() { } template Vec3 BuoyancyForceGroup::getForce(double volume) const { Vec3 force; force = -1.0*m_acceleration*m_fluidDensity*volume; return force; } template void BuoyancyForceGroup::applyForce(TmplParticle &particle) const { double volume, radius, height; double theta, d; radius = particle.getRad(); height = -1.0*particle.getPos() * m_acceleration.unit(); if(particle.getDo2dCalculations()){ if (m_fluidHeight >= height + radius) { // completely submerged volume = M_PI*radius*radius; } else if (m_fluidHeight >= height - radius) { // partially submerged if (m_fluidHeight < height) { d = height - m_fluidHeight; theta = 2.0 * acos (d / radius); volume = 0.5*radius*radius*(theta - sin (theta)); } else { d = m_fluidHeight - height; theta = 2.0 * acos (d / radius); volume = M_PI*radius*radius*(M_PI - 0.5*(theta - sin (theta))); } } else { // not submerged volume = 0.0; } } else { if (m_fluidHeight >= height + radius) { // completely submerged volume = 4.0*M_PI*radius*radius*radius/3.0; } else if (m_fluidHeight >= height - radius) { // partially submerged if (m_fluidHeight < height) { d = radius - (height - m_fluidHeight); volume = M_PI*d*d*(3.0*radius - d)/3.0; } else { d = radius - (m_fluidHeight - height); volume = M_PI*(4.0*radius*radius*radius - d*d*(3.0*radius - d))/3.0; } } else { // not submerged volume = 0.0; } } particle.applyForce(getForce(volume), particle.getPos()); } template void BuoyancyForceGroup::calcForces() { typename ParticleArray::ParticleListHandle plh = m_pParticleArray->getAllParticles(); for ( ParticleIterator it = plh->begin(); it != plh->end(); it++ ) { applyForce(*(*it)); } } template void BuoyancyForceGroup::Update(ParallelParticleArray *particleArray) { } } } ./Model/BTriangleInteraction.cpp0000664000175000017500000000601412176660653016453 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "BTriangleInteraction.h" #include "tml/message/packed_message_interface.h" /*! default constructor */ BTriangleInteraction::BTriangleInteraction() { m_p=NULL; m_t=NULL; m_tid=-1; m_pid=-1; } /*! constructor with parameters \param p a pointer to the particle \param t a pointer to the triangle \param param the interaction parameters \param iflag */ BTriangleInteraction::BTriangleInteraction(CParticle* p,Triangle* t,BTriMeshIP param,bool iflag) { m_p=p; m_t=t; m_k=param.k; m_break=param.brk*m_p->getRad(); m_inner_flag=iflag; // setup anchor point m_ap=m_t->toLocal(m_p->getPos()); m_dist=0.0; // inital distance is always 0.0 ! m_tid=m_t->getID(); m_pid=m_p->getID(); } /*! destructor */ BTriangleInteraction::~BTriangleInteraction() {} /*! calculate & apply forces */ void BTriangleInteraction::calcForces() { // transform anchor point to world coords Vec3 ap_global=m_t->toGlobal(m_ap); // get dist between anchor and particle const Vec3 D=ap_global-m_p->getPos(); m_dist=sqrt(D*D); // calc force Vec3 force=D*m_k; Vec3 pos=m_p->getPos(); // apply force m_p->applyForce(force,pos); if(m_inner_flag) m_t->applyForce(-1.0*force); } /*! return if the interaction is broken, i.e. the distance between particle and anchor point exceeds breaking distance, i.e. relative breaking distance x particle readius */ bool BTriangleInteraction::broken() { return (m_dist>m_break); } /*! returns the projection of the anchor point on the triangle */ Vec3 BTriangleInteraction::getAP() const { Vec3 app=Vec3(m_ap.X(),m_ap.Y(),0.0); // move point onto triangle Vec3 ap_global=m_t->toGlobal(app); // transfrom point to global coordinates return ap_global; } /*! Pack a BTriangleInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const BTriangleInteraction& I) { append(I.m_k); append(I.m_dist); append(I.m_break); append(I.m_ap); append(I.getTid()); append(I.getPid()); } /*! Unpack a BTriangleInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(BTriangleInteraction& I) { I.m_k=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.m_ap=pop_vec3(); I.m_tid=pop_int(); I.m_pid=pop_int(); } ./Model/MeshData2D.cpp0000664000175000017500000000411112176660653014254 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "MeshData2D.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" // === NODE DATA =========== /*! read node data from istream \param instream the stream to read from */ void MeshNodeData2D::read(istream& instream) { int dummy; instream >> id >> dummy >> tag >> x >> y ; } /*! Pack MeshNodeData2D into a TML packed message \param d the data */ template<> void TML_PackedMessageInterface::pack(const MeshNodeData2D& d) { append(d.id); append(d.tag); append(d.x); append(d.y); } /*! Unpack MeshNodeData2D from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(MeshNodeData2D& d) { d.id=pop_int(); d.tag=pop_int(); d.x=pop_double(); d.y=pop_double(); } // === EDGE2D DATA =========== /*! read 2D edge data from istream \param instream the stream to read from */ void MeshEdgeData2D::read(istream& instream) { instream >> id >> tag >> p1 >> p2 ; } /*! Pack MeshEdgeData2D into a TML packed message \param d the data */ template<> void TML_PackedMessageInterface::pack(const MeshEdgeData2D& d) { append(d.id); append(d.tag); append(d.p1); append(d.p2); } /*! Unpack MeshEdgeData2D from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(MeshEdgeData2D& d) { d.id=pop_int(); d.tag=pop_int(); d.p1=pop_int(); d.p2=pop_int(); } ./Model/InteractionParam.cpp0000664000175000017500000000177612176660653015656 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "InteractionParam.h" //--- STL includes --- #include using std::pair; AIParam::AIParam(const string& s) { m_name=s; } AIParam::~AIParam() {} double AIParam::getParamByName(const string& s) { return m_data[s]; } void AIParam::addParameter(const string& s,double d) { m_data.insert(pair(s,d)); } ./Model/ViscWallIG.cpp0000664000175000017500000000363212176660653014353 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ViscWallIG.h" #include "console.h" //---------------------------------------- // CVWallIGP member functions //---------------------------------------- /*! Constructor for viscous wall parameters \param name \param wallname \param k \param nu \param tag */ CVWallIGP::CVWallIGP(const string& name,const string& wallname,double k,double nu,int tag) : CEWallIGP(name,wallname,k) { m_tag=tag; m_nu=nu; } void CVWallIGP::packInto(CVarMPIBuffer* B) const { console.XDebug() << "CVWallIGP::packInto( " << B << " )\n"; CEWallIGP::packInto(B); B->append(m_tag); B->append(m_nu); console.XDebug() << "end CBWallIGP::packInto()\n "; } ostream& operator<<(ostream& ost,const CVWallIGP& I) { ost << "CVWallIGP\n"; ost << "Spring constant : " << I.m_k << endl; ost << "Tag : " << I.m_tag << endl; ost << "Viscosity : " << I.m_nu << endl; return ost; } CVWallIGP* extractVWallIGP(AMPIBuffer* B) { console.XDebug() << "extractVWallIGP\n"; string name=B->pop_string(); double k=B->pop_double(); string wname=B->pop_string(); int tag=B->pop_int(); double nu=B->pop_double(); CVWallIGP* res=new CVWallIGP(name,wname,k,nu,tag); console.XDebug() << "end extractVWallIGP\n"; return res; } ./Model/RotElasticInteractionGroup.hpp0000664000175000017500000001251612176660653017703 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "pis/pi_storage.h" //---------------------------------------------- // CElasticInteractionGroup functions //---------------------------------------------- template CRotElasticInteractionGroup::CRotElasticInteractionGroup() { m_exIG=NULL; this->m_update_timestamp=0; } template CRotElasticInteractionGroup::CRotElasticInteractionGroup(const CRotElasticIGP* Param) { m_exIG=NULL; this->m_kr=Param->getNormalSpringConst(); this->m_update_timestamp=0; } template void CRotElasticInteractionGroup::setParam(const CRotElasticIGP* Param) { this->m_kr=Param->getNormalSpringConst(); } template void CRotElasticInteractionGroup::calcForces() { console.Debug() << "calculating " << m_interactions.size() << " elastic forces\n" ; for(vector::iterator it=m_interactions.begin();it!=m_interactions.end();it++){ it->calcForces(); } } /*! Update the interactions from the neighbor table. If the ParallelParticleArray has been rebuilt since the last update, the interaction group is cleared and rebuilt from scratch. Otherwise only new interactions are added. */ template void CRotElasticInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CElasticInteractionGroup::Update\n"; int count_l=0; if(this->m_update_timestamp!=PPA->getTimeStamp()){// PPA rebuild since last update // clean out old interactions m_interactions.erase(m_interactions.begin(),m_interactions.end()); this->m_set.erase(this->m_set.begin(),this->m_set.end()); // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin();iter!=plh->end();iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(m_exIG!=NULL){ if(!m_exIG->isIn(tv)){ m_interactions.push_back(CRotElasticInteraction(iter->first,iter->second,m_kr)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug() << "adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug() << "not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CRotElasticInteraction(iter->first,iter->second,m_kr)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug() << "adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } else { // PPA not rebuilt since last update -> just get additional interactions // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getNewPairList(); for(typename ParallelParticleArray::PairListIterator iter=plh->begin();iter!=plh->end();iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(m_exIG!=NULL){ if(!m_exIG->isIn(tv)){ m_interactions.push_back(CRotElasticInteraction(iter->first,iter->second,m_kr)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug() << "adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug() << "not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CRotElasticInteraction(iter->first,iter->second,m_kr)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug() << "adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } this->m_update_timestamp=PPA->getTimeStamp(); console.XDebug() << "added " << count_l << " pairs to EIG\n"; console.XDebug() << "end CElasticInteractionGroup::Update\n"; } template ostream& operator<<(ostream& ost,const CRotElasticInteractionGroup& E) { ost << "CElasticInteractionGroup : \n"; for(vector::const_iterator it=E.m_interactions.begin();it!=E.m_interactions.end();it++){ ost << *it << " , " ; } ost << "exchange list: \n"; for(set >::const_iterator vit=E.m_exchg_list.begin();vit!=E.m_exchg_list.end();vit++){ ost << "[ " << vit->first << " from " << vit->second << " ] , "; } return ost; } ./Model/SoftBWallInteraction.cpp0000664000175000017500000000131712176660653016442 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "SoftBWallInteraction.h" ./Model/EMesh2DInteraction.h0000664000175000017500000000205612176660653015442 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EMESH2DINTERACTION_H #define __EMESH2DINTERACTION_H // --- project includes --- #include "Model/EEdge2DInteraction.h" #include "Model/ECorner2DInteraction.h" #include "Model/ETriMeshIP.h" struct EMesh2DInteraction { typedef ETriMeshIP ParameterType; typedef EEdge2DInteraction EdgeIntType; typedef ECorner2DInteraction CornerIntType; }; #endif //__EMESH2DINTERACTION_H ./Model/Mesh2D.h0000664000175000017500000000500612176660653013133 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __MESH2D_H #define __MESH2D_H // -- Project includes -- #include "Geometry/Edge2D.h" #include "Geometry/Corner2D.h" #include "Model/MeshData2D.h" #include "Foundation/vec3.h" // -- STL includes -- #include #include #include using std::vector; using std::multimap; using std::map; using std::string; // -- IO includes --- #include using std::ostream; //--- TML includes --- #include "tml/comm/comm.h" /*! A class for a 2D "mesh", i.e. a collection of lines connected by corners in a 2D plane which can interact with particles in 2D. The Main purpose is for coupling with 2D FEM (Finley) simulations via escript. */ class Mesh2D { private: vector m_edges; vector m_corners; map m_corner_by_id; multimap m_edge_by_node_id; map m_edge_index_by_id; public: // types typedef vector::iterator edge_iterator; typedef vector::iterator corner_iterator; // functions Mesh2D(); virtual ~Mesh2D(){}; void LoadMesh(const vector&,const vector&); void moveNode(int,const Vec3&); void translateBy(const Vec3 &translation); edge_iterator edges_begin(){return m_edges.begin();}; edge_iterator edges_end(){return m_edges.end();}; corner_iterator corners_begin(){return m_corners.begin();}; corner_iterator corners_end(){return m_corners.end();}; Edge2D* getEdgeById(int); Corner2D* getCornerById(int); void zeroForces(); virtual void writeCheckPoint(ostream&,const string&) const; virtual void loadCheckPoint(istream&); // edge data access functions template void forAllEdgesGet(P&,typename P::value_type (Edge2D::*rdf)() const); template vector > forAllEdgesGetIndexed(P (Edge2D::*rdf)() const); }; #include "Mesh2D.hpp" #endif // __MESH2D_H ./Model/RotPairInteraction.cpp0000664000175000017500000000355112176660653016167 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/RotPairInteraction.h" ARotPairInteraction::~ARotPairInteraction() { } ARotPairInteraction::ARotPairInteraction():AInteraction() { m_p1=NULL; m_p2=NULL; m_id.clear(); m_id.push_back(-1); m_id.push_back(-1); } ARotPairInteraction::ARotPairInteraction(CRotParticle* p1,CRotParticle* p2) : AInteraction() { setPP(p1,p2); m_init=true; } void ARotPairInteraction::setPP(CRotParticle *p1,CRotParticle *p2) { m_p1=p1; m_p2=p2; m_id.clear(); m_id.push_back(m_p1->getID()); m_id.push_back(m_p2->getID()); } void ARotPairInteraction::setPP(const vector pp) { setPP(pp[0], pp[1]); } void ARotPairInteraction::checkIDs() { if ((m_id[0]!=m_p1->getID())||(m_id[1]!=m_p2->getID())){ std::cout << "inconsistent IDs : " << m_id[0] << "-" << m_id[1] << " vs. " << m_p1->getID() << "-" << m_p2->getID() << std::endl << std::flush; } } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ bool ARotPairInteraction::hasTag(int tag ,int mask) const { int tag1=m_p1->getTag(); int tag2=m_p2->getTag(); return (((tag1 & mask)==(tag & mask))||((tag2 & mask)==(tag & mask))); } ./Model/CappedBondedInteraction.cpp0000664000175000017500000001204312176660653017113 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/CappedBondedInteraction.h" #include "Foundation/console.h" #include "tml/message/packed_message_interface.h" #include CCappedBondedIGP::CCappedBondedIGP() : CBondedIGP(),m_force_limit(0.0) { } CCappedBondedIGP::CCappedBondedIGP(const std::string &name, int tag, double normalK, double breakDistance,double maxforce) : CBondedIGP(name,tag,normalK,breakDistance), m_force_limit(maxforce) { } CCappedBondedInteraction::CCappedBondedInteraction() : CBondedInteraction() { m_force_limit=0.0; } /*! just do the APairInteraction part of the constructor - not to be used directly, only by derived class -> therefore protected */ CCappedBondedInteraction::CCappedBondedInteraction(CParticle* p1,CParticle* p2) : CBondedInteraction(p1, p2) {} CCappedBondedInteraction::CCappedBondedInteraction( CParticle* p1, CParticle* p2, const CCappedBondedIGP& param ) : CBondedInteraction(p1, p2) { m_k=param.k; m_break=(m_p1->getRad()+m_p2->getRad())*param.rbreak; m_r0=p1->getRad()+p2->getRad(); // setup initial distance in case we want to break before first calcForces() Vec3 D=p1->getPos()-p2->getPos(); m_dist=sqrt(D*D); m_force=Vec3(0.0,0.0,0.0); m_tag = param.tag; m_force_limit=param.m_force_limit; } CCappedBondedInteraction::~CCappedBondedInteraction() { // // if (m_p1!=NULL) m_p1->setFlag(); // if (m_p2!=NULL) m_p2->setFlag(); } /*! Calculate bonded elastic forces. 21 Flops */ void CCappedBondedInteraction::calcForces() { // console.XDebug() // << "bonded interaction: [" << m_p1->getID() << " - " // << m_p2->getID() << "]" << m_p1->getPos() // << m_p2->getPos() << "\n"; const Vec3 D=m_p1->getPos()-m_p2->getPos(); // get distance m_dist=sqrt(D*D); // calc relative deformation double rdef=(m_dist-m_r0)/m_dist; if(fabs(rdef)>m_force_limit){ rdef=(rdef/fabs(rdef))*m_force_limit; } m_force = D*(m_k*rdef); const Vec3 pos=m_p2->getPos()+(m_p2->getRad()/m_r0)*D; m_p2->applyForce(m_force,pos); m_p1->applyForce(-1.0*m_force,pos); m_cpos=pos; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CCappedBondedInteraction::ScalarFieldFunction CCappedBondedInteraction::getScalarFieldFunction(const string& name) { CCappedBondedInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CBondedInteraction::getPotentialEnergy; } else if (name=="count"){ sf=&CBondedInteraction::Count; } else if (name=="strain"){ sf=&CBondedInteraction::getStrain;; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CCappedBondedInteraction::VectorFieldFunction CCappedBondedInteraction::getVectorFieldFunction(const string& name) { CCappedBondedInteraction::VectorFieldFunction sf; if (name=="force"){ sf=&CBondedInteraction::getForce; } else { sf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CCappedBondedInteraction::CheckedScalarFieldFunction CCappedBondedInteraction::getCheckedScalarFieldFunction(const string& name) { CCappedBondedInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Pack a CBondedInteraction into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CCappedBondedInteraction& I) { append(I.m_k); append(I.m_r0); append(I.m_dist); append(I.m_break); append(I.m_id[0]); append(I.m_id[1]); append(I.getTag()); append(I.m_force_limit); } /*! Unpack a CBondedInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CCappedBondedInteraction& I) { I.m_k=pop_double(); I.m_r0=pop_double(); I.m_dist=pop_double(); I.m_break=pop_double(); I.m_id.erase(I.m_id.begin(),I.m_id.end()); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.setTag(pop_int()); I.m_force_limit=pop_double(); } ./Model/LocalDampingIGP.h0000664000175000017500000000326612176660653014751 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LOCALDAMPING_IGP_H #define __LOCALDAMPING_IGP_H // -- project includes -- #include "Model/IGParam.h" #include "Foundation/vec3.h" // -- STL includes -- #include using std::string; /*! \brief Interaction group parameters for CLocalDampingGroup */ class CLocalDampingIGP : public AIGParam { protected: string m_type; // type of damping (rot/lin) double m_visc; //!< damping coefficient double m_dt; //!< time step public: CLocalDampingIGP(); CLocalDampingIGP(const string& type, const string &name, double viscosity, double dt ); virtual void packInto(CVarMPIBuffer*) const; void setType(const string& type){m_type=type;} void setVisc(double v){m_visc=v;} double getVisc()const{return m_visc;} void setTimeStep(double t){m_dt=t;} void setTimeStepSize(double t){setTimeStep(t);} double getTimeStep()const{return m_dt;} virtual std::string getTypeString() const {return m_type;} }; CLocalDampingIGP* extractLocalDampingIGP(AMPIBuffer*); #endif //__LOCALDAMPING_IGP_H ./Model/SoftBWallInteractionGroup.hpp0000664000175000017500000001222012176660653017457 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //---------------------------------------------- // CSoftBWallInteractionGroup functions //---------------------------------------------- #include "Foundation/console.h" template CSoftBWallInteractionGroup::CSoftBWallInteractionGroup(TML_Comm* comm):AWallInteractionGroup(comm) {} /*! Constructor for bonded wall interaction group with direction dependend elasticity \param comm the communicator \param wallp a pointer to the wall \param param the interaction parameters */ template CSoftBWallInteractionGroup::CSoftBWallInteractionGroup(TML_Comm* comm,CWall* wallp, const CSoftBWallIGP* I) : AWallInteractionGroup(comm) { console.XDebug() << "making CSoftBWallInteractionGroup \n"; m_normalK=I->getNormalK(); m_shearK=I->getShearK(); this->m_wall=wallp; m_tag=I->getTag(); m_scaling=I->getScaling(); // console.XDebug() << "kx, ky, kz: " << m_kx << ","<< m_ky << ","<< m_kz << "\n"; } template void CSoftBWallInteractionGroup::calcForces() { console.XDebug() << "calculating " << m_interactions.size() << " soft bonded wall forces\n" ; for( typename vector >::iterator it=m_interactions.begin(); it != m_interactions.end(); it++ ){ it->calcForces(); } } /*! Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions. \param F the force */ template void CSoftBWallInteractionGroup::applyForce(const Vec3& F) { console.XDebug() << "CSoftBWallInteractionGroup::applyForce: F = " << F << "\n"; // calculate local K double K=0.0; for ( typename vector >::iterator it=m_interactions.begin(); it!=m_interactions.end(); it++){ if(it->isInner()){ K+=it->getStiffness(); console.XDebug() << "CSoftBWallInteractionGroup::applyForce: K = " << K << "\n"; } } // get global K double K_global=this->m_comm->sum_all(K); console.XDebug() << "CSoftBWallInteractionGroup::applyForce: K_global = " << K_global << "\n"; int it=0; double d; Vec3 O_f=F.unit(); // direction of the applied force console.XDebug() << "CSoftBWallInteractionGroup::applyForce: unitF = " << O_f << "\n"; do{ // calculate local F Vec3 F_local=Vec3(0.0,0.0,0.0); // bonded itneractions for( typename vector >::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } // get global F // by component (hack - fix later,i.e. sum_all for Vec3) double fgx=this->m_comm->sum_all(F_local.X()); double fgy=this->m_comm->sum_all(F_local.Y()); double fgz=this->m_comm->sum_all(F_local.Z()); Vec3 F_global=Vec3(fgx,fgy,fgz); // calc necessary wall movement d=((F+F_global)*O_f)/K_global; console.XDebug() << "CBWallInteractionGroup::applyForce: iteration " << it << ", d = " << fabs(d) << "\n"; // move the wall console.XDebug() << "CBWallInteractionGroup::applyForce: moving wall by " << d*O_f << "\n"; this->m_wall->moveBy(d*O_f); it++; } while((it<10)&&(fabs(d)>10e-6)); // check for convergence console.XDebug() << "CBWallInteractionGroup::applyForce: d = " << fabs(d) << ", num iterations = " << it << "\n"; } template void CSoftBWallInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CSoftBWallInteractionGroup::Update()\n" ; // empty particle list first m_interactions.erase(m_interactions.begin(),m_interactions.end()); // build new particle list typename ParallelParticleArray::ParticleListHandle plh= PPA->getParticlesAtPlane(this->m_wall->getOrigin(),this->m_wall->getNormal()); for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ if((*iter)->getTag()==m_tag){ bool iflag=PPA->isInInner((*iter)->getPos()); m_interactions.push_back(CSoftBondedWallInteraction(*iter,this->m_wall,m_normalK,m_shearK,m_scaling,iflag)); } } console.XDebug() << "end CSoftBWallInteractionGroup::Update()\n"; } template ostream& operator<<(ostream& ost,const CSoftBWallInteractionGroup& IG) { ost << "CBWallInteractionGroup" << endl << flush; ost << *(IG.m_wall) << endl << flush; return ost; } ./Model/ThermParticle.cpp0000664000175000017500000000471612176660653015156 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/ThermParticle.h" CThermParticle::CThermParticle() : m_temperature(0.0), m_temperature_ini(0.0), m_Cp(0.0), m_heat_frict(0.0), m_heat_trans(0.0), m_therm_expansion0(0.0), m_therm_expansion1(0.0), m_therm_expansion2(0.0), m_rad_ini(0.0) { } CThermParticle::CThermParticle(double rad_ini) : m_temperature(0.0), m_temperature_ini(0.0), m_Cp(0.0), m_heat_frict(0.0), m_heat_trans(0.0), m_therm_expansion0(0.0), m_therm_expansion1(0.0), m_therm_expansion2(0.0), m_rad_ini(rad_ini) { } CThermParticle::CThermParticle(double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2, double rad_ini) : m_temperature(temperature), m_temperature_ini(temperature_ini), m_Cp(Cp), m_heat_frict(heat_frict), m_heat_trans(heat_trans), m_therm_expansion0(therm_expansion0), m_therm_expansion1(therm_expansion1), m_therm_expansion2(therm_expansion2), m_rad_ini(rad_ini) { } ostream& operator<<(ostream& ost,const CThermParticle& p) { ost << "m_temperature=" << p.m_temperature << ", m_temperature_ini=" << p.m_temperature_ini << ", m_Cp" << p.m_Cp << ", m_heat_frict=" << p.m_heat_frict << ", m_heat_trans=" << p.m_heat_trans << ", m_therm_expansion0=" << p.m_therm_expansion0 << ", m_therm_expansion1=" << p.m_therm_expansion1 << ", m_therm_expansion2=" << p.m_therm_expansion2 << ", m_rad_ini=" << p.m_rad_ini; return ost; } ./Model/LinearDashpotInteraction.h0000664000175000017500000000512112176660653017004 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __LINEARDASHPOTINTERACTION_H #define __LINEARDASHPOTINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" /*! \brief Interaction group parameters for Linear Dashpot interactions */ class CLinearDashpotIGP : public AIGParam { public: double m_damp; double m_cutoff; CLinearDashpotIGP(); CLinearDashpotIGP(const std::string&,double,double); virtual std::string getTypeString() const {return "LinearDashpot";} }; /*! \class CLinearDashpotInteraction \brief Linear Dashpot Interaction between free or bonded particles (to be used in addition to an elastic or bonded Interaction, not exclusively) \author Steffen Abe $Revision: 1201 $ $Date: 2009-07-31 12:25:45 +0200 (Fri, 31 Jul 2009) $ */ class CLinearDashpotInteraction : public APairInteraction { public: typedef double (CLinearDashpotInteraction::* ScalarFieldFunction)() const; typedef Vec3 (CLinearDashpotInteraction::* VectorFieldFunction)() const; typedef pair (CLinearDashpotInteraction::* CheckedScalarFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); private: double m_damp;//!< spring constant double m_cutoff; //!< interaction distance cutoff, relative to particle radii double m_cross_section; //!< cross section of dashpot, calculated from particle radii Vec3 m_force; // caching force for E_pot Vec3 m_cpos; // center position public: typedef CLinearDashpotIGP ParameterType; CLinearDashpotInteraction(CParticle*,CParticle*,const CLinearDashpotIGP&); virtual ~CLinearDashpotInteraction(){}; virtual Vec3 getPos() const {return m_cpos;}; double getPotentialEnergy() const; virtual void calcForces(); Vec3 getForce() const; }; #endif //__HERTZIANELASTICINTERACTION_H ./Model/ECornerInteraction.cpp0000664000175000017500000000340012176660653016135 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ECornerInteraction.h" /*! default constructor */ ECornerInteraction::ECornerInteraction() { m_p=NULL; m_corner=NULL; m_k=0.0; m_inner_flag=false; } /*! constructor with parameters \param p a pointer to the particle \param c a pointer to the corner \param param the interaction parameters \param iflag */ ECornerInteraction::ECornerInteraction(CParticle* p,Corner* c,ETriMeshIP param,bool iflag) { m_p=p; m_corner=c; // scale elastic param double f=1.0; if(!CParticle::getDo2dCalculations()){ f*=this->m_p->getRad(); } m_k=f*param.k; m_inner_flag=iflag; } /*! destructor */ ECornerInteraction::~ECornerInteraction() {} /*! calculate & apply forces */ void ECornerInteraction::calcForces() { Vec3 ppos=m_p->getPos(); if(m_corner->isValidContact(ppos)){ // if no contact to adjacent edges or triangles double sep=m_corner->sep(ppos); if(sepgetRad()){ Vec3 force=m_k*(m_p->getRad()-sep)*m_corner->getDirectionFromPoint(ppos); m_p->applyForce(force,ppos); if(m_inner_flag) m_corner->applyForce(-1.0*force); } } } ./Model/brokenEWallInteractionGroup.h0000664000175000017500000000463212176660653017477 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EWALLINTERACTIONGROUP_H #define __EWALLINTERACTIONGROUP_H //--- project includes --- #include "Model/EWallInteraction.h" #include "Model/WallIG.h" #include "Model/ElasticInteractionGroup.h" #include "Model/IGParam.h" template class ParallelParticleArray; //--- STL includes --- #include using std::map; /*! \brief Interaction group parameters for CEWallInteractionGroups */ class CEWallIGP : public CElasticIGP { protected: std::string m_wallname; public: CEWallIGP(const std::string&,const std::string&,double); virtual void packInto(CVarMPIBuffer*) const; std::string getWallName() const {return m_wallname;}; friend ostream& operator<<(ostream&,const CEWallIGP&); }; CEWallIGP* extractEWallIGP(AMPIBuffer*); // --- Forward decl --- template class CEWallInteractionGroup; template ostream& operator<< (ostream &, const CEWallInteractionGroup &); /*! \brief Class for a group of unbonded,elastic interactions between particles and a wall */ template class CEWallInteractionGroup : public AWallInteractionGroup { protected: vector > m_interactions; double m_k; //!< Elastic modulus double m_k_global; //!< total wall stiffness public: CEWallInteractionGroup(TML_Comm*); CEWallInteractionGroup(TML_Comm*,CWall*,const CEWallIGP*); virtual ~CEWallInteractionGroup(){} /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual void applyForce(const Vec3&); virtual void Update(ParallelParticleArray*); friend ostream& operator<< <>(ostream &, const CEWallInteractionGroup &); }; #include "EWallInteractionGroup.hpp" #endif //__EWALLINTERACTIONGROUP_H ./Model/BWallInteractionGroup.cpp0000664000175000017500000000442312176660653016624 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BWallInteractionGroup.h" #include "Foundation/console.h" //---------------------------------------- // CBWallIGP member functions //---------------------------------------- /*! Bonded wall interaction group constructor \param name the name of the interaction \param wallname the name of the wall \param k the spring constant for the elastic interactions \param tag the tag of the particles to which the wall is bonded (if build via bond and not via distance) \param mask the particle tag mask */ CBWallIGP::CBWallIGP(const std::string& name,const std::string& wallname,double k,int tag, int mask) : CEWallIGP(name,wallname,k) { m_tag=tag; m_mask=mask; } void CBWallIGP::packInto(CVarMPIBuffer* B) const { console.XDebug() << "CBWallIGP::packInto( " << B << " )\n"; CEWallIGP::packInto(B); B->append(m_tag); B->append(m_mask); console.XDebug() << "end CBWallIGP::packInto()\n "; } ostream& operator<<(ostream& ost,const CBWallIGP& I) { ost << "CEWallIGP\n"; ost << "Name : " << I.getName() << endl; ost << "Wall Name : " << I.m_wallname << endl; ost << "Spring constant : " << I.m_k << endl; ost << "Tag : " << I.m_tag << endl; ost << "Mask : " << I.m_mask << endl; return ost; } CBWallIGP* extractBWallIGP(AMPIBuffer* B) { console.XDebug() << "extractBWallIGP\n"; string name=B->pop_string(); double k=B->pop_double(); string wallname=B->pop_string(); int tag=B->pop_int(); int mask=B->pop_int(); CBWallIGP* res=new CBWallIGP(name,wallname,k,tag,mask); console.XDebug() << "end extractBWallIGP\n"; return res; } ./Model/RotLocalDamping.hpp0000664000175000017500000001136712176660653015437 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_ROTLOCALDAMPING_HPP #define MODEL_ROTLOCALDAMPING_HPP #include "Model/RotLocalDamping.h" /*! Construct a local rotational damping "interaction" for a particle \param P the particle \param visc the damping coefficient \param dt the time step */ template CRotLocalDamping::CRotLocalDamping(T* P,double visc, double dt) { m_p=P; m_visc=visc; m_dt=dt; m_force=Vec3(0.0,0.0,0.0); } /*! Construct a local rotational damping "interaction" for a particle \param P the particle \param param the parameters */ template CRotLocalDamping::CRotLocalDamping(T* P,const CLocalDampingIGP& param) { m_p=P; m_visc=param.getVisc(); m_dt=param.getTimeStep(); m_force=Vec3(0.0,0.0,0.0); } /*! Construct a local rotational damping "interaction" for a particle \param P the particle \param param pointer to the parameters */ template CRotLocalDamping::CRotLocalDamping(T* P,CLocalDampingIGP* param) { m_p=P; m_visc=param->getVisc(); m_dt=param->getTimeStep(); m_force=Vec3(0.0,0.0,0.0); } /*! destructor */ template CRotLocalDamping::~CRotLocalDamping() {} template void CRotLocalDamping::setTimeStepSize(double dt) { m_dt = dt; } /*! Calculate the local damping moment. */ template void CRotLocalDamping::calcForces() { m_E_diss=0.0;// zero dissipated energy Vec3 v=m_p->getAngVel(); Vec3 frc=m_p->getMoment(); double dampFx, dampFy, dampFz; dampFx = fabs(frc.X()); if (v.X() < 0) { dampFx *= -1.; } if (v.X() == 0) { dampFx = 0.0; } dampFy = fabs(frc.Y()); if (v.Y() < 0) { dampFy *= -1.; } if (v.Y() == 0) { dampFy = 0.0; } dampFz = fabs(frc.Z()); if (v.Z() < 0) { dampFz *= -1.; } if (v.Z() == 0) { dampFz = 0.0; } m_force=-1.0*m_visc*Vec3(dampFx, dampFy, dampFz); m_p->applyMoment(m_force); m_E_diss=m_visc*m_force.norm()*v.norm()*m_dt; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ template typename CRotLocalDamping::ScalarFieldFunction CRotLocalDamping::getScalarFieldFunction(const string& name) { typename CRotLocalDamping::ScalarFieldFunction sf; if(name=="dissipated_energy"){ sf=&CRotLocalDamping::getDissipatedEnergy; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ template typename CRotLocalDamping::CheckedScalarFieldFunction CRotLocalDamping::getCheckedScalarFieldFunction(const string& name) { typename CRotLocalDamping::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ template typename CRotLocalDamping::VectorFieldFunction CRotLocalDamping::getVectorFieldFunction(const string& name) { typename CRotLocalDamping::VectorFieldFunction vf; if (name=="force"){ vf=&CRotLocalDamping::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! return the amount of energy dissipated during the last time step */ template double CRotLocalDamping::getDissipatedEnergy() const { return m_E_diss; } template Vec3 CRotLocalDamping::getForce() const { return m_force; } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ template bool CRotLocalDamping::hasTag(int tag,int mask) const { int tag1=m_p->getTag(); return ((tag1 & mask)==(tag & mask)); } /*! return a vector of all particle IDs */ template vector CRotLocalDamping::getAllID() const { vector res; res.push_back(m_p->getID()); return res; } #endif ./Model/VWFrictionInteraction.h0000664000175000017500000000375112176660653016310 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __VWFRICTION_H #define __VWFRICTION_H // -- project includes -- #include "Model/FrictionInteraction.h" /*! \brief Interaction parameters for velocity weakening frictional interaction */ class VWFrictionIGP : public CFrictionIGP { public: double m_alpha; VWFrictionIGP(); VWFrictionIGP(const std::string&, double, double, double, double, double); }; /*! \brief Frictional+Elastic interaction between particles with velocity weakening friction */ class CVWFriction : public CFrictionInteraction { public: // types typedef VWFrictionIGP ParameterType; typedef double (CVWFriction::* ScalarFieldFunction)() const; typedef Vec3 (CVWFriction::* VectorFieldFunction)() const; typedef pair (CVWFriction::* CheckedScalarFieldFunction)() const; private: double m_alpha; public: CVWFriction(); CVWFriction(CParticle*,CParticle*,const VWFrictionIGP&); virtual ~CVWFriction(); static string getType() {return "VWFriction";}; virtual void calcForces(); pair getCurrentMu() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); friend class TML_PackedMessageInterface; }; #endif //__VWFRICTION_H ./Model/WallInteraction.cpp0000664000175000017500000000132012176660653015476 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/WallInteraction.h" ./Model/ABCDampingIGP.h0000664000175000017500000000267012176660653014302 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ABCDAMPING_IGP_H #define __ABCDAMPING_IGP_H // -- project includes -- #include "Model/DampingIGP.h" #include "Foundation/vec3.h" /*! Interaction group parameters for ABCDamping */ class ABCDampingIGP : public CDampingIGP { protected: Vec3 m_pos,m_normal; double m_c1; public: ABCDampingIGP(){}; ABCDampingIGP(const string&,const string&,double,double,int,const Vec3&,const Vec3&,const Vec3&,double); virtual void packInto(CVarMPIBuffer*) const; void setPos(const Vec3& p){m_pos=p;}; Vec3 getPos(){return m_pos;}; void setNormal(const Vec3& n){m_normal=n;}; Vec3 getNormal(){return m_normal;}; void setC1(double d){m_c1=d;}; double getC1(){return m_c1;}; }; ABCDampingIGP* extractABCDampingIGP(AMPIBuffer*); #endif // __ABCDAMPING_IGP_H ./Model/EWallInteractionGroup.cpp0000664000175000017500000000347212176660653016632 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/EWallInteractionGroup.h" #include "Foundation/console.h" //---------------------------------------- // CEWallIGP member functions //---------------------------------------- /*! Elastic wall interaction group constructor \param name the name of the wall \param k the spring constant for the elastic interactions \param ipos the initial position of the wall \param inorm the initial normal vector of the wall */ CEWallIGP::CEWallIGP( const std::string& name, const std::string& wallname, double k ) : CElasticIGP(name,k) { m_wallname=wallname; } void CEWallIGP::packInto(CVarMPIBuffer* B) const { console.XDebug() << "CEWallIGP::packInto( " << B << " )\n"; CElasticIGP::packInto(B); B->append(m_wallname.c_str()); console.XDebug() << "end CEWallIGP::packInto()\n "; } ostream& operator<<(ostream& ost,const CEWallIGP& I) { ost << "CEWallIGP\n"; ost << "Spring constant : " << I.m_k << endl; return ost; } CEWallIGP* extractEWallIGP(AMPIBuffer* B) { string name=B->pop_string(); double k=B->pop_double(); string wname=B->pop_string(); CEWallIGP* res=new CEWallIGP(name,wname,k); return res; } ./Model/EWallInteractionGroup.hpp0000664000175000017500000001361412176660653016636 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// //---------------------------------------------- // CEWallInteractionGroup functions //---------------------------------------------- #include "Foundation/console.h" #include template CEWallInteractionGroup::CEWallInteractionGroup(TML_Comm* comm):AWallInteractionGroup(comm) {} /*! Constructor for elastic wall interaction group \param comm the communicator \param wallp a pointer to the wall \param param the interaction parameters */ template CEWallInteractionGroup::CEWallInteractionGroup(TML_Comm* comm,CWall* wallp,const CEWallIGP* I) :AWallInteractionGroup(comm) { console.XDebug() << "making CEWallInteractionGroup \n"; m_k=I->getSpringConst(); this->m_wall=wallp; } template void CEWallInteractionGroup::calcForces() { console.XDebug() << "calculating " << m_interactions.size() << " elastic wall forces\n" ; for( typename vector >::iterator it=m_interactions.begin(); it != m_interactions.end(); it++ ){ it->calcForces(); } } template void CEWallInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CEWallInteractionGroup::Update()\n" ; console.XDebug() << "CEWallInteractionGroup::Update: wall origin = " << this->m_wall->getOrigin() << ", wall normal = " << this->m_wall->getNormal() << "\n" ; k_local=0.0; // empty particle list first m_interactions.erase(m_interactions.begin(),m_interactions.end()); this->m_inner_count=0; // build new particle list typename ParallelParticleArray::ParticleListHandle plh= PPA->getParticlesAtPlane(this->m_wall->getOrigin(),this->m_wall->getNormal()); for(typename ParallelParticleArray::ParticleListIterator iter=plh->begin(); iter!=plh->end(); iter++){ bool iflag=PPA->isInInner((*iter)->getPos()); m_interactions.push_back(CElasticWallInteraction(*iter,this->m_wall,m_k,iflag)); this->m_inner_count+=(iflag ? 1 : 0); } console.XDebug() << "end CEWallInteractionGroup::Update()\n"; } /*! Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions. \param F the force \warning Forces not perpendicular to the wall make no sense here, but this is not checked! */ template void CEWallInteractionGroup::applyForce(const Vec3& F) { // warn if trying to apply non-perpendicular force double par=F.unit()*this->m_wall->getNormal().unit(); // should be 1 if parallel if(par<1.0){ console.Warning() << "Force not parallel to wall normal in CEWallInteractionGroup::applyForce : " << F << " vs. " << this->m_wall->getNormal() << "\n"; } // warn if initial value of force is zero, which prevents convergence if(F.norm()==0.0){ console.Warning() << "No force applied to wall in CEWallInteractionGroup::applyForce, which will not converge. If ramping the force, start with a nonzero value.\n"; } int it=0; double d; // distance to move double df; // force difference double ef; // relative force error (df/|F|) Vec3 O_f=F.unit(); // direction of the applied force do{ //std::cerr << "iteration: " << it << std::endl; // calculate local stiffness k_local=0.0; for(typename vector >::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++){ k_local+=iter->getStiffness(); } //std::cerr << "local stiffness: " << k_local << std::endl; // get global K m_k_global=this->m_comm->sum_all(k_local); //std::cerr << "global stiffness: " << m_k_global << std::endl; if(m_k_global>0){ // calculate local F Vec3 F_local=Vec3(0.0,0.0,0.0); for ( typename vector >::iterator iter=m_interactions.begin(); iter!=m_interactions.end(); iter++ ){ if(iter->isInner()){ Vec3 f_i=iter->getForce(); F_local+=(f_i*O_f)*O_f; // add component of f_i in O_f direction } } //std::cerr << "local Force: " << F_local << std::endl; // get global F // by component (hack - fix later,i.e. sum_all for Vec3) double fgx=this->m_comm->sum_all(F_local.X()); double fgy=this->m_comm->sum_all(F_local.Y()); double fgz=this->m_comm->sum_all(F_local.Z()); Vec3 F_global=Vec3(fgx,fgy,fgz); //std::cerr << "global Force: " << F_global << std::endl; // calc necessary wall movement df=(F+F_global)*O_f; d=df/m_k_global; ef=df/F.norm(); // move the wall this->m_wall->moveBy(d*O_f); it++; } else { d=1e-5; ef=1; // move the wall this->m_wall->moveBy(d*O_f); it++; } } while((it<50)&&(ef>1e-3)); // check for convergence // warning message if no contact or high error after iteration if(ef>1e-3){ console.Warning() << "applyForce doesn't converge, global stiffness: " << m_k_global << " applied force: " << F << " wall normal: " << this->m_wall->getNormal() << "\n"; } } template ostream& operator<<(ostream& ost,const CEWallInteractionGroup& IG) { ost << "CEWallInteractionGroup" << endl << flush; ost << *(IG.m_wall) << endl << flush; return ost; } ./Model/EEdgeInteraction.h0000664000175000017500000000277612176660653015235 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EEDGEINTERACTION_H #define __EEDGEINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Edge.h" #include "Model/Particle.h" #include "Model/ETriMeshIP.h" /*! \class EEdgeInteraction \brief unbonded elastic interaction between a Edge in a TriangleMesh and a particle \author Steffen Abe $Revision$ $Date$ */ class EEdgeInteraction { private: CParticle *m_p; Edge *m_edge; double m_k; //!< spring constant /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: EEdgeInteraction(); EEdgeInteraction(CParticle*,Edge*,ETriMeshIP,bool iflag=true); virtual ~EEdgeInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); }; #endif // __EEDGEINTERACTION_H ./Model/ViscWallInteraction.hpp0000664000175000017500000000347412176660653016344 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_VISCWALLINTERACTION_HPP #define MODEL_VISCWALLINTERACTION_HPP #include "Model/ViscWallInteraction.h" /*! constructor with parameters \param p pointer to the particle \param w pointer to the wall \param k spring constant for the elastic interaction \param nu viscosity \param iflag inner flag */ template CViscWallInteraction::CViscWallInteraction(T* p,CWall* w,double nu,bool iflag): AWallInteraction(p,w,iflag) { m_nu=nu; } /*! calculate and apply viscous forces F=visc*vol*dv \warning Hack - currently using mass instead of volume */ template void CViscWallInteraction::calcForces() { Vec3 vp=this->m_p->getVel(); Vec3 vw=this->m_wall->getVel(); Vec3 force=m_nu*this->m_p->getMass()*(vp-vw); Vec3 pos=this->m_p->getPos(); this->m_p->applyForce(force,pos); if(this->m_inner_flag) this->m_wall->addForce(force); } /*! calculate and return, but don't apply the viscous force */ template Vec3 CViscWallInteraction::getForce() { Vec3 vp=this->m_p->getVel(); Vec3 vw=this->m_wall->getVel(); Vec3 force=m_nu*this->m_p->getMass()*(vw-vp); return force; } #endif ./Model/TempPartStore.h0000664000175000017500000000356512176660653014632 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __TEMPPARTSTORE_H #define __TEMPPARTSTORE_H // --- Project includes --- #include "vec3.h" // --- STL includes --- #include #include using std::map; using std::multimap; using std::pair; using std::make_pair; /*! \class ATempPartStore \brief pure virtual base for TTempPartStore */ class ATempPartStore { public: virtual ~ATempPartStore() {} virtual void addSlaveID(int,int,int,int)=0; virtual void addConnection(int,int,int)=0; }; /*! \class TTempPartStore \brief class for the temporary storage and distribution of particle data */ template class TTempPartStore : public ATempPartStore { private: multimap m_mmap; map::iterator> m_by_id; map m_slave_id_map; double m_xmin,m_xsize,m_ymin,m_ysize,m_zmin,m_zsize; int m_nx,m_ny,m_nz; int coordsToIndex(int,int,int); int posToIndex(const Vec3&); public: TTempPartStore(const Vec3&,const Vec3&, int,int,int); virtual void addSlaveID(int,int,int,int); virtual void addParticle(const T&); virtual void addConnection(int,int,int); const multimap& getMap() const {return m_mmap;}; }; #include "TempPartStore.hpp" #endif //__TEMPPARTSTORE_H ./Model/BodyForceGroup.cpp0000664000175000017500000000604412176660653015300 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BodyForceGroup.h" namespace esys { namespace lsm { BodyForceIGP::BodyForceIGP() : AIGParam(), m_acceleration() { } BodyForceIGP::BodyForceIGP(const std::string &name, const Vec3 &acceleration) : AIGParam(name), m_acceleration(acceleration) { } BodyForceIGP::~BodyForceIGP() { } const Vec3 &BodyForceIGP::getAcceleration() const { return m_acceleration; } const std::string &BodyForceIGP::getName() const { return Name(); } void BodyForceIGP::packInto(CVarMPIBuffer *pBuffer) const { pBuffer->append(getName().c_str()); pBuffer->append(m_acceleration.X()); pBuffer->append(m_acceleration.Y()); pBuffer->append(m_acceleration.Z()); } BodyForceIGP BodyForceIGP::extract(CVarMPIBuffer *pBuffer) { const std::string name = pBuffer->pop_string(); const double x = pBuffer->pop_double(); const double y = pBuffer->pop_double(); const double z = pBuffer->pop_double(); return BodyForceIGP(name, Vec3(x, y, z)); } BuoyancyIGP::BuoyancyIGP (const std::string &name, const Vec3 &acceleration, const double &fluidDensity, const double &fluidHeight) : AIGParam(name), m_acceleration(acceleration), m_fluidDensity (fluidDensity), m_fluidHeight (fluidHeight) { } const Vec3 &BuoyancyIGP::getAcceleration() const { return m_acceleration; } const double &BuoyancyIGP::getFluidDensity() const { return m_fluidDensity; } const double &BuoyancyIGP::getFluidHeight() const { return m_fluidHeight; } void BuoyancyIGP::packInto(CVarMPIBuffer *pBuffer) const { pBuffer->append(getName().c_str()); pBuffer->append(m_acceleration.X()); pBuffer->append(m_acceleration.Y()); pBuffer->append(m_acceleration.Z()); pBuffer->append(m_fluidDensity); pBuffer->append(m_fluidHeight); } BuoyancyIGP BuoyancyIGP::extract(CVarMPIBuffer *pBuffer) { const std::string name = pBuffer->pop_string(); const double x = pBuffer->pop_double(); const double y = pBuffer->pop_double(); const double z = pBuffer->pop_double(); const double fluidDensity = pBuffer->pop_double(); const double fluidHeight = pBuffer->pop_double(); return BuoyancyIGP(name, Vec3(x, y, z), fluidDensity, fluidHeight); } } } ./Model/BondedInteractionCpData.h0000664000175000017500000000371712176660653016530 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BONDEDINTERACTIONCPDATA_H #define __BONDEDINTERACTIONCPDATA_H #include "Parallel/CheckPointable.h" class CBondedInteraction; class CRotBondedInteraction; class CRotThermBondedInteraction; /** * Helper class for checkpointing BondedInteraction data. */ class BondedInteractionCpData : public esys::lsm::CheckPointable { public: typedef int ParticleId; typedef int InteractionTag; BondedInteractionCpData(); virtual ~BondedInteractionCpData() { } BondedInteractionCpData(const CBondedInteraction &bondedInteraction); BondedInteractionCpData(const CRotBondedInteraction &bondedInteraction); BondedInteractionCpData(const CRotThermBondedInteraction &bondedInteraction); BondedInteractionCpData( ParticleId particle1Id, ParticleId particle2Id, InteractionTag interactionTag ); void set(const CBondedInteraction &bondedInteraction); void set(ParticleId particle1Id, ParticleId particle2Id, InteractionTag interactionTag); ParticleId getP1Id() const; ParticleId getP2Id() const; InteractionTag getTag() const; virtual void saveCheckPointData(std::ostream &oStream); virtual void loadCheckPointData(std::istream &iStream); private: ParticleId m_p1Id; ParticleId m_p2Id; InteractionTag m_tag; }; #endif //__BONDEDINTERACTIONCPDATA_H ./Model/RotThermFricInteraction.h0000664000175000017500000001045012176660653016620 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTTHERMFRICTIONINTERACTION_H #define __ROTTHERMFRICTIONINTERACTION_H // -- project includes -- #include "Model/RotThermPairInteraction.h" #include "Model/RotThermParticle.h" #include "Model/InteractionParam.h" #include "Foundation/vec3.h" #include "Model/IGParam.h" // -- I/O includes -- #include using std::ostream; //double calc_angle( double , double ) ; /*! Interaction parameters for frictional interaction between Thermal,rotational particles */ struct CRotThermFrictionIGP : public AIGParam { CRotThermFrictionIGP(); CRotThermFrictionIGP( const std::string &name, double k, double mu_d, double mu_s, double k_s, double diffusivity, double dt ); double k; double mu_d; // sliding frictional coefficient double mu_s; // max static frictional coefficient double k_s; double dt; double diffusivity ; virtual std::string getTypeString() const { return "RotThermFriction"; } inline void setTimeStepSize(double deltaT) { dt = deltaT; } }; /*! Frictional+Elastic interaction between particles between thermal ,rotational particles */ class CRotThermFrictionInteraction : public ARotThermPairInteraction { public: // types typedef CRotThermFrictionIGP ParameterType; typedef double (CRotThermFrictionInteraction::* ScalarFieldFunction)() const; typedef pair (CRotThermFrictionInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotThermFrictionInteraction::* VectorFieldFunction)() const; static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); inline void setTimeStepSize(double deltaT) { m_dt = deltaT; } // protected: private: double m_k; //!< spring constant double m_r0; //!< equilibrium distance double m_mu_d; //!< coefficient of dynamic friction double m_mu_s; //!< coefficient of static friction double m_ks; //!< shear stiffness (Cundall) double m_dt; //!< time step Vec3 m_Ffric; //!< current frictional force Vec3 m_force_deficit; //!< difference between fric. force & force necessary for slip Vec3 m_cpos; //!< contact position Vec3 m_normal_force; //!< current normal force bool m_is_slipping; //!< static/dynamic status of the interaction bool m_is_touching; //!< contact status of the interaction double m_E_diss; //!< dissipated energy double m_diffusivity; //!< thermal diffusivity Vec3 m_ds; //!< tangitial displacement at this time step //Quaternion m_init_q1, m_init_q2; //Vec3 m_init_pos1 , m_init_pos2; public: CRotThermFrictionInteraction(); CRotThermFrictionInteraction(CRotThermParticle*,CRotThermParticle*,const CRotThermFrictionIGP&); virtual ~CRotThermFrictionInteraction(); static string getType() {return "RotThermFriction";}; virtual void calcForces(); void calcHeatFrict(); void calcHeatTrans(); virtual bool isPersistent(); void calcNormalForce(); double getAbsForceDeficit()const; double getPotentialEnergy()const; double getSlipping()const; double getTouching()const; double getSticking()const; double getDissipatedEnergy() const; inline Vec3 getDs() {return m_ds;} virtual Vec3 getPos() const {return m_cpos;} Vec3 getForce() const; Vec3 getNormalForce() const; friend ostream& operator<<(ostream&,const CRotThermFrictionInteraction&); friend class TML_PackedMessageInterface; // checkpointing virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__ROTFRICTIONINTERACTION_H ./Model/FrictionInteraction.h0000664000175000017500000001027712176660653016034 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __FRICTIONINTERACTION_H #define __FRICTIONINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" #include "Foundation/vec3.h" #include #include /*! \brief Interaction parameters for frictional interaction */ class CFrictionIGP : public AIGParam { public: CFrictionIGP(); CFrictionIGP(const std::string &name, double normalK, double fricCoef, double shearK, double dT,bool scaling=true); virtual std::string getTypeString() const {return "Friction";} void setTimeStepSize(double dt); double k; double mu; double k_s; double dt; bool m_scaling; }; /*! \class CFrictionInteraction \brief Frictional+Elastic interaction between particles \author Steffen Abe $Revision$ $Date$ */ class CFrictionInteraction : public APairInteraction { public: // types typedef CFrictionIGP ParameterType; typedef double (CFrictionInteraction::* ScalarFieldFunction)() const; typedef std::pair (CFrictionInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CFrictionInteraction::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); protected: double m_k; //!< spring constant double m_r0; //!< equilibrium distance double m_mu; //!< coefficient of friction double m_ks; //!< shear stiffness (Cundall) double m_dt; //!< time step Vec3 m_Ffric; //!< current frictional force Vec3 m_force_deficit; //!< difference between fric. force & force necessary for slip Vec3 m_cpos; //!< contact position Vec3 m_normal_force; //!< current normal force bool m_is_slipping; //!< static/dynamic status of the interaction bool m_is_touching; //!< contact status of the interaction double m_E_diss; //!< dissipated energy bool m_scaling; //!< scaling k with particle radius public: CFrictionInteraction(); CFrictionInteraction(CParticle*,CParticle*); CFrictionInteraction(CParticle*,CParticle*,const CFrictionIGP&); virtual ~CFrictionInteraction(); static string getType() {return "Friction";}; virtual void calcForces(); virtual bool isPersistent(); void setTimeStepSize(double dt); std::pair getAbsFrictionalForce() const; std::pair getAbsFN() const; std::pair getAbsMuFN() const; std::pair getSlipVelocity() const; std::pair getNormalStress() const; std::pair getMaxFricStress() const; std::pair getAbsFrictionalStress() const; double getAbsForceDeficit() const; double getPotentialEnergy() const; double getSlipping()const; double getSticking()const; double getDissipatedEnergy() const; virtual double Count() const; Vec3 getForce() const; Vec3 getNormalForce() const; virtual Vec3 getPos() const {return m_cpos;}; std::pair getMuEff(const Vec3&,const Vec3&) const; std::pair getMuEffXY() const {return getMuEff(Vec3(1.0,0.0,0.0),Vec3(0.0,1.0,0.0));}; std::pair getMuEffXZ() const {return getMuEff(Vec3(1.0,0.0,0.0),Vec3(0.0,0.0,1.0));}; friend std::ostream& operator<<(std::ostream&,const CFrictionInteraction&); friend class TML_PackedMessageInterface; // save/load of restart parameters virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__FRICTIONINTERACTION_H ./Model/ETriMeshIP.h0000664000175000017500000000274512176660653013771 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ETRIMESHIP_H #define __ETRIMESHIP_H class ETriMeshIP { public: ETriMeshIP() : k(0.0), m_name(), m_meshName() { } virtual ~ETriMeshIP() { } ETriMeshIP( const std::string &interactionName, const std::string &meshName, double normalK ) : k(normalK), m_name(interactionName), m_meshName(meshName) { } void setName(const std::string &name) { m_name = name; } const std::string &getName() const { return m_name; } void setMeshName(const std::string &name) { m_meshName = name; } const std::string &getMeshName() const { return m_meshName; } virtual std::string getTypeString() const { return "Elastic"; } public: double k; private: std::string m_name; std::string m_meshName; }; #endif // __ETRIMESHIP_H ./Model/Damping.h0000664000175000017500000000537712176660653013443 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_DAMPING_H #define MODEL_DAMPING_H // -- project includes -- #include "Model/DampingIGP.h" #include "Foundation/vec3.h" #include "Foundation/quintuple.h" class CVarMPIBuffer; class AMPIBuffer; /*! \brief Damping of the particle motion by an artificial viscosity */ template class CDamping { protected: T *m_p; //!< the particle Vec3 m_vref; //!< reference velocity double m_visc; //!< artificial viscosity double m_dt; //!< time step int m_maxiter; //!< iteration limit double m_E_diss; //!< dissipated energy Vec3 m_force; //!< current force static double s_limit2; //!< square error limit for iteration static int s_flops; public: typedef CDampingIGP ParameterType; typedef double (CDamping::* ScalarFieldFunction)() const; typedef pair (CDamping::* CheckedScalarFieldFunction)() const; typedef Vec3 (CDamping::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); CDamping(T*,const Vec3&,double,double,int); // to be obsoleted CDamping(T*,const CDampingIGP&); CDamping(T*,CDampingIGP*); virtual ~CDamping(); inline void setLimit(double limit){s_limit2=limit*limit;}; void setTimeStepSize(double dt); virtual void calcForces(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p->getPos();}; virtual Vec3 getPosSecond() const {return Vec3(0.0,0.0,0.0);}; virtual Vec3 getPos() const {return m_p->getPos();}; vector getAllID() const; esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p->getPos(), m_p->getRad(), Vec3::ZERO, 0, getPos() ); } static void zeroFlops(){s_flops=0;}; static int Flops(){return s_flops;}; double getDissipatedEnergy() const; Vec3 getForce() const; }; #include "Model/Damping.hpp" #endif //__DAMPING_H ./Model/EWallInteraction.h0000664000175000017500000000267312176660653015264 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EWALLINTERACTION_H #define __EWALLINTERACTION_H #include "Model/WallInteraction.h" #include "Model/Wall.h" #include "Model/Particle.h" #include "Model/RotParticle.h" /*! \class CElasticWallInteraction \brief unbonded elastic interaction between a particle and a wall \author Steffen Abe $Revision$ $Date$ */ template class CElasticWallInteraction : public AWallInteraction { protected: double m_k;//!< spring constant public: CElasticWallInteraction(); CElasticWallInteraction(T*,CWall*,double,bool); virtual ~CElasticWallInteraction(){}; virtual void calcForces(); virtual Vec3 getForce(); virtual void setPP(const vector){}; virtual double getStiffness(); }; #include "EWallInteraction.hpp" #endif //__EWALLINTERACTION_H ./Model/ShortBondedInteraction.h0000664000175000017500000000476712176660653016501 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __SHORTBONDEDINTERACTION_H #define __SHORTBONDEDINTERACTION_H // -- project includes -- #include "Model/IGParam.h" // keep this one first - it drags in mpi.h #include "Model/Interaction.h" #include "Model/Particle.h" #include "Model/BondedInteraction.h" #include "Model/ShortBondedInteractionCpData.h" #include "Foundation/vec3.h" /*! \brief class for a "short" bonded interaction A bonded interaction where the equilibrium distance is not determined by the radii of the particles but by the initial distance, i.e. it allows for overlapping particles. Uses the same parameter class as "normal" bonded interactions */ class CShortBondedInteraction : public CBondedInteraction { public: // types typedef CBondedIGP ParameterType; /** * Used by PIS to save/load check-point data for objects of this type. */ typedef ShortBondedInteractionCpData CheckPointable; typedef double (CShortBondedInteraction::* ScalarFieldFunction)() const; typedef pair (CShortBondedInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CShortBondedInteraction::* VectorFieldFunction)() const; private: public: CShortBondedInteraction(); CShortBondedInteraction(CParticle*,CParticle*,const CBondedIGP&); virtual ~CShortBondedInteraction(); static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static string getType() {return "ShortBonded";}; double getEquiDist() const {return m_r0;}; void saveCheckPointData(std::ostream &oStream); void loadCheckPointData(std::istream &iStream); friend ostream& operator<<(ostream&,const CBondedInteraction&); friend class TML_PackedMessageInterface; }; #endif // __SHORTBONDEDINTERACTION_H ./Model/ABCDamping.hpp0000664000175000017500000000516612176660653014305 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_ABCDAMPING_HPP #define MODEL_ABCDAMPING_HPP #include using std::fabs; using std::exp; /*! Construct a damping "interaction" for a particle \param P the particle \param param the parameters */ template ABCDamping::ABCDamping(ParticleType* P, ABCDampingIGP* param) : CDamping(P,param) { // calc local viscosity Vec3 pos=param->getPos(); Vec3 normal=param->getNormal(); double c1=param->getC1(); double v_0=this->m_visc; double dist=fabs((this->m_p->getInitPos()-pos)*normal); double v_new=v_0/exp(dist*c1); this->m_visc=v_new; } template ABCDamping::~ABCDamping() {} /* Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ template typename ABCDamping::ScalarFieldFunction ABCDamping::getScalarFieldFunction(const string& name) { typename ABCDamping::ScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ template typename ABCDamping::CheckedScalarFieldFunction ABCDamping::getCheckedScalarFieldFunction(const string& name) { typename ABCDamping::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ template typename ABCDamping::VectorFieldFunction ABCDamping::getVectorFieldFunction(const string& name) { typename ABCDamping::VectorFieldFunction vf; vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; return vf; } #endif //MODEL_ABCDAMPING_HPP ./Model/BTriangleInteraction.h0000664000175000017500000000411712176660653016122 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BTRIANGLEINTERACTION_H #define __BTRIANGLEINTERACTION_H // -- Project includes -- #include "Foundation/vec3.h" #include "Geometry/Triangle.h" #include "Model/Particle.h" #include "Model/BTriMeshIP.h" #include "Model/BTriMeshInteractionCpData.h" /*! \class BTriangleInteraction \brief bonded elastic interaction between a Triangle and a particle \author Steffen Abe $Revision$ $Date$ */ class BTriangleInteraction { private: CParticle *m_p; Triangle *m_t; double m_k; double m_break; double m_dist; int m_tid; int m_pid; Vec3 m_ap; // anchor point in local triangle coords. /*! flag showing if particle is in the inner area of the local particle array - needed for global force summation */ bool m_inner_flag; public: typedef BTriMeshIP ParameterType; typedef BTriMeshInteractionCpData CheckPointable; BTriangleInteraction(); BTriangleInteraction(CParticle*,Triangle*,BTriMeshIP,bool iflag=true); virtual ~BTriangleInteraction(); bool isInner(){return m_inner_flag;}; virtual void calcForces(); bool broken(); virtual Vec3 getPos()const {return m_p->getPos();}; // ?? inline int getPid() const {return m_pid;}; inline int getTid() const {return m_tid;}; Vec3 getAP() const; virtual void setPP(CParticle* part_p){m_p=part_p;}; virtual void setTP(Triangle* tri_p){m_t=tri_p;}; friend class TML_PackedMessageInterface; }; #endif //__BTRIANGLEINTERACTION_H ./Model/BWallInteraction.cpp0000664000175000017500000000132112176660653015601 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/BWallInteraction.h" ./Model/ElasticInteraction.cpp0000664000175000017500000001070312176660653016170 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ElasticInteraction.h" #include "console.h" CElasticIGP::CElasticIGP():AIGParam(), m_k(0.0) {} CElasticIGP::CElasticIGP(const std::string& name,double kn, bool scaling) : AIGParam(name), m_k(kn), m_scaling(scaling) {} CElasticInteraction::CElasticInteraction( CParticle* p1, CParticle* p2, const CElasticIGP& param ) : APairInteraction(p1,p2) { double effR=1.0; double effA=1.0; double effL=1.0; // effective radius, cross section and length of the interaction for scaling // equilibrium distance double r0=p1->getRad()+p2->getRad(); m_scaling = param.m_scaling; // scale elastic param if (m_scaling) { if(!CParticle::getDo2dCalculations()){ effR=0.5*r0; } effL=r0; effA = effR * effR; } m_k=param.m_k*effA/effL; m_force=Vec3(0.0,0.0,0.0); } /*! Calculate free elastic forces. 23 Flops if in contact, 10 Flops if not */ void CElasticInteraction::calcForces() { // console.XDebug() << "elastic interaction: [" << m_p1->getID() << " - " << m_p2->getID() << "]" << m_p1->getPos() << m_p2->getPos() << "\n"; Vec3 D=m_p1->getPos()-m_p2->getPos(); double dist=D*D; double eq_dist=m_p1->getRad()+m_p2->getRad(); if(dist<(eq_dist*eq_dist)){ dist=sqrt(dist); m_force=D*(m_k*(dist-eq_dist)/dist); Vec3 pos=m_p2->getPos()+(m_p2->getRad()/eq_dist)*D; m_p2->applyForce(m_force,pos); m_p1->applyForce(-1.0*m_force,pos); m_cpos=pos; } } /*! get the potential energy stored in the interaction */ double CElasticInteraction::getPotentialEnergy() const { double e_pot_norm=0.5*m_force*m_force/m_k; return e_pot_norm; } Vec3 CElasticInteraction::getForce() const { return m_force; } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CElasticInteraction::ScalarFieldFunction CElasticInteraction::getScalarFieldFunction(const string& name) { CElasticInteraction::ScalarFieldFunction sf; if (name=="potential_energy") { sf=&CElasticInteraction::getPotentialEnergy; } else if (name=="count") { sf=&CElasticInteraction::Count; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CElasticInteraction::CheckedScalarFieldFunction CElasticInteraction::getCheckedScalarFieldFunction(const string& name) { CElasticInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CElasticInteraction::VectorFieldFunction CElasticInteraction::getVectorFieldFunction(const string& name) { CElasticInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CElasticInteraction::getForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! save restart data to ostream \param oStream the output stream */ void CElasticInteraction::saveRestartData(std::ostream &oStream) { oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_init << " "; oStream << m_k << " "; oStream << m_scaling; } /*! load restart data from stream \param iStream the input stream */ void CElasticInteraction::loadRestartData(std::istream &iStream) { iStream >> m_id[0]; iStream >> m_id[1]; iStream >> m_init ; iStream >> m_k; iStream >> m_scaling; } ostream& operator<<(ostream& ost,const CElasticInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/RotThermElasticInteractionGroup.hpp0000664000175000017500000001257112176660653020704 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ppa/src/pp_array.h" //---------------------------------------------- // CElasticInteractionGroup functions //---------------------------------------------- template CRotThermElasticInteractionGroup::CRotThermElasticInteractionGroup() { m_exIG=NULL; this->m_update_timestamp=0; } template CRotThermElasticInteractionGroup::CRotThermElasticInteractionGroup(const CRotThermElasticIGP* Param) { m_exIG=NULL; this->m_kr=Param->getSpringConst(); m_diffusivity = Param->getDiffusivity() ; this->m_update_timestamp=0; } template void CRotThermElasticInteractionGroup::setParam(const CRotThermElasticIGP* Param) { this->m_kr=Param->getSpringConst(); m_diffusivity = Param->getDiffusivity() ; } template void CRotThermElasticInteractionGroup::calcForces() { console.Debug() << "calculating " << m_interactions.size() << " elastic forces\n" ; for(vector::iterator it=m_interactions.begin();it!=m_interactions.end();it++){ it->calcForces(); } } /*! Update the interactions from the neighbortable. If the ParallelParticleArray has been rebuild since the last update, the interactiongroup is cleared and rebuild from scratch. Otherwise only new interactions are added. */ template void CRotThermElasticInteractionGroup::Update(ParallelParticleArray* PPA) { console.XDebug() << "CElasticInteractionGroup::Update\n"; int count_l=0; if(this->m_update_timestamp!=PPA->getTimeStamp()){// PPA rebuild since last update // clean out old interactions m_interactions.erase(m_interactions.begin(),m_interactions.end()); this->m_set.erase(this->m_set.begin(),this->m_set.end()); // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getFullPairList(); // generate interactions from pairs for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(m_exIG!=NULL){ if(!this->m_exIG->isIn(tv)){ m_interactions.push_back(CRotThermElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug()<<"not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CRotThermElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } else { // PPA not rebuild since last update -> just get additional interactions // get list of pairs from PPA typename ParallelParticleArray::PairListHandle plh=PPA->getNewPairList(); for(typename ParallelParticleArray::PairListIterator iter=plh->begin(); iter!=plh->end(); iter++){ // check vs. ExIG vector tv; tv.push_back(iter->first->getID()); tv.push_back(iter->second->getID()); if(this->m_exIG!=NULL){ if(!this->m_exIG->isIn(tv)){ m_interactions.push_back(CRotThermElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; count_l++; } else { console.XDebug()<<"not adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } else { m_interactions.push_back(CRotThermElasticInteraction(iter->first,iter->second,m_k)); this->m_set.insert(pair(iter->first->getID(),iter->second->getID())); console.XDebug()<<"adding pair: " << iter->first->getID() << " - " << iter->second->getID() << "\n"; } } } this->m_update_timestamp=PPA->getTimeStamp(); console.XDebug() << "added " << count_l << " pairs to EIG\n"; console.XDebug() << "end CElasticInteractionGroup::Update\n"; } template ostream& operator<<(ostream& ost,const CRotThermElasticInteractionGroup& E) { ost << "CElasticInteractionGroup : \n"; for(vector::const_iterator it=E.m_interactions.begin();it!=E.m_interactions.end();it++){ ost << *it << " , " ; } ost << "exchange list: \n"; for(set >::const_iterator vit=E.m_exchg_list.begin();vit!=E.m_exchg_list.end();vit++){ ost << "[ " << vit->first << " from " << vit->second << " ] , "; } return ost; } ./Model/EWallInteractionGroup.h0000664000175000017500000000465312176660653016301 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __EWALLINTERACTIONGROUP_H #define __EWALLINTERACTIONGROUP_H //--- project includes --- #include "Model/EWallInteraction.h" #include "Model/WallIG.h" #include "Model/ElasticInteractionGroup.h" #include "Model/IGParam.h" template class ParallelParticleArray; //--- STL includes --- #include using std::map; /*! \brief Interaction group parameters for CEWallInteractionGroups */ class CEWallIGP : public CElasticIGP { protected: std::string m_wallname; public: CEWallIGP(const std::string&,const std::string&,double); virtual void packInto(CVarMPIBuffer*) const; std::string getWallName() const {return m_wallname;}; friend ostream& operator<<(ostream&,const CEWallIGP&); }; CEWallIGP* extractEWallIGP(AMPIBuffer*); // --- Forward decl --- template class CEWallInteractionGroup; template ostream& operator<< (ostream &, const CEWallInteractionGroup &); /*! \brief Class for a group of unbonded,elastic interactions between particles and a wall */ template class CEWallInteractionGroup : public AWallInteractionGroup { protected: vector > m_interactions; double m_k; //!< Elastic modulus double m_k_global; //!< total wall stiffness double k_local; public: CEWallInteractionGroup(TML_Comm*); CEWallInteractionGroup(TML_Comm*,CWall*,const CEWallIGP*); virtual ~CEWallInteractionGroup(){} /** * Null op, time step size not required. */ virtual void setTimeStepSize(double dt) { } virtual void calcForces(); virtual void applyForce(const Vec3&); virtual void Update(ParallelParticleArray*); friend ostream& operator<< <>(ostream &, const CEWallInteractionGroup &); }; #include "EWallInteractionGroup.hpp" #endif //__EWALLINTERACTIONGROUP_H ./Model/EWallInteraction.hpp0000664000175000017500000000645312176660653015624 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_EWALLINTERACTION_HPP #define MODEL_EWALLINTERACTION_HPP /*! constructor for elastic interaction between particle & wall \param p pointer to the particle \param w pointer to the wall \param k spring constant \param iflag flag if the particle is in the inner part of the local NTable */ template CElasticWallInteraction::CElasticWallInteraction(T* p,CWall* w,double k,bool iflag): AWallInteraction(p,w,iflag) { double f=1.0;//this->m_p->getRad();; // scale elastic param if(!CParticle::getDo2dCalculations()){ // f*=this->m_p->getRad(); f*=3.141592654*this->m_p->getRad(); } m_k=f*k; } /*! calculate free elastic forces. */ template void CElasticWallInteraction::calcForces() { double dist=(this->m_p->getPos()-this->m_wall->getOrigin())*this->m_wall->getNormal(); // console.XDebug() << "pos, rad, dist: " << this->m_p->getPos() << " " << this->m_p->getRad() << " " << dist << "\n"; if(distm_p->getRad()){ Vec3 force=m_k*(this->m_p->getRad()-dist)*this->m_wall->getNormal(); Vec3 pos=this->m_p->getPos()-dist*this->m_wall->getNormal(); /* Vec3 disp = this->m_p->getPos()- this->m_p->getOldPos() ; Vec3 x_d = Vec3(1.0,0.0,0.0); Vec3 y_d = Vec3(0.0,1.0,0.0); Vec3 fy_vert = -m_k*disp.Y()*y_d; Vec3 fx_vert = -m_k*disp.X()*x_d; force = force+ fx_vert + fy_vert ;*/ // friction wall /* Vec3 x_d = Vec3(1.0,0.0,0.0); Vec3 y_d = Vec3(0.0,1.0,0.0); Vec3 fx_vert, fy_vert ; double miu = 1.0; if ( this->m_p->getVel().X() >0.0) fx_vert = - miu*force.norm()*x_d; else fx_vert = miu*force.norm()*x_d; if ( this->m_p->getVel().Y() >0.0) fy_vert = - miu*force.norm()*y_d; else fy_vert = miu*force.norm()*y_d; force = force+ fx_vert + fy_vert ; */ this->m_p->applyForce(force,pos); if(this->m_inner_flag) this->m_wall->addForce(-1.0*force); } } /*! calculate & return free elastic forces, don't apply them */ template Vec3 CElasticWallInteraction::getForce() { Vec3 force=Vec3(0.0,0.0,0.0); double dist=(this->m_p->getPos()-this->m_wall->getOrigin())*this->m_wall->getNormal(); if(distm_p->getRad()){ force=m_k*(this->m_p->getRad()-dist)*this->m_wall->getNormal(); } return -1.0*force; } /*! Get stiffness of the interaction. Returns spring constant (m_k) if interaction is in contact, 0.0 otherwise. */ template double CElasticWallInteraction::getStiffness() { double res=0.0; double dist=(this->m_p->getPos()-this->m_wall->getOrigin())*this->m_wall->getNormal(); if(distm_p->getRad()){ res=m_k; } return res; } #endif ./Model/RotBondedInteraction.cpp0000664000175000017500000005046012176660653016470 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2012 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "Model/RotBondedInteraction.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" #include double calc_angle( double s_in, double c_os) { double angle; if (s_in >0.0) { if ( c_os>=1.0 ||c_os<=-1.0) { angle = 0.0; } else { angle = acos(c_os); } } else if (s_in==0.0) { angle = 0.0; } else { if ( c_os>=1.0 ||c_os<=-1.0) { angle = 0.0; } else { angle = - acos(c_os); } } return angle ; } CRotBondedIGP::CRotBondedIGP() : AIGParam(), kr(0.0), ks(0.0), kt(0.0), kb(0.0), max_nForce(0.0), max_shForce(0.0), max_tMoment(0.0), max_bMoment(0.0), tag(0), scaling(true), meanR_scaling(true), truncated(1.0) { } CRotBondedIGP::CRotBondedIGP( const std::string &name, double kr, double ks, double kt, double kb, double max_nForce, double max_shForce, double max_tMoment, double max_bMoment, int tag, bool scaling, bool AmeanR_scaling, double truncated ) : AIGParam(name), kr(kr), ks(ks), kt(kt), kb(kb), max_nForce(max_nForce), max_shForce(max_shForce), max_tMoment(max_tMoment), max_bMoment(max_bMoment), tag(tag), scaling(scaling), meanR_scaling(AmeanR_scaling), truncated(truncated) { } CRotBondedIGP::CRotBondedIGP( const std::string &name, double youngsModulus, double poissonsRatio, double cohesion, double tanAngle, int tag, bool AmeanR_scaling, double truncated ) : AIGParam(name), tag(tag), scaling(true), meanR_scaling(AmeanR_scaling), truncated(truncated) { double shearModulus = youngsModulus / (2.0*(1.+poissonsRatio)); kr = M_PI*youngsModulus; ks = M_PI*shearModulus; kb = M_PI*youngsModulus; kt = M_PI*shearModulus; max_nForce = M_PI*cohesion/tanAngle; max_shForce = M_PI*cohesion; max_bMoment = M_PI*cohesion/tanAngle; max_tMoment = M_PI*cohesion; } CRotBondedInteraction::CRotBondedInteraction():ARotPairInteraction() { m_kr = 0.0 ; m_ks = 0.0 ; m_kb = 0.0 ; m_kt = 0.0 ; m_max_nForce = 0.0 ; m_max_shForce = 0.0 ; m_max_tMoment = 0.0 ; m_max_bMoment = 0.0 ; m_nForce = 0.0 ; m_shForce = 0.0; m_tMoment = 0.0; m_bMoment = 0.0; m_moment = Vec3(0.0,0.0,0.0); m_force = Vec3(0.0,0.0,0.0); m_tag = 0; m_scaling = true; m_meanR_scaling = true; m_truncated = 1.0; } CRotBondedInteraction::CRotBondedInteraction(CRotParticle* p1,CRotParticle* p2,const CRotBondedIGP& param):ARotPairInteraction(p1,p2) { m_nForce = 0.0; m_shForce = 0.0; m_tMoment = 0.0; m_bMoment = 0.0; m_D = p2->getPos()-p1->getPos(); m_dist=sqrt(m_D*m_D); double effR=1.0; double effL=1.0; double effA=1.0; double momentJ=1.0; double momentI=1.0; m_scaling = param.scaling; m_meanR_scaling = param.meanR_scaling; // scale elastic param if (m_scaling == true) { if(!CParticle::getDo2dCalculations()){ if (m_meanR_scaling == true) { effR=0.5*m_dist; } else { effR=fmin(p1->getRad(), p2->getRad()); } effL = m_dist; effA = effR * effR; momentJ = 0.5 * effR * effR * effR * effR; momentI = 0.5 * momentJ; } } m_kr = param.kr * effA / effL; m_ks = param.ks * effA / effL; m_kb = param.kb * momentI / effL; m_kt = param.kt * momentJ / effL; m_max_nForce = param.max_nForce * effA; m_max_shForce = param.max_shForce * effA; m_max_bMoment = param.max_bMoment * momentI / effR; m_max_tMoment = param.max_tMoment * momentJ / effR; m_force = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0) ; m_tag = param.tag; m_truncated = param.truncated; } int CRotBondedInteraction::getTag() const { return m_tag; } void CRotBondedInteraction::setTag(int tag) { m_tag = tag; } CRotBondedInteraction::~CRotBondedInteraction() { } /*! Check if the fracture criterion has been exceeded. If so, flag the particles (for the rebuilding of the other interactions) and return "true", so the update of this interaction group can remove the interaction. */ bool CRotBondedInteraction::broken() { double shearStress, normalStress; bool res; /* // Original failure criterion: const double crit_nf = (m_nForce/m_max_nForce > 0.0) ? m_nForce/m_max_nForce :0.0; const double criterion = crit_nf + m_shForce/m_max_shForce + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment; */ /* // Mohr-Coulomb-like failure criterion: const double criterion = m_nForce/m_max_nForce + m_shForce/m_max_shForce + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment; if(criterion > 1.0) { // broken if (m_p1!=NULL) m_p1->setFlag(); if (m_p2!=NULL) m_p2->setFlag(); res=true; } else { res=false; } */ // direct Mohr-Coulomb failure criterion: shearStress = m_shForce/m_max_shForce + m_tMoment/m_max_tMoment ; normalStress = m_nForce/m_max_nForce + m_bMoment/m_max_bMoment ; if ((normalStress > m_truncated) || (shearStress > (1.0 - normalStress))) { // broken if (m_p1!=NULL) m_p1->setFlag(); if (m_p2!=NULL) m_p2->setFlag(); res=true; } else { res=false; } return res; } double CRotBondedInteraction::getCriterion() const { return m_nForce/m_max_nForce + m_shForce/m_max_shForce + m_tMoment/m_max_tMoment + m_bMoment/m_max_bMoment; } Vec3 CRotBondedInteraction::getInitialCentrePtDiff() const { return m_p2->getInitPos() - m_p1->getInitPos(); } Vec3 CRotBondedInteraction::getCentrePtDiff() const { return m_p2->getPos() - m_p1->getPos(); } Vec3 CRotBondedInteraction::getInitialMidPoint() const { const Vec3 initialDiff = getInitialCentrePtDiff(); const Vec3 normalisedDiff = initialDiff*(1.0/initialDiff.norm()); return 0.5*((m_p1->getInitPos() + normalisedDiff*m_p1->getRad()) + (m_p2->getInitPos() - normalisedDiff*m_p2->getRad())); } Vec3 CRotBondedInteraction::getP2ShearForcePt() const { return m_p2->getPos() + (m_p2->getQuat().to_matrix()*(getInitialMidPoint()-m_p2->getInitPos())); } Vec3 CRotBondedInteraction::getP1ShearForcePt() const { return m_p1->getPos() + (m_p1->getQuat().to_matrix()*(getInitialMidPoint()-m_p1->getInitPos())); } Vec3 CRotBondedInteraction::getShearDiff() const { const Vec3 p1Pt = getP1ShearForcePt(); const Vec3 p2Pt = getP2ShearForcePt(); const Vec3 ptDiff = p2Pt-p1Pt; const Vec3 rotatedInitialDiffDirection = p1Pt - m_p1->getPos(); //getCentrePtDiff(); return (ptDiff - (((ptDiff*rotatedInitialDiffDirection)/rotatedInitialDiffDirection.norm2())*rotatedInitialDiffDirection)); } Vec3 CRotBondedInteraction::getContactPoint() const { const Vec3 centrePtDiff = getCentrePtDiff(); const Vec3 normalisedDiff = centrePtDiff*(1.0/centrePtDiff.norm()); return 0.5*((m_p1->getPos() + normalisedDiff*m_p1->getRad()) + (m_p2->getPos() - normalisedDiff*m_p2->getRad())); } #if 0 Vec3 getTangent(const Vec3 &r, const Vec3 &f) { return (f.norm2() > 0) ? (f - ((r*f)/f.norm2())*r) : Vec3::ZERO; } void CRotBondedInteraction::calcForces() { // Calculate linear elastic force, no moment const Vec3 currentDiff = m_p2->getPos() - m_p1->getPos(); const double currentDiffNorm = currentDiff.norm(); const Vec3 initialDiff = getInitialCentrePtDiff(); const Vec3 p2LinearForce = ((m_kr * (initialDiff.norm() - currentDiffNorm))/currentDiffNorm) * currentDiff; m_p2->applyForce( p2LinearForce, m_p2->getPos()); m_p1->applyForce(-p2LinearForce, m_p1->getPos()); m_nForce = p2LinearForce.norm(); // Calculate the shearing forces, linear and moment contributions. // Need to take into account relative orientations of particles. const Vec3 shearDiff = getShearDiff(); const Vec3 p2ShearForcePt = getP2ShearForcePt(); const Vec3 p1ShearForcePt = getP1ShearForcePt(); const Vec3 p2ShearForce = -m_ks * (p2ShearForcePt - p1ShearForcePt); //(m_ks * shearDiff); m_p2->applyMoment(cross(p2ShearForcePt - m_p2->getPos(), getTangent(p2ShearForcePt - m_p2->getPos(), p2ShearForce))); m_p1->applyMoment(cross(p1ShearForcePt - m_p1->getPos(), getTangent(p1ShearForcePt - m_p1->getPos(), -p2ShearForce))); m_p2->applyForce( p2ShearForce, m_p2->getPos()); m_p1->applyForce(-p2ShearForce, m_p1->getPos()); m_shForce = p2ShearForce.norm(); } #else const double HALF_SQRT_2 = 0.5*sqrt(2.0); void CRotBondedInteraction::calcForces() { double s_fai=0.0, c_fai=0.0, c_pasi2=0.0, s_pasi2=0.0; double sita=0.0, pasi=0.0; const Matrix3 mat0 = (m_p1->getQuat()).to_matrix(); const Vec3 rbp = m_p2->getPos() - m_p1->getPos(); // rbp <-> r_f const double rbpNorm = rbp.norm(); const Vec3 rb = mat0*(m_p2->getPos() - m_p1->getPos()); // eq. 11, rb <-> r_c const double rbNorm = rb.norm(); const double r_0Norm = m_p1->getRad()+m_p2->getRad(); const Vec3 delta_r = (rbNorm - r_0Norm)*rb/rbNorm; // eq. 9, part of eq. 12 const Vec3 Fr = m_kr*delta_r ; // rest of eq. 12 const double gama_cos = dot(rb, m_D)/(rbNorm*m_D.norm()) ; double gama = 0.0; if (gama_cos < 1.0 && gama_cos > -1.0 ) { gama = acos(gama_cos); } const Vec3 rb_0 = cross(rb, m_D); const Vec3 rb_b0 = cross(rb, rb_0); const double rb_b0Norm = rb_b0.norm(); Vec3 Fst(0.0,0.0,0.0); if (rb_b0Norm != 0) { Fst = m_ks*r_0Norm*gama*rb_b0/rb_b0Norm; // eq. 14 } Vec3 Mst(0.0,0.0,0.0); const double rb_0Norm = rb_0.norm(); if (rb_0Norm != 0) { Mst = -Fst.norm()*rb_0/rb_0Norm; // eq. 15 } const double m0 = HALF_SQRT_2*sqrt((rbNorm + rb.Z())/rbNorm); double m1 = -HALF_SQRT_2*sqrt((rbNorm - rb.Z())/rbNorm) ; double m2 = -m1; const double m3 = 0.0; const double rbX2PlusRbY2 = rb.X()*rb.X() + rb.Y()*rb.Y(); if (rbX2PlusRbY2 != 0.0) { const double denomSqrt = sqrt(rbX2PlusRbY2); m1 = m1*rb.Y()/denomSqrt; m2 = m2*rb.X()/denomSqrt; } const Quaternion qm(m0, Vec3(m1,m2,m3)); const Matrix3 mat = qm.to_matrix(); const Matrix3 matTrans(mat.trans()); const Quaternion rp = (m_p1->getQuat()).inverse() * (m_p2->getQuat()); const Quaternion r = qm.inverse() * rp * qm; const double temp0 = r.return_sca()*r.return_sca() + r.return_vec().Z()*r.return_vec().Z(); if(temp0 == 0.0) { pasi = 0.0; } else { const double sqrtTemp0 = sqrt(temp0); c_pasi2 = r.return_sca()/sqrtTemp0; s_pasi2 = r.return_vec().Z()/sqrtTemp0; pasi = 2.0 * calc_angle(s_pasi2,c_pasi2); } const Vec3 Mtp = Vec3(0.0,0.0, m_kt*pasi); const Vec3 Mtr = matTrans * Mtp; const double temp2 = r.return_vec().X()*r.return_vec().X() + r.return_vec().Y()*r.return_vec().Y(); const double temp3 = r.return_vec().X()*r.return_vec().Z() + r.return_sca() * r.return_vec().Y(); const double temp4 = r.return_vec().Y()*r.return_vec().Z() - r.return_sca() * r.return_vec().X(); Vec3 Mbr(0, 0, 0); Vec3 Fsr(0, 0, 0); Vec3 Msr(0, 0, 0); if (temp2 != 0.0) { const double temp1 = temp0 - temp2; if (temp1 >= 1.0 || temp1 <= -1.0) { sita = 0.0 ; } else { sita = acos(temp1); } if (temp0 == 0.0) { const double sqrtDenom = sqrt(temp2); c_fai = r.return_vec().Y()/sqrtDenom; s_fai = -r.return_vec().X()/sqrtDenom; } else { const double sqrtDenom = sqrt(temp0*temp2); c_fai = temp3/sqrtDenom; s_fai = temp4/sqrtDenom; } const Vec3 Mbp = Vec3( - 0.5*m_kb*sita*s_fai, 0.5*m_kb*sita*c_fai, 0.0); // eq 16.1 Mbr = matTrans * Mbp; // eq. 17.1 const Vec3 Fsp = Vec3 ( - 0.5*m_ks*c_fai*sita*r_0Norm, - 0.5*m_ks*s_fai*sita*r_0Norm, 0.0); // eq. 16.3 Fsr = matTrans * Fsp; // eq. 17.3 const Vec3 Msp = Vec3( 0.5*m_ks*s_fai*sita*r_0Norm, - 0.5*m_ks*c_fai*sita*r_0Norm, 0.0 ); // above is diff to paper: r instead r^2 here, other r moved to eq 19 below Msr = matTrans * Msp; } const double eq_rad1 = m_p1->getRad()/(m_p1->getRad()+m_p2->getRad()); const double eq_rad2 = m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()); const Matrix3 mat0Trans(mat0.trans()); m_force = mat0Trans * (Fr + Fst + Fsr ); m_moment = mat0Trans * (Mbr + Mtr + Msr*eq_rad1*rbpNorm + Mst*eq_rad1*rbpNorm); // eq. 19 for particle 1 const Vec3 moment2 = mat0Trans *( Msr*eq_rad2*rbpNorm + Mst*eq_rad2*rbpNorm - Mbr - Mtr); // eq. 19 for particle 2 m_shForce = (Fst + Fsr).norm(); m_tMoment = Mtr.norm(); m_bMoment = Mbr.norm(); const double r0 = m_p1->getRad()+m_p2->getRad(); const Vec3 D = m_p1->getPos() - m_p2->getPos(); m_dist = sqrt(D*D); m_nForce = ((m_dist < r0) ? -1.0 : 1.0) * Fr.norm(); Vec3 pos=m_p2->getPos()+(m_p2->getRad()/(m_p1->getRad()+m_p2->getRad()))*D; m_p2->applyForce(-1.0*m_force,pos); m_p1->applyForce(m_force,pos); m_cpos=pos; m_p1->applyMoment(m_moment) ; m_p2->applyMoment(moment2) ; } #endif double CRotBondedInteraction::getPotentialEnergy() const { double pe_r,pe_s,pe_t,pe_b; pe_r=(m_kr!=0.0) ? 0.5*(m_nForce*m_nForce)/m_kr : 0.0; pe_s=(m_ks!=0.0) ? 0.5*(m_shForce*m_shForce)/m_ks : 0.0; pe_t=(m_kt!=0.0) ? 0.5*(m_tMoment*m_tMoment)/m_kt : 0.0; pe_b=(m_kb!=0.0) ? 0.5*(m_bMoment*m_bMoment)/m_kb : 0.0; return pe_r+pe_s+pe_t+pe_b; } double CRotBondedInteraction::getNormalPotentialEnergy() const { return (m_kr!=0.0) ? 0.5*(m_nForce*m_nForce)/m_kr : 0.0; } double CRotBondedInteraction::getShearPotentialEnergy() const { return (m_ks!=0.0) ? 0.5*(m_shForce*m_shForce)/m_ks : 0.0; } double CRotBondedInteraction::getTwistPotentialEnergy() const { return (m_kt!=0.0) ? 0.5*(m_tMoment*m_tMoment)/m_kt : 0.0; } double CRotBondedInteraction::getBendPotentialEnergy() const { return (m_kb!=0.0) ? 0.5*(m_bMoment*m_bMoment)/m_kb : 0.0; } Vec3 CRotBondedInteraction::getForce() const { return m_force; } Vec3 CRotBondedInteraction::getNormalForce() const { Vec3 dr = (m_p1->getPos() - m_p2->getPos()).unit(); Vec3 normalForce = (m_force*dr)*dr; return normalForce; } Vec3 CRotBondedInteraction::getTangentialForce() const { return (m_force - getNormalForce()); } /*! Get the particle member function which returns a scalar field of a given name. \param name the name of the field */ CRotBondedInteraction::ScalarFieldFunction CRotBondedInteraction::getScalarFieldFunction(const string& name) { CRotBondedInteraction::ScalarFieldFunction sf; if (name=="potential_energy"){ sf=&CRotBondedInteraction::getPotentialEnergy; } else if (name=="e_pot_normal"){ sf=&CRotBondedInteraction::getNormalPotentialEnergy; } else if (name=="e_pot_shear"){ sf=&CRotBondedInteraction::getShearPotentialEnergy; } else if (name=="e_pot_twist"){ sf=&CRotBondedInteraction::getTwistPotentialEnergy; } else if (name=="e_pot_bend"){ sf=&CRotBondedInteraction::getBendPotentialEnergy; } else if (name=="count"){ sf=&CRotBondedInteraction::Count; } else if (name=="breaking_criterion"){ sf=&CRotBondedInteraction::getCriterion; } else { sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; } return sf; } /*! Get the particle member function which returns a vector field of a given name. \param name the name of the field */ CRotBondedInteraction::VectorFieldFunction CRotBondedInteraction::getVectorFieldFunction(const string& name) { CRotBondedInteraction::VectorFieldFunction vf; if (name=="force"){ vf=&CRotBondedInteraction::getForce; } else if (name=="normal_force"){ vf=&CRotBondedInteraction::getNormalForce; } else if (name=="tangential_force"){ vf=&CRotBondedInteraction::getTangentialForce; } else { vf=NULL; cerr << "ERROR - invalid name for interaction vector access function" << endl; } return vf; } /*! Get the particle member function which returns a checked scalar field of a given name. \param name the name of the field */ CRotBondedInteraction::CheckedScalarFieldFunction CRotBondedInteraction::getCheckedScalarFieldFunction(const string& name) { CRotBondedInteraction::CheckedScalarFieldFunction sf; sf=NULL; cerr << "ERROR - invalid name for interaction scalar access function" << endl; return sf; } void CRotBondedInteraction::saveCheckPointData(std::ostream &oStream) { BondedInteractionCpData(*this).saveCheckPointData(oStream); } void CRotBondedInteraction::loadCheckPointData(std::istream &iStream) { throw std::runtime_error("CRotBondedInteraction::loadCheckPointData not implemented."); } /*! Pack this object into a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::pack(const CRotBondedInteraction& I) { append(I.m_id[0]); append(I.m_id[1]); append(static_cast(I.m_init)); append(I.m_kr); append(I.m_ks); append(I.m_kb); append(I.m_kt); append(static_cast(I.m_scaling)); append(static_cast(I.m_meanR_scaling)); append(I.m_truncated); append(I.m_nForce); // exchange of current forces is needed append(I.m_shForce); // to ensure the bond is broken correctly append(I.m_tMoment); // in case of a calc - exchange - update (i.e. break) append(I.m_bMoment); // sequence because broken() needs the forces append(I.m_max_nForce); append(I.m_max_shForce); append(I.m_max_tMoment); append(I.m_max_bMoment); append(I.m_D); append(I.m_tag); } /*! Unpack a CBondedInteraction from a TML packed message \param I the interaction */ template<> void TML_PackedMessageInterface::unpack(CRotBondedInteraction& I) { I.m_id.clear(); I.m_id.push_back(pop_int()); I.m_id.push_back(pop_int()); I.m_init = static_cast(pop_int()); I.m_kr = pop_double(); I.m_ks = pop_double(); I.m_kb = pop_double(); I.m_kt = pop_double(); I.m_scaling=static_cast(pop_int()); I.m_meanR_scaling=static_cast(pop_int()); I.m_truncated = pop_double(); I.m_nForce = pop_double(); I.m_shForce = pop_double(); I.m_tMoment = pop_double(); I.m_bMoment = pop_double(); I.m_max_nForce = pop_double(); I.m_max_shForce = pop_double(); I.m_max_tMoment = pop_double(); I.m_max_bMoment = pop_double(); I.m_D=pop_vec3(); I.m_tag=pop_int(); } /*! save restart data to ostream \param oStream the output stream */ void CRotBondedInteraction::saveRestartData(std::ostream &oStream) { oStream << m_id[0] << " "; oStream << m_id[1] << " "; oStream << m_init << " "; oStream << m_kr << " "; oStream << m_ks << " "; oStream << m_kb << " "; oStream << m_kt << " "; oStream << m_scaling << " "; oStream << m_meanR_scaling << " "; oStream << m_truncated << " "; oStream << m_max_nForce << " "; oStream << m_max_shForce << " "; oStream << m_max_tMoment << " "; oStream << m_max_bMoment << " "; oStream << m_D << " "; oStream << getTag() ; } /*! load restart data from stream \param iStream the input stream */ void CRotBondedInteraction::loadRestartData(std::istream &iStream) { int tag; iStream >> m_id[0]; iStream >> m_id[1]; iStream >> m_init; iStream >> m_kr; iStream >> m_ks; iStream >> m_kb; iStream >> m_kt; iStream >> m_scaling; iStream >> m_meanR_scaling; iStream >> m_truncated; iStream >> m_max_nForce; iStream >> m_max_shForce; iStream >> m_max_tMoment; iStream >> m_max_bMoment; iStream >> m_D; iStream >> tag; setTag(tag); } ostream& operator<<(ostream& ost,const CRotBondedInteraction& BI) { ost << "[" << BI.m_p1->getID() << " - " << BI.m_p2->getID() << "]"; return ost; } ./Model/BTriMeshInteraction.h0000664000175000017500000000227312176660653015731 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BTRIMESHINTERACTION_H #define __BTRIMESHINTERACTION_H // --- project includes --- #include "Model/BTriangleInteraction.h" //#include "Model/BEdgeInteraction.h" //#include "Model/BCornerInteraction.h" #include "Model/BTriMeshIP.h" struct BTriMeshInteraction { typedef BTriMeshIP ParameterType; typedef BTriangleInteraction TriIntType; //typedef BEdgeInteraction EdgeIntType; //typedef BCornerInteraction CornerIntType; static string getType(){return "BondedTriMesh";}; }; #endif //__BTRIMESHINTERACTION_H ./Model/LocalDamping.h0000664000175000017500000000500412176660653014401 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_LOCALDAMPING_H #define MODEL_LOCALDAMPING_H // -- project includes -- #include "Model/LocalDampingIGP.h" #include "Foundation/vec3.h" #include "Foundation/quintuple.h" class CVarMPIBuffer; class AMPIBuffer; /*! \brief Local damping of the particle motion by a damping coefficient */ template class CLocalDamping { protected: T *m_p; //!< the particle double m_visc; //!< damping coefficient double m_dt; //!< time step double m_E_diss; //!< dissipated energy Vec3 m_force; //!< current force public: typedef CLocalDampingIGP ParameterType; typedef double (CLocalDamping::* ScalarFieldFunction)() const; typedef pair (CLocalDamping::* CheckedScalarFieldFunction)() const; typedef Vec3 (CLocalDamping::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); CLocalDamping(T*,double,double); // to be obsoleted CLocalDamping(T*,const CLocalDampingIGP&); CLocalDamping(T*,CLocalDampingIGP*); virtual ~CLocalDamping(); void setTimeStepSize(double dt); virtual void calcForces(); virtual bool hasTag(int,int) const; virtual Vec3 getPosFirst() const {return m_p->getPos();}; virtual Vec3 getPosSecond() const {return Vec3(0.0,0.0,0.0);}; virtual Vec3 getPos() const {return m_p->getPos();}; vector getAllID() const; esys::lsm::quintuple getRaw2Data() const { return esys::lsm::quintuple( m_p->getPos(), m_p->getRad(), Vec3::ZERO, 0, getPos() ); } double getDissipatedEnergy() const; Vec3 getForce() const; }; #include "Model/LocalDamping.hpp" #endif //__DAMPING_H ./Model/RotFricInteraction.h0000664000175000017500000001140612176660653015622 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTFRICTIONINTERACTION_H #define __ROTFRICTIONINTERACTION_H // -- project includes -- #include "Model/RotPairInteraction.h" #include "Model/RotParticle.h" #include "Model/IGParam.h" #include "Foundation/vec3.h" // -- I/O includes -- #include using std::ostream; //double calc_angle( double , double ) ; /*! \struct CRotFrictionIGP \brief Interaction parameters for frictional interaction between rotational particles \author Shane Latham, Steffen Abe $Revision$ $Date$ */ class CRotFrictionIGP : public AIGParam { public: CRotFrictionIGP(); CRotFrictionIGP( const std::string &name, double k, double mu_d, double mu_s, double k_s, double dt, bool scaling, bool rigid, bool meanR_scaling ); CRotFrictionIGP( const std::string &name, double youngsModulus, double poissonsRatio, double mu_d, double mu_s, double dt, bool rigid, bool meanR_scaling ); virtual std::string getTypeString() const { return "RotFriction"; } void setTimeStepSize(double dt); double k; double mu_d; // sliding frictional coefficient double mu_s; // max static frictional coefficient double k_s; double dt; bool scaling; bool rigid; bool meanR_scaling; }; /*! \class CRotFrictionInteraction \brief Frictional+Elastic interaction between particles between rotational particles \author Shane Latham, Steffen Abe $Revision$ $Date$ */ class CRotFrictionInteraction : public ARotPairInteraction { public: // types typedef CRotFrictionIGP ParameterType; typedef double (CRotFrictionInteraction::* ScalarFieldFunction)() const; typedef pair (CRotFrictionInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CRotFrictionInteraction::* VectorFieldFunction)() const; static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); // protected: private: double m_k; //!< spring constant double m_r0; //!< equilibrium distance double m_mu_d; //!< coefficient of dynamic friction double m_mu_s; //!< coefficient of static friction double m_ks; //!< shear stiffness (Cundall) double m_dt; //!< time step Vec3 m_Ffric; //!< current frictional force Vec3 m_force_deficit; //!< difference between fric. force & force necessary for slip Vec3 m_cpos; //!< contact position Vec3 m_normal_force; //!< current normal force bool m_is_slipping; //!< static/dynamic status of the interaction bool m_is_touching; //!< contact status of the interaction double m_E_diss; //!< dissipated energy bool m_scaling; //!< toggles scaling of elastic properties by particle size bool m_rigid; //!< toggles whether to use rigid body friction interactions bool m_meanR_scaling; //!< toggles whether to use the mean particle radius or minimum particle radius to define bond radius //Quaternion m_init_q1, m_init_q2; //Vec3 m_init_pos1 , m_init_pos2; public: CRotFrictionInteraction(); CRotFrictionInteraction(CRotParticle*,CRotParticle*,const CRotFrictionIGP&); virtual ~CRotFrictionInteraction(); static string getType() {return "RotFriction";}; virtual void calcForces(); virtual void calcSimpleForces(); virtual void calcRigidBodyForces(); virtual bool isPersistent(); void setTimeStepSize(double dt); void calcNormalForce(); double getAbsForceDeficit()const; double getPotentialEnergy()const; double getSlipping()const; double getSticking()const; double getDissipatedEnergy() const; double getAbsSlip() const; virtual double Count() const; virtual Vec3 getPos() const {return m_cpos;}; Vec3 getForce() const; Vec3 getNormalForce() const; Vec3 getTangentialForce() const; friend ostream& operator<<(ostream&,const CRotFrictionInteraction&); friend class TML_PackedMessageInterface; // checkpointing virtual void saveRestartData(std::ostream &oStream); virtual void loadRestartData(std::istream &iStream); }; #endif //__ROTFRICTIONINTERACTION_H ./Model/CappedBondedInteraction.h0000664000175000017500000000550112176660653016561 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __CAPPEDBONDEDINTERACTION_H #define __CAPPEDBONDEDINTERACTION_H // -- project includes -- #include "Model/IGParam.h" // keep this one first - it drags in mpi.h #include "Model/BondedInteraction.h" #include "Model/Interaction.h" #include "Model/Particle.h" #include "Model/BondedInteractionCpData.h" #include "Foundation/vec3.h" // -- I/O includes -- #include using std::ostream; // -- STL includes -- #include using std::pair; /*! \brief Interaction parameters for bonded interaction with a force limit \author Steffen Abe $Revision: 894 $ $Date: 2006-01-19 10:58:58 +0000 (Thu, 19 Jan 2006) $ */ class CCappedBondedIGP : public CBondedIGP { public: double m_force_limit; // maximum force CCappedBondedIGP(); CCappedBondedIGP(const std::string &name, int tag, double normalK, double breakDistance,double forceLimit); virtual std::string getTypeString() const {return "CappedBonded"; } }; /*! \brief Elastic interaction with force limit between bonded particles \author Steffen Abe $Revision: 894 $ $Date: 2006-01-19 10:58:58 +0000 (Thu, 19 Jan 2006) $ */ class CCappedBondedInteraction : public CBondedInteraction { public: // types typedef CCappedBondedIGP ParameterType; typedef double (CCappedBondedInteraction::* ScalarFieldFunction)() const; typedef pair (CCappedBondedInteraction::* CheckedScalarFieldFunction)() const; typedef Vec3 (CCappedBondedInteraction::* VectorFieldFunction)() const; protected: double m_force_limit; //!< maximum allowed force CCappedBondedInteraction(CParticle*,CParticle*); public: CCappedBondedInteraction(); CCappedBondedInteraction( CParticle *particle1, CParticle *particle2, const CCappedBondedIGP ¶ms ); virtual ~CCappedBondedInteraction(); static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static string getType() {return "CappedBonded";}; virtual void calcForces(); friend class TML_PackedMessageInterface; }; #endif //__CAPPEDBONDEDINTERACTION_H ./Model/ABCDamping.h0000664000175000017500000000323612176660653013741 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_ABCDAMPING_H #define MODEL_ABCDAMPING_H // -- project includes -- #include "Model/Damping.h" #include "Model/ABCDampingIGP.h" /*! Damping for absorbing boundary conditions - damping increases exponentially towards a given plane (boundary) */ template class ABCDamping : public CDamping { protected: Vec3 m_pos; Vec3 m_normal; double m_c1; public: typedef ABCDampingIGP ParameterType; typedef double (ABCDamping::* ScalarFieldFunction)() const; typedef pair (ABCDamping::* CheckedScalarFieldFunction)() const; typedef Vec3 (ABCDamping::* VectorFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); ABCDamping(ParticleType*,ABCDampingIGP*); virtual ~ABCDamping(); }; #include "Model/ABCDamping.hpp" #endif // MODEL_ABCDAMPING_H ./Model/DampingIGP.h0000664000175000017500000000371212176660653013772 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __DAMPING_IGP_H #define __DAMPING_IGP_H // -- project includes -- #include "Model/IGParam.h" #include "Foundation/vec3.h" // -- STL includes -- #include using std::string; /*! \brief Interaction group parameters for CDampingGroup */ class CDampingIGP : public AIGParam { protected: string m_type; // type of damping (rot/lin) Vec3 m_vref; //!< reference velocity double m_visc; //!< artificial viscosity double m_dt; //!< time step int m_max_iter; //!< max nr. of iterations public: CDampingIGP(); CDampingIGP(const string& type, const string &name, double viscosity, double dt, int maxIteractions, const Vec3 &refVelocity = Vec3::ZERO ); virtual void packInto(CVarMPIBuffer*) const; void setType(const string& type){m_type=type;} void setVRef(const Vec3 V){m_vref=V;} Vec3 getVRef()const{return m_vref;} void setVisc(double v){m_visc=v;} double getVisc()const{return m_visc;} void setTimeStep(double t){m_dt=t;} void setTimeStepSize(double t){setTimeStep(t);} double getTimeStep()const{return m_dt;} void setMaxIter(int mi){m_max_iter=mi;} int getMaxIter()const {return m_max_iter;} virtual std::string getTypeString() const {return m_type;} }; CDampingIGP* extractDampingIGP(AMPIBuffer*); #endif //__DAMPING_IGP_H ./Model/RotParticleVi.cpp0000664000175000017500000003630012176660653015134 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include #include "Model/RotParticleVi.h" #include "Geometry/SimpleParticleData.h" #include "Foundation/console.h" // --- TML includes --- #include "tml/message/packed_message_interface.h" CRotParticleVi::CRotParticleVi() : CParticle() { m_global_id=-1; flag=false; } CRotParticleVi::CRotParticleVi(const esys::lsm::SimpleParticleData &particleData) : CParticle(particleData) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; m_inertRot = 0.5*particleData.getMass()*particleData.getRadius()*particleData.getRadius(); m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_angVel_t = Vec3(0.0,0.0,0.0) ; m_moment = Vec3(0.0,0.0,0.0); } CRotParticleVi::CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn ) : CParticle(rad, mass, pos, vel, force, id, is_dyn) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; m_inertRot = 0.5*mass*rad*rad; m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_angVel_t = Vec3(0.0,0.0,0.0) ; m_moment = Vec3(0.0,0.0,0.0); m_is_dynamic=is_dyn; } CRotParticleVi::CRotParticleVi(const CParticle &particle) : CParticle(particle) { m_quat = Quaternion(1.0,Vec3(0.0,0.0,0.0)); m_initquat = m_quat; m_inertRot = 0.5*particle.getMass()*particle.getRad()*particle.getRad(); m_div_inertRot = 1.0/m_inertRot; m_angVel = Vec3(0.0,0.0,0.0); m_moment = Vec3(0.0,0.0,0.0); } /*! Construct particle. Old and initial position are assumed to be identical to current position. \param rad radius \param mass mass \param pos current position \param vel current velocity \param force currently applied force \param id particle id \param quat particel quaternion \param inertRot inert of rotation \param moment currently applied tarque \param angvel current angular velocity */ CRotParticleVi::CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion & quat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t ) :CParticle(rad, mass,pos,vel,force,id,true) { m_circular_shift=Vec3(0.0,0.0,0.0); flag=false; m_quat = quat; m_initquat = quat; m_inertRot = inertRot; m_moment = moment; m_angVel = angvel; m_angVel_t = angvel_t; m_div_inertRot = 1.0/m_inertRot; } CRotParticleVi::CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion & quat, const Quaternion & initquat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t ) :CParticle(rad, mass,pos,oldpos, initpos,vel,force,id,true) { m_circular_shift=Vec3(0.0,0.0,0.0); flag=false; m_quat = quat; m_initquat = initquat; m_inertRot = inertRot ; m_moment = moment; m_angVel = angvel; m_angVel_t = angvel_t; m_div_inertRot = 1.0/m_inertRot ; } /*! Pack a CParticle into a TML packed message \param p the particle \todo BasicParticle data should be handled by pack */ template<> void TML_PackedMessageInterface::pack(const CRotParticleVi& p) { append(p.m_tag); append(p.m_pos.X()) ; append(p.m_pos.Y()) ; append(p.m_pos.Z()) ; append(p.m_oldpos.X()); append(p.m_oldpos.Y()); append(p.m_oldpos.Z()); append(p.m_initpos.X()); append(p.m_initpos.Y()); append(p.m_initpos.Z()); append(p.m_circular_shift.X()); append(p.m_circular_shift.Y()); append(p.m_circular_shift.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_force.X()); append(p.m_force.Y()); append(p.m_force.Z()); append(p.m_rad); append(p.m_mass); // append(p.m_global_id); // wyc added ! append(p.m_inertRot); append(p.m_moment.X()) ; append(p.m_moment.Y()) ; append(p.m_moment.Z()) ; append(p.m_angVel.X()) ; append(p.m_angVel.Y()) ; append(p.m_angVel.Z()) ; append(p.m_quat.return_sca()) ; append(p.m_quat.return_vec().X()) ; append(p.m_quat.return_vec().Y()) ; append(p.m_quat.return_vec().Z()) ; append(p.m_initquat.return_sca()) ; append(p.m_initquat.return_vec().X()) ; append(p.m_initquat.return_vec().Y()) ; append(p.m_initquat.return_vec().Z()) ; append(p.m_angVel_t.X()) ; append(p.m_angVel_t.Y()) ; append(p.m_angVel_t.Z()) ; append(p.m_global_id); // original one here } /*! Unpack a CParticle from a TML packed message \param p the particle */ template<> void TML_PackedMessageInterface::unpack(CRotParticleVi& p) { const int numElems = 38 ; double db[numElems] ; p.m_tag=pop_int(); pop_doubles(db, numElems); p.m_pos = Vec3(db[0],db[1],db[2]) ; p.m_oldpos = Vec3(db[3],db[4],db[5]) ; p.m_initpos = Vec3(db[6],db[7],db[8]) ; p.m_circular_shift = Vec3(db[9],db[10],db[11]) ; p.m_vel = Vec3(db[12],db[13],db[14]) ; p.m_force = Vec3(db[15],db[16],db[17]) ; p.m_rad = db[18]; p.m_mass = db[19]; p.m_div_mass = 1.0/p.m_mass; p.m_inertRot = db[20]; p.m_div_inertRot = (p.m_inertRot!=0.0) ? 1.0/p.m_inertRot : 0.0; p.m_moment = Vec3(db[21],db[22],db[23]); p.m_angVel = Vec3(db[24],db[25],db[26]); p.m_quat = Quaternion(db[27],Vec3(db[28],db[29],db[30])); p.m_initquat = Quaternion(db[31],Vec3(db[32],db[33],db[34])); p.m_angVel_t = Vec3(db[35],db[36],db[37]) ; p.m_global_id=pop_int(); } /*! Do the time integration for the particle. \param dt the time step */ /* void CRotParticleVi::integrate(double dt) { if (CParticle::getDo2dCalculations()) { m_force = Vec3(m_force.X(), m_force.Y(), 0); m_moment = Vec3(0, 0, m_moment.Z()); } // integrate rotational part m_angVel += (dt*m_div_inertRot) * m_moment; // m_quat += (dt/2.0)*(Quaternion(0, m_angVel)*m_quat); // wrong ??? m_quat += (dt/2.0)*(m_quat*Quaternion(0, m_angVel)); // Integrate linear part CParticle::integrate(dt); } */ void CRotParticleVi::integrate(double dt) { // need to test this //zjr // cout << " wyc i= " < CRotParticleVi::generateFields(ParallelParticleArray* particles) { map res; return res; } CRotParticleVi::exchangeType CRotParticleVi::getExchangeValues() { return exchangeType( m_pos - m_circular_shift, m_initpos - m_circular_shift, m_vel, m_angVel, m_angVel_t, m_quat ); } /*! Set pos, vel and angular vel from exchangeType \param E the exchanged values */ void CRotParticleVi::setExchangeValues(const exchangeType& E) { m_pos = E.m_pos + m_circular_shift; m_initpos = E.m_initPos + m_circular_shift; m_vel = E.m_vel; m_angVel = E.m_angVel; m_angVel_t = E.m_angVel_t; m_quat = E.m_quat; } template<> void TML_PackedMessageInterface::pack(const CRotParticleVi::exchangeType& p) { append(p.m_pos.X()); append(p.m_pos.Y()); append(p.m_pos.Z()); append(p.m_initPos.X()); append(p.m_initPos.Y()); append(p.m_initPos.Z()); append(p.m_vel.X()); append(p.m_vel.Y()); append(p.m_vel.Z()); append(p.m_angVel.X()); append(p.m_angVel.Y()); append(p.m_angVel.Z()); append(p.m_angVel_t.X()); append(p.m_angVel_t.Y()); append(p.m_angVel_t.Z()); append(p.m_quat.return_sca()); append(p.m_quat.return_vec().X()); append(p.m_quat.return_vec().Y()); append(p.m_quat.return_vec().Z()); } /*! Unpack an exchangeType from a TML packed message */ template<> void TML_PackedMessageInterface::unpack(CRotParticleVi::exchangeType& p) { const int numDoubles = 19; double db[numDoubles]; pop_doubles(db, numDoubles); p.m_pos = Vec3(db[0],db[1],db[2]); p.m_initPos = Vec3(db[3],db[4],db[5]); p.m_vel = Vec3(db[6],db[7],db[8]); p.m_angVel = Vec3(db[9],db[10],db[11]); p.m_angVel_t = Vec3(db[12],db[13],db[14]); p.m_quat = Quaternion(db[15],Vec3(db[16],db[17],db[18])); } CRotParticleVi::ScalarFieldFunction CRotParticleVi::getScalarFieldFunction(const string& name) { CRotParticleVi::ScalarFieldFunction sf; if(name=="id"){ sf=&CRotParticleVi::getIDField; } else if(name=="sigma_xx_2d"){ sf=&CRotParticleVi::sigma_xx_2D; } else if(name=="sigma_xy_2d"){ sf=&CRotParticleVi::sigma_xy_2D; } else if(name=="sigma_yy_2d"){ sf=&CRotParticleVi::sigma_yy_2D; } else if(name=="sigma_d"){ sf=&CRotParticleVi::sigma_d; } else if(name=="e_kin"){ sf=&CRotParticleVi::getKineticEnergy; } else if(name=="radius"){ sf=&CRotParticleVi::getRad; } else { sf=NULL; cerr << "ERROR - invalid name for particle scalar access function" << endl; } return sf; } CRotParticleVi::VectorFieldFunction CRotParticleVi::getVectorFieldFunction(const string& name) { CRotParticleVi::VectorFieldFunction sf; if(name=="displacement"){ sf=&CRotParticleVi::getTotalDisplacement; } else if(name=="velocity"){ sf=&CRotParticleVi::getVel; } else if(name=="ang_velocity"){ sf=&CRotParticleVi::getAngVelNR; } else if(name=="position"){ sf=&CRotParticleVi::getPos; } else if(name=="force"){ sf=&CRotParticleVi::getForce; } else if(name=="anglevector"){ sf=&CRotParticleVi::getAngVector; } else { sf=NULL; cerr << "ERROR - invalid name for particle vector access function" << endl; } return sf; } // used in 2D to output rotated angle Vec3 CRotParticleVi::getAngVector() const { double half_cos, half_sin,s_in, c_os ; Vec3 AngVector ; half_sin = getQuat().return_vec().Z() ; half_cos = getQuat().return_sca(); s_in = 2.0*half_cos*half_sin ; c_os = half_cos*half_cos -half_sin*half_sin ; AngVector = Vec3(getRad()*c_os,getRad()*s_in,0.0) ; return AngVector ; } //3D case: direction--- q1,q2,q3, size --- angle /* Vec3 CRotParticleVi::getAngVector() const { double half_cos, half_sin, c_os, angle ; Vec3 AngVector,direction ; half_cos = getQuat().return_sca(); half_sin = sqrt(abs(1-half_cos*half_cos)); c_os = half_cos*half_cos -half_sin*half_sin ; if(c_os>=1.0) angle =0.0; else angle = acos(c_os); direction = Vec3(getQuat().return_vec().X(),getQuat().return_vec().Y(),getQuat().return_vec().Z() ) ; if(direction.norm()==0.0) direction = Vec3(0.0,0.0,0.0) ; else direction = direction/direction.norm() ; AngVector = angle*direction ; return AngVector ; } */ /*! set circular shift vector \param cv the circular shift vector */ void CRotParticleVi::setCircular(const Vec3& cv) { CParticle::setCircular(cv); } /*! Save snapshot data - _not_ neccesarily sufficient for restart */ void CRotParticleVi::saveSnapShotData(std::ostream& oStream) { CParticle::saveSnapShotData(oStream); const char delim = ' '; oStream << delim << getQuat() << delim << getAngVel(); } /** * Save check-point data. */ void CRotParticleVi::saveCheckPointData(std::ostream& oStream) { CParticle::saveCheckPointData(oStream); const char delim = ' '; oStream << delim << getQuat() << delim << getAngVel(); } void CRotParticleVi::loadCheckPointData(std::istream &iStream) { CParticle::loadCheckPointData(iStream); iStream >> m_quat; iStream >> m_angVel_t; } /*! get deviatoric stress *//* double CRotParticleVi::sigma_d() const { double scale=1.0/(M_PI*m_rad*m_rad); double sig_d=(m_sigma-m_sigma.trace()*Matrix3::Unit()).norm(); return sig_d; }*/ ostream& operator<<(ostream& ost, const CRotParticleVi& CP) { ost << "--CParticle " << CP.m_global_id << " --\n"; ost << "Radius : " << CP.m_rad << " Mass : " << CP.m_mass << "\n"; ost << "Position : " << CP.m_pos << "\n"; ost << "Velocity : " << CP.m_vel << "\n"; ost << "Force : " << CP.m_force << "\n"; return ost; } ./Model/SoftBWallInteraction.hpp0000664000175000017500000000570012176660653016447 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef MODEL_SOFTBWALLINTERACTION_HPP #define MODEL_SOFTBWALLINTERACTION_HPP #include "SoftBWallInteraction.h" template CSoftBondedWallInteraction::CSoftBondedWallInteraction(T* p,CWall* w,double normalK,double shearK,bool scaling,bool iflag): AWallInteraction(p,w,iflag) { double scale; if (scaling) { // scale stiffness to particle cross section if(CParticle::getDo2dCalculations()){ // 2D // scale=2.0*this->m_p->getRad(); scale=1.0; } else { // 3D // scale=3.1415926536*this->m_p->getRad()*this->m_p->getRad(); scale=3.1415926536*this->m_p->getRad(); } } else { scale = 1.0; } m_normalK=normalK*scale; m_shearK=shearK*scale; } /*! calculate bonded elastic forces. */ template void CSoftBondedWallInteraction::calcForces() { const Vec3 &n = this->m_wall->getNormal(); const Vec3 relDisplacement = ( this->m_p->getTotalDisplacement() - this->m_wall->getTotalDisplacement() ); const double normalDist = dot(relDisplacement, n)/(n.norm()); const Vec3 normalForce = ((m_normalK*normalDist)/n.norm())*n; /* * Tangent displacement vector is relDisplacement point * projected onto plane. */ const Vec3 tangentDisplacement = (relDisplacement - ((normalDist/(n.norm()))*n)); const Vec3 tangentForce = m_shearK*tangentDisplacement; const Vec3 totalForce = normalForce + tangentForce; this->m_p->applyForce(-1.0*totalForce,this->m_p->getPos()); if(this->m_inner_flag) this->m_wall->addForce(totalForce); } /*! calculate and return the bonded elastic force */ template Vec3 CSoftBondedWallInteraction::getForce() { const Vec3 &n = this->m_wall->getNormal(); const Vec3 relDisplacement = ( this->m_p->getTotalDisplacement() - this->m_wall->getTotalDisplacement() ); const double normalDist = dot(relDisplacement, n)/(n.norm()); const Vec3 normalForce = ((m_normalK*normalDist)/n.norm())*n; /* * Tangent displacement vector is relDisplacement point * projected onto plane. */ const Vec3 tangentDisplacement = (relDisplacement - ((normalDist/(n.norm()))*n)); const Vec3 tangentForce = m_shearK*tangentDisplacement; const Vec3 totalForce = normalForce + tangentForce; return totalForce; } #endif ./Model/BCorner2DInteraction.h0000664000175000017500000000365212176660653015776 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __BCORNER2DINTERACTION_H #define __BCORNER2DINTERACTION_H // --- project includes --- #include "Geometry/Corner2D.h" #include "Model/Particle.h" #include "Model/BMesh2DIP.h" /*! \class BCorner2DInteraction \brief bonded elastic interaction between Corner2D in a 2d mesh and a particle \author Steffen Abe $Revision$ $Date$ */ class BCorner2DInteraction { private: CParticle *m_p; Corner2D* m_corner; double m_k;//!< spring constant double m_break; double m_dist; double k1,k2; //!< coefficients for calculating the anchor point from the normals of the adjacent edges int b_me; int m_cid; int m_pid; bool m_inner_flag; public: typedef BMesh2DIP ParameterType; BCorner2DInteraction(); BCorner2DInteraction(CParticle*,Corner2D*,BMesh2DIP,bool iflag=true); virtual ~BCorner2DInteraction(){}; bool isInner(){return m_inner_flag;}; virtual void calcForces(); bool broken(); virtual Vec3 getPos()const {return m_p->getPos();}; // ?? inline int getPid() const {return m_pid;}; inline int getCid() const {return m_cid;}; virtual void setPP(CParticle* part_p){m_p=part_p;}; virtual void setCP(Corner2D* corner_p){m_corner=corner_p;}; friend class TML_PackedMessageInterface; }; #endif // __BCORNER2DINTERACTION_H ./Model/HertzianElasticInteraction.h0000664000175000017500000000471512176660653017350 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __HERTZIANELASTICINTERACTION_H #define __HERTZIANELASTICINTERACTION_H #include "Model/IGParam.h" #include "Model/Interaction.h" #include "Model/Particle.h" /*! \brief Interaction group parameters for Hertzian elastic interactions */ class CHertzianElasticIGP : public AIGParam { public: double m_E; double m_nu; // poisson ratio CHertzianElasticIGP(); CHertzianElasticIGP(const std::string&,double,double); virtual std::string getTypeString() const {return "HertzianElastic";} }; /*! \class CHertzianElasticInteraction \brief Hertzian Elastic Interaction between free particles \author Steffen Abe $Revision: 1201 $ $Date: 2009-07-31 12:25:45 +0200 (Fri, 31 Jul 2009) $ */ class CHertzianElasticInteraction : public APairInteraction { public: typedef double (CHertzianElasticInteraction::* ScalarFieldFunction)() const; typedef Vec3 (CHertzianElasticInteraction::* VectorFieldFunction)() const; typedef pair (CHertzianElasticInteraction::* CheckedScalarFieldFunction)() const; static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string&); private: double m_E;//!< Young's modulus double m_nu; //!< Poisson ratio Vec3 m_force; // caching force for E_pot double m_dn; // caching displacement for E_pot Vec3 m_cpos; // center position public: typedef CHertzianElasticIGP ParameterType; CHertzianElasticInteraction(CParticle*,CParticle*,const CHertzianElasticIGP&); virtual ~CHertzianElasticInteraction(){}; virtual Vec3 getPos() const {return m_cpos;}; double getPotentialEnergy() const; virtual void calcForces(); Vec3 getForce() const; }; #endif //__HERTZIANELASTICINTERACTION_H ./Model/WallInteraction.hpp0000664000175000017500000000226212176660653015511 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __WALLINTERACTION_HPP #define __WALLINTERACTION_HPP template AWallInteraction::AWallInteraction(T* p,CWall* w,bool iflag) { m_p=p; m_wall=w; m_inner_flag=iflag; m_init=true; } /*! check if any of the particles in the interaction fits tag & mask \param tag the tag \param mask the mask */ template bool AWallInteraction::hasTag(int tag ,int mask) const { int tag1=m_p->getTag(); return ((tag1 & mask)==(tag & mask)); } #endif // for the error of redefination ! ./Model/RotParticleVi.h0000664000175000017500000001615212176660653014604 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __ROTPARTICLEVI_H #define __ROTPARTICLEVI_H // -- project includes -- #include "Foundation/vec3.h" #include "Foundation/Matrix3.h" #include "Model/Particle.h" #include "Foundation/Quaternion.h" template class ParallelParticleArray; class AMPISGBufferRoot; class AMPIBuffer; class AField; //--- MPIincludes --- #include //--- STL includes --- #include #include #include #include using std::map; using std::vector; using std::pair; using std::string; namespace esys { namespace lsm { class SimpleParticleData; } } /*! Class for a rotational particle, Verlet integration */ class CRotParticleVi : public CParticle { public: // types class exchangeType { public: exchangeType() : m_pos(), m_initPos(), m_vel(), m_angVel(), m_angVel_t(), m_quat() { } exchangeType( const Vec3 &pos, const Vec3 &initPos, const Vec3 &vel, const Vec3 &AngVel, const Vec3 &currAngVel, const Quaternion &quat ) : m_pos(pos), m_initPos(initPos), m_vel(vel), m_angVel(AngVel), m_angVel_t(currAngVel), m_quat(quat) { } public: Vec3 m_pos; Vec3 m_initPos; Vec3 m_vel; Vec3 m_angVel; Vec3 m_angVel_t ; Quaternion m_quat; friend class TML_PackedMessageInterface; }; typedef double (CRotParticleVi::* ScalarFieldFunction)() const; typedef Vec3 (CRotParticleVi::* VectorFieldFunction)() const; protected: Quaternion m_quat; Quaternion m_initquat; Vec3 m_angVel; // ! Angular velocity at time t -0.5*dt Vec3 m_angVel_t ; //! Angular velocity at time t Vec3 m_moment; double m_inertRot; double m_div_inertRot; bool m_is_dynamic; public: CRotParticleVi(); CRotParticleVi(const esys::lsm::SimpleParticleData &particleData); CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, bool is_dyn ); CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& vel, const Vec3& force, int id, Quaternion& quat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t ); CRotParticleVi( double rad, double mass, const Vec3& pos, const Vec3& oldpos, const Vec3& initpos, const Vec3& vel, const Vec3& force, int id, const Quaternion& quat, const Quaternion& initquat, double inertRot, const Vec3& moment, const Vec3& angvel, const Vec3& angvel_t ); CRotParticleVi(const CParticle &p); virtual ~CRotParticleVi(){}; static int getPackSize(); static ScalarFieldFunction getScalarFieldFunction(const string&); static VectorFieldFunction getVectorFieldFunction(const string&); // Need to define this for template class using forAllParticles call in Parallel/SubLattice.hpp. Vec3 getDisplacement() const {return CParticle::getDisplacement();}; void resetDisplacement() {CParticle::resetDisplacement();} inline const Vec3 &getAngVel () const { return m_angVel;} inline const Vec3 getAngVel_t () const { return m_angVel_t ;} ; inline void setAngVel_t (const Vec3 &v) { m_angVel_t = v;} ; inline Vec3 getAngVelNR () const { return m_angVel_t;} // for field functions inline void setAngVel(const Vec3 &V) { m_angVel = V;} inline Quaternion getInitQuat() const { return m_initquat;} inline Quaternion getQuat() const { return m_quat;} inline void setQuat(const Quaternion &q) {m_quat = q;} inline double getInertRot () const { return m_inertRot; } inline void setInertRot (double inertRot) { m_inertRot = inertRot; m_div_inertRot = 1.0/m_inertRot; } inline double getInvInertRot () const { return m_div_inertRot; } inline Vec3 getMoment() const {return m_moment;} inline void setMoment(const Vec3 &moment) {m_moment = moment;} Vec3 getAngVector()const ; void applyMoment( const Vec3&); void integrate(double); void zeroForce(); //wycnewadded virtual void zeroHeat(){} ; virtual void integrateTherm(double){} ; virtual void setTemperature(double){} ; virtual void setCp(double){} ; virtual void setThermExpansion0(double){} ; virtual void setThermExpansion1(double){} ; virtual void setThermExpansion2(double){} ; virtual void thermExpansion(){} ; virtual double get_y() {return m_pos.Y(); } ; void rescale(); void setCircular(const Vec3& cv); double getAngularKineticEnergy() const {return (0.2*m_mass*m_rad*m_rad)*(m_angVel_t*m_angVel_t);} double getLinearKineticEnergy() const {return (0.5*m_mass)*(m_vel*m_vel);} double getKineticEnergy() const {return getLinearKineticEnergy() + getAngularKineticEnergy();} void writeAsDXLine(ostream&,int slid=0); virtual void setNonRot() {m_inertRot=0.0;m_div_inertRot=0.0;}; inline Quaternion getQuatFromRotVec(const Vec3 &vec) const { const double angle = vec.norm(); const double halfAngle = angle/2.0; if (halfAngle > 0.0) { return Quaternion(cos(halfAngle), (vec)*(sin(halfAngle)/angle)); } return Quaternion(); } void rotateBy(const Vec3 &vec) {m_quat = getQuatFromRotVec(vec)*m_quat;} void rotateTo(const Vec3 &vec) {m_quat = getQuatFromRotVec(vec);} static map generateFields(ParallelParticleArray*); friend ostream& operator<<(ostream&, const CRotParticleVi&); void print(){cout << *this << endl << flush;}; // -- checkpointing -- virtual void saveSnapShotData(std::ostream& oStream); virtual void saveCheckPointData(std::ostream& oStream); virtual void loadCheckPointData(std::istream& iStream); CRotParticleVi::exchangeType getExchangeValues(); void setExchangeValues(const CRotParticleVi::exchangeType &e); // stress inline double sigma_xx_2D() const {return m_sigma(0,0)/(M_PI*m_rad*m_rad);}; inline double sigma_xy_2D() const {return m_sigma(0,1)/(M_PI*m_rad*m_rad);}; inline double sigma_yy_2D() const {return m_sigma(1,1)/(M_PI*m_rad*m_rad);}; // inline double sigma_d() const; static void get_type() {cout <<" CRotParticleVi" ;}; friend class TML_PackedMessageInterface; template void visit(TmplVisitor &visitor) { visitor.visitRotParticleVi(*this); } }; #endif //__ROTPARTICLEVI_H ./ppa/0000775000175000017500000000000012176660653011417 5ustar vborosvboros./ppa/util/0000775000175000017500000000000012176660653012374 5ustar vborosvboros./ppa/util/partpack.cpp0000664000175000017500000000232112176660653014703 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "packed_message_interface.h" #include "BasicParticle.h" #include "vec3.h" template<> void TML_PackedMessageInterface::pack(const CBasicParticle& p) { Vec3 pos=p.getPos(); append(pos.X()); append(pos.Y()); append(pos.Z()); append(p.getRad()); append(p.getID()); } template<> void TML_PackedMessageInterface::unpack(CBasicParticle& p) { double x=pop_double(); double y=pop_double(); double z=pop_double(); double r=pop_double(); int id=pop_int(); p=CBasicParticle(id,Vec3(x,y,z),r); } ./ppa/src/0000775000175000017500000000000012176660653012206 5ustar vborosvboros./ppa/src/CMakeLists.txt0000664000175000017500000000042012176660653014742 0ustar vborosvborosFILE(GLOB MODEL_SRC_LIB "*.cpp") #=========================================================== ADD_LIBRARY(libppa SHARED ${MODEL_SRC_LIB}) TARGET_LINK_LIBRARIES(libppa ${Boost_LIBRARIES} ${PYTHON_LIBRARIES}) INSTALL(TARGETS libppa DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) ./ppa/src/pp_array.h0000664000175000017500000001774412176660653014211 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #ifndef __PARALLEL_PARTICLE_ARRAY_H #define __PARALLEL_PARTICLE_ARRAY_H //--- MPI --- #include //--- project includes --- #include "ntable/src/ntable.h" #include "ntable/src/nt_block.h" #include "tml/comm/comm.h" #include "tml/comm/cart_comm.h" #include "Foundation/vec3.h" #include "Geometry/Triangle.h" #include "Geometry/AEdge.h" //--- STL includes --- #include #include using std::vector; using std::set; //--- IO includes --- /*! \class AParallelParticleArray \brief abstract base class for parallel particle storage array */ class AParallelParticleArray { protected: TML_CartComm m_comm; int m_timestamp; public: AParallelParticleArray(TML_Comm *comm, const std::vector &dims); AParallelParticleArray(TML_Comm *comm, const std::vector &dims, const std::vector &circ); // virtual destructor virtual ~AParallelParticleArray(){}; // get communicator TML_CartComm getComm() const {return m_comm;}; //! return time stamp of last rebuild int getTimeStamp(){return m_timestamp;}; // get ids of boundary particles virtual set getBoundarySlabIds(int,int) const=0; virtual set get2ndSlabIds(int,int) const=0; // check if pos is in inner part virtual bool isInInner(const Vec3&)=0; }; /*! \class ParallelParticleArray \brief parrallel particle storage array with neighborsearch and variable exchange */ template class ParallelParticleArray : public AParallelParticleArray { public: // types typedef T_Handle::pairlist> PairListHandle; typedef typename NeighborTable::pairlist::iterator PairListIterator; typedef T_Handle::particlelist> ParticleListHandle; typedef typename NeighborTable::particlelist::iterator ParticleListIterator; private: NeighborTable* m_nt; Vec3 m_minpos,m_maxpos; //!< local minimum and maximum positions double m_xshift,m_yshift,m_zshift; //!< circular shift values bool m_circ_edge_x_up,m_circ_edge_x_down; //!< circular edge flags static const int m_exchg_tag; // helper fnc template void exchange_single(P (T::*rdf)(),void (T::*wrtf)(const P&),NTSlab,NTSlab,int,int); protected: public: ParallelParticleArray(TML_Comm *comm, const vector &dims,const Vec3 &min,const Vec3 &max, double rmax,double alpha); ParallelParticleArray(TML_Comm *comm, const vector &dims, const vector &circ,const Vec3 &min,const Vec3 &max, double rmax,double alpha); ~ParallelParticleArray(); // info func Vec3 getMinPos()const {return m_minpos;}; Vec3 getMaxPos()const {return m_maxpos;}; vector getCommCoords() const {return m_comm.get_coords();}; vector getCommDims() const {return m_comm.get_all_dims();}; int size(){return m_nt->size();}; int getInnerSize(){return (m_nt->inner()).size();}; // particle insert ops void insert(const T&); //!< particle insertion void insert(const vector&); //!< multi particle insert // check if pos is in inner part virtual bool isInInner(const Vec3&); // particle access (ugly!) T* getParticlePtrByIndex(int); T* getParticlePtrByPosition(const Vec3&); // rebuild void rebuild(); //--- collective particle ops --- // variable exchange template void exchange(P (T::*rdf)(),void (T::*wrtf)(const P&)); // call member func for single particle by id void forParticle(int,void (T::*rdf)()); template void forParticle(int,void (T::*rdf)(P),const P&); // call member func for single particle by tag void forParticleTag(int,void (T::*rdf)()); template void forParticleTag(int,void (T::*rdf)(P),const P&); void forParticleTagMask(int,int,void (T::*rdf)()); template void forParticleTagMask(int,int,void (T::*rdf)(P),const P&); // call member func for all particles, different nr. of params void forAllParticles(void (T::*rdf)()); void forAllParticles(void (T::*rdf)()const); template void forAllParticles(void (T::*rdf)(P),const P&); // call member func for all inner particles template void forAllInnerParticles(void (T::*rdf)(P&),P&); class ParticleIterator { public: typedef NTBlock NtBlock; typedef T Particle; typedef typename NtBlock::iterator BlockIterator; ParticleIterator(const NtBlock &ntBlock); bool hasNext() const; Particle &next(); int getNumRemaining() const; private: NtBlock m_ntBlock; BlockIterator m_it; int m_numRemaining; }; ParticleIterator getInnerParticleIterator(); // particle data access functions template void forAllParticlesGet(P&,typename P::value_type (T::*rdf)() const); template void forAllInnerParticlesGet(P&,typename P::value_type (T::*rdf)() const); template vector > forAllParticlesGetIndexed(P (T::*rdf)() const); template vector > forAllInnerParticlesGetIndexed(P (T::*rdf)() const); // particle data access functions with tag check template void forAllTaggedParticlesGet(P&,typename P::value_type (T::*rdf)() const,int,int); template void forAllTaggedInnerParticlesGet(P&,typename P::value_type (T::*rdf)() const,int,int); template vector > forAllTaggedParticlesGetIndexed(P (T::*rdf)() const,int,int); template vector > forAllInnerTaggedParticlesGetIndexed(P (T::*rdf)() const,int,int); // geometric data access function template void forPointsGetNearest(P&,typename P::value_type (T::*rdf)() const,const Vec3&,double,double,double,int,int,int); // get ids of boundary particles virtual set getBoundarySlabIds(int,int) const; virtual set get2ndSlabIds(int,int) const; //--- get neigborlist stuff --- //! Get list of all pairs. Forwards to NTable::getFullList(). PairListHandle getFullPairList(){return m_nt->getFullList();}; //! Get list of new pairs. Forwards to NTable::getNewList(). PairListHandle getNewPairList(){return m_nt->getNewList();}; //! Get list of particles along a plane. Forwards to NTable::getParticlesAtPlane ParticleListHandle getParticlesAtPlane(Vec3 o,Vec3 n){return m_nt->getParticlesAtPlane(o,n);}; //! Get list of particles near a triangle. Forwards to NTable::getParticlesNearTriangle ParticleListHandle getParticlesNearTriangle(const Triangle& t){return m_nt->getParticlesNearTriangle(t);}; //! Get list of particles near an edge. Forwards to NTable::getParticlesNearEdge ParticleListHandle getParticlesNearEdge(const AEdge* e){return m_nt->getParticlesNearEdge(e);}; //! Get list of particles near a point. Forwards to NTable::getParticlesNearEdge ParticleListHandle getParticlesNearPoint(const Vec3& v){return m_nt->getParticlesNearPoint(v);}; //! Get list of all particles. Forwards to NTable ParticleListHandle getAllParticles(){return m_nt->getAllParticles();}; //! get all particles in inner block and put them into a vector void getAllInnerParticles(vector&); //--- checkpointing --- void saveCheckPointData(std::ostream&); void loadCheckPointData(std::istream&); //--- output (for debugging)--- template friend ostream& operator<<(ostream &, const ParallelParticleArray &); }; #include "ppa/src/pp_array.hpp" #endif //__PARALLEL_PARTICLE_ARRAY_H ./ppa/src/app_array.cpp0000664000175000017500000000265312176660653014676 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// #include "ppa/src/pp_array.h" /*! Constructor, assuming no circular boundary conditions. Just sets up the cartesian communicator \param comm the communicator \param dims the dimensions of the process space */ AParallelParticleArray::AParallelParticleArray(TML_Comm *comm, const std::vector &dims):m_comm(comm, dims, vector(dims.size(),false)) { } /*! Constructor with given circular boundary conditions. Just sets up the cartesian communicator \param comm the communicator \param dims the dimensions of the process space \param circ the circular boundary conditions */ AParallelParticleArray::AParallelParticleArray(TML_Comm *comm, const std::vector &dims, const std::vector &circ):m_comm(comm,dims,circ) {} ./ppa/src/Makefile.am0000664000175000017500000000175512176660653014252 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am AM_CPPFLAGS += -I$(top_srcdir)/Foundation lib_LTLIBRARIES = libppa.la libppa_la_SOURCES = app_array.cpp pp_array.h pp_array.hpp libppa_la_LIBADD = \ $(top_builddir)/tml/comm/libTmlComm.la \ $(top_builddir)/ntable/src/libntable.la ./ppa/src/pp_array.hpp0000664000175000017500000010072512176660653014541 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// ///--- IO includes --- #include "Foundation/console.h" #include #include #include #ifdef __INTEL_COMPILER #include #else #include #endif using std::cout; using std::cerr; using std::endl; using std::flush; //--- TML includes --- #include "ntable/src/nt_slab.h" //--- STL includes --- #include using std::pair; using std::make_pair; template const int ParallelParticleArray::m_exchg_tag=42; /*! Construct a parallel particle array from a given communicator and geometry, i.e. minimum and maximum corners and search range. The process topology is generated from the communicator (via MPI_Dims_create). All boundaries are assumed to be open (i.e. not circular) \param comm the communicator \param dims the dimensions the process space. {dims[0]=0; dims[1]=0; dims[2]=0;}--is 3D allocation of processors. {dims[0]=0; dims[1]=0; dims[2]=1;}--is 2D allocation of processors. {dims[0]=0; dims[1]=1; dims[2]=1;}--is 1D allocation of processors. \param min the (global) minimum corner of the model space \param max the (global) maximum corner of the model space \param range the search range \param alpha the pair search cutoff \todo check for (dims.size() > 3) */ template ParallelParticleArray::ParallelParticleArray(TML_Comm *comm, const std::vector &dims,const Vec3& min, const Vec3& max ,double range, double alpha):AParallelParticleArray(comm, dims), m_nt(NULL) { //- set x-edges to non-circular m_circ_edge_x_down=false; m_circ_edge_x_up=false; //- get own process coords vector pcoords=m_comm.get_coords(); //- initialize ntable // get global number of cells int nx_global,ny_global,nz_global; nx_global=lrint((max[0]-min[0])/range); ny_global=lrint((max[1]-min[1])/range); nz_global=lrint((max[2]-min[2])/range); if ((fabs((double(nx_global)-(max[0]-min[0])/range)) > 1e-6) || (fabs((double(ny_global)-(max[1]-min[1])/range)) > 1e-6) || (fabs((double(nz_global)-(max[2]-min[2])/range)) > 1e-6)){ m_nt=NULL; std::stringstream msg; msg << "size doesn't fit range" << endl; // replace by throw msg << "diff x : " << double(nx_global)-(max[0]-min[0])/range << endl; msg << "diff y : " << double(ny_global)-(max[1]-min[1])/range << endl; msg << "diff z : " << double(nz_global)-(max[2]-min[2])/range << endl; console.Error() << msg.str() << "\n"; throw std::runtime_error(msg.str()); } else { // calc local min. cell, considering overlap int nx_min=((nx_global*pcoords[0])/m_comm.get_dim(0))-1; int ny_min=((ny_global*pcoords[1])/m_comm.get_dim(1))-1; int nz_min=((nz_global*pcoords[2])/m_comm.get_dim(2))-1; // calc local number of cells, considering overlap int nx=(((nx_global*(pcoords[0]+1))/m_comm.get_dim(0))-nx_min)+1; int ny=(((ny_global*(pcoords[1]+1))/m_comm.get_dim(1))-ny_min)+1; int nz=(((nz_global*(pcoords[2]+1))/m_comm.get_dim(2))-nz_min)+1; // init m_nt=new NeighborTable(nx,ny,nz,range,alpha,min,nx_min,ny_min,nz_min); } // init time stamp m_timestamp=0; } /*! Construct a parallel particle array from a given communicator and geometr, i.e. minimum and maximum corners and search range. The process topology is generated from the communicator (via MPI_Dims_create). The boundary conditions i.e. circular or open are given as parameter. \param comm the communicator \param dims the dimensions the process space. {dims[0]=0; dims[1]=0; dims[2]=0;}--is 3D allocation of processors. {dims[0]=0; dims[1]=0; dims[2]=1;}--is 2D allocation of processors. {dims[0]=0; dims[1]=1; dims[2]=1;}--is 1D allocation of processors. \param circ circular/open boundary conditions {circ[0] : x-direction, circ[1] : y-direction and circ[2] : z-direction, {true : circular, false : open} \param min the (global) minimum corner of the model space \param max the (global) maximum corner of the model space \param range the search range \param alpha the pair search cutoff \todo check for (dims.size() > 3) */ template ParallelParticleArray::ParallelParticleArray(TML_Comm *comm, const vector &dims, const vector &circ,const Vec3 &min,const Vec3 &max, double range, double alpha):AParallelParticleArray(comm,dims,circ), m_nt(NULL) { //- get own process coords vector pcoords=m_comm.get_coords(); //- initialize ntable // get global number of cells int nx_global,ny_global,nz_global; nx_global=lrint((max[0]-min[0])/range); ny_global=lrint((max[1]-min[1])/range); nz_global=lrint((max[2]-min[2])/range); if ((fabs((double(nx_global)-(max[0]-min[0])/range)) > 1e-6) || (fabs((double(ny_global)-(max[1]-min[1])/range)) > 1e-6) || (fabs((double(nz_global)-(max[2]-min[2])/range)) > 1e-6)){ m_nt=NULL; std::stringstream msg; msg << "size doesn't fit range" << endl; // replace by throw msg << "diff x : " << double(nx_global)-(max[0]-min[0])/range << endl; msg << "diff y : " << double(ny_global)-(max[1]-min[1])/range << endl; msg << "diff z : " << double(nz_global)-(max[2]-min[2])/range << endl; throw std::runtime_error(msg.str()); } else { // calc local min. cell, considering overlap int nx_min=((nx_global*pcoords[0])/m_comm.get_dim(0))-1; int ny_min=((ny_global*pcoords[1])/m_comm.get_dim(1))-1; int nz_min=((nz_global*pcoords[2])/m_comm.get_dim(2))-1; // calc local number of cells, considering overlap int nx=(((nx_global*(pcoords[0]+1))/m_comm.get_dim(0))-nx_min)+1; int ny=(((ny_global*(pcoords[1]+1))/m_comm.get_dim(1))-ny_min)+1; int nz=(((nz_global*(pcoords[2]+1))/m_comm.get_dim(2))-nz_min)+1; // init local neighbortable m_nt=new NeighborTable(nx,ny,nz,range,alpha,min,nx_min,ny_min,nz_min); // setup circular shift values m_xshift=(max-min).X(); m_yshift=(max-min).Y(); m_zshift=(max-min).Z(); // setup circular edges m_circ_edge_x_down=(circ[0] && (pcoords[0]==0)) ? true : false ; m_circ_edge_x_up=(circ[0] && (pcoords[0]==m_comm.get_dim(0)-1)) ? true : false ; } // init time stamp m_timestamp=0; } /*! destructor */ template ParallelParticleArray::~ParallelParticleArray() { if(m_nt!=NULL) delete m_nt; } /*! insert a single particle into the storage \param p the particle */ template void ParallelParticleArray::insert(const T& p) { m_nt->insert(p); } /*! insert a STL vector of particles into the storage \param vp the vector of particles */ template void ParallelParticleArray::insert(const vector& vp) { for(typename vector::const_iterator iter=vp.begin(); iter!=vp.end(); iter++){ m_nt->insert(*iter); } } /*! check if a position is in the inner part \param pos the position */ template bool ParallelParticleArray::isInInner(const Vec3& pos) { return m_nt->isInInner(pos); } /*! Get the pointer to a particle with a given id. Return NULL if there is no particle with this index. \param id the particle id. */ template T* ParallelParticleArray::getParticlePtrByIndex(int id) { return m_nt->ptr_by_id(id); } /*! Get the pointer to a particle closest to a given position. Return NULL if the position is outside the area. \param pos the position. */ template T* ParallelParticleArray::getParticlePtrByPosition(const Vec3& pos) { return m_nt->getNearestPtr(pos); } /*! Rebuild the neighbor table, i.e. relocate particles to the appropriate gridpoints and exchange boundary particles with neighboring nodes. No (geometric) resizing done. */ template void ParallelParticleArray::rebuild() { // cout << "PPA at node " << m_comm.rank() << "rebuilding " << endl << flush; //- get own process coords (for debug output) vector pcoords=m_comm.get_coords(); // rebuild locally // cout << "node " << m_comm.rank() << " pre-build " << *m_nt << endl; m_nt->build(); // cout << "node " << m_comm.rank() << " pre-exchange " << *m_nt << endl; //- exchange boundary particles NTSlab up_slab; NTSlab down_slab; vector recv_data; bool circ_edge=false; // x-dir (there is at least one dimension) if(m_comm.get_dim(0)>1){ // clean out boundary slabs NTSlab up_boundary_slab=m_nt->yz_slab(m_nt->xsize()-1); up_boundary_slab.erase(up_boundary_slab.begin(),up_boundary_slab.end()); NTSlab down_boundary_slab=m_nt->yz_slab(0); down_boundary_slab.erase(down_boundary_slab.begin(),down_boundary_slab.end()); // synchronize m_comm.barrier(); // define tranfer slabs up_slab=m_nt->yz_slab(m_nt->xsize()-2); down_slab=m_nt->yz_slab(1); // upstream if(m_circ_edge_x_up){ // circ. bdry // cout << "circular shift, node " << m_comm.rank() << " x-dim, up slab size " << up_slab.size() << endl; // copy particles from transfer slab into buffer vector buffer; for(typename NTSlab::iterator iter=up_slab.begin(); iter!=up_slab.end(); iter++){ buffer.push_back(*iter); } // shift particles in buffer by circular shift value for(typename vector::iterator iter=buffer.begin(); iter!=buffer.end(); iter++){ iter->setCircular(Vec3(-1.0*m_xshift,0.0,0.0)); } m_comm.shift_cont_packed(buffer,*m_nt,0,1,m_exchg_tag); } else { m_comm.shift_cont_packed(up_slab,*m_nt,0,1,m_exchg_tag); } // downstream if(m_circ_edge_x_down){// circ. bdry // cout << "circular shift , node " << m_comm.rank() << " x-dim, down slab size " << down_slab.size() << endl; // copy particles from transfer slab into buffer vector buffer; for(typename NTSlab::iterator iter=down_slab.begin(); iter!=down_slab.end(); iter++){ buffer.push_back(*iter); } // shift particles in buffer by circular shift value for(typename vector::iterator iter=buffer.begin(); iter!=buffer.end(); iter++){ iter->setCircular(Vec3(m_xshift,0.0,0.0)); } m_comm.shift_cont_packed(buffer,*m_nt,0,-1,m_exchg_tag); } else { m_comm.shift_cont_packed(down_slab,*m_nt,0,-1,m_exchg_tag); } } // y-dir if(m_comm.get_dim(1)>1){ // clean out boundary slabs NTSlab up_boundary_slab=m_nt->xz_slab(m_nt->ysize()-1); up_boundary_slab.erase(up_boundary_slab.begin(),up_boundary_slab.end()); NTSlab down_boundary_slab=m_nt->xz_slab(0); down_boundary_slab.erase(down_boundary_slab.begin(),down_boundary_slab.end()); // synchronize m_comm.barrier(); // define tranfer slabs up_slab=m_nt->xz_slab(m_nt->ysize()-2); down_slab=m_nt->xz_slab(1); if(!circ_edge){ // normal boundary // upstream m_comm.shift_cont_packed(up_slab,*m_nt,1,1,m_exchg_tag); // downstream m_comm.shift_cont_packed(down_slab,*m_nt,1,-1,m_exchg_tag); } else { // circular edge -> buffer & shift received particles cout << "circular y shift not implemented" << endl; } } // z-dir if(m_comm.get_dim(2)>1){ // cout << "zdim= " << m_comm.get_dim(2) << " shifting" << endl; // clean out boundary slabs NTSlab up_boundary_slab=m_nt->xy_slab(m_nt->zsize()-1); up_boundary_slab.erase(up_boundary_slab.begin(),up_boundary_slab.end()); NTSlab down_boundary_slab=m_nt->xy_slab(0); down_boundary_slab.erase(down_boundary_slab.begin(),down_boundary_slab.end()); // define tranfer slabs up_slab=m_nt->xy_slab(m_nt->zsize()-2); down_slab=m_nt->xy_slab(1); if(!circ_edge){ // normal boundary // upstream m_comm.shift_cont_packed(up_slab,*m_nt,2,1,m_exchg_tag); // downstream m_comm.shift_cont_packed(down_slab,*m_nt,2,-1,m_exchg_tag); } else { // circular edge -> buffer & shift received particles cout << "circular x shift not implemented" << endl; } } // update timestamp m_timestamp++; // debug // cout << "node " << m_comm.rank() << "post-exchange " << *m_nt << flush; } /*! For all particles shared with neighboring nodes, exchange some value accessible by read and write functions. \param rdf the particle member function to read the value \param wrtf the particle member function to write the value */ template template void ParallelParticleArray::exchange(P (T::*rdf)(),void (T::*wrtf)(const P&)) { // x-dir (there is at least one dimension) if(m_comm.get_dim(0)>1){ // cout << "xdim= " << m_comm.get_dim(0) << " exchanging" << endl; // do transfer exchange_single(rdf,wrtf,m_nt->yz_slab(m_nt->xsize()-2),m_nt->yz_slab(0),0,1); // downstream exchange_single(rdf,wrtf,m_nt->yz_slab(1),m_nt->yz_slab(m_nt->xsize()-1),0,-1); } // y-dir if(m_comm.get_dim(1)>1){ // cout << "ydim= " << m_comm.get_dim(1) << " shifting" << endl; // upstream exchange_single(rdf,wrtf,m_nt->xz_slab(m_nt->ysize()-2),m_nt->xz_slab(0),1,1); // downstream exchange_single(rdf,wrtf,m_nt->xz_slab(1),m_nt->xz_slab(m_nt->ysize()-1),1,-1); } // z-dir if(m_comm.get_dim(2)>1){ // cout << "zdim= " << m_comm.get_dim(2) << " shifting" << endl; // upstream exchange_single(rdf,wrtf,m_nt->xy_slab(m_nt->zsize()-2),m_nt->xy_slab(0),2,1); // downstream exchange_single(rdf,wrtf,m_nt->xy_slab(1),m_nt->xy_slab(m_nt->zsize()-1),2,-1); } } /*! Helper function which does the actual shifting of values for exchange \param rdf the particle member function to read the value \param wrtf the particle member function to write the value \param send_slab the NTSlab in which the data to be sent are located \param recv_slab the NTSlab in which the received data will be applied \param dir the direction of the transfer (x,y,z) \param dist the shift distance, i.e. up or down (1,-1) */ template template void ParallelParticleArray::exchange_single(P (T::*rdf)(),void (T::*wrtf)(const P&), NTSlab send_slab,NTSlab recv_slab, int dir,int dist) { vector

send_data; vector

recv_data; // get data for(typename NTSlab::iterator iter=send_slab.begin(); iter!=send_slab.end(); iter++){ send_data.push_back(((*iter).*rdf)()); // cout << "put exchange values from particle " << iter->getID() << " into buffer" << endl; } // exchange m_comm.shift_cont_packed(send_data,recv_data,dir,dist,m_exchg_tag); // apply received data // check if sizes are correct if(recv_data.size()==recv_slab.size()){ int count=0; for(typename NTSlab::iterator iter=recv_slab.begin(); iter!=recv_slab.end(); iter++){ ((*iter).*wrtf)(recv_data[count]); // cout << "wrote exchange value to particle " << iter->getID() << endl; count++; } }else{ cerr << "rank = " << m_comm.rank() << ":ParallelParticleArray::exchange_single ERROR: size mismatch in received data, recv_data.size()!=recv_slab.size() - (" << recv_data.size() << "!=" << recv_slab.size() << "). dir = " << dir << ", dist = " << dist << endl; } } /*! Call a member function taking no argument for one particle. Do nothing if the particle with the id is not in the ntable. \param id the id of the particle \param mf the member function \warning current implementation is O(n) */ template void ParallelParticleArray::forParticle(int id,void (T::*mf)()) { T* pp=m_nt->ptr_by_id(id); if(pp!=NULL){ (pp->*mf)(); } } /*! Call a member function taking one argument for one particle. Do nothing if the particle with the id is not in the ntable. \param id the id of the particle \param mf the member function \param arg the argument to the function call \warning current implementation is O(n) */ template template void ParallelParticleArray::forParticle(int id,void (T::*mf)(P),const P& arg) { T* pp=m_nt->ptr_by_id(id); if(pp!=NULL){ (pp->*mf)(arg); } } /*! Call a member function taking no argument for all particles with a given tag. \param tag the tag \param mf the member function */ template void ParallelParticleArray::forParticleTag(int tag,void (T::*mf)()) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ if(iter->getTag()==tag){ ((*iter).*mf)(); } } } /*! Call a member function taking one argument for all particleswith a given tag. \param tag the tag \param mf the member function \param arg the argument to the function call */ template template void ParallelParticleArray::forParticleTag(int tag,void (T::*mf)(P),const P& arg) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ if(iter->getTag()==tag){ ((*iter).*mf)(arg); } } } /*! Call a member function taking no argument for all particles with a given tag and mask. The functions is called if the masked bits in the particle tag and the given tag are identical, i.e. if ptag & mask == tag & mask \param tag the tag \param mask the mask \param mf the member function */ template void ParallelParticleArray::forParticleTagMask(int tag,int mask, void (T::*mf)()) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ if((iter->getTag() & mask) == (tag & mask)){ ((*iter).*mf)(); } } } /*! Call a member function taking one argument for all particles with a given tag and mask. The functions is called if the masked bits in the particle tag and the given tag are identical, i.e. if ptag & mask == tag & mask \param tag the tag \param mask the mask \param mf the member function \param arg the argument to the function call */ template template void ParallelParticleArray::forParticleTagMask(int tag,int mask,void (T::*mf)(P),const P& arg) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ if((iter->getTag() & mask) == (tag & mask)){ ((*iter).*mf)(arg); } } } /*! call a particle member function taking no argument for all particles */ template void ParallelParticleArray::forAllParticles(void (T::*fnc)()) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ ((*iter).*fnc)(); } } /*! call a const particle member function taking no argument for all particles */ template void ParallelParticleArray::forAllParticles(void (T::*fnc)()const) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ ((*iter).*fnc)(); } } /*! call a particle member function taking one argument for all particles \param fnc the particle member function \param arg the argument to the particle member function */ template template void ParallelParticleArray::forAllParticles(void (T::*fnc)(P),const P& arg) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ ((*iter).*fnc)(arg); } } /*! call a particle member function taking one argument for all inner particles \param fnc the particle member function \param arg the argument to the particle member function */ template template void ParallelParticleArray::forAllInnerParticles(void (T::*fnc)(P&),P& arg) { NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ ((*iter).*fnc)(arg); } } /*! Call a constant particle member function taking no argument and returning a value for all particles and collect the return values in a container. The container has to be an STL sequence container (vector,list...) or something with the same interface. The template parameter P is a type of container of the return type of the particle member function, not the return type itself. The container had to be reference argument because template instantiation based only on return type is impossible. \param cont the container \param rdf the particle member function */ template template void ParallelParticleArray::forAllParticlesGet(P& cont,typename P::value_type (T::*rdf)()const) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ cont.push_back(((*iter).*rdf)()); } } template ParallelParticleArray::ParticleIterator::ParticleIterator( const NtBlock &ntBlock ) : m_ntBlock(ntBlock), m_it(m_ntBlock.begin()) { m_it = m_ntBlock.begin(); m_numRemaining = m_ntBlock.size(); } template bool ParallelParticleArray::ParticleIterator::hasNext() const { return (m_numRemaining > 0); } template typename ParallelParticleArray::ParticleIterator::Particle &ParallelParticleArray::ParticleIterator::next() { Particle &p = (*m_it); m_it++; m_numRemaining--; return p; } template int ParallelParticleArray::ParticleIterator::getNumRemaining() const { return m_numRemaining; } template typename ParallelParticleArray::ParticleIterator ParallelParticleArray::getInnerParticleIterator() { return ParticleIterator(m_nt->inner()); } /*! Get a value for all inner particle using a particle member function and return the values in a container. \param cont the container \param rdf the particle member function */ template template void ParallelParticleArray::forAllInnerParticlesGet(P& cont,typename P::value_type (T::*rdf)()const) { NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ cont.push_back(((*iter).*rdf)()); } } /*! Get a value for each particle using a particle member function and return a vector of pairs of the particle id and the value. \param rdf the particle member function */ template template vector > ParallelParticleArray::forAllParticlesGetIndexed(P (T::*rdf)() const) { vector > res; for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ res.push_back(make_pair(iter->getID(),((*iter).*rdf)())); } return res; } /*! Get a value all inner particles using a particle member function and return a vector of pairs of the particle id and the value. \param rdf the particle member function */ template template vector > ParallelParticleArray::forAllInnerParticlesGetIndexed(P (T::*rdf)() const) { vector > res; NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ res.push_back(make_pair(iter->getID(),((*iter).*rdf)())); } return res; } /*! Call a constant particle member function taking no argument and returning a value for all particles which have a tag fitting a given tag and mask and collect the return values in a container. The container has to be an STL sequence container (vector,list...) or something with the same interface. The template parameter P is a type of container of the return type of the particle member function, not the return type itself. The container had to be reference argument because template instantiation based only on return type is impossible. \param cont the container \param rdf the particle member function \param tag the particle tag \param mask the mask */ template template void ParallelParticleArray::forAllTaggedParticlesGet(P& cont,typename P::value_type (T::*rdf)()const,int tag,int mask) { for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ if((iter->getTag() | mask )==(tag | mask)){ cont.push_back(((*iter).*rdf)()); } } } /*! Get a value for all inner particle which have a tag fitting a given tag and mask using a particle member function and return the values in a container. \param cont the container \param rdf the particle member function \param tag the particle tag \param mask the mask */ template template void ParallelParticleArray::forAllTaggedInnerParticlesGet(P& cont,typename P::value_type (T::*rdf)()const,int tag,int mask) { NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ int ptag=iter->getTag(); if((ptag & mask )==(tag & mask)){ cont.push_back(((*iter).*rdf)()); } } } /*! Get a value for each particle which has a tag fitting a given tag and mask using a particle member function and return a vector of pairs of the particle id and the value. \param rdf the particle member function \param tag the particle tag \param mask the mask */ template template vector > ParallelParticleArray::forAllTaggedParticlesGetIndexed(P (T::*rdf)() const,int tag,int mask) { vector > res; for(typename NeighborTable::iterator iter=m_nt->begin(); iter!=m_nt->end(); iter++){ int id=iter->getID(); int ptag=iter->getTag(); if(( ptag & mask )==(tag & mask)){ res.push_back(make_pair(id,((*iter).*rdf)())); } } return res; } /*! Get a value all inner particles which have a tag fitting a given tag and mask using a particle member function and return a vector of pairs of the particle id and the value. \param rdf the particle member function \param tag the particle tag \param mask the mask */ template template vector > ParallelParticleArray::forAllInnerTaggedParticlesGetIndexed(P (T::*rdf)() const,int tag,int mask) { vector > res; NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ int id=iter->getID(); int ptag=iter->getTag(); if((ptag & mask )==(tag & mask)){ res.push_back(make_pair(id,((*iter).*rdf)())); } } return res; } /*! get a value for the nearest particle to each point of a grid using a particle member function and return a container with the values \param cont the container \param rdf the particle member function returning the value \param orig the base point of the grid \param dx the grid spacing in x-direction \param dy the grid spacing in y-direction \param dz the grid spacing in z-direction \param nx the grid size in x-direction \param ny the grid size in y-direction \param nz the grid size in z-direction */ template template void ParallelParticleArray::forPointsGetNearest(P& cont,typename P::value_type (T::*rdf)() const,const Vec3& orig, double dx,double dy,double dz,int nx,int ny,int nz) { console.Debug() << "forPointsGetNearest" << "\n"; Vec3 u_x=Vec3(1.0,0.0,0.0); Vec3 u_y=Vec3(0.0,1.0,0.0); Vec3 u_z=Vec3(0.0,0.0,1.0); for(int ix=0;ixgetNearestPtr(p))).*rdf)()); } } } console.Debug() << "end forPointsGetNearest" << "\n"; } /*! Get the Ids of all particles in the boundary slab. \param dir the direction ,i.e. 0->x, 1->y and 2->z \param up up (1) or down (-1) */ template set ParallelParticleArray::getBoundarySlabIds(int dir,int up) const { set res; NTSlab slab,slab2; switch(dir){ case 0 : // x-dir if(up==1){ slab=m_nt->yz_slab(m_nt->xsize()-1); slab2=m_nt->yz_slab(m_nt->xsize()-2); } else { slab=m_nt->yz_slab(0); slab2=m_nt->yz_slab(1); } break; case 1 : // y-dir if(up==1){ slab=m_nt->xz_slab(m_nt->ysize()-1); slab2=m_nt->xz_slab(m_nt->ysize()-2); } else { slab=m_nt->xz_slab(0); slab2=m_nt->xz_slab(1); } break; case 2 : // z-dir if(up==1){ slab=m_nt->xy_slab(m_nt->zsize()-1); slab2=m_nt->xy_slab(m_nt->zsize()-2); } else { slab=m_nt->xy_slab(0); slab2=m_nt->xy_slab(1); } break; default: cout << "Error: wrong direction " << dir << " in getBoundarySlabIds" << endl; } for(typename NTSlab::iterator iter=slab.begin(); iter!=slab.end(); iter++){ res.insert(iter->getID()); } for(typename NTSlab::iterator iter=slab2.begin(); iter!=slab2.end(); iter++){ res.insert(iter->getID()); } return res; } /*! Get the Ids of all particles in the slab next to the boundary. \param dir the direction ,i.e. 0->x, 1->y and 2->z \param up up (1) or down (-1) */ template set ParallelParticleArray::get2ndSlabIds(int dir,int up) const { set res; NTSlab slab; switch(dir){ case 0 : // x-dir if(up==1){ slab=m_nt->yz_slab(m_nt->xsize()-2); } else { slab=m_nt->yz_slab(1); } break; case 1 : // y-dir if(up==1){ slab=m_nt->xz_slab(m_nt->ysize()-2); } else { slab=m_nt->xz_slab(1); } break; case 2 : // z-dir if(up==1){ slab=m_nt->xy_slab(m_nt->zsize()-2); } else { slab=m_nt->xy_slab(1); } break; default: cout << "Error: wrong direction " << dir << " in get2ndSlabIds" << endl; } for(typename NTSlab::iterator iter=slab.begin(); iter!=slab.end(); iter++){ res.insert(iter->getID()); } return res; } /*! get all particles in inner block and put them into a vector \param pv a reference to the vector */ template void ParallelParticleArray::getAllInnerParticles(vector& pv) { NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ pv.push_back(*iter); } } /*! save checkpoint data into an ostream \param ost the output stream */ template void ParallelParticleArray::saveCheckPointData(std::ostream& ost) { console.Debug() << "ParallelParticleArray::saveCheckPointData\n"; // output dimensions ost << m_nt->base_point() << "\n"; ost << m_nt->base_idx_x() << " " << m_nt->base_idx_y() << " " << m_nt->base_idx_z() << "\n"; // get nr. of particles in inner block ost << getInnerSize() << "\n"; // save particles to stream NTBlock InnerBlock=m_nt->inner(); for(typename NTBlock::iterator iter=InnerBlock.begin(); iter!=InnerBlock.end(); iter++){ iter->saveCheckPointData(ost); ost << "\n"; } } /*! load checkpoint data from an istream \param ist the input stream */ template void ParallelParticleArray:: loadCheckPointData(std::istream& ist) { console.Debug() << "ParallelParticleArray::loadCheckPointData\n"; int nparts; // get dimensions Vec3 bp; int bix,biy,biz; ist >> bp; ist >> bix; ist >> biy; ist >> biz; // barf if different from current values if((bp!=m_nt->base_point()) || (bix!=m_nt->base_idx_x()) || (biy!=m_nt->base_idx_y()) || (biz!=m_nt->base_idx_z())){ std::cerr << "local area data inconsistet: bp " << bp << " / " << m_nt->base_point() << " bix: " << bix << " / " << m_nt->base_idx_x() << " biy: " << biy << " / " << m_nt->base_idx_y() << " bix: " << biz << " / " << m_nt->base_idx_z() << std::endl; } // get nr. of particles ist >> nparts; // load particles from stream and try to insert them for(int i=0;i!=nparts;i++){ T p; p.loadCheckPointData(ist); if(!isInInner(p.getPos())) std::cerr << "not in inner: " << p.getPos() << std::endl; m_nt->insert(p); } } /*! output a particle array to an iostream. -- for debugging only -- \param ost the output stream \param ppa the particle array */ template ostream& operator<<(ostream& ost, const ParallelParticleArray &ppa) { ost << "--ParallelParticleArray--" << endl; ost << *(ppa.m_nt) << endl; return ost; } ./ppa/Makefile.am0000664000175000017500000000134312176660653013454 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## include $(top_srcdir)/Config/Cpp.am SUBDIRS = src ./ppa/test/0000775000175000017500000000000012176660653012376 5ustar vborosvboros./ppa/test/test.cpp0000664000175000017500000000315612176660653014066 0ustar vborosvboros///////////////////////////////////////////////////////////// // // // Copyright (c) 2003-2013 by The University of Queensland // // Earth Systems Science Computational Centre (ESSCC) // // http://www.uq.edu.au/esscc // // // // Primary Business: Brisbane, Queensland, Australia // // Licensed under the Open Software License version 3.0 // // http://www.opensource.org/licenses/osl-3.0.php // // // ///////////////////////////////////////////////////////////// /* test for parallel particle array */ //--- project includes --- #include "pp_array.h" #include "BasicParticle.h" #include "comm_world.h" #include "vec3.h" //--- IO includes --- #include using std::cout; int main(int argc,char **argv) { ParallelParticleArray *ppa; MPI_Init(&argc,&argv); TML_CommWorld worldcomm; Vec3 min=Vec3(0.0,0.0,0.0); Vec3 max=Vec3(8.0,8.0,8.0); double range=2.0; ppa=new ParallelParticleArray(&worldcomm,3,min,max,range); // cout << *ppa << endl; ppa->rebuild(); ppa->forAllParticles(&CBasicParticle::setRad,1.0); ppa->forParticle(2,&CBasicParticle::setRad,1.0); vector idv; ppa->forAllParticlesGet(idv,&CBasicParticle::getID); cout << "IDs " << idv.size() << endl; for(vector::iterator iter=idv.begin(); iter!=idv.end(); iter++){ cout << *iter << " "; } cout << endl; delete ppa; MPI_Finalize(); return 0; } ./Config/0000775000175000017500000000000012176660653012044 5ustar vborosvboros./Config/boost.m40000664000175000017500000012703212176660653013441 0ustar vborosvboros-# boost.m4: Locate Boost headers and libraries for autoconf-based projects. # Copyright (C) 2007, 2008, 2009, 2010, 2011 Benoit Sigoure # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Additional permission under section 7 of the GNU General Public # License, version 3 ("GPLv3"): # # If you convey this file as part of a work that contains a # configuration script generated by Autoconf, you may do so under # terms of your choice. # # 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 General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . m4_define([_BOOST_SERIAL], [m4_translit([ # serial 16 ], [# ], [])]) # Original sources can be found at http://github.com/tsuna/boost.m4 # You can fetch the latest version of the script by doing: # wget http://github.com/tsuna/boost.m4/raw/master/build-aux/boost.m4 ### CHANGES BY CIHAN FOR ESYS-PARTICLE: (grep/search for PARTICLE) # * changed order of search directories for libraries - /usr/lib is now first # * always link boost_system with boost_filesystem for newer boost versions, # not only when linking static libraries. # ------ # # README # # ------ # # This file provides several macros to use the various Boost libraries. # The first macro is BOOST_REQUIRE. It will simply check if it's possible to # find the Boost headers of a given (optional) minimum version and it will # define BOOST_CPPFLAGS accordingly. It will add an option --with-boost to # your configure so that users can specify non standard locations. # If the user's environment contains BOOST_ROOT and --with-boost was not # specified, --with-boost=$BOOST_ROOT is implicitly used. # For more README and documentation, go to http://github.com/tsuna/boost.m4 # Note: THESE MACROS ASSUME THAT YOU USE LIBTOOL. If you don't, don't worry, # simply read the README, it will show you what to do step by step. m4_pattern_forbid([^_?(BOOST|Boost)_]) # _BOOST_SED_CPP(SED-PROGRAM, PROGRAM, # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # -------------------------------------------------------- # Same as AC_EGREP_CPP, but leave the result in conftest.i. # # SED-PROGRAM is *not* overquoted, as in AC_EGREP_CPP. It is expanded # in double-quotes, so escape your double quotes. # # It could be useful to turn this into a macro which extracts the # value of any macro. m4_define([_BOOST_SED_CPP], [AC_LANG_PREPROC_REQUIRE()dnl AC_REQUIRE([AC_PROG_SED])dnl AC_LANG_CONFTEST([AC_LANG_SOURCE([[$2]])]) AS_IF([dnl eval is necessary to expand ac_cpp. dnl Ultrix and Pyramid sh refuse to redirect output of eval, so use subshell. dnl Beware of Windows end-of-lines, for instance if we are running dnl some Windows programs under Wine. In that case, boost/version.hpp dnl is certainly using "\r\n", but the regular Unix shell will only dnl strip `\n' with backquotes, not the `\r'. This results in dnl boost_cv_lib_version='1_37\r' for instance, which breaks dnl everything else. dnl Cannot use 'dnl' after [$4] because a trailing dnl may break AC_CACHE_CHECK (eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | tr -d '\r' | $SED -n -e "$1" >conftest.i 2>&1], [$3], [$4]) rm -rf conftest* ])# AC_EGREP_CPP # BOOST_REQUIRE([VERSION], [ACTION-IF-NOT-FOUND]) # ----------------------------------------------- # Look for Boost. If version is given, it must either be a literal of the form # "X.Y.Z" where X, Y and Z are integers (the ".Z" part being optional) or a # variable "$var". # Defines the value BOOST_CPPFLAGS. This macro only checks for headers with # the required version, it does not check for any of the Boost libraries. # On # success, defines HAVE_BOOST. On failure, calls the optional # ACTION-IF-NOT-FOUND action if one was supplied. # Otherwise aborts with an error message. AC_DEFUN([BOOST_REQUIRE], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_PROG_GREP])dnl echo "$as_me: this is boost.m4[]_BOOST_SERIAL" >&AS_MESSAGE_LOG_FD boost_save_IFS=$IFS boost_version_req=$1 IFS=. set x $boost_version_req 0 0 0 IFS=$boost_save_IFS shift boost_version_req=`expr "$[1]" '*' 100000 + "$[2]" '*' 100 + "$[3]"` boost_version_req_string=$[1].$[2].$[3] AC_ARG_WITH([boost], [AS_HELP_STRING([--with-boost=DIR], [prefix of Boost $1 @<:@guess@:>@])])dnl AC_ARG_VAR([BOOST_ROOT],[Location of Boost installation])dnl # If BOOST_ROOT is set and the user has not provided a value to # --with-boost, then treat BOOST_ROOT as if it the user supplied it. if test x"$BOOST_ROOT" != x; then if test x"$with_boost" = x; then AC_MSG_NOTICE([Detected BOOST_ROOT; continuing with --with-boost=$BOOST_ROOT]) with_boost=$BOOST_ROOT else AC_MSG_NOTICE([Detected BOOST_ROOT=$BOOST_ROOT, but overridden by --with-boost=$with_boost]) fi fi AC_SUBST([DISTCHECK_CONFIGURE_FLAGS], ["$DISTCHECK_CONFIGURE_FLAGS '--with-boost=$with_boost'"])dnl boost_save_CPPFLAGS=$CPPFLAGS AC_CACHE_CHECK([for Boost headers version >= $boost_version_req_string], [boost_cv_inc_path], [boost_cv_inc_path=no AC_LANG_PUSH([C++])dnl m4_pattern_allow([^BOOST_VERSION$])dnl AC_LANG_CONFTEST([AC_LANG_PROGRAM([[#include #if !defined BOOST_VERSION # error BOOST_VERSION is not defined #elif BOOST_VERSION < $boost_version_req # error Boost headers version < $boost_version_req #endif ]])]) # If the user provided a value to --with-boost, use it and only it. case $with_boost in #( ''|yes) set x '' /opt/local/include /usr/local/include /opt/include \ /usr/include C:/Boost/include;; #( *) set x "$with_boost/include" "$with_boost";; esac shift for boost_dir do # Without --layout=system, Boost (or at least some versions) installs # itself in /include/boost-. This inner loop helps to # find headers in such directories. # # Any ${boost_dir}/boost-x_xx directories are searched in reverse version # order followed by ${boost_dir}. The final '.' is a sentinel for # searching $boost_dir" itself. Entries are whitespace separated. # # I didn't indent this loop on purpose (to avoid over-indented code) boost_layout_system_search_list=`cd "$boost_dir" 2>/dev/null \ && ls -1 | "${GREP}" '^boost-' | sort -rn -t- -k2 \ && echo .` for boost_inc in $boost_layout_system_search_list do if test x"$boost_inc" != x.; then boost_inc="$boost_dir/$boost_inc" else boost_inc="$boost_dir" # Uses sentinel in boost_layout_system_search_list fi if test x"$boost_inc" != x; then # We are going to check whether the version of Boost installed # in $boost_inc is usable by running a compilation that # #includes it. But if we pass a -I/some/path in which Boost # is not installed, the compiler will just skip this -I and # use other locations (either from CPPFLAGS, or from its list # of system include directories). As a result we would use # header installed on the machine instead of the /some/path # specified by the user. So in that precise case (trying # $boost_inc), make sure the version.hpp exists. # # Use test -e as there can be symlinks. test -e "$boost_inc/boost/version.hpp" || continue CPPFLAGS="$CPPFLAGS -I$boost_inc" fi AC_COMPILE_IFELSE([], [boost_cv_inc_path=yes], [boost_cv_version=no]) if test x"$boost_cv_inc_path" = xyes; then if test x"$boost_inc" != x; then boost_cv_inc_path=$boost_inc fi break 2 fi done done AC_LANG_POP([C++])dnl ]) case $boost_cv_inc_path in #( no) boost_errmsg="cannot find Boost headers version >= $boost_version_req_string" m4_if([$2], [], [AC_MSG_ERROR([$boost_errmsg])], [AC_MSG_NOTICE([$boost_errmsg])]) $2 ;;#( yes) BOOST_CPPFLAGS= ;;#( *) AC_SUBST([BOOST_CPPFLAGS], ["-I$boost_cv_inc_path"])dnl ;; esac if test x"$boost_cv_inc_path" != xno; then AC_DEFINE([HAVE_BOOST], [1], [Defined if the requested minimum BOOST version is satisfied]) AC_CACHE_CHECK([for Boost's header version], [boost_cv_lib_version], [m4_pattern_allow([^BOOST_LIB_VERSION$])dnl _BOOST_SED_CPP([/^boost-lib-version = /{s///;s/\"//g;p;q;}], [#include boost-lib-version = BOOST_LIB_VERSION], [boost_cv_lib_version=`cat conftest.i`])]) # e.g. "134" for 1_34_1 or "135" for 1_35 boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'` case $boost_major_version in #( '' | *[[!0-9]]*) AC_MSG_ERROR([invalid value: boost_major_version=$boost_major_version]) ;; esac fi CPPFLAGS=$boost_save_CPPFLAGS ])# BOOST_REQUIRE # BOOST_STATIC() # -------------- # Add the "--enable-static-boost" configure argument. If this argument is given # on the command line, static versions of the libraries will be looked up. AC_DEFUN([BOOST_STATIC], [AC_ARG_ENABLE([static-boost], [AC_HELP_STRING([--enable-static-boost], [Prefer the static boost libraries over the shared ones [no]])], [enable_static_boost=yes], [enable_static_boost=no])])# BOOST_STATIC # BOOST_FIND_HEADER([HEADER-NAME], [ACTION-IF-NOT-FOUND], [ACTION-IF-FOUND]) # -------------------------------------------------------------------------- # Wrapper around AC_CHECK_HEADER for Boost headers. Useful to check for # some parts of the Boost library which are only made of headers and don't # require linking (such as Boost.Foreach). # # Default ACTION-IF-NOT-FOUND: Fail with a fatal error unless Boost couldn't be # found in the first place, in which case by default a notice is issued to the # user. Presumably if we haven't died already it's because it's OK to not have # Boost, which is why only a notice is issued instead of a hard error. # # Default ACTION-IF-FOUND: define the preprocessor symbol HAVE_ in # case of success # (where HEADER-NAME is written LIKE_THIS, e.g., # HAVE_BOOST_FOREACH_HPP). AC_DEFUN([BOOST_FIND_HEADER], [AC_REQUIRE([BOOST_REQUIRE])dnl if test x"$boost_cv_inc_path" = xno; then m4_default([$2], [AC_MSG_NOTICE([Boost not available, not searching for $1])]) else AC_LANG_PUSH([C++])dnl boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" AC_CHECK_HEADER([$1], [m4_default([$3], [AC_DEFINE(AS_TR_CPP([HAVE_$1]), [1], [Define to 1 if you have <$1>])])], [m4_default([$2], [AC_MSG_ERROR([cannot find $1])])]) CPPFLAGS=$boost_save_CPPFLAGS AC_LANG_POP([C++])dnl fi ])# BOOST_FIND_HEADER # BOOST_FIND_LIB([LIB-NAME], [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], # [CXX-PROLOGUE]) # ------------------------------------------------------------------------- # Look for the Boost library LIB-NAME (e.g., LIB-NAME = `thread', for # libboost_thread). Check that HEADER-NAME works and check that # libboost_LIB-NAME can link with the code CXX-TEST. The optional argument # CXX-PROLOGUE can be used to include some C++ code before the `main' # function. # # Invokes BOOST_FIND_HEADER([HEADER-NAME]) (see above). # # Boost libraries typically come compiled with several flavors (with different # runtime options) so PREFERRED-RT-OPT is the preferred suffix. A suffix is one # or more of the following letters: sgdpn (in that order). s = static # runtime, d = debug build, g = debug/diagnostic runtime, p = STLPort build, # n = (unsure) STLPort build without iostreams from STLPort (it looks like `n' # must always be used along with `p'). Additionally, PREFERRED-RT-OPT can # start with `mt-' to indicate that there is a preference for multi-thread # builds. Some sample values for PREFERRED-RT-OPT: (nothing), mt, d, mt-d, gdp # ... If you want to make sure you have a specific version of Boost # (eg, >= 1.33) you *must* invoke BOOST_REQUIRE before this macro. AC_DEFUN([BOOST_FIND_LIB], [AC_REQUIRE([BOOST_REQUIRE])dnl AC_REQUIRE([_BOOST_FIND_COMPILER_TAG])dnl AC_REQUIRE([BOOST_STATIC])dnl AC_REQUIRE([_BOOST_GUESS_WHETHER_TO_USE_MT])dnl if test x"$boost_cv_inc_path" = xno; then AC_MSG_NOTICE([Boost not available, not searching for the Boost $1 library]) else dnl The else branch is huge and wasn't intended on purpose. AC_LANG_PUSH([C++])dnl AS_VAR_PUSHDEF([Boost_lib], [boost_cv_lib_$1])dnl AS_VAR_PUSHDEF([Boost_lib_LDFLAGS], [boost_cv_lib_$1_LDFLAGS])dnl AS_VAR_PUSHDEF([Boost_lib_LDPATH], [boost_cv_lib_$1_LDPATH])dnl AS_VAR_PUSHDEF([Boost_lib_LIBS], [boost_cv_lib_$1_LIBS])dnl BOOST_FIND_HEADER([$3]) boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" # Now let's try to find the library. The algorithm is as follows: first look # for a given library name according to the user's PREFERRED-RT-OPT. For each # library name, we prefer to use the ones that carry the tag (toolset name). # Each library is searched through the various standard paths were Boost is # usually installed. If we can't find the standard variants, we try to # enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist # but there's -obviously- libboost_threads-mt.dylib). AC_CACHE_CHECK([for the Boost $1 library], [Boost_lib], [Boost_lib=no case "$2" in #( mt | mt-) boost_mt=-mt; boost_rtopt=;; #( mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X$2" : 'Xmt-*\(.*\)'`;; #( *) boost_mt=; boost_rtopt=$2;; esac if test $enable_static_boost = yes; then boost_rtopt="s$boost_rtopt" fi # Find the proper debug variant depending on what we've been asked to find. case $boost_rtopt in #( *d*) boost_rt_d=$boost_rtopt;; #( *[[sgpn]]*) # Insert the `d' at the right place (in between `sg' and `pn') boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #( *) boost_rt_d='-d';; esac # If the PREFERRED-RT-OPT are not empty, prepend a `-'. test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt" $boost_guess_use_mt && boost_mt=-mt # Look for the abs path the static archive. # $libext is computed by Libtool but let's make sure it's non empty. test -z "$libext" && AC_MSG_ERROR([the libext variable is empty, did you invoke Libtool?]) boost_save_ac_objext=$ac_objext # Generate the test file. AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include <$3> $5], [$4])]) dnl Optimization hacks: compiling C++ is slow, especially with Boost. What dnl we're trying to do here is guess the right combination of link flags dnl (LIBS / LDFLAGS) to use a given library. This can take several dnl iterations before it succeeds and is thus *very* slow. So what we do dnl instead is that we compile the code first (and thus get an object file, dnl typically conftest.o). Then we try various combinations of link flags dnl until we succeed to link conftest.o in an executable. The problem is dnl that the various TRY_LINK / COMPILE_IFELSE macros of Autoconf always dnl remove all the temporary files including conftest.o. So the trick here dnl is to temporarily change the value of ac_objext so that conftest.o is dnl preserved accross tests. This is obviously fragile and I will burn in dnl hell for not respecting Autoconf's documented interfaces, but in the dnl mean time, it optimizes the macro by a factor of 5 to 30. dnl Another small optimization: the first argument of AC_COMPILE_IFELSE left dnl empty because the test file is generated only once above (before we dnl start the for loops). AC_COMPILE_IFELSE([], [ac_objext=do_not_rm_me_plz], [AC_MSG_ERROR([cannot compile a test that uses Boost $1])]) ac_objext=$boost_save_ac_objext boost_failed_libs= # Don't bother to ident the 6 nested for loops, only the 2 innermost ones # matter. for boost_tag_ in -$boost_cv_lib_tag ''; do for boost_ver_ in -$boost_cv_lib_version ''; do for boost_mt_ in $boost_mt -mt ''; do for boost_rtopt_ in $boost_rtopt '' -d; do for boost_lib in \ $library \ boost_$1$boost_tag_$boost_ver_ \ boost_$1$boost_tag_$boost_mt_$boost_ver_ \ boost_$1$boost_tag_$boost_rtopt_$boost_ver_ \ boost_$1$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ do # Avoid testing twice the same lib case $boost_failed_libs in #( *@$boost_lib@*) continue;; esac # CHANGED FOR ESYS-PARTICLE # # If with_boost is empty, try a location based on where the headers are # first, then iterate over other standard locations if test x"$with_boost" = x; then boost_tmp_prefix=${boost_cv_inc_path%/include} boost_lib_paths="$boost_tmp_prefix/lib '' \ /usr/lib* /opt/local/lib* /usr/local/lib* /opt/lib* \ $boost_tmp_prefix C:/Boost/lib /lib*" else boost_lib_paths="$with_boost/lib $with_boost" fi for boost_ldpath in $boost_lib_paths do test -d "$boost_ldpath" || continue boost_save_LDFLAGS=$LDFLAGS # Are we looking for a static library? case $boost_ldpath:$boost_rtopt_ in #( *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt) Boost_lib_LIBS="$boost_ldpath/lib$boost_lib.$libext" test -e "$Boost_lib_LIBS" || continue;; #( *) # No: use -lboost_foo to find the shared library. Boost_lib_LIBS="-l$boost_lib";; esac boost_save_LIBS=$LIBS LIBS="$Boost_lib_LIBS $LIBS" test x"$boost_ldpath" != x && LDFLAGS="$LDFLAGS -L$boost_ldpath" dnl First argument of AC_LINK_IFELSE left empty because the test file is dnl generated only once above (before we start the for loops). _BOOST_AC_LINK_IFELSE([], [Boost_lib=yes], [Boost_lib=no]) ac_objext=$boost_save_ac_objext LDFLAGS=$boost_save_LDFLAGS LIBS=$boost_save_LIBS if test x"$Boost_lib" = xyes; then Boost_lib_LDFLAGS="-L$boost_ldpath" Boost_lib_LDPATH="$boost_ldpath" break 6 else boost_failed_libs="$boost_failed_libs@$boost_lib@" fi done done done done done done rm -f conftest.$ac_objext ]) case $Boost_lib in #( no) _AC_MSG_LOG_CONFTEST AC_MSG_ERROR([cannot find the flags to link with Boost $1]) ;; esac AC_SUBST(AS_TR_CPP([BOOST_$1_LDFLAGS]), [$Boost_lib_LDFLAGS])dnl AC_SUBST(AS_TR_CPP([BOOST_$1_LDPATH]), [$Boost_lib_LDPATH])dnl AC_SUBST([BOOST_LDPATH], [$Boost_lib_LDPATH])dnl AC_SUBST(AS_TR_CPP([BOOST_$1_LIBS]), [$Boost_lib_LIBS])dnl CPPFLAGS=$boost_save_CPPFLAGS AS_VAR_POPDEF([Boost_lib])dnl AS_VAR_POPDEF([Boost_lib_LDFLAGS])dnl AS_VAR_POPDEF([Boost_lib_LDPATH])dnl AS_VAR_POPDEF([Boost_lib_LIBS])dnl AC_LANG_POP([C++])dnl fi ])# BOOST_FIND_LIB # --------------------------------------- # # Checks for the various Boost libraries. # # --------------------------------------- # # List of boost libraries: http://www.boost.org/libs/libraries.htm # The page http://beta.boost.org/doc/libs is useful: it gives the first release # version of each library (among other things). # BOOST_DEFUN(LIBRARY, CODE) # -------------------------- # Define BOOST_ as a macro that runs CODE. # # Use indir to avoid the warning on underquoted macro name given to AC_DEFUN. m4_define([BOOST_DEFUN], [m4_indir([AC_DEFUN], m4_toupper([BOOST_$1]), [m4_pushdef([BOOST_Library], [$1])dnl $2 m4_popdef([BOOST_Library])dnl ]) ]) # BOOST_ARRAY() # ------------- # Look for Boost.Array BOOST_DEFUN([Array], [BOOST_FIND_HEADER([boost/array.hpp])]) # BOOST_ASIO() # ------------ # Look for Boost.Asio (new in Boost 1.35). BOOST_DEFUN([Asio], [AC_REQUIRE([BOOST_SYSTEM])dnl BOOST_FIND_HEADER([boost/asio.hpp])]) # BOOST_BIND() # ------------ # Look for Boost.Bind BOOST_DEFUN([Bind], [BOOST_FIND_HEADER([boost/bind.hpp])]) # BOOST_CONVERSION() # ------------------ # Look for Boost.Conversion (cast / lexical_cast) BOOST_DEFUN([Conversion], [BOOST_FIND_HEADER([boost/cast.hpp]) BOOST_FIND_HEADER([boost/lexical_cast.hpp]) ])# BOOST_CONVERSION # BOOST_DATE_TIME([PREFERRED-RT-OPT]) # ----------------------------------- # Look for Boost.Date_Time. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Date_Time], [BOOST_FIND_LIB([date_time], [$1], [boost/date_time/posix_time/posix_time.hpp], [boost::posix_time::ptime t;]) ])# BOOST_DATE_TIME # BOOST_FILESYSTEM([PREFERRED-RT-OPT]) # ------------------------------------ # Look for Boost.Filesystem. For the documentation of PREFERRED-RT-OPT, see # the documentation of BOOST_FIND_LIB above. # Do not check for boost/filesystem.hpp because this file was introduced in # 1.34. BOOST_DEFUN([Filesystem], [# Changed by Vince Boros: The --with-boost-filesystem help-string macro was # taken from ax_boost_filesystem.m4, whose license is: # LICENSE # # Copyright (c) 2009 Thomas Porschberg # Copyright (c) 2009 Michael Tindal # Copyright (c) 2009 Roman Rybalko # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. # # The --with-boost-system and --with-boost-python help-string macros below are # derived from this macro. # # # Do we have to check for Boost.System? This link-time dependency was # added as of 1.35.0. If we have a version <1.35, we must not attempt to # find Boost.System as it didn't exist by then. if test $boost_major_version -ge 135; then BOOST_SYSTEM([$1]) fi # end of the Boost.System check. AC_ARG_WITH([boost-filesystem], AS_HELP_STRING([--with-boost-filesystem@<:@=special-lib@:>@], [specify the Boost Filesystem library to use; e.g. --with-boost-filesystem=boost_filesystem-gcc-mt]), [ if test "$withval" = "no"; then want_boost="no" elif test "$withval" = "yes"; then want_boost="yes" library="" else want_boost="yes" library="$withval" fi ], [want_boost="yes"]) boost_filesystem_save_LIBS=$LIBS boost_filesystem_save_LDFLAGS=$LDFLAGS m4_pattern_allow([^BOOST_SYSTEM_(LIBS|LDFLAGS)$])dnl LIBS="$LIBS $BOOST_SYSTEM_LIBS" LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS" BOOST_FIND_LIB([filesystem], [$1], [boost/filesystem/path.hpp], [boost::filesystem::path p;]) # CHANGED FOR ESYS-PARTICLE # if test $boost_major_version -ge 135; then AC_SUBST([BOOST_FILESYSTEM_LIBS], ["$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS"]) fi LIBS=$boost_filesystem_save_LIBS LDFLAGS=$boost_filesystem_save_LDFLAGS ])# BOOST_FILESYSTEM # BOOST_FOREACH() # --------------- # Look for Boost.Foreach BOOST_DEFUN([Foreach], [BOOST_FIND_HEADER([boost/foreach.hpp])]) # BOOST_FORMAT() # -------------- # Look for Boost.Format # Note: we can't check for boost/format/format_fwd.hpp because the header isn't # standalone. It can't be compiled because it triggers the following error: # boost/format/detail/config_macros.hpp:88: error: 'locale' in namespace 'std' # does not name a type BOOST_DEFUN([Format], [BOOST_FIND_HEADER([boost/format.hpp])]) # BOOST_FUNCTION() # ---------------- # Look for Boost.Function BOOST_DEFUN([Function], [BOOST_FIND_HEADER([boost/function.hpp])]) # BOOST_GRAPH([PREFERRED-RT-OPT]) # ------------------------------- # Look for Boost.Graphs. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Graph], [BOOST_FIND_LIB([graph], [$1], [boost/graph/adjacency_list.hpp], [boost::adjacency_list<> g;]) ])# BOOST_GRAPH # BOOST_IOSTREAMS([PREFERRED-RT-OPT]) # ----------------------------------- # Look for Boost.IOStreams. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([IOStreams], [BOOST_FIND_LIB([iostreams], [$1], [boost/iostreams/device/file_descriptor.hpp], [boost::iostreams::file_descriptor fd; fd.close();]) ])# BOOST_IOSTREAMS # BOOST_HASH() # ------------ # Look for Boost.Functional/Hash BOOST_DEFUN([Hash], [BOOST_FIND_HEADER([boost/functional/hash.hpp])]) # BOOST_LAMBDA() # -------------- # Look for Boost.Lambda BOOST_DEFUN([Lambda], [BOOST_FIND_HEADER([boost/lambda/lambda.hpp])]) # BOOST_LOG([PREFERRED-RT-OPT]) # ----------------------------- # Look for Boost.Log For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Log], [BOOST_FIND_LIB([log], [$1], [boost/log/core/core.hpp], [boost::log::attribute a; a.get_value();]) ])# BOOST_LOG # BOOST_LOG_SETUP([PREFERRED-RT-OPT]) # ----------------------------------- # Look for Boost.Log For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Log_Setup], [AC_REQUIRE([BOOST_LOG])dnl BOOST_FIND_LIB([log_setup], [$1], [boost/log/utility/init/from_settings.hpp], [boost::log::basic_settings bs; bs.empty();]) ])# BOOST_LOG_SETUP # BOOST_MATH() # ------------ # Look for Boost.Math # TODO: This library isn't header-only but it comes in multiple different # flavors that don't play well with BOOST_FIND_LIB (e.g, libboost_math_c99, # libboost_math_c99f, libboost_math_c99l, libboost_math_tr1, # libboost_math_tr1f, libboost_math_tr1l). This macro must be fixed to do the # right thing anyway. BOOST_DEFUN([Math], [BOOST_FIND_HEADER([boost/math/special_functions.hpp])]) # BOOST_MULTIARRAY() # ------------------ # Look for Boost.MultiArray BOOST_DEFUN([MultiArray], [BOOST_FIND_HEADER([boost/multi_array.hpp])]) # BOOST_NUMERIC_CONVERSION() # -------------------------- # Look for Boost.NumericConversion (policy-based numeric conversion) BOOST_DEFUN([Numeric_Conversion], [BOOST_FIND_HEADER([boost/numeric/conversion/converter.hpp]) ])# BOOST_NUMERIC_CONVERSION # BOOST_OPTIONAL() # ---------------- # Look for Boost.Optional BOOST_DEFUN([Optional], [BOOST_FIND_HEADER([boost/optional.hpp])]) # BOOST_PREPROCESSOR() # -------------------- # Look for Boost.Preprocessor BOOST_DEFUN([Preprocessor], [BOOST_FIND_HEADER([boost/preprocessor/repeat.hpp])]) # BOOST_UNORDERED() # ----------------- # Look for Boost.Unordered BOOST_DEFUN([Unordered], [BOOST_FIND_HEADER([boost/unordered_map.hpp])]) # BOOST_UUID() # ------------ # Look for Boost.Uuid BOOST_DEFUN([Uuid], [BOOST_FIND_HEADER([boost/uuid/uuid.hpp])]) # BOOST_PROGRAM_OPTIONS([PREFERRED-RT-OPT]) # ----------------------------------------- # Look for Boost.Program_options. For the documentation of PREFERRED-RT-OPT, # see the documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Program_Options], [BOOST_FIND_LIB([program_options], [$1], [boost/program_options.hpp], [boost::program_options::options_description d("test");]) ])# BOOST_PROGRAM_OPTIONS # _BOOST_PYTHON_CONFIG(VARIABLE, FLAG) # ------------------------------------ # Save VARIABLE, and define it via `python-config --FLAG`. # Substitute BOOST_PYTHON_VARIABLE. m4_define([_BOOST_PYTHON_CONFIG], [AC_SUBST([BOOST_PYTHON_$1], [`python-config --$2 2>/dev/null`])dnl boost_python_save_$1=$$1 $1="$$1 $BOOST_PYTHON_$1"]) # BOOST_PYTHON([PREFERRED-RT-OPT]) # -------------------------------- # Look for Boost.Python. For the documentation of PREFERRED-RT-OPT, # see the documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Python], [ AC_ARG_WITH([boost-python], AS_HELP_STRING([--with-boost-python@<:@=special-lib@:>@], [specify the Boost Python library to use; e.g. --with-boost-python=boost_python-gcc-mt]), [ if test "$withval" = "no"; then want_boost="no" elif test "$withval" = "yes"; then want_boost="yes" library="" else want_boost="yes" library="$withval" fi ], [want_boost="yes"]) _BOOST_PYTHON_CONFIG([CPPFLAGS], [includes]) _BOOST_PYTHON_CONFIG([LDFLAGS], [ldflags]) _BOOST_PYTHON_CONFIG([LIBS], [libs]) m4_pattern_allow([^BOOST_PYTHON_MODULE$])dnl BOOST_FIND_LIB([python], [$1], [boost/python.hpp], [], [BOOST_PYTHON_MODULE(empty) {}]) CPPFLAGS=$boost_python_save_CPPFLAGS LDFLAGS=$boost_python_save_LDFLAGS LIBS=$boost_python_save_LIBS ])# BOOST_PYTHON # BOOST_REF() # ----------- # Look for Boost.Ref BOOST_DEFUN([Ref], [BOOST_FIND_HEADER([boost/ref.hpp])]) # BOOST_REGEX([PREFERRED-RT-OPT]) # ------------------------------- # Look for Boost.Regex. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Regex], [BOOST_FIND_LIB([regex], [$1], [boost/regex.hpp], [boost::regex exp("*"); boost::regex_match("foo", exp);]) ])# BOOST_REGEX # BOOST_SERIALIZATION([PREFERRED-RT-OPT]) # --------------------------------------- # Look for Boost.Serialization. For the documentation of PREFERRED-RT-OPT, see # the documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Serialization], [BOOST_FIND_LIB([serialization], [$1], [boost/archive/text_oarchive.hpp], [std::ostream* o = 0; // Cheap way to get an ostream... boost::archive::text_oarchive t(*o);]) ])# BOOST_SERIALIZATION # BOOST_SIGNALS([PREFERRED-RT-OPT]) # --------------------------------- # Look for Boost.Signals. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Signals], [BOOST_FIND_LIB([signals], [$1], [boost/signal.hpp], [boost::signal s;]) ])# BOOST_SIGNALS # BOOST_SMART_PTR() # ----------------- # Look for Boost.SmartPtr BOOST_DEFUN([Smart_Ptr], [BOOST_FIND_HEADER([boost/scoped_ptr.hpp]) BOOST_FIND_HEADER([boost/shared_ptr.hpp]) ]) # BOOST_STATICASSERT() # -------------------- # Look for Boost.StaticAssert BOOST_DEFUN([StaticAssert], [BOOST_FIND_HEADER([boost/static_assert.hpp])]) # BOOST_STRING_ALGO() # ------------------- # Look for Boost.StringAlgo BOOST_DEFUN([String_Algo], [BOOST_FIND_HEADER([boost/algorithm/string.hpp]) ]) # BOOST_SYSTEM([PREFERRED-RT-OPT]) # -------------------------------- # Look for Boost.System. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. This library was introduced in Boost # 1.35.0. BOOST_DEFUN([System], [AC_ARG_WITH([boost-system], AS_HELP_STRING([--with-boost-system@<:@=special-lib@:>@], [specify the Boost System library to use (Boost 1.35 and above); e.g. --with-boost-system=boost_system-gcc-mt]), [ if test "$withval" = "no"; then want_boost="no" elif test "$withval" = "yes"; then want_boost="yes" library="" else want_boost="yes" library="$withval" fi ], [want_boost="yes"]) BOOST_FIND_LIB([system], [$1], [boost/system/error_code.hpp], [boost::system::error_code e; e.clear();]) ])# BOOST_SYSTEM # BOOST_TEST([PREFERRED-RT-OPT]) # ------------------------------ # Look for Boost.Test. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Test], [m4_pattern_allow([^BOOST_CHECK$])dnl BOOST_FIND_LIB([unit_test_framework], [$1], [boost/test/unit_test.hpp], [BOOST_CHECK(2 == 2);], [using boost::unit_test::test_suite; test_suite* init_unit_test_suite(int argc, char ** argv) { return NULL; }]) ])# BOOST_TEST # BOOST_THREADS([PREFERRED-RT-OPT]) # --------------------------------- # Look for Boost.Thread. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. # FIXME: Provide an alias "BOOST_THREAD". BOOST_DEFUN([Threads], [dnl Having the pthread flag is required at least on GCC3 where dnl boost/thread.hpp would complain if we try to compile without dnl -pthread on GNU/Linux. AC_REQUIRE([_BOOST_PTHREAD_FLAG])dnl boost_threads_save_LIBS=$LIBS boost_threads_save_CPPFLAGS=$CPPFLAGS LIBS="$LIBS $boost_cv_pthread_flag" # Yes, we *need* to put the -pthread thing in CPPFLAGS because with GCC3, # boost/thread.hpp will trigger a #error if -pthread isn't used: # boost/config/requires_threads.hpp:47:5: #error "Compiler threading support # is not turned on. Please set the correct command line options for # threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)" CPPFLAGS="$CPPFLAGS $boost_cv_pthread_flag" BOOST_FIND_LIB([thread], [$1], [boost/thread.hpp], [boost::thread t; boost::mutex m;]) BOOST_THREAD_LIBS="$BOOST_THREAD_LIBS $boost_cv_pthread_flag" BOOST_CPPFLAGS="$BOOST_CPPFLAGS $boost_cv_pthread_flag" LIBS=$boost_threads_save_LIBS CPPFLAGS=$boost_threads_save_CPPFLAGS ])# BOOST_THREADS # BOOST_TOKENIZER() # ----------------- # Look for Boost.Tokenizer BOOST_DEFUN([Tokenizer], [BOOST_FIND_HEADER([boost/tokenizer.hpp])]) # BOOST_TRIBOOL() # --------------- # Look for Boost.Tribool BOOST_DEFUN([Tribool], [BOOST_FIND_HEADER([boost/logic/tribool_fwd.hpp]) BOOST_FIND_HEADER([boost/logic/tribool.hpp]) ]) # BOOST_TUPLE() # ------------- # Look for Boost.Tuple BOOST_DEFUN([Tuple], [BOOST_FIND_HEADER([boost/tuple/tuple.hpp])]) # BOOST_TYPETRAITS() # -------------------- # Look for Boost.TypeTraits BOOST_DEFUN([TypeTraits], [BOOST_FIND_HEADER([boost/type_traits.hpp])]) # BOOST_UTILITY() # --------------- # Look for Boost.Utility (noncopyable, result_of, base-from-member idiom, # etc.) BOOST_DEFUN([Utility], [BOOST_FIND_HEADER([boost/utility.hpp])]) # BOOST_VARIANT() # --------------- # Look for Boost.Variant. BOOST_DEFUN([Variant], [BOOST_FIND_HEADER([boost/variant/variant_fwd.hpp]) BOOST_FIND_HEADER([boost/variant.hpp])]) # BOOST_WAVE([PREFERRED-RT-OPT]) # ------------------------------ # NOTE: If you intend to use Wave/Spirit with thread support, make sure you # call BOOST_THREADS first. # Look for Boost.Wave. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. BOOST_DEFUN([Wave], [AC_REQUIRE([BOOST_FILESYSTEM])dnl AC_REQUIRE([BOOST_DATE_TIME])dnl boost_wave_save_LIBS=$LIBS boost_wave_save_LDFLAGS=$LDFLAGS m4_pattern_allow([^BOOST_((FILE)?SYSTEM|DATE_TIME|THREAD)_(LIBS|LDFLAGS)$])dnl LIBS="$LIBS $BOOST_SYSTEM_LIBS $BOOST_FILESYSTEM_LIBS $BOOST_DATE_TIME_LIBS\ $BOOST_THREAD_LIBS" LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS $BOOST_FILESYSTEM_LDFLAGS\ $BOOST_DATE_TIME_LDFLAGS $BOOST_THREAD_LDFLAGS" BOOST_FIND_LIB([wave], [$1], [boost/wave.hpp], [boost::wave::token_id id; get_token_name(id);]) LIBS=$boost_wave_save_LIBS LDFLAGS=$boost_wave_save_LDFLAGS ])# BOOST_WAVE # BOOST_XPRESSIVE() # ----------------- # Look for Boost.Xpressive (new since 1.36.0). BOOST_DEFUN([Xpressive], [BOOST_FIND_HEADER([boost/xpressive/xpressive.hpp])]) # ----------------- # # Internal helpers. # # ----------------- # # _BOOST_PTHREAD_FLAG() # --------------------- # Internal helper for BOOST_THREADS. Based on ACX_PTHREAD: # http://autoconf-archive.cryp.to/acx_pthread.html AC_DEFUN([_BOOST_PTHREAD_FLAG], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_LANG_PUSH([C++])dnl AC_CACHE_CHECK([for the flags needed to use pthreads], [boost_cv_pthread_flag], [ boost_cv_pthread_flag= # The ordering *is* (sometimes) important. Some notes on the # individual items follow: # (none): in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -lpthreads: AIX (must check this before -lpthread) # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) # -llthread: LinuxThreads port on FreeBSD (also preferred to -pthread) # -pthread: GNU Linux/GCC (kernel threads), BSD/GCC (userland threads) # -pthreads: Solaris/GCC # -mthreads: MinGW32/GCC, Lynx/GCC # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it # doesn't hurt to check since this sometimes defines pthreads too; # also defines -D_REENTRANT) # ... -mt is also the pthreads flag for HP/aCC # -lpthread: GNU Linux, etc. # --thread-safe: KAI C++ case $host_os in #( *solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based # tests will erroneously succeed. (We need to link with -pthreads/-mt/ # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather # a function called by this macro, so we could check for that, but # who knows whether they'll stub that too in a future libc.) So, # we'll just look for -pthreads and -lpthread first: boost_pthread_flags="-pthreads -lpthread -mt -pthread";; #( *) boost_pthread_flags="-lpthreads -Kthread -kthread -llthread -pthread \ -pthreads -mthreads -lpthread --thread-safe -mt";; esac # Generate the test file. AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include ], [pthread_t th; pthread_join(th, 0); pthread_attr_init(0); pthread_cleanup_push(0, 0); pthread_create(0,0,0,0); pthread_cleanup_pop(0);])]) for boost_pthread_flag in '' $boost_pthread_flags; do boost_pthread_ok=false dnl Re-use the test file already generated. boost_pthreads__save_LIBS=$LIBS LIBS="$LIBS $boost_pthread_flag" AC_LINK_IFELSE([], [if grep ".*$boost_pthread_flag" conftest.err; then echo "This flag seems to have triggered warnings" >&AS_MESSAGE_LOG_FD else boost_pthread_ok=:; boost_cv_pthread_flag=$boost_pthread_flag fi]) LIBS=$boost_pthreads__save_LIBS $boost_pthread_ok && break done ]) AC_LANG_POP([C++])dnl ])# _BOOST_PTHREAD_FLAG # _BOOST_gcc_test(MAJOR, MINOR) # ----------------------------- # Internal helper for _BOOST_FIND_COMPILER_TAG. m4_define([_BOOST_gcc_test], ["defined __GNUC__ && __GNUC__ == $1 && __GNUC_MINOR__ == $2 && !defined __ICC @ gcc$1$2"])dnl # _BOOST_FIND_COMPILER_TAG() # -------------------------- # Internal. When Boost is installed without --layout=system, each library # filename will hold a suffix that encodes the compiler used during the # build. The Boost build system seems to call this a `tag'. AC_DEFUN([_BOOST_FIND_COMPILER_TAG], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_CACHE_CHECK([for the toolset name used by Boost for $CXX], [boost_cv_lib_tag], [boost_cv_lib_tag=unknown if test x$boost_cv_inc_path != xno; then AC_LANG_PUSH([C++])dnl # The following tests are mostly inspired by boost/config/auto_link.hpp # The list is sorted to most recent/common to oldest compiler (in order # to increase the likelihood of finding the right compiler with the # least number of compilation attempt). # Beware that some tests are sensible to the order (for instance, we must # look for MinGW before looking for GCC3). # I used one compilation test per compiler with a #error to recognize # each compiler so that it works even when cross-compiling (let me know # if you know a better approach). # Known missing tags (known from Boost's tools/build/v2/tools/common.jam): # como, edg, kcc, bck, mp, sw, tru, xlc # I'm not sure about my test for `il' (be careful: Intel's ICC pre-defines # the same defines as GCC's). for i in \ _BOOST_gcc_test(4, 6) \ _BOOST_gcc_test(4, 5) \ _BOOST_gcc_test(4, 4) \ _BOOST_gcc_test(4, 3) \ _BOOST_gcc_test(4, 2) \ _BOOST_gcc_test(4, 1) \ _BOOST_gcc_test(4, 0) \ "defined __GNUC__ && __GNUC__ == 3 && !defined __ICC \ && (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \ || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw" \ _BOOST_gcc_test(3, 4) \ _BOOST_gcc_test(3, 3) \ "defined _MSC_VER && _MSC_VER >= 1500 @ vc90" \ "defined _MSC_VER && _MSC_VER == 1400 @ vc80" \ _BOOST_gcc_test(3, 2) \ "defined _MSC_VER && _MSC_VER == 1310 @ vc71" \ _BOOST_gcc_test(3, 1) \ _BOOST_gcc_test(3, 0) \ "defined __BORLANDC__ @ bcb" \ "defined __ICC && (defined __unix || defined __unix__) @ il" \ "defined __ICL @ iw" \ "defined _MSC_VER && _MSC_VER == 1300 @ vc7" \ _BOOST_gcc_test(2, 95) \ "defined __MWERKS__ && __MWERKS__ <= 0x32FF @ cw9" \ "defined _MSC_VER && _MSC_VER < 1300 && !defined UNDER_CE @ vc6" \ "defined _MSC_VER && _MSC_VER < 1300 && defined UNDER_CE @ evc4" \ "defined __MWERKS__ && __MWERKS__ <= 0x31FF @ cw8" do boost_tag_test=`expr "X$i" : 'X\([[^@]]*\) @ '` boost_tag=`expr "X$i" : 'X[[^@]]* @ \(.*\)'` AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #if $boost_tag_test /* OK */ #else # error $boost_tag_test #endif ]])], [boost_cv_lib_tag=$boost_tag; break], []) done AC_LANG_POP([C++])dnl case $boost_cv_lib_tag in #( # Some newer (>= 1.35?) versions of Boost seem to only use "gcc" as opposed # to "gcc41" for instance. *-gcc | *'-gcc ') :;; #( Don't re-add -gcc: it's already in there. gcc*) boost_tag_x= case $host_os in #( darwin*) if test $boost_major_version -ge 136; then # The `x' added in r46793 of Boost. boost_tag_x=x fi;; esac # We can specify multiple tags in this variable because it's used by # BOOST_FIND_LIB that does a `for tag in -$boost_cv_lib_tag' ... boost_cv_lib_tag="$boost_tag_x$boost_cv_lib_tag -${boost_tag_x}gcc" ;; #( unknown) AC_MSG_WARN([[could not figure out which toolset name to use for $CXX]]) boost_cv_lib_tag= ;; esac fi])dnl end of AC_CACHE_CHECK ])# _BOOST_FIND_COMPILER_TAG # _BOOST_GUESS_WHETHER_TO_USE_MT() # -------------------------------- # Compile a small test to try to guess whether we should favor MT (Multi # Thread) flavors of Boost. Sets boost_guess_use_mt accordingly. AC_DEFUN([_BOOST_GUESS_WHETHER_TO_USE_MT], [# Check whether we do better use `mt' even though we weren't ask to. AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #if defined _REENTRANT || defined _MT || defined __MT__ /* use -mt */ #else # error MT not needed #endif ]])], [boost_guess_use_mt=:], [boost_guess_use_mt=false]) ]) # _BOOST_AC_LINK_IFELSE(PROGRAM, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) # ------------------------------------------------------------------- # Fork of _AC_LINK_IFELSE that preserves conftest.o across calls. Fragile, # will break when Autoconf changes its internals. Requires that you manually # rm -f conftest.$ac_objext in between to really different tests, otherwise # you will try to link a conftest.o left behind by a previous test. # Used to aggressively optimize BOOST_FIND_LIB (see the big comment in this # macro). # # Don't use "break" in the actions, as it would short-circuit some code # this macro runs after the actions. m4_define([_BOOST_AC_LINK_IFELSE], [m4_ifvaln([$1], [AC_LANG_CONFTEST([$1])])dnl rm -f conftest$ac_exeext boost_save_ac_ext=$ac_ext boost_use_source=: # If we already have a .o, re-use it. We change $ac_ext so that $ac_link # tries to link the existing object file instead of compiling from source. test -f conftest.$ac_objext && ac_ext=$ac_objext && boost_use_source=false && _AS_ECHO_LOG([re-using the existing conftest.$ac_objext]) AS_IF([_AC_DO_STDERR($ac_link) && { test -z "$ac_[]_AC_LANG_ABBREV[]_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_executable_p conftest$ac_exeext dnl FIXME: use AS_TEST_X instead when 2.61 is widespread enough. }], [$2], [if $boost_use_source; then _AC_MSG_LOG_CONFTEST fi $3]) ac_objext=$boost_save_ac_objext ac_ext=$boost_save_ac_ext dnl Delete also the IPA/IPO (Inter Procedural Analysis/Optimization) dnl information created by the PGI compiler (conftest_ipa8_conftest.oo), dnl as it would interfere with the next link command. rm -f core conftest.err conftest_ipa8_conftest.oo \ conftest$ac_exeext m4_ifval([$1], [conftest.$ac_ext])[]dnl ])# _BOOST_AC_LINK_IFELSE # Local Variables: # mode: autoconf # End: ./Config/pkg.m40000664000175000017500000000375412176660653013100 0ustar vborosvboros dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page dnl also defines GSTUFF_PKG_ERRORS on error AC_DEFUN([PKG_CHECK_MODULES], [ succeeded=no if test -z "$PKG_CONFIG"; then AC_PATH_PROG(PKG_CONFIG, pkg-config, no) fi if test "$PKG_CONFIG" = "no" ; then echo "*** The pkg-config script could not be found. Make sure it is" echo "*** in your path, or set the PKG_CONFIG environment variable" echo "*** to the full path to pkg-config." echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." else PKG_CONFIG_MIN_VERSION=0.6.0 if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then AC_MSG_CHECKING(for $2) if $PKG_CONFIG --exists "$2" ; then AC_MSG_RESULT(yes) succeeded=yes AC_MSG_CHECKING($1_CFLAGS) $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` AC_MSG_RESULT($$1_CFLAGS) AC_MSG_CHECKING($1_LIBS) $1_LIBS=`$PKG_CONFIG --libs "$2"` AC_MSG_RESULT($$1_LIBS) else $1_CFLAGS="" $1_LIBS="" ## If we have a custom action on failure, don't print errors, but ## do set a variable so people can do so. $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` ifelse([$4], ,echo $$1_PKG_ERRORS,) fi AC_SUBST($1_CFLAGS) AC_SUBST($1_LIBS) else echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." echo "*** See http://www.freedesktop.org/software/pkgconfig" fi fi if test $succeeded = yes; then ifelse([$3], , :, [$3]) else ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) fi ]) ./Config/Python.am0000664000175000017500000000330212176660653013642 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## # # Begin $(top_srcdir)/Config/Python.am # ## include $(top_srcdir)/Config/Cpp.am pythonapidocdir = $(lsmdatadocdir)/pythonapi esysdir = $(pythondir)/esys lsmdir = $(esysdir)/lsm lsmdocdir = $(lsmdir)/doc lsmbenchmarksdir = $(lsmdir)/benchmarks lsmbenchmarkscompressdir = $(lsmbenchmarksdir)/compress lsmbenchmarksgouge2ddir = $(lsmbenchmarksdir)/gouge2d lsmexamplesdir = $(lsmdir)/examples lsmexamplessimpledir = $(lsmexamplesdir)/simple lsmexampleswavepropdir= $(lsmexamplesdir)/waveprop lsmtoolsdir = $(lsmdir)/tools lsmutildir = $(lsmdir)/util lsmgeometrydir = $(lsmdir)/geometry lsmsimdir = $(lsmdir)/sim lsmsimcoupleddir = $(lsmsimdir)/coupled lsmvisdir = $(lsmdir)/vis lsmviscoredir = $(lsmvisdir)/core lsmvisvtkdir = $(lsmvisdir)/vtk lsmvispovraydir = $(lsmvisdir)/povray PYTHON_DLL_EXT = .so AM_CPPFLAGS += $(PYTHON_CPPFLAGS) $(BOOST_PYTHON_CPPFLAGS) AM_LDFLAGS += $(BOOST_PYTHON_LDFLAGS) ./Config/rules.am0000664000175000017500000000315112176660653013515 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ## # # Begin $(top_srcdir)/Config/rules.am # if TAU_PROFILING include $(TAU_MAKEFILE) AM_MAKEFLAGS = -r CC="$(TAU_CC)" CXX="$(TAU_CXX)" CPPFLAGS="$(TAU_DEFS) $(TAU_INCLUDE) $(TAU_MPI_INCLUDE)" PDTPARSE = $(PDTDIR)/$(CONFIG_ARCH)/bin/cxxparse TAUINSTR = $(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/bin/tau_instrumentor EXTRA_LD_LIBS = $(TAU_LDFLAGS) $(TAU_MPI_LIBS) $(TAU_LIBS) -lpfm # # Prevent intermediate instrumented files from automatically # being deleted. # .SECONDARY: .inst_cpp .pdb # # Cancel implicit rules # %.o: %.cpp %.o:%.inst_cpp if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi %.inst_cpp: %.pdb $(TAUINSTR) $*.pdb $*.cpp -o $@ %.pdb: %.cpp $(PDTPARSE) $< -I. $(CPPFLAGS) $(AM_CPPFLAGS) else AM_MAKEFLAGS = EXTRA_LD_LIBS = endif CLEANFILES = *.inst_cpp *.pdb # # End $(top_srcdir)/Config/rules.am # ## ./Config/python.m40000664000175000017500000001767112176660653013643 0ustar vborosvboros## ------------------------ -*- Autoconf -*- ## Python file handling ## From Andrew Dalke ## Updated by James Henstridge ## ------------------------ # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------------------------- # Adds support for distributing Python modules and packages. To # install modules, copy them to $(pythondir), using the python_PYTHON # automake variable. To install a package with the same name as the # automake package, install to $(pkgpythondir), or use the # pkgpython_PYTHON automake variable. # # The variables $(pyexecdir) and $(pkgpyexecdir) are provided as # locations to install python extension modules (shared libraries). # Another macro is required to find the appropriate flags to compile # extension modules. # # If your package is configured with a different prefix to python, # users will have to add the install directory to the PYTHONPATH # environment variable, or create a .pth file (see the python # documentation for details). # # If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will # cause an error if the version of python installed on the system # doesn't meet the requirement. MINIMUM-VERSION should consist of # numbers and dots only. AC_DEFUN([AM_PATH_PYTHON], [ dnl Find a Python interpreter. Python versions prior to 2.0 are not dnl supported. (2.0 was released on October 16, 2000). m4_define_default([_AM_PYTHON_INTERPRETER_LIST], [python python2 python3 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 dnl python2.1 python2.0]) m4_if([$1],[],[ dnl No version check is needed. # Find any Python interpreter. if test -z "$PYTHON"; then AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) fi am_display_PYTHON=python ], [ dnl A version check is needed. if test -n "$PYTHON"; then # If the user set $PYTHON, use it and don't search something else. AC_MSG_CHECKING([whether $PYTHON version >= $1]) AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], [AC_MSG_RESULT(yes)], [AC_MSG_ERROR(too old)]) am_display_PYTHON=$PYTHON else # Otherwise, try each interpreter until we find one that satisfies # VERSION. AC_CACHE_CHECK([for a Python interpreter with version >= $1], [am_cv_pathless_PYTHON],[ for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do test "$am_cv_pathless_PYTHON" = none && break AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) done]) # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. if test "$am_cv_pathless_PYTHON" = none; then PYTHON=: else AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) fi am_display_PYTHON=$am_cv_pathless_PYTHON fi ]) if test "$PYTHON" = :; then dnl Run any user-specified action, or abort. m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) else dnl Query Python for its version number. Getting [:3] seems to be dnl the best way to do this; it's what "site.py" does in the standard dnl library. AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) dnl Use the values of $prefix and $exec_prefix for the corresponding dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made dnl distinct variables so they can be overridden if need be. However, dnl general consensus is that you shouldn't need this ability. AC_SUBST([PYTHON_PREFIX], ['${prefix}']) AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) dnl At times (like when building shared libraries) you may want dnl to know which OS platform Python thinks this is. AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) dnl Set up 4 directories: dnl pythondir -- where to install python scripts. This is the dnl site-packages directory, not the python standard library dnl directory like in previous automake betas. This behavior dnl is more consistent with lispdir.m4 for example. dnl Query distutils for this directory. distutils does not exist in dnl Python 1.5, so we fall back to the hardcoded directory if it dnl doesn't work. AC_CACHE_CHECK([for $am_display_PYTHON script directory], [am_cv_python_pythondir], [if test "x$prefix" = xNONE then am_py_prefix=$ac_default_prefix else am_py_prefix=$prefix fi am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null || echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"` case $am_cv_python_pythondir in $am_py_prefix*) am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` ;; esac ]) AC_SUBST([pythondir], [$am_cv_python_pythondir]) dnl pkgpythondir -- $PACKAGE directory under pythondir. Was dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is dnl more consistent with the rest of automake. AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) dnl pyexecdir -- directory for installing python extension modules dnl (shared libraries) dnl Query distutils for this directory. distutils does not exist in dnl Python 1.5, so we fall back to the hardcoded directory if it dnl doesn't work. AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], [am_cv_python_pyexecdir], [if test "x$exec_prefix" = xNONE then am_py_exec_prefix=$am_py_prefix else am_py_exec_prefix=$exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null || echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"` case $am_cv_python_pyexecdir in $am_py_exec_prefix*) am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` ;; esac ]) AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) dnl Run any user-specified action. $2 fi ]) # AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) # --------------------------------------------------------------------------- # Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. # Run ACTION-IF-FALSE otherwise. # This test uses sys.hexversion instead of the string equivalent (first # word of sys.version), in order to cope with versions such as 2.2c1. # This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). AC_DEFUN([AM_PYTHON_CHECK_VERSION], [prog="import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] sys.exit(sys.hexversion < minverhex)" AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) ./Config/cppunit.m40000664000175000017500000000552212176660653013774 0ustar vborosvborosdnl dnl AM_PATH_CPPUNIT([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) dnl AC_DEFUN([AM_PATH_CPPUNIT], [ AC_ARG_WITH(cppunit-prefix,[ --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional)], cppunit_config_prefix="$withval", cppunit_config_prefix="") AC_ARG_WITH(cppunit-exec-prefix,[ --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional)], cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="") if test x$cppunit_config_exec_prefix != x ; then cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config fi fi if test x$cppunit_config_prefix != x ; then cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config fi fi AC_PATH_PROG(CPPUNIT_CONFIG, cppunit-config, no) cppunit_version_min=$1 AC_MSG_CHECKING(for Cppunit - version >= $cppunit_version_min) no_cppunit="" if test "$CPPUNIT_CONFIG" = "no" ; then no_cppunit=yes else CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` cppunit_version=`$CPPUNIT_CONFIG --version` cppunit_major_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` cppunit_minor_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` cppunit_micro_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` cppunit_major_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` cppunit_minor_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` cppunit_micro_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` cppunit_version_proper=`expr \ $cppunit_major_version \> $cppunit_major_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \> $cppunit_minor_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \= $cppunit_minor_min \& \ $cppunit_micro_version \>= $cppunit_micro_min ` if test "$cppunit_version_proper" = "1" ; then AC_MSG_RESULT([$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version]) else AC_MSG_RESULT(no) no_cppunit=yes fi fi if test "x$no_cppunit" = x ; then ifelse([$2], , :, [$2]) else CPPUNIT_CFLAGS="" CPPUNIT_LIBS="" ifelse([$3], , :, [$3]) fi AC_SUBST(CPPUNIT_CFLAGS) AC_SUBST(CPPUNIT_LIBS) ]) ./Config/Cpp.am0000664000175000017500000000144312176660653013107 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# AM_CPPFLAGS = "-I$(top_srcdir)" $(BOOST_CPPFLAGS) AM_LDFLAGS = -release $(PACKAGE_VERSION) $(BOOST_FILESYSTEM_LDFLAGS) ./AUTHORS0000664000175000017500000000175112176660653011713 0ustar vborosvboros############################################################# ## ## ## Copyright (c) 2003-2013 by The University of Queensland ## ## Earth Systems Science Computational Centre (ESSCC) ## ## http://www.uq.edu.au/esscc ## ## ## ## Primary Business: Brisbane, Queensland, Australia ## ## Licensed under the Open Software License version 3.0 ## ## http://www.opensource.org/licenses/osl-3.0.php ## ## ## ############################################################# ESyS-Particle is a community Open Source Software project. ESyS-Particle software contributors include: S. Abe (2000-) C. Altinay (2008-) V. Boros (2009-) F. Chen (2010-) A. Gladky (2011-) M. Griffa (2011) W. Hancock (2008-) L. Heredia (2009) S. Latham (2005-2007) P. Mora (1994-) W. Pettersson (2008-2011) D. Place (1994-2002) P. Richeri (2009) G. Tancredi (2009) Y. Wang (2002-2008) D. Weatherley (2007-) For further information about ESyS-Particle authors, email d.weatherley@uq.edu.au