ࡱ> S@ bjbj &yD  (((8V($z( Th*)))))),),),bSdSdSdSdSdSdS$iURWS p3+^),p3p3S )) S(;;;p3x ) )bS;p3bS;;8<6Pbb @ :S)) T>(7*RbSS<TFRX9X8:S X :S(),.b;{/0),),),SS d&h; &Web Services for the Virtual Observatory Alexander S. Szalay, Johns Hopkins University Tams Budavri, Johns Hopkins University Tanu Malik, Johns Hopkins University Jim Gray, Microsoft Research Ani Thakar, Johns Hopkins University August 2002 Technical Report MSR-TR-2002-85 Microsoft Research Microsoft Corporation One Microsoft Way Redmond, WA 98052 Web Services for the Virtual Observatory Alexander S. Szalaya, Tams Budavria, Tanu Malika,b , Jim Grayb, and Ani Thakara aDepartment of Physics and Astronomy, The Johns Hopkins University, Baltimore, MD 21218 bMicrosoft Research, San Francisco, CA 94105 ABSTRACT Web Services form a new, emerging paradigm to handle distributed access to resources over the Internet. There are platform independent standards (SOAP, WSDL), which make the developers task considerably easier. This article discusses how web services could be used in the context of the Virtual Observatory. We envisage a multi-layer architecture, with interoperating services. A well-designed lower layer consisting of simple, standard services implemented by most data providers will go a long way towards establishing a modular architecture. More complex applications can be built upon this core layer. We present two prototype applications, the SdssCutout and the SkyQuery as examples of this layered architecture. Virtual observatory, web services, metadata, databases, world wide web 1. INTRODUCTION 1.1 Living in an exponential world Astronomical data is growing at an exponential rate: it is doubling approximately every year. The main reason for this trend is Moores Law, since our data collection hardware consists of computers and detectors based on the same technology as the CPUs and memory. However, it is interesting to note how the exponential trend emerges. Once a new instrument is built, the size of the detector is frozen and from that point on the data just keeps accumulating at a constant rate. Thus, the exponential growth arises from the continuous construction of new facilities with ever better detectors. New instruments emerge ever more frequently, so the growth of data is faster than just the Moores Law prediction. Therefore while every instrument produces a steady data stream, there is an ever more complex network of facilities with large output data sets over the world1. How can we cope with this trend? First of all, since the basic pipelines processing and storage are linearly proportional to the amount of data, the same technology that gives us the larger detectors, will also give us the computers to process and the disks to save the data. On a per project basis the task will probably get easier and easier, the first year will be the most expensive, later it becomes increasingly trivial. On the community level however, the trend is not so clear, as we show below. More and more projects will engage in data intensive projects, and they will have to do much of the data archiving themselves. The integrated costs of hardware and storage over the community will probably increase as time goes on, but only slightly. The software is where the difficulties are and will be. The software technology used in astronomy today has its roots in Fortran, with more and more C emerging, but object oriented technologies are relatively recent. Components are rarely reused. Projects tend to write their own software, using relatively few common libraries, and as a result the software costs are claiming a growing fraction of project budgets 25% to 50%. This is especially true, if we look at the problem from a community-wide perspective. 1.2 Making discoveries The strongest motivation for building new sky surveys is to make new discoveries. It is important therefore to consider when and where are new discoveries made. We believe that the new discoveries are almost always made at the edges or frontiers: either we need to look much deeper and detect fainter objects, or we have to go to extreme colors, by selecting the edges of a color distribution. We can search for objects of extreme shapes (gravitationally lensed arcs), or of extreme time-domain behavior (supernovae, microlensing). When the Internet was in its infancy, Bob Metcalfe, an inventor of the Ethernet postulated Metcalfes Law: the utility of a computer network is proportional to the square of the number of nodes. It is the number of the different connections one can make that matters! This law applies to discoveries as well: it is the number of connections we can make between fundamental properties that enable us to make new discoveries. A new observation of the sky in a previously unobserved wavelength or a new epoch for time-domain astronomy each enables new connections to be made. The utility of a collection of independent observations is proportional to the number of non-trivial connections among them. This is the motivation behind building multi-wavelength sky surveys. By federating multiple, independent projects, we can make these new connections. The early successes of todays sky surveys, SDSS and 2MASS have clearly proven this, the number of discoveries they made after the first few hundred square degrees of observations (high redshift quasars, brown dwarfs) were clearly out of proportion to the area of sky. They can only be explained when we include the possible number of pair-wise comparisons between filters (an amplification of connections by 5x4/2=10 for SDSS, 3x2/2=3 for 2MASS, 8x7/2=28 for their combination). 1.3 Publishing scientific data It is generally believed that the scientific data publishing process is well understood. There are the Authors, mostly individuals or small groups, who create the experiments that provide the data, and they write papers that contain the data. There are the Publishers, the scientific journals, which print the papers, and nowadays also make them available in an on-line version, there are the Curators, whose role is filled by the libraries, which organize and store the journals, and make them available for the Consumers, who are scientists, who want to use and cite the data in their own research. This model worked extremely well over the last hundred years, when all the scientific data relevant to the research could easily be included in the tables of the publication. This imbed-the-data-in-the paper publication model breaks down with the emergence of large datasets. We know about the large data sets in astronomy, there are even larger quantities of data in particle physics, and a similarly complex picture is emerging in genomic and biology research and in many other disciplines. The above roles are clearly present in data intensive science, but they are performed in a very different fashion. The role of Authors belongs to large collaborations, like the SDSS, or the Human Genome Project, or CMS. They take five to ten years to build their experiment, before it starts producing data. The data volume is so large that it will never be contained in journalsat most small summaries or graphs will be printed. The data is made available to the collaborations (and the world) through web-based archives. During the project lifetime the curation responsibility rests with the projects themselves. Once the collaboration moves on to do something else, the data is either discarded, or moved to a national archive facility. The Consumers have to deal with the data in these many forms, often obtaining it from sources that are not eager to support them. The economic model for long-term curation is difficult since the costs fall to one group and the benefits to another. 1.4 Changing roles The exponential growth in the data sources and the exponential growth in the individual data sets put a particular burden on the projects. It only makes sense to spend 6 years to build an instrument, if one is ready to use the instrument for at least the same amount of time. This means, that during the lifetime of a 6-year project, the data growing at a linear rate, the mean time the data spends in the project archive before moving to the centralized facility is about 3 years. Turning this around, the data that makes it into the national facilities will be typically 3 years old. As the amount of data is doubling in the world, every year, in 3 years the data grows by 8-fold, thus no central archive will contain more that about 12% of the worlds data at any one time. The vast majority of the data and almost all the current data will be decentralized among the data sources. This is a direct consequence of the patterns of data intensive science. These numbers were of course taken from astronomy, the rates may be different for other areas of science, but the main conclusions remain the same. This means that the projects are much more than just Authors: they are also Publishers, and to a large extent Curators. While scientists understand well authorship, they are less familiar with the responsibility of the other two roles. This is the reason why so many projects are spending large amounts of money on the software, and not just on the basic pipeline reductions. As many projects are experimenting with these roles, much effort is duplicated and much development wasted. We need to identify the common design patterns in the publishing and curation process, and to build reusable components for general availability. 2. WEB Services: Using Distributed Data 2.1 XML, SOAP, WSDL These problems are not unique to science: the same issues are emerging in the business world, where companies need to send and receive lots of diverse information not only inside their corporate firewalls, but also with the outside. Exchanging and automatically reading data in various formats have been hunting developers for many years. Finally, there is a world wide standard emerging for data representation in the form of XML, the Extensible Markup Language. There are clear grammatical rules for encapsulating complex information in a machine-readable form. XML is rather complex and it was not designed to be human readable. There are style sheets, which render the XML data to various easily understandable formats. The most recent developments are related to Web Services: a standardized way to invoke remote resources on the web and exchange complex data. Indeed, web services define a distributed object model that lets us build Internet-scale software components and services. The major commercial vendors have agreed on SOAP (Simple Object Access Protocol) that specifies how to invoke applications that can talk to one another and exchange complex data. The Web Service Description Language (WSDL) enables an application to find out the precise calling convention of a remote resource, and build a compatible interface. Several toolkits, many of them freely available link web services to most of the modern programming languages and hardware platforms. 2.2 Web Services in the Virtual Observatory Many of the expected tasks in the Virtual Observatory map extremely well to web services. Astronomers are already accustomed to various analysis packages, like IRAF, IDL or AIPS++, which have multi-layer APIs. They start with layer of simple image processing tasks. Then they build a layer of much more complex processing steps on top of this layer. These packages assume that the data resides in FITS files in the local file system, and the processing is done on the workstation itself. With the Virtual Observatory2 the main difference is that most the data will be remote. As a result, data access to remote resources needs to be just as transparent as if it were local. The remote data volume may be huge; therefore, it makes sense to move as much of the data processing as near the data as possible, because in many cases after the first few steps of processing the output volume is dramatically smaller (e.g. extracting object catalogs). In many cases the data will not only be remote, but it does not even exist at the time of the request: it may be extracted from a database with a query created at that moment. One can carry this even further, the requested data may be created by a complex pipeline on the fly, according to the users specification, like a recalibration and custom object detection ran on an image built as a mosaic from its parts. These are called Virtual Datadata that is created dynamically from its archived components. 2.3 Everything for everybody? We believe that a multilevel hierarchy of services is the answer for the VO architecture. IRAF and AIPS++ are prototypes of this, but the concept needs to be extended to handle remote and virtual data sources. The core will be set of simple, low level services that are easy to implement even by small projects. Thus the threshold to join the VO will be low. Large data providers may be able to implement more complex, high-speed services as well. These core services can be combined into more complex portals that talk to several services, and create more complex results. Such a design will have modularity of components, standardization of interfaces, and access to commercially built toolkits for the lowest level communication tasks. We need to focus on the astronomy specific issues, and need not reinvent the wheel. We need to choose carefully how we define the VO framework, and how many core applications we develop. The resources for development are scarce, and they need to be used efficiently. It is important to emphasize that it would be a mistake to try to build everything for everybody. It is impossible to make everybody happy. How to choose then? There is a well-known rule about how many people are reading certain web pages. It says that 10% of the web pages are viewed by 90%. In a well-designed system there are always components which are much more popular than others. If we spend public money to build 10% of all possible applications we can think of, but these make 90% of the astrophysics community happy, we have satisfied our goals. There is no need to build all the possible complex applicationsour colleagues have been very resourceful to build quite complex applications out of the IRAF modules. We need to provide clear standards, interfaces and documentation, have most data providers adopt a set of core services, build 10% of the system, then the rest of the custom applications will be built by individual astronomers. Efficient low-level services, and templates for the portals will save time for everybody. The details, whether we need a 90-10 or 80-20 rule, are irrelevant as long as we do not lose sight of our ultimate goal: to create a system that is simple to use. 3. The Hierarchy of Web Services 3.1 Core services These are a set of web services, which perform very simple tasks, and do not rely on complex connections. Mostly they sit on top of a single resource, or catalog. They deal with everyday tasks that most of the current astronomy archives already provide. It should be very easy to implement them, and there should be templates available for new resources. Metadata services: These tell about the particular archive or resource, what is its waveband, what is its sky coverage, what are the tables in the database, what are the fields in the tables, what are their physical units, their description. Simple search patterns: These will provide all the objects within a radius of a given point (cone-search3), or an image mosaic, assembled from parts, centered on a given point, in standard orientation and at a specified scale. Simple functions: Filtering on certain parameters, unit conversions, on-the-fly recalibrations, counts, simple histograms, plots belong to this category. 3.2 Higher level services These are built on top of the atomic services, and perform more complex tasks. We expect to build such portals in a few days from the existing components and templates, like in IRAF today. Generally they talk to more than one service. Some examples include: Automated resource discovery: find the archives, which have optical and infrared data about a certain part of the sky, or find archives which have spectra at higher than 1 Angstrom resolution. Cross-identification: find overlaps between archives and search for matching objects, satisfying certain selection criteria, like brown dwarfs, or high redshift quasars. Photometric redshifts: using multicolor data one can estimate statistically the redshifts of galaxies, even if no distances were measured. These can be used to build rest-frame selected samples of galaxies. Outlier detections: find objects at the extremes of the color distribution, which do not fit the patterns of typical objects, like stars or normal galaxies. This is a very common pattern, which could be automated, and maps well on a web service. Visualization facilities: given the complex multidimensional data, it is still best to look at it visually. The brain has better pattern recognition capabilities than most of the AI software. It is important to create easy to use interfaces to build visualizations of at least well-known patterns, like multidimensional scatter-plots or density maps. Statistical services: many statistical analysis tools could be ran remotely, either near a data source, or on a portal, after a federation step. Such a way the user does not have to worry about compiling and building these tools, they could work like a web-based translation engine. 4. Example: SKYQUERY AND COMPONENTS 4.1 SkyQuery functionality As a step towards understanding web services, we built a simple application based on a web service hierarchy. SkyQuery is a portal4 that federates five geographically separate archives and web services. It performs fuzzy spatial joins between three databases, SDSS, FIRST and 2MASS and creates queries that filter on attribute differences across the archives. It was built by Tanu Malik, Tamas Budavari and Ani Thakar in about 6 weeks using the Microsoft .NET framework. Most of the application code was written either in C# or in ANSI C. The underlying databases used SQL databases running our spatial search library5. The main interface to the application is through a web page that accepts a query through a typical web form. The SkyQuery web service calls a SkyNode web service on each of the archives, to perform the atomic tasks, plus another low-level service, the image cutout, which delivers a picture of the search area. SkyQuery is accessed by specifying an enhanced SQL query where the relational tables can be in different databases. It allows two kinds of clauses beyond regular SQL: (1) AREA to specify a spatial range; and (2) XMATCH to specify a probabilistic (fuzzy) spatial join. AREA is used to specify a region on the sky where we search for matches. This applies to all the databases referred to in the query. Currently we do not check whether the sky coverage of the database overlaps with the AREA. XMATCH is used to specify how to match objects in the different databases. The estimated position for the same object varies slightly from survey to survey as a normal random variable distributed around the real position. The standard deviation of the error in the measurement is assumed to be circular and is known for each survey. Given an object from each of the databases, one can compute the probability that these observations belong to the same common object. The parameter value of XMATCH specifies the threshold for such a set of objects. The XMATCH operator can be used to specify absence of a match as well. For example, if, instead, the clause was XMATCH(o,t,!p) < 3.5, it would say that return only those objects from the first two archives (o,t) that are within 3.5 standard deviations of a common position, and there is no matching object in the last archive (p) within the same error bound. The last archive is called a dropout. Archives specified in XMATCH are mandatory. The heavy-duty cross-identification of the object lists is done iteratively at the SkyNodes. This enables very large savings in network transfer, since only the absolute minimal data is sent on the network. We estimated that our scheme requires about a factor of 50 less network transfers, when compared to a star-join topology that would stream all the data for a given area of the sky to the portal. Using this daisy-chain join, the portal can be very light weight, just sending questions and answers. 4.2 The SkyQuery evaluation steps The SkyQuery portal follows this sequence of steps when it performs a cross identification of objects in the federation: Parse query Get counts from federation members Sort by counts Make plan smallest member first Iterative cross match in smallest-member next daisy-chain Select necessary attributes from last member Return output Return cutout image We built our own SQL parser to be able to handle the special operators. Once the parser identifies the different components, SkyQuery builds a query for each SkyNodes that counts the number of objects participating in the query. This query includes the region restriction specified by the AREA operator and the constraints that can be evaluated entirely at that node. These queries are a simple variant of a cone search, with some extra filters specified. The SkyQuery portal sorts count results by decreasing counts, and then creates a federated query plan. The query plan consists of a customized SQL query string for each of the archives that will be executed locally, after the cross-matching is done. This SQL SELECT statement will tell the archives, which attributes need to be sent on. The plan pipes the output of that nodes query as input to the next nodes spatial join. In fact the architure pulls the data as follows. The portal calls the node with the largest count, trying to pull data from it. That node calls the next largest node, trying to pull data. Eventually the smallest (and last node is called, it is starts sending data up the pipeline. Results are returned as a DataSet objects. The returned dataset is converted to a temporary table by the web service, and then joined to its local database using the probabilistic cross-identification (see 4.3.4). This iteration eventually returns the final dataset to the SkyQuery service. The SkyQuery also uses the AREA descriptor for the parameters to the image cutout service, and returns the relevant optical sky image of the sky. In general a query involves were five interoperating web services (portal, SDSS5, 2MASS6, FIRST7, CutOut8). Typical response times for a 10 arc minute radius are measured in seconds. 4.3 The SkyNode ]SkyNodes are the basic building blocks of the federated query system. They offer core services, including some sophisticated spatial search functions. This saves network transfer time. They are based on an identical web service: only the contents of the databases behind them differ. They support the following functions, described by the WSDL, also accessible though the SkyQuery web page. 4.3.1 Metadata functions Each SkyNode is a stand-alone archive. The different functions of the SkyNode web service provide the low-level services mentioned above. These include metadata services: Info(): returns a set of (key,value) pairs that specify the survey sky coverage, its wavelength coverage, and its root mean square circular positional accuracy. Schema(): returns the XML schema of the whole archive, in the form of an empty DataSet document with the schema header. Tables(): returns an XML document containing the list of tables accessible to the users with a short description of each table. Columns(table): lets the users query the database about the names, types, physical units and descriptions of the attributes. It returns an XML document containing a list of table.field and a short description of that field. Functions(): returns the names of all functions and their parameters that the user can call, or use in queries DocSearch(key): lists any Table, Column or Function in the database that has the keyword either in its name, unit or description These low-level metadata services enable the users (and other web services) to discover the metadata about the archive in a piece-by-piece fashion. Instead of dumping a large and complex document all at once, one can carry out a lazy evaluation: selectively retrieve only parts of the schema. 4.3.2 Query functions There are two basic query functions, one is simple and the other is somewhat higher level. One could add a ConeSearch functionality, although through the use of the spatial search functions, Query() can fulfill this role as well. They are: Query(string): is a general purpose query interface, that allows any valid SQL statement to be submitted. It returns a DataSet object XMatch(): is a more complex function, that performs a complex cross-identification. It receives a plan at its input, which contains instructions how to proceed. It calls another SkyNode recursively, it builds a temporary table in the database, performs the cross-identification, then joins the result with the main photometry table, then selects the necessary attributes. The updated select list is returned as a DataSet. If it is at the end of the calling chain, it runs a query on itself. 4.3.3 Database The SkyNode database architecture was cloned form the SDSS SkyServer6. It is based upon Microsoft SQL Server 2000. It took a remarkably short time to port the external datasets to this format, about 1 day for the FIRST7 archive and about 1.5 weeks for the 2MASS8 archive. We built a template of the SkyServer, so that only the main photometry table had to be rebuilt, but all the spatial search functions were able to run without modifications. This shows that it is possible to build a database template that makes the data publication process much easier. The documentation for the schema (units, descriptions) was created in sync with the database schema and was inserted into the database automatically. 4.3.4 Fuzzy Spatial Join The algorithm used by a SkyNode to evaluate a cross match query is interesting. The AREA clause in a cross match query is implemented using the spatial search capabilities of the SkyNodes. We have built a library for spatial searches as an extended stored procedure to SQL Server, using the Hierarchical Triangular Mesh (HTM: Kunszt et al 2001). The library builds a quadtree on the sky, each node corresponding to a spherical triangle. For each object in the database we compute its trixel address, or htmId, down to 20 levels on the quadtree. We can retrieve objects inside arbitrary spherical polygons. First we return the indices of the triangles that cover the area then we perform a join with the object table, using the clustered index built on the htmId field of the objects. The simplest search is the inside of a circle, centered on a point. Currently this is the only AREA specification that we support, but we will soon extend SkyQuery to more complex area definitions. The XMATCH clause is implemented by computing a probabilistic spatial join. The log likelihood that the given objects in the different archives correspond to the same common object is obtained by minimizing the chi-square from the sum of squared deviations in the positions, using inverse variance weighting. We were using Cartesian coordinates (x,y,z) forming a unit vector to describe a direction on the sky. This avoids any coordinate singularities, common in spherical coordinate systems. We compute a cumulative weighted direction (ax,ay,az) and a cumulative weight (a) where the sum is taken over the archives for a given set of objects, a tuple. The best position is along the direction of (ax,ay,az), and its log likelihood at that position can be derived from the cumulative quantities. For details see the documentation on the web site. If there is more than one match to a given (n-1)-tuple in the next archive, we add new tuples as necessary. If there are no matches, the tuple is deleted. The tuples that survive until the end are returned as our final result. This cross-matching scheme is fully symmetric, the particular match order does not matter, other than in terms of speed. 4.3 The Cutout service We created a simple cutout service based on the images in the SDSS EDR archive, stored on the SkyServer. A web driver for the service is available at  HYPERLINK "http://skyservice.pha.jhu.edu//sdsscutout/" http://skyservice.pha.jhu.edu//sdsscutout/9. The full documentation is there as well. The image is created on the server dynamically, from several smaller images stored in the database. Their proper offsets are computed then they are shifted by the appropriate amount to the nearest pixel. No sub-pixel interpolation or image warping is used, nor is any necessary. The images are inserted to a main image buffer, which is then rotated, then the requested rectangle is cut out. It is rendered rotated, so that North is up, scaled to the desired pixels per degree, and one can plot optionally the inverse of the image. One can also overlay objects detected by the SDSS, or the ones that have measured spectra. It was implemented in C#. It took about a week of effort, and approximately a 500 lines of code to build this application. We were able to port a considerable amount of SkyServers Javascript geometry code to C# without much trouble. The graphics tools of the .NET Framework Class Library enable us to do remarkably smooth image zooms over many orders of magnitude of scale factors. The cutout service has a dynamic range of 10,000 in image scaling. Summary In a world where data sizes and complexity are growing exponentially, we face new challenges. The usual paradigm of authoring and publishing data is changing, not to mention how we analyze the data. Many new discoveries require federating as many observations as possible. Due to the rapidly changing technology, these data sets are in distant corners of the world. In such a scenario there is no chance of building a centralized system. The large volume of data requires us to move the processing to the data, rather than the traditional way of moving the data to where the processing is. Building software for more and more projects is a main challenge. For the community the only way to deal with this is to use a modular architecture that encourages code reuse. Also, the data publishing patterns are very similar and they yield well to the use of templates and design patterns. The recently introduced web services do most of this automatically. We envisage a multiplayer network of interoperating web services that will form the foundation of the emerging Virtual Observatory. A well-defined set of core services implemented by most of the data providers will ensure a similarity in the basic functions and enable their automated integration at higher levels. If anything, it should be easier to build a new web service, than to link together several IRAF modules into a new application today. As a test of these ideas we have implemented a two-layer application based entirely on web services. The SkyQuery, built on SkyNodes and a Cutout service has lived up to the promise, in about six weeks we were able to build a remarkably complex and flexible data federation service, which is only a small precursor to the greater and better things to come. ACKNOWLEDGEMENTS AS acknowledges support from grants NSF AST-9802 980, NSF KDI/PHY-9980044, NASA LTSA NAG-53503 and NASA NAG-58590. He is also supported by a grant from Microsoft Research. Our effort has also been generously supported with hardware by Compaq, Intel and HP. REFERENCES Szalay, A.S. and Gray,J., Science, 293, pp. 2037-2038, 2001. (also MS-TR-2001-77) Virtual Observatory website:  HYPERLINK "http://us-vo.org/" http://us-vo.org/ ConeSearch:  HYPERLINK "http://www.voservices.org/cone/" http://www.voservices.org/cone/ SkyQuery:  HYPERLINK "http://www.skyquery.net/" http://www.skyquery.net/ Kunszt,P.Z., Szalay,A.S., and Thakar,A.: The Hierarchical Triangular Mesh, Mining the Sky: Proc. of the MPA/ESO/MPE workshop, Garching, A.J.Banday, S. Zaroubi, M. Bartelmann (ed.), (Springer-Verlag Berlin Heidelberg), pp. 631-637, 2001. SkyServer:  HYPERLINK "http://skyserver.sdss.org/" http://skyserver.sdss.org/ FIRST:  HYPERLINK "http://sundog.stsci.edu/" http://sundog.stsci.edu/ 2MASS:  HYPERLINK "http://www.ipac.caltech.edu/2mass/" http://www.ipac.caltech.edu/2mass/ Cutout:  HYPERLINK "http://skyservice.pha.jhu.edu/sdsscutout/" http://skyservice.pha.jhu.edu/sdsscutout/ SELECT o.objId, o.r, o.type, t.objId, t.m_j FROM SDSS:PhotoPrimary o, TWOMASS:PhotoPrimary t WHERE XMATCH(o,t)<3.5 AND AREA(181.3,-0.76,6.5) AND o.type=3 and (o.i - t.m_j)>2 Figure 1. The query syntax for the SkyQuery. There are special target designators to specify the archive, and there are two special operators, AREA and XMATCH, used to constrain the search area and the search accuracy.  Figure 2: The relation of the different web services in the SkyQuery application. The SkyQuery web service calls the SkyNode web services on the participating archives. The ImageCutout provides an image display of the search area.  Figure 3. A screen shot of the web interface calling the cutout service. One can specify a location of the sky, a pixel scale (pixels per degree), and the size of the image in pixels. )+>  i j > ? G H &'#:*2%%,,224488xAABCCCJDKDDD`EϹϹϴϹϴϴϴϴϹϹϹϹϹϭϭϭ h5L6] h5L6 h5L5\h5LOJQJ^J h5LH*h5LhYh5L5CJ$aJ$ hYCJ hYH* h\DNhYhYhYhYCJ,aJ,D)*+Y      . D V i > k  $a$gdY$a$gdYgdYyzk l u v G H )*"#:;OPF & FEƀv;hf Keywords: 5$9DP!!%%%%3*4*,,,,,,,//22224448888;==>=TAUAVAwAxAAABBCF & F Eƀv;hfCD_E`E{E|EqoooF & F Eƀv;hfF & F Eƀv;hf`E{EFF?GVGGHHHIIK&K*L+LPLkLLLNNNNPPUUUUWX~XgYj`|`bblcxcccfdwdGeVeee9f:fihyhhh2k3kkkkkmmn osssssssssss-t2t3th5L6H*] h5L6jh5LUmHnHu h5LH* h5L6]h5L h5L5\M|E~FF@GGs,F & FEƀv;hfF & FEƀv;hfCEƀ3hFGHIKq*F & FEƀv;hfF & FEƀv;hfF & FEƀv;hfK+LOLPLkLlLNNP)TUUWWXX}X~XF & FEƀv;hf~XXXXq*F & FEƀv;hf.F & FEƀv;hf.F & FEƀv;hf.XXYEYq*F & FEƀv;hf.F & FEƀv;hf.F & FEƀv;hf.EYSYgYhY\\j`k`{`|`bbbqooooooooooF & FEƀv;hf.F & FEƀv;hf. bbbmccoF & F Eƀv;hfF & F Eƀv;hfcgdHeeq*F & F Eƀv;hfF & F Eƀv;hfF & F Eƀv;hfe:f;fagbgxgygihhoF & F Eƀv;hfF & F Eƀv;hfhjjjjmmmmqttTvUvmvnv{{{{{$a$F & F Eƀv;hf3t4tatbtctetfthtit#u)uUvVvnvww>w?w@wjwkwlwEFefgxyՄք "#oׅEFƵưƵƵƵjh5LUjh5LUjh5LUj!h5LU h5LH* h5L0Jjh5LUjh5LU h5L5\jh5LUmHnHuh5L6H*] h5L6]h5Lh5LOJQJ^J4{"~NOƂǂȃɃʃՃփ(F & FEƀv;hf.(zׄ$q*F & FEƀv;hf.F & FEƀv;hf.F & FEƀv;hf.$cq*F & FEƀv;hf.F & FEƀv;hf.F & FEƀv;hf.FGabjk KLMvwz5>  vphj h5LU h5LCJh5L5CJ\ h5L5\jh5LUh5L<B*CJaJphh5LB*CJaJphh5L5B*CJ\aJph)h5L5B*CJOJQJ\^JaJphjgh5LUjfh5LUjh5LUh5L h5L0Jjh5LU( xyzه 45qom_YYYm^ 5$7$8$9DH$^F & FEƀv;hf .F & FEƀv;hf. 5$a$$a$$         ......... 00&P/ =!"#$%8$!DyK +http://skyservice.pha.jhu.edu//sdsscutout/yK Vhttp://skyservice.pha.jhu.edu//sdsscutout/DyK http://us-vo.org/yK $http://us-vo.org/DyK  http://www.voservices.org/cone/yK @http://www.voservices.org/cone/DyK http://www.skyquery.net/yK 2http://www.skyquery.net/DyK http://skyserver.sdss.org/yK 6http://skyserver.sdss.org/DyK http://sundog.stsci.edu/yK 2http://sundog.stsci.edu/DyK #http://www.ipac.caltech.edu/2mass/yK Fhttp://www.ipac.caltech.edu/2mass/DyK *http://skyservice.pha.jhu.edu/sdsscutout/yK Thttp://skyservice.pha.jhu.edu/sdsscutout/NDd -#CA6  3 A?2NWx@`j Z`!NWx@`j ZN q@JfxڽVMhA~3nv)-_D-^/ښkS Rj)У "(xCA!'RvƤ_Ñ&~HSUK) -knh` 1j`)5sF3|5 12 9GiY~Msr>6es F蜩umU*Tϊ~wnBiwtf:`O;|b68v6\<+Ki~YDd+?*N  C *ASkyquerybrHj|,,|L~s5*XXJ[+R$<\h(2W*)1$>bp=zFu5{`^헷s|ca3g֯fF]`T*m Q3tsmI &\kZ,OZoFFن<ߎr`t:{.f9O&Sވy=ۘdzJۃ|Ş̄-UI&0"؏~{じ#v3w#|Q9cHj{4. J)9w$'P-}Q_;)1r.@? ?*>Wȕ&uHUTq r<%V+lB oD p%PҌZc4ӪUSڈ %.])$U1*}dCklo\eI7*D*ag-dz %qa} Y>*g᩵N3Lx2+?0j 7y3giaitH?(OL=hdL?t=Rt w>Qg)l- 7a9~Q}mjKӁt-vFFuZM5 (SK@ejY*CtKzJp} |&zCA~Re MQ}ejt?s{³( 娿' eG4is&Jճ+US#x}bQgwOWxB5R ,2U*96C1ɧB_@@!h(W4 j91O7Er$BڈOks5BYR_,@@Hqm/D-URM^1bE"?R!4>+ Zc?A1H9<=tS LAďC"@I10?!Ҥt H&0XhemjG4|$"GB[uTXJ9Z ::DO|UIN#EdbpNn(.!q Z? JIbm%Q`Z>-m \X  =)\-'V $z ,Ħ_ jG(}') Gʈ:g"$=y\'q 賈 H&N'qE/"gu$5 9C?|PAudTB +4x"Au1@|4BdDL ^VW\*8 2"e9bryA$|>}9` QBmKU2E6:0?GyFx#}^H%9v1?~r(tOXlo]f፝\@?T""I2@ky9CJ_!t9Y k{Ȋ>"Vhbj^@/[y" D `_Br$2(N)cR#bIO3_/v #hO KK!gɏQCUC@R` m@y1%@dIbLD8 >{znIR_ГFseP;`s@7' ܱ"B}_w5v&FuaPjE}ψAtu+U[OA\':bYMBՠp}.(ڢZSdJD\A5|_0$*@ |7 <*Sh4^=SQ1^D"Ad?W#eGO`kF3h`\-E@#ʠ>@sU,0zşӠ<+ϩ<>AfPBB QRE o0_q*F(T =%U*xQ[WeFF;PN26ܹsM 0frN;-9K˸cyfq]ы=kq?+`L'A }pVő|Gm+ir>, x:l0TޱY_%A&O (̒ "+)]q3vw/8Y H0F.[N#?ɍe>y/oC躱d/`]`fʰ`cQ?)n}tyJ Tb3  ǝ9ey,u>EZ@=>þE v )yXm7ԑrj  r"Gnfh rȸ"qHJ#-Ǡߧ1<9Q>ûSQ8#E^t_:kBI&(ٲSyҊ=uo~Be}cܹosOzwg}~>ߨa>>ASɒA;0 S|-}0[4X '~ G`Gqyvl3æP n>:Z#۴k>:~n;'l~m3ly'x?%[`˰}׽2YL"{Ltɰ&䌉nWZįɶC O< U<+ 밢[- h $\!I푵h[ޑC $f6ȃ ,9x^Q;<-"2!SzT(e[R)x+&y^xb~9@VxjgƠvw0DQIyI D:( KlȪ8^ӳ?^ qsa]ve6|?]}R)jɭ@LuE/ސԎn9l .';C6#]}jɾ={o&]_pGom偅. }C?!>pk4|:~-} o{s9w/oOI]w۟`" X35Cy8 \pqov\pon3ͷZ~.o ~| A)/ W+>ޖgc_Z~rŵ?OoeOiM]NoÓܱ\Õ㏹W~M7~c+kہh֜0=#zj"M;'}CyRnT{pKz`9|F=W;}5 zRϑT6KC(Jd96'mRIOO Ÿ)&}X/y\H? `7$@rnvx{@Ρ87;3iD݉{.bfO}?O-rrp&}fy&KPjVƽԱyqˎ<玝,9/8a+>_ `\j[}1xؽp;Ox'>7ɛ#&p#Pӊԫ}Nc4̣4pOY?v?l#|ݸ^ǽ|}؍;?~gSL ۅ("eиʾ SM-z<<06]&gO t M}(d9:ez@p4VhC*|"}9yB)~2 P+4N"OOq;(x# @ %t <X2Ƹ֙EwXеJ8#19r~vyaüAN%ӛ ?ﺎSJ裚r7y@Ҧ!_@.c =sԁ?磗뗿O)LS-ror׮4H.<=Fn'6n]xD2T[Yv뛟)Uw2RJ,"Y"u v>Ǒ6 ʆM C`Ȋ cgCH4Ek s iH$LT1ZimȈFMd1t0}cJH>O!%H5VO#@l8:y"|IP v,:jR5piU|Sq)H<@oeIw->sϩ@/W8Аn ʸ<Iq2qL-T;;(>pOpB5ѓn`ؿpm"#8k1(8=% Z6X9;6K|91Igj(g#A&m뫁F4.HL9e&(b1cɽ~-xrE41?YsbAQ mH\,*bfX`D頕,=QA=˨"iUsM3A! xIcW=eMQMI-Av2`S Lhn=^S>RM[7BDN yBAQ*No3ns" "|7?l0!~-ڕZ,6f@蜏r󛇠S;SpܽcS6r)Zv{X@q-,?dɼ{DL;G" Q8Eà-=()23?Cq$ʠ!#ɠǠBd\H\tr9x uh(3 *xptjirBNYŹ1y͇DjG@'SN-5W#UW,H-Eo?Ysɂ6hN */LHh66iP<Axm͔5Cr2"zH}ZLxlӒ7X\/d}Zo Xd,L܇,EF/,T(@:a`7G< O@E\<(bdY 83 g^TFpM-:rڇVyp k2 zG0 ['J;"$ kЙZ%{#ukKexM/X#0$2d Y@>XFI iPVjCI# LkT b4M̒嵴O!{DXYM(I)rDHQ+'y%xU,$[+4}ȋ!!JB>jKV{T*TI1=eEḚlIجd_6"eP }iVR)V@|/x#5"PlCAQƪG.BEϲ"kc(D٢4|d{y-7?ZȂ|T*Bb .0"K yْ+ G4 ⠊m*!$dx!28TNR`xCH>mO ԑt ~=X-"?>I|SDCPta.l, ̲r#~i-#6, 9Had=R' oDy<0*#5If_sd97DmxO+Fİj)YVױqKd}:rR^Hh@֕} 㾸(^B$pZkd&ϫ ǫN2ŤSZ(myĴi,.txb|[:egRJђ*c1ldZFZ&ceq+G{ͫx,Ggy*0ese],#':Q(u/(F`$C^Irݤ6M GK^I}Њ3$1h-QC$1-^D%߉aؕQV?(ERjsQvIjzxHFw(]o"EGQ CO ɓ6t0{tւD^|_&U DҠR^tx'URJuI@U!T&@:TM>&h1X#W ^Nۉ2B;/UN|w1zK9=I0C!?32eQH썕G8^%QYP![$S"zBЮR_Y.{|I΁8pWqG4ZQ6y"k%3jA4UwofPٕtfg>o3f̔_O WlOWzU]")YyGNw)^ $|L营¤MQXI(a-}"Mt1Aϫ3!UWOnhxcuB|!Y8tF62Q{^WZM(&T:g[?J.aHQMqQ _tД' }T.&ALUYǬ=چ& "eZ~K}$*o$4Rkܣ66ٌNT(͋|Q,BR֘r,bMf/*jc,ǍDJQ%7+( D~25[BU3yCUE.!pU'#9TT[86V'N)1@ޞcM4s*YŦTkdo <R6`Z<-Wy& lE|YWiŀ2t/NEҊ U\A.EfaY )IT.ԹK4,`[eM[1,鲧]MhX:ZQQv͇ΐ 7=7hm~Cl񐺨dȘ}ôuKN/1*ea!O7s , q3mRZTRͺXYKTT+F4*vNcXH-{uzo':~3Ũ47sZqc:C-M]\3ĽIIɵú~ fJc 縧r$ajPU;* ZWTP:&diq -l0S)#,45"qŤxձDyQ"j +0b5 טrEWa("дq# j˱3~2ӕO 5\N$*c{%dˊ 0$q MRGVQQamƃE([&ԝI-VՒ1 Z'͈ZMC=KƊ4h%u]r Ş  Oof` i3^ITPX$'5xg!bBwIE *uaYpqɥ7`֢)W.lW)Zq*a~U%xnƅ j 3nzHW Mf0W@q4%$rK\:mE? &ewMzzB]6dsV6שHNDBDKDoRkz4\BXoMXXuj5Ytb%1}lt6kdOm0=i6V_Q-ܳsf+fQ= c&5]'Qяa// P4*E_ן[]?bE!p+VPy ԙTqsQ0<#*݀J8,`(tK7qS0G|J֝J}dB6 8 3|Wř_ZVUIT V*u%'2e$aSُ" ~C`%H$eZz^3[9%N@mkJJ׷6!Y/L =OAzW ybW˔hݥNnWl/͈0M/X=ƸGS+;󥕞{xTKTW!$2m/BŬJޢXDVW Ŷ'8 4E,ঙ *9v=j-l&lOu/kvZɼɳZzeX톲OhU9njm}2t>Ix^L8D*"1?0&7zznyaݹ :x4 _?̝; v)C돛{sw K<ߍ<g} `T"f Ś~/n͝0>RH2 B&K&iiM NV "55@f G^wDK4P|0ny Gr-F XL %Ѡ IDlYWbKn%AͅhNje.Tľ&~1wNYf*v:xBa0 6#=>Eq?p/ϛ;A~֞]K?qys> ܇鳏x$gZ9=< oE/.relJD(5nmы ?wAo0X4&A\?O=gέ ,'ڣ Ug.br/EK`'fMR*b`hQ+(5ҺGTFk| zͺ&0*= bT= i*)S>xC fy}Kϣ6Y_lݺo˵ X\1b)fXU`+۸Ms~NAd'-%?{[9>@JT9b??A/tcHC;Q;0\]>lw,:z~LCheT\>^wwTxےOg||)}78dZ{N B/6+)7a ()}W{WEb r\߄K5s%xw_bJ=/D)]d֛R4捴C_W%H5P9r!JfO0LNzVCn-(G|`Nu*_brRj U8[L}Ze U%0%uzL"u67lLC8TYDK L&}s< 9FKr _]d:Ffʨ9!^J]RQ"K&|A"{k5PZ%ͯa0򚆝Mx=&hJNjq/G*ʴxrxu[m!I:煗N9\zK[q%0X}|JJx)W|Ķ%3mݙTiϸ6ǫvIwQIR饑O8Ey$ǷǾ@툥*%VƼZ m2lh b -E+}feŋsY_qK8f4PD̪DH+'>bG qU }Ȁ Rku.!/N%3Ra h ͽGϽṁZ} )-) S9̔mB y Nh6[e wU,kavٝWiv٘5v⣘1J -њ7*ڼTY&hSZ46fLm1x=I1boWMLkfD T\^OeF}Pjٌ@)sⵜѮKM`2K^OT( V*2I?+Pg,<3JYpX&Pԧ;^ud|H-C'KAj]2ߣHdKha=E1egXD&$G V[㍂(jf|8$0(OPtpU+:D)s\8KuoQn(L#>0Hy2[5>~N$J$f*"HL'#Vq>We}KNTiN˵>ŝ/ [^h(QSǽ6[w̹6Yky#d3ZNbk>h2v7~h"|ě=fwA9RY%qȿłS5C 1HuY2_H30"4ÌBbGcO0]b5rv y'zܾ_%^,B^$?$f!QPFW&4:8cص ^֦9cÝmr"ONN4{-56`e\a)5f.?LL*T:ː@y <(7fZ\2؊9eCVQkea逄1JuZZ;lNJ#`y*LrÞ̈MVµF1qSUa*T#H3C:,sR^%1D1cT! *m,)bز) &NX|m/^vE3삚;0MO aELVT7r~܈kMQ*7 .GXl|-"uM=N7'ňE6[Oݞ7qhacމ4!F]|ۜ ױ'3Ƌl1&Z̑J- .KFq0'5M:)̗6Nw4swo4}!ֽQȴ=MjSI>.4EPcOJo7#4q"vx{uk@*O#c K 9B !P.aq\^‡x^_2YpyfXXҚ2 TҔX+pٺbݱ0Ԟft8aЏwMT6iw5tk2՘Hڥ8#H*u0TRD7¡^ASOܡcQ1E 㘱*sUR2eF&lLL"ða-1abRҤD &O$SߌQZld^߉\៩)G~M5 D4'pCcyΏ n4V Km etDA1 X.qş29&iSlPiǘ6ub>cFĥn4'e#݈&  UIWmFbs>Q&= }GM8=ZVJ<&ZaDZXoBfp$wOUuS8`,5lbX0hjDG=so r;Ѐ xZ:G 0(M1DpsHQ Ls B%x?Vx9K88Ͷn`(jdY"cXK̦{]k;} ɱ*MXaNG}cyߧoL d xw|eQ֞]L_dIqIĭqycZ[z=0ؔ UBIjQWD\cP#6V{yԇָrWƙ w0EipnnnK6 hX+ .ڼp״Rg r {æoo &l|n Xkc&MN6Trju -+b91BWvWVZk,pSFvp |J*:\69!ML[dօ0 ~BjoljS-1kFbWl |gqgvSl#[{T>x|gc2&я7 i$7Tz?*u| zϺM/C*Qچ(_,悑jy6hBY*-ִ;q|b|в '<ܘ!Qg)I$E* ǖ܆M;s޶ظ*Qgֹ7>oFW{JGτ׭`L޿/W5JAR42Ri27vvu_Ww7O'~^O{H-2+$.UFl<(:AR2/v^6G/ X:4T1f9ve i,H,$T/Ru2ҵKXĈt&߭ߕ!}0|}e!ߍcko9n]C_J!S6=-#ymkkmZKSj7X7C|/>yvW)ѸkNe`K{g+ mkǯ ̌c<`I]ƽ4|~KM7,Ӻ&Wa- aur~JWԗOzX+o]5>?հqn`MqJZa'`QIQ\F=ADEHQM+5>nh`xp7,:ト_y->NNLZ5+0 P|G{mKqZnln(U ?q'SͣFLTT r7$̢;!JŠvL[9!1fl V [ϯ_)aJf6K]\+|S@:S8P01VNIp$V9tX凬i] DW;t: KA| o[ARNxϙŗ3XcwK(85@ƻ} $AʔsE)CD罨CR8z@/08lS[ȒRTҸʒ @i|ZǬCdS|%~r&F:pZ2ZNpZ-`9S'[01"ڰcw7<(CE![>ֶ>fk/Ji 1sjVe?6ᅲtktӇQ/yzv˺&ԷӕҞo83<q)Ǽq}HvZ^J1#tw֭[zJU]G2`"%7zkCH{\-le񉮖]4bQMv2&Iz',8|o}+zE^O;ݿ=3$6$aQ[UԳXI? Es ftX&=?Tr#tlٍ^u>1띘c]sgV'V,L0îw9s68tW<.;&[ha6~p}j_^-Ī/=~R-K_+W,RyR3Η{,5SqsS6ot:l.3-J}C 罰am?‘x9鵵HߖW.KC[ބCT>hC!yІW8򗾍ӫFexxۺ`X<<:9΃\D݆U];z$ZQhqQcu|scP׶Xl.L]>MagHZzaP0෼cN[k9^c}Qo;5b4M#N~ .UZ/f%̰rKlˬ5HMa']=N@w{k7V 1/}c_TOϑnUk_45mӧM} Rp X`0G0lQ]wf*6>}d[%/I.P֬rNi:&ZTLd3tjm|Aoዷ.U5z ΥV1FѮZ`4Fʸz.ky>vI/nM|OA.uOAv.1J_lظipiTxн? 8޺w? GXBT-E\vK;U7Xrz0-{K#7Tyqܲ&9h2i3*V]_x_xa9_4G@ˋ!fި!^ ds{҇M=#3 dĂi1!Fm+{>Fq鿠Z#_b*XFbs'W#/B$Kݑ.yL~c@$abv(âB~I¨ Ww&>FK5"9jrLMYn|9@37J(N\X]uK,>?MȁYJA8h=CoendZ޼e`pzBpGg37E:rϯwD _ܚi)w|{ՓςymDL,aG|FMw_j@Ooꘛ =j߽o1k&BƌPW7õK[NKRmk7D]qLt&tCyF΢h|e21hI.+zF.ѳ[HV{>uN~MᾁPo5C6 9wl:֡ HA̛`/d=j_|/ccƟz хFQlm~1ǧl ‰lk֓A=|_韼.Erbk?kr}i,q=I@7yp1F#"(v `w鴈Юf_-_9Ro5,]Q0mQ nqur\;ݨ)`![|+o-%M7l-Fj!~A8\SLd3sXfScyEu4sC/GF.‰Ay:hr%͑¤-DP\nqoY+"3K Pq lkPcIvwB_Sգh]vLW=_0y A2\۽לɃ/,{He>6\ -͉{ewedwo>rjS{iuOsޜ s(Z(;qRyG-ݥE,ѪF3O#+{| /3B3#\ҥ['PO~~ #]μ gh() '/!7 b')LO+Nd%|,=5|E_U֓Ah]Z]PSmYWf0]U:8LzJIFUcF w}p,pό\T_W;לk~(q| M"z\KZkwA޸ES]G۵CZ;yNEjW?Igw>i5V{,dUB]+aaSnz;&m'=RMfB“ov@^ػ(û _Iy5cQYDk"Ԅ\grG<^~k{ԢYcd[Z;%S]\fM33}y/7&8\j9/UBP_} N)ڴi+G7vD[0/VcckyUr.BqbXJ1]=v? nc\[gY0<#([Ȼ*mPa/[:qcXk6H3` JP.h羚XHc9hAE ph㦁J FV] wgrM]ʏ]|߃b1a2Ad%rnOaU_]Nx_qUi0ZTIOt4 t(/s XBVB XG*WOۃj+-G.ʙؑuϦw=X> #6.LK f`mz,9xa`r4[%k㐽w зڌW=I0mY\gؒE’7es>(^9µOyɟ.ል"?bFZ?\7q)h"aGޞNNIԂ0OH6ioo Pht䘿#NƘ{?T|R_H,66e `ذGn婇9e(Ssdi\#m7;?)B_MI-TmˑKw[G#2eXSY1M-=+S[[Љ\UgÓO<~WfjSk_|}}ZM6GT; 1swZ:xOm[\ ?Cm}6^b}kWSJs 2t.\:4clb_7c:By%l($BJ J!:-s`_nlh,,&h"n+OhPMGz,U3AxXY4sL?I7'_Ï] Y{7 T-o"Ew*}i&4 -xwg(e'l7KvIo@i^Vκ+z13']eg׳u1sVԕ|12/FҮ4ҷGVU@OUígLi-O^|cntGTiJ(᱁#s?MZnZZ&ZF5$hƸ}gKF5!fa#W6);rJC ̓-SqVl-ED>;W weMl$j`_cZqa'Æ$j*ܐe_:ӊn/2X=&39mHh&va*nheT{4FRQ?YR; 3{F'$tJM*+ce$DnM Om31ƿDmҘ J 僂'QO=Om`ʖ)˛VTڦcliXrI/TmUH&$'LffߐOAU|F)qq`JkIv|dJ)q"i"Wb̀mďviETn7ԘI.*j4xm51)#dѫ {%+UfA `bL>+n8^lF/u_~·us{E9 h8fհ'opg`SN5smS4!h& +J~GKei],3(wrcgwєRߚ*n5^w'`Vzy--Oz(72qc[3YlZP֩,;?{n/90ϛ-fCrs鴞x|A>;g`#mἌ?Z q}_S^=|g?F|7&iĭ+ݍ ,|Kw|ǻɹF/33Ap 擝ϜW?tɭ\Y3+X f.;#PWTj.*r) &\{*y9^q~?SW!Y}B ^zV Ղp6`M{8s=i6 *}N,Flǵ c D:mYG=?f@AՓ/0}Sϝw>ND. 8qX5KN(_|g[tZG;~5Vq> -޻#'?ҳE{vƩFY*8<%U5At}|`{>u4@غak.үth)̞}݋/^ع})s8#aIuODGw:8g\ZQ_nb $T ܞh.k*zd#{F88JN9]@j㙃Q7Dp-yF%i?~^{͵'cw-Fgemg'Kz~hG >q HKw,S7-BC=o[q9߈grC^hclzٿW. o_;Qԡ7./aU'\n*PQ4z#n?Fٱ]v̎#|t1&)ooV$K/QZa4^EvN\/q8l cA~/ol T6} sqlw9n]lv5?1gOl_χն:dE|\_ ˫S#wQ[۫߰x]up<qrP qYtH8o?nܣk30 'Hoyw' Lr=zztU~%_jǫ)w-aM==IɌ8{._~^,W榿i}a9ɿ o۹/j7#y_qb9]݊_ȸgQзh T(ZbG N匂w s;lȑ)w&=&|~7QtɅ覽|ix|<%*yEyáH8$zNv깏;H^lG/zD H^sOKİf }SrW_)-g x߷Oԗgk|+ L9 /!}k(,2+qR.^s.?l0Qw/ᵸt2 J+Y/mXoN˿z篸&NiޱpN?s@}e)/ۊ@7l7rUZ?7gb0;nN ]'';(%0~nv܀:+c\l[nxjRwɾ(3BDx7!f&$Y6RL?d%+-)Ѥ'65E؟#F0Ako?m[(8zyY^Pp,|ȐLB^"NӃQdmD6FsO6hib(zu(ߐ}Kl{ךq|M9. 1̫xMi 9i+y@-l1ۂE&hzXTCFg[bo@%f'<:$Ra2ޚgT͛)ü2 ;.Tg\6WBWBξ ~+</,4wEW)m)4V w^ =m/{^v񹌰79٢xl^|Hǩwb4ݽ]k>4נNC:8>Uۍ x yp-;QѨOJ-KHP1RV$ɪxkTKc>n>@sQ "a8nu^ҲJ ?h2րfn%[ 14l4y>m6k@ugiAD.H)Rf @bn|TXܞIԦM4~EaT\F)0Q&f$XG<#q_wc'3vԣV\}9i@f]uella&QvjgҊZ;]Uxi -'Hh}VXO { "Id٣MD"${5U6]Pv2 >4f+T1lpg5~r_iȟlm۔Ū*Lu`+x%`+DV61Ч _DcU+r%)644p_E\L}'8@)+ C((_%B^XjS0$ ?'*-W"&~%6'$GMWEY4XvE;ܬ$Gh4Z:={JFw@M5w"&jm. __iH/bH!(2H )$ZtD&Q4J*E\^qUQG5F-qk~S'~|lNS%ƛizxJrWnW}=5"Nx5>|}afhnL=.\E8񏱕p1'gQS.&WY!6k :^Vr 1Q4*6ĦA}sAЙ,(!@\Lm5@ )u,|{Bډ5c @D \g#{pp˶5z¦% 5-3ASׇQ:&_zؒ z(:1[\4Tw>5?u'pM%@Kxz'&iBjq,.KLT CnXɛƎ\8TfQS 5Q[n~B03"FbݟQ+I4+/nDPܫPqsD@?ouޜ4aw\4~>0 G|ͥ# &(Zo޶9ďj$8WH:y(j"#wТ`+]4a59t0 _qQ';1]pOY;^Ȳ4` *{@o !y%p!+Ps'ؤ)݈' x[N||#5{sgxzV^2ȁ!X {~[; mbgjߤJcfнw5sU8',B:%FN :nQ~Oܲי{O-:4oxO z_VqO-pP>[:N1OҸ %=z}kJbNu=YGuU섥g/Ļ?w{s!~wE-k^X`;n?a n>ue} =Gf5X!gwjZ]yՄow_Xz kpf;N_ֆMf`QEV/OvВ[RȗHpƸrɌt׫M"J*Jx(&B ; sd~O㌗1O:`u&}r6Hhգ셮w }ˋptywEbӝw1bux)tY(aދKT^|z{[tAB![\%fǿU%c'o< bk[u@ū ႢD{+htPݍ;~t'P@5<'+vJa֚*',W[a.ZXԯ6~OƼDH{ܮ#Ul\> P?|OQ+N3;.NAȠ=%vzvHK)]cihQ5M B @A N{jpŇoSoR*ԞR,Gj(༡MA(G٬̽rG !ŭKۇdN#l*yfdd48B )xQcZ9`hs\T+X`<(ܮtGJqEy|5,+~{>żt+)`><<+[Pڸ[:Kht`m gˬ%}5nmm:CUzX [VI}Mo8om\'DV\wu_ΓeLڣ`V@I<`D.ls`99-OV-Xhpuסj;&}Cݎ7Oĉ9jD}[^_MpK2kEׁD^BD2=4!~&tk@jw~-~o†[Rhm3q>b<83 Ť$R]C Fch&]'cI2qi]+vfx ,d)zRE؟ǟfå 3 ᧥RʦaHSe}ۀt^ǻpˮ b͗h?dWޥ]C=8aܣ\9WO_~+M\o8m)w0`5H:7͝iilhl]'}Я.w(P_9Lp}4Sǻ+2>i/$cRVvJa2B$WL~ۛSaMkxn9e<5-tlCqb,G&l͜7s]s IsN6N aak#jrݫgz4^Ԕ;sSMo9.G չ,@0+2H2Qd"ĪhwqKI6I{ƞM!t9 ąX~btDbDX2D2;JzQ'xmP֘:$^CohVZ1&# eR5us1DSep, -)tINcdtO"E  "2>hi\j /Ӈ KFwIUc̀:,81ُx=q n̗/'&-Hϻ #2+T{P:O[yhNRڃ&L̺oaX3#*Uu6U.' #07IdJUŠypFRg }cJD;M!ya7H,LnLHh("RB;zRtsqp;_C! 40¬RPi*E!E协o.y𰋤-r1k~`ZZyx}j^d :cN$֣XHp?bǨV/VxXʕ|ؤj)~R Vy&H flEμRyQ$CŨp'WIz% LhqdBK_ˠD|T\@fBR(E"1Z( CJoI+THAjE1MB_AoeEOj =mwHzUy*su(Qb022d q}؂x4w@a,D7rR# PNc&PdO-Nab9VQ" !$ZIipmܔ-&ڴ82*y~alS@Irl"sP(14]f(E=q+hc0Z67~N=|'*B5zา_KHs;8rSl'$ۦ*cc#$8ђxj-U#dcH5RvW/J't_1ĩ#!5!<$tXFgC_ IjE9@* Flո x4N`szVZID%S$R4XcwIDj(Ɵe6oBwY#z;#TTW]vˢG{Ct _˨%d| ~dJIMړcKH-i|!@Q zޫMxFzK?*-eXl@iQ/qP_%q :H`pDjmh]5E 1%aӿҭiD!q-*36mWӫ ,I !BiXUzIդg`EE{CXc!ƚF cxk,"J4?16*~Xxk>jZO60))+dtHiTPY,D € ( My)Pճh *"!2`]RC/ܾ_KPS%Y]@ ]ck_O*|tJ8Mjt8X^ @R{[0 ]FVal݀6Njc } USªI\Z1Mdh sIGjdzѐט Y>7^KjUbeCwQ& }M㢐:1/0=B0Π\ Pw oWz!,RL^B 8mugߎ|:9\.;XpzS 1i4I>]d"Wo󋙁FCӪ-\* N,(nT H҄QN҂3F;W7u)?9Jgq"! P tMSՐE&DRX[@g| VEgn T`83Vjam]nR9l+3}SB4YΗ} /1>t,vreԅ<5BP"xe(83˩mxU܈eD0Ar4KE‚+$rfY~qó2ƋAT1FkU L&W%U!8>aS.kF ƪᲐ9 Tzd0huiTob#A QS,I&|NX%5CTѷREx4]en"`ۄuLȏ+a MKg (fSB&IjhP?ɮHICH>.ҿ>ZhP 6OuOQFT`wl&S̸JSQ:JWAC}zzSqKVOz DMYkKCp/g ,r/6cH4a4/?dZ}ҜgzP28rh_,)k\9?df%I/+yRID(aHr|sAH&ի@r6Xry oٰȦ T:d5@RW„‘W"te"Cخei-MmZC(@3D\w4l7Е ղµ݅}VvD\¯zHƦwHyxdRhke22ԯsS픫[F1pFQ7!Uԥz5u?Ga Ow581;E(|OZm(wc7C]PN.V7*Z2t&oi)3(y-QWt7zqnQp,xA1R1ؠFfL?X[]$lZӘt_'T7РcX'h-(!hIT=Ѽ7+!0+r`+˵[WETa$P(%j(dծܺtK!^YXLPlh-:8Y[܂ebKL J9R{1ncͩu5-w^^m+dx6:QPF@Zk(<)|n8ItQKTjT5!@: J%xNR[ڶNo=dn2Q'; UNMeBPST[&@{P #Ϧ2=2ʯ|SF-#F=>_/6V"]FQ ^hMüf[yXsl2-hV%biZ 2D-!S+h4[]{` :-,Qz}$c2fߦφ ~։ˍ }ӇNxyW(9 0e)@8%'M!Z~okpp<alAE2!ҹ`CFk]z|-7XB|J0 ƀp2isTP Q~ծkw 'to@&;1/ jV/AF%) LiJCN1{ogRj(ڑ˴sTLs6M:\RKK aRz~KN;nޘưҥصC~w;M$ʥa%8bEj0!.2$XCPsd2ЋDj,cRלE0<8Pm}1,Yj_U2>qAE1w7k,"0#PP!ZHxk )4ᄱ&Nߙ+Ǹ"O Z!ȸFݷg#mن'" !Nb\!)BBkG6J)Xou09+Jc!Y 3S, 6Z[ m  %IOA9v3_6p܃ +R'1!2O-ՇJJ1  w20g 8iÓ,gܮ5ڨÉTN=s喓O]?y,;6hV1pԀ"kEⲫ+eF oYKte 6ag# G./ dS)DihT5 %@h$P~⏥z#liڑCQ5Rl @؅Њ$J +Bj-fD-a6eypCM$ .D *zVBX \6-d\Az1U؟ή"2\-"MmO(!SDȠUʉji 0>mY'[V~i0E/hTU6E'ݾ͵فWS8Yx'8l+!5],!t" a*" xJh#B%{'>~VW RQ$?9)D P&Ȱ4b ٌCWHEڠ  NJ/1*g?_/; T(DYF8]Qhm /tibw6#Ht8uhxv7AOG>T޵Xih Jt+<]_i塮rPJkRFe0H`[ +FV!p=Q8gc^T Ȯw5MnDŽiꦡl&^Mmoύާj!l5H~ Pd\)gd="BmEQc|kc8{W|)C3 i$Y^>]]htg]KnT諷il!aӍǜw9aC?> qm0 <{&R,\`0r?uk*4/mDs?_!]MB_l U V-7ը2H}\Qc nUy+%;P^9m*[5G@A:E䣳x6.T!5E"W`LmKyPF7F_u))pk[ ,!@h ͒"@(nRÈhzWM*eF+;yơinh0!Jw6_3m̸tjlgkv-bǀmNp6edkR o(pƍ/0MMu(\'^R UFz~*i#2`D16I 13j!ghpm`t``-ZM" zפsS-$V$?TÞR˅GcPy LCHDhBHÁcXCE'Dq1/T[(OGB@(a6ۏ@o?F2 an:0;g_I 9D" ?I0[ͩ GV[r:1a¿G4F@/ ˽X-#*BKa U VB 76#֑-obAĐy)r ÑZuPGҬp֊y82R#F{$:f :֍M̃hJZuJ 7 UdSGz_%^K|A}$ SrRcsUl~@lNO1pp]ˑ96X-78EڐTvKڮfe;?.)PFH) hSWæԴ$aucYi,! sTrN^GO>}_ʉ]JC}*o~oԞ0 K<,66J폈LhbP6wpkN'QB( 4CpxuuSOf:V⩃(|?"dqbX 1BlTn xÖb* Up)!b*Z4ʈ. EЅXUV Qݙ-4nl99pӽcsv;2;6#-Q->/b:eMSG\.Gܮ(YJ}dG@ - q Bsq-!t4ϢI ߈6/8L@K:(d'n;a~BXAWD>1j`17dioO5?pM TaPHUkV,p|{)ce6 >2ZAw>p!noO'yLʅa*0j CjMn!y\tUerjpڕ;~j'JaPȬO],u Q=_Թs&.]JJQLY|X;Oh4Vts0n⇔ťPXҎ<Ʌg#vpUJb3L+Qb*c.1[(lG~4ϥZ>럊vn|?o#hE75`9J0<̀Q&_,4Ki1XBP`)Ekn\WTjI[`MCloe.(da1Tre:b&:E9-OWnhZ_&0 1l`fV+=|azyԵ!֖1xV(bUf- WR<X k`sp,dpa1!oͬq% ;OzmW~Sg·mˣ@׷M9zf[k[W4JcM?{91@aC'XUؖQLhӒJL1+NE֓tkh$땄B^_~-s7>H%l}7B"Q&*b%$&Ҟ(B:.Q mH?U 2}5F;Ro$$Rn@3QeL\j˖GBJXԘ AVdk.cK\[`U 8UTT[3VsL+|Fٖzs:֬` q\$S2-XJ3:hG{KKukE̓Dr(+u3H .њžzGb+Ӹ[> W RGL0Ri&LèтUpb+eh0N+dOC¼ZcEXF Bpwn8bV}iB^f)  zC-LKEUF9d퍭%_|j~c%q;hmos_]TM?|jHlrT5+f]2Fq@buӪdpaM85nӍgE]4ZB$ FrX1D g0*[ Wֿ͓Nk?ej6ئb6dհ_\ap\g8l"B]LjUhi秌2.lqc3F*R;!=fCjguۆ RW 1`OO#Yav6d ;"UG@"Bd"!?qD$@EEƄVc> }q0G8>-|+ ,Wƨ%%N"";E4OFsX"/2CHϏ)IFZI( kyYQ2IA iV8XKWAW3K=8Fo",x RbsFXeiw)(Fk.X@I30ݰIIo9Ycd{Zrmmͮ2m2*f/IE~XXğQ+QݘV$ vVf0\Ƕ頳 Y, !WxT5n:O p.Oem-R;^ͳomMhEb5L-;Ҥr>NdWXڠOa(B#@A԰X;0@A B7a8͈"F ^CK FT#?NwVSAe\G-I)l(;*o?+R[Jt9X"##3l#=nao!ƾF[:TBhn)Ny tm2[eǎ/n|HQb]9 N*b /sdA3/(BĀX$sE@&%(il\x2G<Ʈ(z,Hc;mbËaF^LT|ѶYljZ<Ș"EdURP6<0844">Q0 Z&"A7o+w A?E!VsҀ,/GF)0k.SEUí@M UY+._?3Ic(hMM D!o#2tz<7ns6w6{ 1b^Tf~oegkx˘d9Ujj[{[i 4U'Za Ozb6,`""a&|jnؖnڸSm-J԰RQ2xk4%؍X Oe=j%`e hFqZ}4<Vyɏ.%JVLW+` iWv=aDݯҥR $Ool5f&O-X>WyUPFc`Nb--\u6*N+7eHq,:gXM/ex*G 0{[[~ja l5̥0=CDAUWpJ<p`k]m;.ךvԏ8lEh "nvyW-QnZb=2êLr-쿮fثTm$N|#֙X@u@E .KX ۰*>`(u^w:W dElBdZ} hN K6!帛-PҴq@h f>P>F)1#rΏlp܂w2kOr"-I֑q6凵?Ļ9PG PҎpl$dSJCBlƠXXVlH3 + KS ֛)oAi0JĐbMͭ#teͳ|rk>Ul j߄y}}m/ˆ JJ#DKDe,.Y/妘dc_ -bv5dr VHkP:P؃-8 ,G}0`sQyh,xaU#l: GvsߒpP& (A $itP 䝆 ] C5Ɛ rhL4$pE-fMl(rs[ eL(Cs'~}O` >э*hU@.a\RY~O$^M"He3𮨲N{``@<`@vj Xl/`naH6[2A]{)G l-'L״DL 6#M cL3F)/Wz_xoz4f``KG]#ěH6cԊȡ4 I*"րAF`ii&=6buB-;\H%wݝEwI)W+,IYC({%| %. C Tʴψ&AפCW@O0X"C+72tôHPa zZ`> j >lF~02s [cC7Qv78BQqDŽqs7,4˰hƕ _:_@[JPؖ2lDz+r1EkYuǠ0ݨE\.Ri(ҝ -H\秇][PwՆ[Æ#pk)ga5r==\L8h*l*y$kH0XRw0)IS'C׎2 aFuص4z/0q&G1)tDYD tWF~*k"i+b3O[<(h9p:Tq+x=@td|G %];(H~]pEA CI úZ 뀵HP'$*RHJJ^5[+fuJh2gAkv@;Ja41Ji"a g / E"շqr9KsQItY#W]bUM *e i/nI4]N1ooa!2ORc\iû0CX( Z%1+yZn r %En G 3PTڅ<>v9%`,MGlGIV@iL-DPa25gb+:#G+y(ۈ>!ZƟ0Z]fYC>> .$Y2z>ߠCgT)+Oh\P G!p:C )7.Q% ( xpiaEmḐHDBEGYFG@'V!̶+\6BLCC=%,%$SLzuN԰ՙ\n.l-#y)4=|pOwR.f҅ծJ'V }k8ChzLےt>} .Yt`"D稘FѰ4lF#Rbwl9rƵf\Ǥv¡j5aGP"̗p$fd/)HztN4:m$K(ảc9',Uq@ x bh:m`~J,,zyBBOb^b{e-a[PE/ DMFlӕb[ks8 L"\ռKX/eC5dۢ#ath"@Xs>YoA_(ꃃXBGraEf!:3eAhKh;,:Rj Ule [(pIt(@N'q8%t6#I2"KCs%# @Ku*ŴE/ 7:87_"jqjd# UI3ǰEeshQ[a&_oAjGlVĺK 25,%bʥ)Juc 1{<0AAL7p8A+ 0 Pʴ(#, 3tLIn[wB/Ǽ ;m};ܖ+O,?nl}poNt3[+-눚i|'#b ث UD]t~!X@{hX壝Ay:rLRr Т3`< 2qh@`TBji+f0^4͈!"%Ur.#Xz (u'MiWk 0?b˰LVQГ6qp`RW C \,WeKـ}80T]GǵTbWQvCfVyU)bVBc h xtNk0,]1m$C1? S)/C+;P1}i"DAR_yg}u`uF\o3[Ǣ,tUW|t=op8aa("2h OWt1 6.xHh]- a#u|Q\Qh.rSDg+"tNG%43=$j&@q\&Map&i?%V4 ?Lj p6c/ &-c.}imdyp<gAa *ͼ# 'm[~ o΄hQ "aB5Lt?+d6p< >#7h`;B eQ NRL: vk1a1Ss8t d"Φ8`!- rQ B|^K{09E):8A')ڞV/GA7YQ!X`|jR .@${1 4V?֩p5}6.q4'&+a -Xt -?f1{IMFFƢ\&^ b/Au+&EZK.`ñ;ƔM6a &iebh=T۶ wKWJzՔ~c66v%B)ƙc| C$=q ZoI^׋9BG6beb13C HT"`ZMt&}%(hAР$?@||/[^2gxuHg(`aʖbbi ᓌHř/F]ovĸJr.U*S5bguX8 zɟp ʵ:_qA0g~J2<'"Ԡ Ys ; E)!C"`-B]v|]bJڌI#];{ h d~>3lkۿ-CnG"WG`C*q3ȬUBX49`8F<p` v5ө|7,+FXf~ΐq^(OL:rtdNt=0f+K`p 1"|P4 %kT mȯ1XՋz Uێ gڋdp<(s/B#TˀeHEZr[Pk|A7S[M).mv l)TRByܣُ10EޫGZ\sqܙQZ+5ݟ[{y)s!Z:JuT@F BAIPTZѢUI}N+$^w\#Q 8u1! `Ck\*`BRߢ#)\#4)mtqpjTIS84*X)uo7CGClϹIXxS`+%VqC!Lȣ( GF2]XPQީF׹ANۜfiK6?g?¤xA&C1]-rN)jcg J|RqgΧs\QEٝA"}-/UZ6Ɖfi?KPKT̋(څ0Yb554JzS 0zQ bO4 [m,qmOKKBQ2;c)h S[QT62Ą%F GotEh,ê EQ2iƞ L YZKu9nt |1[A +\ ieOqsIUpfb0^>gCZ^|LZ!BNebs286|aF`V fJ$}|jvˮ6yrƉ+H-Wʓ5u;H.PB0E\ wm΢OU P "Ĭ]Z5"hZ4xY\˚ k]gk@R"E(CRKn7󉪽d_fH^fİT|K-:@s D^0AIDr3_D*a֐pi(&!WUE; H$`{H稳)g_M0C f"*Va\偓;H7j CG)"nh6|a@з R[[FFx̡(~aҖdwU.E>AΖW]rr$/±hlԷۤ &1S Z" 4Y E(WX.J(A"MHn!ejr@AU Υtz3 L-!q) *UE,񂒡:BXW4)yMCoZ Y.0x=VJUji`k펣2PHp1ba+O~ŠS݂ds' àpxڕ[2V{F 5e`}Umڶy WBp]*).X^8!C1uҸM3 ӆķ=O}b}'gM9ߤp/F 8'î6"4ʘL -Clu[?v~(_ 0&ɀdC9$x.jۙHy+hQE,'S5?ղ/~ t>hUGqBHW& N{C-cP @^FGwZcoDNkQ^0pk@.2}@75S<"h 5iN}MV*>x eQQGe"$}l/gv&Vy!Oj4F-Kx兹 %&|a5hQ}2r޳9pS$k_S5񘤣K D..K]&' ?l䨟ď~}{y_<ċ7fw]L0y8ۅcחڊSd$WVtVG~~E7kW"&vlo[jpRtM0J>(D)C>Vz+6jxGO +}JQz9`U(uGʣTҁ B8D_Ѩ_,BY{("> z{$]K}J[ts|mO>`4c԰OԬA 5Y+d"JQodEFeP5Rނ -T706$ӊ t`2q &:?,eFZ)TR4TT2Ն[>[,I\ytcu3$+}!2˒ NSO7NZ'^u?; lhg?GaVPRBnS>X ]Eh<HYp5ev51-ָu}2W/1h CJ ?Xd u]Wd(NW>d{TEYmRktpO5S@p%hCE"s2V\&V05\L犨5{ HHԜȠ BmU3^]At;>UI7 V0UA+kgR}mX+.EZQT8e#tw4Z^5CVmDOY_%:ڷq3Ȇv!um;6)}AF݉},5ns̹3.TA HԼej-|R Rh%+h4"- aYE.aBeTMz-9<[^췿]xk N|Gz&Z.gπ;;ԕaRb_ Ӈ`h޼}Ϛ&gvi_BzD\]>NRJ˅-ׄe3;B%Z7$f[Y +%WͰ `x`_jӘp-\=@'jpQ]҈/rc=]+h=oHCDCIAB|VF)Yd4u@u OlIF}^uC Aqw}xZ0guL~-PoV鮕]e!{{Xt*xc p厐V [)%ַ7GYr=͘ۉfŕW`<@IIaAzvk{-X=;j?[l֪7Ȃ8WAd&NrD21vQITHG_ٲܠwDL5YȊ 7E:f#8ErzVS6qvQ@tr[zT=e,?W6F#6n[UkN'C' ﶪ!7"=+~ЋCn^ʒ&;H6i:E>(nT!Ȝ+NPɆrõtgՎhA"h7w9':32Lpf+ =@6VBl(%M.ML'=Tj7@b$DMٓz39qŦR@qJhfza$soH:XL`p:jL,آRՐy= ԚVuQ%QI)jJK剒aDOpH )`"t; 5;۪ Zs-2) ǰA n&Q.Am*S},NFOy׿tr˳]@q< ȍ]=}BǕ'2 G/Y-rᰏ#7z\ҺG[%~{cH[`~PSX q*橚2y(~̸mjyh!7_N&mm 8|(%@i,Ӂ4c 7d/UەHUHԭboGc^UB^o·qh[ й9KG# ?~ eݡ֨_OqUU1x!J@k}!nrOsD$<Β<曆N:c uh}s`PǺ\?$Ed!1vXlק )npj6v<1b:6sc,ro+̲?t!5I9=OB6I;v`oQmŭW* ^ma.]RCd)Ptz/1$8b.9K(Of c_ |bCeLi)%ZC}ݓ^89|5jH֖G\gx v׋VlIWMX%aO6=䑒SL O.U=VA-A vqTZK]fEu:*ܬWB#^2N 3P(qiv?t^º77${D|b_sS؎tU2J]~wWA.y"6Ԏ_4,DG &Ԗ#Hܹ978DԤO`g`Մ,CZJ͊GUSeLxq <^5&(k<1[9׽fFBglX|iҽ #aV'侙^0Fy<4[/)^΃f9jx6vF"+L نP1#CѮд)B9T5 boS >lѢ^sg̡`QUlQ5/BH Ț)E]-"ieQ̮ <8.)>xmd DqA) iC$=L[X`< !lhEa P Ɖ,{ױ&c. uu_F(4:z=Ž W= H2N7ZNF I{[Ix&,Mj K֐oϭ?/Ԃإʔf7B߰Pjnwf/WQrk~ P\]pݼ:^F5Ga,Blc{Dx0b:RaRrU_4DOnnR4yMqc LWSmkhZ`ޑgN`F<==@kf;k6kU6SO3cjM(2d*>8f`[9\!l'vgёdJM\·%0s'V%(.!o IU r +ȳŹZ+I׌Htb̓zG8fO=ݮ cn$ܒn Q_ߒ2,/: 9D2hא bww(NAv0|qIMp5zҿa1m2f(3䚪Z?l4}8'aMd:0qX6`'ħR%!o`PİltS)F#hs~K'UD9 >biJyDލѴ~5N҄Iͱ̗VSWݞ @C@($'4CIC&&Suoq#~(ިЕ "FEi4b_Q]5#l%JF>k"I]lN.JD#7d\ rb OEڤtf4dl.hiW}()Yb+}Ǝ+mw"'0㞄 9}i[r:peDӗ6 m<#I/*yTvELSBPauv Je #N[qՐAǝd)F XJ6jEcLEȱ-m-Amvt8I[M #5 1Ĭ QBJUKYyt:d @GͩZ RDž+ z8 {KOIV +OsSxH]*+N᛹=/Z?[:8|ҙ-8~Ć̓ݭ %zo2׉Wid⋔, 5s}n]89C쥗>2%>Y]ւv>yAENi:w %`7YUݪuljct$t$yuP1Ya`PJG*嶔~(@q¾tkWP$7V"KAMITRZ,[Ϸj%^ϊ1TpU "jbZRV?aq~}J@E+Tr)a85;`˫bU!$'ͤ. (F] >~pIyr)"|PF)W{2avƓ/|q2m˿Gc]{ENNqAb0s&\9DUa츖#xW6?waxMDʫ"%N q(3>MIa[sFA Ņ$|JMQoIxLs_/<bcSh5 U\k5YlCW訁ʀ.[dbc޹:Q+8g AԾ5+s*EBz: M K#aޮZQ FӫWElI; n8_a_@WJTG♠8Oa&M~t Б i^qOmYė揍 ^u`]U=fؒ|PQjf":k!.x=4XL18#a6z,|AR-Wg yYMC̻Sl 17.`3[mwu;# kR4'Jխ';6UC/)(;zǏ!vN[ɉ0$tH]·?^Wr]*+=eM͂-OcjJ*h ;$gƉk {5^WB03=jdF-Ŕg(W;#)~y%GD9m p3Ux3~O$2\v %C6Ϛp+|bLa+F&lpN!6}+I8Hϯ=3M"wtiG%ӭFy>M*'Fw3()/%;"k^ R@.AvC#'tz myD!JZY]7g2@YyV0`OVfJ+07t.e-eq{ݪ}Da°I,n M1Dl)UR$u[+iE518w!HrÅ3J=E'H"+,acQᓟ%tяGftmM?7l9aB߿!$dtoǮONJ` cKq,gl68 I3؜G쓟۾Xԁ9GoC6)UO/MUFbwC-,iNTAC5fj 3I4I(Wm'RfeR,f=lcx(X_dUlgUS2hW@3:T34틂JM 208a֐aGoSf35k`w>Ջ(" Fۓ2ƯY dγ ̓2y-kjrcII&Jr)*(3CI&W?d -C> Nռ ŭTעT9"j(K gؔΜiFVݿ _ n1KI( Z6peK23ʉ =జXDgO%vېX ŗeN_b8O~œVlcI|{PvNP_~GC G˻^ŪXAqmS-VwgqIfIZͱ]F~4j*V5^1dʷP mD6 6ڊò%VtSĕi(7I ‡{|6UBFP<gj}#G'nXS35B%p>AVĿr,ķnٴnM%N, yc 0)Cu`_Rc/ nwG&p[?%m Ի)/^6J!١\ o|\n@\<Ҵ[t@O_5O+7d.<+yRlu/jwÂIt-&6m%#ɳ Nxn@+eK*b8c)E`*xTNUIko5yn%z`HK*Əj`bXlFǨ?mQT)BS)o>%JH=^,uacxUp yRI*i JZ$f W 8l1T-13TD8x/y-|CXA0kT`ENz"D᡺aoa$]d bNeԻ}.^9`̧:jIr5vYk>Xi+Pk<-ʼnV|г:C+ ! г(d0q xRM" 8=L1q!g[A } %*ͮIkPk7E LwrZ:\|f`& JvZ.8Nt~ N,U%6AYDT=.zGK*rV?멖f yS >aJX'k oApKr }0? | UZ48=R*b͆Ae7Aa bY]Rb3n bGHABC;K3xdJ',c-,drKiFhZ>D5`CiBvEP?D`X&Iu"K _Q!-.^XJФ:ZyKӕ/>[JJ[(2E+x `Z2Ճ=4B9!["t `S|R6C_z ]b/*e+=t3Rѩ)LpQ\aUyMTIE%jfa~$Nz̲ɓ X*4rF&Aky4aA|%BA[dRnu7l*9 &ҏt#uDHOD.PՌÉn ̬n vĜ xքv)h4` ܼ>fU0.ȍ:VY]?P[z#ŝXبn$Kvj-y8V.C/NQ$9 NU ꃂ…~"M. BcsY6R^p4U@NU,_M#K%>*n?Qӓ6 /CO.zhsg֏Lz?ю&0< lGsrV*r߁ڝ"L-8ϨsO~ɏ˥C Q[__;+ov<lxХY.V9푵2IcXHI 0E tC`c P1yY v]TIzUЁbj e>!NVT 豮[ jq8"R^U0fj3:tԠ>K>OҜ*c&cFW2Lzz6\oOadwUz,1(Wߘx&Z&`۹?{9myQ] f;:}ĵa?ԅyX:`6MNn:?> Kx0,wc l)KrbO;|K:nf }ƽY0ǹw_p|Nmܒ z ɂ|BpG1h1 9w~ 4zO/{qۘRH7 Nml3L!6*t"J"ݸ h? 'Ld'21k9bS,1yN3ΊpJZY`L~ xU; CзB52X*SnZ-["Qʼ05('U/K|; qd0 zrD+ntZrŜ cFNBtp\Po*$v2dQIàEI7Y!A բegWZ #VcY/Èk`0-nN}B֢b^i  0x$WfnzyNRNFyy_۷rC9Bf%2]0Mt搶>I\:\|ysĩ8{-#c M:P4u(M|=WX0%XF94IDATd29V9&j\MUز-)$bAu b5H y+R$ZK|H\sP" d1k'kbBcdg:f4ka Ѡ(OC^/LP2\D8FmpBsץ$D/^!fyfNAV7]zžJD=<d9]nA(^<{ LBSN~kkrvrgL2f!S,]S˾?6mOoayZ2wj}C"F)yu(ަa&$ VZ) bp~w0$m%p-Q/6(FkSN訲bTCg90@v$, VaD?Yb4\1.*W3Fq7q8%ODa^?0mn/|pgCU[B~ 즼l X0nN)([!;UMVK }GDEu<؜MpcI.Ӗa;%'͉/y51Q\]0@ܹt_w#+ddbUY_\]ne/>K|nG21A[ZTeHk*ut"liu2Mm< 6Z)R*<וh W UY i&cY٩ B#zK6{FƮ9yVAE".Y!,,mY&6nٛ,vt^MkbXH;hb~da奭ܲXkKi`GAt sB76oJ,j3tW m=r LJ`G%Bؼ\Kc e‡c 巠|cr=E]gKJ4[眔B5nM7mWqn9ln;ZU:K eS;HɤSTI烄3 4-{p_M&+mD0 Y2{iӨF *UA*U%rTE02&-r4 ` I@.WZJ+0T ˎQ*ST(n) LU>VVkIBsL`T`J%) kEUHv.!\| B,{JeB;Kk|(g}L„O 'Ԇ!L^⇐E۶cj4`Tl5c;(: .. =0G.d=~m7㓌uE |L/7!=D( Վ-I<)#ʾIag46a#n_VI: _Q7KU~|G_esU_ {B/*!4 :Cˍ%yS@uwYH? #ވQ]Ԁ `Xr=i).fCi0y@T ;y})2YA0aT| :ۏ.W;j2-dI1ή؊U J(Ru>xUթ ҒW)U7dGM 6#2?0J>wN!B㫔 Q3Vb6B]M|uؘ5 0L*TD‡^OTW' m\ l0L,c$o9Fms63^I:NJqdo\o05lc9ޱ#pt m.϶ KY/)jr#NA!av"nRHX(c{3NhǴ J0x(Aڛ{m ("8-nBOڎ ZنBlZ P(JAt6y5w;Hw}=osIZ.V}?$\_.- 2VՁXɁ&".jb>W٠lPQ"E,xwfdp뗲b!uu,`|utXKI@x9ٽt[Xgۃpc.92i4疶w c\RM=ֺ!\F>;ϳV;\Zψ.{4B ۓϩ_~7hy0dg\~Eٙz q]NʊFLa9kdq qcX_g!NpD*HJ$ n8l.@"(|seV\Xq~@\W_S=`RZ-ЉO 7n9{ufC_*d'w'^_WDK h~24@2?Wa}h B3vL]\0wB P ݹ@&U)C|vgȂ[tG 4ɉ ";b/A& )9Dd3 BC3ur[4' 4,Z|zd;TA.F/~H &ylg|Ri|a2Í3;'&]m)y"s;yzĎ4͙"m0^`_d)9_$?L^S ^!e7/L7eR 'Y TXk̖TϜG. +|9f#agQʪ(LfJt\6ūf^_^vJ56grqBugeJ 1v#@DYWAo9~}k3XT_zӇTqXS„ TP?Q1gJ 9MC)6X \0yǺUH (}d]Gw׬4JB/'$!ѺG`vCBN3~de>{7/UjK.3EQiݦ-"L#G9zB( n59TL6wDΫI"[S_)'c. ,m|懪*4Ne@WeP(f.y`(18EjoV?Ų,iôD6 PZ%1a$EOQs%Sq!GQ׎UAwf r =Lm "JƘKӒҮ6ÖG`]>Ȼzin˵>QY;D̈:%0L%Od'r\EiIc<v2`PGNdwޙ/.b,ttIyDٽ,Eӽfݦk?J>7imxTjG vw/ǿ8q?EO7kN[ bĞ:q%I(E"^ Hh[Kc*WU+ A5V=R"iQ4?H=a Tlvck5mK/F&*ר9Ыn !,3&C͕$OWxvX]a 5ʦi 4jB5ՒpY5XQX]|R~bnjObD !,VZ?Z.Мtfw6aح4lN^@Gbw"2چtpEk96E#;[7pc+;]\8 C~/Wm'EIbK_ra4EQMP(+-S ;Hl=^fc -xH) Cb\2l^hq6n/J/=֙rm{yڴMLuE#*U/XRnw& %eXڤtӛٹA|Uzi2BBlmX\g1,OSPDu4f(Nhb69R<.'~[mom2* t5 )};zz b8[Dkɸs,=Ϸr7џ?#@G򥿋qcW?K^K~^pMT/pl^8uɹ0\ˎuW3z z le1vt^j9`n᧡ܪȏЋ,{e?j~gdR$1 `p rC@ -#ƸwCk׻%9 U@qj? $\Jeqc N؄V)%h0j\c;53L0c RX}!nvtjT:*VT-ژ?UQ`md~7?4}?+.2YsWD N0\H;)iE<mvyJprY_{?Td/mT$KUCՔ*H LIpoQ0]^b8 v yK[Ӱ&FGW1bk%%0RC ѯښq f>u[5lkl};ISR$d?teI$Kx^&">goJ#d[Z#TNwF2`^QmWҩR FSMr䥉ZS>3}sR+N(P,`0G:~nJ'ͷYBE(ۨ ) pH4|ZK$+! \`2- ȝrS"[J, b4#2_~l}u~ -Eckc-Эr/U#JG#mUԊOp$[Mc "ˀj)6#Lx8BAB5@A k*˷6*)dpCo k]6&G[3߭m|̅_F-q[sw2#Mf7pM tq[ ٚT, ɾzW!^lIol l}nm֖_BIqm1&X[s&76Z!;m:*Y>%.MWߚjL<]a *3JvӔYɫ wŮNa|E!kH*o&Jg\.E~'Zt g]SFԄT_JZ Óهfb5SIr!J(2T1G9uԊJaYnFqM$%$&/[oޟW[{;ˑvspJ-$R#XEBWa5ny8}TL+axq,F;i~@S\DW7/&!:qq!<8,kVY1b<k~( G9*\i^ i^QКbJxj2GS2e 9Qv[6qC jkŠuJ`0myKD"-Zz_:uʐ KjTᓿkZ92Q%_s5 _~9ƔВvmLOZ4{= S(M۝0S[M1%`% ݫ}qD ?v(QI!ZY5;o9|Zʃ_NJXSϑ >]T@a 8A,=F~<&Ն̄0c!!5]"`)z,\jIU%~mDJL)I;+,nlt:!vw`? j:rHPN!ar& Z@uT:疄Lģm|,-6ND$fftn13͟)]puH2VVĉg_y{P\RP$ 6eLbg{g//۪Kl)E9(5s̒U;0'@h,.cb Hě(bd圻'oΚ.-lH_D'O7™=;clMoͯN TGFЇ4N a= X{xqγ{/ۇi?`*jO SGECh\:w#ҍ/|TO֪NjA}"E=Jen8^Uh(nxE7RKˆC>4A)ݠD, ֓#ơ1NkpQCہ3Рzq_ =܀7%AKlI҃GOT`ޗ~D45V_3-2A'O9 vJ,+pB;_`GGU ҍBL*A-'{e ӕBu\ѫQic \n(RG[)XV#.iߜ4Y{SͬsUu,*vKNU1ۥ"pI2*IhEk.䭼RaX{DLXPpPz{A[.ZQ8й StJgߌsmޝ[N0Hw_08 zMQ;?qkZ/j? z?W(0_ЦE 8lp_}[8PcK {D!4XPH+}¢,;j4:1 I׀"i~SPBs ٦6ee+6U|mٰO+)f$e(-TsڜDYwh9`vpyh]6 Ho0,`IOMtʻJE5nt֣uYCi2ej}Cc:*OYX;uYjs"rewE5 ۫VF=5HM0SeZaw(>^}эu=~`0l惁/rHM[Œ0U{tPHW]0;iޡE|VZK ȓTVPI  &7 )c|jٛ] o#}{tҟ&;G!߯-D-1Ec@ٙ(dFDAZk}(98ʎ˄ajUM ȉ Lp^o@/ !%{$F [;zE̓*|]^BICJ䥲o!yaQ Da#+,JA^GiÈ#qTS̓+m+ %FՀ!XOu\cV(]!85Y+E܇IOq,鷚];\Q} ~e?,8O_fW+ 4:'⧋[{tldwv)JQiE^g#`~5y]3<SRMhAMZ !6Bc6 dIefYQǭX Sli j[TƿԜ۠]ͿJ?AA9AVH+͇g +ٺuom>zu@ۓC]aæހH]Z P|jGw_W6%*^je4.,"\SEu<>k&;*/Zx1ct r%7TG]QbX¶2//5y2-*(_ e9Yqxw݆0n[?xM w>H)">Դ7{?T䲖`t8JXіV*]8P|婦Q*GHI\,6 甤:-1OvV&-AճpF3g 4(rhOiqFmAJUf3NWHo9":P(tVu^3_-@ay41ԯ&i5ޫH͉4edxB+㈪$#4,#t ZAGJZ.::>rũɕe x.4O) rN ^r{؞KpALG0HԎ/7.T/ޟz_}gyt o_6B /yﵱtW3:yJoPL,j%"z"7dl<3R .$VOMI5 ۅn{B,MPv /DA 7T#iClr.KڢXՙpp!m􌭤SjjEf] `9F?'tijy?VxpqO [y 8!?"g8iE`JfJr9 Cz"$42N`UlAkU#Epovl8KU9;RizxAiM؜bm)=j?u:[0.r(:WrO03IF7љbbI9)}9R2sv01m(m^S͜S+X[aN&G$X Y}1F[fEǒ k({́ym'>/5tnu2AF$0p\hYDblj ^x gFо |r X7HX\M%R׬zv\BԪ Z ;NByZ%QBTTU^iUՕ8+w| 1bړ|T+!ܥ%W@霪Ml,ADnz0FV{z^l 枈/9Jd1K#>1#|HKe392y䙪]+nRU}l`mRJӺ˩7;Hw~vL3U߄avFoY4SJ\0IKQwqiīB! 6>-\Q$^}AIlXi $3#Gmlth+f yV jI#q!(5->4i5WBQ@$=2T5' gklxno证'm /dMƜCGD2_]SU W>cPՕJM5ҫ׃YO֚OWoGvhjX$.pkpۭٓf`惏jQ[0poHU$rsXFU|(B(Lz/@b`3e_60LMαfPZr_,6Io[LLQB>#A.}!ȝ=< \: /Av>7X_S+o;[J.Ώ|uL÷kr>0S4ID$@q0I3䗠Eڜ@U*r3.hܕ%WDdg*tI΄ݨ9vPY$OYx-7j"ƅiv)13uFfZ$To[V: -.NcAq;z.=+Zڶ#s-Jn6XZd.pj0cX Uښp(BIbJvӱk,6FIUJ!Plĕ#p#xU)<>&WOpTie[_ $lЏa ƞ``$`+h>OIٛ+Bmik)1EFf*plJPV%VkEJ3 ƚr/tEpK%?l6en = GP32PTAiyxxk uSv#$Uo v^|OƐz!qntl5$oYchJqec]֝-fdV,8${βN Ra].6*`\5.1vT<8a֥#()YCuQ.%tH6m\*[sLS+X݅l%IRq**1V|am -ORR(1 G9,.BRSN'1C܅R"jlqBRgݙŇsaDpfd_R.0GQgD6+ݡV~ V@V*w`R] Plբ^+2妟1a o6)\sHNNNZ+phe^Xn/Ē"qD艜Bȷm1hI|iR-9S{ctuE2sTC6Tiчۤ< (f"jlxfY:NxZt `6!49yɚZ)p$G& M掾X KHlBat&rm*\BKlՂĮ7 xe.S:ql:e4N%e3/޲yEH} v-@Z5!2\Ӣ ;vxY[)NVys]8$wr9ǜfMEiPϩi@~ $/lkb{'ry5:%t}FTR~ ~͆8+I-]'VuVJds+|Wǂ,<=~6zfXlˇOv]RgZlAs.5PTM qdkʰKy,d f~V߾OO7:4'{(9cNelS eKu&m)2 OJ ŹDtZfzO:%;;7n79Dx~X+Q?jJGʓau1"SM*N41vo׾0>Xd!cj1K Z;&(]U)r3jF.:Y@:mG"3 +iUn/R%.o$.($u ch 8׸jIᥪ*P!$t}(WLFmz$ܣ%,V|Ƀ~edQ-]qLf^`W?CG lPB.<7Z WΤ~67{~Kgٍ2MWڟLA.7ͽfg.٬ /3]?ΐKc)ҍc)^@W̺>nݭαTJX WWf7ޖ gkg  m!S OaVjJҲ+ͤ]L%V2#ۃƹҹv@пa{: GIp Y2KH-@`ޗLŒLԢYHb/6rYeBe ;'JGsUm#b8JO$HŞ(1vJq062 }Z^J~dR{NmCM :MX /R`]ڶcЏՏz/tfC( a!A^ &{NxDEu@ R0d["\5/rM;.dp)cB&^ CɛPUd.ik2xjY&"hMƔ|&s";t*'^/Fyѫ_ʹv?+9u]lo$Lw.$6):oQf oAF_'HDLa lXq$mNILfO񦜟6̇>Vǿrn38]eǰl/ȦJe]Ĥů> `ChQk>V#D“ d2tX7DHi Kћ|gʸ iP INZ`ol%pAr%, ᕐ0kVr9]QPlpq!|M5i㉪)b`1(P9`S$j="&8R]q1dz f؟QIkzsQZ|vԜ(f0M;1 (5_H¨Ĩ m!K7w7z $} ,7.B[X5Aa9ۯ`ġiibM`3fɵ\{^Tez,OaLhAda_ D,rB"`￾И&S)f:2т⢦gAsTS5h\>|rblF4ZL?dyEOK`V-I$Ѭ'Np 8 N!:Qy)]3Ie jzf#b ^y*q`w=_ wptoez H! ()PbpՅЊF*BK۞N+s0-dep dRpKFgWo4F7bVN|F. 58зm]nXm0Jxe$Mכ`Cc]ٸ?uRZ AGAY/e4M9ωj+hL6*>/&cP/ZW+Cs{_ 3Y3&A_ T^쳟(t_L[%dbܥaur 0 )< ~#֎مC!;5Bvz."퉥+ "HËպp*tZ(LxU)rL!12Z!ƅA@kE4K m?Y*=L W7Οc%aRSpAjFB2CrH/ÉUX2ۈBBv'JI# Ӑag8Ia\3Y&Ɣ2٬ĵׅt<9gt_Bys.*"Qvy5AM,>eD0E Elgu!E\;SXlote0?n-dMZGFETRPYՕM2]= L\c\|]iNR؛j BfѦ!3|+cӲ ڣ`T(aa3PI@x:&<$fwVuD͌H>1wG-_nPB*C!AWHL6!FF*%]Bz崟!E_Ⱦ!rg sJYDgɂ4CPcv8}^?)ɰql5C\] #dEvRڲUkMD1GpliEiн:)sk:3O\Զ8hHKCyjI{1K C]m֡Flά ("u%G #1*>vIžŕCoieKGڨN^ve jSD xp"b`I Cav}Hg|.: \dBW/>!;`6v Wȫ$S-F)Dlxa&A)nntT/}6`W>(ңyz/I ~Ǔ|4{^@suKw OM%-q0Ÿ Rwp]k_V.p3~ s'~PD{<:_pE4M/fCN\5( K$r#֐ DAL rd< txqyj8 6b@d "M7L? X` IfH۠+/Ao9,6FV(K4jUpRas5ʀ o/KK聦 Lu6Ԉ8:|.D gyz)̌( JrIk?_J7_eٴ{@I?XdxWx9vx/@ddloRH>Y-&)35/͇n(HCwwm6 Aua={YGA#zY/GƩ6QaHքiZۯA7 (Oo$dd)D;3cl䮄1bj3q6FLZPĖ6IE;UWW}u}ߛurv]BR.+/#rYy~ui@rh{Qu3,Adp5 `&>@EnMz1^GƙKUY0M &!9"5IXِ(eR(rX/jWӄ큄pC?\TKA%ZK\F6d/xsXP}iRl.@ uT_)|D -vէ)h&>f*vhNJ~0̥>OӅӜQ ݰ_a<ML~1 7y6"R&nYM"pGmO.}+hẊcMQJik-nGT?mוw/gS)bZz1l Ŝy6+?`N W3zl9.fRdg[دX!0|,ׅRB񓟜{}{g//7kT? /bgeHKB$) ю7-:T"SS^ K1eVjM*B1&8%aWQ6L0\k@Q8Pm~oToz:2nz9( $u28mJ5Bʦs/}M?unnc<T/+;==SvOшé~8]@}* Ny |[?վu{ yMzD7?hU{}䕍k;fsur5LWylΕܸ~)5S=8Q_{]ͷrptYĭhbixzf~ΩgE)*Ex|^9!>V "@rQRiEw`"Snn2X[?tK!"F`ѭf VU/PB}Xv:eT\t234U%! U)U4&?ĭQ\k z $բf@U#Emj(&̨2f d%誏U"invaMSTnjBb]I8lpٜM/Y{L/ʎ SZͽ[h%/^`/uB8Ղڄ\bo*aK}ag4M7Ԧ1MgPφ}jY UVjJ%4L5h`Yi !{~{HZخ3D15WiZʡEcڍ~Q*²:d6ޙz`b9 F.l0yǃ2]n:f@ņC:k 䛳7%^;G;z ah1N?Pî%!޺w %8HzZ&ÝCx1-FUWsB,ӣ{R: g@NU: vD!bq8 rMO'˃P3f/3iu4;_::1Hf-VA! K ?#i6+Dp1+c>OZ6 /x͝$7ELL^$KxE2';ŝ#p? $4[ D[ C+Ʒ~Vr WJXhM Dp8 Lorp(|+'iJtRv~ryń,o3OH6h> $whQ(rQs . 35PUh.G=3<(Y$l ї,>T)V%5=F VwdV3VUekBn8V8N Pn4Gm݅jOUt ߺ,o ]oմ}H%`/f6a>S}txäݵzcW_w>s?imyT¨ٽpT{tC@5k ~a9d,ik+f Tσ &1m4H,.-d) V^&n344B-̽"ߡMӳKR[恰z!a?5TJ[t:E=0^fQ"a\5jl簷#6V[\94@F-T8WRlxfT}UcP46?p?0l-$ ha&{?yHu>mW{{fޭ7׿gdO'ޫ_?qK0܉7Y?O?l,dVbƊ1 ]s-e N"/ߞOD),^@ZSL>pvT9ݬQgZدfJ7;_+&T􈯍38'ώ=9ʅLlПP ezX_anǬ{ a)zg St6W 1{7Rm͘/UB#bSw:ݪFܙE0x(hq t%ca5DC̡èWP$nEo2u7+f)~P7!R2SM7 Q\ٟbQSpK1 ў&?0H''++ҏm6HXhz5J?鄙/;?y"XVиqB,?-fޓ_Ͽ?ueXΪ!e!jױGEeKkٌ*jBlTz3Ha=?EHAM AW HŀMK.ttyV]2?رkന5ƛ0HAw^6Yo/M X->">u`R hgu}իwWgۧ/Tuzptɿad 6I}%.9N]!|(umUwc~0#| s5 ٠څz*:n-唘>EO -s/2INtߥGyv3 q~mmdBѶ1wӰ(i ݕ٧7l(}5}mpz)sŌ^XRM3} ׶}T^֑!'Fz|?K$ Lf>|qaV>Wޣk6S5iB!Y+g9{2냠8bD,*W/:3 Bv3`tw LN lB %1h 5J9( #@ ƝYi H1W[aB.LQ؃4yS7"bdB řN]Q.̨(xZ؁6Cb W'->E_>CvskK-g ;B5 ZO<{΅VY> Mqf(  \MFǞX6#~uSP-i:Y1cbD]je +HqSNpQd"XY^{`z95o EؕX\gĔ-^iP^_n.ayjk*0wMX !=H`' 5;)zVUDGOt36CތB*Q'.t@+JjB[o,7񦿘4 0N4)U&ߘp]̪ujqWѤeXMZ*[kGǗY|eV α2t Wa/憖_ |R7IO' f|vHSPƒ_Qg"YRY=P5ow({O G¡A.R* ReOb<٣I_X'60%VXObLyYF=t<+X)Kh"[|{CuSRm0̔М+ʥc-,*&`Ib)U \WIrRrdjFR3&J zE&u#`x^-\{%h8aŠn3/zP1{sT;! K>'Q4l2ԛ_D(hQZc06O%Og:@v\m8DCk ;a̴zu{xӗe%.YV2tC@rAV'3xc٭eΑU]VE$<9d_[I]8 AhXJą$Tò ހXIb/*rBf$@pZ<jd_µ3**enQ2+n;P\~<,0"uHl*e-&G Bc8=T{4B/nN!؋vNiVi҈Rkpx{4?}~vveŗ=k@\s3 y'%|\Q4OɲP -BN`:4/)T`t/,/Ԣ[=ʠҬXtMza)Ag օe%ة|,ҙSE,Ye|X-6)IwOwշNi[]H*r}dOE}=Nj,WwCo=W=CƍY$a ,w.+GQK#QՓ!$w5PR}uu8IVZ`k`:`H/` }=͇S+CYу)nbuNVI{$'u9GEHzuk'6*Nqeh 7\bGO:I'CRBm[4Ɛ/TrLU1C(+WN<_:712 hL_r<*.ŮQm9DK@qP9٪ T#<5 2\wHM]Gms7޹{X g(?#A2LP&itP xu/{Gg$p\ioch;05{FN,UE~ +cLa(Ѯӱh\9J2jT0]LIRHZܤ0 51 jl2p]*k,Op xO)$,!nGI6M0 ƎqX8?Azl TfI3[i] kA qpG<mw%ߎV ޔ8RNIJ|{]Zv_|2~284GM W7`(#h/ᬫ58o~6f")nk QaT L~6tx$VV'1p n ֨_a^u]t:IE3`juH ]J֨mpj ix¶`5)ęRP P*% ĺ,tc3@"~]a+u⤬Ѓml&!t{Αӌi'eAq\7WHdyBB/Qː k r `R'60X2ޜO"WDdw,<1[ P/ t@U) (U *3e"bPE{WiPmR Q@ZP, j`$jbTW(w1lEoWIW%9kX7^Z;;.3WJ\0`B4h:CCOB_5q;2>zpxH%b 'cH]tiH%ewzc=L`j.\5$WDVkaQ{,eD2ڿCG`% j''B\ΰSv[* tT=:4sٗ TK -)xV t D+L  , [lf#zfOc70C]h&fHY'R-[֋(k#UsR1Beys^c䔙lF]AF lc>6vs&|}"!̝,=N`f)`+v6.0Y>0E c*2fb l1_t=a$@9ΓV]`2x%;k3N7Aڄi0۔2P,\Z ۳Ng5\'_^)bc Gu]BLASgg~n`uW;'W=` FkAT);kT@~V;њpk8jԕB;&z4:-U38\确Tãmd1V?Ίf+k  1^UX@r!c։}`/.#&G 2`D)Mf[t%-M.Im5& HB=cTW++I[|q^(-N)>7@*b8|Tֆí#qAוA@mv1.ϭ](XYEױ\lTj '08̐pѨ XadxeN5N_})ӳ]vgn>ނI-)FA%4mW#+ H9/TfE^t>2x5(0#I|xJ JYMhٚt&[aqGa"}@;4o}xdcr$mt#JV"]Iʆ<m269I@atL\'f1ƤQ^l,Yv$sݮ.1+f4)pUwmeIcHrpz4 B3'xlD'_i}̞jJy=NÎoitԁw0h)QJ7RB xJ((mQ?KNQ^8 VK-*{/ͥ%+*iOtFl@%o-BJKEِ+.@YkQ!}=Kdf! Ua0T/TK+@3TKq5{PvVI~(/PG) s';=hsFm ir\<.;y,'̏ Tn3E3$5 k|8v2Bn}.[`2|t1CV`or*w>j)!Z6aIyy{O.RFx.p>i4k "}X]|wՐ&׀8@P.D0LFU4X\;_nd6<<3YԩĺhK\mnwY_i3胯8wtYWḯZr~6# Lt fp^fgݴe !@9]YE|ЩFP9 3w iJd"g %TiMNxt{C훝wIԸkT&4ME.$d6i'1FeO,"l\N܅NFbt}nϿ+WѴpH*· IԲ(/IhpV:nyagRq>MQiKA4yhixD$X$D[hJRbFRsn[t׿9Z,?3d#M3ݜlU?ıId&1XDaUldc'u`ηa|gy``$lˇctx}"" VJU'$&٬/t,("D13 $lWb6⍝$䓎'N5"1+|[G7\gBU5fWcRk4Py e3+n}~۝|ۥ!J+sO5Շ\ff+T2ew-ӽVc?-tBH2 CysFG7BXk_NCxdHX  r5v3bNG*y}&C&%1R9.l5&sX$3mn9f}B0E45"cՁ |xPȟEY'Øk.}`e\CG\ch cf 7`̏)F!qZBֆBU i8=~_ji|bC,E%@q:?Itޯ.{[{K_19_n0tT[RcZ %NTnٯ^Y.- Sfq&)˝XZuZLw:Hn9&<'ˆ!&[ 8Ҁχ!>:|nMܭ*0CJp+0LwtR0uRuJv1uDI=1&a|w^sr< #At.m΃.Zl)KyKP QTͤ&49xpB$?΂ݶD}&mh;yPf&6ط!WB9)Q:$ѵPX'AS𧩓8ehA5N3_Y,%}k(t^0 :w1XLqk]5lƉFg.0qL (@E5&&-KEUO <[*<( uht|MxwlV;Vd;S:cK;(!PM-6npWi.&~sXǟ70[b*+ fvfڀJ'PDWND\>c?=v6|hH=*`F+ q!34H*!AZRSn/In]qf(O$ldQuڱL !M#-龡)${g "p+(Aah+ roHy҂uU ΄8w#,ᔄ ΕBԁ$.ݢt iQ4xv(2Hܽ4qjO+|鲹c|dY~W'-٥RY0}LX`LX;:0& Cg]/ P .Pi,cV"Ψxӧ-SdQzg-}~gn7ޓGɵf㮵<﨑P${ސPgE9ܙ?b,W@h#]o̕ܙ 4N Y$p0F#ҍ%0v mH=x 'm7b*rArE!Yei4ܐFd[] Juy~*0^l¹ h4Fӂl [hwU UP9:<޴w/Og=,[ Ն^m;P%SLMKQZd.=T)]=zWFaeW‐&js E?ƈ/I$lc_/_y,ot_Yv)FNN塀3LaVכ\ Jaƒ^p-:AP/+fiBg`kE@ͫO5y3yPW*KФwX8D;T*C7%P'5p γhШ-&$ epÐh]kt[g!ZBx xV ۭ "2X7%HZL WJ8#\K©q(OmPoXۍťgO䎂]LUR%ZܸX@$` ڲfJ!$ꆥNLD<;ٝ:5d` k]nķFEcw 9 W@AGχsthMGV0{x[9e[w]!E $*HF@"1(X4DӏxưDa +1QtBV[ш3|5 /E$^YϾ]GcO!v_/z?}C~gEJS̈́lAe.e WϚ\9|Ҩ|/V'1RAC0Tj4kz|j;#tHWviUo,271/JRռ!${w تzō}XޣjZs_w \n¡tWi䢄a,B%& i@)㆕=bx-̇;"vgƋ՝8ax1ᖝ+ ar ҭ)b$f}=IAvV)mb:ԝ]Խ?gn#'cYXI6 $ЅQƳK Ð<0t@K-{`ijT Nn7 5RBD=)V/pqP0c̲{^{`Z8rQI$JCM4 QSm-GW> }%$6@IijG(z|Ŵں+z돼^#)C_=o}w tSHUaK/ijd~ j^ Wcs*Wؔ~@lH.]*$>pȉQjv,$ d69i'$ FϢ5qܸw. K+`5ƩA.-[tԎtm ߬/Kpo~? C?G)+gQv!̒jQ$XԐP]tHzڝ?%:.5>GIU}0)?H,fKZ^RI*q4-Z!TpoowW|;@E`bB[ psDK$Cf:ė.iʵG!Ν$}WO\$J(t zYgau&>Sj`E \P ¥}lmQ.,]+~͉8?ȓ$o b꓿;!Ť4KR UEW Y5G.=z>Yyph:lٙt0b3TC!g $N_Ї EDEaTYO+Gq:ן:Ŵ1 U>q$Ns{nujyOۈp?WkFL& -KLGx